kernel-rt-devel-4.18.0-522.rt7.311.el8 E.>E.  HNE,E,E.E.eQ{{ U] ቛ#xY.:3XF#4úCc|{k5-:S+ Go8.#a'WFܶI9. tZkREڳQ!Ow1l}|IMxsCW-s1elV13qLbVx|$D\]ؙ9Ni.Q,_&Z%giFzPx"GU}r.wi463BFV^͉bȢ9r ̸o$Q3xQGd(`e|RDѸfƟP#A۩xUMp#h׉q| XQ{1.$dc)Փo@l_Ű+*9:YF[VFƗ3Hr]!5TRutnmgjHgR!0[˶Zzg{~wAן 0211a897fd4c95758b4cca533c1e45645b8fb6e7d070e64cfefb342fce3612d0e287c050d8e383fc9d393018279fe4cfbed81f470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307c8e83a446466b71e394c277e95a855f446930cc19b30d2af167c070b8bcfdcc0d6438d28150521dbc9690cdc60a54be023008b86717d59d517f9f107fb566582dd225467673bd6ecd4ab1f173be8f24f47d19e4229c86a4a031a84f6e39bc1c9c060302047c435bb500683066023100a4c165c1ac04b42b0747bcdb0b3bc01885f2ebffa15c5648fe5f9b075a1d4c6e619f70a7a51164521c539b3e88bf9204023100fc7240fa5b89cce3699e5a9a06820f9697ac43c20de36637b841d2b671b1d842f7653aaac3cfcdcb8eda7c2bc748e4b40302047c435bb500673065023100d3982fc1effe740a05a4b3ea2ba42d1fa81bccc7277daa5968ac067f16752eabf69ccaca45b35d95858f388dbd581cf1023031eaad06fced20b425938c9c3af9c0f88917ee2cc6da9434849ff765fcc258a34090dc648bfbb0d9ebc671d906c069470302047c435bb500673065023100aabd842103c7073d536203f52b70d2a3d6b0e737afb30e784f1fd2b2e2d8c4bf2465d37e55a27f2e2db8cd1c181fcbd902306d7a6143eecdcaa54376b237f596f44b6723e4a4bd464ab4137769df481f97ac43a5c13433d79654c2daa69c359b59a40302047c435bb500673065023100b81809c2912aab133ddccfc1bf216f55f45e1fc01e66392322482552312c787c1dc1c74d0ef18b3f479c181b13d98b8c02303c8982b4dceb2537a48dc1c8d1e5086a8fcb09fd56b2abfd7c7221d53f8b0ba793b6b3a27f7a4525771a2a9165d885280302047c435bb500673065023100e689c270659a4ce4bee0b262f17ce3354a71386cf13d8b3d4b596a5cc07152ac6eea4f85345426f6c7fb498bde3aad8002301722ca858f343fd08b720135e9d48a33c6e348afb89a74ae6dfca3e709f034f72ba39016f8f85b76d2f63d92d834590b0302047c435bb500683066023100f422d693be9a32b573b733e031d8f0f52511eb42d2eff3e41c57db86d565c492f252c13f02b94d1dd86ba114f45292040231008564b34aab67ce245655dd450903b77dba6113e7bbde9049479dca0c3975a2fb8423eab5390bdc74e53f1f5aac8cc9210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029b67b4f8f5909acd0450f17c0e5add3a345f5d09736bd0e111537d8b88fa87904f3ccc6621aad595877490ac059df05023100d17b2ba6ab4c03e045372130a80491fd8118c302e8453bb73a4ddf8b7a1d7d1ca819153e00445702d431f0fbf22fdaa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cbe336c12523c69f3e3ae47de752a8929a00d590a6e1fad626018e42c7af7381922d53bbbb86a14419f43e7a7d451454023100f6af1a0c68adc1660b6d28aa1230f7fddaec96c1996f0a9c3822da80cff1734fbcd95b5f03bc5c97f4242b01d7b4a0130302047c435bb500663064023046feb9d9c03d19480ec995290f5ed675028808f5fc4e3ccea97cf98309f09d8e991c7ab2729ddd9b34048249ec67d26802307d8de35646206dfb00dc80875794559b5b05a6754316cba7b9a0ab34e86bfb080e3b10ada1500d6c12029de666e985580302047c435bb500683066023100811444d9909577ffc86fd7aadf477ce6612a0b5ba39c1d6044359424232429fd4f88e1cb346082114163c88cd6f5b3d4023100d97ee0bc198f2b6f52ce82274784a42f5342d198defcd9bb9a7b54fb1bab98caec232179492200152e4f2f1b4388a0200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ef91c50f888bde054d57b5f7f9808a7cd4d328a2f50f75ad1c22e39f77891f6a577666e7918b5f08db39c3f8e3c62bf02303011cac73f4e982ce5ed168ec0ec626f463018b0aba79d239d2bd6dcb9f439b856403d04336a364ae0680ceea04b139f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008e0b9cb1d40ebf5d9fb88e1364261de0157ef1ffb8302a884bffb8a1f423d38a23796b30237b748c2f5b92f403f9dc602300b7506aece9791c7d0372c6500a122854bb5d0736e0b45322a4ef9a73940085da630f6dd6a68732488f1060a9d20eb6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d932461dcf4e418f2954ad372e93207172dbc5f73897caa0b6a1d7f4b5feb313b572654a8ce695df021d4f300efb12ec023100ef5a0d7d2278595a23d7c4923a40e6deb7de3ae0b7f5e3bbaebb23a9cba0003d19da3d22a47821e25714047a4a85b1a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302803a47838fb6e70c7b9cbf103519906fbe6640ad38834407c05360fd1d5fb9969e3a0f0053ce45c5e848e801e81b8da023100c9208b4f20994eeb66b3214a31b202fe9df29e3c32198c5fdc51c06e4ba2a3d813d9d697b55ed57414102419ebf72f290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230150216636a72e40a642b0e72c9aaa39d0fd0558444163baf8267669920c9fb074871e808806e766219d504d9d908861702301e99c7419811e68f365e55af7e937df7edbc7a11e1494ec2a2f5f2237c449c959d0d3f0aa8050dddad5765a5ff30e3fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009bef768600f5ad7167d75c6b2b9c0f4bb86a0e49178aa7cc8b1d35fef654b3da2f148b102da109b8224b5e7f3b5baa7a02301bdeddba55f3619a554ca7d12b444b01b0c2f20667feb67051ac969f8a4c5e50d7fc3cbc7aaee027ff01a571576e09c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230155e70826278bec79ec922eea5ff31040f22eb1d1df59ac3f3fb368c2e28edc625718741a1c40c5a8c983453c121322002310097f60bf2d60b42d6f5c6b62dcccdcf375a8df7178e5010b0959228c59a690e5bd946b6703c374f58bfcda354bd49d2a40302047c435bb5006830660231009de40aad4ffadbb3d0f97c7b8b7e465a77fcb615c20ecb2b7113aae9cde1580518dba63cb654e646b4b161e19edca776023100c3feedff71150488694e86c5c0021738c84f916f7040182b9be6a4cfaf1299172b49305295b0d37dd3fb365072a6a69b0302047c435bb500673065023057a74a48d637f2448d4de76dc6b018ac4a683544ff81ebb68f61f65dd02d58196640686b54c9bab2a3124e5ef4d02eab023100b9c493d2e0085f695c60ba51bacc77c9333af757be514e74b2623f9e0eb615fb5c526128c72dcae297df75713f8b02e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf54d5eb53bbbd1ccb332bc7b647c095d828f23aab8f82e167e503936e68f3a2c935785b59e67b602ffba1868adcc826023002d865ddc9604b6e70e3900c465a2e41bc80892a32f2f1c7b254dcddf521647241fb0b4edea05579963547c88a6dcf010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c4804eab4070ade9f33c696415b5664821468fbcf7c3bf4ec0f8ccc26f38d7964e6745cfca5b4b32dd04e6c0062adbd023062dddef0832ff8053bd3c61d1ad54f7b5b42043dc6533d0de02b4e0e96d64a5c8b055213ac60ef6f66fa0d1189e4f9700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093e74b735f84df45ee48a2a4dc6218cec079823d7f01963040ab46357f87ce55c5939fde389d152269a332ee5800fabc023067c72ef561193f381d1689a9345aec7d342cb88ff386dbba3f105f424ebad700ea335386e08feeabd74fad5faf7e73ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230597a373af636085e5fd89224ba3a9b2761eeb800c74cd95c00ad4e91e21efbdcfc2e8657d2507807bf0ae08d2c8359cb023100e7c7fc7600afae37cb760dbb5a1443e58817b8b2fd5a2c1200c32b1e49fcd66a3f526bc77f07ab0e2d48fac37467b71b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023061f79e2df25ad7e57726a3c825303c666724b358a0ff66ee73747a3c89943b629f77d4900cbe5a2ffcd16b9daba4f10102307ac2dad3d7b59e5babc6ebb2466ee97a1eec44a8382ae654af745dd72296a389dbc370efac311a03f7a585c41998aecf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d7d3dd67d7b9c1ec52995efffc03f0fdc3e8dbd85d7d34be0b214edc4b11f93ef1bea05ae3447af6589ae27dbf3e23e80231009ed9353c9fb2f84974e2cd73033ec287f92360b79fa39c46a314a41c0c4eec82e20111edcdc1e5c36f7f6f15c99495920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fb52c4757e2f9af693c38c6f44f02ffa839116dc75c0a59d9b954843c52d631b63d80c52acca03c04387cff0522bc376023100cbe7fadaf8421ad970661d88325a97aa424ef0ee14cfb4e475743ac151532eb9f7e07e4b055ee0d7ef113489e289b2990302047c435bb50067306502303dddd602886f54fbfb0558ec3b8372ca9631674cc4f51dc848a8a31e2b67318e826179889753b0e28f78ec8f3e7690f9023100e67a190648738969e0767944012ea3574503f3e870d98f0df6429feff8957efcc05b99ae96472cb919c9ae87c7eead450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304f1f69525f3b2ab0dc0c4e0fd4f98c65c1c99e9bc0a7b3c4ea016deecb446542cc5e41a1ba94d32f734c321870979b1102307e920994ab5a3dc9b95989196ef7b62552c0a47a5071b3b208e153f50426c6701cd950eb3ee39c2732014627cf2fa6260302047c435bb50067306502307c6d9d44d43fd8305ead45147e321fd308ccac8316ff6f5c7aa8b4b5a6d01893bdebc91941eb989dc571cdcac0ca57a202310086ac3b2ac77ff2f46691a6a3f83828a90a5634b25f9e2ed81e8a00dbd78eefcc4d4869bb07816fa2ab5e74b4407a9bac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f0021798fe2b66e62b8d97796a00b9336135bb5ed71c16a9e4dc0c2ddac02d7a7e1f9bc0c16838873b03cd18eade711602307e7f0702dfc3e8af69c1a1ebf5ce74d681a156adf0fb27d98d6c773924898cf61d62ee4f033cb912f8118cdbc22bd46e0302047c435bb50067306502301b4df54407cf6e2669f43529fba9d490f71ea8fd4eaf74faeb1e3a1ec9070549042bdc82f59af96bd32607e1d34b7ba30231008ee74ad64c23fe77b1e66e51ab5c559a1ff3b20cb30388d2e8fc98301c071d245f363505c106a0ba36a889959c1490a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305929453e328a874df9a138748c892f01ca9325657725eac810b78c643d0296ef42c1feda303c6401283ce3d5c89ee2eb023100aa30f66b46126fe8dc0001203f9e7a59d8338fc78d00a4eb4461592b06480dabac0d67c03e2e2d14d00268d9deec83fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd923538e155ac4d8247ac84521a005cb3b862c2f1f9859b58e19a8feab0c487bfc8b7db71a0bbf075ec46fd6063abbb0230113c1e8532143ab65256ee90cc172b79c5c0023921759c103e8a388c4a5486f55beac915b1f47f55f0baf92f6752d7a20302047c435bb500673065023100c080f48daa22e7b2652bb5e3962d7c5bca1fbed717d4198fd41fcfd28062b6912863f3c3e3e1348bbe37899edf5ddfd902307debb01df7eb97e856c562624df0f8b1c08924e18c5d7ba37f7605e01c21ea352fc24df4309043d9af2e49d43fad180c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a661c997376292a31c0c7e7ca413292438a4d1e493357b80f6a62b73d9aaa3c432b97e4455e0f71b220f6c2d07ce3648023100a344ee93adac6089935188871740d2f5237894efc726fbf01e8c44a8eead4ed8841479aa2eb2f92dd9e4fc38483427230302047c435bb50067306502303ea7d7483a422639f1a6afc27002778e6c26b049db6b7f1e5edeff1d2e3839066bc27830aa2f1b279a45055ac5be417d023100c898f7c56ca38257ffcae512e80488e45478b3ef52ae56b80aac69921df6fe7ce94ed983ca3937405f6dd31a98f24e4c0302047c435bb500673065023078885bcc213bc58c297c7133fd1c9a777ff34e408fe5ef0534d12a0238f5d6e0edcabaa821dd9eb71d46f7cab58db62f02310088774b12dcc10666b98c795705fef24cb5ff968b4e0b58ddaa95e167585972e299e3fc0cb0a031faa5ceaf60d339f5350302047c435bb500683066023100a400542fffa269e755eb8147584eb3e34803568339d813f6776542fc6713db036ea5286cb8d88288a9f30d9780564514023100e413db5a9a667e1cec0a11324f0a15b4473e2bed071273c81e5e8b8935950051ad82c62b645e1c3e8d6273e26b4d9f7b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310085ae9a6bfa4143b1fdb17bce99e7c3750f9388d8c3137fcaf5269ea5678bde73f668f9d869116960b0ba493492ef5f58023100ba06aae9db487c827e96f1236e93d711fcfc4734c5c43d453e5bcec403d12cb6bfe216cbd6ba1cc1342348a57beb1c770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230314258309f3ee0b3fdc077c0aa810e5895b7f54a7bcd26d0ac26cb6369891c46655eeb00f26ab7d4b2b62eea4684962302305ec1de0d490397489c8e0994b1e6ac3dc1759e0bc00833aa835ac5e58b0e579ceaab6d171d49c43365f24b4ad25069e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023049514bdcae9d8275b5d3718535b39d78831bfe4120a37a0c9597fc04017c4c496a74cfedbf85abbd50b494a6293a6bb002306313dd033a1fca8e32ecc3da6a1ca552505ce348a56c7d1d9a9e9b37a3b47cd37e77f3fd10dc34add55a9dcd89c8b2d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a874b29e41fcff5ab1753f25d28744f410550dccd39fc20ddbe48c7076b9f409794f0c5b40fafa8adfe3283e92a901e023100d182546dfba88bbc844a4eedd06b51d5884dcb7c54665e60462dd5de57a7dfd82aa78f585a2e8fc6912579261edbfec50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a78bd7b58b531920faae1f0de255aa63da5f20e4a05b3878ebbec86602caf2c28f2dd25d8958de93418c07810dd32e8b023100a90c7a8dca4dfdd33a394454d51e0a09f391501c06ec9908d79a9241f0a00139efcdc5a6c0fe17d1b481da9a0adb409b0302047c435bb50068306602310084b4c9f59efa24ee0face7da18bef74bb42bae05c097986eba1740c0b439e380777de72981f3f540f629f29c8daed7c6023100fc94f8cb783232e23665aca19131302fad672ae2b54985bf8d3b01d9144359f1647815788524231f130db6d8ce2317b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aadf85ed3785a3fce481268cd39297f3ce333595571e4298c3cdb93adae4cff0b0a5ae6b675832c641102b148aa2f0b8023100f0a6e7757cad69ac65f9fc9a1d657f2e4de432a69f20c82e6ebd1aee10e905a0eedce126ffe5fea79c2e803ea1ce92b80302047c435bb5006630640230145d96ebb89a57a60ef651c9c742ad7e2392ddedddb761bbe312d27cd87c1dc472b0429c2d2e98fd656840fdc77d282e023031229d82d0b744e2eed8485726e8209058c10728229a9574f9674d96b7dd717e1d531451563c61f1f8bed9d918246e3f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae36e3393bd350f5411ec43d70dee1edf1b491e8937a19e452c02be13f413908df49636a2c3449b1d743358bd791b27f023100ca9cf5bb8c771802e714b4049c09b2f9cd9ac969ab6572ab34572bfd18398e38bf955eaf6077bd231266339d604572ef0302047c435bb500673065023100e1f9b5fda10349900ccdd71638dca7f4823801ad3350487cca2b70e2c2296cce9a2050acd080fa88a3b0f890f69757c20230771b75324d27979d8e068a812ad76acbb098fab6d890ff9c71dbc7db9073e9e16608ab870f76741a60c23ace276e02100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088ad7072b9c352a5bb0a1cb9a7c11684191f59dcbacfa2c4ce76433659e3d46ff34c6be1f4ce22ce24a4d3ab86aab856023100df1878e1b173a61809c0113d1b81dfd4704b99ef9ee587a40d7c720abe96e3b1b496732cce58f4c5e7a946fcb6b131f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015b6e7f14e0ff4547a49d95dd508696b119bcd5f406636b9be6eb2f263d0a7e3e277b16150f0b8f77d07acec3731359c023100eb5c783e83a23ceb96ff183db10776cf3a573c28d2041569c716b92cd5befd57c6cac17e94af486cddf14901d4d4dea20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032bc240c9fc31683295e998d59050a72ca5252716cf1ace5559eb7de078ca4bfd6397009fca33151a86ed19b521928ac0230150fec236df770904c9b67d5d856c478a4e8b4d77325afd53757c1fed9e38b58d1964d560f38275b6f62a58edff3f48b0302047c435bb500673065023100dffdb99321f67ea6e2b07de769bd2aa72624e3f6b403c91ab2779cd07867a47c765e1fb262932d8c42c1b2b80d939e2102302d872fdabbd05f122a2210c44f2f6cd0a8829d7cfc5e1bf3ec717187ba4a3c9ed244cfb6c1dd9215fed953f751bb43aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f48f58efdab2fdd67310c4847bad441801f18619a96de20d95c4e08d866a883c541be7223f5c33a07da19b46200c546202302408eb505853c0d6a5f934c5af68154848f90e871d623c9ea958a23be7c7d37f682312dccb5884089cc24f3efca58a7e0302047c435bb5006730650230033b39ed4cf51bd9603786e8caa362b076542fb07b033c9c8da1d9ff80cd3b4f916cd264981f7051d20ba9fa0e4cd033023100c964bd659023172334c95abfaa1a8d66f5ba49913000560b73f502270576f53bb0e26e33e242fba5f58ce14d2dd3c5620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023070e33e2f553f9e2f6c1410baa59001741d55fb35bd430d259b8d6f90ccba7167aade31dfcbfd9d929772db0fe7e7c72f023100efa456a2871cc866860274e7cd2f636bcfce6c0aa9a5991ac200910c7aefa3e573831b5ec614416e98495b9e09ababd10302047c435bb500673065023100d7d69b60a45814feaceb5531dcfacb9326ada68dbd5bd8aa43f1edf07968087ace0d277d9db2ae1426b35fdf87ae15c202306e91625d19ed532b4b97e2ccf43bb81f0ed7dc274641ad64ee2d71bc20a3a6b343c8b0a7657168f7dd2768f5185174970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb9b46ab3238c154eae659a572d1788d848f885afb0fce508f89c0fa0360cc914200ddcecfa1119ff8412d7f8818892d023100e6b07703961ff0bcc6301a9961192e7f8bcbcc3e32616edeb97488658fbe0b36cac06b0be642a77eb05f49a6fa35381f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c20b6e9e6c97e22c16c2f0b28c8141e2cf532f505b751e05dfeef4a60dfe6a4f69eb328f28f5fb154eafc30d0bc5013002310091dec806bcfc4eea8f23b66198e629b1465522d70a520672f80bfdf8f801e4f7592cc9a4d6c2a514fd7c2f1b7365dc460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023012ac28442a2ff8d6fcb8b48c5eb3983aab78ffd197247580517ae1941cf9869974d46e6df7ad910d51743f3ec395acbc02302a48e3c50d55f525e6c34337160c1809b2e45dc7709719a72c91a4652a11df2612c05136581a3320e0b7d30aaa9cd1ae0302047c435bb50066306402301d3211bcd654f657ae2dcf5e594637bff2e3fb6355a0980bfe40c489f361480ce2524c2af40746de4d151e839ac3995b02300c5314b8fdf945b7ff3d1a2f9767d95db155196c59bb014814efea33931ae375c72222916f25e42de183dd9fe542698b0302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100825f1744795907556bafaf34e6a4110e0bd13f5bce313bd5c9c2d232bb6f79436d4f247a4cb09514ceca78bbd37cf1f6023066431b248fcbb1e0d15bc9f6687c7536659ee3e5d7bdfaa18ee1bba970a5ae44e6ab14e4a243e558d1eec30d74443c5d0302047c435bb500673065023100f10595996c0c645e9c6f2041bc42304f6066bf01e389ceeefedd1f28f785566a7147430aa45f8b0a4daa691636e3df3b023004cc97040d2d278b7c93f8a90eaeafd701c2b469046fcb10f698b3218f01e9950d173119803e0c58700c7ba171bc14c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f0c47922466bf41317202108fedf63a474ce701fddcff128e85f493fc02db78553b4cfa04a309c48e171846b0cc74cfe023100a4c54e137f438cf95dcc465536d62737b62830b8b04728d2e4147281bd9c378b4eee07bcdfd4726d0b60fa19fa62719e0302047c435bb500663064023005dc7ba210c190ffe5db34f48f6412fb7742080c86a8afea067f2f1c247062117b67146f58ef8859fc0adb582b086cfc023023cd3c18144a57a7342bee1e7774a36e31be6de48d4a05d7f9502080bb5b98f96f73aa41d4e4038c0cdb608f4d3708d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cda8deccc234c38c2229379514e83b8b2d2cb4b2d8dd9d66a7f05c4515f188afb234bfee57ca98d663feae258a249b9b0230389de7f67fbce91e31ac71fd6b48617b9f795db251709f2eb011490690d4389a59aa3b9cc0dd36021875f3088d0c2bd80302047c435bb500683066023100c4667fd543c6086bdbed8eb9c7038c88941db631891640d0baec3a0c26bc5748dc957539f3c18bb166baaf0f91e71aa1023100fce01130aad4407e168062e5060082a4bbfb7daa55ff3fb1602d4068577e724c043d28ab0f0751e83167ddd4385ae3f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302958b2c9f431db3cdc722e819fd4ffdae0e4c6a299001540b9d49cd19223313b39beeac1c41ebe4e56a639049012447802301e69caf8c3f2f4027763883435aebfed8a88cbc1b68b696c7390cc68996e5c6c58c2ac0767ac97c21e07a4be38d35f540302047c435bb50067306502304ea6c489a19dd47282442377115c8f0ba33fa8a43ed1f852cb4f06d02dd01a3bf22b7b70c3027e79cf4a94927f353bd4023100844e90b01550a581e129aceaaa64b5bcbc9f14a8e7740a5a56c60971d55dc894b4907c5f2f58f563e2effde32d25790e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023041829dd67856d766a8b4c4598858452de65e4bdefcf636c55ec8f0b71cf795ce24c1e0d0fcb9bf9f9d5c3659ca39f36302307f1cbfe37434c9cd36e775e426a6cac1e1d3db996cc9e632bad729635998369dd40ff032e80c7092a5688311cd4652220302047c435bb500673065023059819691488aca9918690d53a29cd30217a4d4a1b6d08aa847f6d32114a114aa84219bb77318d666e114b5e1b1ef8944023100cbf013a364cc0b5015c4a62c600c7719321493c2dac16c74d18c11b6dbd30469e797d4cd8a917b684ca994608f574ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230789c9d6caa84f4deefe2dfcc0de83515676f8843d6cae71db7e809c17307a2dc42bcf32c4ffa0a4172f4f1f3163db9a5023100897695b15a8a43a6ecfe5eed61ecb54f24e658fd4d43cac678af989bc30e7c2acb7cfe9c22528b6dbcc2f5004cee80f30302047c435bb5006730650230545a73f202dd8c122d41dd71deb6099a382aa4891fe45dc26473eced5023b08954497fc084d0f40e324915e1141c47d6023100fd72ab20f9676b0d1a5de9d7842a3ea03f73ddb375f36f45bc828c021014ab269df1b20ce67dcd89390e4bbcf50791630302047c435bb500673065023100e1f94a04e3c7814e0c5c80df620da9e88be35972489f072dcb386358962cd792d0739ccc356195ac07fca4ae42609bfa0230307db805d389e5e909b6a2df36ea290dcdda03fbf03fcb3e2c43dfa59f15c63239e772a5961081d6c0a543e35c0f00fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a784b4645085dddd71c21e993eb251a7771bd96db0089997164af358ace62308e59568d6e4dd7754236b06046762ee3023100ed7734ac5790c36d78caa5f76c56e45cc1a8ddd420b6abea04099fc8d070b62189514def3a9ffe6eda8e7b0017098bb10302047c435bb50066306402307ef4891c36e19100abb8a0739d4b1fb319b4efb7be77a00cf0176e3e4e76672bd538e1ad377c0a418d217459d100e78702306bb7cfda8a25f547ea019a3e4333224b84c628ecf096695e217d95897fb8dc9e99042d27e1860d8dfb9c905476814fd60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074f040c1e716d6be0399ab6a9da601eea050960ebcdf134176625f78b8c52c585809a8c2121b211bb4725238a74f3bfa023100d0215bbf2c421eee9b5762130dfaa8036ef1c508d054bfeb2393705c9fbff000e420ebd1c367c8d68239e2ba0b2655dd0302047c435bb50066306402305ee06504e7bef869c69ff8d0c6e3a5516c61d07122abeff3ffa2577fa471941232f4b8da2fdd7ed573670ce2cda214a202307134cac1a4e6d7831f90552877d55940183e3c5c235f4729544fbd952f106faef83d15871b0a39024feab93b2e50cc710302047c435bb50067306502306b717e451772b15ef7974b1c41d7c9b48a324e2c21fc358104078a5e559b7d8d91ae76072790f508eaae012d81e648540231008a68acc63a4dd3af9e1ae55529bf8d05371ed22d1b18f1189f26ddd3ff9a19ec3666cabddd257f11066c1693bc820c3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230669485549c1eb6b0d168416b58516e53d33f21e16d37784b3aa650e1167550c4af91232f7f622dd5f2c975320aefd8e102301dd94a385facd661e275682bb563c0bd37de15a376b3e52d3b5b6c8df3b1d03fe69f7a4d766616e5ba540bde3581d6890302047c435bb500673065023046bbe975e6626fcd7fb8e309b7cf68f6abaa4edf187c42c17f10d5c92de61505154dc9628471195f9c388c0d0f4f641d023100f9a877458850e8fb26597a8186a7a488c712a5a2fc4d358edcc1730b0da1219ceac7148b71bf12f55cab41762537ef1f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306092f84f6d3b3ad889998a2bbd58cb024a6e9bc4bc82df4607b72c64bd2b69f62c2df27d7be0e7c3ff11c129795e680c023100af963ae10ced79f72b2e36c2ef2820b07e87eb30c05f344fe2e59f664f3066e63caf01a719b093644ab9a1e9073b29340302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305e98199879b470fd02ebb9a700757289d3c6927943c93b84ca22f235c01cd15b858929a2dcd9995d5fa6f5da6e6249c5023011c81ae63e87063240f8b8b7a752e83998f677001054ccb8e99509a70d75ad2ef423378e76ef825800fa9360148a4b210302047c435bb500673065023100da135b8eea8dd199f1c508e1282bc2679a8f0425b44a16bd265aa05592cf5f3bb733a4c99b5b4c5e0bcce8f62a368af602306184398c890433bcc1c8fd3c88425132ecc2b5aec169b3c32c8a050b905a4c2a90bc542b89c50f921df130a834dc72ec0302047c435bb500673065023015c3b1e81c92aadf59e09bcb72450f10eda6e4b32749cced1f22a583bd191fa156be8a17c9f779f285aa633c5b1561340231008a1c206f74933f7c359db62de50f79ceb472ba6b26949fbade4e23f6eea7df4977de1af5e2d1fd4a1c7f47fb5891e1180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307fdf566ba2db968650a6488f6f30f7d68c0c40c496decd04a51632cef1a3178f70ef04e940d85076bbf773a9ab7198b1023100d4ec249983677d06cf039cb4d32522416ce6fe1ebdef0a0dcd9e57267b88837326428f188c9df40219590b395b2c09bd0302047c435bb500683066023100bec624520fd3018520ca70fd231f07942b31aa320c3bdbd14be3e26c95b7de2cc687f00ce79c2131c2b7714d87f6cbd3023100a029e65deaa8d6b1e7de0430f8cfe2f85f7de421fb838d9fd5ba1fc457403640c9caf11b385a9c6df6d00c5cbcd467770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fa7aa09f77e8da2511f086f7fbed86c822e3d695d3c0c89553c54433ab4132aabf73bfb7b9a40f6a4bd157d2be607f7102305d512465d3483a98b72fc49281681d94338862e177f0aeb27a196d690a15ec6c60e0bd638bd7ef1e40193418396ea57c0302047c435bb500673065023100ccd0457fc9bff2250c8874c04360f859ab28acff9667d6e243f71177a972d914ccbbdf46525076042b1b0579fe6cd4a502304e9ccbf62b5119eefb3167e082f557fe984f150666bfedde4fed06d8821d2ad9d85a8cf2e0881debbea9b5f9d9ef801f0302047c435bb50066306402302a82c1f5676d0c872c18267f19b9895ac613258239ff5eadbbb324004e0d4c06fc50b6d74dd932e1b3e8a3ebe97572170230018565f327272054914cc0edf3ddc156f7b62a47606e0779bc0a638a1a398212e1d813fea04bb956e47bd5450467ec3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea5e48f9c4ad9ba5c515e592614e37eee0881140906c6ff4dddb76446f0d0d8fd419f4ebf0fca71a15cd34e1280e95c602306d32bd2e4717cb678bba03af5fd595bb8d30cc36f5e809b56722063e9ee6ece2f057288edb30c10bd87a20384346cd400302047c435bb500673065023031b2c0ccd9580b59098cc3dedb460d6a40f19a6e187ca280bc0af7b96d1197c3fbb60dac0f5e08087e65f12b19280205023100f7c83eca4e29310bbb16c49cd212e6065d86bc684b452b8d3ce0ad9129a7f193931b57c5b7bb8b3c581457dd0447c16f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b610c14f20b0eba9d92d0620e1800cc9aa1940c2cf148fa1919af670dd8c7ec2e4b6e0c28e536b16a3f3f5c6c0d410dd023030b616af31189bd1b2a1c1a964881fa239d34b571403ab05fe6e097ba4787c3af16b27a8246e1498638e26069d8b7d340302047c435bb500683066023100d9b931678c475935775de15d3e39fdc5b1dbd3e2c122681dc3acad5df54904b69716f1423faa57cc76e53a33c4f1fb9402310080cc700f071dc34e97b2c253e807198012e7f22e5a9a77c0cab4b11f6df7b06bfdec52b0a0b7ea47019d2ed2d5c145a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b68649a12b7f6b5a8b21e71bc2a2c84dab85ae12a321317c9f3c930797e1fe4c07fe1af2f5821c27467f41635274ab2023062a87368cdef9fec6667477330d60ddae1f76835db1a8e2a4a564b3ce970324420b1ef1099366fb21486a8e30a082b1f0302047c435bb500673065023100c9ebec5bd814ba8435ae02b2d8317979e51aebd184ed6f2a55d2f902284ab9f26018bd64fd2cb1434e34554a13a92e2a02302559890b47a071b079d0d3ffe51e9667175055622812df81673d7f4fd152121a447a35a141c50fbde0f61145e5d092bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ee89dea71a1cedc96956fb12e9f6b1dbb617f56e31b515303011f4aaed504c5cd9b635af7e7eff1cb0523066de58212023051a2e20d42743cb22e886e5cac25ca6ee9d34c34a47e873d2d8c1b22d78320f646b992f61ca60390231650bd75ef807c0302047c435bb50067306502310094ec036b154cca9e9dfeeadf0c95dc7a83821413501f546a06dc2bfb7e2129e0a06a83259744c7133845d7c5c5c04bee023060a04eeb1b10025851e6e7ea523fe472e71434f9e72eedcfc8bd3bf9bbdfb551d4f90600ef298797f2c8c56b8fe8fdbd0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4d30f93176706260307f79a40450f8e96cc69b258b53880cad7bfb7f520537dff08fe2d6712f522613d3756446c920a023071d5fdd1306ceee17e38d007ae748f8156e29c374cbf78004fcac7b0374c06aed201ecea87b9374d485c3296a377f16b0302047c435bb50067306502300eb48f4a6e15b98fe06450f2da1a1dbefc2727007478031287129819ae7f94829016e4bed7059c1d7abbfcf07edcaa6f023100c71ca54c6248b2e0fc03e17385c50f15b48bfa698a9359561013b7e365e9bc04183cf841d37aae3770063af0adec48490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310098bc433a9c441254005e572ad84b3e71faf5259e30b4103c338e01d065bb68ee6e99103eb8a2252a5ad198ff1f6878a10230438a6741a45e4b7ab3394d4b978ebfc1aa8859be21d15c9e498312dba3f177ed4ba038a3ac57d4d1acd8bdc6a3c0cabe0302047c435bb50066306402307bffc4a6c33c53925e9776f996fefbfaed68ae50b57b47934594c0bac8c522f3a28f250aebd18e82e9e2ffc76e77a958023078a446eb5591a784f55c62d58fd6f25ebd0bd17260b6131d5601cdca456a348861ad64f9c141d9cff7672208a8c75b150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f691b2565e102ffa39e3cf0b77dd2ef625e0c5fb90d369a0a3016aadca20658f66040208e3ae5a6360d49d7aafbfb5502310097cd8f71e882ce7915627d3a797d5aa90d8f08e63231e11c55f766239a1aa28864ffd7b354c88bb1a9b630c8d24d24350302047c435bb50066306402300ac0ce381ce892daf821f87243e22547ecc35716447348fdd66cd5c0139cbe606432b5649a3a27c500df1bbf83cc8b310230384f267e81ba5900150b92391a9d64768b0c7c192eb10b3307ae7d696c1a0e6282e19d1d60324556dc6de6c7dbb603360302047c435bb500683066023100c0dfafb609c343811436727dcd21aac7280d2c5c2b797b52987bc896b8b7f1a7b683d745917fb92ab9e9487aa3c8da9a023100ef54534e86cdc4baa4daaeb19d5d09eaa3fc36d0f4ae965ee93fca22fdfd74d07e61093b812d3fd69cd59cc76d65d73c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300d2b62776d2a5eff9a1c27d5d9023bd707c8f755e040ec41a9e40fe3c382ba4d645e0412caa7ffa72f665427f9794ba6023100dec6d7e5c3f73b5f97d09cfe7d0d9f603322c44d844340db8c8d8a201d2a745eece01cbbcc35deddee401ab63c1b25d50302047c435bb500663064022f5e3743773ab716dbe695f8607688612e04e216be5da6e82a485f65c6f682dc72fe8ee56d9d053d7988ae123c667bfa023100a17cb7505dfdb4304bae8694bc16d827ce514f1c5567c59abb336b885a00be902dcce6df1b8f126be2bc95c05319532d0302047c435bb500673065023100a4ce7f8af120d2e96d37f0fe8b5e548858310cf5f66b6e969befb67d4278e2978d2e5e51f309f4cb229c1fdc6d701703023073f5078bf328827fe74e21335953c0d4cb9ef7e063c62a626a9923eaf67b2052cdb809fbac4e0612c159f3b17347c5950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230039c3864951952df109af6c77e5af75fc89364db8cb1c695a41a3303263c34521521c2d783d44d487a393650f5581ad602310086da0a1d5a940c2b18c0eaea2200bf01dfd37676b352fa6a575fc7cc4702eab0706609edbd09a7237adb2d70cc91a14a0302047c435bb5006630640230514a91fb7ebf7cee5c80b3aa37a90dd572f34b468ee8dcdce07e0b3738c6925f93c322c4efe60df06b3855af28ac309f0230386ae9f72dfc78a18f00a152fe131c42b84b296451004ff6f496779d2440a99495d1e1230d8058ab84e888f2bc609e4c0302047c435bb50067306502306b717e451772b15ef7974b1c41d7c9b48a324e2c21fc358104078a5e559b7d8d91ae76072790f508eaae012d81e648540231008a68acc63a4dd3af9e1ae55529bf8d05371ed22d1b18f1189f26ddd3ff9a19ec3666cabddd257f11066c1693bc820c3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ab682b42ce51eacbde4cb18e2107a5f8b5d26ddbf4daddabedfe1c3d8c2d456bd93aa4c7f9afd7cf9bd79ed0cb9981bf02300beee991d5f7891137a1c400030cdc4c6aff592251f0ee544432cd07fbac16db79427bd1d4c96cce7fead7daf79320780302047c435bb500673065023029649afc93b4db48dab7ba6cc4293335408459ce8544a03726b2081d1f7283b90761317cc68e5c2e0903c416323be3ed023100a7e449ec6e4a87b56b4f62816a4c781c8808d8b42814ee9a4123595f8f14ded39004d7e4d41a7b7bf065138ced29d7e90302047c435bb500683066023100d2233e7b5c2e2692bfaf726c1cfb85dba864fbd1f1f71ff8067d09c8623b6e4d024fd136fb796e29f8ccc0008b2d8dbd023100dc870048560490ee6dfc2ce1f1abba8b87657c2f795bad41de658a2c09599d87161a571babb9137c16008d55ba1441580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230709dec311d7ded9338c8f5fc8e5a5ee3db854e926d6b784f369a9afc795971b73a844c102ffcb29fb225b9f1ed968656023100b695af872ad10c10b3a442f4a47ebb02452ffac3c631575766a0b6ea64f888820c37ea02332a62153ebede07b18a361f0302047c435bb500683066023100fa871c31d08e5c4c67839a68cf356a1bd74ad9a8688d72141a5720c7cc0a96f83668369a847e145e5470617c1268d8f1023100e5159aa5a7dbae24bc0b271620473025e85aa6e512cae5c3d88b09071c756c612360470420629f12fad1362074f7157b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd4f6de05130ec6882456c96b8051f7f319bcaa1800996913b52c99abb637d06628d0e72ab9bb8fb72262755457165ca023100dd702750f9d7114ea7fce0c521025720dc6df71c1a3ba935228e5d25edab70093baf709977d6e7652899b52f717e928f0302047c435bb5006730650230528aaacd93897ff43e23cbff186c78a815b58436bbecfdb63e75e3f9601487f792ba68eff78a07dccad65bcb8f57693a023100db6286583cbdc57582225ffff2003a12d91671a41f178f4a1a4151c5696ea4bc8638a7f7f08f44063addfdabc5e378ed0302047c435bb5006830660231009218d2ec1cfc7a9847fe47a6b39a4463bf775b5fd24bf075c4821597f371b10285223b5e33b5ce065df8dd9d5bc91689023100f233afdbf360c9417f961b1ea4f2e0a5c20a6db17ee8dd7fef0b7c3e44f75ba9790efc0cfa2c9d513e19804d86e191940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e5e2b3c3a74ac1b8cde0403a50f499111e9d5cb6274d2e65e04b311e457ab6c777a58e4b1a3dcd86cfd7960e2941a9c023015e56e3b875a48b88cc359a084ac2f29115193bfe766372e1b13fddf5e1eb333bfaf04129d13f54989afb6c9e53630040302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079eb381337ba6474fad63a4ec129dc5eb71d0fcfd34f16943a4f2c89cf73b693b77851d5c1c248ca61b3a9d97785cb0002303c8ebb7bd9f223c82851730b123f4f7046b8071a9d771e70187d1a61d2adcb83b8c5d8aa6ae41a1a60d4f0c02943e16b0302047c435bb50067306502304ad97c9a748416bc05f6bdb7946ad88406d850e671af8043c1cc94f59af0c5081c1e4707ebaa9c1036349bd48b92ec1b023100afbcf7cb912d36044789e4221c7f2b1ff697abc03c07981f9293b69c746389d4f50e6b11f816df4fe0b5a9895d0c5c170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230360abc871a0dc76ac351a5148d429baf4121a12f846cc32646ff189e7eaee2cc6408f55bcddfc22ac6593f3c854ab0a4023100992fabb099ae8a4be57209f47afba96681f6699cfe73008d9479dcb73a1746a0fa0eb5d0014b1798093f6dcf6d30c4dd0302047c435bb500683066023100e3f5280335330745185bd62a004f7b6694894f5471bcb0c6e591fa9cf91e1645a453df04fec97ef07e3c6055083a4e19023100c163d04327f585e227343139cd11d84d02d158b11151781b2bac24a14ce07d2c38d73ec7e6e5655c752d903fedbbc6790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5adf95d91c89435007ecb1c5dd9982fb51541b1b30bbbb88650586569a98f0cce2f6f63fa3f261900ce6853cfb50fc90231008d4dafe48cfcf3ee53c71c40f04d78408233616cfe056c7d008a63be1a56ed7c8d71c7a03e84639f9c4f393a74a190260302047c435bb50067306502307a2da43b72f83cd6275e2d5d8c23fb86401f2eda88d6700d0cfe52af43a567d7257e168f09eb776d397d2ef6d0a67bec023100ac419d9c451355becfcfd981e13bdb801652d04ec059efd38adc5bfbb36e6988bc9ae5a3567c8a8797aecc0e5a0a31350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd8ae8c68e2b151fff2c7b6773c1e07f2ceff05b63410e017467dbad0d0839642e68c8c281ad46959eeeb5cf9cf5b71c023100d133363b0627b0859b641557979860b83c6ac05d02a62acc86108aee39fd92973e77ef288ab43c1a7cace57901986adc0302047c435bb500673065023001056c0a97d14ed201812bd1334d54bf831d2361ac5bb9f8845bd46e521fd18c61078a4a05e765f4fe876ff7be02160c023100f8ea6f83c178cd776f4183f5406f466c49f010cf605cc6259b59a33804fd79e89737175d59895eb8abc452436b017d160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a441a3c3bd7ee6bd7bd7bc79367ed48d9af154380e2604c5d28181c0dcc3838cf826936aabc00ec624e458cbdd1c4450230291dcf569912b738cb0db2598d42b54c6f8f2b28dfa8ac75791a1c81a80e08acdc65c0e2bf96ef1898fd321364d4fabe0302047c435bb500683066023100cdcf969af32d76ff24ed0410678a3c8236a5724cc588ecf22bdf2c50d19db2f92b703b8697cb713215a6149a5e83a3bc023100f54625d00045f5995b0de29f31fcab0d090101b2074881c738ce600224ddeaf0ae2cefada550b12a0a56852aec34b87d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f10ebdcd9953217da1a4e481decfb6782ab377d55023a4d226a6f79a1b62f3784a68343ddef30289b9c6f81c97934a2c023100b1aa995ffd6509ac340a3df2a073589fede891d93d3ab95b71d1a9128b9fedd3942ea5d36febb4c270e04a4cf834ef000302047c435bb500673065023100bbc43959a276e76c7d196784c1262c0a3a0b5f98be266f3a7bc957c0662e60e50355669007c2f5b75727b583be4f4b6902302bc0400fd28a7025309aa8d9aee1c0e6a7ddbac764916909b03991d351ee8ac1306387ec74c9e751fe33796508ca09210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230176f97440de57322abc59888f993d7ed4bf6d50e41fd644decd6a6169f26a68c4ac743a2bda6bd6e6c909833cf406c7702303640f986f83b18753e73db7998c7314fd4ce0c8b856e747ece63e50e1347248efa30d58ff1f1824bdbb6c0429a0f56610302047c435bb500673065023100c38b4310d91f70c555e7dadfc4559f23d44e44e7cd6a05e9cf851c34fbab2f1717d8d2259555e76f21c459a8f24b802c02302d8750165d48871eda6e2419b3e09b642be6effe27438d860bb7a82ed793aacad4087c1c6bfa50350ec9d9e73b5ff1920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010614fff142bcb8be6b5a62d0ee23ff08be068398c4d4adedb3b2e03cb365c70952b61c059990fa2afd5c06c6e7e35a00230069aadab3e13a28c60afe7738e5c3312265416d5e0d8ea21e6bd726dedbac9f9e129fc516d8943e1c6657ac962eac40a0302047c435bb500683066023100ffd2bf56697ffacbe96027397024b7911b815b27e9ecd6dedc2f41f55d3fc7915698d3342986713be005b8ba29d016f6023100b0164dc3a15ad3393360b9ee35630606de5a7dd9c3c11715d55d06219400b5b148ecf0d165d5bb9d27debcea49516a280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c3d791cd83ca611e7b831e05b078af410ff75d3d3fa542f91ebe0a562c2fa78d6cd37cb5cf15e89ed0967effe992a1bf023100dd961c88610c7a36a0a130ae7413c64a9762bcc6fb031eb9ae3265e6a513746dceaa337d553b23632d7aa55356cfd3ed0302047c435bb50065306302303d2c3b6723e4bf978978297ad2561ff7776b2aa701a40822f93cd48a831f1003c7e87453f260e4cd8df505e4ac8416af022f124c34676e03666b922e39ea036d84be0793423c75c22246ff9fe6e83779205136bf264d1a2846885960bc50ab3c7d0302047c435bb500673065023100bc896753ecb447edb1d506088d3f3751c0c7d9eb7b525b5d5a0ef75a3c80fc7a025fc82c0bc987dd980cd2faf3d1dcff023059694f2f70c09e9d93068e45b2de0915904901fed74e992c9a311c528d28a54260c7046eaf90e5509b2b6efa62f265e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bfc227dfb15b8ed043178e22bd5ee3836b6b114c05bc777deed521236395672c19e74b876e58415ec76bd97deb754c0d023100d1532e2d9b790806fb23b67028dc18bf1d1382c043aa8756fa1a7aab963de448c808c1632cdf144fe2bde10a5818a0aa0302047c435bb500673065023100b868c65602b9ef3275d33de34e55f7667ad52426c0f468f7b9b91e9178934cb28c89562c6fb1a9e23766df10bbcf27cf0230404d273d107ab2f2a154f741d21b67e9ce66f85f1c05ca37d07ae4ec02f6dcbbb92908486d0ee61c5ac8b2f8490fd63c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5a82c55539aa3b057092e6e8a0b5128e88137e7b68b78e854807c1c46c821d264e213f5b121f22a7c23c6bd0bd59ad1023100dd17f0f3cbc9f98a08fa262dc8e72eea4c490ee9c350d26f62765a8c21989e743c1c456371d356a35562a229b5d381a50302047c435bb5006630640230143489298f5142ba10c1f2981c672b858eb1b5fa5f0670cffcd2576f91b68e31ea2fa6ccd02a641ece088fa9a3bfbb9d02303a06b42e4bdcf8b8ebfeb573a3a6753b2b9af95bf4abd6b79936a537986e84200081f753f9145a2e6cfb5194cb0f610c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d07e9b773d94c6e2fe24f78b313a5df9a2e77ec89e857cb5b20e67c6d5f42c3d463e930ddc75270da85849ba690c7535023100f4a6c27d25791a09786d7a62191489ce71c9da1fdebdd75c864b5ebb832c1d1cc84f1d5236c9d13c18b9e9b32bcdcc300302047c435bb500683066023100a9d1bd7cfe78871825e0483ba65ba0c5b82c708dc334c61548f0d770cc06bab90f7ce0251c9071811bfb7fbe034432a7023100902f6ad6362a92df164c52a28970914ebaa23979d2360fa2d5b43a18e6887ef3d8b02894bdd849673c7221e65902046e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076fd0f5bccbb2f917e2d4cb3d6ade2c35e9b1d45b38bd89baed9981795c62192ea283fe7c651f3c1a01b2ea1639f187d023100a02205a23621eb1e2269c105f7b3f659b010b1a486cef92a3f16d65f0921c7e5037260db8732fdbb8bf64f3588b690960302047c435bb500683066023100a06485a26e7496ffa41baac02a9e27ede9b96dbcc69dfaa7b17c5f746a09d29e47e1b4310d277bd3c950b9b8072161fb023100f2db77356e0578b3436d1ed64a3df2fa3ec9e963db25c9b24bbf54f29695037a2a129e596c6ed5e296939546a6d72a550302047c435bb500673065023100f994d42a1c45f2b97f0cf3c4ddafe611e753cdd78d92f770ae35f6a9d719614cab69a6124a29df5e5e62cca1cb18057802307ee7a4b7b2ce16c878d751eaaa79fd4030173a854e388fd9e335e8c5798518fd42244407578e64112b3b85d3cf0ebfd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075f8c36bdef8e95ac90ae895f5985399b133dc12c8548b4cb7a3523231436baa09ab5c112c0febe5615cbe7387dc6da9023100b1d890e955ada1f5dbefd7bcd830427f009ac5928582d158a3b89495af70cb699257347576a84dc012d6e4fb075402020302047c435bb500673065023100876aac1d99892d049398426b7d9ac1ed0e7462063b190c00102e1a26389a820f99b85b47ea38033192efeb164786cc0a02303af980d269a6fdc82c65071da42add1dd70d4fb21febb2e0736db702aefb94e62ece5040e660eb39d1ed9d75ece986b00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f29d2bf1a22710281af37008330f49a4674c704fc302ac88e928683d358e3c06f1d63f360a96a0f9a79f633d6a9bb7f502302a8f7f153b4b957dc97646fa7d2b858825e87ba6cb4d039fef7821c58a95a03e625c1ebaba65164fde7bc67ba06ac6c60302047c435bb50066306402307fef5a26ee457b6f44e9d8f444bfe288c4f7d9b3bc3be10540dc945a32281537f8de50652ce276deba7747f23b69a000023022b0c27385cc87baa8063a203de3a7c7070ab0f498ca25dfc29b18cfc8e25d61db1ebbec90630b959462620ee4906a8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230174753d4498a7be87d7c87b4dbc753448e09b966ae8073483520a059802e2d1a34a4c5719855e4dbb2b508957751c09402310098de793fc8c1ad3026cfa1225620ef1d10af876ffb480545654ea83c016956de3a727a94bedbd59854e9faaa028a05210302047c435bb50067306502310082717dd93acd39c8fa4f997f027d6742869e3697080c29b56b815db73d9b987d0da7d41c8e09847aa9d38afc3f166cab0230484de1c3a9d9e8a20a31e4070a020123527978a532fd478d310387ffc2345e4458493cc0cc1b17049fc261099a84d0440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090be107578f321ae124a12c1f0fb3de8483b276b2794156ce668314057d69c273f9aab27708c932c2ce7c3e50d118dcd023100e7644fdf0d434ea2329bf621a2334f6c51f377fd26ecf25bcbd22bee93f831b0ffcf04b326d281c59413f3e8432d6ebe0302047c435bb500683066023100d0dc1a2c38684a00bc5e3f917d3d9468563c98789162dbff2bc47a78d857b578dc28726160e88bd75c978f362e013550023100d3887e85656e9d2aa68e362ef73bb61e975d8a55cfa40a659554133b64c174faa9c1f65c7fe787434fb4b7b59f0fd5410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059ba8f01c20d96ffc73cb2b04c49ba4e7ebecf6ec2e4e1420379b4718b9c809032b8ae222cd6a526a067c5a62f1434f4023100bf46d796d68d823b2e74772b25902a998d860c75cb8eb000ec019a20627c8a99a839b6cd1c5858a3028bcf452d7153af0302047c435bb500673065023100b9bbab210cd2086bdd962c1bfa6020f3672da421bc7d105d0c995e8d43a0f8e1c43fa1a6e1175a910bf4d74f7a2c7fed023003bc5e01710016b6bd03988ae452171090326fe1b8d73ae04c0c483a85d3369037f2da256107a31ad9e22a8ad95eae230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec25868f84e260074970521b0e95c2deccd275dcab64b5720999e5bb5526ebfa5cd7b63377dadeb656b341e5f524b9a60230492b7c724ae141ae69f807cfb86402fef4453421f512ef67b4a3f011de4fd87266b1413652b367eb5341ef8076b7e33c0302047c435bb500663064023036472e4f65d896c21bffa689160955842d424c4fafc8cfb756b6d2f0138d4b57509f50c56ce5361746feadf55ff85201023076c9e8f82a6fad0cdecb90ca99e3990eb8c1dfcffc4cc7b9bbfecd2e45be074a7ee8f89f336402876c8aa135b2c56e060302047c435bb50067306502301c7362ea31631a2b7d9773cd89fae53e3f5f1d0fd045ffcac96a182a9f7e07d884eba0b5c2b79b79e7fe3a71c7553bb5023100a67205d3c17ebf0c33a8c12a5b3a68c95ac0d1a91a1d318c797bb2bf03019a7a6da08f6999496c83ca876f84240b35520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024a3dcc9d9118282f98424c80048e2d2e4006a69703e2541ce6d151cb5400db41eb348fa4ae65743f5d63203d7177c6e023100b80f48a77753171191a8bf845798ce6b0533ebaff9ed740bcd7564a9862ad070e7dbfcd0f562bbc74794ccb313d70fec0302047c435bb5006730650231009e396fcf4f83469e44106b3ac4751d1b3f0582ec9ce034e3d2e65a47420c879dc8ee47821c5135b5a0c87a847b5ac768023004f2e5508e5685d6c4298ccbb6844fe645452a5abfc4d323b4f64ee5309f5b1e9dad8527627ddee6558c9aeebe7e5c740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b465268c770fbebae3a86df20373ee90fde291528cba420fd43209813daad5fca81a3d7c25fb9a24d956e62a48fff5e902306660bd573971f21d1ff25b861a31dc228c4fd54e0dfc702589540c06e4a327d51249bf70d6c2c082e0574927e8b14bac0302047c435bb50067306502310090df06f9499ac1df6c042e92779868ef8f5586777b1983248dd07b0e45bfed386606910db33db5d863e5058906f7d0640230783ff510e4b287c0ec181709229910ac91fd01bfd296f354cdd7350ba5fc8392b616499f91e7578239a5659973165c750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230752e321a98ba312eabf5b5a88ff68dcb9f83c5e91d79531e5df2dd5e75e8e91901ba50d491df4d5bb21f26f46229e8be02305fa30b12edbb6a1b9c934c913e7cbd20e7a2c1f1616068a95afe30bb8acf40f1c2e3bcc005c1a2c9a696516dfa2f0dd00302047c435bb500673065023014ec71914677d88e73e252dc3bdbd392cc7a0c8d4996b0d3ecaa68b3d2a18bc1b9e5a985a41edef70056a435342def56023100d70050f4acffbd15e2cb5def7bcc8e7f844575182fff1aa0303d3fd6a5b90948ac45b4f2c9c7eab397e1332ac345efd40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024a3dcd5739adf003727fa13a45863ee4df6bf91d6eb3102c7b9dd503cfe9eac2fef9237d625441269c8727cc48c6ca802310090714eebcad5e9d5e8280c2c56c56e40b023afba62695ab27ba703a0ee28dfa3e083d22e633c245c9fb275c68fa1437d0302047c435bb500683066023100b2e8d9781063f76b30738bb915672602fab5fac7076d27e08cf9bc633191ba71d04d1f37c8c352f9cc7a8ebf05c64cf4023100a3ea4004546b9ca8cb87724335db74d3de2ef968825fb52c07e4971400d6436b2454fcee82a4dffbd286ccb3f6faf2190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c40e694066ed7424296b71ec71772cdca1634aa80d53a2f11b9c6482985d1f082b17d8794a6945d04592076575b944cb02307d94da2ca61d660a14df298350bbf49e1920fe85fa3af9ce1041955961a0c4936983e86522ea5974b6d157abc9ddc1030302047c435bb5006630640230211ee1b9f426ad4d226a51202f50c80aeebb561ec39ceb8bc6d5127e7b34981f99e1913fd523c0ec5b98e0067cf60c550230105dde0dfab3bccae53567fbd6e03325a12fc4a755c5364a941368f20269e5f0ef1995c2ac85a9353f519923b1368f810302047c435bb500663064023067100682f992ec11d290dfc897b3717258f94398d48f3edf4ddd5f83638feaa87000ef2a3db4d255548ed1207d4506d202305510e83d648a8294d2291fd412ffc39663d680def764ba4e14b07208cb1a9173ee761cec6c7e052101b7f99ddeef70bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093679fe38beff76f302e1f4f94d90959bc61a25e34449b40ea53f2de680e8b62b4cff362f1128c186b7055a8d94cf0ce02303598535bd6a6d2521b4fa988a7a8b3b63fa22811d925ebd3ccd141a442b4b7c2c0bdc21d6138b958df222d87f5f628540302047c435bb5006730650230227a7322e6a3a0c132ee0e263960cbe9d8818dbe7a05c3de73f8bf97db54f373bcdd3b476309e1d86caa2a663716de8f023100d6890905c36c2a3b7e6e948de47c9bae1eb2a8b74e855ebea747e09fd1b55b39a2ed4b9c0640655db9e49ed51bf546610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009cf8f2d6be972917e9c794ac7010138dd0f109f57930b4285e5fb5824b26510af56a35ce564b3c12e8418309ebaf0f9a023029cd5d53843bc1213be60dde33a88823a45a88749cce977403a9cce1392b20fcb787be8f019a682f13ce69634b2d07990302047c435bb500683066023100d01fbfdb2ad42c719c42ebc54d2d7207e284ff55de37e4e760eaf1f81e8d601c25a885d6b58551fc012ca9c382d5446f023100fb662908373f393d53357900ad4d1f19647641a87382d353b0b16cc19fa66be5aa624172622067996843907678d3b9360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059e0af7fbf9746932bba811c64fd0f5caa01f8c4d935ae807c3704836f3e12a6f8eb05b18393abc3d2942b78db658b0a023100eebf6d6b1b83fc6865b500bb17f317fe40c5558cf9a5a89ed07d0f15ae5f3a6710d44dfffc81ffba2dbd1e7b8efdefc80302047c435bb500673065023100d646550e616a859d9a3e9739d68d2a36e29e4a648c96344e79edece8255662324153c3ed5ef1539e8bb418c84d733d6d023069dedce4f3557bf3d3bf76dd4b5c359065b4a9c74d1f07628d41962bcad520744d0644698c848010ba9b46bb54561f8d0302047c435bb50067306502307ce3689c66f7d2b0fc14073b34c539fd6eea19f0a6bc76c9f54ed360ad7b1881e8fbe11897bfbb05b4eb04290a8000a5023100cba624a7e226cb0281907917fc3480bb05e11457d2a3db9a88193cca591d7551f19ffcf6b3f542be1ad1033a1f4aff0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dd5de17b85c67c76d09561c684b10d327cc47261a8517068572723116705f26698643cfd8bbcc4d9846bec775b905134023100c3f0663df1b0de8a25621234bc27537e22e678d6a10ba62b7eee469151e51ff65c6eea6e2a138f65cc5b60eec9f5072e0302047c435bb500663064023026dd752d74651e34114e42acc884e9a254317adc615b4d5afcc03995a7960c6981da71355657e6deb16fa74ab785985102300e6f4f0fd3fcb06b1965947e956f6f30d431dcf2cf7e4942835d514b5c3e1701d04619dfd61fb72acba31d6894bfdc7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300430e6f398439b37a48e513126624c4e648a05dc811385982ff57220901f39c75a43f2e566a04ce35d078f523483edf9023021dea3bcdeb07bf137eb18eb671b1b913862dc1363e4bcfc468bc1457ad92a54a07520a1684c18e205b7a767ecd46ce60302047c435bb50067306502304ba923119c8c9e7bd82906b6b2fff94f923cf4102b31c5a9ec3a794ab419294f37d8bab0a3c82338d7ac4f8105a3b419023100c6654ca8ed700524c4475cf078703b4f3169d971e66ec0f267df03bb81717f22fb596d0694a14b4a2ddc16a63b132e240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025542119aa97184b712288174bab11075a9856ff61a0267f25947245f8c8baa6e3d85595e26f0aa527ef7e102091ed5f023100f63336a051cdb0b4704021c3825fea147bd4b0abf64b13b2bbaf6ad9139fc63c51daf14d8069e8913615d63163b1f3e80302047c435bb50067306502305257d8c4d0725c0785d6d578aff677b00254abac3927e89ffac5c38533b36a9bbb80b4dba572c120c7a24579a6d3f3a60231008aecc55f4f42b770183510f905e3a334ae0325c531c6960ba02b5990071be7d1af17515c8a0ae560daf15951dacf03230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b2d5ddfa8b4ed0c1368ea0f21a6fedfd7d00d2d9052751213dc6d22b5412b9477b169cf70c13ace36e2565fbda752746023042d007c6c65e9bb50ba7cb1969aee5897d6d83036df0172164e6da0a66688719046c810133fe902dc6b8ab7deb8999d60302047c435bb50067306502310090b38a344f60af3b24810318712fa13eeabdf12066d974141f49926c3b7af097450262a44563ff9aa7849c09e82db921023017c3890a7138c9e6a544b885d0820432b38088036ea7eb45a298d833a1fc78034eed6d2af8a3032d3fd41f21fe4658580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310095b4ff72dff389f432c306dface868d68ca8d9ba807b575fcc95cab1101a9868ce9f00c518c417910f76ee6ce2bab2cc023100b9cb3e656266cbee56de29b8caffadf2be56bbc010d451753cc669f1ee167714bd6b153532880ce03843f0e05a5a5df20302047c435bb50066306402304e5e2b3c3a74ac1b8cde0403a50f499111e9d5cb6274d2e65e04b311e457ab6c777a58e4b1a3dcd86cfd7960e2941a9c023015e56e3b875a48b88cc359a084ac2f29115193bfe766372e1b13fddf5e1eb333bfaf04129d13f54989afb6c9e53630040302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a206459fbcae2f884fa6914d469b80262650d6d6d55b039779caac89afdb712e696981113dece555dfe73d0db5c09af20230786b130f3be4fc25f15a62b6939c7161a061787690c1f9ef6397c2f36d412155a1db41f00e5d74318dde1b69566bcbe70302047c435bb500683066023100db5aefba377118d5872d13c749aa8ba4a5e8de37436ca28ec32fb88444d61c1e4aeb7b1cb5b822634970e980ed26524a023100db1c4dc97ef05d555e240421a097b5395633c87ccde6574f29d13fc51fb3f23b7a94a12c8f87cf6bdebad6633e99b66e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a843599d6619a7018bc861b768dab3f99097008cac23c556042b7dfc168f9b05638e2496dc845218a8631e3faeb57639023100ac926a52288b512abc5410d1611b729ad9b67c56b658c9f528ff091684e2224dd9553f8c64364b89ebdb5e1c8a88baf40302047c435bb5006630640230490a1aae9dddb6a3f3cc4d45c79c26c1e9043677069612328c393fcb016919c6e34ef7edcdcf79391590192dba2a7729023045d94f6c71fab7221115dc23f8c77dc6a3594f78d6991abe813bb7aef29f68c8319c99fac3716d1734fd5067e9a24ae90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230473969c47463dcec0f406711329a1b5df43a142a5c9654cd8c305f2732dbd1107fcbb94ad73f8c232e406ae2378b96b2023100ec4866d8482e4546dd09700e3589302026d3a4b0ce0b566db19eab1a31cba5bab6ae259afaa6c3cdffcabf63488a5ab00302047c435bb50067306502303311a0037ac358286f525bf8a3a46688df7488379dffca4f977fc458cb102f0f0443f2b2e791874069d9b46fc82992cd023100eeea9be7b2eba0c1be787b3ebbc79028e2690be46f71d7d627ae52ed5a045b923d795c304c4609b0d0aaab220b996e1b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023054dabe1838c37409397f2071f95990f4950317bd9523b6ab6abc012631d1e253872018063ce846628f74ce9c9d74a0a0023030974ea11964d99e10c17b669b9bb1d773d908dc5dda6c2e91943b8984caa71a86daa0c1af8d146c32f6bf137b072fe20302047c435bb50068306602310086fd49367268486d907d055ebc5ec3d9e3d83d48b29ee0a2242ea77936be745e2cec41f2e577bc409d57415bd77d1f62023100b82a6582cebd12acd8fce94d7da23d1db8e105554027b87b9bab4b02cc34daec5c5ff124a1f86cac5cbf5edb60411e4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eba86dfba7ad0cbeb5adb3075bdf00ff2beb4c1b45213eb1fbf33a5685e711ec8116dd126957543011f72b951523f003023100d569e2eab3eb0c40f56dbd4bd8b30d021afbdb1eb2d2991da2796a18bab5109216eacbc05c9ac829a95363c55555c9dd0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015e858f966dc492c7eabc51153f92c06f52190e84daef6cd51ec619531acfab193cfbc4ee617c8e32ba1e10b0094d84902307eddb4a8496359e23856d62fd2285bf46311487bd0eabac09bbfe2391f4c02bc65edde76efe01a757cab5af71a40b38e0302047c435bb500673065023100f7a9f0ba91a806343f7289de57aa6a05c5cefedfbfeff045053a67a6a0d1a1a437741249f4813d5e8abc143b9646e26802304cb701f3a4c29942ebcd40d5159d93e497cbb5b286f6ec48b9e5f3f36d5030911253595c68bd0770ca24e80bb89bd4040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d4a5df3c062d7c68a0a0e7e871600c5f1a89bebd786775e699cf89acb9c6ccf72a151bcac174fd85adafd46fdbe7c3fb0230556493d043925f83b522e95dcb81f7cddba449be676a6afd7cfd5dc146d32dd3b601c8a25a40189636582881c618acce0302047c435bb5006630640230307655741e5f9b65305477222bfc7fbc39a51dfd268685931f007564637a125595f0cc8a3edb2c3a67f98573f00bbb18023075d255c6f8d35eefedabb8be773b3b1d948bb6790bd262f3d106d69d7acb7eb2619b573d14ade3cf76f8dfe7092157fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306131c7d4527fc98430ec4e7baeeac369401474c72d60edbd8040f7121548520b0beddba65632d04df9f339fcad0bd5a70231008071190586643e31d04f92aebd49946f3cebf494eb6c7ed3074e8476bf2a40ef76bbd2fa4c4fd7ba8cff01716ccc5ecb0302047c435bb500673065023100d1c6d444ebfb912747e39f5cad74481add05e60df705d13a5913a18a0ba7cbeecc72231fc7ea520b560fc5c587a3786302307e3f38acc08aadd2e7a08b392c45b386326b80547397f56bea189b8cad3ce81cb4549f275919b12830d0ef50b86d26f20302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f16892efa119eb88a5f06993b69d3359a7e24a37cb1ed7faa87f3d3b55e765b4ee57e56b823f9070ed87adec911226e0231008d0f7da5a4039f330e06bf68f7398d14b0df3f3f69d241215dbeab732681e58f3ef49ec9775e6122f53a35c905de87880302047c435bb500673065023036e84eb71ca03a3098fbe4ce350dfc9d57290dd32c0d82b851df3cdd3012635db3ff455463dc0596cf2039d9933d4bba023100d3facd4b9846a50adebb8b5ee55ae5f2ceb8cd5764f85bff285d2a25910d0a3733cef68034b903f0024702af24c7f3bb0302047c435bb500673065023100fb6af1d2be3ee035c74887f30cc308d0c3e0ae4d00c9079cdbca78caec200e38ead35d70cfc00c69fd4aa5beb2f80d8f023054ce63254bf36aa7c7abe0cfa1501991fbdab9424e44120a6febb4b5b9660f92b674e2e8a99dac43cd3b82df010c36150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de97a226c6b220c8c3f2b93207c9013e21a05fb23ea3f2edd289e95a5c7dac92c6390793e28692dd113eb46107c111f30230677277a973d5f2f55056681b80408cef1e01e0e54e6f59a8cb02ac6b7b29563046810ecb81bc9dc6d7436653653360950302047c435bb500683066023100cf26d438629b178be138586ea53616d7e7aa6a20bea4dd33f489fb20edccb482619adc059df5a7f80608911688b9a631023100f1c6864d047444925257de4488324ed468cd14f99be221db2eda34e8ce22a1c31613bf161913a79e5d061485400898d30302047c435bb50066306402303c31a35fc341728a9406a0f9ce32d52d480ccfb4f7ad5cdabbfcbf1f789d875b92ea45af638a4bf3873a34e131fa7c5602301dd0aa48351faf30227086782c340171e0d16a6a9537c5771f4b4ff2dd39fb69a47220470acd7a977802a8c2a50cc3910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230396c72ea1fe04984d5d304a32aa2f45acc8ba9a51587aaf25f4476fcbed2e3f79c37778ab1cea068eef93c3a346dcf1d0230258fc688848bec67683fb5cfc68a7dbe8181bb08e573fa6606e69365b1408c933f4f75447c3286e8a8d9cf6ac2f927b30302047c435bb50067306502302557c4bd70e9ee5bdc255172a19ec87e536d3cfdf15c4dae0aba802c7ca626d7bb558dd007ebbf39389068aa150d688e0231008d9090cc67ce8f796ba250cc3eda0398c28dcccc285791ab21817eb84d7072dc0f39b10c7dab035069d152cc82eba71d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c9daee9688aecbf684f602ef9887aa97ca8c1fe372ef00af14588ac61df1d76f818f90015b6da6689dde122dc1056f8023100d9322a5e08e7d78d053b26555149d80f1c9947b52a4744263f7156738eb4247ee22ad92e845048795058a8fe2e856b010302047c435bb5006830660231008d33c0500b530019fb89ae3bbb5a413f3cc4d3d438ffc641e99a11e4c19ab3559d506934a7df786c41554d678b13dfeb023100864280b83826d474fd8c09455f09ce2e263f44452a4a3de17f5f0d029872223b3c2bec59770dce87c6cff64e155400620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100913f081866facbdcad812b13ec961c5c0e459cbc310fbd00d592e393e2c7c5420e4578d52623ef9504ca98142fb5674e02304f779188729f6df9fcc79ce6827e5bb92733f0e795180ef9f8ba6d8facf32f3c7a31fc6aebd31ca3c157f7cef141bdea0302047c435bb500663064023031a29789d31b872afff4c4122868f7f5836e4baa92da06102e3aeaf286364e8b2f05c697b1f221c793dba80535018f81023052c5fab72eb624bbf13679176e2ef0b3f358bfcc9e250086468778a287ea5c17210e042be9b5ef1bf7f4c7840e5414720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310096064dc9d63b75d6308e8ddd6035cdd118afcfff73748e0f3c03a936a4b4310f7b24e611a7646d2e5fc082af150145c50230286e6595e81e3325b37f87c23250d2459e1bfec6836e35a36e5ea07ef0aadc1eaa7c86865473aa2e73880ef1004ae9350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f9ab80d26911c61c757e4b4f833a04d715444489205512ca4f487e3e41bd9816130388eabe8cfddb8ef976ef196900e202304a0724b6a10706a2cba6a71fe696cc5694aa1215e8df75bb5d1955e1fd5e9c8c029fa01fefe998022a5de5f1fea6533f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303284c00b3197fe97da1eed7b4b3b2cbddb1d3bfbcab19b8ead665a69e8fe44b77b0c008bd756135f721e019e7b667e7c023100a662219676f3edba71c1e89626bccdaa884563a93f78e9cf2f0f1d29504dcd8bdd0dfb700e178ca88d335b39e915decc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ab5b2c4ed2d16f2abb895380ca9574191c3661ae38b701d713d32072caa0c1d667106242bcad77233dc77ecad6255e4023100fd6cc923e8b979b3ca0802244167d9e231317e548939edcebb90a073740d82fa5fc5b609629c55ca04a67a2cd088e01f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230160955fa7f8beb5ed7ffca0806c53b2500a0bf26521c084bcf564253624df6e6f07012cf055f71d66629550bd2d6ba4702310085d646ab7bca305cef7dc4a6d009641707bf3a6d9b75915fd6dafc41c926abb6720bb9c55d359445987812401330dbe60302047c435bb500673065023100ffe39f0461225cb7cb8af8d9b76b21e80d36eb34d14adacbde96d399c4015cf2abca36597c72dc0cf077c1dc5120a73602306fe31415a4bff2228344b43f045f29a3b2a8bfd15a62115f3def7d7b2036f8a88e68f13141f9fe3f986f5f40ec4ca0a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc15104755f4924b25d8269884257be926d7286690bac85416c915c30bd4f30b183969a40ab7bb200d6a966009809e13023073a98b468463200bc3b90e1262780ce60691b1a4878a3f80cbcb841f8373b978ee36bf56683b8d9165cd304adfb3e3ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100832e8ad9e75d8eb6110848afff2c4094934af7a55e5cb6ba48650b15f5d0c193e16e7846d2a1e9510b01605993ac8a0c0230185e49bb65b65e4961066a88b2bc455855eeb4e836b5d80ca714d8521c3948df120a867dbe8ac657a4d9e6ce5f952cfe0302047c435bb50067306502300470db722cb3fe67a6da968742e2d3640b5b4deaff96a4a9fe086fad4ade93a01c0b698c4ad1c0224142456374b3b16d0231008706ec255e3f0511b97ec9c32322bdb4ba20260235212d0cf44f57c12a966117bfa0e0d3b6024d6fc724116a13de3b7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230403da73f9bf875350c4204e5888fc2ad78a2e96e0a8e4d4c9151bb7ee80723047e897581577d1a3a93bcdd1c412cfe940231008cdad82335868ddeed35bd37d0d8d88df5ae82f0f84fa4555924a11aa9217b5d2ce50e42e5d8bdd23c382c5bc31285320302047c435bb500673065023100f6481504c9b1054a2f6cb7c0d1fb689af955f8bd8c9e85e1d0075a95e5564b6f20e17f17fc53efb354a617405ac809e302304af5b532f50a9ce4e654f45175bbae54f136db2bb269ad232f4e1296addd541796cf65447f5e57e3f389e88f96a707fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100902a992d843261483750ec0b5df9bd3f8321ee3dbf03165f9198a695cc5ea2cc0f38973bf9b6c8d3778b25a46c5877dc023100a4e472cbbe17f1479f1adef5730657ec95b271abf97c5ce5a484df287e91c34366073f610161a96a4063ea95284db34d0302047c435bb500673065023100c63e4500102ee207047315b5ef83345b3f270830fa5c48711538c73660282929025384a55b38e2b141f85a09e8f24446023055389bb8dc21432e5ae6e57446d129542e44fbac578683f1a10818760c28a2be428c6b3cf67edd1d54711200d85cf96b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023001cd02339cfe554ed2881cc10e37be998c5785960caca12c878bcac706407891c0521360934aea03d1bc226301f45a4a023039411ae6f59712f7bee70884b37d0f42ba740f3d3e3521a35482ed0721742285bcd63ce2e4525fd734f49e0c86b24e540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300a5efe649e9ac6897af9321b44e76f5a328178511e4c789b1a186e9af33dbbb2ab24628d43143bc2e7c545e5b368efec023045b36571a1df1e33a6d35f942675e39ea5d876a35cb0ce02ea4b087a47bdacb92e53e4f5845b0bdcbb69c39dcf57ea2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301194013abba7efb84f5033fbdcff8d9c0804d440e18d65f91032de20e758143158e0da75f898a7803df2bc7724bef706023100b8989fa66c9a0d83a124fc733f042ef8cc0cc19c17ac37480285d805b3450b1ab29364ba2a7aa834a9381b1e8fb8adae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fe2f21a56dfcd04d227448ef1ef0c7e5abfca01ef3e1fd4d90954102be5320bbb1064a6775baa580ab2fc1886b1561640231009e9a953ff7355f89de0c0d5d97263d6601a4d10e110ef31c202f45d1eaec8bd28bee152820cf0c1703f007fcc3c887a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230478e7a0fd16516f4b1e24347431c2eb70f8ee2155d145cdba0df9aacc3b569c7ae9f0558d349e8629c36865b94ac2448023100bce65e2cf7ce80f475f1c1c02e20cbf5156b0612dec731fbb7ed5edee8c8bb6f60ccba0b469cfda71b371f2a50d8fbf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db6f200562a982bc9dd3d063d6202ae50f89bcac3233677f88245441d06a688bdb69a217cb92bef6e6ab526bf3e7682c0230744ecbfd701277c90c7131df99ff1ad355024e41b4e72b59de412370e8ce881a614986f7880cfca3d767ea3a98fee03f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6bc9b8fa0ff37f7f04927f7f41f8d5a48bf36ceafc9917fac131f781fec8c2a06ceaf6cb588b4adbbbd7cf706206a4f023100dd3cd57d892db066abc6cb59574047a93ffda575b324b8fa3c260aba669653ffadaeae6cfa8604e201be61fdafb7f1db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b3c32b1d92b75ec0af78ddedaceaa754cc89a32a00a99ebef279c838835a3389d14977847ec0001b73d5deb0bc8b7ee2023100851e006d8248994d7fc5a7b8dfa16753db716cfaed7efaf518c6094a707eb83157a6d1fbe1efc63ca2341287c51ee87b0302047c435bb5006630640230588d20938ab59e335d6eb1f5f03654f1a6713b32d9331206a07064d7d6784e58dba7fe5f7f882bc1fa84cd9a9844a5d502303e4749c5d6fd4743de5cea0b6c4064f79c846ca711d7619314e6b14133ec8b31164aeb184582d2d92f1f331a26b7e02b0302047c435bb500663064023074776d835f9baf0959a42fe86311f8b1f46e12a75d0e18a2374ec97e7281f8fb54a3edeef481764f4371a1cbb2436fb702303a713811d7fcb643882ce3290587e21346a501faf91f41a39d40a4e6c82231d0369b3509518087018b106bb07a8048c50302047c435bb500673065023016b8de8bb55946ef1b4ca0b251572eb478b6dbf48f8866548e362c49e839fad407e8a923eab85ed8c90e852a0224dde0023100ebeafa94ea05cdf94248615a3d60553c089d0861d32070261dcaad9a7735cb333b68c09565b9b8686c21dfca363f33d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b1e2b20f081f544e3c713e8c933612bf21af1cd7a1c5a8294894aa42c1b5a81f62eb807b4bb2d8152ba3ea67afcb44c02300a176f69bc1ea3072c7e1f7499bce49c2fb9c36335ef6f7493da9bcb0e6ecc6d9e9eb22a8052bd71f7a292f696269b240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023038d76760af38b489a32047ed91a3b99efd489defe741f2e68504823996b80eff9df13b35034d58d6a1e6b16111a758950230295f453f981aea3e7856f39bdc4b6972ab444493b6bebf731e098a95b72ab7811ffbaccbc9e7f65b0fa4481f4221e6050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8226ceaeafb0a13093633fa1fbd336c41bb085756c671b51ad2491efeb7a861616f96d56f0e5cb77fe85222f10c168002301dc7e48795b6d22bfc982274537e380dbb2d68203ae6fa70416d877a92203221a02445a210b06dfcb06693d9ec46b5420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303ab70d72a0eaed3d1819e1e4824eab6b19f35d2e7c89592e75f34368e37766179eea9f115d6d18c77c5bddbc9cd15b190230529d5bf3f82c78b6a89cf31832c860ec3c0c376760fc222e680daf99756aa9171d172a2a9a152b1e68ed1dc068e57dad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306476ed1d83850aeaad39bb850d1ec3da4ebbd8da6b8e93d9a85fdc4ccf71c41f708934696c6fe7ede072d970542bfa320230144636b8375b368ae2086d4c1fba3bdd1e71ffb1a92ed30e5361529a85b5b760395e94248df5f7226a8c58f29a1fac5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d62a5229762fb7c5b0c764f15a0dac55c47c01c6bb3dc9467a2e5b1b0fce87f1c97fb409c8383ee20085887d27016c30230759967b02f821e6775bb273e5ea0e1ee034f3de59110e33461f8d752605939032202b41b130f1cee3f5ba98e42ad87890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230715442714d917a7a75769984fc18cd011ad08cb90dfc56d87a33210a6e21a87d4af6b3f60bbed3823b9da5fb7a36414d023100e4a80e9530c29aa1d2bca35de93b69cb70c90558dd94ead9b9c128a83a557917eba0f32c92d96a9eb5d3696b5d8dc3f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c20f5287c69622938217b801b5172ad1e982f6ac2a9f8b792c945da481f359dc2a3f5ea39ed07de39c4c81b315aa1b5023100ceac6f7331a67b85c41b541a48057aa5ac66a59cc732ffbfa38598e820f9ba2a11bf2c3d5964ed238070be14c8201f740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230412e0645f4e644ece7168f24dd1669663ad266f4990b9a63be77716f4157d88f65dd90447256b86d54cdbdcada25695a0230029cd296204849b87b8c2eeed5f37d48c2b2a78ffd349bc50fc79a0d52bc1e79f93017b30a3229827ab10995e539c11f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023027ba4474a634f5eea4062b865d08d7a928750e2797ed1dafc685e2464fffc7e65fa6879fd41f965ec133e0c9af464f2f0230790d4223f87ac5168ce5891879626a5b644d85a3702296dbbb3693a40c4e1f18e071cf1c68eacd495d707a1855c8c74b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d75067d655108e49f13df4913db1bc430acec8bb9a84b828609478e0c64c49ed85d617427fd1416628714a98d2cc604d02310090d06e52e6aa6b0d48bc9d7575a8c21e8229420520c67d099d909df6de5fa2a623c395478a6542751d373088f537f9cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ff3fb789c37c3a3b907da5874755fa14c636ed6b7e00b747a9f0aa922809d7052cc689bbe1d8f4121258f1339a1503102306d04a99a82f9dbbdf2c35621fee513e65b12644d47b3d0653daa86b5ec3c62de16da99cf772ac98a345a221a976da6da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100844b6bdbfc24ff2373c91535a889f563fa702a6fa8258d0e4388ecef8d48248f9c95a8bb8fd5fe08363dab6e128446bf02306d3116aa911e366609d8005870f9380cf097eb036c837920871ca0c68406493bcef96603c81db1bbd78c844e04d4ee900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305898576a52f7cdcfd916aebb30cb661383aa4a6e10267e3d7f019c3f4b772f63146761040195980f131bee4943eb61f2023100a368f0502bfebcd5eaf0588c20c99d95b3e5ee3e58a2347b6f19a47d0eb117338be5c3cb095f01ce1b32449f4bb592770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b345cc6b467714307f6dfe9d61f01608124a6974794ef5e95a8f491b70fecd05313c40c3d51feff8bf157f6db5a3baba0230437ea36a83c0d52379a5a5627971b1f42bf1c6098c0f36c9fd3c7e058131bec67fa3bdb093cb6d4c6f7051e61efbd3ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013526077f4088bd97b9e144c188732719ecc3b58c309d56561080412fb53a0a3e89937bab0419170d5169a552a53ed06023100ebebc9b32fd9c7a2bd1755461cc0a23d6c7c9f61bedb37cdd6e9f6d62fd8437e7e99663187a1e7c1bdefc75bb800a91a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100879599639c22ef1995248701b8ffcf9c820e87b556f125da836c84829e4552a406855737a91f4e3388b623f31629a5a302300acf8b212d458049b99a3b7239d6a2998543986fbc8a1a96a1f323fc908d3a74557efa7fedc9d9daace024b67bf58edb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045e87c840a46ea91a6ae915966c062b2c1c37bf375348c6145a1722b7e1da6afc117c9b8ced11250fb3b8eef1d42987b023021aa7d2a125675487c9ee437025994565dec3276db959f817e79a9f16f6186654afed0bd0071988606e44105b597bf9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f58b788e8ec44292dfe297574c0a5ce478e515b6e81d52ea5ebf670b9f813ecc2edb41affed019fa43c81847196fb1b902300f768ba2a7338fb83d12500e4d446fd76ab7e1893e5a87527aef792f5775cbf2b765af8182ce34456a1bb38a4351c6190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a62b13c3b51ed78efb4d10bd5b738e4752bf2ca34ce526e0d2c7e9ad8c6d733d80e41628dfda794aa02c8cbfc0d8b9ff02300e822bac526a0709dfa44c3d902973fd963e00a2e87816b38e4921fb4d7e646e8d5022870ccfeb4180b6f8fb438dee040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a1a4ef0e9d5831acaffbb9bbece16602dc743efb0a0a9b8ba359114bf50080b0fe88313908a3ba1c6764c8d9f2a7fcd023063e51da6735fa70c33cc9c9d8578556272b0e58d1b2628c9e429a33dc9202babec89a863b50d494669fba8a8b37f9c5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a5785071d70eb7bafca2eef49d37a0b703715f65f10f7db6b0899e4753fba113262d2edd65895379eb2abcbd6032d26023100bca3bcd83c84e6dbcf5b818a4becdb22eb00c221f58724e6eb2c3195bab1a6865d773a756d3fc3550a9b2c909b72ac0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306afa3a82a178b446965b49c9761f5da33d14573afd075faaf33818d0b3d051061fda6f009ab11456c0128f1c43d751df023010118fe6828965957b5fe358ab0e63a3f8e52d6e7f36d1cfa9863c2ec25c0e1bd21baea7627b55a27722554e9e90c13f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a27e6cb1fe454716dfbb16788eeaf95bf39cd257ecaed98409f511d75b10b32a3c8651889c9f64ed67c63fa681a220b02307da56d1f3d00e5d34ac583a02e6ffd85da169b6641cc34b3c9ca0c00dbc8186db024074c6203e2d726e06f19356e5db30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec2f0dbceb9f8333a95f631ae704dd345865f7025a4d185f90515f3da30a62a2efa3d24cdd34bdb1f8c3f6903d6552330230763d6ea1d80d00750ab3da0e64b39d2956b6a9dc719b8f13fd6cda93da9404af8fcf91dae8d44db51b8eae7da8922bbf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3c0b54795b9486d9923faab35b996b995a02754fc1bf03433a6446520266ba6f31f17dcc891fa14e301981a7d5131f402300df003c7d68dc51a1178aceed077477ca48fdb0da8715f1d655390ac5d091a209638bf1caa0b1b131cba1194eb51c7ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bb5884b98cce570b7427b0dd8789ec4853f18b2178f23fb05e0de6d18408d188ffb1b41071fb6cd3e97504ced2f7b509023024e90836226bc06a3716994b1f20d735cdf671ea7adb7fa02290ad841ba476a7f840c91760bd06caea612bbf874b8a690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0641c6ba355cdd82063ce964bb733a6ed6def4c18e1fdcf7c40499ab73fe151a3a324b47b665a9fcbfa41b177fb961902307906153712b801a3e33059567eace12ba55004d5f05f21ba99a1bc4abcc6830f3655985c78f4a0b37c35d18b667f1e110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023019aea02006b235bcf70b1b7a0446469fa7875951241613b72728ae6572582009114393c1531aa40c44f3c836d634201e0230300e684854a2c04b7936b6e76a2ffb1147f0d730f2dca0822e1b927f69c53250f736bff9577bf69e66c76e2083ce00350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ffd05bdc871157ad5819e76e031b01a8f377e04438d1c4d6d6ca502102eaeaeda0c15f70291ed98bb64fe191393bacd0230239eef93800dc6099aeda732a74a24812dec447ff92f77afc48d4b0e350a35671cd92434593c955203d507bc90519c6a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad9ac1827fa804230f303f32b9a060bd8806c193320e76e29e9f7f1c45e468bc5dcc87aea1de3f05c6cf22bb34703197023029026ced149312d3be5b76cbe1adccdf8f11ed3f4b448da970a9c481a6629f23966b1bd24489a7db08282d87c82b2c5c0302047c435bb500683066023100a6b7620b44f9a7f17fcc0e8961c7dd7ca7b84e0489ce47bd366e69796795959e292b348e973c74da81400a6392bc96b7023100afd2bdd1036d7477c0571b37de56eadd4b7661c06d07de40857a808d378f92f36c166f387134fd9fb6e6798161efcf1b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f1979083964da07d9fcb9f8e39fb1c3799640d119939178a0f4884e010e14083b3d228f2e2bb1631af8061c73f2e7e6023100b2e0ebc604872aadb98703ac59bf6e3e9c349f8252c63197673c78b7fc55bcc9878642a514e45f228106b8d935b76f630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301f7144345934ef2a8d204ac7f2c3953152746c58368a129b2dcbe18b2d3145f7bb991c4045b73b8b17ef2fcd800c4e9f023100e17227e55de59efc4f3c19f627048aed6ff79f837c7ec10bf0237e1571d4159000fba17e8c00ed54d53d64e5907297040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009be6bbe1ae6af91cbce51d50d7b8012ac44745ee62e2bb70ac991b59e39ecc21871fa8bb5019f4084c607720a13c7780231008797ae43796e73be5d8d2c9dff1639029f439d599de9490031574fefaee34409945af78a347dbac0c3347376518843ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230775aa622f845dd7bd4c849d8a56e6768f3d3cc930475feff0ce9ddf9a3ac4df2741dc73a52c8ec65edc588bb5fa36fc1023045d6962ba38884510476ad491e547282786bcfaf1f975a55e3be74bd7b13c6a505c062cf1dd19a5a00a8359f55bcefe80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303d021f679d676343deb7a2a971901eb221f25974fb1eced6ff63ec05f209d9f6b8d467bcc8b7fb08135fbde9614040da023100969e59aef92de68d34cd0ba0a5ac0eb9bcccc912a95cf09924abe86daf6d6ab3b5d18ce6be2452d58a238ce16149c9430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f8c56adccd09d3debf546e04b1fd8a8eeae9b07e65fc6b7ec481d8ebc95f82270f87cafce58d468304d48b3cbe3c261d02306e4f0d63f4a06752e7d16868d8a1dbb1796ff0b2d40d9c14473a993484a98f29df16c575284509e39d71fc6617091cd80302047c435bb500663064023063eb8ede3682db8166a4ed5abf682676894015a0298ec6e5339d2d121fec01243ae1302520731b2cecfd94ef5a7c488402304f9d64c2703f676ba36ee822160989c774138c16d23bf14c027d555c9c0f75783f83ce03840c1ac4dcbe122de5a614d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230645f769243da2ea655021edd2c292e4d4538d1f97906c88149a53f56bedc7bd4b921e05452dab8e32b802cbbb4a6c009023039cb2a47d553d392f2ea363b1d395468da4b756daf17f0073e7fcab8a0200a386c4e65cce05891ef5fc17016b7051f680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302018147eb5c138164573606d074c8bf7c4b0684f982d697d0c863f2453fe7d5446a797ef09c3f566e549dce93ff81326023002c88a97a47e8858f82dc47f612c5babedb047d39572228f25c156672e3190bc1288a51bf52bba5ff2645466d25e013c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100813a8103d6cd54f4f2725af5a7cf3502f7319fa4efb74b3bd8d9afc9fa36f8fc1327cbdf0e36681d1a8d73f318ca7f5a023040d7445b9ade4cd1dc37fc5c0f1acc017b8b6647dd65b9f1a990912861eba80d818fa47f62f42ada9191aaf81fe623060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f227b8adef8aebe2aba3ecf78e6f2b0e069ca22ff8cf44e9c66387355f50a5a369c6766eea7adb42e1b99e8f0eeeb7920230425b5fcc629d55035aa993168ab3cb1d26434ca375f7a86510c34a365ac757550595378743cef59c6d3073cf945dd47d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e94ae39f8286abf915da918dd33134535e815d2c6df982c41b6de91f2c96dc84a17a6793ff3eb9ee0e1bed81bc7e44202305705c2ebdbcfd1ba0e75f7c152b1c83ff112784aee28c5add903e95a9a42f7b8589ef1888508bc687739f91e1fa4fbc40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c94f4c56fa2fe9e3149e67efb593f7865e191e1938f81cec4046b6e0f33b1b5dbb820736467a157e96e18fc1d5b7543023100a23f1ad744cc4cc3116ba2f3fdfdaf90f783c2d6627f6c014cb5c7d36acd7dae5f0960f013475fc633735fa0b2180c0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ec712d887d2227a5d46023fe79b37b15e1b0c4bf43becdef3acc2ffdfdb2d662e4909e6066506095a8d0b6f50a1a43902300729bde734eb498517b6792b5765806db9a1382ab4b29750a723df59ce92519ba0eebdc45d7e7b8f80b7c10e34e52ec60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db76d726e0e415bc20bd64c67405c0195559a9ca050ca28de24d4dc08aca554757717d3ddd80b14a4e4b78611687eae502307e7f5c710ccd5c5197a4638af5a2f5568bb777033db97db9327bfc5c680d26ac94eb42e93818cd4de3b6f9bdae3a8eba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008a98dbc62fe94399925061b9e7929a4c74940f19bc4a02be7089d0c53e575c0af2f26b15a2c4b6f53d44344990c48d4102301e6936838ac37279efea284c0d5a93ec68683b24d0f832f2a1d97980bf2d9539ac2bacc543e02173c2595266cc23f4f00302047c435bb500663064023069a4c8ae3f847ee6812600c76843d2f84224ae9f4da0d738db28626c1c341d8252f8d0f4e633464eedef2c44e801a86202304950d06d7b7eec5c12366aa53203e2860592f797348c0ad362e4e13181b71700c664c5d7b456d5ee64b6a1783b0254f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303c25aacf1c9d4760589bba076bb2b299a6f77add7599e92dde9299daf03bb4b0e1281a3d1233e4fd794d7498dbfbbb560230024802386f66401434fd9343d0231287aac3fd86080e92cb7ece4bdd84c4384752af1dd915f0ca0eca82fd89af20d3a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023067094b628ae8390a34ec6963f6421b8ab2535a4a92aa7a5b8d89f3124c3d701a389e1ef068c5981db185c57db28f10c50230498331152d67536abdfa2be03e6195cd261e2aad665744dc96db21bb31d29376f3069780a101dd52db5f094261ff3d940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023005e10bf64f50cafa6f395e5febf577251bc93aac35a0b2711977afe89c6d3b2af13bb9bffc213b65a9d8ca24c5483a0d023100a5ef8e8c3b96385c959012664683baadcc61dccbb7bf57446a2fe4fdcb38f7a724110815df7a4e7d075ac3419afb81c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305198fc6608116ff6626024e1a7d4194405b8af26b36b807cf0b9aba3104273aa32e863685c2a174c8013b5cb53724ef90230583591d75fa881d233fb4aa82994a1d5e6589391381a9cc123ede0d0b6ed2790700edf72de8cbf89265a52b59ebf1de00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ceaec55725576a5d5a7accafcdd39c6fb97dac0c68d0e1ca27bf510ba35fd8c6377fe865e8cdf1cdf24aa9516dcde2d102307a39768872b8f2979f736e9903d901cd445a65da46d43d24962196554e983ebace8f4d8cde1d46ec124ac046b42960e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ddb7d202073f8e5d42086cdacdad80f392a67e61d96f35222df8fb33185efd02833f3af3b30a435ca3d6a419ce75d1c023034e82458d867742b5c42aa177429a35c962a37834d33c226d59653f1912a7e50a3f9304b914f6b4e3248deb445f678750302047c435bb50067306502305d7f08c10a87eb998cf71d6e54017b7a99c1a74861a165e704756ed4f1322eba45faa3d70e0f979315ace384faabd2ee023100836189f1c2e90328712dc7e5ff41619c44afce777308a8f893199fcd380ef6563bdad4dffaccf654d475fd97984c6a070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3df8b92c82cc4cc940efa7f4a81c6753e8e8fbca6c1aeae033043986ea80ce175327c2f28630f9498b397318fbe1727023100cee49236801dad40f79bf402a702cdf4f9dde1105f844087f792543d3fd5de13aa3c2a8c55ae3095ded1dd86267c79c90302047c435bb500673065023038b3ed76aa0783ea8baee3c0df5348a0a7cc61dd84b266da969213382365c7b9e87159172137c3278f3e4725ba3ed2aa0231008bf93fea0e4d6c35e7ae44129f1d5bf4187c7f788829c5d61470a0811a060a814ba3fad38134b26907f011aea3d17f970302047c435bb5006630640230101f8f9a11655bd7059b19e50443d6b72000f69015c73c1a3fe704e46351844c13700c51a9da8e0733ee42bdf3fb1f4e023033316a8a74f5a587bd3923f9f97ef42cb1b199d0be17b657ee1dcaaf71d5d0f3b02618ca0e29e2abb0b764ce4b4e8a450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a37526413be2832529bfa5c386fbe14c89da823453a4a474582043cc014e258b8d5f41315e2871cce937ae5ac5adc95e0231008ac432155e2403452021bccae9ecf449ee90b1fd8e275c704d270872f2b461e6875d63d58e4e52a0f2f969618c7df53e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ca65d810ed3e88d363d389c644490ee109a6b9ca389159e9e5ac00805315fa64894d083b907bbdb23a73264316ea2654023034dd9bfba8a825647a2203c177fa9ee790e25ade0f2811054f32a0ae44d334d0bed5b4123bcaad6ec83fb34761ee26680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e9ee607aa955c3e442611b4316d6adf2d1e35cc1e2ab23ce9e383a11088db2d836fbc26d1933c527c8c8a462cf3680d023100aa1a1319cb360e97e6711ea70c00d1e2bbd37d9c1bbd45c0484533161bf9af87ecc29983284c932182d09871a777fe4e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e937b51635040dec1658efb19d9d03aaafe7431a4d9393636a6adf4acc8171c4f9c846e8310ad28ca8dab761a1f75c002301b8821288c337e8e51946da23befbbf454110a8c5e3cd7cc675629d0bfd583115fdd2e1907f67769f1125ef5998177c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f088a66b736f7a8d66967f0a99f0071c33adc91857add9d70353fc9581075b1c8e2330d05fdceb2edd058ee65cedb881023100c52008ed52563ac7ca542f8038b670893013512f5bee0877a424bccbcc645d718bcd16e245d56f89eacdfe114cfa3f900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023031ebfb3fa3dd281f067003e60b3442aebe203f56385b69bdecfdd91c7a2b65dabcb3e3a325c63bf4a278c94ed600b9160231009ff181c901259b75d62001819d5d7350b65f46ee0964feafce76c3e6c784ee2a4378016483f2146c5b41b977da62efb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004428c8d45de2529f69cdc5f1e34967164dc29110a220809a170565abcad427c8d5d1cff313ba1ab3d9c005567f6fb68023062b7798930f0f14632b04c87d4764974cd65a5c4b10c387301414451f46bcbc20a26b54aa25809c4730ce270efa0dc700302047c435bb50066306402300414a6e8027710826bb8630acfa7d8399bb394d6c983fc72c19574a5d8e50e2ac80b7b4d7c7c7b07476fd35ff72ba1ea023023060f49401aeee2f5d0c8a3506533fb9b2999597449cd3ec6204ab128c0c57f04fbd7f0d2bea10ad03dee2fbf6f4bcf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fcde24076f34b68bc3af55ea0c6c745cd68d88ffc4f99817a9ed2e5b31e17f428660d42a0444fb68514400eaeaf56a3f02307eae0da319e9fc5d04ee992cd4a44ca13cee5326a38033f277d2420328e526061dfba18129d06b44d266e540ce05c65f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082e9cb422e4f7261fea86810e47098c7d407723490c2240f9e345e2d3e5f07e781f12eee68dbe68d2bf7adcff0f63f07023032182b2ab5c8e5058345d384d1d29bdcb4c072508ef480999b2efc1c41101ba8a49727430a6c19447a2c9fa6b71078d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c668d18e28d8dd9956c7c16083e2226b2f17b8a0266a43c6c60e6210ee34ec0b8da6961df2dc33009a99bb6efa3e383023003c7159cb44767080b44080c54e1f22453bbe9a9ef475f9464c799bef0e4435088d3f6023ede6ddd7490c70f71323f1c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf1bb14058638491930ba57405d098190842421c8bcf3518013415b3f5a96776afc492cbbb0702752cb5fb3e32632e890230521154a4fad3a36d6fd5504a97cd26e9e105ed384eaa510ada454d1a04df2659c823ae95622890bb624802e936e25b8b0302047c435bb50068306602310080792d581eca52ae26e092bc23a6a5da01f1ad8b2ae8e04fb3b36aca101a0b10bd98a5f4459a097aea69918d37f4952f02310081699a1f8ee994a14672fd0d38b5845fdd5d5590a43d04569bf79a890fdf32804b4532e9ee9a99fa89fa44e0ab34de410302047c435bb500673065023100da868d849163bfaf3a61f96d19db1aafca3d8c9ff5bd916286ee454f187a9251f7a1e20b6fc0ebebaa09bdff12fcda680230684b36906a6c8b00a30deb440f74e456fc9689b4e37bb33f923cefb2531e08bc252c3d6e51d91fedac394dd9b9e51b2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060e113b426546b7e02e0d7b39b745c73117e2823bb42b7d60037e74bb4a5da0ee7ab2cc704710b4df5efd62b1f3c291b023041e34ebffbb182ae4550dca0ff4efcd4c83467952130f505d3f95e36a32813c0c18e54634c1cf3deb652588f092805cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7704a97374b47560183c4fa3c0c4065329ac9dce1a290f61f5b50283200f18ab008a3589a2eee8282e386819fe8157c023100d6e155d7023892893bd34b2b68f961b6e42cdfd4b2965866ddfbd375b28b5baddfe20b950a3b21addd08e25945f4019a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065653c1706354cfaef158588f0dab21a159e898c6b37f53eee4ec5dc85e6781f8fe76d416184551999fdd54a801014d0023100cfd38bd2d2a601311c864cbec0167b1cf4c06b753d28c7cd4fcdb4bb6dd43b8fae5d5c13a038f24e3fa4d1c3e61ab0510302047c435bb500673065023100e8e5a8dbb32a5c34e7d12d40c5dbe71a94b0858b4878b73f230bcc9a358c99343d23f86ad2a0c992fa09f43db7142708023027c6c59ed6fda866275cefeffbeba20b8f1bb16ebff2682e1e3f1b7846fc2cc8281989a524d55175029d6015fb4647ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd37b3ee55ce9f0618776bfd0d91feac382972b50030e8ce2112066394939028564a8658d47cb8547d88e17b5d3f8ae002304bf7b4a006cdc63378a72b70a96927bea08ac78cae901e2bbd540962083bd84f8a0225e32ed6722bb438daa4d1cfe6940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100856dcf7d3cd2536491d68d919fab1d07d31d8577202272bd443a7048b06a6744ae70d5694fef01d1a4f108ebf01fa64a023100c97e0734f0e690dee8748e415f377c0d8742131f366b89c9b5d6ffbac9d672c8d805ae5e03f77d0c9fb7fa6aa9c628690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067f6dfa20dee349d64b9f77b75394c2c4e81f42f96a45bdd8b4c01932528958065cd89628cf06397a63ba48d54d27b4802310080bcb902ef879800df827c9938c1d10fbed5de770696a7ad6d187ee8b81f1cf1779cfec4a34d56908d6eb44ed9266dd70302047c435bb50067306502306e199990832596694eb3be8536decd06580ed55f2c115119e7375c3ec3d11aaf80b11bf974020793bcf31a7633a5b14e0231009318ac8e4c838075e9ff3fd18c2d287a4c5dd225b41147297a26ef21d18348035e0cd9603eb199020497839676f78e100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e14ed9f2dbf878126038a583e9f6c0ef67558aeb40e2b0e08cfb8e0c93551bdfadd574fc5b6a9f739fae6ab7e749f258023100aa2c2281683025935d297e926a3d174f620f713fd4d3adc8b035c4104e7438fae8968e0df553614e64db535feeea48dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008f8d8a98204ec3acfb18e61ab8135ff8306b1f9390352689b3cbf5d8c86a809b23196d1dbee0a3e753a5d0456f7e2f210230049e760cd0c0345b687b65d35030f22deb7f57f3460ca03f593dff715c13c2be74c3d8ac9b3ce0dc31b3d09f7b58e0c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023063b8e69dbd63460cf7f5c99280f06c2234c2b033b95f81b71deb05a162c418dd320115f35e2d8cb59db3fff0b185b5f602300663862b5024b2627c77af9e4c13081d6b1bded458029bcf0f9ed60a0e0a49cd344597f5e2d60227fe3430e75f1ebea60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304fc3c7c59037d51f23cd03a8c3559641f6be05315df33c6c804e689848974efeb85388cb5d21f01105fa0271093c29c2023018649065123350d5e286d97f248feed80465cf34aeb2dd3aab9cf7cd047510bb20608114c620bc0789038789a5a211d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310094ff754e69b9c06e09384a53587f9833d209a48e53255b91c19b983f265a57c761f1a28321b880e3f574c6d5dee88bc90230631577329c9af55bd361034d2b542ba6edea0a99a93e73f55ce074911c4222930601366e847a1bfab1912a7563e73ae50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023050c151c1919d71bc03e3ee74bf0934fcc198347da7ceef36c4f9b181e24fcacfde1c7bda2bc13a2a399c4c8f5b3d6a8502303fe88e3d6e46aaf5cb65ad19328352de18d7395e773807024dce9b88220cdbad318bfc74241014eaf8d2d39537d3192d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100be2c625ff3f51ff74a03763e67748b989646449f57d2d31d047d41d64c183cd5bd1b47962c6ac24e586b7a266acdadcb02301c5c1bfc5029dc849b4bd86891d6eb5435aa71991f55a422b1c7381101752fccf7329e13267d55fd5b9a0bba4caa32700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230362a160a80b4759b1c5b6fd5d951008deef57d1aceddfc0788913cf8dc3d7290ea03b035a4b6d4c302dc591db45a970b023100a3d21d75f2cc2115efec36e11c37a352055a39a34d043464e330337ae4e9b871dd18faf5114e511bd0f18d5164c61dc30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100883142be34e6e5a4ef5ed7e8d7f9df372efc26de6b0b88967b40288ae104cc5de08ee81f4848900644c575e961bd11f6023009fef70c0d2b47ab0a076e47c5c0f54b1eb85965f548e10fefb322992bdb92b45cda1ddcd140b54e5b63c665a7bb13750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230512df9851dae2d90c445738cf8a576a0341046a56de33ceb0802ab5b0422a4521dc1648443d60695067f80984aff4402023100cf15fec413481dc77a3c4838b30eca15caae2b3df97b7b71ba5e08b49882ef89ef04673e5e6935f1c89c0a12b89718200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008656bda24c2524544e347b53b22f99dcf7bf43df42eecf2d43a8add2f045f70ebfc5f7a8d9eec763d2c05ec66201167023014504261bf66cf03aa165a4310b805f164e4a8221c9b5c5c55799a21a853c4424e72fd9366112ea37c18c1451da956040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa72a94b5c3044c4afe308821169423b7645ae08f315090c82bbfb23868ecd61a2969c7b7c72d5bda7f049568f47be08023100d607a91d642db113cd6c5f0d8e4a76e1af22f46d79abced0791e4f973a9229737dd318b9142c5377944489ca36798f330302047c435bb500673065023100fefce81303ee2acc8ed26c6320db70565b1ed538d86b84a13ab95559dff6948763b948be40f34cbff7529396ba5b043f0230640a63229bca8c8bb94150cde30496032f144ca1be8e49625333a88f287f3daa53d49a151941d409eb912d9a080d83b40302047c435bb500673065023079e7d7675ec3d4313032307d267e698340552ec1e40c1fc887a98e071b25c0a869e0e91930f128669a31d3234bc01e9002310081575e109a87aa9af3adcb0658c9bead2a595bab8f9fbb6b72762aeb413e6310c5ee352c85787d5be0084516f73364bd0302047c435bb50066306402302b17e8ab0abca8c1f9fd702c2a4dd1ea5fca93d0b9b22a9091348e2fa467554386bdf13674b908642f1de72cc211b5820230561b5d6542437523c5181d467a9988a77256bb9f64c80582ba172012e8180f75942aa66ab22f0d9a07f62d988fdc89c70302047c435bb5006830660231008d450313324eefd9b790ad2c2aab80b1812b841332fd47e5532a801b1baf1ff956f19c143be6ffcdd4a72a7643b51e69023100b26b3cd19db5a80f56b77464f64bd57a9b9de414b71869f886755f82c76260f01aff7896a496e7ab6990130e4a0f87ea0302047c435bb500683066023100c2a5b90a61506794a11def030f36fd50fe8f7db47bfc525cf74cedafeaf232e399fadbca6c24dd09f96f1455c842d7a6023100ee7dbcb23d8f47a69e7d4c5808b9bf58ff1c1ab3d23e1f3a67b9fc0e65a1abbdd1e36824fd3ffb0e1a43e1a983ae29720302047c435bb5006730650231009ac388257ea4fefdb50279cb6f6533993d1a5ed9d8dd65b807888c04cbf1f58215e2ad4ba23b9c2cd8d7fa611a124ab8023021ab91327284a8e7f5913b5c266cdff2175f1d368acbc50cd1819668820ebfb3820173fb03391e9d72f332b8033626870302047c435bb500673065023100ace31561fa09bfdf89c07bacf93be1ad483d3669d450760328bfcc5a5932e1d5a8349ebe6550d62c93622083664c7c7c023006c787c4c148213a73c5aa428c254284cadd4e6b22d669c6481c1b514c2783ddc41eb8ccbd65857b0b5aba300f83f1a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efd42fa21e87851cf9fb51c17ea5c15ab000ef2894c55a69a6e3c0f1007eece03a2fb75bec68dc44ee76a0194b12ac2d023076b04bd3e18730b5262f7949789946b9c57ffc5327f87f82ff5dd66bb4a9581f39448c3efcb356930ee18852146b87d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100883f782636e0680a363262057777adee2861828e39d08fc438226aee496c44d85fc65b5d12f9f3b4c51743db5488d7c3023027c2b5a837a891c24e6dbddaf0e7efe3ce6b8bb421dd79bebeb67694cae8d609016115ee070ecc768bde41475ff0a0680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230374dbff1b50941b51d83d60f0813c038609f44470ac3e3d28d76dc8cf459078933f7989067946c960ee237f84b01a384023028b31c8a21c30950aa9ed7dcb453af20ad7365371a6181f346e4c712121f94ab891f09e00ab66ac2df8473668f04b9520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306df74ad48bc450aabe3099f53e2dbe02e04cd79a5194a2c3e61afc3ef24b140cc90c7a2456c3acdef11b32e38b710c3b02301603a5c65b20592f9ec90a5bd55826fb1bf84fff5785e68df93e78af3af6d3b3235344a4d5d44af53fc3843cc9f5f3230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100db82856198b90d089d989e2fba721a12cbced47f772e592931358ed3a767bef1ceeeac92fbeea5deb17ce8829a360cf0023100e5e3ab5b4fd081b0b4ecec9c79fda78e2728cb38d3cc34cf85055c2bc594d3b3c84c87ea15a232664462a78a0fba6a530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305d404dd416d8b96f0e41c526d1fe568cfaf28333f56e5b8d3c1e65ea0f6a7be51b74d5f3285f6621fcb5a32ca3319dc8023100a761115fd9e90c2787c23ba96e64fa65f72c696dab76b9b117952318e1d30a74bb634f253d505e8a0431f0ea425dcb2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b5bab41c87a3c66806ca1c6ba2f9a6b556dbc29eb83ad40b4ff88c9bd7935f46a11d50285a8a743c4be677de2eefed0b023100f5c6cfe1bee3e22df66a02c86c3c76700b62d07737f2d15879580909ddf3005d15bc89aa8bbe89c2ad9bbdc1d70e7a230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e558b1871dcd039fcc56d691799116949431086a77814ba06f151f74cb233ae10126baff2845ecf8fa46bd296b44178023100dc176e485287d56d49eea228d809abb8a479ddcf4691a84671949591f0281a53e90968703be91a631280f4c5b62929140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7541e613bbc86762be6b172420796cffc8cfa538cf56d3f40304be661dccc41fe0a4263dbad1ad827dbfdc39cf6f2850230578aa91cdc2c0d3504851b96c6cb1d144c06f0712ce86a936089fd140e3c0cdd4f3d3265e150c3490632e1bf02a01eb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075f4813cb58a6d88becd60da2cf1719160c667f39efa67cd326547c42d4e24adf8de89b9d785e6fae76825a8e1473db1023100d85f2d15e0eb937134a3e17910d07a62288df653a00b21d38da9a24f19df2b4a550ddcc87201f6934374668e7f9008610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f6b613d9cdb41febacbd57b489e04a096878d16ced36b9a1dc5035cfd86cf1238f7c3d36e24372f79f645267f0619e4702306676b174d4d0b3abbca0f684aa76b537958072d19dd5a53db87569442443daaf81c2e115f4d7f95c786211631e0522530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a65ec7b60d6b051dfbf4d56ccb906792306856e429cf924ef420f7495789acb8b9eaab3c095ee0a1fc54449de4bf2e2c023100e20ea2453635302cd0b71a79e740b637b15305554268404a56cafd2d02da7850befdfdb03751db8d598f718ef8d8f3040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023038b4dc4658d9baa2ca8f899e66d77d80bfca96d375e1ff2073c17d2e8a0a132d584f3d09d3671f30fec731474658e8ed02306dbbb504f2201b1f96577dfa5d6176130b8aee7b44081b85cc6edc59597dd0ab9d5ed9c159d1b3e708fd4fe2fc6d36dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307374689aa84b1c6892426849f1b74d803d21d57f0525000129f5917b6f00b60ef3aedbbaf6dfa66fcc9749bd1c5609f0023100f76586296f8849a37413312b2aa8385543802950ba58c1708a28e285923a7f9f0cab88649fb536f61f851e1754990ec50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100facc4c9ee36f22818099a6e75dbd406ed10744ca9c0115a42f55b925b393a0db5e728d96c15edf05bac4859adeb69d8e023100aa8c5dd5ad7b401e5f2e47ef87872fda084c43b19b28c725232902b718a232d41f4bab51ee910adc2549965832fd0bb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e952d8022a14f001e1d9c704e8debda5e3a8bf675678a0950686abd2d91f9d0c0e100a9aa93b781cf23aa086072d27a02303ada904ba838287a4313504f4cd476894afc2a6c19359fe6d87e38cd456fd3bc10a2d1046e666071347bba16d4a3b5e70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023022e46ae806f1acb80d11b1816694f0757eb5a16b444e66a79781cae5a78d2320fdb75f4ec56d0209e854756414b2c25f023100e49f81f64b0a1b012addc1375b38182840f0b6b959fe042b4e33c91f1a762b8174123d342e500c0d453be6147d739da60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300171330219cd4c8ba6e727ca689c0c830cd3ef6367049a414e19aa5898c9681630d9cc7639378c12738f5349cbe1a241023073b68dbb2d1c271a468bc1172368e485d30f79c8e43666016ed9908a1509760e3b453c668f8b992912a53a3b780dfe300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8e180887601fce3fea3a997193848caa7b7510c06a11961700837a083945672c32185a25e3abd8e398734e7a70c0f43023100f8d9d321bb441035f054c82afc3c91dbd8e5c903087c3fa46e9c58324e3e93ead8f4470e11179d0fe706849c7251ae130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304c2ef7baf62db7d5494022c3443e4e30d2d0f85fc4edfbcd36c7c00ce0dfce9b4e77ae77e73f20e76d23d56c49040c82023100842023930618b66d7a73f60403c210a054d071f2b3a67f666d3f7fc154750c99d4ade51bac1e2f1d9a505e185cb7e0650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c34fa7b3e3aba7a2b27139f4bf7c01eac5bb7f15af388f99e3f84e10dab75e571bb96f1d5d464fede9825316cd3452e9023025791108df4583799616dfb5480620e16fee4120043eb87d01a1a8c2fd8f2fab0aa61da1932f4116b3e5167085cf19800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3d5e29ac84f38026d4b78b491d17b24bd85f406a49b35bc9cfbcd885c209c033475d546dca10bb90e30b606cd43c1f3023100e2444a1ee66dd02941279677f20a4ca72fbc09f504c8ef2a537104059b3634cfcc3141b3455a3b40c0c8c9e75dca12a60302047c435bb500663064023025e2264ed8e246554f80bbac95c608a4a39b2bea184380ad82e1907f4247f1da9d723e0b6c83809f75c7ae3cd428e0d5023005c091c07d5b5ea1e8ea50f2ccc2c857fa78c178cee6e32a4d187e9f2fda8541e8b8c78e1de110e0dad0b10dc84705e60302047c435bb500683066023100d6f856d90aa816b1698002ecde727baad9aa91bd0acfad944fe41150de0766fc5fcbf759eba76069880aac5f8f703896023100c39bb6d6893832ed4916de5a9a58585d21475d195325286f3cf581441a976089ff987164135208bdefffd883a4424e830302047c435bb500683066023100f5ae646634fbd9ab7d8b117db663ea4b176938019270799707323049fa4f23ad6228af6950e4121ab8ed6391a0de0cce023100c91fca3187c2fb844e88410575390966d0e7928e2f79e38bf9346884d66652143215fbb0da161904c5ac0eef76ad54000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d61be502d076b6fcbf1ecc76cede8e9ca79ca55798db5d709783933b53de54b1b3333069f2043466a134a255fb3c928e023048dd79591598bddca25a49e57eaad900626cf36a9627bf838386cc80c18a3cd0905cb38e9173ca2d2557bca0b47a0e990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300b354fa1e2be82504b056ed3135540e408774dc22ca1aa948711c52042afe5ec50048861e5fa4124559fbbb75cf5702802310083b0002304a723c6ebaebf40950c8687770f344ccda7a13feeda470e42d96d81ff3ae707c89b50edbd455df37c7bfbcc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040321401a36ea6c5fb229ef00744a6a6ea02d22c35049633d9cfbb76a6fed1e33ca8291f4d6d511562091592d8726c51023100d307284e9fea0fd225f261790ce8569d457f0f03bc7aa4ab8e38c8e51d698e5c4f9289bb25c0004dc1f7159aad9e9b780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230566f86cd9e820c62d317d9c41f985b85f0d43cde31e6ad828fc0890b60a33f6dad040d360772e0ad0fa708af7ea7c2bc02305566ef64f759c4e6de39fd8fbda0717a96d629b1e04e49eebec7410fdd590d69e203aec8cbd8cb0a690232f8ec0462de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059d8cd415d515dda2837929ad39ee5a8a2b35408f164b1be9b0865b55d232d76b9e7ec5edf57c14ecbb258499a154561023100dea9df3a12955734431d3269a5039224adcd683c5c5c82c11df432c9039ee432bb22592a2458404614e26f90d36ca4ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ea1a6bd48e11c9c6e8dded47d3c6084f673a06d399af15c96d91329828f0cf774c5410df365c05c15e564973f84ae0a02305ee64343487125ebe2b5d535f9f9f65009b39edebf958be88b35639950c621d266edff201e014fbca82ca6748cfda4ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e0bb24cd5eef636b8b6bcb952bb73e00be22e2ba5fcf88cf31ec5f504c37fb29f697b9b91ec842047709a92df16db06023100bccb5396f8f8de659dff6912ef977b74e6b3a3444e2151a484167dc4429a657d2f8720d88f68115c2d233abef72ab6e70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100981edc28b906f53657c18e68854f34cfd648eeb3da17d3c6e9c98bd41dffb23fc9c443d401e67484a42484aec4977a710230525c4e13daf1da53700782ec5fc17b685cd3dfba981bacfd108e9e9e24bd5e34273504377a6a5e5ab97f87e79c9a0c720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5729e00d1e07bce071e3a060fc87a32003c06f52dec980682fd6967a231aa436fa07b1d77bd1fc87acf9515f7c8eafe023027836e2426882f56044b78bd4b2b4f8ac4db8c8c7464e3fc284f7ba8e691cc172b7c2b63b6e2ec96dfabc0034d353deb0302047c435bb500673065023100813674ffaecc3b672a1ea6116d24e70fb44d3068070407518b7ae34e17f56cfe2dd9d8488c1a4e84364367a1aa3a15c202302bdab733af58a8365d36bb6ff52068d1c6ae4451d1aff879b93421ab01a31c0f04883af4fa3f3ea941e57747a8c8adea0302047c435bb500663064023039ed21b35169ad82a6830e169b4c39cefb128c6ee716f0dfc514d5884aeb1cea3d447e5da1f65eaf4efbfbc54fdb5376023062e12d026fec9f56bae646dfb6ebf562f238d7d2f4a5020f4b03b24186ab1d8f460e9cc2ccb4f19d038f75cedc99e1360302047c435bb500683066023100fd98b477e010053f1ae6419bceed0c8157b5fcd2aba18d3ac22d5c9eb068d3bddc10e4ca12f15be852ccc0b3ad51696a023100a45539638e7b214dc2c437e85cc9b2c82c9f8048d53b6ee8ac15a91386738338127bff15d2e21f7749abc3932a4e2e0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e6ee6ba7249ba3d2ac09895a24e4f2c6dfa95064e7e39bc96beba99490dd200c30cd137a4cbe751eba3a035cf1ba6de023100b0c64cb2e2802f2b35b6e8524c27427bb3b632413d08ac467ce0ae4445dd89eaea38451b8f03ba50ef85d9bca919d78c0302047c435bb500673065023100aaaf09133598c0167fa756ed5367fa7a8d64d21ef044db485f65e650327bb9ee47ecdc2943593bd73cc030a2994ab4ad023011cb373f2219d15f5686206aa1b59c9a8f9d381920aa2fc0d891e32cca215879e7e2b0f6e4e97a1380a6cd48eef83efb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc1c6f2c098249496ed24edfcae7e3e745d90ffba3a2eaed07f8066f73056c05b128cd296bcf808ac8b2652978376778023031b91493fc8a63a9a9c475372832141ba179db9a468324e6fcc2adef70cd5494aa21666a9b7f5297e003d8a1f81dad850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008bc0eb77e968d82d0adcbb6106b363235f6ae86f23bd7f52622bced500f9b39a014f2b2aac94b2ee1aef2a8e353feec10231008e74b5cb063dbb74a40a61ccd218c99462c13234b4548726d77c1b8a3960377fa7ef5b5a7dd894c271010d5c6a309a390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023053e09254b424811a4582741fac75ec7b881659e094531353a5752d213d57c8d4446e01428fe4d0c887225dfb24b1c95f023076bc24a0168e6d6e142ff54ec71d410840a0c767ee4169156c886292318615d8ae0e0ff35cd1f1646401e62394234c7f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305473d547d63e666c53f59e0d9cf560c5e42e1b0f9c9bc86471c2730efe4c7a00be04f8451b8c8942f52863faf16c382f02304904916defa5395d38517c0f2268d958538356ed9e0afd1a9a699ee67db4509a4353057d8e584907a5f4aca51efe18480302047c435bb50067306502302a71edb9ae8e40478515fd91c6a6ca5afb7d09333f8fd4d5c366045fada2d40782515decc4d04526d21bd08a8abfcbfb023100f3cd2cc5fc3320277e09d5598e43b94df97fcd0a95ad0227711edba2d5deb4ed0a47e5a38a84d580a7c9af6acfea8db00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d2f4073012a09b583b12889e1566ec61dfd7091d269eae025de572af257bd018017e11a2969ef3d5a1028cffdde6060a023039535fdf9b02b042dbb6f00c78ee0180b6ae70fa833db47045a40b97df60b05b75773cc7e870d9a15a104d4ec7848bcf0302047c435bb50067306502300f4f63a8b121f4e98629294368691ae9f29f0d5e3973be6f37918e076706016ff58a351e2a37f425cce3ea88238a725f023100d4f0f16a34f6645fe6cdc56db1b81f683f60532bb10fad378ff0e539a3050fd64af71750ca72a9ad905e8aac134ddbf90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100abd8a4ae9e25a7a6ba8bfb690e164b77e2a9e6da6fc7723d3c41a8e0b5b2094468d4acda51f4d1a340c7c519c342f841023020f9b48bff2862a8cf0facf7507572707fa7f8a8ae5c460b0ab5bafaa681a40ebd853bb437ce228a7ddfe4118daba8070302047c435bb5006730650231008bd310ffdf8fcf74f1db9afc769a03fb44ceb33dd48fd2c0815923a83b3a83ab9f0743cf14a7bff168f1f4c605bdc09f02301704d459c95a37de3769c142548436321ea8da709a314034e759ba25c319b7d17041860f1118cf75e2b89f1b9f3bb2270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230533443114942f24841f0b418781afb5ebf26dfab09cdc5a37c84d498486ca897ee8e571d8d8953a4bcca7638963afec50231008bccc26c8f18b02c901a4c0483d5d740f02d7024de7d0a12c0c29c81b4d620713e9febc5062dc3f8cb4b7b9947bed5960302047c435bb500673065023079561c1d124e5d32914ba66c773ccf89d3766b6f5d95ee5a6b610a8352fccd9cf33635be68f3cab55eb50a1a634dbd3a023100f982045b865cbc15aca9469985ed89ab83a692e322480a4970411c5b2a84e67db53e0bbb6ff6b058735f9d56f27015f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302aa94ec6099173d5ea7c14915c917dfdfa3c2897f2096556729635173885f8d4f9135ca441994179380068c2f84ffaa9023100c02cfa989171b8f6bc194b411929c3d80f3969e96a1822e6f2bea4d57a611a4cfcc05c1c5c3b5c39e6857fac4dca04d00302047c435bb500683066023100cb0ce335222e42c2be78fb533c66c04a5d02c27d97f962a8a3fc00d051190334840e7090bd46a009abe6cb81d16df67f023100e129bd227a37f70f19355570f8306ce45742490e91cc63a4e2c025f69dbef94b40799c886ee221c5d6868624a2abc3480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e296d28b300c0f10031be87ddacf435487a4a033114bbc507e7e85349a36a5b25d92fd7744f58bfc3db56b300eef6da402310080d501c3058ae7659b00b1cbfb7f476350d9680c575ac8543fc925655bbb26ded20d4bae1525aa9fd60695b6a65289bb0302047c435bb50067306502306f37579ea135279bb08955a539f2ec8b058971de866fdda73b76cdb7e1147c960b1e122c0ca34904e1507024448296db0231009750a3aa8e891c99aa8c784c52c8de30c9dbce1fb7c601fd74f4d11e606cce9ec6ac04a961fb24de83b9e201bde3a75d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e8e487d726dec6d1ee3a21cb0f33cd01328a79574a4974f0431e12416101c48a9e30f814610a74695fc19cb566beda480230277bd6a08ca916d5be254ff03f1e0e2857f5ab6f6213e9a94da417375666ca7cb2e094ce9537c1d0195945be15aeae490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230799f28019daa83dac12ee2f8c94dcdd9b4e89fc76611f6b9bd69f942282a3abd6c114f5db0a95e551763ed90bbbadfec023100b0304251ea3412a4e70213c37849a962e78ee857a9cb868e3a7fefc979370b2b92b988e7ff7f41268cdd689ef7a9e2b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230725e5f321012788fab4d03dea43f1d6b9abf462eb39fdd3488dae6867d2b1c5108a786bc037bab92f179a2dffff129090231008e3293211101aa122ee6e5f58c8c1f3a00f1bd7b96a0519947c8facf5dcd9f563073ce07eb350fadd5239518ce800b440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd5ce010d26eff750e24890dcef66713d6f9bd238996029275da92e6ca892388920e46ef62ba5429911ca83c9dccd3d9023100e651f92881b0b4574f4135fba325bd26be8f90f3de7135abd04d32a258e8f7b5c8735f09e43a7d370361116eb0808ecd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dde2868eebdeb2f59f3906356606c7d85a69a6ed338d80af3e0bc1dec1a1bee2a6c360b444a78a68919a1bac67d175da023100ac26880a052efe3f1593995cbae224780bdc2ce507d3197e2f8db7feedd0c398f167b9ae1d0ac43ba0cf9b6a69eedbd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cf15f7d91d366efa14b15cfeb8c7b93e6ff0a6642939481ee3a91b9e76fe4b36639a55e215e39c5892a9e5c88a42e55602307c23b898a7a7c41fadcb2396ed582bfcdb4fcac53b8f02f42c5c72cb850c19b770798011373d0c48b5dcd69ad1ea4d370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023061e0b29c5b5d7e37163c1fc9b6c9d5c0f509e64ddf77565c5b7225dbf13e2ac9c5a07ad6804391fa0469ee1d74e7f6ce023002e70937445e3f79cf8be247e982100ca5afc1882d9602e3649b23aa1f7289cc83b97939f671803a01942088753a6d650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b078b5867d64e353410723dd5c661971be361f38ea93d153794e576d0c2219c9014771729f17645ba3d909fc1ce45b99023100e3fde6b92157c7738aab4a9872834428af616e06892202b06d2445526ce30ea45ed3daa3af8bd3ba134217c8d2ec3c7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c20fc6ef30102f39990f096f2ebe566eac0e0615ef7d8638dc7965acc5aeb9a38a32689734fedc9934498fadc7799a7a02307d98b9d094fee72f5600b51c4c70b22060380e27cb02289139e2491bf98945da51c915ba31695bc7bd5eef4265e681cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b91be588fb967952fe2e48f8702170688d3bd6f77db83f9fb0eb4c4e90c3619d0fae68b34385a07bb10151df8cb9bc0023038176e1574e69c0ed18aebc2f175ff4b84d70c9a78f69a34853941b59335bd0ebd70e27b393af2e06d8ddc7cfb2a80660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302b6da3348a4d4c0241a189a1b23003d622550792acd20b4d04536c1260b49db69db2405a9dc6c573cd28fe97b6eaff0f0231009cde6d99abe79b2882b170eee4aa8d158859ff05b0819314300672e430491c1fba8028589a08085b07749b83adce57700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f408f633b5f26d18aa419cc12f1f26c9565ccc2ca3eef050f315fbac64ec232bfde55b4c41fa4db51bb392faa8b5080b02304105343f318cd5cdaedd49099fdded09c232c0d244165630d8a38b804a7696a6aee813a3d63e7e382e8681b1973366970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008591060723c956d5e532b31aac5a97cafaebf7be66524359794320d9678e34eb72d1665dfc8ce7d9e2270b79ad7b126c023100b6e5fe2bdb226cd1e555b194a5cc15f1352ba172375c0562eb7a99e7e83a37295291c4c4c6fece6ac8d6d913d1d49cc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023038d257de324896517da5fa528e787de37e9183de5d4d6381d6e1adb4fbf53027c25b7817a814c17a512e80f8f3151db302301c469b1f1f4b4372485e0b34333c81626ec368233d8ed389ea5b32b383dfaddadcf04798e9c554c3355a4e9c9a4323eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014d779ca1d9a7d09aab161791d4d9419a16fc915aa1304bd7bd11942a3fccfa188e81e8a8412096ba10067d0317f231c02310098a2ad45f0162c79967222d978597e7dfdfe6a11ada62630c9b86db586843bb95caa42fd12cdd34f8591b40ce56d86f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b2e7dec6bea34599eb75177bd498625d9a2ec34ec3762722e0f0935da52465f35d40fd3c3a345782a5e1784720360a23023100a5ad567e37f4cb1321868f8b58c26862b474071706ea21c88c1fafff8fafb1813167d528d9d548eaec5c94c708c4293a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c33646601eb63a88e6448c6f2e16aeac7310ebdef8642287e8c0010ead56e00db0430b78e28b1c6145f150bacea5535d023002f2e575f8c5bbe7e47707b71e00e20e3270322204153c670482a90c10f3affece8f944f528be4149273802d655f5abd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300866adf12343af5d4c40c3264ce45034328d4379fa607794eccf9d3736f07098fa07ed031a8986ffb12f0d17d20646760230594cef6c74eb9cd32f898b63b12ee9bc2af768051da3209b875931b77a87364c35baf7cb55d9e73a40fe705120901fe00302047c435bb500683066023100824787cf54913f2810a83c9ef98fe46620f8e6a123e6f23a2c765defab64fd3ae64e85e4a52562a741fc392fc0f445ae023100f2c941bbd4dc0a6a3e7e7ca9d9775d6f9db78a68adb2d2191e44a70041a8b6a1592c1e9d6fedfd55d9157d2cbab1e81f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b3e2e9658726eaae926024c1390ea7ba227a4bd5c5b70f62f0c0eaf5e00053439273b7b2a2a191aa1d3b65c54ad721502306d8fd9e2a3152b88816679d887363f7a4963782868d902d661f660e9d0d1c9fcc33878073c4084b4698d1c68c62fdb920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c45f8f7a6b92f903371af75a1a4446c3fe6e203dc81f121eea4d0eb465c4dfa2446477da1846bf9b178d8888f4051c302310098fdddfb3d732e3e2b1a2b4dca9cb7f38244c647b4f338fe4e62a87a985a710c155f449e485d6e1745d463ce8e4bfd3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cf28a008a938d9adaf2905f60ccd8681f96de72f513e2ae947a25d95f61e589fa2b967dd6b23b941a625eab1fae4e3a0023100e34a5a5ed6575f6e6105396230581234c23c66997f53e5babadcebca07ddfd17ace7f448be4386025ee43fcc86a77f680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230156fe5019f02f4455a7465d224ed1fe0198349cbb973bd621c323847ce24fe3284142afb0b9f3c5241ffa535132ca317023100fb4f3c59904753d1d92113a23d989a805f5f9d8e41019c1d6acd880cb1fb501cb898f4437a6622bef87e4d16f09906220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091a26c1d42211c15f1498df28a1423587d85baeefea9366f576b889d638a0ca5eb4337a229461ceccf6c3b121d23ce58023100ab8056591f72ad23453fc6f0eb1c894706dfd71f86fd0a4ab77be2c128b6dca5319b972e1e27e455a51973313729eccb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a6151300c194fe018a7f12145192b3ad0ddc21d9a523b849bb73b15ad97505fa6e870479b260d01e6d1f53f17fa51070231008df8d199fad324182e94d2aadfe59c21a00b985df3c94bedbc2a64dfa36d49a9defe4bfdce9ff7e8abd26057c62db9740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080b7b6070587307a050a988e52ee1642cbafe54471b17b311cb34f06d82b9e7b6003710658654e47e8fc791a8e3f96160231009388938df9d55a463c57fa3009e9b6f156db3737385e33d74542119874956893b0898ab97d7c983d882ad2dad7f28c120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023021e49b392dff41d0df8ac15a811d98324442fa33e12af9c5ed8d428cbc8cef712f396252af240964d51710fc941e4a94023100cbf64a8b7ee240dbaacc42f631e6702cfb881a24abcd4938e0ddd85ae5775dd446e173c0b371df7f9d92032e591857190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c5be6d0bcd0bf7ce9bb5f598181f915240d5515655391fcb6bd0e41e7bde5de3a6a55c637b300b70b69a35cebf9e36e0230776f06dd6e68fade0c1247b1c73cf49bb043a4062b9001e393c99b4870c68f48b792c5e97d9ce6df3d5f7eebccc5a5e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b42a191001053389db7cc0ff3d0ee049c1040c56684a14098386bec26ca31b50a1b46507909189e46e00d45d75e13f4e02310083161d7e456ed28685562875d2bab523074baa56e05e59ff1e8c10af05a180a3581415a54f360c0e4b974f5af99145b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab34e08b8969d45b7c8de11c8ad241edf4f52f6ea4ac4c6d6b2630be4d246728a7b5537ed19da62666a1f4ae906cb094023100db91d682c83cb329588aa3293faf351a330ac2869a25974e9dc5c6a4c12d596307831f3e8a6c424d3988dffe23266db70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068cf9dd859c88bd64e2adcc834b84f67eae45885854be25e75e5261e3872d9584860d7375bd2193a0d397bcaeb9c5ca5023046e2cdf36e93e0c90df12d863c7a5ed80c767973a4bd9809b090fc1f2ebad682f4776fab427c997c561b8ff6efca708b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009e6c2595e066672862dad49701c63ee5d1798a1254d1411bec8e8d5a3a123b764ec2a997e340fefc6074b18392bd3bce023028304897cfe329f42d0bc35cff8c433569a5e7df6c4084818342a1eb7f37f8db6cbd6e126c6055b285b804a48a0140350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cce534f136d31442be07907d22bdfb020d79cc4e5a269e6811c0257ec4f88e7a354cea634694e8145d00f94670bcc19f023078a7e8cac909571052e53c6aa7beaa3f4d6376c1f3b29d59685e12363ad78dfde05cccec9a6c07a5a1a35b6bf2e59c8e0302047c435bb500673065023100f190d6c621102441a042d1e2f2084f04af68edca1e7b8cbac63d70dbd3b9f9af588382b4a146a06aa8fdd558326cc49802302f384c873147b0a02d0c0d090b1993098e1a9b27b76bf48792348c9d10bce8b27e3549947bb12d4e60737a2245f101280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023009c6bd134fa56ddded77792ebd78ca4505cbb3b69a34a40ebc8d30c997748170ee8457e8a91d9d6a91286d9c330e0b260230250a5d9d74e0a8c622f6a0377d6b8164f0dc9d3ef60593a8f82e7e6ef69764dd576a13f008fff715be49fe7d14f7dd8d0302047c435bb500663064023028cd9496ab4f075eb60e2aca8271325921954dac2f8a089728a01749ece313677aadabb06b779ed48ebfb44e5466473e02305a03f8d6e8010dd94e25b2db3e3919946f0a7af5e298c085560221e3f7025b578dd93b287cdc7bdcb87784e6420aede70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305614973e3c76cd59a48c4a8942d213e539c57a124f4c40de1e215b0d2c369bcc463d70ef0fb9a15974ff73bb21d6dc00023100c6480f92acb53ee52251ca90b9eaa4fd4783ccfd9e8385219450853b32d5fa1b047c0e047f94bc08420d5c309845f4af0302047c435bb500673065023100b77cc065d933817d31c00f25f33198a465326fa37e65e128436c4ac405615fd257fd452b73c37db162379db85d02088202301beb7ba490f829889aff1d684b58e3e9862cee340fa0585bbcb795c577c4922a275ecbb3043b677f79a358ed1b85791b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301aab98c973c282190380f74a30fe338040fc957afc50c117529278256fdd1f3dc6a99ea9d429cce3815ccd98bd015d33023100b5df8a41c10c1b21d0d3505f0594017cfa81d53da4a816968e0ebed975a07d6a80a6f725353a7b5b1ca9e409d6475b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d3293495cef4057abf3edf33c01fae21a5ecf225355c4d221e8a7ca65d9b11521f77b61aaaa94d4330bc4c387e3d5fa902305a5040775858b8167d6d99632792229e95ad9e84eee5346e1b31906e556c2c03ef82cef500d57b1602898841d2f67ffa0302047c435bb500683066023100b2c7dd4725ff8e7d6cdb931d5bca5ff702a31922369d9fc2113083c4c5491e074b3931a0fbf64c2da70112044debadd80231008a3226e51490e1aa55924133e8a7c43733c97f2c63f1c084386da558ac61a8ca070dfc1c2742c1568e01517f92e4831a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c804ef852edcfb340b81cb9533bd3771efe2f99c2a586d2d735b2da13467b096a9acd59136817fcee568ec5729a6daf02300ed003bdf369d09a602d214a8de1ed4604b6c3f70bb7d6e7952eadc50c09db506c17b187c9da5b61c73f14710e9397ca0302047c435bb500683066023100c78675e0daec7f2b79747fa570beb74785bf7a64012c306c209bb37531f3076cff92015b85b4e0662b20ce4921a87b8a0231008d4fa458245acddcbc64e17c7be93aa8df73ea30907c17d11b718b0e628018e36031ce9a8c08aae3f0a581a7de6a91870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008d46de2535906d094f16df5ac878ba4532d719601fc2f2e89f9cebe5c486fae797a27613a24e94fdbf770b7383fea4b023018ae6d9c75e288434318031d615fb818741a1a5a2b30c0e3d23fafc3657a891e35445e7ab77ac61d72883e856c39bdb80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042293271ca7a280bf4591db3e99d0514caefdc392f207e522f7421980369988233395a735ac1743bac87d2b55df3616d023100f2591fb5535642c911e11307083a9e191c234d60648680a003f12fd0c184a20bb332818b147f079bed9caa693414c0bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002f4eca30643f6f2361f0e9b7f818012d3a26975dd6fb166c9daaf65082f8773005b95c55ca7e65ada84d0cf406174710230549360d6068633fe8e9f590c049d58144335d151869fbdce962f3b127bb3d625a560b2fd3f58cd0c51894b3f9a7280b30302047c435bb500673065023016315908fd02a9662d6b353f93cbab2cad61b615c3e48bc8bcee069d0160ed83272626cc8a82852b919c71df331898a50231008cab533f973a79997b150da01c0c3d3440bdca12e609e24451f2b1d00d1be429a1223be7b4e4a9d77f195e825fdbca360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d0a159d58034e65145650ece1d1dae176dc44d998076ed0586736c5b04265e46dfc343d2877404d268601d132603d2c4023100a2bae152429a3cf9fd7d4d864aa3d0f31c12ba31a40d87360c007738bd39b0a8b05f652b86395206b3213cadbc19104d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100edf51249b9d9155281dffa1fba3fe982ad42baecf63b5536dcee589283fa9b0c4386dcf360d6136887331bad29062e1102302ad16719193c00e30baa9599619fa3683e0b0cbbfcd1abde564c142de62ec2bcafe45d205d8d0545cc159470b6f893080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230388a9e513b19d1b5cf30bc281eca395fb4cd63fa0b67e62089f65c1bbd32eb71488cd33535e9e28d7dd0a165f9c17cc4023100e51caeda0a283d60e4a8205036baf6a03679f37d534c2f6968a87478b3cde275813784a0a458505dfa0d2c71259cb1180302047c435bb500683066023100edd65704347da809fc1de7c9875554c6d14efe448f44ec01f93d16fe3f9bb0adeb13abb952271b45f46d7a619e225266023100f9fd0cab6688147ec3809702e64422fc7a9a6c56420ee446208843cd6fecf4ddac65c7fd9b7fbd2cef9e3a630f1bbec70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad2e3dc8620af31ef6929570110a2991374c5719ab8b7271ae5fc3bdfb4ed9acbc98ba27f053f0c4f629bf5bee74bab8023012fb2543b52af7519f8ec76ffe08643b67b973497810afd753288c821e44e57b61a38e791ba75bb0b689c85ea1c28ebd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d68baff834bab8d48e16618a370bd05d234adb90bfc3278912f0647151d01f23d7a310192b131018c46e0cb30a1ec2a02303641df1a9f31aeda57cc7be9175384db6e4f2faac77b80c4537823cba625f6e9c1719701f41ec4dc8e6cab69011b90160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f50f7a7acfa48c564e5f2e63d39c826c8eebd47adf8a205c89bc111f67e10341da9f9f367fe1a393699d5c5ee2ffa544023100f340f6671472edea4753f8dfd2b3fcef623e61d6705497180968e18a49071d20f5a1b83e70508b6eacddb8df3642dae00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ffc3e60aed338132cab2cf25aa78b36c1b02ab9c0f7219f9dd24e63f25a7c48a9479c9fd73219369976723f5fe300ea0230419302dbd7fb67b9c320c1e911cd187da450d0c53e3057b078730a6f8cb172215b9bb0fbfc32180576fef490a5cb30be0302047c435bb50066306402305196d7636f5cb2cd26219e7bb3980f82245bf1b96a1b7bb02bc2b83c75862777a3717811d20c2b1c075217bc37e4c514023012bdb3da6948a12672bebd8fd6dd5bea918d92c54ca118565c96148f42d40abbb22900d08919d3574efe34752c4cd5910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307cc2d8617e7bf8d7a2c8aed93328902001ff79808fa9bf4823ac5d125f6d0066e49c75014178067e6c2d3517e3fbc9e6023100d6cf77ed2a2ba49832fd7f3eaef3722c5f1154b942837bae08b43baf75942164214e48d557ca38e0bd02e34a474a516e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbe4f615a89223bdf5d60a835a090be5871a2f1e1247ff28dbe1d6b8a370d1aee6196e0daa9631e70742ab0aadf4fe02023100c457552ff699cadfb0a004ff815fcbc91934b26dd6cb9dc15b496dc87ac4c9b304e7c37b41c92e7ef1875fb2560473950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cba1716950b9459b76427ec70028e60eeab9ce11bca9b5c4a0c6ca47b4b9118ebabb8a860fab78581e573ba1b364deb4023100dcd1f2ecbb40e9810b2571a58a19cc1d7dfd96c84b6efd12f369a4919d75a0731390945b12ddc6ce47ad7f1a3eabd29b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230383e221046aebc6af18e78cf87d4dae009f1cb21b2d34caf5e9ea802a51b1fcc794e8923a50f72bf8a9440e71a65e354023075844fb0eb2a87a384b9de9a2160776f393b7d719b10de7ed7f73893c736030435d7bb70d2ec0711b1ed9b97a3e0999e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1b002e522616edabe2a4b98d2feb3b74be3d1864ebcb975cef9419389645de5ed351330f30ffba336ba916e8994f162023100d174b46ac812b7038f6e2bfb67ba032b722a7cd036a7df69b9519b55e90a48a7d5e598ce5985db0a292d0280f1835bc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2274f98b829dcc20dd7205fe5809f7b917bd00b3aab530d8bbf05d63205b7f9ab8a80e5740c8ff4f9932c5eb7cf95e302306e0a89058c854ebc869608fb8f719f0536e1145c9e426924b7fdd7c3a7e8c844c55746a7a7be96e93f47b93df5fb771e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023048f239b51ef714766b7e04b76b0f8d0688b404182594250e9a5bb8a574d82453d445e81df778ddc5f1d899fb285254e1023100c2a25294fd7c8caf2cdfa26daf71629de0084d5cb0dc963709f279e2d0d74611b235da5919e97676810b8f05fc2018670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bb407066dcaaf18cc64d63c56533a0ccb9bdefdbff362fa92b1d1b9c8d9b878435cdb532f094629ffa253ead92b6662c02304fdfb288e18d6a5cee21fe0aabbcd356b127405a3de5aeecdf8ae8bede23a3d2f251daeb6f8e6cf6526e67016ad0283d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230239588f1dc39aa57727aee6aad7e816da0702abdd0423552b807ccbf02395a5caa474675179414b0b480588589c389300230463129f058b64f18fc516f15e79145c98fb4c9ed404b0101ba4ce368254139d68abd668245e941f7434d8753455bb0140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f41e23dd13be42ec863d97cf047c4ac03f26e55805c776a39205148ac91bd8f2694a6de962b6e15f503ea1671ca343b02306eba07e475def561b09449a392f365248c0973372d5092566a4425a32cc063ca53d06e277ebc1c2f3261187bb05f7bb00302047c435bb500663064023000c44aba165c766748880c02af50e8a4dc96caaee26b1598d8d29e664b81d5b75ee79ac7c81833bbf94baed92240f3b5023067efd7c7c16e4390aa66f18fecca3307afa802dab6d1211c25ec7e8a3953342055034d25326c7fa56f93216fc4eb781e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a6d61415277f86c4809df910cd98cd1a5947390665c801c88292841e1e81ecf0f6404b4fcc5636ab2a3f387d527faf50231009cfdf583a0aa9bdeeb01571b6b051d547782679da01b8af3c43ea85ef4d8cbee2a8cf76436ed8b0a64971b1bee3030aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002f55e13eff0a29f2f3b5e1ff081a69ebb1cc8c9902b2dca242a62f7edceb098e737857fabe7ddf15afff00c377a25f40230722b66c2ae6b7aa089e643891f4cbf33ac6daf8bbc8d7570f6fd9b2691d2784531ae41a37926f2230f99dc6f999972fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302de643663f9403f7fc0c62cef37498b11e6e0cce6efefa48aeecc2ea391aea7bb7530cfd5fa3a5a0c52eff2449d877c8023100a524a7236d294d887809b9b7626a60a58ebf44aa147a458f9552a902a5b4d6272d7ce10905178d96db56f24c7b64b6ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023059afb911d942958107ae33cfc3f1282a2110caf75c0a1e6a84c00657c5474b4746a36b46b14de1a6375e73c8a2b9f3bc02300e1112ffe1f964f771f1c571ea49d122e6a28fba7a72c19d5c9701a9e3e107261c4942e37140b4b65db3300b65edb21b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea2fb13e460d3de3b41abe7a288270ef540ea95135f4bdcdd42c91e7e2b5a3c398c508cfde990872ab3df363f9b745fe0230252b999c3fd4d434ad568d65b77cb783c5691580dcb96bbb409cb8c4033f0a26b397d733f03f85688f73f884a4b987950302047c435bb50066306402307527f2561a95722ef1605fb266005570005fa95794982555242fbe3668c174005ee5ac67887dfc839d27f4c20fed32d10230202de358eabecfe1944025652694038e10cd70cc79670c1b8f0ebca331c47de5157e585bb5dfee822baa32c14e7647f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305bcd93d5898697bdad0e74ae2e37aa70319efec606ecfd23b1ed908742746032fd8f35cdc7d8ec5850454df8e7f8fa9e02306c839e4f23e3e8ba4e5b11df0cff871e7a43b6aba1be47aa1d81d52b431be299f1607801afe5ceaccb2a9c7df8553dd90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007ffe933fea3018aa33ad5d67c3b57ada5d33a1400d2901e082b98b5cb39378cc37b2ae78782c287b9412d08cc323dad023100ade5fecc40a085b05a86aa9dfdf1a3f31f440b315127a7939c7f0a672d9f113ded5a5d409ecf3804f537b294676952750302047c435bb50067306502306f9541acf4c39e776551d32eb872935589bfa0ccd43c965fa820a767a33464b2d5a9c8e2edc410a9045c2d56c3e0e60c023100ce7e42da1a0fc983370262d2e63b3bf9428784195f5775a9b3548c36b80083ab3918e66b013cb52d46758c170f7887240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b194215b2397f28dc843af53cfe9d28b40a0f68c1bd7b1da2419aa5f405dc2f510eadb1c7ef233b24fb8f529b50386a3023030e3c688b8715b6b4effcbd6d8ceb9cb2ad02cd096c578cfa032f0b3a97572ff62c5eaa96f062a69afe2ca05a3c75bc80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070ca0a5ba2dc75354d69d4d94f3ec16df9c73c8febd12b2a2ecb6e1afe415520f677f9b0700aa651e5f9ccc6fa3de69902303b10db40ed9885103debc9d9679832562b91516f68b504d96a0a532a57ef27551f0719381b68d3da26a4b72aaca1a5e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e5de9b2195ba9a14ac4fd2921dccab3a839b8ff52bd6a9a6fcbf2939fa9ef9b705b1defb91c80b21c4c537fa8f2c5e502300aa02650996f8b26c1601e15ab762bcc92c69a57dee91ede1efc2d7461ba90dee21b684838f45bdabd7904f02e300bc00302047c435bb500673065023100dbfe8d4658427f3dd882bce415c45b813d48272cf19dfcf568a17a2ffc172f449ce74602df546b74fae84bf2bd054cfc023036b8e7c6df2681a2fed2ab2211748337e951636ffc1b418641098b08f844a42ba6c9e293875359e726cdca7178bcbf000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a145cfe5726b4c484acd95dbfb65959a2de7b6b97b8b32a4181f31302a02241824e892e3ce009ce6026c476a0102e2480231009784d12de3c14c3d289e7ff6fc65630b25ab4440b3cfbfa9a394f69d828ac67ee8353b56f85a434db64d2e5ff1b16eaa0302047c435bb500673065023100c5dc6b32c697052cef6f90b1ebf43ebfd7fb88056bd81211fb38bf007a714dd732f804274d0b975dadde7bb5cfd0b3ed02300e294ceca4b29d5560c99c13c7d16ce0ac1615f60e1bed7e92aa29a60e53a2818610d7190d6f838606efb484b3fe6e3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a67ca8a5ca86a9f19a3c537bb59e0943d0cd9d600eb82d21864a26adf982b09d41546ff06fc4f3de358593716e96cb86023100af023b1d9b112178bf1d363746028fe997c1f72eb3b63b53d27beb1d38cc55cf41af6995d00622ea054298654e0e39b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce5e54dcb458d9ded0c85d99f0288cb7801a3e9cf590b1a1848397d2048ab0654bf109e9b439a728ca99268f8511fc6d0230485b2b81c4a10baf706d472f532ffa0fa8a456ce02d86df7796451b5eea2ed7ce3c15dc85105d9347271dd27786bebad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a9e360a740cce516f631b4463b12de891e5817c01bad587c9a50953a2f5505127549357e8ded5cc6873495a1fee610350231008a164dd7d6adc49c8209f4dac6c9fa83720f5f76fe4d7f03cc248cc6177cb87775798a0d9da86eb4306fea1129b6602d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f5041940b18e0ddc6de848017f87cb79913031edb7507f08a8a8ae5d06fa6759414e9f3f2b7a971075ce04221dba3262023100a098a16cbcc43a843f7e1c873479238d474459654e95c7e0eb446b00db3e5711c0cdbe0bd4fde19e2362066cbe324f0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310087b45f36c862b6b5039fbc458939c35a658ff1b829c3e8d82b6d5fd8babe3e97848180ccc7af235b065320d2e5b5c22d0230178ef5c425c47ae3bb353c96158202148b656e7545e6bfa82a4320c2bca235f7078ada40276b140c7de4157df682dbf20302047c435bb500673065023100c3033cf6e3638cfa7b4171eaba08b76541b1122b33a46eb44b7c85acbdc0b9281cbf5442f6846668de129ccb0ddee24d0230328a71eba605d291d6610e2b40622a716de6ba371c95400441ee364752de163b293ca42fac6ed9a395078724105f58650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304779fa510e4107808649efd9f00b846d1cb21284f58924057ca4780336d1481da08c39e5dfc318ed9f965f31ef7ce2d3023100cc09e91996243e73b9a17aac4af04b475011be14b06f02533aadda24c500317aa6b62e0af2579630cb655c8817057b6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023057daf77917b0888495df4de8194889cc003f40be50d3d6874da76e22d8695d7571b74cc73fede8aacfb7bb813d4b4872023100bb37326eef4ee569fc49608d06f63cc36f4fc7778cad461127cd85ff6de2b56f0870b30c9d19e6c78f0d011da68fa6fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303f9fa86756280ffdd9850694de39c03a21c725282fbc2273a0dc0f1e9cc0bd5652e4c3a9fcffc33677447c069614a98e023100fa44e721b67bced661353a3f2df124953894db5cb746050c75ed690f8305b82a71cb4e169e2c86ac17e00078248098d70302047c435bb50066306402303662e91f2b1c0df19193f46212238def558e284a8ade5269e560cc03c74c2f23ac7bbc155ac51d0861b6f6093f6fce6302302dc4ee5ef7b2edfa0c3f6665a4a08e9a0b75a0348b50352e2aad56ee2c22c338e1ed991200327463b112abf7fd937b590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084fe3284a74d34ee81d60df637cfc8d398e3f2ce9af86e176e9a81ba5d8dffcdf4dd819e123339a5d1f58d490a06572d023100b3409b108abb8014fb2b4d1cac03e218168794eb72e959486448135b79e3b0285b7de29751582a273edb9eaccc2cdf650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d132f8c10bab3f2445874670f51176a886b3f24e41f046de85a740da7c13eeca4c52f568595dedc4e018222f2ba2de5023100959649b5c5b65df6993e1db43bb23e87a8635e2e65e06a508359e6f6178c3e50c3ad27a3197a819ff4a73421fc19d1270302047c435bb50067306502310084f09451e4066ffbb28070690d7cfd148e663b0ceee0ac0c3af3f2b579593b142b2c0feec89aff4516e9986ac8956f4b02300e2ab94fab5133c9734d5b4fbd0ed620967c46a025aee9e8f64f2b15b52601c7282fd21e627c67aa8dcdc349fcab343f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e037309c40855f92dad38f7ab8b6a3f03bbb36e6343a122151e33a7dc3ddc16a28b103f76b3dc841ddc3b327f1c36d3902305ee511a9f62ec8fd12a7c085a2c4378309fedf358e7baf94f25d25ff42cf8700b9f3523ca0bb24b8650077fb95e61c710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303cbfbec49dd9a986bce837cfdee9a6c0ec1dd10bd3616cb5160581ff8d5768d4f622985b49dc01eb33bba85dea48065302307fc727fac02bd0f9a64d97e1e79b7eec372bb64020d59207b48fb0f48940d7e86c3318a02425f443115a5db20c6ba04c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e037309c40855f92dad38f7ab8b6a3f03bbb36e6343a122151e33a7dc3ddc16a28b103f76b3dc841ddc3b327f1c36d3902305ee511a9f62ec8fd12a7c085a2c4378309fedf358e7baf94f25d25ff42cf8700b9f3523ca0bb24b8650077fb95e61c710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100851b89e232658df45ee7b33304396d3ec95e6051ad2825477c47ec65f450c2b09da18b8f42efdda667d46b47a0ca7618023100dac3fb39a78f8ccac98e681d1e4a076de29b6d7ecfa36077b407440d26cc136d735065f56a998a455112429a977d75750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027c71563abe9d3ce44e00a2e79e61d74101dfee89cfa1a13cf073b112a6ecd315ed03c39e687dbd2ef22788358254bf3023100fa59d22e99077e57fc6a1f7eb3ae6a67cf7999120d8be94ca114a2ee60dcbbf6fedc2a6a0177af0c9095c03ca20dbc140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ed7a4598a14c85701e739fbff0b47d2cd9064701418002122731b83a0b2d9c9318d24072a6f27bdcaa60c5f72f8180340230366a6d29df08ade432b89f88edf86563b5dda4f013d20c3499b3058059468e93e700ffb8e382f729440f49b1e861740b0302047c435bb500673065023008c40b02c22f217276d10acaafbd5fa16120baaa4192e7ebe3f6568a5c8636fd111036b0e07b5a5fcd16a9aadb7e6e6e023100b7fea3ded9f6eaf99084de1e45efce4cb0bd21f0bca75a4617a30323a5ceaf8b5b2ba7a3924c53276e4f6b32ac6c78e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e0d4f0b57da6b02cabee76689e02ed9404de22aa57b50a2fee7058bd0345452474f0e02f9a9f26147144da1b175f79d023100f51cc2dbd1eb73ddf98aad061b784f1cca49eaff1842b63f2af9b56f3590e312f2d4817220c630586f0c19aac9c8bb0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023039311bb42df1aa9d57a43a0af0cc26e615aecd2e9193045f66a04f205f40f54bb4a5a51f590d3baea9ee440c3b6bca2702301b6e3e32cffd1f05311791024ebff85da44e5a9255cf5002bcd8fea480a9b992b32e187d35ffa3ccb7a8b0a5106046e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d982bea397482e8755828b48c3a033aac901e2db12cbd65cc4bdedbd6a1c3de61c207b43ce457a3b2159e020ae8def8d0230554ed2b6c3de5d40c5904de90d9f7fae35122d6f11137c80dce2a9d7f135c1c491622a1d3ec5c0bffaa63e36299129690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d982bea397482e8755828b48c3a033aac901e2db12cbd65cc4bdedbd6a1c3de61c207b43ce457a3b2159e020ae8def8d0230554ed2b6c3de5d40c5904de90d9f7fae35122d6f11137c80dce2a9d7f135c1c491622a1d3ec5c0bffaa63e36299129690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023005a174dbd68c17babe42fa8af21f250e121be8cc4f5d38cef951f9772990eb5c5a5b2002e1db4339a956ca3243d3fb6f023024c88a1f42ab97b41734c1085e54e6b45f7da637f74a405a9d9e1c1cf20f7649e462f1ece4c5efef44ea772e0a2597e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230471da892825e5771994a3b1e3c7206c183c06e330fafa0a17446622d8cf417e05bbc5a30feae3646cc7619f0c92ebc93023100d2ef3b282fae412a82e33cf019eccafc1bc4a8ce8f37faa31869a6d74cd493c8544005363284b3232a72266b7710c62c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300361e7b0c829a70b4ecdc8e5ac296788d06c71cbaca652f4138307da6b8bf8d434b5c28fad3aa37cfd36e6d903d9b579023100fe2313a6e782ae66ccc5745ba5733220189d349752dd9e0b2e6b8de8aa3130e18fb0f45a5d7850379e2117f011de3a5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b24f5bef4a9eac9ee890f73cb52b6c6c8f56ae91ba8d88751c627f16ed547f36eba47e41c8ec8b2b344097bf893f85202305aef33e102d71ec0b4b8b9e02cbbd2fb5572af0d285abad95a022a5947aca4e2b53fa0c63874a69b232b2ee9ebd3ed5a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023004e636a193bb27d9fd7906019688ae92cf3f9cc46346e0194a9d0d33ce1e19c9c70ccfa36fa55152749bd2f05d12d7110231008e16c7309db4efbb81e3b3c72ebd0318be601f83f86bbf073ee7580cb3bd634d9bcb88b22e1629e352b37074e8936e9d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ca94c6922cf3a96bfd5b38dc3e922f7bd57b7583b63062b0c3b9d27e9bd0d8e075d287fb3cfcdb1d4c39cac91b02b8702301acf4eae94a63f52372087d6fc5f916c4c81498320e1058d007481b2a3992c8b97881ddc01a84cfd28d4c32fd8df1e340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c8631c8e0d446d0fe4dbc4ef1c9cd8cef8e4fd09692c28ec3cbe516ac8ad30e2523d9e7bb7c23f153386a7f69dcb5cb0230643765e5c105cf903352651460f54dc73ce2de0e7783e8677af5da28d626afb6aca9b0885b75f421af11750503a27b900302047c435bb500683066023100de7d1b1bc3154742087e2224c975c3ce7510aa2287c6b2071017eb4d4642e9e9bc40fe045a241363d299160a2d20e1c9023100a20bfa51717f8f8544f802e4ac404f376fb6c1851422bc87104a75b3bdf6b34e8a2ea8fc2389757e910bf720873f274f0302047c435bb500673065023100ed131e372f1f9975e30090dca3ae80abc9c481187ecec95319b0115d907bdc7fc8852652e90369cf360005ee14b0009c023054e68fe68c1b54abfb57f82d603a25f6000a5435db914b2ec8ccc8c0cefed27eb6f904e7b6505e48642f0421d5fd98950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302956f4849075ec182d3b48870e00adf8c67eb9a0bcacb52f5c02286f992d31b7285105b1a19d115ece513cb748cb7dd9023100f5e8682602072f1b4e8476c2160b371bcf7e7d8c40a07331026534a3722fdc0cec032452182961308ca70ed7a540f54b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b984ed8dac140c2227d7210ac525b4ccec514c8afe2f8100212f72bb82f22398f40dada9f93a9fe9e1a0f5d4686308b2023033bdee19668914c523ef3952b64b868764e380ef6fe90763d08df8f65cdc1939d934e702e234d3d3efeb61c660d543ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b85dccdf3d5ca11258426d90733f849638bb69edfbfb80b9786a735f7536abcb3d78897794027035888076eeb7f98790023013aa67f09503b4f528e64082b9e0d9d04f3055851fee977feeeb53f051607613c2798f13732e96a1842b817894abca540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230282d5e4e9f3c7749985ed8227d12fa6c94f08217f01280b747d29cd3efb0412e5cabee52844e20f30ec5b02c440864eb02310095e737749c856ae55acd66ea4df32775492797987d1538b3015edec245ef915b288202f11e26faca84f313d4d8ea958c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d6738ab3fcc1a84e0485627158832b9e1a4fb91e0a2abe941f28be19f5d8429cbf03d67fe4ecda4c3b1aeaafe732cc0b02300dc4962dd970248340993050b9332f42df3a7a2fffd6b49f7be9262436ec7b5c485c8c1fe8de81fb5476c842e2312f0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aaebd9a99c4841de733e16bbd704540235339530247ad7a330a553e712efcd54f4fd43b96c28ce9d2c35a6bad7a4eb8a0231009eafc6486c2f64620103950feb0c32d18e6dd71aa4ab7b09a32effbe97d1a5d466a7122e31bf9bebdc70881185621de90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009aed515758a0b9e4189e1e026bb7fd9efb8a3f6688bf4d39c47faa7a3b1d652f7495eb7dc4276fd9d72d04b393ab8b64023100f7e2a7b0108f7b75b9e4f319cf6947ec3fbf4338dccf9bb821fc0de0f8b3d927f2e8e920e88ac5117950d2b5c45497d40302047c435bb500673065023072d90aa2b68ee2079ffc3fc3054207a76ba78e339b455f21e578a1380d7de61d5583df561945d9749d7599aeab082327023100a64dd036ec170035d735ba873a632f8383b1231b53f47b22d94b808b19521eab92ea793b474ca979b97746d91deab5570302047c435bb500673065023100c24b82fe56bd5d34c2ae322a1a0cb666d4d2b47146e870f36d2507deead31ee3281a2d801e335c2fb65cb591d9b658520230350b37ea2495d8314c13eb17f0a73bfc5ef85e28f24490b3c80d9c34f024275f6634abb7bcd01c7c79aef8a5ae63f0b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310094aa5cfe43b07d1bed3524e58498f5701ab7763930967f0e20aaa7890201e60b1ed8cd746acc7c8b379194203d8645a5023100e259c35239e1b3fbae89366364ba8da1873f367d6840efa512d4084b4c8eb57778f2ede38b66912b788d3ed45d823af20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e6281fdd3e6067cce02120ddf84fdae6a019640657eacdb9b44f531615f329ea689ade749e67066e141314bc6b58a17902303739ac20f4aeaecda485987745029f61ad7f77b0ef87754696fc99efa46fe6dd18753e491c25e948f4b88814a8214dbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023062a242dd03a62f47c52dfda7d34dfc50e0793c2ed2623d7f9f0afc2c0a8f623f200f3971d1cbdf8455e02139eb89949802302c9cb09f2b5a9dba80e119b26fb65f991529014666ffe4be35461519540e36f8b7b67489615e83dbde4485b2bca833570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd26d95663f7218b8d1e2d4231ca60ff8f0e4659e073666d3565530d07494a1017735e17f86e85dc2338c383f1a03a1e02303d7197b7a33a80830a142fde8cc5249cafdb8f50d73bd49c585041b727e7c7c61f67b68a70b886e90df653724bdbfea30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307b847e77d5ce228befe41978add815d2c70d3d04881de8859f8162eab01b4a91ec9bc38fe5b6bf97e711b06938c3cb5a02301f98195a31c2dca5854150bc8b611bd03eca1b631ac9edd8fc6549d3602d4c89ba0ebb5919222e541663c95dd343b5920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306f209e1a130935a69f75ae4f376bea4c2b2682093cfa5a2d67884480a55767163d6cc1900605c4976388949b6237b74402306c028bd19ea99968baf509c4a69f227504a4baae558f7790ac567c3288ffeb57eb81678af8ea162df252bbb782a49bf80302047c435bb50067306502307e49bd02715298eca640b0e8003cc45f1f86ffb363a2f7746f49d75e313dfd5942b24e9260487ccfa036f83a1edcc738023100d27d5002771e92aacb63cd9bbf67e22cda2d362de31cfcb29a17f121fa355d04505e5d304757981279cf251352cbf4a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2b8abc6c3d4567dacd43b9f10f5571716b6ea1ad6f17446c2935f72957ef8237780e75d939cd3250592b48c0c5da8fc02301776ddd49a3d69bd1af64dfcf2b3c0be7a8f02baacd7ff059d36cd80717fb1837e23f68155cf1f0c7cdb816258cbcde20302047c435bb500683066023100f3132d501ed1b5e559df2bf9df2e9a4d80faeda0641d988c50128afbb8e6740e6c4a953294af2cad109df83da5bce392023100ff8cd039be3d252199e22cbd823e4d9fd898a7810040e74e0f9a103bf081733e78b0712318c0f18956c67ea4e43d00d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ff65bba59c5f97b278d83bde31680cf583876c0aeb620ebca8269d338465af4578328cb866ab2d27960b9558a6f5e8702307725992bd7416bfcc306b509e7b9cf6a0518c72932d79f2b5a93a42a95ab10909e0812a685f763303f4eda77d25b00280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1762ecafb3530311f5fb46049f4b6467458d7e30b72a147055fb580839d8ca9e03e24cc6057d18645cceecfda2dc72202301f6d68e91ce9f7e29d01713a442afca1c6c9afbe8a11fb36bf9b05b3b49b188771f6173389f0f05fe4da9e0a84d9a1880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304acdeaee1d0d04c7e3269cc87a2aa2567bb3d51d023cc8f6f58228d86278fa2d25ab346ab5747a5e296f6c68ea0d3a94023079af8a2d3e3b6aedbdbe098ad9f0babab5a00c247fb03b5bb3d9f130ac9cf3d64fdab267d7e2fa06b2febe839f8ef96a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015f2bc4364af5e1cb3ca1acfc0ae101ccf8ad2204a4e8ebd9cb26c7665fe9cb34e54562318eb772b5fade4400390d338023100b3126d96d0a543137830ec501ec75bd3779ec6769c7616115122c35afa51a824b316f8542ce4f09fbf2300403fb2f9280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093a26b5bf3bfe006783de6c8e3483549beb44ec9eb51c10d7178154b25c5e9e9e16dc923e630f37295cf4166d4eda2ec0230705f4a61b3655bf8baafcb5de96d55e60ef7136079300e7bd15b3ab0302619094a540b52c2dcf94851690b185e0fc4410302047c435bb5006730650230705a002f567ad398b744318c8436d14afb372bf4151cd7dc80badea82fbdc26b5f40ddccf8d284b23039950d938f22ab023100c0795e0790733474d55d8b338a36d17dc11f2d10c4a94dbe8bd09c87e874f2cce5295e98bfbe75b035cd917acaba97fe0302047c435bb500673065023100d2d0ea03191833cf7eb4a89f6998060c8eeffa2c3161025180fc4661dd63f7b85e4d13352f5eb3fea35b72568987d717023076663db693be707a432b9954dc2a37c47f7fa687c26e21e1182ffcc8cdd1cab9fe72ff43b7c1676fd4dfcdcc45e171a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0fde2db2367e1adbde19103e55894fe229b9af461bda469b61b383c839bd08f895dc2155f05cd8f53c67ba5d8f13c9d02305dc781699120a8295a88312410b3744ca489f838df9c1d14491b0e69498281814ec22d2b69a527adeb55e7f8ae91493f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054cb76f1b038e6cbb1d2cf6dd69fc88aeb2f2c62ac4f0556de600b655990f5453a6ff29c24333cc6cca9ee3dc412fee702310087e84fc2cdff6dc227f0a42b7a4a19a8f578398c441b3908e09e7fc6dddc8bd0821a1acb5f76e8c74977c91cd0de9e460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084bca2cdf7ed4f46cbd070f63e47a318f2ef92ba8b51c6ecc81d66b6c5e85390f9b4eff36323c810c345cab7c9914f6f023100e6754e57b6e66a749c5830e2bb7bd55969a60c3ee057a3e473591dcb69088a4116d173a0a7577279717d800140d545090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009efc72e3243739067a6ae9f6534ead9c00dff052bf65b3d462a6de87629754a8dbc74795df97243576115b313b10bef002304671739a5ffe8f761ba231249317844142b6c6afd6b81f1b4075b1214942466add7873694244cf27ce8ec2de6e4b7f720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4cc191a08b6a8ecc1ed9074bc0c4a33cb2507f4b6c9073fb30071b44d2c7a649d2bd4d12b1cabfefc68f2eb6e51dc0802305bc0df5ccf1ec27a89aa88ba9c9dfe0da6337902ab13807636ccd96885eb9ed6bb80277f7d1f1c62fa9b7d0f0781ee3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009cf9dc3133abdec1fd1c4a0ef83f61d018e44a4710b49714bad912544ed95e31031e1731338a329856ce4b68a5bd52a1023100ea01b1f435101251629745a573af5695d7b4770d311129607e38150f1959180b2f7e421b873b2c43cc97dd7b5c0360e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301164ce7e46f9bb43fb13ecd18b20a8f1f30d57763349dc80d17451df3fabbc95ecceef9ba7bf0e4288825817ad97bdd1023100f77e1a5fde53c9652c716f80734adcb9b706fed4b6a4b5bbc9ec708e5abe272b5f0da147a7ca2817e6d14d39665f6b380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d2a2a778ea76251992ffdac4c7c8896691f5c5f96c7577de213b6995ae09354503e27d2b75d9547dd206269168cb7190230508dc9316d1120c8dd58454cb852fe2a29beb02668b68c3a10c4c0518bf32c92797f2808985f462d68d29eb9c3b439da0302047c435bb500683066023100b61a7e0472a3275d8bb66808c8146838855b67086fa2e90a06acda914f223196ff9951ec7c271719514b930a306f6171023100f7e20b628d9253e8964835fd38c703e957a4d988954efa9b98801e845d6a6478916b5542a83573fe465843f14eb5967c0302047c435bb5006730650231008e32aced57495ff7100ea01e1c098675fb512202464beff47aa6c6cd00a46265e1184d7650bd49a6e5e6f0db1fed0c7902306a21ce02a77b0015a9a99401d004895c471cb4848f8fdb4d0d88504a5f3f1bfc6b7eb2043e5e25695336aaa8dec467ff0302047c435bb500673065023069b0022ec340eb9b27ece14eb83295801423622dcf2022699b423075ba27a8639187f707e644a47d84fe60819bf3409f023100a40ea776d6e1f76eb3b9263e5de855d6de88044474826f2d44444ce0e8bb53bd1771f07814b835e43789e6e1158ef41c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b81b2f30df0c429d8131911ba8feafc424c08acc25c2457b23631db3b46d4a5bb0c5cc1bbe301a95871a92fcac5b24a02306e913a21fd66695e315eb6c5211a2cc4f2debc3a21df590cb7f426e95781161375dcc22d5360503f1f82fd3d0a4a17f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023069985714e37739a635a9198777b9ba0e4fe9e5c5e985af3cb40d8d75d5353b3205b016f3782634397b47f309577f4bc1023067f3a78fbca2875ec111aa330a747a92a9b03c9572ec660567fb17e5ad2ca9e045a4185bb3bd9d600246c94cb52bc9fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd7af23d50593ccf91fd7855ed7a8e0683cd66e6a441dfb45ab189c20b424828057112101a0a59b68535f1d314e30ba7023005e8d9790b22118280d9b13e09253a9d2eeaf9edd78d514cb60877509e86bd6aae81a3baf69f843af15cc2e9be05e1200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010fd9e94f9902c8b09c70b9665e719b33b9adf1698a84af91e4e2b3fe680b1fd7a5b2dac7bdd0d1fd3614f4c70d59ab602300aaa94b2facf65deb2ed2f51fd6e805e6d2ae3af94a21ba12f3c17ac3876a8b1573da708fe78ad7c35cb7210dfb24b890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084acb2f9dfb3dabf548ae066a7d3bc8600ef2aa591204f2e9fd82d6a4a541ff5883d6c06ea2ca6aa32b6adba7b02d90a023100c54822f0732bed6da08d6c8997ce571eb031f7a62948eeaf2c5529387d30541f9fefddbcb1c2ed2413a1d5bdfaeba5c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023056392c23e2a4fe197137106d17a9df110b74087edb44a3345edb0bd9a6b15c3c16cc68f60ce462115689585f967155b20230621d545cadd22f9e30e7d04726c14d2ee5cd380622f913fea68465ef9eea937331ed9f17c18803710d31149369eb95eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079d087aae957fdea1c38e6ba1d75966cb786593e0cce420978e156fbc8c3cb43f2c9a0d0abe158226082abb61d86fd6d023029fe80c626f05be2c6a0dd1c4cc5f8fa2eccfce099d855643e5621e4bc66d9485b0136947318b3a262d91530fc236b890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a4e5e5e4370f520e7e4516012c2190d685e8641c5da01136213ad7596c89ed3395a17c90c04181956e31a1949899fb0d023100da1913316cb714df2552dc399316a7f3c8ecc1dc3012f837473366ad056e5f6207b8f439f15e8906ff82298c24bcf0dd0302047c435bb500683066023100a72c49733aab36ebec9184be6aa504ee322c3b2e5ea413cb6e1187eac52059c6ed0ff671396b6ff685e7519b5e1e6339023100e457b6fb9ded6182125358ce327e7a7ac80b8a5be7292a9177663719cb9ebd10c105a67d765659382b52da5903aabecc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bcb145c5538d748742e9f296d0bcb0f1bed0d41ade627b08635b81b6669b74299e1d95dd2056e62cd1eca47c891b3814023100a0b557a397e35a066de7289d8be683b12538c3a65d31655d48c1f2796028a26dc284a3610124b56da13051b93ca0af4a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023057b83b64eb04c36ce1b467d2951cbbe480afa1360098dc87a42827bc23101a8b16cdf1329c4fc0b9d08bc7b033e30db00230154872416f2c1017cc26817553bec2f64ad4c7aaceb795e073746d320605bdfc7ebb07bbda0fcc1481ebd542721c4be60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008bf463a672883fcc3258ea32b43b1676906581c7bf682a3d98a784fbb8e353543089ba83c9c6ce2de298c5ba45f172002305da4aa631f9161547f3b346becca6dabd9b2d91fdcabe911823dbf6e055b4c2a476bd3eaf33a3d4774628a890fb98cf30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023075eb61aaf8d0fa1ec70208432ce88c6dfed3e1f6d0ca5f9183854aad67594b73b4ed39a72211c52643e9534b67783626023054f02655f8639852d67c47088bae24d336e8efdb051d942fb91a09479719d00d9817a0f6e3ac2dcea48328b4e29146d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300a936ad31608f20161cf1a0446755d8b3bd3dbb009cc2f6088a1753623b47c4da442bc1c45018787762e2007a2114e2c0230133d1d40553e9b3cc29c0978437f2fbe7aeefb0e0541c38129aa6cba8b00a6f7a81215892edd1f54c7c608d5bd703f180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023030d2b2073a45019f5af7af82b36484aa62c0837810bf91104b19d0fc484462c5fbffd9681912faa8fdd247d9caf9692602301af3a9a85a6cc6bfb61c34fabf1620218e09c424f6443541c067ed5e4a117a9087163cd4c2b75b13a0368af40d08caca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100807d235634486be51ba0f4c803a2c2716148ec98179b1da204b1ae683798fc4bf45b23c8c725f3b8648db07e62514e9f023100ba6218681f6319bf234fb9b2a3f5bbce564aff53df32df734b65fec2cd4adbc0a052d74ecf1fa8eb4a22aff255f007c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100839fa58b060dec264f56d1ddfeacd33ce870caf09463d02a4f855c906b93c2d303807cf2b52c0d041b55a4395dd942cf02306680c926e13311858b40eb05bd88841318a3297cbf79a81ebe13d1cb9f026634d429312980f17655466baf16d75b91f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009fdea26cca128873ab01a0fa90f3e92d13bbf7385ac372f470005c383359a522bc2f0ab1102318ca3c2f911da5e962f5023100fef6a9d15e7c1ea0da3cb66345692a38e737b0eb4dbb12f2a12ea5940c0f2c1c0bd7e8d5772d6c47c0d59e0dc6e122e90302047c435bb500673065023100dd88c851635d68f423d32102733605a988a4404d75a80b162c88931f1bef016e542c88a293532cb34590a724dc7a401902303ca0891bd0a6cb7157eb41448787bd9f4c8aa383f9d6f9e3e362c9c5259206c635ab8e553907e6eae744614719dfe1f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100930361079085a8799e1008f7b937fc38c9eb5445f646cb3ff54e9ffb568f991a55f3b269525cf8c57c53506420ce55290230385de4e2e0f37997078c3ce24e0253d7a63756f836f5b7201baa44f3b0984c47ec30b3e2d29506c62f3ea584466a01690302047c435bb500663064023068ebfeb307056940fe4d9f1e075f372e4a41db50ab4d507fa26703390e64f317d5fd548f96de0144c8dab48ca5357a32023070869f8dbeba47740d2f735eee9cbda0031b40809076bea70f157b10ce9c75d6e992a3866f5324bf50018c3fdf70ecdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1eff4369d655ad04b03427fa49464bb74d53bbda8abe72316d058b9d3ea3d803760175b3c631f6592dbd2ffd239317f0231009419ce26d1aadcd1d44907f519435ba05631de08f356738f97ba615350b1cb16b07ed425ee45eef8543cca65ef47bd0f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230791c11776929ccd25cd97053765f5ec8764d60718eb985353f514703d394710702d5ca2ee27d2507a41de746d858fe28023100b4f79aa3c47acc505cfd0f8c267e77785a32a1ebf81c52ca632b868918df94372c1fbbb20571516a4bc0fa91a7931e280302047c435bb500673065023100ffcfa46c5bec0b033010e352a47c6c70664eccd0e74fde94e981136d028d739610ed39516511a0202e8904f286789eb0023024bb3699e8c990e53292d94cfa975d1560bef8532189ff827b8d25c2406ce9fd6d41545159300ef06ff92da987a1ed7b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307a10161a6245d9ca1b4e149be7e69a5bcfdc5b90c16732ad39371515d08fc42e7a82b7154d6146b363fc184bdf82e6bf023100d440da228553e815f6dfb41f91eaf8896bc52f4458633ecb5ea6f5157fb6a2b11d991d556b2620aa52dc1d1cffb0a1640302047c435bb50066306402302585ad1a76f202b5906547e48eed8403f62c01c4e4d3f9135a69ec71c5988e49c4c23be3db9bc1929a42cf277b51156002305665a1dff1967a228f85e22362e6c74236fab79b6fe598c7013685c31fbeef5bd823fcb47e1b4e97daf006b9f3c438720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230205241fb5e7732b7c1b6541197c2e0ec3edf1481844c4ee6f31e5e5e43bec9723cae177525ea1e946a94e3ec19b77f82023100f136a14187eeeef577e2201ed903939aa8b81fc8af9e2cab605939cf418a581af77dcf4c1b98a68134b62f7c6f2161400302047c435bb500683066023100ff8268131f488a0b5f0d12e01ee70092b7a731ccc14c76c6236b318c37a2476774614f50681d22b9a93e9e845ec456f9023100ed4da4e9a1385c8422216196cfaac6ecbd26c503e6c80b24a08dd5203d1d109bf1c67144208c989a6d3092e9cd9aedc70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f4ce4705e25740fd4c7e4b48528e5c7e8520179649f8fa082065b9d9038ff2407206ddf47632080017e83b2ad55aaa06023100e627b93a0003a73330591b96f1e6bde164e7c8ca8961548ae6c42795b99171a35d3bd95f3223b2340e8c60d8bc9563900302047c435bb500683066023100e60d6b4b42ca739f7e81ec6ed379e42aa08c4ff3273af4324d17c50d0964ff5d14d396c1d6cb998128dcdd2bf5d38b46023100e362bddcffbe8dd70b26dfa0795bfb30203350e8b48a6f86ff6bc5565359829ffcbb97e78e4e8741a877c304547112290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100929db3ee7693ea3c9f4ac212e2f6baa54537699e402c093a31a57ed0518aec07a4d00c7be1a9199b5bc5e26288914a4c023100809c7093eaf1a14b02198a4cd5aefb3e7ea2ffa128d22ec626bd3ca4386728327fb0f5c4460dcf79bd85d997563933ad0302047c435bb50067306502310090ddf1309718ad237a76b8604c205dbabb7ebe2ad0b90a27c7a3cf5e84c5321026f17211e59100c1ec16fb3bbf8d257c02300897f23954d55ea2b1740522274b193b68b4845b0cda2020650dafc1d9dfa8d046383e5874e47f6db23cb1fabc9add710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306252c24211b6cf8cd22922934394e89b7b39f6ab3e3edfb29c9227a0a4698e121af8a848def0c223691913cf8fee0582023100f26fbd7385227780745bb0212e1478422227d1e09f0633722eb17f0d4d8c7a118bd5b6458336281b42893be259ccb3b40302047c435bb500663064023028a17892f2b7be1b50decedbf6cb6a2b754ec43793816d340243c1aa9340ab363b6f843265bda1c492defc3d6506482802302f114354a7adccb8cb3c1c4cbd3610239705f0a04ba131dcd423229628a7639e0f8c0c6e10363bea6efcb86f5420cb020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303a61c137b9e72530e53f59ed41c419b28fdc7e4c62f38e5cfd8961737fb3aeaa49971ea6f62bf1119f07864a57b65d8d02307a1e1d86eec8f59a1beb8d46a4ee4e445a66512af2ec31b905942f55993fd63fa7fd41aa6082c2a71f52be9b9124da360302047c435bb500683066023100c260375b3e040135eec5abb5e61498c827c37de6ebdc09fcce74825ed73add80f02f9fb638f20c0259ca39a46d500e19023100d4569345436a963f843ddc40b2eccfece947a83d94926ffeca57377f175e3da3212486d00ae71c9d73dc2af892c31d920302047c435bb500683066023100c5f8f94da6315471c31995f60c57bdf4f17bdb5c6ef14b39e67da6ef6515f9c45c2684e0881cdb21117b54760968d76d023100d04d8074d171608b958d063fbb380efc537d0f1117d3a4d89a994db6e7c119172117db5e6d5afbeee60ec6d7a27dca850302047c435bb500683066023100ac37fb24a8609ab4f64c313a39bf80f386d2e8d9a9a3b857d2bcc8a86f89c4aa17c2cf303a867af0314a7cb68ca5509e0231009ebbb9c44bcff9d626cc55256b0ad8a797744859f626dd1c1c47065dbdc12710fd9badbaa530e8379c46300d6b573b4f0302047c435bb5006730650231008b734acda7f1cd8c94ec0a19778cd5578d7364ba37c62d95c4012c383f1301f1932b5421cf6189284fc689aa820483e4023015bbae36508234a79139d54186dc13881fab6f05e8b50c57dfd13a8d2608fa696b18abd11eda14dd2861262cc004fb600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032077020360e126e6ab7a18af913974c2daf7d25c600f4b09ce583eedad55ed4e27b5d63359d0a1e9a26efc4772dd75102306089e7d76c1a163bb7895cb9f8652ff81ab2c567654edd17cad48f20e1ccf2139f2363df321920f65656022cb072e4c90302047c435bb5006630640230385fa047e17205015de32cb89101e612eac77214458a7e810476dc8536183bb4fbcb97ed8240b8d21e73a8ce05a3d70b02307428b79350d0926b35a2a6a440507324312448be7ae12b97618447736fa6081be4b51b5466ef46cd0afec6df125261320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230749553ae1d72b052ca434874514b7852d451abd67135428e4596a5217f88e4b7b5117330dea5603035900ff18992e735023100fc54f4ee1f0978ccce261fa0e9e8548ceec7fc79ba1885509d42690045d1e09075db56eeeae2a4b9202a2f5720f018510302047c435bb500673065023100e36b95433e9049c4a3a8dea74ee12be9e153b2386761145ecf0f3f232579a70acd4b514ccb5ecfe2135731daa702f96f0230537971e74f8bba5e74ac6ba4a779e82cffd7f61278eb13875ab8dea14707ca85a492732bef8614419706ba5a55b8e9a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ba26b6cab7c0f9fd91d389ee28f1c67fd5a7b806fef102a756bd061c276d8ca38683304177d1901dd8f7f0a676033dc023100adc740840b241e5ba3abcf7abdedd070d6fdd4136fbaaf5efe17f2d8d22fda938251e07edc9de7d1be668c878ea166c10302047c435bb50067306502310096ae4ede066d692940b4252f1d240e8bc581e85c94cd3d848a76bcfdff8de322f2675d143363f9f4d02d11784019dd5402304c5b720671f8cde9f3fbc38f18ded980c99b3a8322dff16236343cd23727b829c732c37dfc57def1b4c1cd2b6877fd5a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306dbbcaa9503b71560a9fba057b09dc6bb39d29145a7a5992002b5cf289ecb919e313cbbdac54150804ee469e98cec8ab02310091548ddd80cf51be083683a3bc646cfd87ea5850483e1f84906fec215fc7bb860dad0699e248e12b6316ba156444d3560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307fc59c6d111ab2d76cdc6059c7f22c948f5eb3d211452bbea1631acb260d13c87917ea13d533de0aeef7397fec950ef6023100f315042638966fb52410b68e86a31ee71ef5c5eca1023017f6705684b4c356f2028f90f3ee80b3a3742e7ab5b5247d020302047c435bb500683066023100b884a77f72996340975e2d6813f34b5fea69452c1f1cb57bbacd015f408d81a44601df16e69ee6455a565642268d2260023100c92e46b472cefc1c4a76034543aeda7a6f397dc4bf4ddd2f21feabd660d274458716f743d4a79ae7e16c3aa67426d8ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c5a939d66989b79898a5799e11748b82039e2b44d264ab7259a5a646e26f9cc9ed7ecdf2cec3085b7e47cff8d56aabde023100febf48e2d431725c21ea39aec38a80611799fc0f7046bcb75cb6389ffb282b1fc18328a35f772ecda4d8ae204b5494660302047c435bb500683066023100fb75844807c9487eca4e5fbabc3363ab7956c1c1d01d96f19a493122dc1e8478570bd0d8f251cf7c68b7bd002a10f256023100ee58e1243720d67f1f1f3233839c0b9f87dff02af6b032006712522058c964eb75dde612ed9e7324a11662233babe3ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300e8ea866ac2f3d2e1e25040ff856dc5bb94dc00abca2d8e1a9668ef951b2bd168e83b49435b8d1b486113130f7e2a54e023100b3b2966d542549ba721bf0ca9777ec4160dc15d119998ef4d77c7e01f403597526e259a44993aad4c47f160af6b54b050302047c435bb5006830660231008e1063c8b674bffae5edc0f7ce50ad5cbceea5aac26b0a5baa818aad7da6b92f656449af81b53f426da3d3a719083b36023100c5fd54919fd5f8bfefeafef35e7762f86be58f5aa20bd4ee1a705268b14c1e252786ce3de2dafbfc946c843ae79979fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c15b8309f77ec0b8127fecbc1d63b9e5762d98a8d01780ea3167e06caa53e07bea3da94361b0a01a44b6a4d26ef9b6cb023049633f970d1787cddd1a0662edae43c49c2518bef0e6a5ff3f68983cad6b5213a93088741bd775e704a5c4e5fd0d83ee0302047c435bb500673065023004a49aa46da1dfdd343590e5272c6a20b9fbb14f012db047ef19811970ec4ea800a7b9ada3723421db5a69c6744662c3023100b13a4ee2b51372007abd26c11747f95b84b80708158728c7e4f51192dcefb78966de291e23763c4873a79a0dea27cc170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008442b8932b194da66e8e2addd7443672d2f9ff19b3c856299b985baabd6b53cdda027644ddf8f106bf89a8205316df3102303dae6a5a190498b9ba944b6f7252e63af6222cf03beabdffcd292a8279bdf401c91ae90489c2e95b5a6bc7690deab19b0302047c435bb500673065023100ca7c214e0d1def9dced18c94e35eaad260e060d6c52d54c4b1b557b92a959d50e435a187c71ab43f16319319852fe68b02304bcde6f5481e82e0e96a624c585b6080eddbbad4050f8bb26a6d7bbbd6c7f2252a9b86ba5705918ea093f487e7e700f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310098c01712573d61e8b503b8731aa0bdb8edad147a34a47679e0818255482f9083eb83ac27d518cfc12d79a7efbff9f6ff0230468a3865aefb59a5b74674654b7d3f2a83fd2397dfac184efbf68143f50910190d83392f157a2da95f4318b581a73e0b0302047c435bb50066306402301f532bb898b06286246226cd03567c8f7046d71034e487b5b8f14cfdf3de72419541f5c017d2e50fe5c8325f0913a7b702302930e6521b703633a6835e98db50e4eb8b449f850ce5e7a66d187fe0e9a562fb3cd89672611411815ef74969a58cf2490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230153f783b764be97d39a8ce72a4761f33a5f4239dcc7d4e0df28bf21b6b424bfa8473d10df668a96c8ea6822f3bc7fc70023100cdac71522f539d40b09ca9d23e4457c926391859e372e627d7fb502ce67303eecbf97f7f71bf9e93b13afe02b6538bde0302047c435bb500673065023100cbb9016b8692502d985e344d684bc00509992aec4a88c9bfb20f00223f1db2794a900c97a9a55ea41903bd19d797fa80023028edeaebd9d741eb7df1209b3f9f4330c8cdc7145e2251e780455f0598a59133abdce97a32bf8f42a9c2ce28bb5a50940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c84523d821fa988484eb4fd42862880bcc4e61678d24e5bee651b2cad6c6d278662b01841e5ae8ab29c108f0b71de800231009c0db5df5304ad901bc5656a7dba1a1bbd6eff03f1338704aaaf26bfb6f935de68a2741244f53cae6ff4520d441732bc0302047c435bb500663064023012eb9d8a99a5236ea978b8f6c46c786ec293904e53f08dfa5e95b9bc8148c6eefde02213aeb6ce21fec3ee5c4d645c860230338ebc3fb74af4accd457fc59d5d44d662b70851a5f1cd755d6529adb5ae130051ffcd8a149299723ba1d8e22bcf7b9a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300688cee3ae3a8d4e4a7bc954cb5d977f32af02f288e8a9f2f18be41a986b1e5897dbccc9eadb361653c68dfc82843a7402301872c6e5246f0da453923f84b9da6553573a839bfe9144561ebc9af62718a824770e0db3f843f129743d6802d5bb90350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230779bbfba57328432b822655eb224fc3a17f56284f2b0406cc4473dc543bac4b3519c6b8a3e37c142f956bccbb6024fa9023100dab4e1fe4e323eeec307e6918657c308907672bf807d82aadc6f82e784d1f9403882d1c9539ad7c3d27fd82ad400c1a80302047c435bb500673065023100b5cc1f70b16ef685a324345c352fdc75b30ca5c5454e934dcfe30e5df5549677410b3e5dae809a5e4b8c7510182f87aa02307369dd9f916ef6c9adc91e63f6d10b23425191c48d3c9bb5e93eab40c3da6558ed6efc90813a60bc8a7cc7915c3faf300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e1f622a82dc843c1febac5e3ed301835cd194ffefcc1cafbf2d278eb388c85499723cd12654e8fea25da94ad5578d3860230590e05b6a4ca4b21b7fed3f2309a98ed1180afe7c69b6d727cb0e148ede3c3a6389bb117426bb687db2caf7e15e4e3b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301326512c78db792d1ebc241edf01e59bcbaf9c1b00e9dba30d543a21ca102a263e5efd6ab57cb038887ed70db8aa4e2302304b5001933d419783af82634934e9f6e30c409aa293c026473c554af884abeab5eee951854eaf203fc1e5e71f5c88ae8a0302047c435bb5006630640230407a08b1227b1deac8f06c3ddd3349dce9437e6931a6f1f32b542054d1bd3d964fd9d346387cb1356723473f28ae446b02307cf76dee1cd0e8d5d8afc961a5b057afecd7a6778deef6c12a872d200df57f59217ea7ad5499b4e3573e99134a8a21b80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303638b0871aaf1fe79667e3d874d65d9b70319b764fa1cc9bca01a54961eac1bd70def587274b99be9163b50860b653f1023100c1609b02f57b368fe10e8549b0e33ed6e070f296be59e739111ceac34c45aed6cd3d83d472e94d013316b1f69ae39bdb0302047c435bb5006730650231008117eb0085c0745e938259e56af81fb86f3b98f50a1b7d7f78007dd4c44f8fe7b288b4607e034151a45363e6c8e3402502303f78676fa6b35939b74e74a8badc316773467a4a0249f59fb610910cd26d708952367d9ffffd2b50e374fe73b9feab320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a52843db92e05bb23ba40d706d1cbcc73702a60cf96c0ee51b3198835d3ddb78536e577fbf4fa3fc977f14f6c9d6b2002306b705087e3c9ae32ef88d4a804e44d65bf4b395bda864dbeac62d0923f8b275c55a61fa47b06b17220d96bb2998379120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100842501de6a1cdba60a48bc09fdf33854f66f89b1b646887b7bdcdfc30704699e830481ca1b893c4c1072c9667536f51b0230207eb371c780eb3c42029fde3a09afecfb11ab72cba7904750cceccc0dd15ce23bd3efe5be4dea1ef2c6871f8d2ec2410302047c435bb50066306402304f9d91d6611fdef6e491a012b894ff07158ccfb7078a06e12c731e17cd9f09a141046c8d558808bd563be0f720a2529902307a387707fec41b8a2b24dcc57c4986b1de834358115a0329de69adb46f4b403fa45ac890d96d63919379025c2f73b5550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305090d09f99375457ae3befbe04dcf2771a600265aed7c742a24c852622543eecd2709f3d6b99079e036408276fd2329202307e4bdda29d48d9fa09c33af23b6d5b983bb75012167c4c068be6f2010268acac58e9810d75a58f35867b25868e1447e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a654e9e33a6f3d53bc30a3c95103d44f460936027bf2c0d4b2fed465db8633636cbc5f2f320b4f24cecda99ab3f725e702306c8d164c144e7ba24ef4fac412d30a6ade048e3b7333b0792165f488c8e2ae0fbadd924d775ee5fb8dba6493cc9369c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d855f3d27adcb7ffa5d62947ecfbd7de6a4bede80f85e3d420831adacdcc757002efc80744d1497f9be32971e8c4635c023100a77fdd27f9d01c227e034e72e4453a73707a354e146c9411ec422ccaa004706a0311c904c811ce2524176a77c884fd790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a02298dc643bbbc87e33b2c40517e28debb93730f50c72b583115654c75672a48dce230509b76da46cec813b024b7a91023007ace6e09f0e5c3192de2ba8542ddf0c293e418737a90db2b3ea0d36787015583e45cd08ea92a74beb72b391c6a362ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed57a58ddcd9613e0d1ffc5dc04b20127952cb781d043dc8fca842bca1c32877e402858b96486f43af46a76fb3513738023100b02e32e6d74497a52ae62163fa33564366532f13f8917011c4fddaa1e0b08d68cf6d531abff2be5421ad79aa4e3b5a1d0302047c435bb500683066023100c79e2a856a1aa9fbb0ffa27ade1db6f1c95c2eb52eea538b4671c258ecc587a42ca8ffd49463c787aed3150382417e6f023100a303c8502edb707619cf2792412a247eb9d5049329c99684df8b5d24d766d040e7f8f1d7caada169d4ecb47441cb4fb50302047c435bb500683066023100c6738921540527492f678c0e567b693b2463fdf146b97eacbc8970057b267e62f29ba8466a31dcf2fc2ab8d5821cf918023100df481b19e3ac447a3ba74c03329efb02fde2bbdec7cfdb0b686c723979148fe87e08889131a4749583b5facd84979fd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6801fe13022715b9bf098ea9d6223d314b8941a12658e5a3025f2e2d78cbb8b75bf82d14a0804ed3f27498bd81b3b2502302a19ab5513a8cfb1eea5f091688cb7ccc05388b9c2390441e583a3fb40893f98df2193dd97001c416734dea9d26c03970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230629c42f51ccbedf9fee9db075fc20c5f97cb3210d5097c30623c269345dd6920d37f2b15b23750ccf22dda31e6231d7902307c1ad6f980eb30ae2a6ca95e90c9bb88357d86721d37cb02cb6d546411428f97b237a8d5535ad8a49cd875dfba93b4d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dd82c3fc798b32d1d1d6c98d0ce6cea7ae7c5e5d89ba3ea3f4e7e6618c0a7f2e493b77174d575678fc0bd42cc8bd74e70230694655f1b3c2c8696f59c0843bb97ac38ad66802e193d1d0c077820ae09eab5f8a77a2d1c5efa4a5fbcf5b3acacbd2e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a06da73acc789f9644625e7dc8f23cf293f4a22322cf9f0488ae17bdedcd9e1e14dfb9bf18255207c7391324965251e702310098988ca0bb74c0ec108909ecef5e9a7683580fbefb1277c9a91a9da86b929e1887c0edf5c88d9558c67224058ca5a77f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db8f1c9a42b89bdd43cfe718a2ccfa5af04781ca67fd6de9e742bf45f8b44bf2192e68c49028a85aa952548146370e650230729ae4fa1b5da80c824b1df2a1a9b7d47c237f5cff1f77d4b3055b9d64673003dd12bb2bbb4db2a7d381bde316a3e1fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230411821a8c1a99ef5ade7b41ffcefc50e40367ac70f0020143c72e20a8b696e587e7a008c09a178c5341d1c2641786f50023072477443e99c14655d6a23b05b04219d492685870a987cfbae1aa957647bcee57c816c4cd1b129373f9753e29417a8940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c207aa930f48e4e149ef0f295b680abf93f5f28b5b79c7158a383126543fc4c3d97767522e649d5a517fb08f715fcfb9023100b9620aff28f9e3cb0a9c3e39061a2b5475297bc9f0aa07f1076d9cca173d0cf6c8ae7c10694a11df52664769fa77ce3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008436f08b6809c25e3c92f5af06c4c9e5c6144f20b88e4bca39b5276d722f93349948526fcf056e979aae70b75f5b0fa70231009a1620f461688c1d54313531bfbc49c040b4f1abf78f1438cfdb71edac4edb33658ab3afd457d0f70f09e6359cc9ec2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009909a358e4cbb67f24b9b38060c7622aa066e25015666c9e6000baaab16b4911967cda67511d09cccb883e57e184bc340230213ce5d0b46168c82b02ae042f1eb46242561337b04b4480e365f8d34928e67f92cbdc125263c63170c208404441794d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302265a85ee998425e7d58c4729ce2fa0eccd660ba55430a47f20a5b66ee7547a2b17bc0c9bab8740ca781809569f0af1c023100f37a36de2547ace009fc0cb74797c49b78cc909052f64acbb78ff7657afbeefdadaa31de2df8d3d77b4855d14478a7ab0302047c435bb500663064023028bd99a8a7c77fdbd58aa8309cae9399dde2b4927888e80edd55ef4971a2ca043bae330d1ac35dddf557522b487381f9023044fe2721def959744675430d608515d6f1ae38dccb5fb8ef0742392799ea105142366ba5178b56d772b086e6c8da3fbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f30c28091d4bc58963ed243f02c63ecb474014483213c0b6a27244ebda4ba114784a78aea1a97f921b758b1ffe312f8f0231009d74a2cfa2a5b4242e21e886d6edcdb9318e650dd77b77d9a1743eb6612e4111f557e8ed3a5c77f2e34dc13aed8a954e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d1cad2b6d2910cc6ec653938b956c1c532e7f7d01a922ea0363dfbcac499db69ddc8f45fae8f51d50b0b221b5374a3a5023010963ffed154d2e623d16978dbd3c0b8057535e575da4f5a7a1553145c4e45a88d6f6f6d3b0508fd51d391a2bf4ee00e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bbaf65907a668c047890051c2b5726cbe522d0fb087e1f3681cc3e5d0374fa66178368894162bac01c872087d3cac055023100ff505c8feb2997349b78baafbd82dea5ee088ad7600c9862ad9880db82f45f348630af570e4e7e3b84a561b8239de9b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ced7e3d4712a5b8901cfa14ec1171f19ba24f4573febeab75ad1be12cb856d1ef50644c4c5b4db40d3ad1687f2015477023100a317ab647d517f187580ffb35b795120d5012b4ebb531028149dc154c5b3aeb95666fe1cb3621ab6e0f4448b6c6fdba70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fee53fbd5ed0a3343ad4278e09df4306919fef8c1e5f8790ed1e48ab7b4cb8583ba3d3e58d3a7456b5e580e833d444df02310084cafc5672fc369a8362ed2c4888bf266ee8a34fe26599d96ebfbf37f5fe233ffcc07ed6baa615e009312eaef33c22c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd95569c6a31c88d62b06e1b3736fe163de68ca801557b446ccc715cc3fd1b485e7cc966f1cb75b084ea5cc77cbf750c02304df2c7c04002b56edf9d925e04e0324520211a599f8aec61c67abfc2b24de8fd1446310ee07d2d7f01eda6ab2f4d4c4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301171a431303107293dc0c4b42691b9c1d1985143455a07f88ff7a77750fc58fe5f26b40930e8bb29f560e824e2b8706f0230797ca1a2d4d0f6ac366c8a8a893ba8c1e8640e231b68e1313c0caf3a16e7f558b21352634df9718721293cd8966dc8ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ad387943449f9a4ccb5ffb3c516ef52d45c3aa09b0744d741b4c722a91e075ab8c9ad19db38d37a3fda921927e0ec58023100a742724d8090be81e12b55986fcda99b624375f0eac81040418ff974c9c359dc9bdb4c913fe80ed471182c0ef12a62330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbb7b05669fcab08e82a917aaf91b6bd167f38b75adc0c36b3745c087001e3120ad644928bbee4249931c8f804c2a657023100a337898b652fd856765b031b5a116c14654afc9b6226a99698c833a431945524902e5827a958b0ad7c45d0a750f2a0a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023008be5fd3a92d3579831e4d87fb87120b5da331f177de4c6b24409428d55883fe4be6172b74b4ffe96859a9cb4458cc7b02310099ed16f3a226d8c63f3b14e0b3da250ded409093475bb20855900afe2e2fd93b4fc0c38f78839ceed4c1339ed79cf6d70302047c435bb500663064023022612696ebb21d00f2b1b9a3c3d6fdb6793246c3fc701af1156b132b252d11e50732bbeb370e06dfecc3ca48b6ec998602306cad294924d22b7459c6a6c6e8f9a62e87e27708cef72be56fd7ceee7ebaa78e570baaa4e5d9d924104458e8d0dca2980302047c435bb500683066023100a3e3ac87d672cd69b32a1b0b212243d7ed96721ea54962c6d7c7a85739c32611a823f7b76c07dac09b879856c7546d38023100cd22b5c06048a30f126d936262676954dfeb9c700fc145691285e27733aa2813e882bc39e7c88cd5dfe6d9c59e5b33290302047c435bb500663064023001eb44b098a88ff9494372750376d430886f47d0801f3e90096e0ea198013cd9d97d6d47ccc35438c69b7c68d7f9b60a02302bfce49537d9f8b19926c1cc19ea287e92ff085549676d8443f58d7c26d5e951d00db54627fd05b0167b47a879bdeca80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023018368215233dacf893e0929c61eb851a3b8a5cb04d6f8a8cf01a31dea313eba29e213e88cb0b4b0414f5d8df3d56f6da023029f23f9c3243ce8bc4d7bfdf171872ed70c33e8bab52f364b49596737820ab66f647aee90eae28eef85a82dd756d5d9a0302047c435bb500673065023100c981a8905f32a01fbfee331a17b81414973385f54cfe6ffd330455a1ce1a4e82e4a2ddb26591343b588a749c85587978023002fc783b11f6e4d7f32eb8b3d128339c37af61972bf3d74ce56192887c7dc2112808ec32e54027f411125b8468f254720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b845c46f0824c056a8b70e9b661cee55764b71e17775504174c5477fa74a7be3722665804902c806a30a043f6c17b04602302835424be74f2c94aff1c5b6bc61dbedcf1e57f1e286a1c9a2bfc866cbcc33ab8146d72abc627cbfc03ba20270aa56a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d5c1656551cb3c5a7e1b72a0f635dd499a2f4bd2d1812a8686dc5ceda458f32529e1bffd0caa6b0e1809a074e434410023100c1c1b3b2591ef2098836892bc0445f678316092978369bc2bf628139b2130fe5519c79cb284574f2561b25173a85a61b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d3b252cc0d547f61105eee5f659081612d38f0935aca025717bd2b1e17f639793bba8a1ad6ca3ab4ef92c87f17af436023053a4f0fb92721213612671691e8633193c03bb9637725df117ba98745e0c26afe90c2b784bf257de5fc40dca612601940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301dcf3f678053404004f20dbc02f6d5a7cf4927fc8404ed9a6b835f549d74509dbe3ed2135ecd358b6be5e436144a66b702304a01a796a89019922d86959d05b28025e74d0a2b0fa3abdfb8396040970f65731f124ae82cb102b7e47d5ddfc0766f360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230249fe44f9fdec557a5885a29882fbcde9d4c94a4a3d45563409f3c0c394a3cf8fa5603c84c123dc57a81f7c46325a84f02305864e5e20b62a44ff1cdf10a709ef14bdd5589110f64f17c47bd39c3c3a19eb22b769f9f7e86af46eb25ec7619599edc0302047c435bb500663064023018179c8db8894ba1126028a9dd4ecb6b1e0029b80a71aa5cae3d355b3bac5f9a3ba518589f9ee93312289b0cc7c5ddda02306feda1c2c398059120ae140b4d0bca44cd92e5a37ec9ef06d5b46fc1ac2e4bfe1872d1811177d5c22694076175572e110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d366701b1ca0e3444d405bb75fd5327489370b2f0da9e6a5765c23b1f50676e2ad8b2b66294a892300c304fb15610e78023100fb4068c1e94405c292bcba53b7b35d3c4aefdd1829d3b67285479b60a5142dab06b4ad8d44ee9dda72e4d9b6f4f5a9e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230231d115b403ced77d7eb1343a5abe4bb277ef2225ff7d9af699970b3941889be2a7730d636c632a747d9bd36f04763c30230294fc22a75eb7d864c0a110055997ef681b442b74c9fe136c7397b038a3ef01bcb9faf41a48534bf3981eb8337c925680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e22529a98ef398279b1cb1c52d1353b248a81d9573ccd79a6cc619008cbd999e1e238164506ce29df5d9b3dca998cd2d02300451c719679f6f7025bea8d63b2dfb91dd429ff131a9f478926ffaa496a954016afb7f07fb49d8edda529eab01d60e030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300d9c873fae843ccb4aaa55a58ebc3ea651805d18e325e47621e511283bce96be8d6815d9c91aee0fa94990d998135e4602310093685a42013dd093be6ce5d996af09bbe3c3120c3802631737725899b64e73d5320b3775bc9fbf94f23034613b1d75570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306d9d0c3b1ae59a74eb8fb2c03bb8e25a222a35e94cec14681d8097d2789d0a8e15bf66c8d26bc8ac8863ae92dfeb58860230546cfb2dc9163871ae096c0411b881625975abc433d7b883d936cfe74ecc2f9e39fcee68f40c928a8f45ebf9911cb7f00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c212dc691fad2d10b99694c3614710dbbab80b335e89beafe03c7c40daad7a4e8ea6c05b87227f069f8a429816041faa02300f7b3da31e9a7748c77dbc5d723b0589dd0283016740b6f670437daacd9c040add50383eb67de93aa783fe938f7ab1560302047c435bb50066306402305b0914d67e9466223517ffe136dfe8bf322a67bee890c3af2637f6670942c0098323db9545e5fbe9f559ed101edfc3d20230273ed326bac1732d61870f3de1e2804cb3a77b00499c92a9af1777e710072c4f739a6037c77675532676fd35283e14ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023039e72638169da49cb6854706e2020464ab9e1f9f40904d7e457350bc13b1bc4167f6482cf8bec3c836994b88c75c3e3502306176b7dd295d77cc4ce2420eace622d7a373fb60689ee92390e20e2b2dc90fa00f4439015eb81ecaf8f7e51a925a13d50302047c435bb5006630640230326aa358be7491259b92495254b2063c973bce7e7610301fa690c20c5f078dac9f2e60a7d9de52b8469d7e689a21bf7902307e51903660fd03704e048677927b64abc4419de7e3076f4fbf34d5157f90c19f56d0a4bd80743267173fea0bbe3ae7730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb77a24d5264fcc2865409f16b118663a3843fdf4f84e78f03bd1fd06c4c0b64ddb6a48054b303de89cfccb9109688790231008a7096ec4f4e02f0f096ff99a0d07dc7944f34e17483f11a372695a525616ac42e846ae106b568b94e4fe760b81bcea70302047c435bb500673065023100af217c7654e51c05ac773b1a5fd53e472f70578b173f14a956427006dac7468324f8967d76f077a4b8c08f82af2a8c8a02301099e392880dbeb6013fcbdd8e3a9a4e14f7e8a7239366ce0e02de226cde4edd1511ed27a69272013278c43c5645c7120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023056314efc532c7a5870b39aa63af3872d47b30297ca25e8cc22621e25b9d01ff47d5ea6ffbeb5a46a4808d8e005898aa602307a80df92710a8839494cc588d5435556c80eb7989bc04f38b7f906d39a47c313a0d58fa138b54a3f12dc42c1d428eb2f0302047c435bb50067306502302ecbc1ae4310d971d8c45f6d8e80f8c8ab15cdf02a9bad3388093323b5239925aafbc0996bca010ea3f1e8171f55a89902310092b926b6d88f70cdf12d19cfb5b094c2ef19ad6b7c60345277b2599e524a73c09b64fc041344108cde58d53fe91357900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a5547ccf25fc135d3a777536c99c111cdd6b79931769b5c6e296785fd374005877491fe8b8179adeb5a649656cbde93b023100c0e0f60784485590da6794293b4fbd6da62cbf249f53d31a28fc7d884ce629cc80de1cef875e037d6a80cca9f26aa3ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b23f6461a407ae1472bdf456b00b59a66a1752bc9df31942f3fe7b6d687d50d31ac100e376cd559e43fce27868c13344023100f1e01ba47d879e0f5de68a3c4009223d0c65bae36ed1e99ec98438673110e21662d2d7e5f91a3ba0691dd4c3f7b9b65c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023035c46d82b7eded4f17fe0c6865a647d8f521d0f696bfff3e31e378fd444270e84a805b43df71ddf6cccde08fe4f7509002310080b7653a6335db00e4daa08a058f126e7b23c6a0bf6d42039fd865e9886a4ac68f4304b903ecf847dc4cabc8dc2ec3280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d23dc8793bc1eba2b3191cc2006d1006816647f5fb1855ea19fd91be4713c49a67b23cd87f2b27fbf2264f406f1d60102301de5d94c188ed71b3be08047b75c2c04de6bf298bccc81fc12721d6913ca7b34b9aed8d9a97bb89be5b6f24d24c0d8fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100920c0c3d4aaff665858fe6f7447331807885e0a01edfc82be25204158d11ab2ce3c85d1024d5de3ba65ad4348646e37c0230422a4d275dfa741d837910bb86bf2e0d82619504ea56a0b3ad5e538553653fb27ec5139fa41f485763cd34c507ab58e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064503e872f193a91dc7b86a37d4369a8a015be242d9365390982c4194b18ecd943eddefdb607ea939225a3ddc1b99da502301fc1bc7650abe9d09bf88b740cab67ba5fc48307c3bbd5a8645cca4f8c0a24f450a11143dfe5a75117b72c0cc30836bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230659d50f2f30a9c3401763e97d27304f3f0f6f4331bf89571ddf1f2440057a245e99c11591fb22fb0a61f8ee04a8430140230386b9028ff212beccdf16cee8c6158f4bf21152b57cfa3637cea194ee52e285479ef0b82c977c84d6d8c0634954cacb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d4bf0adff6564c7156ddee972db0033bd403ec7170bda4de3c3ac1aa283327c03e2fad5ed41a278587f51fc68aac6ceb0230180c153a23e09a1321b289d982591b8d8b62a627231d363e6defe07354004004a3e8a7b1547dea25fe90297706a4280d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c9cf53faf1de33445451398fd425ba5bb83fff6de1198a0b05e9917c3f9c6418cd2874cbe42fa6ba4f9d6fa5040b327e023100f12439bb8f44143c21042ab4474e9c09c3fa9f964c499aab37cabccd11ade6b6e87ffcab6d53722b1ebd98409e6a0bcd0302047c435bb50067306502305e06a37c8fbda1124bafb70d7953ef4ec568cb3b7df38668234f83d6f83166f7552038677a8987ce23cc52a7ec7409cd023100b441eddc25a1c147bfe3a5d762afee3a4bae0254276cab657c671eb0f9e2990dba6297f6dbc7066630210f0f710c68320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f9ed6c0afdb9d84b087ae56013d1c75a5a3325a633db2d68123194320e019f164f959dcc3ba8e8bd6a3dfa29dd922d5023100dcc6d0ef034928273ba1ba4ac96437e35a74b9c3b5b66ee91b022073be5d69cb552924b35ccc726f721ebfadda3fca590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c66ea3a89dd51bfc5cfde9c6a1eaaf97fd8f07c740c80801345bd10baaf57fcbb9de2b86146d83892796898faa783a1023100b1ffe89b4980cb98c0a7f8f089c35f5ec5e664473123fb858222e39b8c14e18c6cfbe9e77db92bb6fdd7cdc024117f530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008eb8898968cbdb2705ed460d98e9adf6410776adf53ae668a51bd8aaa377a4390c47a9d3a8979bab129e949122251e2c02306bf4ab5b90c7912dcba7d74c82cd0b679e9685616c7c38e09c2415a95f7a8682dcdc5f37b19eecb5de1c00cb589f9b610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a3fa0e8cc1018da3d97710a26b75161cd2906ab50c5d9b696da839e0587409de281a3e6b75cf3f0bddf8908b9dc89862023100b62afe5525ac3beeb3ee678b963b1519ae65aba0a52bdb4e15bdb7cb52f0fee6b4c6f0ee9a0dc1a7cf48fd165f22964e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009370df232d1dead3009c0aab828acf49127fc0bdd0b7f61c8cc0ac20434e16fb74f71416a2fcbeb52f99dbe6eaa7d0ce023017205d19e19eb7a40966fa23abbf310b9937fa8eda55b4a66cec1cd890605998d81343c8b195287d2ca6a68b56ca82030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230018dd78c33bf46b66e7f5b41031dc5fedabe01666bef5afb26955221f59604b2dbe02c91c7a6eb8d5b2512f7c8619bd4023016d5995e8109fba6c263dc2fa69e7245f76a34c8422ab4c0c5cac268132c16d7d39a89232c26719a305b23581da436ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307117993b56c34d6964a78439e1d59c668f48c0d984d88eddbc376641ad48cdee5adf26765fdb49734fb2473f3ae89575023027969d1f663f0d287d6d09df1a1bb23e7e036bba6c38973d734bbf32bd5fd74f84736081e1e570fb261eada9b5d9faea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230576a743431163655329335134a101a77c618ffa926f6e994e8da0d4050faeac3c73c13d4dd5c93e6c6189dd54dde9785023100f34c1e848869f2da087bda920d33e58eaa594524ac356cc5879764342e51c52d76b1850cbacaf8f1cbbcee969c5145150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230471aee2d09d4f9c58159de442fb158003763ae771ad1d3e1db96ae9047d01d8e08b02383b5f3685259f86f12d7d09955023100c1dc0024cd6af15da0618f866f3bdbdc9cd9e72dfa9c5c2e8f4813182df113eed1d03dfeb12dd0e4fa6c0dde0ecc12160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f5c9de3dcea330cdf817ea5bcbfb57636d015ac518b947ac222249b8e2890b44183c220eddb491de53e2d774094bc72f02305ac8f90b9b79abbec6b8efef747594df8780c3259e307a74e78223bd74d7ae4ca2fb6f7ff3b2c53b2a0e78d2745260730302047c435bb500663064023076693e5749e5b54f053a452c5285c1149a949cf964b92b1f3afc68e518d865ea2c1218c2a24a4c4fe7550152d2add2bd0230302f4caf0def39b32d73ee1a2558a212e65f0a2d41b44fe114d7361da7421e5858802527b04c26e255d5edb13494c5d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f2022c894d990415e67e136b97b32cf42796bd58c46164a099f234e53759976007d33dece66ff2fcdf3b5fc32f63d71023100f3c5cd05ba53877fafc7f37d0ca9a5e9e6d70086057628e7f0cc52dcfa1974cfbe8aa7484307618a49c4009eb45bb03b0302047c435bb500683066023100c9e4dd8d300abc50ca7ce5f3ddc2110e99d5b535452e74471ed50ee796419df4eb446e6cddee96d032780bb867e0198c023100966fad057adaaf4b366e45b8dff2c8775ed20fa984ed7395f170877ce780b3480e7e667cd3093bffaf8d45dd45e9b7cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023020f6e2480f2945d1526ed6cc589bebc0ce08d4fe9a5889f64a0ab809ef16803b59c47db5e960763ba2eb3c3128bf373b02300dbf3542255a853d19fc9b55e0364a4325a07dbcf5655491df59e157dec7dbc85ed2871e286e777d09d609566f43df870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a8d5815af070357c4fa6a6c8f3e3ce50f2cca314118b16f0d123c414cca821a89f109ed437b6a7175c2f875d528b512f02304410a999bf9dce1a131e30fe359008ee0c9c46474e98c10a3d61a4fc1fa18751ec922ed3a9bd516dfaed3d65308defdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b43204f48d1c3c980e4fc102192ab6ada7e36a9dafd6934d3a0c4acd3ad6d0c642b7769dbd8128033f3dc5790ce55d77023100f0ed2b5a9071680f9a7736da7eee33e2f57d700b34590f9f6b147316214de6020ef30e68196727411f0d8a3ae2734e890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023051e6b4830d33934ca448bb02187a5830c88c6bfe62c7d7debbbf62dac71357657366877de4e28ba674d4390b3c7289c8023100bc18356e1d3197bf445a421da05a4e94448fd16d981c7cc1fb70cd635ef4eb250f584005c1a73ece8c01a3373ebdfc9f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c83e98aa592f2d2da65ce65d7b68113f720b62166e64f8cf81e2ed509d48cb9f78cb92459b78c390628cba371a64c9f02303231e6627c6dbb2a67cdfe86b6a6a5d0c74457db6396a3e467cb833eade31ff9ff77fae8bb2fd509361dae9481d4146c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d5e4c2aa3a7731a079c879ac2bcbf35ea26218b13b1605cb86337c5c895dd9b19fb0ce3c8e7c5d8e0f31e69a04e78a07023100c266d276b47360c06b41f75cbd88fcda468d5c91ebd23a967656c7c1aadc3a82836d567e8dea4b2ec0b8e75dfb1695b80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304cd67e3dc8b50f3e6cf81802ced7f98ea41bd33af332071d1468832e79a2c869adb10b44f218763cd165e2e96d60221102305dc7c72b2bf4fcec2612fe769cdf2a84cbbfb08248245e3875fa97d6d793c7cef681c6cdb728018b97926e2066da10e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f44a1980108bd34dbc13eaaab944ed172fd7c0cfdccd082a7031312edd88ec45ae65c1ab4581520a6db689640d9a38c0231009d598b829fc06cd7fb067e7f44d02ae40f6660fe7ab65eb525de137669ea605ec078fa41db04f1eceeaa85df7ea80bdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097e8958753d0c7798a67ba4ebcbfc9f62ae66d7feab936e5ee9514ce4b96a55e4ca3b7603f350971b566e549d43d668702302f17ec7dc258aacb0c158646c4560c242ee8e3f9f61e2c277f0843896dbfa596323d045077fb563dc441149e42dd20e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d5e7d130e5beb307bd43dbe23753e11aa02c2ce869680253eab9de400468f1d58e5ad39d12babce3a82b531feb60018602310089b81d45e32d1621b5e322dfeb920800db461085de5db57739e5668148d56d50d08993b9d4bd46a90b3a5c7383b3effb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080b31acdc89197472da631b19c689c4375a2f6ff8dd9d2697efe45a39c2cec959ff3e1e3c80f011bd0d145fd092cf6d3023100e90f96640f643d79a322595746e8785b3a881ee66b5150bc9e59c28f585706ccc4ea8e685159c20acd68c812f7529f1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008cfd99c9349c49c5d8a3f0b96f4409d463b4ce7cc7313f7fd166f8f3550c4fb0b0726e6ec392d047284c899be63722bf0230395bbece008094a237608b9599058b1e73bdd31f7242f1cf800b65c008b86fc1818fa60e00acbe8fea7bce2206ffe5e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230627defa9ae707921badde7260a8b1bcb34c9eef98a34457e7a76af946c8b184d63b98d296a80c676130800d128546e9e023100a46294dde338809c41b67ffe18cca3d67ac57fefc2bb72e548d961edc3a76367e80554c75eade814f3f437969b396a810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230351cfd996a3ec2d05ada5464a3f25b44b37b6977eaeed0e3416b44fd826eecf762645bd50be79cd5ccaccf6c5cfb5552023100ba2867fddf0911f1a2a173434b4f76ee0e7e9ac0e890d10db29c1f51b042542cb7ae8b5b5cd15991c8d1fb681b7163620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230166aaf29328ff3108534c4f61d2a414af26f2ff448277789ade3c82c38bbf28d26caa13926794d7e0f2c63f4e82d26e4023028c8b0788329f4dca7f73ba15e31a83123d59ba846ff0eafc981d45416946eabf36d41f7624e95e1aefaac87722125ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073288fadeb633f4b5ab42ca8caabe4bebd5835e41716807092bcb63228dcababb94bbad5c98a2a9858cc79ccaab9c4f2023100d1b36b966454c52dfd8209832b0a47885db1b2446c9befb5539c981b29ed6e739709b6e9484ab91d52256d89afe4b9040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009118df5f59b714c7a78f34a3bbc1ec17bcd980eddb3fba32cb91a2c09d2b12eeb1de779a4bcfc671616d87c3951e445702310087b9b1e1a24b39d2af2951f90f8f91c3604f6e9becbbfd6838a395e69ea5afca37f6baec0bb16b18a86ac0bcd0ce08a60302047c435bb50067306502303a11298287b43d179664712f700b32126dbb59c6c0e020070021a567bb4867170bf6f9d4daab11602bb8ab66ee3ae229023100def1f22ddbf6446a8ad638b3ecc57beeecaa084858c401e2a1d10ff0ae6c748b8a8c655128ff48b215cb64c03d6c075c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307084f294a69b2822d819e037cb2eab4db1b0659f1a8446fe2c479fff81d600ad1d3038e1bd8610123eb9eafcc0fd7c50023064942d542938c539c7fa97df30a947e36ce56c033866a0c25210f0c4e6f225792155b898e22cbac6c77c23121b2e85c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009696b817f79ce236e90f4c7e6459ffdb71470766ec5849f1e4e2ca696313e50f90b35baa4edf7c5f11570da8427cd5c3023047709eb6c8d6397e141b7ef54b2684f7356d2e8b9b648585819e3626f255b4170938adb63e32ea3e330be72106446b0c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044183c102d79af7411f8e048ab09b4bcabce56c200ccd3d93d05706fc8593cfd47bf9091ac6d0ef85693df4eba31cff902302b504b54164ff42dea51b09b7cecd4089de2853aed746d7979e44d84b10735344ccdd4b1aa7f34d559a186736a7c3c020302047c435bb500683066023100abc07d18636cfcc67fa0a14401f09abb2cfcd8f0003d05b5c61787dc021fb50384b693a4272fbe0837b501b60ce2587c023100be259af4833074eab4f314dbd15b5d15779ca67cfd33183190c860f69bad3e9c87097645003e9b00552265351e2768770302047c435bb50066306402300ca011092c95444ce9ffb7bcf8ce984f9196bef2a23518b0f6e4d671986354aff6311bda0997c79624e059538f801e6902306e4b7ecc3cb5315cd467bf0555eff7c5bad5a7e307e63b65fcd2021c53b928e9ac56bc5adab19f5b2bb8731e882471140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023052e33e112b20447995df6287e2d8dd6ba4852f1c6983284fab21609cf276886b1fdf48edceb7f7cfd1b3ef2df9892e9d023100a0114a579307d537c0e15ce37ed84143bbdef7659dcd12172abcb3f0b0a4967b36f4003b8adf5c6c6083fd0efc3a1c1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012b7d8ae64a3d8586fdba378926617057c79b95af927677e163240a719b971bfe430aa2c33cbf205a9a518fc82282309023100a46008bc5b4129928bba4fd14c4272db32d56a9d43e573f5362beb5525bf5004a6c74d9a3adc4e20eb4715d1e07c02650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008e25def8407fc249a73f3c0c8d45c9f89d5c184a34d40811a30fff3f84f97d93023140e28992251a75e3659dfff7b8fb02304962fd0b13b8b7890b0ce37b5de393807f652142e84bffcf4e27d022a051bb86db250515914e6666972ef3b3503fef550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307708c48ee0458c1f07ee58f5e4285b7b0024271c27629f8161bae8992457fbd0bb1cba63b810bde006c3e65bae827a2b02302f9744a92e9a4e3417abc200ff04b7487f72fda9f42757e1d83babfe21dcd0bda118cf29b330413ebe35fdf0c8bbc8f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310081fc73030e96e399310421c4346077f1c1df6f0668bc11cf59599b82b0cd81f53a176c9bd8b544da5c6a3a2952f5c792023015192df47bd54efbb21f24e78f14d0f61ccee288460e17aeda7d468aab327c23982a799e8441da6f2ea4174a14017d940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e67531b1a1afc7893000b619672445b2dd7c7059b567279cf9055f67f52c9f10de5f2d4de99606b616554b77a63ce1d0230023bb42290d7a7eb179b27be99ed4adff267e0bf1f51a6988205157266768b92274e21453323efd2858f58b0d895f87c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ddf645fbfa0dde073b120c24d1343d104c2e49a9d57df9720667e728a20507d0a684f5644eb0e04d8f1fefa59f23f1702303581cb6faf43e292e0e0b49e779a5abee5168634af7ac6b12a2a434d93edb0c6093d6f7354ce9086c5789af04d7919960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ba716e02ed1f756852ccdff56853844b173b0929285007a5c8fb5812802ce137f25ea7a7a3cb71a5539d8136216b722023100d7f0f16d95957f9dc4cbef8c5d066e2db16f38187fcba994148b5eb60ea7943322bfda05bfcac98e426a9e20c1321b6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302096f826f67a7c02bcbced6655e6291e1fc6649eee39e4658d3a98504c7e52c113ed49760b7d8f681689e59d10b185f302304844090eeeeaf2e1aed60ad0b8ab61e8c4af7eb89bef2a08e2000f191aba0acb035bab69db54d980635c2ba1310ad7570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ca2f31b2fcce08b22de2f85025fddcd7bb8542a9a8bbf488d5089973306c8e0979cd73ed8f9ceb57bb735304067cd3502306d2e242cc7a038b09598268ada512cda09dd1492caef4c069bd11aaa457c4ab201e92c979360c100755c9916bf50deb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310094d5e750cb796c636eebf554476445fbda2151adcd29d5c0b1e5a6f2244fd261bc612f955df3780fc5f4b67f79fc878c0230532e78867c5cf676d88920e3b939802776fdd15d6b6b92c4a0374cd7f64c0fc50640d98ac3bf6d25f3f78615bd0fab620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302479434b585e0c78d0d5e58a8f7094d76ec717ee582035ccf92bb7e09f4d1a29f123886dece57bd0181664970ed414e002310097dfa46da8129c2c866c5fc6b7901352a781c1c96071cba2091e4e340ce4288018fae5367dfbe3df1aff02eaa2cd17a70302047c435bb5006730650231009e34769f0624b98a99e5e37c9c36066fe1d477bc1491c450feabb37c527cc8f62f0f24c5182d55c156975af433abf8d202307723c2e6cad8322e0ff645505340f828c09607504e9a80a3d54a3525722af91cebd07096153aa458c7bb1b7ed575577f0302047c435bb500683066023100f54539d4cd59fd1f2cdc3e208d8adeb0d8c0a9c35b45cf594748911acdd349717061965038133f844a2fa24413daf640023100bf8bd73987b173862ad968f51190785a20fbe94ad4694d548dbb3b08487adfcef1f1be741743ca9bb8946eed9f8c95f70302047c435bb500673065023100c70fdbaddd709d953bd5e0c7f6229908f6304219b37b57e51f306c995727f043e61a75001fad074b6b617a7f382689a0023023298f6cd70ebf47be5b5935d5c55f1f24e6f5f222fc0498f78e5179a54e68a2cf132df42927acc9afce2b077d70e75d0302047c435bb5006730650230032dfda44c971c86283d85a3a2cb73548def3a9f319d32901e49f5c416a29352821376c31ab8c48b8b3588a5bdf01eba023100eae3b4d228eada61231035b4addd7e7e36635693cd896b4e527b4d9460c6183e38270f172fa29106be7c52719edb10820302047c435bb500673065023100f7d82b3ad1dbe7ca321014fa4d9694ecf04b006aab76e9be9be699524968720d7597d61c2e3fca2e7f68ee2ca3692d47023002216364f4e32a43d66696d99fb8fd3c9a73fb099569e2b69c1834f60ecfbd46db37df227cd1b78413414ad6ed31c9ce0302047c435bb50067306502310088524215b49ab42d1a22253def9cb29eb4787df12d819970923f7fec9b97602e10efb5f1d17da3de5a352238a57ae14002302500af4aa74ed18d12c33bf1091e021c8c5e5aad7c31172da8b0fe9db28f645fcdce736b510f2cf9ca1f017c12b8e0710302047c435bb500673065023100bbb64ca3570b550288562e5a0e4111538198c7df5493d33945a0c93c049b7c7e0de4fece5ec0b3668a23825cda86dcbc02306124359797a8da7340583b8346d6f2835e96966758ebdd709ecd420fdc6daa6d9fddcc6035b43543b32c11cd2dd49a6b0302047c435bb500683066023100d0ba2341d860baec4b5a40d8c23bb14228fe56bb8969bf66b4eee138f5e13273b68bc5352e11ca5a4a63781fb205615b02310094fc4dffd6fc25f14d1d16f59e50389a62a64db7e59374a474f062f1049cb8642898bf8a1bb984a8d139cd0686fc6b190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef651c0c14bd4635102c4169e1a0f9a75c1a37288fa6c30f68990130f8adcadfc34b47550d604219ad1e7887777d48bb023000ff26c898352547608e1c7ac730c20bc8eef6161ea863ec3cdd5489b3e3b0f88d16bb7715597ab4fda6df62c911d28c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ad09d7b2b6df57b3b4cc564c5ec76a697fe928716a066faa5114ab1274ba2a054b46f35a07bf8748c1bc318a5aa53c002305e53e9354b7646b2611a2ef383686336c4dfe59c2c950a1aa2049c2e5d86ce11314e2b4ca492bf0b7fdf72d5004cb4b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301970e247c402fc00a42da5033eea73e99eb0d9e8b932ef651658f4b9c8f54c8888fc3dd0d5a9cd94d4fc089dfa64c0db02304475c321832d1f54d58b77c6cfb09e6ae8eb17b8dfbf26a58997078394cdb51317e6dc1f08f89047b65515120b4e5bc80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017c539b47a38e3fe934be0d735f90cc09ff788b42d8ad88ff007414906788c6c9e79c6431fa9989ab07ba358186f5e0202301e491c3b29b2165b72222c32f55b3c43c55ae345e1a2533c170822ccf779aa1d6fbfa9719dbed095e17a41ef47a44c730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d6ffc3af7f8d7af54e3ee9b40a807abe7bf1c42d519e481b2ab751a5d58f0fede462de90934383d91e41f54025302ad60230676709ea0d6b5ccc628dff59c7f00a20177092358050707d79f10e4cc7be6d053e84bbb0e15d51d4511b62566aeada570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023021a70ba90dd3934ce3216e8e0070346d5e9310808af129222db04e8b45d7f4497a13bbc6f66e9e0bb1c38af304f6f1b8023035261fd34f1493449315e854b8e5c8e11610dc6e876be0cae6e6e9dbc76834393b1bc25b3849bbf8f990dcf8368a05680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023014c8358a0413eed9ed6b1123b4734a3d405fa18048b1333595cb842112926a1867481e014b133ff01e87f4ca64c06d7702306e91d135bcd316105fb993e210d6a9ff48e01a4f6dffb78d97fb8635bec94bc1e40dbbba1322463bb0636af65b9393e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e2784ca80838d200637f96416b87a13e80e099f3516fe118cc49f5cae1bce33538dc5ac3801743c822401b1d72582e6702301a16faca3c24f0a5abfdcd08fe87efd35ffe12c9a08f184a71ab8781534d2173f91e30813b172bea5fd1b063c7e22be90302047c435bb500683066023100c97716b2794891d42eecb322ae9d15c729e7be48f7d798f62c77bd97c0744e44dea4a6994d1fbadfa17f26489c7e315e0231009ee9cc0022d30052ec60cfc58483e71abb7a83ae683f69fbdec48fd81ddaccd09edbf9064c0c6be909eac4f4225dbd8c0302047c435bb5006630640230018a78a5e8562e5eb8ee9c5324066640e04228d6a0aaa65b683956b6e3230a4ed6e6f5a1f63100ee02e5a2910e7bff22023024483ca5532276a4d29149a271454f6c42a8f3a943c3269239305806356429b0795969ca2d89b1eef9d1fe530a78cdf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307bd5026c0b4c53e886807f6b2fb15b54f3cde8cbd36f72dbae6a7b4124e30d20faaa30786f9dbbc13cd9a4a1324225b5023100f553ab3af40231cb535ad8d86708089c7f56a94a61f937ddf06799e5a7f5f8ed3365d0fafb467a1d22abdabaf1e760410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100df408a90740f6bd9d174c60c0c3c567205ede4fbe30cfd3e019f984e0738430320d4c34384e5b11f533c0d091f87e215023100a128b3347a75126b5febea2bad65a87a1e2d646b9a66e1109394103508a546e42155119c127b743a6f24c67ab4f4c39b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230397ab617852a1c473bd074feaebdab17f6448a690f7d0d8c4fba77b99e035ce51bab587f063468cf2c2d0a5bfe3b845a023100a955e14f4f5611af618335084f7d85eba6c5ea57a69e76fdda70fcd50211797b68aa13ceb0b903b537124e5717c19fe60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1bda4b27a6b65cd97909e5a639c875ed5c8c325180757f9a5d901102e84d0ffb8239496364fc9395b0cb7cc82dc784a0230488995a924d282a6e1add94ad2a9a6ce12d86fdfa218f74bfdb50e782349daa1ab6bf3d01929aad6a4a85b085f5c1cf90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d45522d259c1e86a400867a693b676c0d36ce71ec909a53ee97a16cd220b0c02d3bafef0b02c8e7690c15580b94d071e02300c1789649af1c477de7e0753f4d74776c3463761a74854d7b5ffeab993206961f96cc522aa3bedeb11c0ef09688865a80302047c435bb500673065023100d3bf36ac32bae2985ad6ee691cfda9e0074b058df19c3f10f6095b432587de04c2965cfc7aba481242dd065319fab96302302be98267102d966adae903404f15500b08e16aec8aaeb57539800bd9448ba6c95cc1ccdbd0e5b848afc58da92829d6600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230605f94fde9ee4e57797e56f8576560a7ce83336bef63344a022d744c6ec28f6d078d608d1c1cb4e4199fff44a39b1c100231009946e8f326a8e82d1b11335d27aa6bc4afacc37fc31fce0e451e754523f75dbf273ea2c60a6c6f627304e3406a79d1e00302047c435bb500683066023100ae9dcfe4ba71f21df7ee673fb63cb16226690318a8d86bfb6f603c75a5e0fddcf92cb8ee3f712ba1eefe64ead963b2f5023100c94799e1f5232d9338d9b1a9f1d3c0ace59d156e71741bce43dd43b4790f3034c8e27b22ee65a124d75f99067cfd4b1a0302047c435bb500663064023061e9330f5a0ddc09b46d6bd6ea6dc0299f7127f69fdbbffb65f8f651531b9065fa64d9696d37d26a86e925a587bdb1ad02304ca0dff435d7f73ed56e788518b41cc44ff89c1b84e0fd182d69894974af1a4ba79b0532202eacc4041ca6ecd87ef38f0302047c435bb50068306602310095cbb124d8c74b455d3e748dab152fce96f0b034ad6232fcd0dcfd8b2153adbd71ab8a2574cf0fa62fe5f756f1864a42023100a1807c3afa493fedc13bfb5939c96077bb0ec654aa5cf15f67652f38fd73487e322810b4ab8519aec1851cf2359b93de0302047c435bb500673065023100bf2a12d0640831dbf36fe1e08e413ecdc72a095706ad0a15dd0b10927e057d044ec4e44fe7c304a3ec9ea0b804911da1023032954f0a9700c46e6f1464cabb5578adf4f026983948c0f31fc27f690fe1f00e85c60f09378a99073169241ba1e054f80302047c435bb50066306402304f39363848a245e3201b973158a11a3e02bc8215a1508444a8522dbe5293847194fa14815b68d251a7286a8fe703c74f02304833c00725ebb2b597629bc3edc1c531cffefb7f6980cf059b6399e80db8027ea49912b7a3743cdeea8d61ca8b4bba4f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100965613117bfdae8d8c94c6339b1ad1956c06599b6e2a0e65e6bed5fe066b576abf251547eb5f96712f2d2cce370bca9a02302004f3264aa0321bfb3a0543951da66a54ca1f1b7b67d5f5f696e25d5c76c9650cbb4f2bd9b9204dd43c8484f6a19ccd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ff3b63a8459eee90196c4645d74bbb2c8eb9d0a74a4f94b546315ea49054da7d0a615146657bc8fcbc05fb441bb6e9e02303f26935c8c5a45b79825ea584cbd3677c09101245e915f886d5f070164b1b00d1a8ebf4c8efadc61ccc9381a365ee1f90302047c435bb500683066023100a87ce46c3f65ff47930d421cc02d40b94cd83abe8ac652256915e1983ff772444b36fa61470389407e8ea173820ed0c9023100a229d97cdeadc07eba67e2b1f75f14b0b87daf10332f64a30cd0a1380b2d8c005ad92b074ec15b64d6e06fd00478cec00302047c435bb500673065023100856a2d5b5c85ce196a6a12ab54cecac5d4539266fc18e8eb7c32b72bd0756a5c8964738984bf37d0f46bd277c36ac03702305d5b59ebf059dd4090ac126f79ccba07a7465779c5a5a738478dad1a4d020160ec3c4105dbbf0ea8916276f6dbf560790302047c435bb500683066023100afadf0547f11e56113e7d1f6ec6feab2dcbdedfb7c71fe8a9bd9c4b7f1de5a71f4c004f7b0c59c60ce740956aaa4dfec023100bf5a79eb028f1008b7f7f20e843b827c2cf338b919f607766bce7c77a0980c0bb05c9c2ff11559b0a05ae90731e866f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023072c5121adc11c2833b6b580d5bcb3c250cccdd42756835ff098aff7f0e205f8f687c12b3e6720484a70d026be7c0127002304b9867bb7cc900b47f1d0ef7834dbdde96aaad8361b12739c0b68f2c1252c8ebd17aba55e32a23807663d56944983a590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304148b6fbbb5810ae03bc558212c571f59ed662596b88b947ed40832b3c4747a21b685ae516852677e2699e580322a90e02302095bc92428a6654ff2a02ec2bc07e54ae84f9950424a0fc8aacae69bff08ef915ee128d7fc7fe37aa8c826dfbfcda740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009671a3d2311e5f3b496bb49a61755fe8cd26fb6c7ac71a2633b91868535343fa2e0b1956d775c362e21a8f4fa578bb7b0230653c1d170668f5965ce4976092531303975547623f98dc133d9945f3a9a0cba546d3e64f0a13f7b49776d67f84113a3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d0bbd83292a05d107889f884df5a22235e79a8f4fa36d3895353dfe1ccab45b2bc29b8525bdde33ed5f896b731a2140a023100869a113e42800f13e552f93b29d20d2b824a8ba95e43b8581bb0fdc472b65fa8b7349f5841461dac2d5ef0b7b233ef8a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023037777d9133c323a0ac2e60cf03be6c3078ed7946793e2dc89854fc246e5ba5831c504b3f3377f52d3ae61479ce3f5d1802310096efff89b67f9dc09f42fcdb2e423b88f4c116db382c7ef6233588b4d8301e94b8e718297161529c7b7e7afd1facbc330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023048ee8d77cd0ff5d840fef9c48eab17c1f1c3372be0fb5e97d1b0c0115f9f180defbcd0ecd9d4c3ca14c738dc1e688333023044a3ed613877fbd876f49c8c0d4235edfd05c19641a21dc851eb13b20662883f040103b36f61c6dee1d56e903711cd450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029f95ea98a083146d8f350c8965d1703150a76dabfe0e5d8918bcdae9d887d99cbb78876219bda861264bd3f740c61f4023100d3c0ea3e20536bc36cc6b104c7ba08717aaac3cfeffc12fa84c30248275d394e4698f4ce3e5c4172d31d8c5b8e7cfcdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c04c57ed528eb7cfec27d17dfe85b89257c26797eda7d0ac459409f80558bf35db890056df7a26c5971215d8aee747d102304a3ff0a7d4330f951ed6a45e9fb61d71ddf9a81c3818002e6d7c8d1bef92f1ae962f2f55179098378eb935995e28ee880302047c435bb500683066023100c471c051faf5074937cb63b3afcbbb68794585bb3a1bfdf552a87086ad465a9a97500a580cce5aa8528fe333357f25eb023100c3e72985526eb005422789b188fdf4ea81b1923d8396db8d81491fd8027dac2b7985dafb56a7b2958fae8dfc64f89b3e0302047c435bb50066306402305cba139205fb53a256a047c91c7290a42879c3186ffc5e020501803b76cfcfd605ccd7f39aa641ba58158346178ec12d02304f19d32c95fcc95e54ca6c417bb728b5f0d7dfb721f08f2ab1370ed42580a3338e04fb3fb298ad35cdb6e7710df0c81c0302047c435bb500673065023100a3fbd6126242abb1995f5b14a964f3d97e479879ffcbf467ef570f442ec9a8b7b4b634f6d5c2b8dabc210bafce68c1ff023015810a0c0b775730fd4348bd6075694ecb61a42cb3ef58ab76b2b2d5897d93a54bba10188acdae3f3022332eacb7c2a00302047c435bb500663064023008fa355918a9c3a54df571c1c21a69a161409ec2f00c9402ffdb825b39f1b76c660b243c607b4e80bc071706d801bda60230384e2f1e4364c34618c8f127425c13520127bc5349980e5535157a36383b2ef8b265383154a3421b280cea7277eb75d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013b9502d49175917400ed4d95d1297a4b1d56905aa4a3d9d4b67920564f6d5a2aea69a943950fb43cce88a162fd8571402310080b3e9544212a543deed0f9aafb66ab43c06e262b14de3626c60ccce5072e8732e743e0e6a659eff50e7bdc76015b0590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023005b0145a2f83ca14a125e80ff6fdce79ffe15705b7036f434ba9dfc531c7281428d4270b8c9251825ec53f1ccd081fcc023100a27a0961f878eea5668f8f460de94eb2ab7411155ebf4f64944ac60b58dcf46821639a69822a5328d45955dd396c179b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b7eaf1f83b3310530eda5eebf2383298eeb3f54d1a45bed73ee0fe6465c0de038918e308c4c755dddd3dfc10411925f02304d2ae1d3cb1acea9f077c21d0b5a5420058e705f04430d2da98f58bf3efeda18f1644a948d636c1699a1b4d98e42abae0302047c435bb500673065023046b246cec645a28ec2328679b52d0bee437422cba0e0556ffc77a0c1a34bbf51d9e43a715686d727f6114f6302ae66e6023100f02d50b0c0de8d6c265667ead9995209023ef94591d5c6b56de00e2d7de26c5059123513bb5167047128c0241c7a9cda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009390e8ffabce4eff7f30d59ff03fd377f05009c401bcd5968d1d6e87667b989b1172a9f2d38f5dfaac4dd0fe8d7a5e25023100a00ad52ba9a9f36cde241b599a5a89d4c812f3ed3eb8b8578b300cb9ee4241d6e682c895afa4759922a932f1c52bbd120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042332749d7b299f0b08fdfb390ec714d81aa77c94c509d4278484538e8a6346329f3f8b979c2b570c79e91b6851c96270231008910521e6fcdd546d0a5e34182b8d7d76de54236d569d64a0fe9300a1bc54c4840747ad8b2e014a7cd6830f4b78d00110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ba8febc3e37439911c0629d659c4d5ac5c3e70d82439ef6a39f97f09747f03016106e07a5c5f083750d7e387e5abffa3023064c3d3e7e568e125a8dcc790829c4faf18406385270ad1bdb7433a91856862fd5716a639f0ea85c6bfe8d55b6819ff240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060b273a5795d1174326dff586a861bca549e7ea1ff5d998cf856ba48f158dff5f90815a57f5056939eb856038af122d502307933decdf81bedfb5ef77cff32d4133b7678237f87e08c3b0e58c083fc11af752533cd0af73c128dca8d5799e5b5aa020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd45f140df5b3889077cae5b108cac37961f667cf3d1cfa3241c6b930fd8a2c6120bb36e30ca6a85fa0551e6b642f5f8023024cb9792478cc697b6a18031839cbe230196b479a13e74a91a44bd5f9be524b88f4e06cd765d5aea235906e1fcc00b050302047c435bb500663064022f0f27a86d753de6ed229330371fb89f896f5b493c1d45e5f1f57295232591bc85d9700497ff4d09203fd8551d207412023100ce90a30dfa86056d1e2fd47ce093bec0bff1a8f76b489756af8024794e75decaf15adb6199a4218c4efda217da098f0b0302047c435bb5006730650230575814ffecfcb1b2b81fb2c8e3a78acec94cdffd9826e9f8615d42256e3db10f9a2ac5ea887a2cf6301a65fffed1b947023100b11fb44b491b7cadd6c888b9025d53adfeefac66470355d21d1e5799129956552ad06ffba0681f24570aededc593e4d30302047c435bb50066306402307cf8c8a61a3bb1caf2493f18694bccf586e0578cec2cc37642c39d7c0c59a2e2ca78fd3390c0a01314e29923730c39b202307049a5de91c185a61ef1294280f45b2cfd40ac41e4fbeaa11870bd8ba870e953e6d5e30836e86a849d4afe4eda90b05c0302047c435bb500673065023100b411fb8a6bceab5ced2fb79f5790025ef4f3d9b72d41c8a5ba7f40a59eae0823f8472d4ff32aa753d8e0817c6dbdad8b023024505e752bf2f99d1e48824c14aa42d0b27cb122f1c74fdbcd013bf7fbff8643c5e753e60b9042228e97a8a11f35d35e0302047c435bb50067306502310081bab4659c03fb9d68c8b2dcaeac780cc5d553f484207bc2e0c501bc5982f5aeff13d7e9d1ba8dce6cfcc183338e7479023003b1b760d6e00058be2b89c583f75e8b16c5ea90a122658a2ede9adc7c703dac2a44879bb2f5feb9866381bcab6641990302047c435bb50067306502310093992c4594cb14057a1a88ab3ca813aeac6ea15b1c64f3fff8484ccc3383f61e1a750be6c028d1ed18c20e4bb83ab1d3023025221d6bf35ef954a25c2b153970b985924205671498c381cdb6597474fce3ed8648a7fcb206465338eac5f5ea95e53b0302047c435bb500673065023002c6e8219db6330d3063ecf281f80ae5988f477bb4fa95c5d429bec72d7497deeeae909d8695161aa09ea93da7804b20023100d489009ce839e0c40deda649bb5e093c0e2c49c640062492229b6173c7a01dc2f3ae8804191203f3e1e93217f56c07bb0302047c435bb500683066023100d50f0b5f4d8b3dc6a157f57c4ba8902e3ee9d2093591937c26651ceab0ab45ac1e063184df1c460edc74a2064b90bfce023100b0c68d20c38c4be0177ed9da4edd1cd0538fb375189a649b54297e34c0feac52cc371ba4c9accdb96c004371d9db4cb00302047c435bb500683066023100c9b94b1d73cb1c62fb565b0dcb1f4771ac44248b1f56c820f0c12b2ce825c6de07dcfcb7cbcb85de481dd39abbbd3b2102310084af748b786ad5e3f695bce9520ca13100405f20c5e2a8d2c7570d420ef4adb2964d73716f74af1a65a26d3846e515fe0302047c435bb500673065023100c907d56ec339ca11b9c7a5f49a18e036b185a47454029d9032deecbce20a3fddf4393ee0c42fd894c033f96b0ab2f9020230647153cd44618f7842985277b73a37ac48a9f05c579bc8db821fb082101cfc99c78646f41bec7ce0cce5dab3756a9c6c0302047c435bb5006630640230359e532b29fc3906190703d8a52d31ee75ec50a84a61a8ba8a44b966d79ea33affa86e8e6640dc52204693cf816823a00230133fedc33f34eada615d2629b9ea8265d0f6d413ed3d1165c188a7df19a9a0cac7556d22fd7d0daddd6f9119afda6dcd0302047c435bb500683066023100de906f3d69fbfc85f69765f525d3ccba085d3c78e29ca8ce19852f611499acbf2e8417699c20797d475ca0c0ab315748023100dc34946ed053cba119fd263fe90db329987f2fac6dcdafd34f5b1954b99de03eaa9b878e8dfa074e46f51ce2d3de8c9f0302047c435bb500663064023059e84b9a470e8c153174c5ee6019ec818e48b3244748d79ec7bf1740b59361a472e9e5dc1464ada4f75d62850f3de6f002302e61a05e85cb314f52793783479af514559b609356c2695ab906ffa32f45151ebcf98e5a671d4ced4af1e7a3fb5003d00302047c435bb50067306502302daba70bc781a941f4ea4ddb704c32b715ac0757c62cf72d321b3a87c11a485be229ed56439347c1006b310b0f692837023100ef024b905b19e66a7c9e59ebcad14b65c426d623ae79a77d109f83ad1c7eb0597ff8ac59b95bf84d1abc77bfb470d19d0302047c435bb50066306402302ce8fe9b5c323e61e8e5ced770f46b8abc5be552c11874f4cc4ca1fce2b204c18bf555aba5d8f4339c8ce8809ebe8ec002301685265c7728a0022de1cfcce0bf4e76049a790e391279d0f04ef72c4eb28e46d176ecdc0a5bd5d42440d8d516b7c8c20302047c435bb500683066023100bed4023c7604fadf7bd49e6b18f22fb6bfa09280aae9e813e375a050635e39c9af4112dd1af85520967d4fec5c5ea068023100b73a74baf1695b82c747c154d06fed3689ca34f5b4a3895f5cf47eff81b629d3789b0ea8aeb05481658e72a0f627337a0302047c435bb500673065023100fdd6cd5a612f56b4143dc205f0d67477da7b0dba28ac3b8873bcd6b83ab7d0e8cb0880d9a55f53aa1ad5928bf68cf6800230137f9d7046e743f0eba132071e9722ae8c56caac02aad6119c230ca695ed50bea6a8a52980df9820b822c8b2d20007d00302047c435bb500683066023100fa93faaf94c7778c6ce18d06a2172464166a9103b923b24669fcc4c5558c4f6998b27d7448043fdbe936cdce8c49d75c023100fb95c6f21108e2ab2a9762a5b99db4b8a1564136d3c52d1dee121e99270abdc7a001fd949ecabc01ccddd0c6feb44efd0302047c435bb500683066023100fcb2bd20e21d30b814568bb2728d21e5f0914b409642c5a2a468d9883e64927630d188cbd6482f894477fc76db37df7f023100b1216986d1991ad478cb2085c26d80c83067c463edcae915566789f1d6327a1d891d80fcdd371ade017964bfdc8132960302047c435bb500663064023005d2c53ad0d9bab680f46627f9a332430e37c628054f1237cec4621428607a9a6b38588c335c3959d29ca7192363567902304755f082bbe900e9de9e4ee391d22f9bfe9790e26cbe107ebfbba313cce2f9bc791959c5ae1c92e5d797958cf44fee410302047c435bb500683066023100bd47ea2cae4adbfedc2b2533acaa2407183e50e17251721a27cc3d1be6dd7ae3a312f4f0e107a20acaea9503ee873032023100c75f77672186e18b2220d3516964a868e7d3c6987b0e698faa6168da71edca508dae3dd17e93f99276ed91109eec37710302047c435bb500673065023019da897d178d1938151a4a7d5aa2989d6297a8cc327be66600b36782240a3dd2475a6321b6fe0c06240d26b647e94d2f023100e70f04425fdb856ab6c79b444e92b6a8258f3861030ad8ebe46fea1c0aa5ddedb2e6870c2430a581a9b3f6b6a2cb17640302047c435bb50067306502310092608355d6739692d233f25cee01a3a7b7a014eb27549133d17d19f87ec8e2fe94e002a563c4b7f2548ecf60740fec9402306650f7dc81bb47c929262c2df45efe7ac221976bdea54c54efc7045841e0480046cc513cb0e304c1a316e7dd36635e5d0302047c435bb500663064023049a77f42cc4093a4c88c14fb1fb97782dba3b40b838ff62a66f14ff69d293fc5db0399f1574b0e15704b5adb33d48380023056bba6e91534eb25dd1327c68535f4e19dd2e931a2d58754e4ad2428fa55d266b327f032ad6a93bb8ab71b5408da7d610302047c435bb50066306402307c540c3c328160ead074c978b1731ab0a67322e543f89b2c31e975db17c4c1eef7fc4734dd06550e1f49112aca040036023049803fd7e8bdd1444b824d263b735d32fd3aed99438822321910815cc8638fd6e520cb6e49501503cc3328f1f555404a0302047c435bb5006830660231009aced502e64d5cc7a6d793d914912f2e3e7c48f7d74522cc2230daee7bcdd9902912d5c38c5fabd9dbdd9aa13fdd78c1023100960af21c9b82dd5884541091b3ecc417ca71311b5d35bb3ec4ca4e96e43989673b74d217d7ea627d814969f3cebb8d5e0302047c435bb500663064023033003f5a884ff0a7345821141d6b74275238bf4b3d18685ac06329c6b60286767f52caae483407dffea05e9bd54cf3bb02303ad2bab91985e6cffb4d4c310de5e805dbebaecc7ec9d438eb5eb89b77e6e98e7d886f3a571f05201c192c9ac63a82e70302047c435bb500673065023030784791fbb48b5a82ce1c432781ff1a19f54018209dae9c657a4c9af545520b932368a15b72c0a48c4c77d14cf2cb7e023100eed5f0517150de7424376967ce5bfb57519f199edff4689efebb63644b53dd522fa653e8ff4a1a1e5bc7f13a90103d7c0302047c435bb50066306402302e2bc18e58757a3e5b5b9211bbc9cecde72cbe1874013d3edd411f20ce5550f19814cc16ee31617d0de40127c94ac93e0230043aed50bb0cb6a1efdaeb26832cf5bfab263a8078204d4138c09b5fbce834702995c78619a6cd02d11fcba3cc28acf30302047c435bb50066306402303e09fca1bb5a1bd735232a48bc53f71b4cb22a429d4c9bbfc1d19906ea0d6df98ad3d8b3b1c86ff57ffce9ec906feb2f02302908d08199d56ea973e527d01cde8b3d726231ab38a43a66ceb324a9d5fe9d42a2a4e475ab827f190571f564290081050302047c435bb500673065023100f1fe8e34400b8c97fd368a225bba6d58cef2eebcb8efeeadb0012ab8ad1c1fcd3c8ac20451f01197eeb11b9af19158710230791c5e9b1d1b9604adb8f6029bf8a1abe0c63c69e2f756a90c641992ffdf359ec9ece5c7d5ec7dbc9733304d870b180e0302047c435bb500663064023060042ea4ebd97d0ce1d7ef30b39285a9f12f706fd5719a6beb506f35c17e2b0da6637a6834d47047e2f89037367c1ccf02305e86cc4da49a842fe0095d6e2219e0300b3ebf2e48d221d2426e91aa0245192daab97b529bd1d448ff487a8a8f50f7d30302047c435bb500683066023100888b84d9280ca384f9df1744a98b68ce45bf69affe6d92c7c50b7ed101b5a1546e2e72d68ffdded56359f3e935d1fb36023100a4dec2229ab198d31dc85a01ec0caa6bbd6443270cb4aee7eb754afd7a360cb1753286ec999b47d4ba57fe6ec572aecc0302047c435bb500663064023040d63af754339b53281fa2a7ec1cb4defd33deeb985b0db219d47deb5c24e64b96314bbf892d0a743c61fd9f195d693702305582d806f5be5ab8275c6b7789820bc207441b8b0859a1151c4f7198f50f7663b775fd77d00df5937a6ad439cacb1f470302047c435bb50068306602310094aa754f5871546588e45afdd913f6628ec1942506e0a2ae5901452aa90101d5e185abb613de7396528d38b48608290b023100ffa0fc6374b4d81e6876c878e71a6b75a5042c38c600482ae687eaf34f5714cc1b1d63ce45b33a8be8b48313f35746400302047c435bb5006730650230426c82d6f8c5c65dc53498c11e9392353d49650537b3f2196a33f3c69b4b66251e1f8bd2ce109433d466df0665b4246a023100b20a7c066cf62126d3d6072dda6dca442a155da2b6c0a57c042b5f56c13436bf5115bb8ac3c15d772eb5acf93e86d13b0302047c435bb500673065023100e172cf05b8cd709b878f64093fbda3bb3ebf768afd4fb58b100074b8145fed190bb456ccfcc93463d86cb85e4944350f023030c570c7c83d0b93cf8389e097cb507fa7b1835f9342d1eb80875a18279e60a9f0d8e3193001bd0569d3d304734bfca10302047c435bb500663064023007178dec9b607555047c572425c0633031211c9751ce7842d7032ae82c6c739d7a5674d9613742b5e24c21fbee44101102305828522044f6b371e6bf154f51cd8f1e6c01340db7d49957e806cc74904f9318b64cd8516cbf7feea17c79b2dd7386060302047c435bb50067306502307faf84b3cbd33cc30d8ccddd8311f37b092d5129847565e6679d7a33e2df1ba2e0ea4dac295f597c45b31fba4709e1fe023100efaec67d411bbebfc6f74ae388da0a6fff847b4fba3db3517964fedd86eeb8253fe0afa30f1b32aab4d48b71fa4656b90302047c435bb5006630640230493312cb5e712642bb80911276c75fba9bcdfc73fcc72c80c3e5bd7bdf359e86f4756698e37e78ba4912766d81e65f90023005740e43848f7824666692ca697d4f70ae45ee8d2e68bab013709d95e991b19ac0ce07bb22278f3ad84d22f18e48ecc20302047c435bb500673065023100e364d31472cb2b8bf9c8c6d3e209c74b9f47ab98773a2df7bced585f745f3caec92206548de06773bd7dd5924820d46a023064ff5885f57d2f4ad8d77905a69e01eead53fd092e4e5f6a214e854b56f42f4065aa80f756e158d1af4e75a64ca721610302047c435bb500673065023100b7593bcd8c8605e66d8cdec87d249f9d9c805e2117d268e1fa77036407b7f02f34707bd8b8dade6c9435f1a92045391502300b336773102617819774b6e6be48ca1469c71c3875eef64d7476195f4ff33c919bd7f78211cd6072611a8847cbd78ddf0302047c435bb5006730650230066ec46361eec3ea995e114bb1d46791f59ea992aa1cc11876c04546b11a6fb2f83d2ed30c5a3c983a41846c24770499023100b34fb2cfee70c21ec95cf41220053f6bb2e1f761139fd8fe826e23b882de3401b89e3211666d974d56687538a280ca770302047c435bb500673065023100cc6f9c7d05e7075f592d294fb4fa0aff78b5163d18fde26ad7b9c9bb768da3d37017c7d64e43f64df6591975d631b9c602306ea1d38729030a41f95c652c5a46a27ad477780c63cf07da08e442e77f3274c1c06a133413c85d7863d5600b51b095f90302047c435bb50066306402307d2a2cb272a9a577ed6311dffb656861f50a4f92f8b8f708eecba22c14c258af2af26d54283b57130aad9cd6834d78ee023058ab1f99291a5dfc13694878180d317e5474267ea4dc7e104434a7c4c4a969d3d14dde4e60887ebc13321f2c9bd550f60302047c435bb50067306502304d1edb5bba33887a66cdfd1d16353a8b5a17e8bb48e0d01dbdcc2ea00f005dfa24564bb2f67a84041d31df46f5fa5802023100884557b1605cb6129078b8773fd18663deaff002cfdc8b5cb7cfae2b15041fb87e579ac873cc1c1c8a489291e9a70af00302047c435bb50067306502307be8dd7f0d11a62acdab3294f878523315c1cb1f34cf0910dec5985b4f8d4c93a8f368bd8274454c18e59e1e4dbf43de0231008a16361d0a995856e3b98c371788ff6e6adb6102a46b164458489c1cc5f301e66d9357fef143328028f1e4314f848b4e0302047c435bb50067306502300d977621a583c5c628a55de71fab5b439ca9d8c3ea63a74752bf3df67faf192d5d08e684097873fd9a1191ca234400ab0231008bb4d77c8a60ff21a2297bfca0ca47b0365e6a25cf923247bce3ca2d00f0aff78139e82d8425f3d95940e23bfca98fad0302047c435bb500673065023100949277195fb6243641ca1baa19832c9fda0af6811c1a87591ab9f1945a0245896db9f3fcf9149c8c671d228182bbb4ad02303535d1c2b768479bd0c9a38be506c504ab85b8377bed7253a45dabe8739def2fa734cfa2fd878e3d49a3abd4e6ff09980302047c435bb50067306502310092418376b3d6a43b51a5b3d46d13045465ad77b707780fdbfefc9d7f430d618c6fedbaddbb9620693098fd4ad920262d0230167ecf120898213c9d633ce204fa3666c4257af32aad0f9437668adcddeb3c862f6d47e39ef6c187119009cc1ec35a970302047c435bb500673065023100ce79f268ff766ecd76005e5575cfb4444a1d6aaecf4f6fc8e8ee0633becb0a99c4eaed358d4c7e6defc6a123f89a19e502300fc3253d94b306d061808917c0828666e30a1baa7ce7b803004bd8fa19447c56bd20eba9baa2557a8f96df5a8ae0e69d0302047c435bb50067306502301bf9246c8bc5193b4cffabd90c4cd993a9ad7e4171001406ff8cd8ca0b4ea7a7dd48c05fa3a8090dbb3c307055b6b382023100fe74408f38334ba5578a1845b9dfb3ac81f691afdd974a88d08903e86741ea72d99254039fa3a01c565d9d6a5691a81e0302047c435bb5006830660231008684020a47c21ec8723e7e711c35d76019b9c3f782034754eac15d2bf3096a4b637ebe1789e1e0df17cf3efbda15b92c023100d7c4ef3cbf3e22895ede73589f01207818faf1dad4fe3ac2182e2225a90a89d6c18700d8b669199be910d9ca27ab4bb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d3ed2cde34212f588e7dd055d2a7ecc0d48806ffea16a9b3ffebce259b69b2d264f6d919f25b346c766a925666ce6be702303075af36bc412befb746849e32ed7893849d7a115cd491533197c255638f956dbbea44b9b2458221e48d96858c5cc3440302047c435bb500663064023077ea0cad47e738feced7d6d28d1bbbc1c44df5d3358c33ec4dc4a1ee31cca0b547932bf0e50f104f5e52edaaac418fd3023069087e5ffd52cb3ef9a4fcbc38672d1511338b7f6bffedd0dfffd1b0953b1227979714764290bf833feb403d7a58cafc0302047c435bb50067306502307a5d6c9ff266e813a2b8b3331240ebc9cf8c601b3aa6cba59d09031d41df7cc06f4f243fea7b4b061d9d346fb0ef8933023100debd4b9f1a2ad935e6d9cef12c6d10bd45ff82aa2e500b5bf39bd73b6e196d27c71bc1c744c47e5267354016b7a798df0302047c435bb500683066023100d71b2fd75bc9501bf08ff93d7a61e3f38c966b5d27eb7fab890a44f6e9e661dd13f6ee0de7cd26708ea016435c5beebc023100cda4cc9688dd5f7ac49bf747802488d7d80b60e5a54b6421dda74c7d57c754aeba88bb44280641b9655690c4f6f856cb0302047c435bb500683066023100b67c162e9ddea63643e5c62a5575b569c51fc5b8c090cf68bcdb6ad649c2900ae28f48bb29dadefb9a9dce3f7e27276e0231009bf6c76e04a91c26504e767ff2223be89097264bdf92b1cca6a0313c9b8833490d55f9a2dee27e307fd09fb54994957c0302047c435bb500673065023100ced211b94c0a5efbf02cd8a862ba2abfd35baf2b435861571455430a0329abf289c86c602b08163fe01380e363ee5b1402303160afe342792f780ed7c1a6ede6fdfe189f28273c132ed890ca0653c84414ce4984a5e5dff2e2dc9c5529b8a6bf3cc50302047c435bb5006730650231008dd1a81c1d96bd9e2b29af13e41e7f0bee4bd6e10d33b8f78b1a666d65f0d9928bc04f464e25cb58d5ad7ab91ceeaa1f0230061b1c633a912ee9cf9a142ec5ecb0525830b5b487aad389ddaf6081de091409eb584cec56bc6d7b7820746a9029f3400302047c435bb500673065023047dabafdff239e02b9be9d45ea648ad668d680956ed776576568db1dfac656955e3c87a2cf503006b455d3789c8c99d6023100dbb72bf04372bb1ddffeaad18be7ca8d85bf1d7c5ceaa1ca43fc4aacfac501e3237b4def5283a145df0654f3633aead50302047c435bb50066306402302f77b81b514d8b36923355903f219e3230e8c1c815bd020d7b1749af40fa6ba78f8d78d618a9226dd3a9c479c8b6d2d602300f6656e38c00903b91a74aa92fd61e218c1eadc04485a614e0ad7861c7295cbd97a58fcbe4eb462e822e1741404b8f2f0302047c435bb50067306502306aed5d060e2a685eeab4f07ade3e7ec18dff959e1f37295a20b2cf1a56d3fbef0d56ca01f536a7eab7831428fef6c4a6023100c204b777174e491c7876b306f2d4ca3b2392f1f3f77d0c34118cb813b76e0646070d422e1690668eabc4d0b78f6d93560302047c435bb5006730650230494ab8c8f612987343709f6f3cae09eff2e2127221095731dad334cecb1a25cd7a01e17e4c693219acfb25539112cd70023100e747c534c297c5bab711245ab90d557e943e45b93e4b042e13748d12fdf416d987150fe49185ea4ad8a970bf42bf614d0302047c435bb500683066023100ac9eb7f99e13e40bc587f19e56285e5135986f1a948761b1378ef4c7623757d9dd77f0cb15dfb8493ab9476b3bce12a7023100f7dc955819de5a28ae4bae0227b3825e0f7f973b06d6829ab9d22dd84041abff1fdff1f0df0bbc3e42d0c3dbdd37fa420302047c435bb5006630640230097059049851af606959ae7cf42878cf2e7c9fa3de751b7fd0ecfee219a67b425f4f707f7053ed4c61be629a726a20650230485da12f648f5a8ed72fe25c77b7f9df3d27848e60347e5f46597ab9dd0168e5b9ba1f688784de6195525e518dfd9b240302047c435bb50067306502300c06e7f086be9eb0c1343b7dceab148d82ab1348e7e0bd750e94b133a8e0e7b5249ca7197b2f4f64c47f659747570ab80231008e0cc9dfcfd6df708dfdc42fb03f56282f04d0eaa3614b277a23bfb79d9e75968a43680acbabdeafa3621bf7eb5abdb30302047c435bb500663064023072594943a36bd689d4c1a7a537dbd22ecb1b8382fe5f35f8db16dca2f35d0841b053560cde3f1e1f083a9dccf87cf89902307b59d0c95ec186be0a089003e67fd4b7759e4ef8c370d8f395009e445542ef24189d112cbabf174ceddf12cddc8449fc0302047c435bb500673065023026f2f0bc7ca6969f5043e746e1df3002a3981fbd705a2af17fa51c85c9b86fb74877e5f8102adc0aa4be10ea80ad0a38023100c60f3d7f084dfe5fa2202f6249e94ba73d683c0c4f821867952b1672f68091bf02006f5a5e922c297b763d32497551e60302047c435bb500683066023100991bd095b8c62de9a12aa6ac8be4b480e9b734f5bc55d5689f18092d31b637ace9ca3118ae9bc93be11d0e5261f18188023100db60a447f895ef38a92c9b155ee3eb92a613e3035edd6868ad39f1694b4959fe93f9ea1f2828258f3fdb9f4720246de00302047c435bb500683066023100de7941c0302078075e7c0495d688388a56a403090574bc2aaea5b3d7d83327aa141d77863f537cebc2a274dd6e5b5bac023100b381eab17f99699c1067f685c7da1c23f1f4bbc9ee8968456993576e9c9378e0d0eb30136d65ff10e1da7238f4a361df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302de0fe5d75135d116f93c43cbe57669deaa7fbb169839871f9c60f659c71e4c6c674d5bff680bba699a8e9dde16a4b58023035e9a66eb3f08f79633851fd4f25549b7ae351fcded6e694a1a6db2b592df86f9a1958d49fac9bf0aabbf0fb4f7e43250302047c435bb500683066023100a6449d1fef9a14a0f9b88b80637312a6739387c60fa6e6274f00381d010dba29c5a3c3b0cba1b09df3bbc3090d919af0023100b354d73fc2beff7d47fd5d4501b0ef664a56640204761e59b40eebde004ccc706761013980c086934ed2f525dfbea6490302047c435bb500673065023036fe020b5dc08c62d8904e5d9be67485f9846a7a34c1e4564a62234b17889ba329b1df30695061a82982eccfbaa97be7023100d348a4b71523f3e7b183979be837fa5932e255a357d761ee3fc0d1ad1b5f288cfe5dae6234132a8dfb3172a4d10a8c350302047c435bb50066306402305ed5b5981188cfd65ad2ab857f8dec9aec01098363793c312bec9df557fbcb35d67a9df9680d84e2537067d6b270d96b02300a7ee2264ae14a33d3097ccad9486e04a6e0cfb8a157e5a4a90d8fbdc096db98edbc3c8831d552727f8bfd72d69c741c0302047c435bb50066306402306a4f77bb73bbd104b748a0de4a6d1b741d8256844c090fabc8bb1706b95989f8cbfb1e21039faafbe893d35c5ab59098023003c2e88fcc98f2085faa75db966341d7f43a62e247f9077ffd4b441516bcf695a534aa92bf9e4c9f50eb12ae9593dfa30302047c435bb5006630640230082ea5b1dd699030fc004be7a29fe34f5ae5529c62efab9853b5f180acd65e5de6860b3f5c9c703d08d9d0ae0ac0c77c02304e9ad8c15216029512a6ee1ebab26baf3c8aaeefa6d9d91d270a729ec1953ee4db188648a0c7636c9e75e49912c05cf50302047c435bb500683066023100ba82ea32bc734e2ee3a5e66c1dc599d5094bd8f1d89782af1f1fb6cf4edf2a43108071dd20d7f7e259875f5c629d4d82023100b51c88ffe33b96e0cacdfd083ff637d2417809fd2a49f2f52678201f4d3de23d64773c5e452f31d109b087e06bf361900302047c435bb50066306402305e775335c41c348f001217e836d75afeeee456e113b5af1230f256494f87471233eed359693e63546ca11c180d47e5f502300137220eff706ca6a6662ec36e9480900aab90cc7f36a821f7e4b5fb3775f765e3ea21d3ea6e036792ea582f3577ad5b0302047c435bb500673065023100ffac34dcdaf70498853a4f6171f0279ee22dfc7bf177f5aefb60ec3b3c65ae43e7c34f2b258d97098968969eb06749f702306a6c5419e4de3580a5d4d89cea82f13841a8599b5986a1126aa32ab852013303e2933d9378b5216e64017226346c99b00302047c435bb50067306502306b730e2ff5c6aca7bc188ba9648a394b68a55a98b3ad4940e8bc794929ff3765de44fc0f0f12657e3c938f878f8ac6b10231008a5f9e29166210eff615f56b376342b63b549f9183e5c7a76b7b6caff95e4f0b8e26636accb8d5277fd5b521e386b65f0302047c435bb500683066023100f254cf32cdc33839f4cd33fff6fd9c9b062b3c2c30a484a95bd45b21f6e9452d781ac35cce554aad18aca6c5c28be1a1023100f469ea69ce595600f86bc5352baeaa340a1e229593a59243de90e600637afd2d683ab30703de46247b7fb4f02adf970d0302047c435bb5006630640230654b18bbf0a39455ddcaa190f1b5483cff3de22883d4f65a28317e25dc0aae40dae8d87ba92a016130c3500f7a5a45d502303ab48c48a7b4af36a4feecd8f9e09ec459e9310dcf0f46b7520ef15afe33c224b0ae02f43825e653cd5f364a113f46360302047c435bb500663064023062c91fe1bf8a740583a47e455809bd29c163ece81132bcfad1c05688abd26bf0604d7a424a9280b6950d44a144c016260230063f959aa739494f588c151da025edb072c92bad756b4bb8c881a706dd93859ebc7069d633bf5f55731ddf3d5a8a1ea00302047c435bb500683066023100eba442c77cbb9116ef8283611c6fd58a1b8d0e0f8abf2fd381a4473eb919356ad702760a1dd06dac3aa9d4b5298c1b2802310098d7d2a346cf73757f8bdd4a999041a8861e160d9472fb0c399661be6d6eca709547076205054bee8ba804dc00dc80340302047c435bb500663064023075024d8f7f584549664f9f9a37231671dc8030e81a709f7ab07de5de8b32e804265e6ae995b0c9ba919b792ed9d190f002304c37fdc3640d1a1e79d0e91e780038cb60c9a1eb2962f2f49748e3c3487d0c75de9333f1d14ee21bf8a478c3383f3ba40302047c435bb500683066023100a68d8bcefff9d120bf431cc1e11ba5b67cc5330e0f874821c889ede81e16b474149179b6e2071850252d27d917beb5e9023100a804ee29e9d7f447ca26643bef0f20d8fe6b97a3dc32d8a31bbb1b1b96e2c6513e7704c300e2d50524ed3b25cd8f327e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306fcecd343ae9c2257ea95c6f059e7fad37c2f434a83fd2e90a826183c139286cfc6d1ee90e410c97c28711941e1b0aa402306022be6c954654c0a3ffd6089188efb0aaae3aec0a938bbdc9944fa8aa575e0c518f218509e7abd475c6a7ecd34a19bd0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502303910298d3396c91be140857e9cd1d098e0bb7807c2c27dc936abc96d1b5d6efd2aa83753550f8c1f1f25a8be1b5fb202023100b8d2e6e1daff4f11f0e22a7a1b24f141d30ceeeec4b042fa26c99d4f07a0619afdac2a7d4144e76e59a08140b502fa0b0302047c435bb500673065023100c165f007ddc09717b12e86ab77bfecb9fcdf8433dcfbda8da80a97592e0af068b801cd285f98d4d59d5d21f7f3c4bcf70230616b912411f81f2a75dcee216eaf713ed30b085d6b203b500dbb1699e8824f0d7ec8c31b355e2114161d8b268850ad360302047c435bb500673065023100d52fdd44685b1333980f4c110217a7b41e95d29319db89840394922c91dbba75ec59b3e042ba4354995c0ef767e6ef3402307b72e3e985220edd6c8bd954e123a47cd886b55715feaf087e07b882ac72b9284f07f159598a1e03acbb22a9d5827db40302047c435bb50066306402303b4bb7a4c5092edaaba501781438796d4daafe65c0386c97db05da30c7d7719c9f43e9d915efae8cd0b832cd22f4364f02304292d2cd2747c7433056bef17aeb32cde12c715aee2e6782420d0cf5413b13b2bebca4c3ebce80d146c5c363e087abb00302047c435bb500683066023100d725e6e6b10f6d942812564637c770f76f0d9296076be895ee98894e82dd5205b8c2f3a7292dfff05c8fadf105f32ae5023100e8c3edd89161883bfa74269089835c7a94b12c88ad08d4e1133c49c0dc7c34e9cd39817a4c019cd83c8a87a3c726bf6f0302047c435bb50067306502301f03ecbdda35c6cda5eccaccf3f41d239a0aac7fcbd42b9e66e14b86745dad71ed472bda8ed152be22c7801774a36f4f023100a3ca4443242656269ccc3fe8ae0bc3894c3b1f2be3f349f400d3289788abf9cb7febf8979e2651bf771aa85943d951780302047c435bb500673065023100f2c62fa73d90a4ffea999ce01876120ce33f102d56d8c515d123f61b5342c6ee8cc1031764c9f11f5f9c8f7e48d0b5f8023056c8fe69263af011b0e3e9eb8464cdbfe9e3aa74f53845121b938a3faa3b5e224c9566802474c340819e7a26fe9d367a0302047c435bb500673065023100d08995678e59c958b77af03b42d60c90bc31673aa75bc83f406ee6dcb176888a0fdfb0d13a3d9f9918cb3a5b9305b94e023051a982cf2c251764fe7051962c230b73b58d48348c0461e17b1c826400ba339e28de38156b64b515cae1f1cd5b645c410302047c435bb50067306502306b261c94759df64fd58f0a8ecdfab9df8ef81e9dc4f4f521eb1727c11abb7a58ed386c8298c53c177006aa13f3c52750023100a681322dc15430e5b192a5f43fc3565e4da28cd99f55f28c969e320ab1f74720c6279ce4c1676f09dc34d8452be374800302047c435bb500673065023100c98b71efac3977da200c42097e7e1ebe8eda6b9e3cebb0a087f14297943443ad3d5bea51595c6980560fb0a0de1f2da00230343ac4d88f465842f158219409c9432e541ed20110cc71afad0ba11cf00a900629529ff8929fd1e8614860b3752c9b380302047c435bb50067306502310083625d3f9d00032e813837ecc310ccd4944e1fa1f69ac8a63cbf8e6cf2c5bb99db289da5cae55f4228e69a9d9d12aed0023025590b11a0f599d38e464722030b665f75c00bc900c24fb5abe740bf443e724ac13905530404a1c1252e76c19c7e5c9a0302047c435bb500673065023024ac728d645d389a95c05ff4d12925421c9a6dd742030c3bedb993e6498a441a6d01b461bd12fb923b5e26ebe70701d3023100fc01073981687d8a5e45997831b9267bb504d8ccd88f3a9e260a96acd2403b22cad81320c5055e810d605062987c2e840302047c435bb5006730650231008812fd028b93db2580a3aaa9c3c71a242a754b78c244de7ccea76e22271e7db4cc6a2cdb556409b3092cc2d7badf820002302971f0d9c2f6d57209d9930fa42021291eb3677c0a0b720283ddd3079403236c7bc888ff0b723026e3bbc3dd8f33c48b0302047c435bb50066306402300250732c6b277e56b3c0a263d5f23750cf40dd488407df9a062ae709873bc35f951bddd95cda70e4227e803138534c4e023057503dea3934f7b5b3b933590f1712f41e40d89f768b512141e4f739c62d8dec5f6154dfd12ff3c2a3f4827eaf662da10302047c435bb50067306502305a84de781b49924d87beea655f6978e2ffc05d62e0dd672941bdf767289aa32409262a084fca1141a755ba5e5193739d023100eee763a0df9ad32d5fd8c84e7aa304b32e76822b3f3796281cd827d1e26c743ae13c8e9e98f9ae0536721797ca6ec8020302047c435bb50066306402305dbf802d7c95dcab8dc07198b50617beb3a794f8aa6d5d2d8375c31e6f110746387cc152f353132eb45e10de681884cc02301a4b77167e805928eee12885e392a86b997ab715bbb778cfd9de20ade93b9dda15a19fb44c56da5b5a23ff2fa381af9c0302047c435bb500673065023049f9602a7d8ee836ece123e5ed3d70d13a9eb462d401cf8ac5e8e919eb550674bf98377b152a2caf918fc43bc0a1a472023100d2f91dac21a3aca00996a6bf8bb414442e618f15e8e42e275d6588c881ecb5b33cddd962d0b7cedabd90d777823f70200302047c435bb500683066023100bb539abe6743a902816e495e48fb7fc52343c4a96455234c211b512b3d952eb0c1cc9147cc2f051784eaae4ce031d9d1023100897d1fe5b78c8e27f7bf61670c16e33105b79876bf0e9743a5fb2bfd086d457e2cdc7b64023d270ae5784af6fcfad8850302047c435bb5006730650230707b21a378a8cc4fb8831b4a28a235012c9d7b5f2c306ebed549414b10b50397f2f6542b003f92e1ab0feafbe5f9c2300231008daa172a2ab4890d4043c0576cfe9f2f5dc47b7961c3fd036c84057a8404202e9d4b5f319870b2617198a0dc87a66c4e0302047c435bb500683066023100d8aebbfd2722c11f5e041b3f04e6dff911c933f5242fc042bf4dbde1bdfcd6b88849cc15349ca8c5250f46b794699ce7023100fe63ac415e9beaf52b9aa6aa423ad32806d758f75d7153c9ac3a4e545d15a122439736db3ed62024c8a990c0fd7130f20302047c435bb500673065023100d27354241fd69787d2e020b041ebbb5ad4dccffaf2d8a22cfbcd946976f4cf47a84d9a75205e7a74b07746dcca0c7aa20230726b3d908ed3f6287037ada5f4613e24d7b9ff0523b26b91ef409f7d50b13c3d339fba44e3995a7f4a63f2eff9a193e40302047c435bb500673065023006dc5d0ae9b98d90605d6aa1d598df575fd89c01899062c9c73919d30de9e8aa128936cdc3ecf5ebc42bc743b099318f023100ea60ad89abad3dab67fe75e1dbc3cb6d1232591878a5d607a9f95c7debb2530287b726cdad1a7eb4f40b217cffab86590302047c435bb500683066023100dbe064ba4967635d30e3647c9d5eedfaadee06fda798b9e91ec35cebeb996c778896e24d41bbd49dbbdb0a3918f22dcc02310091a3c1449f64662c26bb568cd42fea766f5387e64759134b621cb6a7b0c04176eb286a37ee67b07c86c3baa03e31495f0302047c435bb500673065023100c84892242b36c4c7597e74e4f53b30d982e258bcc537cee5f3fa65a24bfb726d341ca24903946003d6349db7259f2f9f023052054de3afb14547b86f8a8392cf2dc43ac1ec1b79f15a08baad1ec01f26b0d1e493009cb1c9cfc5509fe2be4842705b0302047c435bb50067306502310086d9b29169be8ead309e624986db4a2cd80a07e6eba6d9d03b15062fed9e236d2c1b08d96d2461226de52b1558c7a62f0230433b99ca71e7a9cc5f306359e906b2f66409875afbe4a0f2ce32eea4746fb26bafac2a6cedc3c854b6bb1a5521daa6790302047c435bb500673065023100c6a48d989f60dcb0157686256e83625b9731c57ded6126d821d8acedb771ce1b8ee074e74c8b76a0a7591613e4cfec0f023038e91afbbce33f0d78c229b7878aa08ff68ebfbb64aae7f1f3dea0e4d4ada533275cc4aec07a94241d88687ebe94b65a0302047c435bb500683066023100f0d38887ac21d0f64c42b11219ee14f03cefea1fe663ac835664e6447ed0b81c86ab99402014ae1050fecf0f3acc2b86023100d6263b39604bf23f2bad5824d754c8dce407f542de612eae1b12e90109f5697d836f9a567c000de330a58b27907d5d230302047c435bb500683066023100c702389fdb9ca68da22b1710704f9107a778e615ec5676da38bcc6c1000a972d15c9feb883ab99195267f33b414cb2270231008992c7cdde6c9d615df6c6b07ed80b0d648fff538d2faf828b7a7c2de3c2dbfe224ab91b86f116a1efd5a796487312e80302047c435bb500663064023071cbdf82a06214ef131c9dcebdde78e8f92bc1ca9a3d0eed93ab2eada28c6276098e7a3a3ea3575811aea3d4f87d6a2b02300de80bf2770ec1eda8092119a2d37e5856192ed28943707995cade62ad08278bafe40fef5b109cd6e800da6b190d6dc00302047c435bb500673065023100890efa3f95ff19bc9b06bd304b0c157992442771d7a61573f23cc21862b28cb8259eefaf82eab77b99e69c36e7b9f2e502306af2d788cae912b88ebd5e70becee30bf01a724602d028475e7f879db0767b79dc7c18775be8a80e30e2e720433bf6a80302047c435bb50066306402304905a8e459f082052fe3f6f0486fc831d3e11a68e6a8b83df24c8ea00571394da8cc15433863ad9a90241be8c5a5f541023035396146f79c39425cbf28dba1cc076ca78d02c768b89d0ecfd959b28c7d22e3d6c680b215135650aa3684c96d7480e40302047c435bb500683066023100b809bcc3f0ffddb946c29f8253e636d468c92816525712c2a60e5d5ec186af164df12db45b8dbc3669a1984ce4d5bf3d0231008bd626c79591410fd844190c682ec96da1a3ffe168a72b5f5295a423b704a2764135b35d37ea39e80f4c955ff4fc83ef0302047c435bb50066306402303a9610ab0da4cf0b3154d6cfaab0cf085faede5542e5505d41e5ce7e6b9681bb543663a0373921d33aa595a2d99dda2b02300fd5bfe2e3965dfc9875034cbd41ca3aa9f4b5b0a2dd5ce455bdba769b603eefbc2ea802a75020acf95c84ad17a115d20302047c435bb50068306602310084e63f504fe1714a254f7ece761509aca28e5e3849c129691e0a55915488cc3c08477dda80a5184a660aa8593258b764023100c051a59d8cecec4002ba5ba7f06f01f1cc88db075d3f876d5e18698ff4105e3173e16ef88f95c0f76c949857abd1029b0302047c435bb500673065023100d6d972eaa62417c84920f325fb50f8ceb1dcbbc6d5eaba473139fa38e00573140cd38d25bc9f797a0bd909d37597e1bf02302b57117a5c5e6731bf5e471801b82b39765c0fc5c9fb32ee4e4672bee5c4fbbfee60922a8418d8f5e2db32c61dc618cf0302047c435bb500673065023100b50c168a4cc42635745bd87ae24b5d5d110ba0836c0f415781730a580c35574a69147b9757047b94dd554c3b611e3dea02307489a1b1895b5ff056c3c603330cd814c26c943da4b56ed1afa4b9d17e04a336283ddae55e0e8f1bcdf32c7cc166feae0302047c435bb50067306502304fff29d5755a4dccfea4ed359bbfc3b03b8a65d590e73dbcaa9e7462dd25d7deade1c5060483e88d7fa98ddece39d32c0231009df9f564273d90d6000ad6d55d08cddd1549c0ba64571fda5273dfd90afe93cbe37b44671c84f2d28f36ca2cc467c07d0302047c435bb500683066023100ffef70a9f400a035ca8528e68c35b700cb8e867696412f6897c0d14577750fe335be924508374865e69dabb5041c627c023100cb2a621702bb3d24b5adda31d38aad3b15525b5b8bbc27d5ce7eb940e1437a04b9c83afcc04d807bd5e14ee4d56156380302047c435bb500663064023013aa8007a3a6f0b051d47997929165adcff128682605e5bb8603fcabd58dcd28a2e2189bbf2dfae7b49188fdcf9c10bc02301b0ff3e74f36c710d7af23e9fa2755507fb1d19cd0ecc97192d16dd8972ea6d6e8092cbe2c36b761c1f19210bcc1668f0302047c435bb500663064023031fb7539e91ddfccc9ed3117b13305d06fe6e26313c8cd8079dc13485307c51b26140c07fed377f49185c3aea0e78034023030893107e52018d71070830da909c03cba99db7b1ac3d3c242bed61beed79ca10e4acf42c1c0e0002210c5d167dc48600302047c435bb5006730650230401e56679de5ed8e1809656f319865a29177f5020cfb1418cfe1b5341cce0067beaab38a4281b1e0c207ea6ea67fa3ba023100bb904904c1bdd023ef9bee84b4f8164af2756deb7883cf86b176127f9fa16095736a16d059d2675834a87e8f3264b83d0302047c435bb500683066023100a2d9aa74dd46ef2bd3b77818210fb0fa5ec0c8a470eb2dd5cedf3757fd451439537d2c5b0c1f292bb6fc86e0879975d9023100e67c935d7287420940873a2ba837fd9c5edf0c9ef17fa35b0df0daac73766f0fe65e8d6f9a2f5d480e1ad51824aa27f80302047c435bb5006630640230418a261897b44b4b4939de521e66f9a01879845c236b954711ab381e3440670c6a11a2f34be9737166e3083a4c1dabed02305bcd908eb174345e6b32219d75bcfb28c4166cdbc8e96bec9ef9e47bd545b691b17bf08c6b3ff582b183b015c6a882ac0302047c435bb50066306402302902a8bd4fd1c38755b6d3c8787bd8e06d2e297720bcb44754eea363ba82ae408870de1ff20e7f5c66d3a868a92be636023054fbe68b5d6d19eafd6ed9b9d7181a7fb3f7fe866805a123f5c67963f1368c1f00050fc9bc78bc4222467f6d7e4927c90302047c435bb500663064023039a2a8820ceb689086fe96d17214436f139f2dbc5e72c1e5032a56ad776599bd017ad54618499e9ef4b38004e4afc313023074daa2dd7acf9c5ada46cabbd6c956d4ccfc5e0aaff5df811a74530465078da80e6c1cccc0620e698bd0f0c4601474500302047c435bb500673065023100abe6f1305a258108083cd406ceec2a4ace81345e127be2d3d96f466b2222eb0d5ebd8ba4089e46ffad42e20cb41b678d02300dfafe9168dcd9904d6f3111f1e89795ab74ce801f0f024259f9d2a8107f365ce44cc2bea0ce1c874fcbd330ca08eb520302047c435bb500673065023004aaf1e97a9e4ec0b1a833d99c60db1b970c48c964a7294691454869bdd2208403471975eb7e1a3c7074c0935e3244d9023100b104f4e3b2b390468c1c00cd619975f4dcd82395b3e10328fe9c8732d0ac5b55ea7fa2692dfd8384167bf22bba09e0e10302047c435bb500673065023100b6148a5a2148ca8e9653e3715160953718734525c2295162cd9e706fff97c187efccd5167d7260bc984e92a08148ad4a02304bc2a8f6711cb5c2727ea510c26c1e3e6b570aae20cb6d91d274496afcf52d2d2a8e5181e4dd2c2f08ca401442618b3c0302047c435bb500673065023064a3eefafb845da887728c992fe1795a88b310090b0ea8482a0c96bb5bf09e0caecdf918b5310293eb8f1708f54442f9023100e9dd98348206ac553bd93e4b0852815d55498a06152c4cdef16e81a258dc3b01392cf986ece2e71e4aca4462e0ccee9d0302047c435bb500663064023015a698c3607e57de0f089946541a7044140bedde073fe8fba6101eec5a5f644f8effd838f2cc7749c80c7569c79d1423023049b85b683298dc308a74615e6e3cfe8160a75529f7c247004e16ac1888eb9310e3bcee760eb70a1dd12ffb72fae0d8e30302047c435bb500673065023032e591250f1deaa0d1f5ff8d5288b10c05b5525cd9855ee4cceb3168b47e63debbe77d3787b56690eaed4373740099480231008047dfee7a8fc9da635bb6450c922b6525fe7d4eae46d559b1a2eb1a0e8b408de9c48449faf3a0848e086e5f2ba748c80302047c435bb500673065023100a8606d21cec480adec7b3aff69221fabb5bb9dab416545f8940d1b49d6be3f6244cad4640b5a09e85139a7c9775e879102303979d9b412a7a9dee71f302de8111e99bfe7c8af108fb36282969ffb3cc70cf91bb51edb2a3a359e7ba1213fb59b177f0302047c435bb500663064023028ea9ea2be51d1ef94e81e67c3f29fd4b3c2620f8c4e7d5834aa18ce6e9c4f512e0bbc55b224c2b9e43948d2babca1f802301e4d4be3a8b85c781ca3ac5ad0c5eb8f2c14e1e510829f7866d4a57a78be075b7d0aab1b06ef710a2a5efdc61bb7683c0302047c435bb50066306402303c22ee97b8e6a3f24836efcdb89dd78e8c68d358d5d46cc93a15bcdfb7405b40e9749d334f4e8fb4c54cb1fc37c274e3023017dd3f952853e4a12dcd6fd222f31a12bdd599238208920dff40a7a08d6dee005f79f45a7f2b84c9e7e5e4224a4782250302047c435bb5006630640230462fb23eefc3b66733bd2edd1e98a353ac46659c4d3eb1fe8271ae804c661324a348ed34a5f7755bc3b0358253da2de2023073c936c3d7bb80f0e5a4246f7a2e8440952ca88cab723f4da593b94822c482a0a0acd1551becff2176947b31cc8bf0ea0302047c435bb500683066023100aaeb3a7fcd5e02848d1e97c3bd6b59564ebfc846c6ff4686951f766e51012b8dd9e6f47683cd4d18fde7f31117ee10a1023100bbcfc9ec685e99ed47c001b5509d86b59be7dfe5919c97caf0b32842d2b4e8c6fc8d323505b7d5b90dca15d38d6318800302047c435bb500683066023100d970aa4148324fcbc0ecdc431bf5ab42658492e887042e7bd6a1a70cfe6b5c228bc000672ad26a15c4c4abaab43395c3023100f33474592790508ac839ff399a40bf1364b9515e4a2d59635bb999e263de4207448f190ae7eee40cc127dbe4da4b4d4c0302047c435bb50067306502310099e1a95b70db351fb2f739bdf8b15d388beecbc31432bc59ee8427a09eb00a4a1223d44abff414b582a8b09e37aaeaba023065628eb81565f88289f2fb78d3a74815d0374c6f9ad6b4e6ab15124af56f9faa727ed9abce77f2cfa224b9617445f7f20302047c435bb50067306502302b1d66c670a36dcb3302b3ab86f20d038e68b87289ad9fe0620e97826f38e2ea66d6c186a1134468ea13b2b55a446be7023100d80f63bb93c6e0f5e6e9004c5f65971c844b0769e831483c72df0de1376fbef5739e2fbcb861cdc85c7e5cca7a19b17e0302047c435bb50068306602310093130b588843e6717628733980f501139b7d3127c12ca03910f207824b0b9d89c0a33b4d01bd430be61ebc78f897df71023100d234b7d4f63ce7e643a8bed5e884c81df80b0279fda07ee0bc8d2921bb2baff57d53d9a2b6517fec7e076061a4cb49490302047c435bb500673065023100f310908174c90413ad14e861f0b43df135bdfd40374785da4a70bd069c13d6494056b00df3d7f2074ca693acfddf951302301db8404319c2cf7e6c45dc54185e4ce66c3b86fe17f8d3f0eca97e76a2cff5a74d73033f8822919efae9db580d53a1e40302047c435bb500673065023003a844b4bddd1d6c937c558e565c9ea09a6cbe28818f47523f3376aafb745ccca06d1f2707fc74ccf4a1e686e25ca37d023100d4f4c98357d79282a4522a0d6876cfcb9cfa1150e92da7330efe8d93496f580ebf28b70f94c9537bc6ca22da65b9c1520302047c435bb500673065023100eaf5e61b03137a545572255a849914b630302b3dc997c2548ca6f62a5f8495a9f4aab164b8df4aa5d3e81afb8ee9faca023063ae32ffb996c1de66d79e560788e9fda13d40518ff892453da615fa8fb7ec00214617a7765d19634818547ebc18a4a80302047c435bb50067306502302d17390685c9a76540242f860ef262d36dc6605ec71cba7ca16eace828e7052a3a1fea15ceeb1b5a4e3b0a8b1cdef82c023100ad25c17e61f08e8e4a508aa5d9c56cce1385a2b9d5667f2f0f537d62626136747ab3d1a750399faf8cf3672404d2cb2f0302047c435bb500673065023100a5a2ca7c9ba44ecfd841553672a34e2d5dd4051abd160ddf6a6f28012789cd08b2588fd079818980213f7af62e66ac960230574a9d8efa507c98f6cfcdc8d20aee8656b26bd48da1522dea99a6797a90e7fc81f21c9867b4ec1cfafe1c55ea9cc2300302047c435bb5006830660231009042fd159f2e33766a791e6fc013e6b80b978c52564c676fc3a0515648580dbb33fd03d99be6ac1f8f0d94a48390221402310081c01958d94c56bc763abffb3c5a92cd1d62fcc2ac0387b78352e3d4f137269cb8adcffcfad913fb2b14d6516d6731710302047c435bb500683066023100acef81d397ba535869be4b6c16385a587cfb5eb2adf2e564a49731ef1a31bab33efaaa20b2d632cb7a91b41b78d875310231009f579c6c3ad65c2ac6d03839f12612cc25dd09cf0e915f6af4d168ad3bc8672045d608c5dd0282657eab71a1018676330302047c435bb500673065023100d746629625928cbb317bd17b51f2b0e0277bcbe3ab0e8dc6c346ee13f970fae6aeb404cedc8d9ad31ef25dafb80e668602303487e2b9ecfe3c0ac2190276d73d2a0e3d0a9a285b9c4f414de9049ab4d3130c2fb8ae5c17e909ea75d64385a10b7a020302047c435bb500683066023100913df61bbf3b851a1ca8997f1b8d485506ac36a201054d48b364ffb080587626d2b2f1b9deeae0391a6aaab4d98eba7e023100ebc3378da22607b4e393de7054f19ac2dfaf102531f179a7d4e5a09feb3fca76b11f4ed9a049f84bbf150f04d2c522820302047c435bb500673065023100e99450bda425a3ff1129981b592b7d1d3a4aa9e82567d67bbe3247b9b7c5c905dc2c899e69f08b4875a8de0dcdfaae1002304d0b0465ff03dc7dce48a8de15ecef0ba543793fdc9e2a9f3f4a9f2f305ccde11e29a6e12353a8d7ee764d57cbb14bb40302047c435bb500683066023100c02e7fe715d32b9fe7babb46f8b5efffce5214e767b61b1b4f854c7f6aed272c36db5c5e28f8e0b4f471f7eb365d839c023100ba26eb3cec34f9fec0acec00281c0ae13bb5f8af797d3ba86c467995bbc7fdd7cf3aed556566b0dea29216b1ebb7fae70302047c435bb500673065023100ea4ff67a89031a47226b94b42c18a71283c2dc29bffbf3599ff11e2a5298e2d90a2a53399ef6ee5e671d76ea0f1442cf0230521b984d30c0e84c6cdfa65e5c4ad76d9c958f0c44f77ae0fc4582bbcc0e7deb7b2e6f8cea4241510784b06988b1ab710302047c435bb500683066023100b9718ee3d7519bab024bfb6cff467c56d93d208e99792e937f7cd1b6926212e9b6107967f1e0dacc13314adefc7d56bf023100b49c8db6cf831a79dc2645bdbcbce52ebdb50a832cf8a2c47c5f25e9f2f4ebfadd9e7c903c2e3e8657805f57ad2edfbd0302047c435bb5006730650230450ff5eaf7c45508acf43a25a43a8fe0697c5074d216dbdfae592efadadaf9c1f2117c010dfdea2fb94e29ed2a62da54023100a80a8d50800a711eaacf62a75ecdf0c0884f8a964abd9efa7e30632b66a668f68774d99dabfc1bb7bfda2d1f238927150302047c435bb50067306502304663357ed169c4173cf4fa58c41fa568e9005e3be5042903e6893b7498e0398c5b93d87e5461cbe2437b2b94ae45a4b4023100a48a1b07f522b0bd89a3a53b28db68ac779e14175a11b99e4eb772e79558226a3965802724b7153018bc41afc27b55c90302047c435bb50066306402303a74e850d379720191e2af1fa196765a38cdfd929543e13bb6b9bfd9345be0ee543e09fc4e99c13add35dc987040a6bc023011fea0031f34cd96fedddf9eeee1147d3c6b557244f0b8f4998d9332eedbf2ca1d9e63249fc9f623e2b432cda05ad5420302047c435bb500673065023069646967be7d4d12729f3a7dd9c9498e60ccfa22b3d4aec478fa5280e0c4e753ec22f97b2c51d80c7dd2401a7f855a17023100f1ae390182ea95a2bc73af76bdf36ffc6a47b42fb2df9233e5504ae37f3e71d1f1d4335e743a1307a9fabe17a98781480302047c435bb500663064023013f1ed54f7766c7dd3a54cd89f352d85072c2040ee996aac4c17a87816625324f63c2a75b74d13df6566c004bd86b556023059a0ed2de4b0b81f2817917876c5f1d06b9d59be6cbf658b7cab18bdd75e2317bff04d9d11bd89d89de9565766ac08d10302047c435bb50066306402307efc805fbf39c07f7eab15bea8cc17ee593137069c29b1e3388c36bf942a6cb59cb61f7e36dd83e373ed6735155310110230500a7d6cf8a942ce75ca3a67295acd510ca5c084566476ee848d0256bf4bdf24b0b15e17b518cdd1ea6dff575e03b6ed0302047c435bb50067306502306793c4c3e8f54a1612cf789ae54a68fa88358d098da47d2601248be64ad238bfe81e4f999c4ff41b386f70a3f771b0bb0231009e07b767d05c66ec4cf273a46d9fdf95ecfca365f4e85e4a27b2bff117d5aa0aca9922570660e7b4315b09e5ea979f490302047c435bb500683066023100eb4551146b2e44ec7f94ef4bc30028bc7e11aa1050df106c8a71fab7e188c7f490ac86d865f0a3de252907bc5e7a02ae023100b6f692a2101c648f7e491bd3e48a0885178f43295a40e99bc59cfcd8feb30a7c5c20553752ca332a092195564d43d6ed0302047c435bb500673065023100eb41870b2d03eca21497755e28f57d74829b8aa56b73d5926e6fe3bb2d0d484c66f639d5c780feeb6b5a5ab84922050502304380e6dbec64d677ad468187190f216b7d46373e83b0e01271bb26ab608c8e32d157c5054508c128b97c0537b35fa6790302047c435bb500683066023100bdaee43f907f032d07fa032cb11def990d2985ffcf286994e3e3f5f39f5ee42739d642d612f2816f90c144730385de5d023100ce3d016f8271285c2ef865c0bae7f3be3daf5896883f40cd9f7d684a107f54ca7c72da33cb613b02fba25d0b89085a610302047c435bb500673065023018a7bbfd1d8f3a88c6b63e2c410202cd04b1c8da7fdff78c784d64bd44c599396b236d74c06ec4ad9a02700e9123585b023100e972b7f5da6a4e32790be59b9847eec0cc8a5d09aa60bdeea8a92283b829f1fba854b42c8f32916feab46449477bb5770302047c435bb500683066023100cfcf6fe39cdfd6230bd9aa423644f3710fcf3edc99e475bf431c4e04bcca64b4830adfff6112ebe2568fefbcbeffed94023100e42b2563197bb4ce70ac14ab3de49b88b41f33c06b4f0e4767f4ed26fd9f618f3f83a06ed25b3a711a68829c10d2f0ef0302047c435bb5006630640230034efa76aa62f1a8d1740b4485926be067ee1af38c0e12a4506848f59035ead615b62c1daa0bcdf0d1d9ceac598a52fa0230393bdc3bf8e7811f2727616daa0546cf0f6bdc38aa0920b601d06abcb35773ad991d7be1d1c1cca79df1750c135ff4800302047c435bb500673065023006b4ca924e2bc9583c35336b9fbf4469d6f866111d58ee5b6450a031600b0944aab70714906afc92b2a80121a1544ebb023100f945a949f4fb5622a75c521d7727b3443bd5b0191e2d880ba51e6205d1f4cb31b198e752222b2d75c237bb97f2ec27580302047c435bb50067306502304960d5456c8e917d2088d52de7cb524d0c22bb37c3b88f0c25b6a646280a53271ab572f52f5b5429618aa87ae75b3f0c023100d3153c539745625a29dc04d68790312c229d83110abbd4f9ea669a93617e8aa88957a55d9302ead76dc4b8e5b907391c0302047c435bb50067306502310092f8cac90d22a01e56c85d3b56ba063bfa7b43ccd991e933c0ab31f4ea7ab83eab685b445cb79410427d68007ab2c5ad0230137cd8978566ca541cf36e77ed8049b76a925302651f2a25e010c18baa6fa80fae642e9e81578e0a8f15538f591739300302047c435bb5006830660231008fab6c2a9fa1607c90a3f365b2093f67b630d9c38f5e7d4ba8c579b6286da0aafc84c1a313b5e911b4b9193cfc87694e023100fedb960be2660c65b37644b1b9a277bbaa9f93edda9443c7f72962f189c771dbd6a52032e0a9eed4790fa6571f890a050302047c435bb50066306402303ca6952e4fd3630b2abe7d116e99d0ba7807935a8d22a693396ce4336c077e6335d29674f92a1999bde81e0df9033e0802304844fb4cbbd38aac2b8630f74fd2f5532f0603d626fd0d00e9f959133f73f8bde1168066080ded5bb7259c09f7eb04330302047c435bb5006630640230163ec78f0b52db0fdd2165c9047fd830c753500691cc70941f8d713866dc374f12510db67d8f54cd2dfbbb1e59103c7d023051d0ddd300606f4a65b4186b204968a5b27dfc26e7d217bca5355c9896e37ed7f9865cea8a95d5aa1d9e5cd024401a100302047c435bb500683066023100a4505c96be70f786e316022570ae0cf2a6c14d9125288f87140360001eabe07fb195bcb621d95ca1588e7aa727351c4d0231008674edd99fd41d6a79a8a93900fd276a71b38249dad5e8f2f0b4312cffc6b68272138a04b04d4fc9ff117072a53471db0302047c435bb500673065023017a0b0d6086cc6809d57fddb4fc144606181e874729f26f5d96b33cf5a82e8b6caea3d3969b620d3a6f487436f76f984023100df0a4801409dc8646f58aa86d18cfbc1cbfeaaf1ef419a6c37e9ccf75c54d1da1a59ec7805d64c125475f127052ff2790302047c435bb500683066023100e6a8d4807a954fbc76809fcfe754693a55cdb394abe0c29747f7704227fe3d7e64c3fb8ac031fb00f309454cf8484e7a023100d9bb044774da0667bfcb64b9ad504805df625085df8e4bb1b192ab910f8a1b2e43f5bbe14b07601a3bbe1bd8e296da780302047c435bb5006630640230227083860fd570d6144ec7c63194879d6175aad4b7a2a7718847b6bdce91dadf98d8e181a25e57d540c4cba22914b2fe0230554aa34caf99ad9802ffd9c90244e38d71fb9c896def907e2fd5ca9d7d5b27d87337a7239135ba14aeb58b3e8155e28b0302047c435bb50067306502302778b91805c2c11bd2c402adf92d680e7bfb2ed98d0fa6a979542000822b8b75bc89afce45d0921a7f17288f15cb1f1b023100b533356e7c938094f6a70edc4411bab6632811ca12b52d00e9d48af0f1d1f90d82198c1f24dfdade07aa099e90995ff70302047c435bb500673065023100fc5f490af29e7c975c6f6ed6991158baa5748d9500436d529a7d5fac6a7f139d9cb6a6841a6acfe60214dde99220be3402306d26d24861dc66ddeab93b26d1984ebc3bfbc7c7383357e07c49c8bc06b970446984c83bf7cf1a0398851c077b9988640302047c435bb500683066023100dadcea68426190907ce931912d01e008b96c554f3e92d4eee4159c5562e814fc932910c4d2e0d68fa2f573c8c1916154023100ad54881672bf88f3460901d6aa0ac4d67d055f4ceac6c6c539b8e7bc45999f6085aea150594895e359ff906c99f9f1130302047c435bb5006830660231009c7e775ca5a6ea5ea71c57fb4c8d5f5caa28d826eef8156784e0d1653b89c407a6b51646a9a495a2ac37cc81baead03f023100d92bbaa61b3160fdf1605fddc2a0796cc5108a76ef79ef8303f5b6a96f0464b1fdeef866a83834186d50a2f2f072149d0302047c435bb500673065023100aaa05d802e0a0112843ad5cec9864f951e35fb6432b6ea67da78e10f1d5e47d393ba43361d9db163dddcf36c3e546dfa02305ea7f026796f23001131334e5d61f64d9ce2f4d921a46a887cb704333dd9d9dd61cb915ce7a26484d84cc28a0eb10a790302047c435bb500673065023100f958d6f53568a1391e95a1fcfaf86b3e4eed6f14528ffaa968e63716ff9bafa3105bb5ecc681ed223a2d63748e346af802305a52c5859426fb65ae64abc5fbda9b2e96b79ed584532d763e4fab39cb303042d626f595cfd5ef7f8497fcac189b19ad0302047c435bb500683066023100e5a3e05b4264c68c5eb40fd9df465629d797ea7da871fe2a8a2e78e13f25c274f8399a7b5b38fd6090b38fcabf00cb2702310087adb7d787ce4cc1f932ec622a36c9c93ab0780781f055204002b0d44fd822ffe0f799c9a3ccf10bf034b35c733d0fbc0302047c435bb50066306402301131d3473dc993dc0d3d1b713e9597badb6ec80a8239c43d357e07ea6d771b71f658d0b4994f9b8121fa067f5e01ed5b02301a017a93e5f45d63f46e7e5714293b7a1ed1ae8d695376ea7df525ab1ce6f2d80c6ddfe074644b43ee9f179d415ec0510302047c435bb5006830660231008faa6b7d2fde10be051541e27dee932770502719bd304d00de8ec474a70342725c8aaf6e02a7bb9f1c69e4989ea7ea9d023100a987559db7430cddb0c7fd9f632aeb6941fb9c60b8a3e36f5ffc1cb3054f2d391cc6eba37b8657aa3bbd580a772ec7fc0302047c435bb50066306402304e843a90409092a51076b69a28b911fbfa897239cd2ea262d084cfbcc3afd63f3fab1976d0b97bc4b47078451b8ff5fb02302fbbd7e3dfa349f4d5b986299aeab4256c45dffbf86ace702eafcf1714c0669b2191fb10887be7ce2a7692582c0689a00302047c435bb500663064023005fc71cf19f947ef58d0d2e90dbc97f3c83f2219eed46eb7e73c5f6305fbe99ff2292986b90ef676324f4ee2baaaf0d502306e61cba1ae86df89dcd3de5406f280e7fced08f978caf4939eaae2793c63896dea0262d2412988d1cba9e3f5af9ff3d40302047c435bb500683066023100ccf68c5a13e5bf4b112fd5be611bceb3e711f7fa90b3551138ab36d7962a6d565c42b9419c03c39661a6a8ed4bbd14ad023100d82b162af386a1537a87f689df5c70d1136e073b2e4b20fa9295274366f51be6105cf04d89a1e98e9ccd794a5470e4890302047c435bb500673065023030d60beecbc2558d01a8e6c9f58018f66d78a09c18fb022b7afb45b1ce487e7717e55b6ab4707947dd1d912e413fe40a023100dcbef4268bc11b2ee2d4e9bd19c268dba1519b5eb7585563dfbb09452626bf3ca320c6433cf3e609ec6ee12ed3a719910302047c435bb50066306402301fd68810d116dda33a2af2c6b3b1c514163195dd085212af82631be32c976884793c14f016b56dde76c9b399f170a4640230290e99382ca8b2725d3452e0bf8e5489a4366cebafe03550e4588e8696428e1dacbfd153f2b7f336701415abfb6c9b690302047c435bb50067306502300b181e7d7ecc227314a1d57fa920963c8a63f638ba75add3797c8d332652b3ba8356a35eb58f381b39b68a90ef00a57d0231009c0835b7890bd6d108da1de4dd98fa1dcb4bf4464dcbdb00118bf117661367a77a4e0c7ecb552f08d5917a1bbb2428b50302047c435bb500683066023100c50ffc5b38559bb7622d56b6984c69e9293c6370bdf4eeafa96cb50e193d46540d47f88aaa30e6972d6b3a72701345900231009443d97b872c800b3d249ddf901898879fbe8c8cefd1189faea9e6f812a179d49403e8d02eb3c0815b950b0de9e805eb0302047c435bb500673065023100ec2ddb5df74bc44873d894ffac83de7c68058286943e8578a680a5cdc8d0e80b2c5783b4a8f78cf15c763f5ee390b53002305bf50cc4c515c00c845c5486681c5927b3d38ea913c7326d0600b84632caaa1210f08fdb9852907f1d799e822282cf560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079d274a3d577ac93ac4102bf587f202e557fc3ad580ee94c4d7af13edc7682b3b21ae3750fd05c9e72d7020a4ea895d602305540a0800afacd3649e8b5947ecc9db7e15ad6507a3691f75e954faed8633f8e7b7b272f797c1f21eaa7b9ddab9de5a00302047c435bb5006630640230714a8d6c55be7e2cbe8865e3de38e79c229aa2596c9d188711a077999a4be31ed598c8a3c17a3c6aaffaab431fdec4cd02305dbae89e0b897020c13508b0b3ca8a4441332f2ca461947c6ce2b8be52f5c7ac07d0094aa0d779570ec0f4f8f52a94db0302047c435bb500673065023100adf2d4f52ec5534e83be2ba819378779e04fdad8109d8e2f62c88737f09bc4fd8fcf0c2a01cce178dd13e5527923b58e02304f2122b89e035d92ff1d2affbd83d6a7e90da6b4b7226adc42f147c79d00e0c4849f6464ce7871bc7a506f5694b65b690302047c435bb5006730650231009742e2379d6ac298ab74664f7bba4c34ffe0b4c7307677f786d5061ed846b4ce8bbebe5fd5f1c4330eb38d6a18150190023068717a290fcfa078d135602aba7918c9ded5d350a1adcf0c725c6dcd704e2ccdb0550be0e3ea1f5bdc5ef002366f96e80302047c435bb5006630640230388d4c79959ebcc4ba68d585c54b718406ec8abed1ecbe66f665ee58a7632ee17d12bad3057129844af1226a5a2787ce02301ae8e4b14c2540b88be75d39fce33585be91acebd42bf73ea71b311823983e1837754f2f8b3583a034f91b5e5ba158b50302047c435bb5006730650231008eb4dd95a761fc978499c40d61d4b4e21ca5a61110f70fe38724b06026753aa22364c4680aa80c614733e26a11b9de0f02305114d9ece56fb2020ff7f0be7f435b36986c42424792cd42d7f62f41daf45683ffa99948068a5bccd7a94e1b0193cec10302047c435bb500683066023100965e8dad56e5c1b602e77cffd53fadb7523b86c90672ad3b6e08619892ff9ce53e0ed13d2c22c73b697ce8bc40142753023100b06f16ae9f2712df986ee33b7220552e9c81732d511f484515381bcc12ec474181ff7f5d0216368ed1c286c3728365030302047c435bb5006730650230283ee8843cc330304095f08fa96495d10d21045cc4fc7d0984f37a6db24d605ea1a6eb019aa2ab97a112d0b4daf7522e023100a4b39fd7a83e987400883de71fd33fad71b0b41c3585434130616b89fbe69a52a4e2d127b5847a69bb3572eef5a4be860302047c435bb500673065023056c9bf50c3d9393df6ac49cc5c56aa4f122c77828b0072e8da4cba8a4984bb202e7875c03a40c92ab35501a7740be7f7023100eef43d67c4ff38de8f89cefb61bb4eed5a6a054c7c278f12fcad8f8087b82e12de7d8889227b1ffa0e00104fa23465360302047c435bb50067306502301d131770923afec7e70c33b733123aa40a6939786a8fe56a361b4f2038c5884736b829f2302377e719adfcedc7cbaac4023100ac78c9c0bca792a7787ac0cbd743cb94cdfc41c369a40dbc1c33210f7bd3c34f007d6139679f025797e112e70b5da1cc0302047c435bb50067306502305c38d35e6ee316c188131e531d737e90a19f83c094114d34e0d71cddfce0763ba39a037ea2f3351588908a83d4c4058b023100e5bc1077a57054f81a14f0af23387ca7eee90799d29a016433f1d3398dbee60ec2d4d15c1dcf559c4ef3e524bb053c420302047c435bb500673065023028d958f7513e1ee07ab44be14ee6e1edb920e513dd232584e54f519584d8c74bb77f77afc5ddef5e81ae728889b02cc5023100abb42270cf09b719f55b5aa484b27f436b0c4f127a35cce1cca74b0269beaf6ee717faa68e3b872361a9a46516b887c10302047c435bb50067306502305d11650646890266f2bb1ddef071f323bf5be50cdf2e2674710c088bc9619527095797e17b34eb8147f8284fc659e5a8023100cd920c76ee0c2b0eef65528fb99a847f60cd70481fabdfc9e20da265d31136f0bc2ea7f89b42664b7ddace9bd962d0ce0302047c435bb5006630640230609cef5ca63b79d0962e573b75c4a1fd59c52bbd6f454a0005b902574a332f9812720b256fa75a04140006f9d75d60d6023061130ff02c9f553159abf0a8afeca4aab5b69eec097e348204f2668b1e32ddde4981c670462ab78826373b15fcbf79810302047c435bb50066306402303d61df8420c366405860e8eea5d2ac4d891ceb8f4ab0e43edcde354a7e2f3e8f423b8563bc3ea63e179a56e09097942602306b9a8309fc88a7ecbb4ae0846526c674db70eccd30bd2db17cf0ef40fe8060b0928c857890ba17a3ceb46d44bb2577b50302047c435bb500673065023100826fe0f9aa0fc5bb8137b95e9226304ae3b9d4fe3484e9164b50c95d50f500c464d7e018864ab3a4706a1447849d5e9f0230373060ed73a14e5262b4a43ee1c68818b67daeaf6e90ea7f020477575da6848d2cc945d6d3b870c9ce27ad4a5f4bc3790302047c435bb50066306402305ed305ddabc2e6d66b8500cd974b0a0fec5ff34e465540313379e8557d270c21e5f43cf989253cd3c26bb2be817eb97a023052b2be0172ae2a59ddbaad527b278f846d814b4a466c68c34a4defb1ee8924b95701f52f18cdc1b46869c3ee514c2f910302047c435bb50067306502302912da30146420e8c16195e1f2fdb821ab506e6de5b60cfda1dc5b1e9bbe57199868d5b7a1bc7e589d3db9db3a0f08b9023100ce171c64afadec51207e595103ba58efe07fc2ab918edc234707db66056dcd09dc2fbc9722f378f79d594fb26ce71bc60302047c435bb500683066023100c95ff058c8e80f3509598f607ccbe304fecb8b0ddbea66279040edd705ffd6fa75a7fbcf89f3283b3b172b69915afbf2023100d599d2ff2744885c4314d89b16b5110f8c6607aa74a7d89fcae98b43ddc7fcf292cc76380d5ea2b51fe746e42e81dae20302047c435bb500683066023100d41d5f421be7e932b477c1dc754aad03c6829b6c964e776298f5f4ac43a1ec7d73069530cc71ede26083085a7b1a96da023100e229417d0038b3787c5e44fca7d4e35606660b8be8ba9d5e132dabd03594ef0df9b6c7521e413034996aa205e5ad82f20302047c435bb500663064023013c867abc1dfa4bdfc121b7c66133dbfb48618da63d2cd230df7ed2654f716321ba06819e33568a03ea3d27a89b3ede102307c60d5acc89fb4da9366b4236e6c11e2b977524ba0361148ec690dc636f98d2eea97a4e2026c9b26f82f43de2636d17f0302047c435bb500673065023061ae412537b98faa006d08080bbded60833d357802347418a26fab5a93993a86c9378f0b4fed4d53e31c56ee07430e96023100e9f92e63e007943a81ecdc7aa0032a42f59991a809338fcaa8bf6719c870c520d62dc5dc4d848ed05d02191ba97c3cce0302047c435bb500673065023100c534af159786a81f544f27f687a166c9f95a4fc1e0b3e168f1e529725fea6208f545a3d6a969120df6b16bacac28d25e02305ce806660a0a0c7f447a85830ba62c67237bcc7a35b060ef4ea158902c5110cc1ba025e5ce8e1e2f919f62622e4b63090302047c435bb50067306502304f7d4aaa581818fcee0129d489756639f74313c722fcd32be8002fc9d6cda726f4632e8e6b8147cbfe1aeca13ba17add02310096430aa2d52e8e4f3a96235e7aed3a1b4ae43ca705edc7d0c4c684e7f94fefaedbe9fd6bde5e45bc7155befee48831830302047c435bb500683066023100e4096b76cc09ae734268fba6ed7220633cd1f5ffef58d66d0ef6333cb2d62acce4214d2171590f06ed62f48faeb729a9023100a3838e48556a65c9c86f807601135490e2ed9594b3ff17f7f1e3b71b0e829be09dbe8b41b1c967c31518bab8fef295450302047c435bb500673065023100f8c7686ce63344dc723f7a5bdab931f24ed5edc33af16a6972150ec5f43d5035733cfc5bd2d62c118aa4a9f8e9f06e6c023018a10762c28f48e35b7ba722e7e9e39f72ef5a2a6fad874783c3d2ea776874239a92dd7e50bfdfd5e0f25acfdbfeee3a0302047c435bb50068306602310088139c187afa5c25558821105ca33e68d94e29f90eb0a3f0c83684c0c1efafb468bc4b580c651bcb733fc07a8f77e28b023100924debf9bf56a45d572bff8a3942914e3fe00b39f7fdc42c16c514a646bac19a91ead5b882c2a397dcd75c904283dbf90302047c435bb500683066023100fae213496c61c2fded3e9516a89dd8838247a3795c22ce811c9385e02593a377733c01335bc69cc2586d917e82c7bdb2023100c6bca2a7d00529dbadb639b7d004b7d2ded4230473c319ac161453a9b08a66673407057346cbe99ce6503e41a73064500302047c435bb5006730650230765b2ae0de4ae5c77291f1936b75a9228352f98095dde073a3c4f4375279a045067f59d8fb798ff30f4a4a2ad7855b8d023100f2cfcd1149baf32100d7071dda4180be695cd0b625f54174a7747f4abdf8697f125ee702e7a932c919ca187e8b30b5da0302047c435bb500683066023100992fa9dffb4ba2e0a63d8fb539a7b0a9f6a3b9c0a5969f8cbefab63cdd02df28cef7ca0f69211d695959768a1ed13701023100ecc921cbed618f94a9e73b5aeb9ce444fe122b450ad00eac07a0a8cb190220ca9025ff2bc575acf69f1bd139b70b62470302047c435bb500663064023033bc9247059437b0c1175ae1d8c6e8900f6c4894cb0394f1d6221cab3e32a72f7de99a3ffb4eb11e5dbf8532d3dc6c9402304dede2ef19570fae23cc1f870460b3a84cb64031f692a0690ba6160b797050db7e4262aecacb681c313b138d38c440dc0302047c435bb50066306402300b9ebd40358464aa3039d1257414e71231785cc4ce0402064b0cadca59aaf97c3ca2134b92aeef7624a7a356f1d48ce30230594b42d8436787385307292ffce21910bb274581158b69a35df0c2d71f4046c99c2b309549e52cdfc6e6e76fe9dc05940302047c435bb500673065023100964eb025f2ac5e462673c76f79edee16fd6e84a61a08030c62598af36f9c2433c3a65712b5111260eaa234fcf79bf3b102307a0d3a8f51ddb1da5f200ef3ebd49394b4d75b54d81e836b604ff99170df2d52f23f5b36dd32213c2fbd340773312d690302047c435bb500683066023100e4d595b4122d734f9e3e3f908570946ebf7e5ec658a39806f7ba27c84d9e23bfdbde329eaf291989596d94082c850bbe023100ffa72119d9428ca8813772b4a7efe1b588e582cf5d9562660f0af14ec04dc9ab9704e609c0fbc0899d27dff7993a3f1a0302047c435bb500673065023033568587079d7da3db2c590f8cc6907dfe15f95c4a89a35642852a2dc46e3f46462f494b259848f5ad37240eb3092e2d023100a24fd38da94763efa109add9f223cdcd3e19ff9f4c60cdb2c0817291658c007d5aeeecc5324f0d62ea48889bf0bcfe4b0302047c435bb50067306502304cf2002f9462789bdb07f4748b7e27b3b9721d3f1ccb150fdf8863aa73bd06b94ceda7fbae0ebadf39036a5d2da3a9ed023100f7b8436c335c5b810116448b271535854b3896a5b62d5bb2ae616cd496f8517b8007a0318d293de26a06bfaa5947dc700302047c435bb500673065023064923bdddd780f3ae4fb7e1113f6689cd5923d97f3b5314975a8ed564c5f53560e51c43fbc46705c2e8c32282d77d7650231008d0348c36e9888b2cb75cab99e4f14034cf84e54bd0a786bce69b960d13ff059dfb2b85cfea7829395226453a09fa05c0302047c435bb500683066023100f7948edb2001aff75b42a43a498459765c1c736b48b38fa20a567404950f16099145bc2466ea99bf2f034b07cd61c9f9023100e9b0dfc4f1ee87d44d46d9c5ccb3d04995beba5bbc6f5b8253f05f367c4646aa4774e9218b753d689b39a8a16f68edb70302047c435bb5006830660231008ea26c1366bcc032eb3e02121787551f6aaf3e840eb9c146b3859f34b895627d862a21c95be721e7809324a6e3cb6501023100f87ad5493a14cefd9937bd2f57957185949ca1ca053715fd246cffcf660749470e91e372650f724dbf3e06de1dac72f90302047c435bb50067306502306b95e6b9e6abc3c7eb270280dfc356839ce8e22990e54ff465bcd1823e43c0af1574ddd57444514e754fe1eb5ff06eb9023100970e5090ad66df30b8ca1ef725d7333bc7529bc27ea9077ebef2710c08de073b5d8a656a837b35c20810765cbcc82ca10302047c435bb5006730650230538c6df5cdde61ce57a367f2643b10becf5bc474f63726e9a06b3eeeb030a8cec4730286bbc6728beb050564344b2cf3023100c88e88a052f58e67bf8f3d3e1445520f98442e392a47aceb45890711b11f301061dc47ef4572c10bbf95b065232251510302047c435bb5006630640230239b7e065d5436704e855964c4038bb5eb046610cede8567908094b31ad5c007db8411bbb3bb20df1cdb58d127f4efd1023012686f69c0867558c2b61efb786f175a325baafa78c5d4aa6eec1082ae4fbf53e8e88c6b1851558d173548f561b2451c0302047c435bb50066306402301df2a4762b58f2ff5842f54be2fd93ee7f90b3366e825259ba45040ccf917d1b7b14aa670a942ce3193a2f99f66c530b02307f97eaec4863349805c98da3862c02b2360ec813cf6d9ede7939a91242c2a522abdce5845e20019e8460b858aaa3f2720302047c435bb50066306402303a615a04b365047e2efcd8bb9f3a1eb5314a45fb157cdf5e23bf9bf898c87406daa526d383ac84372ee22e31ec99684802304db7941ce160c7382e7ac2b8a3220e0e221f724a55e35c5339e9693804265e693a8c42c81ca2de6969e2fb257eaf02490302047c435bb500673065023100e77af6410e1a6bf21d145f34ee25ac26afcdc059a7f832ba8388632672baee269e6392c853b611dfc27d8402535902470230290e679c21d1f377cf8346d401a3a67225d892ee309ae77927404a9c9cc64a313afd6f5f94c0791ec17dfc7fce6c0e620302047c435bb500673065023100dd60b1ec8f74e9f3e50e34be290201f36896b0312a962c71a2b8ac149c3b2eb56c44125d91a18d3ff81d89ed262ef2920230494de111bf77bc52cb44d47751b90c73732028962c4d334296521d84ac6dcb833e9f64b634c223ac2900e3d42daceed30302047c435bb50067306502303dc0638f59d58b0a9f60e081571528a04f05f0a695e6af0455d0408faf34f94cca619b292733c638f9e83dbe684d4d6f023100d3d52ab38566b3d2ab4306b8de569f8cbd67414b40068105488513564631697e74899d49200571e073e362dc9b19010e0302047c435bb50066306402307b270f6a60c6d5985bdc2fe24ea6e94e32087fea86786c84d5aaac202cbb2730c05bfe8eee5b9411ee720fa5f54fb41002301a736b4afb037c775fae248a9b5c932dbef85b171e38e7651b6d7d86dd522bcd36c94ca37dbed20ea9756a95d76ab3c40302047c435bb500673065023100ade7f2dd0d1260d810a2f3977ec4d45253936907cd3c2e29df07ab89e87f3ca02705ed498ead864e41e11ba9dbc9de14023077ee0019e91c661cc23ec57d667990b7eb8d9bae3709682b58b594f9282a9710dc2b303cc37ca4592c0f7a1d332798ca0302047c435bb500683066023100dda925c5aa590934471d9b124d7a724ffd8e802a0d91c29f360a61f8a2ae685b3fd8650dca035ddc8a8a3e20522ca7eb023100f2b449c4f2c4cace89f5440d2c1f2255099c64dbb775fc3546ab65b717415681b8c6f02d473e3d80ad84f40cd56f3ab40302047c435bb500683066023100922a698c7f24f4ef9c9e1571fb73c133867daa5573fd51dffae18fce06cb124f37af04f310ee87574afe4bd970673b23023100e5b7a6a0a91c70b1a99892dc8fc4438de92246805926c4964bee50c9a6ea8b569fd65de98cf3b299f37e3dedb70fe6ed0302047c435bb50067306502302a08c4997d41f74742298bb555e24705287bf4a448f3cc475e26d8837933184d77bb01f7b0e196d5f47e702eb8f9335e023100f47592e4af4805df4da4ce3fed12b9cdd7e825b1bf50ef8b298e8466a397769ecf9ce4e3b7de032170e309af602197d40302047c435bb50067306502304a4f6ea35c017aaa4e708108b4f64e15d708bbef168237c097dd51aa674d838fbbec16fa2104a64a018339ed41b2434e0231008d564c7bf868a8a6b810b257d1e3e202345c862be0ec93c1de3de46d83def960fbd6b1bef4a50a658b33ce86026853ea0302047c435bb500673065023100942ef3c6268feeb2c5fd6662a608350c148a87ed57c1f16db3b6c2275d711838277a4e8f608f248dd023335c847e85a10230263b11eb96bf20167fbf28bb387c37cc60eb3bdd58c8685cbcba52acf9e0e09145c2f7afcd9e1521786cfb8ed853ba0c0302047c435bb500673065023100b699c6fc21424751b48ed7e87a0c760d83694054a8127a387a5ea79a6c4a9f9a67fd74fcf779d45e8965df58ab1af67902306888e871a922af07d3368dbf43b2a69b54debc3d4d5cdfc92a6c87c65dab4db3b4b6c283099020e28060efdac1d028b10302047c435bb50067306502306d66d88a924b8b64669c5a33b4aa760fc258808b17f29b7976e363b05bd207b62f4563e2544ad86c1e1abab51a9fda4302310083c2c1d19957b7d34d628fd8f3cdb8cff41b372c5ca24dc4cdcad6aff93872f5abdabf670533e8c634cf8ae698a5f8eb0302047c435bb50066306402306a11306d1ec3596682b4a5ab6ec2fc387cb643e73ab09cdf1253d61eb5305af02324c902e30ed7bc3d8e0971ca693a880230129326c6288de9c25d51ee6677af9783444b711ea65738078f38d2b64d18095a0e4a8aad8f2a185bb73c5388bbbd27d70302047c435bb500673065023100b9a1c7de4db76490e59148195187d6798c1190ab47fe7e834778ca5653425a0f3a97533d5ab9a1112d20bf76a018c90602304934b2b048389745b0988f590eb56ba92565451492a9e652d8886f8eafa241135f0e06c902d3cac38ad85d71ce113c060302047c435bb5006830660231008cadb3f5da03497e36de2de73c642e9299d763fa84da74560f9c8287081609945ac1d95258cc38badf7f58cd9ecda2090231008e8254bb7ac8bc49287c595d4c9bffa9cc3e584ca1783e1aca142a6783f101bd8599325e90181f5c68b850cdfd388ec80302047c435bb500683066023100b9367330a6b88d3c27539845156e5313872af1967c73ecaca465ea2b4a245b50110841e7a8a3864613e174f6baf795c1023100b172ca0a7177a858a23e95dbfc848bc450ddad4b2507043444edac0bedba250121934b94e09d2376cfe88f9037005b630302047c435bb50066306402300213b9cc5ab7f8b8509878be5f7f05a822caf09b229a9e28e24838c535c0ba2122e0d1ea49947d852a76edd17dd995fa02305a763b8e7f93b59dee79381731e2d96df6fae8aa8826abedf23ffc5f1849ed1034f183e268aabf0181f7bfad9408be020302047c435bb500683066023100991fa57dd4dea6afcbacc6e53733e021f6e3e43dc920178e3295525d472d2f1f99ef733b93574a0504b1e8eddb2da1ee023100bb07e6879b64d598e8a525e0a730be15811d6cbb436be42fec63dbe30fbb2a275272eb587ef4a5eea869032cad0cfddc0302047c435bb500673065023100897d8b4dbe302b7787dd7004ed445b46c0811451c519629029d8cc1a0ca41d0e6173d048dd2fcd699153a1b7101df29d02306d893c551da6ca5264781fae525a72113474b9b2e86a7df4b708544fe18c48bc26bf85a26049a667c03dfdd3dfcacb1a0302047c435bb5006730650230301655880c4c5adc9354b73ec0d11515ee1d37a6597a731349cb914c80038dbc6b86cfe1f8b3022d4750995e758ec328023100e1906af7f1f40d188f05fafcb6eb7acaaf28a0e5fe760d563931d12de27910752020c92f8fa8c4357843f3323bec19570302047c435bb50068306602310094d266d7268db2ad425c60e15457fe3bfe1b94cf6104b1ab731d1867a40981d19d279ef4cd05be1c3a2068d48b028b0d023100ee6371e1f37b831fbfa62412c9fedba11c3d84491318230124d373cb4917aa231787b7988a51547b314e2672466785ef0302047c435bb50066306402306f1d15061bc48c010b9c66e628f4443d274f7698d7a0ca7cf48e12f8409694abbd7d2cc8fc791a3f6d05681591898def02304ae6c4c280622be3fe84b074002147ecbb46047f0c29e7ad4d7bee8315955484ce1784b66d844ec746e535673479de4d0302047c435bb5006630640230432e7e496482648a68f26a0b3ba0150bcc5843e6c18d8afa068d5c79254ec58d710740a8bfa4c4e7dbc2d09ef86e598402303374b79241e538fee32af2c35fe32c4a97a3495a33c92f3894b645caacf1bd8852f23b8197fe8f3cf835f598d88af8540302047c435bb500683066023100e43c5847de9d211ff5c525e7ef70506a9744046a45ef4cbd635fc13ea39178a992c7c115ea34065a2427724650693084023100d3bb02aa8f6fbf9998afbd5837057aabd1f5a2ac1a3b0b7a40b9bb78128b704a50b99695a0cf4372c31d462097b17c9f0302047c435bb500673065023052fc3921d6dc7e7a4d4c2ca8111873d394ad3c3a86ae8d8f0057614d991239064b79f6bcae04c9cfcae093351d9738c4023100865d77120a29ec01399dd3fdfe075ba8f8d05bf929009f82a944095835755ae442c79f50e36c480b2865b0f36030047c0302047c435bb5006630640230173524ccf5c9b82c44493bfe87f1e56e7912d4e50d5b26f6debaa4f21cd66bd8ac19d7aebcb288fe4e9733fcaa05f8c902301f95c652dd20d5c0619b7c04ca9fc56311bba61a464ac67c7ed9a8b610feed473fc96212b76c64fb2738f77f69f897e50302047c435bb50066306402303bc4c1365b9f02eb3e3196d59ad5d6b6b1fe10bad9649f1c71f4f98fc4ca9d17e4abbe3e722a775f66dd497bc1cf46e602300ba338fc5db3b2a33d8986194d5e4ad2380330f4b6a030785fe6487b14b07d2bf2ea4b386f6ed285e42fa264048694720302047c435bb500683066023100ba72e9ab8c6c37199e6b1e53b37b3c1473c2d0fdcca4ccf3cd429754a415ebe3caffac6959980d0d7ff2e02429cace1a023100feb6ada782753dae065714e61ea6778a29eec43f95603c4feaed750a3d45603e38807bbc1ff2feebfbbfb437898a44540302047c435bb500663064023050f97086936de0df33dc87dd1af0da9cb43f76c4f8fb53d6b14e69fd3cb581b1f3280137042bcb0c5db8cff0a00bdc4002306f54e290e4c4a08c18eecd909d2294a486e6bf6c959bdbd1fcfc4d847b79b61efb78e762162d5ce5b3437956b2c80c480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023006cf780bd7cccd06e9b3379a492615b18366128d6a70f1d7ff34ce3fa753956251896ae290a02d24e1ee2468606688d50230100c9ed9130698a1f52fa752daeb67226f776c84dc7083ec9e41a38b55a37cb08594581a54c678541f02005650305d6f0302047c435bb500673065023100f04fe96946ab56984544b3ee37b8d66edb2cd452192c975e382a3191982b4802f3b161d8ae1c8d990930b96049d1f8c602305c0effab12c7045cb3420036835c1e366e56fec701601fe63b92efd9cd392f9e863eabf097b6c0217a19e4edd7cfa1940302047c435bb50066306402303d07674e065208db095dfe8fe8c0e011f1122709d99d2e5bde6ce300c23dc73676e74315df709ca43dc8eed3254da1dd023031b43cece09fcc61c479b354d2e6d8132e62d3216dfe13fba67746c73791be9245e95262be057be0aebb6d523fc6f2ef0302047c435bb50066306402300135780159c70ff188c9cf6ab4f8f799f7eee8cbfb061a76731ce012a0ad3ec7356d42e94943d1238e0445d96e37fd5d02302fb8318713041c6cd74e00c1d4aada2b096b62fa0d86c4893276a43446f3e6a51e5a759bfab84eb47694331a08392e660302047c435bb500683066023100faca2a3192243b80d46dc56d62df4eed6d2fad536765f8f26b0598cbe95044728272754f08432aea7a8a7434bee573940231009b51c20523ad1b4fe30af22a2d3db3dfc025de37adef66d5ad2a6a5df68f66b1070b73a7c68dde066e07675e82512a5f0302047c435bb5006730650230618e980961b4cc4b916cd6f0a76293bd073aac912b1c70f75df6d028f0dee670103cbedde05e0ee44c8f40d3881a1029023100d85a8545921bf24d8f3aac3737045e708a31f76fa8a94da030a75b3c668df7adacf49233ddbbf08bba90159e838b68bc0302047c435bb50066306402301bd2b80d64d01615bcac02c5facacb0a180aa22475455f297bcfe190544dfcd72508771c68efd87311e2ae0c239cf2ad02302092be5557966ce93824ba98be70d609da0120ef91d653bc066c12b7a1eb14fe583597a3552d3bfce304bd8438f33fd70302047c435bb500683066023100fbd528ae9337e4efbab30b0d17944accb533d6ec5f4df100baa72936dd7d76de5e9e9a26504ff9b3668d17ee6e494c26023100f867b2685fd8d7f796cf947f9db6562b4c33781931c97dca9170058eb03cdb4eaedaa922b7214eebd86e3fc4ac0323e90302047c435bb50067306502302c47af78943b3f3f2609728ab2528994e972e796ed4bd58b4144165a28ae9cdcb823fbf29a5bbf96437830f6241afdb4023100f33c15442101969fe6f507dfaee1275d03a422676d3aec01c919c512b5432779a2251e0fc8ea440a4fb1ccb82f9efbc40302047c435bb500683066023100e788ab9d947db1ff1b681a54ff50c7c3a6ee70e78bf88b4e8fa6beb7d44a10f9744c95060af6ff3c2c9aa93f4fff5f70023100a016a0fb955b4426e5afc31c1257b0c4dbe8ea881de318dd77ffb511f8d434666eaa6fc9990ccf524646aaa63f37a1b70302047c435bb500673065023100c2325cf3d9ad378b23c6409ca3d97105c15a8abc8be32da8d393a4b90d01e38acf3127613cf88c0747f3fc0f3fd20ebc023042a20ccfe6579d1b1fa7999ee1b988de3288a5c52dcedabea7629dba181ba16e614e6a4ac0986dddb2271ada6ca9529c0302047c435bb500683066023100b6503f8af2860550be68b898d990c515d04147c1c29bed5f7832b3faa5c5f38c5af2663d6edff18841e0e5da635587b5023100d21bef2aff5a79956e4ffb0a6130adb9b9f9c3c8eef6eceb3a15a9a9128ef43cf8197fa99bc945cb7ada2d1d46c7feb30302047c435bb50067306502301698fef541b4276a654d0bd0d1a142ea3efb765ba1832e8e5745f43597edf0c944874e6f7d8b80cf85602e8c81505502023100e00f2c17daf86a97952deca73eebebdeea33e638653c3f4bd06d459cc341982f9e38e6ea890f29475c0af2a4586d19bf0302047c435bb50067306502307469dab92dc4e4a2d3bd0233114a8c65d26448edee9077c7cb6e995f9927f758c527f7bcb41053af09768c46a9701640023100d4238b8347d4748f1ef83c3330c1a07ca49903b1267810ad29d8b9ea091e9f70db7d1e5f33300c9feef0bb1313f175460302047c435bb50067306502306d67d12db532c73731216009046c8a7eca29ac14b2d9a521a7b925c9817e993c6144e143252e916b576aa259d203187d023100cdf453c76191d08acb39422176ed9cee084f2e440232810f0ee6d0a45e8ea876a201be87dab5278dca3c728e726ad6ae0302047c435bb500673065023100c009761e819826dd41e2a3d61d2ce703d95d7895400a38327c89f01fd9f17ca1154616c3b685328270bc7c17a3bbc85302306c7edd2ce28c43dcf7fe9135d00161d0db2401d59d3178d8313d7c607e98b2309fbfbad01839c71857f811c45f98e2a50302047c435bb500663064023020f2f233af11b3c497cfc31bea7b6f86ae0b4fd32c5bfe0747edc18b13cc23c4c64e752428e8183f5cb24d42a794d28502305f7f448db95d56c73832f53b1ae79687bc85d1513c0343061e4bdad36961613de5ad1c314423df9e6123db8015fc5ee70302047c435bb500673065023100fae92c4515a9924a9988ef64a35f4e7f08c9023c106d947ad650c58b066dc1f4911790f750124135c9581c5b3443617e023008216952d75b8f24dcfd0106189fe377fe2482dbd24560c965823a835ce68d7f612ed9f28ef4418a0e7f766e78cb760a0302047c435bb500683066023100f59ca06f08521d028fc65e166753f945baf78deec56986d55ddc6284ac0104835e00c00b16b665be4313fa289f4dbf28023100bd5df3477f2d17717eb5c6e495ce682fb2ae38e651eee44ff6f3272f4c44311ef5b8e49e5b0417c9a972dddd7333c0590302047c435bb500673065023100cfc0b1de206b86de059b3b204b5b081111d7a26b459af92db23096fb27ddccbb65d0a7286834a5933f3963793f41705402304c0506abda86942d524cd3c9ff8a531bfa94c84928a6c3d2b2f6431981f2b24db7cae4ace0d382bcaa305ac30c1715a10302047c435bb50066306402307c25d8f339e53cbb92e864f20d9231517bb60548e39406c364603e7e715a32ea95720b758bd3f1455af8840edf85807402301cb8f439cbc38e97c2d5bcaef7d0847b2310e861279b60e1897a44326f9ba63fa5e1b62bdf26370d15ed7339454d40860302047c435bb500683066023100cc969623d0374bff83998dd069bcde7e4024b622d83dd99b02166956dd60e8199618097207fd426270549273ac871457023100a7e5f92b99b740007dc13eebd71610cb3f24a84ddfde71b0057b4eb641504bc7ad47e0ae1167ccc57b59dee9d1406de20302047c435bb50067306502307dba1850914a6fd8fa2a65e9165f4c2a6c3eb12e5be64ca442cb627a4a737d215b12a4a8f8235098deb6a41a7225d79b023100f39ed6f774c52637351a85bdf7398c26accdb1c92d40e2e0ff3cfb7fec5607ffab9fbef7df11fed832cab2c08d552bbc0302047c435bb5006730650230573db39b3a53a74f862b1d0b334dc22d970338ef3eacfcf8d13d9a6cfdd32b247743feebacfacf98e697f9049b6a17b3023100bb5bca7e0a83eeba779711de2161ac5232e649b1a3ec77dcd43f67914de3ec643dd8460f0c505ad82361c417a5fbbed50302047c435bb50066306402305ba4e3ed01fa3760def95ec29cdd60bb50166b6af84460b3f0ac35a6c702d90336e5084e1576d051f8ff9699c5ea9e4a023035011acfaccff3057942d8493e6945df88b905b0bb15a30f0350ac0f525eb0443f232a315f0e47852c6f2723ea209e660302047c435bb5006730650230784f2293e93c7c7e1fbdef71682d4e4fc21e5dbde5b22b5801b7c9db33228506b0ff72c461897f51a2c13bcfc6fc4d5e023100dcd40ed440d8382d4c1032b708d25d193fe3ae2b8e170d75f63013b53546f3cfdc63d73da07d7d2217d74646b9b089e10302047c435bb500673065023100dcb9ce84eeed01335fc7bccac0e67c959f371b3e6a1b46f9501229fd7104565795c0fb0bf87567920ef07b38e9a44a1f023002164d5745dc26636abfd9f11898eedb8f95ecae17795d8a430417b50aac23c26392fd5e2e29e615955d7ba34ae5697e0302047c435bb500673065023100bf17b05c6ffcd15ae028d30f5f1af9b77099f5a0d82d6204b44994062298ee38be34e2f5522818323a882655bfab97be023051af42af300b3b84fde85bf779160db649d76d5bc1bd7b52254874954621db3210c5fd74e9ca2124915c15b01e0997710302047c435bb50066306402301121ab9a879a1882e18a5a489b301717ed3c6fe8b1c60163ed42e429bfbec09fd6b54c1a13ccb3d9ccf07419888a1bd2023035bed8a0601ca5243234a5a2d9f37dba5b6dee117d7134160d3c53667ef89622e07d6fe2f40527bc76f35edf457ea8650302047c435bb500683066023100d6f961a356f0b6f07c6defa3f381493f04dd1aa67e75abbe899f0ff6e058030985633359515bfd995244f5f0097d1d850231009a338edb98758e2b6c236c197dd41f50f5cecbfc700785868424a2620cc2b281b8665e09308f8c8322612091c56d58ad0302047c435bb500673065023100ad83c3de9c3574018a5ec0ac4278a4f71f22e70a9e50ecaf36f201b6257abb064f12a15caad670cdfe63ff53d0564108023004013cc6163066a4bf419d54e7d25e0abf484c464b8fee1332fcd276587760b4a0ced98f97c4672995ac523310b2d0440302047c435bb500673065023062505d1de36519942c04d33fc92b86ea9b11c15ff039b5f9a6e7665a99fdd568feb2ce6f2979dd51d7a9c5bbd18bc2530231008eba8d3cae306707effa70c520baa64e849c5e55559bcdee7b9fb41ba923097fa319b7524f6b14d26e080778bebb47f10302047c435bb500673065023049ca9c4dadcdf6d54475b8d8a25a3eb9e0ee10984e03a71085bf5ec468fbebd4df5f20b006cffaf2ed6338309df29d43023100f5f644dbec2a5b8ee0841800b98248789467b39b8f9e90989bfe8639dce38c3c8a0786a586cc0b4227c537b779145c250302047c435bb5006830660231008160887cdf11cef51122a31d5dcbd0f79db0481ae7e40f0818d42e8a99288c014ff1e0fda304114c5da7df8efb13a5bf023100b004e069e78bd7555535a66210320167fa07df6526cca12012377343182c5095bc20445577a0ad405e33d3054837dcc70302047c435bb500683066023100a4f58c36487dcf3ba084579206f116fd0b7c5266c26ee537c80d02a2becdda755d3bd556b07f7e5543607cebb490460e0231008c85aed95aba85826e9c9fcf851b893412bdc408bb53f136c1d7d288914b7da5df5c106de2411a467a980ee455aad11d0302047c435bb500673065023002a5cb71da93a0dcdbdfa2aa24d4312afa05990c7a1ae4c3e8b9a0349bc87c5f6e59adc798716dcbc9c5dd404979fc29023100bff2ddab79c5907c78ffd77628198f9d0cca313f4a5da18b58ddd70b3ac57995b6ad55fba5dd5478c335c2e4967751590302047c435bb50066306402303d02cb27935761e21b6a3d8f2b1f9d5343d1330f80a08866dbac73a712992c31d397697f9d979c31cea7f22fa6c90fc0023074508840fab6162c7c16d6468345c87fd043a374a90bb758b3dcc848179562b4d3411e67fef75990bf259334b39636470302047c435bb5006830660231009d7b4ba11fc126272c6ae2db041c61e98791d05a304cb1abccf5d6804a40410e10ec0904acfc6d7b506498cfca56fc56023100cced5ecc7169d406de8d216fa7a1974b5faa474bca30507d6f31b3aa9e26c0b53c06969f11d57c234b41dc6ab52acc810302047c435bb500683066023100cdcd0f4794de99324717cc296e77e405fad1a63f40ee332bcd2f83ebae23c80416a23a30dbf1c0c645ef160da9dce8b5023100e43c1deb33e9b2716984b5c2ad5b52c31972147de51f50e0fae4567271a6d6e607f94732bc87213ae1e8ee7b69ad9b360302047c435bb500673065023100b93330f8989a8fe41a391ec6bb17d7bce02567eeb985fa2130c0c583077bc92c546fc57826a7ac473969b0777a84fb8a02304c449ceda156a854b1f4cfb7f1514e83b7336868ef85ad09fc7383bc9f0d590d96af862ff137254cda96f906a2f337460302047c435bb500683066023100f6f0bea8ce009b3c691a4e7674e3c65bb2fc87fd555a92f50b79c29ce5e4faffdb58055e6cd8d69f34373f6ee5a88066023100bc7c395fa91f72c1cccd149e0d94770c305e8cf7c8ed18cb1a1edf602f505989394e14fd4150b95edca65f9c29a8512a0302047c435bb500683066023100f872dfee794001ecbf337d5ae39259c76d070f35029932864888da72670fb5a4181b70b12205afb8768711d67ad45ba6023100cb780b78e3cb8ba6623625dee89ba73e19026f70b86316d19dd6fa9970ee551c2f33d3021fced5bc6ac7fc3dc4ad084d0302047c435bb50067306502303c1347f7e52090667dc3810694627ec491baa8254a56ad25d6b12fd686986520467d50902377002b2395ee0eab470c7d0231008ceb51b98b8782579e33d744566919e32e2c7f11b244afd5797ffb3105938a566ba80a77518789b8bc117ed49a8a2e6a0302047c435bb5006730650230736b2bbc30bb01c9b1935f985b359c651e2e1c67e95d241d8d463d35691fc023f433a56d5b830c9f6bf4c320849ab832023100fc855521274eb14e021eb29f573909aaf6b0c0c864a21a251206e04419ea6c8d12867e61ce4776a27f3e286dd66cc9670302047c435bb50066306402303c36343ac1625d7fade20cd3d0e1222916041ce07b654950679b89ea98abb6924ea1f027ce81dadc5193789e1f5cc58702303d433b14cdfa3743e90a048afeee7a3968bbf1c85578b24cd26376dce5599859dc6c0438587a55a273f815b2d3162abd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015cc79066c69e94cd859dbc1b246b2c8bf063ff6473eccf6ca4b9e213a51359b12eb832cb95223e5278aad9a241a68f202303467948677787458275a36555e4b2259c1a97fbbb8a0f456bb98845849b157bbd79ebb042ec4fb7a4607489f3c1e99940302047c435bb500683066023100fcef5c4c90185af771ab1d8f54c216baa8405c492d480dfd3521195cfc953b6d80aa829782ddf69e386f09614b18b340023100c7f57a8b7e9bfd27ab1b520da716f4d86199c18d0907d195f66c6475905e844c9b396fead86759fa85681e8cfea2989a0302047c435bb50066306402303da700ddf6787c7099eeded460f5fcfd974c92105f0dec400fb1a9c87951da755bf47afc67b70243c4eb4c7014083da802307292daa1237dcbf30a3e5b9d5280f954960a4992fe3b1d19bde3ba87dc1c62b0d1aa646d6d5a7ce80488e134d637a5ad0302047c435bb5006730650230665178ebee61f2336708304bb3a1758252a25f21354ff32372cdffa76bf3cda253a02226f008d8a695fb7aaa954be78e023100f6a1d3dd3cdfb9ffafec5cc2702994c01c5e5727f2b6fdac7914a9deada90598afd23d224caea13c10b869fe57147eff0302047c435bb50066306402306df4f450ae07c1df400ed5fd6f3949d41cc438bc112a9ad3f307242f9b300e5f8f872aebac63f8435dc042b82ee859db02307f84a4d48c015b3ac701ab1c63d203c61ad1c0a596d37dbd6aeec855533f676efdc6af4a886e31f58309b71f9c585bca0302047c435bb500683066023100806feb5c42acfc58cb73daa9cf6452f23299499cb37180b5e9854fc8d45c5bd09e78fe1d63fb5f0d5eb7011e632d333b023100bb952220455f9dc838f0a728c911c222655963df77ee15bc49faca346ce3c6e9acb216abb231d0f5f6ce31d4910dede30302047c435bb5006630640230246acaab13640e44bb1341a7b3ca675d64ae8f5599396a68720457a0812a21e26fe8f34cd865c2511978c4466d624e0202300a11e2e7ab78e1a897430a85c2f24466cae96687247ee666d738b7eb0fc9f059971e05e72057dba2d6e486c8e67423f20302047c435bb5006830660231009be49d2e84bf31e9593e01c63731aa9fd16d9bd5461d7984629026c677a379537486cf3fcaa446085afb135e2a91d04b023100a82bbd19c7ee156053d56e1b51960102f41a2bec60306e2de584c29656235fd6aab90fca2bd4b38123490830618b1a980302047c435bb5006730650231008be70567889bbc23ac286afc53bd4def19deacd7c9952682eba4f9e9fb87b1ee5a70b4b554c5e42d31892e4e5987e440023073192fcf95b4b283873f77b1b807e209d9c43e07a71427ef782b5b51583954e2bb4a4a48d497cc2ac6d0fa5ba8c966e90302047c435bb500673065023100f8d582ab88168d10631e96fff9028b0ecbb058d67ea6d7c187fc7ca1d505315ce8a695a4d9c772cf7f74f16ef55f56450230720a8a2c0facd98f47250a5cef5586b3409e1a1e3771a22a55f509aaafb1dfcd691f76945ef89ab24658383c2a03a4440302047c435bb500683066023100b6aa569ac1fdb9ce34a0526227d46bf427d43231da0fb9d27a210bc11efdcd6218d74492388a06974ae861fd291d9bf0023100c1d773fd7102249b9d78645c40352bfcc2a9eb816f41f036e85c3d6ff85f9634e7a47e764c8767113a1fc9b7c768f0510302047c435bb500683066023100b1b5aee34fcb6fd527515575ee51ed2074888209b3e286a01fabd68b11397dc5f2ccf7f9c4466560eb92c48d32bcc1e8023100fa14d3cc909e068b2bff2ca2188a6ca25b929da936d54d9bbbf817320091316455d9500402bb3b266ff342bf84d11b5b0302047c435bb5006830660231009f00e6b797975761ea8201340aab792b49017ac2929eb6561f1a7096f3e8f5a11237fc195d45f10c42514e283df36900023100ee687ac9f10a04022ce4acb2b64fe55b5a6beb7a54e2dffaa5e0cc781aa61f44b62c35212c050281fe7476488c3c634f0302047c435bb500673065023100e8ef990e836813c0fd42eee331ce4043c2ffb1fc7dd2aae685dd136c797c5ba6caf6abc321d0a443e53ec8170d76c91702304985790784969c14fe3af63b9b6b5f21d7f2962c58bbe5551d8c51f482a8b58df45226ad0ad76a8f93efed0c03d4697a0302047c435bb500683066023100eae48c3dfdbfcd4afc53dfec32611812c5c343b13099f2bb2dfade7a94c39bd2df1d9079453ceb35513df85c205804460231008528885812c0e571dfde1ca8915e7c505a3b94ebcb93356a30f0d6604bca5bb578e02f21a2a36856424188dd8e1993780302047c435bb500673065023100bcf541c88d1423bd28396d99259f1dc99d00ae4acdc59a5e08c417afcc89d2c3e4c07b46c513f0e13a38da9308e2f8b202303589928ac936b30accb32beabe07bc87be9f635d3ea9701e7ab844e8cf7e4c45db9953fadd632a3c8c403826eeddc8070302047c435bb50067306502307332e906266dae9c01eb410ea48f17867d083acb95fbf55c75633c2d0b6506da009164f9c91f2c63e201365b341cc7790231008c1311ff64e4005c5a37786af447d15dc1882bbfb23c28cf7ce6a34a53ee8f71a510ebd2c72b844cb049eed4f48020bf0302047c435bb50067306502305adf651b357124b5167eb59ead2b0532f298567eb12cd781110e94656b9622020117e92096a36d964423324896d77da2023100fbefd55503577ef961bb1b809e6d575e1c4cf9070d0179a574c6d9af2dfe05675d0652355fe4da5a35cc023c25242b480302047c435bb50066306402300276613e3f8f02e79f674d0be9089220bdda503838169a7d2cb35c8edb8e2db9e230ca3822daeae8ee270f04f46883ab023043c6e9bd67ccd731e571db28a24054e657593a11727ca70d6aaf44c321de267482dc76e3689b99bb2c0c040c73f9f2e50302047c435bb5006830660231009907e8f4516b2404e16092e715d9b2199b364cb1e6f66edb6863c7fce886c05add108f0a97460736bb81a2a0d3b0ab19023100a9c18021e85376aad11c7b0ef920f003eb77fdedb1c73e2e14c496f54ab5f5106042202e33909cadc9cc8b7861ffed450302047c435bb5006830660231008fdf7f1502a62c6ce99c0bd91bf3f8da0721435645d73d4151b40b90bffca65a83a06c8d70ea12db0c0023c0324ead240231008336dc562d83c8f7bea56b0a93369c5a21eb1212db81a1dd4762fba0b25c27e881f3a20db5f0cee85e6c1aa114c0a9400302047c435bb500673065023023fee4c4510ae3830664b0b274c72304dcefcbd4e27127f40c4f3f40738fb2c017264ad49aedd44d393e27dea4b0e396023100f71c9a567d2b2102c620f65e0af1275b380dcf3e8d97b7550b3a92b11d8fc18e2b5b0dc3012a81b566717e4be44d7e740302047c435bb500683066023100c9e5a19838d9299c79635681e1916c144e38ab7a81d54807723656bb27a802be64f49d4d1e4df4f9466b0d0209fb9a63023100bd99471ae8b693aba53d86648a108b2d9f4aa3588e36440697033f45d6c263343e0ebec92febf0fe7624c2a6edaad4ba0302047c435bb50067306502310087d1f463fb7aebd8d4ee4503bd415b6e3a6615935ba4fabe9dc9e5c333b70d784ec5897861c320d70c53dc45dee39efd0230485f964c7969828da577f41579b355dc4ad4a40cc635cbb12f940ec240ba72272cfbd2b70acd9aa7583392f28ad8f7b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f1f05922056f0935fa3584cb8f37faaab667ced08a6f51fb1ce2adf28a09f729ec5b798832061d49e3912f7df6431ec02306503b1901b3c5b24817745c2dd343cdd36054b8d457264d9111c64c606d6ddb48ff501abc74f4c3d15ae49f72053910f0302047c435bb50066306402302ba9bf95c4569d782114528cb556723467191db0d8ccec2cb71204007c350224511fe7c90b1173094816267263a17e10023075192a9d7d6629cd7a88f69950263fdc8d23cd0f69a1f9935e5f8acdc8919d2c4c258aec59932f69ad083443b37e1cca0302047c435bb50067306502300fed10afc4e2dfb869f4b7fac47cffed02d80b6d79271985dd01486dc91baaffb04282fc740d32d234ec93936f064267023100a213d78cd2f034cb1465c3617dad41e256cddb2243fea87a5b889c3635629fda3feda4f69ca8e5946ce60a71085b0d2f0302047c435bb500683066023100d87b1113ff9bb09c029ef3d363d86296285a9e747a23768b6684f3f05d6a8feda023e6ff464d19ab9894cef4d47286a7023100c521e7922f746894e3faccaeb9db2090c26c50b58ef9558753824bd897a241e0520bc4b6d77aa1a6e7fc54168f1d46550302047c435bb500673065023100df9e50b29ed9160be7cdd1df9e3038e277c900f2b9f5dd6db4e29f1a0571f5c12b529520772e8f6a0434fe36f1cd18ba02305994f881280452ae1520d152d1985889de6f7919ce29a1331ebf0f8ba796b722097cf05b35e994a364bfa49c532a1f440302047c435bb500683066023100af6efd242cce7674461a954fc8a7585a2d73504a197b586df8993e3fc02eae8f676fa58da4d9822de0e278a0a95456bd023100843d494dc9a2c4843523c7d86a5cc3e6abc4b9e1eb88b4e94e168267486af9c1e550b8228dfc031da04794c1547676de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ef92b798bf2e5785d56efbb4abd77f808d2ea9cefa915fb6438cfa4aa4fac151414257bb3c24689fa9b5394a44d59806023100b39c25be37bee7369bc18c5052d0f4e1dcfd728f9cc0c5c0e5734bfc4fa98c6bc52f1d69c657382809f6c9c97928d5760302047c435bb500673065023100e9e74c083b2d6b355ef7ebb6651760819614f3e44357ee396053213badc2ffbd48bd8d8c9b9afb534a4ebb6ae6297caf02304f7f9eea461eb963e0f088a4189d912c5044848f757bb4955596f3b0930fdea7ee66261ea1f8ee87f0ed5263fb4880c90302047c435bb500663064023041ed6db42f5606f8be598d17ff04281ab8adb3d9e68a6f72b9b3b618ea38e7f2705e918d6c0f26535570d64cd5815383023024283d9b31ee2a972a29b917ac6adb652709ea3ca4f4d98449925271b473ce9ef818674072f06c1000737d921644faba0302047c435bb5006630640230399713f3a63b4f5d9a193c3c70e5ff5626e1248ea495faeaa5340fa14a012a5e0c18e29895a6a7211b439f497a0b20d002304dbf90e9ff9def39daf86d48cf7c05022600963f165d7a6618d3a95c224d7ced758a6b02905e140dbb8fbe5608e9250b0302047c435bb5006730650230039c56c83c499e637d1c445719c1ceefa5e1093585f4255b54f4fd024d7da94e4d425e390090b3211f4c1c4245a88d75023100de09df7e2beca73f39be5110954a54847df5d6ae0a11d23eeefd9805558605a6fc7efa2c410ef1ed496bd04d2fa0b07a0302047c435bb500673065023100dedadf24c0f13db1066594dcd0e6062e54a546c665b44aa292a8e99bc40ca4fdce1a3dc83892525388dcb51672d654640230658292ac289d5ad5c784b70ad9285fdace151d8a16601e6599e36601ae9dcabcb3f3474230ce63be40b85d6a9dc908650302047c435bb500673065023039aeeb589c425562b1bd1204aaba00f6181dcd9c84c3421d7e609a572441e23880415bbbb5d7630da15efd38dab2fcda023100d2fa4db95c4739d9bfac68eb02d921c4be9fe04abb83d02920276984de88df4eebb7327ecb88cca6e2837320350e9c490302047c435bb500673065023100a968f4ead38bacbbf98424eb26513b6484f1e53dfc105756a4cfcc7d8646d9a410e712f4f02d0313f9c99113a7a692700230295262757f81ad85dc8f6e803f01d9f396cdf57ddecda235a759ab2ffde29a59b880534adf61fe19b295159afef15fd20302047c435bb50066306402304e871bdbc6a236c47f920d9cc169fc18bbac89b836be1f22765add8e5a8d657f61a653b29355c937b825899f595c205302302e982a465bbca7c5ee5a8dbdb68deaac57ff9c86ef14163dac0bca54945ecf6b57433f8fe4fdb3ad850e1ed3bb5906d00302047c435bb5006730650231008c97e2006f1b533236680ada2fdf93011e8cad1b4b733569b4530cdfa8bfe4ba9a29a7b3cb300f53b9585b1fd965e94802306dfabb3c8fc0a86a72eebe71fae04e24c2f0dc0fbc78bf0439b1ac04f8130aa8816f5fb4056373108964a05e8c0cca930302047c435bb50067306502303955f60513d12411122e8a3ae1133669eac1191fa16f00ffa05077dad30e04ff34a06efe1d5d94e6470a63dad8382415023100e49f3bfe463ed91e969e92dd421b1496c317386811331347f3c99d6cc50685cd33ea8d00a0a5a848ed516c8a891a362a0302047c435bb50067306502302cf593778182f6074d7baefc5c4f73610dbe5c2d771c7aa9f0a6bfeaa2436ac091533dc1dc85680efa695f532316d766023100fc5988c48e0cd248222c865ddc4dc3bee575e85921e5df4322840c7bc21909171de53e7830615194e179ee3ad32699700302047c435bb50066306402307f2a552b2374690c5f6158f4b6efdadb5a52eb353c61f387d0527e661b0e0e7787e5909753fd83b4bae150f157117a0102305f1e3ecd6224df8ea70cb0749390dcfb1fd71971d3d477eabdf4c441c3f716c8c598070a432567244a5ebe214c17e4e50302047c435bb500673065023100e6170f9f084adf29e4f4022b21ec40622e47b1f0e1d512140b6ee53a831a2b54686bc57057f907779efb6ec54525a81602307be5376ade7f6e3f8d0e722d0c1c18e78010d5f7474638aa4754d8fe4a02057f4a17610b14c8a8185ae0241fe06397d70302047c435bb500673065023100e541c76d3276fa5de5da9ee60f08f537f6e66aae1aa9735e187fba87f85a726875a6b186b818de47b0f10d33fb394b070230611f3fb38d2a3f8c5d0d844ec0b58c7cf92ec35584fbe3d624fe69be0006f0ff15fe518c027dd9334e1d5aa7f9e754830302047c435bb500683066023100de14f6e66250f445a6419976fe474e6b33f4ca427848c8623bee752b5a53bf65fa58e2b41347d942be9cb61f3e40540f023100d0a1aa49ed9c6561853204c52d430d35daa8d3bfaf5597a88227cb1717f87afef3d46ea6d0a34b210260e22cc96e2c100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303284cd9740a42a6ea20e20966b58739f1814b23edf1a89e26103afb24a81276f96b11213bab8e7b90434368b52da380b023100ed014038e8d7b4ab210752e9a417aff48fb3e45ed07c13faef010144a66263d6ebb49f8b100087eb7d24083a8b9567f20302047c435bb500683066023100eb1c02257f22dd691c0cf8d2512f7dc657ce20093f3b19f40a1fe9ecdc46166f8b1e755841a3825327ee451f453e16f9023100ffc2e7f77563ce3231f9db533d255b90ed71b632cb7befb6ac1bbbec7646dcaac1aa1ed61bfc8472cd5f3667cb8fd7430302047c435bb50068306602310094453235fca73c2350fc64795c55b535ae03f115d8aa32444d139a7f705f99f5ce07211375c18fe3a8698e9eef1bc8f8023100b371346d4f979fbe26b996ee5b57398c76de2bac7b9590b68f5083c0c38d525cf9512d4411c6d9bb5b7202ffe4c6b5510302047c435bb500683066023100bb71040b2dd2cdcc9ffb5599727658c1701f1309a4d2d270e388bb2caa6de3c9c33365e3f1a6104f971cac4ac1bc2a24023100c347a7e968277a5b77f31d640bf14509fbf92a0d6af9116075543db0ab4e1ec8308c2efb8ed2d89c56e7f0af0fd21ebd0302047c435bb50066306402307a4d34e50a882024f36a5631994b289923347ff439a225031edab8cbdf299f45bc1bf03be61f5a5f90a744c04b9e7a7102307d63a0154d75aae326bca482cca122cbd940c8a2dc87ef8d86e50c96979da46050b55643b6a463a33d2cd76395c004230302047c435bb500683066023100908b29492ff4817438207ebd2016792510ba2f040c654b1d7e6e7172aeda4282bd84b53f70b8a6742c586cad931edc7f023100aad87fb50f890fc83626f811878e4867b98591ef83febcd4c138ad73c56821cbd07e0ea9d41b2e5978dc6d70c4273e690302047c435bb500673065023100f252352ef3325cf9eab3dc28d423d2a33a1dd9cea2a3d2282433922714f3185273ff87b69c641485dc756e96630fd59e02307900aa8f8ec50e6e6fad5d86ead0d7e255f229d8a64410d7902ca79172701262750ea465281be6ac6040857f031e8aa80302047c435bb500663064023077046282fd3f6ef2912319b07842e36738103f07983f08daad8eaac2bd7c55a8b8eff9413025381b0cf1f0cab9b30d72023014c8600ab348009495242d05657dc7d8bb653f3b569a63bb790c954ac6f94d277523d93e025437ab5b61ea3f7ab231930302047c435bb500673065023100a10eb86a785edc2cefac8bfacd4a55bdf2b98df62cb54d59ee9c1fdc517751cad4813cca44fb17e703cdf4d300c8371002303be0dc7aa73d2c9fbeb974221f480f4c1dae40e52d180078191606c44f90504af3f1d95aa7b234034f9ece00e913f5140302047c435bb500673065023100dc8acee95e782b01220b4c34856bd0acfdac716ff529fb191f08c273061969992d4b2c3b8979b11397fe676a8855e9fc02302b4f459c31ab4dfbc909ca93e02cb3b17bca02f09d19cf160765cab102aac10c6112832b6bfa3e24034c12a3fe927a1c0302047c435bb500673065023100e672462709da6d08f649ce2610cad3387c135b7387abc4a0c00ed782e5440379c21aae147507407305c2ad8b52e35fe102306363d2b920351645875f850a4981e8c91109c0f47ab868eecf6ea70fd83df56b60244eda6c6b15270b17453475dbca960302047c435bb50066306402301438091fe110c0bd64394605ccb5da5df59c84d378de5f95a1a3df370a57a551aa2fa195e668ef5343620799b6b48d4b023048218f92c6bf2c74ff0e6b814472187b5ad383d83c55b239e87557adbc6386f6e351ffc34f059454587fe63cbcd0de770302047c435bb5006730650230694e16aaef161e16fe8a88f04bb64e4e4889a551dcff2f764cf498facb6a223b29789bf06b9be7a3d509b51ac892cd8602310095464bd9e7d60191888a62b1c9d20d6a48b8632f8470f4ee25aed8829e8e9e375967c74c46f05d2401c5b554234949840302047c435bb5006630640230493ba07015794ec668b513eb06633380c5f3128524f2472d6bfebec101f33377aae46364820b9eee4125ca6579a8e4070230260f835345e709482869d6f0d258701ff36f149cdd015601b0e48a403337b01117ab24599ff6944e5d466721daac74040302047c435bb500663064023064390fe415dc351d1f12328a687bb90a459285523fa14e8d71e01ac7c580b8c8bf958982d551d0c8a16cbf7e486c3c3a0230332b9d054181da77a00962f57c59bd0776f324b651dde4d35727f2b4cb28cc0b12ee846c88bfe5734a939a386c6c41110302047c435bb50066306402306df43cff6a2a9292638666adf5ddddea0cb1932e2282bca2c543e8670b541edeed1face4e77554f7f81d16544d8a554202307cd3a71f956a59464c11446f03ca76f1b10cfd9a0e8d4b9f6d6fa6be8b4652f551fa3d2655c941905047fe15d317ab2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307bac28146a1aa34fd215e1246d8a3f9ae65a52238699e873ffa68b7e28ec51a7a614d7c19202cd3e2b877030ca26295002302fd89d53ac90d0ac438312f8f1d2e7a4ddd103aaaf5eecd87bd1c1c9896cb493ee2c622426700ae78933e1ee14f6df280302047c435bb5006730650230510ec1996ad03ce54f4ecd3b14de5c98f66d35d4b1525231808d87c53bd527f3584efa1a935920a510d067ea47e20dd00231008525283f4733314a56c52747c878aa1930dffc81727d5f5172a92224036be438c2bdf72c15bbcd288810dd206349ea9f0302047c435bb500673065023001986a12a5f080800ffa62db08e78224b442660d3e6b2b7095cdfc43eed9f7f3b7f2a2dc7523b5e0e4c3677b631b2678023100aebcbedb1e2ae3dec0c02cb3211d17e82d04ff79a9f3364fc769bd3535545ed6c9eeac790754222a4fbb90226f1312980302047c435bb5006730650230022aa40ef039064ce8d327bfc0e369dc703225f2094b53226acd999d7a4e2b501fb74d2d8fd2347ff19a708f5076886c023100977be4a85588d63741541425dde1fd1cd0d2983866def1b839710eee9d4afec8e33f3e17e4d5c9307defbe48666c6a060302047c435bb500673065023100caac3b57e895237ce198943e68c5ff5335400cf56403474f6006bd83516d3ed9467941eef3aea687fe69ff16f19bf41a02307d0b173eda9734eac38d1f9faecf304aa61ecaa9b54148fa36fa2a5f0f1561af78bdc41542c1dd49752ea9af5830f0570302047c435bb5006730650231009c33b92785a7c5d87c6aa985bbae051aa6fb0b6afa10f3a9fb24f03316fa13efb897b076e9044defdef5e81deed2e12d02304c41d7d1150175150a81e1d1f8ebab878f3ecf214390bdc633d4cbef2ee1c1fce3c09d1b3f79caf43ca1bb7a69c9c8360302047c435bb5006630640230740a746bb33648f4cc5d21cdcadf322b6ee34166cf4003547448ba324d990dca21b1a94e68e5e8a44993ea194847fa200230328a2cfc4ba6ac9b40b01ade36262e30fce97ff8a6e53701d49d65bca2ade8354b745804d494222fc2499b8bc8869d580302047c435bb5006730650231009afcccb4a97064283e837a557e61699e3c087cd702cee56d38e8c73fa1d51e0771faf90c5e5f2e0eb9729c8cec463d0a02307a0afcea6db64ac4a783cce070e008a8e74eb19280ec6d0d6b7a97a8be4b4c67ae1087c7aa67c6719944898ce321b1570302047c435bb500683066023100d8362435e4c2ea8051146af24306fa426340d518ca8fb0b691045787177b5088b6face4a12bc12a50a9ac9d11ea2c02f0231008855585b3b27afad3e5c51cf51a3f3abc4dc3f57e22aa313aa78567897d4b2618888000d42c004cf04ea96910d265b4d0302047c435bb5006630640230102ffca5d4d65f3646df671dd9225c7d21dced11d13924ac2764a78bc2f99a4d2ca1e7de148dc7cd2e1565c0afd140cf023051bd4197c49cdbc61f18f9538c705a11e8c855c9cbe26986daf85b581dfd68106e83028064250a29734abf80d6fa079a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100df241734c57d7eb32f5d6ab5c1fc6f7a333cd07725e379e260dfc6ded365434fe5f7a920398f71e5910b209d5da2fd64023100f12714596aa98efb847468f9a723a29268df4309c36c6accc80e3408f43de44146060df3b6b6581e7b56fd9ccc639cef0302047c435bb50067306502301597b2cb86f0dd2322da474319e48927e5ef20ccfc1a691556fd3329dd856ca0ee1049bcd60d5c1ea1e55b7430a7e079023100b497683dcbc924696847893fef6ad152a151cb7bb552aa571ce71985f95a6386a8fb5ac8f4f07a6fef08ab5ca5d0ffc10302047c435bb500683066023100d119021b3adeeb135f9a8af43c4c942bc5ecc5efd6b6ce8b2f83b3938888508d83327fa5707344dc70f97bda4590f820023100d85e6888b492d2c708a9fa85d0161439a3afe1043deb0f586e54df2fdef2c5dd9e3d2f3f64cd452c00afd827e20218a40302047c435bb500673065023100b43347b2b3894d62fca4f00fe527c31f0a99e87949de08640fc23a9849c7a4ff24dccbfb090307f730e2940dff157e86023028000ba1e8b755adddd58f725eb78b44bd0a4dfe8b635b93edb91ae74e006d80948afb4817e413beea56dd05c9b5f8460302047c435bb50067306502310094102336367ce9672fc3e2b7a75cc261c26b412c8f001b5b8cd78cb95fd6fa6e608356ffb9c9c7b594848e86567520d202304e077ac861bcf6d154307ff42cf186bc820b01afa167826eb23f04d580256a5da9c6c9306022e0bf84b8e745b40ec7430302047c435bb500683066023100b3d4a7a132db2679cc3491ed4205c6a326b03d83bfcb167dcf56255c73872dc990ba7b27bfd236d01ed19ada9f88aae8023100f15b081703089a8be0b691e13b17f74121bfbb813452d40f0def12d6e665db199bd88b3f3171f56031dbf16fe73663340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230655954ee7f198421fd710073a6933a1e4ce934d158c4b675e95f81358a86c2ae241151f41569bfb41f6fcf5bafdaf0fd02305f0683651a730bb843da26a071f6172152fb97b536827880bf95526b314992c5ff917adc0c7c99bb383f448097ff33a80302047c435bb50067306502307adaed948430eddeaadcf7055bde67f41f1ca5bd2312ecdfeb07102226ce3c55b304c7beba6ac8eba06a04d09b6a1d5a02310091c12bb4d84ebfb1a485ccaa8b40387bf4507bbdaa2af30be5edf2ebf6ff27d5cc7ec547f7d4d91d7cc2f8a6a53089640302047c435bb50066306402303b1ca31c6ce50734da2fba0734810f850423f405d142ea4381ff2bc279c36a05dfbc6f557bcb9cf56a380a08f3ded0c102303ceba09390cbae92c82dff1f6918f352bb752cc99b3f959ff97bf74c0c34f47599b029bf9201b5f293531784cf2606620302047c435bb50066306402301c60f793740e50d69daf3008a6e8859401f641a45052ebbe7600c56bd2dbd6007a58717ae484186b71683e1f1357ff840230783ab7d9b9febe07692dbe658ca7960dbf8853d0acafea4ebc343462d845196e137377293a344c226ea7b216da7c80c10302047c435bb50067306502301977e9c34de801fe928184f49c4c4b772fd2e8f1a7c72bcf6c4545dd178ceff7abf84aa3328fd4ca18d2eefd510379ed023100e7b10521917014951da2b7f638598241dd91946c3475074a0bfb8226e0453d8b79c85bb5a58f6d10d7fd3da12e0e34d60302047c435bb500673065023040a07fd36b5753869d727cdac2cd71331cb7920293734ccf5c67dd927091092f74c387a794a87b345f7cf66f00e580b9023100baab2c7d7bca5f18d63ff12070405151b473a12f166d4ca5ec88678cdf9062da726e0ed6402dd53139247767ef6e14810302047c435bb500673065023100c49a9dc345b975476e85b02fde3d203980bbac95e3f7ac17b06675fb9f7545685319c5994b86d2030823f17f96334b1502301d2c0cb06a90d5aa5b6f091257c2b846060e63b38c2db957cdb39605214bef889a30f564a7771eb83a22e41c0732b32e0302047c435bb500683066023100e2a23ae961db9c7d253062ac848128b275fe4b5202273b20bb881efd4645ac3bd37018d6a26a3acc722290da1ec1461d02310096b8023afdd1c29f0ba91f810acff10257ea21fd8d971ac528fb157c923148c7ec8759417eee780d5f3b7fd57a46bc790302047c435bb500673065023100df3644953edd1dbd9bf81555b3fe718550859436ef4902a74b087be827549d0588b8b16d063e522f4575719ef55e724f023015c070081db35adc1369203c695ec9b3a92889984c9bf33d69da2b774cfb95e1ca9d1ccfb8f3eccc1d55cfcaedb3927c0302047c435bb5006730650230317a03e064bf54060de9c81ebbc29366e463d841c5d6987659f3f4b08c07e8f640ddccb54a695a47e2111b2603c33f2c023100ed0af7858774a4b41453141d4c6a643b616fda439a1db2a2eb517d9b125a22eacf052be44979a214f1e3a44d7d67f3cc0302047c435bb500673065023100d72e8027e8bbc34f368073176130dd3c53d0cbe3bf34cd0d4b8c177696cefb46183ced260d48b07f79c0074d2187c2fc023054ca75b941f19da2cf1aeeac8eabbacf747dc8412287e6ea5e760319696c2986a990518ab56d3e02abadb9075a81ade50302047c435bb500673065023100ab9bfdfbe6c218e640b8a6fe8b4f6881418e45c24cbff1b83df9704f37ba7d8646a9466fcdaa1c7770de7b52f009f5c20230393a6e43a8da6192aa4e8c2537d1d57a4764cc9f6a42fe404c834b2819c3e9bc1a3228a7bd3164a31fd838b0accfbaae0302047c435bb500673065023100b5974128506a9b6bd63ee0bbdb552fa3a0d767fe73de6780e04590ff9f784a76895c15c00b15f58fba016994d2d9c8fc0230209d88540f4bac4ef44646243e7aed72e75cc2e68153df05017d299ed7b4d7dd0beead433c07fc8bfba123d21894a5f60302047c435bb500683066023100fe96c8c68213a798fd1264f2adf82511776243b60269acfc8a4207a161bc0b9a97f0bcf26cc67e5c89694564bb7bc6b1023100bee507e8ce7ef11b2bc17fbe8af228a2513ab3982ce03dfc942e42774ff7b5d4d71623e23de31eb0af54a828d67f6c5f0302047c435bb500673065023100d506d2f78fbabde16283e6c6ce7373b03f9aedfe69d08a9066c6b3d034e3837f95417a7bda355c08da31391e619887fc0230387e864c14aa95fb5e6e6f22b9faf768b47e52a250fad47fdcb782ac343ab605de8088e1cb8657a5156b624f07b483570302047c435bb500673065023065e6803539fd7c1394f8324de773d30ee71bdbc34402974deab1aa97fa4ded2b49150e24f925676cf36ee7a4d249d6160231008a9300a438553046e8ba7c08feabea444ee11b42cc16c7a6f5d68f532c88667d7b48d6ab1ee427028d97667b4d713a340302047c435bb50067306502303efe35524a570276bf6fe7d58a2c6907bae6fda8e83db0b80601cb33c9d7ccfb336b4e3c266257331bf66f1d2f656a87023100b1f602f54370270758a672df00a6810077ed15394530d19dd9a0dfe9538a3ffd2334266dd903c81078abbf10a4dc7a9d0302047c435bb500673065023100922ef58ed4468458ed78887d6ff0d428361f9648c3bdbcafc7258a0104e46891c703193686a2384f8db24415efbbd87b02304d60a63c5a11401881eb68434c9c7a142a7054f3a8fde1c67b465a86ed85c9b4adf2f5b4aec73f50a88931dc2464ca750302047c435bb50067306502304f4f1c6642cbd903e61f23a4b8d0429637c850a2ebe80c0c46047547e2cb6c5e245066efb1db1e3f77508e162ee8e675023100ec504b67b10d608967eceefb2c2c0491c17fd36554470433afaf219f43f23b806c734afc97b2715b2c272c7f744572730302047c435bb500673065023100f4244c83af4bbde6eca6d287cb00bc9ff67aa6da8f17e795b356f17e59f07d4a63e87212879ed482ced251dbc6c4db57023078bf00e2ba998100081853ddd3ff529b71708838a0829122d1eba13d6e9b27cdc81e7c5483ef111f6ea5620807be17e20302047c435bb50066306402301aca0f7c6784f35ad225dbca36eaf0e06cd2082bcbcb9eee6efd5be0f04e0ee8f616f6a78bb5eb33c939d32fdf1f6d7f023045adf2052d0308c1ed8f58fda6babec6c030de1748c073ce23072733f2a977b9be24458e2cd965cc930d945e7a9af8680302047c435bb500673065023100e5f4cf8e7113bc0cb1d028e65f65907f599d9ae749d9ae071999848080b341f1a2f61d384c1cdd1803b93def5cf49176023075389a96695c46d97cc19b5eeeb2d4659d2de1c40394cc4f0f69c93d1eb8a9a98bbb92848f92e9e566b870cbac5e8b7e0302047c435bb500683066023100820da96f60346db7891374e67a54733646583aefca2bfa33b93715a1b813f0156ecfe05c1acaad302a2b54451e1fcf9d02310084eb22a0526c9daca62da7099b7fe04042dbbe3fed9a5efe61b47c3b496aca2dc592f0cb0ba39fce58a79831e60d7cf50302047c435bb50067306502303736f1140c47ec1351a794115998f599afa80a2f0c6827e19bc07dddfb7932f2731d5a956ba74acae58cffd41fc4ec09023100e8e21ae28610ab3a91d1116357f7cbd8a2b211483ba2915ea7e83f679b1c420fe196ccf6d32753e0d19a1497493218000302047c435bb500683066023100b9b13ea6ec630b3ccfa981d3c4184dfff10d2047e3f7155131df54c7641b71a5371fdfe756b8d262dc168327d8d04d83023100ffb75b747c38a15c1eaa9c3168b258ff6199f4a7f5ed5b3162577a528b678e162aa7fbc5dbf27da81d61528f780d374a0302047c435bb50067306502307e6129851f24519f0ebdcd3dfc154a5d129480f1865f0214321e609787d9174efee41f5f1e55b4072c58d9da2df6d4bf023100def875cc73192a719b03bf1422661fde5a3091bdeac4038389cdfc5048eceaa6da42b873b7232f43de99536736d126c30302047c435bb500683066023100dc7c1cc0b9b85aeae90ffd18021acb8d2c03b43ef7133a0bc450360f8e298317013580245d9386709a52ce5152b3c80a023100ed6608ad9ccde5501aa4dc1074bbcba5ac2bfac093c9a41c136bdcc356950b61f553511909c5041e25011a2feca9a7080302047c435bb50067306502307f69a7b200719f647ff1bb2b443a9e9a8a92fb2ca04ab2ea13bdaf1083779f0c59a109450ff4618759aebaf2d537219f023100836dc831299e9d63231a58aa6471c8443215f2a70bde7c9710d7136acee32baaacea5a5fe25a8996017d4f829b2c263d0302047c435bb5006730650230021b8bda920944999deeeb8dc90049b0b0ca3fb1b3eb75760ec85d13f0728c3b251abf9e114956c3337e2c3732b11e25023100c93d181458b5e35d674a55a3ecab7ce521ccd31774c40f9c351a95dec9c5b0c99dff9ee1a4d1192584c4236cb701e8240302047c435bb500673065023100f214a0f8f50b456bd85784ad7d6e8ccb053d89cb94cc186857c7542f3015d0036f50c695c6b42b5cdeeae0ade40c31350230023b1ad42d438d264a6953ec687e8b3a7e789472c63a08150935b8082fc74230641e86fb45e8fb66f63f6c0a6b8b7b5d0302047c435bb500683066023100bc83fb31ec18ab2ea00d10e1f2ea04b8ee61aa7ed94e0fea5bf0283300924330dba69e24850992040bce34f543a0a342023100fe3183b04ab2a823bdcd2d6ed06785f278a2147bf9e9a79569be221590e4473a015e3b7d8a1965a06e4ebf197755e2820302047c435bb50067306502301fc8eb879754f9fb9d4ce426e737a6c47626e991607327e28a4252eddffc8ebcb4e2ee8ee115eac7f3704a5cc5697cc0023100e7a19347cd35790af98e14c6eaa258032c96de250786d5bc666bbe66463f7f0a8d2adcd601274ce138cadffecb65f5150302047c435bb500683066023100e44edda3f240ec3be9f43049a2952c6b4aab13ead148f89fbb342c53947e1fe704b42db3fbf0db483fa128b5e8350886023100cf87f99251c1e4ba9ef0341cb93dfdd2b96fc572a0179ea1b40e68fc46a11fb17f6d1de9fd4a07efa5a96f1248e4c9330302047c435bb500683066023100f18bd93eb75aaa439814f2053710e9117a160b952acddf13642b8f1814edaf2a1d44c0b0964567a480014d04e9777cc6023100b2dae58e6ac56fc7f7f768291de8b8f0a2d90e5fbaa5f3e1d596dd4736a5f1301eaba95fe9661db4cb497e3953273e9b0302047c435bb50067306502305cc6a40f23bab171dbb839dee3fbf999aae5b2b38277f59f0fc897352ccf1853c43a2f8f3c18c2ef3a4831e5f5eaf679023100c78ee39fe7cc7dbb6315fba6b16fdd578942b13b8749c73fa918b52ab89e5e2c53d83863967952250d750f04e01ec8980302047c435bb500673065023100ea567ada4a31a73852564f59e6d2d731de9fed424449dad92297c0d9a1a341793dc076a8c2977fa496c78a4e51e956e4023048a60c504a35a6957139f70eb15b4b5d6ceea28ad2b552008779037873f77c20ff1978991270e1235fa155e0c81a94940302047c435bb500673065023100a076caad3e273bc1f6fabfa031f3490f7327d85200d4c4c51961792660c7887ed911cd783929659b37daebb866d7d880023017e7a701e32b4c7582a9c8f262c0a820e2161876a9dbb8587598c9ef63263d9e377403dc2033f59205b99dabbcc3306d0302047c435bb500673065023100fc0b894f05b81b24c7bfbe7ef5cd5fdf98df3be3132d62d41af275893128048bf463002227e909c90ae1d74d46d92128023054699b2c2a72d399330471ca34d9652fc1f8a913d8d783300695a715308f4d44d51aa37947d8229fdb999d153dcaf3540302047c435bb50066306402305e9052ae21e6ae33dcc190460c4fdb2e8d58967b2b564553d8deb6e10315ec59a1a2d6e178a587b1283ae51655701214023043a3d1be7c5f1d4574acd6f10caf38006826e9040087c21e2dac212490214b4c93ce2ea040ec5de75358f262dcba013e0302047c435bb5006730650230679fd2c434e81ce59626271c51f885c7e96c39590dd5469bc973261200602649115d62105be0295029aa934dc24751c8023100f08ee3531415ed92e971d9e15089a93dd41968e01e9c3e71beadc118ff1955dcef1f8f800460c25f6aea5266138d32070302047c435bb500663064023054fc94d73506ad8577889565ce4af18ac805c6ad8714eea8b0227c12f5c1e365a138cd07b745d5e42f353ae8b38f292802305ddaa08b9574ffce8fe13d4f38ee847db6e54753b53ae64a7757af3be9f64d95d7eb3124008b34933aaeb9d794100c090302047c435bb500673065023100aec93dfd1002ac2340e9ccfc0124c4f1bd290413e6da2a7d532b5e4f85ad30bcfb37a5ad47d553de33e44e2b9b5bc18102300a5cf85265f7fb22a8de0c9c7467616003d1d3b36382afdb9ae577765017c08ae165a46d4acbb2781bea64eda1b1fcbc0302047c435bb500683066023100c7d4d41e8e977113b07adbe80e011908df847ac338c0ca07bfaf18f27fe0b1b226c23fe522a1e799ff81f409292d94f5023100fed9d92e16756547832a70a4a84e787f62c492a837f5aac452b81b5082d2e939cc9a90bc617e43bdd20d5dcbc7d840850302047c435bb500663064023036a565a069bc01b016a85c9ec1f979fbd8cb38f87bbb30d4d237b9822fd4dc1d79be9543b2750aaee7cfe91cb1833b9302301887c877c53d4d87004a9f9816ff1c0bd4175eb72c864ee3a06604f29d17b5628f15cb42c2a0ca37379b93f5373d4d770302047c435bb500683066023100e058a8d93b9b9ad2986c016cc8f0fe6435225c94c6b1366b382ca6824a12d165d295e145cc482f150e59f2bdba3d4650023100f04b0ae269b1ac36a2390733cc8d627e0bd688f33e2661359e7b0ab2c04de1cef50b2127d8a052846476e7291331f2920302047c435bb500683066023100d2de7fffc62d2cc9a1f64ca18ce9f0337d3c5995ca22453a820a64f57ac093a627a548faeeeb137a0eaad1be4f74f9de023100dc7287a038a394be4559b52f4cac4d037a84080d923335bf2ba40bfcbc679a761575dd9f1d84dc941173c5dcd077b3e10302047c435bb500683066023100aa4c33498422aebdfee9f3fb5bb8a7dac118243cbd3e7b8495e17eab8df11c2f2a5e9a4c774e477df093f3a106fd0630023100d3230cf2f7f9af2e55530dc83fc4315cafae7ce2882143c6204008f38d935387c2403fb5847249c3bc82943665084f1f0302047c435bb5006830660231009d608be19ba04321025d1bf40c1293ea7b5d9c32b074167fb74f01b98a91d49e493387a391795700ee7749af040f6790023100a3201c0773535ab3d9bf5292a72b090a5782d7ac957f02335e2b812930aca2379e8e68be8e836c298672b640975a15d90302047c435bb500673065023100a80e12176bf298c3b55def36ce6c74542b29a7c43da8b3a3b82f629f97aab7c00e7a68e69f8badbd5e2910581717b68b02306b76c3048083497b011ffdb49b3a7bb0457241689e036d104589f0edd02ae8e09318216589eaac94ca627b7ecc4072760302047c435bb500683066023100c64d56bb6709c9d1c7eea00390b430b2262c7b3f172df1d3615abcf110af3482fc75bc212e7baf7ee8b9728c5942e1bd023100a5f555a053728c6213405dc4cdde985a03db7df5569591f193df22b4e44025caca7c25e3cb15cfc6ffe18a3ca9e0a52d0302047c435bb500663064023071e4c07de612db9c1b4c138f09eb9f384ea908d1cc74702ff666c4a3a31f1d46c049bca85b52a1a75ed25a681dec8a720230142f26d7ba8b71644613a16142b0c0c329b054e6fd6665dd62633b2894b0066bf30e05c218bd2a22ef27bba5da1ce2210302047c435bb500673065023100eee9983da69d001041bc9f81c6ba44a05407f35363051199283927c54c1b459bcc7d1453cb6260c0068429434df6e912023005fb7cec89bf0c9237e87a662eded4dfa51ed40756595d85fa26f342eb02193f74cfd53b614b56eb5ca87acbd5193ce60302047c435bb5006830660231009b40df879a45924b258cbc98f414796bdb2dcb98ec9e1fc7700724f2d8ead561b22ae21f8a47d2cef3e75bc240f5d5be023100bca488d05c84b006793e220d2b8d1371d889f7bda96472cbfe872b686482533d4b51522eed17fbe9e294d20477b14b3d0302047c435bb500673065023100e07e66880801da3d4c9cf417e4fac2ba83e7f4b03bdf14370f189d3ec8f4578ffb8f88362a3fb0c7361f391743f7388702302a834635eacda98ec4ab9a57f7927576e5dd78a59c9c6715e7b0188033f7ff23cb36c19d8c59a59ab904df5398941b880302047c435bb500663064023063949e44174b5337b10cd82fd71f37258389339cb909037bcab96d5fc7a7338cb44c731077343ef89b2f2b25dbd7cd07023026aa117f5590f66361a8e58b982128aa6cbbdae92ac1225e824c351c0538d04b009ea3f5fbed71d20388daae3928cd170302047c435bb50068306602310094e3814d9ed5242f94c11e1c2c2da8d2c9fd5356dcb22bf2632f12e88e26a1352833d2dae1ab060f06263e774697933a023100df5408262bfa9a361757cd64e353fe43a4b20bd6fc253ffb0a83576892bbc811a359a306b3b7ef20395d7de99d73ed4a0302047c435bb50066306402304908c91bc4a2f50e1ba721b8e81bc808cdc9d3658875d91cf1dd2939c2de617435f73d25e2bf691387ec71b388a1844d02306611ab47a6c10fe427d79eeebd2d939164546ebab6f4e4b2fc7e0910db2dde0df6932d35f687a74472ae77482ee61dd90302047c435bb500673065023029dbcbae16d5499f292a1371da20661dca36c945b40565b73baa2a5bd9d96732145ae63616601424a79bed8d086c52e3023100956fd45c57a674613e797b6a15f6acb29d49824123c6a5de20c38e397b97c71688a45cba1df18620a8e5c2ccd3919db80302047c435bb50067306502305216e7c03344c92a10177576e667a43e13fe8a8d1586c63bad6ca9d36b85a3b4cd634deb7ebfcc5708de53a4c0a419b6023100f5944cce88913fc2f2f663bac1e05f1b63ad501a70e891a24cec193cb53b26ec811bd4b82ebaaccfe5f71165bee2447e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d097e5f2d9647ae1a830e4fed395fe7863060e2c825f5c782790fe7f7a704aa22ebc285178f13ecd8afbf7fe0930562c023100a2d7d42661895997c08e1047420d8f36f3434202d6cb507e05c03763466f569e1d82251807ed06a428660b05a7ceeab10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023079b0dea748dab94782f7fd1c0a279524902a21834db30647bf0e86609b16466aa471d3af76ef8834f8a6ac05d4ec08f9023100cad9fa65686fca9a791a9fd6bbb3210befd9bdb37b45adb1f157e097aad8e3696c67150b7da4f4ca2e2bd554e1b1d3b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068be3db64b99f66a33e0fbbc60b4172852a8ba1a693d01db08f963fdf6e3aac5ef79d055bc529f835a1fc2d32a1e79cf023034856aebe9dc336916a5c92184a1a4a381cd662d6b1c76e482f2346d910328f969ef42f69352005c6a0ab119339217ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b87f43aee4aa6e1cade97f6878090a0321fbedb6a1a9fa6e60e8d92965ba1399b6e4287c4c8611bc2114a202126509a5023029838a25a5016e86ef3894e6a9b7a2d35bfa7579951621d2a4f99f2f0f21d3b575bcf7aa47d99c7190d9ec225cbba7b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302606f90ec3dcc15681ca6db5c6ce970c4e5b54efe19f25969002613ef19c6f1c301ca09db2cbe9c764fe7833b7e84cc2023100f4d1a97bdadac19bf453a5a0468fcb119e54088217add9254d4e9d86f5aec1c9763bdb6e1045d4dccc0322c066b7099b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023025aed1af090b36f62ab2d3698c70e62c975c491e1583cb34a2248c56c5bf69856e9f3a1c0632d413dd42b5c42dbc23cd02301d710bee1975149bb6fcbc9bcedc7819aefa44ae92c6fa4e9076e34528aeb886fc5bc5b6f5831fec5f30fa69017898320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c666fe8b79136bbbeca9fbf2b000753a4f9d8d96129b986187241eb5ae036276826640377a84a76deb32fce5be6436c0230027e798161d1a905e1aa54763d5f07114188910971213857719c40b26fa3968079e09e35be98068d730014635ce5bdb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f29502f1daf7c32a65d8b2040feb59634b452a001d3e6f7c3f2f263f6aa8b001fb0c82b2d0a9f41548d15a17307c91bc023100c31c98ee5c08aa79d0d27041e6af232c40ebd78ddc36a98a54c0644cc41b7a95100b1c2c3ba91248b787f5f21ae3acd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067496180ea1bb14bdd3f4cc38ca598a0a164a4e8d1cd5b8ba5f2dc8ce25bd0c104c2625028f68f224b1be6aa02e02f65023100a0ede58dec9c38e6d6ccc98fdb852948ec19c800d8e3777a33cc5879851c1c212bc759cc838173f50d6c10b6e3db74090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aef309c93128ddcc7a92b3832a071bd20d0533d068e7d9f0df1a2a8b9748e62fbd3d86ea32b8de84365b45b63d95e609023100b2d5be9360c8aa8b88eaffbff049d5b1e46cb67b291af2a8ca5ab1e04e5dd78431d3115e2710fc5c6081c3ea16f387430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3d072401f8dd2f2d3bc65e03f20e3daa56e21f3013a8f9165e4c86413f6a1766aaf5af1b374a98174d74eece48c8c8b023100a5ee0beca3e5b64e04b5f07dce6fc70d31328f0d1ce0a8fbf93a221307a8f65d1e3a7780a439ce1bb3cb4228e35bc4430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8e3a5add4cf97f2afb710d339c2b50bc13efc7a2fa57b62fb466e995f0753537f76b9ddc31c6673b8f38f8afd114b80023100e83176150667ed9f4799e069163546869cfdb14af79e5054a74f36595efe59096e370a9ab9eb6e9d0bcd76f9f3319e9f0302047c435bb5006730650230586037f7cd4499d5f82b086ea80b9a300b4930434c85096d16f751718bbd070d2c0d0fde0f0668cd2a80c5edd4b72a4a023100c06544b27a7443edc03b1dfd1495d52a50b7b2a5ee748efa1d9dd786b70d9a066fa42d6beb7fa9d780312f89d66c046e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b0f09bfa1dbd95ea60fc35e3f9dd44ccb939773f7c578dc7750cc88e5bfa1a7659790973b7c66e9204293c3408fb355b023100a7348d1c5fb45e53446140f4589f1f638bdb50d47ccedf75ba1eef1f3c58eb6680581aae8a62c0eab766871712683ad70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230768d2a7a26b4ec508ee51539c28ba30cba9e77f20af0ce0e80a1398312b5856bc9f67e98f7d7c84a7cb875e75aede2bf02307fea1959bfdda932cb8cea8d26e4b6ef8f79109256199e188ec94d28a995762db6e804948534c4e988073d52dbaee9ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301cc90a02ffb47a3426bec638dc7bbad2fef6d3e61ef31f46f0762d34a43b5fd89abc93c194a2086281c44377a6b59d170230064f072217fb5a1fb4a6ad289d1147851b2186d6c92db0ca763fd1fd402b3a39b7919d36b40e7014ee68eac7754c49ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aa635a2515e08f421651b3c30fffdcfa485311ca6cc2cedc853f44f044cdf10664f635449eac240edee512ede3d2232023100dc3d362436b335904fb5089a9ad46200269e339c73cc056b31e09286ad11fd4c954cfb0a8ba019e31cb21ed4dc4d23bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f855775f442e0f239848739314f43aa4c445ff69de262fee6e0add6729b486cbd9e58f233a67e7b9d7a91c98403a500d023100aae7b4e8b40c1b37b83e9440000343cb829fddecd496fdc1d5afa7e8e6093b89e92c3a0649c36f36c2e6e4e3d72ea9240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f90ecffbda76be5bae812534c3fa03a054d1249174b999c8b039215fa4ae59a5936897d31ba443dc986bd52516a4605e023025cead2d22195a0a5fcc842552d79b91dd1b9f3d9afda1a3ee572d4c7d8b1d3ad85710d906261679729c8444977970c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017e2867572127dd741c632fd08969542f2d847cfdc03e4dad1b0466e21cec33ecb7195fdde14bd0a446eab0f607dde3f023100aef7bf88163d7ced193776fbe6b64acca9d61bb2fadbddbddd7483d195738913394734075bd2c1fc2c65837cd96f39390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c4403b8a9c13a07d17bebd56d6a344417780559aefc475516981f83eeb7a16d04b16d989d636a10436729f731b8c551d023100fa7d2d1a8a4cdfd463254b71bee46c48ed60b1a917e9142bca94ef9ac547a381f98442ffdb25517e3ef036bbe84a2b9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c37d558fd5fb6f6e7c6289532f9ae198effef8548a0795b8badee67874e7cebdbd538479196bf9bebe8afa2234e724a023041f51bd41e4fa5b9d50742428a4b7d75ff98889b7b5d2d26fbf33e82c34d57dc66686943f7b6f037c2d52920ec01dc450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301692e1faab1e636e6825584e5982de1bdb8606d5e09374b9366288f99c11bf12ca5de5616bd528a8a4e1d842d5672b1f023100ba07f3c6e6ca10b7624f120c581bd9b4a2cc8a8ea67e6b0d948b6f29fb1fcf19e8cbd3b0415fdd718ed7c8924dce9bd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306be2c463e567e0a0fe596255695e1da50b77b97b02e545b7dec388c3ffb5b1e5c975dfb0a3e4d8787a0a25f0fe4de418023100ff2bcf42ec0d0396500d8dd123ea733ed9d02c7c8f86754fa70183dc5b86044c6552c1d60da2b52a25cb442f517e2bb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301924678e2914a0c3fb00977823ea582caa98bd17201a7656f1e718cbba10d87fac9fb57bba116019a7ba894dabd94a54023100c9c12ca170e6c715e9277fb3991f91a94409b8512f9071d9a5b4dc7082cf092f7c92f03352332d17954992e0087bbedd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f889b37c88085196c6280f8a7a8e2f14ebb79512923dc3b7e359cffdf15338ef10431da5ea2c5027f998f21207d9eb5c023011b76acb8b38fcad33a853c7e77f9935a3873e91a9668cdf45abfc8132d9ab507e50e2ccf966e341d7f543bd2f46770f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305de246196a0b7f242e2274220cb8d6e098f44ede26cad9a3bafd8e50f471151fb166641f44796aa6bab0701d8296b71b023053239b9153e2918df38b3fce3c57634e0354dca71ead81e294e8d29619e7e49b8ff566ff08d231e627c95df71356da410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e08ff8546d31a75f2ae5f264a9cad3e3c34fa9448898ffb64096dcb9eb11d058ac149cb51ace482ad64bd09aca4c639e023100f2649d66b54f7e7554d0094b62f7e1acf2dfd6a0939dda3b3a429962a3843794a00f7e0b2a710a5934cdf108e420ebaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a60a886a37e288d79442d0a84481ede8beed9adc68b3efea545f3c0cacb9896b5243fa57e5099e7657e234f1d4d1b8902305d8a3ccaec562d76eac53e4ce16b9bf0b9264549baaa43dda403035859683f28050be6923dc6b85bbe33f98de42f8b4e0302047c435bb5006830660231008b806b298628165876f04ff5851a6867bbc1c852c188cd80c0e0a20c3d548f8816aa3bafd725a8812a9b53b6ef002425023100b5b9e30162b1597789bf2e2c29c9559ffbd5cb9bacdf132388c12a0fc7f3a890370c894ad1cc588bd9bf53c48fd73ced0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bff0790d6024cf4042af5b798861b44c81f9e0354c263f3c0107967c385352291480b9095c05787c5000cf9ca8560f55023100e1b6c5fb61c248734ba38ab695aea9ae474069da68bcbae9a27a872956ed4452484da3238598f4e3bc2f540a8ec1381b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf78cd31bf0dabd9cd09e2730528cd9653aff02ba23dfe42fdacfdea7b5a6be3c77242a0bac097ca2660dfd76736f22c023100fb315ca59989949c01f8197baf743b9446fe3aa23a8f536e5ecc21a05d9588932b72c4f1b289a0c8a1e606b222beafea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e2e9d2b9a157a3c017af43f2f5cbe703ec40e18c2118ec48b4d467e9eebeed83062418112cc1bbd44e38dc498c83e351023100a9bb2743168a6a2ec3308ec48357b6f1568b38fd0e4678e9523412ea6715bfa13b5e03f4f907479c4fa477cc1f2afb950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c3625fe0c13053fded05872c713230becad7628ae7fbdc5feb247bd2c332771352ff5d205519878d95cd26a950194ad023100c7513f4b6eeac02b09a24d846dd5885804079fcee5adc3a6d851b822773bdf9f5fb69d93b837662db017e22e95b51c2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c62bf20607f8435b71c4fca4866073d590e0bae269667f50a6585613ed1530c53a732947be9cea7a5dedb088a1494f7e023100a56597aab14f496364eac53a7f12e0d9ff97534214d6ddef11ea7fbeec6201137f109f109579e482100a21ff1bc854c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100af1506778f5f546975c4a536f0cd8b8c7a7749c6ddad3bce941681950ea9070d3957445a9ea01047f3f318abef7af15a023061225d3c82abf328e0d5e82bd6e891342f2f958edd29940cd9954c8b7d86bc47eda82b3b13bdfc9c420c7c14fed5ece70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b40158a7e379ba10f7df51b83be336d9b578fe9c3e3d6e8299cee51a721e731376187306ffa6d8ed9470a6de4f427d47023100894b0f39a49a31c5757ea5b4ff66095dcae885672de411a0b258baf8d234b2518af253306d6e2ecdfefbe827537f36920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310097697db87833139f5f0509825b97b8a436942c006137254a3bec7bbb960e8ea3506bdc9915600602b662be68d097e529023100bb963c12b137723df43e1cc6bece5b506041cd91c7ec48dfc38fb3642d09f6ad2484dfe59e4662fe03e3eebac32d6e7e0302047c435bb5006630640230635572a98e16e9285ad84218e9dc40892856c1315bc2e68e2b823b110c09c235d756058bfb22d36b2095ddf786ad3676023037708c554e8453bb72e41939f689e44cd66430c82c3a95bc42c34fe071d2dd1840e6d592b54de18f0171dc55befa2b6c0302047c435bb5006730650230198dea91b44dcb5ad21aa3fed4f191ea2e84146f6c912ffc919c294c254b7d914e9c3c643135e3c6c5fdabd8946016ff0231009fb44fcd15d89ac7e79ee4ae3cbc8093473fe1a31406458e6ab98be5bcdffbfde2170cf2d2b34067dfe2f358684beb920302047c435bb5006730650230560bbc92fbd02baa1b011b032bf601767becfaf52b1a2e99f5deac0fdf398c7ec00f6d9accfc4184c1dafc89db08dbfc023100b30e5528dd2fa6256fc564c93dca573ec847d4f94b521eaa5c8004263d0dc1b7118cd063421e85d4f05e82a67e7c47d00302047c435bb500673065023051c126510d43f3cab43b071ce38bf7034db0e8276a5177443ab0a42c6a3aa98bf21f8e2409716cdac7b71d11de7f5914023100df6e27e66975fb37ddb29742fb50a69678a3b00608b41dddf81f747517773bd6c222a110541836e8d550907bfb8457a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230238cad26ed8288548371759dd33f0418ac539e1095357e822d6ba6500b07efa463f61a2f67a8658ebec2e0a9ea95bfe80230759a1f09838a236ebd432aec1dac61d86d4b4f6871d552e33894ae7afe0b6c34a89e0a58ca4ce7893fb4c5366abb93050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093550c4d25d5be5fe758902ce18cd713e5f2c83f1abdea6d1d6e288e59d86faf25ee61d47b1937e10ab8175953cc0a1a02304024f9fcd9932b13fbb75006c50f15292266555ab9ee19f48ac2ee9e63f365f8c5f4a0c06c748c0f5e1e2e5ddfa2b8580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090ed7d7654da9196e3ac8fe18a6edb4f6510872a3535bfbd0f4b04e89ac9e739fb2da8b4b0e1c3ec3d1b94d189ea492d023100c45ed4966a54c6476b33fac642c0eaaaf650268494b2febc075f3f3f385dbb00622fd9b87279cd183ce6d8a8e710dc770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303007ae46ba427de4ad8dcc07f08da79d32310e0944c9199e30f071b71b7e0775091b11bdf4b3fe1c1391c59e9ed3323b02306c685f0e2d0ce17d1fb4dc7336c8023e508138522ec33c8ed1ab0575ba8e6d3633f27455a16f646fc8e7ca82c38637350302047c435bb50066306402301ca66547b3f41e8b22f2b88f26ade9e5a58a8eb3e9971bf073977e56f1054aa38a82f590c54fa3cad58ebab0f97252c402305aba6d645034841edeaa98d84dc6214c9ed954fe3870a51a38033d475e87b7361392a446690f9593f2e01e8fe30aafc10302047c435bb500673065023100a1d450452037a085fb1d7861176ee45aa3245e5f629a12ff9361536379c3c1ecfd4b751c1e25dd42a20d6c33c45a74cc02300422b385f77bbb3bc34eb570d8160e82cf71799b3a307294643765e0e3b24304f8941a797cace9724450d4392a03617e0302047c435bb500663064023012e8b502d720555351451d9f05ce7ba2de40d45a31419cfc2cb532916515846b5291fd6fc772d2237b7c701f10324aa40230415394e12c7acc3874dcb23bb1288271334cb3cbb246670150a1d8e15df81d77f7e6e98be5a252f64a173a05e728d89e0302047c435bb50067306502305c683277781852d5894c24146d640be2642e8b5fc1b09ce340313403b3f98389952d131afe71abee137139aec7f61817023100be04d8ead340e359a6830d88b7979d9f097dbf0ce118624623d2ffcb352e1b3218a4e289877728adab6d9e48ea6cf94d0302047c435bb500673065023100d52d6e51717dc4fd7ac292efe4f2b043cc98660c60b41de65b6bffceca42412d5158535bfaf92e9b83f60821b3836515023066f6c4ecc3e31939159d39cef8d5828414756c5373c8ba755c9a4fc93d214ad83215f806af3f4c1848c264b90b0d6b570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003082ce02d8f1af69c8d2a95a00208d985368eabc18a421b82fc2437c8954d7a2817be9cd4db438c43868bfdda1b1a81023100e19cfa8c2a190833de4a505480b00bd4dc04dcab61536b63ebdcb878dea7a21d54bb607d8ed07d96053a37950af8a5cb0302047c435bb500663064023014caa5c003eca2bf2c01290418aaf4f68916718f63b774acd34d2c61a7c8fb9690235222c4c3f75c8d8b136644123e2e02305bc3db843d5fdcf51fd8d4431ef969ae6747811cdcc07d8862d1dd4c9009adbde3c6b79ec6fa43b13da398fc755211880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230573bee8ad17ab606d460efc30590504395d5ce759754e271ac03a0b427c68c9e2eebc3b49c77201c7de686471d43c6cc02304963eb958192c4a5b293c1cc5cac21725d7c185d42be6c8f3ed8f547704c054ee621191f03c4b3c0ef12ee7990c340160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2b043d5c5a588c5d0ad83a3a5e2591da54e2ae268b9156fc01b678835264b155945378f5b033d24619c18909867cfcf02310089aa067b0380499b09545e0bb20afe03d005aabbd55239bebaa9d9adc4b48938a13b409c26387047b8504374260d53bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304feb3774b9d68e13f31f1148e02a0f043e5bc6f63fe89da5a7cd67d03e9740cd10d5cd0aa58a30967ecc1c98bba46ace023100ab303ba003ab0f1506d66803e47295e4cd6a9ecf2660dcb22834623d84445bb4705ac8aa5208e1c71f9fcd61b35dcf980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230495b5ef83e28241473129773cc8c97b3feecdb7aac17d3ed35882ceb9214e5252a8c51705e03a2cc20fc2f6c88a9340e023050044894050ca66e1ab710047a84f4c5d1b13faca4fddcf977a01de9e8b053e68f33b511f3bda961ec9317c2d44df4230302047c435bb500673065023100988b259383a5a328c639dd7373cce7dfacc0950693df0b1a4ad8e27bde8387e8300bcd6a850e6cc314c251bdf74bd56302306f3d099871fbfd14fc313d195093dc080cdb991530b44e850f91d0935c9623a1903184315c039b87f454d460968394fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100abf328b3796e467b5a93b98cbcb47781ff90cb8dc4e7260204026f7295fc1ba441ee78085d9468ce5f668aef2bc12e6e02300e7c234deef8ebc29d8c045bee9af3bca132b1f48c2ec6e025f70214632a988cf2df04d6140850f6dc40792e7791e9640302047c435bb500683066023100eb94540e5584371872141882230e19993a3a2a267c7d9b108361f90276201cac8911856308aedeaaf87df0b743fe23d8023100f8e5f13b5c181e745912c91bc4b4f55cc53cc493c1428607e67b4dadb6dfe8f9b2e471c7ef43616a6bcb45053cca2de00302047c435bb50067306502310086c5d71ec8ab0c5a01efd4820b2016467e1ec7c76d8ca9e8e65193ea12e9af521fbca15de9c2b5bff374dd9e459a8c1f0230730a2ebc8305e02d03ed9685977ce7283ccace8d2813561cefb41a6a3fcb6653b8368bd1614a6df1bfa4a69990eaf8a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304795943a4aaee41e08bafa10f90e72c8a3584932e205946c989e543a0929a4243a787cad7113a1a1e2e41563982f9e7f0231008424948dea7f1b198e896c434a41a929e5b7144d3483ad175524123204aa53c4ec7a83f7ecd8a61ef36c1e49a59f7b190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cac35c8f9b53eba2795c2c60bd81a3e26e28637e4e176830b04f5b0d8f98d0bf8ed99874905ae80a5b198c015e37d1102305718975282cdfb3cbb379544c089f721f9dea7ed6488d5617c302955504265394158da70116fe344574f9cf7c7dc6b8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ac6a0899e9f333bac31b60390bc698a3b832c6187f1dda2dcec186904225cdc7df8e4955a719e8048f490e167ff23ab023100ea91eb0c0a39393d8323d27ebe4c624851b056ab725ef656987ea77b5e224687b0845cde851992b0e1be438dc37c249a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056572f2d8d26a07447fc94060867a6af8e77896bd29e7ea0c10b4777320f19d59535449f107add54dab62b4ea5d6fe36023100e6bdb470b9a59aa25409ec4c496b547e0b3bb9e66e267c23b518f767fe2e7045009e90d8f73b05aaaedc41149f0f53460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051eff3b400d0847c5cb5abf0b346366f852b52df45cbfaefbb7595a344d6bd6ee73f1e329fe9c8023ee8368669dd520102305cc207bbc690b0bd764686d8d4a0f93b1e389031f803d021b57056de156d9d8592fa5a2b8c9535bd3f84c2930805d9d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302dc5b15e6e853de2e6fa4ccf34b750a89552ca14f1ef4ff5b2165804acf5087a087597598c42b33a95f8094b1a2049c3023100d7e281bd0e1337dbbaf1faf20809935c1b6e2bd36e52537b182f819cb931d6014cb3c2e64c1f41d92073e1b908c8d33e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008502d1e6b8f80b5d89c6c555387774127061140888ee81d7cfe863398c125d7f72afee891b01d0b8bcbe9cdf1f4eef7702303d3f6467606bbb99812d8980c1fe2847a907c554e070edc14316b8c8dff6646b44d0c57beb8760c255a5279c07118cdf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ebdf2b0bd80d89be2c55699a96c97e459ac0163a11e48500fc359a352ff56a4125b779b93ac12f216edeb3252e2fdca023100c194855588d00a55b88033f90610fcd182fb2e0c6becbdea2978df176af03628457ec20d1d561fd5f1e7412ff386dd370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d78b30e34147f062582a2a282f9dfe5a612f07fdff353666538b44d1795027c06b1763dfbb1b1e2e1e792e4e9ace16602306fcd8fdf47ff1b7acd84f708a2852cbcc7ad819dc8026785c1732b6758cce8e931a0626a3b1c2515f8414da7850aa1ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d8a7d169227c81ba701d9a9906db2869e6c853fbbbcd815e0e14cfac41a50ab13c181b1b7020d7528ad276391c93980b0230106c18fad12e57d91faaecc995b9f16c0a13408b2087402e560b9c6fa0a68e94e2eb1b905eb3c88281540276efbe01c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c570a97cc7d683d37bad2d0d9c6df017ef96877d94a69468a35a6c904680226c3e34d680b0bd19cf7faa3d3dfeefccf102301ab6c6031a245bf37a3ae739508b7dad20615792fd748e7feb92f1e4fb09f340b5749918c5451d0dbdc8d4ab1f293d770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306666285994bed44be4ae4ee9b69fe69ba07e58c48ffceaf5be0dfa8d271929559ed9245f6da3cb0ae33265abb9b38338023100c7cd2ab7dfb7dccf841653b17c8c2602a5c64f8109f8164f2f55bc1bc63f6cc4605a400bdd3189b853eedc58ca807dc50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230300a4c7d574c8c8be9500b9b8871ea4f41d789ae802e6f0c1a96ca9a4018af1d49c3dd6dbc2cf0318f4f3a364aa9b88a023051bd3ed9efbbc66455ca1854cb65cf23d8f4d6b5cf167326d88c4723776a2266548e9e20e35de4bdd238c04b12d866f20302047c435bb50067306502300082c57a761e40fd29fdd38d0d7cbe505bc035508f8de5c3eb22dea1ddab548790ed9a2440a25a4d3b1961de7996e4c6023100a8d6a520efc1317e51c486baa419c7dc96d43b2e849880c072fe0bfaaa5eed47f2d537f5d8e167faee91569417ac2e6b0302047c435bb5006730650230369a9f2930968db7d6b8257d7f599e603965126c994e79e3f03350358ce043f0c8a5e0759cf5603a3982052830ea8095023100a2d99db9d66718aebb3d78c48fa0a2262a48cd82e2cfc8be3170d13a94b7d8336e12ec950893976d4be920295b95b7bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008d21e8764eefae5e53292cb18af2934ca05379506e3b31eb465afcc4268baadc8247cf723cb532c10135a74f26187f6302304f9e01a55fa28e0da5b6b8ffd31951a718998a5491b826fa48244346090e21a6b5c65302ef7eace515e4934e3011433f0302047c435bb500673065023100bd444bf705ff7447fb159262424690cf14e968834239b3919ddc3cd555b8a4d566dc3dff045af52ba9e8109a3df6327d02305841af28260b9cb33cbf187374831a185d5a80034639a2332311014b51d77e505ee8c365503e333f453f09aef1f9a7010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100afd6e88fa105bb976b20bd910ecf048a1a435b2b18d134dbfac4ff95af810ff841feabf056a561448cce6ca93ce87083023100aa9666899b67944e334a9e6b2b762aaf4f061986e66b611c8a95042f3bf0a9c075ef87e33d4e5f0082b2726fc2a9e9fd0302047c435bb50067306502303f9026205ababc3d65adb71fdf115a3a83e9988aef5613d16181bb18efff4dec6fd314b7b2fcc870396c7ad7a44003f0023100c9ce78889b55b35bb60f2bf2063ce2d03345b666f02c584470a73e972ac2698553148c4507538fd3dcc6c69646a646c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023057a905be0cbc1fe79f0c7aeec539731675b667280df203e8a52b4bf83debb4525317ca0ec1e28981010206806cf958f80230570b6cb04a16b68a9897b49101f0e5df4c38760a1453f75604a6b5c64b4f207abf9ed2c4eaacd78d31d6388e39c1ac430302047c435bb500683066023100c07b8808139037aefc20d4518e531425f98b55665b956d555f0e791d870024fb0a627e1408d3622d71132f8bec3e4c70023100c43ecf69f5586d75f076d3e66aac0cb595fa22d66bceb6984543234fdf374e2cad00f26689d971d936f549467c8fea7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b0e00578068755254cbc22e4824cfb0c7a8534fa22901fa4fd9364eee615fdc5e4ec3f50235e2e255b0a591572a88aff023100dee7fecbed7b959bb8cf6f29d1c35cbcf574b759a5f6a0c68f211413b1496c49504b5dc940eed1690f0f6dc526df0c660302047c435bb50066306402303b80caa031fcf2bc1cb59add36dd511bf1e097d6f0f1615be525433eb7932f3e69461b16704ea3f1aad85778345a6bc10230763e37972bc398e36ec9356cf07aea618701f9be7b6ceaa5c93658076b7202a8206307adbf3b525bc1a59520bfc3af540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008734e5d89e640a05c1955be52df5f10b2b92580234fa359e67d0d41111f7035412cbb3e5c2bc59bd089d0c5c2d9a5480023021b4b1c181c268a22389c76f03389ce019679d03b296a66e7daf4bc57cd187ba12c31b768f58368e51b57d933de909e00302047c435bb500673065023017d7bb2cd9a8411fe9e2d39ed2aa77fe51bc4f302b9ef278b85b5ea46b945c7e9cf49c61019febe8663b453eeba30ceb023100b857cf8ec1e129442eaf6ab31522535b6d03f3944552213e28f548f0d192f1d7dec5438549d82a9c53def348a99036fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023074e2dc1a494236dc7396caa260b36789d7a8831f58634c4439cfb006f771a51b0ac4e54a6a870224fa8ea3235a318c5f02305a8a39dd183410556ddfaf4c164ea3e731dd5f243e1d70132d0690731ad29e8e03c0a40c7f09a07d5a38b761cd3723d50302047c435bb500673065023100ec08f697fc9ed26cf2a7d7f281ad5c68920d2f62ea345eb002245b2341fdd6ae937efb9bcbede77da2104d7b55a5af3902306cd9d1e510bf0c2304352dad4cf7a88712941980221ffa2d5118315a58de577bb0b84747dd3bd31ed3620e61d00af5730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c057743f68973b3041e6cca403acb87e7353e2f1bedebfe9495164a4f065c912ca571018e92eb4630e9aa145c4b2f6b023100f75b63c56c42d29644ee6928d318494b3fd3d13c450d8c166999042be7900abe19274701a447fda69bb70de400dbdaf80302047c435bb500673065023100c6c995641414543ef2168354f37781ded6d265f3d47bfb3e8bf9e4f93afe842d2abebd43a955f9f20574c19f7ee3303502303823b21455c78de3f35bdf7e7488b6f7f9d6c3ba28d1046ebe3e9173259da9951c1536d0961b5fad3f50660ce6ead23e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023073451653cce9f47ed7cf07882169d28b59f697144a8356afa6386e82a22f3e69c3a0b4de74567e153a0e5d4a1395b342023004b020ce8bf867ac7feb066b709138a328e08f379e4cc87a8eec77cbccb156bd1cc41caf46ea5564379f1e4cb056801a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae4e01dd94252e43e758e071846aeb12b7c5cfad9884de94f88896ad8ad84c53448511e58b3e42a7b26f683a29245198023100f028e46fded524f90acc2d4049a2efaed98f739008c882de7680dfc81f335a18fc265f1de0c97a51b4c1bc5858eaa94f0302047c435bb500683066023100e18e32fe7d9606dc9a6d398edb000c2e3ebcc9c1d22eade4f971b4d5104cdd3ddf4c07cb90332e184c4c2c55842435c5023100c77ab1991f0144216577ec59e9839d716060579b3fe24aeded34838b52c2eeba9366a177aad9384f738c0b31c56889480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a805f8ab0c01ba992d9c76b072c5f3f771c93e2feb107e675c95b837f1efb455c6fbf2e167c98046c2ffc2eb782e067d023100ac148f919e7bdd8f7c92927778a8349cccd0b9c241b3de19fb33fa6a263550631eabe6e79c6356f45209ac9f89b3be1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304162d95906fb9c841468db3119b94da6a9f2f01dd98102b44b1668a60c1be5ab9ae619bd217159fb9cb326eee50b454302310097a8d1d24744dd95d7c8b45ae0e4baaea411fe458b1df6ed56ae602ac6a2a9fec8fb4a249725ea0f7434e84d60db63bf0302047c435bb5006730650230722a80f5524feb09c89470a32c3d7a8abe20459953555067a4f2531808ee2c18d516e42c3eb83e50a1c08e59ad45fb8202310085c4dd2a6e570503d8aba99618e359e33ffec57543169de4d438f71e129827b7dc3acf9817f86895da1d1b4abe95e9060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307fda3d48279871446d17f36deddf8d0a3633987a8922436c553bfaf0e24756bc900bd5ab0c46ad8fb6c8f2faba6405740230393e8241b39eac9eaeacaa870ba12b6f018d54f61f53cdb463ce0dcdbbcd8f421552558ac3205a3f9b4c6db0b369f1210302047c435bb500673065023100e24a9c95191d0bc5d4e7ec0b37b5d9c3fb7134fa1b8c5d7ef15087fe27839291dedd2e688fb6389dcdebc2eff2cc3af402301448e4e84f0611c6c97bb7586f28db0b7588f3d636e7604a76aac5c0c3b42b810c53a7df4a04412b57c5a54cd6a5f2330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230238da1bc2eeb95324de15ecf628b7762e998c81d9681bf6efbac447bb24d36ca934a05683bbe65a5a9af1d6c9d93942902302d8783871dabbdcfe8c2419acad3096c7623c6b7d9d8393407cb12eec10ade2950df1dcd007ae29cf233a1223794bd2e0302047c435bb50067306502304e9dfbd397a11fd20ff06f047cca263c27d95813ec6f8e0aaa8bb8d6169ccd88fcff61d4ea4b5c16f9c473b9f3b63ee7023100823cb518ebd0c9244f42804d99789d540052a0c6a34979de2867613fedbff5cb3c27e2aea6a3bd6f6567688af0b0160a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305469159b106ee165ab59875be3c1e69a2ff7ba51af4d27a122a82a364b7e45d40ddc82a38063fd96c731e780b44e1e7a0231009710a7c3865822ac4b93c0d0d2a775bb9cd744db60db5eb8c6621818f498d58db71654dc06a9d9b9f8591e18a8be6c220302047c435bb50067306502303bb500ddc6414b78dcc3ef6f1c6ea4c4851a6b6b9e98c856c3de6e71a95c9b4bbe5b55d48d50561ac99945f1bfaa2882023100d0da046a7efccf6524eea11948f2010ac25189a58de05f685795abdce17ffcd1529ab0cb0cd63f30d30db988bf2060590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc7e6fc347e2a9d28e9411733eaf6dcc0d15483986f0ec1ee9d830f7a1360c7ddf664e2a1d558450ff823795777bba04023100b7019e325a5d4000123b1678fff12986cad7fa414c7aba0332462d4743136a33b0a0ce4f4ce25f482a2ae4a83ab478d70302047c435bb5006630640230172a326b50c34b1e8e02a4181281f6d436661994164bd6f931de68a9081ec544c1cef21cae18f4c44c26c6803f3b2a2a02306333220426b945b5783e35148846335ce1e342142c485f7e3c93af8900ab65bff35e7ba9e36a9dfa69440920232c3cd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230525743250b35f7f40627c1cd6f1b2557ccf69065db88b830c7163cf4c466adc7d350eb7d17c5633a6ce211fcb742f586023067a0056309f258cc39cd0b00f68bfae5db82743b3eed974fbcd7ebb8e4e6f7ede873a59b7e173781fa65ec7835cf446b0302047c435bb50066306402303f38b588a1fe4e507c72d24e8e970f7648e56acecbe6b97d596921df88be28cb3009f163ef7ae11c29054eb096295ade0230481248353ab14a5bee51ae9c5388f22a0533e497535c906cb89271f5fba5de5cfcf24aa2f1af1d8c437e2b21924dbb460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e20b050460f7b1d18084cc0d909256e2b287b625dfe894d19396a4cba2c44b4c45750612e680aa9f4199bdef42a184c302301fc10fbea13c7e28925854e4f1bc3c8dfd9513b95cd35ac48c12cf5fb0068f547dad2584947930b568e2a615fc3716190302047c435bb500673065023100fe25e4704021ece25a08af531eaa6e643d711b6c40b5fda8d9904fa20e15165e8c2321e52259d1b576415996a8437eee023058c721d50eaf14a37e2957ec86e6b77ffc3e9741e467e077a215c7bb8f28c78f2ce227ffd3eda3aca16affbf81dfd4160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230651959449630f17f72b9b876f5513e834e242a5afcb586f79ea362f0d051cd1422ecbd78a5c763be0369ab7c2332497502300d24903568d9510b0dfacf04dc51ea24b411b7b1b72b6b0d93f33f18591d59452558cfbc97a5c22f6deae7385f8999c60302047c435bb500663064023052f126fcbf4bb8ebe8bd29317f8ad397de200f2d8de6e89c9e3f0fc193c4fed0a963244aa8957d484ee39c82abc8975802301cc327d15125b3c467e6b68769abc6f0c70745cb2b891c2faa69030162e4f57d6f59726492dcf383afad3d040286fff10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ab66b926bdadb4b565e76a777216adc8a1f394d257a2b112435d579fa02dbe5168f5cad589e5a257193f443ce80b97d0231009ce1c3ba7cf9f48bf0bcc82b2e54c3c127894eab2b29e526ef38338213498156468a94f9a0194745293b509b3b2270900302047c435bb500673065023008ea6105443853f12890220c4d95a697ba4190f11e7031176091006c8bc0f039fcf4d4f063b451e50d3a235e5097316e023100e2b3cc27a173a9cb17736756eb3df6384daa280d5bbc6a1b1762f4b0cbe9224907eb133a40b729ebd996402b9be7683b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1d4aca1b779afa3946ef80654d33db1e4ae0178cc00755a6064be0875f929e032f10d7f4673a23d912ece1b2c6518680230054636ed4826aa2637fbb995a71e0820fc378e085bf58be36680936cd69583a26f5aa623412b48c32e7c27d5b9694fcc0302047c435bb50067306502302879944357a7c46525f412046683035f00ca207ebdbc325ed29aa79eabb1dedc9767094f0380169f2ed2c6490617f549023100bec8608fb82a6b53d2d157abd9e695bbd59e74ff9538242bab2a3aeb8cf30fd49c1137e57fd39bc494d0a29931efbb7a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c4b7c2891c484cb22ec58aebe68ccde025bb0b06e7f7d08166305e863120124d1e0ad3baf9d5b4668de6a1cfef55c6c0231008e097553b8b4584644e794bd5850880a9a234ca860082f0f131152faf61479bedab060d3ea3d49bf4b0545c3fb2156ab0302047c435bb5006730650230035265698bce52fc7c8d1caaac1bc0342de9a1212d04df1dc1a302ee013aa00d97b172ae9490aff4223d13aad0490642023100f58993a87603170028dcbbb0ef80cec233c1eae562d3518feeda8344413680db1d2cde79275d87ee87f88e08db58ee7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074bb9c636622887e16508f99a0d18720661fb30a2e2382c56ac6be6fa4600d9f9a4bb07caa686830b6bd5e6f77c5027c023100db8e61e97d802456c88e4d56b022046d191d5fee4e748788375aecf0f0b8ae29b8de6cff7ec84262b6dcd468f90e4fbb0302047c435bb50067306502307232aa22e51aff8d877676df0d062e9d3315af38673b009c078d673d933183742360b509a994f488fad8dbc6550ed53e023100dd3e2321bc8cd4f287ff4f9a4199814f84c595bb17eb944022ec1bd8caa9115691a3d70c6c97b239917857482e81b18a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301f042445b4f3acc5cd4a7c9a2b31564319fb916350bc097d0a7d2c5a408d4dbed2f769f28c7aed82e7031825c2d28a2c0231009ca05e9e0ddf44950a5a78df4908b5354926a6f2510c440181a0c95323f72e36b6f31e9595beb18ebe0282393667090f0302047c435bb5006730650230634de01f16d5a709b7772155a9f4a70155ba0385c91aa14164ce47da69dcf36ff40d3e5e7bfebd23e807ad009af43340023100ab0a2baa0514ca63518f92bd5f054dd955d11a4bb12ecee3afbf8cac908f957e838d0d7308b1d1723e66fed2b9b5efa30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a5f61a69fd596f94c3343fd460e54ef89a5d82839c942eeaabb34123fcbb1b53b1b17db373361f67a1685737fe4fca0023100e69d9d59076fa3da662212482ce7157ca647a3410834fd6066c2c209b5889ec392b5aeeb27c0e0661ca76c3a1b76c53e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100da5d4f827d11fb7196253e05055a91308183eaaafcfb1a9c392a873d357e6ac39395a023f204f99b187ccf1d8a41614102307d60d69b67247dafd0a7a153a101a64e1deb0c037ee290e69453b4b1e0d36890e3de806128dc7f38a5d1e4d2a4d625ac0302047c435bb500673065023004184af00ce1e704775ecf5bafff91a7ba1a85ab37a35205b6d1a353c4c073d4be681c8da8237c65130234bd1f3474c8023100d9f17b7f0a7ea15e8d2670bc90452956ab2766f039aa5b0f5a7f39466c823ae42b8cd5e231a3dc6efeed17edafbad5a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310096f364b73305e804b89bb1b7c927bee1a51500d795af32cc4b8d8177c1d956be7f5077a004d688b5b29e6c831b47fff40230074c86b887e5c93dff57b056522debf9ea6a8e0ed8aca9c05158b593b6bd1b19dadcec36cb6fdc29c35ffbe359e6944a0302047c435bb500673065023100e91a5f7ce58efcedc140e2ade4feb37275e2881d0e8e6ecdc67fcd526916c9ca214f2e024cbbed93cb2968d3ecbfd57502305d74307f19fc08c22fece29ebdaa5e8323acc9d7321851c3421549d0106e71297aaca8f300dc3e2d404aea119c8d04d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303d8828b5a406238a70becab2b64a42c5dc725ff4bd944ff718a314476f1a688509c7d6f948af30e635d567dc43a52201023100e8ab504d7fd91d06f0140942955614ee9c424514ae5c2588d878fb407c8d52a4e6738bd805f1005872fd21a7e3d84d500302047c435bb500683066023100b803ac1b98f1d05f673625369d6f9d2746bda641a423169ad77e8fb2021dd3ebfe1fcba60267484ab2704193d487a6d70231009d14fb281beb532b85e883cffe322499ecdc8c3b32a9fdedd273b81bb012dcaea0a35df9cf3acbd95410f462642d8d870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023013a9fc029a55d3db454744f4ef1a03fb0b482763a3719c5f1003c2b237abf9f9ae2c1c0d029be6f15dd65823036b0e0c02300aeeb807ec58ec0264aaee77c640f7f5180b94199c12144dd7fa9bfb09ea2e292aed182c4850342d835ae8743eee77c70302047c435bb50067306502301d604d1fee92dced0657919b08722a57734ca27cf48f26101b9a311edb357457cec52741925af41c352b59e75ef56e6c02310089f873c4a105b6752cb4ce5a2c8b3a25d06de836dfa8181a4852612d71a5ed455b07712d70a4ce0d2f3a972d5989a1a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023043262b2e1dc8feaa770d8f02d2d3ee9c01418a03748e8393c0d0233c539426dd33b5323e01a933c876c5978058e291e002307f38eb947c4c85ed373bf636df8880054752306cc3a2708408a1b3888af8a469a594b0424a58225249133e0dbc4597b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b77d760da5ac13bb5d8f8898c32bcaac11f80d49c95251eaf0e5b4096218def575ea424ba0244c510c3d62e8734701502303201226fb97ad23472d079a77d6f65e7d1724962daf85683508c2e400a8f84864186a7340520dc5f1f02df1373a6f7b80302047c435bb50066306402307752dd1212745f60f279d413732f96cf6200e89ebb1053fa1f1494687a4b2d8f0e9ad747f257a9c28010e92dcf8a982b023037bbbc0893de2577489d07ebe4a475b440adafd530be22734af8c29aacc6ecb7fef744f3ecb7e4e04db62034100662c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e9440ca6b24c3998c163e09ea001b9875e94490c044806ce87d1fedfe3077b8b18edf5590fea23e4095f0578e35e857c02303b640d25441feb01d0903601e5e66dc771ce9d12efa067840b566de1b35925a414c62ae11a8f05034239573ba26bcfb70302047c435bb500683066023100bbb2526ec4a895834f3477cab0e7faad9a2f9d983a3d42d14f178f178329c99e7f03e0eba2de8075705c417149bec636023100e328d102316102c7e6f6312e36488212b19209834d1d91a88e58a4462ac535dbebc670e145a123fd5472f430b8d37f330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b9e22b55adf3ee59edb2f815861fe80ed5c3005a4c62953c8ef681bde6f93c3abf12f466939465620b1fcebbd44588c7023100be053775043399a0260e4fe03a498d09e0e9eb066cf595176d4115873c786e2e9fd908db2ae6e32276e3b6950939ac8c0302047c435bb500663064023054ee2786e34ac50e94679618b83dd898f9d2f83d552de88b96ccd6dfbb117c9473164e09cf867d934184b5c2f17886a4023003bae34168ac8be406f3c1981ea16abf6dd4eab2d0e57a5818575a4a2094b79351150f7dd626288bc7039460416172730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030d58a1ff2fc331a8eea0a00452385ebeed109d58f33046876e99279e79e1267238d76cd6a0d275aae892c6c0e396c56023100b86465348141d7b32db363284ef10559d7e1f6bdc9793ff4eabf0c4bf6a853d1d0c6bdeba447812c315c772a8680e5640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032081ab2529b0465130f4f2f5d436d7a245e3653359b2f473094f15e42583bc6b33f1e62a63c5bab9c03aeeb2317849e02304cf37b2ed23ecae06c2cc35cbf1f1c449b4dd14c4c262513261feb7e0432e0fdf4a78b38b7d3f99b7fe1824f069bba660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c60fe48389699faf61e3435518eba3e5ec44a4c6e6aff95bb38e6a4276b50f6787362a79c9d5d76823f347e34b769ba102304224ef17112373bd39df7ee08d70e8209f1db53890eb767fb229174b6450c4349c72a3fd695c5dac9d4e5a23f730de240302047c435bb5006630640230291a6b4c137849eefa5f7c76fd614fdedc63235379cc757352d3ac4fb63d3068923c59159f34eb70e7948e6cb06c8c4502303bb56126d8f936ea93588246661928f301561b0cffba3d6c8dc903f97feb11f337dcfa2f787b125ae0ac951b5ec5ee780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ecaca6f948a18d1530dec0a235312334c9adc4d387b0926921cdc79ac03556ca1ea62837b6aad4a26a703ea7a15a70e0231008e432b4c600464c6ceb4262877778ee9028c3f8a955ca66f356f07ad5d5e17759122707cd093103abe9fffdc81e852330302047c435bb500663064023013d8f8cbc1d2500bd41bf22f9da03c3fcea1363f2c96284be4d4097f0f28880054cc7517434b435c63d89be368d080c702303d913d426c85db91a4f6ff96b989866488100774e090f7a2673f9895e5483168d5bbcc0f65ec0aeb8daed75db3b701c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d72d861a938f2c872865bd448196c874999f121fbc3cf51d9eb6804bbc4eda0433e2d9d431805223e1f58b55657e72700231008ae12189943906a447172a351025c2d9da95a59c8133ef10414ddaecc398c94c0650a9efcd43603cd9cc5ed9097868820302047c435bb500683066023100dc1e1b450c196288abc22e8bfff9569ca539613c3d2b8db655f13103e8e20a135dd5b9596bedb31817196ba50d764cc8023100dc0deef76abc5629fdcbe76076f9fd18afca111c5a0696470fc63ed8d3a3774ee1a87319e252aa679e64cb6354cdc56f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023011c8b82c71704492e0abe8543ba20797f5a5d8fdc3d9c0c21f15950894101089494022d3d4c3d952a230f9c017fdcff5023100e327bbc4dc0b34eb3bfb0e0b68d6be6de5e5ae0aa8d959ae2f554d2fbe66229cf31ece52e7bc7c5e033ef3335077b79a0302047c435bb50066306402307eaf78a1b1315d7e901a45a17e76c960bfa4fce16aa02d5bb65494d43955c29c8be7122c7ff2e01f221a436b506954df0230094a5ca33144a464492dfaff8fae0edf48ba512eae792d40f078824ba0b260d79fc7c729607d85fcaff870c31c5531560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023003b417cec76ba16e55f68927bb93dcea928337c7ebd1dca3af6423d3ee8a47e3094201455604ab7888bd0b825873079a02304e45fff8fc9ffeea1b85d3d6432f1d627fc484777ddd5f7e256f7f68147e4cac7a5727a39072af9bf8272a330a7539d80302047c435bb50066306402302be9a976a2d098908dee5f4081473d34fd1d5b776b4876c4c84ff6377ffc56b70d8cd6d49e5b8586b024e80b818c88ac023020a710ddb22ec291a350e78171bcd10149eb33978c1f491ab082cbfe4352f59104bd24f22615b5279a036fce1664d3860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f056cfb8ddcb3e4c21415f15bee4820e2e26c531a9b6f3fe343b02771a40f46672757dbbbad33bcf76b9f0ce9e41b4c0230629babecf470fb5668ae2d1004584238ac97fb1f540cff18ad6dad79dd7daf0981a864ba89a3d4bd6431593218a8ce6e0302047c435bb500683066023100da2d406cfd36cd3416eefec36d1cd4995251719b480ecb87f2dd74bbbf9fc75e140e1d214bf0fc3976d7e274c9cebb7702310080a718e7b3cd8be2bfaa33dfe69ea01b2d844020c609d2cf46817d74e3e4b75c293a2b49b03a840090b87236859292d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f0d5c96ae822c4588ddda1c2ed97eb1ee863d03f933e03ca0a2620f096052defdd6702dca54bd4b1dc4aadc27fa33ad023100ddcedfbef94d7692810674f4cabd02062698a391093b344fb9c853f004e1b890a7825b12b25ce52ab132b8010f636f1b0302047c435bb500683066023100e265d12fcf547f1b3bb409d85c18b881afb1db05bf9a73f001a2a3d922e437a10883296d447ad25b083a50135a9c5e4e023100f817f490d6ddd37e91e8bb67d23e696ade5418c736946235407ddf35b132e4449bf8dcb1969bf344bd1fddd6679d94920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100814246049a2041cfe9553385fd148e4b681e960892114044e0d783ca387a1fd9e104054cc1b8b6400f3c531a15ca9a53023100c3cf40509516113b2f3e54c4a1debd6cc4af1ae4e3f46280253f25534f630b723f0a21d3aac08ec2d5845402b3d7b3300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f6a12f428eaea6a9085e342ee47877f712ee2ec5ff17e66b2be37792edd5a12aae85f27ee32544b576908c5d2c393af023011b328d6cc39a68c653a0b72ede6435ee412d80cafcd4f28f4745711528f31ff357ce85dd942e13afba54a164a2009530302047c435bb500673065023100fc449c09e42c8a94c570d79a3684318b356462469b2096bd35ba8301516e6d96e6c4e3d369bd55a6726a863d2ba5164e02307f240fa0baaed38eb72727212e25431ca73296d832c2c17f5a7ccbc88816f1bdc7db110bf8ea26b4511a5b2f5652242e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aab604d4a2c7c39be2ba8485ae211f0c66d8e0f1f12c3221d851d5086d1a22f7f7b74b0d57ceb988e6152fcf8bee535d02307faac53cdea03c139bce32d03eba40700aba18f292cb3038200a9c75be086de2ec63b6bc4674b12b63dc70d332e1964a0302047c435bb5006630640230420a216219473b362ffd6cbb7692ed3a652cf8d1f3f72280108fc95c619fe8a883536a610b04ba26b39e8c7b7fd8cada02302a11d1b59c7298ad95393b7afbdbf8b883cb47baa57aa91e43974eab9f591916a3e4c8cdf77d209954e3d6a8d4c435eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304952f754d3922674ca55deacc8413a987d88c32c637b203993b7253c05b82e09aeec6d7132845187bfd77f31621cab40023018a3a5eece4fca276f7e7ccdc372b3cc301f23b849d9f3eb32e06d24f995ba71fa6c6cea8daeb55f526a9225010a60ba0302047c435bb500683066023100d057cf6d73e73ab61584247afb6397e37183589b38feeb51653a6c274c06e06ba2969f641ee7c2097e665492bf392768023100ad2bc59773c5723e9671091c50062ff8dbbd00555e2f6c6613d7acad6b66cf06c1c3270f1c78248f24e3774b36a51c730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd4cebf38378602830b059f144b23d924fbd5b05915197234b5d2fc38fb9edfd063c0802adbd4fd3b1f7bc462b4d82b6023038f647beafbb279538ec4999d974c2e0b3d1e52a403570cc3aaf4a468f0e8e845a183b2b4874127f22f1240b960887170302047c435bb50067306502307dba0c38302b6e13c1d27646d55be3c68192f5512a0627c3f20e0808fb9a89396725d63d050309c833a285b823ca8d87023100f3742a670cbebe57e8263e47658598ce38670f76c27f3c9d9c7021a175b65f3f49428d3b7a753020c7a278bc61056d0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c08a98a17dd287c0ba672ec695c2d5468f54f7830b2e6a2ddc52884afa7f3af609478f0713a4a9dc788491205c8aa8d70231009c5db4fee2914e400ab8a9c5ec06834379cc70fe66138b605afeab05f52d7bd64685b1ff9e8bb6ecb4167c01101d6aa10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023062ae7aa3039eb2357e450990d244d1128b849c2452579ce78e5c03c60341a0fd22fa792a8f216a96f4e81c6db0fb890802304cdbf0d4852b6388a9b5603c2a140064cc9b97cf50ac32f0a3b05189dae5a093dc24d706ef6a8edba0ce905645e85a0b0302047c435bb5006730650231009a7b846272cde8660f73e58c6919bd3f687ade5ef5b9643a6a84a40a314e811b58f8ed8a0e95b7998aac8e8069dc270802305822e8cb841532057004437b77aa1df4db641430f505c5c1cce4ff1b6521cf5f9e0293dbff0a448d435e21ac556e7cca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047d0037e70972c8144fafff486213e43b2d37c77716d2bce75ff89f7437aa33c447d57bb9430259a91d392aabc48e44f0230402901fd925ca2ec764e7aafff9f8e66f9b2be1f260bbb5b29422e97c8a3deae2633669880955fa6ca34fc856a427d510302047c435bb500683066023100803b49c619a9e195a419bfd500c0c666c813bd7ade6ed682494427f3499cc7eaa94d0a4154d8ac967043913b0b8148d5023100abdeb45be59eaece3952cc64d3e0719b5247a4df039bc9e8a3a4987f9dc2e852ad06b0f005fa06bc19308887d1c9cb350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302725842fe26202415bb25baa20244c02e10a6f59cff263956afc646ca54ea1bdb31acc7ae9d50482965bd114e780c52702304929bedbb6877ef97e9eead489bba63c348e32168d13855868bec9489f40a8fdb374ec0de55c2228753e48c6dbed6a230302047c435bb500673065023010d4f7b116d2223fb5496c1e66c6dac38bc5aa70b005c020815bfdb6dd300d0e6fd4c4ddd09f715497d1d5b769f701ee023100e9608dcf4d156b0dc652a2e54971dd25b9136964decbde5379f38906e4703fbf1a7a04e796d29179b9e036a7ca2516280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e347f870a57067d0d18a5609fd5dc40da28f79c41c52b4e25c3152cb6a4ce264aa5963da171d99eb8d58512abefe6cbb02306e88eac79b8e6497d8885189bbcb098e1665591499ed8f9a4c7852de04d051e70e38b84da8b315bf230721527527106f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e50d4f8788e7c7108f80be57145c0ca574ee9204359ad99a642a744c17fa561c5c3d9e80f98b7c75b855013a62ba75490230139bb51a5ca5cf5f954a39f3fa43f30ee9d3a9cc9b9272b8898307d4f0c623773095434ac408edf792ac48213419889a0302047c435bb500673065023100bb0224f88922ea075c299f4b7bc91143361bf50b8af355e5432e4a2241bf6a618ad2092106c3b3d2914a4f4b1b21ec4802301744509043c17beef9d79c086f9a77f5c8156686e04d9cc6e17da4e41a6a4edbc76952b3689fbf3f0ae4eded67de2c9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f39fec81d2e921017eeb0e91ae4f5feceed0e06392a385472be87bc240a27a9ee9327ff411942fc0c66bdb74649684ed023100d0fc37b4b2a6378b8259e3c99c2c530782abd7d76de3b3ce30f533c5943aa27a3f8827a624412fa71fba938f104aa5780302047c435bb50067306502306924e65a91b88e5a9a5a1dd7e2d46f6ce3c8ad5d79247266de8a955ba54e28e6e77c4a4c83ac4b694b1d2ff45152dcf3023100df18b554595cb3fd7a320f4d44331ec156b26e8eb6b33b06e4e0e5fc0c91b71155d3800bdd920ea12ab5308fb531ff6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088db13f3aa23d2ba7aef978c2a4af414c376ab50b45a2c99f1fde3506279caf9f60a7fdc92fbf5f02b110a2bff9b31fd0230024330ba3ae79f0034c9d8be3662fd992d0222e21f3e4a7cabd0a000352eb2edc3b1e1a531536b7b873db6f2788f302b0302047c435bb50067306502303168faa3ba32d45b0cfdbc0727dfe27eb7c66a594e38bd6595e46d64b00afd5cc70f568149e93d86b40a0dec20f6a775023100c96fcb83facd02482bf3442342841536a2b0b820de14434f38bfb9a809b19be07ef6928aa23e25b4ec81086ac0bb832e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50065306302304322f05f9b312f767f54a23faac2e222d5091d1167bbec0d335fdd0ef881e95be479ce853c9aaf3e84ae38f9275514c0022f0193fb2fb96497126514a7474951570e60c59fcd4693f8f22519524e8a976e2ff2cce809f5129fb4373c1805c79e690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c787a413fc82a01a01ec59e492b0878b39e87ba0b659396317711dbfffbadb726bfa1bdfe35b0131166f241c3234972d0230292215e93db8c3de863a2da401183614b9cb9b04fda4d18b1187c2cc09c3d02a65d79ee5a5947c98177005ff78ec153b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b22ab5bbeac2b2b577d1c6e6efa39804ddfbe93269aae9627dd0c193b28c4cb08aea900a146145d37fa6356e6a959df023054254fefd80c0faa1ce2a8fdc48418ffd4160970a828ca6bc6a3b7d6f5e7fa0eb5367caee8686bc256c956ab2a0429da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300620151c0d4724fb8b68cbfeccf8e9b134b6a689b418382571cc8e12593e53011a45fa7d491f706e2e9b74564c25ef3502310098ce4cdda7ea0abb2bd90245401e40a44151452a9a9f6cdafe2458970695015369ff0f0a29b11988460b9f9131b2feb70302047c435bb500683066023100ad7a3c42187e6953c1fc4382f8c5eb8e6f8266d11ad230befed0898a81502fc1dad951242e3b4680be8e960ac4ceff8f023100d5ee6fae6dc283c3bdd1de7c7a74f713ccb5e31fba378ab78cc67c48a045973b0c0492144fc094022ec4591ed244d2980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302a8d71094f5ab261a96ba02ab5f937f08cedf2ecb56ba567ef7cda11f634fb08d3820a5a87fa5f5cf8239d21dc65a821023100b068bef38b9507c31b94e1502cb27d75e3cefa5e7dd56efc422ce541e7fbb01723b8464467f63a7f1c227068d2631d450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b4a955c0357bd871c59bb1f5d51ffa4c6d6aced91de14e95db5095b9d25958e5ed5a398dfdf33751e0b9fb388fae9dbe023100f450c033b3b792f15931ccdb9a7a4cd05a167dd3895c43bccdaab295850da404892062a3f1d11a479098a07bde49fa1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023010d4e09a89f7a34414cd2eb9eacd8b392f0c0a51f4a673a899dd86796c09f03475ca87cb5153478cc8149b9f530597390231008fe219c810b702f09e0f5ca0e37f0633d138b77865384b9c98d6373c16a32e0c24baec1c27828959524682d3d88e4a880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ecffc2ffd93bef986261985e17a42eda25cba498563c5fa862ab209e5a75f386bc360ddbd411b9efab99ee92c9440135023100ea5bf5db216cdd43080a0037cf861d30b3ff46cfb96a87d2d1387ba03c6d8dc8eb7eb445cf267a3ebf3320ecbc8d3c2c0302047c435bb5006730650230009907e2dc3f4267e4e6f10376e03dd6fff351232a4a7e3cc30a0b8153153da99ca18a296171bde0824a87c9357652020231008d081562b8e2297c8a63d8b2edd7e55b3a3fedb665fb9e69d0cc6818a7f8cf1e06e3ea2f973213c382b0f2655a34352e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd0611d8956e61626e763c45a9d60828ea48f41e1b505e32e791772fa58de7f0968161e2b2ff4f2f45e0db83c1d4dedf023100aa0cb7faa4863947d0eb811ad4d78da7bafa334f5908d9df50f9b2fdf24ba682d99d63d86bb4a550c232f64ebd1f855d0302047c435bb500673065023047d44074a61cf26b51605d8cd9da6f7412f9d07cf54d512a02d4ba2d5812c4f3fef257de850b81601b67f097142e1b06023100c72aba2592e176b41bc1490aa2bd5783c8e97335aea3a7ca9078a4504b058772f7e6455449db904584918410c11c889c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007da1e03afc9bd6cdf26fe2be0557a42b4ff656144e2a741e137ee931911a9e518cac975205956876a084f49c67ff108023100aa20866a32efc249b56ef25d4ec441094816ee3289c952501a2754b2bd2f24e90ed57394d3e1e3b2039ef7445edeea7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b3c4ec5ea1dff027660a21009ffbaf767173aa77b4f3b1bc4a6e3644daf602dd231efca11cb1eeace2665ad08a83d2702307f214b2fab5e6466943c902ee45fa2442af9566e4b8513c885b83dee1681009cdd01c2578f0b5ecbf9a33d41442192960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305733c53a5e2439447ccbe0b41c4cf6b9544b969642ebeded7cf3705de43a4ac3e67c7d346819e9327b7f0ce2031082230230049149142ca3391c1b5f062ddf19a9f548ceea0ac2472a20d1883f037f02ecaa2c26072e125399eae098471e1b6569540302047c435bb50065306302304eaedadc1089afdfcc35a4d490535cbc0699b733f0160cf5b976e491479666516ed920a915e20488c668519710199e07022f7e2f2e5604f7d6fce133648759a9d8c8c5d0b0d1e9d1bf02c1c10bc20a19447721be70933a754ece59c4ab92695f360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f257d0303bdb5f7740455f942bddf619623d5c7f442d902388085eaf22679263c00a5da00749acacabaf8884c99903e0230797c666af68efbc73a086c027c5a81540fe350b7865c52f1438c45f44691b9ede4292b210c5c15994c1f62d2ff6d0be80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008b485c51451a00c1be4ff1d6d07291bdaddc691387ad703d106ec585d8558903282291e8193705f83c5100d25cfdfda602301d214f0aa123b36c6480fa9fc9307c59c43fc26be7b3fee6d1f50f7246997bef4633687dda8d42fc0f431b0fb6c67db80302047c435bb500673065023100ddd5bb20e8ba21b9dcb57123484de80232a3c44b2fb19e33f6249b474c5e09d14001b4371db2b088ef3cf36ac2d04b3b02300a0067eebf7adc78dba781b2104a512c4e09697fed3bc0d2d914eb15857241b4c62d27d2162f7af8d8906d32fe88da0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023000e28f91a3074489d3d3898fe83744d713c774b582bdd5f2f2737b5e1b2718b8f89e9b9469d54c19677020945f097388023035f0e0d65573e04a971f3b63fbd7b38c61eb14af6a8fe93010ef3b140c7f9f58e5e4f5e4369894f74589c569f4122e710302047c435bb500683066023100b784e61e4ad51924e6eb95c2ec014c57790c933078aea9fff2545e003f3ee36ec7fca851fa125650fdaee121b712f209023100ad7d533bc8f352fd299ab5821d2e09b8033b0a92b938ad612a965e0d55156ce6d7ad386027c9d535de3a5ec9069073450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe13a97c01936d52a7bffe399374b5ef3aaa0eb3fd47fd88ddb0ba7e89f521c6227106434e9850043a29175e8af0ff3d023023a0ccf09e2a4d4ff9e3277552b71ea851bfd7ad994385b14e7c1208cde825ec110eecefa7a02818a4c41372a1c487720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306eb8d28ee5075d5da4aadbd7e0bf42d998b173ba42a2fa9a3710fcba045ffe770550bc3ea4e937fa63f62761ecf8a8e70231008fee0842ff0fc0c938a895ff23079c7d74e054f0afa9408303156cd1978cf98f3e5baa39b705b327ae77d4bb0e43a83c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1247aecfccc51954c4e791fcd96e2569125d440708b0092fe3c725da3a5c86e36779e18d161f07a958675624123d049023100b202ffbef5d8efaf386d249dc2427587b106bf18441689dd6676edae1f1dfaccd0f1e04450318ed745f382b117cf8fc10302047c435bb500673065023100fa8274be7931a5e058d53e6dd308e25feb09ec94687be3ef5452feed0ddebdc3da6ff84d45b73d11af38409e1b1e47a4023012ba3934f9a70684fbf7057a541edcdf5a7b60ca02f6c37010385b4a8d89950bbff7738e694f03805420dca760f0bcd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023038af799f7dd4081320618d1fac7c9ff0974a10a8e20823e4512cfabd5f68b259ed0023944d560a149f1e0f7b0171c5f3023100c488994525446af0a6b14d22d8603f21ac48248e52083f896d4ba767a8da2f26943a39d5f9603153c16c1169669f81df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aad37e4d9e741f83d7e8bed6de565e7767d131b1d6fe9c35e3772e115085a8a7e635bde5819b427796c65ba44075c46a02307c41a48781be49ea0ed42483da00a7844885facd6edd99c94065016c1d6914df47a55f016aa5ad9ecdbf142c784aa33d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310092bb867137a6b82c8e39d09824927b42b7bea0776dc7a49b39d5de3c6b24c9750dd1de74cf9b4d4470a3713fb8f00f73023033d355f4c9ea38412c211f4f95255711710c47514c5d38b3341a22cb8d8175e9824ba9d0840bf0a60f069c085d1152e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303fbe6d7e50cfdb4f931b27466835fc05cfc7805ca13a87a14029becfeff36d8a3a07d2f9a68f8ced5a5760d6dfa26ee002300724dae850b79d4500a1b84692d56bdd2760755bc9b7a717b6c39de789bd5e4b72fd43c5c921ed6ab6980f7d7db852ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302634b43d6703d3dc711e7e469f3c2ae88216f7e8457eaf2f418a9b379d565c4fc266e5aba2f0affdd06946e00b055ed5023017177c513b5d4fd0d3c5a0753acbeb22e34cbbc67b76160e4b1187315239c3f3b0829b914cf18da05349ff26ee035fc90302047c435bb500683066023100b5f4702f3c91feb1614b255b6d973ae04449e95d0637ef95e34b5511d7084f91c3e277487599827402fc1416ae738709023100e4d19d6c5037b62bbce9fe21fc080be4b379660c4173b884887bb4f9b950816b2fa59c38cc4bbc2588e8caa4e8d2f2700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a8771fd2261171e8143a07bc15ada7916f4b3a83c710ae2c728b9a5964c7f0d5e58b2a46f85c5393cd7bf36548591cb023054e642c539b71e67057dad85d5e33a69f22658bc996dfa6bab39ffa261556a4df05550cb344f8131f7ef8dc49805d3850302047c435bb500673065023100ea2ce886c943c5dc0822ce84d9fc64ef368bc5171144b63ede038b706d9a470998962b5c26f16cc90122a885ebd65b5b02307452c08506d8ce7de0006cfb964037eddee833cac33cc54a239f62f2006ab37f6cac6adac3c1f6054fecba4b7c418af40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec6fe52d2be94acf838124c90f4e6ab10794b137875d41185fea5ccd0dd740a2aeafc5855cc2e803f220e84eebe72310023076ff49a80a3052e593920fc999a7fc4ee0be04e41b02169bcd52831ffc8b5e616a515cc49f63245b61677b7760427c200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6db1b4546416492e37b1b863276c4cb5a3c3804aa2fbb59c6e68f55ce240d3661a11789b23be575daba3d0c620acb7f023100eab2e9bb8be2543d52918d87fc7d79b6ed641079b03eec6dbfb2361bb492362db07e5ac7607c650c0945f68ef9731ab60302047c435bb500673065023100c9efc4cad59fa6e3499e4618f28e88ed61dfec877df4911a9799f1f13d8c13bd6d7c506ed142ba022d1d8b67e3b1832b023041f383924f5697b093524f8c2f096b4397f322a83e86ae4155ada48450e07ea08f036b479c91f0b6b26a6a36d64404e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a8b8ed5dfaabb6631b50b2d5e334aa04feb6ea90090860c9de58c78e8a0248ccee9a111e24baae79c0ada3853007e5a023100f1ba6aa85eb500a3fc3da00c4daa827fb81a5d74841b8b432d9b721a864cd2a4d7f02799c3844ede0f576ecda76006730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023079de4fcdc42e07cd82f753428ffd21301deddfcee4710b2b493929873673556cbf79b2ad060e3c4dfabbfa2c1acb6ca4023100d5cd9425e2373b8ac8755c3e8d9eab951217ff62bf4dc2fbe450b04afcf018cd1d48207e4faa67703257f694e925be620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304cd46b726677d127517ab46e50b1cc326a8a37e0d680e094352d99900d04f7f04fb26f9bc7e4cab6c15689f6b7cb222e02305bd91698dd362a8778fce2553f63606df8352ea6864b3468493d418014ad167f5873c334947d3af2044797320944b4f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230579a103dde1a805cec94cf02d1c591daa479b66766868332dcbb6eb3f6df4ac543c7f9bb264fe5c1492dbe93c3c6eef30230437f0f54612f694169dde44a9b7eb76acf5405c3e44b9713142421a5ba192864212cbae6d0102017f29a005c8e2ca6d50302047c435bb50066306402302eec53cb3c90acb0c0b717c09a11ce73ad4eede530814485728b35180a3072a070386bf53515d61092e0d99b738ebc1402303ef742b69867c1e4fe98eea40644c73d34374f78754ee9791398477e2de3fe365dd68b48ef937c066b5f711a1c2737a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d59fe14a3a0814d687d88ca4b5a4a9357bab56b3e80042a113c49978c785d9d7e9ad3a119bb8104016241c947cd78d5202306394bccef422772b4ff93ec329c11e2c28590a6247c3a6509b715cd97d8b67fb758af6119223d161e1eb1265a086f71d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a35fd55088917c489b6b631afaed86c00dccea64672861da9a52ed3834dae8413cd71a483ed22703dfaf6fafb343a8890231008559a390ad0aa85c938402ccc1bd96d3355edc58023db8a916ae5c684704408841c256a353d5ec4e420f33396a78e60d0302047c435bb5006730650230424eb1f5cef12db8e31094571c3e370378611933119daefc37ff932a755c28966d06fcc5758729367d1b65f92d5d6da1023100b2a5b84c41a7fba55e6ad461d9e5ee366eed1b26b511f5c4ab3528b9bc3f2e46d43dcfc07dfdcc351465e8a3e5f257c70302047c435bb500683066023100958dc59fbce7402dfa7d78cda64c09da9f724ab6359b32939c77c988244e810fef12d62d456df3c365c5acd468c6ec6d023100a249442edfba24b1ed4c7d2ba5630469d7c5592c78ef6d4c8bb9db96512c55f72f4bbcb268c14fb3d83d7ce8b588a3a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a8fae3563444f7857cf60a22bc75591e78c609322df842e244042a2232822cd8e0c9a4d03017a3a97c579df59da1b518023100986ea505ef1b9446b595fbc334eb22afe04c853088c3593098ef47648cc64eecc0fc619bdd4506b147ae856a3f10173b0302047c435bb500673065023100fc6d08c054a4f7f8145673178ca7c17b8e348e9303e6905cae619f23307f21d9660cba10d4d340f6e956eaeaa145551e0230607092aeb00e8701e7e5f61679cb9053fd78b2c9144737d9b313a179fc42421a240458a0434c3a3fd544bf83d8abf62a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff032a188acc26838ca4a6e7154ff5fae6ccc19fdb95d36f6f634420d6410083a2283b391b7341351c1e8d6a7d3dcd41023069682bf1c89045701d2f55d88618afd4fdfdba4474b0ca2847b084e52caef37e19bda7ba1a5cb2081af6c2cddae957380302047c435bb50066306402305f5faacb3c9a4a2844a914153d3a26d75b54f6605fa26eb1e0683826f6fc94f7ba0532b47ff6021edf6c40a3533ddc1902304b9719af57d572733782a2ddfafb7ea39b32704f2f96e7f4126bfb4156f81220f0dcb1b516c48bde2ab36ebd0fbf9e010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023031b36b34b5f1b1938bb38a3d517966d633041e927f728ebf85c712b9fb5aa6f47527d3885a5114df2825dd5eea1bd9d502300087a69867c84652b06e9d69e1b46e44d059bf6ed02d2bfdd8c0d493234a1fb410a024c08df7ebbe75ef0d69b6c0a0860302047c435bb50066306402303721013358a8ee6f9a1f277cb64e900cfbf92d577728840f81e9dc12d0edc74829a9988d1fa31aa13d1472da9cfe4170023064ab2bbe984392f438b24dee1c77dc08a7310f1088f516864e2ecf82e240c4564fe128e878328fbff6b493c7b80ec7730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac34dedefe4d96e7b241752eb5bd2e30a80e28ccf351c1ddbcecd81e436854abdcd9063dc53da35dab33c83071df7b8d023079a877a07c680aa2d62b786b276c311ef4721fd807c1cf24c003999e781df07da29db4c79e3a58043fb627c7e11239110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d0c9429a48c26680f3016ce3c6966cf3dab01161cb239fee545962250b8f5d96bce6febadcb8393e823f20412c1ba89f023100bf501b1debabdae4a6ba7d8887286c9cc54c1f3a95dccbbce49d94f2d5725c0104285024f0eb87616fbb7dffc533acba0302047c435bb50067306502303c50d7ecc6f79c1b1a19013bec62ad7c6f4cbe1417641eee79f497bc26d85c891d4717d26b0536ef32a8960027f39ce9023100ba0b17455a6bd1ee8e9b933fe9a3d9c89b5a3331971846c8870736860603163dfd6c6d4f2d6554ffcda04feadf5cf37a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc2570ebe8af32d6480f33b42991db8d62649b63ed1db5ad2a7c52d4c8576a79b18edc7ccbe74ddaf9cebd524769aa91023100c84757ad7604a188cfc8be10886b07d6405e0fbdb720c8239144dbe52236b0b55f31d36d021132cccd7a5063c5295d590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d14c9434cd1034beaa8fc1e1fe1644bb74eeb5f48e0ae38089e81e4e51f1f883668a3b978b4740b0a32cc4d921eedd4f023100ea0ac49af5c884acd2dab6193f648a14c199e524399f9701f1f9c3bf53cbedd91b31f40ea0b7091370b17d96901e10fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d517cc69853342e45f3a96b51b8f705601d38c67364042ad840eecaf67b34cfadae7dce934f6db2dc53ef1cb6c44503902302ced052fabc4d5eab1f43210b8e2a53ccb712e8980c99c47dbb4797dfcd2a26f3f8357ab9595b46be2de32e9dfe8553f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efdb1817cf2c5d1572b73178800637d5e6ce9a36dd07f564f4e13a58af8a0fd454a6c39a6b6832b0cb4675f1ce09e4c4023033901726948af974c0c957cf37b348398516a0eeb7eb8d2d640e3280b38c9c1d15d63d7a1d30177d802a5884da9242bf0302047c435bb500683066023100b019772861f6ae77a138536f0b6c01f619836e113998e73ab491148fe07f6eb02c3a516965655c83ebc570d734a055ac023100f15ac19ee6db72a3017854a1e9fd92c7902662d4af3731e25f79e7544e17492de699525d6f6c71da0322dc35b5ee316e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076aa9c844c8213b911357513cd405ec5a7d6b675f8a5b11a94cc83adb29eb457d7b6c2bf4f48ab2de87778a262d7378e023057d8fcd323c78e4a7b07e2d8db351d51811d8d0e66bec9bf9b39049493f025cacef0aea490e6baa389b6f8b7bd1fe6b00302047c435bb500683066023100c575a4c33b76a3d462fb678f07b5e701f147f58736590e3d7665241b3bae64a9dfd5c0db776f8ad18ba8fc914540864c023100ae6173122a01f4ccc87e04d65b43d8a050c561266a3fe9168a06c5b2b9a24966e983de5a9ea487502617ff890ecbf3450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301713a0ae49d47184c1a2e8f3cb83e2fbadfd3d9b53f1953211b97a2006a91be13fd4238d1d3dacf42cffcbdcebe173f5023100f4166131a17cf9d5bf824fea1ff8c50f83a53b33ad9ad4f43d7705503f933e39b9a8308de9b6f8eb7e7c53ec45c77dee0302047c435bb500683066023100b3f4a9a3f14fffddfa086160cf25fae50b22a51c95157ac3b6e77e8dac6492bb6354b36b17796a931f57213d9507d995023100dfa89323ecc5047744b626459d00747ab11aaabddf24f17e33c0eb008226f36e528355e37ad4653c36364b1f9234e4240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230704b0759ebd2ae4ab312024e333a21ac311c0cae26c547b055833a7d6a936aa8d193aecd6705c0a28ed605a08cd1194e023020ff087f5856119bd4360eeb053ad980655b54d129b73e3d8a88792ed3b2e4c3782ac8f55272bb53e395d08e981a12fa0302047c435bb500683066023100ee9787f7df4cda6d4a80bab4048460ecc414ff2ecdda27b9b5b3e08d86d0d020e4672183deffe30446c75476bb0fcbfc023100b12a263f747d22979aed1f90cb5cfd28adc7c98d1efb501041a96c8732f009583f5c17e7aa16f9c29ae758363edae4630302047c435bb50067306502305c703d8ff13bbb362ff9498e9c640eeedface5984183e3e7d9052e0a2ebe5d0f98bc966657dedfd2ceedf77d7d182de702310092e1641c99ddc7e1bf2bc4b41d5398297f8e996df746f29b77496e60a50a0f82fba31a019aa99fa6648379e0bdded8a70302047c435bb500683066023100d1e098c5b3cb44e3c977fb88974e647fc2fa9cdce911ff9c17654f86627c021b03a7a392400111b6c0d0e72f00920c2e023100819c6b2d83c2b3932c145b1aa2cf51bda8eccc4f80e0469e4c5b781060b524d32abdc8a2259f765b74472d802a3eea3c0302047c435bb500663064023043eb3290a1fceef9b5abc73977d9f50a03b14d12c7d83750cc03a1d249d4acbe7a1414787db76bb6416eab5ea80afc4d023054c988052aa7ba20bc8a5f4760a6510d7a1ec38d6e4d386baaa53e41e789ea35ce2f7bb3e3a90bd6a0c61653655f4b240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e8c398856d784b30d32ccdbb7c7f7add8c47d9d25caeaaae938c66ef74716d71cb761dcbc94d7aec05b5e17435776be5023100e88d1eba1b7beac38665b4125410fc7add15b022e001ec632251554039e09a932996ddbc4523d1608db65e5a1874ce9e0302047c435bb50067306502301c0c3a832e4cfc5bbd6453d5f55d2c862d09a6811a4f5547576da894eee8d9121b28c6308edd5b1dd5303a8a5b99909a023100e780a6b5a26250705dcba9fe8b686a33b002336c100bd26e5a91985180a5a92b07ebe5bf82b16169cf08040deeb58f1f0302047c435bb5006730650230113f38eb1c337680e873dcd63816f4638cbc9ccef8df7ba4325ae00dbc86d734d34e1362cd0714c62afc208c4fa7ee28023100c6ecfd384fd1515ff96a4070afcf96bf5509dbb9b48af00218f6244d9d9007cd7db27d561d899a5d61493712f338a2970302047c435bb50066306402307411dbfded45209f7934d64a967c72f89f83dd45daebeb8eeeb511143b3f4f7bc808248fd5903e91c43c9d5c2ce26096023021179c51a5ab04e5ba5ef1ef0ae91e9f98aafd2b1201696e2d2007798c01e6a768fef25920a7980f8910496807e439e70302047c435bb500683066023100f8a233d423cce80fbde65b45b567b7543f650318facc90b1bdf0d08070db2d2a84bcd0174c1f822d64fa80b5f2490142023100f3fd876f7a40a79934a76a18d16324f0f225dde5ac131e62ac48d253b638377214f29c249156c559a978d2ae45a417010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310082681c1b36dee2c40105b07fdee03a54bc71207f8fa89e70ac7197058a387a03d874a35380d0716083e41c17a1b9b6fb0231009a57dd1051724e3288f0c193e8704f472939a393366fe1c74287c1ba9a789caf6892a2cec35e82d1ed574bbbdf9afb030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cfb42990466b0877a8ff4a2158c79e1fffd05090c7ae772f5c17e30b58c6298803e6ebd3914a655149719b68983dd51c023100bf303d841e661079ca68e274359bfba4f2c65ea991112dab124d2722701fb723c9696610ccce8010a2a90f550cd680d40302047c435bb500673065023100994c716e1c3c5fd7a93666f849b1af5d8d3a46d2ac5e76fee890efc36fa4e8978ea52c5d3005879deb54c49a8ca51cb20230193ac77328130cc8211f8724dfa160c2a1d371ed6b05985afe180c0eae86c36e969b9e3826c5f627163a7f24aae3315a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa7e2ab72c92048d2dd70ea1737017911717fe7b38b904fe1dd954bbc15e1bcc57474b7cc9b6885bd881270cae0a4cf00230387fa7fb1957977fed78d9fff0686dae73fc3b53c1d55b447f9cad8d21237b00873e29420601c91b04e035798df19bbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a19fd2d5e4bd62485a8514552b3c01ff63c375e535193e4d4b84c94aa60cb7bdb48fa25fcf63400cfadf954ae5333fa02305045405bc6da0c42bf9bff44cc6b7f44a34660b60b5bd6cb7c2fe237206c8429e22d788e744b3ead2795f10f9d74e5ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c796e1d264ad0b26823a007f64ec765e28b9e26a2e0326e8f70f689468e2a2279214136d650d69be3e90863b610a5e29023046548cf881965785b739037c373db9955718ba1a283f9b9d0fbb75ac388bddd69868cb1aafd6bb8d311c544bb36b0d440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e043f910a8b78153d5ede7d60cfdff132772ac2531f66721bfaaf6fdabd9e3b38589304ab3b3cf92b4d40357e03f500023100c5b52b8a181202a3146c260d57e13b4febc7e2ba6312a08e1f39fa65ad99f29282f92ac238b9b36b7207761ee0855be60302047c435bb500673065023032cd3be6ef916f77947ceb0fb44888e796961aa754bf5e89bd839612472fe44c72a5af244970679170aa3c22aee06032023100ea6b61e3d0831f638c561135566bc053113423ad4cdf1dfafef81b2fd811bacb7481e2e9b382a8ec06682d65977a8a410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f159f5e5f7e2b28df6dc3a23e9cc2bbea87f53fa0eec2b37a054224236697743a133a9b9ea7a87f876cdef981fadfc0023100f7878f1e63ac9339d69abe393a1608dad218f192b3c0824b7e0bd01ca65365b625962d4fdfaec8a4ee7f5b0e57a9147a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306850706f774fa5858544811c20542ea2ab324b5cf465bbafa4d0f477d30f48751879c5c6eb90999c0b996dd50914f54b0231008329dc11438b7051596922153ea753a0f9d475180a2da6f94e501d2aeee431d933981a5873934d51a6352701d70055ff0302047c435bb50066306402300a55e5b178b1bbd37c0e3ee53dfcf15d487a7e89dd3a7a0b08745d84888acfb854bc9799de916817014770a0689c501a0230484849a759a31e6d144271db0a6d889be9123791284746782d51bc80f7e8e42498a97d121c1100b4e2a8070cff9451890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a3faa532318fd4715fc2f255c373a8981554caaa0d7bbbbb9e1af38645198f6587dfeec7bbdda2e8ba2f72d9a6ac45a30231008303d038894563f06b7a81f8c2e0df769a2b81d12e5681573481e0411acbbac1e85f64e084c0115a7df6b0e4efd086710302047c435bb50067306502306ff0ac4c0eac466a41553768e80f7800c37cb736a4be80ba6533c1e1bc1f003336b75a9c4a1d9aa617c53a068a822087023100d77daaa13e8010d1b4cdb22fd14d79a8cbfadf840fcb32298152d1dd1d97b8dde94ea2b54ec4fbaf52e8bdf4bd7f5f7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009a64218d4a625c644d25199f4b944054363d2fd55604ac9634ed60fe79ff54d23aabcd7dbccf611878d02c46543f4cc023100a113b22fa1813e96130b3284d24164826d78cae584365733e95b01a109607a9c43b65e33d884a033437bd5e4229c47080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300debd182aaabc5ec5abcfd7ce326fef40d1881d0fd3bbd78f6ea7097e6a2c9dda3d975d1f7ad596510c9122b41813d4f023100d79565b53a2014e8bdf9aa07c36e1004862388d9729cb6057df6ed280e14dea6e38f7b400bdb3371217a8512530c95d10302047c435bb500663064023024f4fe73aaef9e1066e482956f53478c3073ab87d5fff8d35f76c9096efd310df8f08b73a0e8f05bbc7f22d7cfbc9f2c0230758dc453282e3bff97f9b1f575d076af2431dabac04f9817fc85b493e025e37bed7dc96fa28f345057d4aebd2728bf820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020e2d9f690f36e5ebe938b0f25fb8c96c7e00b39ce81d18a70a8850cc650095ddcc42b6f2b1563b7caafde3dce9d38d7023100dc8c89382372385f96ccbcb23ee3ec6da7dca9e2a9a6c9dad6cfb7f46d8c4726adf79882f14747621fcbfac46c8c91e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6334e6c53463542b66f6ea4fe137dcd1594dce04c085d9e5f10ddff29066ecba9d86d3a49c6fea6ff821dbd9ac1ae31023021dedb46d6536a66c1a2a2cbddbdbd2ae4e408b3ebc3b285f0fea0a92ddfb1ff426fb24b60aa62b1a12dc421339188c90302047c435bb5006630640230368f0208aa6d318ff77c6979f245fbaf541e519cb2401710b8c51fd5e628b372db7fce234a91683e21b6f4cbe17d1763023067b4e199abf62a0e273b4fb5a263b38739e89c19424bf9f94b4b4ac1ae4561d525106c98cc5b2d4b5042a3c4448f708b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230345c1ac6335613474bf08a128e23c016af723a63f7cd145b48fb8e48f7fcff3cc885bbf37077927b866f84af6028253c023100ec8b318b822bb43572189b3b2eb3a569a5c89012f4f866d6da64d4b5e43ba7d80a6189db0194f07a22ae4791410836530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bab26bc266ce6a40119e5c359e05783f9b2f334da5e05d17228826158e5e1a964ed6c1829a2019180ffee61a12a7c83b023100980996db9277addd16858108e3cf4896b4279a18cb5bbd3437bc11132d0ee532324a17aca63181ca857dc3f9b7eb37b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306392247a598f0cfed558382a47797e8ff298774da7eaecfe09a28ea2e724f898af36889c6697758617d45fb51d78648102307aeb8faa1a9930d7e550041bd53b56a36baa50be90fd6a8e41fbf706f9c01f072894819993d7afe66ff38ce76df0c9070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017c836362c6953825b784d5201c51078ae83499976096c08cb3a92b20b61923b63ab9e77014e5374e7c2d2c7cd0b384802306d53e077c53e40380742c35c2fb794a106911dcdbb6d74e7d3b362470f70538283104667cd83565300ead6b7367d3c390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230500eeb4d3a2d15eb514863db96a008813c3449f2e377b36f7b801257b89623600679be4dcaed5c9797f89651bb9ea97a023100d9cf7c415f8adaf7913bd6f1cd83533c7390dc3083feda9a1f19fea35b1bb237a15c6c0ee60261aff083085981ea02540302047c435bb5006730650231008d35c5894c3ee39db3019ee8e71c3c9fb832ffe32638386a792d235509cd8d8e16a6f782556274daecccc8e6a859f95602306c45160208bdc5c0ec25dae6189e1342ad6b2160fbe575d24a1fa08780ad2fdf4be3e6ef28da5dffc41b361d3bc52b240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b43b4392ff52d594fa3f2e9394e9acc7d840fe34606d0eff013a99b0b466d5ba8923a5fd7c2125cd5376f2c7ebf3ea10023100fd036227dc5aeae1a29d50f462e7a157c515b317743b0c56e2412aa64c0a3f2704c5998daf94b0ff9977a3c1be8af64c0302047c435bb50066306402305abb8bd5a8286abc04c027eccc3f73cc5e3e6e9326262b6dc7ba9a6fdafeadbca7e9cd79b83f6a82e7012fa10bc7fc5f02303b45c0a2e871c165004c6445646eb708d72821939cb2cf722d52219dacaa07e4c886de545bd847426def89f3317aede10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003fb444ef3af0407a331c19cfb9ac9ed215765eabca91b955de6d69f1d38a101c7a9b40b6cbcb0e8dfb0e59697d10fc4023100ac6c5767a36e8ef297ee35baf7c4c0ab8e64adaadc40f24467ed02cd851bbed5b5f83b0346ebec5feec3198a8205f3c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304c0bf7b4d7f3657389a3c93603a664b4229dab54889a0e2aa4ddba0bf5d4815ef36594c8c3c08f9dfefa080f989fd97f023100b6f0004527fb01a2e986688c03c52196b41cd5606306603f2c4b94329c53c154bb9e32e00489a6bbc72e05a9e7dab86b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a58df33b963a303e9c23bf47c4efa9c5a0238d85a5da0cbd868e6b45761e2b54e315eabf091b6835221cf69ccac0c61402304806ef190b7e345d8ead513b21b8c75ffd47af8d6c63eafc85c864370a5ca33abdf5692b5c8d9890217f64c75e3925770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070ea2df80dd97f9ad8e72a12d823ca12ece9085cb2d3aa617c72e13232f0bb3899f3aa17cd82e737d754578cc5feda6402301ff56b8888d46051daea4841ec9e6f4f9c8f97814256ce2bc53bafd386f117d129eaf108b1268e7fc57266d5c86a2bda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073a0029b5645fd5bc5609b4d0993cf6d54461b5414bb24d1b6867d14c8e85ac059e3438845abb13866104fe6d5af2c1f023100c72c534575b3879b02179dc043f0a8c331d12d91e990e66b2c970c8659b941208aa69e6dda7ff47aacafa001ed1aa7da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a7aeae4fb244764127817ebeb3533dfced911ae5b20473bfed7f6c73dd40083a9e78b43df6088fe628c272f82e0454702307735729c47b907855843e0439cc7a846bc5a0d332946d4a7a4ca9a63957a386d4c765dd67c8e3bd2e8c9b112d427e7e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301352d351a02efdb048ddd9fbaead2c29ee0d1d036f3eada2a0e4a9fb0c0f96aa92a975be3740d28049b243cc63c8075602310084772552d52c4f80367961d70a539c4cae0dcfa2132dea96fa8e4f8f30dcafabac174d5d9bcc128fc47f76fbb2b28be00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023047698b5bea96afaa62116cc773e8c4dfa1b1cc364421e54296ec1838a221b89d3ece391d04383d50a8c6b2a03c6a37d602310095507ffa6b6b0601e4757736eba5c5a47591552c6d10dd876744fd1d28846d2a4d2fc9ee800246a23de4711009aecd260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f51af1fdd6e54d999e06e5b3a518186517f784e268a589c5b5ecd957013618e98a60beaa9ac80651bf914a17f1f915d402303e638c0a856f04ce1ff1ee63ac45328355f56fc2c7b75ea2c5d55fb6a5c5209b3d4a8c15ef9d00282154934c6921c1a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb7ca3219f6a9c4c27fab1fb147277df68f3b2135af872a453a175bff795b68a6495c44d416be7c97eec54d7680e588102304e6e8b4306b40639765549e98e8762841ad0fd145d7d77b13020029ea931118075712f21c353533b2622b2d3bcc0bd370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a25227aee54a37846e7c483336ec897c6e2d20858f4bbca2561409a1fbcc16eb3571be993c02345237096d22312382a023100d7d8330936e87f5a1685a692a376da7682164a9b79351861cb00673af1f8784fd03dc7cd0ffb1239c03d2c3df2eac10a0302047c435bb50067306502302ce87e5f2c7eaf9841868d28df8a61efa74592525f11e674aacd96b1da95a33ac7d1260afa7618d55bc187c353811e96023100b1cf0a1ce59e5afcb78658fb032de41cf54fe484d3c9bf9a0d38c3a8f0981303185f17fbed70ab23c11f21c248640bb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300f1c5fe1494ca41f35f46c1626cdb0d58065b657d0ced967941b61c1bbff6a9d402c9eb42d43952e6c3edaa7c4977e7a0230056af26022f71ce1258eea776f3262f17ddb751bdac4bfeed6d518bde4c2272ccd5d432096c696c6334bbba4d2f851aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a59657296d61e27ef9bf84974aff0fae885e747b5b80a2d832545bc811176f83d46221929d49d1321658ae8f119666780231009f0d3fbc1447254a54e28005b1f960e460848ed3be339dc222df97e81d8bdb965415e7203c515b9d77a8e0798f4febde0302047c435bb500673065023100fa2fc3ccd920bac2b63a3d93c37e6b80ea039e8cb10fce5b6cfbd885b598cf4a28b2ab9475eecd0995223400692c48a502305ed79fec19f3ab6b4481c88eabd2972a38ddc2ade1c6b0ec46861a8a0384465bc55168bc9bd38395ba414a3b38d84c9f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100facdb7a74eebc645163ef4426d9286dc10a63ceabd13a94e782f22b03acad3d6177f009fe36290b9fed5e62c2520a5d90231009646fe715c8c7bdb21a542c0fbe60e188f693ae84ca2a5ee20c8f92794a91e7265d48f0680814b81abc0c75a0d8b5f030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bac05924e7d0f8ae710df6ae3370f05b67f12dd395f97d8bf75add43e787f75352986b02c6aa14c7a12c6369d963cc40023013eacbc7171d8802ab3aab14b2632846eca4310900b772886d100c55c6f39f2bce866d41b95b11f714f7c957996762bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023013a6359fc992b46223e12c450ada6b67ecd1b15a733a6ca464a90b489fd107d236759a4e03ffe5c48e5f6b957e90f84d02302cc0a0c8eddb2c8e4c967918a435ee75f25fca93604e174aa1b52ddc4b4c4754cf75f6efbdf783a243ce3ea2a2d499c00302047c435bb500673065023061b9d2a367ed2a46660df69dd82d18ec522f177d342ac4e31ffe5f9c3af3b5fa33f6a114ee6476d241fd28fe9c09edbd023100c6e9f618529bd59ec0ead56ab55ba23b552f0886b9f578ff5265f967fb49c493c0e8dbabc7cc8e550d4fddb318a547800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cdafcbfbd56ae6186c9d16f72ca6cfc8b7c3129c10f3d852a8c98db0984621c607f0f7d49a7fb05f4a4c56a6f03c9823023100a44a4292b46412d7f8ce284f4f3454065f20cb5f4d1d14d8b8488b8366a325b4601ab9661b4ed3e038d18a547cd086ff0302047c435bb500673065023100fdc96ac0b06b805127f75ae0fe405d2defcfa04bb0da85a68beacf7a6731de994fc8d5a7187efbe6343be192f36c4716023057a2631143f188a3f6a188dcb7963739085c4f2e98aaa2a9a596a447943ce0ce2df27c85b493d40c6c3d3f16f9561cc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b85a85406db9d0c739e4c5fb2efbc2f1ba71856040cdd6f62fd2c8deb8598958540dbf011acf7fab8dd3a56724e53e1d023100b3fd381030ab7c01e46f29c00ef12b6815d74e5e18bb5ab8dcf1cb2111ab78e91d48880269a96a0b64b5e01aa75dc3490302047c435bb500673065023100de0cdce71b2cf89a81ff2ed411e9b394eb922d7f68a0f85d8256343dcc5f4311e748c06284d4282217ffbd194997370702302d29816ac01d1fccb81fdff57e4ae8fdbbc233a4fb0d2f678f3580c0dcdc425df46107b34a86cc6a2e55de76805251380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028cfa94147d557c59b733a234ac73fb5e8d5a67130518b33f64bdc545d880bb50b94a9324a4d38e587addbc0676bc80802306c5dd7d9786712b3c9b9434ab01dde301971fc2cacafc82526dff19311ed440b55b4b12a4eec3907838310e803230f430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3dbd66a00b608e7c534ed2ba5246020a71eb6d4741e6157bafe51fa486159fb78ef2f3c91e221215f4db169678b4690023100ac4ed45f3460e906d9149b6f213604c3e78e73225c4b704d5eaaae3d9e4ef076c2155cc7eac195a072561acdbeb3c97f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300bb8fbb34305f92e8032ad76d1b4f203ba82a2ea7f7b431eda29454d051e329d9dbc0c739758ff7a59e1b10b78f3aa2f023100b3db86a5bd2fb8222c1a2d0641da120018a036d6647eea998e68505167000a5a77f7fff40a2f08056348feb5349d77f60302047c435bb5006830660231009d078b99ffc08fb4a1a4f15195af54f1ccb042a6e9d6606defd5d0fa60dee27ab43a4b8fe11c90864002b5da98d12495023100a1eab9466a94034564d329e95ecb7ff391e0ddbe05f393cbc8e616aa315d2a2591bd1c4c9338d699cfdb68cbadbd3fa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302fd7b1677df2d496feec08a15c4580385d952d3ff680b2ddc1eebbfc88763383cf32bec5affbc0c6fbfdd2ec6a5a5aed023015bfb1e7896c858b530d28a322046d7f55521947201d302e6136caeac56f150632a5febeec1b0acc826cab6ef08d076f0302047c435bb5006830660231008c72e2ea48228dc4080017e0ee2cf1a849cb1db3bece3855576ca097f8cf3392ce373a82e7339b51cb5e6e82d16690b0023100dd5ad6e52302dfc5f99b9a03164f9d0cea3aa169afa043b7adda24cf1b7add97dcf3bb9366295d543446faea25b398760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ea740053f04325539490f3b1849b7e514d9b73aa559f5d04a1f56c2a3d50d0b4f75f798f1452616adbc105db4c250e5023100d537fb8f6ba4efba305125fe608b85ba16ddbfd1d6ac178a919e18dd756c8544dbee62c05e21387af7db87fded7ec4d40302047c435bb500673065023100862aae5a68271a644607021c105d4a279aa33ba9d937fd0e832495a2a8a2a4624e98534c5a3586b7bd877bc542ebd89c0230622f17fcc19b1f8cf6911aabd73d8d736d465738c3bb22c0db016418d1ad932752c6d825f50ac44898f4bb6449d6da4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029fa437f37a4c053bf0b9a3d324c5d195152774acb3d6f38eabe839d7ffd073db1a6de4a53757c0a53750b48b62693f5023100e1df7a954213afc8c5d374f4840c8efa1959ab940310e6eb89d81dc8957214df5ba5749191cb3a285c256975518fc9410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230655b97c693ff93d39ca3e6589608664c60c59c6d555c6429f2e2dd8b342e618b8aa062cc928d5f28de15e67ee1669388023100fdb6d683a17b43162dc0df1b8d2574640d49d719905ee7e46cda075188556eff9021363f3ec8f87ef20fdd1523cf359a0302047c435bb500683066023100c3739ed75a68d553192871feadc83a1f1e51be949556ad0a053e7dc66cec51070d959c7b5288be05509259c8b45765ff023100b94220822eb027050f621ca82350daed23f8277babb4a19a734c42a6dbe1400ad30d447e414d35066c2099daab5ecb8e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ae02dbff86a91a2097ffd8c1af1f1680f09bf45754c1e5c3116c527a2811dd1fc42460111c233777844871a0188dfbbc02300402a6434fcc163dc193bec7581c777956a65bb6df444d66672834a825abecff30a3e5735e47ea193e12f90ccc223c5e0302047c435bb500683066023100b06e1cd094097582a3a3f7a7112308e57e1beb3df0dae72f787d4ef5ee818f59dfdf930f91d7aaafc7cba931560cd76002310089c6bffba6562b8df18844a54e24abb27c286e324aa20db298ffa56fb50469641e15c7170567e57d0cd14a6d996ce8c10302047c435bb500683066023100e61952f64238a862191e395097cdc19573954bfc44bdd76f733ef783a2432bf38dcdea1063f4e07a7662dd8787cef292023100ca19275fe487227e378dc1695c4a6d75b0f3fd870fe988acf3787caf73ce33e90c54b1770a6361b24e53f5fc5c075b490302047c435bb50067306502300890ed44eddf7187aaa61fa31bcff8e49bc5799b7560a33d67a339e1fa2ab73d24e0ae3bb69d5308b2e4144137d92a6f023100d1565c0344d0ef7f77ffbc7e117d39deeaaa250670281d2d59a492ef7310e1e6e124f934c2380b565263a0f9410080a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ead988469ee59b585f537cf1110d0ec6807e7936ab8790a271688bb003867933b4812f0524f6110475aa6cb2d6c9bfff02301411facb09c2ea4196f05cddbfa184ee4d50f6b51eb8b785e2819fee5a1ecdbe49de772247befe695e0b938dc674c6420302047c435bb50066306402303c6824527f3c4d9aee41a34cfaffe83e55ddf376ae7c9e70a823862cfbb2d5e20e029b7fb45c1a0cd5224646cde99fc6023020e1a9c0aee74f7f956a9308c6637b5e1105f817a4420d798dfed3c1118124773f6aaf2c565b3935d7525eb74454f37f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c3891d5ec98ca4802c2c3cd273c33958067ae95389b7444cadd80f7433667cb4c20e94df901d0d7775b6cd2c84d8cdf023025445097104203d0121fba6042ece36d44d9391168983d5a92cb9fbc89812e9a72d4b658fa074ef509548fa2d5db5c0a0302047c435bb500673065023061f56a81ee0d5cb5111f77f7c09ecc6f3b482e6ebad5233c7b29a956a649ae6d3b7f42b1383c78e725a5c3bcaa69fc39023100fdbe3a0621f921908cd18644bb08ff845907def9354041c33d016f82fa3cdeac430809d0cbaf1ca8c6259fa5b1a0ccf60302047c435bb500683066023100ec13962a1042faa8f0bb4aa5a3457cdf653643b18174ebbb8f9cd76f555d71bbc5e2a500753638b92d2acde7f773960202310096c309516b09c8ba2fc71a4ef754cd7fd60c304c0ab6dadee1f54967bbeaf1440afe62dff06b81bd14ccab2bf50f1add0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023065c50ae966375ed703d9d2a8a26321b6a1b2f2d5cafc665d1507ae0a674a22314fa53775dcdcff41d9534924e363538f023045e994e0a2207b0769f157879a692ee9b9917d62c1c44a3669b74e30b2b0bfc99d68f794d9984d02298acb256831865e0302047c435bb500683066023100f451ac91c33d5b84e5f2164729a13548fff0d153b6b1e8033a8802f2511f1c613bbaecd3486275efe041c2838418e513023100c4ecc8e8e312a5b5ad47cccca2e295c3b281aabb420dffc44b1353a38d5a2f072105a48cd53e6456dc9eeca549a641a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301819b1b88b3c023ab722bcac2b08aec5bbc6525c71c32561a53ad5944ac23610d8bdd5330a079136799e148580e1cd960231009ede67cb8be70378472cf490db9f01063bbd105f7872fa37dd389eae7f871365045365ff3e575291c9a7aacd1b7881030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a3b428b091c9b0f7bb3d399f1e2c6d25fe0e115c56424d9541449d574ffc88683c8c17591f965be06a6cb546561befd00230267a92f5e716f261838709dce4a72e0caec53ba8e59ed201cce514146fd3f17a8bc40328d918a20a9e1664c2cbffb01f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cdf31e2b5aa41336354325c60e9b21983585a0e5b4084417e6fb6b2cff9874d4d69912b8e8113aeba3a6fb092e0e7a090230472dcbaec001080de0be4d5a4e682b46523656395a61d413e18e2f4872acecc5354d19aaaa1a1bb633495370da6ad09a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e9aeb2433bd8a16d3263713243825c572e6c1c63d23dae078a981a46bfb8bbcac76a62f59ad725c53a8008ee2a23e3e0230182fe8c109dadf70c1a38c039d87fedd3afae327becc70f5c5ed86caf053c02641fcfd63b2a3cd275f083c6dcfd11fde0302047c435bb50066306402304eaa9385ee45ff0324d5989655f20e6010607efeca2fa28d09366f5cb9fe11b74f9e31f80219466aa7345422eea4786902304ea873d12e93b5b2eaa75d8d8a6f4770f33b866018329d416017febcb15acbda490030ed4319e17faa2497493a1680ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301546aa71c5bb590286b1a3846c716d726d3fab62991021e84900d2854c3d533b50144c10824d80b944eccc167a37dc100231009703a405c26b02970c8435a0f0af5407ccdfda94aaf6299dd2249420ff1f73b31320426d0da4f2678ab1ebed601e9c240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d115ad2ccd6f99829a7030faba770781482aa3e2daba1df7501d106de644ff07e2bd193b258823906ef444370d045ce1023033acb8fbad1a1ba4de7d92d5df60f93813b539ed334c8b3c57c12599f39efd05d2cd297eab168d5af3a21339f721a3f30302047c435bb500683066023100ec5d7b017d96c742a8b785674f4e9f83fb7aa1144664424623d4773aecfbc8ca42424c516be170190b9448b1c9f2f26e023100ce74338644ac7f4d1f90362a294327ce7fc94cf071c5151a6ed63e6398aac54019c69aad6d1dc44d69911c5712e7f3450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc6955e2726d238224c1384a1304c3549ab9d0e1ef55fe09a9e83180967668023dba0aeac945ef6fedbb7f48ed62514b023100d81f1533e33cac93f78ce1e493db8ef387b2b55679126633b1fa4fdf7ef99d49c6f3231e40ca190d4bdbd2586c3bc0000302047c435bb500673065023023f4b3af6d065166aadb5fb3c6600f1ae6204386db88f0f817525804827fe75621b3542f9bdb867b1e523c37dff676930231008d765e4f7fd38bac1a2c8c6a929d53e43977ee7f3334513de8d28577ddb747c563908250fa6554824f2f12c278fbb7ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301d144cdda16f55b561c61265ecfc21354df9cd1e130066041e1523a2f4b76dcd5c3efb8527ade30d1a58bf1f6910df76023100bef7d9fecd880058053f328cfee6e6bfeebaee96dfb4a91e61198b3612012a731ed5bfa33ba1d2a0ab077041c1061c710302047c435bb500673065023100935fb3f40a554adb588a2baf627918b897a2053eac8555329f822bc26473aa037c5d0ee5417d998d2cea5273192112a60230766bd3d6565134b33c9f102e2a578bdab565d919915c034290592c2a462872d43605be53fda0d461f635ac8871e6a3cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d30bd86ca1083d1467e57222705fcc8ab503fd57c3e8af7db9eafe1a1b6693f6f8a0d7462673cea33e5b4edd2faeec8e02307bb2dcefe9bd0ac776bf2c4aaa8023b85d658724f67f192f65d95624ed9c3a0808fb879336fe5b6083da2e248f4e2a1c0302047c435bb50067306502307ca9f2199501dc53155143862c20495f2241168302adabc410e5f2095ff2b9658addcaeffa199b83679cdb62d3655b5e023100b3df03d26b613bb6a661f9056fe15579a8e9555608dd3caee3aae162916770e0a97b9c748ce021ad0a4e71cbd9a469fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a491fdf87c0ff1b42aeb3d01287b59da081f29d96e46fbe2db9a3b69bde17797bd603be69b41794d7f7ce8df37dddc3902307dc16feaaca092e766301898fc8848af00ac3aad2e7d1f1fb4b309e4200c7413e9680de9561646bfd65b1c4f6003ff720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bdb36ea6b142d34d4579b6697f92f4d98b968c5be5214b20c5cccc854035147412cf5107337c2b45270d0b811f891e55023100aaeb5b19177d4353079e165e8b3f0129b31015744ec6cb49f067131235ed9627c267ea425f181c625f306343ad59052c0302047c435bb500673065023018ef4d9c99ca97fd0bd084b7bf6b6495e2b8e696eb04504eee2cb2a643e9ff3d5ec66f08ccb386ac5c0528b2e292b6a9023100f5237de612c4604497ed6d8f8516a70ab537dcd09feff64ff3428833306791137d6c906aa9362117e67b812577fbd19e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100821a614263525d5a386b8d95b2acf36f285361ad412d304404d6a3c57c328b59df1009a3a49b3628439ffc8779bef374023100e0514650a00475b67545322f746c67df176b2829caa516ade5c2ec7d70a1652fba2c659d35765e9d77a2e91ba11eb1b70302047c435bb500673065023100b460f6b6f096b158a9ce5f2b8ed637389dbf81146dd2996b171f4f837b2c9be281a1f307643c280ffbdd8a811459098a0230782a6d2307c0f8628231460c349f28021540fe199f92a89db7b519d88172a252a7fd6af3a2a8e6c96031fb34dcb8ba2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230398dce3d8f7fc5d468155f8b80366bdde91ca8e23bd5b0ad8b54d8850ad18e9283c9e6271d06bc1585427f2178a65011023051fed96a16bbb0695ba4cfda556b0b0047eed612a20b2ed90f057d25b34b4bfe3d75a8e1c33e75c0c011c9264b7e0fc50302047c435bb50067306502307f45ef03e0864bb7a66539549873c7915bb2cfe49ef3e4a6d24da0ce34d0b99d79ac5954e6995af3ea6c154b6e0016b9023100ddd365b44fca5aaf56b0e41f4706ee556c0ea2b98ef53e2f3de1210e6c71a5d6671d89812fdc9f06e79c3bf6c69725f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009bf42c728f984fbfe5727f458e60690359d1b0b34e4d66c20ec737431bb4806b43a3bcc1032822cdafc2488ede2c336e02305d481758eec0336c4cdf200298b2532626722aa4bc2b6563e20c01bebcdd35ea278f3c3b256314d2e5901eed981606a60302047c435bb500683066023100e176fa8b801d6b8d7eba2e3fc82af33cea40744fbd4768eb6cbe721456794ad14db82bb94d4a82d7817b0c65acbdc050023100dd1f5e5e1d0aee4e91ceaf09a9aa0c7a97c1f82ea1fcf9c076fd7b9f06d57602aff8f11d5e52f397315e37cf9727e0690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024cc94dec4f83e2bab2a4865ed237f377fc13d61178dc4fe3ec8c05a3ff6bf60d141592d0cce8786372de61df0a32d46023100fb5fde4687d5e93f663c956454899ccbf133bf0c07667067673b224233af789f56bf000c4e24cf5c2f38021263a015cd0302047c435bb50067306502300a070d6f44a377d36c10c56df57bb895e596966de5d96c81f8a16133089081082401f6eb7c1bf2069ce4c8c4fe48fd71023100958eb4a3a712cbaaa23cd74bebb9036987b4467710174f5fbb6d9fbfac3f51512bf29cd1064968ecb33c6363442a11de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100975dc6cfa79932e4558b97fc6e92e14c239d9f8487c2910cb6a3cbb10fb2998ff08865fb741635d2854268c4282cafb002302e43ce70474eaa314da2711144f275cc58833f6234b096fa9c89cfe9c6f79d344eca9ef9f3b40ea138792adf2b7acb380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305892033d3e2099c1c1fb7ed9393c00ef7963a8a33d957c17615faa1cd66d0e5a053a2f2e8b1280ccd9af51eddcc1c596023100b51ae7807958b05a5e5669f91af25ddce3cde977c7dd8394565c93b7d2f4f326331ba59d90d00410732094d48727abde0302047c435bb50067306502303f0cf6f52418bf124b7f71fe7752fcb89b9d23f09dd3ce6abcab89aca491de1cbe5890a5a8aa73cf7ee0bc05f8e6900d023100b9c8b5eb12c1a329089b276a62baa6bf36e5da31d98f3adeacb672a903b22002e7d67a7d2035486ecf1ea4c15efa34a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dd8c4458864fb2ddddb1d724e079b6607925f91cb699a6139fc6b0152b9890a5bdef824af5571f13118184c37e21e2a8023030ef1097e01aaca66d11816fa6914004c0bd0cbb678a29b604b530f0c7bc40481c18d2c75b04e20f0dee510d7a731e530302047c435bb500673065023044deb4474d2beded0b64dfeed3ca0a895b7f438f746c7cfe6f23df6d46f88f27477a46cb6ea76aeea56234b1aac67708023100d85c4db37404b851f17881172fbaa13987c438f9408f3507383a1ded7b37a5224d04f7c6aca558da88497a11a39e5e000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301eb9d0c4f74ce5caa54637384695ea50ef0c7c011d33ec999e7466bce8f5f1e0e2c7b30e6abc47464c61f088188fc2c0023100cf6332799546febf4379662125d97098b3ab1c3f6f03925304269437996153dfa19bebc33924193007eac616bcf3c5350302047c435bb5006730650230770aac5d65a865653f76db55d49fe02b85b7286e6b7549466007afed2453fbc705804e873b8e8d623edef8bf7fff424f023100907da0c1a8dd670321254358c04154041b7723f241e71e94934d395325ad605b2d8f294bff65a83114a6e5d87ea3b6aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305e2ca0ec40699f2287147af20b2036bd85ee542f348c728f7c403153d680110d68b746b8432005b96ab55a209755944d02304b5cb54c46a0a84e3dbf14faebf2af3bc9092418246a43ca8900f19a927308e782bf8cbeeb81f814f4fb159bf0802aba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023008d7eaf683c9fbbed269e345b575b94991ecb1231812dc27c21f66279c9cb40907a822f10f7f9d86de90b5eb885adf7102310097401f818bde80721858db4a001f0b3bb65652509149b7a8272164ab53c311c62800139e1d4bcc5bcb1a4ac595a13c800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e509d91e7ad93df2da63cf7404ed2bf6790d0d42d30ff6b8a51c1dbb53cfd0f118158556349a7b56679cf1210ce3ed2a02307b9979701f31ab8b108e7131790fb775b085191811c6f5f1e0c34e4d98217c9359f0ac08013bb66ad203d80935316e120302047c435bb500663064023022e2451c90b0d5f910266ab49533f941cf754aaab8f696f3c0923cd83c02f8ea593563ee202a7ec1a14819b0c774856902300ed2c6d96ebe9bfa240ee45e1b4353415fefc13c8012ebbc5e4c56f29247a1bf77f4e30369be401bc4369f21e432e19d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230020d9a92a35b5a669547febf1206292f5f98f453c3f4861eecd81cb4d061965a359a9854e11fe03aa93d5dcf30ae0e02023100b2fd4932382e69cdb89d72261036584f176e103719b191468b169e5120515d494adfa353c8f2b4f6ed6d6b9cc5b802030302047c435bb50067306502303d656079fc5553518da4f9cc43d9f635de88fec20d437a74c71d7d01b4c36278da834d4cf3d75ba9daf3ae87ee481e35023100c6b0c77fa19edb44853c29f438c74a1917631d16cd9b10d3172bcebc5c6a1230d45929b18575e5f680fd586d8eddf7aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d87cea495212ae62cf63e3bf0e00896d660b66a214c2e2e3f4fc92141d57529269d54cd9ad1c878e060529269e43546d023045262407c1bd0980eb1af4db999a3db2dd2990ab10a3f50eadea985628d96c4849c9ab5750ce9e3091baec7cee7529a50302047c435bb500683066023100b8dac700bef7e2bfb57f3392937f5fba047e414263031333d11cf0ced027683bf2f2655566c6e3c228b9379fab61b74c023100e1d10406aaa918796a8feee28fb8bf5fb3df73669e44556d5b21338c465067dabc541987b94b4e0a7510ddbb55cca11f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b380757a4a2e4e7a36f963e6c6876bdb13cd46d6391e0926e6badb4069df6fa8b2f834984781f272a081ced4a36ed0440230421eaef3646ae0ee933157a1d7f655f669557dc5f4e6e314e327878f930d6105739f67912b33bb5299472a451cb6ea500302047c435bb500673065023100cd30b4f05222801bf56040de1a7e1ba9c0b550fb958b370be88000730dc66e3c15ce805c15cc293edba1dd27fdaa057302305b64e6724a2f350a288afb72f34893d111e9b062b3d637aa0abe651310f68bae644279c7a1a1c2a0056dd681bba93f0c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023055ad278c4421588dcd501602292e27397fda5e450c9e932ccccda9ec3d4cf597799cb163962dc7b6f0d7fd9837134fa9023014106dd48502646ec7d7dfe773bd000bba78840bd15911146978d707fa1e95431f29e34cdeac9b18dc9ee6139dd2838b0302047c435bb50067306502306a9afb6c8fc40b5dbee56556f9921afbd616b0378df98dcb3c4845fe5c50987e274f66af461deeb2484626815105621d023100f8fe634ced36b0a74e5f364819ec3e550fa769a5a369c00d1acd6b751ef0a7385f18c5e0f06fb55287fe6a3bcc14e23c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082dcc1ea11465ec28a2c98ac4a2763b092135e0e1f0b12762f673549c44446345ca7119c9d1cadd9c58a78eaf8dc1fa502307f83d7bead3bae9de1b6698b03e9de1cddd5623d75b4b5feddb71d54e1bf812223bad091c44fd725e39416d82f00e6c10302047c435bb500663064023037dfb123538a52616fbf52977f2813e33d4be8ba0d2c36ca0b4efe826ba9c42bba13b0f5f12eb8ebc279a36fd97a3c55023009eb030257fcfee762b7257ce6dd9879a55c87d035671a6109d5a778b25cc731a88584e681859fb49a44509005dbf44d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a19498ed4e83914669b801d8e8202338f62ae655398f64f7f35d9dac33b0b1d680af5d1de6c47ceafd6925d4149f67b02307d3458d51ebf72adedc8cbecf07133659bd20e157c2a9ec5eb597c66cc107718aa80ed79ef691b4fec6d6e9fdd01a0db0302047c435bb5006730650231009daec1e5b54486a9df5f6ed79d5fc2a857f9fd2426803d06b4830af3fa2eb87fcfe3b7f1f1172f508f32608c4b5c8c8b02300fcecdf2066dfc5de159f22f2dafb2437072bd4ebad2d1b8919424eb468c7fe494f20e84351d1cbc018f1e68b1e060d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230364b5013d336f23dc152db186165b707dbeeeddcb7fce4ac7780a23b04ab8a157ba4bae3810e4f6612a2dd6ef03cf7bd02302993fe36995ad6e8cc473c41a467190d3efda61cc9a38caf3d260c00c7a41b704c8e105df294ba6afd86995e80e62e720302047c435bb50067306502305e45f2377eb98e3fd419f82e4626d2758b826354e4d8adeaea79359393966b839623dad8dd93c47cf32edcb55049d245023100f957bb76c3bb3a343098459eec7aca70e1027cf56ce6af9016d6e1aca982e328bc5fab0f16bdebf482bc4051c1c650d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b8c44c0eb5edbe121461ebea0ed3e7eb7de033b09cd21a5dcc3db8e65bc279fb5a100d1668c79264b70bf4b45e93e5502302d0169c0b7c6558fbff912e2aff75da26e1b36835cf8aba5666c91451f6bca224162a48ad971b3795343c9a2ca3e8e810302047c435bb500673065023100e45415c7ca4d8d6590d864323ab4c8ce1740401c0456bb515f3430727299f361458e96a05dc5b31a58245690f82ce2f902303eadd2b5d1eb4e20e2a77a5968d124ea9652377a38a8a0277c8e53bb2d53c7c8fd525d208d4507c9c622fc118aa736250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023001534d1c3e84d690d4cc37200994ff89e73c84ca61dac1bcb3d76c5077964f1d808279d19d7bb2352e34dc67d9ee8acd023026e57c7fedf434bf0b08fe8440aeb7514d66211b2f34b96b4380113eda5608bffc37be5b8b418d0bcc39123faf9ece4a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305c5ab94518fd93d4c163e3a41b087338d23c6c7a8cc4a6ccf7498a77bcccbfd87101d8f4f6572a2423f81136deded2f202302d1cb9dde6ba07d2462ad7df44681c8e2ba38e3c56d087200a3249830de031eff752672f3df17816eb58cff5ee4538380302047c435bb5006730650230494b18fc72b7680336f055e90a6366ac3cb7e6eb89cdf6715666a4ae2a2d18ef066b6e9d834b4a551e35816daf5240c8023100d3213e9a6e6edafef8f7fcd22527a7217a83c363d9770397f2d4e66504f3cde8b22384159076abd9490cabfaa282d4370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230401de861be7d6328b912984eef116b9fc767e051cb65b7c85b928d931e7c836596bcfbae0340c0df582fcd61c59e1463023100da80cfe5c5e7b9294c422ff0416c4eafc60b91a3900193f78f63c07664939ea4db95eac843114d315f3a0a8ff6c2fc340302047c435bb50067306502303946a3ee5e832736a54a624dbdc89262eec4870c46548aa30ee83cf75ae86bb612b65fa911dd8852b08e09e2fd122822023100a28f23b7dbf30f5660b9e912f4e81530f3613cf2ee390f45248d0e0395a3e6b1170c684dbd0744720cdbf9b346db879f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023061e8839f5caa4d38f815fc7b06a054706eef715281cb600892f101941846629d535463f93b95569034e485c75cad7b12023061f6494067e61d6d29177028d12a8a1465e4de068fc57e54c7f4b43f1fe9fa6832632aab57bb55d213582e23cea7b44d0302047c435bb500673065023011893ff3aabab9c758b00cfac7ee75986f12184265b2195d2a906ff533b16ce6b1ba63f9e9f78558588dfe9086c37a1a02310099c8b7fcfb7b8e17dccc28e7567af2708cf4ff2aa2c4efbf4aab27c0441d1d9189a6dab26d471897ff76585642c4b44b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aef18cb1f088669305fca7778711b3e5b1d2a6d8210f3c20ad6da24d0f02e5bf1a26f8029f00fba2b6c418f2fd483d2b02301c46f2868ea34d89d2112c2327627f24b2f9a45abcd155f3c49e24b6ceda98b81279943ce12a041ca0f24cb7a742385c0302047c435bb5006630640230093a7fb1c6eb23fe60e01e2bc720b8d9cb6637a4889a7237393b251974226475cbe5bc63ac6d8a3143e589c3de6103bd02303c8641c845ac4a7f65f73e62533997f8e8e5806266c1898caba48e1117a2d726537c730bf27a40e7c478e34ba71bffd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c881a3c954c990436d1ac31e5260726c0414f8d6e0e255f4b6c289619add9f2d10fc2df5fc14ed55fa39ee5e6faa76d10230023d350e2ed2fbf10f3ab5aecbb59159bdc9971d212a83a617391f711aa714523ee59c25a0d602812ed2e8130fdb48f20302047c435bb5006730650230792eb5a9a309432d087b9c969b0ca9656b3ce3f970c6cd35d044eda0e284f7246e9cdc37706c4851b5f2e54acb862509023100857579e8faa1b2c4ad1b6c26141f0818be9ba20c478aaa1f48a96f2762fb0af922cc8c8e1b6a23f1ae8c545e54da2d1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c52b3c80d2110b0d6d15591ab3cab08f14fe25cc60dfc621f716fd3c3bfe5b473c6e9c5ecba516aace1afc3c5aad3bcb023062d51eb4fd093ac83d19434f01a5a44de35b913030a10b816f93db57e9dc87b899620a45c5623b2490ca2f272891a5eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f50cbf99e47644bb91984f1b8f4cdc78cfd35ba4dee9aae2db12978a9394acfb4396070c4c1f1b44d73471741c18f0f02300fa8aeb077ff4934739a346f7aa6850cbdb81746d2bb43c112f5d8c177fe376575dc048d58d9fb1c72b915cf889a2cd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302fae92cfdd85e0a81a05fdd271f143a2224079b29ad1608a2a4aa92b59dd6e98f84b78620912ebf82d7db4b170f2624f02300179f842bf9be49711aebbe862ed68c4c96b8df257cf9ecf16385f38d1de182681203d8dc1c70c3fa2c5133a01682fa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b8342bc56abaa24bd0fe2d34b90f58bdd62ff1ab21b7db839bcecff84c41df84a168e421b2a9550fa9259183f41ad12b023100d50490aa651433a53da45dbbfb0101c532334c215ae2207a5f858f88aee8faa665eb560e95133dfe61f3bb9213ed995a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d4a9e19b7c42f90c326c75b4cb4fe4cf4055dce47d42db8754c0f6b365236b3ba2e551c52baaeccdcb9b127b80d592f202310094fcebfbe2f90ea010ce680ad93744be27183f378bb1fba3824ac911b4637b9305e3ace221344157597a1e3b86903f930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a6f017538b202057741bc3df4368e91ed7725b7012caa97e8995170e16f5cc9aeb163ac5632db3fcaa6e8a81063c7cf023009da2759b7117e15ac2656466db199433e35e60ad57c249e6ad28589db7fce2e16ee5435dc33b1c78e9d433eb7fbda970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088400e37d36e8118849e74e9c323b0443fffbe489acbed9181325638d5284e339249b737b014ff1437986d5a1a98f6670230139f8bb7c1c3f0d592cba503046f843e2843e517eb58ae35b667665e763369046966afdba3b6eba96840fd9ae97715ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230155c45e3118574620cdf0a5ef8a4d79b92d09cf8173d9d7bf2d1638f774f0badad009b0c55c23eec172bec4cf0d0934802302697289abe7976c9a60bd4bd9a8f8dc9fece7f4f1b067bfe50ebc199837e58ef7b94732f4891cb271ef21843b0e520350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230445987df5eae9e4cee68fda5f7f75c0a39925669ff16a31998642054211946b161bc6b68b7efe6da1a605567e17ff36d023100aca1016011c2444ebc9a95b6c4abead220f6ff51e2be2cbfdd30411090421e1caa89fb5f1c4320af23bb517066e2e8290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230128922bf4d849d65e11b7907449ecf1431c976232897f3fd87af373d6541dd9b5d47ace6d20d3db9b31488d3d52186d0023100a108a83690c626b6f27b5bbb3494bc27a9ede0c3ca974ca3901a5e4831bd902cb72e66299ceff6c459c342d0350e5e2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f50135c6795c202f42a8108f5e2497fd1296505c26c95dbaa837badb5d423457e884ab2783b2d23dead10ef9f9b76e8b0231008b5a7fe67b7391100bcbd0958ddb174d12769d90d9686f1107cfa9a58298d45f61e3a4c856e448e95f3e0def0a07ef170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100967c91d88123739b6d79e900fde4ba526df52ee09fceb5ebabf9fdc5e8c8256920e3de1080005d3a72aaf70b2999e3f102300c7b77a6975e61b4c8afea6a1644a22b2054c5fb2fd1c46549f411545ddd1def38b7a0947515d7a976e08258d324ea590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4d36e651975bb2d9535d7cedf6164d94ac0b810ec07f3083d247ebc2f168e70c785bd6e4fdaabf32ea453f96009455502304cdadba4b97c05a4d017e7b23528fd3dc1b4e001a979c8363d9087a3d4feec68a687b00cf314ef813498ee86516b239d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230751e404bd03ee7e7051cd73fb06b2682d3b68a5014aa4cef0a4429f519def7e38f24e2ec2487f4c28ac5b8b4ec1fc435023100d34e988660d0d2a6ada5e718b13d19f0437b46fa8e0da80e0057c917fb3641001fbc99160331026e748da29dc7bc37950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306bfc4551d9eb34f2b529e3c114ca3887e7822be59a8eab8d4a66dc2e3789721774619c1c445c9c050e3f1b94d5c1f66f023100f30ec2fec7cdba76a4a0a9c2243d0141f6b892335b4b896d8e0c1a33c2150889f01011ec57ab90d989baa6a38077f3bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a4cfdc6ee105341c252b6d250c3df9e981011f8e7f320b303511015abc7ff76561e69968c881b83a8b50197d95e4f6e023100bfbff950ba9e118b997101ecea0360a6c81cad9f6248a4d407f038292801eb456b6423efba07a4f2163683081157ff690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088760b44e0279966bd9cebca31f3be74660a0b21d0dae695e37a66bab11923452714e0e3fe8cdbad41c293ea58e252570231009de8b08fd88fde2614a120e07e672c84a3a4a1589fd6f93dc98541ae97ff5283ea247868d6e987480ce8abd2da83a2830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c543ceec4d61658982b3fc7fe8b68b4f87b97246b77bb3bb484536e30fcf7f06eb02a25ead6d44994adbd91f589eddb023100cd2f270827b6b23d9866268c031e4881a150450ff7650b49254ad2991b6dfd2e7bc27a173f1fdd21ef7c64442e3ec1bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023072be37e39bfcb97c61ea030b565878c1a19ada662bbce3b9131e35ea4b0bc8881d49c825e84305b373063e1044c8981c02306d3e7c85afd2294442d48dd538233d130f9491b0372bda901fda90bcbf430f20ca5d6f6e83b8e8bf57fc57bd61eb0f2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa699823f8e44db614d08933bc20e4a51c94b7ada36e8c019b3a187d083af2429fe66a1d57f97b411059f465eb94ac86023100a2065e688ff9c8e4714546dded13e96f2a6493b7ad055d0f9d695e4e9c8596b5911a4f286ea508b9f44d24ff6315494e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303919831f36af7336e27d0da7bf9fd7850d348795950527af2e30cd7657107e7da8c37b6f04811d172aed6577822924b6023100eb47ed850e660273276f61fa5df9c19fded1213f97519001e15eb60801ca4b29b2c6af6123919fec30f0d51b1509a46d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100867f6c92aec1cc4d68fbebe87b29abe70788fc682aeee0cda370fcc73d4fc4f71f194533d16c691be97d881b78d0f8d602306fbc581bd20cdaedafdee1f3e1d3cffedbe2accd65995747af84a84cc103fcb00e6bde63e7e6764dd55f2c6287394a060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c9563eb0e08c52d14b09cd14fb2b4719b7dada5ede6bf66c0c2e3beb3152a11957bb2db38c1bfd0aeb62bc13f0907e5023073e56f315887e893c663d2af5e02974a1fc7355baacd9b4742d50e745d21b51b4e46ab9c2aa9622f59f4d68bc47aabe60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b837f289fe28e7a0f6b162521c0738738da3eced51f422dd162739e1ddb9e526985b47b71b439733b82b1a17826d1eaf023100ae952d97f93b7275b9e0d62c54e994964770e3eea8f8907c2f431038d8e4610332e5a311daa0d0bcd1c01328aaeb11290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e07e4b2ba909fea9f1ddcba4e6f76c7d10513221d7d8bd154f94142fbcc64ee5384ddc0dc207e995c4f89e29301905aa02301bb98590c4fd454976da9a22e61048dc4aa6b08d8a927dd746fa0943f067d431a1e349e8fc3e013980b02ab06d89a1bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e5e633ccfa7ee852c7b4b5901a5be287b25df304d84a084362b49587aca0067ddecce02f3eebaf8f80a4b6c96509c1fc02305e6d08a5009c511d8c0911ff4221f72e5713c4623594f414d2c408d99489d351001075950bf81ff9d86ff43a23deb9cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a8049a37d8128e490d7d2b24c3f77239b0bc448b15a2629e8cfe51815f9689022ee145ef1e37f46dce6aa84ab6b3e2f023100b7c9ce7ecefe43f3853a50276a93c0e7e16cd4b458900ef315a6d633213b7b461a49108f6f92a197ce35c9853cccfc140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d4083d34acd023c3736ad0584a52bcefa2d0503ea8bca1eb0c0f2909fb97e153814ea7b7f9290402bed3aaa5f699cba02300eb4324d844ebf478d9f745c9f95cc30cab70fe5a10aea07e548eed0885878619265af294404b721318018961cb7ac010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100818f485fa9653a7b659919fafe857e97bd8edba9772a50f05eef49a15b26c03eb4432e8af5ede75632108838b0f8163a0231008e8021a0fd932dc5b6b29f2b353b69884e6092772f0a8750b2000c168f0d0d157c118a84719eeead920155a942163f010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d9f1b041905c7607c1d0765b858c9c2cad727d6b9216a7372e6ee55262c7a6c002286a2a3b6cbc7e329fb545e7138ec0023100e9155e4b4f6bfdf31f3a37f184bd01b4661e62552e52e3343eca621a9baebacede7dc609a6884e9a3aa206943f9186660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304dc162534f09221e018b2915c22867f6927dac0bd109877966dab49a3a344e33a72fec620f5ef4c3601a1e391a12e7d4023077e3717bc0e7502348021c44694a16227a7283108bfe6f13e3788c1033e8ad388043996925f8a0819b5a8b8076a827c20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea8758dd9f18da0f91f6d6f67c883cfe376f9a5baeb18a66fc0bf9ae1412bd9440afbff29c65788a343cb686d5d1b2a602306beb898ce540409b33fc3fcd3be8ae2bee5f3f3e62d2587a9d0ecfbc1ed2d32a0bd2852e1e9d1497bd63fb2dfb2fcaf30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304529c740a20d9c48685a820599f58ba69224e4ea086dc33bea95743f98dbcc5d3117a20ba696a404a00ea99536a460b1023053dcccc5e70e1ddcbcef710ac0755dff9040ac5a997a1dc34e6994453c2a888205889e3b6587f8babaa5757485805fd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091a186fe6bf529704633cd28e2819bf094328e0658af1f7924bbe879e8fab8abc92a88e2e6054fe13218586594e46354023057d766591a5a5b51589ed9480ec2596b1f8eb50dd5303bb8df9dacee84d7b728f09818f2680ce50fcc01e120e6fe9c030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100874473899a4b9543820e3c6ca3f8e0cd438e9ca03c61f4d5ba26b1f28ae561a8f65e687e66c06790f55ffc223f994446023042f38d0e5fbc5deca6046258797824b97cdc773af4bf5f95510a4bcd61591027f63c21b6e499a2ae67074f3890b544750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce6f92b58998b156611560cf2ff1d3d878e72386c3f3f6a8904e178e204c84b5a5440a21d554944329653be2966b213302305ddc240d094b4286f01c6b28c282495f55b860b9eb161f60c825430259f58a1920bd92533c9f08592b5f8d0352b818770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230293733f9cbc42e8c35aae31612d7a4f3f896bf6c748216bda8f5601a011faa7a9f0986c0453f054f8293eeda4c20aae6023100fc21263ad8488e4b42fbf42d19a4bec463620f1908fce3edc23dcf9d15dcba367c034662da7823dcfa16f6f239ca6d5c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bc47450a6abada07dff1dc843183391f23e3ec1031a1de031e090a19c7280f68e42a84d55025c2f0bed38ada39c2299023100a7ad320d3eb001fe90f468525a3a347185175adec906c4745c04cf02190743370baae4d0932950f3bf52b88a376b28860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029270540b28bce00617e333ce241ad4100c334a19bf3e2d1cef1bbd2cb03d34ed4ada1d3967b53d2ae0f759bc367789602300d4b553ac507312fc173ca4461426764fb860726e389f9a9896133c569eefcd14a4dec9246cd50fedf984389e54adb1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bada26bec52abe546fe4ae353e32407479928141edddef13c1b5d28a5a1e1dc147884ecffeee2498100ac6b85ca87b5002303116be4ec83fb36b14d8b28bcd40b1350b5f53d5c77d0a405f7c1e687d9fff6ed196393057826c2d2cd9a79b66a644e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f90b2a1b8bc594499c7a219ba9890488afe20b18ac2938032031f0bda93543fdf032b1896dd9e54d3aeafaa6f29f353023100f93ebf662c75c22d53331b808b617c2eee01b3e6a9e869f49b23747eb568347266ba9bf71ac0dfd2da69fa5ab30d288b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e35b71b9bec4d3e9cfe67d78777df0ce8f4b7d8e6a5b3845463df367c24e010bba4951fcd93432e743948d301122e12023021cc278a2d7d4f1e19f7f98d802b69a754c2fadd16c4fd2e325a35ac144410e82bb77cb2fce56a73e780a248ccfdc9600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230103de07071c0ad75e20406aff290fb753021c93bb2121087b19d6d2f2d61a4bb183c6d3f313c49f7929fed40ac0c826c023100f7606c511e4ec61fd93ae7be7916cc50030a0d91b77b8544713a8e38981ffbeeff5b99a6ade0d9ffc6fd20fb824a12890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ccfd968f3141eeb85e66c7f81c08b9227cae22415ea3c43cbc42710abc6c95dfc031e4917387a5112cfac27dbfff69e202310099dc62224b21677c32a9cb5068d45f5506541319af6716f2f9e38153c930f349719d78cb0dcc426c50a4b073853ae4320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100eea66ad06a86a80ad903951ff16003415af37f56bbcd5e4917f41082854bd0266fcd3c8208c2e202bd8d660ab90468720230086ecd73f1f7daba009595d05cd16de4717cb49d5fd7977a233e3032174239729c61e91e86e33ad9d1d0b5d3feff11ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029d92336e537f21fd67bb2ac69e7af39550bf0b735b9b76921f0ce2ca41a308ff8736855b35d17cbec29890caa2f1f32023015cca529085d788e674afefd9ca2a15098b7a0e0ce5d0f87d230b8fad11072a70560e285c789cb9ad65ac8c871c0fa4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023066b059478acee65f62ae7148b4ae3b722d4830014415bfab17c2d5b8710329bf6484b7e3b9d35d3e53a922daa4a7d450023050eb38916a47d309e7b5052fa352343cb7ba6839979ce72f6a4f943a4152014eb21488ccb73efe23bcfc06e5556fc5bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bbef2a1c4c1bf5246ca3070c428c1cf9d65d2a80db9ac9001513b0e175b27e98935504f83c7ed15f9091228ae7e87d5c023100a604bc603765de84a81355fc8f7b7f0bb8a65809a8103e13ab5b5d2730795b48e919eb830901cbc2f9698d422af5f7ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015d080f2b2ad85283bc4292d1c7974d8e2033cb903888f5e50f2069d2b957240e3e558e7765277d5b2c83c2af0e12ea402302cc78078596582ad6b0be583e854c690bc4c3691cacf939229176cc25115e93d5c3b2f7e25738ff2509acf3fc5aa03340302047c435bb500683066023100f3722a64dd536ebf53c495b3af8d287c9ef08fedbfa76d0c3a49809407ad4bf5d8b52682bc6299727448bef643c9e05d023100be85f5f6db6892e21eee72d7173a3abb8faf650d4aa9d23ee6747a9fa36dcf311fe7e7a21c5e55225a54ff721d78fe880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c7bc7fa27a21a103c3279cf626f1db610bb0f4da3543b66379a8a8b3cf54436a300dd6ba3b54c0305a98155142d0a480230698bb5d5cfbe831f2ef64c12eb3d2273a18dcbb20ab0fb45b10e225144f8f55d9b858fef4c71efbe002c7e92a3ad627f0302047c435bb500683066023100bde08a887d921c4c8544cafdaa9a4f6beb3eeff46aa73ecfed227de9edc64aae4ddde2237c6bab645ef18a73adbcef23023100e1eb2e0fb7728a6b6bb37ae75d7c22db944625e49a7b8721ed5f2a393a0a59164a4257581133335b80a8e6848d53746e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091e52c78d95629049b335d6cb8c99195e21ff31d53d00be88011d21f49de6ad4466c872007c42d150df441ea06515d22023100d74f69ad272bd5dec3a292c9c8b5395488d0c055fbf674480720c455b06f87305c808b2d461f996097ffe3e13c3287680302047c435bb500673065023100c64d054fe22827a76eabd529fe29d070fb17253c5c1aa9d5d65ebef95907598d5c294291a2045076105c6c426751f94c0230286c2020344307facd7d242fa5a7961ebd06f0a49cbde55bc27d852e563d7b74069508c9d72fe23a178c3f4561ad0bb50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e917dec244812335f0ffbda9560bce3da742846d8d383e013de52a9204487611caec7bc97144122c2d3e3978375e2bde023100e412e0b6d3193452e19b2a479e29a8eff74031700ae5600e6ba924f323e12316d98cac0a45c252822ed10151cb33f6850302047c435bb500683066023100e14f4cb5df47fdd4a4425e38385a39edc1431bd07fa2f56799fddac845758816c1fa75622ff96c95d5607802aa04a5af023100f62c0831a29a5fb9c150bd2315dc05fe5005b9497ebedcf74a3c88c3858c574c58d8de36542920feedcb949bf3ad613a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d06d29dc6cbcafff4f14c327dc976abc5e4c25b56315d266e492ca52243301d79e7bbb2ba2fd6f33ca79b44f2dd3746023100979c0db22cc2502a53e858c63ec264fbcba34b1ba7ce0caebd05aa8bec1727dd00d1a928d78b4178024e171aa638cf8d0302047c435bb50066306402300dd9e1d11774044adcc3f13727bceafa1f1d64149f67507c81b5c2c494d96945f4d3ac41440e2c743fab6d1b5a98fe3d023048cacdec97613cf970b3d891ef49d98934216805dbbc4d567cdb67d817662b761e92f9e2f0accc3be42903d227a083d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009238bdd5478d7861ac93b5525a0ab6770c0eade0ed9f4ffcbb4b975640f83dfa68806bda84036b57623f9f533d3259e023100dbf5d4e8aca81d0a49522f321cb5bb0889073fb6c5d03b6e21c45044bd8c0114ce69b79a0817833921458543a5dbb5f40302047c435bb50068306602310082d97bf5fbff048b39d5176ea17b41b6ce18b20bb42815f22c6da897061602513b5de764f3bbe9e9f92469537447c18e02310093f288fe803f9c8cced10f659b7fd7b902676034053ba2f9cd03c5027866222501608cebe7ff728497706e6ba8bdc54a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fdf1bca4b9ed9468438f3d0ba572a4a2e4f3d725c5709396fefd48526faa824b65c8eefef71602b128134392948dcfa4023063509b4145e3b341b80f7de16766373ac00412495abf6031e40bf4c05cf2850f38022885453538b9a89af3255ed76be40302047c435bb5006730650231009387a3de0fdaf55877badb9007887ab52fc370eaaef27ba890c559a31813147d75c3521dc1d0ee59ab8ed5b6e612506f023065647901220c0e5c8d8a42fd983407ce4ffd02a6149e15c370575692f665587435cbaff51f0646e90aec6f6daa0e19c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f0783ce4f7db8919cc5b4e7dc36dbe9d403ecd6245888a5d0e9bdb68adeb3a7bb80538886b8d940b390686a30b095400230168e6b1566ea34c0b35782fcfc69df7742b92a85663c194e8574c05858250c26077670dbda3a3c3c2fc126fb696115530302047c435bb500673065023100fd6e8af111616a8ea852340444ab3ed9fc791581cadb16e659ae60eaa68a38211b3d4c6fde4812d8c30d32ee6bb63202023025ebbd5f3b8bd8ba84fc170fb89c0e17f475019a326a2d0af0cb2b5d58c0a75ea662f6bb46667f763348020eb6cfa4f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032e493e3d8be661a865f5b0bd4dcf006b476d6a317c9f6231a7746e3d6a87ce0996594dd66040f5e5154fda16ec4a1d5023012789b4038a6a6202fe9731a4acae3d3de662c75db22eb0ae5bb6913c6f80e62cef6b674cdd7a2b3ccefc4c17439a3f70302047c435bb500673065023020ce64d702403e740616478a18575975bb894c6fc75d5ead52dfe3fccec4cb5e19d81c459fc0145cbc24e46b24ec52da023100bdbb11ae323a81f553a55647b585b3a07d875e531a04d26e799be1decfa452fd2ef86190e0d1e6e67f3ca59abe25aed00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023070371399b9416c85ae12fc0982372f1dfdae3a68005d604e7b402cafcadb15045983cce4b6350d94945a29f1685433f3023100b661316d78104ad81aac31755ded0704dc4e27aa121d6abf587092af7342f6a0f62aa6ad42f9490e90106a25514278720302047c435bb500663064022f75aeabcf5f5a6c5f2da20f452e7bbad798dab8dfcfae51a90540fa46ad0a85aaae167360ea24e254785f41070315f7023100cba15e1abdbd6edcce4284b77b8197f37a5182656cd2b1634f5df8d88b88d052a12d4b4f4dd390aba2a4fc9378327c670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe273c42d9063848f34d3feb7fa416c3037769bc2fdf3a4bc1a2abeb2369dc9a8c5eebd1d53dfa094376900ede4064ee023004fc8507266c3db1f19668957cc524c285c4175b3f455723efc460ffa2f4dce59d8d2fd07d9f261735955099fb6360880302047c435bb500673065023100e78d26ebf6d98de33006ce194730876566983b265139a6dd1687baedd67d195d00b7db0edf81ea1ac19c6a817ee6e665023068030eeb218b758451097b6a6e024ce55e74bdc7b69bd4d3ff56404338fef9f919be8dacf552d5f1b414b4161f25d1300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008defd1f53bbbffa6e6499a302b5b2045f9c7a69b0ae2663b220025581a277015be0d744c95ccd544a1fdcf017b9725410230518d92a40325fcb4e6e99c181ca4eb4ded0f074dfe9873860bf7d16f8eb0cffea6ed7bdd036253390d4f35455840055b0302047c435bb50067306502305ca9c2b75682526630634a459f519c6e52a47948e2bd81de59c19d97c6a31f1c071d21cf2555142a9c0dbe9a3545ec7002310098e9582996f9faf5dbe132d69a36b5fa3694f0df78a4ece12635da831110db4adb1da257059768f952d27f213be356440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c0376231e7f59784aee173ebb84e858fac244b08c16771dbdfd03b02992fb591a70180838febdc6040ce4c7c0c5e81d402305b64c6d898add92568ab26da89136aa64a9bf3e98b71031a60a03bf91cdb294dbb236ffa5ecabe5263c5b3ae1cefa7d30302047c435bb500673065023066936403af63257ee5c74f181bfe622491efa2f9b66107237009fccf1570b946aa87c67e8c8c2400ba8fb7df176e5e2e023100b706fc86233cddc26642b03431b3a75505556d0a5593c0a3c3622160aaf66222fcc0bef1b0ced30b7d11c0b446990ec40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023077d81e9ac2ed9c80423827988cb5104bd0a8fa4d2bc875af09dd88a71af39a22df2db83ba424d3637675f2b7259ff18d0230008e9c30c327e0298f5a6c67f7b1a3568ed7e0b793c41b827e7e5dd4d59683ca0fec94cde3bdbf2058525a9f9711d4c60302047c435bb500673065023100d1e5958b363fd17c3454db2734df5229e832fb86cce2dfbd03b81c7c82c108aee8f66e44e9fa66c929365aefd1856d2202303f82bc1162978fcae057304b4c057ac5c8059c086b53e77f5ccb48522821f56dbfa103ffb1348ab31bea9fffda5088950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230416f74fbf7038a16c796b8e4beaa0759042d5b7f96af8eaa71d968650a09b640fc4e3e16de6852e5baeffc54ba09d95702301febdbe25292edd84c1428fa7adeb27a817661f68c82a285ce6298126b6783fff196281a1b549863760902a2a11919d20302047c435bb500683066023100d287adfa732b46c7a5c328dbf8ccee4901ef5c0fc6d833b4e6a61f1af100b22ff366f257f5d2b536d506e852b46c9c6f023100f65cfd62727c78b492466330ed6d34ac7e503d54ea53a7b1b97052e984385d72faabd27cecd95ac3e27d1d22b29034c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073eb95b0bc9f78fb1f5d07440ebd2dd115ed5a9a2da447844166466556f6bfa28225a321406b70b24be517840bd3bc41023100ef5f353dc85f0f4a2644973f8fd1e2818cca5b995ef60e5c1010e209d7dfc4f133d96a3a6025623060b9ea95406de1690302047c435bb50067306502310095cd5a8610a5604c1a63c83e377bed30464ca79e87b7735b11ade4f0523f6f72f6ef6c6a9c594e229887b9b8c7ab7604023030ef5705d4c55baa34678fbf70c25dd9f233e4fb8f523c52ccbb4a855f8c1f02da654d1dfd9a06efdc610fe21e8c0a0b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306fd5a706fe803df4175ebbd3fc40860ffc2cf8572b719197ddd1be0216f2627da5e49f4c5f472e803f68c300089b2962023100fe9d341c1d2cf5ec65978d9e6577c1a25899aa996d4e8b3d5841e1c21b3a90b650304391246d420560e4ff8f3502df790302047c435bb5006830660231008d57709ef8b7dc1743f2112fa8d4c67b49090b6f3c5281a13c3e64ed8f21de79257530aaada68052bc1b6c10550104ed023100f5f4f25d5eed9d5fe44e1db6744d0b5d4e07a268715f325e34679c44f2e5b298e8d788be854dd423e4d17740d002d3a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064022f471bce1d521446687636547b104cddea010e946b25212bd1e5e35a38ba28d01a57cb1e9b584c51122f79de965de6fb023100f4eba0e991d66bbdae416b70748f04840b88e6cc1a91159d6c988aed36ddf1ff3765842e6521a43d07496287968e0eea0302047c435bb500683066023100a7163d2676764ef77be5d27779a379eaa49646e2dbbaaa3e3452d1b096fde8535c16b5e3cd2db6167e54ee5fe1e28aba023100bec56065a9ea692487b3d7bc6529e51646a1cc842d668125f3be980c12cc296a75685a5d07e424ce9420ead953b86cfe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230448b307b639769358247d1ea748fbc9a7cd73d2772ee9c078fb1fdffd289331a089d9744e0921d30d6b4b59e70d02e5a0231008c69eec000dc3835956c05a3a359adc5ec0ac681f3edfda3747a7c89ad7549cfbfea1ac78539172901b9da4579f571090302047c435bb500663064023008da0913dadafe0f901ac516db34fcfc0184180ffa8cd70d696f7b3bc2e49ff60605516e87d0055d174feafe84d9556d0230010f3ebe3f5baec97795906e8c338b7213418bdc7fbab1398bc010a85f0f91887f4655417d2cf0d6707ba80b686a1b5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230411ae7538cfa6cc494cb2a54cfb6afafc35c78f515ab294f7785a47874c3b7554d1c897c0e1afe1a1d8c485896d2881c023041966ecfd4d996842518e459927e6dafb67ec953b529fe1da0037eba3f745b5ceef13c9fc58104414a0c65c217c176f00302047c435bb5006730650231009af03d80ea63e2ba11c3e2f535f09307f53a0f95d7a365bc464a6a6be4ba28909d3d232e76c2daedd473248aba2c478b0230061159299ec958f06d977cde4ff1faa0675af43e088fdc4cf6fa0565b4ec4d7e36ccba96bd3772e70458e7ff5c3ac1f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093db9ad211b802bb6fc8d40e84634dc5ad33f0d598e06545b1aac717d2f78b924055d8557239729c15bfbe4ab21b5a3a023025b0efe58aac78e896b5f0acba827fc85d9dc716aba2856b2a920c31d87bb5bbadf23808502a3db4565c1d7667730b7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303a0d44d5847989190eb96ff89a978d276c99bcd6502170503bc0acd5ab72b50b706d1591652c2a59b26eb4700301a0a5023049c20cbaccafc25435640e25953e0cdd5fb4f8a10f2884558cd493fa80e014d8390bc0fe2eb5eb2568663099187964fe0302047c435bb5006630640230101a058848ea4da6756cec03172b07704478cc79c9c13687f50ef5d912bee73e274f51716f8ff90ca93eb55e5cdeaea902305024c3b272f003aa47191c634656dd9398b492a21b0efbefa278769edbad2394c16f97a303154bb29ac07c37c6246abb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230393643a9433b3d06fb029937f372918c21c1cc55aa2595de2a1f892e9bd4ac72e897c8245b498bf41443e9d7d77db886023100899af573002fd70ab340a149fea623ce69669bab22d9453c3eb77b1f96c2479fe955fae21e1c5ee7dd53ef7b0102c2870302047c435bb50066306402305663c9e3227264158ee9b86851a5abc763734ccc5d52b4825ee002fd299cd456ae8ba58e05b48e604ff63e52e2c50c4a023047f591652930ab7fc4a8508a6e35bf8ccf4f19777b661fa26fce5d9e2fe9f053679f06ff58f4efabb4e78152e32d02180302047c435bb500683066023100e0f10183f0f7de36e173aa306ba38dfcb15344e16eb58d715baaad64a8c3489d81b6ea1ee7e2391322a49a30d408a39e0231009aa4dd1de0625e67df0b82bbce8f99d6fd2968fffffe59572a4eb3fb86fc85656adc2e07abc07fb14c78340ec18368070302047c435bb5006730650230778a69f358573e2f6c395845e0cd93d765575d4fa9fd73e97c8decdb7a95cf7070eba629029d35c48b500ff4f53efe4a023100c6891c3af4d8b2e8a97daa7d92ee6b84bf167d73a401144ee1f941c470542e0f593b0c275c4f1077145c6293ddc12a910302047c435bb500683066023100aed100520d127d0ce4b94880695160b022054be25d61292c507829f2090eb7c5f3f2ebc6a900f3954524ad662ab7a91b023100b3a5fc82f2b24320ca792e21e4b6b031b9579910013f410191fc83110618a135c7a70c7ac2893c3f122a101698208d3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff1793272113b42d3c578cdeb93c72cc2e683afe34d52cac42025480e9b1a88469acd94826f382e200c10914cd86217a02307cd1ed2b6d0819776944af675fbe3a036e86a8c3363373e3ef57af2fb4c704d8803a0771b1f81b9ebff62cea97f5dd120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ccfb830803c0c3523a47c5879d9fd8703744a931e3e799355fd73471d5c9d83b30ae00921167c31aec068f7a12bc39f023100ba123cf79d228960d2fe739e6fcd3847a0101af1a3e65e950f9b204aea63c8ddca233abbe489657781e2170e455e6a240302047c435bb500663064023035a326ceb43aad42fef795bedcba1b3527a810b13b7af52fba4fc217963d78c49ed84e629333bca52a3c9b276fc386de02302828a05a0d39432d3fa167d56db6c6a876a46c0f327a0df508e14c2a74e5b8f8d2c2e4a5fe0d20e8ea5c3c41a6ff842d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023018136ab47cafd94c4f034f4a8b5b76cd170eea104818811e33fd5cead64151c54f34abf77932194a4acc7d37a602c6b502301e147cf84ca9d5006aa2b4d6ed508a1a573cc5163104f9a252a67bc9a5232f0abd7bcdfd114ceaa3dc3b8bd4c52cb7eb0302047c435bb50067306502304ff7661e6c8ad93a568740aac150d26b2e206f48cd6d149fcfc8dec190da7786ee7bb6f615944389483754eced3b678f023100dd77d79e614eba4004a4a33942ca143a45315517345b1e31f41d65f1cb8218dc5a0a4d82baee31bb7ceeb731b82a7afc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303963be45cdcf6d6f21207dd2b6955e4bf2ec8bbe0ca08ab51b4c6d5d052b1d74c60eb16f18989feb99d3cfe93e1d498b0230418e3b8f3422bb4696263e516bc08e2a8913ee2d5b9f07858222944eb8d7b6d59d87c61572e11871a88bae2d6bb3eb800302047c435bb5006630640230374d2b3e21ff8f3271e18cbecd51f78408eefd9e90dd2c8f7568f761ea496d87bfd24117a88adfac974febd8c00e82b00230532d5aa24b130dd0bac346d27ccb084ac5708c0204beef1667715da44637794bfbd7247c30a8d652091dfb15a88bf3dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100daaaed2ffc4114bb826791eb342c0533961ded7b5f2105c802e8bcd469f513110b4daaaebff1b2e96431a15507fec3f602302f60d508efdbd2d9b9909a465eb7508b51fda7a70c9c39e548e74b6a34a3a180ac25567b2fb2631800e6f487392867970302047c435bb500663064023063742985e96c7c8efaa416dfc32859d34d6db5dc269eecbff36bed6ad6d2fdc0d169821d9020e6f307535a0a8da1478c02300e2d3f9d8ea446f2958717829fb0290805b663d1dced4845caaca4c6e3e3083a3e1e63b88a2833f03864546f9b5baa230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fea0c834b039bc3f6aeae66ea1305fb41fccd0180ed8b5af68f2d08d559289290ab1804c2c7769d912ac63690247fad8023100acec836df345de5b3f1e085130cb923ad5c9949e8b8356c7cae3b8de7c377f4c3f2b5d601816bea140b1c62bee572b7c0302047c435bb500683066023100e0eaf239d496f11aa9bff062407db04c26448ffc0687d66d5cb40d76e5245e24631686746f990f1613f63097779569a70231009aa0ccb2c2f9f91fc811f89309cadaae41395a1dc4e77a37478af747045108f21c74b55364f0030c5ca319b05534897b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099eda6926aa29e5a0ccce005e434a231ffa3ebcf6cc97f2432a789dbd6c98ae2529e9b7c4cea5647e2652c07a1ec94ca0231009a9311ad6637ebbd60fefe1498272c497ab99b0a0887bf6afd2409c54c40f9c1d3fa327f7d1b58fd41cd3ec6cacd01cf0302047c435bb50067306502303aa934b286c78102649f067dda1ce2c440ef5465f2956b0611f2bf5c0363d98ddb2427a44733206185f8dabd9c6274d202310099409142d4fc165a9cc2ff44e79e0a004f82e8f54f6b91ba931c8d0d1cf03d2c9cf68f89d4979793f0186c481f3c2ae30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cabf9a66d1ad4cc731ffa73c3a5b65587c31033e25c52d46c665943ac5e72d31bd6e6e79b47af405e3e6f9a1d0687303023100cd0fe7060c50556a3764730c9209eb5968af23af037bde2545edd22339596e060788702cc99850320e7f8f4198771b0a0302047c435bb50066306402301157f545c277f6bb85055f853846e2d9d7eb3004c0d704449f0bcd9fbe5c03c9a89753ddfbd9dd21aa877e702fa352e802303f82e50ef61eee1b0c91ce61141275a2f3e9a2224637b906db8cee431a9d6e69a7dc8889d7720d3affd712905a9fc1c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1888d978ddba5f7cb799b04b1b8afed1eadebb2c77df61d05e7c5d6df32c6529cc7f711fe870b07f40047fcaa7a412402300bd271e42528c4328701ede13f5b5a464af9a8427acd9300655776b5c7d6511a991a501b5392b6069d2063b96678735c0302047c435bb500673065023015d984f836712bece34fed2fea03610f8971b0d4b12f5f60045b51204ee0e17ac157b56c76956f06ae560806894e2b13023100f7ef5106e50886394a1acdc439f34917727c054d4264fb20ea7c8daf47432f1fca4f4f58b6a319e87a11a3a5f65b61800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ea1c56bdabb1f09f2fb37c8026218b71f9506530169ed3a162b5c423597f9ea1d3382de270860167ac16223ee1e3a870023100f4da89d89ddb3ba05ae6d3f7864a89cff0efad887ea044ff664c41c6d1246503a55ff5d85131ab5dc437fd69cc7f4d840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009627c536c9b52d26d03d3c15cce9b73c1548309963d55139f706a86d899b358d47ae90d21401d3a74b895b7618dc287c02304af0bf1d0eb5eb1f4c1a138516f41ce77319ab152a194a08daba32653a998f3a76894f05c79ab47e77829cab5e6926490302047c435bb500673065023100ddd1d30376cc8b7611525d685735764f7aefeb1b1dadfcd611c0f8f8441dccd864045866537f3e1e036f50fe1c10168b0230324a8f0a1f652cee8b74f20c8225fe02add7e81681d01744ad1b241463a885aaa4151a91be721fdd6884edb59f976f900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f88722ebac6a5a9468d5c5679fc8aee16205b9baa0a9e6ce0461c9b69099096aadda1f2086ff966c75991598f9b61d49023100b1cde1d50781e60d6944fc5327102bcba4cafb6e1a4d11b4991c8633119c4f8e47880d5cbbc2f6492f50777419bd784f0302047c435bb50067306502305f8e5695e91aec4dc90172167fd5e28d59359977e1a0f32e58dbc30f0dc9425116b24f0ba8e893ce9a886a5da507f390023100dd47c6b3e7b862742914f01faafec1b36ac3f4e344f4cdee48c7ed443ea11b6bc0858dca7ed50ecdab389d0cfb490f230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230711d6d184b05e562f66a0373783cd9d69efe2860583eec17553e5493e3fd0e7a2ca294b5bc6b6e5d80d83ce02d7c163302306d11436a8ee3949c2849c4569f32bb4e26aabca286157ca4685d29432ee489a1f6f64ac618ae528c85c66dcbf61aa1dd0302047c435bb50066306402305f0dab249a919f80eff11dfdb350ea793cad409c8db0ba991d97ba76f251cb854a2eb6400ddb86c3b8e87af8cb7e7e41023070cd64e0193f1d0493726124bb4966a4e94debe3789403b8ec2361ca539628bbd641840531632677e9792b793517cfcd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e5ce63a3f4c7a800f2a4796a0b35c126b03b2a18be7cad913891206d282885796d0913c4e667acd5ed30ff9182c9cf10230169cdeeed704ef205d086b8d063804e129c4dd1da80b8f8bd630edabee8ab17bd0941c9a6cb7a4eafe10f7313a6608730302047c435bb500683066023100db90260e05adad3bcdaba3cec09d7092b307fbdce8eb225456cd7e707eb5b9f57fba46da1d69b848be09ec6ba7380f0a023100a1802a041b98db64a51e9ce2d5bd6ccb05800176d14f9fd5193f8705359697d2ee45d46c48f6eeaa0cae338c603c0e6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b6cfc7c23f6812eb789064f06f16d8c51ad01b885c4749e312725782a04ec06c61e8be4a8cda4b4bcc78b55577c0f7d0023100c99df6026716bd593a121b53fd1ef39cab96a8babc8a2c535d8803313a11417f6e9100c069bd81e44b136978741c9b530302047c435bb50067306502305b8de1b00266d27de0194a0f3c52edfc4e0fe9cf31667657a683315cff0301ce5ad36fee13fbf639b28bb8000b4a1ade023100860b8aadcdaed0f9ca0f602a307e2a767ca7bb98b02d6e289c2d6bab4cab2d84069156d2e954d0d948a69c90a20bc0ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd8824533bd8436c1de56d80ca84f979a6e17b23ed0298480a50196761552975a8beb386416338d74ed8b9149ad2ceed023025d3711fb9754b5e6a7ed7b8085afaa6a32a74a71d533ffebdca2694e526f4fb6102a47b3766f9990bf2740cc25b15870302047c435bb5006730650230589012814bf0eee97095645437a198a3023203c6c5d7ca6b92ca767f699e5a64aa1f65d9e4027cd55c41d6bcab4077a1023100d922c6244b7aa9f1914d40fb904ee286e4bf3515f04392a8080e94faa9a59e3f4c3bd2a1137d07d2953189bbec79a0e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7e9634c169e9c97ba162c78fa847c07b655baecc639d6e21584f8aeca0077c6d65d4bd680f1289f7a65c145bee47054023049f6a1d5e9f96b52663ebeb4883545c633af9c0d3aa5ebc30c8ffcd471a9d2ea10f715b14e8728b37a01a8a476e76bee0302047c435bb500673065023072c1dea55472902acde08e9930ea0a1f0821056306dea2dd2fbbfd54890c6035c8a9a00efb142f48959514d9cd483b27023100d927cb5e14607bed7d08f88eeedcb5b3bcfd4250565fac5c4234d4e825ae26291be70bcb9a59c17ba4efa9e2746147ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ebea7c28cf80457a647c324f6638844fa1e56a894155e527e9cbf8c7c930bc6fbc4b4c37a4cfa4f4a4551e4ba5edff4023100ce2c8488ed1b76c0be074e11e7ea078af435e2e3da101abdac3a8e3bb736b0e6bf87a3a787306407b0509b49a817dfaf0302047c435bb500683066023100a72f0e8881cb2da88102b5c772510ceea95a901d963eb9b5fe4f977cf1d5edb871fd0e8b3dc36729a9e7e2402bdec7cd023100f3c044833dea906ad1e8127f5388c3f4c2768b8d824ccf6a6b4c47721acafc24c37b7137ea84cdd8885c12b635a3d3980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c6f3f42ae3e446e59e913630236c2e3fd21320152fc7d1267bc0228f5592b009ce319b080e1cc66ee013d37b65170261023100a494bc0fbebef9006cfeb5cfb550b300a7250307e6b161142dd420eb763968f20cbd482e0a2ff392bdf68b7022e90c450302047c435bb500683066023100c0193dc94873e6cb33e0bd27acb09c4012e34e4a67e1662a253446d9031a8c9ec501f7da9591219f6ebbd4f8696ab29a023100ecb69bfea99c0939a471d558f7872da15cc00e54552272281c77f4b5f6e4e6589d36df497847d564a60063bdf3afef6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302acf94f956c23a3474933a1e45db06cc7934504f20ee4add13e6cfe0666a2b9650d5314074bc13cb5504fec99a665aa5023100b3cdbe06c0e855e8f5aeaf94816e3684f025d7d0c9b642993be98c8b1f4da2e592c50cf7c87e64d8bf1e104f21ca49b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302f18397811d06f3225cb6a2fedc7790c06125b5b5986977be6ea2bb03c31312832233bf1a1c8caa18d886dfff3f4ae6802306adc7df4f70553cff67efd40e6e9d9f0ccdbf06201b9847255eb9d548863406ff43f75df1c71cc6b2dc9ad405a74b0130302047c435bb500673065023012fb59fcb3dac8d64932d12adffffb848083874784a5930cd2af2910b8b3776c23cd8cfde11542dc2544f115874ef00602310089385cb4b5fa771bc4bfbf694d3131d54590d984a1a0cd1bf172bceda5a4edf895b63b773ea9872e865e72437e1e96080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d3550f8be66d9aba090d7d88cfde0441342e6fc523105639ff04873de233581a6c8f461973a1a9c8068ed3555ebc27a023063880dd425cb883121edb84f3d55f8ec3fe99ef09b1df62021293272a60d9371d780738762561ef88a74c5650483b8680302047c435bb50067306502306d75462f8ab55d1cc1c455410228ea3f79e6cff18509a6e8749c5903bd1fb50026f4e70823605f19014b4d2065cd40120231008c8212fd324e3740e41da8c9aa73328caddb63f30c023affdf1ab8f400e671816826787bd24d86f8cf8e5d9dbaa766280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304644d5f749320c54c85a3bda421362b1d5e05b0874ad8e4da81aec7bdb930a4c56187bc19420c39a0b9b4573d0f0ae8a02305043c956e8bd2c9c10d2653e70c0e9186c81b03e48ecb58230885cd3857a387bcaee80c67dbe247fdf7eb130f199be8f0302047c435bb500683066023100fefed7ecd1d4fddaed95537a5b2374cd67cc6a916b07ad9aa951637768a06b35b482562daf354f6e5c57a4c5153c3d81023100cfb26cc9cdc15fa86c58646924777875ddb3c923498ea27d7fcabd128e59100c03f3a5836735c9690bb1a949c86c54390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023041c5132384a71b679abb920a8545c3e45fb1bbe75fdb671049d0114b09bb372f3877fdac67255918449916d1d614ee860230330fcd0dd2fa77204e3b1890f9529caa31c7fd9e59806b7634e49796c3842af5ed4828aaef126d5f1237408e2b84985f0302047c435bb50067306502302a7297c26ea8a9b8cc9c8bd16e53c384b621442a8246fc104ad7c1504352f37448721c005239df0aaaaad3b123cf9ce1023100e806a065fc4c1661bd16f9769463284198cd6470a81f8c8a842bdb0b7067d59b326774f5a521dea1256490545a4116760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310097decbc2b0022c0d514e0c542582f9e1d4decf40ab4f37b96c826672a8e9bc05c3f643bd9a3f4b9991953cf841d73cdf023100eb5d57d2eaff447af252775d7842e5eb67b0ab72682302fd16d1eaa249c9df0507ef87ba355298cd832f51bf68946e150302047c435bb50067306502303b02871057e5336497819c91ec57b781370fbf9ccfa0109486b8a5162e417c3b018e3647bcabf8c5b957e13c5f4324f50231009a32c59610995ab48438b0c2e34cae1401cfd80da029fb4922dbf68d0b29c444671a611261de04fd29c6a3a1f6a79f140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac3528f6ec266e2daeb9d9f17d42d89bb648e158d80c08506525688768fe71e1784d4d5015e902efbae9fd131e2b902a0230705d9bcae8bfbdcb7161acf7941e248fef8681f1a44d8799c7f30f1e0af5452f9a91c6b324e1cba40d44c9fe89d79dd30302047c435bb50066306402307fb6a819c3da8c36fe1429f368939006047ca24bcf447ee595eb170faa186a6ec2f9c2cd8523c7ed53fa0c0f261b466702303d7b2214ae95099981d6d53c4f437f99e33b79bb661a9c1a5033c939b8b2da21df94378f74e060dd84339aa4fc64c4fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303374205a5b76e4b86facaefba504175bbcaa3134a2e81b742b0b8cf90d0f2ae070d1d687058f1c9dfb9ae909e88fd5e30231008454385fe32362fe3b9875de96c39b08e1f9dce4f999a6404218fd0358fc6c07abfebe080732c514161eca2f41f377310302047c435bb500683066023100b128d9182fae04b2cbccd68c09146a37f526c13ab418785fefdecd4736ce2d1b0338e7ae3270823ec3d23000a274640a023100ea815a88fc41725150515af80eb7e12a06e493e09b173dd76b4b244e370d04b476f7a4df0c83d39563f4b7571c9761060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef740568145f61592452dcd7ea12af26ee1d4cdfa21476423f83b2ee66c82a90f152148c66e5e861f0b5c7bf572c80840230266b7ff9cc392d6e279eaed92e88f6a03e099e62d2b6383855b00ef7eb5d871b5342229d85fe28610ad435b313ce75bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301eaf0d3ca19a99e24bdaf66fcc88e89ba4d67a7abf9ea33a4073b605cbd3dc816c81618a0b0478026d6d6498f3e0f534023021cec337f682477865eb209da6e59fa3d26eda9188350d6bb4e176f90ed316793d2c69cbffeda223d0287fdb6aa19f680302047c435bb50066306402307c6ae50eb6b2560344f077a6bf638352275ebfa11addb65906277c7aa3262087d43e1a591341758277577c9d2ce1059f0230524f418f69ac3cbefe55f39dae9e7f5fbd560b1fc0df62fcad692a88480b63211c4ba8a0c6bb935516df0e6a1ad005930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aeeeb145ae3d20db9a917ac7d40d70ef3151afccdf0c864c4e13fc879006a3fd1acf4386c99a205108ea8db0024e341023100f92f9753443327f3f739bedb7e922c699bc85f5b312d274c6c68ad809229a657f1afc322edfcfc8087f17b45b320fc370302047c435bb5006730650231008164f9ed6defe160badca2815ef2a2c8ec8aaf63f75ad2b3f3195f6eaa9bdb312e3a7b546a0eb0cdf085022fc44edf2402307d3cacec78e268c426adadd8cae6a58ab0ffa385f8248c293341523c1bb95c01f8afec2fa7a8f92fe48a195aab2fec0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076f7bdaa86d827e28c992da835ef83c8b2b095dfb84a93b27a69b089fb06e70bc0f6f2af4f2747a6f222fc966f154681023100b8163650fad276cc26390ce5843926e34f1af3474623df0768156530196cb169740b3f6166c0bbbe3aef153b986f53a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1e554d0037efa86b3e8e2756e958b48aab6413cf6dcf49a10f492cbdf23a07e6648d04e8b23311b6ec6c18e86ba13bb0230055034c65c1c0035b1bc840008d11afab831fc3a78d159d3e1f0d24dcfc00b9600940f1e74ae88c653856a489d40c5420302047c435bb50067306502304d2e1d4d04848292e315de5d666fd7dcd60fb287dcf21984928e27e46b982fb0301f1972c675319184031cdeb2cfbdb1023100cc3897b5d81d62bd86f73ab9acbdf295dac9514e311abc350ad6580a84683c1bd3b32a8afed822e0da9b1fc816beb6c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009483096cc93b588b82449cf3bd7f3345ed88467d49d67da47078e661080301736896cb1804cf7072c0512d4479a90cfe023100c8b36db2f96eabf4a2e24f08d3f01cb7eb840e85fb9a049a71dfb71224c48931ab43a173e813622e8b0f46bb78305e4f0302047c435bb500683066023100b8196913cbd820394272ea4354074558c2ca770c91c0f607bc9b1d7de0b25eeb1537d693896f8b0dafac1c3f88665041023100b4aaa592eaf90c3fa87bedab9512d5655fcf53ebfb54fda27ffeac5f8585decd0b933e583676c81769e79cc447e927c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b53d1aa9f60fc8c0adfea2aa5c5156d26004fc25d659ef2bb90dc425c1ee90296946a7e4ad564e309cba4735d82c9d9023100ecb877f73ca9673ea2ef48f798d33aca4babae23b9911293deb2bc44c6d41aa01715c69bbe1a74f7532008bfbf65bf9a0302047c435bb50066306402300312e176df00554a98ff6ea458cf04c9730ef7adc7614560c07142d15f33d85774d4d1cd4d91ff4518ee600cab58b0e802305e49dc129a6a2fc371dd0c862bbb7c37ba70ea38dd1a24b2df633d13d118e9d405cee8c6aa785f1dd6e224795d08a3ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b2bfbe2e10953167e3df6624d35e38168b40398ef4cbf0c10a589f489b048dc9c14d9fd3b7a91c586f89642ecf6f691d023062359c6e2c77fb3b81d15a04a3e9ef95b9dc9185cf643a97c70b4569a6ca442e1c41b49ba26ca6de0ee92603c3004ec20302047c435bb500673065023100e3c6ee1b7b7eb9ce7921ec7694775c74bf3d04bf272fce46805dc16f30412d0e0329ebedc851bb2b2844db1451b00779023033a373169ae5f3285c7a77b4daa62f0fef809f58e52b69ad39289117e2eefcd0917cd2c988b6f5825d46cdbf9410a2db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300f6c8e3e904395a774f7f3e0b9aeca5dadef2efab8df2f3fef6897a1114636ac2172b4ed250439183c95c6158ef4eeb602307ce885e907d041a663730b98591e51a3747888892eb931119b88569a2c063c13f3592f02ad4afd5a7a202c4533cb3f110302047c435bb500683066023100f41d29de1c66f8aacf3672d271c6094facaa1b93f3412bd1f6d2448f27991d309f27bc488529f632d7c631fd973f3013023100e1ad35292ed1a11d9930f383a90b988f85a6dca3607ffb242b4bedee291a350015a5b5f6c386c71a412831c8763260ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030f081d8f8402a2a7207f4603f8ca75168ca195a2f2ffd08b171f8e8a17fe73f77f9752f7956a3da21b43e78fa5fcda7023100efd42bb8d7173844677aaa43b02e352d7de8ad777702defacd19d04fb0781a9d00c94ce539888a497e8586f3416ae6db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301bf4f8c5efe47d6df6da7d8fbac632657db210fbaba3ed88b9e6db860e9b7379f536dee9c44e4e59e4e59d1ff9fd6a6c023047099aa7d3ffc04520b0a6472ba92ef7c6bdbf8aacb8cae6716557c85346ef2f2378f747b9ab5ca2fca35f073ac681e60302047c435bb500673065023100f91d33cd9cf864c59fab7b3e8e74c18fe09ed2bb1b3f9ad8196707befe240eebfb017ecfd4002d440d1d26e0b108641e023063058ec4c8ebfc079d8fa470cbf08153f53169170541961150ea1211764fa5b1578777289de0489ec108e6aa4b32c8600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075068ecb1aca6ed6796ec016c7ebf350897a0c69552028cd9baf54744948fc52d0b875d092180627b53b3a94c2755ddc023100cfc79792fb49bf23d6db3fa20376a0af976acf8c617459da505dc185ac301a50d143da8bcddbb76030a77429ccfe8a4c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d2b246787c127c581cb350888e75eda8cf5764e9d495f038fd82ed72c8aff4eacd1685c995e594a7c71a607bcff0492e023048655dba1a1e91ea6cef4366f0f5161e789e86199f600a3c2f7cecc721bbac3e0816cb36e1ea92fc5e1baa8fba7935730302047c435bb5006730650231009ae6c1f03a401180420e9451483899627c956db202b0df612a81dc1f431ea15535652365d5dd17c134e2973fd63610480230337808c16a9042b48d537c632f159949f1d7ce9d776fc8486b5b5d1ddce9862e73b1ceb373563db26f77cc599bb4735c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100888594ce6c82a1b84dbb5899cae9e5200ef810d1db923d72a87c2c0753fc1a985d5625e490e8e4487046aa52a2d3b8f70231008e8bea5a9d2e0cf5d1ed3beae5b839a89ece9a9b67c85b2c93f089d4adaaf2f8eef4d64469850c075c4ee0d2d04e05430302047c435bb500673065023100b1ec19c6e698c0bfb734a6d07136435fd440e0b86b16735ac605c9d80e2e781831f9794179e1a7b99465f94c7b8c104b02302b863d0ab8fc59ef55b5546ac8562d50028b5462efaa2c595ceb862884290a2aa477d5c98229d19b596024e106505ebb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd6456eafebcecdc8d84d1833c16d8e53408fc2bc85a9b4c36a9c5db3e578dee0be082019259b327fe09c5ae6cfd603f023100d03bbc15dfc2c729dfc7bd6c914188938f508d72a83357baf90916e721bae6592cd7b9f751978b252d8e63096f7524760302047c435bb50067306502300bab861120777c60de157746878029265791e7b1659b616a8b418a59e0827374f2c6394df5fabe0f492dfd5517694b93023100cfcc1f7d10a189bcb1dd33478c94ceb822a923e108026d63c5f73980ae225ce9af094714552599ba204e76ffe816c0590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088718e1c2ae37416d1b55a359cf5d64f5176d9e89c9f8a3ca660215cb8ba598902ed8bc02cd2e2c3dd8d69814da6f75f02300df8c6ed6ab22e05bd365689061c533ac584b566762a038c77e483543776ee11f6d59c6503f923fe76d7c7a2147772760302047c435bb500673065023100c5647625a63652a1080459c93d9e24f3f343a8c712a33e06ce27df9fea0cacd590fe31f310594bdcbd432fc0c8e5406d02306cc50ca97e325ae9769f2a773ae18596b3c41d06b647411ff1715416eff27d8320564d0997200f05f8c8091fe568e8230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e7d0c00767506d18e7e99b638434876ccceae575d30b4a7fc260b75816f069b2c044c236c2d31f2218ad47b40a86a2102300caf91e600bfb802bedbe2018d7eaf6e0a4b1cafe4faf3af093cf88667db27d52d9909c9fe4a64b9038b37d4c01486ef0302047c435bb500683066023100b3b4ba82d883fe5994249d7fa70379fa5f89009f3affa06d4956f997bf6727ac4f5f233d106b7e96c301b11287d106ce02310092e7f4c84ccd8f44eab0e7d4ec1a86416f2ebdb02316d6048948ba38bddf38ef5e7467a9e74f58666dc60a2f7ac6d2c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306f3e6e0c98c43811229deb92d4ae5dba1e6d3505a83972dd77925f4ad4083c77b02ed47c7d9d207608def7c952e520df023014a83e266404e6f2c85e1a0b8bd8a7d43af31843a158b4240132c4618170445ac3658f90adbf47e4d0f61a76f1ce1ba00302047c435bb500673065023100e1033b3a1eb89aae27a5bf1d090f01aeb240bdad4e658d1ee78eba970c242ef0ca687ee8b4719a0bb335290bc477aeca0230435deae4f4cf794f1d4f4c45ebcef820dd3036f60c5be5185a19ecb6840ab5742c4322e51d7f2863fc57017375cae9f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045b6e8efc76d15ebbb93d8d3e13b2f00b5e4bbee83d6cb2af088d858ffa7640db347be7fd42e3b336e441bf4d5f9681602303de62257a7091f42013e8f7cfee7bee8cd7fc5736c024e2ec4b173e175f83fd2daee2d55a54640aab57528563eb1091c0302047c435bb500673065023100c99577817140aef7666133eba80f4e143ad025f202f4a4ff11efb559cda569890cca93f4675693143eac40094d4fa7680230645fc2fa887a25f3c709226a127f7b09c369a7a1db48e58830d34edc3d9db29f970ed3c4a99af5134c59ee2286e6f7e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aa861ed53f072fec7d860415a8c5710cecfb0d03f15bdab55afda65b0cac01b0228e4f262ae470b3c3546d3f96ac9c61023100b277c8f60d4e20ce278127e4504c74a089aee84a3c6a0c4bab19f42638d7a982f483479656ddd7222d3bbe4b1d5935170302047c435bb50066306402306af9a7607fec78fd038e3fd406cc57a3400cb98b6195eb6fa2411a57594ee891449ad3187825ea380f1fc3fec99bbf8a02307e84aa5114938720dcff5175404b66f4b611491870005130ea4dc0aaadf01e94f94b38ffba367014022fb2d055975ca20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008295d40f85875f13535d0c9c82fb4a61bfa4cd257dfa3da183c7eae2c47db7f65fc0ae2ca4b72627771b12c61bfe7eae0230351faaf997474b5fbd6c0db1d0ce09765113f4c0910751c434181c367124052bc40144b6beb61c0a2fed1b970d0639b80302047c435bb500663064023009f107b9dd1595f5c81f99ac0a666f8330d989f162946a796d2441bdd07d796cdad2ec1c74fc62e086e28629d49d727b02303f82c1c49cfd846a0746ee0330c19379c41180654053535c9d7ee971074c99a96452cda6aa31435deaa25fe194510e8a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6fa8178ae3b575e845eda40c3fe84b6b95068a0776524c0823f1d73943fabd7ce84649991ee6d0669afcb673e94ba780231008b490239f650ea2f4e30a343581f48695e2451125172eeea0f209399f475b65108a51df3663b6f07ab326eecac5c748b0302047c435bb500683066023100c482cec080931f2d188c03a8e7178456bdf0edf4af7fe7d5f86aee73fe0212481c42694f61481ae0c73c6f0e4ebe7e98023100e9cbc22633eb522372f7e06042e2e8aaf2a9c9d3d3aaa1c496b4f73a69667ca1e4d19876837991709b58051e16f5e4e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c635aebc6fcb4dd0597ada126a1fa3e3b78df92ed1540dc756eb7eda1bfa1908478393cd892724c47c8f22532bd0ca4f02303dbc27c5df12bd81f897ba53c1da1123e3c61de8ffc0cb385863c46b646c3ea918d9af95a56833b2324d7ab409c6f7130302047c435bb500663064023068d5a52e6bac15f41f9d3aa45a4c45c5183e37a07883999ff59f9dca0b6adb9dd771eefccdbd07828e2b2f834077713802305c2529a8030d39cce5ecab4d9f0006914e402eacce584c0fa9666e57c0f6e5bd1b8e9117bcffe132e79d424c1b7734150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230679952914c1a26f16a8491c355c1d6e8f0dd5e946b5977a04e67a92ebd27374b3f70930a5bcf95188c3dbce8ca4555ee0230746704774356e4c353484f022319ddf19f94e701d6efc170cf268f4e93d0b82f85ad3364fb50335a2ba5db41caad204b0302047c435bb500673065023100fde2608c44fb7bbe62c47652673c0f199fb30a74e1a55bf27c62631d942cbb9581eede99faed16f83293983c5492499302305121d2803a91ee1730aa58e9d92c5b279fc6cd7a148b92a58441d76436987eca0c4ffe29759391aa2245a6dcbbac11590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023058d74809f23b18b5738ba692f1e0d3f43ef52dccb54a6fa640aee3171834ba25906922752869c42d4de83fe4bed192cb02300503e9e909e6879b3225d07e39c3745b83fdf40c3e61b0cf2f21a4297f1d2ffa65b34ece0ce965644bd8e7f916dfc6bb0302047c435bb500683066023100ab5d282239d31e4566d11ee1bda784fda6b5444fec0ebb8fcc1bd33042cfdec233b8aab027d996dbc8cbed90399dfafb02310094f9178f73f67ef3da0b4e74b07ef3e93d131d1562ca19f6c77d3af61c7172ffe09f77a47e2aa71d8fa703a0d61c4b2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f1ff1599141fa79dd8f4bf5cfde7537d13de96f583a8e5bd9727bec9839a7994b3556b1d9d5cbcc957b3b0e437f71ba0231008660da6deca053a4fd285e44e6b69610ef05ab9ae4bd6416c2b22a03a3a54e180a83d21aa472720440d096e1e79b46fe0302047c435bb50066306402300c22bf27c35672252ed679e80a1e3473d0c54632d096f5e729fdb363eada4bb52b925a878856115cf3c6f6d68897704802303225c6940bf220a7c81c5535e7ff1cd40a37151e37917a9b5f42fcea3637e26c6dee61cd098f9a675485f0e5663dde880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b5528b8c6cf7fe5181b1fb503409c56557b2b82e103ee8101bc2c3a815e5e24fc29b29e39798d5628b34f8f89e375af302310098028c5116d06de73dd68edf6f91bfd60d0e1452e06a32257e24aa6014e342ef0f5d240e534a53a9a7acfa991dd1bcf30302047c435bb50067306502304f7cdeb1f48cbf7c9f190e1b61ba401a0ac0f8d8f368667ebdc0a97532791c5ba5c57fdba8ecc45ae73577e8c05650560231009c02a757d241cb4927ea7ac5d91ad39f8343116f5915651483b1bcf47afc56eab3be8c431b8c7d9f623e1a0dd255fbe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a45d92cf3b0c5d99feb5f1f1df09b74d1b942f43bcf22f455974a70f5ee85a835f688a89c6a5b60bf91bf93518c5ee6e023100b4c35e2c1e9133e1958fbfc21b8cb6f0b0eb82b71b966dd0efd549e2fb978bd0c671121fbac6edf71d03323bbf81e36d0302047c435bb50067306502304832e850d9a6ab33c8560d8f5b9be91e95c3eabc2fda329e6cfd438413730e2baf6f179a05aaac69383c92a86ffe911e023100ba5f86320dc27ca00afe14c6422856645908a46b11b7b1f0b4669453ea18e96cd1f4799daa9c170a163dac59aa5b8f3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d4f8db010f338b7c9e136562e37aabeb8c2d7d001412c7d5c8cb11686dec1f8ee858a145df1bd4f51ff6384aff7e417e023100806c87f0b020515e5733184bfd31ceb13720eeb78d6e273943e22056724640fed78314de5980d601c021e32035cd76360302047c435bb500683066023100fe151357ae8f89b957df7ffa18fed2ecb3abb6eb5725081ffc869127d850af785cf249cc20819cedf489e03de328f0f2023100d6fc205c5a7723b9656de4d86f352f84d6ee7650a84479094c17e9637413b77ee3ec8afc11c40fedd6c197b6d4fd53640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304fc90e01771c159c38b17e5547ed9b0a3608a916d9c95470fc266ece74f6dfb0fdf8c4487a142cd76c46ff0831e17693023066707785eb1a1eff28445e7304ef8254c3bc76bf69eedfb110445637a2e5e9c9de6756da84fb49c4c04b98d3d2ae4e900302047c435bb50066306402307d25f750244d26e88829e83632410cd96af38a881e6d8b14989c757cec5fa84211c5acbb8cfbf10324ce8932231d7d71023040a3a4c0317a747c16f744018e025473184cfd39bf5a2b6d1ba3fec5d60b4947e2d71b1ae32a9d2960e44551beff5caa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230205dd442576bd53897dfe3beda8de261a016ede5850e3f0d3402999a10557122a57755327e125c6d432213ade6fdb25d023100fe113da0756d584ba1046aeab3dfef350839fef0488a0e193ea33f0a864f895279615c94efa95779a1459f71bda62de60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230160a2d9ca6c1a99f30f1d72e683dafd2a8f50e2119c27a56bbc5dc65727728b6a46a3220e1e81e12ea4ccbe77d408e24023100b6c96b8b90105a7df8dadc1a4869442c7b16797d02f781e9a496f53ca2a93cc8d7bee1905ed1d25e4c4184a7c08f58940302047c435bb500683066023100d791444e8acb267a0f47a1360fe466aea68b7360c2d0bb22288204128e7c234aba3fdecd0f54b02fcaa713e742f89678023100c08d8fa783618b7b1e052e59a66f3d939f2d9134250f7b37d3dd2061d91f7201a276ccf8972c3910531765eb74aed63e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a68c38dd7abbb3db23c11abe59dfe5f765828f7f6422e47ce69dcb38ed491ba37608ed2ee6059e620b847ea55f4da9b70230545b93289ee432e3130d41fc59cc8ec78e073bacc4668aef3755bff49d6797ec36693a96bdd778e3a22e2f1d2700337d0302047c435bb5006730650230316f08a99c1e55c293c6ff3f5a8d5f5411b89a37fc23fa7c7184a536f3b91c26c7a2d05ac10a331aba851feafe6c746c023100c2cb45953a89be5c4baedf336537577ba171e282743c6fd672fcc905181c15f9fd7614969b8f3fdf302c617f89a8679d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc9bbe89021f3079032d6f8c78e06e9410291d7365b8d318ec11aeaca4cc18837bc4df96355a2816f88c93fba2e45076023100fb23ccc7aeab54fd40454386a1e57e6ce31d1e39cd547b0a606b99c93f0dacfcd80a397e7eab3bea18ff6159b56aef7a0302047c435bb500673065023100d24ba6036e30540c8511f4210e5d433635c4dd2ba1324fa66933e521323ea5939fedccd6496dd0d227194d820a7c270302302f21d43c1aa363aebc37b7512cb522f04a646b9395f1e61ad0d5fc13b9722e2d2fd5d923f8e12d8386ba9f0f149851c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c6051d406ff54009f66f2dbdd4d8659f359c36ba4b744a349801c66ecb1707fc46bb3c05b7086ab02683e5864cebaaf402301f6cd9c526437a161189a9f4a7f89cff5a20128577b52d697159654e87a392d8ce0b8f54856167d082d301acc07ce8ca0302047c435bb50066306402305d9bc69354c02ce1519d465040b30fa803db8ba2f2d9240b7c3f7e04f03727a03f1d044a97cf3cf77dd3c39434c904510230527670d8fffe0bfb8d6e9e542c11baa2c30da270f9628541cf4974a9cb43cfda8bd6731806578cbd9d1433fa0351cc940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a40c4f2876e9d35e9de67b6881e864e1fa560722e1d7a20633f2e592f92fbaf75a4bea6fa0ebd35bb2001eccb98e73d02306ea694334a6c043d82a9f76209f35c3e2d7d5083124729b4a10357fd9db4c43c8b82055e47b8c208e902a7822b4d24150302047c435bb500683066023100ff3f0e4a048cdc77905e65895c892413b71b9ddcbb53096ebff3ce6af3456a7c1a0a73ed7c32c180082932f3847c76fa023100aa4effe869809c75284a107ba7335280a71c5f8c2d4880b9f4ec5658be081d8179099cc190ae560cee604484613754f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304ba485c01b0abfbd4c04757dbd6c3e36181c0b29e1b497179773394c96755797818deccd90bd70f2ba65606a0985efca0230723a7dde0401a4fa364a80954e14060ee562d65084a3e5796d4d4f71803fd934a1ca0653963a3ffcb20f457bb146518c0302047c435bb50067306502307bdff24000a1ae2727b9f633c33562036d5553907e03cd2a836f7ae7487fa04a3ec91ff5b2023b1b8750622cf22edfaa023100f56d06726397528330b2f2c92b71f42675b1694c6149fe2e59d8e3a324e0e6f319ccf14a7866c0453b52e4c7677f240e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f8978e61db6559d93dc721bcdc87f71e9cd8ec11015e9939d34b734cedccc34350c204c7a2322ff85c972686545f41220230573d72e074c617dc70a9d4aa5f7ded7287049cccaa6c6434f91981810d2be9264a6d93c3aef509ebe20e5445e7828de00302047c435bb50067306502307a69cdd3e0dc6f5c787bd4aa26c9629a0b58a594f90a3f624d7008c3bcdc6a31f54398a04f494ef209b848fcbc148754023100f20a0937c04ec07f5c66cbf75908b06cdfbc349435ca3ce3cc730ee86b6f92f0219b4341ccc85d80c3c13b5d8df64dad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307567ad28aacac0867794301c8584b2b17c35df37919ddaf4aa253bacfa55659b53b3b5055e6f60d0f184ab910b40c244023029970ac8415c03d1357a2a1df584ca5b44f80cd0f5bbd20a9352c283d73c86bbd10fd976c339371841ba76eb45a60ea20302047c435bb50066306402307a15ccb10b22c82e6f721805e788c04dabc9c41b656d2a914b90c2c368fa09df2113273f2f9eb51434c2df322686643b023013796e8c8340df8fd19bd0e4b5112ce6212199fbf9b3b410e23d865e3dcc1dcb7d00bb43fa34d31bcd890e6a308b21a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305fbbe576abeaf4c7f8099a7b0fa8136b9e14964a07f9a600e015b18557dc2b3d3995a676bff3719cc89c0cee1a028a2a02302cde4e7533283ff520b2fe2a13b8f1e139ea22fb0f719b0c95277246ec59de94012e4b3108b45e37d66b4d17f5be4fd20302047c435bb5006830660231009dd3441ed89b3c7c39e0af2c5f51401235a2ddb9ad9f5ee8c3cc017253805d6e2cfbecf8676ab19ee8e2c6411702c31102310097b73d6419975198d1335b4af52984a3a42670b03725c9437a92a9c0299a0b12e01c8cee1495cba5b7eecbf6525fa1fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100903f717061b02ad80da4fb8262049869e40eec144eabe2eaae285e0041268710ec81d87a39b2259775b9c4f9b2abad05023100829e7d38efe16cb568870f02f5df3352a6822321465516a04d45adbbdeb94ae9f991dde14c9451876384c72ac9085dc80302047c435bb50066306402305cd5430f6cbf92c7ec0e89a9014c2d534e8d2f904dec3e9a981f738c5c09ab23f91ced294aa4133e9b00a7c7376bd1c5023058fba0624152b2da69bffcb6a29bb735e0fa9902fa0f124c4393683084d6b2a974c69ff8c3cc9d5bf24b8e628d79342f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc44e30951af0386f698b3960aad54fbb41a919ead845018326b524c6640c6d9aa444ecbfe069c04097176f390eadcd70230289c5003cee76339052565f74fceeb88788cbf0284df122c8c9e22f9f3cab942e8fe5d2115a5e3fbdbc959f34a3c5b4c0302047c435bb500673065023012dcf19626279795a363dbeec265efcd813f581818a0705bf6894c9da120513823bee008dce1a2e7a53979aca6b32509023100f29eab214c326d0fa73cb7f5859e138bf58b8e9ad16f9aeb798a07df3be1cb904abee1cc0304f62b7e74c2315df526660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e4936d2e6f3fffb811b2f1a4865981860d246f25fe8f01fcc9fac2b7caa2c50a8a27ebbe24834b7d4deaf799d6947d7902302a6e3a8fb2c939f7a1671b449ce066a357a82b68dee425048902a97c38c71dd82664d3746b8f19295438c28fc43ccf550302047c435bb50068306602310096c54fd586fa9f460ebeb7b0cddc951eb446977289762dbddfa96072cdd433c1b412232fe4c121626101aa09e8c828e7023100b9f692af38433a4127b21671926a29f64b29ca7b818eaa071fc9a6a78b625463018826d8d5b24ab5b9581b1d9920633e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023046e904bfce72ee4084c8b7d5d936f8ec1f29e42470a3b2656718e9de525f5fc06030fac7061cc21544d1a9bd4db2fc760230026fd36188a4c3a21af908ba7632c519a39fc822ba53eff8f9326cbef4ac228773485a783d2d92a409f28892e17c3da60302047c435bb500673065023100ab12bbe5b333599089d776d4dfe20ec5fa96e4cdd49028541536f087fb31d6e6a3e3b5b950ec99645abdfe94f085b6b3023025a500ec0a8190b061c2aa8120f1ee5ff39da0004e7e767597ad74a1b7ab7ab3e91737a139c6a4cfab7df4b0c723c0ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd252aa4b00c6edb0c9924a84b31c3d08d86932668bc88c026c36d60140a18d1f780b577702b64afab73f984394250ba023100d10b0059be04c78126f7e79f7567b4c0b1ea1f5fb4fd974fce13b15144ba8006df2b8a9e750401934d58a5a1229ed37e0302047c435bb50068306602310094d25d051aed838de90c8f7a76a6325143ef80ab20ae9107ab24b83aff9eb276b5a6012403ac1a2b0bf05fba58162fa20231008834a15492eb170fce2cd84a1a273c34db5468e7625f9e659908aea9b5f9f2b04224a6e58c23cd731b3d9f276e3364ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307c39453a53802ce3a5ddadd9e41338c658c123175f91abf5be76d0cb7bab926cd74c8acd133251415281b448744b17ff023100dcfced214d0e2690a97d65f21b4e36ce640538cc3af04a4a15e37506258a1d14c50f8a4697cb232a2286ec28671694f60302047c435bb50066306402306b3defb166724658bcf0a273aeb4f6a596afbf93bdcd35d16f1c446da0d43ead9f33fe69d14497663bb488d6010671880230052434bdef5eabeffc992a609a0fc30286d580508c5d4b35e9266f0f1424e6b96a6c4a9c5d7645d1cf587788765343b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dee9ec041c1cdb95fc8cb0e8009a4ac14b92c1f9ebdb76adc775f58f34d8215979ed9ea0f8ecef0049b6ba28b1d1b57023039d2bf0267902c3b636db2e5ed0269cd8125d86f39141c0bb139115005fafa3edb6871358ed8090bd812d2693bae4b270302047c435bb500683066023100d9ea3d4923915ae0b00bac5d24e3e272984b8438d06d17c149b026688ac13736403e6906f099a237399e1186c792fad1023100bf60be155266b54ef72a783e7620bcbf984ac7638ed8ee5e63afc261758278fb7be9424e081b187d52d36eaefab7d15a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022496f3f6ec5b40ff8826d43457215b9256cc3fc806c1d6b4c8ff8f6305418b9637e24edc1e61b08ad259535f250e6850230744b461ccc4f0e3dfc5b52ee63a947e610e1d6511e1ef7484e0a941141f95f0a35c8e3db66ea0945d546ed9b6339d8c90302047c435bb5006830660231008a9b0bfcf2cf01092073d8b103e66d30d2e7d95701817d9470b15f79a4824c1343f5a246966dec8771c4c2e9f349ffe9023100ce57fb508abe37fda7c07a364b40ce7d37db5526529a7e27b89afd9930b41d39531832dc4b64d815cfe0460a773487140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230273efc936d740cc8bbf84a6ef1cf4b47de44ee63ccadeef54a3f0c3187d1d4164c8c5a2c8238f306d573e482f91b0e60023100b660ff9b728c7fac6d5ec80d15be20bd4fb633eba02e1d772f5739c5f70e07c11105cb41ba232a9a9586f1be191ee8fc0302047c435bb500673065023100852eba440fdbd367f6532fd6bb9e68b9ddb8f61c99277c3d729253adf2408d53b241e1e70d3dec72905fccb28b57e73402303b4603db1ccfe6c265ce31bb3a8ab5cc764ba79c65ad324a452dbd7a66ef41f4ffbfa2f23494d62cbc5bc5de3d4593470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dba140ef8eca85a1d63329bf79d0054311390fcccdbe9229068a68c4bbe82b1fac9d9128b720b1ec37619d8d95f3a4d10230355b82df052de9e7658de5f4a092ae4c3037b6836ccdb8dec86f4d239b8edac55dec861f7dc93a1d2fc7c0aae17be1040302047c435bb50065306302301be3a1fa4d77a40017557fc31fa9017136edff942fe36b069991380b6cfb743a61411bf1f93792a61fc6cf05b185e618022f60dca3aef048b905d85e292d20308a85ee9ed724211eebe7f07ba73d1593b76d91b5f840f88ff0bce83733a91144770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085efc6f0c2c3898c894a5fb4f119467c379a1141bda741b1f8dda1c708dbdd194e9cfab06e031d7ae242e8e76f95211802302da2381a51b4d86229336a3a5320b12c6bfb76140f5f11866946961b4a026174b928a1bdae2b6e377cd39ec0d3e662490302047c435bb500683066023100a8c73147f658122d196a14a72746de27f85e1745469f9ee91a19c0b32dbc186f45a3f712304ec90b7ba28a53ae1e614a0231009e577fb0599d7419dd55ea916f382734ccabe2c8b03534b8cc31ce3d04e1bd50417c6372c87b1d107e1b273f54023f780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6bd1aa9cf419dd3be51109024257b719966fd5c993903a35acabf9be8b178ab1d379f6680a115dec662bfde0334bdeb023069d17a027853fb00a8df9d33a775321385396b6ad215bf645a723a627040466c8279cce05bd31eeb0afd74ceb6f29cb30302047c435bb500673065023100db8328843fb20aa3cb3e8ff711b6b52d2be1819e005a6208da63c832dcb2e64ee4742bd68f81a057369a97d6d534829102306f07824f08ba358f44bfc391a4c20338b14c7c7156ceaf398335f2f5abc2bf14642cde727be2fcd557c7060283aee61c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230468dc905719bc5bba99b3edb5b9131fc245ec11555a5127327ad84b6f6b19dcdcd1db18238c0b0515a80d5e17ce94438023020e4bb5b54328d39a053352e21140b427d624ef405a779a25c827e038eac331020a5b9c454ed7708358f43fb668dcfc70302047c435bb50067306502306bb2641b69acec797e029cdd8edd7d7901b492ace9995b0c53a74a304b319ebd43bcead70a01933b07068087f7f1e5c1023100ca745738df2827d008ef5c3539140fac47a9128da979e842028b8952156a5e0cc6d608f96e617d75f8442684f207e8160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d2f65cbce76272eabcd2e4a46734ccaa25067449418653f16af883a2b284f03074dd73d1c09b30c8141539eb2adf7f7023100aa2386952af337713abe5ee964810fc97d3d1658aef274f30c86f86c598e79a59a598eb325bcdc551560fe95526dfdf00302047c435bb50067306502301b346c8ed0a2a483a855e24b384756a8f0c01b1c2e553b5a9a250859afc45c0d4471591063658b959ac95e8275ba2850023100e36ab0b03ae09a5c1c6e1b628586c1ca1b33e732420a2ace698aae328426ddab49899b8e7b3dd2aa6310c37d07c8f8c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008777f439e89a65430fd2b8b80333df005190af950b669cd3893fda038e25c691851aaf989a7fd6b4138a55a8204de77e023100c1a93d3182b5c4ce111f5a21ba9ee0cb2b96abab194c611bcd2e3510d91866c6e7cb7543a03d5d0231a0b79977185fbd0302047c435bb500683066023100b9b99b31eb325a378330ded94be0d58dae29864a7ec66f781fe3f4c23166b1487f852e00855d0ccab2c41ef1f3f6b8a3023100c4f5eddeee718290998f519fa800c4875a2243624c8d0a9add17cf907ec656cd4361ec20ba7ba03f3b9138068e0c5a5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008419d43501fdc1f9c8dba2d8136795e5e7c4c1b0af9032f56e9fcc369f292120f89663a9474bb12f2e4df3064d8c3d9d023100e53c664b2b7e32495961bca6938cbcadf622112ce94a34cfc54c39b02ec0ae07ff1fb8b2d265220095e39eb79919d1af0302047c435bb500683066023100c31b66f68fedbe619fae96dfe24f9ac37a78a3f065c3c4c53e6689c8e11dbc6c62c42bcd276490322fdfb3bbfad0c0ea023100df225d2ef55b01203890453cd1cd6bf0d485c42846e7ee2d2cc3ffbbeb314f204d0fe4af1dbc5e93702d5f30f0fd7aa80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c66b7e6cf5d7a5ba62ba38bd9ba59b86d2ad21b9b186dc5291291aa0516024d275e749815a6d22bd04e9a620702127d02310088a5622b5a442bf40eb1fa3aca6dc7ed6f7f1177aa6ca53d40977a86b93a772928fb68befbd8386e29c7fff26e0c92b50302047c435bb500673065023100b2abd3eea4b395385522bdef1227385eac9cb976ae4fe4b32d8219d36bed174a1ac7597571e7677e678c509454107dc70230443abfd3ef360e14dfdae2fc9db44d6e8973abb0ccf4b7461479c9fe34013a7ad91721e305a6bbf4c299400cf107333b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305308e027549815bc5bcb15dcb76bead0c52a5054ddaf57ace0adf7a0c061bdcdb5f6f81adb45872b72f3966bee24c40102303fa50b06d5d32ca4bbc11b2f92bea290148160659f21a6ef98ddfeb2447712a6fff7167b393261b4abf57293fdc513160302047c435bb500683066023100a64338533bf87e7fb68ae40284389f10637c562170a1ab109a39cc044cc30263bc927a03435e9927a9ae14acdde01edf023100cd07beb46e1249b49fc2369e5da18da732851d57475233f88e96b33c868643aa8d31b52f8f95acfeb8ea90059bf47e930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c9a330393d15ffce4d68c510b752adc2b9bc7feea20d3e854ce5583e1778fe334eeafbb69321f45348440b37ef373f1023020f761273491ff2fdf2b156787e2310e500afd3907fa72801e3b4fbaef0e0450d9335b727325604d493e894c5d25fa490302047c435bb500673065023100b0c7cb90e42a66a3799a5ae2f41cfeba68e69bb33c306815c994ebbbf88a665bd3c5abc2f7eea8142b1399e969c54ac702303a7390d7e1b5df9025bd4b74b304b45a3069cd7f0f2f2e3d44e9c7a81615e28ae56c215dcaf064d75a3f59c40b2634b00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303537552e6ac3ba373fb899a8d800088414b6d9a81f0ad17d3118558d0fc7c5064357c6df30053291ac2dc5864159eac2023100cab161ede1dd0a664f559adcf614d15c32058f58dbadc7d5212ff770e12191bc9c1c38118250ea7b4aac18a87b418acd0302047c435bb50067306502304100d4dcf31badcfd08baf68095c0db40c5f1c6eaaf5eff8d2f6eab9c6fbdd5a5a302e11229d0db23b1ac6e38da48d2b02310082f77cc194a3b7596bf3190ce4080332abc0956d9cb900a4c7df8a8fd09805304fd2a4056623323a89e1f486d1bd69990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cacd44d15e20a7a00ef8f3099381212daa248ee8669c58a362f9070bf1076ccca8165896dbe09a25b2c0b0af722ad4402300cc6547a6d08fa42dd4bdffb3c3a25b89836dde8f58b0f790ee2a004171c06b135330e3d534e3adcb6dd88fd2fb8cd9f0302047c435bb500683066023100b3cbf45f6ef00fda8ee17569e8ddbbb94be7e7c08de419d98617825cf6941003cdb5abd8f625868fc4debc181d3eb4b8023100e3186141e7a4c1bc2d28a60c6df9a1752726b8961d97797558f4aa5704bd0d62aac15d25593298ff69eeb192348a12300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e784b6e61a227703edb904a21887e762d4b4fd4e57a2fa51faaf0a675ba1b69b659864f8a547a36d822dcc3f8c751b6023100aa1add7434466c0aa2cf22e714db130d4ae44da3df8d40c4d5fb99fa27be0e7a5db1af999ee3da3a29ac7e81b3343c740302047c435bb50066306402307a310d1b38003929334f06ae2b3fcae35e14ec9c6a426bd43c5dd693d467e61995ac41128e09fb673e53fc99a342a778023012bbe9d2737c66bc77b6b037eff95450befbcd18869ad5db975c16e8be849a39828291fc032a862014c11f1be02901d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b9c98d601e9e788790e702fb484c97434c03023178346d1ad19a6df4d759701d0bde2da86a8891cc073c568caabd0e5202310086e58222bf2c56397c022a81c2697f1216415d4b31f88e0996fa9bdaf15e88d22592d228d6b84555cd7ec2e25cd8df9d0302047c435bb500673065023100b570076a76731af788cf31e48e42d6d942a17ac8a6fcef678683d065e77edf8c352f498ef2ad27992ac6b7b70feae310023020b00ec14b4f1016c20795cb0482a422c7e7b3a8465e265041a46b42abaef6c3d1c8e9eebeed404b54c8aa9b5181c3130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a81ef650c73af897e2bcc84853bdc0c5a79a16b170ca312cb14f5dc4c07ed62edc6214b78c4bebbd6591fff5187056d023028e577e92ec3a79c6c0f57beb319193037f35e867a23c70a6049c8f663f3659c29d41e948530dabfaeb82ae54a0ba1cd0302047c435bb50067306502300434a00204a0e74fdf659078b1ea15b66737eed47de9be01b5b304f2f9fb0b2232fb6644a9ed9dbab45bac8ff0367914023100b6cea5d65e7c434e11a420007a45ecc3035514a2a0776be66761ee3a9169dfa8a42236f7f27f7e42e90af17a45dd096e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300764c1cf58c862a799a5e5cbf0ea54da8553c68b3afcec2d895f653bf7023926a723770c024dff52b62a456b1f234b9502300fa7d4bb4c1d7ad681d942bb9a09cc825dca229f6c86f365102fbf0c159ea62acf117c47dd91c00bcbb797cdb7f22e800302047c435bb50067306502300eb6db5b17ddd3e30961e2a8bcfeda4d02a9206107ee99a9088fe7f84086b7ce4fe3be18b332683aac36bf03d07cc67b023100b8effdc43fd06908e2ea8adbddc945f375aabdc66f338b1da1a34a7cf894ffbabd8f72489a455589fdc1142a17e95aed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100920557e41bafb4ab5c6fc9f66c9a2ff2988467dac247d01e5fe9a8c59a116cf86022433c9e37f863e5e40069f775285e023100f47c9b01f7d90e8028ff9071ed7ca905008dc4e0e2c54aa714a5ee2445c0c7cd282e8880c05ddfc75f9a2112224df8a70302047c435bb5006830660231009278b0290117fb11e71cedbfa4b2510ff73036cfa56755af48f9d7690ae8e2e0fbb243087e810b841e46ab28a94d8faa023100c664f6646cc067d3a0350c4e5d7db881324872eb0528a709a9e4ed257c3ed8dd419d8c9a89e67c80c6d3c78c2cd721400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307a50aa921b792b7eb0f99dc43cbcaf36db8a4a0e251e7d4a0ac35590af73f8834efed765652debd7d758a0e258f8c2e2023100c4ae73280345a0a810d63c594d4ac069f6e1aa048c254819472bee5418cafa6e789cdaf42af764766d0f5f92bab0736f0302047c435bb5006730650231009c42c197272440eb0a6521b3a74500d08e09c311dfc1546b543278a2f4c880e0e0051581fccbf6bdba41a9c20631906202307e7ba4e011194ff201a669fdfc1ed3769012cc4b72abb519133880b3812d1eb1af13044c066086bf791ca6b7884a96cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009708f18a4e5592e4190a38911f2537e98fc30e466da91c967cd84974ec645b03b0f17c810201b9508ed909b73811da63023100ab3d8615582dce0e1a367d04c35147f7b670d3ef360b70302572420ee0caaf9a93da7f22a06bac30505fdca48f227e190302047c435bb50067306502300d1373f5fd6e5aade06097d5cea0ea4140d8d2d6aa57dd293d78ed6f4b4d8e23578404fade45c498ddcc325a7f13069f023100f006cef07b2fa6228bb2481f67c0d8c3a86fad332be542a3ce5e1b92a51b12c4d6ed62c2427482760e6882486332dee30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230396bdd81dd2b7229ae91a66473fcb1e678c33f218ca0e8ffd4143c84498f1641bd4576320cdd4c8c49340aff84d9857f023100aafbb7cf8551db4f15ecf7e7b445c350755d9fbc2eb6ca26bc545bd7ca63b0c1410dddedbfb9d16d1eebec0568da43ef0302047c435bb500673065023060fc86e12290dd7e8e2612789a9836ff426473b8919efc76334748bbcf2937c5b07109c0ffe4cfc37499229863ca203f023100b4e7cc142ea241f5469456b05b2f172171c6412f7a6bb8bc35e4348446ba32fc94bbef20f3bea6183a300a54d2b782040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100883d935d6a193080504ee097da860a22a9c007138cc01d0a0ef092db86fdf4f9f6984bcd9c2a25540a255d6c623e3864023100da0e7b0a3fd8b7f4125c14183074cad80a7bd371eb0f7099ef4055a12e8e4b5c14e98f0f4cdd44dc0b0d3968ca8124b90302047c435bb50066306402304e07e448e4f1a4ac7e6fa4a94cb09ae409a4c41dc19ce99302f5c7bd2a181d03ee278ed5c6b9061eb979f8dc44ce8dea02301e63ed8c9fa915cf010a3ca69c567582ae9892a052f0e4615649fbcc27dd913cf51a54f41ba7520ec71b9e70fda32cfc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d60434f41a730c3dc3cd38b0966fd617f5d5dfb7da8f4c73865e6b0f1d0649daf12094a4f2c805dc55bb144b15b3b739023100c61c279a15a99473dd050a1652483eefe0fc8e3101945ae673ecb326d39fb3d0d29a33d8301a3df9eb90b69cbaa7fc4a0302047c435bb5006730650230070cd65453e0d6b249bdcf26b447321471bc11f24981d0d967f62a5e593eda91aa99b01abc12fafeeb1ab848aa58763902310088e3491fb6a368d37ce78e65f982e22ce293926e5204b981c4fb9192c10520a0af73f6205e09ee7e52dc9a02292d19a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023041b0933c49fb66b9f7f2b0af04dabc1e29377676fd2a0894754b9a5d2abe561ab53ed850b7e9423d9e881f4a789f3ef60230778461d27513177da03172d0252a0a85838ec0685563486051320a8343d4455c6fbe843d8d8062f8fbb3f8de7601ddda0302047c435bb50066306402301b60ecdb565ed3c10f5b5e6f141013e773e1c678d2c183e81e43b16023e9556800df98bcb97eb330853572392b96ea2e023000eadad601905beab3418926b1c721881ab19c7bd27f91404c9d43a338c9d122eba71dc810f3bee79c2b515c946ceeb80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060fb9e7e6cc4972d458a4e44d0b1444b587d518add38b3b57d43879dc0a54952f5fbe17fefd547825085bb4cccd35a650230352cd449ee0fb5dd50e661f8524dbf2ed2ac6b7e5b9c66c7e4db05de875dca2f1c85cc59f57cd266bab40cdcda9e5d490302047c435bb500673065023028c7aa5a969ac81b84ac9a028d94c08ec476bdf645be932edb44944d2bd6fe3a2932776cbe81d8bc6467408fd0bc8bde0231008b580fb4d0affd1ebed1e4c371c185989d8689eeb447b2fe557d40bf649641080c72118852bc25c8ea954eec014287420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306859c9930ad75275d36fb08ae2df4e6d5703adae52515126931586fbe4b08ab5783789981bec94b93ca048c85d5c0d55023100cd16b602c51a2d01e7ff0dbf853c97a96aa4e1f6acec3d09f5e63e81e15c2cb7b19818e5d8298475b6a51ccca4af45780302047c435bb500673065023100f23662155ba8a492130326266f3ed90b1aa2e68e9ab318643c988b456fb8d11f95ed608d44d5e813345ba4bf0a05038c02306d0436b8743bade2921f857f06b620aab7da9cf8ff2e3dc019a36ebc390ead783db8566f58857ff824add3a302ee2e820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300dfe48ea4ad9f2771624e1b21e919dd87ef52400696afe252743b3b657300c4ae027c2805ddbdf7103c1ae8f056d0b0202310085abd908e9c041e9b693904fa83b27b78050c5240cdf88c1e7a3610f45b526b46fd3ddb93c6867e8b09261454936876f0302047c435bb500683066023100862b50486011b16f8db415ba6d9e5ffbb4309610fdb13128b11f10c3056f54ef0a6701c791097630dd70ea727fb3f5850231009ad65bd35d8b81e31978e6ea62a45fa689ce7129410823dbdea2cf7f18a7803ab6984b2421b39e7b97d1043c26135c460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ce543f4fbb21a1f411eb648335cc4c79a03b30a1b11d5b7a15823ddb8106e701be0b2035fabc877a4603b05f334a89f02300a2aa3b2bb0b3d9b65c907b59e25cf9da34b3d56736a27634e60f1c685eece7a4b1d4e935f51ba3f1d0250a66578a3b10302047c435bb500673065023100bf0daedc7b1f3da780be4fe75cbcfc0db7877f6b3c2aa484bbb27320e33fc55ca33f4251c3e1c3b5ffe6ca9d44fc965e02306a263faa89a650c3c90274f1e0a19959b165f01dd0e374553239575d366aafeff6be1d077c5019d88c4e6dc2301bad610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306eb0e86c88130c8aafbb29ca741025410fa910816a2220d35efb3b5b3434477b35cdf01c1bf3a7092670c0bca9ac2b9a023077c38b630e4616f86a23276eb8955cf35a46cec212452b4988a8d4dc71ce20aed9fe773c43407cc368446ac1a585d5660302047c435bb500673065023100ed1200ecc58afdfddec21639444965ecb6e292cf4a92b8dadf2820198760c72f43c7e953b65989d8af3559dce7f584a302302133ac19c465e334c8d322ce5c10b8cdc575b1f11ebb054c64d8adf37f75cf26a3dcfa465a573a5dd3e9d2494082eb830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300943b8f61696618644483e7b3c2bf4f3108cadf99b7d07ff2085a767bd82ca6c284ea8651e341f42b63e8c957bbfd7cf023100ee654917dfdcbc372ca7ba8a228e691c7de888753d15c4c323ef31591c19abb7e023ce3b1328dcd668feb4f44ebb4f240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091fc0ace8c1d8f5a80f2f1cc63a172dcaeb1fa9f23dd63b93561dc2a2cb7dd74de3cd8250f74afa035d7112d6b7afc6a02302f484a061ca7bd043b113b9d383451315fca93d788d7d6684c1f06cc160948c168a16f8337c135c278543b2b7d3b94010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230490f6b715cc71d7e9c07e796e1ee4e192d2cdbaf0a2ff85d097fdb27909c401644032da9938cc417607f3d3df1226a3b023100c762bb5e1cb6a06b07db98a573e14f1ce6d20315fb86b8f64cae86c8fd3bccce9cdf233f49d7ee47f1eccbb55177c6100302047c435bb500673065023100d3f91c4197d96047f4026520e7a3978037dc1bbcdbb44df6d0ce3ab00a907ae6f7da6d848c43e88f4c71f954666e76280230692149dbdb67bf5fea5e2145ee4557d841c633246d5456dfb38f7b07d14c0ac5b1952e8983912b9e6c709f7c2f4d88850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075508e5775af5450495369eaa96b66f839f8f3795f90d95b9a77e5744be8a52f1281947533fbc0eddc59a1b8ade7b4fd02310090dfb1c0369555fbe5b1a8a5cc53aa85897ca1d824856a98de181000d51a2c35a1eb2051cbc39e61df4f24d4645ba5a40302047c435bb50067306502304dc4ef2b0dc3090a243dcd19cb66a1d8e4c8c2b3459ae195af3eebb2d4f4754d660080dd956e74bb4ed08e2a56f592e7023100f975150a6b92c0841df971976e76b9adc224eca56e8ed6f6e0512330fcd701f8d4bbd79fbbe302f81f10187417fae9ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b049438c9a895d4129a6dbc970c57009ce44fd4fbc9966b82db581d44f3c25c29becaf52ae8b67589b3ac4569b24d5b023100802514ed9262502c09c6eb4147eff24e87fa80d4eec5479df7d82c2cc31678747435f2c03e66560dc36b7a72548d24f40302047c435bb500683066023100db0f86501ddf2e233bb6abcfde0a1db2b6677d13ec87c1e32bcaf42ecfd67e2dbdc8571ccfff569e88811590d33a6ff60231009360aab39872b7ab6b6bf0edbfe3f6d438b96ce8621f3a30ff7e30cfd9a71af76918a03f225a81d2305d13e11798460f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d1da74dcfba60e0ad10cc39fc6ddf836d1b6806d6eb2318d5338cd6819862071c7cd80d828be16810cce6ea501f3bc3023051a4f537224d3096afcd4eed94f4b0028e13cdc0954bc8117d62fc1085c840302ce79e196ff93be19ea4cc9244a206f60302047c435bb50067306502302f56ad38f0ca752474ef8c4667f850537bcf2c543bbb1ccc9c44a39ed6b3a2693a2aecc4fac994e24e6a06f1a19cf27502310088f0e0f17c3cf364540872fb2a18040855dca9d6a76749da02ba466c1b40e378c2477c67f2b568e98e233b46cdd2315c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b7088af6c7df7dfe3a86403c613366f3e3d5d789c05ca809e867c69e68dad5e3cb1bb2ac3a834b20c1e1884fa5ec9fb023100efd5d7808a41f127aa152fd5125447fd76cfd523917b275bc130ad07d272947c725d227c5ef32ddbe693e7069f19224f0302047c435bb50067306502301149e016493eae35ce50d7b4a59bb4b7c3e41bd7baf8ac8da8041d90888e123b42378b298c03839cf7ca9b3660ee4667023100b993fb16295468bc8bcd5fe0702ce16caa91434e7ba4d96fd7199ea5ab193876e58388dc4731aed01517a14c89b1d72b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ba6f2b912d12ccc2e343a231bdb1919ec586a40985c7a66870539458bcd77509269550ec987ffea153087972de4d5b3023061eb9d0e69e03d233cdc957c1220998723208799f930736b5d6206c116696d410c6b183ed86410c5becf64cb398078b30302047c435bb500673065023011ce34bd56d66447033cb09a574c577d146b11813d436140002edcce99e3d49deecffb13daf7cebb74c5572091b61778023100bf61d9d8b55bc9bf1c5cc3723a07d6c347ad3bcecc92119bf4238a7848ef5c594b0de016fc69162b39a07d6c938892760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023024b462af0736e6ea1d02bff9e819107f1ce1641dea4f97c09d763f98e2218984f304335d49e796549982d32add2dce0902300162c878f2a45df7870ac9d6ca79b7a847087386362d6d555a915c16b50ee40149488b300bb239139e96db8ddebb88250302047c435bb5006630640230770bbe66c83ea4aa707c86209918805afc80b073f43ab8fcac3c9d0f6b3282fdcf7dcc7e6ddad7f8fe329c0b7f5d0b5a02306996cc9b5768199f1c21297a7f507bf9544cdf08e5d4831503f10a364428b893316d8b28190a1489ca14cfb1aaa7e9bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230341091b8f5622c33f58ac27f1208f01c8148b679d3e6f21f02dd91c97ca3ff4d99e4f580504a491157d39f3bb4b5dbe102307b812dda232934395431eb9b187b616e4f7c1fe270d0d62fc3d6e5902fcbabbf15218ef402cecb5083f1a75bf12a11d10302047c435bb500673065023019e36b3744c5d864e050f9c377b046898412745c33486cc46db30862deb8b17b70e077a804def09f3674a5ab9b12919d023100cb5622ad21b38bd013cc63a9f9f7f211e294c073ec0d3a640d1fa74ecadc4faa02f16680ea6b444d175503d2e6a30ae30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b36bba347c62418560200dfd4a7b2e29e252a3dc4718fe7427da698aecf03faa0734667dc367e06c52babfbeed5433ff023100d37bfedc63fbde93dbada5d39d0eb2dba2972915cbff44843a685ae943a7c3dee85261ffab0c9bf9384c3e23350ea9ba0302047c435bb500663064023003bd9402c1e66ec5530476e8b9d00d66cd328ff14a6ecfb93a9e9008724e29745c50d2868299df923ef4279c3d7db580023021ffc47c16cd665d1b51f049c0ef8264d4d8b2cb1645090b7bd0d600f7fd22ca2ad5d57ae823de65db4fa35c29bd63450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f928c1d5b862902336c15ae29d74d05c6a9b9c9e29ab96bbaeae142a0eb9844c1104cb9dea78e39fab8e42a3cd15d45802303f13694d5c4b4b2608ca9c5e62409285d716fdf7f360658ff98ca99ca9505842811da8e36a1309c7c2e5b7a93720e1a70302047c435bb500663064023053d0271cfd644d8f495ab95c12e0b02ef974b19acf43cf1d0aecf6e744a8acf856f88ad6e26ff65a662cfd3e1c63a38902305ec079a054c99436bfcf8bd8b8ad937870098882f86d67ae3682de5c9f4865a514fc67a97a94f232d8562e937617809b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023052933754d310a0f5516ab57e043b461ca31e48a562d475aac792c4d1e82a7813e9162c7f8092ca5af8208eadf09ada2f0230777f9865fdb1de78025a7f8b5a867681cd339a92db0a872734fc2195a85ad4655694430990a4ee6820c577d8df17e9bb0302047c435bb500673065023100eaee08dd06b4bb7ec04c0a8c521ac93df3d5529fd325bff8d98a58edb3b9dd27e26ff26065d8adc037364e12e93fcfbb0230197a04704e4af478c969c998eb1054f6f9a24579eea69e4475fbc315c4290a1a5b894d0943eac9123d4aaa4e14ecb46b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b32b5060c34e7cc05bbb8898a2bb7441f46033b91af01fbc2104ed489d0053637e141bb421fff4b068730ef85f29c7e602301ab92c35f9aee0e418718aabbe8e30fadac229d271d05062e009ee0029ffe026d86a79954b5b9c687a5149c4a75730740302047c435bb500683066023100bd1913821ec54fb8dac78420e68e300302f5baa8c74f4cc89e2e0ec92965febc2a392536ee7a6a62b2a7d0055e201dac023100dea54667388a139bd8a42cb31e3ff5e130cde76d35e83e86321f5736ba6976b92101e3d1de36ef731ff5cf63657609340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f3e3bd0696ee845c69bd454e48f98a32b4b5cd499926c00cdda724bc4bb4cf4ceffcc12fdf08cafc28aa320f6f6ed01023100d1ec9c77395a4fae0b3b4ba388b25e194ed1238ea860370e44bbcf0467fec6177e27a60bb37172410695e4fbd1e4d1b50302047c435bb500683066023100c0cdc90da019301e9f29eaff457ca9757726645533256594131a8a50c128b869f94ccbf97c4677aba4c8d40d31f8cd14023100b101ba1a1e8690cd2d5a5d6948b74572e7ddb2cb7441881b47c6b2cbd65c596751fbdcd7086e9370a07ef8bf2d8cb9370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303893f82096efe474d82e08ef9c92c7fb5ed8856a580cbc36d980fe9ab8f339d6703f9f9951f087c5f5534e36cfcefefc023100857b8d3ce1a848d880c96b51d002c20ba74e93250e6b10c72f93977c7d0d72709338ee75c39e711215ae370b7b01758f0302047c435bb5006730650230614465365eb4a4869c307f2fb7f0a7ef37d50bdac3369138f0f10ad35b7a206aa43e84205a8fd3b0849419b8c6855a6c023100e80074c0485e1438125ae6701fa0bc54f5006f181472f932ed03a5af282e304ca4f935860304f27e2c23f31d256ff6a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305aefb9d0f41ff4e414d723d9d60a96c1f0d4d7b3e2af2bce538e60c2dfcc0aee401618eff1d87746090c3b937986b2a7023100d7caf723e75293fa3d76a12eccbe81c9025f54a83bfac0dc41e654646428ce672464ad1a7ebd1050409ab23467f0e9cf0302047c435bb5006630640230274d314585a0882f2ca87996396080145890bbe753ee8dc69bf7a2e8ef47e3ca274492edd2346ef8508876520fad1abf023015ec0ea7ae97e5ac802f7367d448172428a653e106cbb2c553e8e862b6f839671769d64f6d3e4cf14b5197a9944914af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306ea1329730f27cb7e9acaa484bef1ecadf4522bbbf473bac7a462bfcb669d4dbe565117435bafcc9d7090d4d383c4238023042be3e658730613ab41fa0e380455cd8d08e7f1985faf585a4397b21694dd15f1ba8396f5c0d6a6211ae4c8ccbdce06e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fe780779ebd048a4ca3fef5f1e9fda7184edd2e75d5060a92c622a1caf31dcd519bf9bd0447ac6d615240e0a5cc468c023100c6ff99238f62ae5de9437dfedb435c24e6d661f46283a6bfa49d745fa2487c9f8b6c8bedd1054d73a0efb61001733f890302047c435bb50066306402307f7083f0fe525418248281115c7e029e0f803c290bb4bb2411cf05695e309da8c50d8e9ed5386adece60061e0aadf10902303e655da31f1b071f2d71618b2478d8dd2723f3fb3ad6294ee0d2c488bf53053d7459a3ecd595631312364e1f00aa1c480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e60578a772c14360aaf54d51dcac37f071c7b152a4bd75c9a677b91f5d408ce4355454d2917eb2e08d7d34e39427490b023020892d6fe8436f94a02550e0df1b46d4945aac6e742b10a361dad0fdbc6bc1f32fb776f2355657b1e1a28e8e7f9cd4f10302047c435bb5006730650230695399d9803993ef8a224676aeef57dc7bd4163d15cbd80feee27c622743c50b2bd82a2f259c65d9105fd2520e2b2b3c023100a8ce45039736905a1497995a1efac54cfd6c1a680461c4137f5bebf2bd4598d6f3c46367b54da8e692f35722d2e3bb6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cb325091bc89fdec78643ea0cbe8b5597867caf91fb191e469701fffe07196f1fc32b7f19d1d0eed7c7941c2b3434400230514774a75f6fa8a49a2fe3841c219210e37b3843ed44bf62c3d44e231c7cd7b3a3a304a3a45b6483b9c9d0dfa22db02d0302047c435bb50067306502306ab0d5e93ebe5a1f9e2cc851180572b89979d41a4c270cf1e410551d125cd47b67a118540511a0cf9b15a2c971a415ec023100f70f9e5b02f0bea9e4ac291e318bf07f70b9d691ff490c7821a3eb3080cc48e344f05cf3df41a001e8ebd8fa532716b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017aecd8e291fa197f20b2c4d3c8facc87aa15e757d37870b70936e9b4f1f3a5fbbbd0e1bb145683895c69b9f180ce622023100bfcc7869f369c7dab337124c70f187a6d433442cdc4fa0c1786eb3f90dfa197bde270e7fa29c16388142f8ccc07599230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a3451ecc25343ed96945ee6faf7f8bdc8ec92e2bc484e6ea20fd4694aa8f6b3d97ef8ed07fa813dcf17b15fd6224a03023027ed7f291dc7d67c4661fa9b8b62c2a405cf507e1a8f5bd864789a5593ed191f34c98d5f618a74c288d5dc0686e1fc480302047c435bb500683066023100e9ab5ef89bb1d123c52d96e087c72539b0363f6e2cd7ff5fa6880bfad2ca1a3638742680ccb988cb6e9f9f8d736cbe5702310082109ff8977e2298434c50bd1e03c6a44f8d0406cb80e93c61c468d2796bc31025fae79e0f7642967933f51c6a0bc0fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310098bdc8b94af9d98ec2909407e1b38421342b462d0e6f8149aba88c0a28ad03add54e8ba4755c021735d6e632ee0dfd87023100d98fac322910d9fb8143cd7b7c684004fa2aebfda163aa9e5bcec268be4372d0045db137f75c16f3621c9a23d3d666020302047c435bb50066306402302550bce4ae61b0ebdccd9df2b694147fe2025c08559c4388bd97ae4d3728a6cfedc84c8e8d07ab3c66b802c16923249b02305d5955faabb169e73cbad96f76a2b4f3ef9e8fe8eba16bc678fb9bb673a82f9cedb3ea9f7f70736e1641181bb2d93d820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230198f046abb61219fbf5e9fe16abad2c7ed46a84b5704fd966813f56878e291c474112a8a0ec9650fae2163821ccb7513023100cf8c62c4cf7b03393f5750bf68c98b80ba5e3b7b4f18fe8828b4a20d301b2acf46fad34af43bbb9292cf6f18b8a872ba0302047c435bb500683066023100ad8e906169dcaa19a9155212738408e3de71abd700799682cbd35a1adecd1551b171a5378de69022d082f0228c3ad7e5023100f92df4f4ab4425bd24f15b1759c22dc0a2dca90bf67c76f6083d45d70200289e99808a630f2e1b45578076d261d6c7800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310092b9457d60dc9b537d3e14c508b8d1225f116484b2fe68dd4f8f27b3b149ccc5084ac694a3743a61419099cea2f48b20023067ec38f1d46b14cd4972645c5384efcace1b884d6829d84cee4aba4269d8e989b75ce15ac907169f9536258fbf0841ae0302047c435bb5006630640230299eb151f865233d7c58476851445e7f6c770c9418eaa02be2fdfaa6c2ed4778fe814c8b0edf136b669f3834c14c77b502306296534f52ca37ce46c561c36a0ab52578065b602a3b14d6d59c3ab100fb02de4fb89f1df34e90499b32470b72ba38ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230643caa2b5ca91c9db3e71ef0680a0aeda251f2b1218d75ea4045145346fb5db61d8acc785ed4943fc39856252b376df802304ffdbc9b78884ca2779d0da769568752d21ae4ceaa664b079929d08182e8ffa438dca640b8365b329ee09184d3dfc1590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd4fed0b8bea3c4a6919323d6f3b3c149995303b8137d3983f9f6be54820e00a66868cdfe07a006f1a02ab762729583102300d0d7e970438c143b8a341ff6e91058699cb33f8bba2232bf92f34e4ddc3050172f0ef107b81d3a1c51efad08cfa4c470302047c435bb500673065023100895dbbad4f62cffa039508200324cc4288fb2f03667f40372744efee7497b75ba4d177a5ec90a6fa591bcbdda7ac15d7023074c461e971c3f951fe16562ecdf39f42b66043d3bf0388dbf13eede2f58ba4c564a5ed6b1b36da7d234e348b94d4b9f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bab3761fcc31c4e951a82c7c4d36dcd866ad782c1301124cacb3a8941642f04af4b1e47640bb08c1e03dfeecb64c485c023033ffdb5118b75234150e24a2ecea4642bcd1ca1407d0c4a2085e6d3a1da3f1d1ccf2c70d37a35b03bc8dff6a4dabf7240302047c435bb50067306502304c0cd7999e6542edfb213baaa7c9cfdc7afce0a732b0282041a7cd3bfc213784eba6f11d10a2d91500d05e51d0875f51023100e2672de43c313d67a598577513e4134d2ad2217bf196b40fe17a845716957b8eb6d003e8d45ea4be7f3a4bdbfc23738e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c1ba3d5af4f59d2eee79d90a1ef445fce4b91d902fef75eab82e39733f3c5c8fec17c8825c518697a34177fc27c7099702300e263876aeae979ec8d3f737d7ecc86f18e1af9a57f855b0354c0cdbef8498adea2ea9be0a6e5800caf598b84f71a45f0302047c435bb500683066023100f87208fcce9cd2ddee5b7a399acc3234a8dd08b6985667f5f0c64b94c5cbc5c2d11aa72e77f52309e0fb27d209281ecf023100c7ae13020f06607cf18f76b9d8211b5604055c5456fef579281390807fe1b1a888ef25768117f2feecf281a3e4cccdb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ce89d3563e1039314b6f77d180dd9dd9231f64bf1d415723414e925f0814beb2f2afd31599a234981bf88aec0a63e97a023100a3e30eddb166b63c25516bd1f2fc14bab6b86a8f885d2b717eef94821fcb84bd3ff8bf467060c67e275b9ccb193651d10302047c435bb500683066023100e121f46ddac61a41cb3cf3bb267288ab510904beee68482e5465bc461b37cf0392e1fc6b7c292216c3534f8a7e65e55e023100eb3cdb6ac4c67048fa6655dc4cf79a7176f242c09d5542354f1bff7f4c029262319d190d5dcf1166ddcf1bc4cfcd970d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306af6b2ae6a80ead9e9ed6122ed62ed3ae100d8f640115e26b3cc27a4be64a7b107c930e608ea77b4eb18218cb90cc8ef023100ca9ddc799d21ed4ec901a26943e719330b049b6a20b9457e59ba8919d300508575430c26d47467e3a8091431a9030c170302047c435bb5006630640230705e269c7d553ba2c719872fa4431fb207f572efd1917d3b76edad9e2145ea9bdce6db9e1e8b830798f442128d3caf4402300d301bb21822b4a7acc91bd53bd74bfbaf5d485c5e600d2a35876ed762c9901f299abfb47f4214073022c41a5e05a6ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dff54e0cff88b90b19cfdb545a3b4d2457c2e58fe4699d1668426b89ed5357302844dac148af2e96ab6424871f0c9427023012d14b5eee6d3edfece9e8c48d09d97685f2d902ba4396489cd5485da41b53eba1a34afc3ecf22e1df96a387e743aa560302047c435bb50066306402307f973f8713ee30a3f77b4c830086f487345094f513ada812857504f70500ea0f2e08754e0d164be2e383a72149c290470230697eb4fd18778170f537566c2792414de10c557ac7800ced6f7209117b0dd4992c6490903b3f2d6843136d9597909e3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa5efef58d3e22509538caac2f8cb6969294b957105359fe4034eefa8275750d43ff6368f069a6d0aae10d32bba22b08023100d7d6f081db9f02fdbf2c47927baeec4ba42cb2af11b5a8e1a55e0b5a75ce3b1ca228eee5d463d269d817be4a8bddc8be0302047c435bb50067306502301bc510c0fb4a7e109fccf881847db58ab2a2698d79e19bfd594330b89b25bf98158fa73f1a2295956c800409845eea19023100fc99668715b461ed865d444cd01e2350916e8388cd5aec11f59c2971733229574f1a12189d76c700f4274ae862d5500e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023075e14296779cf8750d21ab2602e99c5f44ff193937c13e2575db8c03840fffb137aa8fd95ed6a78a4b2c60a96fff013302303a267e2d06500d2fe1574a93eb22f9a568cf4c0578610afa648e891f8f6834ede133b32b3c7aeeadcef5312c4a64a3fe0302047c435bb50066306402304c8d7e33d1d9710b8780b0d8457bfa97d9569bd66d59513fbd23cec2e5c4a78384ec45faece0445205c3fb3fdf6f1bf202305bcfd29659883e8456e78d95fdeab55260a4884674e5288f0195fbf0e53f86211aa001bf6a2e7942069c7a8ef14004000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230123e983284ddfe94dfdc1eca01311f0671cd671551a7347188c81f5f238a094c9430ee39e3b0c3a9de642c6c620744c3023100c3136e57b8f4caf7b896b6e10b818916534e0f291bee929a825d758e529e24c275e0d375ed228bc0c7b7597b171435dd0302047c435bb500683066023100a2c09243f80e059633fd9078c053f1209b9ddf5d466be41201e58fab1a07d9b659aa2ddcd59758cce350cf81c486e5c0023100f6ff8c7340e836ff92ad845b34bbb55939047ad7da480743157249407121fe89eb348e846e243e0c6b5b675d97d3b51b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302728e94c80b614b0940d0755056e8ce05e0d517ea78fe5ab5966b8bc4a1796f27832958af5a7002c18185a28a94c6d4b023100ad2ea5f7041b81e26bcb6fb7daaa9fd1f17e7b12e343a013a19286b92a457431a81595c71c40033d2e7a7237809c4a260302047c435bb500683066023100ec3a680d66b0ce39c57d9c36e5dd5e74c692ec368755d9b279935efd7674b232abd7bc0f173b2df8cda0f18e08a78b1202310098c6a637647c82a36d22cebdff8286e019a51cae1bd0cc6b4eb6034ebb29547aed61ec629be1eea131065a644e44f9600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230402ef60c16e509f4f8a2b0355b582fb13360b5203765c4b4eca53a194233c1706b3ba19334ae1830a91c2403705d362802304f84cd74c7909cbaf964eee4113eb3cb9e1faf0cdf76db5331bd6e91d0f2485f26487a802107a66f1af35d188cbdb12f0302047c435bb500683066023100c1cb84ea382361963eac345bfffccd0bff6be7d9c5d1f3653ce4efb1f561c278980c566335227e10f5b51779a7fc048902310086a9488e6f01c7a8186fb3101dca3aeaa2b1303986424394b945fbd53cb41f35a7d735629013295f2bf40481f63c47e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310081e33b375b0fc140e0d2a493cfaef1a4e0075685dc7155a813dc5d4cef9eabb21132971a605229ded7b33defb73f043f0231009b2f4a2e17b9ba541dea18150bf615f38e374f5f86609886c9ebf56d0f5725e6d656fa2b0541357fe1895456db58a2f70302047c435bb500673065023100d89a97ef8089913c95f21667671ee1bd6bb22b3830c267819b43157877b91721a0839dfaf091becb65a27b4189dd6dc6023032e772745a33c3f3374af4b9aa92124512f2e289d5b42d15c27ebfda327198cb287c905126096a58e863ab857e9d52bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230303f794ecf04d1038a2cde24f5474ec5ca57c1557ad06695726841bbd549b3d65501042984793e6ef33f65a49f325a01023100cde4d16fd5b331ed5ce729f6b19ef7599716d47f96fedeb4330e3f89eacecaa620bc8fe8d8e27b625526afad798b96160302047c435bb5006630640230179da50c017f74b4cabe4d0dbd4b13b78aade03caea123df65ee8100843b63953baf4509e71a9943643b838c031a039402302957209e3d93416c1ffd1d820f64c1bf2f7a37ac06d204eec10030f0a5f15c5e9b0c7e68f7a134d171a6839b278f8f170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cfda2c02cd7cc03f1ab3f296f37fbea4887db61c04f28c6e4d734c6a292c692718159a6c1244c4d718538be90aef9f4d023100fb580cc9f5e3a4ba8a8f27ce41b0f3c02d14ad44dc9eb7a72018d9dd68080c0fd5b7ef39f83333871bf87ba5a1f6256f0302047c435bb5006830660231009acae679bf0126b54e6907afea20eefa0eb47141e361add998cecc06d22a9ca11bcb681cb5bc0e26d230211010b05f46023100d37f1302f9048ee2111fc0024b92e7272261a60ffe99714728f5e6e113113a2584983ed524fb5fc668b4edc9b6c4b1da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bb21748081c40b5ce6d80de2f46ed06319f562e22cd5b4106d0cf590dda4ac53302c57390e1a7a1f1b529b54f045f213023100d1aa2516d2e8b2cf0ee39b63bba99e1e1167a44a62285f2688b927b7e9abed11a94b366d3d869cfdbf5d2fd53fc87bc30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009efa7176645eb5e78c1369214e103cb118a976a305a8e897eeaea4603b6a60d0c2bde18f01306b2fa9a58d46ada79d8202302d73142f93d41dc828e1e763f212640aeac8eb838ea14d33ecfa7a42a78a0c09f3b90d8ccacd330cf014876118c4a4db0302047c435bb5006630640230768a23067208789f30e321fec7dc2acbd278163a4d6c288d4a77e0a2ee7121681275bb4649961606383e769e47d70e2d02306467eebb46d223c48abb21138b6eb9af2475c6c2a3d1c3225ad74dd32fb1f01810e803cec418269a85bea925a91107210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230476d44db3a813bba09651919b2a12c5323fca1d42893b84d06930f481ad5788465ccfd78a942d77a29d86079382eae5802307e2b6d6a65e78e904f5833d16bc2d9e4f8757c747e4bbdc3e45503a70e5284ed94801523c77e1fe24650f861653627e40302047c435bb500673065023100cc5dd6af5d5bf436cae2e7c655e14de1da2caf09229664031cc600bca23a4ced3e3d158206f0dd0451ad7e35bf04d413023079088454dd5933380ed876029b6b1aae59f17c503d3071eff7e74992ac23e972ce913a1aa8af461a5847a5ff402b09b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bccdf22bf15d4444fc202ddf7aab4805833f96457380c26bdb921ad6bf896fff64043faab9e2c314564ec98ff4bc01a0023063055b9a8a5ac60c09d0c404a65b91c56897cfb53723b47412a533d38c6106ed5bd55a735f27c6e4d5dae7c6c779cc140302047c435bb5006830660231008717b0d3319e3a4dc9f2ce511738252d9cada4dfacccab010e45df56c96e7f14bab45179be6af3a13a0dbf3e81c5b472023100bbc773ed4172c15831da4cfb5cbc98ff74d1f2093debe7f0a34aa0fe5001d2d999ab85f16975c31f8ac13b82ca8085080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306258fe3357df63869574f1716ee8712fbfec358572dfbcabbb35d9300e9e6fe1bfd413fa0f6d0bc2dcdb945e3c5a2caf023100b28bd4019a185aa44223d195c9b93fa3398419d5d8c236ef86d9a3c93b08638df667b6c81fcfc9e200158fcc19921ed10302047c435bb500673065023061b74f9bdec65a4531d0bc00922032f507687505984ef503710c81b8a4b97e2fe1a503307847b41262878187d2c91cda023100d9c22ef0c685950a8a635bc80233ea14848fa7ad5e830640957396d9d0c0d4ce6310b4a33161099f5a195005655a6ae50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ccdcffb163b8c544dfd08a38e0c5fbf04063ef4ee3d0eb7214332cff4ae7ad69a0a5cc27f80ca7b3b427a76abb2492fb023006bfa024b18492991b03c5588c22893ea44912da3a62098f7751ed4fda848bbb40600bbf6c25616d002645d5183441a70302047c435bb500683066023100f9684890c9f97346fbf0a825ca2cb5d4d4ac2a766a1f7d562103dfd6a849245e3e6b559488ed37568dad9980c5736866023100fab4933f40b264343e9093bde4c58ebecd9189a4cdff24712b596a28eb9deac5226a307e8faa1d934758921f812864380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae59252d82b02c87e1534376288ce033ab12825658c6601d656e76fb4165318a1b0701afc8fe421f69542eb10d788637023100e7f3b7516e2e5829b138a06b844bce74533da8d1d2f2b367d2e441e82fbaaeba816e142c50c83df4380dd36b62a7f80f0302047c435bb500683066023100ddd411c9d21a848381e8b659215d7f07dfde9d5ad28b95a070fa9b896be410015ed934ba381b1dfaa2a90edef42b1f060231009225997bac4a087adc2f9f96f95f3b94fdd4ee446beb918e0e299b4d4befb04d969c4f1dcff57004ccb7058f28197d5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d456b59637ce9a9c2797e855283b0d53dfc814f60232c10a9eda3512ac117eeff8fe47bf9013f55b0bed44d30f43814c023100fbf2bb7f3ce08ad06326619b46e757bb8cedc31d8a0dc4e6cec0c7e37650fb53e4f7861496efa9121e17357f8ba28c3e0302047c435bb500663064023018785e781fb9e5d9c399691223be0dacd18ff9644474ba172a6e8be3ffa4abda16219e50db0bf4956adb3462a2c1015c023069be6f4ebad0d5940c90a35d285e928d442c47567c4edf34e317b1d7d70ae67530b27420488e59ab88929ad89c478bae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c20f7657e06102c8b490616c12398eb10ea71d1fa3b75117ed3f366644aa466298beb8657cee301705bc9f2b3e5dc3a0230191b631d44b7c70ae0cd6e96553753cdd35af28eaea44bb3710f809b614ea509b9778f6813548ebb2eb67d2c3d75f1ee0302047c435bb500673065023100bbb7ea17a48f6a609f76ada73b6f4526fde776a4ab66aed866f65dd46051606f615be634970deb2a5665b3d377391b8502301c5e9aa18584dcb2e019fa44c3e000e76ab2317e5cfda2b8a053493c24ca426aa10b7e2b0d76a94e6d23242ffc7010fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023037c955b5e6c31d643a83193f00768beb1b7bffb5bffbd6f3a0d64924023d4dce61816d03b51d0095c2f9d514f7f90d0b023100ba6f5222c83b1143d04b25519a8030d884407dc924e3c24ce1fdef71006dfe05e5d2fadb6e7436adf616b0e69f0711330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f20143df5084d0f9024e72d716753474ce7d1ba30510276bdd425aa180a08748d358fae4cc965b7863189e17eccf6f4f02301a7c5dc7e31869ba50a602df90be51aeb8be4ab5de7dc8f30150c803cf7e2bc33058f9ecdf90ce6770e7e157a3a5264e0302047c435bb5006630640230120490c2de495ec590001bc03ebff4734a0b9dc7518ce0dce955604181d7068c388edc33ceddc9f032c8f7d464829266023046b6b30171254b6eba29ab5b180402943731d245a86e51d5c6460f4a0ad310bf8bed1da9fb117c810531db95a0f467490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301be57f4c66bc8beeda24684a0fea5905ee3610662b46680cac83b134c609d49476ca5c11e9b019f989aec653fcce991a023100cc707d95b9a99150549a5016f571cd3e0b1b51f17fbc30ae16baf5e3f43ec5a160fb8bbd1afe39f07679b454fc552f2d0302047c435bb5006730650231008b4fbe16d855bdddf49c727082d951df327aebcbcd8fe66ec89b43900e49c368642d0094e2aa0d5c2b86cd1fbb40763302306c1f576a36ae7c12482abc3174557a65413c7168976564b05b6ddb8a02cc16def8b3b69cf89fe2cb6d9a09f824d6c5f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7da792cbb574cc1aa307838ea6205a634d6f0e91ea3c15d8002a2392de6a5c8dc9050bb5bc5faf5b2152503ccf2b218023100c8492377f3b36e9da652874e4953c5dc9052795c56ded93a2d4321562fb3191bd075dcd1625c1c48875842096cff39d10302047c435bb50067306502301597f120a3ac5cc0b3180aec33350685f45d8854d0fb26c729cc13e548e9c2d927f41ae21ac00fd018430be804d524b9023100b0e7b935d0ca9882e87a54325464d136c177d3781cb987fef27476d917e6496fb2e9739c048a71eb588890a09d1422170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5740f19342959dc983230a577199f7c58ebfab3c994a1b6d1ccdfdf3f782803955eda70159b2ef66b4fc231b6a1f82b023100f822024de07d0e0c1c4a0811bc9278b738b09b96c89638f20a98d159320c54d1be06d2d2c0944b78a4f8623377ebab370302047c435bb500673065023100de7091ad7c0339b45fdb332aeced50a0461679a717de0b308034e58cb9a89b18b865e026915ed1b6ae6b2a9a0d9b401d02304df6e58aa6be0f8f35b21818d3d6cebdb982ee28512202a77cbad4fbc5ede5bae4bbf35fc4d3763dc301f41f0770e50e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c0b12ac9a4a1bcc8d002689c23cac70a98380c2864dc5647829641c01977104c0cc90e2589ba38096bc8e95cc9cf4b31023063d2e3ccc7c588d263553cdbd056831d83d564a16bcda97fc7fb7bb0d45fd4e98ea2658c706304383519b3daba0cf9f10302047c435bb500673065023100a15eef65ef476eed48b0e2134bc0904d15aa908efb46206694e0e8e2b9da2d6ebf29ddee1d9099517fe47995332864e3023041bcd936e61430fdb258badf4ce25db94e7a250a127549651952a731604f864868e204515c4100247aba4a906901877c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304bf71bff1598d209f80436b3171db06bb912e63d9acc50e1b7f3638b468b0a8a8ea57392d954e290a070786c56599657023100e871971c20c171ec213ca724d2eae2b41b66ae99e9c34120d441c9657a71ae6a410b7d9690b9c94d068ff1eb11cbdafa0302047c435bb500673065023003591bff5235049f8f2a489a817d3128db057cc118c8321b235984a482f9a87597839c33c54cfdd8f526d4288c1a276f023100cca6beb7da2a4cc670014d2d65d7add68baaf4811cebebee49d4a516bc94b05e4d323e2907790154eaccd86638ebe9500302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023053069cd0fdcbb53f5168a68d904491f7e4fdea4f8270ff3bb27ace13d0560ccb29a056dbf64480eebb04309732007c1b02306a224adfc804c3f80c4d0e8b32e82e649ef24c3d4f9659deb799d53c93cd16ebdca2bb5735dba34d473692afc1c90d4c0302047c435bb50067306502304ef8eeb40db4b6e9cf542217fa8a91cf8e54341c546ba4da8f8294533d8ff93c5d65d4aa334603e7cd32c230a9671f0902310082cc06c2fe94d519c67600a0c9e1d32665898a95855e8e0da9aca93347dd9ea201977dc441455a3fc27dfd09af2310520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e5fffbda028ca2e932764012f387c4b915e6b9a686a9c37607df4fde73c51112e7d2908466adc8b19de6e67b60103500231009155fb2c6bc2fba49a724f0f0fef9edff021f7bbfb19dfe66b8a9003230da746a80a5b0602de39ac6360f701c268ed320302047c435bb5006630640230697b9b849efc433b3db79e46729872a82377f34ae83df49e0e6d51263147e5eb7b8b6cc05af2a59785eb091372afb2f8023024ec5c7e37e16d1248caa9c2fb855cdce19252c1b9111f94cc22581c02da69cfa73b56f61eb330384d22588e200211c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008bc2563f7fa5d48c09b88fe5ea414457ad273865fe4c3133b12a6623432be1507f842343c246a44484e46d9d859ea011023100bae2f6cd7b5dfd5d8194f5cba0eaab3e3b1774b701be0a844210184afba6ad9ce827e4e7057c25ed0b6685315a2e3e3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a39cfaa86e4f5feae45de9e111c33e231d05a9b7569090584e78de1795bdd3372589397a7c1bccb51dee8f8804a47a002300a678b212c10a9eafe95d6576fae54b24a85cbb0ed732954c2b627afef581235855ab6630eb44dea58d61cb8113ab0a80302047c435bb500673065023100d750618b2a9ead5abd4b51e5f852ae5a8bce5fdb20f620ba9f1d8a565b223f0dfc0216e1efd2fd592595f91cbf3c04f802301dfe749b83f7d7b436a61ecfb7f88c9250488cc4a36279c27dbf66f87f0b5e422c505f105a733d28c6e8558d138850ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230790f740f7de2642e59759643665568dbd8b5d4c46208a368293c5cdd87d178a1ae0a93100a57053b212d7911a9615b3a023100efbc3e69a8e386939be630e1ceff5cd440303bc37c89135e764b8fb2292a525055e97db051e39a121c9d08120200f46c0302047c435bb500673065023100d860f16fb01ddeb23146dcd5d075207b89e307b2ce160f5b71bad2f53593213146d06959bb98af1c7a8885755b1964ba02303cea47bf18c2f57e312730be94714b1b2d0a4b82064e0d3120a18c22764d191dac58396bf44991c8a01181f1277179250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a80656cef9296119f3240165fe1fbaa0f2bc41f209c84270b287faab4d3d9cd08434f90a28826c5a04c85ee09adab93602305fa7ec4a1d1bb3a83fddc8bb7f67e4d487216f548d3a7221e805799d6d11462483cce883414ed05ae898489df890c6e20302047c435bb50066306402300c06aa0bf0acb66234a572df52626a1a395b132b26ca4cbab0eb6f36524a8c347db58ddef42a0b06db7cc77d878caa5f023040f1b1d3819280ce67f9e70eeee1b0c69366259098b07e7ce25afdaf3e42ee5952971c72c8cd5504a7cbf2fd8a3f4aee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa44cbbb6888ed81c05d5d21d6dc57b71dae0709a9876a15a2897d8c1c080cfd90ea17e84f71cfe1b07bda7c47383bcb02304e9a66e6027c7a294ad90d5c858c120bbf262fb8bb2bfa0d745d396f7cbcf0ece8d58bd5feb595e1613d46a60487b0020302047c435bb5006730650230111d781cf98126d80e551c486fa38a56a52661b49644c7e33ab93a44f3d03962c46f93a738164c4c5d88af299c7eeb60023100e3f08218ad599d641056cf4e804f7d5687c9cc822d2cceb88b033ff5c7e2c4012e33b256cab2fd2257d335a2f961f2f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b98560c46c09f2bb2a889681978944b7a26ed3508b1b9f31e1c83e5420ffa4a8b65cf2973ae375cd12059a8e456874f5023100e7e6f4a16c26b815d63521a0d661e615c58811fb3fc42ff3409f793b4b9b568e2518dc6283682dddac4235d9ae5b57730302047c435bb50067306502304ff38ef39dcff25e3b7477c6f24342eb8542d83b002bc78cb25f806bc4ea2b2f71e4c6b366fc3c9f161131f328e6aa79023100f4c2b568e46302e24f2183f567a992cf81780f1f5125532461ecbee7d64785b72c4f5f18882d575f102dfecf3c1264170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a468256e839c1cd6b5805d056469ae7b7ad6cbe006b1e1cb1755c8cbe8762472a12d0a582cdaa27749f49809d3cfc0e0230381be86970020f81940a4fe5b75a75d83b1d7cb0f6f5233f8eda6498eb6c521c47a6df0f718b8f18fdf4b7eda83afe0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ad1358d1a229d5873a698b88043003b09805f4f186095f90846c538b06647f0b047d250b893efffe87fa2663ef71592023100bd84cc3d0cb27b29e514d26295b75e2cfbc369cf9f7e3f3ee10705112c10504c3810deaa892ea7bd71a177d431a9dde00302047c435bb500673065023100e25c81c10ccc483913b0ba6855b49cb37ef830383176d46321b373692457fe694fd21e9072364b9d7ed189fa1ade2ea10230698f8505a5d0d5908b327bd63546e1a3a5a5e90180759a3009b6c3b0f3747fcad4c5b9f051b4e0161d0228dcf05330190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310093839038621baf6acbc8ad82fe396f5aa37c62cc783b46c7f2c545d647380fd5d901bfd9bcd38ceb6b85958038b6f5d1023100d95f76f0be9b905406d467ebd59b4915646e040ce45109f74e3146b2c1e2e05c5d145663acdaa99d63e2240d69cdf32d0302047c435bb50067306502302d7daa15b1a945d113154fe991d377061d3516d74676213143ef7b3b6bfdabc8960e8a4a305ab16beac128816b733294023100af2729261126bbd2e2f19859353f17b03adedeb2e5cc0880802b418bcd28f42e2017405bf86e79bf520a22a4fc13d32a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c381796ad632cc5687b14ff751af864052d70efaebf2ba948c2443593ab327e770d2930e9eac6ee97aeb748dddbfc8302310098341f1d1f2564ade5bb35e659bf0a3e4fad0f263f33c2563461392955464124162d267b6575dae15021cee0254879ca0302047c435bb5006630640230441a2b9f00d72341ab73311178977e0e3ca713a4ff385120738dc31a3a1256ba09b2fbb6938c2bf2c7f75e0f09990ada02307a1509f0d1d8e3e6f9af7775f1633502b6539128b946600f72eabe33b31568864f48776ac81cdb5dc14e2f95d72a2ce60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300da61ab05c091d41876a635ed41549be6403151205364e20061b300aebae48db1ea474aa34d8347a863316b9a25036f2023100aab2c24c7ac5ccc95e907f219d7ad977bbfa551fe81cb565dcbf628b1ae8eb028db741869bb7dfd0722a32adabfcb9520302047c435bb500663064023063b9eeb61c0b5eaf671f0801f0068f41b064332d3e8cccb5096bc3ae3a7b4d233eb432778ce769b31e566ef31830ddd902300a981b789a33a63d56b77e36316d0fbf9becfbeb3a329f2431a190b60b1eae2170dec9883c873b30cadbf03d3fe4e1fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d7e75a4ccacd37ab09943d714f712c4b930fb367405c0f8b45f229b376677dc2254b15d310b3c2158facf5e92fa2f6402307a10d78af919b2381df8aae314cc11eb7b81fd59a8bce12c90f2322850b1e24a01b933c0c98c91ee32532b508293ca720302047c435bb50067306502306d2f38b4d2502b4476e533e6463f6626815df5ceee4e76ff1ee151aa10800cf784b10a59aca587e7aef7474a816edf11023100b843770ea476c91fa049893243d76970b6b64c080c030a8728e18acfdcb0ff3e829825c85c24c065e9d67e4b6628f1f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304158b69c2a5a3d391f095a4828ac4f8234159d048e6ffba25ebc870c5ec2a1499e97730c83d85c78e550fc499a14730c02304289cef7bb3248f665b221cf51abdcf2743470762f74fe412a05757261d466a4cbb1f72f5a1c5f24eb746cccd7329f290302047c435bb500663064023070620cc61bf9fb517ea561432dc2292025c9ecc89c29518a84a7778127a8535769733750d2c3e575d120ad693b8af4b502303922485ffe801580eceb7aedb5ffb2cae9c28e5b5ce45e452c89041cc065899900b9464576bb2e6ca4b76b1b4b3bd5530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2f5acdc1fb238c90ac748f6314fe999bbf9d06558ebcb4c463b97b39d4b75957acdd421a3589d4b7e11f04f64c72b3302301d4bb9289db8e6083543238eba515c1e64ac9b79b661b1214e5e792a8e1dc8546a31453e91e8cf7a2193c7173fb9e94d0302047c435bb500673065023100acbbc2f726660018494e3e51577f80e4362d6a4c166ff5c71ccb28642860c531e5e60be0d01d4e29afa22130dbbd75c702301ad699abbcf9e70a473631545397867a9124ec9cac9743e981f6cde5deafdbd4c81ee643b7442562abb1222bdfff38140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b108f8922a06652a5771eadb6743f0b03d45524da692b9de2126032f8d6744aae506246d6a1462429b729e4363227b60230233bd6c3cfa1f493dcca3d0dbd8b642053b4461705ef66d57673bf534d9a44184e2736568eb37cc904013711f5cff7770302047c435bb500673065023100b7e6944010ff058b503e5299ad0b6bca23aa94823555691e6242e97f026d66bb6acf969c5c4234b23725126ecae082b202300abe309334be81e2acda303d28d31100f9c0711678d8bae009f7a5a3ba670a6de9dfdcdfc4ddeca23ca25b6ca9b7d3af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304cdec69aa43974cb062665b5f0275e30ed3a5ef0f1210d82bd69ffe8accba627ec0ab507cf2bf20e6cfad1a6381b1a600231008551b35704a41cd68eff6658d2f8695ee9f8353a368617d0cb01498989d06a4be0842b945c64f902b7826f736a0e24de0302047c435bb500683066023100af42659150cc6129fa02fbeaf6eb73909fb1bd6701e43065544d6d4fcacf4ee080b3f18fc0ca2d0f206e24746f52c5e6023100accfe00d2aed7b340bb845db3264e0555f3388ac1d2063c0a66fb1aec667d897076869794dac9ebff18ddc188d3622ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100be57e99cf2ebc4bfe1e3adee576bb6d69ce9f12c8b3f041ece43720be5ed049117c2857e7985dfa8b476fd40ad30cbfc023100a2efb40fcb29e31fa08bc09976fee3ff796d517fb6837ed6a6d6270497688d5eb0de1cda3c96c8207bf775aafeb07b3c0302047c435bb500683066023100fb99a8b59a5aff70201f6eda527eba010364068857c8d64f30cd02fa667aa3cde18ebfd31f65cd5da12c1ebe088c96c8023100dd7c8eb98c0143159bf8705b32a25cabdf6a1d2d7a16e1326a90edf2cbba5e9a07ef26667b6abfb8ba5f337e8d9cdb980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de60b680e4694d8e9195bf72257ce0b34f37cc8cef989e7e0182d292d24f46ea52c90796639c100f3bc548725972a3ac0230106f493c0c8ef600a6c8f7929e756968cc692956879e00158d830565a45fd9a28647da082b5ac5299b6789d05b3f86020302047c435bb500663064023036a3fff9f94316bdbaedff1b69900adcb0a2d3a8febbbce60f98a5afe775d243fa6eb5631f436fa13cbe845f9b40c21102301cf30fe8a44694166c88080f9e6bfbda7c48d76bdf0f443c41bfe6475b072079784c31b52b105142a659c28e26ab18710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304e639e0b1c423283bb056ef0ae7a140cae5231d39e7315f50bc51c114b8969e2a35806f5b907b01b2cba5a78f992029b0231009b0b024cbdbda7776d393fcf683eae63636b733ab89b30bb245505ece94761eee121f28c26b2b3f8e1d9641a3cbfa6080302047c435bb50066306402302cec35decc14e78be1d4763791110d52742dda07cd9a59a9a4de5d3a84c90b4900a4ea77c06d8100b9f81f590e38a6b6023014f925e4d6a167a9fe288448932a745b55a2325374bc75184cb0f6dfcda549776806d4824d3616f946dd047cbb42b19f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c78e3ee771f20bfc41bcc16e987caa8219dc15fe3655e23c532aa863b2eb09cf0ae4db5e2e4dab7bfadbed6fccec89c023100e17c5a634e13733fa4b8878a37868ce3962cd98d8e7f641ce3d463e6c126424763c9ea3f9e7b12644d9488239dd5aeee0302047c435bb50068306602310090c98a77c0f59cbdce12aef1aeb28779bc2536b8b313ec01a582714ba56f40f584657d204aea4a9c443c19ba4d4733b6023100f16dd2a1067c3ae34bb60feacb4a74780d564088e7f4674a33c99d603d693daae4578339c48ec4652f8e786181408fbb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014cd33fc4c7c770bc11788acafea44e384fbd35ec1d591b33772457114de0963236593660d5f991ac30e2f339483562702310098f5a62a5c90b5c2ea3a264bc28260ffbcbf2a60132b0208a721b84960dc500eb767daf2cc988cff32005e52f6f7776c0302047c435bb500683066023100bcc92bd0941ecc1401944b630167e003fcf050bd28bed5609ceb3f8f2f12707d3b6824f8abbe37fb65b1d6862e4d2cbf023100cf47f8bc3613de6b445f742876fd0b0f9184153031072596f2854731074fdfa35b3fab59eda90849ef07f3e308fa191d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a62876c661f372e2a4a2dee0c4fd0389afd35be68eec4eae3138391a85c511387acb617971ae5bbb2e6531d24269765f023100a004c3bd27a52f03f797fb28f263946d708f1cc744e1399b35d7408986a0317b79194d575e85f2ff4355039e801a275a0302047c435bb500673065023036026b731279ae11ca1b52e841289940c873f0fd2c26c38ee578f83a091fefca90a03d33f66caed13bb52adb692cd5210231008becd32d9a6339916dcef8167cc0ebf18dc345ee74fbf53bce67d5bd4db1b6f756ddbaa0a2d3a960035f7f33388068080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100821c940aaf53d72d5f8644799826fe2ba4998a5a2ac8e8981a7bbf7f65a4d3e97f85f2fa8738cc9111d9cf4f7c51d15e023012d1560f862afe82b1ae96951ee93a7b3eb80eb3a86a9355d89c503b1c21c8618064a4ea616d7b5a8e3bbad744cdc0b70302047c435bb50067306502303e6483b25c2744d61acb31bc2df7990b9adf4a057c53522fb205d3477ee3cb25dae30d0226980a88183c89223f5e94e8023100cd977211f01a62f4048a87031238ef049956cbd75ad6c2362f37c1ce453b2199eb230d9619fe6b567300bb8a2963e93f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230192147771218c553ba78790966bca7cada52f81492800d475d4de41c695f697f14a516fb2134d1fa3f3aaf62b58598ec02300e1493cbf221a880f931103e9b9eee2687a5cb053bf93f8edc037f626bd8bf2247965110a3d511761aed863f7e7a69440302047c435bb500673065023100a79f83754d69042f62da0bbba8ce94551383b996d42514eaee4f3eceb0dd6e7663690e21034746c5c775ec270c9c0d8802301f63928511c505dfbdd81bf9f99cfc7206f807a3bc57e795e625afd8f2176c12ea81f5db01734b10c31c38b05e3c9ac10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac2989af3871fda8efbd5d131bc51e38a02ddd890824626929e54746b192a82d09efc4d11ab69818bccf38d06ca110bd023100d4f965106ab07a12cb4aed8e95e235ed770f4ff164a520e6fbd8bd966976ba93a0651f802fa85517cc5317bad03a02d40302047c435bb500673065023100ffafc56d19e76b86a7b4b41d8136449cda137f92200dc631f53e3db73eed8b54c9749664668b018b1d69af7248e8a1920230684ff2a983a7f4dde7fb8144ef48b9499d011e2257571a5707854b64158a8125e8e5fab85bac11a922d71af78e22b75e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d12f12c785434e4b5ea3082bf94f51096a9c53e71657cd46b89afc937667876869d886bb54ae9a0499451c6368eb5dc02303bfeac28a88e5954476560cc1f78b0dc92609982c7f07a4c0fa41874833c09bb3d4c8e360f966f85978fdcf60984dbf30302047c435bb5006630640230489aa907afc6f070308d657af59256abdc263be037ceec46d93801bf2d237ba9245c0f857e889c1c1569f7c4c1fc87c902303cddc364eee3642d64b13b52e4d6fd40de0bbb8c70f87a500cade2f8345fa9a6e33e8f199ee00eb3fb98e4ad7146608a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100de3fce7019df7897177148c7d2103e382a16e0615ff585b005bde8c9b3477942cf18585cb9a74b34099ccc4f555f0146023100a8636e592bc9fa52953c393d3c202f78557eab3ea4fb521db297632759bb15c13d415ae3a3cae3e87e642df4644c81520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085686493bd3c26c43d85abab8672a4eecb70ce918e086d449af4df46692337c6080a14807e9ea77d821606fd29d64b44023027e73fcf1a66058491c23adbe8a6df937c8e749ad09ea1692239a9c5a72f2f4da48421de6f91bb2fcb3ae19dcbb566550302047c435bb500673065023100c37cfce061fff5041dcf35558dfe277d795ba21ca7b84f9b38310b4f96e5a91fd1bb1c61034c7e7e5be14c3ab95fe15702303c9abc85e30e6baab2f05d38267d26bb040a4008e986aee8e7ecc9529e3be780daed01cc8988dd493fd8fb4f9616f5b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230578f12336efdce5f84ed4e863bd93547bd7f43b96c5b56cbb4b13a8bb1150cc507873237edc3519af9e72159e70a2318023029923ed852275e03268997323cb2003fb8d2e7e8a6a42b10de6c0cbcf402651090e9361dd794effa50533924d08cdf590302047c435bb5006530630230631aeeff2ecaf664cd696739c28c0c3b37cb503e33821246d38dcb4b74b30252a463f3230d211c5db3e11132cf1a2c0a022f12fb910739d03f279a1982de590da8af2d91913c786656bf7aeb8dc90699884f18d9532f8864eb6c32294c3b9369830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302df574adf9d8c9dfa753776ae96aaa6cfef32e95be444637d1128645ca9219d1a57a4d519c6866f2c00d6f022e50c8df023062d980809244c1c36ee5fd3b2f97206db34124e3c400f69a6e59daaa946f7b23441845b9fd5e6242d71cf532a0f718280302047c435bb500683066023100a130db449a8b1bb7778acce8af89e44ffb09378bdd1e146c3ec866f697aa2cd71e2af37c3519e7a7349970601eadbf23023100d1d45067824c8e28d38046ca32b09d44804187e793323463d47b9210569e7a118718c6377057517c9e798615123325b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008304d06950afe6d894127aa2734487bed8cf857966be16ec501a47c11953a5207b08fd7d73613a4fa0ce008fda758044023100b328115cc2171fa79bf10e9eb46ab7abd3972aa22f223bd363b5e77c89d477d7483f0079be86cb6e992f0f4b45877bc10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023048ac3cfb637bf71087e2eceb6aacf29b5cd4643f46e007a869aeee5390d186333243a98bc3b93999f6f550b91bcc4c5a023032eb0936ac2ea0ff6b8bcef37044add9ab78de214d8190776d449816f606c9ffa3aaa0c407e6a4d6e625bef577bc254a0302047c435bb500683066023100c5d355cd938899916060b90dae403fda6e5900d00ba3b49ebcc1fd5fee4c8bd58affa9ed4f6a3a14623661a64a99c0d7023100b39c9066407b44312d7a368bca9f2c869700359dd552cb5421b33fdf7c895140a57c114b72da3749ea1f8202be76574b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2dd828333a09f5a6c9b06f956c3223fc0a3e4dd0f95e62f9fcffa714ee7a446e972104057a3e9782ec70160fd2e006b02305171a8d540074655464d9d51b0a1a7a1eb147812255bb7344ab66afee78b52dcd7924d29c5279e757e8ddbf22e116cb70302047c435bb500663064023078d798b4e7aa7715f857e2c9588302332fc8b29b1d02d2bed1700e674919697eca1686707fc7aeaa0691a0b03563d7d202305f35f46b2fbb7462f2dffdda850723e3c0979e289892417ad1ca07f04f3ed17ed833d27e222c458780f445c042b6d8d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d45ec53baf4d4bbc8c9c4ff8e87eb1dba37190cf44e27d2449bc02900249cf94168579202e91f977df3dda2cd446b4ab0230134c7373d832e7dbd24c9ac9159708f77257cff6c349470b94ee83eddac09d02140b90b3023dde245339d2bd324dcb770302047c435bb5006630640230140fd9f39a01cf70b5cc0bab8e4f9caa153e38385f2170766f61fd242026d5a7400392b03670deffc0549f47fb0dbf2302304df79dc99b4206fb2580885a54faa26feb53a7b5b4a6690668510cc53b4f710809a808d716fa3773d6939218e56ccf9b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c6a747a6ce48ddaf2c072c9fc9c655141f2af41ca80d77d9c85468ed178309be4f6c0e3a8eac2052c929735c4e7c018023070204719acdbd2b6c2533cfc4e9892d063af05721201d3fc8241d882903a6ab51fc86f94a43d0309ff006336e5771a480302047c435bb50067306502306ae3e8a8eb07f9d428e47e7c86fab520e7b0f20752e995e9443616d293481313cc35558debfabf2b3ab7f69102d0265b023100c71f0b960a09650d6227bae4dfc8f3536a61ed8d38194f9de57a5d749c9225c350c7568d138689fcd76571411e8cf5290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045b81c1aaf7dce3e4c2bdc31416f99a16d4c39915dd8e5cfeb1e4856909eb45df7b67370bf2574487877de517384b9e7023058dc6ee7bd270cf04470d5a7ef097ef9d152fcbe734429c930a7aa1e2c462f2e186518543f690784dc96828c3e8be0e00302047c435bb5006630640230271ea965b59d5b73d7182bedb8f5de56e218c161a7b12b07fe31e701d091c2fed7a57fa30f3b09da973ad4d1254e02ae02304e14d560e193f950bb3e8515c6c1839bf78fc4689816d67a658aa6483bd5b6fd200b95076b358a8b274aa535eb7cad460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea14fa37f65fa3fcef23d2b279963f6f9bfe5362b16e94b69de09da0a83ebe58fe53bb448d236749e5cfb7dd312b989402306dbb492bc9b83da0c2a683c7807eb820d5383e1d975efb3c3ee8d9e036512238be8230ebd9f8f3881de6e7724da2c4530302047c435bb50066306402300ba6c5872ac09ddd0326f5297c2d361fbfc9d5cab8aecc7875be47990c32d309ecb4d26dd2139b73767475cc4a8ef58c0230649d4771eefb39e597d4482ea3f739d8a519aed852edf9e7936b5e21dcaabab4459762846245b29981e3114e44404db60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f8d1ece422a12629931536137509d50ef2e6018e6a4fd787405d16fbf6132bea61d8a636795796a49a7cdca26987f5f0230607c03964213e1f71065b4c916d1616a4f5fd40096af219ddf5e7d59799ab1ac5cb0a894faed79d34d0ae852c2168c020302047c435bb5006630640230064a06a1c6cb9e0134f2a0381167955786a5640b13d62ff1f934f4ec878008865ff857415dada4f967994e7855ecc98402302ad51d916e4878ccbeb33614f15047627b6e8cbaeb4dba388c7628302f215741e4d97a65865d63acd537f65c835e44de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ade8279d3cb390d63bbda5c4c76051dba694a1d33bb89016597ab1629da13638eef0868468a0214a6a23cd2389473b64023100b8517f1ef3d49fba6cb0246d59681ba78be132720d1f28fd6e226e9a2c522f3d5f9a62471fcf1ab8a8f25bd95b27e9760302047c435bb50066306402302ed861f31f71e61397cac989927e6db80cae14934f3332e75714d201101f6363727a923243765e07af9a5d63c1a0f4dd02307a99da0d9623f289b3726fa16ded3a869f9690536314322f550ba45c3119f85f85dd689e2595cdd628c4f4b7ee1791f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b5ecd93a51f4a8789f77dd3e507fa4ea999327e4eae1345c98e86d11fa865e01a175488fc6e63227cb7457e8a8feea04023053322b76268924833de9c8a4e849dd1545bf78d2789552385d61617f3ac084b39bb57fee57216d80f924cebbe0dc7dac0302047c435bb500683066023100c98bf05a248cf402ea03126a59269608852484585823c0abba1d79dba405491e9adedb52da941cf77be9fc3a0c87f0bf02310089d68726e57cac04dec2c4d57db3d24613712394c76e3854cce48b0a6fab3ba68bce2e62409af61ff669ece27403db4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d0bc56755954a2aa7d607d810328d7d172fd79943f5668c1b10462ca30caf303cd11089590cc21c4886c242657c20a702304e1ad5569ae46f706b4e28033151efefb78b6f0888afb3fbc3c7a38f2ee4a7f9c31a8d85d6748f909149ae03ec5b4b360302047c435bb500683066023100abd109826ad6b345da4d86a42c73c051c7f18c5c4480d81ef8c741880273ce2f6836efe8ea047155a9b6fc4238c5db620231009b08464b51e17e5322bb4c0ce21df1b93e1d1d24739071b895870c7df28a8f45f4f1ab295e722a3163d4668a03d62ac90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230153f80fb24c16e64bfdb7b853f3ac144c3bfb65793b0b6a3b63038cd1f7701318a859b89abb550fb4737b29f3ae22fa302305d54fe54b97b6e142cf9e82e7e92892160dd98f486ad63505b158685ff12dfc4a2fbf274ed9baa822ed5b05ab426f76a0302047c435bb5006630640230377ce35dfd50ef8c3d81c484f4fc94c7506c6f24ce35c052781ceff11c279d3a6a229f3f33f1f08d366fae10ba008fcd02301c2cbf975064ef26249881f8e25e43c835d1e725161e4da7ddf8bae90dabd0e518554ddf0ae88af9246f57ff8f0506010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307a9674e95d663ddaf61ef9ba0fe3790c350d39b0254563da8c346e73a6454b3bedc22bdb78cf5a47506b67fa704bbcf9023100c15a3ac46e4a5e9ee1c081e7744f476d593b59b20e338cf32956ccae605cd5d999925b7bb11456bd46dd5bb67f05845d0302047c435bb500673065023100c7cd8c1ebcb28baa9bf6e4af269aadbb20d9bc658fa9397cc8271455f3207f184246fb645a07c17e2dbe3e90304c599402303a3bc0d62871cf9897b79b30f3b694ea793f025c16efefa18357acc9095f857f7fc477043bc5b38b00173fd8597c707b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087cfb2708acd4f11a534efb49b9bb7432d69e11454e50416e7210bb9950f3bca78a3b427094e9bcb37cdb1b24411206c023100f272b3ba6a95c16353c4d53d87fde5f75832c7ee245f50a3840e8cd710490ca6e912a177ec00a66fd5c9682a9c79296d0302047c435bb500673065023025ef89840ac8e9b75331ff6f78abf50a293a046ef4b938c93be6d8199085e8ea233075f71ff9d4aaa5f9d527bee4dce9023100e7c26aac19e11ba654b6339db14ca8fdd515a7caac0cdecb92c3152c0844a63d4031b1f0eb78b8eae1032bf5aec875720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b9e96d9b4930e08d9a990fed3f1c011914136adb45141d1356465ff4e613ac235230b41ceef08932b1834b299175acde02307e26787cd351fd5d8ec10d5c17fb591502adb776a8b543e4eebe0a11ea9125331e57ee4b93f146f24747f0ad7ac835040302047c435bb50067306502303a0a4bbba512301ffb990dfa7116f684483795f248336b1cad564f7c84785b023586063f2265b1c8139878acabcab33a023100ad5acd936ba9040ead3b638f4669189c4d88a6347832c070e400fc3dae3a8b1bf38795dae15f003fb76bf3d0f6cda1660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e1434fa36b9fabac2a9b095c475a99fcb7b07f4074864582465fd20197b213bb6066aef6943ec51dda307dbac6ee3ae002301e963759068b68830dfd1adbea47cb75c2773f7f8c107cfbb9f6023de9dda5326aa61052bf8dd2bfa105cb2cbe7abd920302047c435bb500673065023052a9dfb3f774a121680c0a7690be23039ac12297e29bf23865cdff8b6ffa15d0b4ab36e448ccabce09f17fbb9f2d0c6d02310087649c24fa0cc654030aeb48edef5daa42f95c8714cec6518549f819558f55a0725c5876977ddb54a93a16d7205a45df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020716b6ec6a2180cd47d4945757f3e339b60baf60a29d54808d081519c5d462cb762383f0f35bee1573a2fb7a077940d023100c2a44fe36ca3a41397395ba018a65317467021e96502883eb18502f2b353c343820574415a2825aacc87a6ca459a354a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032ce44e6156e8bb0248e19ddcb502b6b78e27b4720f784a4f2b58f55b7a342bbd40d6256af8d763df402ffb22cc9ad9802307825a709383924bcbf01a6c3dc3851f3a85b549a0c11f068e52f1919cb627dd84430d735db1d73747bef2c417ecb0ae60302047c435bb500683066023100ac3b38601b9a9e6638f1d403b9c0798e885b9761ae044dbeef42dc0c1f80a6b513617fca96d75a3dd38c9e6f64f96bd8023100ff285875b68d3f6f2d82dabf226c32ba45973474188ba2916856e4ec4dbc70a94f96e7b6566a40ffc02e8c7df29bfff20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310093235a79565e8db22e973b791c672ead2af42a2c6be56e8125ed80794fe14d9268682410f976e8d952ccebe3136b0e310231008f25c25ffcf7541f02ab05e03aee1b8d9d8924173e548ede354255ada95df91df5ec0c9e3fbeff91c359a23947928ed00302047c435bb500683066023100a9288fc91ebf75f2dc86729b403ce9f9588a0d6d9400db9eec6c61f8e56b09b20fcbc290fbd00522a9663bf879fdec4a023100f648a2eba7cf183cf38f6c7d6676ed6ea026a06b3e482c0fd4c1ce183c4de6986b87e0e58c0e799d67b4b5748f62e3c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cadb3f8ca753951a5e0873fba701b70bb58f965d5bdf6201a77be7ec2222304c20287a918b895dc10b9c96ddd86390110230797fb74fd5f517226af0f7ceeaae236baf9e1e1407417e971cc23898e9c13755b6c561ae0e5856f0d03aade7173bce3f0302047c435bb500673065023100f38e08e92e8c3f73a8714be4c0664b9bd914c2f609328b12891c3bfdf4f16f5b32e97904cbb38240a6e1ae20dcfce01302307510d97e4af6443c882577090ecb8e84736ef09d69e5492dabd1a14407ebb2ee85867b623beb48a91e434d74936a92660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec1c10590e2c2b52f8cba4c0bf2053046bde277006384fe3a50aa3ae74ba62bc81762f13affd3a8f61e79d934d9572f6023100e77ee580e265e4be31b2bdd937e4c52b2f611fc5aaa94d120deb1ebd5a91cff46baa9bd44e83227514d847bf582c52d20302047c435bb500663064023029e377a95758ead319db28f17b55274a314cee05db50132b9f6658a1c81fdf25da10e7490ff002612756b8b30e5a9ccf02301dec243a7316d492682b4bee4e0bafd024066977be88a5f297c876553b5fc2bf0875b0c5a169f92efb31a6ffc87ed4720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f3694ea452ceeaa38c7e7d807bbbb33d8514911b7d25c1fe8e3ee8f8df20ebb4ddf1442afd570297608a7f09d4c3e00a02301355a04ac203c84a0a55d82383ed94920531f2494451e28c7bb36bbcae9ec563f667333ff49c52a6c60d9db41556d3ad0302047c435bb500673065023100e7044a60c0a2273a61d27840ed332a6d8e7d349482a9bc055a518431a4d6d063d84c5e0f4a0295d796e4014fd28afb730230137e1209a0e8bfb3c6b141e24944026af6f7900fad6dd22deb8d502cbb541c088acb2f860ae484f94618fa5536d4e9dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023069c7e3e541c222bb05a68d4120064d30b0f9355a3993de8ed97a713740d84d430ce064ef029aeb5155b1aef9c689d68e023100bf67bcfc1bd0fc59131a7f91f9ffda80313ac953a41ca665eeea5ca39f6fc179cd2f4d9b7549fb114697982036cd73de0302047c435bb500663064023000eba53f5dfffc950aba6a4087453a458015c0093d6fd503077e16a6224c7f82d810f703a672a7bb21fb04e0ba07bbd7023062a0c0e37c1e1679459d9f83341f8f3472a50cb2a56e5130d72b7607db44da434d588aa47f712a6c494f0b2f0c0933bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ae7118fb737f23dca8492cc96d199372bdaa23d9e7ac3e2dfd4767e7ca82da6ebbe3319274697b9973aa133af46fd870230501584bb2fc3a29a3bae5021354495313b2613a79097fa99bd8e2cba5cb8dd3a0d88b8bb23f626f25577773d4e79d97f0302047c435bb5006730650231008030e93de775bdada33abaa02771d5d237898b3f902b1ace2d474586ab26e5aba5692bc977d91c54b077da583d344042023004c6241b48b35c52db951c2546c243a95823c4357321dfdbfb4f698762bcc3282300e52847cd27524a597a97c934dcb20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023016ed9edc8ca601067097426608248b2011cb6445f265c6b68cb71a09dbd62b6f0c0ca46cfe82e30405977717698a4e3d02307ac369cefe18cd0c771414f9780fec642777e0a4a08e8b306b98f830c35a33e8b03dcc5f5d2d69f1d4eb5c47cc017c770302047c435bb500683066023100da0f42c1d1259ca740ea2576ef38d6c79dc670c4cfaa31ff9387f0167120a8cc416e21685f0a491fb385e1306b5d1c8f023100fbbbfbd5ad16b5cd1e870f93b6018d216c2d4ab14f8ae545161a0374d6b179f075d41ae252fdd27954ee548ea4ef62b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302a1041894c44d4513cb16316f09e211772a16fbee44b925f4d6728824b1c388c2b56f8ffc177ebe1536f70843ae24df6023056d96e5dd8d940c2f3ba9bb87a8af8faae008459cf1a61dd45776981b3af7725d5080409061abce90a1945b4e0c186330302047c435bb500683066023100a8edf0bafe48cc1796276134b5f718fccaae8aed0b25818206bcacf4898bd73bd7de828e8eb70c932ac3e87fdc2a1859023100ccdc2519b4b844bc8e0c9b8616be4f528686465f25dde13835fc2ce11fad3ec3df6653e51aa4862b04ca8d1b0b0666e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a76689224565effc8b42bf3f3fcd9c01c58933dd301ee5045785f955692ed4c0eac5fdb33fb5d8408b82a6f7d5d0629023021941fbd681fb6e7920eeb1987a1d41465b59a0dbb75ae4e0ff4585784a468d8aede4cd4945fd89813787adfaa83e92e0302047c435bb5006730650230745ef6107b9ddac9b7691678f4c61dbf6139a41da7be589036bad6b264f021bacd8a714b003f948277a0292b494cc218023100fb8e45d19d4cf3da37177bd885f4c2765669965ecf21b6ca1710d7740db72593777e283c1e23a98a99910c4977a1c0d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051c950e9e76a6b3ec2e1ae060c647ea960c89242c62ec21c4ecb98f0ce178bf074e7ab2bd7f55ead174b2fc71169cc3c0230525fc50e76a264a9d561b26a82bea5231def5ca93746b1cfed999a5b6635230c10f9dbbd15795bd8c0e5578e2cb1238e0302047c435bb50067306502302d4ae70026f44420b3c26994f26dd1309326fd84609e967e30cdccf5d6e58e4c390e0a98bacb0df3beb1796dd42a1cdc023100bee59d926bc34e641fea3a5ab3ee48bda6b48983deee7bbd4a06c111f0d694c13eeba6906b38b8e4b93dcac2b30f914b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b5d7c84c29eb1a2a235804943cf2770573665fb4a0785c27cff22b69b5369ad83b3eb1012252bd4fe97333915bdf8e2002301a2fb492377baaa92ff329d87546280b829a0f37ffe5704d54d51d26c194b1d1314f40577671b23fb7cc5cb3d73789e70302047c435bb50066306402304225c6a6a37f765b009050b8bc2d2ccc315531bac9b5d2e2dfbda93bacaa3dcd472f337a003ef3adf976e8c997ffb95e02307cf8eecc37e2c134af4bac3b3572ed2322f3b4317e56587bfd73788bcc2699bb96450875ac3af17beeebadcf20109c4e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230442909818c66538ad0af0510b99d64e922145f3d4bd0dc89eb673bd4ff4d924dd864a29638a020a1c4a4e86025c470450230551586b0b1fe7e379fd7eeecd31985414ff64c62002205dde1b1d34b42584004da5d3be1edca18ce9c84a317b0b1b9170302047c435bb500673065023100c14abda86d2764eb396075e0feb38fc3e812e1b6de73cb5bace7d0bb22d890aed8f9565076994a3ddbc78fc75210c954023009e0d5ae301479f2c5718b07d3282e348d9d13d7fa59e9c0434f0b2bfd07d3f8b313114a706e94195368f6736be1de080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a685620b3919234e30e8cf5243f4c3d3aaf63337eedf4638bd6fbe4eb84018f032ea6d1abded107f05061adfa78190ad0230266a3da4e77b693389cddd02921731cde0cf81a0c026428da98d161119dca71910b8138ab35b6a0fe3ac98369cc21c460302047c435bb5006630640230733c662712468616edc5209eb4a21aa568e5c094d0b01f6ffe52f35d6b1e5853a08d58f72119aa6e05a82002d8f8e18d02304e8e607ba0e888738f27c0bc9f98d90f9209c993da2c596615c674ad0a36dfdb826aaea2890d197bcbe56fa3926413aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304dc873c8ad4775b2a5a21652642bd96b46888c256648f55b5e76d4e9bfd14cd381f1e3ef95de25b58120741dc0594d61023100808f4d0bdd4228e2ccaf9b07904eec3d7eb4f9714efdee76d967d3d04ff1ecd3a53859694fd202d067f82653921426fd0302047c435bb5006630640230652a9b1e421176dc8f601539cb88749b2424d3bd4d0ff307ebd94124d6f506a39cd14ca92a80200ebed73efc89969c0202300c54adac401d71b15a52042febba358468b6ec04b2c407c83fcf4df3ae954bba0024818f3a93f110f014f048db73cf5c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4dc5f8c7220a4f6ee3b3e0ada1080321c3622daee7353266ff7af08d8a9284c07b2eeb9d95e4db909be2f1c9e256c4a0230466cff92d6073c5173d6f4e58a9745e286fc21425e0fcc73e2b5e7844f6c46eb4393209fcd99fdf967de2961f25257be0302047c435bb500673065023100dbc158fec9a949314c0b660c01cd1e3b8a9c7b07b4397fd14e86428a7fec0c816b1ec8aba7324d3012efce80fe199b4502303ac28db2e0da7434434ee8c67f2e7fa1fdfde80521752dd2ebec96974a9cc304e46e9ed0a587b6bf9df111a5e7354b340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047781c119901b86e9b021aa93c83cd9bd71545525fc48848e07c895ed8534fc76a2a8de0bd0f5033a9d857c3e9cddc17023000be02a503d3701afde74fc8bf6c357c3e745dfe2570eca922ffa6c5a7c6f3a2b9a64aea7896c8ea5f4d798f0f6bf9d30302047c435bb5006730650230100c8560397948560dfafba76c8eee45a4f0b5fc6e091661618b449f350afbc3bbf1fa2be0d31a29e454c7ead01abff1023100a28b131b879f25ede828a7e75aaea13679914f3cefa19b411ed07c831005225d221cb9a74edf43a163f6b1d17de189d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100857b3fcc9f3bf36514ac9b1535586777b1e8fdf9bdd09939594feaf4b81d04df8a032798f8ee91c16985d00b113d1fb802303006ae9c425c74e4a92b58ca31c44caac0a8bfba15bcbcce41804442df804f955f1364a7a66b7e12b18857478fbb784c0302047c435bb500683066023100df6768593bfcd0b4f827585f24f8ba7765eb88c7eeae5a43636657b1e8ca37a9125fbc8d9d135d27690f560305f5cfc102310096983fab92c49143c422426392273de0a722b1fc85de07cdc9494ac2b2260a81ab8e27355de691b66f774a1f7f7d456e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa205c9c012461429d0531998d49977de0e310292a245d6b32070ef929953166b392af24b8addbf6215816528977b5ab023042eeec7d9c1323337842c6efc7cb97082974a91ff209f5c6f7a8361f88acdebe06f5000df6f2d10bea125622694638770302047c435bb500673065023054465c60d0c12b3629f0d2d38be0163267a77c628e07afd75e9568b1ed8903b7a70b195b14f21656606862989e553fa20231009ce42c70ca8a774921153b34e7e2de18d2d550b3224208b05aa14857179941f7d9261f954ca125240863ac9a693368e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ea760a4112ceca2d341f3a8921040d0c3ded79f926b1c675c55c789e386d98d508a5fcbad91c9a5019c8834b94370f2023043cb01a77ab445062ce95b0db8ec22d6c3420e2f29269bffb7a9aeb47438441b5c09742e6badde7a547c1d7d52366dc20302047c435bb5006830660231009d9db3a5ca62b7098c437f028db77418d66c5c5c19d100b8e96f0e44c3e893b7b6be238a35ad3b6766d9cccd161fef40023100f47ff9b70d9c602c69d287e49c9476f366dcd05f073933b8b630687f34c7f1ac0e4a6d399a5f8b66455071095e4699330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab88e59eba4d67b85168ba56a3ff95df60371c68c1f3dbfd0f5abad8f1626be86579337353a27303ebdf0ba5ce30a9eb023100ed77bc82708ad71295c3a0f9b177b994bd97e0f662bdba36dcccc210fcded47ad15fd6accc5f4a3fcea93e6554b149cf0302047c435bb500673065023050c105239f034346cc3ae28c5bbe0236ecc25d1c2e8ea7a8a0f312c87fc91920296afac11b56238c2c0ce498acbfd267023100c6c13f62bc0825a37a15e9436fdf30b821bd792cb4aa52f5afc40a240a6e6ddac29f2924f4cd7dc25ea3246dda5b18f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dd8a9dd0e8049d46d3246d52ab028686fea8acfcdca17da4539174f60b74f6d2cc9fd427c1ee5127707aac070e559e34023013556b69fdc800ad08776169527abbc29b3a3f90cfd89885b8e23d4215ed8ad0b954b34651ea8cdb22cf13630d975b780302047c435bb500683066023100cba68642eaccc2478fe7e45b67a4090398501ff45b4120d6929cfb8948d73f79535ab48415b48c9f553f531026709f30023100c1deb52ab385115257d9d19f8cef548bd52d36bc6665d3539e5010ee11b6850e6bedde87f2092a2e390047130909549c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a00acb1c56c4fe7d82b4f4702e3236308b87dc76b4670ee4ed324a9f257b168cc1362aa4bfbc9b0dd8436b9bc5f582b0231009c24f45e30bebf250fc89797cbe1dab21aae6933bd4b5b3eb32c15e85829053d214774ee10cd30d0efef6e2b85291db80302047c435bb50066306402303e1ae3967989cffa809a5d1df409247f4b16d2d1c671a16aff79e47633096c645b16820f2798cc255c7e092d5b1bad4002303b55ee329335a2c6ef6c96fca10ca6adfda6ef3063dc1f6bad8b9acce4c12206f6e360397e2fd05864d3d3c6862bedc70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023062db9106ea72767df9a66d9711c4995927528445ffc7f990ec1636bb42b8ccb84c94b3b4f6fd903ed88fe9572f8fdd5402310097abb5e10cacb0ef8930b4dce617a651ae5f00ee4e4c2a1d6373bfed58af3f25e5f523a92672a5fcfabeebe6ac9adb670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb72ca63b6ca4bcd44f20a87a4960cf57d20ac3e5a9042394f849fdaedb9cd5e77f5a609dab4c17fd6c3119b68f0a4dc0230492d4257180ba1a1afb9a8caed5c9ffa95e3753e1262fc27523ed44d4376e46799caa1d174d291a8aaf96af8307eb2c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f607e716a6cdb1bb23e1d2a0b425ef88a72e728b7d48c1dc11c980238817d29ec0b6e67daea2ecd29951615e2ffd45f0231009b3ee3c0d56ef49ca2ec273ba05bd4de6a0e97e0325d4135a571d0add738e35439522f82431c25a22dfb673d031865f80302047c435bb5006830660231009cf2119a0f7cfff96acbe777b520d77ce85c8d309094f5886f30004644912a37682a14ae582bf0e988426050f524da72023100d6dec016e8095135d693ee914fc2c40fbd086953fc59ec50efdaa3d51332bbd15fea692ede3a1eef13c7171f82402fce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f4fcd1288dcc60df1aeeb512bf8de5c697d89dd1a03369f453f1b09e08123122cb2410a656aecc453f8d9a68ed4098a023100a0dc394d0f0456d7c96b69575f43fc4527d96c80b1755d315845b13b90a921c8959b07f9ddacb0a58e44dd3924f7deac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230171f43258f1ede38c1ae3d18b05ef9329356877d558786038bb9ceb3216a37d1683736ab8305f7bec574c150137f96f6023100b954d71b96411a529bc83df43e44ff010acf3a902d73fc66a8d900469009321b2dc9e18491d989e62c0b446a5392eb040302047c435bb500673065023100a050f10f5761380dcaa45daa5bba801fc2b5d4efe2a119b12e6a2dc36ef7e30a0e982397411561e590583cd1cc34f8c4023062fd714624415b2f9a2deb70756a62409a2fa9e41260f17ed7c395d4331c4364bc6a76d84251073d9c6e0fa34bc2896a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bd7649a17cce911927344bddacbd469e7b0c56831b18e97a2d4eb8938c1dbe8577bc2846d07d3de8d900c724efee60b0231009d9ba62705dac6c69ae0b1c4351c8b1d4159732a4976fa4bf9db307676f4ef3c03f69f7584aa27533cff7140ff4334620302047c435bb50067306502305255ffe6292f6286bbf05cfe8c86190381171ec4846c501936274e75bb422fb279c3e4a8be94c711e9901d5ffd50531f023100ddfbda556b538400278ca132f2673fb5658990594df74d3d59335a5ded8e0c23fb2d02da46680252a0e1d32d814213650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c95fce6a13a1fd619a1d1ed77dd0229bb937e9139bae464093f3dfb73d69b8a0e682409200aeb52499b0de814106482602302245b52c4d7f30925f49000618363d5d215bef9ef9c402f8f085d70b5c68dec0749e7348b3060b4ac2fac6156203c8630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c6e8b8b08850ba4bb173f6e0e68a74b72a586f1c9dbe45dcd4dc62b9d5390e1b1e62f938a73f449beb6f264a2b4dcd9023100f11dfd05a410929322786bc6acb422b421217af59eb7c0efdbd98cbe2f0a0a806d2dde219e2943842b8d08896ff7b2300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302cf57c23568dd7a9087a7ab0072ff062aad5f4793d029d849c3c70491941a4eb5947e26d3a8bd943a11c465f271969bb02301aa83410972a6d8e50ca52b9c3839616588488ad1093e4163dd23e65719b9ca8f9e1ae6ca80f776c6905da0446efe6630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009cb3c929800ac2508864a946b807ba7cab615d6430f5197df497504b635e187ae94cf38ae38a553c33c43a5520f6fc8f023100a9e8d17525adf1708b392c5a33c80aaace198ad26f15348434c1d46938f0a1001321e3e8ba650abd3edbd2d246a74db30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cf19a1443ab6cf8709b4541662fedc7b239f1df5ad770e8fe2b5b4267c253a76fbed0d4521f4f3848482a4ac0725bbf20230588acd25b0183ab6b073c73cdfba07fccd0452ee75e0aec10e7b1da9fd37127ed592d3107834e754a561c20cd1bef9f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088706bfb7e462f2c7337249e645d3d7577953ffa7451e45cf2b4b5a4ba126a5d55eb82f66264f834116d77e4788ea6d302300a429a8e6176cf934a8d61278a6e714448c6618eddc41693c0caa082b450ddf8868b4884652b39f4cdd8a17fc75c212e0302047c435bb500683066023100c1c9edbbe4c83c463d395494b4b0b722c79bcc14a81c61a6ea8b3b417958118d221ced306c45738793deded5840ca35c023100e241909ec4911106a59ec4647910dd6211b34c618948f757aba49885ebee33c5efe83f18009a55350379b253398d46ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100effc33651f47ef2d4fbd14e3a4e6aaf7ba9e2744d7e8c5617210a1beac94190f44cf59c68085fab2b0aa4c77f4a46fc0023100d36012801335f9eee1641b1c185157073fff11509b88cecfe6ec1cee0b9a0698e4098582677a98704c9389cf40c250a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076ba8032e80f1b53f2f8c8ad14787f80c9c78e1b73b2effd57bfefbda7bc6de2365486053d1da799774ec4794b30a08a02304df842e240bbeb1dc4b8f910ed397cb68d1a854ba622cf6ee85455d966e4d53afb6440ee0757fe55adbe03dc77ebd6aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad0a5aac5be14a81b38dfa81bbe8c0dac16c2bda109caea656e30d1b4cce5638f650068c341e6a717333722df8b6d00802303c5fc2b127dc820aa193fb27a14210deb82fa392631ff3166e01e70f7c2fb498ab1d45dc6594b7220f294212ee4172910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a5918346e0a587111935274fdb49d414ea1a68eeedd7ce5d019da3fa6b5e01600c7a0ee093c36c9fec76cf1d3dde986c02306504ea61197dcccf2589657946ecde92060d8967465899053ff34030dd25096a4e2e6c03ab35bf1bb4da39a4f4393a940302047c435bb5006830660231008996151b242ca4ba64bec66f1f40c6af58b8210e5a4d2d3470f45b5946341f8273f6400e784523f1d48018d616a46122023100afed168a50cfcee20186cb123f4834220325d29d5cb6ce6ed20132c5b8245d58772b0a3cc1552ca2b036802d13c652810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aea21b53a1d2e032e5946adab09b9da1efcb2dbf84eb69151accb903e10279e02fee673851d3641356464a499abe3d0102306e3cedb0c5e564b6d2004bfffa4fe1f3e1098617fded781e0c5248aacb131199a5e216e70a0e801bfaa04b982b501c3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a479440e3635769f62b6cacfd7d755025d885619107a6899c3e2a6ba5581774af27d45fa9da71fc222fe3dea7b1659a023100f64be9106e653bc8e5028354f8ec9fc16ec8d7bf4b1e64b97e0ac7ef90b9c07d9661be984610b09889cd965e6441c66f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304197bb68d229cf20ff9036511ee523ee3c2b8156791f6f4ec7d19f9cf5ddae6640abe6496f49bab69c01e4b552a729f302302c190662036b9d945f2e4ca7d71a881f4cf2f5635ef4e509461fb4bde9389c2221063ac8776675878903940080ca86ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300aaacd902778c7b8ab47939c82e41e50c0969323ef031ac90cc176e13c96c5514b20d6086086118a5de3396089ba3efc023033009dc7e911cf567b3adf63da9618432c35d441bcce2fe50414813b3df4a10266e293346fd33df9adfb2d8a215576240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230769497f6e63dcd6beef7478689d93f321ca54a706551c2dbfb479ae211ad235949541463583d3469c8dae8e94d2bcc3a023032d3f962b706ed543c9e0cf777678063fac1390ea0dd9b99e9f52c9b9093875c8a1aa751d1df4ed2cff9f3725366ad750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c70df032b271eb90d72bff07eca3f1d46b3d081443fd1ac3ef2ba955adfb2c7e282201640e48ec5d0d3ff523b2cb6522023100a82fcfa1ccea1a143f52b80bacddd057e0011ff7d2954430bc0678f6e8a75c08655ad83c7120a92677c295eb826ec45e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023073e8427b28fe121b317982c1653368360181871bf401d40a77acde03065f62f617d5f31f39b278d8c401b46a1a0ed28302303d397cfc686fa8f18d01da10f7bba144130d2836c587e936f96cd884cc61e3a47e6c33688acf7e9766ec576b3b0b87880302047c435bb500673065023100882b6fe4b5f56c1e861151a088ce41b76f2218379c84340cf75437c481ded00951d58465461e834f8dfea1ff02f116b302300bb4d04ae7bb0b0ab79fdaecebbdaad0b96ffddbe115cd057b6c38f8a83c7cc8df7c0eabe33113f2de80b310f8a3f8810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6185e4861ca45b59f9dfe978f7a9d58bcf3832eaa97b9a45508f9d203deb9cded77478b1ba6b08d3fdb1c8a732004b2023100b3d30724943c00de73646be827db08050ef51617f2ddf6a521c5b428503c355dcc21db71bcefb3bb7ac0a3962aaf4db20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e4281e45ae82c10666ddf0faec75d83c138cdd0d334ca30c0733f742ef8db07104e089bda07264c9daf45a6bbd5e25b02310082bb3334efd399b3e4e7fbaf020e04886dc82d380b0465b9ee3874e51de714d7e9171e7cb0a578f0e3d19aceab173f050302047c435bb500673065023100ba5222d0ee657c29199b9a4a9eeed31f8566d160c71defcf54d4c9ceb0f4c9343ec7acf784a0eda0e130d8ad4a290b1f023075242c5a965a7ef3181b1a1775011d4b8816186718601abe9cb88f4cfd1f58ceb76a25cb83fc8e17d1f4d0c79382525c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230130b05b5f326f04600c6678b77d8e5414a08c5e08c1966dc19be36ac560e58443998e58b134eebdc11867fe5fd33908802307bc1be38ed94e8e9c21565d7f393a5093a25a7015609aacbfd0e21b7dbc26d022052f6ac9bfb6191b18b7cb7f4d126740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230761456ac017a3509a2400c8fa6197317fcddd8a3295fc72650cddb64265517635e03bf0399f0695fcb9fdffc949e82b9023022ae22ec8fbddcec319e396f7c2964b7ddbe1e3b7da67cf838045eca4c699cdd7c172904291c5c47e27ad1d8601da09b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230058ed9eb42b1de02d0184be3b97534cc4ac3aaec391766d25304e5d99343a604395c56d02e6791a548b3acc92400b7b802303da33809b6eeb709c71ef167e980965589428bc9122672aa8846a08b5853004a1591c8bbd3cce0b9a91747c839c524390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ffd153e626ee4f61fcd036bbcd5749631852c50f01fa875520138429d2f8b611e94e604c80a225fc8a0e541e4c7784d023057d6e88811e213542eafafc22ce5d4a041715b5371cf328ed0f3dedc167bb643f1a5e61b7cee13c17b1417db72a3f9a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e20f53aab12879462a16ffe718ace0605c30251669434e99cd9b5851b0face34aa066ad011573122ef401580324e876f023100f7e77f0247c3e907f97d80b4c25184d39c5b6c825a43eb2266109ce4191022c90e4fe7e5d95ff6952e28e5efdbf390080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307aad740014244d006badc6b1a4fb2f3a97eea0c4703e0bc2368f51abd69be30859f35d3ccb1da7c3563b2ce6624e8d3202302940f71311f4a7df98e73273996d9d5c2e8e19f7d85cd1093ab47de4e26595f115293a75101ed2d8ac13eceddd2ef6830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301815b8ee46cca90fdc6bb53eefb42c9c5f7bfe7221bb2c23ddb2a3f1d07aec532ef14a1191926ccd59d6fad9b1333112023056c7179d6951566c9e0a41a7642585c1e04be04c4f5398f177dfc1e17b8fa672673f4afc3745a09426de29b84fbffe1d0302047c435bb5006730650230084206c354d2c7ffc7865fddebe644e5ebdf8988cc7b63d9754e7574d52d87839a0336ed06e5fafcde7f9942bd983bc6023100a63057e91455203aae314c1114bc48fa7a3f2cdc5cf64cfbf696325b07da9f826f3d8ef49868d7dc50ff0ff3d0a5d9660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7189869b8df8608899e70df19e342c01cd52056d30ba4cac7d6d60f6005b1f3b4777d4879ccc6f2b1f61849f3575fbb02302a509538a51fbe53e2171d0d64cf6a6e33b11743f61b73164d328b9611543b441ff4fb340ac974d1f8d55f3971d96bc80302047c435bb500673065023100f364df1d0070e401156a0f1c043cc458cc5693baaee4f83bdff49ae2e73af21b6566761ef9d97853e7795a89d8f9568302300be911d80a8929dc8998aad934baee10dced605dab93d845dac2dc05b1eb45233748bc17d4be35b85c4cbd2ee6ea521f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100968aacfa670b0eb65f991d0d4c73179f9b1b29a7bb8839c1569a7ba8b11d74db811143c2dc93b0186526d869e2ffbd49023049ce0f5a905e2b67cf3b9336da4c5321438555c6e76ece7efe3d7892e16660e85e0b7b912e828ef7cb301c47117faaaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080c19a1a0b72a40c046760d6449448e0c91bd6df0d1292911f5bb511f208ae78e1cfa367a35e77980a45680ed65197b0023100f3eb667ed3592004cb927b248d098c890009a58880d92f5df74531aa6425b9cd486b0ede0ccb06aa4a6d726cd2fdc4900302047c435bb500663064023070ace7f9cba7ac7679e3c3600204f2d7158c8b8f021b3d988b273c3133637f2dbfecce1084bc5db4d78fc6fb95d64a4e02305e371c28e868890f793ab6d3197ce68ddd788373b03e5bb7a965e6744887191ab03e63daf3a20bd3326fd4b0b4ea239b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb54655c66fb22bbae529d86e950f860b13ba595da9843495925866aca5903e8d6308367d90eda49f6fbcdb37c3cbc6a0230421f2853c6f02411c02466cdd4ff55c9e1eb3caf479472811c44c6e837c45436a6c141954f0387042d7c9edc5af8b8490302047c435bb500683066023100c461d47528c6809518575f5ac0ee858452f8d9ce4cf91cf74f3d2464438f7e6df1f228fbcfb671e4c5ee40c38ee9689a023100a90622f01a4c2750039507d3d84586d36f06094e0d0b4ffdb9921798c9805a6697aa646b416661465f45aa040b90a9a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304d93281054c68546edf34777a9e7cda179487b939a5d97251b618b44936c1363a1cf2cc5a290fa98ddfb577ac24edc800230665fb7ee9869e6555f17b39bb829949b1bf08efee26c21c97667d020d133b8409ab01fa65c51edf4c3a1c24fccbbdceb0302047c435bb50066306402301dad5e4f98f55277434000f052271239007b5e6c72644ee46ff69c971f0154f485dc055fdb1ec03e782b879a9e17cf460230593e7477c16db60c57b738ac444bb5ba037508b28b3b2408d744e653a46b6899ad613d2631d9a9f8b2c4f56e6bce2f560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093c5f983c8712e9a0c1eba896312a1e5f143940057cd8f4d9d96bf30feacb49e7cfeb719d8e9862e6c65fbff8665bec2023055452782a12e06a74c2f031429b8615f8ef23a790ae4403bef99ac10205153704d57d899fb7a3f4232182648d8645ba00302047c435bb500673065023100e97b2c9eb9754629001b4bbb41e70ba1329d98121324131b7de8137f7ad74429bef06667c4134c3a1d69176630d58fbc0230096b7faeb75fc778fba4dd934f8fc1ab5411e255ec9035bd7db2e1e3fc1bfc702e1b45eeb0bc5a015d20a7262effecc70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023038696f5f1e18ca2a6dbcbe9a377b96a68d0d6b41662fbe795ee498c77b27ba362c67600fc581065e498ab0cc8253ceec023100b21350981a0ee03a04c8eebc2325222039643178f8dce6a11285b4aa030c71b6d0f6d83a73ad6a0848b312231e9a19ac0302047c435bb5006630640230330300449fe6b161139aad5489ba82183b77ed7501e70f5d79a435a291a182931f4e3ca6d0cd7ae5bd88bc9564212cda02301dc0a72812e8901b7bc8c536a2e5e815ee31bb439f118a4fff008c9566778dae297b19bb16c023a6d3fffff660015c040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b981457b868781f41054aa5e90e924cbd08a2d7742fd817db18ee53e2911f0bb1839ea0345907d80300abfec16471bd023100adeb7543c3527132c21c4264404bf9c7429be012c9107a0818b389febf8bbe8ddd83a0d4a5cf26a0de5e9fccc13e9b010302047c435bb50067306502303f4babaababd9d14037d9553b8f1241c54f4488210ff819d6f298fb4a61a0c3e8078ecae442f4ea931e2da795bfb0503023100ddde1957fb3ebb62bbbf7dd81d06a79ec338ceb69066c94c648ce6fa156716cddf7f9961d9b7727e8bc61c693a44c7170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa7ead7281006b5e66396e2b0c17f99b94a4a811266f4dd55bec20983efd4d51d96a38d1f0226f39196bc76e6fd3c404023021b1a4ec63c9ef091bbdc0a1259ecbed6806c85656fc4afd664f949892698dd0c02dffd0434c32c5afc57e2fd56f731a0302047c435bb50067306502301333f17c82458ff06b0c3cf6dbceadc6b18e4c419c000a4d0dfab389cbb308562cc1d0c1b94f07a8623f8d4b773d45c90231008e0569a74044a023e1e0294e217f7d26f95b280f355514715f385826e31ed2d002a0f7e5177ed58f33c09a6318037c400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ceed9860bdd2cf63a77580efc0bda51ac93040a986bd00f0d7bbb3a08dfccb61462a7f2fabb44a83aa0a5f7d5b4f925b0230313ccc8b564d6c6b0161d8a72b66625618f171dacbdbc3a1503326cda65143f7e467a09e2d9ff502ed4fe0240d0bb1780302047c435bb50068306602310096fc00641bf0e7d662c02e3e5b2bde90d7f9ca1913cb21b379a3a2a1dbb4424287b8ec963982caadcc79a5315d158329023100820dda251e6768f0f4c40d596be05bef832d49861470e380f7e43bce8cd31769b10e934c9908fde0ca8afef7352110a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b3e870f62b641b87ef9e609bbb7acd2843be78fa9ed9e0008ea1b93c1a6e392ce0217dc4b8b785dd8b6fefa9cef7d01d02307446183acb4886f90ee90822215ccd9afdaa7384d1d2b08da702f75497f18f79e7b057934baaeb02795638f988b26b480302047c435bb5006730650231008a1ebfe87140f1e041a774ae01a0a2a2ff2b36829b5bfa8b80c6a4aa4091f7aa3c9b0fadd7f2e9c4802dcf42e9ced5cd023022db0de779bc28b368f2b95bb5587bc8209d8d810ea1060af7728c520d098d1032c5ece44812a4242e956c0768ef4cb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307c087d3c1b0f1c7e7bae7c53909d7c32b7ba23d1dbf111b2e133dd58d8fec8f8656a1334b138a423dec9f8f932df401b023041ed831e73f85484b23a71a712ac8020ac6cfc2448901b1502827f37d99b71ed4872028c230096317f8e927dc0a12d600302047c435bb50066306402302f49c6940a0fd2190609d3a6f217c55f4831211279fa5456ea8caad3576c540ff19fcfac95e82be6793cd1e1e7ce8acf023007533eed6e4c82a5524683ee53d0829a57d644e02adcd4d06e228b758855150a58d30879e6031d72d1a591ac078f893e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7ef99d89668629a9d586b7b4c2feb15d9ca17e382411387e94f2595920e1e4dbbc835c3f54574d7d3442d28632c985b023100b70a8f517c1f1767a8fe633385991abd4ab3ec1afbeab00fffdd85cc1d0c491b5b9d71cc2de7e5015dead84af2d23a730302047c435bb50066306402305ac9d7fbc17b988a4fedaa26d4da244a6f5466c900bad5ce0ec0b99c94bf241d5195e9bfe6523eb92f0b39e09b362f1c02307f7d7e63d83fb6d8d875b751bd1997b3106d94f798158d3aa5caed53b59e0268bf41c0668bf1d8bedfeecdef7eeb77580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d8eb5379209befc2a1d90c3a81ad8defa66f331c05a4a89c639875bfd70ecddf12c568ad3904e39d5094829577cef5910230266b342d3d23936c9985e287b6d91d57703a174bf0fab41e705feb45272bfa3dad309eb9cb546335f15ce15cb500fcd90302047c435bb500663064023021318706a50ed4283366f017ab95ea6c4eda9f5e4b07d6d5b48bad3226693f2840c71872d222c44989ecb3685dec6e5f023023f5c9924c0a2b6b08fd9d1fd34988c184ee206d4aa85f19319cc3dc69b5379da20005baaeea8f80364ec40074d75bcf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100978fbf4396918bf2ca16f0011421dab5fe14b4b4b9c50336165cf43009a01fdbc5e9373125c758a46f1c5d9bc8215d030231008909e482b9fb45fd6ad9ffbad85f8369eb081bf9d53dd069dec5f895805e68e175eb65e6c5be23e9ff4e4071e95312a70302047c435bb500673065023024cc407b0422ee2d7a167f85c3cf6286f48063c5e310d717dbbff26806832bd4e327fdeed1e2df0ff5d5149ecddba2330231009f97f4eba1b31b5d70d0fc976fe089493998a455cf8daba543957912a6fca6f5221cadbf826ec1936f8d4db196c263080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e98b50a0d32cb8be2479a39c7effaaa6bfc02f7385004b359dccdf77f89189799e44f1425f70c7033391ef42463a8cb023100a2279621dfda00b90096dad8c58357b5c5cd21dfee60719762058087b1b1940195ce8b1a426523cb31aee36727f66a120302047c435bb5006730650231009feeb62b32d9de1503585dd85e9a19c1fdfc980e1117f2f50a12179cea4e9166c7275f6b59746db59dfcb56edcef040802301475d5b4005e44d2a791ba31ca8026614992f382cb0b78ec7823cdd7659b7c0dff9574355bdb34100cd0b5bd8ba955ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300a1183380b710fb90ccb03efb6a6195af0a3891c4d9437b70a361e0b5d49a9b5bb0849d874139ddc63d7a058a859ceed0231009280daacdd5b444a8bb587eca457e42c074de2dbab89076fd0eb4c24e68051d68549c4908229d0d80c45894d409d04ea0302047c435bb50067306502301e9181b7d8b9e8826807e06e50652878b03872d7aa8fac70a20cffb6321eafa653ff644d0e9354580eeb799a3618ce42023100b811b7401f69244ccfe386b48a94a1de4fce88f47756883161d4cf443fe40af0ee702aa63879ba3425657f1d8b17999f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a6ce0f0a48b5ca7a1180cdff8da683a6e1377fc7ebecb59b6d566ef8e2de160b037e605bf8cdf49beb6efd8d24fc93e02304b2ad41a28ce41285e3986a0a6fa69cde6479236d4d2ba287b704161387be3d4d23a13715f659f6f3a0e10f6dc29f3740302047c435bb5006830660231008411e7b5bcc8f7b079c48b9d17625a971be360df89695b70f4860b34e584b598d306e83b0a22906546ee633b46ddaea30231009e32a104c669fd4ab320e263feb501af0bd1710b5b340953de136f584b9276c05084edf2122e3525b0a3e744a4a03d790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302026dca07b560060d0a13bc1342712509c47d07436db80edecf213623be6ed94819889a16cce4445e9f475e5bd028c93023100c78d51d7b309ed089d8cb762afeb749fccdb966267c3e80df60cf04d5eb3baa00e9c21672fa406b5c8d7d66a933034eb0302047c435bb5006830660231009557808989ff48d03e6e06ac23452154b3a96c2e5e486fb8055b6aca12e7343b3f100a7edce5835844dd032244d2a7fd023100a10bbeace088712bcacdc07608facfc401a938cc63b2c27ef602d2c79ebe5821d929994db84a7fed891767c3d717a93d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c8f5f06196bf299e579cb9b99de03592c5b5174787ef4a385935072811cffb793022125c9fe46c68ea3fc3c7b7356aa7023047a524c52a841b172e84da80bdc1f02953c971dc671b3c145a86cb627bcc7e117ddcc880c1d04164668270adcf9693e50302047c435bb50066306402301e71b777af9d9e0205c7a038ca26ff8ab7fafd728c1a7d87ed3d398dfd616fbea1ec200076b331b85ba0ed9cb694704e0230518fc0b53b5560b351cc60cc0a026291007223f06a47a3bc7d769e8ef700c7928cc6adae1003f3c4122e0db48213c0630302047c435bb500673065023100c52a121cf1cac5f77c8bbe605929700d85d9e5223976183b293b0b4ab723b026ebd50d6b87c28c19ce9135296708096f02302e44c10bd3e5dd5c9acdcf00c622d96cdc7f7dff1549f1fcc21615e71dbe4910cf47eb5b0488c038bd97ac6bf5c8966c0302047c435bb500663064023057da013e90a7baf0b0c2c532f7490e86134b43817fe0956f6eba9a6e1f77bc0e1b4c304eba14d9e5b6c99ead7343b2e2023007a508b22cc4e155246833bd58d7eedcd4889583ada001a856fc6acfd80cbc48f35a1c2e788bdba8b3f376c73a501fae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100955c7fb423ec3941c7a2096f8c412de10bc0006e6b7bba4a9d08b0782f711dee3f56852c059d78b2f619664c02a7cb4d0230481d266dab9f9de3b0037a1bac6639102de1064adea075f19d9f336d2cbf3abb99f658bdde8761ec0289b3c664a6a0d10302047c435bb50067306502310098b9ba77262e1521f99bbf7d718ea678ddd7d9f966636f10fd40da792a87ede9e7529689133916edd4b615d73c80fb4c0230718fe6074814ffebbc15924f031e4ae37573ff2d5daeec0ee177b148663d1e4660e660da99e7c226d45210b51594f2e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008db469996f1b32ce8a9a126d4b1c0c420787dd9c025ea510f79f8eb48676b5cb08cd656f10a091b22761b8b98b0a26320231009049034a04dc8df5c947f176c7096a74072fe1b9e6f72f3d5be6a90c4c351e6b02713884be8f2b63942bc3440ef896250302047c435bb500673065023100a2e10ebf09b93cc706e06839ad4f2d51502571972f465d017e631478162718320078b3a0a36cb608a8e69019853db67a02301bef6a71cbe45775d862dafb33f8b2073d9198c9d49da4e88c900a363116a195b87cf750b485713cb7bc038037d6a3b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230056850912e15da50b7becb29bb144ca36de27b9da1b67b5842dae9a69303381ca4fb9a370508f3ffd7e79e6e3ac67d8c023100c73648e4df675d765fa3fdd395ea07982f16a811d28300232e63ff45faefd698d4c7ca454e6e51708621f81e2f52c1a60302047c435bb500673065023100863b524e1d16ec2cf7684aea14f558f988591916d5bc93baa08e74dde5995397725d6a1b7129a0e64de28e1873ce88bc02305dbf53c773bd1660c30c0f844510553664b23c284e86dd9bf622edf4dfc7264a4d505c4e76143563fba49ded3790deed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1b1fc14ed2239aa8f5eb6a281e7c6e6507212e4bc1c6b5b85f7eeb8877a8c92ebe43a2161dd9187d8e60a74916ce66302305186932cff2ef0266f51cd27c25a2b84e0fc68ff88d495262474480da30b8e24aaaa02ae497a2fabb286dd39b9eccd610302047c435bb500673065023100e00c175f75e40979ffbf942b62709a569fdbc0bce75875a1dc39ffb7755d5606be46362fe7632e9588cd910ccc504c8c023045576c18fe360e770af30d115ae0a29854b839a2d223b0ecb87af4c23ec50ee3df290cd319a984c22d9796811c4eb3a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dfda3edbd2cf886e79404526fbc56e5eb1f32bdd5e0bb151e80dc050aacb1019ce53f3ee95edc3966e3188b0aeaba413023100f3bb802be38f66dd29849a9aeb16e7cce2ec7c262b1a1eef8dbe6ce500c959e3044b96a5ecd036b20d203c7338c74bae0302047c435bb500673065023100a05aea5a46235430ec85e34f0b3e0dee2cb0fda4f29c2c000ea03b102c9e47269a37481dab9d756d2df98978a54b71c502301ead4d3accda7d8edfb20dfa1b495456ce2a64f05b9c258609c5a625481e3899b28b9a7eedc53bee65969fd3a123ce0b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a1fb303b358733d17e22f151d0608f2185ee809fe15b11c0bba8f24199df3a7246cae5a12a55f15888c00ef056f867b023100db553317e4ebd27d7a9756aeee125b962f6f1c70659a22062972d082f36c2fd96c028849f0456d50b2480adc6ed2bcb70302047c435bb500673065023100ca159927ecc4d518b0e78a8d067613c2ec85956dc29be43c8732323d3d4d21fd6538fa3451893bb8021985f83abc282202301a05e12c4a23f78e930f058ed993bb618c2de81bb5b24eedefc56cf601dc83654cb2e9f4d6243f66c3639120042f27130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300a979bd1787cbb7f08698899f81b54e8b6e06e621ef97c3cf5244936484ef7484b28700b93315a789db2876598203ea6023100c41ebeddb178f7be98250852f4ee9db8185be25c76460d241c6279ef513f89df4140dff2851bc6abb73e7fef1416b4790302047c435bb5006830660231009328111b7c99a71bbad0ec2645362ebf842007829f51bcbca6aea1937e013f62e8ccc0009f597537b8cec38caedbe283023100fbc7e9e73339b459f2df873ea26a442edf2c0c996fe3c2dc634b1bad9d93aad0db1c23e4145b6aa9302b803d73f836240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008516f4d592aa279ca5a940116a6d9f75f93580ec8808f8ab9f521f17b456d0dfeb6ce68891715b6b54c22f37d44bb311023003a9ed6a4d36daceadef3e1af4fd0427b48c0df8b3a7f5929be71efa2df36776f44ad76a62ae1381394d2b8f6ab4effd0302047c435bb500683066023100fafd43cb6287e4f0766cd13e405ec9f0c5583a6f7135460e24b38ef477ce2f6bb622523a35dc678fc137e9864bb235ba023100a48cd629c396d0f98cc380895680482b639e5311c64431a23336b760410712d2802909147c214d448e3128c5e1865ed70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040cc900e5798f086d2f19e49634cb3abd7df4113b5b444bd329666841de4d88ecf2cc62511f98559a6b033fd39d0c71e023100b709126cbbdefac4de15d316543952b7cf98333a954279665d2d8f9e43bffa8be0624d75fc69e48f30215a1ae66c97370302047c435bb500683066023100b7c2c73e659ab02f1e6fe7b820791e431e41ab1ce10e50cc1a7d388b5a72359e3cdaf236e9cf227909af92f802bf9241023100ca66fceaea59296098940ae4f76dac2c4f56acb7a2a6b322b241084a0cdee8f528e2299eb7dd05b67f2e8296f100593a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ba100b3556f24eb41cde8b99848354831eb15e48156c2e0303299cdc62fc356361c23d212578e6a9f9bf45f26bd8c75702300219e34fd99acf80b4af7e15d9bb5fc16310181fa1b6f1a8d3f33d4e3ca40e40e027560a33ec0bd9836c2854c2c5c1fe0302047c435bb500673065023100853f014af0e8284f4f720d507b5e2055c52403814e152c83687d7d4caa03a1cd7126a3a01e1b0969831f641b9092b7ce0230113c50b511c73120ee9bef1d02a1e5211386c5b0bc5608512dc762756804ac392f9b55515f24a6c948c597a8c31284b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230774185df1045369ec5bb4229a465743474fc671e932733cd1d84e1fb4b2957c63c07de8140b34e3df303156eb71cf11002300cb1b736f652a7e3c6c6ae3876e4f2c15793ea9c391fb6c3535e3de13068a98cc1b7eb42abd80ddd32e507470ffd33360302047c435bb500683066023100d69e048b49fb360e1cb42a5929580327050af046dcf09fa0f0cc5cf4ed0c3320032aae62d54ac98b1366acaedd41857f023100b34d13dd1db5f138ba9bd9d1a1524e16b3f7d6df127be61f41a5b7e6dbb95c302047bb939bbb19f3453e194e9b9d6b280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230200a89c2518f59021d131828e275b17603db95ec5cf33af26555ff53e56a0bb2c9cb91a682cf96850805eed3764a48a5023100f2dcd56427ffca7c722acfa325f1c2a3b3cb773a57dae3a8ef8a145060930c400a620c36d1c6686e4981664e312ffc090302047c435bb500683066023100ec77605339aa067cf83e6fec5bc797def4a10fc42e08ae995fe10aed402d95f4dd33262d6d1d7047e315d36c61e89dc50231009a1bb0a1b57facc62e73696ba77f669fd023d84b5583a62659401dbcf0c1f3333c818101d9f1091211fc340e18ab30210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307007905961126fea5901b768d2c48d2e2d327041d9763bad7eb8fee40eec50d9f400dc642770177065006b96496f1edf02306a0f9098e47c40eff709749c6ff7be85eb3c205bee44b6aecb977d3a22fcde13408bf2f192e3b5c574bc559a7050e7fa0302047c435bb500673065023053df23691dc716cb4995cc2be8b3dadfe6513231f1eb046bc7d3aff781f6d7bd41deaaf4a657d30da1314940b64fd6e002310094c6b78a6b2c052dd5ca12d5b704231cc746d20d44cd4fbd85b5505a060e7be0475ebd147b2a22624bb6f63acdd134fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302aa8c5400fc6bea2060aefbc303704f839de49425bcd7bafb75df63a64495ee6909056c1c5c6365334311fd8a471883102304c80364ae7c7d36aa5ced80e11de5a4ef6466c5717341775d48bb79304c7b1354210fa4a2ec7899bee6461879362534e0302047c435bb500683066023100e99321f9adc6f3a76d6b874db39bf133e252bc6891961f234dd4c29f0e00dd5c5b949b455e24731970f6d21f6a78f7fc023100cfba52e554a2fa7e2a44658bb13c0b1e3c9d856cf1c46786c41b0f1626c18b4f75dcd064272b8c744d6adf009048d50a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c8a7cf00f58552f1193f7e83109a4c2d42c4b234c9d2a5b5e4028a73bb7ca5032f16c003183711a76e25370438037b7c0230233201b706946e5e28198d010ed59147248f8f4d4b678757dcf7dc91ff2089017085ddb560ee8c6aeb04e5417c94c4080302047c435bb500673065023010122968a044e27c589d2d6a6d5e13cabd19a410c8352ff6d47223e1eb29e966fa73b924d507004082ec9bebf9000ef6023100d3e81549aa3e0d7227ba903e7214f5f71cd3b0e1d97d2a4d9b7be5e81b7bc8eb7eeb3445907ae7a04b93cd7d5dbce56d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301faba3d3186e0cb36f70b9608210a4846395ffc19e45eda0aa25e6dd2c241951abadb7acd86332a4c87c3727a52b8828023066d5f4591ab3bacd5f3c7c74130f2b9862156e1fa3dd426533d7f579709a7e19bfe3c960b2b3d3bd7b1d4a7b0f53e4130302047c435bb500683066023100e38f2a31d57699a1daf1f4fb92a78f81b8963475cf78ec6a235bec6cd7b2e25054ce28075339e4ddb37813a3a0bb0442023100bc38ad775dd431c1c000f72873782f8bfa040ed748037bdef2c1043306f617845598d720396cb13cb78b580429644f810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6d64eec9abb287c094fd8e79767f81b4ebfc0f632482b68f0f5a42d47aed5f477a31ecac5e47b1a9c35adcd080871110230463486fc8e17e08a05996d01839583b9afa5a1e29a58af1c359593ac0ea33d565b985e3f85d325ea577f06aca83dd2e20302047c435bb500683066023100a699915cb60bce763b6f2bb83787b5542816b86f4a412b811edb1db416c9c1ed8b5b948a768bcfc59f5338d075902ac5023100e6b57206cfeac88e15d4860c20ef5be9da32b21cc9abf69347d2be4419eb946c3e86e9d971e7839198eda1d1e12bd0ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ec31fcec17d42f238c8631c9d2f54852122eefe24368988fc9f21c71a4889184d5f5656dc7696a0774db649cee3780402306402d44d1d9874967bf4a9e80c78ddabcb1cee0081f880118f4cbb4151e767aecc1c31b1acd3198174d62ef6431ce0410302047c435bb500673065023100a97bf9118d7c42554b73af34a414470720bd7b726cb403f2ed0c99feb5fc7a46e80b3c2a63fe80523965a682d0e9f18802302ba42c07bd3f5a32627f27c8bb7c43578aeecb1ddbbd2c092fd33b9ac4935a0cd509e13c13b0f57be9befcc2be260ccb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230273b3084e9d7cf4fce759b4a3cb46601bc3e22af33215f74ff4c29566ceec799c25c875d4fa52dcc2a1d95a21c528aea023039032b3a3af3b84412af3c0b47dc1ae512238d2c1cde76b86f984906837430c38e7c7db876ccebb685c25c01c62804570302047c435bb500673065023100cbdaa8a645f895e1163fa6adc885073530a5f89a2336446a5253fd6b2332e9421becc89afb702371786d1f2d00b4ceba02307e56d036accee473787724f97251a7da0168fb2495bc25351cfaf1c9dd8938fcd0940804fcc012c035bab5d3c5e7eb110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023031444ffed1c583ff99e54f8e697b2c28c103c80001466345b5cb92f9160de0bdeffc5bba0a2fa7a824efc1e507fe38b702310093478049a33ace158b4de642c7ac2599558d85d1835a82acff51b42b932ecae3a1fa3738ce9a1bbefc80ba488390fae70302047c435bb500673065023034699114d131bb07c0289e04ff1bcf2b7047642b4fc65fcfc8959c75bf68786ca23c51d96d34f1fe5e836932e4d03c8f023100db0567e5e7f1249f1bbee0f0ad97fb28fde99db20ff4a9a1d002725e6bab94199b7c89d3d945e1489cb0508b08dbbfe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310081141499f1f76dbaccbf3159df37a0ebd747f32b020ec0607d002efe985b408328277ac2be7ea603ad1f62729320faa902303619ed770d65610170ce1b8d6b88e38d6bc76738e55551d395c5fa6bf8ba8879c2431d19b20708b7d798a6f95aae45170302047c435bb500683066023100edb254e1b2dd182a7e00be949f139c3e380f27ac0cb447b89078144c07021c72d6af9e8eeb66a53af912d893e0d0dce2023100875c171bc250227391f4af4dd543313aa738d2da24b1a9bcdd91e352c1ecfe7821d84e18faa935ffda483af5f35511c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087f5969dccf4790aeb257aefafb6a9d850b19fafd634dda34d2a1500fd7de972449285d8d2ed1b1c639221ebb532d290023100bacdb64ca5e26cddfc417c863b6119cf85c81a6ee974c0ca58c658c03d95f0b8f4c6f30dd645dc58086d0d984a7157b30302047c435bb500673065023100a6ef90cf49994787a6f8d2adc998bc799fa77949867735a8acc738a9e336f19024f30cd6f628f0ff30633e7da0a94b84023020835c6dbbd04779c7d329ec0a029abe34ffcd38609f62dc963d321230b8ac5371861be711b3b9786eb1d73bdbdceb9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de3c42e0e400ec9c27e9794d70f6709669d4b8a02034313ba286bf2603799777f52ef9904d3ad5e65c051a48314e927c02303eb512f2f698afcb8783e93c5d9900138aa9cd0c19a660be0fbc7dc6cdcd653abc4b2fc236475bd3479e8ece64731ded0302047c435bb500683066023100fe09c2ddf85a69e64f64e8bd2dd1f45d223d0260e6f639a7f478bc3f9c7fea50e8d1f81008bc586aa4841204dc20fac9023100ebfe1cb99edf9508a166a4265be0360a2a0e622e9b31511fb24ea5de9a1565ec462441b33cb48aea99d79e28ee1174c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026ed866d58620ef62f1688a64b8bfd053efe9833c55e0af43b73a9bc01489262b8605c4871023693ec2851fb2c0418b0023067401592cd77f855c33f6edf279ddce9570df19b31fcb76153d4986993408710c1494fb6d9398014eef89909dd38da910302047c435bb50066306402305cac913723be33f6604d178f2981af0257059ef72b0d179492c2e6da347b98c76e91f1cdc90496f03ab887ce336c59480230258903c03606412596dd8cf7564895a020f566e89f959ee70f9a53b44ac9a9bfa55075422686aa84a2da1397e79de6480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230595348c48ba5cf0a330f92102e6e95ffb94f17f18f0f160fae75db77f61aaa404a30549f65d2ff9431b209aacb6fdc3402301d1a579e367f7d87f1c5a2147dd12d152c28260f4327a90396493528a0a654a73c72c7ffe4a2a6013a588c06b123877b0302047c435bb50067306502305288841528ea6d703bd772a0b978d22aaf5cc53bdaf5bd0babdf735bed0515d9f422f968ae7e1b69df83886b41ce46d2023100c971a9776ec763f5440bf2c0d997ee39066c1b5aca8e5e23e783896c1474d245f9887129ab74d16b5e6f4a8a31c1c4870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f9886b777cbdd979d79afcff2ef365acde8d78879057368fae73ac448f4db902abea8529f830d6d3ceec7ebb7855d06023100b2648dcf3dd6aed56674321321d1909c60058dd4aa191a0c193f92ec115d3160ce3d0e1dd0ab8ea7f10222648c50b5110302047c435bb500683066023100ac48e1edd2822c6a018e6a082ba7cc127602062552621b63251fbdfb68e3d544bf53f1bce3afe5c80617575421d09004023100fcb9625ecf7fb36477fa8a59803366609860eddc638e96b26ba2035330718671f2f63c34693f29f860c23ce00eda61f60302047c435bb500683066023100f7ea20436cf8565a9c5d7cc76b142e14874411acbe1162f0f1d064493fc9d73f088e220fc33bb31555a14957669b6869023100ccc7d9aec5c54bb81143dcdb76251a6550e94f20b703506b7ebeba72d107bb5c3f8cb187bfea9b885785d8e4be694be90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306138e2cab23c579ab0e39aa33a5d42d283619c5f657ecc022f50dc784c29da7668c5726019dfd5715ea3f2f80bec822e023100a1860a69e56dfaeb0b89a71c9cee76f1931365e2c3f5cd5bf7e958893a86221f013eeac882b8ac3ef2af77f31a1548c70302047c435bb500673065023100dc1b1c04fdbe84ae35d4895846022f94899f59b3818ea4835e5025ff16c7c65b28609d6e2e4e93e50a04e22d863199f1023033f5770e1db122bcd944387f072836662ad63f624af9af92948f7549fe3aee5087449aa1c913537ebf349633df8ef3d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff227d0ad27f5ab8964e91ff331cb48f5ed57833e402c1429d1988c3c88fb7ad3af479c4fc7b3020a071c303ae1fe49902305fac5acf8c27f362e6989af8e690cca627c6638df13f7eec5fc6ee04915fc993d1a2a03fd4fb60b54ac3b5d41edd670e0302047c435bb500663064023015c21d7dcb4c36c862677a60f843557ab524a3caf18e54d1283e9c7348717e728716f2882ee63e8a2604831f1c7b029002307574bc1548f649723451c93fd2f21b84dac029a9474596fbc8e954c84e3ad96aae6187bd24dca9de54978afa2b15c6cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bcd909776017748e7d96d918026783fa2c1c4d007ddb48593526629158b8de366d4a870a3163e41e6e23b1d2748f41d0023100eb6a94d30d9afbefcc16a2a067d5e6ce865e55a9e7ec93156bec03de21914b4120b36fd49c3d3c0bd33509efcbd8d3de0302047c435bb500673065023100bb705f29550c62a746ba57f61995e0ea277f903ba381a02b704faa9273b118cb33eb49ef86deaf9cf2e12fc27b059da002305f96aead92e8eadfb6a9bd95887dccd5ad1cef68f472460d989c89d32a42295787b0c1e028b1551436712aadad1fcada0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb3471608769c83f88486f7b4f8acb95705bf37c165929d907decd49f3b47b90482f4af02f50dbd6a77fbced8064968e02300b43dba8f668a55941bedd5390e37adcbe63de30e9d455bc92b8ffc09c62c731fd2be566f36f4f7be049ef9fcbb19f8c0302047c435bb500683066023100b5056b837c0e13f952eea6d3558fe01a90d12238c0048ebf018aba03e90cb8650d484f6910f76fe1b26dd16e7881927302310097eeaa63dede7a0c40f63e0e732a10cfb5d880839b9fb9da6b5e3bcd5fc738ad39a324e16963caff5a8eaea1ceefcd730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100acd26b8b5ba373a8801b1ec4f056070d3d4f587574f2e3ebacf28ba1f35e9d50828c35ecc4afdd53cd870578669116ee023100d9cda74a09c6d16ab6812c1ae3d2e74cb1120e2f2bab3fa076ebd4f2d65ba66659789b94458b7641a4ddc63790573b740302047c435bb500683066023100bd5b8444b6235dd41c76abab2cc0a7ac093b35b334bff3fef97e1d475052752c9d8193940ef71970486436910965f4fc023100c3ce4fbeefcee734db1fa9cc044894574b9cb3e5391b5689628b6b824cf94d5349b0bb2b50455e16537752839bdb5d7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306eab50901f512d2da0602c93b7c129611e0c4e88c87d51e5e075212ddababa68b0c6203c48e48f883e1eab1f9fbaab56023100910e94a55fb0c7f455966263d6b27247105f5c83949214a7d61e442ea36db0886c1d6ab60c714cec4043dfac90ebfded0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307de70954ada1b90a81863b5bad67297f305364fc5c5235365c09adc0173805eb9a718f1021cd1f470655c436cebff24a023100b3e17c856f98697e34746bfb6029ed0d503ddc9871b33bae7b2bf84112803172d548d8db93c16aaa905e8d74e44cbe650302047c435bb50067306502304206ca3a41d71cc453955f20868e8ffedfbdee5c8b03d8a1b0fc9c7d3007297c1e0f0ae28f8e5b5a7296b67c7b2a90c0023100ad588aa93b8ef7e5a0d2da6a4051ac7feb5866ce25282e7ce99c81eb1a82ca1b879ac58576c28fae08a146d831f0f7470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed17f166c6dc2936c95f5ccd3b50ced8e5719174cf19115c51db15b7c69596ef8bb665cc823bb153d8a63d5628c8bd72023100b581f31dacecac7e6f42b10c27de4ae50654f02d52f70a15a88b5b1502c081616ba37a3971d09c77f677f46250adf8f10302047c435bb500683066023100ba312c2c7f944fec968a620e1e5acf6ac9aaefada3113a4e1d3849455f350dcb96e9da87bf473372116ffaaf19d5501d023100ea2729e3e5c9d9528af80df072a384f923fb921b0b130d8fa8e27f800258eedcf16f77ffd2ad044eff9ad0f5fd076f390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fdebcfbd2c4b83531d733e07b80e5b0c7d61e00a68e51c31fd323633c1b2d22978f6c50e627eac3d7eb106de363de0f023100f3b522eed82bd8ec96428336f333bfc2a54d3a39983a7ffbcc61c51a6a69deabb1a4e000b93e561a25acafe526218d680302047c435bb5006730650230751f166ef546ced2caf6ce1b947069419ecf7c6deb6c7d137caab029fc41745a41d0aa97a54ecc5d0b99eab051f02827023100aeed183e8ca4f84628177ff4f03b764c799bcf3bc847d61cb407e2d7e15e3b6b55f7d679aef28765c115c2e1ab99c8630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023034a5511c173d0000fa31cb8cf053467bdd8684fa81e4d4674336f5eac9dc9dd6fa9dbfe78434ad3b84a46b6e122b66f602302fd744b42722261d368bbf37da44b4aa0b85ae529287451b3074e8be0b2de5baee9079675cefe936721eadc3c0b529660302047c435bb50067306502305e35396c876d9588a777a41a96ce4f21726cb6faa9048f3e6641447de83eba54b49b8630ab8aa48f322fdc3315551fb8023100b619adbfe4da012ba811c19b2f4a2b708bc3aa71accc7ef2c12425c0758e585c1fdb9ab18a73867d2e580aa7f5f408960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a81ca206b9e5bf8c029626ae5662aa4fcd01101948f80b6e92c6e3d95e3369a6efa18515762bf5329109e8b44b0e931023100f7bd7d0da1b0fa84b71086edc8dd61768ee00f531679cbdc60240cee708be29e43197e4872264702a107611e66768e280302047c435bb50066306402301a238d59ef384302693fcd784c523ef342c1e7602a89be08e839221801ea1c4ebe1924f72f6b1de79f48102d01f518ba0230530b5d8ed2a90bf8f7d9687a27248fb2dd49276d92e8e77d281b37766dfbe21f4c404eb091ff6e9552bcdbf8270e65e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c4d802809ecb5aa98951dce589dcd4698745e348a428ff6909c3f9c7fd5d56e011185c61c07afa2839855050929c2e1d023065eb9b74b191cef42bed3cd5133f4e6abc04bd47117f6cfb82c454b3cf8c5a0440c087bb6d181a9e9dea2883fe8abca90302047c435bb500683066023100bf108c38d3214655f6128b3b1fce974065958df10621be465ec2a24c3231e34029cbeb6bb2a13a37b9355481ef862deb023100a414846707038d71b395972f95df901f80d1a74731b6cd32cbd3358fd1b5af9efdefb7c1220a5c6e0e9120615dfe58820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c69ae0a70964662083ffb2ad31702301b99a9f58a00a020a607c5d7690c50801e7226032f9c648692388bd07ebb082d8023100db3644d9a975777839f72c0d272b8aac06ee25780d6fe9df531506a14684be7733d6c21edcf5a791e613866fdd51ba8a0302047c435bb500683066023100d407350a7e1012a88526d96a7f7d83075488fbaf44a7b162271eca5cb6a70897192768b5331a75a0df932b5eb0953810023100817942973c6c59865fe2fe953d500ad1bb4e099c9fd7b788bd102cf86c6e1d957f46a620bebc38cd68c4b8194436ffec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dde481354912d0ece6eb87b8d5a6f56485a9c5d1862ed1a4876390eb7dda73a832346ded5c1bab0dfebb27a2a0b674e30230226811db49853ad09bb79aa9cfa90a2d697535104e149f41f00bf51a4e434e4e700154a0b687ceebb32e7703f190a1ec0302047c435bb5006730650230222debc3550e6248704d741c43c9978acf080671c8f58bf1da233958d73b62c2ff0c3f9173e7778cb862c67f85dc3aae0231008738ab94e246b3b948f312d63ca1fe0402eb85385166aa12ca77c65eba8ad1b79b1c46a256f52e4efbfd5b25deb3580e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5d4d6cdd630784855f765bd00ac6cb74a6fe44ce5c99de20c978012524adeb1582a65e764c98707787d5212064fd6f3023020ec27f1c0420cb0be1454763685a38f70183e5fe0f068225887c417f3e43a353e485b6ce0d7f5dd7dc4ab69669669f60302047c435bb500663064023053388e3ffb1bb0bd54babb5fc6336f93071011111e599beed70043e6339e54dc3e30ff9574b0a45cc8fc5ade60af68c90230268601e8c8c2ec13ec6603b4df8fd83f849117cc4138b464aad5603a20ef981db20f5fe42be6d7f8d1fd070c22500cd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004972a6370b1414ea07b9b1418ea2af79021db481fb52a9503ab453bb271a34fe0cf3159c212aea3ac378b0331b59adc02300714e0fae7e1bf5f97624e3a14906bb5fec7e98e6105612ff2ae8b6cd9a125f19f5e32fe054032d2da7a68793d5a64bf0302047c435bb50067306502301e088b4aa14f6db6fbced890fdd1708f40029ca56d0bc683c24226e71311314e8738f67f30fef98e34a9b85545b3413c0231009cd90576502fd339523d24f6a218b183af99bff9971af5dcea3277c5f028f3d4f8af141239184570d1dd8e02706900e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051a91d160f92b1c2da818dab67e9db6aef4c222059b048f952fbd56504aaa95840181c2e7a9494e42a6140995bf7e0d5023023a7f05b31ab54373f1f301afebb2e74092dc496b9f7b4e5ed7a489764e22b71f37912ca22af3c20f0872ee0af5015350302047c435bb5006630640230589277990d2743c3eaf98db4f49d21d81c0156b4a0aade24c79bba429c3ffcc201ffa33f332cba060fbe073b1add528d023055277c21d00780ef671507ad15069f08f6999b6d2f2d4bd832f104e5d36064e78a6b11a54329957933aaf0719337dd870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f918a973be78b838e1a79806a031971a9ba407641d9fa38065840a8cde556239d88b56d061a70ac5c2d0d55bf56d3b9023100d3fd5e38c0d3afeaee887470700f75c61d8e74ef208cc4c87319cf47faea51f548d407b6bce6538f329641b7109244ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306bea67c944b1b889241650a11d546829139c071549ceb9b44fda7990fd289d30c32d79eaf6f056a57462313b539446990231009d179484f11b40fb323f74b45e423819ac79a931facd3d2a08727f50777aa53e8bb68500ca29151cab7202c33853f7370302047c435bb5006630640230121764f54056c11a2bcd6ac9b1f274345c0b12fbc24a2beca5ff5889e21d9bc9274b1f717f49f7f8a3bbbc44b23c3e800230133ed814316046d7c703b778c286356a813bc99fe15826daf9c11ffe0d30a3107e9001af60ae5c25ad92346afa251f930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310099de2a251109d56275dbf89a1af99bf9b779fa74eaf8b70fadffb402790b3a60746e7450fda719d8fc0abaa80b36c19202300b67e677fd0a03ccd0f8f5ddb0e3ffb2a11af0a5813f3fa7fa873a49118590d926a5e0f6aebae559523523ff0360ead40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b80343f4ad22bd3f496a98d0c430e3e8bcaddf56fcb6ae0e975b140a916c4a12e45887f8280fc9e6e18493d7b1c5aa0b023100d53fc6323fd915019d4a1a679981bfc559acde18dfda7349b0f8f9be94900f5d68488ecab4db6f9dc9aba40f923cb1100302047c435bb50067306502302513a4a176fb1861763935141d2d0072359613d1b9982c88d7b759b3c6c252d8994c2b4386e8f98afff3f8547fec53030231008a347c9b89a6b7eb5600fcec9ef115495820d216de20250a280c58f6f0f6725436706a74d819ae0c3230c17fbad3f62c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bdcffffaedec4bec3f1edecb1ace25953a2ea9973f6c1cb08657c8722dd8459c86b74446925e2be2ef52068822e7eee8023072e33624aa7b52f2f1360f33e259050252c4392e45fd3b8e8e2e5942d306c065401dda16c8bcf9715b7a18cb600101860302047c435bb500683066023100830a58197abaaaa9c88f7570bef8545a7e563be8d2955b6520f1515f96f62e4d635063043f5e818237a99612371d2ac6023100d512f9f93f8db033142fa363d7a27bb55999e0bb8cacdf062d504e0ac808a00e99ccf5aa0ca2619e87d51f7d74f9ceb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230575540e01ee14ce02095a969da1af18bfaa6b36e6905fe4e20a4e24ee1023ce667774abd00bbd606cce2428a285e4cc2023100cc936e175702232b57421597c71186055b8b769671d7875b129dbcc8adcfc8806a60ea9ec2f72820d822b9ffdae8a88c0302047c435bb500673065023057337fa9b587ecc2a3ee9df8813eb6e86021be49411c5f2632195601307a4885983a92e27397853233a5e63eaf7603e8023100f9c0179175ff4074bbc7b86a3856feea524fe47a74ae99e38f96c90d5ff36a640dec8a494bf71336a49fc6e31ce438d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023034e06d2b0dc307f5e517d97ccf925f84f807aac3e1925a6e5cd8c5cc959ee056f25e4c0113c9657335b9e1d321244ba4023100dcacafb24bb3ba51498e8bf9e2ca133f0b2fc750eeeecb3e0c730dc4b18a06a3af8c04d9ed87c0478e756a74f8fd13ea0302047c435bb5006730650230788bec09cf609561187cec56f09d9a81bff3b9b6b20055f2b97353ce3b6cda05e44442254f4ebb0dc552262b29f10ea9023100ac9aa103f6d2efb85060be9459e2765a6df15bdc309876c7c66ac9c5f70080c9102df2ce3a3f4ac918af940541c5ebad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230520cc62c7dae35aa788b7cc58e770bd7cdb50351c01c3aec21424c26b19687c931426987f16df634dcd44c649954e90a0230046fd43054f0bf2e44e4f5a055fba032966690d13ef310988c5bf23c8267966b4931c96ba2e69f18a853b5e92eb8f4620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7b4716a32e086ced9e139a3dff925b900944b98b9785b5f096d93bedd809226fb5f3c773dd97449d669e01144d09a0c02310089b299615337bbdcc2ba3c487dc07b45e63f2899abc27e6358faa746591aacad64fcc88c01748cdca0aeb46327f90efe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e10030889197f31ed94e51024dcb6b7a9be87f061e85f238b2db4f74b47a626fa2adbda2f371fc723ddbc7373f9956a102302fc5a1e94dafd5a0c6c11cf6fec024fae5018689d8de54effa900d364fa4c980f1f60b6f72e14dc9a989dd41bfff23e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008338cdf25a9388555707abdf5456851804591371cde5696bf8d5069f39f8b6501deadda0b47e61c35fb96090de649a69023100c5bda76af23106eca3e5ae0e0c99520b1dbc580a65d21aa7ec9ecc733976958e7d632fce46a699efe63f59098b2f7ac30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e2b7221f73a37dec102de377ade5f298fc97d012efdb7ef089f9d106deb797a7b8b9c1513ffb706ba223423dce7495a7023100db82555cf501b40b29449fe5d3407c729c420ed3a76eed66fb189004e388215091d36b2d142f75cd945d74ebf83338cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100916694e6667c961cfb0b5962516573d0ec1bf269103954eda42ff01a56f6a9b4ed7262adffe5cb28ae157b5ec7303f26023068522ba6c07ab3a22682f1318c2679bab339c258ac7cacdbd5c3b84209087b6e7f2e15f31edcb65ce9bb5f57990a9cd90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4ce48bab9da8cb81f711ebba14fc94f6df2f548937703d2c12fd8bc46d04c01ad5d2a85cb6f18d284c72ef134e12c52023100abb475bd86f0b6bbc9f66311839007708bfaba8ba8ff46be8ea37585faf4af874f62e185a812b4f8984284f322019fec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c5226e5410923d00754bc19216999434848da8eb63fb7ad23cb0db0287a71c59bd9579d539013fba29b8cb962f845f302310086fda95cda5287461224e1e3b06f8f972700c3efd774f291b03187e9f0d1b5062beeaaea6f8c8d35ad6a65d76d2b81720302047c435bb500683066023100cdd4023dd499c397bc32d0b79ab2a8a60d53c40d44ed2e6a9711e4f8090b83229d03b26786adc4a457368affb2fe55e3023100cb96ace5be10a7f336991d875445c1114b8772384591201928392f6ed921dfa75f7bb0372f770df0495dc1844890b4660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efd7dec5dfd274e7d4552e5224242b8c080bafbc6a32c98cd0106384dde7bcc683223e650ee832f8047dfea2260d0028023028ea8a6acce91cd8f9b1fd1e36202b3c8753e0b7baf940a78ed1e85c9cac6a048f745e8a8b7d87140813c6a7ecb7a9ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b709dfbbced53644653cc89a2aa903076e8d5a72d0d14fb6380a58bb7e113c4477dd2a105997e52c0cb3631871b072902310081506750f23ed538bd3f8faa7b80b5fa8bf7d29e3d48df00e160f66688846ddc8fbe5a1ff934f9efbb5b6a4b46ccb2220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a504d4b1e9da4749fe5911d4f5e7e1d04fbbc7e24c1befee347b71c72246b08cf89d4ed86b05bc53b493e192f452242c023100d509a299701fd32930242b432ecee183a9af234ad36f942e3815703c563823441af23e17684cb79cb4a703816146e4d60302047c435bb500683066023100bd3e53e21441171826bc6fd5a11d8b3e5d0ec1802f0fd7621b08ac5f39920384a1193e066782c47704fc56b819233631023100b5fdb12405a1e90cff7f7264b8ef661039d62da60b083a15c070f71ef85ad62a2a4948fd7f9679ed1e5b714525a731660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a5b3d33bd30c987424885d19471ac9139c9fc72c7bda05fdaf22f364e154229f19db04efd528fa1c8eec88297cfc3a10231008b4e06b497906b8f4b533888a346b8f9959b87696a163db5fdc68d118dae64c0bf2d3e808bbe45ca78c8f7b8c2a56dc70302047c435bb500683066023100a2fea9e27d00d9a99dc626e2262a79ffbbd49ba2135fa88f0e4425451f8ddef7195684208d6b06ea667ff1ed38141004023100a678d529328052f9194f13dfb52033fb608a9f05a22a787410410efc295804df7f234013a9617411700595134acd766e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b8c1bd165b42ffba246de89efd8a05be260012660d1b8383af78c1b3fc1974f33541fd15733e05dbecff3b23ba3042c023100bda3346e4ad0c31931b9f6d1f3632d558768890ae9aaff0dd7219b595a4f7fe886193a421d8d556c55464f7a7733bbd40302047c435bb500673065023100910e1d0b7ef7a636d36ee64fc025208290bd36f59e7e6f299c8e151a4b90dcdc8e9260a679ea8b0b381485d2970ae25c02300adfdc8721d5908f8b5bf429b9168c86949e3e8718a4f6a7d80933ae8644a6436009e1641ee0edd497327dfd294940310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230196f0d05fd4dd6219c3d218e1858ff30bc2c74e6d3610cfd08db6fbad071b39adf9e0c6afb072173f99120abe73223d402307590d5e3b493a73bc6b3ed49a68a07a87d3f423e184ac3450e089c710a6e9f4cf23efae6466bedc9de0440808e877dd20302047c435bb500683066023100a61ecf3bd8f6ccbd2adf843b7efe9ac7eeea94a5bdfc4cd2560cca28040bd1a1cb2629fb516f525a85c109640f0771910231008ec560209a0f430acf697f19df987ab4644252676da364dad48e226da7e745b360e08366965a65007235b9afb8e5617f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301f43e7b5f2a72213657b9b0626a17d038bcc29040aa5478ce69dba911c456da645c21c285b00284834b858821825d634023100a90006138fad3aab295edf41cfc5ef96caab57b83b8aa11c1ec0594916e0e1e5487f0b29466fefc057ecb31ef55033a60302047c435bb50067306502307af378c311558f81a34af34697342686d77cfb13de42c33b14243268769a0655e964f5bfa86f20ca90d2c7bce334e71e023100db9b98e56ec3e46ee61308b9aae0f971447182f9066ea14b27c049de5bcb844c82705e2047d83bb09074cbe0a1bceb9a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d5e09d368ed6c7d3febf03b1c8852d2e9cefabbf80d80b6f53273f589421f6b715de0c962b460e01396fcb3bd4983ed0230652a615a4b92bc31f19196f053f9680578b8635c3f76f44fdae3d76886a38f22ce0aa19a4062c33ad48a2b6b0e1d52100302047c435bb500683066023100cc9c1034c247adf3d5ec49ecd0988b09c6bb566dce973cc11cc6514d1bf2910bc781608a0e012ff02b78c7ee19b5fbae023100c5edd8930b9b88af3c70bc1db56f2ff4384f7cb3354a187f2acf2281c3d3a921f8ea4dde350a336120f703c03d8f2d490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304141f2abe0eeac25a33bc001193bcf133a48aa6f4642e64c2155be30a46aa64da1fc226ebc3e983578599f8b4b942b5502305c42ecfe531acec948bb079a9e877c11159c0a744f4667077bc430404845235f1319770698d91d274414c94606b832330302047c435bb500683066023100d4e3b7967c62d996f85370b4c53dc3731eee257453b8f94017203845aafbb08290c9106c364c5a75e48a37baf690c492023100c365cda8ea71aafe65e652a746390f3bd51578dac09810c74e73d1dcead5939472f08e23a79c9ac4705a5e648aead8e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100da516da7d6ea60327b11a4ddd5fb372b8aafcca5e0a0d39a463100200140b69f91ec826bae10f37fc718bf74f025e5b5023100b289b011f89e749c5393a6f41424a55255f9e4cf0eec290b5e04dc4a5d393ab4f7252850014a97d85b7f142ac35a55390302047c435bb500673065023100ea6400e58a96a16bedd06840d03d67b7f618b60f93c69468ca7cf029fc9d9c7bfe7fc89a4b70434245343ea2c9bdeedb023054449f9a6898c9a71d2456cc417b574ded54be0ce0c784a1e376711f9cdec4d084ccf4aa2c8642f278f483717a63b0520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008b4aa550387f83694859fb0f719ced662007d788ccffd72e0f4d01f6ad215d8af71caf18b319ae3d994e0baca6e4a41a0231008a813503688e2331f2c53633fbd560bde9fb0fa270cd115ed11b0e6f969337bf5f01c1f4f213d5896dcbccfebba3008a0302047c435bb500673065023021bd3b981aa4583cfe54356a6395f032ebb9dd1d7a77a2d5c6c0abe888618b724712cd77dc5e6cf7e3f9fceb1d96dbff023100e0403b9472f4da45d08e91b8fa5ba7969eb0ade8ce86255c40c533d53747725d2b93b837fd4826046417fb20b31106480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d34f26098d45ee8ce6fbdc6f8e06a85f3a70afb7290b626ae78fe59f62fad170ff30efe28287a3c93ab8bb496649a13023100d4d34619e967acdfd32fbc0c141590b647a38266b9bac57ec8e8a0c3cb47a358e842e19f2a50411e9ebc70f3103976550302047c435bb5006730650230611c4dd00bb5e491d2f7024b19ad907140260e89d33d446ce5f608c828d0279c149e14d3e9c828944ac4ccd1e079bc79023100e30af06c3913cc13971198eefb8af85878b6f8c9638a4bb7b75a16153eb99e9196a4221e4b38ca4871f7fd7f3f0ec9d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a3396fd832f643fec731d7c44c96285cbd3001d61794485f8b61433358a6960d43fa0a4995e4d94b644fed2d348da0202306f8827f15ed79ac844796a2ff8b24e7fdedb117d8ab1bf4732fd10a5eb409d15858cef85ee91d449be31d08b76a15de90302047c435bb500673065023027046b5d7fea8fbf36f6ffc8bde862a7e5453b57e985bf425954cea8545fc377da3e3dae74f5bd193fd88901a8788ae0023100fdb41cf8e1d62082441953f801b59f67d6539554688be85f94a8ad35ea7ac617b3a6de66dbf07d3787d1fa1fe5fa49f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f86bf421b7ade790c0d6994e7f430b3ee665b58f0f16019384491f07432b30bfca7fb5ca7747fc1ff51897d221d791a702301869b1541c9365fad8d51e0589dd881a080adfe7eefbc155a47fd5d2124240849916f0d4419b7068f9b883de5e995a290302047c435bb50068306602310094c0fa70d5e161434a46dc2fb6c0734463e210d8673b04be8d79988b31f2b9fedd1b4d8725224c2b1a2c3129bc55996b023100f26cffddd06b00509af3f496ce3d0f5e927419b16d4b92a4e3d503128c70459af90fa7181f192f9509e1af7fff9de3f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230540a06b07b458f7489bacaeefb460d98fd79c5db2d428106d4a29b4e616be2433470f6440c72b5d2c33729d460c5cbe1023100a926947baeaecb724e1202ad60769ad05f3c13ceeb57f5d789728dff3989e092971b6d8e585d6916604775c701dfa21b0302047c435bb500683066023100a532865f1f0181896d4805f93ee2f5908487bee4cb15de7fe680d6334b49c4030e3f26dc1ebc8cd349972a4b0b2aae35023100fbb3d1791f97af198d796299e242877ccf3699826ef31b6de3e49c5ae46da51827f435cde95819bb9e212a56e2cdc1230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307dc6fc5345b592eea664a4601fbd59938fac36b33a31432d8ecdf70181eabcd1969a63b184538128ff8a55988df3d4e9023100b0951deb2eccde193515aef03633e6260f4fb261f077308ee5e9cdaf47d6ba5825b07c976056ff966a898d934ab5d7fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6f02c68d419f6ea2087c666dce77795f9d8d5959f5861f4f787f9753788048311df7473212899eb7a2be5e6ca78aebf02301bf77702dba618990d0823feee479aea58b0d9180d5b403d2ffe188480fa79132d018d19ad2788f938a47bfea711946d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c73be1e6823b554bfe46e380cb35bb5cb871dd09b37986f56b40ace9bb72bc39e8483f4a8000703198bf3247577926102310091a59666b14ca0c86fc403a441a0eaa5642f06deec78e2549311250f5294b492c1c2cd4d325ac54a287fb7ff333d98a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023019380226f8564312297de1397ec5ca43b907b75ff2db7442568667f4d50549b7904c063c55b30372cc7e83e6793f714a023026e6e9b10dc1d8fccd9c6ebfb1f8bf3902f0cc65a7a960fb86bb7fc8bdf5aae37ea0ee5b11377fc198af9b7a8cc6f7bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009bae24a1701a62bd23e53c8879d1191feccacc2fea694d64227bd2f08039226095db38db6451d047adc1e98d65620e05023033bb96cab221e8a7db9416e0889c92240046d66fdf6592c98661ca50a7eccfc929210b4efeee1c7320aeb62edd67f0fe0302047c435bb500663064023054cc07e7b41e1f94598f8f3724b30730067e0604f8a32798ecc1fb0c13009ceca4e7cab012e6a3aa31e25e0fbeebb5e602306b8e80e376989269d13478d4fd242440d5cd415040450d82756be073d833cfc8791dfb3ab32314eb637c169b21048b7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023062129012f66c062e3f004f72ac6c27599ab1d9e4d200c0cbcefe336668b445d4c692d731797c8efd6982aa9b08b8425c023100b90cd6d959c5b7da79c7cb6e6c992134efeb0b07f59179f6a5b2ef99596a9ed824b02b8153708419bca4b473d8d676d20302047c435bb5006630640230042b13eab8ad4b7c6594e81b041bca44c0df007e5069400474e265a0b004a922d4f411b38794569e2aca2494e97a662602303fd1c0970fb27ce507562b5df6e8755c49177ef98253a5aeebfe4d1c25ddd68aa01d3b6dff94ac45418dcdeaaabebc730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023078d662f6a34f6caa22b47f437b0f97483fa0d7239fa2bc29539b0026fe25f61647ad18bc9b871febab1edb7663d3569902305e26e7f4abce9370784d9d33da9cf98ed317d97fa497364c290a5c885cd2ba866a4e06f3b53b133ec6f3ddb2a08652000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070b5677c949a5187f20caebf07799e7a6e010487e3364c6c1241840091e42febcc257fd5d08ec3cf60b1b3a00bcb33200230417559ccdfa50f1daf26ee402992c3bcb58e043e439441cd040346bb88eed1b07299e527e18d295c63d2ff6dd69107e20302047c435bb500663064023073adf727250163da50354331515e4a00e901adbed54b6e6e8549bb159e7043e51b2ae58206e7ecb22104aec13cd838f70230245dc12663c0e12d4196459eeac272501240161d687ddc50e9205a2bb098766223a5dab2d88f3b9af673d5d35aeb92fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008f28d010deab68284dbe610f95bf896aa02ca024b88411892b9a7c51b728db5f6ab9623359c115e1c6b5f390fff32fd202301624c3a1a20fd1311b3dee5db8c6cd6ddffa4b57bcd7505bcd94e77555b2e315e0f70c569b409c96c9c7ef335c39bb120302047c435bb500673065023100d6ec2bf0daedfae635b523d1cc2d2bbaa7bc802330c3f26f93d2926933a9cb342a52e1c95d9970d5a3b4b36c5700a28f02303f8e1faf05b5f83fed270619999953a5bbef349a19b90a323a5b9c063ad59697fa9546927966b9de3aedd07fa4ec61e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fe5698d3cb2ad6c850ab89398102ce1a6d0c2abea24c90c362405c06bb1244aed9bfeb2ba4cf8a5b220be2ed1b9175b1023100844a9d92adeff33b0baf4ddca8375cff1b195e23b19b437ca36e35780b324898dcf0cb7c2a43c9f3e46089a335499bd80302047c435bb50066306402306e97e55361bcf6292510025aff4ac5347a8427222c1c5eff441d7e2ad105f70050ecca28e89d611f921f1f45e123361f02302c0e4684c3992a655210d4cc6830eae7d722356aed8796f33fd7be54642bffe08ea1a21946ccfb7b17b09b93474866c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230237555552a0e84ea45a76ec816f43691aa5f9b5d769a4bd914007552b1e203694c31f11ee6b203f3172e3e53fb7d62d60231008aafa89853e80d666e8f1e8841224e66a5b93e88566b2b16a9bf8f9e450fd40901b6aee79030935ac120155e2b9d02aa0302047c435bb500683066023100a431a7e6fdaa4ac1cb57443591dbf38ee4cf299394700b8962ba406841b25251b5306fce98147ea24905eff65c0fd78b023100f933cca26312ae7eeb707a0a639cc43c7472b515306adb1254a3bd7cad8d47ebaba4aae3d73c3bf4dfd8c64a75142bc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100efefafc973f88ed06c810de3df0573bb354be340b6d0a9672d1fa9bf05dab9db5c3224727c6ed395ce91b5c3f5dade08023100dcc96f0289344ac1f94ad77a4f597ef59247f406147d961b44e05b4c1458ba300d0610451dd729668e24ba71ed66d64f0302047c435bb500673065023041ae9cf2b0603580bfb348677687ad0578eac1a72c909316e4ab99395922c0f2b4c8eec2035f228ebc8a16b177e78fdb023100ffe2fa9d530b28c0b372663f7d124aa6f9bfe5d6da56115d53eba20e387885566a0dc45233062d3e8ed6b5a9d2dea8370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100900df90b534e9c6c4263a84ecf10eb2db64667c28f4eb66f7c865015073d3e87cf4bac26fe05d8475ed8ed803279c974023100beb32253b7809b25c9f3ac3b002e9ea26027bf91525334d6e8ea44178b818edb04575988a1c7cb0542672860455738070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230062ee17d674229323a811e74cc2e328c50329fe0c756d0754bb7da8d8a6bb4475bc7fb481ebda978aad50e5dae77a53f02305e5fd2625c595c549b009eecb80c0dc428f0b0541c1eaf8b07c092b31606fde401a9a10d31e7ca90db36272d6eab2ac90302047c435bb500673065023100beb6bc20eb4f5f5d27e61f79809a2867c5b2e1554da29d71600e1939eb091ff4044b9871149c107bf33518979c4b50c70230095a47dda00f45b9024b73e763fad42e063a034de5a1f8ecd6cddb9f8304e0aafefa659f77fe8aaf58e8c4f2d6d0d0b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3203f7e667b767855dc0778182d9422756711bfce9d35b5b5b58adb6ad69d3b3f3a963d7169fe74fe1d195879a26e03023062e6b0253cef850afb22c44ae8c77cac9dd4c730ae0d1cf4a939a6b4a9111cf20799500ecdf7ef71d493dda705cd6d5e0302047c435bb5006730650230620d2a59981de0da664d9971967986870ecfbb356e17cb1acf927cdcdcdaa477ad7bb909360e37d54b02446da1c7f1e3023100ea28826333e3cf9b080bcef370c48ed4e836471d63ed9f8355c40d5c3e9606ed9695cec0387e3ebaff1eb395e462cb1a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230066f177b672a3d0ee8dd400bf19542d39cb7fa15997bff3684c1f9b36ad266f18b58512474b25f4249fea417b54bb182023100879cb311ee44424a5731329f89dd07f30dd831226c63d34dbb22e3168ed44ef379635bc284101fb7649d75a06b4c0e800302047c435bb500673065023003d46e7541fb7c8d4fb71971f159ba8f4f0e809254f825c1c742537cb9cb1cb5119e4432ab621f94cf9a776846bbd2e802310092bea91bfaf13df5492ad4b6001a2521f1c8a861e246faf3ff43cdf40718c9013edb0d58af2ac68941969186ce84e6f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b1a1358ef3b277bf7057a37dda2e5155d45e08514c9a5df9ef409f117aa81a3bf19be9beacce25e21eb4673494c15c4023100b8003bcd38db33fbd8ce6cc16d80dda9dbe290d2065368a07927f4fa7fb5d14b37e02bb81f6b46f6c55d78a163c519620302047c435bb50066306402301f14ab8e4a2d880694130f09e591cb045092ec5bac3f97f2a11ab867f2c8cd9b9f6a7c82597e018dc8d02e7efda35569023071c8003019d36c2e5ad2abfb55c82ee77f2dca9cc87847656e13b2c9d9531dcd9d24e7f0d3c90ef4048c9a909ad0a1960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013fd83064c7b21497e4146ba194072740dd1efb06e0d4835e7500927dfc0014ad4a857b00eec68f845c29d8bc17bf622023100ec4be226088a6b4acc78f7556038d52a079b1ad7deb02d1e643acb052576c5ab8d8d40677a03dd613aaeb39036ad088b0302047c435bb500673065023100c7d613ae6fcb9bb92d6a762399cdee9c958a1259c495f087ab3d2cb76fb4c031b5f1b95515ca409408e6b8a0e42de96602300793277a39ed6c6c01a4d677f436f00d57db8a991435a236b264884f7dbd7f2e281b9bfeb51f3c41cb3cfad029fd7b6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065571f7f52eabf5755f5222f456b2919572d28b5091d4ab033dbe0c516576e3c7045921967c7176b3d952950d79e81e4023100cd0dd0e1c3a53e1aaf507ccea03af8cec2d577b555dfe994b4cf45bc5590ae0f24163816eab8cbd7946c0ea42fe4617c0302047c435bb500673065023100e9d9fd0cd1d252953b93ffc83d2b1abe136bf76581cb311e854bdcbf9db1845028720f9220811e3cc581ea8646cc782102303b8c4227e6bb3bd5eeff5822006563916c72b81aca87752df9c1c4ef1b809fa2ab10d13243f284f80a68fae8f4c160770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310080fa5cf236133c6ad39216a95951c6866d6c4c4438846dcac9720f19cf6f59e31b8052fb948c4c719d701eb322104453023019b95d2564f90ae22a87d768189d11e2a30b6fec377e609b75b384a34c34dad3a7f50246ce2b965a3aa424c559cf0af20302047c435bb500673065023100be1e6f97fd651b211968dc3b7e3d051eac342bf1ff4db3c7893a99520c54693dcf7c4a3f25b56168c72abfac61c94cc502307cf69efd6816692067394d52eebab9cf9a92b39e1f3429667bab2dab9e64e66bb068f1af2d422b13e99327a9cc45a3f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d32494554255ab7d605a21ff2d7c4a2c0207b925144c4c3eb22086cbdffc1adb2ab5d29aad259b18720676265122aea20230488e8e0008d4d2ed1758ce417607294463bf2d60af94cb4fa80083416d920aed31fe2f65c0a541ee4cda388c9f844dc80302047c435bb50067306502307ee3ad0955ab5e541f71a1e5f8c1a3685ec1862b402f2392bf1166c03fba7c0c416720fe9e77b3ec03097b661ed8afd8023100ecd8ca4e8d6aa09fba5d6e8e10f6c5830159e2babdd32c58eba50e68c65338e88ae691035a4c1097d14f5a1ce194d4470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302626cbff908d51e0627a4ab6300a17dd5a387e1229fe862201053ade2cb97d231d5283828bfda623266b73ef5453c110023100911f50a25a114289dad2afced9fdc1fcef3194cc56c2fa1188f4a2a087102450c0379ebef09aca50cb2938acf297c92d0302047c435bb500683066023100b1040c32b9dbdc66af060f665107b086e96d9b5e15604a729e63781af50d4944ba25180f00d30fc04d80d2d8c7f42bf102310089005bb5b74d4241a3e935d8cfbc9bf3faeae1a079ee6fff61306e756f16039599239553e2d495d2ac90c744b0a674c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230598be465fa6e2d7cf98f5a1f7aa0ec787eead3b92e9d040fd956ee3fb537071346bb49f39f92922b88c8615498fbf92402300b2f1cff476b19319b75c11176fec86b576671417cde8fb328410fe62a9c04a0d196ff4e689bcea16ab33169b0084d8d0302047c435bb500663064023037c46615452b8c235292c903e7794ff27a58d95aed042230f2bb55305120eadaf54212608ccc3d13994f5c0bf9fa514902305c3c35dee815cedf825ff6a49eb89c4b6bca4ced9f5f6b5878cd4a7913d3ab53225557e7fd5ecaaec713e5b8f0ea4e860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c2f637a3fd1dd71fefc993d3971e6e18b24c4110780a114278ac99fe6e11827462f37418387cd01389866e7694ef4e2023029e823a89f80b3f2d8e8f8808daf9cf4f065adb0558e9842d8130a34645c0b45db3a5bc29ac2516f0a7c753408c25e540302047c435bb500683066023100c88434f3db2333f7c4f17266e941c0c0596521549de392475d68092b8f9efb7b63e4c9566f4c081c5bfabe6fc84c895b023100fef85a0f16d6a7bff04959f689624115a19df9f070b5e80e283481c1fb14289e02b124742b8a31a0eef11ddb859ef3540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305eb100bea832179c90531cb59595a163da7cb753b1607e8018ef81fc6f12ec35cf7fcc3f64586ef13e45511a644b62e502301754fce4e564119ae50d8f6090f8f020b4d6b3a6b278364688ef2932057212f154263ef014d7e797318a0788aa5bd35d0302047c435bb5006630640230430f8a8871584eadbae03505b40e212cf5d44c63b1b4051f0d8ccfd048b2806355ee7b73bc7f75b3bdeeb5888692fc79023052e690e439929df5a4f49924010bf80f9cc6e8674055280d4b2d7e4c8b5f188e0226a671771b5ab3e439b30fe5e302650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305fe68fed8cca14a2b6d046c54f44c681cefa2becd5c2d59c02d606d888c1f64a2568fa72a35bd00e4e42535059664181023100e2c4daf668fb24be1f247724593e41b0bf3deee1b242aa1812859bdf3aa5555eb0d8a164f75b622b8c6ff0ec400d154b0302047c435bb500663064023078cfc5aa84030e12ceffa56da8f72beb32262ecde1a5ac4cc9c88630225d9bc32b90d253f5e18e26f3b21eb16e3bade202303d662dd4d8339639dacfa671cb603379f1d63759bcb9056eec2990ceb453ccbec7766c1b61825099d23133d0809ab12f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013c44c54a586c1131d9c8ec685f5885177d05c076362edcd4140bf0a691c348c0fe6275a9a3a182fcec0ec0b781dad46023100f68b230d88535989247a0f786f9c771b1e55201d4f5e02c57472d35e14e0e80da86087d37899d6a245417a6cdeac3bac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303cb3ecfaea2cb95d58af391c73302fb5cdf21d63ed82bd6cec787a785043ffde6955b56daf00837a8b2710555c5f4722023069a85483cfda7cbb9c060fc7f2ffcd08ce7e8119b7f439b8b68d1f3a78c47244dd297c8a745276a2d275fa0aa4a051160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b325a6b192b8704ad6e90d015313c594afd8bea6fc38556f7521308327260006c404951c4132b82807c9ba2e86065e110230028f51224d08d46ce3bcfbee1fa64605bee45c919f6560552ec60b23de087e6c69917905931ffbaa8c7e7254a8dccc940302047c435bb500673065023050c58df0878b2a8bb19a940b3d344d97bc2351d5a2e407df6c9be4da655a9e37eeb624e52b1fe4c4e9d94de6b55a3291023100cbd88966641f2c1728d2285985769268dfeb3fa5c0797a41e97710db6858a5041db10590f654039562dba33edc42c1320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c29e0cf015d2680b0728bf98c31cfae742ecbdfedabc38a2b9f9eec4f618eeed6cbde6b4d0c9963c81a895102d71835f0230279865c82982d5301ce82d30a30b9d6c0e364de9997b6f07222d351abfcc667f16baf9efef263d7f1b380cb31a013ce00302047c435bb500683066023100ae460d66f57c34b9e00407a2f82a45e7e726e02e8b70e28d46443fc539974821207e0f357f44b7b22a42e23bd4f13d2b02310086b77f969d9fd7492760dc4f4cf60263ae0669bd8bbb65c56c6e0211164782eea8d8e3fc858629ac3d47799c4a7db0b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024643be4852b24fe9208a49cde5ee5a99348d485979fe13931aa31d8411259874d3e5a2bcc5cc0be6ab1c143f6c70522023100fb08b72254ef2d0907bcd6a12cd3ff003ad89102644123368c132c63d8ad8589ec2e4bd82369a252349f831325b94e450302047c435bb5006630640230564728280d6f3a1c85f40409a3f7d061fb9042c2cb8e87bf2a9c7dd784448311dd9e3b657803510cd7263edc0568b9dc023015be956e206ccdcf483df1ecc94c4c398fb755428bb92419a6f673671d7ac141805b70b879ae5e607f4a18b42524f9270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a5e0cfc5cfb7ff4c73c42ca7eb4daddca2557d7bb871fce579762a04fa33f75b27d2179017c3ce828eb89e68c50e6b27023100e26a99f7b9851d47d198d088a3c391a6c996e5024c147ee0763523ca2b7bbb357d42cad9132274294f6072f53993464f0302047c435bb50066306402306700ab740fe71ab9f811dc3b230c2a865517be751ed62e4b2252ef4a67a7e6563824f03342d3d24f183dd8aba9c785cf02301b14cbb8d550af329204f14e67b07c7cfa30e145f4049ccf1792cc30c7121616bdb7e0a9ca8d428c06e5c819875fcb7f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306fd0b63946dc22a7b6001c399a520e3c4491cd0b91072e41c830d6be08a04318a5a2483e59cbc28e7021d3ba97387d9f023100e7be7dfacd32446de33209e19bbc5a2b4f0f886308d680f0a73f01a776bfae107ca8e43b1e2cf3c24be174e740ccf1e00302047c435bb500683066023100c6574ba1113af97cd6f92a4824f36acda8cf81ef63c0fde4e0624af90ece842bea5a6af6cb4af6ac86b9d5f56ec38ca0023100fac088d418db665a4180bb33a78e6f14519927f306f18835358f7e0d8f4371f52bffe18bcc2cda7c8201999fe70588d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310087e2a4ac315670c9c22c778c62130ef82080304a2ad3f89545454ed32689d1b699bf02bf27ad3f272e849c4af0d259d902305ecbce40435a77f0ea3fad09d6f6e884870217606b544af0cf0b566ab2253df9fceda70a621fa318155f3601bdaaee410302047c435bb50067306502305f3efe7a50b20e4bfff3bdd32de8703a86ca4fa9be2abb13270296bc04bbfc0d6c76bbaa367fb051b9bbb31ffeeff627023100c23782af68b58a1b4a1f26c606f0cdeb676dee1d77a231935cf99f4219f71c6b037e213d0e0e836bcc8430ebd4c969f40302047c435bb500663064023011138be352f9135bfedabb19aeb417db945a09c299e848b04f6618fd45a48a4f6e719408f9d5be94c9fc82bc381a9833023071691cabc02947479edd96413b2d73e1b9e9bd19986d4ad673a80363ac69c9acb9e979eb4975d54b5f9b14dfb76cb6be0302047c435bb500683066023100d4cc0a1851a0b5ed1de59aad7c5940c35ff7f9786acf2dbce55b563c322f50d274d9c1879a7fefbd0464102bf745fc2b023100d7c2a70b745bc420c2f650cdb2f99f076a8dc6e0da1eb052d51045490baa8cb675887c84e45ce8df0d2ccc864b21b4090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a14f7b3d1450c8644338c33af9ab65069f4506ce2f5d1d6d3fcfb30d604d34f2fb23558a46cac5133e3fa197a2933a34023047300ad515298b20e4586c86a96342bcc76cc6c593943bc018016f846638adc1e4a8768172e67b878777041cd5e7372f0302047c435bb500683066023100e239638e1aa3d9c73250651c30c8edfac4e4aee59eebbf8e230218a45c631f13ede0a7e362ca7aaeb62f767385b8ccdf0231009a8a823cbc038c841e48887e8d9e7d5d881e8b0a9838501ce1f51d5ee89f2c37e74695023b14425301ab56023b7eda570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100af684262c5f3bae2ae048a2c3c02591dc6d6778def6a31c069fb8cd6b94530ee39d8308ea6be06e8b110b23b59c0adab023100b087a769565cea15786d3ef79b090a72d5ff2da21cfa90a240734c3f80e475fec96aca1179850e49714d2764d3d6e3d60302047c435bb50066306402305d9f2bddce557c3d796a181e5e59cb2369fb1873c574e6e89fc582d048d5e81d619dca04e43c63a4243712f61ecefefd0230526208f5a31c1154c9744fcda96353e16201e2ca97bf8bc8c655cac334d69b803d201a6ca9266c54b61e2cfd0a4ca7c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab67949a56cc03191e8825919e492f83263385a6ab0e141aa6e92a9aa6cdd29b018bd43404065fda72ac470832e8111b0231008134e6c92e53e8771a7767f90a902cad80790a00c5a083d90edccbb611b4c3a8363694758ca5b8aab03d59b29da088300302047c435bb500673065023005c3f29cb48cf04f1626fa604c59abe7c76a5a6e06a9c9255330ca02ae3eba322eaae496089135811e13b78e14cc7b01023100bfa987d31403772cb43d68154c307f3988bde3de27da890ce9c3fd3d8b44bd9ca5f8905d6fe17334bb191972012d31b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c51294077313182959ba1b59d64458f811c99a10391f0ab802f40c57da710cd36accc0eace26b343ba054845bc2a44a302304da6697a216ae245b15d5ab88974ff8d9cdbcf1606013b0ca91461f9dc670ff6547e6ab482134791de92f3b41f0c4b8f0302047c435bb500683066023100d7bf8535979772d50aeb871f4120cd39c84ab5eb66309ab10e820cc8906c02e6367704544436ff7d228425c4ded2620c023100a0590a813fb313e72750404922955af007641d0a46c23dbbf1dfd6f504e7000a2109a66f06001100899cae0bb430bba10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fc5c2d12d62540bbc401642c4e77a421e0f213c8b17b8715afe2efe15fb67a8e66f84d561cb70a2e28c87ece582598c023100b7aa839c313d1d4c2bc8124bb6b33b478b2b2a50fe52eb2f17f4f9a7867c79f1fcd61a87d0be164e3145aa0f36b27a9e0302047c435bb50067306502310084a4bfd6e78e455a0b51deb798a33a10cc1e5d6ed7b4f80d63b2ece9e54e61d7b05223544846150a1c19fde26e18d6de02304c111843c3df4dcc2de00c5e3df027b3159f5607b6ea587b757bd29f8fa5a697aa719d9b485bb79e87e9e2fb5286a01a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8e8d8cf3526c46779e6e5d429f8b52674a9b950c9d7daafff79ee43a0b0a78efcdd255ea8133d519166302e3aa2c2f1023034ed476540f26f4f3df6b15c0837450129b75b1eaafffb5a6a347c00c3329ae7dc67e35704dd4a0c0225e46ea09c53800302047c435bb50067306502310095c188ebc60c4d5fc3b4e1a2b5b11a42882c231712f9fd0f3c0b4460a4e7c8e2f6006a9341924db868814143862700de02307d23be1a6268fa06e5a58a8c4263d5abb95799f67f3279d058e7a6c3cba4a0dd13c2721fa1094db40267f604e30533640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a7bcba5428ec544f8c77d58e7ab3241e181c413e2e878af30bf5ecf1f78918b556f690a83bdf301d4d58b8f7637d20a0231009bd262193ddd33996ef70e3fa6fee5146012d7831b66d38a6a3a6fd9a51923dc7767cfb9b887bedd8fdab556313a6bfd0302047c435bb50066306402301a6efa542213cbf04a7d95119764e89bb32967683cefda0741bc34d84d6f296618331b539efecaf6f5d584b400c0d7f70230597885aaf2849945ad76167ae6a8299ff427a267506f68b57811d686cd5a15281444660010572104fc9e7d6cbadd39b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac56c7083dcbd4712de10a29f553b4709b5c70afecf3dc11df77022c84612936238527400d4ee68cae1321ae770e781502300d906d8d434d7d3f20425d5e9b508caa7e4e4ef80df4f5ce5c366616d0e7c8ad7d4381304cbc139c60ca46771e98bd860302047c435bb500683066023100805de0000138ba21e388491ef3798b80c65d997afac5ab097d7f4c1150b6d15c831f25707ba0827dbe00e0db5277bc670231009b3cfdfb9be05ebf0d04846804c247eead0fa893603c2f4f37d1d90bad2925f8e19663c4eab42ba840bc911b1d02ec120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100925081bbe6a7e70f98ca7bd71130c44d3eae83589c54731b7571f098b257fa929797e02102d174fa6fdb06c98b7968e9023042ee83766df6cdf788a9573d6380716b59d41f801f134c6ed08e1a485144f59cefeb92bc69e49e36e5504c709fc1d4810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071f303954c30d9b33c9bac6c90085f4695472e866a31a3251433f2aef2d2e811b51aab7255e67cdd58940e1ad29de74e023100aed4d3a91aa467ce7646f00ce426d40eb0c018074d7532a475060841f1f0f33ab6dd2c5cace0685c2592ae2db27714d80302047c435bb500673065023006cbadac5bdf23a5aa324be8364f8b5b1ac7636d4e7046783d43be884e1b4adf5a9adf0ddb2dabe65184b515a086fb89023100f9fa966fb6a122395f93da7961179a2eb80d96c39b609f72ac8e6aa1420421fd156c5157551f89d2ec340dfeb53a673d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306041785ba5c175b872bad57ab0ff880ad5e84e5e6bba462a33ff1a993c89f48ba65299edb0379aaf140e01d25f7825e3023100b3c98403fd8f28733048af70e215d7da52aa72339f6443bd6b6d888f55f3900feff1a518c921b302459c04206da85ff00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023050095ac8685d834cb8086b8650a7bf3d37abbd3533cb0703035bc78528ef340ae37f6efc37f2fb17f80b301edb01425902306f71052df93fb8ecc21ae25a9927dcf4b2191d613c0d7aab15a50f64fbd685fb917167287bcdeccdf678a91e1744fe540302047c435bb500683066023100d71fb04805c37554dd6c7241396a66f630c62c83ff9d41f4043f0f19dd3cc84cf9b37561aa49bffc1ebb339b83b83ef70231009339f2582a0505a7da59c75a034e001fdbd4c84c9a305c7794851ac906deaf818871a8d76b14b2734d6515702457bda40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003736851a4059515faeb717c49deeff449bb0be1a71e853e7e453b700ed6443cf0b145242ecc9d2b21a181beee7b6a430231009130bc209edd188dd0acec0ad13867cd7d01a8880400860066c9d4b484f4d4cb189aefed92b6f39452704057e577ddf30302047c435bb5006730650231008cfe4d043dbf4bae3b49deae84e44f883405c0d15f04df01bd92fad3a16b5968a682f5f5a922a8af2b007f7e7581f2a802300c77a806cd07edbf23ddefbb7ba0cf7bf7a4faffdab587f75446063b2fcc4030ea3304f88186ea4058f7a34b407a782d0302047c435bb500683066023100920b662660367a76c74eccf839accae74512e21c2280625c661818334c0e1abbbc86a65023819880dddb597e439c8f69023100a1a54dad05c236ab8236247aad59594c3e1f710e1fda0ce248d0d6800b46fe564e1e8266a10eba354c996abc66bebb6c0302047c435bb50066306402300e31bfeca12e00b3e606aadfe349ea46c3b88e2827f586a5ee6e43f230e9aa870bf650e978241f48a68188e8d5affda602301b1d84a4df424b8caff8b59a02ba5260d8211d26f1ee807cc088bde071050884fcf56d7e9b70f7874e8f5189292b5b2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230214e5d4795bfc75636251fbb23591cfd079493ff61a9a550c3ef6248e72459766a0792ddc2d156682d4d5f9bba91111802306031d80325bd7acf527487ece18b57eeb385f2f041c5719954f35c9526036c04cb783253e19cb4e6631e8274b3e52a720302047c435bb500673065023100985ef9e47d05bda1917d0457f1c4ffd4fb8d076c1a78ec3aaa63e9721ec6052e68525da4c4f49224409510738ef0b6a102302ea73183d3688f593df159455d0afebe6c8b0623c38d8e98e09553c1153e8bb5060425bb4a9dc9085e9d9485584081210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306720b2c5b85cfcd734eb24f0f7ce54c32af175d559e67257913f0fa28000254a08e686f6104da5120577bab5d2877c5f023100ff45f3a2af3d5b00fbc66a9535f0631107c46210e7345f74c273bdd3605262b39fb65e42ab37cbfa1603ef59a34019050302047c435bb500683066023100ec0209e581c1585ef48a623b3b144a29928a72a6ecce70d1386815e3029f3f6ee1c9d12067d0c1ef6435fd5a7867244d023100b00b45fb562601b78c7f891c14eb799f0347b2a9f663dff842a7b62d3e1eecf163eff59717504485a0cc3ff33cabb8010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304e43e349e0c748a05d51db93d7de58d3abebd0cb898480f3dbe4b2e15806695801137c3dfafc9732760216baaafc883a023100c305ae1a485a82ddf7f9aafba12b7daa0958bd9b473c825579718cf1d80ef4f369436bae13aae23ece2cbf0d1b2685cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a8b27ea5152720c683453d56ea928a56ca272853dc59674051d915d93f443170878a5b9dc7cbfda03fa4824b5f4a3fa023100c30ea01ebc183d194b44b0c5a5c56378ea338068a4b72ad4fffbfdc82ddde9739ab562bfa4e2285040caccddaa3a801f0302047c435bb500673065023049b6645d09cc4f0b01b29d97d4917644f01faa5fc9a2ddab9fa40c2a623f2b1b1e9e29bf60b94cd3cbc4a32a51748050023100cb8440f85a6abac4777b0ccdf314ec1b5b4c686a7b33cd163bed5fcfb5da7407acb80b5e67889613a4487aad77a21cb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230569e35702682a8b8731c30a937bd865be8e07ed9471b96748766423cd38879ca0c3587fb7a38eb776380fff80dec604502304c907834bf1c685ac0866d4c3c2c6806ec495755f66857d0ab2e05f29f0894076602ef4a02957badb87869a4fc892c040302047c435bb500673065023031d01ffed975ca2e7319a158f6afc67e3e233cca79237a28d70c7d18f35248aec1d3db3bd82ad9f76462b50c71544e6f0231009db7ee1d5488e278d8da91146eb591e6a6c864c96ec59f6c58321bc76cebbf519ab7bde761386fab8cf418b9cd43ac670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b201f5116d0399e4f2749bb18139ad65c4ffc941b478ca3bb4e6590b62928635d383a9d7fc29b515619add7b7f63148023100abe9de80313836c20f01b24866f2d912d7fb9f377fd49fd8628ea3dc97ceda9bdcb3ef8cdfb03e53b21457369d69efb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f62da2e00d39582cb216ecfaa5b98f65d0d7d4fcef852e19e7179346c63b9be18309f601f78c4b72c5fa4299076b79b0023049556c3c984f6155536b7f820f36719db073e854d90afcc40adf28ca6731dabb960620da6750ad55ac5bf466f4bc7aa50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efc1d1576265664e1a2f7c36bf65ca7c6f970776b865eeebd4465e880087c3b20f0f7d96211e3ffea39b2f8fc05a96840230547b6a1e5d0e1669e3f8a7a718856e69f265863264b018518cedcc717c89b89b9f0476e5b8ef7a4d607f9c97ddbedbcf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302143682219d29f260b84eca79583b41ca31d736607c0953fa53764c867277159a002b7ecbb21e0790696c4515391659b0231008761fbe104c357c3dd9b2ed33624b72e01fe24563b97c637546e0e010bd9ebc8c80cc39691b65089e38f25ccd3d7850d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f82bf5b93b6c8f5b2950eda0e36584fc1e52e07d9a078124f419708224992ecf3ffd055b5cb4dde20ce5a0377ae86a830230741ee445ddcb79cd45ffd8f2205c559f343746e07316363d14a634d1ab5714c3f6374c62e5b4d884f84fd136dd247da10302047c435bb500683066023100e01fe21766c2dc19938d6e30275f408e4a7cdb0d37c19d0daad1f0abf824186dac1516dcac903f110ffb96f95727d0ba0231008ef44300900c69825fb672fa4743be5dbac12522a2fa6736dc9465f92aada94f686233e658841d43397a4af330bd3b5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c6dfb6294be734dc5d3b34e5ec56577acbaf030785554fe36a0549b5ca0a32d260e438f0b6cea94255560e6c22ebf160230203c4f96d9dae44a4b9d740af238cd4a5503d672661ff1871b48e8c0a18c68c9c51a5d082011a27ec5faf67aa1d48ac60302047c435bb50067306502304e9b41e8b711b04567311b9cac185fcbfdd457b1ef322b49e5588d7791e3040e6817c31a352e7d1fc3a6673fb85b59e9023100c9ce6fa432c27f82c4c9f25d798d72b6255c37f5f37ad554a2ddf0347cc05daa6b6781c62c3991efab647b5db5227c940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302fe3017ca406458fd5b7d41611627f77223c4304a91b290c7d1768c3e2594094342fc4c4d0113c724507b6622f3786cb023100dcff37865d289cf47aee44c568decefadf6bf0863870a0c376fffcdf77a39b8836afe5999f8797574b5da7ffe30ce41d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dd39b7990587b524bb90deef1b3171a1b8f2ba982b69e619937bb4b01e5835f611f9b72425c6ed681462d965caff17b023001a8eaa13ccd5ef0276cf795b93eaff4b8afe3f896b8e7e55f39842435dd0258cf3afd3c455023be5c4cc3991c7915280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b47173367bf38f23db4cff2a1270beeefe81be35bea97d379d520576c4974d0dc15a87867748344c18d7660c4ae9d38302303afd4a503784ae4ee55231f20af70e1b9a8cc29af8135e6635acf765b6b5259bf4a9e2e23e6fa0250eb04645885417b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a41f789a82804f19277c301a79156368b950084b8159d6daef34824d0018b323efb3bf3b18fee1b763a6dfdf0213f010230278a39c522348cd189dcdf739800b893ef90d8ce734d41c5e18cbb309c498f7688190c0d31793227bf52ff59c095eb890302047c435bb500663064023025cfa650f0e6ecc318d017aee9cc5c80e2e11d11ea130adf5bed87f89ca6cd0bfa0b2ea58c6e9258e7237d7f5085988b02303f2e91bbbf6d4eb91a0492ac0d8672b176d5ca32da60faef71df6b2a284d2d38e39c244a3dce366913534f97546dc8a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bcd3ddb60e610adebcc092201945f83a25eab0469569469211e5eab3edc85534b5424a7eb2ce21fa246b1a6f12a5b1ac023100d542fd3ddefc6db91eb58fa7ea28e6a1e07f587ff53a5955c63c23a40973c6c45645af548ff3cc7504fa9bd4043f4d750302047c435bb50068306602310088c5482c685533833df0d8c6b9b746dc5c871d3d7c4eac27e692cbf2958790639db76ad58a14a94567df9e7b7670976c023100a414965c4178b64d55b38cb8dd651950522b3faab64fcf4b0f889fb3486c259ad8acca1976a7af664545fc32a00736bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a3e22a5b35ef6b56442fd628a978cd25a45c13236016fcc321a3fbc057fcbc788cf0720da4b99bedf0274c16df48850802301440b3c9505ba32683ecbf444c3c52ea5b40b9d71f204ffd9b0f54d970da37a6cdbd21ee9cc3b916cedcf7c0e14abf400302047c435bb500663064023038f87c493303fa2716424842b46ee88d55c8ee3470ca6fc1b343776b0e27b16283f7866b9d213543ac95ff1ecd3fe2c80230516db1be42ac9e862db49873358d2e4d9bb75c11fb09f7706a6d8a651c32163371e393162233f6b06a17eeb3510834c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007080e1aa23b970e023def759aea3845952ed440b81f9e6a6b126557b56023507c3e893ca0b069b04c83fde10ba1772d023100adeae8c375fe0dba50c6f0fb5fa09475dc4636bf8a4163818cbb00c82d286066228b69dab61f429b6bc922b98f439d740302047c435bb500663064023030b8f6dadcafa3d321704c00fd2dd216fb18d24567bbaf1bfe8b3b265c0daf144c5c7569f3bb99e2ab4ed930633b00140230532e82085791a960dc0a7cb0781e924d38e8b73349b0a8181ee6f7cb0338160990660f1fec1986036e6b945fd95820490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030a318bb540286ecabd8217597294bb08021916e1227a3aa5b7d565ab08c5d8327210e2a5701d91cb87f179327ff461b023100a87e03549345a0c22a3461bd4284d5b5046f2e6989a195a46c03b8fc4ce10cfc115bf2f40ae3c612341303f9db9363ac0302047c435bb500683066023100cfe78e409ec05305e7de759922712da61add1923fb896dc473d05080d57050bece1dc74ea99d9cb1e6a96a30ad97428902310084c3778a4387e30d6258fdeefbd4eda307d3ca28fdc3ce97af51920417e06727f2dee966c8e40bdb42ad92702cd654250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e2d907c36e0b57a2de92f18ff571d733201bc6d3420829754169eeecd1deb7b600381b8e0894d545f100629ba306624023100fd6a1db91f43dce5024ebe42b64d8c9e4dd459009819cf8cd46ab84f3ad586b22303a3fa38783f9102b6dfc27a8429590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ca4332abe17b4999fe31817619fee5c9929bab7424d8908c9901ec87b6ebae759ab30322227e0985d04852aebf463bf8023100e7cc1fc0b22a9e41f8f32dfaa555c8f827be42f07984e46648693cf6e5e99b303a18ba7b66924690764608767339860b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072f9742b91dfbc727d6e7b6dca5506ecbb7f1b8513bb9ee9e63816df41ae9acd3a94fd16db6f7966bad722449afd8b9f02310094b018c40bc131d885dc1795c2d2ac773445954ec270483d9d7af41972e82befdc154118bb7fc2569a69c00633b3aee10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305fa169920352827c80341771324bd568ea54119c85a0b468d538306da8dee6e954f9569973ca0c36acc31e1a332a430402302731deda457e24afb5d043c6fe4e271b87b6e7315d0eb01d0c4988b7555ab45bf531f60f4f0d005e36374e3e6607f11d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb78f6122cf5419ca602e111d8e66a05ec9a4c2292679f9b358435b51393d58b2937d1c6033d56d487e00e4ce9a4b5b702307021e09260a2326bc8294e369b9703557d680b404a8afc868692c14d22c641c450ad512e17939f5d028bdf02ad3334e30302047c435bb500673065023100c525c08cfb43b3381962e31107775c678d7753952ffe1890f037293eae50511e6d26579b96db88de47c59184224c2c980230018f1df1f7766ff48662f3a46bbd49787760d304eff6de38efab172b812529befb5826822fa7ef924f29947ac5c572440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305ad5522fdce36c5dfa3ed9337bd944cb6fd65122431a6c4af1def7d13adb275f4caccb8e460dcd58a7cbe408bf219fc2023100a9ac8b298a3fa3e29bf8a4a7eb6ce38676ad812890eb7247284737fed4eb289bac9091dd0b982386c48063933a8a46e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b507b8430e1ab7bcaaf7cc700ef69e928b20dde8e00f7ab6a9a31f486f66d0949b3e681b2559022b9cfe02f1cc69361f02305c882eafb3d450a3c0f2dcae01d7f155be3dcb889c3b36e202eab8a507708c88db52a84bdd865075d9c3c355ab975f7b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023054cd24ae4da4b06e01901fd749863a406d9a1d67b9eae003e6b228b9d828eb4dd1e3734d9462b589dee6138d81c7f04b023075839fb9dbe552d5333c1f31d4a02e300d36c48cea6bcbf08607b22ea48a3c3d6f54f670509bb42e9921004b042d1ced0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023018e6703ecf82ea1b54519682263df348fafcdc36cee0c79e3102338c3017d35ea2883faeeca205406e82c0d734063b0d02310095654fa38cda38c2dd8fb79bd1aadd02a585bbc49cf7758901f5756ecac054b10e01b2b3249b884f870a87980cf6057b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b88258d922e67fc5a7be1b20ebddd5c376e3d41f150186eba7ae2b6beb36242f9280ea8080a65d3e138b6ad1e9d70013023064672d62c80be0743d8a82262b4ec58bc5de0f3401445c8bb1a3e9c33914c02c82a2741f6af1fe242eb9847a415b624e0302047c435bb50066306402305dd192c438b69d082d1a541f3022ffc8c4b784408347873748adddf1ca580fcebaa70d8886b733a0ec8b442a2c9165f402307480f4bda22673d9a90419e045086541acb86590e78381e8e7e8b68e3517e8c53d0f4aa4ce57afba2a74f08541f1a5040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023078b49acf9a809678b3a614a1fc4bcda5999f122b2128885d63142012ca2e956bc17cdd641d32ee38e9388032fab9083c023100fc3f04fa4c09e756b72901873cdee6344ad3746d8e0ee5964b641ceb13b504c8d63e66a833a26368e4a18300399878dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300f5aea14d6730ec43637b7fc84313c86871cd7c80d59f613e4721f1bcde4d4ca65cda865682d276f6b8e4f67d0fada810230542419e3b20d297882a3e7fa1b24f72676bb6928e9e8dfe35c80b396106e2e9dd0a34c3f6702b1bae584cb3f4cb3d5900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e46159bc63c4518dbc2ddae3eb3e3f760e911e9ae82a5f9edcca29770f5fd65299777d8ab0153aebf64cf2237771352102304b12f66af94d0fd0f784ceeda5217f8de36d28933d0441605f7d8516c281ce79fc20e10db326f06922ffd3be3bd3d4d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303072b59087decb517d8b858d049ae11af2f48f6d556ca67bda0c7152766c1945ffe37de2ff5dc3d7d6c9c533b35aafe1023100cfe170a8f7fc2afd98f73f34f172a7034fc95414180426c1629dd3918405c44a377305141f78eca589daa7a9e3a682170302047c435bb500683066023100d83d01780161317ea33e6aa036c99f4d289c7107e9f2567f15b24e520a478c48ca9aa6df7c00be63462cbe308e4d6c58023100a065a2c65a25a0004e06a79e625e8122743443fb362d7cfda4c4493960665b03fd6fc07d9d2ae9a8aae19f6ce39e0a310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023012cc199ae88730f8d7b616d4d617570cfcccaf22766497fb6997607c752ad66f562a78c40c04a89ec3d98e484d2e853602300952c22809e1d930ce67c74bab5749ad9d8409998af9987c1cfb1f24fc3493bbb9abe9bc2a1531f34504aa521eee5e3d0302047c435bb500683066023100a960db3f883f42c9559e1d23f9bb1b6cb5bd9a52dda036c4f4d25b90ae269eaca0b534afebea222e6d2ee55de9898982023100eb993ff0e267615e255d30ab11ce204f09e9a65944a1d5d97c9388dbbfca34c4a1e299fe7a9846fe41f966c66e0bd8ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301eefdf45e94d715079fc4bd52b08a8be296dd97fdd78b49834b6dbb5ce27a568bcfd9215773ff0797263d881b2101de9023069f6745008a5d42aec037fa907232a21483a0bf795a161c8dcbdad3f6611f2a3fe1b9a2e0e3c0508603f40f53380464c0302047c435bb50067306502307263c4f8fad53815e64c3a481510a2209db23926f95313f8fa467ae12e370ab86f717612935bc8bc1b35ea907b4ef0f1023100dc6ea48762d38eca089a8de949df4c0b9ee6edcbfb149fddab066ae2607455da09a82b766a2df815ae52315152015f010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303af692858d66b5a9b8b1f09b01ed82c3634ee4f8f3fec084417fa2375b196497253449cf6b7c70ad4bd8367fbe1ac6ff023100b51df75f572eaa47c49ae759bef2fa7438a0ca636e52667a16850bb67a3c25abd344efa5f9e63f7ccad9a7fc7f8970020302047c435bb50066306402305f2a7411b2c56ca6871976dd09740cf454e035dc3047fe924a04f6c9fbc7f62f7b94a2a4c31cce08eb83f01b43e343f502302d6898ac6c7b9544e35e7d12095b055a99a0ac5221e83304bbe05285b53498bb813c49727ade976b25b31c262a9929a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100adf6aba46dbabb3f229b4f937c2f338af333630be2464fcae54eaa991e70b85d3e5e7275da8d157469f217fbebd9fa6b023100bfc23e982162988e11b466adfdf5a0fa1940746926181ca8e6d4eaf8466075b83954f46b74f02cb44628d26aa89b074d0302047c435bb500683066023100b07cf6ad441aa52d3f600ea60538e2e521dbb155677a480efa622978bcc89b638692e46fcb0ff6b2e93051369f7ac74e023100e94ab91317cdf38a7a7a9a8538b6d7b856c1bcdb70a7fd49b6ca37afc239c41c3a5da84b29db9a50015073f7a03134170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d7ee192cc74fcee64a01b0561cc39553d60bc7f27b333544c10077f1ae1c9792c1cb1caee59d1b2f6d12dd291ee37bd1023100abe8efa554ea152b0a035544d3b64533efbc881da40db807ea9d3806b9bb9ed871ccfdf2adf10528027688422cbc66370302047c435bb50066306402303694a74e54a3feca25422f2292fa9a7f240e7ab0ed7fe902a82bb6e2e6386cc5395097ca8f582093a56a3a5e7f262bd802305eb028d148ba4ac91565230149e7783f825162d4011153479d7a8f46b546293110c6c4a2511eb4495ab7622fd599d8db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d58b128a64b85ae600f66b85a6621dafdae0ef1fe0f5fad98ba65b8569b72a92bef410cdc4c3c7fc3d2b70556f7f043d0230796ab1f5a0e9d4ef507755f0af3e1e43a368b1557a9cb842661a919e41a0977d1c55e1208645c112eb7c526ee33e64ee0302047c435bb500673065023019b444b3f37efd49dd4179bff0a09833518a2b1a48a2cfd28c204604ec41b770bdc10aa64523d3782475b5b13d0a8f4a023100d686b57d8757495e0241db35ce54469fe04549166d852f6939c12d661023c4d0f4c46ce49f79be643b08b28696ab52280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023034ea96036b3738d348532ed9c8378acb88d869e7c6fcb2732c79c98f609d22d5045af95fa8f34377e3195110383596a9023042a510e9a55ef97b216232f792118376f0ad1275a750b03be74079909da8ff9721b6b4493e8580c83d3ae90156f92d750302047c435bb500673065023100b4f6b06c922c3490b4be6e876007cd7a31cd527c4306a291910fc7052dfba20aba890c7ca3e648ce01100c82d574f5870230740e2fb68a1c672c8bf9bd0fd74afdb9c2e000f4113e8589624af6bd5ceef451659ad82a234e0c07530bb00ca7ee07f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015fb05e605b6e3b19ae45bbd59d87f651b367ad2f6fca4d1398ba913e91ae51263fef6eb6f221141eba2e5fe8336a22d02302183705c076dd42501c65b2c25090f3fb0c41a8e0f3711959b22b6ef903a8434db62ce4ec5f215168f231bb2460649ae0302047c435bb500673065023100c51046f6de1862e1913c396bb2f5426c04b23187a1b9408baa96e65b4c75d3eee0edc69bc3316259752330ac6287bc7602305976cec1801ebc7d35636ce73b1b6ef9c208d9a8c21efc765299531e53ba03b74afaebb19b34a7929fc6a7ccc439c4270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fabcf76cfdb53761f522c424e6c5b4c8c3fc024d2acf4683ae82464ee4b6bd23081c90d63c37caa9998b9e76dc05b0e023100cbf126087a31380bc3c38474b25c5bb9197d62fe15d033ac8cd29a15fbfef10ff5ade8020ab9b9f308a4e863bbf04b720302047c435bb50066306402305036ff545fcb820d6ffb75d4eb4cd3acb8929b2cfef1e50cf971ff4d5d9114b18c2cd5513db6092576fd11b74f2d11820230623dfc4cf7256488d9d26626677461e2ab723f0af9021356df6f74c7e18f148c272c9739e2c45cc8323dd77f70d4dce30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304801ad7c265e693281c717c105f5dd339f572ec4895f30f8c582ed2fce1443287c400d2e0502073e897496b6e53fd135023100a43942165b6daad1f0ec5a882ac8eee04f5ac7953bdf7a9b5416631dcaca68fdde92ffe16ea1f7f915f8699bbb87f9990302047c435bb500673065023100c73142b7912b4185bd056ebb7d0b124035e4284217659a93b45a7e5d0fee2329e645f5897bf538e678516c4ec8e98bb2023064907151e0a53a2007bf1591ce0856cc97a3a6a66d7135f9b470449232dfaeddc8d77f01b7201604306fd8e8a572db4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093e47a53bb41bf4681e2df9f250e2ca350089319d7863df66067f73b73152e623430a9f4fb34bea67e82da44c890baee02301d904cc8bac1d0485e7abfd2f8a79af278eb029870f20e0cd651a1ce7da7a6e2da54dbf849f3f45f4358e4350dfa8de30302047c435bb5006630640230436410e611066227d191d48b3d173f3ca4729414b934e0452d991f3a0c58219b22639fea7bfc33ad89a274bb9b61cf6f02300865a8285c1a14b53f6f2eb445d08137b5d79771d4c2504c29689b8c7d9724d2b7b4f9420e46f3e81661043d8210bcbc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f6f1cd561ac42222357d4cffcf12e07da70c09309358977f380eeec420d6ec005f23811bc062345101415764b3464e98023023569f4b002d143b6893225b769d0dbe04ac04b0c0e4112589ee104213b9daf187892d0ab303c6c40cc00cd4a5349adb0302047c435bb50066306402302fed3a9b03efda872703815d3edbea434ad216618c4f7935a39307f58b9ab3807fcda6855af642aec9d21c7978d0843802302a28c04717ffca88f33682c7b4c28e0a51c48004181b99f5ccf9c1566005a87784f6f5baebb3158e15e8b9d2e4efa5f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023050dd3ca6835828314e5e27f45b2783a998854b9ed461cf99599c01fd661071f4597779ab6288b5433ab7b9818f8a51ed023100bd5e5d8a04835616ce72254d6300bf5d2c0d71bfbdfa0e1995ad1c0956f8040e27363ba9b6ce248ebe2098200f8409f10302047c435bb50068306602310090e6316959fbc191ae2ebf8debb6e666a8cbe90e45ae6556142d84889a282eecc9cd7c050ebc6c2ad3c07800e5e14d84023100c50cec6300d31d08e4bec0f3a79f8bbc439e58826252e39b32da665bc3acbb198b3b757fdb417b3ce5211fd0d71a23ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306daa905b2fd5d0fe56d7de0368494c29fe65feffc003f147c7cbe40ebc8d37ed1807ab13d5a8ba55b8f4168c7e5cca9a023100b4c69469cbca10dfe7c41b9019b9f65c52f92be0785f140d649bf27ca31641d383f9518fcfeed95b8637eadb527556830302047c435bb500673065023100885f7a41603a941b433126d91296af8f78b49a2c1a64ca3a8bf749c60de768f7e255bd584538fb9b99d80556d62734130230212325896a67866b5c993a938a17b161469619baa907f307f43e4e07c267396fd025b6c2831eb63f6e56c696bd2098c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305f9dfbe7095aaf79287dfcc5c8a8ac01ef06d06498cbfd177fb4eb161b08ff5a6639e44679dc6b4286370794497bcaf0023015f2cb360e66a5ff0a13e37c2b99a8f66ce563f0ca5a5c64783a67c77cbc6f7f675cda5fa346b804a2f8d65c6cf10ef50302047c435bb500683066023100fd81a80d966f2fc16f5317e30164ab07d73ed67047263aac9d43bba0b5c34c07a954320ac48fe4ae1dab9c34fcbd870e02310094606a0f75c715be72eb6c023dd06b1eae095365c7850a8c784ce4b8295938f175a344a0cc0746d086ea92231945fd4f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302502c6db3617e4259d7db83dcc842d94e22a9726b8469eb6c976182b57c1052d73ab3ebe25620052f265216c0cdf1cf202310098e19031a079d96e616a9db075d5e5158811a32df8939c975eebc0d542a986f902fe0e03485b2060bb63b65bc5424fa70302047c435bb500683066023100fe01a5ed3c7add849066b037a09f9cd7af1f1199494ceb8605d0159e6a5164273e2ecf6e8347aff1f084d876734206590231009b06cde5a869ae929f432b5d5bb678f7cc832b2f519cd9b2d7c1bbfb5f728a5a9c153b6609f0fddc8aff0e95485e8d440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f6502a5ee57b05cde976ef2a5b652fd31dfe264a3ef800b968b64ed2d2dc7b895f3f9b275ce32eb185c7a739a70540f023100ba7b64cbce32c6392d8537aec65bb4b3442f80147bd992160e40ffd346d63bee4d532f416deaa0566ff4db04d44b14c50302047c435bb500683066023100fb5e4bdd4d338bfd2dff502719b16fbc55e388a23abd2b62d6c78181eec8ce573c90f4628b107659c2b976a0d634f2f2023100909e8ec7dde68fa90c0652f3f7ba24cd64530a6637659060e561ca614f4705e92fc9f8db03a98ddf4453013eda9e0de40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7552853a7d8d9bd5f6b7dd7714861b84bf94e180c74bedcd8e0e29f9796173291380b7b9c4172278639aa927a9b7e10023100c6da775a6299632821b6888737212fb73545498a59765f8c2a8e29e2fbc30d37d902186ea11e31cbf93979b89502a65c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303be49b0b5adf124a107e3ebb053eaa575f2536c9372d7c9a7ec3ef5c8067f7d9264938ac315e78b497ad094c9c8a73320230195dd2b60b3d0b19085ecd0920a673071e9b65db89b2783b5caa2ae8de39efd580e8b74ec86c3447ba64b23d50b332f90302047c435bb500663064023019ea3be134d05d99a81680aa17bde48ab55105a6320a3bdf148bce48ed8f851569aa825cd2e72f347bc7bc18e6c5751502300da4764b67b6589baf903b0849c510d91e0be7d115a3efa2e5a70faaacb9cc7008701d35278e8b7ca89f1a701fbabcdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ab576538078be70724aa8ed086f9530e14164a01e1a8dc8fdb51eb088bb9576a8be64d38598c1cfb2c69286f38f11f7023100a8fc7364c7ef6f4a45cf2330825517a44956a72b5c57c81100babe63294ab2eeef07eb5dd12abef32951172d08747ccc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008e60c8ac1d9704004bfd27fe7c82219a1d874f87d71ec0dc6b97ecfdd9d38f5f9a70de6ecc0833f8c1524539686f6b85023036f3a6d1df6a0c5802079a0bdbbcbd3d07e7d7be09e488aa9fd4dca72d6c487d570cb5af65a490c8b8c268edd6c726940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023057c93bd5c05c7d0ea0b4711d4f075640f6ebbfa4f5128fe79dda4da5573c3ec8ca02e348bb3913b4558fb1fae7d7c86d023100c791865b62e9be195be7af86d342e119635635c5f5e7e52b117756640258fc2ca9fbb92a139858caea824b55b30896b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230512bd37e421d63be5cbabf0b30ab1275b6e2b61591863699de37e8a4604ea1ebcf0952b146e48d3eebc8e0aa0a4103b6023051f73e2648b012bc483e01839b31f620c1019e14aaa869ae8f0ba58bb04af2052aa20801f35d5b3081e504642f7ce1d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec97f382b91aaf6fb7cb0989aae2c4d8330e3192ad248caaec71348652e03e64646133058fda8d196c83f3e53102249c02305f6f8e44d50372eec517d97523b7722c104af668a6ff551538f1775c64ad38f5fd5efbc5b790298dbcc68b2a01d391140302047c435bb500673065023017f37ce3e1a14373db53c6236c581417413f439505c1ddbe37734b12e9ab7f4d1a711d6a9610859fb6ef7efb6144b5a0023100da38747f2ed3e01bc4865d628816d2006631a4f31f456454ad9665ef3d6b89c75b2bb097939c9efdac54641dcb551b900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d249a3f8a3fbb651c25859ebe6a5f5480b516a800394ff922d77f6bb3584777e6fd15bccd504c26e0e331588062551130230278d5c5dde2aa1680e12bd6432eec3fc460bce275dc695f20ca9ae0869e8779d606cd2518411772bb41c6731f02dc6d30302047c435bb500673065023100ed972024cc093a8034f9d790981628436f2cd2c40cedb372622c27e6c7d0c23c83640ea6b5db1329891ed87a4a2b48fd023054965b518fe9425ca7493242a116724293581cc929a3029843842d4f3108ab74c22472ba279e4103a4672fec612c4e0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bf9b0fc446b733f5e8384d6a2bb6bea82152f68b08362914c9085e2e516c788f539a88e4d2f874a53b1ceb2dcd26a840231009959e1a3e9ae442c9505989e9971891592b009d51739dbe0483b0291534beaf2796c2f5b220f4b2bd4c0f313d4ab49070302047c435bb500683066023100ab317b8e133e120fe5e8ebb933ccf0fba78d4876fa2098ee61169bf4a31858d4b48c5c16f850f78b31b9cb45aa632f44023100b95e8d98672f81578f34c8ca52c003ec4bdb5c8ddb4bd7000d51b9fa5b402c401522e66b140f9ba6b405f2aafb245e690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cbd8b047eec1d6981a1b95768cee8bdc38ca8ad2a8c402f55bc759f67dcb9e3f4125f84ac0d2aabf62a23aecfb2eb65a023100c2a4cef65bf7399150e17238d2758ea0e10b1096e6f8a3f705206ce35e66cebb699b75f10e7615c05f74f16253ee8f630302047c435bb50067306502303296f3d87736366e542b5b300ccdd99114b0a0b83e823993f8fc53c7bb14b1b2c6e2d52d6b902da20ef5dbaee401a8c3023100e18ef8a033e3ec53b9fbde193e6d83a76f72882b4fd54a887d20026f174a257c4f6b752b6c4a045d5a6d707fe851dafb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100909b3189413a5088fedf436e0a6f76f505aa18de7d1553ffdd4ccd5e73ff7dc46539ba1a5549d54984a084e38f548a91023100f7e7747fff9f589860fcddf8534a0e66888a0bca99c70552ab400b14e0c461603aa77ecf437a014ad70db923633ee6a80302047c435bb500673065023100a3f4873908d6c328d06bd9784ffd608b3e25ef25dcc87390ab0e6e2c3675a5937d8cc68a793a2b0b30ba2eb89961ec9a0230659811aa910b3db5ccf76da403f0efa61c87743f04c8abb8554247e8cb012852889d70f2ec82ec57028c20642b2db0b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dfd74afae41cd5f2ddf99c5f133e3d4d4605892ebbf39847b9adfc98eacfda8521b13232bd3fa050340f73a731198226023010a882957696eff0db076217f1226060b62e547ba2ab8022c733008a3ff57f78fe62289ff28dacc4f18e331b5f268a150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c217b5db0e9331bc7fde47d19771b17d20a3559f6f6b94b20d8c31e262e5036e17add74a0cac5567d199494d72ea5a8b023100d7459b9d16ea96209667e173d61936030d43742e3cb1098b28755f43934852bdcb2a0532e3070ec5c8c81326f0ef82bf0302047c435bb50067306502301a1e4434a7aa267e75e39f1fca83d56a6b9e1f8a8cbcff70af86d4bf1a867987d8bb4e681dfa82cc9b33780345e5ba0102310092a9727ef6368416dc19c35cf619cda19d439ac89f8165d652089c76b8fdc79f87f94ff72c0f89d8d6524e2839a7e0170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f5c9722fd1daa33a507f29b0cf0109cacb711084990242d5a77775421dbc120cf5511ea99ca5813c09a0b02515714d50230170ee72bcff0061bcae2f3c9219f728d60b4b853e79c81037879b549eca1d5adf0e153196a53d8459823c2b3d34fd0300302047c435bb5006630640230595049ab556c78a11b094b01dd4b15c27956d1865ff13aea6fc47f07054616c478da761f6aa3a08e1d6b40e84a126e2c0230018dce25ccee5e802f16d1a43f28767336cf54be5090f3124c3c03ba2306ceab4137743a1b4a87e79dff23f51e9f8f920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e69bda272d449bdeafd46344fed8b8254f382bce01656815140b1b11f2465e076392580194caae37bea5a1022c584c4023034cac2837d55af83e38b249bdb1b11395a23e7f0744262fd9f1c1a6b8a073f5e1c3abe3c3b443b07a45cbb59e80a58550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c859fc75932dba32c6bcc30c84aa5025a5c581949c2ebb637478067a2e1a76383d434f9c834ff002fcbbbd8042d978490230791e2212f2ba4619c8eee5501bdbbf494d3c619b54812fe7f076e7984aeff55e360b45aa8c428ecc2c6dafc4fbbf4ec70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e0aa19ff1a1819ec0fbb97232ebbe28556828a9abb2436c8bdab5ff16684cf0657c95e1734e0fe34f7c22ef0d28794fe023051dc6a9426c3a08cbac60d6bc7a88497855e7360af7349ff5bc3c366efd835eb44683cf898a55075df0227e93514dd780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d84977e1a8d50d889ec986984cc5a8e472cc7ec641a3d27b8d87db914555ee85737ce9c7822c6725092d09cc88dd254702310090fe55d444dd1c053f809cc627dcb4ae792c09851aba2bec8636e725a84aad15fa6729c847c37e36326a3d3147fa67f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c1ab1501e41239d06d2785639539d852cd430e27ac985457258da3f673cbbaac06211b9d66ff064c2e27bd2fe2914b78023052d69d9fe0dab8da0cedd639c34fcb52073bfe767798b7a5864c34587872184bf780d4b7d6363188649253b76a793abe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d86e364c01ac76e33964cd7caf42775aa511d7abbe07b9bea4439797a13a016a95b57b04d21b6a72b53cb4785b3bd0d802300a0d640ee1cf4c7909b571dc96231f355c424f27c942ad3441c4f840b0b05fdff6508fc6e0620c42f9b149f3191a62610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f1f0cc3ec22a0214c5116ceffea129b9d034da12d013f7fe114cf4ead874306eed489abd332408625b5d4c1a685a00b023100a9a0391a4ecb4c42a2f1d5c077d48ece8391cc2b64ec2ab9ebff859bdd9652defb60f0ccbb5c3367d29e3018237fbbab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c5bd87f375191d649ff65511450f2b4de1121b4ec117de36a63142d378ad5901a8d697beee6c33e7f16c89f81cea948023040e1b815219766d0e6ef1c16850959215917ffcb7208c7c65e9380f99543711cd771942037785e7058e39df7162823a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f9d6f8d1d583056f32c905918de7a3121b526c4043f571cdbedb22f52612f98f05b9f6f2a40d66bd32a3d20fd9d2d4cc023100d8457d3941948e6083a68f45a5e18bdbdf9d73525892a3d32b636b945b27c9ddd1d328e9583177833d6755936d313cd60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f982ac7ac5429a5acf7d3fbae0d5ec2bbb03b7263249ec028e9a5c4ad216f17981e8e0382360ea3c37402781348c0c7023100e1d638e57fa3c7627a1dc07490e936c89a837663d44b40a476bdf61b2d0788378b40fa2eabc377d4cb2a7dd68e735b710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302fa01ef1c9f397f05dd93695405047f08f8707f1bb1f06d63992fce5e148f0b6030381ab4567e3cb0b3cbeff03e9990202305c5d3be1e69bdb6fb21d55d90478a0c77bffbd19474eb97875b37718746f6bc312936fc608d93e6341d623d9830c9d920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f228adc1f8e1d0714a597e746c2711926e8333cb2dcf1fc03f0c479331b086bd1952a9a9a67201c66ba1f78fc4f3688c02300d24bb686b8a43cfb3ba7b872ca4d3e4aae57b784175bbe247f58f1e9bfec88b283a78128fb72b11f46da8c2ca035c9d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aaed1b32ff4fd2911742edfd541474b87068fc0cd06e7b06b8d22b75638afd74eff30e89400da73162d857c1352c49a9023100ff378ed305ee0bc0ac001dcfe028c94ce826f730fe7dd79152a8280c7a949a6a6f1c0f4055cb84fe9405a170a8b6b6120302047c435bb5006730650231008baad6c1ab4804fff86475d8da30f0d3ee238ff4e8f6832485e33d78e97505306267170bea3fd25dcb8e8e3d191ffb91023063982a45fb0227fb1915e419d1bcee4a29610dcc4b838803435b33136ffce66f998606bf49b1e328e657aa77b99bdcd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023001dfdf970a92fce312ff1c97a4ddb7ce4499148f1cb4c061e4cd7f1dec93515dce55785e23d64240bff8c48fda2c45e4023100d5d3f63e73a2a5caf01d45cea114417dbf4e811ad39fa7ee1a4648e9234578945f9e8711efe8f151a6c928f1561ea1ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf5b66b5da89b9ea7cfe4118aed63fe29bf2d065b791c33db6545b19e9d7d040dc4306427a9a4e9148b5e9c84e92641b0230363e59a2c119e63873e2fcc3dbc15aa59c2a37dd75faeab06de578db1a7e870eb94aa0ccf50c0a310261c4b3d7fcde990302047c435bb500673065023100e283fa2ffc568d672a34d1976715e724056b1bd2883ca6b585b8e2a37dd398f46b2b00793a65c94e9226a11a9809e09a02304b222d86df6969afefdc519b49235a4f13d35d5323c45194984c0873d58f6fea33131261ccd37fa923c13bdffbc43e930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f6bc4a1e8f0de4e023f7bf8468db658ac2f9074d3f337ded31da776e6c7c0b7d7424b87bd76e506301985abeb893040023036cbe1bc667f0470a98a89c67de1b2c4348662f3c50da9374281bcaebcb9720aba9db3022c1fc05d73405bb4731153ee0302047c435bb5006730650230053de194386fb5151c697c9e385fcbfa6dd1fe51d5cde8779f6f7df6a21c9fd0bf532e17457cb6c7ac4a4b14c63995d70231008c354c0a6d7783e00942d6880ec09c90eda00ea88a44329945723a3977149c5ced54cc0cd8da3edd9622d2145898c8440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec289467082230a0b0226070af21bc2d53686fd56fff1810720e1adb3f114a4f480db7bdb1b3845387dddf1daddb027a0231009556ade3ec3b2f7598d6a56d1e265ee444388baf61666c02e29f8dc46f6b0a376597ab71e82ff0c4c0faf3089caae3200302047c435bb500673065023028a5171dd6a8dea655238087202ff7ca8f9249624e896aad07317bd8447590aa435dc576b91750924f3a83ac0ccd8e1b023100a136f564343aa8b2ebaeca1b84edcfd75bf057331c7e78f2e287f36330c69c17b8bda38b76fa4e161e516c75cae530490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e0edd70961663a269a6b25509d54e0028a673c88c917b7175a237a6b7169d6b51b70842f141fb5d674939eab4ccddf04023100bcea6d7e218d2269478ca6672d9d14fdd9cdfc3c4e85d781ebfcaca11f4a8126fb26658d3308c259f12fd583953fad8a0302047c435bb500663064023052149e58aa4c85d280ef13b507a88b89bd7e9acdd22ead4a991822cef9ee8e32ccaddbdfdad97797b46c4e366d75193d02307886ef3073f17cc0262aa0adba0cb8b5459f9b1c0185d4e5921958449733dfe40197756a24b1d4e346256fb5f4185fbc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230386c799f0b19d8d2f6bc68de483a0ef79e15c85e9b7747163cf63db8fc7678a02ef360a78aff66bb9332f5238cdb306c02302a9432ac22ba44d222b1b2f4a93638dd626ca57524fb98a2186577db1f1a1101ed5bad4c7fdee5107b3576ac1bd4f2050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230527679f4f8f04e7e30b164ccc8e397c44b3eb2ba808483c387a03313531bfabad055bd4b7f8c1920b7a473edd258a53d023009e4661317846968a54c73afec295e316b4c4585b7b0e52540633df993fefc5c08c93a49fc7fbeb256d5b1f137efc9860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230527679f4f8f04e7e30b164ccc8e397c44b3eb2ba808483c387a03313531bfabad055bd4b7f8c1920b7a473edd258a53d023009e4661317846968a54c73afec295e316b4c4585b7b0e52540633df993fefc5c08c93a49fc7fbeb256d5b1f137efc9860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304728dcc105321690370093e71db9e3f83d10b1e6d56a5536b0ef028fdc877867c07b9af138a101552f45be70d564e04402310084f1d70db3b17e20325cc3c80d33cd9446c8590d692ed895abb6f6f1d0307f5e44d28fba7c096672411093769d10f3cb0302047c435bb5006630640230662d49e198eb5133e5e874bd442281fb4a2b84591ca1c7fec183b8c5b023b7fdba2a829df367e6af6870227eaf67f99c02307297411b4f9a15e2405afda1942db76ffe6412a64bd0a7e95805f3059a73dbad0a58346fc048799a9a4ab3b755dbb7640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306fd5a84467ad4baf7ae42f800f932e3be884fda3f17c0b43b9b8681e20365e97eec72c7c14ce600d4196767e3c9a5b840230420711ba5a0df89ccfc9249d082933883077d350e336cbb22bce3f73fed5f3d5b1d9abec8c5d1f67caff49ad9f1be91b0302047c435bb500673065023100982766bf8b1208a43ee95ca612d7773d9d639649fda8869cc831a2e5889344d3d123839124263bfbc1cf16899b8450ee02306eda547e72279064101aa0d0584b7b2a0def2b8861b2716451930b1b67c809b2c5acb2298450b86b4f542cfc1d94d93e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e0a2bafacca6e62daabcc7d352e21c0069ec5c9fc29dc3a66c26331fd924333e6ac1561b55b9053f11da99c177a7385023100e0b8938437f2aa14342678f3cce88e65a35477078c14714e3495c9c643233acdf1011d64b9621f276c1315d9cbd9c50d0302047c435bb50067306502304058c77f283e86bd2b113480228a0a6eea9e24b090463b911f87f308fb6bd1ff9e7ca1f647bb2bcc90721b29f1899ecc023100a918f2876d162293be728c151316176efd7c3542d2baa7cc8893e20b3745cf3d14a3f55d76cd5df0510921cb9cb1a37a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023062f9ff8649c86a629517b0544cd3c25076666360f04412c9951cea1bbbd37397bda7dcd65ea278495a343e84878a60a402310094dcba6acc188998287278bf9f3a32d9bec81c7f5386174e21cc79f9650b46350343dff093dc3f560f6d75963851627c0302047c435bb500673065023100b9a42ca21c7554193092baf110cdb53c5f39551fa7e4b82e637ec2f59338e39b04bf1f152de5a53fc14e73ee35a007fc02304301d4190e5e8ebf0f5f8adf84f2907f350494cf66ffaa083d5cf8c0f7e51d06ff3f4c77a0a6817ac74938fa510826140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230059e5ccf3e261e6c5b6d3282ff7f59a311e289778b9138f503eeed642958ee4c07e7445f157e56f4d1885d72256475de023100950b8dead0e065d920ece680a690f6edcf21c637fe8a6bb7ca22b15a55a5e6b5284419a9ac11179be87e59ada441bbb70302047c435bb500683066023100aec389d260ada176c6a497cfaa4e76897f33a3c6eeb322450d2d8f2d8148123e6b38c411453848187751d80aaecf49e20231008cb885901934d6dc7c4eeff6dd931307d74a6a1541123857ad6a6ed12b29beeb31e75f9bd925068e85480f99f2b157cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023066faa2ca7b09e4820f60ea44a7ed9b35f677092d511b695c73c2908bb17cad4db2b35b94ff89499e19871f28bb36600e023024f3c91252c6ccadea2ed00e594879489ff92d4725a619cf7b6a6e420c12739872268013f3e2360b99dd63eb70eb9d290302047c435bb50067306502303b321ceeee9802ca28dc02dee1f6b720596070db52404bab921b1fa3acccb05eb599ca67f080b6abb7af1ac15f16d1d2023100dd1f1d72c45f3b60e169cb4f31e44ded152eb73fcf790952a9fe32b9b5278b056d4ab6c616938c36fb831ae8a46a161f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1cc060919c2cee50d35ee90d48ef17a3464c63fa33641be61b1eb1a1d09173154886dae73c5600fa0644060d706828a023100df0c8e7adcbc0058eb197501e170d416a3764452ed57b7a25dfcac4fbeebe5a2c313dcd81d238f98d678f7905fa1d92e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306dda923f26522c6176e30b9db6f90a8082b02e30ff855928e7c337a58d11f559635ea5b77d3edbf0a36ab9cb5859cfce0231009e7dc1dce066653f91f4667d4340f0dc009d2ecdc48637497d49c2c8a3280afd6e3efad2c6f7e3fc797919c9672fdc5f0302047c435bb500663064023002b08c40600510e83b23ad7ecc80551efa3096f64f3bae085f4b4884767ce7d585676cc1b8b0895d1d3a9101e21d006702301f3ff8ddc2e39ec0d6fc5e4a6de170593ab0c81279fb848e107f01d84fa4071fac810d9496f4c37e58744d496b7cddf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c9abf71c5e69d6792643490d48bd1f429b722876a0f1197dba557acad75b275c8994425fe27c1d0d061f86af1266c69302303e2abee39c22771532a6260ff21d8ce602ff86030f02ab3f66c043b294b169ffaf89b4b6071ad1c88e4e6bb02c3308530302047c435bb500673065023068058fe2a8b8befa5662ca8a545437f6cc34270824892453da3ad53730074067c730647e9d7268290c5d8f38102aef1b023100804233fb8ba0fe12a7a9e5299e06b5108aa8b47794a7b3d9a28fdb5bcc17d78552e2b7dd4cdb5a74c935fee08e679b710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e9df9bf92caf297fb9336e756edfaf46281bf99f0e6c1378670a93d9bea1e4cda84a82e4f7131978ff60a1cd4e099245023079b86b80fc7772ebe5ca5062aa40ed84ac2839438d1e3f3a2835b5b4cb1825dc1e97b719e35b4524ffe5351ee48ecb250302047c435bb500663064023045f2086df5182329be19f6d120aea3ea5674eb42cd2d0616a201a46dcec0395a15c830058a349d315dcd8cdf1e37c8c9023065d1c33357e40d167148b73a689b7c2268d2e13e3c26024f69099668e0fb16c4bd40733d9892e489b436f83389a295030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ba75e6807e78442d734e8f5406019467b35abb66017d7fc521ee4a25e180ed2dc25cd5377042656bf7955dda5d847860230093912c663f028539c1505b49127daccf787894f71775bdc4c7fc744f01676e31204afd55c9e90c978c2abb3c80ecd9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230094cd14102054184c7d1376cc16399f20c8ed349c667fac8b2e4c923e7445a8047bcc68513146bb23ea54374cc26949b02305d8ef2ff2eec79709d346dbaad0193d827116a0466ef9603a33055f5eb09d347414f23f2aa1d48cda6efc97e72882ff50302047c435bb500673065023100fbc1f3cf66bf3ea0a8aed446929a0a1571460bcd091e84d970b605a3739c3168e1ffd2a44aaaf09bc0abafdfdd6f066c0230407a84c4f82ec127840d1a09a7d36093fc6c45130107b8579cd7e031611a2f9d27e475a0da27facecc897485b1eb40eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e25310615711e3030c982e74888db044f734060aa097b54dafaff2dc68e4c6dece8b014213d39b942e8d6d76f1b34fc5023100b8bd728a355b5d7ca1a65b1c773fbf778eefaccbe646fa5423ec095b4e02be34ae96caef29f114c49bc5704794ffd8be0302047c435bb50067306502303e2abeac0f944e01d48734755ad24eef5c3c8b6acba4a45c47bfa83b72a45f24789ae1a9d8653c57d68068e585714d0d023100d4d587e8af2875eed96876b97d83b4f8ac7b3785b928818c4f99b8c78768432a55b542f5949d02dd5717c7e4387d12600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1e60240cbbc4345fb16fa2a607d5acee81e36555f545f70d2533272a0f0ec5903db5c774be239369a54b3b3dd7c7410023029d2eaaec1de229d187dbc6ffe5c18e070b7bd99abddd0d836652e415a2ecb7360a3c8e841836f5d0b1a79b629a0a1520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbdc29dfd8afc081a25e62a1b02750d89b5929643ec942bc6ec951779dc5e4a6543c453c2b3ae442736fdfb782307d14023100c649dbc1ca1667037737bbf27463fe149d30d687fe0ccf3fc1d00fe612551e0a78486dbb6f97e16eca4b37f223a59be60302047c435bb50067306502310099fbdc46f64774cf38f8170e26398e8dc914b7a13525b688a5428525639aa2fc923982a05712ad5d3df9d7125897b086023003215dac9a750d47c7082851b2d6c994b035f46e1ef5239a08077508b4c01162a690c49199c6dacb90a24a19bf34d3bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f03f2d288247095508480cc318d93afca5a42a17241cc5bc6b0fb8799485ac9f52353027a2b55c1707c804e2b5d640602306bdc4c1fb648725570c1942027c280252e4ccf5048ddf45d7f4d5bf3b487ceaeabb614ee4a1b4308757e570558cd984d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306ddb450f47aa73afeeb40cafaf9a0c330913d97e1cfed7fb2ce5ea31f19694311ba395bf6d21e720a82cd8c85ebedd5902305e34a57020ce879fc2ae84b25e7325563d841114ac9c0e099a2ed8ac2531bf1e40bca4c9f9c93fcb0f9ab7ce27aeacca0302047c435bb50066306402302c3f96c2653c340aafc319dc4439b6b70609f0c82f5b105998867fe7e99879addf042a28ae47a189ac06e50bb669dcf502306c4d981c903e7e86be6aec64a2f72a668554c64ac7478de2f413030984b7a3a3a6dfd34075d20c3b4bf1c3515731449e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a32d838fc18e7be5f25c6e7c7da354da87975a94a63650ee6f86e178d83464cbd6b8be7fb324b5e0cb57aaa303b9f656023100ee5e1b29592e94a93dacc848f8fd695f9affdc481edb7ce01d690ecacb6219a61f8a7f4fdc482c1030de2325e722cf2d0302047c435bb5006730650231008fe511ca072ad7399e91877f8f4eef9341c9d79323fd1ba255b223db2997643f57a773e4e9cbdb4f703448384e227d0f02306879a297602d0e16b793ba490ec165f4c763b41ca337f983f018cb692b410db71d6c2e723f2e0b1ead4ec7efa43967370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026ed7db7e80f598b3042476e29477723e36b3b9b9b75e08ce572e16438a6ee5cf0b58c288629e6d21a444e9c35d34e8902301dcdccb0d8eea4c07ff61865e2a6060ce4111c6b81bafe74d4b4484107f6308558df7eca58ca5cc4d0bdb082d8838eb70302047c435bb50066306402302d164de02c571e51fa36d6beb84e6ad571dfdf4ed4cef0bb9378a38aab97139e7794ff74489752127436ef7f85ee31ef0230413fcc851e5264e784785ae771f580ed53b65dd9021ad09a4117af3298b66efe54dc480d4f5bb3177dde12801e2333120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008a44cb44ba66c300307fc9a8f9e88024ff3a75d0ec115ccbb51e7444a391071435232f2b4fcc49ac6e9c77c9f692952c02302951c62c6bea1277064f643bcafaadccae658243ef2232fa351c78fb546587154b8555b442e5a47486bbd62a747585a10302047c435bb50066306402304f500d0d12a34077440888aa81742cd306739272f3e86068ee562ec6a7a92c72d6f647c3c32473642f78ca398e9dcac80230740b96f078120dc699fae8b65af65a4fa1ea435d65f5d74498fd82dffc0d38dd08b9ee22bc76a55d4944eac10156b4dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d41154bb7c11374b2fe64a2ba8e0a142bd18243f638d4ffc18e04949c56c5473903cf513b2673ef5956d7f9cd1e824d3023100a320285203c4908086da0df0864160770a301412bb613fad7019e6921e289ac78abd579576067c01d202f7bea3c8b97a0302047c435bb5006730650230231984efd6e36c30ec8c6d74fa5cd298912167f6d9ef647022ac20a59bed0aac26b8c761ae430775f8ac13c27da03941023100d22644e5c989acc600ad82714e0777039445c6ffd54aaa58cada81e97583c152abb78ea5f0a1153338fd4904ed0e9cdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f33853d9b6b2b2a6e57af7f85df2de74289d4fe93869ce717d65d39ad45153b32a6a7405271bb72f8e856e093f43fab023100b19712dc81d535d12ff2e58966cb20ab5e04590969816c83935d7a393542447fc3eafd24c52ef8223155889eb858b5080302047c435bb50067306502306dcee081b08875307d314ba6459e89a93d2aa11e26e06077f67f3ab16102061514b0011d0887f844ee4847739af3abb7023100960e36fbcf84c2ac59a759f1f940c9601c35cf0b3bd62e9be25dbc8b47957c93fd7eb50b9c163ac7426fc21108f259030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023071acc4c55cf80e4d74bac686c979a0e11a43b374ebd8b4e827eec39e7c622aa02bc0f3a73c74a3d3b3763f9fa5be4a3802302f4ac376625d26eb93b4e7542b0ae5eaedb9a6ccb7cbd62e4e71c4f7d1c9d5badaa5c79ae3283add3fbc6f1d82007ae10302047c435bb500683066023100be60f82e7c4ae8fd0915e0a165eb2f3e181c72c9e996d89002de2ddf5367a0581b642ab1833dde43bcf225ba84c6ffb90231008825e3a6f0412ac0d7e48585f695df58442d42642e74a94ba60a0d05afff2fa7cc6551c0274a5de56aab4f6f074ac6870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cbd4673c36c8d6502b23af1e3ba4c0c50f9da9cc81e0f4d0329bcba8963915fd0971a1857a3299e688597a68bc44cc6e023100d770e234f4de92f28d696c31e2b4496b09023b1b11216807fb52dbec80ac87706a76c9d4354bae9b962d190d6d69b8d00302047c435bb5006630640230037fc0bf4f7cdce52fcd8e4dbdf3f25e19f476a8964f1f5e1a8a04a830cd03d479215ded948cbedee03d6b2806660992023040509fc80e0fbbd3b3035d29f64ccb30daae444f9aeb2aa7617ef28af9932543985a1e82f79f00c2fe91c79498b244e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b0f0c04b0e6f753dafea40c3a6cb06b1180c29f2224909335c417f2dbdc43fc6788f3d28f7b5ddfcc5939b453e765da5023100b6ed08aa7102245daf4426447ecc173178c01c073652726923311de82318ca2d3f1a07695e6fba1239dbb7cb8b26b2d50302047c435bb50067306502310093b76be2aafdb14f25c992fabf3e34d4c8c97a1acbc433924a98b89827df04a34c59c086f7173462fa16ff693842161b023043e79d2d36229223eb34aee1a4f1e3818b1d716bc9ce681fb58a8889fdb915e4c69d850e21ce0cb0c4d6c7c3ed633a370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300628336d3b259ff61de8348a4b01348ce1b58ea9090da3d85a9b7c3ddf727acf640821f04d530fb5c5dfe8d08e52831d023100fd17165cacad99f8cbcdaf147de7ae78233221c62a0bc41db4449a1804f8c0df28343f7c4af0760b22335cd6ffafc4780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300efd402416a3290e51841c79309c04e898ecdc9d4bb69874e26364db06e6053beae95e2fd809b35297bc8a52ca081428023100f0b670bf50ce26797caa162cbb0a0cd1c2197532ebc76970269fe437fea51d9381aed6fd9081059480f901325d393bfb0302047c435bb5006630640230581a80f47bd0c2c49668deac54574ca6e947a8a5566dc19613a31aabc1ba429336123a43b99dd37233033863cce000a802300255a23a2ab3b3cd6e314b6b0d41d4d8846a53d6e2f5eabd9049d23a7954fd76b0b3fab483b44bcd75d9a3ecf67a8b2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ea7f4738c499eb8e144ce719a3ffe3b4262071631178bc12f46c5172b899851225572fad955909456ffbfb240c81144023100e78fae629d066da4d14f44e6f7d75b44744766d6fc6327c7f6139e948bbed3e59a8647f7961cc099a269ede3fe246a270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306648011570a7dae32ee53967b968af374e0318c8fb0fcc6d51a3c0c56dad680b8b5d7022eff69de006ceeedfa4ec70c4023100912738068e9af069c3c3554af6d7ba16066dfece9c592ab67aa9d00881b16ff54d452b3c0e596d27c1b5d7dcd293b4320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100882b6b82c812597d17b0910909282f61b6c609a735de693262fa8655bf8d1d06cf7ebbb2f24957ddfad7643d502786ed023100c97fee74889a951f277361630d6176494dc30ecc75faeb9c0d73d2b00aefb8dbd69c518813ef5afa19c9258d170b59e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303f74e9f5763376adef6c455565674ed1636c9f5b03dfe02ef6bb7e0601e6b47c8291794fd356f182e72d534aaa4b2fd9023100b8815e6074b247624cbfa08bd52e40a408c869172c57f48c1c305cecb37c40bfcd61be14ccf945193c2adb0d03a828bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efacf5cbcbfbe4464b0e6c96fe5ce3b26104eb12c1f21ee976040af820eb924d291e4c07c5779f22e47289db850ca93b023068e3b46e7ad37757a0ec9755cd57b5b672b426c1c852b8f9334cd5c6ba02deef2365f812c9ebbbf82413fe8c36dc03710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100985d1e7013a70caf983564792cc210db057feb62f1c30ba03d695001f6b5247f7e1796768f67e0daa80381c4156d39a102300773188bf1dacf5370d5f0cf4b2e692d7816c2b89c8b3f4d48e1c1b0b7aca8c009d2e2eb6df2244c4a457ea76b0e5e5e0302047c435bb50067306502301deba1bb9e9388d429efe6388d81c098f3aa210fe8334c32484088f8a8878029c68ab078a2680c49c872a9c29265534b023100c65c8efa1cbc5b15ba6f5f63529938c9cb5961a8a868aa8b17bef9001b4832488cea560864343b89387416705ede1dd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e8b0c831541318aeb3383dd10efc0d9080a5000370a1b13ad3b4df592e28ad6568ba02bfdcdaa96dd92b7f9e68df2b56023100b79e679c0e5490492d504c74d97c43d02e67681e95a7f444229a922a52ba7b37e2ace34a2c04551d273e481f045f2bfc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4f6b9a37128c00acbdf5eb2888e7e5256cc72ae1e41f6c5a967d4602f9adf9d5ab4f3a39f69910a09238cb9ee175f8b02305c383b1fb7aa648e65ce3683df185370a036cc4fa27f6c3675a4ed5a2675e627823929455fe906a51a289e24a725db390302047c435bb50066306402306a2aca995a4d5e073e1ef98390e524e06c8bfbe5003fda765e4114c01052349b39d10c6e6d1a866368e9ff9edaab4fb502303506705ddbd3486eddc07ef2fe3da63445146219109f9c759da7f8a7a3432d2cae99fde9765ba9727573e8d357f5aaa20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd06bca2f9149b66e4bbd619a70fb6f624f7152ecabee837ffc46d6144cf041ccaf82daafe3d4851140779d87d9900e60230596d880221b4a6c6af5803e4bd3058b7c1752e3f9a06a1c7982a35f2f1e1df1ee5fc6f6b79d0fed199d629fe2d893fca0302047c435bb500683066023100ef43fd854c215b12e03c9d99d22329296f32fe06f3da62c26847ce41f3704c7009115331f6ed2577b6068a33a0b2d3c6023100aa97a21a3cac18ef0e3e03669de71623dd30b6182afcf696ed5855a854e338cfe2d3aedd4eaca6e34514d20555e23ad90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8df2f3251f8ac7f70b667bcd1d9cf0e82baf7ddc27578c01867b73d0992157bc123cda3bdfd2a3a23125f15d246cb9502310095694ec10df9ecce05d8cc94932d51cf7f5cfa2e75d266bfa5ad51a83bfccd9311c2e0fd5a569c419faf7482a55a73020302047c435bb500663064023100fe5bc83f30744458316c99bc2f754ce6cea7836d443583cc7efb66d168e95fc895078cfb3f7d63ea8a3a93e30d4e4f1a022f724e82d67be83957fcb6eb63366f63bca75e6e50cdd23b5972cb89e8de1f1d36866531bd8bae610e1f7fb51ae4a9b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230226667098b55ca2f03ef3ae03b816cc4cb933ce8871cbbda90665d71bf433cbaf2bf14ef972d74342b9dfee21fb1ed11023070ad971a092f446a4e9c613fc49ab75b9d2578bb775626c3e0cb7ca80f042236a44f7ee418b0b5554daafb39fa7258100302047c435bb50066306402303d6a95490164fedacead90851a19e3347a2aeef2ea6f26f2a4658a3a7ebaa8b82504261ac36d4704d505619394fbd0ac02302fc7ec4cdc4c8139af53e1705870799afa3521e3e1977a776b2f222b806f80d4040ca486a02150c6e4d605aa82aee6da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cad0b8b0909e32db614fa5c3ed3d3dff67080f44bc1888a805e8c601cda3a13a23b12b875b215014b18aec89dcc82c93023100b3c39f8eeac75201f3bcec1ee924d78adab18b6a620098efb5695897452c73fefb29e06438cd95f5987587bf440d4d5a0302047c435bb500663064023040956766c995df938b9ce7b97b6423d54ab5bfc9babd3922289317dc8e2b368c6d4904858a80585bb65d54d137081a15023034665a8db05837f2d97b7ecc60c40b62b9b8b00ea979eb7eb5e2c63b5c90d62f18261d37ff7638655ac767032ccbd91f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070c93d0280d5fd2601ed81cccb456ec161711c2d408936a45bc820eb7e436812b14facc4064638d874d9794a1d9db4fb0230277e4e60cf0258987ed298524cef2a9511e336860fc4cffcda78524c4bbc6978be079b2e7ea6398c2ec2692cff5907ab0302047c435bb5006730650231009bbc81c68d5c69a8d71412aaa0582924c9ddb1e7d31d8759563a837b3d1d6120c01e9ad674b1f2e55b7d5b5316759e4c0230138ee83f416612a2c778a51ccd7d7d22288e817b18a4ff7dfde250fe923236a5c18c5de29a7bea9793473672db4cc7440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e607bb7100a04a78a7fadd8b27be95d0fa2451672f65c690283f927c64f52307e9077047bb273a1d5280b902c77b6fcc02310096d25e00da7a9c2e7d8d4953d787356c136d7c857102b6214a9ca5153d4299bb7f8cda53c46dd88c7b270e183d919bfe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a6451eb37dcbd1ead46547144eb24f9fb891ee9bb893549031eb10bac973916e918ea63cc6bd45f1a24b04d2b12ea3402303ed43530abf474de3377340a8b8f0b5983aa217cc71a82cb73392bc2ccc8e04a577bb99490a8169dcaf2dccd0ac100050302047c435bb50067306502301834a84a7f49387493ab1b67c9c799eddd9c4a729a8805cc5c346c65cc3783b7417d3cad08320a042abafdd71abd01c3023100f75ec757ab4afd89bd4b8189201363f356b68c4122e3e07bc5b67469c1511122c5b4f13d0b1e35195e5c744e108c8cee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009efcf88a5d399fff2ac3d046bb687b6b17fb933bda3b140b559a4deac0ad9e90737a64675115d408f512a004076ba77e02301b85abc4c47166d6a479c20f5baea2f76f88902ba7644c301af65d9971bd9559f71c1bc53f38ed4f11919dc2ddff87140302047c435bb500683066023100851c9e49720678714a1f74b3f42ce66fc7c4b3b240f27e30921b7650265329275eb239e5a19716537e3d7de92c710505023100f1ce08efed53698e053797d6769932f52a0e3c12f9ba810e5fc49240c1c6ff964d3b0757a2de490013a20d6579430a7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5f62327524505f4e67c68ccc6585fbe5572cb4a92643ed87afcc4d68ceb9ee7a6a42ddfc150de875ff8a7fd3f62bbc802301401fd98571eb318cc4388d7af02a170151bfcab0de4a3ff5354403d40e6a7582abf1fc4a5fe1a97273c0ff5c3f052230302047c435bb5006730650230280ea9674e2efb17caadbaf11a2db3e77ab3c48834412cec63a60963b3d8e4cc8218a4ebc54f02f8bb7fffcbd9c81eaa023100c80b5a392cb28a9850f435dbc423ff1a5fb310958c632e5c72d3f23eb7ad46b10f4d5fb574bff38f06f6708bf9815a370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023028b60fd10419aeda900b67ed0875dd5b8df004084d822dc6196b57ef681dd7e239cb69ba0006158faf6e5e3b1da4e0e3023100d383d4270acd431a954c49cd1f129e95685ef8c4a89c34f060af71155423c22e99d3ff95b19b017ed56cf09d7626f9350302047c435bb500673065023054e06e052f3d0f6fbcd949e82e93a9799d0313b84b69b9a3d1957218d46729baf5269ad3172f2c64536f7099c489962d023100c052e74d2c9233535fce1427025df9402b06995cba81aecafc955400a53b994a1b9b7e65c7c78cd90a9c43f5fa8f14660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a86b7734a985757d75687e4f98f159f4648744e539eaaac13e579f9d60d991cbcfda41dadfed981a0e2063bc0d5a6593023050569432b54e07d36d04f1105b596ce4115ae8b6c9815d63d7a7dbfab188296987be6542751cfbb74a222e78525cb7810302047c435bb5006730650231008802c475275362bbf43d8539c81bcb7cf3de018ab146c0535913cd7fe113c9d53a345a237080228874d9f7de99d6fbb002306e793b0669703373c953b8d94c4a345fa104e90b82daae8b97939f1887c6a9f811a37b794de09c92715e45c3d3e6b52d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e2f465d84fc4fddafa7f4134e312029a9376d5dd2c7bddd989eb1a745dc586e5938e788b7c4586b223404302db0ac04c02301a7fa848bf7b6f30b751b072850afc083f4d24648fa967a1bd9affce4dc5a5ed818085ef75027abc8e9ab0e41b102b590302047c435bb500683066023100cd0cb1c4792851889a92d4c0bf839daf89ae13a55517f8941ab960c96b46176aa9f6783192b59fad787a84aa9bfb55f9023100a3bf872bdb6506b921c6d488fbe6b2d86c174197faa0320ba579362e3c69bcf9a90987a5c1355273e0b51e7888eb52720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029b548e037b2eb780c4fb5d69beb5efec1d2a3f50a74a73a74e761975e65bf42be2fefd615c542bb263287471122a688023077c537a20ae39af034a404c728649ffc122730f2b89b7e6b1c4a4a8c5e7a486ec7fd0392860ad18a7102c9fc4502c9830302047c435bb50066306402301db01eae73fc5898a9486d37b10596421d27546533e54a934338f60bf9c8b51fc2a79b30ec1adaf25236eae66c41be6202300dac7fad07cdd0602e71577e34f95a1a2a30ffec21f4dcdc28e1bf8d68b1784626b8bebd8dfe8c51e5291aeaadf09a8f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e50f546b2b09bb7e220af5163cbcd38f72a7c8dd50485fbcc1cf5de3630141d2d5056948954f588c4f1f379ba6df854023100ee8c2c9eed036bb897d61dcead18a0db19f1e0d75eee7fc49789a34cfba69c4c897241212db6ca7c8609548cb94473620302047c435bb500683066023100c00370916f71986c9cf379e873729e25ca3e7b4646d9dc01c5ae86bdf88d9818750d994bb9980c36267c8a7d6c1cda19023100af29c20edbe7bd56eb6542e03bc68a10dc68698a818f8350cf2d709a47227b5bc8af47aae39d3931644360b4dafda2960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015b014b366fac95f7013707b2929bd880b14376979cd570257cb35305db03ef34e3ce3aed64d5be36cef9ca2483735c9023100beff4c8eac1eb4d092ce45b19adbf4702059577e87cf0b585a4aae03add6f30e452398f5d5566527d93be9d8bac02a1f0302047c435bb500673065023061f4b60b93b8d69bcd868eef136a1d77b3e6b9dec5cd4515ddbfa0e34d970939559bec2589b2553787dfcace4a0801f9023100964d6767175b98f1ef961d88137cf72a24fdc3bdd56429f9c4331a7bc2f75b8e9fbcb8f308321bf6e238bcf6abd315120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023036fedd3571d7e5784eab5458a2556287f50ff6fa2d8af28ad706f87f06697294440d02ac654930693d6de0a1a1c0e19702310097519fbc896d7230cc2a5aa1f1d358cc7c4aa4a1aff3ebde87b23d05c0bca20bef24e495028ffb292a2bc833620288ab0302047c435bb5006830660231008ef4ed3c40abe98fa7264f12f77b63b5980b054accf5603004fc75dd1d76e3e42700b660a32f544c102714fa8ebb421a02310099c9f2596f548c98a4674f18a13ea791899b43379cf49ad2fa085eab3302a2cdb7ac51f493903760aad1080da58e8d320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023028d0cd6e8489d8a2bdf05524308427592d77ab8d3ac0e7a887d4c9b395a284ceefe73e152c0f3920ea7b1b9175ac66e30231009a50607a6d2b588f13cf2926704884b4bf5a6ec5ec0e08747e9bb8d7640d072b30b848616100204d916b1774e7b992460302047c435bb500673065023100a5cbfa2ece70459b61c4391c164ba1470aff764c5a477fba618615f5a9ea4aa8f53900f469843f4c18c7ddc7acd3f10e0230726e324c2af7cc557191d590e07d8f4082920eb7cbbbbcaec47d14300755ed6e9aa3030c9eb7aeced3316749e88515000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ecb12cc08c3b488e6f624c89118c4846c41f464b315b0764deec6469416c683c7777f8d0d02c38dab5a5f5239a8851aa023100efc6d933c272d000c14c0e5ee67ccd57908bd182550beea2792b7f6c1fd9828c4472cec7db1db3ff0753f9c86f2df5400302047c435bb5006830660231009e14009792762d26a9aac594723a399d1829372cda368ebd8f4f13f13dc5e517ec3109497391fa3b55435f175fcae30402310091e57acc39c9f29cb5e45bbbe9fb73325208d6d60817f8ea609f273f19b12b766919213ab7872a38bf4c3d00120ad54d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a4e34e9af3c8c36222f6c3cdd3ca7311fdf122ec70b3d6a410727d0a0b9e07745b9e47e498fc7507525dd95809b01dc4023100e7074a59e59b28846c61cdbf4949a177ffa80920468460c7b82ba3e058ba4f67e280d82799b8a941420cccc5c6aebb860302047c435bb5006730650230208a73fd1719a6b268f407765ac5f70f932f6cc08338f331615b9230554c7b63c761850ac275e5b3cab3560ccc75b26e0231008e9bcd6ae2f8e837c3703121fbd6be1210d20346b640e6d07ad0ac0d99a06e116c9a1268b4abeed82a3f7d80f7df33080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230588f7ba5e889b9c016056010831c8bc8a6cb74d6ec5dad890c853f0d47cc7892a4f1b71dd5d8988ca3996ab55d221b9702305009006558fc81b5b60bdb1882a7cd48311973db35418b8b944eb707386443fa970528098a443b913e4c06d4dcdb5dda0302047c435bb500673065023100a8821be13deea2b475da3e635868e65c14bab49e880857a9ea923df35513483d9fc15c8c5885d0993e334b0b6c1d6aa2023018ebe27ef282ea738585629986d4255313f174382433e6aff6ccf4113e38a0664cf9d8ac7b5c4ea7817b2d88f218bfa60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300bfe1917e78461bdf97e0103124fa6b827b9c1962ad7a2a13744135b5dbfb3858cf9e697919d5d2ab61edb2609a7f25e023026958a457a6fc15084dfdb64b0e7aa1bb832752310b2c1c0d5c5de295de3423f8452ca1af11720fbc94e2a458fe751f30302047c435bb500683066023100a31698542c5e9cee613a553cf149ffd3b67a646a1b4e2d21500ca5458d137bf5f5e0013139e2bde739639db8e2ebcf98023100fd7e406ba636a2006e55c2261ef07a3db7a283f39b322ee45c907f6e5e911291d6c10d186993f14a876c1d061c65b3030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b26a36b3dabb9b15592967d8f4e946186a9f292586e2b102bc064d96aa6a7a1c636d6d77964f254fdaaaf0e5ca3067fc023061d94f5b1bb7e5fb015ff7aa41f7ff82d237bc553df5b50590f40780d13078d9beda9d76b0af1f7d523af04a660ac0a90302047c435bb50066306402301667f018f95ab0261332ce367f2d87a96c1ce10bcbdae74f72c5cbb2c5191244fc437836c76340db43e250aa2e8112450230377f2d76fc465bb9503e6616d9786998536b70cb1e1f08c0dc9e1ed925e9f17caf55739ad4b4488acb7fde6a2827bd180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4d8cd34191fcf5c3c9f91139194b3c43de07f5344613fe875f69f269a7c23891f64b010ba6cc1ab0cd6012b3435d731023068d1d05d8128af25ea64bb4b44c38a0e72f0c0f5cc5dc21ea75cba4d415e2d7c537d69b54eb6949ec39911b4a0c28b130302047c435bb500673065023100f689e97134dedc4540ea9971957cef81d71670f8c295addeeec494c4a486f87e6a5e8dc49dc6e690f9b3da7f7386e56d02306eae2a3d6930685fc9b718990c3cdbe3b67269f6bf5304a79eb0199bf30f3f8973de62600e566241b74c7c6a34c1b2ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b75dc3e125a3654003c3df1e46c4ce78d2a77071475673dfec778a8960a8361e9e2c4bd894d85f1bcaf8bf25cfc48eb002303d356fd780097496298a3f91178470ab5016797762ee810720e6720f1f6586a34f7061628b0c39fd21b719c8bfdaa11a0302047c435bb500673065023100c96af927de39a8b21b1f1cee12cda743c42514a1e9f6eecf332ff5ebe3731333923138153af6c78ef906ee8cd0c89d290230354727455520abd824f5aa7cb03087c89e469d57601277b036035085dd4bd735d79820d833dd0dc064429f9fccbb0de60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023007c7e157ac18234c73a4c5e330de690b4892cb619113ae5b4249af20a12edfb70c0b018be669e620e237938994ca31cb023032ee571129b4cdcd31555403a58d178cc3598f3247cc7176426a3cc283bed72b12d570535800e616347937ace874d9410302047c435bb500683066023100ef04526b07d0f0752430f765aa13a1298cbf08303b0f3dbd7c2607959e09dd24c9e473403eff554a4a36c2e19b431e5e023100a53926ebe0aad11f3dbeb2b9563086dbac38f2094323c7fdeacc7f70948075137cc7ced817ebabb75b0c3f39607816870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ff097191a9864622403eeb372e5d1951c4f197fbb6d99b7933e84e6346cd0241e2dcf8043b2014cddf04529760c8d43f0231009b63f938667994db73866626fec3efdfc1d74780fff10f250d0fc981cbb1881a15495c4f3f356c84b402a21c0dc7a4d90302047c435bb500673065023100bfc3409e7fc83fdc53e0a83a01862c814f376c5e1738f2f626a81a0dc31daac34f5119be8b49a4d735ee8691a0aa1eea0230262c9522229db2533b892da90273732bcccf306d7ced75ea544a3f717e48a0bcf2bbcb130f22b68dafae52e97a8298850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e375df8117e364f15a32826ef0a6408fb47b2e68b977282973401d1051d27f6596a02ab1487cff8ac24688412ea85f41023008b96892421e24955f79e6b051b7d47b064f188703daa97c457493bd8a79563b4f4a04aa95ef3d817558f6cd8f22a0850302047c435bb500683066023100eb649370fba8b15921a896017dd397af36663a9391a01bcc36ee366eca3e238ff65848390f114818fee1176117286f98023100a7b0b3ccb0f1947bfda0b284be6d19591ab0373a05eed976773230f80e57a909556cb759c991e66e340b3e55830676200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dabb0706c472e7343fe06131d0d0b2abf46d60bedac0ce8d077f40a0306ec32837433cc33e2419a2b147ab04e3630c33023100a5986bbafe003496310372a60013ce88e2db6d7e7f6a1135604d952ad611b9cb7ef745e115264c51b12766940e5d45c40302047c435bb500673065023100c6c78b9c75049a26792ac4cb9c08b805d5570d4fd05941fe9bda8f3586aea8646ad440d723dde182ab4b8cc7d0694443023002add4b20ad32d680d800b7268ff73812d53c501d002fd644aad98fe7f0108556ab687526ab87f7f43ce0a33d4ff9bee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a0ba6e8a7e254cb3ee8901d3a0b8c2cf0aa490eb05a904cf2a0d2ea57fe3dccc88c5ad6493a6d0c76fb671e113f4a62902306ed890b243e2f78e8d1deec5ff58fa99cc9ed305eab7ffbfb42cc18f39ff1993159ed75e622dbd90e68abf436d7e93910302047c435bb500683066023100b10b28005c12add1963272ca5c2f76eaa278daf82fbc863c356c5916ed53d360887add849b2057d004ddb581c924599e023100dd627e6fbab99d85b10e7efe8ff674dbf1d574e2e688f484e6ee5be40d1fce837fb24abdde8ee83467db78e9d1b8cbd40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304292feb3c20563b2eea842fa1fe2cc5c06d5d55797019b7c3a37038b63c39a96587039da6a8c6bd248863761d592fb9f023100f56e576dc464fc9f890d53dc86e21f68dcece71f19879b8ded4851fc90b076ac9c96927ede08789c0393676040b0f3d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d5270e82c3fbf95253b5c2ef7eae144edec55bed4298b0fc36bba8492ef4f1e4fd123b85985ac943a82ca6d66e218ee1023100ad9c4085db4e04bb9d584391f55b4fead17ed72ed47619f866944c38eb1e77ff0f82b84abe6536f13495a09819ca181f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301dfbab24c37e6aa54cc035fd6694c52f3604f05e3e509ad81cc3048eeee2ccdc5a45da2dca53b1dd5239892777a7d19d023100d7ae4574c13fa8580da49f334b045f758dcc1ab9c1d28999221c858c46bfd5a244febfb6a86b393859cc50b554b913960302047c435bb500673065023100c8308f4219ece02ad6692a957c73ec841169952c8af9308a96680daea9dbef9b2dac340dfadd0c95ea317d4bc17979590230429a6a7643fb3834fc016461a010d15689042b1c2c954e7d1f2615e32d40d36361863d57acdf26cfee7992cb46f283110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023060d9cf423d025caa8dd9170dc2938533345872c1b752de43f889148c42c9c4df29f77c74cd865bf31b4ff41f3382e12e023100cf6a25f96a30d3551a66603b04895a63e91ae35df4e34024e8f935015d18f43a8494497daf2f34c5b84746af2d4b39310302047c435bb50067306502306406edf99f2eab831ed2ae4fd62e89bd5d01f6a1bafc5b63dfb6dc7e74cd97662d91691801e6fe75b114b59588e228bd0231008845560796a951f1406bee21d76dee2fae8d9f1227fed5ef2117d6f19d42e325affe042dfe5e2ff2c6be63175067cba70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305898cc0ecf6ad4a2c6f1ca15ce9a476912f6dea3a7540eebbd690ff79b210db0f5b3ac5d05147d0671aed9fdb10d66e902310082464cb1e33d5a753c6d164950803e8c2d66a196db0e58e9d11f07ec6c272bc0d149c0b1ddaf239ad8f84df0125489d80302047c435bb500673065023016bd62f3b484773e1fe21fe0dd9afab583b3e8ad47ca5a969c1b75a4fb59e5047eb1200daf5d24b967e06483f61ac474023100ec19ed6d551fa6b4ee758691a7527cc15819db7c0c5f558cd4c500dfba10269dea91a00ef15f6bebb77b762d1ad3afb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ab67223c7091f3606786e73a1196d9f7d88979037304293905465eeed3b978470ef27a2ae2bcb6b89e080f181b3920b602305e0e0519ca2f6619e835da787104e28215acb9b2d4b453854de8cc38add8b0a05cda24353fcde8ac8f72a15e0dbb14de0302047c435bb500683066023100c5063e46a2adaf52ffb718ad000c884f6e6f122321de754cfee8afd5aa3da371df1a032fa898dde9ce9dbdcd299d8c84023100c3c475d1f9bf7a16065830fcf5b31f7c426536d1395fd2f8d027d101124424da351e4bee358860b31cace6fec713c21f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c099a2a42490ed5869e2c869a9c039e476f98f94e144b112b72c800a25cd5accc4f00593c5d841890a9c90375eedc0cf0230053eb40ae3c499d1a38d90f4715d68d53a0ffc5903fd0d35c9b737dfa9fce52a805b578045b0b42eb20e3bb1f491f2060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5ad68c6a21fbcf2cc71fa24753eca2f041bd7e7d567b801728911c3b31861eedef6dc64f19a0bddf1657fea980ff6a902307aa86a9299b5a29114c3c66a5f4bb6b646162b7ee4d179bf28d2204a0db190bf56acf28e90ac9e93771211a8f12f1e280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100815c3934a41e4a9de02c7dcaee9949dcf5482f96edf6619a2c824518a0bce72f0d197756b39f4ebe42113dfff0c4b85c02300e9b21744c7ef56990e8cc49b085a795574b9945542e02c1c8f4c16732123b245e98965a0c1cb97753033b8524b72e5a0302047c435bb500683066023100ecdb20700ab23386ce487b424c4accd21c9d00e99be458cf581b5334d68637e6a7e8e6e557d53c19b818dd1b609bfebf023100b4c841f1f7214765df2c3885724d624bb823a65cb4daa3c1868a7344b14a4427db311f56122fbe6bf397fd125e9247520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c4dcd44d604a32a199d19f8eb91216ff9e67e14b845dd12d377aebbccd44a9b6baf764d87c0898e0321e4cdf3be2c48302304a3d038b6075258678642f13afd8fbbcc5de58b5786282ff3ba329ae1452fb7c7b16ca6f60ead9395b30fb06b9425bc40302047c435bb50067306502302c78386b0b8b48551ca6a3496ab502427217d757956b4509dc7183dce9a8a9296935097951d42909e2563e2059cb950d023100ababc7195f58660418bec428347a10e63355451cac87485c3d7c98f6469a9d5c2385474ce50feab0059893d2da19cea30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307716922ded52cbe7b0e0d389e6caef1962ee0a39e7df3418d52fc17d8072659d9e4bceb4cf8ef5e9010c95729678f21402301fcd94a44b4a5ef7840d40cbd04100d0050189d06804492367e2594334badcd54369e422d7f3d4a92ddaea3ebbed778d0302047c435bb500683066023100d41b19dc707ffe593250040b1ac96182b82e02384af4e5e9ab56b4551b694b376ade61462f8db02f8d7b505238339cff023100c0fb12831ea7cb5376c5451733e3cf8401b9aa28c6f4ead58f1d4c4d66c87aa9410bb293c208ac1efa95106aeb22a2c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bdb7de7d4cee61047c7ec41594b6a38d3f910bfa68e56c6dfa6627aa07f7aa22cec5f88284e3f1bb3b1c3aa8644b50d6023077a1075d91513c2188b0040b80b969c5cbf2fe6965cb6dfe0c086c0732dcbae4a9afbfa88f9e169479f6541ebb5196dc0302047c435bb5006730650230467650ead7517f05ee8bb7726a05685f4a35e1dede926e882fd21fbae6cd00a2c5b0363322902e7bc9123cf26727d724023100fb83993046ab5fafed08fa97a881d23ce5bc9ca03d135937714793a71c894022c225d307952ee82431d01d9024a12f8f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7702460fcd946561ecdc158c74b870d4d3b6fbe54c6bf98bb611a38b6d5a81a55ff10815f331a7a0c2a623651da1579023079d53d0c9b20e8acc10be5bd23134bf2e18395e0f4de93b73b813ccbf35ec4c1cf6113a3277d235ffba2f90405ecf5f60302047c435bb5006830660231008faa4ff32c46de19adbfc1eb262890dddd7f599ee4ad1b2d4f9fb75025edf775bdfb320770d9a0e5fade9e7a70e79ed3023100baee34b71938572341f17b1adf9f786ea3929a50bc1623581f51821d4117c2751c5d92a4ad2da9da25556da2aee0176b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060b6082a0001cdcaca4f8bc7c3c12a87a60be12a0f8041ebe523a6868b87d9dc3220dbe502a8c465827836e9fe06789502302af5dff14226ea7ea4df52177f7b8d72f3fe8275b1f7218ee6400b9ef9a1b854991060823b9ab7744e5adb00d33207900302047c435bb500663064023021ce3bbc9393f59618c285be1531e16abced8bcdf544ea1d4816c624793a706d5abb320b04fcb9726fc0ed307b9d09130230102a83d1eb6238a6bedb10b43be1ae23f8e73a7b3d7cd3a44c4b2e9e7eabfb9523b2cc4143151aaf8da268529ed7d9830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302a5fc21256eea6d479730771206d92409999cc20ea1b088c59792aa3c54f3a6449cab3a00d92cd3b9b06f19f9f8bb182023100b6d136a7855ea00b4d39a193ce70861996beacb194c4d77de3ecfcc033e268cdf9861a44e58b3a358aeeaa4db4504d060302047c435bb500683066023100ae0c12830695a1e180b9dc979ff477324e6a5d6708aaffb9ff27701144848a07e537006a280f8f32158c6164590bd34c0231008092e5629fa11b1b1c94938e7d6d1a7be1e2aad5e8925d04e5f8ed583b1f601ece398ca6523f3ec1f2393a55f58277cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303df6869c80491bca035cefa58c30add27ca3134d585da3f7af02d1eefe3f60dcfa9298d308abb20b30d9df4ed5066bcf023100e7e0a23a31414484a096dbdf24ffa903e1952e7e584ff8853dcb9bfb9d2f3cdfa266df103225fe43c699534b44fdc8840302047c435bb500673065023100dcabac4d4afea3db818a9dbf19b6bc84974e29730cf7f31dff2c53bf8a42731e3bc01737f74670761d2258c15ac15d7c02305d4e6055bde3864e65a6c563ecb44d22c4e49d0db4ba97b71c8bacd88d1255f23c8dafb28d75924af750e7c5e05c5c940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d05ef35c9d8282fa3bdb8f3480c62cecfe118d4e39656f21db6a4c3bbb06fb65eeb9cc51f7b8a67783507924020317002301bc4046a76bdca9c5fd1505786a5874345343d5eb8eaf43e9c9c0de62dd4dc1e7a43cf6ba7ab87e188448ec8267f34b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303448e80d650b5b5ea58181e07c7ec6019c6c431c168404d2968d2f37ab89abdfcf906d2c12402b8b0204ca0fa4ff8ef80231008e94ac78016ab1b6df964a6f1a863b6c8a5b4a5bc96d92cf8d9baed4fce82afd701b03cb78f23bba4ec78e4c0304c0230302047c435bb50067306502310093d7f450ac2b88ad5c8253c2ff9b8adfb0ee705b49fa21196775ed7a921725891ba476185471ff9c24a5b01a9522e1ef02306575e88eaf0f31894fc9f32154ad95a6898fae145206332fb9718c8bc0dcf2d2f6337d13b394ae28b9a18dfcacbb68580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307dbe83c08d602f49d839bac4d09f7465decb08e75777d8a165a08db3f528381e4253bfd1f00d4f34125beef9edb1bfb702307ee1f6210bbbfdd4ae3b3f49c7cdca763e1130d33a4af97edd52a1bf471a1c533ef9c4619e6bb1ec79b06a172d02c1d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023052530519c6e9845a238e750964085c7cf0d444c6a5bc6b91a5dbb8bacbdeb0de5fc8da50d9fe3ef07ad9042f943bad2b023100cb31eb117f9279d32724369b71532441743934647cf01e4c1714f409874702cb30a160c222f091f4ea55fd4aa9624d030302047c435bb500683066023100e498b3b3d5d817485c669c2894b37ed4b212c4f469b08861aa0d7fbf6f178a6e7ebb2d682efaac8f8b25bd2042d9804e023100ab7ae6ec556ddf2cc94a8cefc72eabffbd36ea163e4d2d3cb53a64b3c2b46f1bbb5a9c942138c0bd598e2812deec1c090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023057feb5939e32dc53907d06573b6b671ebc3dd0ce7d15df4c6e5cf9076ffbe129094d975e069b2685c520c377dc3dc8bc02306caa9f5c5709fb7737dc770402f772e6b7e7fd12431d4cc1a9677360583e0881d7654caab9ddc72e6dad8129aeb326c70302047c435bb50066306402304a0b1c7cf81ad8e1429186a7ea397f8e7b1c2d5a7d36347e1c57b203ce098867f6a0593220a31d8204588919a16584e802304453db59f986fb9ea02b5adb3ab6fe80853cf2616f490090229250d6877a3f60cb3309aff0d46d00bd9d2ab66b6810830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d1e4123e7734a2d23ca67f41a3f763b2a071e33554093e375603748da9577edca3fd7cfd0c49c925b0089bbf846e90a023100b50ed01e9f35e463010f07b79d0678539eb38878738844afd9ba9dd113fa16a83c57283553a8efbcfd842dd171d8e7680302047c435bb50067306502303e1c52cd9cbe1544d72be75f69568e065ea682a7347fd594542095e8277e7b56cf353ef11da8b8c8765d88b29b388204023100f60f17efb75ea51952a3669275159c457e30891a26b1343876d51429997824e909560312a1818466ad2611a925de719c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009d144ecc8fbb058fee7c4d28a4cf314fd802da0561c28782260dfa0b21e4608394080fb1dabceb6e428bf5c62cc94cba023100c29022b34825ced9d9d99abbf6680050ca7faf2934af375f08ef7a8d0111847128bdfd216157fc6c596a975f5bde96040302047c435bb500683066023100d7b52d0dd2585355d312f27e1aa04e870b8bdb937a494339601f7a4877a9214e8a0b93fd7dc354fbc2435c1366bb25cd023100c3d575056eb811266eff276abf0a6a2e2d1cd2979bfd4f81162d0c801b9acad088c00a3952007f3a1ef8fc822419a5510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008446909f930a0f948eceda73a1994fac8cbf3512b90726676ae718a0d8e56cdeb1fde61d9b90682335fe6083a5ca54e602301ca3c91de50e5d6577881039d23c968ca1449e90c2240be6309f038d584a752f7334fa006c8de9d5f61735ef1a66d3a60302047c435bb500673065023100cf68d93cad1a947ee0db89b894fb5437b89ef7d2f8fc32a8805ef4e317f82132093ab2efe72a6b9cba45d942bb98b85e02305ae2c2f10c34d84a74441ed361c6b533a07ffa077cd2a3cc12edae422ab6a60cbc96235f3e4a8f333d2aa8e1e1b0c79f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed9af223e4fe1e25e1ab0c4d364faf3204d904552298428d8ed1c11985da5ef32aca984b6727704ba366d0c04b324f55023100b4cd496241b07d89f609c488b72a153a40b80da681d9cb343dd2858060e3e561046c0801c4f3d4ffbd563a32bf027ee80302047c435bb500683066023100c69d3ec52a10555cd61f5d74c3bb6113a9f6474a9d3566400b0a25c6a8cca053514ff0f04a000d3afd629c679a7bbdd6023100f28691bc5112daedaf8c45c6977d9fe64e7952871296283f85073548c5cc31ea5d4041a460b60c969f0f8471b49036bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1efae0a9a837c17496a623a27adc493d7fa641d54786afc7d05b04afc17dbe0a167ca0108fb2805033f478588a233c1023100c2e5f8e8a28011ed373e6ecd929807d2ed990764673f80c0154380a530e007dd7758578853134a6432b083294b3646460302047c435bb500683066023100933576d70f7007291cd576f92e1ec45c2b24bd4fcf48301632743104c1db3e316285a3a2990903f0258d626d45b64acf023100d55da0921b5ae4f52962aea649691bd0a3963eee24e99a9d52c7112a6b8d9fc8123a942bdf2c103c6393126e4b066ec20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c0fdf8386e1bed2dba08742dafb9438073e024c492d3b1b4f6b0e63ee3f3fdb82ea9d49fe391a1d7c2446f4ec968c366023100e27d841556a2993d44155d4d282c6ba2dab436427b61ece3b890112aefa150332c2a582f4e8c8da6ee956ebf7c7468070302047c435bb50067306502304d32bc99336379142087cc023480cf2ccc4323ee1b31c800dc56ce01060ce4d4124767d902c621e5099b7cff0df8a167023100abd1ef8dc339aec05573042aa8b6494cdac0530535ae92f5ef3ac15e3cb366ed5c800d665a150e51f4fb8a20b3e69f8d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230760a02c01bc19238e3c17b0303682ed641663d54bedce2d914e5b6b9c2c1f29dbec89b96225e22f917706819cfad814d023100bb4b619b6ae038c027e0398277c6b0aae77ceaca2b10efa35717d247a5850a34cfb2c3c6f65b148f0fbae43d629075270302047c435bb500673065023100cd09108af7e0c1487441a2196794e53a7765dcaef8761a791c73bf2031241dea4f0a6006b43cd77891e7d8f731e6e998023031f1a1aa784d52980d411b7686085ffb6f1db913b475bb59bde9b493bfd4a2f2760dd4d754ac7c73ab98fe8742f34d1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023057d2defd682327eb831f4b5aac750da557914a7c79f5779ca78dbf42e288c346e87ec21c1fb9ea2ed86fe898b2ad2ce90231009b0871862e15a043d0e05e7b606c82537bac20536a0a3dac39676ae42de29321e3b024649032e62abdb6907d73c8a3f80302047c435bb50066306402301c0af6223e56efc109a9a81bf083ea42df89c5b197e19fbc8d97d5807bb93a2a62d1297bbeb76aa40fa5f0d628399cdb02302700f63a1d51547c73c15579b4c2116ac96f37d1b26b95fec7b238092df5976476220e53706e1a759a7eff37daa1c4030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307fde670193516f90bf155cfec2acba0d092fdaad87863c223e03e7410c830a4270e13f3bdd084c23e3e2fa4aec78a92b023100d7f9b6cd2619e1ddbb9c4876ca1ff7a5e94de9664d45b18b2e6302d2d777fd174fcab79342d31dd5153769082a5901320302047c435bb50066306402303c7f516f54692b2fda3fb7882cb83e976363b044a8cfacf981474a0df8b6e78398819f6dc767bb880d0c523e2e79731f02304a8d073b3c07c1b312073a73e968e01eda89308f8fa84f527e317e77375b9f461141e4e83c67856cb7aec96ba40566500302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f3dc0a2b529cc26a0611a94474c08941d414f787ac49fd97317f5f160d2b629300003ad653477031b285f60a33b3b4102300d4dc13aed4c70aefce276077751815dbf21ec79816e14b88e96e3c59be778f5f4c071e793cfda6d3864e3e3f64791740302047c435bb50066306402300f06e786dbcdff075b8144fa1cab681fdb7dc411ae2a60babf434ffbccc960e01c8ddd30b5ab027978333ce03940d03902307fe30a0789f99375ab3a28597a85bf7d56d413808bb2ea793d6d2c73a5cfd0455fad47f3c59e46d74d5dd0b94f72b2f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d44fb2ad2b8cedcdcb5e7f26c43d65945c86773a00611ca903c8289f8c337bac473f56c1c71db73cf8623af04f6df3ba0230161f51029dd19975ab046d036df7f05e3bac6d35c3be7d25f932dd12c89b307d4538907c9496211628c4a9396b2663580302047c435bb500683066023100ae9f5e2d64d8c3034e3bcf80361e2297cb2b17c6323665aa563a62767c790d3e1885feb4277efaed2c594ffda9f2411802310091103a395168b853e3ca5113b454b3458096218c3a9c58257afd75ae1d09a07410454b7bc57d5659b374ac4e3ff2e7270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b81310b0eb19a243a9cce1a68f61d5a116961262e9808a41184609e697af39e9a047513ff7f4134bd7398d824432e367023100c666fade8f62267eff351c0653e4337353428ce8fbac3094e6410eacff05d7cb8d464cdd29cf0551ae267ff26e5239f70302047c435bb500673065023100cf6bfddaa94f0ab98a575fe2c40634ad6967c00c89a2bc98d85285303d55b351ecfd06e43fb1046fa19bbd3f3b8c145b023079d5c5799ee510e97961874d89f7398ea50e6753da6c138f2e9571bdf11d851c262720f6bc59d1d745aa42ea97f0085a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e334a1e1ccfb8e95100f0ddfa563d34ea040801bd6c480333b42188a3e56202e707b8248b7c34bec86b2cde2c6ecd05a0231009d264faa6dbbfa70eea7bb4ea0e150bb8026821575d66861c79dbc1dba5f59c7c94418328cf7506a8935e6076eadaf720302047c435bb500683066023100fba337b33c9a123126d74be9222c7036110f57fd31131419b56817018b39633b8d4288286c7a2c2ff4e0af69c6c90718023100d1fac13c4424052021e0ba1356e94064e59e2832cb9834f1cbfa41d7116fab833cf59db2c28bf9a71057ba42bbf9f8da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a4dccdd0af6c3ec1c8bd621be0ae2623d7a59505ea5908005eb6239fe36895dc136a16e4da854baac73f2689eccd48df023100b7966225d4f13f119182eb4152178e69cb38df30889695cfeb1c3b7ec6534513f340f08471043f7ca02a387f616941140302047c435bb5006730650231009be53c5034f50f72ddd9fbe8a072787352fd97f011624cf9c6d6cf9be740a0529786378563eca2663154f29e3b2320f9023008c922890f46b92687913f79041136d76cde69593241ba07202306f07e6f56f82ec6f24488e20d9f6ff99a956a4971590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023054fd0bce7154a1e2e7341653e9668b545827f648bc861516ae3d1586eef72c2232b6ac8be8563961447b37b0b6dd5bc702307750799bfcb68b45a0c404c2af93c147a6b24208362e03376dc44f5d5ef1ce53c07e2cdc1c1605fc3a4e2015abf517310302047c435bb500673065023067725da7454b3178a93bbec86832d8b71de2474ffcb48cff75d3559aae61542556d013828c42a8199047efd7f9ae7c01023100c19410179f522a41d982727fd2e9da692813f1de36903717a05ada6554b62f3fb583037dc1d53cb253e0a537cd29a2d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c3c86779479d630f8a8ea1a801cf85cda4c924044787fe75f7c30208f192bffd0e68ff95a1932b3a377deac74d11681023100cdde0770a1ff38a5f4d0f8c98944f4c674ff81d39b3a855967969015aee62a5e8408cca9bd48cc4be6af1abf0b793eac0302047c435bb50067306502305fcbafc44c8dc5750de46598ae8fe63e32a656a8e57db45e3ece11ea591fc87b7f7fd192dec5d27f47de05252208b18e023100cb8cb4c4d123166f1cd3d192f61de07a8f785bb19aa193863d4929ff16632c694abb52798b2a9dae7bc1963e976b74d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b447ade4c4092c59d7039d3c2c2b9f48fd9a6c1d1ad61f5cad4199894b8c5d0d061d25dc29571f2ecc6213d561983bae02306edf68a7e9c3ab00ec7f6647f12658bd3d3cb5d2358ba78261648c9d535d1e80985fad5e41b6fa61041711b64af9b7bd0302047c435bb500673065023100cb134200664d540e947c427db6c9e14973ae5fe5ee408ea19030a2edabaade7edf11ce98b0637c3ac640968bf11ef7bb0230631a192432a237bbfc4f955df36c5eaebbde462af472e88d84fecde703c24edb43851bc5e59e91647f113a847fa562c20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040cebd44eedc0eb07c381854fa46c9d00a68cb6d3ce33b6d3a6807e40668823caf7bd2b441605a32e97c732db1ec817f023100f1ea771a6609fc37bac9f24c9b2a40fa2467fb7e502deef805c1986af8ce9925c6d0a212e8095253dd193772604f0be50302047c435bb5006630640230397ebd5c5006bb32f51f9a5b810b4b1fc2b5de6a3e93224616dee58ba9846eb59a6bcf97189eaf87033e8afdbdd39388023054a16dbdf44b6a747d5948146f9ad1445358143f1d2157d38c1e6177d945013a6c43454ea208dd355682ddcc514dbb000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc8ddbf041a97f685ee541631314df8a3d449efde94e2021d749826bdca646fc6cdd0aad57856ef668e111e7ea7ed4ca023019245aa34e8b9f7fccf8c430f6ff906e8a3a4320dd56f9eb2507ada52f07367ea0706969aadbc838a2c3a6100e918c830302047c435bb500683066023100988bd97b35427d174aa8d524e12dc125e3c6c7bf04fbb3386f92a7a06237280d0580a35b0d3f3b90aa02e73e319d86ae023100e4b4d0ae8db7fcdb1fafed1dc8328ca783764950eaf9e19ee514a58b1b64030070b8317c611376acb200d9fefee4507f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002aaab863ca2d90f9c57e7c74b7a58a00c13132b147bc78eca7218217275af3034cc11cfc5638724be57b80f23e09593023058a180766c00aaad361ac1c806dd89e6dda6afe41b62de2fa1f26d0804f092bf2cac12d406074dc3348b43858ed3bf7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e732bf5ffbf2a6c56bc8f7bdb948561e82ef12c1b4cc61398e2be1986cf03124875ad420949ab4272d7e36734e0fb9e023068e75d985a3227b753ff34e2d67fa50e2aefb9f4c0cc7e6c12727ba1e934a32e4c29affe3238430d8b3397426d6692950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009480eeefbd6dc866dd3df34519fec4d0d251df0c12b368fa7f5723ae83a588764d02247c94e777bb50b81f84985fe3c6023100fe486e2087e130ec2e14570522d8d02bfb1f98bcb20beef5177b8d88e407c4ee20792821db41de43661520e31e0666220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c843bdc075e66b3db921061712cfab4b7d4e544336bd9ec2f934e83d387052bd6586c339b8dd05f8b9f85336bd4a83310231008f84350aa56e9ebeb6eb8a5fe3c525fe00652f1ee696e158307277528166257b1ba6c6b7f1087d36f2dd90fe017134ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c717828ba87f5c9ed350a1d0ac824c6fc0bb624a97867ff62066405be27b5006d5bdd426857f7469b087cc2d415cbc1023100e8b6d7831f0d54a07dc7666f1d892759f59ab61b8f4458d29f490314361c8e3c4fc11ff6d2592aed79e20ab6d8b780630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022e1a41e0bdfd399d74164065bfac04b3c7ee4242aaad1519bc1d27104174dd0b97042a758e7ca51cfd63bb64550a93202306e97a9fe92ea4ad7b5d7e83588a2aadbcd49b19c812a6835bece8b5761d288a3299b9ab783d73eca8e1f8de90b682b0d0302047c435bb500663064023027ad785787325e6dde2d43b1e81aff55534574e2be7ea34b09df363e71a3f3a2760c6fd1bbffcf7a53975a4af72bb186023030bb282b9a9768dfed8fbde71a725975860f727fc402ced836974e314e0dfc810c5e16aa3af4dfcb251b2b1f3be404950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009e94af9cbb1fc6d526de22f9e36a26c20b1752828d9aa80a526e15568ef45b80949a2922d7b3f02afd5f7dc5eabeac0002305ccd1bfee8029f416909a3d1ee4881150b43c48725c4a555457290b2b84f0ea44ad2df35deee853b6a1775ca83c583a90302047c435bb50067306502306840180d9fc9a422ada89bbaf0d407a0d404384d606e12154b9c7bc1de575de8625714456790b3eda15010a7275eed2b023100968d14090fb18f8279285698ea3fe463e3388a2d4f23e218dd44cd50fd5b6a814368ab3c4b9bc38cbe5e9d7c15a7b6bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e38e92af15add23db7d073687f485a1d208ae553d7aee216146c6ff1ed0d310206e86366994207930230d7966930bed023017cc5bc18c07caef6059d849982aa48453fa4e2ea170883ab48bac31db65fcc8e5d827d19d83bd95244fc5bdab9fe77b0302047c435bb500683066023100d76f007ed8dd381d6dc55f4547e6689b7310c555e43cfb2dbc2093f29a45bdddf6983f0c7240d769211854baf2222d7e023100b201e0e645b0d87326203b0eaff5b62c783d1bf7924457d7fa435e8cf05b08f01ba0dac8a47a4eff65d152ddef3fc4da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304d2a22c8e8fc28d5b7aaec73d80c499e763fb8b7b3ffee62d2993446d7a881f3c9319d4426cc6cadbba06c36ae93e12f02301468a3ef4e05bc3b46ab357198bad79bb22987e8642232c81e9c540ef6beb120d81dffdcb99dcbc509019d7aa6cab81b0302047c435bb500683066023100c56f11d376531d516f851a3da8a326ec615ec9e00fd51455076776bbc10c6643b75ef47b01cb8a6a28ac8123139d9d6302310087293c4c19b0dc75b670edfb283a4898b77f03ab795778b6c12d25583e0c05902565b6d4dd6ea297d697d8e0eb3180350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032c5935348e8d7b441140e94f096c456fe19ff9fee90c57acbbb65871546d878457256e479005d396bb5ea14148e72ad02300ab2619ee1d92a4bc3db0a21be24dc92f9f835f78a05c72decac13a9a25d6de947a410f0e76a68b41a965f0be6006b130302047c435bb50067306502303f7856907fa9cf36e5686e8d5ce55ad0eca8bbfffb4a5ad67beb8e4f959377051468e076c7e94fd84ebc1489d4e23c2b023100e3160367c469225fa878d71419f580ae5500bb2fd3e6b5c061265cdca0da26405f8e016ed1d6f1eacd45cd09c864a1bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230626155c3aaf002108e4c73cb162c3cc97f8c9ef7010d236a6157ba3ebcdb0b72764c77c6e9bb7cb42da5f0c8e8b5289a023100f78bb304e6cd5e54dd11e4f02db0958b552fbfdf379fd0ba1264fa70e5bff38e4ea05e7d2c83955c0f57608043c6e21c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c17662963be20b4f7eac99c3048e7b319b7507f8b950dce625ffd45804d8029817f77cf06e1063bacd37e72bd662b090230015f719dce040e4e8c74205e0e0a13de941ef6bf8565e47b105baea17719ae14b5541f526f49ce6d6d50d1dc57d423880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8aeb26ea9c1b98f8029a2744d6e34bfeb39932bbcbc77e60c0f946841bfa030a85cbd3880e34b3e55366ef7cd1074cc02310083e8cfd38f13c0d7885fc11fe907dc5d0ce2175ddbf915a264d2bd8dbd0161806ed85314af4433bdf0f064d53ec0fbb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017251f291376c1a86c3c8cb88663f34303667c694ff6e3ccc831fa93449fd5327e8135317a383eab8eaa0cd3deeaa7e402301750104c35441acee9cdd4f4791dac0d34f930b1f468ca4cede5ecb43e6e455b36e3abdfc8380aae4be80d717370a6920302047c435bb50067306502303b0e6091644f063e534551220ef7c940212eaf4ebc24a764925e429d3dda200388c837c90c9f23c1de511040efaceb64023100f0c0345327dde4b353f717fbf6c7e50edd05e940286244873b7ab7fdb8aefccaa503b46e82fe215629a1675e0e98a1b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d9c652434ffd17e1fb70c673690ceae3fe5264ed40cf813df7919714a8a5e1ccd2befa67d8248eee457d9cfb58b84ffd0231009157beaa624460ab685d8ee69ee46c1fea343466fe4865a81019c8c7c5229178c45aebd6f6a7dd9b4177e7114e7aa42f0302047c435bb500683066023100b343215e83e1a4ec63dd7651bb72801c02991921af1ada3b3ffb369237438d84efb67623ba2e8eb0e54ffc4f4fb2528a023100fdbc1cab934b4c5a166a854ebba5607550d967c4c99a4d4ca8461d84491784c0687d4c6aaa4b748caf9b6187f781dec90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4a5be7484c8f37b0ac14cf572b35a37cbe4f08a3dde0e4876879d83c90165e2ab267fa3013effbf1f02b80279bcb1a50231009d10f3f77cf8e9fe86028205a2833129a7034caf888b9ba61f51d9dca2da80363e5d0de7fb7d3e8b14e9751bd3ac96010302047c435bb5006730650230561149426a5a233ce2d98a66d74a60f3b8e38d307c7a4820e42bca0a363daea93bc9f5f865787cab40aa229621e85e4f023100b773126032fb059f3bb41552652dd454aa8230e6253b3b449b32d66c599790230d1e2ca84713bad85956090c8fd329d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307decf3bc80e52c6d9fd5f49597afbb84ad648f52d928c6bb9e403d88726a1f2d218352bada0ad1d28cdefb0fbcaefae0023000bdb2ef39213b42b7f7a22c7806f89a4edb086ab8e23d3feaac655695c130ccfcf75255383e48da326a56a830dab45a0302047c435bb500673065023002c7c04f162cca8b2af8d74cc00e5d9f1fa630d0a22bd50d65a6cd632a6634d9f4474115e726208131e43898c26c8add023100bd8a519f4ce99ed4a6673ce45d257e457a00329339f308b1fd967449fb34950c817c950dc6b0c4ca0528c26196e307490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d11e51970720ec7ce6d77f93b4783af3b55c03c87052b70a890e20af1977f3412fcd228225541d16cbce99853d1cf0b023079aa51eff249242b5d80d8777b91a5f204e816b9f51c0c6f0e193152827cdcd92edad9cf989384c9d3cf9241bc84907f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fab9d15385de198c9d49e1148e3e3b9c7e6e3774b40949e022e1ad1da231d9aeecffce114561d0cb4b9daaa2dd6a1af7023100b0669db7b580d2d9804710d1399d8d9fb60f58374b38625b0c586a1558e386ea80ad76172d57038b6ba54a2b2cf3f70b0302047c435bb500673065023047346ca4586532d71ce022bc834cdad5a9220bc24299f767ce0213137ecf494f94f98371397694df1e953b4282ed68d6023100b1a2278a87478ab41a9b361f042061e5df578eada9235cea0ece94d1a855035d17ab58c3d91d45346fcf36de0184c7b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b1dfb867129771287ea33167ced4568c667e19b4c24ff90b745813f2ae7bc8dce9a701f2e4400b6dccbedffe0616418023045ed92450e990ba56ca4f4ca2c21fe0fe9f6f18e02a6d30d4a1198becfb43a79d1480ab5cea5c43b3b8291b123ea14be0302047c435bb50067306502310092f90e723acb58bb3f241c4817f2d3df19501576839a164e7df61847af975a3394b38d63a312549fe42c283d3da1a6cd02302c54637b869048b01399a601900d483719b72d5beb159cfea73e1dd4887aa63148448a87b639b767b8448e483df981610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b1adae8cd07fecc4fbba90b9d0ff102b8e1904e99e281996c5bc4cdef2d86d97b1f1686e13b148a1de2a4a000c52e5b10230152f67dec664428993bdd0c5cdfc6be4312bfc26a9ccdbf35b037e01d6622a8beeec23f59b2474aa860a5f9a9423644f0302047c435bb500673065023065ce713325083519ce0967f2c022e6e486b9883eac69e80da3a1ba1127a1092916b3f4c00a44f337c435888e2374c132023100abbe9d3f26e2d5517f39bd25d6ed8672809df3fd3b0bf530bd878020af234fe620494da187d83bdaec886792c5efdce40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aa6aaf82d7bb4a29e6ac7ab84919f87e5d34dcb38b6ff524c9826471301db58a65a282dd29cb3bde1bac68ef215185f023100b9807d3c5aad3fae6786d4e27cd98e593e97a80ac5990c889f65346a36c3f3202c167cac2ddfe6e70b20401a588f7d970302047c435bb500673065023070ef84cd792d765a4b792d0c3bc7644cebda93ecea97f96c5894104acb4baa1ceaeaee9a83222db6bcdcaaadaac0d5590231008160cc6459e3b0058e846192f375720f4631dc3662e6b159fdb2476662d533daefd3d2e1e8c2de413d167cf4d4c5b3fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008bf131228b3fd43daffe1dc5e6bd761cf452af5203f8430354e2dfabc8f10e68a4ad0142d108ced2a61055758fe5aca8023100b6664746321e9bd9c963ee44e3f4096c3db7b13649377c75660e20616807d28306da719fb92ff061b7e61546eb1fb3cd0302047c435bb500663064023035d4763ef77483e8c4c94be982f491c1105747fa298138660b3d6c08a317a1f578b4a596f59a579ff6063e0e09b9c75e023072920a7294ca60e41db316950e72de7bc4b89af107cd532e7b0f6c1ececc84082501b4ecfd434b8b5253d133169a2de10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306fe0528ba0d8b06e517c56052a47880bbbf7d3c5345724f7bb3b2b6544c5c7e1415c3b21b8cb266a0808377a82dcc18b02306534682396e10f92dc321349bed25c5cac44dba26571d9c5e659cb3ce4ac9c4faafbcbcf0c04a058c5ef485085348e110302047c435bb5006730650231009d30df1b0957720dbc9a8a2f4265f1d21371c0a2e3f8efe146210ecc440f86002cb74ac642d52d74c0db8484661ced2e02305029e32b9f135ed32b49075e36f494567bdca736b2a28f79430fa78b9b1132c30cf94efa343bddb786e31c8a0b4558f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230125fcdff91f4b074d6d6c347b187286aca9684d2c7f81d10118be333a2823b205d82f8c0cdd37efb6cdd856c6aef2a030230158a5cd9c2e44454db3b3f8e5297437c5b9fc0ca9feeeb6c30f085eb6a2693ce191013e12da9d0d3997bbf0509588cc50302047c435bb500673065023100a6fd7bd0b1ce5e74de1abf8c995b123853d52a3bff6ca7b9b5cfbbf3c49c2f8c669b16fdbca3ba94c9bbfad64a4ec0a402302118e29c440dffecedecb35c247669e7076f84936e9286cf9cc65d62380d45223444274366c8a460e515217289f352890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a0b44d1e624cd35da121bad4b71f4f6b31dfbb675a73f2b8f62ec1fb35f9a8ee6022bbb230a57104d3823f6719e2e84023072379de856fcc156329173cbd30e33d59b5ec1d30984f1be5fea579f5e753880e646d31660fbe75f9265917271f8a0ef0302047c435bb50067306502307360d23792f62bd79236598b2b3991e1f0f88927f2ff044bdaa68b12db2f2c497b19ffff9743b6e8d1718960bedc0047023100822d5df99d913f45bf85b1bd16638ae6cc0679ab8d24f3cf2aa254a00a1d0dc30255adb35add007df394b96db940dc220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075e11ec6c5f8ef7de27d60985cd8855264941ac38fca3b698c327916b1446524155f93a18781be525654ee4c159fa620023100832309ec5eefef650a7b2c5b1d6fbdbdc09416368a2d92909bc7b613a5ffc7ca43fa2bbeb5b815d4388522a6853ff0140302047c435bb500663064023030b24dc47635e47f7ffd08e617d3bd7b43ac80e5c5a03afb90ec394792f6cf95b11c6ba1215b9c1df40db67426a77b1b02303c39ad37218ef9382f42738efbcb78d43070eebda5f2da5bc9c4db1c3fced6ec9b0319e65d07c5c28ef13ccbce8436320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023046e232391435e18f046e3185d20fde38255934a789dd0b1cc77a74c78db53fb8b3819a836d8a2333926d8419187ab9ae02310092d1b003107854afd577fb0880ceeaa93715455cec0f95ba7d6c59d003d6c0ccab4f9fb1a020d0746a69b9d41250199d0302047c435bb500673065023067b6df05e3ee0b2ab9f5e0e2c40ed682e06cd8fed7c7e131ea7421f984877260129aa7d2185cbc51f3ccd7e50b05f36b023100a629260bf66471622d2558be48c5be168519c88379542e233cede095cff0b1c4981691f8d1aefe2e3ea14fc7199c48790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071f0d5aa899f54622b72aa146986d03e1d1ab5b15785b7d2a5e8762e1d62a6e6363d6740e674a8552350ea0e6ad2a104023100c68cdeae9a619df289276a6b12d02c3326311114ea45ce729a085e29b5f8cc117627f547fde03749b914e2fcaea402b10302047c435bb500673065023100bd54cd61bc0d0b7583ec307ddb29cf7f518e0d24d0a5b3e6395c5f46ed0e85c22babe2ac4350270c658c94cd0cf158ad02305da269b61fa9b151c104cf4f5f2455aaade95495aa36b67e0c53734bb1240bd6b9a77bc3a9a8d9561614dc0bd48bad560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100be1a88446ec3eb9e7ccf11ebf167119ad49a82f2ac750b3bcbdaaca711592db530ca0d32ee0dfbd88f7f3c6543fe185102302eed23cf5bc63c8c609a1c0fa4b6324856fa390688dc9c693fa6cc8386d7b37a2a1c2acaef25ef8df4a6c6ebe62d46bd0302047c435bb500663064023071e4efcb4bdad5ce685a8be966df63d26b10213443612060443354455dddef34ff676ac481e43efec75de8447c26d5b502306c82308607bdff9b4e174187cd2903909316ee29c4b2ab549bc9339faf7fb801488e3ab757781c07f3b71a2ec9db1d770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023069af8b2201b87ff4a3a1a45908f5225f8aa93052cb1a9a499ace22b3521d58573dfd23f2df815af4d823ace60d2f108a023059c563a0709165d08f5b0dffbd2b6af09b046aa3eea4a337f6334eab065c15674294701f6d7d4a613a9459a3f5deec7b0302047c435bb50066306402302a50d6bb2fcde64a7af6a4b937a36f72e22e8a3167f17d108ad53186bb5e63d3befcb4200fc69d86384f53cc904067420230393e0f63a30c23366f285f212eb4ed0605f317294b94d9193277faa6c27f5ba1a02d4ac84a206d8cd974cc39d61e0ccc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230459e733e4b45bf64a9829d6b23f64eb477195911dd95e59d51f450dbbdf72ee5a880a57875c06fed89f628764438a186023072842eedfc07e7d608a59be76f9f3e9bc552858c592824479b22ed11252d138f24fc6962bbf3740f2bdbba77adc465a50302047c435bb500673065023100b791ff30663e32e5541e2c7e975fbac5392468dd5bd8663c434a91dcee07a4f94d62f1837dc7b8e2f2037e78192cae1002304bea7c94077cb00cfcebc12571c0f2ce777d71539d8eb1f15c68bb2296c42c600d55a353c9420333b30b0a8945b9d1070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023069e565165cc3184675bc233a8867750b782b64b112943eba848dce46d172eb5e68dd786f257e92ac88ff284aef6e3033023100cc67456eced0a606c5be1a5eb55e5167ad5060f29aab96004a3dac9839490d1ac4b68ce24c277c0c88ca03f64e8018010302047c435bb50066306402306df01d542f067c36e6a19fe0cd2a1c0944ed5df5ee2c13ead3c09689a92717d169865122ef0cda2e184b49b6edb9ba7602302f2a48f9005de84dfc78aafc9c22cfb5ee8050dea2d6d7cf45837785654e1770daf7618aaecf5bc5a0216c761ed6f3900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c74764766c357b10c975a8fc1d14c128ef754b57f9e0fc087ed2597081ea529487d1d3838bc424308a4c441abc2f193b0230089568db1898929e13f41bb64951580e10ad9e720563c536dda6fdf560275d1203cfd2937aa395b4157e78e1bdf0f3270302047c435bb50067306502310094dd9193c2a744f60740b9867272d43908bcb4e23f3744994365c7cf51986b634dd0c092f0e5072d2eb1b1df7cdd0ff50230041b731849f56db83aa577a78068efdad0557264046afe6ccef2644bfd561dc4f88243c0011a6c0728e546d66b45da300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100deee5fe8af397d2256345d042098a6d2fcc2d8058cd1caddb47199fa4ab1e84ae2649bde151bcee4063dc0c258e64bb7023100d3e5a4c46a1f84aeabcee15bc03407099e443a5f3eee972fe14739b3950f2dc5dcc65e1614e7c8b4d29df1be7348d6530302047c435bb50067306502304e7484360152071f85c988270b13caf7fac669712aad930508d1754e67a244da55ddcd455cd6613902a242e0ede5035e023100cfa64f764a69fded21345a3eae2141f18c51fd9e6851c8827b0d834d405fce7bc887e68505a5e7facc78ce3c0be448920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2ef5a8a841dc7b63d207cc78b7ce00fc9d9f465f17a5c6b29a9cc82b07c0f065954997cfb4913ee7b5f72dbe7261e2302310089e871ce8cfa83b57a9c8d32c35c5f21bc68800110f375599d5fbd6b70c9b7d5e21649a05907ba322b0fa1dba4abeb410302047c435bb50066306402305fef77791a1529c2b722fe639e6ac4fa83f23d671709ad723b71c81b3b3ea71889f12ee9f2ae006dd978e814b91a6397023012257f98560cd54de1abd8685bdb051db0e0c48647d1f8b78efb13bea413ebfb39461661b38b3d48ecbefea13d6333e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb1213231736420a2bc4e9f2a323f6dafa06a5bceaa984869b939302027f4e441c702dcf76128f0eed1f4ea9c5eb482002301d84848ca8079deac07d6aa20e0c8c648473c8d5380e2ad19d03ee36eb3ac997fdff2fff5ce20bf664f3d0eb4a39cb880302047c435bb50066306402302143a331f5dedc298461512211aeacaf00b71c8a15663678c33dbccb300b2e414f147ae63cb609239060cda14e98a27402306882e15070937467aa4ceccb7fd3e1556e980f9ce3dd01d600a09b4aa2e70d597fa1da4b1f42a47ee2a3f9c6876f2ad50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100857d7ab7aeb69e4f150c4288763a8f60447727f6b498fbf10739a0e7e2e9ce3511a1f3e9bad2e83d57c2470417c0612602310099eb365906efa18bc5941a4e4a5574a35c2e0f7b9b689e661fc954f577b8ec0cf23833623abbfe1c3957a696184689b50302047c435bb500683066023100d5d2b25e4c776bd1c1c9e251cff564bd135499b5a273226db52fed2e2e26edfae89e5928ec8c33bd0a270379194bc7bb023100d3f7b6b230cc9abd5c2a52eb2ce4ec5bc93e0a6eda4dbfa9a576e1126b656fc9fae336f72de7e63c7dc35a9de11ef70f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e693e2d811b55761714da00363b85ffe91fdcb8f9bd08df73a3258dbf1a9c266343e999499784566babba2f0e33e58ca023100800b6668f09c6512774eca3e5fea1c272a05c25df1993a1b2fd23e03e014d3492f3542c057b75844f878a8fc9f3fff8f0302047c435bb5006830660231009dddbe743be4d9260df8a54137003085593048df8bde35081b17ae992250de911d26562af4ec1440dccda83f8ff39061023100d1f3a133f72ed6369f9e303e70e10c911e98cdfa267bc7c50d8a1c9395ce782ca289e76a9cf5d25a218be6c3d5eb0c2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091f71ddb668df092c40709c52c32e86789711972011346fa0c56fc5cee3c66298b74f9b7afa233324c1a354ce6a48efd023100e145b990babdf131f9c37a35514cce45040aeb498319a9a08df28efe8565717c593d5e45bbfdb178ae1836ce642158090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008041e5e3bd147c614adf22967fc9459ae3524c9d8d930a4c2ac22b576b77fb38e5adebf5ec37496040225096c54c1f4802303f69b8a21988ef68efcd49cb5fcc43044d5dbad7e9096fa376f6e13ac853cae1124a3038116c52d11073e65f161781b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cca23c00d43e3058065c8d052770725d06d1c1274d2e96dbc2660185497018c009174da528dcc88df55f808f590505f702302e7ed84f240255ac605f675c80e6be62d426a05d1c58a0119bd483e06c6caaf127a5f9a92f9def33673da307fd1a481f0302047c435bb5006730650231008daa3f8b793aae8528511342d72bcf6dd0688632e34187b9093c12ff173317a2bc2586e73629777c3ed16a1e28d6286f02307ab4405e304a5f0bc5ef00f159a4ca678b8a2da3f8b3c829eacee3a27dc3932374b365f219169736f08c6b7b3074ddb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c3f85917b01244a544949d49e2de0f9d8097484c2343357fe07fd83b767d609dffc7d0e92bd1b4ee86d9b2a18e1d484023100f7e2483c22921feac50aeac88f103d4db5d036c35b4d71bc520781ebd02958757ed8c3e947cf1c738e6738c0465fbe190302047c435bb5006630640230485f90bd1ee1941644feec9f089191282ccd64ebfa5997d4530b800b23f2df1edbc92082e6799c2b39a8d86660a4676c0230748e1e8bdd6380b72135b34285402add0809a9440c89fb564f874b7e334f7bac720513cfcba1c49e8d9de49a123cbf5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300e89bd7a7c2fc99150f279446dbb8db95205633a1b8363d91945dfaf5d739a2865eefb011f05864b7d7ce1f2124ac1b9023100f0c84f5584f91f27f0a25e95d09c4b9a3a61f3c34a201e72292b4c0ea4e278ebe9a9a3d9b11733486e9a5467939aaa950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d67a197043a8f230968d80e378d358792909924b06ea12fe65dfa685669a7d43e5b59bfd1e8502c1e35928ba51a48790230516f30ae9545b4b060e479e0773b09ade003d1f716928a98a8ca1c087a101fa8dcf9c50019cf01442e210a948fafd8a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bbaa6cc13b4b0d6d4db5afff00edaee47b96f89377cbd60b43d10b7ffb7ee1a4d60da1e4198ac9a961ad98cd3cb5f46f023004393dfecf17f222674049bfce2743059278c84feeb8b764be4d49bb08838b2ca38ebeda7588c1affb6e533762e475890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100db377f53d28a8577db3b667d74e537edd3abff46751f10e1778ec3248327e218d7cc91b928aa54198eaa0cd0a0d7c8b4023100f70d951d8c05deca5fc3f70900eba07f31a75b8ab61e3988c0922fc948925f85d3e8986b588b8dd355ea6c180d1258600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306618b440b826f2fb0559316e79b5f9df069d556d4e3917680f2b279718578de55bacd6e14eb4b579e567f248aa2917fa023100a8c8cbe8dd9b614f602387acc2a9a1cd4f8d9e8cb2d6d94879c2caa1c7637612f6c7de74e6d83310d38e12f4a2e3e1d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a77bedea6d60af73a2a5660d16a507c8675f44d3ddf4b908feeadbc77896e89efa1872237c3e85ac91239fedc5b67321023100d9783023b4e75e7f98631f8d86272b41fa8515f2c36d8ebc026732f2f0db6d7c42ff3e796b2226164f423926392ad80a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304106a63b62373eb1677391ac756188db08759b770ccacf482a7bfcb7ee73ccb9e1e00f69c095c1ace50aa03faaeae7c1023100b893704d392d6174ed478bd1515a56f2c6a961211c7e4a751532c3f6e517189905a71b9d9ebe35c7a3bcd31160886d160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230696e992e517de1a0ba8cb553417f12e78edac5411e5c0133c040ef5610da1bf3f1d51d2dd15eb4b86f19f8d7a89cf21c023005baa32b9aad324e335187823aea6284c7c4d300e6650a87d6a8713f0fb7d1da90afd986277ff9f0b752186a7fd0a2410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023067d67c8af148fba1379a9d568b575bae62d43edb898a8bc28c06e82c4ab17c467a2595397037c99c0d771aeca8edc1440230354f54fb38197443cdfb07af006d29459b7dafc085d7ecb232285df6b18b0c57336304d73f122dc782281e34bf2b46180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302aef666ebb2e802daccda775fe230a02fbc15f517053ca14feb095f91fbdd2c2f28262593974a737fb10bc9d8914f51c023049bed3e4ee4f61a3d7890698bf02e54aa184824562b4d48dd910856d9ebf9171a8a321149ce83e6db63f6a354608a04f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100adacd50268aa2d9077797fb158afc9558b7949af9b306c7ff3bb81ee641974547467f2d42a56136377751e0ad9e7018a0231009adb5a1d7958f52f96e63dc95b01dc78f098c7bd0817efd1f858cc1cc4259f34974adac2d1e7d192207065812334b4850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097c838b1374f1e6a7d083a9678838a17a64d70692bc909870aff7cc18735fdb231ad17d9cf4976e6afa1acff25272bbe023008aebfbcc9050f9ca685d7b7b5c8d1b6e7115ccceb44fd1b123b9eb3024477ec320e11ed24c4c4c76050a8a9c1bebea80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b22d84329ac06afa8cd3621f1da9a7a39551b1c925e6c4356cf7b0a97315e50a03ecfbb83410552cdbd9a2ec288f8760230273abf459107956c02619d9f0a76c166effd5d80f1150e813af29eec8095c7e87e2d7c27423851b7ec87f51e67c903820302047c435bb50066306402304d54e608714db846d774433ef3cd7aa3eace2a7e1aea0d182f9df3bf916802a7e24a1e0d913b488d1c08c1e44ef87e4b023044b1a16f5a8af1554b3a25bf80f337cd80b8f37947e50492491a1fc91ee992a8e45029b1bf7a21ad42eb8fd0040d0bd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023033bce95beb84ccc0e56cca46f3df1e08bf2cda75284251c65e38b34af9e0cc904d2940da5f7a7bbaa8ee2570c08ce1ff023100e62b6315231da682d1025659579be0748bf0d31a31080e1704493b87e8dcd4c509fb00ba285b8f5b4c45f48c8d5fd4de0302047c435bb5006730650231009c11222db2f79f807b29b526c583d52f3acb566d078486b5b7c53588dcda231104d7e3d2271c705c438ec6b8aba8d02c02300241d798239c88cf89e878dbba00ddc6ce5384e0b0fcca71a299974b0e042f238dca8f5c661455b8ad603d52e3921a570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ea65a9da1f8396b021f30eb91a2f0fe2ce825cfa2a3586520b26484b1a52434bc025f1320ec6819b089686f4515edc502307cde22507fa9f03c8138bb4d585f5cec50a00b30ac65919f57e0c67fb3e5de64c09ce2dd512727173ee7a3bbeffaa3ea0302047c435bb5006730650230625fb67bb39bc73459f0b05eadc805e5129e124702fb33e4c63e54a966cb669a02bbffe4218db56b24c8a03e152a1d8f023100e887c263b4f9151b9227dfd6ca4aaf301005059d22136b44c6231a9390efbad75d6819533b5b4b5aae4de9ada3555fc10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305944bf45e9ab57da5db6bf8b1090b8c68eb1ad04777b6412048879eeeb025002f2c93f45880fd2dbaec5909ad31ebd2802306f0827581b84ed681f71a5eef379160e69fe2b187de5da2473d57cb6cbfd924eb4ef3f40cb3f047d6aae6b9b1f6a1f960302047c435bb5006730650230551ea15f40bdb882c8c23cfc1161ce9d57f430a635425e8d62eb0399410505415fc43874d88e3c5e532669a7ab352093023100fbe09691a0072e19a8be041d3ebadf669a86582fdde2ead121dd7fba70ed0e911a70726c1782294fe33152da5b6e1cff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302584baea9ba51fa9e4035602b3dd9172cce9d94e7d92e17874f70bda52055ae254101d32aa014e7edd42fa8a704814450231008f1c5881f0fb165c0ff0f5ae9a3bd6660dc3f0862f5be1114671e5fcccbeb0ea66320461648efb50cab4d3a20c8068460302047c435bb500663064023004b2dbef3d0690cebb3066a0c6e2cc528d731c550151c3c3c8dadf191d6e0eddb96fd141c77d32cb03c8128f6eb2ad05023048330fae82bd55b881d7c0363c11fb3e00beb0a3377b346f6548332014a7982dc962e708da56a96f6a4499bd03a013df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fbf4b094359982a8f3e735967feca7cf8b5a85df6d5a878272a49ad4882d03b2a661b566309f8f3d2ef56a7261f3df5802301352d2eeee62d49644d0a9634601bc6e9d2253c88279a89e44e00446be1da439ead12e3716638a8a5630fd22bbc278f00302047c435bb500673065023100ff4182cef4e6aebbb745f889549e0bdc16d77b802b79f3aee00edc6dbfa43d840ab1a830cd8e667db4ba58ddc99aa3340230084a31f8d289a260c4c6db824103ead8f74cae2a97740b732d917b44b24f377b00a71e1d2e609e86b74b7a88a5b859de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3110a2ed417163eedf757a5d1731cf8d6091cb8dade46e983f555093d524a4d59220fc8cc01f598b495e27fee408d4d023044f5bbbbd2fdbe2f302738fe11a54170b16d0ab1b347836274d0efac601d346e18e2d7a88fcd3407a8394ec13a07c6800302047c435bb500683066023100e4e48dc2e8898f8aa38059a62068724729151d777639e9bd203334fcc02f2f377119a5c42eabef0ec7967da52c36a4ba023100b149ecadb7af60f9f46e08e0792fad5348ebe54d26d9b0019a1c064ac0779e9195e42d42cd0a19d72e39e14f8f18f3320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100913b8d258a9252590458573d0acbf3cff0cce4f9d15329ff658727369a549ba1907994d515631b7fea37707a17b8d2d0023100a64b51e7c65e353c6baf7edb6a622b2584de54d57f80279ae33d4573143f4bf219d875cd55eb5b20bca98a62ec120ab00302047c435bb500673065023100af33f57c22545060ee3ce2d38c7d450d140832aa0bf1b0a4b6fb087d195f31482712de4ab885cfd9842b1b681efd7b1a02304b91f72dc9beed789e9ca58d0002091cf74a34cdaf1ee241c322d18183f6570c1c751b52c5a02cc44a15d9fcc098fe9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008fa59f0b5b6fd259a8da3eae7a27a632ee3761b197acc17fc38d45f4b80b9e0fd98f74b5bb42e5bba6aacbba23ceb4f0023060027de87bba3388bad3a4c7d96b51b9ed1aaf9383992b93100fe9aed2dbb2d4de69d5b6fb2b36a5f057befd4d81e1760302047c435bb500663064023024fe5f8ef1ad2f82db66d5e9abe35ee9e7e1c242e6912f0b28ef591f1ef792e81cd9753bb46c284b2cef0eda1aed668b0230272b83dce8b64b457b10e3607c8dbce74f10477e02b6bdb6cbb2ded26329d00dc153a7c98a93631f8eea2befd024f8e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100893480c28278958b460a9bbbff068b86b3d6127b56780c7b0a18056e709dcc6bf24058f4032acc9405801353923aeddc023035f28ea609005398c3a22e8fca0d4cfbce2ef526012d37c6792617c54fbd8c0634f6f5ad9fa91b9c6919d2286489f6360302047c435bb500673065023026c2bbf5dba48079064472082baa54da57d517d43d6e8b6b08d82afb685acaf7bffd521e363417717746aef5f71e542d023100f0301fff276d86fac804f3c31b3e3f4859b778fc7aa129411293cd20a30ea941144648104982e9376f0805702b2794050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c00154a72b830334203d4fab12ccebae0daa88a288287494996b0c5d09d2ca6a0298d76467a98ac9307a5d3156751ae8023041f032b53547a72ffbc99675345a51702bee94ffeb070c99d540455719ac22fa7d5dc441d5be64514c66501be6cae1250302047c435bb50067306502302ddd0d88c1cc2a3b29dfadda01e9487ddcd952f1da8c6385e949b50606ce9628cfd43a588dd07a4a0789c413559a86440231008023bf206029feb96802d53c788211026ea6c4e3f9a000f02b5dfe518db3d588e9f4d55375c7b450229ac2686b9bd23a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230097e2d367a1ec35af8f78a110bdded564b41633f64165b6e05bb5d3bc02aa1aa74cd75e43be776bba019c0c0ef681c3702305c92dc82b001f706d694193483a0f60e145eb2c29217994f95563754051eb0180c5b135b98b0f7f15201242ff09c6e020302047c435bb500683066023100a1b3f02fb1763d2021148105a5e436c65d2430af525683fc6017c4363bf73f2489e1527b1f20ffc4e9dff0d724dda33b0231008d3f7a683274c5fa983fed044349d58b7dc9b4c12216cac17321c53a0714fabaa12aa6835078c1426a19f24d162b20dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d66d6ec85006ec17d6f6776e7852e78432d20f370d9506165a71b2ac19b97b55f32f3890d803008e1b9ac22ecf77cfb023014bfd0805a9b24dfc16c527e37f6846823c02a9fa12c7d1543da3a73d61d17f14862d386dfff8ec99d2ec119d62294100302047c435bb500673065023075c7fc2527780b48e2df213578ded24db1cd68c7fc7c5c7301e268380f86ae5547343ebe4a2f0d35920a092e1cb73650023100dd41062ed9a4ccbe189581d5cc16248545cfe2a93c888541d4a34d7e012b643e6d5a8bac91b6a397907fd401d93930820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230340a81382eb6e90bd6ef2544ec4cea764d825c3e7b7a7621abcfef31f069d7a1e5223a8508e143819ecdcf7570c6caac023060a78ab32b715df1671dfe8f7e7e3db83edf86492c149dee773881af130ab0e651b410a44d894aa6eff274758700a9770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e37129722895cedda4a2608311038a10d419bd9bd1a921d9ce716433cc362d02f52cd2bc6200151cf48994b5407ad6a8023100e5a1bb4f2be304a1717d1f2303a533966508eab96ec8d190842ac32e60d9aea46f646e1d97374006faa29bf8ddc75d9b0302047c435bb50066306402307f093144def244940e57e2e5208daa6ecc52733bf0bed6643bf32a9782889de23556a66635adcf01b36f92e9504203e0023068c56458d7ed4497a86f96eacf59abd0e076c48d1ee2b5cc606e37a302be606a556e49393a73bdb9407fdccd94d711740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039ea8ff247a550cec73875dc979dda572b7d97495efa81bce1b2c8f50bedb6237e3f7f56319402d4f0fad6b8780eaa1a023100b984c5c63a1b8f31d8b3d8996b47aa344b98cc5eeba93a86c7415c877d27f29bc3702d39232e349d4325072a9327c1950302047c435bb500683066023100f5d221bd775c08ae5910bdba102a972f7bfd829066fb9e040ccb4ae74ebd20342d85fd9edbb7035dc1f34b1e309800330231008427fe6f275d35428ac33167c44571fac9ac2f361bb50e797facf8d2d3e18b4eab83802a2c418252d27da2f3e68e22f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db93fffbedab22c4e25794030e6cb0386622f8a56eea64a277e830c5663f8ed69cd66629bcc135928856660b4f71b1c2023065a8dfd77e724b923f604b049eb0ddaa06feffe78e26d5399ae9ed9ae5f08dd36684f0c79eafa0e50adaa6e37c56cb6d0302047c435bb50066306402304b5752a5ac08f0b8af633a2f8e7272d3e6c5cac66ba3a3cc785e8e524d0376e0baf5504264d11eb5a117a414d44f8906023057b0ba73fdc71025ac671432023372c891e026a98cc3e424aa4ad9adea99a04be3dbac063dced88de08c1b89a3c983a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c2e88778fbf1296b9d1fa6c20b70901c0900649ed54103ef9f4f4d6d9ccefdb50e9ee7fe12ce9fa4d1b6b16bdc4582702305b919eacd65bac387903aa194415f22a9c669faf920ad9ebe6cdb0449562009d939ce62e0499a94b411a8008f65ae6cb0302047c435bb50067306502305d66b9716895dd97fd05f84206426e0180553234d30cf194fb3eff5e7fb72b7e54899a42ae3961d0ce9fe172fecf3b67023100fa47fa57ecf76ebca12aae70a455dedc95129375a1a59f822b53422b6bd5569b06f89573ab3bf18852cdcb7539ef67370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305419f09311e202dc2122274dd26140fcf978c6e2fe87e7381ec202a80f8b2ddd0c820b16463bcac9745c69d8035fb14d02305ea55cda1e8d962d36316a6463a6f722d1f26e63368ed2b554c3517147fafbcab7b5260806d6f0d37687457268a3297b0302047c435bb500683066023100c14c5475876eae3a6d5253e81564c5f0ceaeae4e0f2071a75a235a1704057f161e13424a840c699a3daebb3fde4dd5d8023100c8f2faa3e676c7f077ca6903234cdee70d7967c11ecbc9c6730bc3a6f92a2c0f214dae346276033576a48cea4f91daea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b4ef2b78485d0a07dcfef453dce3ac1383f78bb82a17a6e17f8ec0b13ea45157e36a4495b72b950e87b653cee70e202023100db35edd15f167ee4fc5c1357ee03418a19018d585de80110faf7bd206d534b2f41f6c1e6e1f2e0e20b7613d9ba61965b0302047c435bb50067306502306eb841a3353ca3459c1eb8cc593d7cd85352d7d09fcbe0756eb1f1a678dc9ca6a09b2b27c8e341756198bca8b400b53d0231008441d7bc744ac03ef4dfe8dae45778b28e1603ce6e58e1cc96bdf5cf9f324c935d4ac547822122398aae971036922a030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a3976ecd8e89219fac53415741adab2aebfc9c1ee45d28bfa0ebc81ae86a0377eb0a20ee7014c50db4212f5ef94ab7c02306a05324bb2ba589912937e4cea81686f0887177311a17a6cda1a8724ace1fa899a54fa8bc4238cd7a2c9b39717c4ad9c0302047c435bb500673065023100af3705401c5b1cdd6ea96b8572ca500a8413fa56c57004e91dd19ee2fb01a45cdd4048e1b23c906befee23c17a924b1b023025b5b379ecddb1be56a7ee1d7e4ad970c3541bf76a9315b417b45b1b16fd8179057388d6f38a96ca74ec5dc2e72041b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c64b0011f2cca8c167898d22d6a8465f9d3785b3770c3856bc3c48ddd8ee90b399f101eea26663a74035ece8404dbd8c023100b0dace80578c5749ecaf1f11cc6dd44154fee976fc503a70892a761b48f73dee7fd37f8a7614be11a035ebb3bc19fb2a0302047c435bb5006830660231008d722b78efa8ad1530475656ed3401586945b26d0dd5f91cb06361fb992f74ab1c3c1e4306e0dd794ed68c653fc706a602310084f6a1848c649a1e216d08d28757b36da39808ea2d4ba2d45d1914ff0cc8cc1c8cb70271a1dc4d3183db6de9f3e6620a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eef72ce30676fc65095734bfba87db85584365099de893129f97c488705f6ba3e32884fd29d06f61623018971b1010ee023100e4aca7edc0cf2ffbbcada0b21073a53ca017ae402e3447a9309ff6a46ca3fbb74457f6b5d18b9118966912ff00df684f0302047c435bb5006730650230589efc38f07350c8079165b9e50bbe0fea6577feeab98ba5b247fdc2484f5b7c6724c55c44837931c5e58e256e82f22f023100c6d46fe97183d47a2e6b9cb398a2fcdd5a89159a7e96fb70073108be03849b487a77add7bade49a2c80408269ab507d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b7b08576dda53e6050a7e3492b286c62b2f64446007da4e7b9a81cb8a84cd5eb95ec1910f6f288c397070168f75db907023056992dcb2bd8fb9c304a308387cd274fbb1e04718fbf9de5e8222cc4cfd239a4e27697f58d2d38c385f6ff2ee850eb550302047c435bb5006730650231008c8a199b73cf82e2e5a5ae9d92ede1c5cbc45b839fb3d9f53069f9999abd30834971d3391abea33f5eccee865bbdf4dd02303090029e8e382b010dfb42fb17e7e9f33cbdf9f11364e9d1f75c9b467f36791608ca02fbce8b6dd43d3928b44949b8070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302c237a3aa3d93ca9a422dc44d2e022e6651d02b4f22c9bbb2e58eb39937392cff2aa9b49a1121f1b891d4b0773a437d302307dc5302c037c59b836619b622e0151d7925129134d1c5b4c4cf41fbf75a72274b0a564d99b61ad5f901a230e6c7833b00302047c435bb500673065023041337d533f3a3e0d644a4420eadcd885ae61281888fabd95bfd65278c7a59ac2241c4db491eec3c3fdfa8a9b6865be9a023100fa4c95a195aa334a9d9c40c98c5c24dd739bb5d44e90d83074a87743f1d6e3b42f7c524a0f6aba3004d391fdff7126100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306077b2725fc7e9f1bab6c8ffacce0d38d3ab710a138d18ba9cf87f114ef52c966a3b7991e83a307cb2439f09c37afcfc023100d27ec70b39b556e6962bb303fca26b1c3588cfd6223a770f259495139907856d1e09d2cefe3e3e4e369ed7ddc4fb617e0302047c435bb500673065023060e95f6527613253b404cdeea255eb60853e6e9b0d4c1134f7495635aa2d499445720d3ecc6ed2e0784ae6df729c40bb023100ad9296effe18646bc662b1109d1b1074e7d3cf40f5a94ec91d08af30438c5c0dad1939994d7c62882bf713b18ceed78b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023039000ce6ffa9c51622a6e05fe81e777efc12abbef1512a64b7be483680b69e21fa149fb6464ea1892333c0cabba8acde0230769640faf45b0ba3a8530c16fc7f81d72fbbea2edf12c0cd58a217362d69a1f8fa745f7e394cf737ce4f309ebb4ca8710302047c435bb500673065023100ea2dc0d5a78c4f1daab56769ef540013040d0d05247b243afd4ff2555cc5f1070c894a6c11f648b32f8b808804109e8b0230567d9f898f97b0c824af8e70883a28372cdcafd3eff0ef583bbd3ec852284a7e579f2b470f918d61308962d67a2154d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087134717c2a6babeaac95a5f96e14bfefa089266713216c87886679deb11eb10800ef973b56c03395955257d28579eb9023100f59b1493f3014c07202629ba2b07a8b6b13ef04ad9388d816156dc3e1bb57661b70dfc2d7290b38a819794bd12eb87f40302047c435bb500673065023100be13480ff10587aba9c7f448a7ff516d5861245d4b344e07003f5705bdd357ec903a8a425974f9a3b91ddb440e437a8a02300c76eb642be8ff99749542de30e6a4d90876b9450b2ae6643de3b307c94cb06b243227d11a5b1d46f72b1fd29446c3980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303c9557fe4c2a8c1c3ee6003c42435607a9e0770ef4ec3778c703dbc00f1f7ae8127fc5e87dd0c369e809855b46e97e1a02307f3460068087afe9d6a096689b174b95ced3afca3c805cbe5dbc92e682b09e603424d499ee0745614f64ad4bb44b530c0302047c435bb500663064023065e0a2b44abca6f2bb0f9f048aaeed7715d4d5e423d6d6a156e390ea9d76351687d831defab69d58440bfdfbf80a79a0023078db6187976bbde94df1c27727e1bc2ad63733a1d418ccc7972b7abe06d64ba8ef390bff7d53e746c786eaa4d6519bac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230026d6ff5bd8699f565374badd1619b29ff099cc0b9fa7470ca73806dc1ef5ba60d816133e3a36d45c73863024ab3ee4a023100c45869fca1ce020e079668d0e21b9ec49021db7f0a4c52c22108ef4044be875b51f85988c82f07af0cf6d338b9068d380302047c435bb500683066023100f1688463f01c2808865ad4ebbbed4138108809b8020f43ac5ade4aa28889e2ca56f35f73b96e9c8322c56e1aa02018be0231009f9bf7d2164f62b13a46ecc0acffeeffc1d66823a83e46c563baee734384768c543d4e4883850ee0a8dc163d9e9987fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b899552ebef4cd6af7921baa347fa47c42a5aed53b4e42fdce11ee54ddc33118cc4dd200d592292a863044ae3e7b49c02300845ede39ce3aa920f7f831e91f2114a0465e232c6715bf4fb6622126a7a9f0157807a1393d3f386d88aa098e9b115430302047c435bb500673065023100e91de74aa2d1e5867fa1642284be4a8b0886eae22ed7c9db41120dfb9906cb9d07dd8c5216c694804fb3c7403cb88a73023030bbbe0f1f588d5202b18c4da08342c557f1f1c14a695567c27a9d2fa29a2804f8f702e732b34fed47b7d80241dbae080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305be7fed586e6693fdc1ae9515e21c055e612d10c8266efa9b50644252f0d97a0667f58dc55aac49f3ee98030ce92b45d023100d2b123d005ee2df96bb8fc5dc4fb29668023115790fb232a565e1ce0eab1c29e5e0c766b6bf383e1ad3da92ed03818bd0302047c435bb50066306402307fd006aea2a8a8f787d0888ae5669fa138a3cfe36a5f02b805ac1b1f419d39ace298067f774166b5d2b0deb71234bc500230455ea296895e827da9166259fe4d0c3b258e1b968fbcd55887c7aafc821d3f8dc65ddf64f311a53315e908741f28b4200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd70e2c954a50dee88da7acdeb5f425882aea333548168b072bf4b57ac8899867f75375d60927fafc813c67fa1598d88023079024283e70ec3aef7500a50116dec9dcae80f8e6812b10354ca77e0c81b1878b8c37709ea301ccf1d3d381950d2f7000302047c435bb500673065023100fcbc431a2eed4345a06e091e7bd528c907e7fb46e9c8f4f6c8dafe167841ea28323f062139d7269b2c02f7849806d9b90230235158f9282ec35887a080ee6e529a7aacd50e2916d5dd3a79988cdc4a18204fe57b6cc36021d93dab39e7ec76aa25e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043a7cb66dc2f341af34db43722f4a54d61627c27bb664249f0f3f8c82130b40d75c7a9d9c74c6d691d341df80b8c0c710231008d7273ac6dcb639088fffff00857bf9744c5fb44af2ab513be58a9344a929df6c5144686d2cb821c0f9831e174c3927a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100acc145eb8faeedee3e236b566b05cbe8c07201188b8fd9a06b525f4877169efd1f70f51c75ed10ff2a4a47b01a954edc0231009692de6d6cadffde381d2d50dc6e1e57af4991500afc2e49aed8e7afbb04e7996255c0bf8aa25b8c26d1e204b9456d5e0302047c435bb500683066023100aea72262a889ff1f04d501704b50c6a93041a48d12eaa50cf1f7aaff9feb765f35c5b5f8a635a2daabda6d78317ad226023100c3f0ec1a9c9e3a553c0781ec4c9b2bf3845d650620935d167cad19ccbc60738642d578a917506071f75107fd6c38f3f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5318a008af8f919ae34f11b45cff97ea00396a63ae1119184331d08bfcc60f17f4752e1bf3a1f02be88ed24c50b660e023100eb3fa9761fcb169cb7453f019ea0d940fe2f7f9338cfee45971ed0eac4ac8eb18d1fbe9b1ef6a21eb12cf3710f3ddef80302047c435bb50067306502303b6b9f457b8e21fec60d0255a4b3c6ed669ad1b830ba206ef39537bb01f116669993a64c6bcfa9030f7440e0d835cd7c023100d57788603e0b8c5e81c47fd44ba72925bd84c388fb18a8de57c213c8e3d53640234cf287980c97669782fa6e59998a810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d1d9aaacc25e1bc681a63124e23c4d5c94d2613f2098a2f47e9a3f69e47eb1fb2cff25a5c3841349a441322686a70b1202301edefe53cf652f86214db2d9afc49483de6297854dfe2a871d960973c8298cb4a1b68444920cff6afc458b0019a9426a0302047c435bb5006630640230109f261e575e9ed571847e20ad600ae8d9dcc477f2709dcdacb270a352e2dfb21eab8c74d096ba8d4760aa140430c92e023014d0f500e8b5267b5798b77293377b1b185b225808b56422e9bd38acd6e4cdbcb3789b693804730d07567e1483bdd17b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023045ac30e92f877bf1f2b0f85eaa62cea6262144aaa7043823154fd77f7d86b698bd55ee7bb0f2361ba66c45d7ab615414023100e83f8ab83d65696b1e7e89bd30b045ead22970fcff651915a4b5d5a634f6c82f9bdff7cae40a5c9f32e4e30d186cbdf70302047c435bb5006730650230244f8623fa6c5a46b145528db750958dc3b699a6b847d4f443af844df80754de5301510b0acb39f25046279d37a1bdd3023100e5cafd2c6793aa6e878445d74b73bd8802652345f009f9c5fd9c6f6305472df8d5883e60dea296459022458c6ce8c8320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a0d54e0a54f3dcbfd5784e3def8690654eecf032943fa6a1f5943fdf5209c593dfa68f010146369191571850426cdaaa0231009a69f29f93066ceeb425712584156f399a822bab60941eee8e532ac67ecbe43ad2e140d3c7532960da3fa127a362d1890302047c435bb500683066023100a3cc39a7812bbe29477479d1b04a25665ac03daf3c2380a1bda401b162518e0361a148965fbdb27f17cb40b814aed57e0231008ba77c5b23bc9fe37f85dcac60ee5b832413db249a3dca33f9c0bfc69b7db4659bd0fd02cd72c64aa5e2800fe4a3e8fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023037e026f9346c7a9848511ad3623c7197fe1d8a3bf3e1f67888021ba2bb06c3f795fbdb7d75dca8036c529bf09be1b711023100af5942a32d0cf859e29deea63977dce82e8aefcb00df4b4b1bd16508c9fce06199a86e7f78c2cc18b3f463faa65e310d0302047c435bb50067306502302ab7c5ecd2a17027b5efd267346696ce1916a5b864970266641083ef69c034129720f9a6d17031bb8c0ab51ce1130072023100a53d1efe5b2cfa91d887c637d45d1294fe60f9295e69771a81a13283b8aa904a6e822c839c872818f4ab11c10c2787c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa9c9017b8f4cfcfa3079bd8de9800c8d2c1b0f7967e3752990705e21031a0cfba69921bdc18471fd78f55503a25f06c02301451d557f4b74926448d93fac884d34a8a9b9a023c2cb7a5a736e44a9cc4cabce61af15610ad8049222148a35b046ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230395fd9e82c8ae978332cca4211026a224920eea0f4e517ab46b81b7cd5b24b39148db98d1aee6ce246da4e196924332302310094c1bd288b6ff58a91a910b6b25d56cb0a16bbe8b6072ef50408801e3213bfb9d739ad8772e9795c3663e624ddc0e2710302047c435bb500683066023100ec59928e1ce669a81c7bb289671b865a7c1278cdb47117cdf821eba22128906ff8daeb268e79b972005de217d0654c73023100878f82866a518fc53d148261fbfe02cb941646589caee7c13586313944357fb611366e2e4474c1623513f3aa77aea4e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230479b0586ec0af99f8de539145d5ad67e0ac2f057914a288864d4e04ba01cf372dfbcfd4c6b4464694599905ebd7609d002301eb608d5d1d7eea7fd5969d9eadb91eb687d990f2504cf5789ce871aac45c72c6d002012b9a5f0f479aef956080a635b0302047c435bb50066306402300d951927766016ccb2f8d3ca2408230c455a249f2545fa7f45d1d0c243eccd37d4a16cbd1956aa0c9f0f45a27964f528023042e2289ea85da0184fa5520ef4c00ef404e7b84acd4b027abaee9a5da40bbd6678ebbf67ae22bb8ddb9d1ac0099ff1760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c5282891181a0c06015cd65f50d24a001f6567bbc626786e72d46724e5348a4228b47d7f6c4f06bc9de3af904247e7fc023100bc218c81ad9f231c5e9d5c678c6a9260bc7c3dd3282d7bb3e47e91b3cc3b7b30a3a388a5f4a5e68bfa1e10fcf57e2f0b0302047c435bb500673065023024e725b1a58ce8eea3d4fee5e7900346b690b2609da4fc54f4df993499d1aa759e303f30de1c1c6522f0a861836fabe8023100f3bb7513a20d96ed1b5ab7b0d8a5c92c3f3f7f3d8994289f194df5cfaed69863b2a177b429ccbcbde36192d1135150340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e43a497fdaa6a8b078f8f2e164436d987ac9523176c3ff718faa1c5d7001fa72c1f44e2fed89a2817939b31da2533ee02303a426acfda9a7791e307a5e3a0017846d88a1e1338ecaba2cbf533e4c43f6535567dcb590851cf50cbca67cd984f52c30302047c435bb500673065023100d3db6574459f81012203bb00a7c47d9f55217185a0d66764c98759fc363fad3522b4f2da32fa2728b55fbb5239b306e80230037b9be58df2aaa8f934cf50218486367e4b5a0f8d3a5976f0cff8e625426a52e55e84d714bd2aedf282cc996a09c90b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbc630083e930632f99f380a4b50b11c34bb92404cfc3a69a071e44201543be21c4619ba3b251a699774d7623cf3543f023100fc9f793a7e03a1856dbc63c91dc4222a4702bd616bac0e0d465b7a162c7335b98d039897319bdcddae3e27feef042c950302047c435bb500683066023100a99726bcfa8dc30b9e1d58a53b55cf242b2f8b4594f6c6d9e98f8bb00fa597764d93be2ea98c051c04b1a60f99618bb9023100d6e6097a7c8bbdc61addd2ab786d4a7d6e4f17fd1720ed7ac001ec193b3a960410b08d0aed3629ab0181faeef28058e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7d0a516b866e0c4fed14d0521da3881948f1aeb107b13492090dd3be91aec910342460ac6a4adfae07e4a9825e3aab2023100b02c8bf4ba9e8532eadd87a5123b27dbba0d5d93522706de6f5327ae249a64e892de74c9a966545f0820efd12a0de8820302047c435bb500683066023100dd93c4c5415fe8b26a51aa8284a51b446b04a29df73d1a007f085e3e43339acef00a6957541025793cdfee362e638505023100aa99367d1d87132e03b3bb0c9392a7dfd0f7ee188ca8e02ed5e3ba6791e216a8e5229bf0b68013e03827d68691d5faa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a6cb2e6e442a08b47adc63ecf117384b52c335760e12a29175bfd2e6d8bd8896f8c6c93ad48317edca425257cd3d468023065f52f6d265763c25422fedd5bc09dbc234c7b2ea39a282314ceb1e8f4d306f6378265d9037856d408d7a698c76f5c8f0302047c435bb500673065023100f3fb3d74d47e5a2ecf88c1787100c10fc1211b3f1daf11c7bfca12cdb92e2e0a84e09007345230272cb023d5117968c20230774568cdfee87a2f467a9e98cf79ca1acd58fa9f6101c66d57b0d6104853c79ffb8dea20ddcfcb0edb574f21f2cf73ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d3a9f260391bd38042495eaf5d04bd8260f637eb9fdb8d37a64185dbcf6d27ded7ebab25b9424b60f394d7edbd128f9023065bef0b73dddd32c722b4d841213c3c8811117b03c3bf21b0fa81c15e03c43fc9536387be2c766580f9141f14cc953d70302047c435bb500673065023100ee74af8230ba8e7d803ce6073ff53b7f6714dc418e006c6fb7d123fd5a14c697b3536e2260b3c50e9040896c5934a0e702304a3f20b46bb4eacc74ee2c31b76950f7c2d6ddb4e5a9a6c259832e7ed774be9218aed92ce93be731a845f03bfd3d696c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b0de7e02e96036113b3211a2f6240255325b022d444bb96700b7f28fd960147b2c065394ba447a7878aae36409438e70231008a65a2b54653f607f95679c0f50f4ecdc684cd15a0268d8861f05e0cf464e99432e6e7bd8f7bc9a409bfbdb65977f36b0302047c435bb500663064023014804799457b81db7054a049f66a5ce5fbb123f86260d7c5887602f7b231ba596ffa205e1c0b38f7994beb298722275402300d80c206e8cca9e43d1bb77b3a3594cf9455b938b51e19773c92e21d18dd4d583d2b5f228648abbcc7528c7b7dd07b540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d4510b7ec162e9b1db07c5cb6d87e1f234a283c977056141fdcb077b692461ff8c078a7a6031ba1a0d76d35308d77fb302300cfd51502fa135a220b8bf43d9c734abb27124a25b712766c8694be8e19a49bc4980fd9dc3505cf3b6d3c1cc1baf86c70302047c435bb50067306502300e787ab97e9ac1e62bb8a55712a0944a74ed3cccf5abb5c8f3680cfbf714e026ba6797f7ad35d4106a8161d7d17fefce02310089af53d307baf05b86d27414692ae6d762d36a6f97cdb33f42d92f7bbb6331140aa777a4cc78ba532d720f6a28bc1ae70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c228c1c3b1562db27d4ea33706efdf6049f9e40aec2e50e43f948e2be6419867bd491e80039e600dcc1231b9c2edf31c023100c4c325f13f77486e53f7c35fc80f7559089cb3d81ca0df268dae034a58251d1c1e7a1e67383ab391d2ea784355d5882c0302047c435bb50066306402303a64791e7ddbc8c1142e621ffe9224ba60ecce3c4822225f934d84b77a4f6e729242bf48f600ef4d2bded1b965cc8dd2023051105cc2ebeefce27b35156252e9fc7698185a59837db9239d592263bff740fcc2712aae52c0ffda05ca6b1e5c55514c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d38bbeda1c9fd8912d4a4e78152c67189a17e63da470ce6f647c307184b76fa3a859bb8d1c4f32df61985bec1caaad32023100a369739bd4f908216d61996f2dde444795ae0a92c3a0182b7c7a009a1a640abcbd8aee26c475e597c0b72c9391f5650d0302047c435bb5006830660231008c8e6a31e0aa99cdb274a68fa2983afd06371526a5ce62fe54a0e10e3c28008301f3c1fc7212895dde1b17f29afc6012023100b3eccf6a8fede74b3ee92875692c710f765acd3af686ffdb5314966f5be604e90e89f71083458d0a4a4216ca2147df370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076e4af2a154cff6293840785da837a8748b9dd0428d114253b5df4edc068bfa63b149ba3aab235432ee2a2cf0788ebd4023100dd8d455a33313396904719f064949d9979853fcdef0fd99e7a5adbe31477e052d54a67f345b7f14857ce790473d395480302047c435bb50067306502304f40d6796c215b2d313bc50c0ca2884a11add0611e3d0c6db46adac5f0d38a4e3e9b57c6a768899a095af9003bca1014023100daf94294a752a9b3038df1abb49d28803af6c31d18cabb8abd57f299f0da5feb57e21a24e8bb81168081d9c6788041880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1981bcc2ecb1bd4d303e2eb7dcefc0a92c908c9b5aee0c575ca8306f9f22a921def9d910546c4050ffea3fa7c70f405023006051ed8ee96834858ba107275532ff43e4122c0c24ae2b68fb12d1bfa436bd410dc57886d8d103b384a22366ccb29ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c88e962c9245d13ac0afaf0812d835d0f4c3da9eb3ba656fe5bf6c83d971c7be5363c61edb52f03cfe2aaca7457dec5102306921f87e09e4544642c1e1943cd86d5334d884ab0c7ad78eb4a17726a5f77d113622cf307e1565e00481c3b1912e12120302047c435bb50066306402302f024d32a575a9739191ec36475d5e73330ba1646d3bb163e5f481509a650c0bb83a57b4cbe4b0805d68e7192c615d2902307499cda00c6830a4934d1472fab4ec1f83e58abd2737c634c7d2d5404565db81e54b25a90d7d6756d106537a013ec2af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100971e1b68736bb92f1300e29b43a965f35ee76ee56934cedd5dfe3832caf190d3d8c92107c1bbf6334e906b6ef59b9cd3023051369658649848d48e5a16c6ff3420b5e2e5ab51bc824fb5e9a364af91850126b4be2c1cbb425f570195c42f1082801d0302047c435bb50067306502310081af2bc2b6a414c3fe88c454b2281923d0305ad4856fa331ba5a27e09d7e7984bc74cd9293e2214b1a59a34199aef20c023024fedc70c79d21730f315bf30a99b4451de7b2d57b87fecefd59a48fd91b7bde2732d0b37e0067d86ab557f6cb26beaa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230320b0d27124beec7dd64a957f576e3852ba40adbfb9fe354b902f99e611b2ecd563bb4eb9cf7133ddcdea715b21dcc48023100e5a52d300d0fa7181a039bd606d2dd16d506fc5803f541f592ad4ecc9505bd4ffc8caa3c187f665657b398c8cbcb960e0302047c435bb500673065023019244ee7f31273be2d99c6330a487a3240f04da0f602ca464c1647cc453072ad8bde7f3ce68cb5dac3265bd9de4134f60231009e79c8cd847b44a78b83881b1815c1c1f1d170807a29ea7eb138c8d6401f9ff39c57dcc74b4f313e9a1a24bff2ab859b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100841e462f8aebea05109cd3ab2ddb267c9e532dff42575cb7d54e9ed0ee05b78e6186b9a4ee55e4d4ef1da5c64c425712023100e387fd123f31981974c5578f96ee871fad402aeb4795e34c779fba328a006a06081b9b171be439687676c351912c51840302047c435bb500673065023100822345aba713da90b6a93aeec3e7895bdfa04eafe9391de4c19ad0e0cc4702ad658a9e3ecebeb233637b75c28ce9e524023065d6ed22e8472b2e1678248349cc2b8a40856396d5d83a27f9ad3e2d20f66eadab02ac11b417b74159102751ff95f3f00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b8a222236cdc701b1575e9054b5274bf2e422937304ef267734408fba78f7de307ae2e792981d7979d14f946e56b60bc023100ab9eb38b13488528e796d5d86b956e3197791daa07aba6cb04ff4ca5415b6cd669a064e9cb784b60166ec6e32373527a0302047c435bb500663064023025856a0a6212080305d903563d59c4e0b645f6fa941822aa62d7d6976e47c2747a947920e6dea07abd4fccc71e80ebeb023002248a49955504f993868914e32500d3848e6ad42dd71272e361ef38700ad22376d1f5433e3d589f6c7920c138c4b1fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f5ce796c6788c6575ef0ffb8ffc6004e0939489701afab59617a63dfa007fce7e28937f07b6df9f4c11169760ff0144023100f1641dee9ff6461384634e14258c732119a88619f497a6ba9ee4ab61276bbe2979078a86e32ae09540c8a653b5e6fc740302047c435bb50066306402304cf2f7c68529940122be9b56afabbeace4f53496aabcad08af82d1a1c1d839cbd2f680c2d4186b6555e6cbcf0491d7ad02304d3370fa0386e1b411240eed25a4163d1dbcb8a4dc381374d358ebdc7498dd3fb44a519342bede0d270b47a3abfa35320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014dfb21f3c67dba8932b9a605973957937e39a33c1e01d3571d20cc7524810aae18c6abee63e7c7a9b38cd25b5136ecf023100918b5e61c7729bab78e46799ab2a6bd0f0dc38389cdccd37527e83917a8ce60fe34a6fae672aa889cb49281fd0063b990302047c435bb5006830660231009987d85b2d762711c26422d4fb7852f9940cb8a83191054d79a4fc736d28b8a49c7994f3c8ecf8fc2bbe178d75719ba4023100bf35f05efe84d91829c49bea1d6d80c0009bb66e75c9bde0738ba1e5b7655ce71b60bd07d1c1c99afecf0cf061e90eca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023012157ee893ba7b9bb9f9b336fa09f179e8e316362fba20082be30ec47c467dd3e55eb963f3cc0ccfbab4c77d75e92f86023049137fb8ea6be927e0ef44c290e62cd0fb11ce1d1e40eede2928bf5911204d9f42b4195f061a065ab83b829db9f180500302047c435bb500673065023062b6f77836af487499914f0dcab6c19ceb899b012ddc38f2b8f902a559523f636bfc27a280967c0fee45afde421d122e023100eb2287d66fdf208d2d4df771832690b60490b1328124706e92413ebeac91e93547cd70eb1c537cada317e9102b191c730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ee1c184995b64cc41a4ff61053e09d6efe05c88a209d6acb7b9f3f50d2d9d2c662846981eed70832e4fa13c18d7484c023045d698e5304391f1e5d4946d79714f72ee189eb51f222f12b0b4e3862358db4dde5dcabcc360c876b56bf7481ba14ec10302047c435bb500683066023100f07f7b4a3adec9fe035bc9c66485bc57a8438eecb4918f6b2c5aa5a705891ff5609a7b4c2e15ca431a130db7dd691abf0231009c1784cafc6e48879153b65b280f7a22742940ec5a2a167acf5e9703cf5421c9f3b505078927c386eb6ea4df4c7ccd740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230324878e8191bf4890f3b83e6e850d7162f90d2b5548d14d32e367b42796604cb1f039a920c75d365f9ece143080ef81d023100f9c58fa4f9dc895416181bf8c8c1ebd0d06cb59233ac52083c08c0c0457fc22e39aab062fe0b55f7abbb0a3e28c9819c0302047c435bb50066306402302f60a555b24c3386fb3ca1f0147a497fefb4d5f3b4c9baf9a38bdd43acb36295287963bb1b6c607910fe7eb61017976c023077c287a5f05353be15250935f701e75a685c90e31d3586c7d01bac97b78a2155003dd57e641ace291d61dba8de3a58580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230571fbf6f1aacc831b6d003f6482ca819a17490d88030dc9cd6d94c6f73be8ffc81a7cfd0921815b64a9b0311fb6a5259023100a82666c471ed993d1c47ef93953c6382f2c744380d07700ba35d1975ebb9c055aeed0820f32b74b11d527afa19db32430302047c435bb500683066023100d877e68333720249cdfbeef0623dc31a7ce2e6045f4d934fe5f60c0949adce5474b796bcc4f5a4afcbacfd93248be21e023100f87b159372be6171e71dfbd7982e68e0163131bf0e004fcf0ce02a791a27fd9085f0c4f9f422e5c4fb870d97940766830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230400f6be05fea2b26491585cd8adf7857c84a0b533220913bd14846eede692dc666b9d84d1cdfc0d6e13099199f5964c4023100b14dee34331ffc4859c1d247b9439a16e84561a0aa6b8adbedf59f2f67479a03036e549a29b9d6ad5e4bf279459caaab0302047c435bb50067306502301d87a5b90b47350a20fda616e59b89b914cf1f0c596e45bd99652e3c73dcef96e842c5360f54949d72f41d225b9028c20231008ac7d928e0ff3fd3809f557ce252edaa83955db3d2df93b17295ec817f47e70cec83af012d7996525b459170cea8bdca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008da08bbdf02fc96a522cff3be57e4c610eadde7d5a40bb4ac634d83ec13e422f60c90a14c3d53bf95973e4ac67cb66a02303ca476ff7045baaa0b771ab67f97b6fddff4fdc68068cb6583f4d55489d8b7a80fbfa8f289e84d6a018294893ef6c6c50302047c435bb500673065023026710dcd028aa0ce612a063c36bb8d6789be23dd16b2ca7d909e94167f148d48d7b5fff0066271899f04f907206ceaec023100ecc89ac51f9e12635dfeabf84ce15a73ace8edf555ab2f2f474501c97fae3f43eec9fdc28db6a6dd4293f4d032ba97ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100af41d12ad04b6597b8fb7d78bd90251a802a78b2afbf65115e2e48d84a196f2409fa227750060510e554f0b3eb39a802023100c082fe5c6a8d94f59328d016e9d63ad1a647ae299f185b498c9a6790becbede9702508b284626f32f86269cf43b899dc0302047c435bb50066306402306ed4d9047164bce522267ccc689490c7fa965f40e7ce8f1dd5525446afcdfd95a1abd92ef88a16fe4006257cb10882eb023044a4b95465e192f2e29c31de85c296ee090ac8ba2b736f218efb022f988aae06a2091ea22af40e761bd592363a1541210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2d1b015dc0752760f4ee706574899bcecfe967076c1c506712acc65636c23358ecdb557af171e810583aec0f87e35db02302b3acb176c07e5992d50dc96c001c692156f14935448a018e034a2d687d7a590d66993df45e4b80462a0cfb77b428fea0302047c435bb500673065023100b94952a3600627b4f0a01315a7a4ca6b9c919b7cf4ce0a3c4b6a589f415fd64d6592b302a0246f314a3e4d96d6e3d9a702306b341c02cf039b9fff4d5647cb24db776dd5a50a0d516dc9bee87df4c273ed0c2b8a71830f95a3557ad825be956aff1a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310092bee08ddc5bb31625d4cbcba4f0f4b75f54c3d4333d7df42e8e5f7540c00dd7dbb6dab519586e8c00683245351dfc30023100d161bb6588b761b872fcae9bab8db6692ff0c61c546b306709cd08b79f391e70a768fc61c15d0d42c5ed9250b021c67f0302047c435bb500673065023100edccee094d6dd8142d68870abda7870721c4cf8943ea456f6b20ced9082867b9c0d77273279f7f9efef0bd9b604333e20230559ab628c8d027d9dd42d5d65d2334d7da3f06eb1fe41512d48931e21777f0182e74f6a1304907e079e381fb281c37230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100964c134dde13b47d9324a270c51a35bc13fa3f22842fa9e9aaad0cff658659af5ae7cba7147aa2b6b45fb748f316c2570230269bcf4abd32edb214dfedfd931e8059f0c4eef39c1cfe39e24bbd4cf1c8da1567f1b8f4002fe0bf7c068a6288da79b90302047c435bb5006830660231008967e7cf586c9223a64e1e800f58c2ea9213547068f7eb44357ae83c4a62fe5dbb57aac1813d012ad9f0f8818b83ad4e023100fbec4bab29ecd067125ccea50288e47eabfc2184c69ec4feb429268656c5391e39c5fdfcf0865083cd811ce8bb2c0b270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f0e37ba3e3497c00c6feacc6056fc01ac142c7daebf852685e4eca807ae96e258facf29640427394c3d14277204156f023012e91feef39e4cbd1771a709244c4ada3f487f17b343c60626518ffd79764f4c2b59185dfeec25313c4cca4213bafd240302047c435bb500683066023100e231263fc2e331f72687f5a738d48151d97320a859958b5c3ce73f0ce6ffebdc3c1cf650ff8edc0a9e6e4d3572a4bf1402310088a62256cf29f01f5513a19ff01da136dc2eb31bf7797d999f430f75370298daa744bb666f5e91e42f53a6ffc9d769f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7d2d52ee56b27e6bd384f8ed9ed40d25791b7c4421471f99f71d5e709a1fa8f8aa4564bfb7b592ff359ffd3b2f583db023046b5ba629ac81bb548d522592b3e27a94f8fdcca20cbe7d570458c740d64cdc2c9878af6b92c3fa94bc6533a7f91a1680302047c435bb50067306502303a05f65985edcebd5d2f9c8e03b17bf9a2336eee6127961b9ae2a09aee1bcc4c0aa2614882e20eb76fd73968e81c1d940231008a35bfd8c5be46c77ae74105f10eb696ea6c29b96e918da50d734b36a011f9b48a445b7f68492d5ba28f7ff0e108caf70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c97c7a56365e29623feb20aa72cda63b324eb51d1bfc93e93aab9c79ea73628a76c6a0a61e7baa060e2e4e6a437884450231009578946b752fa82b64ddf79b2c6edec3f167d5d9855ded87add00a660a9c45da5e63b3aeffe81cce8dcfd4ddb819e59d0302047c435bb50066306402307050caad99e22c675037c304fe7c5ed4037b9864a3a45af1e56e96cb054bfe96a553e1369c3ab99c88451383e9dcd76602303af1d55947899e72dfa4992ba9b67a3791cec2fb955e464b20386f9d1c89dfb608c32767f81b1abf3a911e2351db11d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e79ff2f046dc6aac617f222011bfa07541f281d323cc2d0f4495fbc0129c6174f761afc0cc70b8fcab305402c838b5ed02303a7b109d714a14f60a3c150bf4db246f5f6652a3c3fc5c702d19514065bbb4df424b3ae9ca5033678da3233494cfda6e0302047c435bb500673065023100d384d4f3456b631c8e96dd6219a35fc744269660ed4320aa3d3ae6095a76be49c2a72a7061782f7b893d3ef39a9c14a50230723ecdae8ef254b9753035394b0cc8431fc88fd05ec24f28db99b2f11dd2eaccd38d706fa381b865dfd63b37d409640f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7813cb23f0ea2f5229794e3206c7d3cd119d09a818160e1e475ae25336be9434b8846fa2e676340d723d7087ce993090230337236cc04b988ae1ca991316b93945991ebfdcd467e83decf36639ddcbb14bb9eed30ca974bf9ad383e760839cbd8330302047c435bb5006730650230051824cb076d593f1ffd9694a99a7a0e56340b1993c7b7329694b5946691d843f17d9680806affe6088382ea22d3ac61023100afa93cdfd3fd8de5fa3993ae544cf5f7de9a3c6c714c59563f070fc899b5fe3f68c4d6dc996d9cd163e84ed45fb50ae30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b5e91c05c8257d0e8c2ea4cb98e382904df448650e24946f7941adc4cd311d54618ac3fe31999c436eaaf1167b15d1802304b8bb149ab139a29dec816e3338b73e2906e27c2de568aa1f4dc13e200d5ec433d8edd7f54cfc31327a2baf7176fc3b40302047c435bb50067306502301fe21e201181114904fffdd1e36d08bd8350f45d18c7ee2096b6499e007bead1b065f237520795329d34008b24f892e2023100f92431fdf1d7fee8db75f6c7a03c4ca660aef0384636dbdef75c83fd5fad3c826cd5846724b976614e1000f0ba818da00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230149e07eca3ad704f8c8fd0b6dd779f9f0fead417c7023a360ba1921b8b0760884d91bc4b9641fbbac62f9105ee23c2be023040bd17bbbb5249814d2fb70a022b162b72c7dadb970c35b41cf7237eb426ee702f6d470738bcea3b80b568e1fceefb6d0302047c435bb50067306502307dccd4ed1b5784e4f613352600c12ba860b25c6c1407ddb73c25fbcb4879c859936f7ae0f9b0ef0173c9d111274d3158023100d880195c15ba70e257787c695077c9c8a1d85d1c9c960444811fe0a25c35fdbffe301fb871f7a08b44cd59aeae09abf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302e76e0784e958b34bb5809a89fa4fb8add89f2a50992921dbc44a1718f019eb26ae46ceae6acb6b689b4361f5a1ee63c023100c030a4fc5f73913f877333e3c58cfb7c8342d60320dc453c0c08a5eef8db259d5c02c7e51615e2eb4aedc25964ddf29a0302047c435bb500683066023100f86649a03697f442e45dc1633747504d4e13d6c12dade0c48cacfae6b93dc1b371497801186180b1fb5e75373092caaa023100a954f8aa13ec90f752739bbd533f0d8c0b901c69755a57bee3d8561fdac92b0896536a1478c3da349f9500c9bc55bca50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d276a5fcdd7d6bf69e230cd1325446d580da76d49cc041cb98c19cbb2fc2bb8f21612ced2e74883f50d466656370149d023100c8f7b5d93a2e97f7404611a21b3a52703e48a5c2f9d0f007cc062e9dfc80060c8001c36086305fe0f9a6463ca9af19850302047c435bb500683066023100bf3a5816abb8b19c0c0a11b256a39b7f356c8f68d8557a608a20d7264b42c167b9ffe33dc500518f04a3f729f3b66c4e023100e7b4ed0ff5afe70502a512cf4b3b08171df6abc43b18f367e8ccea767eb6e87a8fab4ef7c634571349f840bc017528950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b21087a56309772f93b99f29baa6e0c7ebaae2d496d322cae4d2ad59c38c050329b4b9c227dcbdaafdb9f9466df7661023100a5a70c75671fc388dd6a206b4e93637df1b42bbcd27bde78c51b3e58d1ab59a5583a67eae40e307555d29f86af275a760302047c435bb500673065023100f7eaa53a0582e896c77254529a57922e7f2646e9bb109a3f49eb279126e1dfcc9ce49f2f874f46a386783b0afdf25a2b02300ad40758b1b81ee8f09729d64b2bf093ff05e9630f76bbcd169900d6dbdc51e0f3e9d0b69a8e659ff77e28facb8642110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008e785271168f08677c4aa35f51d59fb8d9aee8f577b56ae1bc2b5ee60ebfe1519e04d18159df3f807ef7527389162fd02300e66cd8d57bc4c709e92d7793589a474b2f72f00de4a776d6dfe0b394938e11d33f2898eabeb2b832dcf99e3ae40d5ad0302047c435bb50066306402301cf558eca0f75cc0fb11acb88b1babf090d85124ef68f1ae58c72ef9522d9816a1b8aad2236f80fb81cfd2bed662e3da02301de273507a1610d47b40a167c67471268c7a5ac57d01da660ae8473298bb17b014284b2dda677f8b6f2f533151edee330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015945e09548f40a4bfe2dd3cba4bc45428f973c21cbdf768523bd0a90acb85e72161ed4ecac0aebe729dfec8b38e6723023100d9485d36b8818ef1776f0e7812e6fe2abce811aaa1a717c532ed19afbad28ccde1d5385d59896c6a8fa231c3f1e990120302047c435bb500673065023100d618706d4e970cd40f2f0a3232dbdb226f81eba532bdfd9de54d310ffc440e6c9e10f991ae5927885015495c2377c6c00230239d71e0a33b3938229ab1cafb45217217f5b76182394a2fad0e5b5baf64bdb58439a9b82d73f23ababde271eec93f870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b58c7d4e00218823dcde3c1dddfb9c2abc21d77a328322eff89e1739ea20fac2e72468bd8fdb136bf6a77e065c49b1ad023100e3c55df4af92ba328b19b6e0f122dbc4cae395d451ecac6195ee96bcbce89afc1fabc50841e91d4422213df803ef14400302047c435bb5006630640230573c3906c41cd3cc38c1ae6c4fd3960be48fceb9bf0785a3b913c72ab7e11c0c702d016e13aa155f4a5a6bfb365b0fcb0230633dec042eb03339b53d9471c399d487a61243741e984fc70e28932b2d25c47c27b2934562dc040a21c6a3392ff219be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf861e92bd18b6190f4eee8f9eb4b5cd5e5e9d7102c4b1acf1a64ec2274538629f3fccfda374efc4837277a523ecfa1f02305c839e12c38c9f936434b216d9d6688bb97a7392d12ffe4130b5d68913b3bcb6c8d1958f0fae1918a5b868cdd31312b90302047c435bb500673065023100c6e5b912bd5d222013f328f90a39fefa8c85d72c9030c7efc260636228511c73fc8c9455f3f70f40ccadad2e16e649cd023055e16535447952a2b9cfe961bb1128b5bce6135322ce81dc55c9400d2ec7030b0c1606051ebb4dc71551634d94ac21930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023019bb74b2c4361be9e99b3518c5615592b1a08a1f84b0e78c9347b337e55dbffb329dae8a4d5d43271ba6e2839ef82fad023100e7615f6a5b7d7ce2d18fb8dc6d357a9c526c503cc1235e1b5c0bd215a764d3280574609e814b9122470ca0e7d65f51040302047c435bb5006630640230774a0300f757816760a58daec61b06584e1c7a2f99706244c64deab2a34ec0487e3e385827b67096749cd7e29b9c1d29023061dba458ed5e46f4cec514395c38696511d996896877e5f5f5793e1977f6a20a82ba67aa38eb1f38180d3b6e455662990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb8ebae3fbf8546f5a0418ff40553efb3e3b9ff0577ba398fb8e1527eaa0745c9a6a41502ce9e14eb9c13cbd16b05bfa023100a6083910a8062aaefce6ba73b759d17a1745eddbbff752f7606d7981112db347e14dc3820bddfdf6fbfc73bb991b126c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bbaaaa5a5b6ce6824943b2ac9bcdfdc568731c9b700100970aad1a475fed43e8cd2b526699529240f06e2f86bee91317023100d879b9ba15a82f8dbd5d85a4930cb927eba4e275987cce47305fb6aed72b4653aeacb7e78baf38dc82bc61776e8cc29b0302047c435bb500673065023100d2f18043a6f77213090b0b9277a4db54494fe68fe6afb77b9acedfdd877520b64d56da9a36a7ae6a2ab6a9c8f2d38ba002301ec2dfe3d57f7d170866be99ee7f14f05f97decf59eacb9daab6888ae27489cdae091ac62286617f4153212110dd83210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023020c73847355482b4e24c01e5e31dd5ea8ce2a54a950f095d47d65c407bb3ddabfa92eb539b02765a354e29f6a1485fb802300e541ae083bdc246fd0d4c092b409725975fdcdba3c8bd5243dd4db9038f835677e032983a3f757de6f16dc287721fd40302047c435bb500673065023100d5ebd39f3f3fecf4b34d78bf96d45c63f8e2442af2eb7731fa5a2780ff52642da769fa3347702fcfca7abcd9baf83d47023071dd97d110e75d72cf0e9d75ca4cf10640110714719fc621e06e27ff646dd37fc4f2dd368306ef26a761ce18d0912d900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091d1d185fe9f601e7a4e84d4ebc882d66b9c06e1aca4b067d9753f9f751ce79df3281614db3e11a17e6705fb3228d69f02310094820aaa2d7d654a3cfd639c6d034301583f4dd224aa6ffa3679917c9c851f494cc2c05ede550037e36aa2c873c1c6a50302047c435bb5006830660231009d1bafb873f03aea2190cd79cdd4785d92868758b75aca42c0e9dfd920043237f788041ce29c371063e59b8d526f9f58023100f9552f39f8b7db02b7572590ce89e91cf61f6988025e3e1775957d0a5690e1f7335e21b151b0710f2832a2720efa88970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230262573c8f7f8c4d8af407e9eb80ba05cfde3c55d4f67698d516a09489bafac6d8a90d15165e72f7485716fa8ca4a93f0023100f82a862fca411be00e16c42067b1a664e6860cfe3daffac70d371c0d9fbbe071367b4d7ca8b19dbaf323f77202892af80302047c435bb500663064023100c53a34a855f6248fdb5d9af54409c31970617bed4dfdab14175feb8dc457d6fa0555c131673c98b073cc3e10d49d35df022f0c5f215d0f7fc4bbec386336ba18226c0d7b37a0a0034f65f6c1ea3ddc4a4f92f2492c6501023562048a79bdb25b530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c7ad43660792ad7a8e5a25823d6c160277fef66bd335fa07cb50095c650444e1a79ec223b931c8905910674969657c69023100ddfcafb5eb38581aec37f90b322188f4ac7039c9c4a28cbe2232b448ae61920ea6bd891b13a57d09720961a5ca910e170302047c435bb5006730650230435b73e46b1d82a400242992fe8128b53dcacfbc30c8298b75d60e804645740766e7f971d5ae8a031e93c9227e4db3310231008fe3c625765567efaf4569d4302a9763a9c48565cafc96c27049dd50d0a24675c12df43dddce8866558fdea9de8e4b920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230088249c418060fe708a5777b054742d1b439ba1cd0ed18cc4ae8562a6b0eec7caaf24c03a0f2f7aecc18ea566c067f4e023100c9b4586db6abafc45fcbe06869f47dd2fa7a83d039aa5db141e5e78c2d697a78ab7ba5c4cc064e0b0f9c91b6fbfb05170302047c435bb500673065023100880475b992951ba2d7aba8b148c9e6dc7e296fb9056891e3c362abcc50ca5d541cf00915d088a6b915bff16c23da695a023038f34e006fc77aefae5126f0388981e5c98b5a42351fd374ff700c45f5e0fd81f2a8c87fbf68a4048b4dff9b32c7db270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d95d74ea6b67f45a55e7a4b94236738f1643653bb11af1a07560275fa183f5fa17ead06f14169936f1aa0b16b78190db0231009ad5546333040eacd10895119a9f27bae38ef16ff6e1eb585a70d3be00ea5c819e997c2c97100ec7e0e4258e685c3af80302047c435bb500663064023042248beb0100b5a108de7bef90a7efc475731559fe334c79d55a2fa3b8bad310793b3ddc1e457b1f12634af3d982349702307181ba6022fa6b9de28d3b538d6a109d1d842f9da7ef271464b46f1a14fcafbdd86d0813f4cfe81918a54957d83c0d650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017930a181024552f58cbd25b6e952c21b5075e8373dadb47df6fa26bc24a1af3eb67ea59286553e605c85e20536e414c02306951aebecaf31a4d0b38cc02c409d04fcc9d183427dc8893f6e74bf073b00fe679a1f61fd3f2f6873b62452758393ac50302047c435bb500683066023100e50abb5727298e5023a5a640d8a0490edb55fbbc7ef80b46f91e23c90a905be597716c6f71e671b709a620d0342260d3023100ca8fcb2edd16a49dc665485ac033568a6558d5d4ae7d26c122b69215a64aea564935d86bc622e3227b733d3136827dd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040cabedbdc983ab486a11871c0f9b66ec9026491719ac71bcf67f5ef2042c703a1e10f9969612ef195769272e7e712fb023100a20ac92f15c3cf886f2af9e163cbf45f3e1a62b787d9f63c73a810b3c9591b818d2b50da99916097c66b3182500b93ef0302047c435bb50067306502310099e448546d1e41bd58b0220da8cfd890db5047d4878528051dc63a034f0518ae998928e66a1341997d193ad69345e39402300cf6ba60ab166f554f97d0d8574e76794832736821da868fa9d7e10ae1d5d009a74ca62afbe541dc1a6ea6227c3b879e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301741ddcd8b0b295a663f1ea6df475180fa62ada92a5602bd295421bab509511fee9a69ea80f55eba43211ab23c661c4a023078f513190a519e7e73376b8359b03eb4ebb0af18a92aa08468de11be2e030c115c53ce6daeea6170180fcd537fce8d750302047c435bb500683066023100b50af638f818bddbde5dfcee30999cbcec20eeb23be7919e8ec666d10d214a4c3930c877198f882e7230e5424f41b151023100df8de2292f8fd4a4c2322b690ac8b42a0713c35d2ae254c269bd7a08ff4d5c86f6c95c3dd0229fe28ee8d9826ef21edd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008351afc0810a76a485e428255f3bb1d4eb8be65dbceeabb270aa168a1cb99c9a75849856055391212602b41501182e05023100ad1820616c7a3a464902ae9c6974ddf695bccb2cf6cc9d898ea3a49056706b814e6f8664e132652b1a44000a0e1fdc170302047c435bb5006730650231009acf09f56b0e9920387cc568ce8f983659a0fe55b5d8919f7394c5851186474c7fc2d6e699ef641e9caf39fd4d9966780230418872f0dfe1de8eb661060e72b2621cfe264ecfb5f3a97458e2d8507f66440d3d2ed0ce55c0737e48741c68d48959b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023059887086650f9646ec57ed844e6c110139ef6668a156e84045f86d57fb2a4f2318a58a33efbf7b0394dd66739596b08f02301bf6773741ff90f14801188efdb2ad16bc7a6eba21240a08fc07ffacf1f25014068a1cd98f14955acdec3b0b9e9c2a7a0302047c435bb5006630640230186f3e11826b260ecd18515dd3b0cd328bc8ca7467163cbcd4afb218ad991d832da84df5c82e709b2ac065a79cb829160230176bdc80a15bb89da45047b6ee43d401336563a631914bbb522f72069524a8f9881df0a6260aa08e8a546ed0762e043d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d30f15ff9d4fcfaf02797a8a2895c2f39419404dcdefa1a57bd56adbe483dcc0c34fd66f3f7ebe2502cdc7f578ecd1a002306e4c7e4af9ad2bb9910137486098e04763b02355ddbc6f9b31c83df15acd3f447f49105f9cd49cc27b6941ae44fa15b80302047c435bb500673065023100f4e8b89b4ed351f232957d3902f970f896720d31c78fa9697114c33e5c6fe352f87bf4b20939f54167f46f8537bd11f2023050a2bcc207e641953671d0cda24b0edd9d53bf99affbb5ebb9683eb53bf896d18a9da239018a9e8a739acfaa6e593a410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ad29cf25592b7ae6a2ccccef8ae29d5037e9ffa6024db1dfee3976e222674eeded9cc448bd96ee777faf18d9f3800a6023100d5c1e59658d4cffc84d3061c05e522f9f9a612d084682ef4e8f4d7343a83db6726fe60f7230ae14c4d12469663c204940302047c435bb5006830660231009e9e1c98cc21364a57a581f5cc3f21e65d69d32782b2840be8dc546a4fed9d7f457c1614de26ff158452e5179bff439c023100da16815c4f010cd742387f32b70560e12658e7b8266c0e1ac581df118624dc19d1e7b24c87e9056fc41908145bb8918e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096ee3c4357c5ff2af73d2a3d469926d15c81848f0376c4c311e5b3d1011b85704abd28ae7d95ece943e355cd510b816702310087c95f8d442e50bc3a36c91da41fd582acc42b969d6439b15de82959e30a0e92a5d185dcd56157c1d59e25e868bf23870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230462e21fbe289884af89af3a519fef045f9c78805d3b437676d2a81096df8bc78779beef4e4c93dcf6a0bf4a27f5a8f45023100ace56803f6d9772d0176a15c4830a3c84aa0c8b0c6dc125cce9e38be28f0c05331e214e48f1119076a9bfc4029ebbda00302047c435bb5006830660231008f64f0f44207a336eb69a8bfcad6d4af9f7815f2b79af6ecf36bb76d805afbbc4b6741a8a3454b19198bd27adb099f66023100e9ae7b8d07c9cdfdc5de4f0dadce77a70a7c57bcd9ce2dafe55482820190bfbdb7a9cc2704f21e1d13e234a7946beac50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d59f88dd4866d92f60b0f9de9e480d620ca6945af507714fb3a00bfce65ec26f91f03d5483d2ed0279bdedd752e73793023100c0ba6874b66615fe86cbce6054dc15ec20addec34890f1d1a9801db93fae53a9c8feaa03f9cd660d07be622349798ab00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039ce6d80158089ffeb65b7be0773ad14a2787efbfa73ab8c226131a3ea6cea37e55d6b5b9f2403c3d679200371dd7abc023100f9bb2c0eacc9c49b8774da149e6d685a2808a460176c65906698cd63b99737292c6276e4eb078bed1d03186a452fb8cc0302047c435bb5006730650231008004c488e728413bba84c57dd4d4531e58b60c4e9621ce1a45368512176bd915e3e07aee73d04af93bf478bf48ba6dfe02300d53d0fa672f125fa65c950720d1df63b9696ac2fbe27887bd13f0545a7a9d70afe4125fdae17dd0152ee9b79ce190b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100df2e7afb67e4c5a631734573dfe799a6725d29e49990510e4720d51e877fe51f39478efbbfa77e4600c42350b71b4356023100838012709b994d4bce06299fb9993b8fdba606cef8875fdebb12dae59d86a12f89b39ffb3266651184250196da5e71870302047c435bb500683066023100f4afef6f536325dcafece2570ad68933ac517e0a24d9dd856e4d841371a25759d6a25cb56c05f20ce4e077fd07e247cd02310086d54bb03e155dc382b78463d7938a2cc31dfd7d92cb4944f8c4fd55e53a441eccbab121953137d5f303e555ec44f9df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023033eac2f2cc5bf370a0860e7667e2595e58bec8d42d71e6ba6442d7f1faec4c53222484f2a0b03ba00cde16379b1d2dbb0231009ffeb5e07212a50933e3f685b415f4ae0371c81e87656b09d3ea16f1d3021df6faf61636d94b21f600060f9a5ee7d6110302047c435bb500673065023100abd70d7bc7c7a60b38ff164ba2fca8e053f333ac3245f748193c7ca331e2b259e74cbe0967db619a4819deba3214df81023007f764a1409e335e1470b03d6b5fd4e4a67772ae064bfa230e20ecb1d104c9f857a65dcec2546a43c2295b9593ed9a670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300fdef0eda61db6897d963b373c98e93bfc3e7a5b4943cbd8398b7ca0f9b0e8d0163b9706f1e8455dca341ca753381f0202306412b193384595bf0c5b74315e830240c19b4667d5e77955792e6d7fae53742ec74652ea12cab159f5b2673ea88cd13b0302047c435bb500683066023100b3de0392f875ccdd0fdfcd6a60905c9d272d3e749bb7fe16a1c702ac99d89d14012ea9be0d4e8cc66472dc028afee9e8023100a0a4beef67e07b439b2f01122c09891d43a28cec0f2cddc6fe7ee9e12431951f3d9bd6e05dae6efc2b96451ebbe9cff60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e9785262f0fe224529c6bef5ff9909c813dfb56b73ed7817d5839a5108b902362d78cca63c48de912c06a5ab20e3dda02303de207a5e73d59b8b760a9840b465043d7b72f705d0d6d7123748c171fe1786e3600ca8fad6c44491c63d1f2d7807c360302047c435bb5006630640230070d4b664db549bb13ce016887744e4f893fb1ff1e5a40ae2817896f82f7b39c18967399a8fcf216843317d672c4085f023007a68b301cde249187e0fcc2014a33c0c600f304e03a8d8934670fd3ce269b6fd12044cb89a416e40fd55b7a06a4e9b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230666da8aaeb2004a76c77ae6d4d75e0fb50103e59100294f8c63626f4f87c198b37b8c4a058f52d36c65528ac3631c5ea023100d17461b3ed9abfd2e34aa81a19ed10df1fa541121a42503c2d156dbc9c8957ad0606c3dccc50d6b0237cd4b2aea910180302047c435bb500673065023100e1dfa40c2692a8990317ddef191ef7153a95de149235c5a65f9514fe04670ed015ff9e67deb97449ba1c5cb53b91760d0230495d8907ab3949f78d59375d738f5d01465b5ff138a3e0e0ca6c8ba20a19ff4bfef7ccbb1f9669253f10491693d486550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009961c517bcf9d15167d7081545bf678a38625be255fd42a7125c9fe8caa39c309ca03a7da807e217772dabf065dfc1dc02305a6af0f5d793444387cf1ddad84fdd7549959715b8951bbfd06e650a45b6f763881134895eaf76c5897827baac6b50dd0302047c435bb500683066023100ae86413683983a5186f6b044e7272ca1dfb068e1ecabbd44ad3370c891dad0f6c3e025160fe635e4ddd950a9681fad28023100cafbab95d08ec5e243e82ce04ec5e00be67a0c366a0f368c089417c631c5f883a1745631340697cc5efb8397c4c8caaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a90d1f7835d072ac0c369f1166a03555ed87d80d7776a18e17ba1de799b23f28011c5bbeab662bd59af9e993a4463f102307b9736c20cd654d82b282cca49bf66217d541f62fde5afd97aa8c823de45c24479e86e1abba653901a0322e21b49579a0302047c435bb500663064023014efe8306c17f3c0dea1157de0a40d0730b8b8fa57c419e3e3cbd521c30b8404045ad6226066cbb8aecaadf414b0a17b0230247fdec0cab48bde62c54f8dd09bf25bcb257d7f03cd093a2f3c788f2ea96f6dc26ffbe6b3eeee19b698b234e85d87170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf414146840e98ab2cdb0b96f2d52f9a19016de5f5be03a5b58673bcdc22bc92a4b7159962aca10a924be2f0b0d801be023016aaf7f1d336499856b2113ce774bebd1910739c9f4b01d56e6e2805044b345ec5e73b96b88159dd3eb2ec19cb3a4dda0302047c435bb50067306502310092374ebb51056916aec02c535aa5ed28f619b6c1e76f00aa23cb0e4218c7c52099cbac02183d26a89625edde115fc3db023071b3aea3ed9dff121bc4d9f6acd1ba814259f865144d33d85331cf6b878beff1b97de07108d32c51dc9cde98817926b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003601faa8169cad8906b0236b1019d87e5b5732125ad05a99fff688ee1cfe1e45f856444f0a8d1ac45aea7339cb27df5023100e1bcbe58ecf923143b599cb10ba69335a922485d7689dad7eb1b041f294ec02481f4fdd4d75affb68384794145cf85c90302047c435bb50067306502302dca2e8c834cc3129bc50ffcba0deea917c3749867204caa3c8a54f96072844de885b8894563096215492e8e0192a6b1023100ccab07dda578b44cba5d38d5ff9140f1e7923300868f2fa42cfb842a90a27f71074facb15ece31f83990465dfe3c30a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303caee31eb7ac880a14ca96bd860163e91375281be3e8e9771047da45b3172600bf46bfdc23a06d119c50fceaef04367b023100fb4fbf6dc0b2d2f9f34297ac2bf41bfd6162c02b7ca645ea19ea4d83038c0323686a5e73681687599ff2b40ffb1336550302047c435bb500673065023017f0536589057cf90f7b6d6c1946023d168924868eb3b315a235fc63378f16f325765084ffa15814872516abe9cff008023100d4a2e83db248492f1139df60fe81934a7979409bb7ee10c79e0103e410ce13f5b0a22c149ab2a71d1615582cefdeac350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100efc7be9175f85e9921d750811ca9f50ef9f12a3b28a7125cb25b95ef7bb9217b8c6f9aacc585114763dd97b83ad347a5023100ee7fa3faf62d4c991fdb32db023c3f4a28712735d9d98d44e804c07d186a0f8bd941532ef24a83fb1707664025bc6be90302047c435bb500683066023100f0b98d7c568927b6339290ac9d5a17e19367e74a063e239d333b06d486c234e043ae7bc4eee846755dec01992a7241d5023100e80f280d7875f3c6a090dc918633ac438ade795f90ef18dadea4daef1eaab3bbc9a31b5cae720b1eaf83beeb1283c6c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8f5fc0caaa78e2e0e6d867730b94c72c07a2b2010cfa16d4e4c336370ab26cae539d55dc190b8751639b5145a4acec802301bbaf693bb996133dacd7629319a67cd7d7b0d789c990e913055d4e044ec6da697f1eb9523accaa90f336210f3add6730302047c435bb50067306502302e17406df5d55f47f8bffc8e1eb914dc320f0f47a9cdf3caf72897063c70d51cb29b828888595abecf962bdda9b1b2d2023100de09fbf1ca95cc01137ae1bdf8b1cb57e8930e273a84ebc44778d52775e8daad6e1763adb9843a217fdcc6fbc1414eda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a4942858a24a71a18305621aabea4ae9402bc8c598a3712c08131df7e6efa55db89b97163fac3e7a6a0fd8e11d1b8b20231009d50e29d39cc3a81a8dec0d3497bc891b131b04eafd2cf7302c829a9166343a74fe7ea61c903d02697e351a878a8f75e0302047c435bb500683066023100d32888ff638422ab067b63ddb6ba8db6fdfd2a99cb75e2863fae26e562b54424dc99fb88de03206d38a49b8f834a92930231009c07090f2240fc4f30e2484f67db1e6752a74af62e8685dbed3215df947428af961a554cd649e2f0fb91cdb8ae48392d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023027faf50fed0d9052f60bda614cb0ac1bac4a2193f61aea708ee53624b5eb1fea6fe04bb945e0823e8a16199b54180d0a023012a79bf9ccd49d986da713c9e277a7726f14645ab2ee6e1ddf0d1114bc4fa95a5aa120c22f701dc6bfd78a4edce900ed0302047c435bb500673065023100e63997bd028670861afab8952b1e647602a6e51296c8402a87f9027fe59db51c4d90bf16011bf07b711eb446cb9494d10230624f2b3dcf7a119ff92af91d3cdaf0787b7a46d87883419c53dc57231f1741b457ac50bb86d66cfa96541728e96252ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230347a9588311a90913d4d56918b13cd9398f4a0b23b5ae9212b172165497f97662abecce4bc37c7d925b9cdbcca165b3e02302f45410d79e661aba6055ebb6ed63f52564956aa14932b3a50b123bb6f9f9f84e9afcaed3f3cc58094f7fe26d6959aa10302047c435bb500683066023100c42f46127196d3deb6884aba79d167fee95449c4babaccee7e0482ba29e802d7768ecd2427ac23b2e3165c72f69055ad023100cb7cd994e19c8ccce23df93b030a89ed79339f0abd79437b028a27f11e97a33b3acea8c09df6fe89ebe6709534e191850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027b976e9a69f677cabe793ed76bfb9e536b1d445ad2774c18902ff88dd5a8edade5ab8ef76e7a6b6aa4e6a47cc0435f4023100d34bdc4a4fc526eff47a1d63a9382eb65d3b8e7928a8bf34fb7dbf69ad2d00fc2ba3b609b656b83a3a79a91d73303e1e0302047c435bb500683066023100c5e6353873f0e1f8eed496b4ef4361866469cae07376c44a44058ef8a38e0b533bcd01cfab898c92228e45c3deeed120023100d3c3f3fd9f92f08daa449681e12ff780e29e92d139703151f3f3ee0dbdba34c2646605b3bed808b6eaeeb6067ed716240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b4417e84bd5d069810643eec8f8b4931604ca9646fdfe81bef50fc9df8b5476661109ec349ea060930b3de3c0aa3f34c02305e291624a5c34795154dcb6b41c5233c8957d6c1e913d564ac39e3edbcebb01e900c874639d3136694ab502f53ff93b10302047c435bb500673065023036ec09851a74944b620cad63234c316f9a041e2c7deca4094e7a8e3b7d9c376c631b74a8176884c996a311aa23af11cc023100da051a133cc72e393b935e96e4f6a2aecffaa70bd7d7c6ce2d706bb2ac150c2cd2d1b5cf460062934ba80ec3fdb5b8e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230366fd86b0e3ac92aefbd0c9d8ad9225c681d81951cd2cb1286567148ed74ed599184e43985c824af02c165d806b4d1b5023007f57c07f3fc218528ccf67c550372de64188114161a22e3ce801902ae843936fd243b0104e36e181291a8f4da5f83550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303768169a55ea97041d6e938993c078fa936d4f85e15a4074172399c287faa0fdcd1a01efd5020ca0cdcf9800d5f7a0cc02303d03b74c0e8fe9066a879c80b836362b7c1394d576a580e292a82e848677f020ec215a4d490599fe577af1cf57d008450302047c435bb5006730650231008502a656461c201e4b933d7c2b8885c9fd55d6e7e0fbff36fcf573292aea2c7c601adf0b983e3ef0e4259268c4310fe5023058402b353f92a0dd0907bd03beb6cd659b9b450609b6325e416f0ef801cc617d22890a0d3034c964582d90c07deb59180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a4c5b54b8be8f52bb55f87a8e1cf0527c2d7e6e825f94442258c190eb9f3f8107e21d5a46b8702006ed679e0e2c622f02310096fe7b9a47e5ef07294a36ad4ee2f0858e466be93c2d3a79867d2a09b442c516ae817e31c8819b259dc3f7359bfe5ce70302047c435bb5006630640230114e48c7fdf4c36a76d5d48bda4193c784d2aae8c183d4765b3b7a108f180e74a6688515ad7b962a1c537cf9ae022d2002305e4dab5d3272f5c799bae629dc6c811c754ca01759a6c2ac93b6d8a67b437d7c36cef460a6bd3e5055ab1b3eebfd2f5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230252e926e21d90fe0c4efdc88d2d4c00c17f5f8dda8da86308a85a5e8b07d8e44f121c379c49b6d68072e6fc574799d870231008e41eb7f15320014eaa2b5920b000678076b8fb982b162b3d633bf2e6ddeec57b46d3b995c4780acbf9d63f72679d3040302047c435bb5006730650231009cca3ca33645c27e4fb80e767228c0bf3379a0d24f86dc92418db4634f623313dfe767e50144358b74eda21db1c6af2902305856f28234354900403386d4be2a18c75574bd7816f19e35e0e894ae42f0a0af597cae7f3f5625eb9563be4a69bc6efb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea17299890f768f9e79317f18438dbf71149751271c8f4c2a40f81aea692e95ffcff8417e7459095da084019699fb46002306349d34271cd5ed9c8ae7edef4eb1adcb89b7b404fb9debb822a5ec354f8da99768e70dd9dd89af74b9ae55274fdeba80302047c435bb50067306502302044133794f4a7c5608e1b05fc50c7ec0efdddc1c13becc439b0e2fa41b3909091a6c3b4fd4de0290c91e6cb2da9c9ba023100db12baf7c49447c7786a59ae951e34cc0f909c74700b280bc1daaea0d1c0dd922770b962c9a5099f32f8501f9f4d8bdf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd917350fbd213ff9fa30ccb0c8e170ada95d304390e8fbf291a08763cf56546534c80fa1b6218aac5fdbfe3e105e7ea023038bd6a8bddcb081a744132463275bbe13eaaef9585a4c45de3029a9665d28cda7c0b1cf60b8837ca8d743388cacd3aa10302047c435bb500673065023100be7c2d60ad3a0aea94b49a3752356e2d7319e22904db040298cb0bd5e56d1066d5aa621db5c9cb7072bb87fb5f81ee1302302f527231eb264a8f796f0cf257c872307f389b9c285b6cbcd67093d263bbd0b7ed70a7f172da3826230b4671e148c0ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d9f573d3baf09f0a1847eca816ff6a6a7a09f598c2b076f15844fbf5672fdc3733ea09dddfc15821e42d4e02b3d38320230048ff693cd6ed157c1b5546a1f95e7e713ca65e972c4c5bddddb5e894394b5fbd437820321b66faba44a957beae52ca00302047c435bb50068306602310083cfa7dcdca15df9e4143c0d3a79c710318d241136ed089edd4c7584db54f90f2cc213beb1e7829594fa9257e5ae6fb6023100b7dd7ddeebc434cfaaa7dbc9db7a8fdaa76bdc34c0ba2ca60e6d5e39de20b1eb16124ed397deadf0b131ad9795808c270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f5e242dd81bc77ea571fa94d4a2db0ee1954b8276eec3f83869eaa0818ffc8023312916aaf2ed8012a1d4bb6330a9880230558e86e8653c852b5ddc636314dbb18724b67d1e27abb5ed68922c26f3f698d618d0fbb75e6d787dff6d2acbda48a53e0302047c435bb5006730650231009525eee2d89cafb1c5912103a32c0b6056d43fea2ce9c7b341daa7f19e14a2918adb1f6319925773ef83fda5a36a1b6e023055034921931f9bfc9fa1b43b5565f9d2fc765775ab5ab76f4d5c2d25cb838a20ce94ec39ab7fe6cd89a6bca24322798c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ee07934da75ee47b479858275558c4e9987cb4c61fc5a125343d4c0509236a75d2735d9a55e09695943a7bb275252a2023100a45f507e3001b6798be8c807f4407c564a7fcefe84323731c541eedb462950742b499347f80780390842d8a0366c339a0302047c435bb500683066023100f9997f0936a2ef300eed1957d270c2989fd0914b19946b23a931609ffb146c17cb2bca06a1b8c8b9e5b9ac81b57353ce023100e893b623c5ce5fe7a009de9b71489d5fb7248bb5fbce09ec9ec90d409950227aa802c390c0e460aaf00ba20975a8efdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b88377dcf9e782dbf89989dc3fbefc2067e0094e3a3dd2ef561d23e75f591d98220dd917c14f369b6b56a9c08fedcb0d023100f77d82b7c231780a3ef0e7c252c3192ea74b114a2793c763ffa0ca2dbb23106c74ce29a26f4f4c9406ff3054aae343fe0302047c435bb500683066023100d45f84614835c8715cf1d28e07e2b5e55ad7028818449a1cca30dc7a38de387576c2cd3b8431ec1aaca07860d26c99060231009fafe2c070d05eb9db9c3c826c1a799cc8ba74cbfb0dd21e643b77e577d5372e8abb55593227fe94f3531882fc54ab530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303331b2a82331b29915060eb5914bcc2011289645986cc522452ef9d10b7d2ff8f46de56481d5e27e7c3513be9e3055ac023100db328a815bcee965676f055552f5c677767ad098ceb10ddb74158dfa6a513dd2115c3ca628b31829a4451fdbf5d576e70302047c435bb500673065023100a805183f4a12b07656cf6298286e9e6aceea543ba5f604bd899f88e8b546e485d26ea95f3cf930d78036b314965f0db80230533083d0e2708a81ab2ce0d6edef5aeeb147ee28bb745adb3264ad57422c89fddb49e8c474e15206483f658cc5a81d810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e92ca4d8ae0bf06407718cbe330046ffa0412a7a647fb16bc836cf22f73904c4e2abf7e3ce150d5edeb4259dd9c40528023100869713c6a71cae9c629c895406f9e6fce518f1a992227af962b5ed7fbdc809b4051e049605ef1ae3da21246e1c5634f60302047c435bb5006830660231009a153e0c4ad5796857e792afdf181a93f69fd684944ab0a312d29f638f135d88ac958d78acce723de513c7f4f84adb44023100b26fbf40ddf6443493a085eed48416a408c162bafe50b314a263b687af5e3a4ff9cb6b7a98e78a1d542eed56c70e47c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300977a816da0d8897f96efb83c05843eeebf664604fcee0af631114bba0fa124eb9f50768be2b10bf01b696b105f10ff5023100c8865171bbcebbf5493cba3361c0456d48d2576b13d86239e8149607e418500ede1f3a230be45105a07fbe28454112d30302047c435bb500683066023100e274dc80d7d99bb0e9eeb7e19b202d7fa8b2073975335f5e6d2d8cf1a8f73ec243ab5fa2d4da259ea311573a914b807c0231008dac0bc2547884687f1b13d6d467afe08b9d7959afa9b3fb4baccb01a5d1712ada88bd24b6d2230f49e6f612553a18d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a681570cab079d03132e75e662f1446e7916999eadf562022fe26cd4c9838ba8dd066579c39acc4958c4accb615704e802302a0d3d963d1af037fadabfe4f1bbb65caa39b7e4a9dd348d25ee23776d63bbeeb76a0e6121f4410f60d04fff54f023650302047c435bb50067306502306bbeb75d4065ec056d0f462af36cdd3b59ebc4778d4aef010355c9750e206fef7badacfc87c2247c533f6e08b2c3de99023100b244e4dfea422a0e65b5a281fe819bc23a6b1c9597495d89b8fa9c62377632e1cbe1b3ba37f395cde815011e17a942d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d435863d93716db2463956b6ca2531784bb5df12a8a5a0ab0f886de58b89fa5813c12c63ca781bffc1dcf4057f3425d4023100d88243e6cd7821c9787faaed6384f2bc1864c586ca0f659b168bcddf7bec1ddaf03232c5e1a5c11061820acb697207920302047c435bb50066306402304eedb145305d9f6d2e9c73dd0dd7474b728f79d21483c059a78de1e0abd8f2398723e57884784ee5d1f3e73b7c776f37023028fab8b65569918ec188a1f3a49054edadffee4bc59ec1eea50dc3c8e90e30ac1d886d4704985f7f5b306af5b5646d910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f62d4e10997ec85793b34a01f75d2637b7f80a5902db925184e9311a4dadecec5c9e360cb717aec63b4c9c6b48569a2f023046416b140d763f96bc4c7f429a6d8e3dd4de21245b99aa5228a304919f059940fe0c6005c3072f8bcf5320c5623d73130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013141289e799e965e65d4f319086865fcbfdedc119d0a28ad51d3d33772bcd4281bb74be9bb406b781d73c9e8a2a4476023100eba8adbd3b1565296099ef17ec17797ac89b22d006f7718a5062765871d6da1bbc5734867561ac25038c0d99d9049fb80302047c435bb500673065023100e9f3c47865d42543bf5033a35fae6016297a394d33ff615d74e8e9a9812ad5b9fe6049aae51af0c22e55e7255db8f03602302f27fa928ab5b4c5808e9e7137fa0760eaedcd1397961e3839e64af2c3474536a5de4fe734e8b342331987bbf757419c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305744b5bd83eca33ae7cbddc8a4e9d4891e1073c785bc0b8f3bad73cb925a0609f4aa049db64b7bd7396b6ad945baadb402310087c352c0e737c2f145391cb5517e02cc7251fcdd250f81814d3c903dd4e35665bb37c79b7ca9141db5688f3c4b8e74720302047c435bb500673065023100da37e280190043683ba45ded9f5dc4a070bda91fc7459d401c657a9d936da8bc967aed7466287400450b3b37402c1272023075a5b7f05e691b0d4afbdea199fe535aff88d9b98696f77b6afd5419b921b4d9ce3a72bd293c7c828943e2ac64bce1a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d0729cdd88608b70b551272326dffa31fe1ac1d09f55ebd8bdf7dfd55028a2140de57a9d25fc08a797e79f1e870b8f8023032aedc37a734ab00deb6f2cd50a709acd2831d4c3e20851d46dd920e31d47d8b0a729cfba3621cb89ed15b27423b053f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb154570b62da1dc754f546143054a5169412c7503be01130afd1215f2bf85595e98a5482a167c27f935c100150e5d99023100c370e69742f6b2b25decc39123d23c8dfec08224f414290776e28cae35c7fbc85110f2e0d1db0aa582b3e41be759f3f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fef74dd3e18909273747d806c6e8e29dda428eda9b7b9df3e57fdc771362e695ecc13855fd7edf50f0ef882da5a2b4f102306db903833d4b16945a8ade3e9da4e3f9278a40e07e427f4f9e5e24a4fe38d2962155d8fb96e73903bfa49b06ba21a9010302047c435bb50066306402300210be64667961a9b2593814e0a05b0f26a017f865cc42f0d09dac92392863c6bd2a2e9bef7295274d8c35851553d5ff02306d54bddc6e70266c4bb3ba1e7bfd0b3b5c340fbc9a901effa12edec84521fb838607f64874a976f3ffc9e84e2e61667a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307902bae2011e2bf0e1de5a2a50b5a6467fba8a0ab138f3d32def6c86cddac2dcd5a9c9f32ce7236f8e1c4d75e9a3d56e023100d71502149e835ca6b0006d5a8a870ae459174fa4a111d47639d9c3af4e39ae52c9ccf482a7e7292f2f74865a71e34cd00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f5bdefef7bf0156aeb9d86fdc7d32c8d6586bd117a605960c70e9e3a52f5eaca59d33b865b11ba7186b7a2b0b55e0b2023018d7d37e2039e268dbf6801bd433fba0452313dc36f369139988908eb65019430f0e1cfdf8e030da81fe126fd95f97df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ea1ad97c920be3bd885f6bd57fc5e248a014accea42a5e883ddc4f0aacf7ea6cb747edb803db6a0dc30d2644e39b7567023100b6659fcd5762be90111db3c992d140893232149f659a39e0510665854d93d7194e049983404562fdc0934ab49b1d58100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023051a405008e03e2255c0b7aff54afce264831c3ead56ddd562b884df76b5ed61970c10347d9c9aea0a7bcb5f7f69742b20231008e2b9ed7c170a4504a186230fc088e1e3df751d387c6349d834f5c7983f719ddaa5366819e5fb2b90e0334569a2183210302047c435bb500683066023100c87c6acbdafc7b7bbcc2af38604129168d133c99daae933591e437744c43f4858fb9533b37cf5a83c0950761b99c0323023100d6e43212f5699f37ded21c549730d240d3b314da8f1bf41da58474ec1616520d486e03bed9f73273d1da74087a8a68910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d19100c88ed396eec461474bbdb1bf474b9ef6c3010014961d6303d35fb178ee90afb94625ce2289152bc618a78f2cd602304e550d04803a42cae6b60e339e66c2071ea6aefcbc05009502003a7164994ae00c576ad0b99d5762a21ddbc40db43a110302047c435bb50066306402303f92484e5ba1660d4f512542e8481a103155e11f7586e2b826a1e54d304987c8b41f4890eaaa2ce2846e93dca0cee3120230725323fcb861bb8ce7e8675d60f5629c3a38a11a229340aa9e077dc14229dd2154289f51773348b4ca8d8f558b4e5f630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1c7df56e8937ae114c54fb7beeee80aaaf8d390e0eee6c64715cbfc13292923cb46ec7cc091bcfaf60bdf7835e0835802304a2d2d2fb0fd00fb51ea7e55ad39dff6468de2d9b17f94ff8ddccf54781c86226b23efe5c4731cc7e40260ba96bad8970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c2d1d00d90e2962e6499ce65ecc7f7ce311a9461073cc88b3aaa9427156717eb964e5a7a37cf78d8aa2d8404fad533c02304eb0cf5f49505929a6ebdfb10344fa62469bf1f1070962e2eda7cf925ff7946f1f1367ceeae37209bc6c92ebde6e0f2f0302047c435bb50066306402306980cfbd780fd9ac8787b5d0da078551836c8d37ed495f757c9786c3d194f46f1f3cc83785289d826933cd5471406ef902307812d3e20ce2ce472ef447a3e1830c597b3f080841ee61f9ae69903dadd332be1837be66db171bb4616d0f8afbaf9d2e0302047c435bb500663064023005b95f589cbea3ae2ce4441320a1b013d393e0072f558ac92cb534ed2d86c4330a3714a6d8ba61fc48d5f7a2dd049d2002302566240604f6c3f0aaf946117793bb4ec74182cda1ac7e3d0ee2f2d885ede489d47e9322f50011935c085ec52f12fea00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040c4ade0359d35b1ad24f1d2b053eb63d073716c6f01b703f9c34cdf27de6c5b3c80eb7a905b3d01a8569d07052dcdd6023100f7b3f33bafb9807b11df1d526c8050ebaa6993bc555d45ee7a9d63a242d6cd1e440603d61f30ffa812eb172615f4d9eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009728a7f3c5744b128cdb4499104fbbc980420a7e44081ba3f7841d596c01a240f7f1df6380561ea8a62f097f801507d402306851feb46edb5a5335d4e0aa2ed7b02bb573b33c11ddb324c273bf1728df630f25446d71cd5c1356f1951e92be6708e00302047c435bb500673065023100fe938ff52814b2bb1dfd963e0a00a755155407d6be53a28795beeab47b61d1c0373f0977f6bb5e86ceb965b4ec0be9370230338dbde7f239964d2d3303d52b1097c554056efbffe4c389d0547176ba30b08546fcd8fdd26d797076653738977011390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f92e54e67339cf74319cf21e8dee0e0d9e2a0f8b6d92240839e8ca47581ca28d90d652a8a10416bca06d72ff52089664023100ae75f5c2831682f409543a4b0a56f58819d88028776455083bb3ed0d2c67200eebc5bf5d9cf2b008056fee810fca10fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e5e7e22c0a095153ab67f5e2b8bfef8a7095b2c95f94d3c988cdc81eb44f88924ce246425da44c50d50d6b6bf5fcb4d8023073853041e8896a0a640a227a9ad3d5e475881d5a02ccea18f58dcd78ea32ad20e624d1ac2d4bdc21a9e086cb6d2493010302047c435bb5006830660231008cd81586afc7758eb6e23e0564ad422cb2bd63976ba2d6fd3a1ea4dc941e3f5ec5693127a25c56fd15aaa60fa27505c3023100dfd1b577babfcd9198088ba7244f0c2ff713af84c66b0027a7aff59c16c23fd8537cfd6fe8600046e9a300651e2517a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c7c76bb6d348472a66940eed98dfed3de8907df49643d4a2b9bc332467e28a0d71ee1146e9d358a69960f59a00c6de802310087a5abfb2c894a86496eb717b4615e0a48a82e766b52a7bd596f3e44858f35c430680dab59a883bf10bcb3992a9dd1660302047c435bb500683066023100d6035dd89fc0a2825e22a9575c4f4728bb749b21acee0861edc98cfe1943868a4a985889d3bd5cd65dc49f74979649a1023100e014f1fbf3892b565ff7553f80e8014d8d642799e11daaab6ccf9e1618d4bb4043a9cd432852c9c193b3dd7780257c970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022c80d398dcd3fd2da8a95a608cd9b216a7494778de4af725b35c4722054416c18d473cb2476144ce687bb6ad61be8630230302036ae496c6da220e4658d97cb127a9ba73a95b7e8932b53bf8ae3db08f1221567a5b041381da7bdf92f5ac0d8abce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd4c68d93f90beb336ffb0a32159bb34fb2721405da1ca2bb056e342965566e30d1d6766dda88a05b3954202a1714fef023100d4306c4c199ccdaeb45fb6b66a7732152bf07a7389efede5c0bacc846e70bdc057a3645672a5bde786468ed0b749d8670302047c435bb5006630640230655bc039e8a25ea68c82b0cd0d712ceb0e00733d2b31910be28c91bf839d2d8c1ded2cb1f6e5fb65776164a95e73d36102305d110a2236d41464367045e885b8c3a550988e46cbc9f1d0e5bc957098a0391f791589011f69332737f50f279a5edc490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ba785d42682dc35d07770449dae303a3344c02e8394175e88f3790b998411272b7e4535f6bc8467acd8d52857846bec0231008d8fa047cfab9f98fc39e1c81510d2be3db8ab1f0d2fc08ba09570492a9c9b8896545059264623714874b1be81cd6df50302047c435bb50066306402304c1d34d0a45daa4cabcd6c2e469aac659c05b707e71d17b1492ffd382557d66bbeb3caeeeed70f221922dd96998794b2023064dd0c05c4b0fdce047cce876b6dc490e47ccb89d670058308344230f4f3b319ede9fd7524728ac8489692000e19e7cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023061d14d16c0cc30a071e0cf80b703d5c9d8a9d419d9046deddc0444aae162fb12fae5ab88c7af8f79d7c74362b9e5563a023100b39c89f5bded465753286d76554c3ba48d85d0b5784bf24e6b54d696314ecb7240a89ca6fb9170daa9931b86af43566f0302047c435bb50066306402303c5afa8172277f2a0e4a7e5412d98dc78d8a5a8d633e6c77b809f88fb55acd268fc2175827d9cf646ebf1ba77a5b894702304c950fb957fa18edffc6f85213ad777ddf1aba52ea4295952e3be4fba8098b8b9e2a29fb4b693d493c93c2921ece99540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aebf485b98e65b12761be69d5e946ba5dc5d46d815146b81616e0280ed1a3831cf3cba52e02afdb84e67a807b3b9ba89023100c245252e5aaf0c12664a71063b319a32385363a6bfb9fc11d6867c1f433ccc172f582cecfb20cefd90ed3d361bbffc650302047c435bb500673065023060ce4ec4dd8f6f923e11b0192695768e457bb2dffe43d459026e7afec4d04c4659d38f67c3491294f7021f6c9dad5763023100f673007a6afe17c382396b0a34598af9978e5db198b450e1647527e3d3c3c04029f764564fa40fcc1c753f8748e231e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023008d6d152a19f4335236d0b4ee3bc93ba4a9dd581f8840644f2cd0a14cb89260965dce2f500736d2967a53b353ca8211802310085a90969585fdc26d7cde1250c32f4479302aeb7ce5e893fe90868de8cc096c3f523b7749e634ea1784c4104a1d89c180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e2bd49d9a1952e249b4ec9211a12c128c4dd568ff1a98b4fe0f35c094b91d4153190ebbfe45ee5e0a5692e1097f07c4d023100edad93066ac439d59f15970cc6944bcf3846785d3c7acb8a4cfd06050ece512397b99fd2c84089514674cf735e39d46c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cbb3cc39e3652f481d9454a917af1854c3605ab45f087e67b8ccd539493821db53ea1e29dfa5ce3467ea49f83def99db02301902c04c0c8fe4516b189dd27a6b58df71889f7af83fb0545eb5084954bb36b0f3fc720ea981551b4d6c32567d2ea74e0302047c435bb500663064023004d3cd34d1f4a7f8a27493d412c7a159344a905f50ca87286c2dcb598b9f3f72ef7282bc0d979b173f3f066a839049af023016a8e208f84253cf7751c30436f1d2236858b2669f82cb39e8de058068fe95fd5bfe2b1d3901e8fe10a04975eb899aa00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302783527f35ff62a313c46222ef008594d2f14f6015d0d9f5dc1c2ffba9c20097cb1a955bfc0399bd6f1e0fc69db71b0f023100d5a276a6c4719ffdd7550bbf67155cbaee1eb08b67967b2ed6923e4f04672edae9ca46a1b305e27f1cef6ab60467946d0302047c435bb50066306402304088b597cde50c434a45c9b9d58e9bb46e585a2bfaf4707bf1e39c90219502640030ebaa989eb44e28affdffd65741fa0230694d57b268252aa678fb38e14d3051980a54e8b4e0a86a4bc861c0e42dd2a03e77c57b4e684ed93e14418a65a994adf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2fbe25dba5d3ee9a42a38d616a6af78060014ca27ef78ed98c490fbc8a9d461700f0abb6a00d522d413b60d82de1e57023100c9a11536a87074dfae59e303048e793c69506465f30c6b00cbe8ec3755d21c87236d537dea9d521be2cf52ee34b314e60302047c435bb5006730650231009c4e95bd04727aad1fd89ebd8ae238ac98114317ea79d99d9364212269758dae657c809ea798c663df0b1459d255d71a0230151758e280e34f26d2eb9840218e41eb8381df4369dfa3660cd4210bf1858d6581e4fbda2ae7c5cac8682b1a1f0b6e360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012416046b0b3d29312432bf3f7111953c485e8ec07ec3f68ff93488f255b1a686297c4c86f3326ff0373590cba66f883023100fc65d1a28149f3392c7b0b08796e15a405f66098b7a93522d7a67f69ae59d968234e673c80f54d4bcdfc6da5c4ec52040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012676b5e05e88d3637cdba43f6a9cd5be5c4b27544d6768551ca7256632aa5dfc0a44dadc75a727cc6f1089368fa04aa023100ebcb97d075c348fed558496cd213cff4ee1ba5d3bfd3888963102a9bf9b27c8c21575f3cda3f864096de8c4111c71fea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8952112087dac6aca57c8ea34a7ae2946c807d3e4aaacb26cffd1354d98a025bab9c73364fafcb4fce9cfa516486b10023100db63c3c113d19e2a53732cd0d421b0b7d0a4178c7f04c30073b5a74c071bb8edb0b86e26c4a7aafbaaa11a3e03ded9a30302047c435bb50066306402304f2edae9ac9cd0cd725fa401a586a24dc2cd6d28b30ad774bdea3897889ecf163e8b62c46b800bd8b74b24f349a0d8d002306e917019c15dd1247beac6e282d98cc3e24f8c31757834c93df26411ff9f5a293f236c32bab1a8be8cef127153a13e200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008d4515843390719ce7c41d12791d3c0b8f58f116964554a5efa0aa938c9e9e823b14bf1bad348fb48b9c05675bdcaa460230681171bf2c6c355a842906c4f26c558e64389868e7eb62f57e07812fd340255ebd66efe99c73c167d643bf213bfe75090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ce34180c4449353665e4491ce07cc77ec7e25a6ffb07a2f5834589c2cc472573e8eba22757a93b5ace8164abb362f13023100f7b72f4854ec61ad082ebb0009ce8b7ea21694a75c565c8f9e1c1fea855d158c769d0594d0ee432c325f9a2819c19a180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f624f4c8a64475e88d97d7878a14d78397da623e09a8f7a62a3b0e99a9168facb2aa5e9f0df27d3744ba779e016e79e023071a2dd7301b102b940f48a932363c398f28ce577bef5bc953b0cb35effb741e631d08721bf99a0deef609c9ae48838040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056f2ea73e25f05f14227a6bd2b9bd54c233af422e07450f68a6b0acf90fcb14b35182e412da73ec01328be1a567ba83d0231008ebb7c1aef2eb24eaa945ec811d261a2fddf2730a1c81f07d4573121ab768fd24751e8881b51f5b4d9c93147484d31a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301813fc7271362403a5845597bde7f57e0b9df8c6c8cc113895dae53d4260141ce4fc2ee4fd1a9924b89b4799c9ea833e0230442b9237834edddf30626cb869ad97444d5c74cdbe3c5a846637934c571f32bb4b2ba522c96f5fc4e59113162fca6a2d0302047c435bb500663064023027302c853e97680c6034f6367c2da0b3dc10f4a092d35c69e04792978259de6d9439b88056eedc64c0329636122c8639023051415ed22de0ab27c98cbf513185abfac27998d5ce66cae67d7c3ce69af4bde7af3c063ffd69ccb43ad4368a75f6ce8d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023040f6bd550eb9fbd270516e77ea3f74761d706f0f9402f9eacbf60c36d8b65b55d65fae0299d007b337fadd89abb22d1c02301691c1c8811fe08b51ac34adb178f9cc8586363d5075038ff46799df1ecc9f043885fde5dd52bccb3830023a9c09a2070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b3303fa189154d65bb3ed3b455a80b56b4af72e9201e29e4697ac791ccef459fe72785f1034ec1456fa138ed51f2118202303172e40a9ae702f5418f70e04f547abd1ed366cdb9933e86adb39e1afb72853b0847c5ba6bb339282ea9df452e3651ee0302047c435bb500663064023058bf2343d3c04eb7b6b6b329ef9a1218a8ca8fae0303ff6b1bcc0f0168ebb70bf5ae15ad82e9f7d423f45b281d70037f02304c47c28e0fc5991620a30d213c66547a116e1fdc31453f115903c03df6acead1a14be1af47d41ab89af1cc24e70e024b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307afdb6beea1a2da33bd02e88e1ef1e32ab5d473b5d890e7abd33a3a19af49d706d91ead3a12590de19001e05145f170d023100da2048c0164c0243db66dfa9d6c947b32aef0ed62581bbfc1ec70e59cde2099f8659eac96ba9e16dc98a1a5bc1fe8edf0302047c435bb50066306402304bd1738034f43bdb7666214ad2526a41e092d2fe00f6330e3bd5f23c81934cab752e7883eb26b02637f325796603573e0230374145b6c003b247e5c89c4837f4b86c2298cc71f1af227e1fcb49342e71688dff9fbc4bb66ee071bb1bf438dda1eb5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230349d0fe0bf329ef20405a4f6e9f2cb02d0e8724f67fa7911489cd209b83e288b21df512387b4558b97aa5bb1ecf03751023100b9022e77333ead3faf1d3cfa7fb8e5be913c3ec087e4345fde5423e2631fb79fb3f67e77c9af67aa221afdaaebd575dc0302047c435bb500673065023100ec20e3a3c6914892877766d2c66cc376f16f29a057ac94f01ab979834e194be771be6488b834ff5b6ef5748902f8c974023060d1dc45784b0cb070269a86afaa576599f6721a78be9fdecd6aa44b2cd535acc046343ebc51ee85428cf5597647af050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dbbda3b88b13e674e0f4b23ab1904450eea79f3440337dff37d5faff960bff753b10875fa4469e15ea3af67d2dd5752f023100b81478bf0bae60d63bc52cee9878d864897e43e2006606df0601c2fe98b3c8ae5509cc524fccfb442ae9752db443d0be0302047c435bb500683066023100cdad574dbbbd63522fc6abc2429a3b29eb674878eb462f253601c1b11e3e3354cfceddc03d3e053ea2764d294201ea74023100bbcb22a1dd44de5b2c1257cfe1ec507548d5cd006322b5fc984c1fd240a32658c86a3e9f0e3356f79a695fbe334e9ca20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301943c2476bbd67b795cc856017d8dc06f00d919d69b8aca251b1e89bb786148df56e009782a6fc609391f016ab115877023004c9837d58fcb3acd2d08dbd103792d7028b1863345eb3625bed5089983b6856c5c2bd4d5bb689a831e5be7c808eaa490302047c435bb500683066023100a105afe16a06ab9cf21cd3a26a27c663f45fc68cd94860471dd9841782d2599a2b54732facc7499a100641a3fef40228023100b3952a4de69b1766167b6d4a8c159460c397427a6a99f4809045d8ea5f552999203257fb8831368d5de2648f893559ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf74b830e18f79c3c23d076175513d14b461bbc527c4207bc91748a762b74fe6c00cb8e91d63026a5370efa8b1e7f8f1023073afad7c870329024a8ee596e3bc77101ad384b61aeaccf67bc250bfad7fc95dffb0af29636e867f92438f251ae115c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230589a06fbb6a629b134757d43285a54c9d67c92f99d7debc18d591e11d06292ff878abccc1b1f1beae354edce21787a7e023100a4a646899a3128edd5b783d0f1007ed9cfe69df75ad3f6662ea8d21aae884b76b1403f16fdf62e5e64a922e31a3fd3440302047c435bb5006630640230042c73f2a83e26f57e764e342323831f5c42d65a7b1c4b27691075ba6d7d42334b375bbfecb8e055fad62708856a420602307552b61529155adae069f9d7eb65cf70b1ecb207e975c8067cc12664050bec6b65ba08d2eab1381ef38475a905408d7f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071f0fa6a19861dc57778d99167c68beea040fdf620f07ccedeaddef3ee62ffd9589b457759c3333030a9800a50634624023100d23e3ff3ff1ed7877ed40055eb28a66d50ca1db03dd77e57922871a4ffed025f18d298383483ad7f780b86aa822759a30302047c435bb500673065023100f04b4ae37a7c8d56e58c8ce50e7a4a85f40bd696727ba8aaccdf8eb549d8511b0588ee2db1538c91ad52825224e28c4602300af9145d42eb8cb0b555a91e054ed55387bc03e19407ab99f98729ccb86cf224f410e4e3010faccfdb0604c3bbef424a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ef23ca8ad8b8064c6a8f1d37ea5a74909a9f070fe39fc264bbdc02995fc0a8d31f59e8ae8e2c87dd9f77f9ec2aa01f84023100ca4b46a3e3fc9e29cda804d366c3972a099ff398bffc485c7dd9436cac00c93bb7e6d470bbc82b255bb18bcdf177a5c60302047c435bb5006730650230768e03fba240ff6fe639993203656b355d785633186d14a55dcf7299cf5e8b6eeef195542a9ae7c5bb7736bcade7e446023100f3df7d06e3f9c0ddae05409b06f381dfded6b16b884cff6a8c270029296280832328f4eecab8a3a24488c08df82a5c4e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f8010308c8ccbf60ea2e08148f46551051ab959fc51309b84871aa12d0b0eda0e17d3954e93abd5f2f2c4bc6d2375300230684ba1c0253be230dc73dcd2aaa2dd8b09121d2bbdeed6766d10dde2ef048706864d8626aeb896515a528fb4bc7909a60302047c435bb500673065023100ba1f68020ea2b5c74160411c900631d9d061ef5d53ffd925604dbeb58f1e76f18bbe9f39d94da7229ad406c11b40d18102305c338c60c48755e7c5938e8087ef07f4e575c893f9c961c2d0e9cf2c88057f7f8fc4714ee0556a5ab51a6dbb1c0988800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027ffc5b7783270b54abfc47e74ec364e64d88472e0649f61630483a1b31dec2996ac65a46bf3ceef12e919369850f5fd023100c5a1e618fc7519f4f210271509b6e36395daa0c7819ef9360bde63cb74782bd7728ea07947d73f3b21fd3d3aa75f8f690302047c435bb5006730650230385aa5ed2577b14c787dbeeb700895c124bdcdf38cfd84cfc9f38dd01f3d23a40ebca64ec4baf41d6471be83e0b491d3023100ae76f8bf0308afd1fd24f561e036471386421ff8804ee8f74529b937f9215d8f750f20602b9a4c79dd0cde7346caf6a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e510b285946cd287f04a358446fd37ad7e5b696802ba4ed7bb8bb6a28fc05e3b9dd956763c7387a571f8ffd14585f042023100f2aaf8d2d21918c78617908f6ef12a3bb34d653ab2467a147dd49532880c443a91ec3ece3cce95971c8c95e9bfe4c6d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d48556d9a0c5e16d2b25ce543f3f36bc0a043509034e3c52eb51b8915ebf7606ce09ea5c981539d19855273a2d55fc9023066f829033c4d7a8f893375cb0ee27eb23281685c5bb801ccb497b71f631672f7d585f2a30d07f7081ca023190978d1780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023060f08c5646bf463c4df15e56ed69392e12fa1ee52266d366e11feb68e0bf7b008e45f83fe4e6becf05a18b4d27a384fd023100e33fcb65ecd10ecb35c837a87874efdeccf350fabf5b6893557158f25a4deb27e340adc43c39fbd7de6f7be055d7f9450302047c435bb500683066023100da11dd0fcb4f795e425b10a92d9c407a6498a34feb0d359393b37f42b6201a78870dc09f89713d0d80519cef762832ae0231008bdb8a7e3e6b7bf48daed47d70ef4a5088040888b0c357618b01c0515c5b05b6bf75b1b7ef98b2b2ccf4627eee25d4170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023043e1cad00bf4e359a0bac35a79b2321c0302d781181388f12d26522beed443738aae0b43e068d90125e375b2fb37161e02305b3f30c10b82df2eb65b96f989d7472ae6f1cf17a43908df3ce2c88eda39d1dc01a403accda2db9345fb9e9a3852ef290302047c435bb500673065023071ab62a55499bc1f604e46856cf7d233cb5ca607085be8d3715cd8d9851ba9a9f690c30cf6e546f5d1fcf72cbf3067d6023100c0b80612894f66b684c42c1b9e4f325eefe2e95db7d3319db3525409a987dbe616769acc7a10f78df3ca23512806b7f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b90b10162aac720f0bbb3cc1ec1b6b6ed6ea7978fc04ba6eb4d2e997c24268d7b1698d3d10b24313e58694d0c17a34fc023100998223d0fcc3fceac4ce88acb9fd757e7201290e500e3995b1c458b149a117db7b13aa3da08cd839e2c912a96bf8b4f30302047c435bb500673065023020977f0521d38513ae3c84a632306dddfc7db6a969aa141c599f4349f2d943964bcb72bd0fd7f74ca49464ef92cf82ad023100f3309ca57b852bcc3ff41ee429df77701f187249ff609a5dc3e09e51065b9f8a334da0f8e551f79b3cf78ca31615c7850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305272972623edb40a80082a9dbc3a50b289f2ff450822865bbede584a55d111dfd856bea28f1c1121707876d389586bb7023100d4eb67f0b8f5457829891c26fc47c9432feed4c6e788ec2a9d7b1f531034d5d4534411671c2528cdd712500452207ff50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac3425374cc5769d27e024c2049a286b992bfb11d3701f57e83737f12403742fe0af72d0182f17a9e2b48a2daef1a9da023100d48b681013f3829f860755f9fe47373329433c1a58319757099916e1278bf3afdc0106e833c23468e36c67d7d9e5e7740302047c435bb50066306402305aa2e1b6551ab074f0fd0cc7554e0cc4ac2b30f1c52ce2cab8a4fe71363ce602289fce3b969a9aa159a53f7a0aa82c280230486a15aa81b22566ddc1408ace8049dcfb923d136f28a0fff4dd0a9e813d8091932758d33b8b9d73b8ca8a631bf0f3a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d41b3b8152867a445ced6172035b1c5f18ff30ccd0671b41f2afe2c3f717cf89297e4d7ae5276358f4465146c42e82a402306492a78ba978ac3dd205ead5af6a17fb38f394a4e93b51bd05f0fa5f63a359a53dd9c3562f9de5793d6e049b1db1dddd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dea5a5ea48c488fa8423e7bf101b492434808ead8a154b1a2b3704d55e0c2cc921aedd5fb167da9a3e79fda90efeb1f023013bc348a92c46fd0c2bfdf901dafab9b8cf3e44f502717c45e92cb4cacc17b7366804e1a8865799f2145695a663af9220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a89fe76ba23e7a72bdfa9920b42d554a9652aafeea8ab287b5f8acf4bf2089ea06eb103a91b5107c5f6e72f7b29862f102300c7a57721d1687c7764c69b3939df9b8c701e8c78b327109f7db940629bbad4b5696d33ec42cea1e9db2e3eb869abf520302047c435bb50067306502305f31e887621ad92b50f704b0d9c43f978766fabdba34d43d46fc057b2afed80dc1b22f492612996460861127c2f123ef023100addea913ea81023b69b3ee06acc6dbecd783876c1c7178cf54cbcef59a838fedbbe4f4d80e33a9c4f7e170b23345d5130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e6e938f94746115a6555f317129b23db6c15a4ad1c444feaba9f321f42dae4cc6009b86bc34d8c9d552db9eac7991625023013ec3017317ed82dee5b1e2ee15576b031959ad192ca0899a838fbc1ee439d2a40b22a9a832e5724d0423a7dbdcac15e0302047c435bb500683066023100d38dea9a2b2d2229bae067ea42994e44b8e473bba8aa2d623ae1823c7ebb0b7de6ee969606c59ebdec78bd6760a7ec53023100a02c53bc15067cc03296bd639f38731f133b83456957f11d1ed092085ce78cdc4e66700a6303387d84f68d7ff3746de10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b610d55b57caacb46b02b84ed24a5efed251ba37f6e3788948a9a1dc73f91e642374fea800f56238ad740da0554a1ad3023003e17a0133b4708f7986e2c4e131823ed6ffe0cd7695b56239071a0f8ce92a73cfc76075f6e1b01da1d62dd2bf3722300302047c435bb50066306402307b041ada56a8d86c20b22709d2a8205e9393c26454ed9f29fabdd73bdb9bf593c20435c399f0756debf2b94db5652e25023024f58b8f370fbd9812f550d7b0c45e93d98faff6a7c425dd92ac965f074e80cc555dbaeff6ec3bfc8cdf9a64e1952ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023044aa2a28fcb8bfa2574dd59e0ef2cf002151232c6a27cd9bacb8f5921359bf2245af96f7647d769484e36ef76c31745302310099d315bd116965554dbf517a42fa836cdd964f09ee53edbfeb017526a98e9053c80b4c08e42f88541113fb8d317bf9460302047c435bb50066306402307714b7c3fa5a10353291edeb4a071a7eb924e6c323b74c90e48a4a5b5640b3619e725820a6057b813f6cbe3dc5fef8e902304ce49ebe8878868c62fc774f951237cb3adecbe76388bf012ec9a848a1acd2d79f7188d4f6e75b9c473bd98baaee3a5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100be2f5fc8ad79c6df56680ff6336a1a1a1e0f873713473a40becbce169a4be03e8fedd43630ee759cd09d29f7c28a1bd7023012c97a33f2cf19881f11fa6245f325c9e52eb7f9b09af3cc25b04f0ed388b87fc12eb30cb84a416af2b8c6b18a256dd70302047c435bb500683066023100d8739de3a6952ebb202f960e585d71f83f3a66107dcf9681ba37d9eb52a3d279100146a84c49da25e40fdf9e755878ba023100a13fc6509306679d34e90f782c2ccaa4cb5c84401ed16d8881a107833cdee7eccc7340c5b1081d30a7da60b81b5493400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100be72105302f0a53da28e96f1722d63a56b5b2f7f05aaa145a1082cc54a32ad19dd8c02439170d890ea93ba707d7f5f83023100dfd85afaca3025d4e771d4e4c51432c2f229053e1133ce57b995366777f22b31e3a027a29d590f7eafbc8121dc40b51b0302047c435bb5006730650230278efe3cda37ac5c0c7fad6155d940d3c312a4ca781a31af9d739cbbec24aa2c62dd4170721ecd3593bb58f5930995fe023100d0cb0ee60dbe7b9449d16a566b59c2b3603cb22f985bbd92924d2cd66031d52565668474995c656be00c74def6e86b200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a69c14a9b56c3fccee78406069790fe8ce31fd473c8b2a67b015a02eefd416edb50678ea9180441b068e3f4cba99f4ee0231009c74016d720a6dd5d107aa14a2773605d739b0b09c93c077a3e39d4885fe7000cab2e02e9f8a4fc19312d0194338a44e0302047c435bb50066306402304a4b292189b1133a077a56e9d07a4917f4c68c1e0a67fe837399ad4231925aee96200104ec6db290ce8e876fa317496d02307ce46374f249a5f7795d067526c8081b0b40496e6bf3330688499c9b38e0c126e1e0a5a1973c0ef91b997426a81570b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f7ea9223badbd290d1cd121da62f8c761c4aaad723248de8c97206ad24755ca1001e2a79e503535be1ffe3d6b21a45b02302b52b299429d0342d1a930a1584fe6783d635db6bec9a4e720e79edab30b59d788ebe0a4f590c2dd7e0b49b768fb05ce0302047c435bb500673065023100c576e1314219c055b21adfb6fc78a370a88890d13c8b872bc3ce8c22b3dd86001afe08587c3a0fe9a3d1d2127ffa066c02300e09c0dac9f7a4eb8fee863956a3f05947cbe1d82f105fcbd6b1ba5e7810552446fa234f22ea40959164fc9bcc5102030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7e7de2753e791a624348164b5050461775c2b54bffcc5a80a23ff16674afafaacbfcecbb594104230244f10e918ff5f023007c90b95e3a36966d437735f03a246a929d5f5cde6ad17bf54a2bb84fdaaf88fd39ff3fcf7ef6ae451c9d0d2d95e03220302047c435bb500683066023100e2b11967de5062e01c29570ad2319f0969efbf6fa93fcd790caad9d694c30847aa31e0df47367bc16464d2d36cbb8e8c023100ad5064670d602485b42f7917e7c213af8ee9ecf3d75c2ffe0838e7c0b7420b5a072f92c2f8280994cfeb2a2dba87038a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fdcd53a15f01f99665eaaac91f4cb9e28b83f9e5d60274e5e754ce1a00ecf650543acc77d3f4faf105b7235a9e5220e602307d74c32b5fb107437cc7d3366ebc253f9c71df5bc88809d1cf9bdd08494b3aa2fffc2086533bbee494299d2da92ad5f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f4d7650ea155a9a06b13b20c22e1256a80b6e8aa168e150cf4dafdf526d8f4f2e741b2765487db79236385cc69ec85e023100f4dd1c12db90d411b8dde02c6df26f97b2a984b19431687d4ffbdc8a8c6cc06ebf87512e85786f71cf3bdbb5b70fa07c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d32e5750536000f6baa210450651cad0a3928871cc3bc5c25e30f1c50d80ad72fa41150072c7bde79ff562a51b925201023100c586da2d1fa3b587067a27a5b26338ebefcd46c8ed6981130771f35109df3a65cb8b4d1fb05eca36e25f6c0ef04b2ac60302047c435bb500683066023100f6a30eb041a10742efd5573d864f2199ca460d10bd772ef8f8d93c9eaef0a4b67b33b49e7409b23cfb7ae3c7df904821023100e95e2485268886013fb0f02ca35cc222217ddeb8719ca5daab20a00ee48c499f915f6e66b587c945f2b398daf8571a5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ba9606832a49b149f41651a6f9970a3f9f3bd62c26f51c0fb6af9dc72f7a077f9c38d18eabaf9af756c26172533b283023100893968f6de8b283e21585dff95136dec11d26985573c191dbddff0ef7164f4036db9095bff643e779fd36b197865c12c0302047c435bb50066306402301be70f8d0d7850f8e11c79a52759569b83ce87b51ca440bfa1d00625a16e7f2c817191f36c6a91b613ccf6f52cd5c26702303adc62bbfb933f6b21d0c434a6d141348ec04c83f8b01610c474ce5c0279869597471c425d451c6f25b99baaf60c9c680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230710d948089dddf5fe2484e81904fc5cbdaf4b934208fff997959b8324b6e73ce9b258ec425646529800a328130db7193023100c7eb593982e04ec6945c4d056ff90e392ca42aaeedc34ccc8498ee469e4876f5e71d1a9497fc5e15bc3ad22ca2e39f410302047c435bb5006730650231008eabfd55d26c79062a5e30f43270568a603c5cfb18b4238577576b3995225248911c4f7cf8be97125e9470c150ad82aa02300c093f339fce2c90c3fb3be1a53a5875bd6fdb4971a19a1edab315e5c6017d438407924fade0dae3a9c157bc9387b5af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d6463076f7f250143606cd69b92b8da7e2ad6ad2059f90523a969caea98a2530d03986181106512dab1db998e244f211023100ba7a05d451b31d059a677a5953225b0ff6c284faf3c4c40d6c3534cc86836421382fa5c8eb95ad1962667600d40861b00302047c435bb50066306402303ba6d084ecee5be3f7a9b1306d05579d474f8d09db3361bdd549e3f5c2f50da5cddc6257d6c23e7621611fe32b7af03902307576bd15ad236490d182e2963ce251b65b49e37e80d15f47c2d0c5f12b4be05b22bb429a6420f68b354d8e28a39388710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306dc69a268627e0299366ebdddd5b5431ef5941645e9ee0a62e3954594b166a6ac45656defb93d2f30af3d3ec0383780402304a09fa70458bc012241061c1dfecfd9d9342863a82bd2bd4d45429e5019649339da874fec503ae199bb488dc0b60d4fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a3c3663ba5c454e5a06b7bc81dba67e49d3421c9e01368fdbf3d262a52b7c2804655e30b6f39d952579483f7a7c6ed4f02310089b7c08e5c980f76872978da0d39d801bc88920431a19e1c917c2091659f78d73e1284282e2e4d0748477145a89595c50302047c435bb50066306402304f905b34eb04b0075e340051969b28a0ac8353ad01c2ba3802b9e77c840d26c32ef6bf6948e01e33ea3f88218505159b02305e76388573225f4a105a9b0ecfd084a91558700ba14c9de8819b1385ecd7e7a8e2b436c0d9054eae4c804d0cb571ab200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230050c48a83446d4a25dcac8f1f1b0ab09c105cc31822dabcf2f69559112fd3a6fe0a46461daba53134b8d77d9346df9910230578fcc782254ebe167d63dd61db286376194a30edaae913aab83ae1e93cad76d54877081a4b681b3e027d0db4f4b6c9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073765035ebb03140d67a9127dc035441febf1fa6addb0996172d4896f954c0683585200a2c141da75a5ddce28f6ad3cd023100beae2863395fffc07a8cf20d5a1d84404b4a833a1055b8a60c9f225d915d482aed58e22e52b4ca3b3a9c799d7e9b1a610302047c435bb50066306402300148083e9e1845aa3aa64733b03e4a7ea4e89835d2432a88b745b5ac7e8af4106832a23ba329b8e894b8b34ee1dc08a9023030f4b72997e5a67d3d0a487fbf7c8f296d0a287e38224fade1feb0403bfa919ac87b5bd981a305a03ceff047a035cc300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303c51aaff499cd846656972c5e49975f1a14ad377c192986f452b40b7880082fb8282dd20913624ff6bf63dc7785751f8023100fb0b29dc73595d607847b2f756fcb6d500daa14d328973495b1d5d752e46bbe366aeaf35b81bf3f1a31ee371d87abdc80302047c435bb500663064023035b9dee4678c7710062075ff2304775fb3eaeac8335b09efbeca6dceca5cca03f92ca9b48cbefdd4b322724d362515e2023060897b4fced7b5fa5859719778f5c5e1406aef0b770bd4a12c73aeab1abdcae56d728ab387d7dd6c203ee525c32615be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e9186c4adc9eb899e8fce9475288063f29f122ced58bb933b1a9b73878cb1ea36757375a0dc3454edb14e32fa5411260230100258b1b9198898dc1e8eb851764a20c746bd82d660a8114bf2b8b4be7c7178c4cf8aaaf0e5e9dfcf3b8ecbf5e1b82c0302047c435bb50067306502306647a95c1fb0bac19d9fa349c71b88021c6f6f9f57742e2965d78c98dad6aca147158a323d53ef64f6fb8b5b83673999023100fabc7d55f0ddb90c076c8617b07560588d4fda9c62654fff93b8fe1c151b20b6aac1db26fa27541841308ff7e210eb990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ecedb8248f24b03285f588f296aa859a44a178a4680ccf95b6ae08ae65252939deb6a7ccb99ab73c59f2e0c5616430ac023029222dd8f6080741fd0e1d27229d10c02f7211adf071f02d8fd490a6e90170b220ea94242ae9377d064a69af8e0c5ea70302047c435bb500673065023100e85834aa6e138748f8d09bbd176a35729606332c8ec7025e12feae2b8e080b6e5ae8eef83fe90d87a75929b8af21af6602302927b1319e0d89b1b5104d7d5c8a18ea2bfa22eaa32a47bd11baaa17fff24c4706561aad518b49aeb8eab105d872d7520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008046644ca23913e22d9268acf15e71cfae6488d14c12906942ba44873b8d65232a077d7c6b60891271f6ee90eaf9e578023100ed3a7dc4cec3e5351ece67157c912e4e12c532ae2e02146d881330686dffdd3cb170638612255eb3f23a08adf7fc88510302047c435bb500663064023049f47c59bf6642673c382a6a332a0001bf697a4f3fa02996b34b05a5416e5752459531498451d32d7273e50d96f820230230020163cd98c55375bcbeb229099d59d0daf50b7bdfd8c37462ea23aa93e22b14c58b77c5421323d9c6022dab1e864bf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f56c97c62efd8e78cdc7c3063d7f6d9d649daef5d8fa45a041089ee45ca17adccfe1954a82c6d804e53b1779e98b680023100c356e34bbb15c868c932de053ca558cd73b0d835a051d7a7754ae7e420dea7804ddcecf415fee3a6e2e4f10837f4f2da0302047c435bb500683066023100f8a14760abca61c5b69f2984768c55af8769b5f4ab6b9353b7fe1809943dc8540652471c871311cb11458daee2ff4f07023100ef459c39a1d04c8ec02a13a874959e7a1437236d6b795ff80730a9d56d42fb3292d33f19efc845889488030c106f15ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100faa54eb4ac5a169da96ea4a86bd758c4e9416c7678565147dc8a45f0b71cd9b69b72f00ed4e9a42da8cb20f9e044d7b0023100d8aef54ae43a6233cf93ab66860832dad751184bf95293905eec90288b1a78cb22a0026f7564f80457b83830d2f4dadd0302047c435bb500673065023100f654719bb8ff11a29574f0d2198f09b1aae31352ac330b7f2335c786178bc6e4730927c79acca719c63615bd4d92df530230528d70e636249bed6e7f63c9d11638a6649dec88bfe4829c3bd09ba6214cdf908e00b27b764ba61bb49cc563ae9558980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf0fc77a6ca96fafee3872119e066a3ba84b0ca29b9df575f67b62a8c34325974f2ae834430d84714c48b420d54d99b00230292192085901dd1239183eca2855527ee03373ada3530196c9b05da6a4654bf3db653da36d681ca7d4b116c78e61baf40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305ef41ec45ed76c62893acf57fd4adc4a04be1a0e31b835c4b98a2764201c44ef5deec34d59620c937540b516a79a5816023100ad07ed8816767955d65e79c7629fe89074aa0f4cc490ae5a28cf8620433ff3b3ff5b45dcceece4cfcbd5e9cff1b6f72c0302047c435bb500673065023100d4a5e60a193d364981fe7a7fb04f8618be0f9a8ea6b4d1c8f92529b65ef9213b9f8e017984c4b9a26c79a8625e07989402303e76df32daf13ccba0a1bf1d4aa02db5006caac5374e98fa84adb1f3b4dddcbc91d3062247ceda99b19084bd7bd987740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230453141715ab841daaec30ea1a80f8ac7a38eba6c4280f6776cf9d67e9125c182e50855fa1682571f0d6ece3953db35c9023100d3737f5fe520c659da3fcc22c6ad58b8270c41cf66b1b1ea8b6150312bdc008594154c9c82d0221002200accc0ff00900302047c435bb5006830660231009f16f3ffebaa4de2fff0088a6f9a90a9143d67ffeac8479b59ce0df9c0e7d26dc2825dd60529497d73c194e7900fa84b02310094fe7ceefbab38321d1807ecb6025148968dfb2a40c09dd255f8ce63fe3c9db360a45f9455c1aa8cb0e513e91f57f01a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043a92ca13ed95d739f3eae4bde9c8e230d458340825372ab9e0e829d10a0442e81ad07d02502bd401de358cfb0655ada023100be502be2aeb44141196ce1e79a5a966c0ffd77c1f64ce6efd910393ceaafb18e5c0f253dd231a3bf592b5b2fe74bbef80302047c435bb50067306502300e4a5c56e8a0280d99028d21acc50bddeb176e826dce049638b15d885fe229351b727594ee5c901ef61736870b7e0845023100cd2b82624db13bb44a2ff4e109a3caac63442ed6cb7a21f31359f4f3a3d5a145b1d18f1f33cb5b9bd4242d5093a924040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c3e7025bbf3d7a57bfe939ee2317430241bf8a525d5baa1c7e8eb8ce55564efd21595ceb60576b393693363bdb41f9bc023076992551ccea31903506ea1330400b0cf9605ef014ec07f52add8ac44880e10e61a9ff27407e1befbf511a3b137bae5b0302047c435bb50066306402306c3f3172af4726d8cbc5f54ba073ff74941585abdb1e809a7c5ac3dd6beb7b2e7b6de665cb556eaaa4e3228724a22c0602303ad8db298b4fd9cc5ecb5be887aae6523912c5a9f4d0d09c69985a292f0863cc9ac26dcbc5e50acbf0421c49bafab43f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1886c7e082cc2fb974ea28e1fab34d6a6f56282301bb11e8c945a73c51c4f6b6b405ae46b1a42cf190c0d33cea932ae023100d15834cbf38404725693a141c1ac1596eeb1367b75c9bd2a2e08c06f7ce01a3c3ae3abba857cbf32659eb33d2d17a5200302047c435bb5006730650231008e44ea221dcc08e6007ff8872be2227eeab20d15c4c0208629d401b3ff06a2a3ac1f9454f94fbd0c4e5d6812cf9905a0023002400b14d0f78b6bcaac3d8a958012fc1638c6736914f37abdb55c25a6fa07164149c41677f8b1f0de1c73e65442c7fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100966c8785f5e0f4b329b2e711cb530233f6e3656f2260587604317a80edfc3a4c03373f5d7e5bc609ec16dc4a3d04adbe023046e72b258a1283b15c96ff260b3abaa0ea1500099418985718ebe0aad9a306840516e21febaa2c536c2580f2706507c20302047c435bb500673065023100b12edf1dbe243982759dc940acfac7052f8696f89b14ab45d683938aa7d92d38dbac90db731cae72a582d91ba5ed7136023078edbdc6cfad798078507281762d261c3cdc84bb0920baf339ed87536aaf4343f2684a597b6dd07d6662aeea27450aab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079038c0d99b0a349217990fdc85a040c0a0630a382df46cc168d54d87e39c6b32050e68d9f91d8bc3797ce53008855fd0230331a3de06d2498bba0e43d29ebed9664d2c5378540f30dd097953770fecc523e368c906b0e86a0278d6d195a0cd9f71a0302047c435bb500673065023100ce0da3571f251e82774a135baaf2816bf73106410152e360ccda61d844993492479f768c81a544d1160bdc6ff5c0bfcc02302b5263af8fdb9bfd04d289c99aac024044de51cc270e68bc921696e3f24eb067bed9641cc43ff3768f589fd20b1f80fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303996c7236ddb38db54db08fe9395e8f10f4c7abff3ea72553eff80cab167158f5fe2c71dca642768461892b0a9049499023100c893776cea0822e675769346898985b2e23e6af7a188ddf1f1896aa70a68df08124951cdd99c38c0d0c89d81ae89960b0302047c435bb5006630640230384aa57a2c9de93baa8d73a129cc1014369c93d76a401e4da5490a9042a4bfb9d4647ee7c7474e0f85971a54bebe1e6702307e73686fc679954a30bc9373af71877ed7d826450da91796a713c1a7ced7bf8182005da4ffc31f1fe39fa8454939845a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6e73f75898178865c17b0090816d22d71e196bd633fa779d5a3d09b12e9db736ce3e2e19706c47e313769cfa2838cf402302ce4d54266c1a5f5ada0ba4c1f8f247251e2b1b358264cdb6f82f521d1b19274953fb8ae7ff03ba3c56bfc986bbe9ae00302047c435bb5006630640230475a7d1b58490fe7dcb2a36535bdc9780beebfcfcd7fe82f3125b4d379d033ebb22f9c8be9c201dd145dc9cb06da8ee102306af3489962012c407bd29933980adf9a96ed4a60f0b7fc2384f40e8653002302db75487f1d01e868d681fd72254d47ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc309941a9fa07fa81ba3ba2b2711b9a5e0401a880df39ee0425e75cd719a9d8fdf31e6c37060bf3e96871726022df7a0231008cc7084ae8a11e83d7774ba5584f7f38de5ac0e2530481eb2645577a22ad013ba8ac98cf9ad91617ccdfeeed28b1e6510302047c435bb500673065023100bf7bbe033c6206c3a413275349e36b385eb6fa91dddab22b0b891cb032a38d1b0d03149f744a27a736ef9fba449891aa023045cf8b456277f646b3e2f91a0d8452125a53c07c715c86835ab51c72a7d43523498137f3a8639cdc37593fd9b2f6ac2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9103b3c5570f73a41f16c2f1d3268423f93454b98c3b30bbeb69705e9d0822529b55cc8d81ad1b223dfed9f7d901608023100a00333fbc3b82e1b151b9ea0759837cd41b4ba49b425602f9e1150d70748aeab1d606a552cbab473121556777cd5e38f0302047c435bb500683066023100c81610edd6355e14bbf49542701d70e181880d09c7cf17cef1f4748826c8ae2dbb4e88d27c5a62bf85f5282eb81b11ea023100d717c12e2778d4360b7808045be8d1c60b6ea197a489de9db8b391dca70bc26a7f5e07424e9b12325f20041c24d1a8ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023020b7af6174aa60ff042ecbb1f0c65c7ee54caa91967fe035e4d45bcc2f5a1c28114f92c6a245cffeaa5b696d8ba62b7e0230462359d2f47c58bee103fa72cf7a6579c216127e6adce2181cbbb0fe47015dc506cebcb8fd274e890c388d76522a112d0302047c435bb50067306502305f1ab395f02a2f330d1019108e3f82c97fa1ce0743ba2ff4f998bbceef524d85a210bc0859f778d10bf9cae6f5e543410231008d09fb027e25c6f22da6f09282b33b16275a2c46850ad79db80389763386f067bfde27a0cc6d10c16f55db38dcdff1130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230319e2dea1749be53413653db7c04377f0fa8c06462d5f2e7694d99cd01154ce5e81e13b72b110b8efcefbe42837697b5023100808175d1fb6d74fa21608ce2c79a3078ba91c7fb3fa5b672fbb522a8977897e5f8631b5cee87a19dbc4b04be49cf7f200302047c435bb500673065023100d1bc7aca91f1e5a67261b00fcfd54e3e52108145cad26a92970b173ab1ca11a6e2d9974c252215c1047035552f45c4b0023079d3670d7753590c39970f46cf11a45b38cf12c6cb4cb5a355a18693c15fb8d906b0760f32dc2a694a2b16ab1ffb77c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230221c9fc6f17b6f982cddb0d4f801a1326c95922fb666790924e1e3d3183a75153cbc68d029e3977f917f288c5d0189e1023005af6e4abb57e91b15528c8ee49cfc39a6ebc6bc7364dd1d0256fc00812c755de432a835a052ffcb1e44ff4c281671b00302047c435bb50068306602310083e0cab25243a66c7ebd4fe44ec63e6a957f19541035a357d3b2c9694dee73f1d389df7f4059995b47a417d49239e5a0023100df132dcd58af13be2d319f5c6c24bda9ed61c861341ca9eefc48d1c03d8b922d77f8c20d487c3f17928bb755249eab970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307f0e719426493ee84d20fe668db30f44ac10a68c77764ed55257d875f7ad27e244932a48b425bea3cfd98fa6990fdd06023027b9d9041e4f643f00095eb524ed33de9ce7aa0fe850587d824e00bb0845d2cd7c5797402170b314ce5ee87794d77d0f0302047c435bb500673065023072a36ef101a08f3ad998d6620ff71e9acd1216f33f1a9d2daa8c0b07cf4adf473122d789877eb0c169dbf3e74e85a49b023100a8820e4a51c5972e9f744cfc60c68528dd05c9c3aac3965960519abb76c4e1cc724100de3aa3ecfb3b44989fd92e13e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b32592d860a5ada536abfd040510b34a48f4ad3f945e629d81475905b7d44f9d2ac0d441db250cba80ddee98ff85424023100a7fe09b2123fa0e6e074ed96f920212a249c843a48232f0c99b88c032b5b32bf1a5edb10739f6a86b7795bef6a3188e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307e19dc41fdba04998f40d678e7b6d39cc32506b6cbb925a5529bf79f45175d7dce5dcd519eb62f1829c46a26950dc798023038900503972ab145c610dd96c69b4b95130636bc3bd35fab7b26cb0c665a5ebaa6e838369b62bb72f7e80b031870611d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba314b3226160e6d33212292fa3622f408c31e5bfbd33b8c55a5113f0038d2a38e99791f7072e749cd2d7ef964dc5b7902310099bf29086d30220e24e6152bf4d003cf2f5b9a9481d9325ddfa2a9e338cfffae2b7c770eba29c1dfedeacdafc11c82cf0302047c435bb500673065023100cbd9a19ba0a80f6236c5352c55fd20637aae839e23c2e313459527e87712629ff8fc518f34929cb5a98690e49e69f07c02301582d31cd2d82b3c9fbab963cdbdd195bf083c6464df09849d0b73098bea695bca5e5896c96b00d6b985a890bbb519170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd2ee43fc4cdfec5f9f1f5b18137a9f5981e7638047985a19168fa1603cf152a7924e407dc9514f7a93235b3722e06bc02305d8de522ef412abf9b35afa3ead46dcddb04b7f4b47d618b66c80186563eb84a5a143f7b47cbb93f16e28433bb2f0d450302047c435bb50066306402300ac8bbe0a39e05968d0383fc4909ca7da8e95c2106d4adb376fe3cc3d8aa03ecb772da44473ec3e517e9e64d4b08b781023074de9cb9c06b13235cffbc7796a6cf804fb3a4d327f3a844512ed3da56e934d9bcf8862e44b40d0bab3b119522b0e7830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301bd03333917bf88a0af3e741b18fa3220a7b70451494fcfbd0b2ce6514edfff65d5961eb839adc21549a38933d3b172f023100a30d1fdb469b13907efdcac4be2e70955b10416ffd393a58e233e2c6eafe0a90f651786883b1042498fa6ca09bd20b860302047c435bb50068306602310084e8f58bdcf4ac6e3ef9eacaf76e171942779901c8e44d26091711998ad04f7efc1ec61d0a7bfde9e6833740a7ccb81a023100c48e36905cdc5946eb42227ddeafa170d1c46831fda9cc820a0df14c7a4522bee72ff9e0f201f1339fc36e6ae57afb850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac7dcbdeb6a6fb369b8c9fcbca559b072bf9916ad40c221157f15678cf7d2b7fd0bf29b7ccc35b0e544b2793081c108402304fdeac194ec609847ae1a263a312b9fcda85b750deb7f216e8b8fc8c5ccbdb80cf4f9fbf5fb4e222e1b4628f634a74b60302047c435bb5006830660231009defc74d65cebc66045efb42b0c0ec7d26234656d062cf26a15d7213e52eed8e2374e0eb8a12a8182e54adbff06ba8d0023100c100fd78bdd240b961aad9bc84cc62c6cb82423cf01a774404fc29bcd16b75ae0a8793816f2c8fc50332ced2164c9dae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d6bc5da9f6f6de323e74b64ab4e8a8c1f7cfa1d9f9a5cb74c2469b8c8e709d5bf762e608b18bdc25ddb6688c81dc6900230786de295a5a00798707721df3117459dbc8d769211851dbcd196491442ee92949865f7faf50fd2aeff820dd1cd9e32020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec6a6a4684b6671e7873c62e2cfbb18e902cb983fe5bfbe0f6e33ebc41d3fcac91bfafbfdf6e3cc95409c13b2324d10f0230298d2925ff57d2177bc97eb12e40015159b26a7285bb1eacaf62a51cb84f3f887efe9a354b7ddd51ded1472128e326640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301cb58d74abe03dce4bdbe97beb45fc312de991f32986da8dbaa0d1f14890451dfaa07f56eaa201295e33d3990ed992fc02300b14aaaa6b7911dc36a49014fdb44a56d14e0642f8642a1f6f2354a2883dced3b1254e7a8e3df8cee01faa74c8915cda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a8f75ffead018ee242e950309d022fdd9cd66a9543c73b79b12418c6b55064e9a1e62bfd3569fc8d783ecc45fb08193602305ce0825fcc430830728d4877febea2693667a706147499528173b36d53d5e78df1877aa619edcaa0a6d741840f1cc1380302047c435bb50066306402306cc1085e1a18d056832cb48c9246e955524810f4ef5336b9fd520041b208c723eee5cb125c4952c18a109af463abca9102302d95693c9147d408340283334673a97b5f913434ad703aef8fa46f55293fe9175158a56c01e352bc3771094159ae329b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002f7fce7bca6dab5300b4bfb86df0d47d478c68605d32a612876ddddc888e27660768c5280a113fc8b24a4f40c5846dd0230601f7a6ddf0a90bd1cb27142a92d51b3173f392dc13896704ead6b346b7bc6e72eec39801827b6da86c7491fb87ae31a0302047c435bb50067306502304d6cbb7a945037cc0c27329d57ef7d7fad7d7e579d6f7f68e4737bd8abc9510c039785975bc1be298a97cc8683a1129c023100caf3bec0c75f44210c68e60f3f7d24fdc6d866d1446676ffe70d03bd7cb95d3af865538ec15b3fbae0b60ac160b618730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056bbd1cd6a1bfac1da15eeb323e5dee88ebb3a9cf5dfd1969244ba29c33ed2bf976b12b01946d69c7d85bd9426c1d903023100ee6153c0fbb8eb08fcc8a75735be04be6a907518edfd504635df534a4c2ace008df2ec05b67db5b827e3f502df3b558d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302941bc06e326ad6ad92275c348d3f1163c9c9b8b5ea8ed44f992beafdfa9bd60205cfb6eafb4179a1d443a7cb69290bc0230337f8b91bfff2887d061117c322c20fa37d6b09136151cc63249311b95a867657c0eda90a147896cf48d01aa7ceb438f0302047c435bb500673065023100d579e611d11309e08594cf7d5b90a146ae7b5a904d18542bc1d7b55be66e92b52845663e31c89857a079e3b15d3a3bd202307d714dba24071dad1c7fe846c76a1a0a5ec7b3297f3f4017d4129928591aa890cae4f187725e56eb4df8b087f995110f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a629873b7fcb4ab230d18f0cdd7ceec7aebe1d1a3c33c395e816b8173d864916c11f60c5a9311b1746b44f9175b9ac9b0230692ecfb14286ec3892b35a3c75a4ef174aa741e3acb740a5145862e4d1d79a53205a35fec2e1abadb28252cb20ac397e0302047c435bb5006630640231008350d96c336dbe1b1e18bd280f8fad8b09a51059565bbfe4d2f4e995f449cbb37c07685b3f07acc1bca28d1ec5ec9178022f428c6a4a7cd4c1dfb14038cb37598ff16c0d5b4edf24540a2123286307df52aab96238c279153e6e69e2dd350ff7fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dde7eb1bcf87a0fa569ca5040584fb1d77e63811094adfbc788295d3e857b69349a991eff770df499c9e9bd883912bd902302ed79918bea13dbee4236679a38ddf05d60172074c2da31d222b35b696f0b63ada3ee3b215fe53add3d9e0609d49a5280302047c435bb500673065023054264bf7e25c95996724e7fa38e8d15181ece7f3aaada2f1d2a495863fb1c345cfe8d6719a52b455de39fdfa20cdb70a023100f573120209563eb3e1e7180563da38d77ca68258a24b295fd8b675088414a01ab94bbf78137772c24bbc3d15a3b3e8060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008676e0f16b2c6d0e5e6362f09f7b75d2569dcf4917494cfdb95184f4d9d0c634c73b376a006490b78dcb0bc9dde220d7023100de0e1dc2cf70c9bebca6f74e5d06f886c3db701d43195abcc85e0cf8c266b30897dd8a4fc9d2e4c9583e6b43237843930302047c435bb50067306502307116b5cc59a94c168ebaed5c0bb1916d7c5b4cdbc399652b3a9411631505c3600db4075f0b5f77e0592df507548ca389023100d4fb25e20bd35b03f6ce98a197fb19463bff12b6c87d28479ff4f644d587beb121951ed83a4a47076c118af1de1001bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301fc6e5e20e5c73200baf938dead6a69dabf94ab8aa59ae75e875f34695cff0f75265b8f95523280b818cb186ceb1dc210230746fc461d2fd5a9b7a198e9cb8c2774f7e9245dc5ff23b1a4066e52e878f8acc14fe77d9130396a0b5a7f333fbaf85e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100facade2d8d3b61f9e37297c9b62ac79842fbc7f85d5cd5caf550e385fc1155575c793951c846fb050f9c94fe19b566c4023013c9c00c0b0b8daf92c337676d3dd75f9a38455d14460f43dd5eb5e2579db170e9c758de41f19e5186959dc031ff11660302047c435bb50066306402302708effdae399903e76615b4598510ae00c4efc164a5b03841e156aa4f3cc4f6582de0a839ffc3c6d6e58ed52889f79b02305655bd668dd7c56d58bbde26b54f418ac9091e6262227cf86a764e3927aaa09ef9c393268c68a2424b3353c1e5c3d73d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100919353da0533127c4dec9003659f645e227dcd15fbff3e3e0e64af9aa2d754de7ed4ac387cd4af299f2b8dbf80e1e643023100e7a070cc5e3393d5866b5c10e58e3217abcf6782e22dc094a5ae957288af22436894afa753cae87db7f93f588165acd00302047c435bb500673065023100a966ba8f43e63ffa14bf86c89a9e410afe39f0280136ce53d63da293e18ed657ac061266756247154835ac91c9565e5b023001041c994badad892592c2a2cd5b916b775b77650c201b2161aabb78a33629caa6d893d6dd69e1360d1e89bd218e6e6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304eacca8c4c5184fbf5912f99f7be9c6c352d133ddaea0f30e645eff68eda08af7e520f9a4379c854abade38ee0017cd0023100c4882cc9b41503b5ca2df6b2a61a400653a8d59e06d062ac892ab06f268369b2441cd66f32e5286c3f559507f7e9ea370302047c435bb500683066023100a853c7d2f2aa5fbac9df6cfcb370dc9112e7cd6667d173ce42413f0e4099dcf984e181789cf04e6418067a74f69713af023100aafd2aa49ee593427f4c6868dfb5accaff1782248effa0f314ab8a8d99e752473c56b8ea1a1fec22e0fe1265439b697b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dda40b093d6e05c8927c0e62d4038c5a1ce2b96d8b2713f45c1abe3e5da02c000af1676fa0dfe588671c8f5ea2e6e62023016e55fa5a17c145a3f606876a962aec0200f8a40251029133f1bcd092aca1da75caf537dcb511161820ce4da9f19f3740302047c435bb50067306502304cbd15e858ab3ad8f2ddb178fe42fe0e4f6899b6291dbb02d80694490cba6225aa958421f4f78f75259f8a22a1aea6bb023100a27b492cce06eb592eb451fe600cbc7b6601ae128b611690a37bc5c4912f7790419fd10d5974e3ba0966bb973ea7e80a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055bcfe8c68c9b6d4443d8b9c67a3cdb61604ce02c64a279bbbcee3cf119e146a1962d901e7b188b455b62b8108d02a43023100fce330dc336a2fb0845d2c0f0f9a910251143234e78750c05db27e00f46d290796ed17ec516eaf31be5dfb978a0c54dc0302047c435bb500683066023100d5857ab2bcf816f99e5b2c636f438f4e256f24682361735114b7b48d08a110322c705313575434b4ff0d961dbe44bb72023100f55c9296d5a37a891c5482fa4d03c462d8f2d095aad962afa79623dcf8b3575dc7fdf53511061664362574ecd1b85abc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302002c4526084c6d2693b4c33266a503ba061859403a83b2db3130cdd48cb02eddfd9d2688abbc129e66d7d2b40f92624023023f1420f3a596d05f40d2affc109f7ec7cce1935ba210375753fc9a763ef06b209093e28702c2dab7c118cbe13b4425a0302047c435bb50067306502306f3740882bc3537c30ed93af5c0b17fc0e440e8667ab3ceccd45ea3795f179ed088e4d9bfca769432b357d444f8093f8023100e1103dac9595e5073dcdae4e1362a9d7531049f6fe2fa73e5e76868aa53cc07904754c053de1387643612160d1fc28910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023074fd53227907a62c033b60b273884ace1eddd4c26fc5715158561147e06d156a3d89fd6a9e1e00032e30fa0ca10017ce023046e152148675c24d78bfad91fa62172828f308680e0794a4e3fc120e4bbdb839e193f80ca0bd12d6d145115e11940cfa0302047c435bb50066306402301c9eead1f32f17b234e7c310923501e248452aa753d29a29bdda72a820c7957f0f9ccda045f59481991f4bfc6ee7ae22023001659405f61dcab9531b1abe3a6a263e40983db7e9a7a1c4c32a6322fdcf3f1237abd4a1c6cd2095881f83e783e2a4320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e09df53083f6e0f43edcf976969b3ffdb7b48f5990d616507bf0d82ee5e115a5a2581a5bef875dc5a166f4093c24588023021bcfa9e568347ef108d889de24f8c0df7926fa76f7041321b02ad67aae97df5c72b0b16fba67afdf4b85d42b31194650302047c435bb50066306402305cd1091fd068a675252e07a4d10e1bf9e21e268769b940e09af82a60f830a96baa58611bcc121908df4b92c3aadb661c0230744f0a72081a3454b9210b4f9a5a6a156fb0f6d7bc94f2d2dc305fc8cfa678c4d2d1590e16b56a302cdbe5a6879293d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230209dbe2ccf49e422e08a544fe18c050e41ecb519be50a1087d096a17fb243a813241ea8ce09405f1ce57bbe70febe16e023100bee70750e22f07ad361369247ba37ef81097dc79a00c6f8b4c5b66fdfcf4b975dc48cfdb6b46cc34308aeb1293bfac810302047c435bb50067306502304c242593ad09f76505951cf46df2106d02d50f78794eb650a27de93009ec0e55b4353b2f0f808433471b80d0aee2529302310085d0d02a3d9c15cd95b4bd69cf715f3a9c3a8d754a6a89a3ea13f8f72a126616b17db3db86bc66b8050f6de33137bf600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b678654d8b8d9fe49c95b97dbcd592a33e1061219403fee15f322e1b94d73ea64e58e524306b99d9d30f121318f097f3023021a6357a8dcbf3e069487c283a4fce806dbab3e2cd250acdfd003925616e578e66b986eb4ce9138bb0232610409480dd0302047c435bb50066306402305754ad2be985e2e5f0d4e284656ae8457254eb0128107a646467b8fd59d2a8c3d950f772098a4b61385119cae6da330402307485b12cc09cc511276ce5c032decf99a18dbce8e0d3110f353dd7f70d74dd2f8fa75175c3f09cdd3788c87b0eeaf4da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b57d6ca49c3c71df172eb1b92478aeadb05718cdbcc020d3863d843d0d0537016ccb0ed69a9647103d9f45f02c11979a023070a76709d3d24f55a15f9822d2eeb656481e9c788a2b4f082b1edf5783747134231d45e185b9bdb9b88f23dd4345a0850302047c435bb5006730650231008998c25d09bd1a846ae73e797c1ddac8d1de5ab52d294812fc9ff098ecc6c9d2dece785b7825d04bd233994867c70252023027c3819d62c3683252144cc8736680ed140653b41300fcb6fe2a63bda07424ea2116949f7f2e307b1c6f135cb1d979140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e07b12c7a57b369db2244dccb8e4ccbd1aa15b822b944fc9a2fce1067fd17d46419d5a579f1cb7b5f6e6f34c5533cce2023100be223c1363bf4054eb9eac851d41c70f58eac4c0978ab8360a878623e3cb65e5e6cfe1e24c85fabb74c810a536f6c1980302047c435bb50067306502302ff25a9e1560e211ba244454166297908728e1779d7d88144cf6ae98fbc972b8128c9de32390846e400a6406e7794b3a023100db301461f50db43888a372ce94045c505dc50d33325124e7d121a91e6a024fc1f77a7958500a4bc50bbf3d9fe0482d2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303d1daf28f02142972f7454def19b1737e514656ea7c938c5b5ae8568d622a4d824b4c688865adfb865169eaa33e56852023100b19369d7c658fe123b44715258f5ebb7f49ea34bf9cdb4d3660f5e3f518e94af312b4175029c0475aace9c6f119147ee0302047c435bb50067306502310080d05caf0580390c186a92337bf1f5358340cd340b0a8c325d77962f4f40b3755a1de49c82f157f6bed40647502bb4bb02307296124af14c94ae7c82e805f68237ac103a4e45e1be7c1680b36fd844bc2a0f5def3f0065fc4340c99e4b6ca08c37cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0277035a745d33b2bdeb518f0f82631f20be38b513afc94db1be591bca22e86c896c6e5d6233910c8d37eebed4622b602301013eea360f23bcf2287eb036bc3b9c75d2cfa19351075a363252a0ddf0155e846a477c8b37d2af5393c01e831ea1d2b0302047c435bb50067306502301e05d00e5a2c5f29336687b2d6d7aa2c4bdaeda5df864c6580062fee8a7a1108945b15c5bb5d50c5692f5c82a997af29023100e9a2f6f671fe04613d3ab766caf9f7b9fd5937132f46ecf69311792855b791668076aa4ecbe6be62fe675f1249f7fac10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c81cb7bd05d9942a413a1287d2543b9f3824e683687d47ff21c5a5ef355431fa5d0145ae1d11e60cc6400bedf462d103023100aacb72001aaac99a029bf077b2238f7b13715ea01bd1e8cf21e38adb9165bd8bb092039982dc427a0188846e0a982f3f0302047c435bb500663064023023ac2101ef0db312f6ac6a0a6ecb54f8a350526722f877c9652c7867fca491ca103ad3b37ff98b91c4cf675c84ca1a5e0230252e86f474f1e8a57ed4553e9fc19e3d21811e6adba97597121a607b896b91854c6bdf84643e8b583082afda3a943cb50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e49030654dd2c87ee43a5df13972093c5b674ca2f48684fb1ae51e5d9ad09e7287215e3f4516e16575554ed13814fa502302de13960c0353f464bc68255bc4ca8de6d35c64571c4a31bc8128112e375c3e81bfc394a3504990a7825bbb94df21d4f0302047c435bb5006630640230112e9d3995880d870c3c822169e15e31e4cd570c28f757108c7dc04969d66b63454593ec2550fffb2f00f340614e6310023020a8792a7775e8aa9b1978412f724bf4f061b9f5d02cf425a529a72cc0099b11f6124d5141a73810ed04102b3b191c180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d6b4e3f7dbce0f2c9755251c1b373d9e9e5b49f1e480bd7766599f0bc3ba6ec5000fe9f279deefa7eb192000a9b89be023100dbfd6950a4068d6dda3ea54ec898db1f997fdb5189dab534f26305b967d94c18515be0c26df3d22f2b650f0f96f02f2b0302047c435bb5006630640230447ffe1a99861e5964fcd1f9a5ade07dcabb3c22ce5b49c37e9cd2c01d3a94024990f13c65a4dc05f8649775b917fedf023079d366fda844899dc545d68bc7932c5784344d4c1bbca88931af0f15a2c6a3da2ced092473718394bc6fc67f118e65050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306054a89a16abfc51af7f0979598fbbad233bbdd14288ef5daa3147a45033c8a17722fb06e1dbc73ff4560567d7af56d202303f10f42be12444be70d9681aa186159f4f22fd700ac250843969feed79122e759d4d66baf633f5e0aba5b6f93ab7a9c30302047c435bb5006630640230584acea6154a89463c923da259d43952d58e4600e3d4568eba42713ef5ad33aed8ea5fd253421d00cc8b10bbf5a06b80023073c2d0f65d097d64c5d475504467e17cc89e2b780d346fa9a2fd90e7a6de72e47320f9a65575d1f760988258c13cdd990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025c261b1766b95f32d8eb3db19c3ad088c99287442a43fa1156632d617adc75c8c16e37cce40fa1c325097ab530c487d023100d1849edc46c45f0de0be6445c49e516e82727c4b7a769ab059a9616f86be27948b174aec047cbd71a0c589dcf0d71b640302047c435bb50067306502300d25a7758eb27667f12b5358370569070fd80a4d5721b4fe4c2308b2dc0a50bb7cb453de07c0e836007be30143eb70f1023100b9ae9f8d27688e6d73e5d7ea200154093b2ffea3f7be805dc025913dec68d7fd61aa29945598fe519d40c52d39514ac30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230723e62d192b6cdbcece8e747b3e5b8900a1407f9f91924b3c9e2065c7462e194b6ce646e87732d8e1ca7c98671e2064302300b38a91f184a1a985a228e34bb81ec6d0bea75351170d0f4ea9f07112d7ebe9fe3c794306259aead17d4a97a2050905f0302047c435bb5006830660231009aa51ccff1416ec1a9f8beb621a0936d9ad1432fc38d832efa9c0aa610cab76a1a051d8632434e587aa0258a62c7eeb8023100f0d3263149229d442f1137c7182b87e316718cc368eafda4495c36c6f60de5a476455f5183bf9a9a09be40510c73e84e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fc414e71b745754bf603d37e0aa7490e771c37849fe8bd55ff2b2d58e8cc661030f91a4d7b1e54eb42f2a4a9ac7cfab023100e541c0edcd256e683bd0896c36661df446e12e916e0f04b77ef4fa0c9d6cd956f639c97517f7f28d6ff2e9e323dc82680302047c435bb500663064023014c6cbb0875eddd5c44f437c7c67ff19cd00d79ad4b4aaab4b8110c2b52dc41755c3b39855e8df1206ea5a6a7c272c7f023028680facd88ee8006ca7e4543a364034d4244f0e1e45243cb1be8ac5c95b0c1ecdac284f972a8ffbc6e241565486790b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c208e3784bdab2ea7c5f6477ce0bce98a57ad61fbfcb5da9644c7a92d809fc204483a38909083248fc5a46db71550e0d023036b431956e06bd120a77d1e4fd203bf086b377e6bc9b3106bf9dd7fb6adfcbe6b939d17f516df1807f87d48720752ac70302047c435bb500683066023100a29681936b0b3c51db3a6c58376776254a05b49ddfdfe3bfc7d69b6b7cc7ecd7cd3c1e3fb61af40c861a49625c10526c023100da1bb79aff2d2ccbb2823879ea748e82fa79581cbfe7dd47682c907298ded6351e2c0980021f4ec7b8d0f47c88a93d320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301d224bc84714c009395df348dd8f0906318ffacda5a01b9c77be1ed18e8273879c5b8f3f4bbeca704f905ba8438202a8023100af01d12947a5986f9530bf04df18bc2eb15019ea28b6902b2f7102780f70f50f4f2e66611023667f98ded6f4d5017fb40302047c435bb500663064023100a38148f41e9e78c29bb766a1f3df062fe7fcd53ea69461dd424ef23b5f13c2ebfc67c37d3346fbf33a095402e4c85c54022f2789e766ee8e09886741dc7d17fb5e6c4541d83cadc7c332a7d5b492bef7a489cfc0c506ef83afd7ffb402476a04660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e719756c5900e71f3aa2920a3c2e7839a162f1f7df0b23a7e65c6648b21abf880559855b1dbb1aa2fab10d5c1bf708f023100eb8d9040448bb5caaa05fa0980c032c9dc4550f03b921ce5669cb3fd080aa8bc0a9ca89e6b5f696e04c87d61760e98370302047c435bb500673065023100a064c0ac4e9bd43c4d6f2aac651539bcef5b534b69047cb9f87e0f5a0ad0d2556f6b3db4087102711a50be7f105bf5d30230279c5abf1e243fb1deb4a25b293c7a7966575e4c9c768e691778b3a37a8c821d51b24a2c44074cc9bd51c3a4433adce70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c4b80b2fcd1282f65e781bc33727bccde174dad479390ba35f8d4126d3b5d7ea3dc180ed6d51630eb136282b9cc187802307f35fc1db8fa0e793134a19159a226e111d844e1cf7255fe6b1dc9f3c44add525a2a9bcbb0dc2c45614485b2f43406660302047c435bb500683066023100fab00082c72b6909edcbc1ab236ce7e847e85d42e0211702902f0d06c56cd0b54a445f3655dc1e933b857144d61fb2bb023100b25fb8d5103d28bd3b2ed6a621fd98639b8a7e99904d988491b3b37ec05d12ac597cbeff13cc34d1297c0c6d75f960750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067523e31dde654b30fd131558b988e22e05239e0f68145fb4e50549ced9a0d8e3579fbe0761cb273decc59f3cda5cdb10231009002006c6d612f21e5bf8e621d5cb34be8653c40e24436dd25e37ef34b0b369845683ebed66a91abf40365b71e4296d10302047c435bb50066306402300237b45dc625e18f137a1c5a9970e0855c3b08a5460491bc6f50068d878bc4ca5b10a3b329396b3eb9898f0fff6f564302304d05aad46535f489e5678b119ce628610cc618114c81a6cadf4c001c1b4c30de60869e06ae591583900f5f7bbeb91bff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100885a52cd116222ed53a44e3b377f0ddf9d0c1620709a14331a80e4d619ff5d3fc4dfe54d36179f14f819dd34b4613f5a023100f3ef69117aee7d28c30d0bb35b4ce6f53157f2d7e677d8022584a3d265c7c3f6439b0441ed3865510cb3c73495785ff50302047c435bb50067306502300894209251b196d68db0d21df590babe8c4cf2ec993678af3314b8c3696f20cc86bf3d37bb5785e4bc0281eba69264da023100e3cd2a6d9d7488757fe95f1a09222470192125ba05d4c0274641a0e660585f275a84d4faed9c52669c71cee7a4bbadcc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230725fca2b76ef7754200bd0685bfd070b3a58d3a42fb34b2d5a619d7b8d70899a3d7ea02faa34f8414dca799868cfc0d402310098341ceaada54067be7d8a6c7d4ecd354e4c84b778cfdea4ab85a0d059df0a9922a2ced88b82c5933ed1a275f9c6ba830302047c435bb5006730650230155d2990c33496fc3d9441ec4aa9406f7804fcda951dd2a84d2c7de3b1f258a4c6f3013463b2647e91a6941106ab03cf0231008266de41dda5dded25761251fc44893faab4fb7af3409616d41b299823696528b8649d129a6752333ea937e882403a760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300fc0f8cacacedae85f7716114eede95edfc40ca047957ce66761a0263d38d54fee06018b987b118cb545c27842f9c26e02310085ae75761dc1d7adc60c308218fa34b8882b560c67f5d0e01c0703aed4b344689fa0e425b5eb7125c6e6eb8ed65da3020302047c435bb500683066023100c8b46a5cfd93de44355021a5c9e38e1a5d6d1b1b723c11f89e0561b8267dd95eb1088bf776b3fe757dfa01c587f1f0f6023100c74178bdaf7a1d942f3196bf587971ad61a1a5a3a62c6efdc3ecdc9fa043eccbc8eac7854f95f1a45a345c3c41fb1e710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303be797dc99e996e182887008fee545c8280ee9b6c50dd7d5bf05220141b08152284db2e3f643d100281937bc953781d5023100d523f0becc5ca27b875ff3b5071f0fb57d1bd86bb3052ff05d26505447d88555ddb89a049d6b7779bc49589d4543c3cb0302047c435bb500683066023100d7789fd36d60556cfd606626604ae7960cf4cd9944bc26d9bc552b09829ae6d90bcf3c2ff94b66812891a6682aedd6f4023100ac4b7e6126c6b62f1911cf20fe6a83e20761be536504f82c0794ae7e5248f02ed79dca934387feb927790a19624f60ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023027f1accbaf0faa035130ebbf94535235e3409c9da12dc43b3a3a12c0cf7bcd73f1fdd5e5fb045bf1faca6ce0566a416302303c379060cc71bdccf257da9e28647fceeb865a7b0df418a7a34820eeec17456f1a8e9fcd3c214a7b266c5504c3d2cd510302047c435bb500683066023100b0d00ac938acfb8fb6f216a95a1b4ac3981c32b7201d32f2a59990ee720d9a0ebe4f3bad155a5f2b97aea3be46c86f8802310091056098110cebefd906aad218723f40a705238293773e03f0848cc605bf2700afc6de8e0abca6758d95b1515b6b2a070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305d02907a46b9de6430490ce9c3a3085ae967ad43b8cddd69959924ca584e9c82ff4341e01c9ff4e5efbda7d41da430a5023100f7e22263e975d8d6dd8e0c7e1b67a73fa3188e8aad75c0a518b48b2b845dba2da212d08685bcc626f1a854ac799f6b220302047c435bb5006730650231009e23eaf38c94e0040a859fbd462f8bcfac38a0f31af7197eeac2d85bda231304aa92a082a18648f9c782ecb499e1665f023047542b7102383cdd0f4409131b4d0eb06bb295e56ccd85809dbcaf9564213c5e4aaf3a50c821069d38eae2b3d6fc1b6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b4d6299b52d30b21454503dbd9c933a80a78511835766feb179f59fa2adb5f1937e9d0244ca93e5a95c0b276838393d0231009f3bde22a9d3e8ca7dfb3cde6e05151dcaefa82af3a5befcd3c3e6f3c4c9a3f095ab5014d477984d0b468f66ed3d1a230302047c435bb50068306602310084ce58da0eb1d249a7b56ad8540c63ac6afa01693b045934c9118ee4b75197ded993f18e1cd398b2bce8d52d856e18a602310080cacad661eda6d2c5caef7187eed77c5dff8a4c83effc9f2453bb20e979c75353e3ade0f43e5ce39e660ad0c1fdf7a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7758e9065d1961ae989d5ed1c75bb33a4c881a9e6ad57350b21bc2baa6095bdbca05f926bb416853b5129b7a31acb1b0230767c542c9888075b979d7556bf55cfd0ae5c3e21699b886c75c7a8572fd4a4809165db1634a59ccc1b3e0311af91f5560302047c435bb5006830660231008cf0d436a86286c37f069ec9a64a1f433d7e481fcc964d469d47c60ca0b3754ba704f6c907290dc9a322bde5ff34a38e023100adbc849d7341c596ca74a4c487399d04a31d091bc3783cccd37c79325a13bfe268ac1932e0f85c20684de97d4a5ada5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097a565bd50a95d057c17f038938b91c742d4d6ca2300b4c819913e39b0ede25df16e6103d5e4780e5c65cdf7e15745cc023004fb06a88a532081ff2fe228e701a4e1fb69071b9b722ed91aaa949aba8222dcefc4cae4525aa1c3bea21feb77be21260302047c435bb500673065023100ae5dee9c919c6b640bdcace58a9138e66480822d14022bac5e85522d53213554be381ddaed6c2ce65d81f2a2c4a093a8023059ec1153cc4967ac23b2f10b9288e8e0bbe39dbf3118af4cef0ccebabdceafe52390ff5d40777f81a6d9d7dbda0c2a330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303e4dbfe3bfbc32aa39643bb8c383aac91924f852eab96c6da586bd6e108789d35432f0c87efcdce87554cb5b437f067802310089085d1a521c1f4cec3b0e79f45efac777181c7cef785a0c4974196adb297265ed88707ebb380edc3e11c3904a63cc8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d44e40a97b8eed3d80a9a5cf719ebc437d219c57d43553abd9a222f65aed90c89ccdf1618215dd5d05fa64e48257f0f102303a4915f1ad260663d962ce8430200ebefb21eb5d9717b069fb4874609acee0d66279c2ef1017e69c3e075a60d831fc980302047c435bb50066306402307fe3a7c6c86b644c33d12f4c96e2d54fcd4c5b56b0fc47c041b0b8a87c870383cd4fe6dbc8a8aae0cdf8ba6f2d740f6502302815c7fe387c658ae19962c916725dd9fceaa385f54aca188533dc1f2e170a3530455b54c14c7389a10cdcc576ceb7ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067f1d42a419d99ac9f817a6e52e20db189da8609c29a580cb3caab2ee5c28afd31e800e24f55d9dfc582c73331fa959c023100c40532d91c4a36c2b8cda3ee077c5478369704ce57ee13bb7ee2fd58251cddec137d15c7c86ffb8f103ee58cb2bea3ee0302047c435bb50066306402301f5285ae60e4329d66808e7b14f8fb800ddcf32ef9dae586e0390ecb2e85cba6f2414ce53a2b02eb5dbcaa2f30d0f80d02303bb2569a62b49b7f78bed83477363dc270b5f91449b994ab6540de917176c4bc95162de45ec3452f3a2e56eca3bc9ecd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305729e6d80e9ab5c6566e052000e24f023ae7ee3da1bff573c77bb21df6d0d667f4a656e711126471e7e909f17b2da8e8023020a56b004bb3ce2aaf175633054415e4f570409e34411b9374a678b965f94c075093acfa6fb0459251fef986bf4768070302047c435bb500673065023006bd82ad0502dd6171fa4cc6d0a17cfdc4060a3a6cc1097b51441f6ec030209620e7741cbe571aaebf1e1232b425aa3a023100deab78ff4ec8f5026c839a7a88121090187af023ccd44a22eb9d1e026137942f6c4a69b1ffaa2dfff2c52bb1300455d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307552ef6b322ce1384d3798dd431bc69249055cfd1cffbbf3807ccebec26b0da6cb53183da5f49e8717bf4c7f48bb8ab7023100d5d78813e4f73154150b9a4e197b2fa8281272759c54c12f22349421d009b9b5c8e263318c982953449bd7b36b740a5d0302047c435bb500683066023100b004de0bc4875b55a748423b555e7001450d21c7613c8c2cb851ff3e29a1338a2da23c7242949413e7b4a8e08fee25dd02310088f37edebaf48da2b4d44a621fff46676d8f0da0e06dfa5ba1da58b99016755cfa9f0f44f9eafd21e84ea860619e59da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d10db8aea8e3c3e6fdb16fca4732fc4ec5859cdcd29c70541a85c6c44cb84363c4a24f1619c85108e8512cdb609f6455023100a9cefee076fe4fc071cfcb43b2371b69c35cceb9ef1030d144c86687e2a8fdcb209a792432ad55356582e17ea0aa06e00302047c435bb50067306502310091352d369a05f7f644de481248533cb1b9f060813dfca6615121773c74c52992d8bffb4615374a189eae54221aa3ede7023040f9fcda4d77a917a8525b9c68abcdb9cc8d1f6cbf0df1694aeed10d9b38a00e680bd80f5dbf5cd06e7718549e95bb0e0302047c435bb50067306502307b990aad969a631c907001f6089a18c53a1d66241e04e4ece34a35b0f755a425467f730320ca4efb0e2627501f7376d8023100d4e1e3d86730676056ec9503d16822a116bcb1bbea9e73a12dd8cb8de8bb0bc80f2a183ff7ad0f6f62f9fec8389075620302047c435bb500673065023100a07e9869a22878e84c52a4583ee7cd2c49fd5b51fd9b2e9affe35e55e35800bc437f15418fce7d72518d1e123fd7d4e4023036d053f1876f664a76abde53f35135eccaf4b820f9c215a3071f0b293cbb916dedf4c9716becaad4dcdab476ab1593c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230703debbc4195b63368329a53f8b2f3c738b6f0b996c5b5803c8e888edc4c99e42141a2630b6172283738070f103426de023019e2dea8a4e347e48fe39758101e6ac68ae39f22b12eae1ca408741f4c3857fdd4d0b8c5cad3a63c0f311f1ecf0ec9380302047c435bb50067306502304f07f3908c4506077a330081eb65f7ea555a33bff40d4f8938efe5beb47b9fb3cfd66cdb08f190837c9e376fb5e4c629023100ef26878064218841c738e90d8b22d0867007eca9d404180e1fe3dbedf9fb093520ae11a4b54cf0cefe70b3028f603c740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5f46e8930bdcd703b6263e9e4e648ac49b0a8d7e0a46fa7b001b7d69d16d6a4bb67716224ff38dc56c23f33a4ae0d540230640b7992fd1bc7c8d207c2e9a701b15eabf1fe89e6d0f2e386acf1796058f81f35dd96b4d53a49290b74243be59608540302047c435bb500673065023100a96975f66c6b69032432dd55212661b7444de29a9922247b7b403430d0ea7fbd30a02afe0046fde6292d91c3451b6335023033a740aa38771c0d1f475d97f65da5a572010d8c212631321a1bb2ab26a49bf906b98a7ac7fbeffdb2b4dd39d571110a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304112651ea5aec57608bacd5b4c47d38eb83206139f71c1e6fce0bab109abd6c5d8529c8d6671fdbfe666e31ab5e6313f023051b686bf8e46e71350e8a9c7807490e9b2cc82e2afa3977a1d8e20718cd3ac6c6abf92d01e42f6dbe4e1617f45be6b040302047c435bb5006630640230650448464ccb75fda28b8238c299a39082e12c8130061a2b77f8a99f78fd4d6a0a26fdee2b0ccd3e9f3facfae9cbd94f02304d61dcdf69b3385fa6949801bc4f2c2afbf4eb9448fb04df5516a9ea6cbb1cdc2703415382bb282049e686d38eaa58be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb4e738ed20a0ae456e4ff68e3cec96a7c951c53d27e9b7193bb245ffdddabbd4bcddd5974cd598711abbfbd288ea8db023100ef39df71b80524cced2ddd79486ccadbc6f169519778777de55287a4d24fb76bf709713a413f7c7be4260ba7dfd1a7440302047c435bb50066306402300887eb89e9b02b28d8a410667d8d2887c860dcc5d5d98edc5a8a2930f53fc668d8e8a8ea95c1cac93032cd6ed92b392702302a006db88b3be45083d6b08ec5d0b6c07897e7f55d1b64c5f7289c5ab738cb032c76e15826547fa00c23585aeddb1eb80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230632efb891136221c3a832b3e97d59048bb40fc5711a64a274578cda777500a8d77b346e41556c7d09c6e88f00233ef970230023e021d3725fa63cd867594ee7bb27ee593c9a100090cdf3889f786776a0748ff5d2142fe8f22c01cb97b4c71d40df60302047c435bb50067306502303116dc3f1e1b9ed6ffd9366730dd7b90dd5ee343151823d537da5be56868395ebe6bb26122ed805e5ba171c4026e45be023100bc86007472cf98d64b27266c7f89397956d9231d586cf41e269e114210293929296ce6ff6592593d29cfaa8ffcca1b2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e792d7e0a35f5d2bfe91dae0e0112f49326ff40799fdb39d8d91f17edbe25b028aa621bfd3121c4faa3348cea75f651023031d64340a2648b8774bc7b94c7b5cb159b8b0486a45180e26d7d6210f92343a14adc1dc932bd276e7a025e0b1ad1ef340302047c435bb50067306502310089ab546d692b7068f590674b3a9870f05941f7fa98f76adb6f17d96895bdd12c6fd16c50120292b830f678a67cda699c023070713742e3ca93d7f9425521be565b4738a37bdc7c6a4fa3229f09041bf43f5990f587b733936aba2684a1b66908a5180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060f4bc4c10e19d36ec9031cd2a3f777e82e6eb10db22f8f7272ef75f9e92b2e90b12cc97962d4a204359518b45b7371602302c0511739b5ecb4927739e8ec1b3be473d5b1b020e398b76690d231ef404ff7a8fd7dde96d6e8b156132e44abef352c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e58fd773c6988b551ee9e1adfe1374dc3ba866bab33dd190cf6c2e1f37b66bf88fa0bf8339f5fd70a8c2b2dcc41058a0230291e20206fdeba2252e725f5ef9d4bfbc8dd2bd7f5dec71c33d70af536da9548632ce903f001c172eaac7c601a4fb29b0302047c435bb500673065023100e5575f7857716cb95bc473fa5d57727ddd126169d12872b89beebd4530730d150be0d6f774f95959ca804b985bb6d77f023020e108e07afbf55900ee837341eeea2f441735b6eb14ca9a362c9e32aefdbf13a4c88c738bf7ab8c0a16807f8a88dd540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f78f3baeea65e59fe473852b761532a337341a12947bfbae3d2e175226182651347151018f7e0b4b3da05d8b07245c8b023100a01e6b38c1aa90bad97deae7092e29ded3447738ace3e605d04a9d8d9279a7ef403201b8841af8ad5d1a273cf91cf04f0302047c435bb50066306402307a9dfa76a6050f87c409bd04f52191e586feb3e9c7277014469a71a03285d0ae0617992379f119af50de47413efad5310230794fad5f4fa26c585971ca886b1b1f0c66396c532422e267833db233a495fad0eedf5f860cb99d0336eeefad8e7788400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d49f0b9cfdd32f585e24c522d2b8249e9ee58357f1d5ed983c47dfcd82d80c644e39f5b0f3c4914958488c7f740ef676023100ca41d2767c69c689248a329e6cbed26fc965bd11b7971ec3bb760d5f1a28f002c85b23e1d3eeea8ba1e65c4583aa74560302047c435bb500683066023100f82466e634b7b852fea428ad90c16668bed86b74c86481327ae24e5cd8aaa6e1f84a4171e891a1a26aa8b4ab77c36e09023100c3d8d512e817d990caa57e4b09b524310db97d21701c91a33d94f8d9668583aa781f4644fc134689bd36dda529b2ac650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e8acf3aa1a892d7198a576f5c96547301b2cefd26a55f2e1750358fad95e10f707c973044a0345a4046e596836a9fbb02310097c5dc53561cdc1eb2001c75d230dc0fe7e08b2026bc4a8681d888e6dc8436bdfe8a520a0d469db4bc4e9ef29f72bdaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304f5f68d03087127399428c5b1c8ed16f02829b57d5b98e2ee34cbd238e44e551999769e86bf9044b53df7f1a77d1adb602302646f35429b6250cf6bbc2bc1097c81bbc4e4bad3533b2cc06d0c257ef23769153cccbc038ed7a86b23db769c533e36b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ccbe119a733cfef7696b524fcade0e48cdb15efd7496042d55622ac5ac7bd122ed27317a7d345511ade9e494660e2ce02304dc95aa42b6c2d8affee432756191207c09e7e872ee3eec5dcc0970b09dfe1f64bff781c76397eccd15d44517ec37f5f0302047c435bb50067306502300ce8f7e0cd2c977dd92aa76e85d7302460d243f50910d019166723d764db03faab9ec0a96a15b5fb0dcc39e49f073ad80231009e1832a4951daf66b265a643039367f2e4f4031e23b62fe250760af63119b191d5f85291c13e955f1f919220e35b7a0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023033e6476c39f4ebe27f35c35ec631d6115cc72d734a727e321b18e55c5d1a532c23bc273db514f085b353db8f479ececd023006923ce5e73136fd0f9269ce887d7f1a4a7adf859e2d1bab02737504eb6632939383ecbd316a69cfc891fe72deb9d0fc0302047c435bb5006730650231008df34334ef570ac96c6d5182da9a2b9f2d318b5f58ba299cb811e61b250428dd268c6016344529d950014a56057928110230455ee54f1820f1b9ddcfd22492389da3ea0f7ea7b1cc1fe46151b2e7b27e5dfb228d90016178a0104be7cd9c0ceac4510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b4d14e5bd25cdecb30747c0838bae3cddc69fbfee94b075a68cb811213e34a6fa870be32678fc6e78ea1a38b85bfef4023074cba6fc889536fe17e2f650c9d77a5e6cc046438f4bb4d0dff8d03b714338087aa1f592a1f99c03fc2bf6f35b68d31b0302047c435bb500673065023100fb9ef441d3be776a6ea29372bd62a13235323b908dac33f165a0e1dc7e72472515fbe75ae1586f03a4ab8f9492b7fbd5023060c1467d3c93b676774c637dac32e2abbd156068617364118ef2054ed1edc7599fb63876deedbb48fccfad4b6c2ab3030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100840778f9409f28a25bfbdf45f37d25367aa433a104ff5bb93ec69c234267bec9b54e5fd1e8b2d7126ccafb24f5c380c602310092abe8b2d966b0d4a91bd1bb06b0b31247c998de723469fe02e6ad34491bf2a2707b44ec5f095bf2cafbcc1c35790fb80302047c435bb50066306402300432c2845bb0272e0f1abf80f0cd98d0b9704214c7427506e3112e41ed4e0faf4fe1473a313a288feb9279ea758fa107023062cf9a3fd2d03f912bad214a767f368b75bacf5f63127d10ab446230e7d1c2b5aac98631bc4b77a5b18c8a08a1765fb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302bfb275c7cb5737912e4a10ed78829299070719b8e4af6fb24059f42ed3805cb975afb2085b72bdd8d9eac4051ebd972023037161b50364691ba6830441fa847f57b076646362cca25ac0e81eda58b891c706a682bde785070cbbbd6c59f004cfde70302047c435bb50066306402303b1f0d58090c5f4fc656b519e9fd93e6b138d8f4bf40f262750b7a05070a75a72f0474014559b525928b1f0240bd590f023031e507eb7eb74669626354894609eb4bb1cc3252f55c606278f848198eb0798cb5e24d5bd6f32a2d010e9471f4fd8b180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f17e61aa11e21c800da7c4fcc5b976e28bf70b2e77ded2076f72fbceb1fb537eb6d623a7078e97f4d127d59f2743b9f02310089f137760e33ae8f07e7e61c4de44518f4c325da2e9bac5335a578ceaa3cca2519e895c052085659084c0c78ee9bd5460302047c435bb500683066023100aecf706dfb6909a4fd253ab4ff4c93a30424a44fc277fb9f91046b67b8f3f32a6f3af7a6f6ae2cd0f3a38b93ae306abc023100e901c209da780e45a6073cd21c3328b97f25339722824a2d7531dec2a67e9c043ffd0dd0e5ebb55c894cf5db63f6bbe80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bfeb295a5387fe94e19f238b5021da8b9a0033ffd5ad068e2c7410b47b30b94397d3375eca5f2de9e96347cd9bc61fba02301f23444878d92e7a391fc66a588aedbfc59d9486c2ef57b1fe9ad11a125cae2da374677a26fcce5b90327d819f2305550302047c435bb5006730650230309b9843cedc68cf7d23e67fa086462243d60019b59a0cf1a1fb072c971de063f43408bd79176aeeba850de7812725b7023100831916e167207d151e308a0732cdc4200402d54c072c4377703b3157e7488e43f7dd87b3c6684f6815d2388a6dcf14850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230217e049259dd24ad4fb60aa0b4e2e93cd205e4f66dac020b62a5a1fdea582cad853f0c25b80e636e360e8e115b04d5dd0231009df8418d533af8d84926224a6c5ae214a406fda5c5d5edb77b7f8cddf988ae192cf571996ca339813ec182dade3201da0302047c435bb500683066023100d157f44aed8dcf2d326302866eaf02128be08cfb0b426e4c370c03a0eaa2c8e2e7e5eafe9119c6caddeb57dbc735cc27023100a8b3013b392767f971cff90cbef0420ce4b6a8286572e7746162043f6f54affa07e76da36a98779476a0523bf7ced4cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a87f30dd742c41f4494a8af3e8c6b7b70b51c2322a509e48e656ae076a13c4e6b0ac3d46557caea04dc9c84bdfd9db1802303fd5ba96ec6db98891bca0a7590b27c566fe62680bb512109edfa0f6b0e0c638cc12ccfe53b5fcecb160bed87d9b3e4c0302047c435bb500673065023014900d5f210a341a406bb11f7edbf200d56b7c942640f7dbd54f004f3e4ee81574694ca72a1513bac44555e51c1493d50231009de10f17d7828381de141b2255c8ff12c9bb1355cf3fc735e0b826836b55b31bf023223abed9a01fba79ae51fcff93320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088e4d0ed7531243ef3837b5efe4a17d176e14aafa5de199c76e7ee91319f8115c43c4982f8affc60d93d35d38054ad830231008f9c154a580d5d5030dd4aff14edbc027631fac31569ce9a8f1f62ec5e4ae522f2ecab308df382075c841d2e90ce40cd0302047c435bb5006730650231008a7699a80b58a3edde27e8998d85367927e978304e2688e22fbb7728cfa1c6466f5c010f032713046d66c31b24de82a302306a2872aa0197bdd13b62c4b161deaad94ecae356be289d95ce16e7ebed704514ba9607a08839081e642302a95fad60e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e96f9b373f8a3087cb7def5954bdf3fe2b486a36ac5ae018ede5e8a4fc055ed62b6abcee32e2908e8fb2aaa22a3387bc02300d55cb51f9ceaf458548365dd8c55823a99991b9cd8577aaac70b46fb92f8740c712b4787ff20664bd39cacd74d08ba10302047c435bb500663064023077f2fe2bd544b30fe5f1b925d811aeac602670fc64689b17e698fdec751a23876da29a2dc116dd6c0fe52ed77cf88ef8023024989b0d8b12df48950d54acb70f040c223a55d2028ce57da03a2cf49011ece8d43b26fbc23586ba0b0cc9d778e5776b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306e8eed857e94bb7c3e48eff095750ee2539bbd6697c9c887d7fa222a32f493e0edb7951e31bd70c8875362269a0b92ab023100e506eca9b58b1b609f26d9f89ae692e2f9f94d33394bd54fc6cdd8698db89cbb6284695386089b9c192e8b9ff266611e0302047c435bb500673065023100cf4b80ad5046e5f0a7db142306922009754be345467f0091ecd8bd5d813ad15ce49a31dbcc565002ed296963ccc0b64f02306db9a7a2432b17c5fa33b91fbceca6c784f1fe2dddde536a6b3eb851478ed6793bfa4739103f673f32b80400b2c4a0340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056e070a39e2dfbc10f481d0146f908954800fd64f1ea1b240e83b8aa4e08a520b1a48fbfdf713ffa5f66ed102156168c023100f5b4fd543b46a4ba04556f3e6652eaf1e8123d040b34f5955593bc9f5fd1b90e6c90b2735dd92055de368285ac35a47b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fdb4bfdb0da3d7afdaadf239d9348d52a27cc4ded45bc58c1ff5ab10439b50e84064c68ccca17400226f5eb024f5c8d602305dbcca3d4d79fa7bf342a2012fa1e2584b9ef50bbe340f7d14d94808b4265621d2c3f5b186cc69a483edd0f34e870d950302047c435bb50066306402303b47fb3323390dff5a47ef783ed3aa4fb5fb87ac76c6aac8fd14df49f572f921cfa20abf5bf7ddbe6870e463e463fa5102303161ba6d6cda8a55f04fb56604ff71994083042e9a23ae3334b37665fce778470d5ae2d16fb8cb8d486c6010defa34740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306935c9c9399cf3c90a9f2538c020a554974a6591f14df09e773fd1d1c65fe77862f059ac1fed885c376953173c4a8ba40230450aaa7a791aeb14dff782d7b5da74d80010bbf3bdc865719b6fc807a361d4bb823d0dedf527e7e71fff5b41265ed6b70302047c435bb500683066023100f9c9fe0e55a8fdc034d0a34e136d35f64841b86664663200634a75356a41369d8361f97aedecc6429488414dedecf98702310099cef4cbe520e7bd20dfeaad098c6a52fb96ebf4bdac4d64d4f8d507c760c4cda29fddeee640ab7d26e76b8a1ba73d930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230431908ea91cfce4a1cb46447aaf887f5ceba0a6fd4296e16465fc1bc6a8c46171c7a56593c3dcef5dfaedce6139b789b02310089b7f9bb86c3b1ac3ba405848429d18ff836a51261c9ec51dda87e1b50b64323039ae289f570bdcd895d7f59848b43750302047c435bb500683066023100f13f5fb3dc9c9636c07be5b20876d6f8c73fa9d5cfe1aec82ce2a686f3d002a14fd8c661753e1fa6fb08df246e76e009023100efbae124c5c1db01d0e40558d549822a5baf2379867f6bb59fa3970a2ec2789d28e3973436fe0562998b5dfed8493cd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec647eb4c3adb814b9ac369f4c36ef10b214cb686b6b110efdb862593d267eeb858387c43b4479e66eacad0ecb3d1d4c023100e67391c3c1485a6a4f64f38883215627ce29eece67226c859b93598065dfbcdf3b5feb5e14a3b8c71752a0bf9ebdb1510302047c435bb5006730650230785337147b71d67f92d69fcb4eda996cb5d93ac1348879228bce7ba4e3b6bc97a81ccf6096ae84b2f7cd7a2da3631464023100b03c48e429e9f7fd00720696f26c1b1f11a7ee21ee84557de8846b686976731d77d41aea63700dbbcd7b290b584495410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004ccffaf601d02f90463c8463f1780462ce875b6e42ee856743c24148b83c4b4205c1d2e60faef594d2b2ec161e8c2df02302a8cb6f3f1825c863914df2e5fe738ffa795dcf55bab3f9cccd63a3315efca5bb512b523b285d19406136132881a086e0302047c435bb500673065023100f53dc46f2517b7cd6853c6866b090ef651c332cd167a14c4e9f39b37b09433890a61b6fa4d0bf2dfffb7a1a25d0b7213023039225380a7e147a038f2ee8276ea22b9d1a0f83c2e2f8322069dacd6ca5f9ffe1edce640934cc4cb679f936538a95a7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305755e2920f7bf97d7da38b4a9ecc217ba74554b4e8547d17f3bb684ed16a9ff420da813b1dd1d03829c96bc092834785023100a883d91d506817c53aefdb959b35d2848b473b83999a6ed6499dab18fd5ee4718e52f8f1e4cf9c84e9ec84c30f23ae1f0302047c435bb50067306502302107d21225b86c44d9534bfdfb3d2cabd464f17041ac502f090bc9093828d619f9121f7f92defa79d8e57b7c680cf78a023100e22ff6d8da15124cc43692d15775a8b516f784f9781a1ec132460c3290c959a0020b5c9210dab3557aee446443a1aada0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aade04c9897dd587d85b4af8ba9f39934574a330248e483a73d6e3e3d14cbd84f3a8cec53cbca8e97d01a2ed3bc7604202310085bd839c66f34843c1bb75a0ad33dc88a0ec99b4e499beee27fc34f0ba169b722179e1ba14bc3a4c6672f1e0c247e8460302047c435bb500673065023043faacc48c175e2e91cf0aa52447b687a8315d01a5f7e75a8cde6c1a4998ff6b377139fb81e9d2218f047931dc5e7b42023100944abc5338e3121cf72a47d0cefe96b782b60fd8951a3c335df19e1b99807a0cf4ffde4a24e28bc59091b028d6fcd8fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d77d88588b1efa5a3886da5de4d5ce17ba5f697c71f490e754483b0000371ebf99a3f7c92126c1daec4b899f65c6111d02306b0dae70c427e47c08630e10cbd6d29a5814dabbc6223ceaedc78307db1d9f9dec8cc4b1de5922c5614c4381824c3fa40302047c435bb500683066023100bed7b1f3d5a27f3ad501626ced9e49d1cb4fe64241a0468539cb1e5088b705125739133e413e0909fea0aa1c50826757023100d6e2a5fb9b1b137630153b59761bb42dd26ab032cfecc3abc3c196eabce50f80158e989de531f88d487d2f14ff3157bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e096ad19f7bdbb9bc30eaa47b4183dccb90f093b2a99b484d0f26128e0e3f0dea55cebd32743fad3044fbedca6c1b36023100a5857e053f2eb9263e6f60775c40f72ca71e99687539c0a3c7c35c39f20f9fe2a33b84af3c7b17088a12b2bdab1a0d570302047c435bb50066306402304a562b154ab54d064731a9dffdb7a74e9fa01214dc4a3594775a69693c33e75dd02eed9d1eea9784838dfc947f0a654c02300d3f155a92b33b8b09b0862e45e45500fa001c459fbf5f6e403e217fe9bb5eed4bfb107459994f63c7720e3fbc2815df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c85a8563385389f047a1549606e1aa06ff2e648e612579e9de0682740e5155d33d0c94aaaf5acda8b34606cb9c1d767c023100fe5e015c1443d581833b6faf2328f3d02e4c0677ccd05da8a8241623c68fdf0b318f7a28e3e991f6b88c01d6551c1af40302047c435bb500673065023100943cacf72e06ce1b662488226437ddbd4596831e5c777f3904bf244f539136d02b9323e5560313772eb0f5fb9289961202302cf2c51e1a71b9b11c89071f51697a964c1dfd0964f2978b1543bb318f871b3e76d6ff2ff9570263cc08dc7cea4866730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f8a46a97d0d09eca8c8b853cc7410f5f0939fe0bcc867258e68ecc8b3023cb38e478eaf789d9b0d350d6cdfda08a7c4023100e06aa494c1f295d61401177b2bd5e00e83434786c7e9cb933df475304bb664f5334f09ee6a29b3b7fc2ae6decb27dd740302047c435bb50067306502301d23421c82a3f3bd0068c5f4e154b29c0bf75f9cfd763afc7d6ce6e1af20adca46589af317d4e28e13cf052bec34174a023100a707c6f7da690fa3e89c6ad64bfc725a00d15b071a8136b63f2e5081cac2573ac1e8795f00e3da1cecc4de9d62e107cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb140da27e626014bfb40603191a36197c90895e7d3571909e690df05f31934f9aed9e2b97c311e51b599e819ddf46fe023008ad4fdfb6a09d317256ec0f2bd6f22b8112a66aa63f67a53e468e97ffae979ee5f51166c262e4fbc105b9d44e18fdbc0302047c435bb50066306402302a7d7738a21d36cf01423e2c18596fc5462f2d93886c8b29c0591857612f4b9fe25f6f2e6d5e6bb0fcaa3615182e099c02306cec43c9111f0d82169b5ce3e1f0607fa1911fab2f496fe249656fe0759e67a287ab44436dbf92181043b9cb16638c560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027a6832ff951619ec6edcfd16d0b5ac86c581d5817007a3a17aae3908b4dbb7896d82931ccc406ed8b4d3a530fda119d023100fba1b8b93bfdee0fd7db2b876975fa9610c69d0813501b7a1ef1d65361831a6a993ba6f890bd3091bb18b758501fccd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d15b1635563aa2ef3eeac46d67e6946a1214117c0f59af0ff85c125cb85c44c45e9c142893d99ec7f78c085a5f9c21d3023100a3bd821f33ea4673fae6a4c3bbaeb1e53adcf9c84c3659a5810491c01fbe4055389628b985fbeb216c91f31d4381c4ae0302047c435bb500673065023100e01b86a83a504e2359a1a961dab55bd47a522a5ea953c23bcdf6479bfcf82dff67d97963d46e187a81189e9bfd006bff02305a8a947fc128515173df1e94647a1972fe8e1154f6f22d879d0a87c0eb0c190b9aaa70d4e9f2fd3f0188b0fef3817e780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009b921f70451084df3c8e79491f3f6c9dd794bc50e99c3b4eb891101d2c59484c9d38535996b28ccef43ff8d8cdaa79f02310096290e08af7e4979ee997298edf7527eab753e1ecad52a36954f7b2c78bd206aa25135c88c66fd54a24250b0496543500302047c435bb500683066023100c4b0d0d440b0ff50031bd2f19ce97d59d5d99422f70d25d332ead5b64a661740231fcdca6613b3ecda97368b18ae0105023100a97afb36c3d464902cd5c1c2718e33757ff7ee1ae9661c8b51b2530aedc49a516facb9ad375a5e56262ea69a8d9559d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100beaa564c3d47fc5b89526bdf91ae3bb8c7e931b29157e6a456304bbcadd1dd5e07aed67ebda052a54eef88a11a47a754023100ca25281f063e3d4953cbc94d7585cb7b965354e1a609b7b5cd4d02cb9c116f27fcd5317d6bc0b1e5d1ff9aeb1e1bf78f0302047c435bb5006830660231009209ec26ac7e037c58174f90f30a21a99a62baf382d865a64c09e73a61d283c5493aa95c21e75ecad61edae97bde3d09023100947d26ba207af0bc9309541fb4a1c8aafa00bccb0a84134147d49b6ce7025c9132adcebdae75eaf180cd61c87c21846c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b21588c51c6ed7ebdd8e26abc6c36362f8287c7c4e79dce4d44c3d022c8bd9a861f4f2fbced77fbff88497e520975109023100d4fe3a0696f8f2b8868bbac0d9003ad3ae4a468c076390d77c7f8a5cc1de0ae211b7c3734172c7d53a22f72bee241d360302047c435bb5006630640230728e87871ed1e348ac30729e0a0adfd77e7453cd6a526b5a4248498a13b706b6f0f4c874b5125fe5574084ddf0d710df023023150c683be1773f31b040a583646e58753d6c3d3801b8ad48f6c9ee57484c3d43d43234f0f0e3887a8c89f204d0eead0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303684d1717d1a15cc9d886d78e17f20c6143135dc1bb7f4bc10a0bfb9e62343b936688b9ff60e7d2725f90e3fb9923f9f02306233582326f8f64b34bfe3ba0cf95bd770e9051b2f9eefb6f4ae796a8b9708120c93bcc33c54ee654eb68f7b0f4add800302047c435bb500673065023100e21051c0606d968d74ed4352d0bf77ece614a8d5785b1a032fab507c1799c52df8365bc2e3e808fa47e54ecb1790262a023079bd5e2710d8ef3bd81582c923217d2e31a57a3b10adff568f3a8a52806592965cecbfad71938977053a0ef08c37ccce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fee7ffa542b1e3cd2737c87d74800f95c5dc44eec467007f6235b9ecb5d0c3a9113920d591e531a43dd62d7924715dac0231009a98d67b30bfadba5ca69603d7d301baa231c36bc3a619d1848554ec5f75c92b4b1861f7acc4319c522fa12dff04d22b0302047c435bb500673065023020a2928a133f864ffa69debcdd9c204f2b18101c133a717865551fd0ae23a7d0782454fd49fc0892b706f63733e54c32023100878607d32f415141a6c93e6967f5cd5bf6bb9c39f61aaa916bdd9d64f3f7574af5c233fab5fe316dff076266d2a0e5820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c93b0506ac1ffadb6db05f5d2f6860aaa5ddb3470c0204d78c31c6ddc10dcd60476a88b2b9121d921ac42490faab221602302e588f58ef5315ab2df76b33d86dc17f223d857bb4973684cee67e73a0bdc3d085c5ee56c57d2391a5aaeacb7470d8280302047c435bb500673065023100d684210e0a330c0df12d5c05999e06f4bab3328936dbec8899e574c83b8a21cf4d353f0c7cf866bbdb8dfa338420f610023074cfbeb57a3d5bbf748ccefb1c2f1ffdff02cb1375f75e9ad5d564e7096b887e11fcf8fa9d08f44af45b4815ebc794750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd5dbdc033ec0ca3d62feaaa785a977c2aa23e27f335d0d1ba137ada439d3955a4cd3e5cc72d1db82802481e94aed6960230262c67a7a1fa632ecb72b8dbcfef7df95c3c3200451436df28dc9ab1cc4467c62556834eec51d5e9629655a6f0eb15780302047c435bb5006830660231009c3b551662e9e22e13e8b87f79e8b793a5bc0750d0f4d16e1b2e6a97b69fddbb30a015ddefa66e6dc94e284cf472a4950231008044f192febb40c512cc7f09a472a550cc2e0e464d2b4ac79560579c1533929d1f53548eeb10d4fc966de15a9243507b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310099d57a1c4aef74ddd1fa69c1447798e4d57b9b28124bcd6255c3d77b13f88841ebc9cf06bd881c22109fafcbd254a39f02300feced38d0ea033ec6628dd31c70bea18aa9bb237fb43288f5ed10831239133c33436e4a97f6893c02c94c61a1e7872c0302047c435bb500673065023100c9c0a92d1409f094071a249901533ab82f78a5b8f482be2fbc1e4f961c3125d4e7cb7da94e9420e29beeb0ba9f3a446502301127a375d161f847207697936b5f34733935e8f6bea31e2153869bc1190294acc3733f49c2d544d17d8e9f249b818df90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100df718a343cbc8966591910e6098a6eccc9d4e911389f800f966c94947f32e9be59b10d8ea70101fe08a0ad8e3f4cc818023049a6127381e76a3c86347596d2b2eae0237ded77cd67e6f1012b7d7cbc830e5e10a837bd16169177769e80776db0a7620302047c435bb500673065023100e5a1b29b19187794adadf8de5a906edaa7bb7b0424ac2c234238be416ebb2218972c145ec57b39c9ccecd05743c5b81f023035cf4cc88166d816f1e84df92220e2e3a13b066f857f22e213db452ff0975e6cd7194f05c602eb4dfe59bc7ebfdd1ee40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304141ec5c34ba5a18382310a225ed9495303c884591fdc170c8293bc8be40196cfb20a449935c9e15d8405907749a3e6f02306a37d34dd51237f26b6e7b09aa72ff49b1a3a41d7371d6b71b9c911b825967ee54d1a24ded37c0862dda0b8cd4fccebc0302047c435bb50067306502305ae55779509a7c38736ba57dd305d8623ea57c65227b83aece3a23a5ed7aba4b1443d85bdd68059813da79314f683c5d02310096e9efa8eda320cf4db45bfa2d15d662a8b62f0d4a49072e632e2f768d45fd07827b37481e1500bbda5390117902ca510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047ad120099217488699691f099ffd37538628ba86ec18daffe9dcdcf835c6b0e93479a29291adb712a675ba0ae49c4b902300466ce95e65d19729b7b4208abc619db0badc25e8139bfe99006b1a2f12ac27538bf4ae9ae8fcdcd8511cc6d6d77931f0302047c435bb500663064023024495c07a930d5356b2d7d15287ca7f8c88d04f2871e8cd260820101d70d0a5f6037372fff85fc237f4618d5b8e4b628023008bf0068d50b5a22e692c74ccfa34620b7f1b695ab1eb0fc4c9be1dd0bd6e3fc9def2faada470341154b11d54c82dbd40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f3635bbb51453a98396ac22833405ce2cad83975de838ee6cc1015604b9f81c5b45e65847a22d4cbcb93d8f18c522d002301cc7ecafb9d2566612aa6dcbd3d4f6ec8003e6f2c0afbd2c94be9ba75c837128bc8e40a06b1d38a68ae793e9f9a092260302047c435bb5006630640230509ff48976755bdaaac86bc91fd6c59b48c7aae930c51dd15963ba7d63e75d13ca64cc2604735884be9e37e37cc56abf02302ae0e23bc92455a046aafd1f362d0ad2c90390c4336945fd0c58f794ff5f1cc63c8e20c80c86fff880d4c8d6d3439e890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307b81f78d3b830587f0686f301148de8ef7ad1df6aed7eb440dcaec842c5a0c523efabeea8134694c4b206603eca8e1a2023004a37cb18f2eb79c88cf8f6fc957f42375e6ea42db1748e4a9f5f622f7f97710bb45175307ad7d3406c36b17536bad9a0302047c435bb5006730650230467c3eadabd7d89cedc9b44b55cec8c6c651c53b773553f4fd8662ee9aefcf00c404d00d644c296e0f2bd11e95c6d324023100d8217a48595bbcf18c236b20397ba33702aa1d51218f06308831531b2aed5c6b29830c15556fae5cd661dc868d3bfcce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023053b0ff5f195229bead938c587244c479c86a71760744654d1a6c862eab49e71ec323d41e04f54ab2f802582b78831eba02301cf9f493c37d3b629310e8cf51c58f14ecd22c55d3b2342711abd7b763a74eaf0f397a93c38fb9a16ee77b0ab6aaa3700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090013ff92230055fd1f6f456324ad508e6ca64465b9ef77eb5fba3c0547c1ed5b975e29a1554c04923003b114a78111e023100c33d0bd663d625a8fe7fe5ff883b7a0a7fca0645c241b7c5a3559c54ceb23d8fbc5722d9c9b08f17609cc40090f215de0302047c435bb5006630640230088c0cb8b10dab6b979e4291372d7f777e6b3e4d8b259f1212e31fa1c72ee73002f1f390f904ed6d39d11235194147c602306e2783446a012e51909a43148a34e808d9ff2ba3c2b68e73c3350233b6e62d51891487608b67f9ed6edf9fc6c383b49a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020480b987be51b064e88534084a4d36cc0553e8eedef37919c8a552259e020e314fe842308927ae312f963d5fec27806023100b07777f2801e8a3332e7f9ed590e830cac56ceb34f34f3040a00aa8f4080554cb2a62957fccd6af3fd12afc2f2ff31c30302047c435bb500673065023100c632b812c8f6d81fe539a80ac2f4d9a6f1e20363421904ae72e410a2a4b99ac1f7fcfc6c98f4cb0132feab6743f87133023036d8ae4ad9f9eaf77fb5b243c45f53ba668d9acbbd2a2eb984da340bfd3b354902efe4a2949a5910cfcac4b3490ae6850302047c435bb50066306402300f9b72c4842329a56462bce90da7c25d13140734b153fa440b65040dc3d0a4323fe9bd443ee4c956c67076cdeb508d6a02305db37d89d856e8b9df35bd3db125d8a7cc3717943234127380eecf697a637fc2cc79d8af0737d3e0e29985ebbf423f180302047c435bb5006730650230451253c7d70b3a952fa538822f3ab584f4533770d5131b6b2e0d29e67a704ccff3dbd4bdf87e0587727f278524dd53a4023100d4cbd1341d45130b35583a5c0f3a3db17ea621cb19e4954b2825b99de48422c6faab80db8ab8406bd6106a4a9db1fc650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f6c1777878a353d637580a558ea99f04d8916ece433983997016a7f06d9cf663b11dea969f86af29d7e471e51d0f647d023100d0712e7b30226ed8afa694997e029c40cae41d22d3126132832420a06f15a5e6640e6de203bcb8802b65a6614504d6310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae84f625bb82a4ca2d16106bb0a091dfb3f6a98071500c91b1cddfc97e52d33ca6645ec0a5565c745787cf045375f7b2023100b1c04c6599eee137e932d87fdd7738c64052c00b005f1096cc8bbecf47d8cba0f444229a807d57a7c17351d8344004070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022e60bb47bc260e22a658f4f41b8730be5f8617c9a93813d24ba76d54f0f4b6b5912403a06ac5bc16b8c344b35b9eac602307f8b2f1b211074332cc048f96f388bb0d3501f42eae5f0f336f6be4dc5139d7c503c4f84042ba8425eeed81596b73cde0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230227e4dafc828d4248372881d284922c36e94b47183a741ccfe325d2a811ea8adca771d0d864ed0a610d98fa4ac296ed60230329f0eb4b4db4cfa62bbdc35d0b7f01483aa60394f2ba5c2157dff71b6a9ac5702712054adcc8d9db94cfa98f3d80aa30302047c435bb500673065023100d570d0b6dfe647e82d4d1bf4cd3f838573cbc5d2d1ffc6bec71c712ddb8f26ae9d302b7e2324e54a2e15ca52d05f518002303c970743eae99465960c08af76cd657026b133c70c3c206d285198c5c0eae13e3eb65b96f21410de524c819f0bf872ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6887ca69fe30fa502d79c0438ca2e5cc82e89487c7ee4a46793e1c598e87964288af4701f5f4cbeb06e857e906e5c9c02307c06556c3955e65a5776b2e428899281cdfe983adc2750e0c6cc001cb1786758c38792689df6281dbdebe9d4596ea41b0302047c435bb5006630640230398f2bb8e388a1386b8afa0e5e975336faf14779912e34ab0d52929a5adb83fe8a3d07a13ad334ed50220aae377cc9e102301a9714da22148e9e6ba118e8e6486f86dd8b5d7e44f3c7a74b805eeb5a891bfe37a051e203a08df97fa4599da8febb400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c03e48c2fdf2c61315b3d19352fcc026c41be01755342cbf68d5bdb623f873fd835637055b6eac01d3864084f927c3e023100b1451778ac4c01896ca7d8a99b6aae80db49a58153071a36eb41e122d4dfce47adf56296084f77190b045f731d194d520302047c435bb50067306502303459b4889f99160db142d0bacce65f67d17827b40eb6bbe3f74676883e828261a68939b596b05742ffe732bc74bb921e023100fce6efc9071b76802e560845e40202801dfcd3e50a774e804ee4acd5485d57eeceb3112fe790189f398e9369035cf5df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f7250930ec1d7e2ddc6923a293e52959b363ec103d99ff7f9ad03f4765bee18f7b974918028c7b7005ea2f321b2c985023100995c662e2119a7baf049a036354840c6e1fb372ce86a4ac266e52f00c3084384d35288f2c44eca4ea9322d128f39a0350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2280745fc05337e5f298ba53b5aca9e4bd5588df72c0b8074576d57fb6172b871568bbffe775ddb9b404aef8dc7ff3b023100a0a5e3dda0411ac820aecad858c4e1c7671b2b0efc8007118eff0eb9c1ce9ca3cd5a611d1762a39ff02339d2e7d1a5ae0302047c435bb5006730650230080750ea7ad2b087d87681c578c2d9ef60292573d019ae1591b49afcc24502b674001acdacb840a63bb93279400890e1023100a616692c08e096caf4eb6b851d53d8369dbd1e7f9296fd7f033e930616779eb50257e176cf9acf9bde4a989909d58db70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c245fa3422b9b3a8721853a0e938581298731417f6a1d638bf2a88817e56352dfbedd126d396a8809d4222a519c922c8023019941cac61535700b8c103e9aca668de46b0809b8d60b5181334ac7470c04521798425b43e5f04970bf9f63092da47750302047c435bb500683066023100f7d053aaf3640a43d3c41e3bf885c297792a7ef539c38f52f1d4f74881dd4f6eb29ba3295b4e95f8c19fcebd9e7f1c2f023100ba3735a3d55e3c78f5a5803defe27cc9a629ec5e588f9aa9183dc1515a79adecfa6b89727919adc07949dff28c82d5760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230586da51a82fd5853bc29ef9f65594b00ba30b081b231a6e718cffe6c00c2a0ad4455e5b3a942aa3d4241f45f47fe1e66023100fc9138b7ac1008d3b021bb6ebcf5952da65e1f17a47dc385422a93598fe1a9cd9d30e3d3cc4583ef925701209fa1e7360302047c435bb500683066023100ee78fa7a60af39dd571ef8739b9731e2b698b48ab0b7fa54d52d482dd05c4c3cea9d14aba2ed287df410cef4273f424802310096a7ec9ff61d2876f38c19a68a207e14ff3e2f28efd47d4d0009d5f65f61a24fb82b0bc4dd983d59343debae808be80c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301b88a294cc848a4a531b958a4d96cc4aedc98b48faa021541b15a06abe10240908904e29f8dc2f2ae3e42392b5c95136023100ef59d72385fbef5cbc8205390b3110207f9b70f80a930fd4916366b04b24f2bd194425cad29eaeeb7451fcd393a373e50302047c435bb500673065023009b00ff85221d4f3ae1241389b43077ca34a97a468672c7773e30f7713639dde481e2df83a885d4ac280fa3df45033f3023100982934466e44f9eea4dbe51a92db9e970348fbce16ccaafeb36149dcd45a1c28492ef5a49b9074f3f6b80f612330723a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f891fb9a1229e636bcc9f257b2955a9be8f30271b9f02b88c34e2a19fc41fb176dbe60b0f1da8ff60533c1e1521e488023100a30a50f25a5b648daf2b7998e70489a9218ccbf8b3356109bb82aca8cbaa81565b3c89c2accd9b8e788961650bb230b60302047c435bb500683066023100aa6d26536e40b2dec0dbc609a6d90b61680067a22269d6a5df73d4d30f419764bbfac59fad3b805f200c5ca86f1ef67e023100d00f972f2ac7a30273aebc5fe8040f0d6e2755c2799db39d8c01b8b5f82ca642c6bf06a42531f3952fc2d4af88cad60a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c32d3df457738c1c91f6c410f64302cdf61cdcd55b4dd7668e2dd423e2c98a794c2f8c03c03887b41ce7dbd208add9d70231009263c8d6456a67a76d73ac581ee6ff53fbaf4f0ec3cf6357fc387b4ffa0750660a30a7e6ed2809f5d9f11ae49c3f45e40302047c435bb500683066023100faf876d3f85f4cd9ec6b20ac185423709aeaa7c1e9a5dc461efdff160ba99b837df083123e049f154b80e3f720e3018e023100e674e97daac9eb95061310e9ff9d2a36d2b4883772ad177226d37e51450b5fc959ee960cdc38c747c9b4f753ba8db2ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301b349122ab7473e3b5e673dc14f0e47af95814d0bd72b6a91ced2b4ca5cf253e61220936234b317535d43deca6986188023100e4e56e8653972a89fcf0382f87185122a030784ced6e3cbd7b750448d59713f5ec7b920f0ced9150ec865e18ca5ba1370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010b36ed7fc3660b96df50ce7e82887643f4a7788c5d5c516198d9aa7b8d12ea024ba0944f0fac4fcb3e0b6d02f49d9c60230761bd4147c22942892b43b1a5aaf2ff63712fc3611daf538463a9b1d96e7e839d03cbf9e679d330f9e92c5b54336b9d30302047c435bb500683066023100aaca6752fa3d5d8e5a9e80055fc941f6f08017061fc3dbc767c84427bfb89bc5fc6966be9d6179a6c149a1c81c8422ec023100b6a481572eda466929ed29f139ca8a283cd9f59773816d1ff525c70f7ce21d505eebba66cfbed9ba0e95d9f30473783f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306bd04c2bd499185724473e1b76ec77a58c4f02aa008f57e84633df48a0e7788502ccf9ac4c8091b7f6a799229f72c5c00231009b7d2a5ef22213959a0f852cf4e101cdf775684622dd0dae1c2377b90e404ab63ee3d4edbb4ce2fcfe6b7b77e923b2380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd5c9960c774d1dbd4b9d410b12c70ad7306f415d049b00ad0ee4aeee7b931ddf01473cd78b19eb46a985aad5701f59b023100fadf2dcde2e2dfc5b12a1e28bda434f866748ca862086c1549381f9cf2812deca195147e7bc904fa5e99060369843c070302047c435bb500683066023100be2cf641b07299de886ebe492ab75521b711149f62df2e28c299c499202128872741885b1713bfa44bb6ff95548cf5b9023100831fb8e033415a7a848e5a32d705e356c8af69e1423c0adc0d81470d402a874ebed18cec525ee70bf21fc830eb7700880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cbd4a132c7f27e9481cfbd66606faa209ffe79ddaf345cb8841b0b6544c97162109b5e57a7b5a77bb13e3b378bc369e60230625bc1e7b15b1a914c06942a2e1b1b1f28ec3eb772e134d02985d2cd26edf5c0c81cc3fa846d602f01c328f2340c572d0302047c435bb5006630640230586c58d3588087d3482dffc897da0d947dc2735ff3a5af33db875a578c3057eef6d400e09e39cc5db8cea026ae41ae76023018f536da99fcfeba345310443bffb18ae6efd431487dd629e6907a4821fa163c8db2a0fbaa2f0cf2a93da2d4deecde460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230437051ef78da3a3d018f3d677de15655078763ec926497bc168a743cbc90f94f1444125dfe584df582580e5f3d4ab84f023100b1226911c42d6df3c1fd3d8951748b8f1f6a84f436606776534348e0f9d4d795c7268c84f4017e92fda69de793835ea40302047c435bb50067306502302d41cbd019f84a19ec2c38cbf1a234e1d14f5c0aa455b02ee0ebf37fc41a7cbd72d185c10548cd535762a97cc601d4d2023100aa677d9ec56d35740d6e1323f0c3e93e1702323b7093ee8fad55594d8dc92ac20b6d0d0758eceffb9eb4fb55d99569d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de89d533a823ffff2afe40d0b9dda5250ccd0b09db2b56669ae4059122e68804897f1731197d78fb24a8dafb41bf462b023004e8e95f4026834797f17609b73eff44dcf253e14b80ef6e8da5b549130b57a2ba3717f11b73a62c261b563fbcba1cee0302047c435bb50067306502301cdf32e7eca8be1ca167db8ccf70382dc5bb1a4252497c74c5c94150273fd6087d29721de7da9c7119a7bf9902d366f4023100da343a42fd91ed4ff335ad8b1fddb1c009c4b172ea71850d00ff6504c37b4571aa43ebf3c9383e86340b0df317ca194c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a9011f9b519ea3f1a6f9bb375187ace824953c1af0943134977774e49e265d3c3bfd85c731e36796a0fb7edb296c573023100e7c963eed6c2e72b5bf3630438fce2db9b5abfb8352b6e58947145cf3a0d15c8fbc0cf8f1d7bc36caa5d120cc88f3dc60302047c435bb500673065023100b05f0e436f0a9bcc44eaa4ab456457adb99cb01d5d6a3cc56ee77331771aa293814b8baa2ca52ede094271447afe9fad02303c9bd06ccbb7eb9c22d7bded71b6b64ad6c05ea13cf853d8ff70c3a6e0e771d1c17f77debdd15c51c9dc020bdad142010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026dcf6549509a67a48599134ad074b5c79cc558530bf8fec37609c8af087704c4c26b1ed2ccecbb1438d69261b2aefa802303fa9e332996ef7b80cb3bf5db5a33532ff01f91132ee77758af183eba39a5d1973b6f96b522aa8a12f63f913378058360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b7375e3084a4fa16336901d1eb369c141a321ca78f01331799c5d711afdad904110da4e2d3358fc21d306bda57cd21000230698ba6d3ce72a7868408d7db3304b180d264f4677d346c3732257e53593e5e2764387db7965e86f99364501f34280ae00302047c435bb500673065023100f2d516310ac3ddad396eb02da2a5817f974264b0a8c2eab64c9ab491d3b4d4c8da917f0707a2bab39bad6b0180e3b783023074c9845ae81aa26586087fe2622986902efdccb9c7fe6c03420e670f0abf7d4b38b3c874c53e2518a7da362f9d24d94c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5ed063f7ef90bea7f0fbd7c3fa0d29c71ab869aa60f1220133e91d918bfe54b7a0ef08d82a15d1ce88bb8a4b00bd8600231009d05f649855f2b527c27afa62091a62c27c8a90e0f97cd21b919ec2d09b971db214cc143dea60e8215f41f490d0edb180302047c435bb500673065023078e4bc43ecac55c0b27d87e85e42ddd6a96d8bf780fa1dd1d4c6602386f815bdf54d91f89ba454274046f1268f57a106023100e47b57090866af3b391ce6e55bb0d0348f2c3f8ca146e83c903d94d20ef3322f7363a09bf8da5eed6b919f7703653a3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9f4243955727ccf277c63a09014375496a01628775e3d65b7ddeaf8d7a046b807a1cb56a47e2d89fa094275435b246e023100aec8584d5a026a8e0cbe1fe597b33e6be7584c26015649a35eaa6adc557f5bac69ed841fb4df8dc1d7154b66d73564210302047c435bb50066306402306925325ec3397fe4df24845ac83be8e1188bbb2251b596d6ecc49566fee5257f3b4cee756a29955d62b977e9689d217602304159d9cd0b53546f8ce616bc9b08a315fc37a6ea598e954e5b47f5753a2ea91f1dc8375af3997064982ff2eb17d89cbb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8a7302d367061f54ebf18bddd1c1a2e15e305857bd53ef08ca667386084a1faedd9252efc7003c486650057191b9d8e0231008ba61590f144ad1b2469690a900719d43e3d983be060148843088abfac9142f672f84c29627ce0f155feaea7b222ea510302047c435bb50067306502301ae66a4ed43995b5ea63285257def5d02b33b81628f04cf4fdcb0ba48c2e3864f2d4173c0a0e0f8b16fe5d1509a989cb023100dd873e7dd49f5b0ebe69689f80df9f9b0fb7f046ec4c2e37a98d39015310048be541cf20d54c68d21355fea90659a6e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c0b85a0806fc8871c34bf6179017a3ef43f7f7640ccae9b6a2ab0d729a3cbac9d1d9d87059499de925ea72dd93c0a6a0023100fb4a1b264092e1e376a407e0c3d0414b6100c6fc1eacf3505d0dbdb49559d1ab8c5bdcc5606c42190e6379461a2700690302047c435bb50067306502307b4c7ab9a1df29953e023a6097f389996b1d26fbb982d96327a110b51c8a38f97227a8e7a5423898835e71ebae94d003023100aa8539af46a75e374db3238f611473479d1110f9a2284b257e101289df3d720ee305ccc273e779ea575e9b2093faba300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230382fa2170251b386761c4c9454d55e0c547e3060b3a963f12435f048ca3d9a6109b634bbd01e0f842c96061f224e36000230302947998c2a82d321aeb45a233ab458982f051aeb2a35a2fb4fac67362333bc90efa8ebb2e170b24e07be2c067e9e0b0302047c435bb50067306502303fff2fb714aff55b550aa5cd46ba2ea54cd5c97d36b4acaf6698c66af52de86c814524285aaf509a300e9405c6b3216c023100d76472e5818821dc195824904fd0c2cfe0358556091fd2bce29bbfafa3a1b2fcf160bc02726ab29beb839801c3633ed70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045c137c3d31bf138fe763f7ad2434e161b3791abec521b561c1302f4f195456cf85141d0466b854545e698dfcc8b28f3023079ed77c07cad18dd04eb7dc80977f542dc228e16c1ae841413fbf5f789186cce1ddfd9b3e0fb848d7c3132fd8140ed9a0302047c435bb5006730650230200419052eb7af60052e723d3280a69e3627df699ab985fc5a39c4d086ee32d85a502237212b85d7a34df66ade900f69023100ef6f09f03af080fade2d48aa3ac4d565992550455d79786eddb8ce6f2e8d88960481dacca58a3e04c0e0c3e980af5f2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e636128686f994577161b7a973bb51841648861caa7b2bfa7db663081fe2da4beaadbcf6714f55bb6522029a0c0ce46b023025e5be8d17566d2106accd365d12a1a67855abf71f380a4e04a9ec8bbe2885bef91b1a8fb75c4cb0cc52f8b14948cd780302047c435bb500673065023016836ac3814c2aba070c76986e92637b22b6a17ea2cc4ce493b8bd93b3b38a8beca9c3f1dda566978a3b144c2fdb1868023100858acd16e62fe596e2b609b8f72e8644def91d19729c103bd2ee980004b2adc2c8f1ea157efbca29ab8ce38d31124f590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d03d5aa05267d494b34ab7e06f74156b8c2fc569569c1e737011bedeace1c5f1756627d547a8a0cb6ca402ed01c99b30023016a297aa803c0f252ecae394164aeada29f1fec827b7d2464ca1b741b4effd08c8c0f4cd41a8cbcf52a3473b20af4ff00302047c435bb500663064023059f0759c8058b422a11924a8e12edd449a6a526aca12c4d7adf10ddfdd1bed4da8468329f360a056d104144329dabd4902303bcfb09c94a307f3d0de3ade5d83f4564fac63fd32cde2a05aa2cd474d8fc9524b1e5c3f205912dc6dfca0655dc18d070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b798f48da0c58faf5dffe475c19dc7c5052f02d13f1729c9629f342672caed62cb597a51b3bdddae93f4dead64e9b17802301f07d0a23bd0319c81ad94a2443b398d544537b0d9b929cf6638e2a87e903549d2188d7b948d85fd6ac8e70271f300df0302047c435bb500683066023100e8674b472f01e37cf56b2b8bf8d5c0ddc629058e74ea799fecea8d514120f0278488c37573285b4a7a90beca48fbf029023100bd81ed26a142a41b161f206f4b32e0921faa21591957fd57bb05fae476cdcff6aede1c8460085056a77388bcfee060f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb3e20f195aaa9f21d7c85ca027b73c77be971b189d2b7394f313892062f57c9c4c0918c858008bf7afc0d945435c249023100e95137d0eb84de53f583f2302f33053de0b461e90d850b716843350a066fe69883c2f456a3a32a5c7f63950fc5a7106d0302047c435bb50067306502305368dbb936ffcf7d66a5ecf53db67ece9b3196b9bb8d0dbbfa13a20643e9ae0304e3ee93098f2950ea16b74506aae1b40231009598524a6236e13c6521bcdc095b6a83e842df2db6aeacdfdb884d3aaa7036de96eee7830c1f2b64d8102401ea2ee02e0302047c435bb500683066023100cfe08c21e10e1b1d545caf9ce5fd8e7777029764411c4ec18387f3dc34c044bfc2f672f20cf5cbce57f65644e2297be9023100ffa6cacaa176ef8951da9aa26de99aa57c4d6a1057429503374efca7ffa2b9f2f90c43704224db98a1c0d4dd2b97dd320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dede996419007d823f520e0481acaab7960dc7abf0d937d67fde509651cd65c1843ced8550d01b324a9e3791ee9b27de023100ad03c49bb2b86da32bcd54f175183cd3ffe2653864fa4a2a9c0096ee205369b9e0821f71cfd11cce9d623a2b4014348c0302047c435bb50068306602310084bdea37b2919038c46df0404b27312c1bdc439737b5fd29b310119d8df2132d29e391622b05ceeed47851bbb78e152a023100b92549b62b275c76eaa33f945d8b4509b4f1893eacfb3089520e1ddada4fe3fef9adb9ca756e490221aa32243d2dc6d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c02a6d25eeee14356600e543f4e714a789d2e440bb00025f3080e67b5e0eeebbd40506d632283034ca0cffeb005bf8a30231008005207067ef7114ca72d23a4daa8b6fdc7641accb362ec15e8d861ff8d3dc4d68fa5fda8b452e61a3dfb6c6218639420302047c435bb50067306502301d5de1e8d1b85b47ad4e47d0826237dcbc788e3de2ae1ba597b398cfb4d4e44fcb226772d971e589d298566319dd3955023100aae598052fd69479c31c67b7f546200cd7a030d50c73b12d63e9225da943af118e7327723c324c7bf17d604014fbb0750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a5a61e4291533aad393071d83b47f1483af02d39885d26810716cdf64d7ceaeb142f67f389970d99c287fd1596f7ab902300450024aa6e2eb81be067c1ca43a1638b3dacba25c96ede4ab641766d947bc56ee697df0ebbd9bb1d77a5b53f55f4a080302047c435bb5006830660231008b345811efcbff81aa3da4f630678bc337fdcf916c4047f23680db9a2c4645611c242c0ecb20bfbad5e316c5017db29702310099a07047fc2c4cb185ef4f96254b4f4d71fad76a62202b4c74fa0fc33024f4ff3b8c7d129fab04ee571d8b961ae568950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304ef27e12b57a961de61c9848c5610c5c84148a0b40e2155fa9ef4d332aae5909357d2e094c8c691a8161012d5fea4e19023000b173ac8afcfbd7af42a14b44d33189b8e5017cdd61df9ce8d7e16dd774ae6ba8bad9e266cb2940efda1af813c6e48c0302047c435bb50067306502304f54a909cce81b4ce531c79ca8aac25976011ce01a01c3a0d1c18f0014c50e86152066e1ec31940ca56a7b75ff5855100231009453ef63713bd39a29ec1f8196cc92affeb56239784b61992caa2056bb547176cbec937af990cfb7e62e496dd40227b00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e1c83e127795e162e114eebaaa429504c87aba15acd1e6e701a562bb40b3256f7d3b239074d59daec08940bb2fb834c90230500e161b6b39c4b9961f483184a43c10705d6c5d414b21df3b49a17b7acea0453d43ea4d01551b90b9e306c10b4792420302047c435bb50067306502306330a48baaae82c3c1ae6b4e2f1de243b2fe0cafffc3d9a2015de345e8b0b8df63f25996e65e0ee088d764e1bc5456cb023100e16ff97c076a892911bc016b9bd260973e29bcb1caabb34c1b93d89d97c3cf05326606bf6279de38c5838088087beab40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ed1fb7a1afb630dae59336e507dc1be2f36c845a64e695e66d0a36106ba5b38e447f0eaedc682bf073774c31b5b5574023100cff411ac66f6e811d7540ba3789018961907791bf136899ad106e380b27742bbc749c57d005582d4248a98adebf6e1660302047c435bb5006630640230342a19ed50e115fa2a4bbf8636e0940164155d3382b433d692bd356b4900196010dfa2df6ec38e6767657eb12e6942e702306e64417310b17cc3e03b850ae017e98652042586b7938c201b62165814465671fbac73814a4ab0e65d366758e0ca75290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cc3e3acc2a127895967b9a7544e7f9122b1a6e32e23ee225c1d47b66af09012d34871268efdb12e19a323906736ee307023100c07f04a80b8a2610ed50c52ec0028eb7b4230848fd31e62c807e2c03001ed24387bfec95f8a84ece36982c1a9fc268310302047c435bb500673065023100c04e2ef6d791c4bf614057609e8fd4985798f2b2da5c3527ba48a3186f967b48f41971ab07a66595c2d63adb50661c390230171ab50245e0da320a9e60ba169d54390a36bce132ee37872f1ad94927125d51be621dd5028882ae95596efa8d60839d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023006775719586754ac0d4a1405ce34b50c7f77f1be7d6f3bc5b7ae0ebf8541c57aae7ae31bd63370ef69e5f4f9410e84c6023015a766fa196cf8faf75741815a9dc1d231e94d17131d96888c70f7a4d07e18a75d77cf1cf385ad8986b009e5a4412eb10302047c435bb500673065023100ad2993ec1a618ce2e31c9bdd4edebec38d39e1aeded03dcf722dd6ddd9546397682a28534f9856ba394730b33b621ca302305c66a2b3f4582319f5a241b4332ea28b87cd0e5b96f497a16d8bc787b9e428f5c4e618e8836088ea0c84952bf8045cf70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064054f6697002f23667763c615f2729d84743d4de49e90d44970c22ed9bd0417b06163b6fec3af322637aa52107e4473023077df784b2b7f9615eb2b8c4eb38490019575fa054a780f625da43c1af3aff1aade87fc7e7c0f7beb167c4e6ef71ca3ad0302047c435bb500683066023100a543230b92ca02d2d620de68dc4fb54ef1f94efde27b84da4f14e1891aed756ec316e3031475163dd7d50732e87bac76023100fb584f65138c34a8e3508de1d9d5cf25f5eca24390a80cd3f3af3eebb2e2e9a81bf2c65ccb022b67e41443bbe88b793d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3c649c6aad28666dff0e32c54baba7d47394976c07dd14f3ff7290e8d2a1e0715bd56e6a43f944d4ac3d300bbb4d490023100b7369b5fff2bc4c0bed71218cd74842a0640d00c4023139c3b6a726a946c8ba67908e6287c7eead5a2b099d77c78daf30302047c435bb50067306502306ee1f5a13bf8c5f5e3edf221d4090a232cae33d0add3dbf6eb6a0939397f6f90ba9ae4fbd0a836767adb2f6f197b4e99023100e35a63588c3af1c81e66868c789f6aa4d1448924ff8d85a99344ac9563c0b3f291d298d11b51daa8fb8f04302be2367a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b8c91a2589a05a0d91f510639a0598a239c117e42a260a60d6267bfb393c19147bde79ea639bf66ba375e4bd09faa2802305a10689b7128d13a7407dc00aa1ddbbd3dc83758dad37fcaf1c70d8719ba344996c1977ee5520769b4f46d18c08d9a800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306465c4bb420906ab050f4b8c890b4acdd7a6d430e901810db810f4a8eeaba116ebca021dc8c888ecbf41179b17f7ee88023100d97d0991c8739341b41ba30c44fe7a7feb75e47ec15985951396b0a1e27b3ab95e81063532e33e68099700ea9e866e800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a188d88aff17dafb4981b39d72288b0d5a7066bc35b0b9d2f322d6d649d85f71d65ebba79a730812e9464b4d9b334b59023100dbd81511ce494fa98ddfb2e7f27c554772f6c0ebf573ec7a73d4c8a3114b161531b7e7cf070380ba840cb05523e04b450302047c435bb500663064023044e39eabe5ecb073c44bdf2964429a8efff5aaf078c2b26ef1ca46075f56c57614208904b2b41a4436a2ceadd41d5cc60230599dea7478076ecef58a1fbaa905d74f20f7d3b9ca92dede85608605bfc990bf191f8cc8eec032bc1421759e5911a12f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100821ea834a5a6d42c40a938c396bc4e64b90ad515992e746a2ef04a637db38fa4d9afa5c000bbf7296be02d91d25b66f4023100b966f4dab7ab9fc8e8d64980a121f3cb30342f7cacc6ce79a0c15b6ace07d2f0d7cc3527db8c0f3f5257c8c4ada0ab2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cefd3d6fcfe5ddb55907d9b67da98890eba2b2a47f914f9f8a06aaea48f8db48ef92f62deb8c81758b71ec9718a5b21d02305477901a95836683a8313fc5e0c00f4029e3af4b5d72fa9b4bab943ae4361e794bdf0370c2d952864644453a0e3052f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023021c41211dc85b233da6617ec49cf378a8a5717b7346ccb132ac9de830f989c037993ba0a7f40f5dd1aafeb951183b7c0023100f2c24c2e4f58a2731e4438a4553a26bafaaa35c830379a4b91eb51d181f1bf811d47a12376b946b4d584adf6bc46d8290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a2fc30d27c69128cd6d64da068ca33e40c9454ea3bb81e3635a7e8b9c047da2ecb773dddec91b5f4493b141ab0898e0c023100b54833c9fb95e61d3f8acd0f01445d65ab9fac53b68b4bb8a8bfb8073098c78f00e48a94623f44d1c9b22a83085641d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023011f0450e57ef83283fbcbf525da4a8bfc0faeb95827ac2d01c3a8fae911daa5d0e8578c5ad7413d530ff606aa09e128f023100f1347efb04a21b2a1290226a28a65e11d758b9146d9dbdcdf6a0fac0b5d5a4f066c30d6592dd8c84959cdc8ed2e7dd810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026469a44bb057941b27d585f7cf71e47eb14fa0e1239639bb7d197cefc6fb42f416bdef9ec0c03ee00843a7e80a188c202306bba3e69240ef99574220b9b20cbe93e33ecf92e95aa0472f6ee30a9814bc789c36bb9514b6f793370ef51eae754eb830302047c435bb500673065023018d3ff48851e54f376416e842c8cd00c31be7c552728454294fa92fcf15a2ff4e9b5e0925510b01d30c6206b08fb514f023100ac6548351e7c3b3e169191065d15a983522ce1549304b8571d1e78b034c6dcd5539c5f1e56a039519f3bd8b5a09526d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aaca3db1ea19a9ce19efd55b42a2c43259d03608e569f3faf89a9d95f8e62f78bda6ad2f09f1d1293c9ddc128d20d86023100feea2e817c630faecd11c363b7d56c42af7ddbdfefbf9af30ca4c3dc59c4f31f375e6f5def73d63a6882da4efebcbf7d0302047c435bb50067306502306ae40de354c1ca1337b8ce9ba45bf2a64b695c9a2ab855c264359247de59c73ce5c1a18c15089da39314b46dac37bd4d02310083fd65d669cd01e755aee37f9c9fbcdab6ebeed808129063a2bf9a2ee0fd09cbbfc47fc6024fd1f74e0f5ca826f0a1c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bb85549603113f95b7bc1b2480fc5ae0bf4051175d7a82ddd267d12f207e997c7829c8e9e8503eae723b24f288857f7c023100ad83e1c931a43ffe6c857d25f196008f1e20fdf82fa73f8a5812d5054f9905e9afd9d33325167ed6ec46c937b0799e3a0302047c435bb500673065023066d762bac11a25c1923d4de6b1cca74750335f4f56db541a2fc75f9818b4a836909c083898581638c1bf5df133ca836e023100bb45e94eaa727f50ba5252b099064ed5a08afca5f93d075879c869fc2fcf91e2fd5bcd909708f984d7b34fc072c7af190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb1cf61398a6e721684dd0515e72cc65a5b3806e8d8ac67a8fac5ecfaa36ac0596a69dc7666a45c7ea50f2618bfc122802302d5177afa48df8ce8d9ed0ffd9846a58d7e8ad171c77826cf182037c9e0c4da45d6699eab8f252894809b907615c0c9c0302047c435bb500673065023100fb0896e80c9c62e7b3e605067eafe092673c96daba8a0c79db86a3003c36f5b4b82f654af539b2acf97cf8e2ce1584ce023057839e38e6e2b5498f297c6928a65ee5f1ade755ce929f95e2896c83f9795f6ada085b35287fbbf3a41ff05023d8f4bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310095d17efbae75becb3cc0036105ac4fd65b5502d23e5730373238bfbf9cc0db64e97eea0f0443a6a6376e5d9cc26468c502301134c2ac94dafeba6f9331859b846a817ac05cf235bf1a190d8c9725f83694ce12a4421760b322623880ffa1738cc7c10302047c435bb500673065023062c25c83c6c8d9374ccd0db35d24497332c9827b3781c0c0f05433de508b90727671e3dd6a4229b8c6f33b7ad7e0e6ed023100df21ffbce3c9fbdce539417d67558ed4ee654ed1c4b5caba47f0be3489a9177d4566b9e49dbd11f493ef967b0c25de650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8e186b7442721dc859c5f4e4cc89cbc688d2872f620c9a3f42f64889efb559019c55e1ed6fb1daaadf523f94ea762c0023100c2ab0e56ee494abead3df54006e77c14be7abd9d58e16bc104cc37a9db97074102fca093d9852d21300d8eca40948c320302047c435bb50067306502301c4ed298362176ed09b6d9cf1d27bda860f90f22d27ab9bd15d95530414acb44e88494da1baea410fc153b46eb37a222023100a6baefdcbf617e94ccf03d98a740aa5d9b2e788ef289a6d088d816a94dbb896d12bc8fe5885a469c7fabaaf20a30161e0302047c435bb50068306602310094d06167e86f17303322e16677e931d6d2a66c84d3c1a50348c4b8761440f2cb70e4c1d43957ce003b3e1924bc086025023100dba5d4a5b5abe1127861a7b9d0cdb8a3552bc92038bd2d2ef218dfadbe42fef36b587d06e67ac6b5908535007f4d61990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307d59523fedec7eb5169740bfadad4465468955eeac5e10cb1f95c0f3d8198ef2c46d91d8dadf91559c161ba5f906c9fd023100a5e8adbe512a91d901afde23f12e1485233c7418160c26a29fd366d24a7219dc6899e02dc20538c624a37d538b282fc90302047c435bb5006730650231009bdf1f9f126ea38712538f59a6aac71cc81f7a63ed572679567dbb9b44b28ce80cb5ee8f1048a284f3b352a4fd36af5502300f048573d03392cd8c5f60b698455f64e450398c2ce21535e18b73541c10878d046375d5fc66ba06e1554c2a0a65eb300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a2078ee785c6fad5e6e094cd17063242e5057f760721852b429bba43d04ba40ef7a5f062117769f9ceeae1020e86224023016c623e82fee21385a6406575e3e3e3b97abd64ca39ecb0b760f192931f014fecaf35fd7d4d9d0204d8e6c34c8fe88580302047c435bb500683066023100d5e767c59a432b1b79433fe7cc1b4f31ffe4c28c2e444c70775e9d2eb6b648cdc7eb1af53deae3e69f685e35e4762174023100de29f49bf6e573d493f776a85f0a0b268cc4bb6255d216848ee800a8713d2dfa997ca3d692bd79b7fcbc5e773c4896ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230331117e9dc300b28ae20cbfd0a25b900fc8d6e118f3895ea62c20b973d60c7b1a27005bd71ae08fb3bb823ed7d42372302303c6e2b593c3cc454e45ffd798d120fdd347d92adf138c9d5285bbaa0e619eef7948e6950c1ba4d3377b9fdc1e27c65e70302047c435bb500663064023007c142584ac1c544cd6c49b52ec9ca3c94f4766645582362da448cf8f092f1c5148d462a7f38b005790aa6b556f829dd02306a91c8b4396623ffd6be65cbe01c91c63dd44997e711a6af8d68343478daf91c74e3943b21cfd72a7629ab6c3c0f9b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307063afdd92cea69395d6fcd1509f016bfe8dafa1de87aced5761b759644d29dff4213a823041a985808d40d7795c8e89023067e5f41cb8d90218e558f6f8cb0d56c896a9095dbec811558d018f306067e14616ffead48b0ed42521b0c90986c4c7dc0302047c435bb500683066023100e7c761aed4648c098818230ac3cc43bed3dee8c284635c45375810839d80dcc020a5dff2bcbd030c52464ec346101bbf023100d1b2cc1a4537ac35eb3c218714a6d68a5b708e254434be0c2594b1407228f4eaf615cf9229b4755b63504feaba47404d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044f27adee6a339e1182d2034428faedd594ec065b5a0feef3b8d2346f22f649556659d76a52ca165670511b552d2abcb02306b94c80ffc7c9139ac1a5ed6f35c83ad19a783bd1aeae7c05a2298d096466d01480019656f3bfa96cdfb4e9e190bc10e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f80df14cbc2aa5a6d3238e20a7eb381de2510726bcbb2c03bc0e24819a9016edd99867a1c429ab3ec529fb362a75b8a7023100a5448bca4ce3c98d65ab313e93d805aa579b11105e144e03d09d6a3e935bfe49fc26161558e89f416f277b2c8e86f5950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026bd6d267bdbc55826a85a3c86cdcb1720bace0bdda3df52e94e3e14fe6ebf6bf3827581694ea747f6aab6453afba1470230190196968602c8ec1a1fd4b024dfc47b584739a88f698c770b66c0656a64ae0999b4b3a30e6dfa7bb4d7854d54cba3400302047c435bb500683066023100cf9367d194a7a73967a6c51264f6d070745431bccae1095dd2530944d46acc0d997664d2ef86801c042519c4409be844023100c58d03741fc58183ac1c6fa4537b781ebf29c959c71a385addcaf6cff46e399efd10b773afce54ce4a2be93d9891716e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ebcaafe15b20c4bb19f725c9b5c325d75bfa57bae82c77c2ea6775584ef925d17d51c7489d1174bdc5d9f6bbeca5dbca023059b04e926816f99b18634b8bce5de7fe838787958889e90c6e109ffe1cfd4be5882269f154dc661a4529537f9ea715270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230419295a60b8fc36630e818dcfaa1b4ed7324e66f028ae43464d3fa2cce33bb37598190232ce68578842427297f354da702307143a34d91b048988f35c3c0126d14b7f5bc7007e8087c6ab5fb967e74774be244c3c21775776a2c78e408009c043a4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072c57568c33af208414ed574ee17c9ff631c44b34f4b190c437118f5323add1297f647a3e4f5462c4cc42a695cac7bbe023100aa1d6cf582f8bf8c0c89355c819dc43ffb51a172a70923fb9fd3488ba13217183fbea40be22a89fadb00e195a95b59b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e203be2025b28771861f55dfb5efea87ffc270e32b3ea276d6055acfdf3f2dc0885909f3ecb4ac06291128f14320e49d023100a3da678dceac0cdc67a7b17dee11c291faa12270a33007a5c39647e9dd4a207a213b99440cdd0af190dce452493e5e540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302db170a2b10e3b58f6bf74df21f5bcbbefadadf191f88d254d51b24dceeef08966ea1057ce806ae96af389612cad477a023100f146ca587aeec71794c55fec38eb19594963191c5c8791b2459f239936b28b44451ddd93e75b746627afaf29442d7cd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023068303ac1dea40b8ba3ccb935e6b8de2052c144966b526580aabe64d1c5054ebead89c1945d6f90f14f945ed4baa5a4ed023100b84b70152815cb3ab0b3004075ebe49ee20d8be6d26ce2ef77e9196ed29b1d6958b74f447e5aaa54a12c989c73a0b0720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b3c34d15d4fce896e5f5651d4863469b2d49e952a858f24790ee0064545284a6d8f2d179f2dad8fc154392eb6d49f0d7023100a5be70a5a77e078260aab9e423504514b978e35f69031caf43b6ae073409cf1ca66e1595d7ff84b5246fe855cfa646aa0302047c435bb50066306402307eb71564753689182a9a8fd1d54c89a4886d3a14f33a8d051e943f39183069631ac0907f5406d23aea3bcb4532ad2f8b02306841a7f8c3e82d51d8142c56d494c52a89d7f294328eda70f4e07a853cbf5c25073397a028b9ca5d0ef377764a689e410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ba77019f1676d92a45e672d7a1ca0c192da82d0a412f9cae73eb90285712b636509ba48f1157580f937cd2139d984d4102302eae73c69455164c107b39547576d013fddff45e97d3cc677097da214ea2f6d56d8b54fd1fcd85434534276d1cb8c8a90302047c435bb500673065023039d4c07deccd7ffcc087732135658020a261f58b8732636641b732bdabda9370baf2be6a48a384ed7fadce80fbf436c2023100982f70426083b2100f147dbe825a2c4cead9cdda496ff9cf7c7b12ba3ff189737ac1fe53bbf562eb171089707cc02b1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ca40725e43ab560ac670ee70d72fbf0f70992e5a54eb5559f3dd5cbb02d1be041e63c899d099c53d36305c2a1d504f300230625041cbbe75b132c683e2a4c560c3ca0ce129d343d16f7e8a9b1545a6fcb5c303001916490097e829cdc7bafbd5cdad0302047c435bb500683066023100cfbfa789b0ee8328751b0dfe7f862dc16064306608d930cdb27fe5ff1fd6eb7f55314eebe0be220a91a604085c3474c7023100a99096f98c51b632db74be7dd2a6cf1d0f65058347a98d5cead9973ff925f95df7a329aaa02a51507c031c8ef12fa5c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023037aee8a6185b40c5ef2f00e94749a4ee96908551f4eaa6041f17751635dbc369a881435d20b41c0b6b2047ace85676380230147ab18db1d5bafc122ee2f95442a458b9129b69b88581a064820557e796e95ac9c7ef499087ed9bbed1ce24307d53980302047c435bb500683066023100c1b12aac83cdbc30fae2fb9561e64d4afd68a8d5a75fa291ce0f6ff154c8187478d925a5664613df793e1accb92ac7bd023100e718110b4d2be1c8b154c3f23fc140c714e951681246645d5c0f5ca8888bb8b40eceba24ee740cb31576b329012985a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f47e9425cb9f023bcf67cf137d1aa1dbd10f60911788a869a6aca6fee79d4a822409c0810fbece77e9c106d896218a9023100fb70868d1d86ccb7cebc2e35103e6e548bb8f90c52a2fdd10f82b5f9e6ab9658785dd8d280de8c39cf4b018c8f614e050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ec88479e6a934ab9c679676769acefd5c2cf46c98a5437bd682b7db89ce8ae45fff7f89f52b0aa1b33124b069d26dd2023100e31d8c7a21645f0d1fd2a24cdfb5f4413fc983908cb210ddc41515ce7f7f6cdb0ec6c6075efd1223fe323988e2a8846d0302047c435bb5006630640230126ed618a8aeddd16eaad4dfc0a870e346cd4ec46343c0e78c0046635b0f68d22f99701aa31623c805f23b1c1578ec7602303acb9b9f61ff8f84e5a59dd4df278ed82adab42d357d67ae86b641e99e7bc8d0f45d4f56b86cd289751a9589889a3c790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a0f47afb627a166c6f3db997872564074e2a72da088e915e0ac923aa62a870d55bfc9d79a3ff7f028c2ca6518303ba9a0230730a6eaa2f00bb1282ec0909c6e0ddc51bdc5b66f1c393cb1d7266a5f9996820f0233f95a4d6832dc13c475077eb72620302047c435bb5006730650230236f76147399ae4377b06feb2af5b91601a4152f528c27a3ccd713a91a57ce14b5680de6360ee9c278da6d245faa2b91023100d3b531bbb37b451cd62ed86deb4cb6f8934c8f312779dc8bc6fab5d13bfaf5734bd2b4147a7b2a7cce5398940709a92f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301486bdcfb6c322a50c884fb3a10e926a62f7a2d5c3d7f93e0fe46094f0ab26baeed6cb84d452cf1488e58bcdfd9cb0a202301cc77d2f0cea42fb328694cfe02f3f9ee1871b5d8d4b0ba3fb8afc51c15fbd5b154df4bf91dd46de1584542f0537fee10302047c435bb500673065023059dd91f1ae3cfcc489542e295aeb754397cc109dfa066b288e25b57fcf8802357e602cbd651df6143f5d41a186bd24a5023100d72bbc26b587a6367fd4374c12a2ad47a332d1fa2bd95748aad9f88470ac201b74375ce5431fc37475645413d2d085030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076e1b672cef5504c98790ed8cd093779402639a7eaf0355bee60bbfc665b0eba8727fd114a16c8b070c44dafb6450f68023035b97743cacc40817647a03cec999faba223ecfe88f7c3af4215a549818cdf496cc6f588ddbea7cf1951036600365e750302047c435bb50068306602310087203027198425467f50ac90c58cbc3a0bb527c0a785e79668fac0c16c27d39b06f1fc0a57a29c31e0aed7c3b820423a023100ed6b6cac847169eaa62229fbf6113b0afd2171dc44d063d477efae49e47d3ae8d1a1f56a8380c0df50dde6697cb120ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d253ca19d0c666b9bc34bba44bba15416cdf03a711e2ebf19cacbc2ca4bc5c5d17d92dc6497e08cce66cd37e53e9d81a023100b6c3864e71efb4539722b992d12d4470c1f58df689dcb94709b37d97919aa142fd7ec7464a8eba8f7169faab76d3029c0302047c435bb500683066023100c5a72bb7eb7cec4da764f7a8c17521d23462ec0dac3aff3c240fb0dfa418ba13ae92406011da4852264b7a4ce599265c023100d95665d9d1fafc6d081f976e25b5998e7c83ba332e3f6314d9a95337cafad1b1c4ffb21bb35d1d731de9e1099c19584d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003c0ac78c2ecebbe8dc6eb52c873a5678c33e9f8182126f953a7d6a47ed0d99171794bf03406c13af06dd58b5e699163023100bcb53474357eb8f14f2a087e3069dbf5e9de18240d4376eb1e6e53c909afc8cc911b152e39c1a7df477e82a7b9a675310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023011dcd178406f8529f02ff70a2d7792ffc49bb9c54939460393bdd3df80bdc7918266ebf49930173da4389f349c7ce19902307a0371b15b9623f4b43239bbc39119bcdd36340a6b7292b17202f981317f56e701d761742cd915bf480f887247e1318b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023004db93a0fac0ea7365f17ef03fe76c7c7dafef78f2f8eb8bce3b4976552f1257b777802449a99a8c721c612cc759e08b023100b3a4fe919dc4df00b48b3680bf267338a04b1a7839740539cf61dd1aad0b67559cc2195a1d8aa27a2fd7b484abb11bed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad56f874a3c2925eaa012493c43f674d36169e5c63ab3ed7a86ea8bccd92e30c57443cc1659d1dc194b8ba7634d79a0402301ea5cbc899909ad1fd1085fe74d71b062a4dc7ee03c8d372f454f535425a00174ae472a1218d3fe707887c158e9c4c790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230462cc39e97176b3ce58c2c57f3ebe43c9515495e87e7f76b550dd67f37c79c3abad7aa61644355b2241096d61fd4cf3902307060e23bb10a97e68e5c95df562d319050916d50229def203842974a4b5ab271e0e13601f88c754f187b3ad76d5f5dee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ca1e088a000d923713295fb6fc174614059dfdaa06a9354b0917816943b0d2a784da0f14376c99be73ae1db6e648e950230230dda122b4a65b8ae0911b1c47bdbaf3cbba419cf018dbf779d0f26e74ecfd84e9a21c1afdb6d375f1a9ba3af77581c0302047c435bb500673065023100d05e95670c175954a31b6759ac13df20c52c30294add0c19d3d22c6fb5e76dde7278a0022263f6c552d7e222ac218ee802302a29b0d4ba0f76e984b1480ae36efd12c78afbe0c6e3dee776ccfb68445719b5ca314780c365044a447aeedb9e514db70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064b4e65bc0d8d0743f2e48766c93af3976677adc65a60e36f9f150ba7c9759875c0f67c246e270a22e83cb3e9bb493b5023005f55b38c0ebb0b9da5793652b5590515c12b2280180ca400bf05e9350759d48aed42568cb0619059be546c440008f960302047c435bb50067306502305955cc4e35a5dde89a0eeb1bf879bc4b376a9fc4c2bce40c75f395178253e2fd61fabb6ac79ced915f75b5ca0e60bc5f02310090675c4c7ab6a787a9446b9e57e2db6ba8cdab6fce135794bb253f9ca76541064d9a0fc6891cce730527510cc660fed80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023034075e1f9131fdb226541f261ff9ca55b6fdfe99c3998f7996c4bc26db698b234e05c21e99b7df968da7da3338df6624023078c1c8df9e88e723a9f80d342065c1c679866447bd91b4dbc4f98c66106e90e0d9372bf9bb5818ddef3ccf9b51d8a2210302047c435bb50068306602310099868bf9317e28a186aa4770cbb02887b505b0b9747401ba1fec86c891b703e970f6fe12080cdd0e4d3be379ac942e8f0231009e33ece06d5835c45a48808137255d3f47258e7b74a06b00847989190a59b1f2f460e005c14cc1dca6d55eb077b72faf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4c6ac984a0c2318ee049a5166fca017d816563a038f4b5858482e1323502b2f445f9e5cd0bc0e4951a7980effb4d5a2023030bfc0a56909940855bfaa751c39970695f0336aa8ad41b5ba715035ae0006a0bd84a9390c3dedf899332e3604d8496d0302047c435bb500663064023047ffe52df7631ed331c65a5ab6ab66cf5a0ddcad9810da49512a0abdf905d1c4a9494e8b94c940a069cc71653c9adf050230314a4be5dd04d1758395338cbee6e48a0e21112cfc2c2b518f0c971b939d53377219caab4011666ed4d5a820779e0d810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230651d390f55866b65b140d24bf4349e8888c5d54b6912a24f26585aa70160ba6c84857a25602f346bdd2713f3a530790b0230077911840b15caedd9ea96e029fba9f42645876cb2bbc5a7ba3c088b9672e4be90ec4a18ed2bb2044d236bfad47e379b0302047c435bb500683066023100c596e4c38ff2bcd531176c984421f72e1c9dd4ccc2775a1f164d792e396f05db3c0ba57fef8a487e97485d0fe7c65bdc0231009cc35df92e45acaed17c4962bff504d794718ada4fd8dce0b8c55bf5ac3253beea366b9964ea9db6ac087146d18818b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300965ca2ea2cabd4c510095fafe964898358482f26ed9c09e6754a27c7d89ed72f76900408e08680d8ac14157f6bdb227023100ef4425a8c493057136daf42364b1e887f6cabed9c65f58881b1e6ed973ab724afd601b24834f9bad6854835ef48fea050302047c435bb500663064023016a2c70c607049e8931eb920636af7965916378262547854980737edd6b25d43cebb4b09632686f9a1776ed57c628e0002301534d6bbb0c2a4122bc9fc5ba044f2e1becd413025af611abd39c1d104c002c51229d3913efc5b9a1788c7ef2452fc810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f617efb247c48c58dc315df10b535071cbea10689a19446b50097255cfbec7798d3151ad05e2211130d272f2870864b0230094ef8bfe93e7624f8dfbe4dfffaf51b09801ceae9769284b618a7c57ea802899a4b557440ef3924769503c5a75ee4410302047c435bb50066306402306901b9f9a51a480364669cf3bdd1140e30a9c3b53cfe48cbf841f050f4bc28071d79bf60db381c585c7f784a9493f3e902304534bcb22357c46f2a073b29bd2cd4357baf29be4160e9df12ce3209e3fb38369398d9cd91b64fa5dbef655f2b79dc480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230018d9ff8738867d608375429c40b0a9ad058bbfb5718ac77d419904a53afe33afac94c1e2b19df96dcc34fe04f94737402310095fc2c140e503f2c6a2e63bd93bdb112e0e9173180250b97e5790d29f70966da1cff6c45b9054fa30b75a7fa5438afad0302047c435bb50067306502307482179ce7dc65a4fe7a1813a90cec077ce5949c2b0df73f33a50d587341f8e14bc1050ecaf837830036cfb34a82c0480231009bc9c048eadbb4f2231df392ec0b48c4609e0d3637c7c346038dc7f1d2f8eb78b88b9cece9651c989436a74c2c8136d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014ad62c5e726d1cbd5da7c50bc682f66497ad101d2dfa4700c940a5a87e61537e7bddcc5baf8aa279c627247ba94335b023100a85f975fb82845a1388f56688f649d7bf37486c89fe31db8b89f78a10ee7c884002244772cd506d8a3261e00448097370302047c435bb50067306502306ced2ed4ebdb3a5a5702a99e65ebe2706d52f1b7fdce2bdf2ad49c4b0f3eaf2bd16fa9d04fff767b4b79cde8b0115642023100e6a9e89f05f2e70d12df77e9fe44cc1215204847293228694cd2d266e8c2e6bf4fda1e1cbdcb3a0ff5c08414b966190a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eed737588d42b5b0fb5974e52658f5f6dc3931fee06d96ce582322d05e4adabdcd85105bb2de3cd878d8666f752756f2023100d5221ae1fda253efd81eb628c8c21bff6ead03987ac3268483bc07c49a9fbe8f7f58ab9fe06291b94cbfba40faee8ee30302047c435bb500683066023100f7f0b30d9f4622604ee684aa7475080a22b683aff29a79fd4f58d3e61c6a8edd2b256898822b62fe36cb371f43f2c10a023100af16568843783a1e0e9502fc7686fc446dea67ab2e8ac3662fad76540fea81663c03ac705c4d3d16c7c076a0e68025690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b224f2310ee96b6a69275c15ff8a75867e04d9c7a3a202a9917a71dd81795469a7bfb8335a3bbb2ffae12fe2f22a7da023100b527edab3e58eb0cc3f5943bb3d4a2acdd9f81232be039d618c9296d7fca51c7b811715487d35cc8c17865a15dcee5e00302047c435bb500673065023100f977fa54fbb13a42b1b6d86ab3b5687d5c2c32db30192eb79c6a1bb44a4cd78f5a728519dc387ea61ce8866ad95cb5510230667d1e0e4a9a0666385eac07a1cdf277c22d82a43c56679072b759a35f83eb7b2344877a401703fc4cc1750f959537660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023058338498230a92c6fbd15a679cab7e38531d7ba529e9540d01fdfcd2e4a41717b730ff06592a7342a3eef94117109383023100d13a779f76c8f0c6142ff87a82e32ebcbe6955136666a6af607ddd165e4b12a51d77271fd7050883ff076fa88c73d95b0302047c435bb500673065023040d2c7ae5052855d405e07f1665970567480cf14415d8122d6cd0790a56d05bf7d11f63917a8cbe2cb4fe8a5666dbac3023100978e4cef46350c6f0cb0e43b33ca36f1cceaad65a198dcbe98bb4a1809cf407b97f3c25f9adedaa6a2201f02d7f6dee90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ce5cf6e6f2e02c5d83fec5e493f952d08ccbb07a93a81c8ed570eed174a4f75c8eb877fb009099256b25a07344691c48023100f7d7596bd653a9dd22535885eab9ac0f1ecbd97034e6386b2ba8ca8c75dd42c5db2955d3a0ec1269b498a8fe98a9520b0302047c435bb500683066023100fd51f5f42f9d4f891b13f284ba9b5e9f88741364301276d6955ce6f7383a87d904be4a5f7d8786edd316b19b8cf5921b023100c3ba06cd4590db90fcd7433151c54518ccde8410bc9b3c13552c8e72a8b01d538b102f8ed87494b57408354188af65ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009eeec997fdef19115da4d27b5af7ca00169648575d0076976e7d31a2b0073759e940a2f17eed64d9a330754a42af159c0230325d408db9f73d44473c07443832ce3bf555681e178dfed3d9905cb1c46fcf00166e042739440c7a60270fae224961a60302047c435bb50067306502300bf5a1033d11b3b0eec6a469f455c03ad0c8e58bcc17b56d8ca782d451c32a5b81347cc674b2e18f6cab3ca0450b94c8023100e0c2c7324ae35e1aa80ba3f16741fa628680bc1575bad5c0603f074ce227dd797be247f5de16d33949d7331ce938364c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef94edd680ab3b512a42c30a9cb32ec1842629f3fe54f1b20249a0dcd26df163f6f5451dffb130e5492cd672f3ef9a7d023055813d3d6ba95c4e3eaa28aae0c62c4a858abade3f65f16ebc51700133d31dde4a8afb4f950c32bc5f2b67ae891b824b0302047c435bb5006630640230715417e3d231661147d85608506d0057176da2b28fb43c899287b7ba745894c2247bcb3651167bb66ac705532e65b27e0230395568d06ab6d6762f52e92db1ee2c36b503a136f75626d57f797435aad2965adb25a55c3c3acfb96083dc6d2815f3100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230364eff3f90ef43f58c464faccb37c0ca113b5f1ff58444e3bbdb195a27f96967e054d405ca462b331f2fbd58bfc8960f02304c92231f18c72ae2f86b7de4c62fc76546c09130bc1637e53afd96aa73f850afcf6c89475c684cf705d4d880f2d0df2b0302047c435bb500673065023100aac15f862f8adb4ed7ec3f523f37c814281dde633e3c35619a866a6b59fbbeae7116df5bf94d193f69d01df9e8c46be60230421e855eb4cd41a34a8e3c8b1b19b1a7e5ffbb31710e97e2eb490f99d7cddbc2144b95842f4c1aac6084e19a443077890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3b7fa8582413e34e5d49466a454851ae51aec937b793760f8be879451e74bd36d04c7d902487e8f0821699f712fb0c9023100f0cdc28fb77cafce67adad867764c9b2da13cc6423d072de768859a20580d4f04df0181a3d4879208cf86b16baa274a10302047c435bb50067306502303aabdfc4a07117f52ab643538ba2e65f56c9912262d84394b46924ade66df600d1d97bf2ad47cf5f10cea7b72c56eba9023100ff1c2824718248a22ece6e4cadc59b33acf34fb03d0d710c1ab508e8412d810a62dd3ff09363dbb9c618824cd8ff7dd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003f3bcd4942650ed1784242d35922b07f7c377f58c515058e664eb73aa85b248ccc69ff87cb95af5ae299d22d692e5b20231008d8fcf862032e3157f924b7648917734f6e108a468af452c467b1f284836a3f49edb93b0b290b1553602400bdbd545a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100add7c63d00b5bfdefb3d226d4cd99cf933f2f764ed6e86c07996dcb140c631ebf18c50e25fd829f6ea999c5d3947636a02310084d5d6041563693865fc7c93d79ed7de3191c3080ee9d358d5b3717d5b611fb4678e0356aa6660a20bab8fd3360096080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b1d1d7b9ded3af392d206f3350a81763362562c2e7211c14a95893e7c4d12e86b7a27ae0f5895f2066130d512881c36023100e48764083a6f79f644c4ed1e2f832ee4bf93f8f1080e859fb90c64d40f905b0452a428756ed202c3917f2e9a5fc610d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306267a242afa95c59e11562fb9cf6df4177f9630e4c06abf964bc5dec7dc957897f5cab2b4e2076bcf95de52b03b2350402302a959330bee7933ede872c86462701c91a71ed5ae1467cf9f8dcafd7e47a13941535adf320ce23f71d741cf3df68996f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230583e52a5408fe9d0093c9d1e2fcdfdc59e2e8ae9cb7b60bc4d15214243155ba07f9046e0f2b67836aef6308f63d1d4fc023100c3302bf7636e7736cba8f7693372b3a9f4a7feb4bdc9bbf9551700e1d99434ff15c5610c9266529a5c13b3577eaae70c0302047c435bb500673065023054b99d0d008e0249bfb3cf5903ef89ae896fb116ef35aa4fb60887523a1b35fca8b0c67311caf4b59a0618c9216a442a023100b77d62a75cae075bb5846e11f21526f10f0fff03463045c65a4a326a1fcf5543fd3bd4407c61cb887395e27ed02dced70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023055d7dc40084d37db3055e832559a0d0fb2bf9ce7d855e0e1bef5b40659f9c1c90e15ceaaeec556464dcdc59e3e5dc168023053fec3ceb8077d01847db1909ce5a3bf5d89e9275b803fffa64984284a85acd0f505ea271b3f730a5ae02db7d4fd5dea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b9c1968af6a365f2c7b744d9063a1e1d96b2f2af7953a8688608ecb71672c8ef1e8bcf41e974a7af94f1d59b24a5b5600230593ee7caf1d85166ed14256c3ea480220e3dd3d8620deef4020c88badce227f6406218d91d4acb6ce303b2e9ef0190b60302047c435bb500683066023100952a5320fb7f19aa40234c628546c8b70004cfbd73ab5e80bee9e12bebde440188174014ad5561bd85ac506245ad2703023100c27d74b3da44e480b9802209e9b9905ca988abe28c8588a8f5972c2c961ec34b8f17f78207c9249ee33651040e3505840302047c435bb50066306402301779f665f0046bc3ced5496cc366b947abcc56f23b43f82d2ff34e71ea769487a4279d21884f7603621da922bb699d6d0230196fe3c17886181af41c8f19489ba1484a05334a9cf56ccc482c30e3cb9e4a3ae4da6fb4b1067f299989b14cc2a157ec0302047c435bb500663064023049ebe4baa0c6dd1826e7d05e6d90a198c78668ade2ed34060b1940b7b82400990d06da3ecc1f0b7ff5473880ce8001250230790acd1a10e508fb2af82d2a2286ccfc07f6ee1e82b462540eccb722d2a499696476a59baf9e0dcbfaf11baf087aa24d0302047c435bb50066306402302b220053bf13957d2255eaa495f243311078a67b76c7006b4ace9b85c310e40fb832d07ef6d84e10b8bf399adb800b5702301fc2c75b3ef1ea1fe2c2192d6b32b1e3bf1b3bb69a07496207945abbeea18e01424f1b87e20402d66f1589cff44e87cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100deac45222e4943f2f4d75d8bea206722ee2b778afbfd793ff7524686c28f5cff5f8dab7e71c60ed8a179988b95ada69b023100fd0d363619e2fc93f97b06fdcfb512ffa6448ab075c7ff34e86e30b6015264c5838152f3e8401c21e420c62704d3e6f00302047c435bb500683066023100ac0427989813a5accf837970e0aab9a27bf5286ffc267f710f59d1640a6fb321d7a4d80d47fd133b150f8b611015c82a0231009999a82909f3ccd4b8c584165e7fbdb313f56f93b48b80f7f3f174a7221066cebaad47a9c28574ed4ed8f26767436f6a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230160d8ead92436e0c8be110dbf7676294ecaaf9efea3447854d03ddecb09af31d26921aed7bb60c78608348ede78199c2023100e0f77446a7bb810f3b34444a2535df226008e2864eb8b9af8ba037790818c2f6c8985b0adb3a226feecc10f0cb374a8c0302047c435bb500683066023100fe0134c4dc245ad398cb024e1683c5e48e0d6753daf27450c6505609c002aa1e37124900f499ab0dba35a46874a6e92f023100eb7da40e011c268c8835ba49dcbf77265b084aeb5e27eacfa8934060b46962b4676321de771cf4a1cef72fe02af39fe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7897d9cf37bb6be54eeddb1a0f80c782ff4efbb1715dadd260c8535190bcdd3071562b01c4b8e11098a689874bcc625023100af1255fc3c52a89071128808e2eb2d300dbb3b784f263cba6d645df2ca0679d7b7f2d512dca704d44e63ff46dc8b2d440302047c435bb500673065023100d924fec754fbce5ca9d4c8be35c22f9bb44b0f81f38e2e7f84d16d51d681c28c6d05bc80781a6037f89d9c55817fa0bb0230638986e0e605900c857fccea5bc2be0ba3b3afc30abc69e099c48d6ed1f9ee4fc75480f82eec21fa0243528d0f1e2a9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303dcd0a47b4d0b3a896c484d946bc2cbd16267b0eb391f752b21e1bd8cf95e253a8159ca3435c6b6402baf3d23f1b1f6f023100b6c6fd6c6d06617245ebfc3418f108f441a16151e9047bd5a267b05c587adf0a1c35e5c0d7559a936fe681d1469038e50302047c435bb500673065023100c5046972cbcc85775d2b2e8d2901f9827c95edb45c8f3c6bc73963704bc13c4d28f58812153d057c3926a4b924c6953e02305d318b23b1676118ffc0145b4fb0a1ca008658716d519343c171f20c88ca193cd4046ea6bc6cf1236fb15efab700ca1c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac7fef153d1c6be6ea0ed0bdba228dba6513a5bc842a1a0ad539af6320446418750fa9d22115ac3a78d813af810d2d9b023036f76503d0d27f64c47bbd2646707ea59d01c4e54805274153d6f812e6e358f31a558b0895bbff1b0288520bce3a074e0302047c435bb500683066023100ab97dbdad77610c00ee9b0bee1191e12deed1dd7a3f1b89be9df24f1b0ba4795dd899ec71b0282f85bdff7c784f9bcfa02310089e2f2d398db85262513e692bc829bf15242070ea1d1b5517642f41ab1a3e99f29364e4a4f705b8f7676af30f06db50b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2e45e79fee168f08d87ac086d805504fc5d7281287bdd1faa65fbcc2c1aa6f87dd920fd06e6ebb1bd35c0036a87ced6023100a6c23a22a38a6f1a2cf5ca0a3d2754205a18b7d334c5152d0f9909107958182dbc29f1be1bcaf0eeee99b7884c6318e10302047c435bb500673065023100995b8a2dfc486ff305b3b88bfd8e15e00a28cce19ae9fc26ccf51279016cee832de6a7b291164147ba15a4aefe77bad702301017cf99e7b6c6cd33706fbd98b1214455a2bf1bf2a6ed4395b552887006dfa9de18c543f4128f5f83de424e429697370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5d46ac398e8e1dc3cb3438dd471efe2fc47e4ddb4a8b50a9d7c15e1605ac9c452310de98af9af8156c31adf906d4ddf02303bb32cfde66c3384bbd2ffad6a0477a9c3dfe63fa397223e953778cb5415817a921eb8bd1ccf48ab718c1ddee68369ba0302047c435bb500673065023039f4fbb5cba93254459931443502c998543936f73ebb0ff2942fb2701202e1adc15c54c8b2346f48953581f7b4ab370b023100d59034b33e20ded246ea0d973152384fe5fc282b2f62836efebaa28c3a6310c2511d6b1c9b1ddaa65a3a2df4e08879180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076cd765f481560fa1dd1643b8ec7d805fdd53aa5dda60a41a1c1d334d92723a93b19ad80814e7a07a2b6468531027d2c023042910a6700651508f41ac77580bc3f14c965867b7327672f4c8babb0d9fae896ef9be04a136f125ebaf8de0944fd4f430302047c435bb50066306402302e5af8e417521ef79363ef895ef8dd6a8607dd804269f6308da5e99f746a1b14c47c4d0b7670a53845fc1bb2f81285fc023025c96450cdd102f846296a318ef2ac59899b1b0b77d105335ae49f6c366be1449ebf590cab4c952e576601f335d171810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ba53c210d0e8feee8225f3064ca31ce52f7779ce7b3126dca5674c4d23acc56fca59cd84fc38816b72bdcf86b5f6445023100e402dfb587fae62e69326dcb170474630952a7b74783af3e09b7edb0338e2482d153c163ccffea2b3172f4691b4c98d60302047c435bb5006630640230638928b5af98e546f7140ddf64889f33d1e6a6c93f1d633b76b2fdaa183f04bff90375e21c65d02ac71dbd12e00a4f2f023041f82ecaf0ea91b8d41df0500a0e936f78a4a5abebfee6f4218c78a1a284445f338692f49ccf473859f64ac2221ff40d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ac4d2a8a91468a4c040eae479c3f14f4c45cdd64740e2079cff88f83aa1097d659ea5e307247886b2c185c9223edc3802301c0f317db6832eb05a403228c738e2c0a881f6d8457953e5fffe07469ead929fa1517fb833fcc9570760dbcece2207570302047c435bb50067306502300e543abf3d07ae7e29e3202c4090826f2b9d96e7a505c4b0fda48fdfb320171de4be8e2edd9589934061828ea3aec279023100a21ff037319d108619653f61529b447836d0badbc2f5a5b68d231bad92f7aa1fb9174a4217ab28d4dc05995aefaf7e8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301405c2b37992dd5c1a023de335ba246ecdd0fbb9532ca8c808bee537a32439d910b386c6fc5e0a28407e333d8f5ab0b2023053a1ba6de8acc46571d53d18fd3810d77c4fffb397ea2fefbae404878f0ca79e95792d3f51c7ff7c776a32344d821f2b0302047c435bb500673065023037357a01ede5730524088450abf9c95a03f86a1428b1a102be61ff9e75af8ad52a6493665cd924423d44a75817289774023100cbb6ebb9bc45d9d2d654cbbc3dae8e09c975f69368b38bcefd2ad47ef0532756daf72b9112603ef4871e03548734b24a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a3cf738c1431bf062ce3096c215bfd56e70b27d159a78ef7a79cf8ec58c4bac98f8d08dbecc0d72da4be9130bdbab880230252b5722530a66c85f62c5c3664e56cc8cc2e44ede39ef82ee01151205a8b2a33f237fdf382c80a0d6d4c14e712ad5b20302047c435bb5006730650230579df0b8e962265ae92d6f9d2212ac0db31a8d13fc908d99d6f4d37c8735bee135e3d81a39748828432c29ef8692dcb8023100a198937f89fbd16152261518100d1bb7d67ac488e647653fc25f44070cb096259ed57ea4f1b0d6923f87c318059ad12b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230088e9458d6eb202191e9d38e44c156ff66fdd3e74b1e7cb40adcc10aac95ed92a8cab5b983b26aeb85e75a0ed9194e2602304203f482598dffaba2bdfc5d6b69d52241799cd3ce3f46f77934b8739cd8e3b69de3ff050dc4e3b9e7a382603701dc570302047c435bb500683066023100ebb9ddbdec0528449e696210a480f3896f1b93f9da48b3b49566c994d04bb406c3fdc54f5cc19cc48606486be2bd8f30023100f19f8ea97f2e7ed1699ad2b95f09d68b3559c0b4607591c3ae29415dea7aefd29bf1186ef482c9a05dea0179eea7d8110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7139545b962405bdd7e8e46c5af8e7c1ef791f5b1b4f69be562d1133087636731867d95248584b0184a0130db163a9d02306439a9cc221691748fda4c8894817c2e78c191ba96930b21dbcce6b11217a79f0a22b96677beefebf8ae10c9aa6298840302047c435bb50066306402300ff41090432fccc3ddff02ade8eed691262f33cbbf4a6e5c6c82ab841e371a27ca89ca2dcbcd03086853bed4700850b20230364faf05563ff710dea766f1d0624deb78815b65f8df995e5a71f89b1f22018909d155a2f0f64079c0e4533db940e8b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076b0580ed8e69e4406034477e57fff37d3ae03a1bda26681501e262eac5b2227c9d4a4860153321b31907fe530968d2b023100e2d0d3986cd744fa146b62a6430428c81bdfdcaa59d73c1028edecd56c022419014fa3fd4a5ff0217f21f97c6311a0d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ef747a0b48d5c9f147954704666bb94add6e22cc16fc0f782f418bd71c865ec4df61e3d94a88691485a1c0d9f369c51023069d876874c2429b9ac62878937e2e95b14ed90d9fd1888ed361c7f4b784e938046ddeb899745bfaeb410b258da16b1060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303d7b7c6b17ed8aa8cb34c022de2652f880a0a87626296047429b66e4af0cd599961b21445f24649231e6545911d05e3d023056b9c8c42b87cc832602205aeaa13b84069b83c7f53e8fda15badb67c7cfc0c9b20bca84ce68290b43a4f6aee97c65bd0302047c435bb500683066023100c846a9e2ea5b58660633258e71657b934c099221342401edf16212fe889cd5e425952cf9f144c1212aba850e17662bcd023100e547244bdade550adc33d69647b03fbf999395b44dbabbcbf88e65b5a60107c3af07aa6d9215762c5bf4210593f5f39e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230350a72eb133ca4e3806fd779485d3bdb74a54f7b5cb99cc8cbbac876c418bb076e74bdef878f409ee5775baabe7eeb4902305d3be4fa211b791136ded3b2eb791b305eab3df2e6ed674972f9a414d0f03573371a1f0e9af86aa3f9b7a14ff1d8a74a0302047c435bb50067306502304858d6c2a58918bf2eb83fc6aec75f85f49de121b567be724823f6e2923cafb01d67c701b8e1533fb8a431a8a9867ce0023100adb02c67b17f1fe96ad90d3053de3b9b6e55b6de9c058d8f1a4844c52b8b0da640786282005378a655b8bb1f06e5adbd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf1ce9c39556fae8506dcc58d39df9bbf624e8e8319be7c2254d63c841cbc1f2626b2a7b19dadf8816226e6cbdcba41d02302396fe94edb01dc53af7f84ba0066e603ed17c05f6abc46a4bce3162f699e4c1ffdf5e82d60df7240799dc4c731732ea0302047c435bb5006730650230412718b7da9adfa27621d7e4ee80ded01c82f0492ac474ee6f90a5f7dd70f06827550ab661a992da9a1ae3a777d4e36b023100a98f9da4b015e1163506e68955f40b1cfbea1d35876a3120b2d726b6de6ce9db99e8c2de646b1bceca508eb2c51e68be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300bdfc4116e3557a0532b744dbedf00171203f4422ff08bddbbf84d5f1c26a1b87e7e60a51a84aa8f4bbb503e464a179702310095a4ba78be21036f5abc4779baa17147ee87e4b4a20f6b6f5a4f6a68d2848459e71a4ce362640f534635ba94d57cf8ae0302047c435bb500673065023100ea4ab79a2759096a997519ed4bd7c8429d13ac3f599ce777ea1093f0a4d6ca88be5736558bd50c438b65a87a1b7d5103023047079fb5cbd9f53e2d53022889c7ed9b3efad45a0af092cf555ae36323d8d7bc29e6746e3eb26484d626add0308b38dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ce19ad4613be2631d2494252f289cd5592d87a83399354d74b504714a0997aade7ed71a37ce398a843907139d807c497023100e63173e7715d83a8882b36fd89b114a584137348adb83efa6c9eb2b90d68eecbf44e32ceedfd7d0079bf6745d6c1e7530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100821b5b2608f8300663ecd24f563913dc76d42400a8bb85db7caf4716cc5c1fb3c618a06bbc2ebdd336f78771a37897c2023100cd0baaf0c30238a3593e41d6e5351190ead83a386086ce6b76d82233a3e8e8a4b0bf0de2caeaae6b8234d5ea12e99eb50302047c435bb50067306502310097e69cd01426d547336678ce4f7f2d95918152af0698fadb6ea0dbae3162469e96cb7dbed7d7f3c5d48b95b4801fd1680230260e35c8a4b9f63f40d7ce9f3b0fb7365fcaeda6f4e32180922d4e7fe7e74d3c8a9b303b4827c3c3f7f6ccc7863408fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310087ecfa33392dea016a39becfd93109522e20dcccebd46f0df9b7ad5d7b5642111f72d51114ea345e3f67ef7de6cf3f2502304eb79a9079c2a6d730738b64ae0688f98814d0a6b99cf072e3f40d5a5be74deacc6be9724968693534e2dee4e407059e0302047c435bb50067306502306d61225e3eaa7ad223ed3792ea0ac77cfbcd64dbf5f05c8084b43e40b2beedd9cc4ffc6179bf4639762fcc1a8d34a321023100869c2c88899199a27f5b7ce0ba358f41625ec00084ab29d42c4c7c8506160c41989c65d0ca9ae4b39fdedb362fbcdc6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100980250900d4770264f586e7b1af86a8eff1bfc22ed2aefba37bfaa017cea05698ab562e8258d9bcac18f0dbda30735360230064ca492dc980074786fbc73c630c432134be396dffe66e36b41ab1f296d7d8a0e42fb8b3dfa5ea3e119c1ec676ebeef0302047c435bb500663064023012458e6f1f8018c60513921b176a0c48fa5cfac90d0641c28a4da261b29734e05917bf7a7bd73b5c47ef6290d9e9c52a02307d04b8fbb39193179afe68aec45d00c4c73b915f9f4a4a079d053ffd63ca17b16abaad6c4be1c548416bfddf3f0343470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302660e15c168176deae6b376e46809c66f4a26b2a28b1d14bf35c90ed0117330049f423d5438ac7315ed6f607f55d25220231009d631b38be92cc293b33a39faee9af1489f5e7edb7522090ed6f8d250d0a0553954f6c2879c87e6382e77ec31f5e73030302047c435bb500683066023100ed0125fcfe71b0d2243b2960efced792c6ba011d68aa7f6dd99842a08a2378f09eac7fc184f5800f0f00e8519be2c4140231008652036a02d2114a5e3cca0e320b817dec5cdba9dd2185a512b8bb75d25aa996c6d85bba62ed584f4f093e4e20ccfd170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303454edd51e7d12ede080ebfc2486b834fce6662799f8716a3f1f00f73e51743348fa0f3331cb367e5ee01db756536af802307aee37ec96eb9cc94cc3ad0226f8451f55e73bb46c848dc0cb8cb77ccac913bf2c4e503f602959aad795f0833ce420890302047c435bb50066306402305852d0c3d355c6139943d45aaff618b0677bbbcd1253fce0c3d619134134cbf09c11ed7db8760c942dc737409c70ac5f02302be63bf7749cf90dce821409b85789880287c1366954a0e888189cff0dd6801e7243d8c8cf3a9e4b51748c369d7915460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7d2dde861bdd90d84358f54a5597434f953d8fc066c1e1ffc813a6a0843e464b90b3024708715ed7f90ce720ab4935502301c0dade6dd322bae84a86199f82670c23f8e2fcb72262d0a32e3c93142e7041051f2ab0b3007229bafd5a20aefbb52920302047c435bb50066306402303fba7624b6af2cc5bcfe46de5aed2a693612537983c5e5703fbfd9b291c41d6e4d605972f727c782c225330ad8135d5102300ca00634840d683ce0da1dc70f8a8c950d93d5c086bf15cd914e567ca7c04da2f09c125eff32cefd18730263afb67caf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230578f3e35177d4f7fcb23e676133211a95adc4c358c79c80e726093f23cd8cac0b37c0313a19f0fa39659304d84747564023037c8927ffdd934635e2ca09fba2a9781e268e4bb27d932d5d044f00b3049b1bbba9fa95c712ffddf269746a9a9b41ff80302047c435bb500683066023100f8a96da38fb6120fa54ddf788500cf14032ec6cbd766893bae327c6539d927c47c58e408bf15ae005ee3a408600ef3fe023100f88e3fece752e788a8330841a866677b7546661927eaf559dd3436b247218b69080fe474511af05d874dcc6797b56fdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e85a9af5007a0ca4694f227813ec669cf056bcf44258fb0d90ed19b9a1ecbb0081a3bc3d3103c129822f11d3997dd3c10230389b9ac5c5df4d7aba94ff6affbc835f1f18985b5e0eb32dfc0cf2412ba5b925c5971d7baa3ee80fe40da0ca98fbbf980302047c435bb500663064023053e3dc4af163ccf21f4eb2018bcaabe1c6e4faeb47c9ca0f59eea725b78dc081bec7ed6eb6d174823e944d8770ea5b1b023000a73439e5c69e63f7d07da5c991467b4d9e279f6a6de69ff971757eb2b59015f29a228e93caa74cdf4cd4ad32c626ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b971c0aff4d5e00459dfdfb26bf03dfcf48ada0cb84b3dc69da37e3905f4df2fb0cc90cbed10fd457eadda4618b33860230133b1e039ad2969909553824602fc59d9168d49465fca7444498f1e1ceb5ee9977992c6b46800425009fc76fc3c0029c0302047c435bb500663064023058325c85afcf59c16e0071707baf3f3cbddb9d01f06f889741b78ffaffe4faf23678c22d1fe66ed8c16dc736e813b7fb023021b37dd00985b6045f2a53f50902268580021894945e20b3d14b46a2d7fadfb651fa062fc6bcd1a85e1a5bbc5254668f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c80a528fca5073af61531eb893bcb707838fbf99918ef1d4865560c3b47b2db05a575671cd7539b3b7784f48b468d4be02301a28924b8fb3ca98af4d17cdfec38dce981bf52caed214ace22c61c3043985f569b856f55ea93ade84d240627af6abb90302047c435bb500683066023100f369251f67daa6deef6561b2c8474603e799115131e596efe8a29e23f062d4868e4e08895a0b62b09d9e1b9732c06ebc023100a68cde3e72d7b32a7fde185721f7ca82ddb611201d204f7764458c0a5504373931923ed2c530d98fcee8eddd077033f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023066018616223bffdd2da5764a054bf8457741975388ef17632804f7be80a440d75a07514e1825654c17691efa617bcb450230739a4252aa065337d63100bbf74ff25d74185aed630fa5464445e2b3862b2b364e9b20c9eb251d0ae2cd5b47e4ff40430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304bfbae5f7194dae0962815cab2903af8b96b76855266fe063c8078546fe78c12f9aa9fa10e5bb40fcda8ad6b882a9ac9023100a632691c3e76556bdeeda58721d30d5f0072f37daa2a6b8efc03378ab813194c44027a5d3e08ad6fa5615ec88191529c0302047c435bb500673065023100bd6c1f0be7c1bfcef523092c987c3e6cfa35b8394776d285d24f3494d246dea8d957a742bf1a5c1e184169f0b6b7699302302e42622a5023a6c890a30a83210cdd28f778c8c3a1de98450d1f8997b581efd0ce1dafa766b9c5d6fe03aa6b8996db7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008b3f7089f0606973f648c99c434d9339fea812fa30a21a50c529376d26d15ed18b927e924e7a682f8dea3872a6ae95ec023053c674edcf270fd50959dc36f15b8d980acb5bf513f955394ee9a76a9d027bad9fa3ac768ced682a7e9f11695f25c7150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d536021d33084af2766d935835504b53444612d6c405fac36948cfb5339cf513fd376900c0e15b35ae6a3b9c7ac37c620231008f713d11a8ccdf5abc3bd3351d18713bf41b0aa6ef145fcd643de5652dfa285d12fb45d10fd94adb6bcd628d1a7e4d2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f6b8da3f06228b1177e62d5135668b17f0935d7221b6536ced1d4cf3b63f80e5f54ced574580b2b17157182524c031f023100cf48301a1142a3cbb8aed0c5292e1550f6ecb14825f1b1588abc92ecabcd3d852bd82a2bd64de0726be8b1551e3d5ba40302047c435bb500683066023100c17c099688febbe7222f45599361532222d169fb90b2de0f2c3904efcf6491d5d0ce1be9a9fc776abba41ee3773de30f0231009c2ed1af8006cd0ee2826cff77b6d74fd364b90a792cf05809d16a2fffd9c86e09377e7edcc89afe4ee0089b9fe675e70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085c9001f1042ff4778a8ea14c7b918f41491e6a5562894160c9e483488a08f7626d8d0e22f4d88696324b72ccd6739b602303b5d97435f729a6e1f8cbd22d087eb8b5d8af3937ac12e212faa3d3fff05a3e90fb1f902785e2bcc565fa6484cddf26d0302047c435bb500673065023100c5552d035057ade318cb4d3ef4b3fd6d54c145817746681e27c2d5c2c1a0b41435564a19d01c2d80fe090e55f5648a8d0230532deb6eaee1cd39f52937b010a782d3cb9700a9bd7ec85adb8d57707c8ad96b442f36b8e2536095f9d7e6c7a3c182dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009e334e16d4e83a8c4ac433eb03aed4c79170e4d443892be692663a134e2832d455fbd73b0d132571cfe509f466fd8dc3023100d07f1cb7c33ac0ec85248adeba98f2fc18ab484511238352d6c98548dba7f7309fd1095e554a9ff7ae1d401f2a5f8cdf0302047c435bb500683066023100eaa08938374b0e054819a84287ca736ebd2899fff790006dca42cf3807688d8f403f5150a289052e39d90c681fc565ea023100dddeefa820dc9c6efcf96236cb6a574bbe5486390bba5f6859c43f0813d646d6b1e8c4b9ed5a600dcdcba00c0f334deb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009eae255861e188497dfd40ccefbafc2b3c45c0db932044a877da6d29e3f4df60ca25655a5a6e0458d88f1af13be6278f023100ed3f074b76a2fb67433dcbf1c4906e7f5a7d6d756064394c7d11a8b4afa0f1bf78c3a934e8494934d0c3264382d987c70302047c435bb500673065023100c8b8b68ae445aaf3d20347f280f5ab87b5c4dbf5e8af631f8e2c832096ae42d45d446e676c28cfbfb8b3fa7de559a69702302e3f47b20d9dd8c76c10e23dd3570fd2df2179fe2b545b9c61769d58e4f05eb741809292438e30d3235c4698717b315d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230690f9727d8bb5f0475a635053f4e45fb982f4cc508816a382104fd9a8b4f56c8d5b9191aa2c64cc3652c8e6642237817023100faa43fea8a52d69e15103fbd7221fc90c59f41dfebfb1644f7b28c3476a68cc45eb80c7997c5bb9545a01f565e7711af0302047c435bb50066306402306aeba9e0474eae67adb770032b3f6d1c464a0d03fef5dcd0adaff9a2b87b040416eedf5bd3e8311f742032206d62bd1a02303b2373c20321e555751c62401d25c8ca3a52e3cda13bb70f7f2bbe5b2887f15bdc16f57f73e784fd2d73d57c0c069e180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301cfa162b452ef0075f41c658433369f6b0180679d9f3d9622d0496a76adff83bcf80273e84f1bec657c450f71a829b14023100c51c9a00f65fcb705c543d32b00bd60321b0e1221297d2e2505b55f52fdf6bcbd9d6970b3857aeb6120df27f29dab20f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ed2e80f6d1a256336c9449e8c1a434f8b1ee3cb8a3e4509767a073025e4c5342a6ab03fc990fff7da964c2864a6a315023022eb0be1adc2f52100106b299d19f55764d0778ff456994c176f3de06162b41909ebff7288c6c829fdf09d09c79fbc650302047c435bb5006730650230499d0c18aacc7ef88cbc5ff0c632b20eca117db075ba63094259da7f91d972b7585813ffde0d804bec9107633aedfe7d023100a116b29d8fa2a54f50e2252dcb0af1ea915b654a16c362b079148718a8fc60293da5b5feb9f5bdcc8828ac2e5cc612740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230723e163cc66e8c8399f6c017286e1fdabafb25262ff8740588b504aa9d8432c1d76902b13b753b9cbc9943872dffc3af023100ef59495980facd6ee13b0d715a5b0ef2abe441634e14cc4224e5c125d9c936eee3646446b5e24c2648040c8b55f392290302047c435bb50067306502304f9b26c8f1e5d150f4653c84c87b6ed80e124911c8a44a43934119bc7e0d3fced49bb02c71e6b143c399396478b384b9023100965ba3238fa78ab9563e55117e6c86d6ca0980692fe7a06698f7994776a92ef5e8dc15706a61847ec4c27d752c279d880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd63d02bbe3942efd0900cf24464c6f4105828e41af320832dfca2a22cf768f93d0f85b33ccb68acd4dd381d2fcf83b6023100cf049384f23a8c18834e64deacc1854ea85f78841c75de70829035a5accd58d1c0304ba1b0043ffc775c219a000acabd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023005e9130d82dd497b3d65aadcab4b4d522933958b07dc003dfcc594e7360c298dedd57fc7ffc241a1fde9ae8f924f7707023027eaf3e0045ed6ad138fef3bf9d3b1e4c7d5447338a8a71c931627b0ece33d7f973168bb99f693bd3d85c4aef8978c940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dbb1aaebf92758568c348f6075daad4682b9f10460d0f6a36040a78cb5c0a9b21239db6dfd015fc01819fec01f6c6189023100ef08a629429f2c061ad6a196d7352f5b729798137dabf0063d68dcf6611d2ce341b59941fec1596f5edebb76b07af97b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023021e0c395b2862aad621ac9918de68bf3214c32ea8252f5d759ee40d0156d537e5ac2ae4c857a4e49a47b3f3c0056078e023100cd906263275a3ffdfd352dc4953dcc123bdb2b439a812b24990c3cc94a3de6e4ca9ef528b93dcc6e75a0b7d28e5f85300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042a07ce3a3323d646493011226a4081607d66f1511f248d3e4c03d3466cca6417b7be3ad2be9176c7ef122db66ff526a02310081b4172f76b43886482dd92ab9d34b6b52f6ce68cefcc970f7736d8a5ccd67cb2848f394b7a8d46c419ba029badf32e10302047c435bb500663064023022309094ea346a81b62d40879f19f7eb56ad39e7c842349c24efc8487165373bc5739f45c44fe4fb5297abbe055c9913023021c0f0616b0ccbf1bddea57719bdd819e662f9427ee93746ca6396530dfe3e85b4eacab428fa0e3a1c8f55850249e58c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b2ffb924cc8a06d591e45a3e80523cedd2691561bb813c5601d4630aa4491ff5bad3697219b841fb553002daa4e4e30023067a2810881815415f0fba18d8ffc78517a2344cc59587f9d22d09d69a0ad2a3b98e1dbf78aa58cb77582d24c3199d6290302047c435bb5006830660231008ebc5042dfd94081135e814053d084eaa5501e18fa37dbe76e7bf324f6bfac82f6faff794054e50f3574896f22232208023100c2241b027042a4b600a704ca246548d9de31abaac92bfdb9774a19349049aa4c732a283a963721d6b3951b5c0ce658e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305aa712408d0d9b6849e83048d620e83997c63e158d54b4d9e713c26af9d47a404a967ab4f70957f12a0f083dff9f82d9023100bac4795cac98022cb06fd2e4f1e660e524929477c5824e636851abdf8f0ee6f627ebbb100c858199ffef27ae765f52cc0302047c435bb500673065023100f5e8907dd0326edf390c9b2b4682f0def12b13bfb2b8b8280d9ca85df637cc149c00ebb8abdaec50a95ac572e1f1d68f023042392963f06a2f6b30197e0e61954411ba0f03652c22614002eb53bce48c814790eb42157619ac8304ae26132bdb58d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b192b65fe16b2298ff8bcc19f76f304096ade7cf5155ca0f94b3938f03702c8c86cc851ba0afbf252116fe9bc4cbdab402307d20d7ff4df1562e39720dd41b1bec9116f2867ca91ef1beb8873be4c7936456329de60091da30fa3153432ec546be8c0302047c435bb500663064023042a452e445fa5cc71c32fe9c6230418b4a93c953edcc957c058b26fc0439e84013e9db4f97fd4219ffcd6498ff5c208b02307c99dc87ada5afd92633ceaf7f5dcdc0a2f3ca0acc424286f1e4fb8b205f1b0bd2c5c1cf378cc46b71f8a7caf7ad52230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100922e84f2611106cdb7bb911aa75e94536eee8e5111af631854ed9a72e50da7a870f4bfd51eb796660448f7216a4bc05b023100b5d12a396ba27da27972606b31df7a4e959cb7884113cfe61cb3792aa7fb3c31aff4da580af669795a5d5e85bf37f3d40302047c435bb500683066023100c2aec7e9e36f249d035015a7d62d4f78c50d43d0eb33d549f89acc37010a229cd9eb6849cd7cd88f1bbd6753346daa1a023100df102e9cb1f48a1b2176034da3144348d468f8cd31065187f40b6af1a9851e5b7abd8fcf628990a2c320dca034a051820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e1da03b22e2c6b02a69e560b6f446bb853d985d03cdfea167cbb3c3e96f9e13097b829ed5882c6e4dd8f5daf2ae7d6fa023100a8029f39fe6b38bec7aa0f1a90060a1c28c753424dc4815b36fda3e77d9422f6708039605f453cabe347894e055241590302047c435bb5006630640230327328c4423f644b9ae44a23973b72b8017740bf8c405ee3a8f9048afd86086f0eba1ead669354158b1dc6b678b78720023056e4d27a13afffcc27f2e5900a852a2e39165ce57b368a1894ae911b619ec6f9ab97854b580b35cc8485bf92c0c5effb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096f494632e83381aef4072579861bb394499bd584b0778e7543e4ebc6ada93f74d055e15d6a90d59ff3165e11940deea023100b12c85e4c4b9d2834857dafffc35233b1b3b9d76240d328ff3c28a6626ae989bd69e57017e505fa88de08d7a57320c500302047c435bb50066306402302d78b5280e44bfb00bd75f32e53253360aa69effab37b46493687dcd44813cc1105a175bad4a335ce26154ed158a69a002300e98b64e66fdf9c1de3f7ba5eccda211b57f70723a4991853d2adf152cce03b6746017f2a80a595a72e02836fd7314780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b75ee219ee8ddce20e9c35102599dc3d92b328096c7a6dc528d1c965bef9231fe9749935b6910c4ac6b9b6ba92170c0a0230291cfc15341ab6b5185f736216acae55fa8562d99bac02a6bc76bc7f60343b509fcacbf743f0d6d76aecb3f6263febd20302047c435bb500663064023032df6b14506de7e233afff3eaa43900bef37030d0a0d8a7670a4781e90ee0d6bb565ba0b97f8819a918e38d69734433c02306f04021de3eeb2131afc0d09ab6f06647c397a667ef52f486ba67951a2fb4989a9277a67f067c2a54421472543f3fab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091fa2a0faf7f7d88715b54ab7503d7d0c9289d97a8a74ab3a6ee1f3a112039aff362e7b7b49688c540f5875bce8aa02a02301e2d67b00d051a21a64f091550af0d8e5b6d279e1248bf9f878642b7120779b27742345619d23479dda7f032b712863c0302047c435bb500683066023100bd1a74263634b816c7db5d0be6bf34044688937c401ce92f9e1776607364e89c855ce8e4ca797e268749bda2fc1a4fb9023100a7b78151ba871138e495d586f883a63a68886fc41e1f863318e6c9a481a8fff62586ee13353883245e080cad48f5e82c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c9222c0fa98f3e7ace6938547a12f629bda32677d03a244d69f4100a3d826f387b2c44a8608b29496ffd951b1d73bec023061756a4c18c289b35ccb9df3d874b01ed4b2e970f82f6ac17cadf7e0c6ba0fc98e49f3ea3dd1c0a8ce17b2f4aafcd1bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300bd8c6751a7d3da78c25dd473e1796e93eafd02cfdbc61c0abf4aed27017d2670bae43d7de3a1b1f7a3abb5102c08e6b023100940357dc42b22f6a1348b8092bd7b5e1b23af3bb07a100d2d2f54dcedd589bb964baf493c3783584d55a2b7277a9ce4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c23cb2bf1358937685c684474cf250a0cf23821aff575ade92f4e22d262ff954219658f333e51e30c7eea740d05caeb50230789d237fea3cc4a405558adfd34612aeebe9f7541e8b1a5548c8297ca53acf79b14c08ee69190e593b9e4593483ba8300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023077899532741e5d9f57686b670a991fc5b6294e6c66c405e5fc3c08fbc85daa94c6f2be2b8da6906c676fc18a152fd70002302237eb545078d4cfad29162369034bdecd8ff44456a2c443a7269b0385108b1a5f6203bd05a54ffc30231933b6bf67310302047c435bb50066306402306aad1e2f4160fe3376fecce266dd99c95e42b7f88f4b0ef7d27fe7da47de914ed649f540f350fad4787ba7953db711a5023032ff35645debdd6d35d465f390442cd156ba15a0cf96fbb95d7665992960a63ec69ac5ba0306ff31ed71e68ca0f218400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb3f03c963dbf0b8e5a5863656e791491eb8a236503b0292668d666360187d4e277a62fdcfb9eb23932b0411b2861dd0023100ca493dbf30c2222059ef262af204636c1ad782a05de0740f25010a9aab6cee6c0c273a05799cd35f2a40608dacdbec320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028c52db4c57cbc54795b1a9258bef348df3735c24b23b5a4ee45f93039c04f210b9603693f93da8e3489f29e1cc22b590230570048831ce54f665e189af7fa8d6299e55c5289b558ef6ab9f0dfe2ebad4958321a24b34aed5ed5acf963595ebf06ae0302047c435bb500673065023100d3aed60264fc8938f4bb6202a8a5af147f0c6de6862065a5624c2a6641bb4932c607456e6f542195a03b8bac80e2f34a02301f387b7abbfa0b0677b8a7dd3f1bc0d52c639b40bfd88dc50fe3236e39e6bfc0446f4b04ceb80f60da92f4df440f74100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a616c626774edec6b7380b89a92449e70d4ff95d97012e385ed5ccd400d059a9b5e8d707f0ffba79040270bdb8c1f85a023043f97e259656777751361f78efb4b6bd355940848826295f364f1a1b207ca8de83b284389059f921d5bd43bcb77660b90302047c435bb500673065023100eb458966cf3d5399332b434f7a45377f416c6400d4e7fc4a511be6b9252d01f3424e172ede394d41297151066a02d674023018d00dd8a77f4bf5545b83be04176da5e11a855023828081697e4db067034391e7a6a177d980df4126364d85140c7e9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ed934f4bb4c91826329846cfbb14af688d247bc23b9d999ea4c5b2e3c2f536f5af49324633392dea931efd0e6304489023100ef5729cfad3fbe754b0ba897fbd88d1bff6af90d70c4d2ce1701b3f5df3ed3f9943a96fc645bf294b21713c8eb4314210302047c435bb500673065023100b1448b05d81d108a6ffd2f4357b3ab3f1dd443d2a3c6f6c8d915331c3569c4d39f3105f7e894e18058a637d71fe1833c0230018e5d738f072f6e2b6855924fabbe140fda59c6f929e7035e5058f804ad66efb8592be1173f8564a245c294db4ace930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b66edb3a60881873a16fbaedf3edba4e587ae82397233aeb43fe89becb54c6087a0e99b9de9508e9c08f12cc7de9446023077f7a2641e444f06b2accddd4013063d1767d5a54459b265f43eb08c520b45e98e5055e9b00821eaf4beed2f1225ec8f0302047c435bb500673065023100bc83bfa9841bd7e622a7dcdb3f7aab18d90137c01d548f63949be4edba7be14d2fc34de885833eaa521f5dc02f6ccd2802306d6c691ccb8593b2fafe7fb2930a81c9f43fa964b6cdbe61baf452e7220f64e3f5a298165af1134673eb660d277817260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1c62b4c74a8eeb9b3eb9c64c7c9ead230b19bc0a59f06dab4f9134703c328997120e93a75a500e0bfda946c830dcce102310098a323ac7f91d9e7d86d4414884f88a3ef10f55440a18789004a7effb691b002ee8596b08d7b5165b6f979eca44459410302047c435bb50068306602310084286778910a1dc76298c01583daa830bb961399f5d2057a803133fa5d7a14c3e07a343af6af3b7962d5ae6068ac6601023100d956d8b81e60f5ea393c88aac98e3f0f92d5f3f36f653912d9796654d8c320f1e72f4264fc3e0add484e7b7b2cff7bba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5c5dfea3f6ffe9653ae01c7b554ef8f5f3f9dbf009bfb409e5b1f173e830e591daf037cfb36eea3ff4695b8e1373dba023100aa9cf411c6ac0d6b24d36c1d27cd26b94e46880992639ea70fd76f3ad564b35af97022fe64549b9821ea70f2a11bdcc80302047c435bb500683066023100bc2f1e237f93b764bbcaf769e5ae4d4a8aa654df2e936f2011e913e3c4f3855d969c93fc90027f0aeb40a3cff38a2fb3023100a681982590c6b110d730172c7149a37301ffc327797d7a52bb53bbc82c4133c670e607b20fc206b4d7fd91409e2fbdf70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f18f93bb11a3a65508cc58dcce402fffb9312ea44e80571faa8aba694274e1d257ab8dc788dfc335778bf0cb80dbeff8023021e9ef8bb2499c30d5fca8a7ec58bbef783bc34972c93b58324e0eb31bce1d7a022281703536d2779bf6b86899ab8f200302047c435bb500673065023100ac35083c7cfb9e9c04e33dccedd7876fe29a202f614036724b0eecf21b110094efac139755353b3dbae18b0d55033a030230479c5a8636a5b72bf675ec8db60ca5b1000137ac233cd36c2516e24f89c85daeac7e118bdab4a3946e130fc8f16ee4a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300db97ba907aa9e18d369710deae6b6f2d97f205572612df3eb9138909d029a98f1a5ae2b651799081056606ade4bec37023100da8698e4be349244486843f0e982b4414a60be721cf4386d5abae47c83d65b3b571b38426f1d639c821932c7d5b3e47b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d67dc9d7cca4eac8949dd730c03b1d4d21c9976777473daa8fbd215a2415e4781202f48d88b7b4e165f0603ca3b2bbf102310082f7ebe12e877d03fefafb35e0a83fd20d80ab58cb889473e0c3d2e6114c731e0dddfb41f8a5c4216316fda375987f680302047c435bb50067306502302c9fd747d824dcabf0c511b78070c03e9e71439753b9f80fc889f4532ef7813015b822352a94dd29639d009b9ce1aa1c023100f70d39e97b2b389c7d56101ea8ccbb4fb481fc257e791d79cbbb6b904923c3f611f6749e05cf01f4df418820c58cc8970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008fd6e178e697fe2377dfd6b66332efde2b54fbdd30efcf7fc27df59901a22601e0bb9ba1fde67cab965c138f95d5ef2f023011ac57ac4f0ec1e8ad728f5aeeaac4dd770637ff4d682930c0c89325125d7ab68d2856aa8f6aa2ec656fd36c72cb5b0b0302047c435bb5006730650231008881ec549fc9f1cac84240066498db7930255c9866a2f36a4954153c0efc68bcd1ca812f9b11b413f5380093684702220230578da89d3407a980d7acd1f7b76d5e2fb514e7a9c17d6b183805b768522f44180a6bb43bfa21d0a4c5c35fff8b5a31490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f0dcd41452c0f12c2cf88741a8cd20ebfd96a2fce5b97bd61ebc4145ab3b0c7deec2141f3de1fe4ae8f190ae82c8ded30231009a0f82b3a1c2f101553892bdf13f68b5f2f82584eb08529bd01fec40254805c6ff02a227baf31fe9bed5b25cd46997cf0302047c435bb500673065023100d44b19b9ed796827893106d57183c1a9f577a8689c393dc8d2056b4a9eead077c0ffee3e5658bc31b8863b4a44fa57e602307e31ac2abc9e01c1629939b975766086030517f94d09dda1be55d18d7f3ef9e9e7c4c7f9802f91f6084a1f97f132a7ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310082e8aa360359f2a1864c437fba892dee5e46fd02b057c0e653ca4083b5b30ca84709f939852d2ab89ab6ada942677284023100a3139ebbb604c42147750eb3fd8b43474ddd27100f8338dc6d7e4d8969d813d7937024669c0febdf82610e72d28c75b30302047c435bb500683066023100a5a8bafde1acf88ca44a97fa320de0c34eccbc8804140d6af9f78b9699868785a44b8622f0ae16ea38e6b1dd946fc9b9023100e9dad8205ca40cb6a161c446c1af58c1bc1a50757508d8fc88c783d33bccd8e05a1dccda5f411210d22fdad4f7fc1fae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230370d85b82fdbc75e0faabdeead14c10a672a9276b7b8c961afb9886c520a6264849d8760e38207ebfd9f6ee7c923465202302fab248c6278c48d2624d29d0da97d6c7123a43442b73659b717b7870b4b41ca0699180418537bd9bb3f3f80510aca610302047c435bb50068306602310090bd07849c9052c1bac2c04c4777cacaf8448e92d1c9e0720ecf46b3b02069e50a93183d6725c584ef355a93fe1e8de4023100b781b4ffdcf246643f3151bf11748ea8aff9b38b503fce9608652035133a31affc422eb39a103d0997eb5589475d5cc90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b6dacea73cedd7f1c7c1629ef56ef86355c784816bb7e38f57d7dda6b248734f3b79b434c4996d4f6b4c82acece4daa023100cdf633f6f82b6748a0dda863cd1b6c2bc0969f920ad66991169776ccc6e8531503cda7720b1d243ecf77686c9e95782c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e27fc1dfc687558f8f0d5b49082da28aae8f15ae6ab2f1776f020137610e34e51caede15915f1ec9b42382ee5e4831b023044f49491a1f7e5c27eabe1989563e5d7f519d777aa2d55894b85152ad080cb2f2a0218bcc42b046f5b900a2f862b8de10302047c435bb5006730650230304aabe24e00fad62eeb535d02541e4fcb8c2860f9cb153538a987af2732b08b54e1903c9a5718c9cd280df9a9c46a48023100d83fc5ebb6d936d76d4ae3a0cc138900781b2f58e63115d8ee682af9a09988aa3a4b240d2dba4dcfd2b9cf6bd063e78d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310083810d79b39a5a0d75ae63d6a65b6e294ec830dfeabf347ef3e9cdf2a9b76f3b97f09151695ce2886f7d39c9cab1b650023068c906ae6e338db3dbe4b8c302a053239a3ef0d0080ac6199a6ef4fbed9b821535f63501ea9bd95e8bdacb9b453f0e5a0302047c435bb500663064023047f921dac6cd595444a0ffee8ff4107f4e50c0868c47c83659ac02cf27925fbb4824a27e2d6bed5c64c9660e9806831c02303998b30c933d5bbc278e25f5f2566d15d7aa6cd81036536d253abab180554f432b7cd95acf001070580b69e3fd90a1000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307329186ac114e8a6eaa0e66760499d7b5028e031b8be304a9eaa3399229d9865532c47eaf0f84903d31ba0bbaeafd738023100fccc4319326bb77914e6b17af25e7a14c86edd7eff28b4b7342cb68bcde0e2f701c0b82e61ee36808b1651663b3981ff0302047c435bb500683066023100da6a2c19637042aeef784bdfccdf1ed3b2982a086f1df37d8f0c20007674cec216b0d57ed1aefec7ad54ae964a0965800231009b74645bed9d591f34f05991f84d7b34cb9299f827de84db890aa8b85e6566738103776d45718443d0b5c89b29b29e0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230144e384c32b3ac47d55690568bd6119eef8c23fdb774f10f97c2d3a60609cc0a9c0304e4e356a0986d81c102a00fd8d50230412b3fa7cbf4f19ffe3e2e2d2b7c848cee73918f4d5c9bf61baf301f394e2bfe3da43a21f10a992f2472b3c000cea6890302047c435bb50067306502303a6a38a47b907ee712c0a6ae1e44661952548fecf31ab0085efda5faca5d661030f25e05ca9294c1af9a949da3f0ceec023100dd1897789e5eeaf91f64f7a352e325110be2518e543e9caec3d04184c5fa04d483c16f9897697856406fd5602468851a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305056a9d55ae85283741ca188ebc875109549421f5ae5bb2f1a6325cdad50938c6f5a84b97f31035b0e00ef67fc091d8e023100acf6848af3f6bb1e4cdcc05ae94424243f62ca9f07bc35125eba9b2229b6465bd2fd917a6588aa0d58c6f440371e4fe70302047c435bb50067306502301e116e36010ac0d6121390e8810c4d6e0022c8f0cc2659c8ff71db530c81e1ee8f5c4b9ffcfe2317561b37e5feb9b8da023100d8d0c6812ab21ab70809aeacfd786a97ef28bdbf4200de1cf3277a8907655c7edf9bf458703ecb29286e5c68d7c5d0670302047c435bb50067306502310093f58b3ba205029debf410f87789b47a50b24f4f1d9010cefb10156d3ddcceaeadeec800cde205ae5c1f5787d1d244a802303f90de2a640ccffb9d9989bac11073103c7103d8eea81eb74ac205a4120e870832cb45518ebdff1e5e1570403bd9a02e0302047c435bb5006730650230785c158180c506641291abeda07a2cb5c767ffcea3ac5739daeaca481531ddb47c8a0a031f99dea95800a6445c1046e0023100ca600201e76ac8177e9a5ecd27d14eb966fc0cc26c4be7e378c72742344712daaf04e5916b3c4dccbaf8e09a9a52add90302047c435bb500673065023100f3930dad5e85af69e14bd4f745a6291e938f88f3f0b43aab51232686ce1c8b94cf62deb62b5fb403bc216b5bea1b5f740230160a7c62c48e7960fde82ca79fbafc62ceaa30bc5ea1a880ae31c6ce28964fdb034d6b56914be84e94f950925b1e4ddc0302047c435bb5006630640230415712188f18e4afbddb83bb37d36d5ad92f4a6497efbe2f49e693aa08e848c08e969749ac09b9f815ab6a4adb1379bf02302879aa43a32513fa52c842c672b04b22e0f739d17a987aec2afbb1eed30894b59e3ca29a40339f20bf48a61b340f2bb00302047c435bb50066306402307f7f94296b8c2e4b89c52e3cf68f2140793700db9c801f9616d801f760d33b79a33e10e2650299c0da47cbca1232fb9102307e153acb87d8dfb644bb9577c8046843477e6fd71a31050cc7537399f2470392f379e497d74257f19e8f795564b1ef270302047c435bb500683066023100b28fca6dc30533d0090e90a49d71179fb85cb2d9e57bd62bf1416ac3626323711132f29dcc07c3ecbd2be8ed448e4adc023100e0336744e911c1e981264ac507f036374ca9bbfb8cc591221af4e2d6502fbfcf4248aee3b92ea9fb487ab9e5eab39ce80302047c435bb50066306402303709f409223dbd47e6f2a11102cef6dc7ef2fd7fe6a9b6de8ef71e2cd8677b1bee102d83f8e9746e66e7d69222fdf7040230281efca76e125c7a428a407fb6973236dc373bb1f0dfd97d885e28a563be419869eb6b0d2711ab5cd17e8243d0e8ab270302047c435bb500673065023100f57d4aafc88e7fd327e4a6a5acce45ce9e35a738bc6cd8c5301b9249de281f8317bb050419a8223bab84fbd09897780f02306b85cb5633243635f3d5f06037ba499039e4daf283050741bc1cb6d3ec054a45958602878e8abdb7285657b07a4cc2960302047c435bb500673065023100e17938ae5a9b360706e46ca8106698a98b872af8538b72e6baad96d157caa5543e2865e565202315dec07acd057768400230499ba5f21bf851d8904af6eb79ec9f791bb5e4f793ea1f8e1332e69f351c92e3988f2da68d8798a8c26ac8bd6453b0ce0302047c435bb500673065023100d9ff21653e45925f0aae61918198617a2663c12f4f925f327ba7bc7f44a4f6697ad47050cc54773277b42903b1f666e40230340f10601a3a732a05a0917d01bca23ec2cf735098d31655e2efb2c796647ca319823c63a3e967d8add03f965b522cfd0302047c435bb500673065023029098b597dcd2bebabd0dbbe09298f9e6c42630e3d77fe2a318a02bc618600a748f0b92e2aa3f4ede84884b4af8757800231008ad33aeb0ae4241a636ce2e1185a827350e927702fe83b213a0caf46e1853b7da1549dad46a46e0d4eee364cea4dbf040302047c435bb5006630640230663e93bc4b27e2104489aaebf047045febfe680927ee8f3105907b5246fcc8aa6bf83a989772455605f907f11dcb5107023038bb06c5cedf60617d2adace0adf78ab041bed4c9fb93f50340663d89e1a5a239d4c6ec3184a96b97058ebdb8f2a27bd0302047c435bb50066306402304ccf81dbb6357daecde1be48583e1a3b27b4e554e59421d40307d35c6edfff778874f6b21c04166651422e840c39b18c02305f145485035dbfdfa92639af55d7dedac2f91d800111e1141d0d5599240c9ab3d84e68a65c388739b068331b72cdeec90302047c435bb500683066023100e7f97ed7dbf8817e30c302778960dfbefdc2e83d20b76c0bf4904c0123ca775503482872263f434eefe9240bf810b3d102310082a15add6ec4625dc7f7ee15866807e7f334b687197e64b3f561948d80c3ece048ba9e8ad93aca97790328db29d347240302047c435bb500673065023100b7123ff5da72a3d84abed8efa5512220f78b4c762b7ebcb701315dfb2770b5aad5253b8799cc16a5e9e557b48663ea0702300e454cf001203a32324cf7ac630e4db1a5ecf15538220ce8d722dcd2975e041b7eacfadd1a355f2c78c23e650372195f0302047c435bb500673065023100e2f92e9898df6af85f60a7d3a960093a375cce71d1c21973607a4c1b779faa58b7b413bda139e125ce348fc6e391509402306598b473535b18e7eae119dfad1925c4b3884ae74c065fa463d0985acb7368ec86568a90366522304f0a4787597529650302047c435bb500673065023036b49ecf718f6fdea106851054dce72096f89ed29f93d24e90ac8eda8e8d208168c77fa58d4833ff9dc37b2c040a98ec023100e3a27f69d78db760f8ed493784d28ca34428a1de1938ce9374ecae86cb1ff3ef3cba358cf896c6b34836f3887de0fac00302047c435bb5006630640230661b904c62cd646d92404d3bbb425c0c41758f22ac4c144d43a5f8a6f41ffe51a1683e4fa7576e245aabe04474777d7e0230417b9d09bcd6821ab0aaf5023e37448e91eb2edc32c82a1fa3dfe413aa5249656273014f71626ccd377528e625105fa30302047c435bb5006630640230150f0c665cfdf42be36fb749895d7fb98e9c1a54bda2e3e032b5f41ee5103d83521a0a5702a71ab35afa5d37238eb56c023074492370bb52ca25efece858eb176248c78d47585069f77ea19423778c8aba0c2703b836f883e252604c16037cdcedc90302047c435bb500663064023034bdae0ceb71bb3326bcb2147ce1bfb89977c054b19b55e0f751c4cb434c5b9ddeb483e1115ed50bbc08fe8f1146468f023047198f891dffdf8c62958a8873a5ab164dfb130c67e794abc3423345500a704edbbfdbcaff6b621330312ea461dae24c0302047c435bb5006730650230313164873b8cd5c9e150c75a8bc579bb79072b9925ca0cf49d619abdeb32e6c8a282aff9dd1e7235d43d5c1b8afec46b023100fb7f508aece3f227cf14f542ffac59b52be62f1144230586c01e7e6bd54d3a083b3c1952963c82222ca8705240bfaa190302047c435bb50066306402303343e9be4394707d47dfa7a9811c563ae5fedcb3a556e62aa11d88012d0dfd3852602f33ad327f0b0dc16f26b8a23c260230492348ca4ca34be641549d2df07edb9d4241d9c6dd53da5d7d7d999bdfbdce91e5ec9b41fcc94b291e4a2275b06ae22a0302047c435bb5006730650231009245505a6e0ca5aad875d32cfb22ee9f5a4fdae1c90bc0ca28fe12caba0706f03bd573e6c7b23f670c811a7997a1eb3e023070b383214f786efb9a4fe2d806d358b021d088c4100de3d31eec162a2a20deb0d841220bf293fbfd65175c00a24429b70302047c435bb500683066023100f8d44f862e9e32bc397ceb58898b39b3c00e6a3cc05ddfb24905f0eed3f3f12ef21bd8f0ed748c4dc6c01997e47726a9023100a8048d55cf77fea27acaff7733098e638a64a0b41e7a888801d193b3f4d6796d82820b13bd81c4a71b47e9a7d517408b0302047c435bb500673065023100ba371a84d5da9f0ba79cb5f55effb3563085ff9137c1daeb66e5574ed606eeabcdd10818a643724845d31b90144c69fe023029cfb982d7caeb096bbd5cdd26e92ccb4302e3e4e9d489040b74da7ae304bc391480b11e57b39a44351e22614f06de230302047c435bb500683066023100e277b7eaf9cae16c56d188691bc98afaf787429c70475a80cbd31d34ce288adebe33ca1415f52558df3ad1278aabe05b023100bfe6b27e9f07158454a8c70927aba3c9caa03e46a7b4ee58350ef2ee61b737961aacb15d33f4b0637455ea6c2c5f9a890302047c435bb500683066023100cfbb0ba9e94b2adc50febd1a1528c3ca7df15c82b711ac91c54a122312cf7a700efa1a5fbe15edc05ce64f5a6c9c0db60231008b485ce9d158311c42cae94643f9b510c65abf8babf6eefa8510103298bd6365760b700707e7ab22788db7e493a5df040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100da1a7f2ee9c411f9b72fb6e2838493e60dc8ce7ceeea45ad6e274f5ee2d1326beacf841efe32c2d0fff97567fb00d3be023100a0f8d191f27b9f860d07089c685870fd123e51d6e8459b425ce6435538f7894722cdd9c2e43e597894e42708b86d2edc0302047c435bb50066306402305bbd30e2faa36632c90bf639ecc5f65ad1c98adda393b1ae64a9a6a7ba90900fe687cfb0c2e4c9d85f1fae92d9a7b25e02300c9859420b842d9a0867414dfe4e6d91e3e6e60abcdb7fcde605e33b9592c58741f073bcc1e0a4228ab156a4ba0ca1dc0302047c435bb500683066023100b05e8ed2d7c63aad61d19d9f8a4c0e6bef5296685af498816cb2947ee3de7caf3786251768c2ca25bb2a6fc3a2dafce9023100adb1cdedc46303f1fc2afa6f716f117cbf474e8d5226eb05fe837c30a95e20c0f8b3ebb79586247bde2f13f170c0ba440302047c435bb500663064023020f3ae80a98ccbe799a60a1a18942890eb036d1a9effa8f692c0ca4decb575158a95b3629430f886ecf9b79b81a50a58023043f208aeaa86331e79c00f15fe87630a3cb5751bdcc9d214f6e9ea87eb99d1217e41fe6167c9c033c9096b6965460c750302047c435bb500673065023100f5bca931dacdec8f080948a79bf3d95ea33f8feeffeca90c0c799697ffa6994626f88c9dd5b16a550c38bbf04ef64a9d02305c4c948492a2224c41f2a03e98cd384b4b17684a9befe700b4844b36f14c83380a8bbee1f193d649784e0d8c77fa26b10302047c435bb500673065023010cc7fb91e299b981cacbdae7ea19cb5c96b7d99b01cb1fe3ff378d4faf9e6c6966ca4cd18bd3733c40575e4b87dd45e02310096b092f1c8b28ec2d269fa1a64222e2bc9c340cc927aa0d3fcd3d275b48920109c35e4222fc8999bc0bf06b67b0761560302047c435bb500673065023100b13066b18d89bb8d8cbaf28c02daa2315e923ea8770aa8a7547a4a2bcb3a2fa76eb2e1d92726f2b293d144d64f8454c6023049732a7fe1566394e6f5cb2dd7c275ac40dc284a747989ebb261b1a5b16de1082af8397376eee3c7fe4f23f4bcd928a70302047c435bb5006630640230460445adcd1b4dd2b17354a52ec6b536b7687977ad3f1dee09ab3b14d1b331ce5ac98a8974df336268a378531bf07a5e023036bcadc8a7742eb86e85922e9bab864ad4b0c37623f0369557a77bef6c90d328f334cc4cf840cf909ecea5c528ddb61c0302047c435bb500663064023063a789bd90c096b12209d82c478ba641faf2ab4b4995d8d0571f357823f584fccc5f453ff81fd761001260f5ef484e7c02303f08bab9f1b7e500470efda62668eb4bd93c4ea2c4b1cea1455097e0f7dbe9e50e0f94784268f7db93db03e91c9e43760302047c435bb50067306502305b37df4cbe00ae4c3e7c0ae4615a32a1c03f3a45ac8bb19b1dfc997182c2585a3277629f31ea5a8f471b859052ff8a66023100e3ca11412ef33e0c2f283ee33262b8c843078039cf8f6e46a0bb00a5eeb4c30a1690401caed59e05cec80e3fbbaaa0b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008cc46824b387cd51d1a0d0abe8cdbda82e49ee226a6737b803064757f2b5cb2f5896cff8b480513db9f53220ac3cb9e702305245b936e2691d0e1813937b4b7f3ede193a84063ff89e3df402380886f30ad4b30e4899deae972da8e10753ada9a1700302047c435bb500673065023100b2b8d5725f481043c3604cbb978b680182493b3bce9fa58b9bfaceac3ff064e34c389d91b4820b12d13f3e9b9724ea32023079fdbdc06f46aeeb78b660e77cc1255b50c6fe479f3c1000c57f4c8a853179ec9d4750af464a53290c709fe0cbe76ec80302047c435bb500683066023100bed4023c7604fadf7bd49e6b18f22fb6bfa09280aae9e813e375a050635e39c9af4112dd1af85520967d4fec5c5ea068023100b73a74baf1695b82c747c154d06fed3689ca34f5b4a3895f5cf47eff81b629d3789b0ea8aeb05481658e72a0f627337a0302047c435bb50066306402303c89f0640ac30240dc724d14393a32a48fe1b95262e41f5c05b4d505aa13ab928e0d7274e2968b7a26b78aa2618cd3db02306c1ed4377679e20d8a68544f5f680544c4c012c3ef81da1fc2ba86d4c16fd974427016c4a682b173d57114dab3eb56a20302047c435bb500673065023100846ea25cefc41b35b8cc5de7165517915da0b455bf0d19e77bafb846bb8e5a1af68fee5621b46594c70c6219eefb5b3102305840191a33c78dc73fcf0de7c67c4b39b7fdd824c29ff391537ce3c41d1db0a3e49e80a74fdb76f61f3393c36ac8a88e0302047c435bb500673065023023dc8575756c5acd02c279593581706b195697d54f9f11990667e38b5c748957b1c1cadb53413fd30fef28060bbf64180231008e32a9844906753fdcf6d6b193043237f8cf5a2b4c7e2f6582eec76d1a1720e2b82d852f92650d40fae7d9aa71c809800302047c435bb5006630640230245c6be718878c5efaaa8c3dc7cd81d977588f3e764ca88efa93c4d092283fc8e44d196655cf134bf516835f2da50eaa023079e9291542dbcc464cb1d193833f5b169aa11f730c1f8b873b4ecfcbffda3756b865de98f1563419e12f44f73809b5d50302047c435bb500673065023100aeaee9cc2c7a986aecbcffb6c79b7e77a9ee828a25e90b36125a4e2b00b841668d2fe652b7c4cf88935835aeed1bc7fb0230040010989e647b36a45b6adab48b8eb0079d0ad62296217c4ad8ab63fe7803d74685ab6073c731f447412779aced4a8d0302047c435bb500673065023100a3223f955be3df68c8ad760e8edaf2ed6b8b90c2c93099e5e004303e6c83acb6a0c3c1e9a621f613fa1de51718d03b03023039d9820d93f4868ec2ae22abd9e9697fbfd13f3173d145e46c13f5ad7f9ba38c9412b7dcba28258d78efb774793b39a00302047c435bb500683066023100eda1e9bf656c848de4a75573a91f7bc696c0c2a467852cf5626272df7df64c1c98f794d3176c7721936b24c55316d3aa023100b9ee32ddd64b17bbadf3633c6392726ba0dc0dcfb058a00609b9b539d02db25b9a500f252e57aabb76d1ac94463da9790302047c435bb50067306502304c316ff954917be84dd2714a2612ed4ed3f7bb2977ef6ff5a8d05e0037ed3359b6ae1c8566d72aff719f607f0d5e5ee6023100b52bf6f9738a846367f34a9376a2341faadf088c71247ec029f8eef7bb714ff8dc3c740e9569b36e067c9b5aa0966a5a0302047c435bb5006730650231008473c0279ed0a950e6a019efa9cc5b3d157d26afab0c93771832a014c32a77edd37a1f8c43db0c0283767f92d9021ced023037bd1043c65e094eff6e611b593131f6f82e4abe89b31256833004a1f79717c4a4150d547102e5dffe2e2146f0abc1310302047c435bb500673065023100a64fd05b0a2ac495ab853d7a925c5b919015b3dbc565acd03961369003176d753e2ef90d466dce759268c52f5eb5c05302306e9a576299d5b362174fee11306734ba7b9c01553a4eab16d175afe1e6c48550015cd1d555097e3a025e23857bcfd7640302047c435bb500673065023100c9cdc0abc5738ace0f3ed9f79df6e27e4447aae5848b058139d96c14f0aa423a026397c0c8c14ec945240019172678aa02300f792caa6d2a4e5f17ce89f9673cb8979e54794481a636d961c8f4ee9e1bd4ed97b1e05dc41f5fd273fbf7255f32ef6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e36585ad2bf5f2b4b347c6c00cbfe0c9e2336564b96b82b96a7ca88955bf08b28e4d57c4e1b325977d6b03719170091b0230216889ddcff978f5baabef3be558c61ce60905852524e8b82716c411b52c57c370123c6c1ea08365bce497f70b82eab40302047c435bb500673065023041bc2cfd7763bf6fa077502a8fbfb57084638fc8f2f7d7586581bc09a844945fb63e5e11ef3ae05c2402f56605a32f3d023100ed58f2a39b22789eec00039351135d230173f2cf21c971cf19238f0a9d69bb9d1cae6309cf110dd04235bf3a811bb3790302047c435bb500673065023100ad9b4b8c1403cc6da4de7eb6e946474c03441d4af86f9ecfd1fd6fe8941cfffb99694618813d2f0695c2df3de58dac68023018e7533328bce5b1e61eeca87d8ee50472a3363ffc08ab5269c5e9553d6bfa72c375698e9df9a488cac68c2e640864980302047c435bb50066306402302f0d4fd07f7dac0ee2e93d327757a134ebd63ea8afe12cf5c5fd0b8c688fad8eae322768f050065a7ede6f63fde875f102301bb2dc6aa758369780aca7040204aa4df4ed05efb6dbcd919d956d2c455f5aa183578ce1590947207bd55ab27bbc5bc50302047c435bb50067306502301ea795e871008b6b652a21bbc1b564d318f2c233cf7332e74e1aa371467456b6f3a072ca6940b4642964aac8e9e1cf680231009a209104b532f7d209f2f4177731e3f2ef90683d72555c15b014f1b565ddede65d23b8fab510f6b3cf2d8d4b354042230302047c435bb500683066023100ae1fe7fa1768325158f873e694c6e7cc1ad2218a83b18f82ba219e5e6cc7a2658f896eb55bee640c256e394741b4758b023100dd47cd3e05f5a5fdbef9ad35416a418af2b648fbac8fb7d3e8ccd907b4c264f8dbd282b4d4ea3e5ffe727fc3b178a2320302047c435bb500673065023100d7bda4b8180636399573847ca6af23fe4b3c94df5d9b9c7c3d87bf7e9ed8a8ab3c2e3ac0b6fd2d2c56eda29180c005fb02307497950b1129c07b6fc4f59001db0a79528d4bede1f52ddd0a2696b056b607c9a46e030954d71472ec18fea7853664560302047c435bb500683066023100b3433273d724ab14e3b35738cf0dde0ca8748d3ab65150270f5b7cb5f55c8bc51ed9e35cbe7e65d1513f0e11f3db99bc023100c0b0058679183f0715af68cfac546d15e9f43a383d1088bdffe0288d4cc96e1b3f562452ce30677ced0f24e8fbcff2060302047c435bb500683066023100aeb0cf78b4a0a4d66916961f47c2b3c59434f62efe3dc570d0ad22665ad5bf1dc598cbec712f9dc35823f42012a96cc0023100ead992fb4dd5680048f0739633b7a79816b976a368043242a002cd19d565f6a0d20d7d19a86992d46cabf2ea6c647d6d0302047c435bb5006730650230328e67a866ae2b49575f62fd567cd6742708c4cc014a50db793a6ef7c29023e971bae35b476fc8ba05e75ccf108b2c54023100a8bcd4190e13c06e50204de49ddd5db20139724382fee90acac5bd9bb3699838325cf3686499cbe1315ed9e5fa20189c0302047c435bb500683066023100e699fcf4eb2d0a5f54e403f8e35df941f21ede42887365ff54b2dd7018c82c1de622ce0e6ccc4736434cc612a15718780231008474e39e67a2cdb16c8c0231e052e4ea89c07efb0d3ff9f5a61e27f7164446063bbc61f7be0552d089de5e6fa8f6ea310302047c435bb50067306502302d8773525baec3545644d00edb893c91c622e3c4ebb6373c66674a1041b62804d57a3bb07adcf1e7e624628f95e2fbd6023100a44ebde1349fe88b30a3675d78a74f9440415568d15dfca74493472d368282c3dd53f9a3c9865ae372d5f9ff43ccb8170302047c435bb500673065023100b17878f00d73574af078ec193db5aaa4189ae2dc74e1210bd17a35d2af7c68b1cd312e1ad2a5354eb218ace3fff9f43f023060535d4ef1dc3698b4e68b5dc8464214a6d7f65c3ffea5764cab8d6f3f58a76c9a7a68a234bc6ff0c2a8bf405d800e190302047c435bb500663064023046af87d0ab5d3985539d7a78335fdfbdd6cf4bbf04fdec64548d2c05254fcf76e1e72e04ce0155623686194bd9edce6702301fd259755a01015cb3a09c6a2cdfef24d736a00c6dc060d047cf5ab1471d0c02a4418cf4f20bc3a290f7374575124c320302047c435bb500683066023100c8e9268f62e0c058665bf37f3448997f7e6107074ac6271f21fbc1f4f0658947fb16909cd5602e45c766b2f37cdb3d2d023100e39f768243ed49a7704c780c124353295faa81b25b9456d4d8099eb0a1e60e2159fd2709f768cd7e36f7bb2dac2a1cc80302047c435bb500663064023010ec43c171527e6542ff10684b8b34ba78705cf826ba72420435b56c7e8144087111c6b10c1ba2f451cec095e4e41ef402305ec38a3c3671285a9974f32bff46c1425c03db1ec61cf221886a94a356cf2a49a5eff245e76fd6356e3953b645ec3f540302047c435bb5006730650231009e9fae888b05d6180b717c27732c15fb0357ba2cda067f6bb337c6dcbb7fb839d60d2bd8340a5ea6db1170b478c435fc023062001ad82e2d08b64ef3f8a3878f1974690c111a1ac97be50e1fc8b628a71c2691c17d5760eab12a64c0befb977b38300302047c435bb500683066023100ce2afa3607e55d775acdab452128d9f45ba7e24c876e0dcb07c72a43982781314ec6ee56038b71333a8157dbbed5461d0231009eb772facd1da4a7e9055de3fe77574fb4f6be5b36b76603d6e835418275ec1b10ed4edcee30915543a7e316b9bc75550302047c435bb50067306502301c1682b034ca7b8637f4a82093078308080aa8ef45e843cc177391aabcb24a62a6d5931ffd3198c107e7e2a6a545280b023100bdb385153b584aa8422c344d8dda57ae1aee78231bc2fbecdf471b050df8149c75105ee035aa7478c5b333ee721284f20302047c435bb50067306502306d0e7ac3cbc4f8d808aaa770cefaa7c7c6c6004bdd540686fcc1ef8598a34a53377e4c9983ead8b3e325edc4f89606f4023100c7550b5ec5ee09e4db18ccda53caf5e032fa1f8a38df9c86f6a836fa165f56350fcca522a6585acc473287a3ec47d7df0302047c435bb500673065023100982fbe017691989e39439faf16e1fae0c3cf5d4a198158b319da388934caac304ecf5bf668f423a08a8d296490b96a8302303bfe864345d5af78054e8dc89d01af066d7eda23534f4f391ff4871870a41262bdeaaaa1aec0cab411d1ab58c22b76dc0302047c435bb5006830660231008f8ee6fb5241971ae41a32636bb1e41897fcad26620d11b4f0fb1a5b793ec070af1d3e01f2654cc616dc896b435e14c402310094d89cc4868d52cb68ff428b95e0199e1aabb7d8d47589412c5003e2d002019c08617d594cc79cd85990a241d73673690302047c435bb50067306502305ebc8695432d6e7057218672ec9c30ce3397773ae7474959050d5184c519fdac2a1638635a90c05f7efb49870e62128f023100ea20786c4a181e6977c714af7bd4c32673f788f5f66ee2fbd3eabd4ca537ddef47611bcfad2643a800fde903cc764d270302047c435bb500673065023100eac963192af2455bfe0f89832cd4112cd674db6b64a735bac8e8d8f685061b58bc9018797c0529fbef239ec93889e4f202305a05a682d3395166976b435a21d8eabca6112775ceff48b22e47bb3a20eadea774fe0d70052a56339efd9747980deb8b0302047c435bb500673065023100d6e2e93a0962469a2e26bb73a7817a9336de863087fdbf387e09198629450c94546bf093ae96c5a356fbbc05ebc24042023052f94acd4a2bd5ebfcbbe7e1dfd4afaa5e979e32fa064bb59e5e26a00d8eadbdee0af3432d72f9e3ce192b4fe916aca10302047c435bb50067306502303d6c81bb34df6c6bf2d847263f8bdb7f164f1fab69a355b9abcd4980925333af1780f60261782f1e3edacb82f00344c2023100aa0b13a45286019db94af5db4e7dec6bf9d169697caaae370adc0345e4a295429168fec4a145487c503195ce87f387de0302047c435bb500683066023100ad8796f652ba7d8a4e50a4b70af4a2f7756b165c488af1a00f647202cc36da96ff370bd512b0f9a1090eabc878202a69023100a18d7056ec26680a3c99d9f19e98de751f152d27c2b2c9d5d0ce75eed58e8a37ba5d16c42dc90f8e74a4971cd5eace090302047c435bb500663064023068ffe344cb383ae8b8a229f0c3edfb63db73a33e52cc8b996165a4dfd411da6f5ac666290d8db2039c90576a9c8ec80e02306247b9000e2176c9641fb29b0283fcd35d0ff318225dad2439e0e6db9527ce6509f00db0297f16fd9c9d4734d458471e0302047c435bb50067306502304ea443dd066069573e6d16b102419efe514026a421730690505d0ce02dcdd3cbbea5b71da61e97663d061387dcd5362b023100f1973f7cd1a8fc585f6fe05f5c5293d8d17fd2770da869077e58d0f1faf6aed6ca7736b2df7eccba025e185580e01f610302047c435bb50067306502305896dd3c2e55b07e6fa5b1684511a38f4cccfb91141fe4f8f4e0d1b1dadf2bea9699fd80078f4c626e1fe475ecebfc3a023100aae010e900e7e66f44984eb88fa1de10032cf1945cef1933467c27311bb05d9d4a8fb1556b547d95627110a589fd92f50302047c435bb50067306502305568f9df76f908162205846d4d3744cf27a51f982e9b048cf8dace0da1e68f5c66485fe02464d683489a48e667036962023100be4df37329a1c5e0a92d84125eb945e708d50979d570247eae23f88bedafddfe17c566cc818f7f17dcf58f63df9eba4b0302047c435bb5006830660231008131325aa1924b6a5b59adc63f06b4186bb35ced17b67e9635b869647b95764960e489182e51aba753b0a704350988aa023100f4f589baf11509eed8818b261ec8256532a5ef73f8b4ffaa3af7022c102bb9f4b2fad887d8dd3c145048c77dfa31cfdb0302047c435bb50067306502300083a6dd49d341886c41de66b6e8a6f595a074bdc695e9b74eac9e8f0e4d8b00d3da38e5d560e8daca636f5dd1b02171023100b87cfcb121577806820fd51bbbb2a5290dbf8bca99833060d0d50123ac8af8c7c3e78ab557c9aa3a5aca1bf135c6eea30302047c435bb500673065023100e9dfb70aa42d0788a1f1a927c811d54284b9b8ea780469e22f305a3ec5162c434df114cc884970026ea972ebf72dbec602306970b581a2701f4f9365435f08afef8d863bdc09226b72e37fb683f9ecc89563e71d62f56bb7986ac68feb1c92e073a70302047c435bb500683066023100c9b5d61e968a237f45315a543866668f017bdaf3ee12e589f33a5b01cc002ec02f5f3a84293a9bc69eeb3bb6ef927518023100c0e3dfac8ac7329dff983ab237c4954d074b74bc89cce6346031a151d1474ba0d85fdcec3906df25bf15b52ebb8d357f0302047c435bb50067306502302a43fcf0c6e5bb3f65d94092e34448e81e1e19829dc74606a3509379a8cf52189501f8cb6f61678b0356463144d5a030023100b6440607f4d419c9197d8a2ac4fe8ac45c1e6dbc722eb09599d439acaf328a3f8a70c728f441dfb942529a67d4ce5b630302047c435bb5006630640230351ca67876102dfd72fcb5b78b6c9ef2d25a276717e9493bc7b5fd7f5c9a3cb159560f7ab5d8664e0e9f0e0d6cadf77d0230127e1e44cd97c88710e03e4a9587004435f9453209c6756cbe2f8ad0e72d7273969f31b4c782f881ded019eabd617d050302047c435bb5006730650230226dcf375bb1b43551f310db017ec4e4a4c942eee1f59d684bea8e4b899aed4b7735c8d75e366a92f2b380def1783a31023100c72ac25c9f170921d0fd7f12449a63b43371694136a734bcf244bd59e6a4696633f8b92aa6591a2b9ef09c78bcaa3d370302047c435bb50067306502310097351e84fbf9bc153c370b4d1f629e23409ec57ba4ce18a3209b072cc73b4dcc49077b2b8656ac2dc233b58ef14f4433023033ed13ce62ba1ae5419587e36271d110766c24d3e653c32c9a39b5d779cdb0c558ddc4bff4c186e1ce0577ffcbe9b39c0302047c435bb500673065023100f22ad382af88adfab1c34394bbeac57b7643bdd5e149e7eb4b0d4c5e2011c55cf0342a50de64d209336178c7cef3224102307448f54a782e4fdb1cceaac12876fa82a805cbf665ae31274b6b148e22dfb8f3faace7728da7af45be6240196b6143820302047c435bb500673065023050fed1e646a82fac30589b25f604878654a1ed71cec49b9f7ae6753b426ce175e08789b7fd11c066e6239537ee5a3c4a0231008b7735563bc5487a52e70d1029a5495ca9074e661cacfc1dbeaf0c8878c3e6d51d1eca47169bb53d00c079aae25605e70302047c435bb50067306502301af20a19ed26ee8ac72b1bb72d31a037d0c7cf73966c4566c99f363eeb90e34e2826883cb66346b3d41a2224c76aba29023100c61a81edf319fbf43ef3b148b5c1c587fea0104a0d8237a251d99cdef3b9f17de6f45cddeb555aece7b334ba948838230302047c435bb500673065023054c1bf145814c926834461bced8933bcbc72da7d3dafb75e80f3a711838b0d80474daa56eb8267aad042f34f77036e9202310097fdac14e41dfd611674e3f4f921ddad983d60ee870427d3b38f59272cf8ca47928cac137ac6af446006033a09db0e290302047c435bb500663064023000c73355bedaddee0f573aa82f92886db11eef781d33d5d63b13a0aac11ee66829bf3359093a341983764be4b8bc366502300db2a9b7aa82492d02a833ea9fb95069401336dc62774a25de1b7a9a48f055257bb351206dc4fd2c07170d828c9407db0302047c435bb500673065023025308a2a3d7ab6e6ae988083f71cc47179758b02795a4ee1c1f660bbf0fa12635c69b2fa117b1aea2642393055c79a4e023100a0317ac9e6868e11acee2ee1b791d4fd58a1c4a8c8f5ff418ad3e835086974ad74ed8750ad336172a7b1c14e595f9b8f0302047c435bb5006630640230495e10c822ccc030e825ca114cc21977bf4dd86558b52a0b4e56cdcbf9eaa831b79e6d5e13af5dc87ca1df4770f4688d02304443c3f201fb76b02e6f5baf01a4f5a2c46f7d79e2610a722b89fc1a8b47595fccba85616d276b3d1e86f00c4c6e475c0302047c435bb500673065023100adce5ccd2bee458b852c10e594eaead219257a0ec728b3c22e432ac23daa8ce14f73d375bacf0c8a8d29be255549b06f023058630781c86237ed71164b5d1717aa791887a8d92879651effb3088c1800f8203de27bec057bafb33e51edaff6113a4f0302047c435bb500683066023100d1e1def5cd62d27ef99f3ad879556d973a965ed6f406724055cb4bc5b60473aa2cc96455a1f1e24cf0c5b09ee0a2b3f6023100a8875e8687bcd0fa5e28ed07cc6cbfb5869b0b554e24d8e89ea753ebfe8b04e9968a877ea87fd036160111a95ef4e5e50302047c435bb50067306502300c1ca0764884cc760a868c55c6444fc007fcaa03dcfb878e4fcefc81995446c9337c0a34c39e5b95d7c2fe0ebd9a2d14023100808fadfa42adf3802c6edb489072e035062f0418b230c240e5e9e6bc2bd675ea8dad1c8e38e36e68dcf8cc3ada0d744e0302047c435bb500673065023100a6e04d0d64ccaacded2af300037539ac31cecdcc78c277434b8d74a094e09a3d9f4e4525ace01a8f9b2aea702921e1b90230511ee89ee0f73281d54f5cb9304149b42365430e99d67f974c888a6c97fd2376bd29fbf93c003b82238a3d916dfb99120302047c435bb500683066023100dd6225a960f4668c067336db9d99745e7f29937faaa63e60e596fcb0b54c243dfcbe2558ebf8b322a39203d4314c8801023100d53242d97204f44a778517843fe875bf6e07f8bf126fc3768980713676999347dd807620f83bf71416c56515745a27f10302047c435bb50067306502310097b909b0c9c8a36fcd16106dc339337e753fda965d94452f0383423dc378b01be7fd1b68ec30653c351c1dbd6e05829f0230097d97534915ed9d05ca429f57739adc8614e922eb6d5b341ba4148e021ed90899b6cdc3450ec76f608fe8b887f045aa0302047c435bb50067306502306624f73bf4fb152992756fb800c61e714e21c9e143456b2c0371413abcf82804283201dd28a786963353fda17012bff1023100adb07ffa9add7ba7ccc378e177f2e2127c78d596024d3aa359787f7e74bbeb10e8e9d85d5136cda0c56ddc696a402e530302047c435bb500673065023072f1fabaaab0fac713d9e2c83d8a86eb2645a8b2eca7e22e9117cc170d7bbe6da1b30c088c51c92b41222510484edd40023100c8e9d91c401e3e4bd4d91d0924504d816c8ce05eb72e2474bb52328550b9780102a149196d901e691b954042331f7a630302047c435bb500673065023100d252d6bb168b6782487090fed9f3bbaf10de49f474d1b02f1cd25a68207af5af0216ae25acb6a42dd34f3a649647119b02303a965d569f670c25e7bf33d50e7d4b6feb823d0e419fb7baec2b0dd0bc608c3a714123fe318fc839c085ada903929b9e0302047c435bb500673065023100e1cfd2fab23757b3adab48ff020ac569df991057b708450ae6dc0064199391d342fd572aeec0ab62730dbf5693aa53e1023004f7b39956fa62aee04425ac281661dc95933605d815d774c9d3b565df70d4196c154e147bf0ac453e5ff0c0b44fab680302047c435bb50066306402301d550d0c358cb4760f06ab1315e02532f8d593ff8daa6b24bd4e108e715c510fc5d92ef0c913f1eac32a8b8fc27f558802302b49284b1b92e1a4751ff2b7f482a131d7b839b09ccaa55577b371570479a072b28de60db5394547d0949f2a6a6804d40302047c435bb5006730650230025609fbed2af4d6d6166e53296dfa226bcc175e8a87e4f1a03c21b9968117fdb4a6125fc2d97a8c2392a92084b91255023100da88ac3b1150fe72048db5028d555656ed090c569cf736a98de979b70a687ad47ebf8f66306b3706f0659c5076d5e90c0302047c435bb500673065023035787d28a056a00272844075a025f84854a485f02aaf02cc644908f8b7a0c1ecfd2333697622b9742313c2cd94581869023100c02025cdede6f4955433543b1f3da6f10611dbe700217f185cba4a6b01ffe531ce6c09be0ec1907385c152ccc465437d0302047c435bb500673065023031986109db089f6dc17e55e2a81fa464904452f8a709126c074d4cdd0e8cdcb8143efba21914acfbe2c3c9810ce88c7d023100c8805c48c81fe6d77f000060ea3c45f81e71044f1e1f510acf1c4b210d3683ab85b38b9bf99c3199e27f34d851aaa5cf0302047c435bb500673065023100903b44cd8fbf36aef81c1e9b948506172eea776d9654c2a94b59eb8857dfedc4a3f58ef3e542d9a9257959e2d0ac6f1d023049d54ebe2ca823ccf4a5f75ca6b8bf2a966e644890113eeb0774b219b67ca163b047da2c1cc2ab7855028229853960550302047c435bb50067306502306a2ea3675fb9696ea2355763eed9681c1f7918eabdd66e96c933708002afd87c8145ad9a79f9c20ea9a60d4dd451d588023100fa3b9c15e6978206db805ae7387a5d207eb0609fc400ea082e376b3580d31e2c35c47c0d469db02a554b9dbc699ef9a50302047c435bb500673065023100ba01596db374b43f7ec22dcf4c175e7da0d440762135dca16480b3fec308ae649ddfdbd605d2af7f2efcca6ab90872bc023045d549afa9d1d463afec17494787bbbfa96c3bed6c11613cbe86c307746ec60c5b29c11406a5e1cacde498d530285c030302047c435bb50066306402302a3038cbd498b583a1ceeb05393a33f29fa79a3f4cf33965e87433239d17fbc9ca021553c50df9e59a429b528410edd302300a351b3ce5dad5294bee45f25a3783de44d4ad4a26f373df5673ed7c533e0785b63f6fda2594c17026e67cd0383044910302047c435bb500673065023055ddf04d190e50e6e9ad6b0e2bead79cec7d7e7d550b38736070ed4eee4f004867e394816499d4c9cacd2831273bdab2023100e121bf28c0efd4ec5dd6a83e9b2afcd9eb3ea801aacfd42bfbdc87f7e1c1180694104255b42cc0bbca4a1b87fe9682280302047c435bb50067306502300a332339509abe25540535ac720a49d70d7ce6345ce46eb428711c79d4979eeda778e3e51b102411b297f440c3e8da6f02310087488b33c0c491b1dffe23456eaface16388c0e159e5765a8e4c608067d8d01aa7bc67cac5fe6d790ae6abfe245171330302047c435bb5006830660231008f107cd08439b242e8cfeaf5d38e6874e4b85e3c14bfe6d5d0e74ca81b8932c5039eaea78ae02f7dc2bbd8739822a0ec0231009a824ccc477b922f853f399af3f1c28da004a655841078f210f1a1954fc3471233e93c8025d15b36b2f7a60c7bf472410302047c435bb50066306402304593742e4a616d56b0bc63915ad14521191261f80847e75f3dd5b457a4ae75253f3369d4b2f4c03391d772d9b48cd0a102300b2e8dc869913e1a3150cdb7c9766c1d9a8bea829c5b08e72ed41d0b0f73046abd84dcff3afa49a74c167232bfaf1ed90302047c435bb500683066023100ccccc942f8431c31b6ae047420dc6ab58e3004ba6539582def5281dfd467a9020b82705f4ec3385a5e0cf5af119a5826023100dffb95b98b5ad067352a484c6467cb1096fc924641d3c8249d51d7f4b0598e8863893fed736c3abaab55f0761c69b6cd0302047c435bb500673065023100a34bffa19fa35955285a8e9916996f7ac184dcf434b038b76a47f856891f46b45d76fd91b6415cd2873200b5b0c108420230435faeb28d4187b61b909e3a0bc81455086bdd14b60698287b4c941da8c0b44bacbeb642308739a0c53b249c0e470cf90302047c435bb500663064023012f02cd44acc6aa9e0b28f4939c49f8d68a910790663aae8ae81003c42202b9f61d9cffb6872cdf3ef1c39ea4a5ab5bf0230680331f70a22ceff8d53c96ad9c3752872eca9446dc339a3ae3dc36aef109dc7cceb8bcc8b65da3bd239c4ce2dfa6d0e0302047c435bb500673065023100e221d28baf3d87fc7a2d958d5d0fe48d5394ca6c0de98cc9ad0b8c234742e41ffd6299a63ec50440e0e574741d0874cb02300ace36bb982067422336e043af1f8857bf28f1242d6ac2f59587413ecf57ce7e6c461f601bc285e719dbb13e0e9eb41e0302047c435bb500663064023075c2882d296d418afc81f108b32c19435c734a268082377d56fafe3fe37f419b47536ef0dc8eb884c21a999d3d2b4ed202301a3ca13ae0d6ef70c51cc3aaf3df43ba39f09c19a64c2f8915d97697693213ba0908e1abfd0078cf83c51a41250d40d90302047c435bb50066306402307bb0ba057516575727faadd620e3d3d2800780de666109d8a0d663ceefa070e65f677562ca9bb95416e9b58e7807780d02300947151f0c5ccb22b9ed8123d046d8bc68a2df6f8b2e6d2f2c6468ab5a1e27883767a32e2c4d3b24f8539432438fb55f0302047c435bb5006830660231009af6b1b26ece676a39a5795ca7f07d2c69ea32304d09e8acf084b7f60866ca308a3ec4223bd9c3e29f8bce42fa78d33c023100d1cdbd7daa21e7ea310463d2fedb5dfb50278bb614ddffa4ff38df5b19e6d548dfc790d099d13e1b2de170bbcd0ddd4f0302047c435bb5006730650231008256fd0c8212560dd6795929a8e2d00d30c071c0c51e3bbaa42f2a30b4f42c648a1245cb3d86a6b29f6e32b5a869a3c4023053b10c6d4f16bf1d43f68446a56c6204fac8c9d12ce292a6bed9b2e54f669c8f8cae58b0bf46fe3311895916ace7cef60302047c435bb500673065023100af6513d7ae2345d2d69e825f57df11de8f7ea3d264c6303a629ef9426aa8466ce8aaf300b782458d31cdf374ced87c25023031ac1120f36652d28956f8d17697a69ca55613ef91d2b4fad9822e063a9ebca2c588f8a2011be11e63aba7a7978afda40302047c435bb500673065023100fdf4d7161999a3373a80cec449fd0266cb75b9481b9e97c906e985b562082aba99fe20be3230e01e57499da0ec8c3de2023078c46e299182d55e02b1570421821c6599ff0a02829801c290f666ead4f26b258c2dbbd0527b871742576135105dd75c0302047c435bb500663064023023867a04fcfec43a24d5089acb463304ba337880413e1abfaf207c09c33d216b05f340ebf90dd78ae104272186462cda023067480152064f7fa815a2f7e531bb73550fcad7af23ca95a9257e721e2d1907ca7ba489fd190ee13d63d24ae3b0ef23900302047c435bb500673065023100d99e49ba198c72ec54b192288fe2d6cada1c41f271e1d540b557fd82dacb5fd86a5bdcf84d8692582af5d1986e5b792802307e798c9ea7bd76970e356a512d4489f1baca9e8680696d80ceea4eeeb2688ec935148f781781c391779cfdb196849fb20302047c435bb500663064023020dc4054dcf9589612a6f20f511c356e5379dce35521acade8ff856a2847984b9e759d21098da213ef0cfd8af5c2d37f023070822ca37990a742c31c2f470ad8b4749bf03ae22d781b2755af5d14e816daf13827a4de8249a333536aa7e3d19ed40b0302047c435bb500673065023100928d8078c9d8660a3cf296088da2661f48d357df49ceaa7e3c952dbe8cbd0da72cbf91706f54eaec0a4e9b68d35e6063023076384ce71b6a81ad7d30f7a00cee13a50f6896ddb1ae9d70a01479b13ac4da2c5c30829520aa6a487f932ab610e0b2f30302047c435bb500683066023100bd241d9359fd84ee937c29ac4b47536fea1730671267cccdc4a120fd1f9f28b9736ea3f724f2fd331efa073950d85ff5023100dc683830734ad74af86107a66580cbc759c5d171366cf1194a8f44052e28b1d53d8189d9554f0b7b074313d7d2cf01cb0302047c435bb50067306502303f25f5e83f888e8228e6960d6cb1bcf20ad6c6f4797d375dbd2c743ad1221842ed189c9c1e8b3ac153e3d2c5f512d1be023100b540131fcbceb5cab156bd9f0ff248077207a353baa8f943d3f9bec85cfbac668a68503d3d21b9af620ceb47843a60ed0302047c435bb500673065023100d9dd2c8a09810651ee5774938dc97ce512c8b58a48c86b2460e855f3b6966ae47c81f56eec7145261362f247d8f61b6f02306084387a7777b8c62afd231c4c4de62ac5bd7a799435bb4167e42d54b3cc2ea61ea9d92a6971b41f0a2c8cf032fc7a250302047c435bb5006630640230407ca73f115d94602767a5451c7b84b07e98b514272b7dab7b10e99d8e69c7752ce2b4ca345a993d170d6024dce4a97a0230557c315ce56516015518c6c1f1434722a7bdcc0e9443fedd43d9a0609decd28957fd07442eb33b04f085339d250d32a20302047c435bb50067306502302698768d8e76944b1760fcb3e20aa01ac4143f5222bd87b6fa58605381e694d37500b81c899cadef3a4cb62c3fbfa850023100f9b7da082011c58c94b8eebb99c81b87055ef3b208746efa4a93e903ca85ca92c44b91853e177778e61b01939b0214f30302047c435bb5006730650230190e5ac1f4b87ca05f25ee8b7590c3aeb8cc12ff77876dc43cc6d778c6010aee66e3e93ca629da19896a39a51fd3884f023100c5439382a08c86c866209ff2947aa6a29b6a1ed78e1945eb775ac6bd2a8460a6ab79706d2e7f0b210b0436d81b8ba4700302047c435bb5006730650231008d21231cbcf4d36697126edbb883ee48752a475a8fb1f70ca5a35dc23b10f38ffdae646f25adacd0b6534435e6179528023012d0876ec6fb87b219b2c4aa7618a9205c5330dc540b0aecbaf0c52e6a69a533af5e754c609719f402db70aceb3fd6b10302047c435bb500683066023100e43e7923f61b9dd548f5b1d904fc3f24b38407699e1ae85b3021722734fb2f9d98e2402d33b7de3445f7546b2fb40186023100aa7dbb67f0ebe5dea9c98fafeb1029ee6efb77f283484b1aadf2f581dca8f234d2e29a94a46751a22ac530c77147c4cc0302047c435bb500673065023100efbe15b02c896d606d8b7ff82b9df27218e7383756c9ee26d8fc66c3e5b6e18d1b6b15bce6f25601fb81d97e9e0ba80c0230699ff1357a8b0edf68eda33ba243f6bce7250e5ff526f7a9f4ded4d307582fb1ef3a77d94e99f671fd6cbf0d9ae945f20302047c435bb500673065023052380c9ff4cc8b12df6cabbf20282900762beb81676f22333d7909722e8ad9238899aef960e6d2dab7e5ea0712648f64023100934526c07fc32a8fd06c692fcb4a6faaa9dca312d9c95a1f434225552ef092299a92f81ac47c2965f6fcf5608f3ee1400302047c435bb5006830660231009e6b524aac9cf239778c7840dfd61005b1f31eb692c444ccdc8b56a32e32ec41eb65cd9daf0ba48f4a5fda7d25555c9a023100e1d19ee73b352d96b39656d53b2cdf64db44b17be23ef6a8baae0de65b36ffac74fb8fc37fdd0505324b3a08a3d399310302047c435bb500683066023100d66f7ee64a512aeb02f5bb7bf82a36018a398afd949a8e22db2df34591a3ce7d9279af3284f107fccc0a03e67314aaf1023100b320488e3253605b7b17deee7d77fc18228a07d72aefdfd348ce2f1aa177e35359d1a3e3c1d6ed3b9799d8b6d668afaa0302047c435bb500673065023100de10930ef3b7674e6c90d04f487a7b75c7c4575cca6623e6fc2b19b6f1bb99c4d057e1a76a15076cb956f9b2b8b86663023074b56b3806ccd8baa6e69663eaf14705e63be13071f99c3889d642349314d2e35d3973c1ed014a66a2fdf23cd48861f40302047c435bb5006630640230617a4b21051e055dfded97b5c231fc74c00454b065b1e1d106327f43816fbe542b90f643913f482c21bb4311b8e537f202307c9b481bc353f7b1f93deede3d30e4c327f53d8c6b1a9d4f586b084b92492323128fed9af1653c99ed5bfb059a2390870302047c435bb50067306502303905ea4e305ca805da10a13e2efd8ac12fd68be4273e368633dcb67e8752cebe6a27c0639b25c90b34239a81361ecd56023100bb78935c8a83500e40622117ea0024b5bfda7b15ec434a1fa33a0b0aaea5769e0732f214d64bf92a26ea95a6a7f822900302047c435bb500673065023100ae426915bc4e7bee179267d983619c98a96de7ecbe55aa04ff765ab1bce41ec8f0887f865203ff598a3f9a14d87b2e4c02304a506b6f001840a49c26ad38a9e2a6cd30d248d9f75e85af1c1e769d91e1d876ffec0050cf180e951f97f3aa7d951e580302047c435bb500663064023046a75811dd84e5a7a266198efa88e5fb4d5a2939b974a7b59651a128ec49cd7b8a8d12b9c83684fc1fe9b3556238326602307d18e28386ad72615e0329a2d038ae658618eda7c0ef2270e19ab77b497cc173a5efdae15f123d6e34527a7416d1ea450302047c435bb5006830660231008982c3fd77b3c6b62dfb2154efbc399978be75eb950713284532530d962b16be42de212fd86facb39efb3433993931f80231009a0a316a7a15106da040174522bb5848902689629c3a23c6b1e56dbcf3a63e787ed42215c465dabea4ee5d307ffe16410302047c435bb5006730650231008ae0a842925e11db88ad6eaefee3c3e4d34b8d4e989199b6346f830163594577e625b1f266c8c6630f8f0dc76e3bf50002303dd0277941841e1b516fdd433bb2ff56a1bc535275cfcbe0d15f57e6670a74dca395791f569cf394e1193d7ac98668580302047c435bb500673065023100f7c57c8046a223e8e17b37df25efec01210211ef940965320560b9a81e579b320652ec7077821422e969719ed2ba76a40230075d3af86951b29ce1e1416b9edd84294cb37d8b13c91d86f371ca24ad21adf29e3d673fc4f6ad1ab10e02bacd837d010302047c435bb500663064023043121fa3497a4c9720036b50c8f9cd15b11801b93adfcbc4245bfc2e37958de6101cef9c54308c540dcd232ea124b8e602300b6577c85376678d9bf72931c5699ea3e6bc181349ba960aa3dde2e3ea8e33002115fd6a1b3bab8de4e9545fbb092ad70302047c435bb5006630640230293a9e99a78a8235789685a2fe78a7f7650e0ea589044d3d65d869c85bbd917a1f3482247becd593d77a761c0490f0aa02306fbd9feb95f4ad2fc35f9638adcb0e1a9c5276b88dbf3f4459a574174ddfee2983a32488fa1a19b5d1997ed1cf1eba9b0302047c435bb500673065023100a4c76d946a4e76705c33aaed150ff1d04f30e15755593920cf7522f43f758afc047026c4c8645479587e1b3fc3acf06502300994970eb10600bcbdef71c546e0d0fda77bcb25646293deee780a60e27134b478023a27053204c1b22512767b0a65b70302047c435bb50067306502306b863b5f31e56c0c7c732a021748153b69bd3d1029959efdf49362e4616e5218a4944915fc41bbf7a74673fd6936deb2023100acad0adfc7dd4b9785f25db81b1b724a7cf0d18d4bf601490a91061197934a9dcacbf5c6d76f2fd86afbb1c3d568af420302047c435bb500683066023100f47b81659d73930536525c53dc78f220ad997128f6a52956a153d8feb3caf7001a12127fdadd6d63587758c2281417cb023100f7082a320b241f4c1ca1dfc92e78d098dc3c9f79db04e93209d5d0f3701d5d77fe55382c6592e976756ad2688b94fce10302047c435bb50067306502300c647fd7509cc7f728373a04604272e32a30c5b7de44d33843f93ece1fbd1c5cb0f83b697bd7ac59e3bb41a3dfa01db2023100bb82b42e1490d629115bc307cf5dcae07c63a55e37c5c9740b267ccaa623b27ae8976230280994ac7e916db952ada9a60302047c435bb50067306502307e737fa52425424c81be91a4ef6e1f70769b98edce86c3d0fc61c7c6695a2ca4eaef4d3de85a92f4f656da5525579a55023100a5562557324a227528566948c6308d6ea0addc7f87ca5da0ffa24a1d5b71d3f81da111167d9a437a86cf19f3e9a3593f0302047c435bb5006630640230014bc8c3d9df1f33ac6a7299cded6fc43900d22598ec7b7013be6157105c6ad2a503bd259bea171eae56b79a47b909f402305ab5dcd363c06296d81615cf77fa3609774e62017c0e86ea37fe49b5fdff83734de5869205f14f6ec66e3361deb3b4530302047c435bb50066306402302ea3954c5edfede62b4accce2b08746667ac11014ba9eb5ef72a854f9d4b193a59e5dca1b6c82dc2e7139dd06ba128dd02304f14b57bc14144096bd6cfea8e0cf6c645bb3c923056af6867263dec80781dfc0a6b57ee3d64609517e87b714ebe46c10302047c435bb500683066023100e3e5930a71110dd51c8e5537d81f9438adc406b9ac772f84e4de711bc6841a218a6b3f1fde42694e656877ade9460515023100e55679d3780b4d30fc9f2b8e7c577c4f9a5a61a80406d5e1fcc323312b36603d7cb37fa0f5edcc35cdbd9adc6655f12f0302047c435bb500673065023100a5c9b889642be26c31fb1da68574d55e23564ff2774d7bf2ab0d06f11f982af37220e6c310bd7a2440e5855500afc48f023050113fb33af406f3fc69dc9f8e2ada430529d3f16fc5b7a5cbd8ec575adc97c0e1287f86cfe8349b0d8c94aaff9b7b9c0302047c435bb50067306502301a86b301c3a6c47caa8c2ede35a8567d620604202bc4e131f8d254ae967d0c1e136fc5e717e89da632241286cfcd9aa3023100c965a1db7b9bf3e4581e98f451ac41679a9791970cb0584b2c8d075f4fecfaefde5fde423ae340f23747fdf39f4189b90302047c435bb500673065023100f0dc15559dcbeae14833877eecfe636d8c67975a53f1f8755e7edf336c37e088c16c0bcdbcc30b4e917dd6559239083802301ab311c1d57659425c2bbf9fe1a376f75fdce73724ada59cb6b9c5fecccd2e6d2bb0b4b36c38470b405060c933344bce0302047c435bb50068306602310091296b42df3f6935a92cd236b069f7662c9e674e28c092a5019ce91e729060b20470934a4100b17fbf8821aa1eedf806023100ece27d9c62591272fb190343b929651235068ce74488c5b3f6185f55985ea9dd7f7188b55bc6ddb50de284d7fee7ec930302047c435bb500673065023100af9b9d5f0634c8d59c6113bc6d74e94bb710a111e6fcb3ff90aad41c6ece5b5463deaf13d64ef50f983e89a040f2740f02307b3baaddb51c92452af350a532122bed16cdfe4070f878f4ed8d8e9e067469cd3a2ec577578233101a67bd8dbc5997810302047c435bb50067306502310099fd0db40f132848fe5520d448e80572ae4248e7b0cbfcae20b3322c23d5ac6146f2a22f6d059f990792027e2ff072d402301241ed8fee6c9a918513a0b3544622721eea2985b911c70d145b8bee1e0d83f11e60693e2589a82504ba8f03e8eff5f00302047c435bb50067306502303bca91bafc9891754e50c90488853486459f1a9c54ca3e70b3b28d79096a842a1412c19256250e2aaa202bd32033fcc102310094ea9b82ead8819dab11e3f023f59b4704a87f876ef65b962de1d9fabfb7fdac85c370555176b316c5daeacc6990ef690302047c435bb500683066023100db4fefb9ad1026e3283f00c9a6393029a0faf06ae73f16eef1af9036825e6b789d96fa7a26eb67566c4f0fa063034481023100fb6be3ea0727d23072cff8de54c9f0d3058eaf65baac4917fd5bec80d7e10b315b9e7b26237a17cd3d7f4ebd2f53c5250302047c435bb500683066023100eba8ee149d188d6dc48d2d239e9e08bc92e41453455f0ae64595fb363f13878e443d6d9d7d7ae0fbb4d150385c42e6b3023100f8e9587d6d9de0467a42808ed07c89ae21cbc2c701af598153d85a5b9dc597e96390e1e7801095812f8319e616067f000302047c435bb50067306502307889a9ae5e5b9912aadba9e9fa2333f5cabddd66914e48ed5c29e4bd012f1c9392d3a4ec04022e948d250e8a34a0db7d023100cee3411dd3dc6959b1f99f4951ccacad2d0493f5cf71d25217d9fc72def9eb2ec33fe15ceafa9d886ef05a63f585f05e0302047c435bb500673065023022f1c7d8fab89834c5643ad98f5d8ab7748bf86cf55032269ae018942b648d418b06006e1c946b8c461376295d6fa7ba023100ff813fed598c7b5099591dbbbb58be145260b148b2d503d5a22978cfecc4527866fc9b2c64ca3fe6f2004c54ac6ab3630302047c435bb5006630640230690c1393c69abae092344a42e040c0e218dbcd8146a2632c8cf56fee7aea70f0ab84ba2a15cd314067b7da30753290e402306f2e42e4978c0f42f765d062c8e57320eeae5c12a6daadcfa8b3a30f79edab5c55abfb84f5dbbef61af6107b6bd5f2a40302047c435bb50067306502303a5e768bb3009fefc824a7aa62e60a946571b2282b0d7de31ac4722e813b3254698c9d3851b90886d9551c8d60df9e05023100d90f78102e938510a056f05eaf3e3436eeaafe0eebb9d484987983ac56c4d9930755176a809efa62e9abd761f523c6820302047c435bb500683066023100e83fad34332ca26651af2f8b4a4d373428b0ec76e333e90fc7a7aad936889c15676db6ed5e9c995006d0715c0ea84362023100df02145ef3fa09f5f0d72c707e97295c297ed229197ade9e1b09ceccb7e541ba31e939b408e494cb59f36630270254250302047c435bb50067306502301f62abd472585c2065718cfb4e7a66fcae47bf6fe18b0bbf58a5629c604cd6eba5812461d6b702f6c0d88e8b77e7d3d5023100db9196c3f9badb4dc7c8d0bba9daf897d82d4a40996e030fef03cef94d382b757069b5ec0827f235e2fcb2cec6a846510302047c435bb50066306402302be55895ba5d16b0ada6d1624f6cccc5dccfa86ce1a925c0bde568b67b21aeb5bc3d59e077adb239af2d796d8fa95f660230450506c58d845f2fab182d778f1bc08477e6e63b00fe871dc9c471bf5f2560ac36476be9649ce4d4bc1c2e58560036a60302047c435bb50067306502305c2c5236f7fa1ed8aaa26f23248e1ba6af881e1eee1e998c358f2b9f7caafbdba4d47c344181f3cc1db22d47c1ba6c54023100de18888ada6e701a54d3388371b91827ceacfb7944472336c316fab39741b2bcf666486b505e84a673a60e09527bd6c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fc36dab0222bd10763020fb6ce5812f1f50f1273175d49decc2b0f5c8e2b17446791d3e7df4989c038eda764756592e2023059105dad2c072fe0207a6cdac88d238cc6e057d7d529fc369451305895d533b5787c61d4880f7ce97ca2a441f17c43db0302047c435bb500673065023100f0837d565efc3e6c42da9f3342568efebc0b3b3f79931613b2c42d9a061eb42bc3d7ad526a971a01fd8dedf728dc8cd8023013a69c276fd5fb3e43611f43edf031d5a7796b057c2825b4b701220d5e948af6d8e968b5295639febc2539e04c85cf650302047c435bb500673065023100a609ef33e7246b41313dbbe41f542d01b4d58623a28f140da9d8348251d754326cff92a4e0604a15afa8db99d97f76e8023048a1fe2182bdca8aa8153ec507c9faf83b0fb18b8e0530ea3d818cb38fdca4ef89c2e7b53d76bd4e46a0bc662d5fbbcc0302047c435bb50066306402307350dacb56c07f92c386fbc6f8e24c96f16679294189d107bb4dc02b5273d4dcacb9d83856c4965f865de7e0ccda9efe023065db87f218b6d9cb011e633cd6c2340353b8552321103f337d91f1159b5e7dc08dc44d5bbe987e5d9a341a53c8ba2a790302047c435bb50067306502306b3c22951f8bd9286e7ea0d6b0ef9507da79e7db812157affaace97152923d3c7cc7521cc8c07548bc459a77583370f0023100bb9e54b9df3aa797df457da31fe8a14d75b0e99d9ececa84d25dc68dc6cc4e6d00671762a9f3218f6b3a4537af54d2c90302047c435bb50066306402304fdec419c7e6d058dc0ca8b32cbd0e8286b70fa10bb4ec2a36b6d327d014b88d25cffb5f32cdaa0e7d12c2f11310d51302303e6028f08eac9bfbe710ccf57c06d7e6f92ceaa1b7f42c70e08a37f49360ef0c098669547eeab476df11b8e451315d9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301bd0ebccd5bd6fc28094095d4a7c77719e3628245997feb41af778d74296036fe9490b1e1f9003559c0114e327afcadc023100f9d1458ba01f3dce49504bab84929ff4b650843c710b63360aed054e02c0af09b90f9ab0f1d96bf97dd3a919c396e9e70302047c435bb500683066023100ee3961dda4a1311a368f069efd45cd937ab24e2b7fd2a9f3499e8e52ff917b34ead242dd8e91024adc595a6900a29bc6023100f329b5df0d2a7c4ad5fb99ad8b86e2c78ad702e4aa6d4d2c42d85bcc33ed744bfe302e870e3184a598081d246a4dcd910302047c435bb500673065023017edcbe6bbbc60bc3502d9cab228cf1616eebf4bfb596a88b0924d5f070587f2c497aa2ad91da4a8ed0bf98aea092e8c0231009eb5516c769ff6e080e3b80a815cd381e536a52cc08cc48e218f571d53842b73fbee3d0deeb68e9bc68805a3e07c62a00302047c435bb500673065023019fc5ba76fc34dd8013c3f5fb871094ecdaa646ba4cd731294e4561426ad8e3d3766062ee78b8914971a348fe6f88fc7023100df115860240b365853894363ab2c79dcfd921d96c2cbe0d26883394171ecb058108d18f600864bc91c537d0f1aceea1f0302047c435bb50066306402306d9d9f1385223cc848da84ae415634400ec3f7e3264b368ca895fb8347249c4ca611cd2bd748566a09f674129034ba63023026488ea44c5209b9bde07b2fc4243c4da5ff03a1fe7b190cb6dfa2dbf6588b41abb1186f806ddf86a84a43a1c7df4aad0302047c435bb50067306502306a99f79853c2dd041e89b2ea9e19d8157348683052010cb6ddcd901d48463d3c699b1c01753d47dc7e51b4811fcab4270231008166175445e788fd210adbedae6f60d4a5e9e52888e6edffa2af6f5275f46fdbb3da66db46f01cec4db00d60c2ac2b9b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402307c8e83a446466b71e394c277e95a855f446930cc19b30d2af167c070b8bcfdcc0d6438d28150521dbc9690cdc60a54be023008b86717d59d517f9f107fb566582dd225467673bd6ecd4ab1f173be8f24f47d19e4229c86a4a031a84f6e39bc1c9c060302047c435bb50067306502300f81143e155b4f489c7bd0b7de11cca17c4c2cb5a2f21100b0649cf4928eaf45dcff2e24d95931be703b71b8710db544023100fc607612e4b115732e2f35ff2c12de7d2f5652066a0d7cab75394f674ef02769ded9688565cd9ee8cf73e86158380df80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a89f29270ad6c6d1d8982262e1a9a7ef3ab7dc3c8719582005a7d7d78b5fd00d9fee915a1c278f924d14038505d9403a0230750c870ad90df56d10f4a818e987593266857922193c6354193b85a829f454eeb2e44acff6aee26469a6cc68a4ddd9040302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502302eaca04b0cb237a7034754165efc55003f357f08c9e17ee3050ff61bd8db977015c86163af9c61def501fc504fdee9c1023100ab05186350558f72aef469a3c5d7273424dc1553b60d323806bc77a3b382f194f0cc2561a92a09f86becf84897f748ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301990d03cc63736c5874f9061eb8499c7327f1bf00db56da180357c9cd60c7007b5d7ec1b1b8e53fdf24dc72bffeaf311023100a0bd348a2b37591b3f0d047e37a7076f70f98103e8e2ee344eada36a138df9dfad19e91bc7af9e93fdea016be3c267530302047c435bb50067306502303923686bcde1b1919585a1cddab49654a91df85dcba594e30a23feacc6a48bd4d0de60da55a1cbc203e92c8c77eb4820023100a45270de3cd9fb0fb3eb2fae2e150b367f2279e71656293c645876be4ecbbb77b756d2c2211679826619a8369126fe3b0302047c435bb500663064023065280a5e08c4a66d47d82909ab57776edad69ffb4015ef42e8efb85e0029d5dded975f1ec6e4af7e059dc9cb97ee21b20230189f1b8a941465a72247bf98153f01c8f5d3cfebcb9cd7b90d4b4291b3f0ff2460f97618d7f3f854cdffb93f59e4d7410302047c435bb500683066023100f3a0be14f7b2dbf266ac7e631f03d089e8f0772af6463c93c5130ec554c5910a935aa4d7d79e8da9a09a99065efc313a023100f23b00cad3cba83a6b6a9d7fcc231fe8db5968e0a0ed1cef5ed3ade51651634e2d869ea4715da9bf2b55259e128a24f00302047c435bb500673065023100bfb4d42dc37788c3922154c5ed6ffa7216118fd4f5b2d978ad5f9c646db0270ae36bce1c883c39ce557c42064c25844a02304b0b1c9463f046427e4cb49769f2159237b20498f5e67d792c7c1df74ac98cae0600a577e5491bae2b92be15f14270e90302047c435bb500663064023060ac7c9687a133bf9f41d3af8acc05ace59a6bc156484c26876964a9662fcbb657c2ca8533a9b4e9905224de8c5d7fe302306e8d208279dabd070ffe8f13ab00a287cac3e7eb329a947d2b642d2c8560a7593e55f5b66c3a21b7bec3d359b1267b9c0302047c435bb500683066023100b7c7a879d7a9f130c96bef7fede211cf51e25b4eb155537c5e20eb675003fcddbef877235cf30e2613850e5fe5397c4e023100e0ddcfa04d61dfcf5270ff60f557d1424a6f76a8827cd133b97ddd3849776b23aaf79ed1a41912d04c5ce108861231f80302047c435bb500683066023100dbcec9058427f6ccfb99331d30a6e174e90cd79c6d449c5b7bd484ad9549fedcd61366a8fa62627b058cc79d375df8bc023100e29f5fcfde26074e67e8f070653186a5f366fb4a66e98fc67f9e4dfe92939dc878e58962198d6eeb11914a79fa140bf30302047c435bb5006630640230492ef3126ee35ed8a099a2b9b3e7dab2402614e907d74f2637d3ca1a0b39c69af89231527aadca4eff6426666d8511a70230045cac96a5a38ca347f7ed370af8e66dc4574ddc4d07b73381bd4ec1589dfc6a460ef397a62682ed1cbb130970e6f5260302047c435bb500663064023067ab488ed5ccda230f13fbb41ba2c5a8f855be5c979eb985be994a135f38a6aec5849fcdd9eaf3c837d7bd2c84dcbfa10230226f75fbdc154b97bcd0d90cf4e1b0b39d27d9b5f25fd4d8f0984a6fd01f17aed238a6fad1e8c1ada70e95e4037eda140302047c435bb500683066023100cb4fd44ab90c4b207afab5bfcb5efade3d928ff19d529e9d58b8963924d12c71c89801658ea7e21d07107e1e8b808c3d023100e4c4a21cdb440e3ca52bf28193b3b50ea74ac8374d999dbee1757aba3c9189f75485e13c6a0bd584224691cb7f3707190302047c435bb50066306402305749f3c931edc1dd3d498b7ca325c24aa1c0ec5280eef7c1a30d1c9799b6058519222381037bc8bc9348c62472146c72023076aa8cb75b2c391aee8cd1244c5a4111f917f7fd857e67b4a78257bd3f5690ab2e6619f103b2251a4fa0bd6cec6e7c580302047c435bb5006630640230191a8a5657c6f9ab103918222580486b5d298c8bf8bbcb8b5d87fdcfcab56baccbb122f55ba635322d8e5e84e2f7ced70230141572a01136858e68c401ce70206045ba772fafd0d4ec9f06b5183c477b01fb0e8e87f052d953c875d84a08271aa0a50302047c435bb50067306502306497c9b7b1caee03b517d7a9ae46af50922da44d40daac08f9e819f82aa60d90200f9e79a8f75f4052f0029ed77becad023100890b1a9122bb18dc62f1a72c4d793bc3d0fd1c53d8af8a450e6c78062d2b7fd7b795008c387c523b5b0dd0584b859cf20302047c435bb500673065023032f3c10a32517789602a15dd86297408a4985307a5bbe9105714124e260247778158c154cbf11baff06696c45ffc6108023100b48f4c2e660dfc2a53bf3e3869ac23962cbf1217ac6ce9f08d21f99b98a0c70d1c82b59f019b693a585042e7ff367c8d0302047c435bb500683066023100cec1c33a690ec6d2a12f56aec882b3f07a60e8f4b56c53a4159016b0e524c94781cad19c7ec2cf4d1a19c27f6471423e023100ae88311a1c8774f5bdbe1f4d79597f008e317d1342195e1b960072913c5abc1e86c2e8700b2959cb30816c302486dacb0302047c435bb50066306402301b2978e66c5162eb3bead6a01fc3b8cd425ba2ce377a24dae75b022e7469925116cb571672b93664d0b189b9d4412461023010a6e5c02a89209a360c6ac513d43f0bf5f3e40a2b03d3ee82228982fe1a68876893129b4bd4fe2e900868fb3f37dfe90302047c435bb500673065023100db9bbbca9af10f86fe2d4402422792d2a3825070a47a713c78979beaf3a9fa5b6faefaa91fdd99d6ba30f890a8fe377d0230697f9466755c9a00f902b8a570c9ebfc8fff78c5d0dfd9fffb26d6590eb02eac7a6d433ae6ed0546e142626d3d2a504b0302047c435bb50066306402304f4a47e71c5c4d66cce14415de7945b132b5c5bda2580a26b4a9e42c89fa71323be7b708b131fc0b491d5c8a066769160230670973b911aa7083d182559e121f0ebbb604842ef9ed360f6370bd38c99ac482426b5908b18f52456a68bfec6f37d7aa0302047c435bb500673065023100fb25b09d80ec70c190a93f29b40745a06231bd889b7bb201877bd705e8ae93afd943697b5fadf56118354d2b03e82b4102306b53c8ef9d673db272f8237dbc0e4163b75276b48cedb01c0368cec85ef4bf5a313171937d1ed505528ed238dbb776620302047c435bb50066306402307cec09e046f5410b97850d6f1896d803e86ff3f405c2ab4ac6cafb76bcbad7a9a483eafabb43e84fc0d9da578966ca5502306a9dcf1a811cb9243ac2b7e7a0976f33879898fa5b941830b524b2cf6980fd731f1a7e7a72a81e2cf2d8f849af89297a0302047c435bb500663064023078294d124b8960076b57519c7d52b806472e509e2023e3bc8e35e253e1860c4c843dc5a94a08284bbb31f1219fecd815023020aa6e3408bc9b77220392eb354fa861b770707edfe06b6018b7bc950133a909d051c58639e65a56dbc2204e06a30e0c0302047c435bb5006630640230594eebd967d849861268c8093fda3bf280c29644327e4733ac36835aa6bf490fbf4d75de927d623481985b8862b9c7ce023019a2eb79cc4b920ba2a98b1915e2bce01258d24403bdc7c90c79609dc1537e2ed285d6e9b074f4f64fc0f938e1d84cc00302047c435bb500663064023066d4639fe6de04ff2ec09f5ef5621ab78e8cb8207a759f94be43647c86d7c0a366399e0c1d4dfb3f56c34258c8093a05023038518a29236efe8953213bd8e1d5e720956b96c7f84c3a9117c1447fd1ee5d7e52a80474b6641c4425a2bf36bec2e7610302047c435bb50066306402302e1d54af0ad8e2e3d72d9e60d69324eea86068309dc2848cff7a32b5f852a031197c7034d9e5d488e2521be751b707b0023050e5b629aeb5d4d393485bdfe367c8d359c263ca61274b93bc48fc80c78f23ebd53c34df114a631ab6d474be768437000302047c435bb500673065023024c42209c5345832cbd37046b2e189b3ad2c28b4164cbc23efc6c0afeb7b892f2fbd7addafab259ab01fd484d5fa5c9a023100e6614a9cb09051a33c1d7dd74503401f9cd30cf5728ddabaac56bda787f3410fe9917d9a2f04051f3800e1a0140cb7270302047c435bb50067306502303980b97fcbb79afcbc44925e073fbe648581eb8684e1c1b00bb3bba546a37f018fa26383aa9d0e6efa164632cd46cdee023100dc39c35be3de776d8e82bae21fadb906b5cfb70826560859db48eca4a6f6b4f2972977c0fb7d8a453931241b5fe26b170302047c435bb500683066023100f7e1a3c5b973beac14a1edc5b16f727533bc5f4623e01a56bcf0858a13a6900f9e192be4c30b3ab2ec6c6710de8a4482023100e26eb86aa9b41146b66005517f727d037e179f7084f4d79c928ba4ba911f0f16b8a0919c1109fdabd62c65761f29adc20302047c435bb50068306602310095baedfa889ee3692173d27b3dc9d67731306bec111ed98227a5102655a929ed70420f40c8f0fd99b22fe3bdd4de50ab023100b12f870c4d4850470432400eda3ada123c348949ad968417cac28976d12b085b7dc3b5d75458c1fd1d0089008d498ff40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305367a4baee3b6bb8da2636687d4da84c563f86e6ee9792b713b7c759b407922abb22fc79c2fbe951dd82ad1097336edd0230311582c1dd4b60978afea298862764330b3b333e5c5eb803c4e656ff935144969a52f91ddcd76471bf56688fc827987a0302047c435bb5006830660231008480394f81fffef9babc27b289cbd4081ed2933797e36fad16a9f4393eed076e347ee45ad872744327bcff8b6c1c1c8c023100cdf9dbc78a0164ddbe0c1ae56dfa4e40169823585959870eb69b249de6247c601b4346d5a3e5db1e7fb5f444dcc904e90302047c435bb50066306402305df4eebe1fff6d2100b6e55bcb449bc976725e5b9b134764a68d9b449c7f25ca790b96dbef764946db9e1d410755dcb702302d97faede4c740d5dad89e0fadfa2dcf8073f93548b0af9bce4f1efeffcb61e71550ba97e1888345a298991b6c3f4fdb0302047c435bb5006730650230669648155f4d4c6e1723f9c2833f0effd30cfce0dcec5c580a89adfb40656420473b9dee3af1779d6745d409b541cfd2023100ebbd32b06ee034fa36c7cfed0f51260b3a50370af2525e655c972a0a1d788a5758d4aab922b8cb230440dcad26889fcc0302047c435bb5006730650230227a40e2250950cf0a1bee07bda303ffb00fad970d74faeba9bdd7424cf20f11431ce758ae13bcc77c3bc5c3f5e6dcb2023100b9e051988c5a6b30cf7e2195ebb604f442f2c58b79498971a6a65b43ff80df8c1a344e22852651bbe1277cdcddd614da0302047c435bb500663064022f0965a188230318a779c04a3826a658bfecf3dcc84a68f6db5675a369bef406dc6dcf88b7d979513eb5e2989f3e5ad902310095f48cd20fce274fe7f3eba607a5d230b587f0745db7165802599bb06024eef82f0166bee3cee9acbb8004f3b74085ab0302047c435bb500673065023100e7d871925f3fab1219ecea58eb6312e7f746a4cf70ed0ed97adca3d32739774b8c862839aabc7d8cd33567ff7e71ff2102306a882587c79c9db4be7a5342685960b1d46a9e656948987060a012e111d9ece9a5fce4692d299afd4e4420fcc68455450302047c435bb5006630640230694e6efed94d2b7ab8c8c51d4a003eb55ac74d83bba7d6b37cb50fc90f240f68294e043f51d0abdea66baccc7be8e012023027cfe47e7cb4ecf421448f86715935266e720eb4a20740157603bd539b517a87a1fe45f1ef0907f9d46aeadbcc161e530302047c435bb500673065023100ac8731fe5352182ebc14b6006d7715da6917be049224f0f5f1241a256b1e11475255dde5f8d824a6489596c4ee43d57e0230788c086b8170f419f08dcdbf7e4181d9afe599f443fd53508b33532f24a2c53d7990a0e693dfdf764a2b0abcb55700f30302047c435bb500673065023100e0e0776d0eb7b81b2ae49d1bba43668cfe2a7504ba1d3774881552cf286e0e75554e72c6dc97be2554a769da06e2ab890230260799fb7647cb24ad5643a823c6149f2bb0241976be3b931cd1845699f3f01f72626d8d58d5bdbaa60d6f8766fad4020302047c435bb5006830660231009f8c1392b0d81884e2d15329cfb378e5d093bafc43f68dede6f616c213d108d38f9f7bd52f21d464a0f1aac4057458a6023100e6cb2fc85404f08db2dce8789faab2646f8a4eb07e91836280de4e85698b114ecbb0fc4b34d33a07ebeb545ad251efb30302047c435bb500683066023100da4eaecad5f5666550a06c8941e033a310a894ba995bd77004e90fe17cf12c52da9214368fb411b85bf5d2c905b465e0023100c96a93ca347cea1a335cfdca330e315b5459d7109c30285c2b7dcee7e2a65e565be4028527433cd92731bfe7e3fadd6f0302047c435bb500673065023032237d449545cf2413047f5df98951ccecf03928b3b44e188215c5b3aff1141c0fd1641a67ed80c17f4605bb849d3919023100a95984657f5411dfcd7058d7ce7b6e99ab0c96de01733b66d934f9c3ce53c2b7c606c70fddc6f0538e08ae47673541cc0302047c435bb50066306402301bd42eddbaf9df4c657031ea5e33c2c75ca3cb257a7b9e6e3fa49de4fe5bd764bac1c1c6127b3f19f80d707fdda379cd0230437e58d2f89f05c5728cc6e78c85cf47fd391db462f792d5c0bdd9c384b513ffbf8fab369616899eda1c3f7c0f7f677b0302047c435bb500683066023100f2055544ac26e8e5383e229eaabbd01463271a1967b68f49068d9d8b284b7dcd88c4a8b3159ec2e5c4bea9475d81c227023100909c8be7b3cac7d79dc6f01f2b8be6bbc5232768a92c9cf1bd47f524337e346f7f19dbf79a307e696fea660dcc7020900302047c435bb50066306402302c5bc94a83afb1ad58dbaa709790206ad40ddeb3adac63f4d737268f378bd602030eb8c5010a956b51867698b24169b002303901fe08c820e40d27387f647faa0cb8f539f9b56e8cc310395125af4c779ec277e1b2c5b4e8eeebfd69ac16500bf2b00302047c435bb500663064023060c10f5c3bdb2f480e30925bba883ebb51d420c974a0e10c2706ecb063e642011e0b54097f748880c1c784dc9725aa0c023056b0524579b0259a5e6168579913743061e235887e8ed7e874efbf61f834be85a3eb7ab104483ac013129d8542998f250302047c435bb500673065023100ab4c50a8f6c62f61a63b61a16e51d86083952978759f2e06499644db897c08751a460707dac7794b3a5d5520ca070db502302ef9c6c5b73d9bc3289dd4925346834a7c9148d0768f348186de57f96e2ddf3c297248cd90f16268904d72348e1d41ab0302047c435bb50066306402300db6230406389c7969b4033408933a7d3f2a494e3504771f020d985090b6b086d78bd0cde4909c061c0a9f815116f18502300b89da1141bfac86779f481c709cdef8233345358a91377b1b8f21b297e53d6a0286370791b09d904b6c8ccdcdef02f50302047c435bb500673065023100f613ce8c8f91146ed05d70ae0f3216b826fa68ce25ebbd9a36878f9b0ee6d2cce3f5e5334f6e00edfc638818325b42a1023041913783624d7f22842a9097a314ea100da7fccae4124eaadfb5577d7101ac03aac122e96ce0181ce1e48d29ecd1f7a20302047c435bb500673065023100aa2e68f3652995291e6f1b3b33721d40fea96db8f03ef2d709ee1f2f3e4b5aa85a82b4d8f73e810e17af13c5fe08e7e502305e3332383b9896c87331be2215867193763d9678ee74c7350bbc45ff3efd8b44c2afa96a21d0438e219dd754b0feeac30302047c435bb500673065023100ce69d493fb3810ca8e01ea0e4b8b3f1e73517136d65c567dc3bc043fa13e8fc448ec863433f89ebf541b7aad23782c5402303713f29ebc11bd6e6f1dd872e17cbb0e95d6d5ea2eafd8e871088fe0b366e75e39d4f34b87c61944761c3e43abca02de0302047c435bb500683066023100dc3e7e86824f557d9a9f73e061df4c56b66b02cbff9a91145b116d161724dfd1105ba8ba43e19060aae9103351b16b31023100e91b14a217e1706073f7c35b1713fff2d3ba9b2df2cfb68b57c8afb448df57e6be141c130a76cf617869a8cc06d5f1fe0302047c435bb500673065023100ab4f006bc57f6e8a64aaedfeb6eaa5fc3418e265869235f76595e098fcb702d7b2ae03ee5557ef98e85c45bee0cb979702303c1018e808fecc58697f8fabb3cb74f134483465f9bc114a3e19349e5e39140651fb9ffe51c8f0b0e5b85d4527b769780302047c435bb500673065023100f3369aed67a5e1a45516b8d6a0c41260413fdfc453e32a7d2d753a52910e08bd78889397d0ba8d8e44e9a2fb855e77c50230190cd19b9905cbd6e07e4dbd586f0189f49118278c0b219de11c3757bc0cb929dfe05294e3688899f095d3e07ae3bc550302047c435bb5006630640230690b3312d837a3a1954c406250541d17066f168bde00f5a4113b7870397dabf74530e878a0a4490cd24f8d839dbe4c730230356dd4e9d22101464bafe5a44abd14466ecc039fd2017b98805912eb0b976c43080bdd05f21613b93921c7c62831515a0302047c435bb50066306402307aeab0c5a9ccc16108ad8e44b4543a93586e66ca49ce05ba94a15b611fc8a4034d9281bf2b59cd1ad2be0201764b08ec02306d913354f3a99ae8123357744e331f2742ba363b5c17c73c0e9c2f8da80408f00b3ff727cc38a1ca75cc43109ba808920302047c435bb50067306502301fc8eec21ca734ef4613651a5f202c19f93b53059078451780d6a0dde4c9890261f7ff13d559e8217aa543a05a675483023100cec9156ed3b0651fd05122ae34cea3b1f879972e911fe55a3ba58bba0f6522e71118f18dec46df951e0ea9e94709bfc00302047c435bb50067306502301864ad74165ae7443b8801671da2248775991d461ec4a5ecc496bcefd2a3dc3c42c2087c1982fef6842003ce9b1d826e023100a45f4ba053553f00f89d82fd208399b95f258d9cfb4d718486ed6da2fc8b8ff3461a98a32be0d992b478948c0ca52e790302047c435bb500673065023100e6bf1b9ee08f7bcba5d51b7ebbad9d5061838c946a969ab90fd3405d57a167e4d691db5deb957e943df78d415503081a023050c19cd3415f75842f03a498a96ea3a4ca0ccc1ad031371c82dcf31e81aec69559c4d35259818cfd033fbcf29765d9030302047c435bb5006830660231008afee129ec936c4b1b6cfde0868c5071a29a7b48bf3d0eace828c1d1333c6799c9983fa240b00b560b08aa0b9dae414b023100f50fb209ad3bdee9aa91386a7396c22f7ddbcc8e1e009a988377e8adc8aa6fbce914e20bd86240ba2dd3d8e49db4068c0302047c435bb500673065023005a4551203504d4f0ba4961aca8c3fdf82781c8dc0aad33c440a3bd9974bc11f856400cf4dba18ff39734974bf5d1e51023100db1d9c8aa118ebefe6215f66fa1e2b335afa337829f4d07a48d8649444d083b567471460805f0f1262834c8557ad1f230302047c435bb500673065023070b3e43b946cd4e42e6682c551b1c6fdf6b599c7ec6e9aa555ecefbcc02da45428dec85c2339b62f52b5f92f0f545710023100f20f2b04e4c49bb7f55da3fbf0fa3633020ef332f17c2861f4b0893c25f99434adde7ee489b1b326a5c50c22058253400302047c435bb5006630640230178a33b5bebfcf2e9962fec8ba1220c844e34fef8d3e0c1c487482daa4f8ca721242a8b2cd8d4e1bfabf9869c6dcfd3202304767017f8097b2c0d95ca33434c25f9aa01b9f6b25b14384886553bfa75275f4a2eb8106359568821809683a31396fe60302047c435bb5006830660231009cab4e8a6e7623a583ce04fbe43d011131c9c718e338a001b55284c55dd0dd838f764accd01657ba976e3843631e3db80231008d73db5bdd0766192bcf7870116e5208c20074f15a70760dcd8b6bc5ac12338df13d06f2ded40a02c5988cff32f997210302047c435bb500673065023100b8e9fa5617b4ed85afe9db9c5cfa7890ab4e1c5f9219d2524f755dfd7d78d6fdd07ead56f13def7c995f0c7650b5df8202301fb008612e9d8491a9cba208e51448e5f0ca1b7a2ad8c341724493aa0d40fac7e6f288a8a777160bdb9c1e3db830a2b60302047c435bb50067306502302fbe9b8b71934203b672a51c50fa4972eb9d40954314325aee54e28a63a97321bf6df7dd5f8d638dba8fe795ec8e1e12023100d2ad5e9243da34cb96ad98794a24e98a3fc20e908656c77d38bd386a6ec1adfef767d6301fe97664108405e215e1f8960302047c435bb500673065023100e617e437470979698eaf687764f3f5a480450cfa271d227c64734840e519f60c143a1e2cc2f47d8e062154ec70189aa202307662ea268c7957121f8bc83d8f69a777e038aa7d67231410905819936cab97fd86d429d532b2d1ad86a980e1e3a0b9590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100920d3cd3920daefb107974d95280bdcfabeb6cd3c35591d30df85609f616adcef475ab483f48a6f2f8fa6a8a40f0580f023100aee0e16b660b65d131d6e9f6c3cb53a53dd8893dc90de0a0fb53fba7aac0ad069ec9d81e486cc9b26cc78fe6b7a3ec550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e235d7122fb6e7be4e150ee42b612b35668446fea06f559115192d54d0f5efba097c4510357575c384f1804a97fc2505023100a007a35ce6b2d6240b767fd1c4efd2969290bfc08e30775ed2d57bf2e90b9555d43835a26dee7701b31a5d876d7835040302047c435bb50066306402303e07e880a57ea0be416dfc34423491e26511c81360bfc55edebd2c7bde440f1bfcf75f94f2d0e101a054711c69c910df0230020b9d837cf6f8c42b6e84cca29709c5993138bb287f702e3d4c5c66e80aa4f77ad6d41fa16f4867028f0dbccb5c24f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074e47752e3e3e3a1ea2277dd7f883fe277447dda8b8354d02d1a34bac608e779941cbb72c2dd64b955970bbc02aaea81023100f7ae1522589e1d52a098b4602c12618b3469811a33565b875520f1a7beaa693817674bc84a3f67d22c6d4a60eb437d390302047c435bb500683066023100bde6734c46bf377d0916d12f41e9f4f84e602c2d3c3c92353d8048248246570f4d48e7356218f5e15f883419c288a42f023100fc3c248886557a34ae69dbe45a2321082f524569a2020198f6cdff6fa219da8b05cc68a123d7898d823a163f676bf2660302047c435bb500673065023100e8d44d3311201c797ab70c9e0ab7ff7ddab247b76b06d9271a710df3be15ea7fc5ecac69e9ef0b37ff97a62ad85d58b6023037cb93f0dcb43c8edaf33f45ed005fc1817e3cbe41ea972c0023d1da2a342054a9b733e7c5ac3ca0db0800880c46311d0302047c435bb500673065023026028be1f935c59e5cb5c362ea4cce08f59005b07f4432b7eec6c36ecd7c5db11ecd6d656d2ca7a8b5c2599a6eef3324023100c98e0581cf045df60a5bcc565767815770698c64506b9ed61081d180bf06d32ff6c243a2e5e835d813f9eb87d5cab00c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100efa52af57c325a30659a06edc55171ec512c96929228ff79075d39367f0103dca714a1f78301a4a81a6e1126bcce6c6d02310092f39ce1fddc9a894998167c15b06017e518b17cdca76684fc79e1580dfd1c2c3ec435c8778171788a3291bb9a2f4a6b0302047c435bb500673065023027a3c82672b1594e757d7a638b9450947aa9fe5b318a57352a9c0cba9b42c046f1f8d0c665e708ea4804b6e1fa9db8ec023100aece4bb7fb999153fd88d77d8afe4ec54f3de6b9d2ebca0f3839dad85350793d7c436c3f4e829e384767717288fe6a990302047c435bb50066306402307dee12b8668ca03126df250196f4bda16f75787d60769b4b06791f29366559e662a1f8a95a6792b6b3980f43aaec97b902302e03f8dbc2cbd25ace21e17a3f2a8e15028579025c59ac6f28020ecfc03615323c149b15cc72971b5c315148d57919780302047c435bb500683066023100be3262928f3b2dc3f0d183544c26f199e7ce198eb5614d857093a0640347ee4ab6476aa13d775f5d3a42ab7b74afa7740231009f1faca6c70829e286097702c3cf5ffdff5d0ebbd80785df303524d134ffeee778a523e11d74ba4c649055450a5189620302047c435bb500673065023054256f96343ca3d63182237d209eb2c06774cc6a36ddfe98e815267f9e3874b2cdc705542acc0e6fd62e63193f21c930023100d414a8219715bbab52077856bfb1dbf747937076b1b9262d69e6174caacc7745941c3adbfea1dcc7f4d52eeca2fc1e930302047c435bb500673065023100a3003b0029860233bdf1661749621712e15ed7eec3cd55a709f924954d9a37977600baf34cb232532a6e8d93ec0b492102305433788db5c132db20893030d1d78a36959a76d7055f555193d71b8da2b6e05bfc2176e81c66bc23a6d0286de528ae0c0302047c435bb500683066023100c8a597f90bedd7d0b04ee3fe1be4f47fd2524f01140c1a68087f15565acd1682264fff14243a5394b119cb7baf9e0ce1023100e4a5f9b6cd815316ed6586048629704eae59a8f5b51cd925674fb7a5606ed4314fcafde4df5cbd9c1638ecd912137bb80302047c435bb5006630640230205aac6bf071130d621e7d49bc75a2fbcf4d55c831b31850a6e4f96fc6b62a83126cdbb5e091153032310619a72ca1e202302a47a2a22971c007b0133c728417eee95d3757dafca7791ca899d202c06f20932d4eb75268b8053adbb07dcf9eab1da80302047c435bb50066306402303f967d0948a83d87015d1c34979596ce749a6aac777aecee8ba4e65812f8f53bb2da9c8e4441d4a6f9b612bb4eafa3c8023005254f36241580084d99463a54dc5189db40f8230c11b3e54163d04d04589ba661bf0679adea10aa76f64150396ea6800302047c435bb500683066023100b51911cfd32664cdd8ee548b3d15d57742d4c606ce2acda260ee7a5ed9d00aa9e7064905cfb7c7355b16e4d0c88812ab0231009f8c8c23616138967a5d33b39bec6ec6f115c0c10ae23ab540c9271328dd47d51727f2bbf16fac8fed7169feffde85340302047c435bb50066306402303c17ebe7a95bb7428caaaff2f2bc800c8b61cd4459ee31927d53c3cf67187bfd94ee31bcc83bdfe1df5b4e13c41f226602301fc847a2be12a67f16f59fae21577ebeda5bf0ecd8bafd9ca8bfe627c6242d5a9f7fde2074d6bf9a08ec30fda9b6b0930302047c435bb500673065023100dcdbb950eaf5561654cb43e142258815627a2c69fc47957d0137dc7d55f969a6accee3ddfabe856c3820f1fe0ab80ebf02301397255af587fbbac221296a11814c2454b36f8f317cb33c80235854bcb3db81e21f1a0b8c9a123870351cccc0636c970302047c435bb50066306402307d7625defb819b3579889d8005aa506c8476970297c643f38c35e2c155057b7b9a1c3b2de4210a61f472ef04b211513d02302a33e6f9776465713eb0e19640f1259a18c9fe1eaf12be478209e990e0485ebd149eeec6de7e971131319d4ee5e0775f0302047c435bb500683066023100bd97a2c56654f547f02e8bdd94e3b437b70ba279e7244b0c4deb5457bb25793d41ceb9c3ddd624f5dc753ac48a1ff298023100f3b9b3fb95d958ff74fefdefbe59da58bd810e31f1e6b0a9aa1d7e9da72a65a1f191bd37bae08f208455fd3f6d73684f0302047c435bb500673065023100b2339647dd6e65122b07339300cc0d62d1593e36cd456cdaad4e9bfb220d1a5a61656f82a8339d98e06c4d40e78c4d9d02300d428ef472aa8197e319f6722aa9983bbf9d39c685d0e638d9326cac35effe2bdb68de8c76fa35ded8938e5068d4da580302047c435bb500683066023100803c27ee882cfdd21dbb45367799cb68e055fe2dcea2a9b85f7ca445f57a12ef0bafd4a9e8048f18de2ac183c758032202310089fc886610aef30eb18924d56ddca2ef989103d821af04c93e0f448b56981e1126544750d04879950715a51db5dd98f20302047c435bb500683066023100f742eaeac62cf42498c6c9fc6475c9233b86c38ec0227d054ab962344799ac62c0e075a50d02e8a3c6d5c74ba3b8feeb023100e893b65a4a63650342aa1f22c756db298d3feb561006930309695c45008de71eb8f42302e598570176ccb6dd2bf774820302047c435bb50067306502302025a9627ac5c64ff92d0f030df3a675be2e15cd74b023e5204d893942d9bc4573e212a9bf39587aa82d5ead83991300023100f94d571c80e185deed115c7dc1418c4c6688b75361c31cbc9b417c4f7757de77f4f2876168a0eee3d77cff798f1464ac0302047c435bb500683066023100b105611b45a3bb03fb70a455284e031e09ba835d83d3e6adeb49827244cbc354706cb746f1f864fe8fa2fdaf0140ee01023100b320080ae4fbad2922fadaea8a1502abebcbd5cd27138ae4c08dcba78f6040640dc41752a52a75de162201df52fbc7ac0302047c435bb500673065023100db0d7093c1a4ef36de3d266f43283b16c79a213a0598c68424253ac06584f485b48970202eb278af0021121b1cda99720230203b31b64014210960b9622ecd734312c70df6f269bf05eb7a95e8bcfa79adbbfe3bc994b5578cfc2e789b295874165f0302047c435bb50066306402305ede14b95d2ec8aff19bcc582972ec854d08354a0966df2fd8693f8c8057494c349ab18afbce82ee54cbce0f0748fa7f023073d9c8e02a15cf7ae67c1edcdd0c5ee3991b51d47724191b8e5a517051376da767f95ce4565dfa7f843421d82bcebf900302047c435bb50066306402300cce6e2d9ecfac28dc1112d3adb978ea3b996fdb6d8d6982674d58795747af474376a1ec4ef7f3f6009a7c366f3986be023049372028509131c6b6cab786e0d16be285de48afa3d7a016e7383ec2ee361492ce814082b7fb825b9d8d803b56dbfa760302047c435bb500683066023100e48c57c430bb2de0ea976fa2840d33d8299972e268b2fbbd7a59eb3a080d5f8f90cd80ab14cb0f01f672851c6d97f538023100acb0e5b8da63140a5c473989aa4a60df8cea29bf1b4890234d87c45eede40536501f6421567a28bf31ee16fba7e7268c0302047c435bb500673065023013b726cc7da18072b0bca2cf96f872652ff4f7ffbc634aa7be6f8a3696a8d96ad2810a6f0169c21d1b8ce20d4d726edd02310086026cdaed91bd99e88cb1b1a5604b01c097b7d8042466720550db2b4cb8140440ddbc8c0161238d9d95d53e43ed9d110302047c435bb50067306502310093c7c5474e9023f606676524694aa4b4807df0df21bef3547970dab345c310842a210d5a280fdc58669adcceff78a55302301339c335bb83895e44b55a7dd471cd5092d2981ef2e475f807602dcf49e5c914d987b30c3231b7b00bfbe89aadec5ca30302047c435bb5006630640230117518c250494d968c66b53bf61462ced63262923f49542be0dee69995223c34239561cf744483495d03f69b3d3217db02305699b5632bf5d4c540f9cd9a393c5410aacf52d542871670779df912ce5c65af10bad341f00e7c21227fa52f6ea5add50302047c435bb500683066023100feb4a0f3d4f2956407493332353dbfe8e135e2a9d3977129ba3e103e47caaaa3ec4143937e20e1a8400a982c2c59d8fe023100966746c66818ea9289588faf0bf89b74d23b1c73a5fa4cbf6f3de49d21e953b56ba808e0602527270a516a4240b8d7f40302047c435bb500683066023100a138dbc7815e5826205cf1df315ed2c6d0c4dea3309bb914ab9bc91ea0a796e130d1737652697332b1817a17b2c840d5023100b2c04cfa97e233f919f2407141a309179869f4a5d1a66fd974e488232f864da51be72cd3581a3cbc1e4af1c8d697d28d0302047c435bb5006630640230321e8274bfe4487f7a85dafd0f9d105b4ffdcdef983bf2498adfabd28534d96f15c65fa3eb2b0830117bde24b2b57b2a02301fc21c1ed069c536384aec9f7f05eff050c39792a5f57fb80a2246505bfed069203f7ed3525c554c4337db0329489ebd0302047c435bb5006730650230643745ffe96bc2d319434a8d28d415e3be962a5f0d7c249f55a5fa8b26eedc9987d41ada1278288306bab5adb7f577b4023100eb0e7d6581035c62d07196fd97a696c047dec1fcc3251eed082b94fddc30c051402326496cd6e41f31906c7d28cda42a0302047c435bb500683066023100ab825aa90bea1479db20fb8d786f834a1f3b39a89656b1b439769fa9322738dc06377c87784eb27c34f74e91c63db6cb023100ce0fa0537ef440747219685f537d66483c6f18d93c4e76522eb2443c4521eb04b2989bd142c164f9907abf360cb9a16a0302047c435bb500673065023100a1a7bd69485d1d190fb7ecf0c69e68ab36faa0e5a356112b2b6ccef602fe8277179b49e1499f20de38842115e4b85d45023037fa8a118dfcbb6c1d91c8ee9b48c2096875795e5fe06590a6ba5b4f37a4e7550e3231e07d3c06e18fbad989e91e0ddc0302047c435bb50067306502307b55b2b7698fd17c187b9fb6098e792a5db57e0f078e119ef91b25a66bf6ae385d5dbfddae8469b74c11de6b66c0c677023100af3eb6e4b696f075e77799d0ac52f8a086c8e4a41d215dccd14f4c16076732abf2e78eaad83feaff8301b1b43b3681910302047c435bb500673065023100b1585c1202078ef9d5acfcd130ee9d549b93f27ff645d71434a684c486158b9a41a7b12a878b3dd97f1a7c60263bc378023052f9c78075d783d47e341d6b70bd69adb53e86ee874b81cee6365df63dd9504767de96635b745233be88cd208becfc8b0302047c435bb5006630640230506af489896d3589f51a496144b0ae9eb97b1d6b03e9fba05d9618cb269429b185104360fad8715c15f1a96c55cb8b7d02307f969d58cce1d505eccea10a5433f6248df65904182ef665cc7a95b90bd7f1fbffcb38fe8d7432d10d16e74a70c21b860302047c435bb50067306502300320d52e6e2c853b436075ea8576b8ad24f4399feb5eb643c6c583f22f9c6261c83657ef78b94b26e01cfee962b5c92f0231009fb15f642fffb43ef0b9708e7febfefb2a3c57cd429f6de7861310a620e2e226c9d1d817fa910858b9bf8ca96e367e750302047c435bb50067306502304d2000baf910727c2768d37c5968d8f97a1f28ae8333d789fc70e6ec8a846bc43a680f83600ea1e9fa3811c7c4026a220231009b5fda6a52075db91c8776dbe0402d6c58ea550121b2d96385fe8f0edc470b620efafe83fbb466e46cfd7441cfbd65d70302047c435bb500673065023100b91d2d4b54d3c5078de4f8aceecf5f3185fb04440e2f8ee0a68cc4802e6c6e2279dc0502fd8285302e294fab6e92d07f02302e26cc194172e0efd3b518931838ea23d32fcfab084e3a4491ac147834c4a2136140aa04f397468b2fead5931afd08c80302047c435bb500673065023100a26331d0afc5d38a5ef9d7a1e77f18f376f4e73b8babaa6fe77cd7dfac40e808c1cedae67df5e7cbad410bd8553d19cd023050044c35786f66396db5b3789c17de011461b5bd9c2f2144c7236b5b989a3b29a301ce3cd9db31ac9a0c6d89b8de7cc70302047c435bb500673065023100a3e94239b1db5f7f453ed3df87260e4b969df282d2d3a1efdc8cfe8ab6d04f8030eb62c010616adb355da99222a807b902304341e1ad277265ab0faddb1a77f05309b572cd54b58d5eb425ae25859262210e107647789ad418d430da21f3dc6dc3450302047c435bb50066306402304987dce1ad843ef8f1cb6e86ea8fc8004a7d5dde9a728c37a808de41814d28277d6311caf22470c46f367b683e7b7e9302304da2f6d2e5091ddf948298ef859e7b0fb566d16d05dd02641e5398287fb98d68e7ae502e63d659fbd37e836eca8cd3560302047c435bb500683066023100b7b40cddedf6dafc5c3259204a9da29e15a50ac24b9d110d2a7e77592e2367e58b6b23b4808eb4f712c7bab7a2378985023100cb719984bbde6116ac898ae5b181f685c95c9812c41f63362169b3dad191099559a42d912c21c5de513d1636995de9270302047c435bb50067306502300c3bab6b7906e84fa22f1c59346e24df0ea6ef6061c78a7f9a524f5d0867ae143e217045b78219ca2e1dd84861f2d7bf0231008bbd97bb9d893407a2a918e2e518bd85e62572faa78bf6df0c40d612f4a7b5bb474245f094925917befeef7b72c04fa80302047c435bb500683066023100c628893b6005164cd9ad1d7b58d44bca78e380c93960d3ce03a64d32164d950a19a02574e0fe90bfce708d518c9d98ac023100dfd6d51e70b2ae10361d49695e57056ac8d59711e978da606ec2b43195bb62a1ff174598dccab47060d9f35a3b125c360302047c435bb500673065023100c522cbbcd319186513337edb3ddbf13c6fb53739f8d519532b9d82831aae90c7f8bc9ac1ef881eaf5d4266094cd591c002301e5ad3204e75b3bb18e0c6d0ca5a8cc3894804bdd6099190c33a5037e840eae4a250f1cd2dfedd4e0b31b4fe4565651c0302047c435bb50067306502300490be235ac6732a64827c67c2fe4f6a99fcc21160b1d9e79979b0cf4661641fac8c78d27e9a51b1f605adafbc32f7ec023100b582293f18a973fd3007f2480b75b333bf1a59d5b02dee499c2150ef370271686e878f47c69b55fbb16d89bb1620d0e70302047c435bb50066306402303149d0f6430fbbba5969742234434e0127acbcd5d5f55fde5ecf41aa3235db0bb694d45ae9858d19d205dbaf4d42ead1023033fae2e7e40ace7c169e96f3e92a5202ca8863160c47ce040b6b97f80180a94b763421e3a40e7ebdb1043c77600b08110302047c435bb50067306502303c371cd5f72b2ff9b5070a2269cc0ce062ba4d1e4aae6153ea9017cff257d3336b80bea72dfbeeb3a566500272463090023100962d0043a70707b8e9d8c3001738aebe78aee8ca10ab34f8dc9c40c25420519042c26b3a22416df20bdd4be68635f6bf0302047c435bb500683066023100a2127f2b3e2baea0c7d40f98acefb93d155a9254d7aadea38ab3b3b68bb6442a2d90791949e28db29d6939ef35f46c160231008ae62669913dd4528bef224fbce46fc157f04634a0ecd1b3e58545bc60e45c1a6ff87b5e4aacb7143c64eea7c766091f0302047c435bb500673065023100f2631739a1bd6325832410dd2d6100cd179c2586a94a2c23a40a341f16aaf0f41b1995fb433e005d69eda375d9bbd29e02302864615423a444fec944ccbe3cf5af5c77ae0a6753a1c0d4f3f3271bbb4056a608c97af10eba15e20fe818ba526eb9ee0302047c435bb5006730650231008d6d96d123ac78536ca4259867254b695c693a9ac68cca10372010b8d3b327e1ef1456ae05f8032b0377e18af0fe557602302944ca665e72f6ff9e002dbed6d4f8470be9d801c84b2322cc298b66f62b0b78f16a646105a562f7d2e60883764a9a140302047c435bb500663064023059d7946d830c7ac19d4fd6eb52d15baea70a8bc00c44f9825ed18b5647fa1c704c71a93407deffcef359239c1181347902307c4c382f059b95f38309b458b2a00ec9ceef8398230fd4451ad16bc01bdbcc8f8f4fde14582819b947b36f43d02ae0bc0302047c435bb500673065023100c227d8b5094ded4d3bbe36f13cb6d9846d000f76e507c9f23a32489e5068eceb42179a18ff6733479a2018e9387d750d02301958ea9112856be127abd731a0edf7cc2f2df9605637d976c6c1a257966857a00ecb1ed0bb12ba7d0d86c664288391340302047c435bb500673065023018e4a264be0ac35a95c86eaf00b11fa40d93ecce7769e5f7d78c1d08d8ec8f5858bd75fc2d90dabe3750bd330c89d886023100ef069c479a563657d5fbe9aab30f170bc0bbc133a7415d0c4d2e1f4924f543f13f3ebd8b867d941f7b01311fb83a27cf0302047c435bb50066306402302e50df478e0877ead2f07ef207125f9e150f760766f148d735148c2b45d9d4a838beb774a14a0409c55ce77d6c4bf6420230347a91bca7a5a5c47d6757c076b93acd132d1957ec138f79f578c6100ac18eaae9703b9c267d9abcb123dd524fa679170302047c435bb500683066023100b0361b69219e8e31ad73f7a5658863b0779dc66ed1234c46d6e54d8e1b05c76b088f73a5ec8c651064adc57c532311a1023100ab3e89dc9541316f4fe06aaba87f4094eb60d24531c71d60a832afb42d9ae4790e4d26db0f0533af7e04382363c6549c0302047c435bb500673065023006d76894898a06cda7bcf18408b74c8c7560ef9a34d655665cae78d6ca2ef8f6184103dc918c5160c0458b8a0f6857ff023100bde201dc16066a14de1add5ac744e3406d051b1d325b6dc54cbaf7c9c76dcd49e8c30dbc4c82e4fcfb161d8ecacc89550302047c435bb500683066023100a24edf79484c3cb332c641629edf113c49c97baa0c58e2d7d3120b3caf3b6ebdd9fffea05ad84367dd0793b1bb16ada2023100c188740e3415a860257680d7f7a09c228f7288ac42ffd3667d4e8a875e915f792a4d638561c22c969dcce7d0d9db6cac0302047c435bb500683066023100cec221ada7874b7b76372f87a774ef9bc878f9682440f5b8fa71c94bcf1c04bc5a12c05d9b95b8cf6f17d7c06899b117023100a772cd59260ec7097831e56a07c0c3bd642d2a2ab85695d8a4309d4ae5f2b6af7fb04e8122867356ba3a71c0a7d30c3d0302047c435bb5006730650230008879f5501f98ebfe5e43774a100efd385a036938eb7c1403595e3d4927f8cce45eade15e4ad485f051c4939c1a8d80023100c644265088de6aef0215350530cd364994c3c98f8397b751a31a34b7559f0c68c51d65c645a102494f5bae92009fc5ac0302047c435bb500683066023100e27b160102d634a7156365cf85735a042d13d61d0b501ead5d80330f4866601b659a4ea3a16cd2a88d9eab11ca87b603023100905df980dc4c19161bbd255cfa99ed6f3c2b7372670127daca80faf9b45c6a5d6e1fb7c2395fa9fa354edf8e6c83c34c0302047c435bb500673065023100c2ef576869f0f6785761d7d65e2e34be45ac71a75af04f174b52d7f7a0fececb4974dc3849287e87dd915043de0a0d3a023035d8b38319c3352f6a6d7e1199894e2256824a38ff996c37be3b27626d1dbfac1d48c9ee89d4d4f4b203f2a3654281eb0302047c435bb500683066023100e3a16588dfc0a67417bc24f591aa8457b320694f11329e24e98ca610cfce465058e2db7bb49f41c1f54670c8b70334760231008f9512cf5d8082faf1a8aae1db88a46307061a13d65022aa757eaa40b61baa6c674500e7f823f4c9316de0fe8bce4a710302047c435bb500673065023100e8bd38e1054077613cbc2c1c3ca1cd6bdcf64bb4f5e5966bd36a9eaf6d8fd0de791c7ec745c43826875e8b9dc92f820302305f9011d0b76b429b601be3c193b8248080de09194e3c7492b254803ad11ecef925ae9fcc78e58c0adcd00b829a250c130302047c435bb500673065023100b844a8c6c0a912b726be758c994b967e770d33e51faef44483a9c4e31f7de28dcfa061bcb2537dbb25fcd882cc884f3a023068c5bce1d3f5f57d4e2d2ba3d29d9c2589e85b95f3b8287c1de251291d204cd1f0b4efcd6ba7562bf14242d42692476b0302047c435bb5006630640230669e408551f19735efd6b09f3a444812ab0b6ee5698302f9adecaf718ebc7665a292325f5ea5c6570926af59904127010230040ffe9e7f00dbad5d21c82c00ab6e006108be489f3abe0b071828e107cb4c81e7ee0b4a928e18ac6d0b889ee80e38c50302047c435bb500683066023100aaed30942bac5ae0948cf9ca1be446618fd0139cd6aff8a4bb451149a8ae57765722be5269916de2507fe103662c49e0023100987f3fa84bc9b53046537c929847b5ea826df59a9e06e17f893d97f8afdc5e419632dd7087dc262e253a632d80ee9b5d0302047c435bb500673065023100ad721c3c2f43a5e8570ed7a2b71d27eb5526d56b29afc7efbb55fac62687a11c438235f650f4396b5edbee76bd9bdb1702304586d70f6b5192c89d9e90ca929204d735746e209de31b3b1e275e88dfdb9630fe72d8cd007538ecb488ccdfac7c532f0302047c435bb5006730650230009a65d80e73e28fe2ac61358e0ad1d65d7d7ce37e8d2435eadeb88cd552c2912dab45ed310852fa04e1c7fbd0ae17de0231008da5856e92ee028aa406de0c3ec65a36ea413cb3b88c687a14583cf69d09705588cc9ff3138e3bf018070f6ee10ad4160302047c435bb5006730650230351d97e35b0cb21f42cc05f22437d37641b01e007f576fedbf1c5e3f103417cff076f83e6f5262ed175b013e1136256b023100b8e3dcd8eb33a193214df29f19269deac09811d458275868ecf66901e56f32264dbe24c05ee7309c0bde249fb654d7250302047c435bb5006630640230193981cd5b7289f7b7078b3e34b43ef403bca641f6c2de8a88d7bee2093649795e4fb58a1c374392575321c2c805685002307b434d70256511ef4247658c4c2a496a0aeab5b83ee4c455ab0bd95f5daf69c028781e797b7a1c822e469bf0e5541c1e0302047c435bb500683066023100a5e733a668122476eed2c6ed09ed1c76140fe3ae085c6163d3d6a92b520012556f0699be0296511a7face322e2e1a41c0231009881ecece656785c25df7ae9c557c28f6ccbdcd0314f2a703f866ced763956d8f57200a045f446a860a47d2cca105e540302047c435bb500673065023051d81012dd72774226e50ad9c0c04c47d9174f6c3794c448f315a60c9a6341ff95c640a423d93e71d45c5e46c6ae5edd023100a25814ed618419b44f4d1b396545e47d89f47914ef0c9459150a6d6dcd54533e40a73af6754a728690c752e92e501aed0302047c435bb50067306502310083d3c66f8871633e5253cfb63b4c0de1dac520c998169452ca742faadbe4a66eeac0bdbf97e9a17e7f87f30df0555c1002306dbcdd76da36be0c7b808ece17e2569fa2af975d4116ae03e880755325fbee91e35544f13f9b2d28e3561ddd84e63c920302047c435bb50066306402304546a5b7832004121df757c79f12ae35e0f3372ffd35fd639a9cb9811c8dc3781e18a1fb03bf3e08fd99eb6285a0600702305e21f70c9268eceafc16e2985ef876437f1c6da209891abd38dd6aeb8c35ff9810f580272ce00cf62dd48184aa8f4b9d0302047c435bb50067306502304a6c7be5137f69e68c8555dc37e03a6df5ac85386579a32e07c24c9bdb89f7a0631f970c370a2ec677322d47685bcb6a023100eb057d65284ebaf8830b6a1030b35e6beb8e8d0a69b4c3f61f680cba240486ddbae00e114d883e9a879011e40f43d4c60302047c435bb50067306502301f2c1781151102d4e6589e6ea9547269c94001bd004b84740c734eb927988a65780a2505c1dc729611e3d50a8e712c7702310084bb3be0a92ca4cf87f20aca1137f6a1b6a350185467c38799905f79e99c26246bb230814140920f84fc41d9a395869f0302047c435bb500673065023028d2f9d5f35185fc25580fe6df8e64825b752b8557974cdbf9beec5a089b69560931ad4d4aa5eddf961c960de656eee1023100ab3a65fa230e6d6d4959c06c3af791498c33783cb11e11da8df68fc63065e85a8c2ddf7ecd36fe29b7d28a59de03e3860302047c435bb50066306402305d0bb8d1704bd6be3fa8b74ef886084d2726cf7b466f47530081cf0cba5007f2caabb8c93ce0cf7a9180b263a54f2fcd0230211e2227cbc5b1b616103fdec984945e67f6d3551f07e6f907cd35f20f9d072a1b27261f3dd11e10380cb18c7668f9e30302047c435bb50066306402306fd619ae494b7a3ee612530da07d03a7adbb64c29647e5cfa5a1861a5f4fdff7cd35002b4b263ec8c9cfd14ab0b30d6e02305366fa12915ad04fb25f52f09e5a356e88838548ee7b10048dd44edf2dbdced2ecc63d1084bcd80f5247300ac1cc640f0302047c435bb50066306402307432c20229eaef5a6bfe52c760a99731a68db55502963c01d2d6ae5ddcdf4b4de7bfdd095fe9c3d5395c1b5593c5f79a023023610f47ae8391deec4da859c35b4379176a8bfe83512cfb6e4dbc8159a39ed5152949f7129ed4a1d70f54baf75330490302047c435bb50067306502300d6048f72570763177daa117dedb42679250d046228e19af7510f1ba94ee544d803e307c6988f8d5045f16aaca936c50023100c839c602ba45d4cc1fac438c8bb5c43322cc122bf87b4773fff4bc6fc7883d2b02a2affa5e6718514b4b41bc807258670302047c435bb50066306402303b4295237b68bd11e4dd80dcdc005cfa5f962e189c0473bf3bd157138aa7604dc4974e80a212876f3fb0ad06bf54c6b602303f1fcfd8d8d972d170d30ad608c52e6efbe15508a352d16c9896d6abed6d253e4dc85d3b6cdb727d0d364647bd06d6210302047c435bb50067306502310088ef38e4d8fe6bcd77f82c603a9c81ec973368c6960bee22f7e1d108223a825c71eda2de7bcff64a814f0475d2b7acda023017cf0b131fc937a6ce2fe2ea37631bd89a05d745fc968b1e5b938feb300c6369b695d6795f47eaf40898a2748a0d1cb20302047c435bb500663064023025b7a7be98ac0e14cf22d68649d0cebb10062d4bfab2c611e99625d21ed5f59624eaf17aaf388f1b5a7e4a055c80521d0230212885635c89a48d89be8c88104b1b7f6bba64b34e83e5539e75a5954727d7eb9867c220ea95dbd50b9d384ef0fc75af0302047c435bb500673065023005793528a4200944ced079c3d22f36372ab6b703046fa3a4e972f5fccca4a267a9da92a30359c9111ffed6719ef24969023100c5f137e664017a47c436fed2e371b626c141c612cfff6a95e3bb6b8b5daa6f1ca11954d3b549e3f7debc71519b23846a0302047c435bb500683066023100ceb86aa54529c83918a9880782faaf95ccdf563ad191192e74a42fc01417ea9cd5cb800bcbec402121fc7679b1399654023100d31be0adc3e85872259dd2ec80ed3847bfe92a0302bffe86c00705f3094811f61bee23573ecc0da951b68c16cb9c5cbc0302047c435bb500673065023100c980eb263d7aab7ac01920eee61ec0785caada6a5e3779177ebdc3be305b2179725cb9a0ccfc892e710b883c34766a0802304f918476a125974e0e72b557ff3b222203453fef37d74c4b2a8038cfd0561012c9bf358efecff24f98e920ffbffc9c8d0302047c435bb500683066023100ccdbec3d44f1daf3b6e161edf7eeaffc495b2bcf118506dad7fbb3539e1d5e7fd17c6e6c8f2909845185ece855af2d3f023100826047a679b4955706f9f68a6c5a11b0f094220528c9a9ca7f32e4b3bf49e396ac72ed8a10f044e0b0710cb6742fb9d40302047c435bb500673065023000e43457d40d66d67fe977361f086c13bed7e239197d4c8a84e1116c3b08056c8d35800e2c43ff2972845946675b700e023100b4474bc62c9b1c37493aa05a25a4598789eb9dbee268de7decf9d93b86727f148bc708483d0eebd78faeaf3fbaa3b7660302047c435bb500673065023100a75f0c64ac8daec6a294dcaf4217fe2d317386326510ccae2c7015eaad57f36ce60a63c287767f8dbfe1a6f95389fc87023006c95cf9fa82f122db5c4ff4e2151ef82ee410a3ba227fe2edc0cadbe3101dee1eb59f9582db0d979dd154ba0e70620a0302047c435bb500663064023014196fcd303685df35e1d168d0919021d5d4b47be14cc6c7c9eb6820efba964e9ec4a2f44e4f8974ed3a722f86c769c402302514fd6003d4436baf1f01d0b2b0cc73e86b63cb689092c05e3811f70f0a9afea22293a6ded52f606b703d79e8d4ce420302047c435bb500673065023053cbc01581c9bddbd9374b7ba591b16bb896765c15f90f2c88da9d1e4b1eacc736c2bd0097c3dd57f473502a6645dd0e023100ad567cbde9118e1abd291caf066da019de1533984acde34d4b6fd72df9541d2f7ffbe89de7639f8bf4d3cbafc64689720302047c435bb500683066023100a73dc4fdfd19b98eb8d30607fe65eb63733f809c1d5c50b7b19dc327e1a6d424cdbce000a68c689dce9a2068bea3f168023100bf8727f993feff56229ff2e924c5ed774b55c5c4955fdbf3a083cd6f24d8756c2f4295b6363f16936c62edd773e2d6f60302047c435bb500673065023100fb7b93ffb2a2232986838261a85f33892f4bea78742f2405f39ff310095a2cff63725c3676bd8d8483de3760d0bf8f180230352f8bf22ea6e4fd59d937da13ecda6910d27d7c1284270feea94c4f999e12142d901326e68418202804f2c0eae0d1630302047c435bb500683066023100ffef76ba33761a9a1792bbba31aa4840ed216406dea33e5f752607952b358f1a073ef4f4ccaf705c182aa7d6363edc43023100bbd797026c35ad076fe6ac920892a0bf6cbb6e9e6a5d01f580c5d36293a2d946ab575c78681ab260c7db7ea07abe93a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100af6e407894167d6083193300a299d417c2f44db046fc40c82acaf7bbc5c2b7de048cd613c5367e4de7cc74a96771bebd023100d1a9af3afbda9935fd9dffd42a704d14455f3af95e4e4d934e144d4718000b3b65c718636dfec461b2310776b6df3bc70302047c435bb50066306402302831cb72e8198dfb3eaa11fe33862f3f94cf4eb13d440e5128bb931349253b5ed1f42bc9793d5d273e47b68d07c45646023070b609ac58f2855d267c06c1f8e9470fe841701a6e0611b065afca181195d2882db1cb148890dd6fc1ad854e06b6d84f0302047c435bb5006630640230491e195125bea36a56ee2e907f2afeb2186c3e362f17142b119ed33c2bce445b31762a3aae1afd591818ce23bc7125d502305419935946298463fd3e63961358e8ef814814d08cd0be6674f85d3a9268d748aa16626da1573ba262d0d90982e076f80302047c435bb5006730650230415ca875ea0f522694b610b50ed74d1827228ca8ea689169d7c47f09435429d62c013addf845f415a91f8b588c4e3cb802310095371ae10aa2534c5b8d9bf95ef464e833df8997e6b592e4657708d1a09c7f746afea3470228b901634cdfa629a997a80302047c435bb5006630640230185d1a509288d3916f7324192f65b1b3887bbb21234ad444db08d58e6fa5cc8b2a3fbbfffc4759231c3531ac2c05e3e402306568467e4342b3242052b888ca1ecd987b5e445a11e567df8b8b472078e4ecf3f1919fbb590b5b9ab36ffd75f62d9c450302047c435bb500683066023100bdb998a24814adb7c2dd7dcd1951404d0c5303d45e958ef23fb76b6e2d280790228648cc4c4f657d453acdfa265aa5b902310099c51193cba65224d713e6ca747321cea22a02359f553be844901ecddfb061a840c6cc34b67861f3db088cdf9d925c8f0302047c435bb500663064023066428cdc717a8ebe4df9bd8988f96b0f9e57176e3742aae41c03d3c88bef7b865d874cfcb39b7a7420cb66209235903a02302c6de8c8e05138a2a0fad82deca735e5404cdeb7644b8954e019b73966751ac145652211fa50bf0363face51f63fc2400302047c435bb5006730650231008437f00764d6187790eb4aa284923a6382709ac8f157ab73768775542cfe70cffe3899f202eaf699b0837912352f89dd02305967cbc015407bfb4836076968640bedca9a175eb3a8e71b2ae643062230780cb8123137958ee2de8496bd31a5ffd9d00302047c435bb50067306502305089668d583fac422722379769472860243d1f94fb9970eba5943f47de94621bc61a331496142b24a749127a8bbaa683023100f9822ed1cd0ca1ee13b5e36fb4393811013f249dd27c9a82a6d747cf27d0dfe9fd6655b6f62b5ba5b70f2c143a472ba20302047c435bb50066306402304bb798a08240bcdfd67f7d1ab3b6e0826a32547f84d3bdd5ff310c037d384a7449b61ab152796ac3eeb457f9b7e98c71023072bafe7cffe38c6f19a470b9457f730d13478aea4436d0b53103b6b1d373b111dd3d80ab1a0cfe1d5a59c974c8e5f58d0302047c435bb500683066023100adcf341692f1ef623cf5ee1c9fcd6cc72583348212bf14c14f42183601a941c9811e1f89dfb1726cfcf0cd1c138c3b6d0231009fe46d78e77a30a74ad1c9556fe701f22f8a174f1c8cd2e0788e2b00f1d6d3c97e08a43dd72caf44a5cd1d12cdef67060302047c435bb50067306502303018c0289de0ee3f657684fcdaaade3c71e8ab3eeba68ca0fa1a429411ce10e72001e2ccb0fc6189868d8c77685ec8f2023100b2b9854044c4b3ee68e51236340e1e7c70802166256f4c0afceb986a4ede38f8882461519ce2dc4d7bab0416eb1083920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c6bd7ee448d3630b6d038137598ddd048cecd12bb4dd0ae883fd86a3488378cd49369c8daa50494bd047523a51cba3e023100b1a207925542907fe2b51b001db0e5337fab2087c1e7ef1737f4da8b706d7114d871f2a1baa5bf57e7af622bfd3129890302047c435bb500683066023100ceb4c9eac25aa75be97f13017da97a00eb306da79ab6481525b0a86cca14b5c34adb4a6c96d8d112af9c3120e1e98d1c023100c111efe0cc7a710db3b7e0bd7f3a7f2d18f74b70ad24d84ed771cdaedd15d64d234b8049b5b42b16f503ea686fae09150302047c435bb50066306402300dbb25a9894aa15acb53d19d896be95fa80e93f1712e75524e408cb948e4ec8746a68e5fa77480dd0c9a55797cba376902307ca1748a35beb76820482ce1183bb8aea9f99d704bd47f6ca74083bdd96c5a7c40e2e914f2eccf4fa030e7602e4e72c10302047c435bb5006730650230713f4e33f70340b75c5d508ef5ebb0743c96a2ba2691cab9be081fa1cc109a4fa93f2fadeb04936e8ba74616a2baf908023100fb728ec82689bf2fa7d40515ce9de28b41e3b22353760dc5d7a26c7222b82767a2eeea5f8f89fe1fcb4b1f55ede698c10302047c435bb5006730650230195d7b6923c6e4753549aff0e0fdea08472e0f2f5a6b72528f2e2feabe0088ffb211e9f8a5e65dc0ddaddca4063cd806023100a3b85b7926d21fcf0747dba96a23629378760d466eecf5b470784f8e855dec0fb80e2ef74781a64cea3a0035122ec36e0302047c435bb500673065023061804eda1f1620ebfc73864fc8ae24998ee7cf67b3355e0e9f6654ded8e75515d98e9afd243bdd16dc940715bd75318f023100bdbd1b4bbc7193d9c188d51e63dfa343876c03ad57140b70f1a3f9dbf4ac01566bdfff2391b2566d23c3dbd4f82717c60302047c435bb5006630640230731ed6562ff7266107bf63da2814420e6a33cfe918e77f6fdd57cc7c90bb37a5d2c07f21082e904e0ac4b6bd6e9b742702305d8aab25d63e03d1ff8e4dc93c3755ccfb39c7a027ff226c01e69667aeaa2c0872cbac2cf6fbd3f5ecb5d02825d56d390302047c435bb5006730650230622594f4bb40c6f2fa1afae72129bf1f4d916d407c341bf8098e3056ba2bbc71dc63ea3339de10be6556bed535c6c09c02310085f17d6844b53f86a5fa3f0cb454a06186feea3430d2d0d00db7d84418cd56ef0f7019cd3407ecb36271294b502994d80302047c435bb500683066023100fde8d65724ab47efdfbc996137e7f8b721c3a9d821b275792ca0a45d2280a5ca68ce3d6321def7d8f97035625334c3ef023100adee394bdaf42c529bd7e32a9cedb5a733febe32c06ba7d2085037c99a74855f5a377cf9a92f78bc145a0b835a9b35f50302047c435bb500683066023100a2881f597bb5ab9080409ad6afe80de3ad1afc6386f09802a32046a8e5bc493d820769890f6ffd056774dcd68aed1c37023100e61b09575e6479c7c3e9fbe937f8c662321fc035b8ffa7490f3c5900d50bec70930a8c06147a6924c9fb8da27d82e0ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100caa7b3db0924764969f4401bc70164dd30a728b9c8322c448b5b41b6c64d85ee8fcb3d04d60431fca6b19d81f87dfef6023100ac27eeea00f49cd90782dfab8ffddb33bce48db08c157c06bee56a22b0b8c028e5a0ba498a640a7a1bd677a3d575d4520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e8ceecf621a0957fa829d1d8e332a1e93c9210a36a39001e132d7732f11e0b69f801b2d08d2e213a8c6c1fdf2d3e0c5023002904fb19d4409eddd8911d59972a1a6fc78f4d72f9c91a5891051ad173fbb408459b88c8d6c41b65879df9d4e8e225b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f6121a1c023ba1ff290b8af96bfb59e0f4a23e2faee766279792dd21c3a7b1ab076e01253a92d4cbcdfd7aa4ef3201ca023100a2ef92cb777248909cf366e5d1f631ee718c724e0bf9e32350909d8d83075f7268fa28c9368a3f6e0e02c0a7219abd920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023049ce45ab3b13c8337af2785926d973663e6a43cfe57b50902a08623ddf3e43aff8560782fb60fdd6494365c6b21f4323023100a1e764fc5add3df6df9fe4dda90f4b69206c85059bb715535a25a6816b64c256d4e63fe0335367a1df92be098fbabe340302047c435bb50066306402301a82d095e9e0e5d032d9ff150834215780bd147f28678518eee21c7c1cf92a0862c7a498319f172babc675334382adc702303769f2b29485dada9e4a77b7939bf380acc99e53ae670e5691de5c80a4ff5ae752989a16665c110df2daad8b3b49b9490302047c435bb500673065023029880b0229f57a2151877b288dad067824bc622d7c9b2f117e9ece54eefafb0743809c3741e8a551d5c15e8735cea134023100800c5c74166182cfba0308e183d699d424ad7f3e3f3a59c8606b92cf49b15cdfbe2efd88f377914482be2d1bb3a068ef0302047c435bb500673065023100a29549e6afbff3269e873ab0258e8f21a52a0bbcfed33503a5a01d136fe3383555e729d0e3dba79da33f8116f91cc2a002304c8c386cf85587110dee3d1ea2e0bf33a72dae3060972118612f817e52474c88c48dd4e772b3efb8f12c4b473a7cceaf0302047c435bb500673065023100d7adafbf6f9884dcbc38eb171144839fef0953b425c8ac83b0c9e5fb9f29436b8d785fe448d5eb2bb4467d441708869e0230445b2414e6e42c2108c7fc95ce5f197b0c53e7cc251429948dbfa5d94adb67ef044df4ec62918a882d9f1db1d9c27da50302047c435bb500673065023100e3741c94945079221d4983d7a096dfef797ccc7b43e7ae25d8cf80670c8a3e2aad21fc40cbe1e0247afd9ed0790303bc023043ef519eda1ccd134a8ebee11cfa65cb25a0c8689d76845212e2cd4a4fb7b25b2470654e6355c59ffd3d8a3ef3c8ac5a0302047c435bb500673065023100988fbd79f0f936f07d25c30e4894bdeb168167227d1d9b783727e8df49494873090c057f61e066766c6d34cf54f75d0b0230297d72b825396a25c4c68dd2744edbf94e92fcba0c23a71c41fd3569ea01107bfb0d193c8a269abbd8eea1ec88d57fd70302047c435bb5006730650230111ce680de6de8a814c886c9089b3f264e36aa46e9ff0bad226683f8bf73fbbbd4543eb0e3f9f0e8b46ec072981bb3a4023100e6665391d7206903fd995ba39f03c18718e84f80c570f2276d79a9acc16e08ebc45a0af1e378b548e5bd530d532871b20302047c435bb500673065023100e9b5031c5216041deabf691c00625a1ce5c072801caf131d409658cbc16b0ebfdfafb1f3f9835df9793aa8739cd1952a02301f802f95682044fc176ca06602adceddc3cdcf7ed9e4ed339a66de83352f18e67d00007234149098790d0e5c41fef0c90302047c435bb500663064023039e5fcc02509f186f6b95e8067be5fc2bc35e3dc3b9f78011cdfdc01eca51db796758412c68f100e3919d31f8422996c02307343b3dffaa4392671304838046347f3d332414d82d7710653008ae0d3b7226e010fd1d71aef7dd06e8344c5fae877f10302047c435bb50067306502301c05645b3894876762608b76a64b0bbb79227595f82d2e4fc36e3e3d2f416a82198290a78efb3a7b9e5e115de68e7e51023100bd99b6eae217150b06ca7599854e71876db9cfcba1cd68772f16ba5dcf45f23141264e8cbb287ee38c3452180645b7f50302047c435bb500673065023025aab203ce3ab130d293073752db78253f534d903f4af51c4aa96e81cea004562182e68c8fb8c4f48d872581de6e83b0023100e0ae32a733956fdeab35770bbdb6650d80f4d2f64bfe603f5fd36f80ec26abdbbf042c4b233af2f3ca3037c3751d04d70302047c435bb5006730650230732f05e6d27aa604471d2b8eb74f9448014826c94bdc3470e968f7b26e290faa5f6aa4a74b1c0c71337394f89dada4d9023100f491d4e4205d14fa90fd34e40ccc4cb04a402bf2de2f2b6467f27c29cd4f5d7f6ef9689e4711cf2f5ee59964aeef82f90302047c435bb500673065023048390f649e7b24127630467f6351f90d6d64a3fa8f051d50ee1ac2043a59901290c8a4592b3635a2dbd8b9db97253862023100ba7c20df98682a2c65c1bc6ede051ec0abaca57c5e3d4522722b360129fd649326c44dd8bc0a15e6a03fd4f1e32254030302047c435bb5006630640230471d2302b77ded6979a8dbd2dacc841c3ef8db7e233a3266c25bb8ac8b463d3e1ada9b1a9b383f825d8cdaa79723bb8c02303298fff2e1b8cc18daca686b707018cde69ff0d247e73a3f10f27a53281f98d007e98f015a344bc791201f055f49eb560302047c435bb500673065023062ef0935c2217b64c22b7a22f06156703aa155e923bc8d3826bc84726f2550a2561763c206fe0846a9f26409df24096c02310080b680eeefdbbe424a3ade30c7c470e1b829e37d0250b4a0aacefad79250c1b9c510d15ffcfc181bd5a5d713b88c9d320302047c435bb50067306502306c53ea13cc617834a7412c237486886f3ea7f5868f75f95a2fb258328305022523f5a8313199f96df0234ce8b4f88735023100c40f4c62f8ce9d9280eaae6738ea59cf9524447b1d683fb5600a389e54e40a77b75af4cf806331ae99eb23f635326e1c0302047c435bb500683066023100c867653141190d7a378c1b800c2dd7451575b49fc0d271c3cdaa51a42a61f5f8b26e6c1a6100b57788bce31b390c3e70023100fa7e8cdf2bde8e44b384adb4a8f792fae07162e5c298afd51010ab0814f9de3ee6cff0c390a99ab604c06bc609ef9c9b0302047c435bb500673065023100f3b5219223d97096d19a845b87b52ec9b63ee524bee49770500384d206776549eda941198bcf530a41134ed5ea84242b02307364326298e7a051ad2a448f8ad32b3776e9121da48605f5f8d84cb3f589a48c5cef4dd3fae0d1f8bafd4d44d025f5660302047c435bb50067306502310085fb0827acbaac9c8f28a7c51edfa7e787b6650ac5f3ed529352b64cfd3d40a2c1b5f50c02e69cb14f3e0ba8a4d1841b02304a51c4aa98aade033ba62aefa5a5655d9a33578d30153a7bbd9bf2c0b38062e95b82198c59155dd0d5710b10434c2bc20302047c435bb500673065023100c60ca21c00eb1f9f4466468147a01b0ff4bbfaf80469b8b0009e1fec3ed7c92aa16181e46e07758826483c419136388202303cb19c58c9ff621d9859363ef23a80179e57e617d81cf6d94636523934f854c5e7dc4327cd8935437966e6b5f258fdb20302047c435bb500673065023010f9d471570b58537e6dc91233c312f5e1ec07cb9e3fea651f0a95d6b762eda7640544a72361c5af93b76caaace81ef602310094299c13d44daa8a5f3ecc28d1202a7c7b2775c9279f72f95ba054c287a74675ab3e4a8636600d2f9823925d4bd1b2490302047c435bb500663064023032bc30e4568f60c5dad1bbac7004b5e9e8c78014b7f5cb8843d421ae4dfcea9b1707b7799951ed39572c635eab6a7fea023052f0178faadb757b557cd7e465d23a965b328952e33ca7d66f75323376d7afe751c573395151ce2242e7d2b0126a157c0302047c435bb500683066023100b3939eb94226203ddd71d8ee259aca1556ef9193ce28070f9eded66dd8984b6f36e44ff3dc633afbed50c7b5a2ac79b4023100b6a8be1bc0d7811e7fff8a158d47c0d0df51a9fcb2db23f0dca19969dc182ddc3b363e9dc4585b3ead3d47936c1c74170302047c435bb50066306402305d2342ceef8566ba199090a14dc267d6159e7c7dc83dab87eeddd9b01818012ca46f0c592ebef8682105da2d41af827f02305e395f6b448838449985cf9496d139bddceff24a71008c88d870d82e5e758a6b93d528c01e3767b3b64314f0f906aaed0302047c435bb50066306402302b277b85192108709631d4f39e2b477decb17d066179e77f6ae05a02ddc7c55970089ea2f5ee5960ab02dcf5204d43c60230363f2a1b55bdb78dafedea98b6e1e794ae3e1e8e3f0f5318ab90c1496debb3467dc2de7f6ac65bff123054c018e9131f0302047c435bb500683066023100d9b1b0aae25971cb3497825dae17613c9012ebbe2972994cc8471ebf914c498f3e64a9b259baf11312f56a7393309172023100caa29f185640459999a3e685fe7a3f57dcb7186ed662f87fc6fdc623453404751d147c88c2a6530c9655f9ce608d5fdb0302047c435bb50068306602310098c063d69f63a1c46ac4d3e308832ed582bd6a9a4d88ec18b03e20c8fa094bf6efbfdf696dc9c786202edb5b2e323efb0231008ce176a0966b0af37f3977fa6de3516b9e72678fbb7e4804453b06eeae2fb8f6223878b12747f1e9475784661d7d87990302047c435bb5006730650231008e49e3cf87d6d3fb1871c7ac2647dc1a3ba0d7a28a5015f08477b5a69deb22a0c02851024c40f085b29b40f6be9c91ef02300daac8f41ed42a781f95174e4f1bb7a0f2d1441e9bf04fcfce75aed17b3b3e0aa904ea1897bdc13f93ba893288d144640302047c435bb500673065023100bc74fe9fef7085c764c457adde82aa1c01dc67484b218cc4f95f07723d296833574176efe7624acc8bb127448a692ac302302a0c25ea06b0362cd7e17bb2c7643c9017d5741905b171f96913a9ff9f94df57915850e75d378da601478960cd9655440302047c435bb50067306502310089266f514d69df80a0606462bac3047201dd31d7154b6a29e55f8fe8217c771e81295fdb97fa1c160733450a949c251c0230169454e611207d1882a03f4d2a21965d7fc5967cc21fae785a6da40eaadf912c4b80f96ae4132017c0a047dbcbdfb1ad0302047c435bb500673065023100e188800e836ff792090d891bee189f00f1b1d277265d24e6f19bbb15b73d668cba19b893c5b7beb351144d6eda9aac760230694d6dc7ae343f87349b4dc298b5a516a38af5a00b8c37fb1e7624ca5acdbf8d60f74c8852fa2ad0e9d58a44126995130302047c435bb500683066023100ee0547b6dae79717b9c6acac1aaa127379325da8700de278be286964f8bc64e47c08e379e066a88674f9efed89c8b5fd02310087066c892655185ed09f8ff75add84cd54d8f225bad7ebf99308f695d04517c6d0515ab7dd17360bbb7a0f694f3777370302047c435bb50067306502307723ab77e06265b3a04c06dcd6c76b71ef9626d8a593ebccd6df90016196fc29e91d291d9bc821ad0b62b5b6657e63b0023100d23b4e1ef336f24f4f55332431744cff95d4888921c2d8d3d6be7dec03daea627345a6dc6279f4a7a63dd2ecbd6f155b0302047c435bb500673065023100dbad37813c615b1f3c189bd341ab6a42f7329be91d33737560fc686100f2932203739ee9d0e3eefe8de04d32ef20fa2b023079729ac6c207b0979b27a663574b2096d844ff04709082efa5bb4bb8ba435a821d532ab6a122390c895ee8808c4361230302047c435bb50066306402306b95afa895040d1029a6f128f167979cf32a05868a547103420dc517dd009bddb1906305b890fbc7c408bcb17582f64502302298180b9f1949f16bd9557b5853cd0e70296077aebdd43927d8967015b6e9760dd842e89b2e8ec19fb9c458d91fa0e80302047c435bb500673065023037b132016861fd9bfcb4ae9165193392cee56ceb32c7df8cd0c67618eb84010e454f78c217efb5c5ef4e16b58e88040902310096745f942e69211119ee73afeec372e97c6e3f053eb7b1d52a9c7cedea20c6f978836bfabffa8ea60dc3e0c86a9c9ab30302047c435bb500683066023100f37b10540868d36ee8975b69f3ff7b79ecfcd42cba1cfcb70a79a1d0ba42f07e6130b9ec3ff5e8822d7a71203540e1080231009c3ddc7632336d8a3fedea98df321dcc3b6175cbc346bc72ebf73357bf71ba9dd628bcf9b948501757749d7f62d6894e0302047c435bb500673065023100f0e750b1e9c4eb2d06a27cccf9a2e6b346c05125b0dc59d1fb648892300da46bd0a547fe8715a67e03dda40b092d3370023014cc52e95a62593ce45e21e8e60e1a6a0fc746790411d75911485e8aa709576af1e7a77d184b78dfcbcada7104da6d7c0302047c435bb500683066023100cf91e8de1b2eeb26fe6993a360b4ad2131006912a6878c07a6e85141f8ba02e87c6e9c67c9cce8390408994f48f9bd03023100804feb743fc89b222ca341354f0030c1aefd9b9a1832b9f78bb5d9a899fd4f4816543f215a37e789bf9c1eb009d092840302047c435bb500683066023100fc9b49ed4e247c6aafc90fe1a5ed5c54dea8cc17dc82f9217ddc07e5110bace3000613b422ec40f4755b9fd1fd6f3104023100e20c06c040c9bb452d51e5783e8737255ef5e177bbe03bdfe1fa048324d7a88d0f0cf1b3150e9f49a96a0650d2cd4bf60302047c435bb500673065023100f9bd25a0816bf6a696e7aa5bb028f3191d666743df57186fd96b2aedcc0d8bddd12f55f94054f316a4dc4268ed55afa902301ec042773f33d2c000ba630a3ddf801e5a5acfdad2302c6c69a411546e7ac026f4886badc80bdbaccbee5ee62f9838b00302047c435bb500663064023057e65c4ee06ae3593687a0cea7af3ed6ae40e7028e83aa50259629de9fede79d6439b1127dcd458e8fdffb43771c093402302dfb9f0bea23f6c3cdeb3de8721ec4be8591753012bae06d96682d294479078be45d74dc1b2a17c0ab33120b21f26b2f0302047c435bb500683066023100977c5ab319e709a053952d5c9de3328cbaddb8e9bc3fee446f51046d91bc132e28cada0ddd243db6c0acfd6720690b850231009f28e29ce8e9ef3e0979879c016174c25f2d088a4ba5e776b8eb5b5f6710ba84424b3d2cdf5a87356ff28925d6d0c8230302047c435bb500683066023100c2d9a2f03560042a33265e51b55a94d7d9f4106f000ac1f92e1e6b66676f09faf919b7b5c24243980e5ff5d0666d2edd023100e27f20c8faa46f505b733d758c51b8e31588192304ccd116583566e47206e73bfc117b84342cac7e39fc7469b42865080302047c435bb5006630640230707aa1dbe01bfa001eb013e2eb6d77458f7c9b5f77551b7be007fe553b4b50665a188d130e1ed6b752f18b4c8c6eeaf0023055809f05d23a6a2d1c740f05d5224503f10e225921f17b7775f526b32ec3aa1c1366fab1e6ddbbfdee71a687dfc7ab830302047c435bb50067306502306a39451e19f4c727ce39feb825386c9314a24426402651723a28921eca5f47cdf3cd2670daad463d05ee88a9a2213dd2023100e42ec3949ff91241ab0b670dc808e92df4f52388c10f2d00d0a739f331b3ce0c1f8ce56980f12e7adf506199bb7f0cd00302047c435bb50067306502306060f951993ab72e1b6f200c9c008e9390563bceb7ecc245538b9a06f2985a031eb6b42cf3c1131ec79156c60651b235023100af301ddc81242cb96ca8ce1fb9b1f7ae6b82e7ad86490756d6742b2d8d41bc89dce2d4b4c4ccc32c5cd301dbac073bf80302047c435bb5006630640230440bb4a40efc886e495a87826ab976751554e53723f422f6eec1cff6dadd00aebc26c5259baf8301018465ed42b2351f02300277315fcee8656f9357bcf81a0ce9e5d7720b99b89cf162d817dd8a3855203a1c21e14749b47f8b0e36e56f9dc46b240302047c435bb500663064023030fca05a946287b9cbe6f1194ae12f92e2902a5cfd40744c95202ff0a88a6517111b630fec78ad048b4f7a5c835b340b02304aedc76c30ea961a9906c59dad4c7a9974be5b5b71d3d3793430a4036714ec621b34974ceac039ee53b0568684267b9f0302047c435bb5006830660231009dcc6f30ded91ce1b03c074c00079f0683f9e50646f427dbe2d69e18442055050a0a17a8748c71f0fa08e60382b7deb8023100ffb0e0bbe954f47b6b162a6f8c9ae7ce31849cfd921b88ba760a49352afab7318cea931ff1df5da59ccaade5f508f89a0302047c435bb500673065023100c56873d03ba5d9abf09722b70228380105835daca16aa9eb7c585ecf8f5b90b5dcc29cfa698333464f265f131855f8c202301a517a91d7b431e8d1029a57253de4324c44634f05e88f9de714d19ae5eddf4c02d92e1a135a41aa8eebb275236e12940302047c435bb500683066023100ab998ea073fabca9142c05078622164cc7058161977367b416f8e6bd1364137af1d6fe17576aeb8f033fdad0cb74d880023100a9b9c8bc6aec2ca02ee429c4127e8c18b5978edddc8aac98d18a2b8a8d3e0a7fa596381168765adb1bd856ca856647bf0302047c435bb50067306502301fece8024df3f5ff376f2a54060e23fd07b9163c5cd0c8ed213de98deb6484d4e185b46dadf9dfea353220759beb473e02310090f491a859e0cb37acf0d7b3d61b3edfce3d6fd02cc289f79582e530b7e3ebf333bab8ef29f550af74de85c2e4c99cbc0302047c435bb500683066023100969b3f8d8153630963a36540d32e264d4191e3129b256b5b082b6e1e0ba42507b0569c2ed055521c9513a1c23a0b41f4023100bdb38796fdb264d890df6e6e283d9ed1d9daeb78f2fefcc89841be54a0808156df9fb8c85a5487619450b301a1e8a5f20302047c435bb50066306402300bc8138d712b90c62d39036b3d66a3b8e413dc8d98a5fd04fc484ec8849d8fc34615a045b68a44e38df7087415062b870230594098bece68439d413f046ccb715806b1b508b54d5bad00aa89817a87467d9318a8650db3b964106dc089a4e91e3b550302047c435bb50066306402307d3c53dbe1726503b631b93433abc9ad542e884e71e84ac7c14724418503793f393b45a99aaaf3d0744339293e601ad1023073ca1b5255e78e82ea8a27381c5e3a05a8475138646b3adb3a46ff5e93394d81887879e776eda01e9f4cfb7a9696c9f40302047c435bb500683066023100cf50c4a2097d9fcf2480d1cf2ae42a82754bda4f99833872cca31b92de7d38f79d32cc3697a1ebd6bc01644fff27385f023100bd6ea300f64ade3c1d408d0c105e9553e637a27dfe7b677b48ffea28397b7a2d750dcc55409f7bd0c5daf22ca3f381d50302047c435bb50067306502302bf449195aededcd8ed83460da191983ca4a38c084b79c1df9ea0256b37c1c2c3127486ffd0200427ae29fb3a88620ca023100ef0fee2ce23bc925489b304d2c6884c3542b5ad642e0d0f04f50561678412b6fabdfbeb70a16aa9dd7947d84b749291a0302047c435bb500683066023100da1da08a9d058b883ff0a17b5bc2bb460117dee04f447f97238f62bfd5edd4b91304d964bcfa67b24570d825e7c137b20231008b848c3a65f235696eb359b627bd62425368298033d7f095d538f65e9cbf3bfb410893d601ee57a3ebc248e1ad9a79e20302047c435bb50067306502301d9f7766c34f3463057da588763a06ffdf79ad14781aff4f8f450ab1810893d15e755dfb61f5271c2987a4c45d7de1160231008f635fbdea649dcb04fa62fa877e15ad50edc6bc5ec8595e7d44325dee32a9c60e7936c6921b6ca1fb7aa3b3a14a24760302047c435bb500683066023100cc954b221f285c8949e68eaeec5cbb518794bc586f9c9966f5537ef0641bfad5aa2c2480f21969f412da5ea46e519851023100b86ecc822db916d09673219a082106cd0078c54b0ad47a5168219ee51da65e622377675e0c02c8c44bb6cb9c8fedec0b0302047c435bb50067306502306c10e7af4dc6fa0af66be0a8eb5a383d6fe5a1e3e3804724e1c5af949b8cad46c34c1fc7892724dc624bf4eb92c6a33e023100821c6eb5713336368b2e552261e580f5be6b8349a14b4ad063c514e4feb953739d9880585fc5655afd63a57f30ab73450302047c435bb5006630640230305ec2e8562b8bc9af514e3965530e147f95920bce9d0a67071b896f441622ad68ec017418ae1987d1bda2fbc650ef3c0230331d571539ac623e9e8b130f41e399461d21af4935c2e1eb8fe86a1a523d8de67a3595fb056a9cfcd4e7597c53eaf98c0302047c435bb500673065023074342e6238632e2885019ed0948aed1ee6031f61c971cada9ca6cd1371a0278aaf33e669a759bab6f47aa1bec1924564023100d45ff4927a9bcb4b3d8c35ea1622e457ea0c19b8af1a0001398c61315b1a39f5b92893a8826cd5eda1544e7b15644cd80302047c435bb50067306502305ca9a7dc30b2841ac0678249d9e91332ea5f3b299b738f7c875e7493a8bb06f2d8a40c6f0941a309b29c06caa3a79bc50231009e91a0f6ef7e471c17c9c9ed4511326fe5ed67cf7691cb0701f0a8b12ee10ccb492784f24b448cd632172a27f60a58530302047c435bb50066306402306f76967e54fc8eea55abb6f943389b32ed22ca70aa51b0d32ed051a0d35ee9accd48f1f966075a35b2299d5ceb97efd202303c36f3b8a2a0f26847abefb9e8330250e4ba937073e80f9d61338019facea80ce26a431f791fd5f0bd68d030ff4786a10302047c435bb50068306602310091dbede691632b3f96cdf92651112659119eddcb47a8f037a3bf60eae83050ef7718faaa91d8788bd07610a77e17870a023100ee9caecdcc7f323482e815d368bc10c81ae1d93537ab6b39cd3630cba500e7007bf6774210a67718ff98d3388a7c3b460302047c435bb500683066023100f508aa0e289c60a11781de9e001ad9a08fd656e22419e12e406deb1d102c6c886f1bc32e5363e9185763993909b335a5023100cd50b5d98510baa19b9e9ece18124dc1227d2139c8d1fccbb3e24cf0baba61766c9ce79f3e75141cb5a06188c6867eab0302047c435bb5006630640230263f95311d7434015ee37c0fce5d65e0e1a494c540e1f914b82e08135cfaacc9d45bded9144935511e5971f590904428023008724a89039f422375e3ad2467efd5970ce6ba143251a5eb1ea81c54094a39c4160f8188a26b0a5cb02f7175a2e685760302047c435bb500663064023060518147b7bbb75364a7598e0915d1520c9ff4db89048936ac1335f2f33dc8f8313a9c341651fee90f940641e3cceced02302a4286e12b944b6b6961d6f2a24b0bcb441166255091c7fabe0bac5ba7e3d4dabe37f130dfae44fdf2ec48028a0d742c0302047c435bb500673065023100d1c0178106b601faa1f436f328c38e307feb886bd1534a9fb80a94eabf5a7023e04234664791025f133763cfb4db97df0230118ecc3ac8fb37c35f4c51112aee2f9b807418719f9eb06ddbd7959e94a0f4644531b68456b005dcba92d40aa20490b60302047c435bb50066306402300d6fdebd54578573678f0cf6ec73b050b021218e3cead29212d465cafc75501e092f8311978f6e4f1a07f430a8f9c900023057dab91ab5d7827524b5b05e02c3af844879bba592f67a8c35437832ef6a4be0b813b5b8b104160ecdc327de1fe8e4aa0302047c435bb50066306402301c684a03a93fa6db546ca0b69eec6fa199b12e8e91f49a0eecfd12098f903146e44c36a1e2e119685623fb035e7c2653023011c17c57595c3adef8a331392946157eb5eb649b25788185e43016a6fcc7e1b68a558d4164db3c44d55665bb1381af000302047c435bb500673065023062567ee83a5424b5f39cd3e3ca47ae84bc2d6721ee73945fc622e80cb806c6c96993d50d79a683d7a5fdad3bc6a931760231008f5bfe812de42c1ac3ce97f93e98ff2afe97651146dfe6182c2ef1c6460fd6e70b79d66a97a5e2858125d1a29c11458a0302047c435bb5006630640230505e3d5c034a43382d4e4a7ac0147d503c2127c3b308bb12bf03ace3d3421d2007988f9741558b6f3e24d7cd4320478502300146967f7f7e25ab7d3495ff46dcec81f76c5d39861c426dd4624d3fb065b6f6c67b4b909f19a0a48e87c1c960b206210302047c435bb500673065023100caa52b84465e8a895cec5d3edaf716e06c6bb838cbbec9a12974ffc10db356bcd0b8dda00ad8e55528777c3c2cbd1d9d02306dcbd60c88c9a58bd69446126759ed90aa98932f7f20bdeb4bc0b2b8c8b302f21862d6dbd5c8b5f82a79b3b7c27282670302047c435bb500663064023055c9f4aa30934f59e88b34f87f628fd9b4f2b00c0328da94ed44012bb564649ebe4dff060e85ab7c098a639cb764eb1f02300c6a08f6ec9f0e677bbf69c8b489de4fea8e1f2a2bce9a036f4f5f2a3bcee1269c5a478eb2642411a141ede59239e2590302047c435bb500683066023100bb468bd3bc9d8567ad88679ab589a2e2025ca292fc145e0b9115518b3e0d2dd144f4da41c8e51ff0a4f39cc631cb1b8a023100a798e18c75c69ab310182dc92f0746a614a56f647ee666d3abe4c90e0f1eeda3758b74211625a3bf09c7f63fa8e107d80302047c435bb5006630640230339558bf6c2c070cd206dc892059b2c4ee4612b689804e3ad6eab186573956566da2615e1ca0d163be537b68becf8b12023077c370749320e413dacc11098c9e07e4388839166ba34ef8f926373688a086c1d0508aaa6101f0a38986adc3fec1c1320302047c435bb5006630640230111be4633b4afb030f1b1704956181e106f437f10021bb357d2e9914c21b072a58cd6b564cf0ea4aa8df50e39825f81e02300c6386a23cc02865883dd2f0f5528dabc30f02a55b3e19f2a6c62be8d4bd974649a49072b41d905c0d468b1f1fb389350302047c435bb500673065023100b112b6d5ec7434a03f750b3b7a87c988c95bf101f1239fa42155f34f86b10e5533481404d071eecf6e2f3edda46878ab023059a7df714d25ac5f8493594fa67e6144b2471ac2c43de83ebaf8823f2e849ec5001a23d6292087097dfd350c8e24b0280302047c435bb50066306402305fdfec8915b92c8f32ddd76e011db4c37689a6526a735f98f2c30d913a4bb2a3b3f6397bf7917866bb83cfb84a54f69b02305390f9640f5a92446b53ce774a1f13f1c8f887fed6a19581726783285fb44289a0c185612cda1382b12940d15f9d05270302047c435bb5006630640230469ff5c1a6b8e43de8c9f11de75f85aa888d24cb55b34b9704cdc5e67394c62d46aa9c045825ac192a2dcc645745cb5a02301a94f277d49d4a74320b9270b175851b18431beb14a8500bc774cc15ba5c92aded26c042023480c455a8b9a8c459455f0302047c435bb500683066023100a102d6eafe9566baedd43afec7aaf7af2285e898b4baad75844469256306e8216595dffca5d4b605aa074116ea2b851e023100aa7e599440aef760bd22b0c50fd474a4536e2f3660a2d2e5d65f70ee95594bac5e7868cb54f43f71c5032603d242e8df0302047c435bb500673065023047dcfc487c83360dd5edb23e32acd6c7d61d759ba72c5793b628f354b1b23ee7f17e6c016bd3b06973664aa293242a53023100db332ab6285ffa07536de670be88e0046220e71a87af97f274392045ab18d90cc8da9180385b2230d70990a9ad4766990302047c435bb5006630640230169a524c5b07a6520e77e8d1587fd181edae7c20d22a2cdec08e8269a0cd9c3007e32679d26438c9b737ebddb86e101d0230664893108b43b4894691a9f152be297908dbc2255ce1caafb2770568e0c549f7e95610f0e82a623098fd85c3154b415e0302047c435bb50066306402302d72c1f1e51cb659d477c31ffe3732783cfd09827ab47618159c2f176046f090cc9f917ce69bf66a22feaac83c0bf8b802306cebae54d3fb9be4321c3a9f6e9fabade1975ccfcb3a58fbec7c25a133cbdc286a7c7c999cbd22c5402503a4551be09e0302047c435bb500673065023067b096aa2d5b13c525ca63a8f905c712e2f52d479b3feb046f63a61368aff63d2494bca66d1764498560d5c608c7f260023100c5258e35f0753fb9a3c9ba2acdf74868957927b27f6c017f6f2af0b132ba14ae6c08b989f0b2d6dac1a5d1d40e8d466e0302047c435bb500683066023100a823a191a2e28a346fef08abfdc042e5664e45c1fa06a3869b763c25819a55e038f41eb88b4f52061f2ccbd5927cebb6023100a82631f60fcd2578b20f31b61a495f2bcc259678a67f3098dc31f9ce5fa25dc5e08c3d8d3fe717e2778fb4188b136f940302047c435bb500663064023010cc7035dc5342d31c9066ae5fcadadccaa5160bbbd0fdbbe411f685bd271b07c47ee4ca2358b0f72a97fc0d9eb59ab7023078b4d180abf66fd4523c56eef51c2ca76f86933eba467958aa09db34595638901be6303185d26a2b089e021aedee3c330302047c435bb50067306502305cd475f0349404047bd478e1f14744f2e651e9cd3c2eb82f9527a3caa963b20467be45b37458bb31385d63e16fc1fa98023100a452b73c7983cf995371aeff439df611d9272f2c4026a06b16b18a8456a21f968bfcfde36aa83424c2c8ed210939f3740302047c435bb500683066023100fae55b230b830a9d4c3eb17a2061e7f5d69485522b4936d2e46a13de211974050de2c3061742a12aeb35479a74eb70d6023100fbc6621be99e6ade6a1e69f8d1dea1c73b54d132e8af058f5f119a71e08cafd42aa55a7e470eed365679e330ad99270f0302047c435bb500673065023100ebc678cca24eeca1507fff306b71f81c0bf63c0caba61afa66f610fdd2a507bdfc5f7381baa0c4d6320490bdede89ad602307a8ec730e1405fbe4d4239e03a2d83b430ea2f296e9515b543b29cf83d6b8be3d9a9b846c27ef21f1115fd27b06e7a8d0302047c435bb500663064023018a5a73dc95e3a1fcee3d5e7e835cca98456a787ba06cdb16edcd5de179720ed8cdaa82c6a25b0713ae3b6135142c2f4023004ac831fb70e4afe6e5a2c06351692aba78143da39c27b8b0bc9b0147f3b67d50ceff5afbddd143c1f32958bef310a9a0302047c435bb5006730650231009a66760cee48fbedbe9887b391c0f6202b5800fb01cf0be66bde67c57e9a03af7a64a257adc8df33846ef4dd0fac0b010230663061621046660514e3e8fb1a7e22fb35dd24afb76439727dc32cb785a2e22b03cec765aa9d65c6d159bc6402a7bab40302047c435bb50067306502300d3e6b573b724bb8bc65658ff5e59b1cfec5d28dc194b5d757cc23db162cbeab4064a5dadbf3ce4b80ba986151072661023100e2d91d2a421a5ed16a09c4dfd33885be605d46e3c2a8f946a595ad94821c0cfcf8d677cd3b1cbba8a6e71635895f90aa0302047c435bb500673065023100ea212a7fca1cd2254df230b42b79a90468b6ce6c9a588c76febf52ef4a3cefb9b4bef7a600c7457882173fb5185f14b00230483119ac287fbe59b23ab5d815242875bc891c5a087b151f67f2aa807bf0b68b4073cc3d74554007b12523ce6af2bc540302047c435bb500673065023100fb034e0c4bc7b1862e5b61452fc804e78aab274260ce0121871bd7fa0c091fdd04fd0b01b828c01f4c93d037100609150230403d28e98167fa3b8b687fc3b230e608f0a0dfe2bd1718635f0b16f34a4362ba180cef996b22ee60d4e269d8b2844ead0302047c435bb500673065023100d5009c512e552b94e2ec04ca5c58d5f0f817afe2e4bdee2296861ab644e94cfe0cbefc5c37a4a4684b59cf8bf9164f4c0230782a3a9b7f987ab4f74c73148dd409900a80265f7b27df72f64e7a409cca61ba9b8d5b415edec6b2d6197db05c5a55ae0302047c435bb500673065023100a4f4a8928d02027caa4d45f1c6aeb7a627c4fb4e6793b09d95157545491a33291ce13cea5b3afb0f495c7bfe03dfe6a90230666063476db470e7719cbafc20b7fd32efe4cd23e1c69122457e609bf2ef7a8a1472ca7b352e95f232f59e62d392ab4b0302047c435bb500683066023100da4a4baa96f1355524c2260a6f9363add484d0e77c015124c8c49e8c5f0779729bda84c8d0caeb2ad9770f06dfa38a5d023100b51a38d7d85e9525b5e6ea5c87fcbaad570735f6cbf829377a69e4589d01cbc7287b46d971e7d026d73b4f6c8e39ae2b0302047c435bb500673065023100af97a291d5eb63ccbb8b5fcce1970bf1f6d3464a215b79bad651d409aee1a974d79a7dbc467af41c1c1e8dd824d2d71b023079bc1198bc56172db559ae0ba7c8f7a0b90b680f7301e34f556d8c075f326b4e912677208fe6d252cfdfa3b09a044df20302047c435bb500683066023100ba6eb09a88c7b11257ca18248aac8d35c585514a2cb8feff946081a508631a817c2d76951151a4f30d1654a9751e9c79023100e1aa26cf0a4f10d216afd7dee7491c3d0633dabd579c877987fa0a3ba209196c742652126b65960b823fa1b521a603b10302047c435bb500683066023100ec0eeba36245e05a1fa33f47f07e4b24231870d446627e72b22536f17fad4d4937ac716d0dbeeb816dac09b5aef7345e023100fe3f6a91a380f9e1ced55f3bcb7883f89480992827e83e6355eddf6dcb941d905dfa4e77f9bcd894823e8438dadd51c40302047c435bb50066306402302f4a70c0020697787522c029134958b32419a3cf33c77bbe304df3cd2115b0a5de9aeacf52713f6e02aefeab6fd975a802307e73f089e5a62662a5037f6273af7a299749a6901e8a9217b6c5562e221854cafc90625f7eb3211811662e1288e59d870302047c435bb500673065023100876fdb8fa43d77f57d265bac2721fbac9011ec0e2f92e638655dfb9c5eb322038c786e2ecf3354e19f95960c65727dc802300d2fb26660b934a7cfdda39cc0425425a06ed0878486729908cad86f926fb9b0e0dc212e003da9fcf4a82d9a4a9e2fbf0302047c435bb5006830660231008655b1c64dd00c39126dc7c568130a9a8cb35bec534b807451c7a5b81a539e6d325bb2ce5e5f73c7b848bde62d435d590231009fe88d826142a16f4ea9bfe20264c5622bf84f1575afff4766376acdd7a62362d24036e30ea8d1f5aeee57b4fc761d590302047c435bb500673065023100ac15758a06de1a9b1b7ee9847582ceefdbd6a11e53af9f0d184b5b47d06b22e6d43bb644d2977dfb46e4c2d63e1b0bb2023074017ebcef7078b54de4c6529e963fdc23f12ad2f7d71a5524833dae8a2548d1ea3edaf64f74b3dba9b2cbe96258c5fd0302047c435bb5006830660231008c953eae1d9f45881836a4b49ffc9b1b57656e495061f295045fd37b4da92ef125ede6e3ebcdba5bc4d86b6331f35816023100da101fa3436b2feb4b9507db502bbcc3cf65cb1e2ecc2e5f5c345def03e56703eb9758db832daa2408a70e2bf5c95b120302047c435bb50067306502303d67716473b90f24398c85f6dce9e6af15b92e5f4663a052ab7921bd5a3a581a53eedfe35ded8d382dcbc9f823f274df023100fdb3cc09d14db7505f90e9156b0450989110fb57246de32f0214272b82a37abe673b50b65ef92e19998aaa112c13841e0302047c435bb500673065023100f9b5d5d0e50998d1f7f3a9082f460295cc423ed44521ec69743e5ec340d204c80019b4009281502e8d28a3f16dadd2da023067ba4513075eccaea655ef5729a32ae1a474e417912fbb6f0656b0ef2664f07f196ef3a1e579898a7916e05f18af34d60302047c435bb500683066023100d6acf99aeb89dae4284f92e8d2469c4da287f93115b20d12eb3f0a0e866cb9549dba703858b6e90f857622447c59b222023100e30b97ed459ab5582eaa828aa0e6f83a723bd9ce43680eea364baeb2ceef4589ba2074f7e25a10970369c533a8dd7f660302047c435bb500683066023100a4fced2798be01f2b19bb55a5512f0bebffa7ff885970ea2ec7b364e03700d9bbfcd3367b2a4f17e480adc07e9ee030d0231009b664a7646ebed7ab45595732a5a9226786a497cd22db2d3b1299f56b4b919f38c4e5724dfc2dd8eff8f2209ff8d9e430302047c435bb5006730650230063fb41b4812481daeb1f4214f0ee6b9b3711874ab8b7839c8863f708e41adb272d2dbc2c61f5b690d5b8f146488fa3a023100f8a70f4da395618b1556753b2effaffe988b4d9226f0d10643b8b126fcbba16268ccd7ca205fd66c382c299a13fd237f0302047c435bb500683066023100d20983a43b1d22d150006760c6b2e9344300a1dc357412756795f320645370c7bab51f129bfeb69d618e7a4db7d76d67023100ed0384ae5a3395e9de033347a7c5b2b957d62831f8511d4dad2327ab5d305f9ca1ab34de14bb030a64a7d9ce631ef7ca0302047c435bb500673065023059f25e38ee6f34d679c9c9c0c82c213ae7fa5fdfa04e983551504ba6f56cc62eab86ad5965d43a6a96dd1bcaa66a13d0023100d901871cc196f4c61096c9da98db45801ad34fe43d5e0f95aafb8a1e1a5958ed50ffc01b5675ee55845136c8b1242e890302047c435bb500673065023100b9a57f6e01026ac906531729d72573ad4734282ca3be3bc8d4b26f5692babc0190219d31c8c6e88b54045ee4fd3295e10230492bd165aca86bd79aadffea0b84da6b739206c9d2e8ae82a6af6146e26571d4657ed665172af3d51db35dc63675dc830302047c435bb500683066023100bddbe1f5aff013f4f7f861ef8687ab0513629ad032ab54af11df7ca4ab802fc43eac1f0e72495c0f7e05e30c369a59ec023100aff5c45959194e06a775f236e5c60b2b4cc62ae3fed0e06b7d5717cdd515f1f9c97bfba1e30fc1d09489f705243925b90302047c435bb5006830660231008819999f95583b0f0973655460ac46d15324e46fda745d14bd5f803117620eae3c0da0dbfb20e48f5bbaed6d341da6a5023100e6126d733c63868f30628336b2590f20b3a211888f0fe99fb5adb017144bad55240fdb94aabec5ba5da0ca0ee9a7c5650302047c435bb500673065023100c5d0b238a286c9639f3245957be2865cb1fd2e47822e997ac49397511ec442bebcad5887c6c43c97f943e51dcfc9a67e02305fa87e3df3546bf8fb01cf476f89025f8e1c8128d6f06b0d623b2413eb4eafb1085c1e54d4a562bfaa263269e243deb60302047c435bb5006630640230424f34b1b938f2b54dc1892f961227303f71cd312fd157684fc2e812dc71c0d4c85a0b2d144fe2cc84705329afef26f502305f0967e5e53632e5e98bdd535c907c5139800fd1abf6019e7c8c5bcaccba08cd12fcbb0490a672976c5f4a869e98539a0302047c435bb500683066023100f421993c4236e7c4448fc50d39bf2dc3647710652226a98d87703aa8d0606b28eed14761f9f48bba07a97b1a8059c148023100cb7c0dce927ccd2d7ccfae27659bf1c829a03ec824e8ed25044019e3a4c0f40ae8422b7f0c6a86a1b4f6fce8164c219a0302047c435bb5006830660231008d5bbfa60e3de2229b9efa8cb354760c828f1a0ef5104862f6efab115ba797d2819c286418d5f9a03cfe83ea8b520a5d023100f0a7b7487092506e63b5621830a42a0a80f6215da9fe8c7b7117ae310158ef2dcc1fae421885527c62a9bd252e588e000302047c435bb500673065023100fa06b918a09a27b84eaddc21a0841307f8846ae78538b563b70736555396932bb378e1dfc1628cf293ff2a793577a9cc02302fa96c9bffe41b352ccb4ef30e78ca2d6ee8e524af1e5f9bafaff25d221b6a3a8a6cc7476c8320ecca8c00acac6687790302047c435bb50067306502300eb0e5e87f1fac0470f6336dda9f0c60d81b9a7e8f32baed1218b52c1175fdd5de3d9e22f5fdead4eadf5c6259f16523023100dbc1fcbbba99c376056f6474ac5a19047b8ec18f3b136791e6c5acea89d6032222d2b905bd9dd266ac869fb69bb320330302047c435bb500663064023011b5012dbc9eabfb8544b5897f5234ed9f85beb52c238cf77a1b413e4cf920ba86493764862716eae7eac020870b1ee502302013abaa69defb326b0c14463fc27bcfc2a68297ecf5747beb194f2344fb7599072a1e715d8ee7de3b366877143de3710302047c435bb500673065023100af9307008408054aefdb30a4fff38d133ca398f4989ebfd7cb74afaeba5a356333eeaafd42f6b3e0901d31cf1aca548e023066f14ca2d19c671c041a9323671fee6d885d35f67b28c276e53f37f4d2d7a6bea03c2b38191b5b1d7464c70347eeb6300302047c435bb50066306402307f0c1f17fd0bd26d421cf6df3190b3e5bb010396aca20b6f741e53a5cd9798b3553304dbd0b982fa333f2de7f52087df023040218ca7f8eb4ecf8624f6de885db141e1f6dbc64cc717a65c01f50052fea9476de4125f8915cae2a7ca0fb471fad8360302047c435bb5006630640230478811606ea0a2df46f69112c549e462cb714db8aeb7b2f4f35e7240cf1081a51e21758e3b405dd27048100d34f094d302304e920e6367b84f673f6ddad512584ad310b19e8c02eac5fdd49f36c063c86c59818503d7db46609ac6332ef441e430240302047c435bb500663064023038f54f62af39e56df4a145062656198347e2f9cde76c8efe15e6abd78a5e48c575022c5d27164d9421d337f71e86a29702300090092bcd222bfcefc4cd2457946d5ca70404475bf139003d007391f689fe73a3a9245812ecf1bbab1b0cd0dd62c92b0302047c435bb500673065023027e605c380db9b5c7900f2ccba92ddad9c26e7d56b615fa8380ce706e5236d85160b7ea20ba264aa35d28c86b2bbe327023100ef4529a88b85b02b149b45ba34f50007604f1fa02d08408004db5b630b37399057150217b9fc35e778b0910a5ccaf4a00302047c435bb5006730650231009c19b761d23b55b31be3eb599c1c2545c33c58e9f24690d702c017ee257275e4a9bef8dbade194e155cb996909446df402304ef242079eb18ffcb81aa75b432ca992d89764a52c6325ceb5f10dcf315e4ca5f765a29bcbbd6f52b552c352bae96aca0302047c435bb500673065023072e9c9b095fde924f52054646e9f09fe4efbfcdb75e515f03330fb2b1bc180a9e3d765c041731de6e4d679f38ed06b20023100a647a4f43b103b1b90b4945fd945368a65e83bfb316c1665ef94417c2607128fb8f92d6a06b01f38cd39b24d1449c1720302047c435bb5006730650231008c4c28a50e46b94509ae1840d4f9fb76b662c2cbe574925046c87b89106359366c142a9eb2e37ca46c31c37b7fa0068e02302d34bc90f124e5821e7e4d8dd850090fc3c04ea298ed6ab7278d780714ec3373a6f5caaab95a93a520f1f5f4d9bd6d8d0302047c435bb50067306502301242fadb3f78affebf098989f2a09d1a1d28f7098ac2f74555715e04c742840e94a66135b6e4a6548cb8a7d412184ac9023100ef8873fc2de857b9b2857dd0abc94426ce9d8bf8a82a35ae42cf1e0cfcc2846d642df137e3c817179831e26e6beb80600302047c435bb5006730650230346497f56eac5590afa0e615b52700535709ea979c5e12f3a50f12d394083bc9a8b0b3b7c17423f39749a027f3a1049c023100bf020bcc4adba61cd4fa1651d6898bc3ed24db72b4029d3c73bd160600543fe87b318902b1c781e96ba5c503e62a4e080302047c435bb5006830660231009f2418649e65861b0ef66f4d9b741b99d098949f4bb7ce6daeea989069f2fb2b91536665afae43d72491544d80dfcf80023100e797f96c5c621d78101a33ca17bb3c1310c8b7af8949a0b2b23a8a08da19f28533805acc373647c62d6e6f086bcc27730302047c435bb500683066023100c2bf76db78a8dde651c9357c01333aca3bb7330900fa7159d24c3b53b4fb74c3c963f4c16553c8933a387eea188477bb023100fed84391cdd4cad15db6c2deaa33384fa1c4de275874bcfa24dfe2d2ff1a2f3b3574c046e9743463ad077a6b5bbb02140302047c435bb500683066023100c2a9d95c8a74ab0301ed470a882564c1f511ef711259071109bcdf1f847c3fc3dbdea26fd3d25c5ed509698c9e1c826d02310086bbdfe00d843cee3a5666bf065b2029ffa2aef9170feeeb334ccbcbf6c294460854150f89016758d8d99ba4f7fd46e50302047c435bb500673065023010e27fcf3085cf1952c63ed401429af4ef1543d9fe25cd528bffaad9b820ff2bbebc71e1e75cb97371fbe3accc547f50023100f96f7d9164c8523baac04c0ab1cb526237bbfcbf483b6357d4495b5ce1720b51bbee15f765565df7279648f389117a810302047c435bb50066306402303ab5a9b9e9961198d3622e8134b59c713deb4b150cfba1755d78f197fc9dbd7340f3993a490d8b7666c9523bd2006953023075f6bce2eec331511225de6e8d734b45920be04d84661f4ef540f8140959d0f4c49e70afc609ee6bba2c9e87d0e898300302047c435bb50066306402300e015b5da117b7e41d8299b207fc6b84f97e89edb3d5b6ce836a98759254bb8c37303a388a9f171f9ebd09197cc96f7702303768e41bc964e1fb1823506d93697b35adf1dd6ce541091be69235a6cd60c056d62608448f94a5e6d4b74d3152f979460302047c435bb500673065023071c1c28c4644cc13b1a08eea6f8fc47aaea9540ddd0912d27fa92f90dfa10e619b371ab049c13b46e9b678dd1205483d0231009f606ea4b49ab3f28064355bc1b8db345113dba66ddfa239d9bc5fbd0bb455954c166baa88fdabcfd55ea9c0a251d0040302047c435bb5006630640230142adf8acd9ed36dc544d378fcc40c5848d7ff547d825fca2ba42a8de4bd6cab8372235a9a6029e2c2d1a72cb83d26d4023035d06b82c6653361352b2afaf5493af05d4b11669441937b1e1db587dd0891dcff130f7c16bdbdb00b670321f883ea4f0302047c435bb500683066023100b0d1ad3479d59ad419339d279da8099d005dd39816b981082e6b2a62df9e32b2839300f78b99ae58ec19afc110ab882f023100e53a75bcb3b55ff024fe907735bdb62734c493210d4ca217b08bf1c5a73e4bee1de1e94fb2dee1efb611794bc8505c930302047c435bb500683066023100aa610bf6b89d2530612eee29c9043bc24b762c3ad2b0d3667da006be73e54884a5476d22065838d9655982b175e67e3c023100c4460c9523ef77569b0931da1aaa354c0402765c2c77faef23601665a6be6283d6d6fb7dc83989180d869c0172024e060302047c435bb500673065023100daea3713a81fc3539b97d4ce36e7b4a5b764a1f4461316edafa4cc995730cc8be0d3b8c8e98021bd2c9c0c1e6f74f3ef023060b50db791f192f4134092d4033eb0d9e52d1866eb9d47d1eb369f51621127cc548e1bc64a0f2b56da43bba093c4ce180302047c435bb500683066023100b33100a5516af4ecdefb327335de31a47dbf8c40009b2dd275bf2b2ca211aab1174947bfd06c446a2a4f884c3c622052023100b57111d136abe81fc20cc78915d2b78f1e5c0bf3420784498e7f13e486b95b232393c7872fff88200d604e96b898d1dc0302047c435bb5006630640230531813c1332078493bc9cf3c2d1269cc6a53af6ce124db132ace15a325ee35b178699a2cebe4861b853ed533ccfd4b7d023058f5cf8c6935c34c3aeaca59239bd2a0e24bcd8e4c2076846ec22500542e749524e2da0088dc0e02952814d381f20da40302047c435bb500673065023100fc77b2cc2d27d9cfe7c2486408e8b35481c178663c41191ba79a8337105eeddb77733c9ef2e74f0b1d07b5cb6573032c02300b2a8c2b34a99a7c3099b80453435459ade427c157681a8cc3cb283928bcab3c5c01f3064383d4ebf03e28c44a2c63580302047c435bb500663064023038f4e3dffcc8d290e38eb6672d836cf9491719e5055e6c8018528ae530effc473a94fa3685ade378f29e9352f7ce76b50230513937f5c2ce70348af6db42ca842a638a8992aef13a11313a29a89d5b5bc00f360d1bb4591bfc988aeb11c8d755a8930302047c435bb500683066023100f4686e49b627f0ad1b32f92c8d5b717f305e38166e51a659d6e50c53671723121606948694157abc57b9f8f5cf9d997c023100f8136487b2bd7f2884026cd4bc9b1f8031868ea567734ad543613e5d82051daf6469d1568f419ecbed07aa1a0f8be2380302047c435bb500673065023033a01834dd7afa52fc982593876a6bc5d1f8fabbe8ecf9bfcc0cce3efd6f7352b4ddac4543358a0fd709dfb53eddcf8b023100d0c73f2243806d6cf4c1559432639ce3f8993903931491f1957406bc30704a4c3a10b5eced03bc2a1251b04c23bda3f60302047c435bb500673065023100b16e8cbaae8c89dc6ec4c79ac870a9c2eb52a51c7ccb904dc9d03408d6d2bc017306d875ac49f3d15c02872eedc3baa6023030b4e11f1956d8be5aab76c123a941ed158e1f153c821841de1694864d17ffeaa411013a9b94424c58e82de4edf84ea70302047c435bb500673065023100af073b157f49facf3fc2dc452238e013b96f3dbe4a1f4eb98757fea439105f1139b8ed86b0265277cc9fe61050b2cd59023038a88e17234d36eb5ed2d0781bbda70bba8061d71330bf04379304cf517636692b47d8418dfa53ebc05515ee5a9b7d150302047c435bb50067306502305b1e7bb13fec36a623ef3b98be720188be4505c26df8cb8637a5bf8d041629f1433dc80a293657702cdfa8fa8da16826023100d35a3722ad602b39ea1217e6361f571d1c375adb4ff9a750b40672214e25096436a12e3d79a3425a58c9888e3c499e9a0302047c435bb500683066023100d62ca0dcb21fac9f199a48052261ce06f0003a7f1b6516f81c6013db68216473a3ad01788932919a6c90fb0578931ee70231008728fee45c5c08b2d27b8521d530ea6fd3c861beaf6070788c1887f88fcc335c355db8798eeb189bafac4f39c12e58b50302047c435bb50067306502302ae246257a0420efc317dbb59e4400c3425da989f28887447564644e0406421320179576a5a8dbb07967631b054f32790231009fda2fc5114278ed0a9c0edd1356d7864224c0363a73e9c13a1a56943d317404d0a1ece307db895ca529577f44d8c36d0302047c435bb5006730650230040940a1f2b98bd691f36d471f74efbb984469d7bb6783fbd50392a2dea6886fe8f2901e3606bae45172eca842d95bc5023100b7bc374db7f8201068eeb586992b9049cab8078e13318c111f48fe04d3a2fb834e63ef54c36112cc26f4141d28b3f6460302047c435bb500673065023100f2ce0b640a3443857d5f7f7e6dbdcdde164a8e53829f997d26a55ab5bdda122043fb7a6f15b1751a4077d4dbb407687e0230702acde304bf63abfc9f710195dcf7a6fc2b07cf92b8efe49176e9215ce64380b440481c87a05e8a3eb3c9c84af03ce90302047c435bb50068306602310087a702a86909ede949d02df38a1f8cd18a2599b25e9fdff3747e15554154e57a1727298dfdb446021db6f335c19d90ca02310084e8519139f7e1e16548bcd9673b10d265c8df2f9d977bbe145720debb692890960d684afce02b65eece0e13576ef2d60302047c435bb50066306402301a860f68cff8d66cbc547ca2b07ee56e42d7cda0169b56a075a4da81ad3627ea60b599b3b0d3d2ab705b18883f902e09023056889f887dd4660424466c79fae8b8c228dcca3663fb555c25713916b0281ddf21c2c0b1553e4698095e628c971df2be0302047c435bb5006730650230623f3cd1df6e195b2efba62e8d0c9d6bf072148efcb9ac7e02e1d6536a52caccba3807995187cfa80bf0aff9d0a0a45b023100cefdfafa767be799c86e663cd510270150ae0fdd896fdee027e43d024723edf0553402c2c01b48491c8da148430bcde60302047c435bb5006730650231008682120ac32e1c1d4320329f5e5f127a61143b73667fc81a8d0c8ba9542da7a2256ae1e411bb56db2aee0dbd234c37da023004dec61cf787fcf3cba2c51202c8e862f2d4596aa1330cc79a93c289d9840cbfa6a5769d28af287031f18a54be884c3b0302047c435bb50066306402307104f1212edc63e59a4202ea5c1f0057f6431f5e64a7d7156c8ad694f2cc91c7bf16dca453db8d8b2628d2ad5912d14402300e16fe36e0160e9f281d47576bf0d944ff5d360bd6d6f34bf7b54d6bb32bcb7770014bfc26e87b502476b8d8bf84d6790302047c435bb50066306402303904e5ccbb2da4110bb1c0753823b554313e3d65d670e1ca5f472ea8175ad862c75f2bcdd86934da3438c10d46b543ca023058fe8bd22088a0f093a775ab7308c4a3d20ef4026db3898d128f2dc438892f684691f4da5f88192f443e40ab5ae37b060302047c435bb500673065023030917d1d735ced132aae33bfc3f27aaf672b8488f6c552da5129d7c328808f048a1311272a9b17eb25748d4f07efed6a0231008e1edb03b09ac5b27ae4276d4c28829389d20908ca8b6117fc931fe8432184fb82070ddcbebebf9c7a691e0b621fa27d0302047c435bb5006830660231008a6ce9d96c9cef2fb79da20e00b20d7552a877810b3a3f7623ba1578881e3799525c8c695774b9bd97e2683f49873674023100d83b8560eb99399eb3f47f10c5fdbd0dab0c3c7d0f3371638bb05687e3fd56a1671b18275059dc16e3600b67cd30bc2f0302047c435bb500673065023041891e0b5f5ac3351a20e289ce52ca2eb668d7e82a2a672e2c6d552b15c7a8e31e95d1778c7e6062bfe689d2957def7a023100f146a6795fd1808f7ad3abca1f849dcbfd0e8fae768ff603c28e084dad0226140f326bfe505f5fc1c3eeb146da3975320302047c435bb500663064023058a6753e23a66bbfd1963f2f68e3611df3e74d5348c5f74f686fe17f8bd2e5c6bc8e77a0e50a641946812812772da6b10230284412d9420cec19d96f2e0b9ae1b777b33e856f2806ba93a813b4e886cb634d17c43ac2904463ec801bc65dc82dab9a0302047c435bb500673065023100dae067b93b242dbeda57b61a8b7c93f0affcbf8c354a0caa76a83348b2f675561930870a1862beeb343140e8b49122e802301d1f2864b3029733143660d30296adfdb5f2646003266af847e5e7ec3b637b3908de43384aa97a2c7fd91d404a0ec5b40302047c435bb50067306502303ae776e3304d47d846599f420d7aa12bb4c4acd018b2c4e920a6a0ebb4ad82455e6e87c25523a2759e2411d2937c4385023100e2a6be5e2e65d383069ca345bd8b2311ce6d142f5e57cc3fb077f5e96842eb5218411003fab09c7827213c5c31b11cd40302047c435bb500673065023075650ebcb92409a6ef55158dbbcb951bf5d81c22b8c94be39da6cf6e13715489696fa0332dfb1c443be7d9f6c590074f023100d8fc434f19094e2daf898633677657d1859367b6ad1427693b4c530a6b81f33b2bbbc30e9a345222f439db20153949c00302047c435bb50066306402307424d2c3dc08c6d7740aec45fb333e10ea4193485f0feeaf6003f5e23355e2360aab4b3d2fbc9b21d6555a869b7acd5902300883d88f52be3513ef6d87cf23e61db85e4298e90ed932be369990aa59f6bd49063d11501b048efd87fc433c2c35c2f40302047c435bb500683066023100844f3ec2e030cf1d2a249084d5e07f5ac292a27a65c1524c52721d87a5341bcf82bbf016ed39b52862be7ade323532d3023100a7ced1508eae571b54616e43198e5be690a170b64390ebde1d4904b325310edbc4325a566438a76c9a937483f286f1140302047c435bb500663064023033ec98d6eae8dd33bc502cd4c1e93dc46fe3b174595dc562e600b9f0c5f4650f2fda21d37ac720d0dc5ae5e6f37a81a302306b6c5999055043d4b6d78121b8f9bda21bed436ef2d9b76c310f55881c6f9b6408dbb4eba04553c7359767cd8782575a0302047c435bb50066306402301112761c8d7f8c761ad7b0ede4719b9b5890ddff7aa9d57a322e42e10f4de35a13de8a3d72375a4365129bc83030ca00023077cd8c36c61db5acd0f6d18041bf196184d15fb6a6e7afb1e255bebb2091e980b24252383bc6722604081fc6ff54729c0302047c435bb50066306402302de04ac0e107842c2cbef7b3de22e24fa59a8b4ff89266cd10f4af2d9642aea54a15a427a18f0c816c4b805ceb3d36bc0230449f10a39fb3bda9599ed09e1e2d1be34075feb5476a1acf699f8bd87fd7567943f85cb2b418fd1d37fddf278679014d0302047c435bb500673065023100c59c4d3cdb0d43d91786af7d7699d5ca7a674e05a8d99d703957a11f518a9dcff5dd89e24960754a707b512fc8753d78023033dc4995c46cbd3205d123528b8a20fdbfc6b3f2653c7b0bc8672ca611b75c83a44e125315a710d74aea52bbde3495480302047c435bb50067306502307f5a26bf0eadca8734c8e584724b22532d6ac6a788c1ddc200a63e2986024903e101570de53d1b0802f10ae8afd400e5023100aedb933083ebf181af1a15fb0e375b097451e8b83564b496ca4c3b7b8a4ff265045b76374a9cfb7d55afc0eff25aa14e0302047c435bb500673065023100a01c8dc485528f050160a6b5bcef7ef366004adf4cb0e9837d28ba61f41dfc4e2cc573180fdc40004c8bd51f98c43bad02304889c9b7556dafd75587795557447aabbcba792ad32004722666c00d4c3a4344b5e69615899627e01f3abfe0777fb8ae0302047c435bb50066306402306d7bbced902d98893654058b00c2511776d54afe96ae069d15eefdd75b300d460feac2c2063d319ebe357f5fb9012a6102300241e3c841d94f8aac36d1dc483cc38e98b8fc5b7d76770c331676bddf7efe2c66bd17a2e693ac60c1294f9a854a2e3a0302047c435bb5006730650230017f4ac6bb0f933ade88a519dc66041eda2c9cd0610a5e45782f686409e4735962731fbed8f48f7e98e0530ec86f456d023100984c85ab45ea158f8d917d6e6be7b23ce70230bd269a6900795542c39a34f24d182793e073810ce403be3b567e1490920302047c435bb500663064023037171443a2ebfd88af5205542f14c661b29f83f4afefcc2d6735a991936f00a7eb1039da1da76bd82e7446dbda16920502304bedf5948a5eb7fe8167c50d7331c5e4b8f66e32f1faf29f33e6d0bdeffb9cb087645748052dd5da59355d6697c7cfc70302047c435bb50066306402305dfde2275c3b2a538eff13e8e416e8b9b749f80b06089a547bd0191f2ef7c8399e2d6352e880acfff4f60fc40738dcb902302af59bd43cc7b66643abfa99e7df167e28048a5f387515a5bbca5aa0781e363ebea080a277ec04e256f5a9990e30b4770302047c435bb500673065023100fa3ebd29fc8b39fed791141de58f9048772a966e543ed41dfc36f8bc1ef33c83a2455f8e87ccb11643ab256105bfa2c5023056b1db9a5d8692505f7c7f3cca302178966cb2d4f6e08e5ee2fd1fea1dda1d19819dd8cd7a5a7b72cd6a505b8e798dd40302047c435bb500673065023100e2d4b3afc4b6a184b9ec6f936d3fac3412afe9e6b8fdfada209d4661e7ce74c5b6ef314e3343be5e1c177e2e7bfa4a8402303351dab1e65d821f294b5e938dbeabf9ed9d23b34cbbc188b6a3ef6accc222f5da5d41bf9c8c04d7fdbd44ef4bbf33f40302047c435bb5006730650231008dbf2dbe3e309e82fc259bb5d1cc79fe36e0f87fb8054b264014a281674790a7d89b77583472f6f727d9f03835a458ba023012d9de4656cbfa6a90a6c21e41f9436fe468bbe31d33cfb58c1ede9b3e917746fe5b9c667a7dc19b49ed6e2d291ec7460302047c435bb500683066023100d829bb6e93f25e90bd7bc68114981e4b06750f99e20484546307bba09826950fbf560664e1312b09c97c813817572957023100ae9169ff9311c84016cb15e15b165d72a8b23c86d070a6d0af6f697b4486af587c6551d1d7b048a37a80a7d96215a4910302047c435bb50066306402302121c0fef0ab076e1de1b43f7c5d9a104737678fd81d11fcbfbd2e80310fdbd31b1e9ba5fe709e0f827e0fed6cb4768102303a1f5886f0b3b0f68512593f104bc6a64357924d21b9e5adb32182aa1fe5ef108a8a10f180d73deb47aca07384cae2e30302047c435bb500673065023100e19252e480b218b83fe4bd06ef92abb0b9680af9304f9d2284762805ebada15bf9320b1475b9344973849bc8cb15e1f1023072c5cc5a637fea01aa4f836c8b31494846763f5e6f9e91ca09e4120336ff42b4a2140d40d46f4294bc8762ba135ec6370302047c435bb500673065023100b1d332ce2ce505fa505ccf6fa8d2ca90877e8b21a6bee019b086e113c118566ec7344d2a9c7c0e12ef394e52635bd24802300c1dfafcacdafb2a4e306f505286ad9cfba2a12915ad2d86cd2911c7c5e0a77490e72846daf4c1f55256136ee15b565f0302047c435bb500673065023036a7c7894a8782a7c1f12dd83d13c453b4a44bdef475c05a500ff998f2360182966c382176f425816b2e60cedf5db38b023100d19aa20ec111ada3898cd1e73bcf5b5d74df8a6804cb302daf91422142a9566602a4734f42b9f63694e800e8ac28f3dc0302047c435bb500663064023011ff9d689bdbdebdf5479bf686c46e66b6693e2408fc08531d89dd2314c8da3cf98f133aec7cfb7798a727ba37a5609302303234d05aefa11cd71ea443fe2f2df7234eaa7165d55c409f85c09c1b8a57ee4a5114ad8eabc8a6d3bf81ef7ce2de858c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b32218b8e4f0b11003c3650856dc11e7592e24c7c1cbc5beae9b62ec92f909d561f3accd7bc73bce011dc91739df7c8402307d7485a164b89d589d14d850bbfbda7ed6145e6fbc6022a5c07d4cdef3890c90bfb853fa3895e2af5300a5d7566964c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cec21a31360fcaf6184f2fa0c1fe4df20a5a4f936558a2ab08df4b95c0c8a175fca3dc3c60db1cbd66876b42248a3d5a02303430c4ca3cc16f2c2d7ceb07e407e36740842d0933f384cfc8560ed7f8bba7e82731808da0de4c43a356f849c21dbed30302047c435bb50067306502303d6f3890ebd21b45222fdf478b27d9599b5d01dc99bdad09138c0545a00f28a228ad1ad4e1dd169d7baaea1625bfa65102310080f495c0f90c062001b0dcd71d229b32eb66d22ccf73190d3dc82f37439e9924890cf28f3c9f93c36eb3f2e4efbae6d60302047c435bb50067306502306eb3db01d34a7023069256c3f25941794ae0a932f954e08239223ba9ccd4385975a0d688af4c83e88a3467e0522af099023100ccf9e84a292b7cfef751b2a3155135b729c10aabb8a99b533fc2bdcf897c001e86411ff05b318047acba09654e1cb92a0302047c435bb50066306402300af2d988fb1c49bd4441b3ddacad5c3acd87b346b025cb9d960c5bd425bbacc0eef3955df2f0c05d0b9b16820482b98c02305163cde4805bc232727a1c97ae38120c72447d0ecb209bd6723eaf9e1702ec6e48347a63c8f23b35ed8a67754c748dd80302047c435bb5006730650230495dfb8d4e3c9009f623c177d48d81376753e36a5ba16d51a6ea8123824de61e4f6a6d7bbbfaacb28c2c6ed971770deb023100b8ff2ab8eeb2a08371cc659827dd805d12e72f16a22c3bbfa3d0f8792e0da3dcee4ef65557cc4584538b16e117d9b9bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307cfdff475f1bc895905be34c3ebc09cf9507af360dc9eb395a305a7b602f6c27eb19e140b09d7b0ec71512e62aef4123023100d4acc27c5ef3418db6b09b561552bbea4e61ec2d7beda0a90581546c68954a2142957b0d287e3d47f390b75f5e7684e90302047c435bb50067306502306936381b1e715354474bae090169fba6277d14afd39702070dfb53e59b4f4b1fb567838af527bedecf15095a0495018e023100c5b8ce7c724103eedd708fbd19654ba1b7cd8c90731cb7054eccfa22896bbce013a0416f6e419b9b8304b43329a7214f0302047c435bb5006830660231009a1a9581f34786a632f058256bb107e110677b2f5411da45928f1d4333bee31a3b0332c50c5ea01d7c1ab07af6ebe60b023100b28cc1fd7d79826baf6b34d8bd93d67d487c53c27ce1bba34317cb2fb20c27d71f3fd32174698d49ed151e887f3273ca0302047c435bb500683066023100ed6078df0797a6ba31b5868df34e85c015c4afd81d6aae9a2a08558d0c74a86d892b1e5838d5929e4b3f94d7cdd60ad0023100b805635cc5a9d10a73ac0dea872509b9acab8bda008e0d3079155f780a64eb77cc365c2adc20163885d36a63b8417ea90302047c435bb500673065023100a9d77cb7654758f726daad2e63921e3fb1d789c46bd978c2fc178d76503461609c6563c4c4f396be9f5fe3ab36f52776023077a0b3d5c83fba206834409374fa969be325c63c6651759ae3514565ee001caedd92fb7e0c10b3c2bcc5f396fc45f25d0302047c435bb50066306402300b2f2a1d8087726432cfd279f954a88862fae92412ab913375f9af831d774716ab1e64527b704bcd72fba324e9d2db630230660c1477845dd7e733dd7b8f8144e6ee65620b54e41be360e0297cf26c2bf6fbb689ed5f7a628c9752e3fd13c3ddbad20302047c435bb500683066023100def9461bf41ba0698d7c2210c747821e95a0da01fb1b6df2e49cee288f12b10635b0073aa3d62759184e883b7ac9c8d7023100dfb0c32aad85c456515adbb958dbd73147446b32d7cd29d97bbcc4f3569da2bbf97666ac8311e9faf21b7f71a9e58c7d0302047c435bb50066306402304131cc67d02d5df0a874069c5e5487de7996dc12f1ff7ffd20c40f8122c1f4e0fe85f7461a1030a6449d66821260351902307e76ef017c972e3892321abb297a7044d683787db9cf55be7057828f3431d110df35e615eae432dc11a946b6f710b8dc0302047c435bb5006630640230619aa1d9fb5d8a40e2a5ae38992e461b7f96e63fc19f3dbe13ce53337c09acea78e7f588dcc6dc0d56824525d3ebfa3f02303bfc6b7eaf282dce7ec0aa8b523c16d495004d2e301a51d071e87577b2f32c38f75f6945e62ed63e94f372175df5e3f00302047c435bb500683066023100f340fd2ee6fc849bf20cf2eb24b36cc073cf60f004393fb73fedf5bf4a624b768fa21ec317aee86031d58d00f88683d2023100c012b77ec7766808715e5dede0bcc9318632862258655bb7bab52a2381758127b33d6a6c9645adeec74611d194fe0d050302047c435bb500663064023013f4acb0ec883a55b6ca247bbb1abe1954d1d49319dfb7e6fdd9a1a948483c3c2ff03c89f11f0e495ec3ff40d6c1cef102304bd686e8a968f483d28ae9b7cd550049797dfb25bb12cb8595737dc1628b75e1047abfc3570b309acd9f7c3b667e049b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b3c92eab905ec71682cedade0466fc5a92babc338cdb13beb9974174ecc4fd17cc9d232f681cfe03e1465ed37bffaf4023039b62f6b4d689f2358f7cbdb1fc6ec5ae39ac9410b99b66046f6c4b1718328f39f9e6f75fd13d140c68e26b43c3949ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304764cf5b3150b74a9027601ec598a605df9bfd8245ce966179e74ed5c5e9a13395bba8da8203edfe316c912a2b5c72dd023100ab83929d3273ce8b2e79eabb12e6555894fd1ee69986e6772e1e049630924afa5d6bd6f564d237aa987a497128221a500302047c435bb500683066023100b5e314f6b5f3a26b43f210ce9b447169edd392a415236553da53b711f415aaad3eac03a623b7d4279be18801fa60eadc023100c71d6e786aff22537127879396b04eaccf4eede46a28ca5dc5a09af92a11deadbdf3ef5d9ed187cf731a631b39f5f7a70302047c435bb50066306402303d1c0363530b045ac3522dc9778f5ae264c182d767da6d7a8c5c17aed01e0c15d2577d49448868efade4c593299d760102300423a95974cc1cdd4a7361620ef460f0d8d8bac61e2c3e6fbba9620bc15fda5f71b09008b03773f4d7d6ee510328a5e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d463f2893230b60b75765f543c5117cce50039c6372656554bba6ea2658fc99a7d6100fffe3052f66055a0baaea1c76d0230287e57986f578c51fb2b570aa65e06cfc5252bfbddcf47a458cf11995cc20e6a8855a2f4507f3e31fa8f37ab2cad962c0302047c435bb50067306502310099fa176b42c035b5007666ec06ab4dcb2535424a68dbf09a6d6a6581d7f2fac77e1882c8adff386b75954e6e2386166f02301a4a8df65eeef9133b26c6099112bded856dfc410e052a00ab6a77f156cc05d75ce1a6866369e3296b2d5cf4d4e54b1a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230363e4a13040b77787c5a093f32989d1601617f849997c11eae58749c34ce933da6e2f6aa4a2c70d35aa8e623564f864a023100f0b8f8b385c842277037e478c3ede8bfa2851f09bd14a287bb530b8294e606935686701f70136de534d41c55b1a534640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb94171a799943bdbb4744f357694448a3578c1f3c90e53a84e9e6bf1af3b92f450fa9bf67ce5c63499f2f990273c78902301719ed37c3be59b61a969909f1f85c5ae890e68dcec719c9469052a606e559817bba98e97b12ad388cc9ab6c370062010302047c435bb500673065023045ca5b377f0b95a7fd5c01c16d1199086283943bdf5f4b7cb232886cbbbcffe330d12061c2b78894691754505187b66a023100ef17aabb5f6de513ba9321159b3d97c579e427be8a3c2c398a36d9086a0c42d9b42cedd78fd00e93df5de5421c35cf640302047c435bb5006830660231009a990d5e98751925b7921d050b86f71cd8b7cf0ffccee8feca1358cb64b44800b34a64337e0da56d098c7a241adb6352023100b7a9c955606b3a710c2f9c0207958ac62358ff96d81dfd9e54a05e91af0af0f7a5bb9cbb029eaf4999fe78b91e1841140302047c435bb5006730650230714dd9fe4087bad1ef8f6484a2a324cd584a086bd38968435d1a1af597837dea6a0d12656801fd8537b51476dcb02baa023100ff8afab4e814e46f129f1111cdcbd63ffad129768dcfca2b4e6d4a33dec61883705aef6e2ea6f00a3f88eda0263409e30302047c435bb50066306402303c8aaa67ba3189e45d4e944b95c77c44fe21cb810d8e37a45b85b0cc6ace363c1e3cb03edec839b36e57b1d8c6d38eac02302cbb93b85e4db955a44035ca33c77e9f113d4eefe1a8389334edab716bc6de4ec047ca43b325f5b1b1443d86cf66f74b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3ef6d3721283f7ee3faec7420a540772876068a7f58b792d7a1a165cd04e92fa4484b0d50fead8f03678a08ee140a0802301143d87ecae43aa04cdc29671d2a6a94886ccc25c535af54eca2857083e0693a431116c310598c1417293ddf35ed80580302047c435bb500673065023078ec06e766c444135c07b1be46aead8ae593e2f16904e9df36d01bf60572150f97cd8a63691dd5ebdee2e279aafbdd1f023100cc6a07a9b021ad38712bafd1ec77979dea0b10df87c917a74d072e3aed43314947e87de99f741ddff9b3cbc632814c490302047c435bb500673065023023bca15db5cd51c8b4ac3eb59b3e4d3d99f7e77d234f53f9570ba17df88936a1812074c09e29f78ba65de574dfc2f33e0231008e1c55166a23df5f19a419b6e9829f7d960f2294901bd7c77a0118d1823c63d7a62470e972d687410c81978ba382e5110302047c435bb500673065023009fca608fa8351000b2c999b4c18860c3fa64a02af28303d53928dfda711d90a7b327cb2734e93ed8feaeb5b0bf7036c023100b14761cf1557a8f690721c477f0d1d31db00bbccb59d4bbfc4125cc534b760fde5099406c96c0ed2048c340764ee7ab90302047c435bb5006630640230502373fbf8eb34f266078c993eeb922d80aa2882fb6070bdcc3e89226c4d09ad056e84ec9887339b91b197217fd0a13f023010689e55066697721f9530978721c55e1dc86e8403af6ae3beceba506b2bd7316a20cb498e321f85990697866edb50290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307d248e9ebea68546a34fac10e1b87914fcab7709f85fa512283014e00829b99004a3354877bafa3eca2c0aaf969318ba023100f890b73628e6aea02ed3a025f62e5cb0ee42483483d8a06610739f298d8a1f088bdc834eae0b1f4d47c3ce0cca481cec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f151b6e1d0a5fa9da48f049d79e79cadf3aaa6b1ffe667b065f4995990a58611ce997f01bfedb9382ee6ce485b46a3dc023000c4a6f109d6b27f54c55d71daa735e75f9e353b1403600c34f299efb45d3fcbfcb45c19c5d76928b0f7370a33b8054c0302047c435bb500663064023066699da28194284a5a86e1e8b17ac5169e964c2e0125a41d1ab987c21ff9d684ada20f90b93de96270122bec6ff774b102304b7f3ab63be2600e13783397a11256f8b55ceea36ff6801acf894182f01a0c20e05aa811d94adac7dc0be62b8236f39f0302047c435bb5006830660231009476d1e18157837714b54141743f12cef92a6b959941f174c9fd677ad3867f76dd1bae42649ad10f59fd39ab6dc83627023100f9a8a65bb2f74411967726451781fa7b8fdb9460e14d0fd6491013f800436c2491d1feb00ce37cf75b03aa4fb96accbf0302047c435bb500673065023100ef85354a0e0027530729ebe19e04b17c9b65e6e4df373acd41abe1b916ee0d88467ad2a3929aa2070d9c10bcbce968ab02304e319de085071ab9746c61bcd731185d815d6421ac792f4b77b807d1f2a96c862114ef1bd12aa654da13efda4e3183e60302047c435bb50067306502303c492695a7c2b4cdc1ed7f471b8f7a416db594fff8450ebb027586a0a303a832fa053946292cf87c5fb60d303eb8814d023100954544c8078c81d2944ce4695bcf995a5d2e231b6f3ff36f63f3aa692b7129f94590fbc00dc6e47c3bfcdbd7c04c39fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cad24ce0868306bc89ab209e91611cac8f88ae5bee92e9352444206880ffcbba8bdb34f4dbb221b136a330c393aa88d0023100d1844ba520a4bc0c3b2c93841b6b65bf813d04d50ae4d4cd48b70aa1e6a99e54b1c71a180c9c498e7f713b904c218aab0302047c435bb50066306402300890f4586054157d3b2aafa8380471eeaf1c77bad2de4b28797a93543df3905ec8af27486d01ed623007f50afbbf421d023045b44dfa907477526cea81cd796e1fb4b5752baf8be9cf1d6f26cc8cbad81f9af0a24dba26c0450dcf0aad567a478a4a0302047c435bb500673065023100c6c6f4822223a901de4cf3c2ce6d428c69fe4419edfbf5d23c174e298ca0575c852cd9f80dc3a1a743c5d430a4446d5d0230414371f1b54090aeb4253857297f50315a75d3b21ffbfb7d0c88e614c479b4958a25672e5fb222c804fd5393f32e19a00302047c435bb500673065023100995dd71a901fb677c5fcc052c05c60e3d28242cee853e6ff78efac45b66efffe1e7e9679a98a3e2113737547fc8c035e023006a795bffba6af0e50e8e6b6040fcd01a9da467c3967abca3dbf7f0bdfed407daffa896f6edfb83e6a132193f0940dc80302047c435bb500673065023078eaf78ac85cbfd27ef571aaef89613229a53e709288df022bff380ac76e9069b9e5bf2fef37f73f7cc26bd452fc0ec5023100fe1afccac118d0d78778475f8f3d9f740ef9de970bb5c73acb2eb0d9e8e97f5efafbeb66c841576d7b950b746c94014b0302047c435bb500673065023045fbbdac2cbf9bff2915e01b57a6fb350a4a2d442d2ac4be78dbd225c02749f80dcd23c82572006d2347b4312abddc33023100875daa8b692f2219a53ef1ee9736d11b2ea78a577a5625a6343b6b63299002fa0f5cc03a8cbacda93627ee905a4a09c40302047c435bb500673065023100ed35788b024e621627ecc337c2cf2f61cbe7dd7fe5a577a8f10679ec8b53fa627d6c85c74e1669440cc91b632f9a7c0c023007eebe55eb4ffad78b24b105383cc3ce7b12c2bcf888019d5ce3e1eea23009d5fdb960d1c5488eed3272ed43c50d80a50302047c435bb500683066023100b527bd79a423ead8277d2f0799ac6986805f2ca57e2cbf5b38743c482da5d0dc4806fbb7274e700cd7e7bbadc10aaa6d023100d1c0a24a34cd359575cd41e334c05d8f2f452fa064091c243d49cf61e783d1694f9e129e0c217edc28af0b8365de2fb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bbe1e7b42728462c9de434cd7ab7c4d79f5678f82efe9060ad01c952dc3c7e6bc7e28d34ce16b43bcc5cc84fc13f002023100da21b152dce7b4549090f9dac18ee6f349e4053c4297a76215662de964701018788bf410c3da64063e4440684ab814db0302047c435bb50067306502302036765b3878c94ff739fc2c53e137fc7eda8f66292be1c364b5c2a65fd8adf91191f27e360622153c71d0f874b37286023100857b6ea3aa440255bc1a8715ba3828251d994cda82795ac3c361bb21723d0f581206e4f59d54538a40715687fd5c28780302047c435bb500683066023100b39d0c77008ed46f4d4d5adc53449748135841e364648d422fbdc213b74b2e6d7c26309c809cc5e1405f08e97a8cfdaa023100ffbcee608704bdbe16ebfbe44152ad919de1ca3ceb22b950f1f8ed034ab67d4fe282ac401c53b80f96d3120e46cf35470302047c435bb5006730650230393d7d487d85ca8db171a4cd3107ba901d5379d744616b768e587f04b846595534a6f2da5a3d6db4e5d377ecd8d6c5a002310083119b72309c2a399240f013e816ff4e73efacdbb15759605c76148d6328eb8c02dcdb4f9ff7064e211daf3738fc90240302047c435bb5006630640230606b781224f4daa2ce10c4f31a4cfdc4c47ea37ee4fb440bac9d7e0bf1ec8804f5694afb87dce4e0f08a470d2c90ef8d02302e2f1117167cf144ed3311a6ed806c40d88a8cfc3429a483156fcb351e44aac7db50853423e825b7b30c0b10b97408f20302047c435bb500683066023100f0cfe8d2ca799405db8019029e908afdbe0f6121cfbf0ac3da94ef049a62f5d598a349d42408cbccfd48298e6376acf2023100e6b5e1c3daf777162d147c7f0822c06d2375dbf2112af4058f8e97967438ced70b346d3d613e96d7498a4a0142df09bc0302047c435bb500663064023022a6357544e21b466809e09e1641a15ba20bc1fd3ead7dc7979f64228387a8c338c93757cfb0fcd3be750ec0352a293a02304063dbfa25d955d832322ae0336db59045c1216fc74eacffaee12f3b683fc64ce6429cecd42681759d7bef85ca81f3c10302047c435bb50067306502302667d609e844f6b7fe4888f1499d20d695883da18d558daed6773a1495127f830c817236e4fabab0df3357d0ff87013b023100ceaeb5c2fae2f9be3f0ebb5c12360c2b0c6215658d4663ecd5113e103469917a21a78281ef394d24a9e46123804522670302047c435bb5006730650230106ddaf278b9b155ea927834c33fac741a626b805b4b4e5327dc081c334be5cec057b8c96654578fba8b1b6659e7da030231008ec533c19cd4337712d39ab003d32142a78a3272b75119882004192aa1adbcc27ce3d7e04a021ea312fdb17f30535fbf0302047c435bb500673065023100ecf8d66fcdce10243b65c78cc80422e66d7c09271a046f626c513e5c7941f4cd46dcf0bfaf6d50f50b1a9259dc2f62f102305d0d30337e256f930ef952687605e6470fb4fde3513b2417112042d6331b7a03bde4d5ad4c30e0a50c4c7b2ce8a1ab9f0302047c435bb500673065023100ccec0fc4f67624d6c87d9e303e7f9d11bf1d5e1c5e515080b3592e967a1ac89e6fe8930d5e684ac854bfba1a96f000a2023045494213d986a2bb97258976e82ad6afa48d3b1d81615b8d18630f384e0b7545f3683f03f1db861f00d2edf34ae924030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f3a22cc13937fbbfd9ee3a02a941f071873cc0e308a29b90c6ad8c85d6c0e3fc87ba8d53e55cd9ae4e5e9ced171263a4023100eb7e2e6639c88ac2b2b93711a9f895547ae5666081eeb066eb8b8e439b86c52f60be947aa1678f493d4f9578f1de12350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303611922c193f3ee1d1467ab3b54bcd82ba3055281f9349bb1dd141d7d05a4cbbdf4ed41d179985faf441ef5f59534757023021d7b32187085c6a3f5630685fe8529ed8b059bccbe4100ac40a02371b6ea998d3ecd10fa6fd6fbbba12a14c22ed0bb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bdb17fe82ac4df274a8dc5be12c13923578851f803d4e45ad5e789b5d58cb026cf72f9bbcdd248ef8e59b161b189978d02306086cddc67cae41740eb84b2308ee459ef0011fdb96f7297e99579653bc454f0e4f751a68e35afe4ba42bbed6ad160160302047c435bb500673065023100c3dc0e76282f7b0a673cc618c687a00ad3f372654f8c1c500f4876978451172928fa441eb55801c5d4c40a1907e9c7e2023001edb26ce38ab020d5b3bf3bc32b24a3c362e47a168b79bd3e5956e65dff4eee6c0398c539dd852f26fe66aa59368c390302047c435bb500683066023100d09bea67abe97f27f9dfa1fe371d0f759b8be7368d53d5cbd0aa309eda1ee1dc403988aa0743e6ac46d424dc858c3c26023100e80507e75ce8b7270d8749e6b11a448e640b70ec24652a30563e1348cdd13ad3a49c5a644a9dceaa4a340457ca97472f0302047c435bb500683066023100bbf4e465323bc2d87e8374b06182e7f7960dbe2876c9d2a55a0e7145a1881113215a45902c2ebb0c85a34927f7179cfa023100d6ab2a02d06bb1828ac911752c06d0a6de8560804bff160e0b38126a3ba1fd67b0adecfb20e7886448dde5fac6b48c530302047c435bb500683066023100830597154d6ee6177a0276448334404c685feb6fd7a6f9ce03211d4725fa8e2441ef8e57e6594c9928a8fa329f79d01b023100b0fe99ddf110650c89f71c3c9817d1b9d48cbe56e1cd2d5a0c0762ff5023e20b49c13d2d616eeca9960eb2123514c46b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cc2f640b09fae966f9202f8486b68f371732d9b48f01b8bd91ac8ce5b4004d1440a2569f6ba24001390b19ad610fd601023100895d273b59acf34d5ab68a308e9374f3df7b8f6834cc4c5b2be20e7a7612fa3d2447cdfd2079ce2a3d6554e4b94b86720302047c435bb5006630640230384b11d3ec715eb95fd4c2582c1dd2cadb55f420e21e08a5e03efe31f5888ad6d5096fbc270f8cfd5ab1e120dcf07c0e023010ebedbc648f81e11d30a9d9930f76e53a24acd266eef428111137f02da26e9d98f46467c8cfb8be86c1cc42c50cbe6b0302047c435bb500663064023072b1dd217e3174c715fd81226ce044c01b1f92e7d092c7dab91c86ce81fefc09dd4f72850e8e81a61147869a8afed02f02303e5d746078b9f1e7e57d544fb50402b7202b124ca7b0cc6c8d3346e080e61e231faae46be8facfdff442a8e85875a83d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d6ed77065914859345947749c778778f19a047b6939ca78fdd5c8798fd312d5e77483c8befe86ce8e5a2a5373c9d80c5023100ddc63e4d7e054b46115331bb4b48cb825a85db049635bb3204b4e61141a0f490f1cee89459a8a41df119ea1cc3efb9500302047c435bb500673065023100fd164c319d52e72862ea7951a1796736774ad43153458f950be46279433401d684cedd0551c495b05953f42534a5ad66023051fcba18ca2ff6d830e15dc714f369554d0e3159d2e17c0752023b223c84731e498a8ef0b6b5c3153ad870e6e0e2d8890302047c435bb5006730650231008efb93ba3ce5371a2747a3bbe29e8e544277519a1f070e89838a4a800a82a2bb1066b61bf1782c36fe9109c62ee1186702300ff4696222bf0d9efdafe01817e189d8790774416f928d1d3ad8d233368b1f123514121ff26d40192229085a8d191cf90302047c435bb500663064023067fe29345c6372647da572f4f8a5d732d7965ed142c7387e455e4b5266000a4d995eb61f07db752d4d4ccd1a0f0fd308023066b5cf885bbc6d2d606e1231d57e0f9b45ff1846c8ec57b37eba91b39d2eba6dbbd64a9fa96c8b7e4f810ae95cbdfa780302047c435bb50066306402307dc302137f645e1c92f1a974bdc6442edc99e11075560809b0fc3dfe67c8ded665f107e47e5d6e1f53e81b961a45e09002301d5530e440d9e01bcda60877b124d137252157ed8fd45a8509fef0f96c1863bed4de59c4bac83acc62a4ce36f67c9c700302047c435bb50067306502306a375f37616f0d20b5dbd73da80f94ce818766342db9ca29b707a1c437751fe5c3c016ce5389a55da80ff97095d964e40231009e611b15cb54542e082d2a47743d362d51209dd719d6d118d3d38d67b9b918ac4535ea3d5764446d50592395bd781eaa0302047c435bb5006630640230717d63a96389b5ef2a05a2176c36b14d396f6522cac701f8ffc2f40649a3ad64bca2c0cdbd537cd41a6a55ab6c8a9c4602300ddb7f8a72c781f4aa19d03794685c08698a6f89b6fe0e6ffe1dcbbcb85ab6ef55460e4779ec5f8125ec9d9de2453b4a0302047c435bb5006630640230088e40ff31e746d1f8321c9e086d96123fae5580203e472062fd019d23d542912749c65633c6e464a71e4df33899064f0230215908746bae153f410bae143a2d3d0c3e302a86be0aee23203777080e075953ee20039e33d9f05d695efc12bc6a990b0302047c435bb500673065023100dd27cde5091c70af490c751ed461c878afc2ae3afae4026949df86a803a157b7b3507b278b09546a988ff44c95b5a9d50230292883405626f721c079facdc2ea5b1a6369dca77f3c033e7500de4baa21da9cd612f61709a439ede6767dd4448e3dd00302047c435bb50066306402302ae4f0167609d7227e3d84a517e561db048c4aee1a361e37b0f9df90e78423e0602058f047dc8b7824446a6fd46d1eab0230301fd93bb20c03a8897d1a9ed3e510f13c3cbe018941a48197453e81a77fe5ba2245248280c1155934162d700c8d94e60302047c435bb500683066023100895a74a813938b11f3b13948b89747e52fcb25287796a3791acc27eaebe9093e638bd260bf77d4526de27e3a44ac72cf023100821b1a93cadf6b1a17078c99e0115842bf681bd804e30d17b2659601a788454c24513c825b80d4d257a6e851c7a28dae0302047c435bb500683066023100ab060afdd461511e70acbbd6724bc3690f6b175b6f83f904cf1f6effaaaf80804b130a3fa237ed1b211f303614f39c7e023100ef4cc8fdecac73793f141868440ac3052068f8959c7c433d946d72de70c86ce464a8944f9d8bab2d640eff5b16d089d10302047c435bb50067306502307afc3db8d6145ca81056aadf6d5988047d886845802a388823f1e57b5040a45a1423493e195c5798c482da7a9fbc33ef023100d849937ffbb1deb884883f890e264e7d56686bca0f3ea1d4acd20dba36a708f3f2fef20fd193620d045ba07fecd655c00302047c435bb500673065023005c3f20cf5a9fd037081a0988bcba12c662ec9e579c0e4a5fb0057dcc397e628837be5b954c37380f7e45c83d73ac093023100f0e58396159a36cd0ae4b3b10329566833d54425748118202378220523a36219ff37611a79f415e1b1ba28a60e631a980302047c435bb50067306502307c94b6fd439131c6533fc219123a0b28e164d3228c71c8586c5d1f87b67d9538b0b65f10879163bf94a25a041fbf71dd023100bd097a61e7ad7448436a5f0cac3e01b27bc886aac4c73f4776835b6d1f37f747d88af09b4898b7c0daebfd38361ccf660302047c435bb500683066023100fbeed97c02e9d9b2cda8387982f2f4dd63caf070b7f24b76fe3f7acdc0f91e211ffbde413bbad52d8c3ab43e9de61bf8023100fde46549153b79fd756fb30491155e2ec74c88c6278c8c49f41e587c8e1bd1f7143d9456dbd606d9cb09c3a4b46d995a0302047c435bb500683066023100d6da3e8bfdb1f1ff6fedafaa9a6f103d99db990874dd59607d18fb43087552384adb4e2008e4c2cd80989df5636b5908023100d979edd3808a8f626656b13764d186dd73d18da5b99838aaa4b947764138b83c686df863f9e00c091db11dbbc16740dd0302047c435bb5006630640230646af2d1e95dfcf056e676fd6b10bb01da4397f583a17ce5a0b0a7004e9dbe26499302ced9b393aee640dfa0d954e2c102302513d7455812b259e81ad0e67d2760184ff656b8ab4e92361371ad6ae5f463659de9a72ddc85ed850d439b54481af01a0302047c435bb500673065023100f289f3a0f0c5724fa2d006096e0c4c1853a6f2bc91c4185eef4377c8c960e8d5b69e6cf2eeba3187c8e7be24e9a01ec702306a6cd61461dbfc4afce220cf9a2cbd50fd0ebcad840d3ecbe9dd233644eeccd44333a1d3176a048a208bfed2550a37c30302047c435bb500673065023020e132d531c4bb0ff3407fa2eb4347bf64f1abc9765919dd9fc7ea697d4a918449e051f8eb36fdcb2e9c6107bf9bcc26023100c2a1d11b4e6b158b04406788dc87d785fc3cfa32fe1341f6bafbfc8dda24375d4b2094901c35ec43e85729940ec29cf20302047c435bb5006630640230497c4b68c2e045986b5894c3a274982509a90833ebc9b413ba4af34b74da9d34d9af2ee1e289f1e6cd3e6550564393a102306d3e26b7df44327ecb309f5b230f42c7c73bca6a7d4ce343db5e66f7b1b1b4857fd78294186eb9195181379a17ea18970302047c435bb500683066023100e921add9439f2a86f7af659ee03bb522543d1af46b57b1d90bd513ee0bdee5a076d9b7c39eebc745ea791ebb89bece5d023100c812dffef36a242044b45567dd680724f299e61636fb14f0f6b5621e5ae5a3dc2e8fda3f8ba040d85e27cb4033990a730302047c435bb50066306402302feb652f9d3f2d62e9ee52838188bcabaee04d74dbfab4ef0467fcbf833d196640a9fcd9cf87c7d195df95a86ee9159c0230616ef8b3f69702ad87f39c7f07cc39dd19ec5794917094b8d3be851e0cf24a7fde34908bae17a3c75a41b10911e78cdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa5c9a8b76495dd545357279c5dfa0d10643577b4624b277ab92691139ba82b9a412c3d329ba2d7c13797f6f662abf99023070196a2c8a6afbd78e537f5ac0a93543c5168ece5764607098ef56a4c0b2fa1238d5379f4119aef45a6b4f32167a0c580302047c435bb500673065023100f95e2df02e112c135ed7f73a1964940c03cca7e2a98c59640399adcc3b22a75a9b43736d1465f38e61fb5c777e6a135d02301777d3f91fad2a3aa0cbcdebcd16106ce38cb5da86fc30d1d224854019f9b2df2c3d17a01b7125d81bbf76dfea8229570302047c435bb500663064023077423af1636f6e13e08ea13e4314f2b7cdb9c3ba5a1f679bd892936bc44e09be29a4ef9d641822e35898dda3272ebd1f0230422345e876066b4b61e864c74923aa3991b5caff0c9fc0503e1a4092fd7a40d9fd30c27f0a4593a01f892b647e9d87c20302047c435bb500683066023100d7f1a8a37b925584e1121c643881a30967edc818227a90be5842abc4d349f3dfc56c34577ddc3ed39de1be8b91473048023100f17b9f3e5df5cd7cd6601452381510d244b0335b612a084f7b3ec09ed8eb062b54f9a81d40a11b350296509f1b09a7810302047c435bb500683066023100b2420688070f0a063812abd0169f81ad5ec433041f7688a7a33910b6bd7d3e2992b681d77818e6590bc3b7b2d0e7721a023100fe294d4dc262a65a8935400594df8ec68aa02de59ad30f280816e18377ce25086ad076a8cc80555bbf9cce45b93bf0890302047c435bb50067306502307470a7497e9deccf5917576f692b03e94ab9b2f969357476d1ac9108674095cc594b909a83339ec7e9fbfa450fd7e1bc023100a6fda6d65af1b14e309677f8e3aa9aeecc82e278ad5598f9927d1d5dbe2c2201db78e6b1cb5ace4ac9698f4fd3569ea80302047c435bb50068306602310090679936a9d15a29c066cf5797fc2143085e565d7702bd124c86841f1f7c79feb8859ce477118abfa6ef4f0541ae6b0f023100b14ce1752597e03b709dbbc862e90fa09d7cf65d64581873f877487c1ccbe3ebe5a15f64b2829254a394884f4dd240bf0302047c435bb50067306502310087b095d83b6987e293bdc0bfe3cce7722bc49cd36a61d58c228cce8fe8dfc0cd5d0e1a910331c94db79a76f7d748d3900230763b99815351d64359caad0ea88a44417e0acd37612c175c07ca55927af47bdd57ae3180232db72cf6a5aa81f935be350302047c435bb500673065023100df7734c957fe99485b1fbb7097bee6f44d936e82054bfb9d6ac4d76818a90f6422f4b63e6821f4f78f60fb14ef7ae19302302074d300799b9784b67d02a00b253a9d52ab30ade9789b0eb898e491e5c9ef4278a0bf8349ca8a2c68c7c47eb2d7dd7c0302047c435bb500673065023100b2b75acb087d89692d40b73cd6a478e23816bcafd99c14afeb5e00b651d40ea8e342fe4b397965e40af33f748780477302304094d5703739490a9b33a7d0b75a345c2e38aca618c6fffa4db4df429a4396973e945936a7ea3cb4b36f9993eb0d6b070302047c435bb500683066023100f631e429d8b10d96a0ef7508acd2c326cb77acc87da08211b4c2b8067db8c1fb9ef3f5f2a7d13cc938a77ac06ba70f4b0231009fdea218fcd6eaf77b3769c120898b82e524bb64025c8a2c7bbfed59c86e10e1e6e0e365e0f2c00e9b50e292362f1d880302047c435bb500683066023100f60a960cea6cfd774e7ca16e25f2b483b15153229baeb054b0a2ab427f40ccb2da8123da3235765544087ff2cb8e057c023100bab289afe2cc50af969d05f7971cb82c9b6a5a469664d8b191dc1db9f6ef9fa9650a1243b5333d65dc0983a68fdff7030302047c435bb50067306502301e7557f0db4cc477b278ea4b903d9cde8b181142a4d33cc8d2d2f3a4ce959a2264246e4d91ddf3190536ac2bbdcc034502310098b6650652088a7db94cc7a73177e248f23805ece527c3e7822d97879a9cd8179095d3313eec84d6cd71f3a04ccbc62a0302047c435bb500683066023100d57a1f38d8e36bd3c65a3c8905999acd113e1a2f9fd1c4e7a2ece32176aa148140108a42a2b3fb72791f91aa480a39a60231008aa407b3c2a4f65c0d681792b470b6025a1a5aef52ccd69ecc9cb6bb7698a18e631d854fe2cbab15df988f28da3a5ad80302047c435bb500683066023100b5e7382480d33189de9b3581e01a3e45f9efe3e8b6d2dadec790ec3773b6ef68b8cca10a82494466a19a405208cd6d77023100c9b29cbe5635e1a66ae0d0c2d7a0690705421da7dfdb8b470d6ce4226e6a2e7a06c04cebbfa1f183724191397474b5740302047c435bb50066306402300b84cbe4c274ab59ad727b666edb40c5ff9c33b2ff6199ab9b23ddcbf0d55277203c5fc66100b3e2b2508c1b79957848023034c4859fc1de374f8e9c4e4d65dff14420a1540ff32e090b5d86d7336a8dc8b2aa58427344d306baf9c00892bcf1f1000302047c435bb50067306502301d8aefbce0d8a3c9d5dee7c8fdea79cbaaac84591a24bc7862b7ada6a50d68745b3e40fadb65043881749b2221a33805023100e064cad96537d86dacbd2818dc850ba8cc6f5d1e62591ad8158f9ed2444a04564f005722188ac96219aef11d0dfdf6020302047c435bb500673065023100e29ca39072a563d0d7579e3c3443c634bf22632cd46beab62fa867ae7561a234a224e7a647b187ccdc585145028d7efc02302e3d15c77860a9e07dafbcc7aedf422d1252556c06b69d3f9c8e6756757bd5ad6a867c983887ab81c0b54d90a3f6d2110302047c435bb5006730650230215977c61d94867298ae3d24568d7918132ebac8af4dbc6ff0ea2baa320df1b94fcc09d85d50832dd91ac7e0531bac5302310082ebeee821d4686e7bf492d1f7043855ea451dad78cb975d6b7cacb96e9bccc2fe51e1ff82fce9151656416db1dee8ff0302047c435bb500673065023003dd283da73fa5cc5bbcf9a82e0d676c87364995be3a3da90b90273e729a28be5d2384934eca9ffe5123e16b3d72c3d3023100a8a71d84f2ca4534dd8d4e8db520c303b5e118bcbde5d3ebffd01d8e449315b2ee169fc3e6fd1d0ca9e11ac63f21108d0302047c435bb500683066023100d4309c0ba2bd2565ef7fc61dd1ef51975995d02ebcdf3bc16f16e7a42729eb56c2cab07f71ef269c71c5b63d794180f60231009a303bfbce573dedfb70616cd87e8b156dee85d988124fba90e2095c206c55523a96d66c6c1cad3ff31480d5ecd2a5470302047c435bb5006730650230529c155ea1eecd95fa198c73ce185acf9f227ebacb3c87727a86c4e1c31e7c977813ac8c0d8d4f4c8cebe59fc44544b402310089e0c0a6256fa9482beb9456f3f516e99d3047c15a832783431c3751f97675deac0417497710dc3cdbf5ab0714280a3f0302047c435bb5006830660231008557683bee10042821bfbdfc12918a28d53145a9d1a832b9e21895124e10983984dcb0330770cd878aa5d6a9a4007d61023100d5040f5a6cffe1b54b7578f2d6434a305feec2f04edb88f3792be13b71de7c84fc1e9a898098c978f8240ef6b76bc0520302047c435bb500673065023100da11b81a1aafe3edc179248d495faca03164cd244cd0ad2109d401ebdc1b43fad7d968932766567d6a5c60dc298dac1e02300b4ca499ac884db26594a4a0a941cbc4e2db30c76edc67057bc18f2407eb837d096e6a5abd735ac1494754025cd213570302047c435bb50067306502306d4eb262e896ae84b601199c922dcd61e2b12ae80d9e8aa3ab57add83d7b70ee9420ea44c4f1b467b2a4cc9acaef814b0231009785381e28d84fd13e5e42aa0fcbe8c821900f235404a29f08a987e3aed31337d8b3c208cba32783005ef666ccb75b2b0302047c435bb500673065023100edc030d2f2e2bcc48714fcbdc7e512aaa1118fea8e7a387be645ee5f7848de6e04c19cf5bbcef14b332b09eaac0e92eb0230643775a829d39dfaeb1609f5a56b8dd9302c059338a37c2551d29af6483c78c9e53025d87a3b7768bb371f72edc98f990302047c435bb500663064023034517a306f6cd03b4f551a08d30784f2411ca2bbd1a2618fb0d5313480812a4ba3e3b158b5a59226f200e53b8e70b128023068db9f1234e50d45ae87b2b97f0b6e446d9b2b0d992d5dd358827ddd0cb3314d5823c6f3cb02cbe98d8cebbfe8b680470302047c435bb500683066023100c7270a1f9232780d9f5d237dff3104443f3e2990001eb09db0681c91252b4969840e0ffd58d15f6fb23a5a9c0578dc6a023100bc9b48a4f00ac83c3fab76c0448c25f37035cc699b57ed37a9ba2df3d801d156c8190a27c43c5d710b70593b75a89b720302047c435bb500663064023027b1211e71afd053ec06c7bc332786157af7aded22b3e7e2229533cf740a5a50082306063ea7e0402e20e7ae1a4450ef023045e266e758cba87cd65421d170f2d82ad00f8f4b342d249ecc43f0b21d398e2ee6f54096bbfaeb3b352fa45a086873ab0302047c435bb500673065023050cb4a488ba4ef2af9d1a35896a5695e9aee101d4277804a83a16e5aaa00056dfd20feb5d66bdf6eef90d11b841dffbd0231008565a094648e4a57f1d60c5dc71c1b9c958a2b8aee73729f8dabf875a609e79edadde65dafc9fd06543ac15975b1a8d50302047c435bb500673065023100d6f80f7fce9999348d5d92cfd9102ee2862d679a37318b889e8ed0b235fae8defcc029253000f98ed4db70db304e38d70230635a03376b1833b9361191bd2d899f5f0bf9e8d89c3d2f55b92edce12e555eae0ada29252d7692ed99a25205a278f0ed0302047c435bb5006730650230136f295bfe43a3d3121cdf98cbaf145a64e56215accaba5091a1100f0fa6442861aa7ea68e2fadde19c3bdf0a62a961b023100a57521c44e31dc0dac8f9303086e594109740e605d8d6eacae8f26ae374ca917f564a74c0e24b54b8587a7f9300c73dd0302047c435bb50067306502303d7131d4bb54221feb537de30d438ddff0f3df7223b1fa34e052700fa9308de36ab442b9fa8ab6f5c307f3ad6f807c8f023100964b8fa39daaaae44f9eb0461d7c3e8d19facca988b54b2b3b6d7688a638b364c5a0f5893b4366f4cf3b656b18ff1ca50302047c435bb500683066023100a6f69658eed248c21b3c6163ddc4162f3059e02e31098c85bd6809303b7262f2d332f758cedae6bbf36bc49a7bb7c91e023100a04e5f28089b58d83921a8ca2164c71099ac32433fc7a20fc9c400aae75a81c83fd7a7fe4c031ea91bcde249a9f985a30302047c435bb500683066023100ffb3bd9b7e8c09e021c38f0900a02f2c0cb11a82bf957188284b021312f4159aae2b698186e8fd60d5498c76759d340e023100fdbb8e20166a7fe0be1132928c2bc877e0bb8795e13350b19709f38025b4ff38176992aeeb7f5607fe4091b6fc3fca3a0302047c435bb500673065023100d56a4df426d7e2ad4044b0093c6ade48572dca3d1f13f2f0a106427963bc580f4486443d072eae038a663b4a5a978b83023021799bdb062143d2b7babf1f0f5983c151b94897c5dab3d0023d52378310ee72e216cdc16df870ccbe9343e32e809d940302047c435bb500683066023100d457d3821491a1f195d66381fe58c33a8a73214ec019887a5de5500236be5d0d06a73b573e9bb0a072f7710ca9cc97f4023100ce377f9f8b03c6d868af85d15e252a03f88dae0b27b07ca47d8e5eee5fb2b2939f40fbb8275c1e40041c428bf5039be30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ee491ecb1b85b85f9cee7457e0a6e3d9178145e071a1f35ce52934ca473376d0ede54cb62be9e923c816ef6e77d2aae6023100befc19d1657dd39db5ea34291b97478a4359363f5052d6783b91e515e86ff3471b2d69a64ea0308604cb0f9cf5a68d5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304f4ecc552459744730c4436bfac555ea751e93ad68f12c11d2d5c1ec1184ea3e23b91aa3f0657d57f7860b8cb05a2f7d0231009aba3015c17282d4d2adcc6e0a0125cc2ed5af6d3d94bc89a92ec81750f5327bcb04daba392d0cb230cd04bb60dae68a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ebb5f7decf59be7f4d743b5895c2a1bae9fef241f311acad324d6837c5591d2daec1e9684bc043b737c946d0244dbbed02305476de64df5dacc4b187a1ee22eb59776981200cb243bdb06657f27d79f5b492fd31505806700e569173d710d89f53420302047c435bb500673065023100c2c40e6edda263292264909014a1eb34e77654a508359da988c14921c3624dbc562860abc212cf2a8ac06127a3cd4f3f023065d83aab7765db2e806d13ff83ee580e0b12c51e3b06aa4af4e7ab71d2bbae3fdfb409ccbf2d70a11d3bd849ca177d910302047c435bb50066306402304987f70efceef82ea4d397dab2ca230792c851c2ed02f4ee0b39652815f37e1ac9c77fd76e64e0f7c3a1f14bf83190fe02303df0bb08a01ad9d2fc400bcc7bb4d612bd299085151c556c3b16a13b2ade5c29becff50afe76418ba70b2ea541bf38c80302047c435bb500673065023100d5bd138c98e3ed5d9128163bb01e442211d8308038fe8b7982f416494a95c533435b98143c8e7b6d451e00c52958148f023006fffbd30c092b1bac4e72f5d8ccb367c1e514534806c4d3639abfce63c5fd1f15ee4ed43d76938a7f2f55e433ac1c750302047c435bb500673065023100b9af192445f1c1e0ff3c27eec066da06ca157c4532733855194001d38ef744916556e5722c70a1f24fa3f506610886ea02306a53e5e9d0a26c0d7fb3a7824f06b4b75791bedd76be91dc8b68e4b27181465ecb693e56aba787d58432c12608847e340302047c435bb50066306402305990bc51d4a7e2717ba43a3a336de483b5de2072acc6fde47524d708a7149807da4a684d07282633a0c32977e67fecd202300678cef2da2fb5980019c3497af836722dd2f5a11d3dd5173bc554fef660e43ba49b39ead4fb9b1577af6f3abc856db70302047c435bb5006730650230544a065fbeb6ba2ed09fc8bfd9ab7aa7ef36726c0b431796077f9eb7a0f861c9df2921299abf937b2fe04d4c4f575374023100f30201830a2d6136e5b81b1c67fbf534d50d0c32222fbf0a6930e041d2f35ef154ed0803f8f8b5a486aa368edf18f78d0302047c435bb500683066023100c9e90163af3a086eb45d34b90073a2fd728a20665681c215920033e2b324cebe748c68d3d1fd979e3520a1f8f17882e7023100fd38b4b558e7eaa3af10a4f7efc3543361312a0bec46210f101858d354d6205d154c19f9dfeb6c9bcecf81792055285a0302047c435bb50067306502310085e4d759a5a3f5f89fce6b38fb4e471b8f63ba5f52e7cbc1c87868d6bc3db55ac7c076be7f97f1de45f80fb60d075bd202305b1a001ef00fe8491ffdf5992975907dc020fd2f73fe5799b3753f8f9faeb655b81115e0fc20675fdf6e3bc6b2c8f04c0302047c435bb500673065023100d7f74ed31bc405cc5e1840aa6c55c730ad1dc4735b91a7670b69f9411562d732568fd5e9d1f66d808d686124e825be680230729c045adcce24db628f01c17c8c061aa1401ff3b0717ae6d5857b00af1702d155b29be7317ac4db0523d9412b2e7f310302047c435bb500673065023100ace5b60228cd4fa01f5da33b46b12342f0ddea8c7df5bb99c2d0c4650f524fe958f4e5a6f0e3e61e0c155fb36b51d0ae02306a5166969c01c20f3377816c630833b7fd40ac709a1b4fe7038bea91cfe9bdabcf6a5c183bf65274cd9652a40ad6707d0302047c435bb500673065023100b6fa5014574b6868b89b2aab578e26da4c8d4d09774c1578329e28a420c8d9438c3ffed25d41fb65812220b50b0ea32b02305487491f1873292eb2baaaaa8a9dac31be51728274603017132e7ffc30dc2058773ab7e5caebc4a6c8943df0e79b5d1a0302047c435bb500673065023005dc9f001c353e9b7ef6aa653b4592ef26a68403adab41e8c0bb33fa7549fde88d1109440d07016a4ae2865d8e977879023100cfcb040f2f002ec59240052e0ce3b65a5fd0dd2c7b2ed10e4595b22e97c0e8ff00688e87db72f612648e83c3647109b10302047c435bb50067306502305a16675c282fb886b743fc9895198b48ec40b66ba0e63c7d70da8ae3af8ce112b57b9cfa745b3440a9f80d1b01fd83440231009540b9ca1f4d481f030947bb0a0ab9c630cecbbf7771baab2855bfd305305327c75af22e3093baedfbf3835dea74793d0302047c435bb500683066023100dd213062074ebe967bad5e580cd5749ca487c28acecf43ce12c333b15c97f69bf1c3ce59844a91ca0eabe70bd95ac9f3023100d1c08b235ac872043c2677899a0a4c4b09834c3b23d193b8a3a076c00f2016bb40d909b402392ab5a944d3467bdb5a340302047c435bb500673065023100c466bf081faefe4e8a588af6c4cc176911c08782853ea254336a0e64605d64bbee23f9f349b339e9783bdaebd8f6d69002300836986f4e33b4212fc9d92ec97b09b6d5fe3f45a473f6a0c23951bf1456d876059e2e4f6f048ea09d1b9cc7e2133fa20302047c435bb5006730650231009c7afaa886295f28d050a9da77e89473baa88177e1cf3b5a41e740fc2dcf5ae98cba31e6d54cc4a27e9520b11947d89a02307be8daf412ad65fe36ae3d6eff90402380841fdee9dca03c4d14dc77f99c90015917fe78c466e72ff284b7c67f819c780302047c435bb500683066023100d70147acad40f6cd5d9b9703dea18c75b1fcfd61994359acbc76185b95faa1e031a782c634d8e88cfc476635db8350ee023100800298389b4272560364132a15ce28c43800a81f586a5ce0927b69b0c928ce9017eaef6216ffcd430187863bd86a9c600302047c435bb500673065023100f712a19456f40e1c89410180cd88ebf71c8dfcf476dfd1ad65a417dcc0626d941209f4ceabd90af497362ce62772a1a5023071d03cf57e0cc4da5e9e40787848de468e331a420627caecea57bd961b5e44e7d3c2628555ced68ddf372a90dedb5af30302047c435bb500683066023100d57b9c5a814802d4762b84006bcc0d60c5e5f60c7cee0184e3f2ddafedfe342f3af5ddae6eaac68f5df391824391313b023100879b3aa849c533bc7fd93f0e2f3d97e310e79d119477fbfa16d24cd95f2b515550bd137f1ee5b1bfcffd6d89aff26e760302047c435bb5006730650230421a0df54ad220697cf2e841f859377cfb4150f80b1a8e4d249ba5a106204ab7efeaa75526f28627c481875e0ee05f1b023100a3f87d13ec00c765800aecbfa40af3f91bd3d71eef8763a4390cde3f099c3a0e0c0cb2154f7ee60a1101aca67869c1730302047c435bb5006630640230653bd4e92d8cd13025a206ab6d3dca7ded69d19bd06a61f08b51f7492bc228c893f3939f1aefb153ee8c289fa03afed50230722c65edce850219b1fc58b980d789afcecaf6b86d04ae82c9fbdeb9a479ca7b4378fd28517f7342ab36e85fcfdfd93d0302047c435bb500673065023076edf2145be728344a61fc4f4771f029269cbd2f0a255427abc227abccd0869519affc1117105cacedd7ab534f187ac5023100ded6dbea8246ab3f948df3386b56eff13c02b377292446ebe34ed489939ab768cc5677845782d9c804442fbc342def2a0302047c435bb500683066023100e639fb16e67849ade0159751195af3aa6c0bc2bfbca951a28c0f471602cde1cafcae6b7e9ed187a153a691497ae35c2c023100957beb4192bceb74a4f5b065301a593b6468ad2d0cafe3749b2ed3ea5926035380a7b065f409e07009d8da79166fb5550302047c435bb500683066023100f49c8c05072e377c8eaba2b6ec633ec007c072e6faec19a65698d48b46c37b3de47b1b3b5257bff7dca85f4b0ba2d516023100e18b4f761fc84a8a7279b06226cca3394522a78a67526d2a9ba7f7abc50d953f8b284be72f4d4bbaa08ec850cc75760e0302047c435bb500663064023056f0936dfb595a25d4ec0e06f1bbbb28922f30c3c3b35b4e440e734651afb3d085ee606e708c53f98bad818aa3683c5102304338e646c5420cdccc70938d4e1a21a8274f325281f42d8637e16094e328eee97248f008e1bc79b43c53cd1cbe835d810302047c435bb5006730650231009c11c7c74609b1a44a8d9035abf55e8dfa4d481f3b923b2c3be45503d3b0c9694038841f343868e88138bd84711f82fb0230557158b5744d103c1f7e42c69b8901ba88cf54787346276899fde604410b5abc1e62b4cd3d07637ca05c10166c74dbdf0302047c435bb500683066023100e1e3eb5aa8825dc57dc1c409107678e8441fad0284d98ca09fa9ff35e4c045f5cd2f389cd38945c9364fdf0a521a120a023100a309f69f9409deeb796e682d20bfc334fbdc231d1b8656f766a202f9eb0b3713eace71f5cb092d8e70efe715ec30fa070302047c435bb5006730650231009737b075d6d046eb66b93edf3cd7337bbf2481940ce55d010e6fba18582bb9b548f38a271b487a884938bc837e5b21e002302f5480f818244b034424abfa2df6264d838906ee6b5e8150cd94f276272e3eb908ca2e824b0fa3fba0da8c1273c335810302047c435bb500683066023100dc5d7eebea7667e9419b4b70c62e3de3e090cb73a46fa6ca9e7b7fc490eaf32785fedcb6531b53a25c45835164c5f8ce023100c3660166f4928bef556ecd755e64acfc2c65c94338a3427f6751825682a58c7476435752e0bd7983b2074c4c10152f5a0302047c435bb50067306502304ea2e30497a96dd6d33fb718a688cb5f92d06c9d8b0f0df35a9b8ca412ca39e665ad016aefb34ab667480da26931a0cc0231009da95f12c8e0d43fdc90036090332ed0a53fd7f1e57f51fc4be53846ed710aa5947ffd4c0aabe0d836534d0abffc81bf0302047c435bb500673065023100f87a2e2f1dcfe1d96dbdb1578c0bdb030cd99885398a279db9d9accfec7cdafcebc7a1cce0413626599b4f782133867202303bab1738046c726ae94f7da07ee096621c42a6758378b6086652a08c2643b06c48a3e039238a736f42baa31dc61b2ed00302047c435bb500663064023004640f95ce73cfba41b8a2347d042a11708550705c85febeba6ea2d5633fc20e4d7b4952d90647bd2b6d01bbf123451302306add4a9cd4d9607301be09f85c45298954e18e284dfd2bc726da9b860e7055aa6dcb81a9b98590131c0139415838eb110302047c435bb500673065023100acf3be3a16177d7e1c7f0893b54cd44b46324eab5e1d3002bbdac2f48161affe3b0c03f80da7a2685f45fdeeeda87d2502305b7e5222f6fa9829cdf2ff1fd69f646ce35d7d79697249258e094e6603d8a77ab4d11fb8c45402c5e739f7bb8697cd620302047c435bb50066306402305ec16416354acc1f70eb70229aa3c765efadde340de54672ff57768f979d5059520ab55c5049e4c9dff97e081b1ee4dc0230627eb79239fe897d29386e39cb2591108777418e060ac09cd002e8e038eda2cdad29c37725c090e6741275cc1930c9cb0302047c435bb5006830660231008727df37da1bc5f733926961b5e54559e298a6cc66f5e8ad6cae13aa66ce8b274d9621eb77c1fde03b28b3eda8597eac023100ad2eaf00231a132eeb64b5cb2d44b806bd0638d8647bf58dc025d0b7c3a26551e32a3ef601298177091f5fb7033392840302047c435bb50067306502304ca76c6d433ac880ea63f140d63a144b8cdb377996b003ece5a4d842f9d8dc3faa2d2c87badeea342d91671c68ddee6a023100d10739e0070457c4f6af67714c8e0e2626e00dfc7a12deffbf0221717dd08420b1a88b08f30421cf6e8561d9a60310880302047c435bb500673065023100fe7023b84130ec884afb7255d4eaab224e92e84d421c7ad4dd8662d1325dc0f26eb4bce0255e46af39ace40d8db676e0023071d40ef91604097edef534e3f8b52640b68abf0cdba0a1376733f32d67afb455cf942ad7576b513439e6b89a2653363f0302047c435bb500683066023100d58eabc329bed1396a144f28c05ab296cc1561ed3e8ee81e590987b13ca59018c761ab7031df7f8a7ba8f00cf44cde1d023100ee76aa0b0bf4775ca355d073359d51f5dbbb1c6cdbe8f207f17d308bed37a864ddc14e0b0b3ed20b4a967b0f186aeb480302047c435bb500673065023100829a0af0929dcd527cb715ce7343d1809276c91559db3fa6b3c8bc8a12b8f4e0652e73045cdf1b530e5fdeb882eae781023011e6eb88ea6991922ea2d7c63f36655a13b9f5fd10c903f5486f16416caf66ecdded769251e341cb23249946b57df6f00302047c435bb500683066023100910bce02288012763f950eb776cecb014c56f262b3ff67a5619f9aa0950188ac675a0b97eef329a9aabca6bb9cfe7f460231008414d046d94512983e5340909afbeeda5b29519f79a377413ae852e34c376885edfd8c77967fbaa2b40c949919eb720f0302047c435bb5006630640230190a1d82796f1bccb83f7f704adfe6fb6ee4bb3b762a68f93a64f1cf7d0aad0236e0c662735412c0e0aa1287e9722b3c02306b6c318259518dcc547867c1c02902cad4d4a75aabae1ed470a3f0c5e8d43bfee33f02bbb48ae538829c5acfd8fc94ae0302047c435bb5006730650230681191f2ef3da91b160cda0984919705d70f7ca2cdc9a0f69f27c06a2985bbc925c6ecbd7be3315d2536e3efbb9b5a23023100b936c814110ad648f87f24337ee89d2e0b224f72233678191cb6fc91212f7b836c483bd59115f58fc8c78659859fe6470302047c435bb50066306402303a74b416d812f6657026b9a9007ca14b684f83a7e87c1418234fdde9be6d052dc3829e678626b2575fb42c46fa376fe4023016c85dcfc54ec5f50f0997403f4f9282965e00d739bee54bf42aa1f00f74d3a3dfeec4da3de13b2cf23aafe04ab7962d0302047c435bb50066306402301ce83d9ec4de710219ea8f86c32086f373c52c85100ae4f7e4edfaa650905a081f2e18537be390c696472ee369bbf2de023031b2c79c4bcfe3c849c7534c63377ebfb4e08ba071103a2ed4f274bf784149a09678fe871441156b9c5206c5cf9cfadf0302047c435bb500673065023100a96822577ca83ff362740ef37b633472158fabdfd47474bfc9ae509c928c61fa21fe611c301f3f900bcdd847374765d90230023ff08605228c5ae52969755295f4330bc97cea6a42837115ce8bbcf236e30c68359237baee2ffeabe42f64fa0d208a0302047c435bb500673065023100b43ac238023ecd717fa14d0a4d737a1b7fa815214ab51231e4a421f595718da549d93f98765d435fab4cbe4f3aed728d023048d7ec7396d127ec6ca6822c7f1b1ba1be14aa272907def08bc663629bdd7c826a0c1fb4acd3cfca3481c954f0ed3cf90302047c435bb50067306502301aabe5cc380407bf228b32c5f9e72588e2663ebc5d075cb54860782f88829ca2e17369fc8ebc3d98d1201540d282bc73023100e7f67aecdd7c5e3c57045c62dbed79a67e16044cc11515a2c19c280238357202fd96ca1ef718adf1940504199c228f7c0302047c435bb500683066023100a7aebbcf43b591399810f2c40e11cfff8f798a949a8174c5eee0bca2e4f38cb08f745c8ec6e83d636fd7b95b0f62cdcb023100aaba3b6fb0fa628cb04446edcaaaefd4a66cb242549195846c2915bec4b10f19248d28835f925b321d20525bade77c890302047c435bb500673065023100dd0410583bb8e53877b6c4c8f397f94fa2928269d9b688cd78e1069ca8b9b284e03a8d37409116a6d87c4009932405f602306c4cf9e06961191071cd13a94d3a8f60833f547b0c61893376f20c4b686e663368479b655e8d26f2cbd59094fdd2a2550302047c435bb500673065023100e63ae9e74cbadd5216f33b5f19351e7e1ffa9a4ab295bc080e62308cd394bf0ef7e5bb9b55f17dbe85c5b46beaffa3b2023041b49507dc52466f1215604b54105ee3e826daab539ed10e3a93c07d77d791a2cdb200d981f6e4c4aec6b58e62cf8d170302047c435bb50067306502303b8be82885f574334963ff72ff2fb3c642a97342b8ee209c8eec4e0e50cc69c4d0a62b8c9bc06e4431e0b3651b46262a023100f4e4b1acda609bb002f0a24d711d5324b586d9a197ca880af603fc5709ca4304951a75aba738017b5b5da915552caa4c0302047c435bb50067306502306d0401b418bdb95a1cd62509bd5a25fc96f7480fc442fceb426f3e8fcee1e4a7559bb79ea67f9a331de4e3b0cd6102ff023100bddf3081455374079cef268d02c2866edb8acb3dd75761800b01fbe833d65272d775c090db5eac4465fc811c472309ca0302047c435bb5006830660231009c5e95c51deb9dcac413875dd67cbea0488316c90b01ec3e449948221dd1c08e7748628c26648567f6b2366b41c7da81023100e4f161b50207d051c400e0d606152e2e12108ef01c1ec3b03e4f9af18343e994fe55dd0b6be077164b56252f9b0d6a900302047c435bb500673065023100ff866e450a092b6c76a8f840b4c1c5400614ec213def3b95d0ce283eb9924bbbac96f3f5b5bc282191b133fd4d506fe70230235abe7797f2c25154b8ea48c01ec2b6cae8842d60ea4e3d6f514d474946859042cfa948fab6e4461f1dd39a96816adc0302047c435bb50066306402305629ab5f6233da0060ed976f35d45a528ca729fdc74eca95ef6ab47d40fd732c5fd916aca2e6f72e51ebdf7e7fa0471802304d8d372b5aedce105fbbe8b92c86ae38757fa27b5740eb43c2f23e113dfe172635c59f8a16bb2d3d834be4317a08aad10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310084b16408373c80614e7295f8b7f7b58714791745710ce2d4d8df529f9cbe7b7252a5e21b7c20dbb59a997e65bbd4a2290230749980a57fdd10126306007995b22b8b2b044272ab2707e8d3e1cb2ebb4dd8ddf473c4f70b188d07c96b576695c3ce7e0302047c435bb500683066023100848e3a05106949f96b2490642d20fa315df4316131bbfc3006c04f828f75cc7843ac67eb691e1875ed4c2376d3284bd8023100b180c504c5749b85a5581cbb91607f92d5126ed6f7b3668a369a10cd3f74df09177b6dd59e458313062da89ec0418fba0302047c435bb500683066023100f872579be55be429d1c58038567a711169628ff9bb8c2a3be550cc86ba00f601f2e5560f68e995c02a694b0ad1bd550a023100c0693a55172d3e5c4fd5b5d865f432c52874025f6f08a9b7992063340333f8edafab9627c93d516e7904ef9565aca2050302047c435bb500673065023100c54d344161dc4c8130116aa719771c773e8795f668c972f426562d687ffe662bc6e014a5d2fe852735a8fea1d3b84f45023023eb56dad8c8123e6c69090f71a10fca44ec3aa2ccc2fc17b7a1dffeb6a7a9e0fc75b039fdc35f0b8a8f394baf07b4210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028fd09bc0f118df8a6759ba5739c9d20c5a41591d40e9820956e565baf36f038831e1ba3b94a2ce9ccf08e2cd138177f0230156e24e33921c2b97357a3d6d66167ae7597d49c7742f1e54eeb622707638de625253edf3e46ad076b428d44c2c640910302047c435bb500683066023100a3fb5f67ff3cc3514d2c295aa88bf956c182e2a4e10110158bf074b9a2516cd2883cb7e88bef73fabc037727712bfd13023100faa7a50f19a4bef40264c725dc238e6f8d25f94bfc128ac01b2592aa1f8394bebf82cb390ceca74f0498bc2c806e87f20302047c435bb500673065023100efbb61ff8d27f246ad32862a8d40f342247c00465822e89bd73ecc4e69e2d8049a15d4d672c1b4e6e0b895d32512e07d02305e9a35fa4eafea714948fdce0ad8b22d1319e7514f46108418a6525e084a6d28c1fe5b18734685e8e91570af417463420302047c435bb50066306402301d1387bf6eb0d2b5604c2a1fe605760f5a86bce81e3c12e469d2b5ef6f7385ee9ad11b7e317e69a2aa7262e8a64674cc023018c96740d3f90e44be0b9802b27566c031f592040145a9bcd3622abe6819e5cb472ea34aa29b9dbbc2e21cc8c6da18950302047c435bb5006630640230455a8a21bd8c4155925ff4a58afdda222afe971de50006ee444746e6eb835d3b6509b0cf8d16cddaf9282d5eeec3584402306752047d797751bd4f4cad8251f83144ba18449a7a0e7fa5bae111087d180357aa2b18d5be18c78f51e9e8993523707d0302047c435bb500683066023100fd7d4dc666d0a2d7ebf49e16d5f470e882afe37844b8ad12cdaf3af8a5eca5da97ab5aa5bfa999edb999658c5dbd9349023100bcdf1d4502ec62b22dbd15aa44d29a474a1872d80ab077aea004ccf0daa857d0ff89a4c307e90f58ecaaad6fee6f0b4f0302047c435bb5006730650230027da41887f3f2bf5cfeeef4aaea7109848bdf0e6c15b2e21f5471ebaadd9b1f9d3f807649db28367d17c65533f94d2f0231009189eeb5eec603cf98c7dfbf52a63ca94def730987214daebc20b654453cfc9758ce1ccc90221fb97fc066f4f5ebdbff0302047c435bb500663064023038308acc9081c1a71398248aaa8137b3cce49f3da3ac0eea8b869ddea5a3c63318a5bc7bc7c3883422b202ccebc16a60023078403098dd3bb17bdac6f908859ee442d067e67e2d65b1e441ffa1a4d68f0d1769a382390c722ed6d826b8bc671278b30302047c435bb500673065023100fe99b5631b360f3ade73be5bd8ffc44aabcc9e7d3de20760d304c122f41358a035693b4e9e905518133742296d959fdc023070883e16f47f18bf045cd7cd1f838d9637c57a6ecf8ff4265d859ca16f3be613f8938184066fae8bcef6117dcccd0f4d0302047c435bb50067306502310099a04eac1baa7b009b508e1263bfa0734fc666fb2bbe94ab73ccb52cd3e56172791c988c7fdeb928a331c75091107cc20230027a7be2e3642fba394d0fed8ed9a3922e396f66410c61bd32020840dbf0c30c9d04b4391ebfe935527b177c4d58b8b50302047c435bb500683066023100ee53451513b138215efde2e44cb6d444cf8c572e158d71fc0768793f4b169218e891d7d5ed9e1374ec339d323229745b023100e96cbdbf5bebfb9b5679a739dc08fdbd4c0ab1ccbf199f153f0651f70b07873c67a4d0b429505bc1a5fbf6fc0a0ceced0302047c435bb5006830660231009cc93bd3416bdaa9fcaa2150802be982584c062f073759bcd04b2d2c12055df1dbf5bb34b9728aee65731263f7b92f1e02310089817c30011f8e1d9979e192d2fcff9dc0f9fa04c2fc75e1e1aff21990a41e32eed7431947643de68af04dc66d0e187b0302047c435bb500683066023100f855ef44c967c7038c063b7e19cfc67af31288fb8a37979fc42f2d96e18a786a09b4b415fbbc535e449e80e5a781e72302310086a36ab651aec11132c0077eba10560c0e74927d2b89417d0ab77b2e8920648e1345495204b313dabaa17fa389ef6bb50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f100c2cf7a56e00825bff506ecc26a0db4797a0e914aeb2af527ada694b945b07a92fe5aecf967662a8c1f6aafe62068023100ee76e00a290ac8b9e56807f200ab0bec97fc7232cd2da2640b824f0fe553b66b08d31758cda0c661817499c3d54fe6f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023060812034f66fc5eb9cec5d0b686f15cda84426ac98ba7926d449ed35f8da8d96d3e90b0880c8f828f477b958e35346d8023100df39cd5f65213d7336046a5fa6b16f9f2fa9e64d26f9e6683528b2150b08721fa065da570e6a8fd118a7dee97d34ea7a0302047c435bb500663064023018d74fed1c5d8505d1d0de35731d622af0e5ffda55a32ecd291652d06aa6608ec46cec0e4e2a7b55a28d31558d4998940230601a67597977e49e1caec208b2953a52fabf3aa6dc232d7711b4a20a255282752c8c4cd5c45b1d8bc42b9817e2ec64d90302047c435bb500673065023100940645478b6a847b6ffdb71f08b56d1f2db9261405ca9e347edf7779392b6eed4bf6f06e3fe1ec7f081a6f9caa7046260230552046a1247703605c56ad6ac5c2530f80fa5bc8217c549853c2d48ee94a43324f0dd56fcfcd3e5e42e124e453dcbd060302047c435bb500683066023100c1255fa6226bc105a4a6afbb1ec36bdb6bbb195bfa898b3f1da6aedf4aff53f6c8aa3d8c5ae9085d1689dea01d8eb219023100bb3fae2ea73f3efdd556b8de4bd48e1a19d5c246011fda3c4671e5ecb64f9f47bf8ffe91629dbeb62c13c109078829b30302047c435bb500673065023052c474741b339d9520cf3bf3fded34ed984d5a046bb63ca63f26acebe11b48a88dcd040867db279628a542abe5f71bb6023100ccafbf13883cbf213cde749e003dc9e61f13ba91b7ebca9e27a8d5918dc3ef00b88b858f6e040c53db5aa77d02f353d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302db182133d63e1c5d725c19098f19a838a16db46b1d06ce86fc2805203d92e27b275d7db2c6fc9025d743ba49da4575502306cb6639733255b95623983199bed5b168c29c9cfcb771ba0a416a91118bf2d43941f449bc264fb57f72801bc4a8553710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a975861b123fdec16a1479d6f69d3fb8758fc527ebac3c6c5ad6fcaec878d48b8b6fe8b40a501208ea9a389f6273e6302306e65ba03cc7133b6e07e01bee570f01287876aa9ff48c5b2b582c580f893cf70dc9455204d2457eb6ac17a086ad827490302047c435bb500673065023100c56259d99372423f6cc61ff69441b4be8ba7b9b7d7c7ede60501ab10637985552323928247ce1154142565f1c41375aa0230194dfded3579f1dab9bfdd9df0766e5a27b6f6b385d695bc0a081bcd2f91a2ae7a2e2860c36715cf00fc4e56191443e90302047c435bb500673065023100914f149e88d92a401c7ff07ce52d5d5706a4a69979bb94048090c705294261b2503042211144f123868a6484e7751c9a023038c0eda6e72d3d3b2c6704bcccb69d4effb971c0a027deefff40d414d196c6dcd752043bc40de32ddfd047783a98288a0302047c435bb50066306402306ec241fa63a70f46d89c55328d931462dc6765ef24504d4bbe3481ad1ef5b1c412754cbc6a4e11a9269ea5c0d4c97c79023016717177553331f3d5ca53d1f75473511f9d5ebf93a2e34b91b6caf094d5e693a349b58ad0ef7a2ca16c50d9b5466a1e0302047c435bb50066306402306a71c3ca97ecc554ad98696ad26b7045afe9cc9745f042d2467b8e9790a510284e4fa7ce942f1bbbec9794e93a0a737802300a408eaef1ca5035a058facb8137fabc07f7cff29067a15b8ebe5433bef97c72faa1c45a90ef1e0e8b40eb30adf36bde0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e0a3c3b64572fee29682e71e0a54c7c8da5ed1612a9ef4ed8e01be457485b14d87afec93b9e7564a0ee8f01613e7d93023054b9f31b307f642b2bed11e72b04be7881928a2a25cdfdd7f062c1e3b17df2e0315c806f1b0af02e6d50dd7e6f1925810302047c435bb500663064023045b2f85dcc33d63f8feddfc364bc4782a69d128c018660d5770dca4f2bc7f80083ba7856e0d29271b4913e96dd21b45902301b3f011e8247175e0282666f8e57de4c174f06411961b5fcc71de4f5803b135b946a61c0ed6769d4f988c62a9b232f6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c96bf7dae4f1bc167928ae0c11d1bb0b48aed4de998914739ef9390551a8ca9082cf1d8f7e8b3133e22ac6c66fa353b023100bd161ada8eb993955d5d511abf3173efb288ddc0a63976ec2f6529b9143381db9959895e79996cc718bddcd90b07d09a0302047c435bb500683066023100b7cbbbae7ef6a86fcaf882c6893f492c5f04ad40b4226bc47925e82a7094638e21dc6abe27a02f1f62728fc50e5b11ce023100ed08a9e48ba1a4e6319c76a4102561dc9d406cd48d9de19621e82a5d6de63b0e66a41c0a7f538e41a8fa94126447e1da0302047c435bb500673065023100ce42d8b1969a38fa462fb34933fd689a3d1b73ced593ea49e72c5d04ca11c99b016fc75e461798b360af1ac67aedf7e302306fe19244d2bd103d8cd897488692c01b7e30a43c22b851b937512aed0ef1807522a4d14c974be538b506f630633cd58c0302047c435bb500663064023025cd88c517f48b4fda3900e87ec65323553d5d2a1dd3450100b3102d111c7e752279bfaf1beaf821ba1541cc9f2e0c1f0230044ce3fb05c9f11c2a27b50ef65559c67d4cbe94a773acda1fff95767c92fbcb60068a3171f498856038e76b17f032710302047c435bb50067306502310095e329c194ebbe544876b1837bbd4c51eae7857b8b046d96d3872fff20c9347c639f5cd84d5c812b6868ab9b374e499e023001f86627828d94d383a070db5a92b60ce1f2343596ab1c5a14358b2f00b537296a5599fbc8d9bbaa2545ee13f17233220302047c435bb500663064023021a4593a116e1f6920b2bdecc84cd3a41a23446492ff5babd14e95c260867e669f9d388b5e668521ea538e03a0ce1d290230338193297cce70c4a21039cb30c924beac8c4dbaee4092f9517caa5abc8f1e6116087df54d6e983306e32d38075e66630302047c435bb50067306502310099043c557cf0d9d0e80a881579413d36f057574f269c7b708eb78f482bb99f75a09d000e40f6e555e8aec05ffe9ec14f02304fc79889bf06f7fd115e14d8fd3e99653366ab011260a66db750f795b44a93a087daba9a75c1af8e29f2e5190ec86f830302047c435bb5006730650230692fb9f170c84d2f1cc7ebdf17c6c737af5d7a98a1eab2e430107fa22ac8d16bba561b99a5af22ccf3166205f5494acb023100d17d7d04f77794318d187cfe7f0c417b4ca4759ca109ee0fde55cfd51dc4d6c8c20cd75ed87ba7bff4b42905c17813e60302047c435bb50066306402306aa9232fe164fe99aa737157d2d7489768a878a060aabca8157e2c22e42ac701e838170c4edd002b1d995e9c2b9784550230647c8f2293021229a857808039515cd3728663c37d8ee248248e59e08f9b794933ce2a5d39660197e02c2cb56d3823b70302047c435bb500673065023100aff6865dc8363f49bfa3047c82cea1f57dc78f6315520fb10adf418f9eb6835bda47949e801546d2c7e9dfc34d24e9fb023038a1b1b47ea92d89f208b273d2ad84fd7acb639ee08a4a720cf490789740549cfe3c9c7ebb768b07fc89788c458b02f10302047c435bb500673065023100af1902bfe415692f46402a0b401ed99b7d5f8e4729b35f559d9b64890e475f637f0ee0fda74e9132507d8650bc5cc91d02302509d47f40b6d6dcdcf13457d9c02daff837095285725d9ad0a3879d8c20f5cdb533921bb125c93ac4a41623ca0cdb510302047c435bb500673065023100f9abdfb2f15775bd257e4f69802d5c4d9e5d38fa1328af76ff25d0cfc81851cdfce259ca51f374ee9cb691e0a9b0fd54023017421380347f59358d33b494eecdbf3adbf5d692a8c8b1bdc2f8a81b5321da296fd889275440da3487e45dfc81007fbb0302047c435bb500683066023100950389c0867fa5e14102f595fc36ada51772b5e0978fd66b47ab5941cef88ea82c614aa49874d9b33692ab307fa8e754023100c7e1befd1b1fa47d98ae999df590b1614d1f5469e429cec0b94fa577bcf7e7703c9c9b6ebdd583e0b52cf1e0d1d0f65e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301d3aa46c286c5d31249a854fef120fcb89da93ea86e1d68ce06ef6d701efaea8814445d92caeed76ce68520e4c172bae0231008f257283353ab13529bb68427e43330fc89a9cb52540260580cc9e33069f233b7c43aaacd6a5c154eaec9b003090a0680302047c435bb50067306502300abcc6c8d5bb291b6b837636235590452dec853c7ba6804bc6288f2830255b7b47507227a59332d1b7a220eec74ca352023100c633465982ae4ce9838b9921acad571adc5d7d552a2e72c33712e596941cd523ebb11c4d841b58dd94c8e9d4723dc85f0302047c435bb50066306402307789d2254d31869f5f4b8ba00181d2acfe97d6e7c84a7ae63a4fcec9159bc6dd98a96dc81284db4d33646fc192281d7c0230671ab1b2b878af95ea2382b7433da2ca5ed89a9e2eea3be2d1f6a9150d819ca5f596c753a26c31f692f032550264d7d90302047c435bb500683066023100e4704079a135dc33fd71120221f7464931f93ee1f7ee24344e98b69ebce3a0b565c1620472cace3224c70a5d88873880023100f1e2699ac36b291f24a1058c7c4a84e0be96bf5a96078dcd6fa9fb7c63d25a88472872dba9258524c25955de98925c390302047c435bb500663064023067ba1de1c18fb1ee7e3c2af1b1444791d2ae2171d35d1cecc530fd5baa5c24f7db3aa215f240689cdb3ad6f77cef818302305b3ee98ff1fd102a5a766092e18cc6a84af0afb7d8d07f989be9a52aebd201b7668b73fb1ad65d5019ff36cebb8111cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074038cb2e9c82825adfd70e26b948c28d6f05cda6ca419e0e383d3fa459358ec0ad78a1b9e40cd2558038ec2747b27a5023100f119dba317b143d933afb5ed0e5b0fe0280be94c7792e632ba1e44e69643daaa1a1c4547edb333037cf5baa98c6574050302047c435bb5006730650231009fef11bf6d25ab38cd647264b87a5a969a4d8ffec6302b3c96be6defe423c3c138a9333c1b3484546f303cda8425f09f023066dddfcb4b241fee47b3965412171a0aec06e228c2448a39f2fd3f8fe73f38f8b2e033b2cd76709412d5f4bd6dcdae810302047c435bb5006630640230124bf373c51655ff696aa87738ad80035f2cc74fc3906b49d184b8137df13737509313f3c9bf59aec25082932e05f76902301a6141f307efbcb01f98b4eb213b7d05a7adbb4c6976c32efeb8d27f383d958d5b38581ce01cef2ce36f5eae0dbc28d40302047c435bb500683066023100d04c70496756e5968ca3f5fd135846913b97975664a675e551fc61a19aef8b5f79e0622e636c536fae3015e49d5b7bac023100b40004862dd9a4076dac6312ff51aed021680a27aad14c45dd8c02c3495c8cf0c3a59fd8659c6e53de9468762ffa6ef40302047c435bb500683066023100ad4efb3ba62ba444235652ee13cb8d31edac0c9cfeb3d0f533448d3017a2f17266b428759c0674d9f067ae51413b06e3023100d3e5199029fcd8e75bf22d0e5105a88cff6ee4e0a9c9125bca856b79484def5978cf27e478077b074ffbbaae292bccb60302047c435bb5006830660231008555d04a523ebd1f53e27d2c05046cef666560b35d5893f19b16035ee8b8d2bcf309bb8c17f9645e3147d5bd9b6069bf023100ed69abdd495881e7c5ff10700d0199dd3983d26c4bf90bf7498156e29be04603a3d599de7a94c9d3abcccb38da749fcb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dc460e12d636879d8ef430bbed560dfa13689602bf71c4865d2d0173f711d4697d173e846bf788d606850707e7cb6621023071cf5885584a11fc4e737387f09e34eed99783f31a6e83f4fca6dfda56d96a62e388343d980bf75231dff60fe8c891f50302047c435bb500673065023072ef0a26180804b20b17178fed89ac057176ca3e9807b87a49dd3b6c2ea61d9ad53a8afafba181874589a6ada9527fc5023100a5a15f6072311c7c4473e19a4bb10baa4e47c28fa953b5e7bf3434d68def49642a402c0f144b853958aa9499c0d68fd70302047c435bb500673065023042cb87917c02119b74019c3b688b4dba023731c1cf740ca605a9e66b9e2a19c80be43e6283075b2a5f86297ed6f67683023100ec40c031fcd42009d54a442d3b961c6c893df1e723b424d5e28fadfeab225c659ce70e7d31d4b5a3d0e11d7daed4749a0302047c435bb500673065023003f0f6e579d006c866fceb3d94e8bf0858e20bfbc211a2321e9559851f6e4541a5bdec67df0ced72373341c08709c654023100e12d06cab8a2117ae7bced3f7953e07a24ee7f974173414978c0851b091c33311004043d28186f66e49eb0c737f56e850302047c435bb500663064023024bcf65fcfcfb5b71f67d9667cb3df585c3a84c617043364229a814547332cd18fe44456d6052ad2d32ed7a8e9da662202307ec8f940f314292997568ebb2191d3a740f9b90e58550091221671d9b27caf60b39c9279a9096bfeae3a7bba1227a8b80302047c435bb50066306402301d688ef4eacdc58cc9b1773d59789402c9a70831c5bc7d1b3e29645e75cb02b5c2505ab7bc25deedfa8d79fcf1aab61a023034f5caee643ecf563f362b231b1441c660cf9b505f1e223145166144470bc8a76ab145a3dc453f36e8738aa8ef7b480e0302047c435bb500663064023062080de498c3448533d9cad44b423ef5c068e3b6c61295244ddc5d6f3021fcfaf364c875d749d1e28ba64cc1dfef4a5902304e27507792d3f1160f4913869799013e8d05a7bfe9d9a14f354df2fd3ea92917e6478adca4bf2d61f95f4837627213370302047c435bb500683066023100c8491224790cedc27773e71f9a1d3790c84432dc7d31eadd72ae8486cc048bb4348c8cc6385c92f4ab31b8e7af23bad2023100e871a26fc38094f4e801778904577df4da10b6253486c2a0612d5b60ac9ee3f248ea1cb3e56bc5254d2bf860436a98140302047c435bb500683066023100878be33ad984b796aecb0b154dec2f5b5ec115e9d7ae174ed799bf36eca48d613990e83260f7ae79311c268116951f4c0231008874ab93b9891251a7893e300cf76c7c456d4daf702d145a6d8608a4cf2b2104a30f012272bd987755c5c385c2d332760302047c435bb50066306402303fcb2d0c23ded89e763b46252750c588cf01deb3c37f767a59e0033f538ade6d00077ac9f8e8a4125b747de081644cd902307eb2516babdd0a2defe629eef71a975b0d1c31c6edde3c0934df9d16675be36ec5405a8e51ca20f9e0dae7cf0b2ad53e0302047c435bb500683066023100cffcebde7986ee3bdf2d81e87fbf836ae8aa664dbf9bf4ac88c40a5b730d097ea6e256dff9fd508b3147a4cae66e18db023100d9773bf4b8c16727920fcda281e3ec13f6605db5db8f7a2952abfb91de62614574634804f96b7176017cd1ba4aa272830302047c435bb500663064023011cb171371d4970dffc3e5b7d1dc9e234468fc8dd77f0bf54ce7c343849114bfe4a92cc0935efe53570c77cb4c9c6b0c023006be0fe0aa1b1789fec01846b2d68951f183f81a81c3c63132c6621d4cb4bc018cab039027f9db9fa03bfdb792a3265c0302047c435bb500673065023100b81f0370fc5c3b73bee831a163905c0c1097f3a0346f688716d9c1ef88d6908329c262c08325784a979f2c29d63e61100230152337358cbd08a1e740047c8eb7ae817f32ab7f659788a053cba06acad9fda75c9e6f42fdda40ffa6b445bdaa6d4cb00302047c435bb5006830660231009d4262f29f8386d82d51e8c8071db9976080e98d09ed07cee328683dbb74f5ef16cab2f66d6d0519df6f84a68855704f023100b10941a7a7a50267cb576a2f04c9c53c2c67c0679732fe7057e8c2620d8a947b1e4522e20adfe3e3f022b64ac345de9f0302047c435bb50066306402303137febf400ef68d2d70bff0560c3fd6a376287aa5f107754c4f0bfc60d43dc629b8621c8608edebba64edef04d8c12c02301d6f0bd6d3c5c31e26f5c64abc08c2b3650285046d4d9a64f9b529bb473bda4952405fdf9adeacfba6a1cfa52656eb120302047c435bb500683066023100c027f6f0c85dfbbe5ab297e00e25e9c8387348d068d63ba863f6c6f1311c1205cf507ec7ab73313847c860e8741704ed023100d3f40912d4c86ed6662b791481664cd994dc91ad392ab0f43cb0ed30d7eeff8539eec44bf891979eb35178fbad16c22c0302047c435bb500683066023100ea6bd71fb028f05562cbe934a8d638d6146d2c47a74ecf3e08ac024f651339854658916235ddb9af7756caa604008fb3023100b218a882ab878278081985be0a993855eca57e60a039d459eaff59c91467051f7a344be1cddc403cfd4968835f61d2a70302047c435bb5006730650231008b070f5c27ffa0264d650c988545cf0d4254502228e515f598fea73eefe44aa33dd969d82a7a7f57820750b755bd12ad023030e23b30d5b3009e8de8f1450d769e74d0825ce3f6a0f176e1b1f731f42a7d8e4fac181af0e28b36fde123c60668e91e0302047c435bb500663064023009b34999e4ff52192e9d2dcb48bde0d14da0de0c7c44826e92f687fdbea7192f0ba53451b6519e5b7a30f3550fb93b4e0230266e54c00ea95fcaa1b751ca9fd3ef8fa4555109fc673adccddab63be90aaedc396ebf19e2962536cf9ad55bf28491de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300103715abce7fdedf5f0e27f5c7e2cc8ab349b4c1da4d3c0d3457851338b464d3ec3606e83499463c72673b0406e164b023078cbe0cd35e4bc0b4da4fdfb6d5969bc793e0d3c76ba708282b06a3775132c62cd99bacba5804f64517b247ed7b1cdd80302047c435bb500673065023100dc8e2c5b8b77c5a7cb9a04bb71d4fe4096554653546427fc2fa296a3589b6d44784a4b5c0f66babddf53c7b5bcd74d6a02304ef0754be9d8993248158e53631121bba88f74fb3b98110c6782f7d014bb45b1a06a5fca84835c4176f77524744b7dc20302047c435bb500683066023100e456e990f17b72b9c9d56515de3697aa7c5761d63c0d3c76f0bb05f501fc3da430595227ddc8d4de1ef1d4555bd8374c023100e188362a8a2ed74cef8097b1cd21f3289e2b41ad49372a9108f70089931485fbe1ea5bd78f5231ca2ca274b69641c9e50302047c435bb500673065023054f63e60d7f1a14803de2da1fc09e8445ae59e1958218360d7b1fe06706f36f3a33b541149cb77490581781f15f1ce0c023100b719785e9e4d0aa036df374ae29429b06ab73aff218595e98e07dcd0d4302858085895e530aa3a16db16631777e342900302047c435bb50067306502300d9410a350ae694da76e7058441bafc51270342aaf85449d859676bce23e924731326e611ecbbea36f66b80af91ed853023100ec4c5f038dd638bb8e132f4415135a2c594323f2e579cc4568ebf954912c2f2ce48fc7003aefbbe90faf4f421b6af3c40302047c435bb500673065023100a31bfe3ef08ac3acfaea8d169dd6ff0b548bcbb7a50b6f6a473c588e5b8a64cfa8decbf0bf517f77c8df424a9e444efa02302616981aa35f1f55c3aee66523e20c5f42cb5f26f1b4b20fb0011c632680537a79a96131647fed1d51458428b703473f0302047c435bb50067306502300bec8600cc30273708c6e7a6d43bd5c77497d4bfa154ccac00ce22e8ec2108f67c13c36905fdfe8793b3c274a8ecb15e023100c2a6453d3c896ef2b00b32089074ac5c5f0352db26b221c001e18bcb8f50336b4370fb5b8c833c5cd613d035054b043a0302047c435bb500673065023100a46380888d3c0c9e0ac6ab4a28e20a86cf54d3f7cb929c89b0336ec29c3149fc07ccb39cbc76292b801d001b35a3b95202307e4270ae5dd69fb9483355654cc07643851d19169854233f8670609a0776b04c4ec05f21afd0c22305e74a9044e7e14b0302047c435bb500673065023100c146187e5983c9c4a7ae463b4df3ef27605d7e7de1bd01b8e4322f6a726d2438279a3289815fd8ba329cb7c77aee950d02303350d34dc8658a70a4f815777c5d5c5f1048741ce31f9fbee7e33577f82eeb9c21994fe18f2381f951b9907a698a5b210302047c435bb500683066023100cbd99be38ec4c0fe6f2927e56e9baa275e975a41a7fe94a4d8a91adfbe9cfd2ab6799c78f4d38fae0db77f1328bdcdd4023100e51d874ba4ea25c90879dd41347c3c62fc55248ea5d1bf5b46e369226f2f05da7642f7c70bf144af9bc9c7f3cdd91bcc0302047c435bb500673065023100887ac77e42cffb36698fe55362a87d0d805195e2e979c487448e1fa218416581270470b73aa050d0640ace3c31fe9354023012ca4ed123de176200a038a4df3cd4aaeccbaf97bf07fab7b9cd93acff304f64d2a98a2694f72e95490d49c24e0adf030302047c435bb50067306502310083811864ba8b24c0847090fc7b9b940489eb3a032e49bcc7cbc51171f4c55c7c3499c9d35d52663ab3bbff7b809d135d02305e58f76ac53cda73545e9fd427aaefa293d8a2cd0d7687f7245d026c6378f578b202ea3b1fab188a39979e669ca0f9690302047c435bb50067306502310084373f6ea4c690bc18bf45210e9d4d48e543f5defed3cf395754244299ad211940f8ea06ac1f2fdc093724179ca0b0e0023010d943f8713de10eec4756834bc703a6e42419fc1713c243380dbc37a061b726d2bc0ed40d69540aeb84e21fb60809500302047c435bb500673065023100d18fa9eb8fa2f7b4a3561da697c3b72574be18196af0ad9f43036cd842134ecf8b6e1e79c80c3a26eed465d1a5a3c8a802300e54be183f633fcd676ffd86d0cc67d6406577794d9dd937b3c6d291c4a88c7eff52f38879cef55297af06e56dd9b8ad0302047c435bb5006830660231008b804effdfbe8c88050aec22030c68bdde6f49a06463e0489c7310f4b861ce4319eecb715d8f2c71598392daf8109649023100bfe3dfad695e9281d1a0f9439b00db36280d7c17b17192bf5c2d3886512c841ac339b09053157116dc6a6e1f0957f4300302047c435bb50067306502302534ba42a135fec34ddfb1fc85174105ed8512c61d71feecc0c3ef5608c6680b9066f6826c6e6c5ed33807deb237099d023100863822944a1c3fca95b957f7cd95057327e88d621c5c5c0f3794d6f6d2a906f504458f2508a104bd0c8bc587f3ebeb750302047c435bb500673065023100d32e67ef97ef0980d2bc32775a59175014347c7f29d9f81fbfaef71f0792c5611cec04cd5a48ffc3f815c1a9a8cf86170230487652c7a708f28a77da487a3062b234c98d7fded963d18d6603c03e23d3b6644ab97a1044862e0407cdd68540b94e5b0302047c435bb500673065023100be9e972a634c588753c8a5dc48a2291b3d1c7e9d6cde5b64fecbfb7a8f522bdc7c17952352f69a1364d88fc0068c514b02300c20a61270cff680e425f619817bf4be9410c6b18c7e6233266ba36868d77f138a36fa3372900a92efe8668c243c62a70302047c435bb5006730650231008117ec08aaf9534818b92adf04bc0458e9a3f1e2500e59588253fe62a927be6a9fb6b3ee5f666ecabd12277a4b3d834c0230614c9f5fdbc2bfe9ac505cea0774f9e7d8c65ab7769e1111e4cff5320b627c662f654eb0f01b6217e409c64f16917f410302047c435bb500683066023100dd51643b4c81dd04dd96901efaf200491ce4cc206f9b0fca5e368bef615495b37684fc5506976809472e42b24770b66d023100b420c0dc89e0bb6938fef9d3594cb7107db199a1538537939bf7609948711b1c97ee79c0340ba628bd27dcad214a50a90302047c435bb5006830660231008a33ecb45b94e0bb0eaf58f1f7b7485935ece654e4599c110023ee4d60b9f33c43d7cfbfa10be4aedb123a4e3e0c24a7023100e0e40695a66231c98aee2b71bd63fd0b6a8dc104d00c1ec40f6afa0fca0358dc42f0110d9de4c7f64af345bb1bb0b94f0302047c435bb50066306402305a2d282fae63f26d7c29ccbd97a3f237896ee77a565f09c2d4d88d58ea751ca636701d7e41dbc0469dab09ec2217c1b302304e3881c7a4985f8c00db95eaeb9a236053c6e51f16ae59a1f34cb1665ed4501de5390067743e9687eb769047b80478310302047c435bb500683066023100ec1b02b25d1e859a1877e8c8849ef41152261868463e1df652fc513ccacd768d37c22863daadf61090825e4a7d6f740f023100bae15588da73b8695a9da399bd3c2f9eedc9ab1646cbb415576e407eb2c816220fbe4c34f491868edcc0ecb0a34c16550302047c435bb50067306502310084ac83ddfb885748ef395984f40f00d6c0a2e191b6a6c82ceaf1c53a2cc66e9611ee3a5d16050e96812e9bcfc47042fb0230286a6e5cd924f5514fe06fc17b148e702ea5a2c2d78bcb4e94d35407b539becbd67381fa5a69e7c48c9d8d39af9876680302047c435bb500673065023100a2d7f164d4654c0a2b9cb81a9409f76f5e664e4665408d341aeb535e68cbe9ff93aa10c1a897f058c391803e692317790230383faa0748f2af5229242596f092ff4990de1edc09cc66b26d917a17d70e7c2f177a6f505c35fa6f6252f54bca581ab40302047c435bb500663064023071f76e985a7c3b705ccd398fcd0bcab28f520753a8656053765eb3c0bc6a15ebcc02fd364c38b48faec8fc58f3a981370230796439003815644764193542aa73ea3d885cbf5f3ef567e9fc165ae66681e7e3961a6b11be03b3eb23c7fa4d49ea30350302047c435bb500683066023100c5bf1301827af465594b4df3fa278ce9f9711fb4df0eaf6a5d7bd9f3231ec10073f6a5e0f3e7a116d3564faa6e60a325023100bb6ba56e050712cd6626f660feb1e1ee13989ae41ebb5e18295dad6bd41f1111cd1849570026fa4f6eee973924e923b40302047c435bb50067306502301ddd462d2982ea3ab92614ff2d3c81275962530c5d8cf42841a0673c963df609256d776a0ae7904e0f3c4d0c1c680c52023100c7e3d958ef62a487d8f24c66c0db198e0ebf890c32eec02ff3baf03e34b814c7436a436eb6051dd146e3ed8bcb228fb10302047c435bb50066306402305064c83bc72edc0b80c08cf09d7d1b74377e89a472ee16048a6aef03ec95959c9000739abe21c306fa786189a04a360c023055aa88ba075d5d6671786ab4db3c5c66f6bebd1c1fd7a1b181232893651048cb236d5dbf89653d1715200df09cf84ce20302047c435bb500673065023100b4d4993a257ae015d78782f63972fc1c2d14dd00a89ecd4c0c39db0035fe9f356318e0683b7fac39b68a60fb5b87b4d40230011fb735b1e50d14e806e9bfaf196f6548e45b2c29ef1e00f0f6952c8c4f05aa52764748b643205cb0d9aae2447a34570302047c435bb500673065023100fae22df379ee7d81c720afd98645499491033b3d9f61e06df7e9266ae975b3006c3c22fbcf2ec6db9146f1f6e6611e03023057a5e61fd3ae68b95ae9dc5a605e964045cc39f9a6d3e99497f3c7f445e2da1d8e3c1c3c07a7f2506371af991f7c086e0302047c435bb50066306402307aed611ba2bc0f0b0bd4fce644ad167f5ed18f88a484c791ea5b05741106326321350ab8beed2e13f4ee400679772df602300ad5464cf340db9b4dfb65937649e5cd15e18786c00bfc24c0f4480922502db257fc3d855a718b9e3887143556fa7f0b0302047c435bb500673065023037b1116f9a7cb3fff7e842aaee283baaf63cc7d002fbab8ca0d2088f8cca751dba66a45d2b6832c02ba7a4498a585c8902310082974c1ef039bc5c557cd451c5a4258f7a0faf4fdb81ee54699a749bb14d2ff7711a101a7f09c7809ca38f935002434d0302047c435bb50067306502306c3841f2fc0dcb3ca67944d33c0faaaa8738835039629636c3505e1a60bf10c8fb97bde74b18248102aa4e0709ed9292023100ee95d7c121fe49268312f86a6e983ca37da0949d9dc2380763e3eb8859b30186c99ab898745de78b6c2e77f10577810e0302047c435bb50067306502305c5b0f0267f4688966f70f87b4ea65b5e3a257e217aecf0329cd15c1796d4bd08bc4bce8f9ec149922eeae7e30a220d9023100b552c6d40f5a3ebe2edc03e58ac8fccd219dc5e9a4bd905ccec5a395cf03f501091f247b44f52808b42679f8483a3b220302047c435bb50067306502302104a3f43b6e53b0145a24c44deec7cb06ce644298ec0de0dd34b42850d684608ab34b7e031c0c9d1490b170582eda2a023100fdd0edc2ccb1885009dd65ba8cb01514f3482698b17afc07e9ceb7e0b864108236bea16517db661a5c3597971ff3edcc0302047c435bb50067306502302ab41abab591e09498e770fb8c05223e74a4d97ef2afa57b698cb978b385801627038e7dcaa456bedc6be5acbbd986c6023100f00fa8f5ca76ffaf69dbb904d1c96162614a361f52ab17f5a5e3a00af879187d0f87f118f97b9611d69c28295e3f01b20302047c435bb5006630640230271fdb9ea7b5a60d106b954fd6ac6bc6579543093974f2a685abaca594378b44598498936bbd9cd8feb4ae8ed17ea17d02300ca1fcc57e90cfeb35e0396a517a87821304b086181bfde1f3ececc4c412c2d7a64ec48d5b66f52d9deecbaea05bcfd30302047c435bb500673065023008e015ae95217fca2064cee4b698cd88dac3bfb830491bebcd81ec8d3d3035835237c08b815bdcef92d6abf68f8c0726023100d941b0d440fa0f8a230c4015e2a739eadd382cf6cf3b84390e00f714171d613f741a52d59a7e99caf9d757fed4582acc0302047c435bb50067306502310096d244405789e1adc3d45394a08195912c0603f035173acd46b5a6147076dac89fea75bb096afbfe64690df7b1e995b6023033eeec137be5fbcfe3c906c8fee6006b12abc42c668e1dbb610d9bcf561678c881807e442952ac398757e7ec0aa7b2d80302047c435bb500663064023022d7b377c4d9a2b046a2d2bbe91bf16b826009223cb937129303e9b0e41a0c00431df401af9ce3ba50865ffb07a8d4e40230503dee462f6c6a491298a300e6b6e158310d4147ab1655f135c738cbbdd9a8482b1ea3d19349ddcf2ba6746f5fa094090302047c435bb500673065023100b7ae976e9fd005556801082c9124f8c20b107250002622c2ac691226885b0945528e0e353ad021da824106fdd8dae929023047a7d938742cb1dfef625dd91bd11f90a1b540c7b8628b99c3c33e6a7da3e6ea278163d53a414187cbfb2061b8dbf23b0302047c435bb500673065023100d545cfb2abb8023ce49e5b00c363fbf57cd19d3185827c548c00f5f56bfc1437aa99a7639d0288e56645e16d7d1188ba02304e29e54398a2ce71eaccafbab47dca0bf91076b4471bc31c350522160018b0070b6cefb933b4648ed247eb6b96066f780302047c435bb500673065023100cbf4b2bb72eb0b8944a4e572b89e9356b0e48c807a2511b2186ad63ae12a91cf164b782d7449ab3a5278f4b4e4cb1d7d02305edf3baed3c48c067636e0aea783560f12dc46eea4290f39b55689e5de9c04dca0d5c9052791799eee2b72711fb5288d0302047c435bb500683066023100cf70c3e21de0072511f0cc1614471a3dca1429f395b2269e0350d7057ca95b2e1da9b3d56f13286bf87c5f943f39cb67023100db6460b64f04a15588365ab8ec8bace3b0fcd83bc5ec1bca5e3ecf1181618e179e013630df729a9f9dc49f036128c87d0302047c435bb50066306402302857e880b30a19f5bd0886853d6cd5e4a7033ed1602b77b8e4a0da60918c01e679d638d81120a8ac09a5c137c971cb080230613ffaa3e868d6970a2b845c99b51738700e3b76d270cbba1f726ea2f4f76582ff01516c0ded672556895bc21f0eaafb0302047c435bb5006730650231008638ab6140952818ec49b985d93bc1e589fd3cf511409c84f6b581f4f8bd9b973f5f1a5943f181c84154c1a11f0925cc0230326f4463e017fa1e7bf67a23a04494163ee6af61c1acf91fee87a9698ac0e134d83398bd372f9f2e9eca619452f69b9f0302047c435bb5006730650231008c9858c763d87cc0e298988dbc9241eb2f30082198e2af134fe74ba36523afb69521d8431e24b6fb34239e0652b1f8960230169c38fd4fe34bb9614d734ecd07020f348e486cc50902fcc090a0f2b3ab0e71e8681f3a4647abec6d79da597f76ffb50302047c435bb50067306502302249cf51477cc36c6f105d15ceb95f6cef5c45aa7301e293feaa3b36cdf096bf95ed97a368f6bdccc24d7103408542b3023100ab5e0b7c7d19df736811b3dfe3575415d64876360c09d29460b682a52da48afae225e41a3100d966472cb7ddfa777a410302047c435bb500683066023100ffdae1ba83fc3150d02f099bdafca272db106f8a61e5cef0f401ed022ff76fc4da8c604717a1b0b68bca78430304a3f20231008394f6aa079b2873e09df5b385e46ac3bc2ba079f180eb8937c108915a4e283e056b82c1d179964629876747c5064c5c0302047c435bb50067306502310093731d1ae907a0e53abffedf590536e98618f302383a3a862dd3d60499d1de1c81bfb099d73194d634e4b901cff70b2202307ec1dc8c6f5315f2c15434c82197e22d136c51a2fc32c486cf083da8d2af640ab7f77eae6392372c612088f4ff51b0cb0302047c435bb50067306502303e6995a90df3d3ce6bd8b4f11f37100597f80734eac75670b8a9204896576c2059d42c54e3bfb9a9cf070366d2e24730023100b3cff97ca76fe571af19dc8fb260d3c580ee0408f0781dbc242f5a6e8631da06506772f364674737ca2d9de68e78f29b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a0ddfe5763de3ebfbc1311436b21c198603131de4a58368deefbfbf2d3bf256f6f3906ec4ecdb1759b449907fa68cdfa023100a58123543f6b3160b497630ef37cc5ee19f31e9e18cf0fd1d84107ff9c90557d62b1e539819eceebb285b262ee5edc9d0302047c435bb500673065023021bb36d121d8ca64707648c1514a2878eece89ec29137e8f08fff4c5055dfd4baa4a8307387d7de65c775f2fd1e2a1370231008e51dccb96a0f676638125b6023ff7e74707f6f6591a2ba65f92efbb11241e02d44a4f6b49f855eea8302a5888f9e4860302047c435bb50067306502306840d016a87c0400c21958a49438c70b9c2f7651c7bb70c236f6a2fcfa9bb5bd2aeb95a8811e4834d382bdb888eb898902310081e661fd150d2ef8185fb557a97225f76a4022e4752d61b82b53e2d00df5f2cd9cadd5ae11957eabaf60434a0391a36c0302047c435bb50067306502310083f784dc5edbc9660987f21edecb839af20ce44a84f31e49c4fd40f510f998ffdbd6ce0e0468aae79123f2bfbc3d943f0230570b66b30500f37b45d15380009b63d0213886bc0f6d8331bc5126166159d5a7970a7afd76b298d824173ee0a2123b440302047c435bb500683066023100f50b2719e8e2a0b83017e1c2f14d9e62771d0633a91e847571c9b48cbb80052088541420773cd6e6a8533cd87bf58f75023100c096e3109f33300b58dafbe9730f3aa078beba45032ca8bf78a3507063369194facc5fa6f58167e4088542c468240fde0302047c435bb50067306502307e4c8277691f0a100103bac40abedc75039815ca4a23e307f3176d9c5dc7394c2d73de533158be54b4c31ec34ea5f854023100d8193bab94a755e569caf1ddbee194a448b85df284722439f78e136790f24001f1ab6751daa1ac4b558a194e9ccd92e30302047c435bb5006730650230282badee48f9d558961dc8e24ca7bf802e192241120057f3828220edf4cafa1aaf6549e7b9feb0c4c48ca8c1b6d49d94023100e23b96649f6c9fbd4990042921cff2185f903620d8e24fff320ef80faa51fa14cc80973e870a407f3aa255df6358a29f0302047c435bb50067306502302ba84cd2beb58a919f8b72b7f8e9acae445b99c26ee33c3d4be18d0f6e86cb3311ee9f196cbf35d9a891e8978368dc03023100fb9e4da437341e35b5c1b2ce5e7daafcb1dfa69291051c50d6355faa1d313fc16b112a884470eb5ed9e2c5d4a511875f0302047c435bb500683066023100954da8a10a273c90fdc85160c14a8ea05a9c537550c7cb4313c9d2f51cfd4ff2f9898b85b52ca23e138c545877ec3a50023100c719181f749f25c71ba36d5dd4fdcba27490de0bdf738bd95a1babdfca013811c8ef820b2a1827e5a8d94365b4bbd2cd0302047c435bb500673065023063370ed63c0d6b1c2e3378a809c09febc6d3bf9bf26697a3332f72835c38f228c4d100dd8c59c667f3f8fa503046bfb4023100c36823ff3c32c5b1beef7f332adfa1c9322f51b9424df53beda609140395f360959247f04094db546a204383d3a105ce0302047c435bb500683066023100c9581053ebd6801e6f09298231758a54a67b39bd92d2fbbafb254a8b6c1f271e264a6adf34b8681e7c4bfe9ae45b3a2c023100a68dfe1b764a83c090b25adf66893615bd0bbe87f9019a48a4991d2f94c4942fc1f35a972044d8d84bfe42456d4be2ac0302047c435bb50067306502302218bf35a4a04f8f5f58226c877a2d6d2f6eeba7361445d316e570e7238054c4738e137013601187b19eae87b990605b0231008f069b5811c1e79816361e596a0938a6cced07760b331ea188c1e1cdae932ce2588a8960960cde31e7b104b81ac99b220302047c435bb500683066023100dcb9c6df7168e4005a6e459705ae6d1ffa79f7a1d34492f2d5c908c09a140b4d32bb65c0f95f2d92a4f59974651b4724023100ae98d840beb046fa30d98085dfd13c8fd5802163a67efbfbd4a97f9e92a86e7bd0cfe3879f03af20e96759fc495f7b410302047c435bb500683066023100833e8ac7bc82dd0c56569eee49932a7f682dfa79e1cc1c38d032a4c894610b1be4d4df89a4b7c893e8964b5c2ce56def0231008e425bb4c00be899d2e651c72d6a775fd24c618419fea589e5b261f8227992037c7c19d5d66582419615d72ab14d3fe80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f805c4b31725b65fe09c68aa39a2c094251de15b738adb7c44da1d9279cc9a0e172a161195925a0629275f931921aae023100f082e95ff3b4c26631d679d878267374061f1a59f23a1f2f6ed0accb7be068d4af6c1a18326cd0c8053084df137fd1730302047c435bb500673065023072f6a151757ec7304b312d1d3f5e47b8a69f13d3dffcad464099be2158266d51220b2c28903968cb2d2481f4055bcb2102310098c4efd984025a730ca9ea125b8a31a72b54b822fa67ba571053f65a2b499e2c7f0d607b503450d78479ec56060ba8920302047c435bb500683066023100fbeb145346cdbd43eda4b1360a890f5e83fb26419e59694dc795965a0b36aa6263b34b0f7c513c766688bb954e2362e5023100f18551f02f173123616ecc8f61a84064d78d6ac341ef14f486e51bafadb0cb7726a6e32399a8857c9dbf84a6c1d4bc250302047c435bb500653063022f5b35581aa8e0fd218f1981c572d4a797f69535d585cf59751dcef7967b598ec3df50c5dddac5ccec7c8b7565e3678302300826b1a89882badc3da3301560fa1d9ce8a97336c41f3a5fd356a5e56577756095d177a2ef583f8d41b730c7b0b0396c0302047c435bb500663064023012f1d172a232e9a5eb739bfde5a77337664e532b374dd50de5f6ac4ec95f44fbf3e99b6d33a07ed6ffe51e170bf7bda1023074f699494aeab5cec22b5c46fa3d43273932b0e4d61a61cbdb6cc65f0586083c56d503e5139e98e0743a29d4d397cd020302047c435bb500683066023100d592f042f16633260eafcc0b7cd511208378aa5b72963cd094350c2046671a1dc51748a0a88b1e64d67bcba691b050d2023100d2b291d610af10aa100dcab78b6731a4ca95d7c4344bb48f9de2092d2bbac62867daff62d552f8566f8b80b19ba51aff0302047c435bb500663064023027e0da3226560ac8a3845987e81efbe65f5410a45f52b00b3be5ab47fbf5c20e07a76422b58aed6d0212d50c6c4615f8023031425414fca09e1693eede3122654ee5511a5e7311d34ae862070d9c9a55601dbf92a52af8848959c2f3650957d2d06d0302047c435bb50066306402303046c1b0b83e5e07aa671ccb62a9319df6e52accabc90b117e81cd47ab57011bb08903bd38e24cd68abed6de819e3fa50230216a50ea0be7bc9a9132b534a478ceb7368c1bb0e67554b791765022eff0fc2c1c0752fc979379a3c5a98350861e058e0302047c435bb5006730650231008b1230aa3f33ec810c6f6da75ba40389d288f56d5323a69fbb03205fa59a95b4a07fd7084fb22a9a98d92fbe2e815b05023039d9a8130b12925a58cb52705f2258e792564e996093313cdd423ee71815a669783a1ec547976786331f7e6ec99acc660302047c435bb50066306402301e5358b12083e17706f492d3b0c3d8ab8765d664a68160ac5b89a037818ddf2546a8b580c46b27b9346ca80ed5f2459702302dac83c7cff264489d2e545387448bfdddea4ddf80954eb2430d2ca4e40e4d6657d9647a5c7a20e24c1758c50f868ec00302047c435bb500683066023100d01333266191c3b65ca769d8e89219cdcf9832d3e6324dc5e4d19bf22efb8db6971712c4296015a6367508dd0620593a023100fe5c7d35ab6652a142a60cb01b6a4be49dc44b003d775479b0e31d80612332005610b6dac3a0a57984a5477029f05b170302047c435bb50066306402300c7567db4b952c4c2ff0825823f3d19c711cd128dbe84bb4720f75fcab8bbcae701df331d89aa330da239397cbe04d8b02304d3d66e014fb88a2cf468c653a67096cca5017c435b835435682410b7df558dfa3b7c133c20aab0857a8f640af5d94270302047c435bb500673065023100b332ec4adb101a6255ff9a9c9ea783aa5871a684598b7428a1dbf9db963e76b5d6998acdd03fda3a1859d351e332b57f023058f58c358efe7ace07fa07ea3c9078b3c4188b6ccb5facc89065329c0c3a48d08511b516919e627a5eef817d381c9f500302047c435bb500683066023100ddef624cba1a7e544e9622fddd25049268f7bd3ce20425a1feb07efd279959e407b42cfd534b85f1b48d0e9e37a104b7023100b146863a908e0982afac0cfdfa46008c77473adc9384b39702228a952d21d7431e5b5c353ab2d29c6d1af943bf348d030302047c435bb5006730650230366abdb8ec355f073cd3324c368481eb7b14fe1af0db4b793952dbcb2d6967d0a3b090643a28e64ab5c2b58069a935b5023100dca79cb51fe1ea50fe35e5cd52a105092faad7e8b34df3ec3aabf3f87c7ff3f12b99bcb9c8e24ee19ac0b7c4850f4f290302047c435bb50068306602310083aff83ae7994af376b5c491653f11de22efbfe67fbb553353212939fb22810ad7ee9963e25ea72ddfdaa0a56c56f63302310089b83c79eaccb16b24343dd8408667229237e08951e8bb020824af6b8250e556274987d98306cb17a5070baad8d13ac60302047c435bb50066306402307866e4e75403bdda636b7e768be9c865074ef2d4e280c036545b97bde692f4522f4be9739f979dbbf6a112e0a16b3a63023076c331f1b4000b4daa3e374856e1c38acaf8b05c3b84c4bbbe130e6989dfb90ea6943f9ae6691b6be2380fbca3c7b9520302047c435bb500683066023100a9e6ebff82b7ef48d2f27f0b834c064d522d10e576614105cef8930375607fd1fc495a67c9a4a8478c798832cc438cf9023100904dc00feaa58813902163752409d7fecc00b55d6772ec8ed3bb34a803fbe3e2723dbeccb55d1ae9272627489e6e79270302047c435bb500673065023100d714398cb837e42911f767cfe36e0753c335e5d3c621946f2a1da718b383e786454a2205049df5551024832df7525f3c023007eba7f6785c405f97b196ea4bd83d8550b6e16b6c0c4f76c3efcbc1aadc537fa613027450ef8b73ed74221a761111050302047c435bb50067306502304e92a25bdcfcca1277f8c4542b298d3a40f33050c9c4b316c7d00cb618341bb73422a0c92f048ef182bc163e594aa28b023100804da1a7203385e52c8a07d320b993c9679b12aeb552a7e9292e42461f95af714e55f8a663156c37eda6353513212c210302047c435bb500673065023060258c355daa5d4248bbb0751e9fad338ad41726d721eeb314efe37eb8fb424a8f06e15437d73db1acdc4faef76ab095023100f26e5cf83de9ebe9fdacedb79668bd3b967ff5c819f9b273ffd2980db6b6097f84e6c008a5674db65d245a5502d71b5b0302047c435bb500673065023100f21cbd1ee4d05d36b1fea4d3143a3ef7b9069e8eeeee130f807d4ca3f0aa69cfa9b68cef65b0e2ac07ea39452fd720ef0230718a776e1c25dbc45e4ca3b5b3d3bc1e29f8e4c40e7509fe0f3a8b1eb9221663ac33a5cc1b6aec3b64143a8ab2c1741b0302047c435bb50067306502305c6a935ccd54e9f17aa6cc84932ded4fac5ee8c80f367911a328744db8a5d231b6640c163fbd8ee583e3f6b89979f457023100d22bd4e8939cb90999661afe8b34e74e4d99e98f04493a00a4cb49383923db5eb36add9a6f70ffeb5afb37ef74d252a10302047c435bb5006730650231009fcf25f644871303658c6ab0c663538497c52e277738aeb2b1895940895444b5b38a832e0ba4d50d549bfc15eda59e70023077871acf6ed7bf9a8dde21ea5dcdaf68b286a65b8abd0c6af7ad671b91f02dc0d1f43d9d38d1356200e86928e38744800302047c435bb500683066023100e1fdabbb8056c63859495156497194c181082fe9f6fcfd104c2b2a02bbf594ae194c51ea4a5c7fe5623ba647c7564f95023100b02eda82604f3bbc6ecfa303db50c80dfa96dd4f7655bd1ebcc19dee6e5a3bd6771f4e3d6e2cdd15dcd0275aedb5eca40302047c435bb50066306402302e3443376625805e11d891b1b4d9d2bd46d81e2d80f1311c877d73384a5bfd6fad9497cb43d2968fd4dbfd73af13315b02307e12ab81b90440cee54d1385aabf89ca73100cbac47f9e30c70ff6106d2d515f00e6cac48934eb9a4324c33f5deefef70302047c435bb50067306502310094ae494054a9fc71a1b07dc19b547d21a764983add2fde98f243099d72c53f62f093df99d6b26531d7c403bff8a39ef802307da803f6f521d96fcfe2e170b652863cc5e9733a7583dac6779890fee86757f048c72e759166e3d502bb10deb8aa1d2a0302047c435bb5006630640230124d6b3daa80bb15fd316d688367abddecf60aaab922abb5340107a4816ede8b64e2a7c4e66d38643c3b504da5ce52540230683dbac2530d5f52285a34e31c9185ae9287356766627f3142be39ca455e8074408c88734fea56df900206caca74cbce0302047c435bb5006730650231009a3f9d6b6e7602c270c9d7f2cd36ca43a2903c3236d5243852fefed4923ea83c3381bb31ff71bcd07f22a5698a71c5d90230090a6e9c47bb74545dfe4a7976eb4e84d38f5c691e9eb3ecdbd29d17234c0e39fbb5f803a41ad6cd82fa71c46dcf15670302047c435bb50067306502300eadf4bcfe7746985897679774291b244c1aab0f20f6df1d415bb38e9971ebf2cc96842758626b1006b3a153b8b768860231009fe81e69e4310f6becb75d88197b0c2b62700b2bfaa2b851ec9e603f4f764a1826c38798655554b49249101b7c9406610302047c435bb500663064023059807e5e6d33849f1b30c71d9b453742ea4e9cc5b1ccb570fc5082f611457c21c1eae7991608ae906c890ea29b338c430230570a81ad22832f5149db532ba59aaaa12688c9762a9501ffdb736226d379aee9ea54838257fc5014529581c4b375e0430302047c435bb50066306402307d360da4b8b02f9bdd985747ead9ac0ca59de5ffe73b696af9415c378367fd4ca2ea4b8b43b0f23778d0f69c6721143e0230027cecf09072c12f023500e900f3350321c446df58b5c6f1274d4eabf3485a5ceca16b340918115af84f062d134e99ae0302047c435bb500673065023100c521b0a2a9dab101ac12e04ce945a5604d8c4edbe6604e1c8e6241cd00c501664abce7bee10724d611f9c8d21b32447d0230530f83a3d7c98fa31bda467f6a08533e359f20622a7453bfaffa0875f0a8aa3e2d6353a4cf3d213b28ce0f4dbf44379c0302047c435bb500683066023100d210fd1ecd732f47330e49fc73b7d55275c020592fe950f4c8adee40363a4dd2db1f821f1b255b03e12090dbebce6e0a023100d31f6d983a2776b804d2c6bce04eb1c51dc95cfe96daac377919d69220e58e694536ad455959baea17315afe4fd9526c0302047c435bb500683066023100df672ae82e0d8786b864eb5ee2460bc088aa8d19d011b829ef4cfbc383a6f819213b1fcd1066c4b66f8e1a2ca0dfd1bd023100c79d65d9f10da744211b2bd911d3df0156655271210a5be31bf8ad3b20b13e2001eae0943cf58266a2d5a226c6aaa89b0302047c435bb5006630640230754c8e10bf45b979952cc813f92f0ae12aa6e309c0b3af00092d5665fe35c79606b1d51ae558b3b24f5545de0bbc005402304e6ad122f6a23238710a8eb8be5c0f1ef10b3104a67c42a09be60bbec3ca1527c91fe4cbf3d0586391ab1755a5c1ad8e0302047c435bb50067306502307341889c6f7bf806e56ce9114c94cdcc847a9a239e1689541f183d85013164614fb56f3e88d5a6e6a676e00e21a77f55023100a55944f6d51cee119c72ab45920c819a1275841ee3da9a4cbade198599c4d480044685996655e386e534b90f545af0f90302047c435bb500683066023100b59e13fa9d05b0ca0775f3eda8e099d4916d1257a0a4f55429b23edd4ec35b1799fab79b614b5c3faefc0ba3fe59250b023100a3e36641bd001fb27b287b738634cd3fb06435d73aa1a8461c1b59f434e31a3a1b92e7c0ce47015966caf51a2ca8a4070302047c435bb5006730650230458f6ea33af6c68b910624f85c669dcb31dc931c42e6ba36eed34b3be44c51741f948b1102dbc2662e292b2335d3edd7023100d384f5a810e7aa2d7d9edb571b8fd7ddaf44b2e253708b8bb73d7e07012635e97ce80cca8f63bade80e5ad4712c5a8230302047c435bb500673065023100c3eade2e547a38557ca869657fb27bacab5bc4da7d1d6feb1a4cda26f6c52f24e240310feb4c25de541525ec219a51e2023012ab11dd7dfc8e601742e2f9a41cf54239b77f7ae77c2b152c1b2b93e45f99b96f525e336c2188c0b375d860e39e893c0302047c435bb5006730650230083e0a56933303d6dede8483738c7a119f2d73aa0587d1f492eb7110da74cc539439bdb0649722317bb11562f127df34023100db055395859ba8421a8c0e95c6210142c80254eb3e58855c9bb255dca6dad155a7d5d1e91b45d1e704370b1b49a2490b0302047c435bb5006830660231009916133c3e58a5c49e897509f5af49ef608fdc64fc36ac9bfb59084968c17d1dea91cbab40048018dbb8e84fc7137977023100cdcd3591906325602ca08075c078e787295d038f79775eacfd1eb9ffe73c7df8a8428f00f27b9f3f41320e4ca61e97100302047c435bb500683066023100b24dc08b4aa6be207f9904c93876f26a8f7548d031e972694264133f16df1ce27f522532bdafdd1a072032ae781f06bc023100944d63dd047845e33c6fceb9466075218000a5b48c598f53ae864abb836d9f8e57103e30dfe62e8097ca2b076b7357a30302047c435bb5006830660231009378a73175197ac64090fd9387130ec927865a3ea625776ebe4cac5cf54754cf8bc85b396d5e8ecf5e50edad541c9e23023100b079c816a25ea122d7e0d01ca01c5e985caeb7c2bb4d8490558ef1b3e7a9bd60ae3a944eb80f22358c4e2e7948af0ae10302047c435bb50066306402301c91b7098d9a750e5720cd604ca65841e31f2c1cd430adcc77c5d66212bb2b033d78cbf365f5700b79eacc230d7fcbba02300ba4318830dec24c3d7ffeae2effc46116361cdf2ae19261407c802a9baee1e1c71a5346445cfe819545664b8e02d5260302047c435bb50067306502301ece547f5f9fcd1b864afa01e7495ef75b3ceac30b345f36e48c1636f698e9d936514e05a432afdd484f228ad7de8df8023100b9146ea469560c395aa90e772f8798a5c3d0fcf1f137f17a78c762c3bda68d96ccf3aadd4619bcfa0d2d5f58b4381ba60302047c435bb500683066023100906ec869305ddf92bd08acfa8c89ab07b6cb2676a32f3662c29a023d8567e6499c4d25d72bbc77ea8368e3054a7b99c7023100a9dcdaac8abea684be4eef91536f2919398b34ce22e97dd96aa9fc8024ccf0bd736706f2920076b7865169fa06b2e3240302047c435bb500663064023074753f71ef81b281c770dbd5780195118a0091aa46b12b3fedc8231df2227616cc9b660062833654321219dcc7969b0802302554f34a0f1fbcf11f007a02baa9168078f3f5158ea7f46ae735382f7025122c65cdb62c822e0fc8fd1cec0d32f69fd70302047c435bb500673065023100ebb845200faa05cb30deeb5c9c2cab1dfc8d1d214bdcee7e61905acd30f4afb219f68b10731cfa607cd4170182295e1502303f8195056947f54f9c7451d67c37f94e36627132371644754338a9bb99f7ece42b74b958456def50bee226f4eaa508470302047c435bb500673065023100bc00acf756e604d68aea751945de29d260a2a1bc2f612290dd3e47aae50a5584f0717ca1251ae02ef2227c1893bd8d1102302ac309a3673c374fd5f20f7f86689e62857f8290fc3279100364790b73a2f16a89537ae8e1240e986f57c0e010704b0a0302047c435bb500683066023100b638e5b446bf9c37758c54d0816f5eaaad632e2ea19d846c375b1f669eee0b4b469b019f099c636a5c010df257ede90e0231008ea9d8d0d020074668438a71f2e440ae542979b3d106084e75f380982fcb97a51f0067688c35a9950fe74f329a2aad4a0302047c435bb5006830660231008691c76011b2f49da0bbd1b18e9bedb1a367f83ed70d6f633d47ae8515a2945b039d5efb6e3720440478c49d6e848f11023100d3b9902dfecca92b41bca785142476d9208796f87ba3acc54ef042f7b1005feec64976e8d41758e1ee63f173fecb9e5a0302047c435bb50067306502301fa525c45bd71a63e2cdbfcf7a93b23f2938aa2ad4add18b3fdd6e8cffa624df95e4764c064f1ab1ff480f4fc82920c602310087207b67d67cc09fb66a9429438c82648361a6edb643be46e9bcc3de753c82ea4624fa61a3e873f44b33e78e81d4afb80302047c435bb50066306402307c0d69a18bb9f9cf9766d56ac8e6d5d5c35ebc9260e9b3b73e0442467939110d34441058d594ef250f419ae9039266980230486f90922f9868252fada2e77391984a461423b66748c836361f852dcc1e7a4f928f8918e91c46ea861c070c39437cac0302047c435bb50067306502301261a75ac2cd330a3a1ce1759b835e5d0959d08965c52c2b00972d27fab84e380f11d624095985e2f4e1e6a7c3326ffa0231009bd53fd7c7cf92cdf9dc2456044475047483de0896a79bd2fc74fc122c7095cd28f290f82789229fcfe2bb49cbb613c90302047c435bb5006730650231009385c6192b0df22e3d81aa81a255f72786fe5cf3ef6584242dc42c8ad367fb647f68e1216450d9143c9999ed5bca611c02307415064f5dd80d78e3664aed2158a2a75eb4e3067511459c9b2fba68eba075184efd9a2b5057e715f81479b55f60aaf00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099dbcbae5e3360e443385ceca84433fc1bd8785ddfbf402cd128eb4161f926577bdf111563004e0f53ce76ff6a0869f2023100fde96220b39e1a02f947c4b03cd51b6a5a0083c4d56a3a97d95db679dd2a1ccb669a3bdb65ee5965f533157b76df59160302047c435bb500673065023100ad65f3f73c7cb684ccd17203296542bc211e39de8e0d371fec36ba97f3790605b8a66a4f8623e81d9f0d7005464cf51a0230065f56feb04be6a312b40c1dfbe9e573d51d650975ea328a624204bdfcf03507dc3a683458e9d20ba83ae3884d072e860302047c435bb50067306502303a686790b9349462c953998388e38c2f8d0d5bc8cb9102de0761353ad1b09a5f32ef9e1210ae38aa2a1454d152eb8df3023100def3aa59538095135643b6dc1c7cc2d0714adae51178b41139a29f23d3605e96b5dc14a61bb01b0f2807c3a30a00d2780302047c435bb500683066023100b1152de0eac423828479cecdac567b080ea22c8ea9b32333773605e22c44773b79383a22fa7ddf91a5b26ad8d3e2ba2c0231008e070e09de8410eea731ac82a99afbd564db65761b999845fdefab24d08dadbb6362f575ed540d2ce8da235a26d5b3260302047c435bb50067306502306211aee3fbe4b39f265a3ce67982b8e442509eb1f79cd166c8da4dc58b6c9d06651ee5cf97b5cdc05d772ed906fd04d8023100838f8b9ed886cd811ff321760363b5ff9245b326470ac7bf8fd5ed3fe93441020e57a3ccba49a4c70e5fe735c1440c4f0302047c435bb500673065023100aee147ca2d2afa471882d12b45bf7f4946dd59f1af142bebb2c2b383b8e71a712a4aaffcc25bbe9869fed4906f42881202301de6e28d042c18ea48cfda16d6bef0f122ab1511b87a5e7d215961dfb4462a4a84ab6cdd2320da8b69873c5817a0302d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230434768f5c646c54bf9817b2d1638cf24634d7662dff84290d5abb3ff9d7ee05a57041eef90c4a7e2cd27d63150518534023100f012d108b26dbe4a5cc0a731b76ff6f692f2b9416045b1c5267c3d6a11b09f69b1b23411b334874b23d842a55dc8140c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce13ddcf23ff0bd929052cf71dc4c12075aa9f51fe242262aaf16c6aa5e8ab689fdd33e2e7440ec73129886a854c1f7602300b71ca7692755b4c2df35b7342013d784421ca71fe50c17aa8803a207e2e9c774c4417d06619fb6d8e581474d87fc8e70302047c435bb5006730650230476d770431ed5100470980924f1c9677abebb5f951f0b9919959236be5f04a5476b13dd9958b86e7817f441c87e0dce9023100e08ad3ef1da77bba2373df7604168a68f9604fa711ad798f1719f711109c494e5ef383944e25fe75bc0bab0093a4a21e0302047c435bb50066306402301ff4d039bb99568eb787185d0bc2340e05f63feb387b2b208e9a287ee51426777a00910c8c51a99cb67b09fe762a460202303f7508318620724a9b240fb7aeded9570ffce5bd15b00007c8dbd9ed418b5082d113bfefa0a9cab795dca5ecaaa99a590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b22b23e90793a18ef14a26679683d24f405e159e35ab86605dc2d811f058ed00b8a10b530b5939a4bc8df282fb46b52023004c98a795e2d6528d90f2c09633eb0e058b856c3ec264a268be9061ec0a9bf20f6ead13180f68a6c2d0792caae1df7e60302047c435bb5006630640230040a6c54855467ba26fd8d3460a189b8ff80c315e36b6c66a7e028a53f1f5734c8ad8782d11958d67e0fa580a7eb2324023026ae3f54286e256377f57c741c55cf6a31f5e762790e0d4b149dbcaa32e0f90842b5686deb859b5a6045b96318e98d3d0302047c435bb500663064023046fe605be6ce8a6fab08023833f15a8c76f2edfe4850210e2154e396ea08df7fb2410cbadf1c8e9e5f70f046a5455c4a0230189bd864b6624151a0a792f899792020e5ec14e2e5fa2198c304d5b9e5cc63d4dfa797972e0aa9f4a72b02b5db1680090302047c435bb50067306502310087c6d652b50950da5ad3e4b09eca9f6c61071c94685abf32f61b22c9863e1244a75f3d3b03d77e95301e958259ac9dc10230624fe9e877f53bb2d85a70118ef648a9454d01a3cfe4ca1dd4a34323e7a7aaa11420c2267731dbed9e5b41db7a4e5d950302047c435bb500673065023100afa52842c25e6ae5c652f835421523fe7b8f028aba02402e5aa6d087facb7450d949ed4b6cf3d364171033fa8bd58371023072fb61f45a8351590e8c7791e82c60dcaa86fbaef25618aff64aa50f7d7cc5fa279d1de27d302eef42bc191104f5c0550302047c435bb50067306502307497cad19277ab2e18be2278e844ef89dc0a6d7537f200b9be2d35b0ee07e08f9b78d1996bb25f69f95e7d06682e1ad1023100d14403d7968a16bcf018c42fd786fa38a1021071eb64da2d6de06f84f0ccea9f5cc2c44f5638cfb798dc76364337b2e90302047c435bb500673065023100c95932831c13d1f98b6741bcb7122e17560ae53db6b32de13da6a1c20169811b11d851f3f54c95b261280a9615536f6202301fdde138fc51936b52d32c606f9a7750cdd6374479531f0121a6583acec3a025e3d340d87bf0fcd9e4363cf63199cfbc0302047c435bb50067306502310083250618bfda306cff3649f290b10df972409a719f31bd2b4e440ebe841253ecadd80e33569d22fe63e5381e415420a8023030b710f36763d09b7c8bf9af1deb0d3b744e7978c374efa60884ca88024608210f83b4e47d7379550f9fc5b442f12a9f0302047c435bb500673065023071093baac711d192ad0398f88c48fd8ed063ae8e9ac516d8a1a73703f48ea34708adee27d2580433bf50d230ed3f3f1c0231009076221d17b84e0b71f02612894c9a086bde6f969609352ddb73c6f947e29168e318483b040781c4d789c4754f0afd3b0302047c435bb500683066023100d1983999956ae8760ee291eeb9fb384f4b062371772987db34fcc9451c679f8c4fc2538f41fb1e55ea01e74431912108023100984719c2cdb2cdaa13e5b5b9f6bc920669f32f4fa8520f5d7f6534445261ad40627cf255fa4098a5efd0b44a5587b7190302047c435bb5006630640230249c4fcd542029e435509037b5159fea2b7107535338a429cbe90486d505336c783d0236336c16c94cbddd8d67cfb76902306e21ee4d4cfd7266a9ed2230cdb73b2e4bb4d1c08baf88a8e07825cb226caf807e378e6837bef101369116a6cf0a77f30302047c435bb500673065023100ec7eed32e30e333b6fdffce89bc66ed61e7ba2af6381e6fa5f4c6df9e94130228302619b0da464ee8d7879e5252fcd7102307630484f4d40e8f4fe80396faea11a014a33b586f4d77e4924f376b9aa370ebf91ee7f6c62848abefa507ad03cff6e140302047c435bb500683066023100b5246568558ec7b032f400ea37d3d16680433e9cf96f8b845b58839ee57afa9da3a1adf6bf37a4c4333a3c3558948707023100a9c1a037d0d036e677c2f45a27346de423899bd59d9df496e3632a6802c0d03ddf6cef45bbdc399d00353d80a8cfcae70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d2f1923a10539987c0b74dfa78eecbb19ec7238b344efffebd232b376db3fa1e645bb052d37b4af4b790c5e9d299d064023026b7a1e73aea567b620498dc68cc032e9cf83b0ed35f1af6c99ae84663d459beb7fd39c27312f601e2b103dd764b65030302047c435bb50067306502301b6a66536e8279e77a6ce04e684e254740ac78c493136a5c22f878b5fe30e13d6d068ed424c6bdbad63430bee49075e8023100ad50c4fb1a99d44abd47686b00bd73384de4bdac797a782c55ee4adfba4ac3949d5d5772c5678a56f931874c46c4a3200302047c435bb500673065023100d175c935d46d2114627c6c2cd27a5f4dfab692f14df05d8b0c1565465422aa6dc575eb16d40a5d2d859b55abacaa47dd02304e5514dec736003f454845e0e80f57e3312665913fc21608882c7080494420cd32e0147f40479f4af71702403f0690270302047c435bb50068306602310095492aca22c721c1603eecf357994ec0002ad854902835970f4aa53d2be449ae92d01150e11f2ae33bf1cb08549b0e5c0231009170ba2046de9a3e246e914f1f8de2378323029a9b36d225386d548ee01e8b62aff085249f2ebf463f35ef6464879fb90302047c435bb500663064023018a2f9a22351f0914807250ad309c4a378786a2e5adc9324c3ce5548f5ef62c5b0906b17f29f87b4785c90f7b8066a45023065057568f1c279a3c62eadf2e8f5af42f81ea14f8f67bdff47b2b7f57fe0a64e350819ef653640e843b5f166645601fc0302047c435bb50067306502301e4647a82509ce1b7d19f7415c08bc0200391bda93e7aee65c40ddf99fedfe415183d9ba833d36e5ff3469f7c8f58e1b0231009f7bb66b5d2bdf917669622d27d2dc3cbdb9f1066120801be10ac3f714ee989f22d505051222ea6b25581d41e60d51e50302047c435bb50066306402307e5b4db637db7b9caabef0fb7b0943625361c26d5b331b98f638a9f76c4f4d0e365e972db731c5bb5272991a4686fc9902302be5a330111a50ad6e8e1b5464a961bacb574f7646188615d652808fee4af43aa58fb9f443890b4be49008bf136b35100302047c435bb50067306502310096c742282288b5e8b7cc3a5167431fa83f8b5d8d024260cf862e9a06238d2748425d9e7e0dd5765a365d9319c45e8dec0230351b2ff179efb35a14c0ae971939451955098f451526f119c67de8fa7b337ef0f0771517e31cd359d70e1faf8f24a8aa0302047c435bb50068306602310089b514a98f935cd1318f507c78290a987d074fc477f4326879c6ed8210f17fffa3f4537784abd7444bac11606158c05e023100f6fc533ccb8d0ccb447111ddf88d7cddc7d1ebe9ae5c547679a204b77da567b124cc7fde49cbb5655090ee72057d44a20302047c435bb50066306402305271e1a716a30db3e83987ee3de26b9639860c3b186b643cfd7640099f27265e5e0e13ec3d68cc8a8b51b903ff8b26d202300ebadb722afcd507dfde5e816b37a803a6edc35c4b394b7d6e742308c2067e36c653376c03308debd131d404b9b3a0150302047c435bb500683066023100a9bbcf72b0d438d485416b9ecaed5ad64170ee8770d9513096a442155d35d1690ed04d7ab5af29e31f17586310f4047c023100b1fc8a75f84a1ceba22e2dbc2de89cd5caf6153ea30d8234f038c057cadeea7819154878ce0b7860a0c5863188d6e4db0302047c435bb500683066023100881cbad0a71e07db66244a235f9d73e43f98aac4fd0dc1874ca818e0347ecc54e5f41f4d618c99ffbdea035586dcdf0e023100a3eb0f87f000c24592c6e8d407b29394941bc5fd70f7c88a62fbec07aff5d347e1f4e5e15f6c49481206700ca5f920ee0302047c435bb500683066023100aab97f91f6364e7a496cd2fee68445d945c28c3dcc6c1b7f76c7543654b89083983ac0bec4c15249c77136e6913e324d023100a111cb3229125f2fbbc07065fcc20c1ebd377fc181ccb463683c573010dc4a1ccde9bb47395f1a570d5fc64cf73953a80302047c435bb500683066023100b3d7785cadc406b6ee72c3a5a5d8d3e5ac858dac16c3a5914162e6de9a8a0de3983b408a1a6a4c721e7ae30f2a190f6e02310081114c73fc52035e2d4208b139a1f6fff1cc9d5eee4bcc86365d2f4180891bd4b9ef9584d00088f6641fe1c5c5e4eb7c0302047c435bb500653063022f3a47b989957738ee6c7807fa7d04f6bc1ce7a20edc08cedd683b3fb0fc81b376f0b94e4dca082c388705de8e702eae023014d731cdbc835d99ff8d4acc3b02c09a31e72b2c4b0d2e5144d10db943bffc8fd3ab9e5bb1b1dfbad2899109d024d7480302047c435bb5006730650230019328c61fe096d3db38a8fdb542e341cba634b4693a5211ca02637d86bd6a5cb1abd00e0f32c83f4f091b9147f3daeb023100b22c51a69af75035caea079cf5ce85cd8a0725827b4ed379afa32420487f7e947b01a4a79fd0ce9277f24395f5013a980302047c435bb50066306402301925e90bdd047e79ea88e9032c4b77a4ff082d4d6b71274fe655a6f520804a985a8680a73a545fed211356ad8016ea88023071b72c96a3ac789d02e56f36681fd611c5eb73c5fca1bf22c29447cdfbfb4f854ef55d86124e4b054543f60b26a631fc0302047c435bb50066306402305d88e3cb287ab7c10a036be375fa5ca5738a5cb46e18696e86a853cf6f93ff600fdb4ffb7e6ce6c34b623d58944eb38102301e60509b9d2b3ad780d44a5f265daca1b966b1e20c9c0e9eaa8d012f31e7f6969e1d517d12ca3d9e7b10baa1e5b4045a0302047c435bb5006830660231009ea1f8eeb6e2f0d4b78f6ed825218124ac87c437bd5770896d806bc1e69b722f1b503a5b001332ddb56a2c4d741c62e70231009cd2f9068ee27b9380addd5ea6d3a2bd3c1dfe65f9f63034ba7a3a6d768782b508924e7ae0081e86cff8975a9481155a0302047c435bb5006730650231009da5d836f6e4706a838b3b5c39424c8f611b00d3b8bd38622b4c061e33675aaef906331b65657c481d4fc7088a59f7630230435afd9a75c4d3c754e7a0a3f11f74d5fc53f1fdfdbad8af2593e90d52df3384b9da373aafb1fc2ad61236b0f6d56f560302047c435bb50067306502305d5983c714d0f0e03d211100dae5ff22e0bb4789aab4c55d253292700117f0ca509b69ad911a4edc76ab2d14fde96f11023100b0e659017db3f6b9322ed6f9830b15fcb78d7014ac2d7a3a5996b39615361735eda9b018bd66e1ff9d6ae71b85dc493d0302047c435bb500673065023055825eb219998117d42a626f02ac5083196f7341fb09ec070e06cd3afb04e06c668d030d21b73535ccb7b221eadd1964023100ade123e78fe8a15311aa60d570d71c08c9ed542ed1b2c657f1cc7dd5adcc41d5a0c9ccf639a9ab4258217a3c9f993b8d0302047c435bb5006630640230579b86246133a5ed2973721c7f68cd780c2eb17a9cc573fa113ef411e5ad8783a593ad5c42fe91d547a6cab5a8b4e69602301016ba9c3e7f04d195509757196a906ceda6da7bb24555c7f7a10b53ca99499fdd6819c8e1fb46e51ae063f5b7e35dd60302047c435bb50067306502305bb24e808f883c7cce8a939a906ee781d95672e19d409fa4cc4ef62f8f4a2816dc108e760f1acc39c668bdd6b312a00a023100df4f445be5c8ebfdc8cd8e85624dfd545397a5b611989c22cb74af09d60904a4c8013c944e5f2625f868581dd7a762930302047c435bb5006630640230171676cc07c3758e29c7032034b624517660847cc6183203b6615cb895d3e3dd64079dd3bae0ae9925f7bd013e497cac02302c2f44a4996228b15e84ab1eb279718eef373f8e0f0819fa6c2ab90affbc79970631d5237847021a21da61777f7cd2170302047c435bb50067306502310086c7c1a060d265c969a5d03bf3da4ced49f72af3657e60857a10cbdd5f428456e00ecc03db920caa2b5bd9813e410096023025f3d27bb6e1fb2b9b3dd9941d919098a08f8441c22d8ef936d1d1afc1aabc3fb47010e8a59377ad8eb7468de395cf570302047c435bb50066306402301942ce3c68130b64fe7a1c58ea0578b9cea66c130d9d230603a6b9f94485200a353ff0f2847553d7f30d4cf0c8d8b2cb023078e44aa576f541c1360cb37d86b1d58201ca354be4be52b48045855917ac345bc9cc339e0f70db581c39fe9a790c5a950302047c435bb500673065023024c3aff924768f2bcb1cd85c8acc03fbc8a3fdbb1f7f68fa38332f24e83d8d9a41059dbc8659e0df3662fb643315174e0231008e70741ab9acdcd87430d2af66cee339ed2d0823db1e31d0b922d1f955d6b7447e88d987dc269b3b26827ba4cbdd455d0302047c435bb500673065023100f5e64bca658dd65c6ed68d4b9e75876549371ea388a75013944961f5fbb770e3a1548a24883f47ecc647c74780cb7b0d02306fe9b2ff2e7eda37ae4e3b1c0c237b20eaf5619d29513f57c8827ad70c7ff5c0314c148d6b6f1d9c0d8f8eb6cb1ba1ef0302047c435bb50068306602310080e60b888ed2a4cc2bf625e72eaa06cfece9114c99bd428755f7fafb503fbb083d226010e439e8bda0e53fabb6b5efbb023100c48d21457dd2876c4b42c44216a4b809e0eee8068990f3ea786132cfd1e2a8c1a0bbba22423aab58d1a4ec8b9e8848a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2526b0e2d70398c33e5c688d7d14c911b2f30b9af0a2324819cf8bb9e17305541d5517bdc90fa8c9c7aad9b63a2e60e023100840773211d7029536b95ccf200de34a2c9a5df4a444b0240466fbdd7d81036b2b313a6771de48f3f46eb5efaea0c1c090302047c435bb50066306402302530dcb5dd7d4a36e1583d1b3c74ebcd74444c6bc9e3740513e15806849c1c8aba4189c514b074ca5c86f9cc19de856b02307bdd799827a39659a601185d0e0cce967a0516bc715eb4352ae71666bd8954c9b6cd9a2dcf8edacb522eb0e7ff3f5c890302047c435bb50067306502304d1fc639cf0e23cee5ef02dcc1549bc1283b6ad8895d4513459a8557c39cca13ebd9a1c9aea3e76ba702e6e2c807617a023100d288e2a9113b1d4709638f16bea3cf731c025fc0911667ae208aeb8b1b8e9d3bb2eac0659d9c716d65794f809b0b65950302047c435bb50066306402303f72861ff61ad0f30f6f26f93f0bcfbe4a11a4cce58dc9e02a6d273b1f6472b1a88d0f4bd9c0b4ca2537cfa4793d5c6202306dc072a573473a0fcbce7dc6107e8d4b17bfe00ed81de62d6dc4ddf35189129bc167af110f52f0e9bee34fc98d48403f0302047c435bb5006830660231009f5f576b524630b60f97b03d7e2efa1da854d19a25edb9c418ff582fefb4b33999d1b8497170e8df96fe7bb7735ad220023100aae00c60c71091e8d01c6268a68e45cbe885b5ed6824070e90071ccbc274d6a30c51403812b60383f80d2530c89b71230302047c435bb500673065023100a02914413f0f14a382fe1d621b667d972f55438c1464d7b95bf1a33b57f08a6e9d420697e9bae4e52818499febd5ef78023055213d29727131d4bde3c4901326feae4210d5564e1a5f9f59a6fcd29a0885176967f5cece89123a4dc6c447ce8629040302047c435bb500673065023100ebab0992bbc9a3427c6fb874ad4bfdf42f71108e7ebbef7b94d9afe647ba0e89841f589ab414d073ea6d8bb9376d79ba023022bd7b6be21a0a2dc8a293bdf1efd8dda7d2bd886e7953f25c3f75218a1c80b4e5c7b84b5ce88dba407cfe27567bc2260302047c435bb500673065023100927674f94e63379ae650ca7f8fad12d6544b65540d90c03b591dd614ca707bc75290549e1b4c88a86054d1065c9e51de023010989c17f9772c2065711a73db62dfe37c9e6d5d2a1d123e639e1e38b7b7b61bf169bc812012cbd6a7dfb5d70986eadf0302047c435bb50067306502302c0a8a4dbc1bde84846054d5ee552a3d0b24f6d2037205595fab089dd4c74252d59b6d6d5a4eb4f5ef2485ef85f9ca440231009ebec2fce4e5c3de7830b83c06a52f982ce75f7d331bd8959bc0ac44fd42e2e47bb99601fdb0f9aecfe90a1e73bd8ba20302047c435bb50067306502304004c092fc985fcc0582a6d204780e7cc97e47d2b84ea644b1767c0095d51723e34a9392c2dd52097ac24aaaaeb67df402310084e581e9fed62eab5c797782c9b1b19bd553632902bf73729ff7b96772ee4b57c4ea270edf03e4eb37969e94b57f80090302047c435bb50067306502302bcecde947dfe3691bd5682226a45be45619284fd332bdb276e8c7332957816aa986bbf407e9e6e2d8f489ae3e3f283f0231009a3fe00cf2694abdae64fa92471697978f60bb3bbd0d6cfd82aabd56c7067fa07005744142a92ec26759964792345f4a0302047c435bb500683066023100d294abf5284ec8eececdf13f49831909e61a38202a55983239003d2fe9275f8c6d33d1aa5dc061aa3498a1dece9cf857023100a713ae7c91261381dc42c15e8fde65e02e2691e7bfccf7de278217e9edd0eaa53d653721e1db584d717015efe573e7960302047c435bb5006630640230619f038d9f6b70fc7db23b2338c51f9974dd2f0cb6fb05b6c83057f2890decf486f1245ee96f424e566dc96ea460a3cc0230400dc6ffdfa6bce8cc6305cae243cb023651a807821575f9c3b256eb86476a5ea6c33ce27b0bf39e2ecc20b4328580a60302047c435bb500683066023100e3aab3ebb752ce579035be689706e9b8a494fa6faefb4a6198abbe6ef48320625891f61d0368cbd63fb2a9c9df3d5511023100fe6e666e094bb52afd1eab8665b2223575cff3fcc94fdb213cb2a37b2854732544b2cf42dcadd19a1aca2060863c6d340302047c435bb500673065023100f3f5fb56be093b15c3c38e967d36a814a34406e2d3122dec4661193fb3165bdfd803bf31ab3da26c2d97c103629c34a20230347a4492264ab744c50896fbd93e2eca8a0c9400a432693fd9c5b6f7c0688e0349b3b2e7d41a98e158af2bc327960b330302047c435bb500673065023100f1170fe6e1631238a4a7bcb88edac54c5c7d2f4d6ae65fb20f7fef091eac0acb9c2221d7ef1898c748ba5ed8086b966502302b7b0b1b425d7f623fc74812c9fec21f3d3332d721065ccbaa05986eef0cf4c8639f680be875e740a2098d6ac51c91e80302047c435bb50067306502306466bd1c1be81e6b90ffc6e077cb2cea41f95fbef4d7246d41e61696edc3080882b0b4858b568371e76de2023f864ba7023100ec1001a96b813baf2b04788dcc383ab00c62f6f68e68cfbab0468100c26013d4e615d547131ee7e576859b1f35b998160302047c435bb50067306502306e115fec92f3a28fc24bc55675cdc24745585af150967d1b15e61c12e49064c8485d9a0815342efa88b70fc3735db4640231008a61ff589af7170ac1c1bc87e618643c9b9dcc2f2a1b927a08a16bbca018e71ea0bd75cdbacc42f819e0425884f94e320302047c435bb500673065023100f63b3113ea3f851a7912bf431c05ad2bfb29e0f216762c9d45b87ea588a8e45c87b0f305e7e4bf2d2b428ceb5796fdfd023020b5889ef2371fa2fe9b82da8ceb02a3d08d20f2a3dbf06625452c798c13cd9d5d0099b203f3efef7d7db2c81ddb66240302047c435bb500673065023100bf7b05ac6550c9cac6c6ef95ae411ac57049e611f674c98aba8da2064a6731236f2b2aee94b25466eece621a0ff914ab0230103979f48d3242a5c170746cfab28d5225c5da94000ef363f04ad2a35eb215e8e23fa85a46a6eb21bcb63ed90e41f44f0302047c435bb50067306502300b08043230e9e68675e598c052de94d64ff9b6029e5f557b4aae2838161eb90ff1d43d74e40cd9ef3219da8c8ee4519b023100e3b7bf0b84412757b4be8494dccf30595e56400ce64bb94e10384f8330e342087923c6efbb168ce30148cbc06f27134a0302047c435bb500663064023065c614e923d72185bf237aac9e492a0fcecf3bec004aba54751ea965c89ef12cd867676ed933b067d3b02de6d839308c02306a886a8454119d40ec74adb4ef9fbd5fea9822dfbf89c5a982071e6aaafedf0c93dadc94d843d9e12eac8ecd1cb0c6550302047c435bb500673065023016d4a7e82cfecc5570fac12fc619171a9c3367bc3e64248529fec57dad7029e60842f0f25dee7b027fdc932496c11ec5023100f74fb08c50bf5fceab82cddad852f5ecfa5e3e26c79671e376ecda00a2cc77ffbc308c4bfc2e0de1eba0fac9c37bafeb0302047c435bb50067306502301d53fc43c2d0d24c967a1303a7605100c5dceba9c8c381c94e812f5bca736b1bc9dc710e90034ce97a52dbef75ab673a02310089b55a003b74201d249a2085cfb3ddd439a12322e38d602d233b5d62ff371191a26004fd400aed9d1e76142253491b180302047c435bb500683066023100861d1d8d2c3ba21c36073debc4bd032d225a21f3969b071f91700ece13117f333282a055e9fdfac74f57da641e9e720e023100fd3429042ed01462fb306124dd46615996ccce3be92c6c8d92552b9374b8f7dff42ad311781f4b581b06c7272d6547650302047c435bb500663064023062004ff0b05340c1d0c38624e0f7fa52a714d5213c4ca8ee3267306b6e68217a8a059cf9098943e2a5e4e6ac0193c345023045a383ac8d38e94d95b4eaf3f1c1a662a83514867be0f5c758941f3756af0eb6cbc712167945f27bbed2086f4b03dc740302047c435bb500683066023100d67e9fccf029936490f05ae9de2c72af830b3ac9ba3d307275c31187fad42c3e86b9128e955d1c64c8e966ca7f2c7a88023100bfb8134bd56371ef6ef76494a6c634661d04f6b8b7e41081541e1af0cdf341d3b997123def8897e8cedd9dff84d54eb80302047c435bb500673065023100cea400725d52c23ac7c14530980e34634f9a5314ecf78dfed9dd7a1a72f1cb11d477fef45ab381712361480f39ef4d03023037e0e3d487109c3898a7526d1ceb4b6f13b0359420eb1b9aea3862187f1a0daa2558124c31528d470b9b2214536a5b5f0302047c435bb50067306502306a673e42f0d39a6787fe5eb70d494fc957ad4dbefa9d5b73e542f8533b33b90903d72f5a38fab26437b521557109034a0231008720502c1b74378c5d294c4022ce1cda53d54e38b3c8a44f82e3b1ebf72cf4be17eabcbec4203e21ac159a30e19d97240302047c435bb500683066023100d6043e09dfea0d555ef554dcb3436c5ea1a9159cebaf4cdfb20f0b3816dc4a7cc246cb663066cfb434b77e05fc7fef79023100f7f1c5309ac36cf9ba78b7b3c97cd126f6848912f4b9bc4deb1244a24a3a320651ea5e204925cba2d183b5f1dbd7b8c50302047c435bb500673065023100da1c5b9bbd59ff1f0c50e8efc1547f5ee9de64779a872344c8c16474d121706b5eeaccc636e43893e55c0112d93e535202300f55b478a6207edf00c9c071151000e6dc65aa932e315a4020c29824cb0706d3c38b43d556f12dd130f129310d44cd590302047c435bb50066306402301f5c20b093717a32e42f2499b85457f7b1360e1138b5a8adcbde9e2871b54aba51355ef746038f29068bfd3b36104ee702301fddf3a198c60e1c3084e347b8bf0e33a72688a22c9b428efa1e5cbd57cb89cf9669f75f1d0bd19337d7726d80cf8bbe0302047c435bb500683066023100d607632aa6663ee9e57f569383b838220f273b4758aed3ccfe1bf09bbf1497d80d877d450384de4a0ca63fa92f0d637b023100a53aeeafb7c6f576db9b4a0a60096d7aa8069c923993338127a1bd4b6641274cbebb245cc79e1c37c126a02baf35f8a90302047c435bb500663064023065f9bfe50cd70c1f8775a6d36272e46588d7e6300e29b98da5c56dee6452bb992616553f65d9a6484ffe8179d45e1d2b02305feb0bebd6fb608b63d721282c032f3173142d38fbb135b08be6ed89c894f642a19456a40e184b87f2eb6454f468d7f90302047c435bb500683066023100abd10fb998321ad92b9c9bdd92209e9f68598345d8c5706bb688af40cca5db206009106178bf9e649cc088f510077e35023100b08481f24ed67fea7712fb2a7a6d3257da9b0f0ed24f03e63434ab31473ba047197dc9b5f157691dfa5e2f0142d16dad0302047c435bb50067306502301bae1cafeddfbb33961ff2a75faa0f2ef5bfd217a8306732ba6610ede8803cc0a5820de102d7f5f838f3812bef06bb7e023100c66dfa75bd3ef27b8b408777f5a03d3a4e74332dc17672e131c442ef736871b932ebf116eaee66cf74740826310de2170302047c435bb500673065023028f4bcf481d4f6b18dd7410a2dfbc811cc60427d38d0b98acef02518e4135acf0e2da69de83e8ebabc8eb11c0504405402310084f7c4c71bfd847db3bd14976520f6851d7ee940d79af35d3ceeb93173d8548bef1eacbbea4d12ecbc68218d7ba570510302047c435bb50067306502302d6e21787a7f1e9e9b8c2ed9e511b1dad43eec297263bfe6257fadaf716b65d251d90c2e4fd23e355e1c98c34627aa25023100adc1d6e8cb5b23eec26536ef901865e1e7965c91ecaca3fac49f95199d35edf22f3a8526e0116e46983a009f58eb076e0302047c435bb500673065023100e683c077b6c9d9c170ad2979a8adddf7f26c1167a33a6ed75eb61a85884089debeb56887b4fa6eb060afed1f376ae1f602305d77a3940c0d3be6bc221bc251a114b9393bc7ec5ac98e1be633d58111a84b655cf769c2e2209c6cd154e0c551acb2950302047c435bb5006730650231009b8bf7fd58465956e1d62176a29b98e9ef8dde402b0c591f122e09c6d6708d637f0d3552e37bf06ac81cec6a7934fd5b02302b0afa4dfe71cf46909f2dd09bea888bfee729f3113e8c5bf1fccfbf5c17dcb56c0c9d981c645b16dfed3555fd726fdd0302047c435bb500663064023011bcc78e237ab6bf9c1b1cd1a4c45f638e760c67124022419935fe0bbe832162b51869e7bd206f567b446a8e63d7dafd023072de9e551b9391ec0ff9e308ac9f2dbde7d6b411ab9c5103bbdc56fd539400c741edf22e0a8b32e6441046459835ba7a0302047c435bb50067306502307645daf7411341e9d1c4c9ac3a8b430a318ebacd35437efb9e44a3362939d181af1e93148dc2eda4a68f70ee8fd49c66023100d2de94c15703d32ebd195d41c56ea18c4afde7ae4f5b547074fabe3892e5f49f242c97c2ced22f88eda0e3d5ef5dffe40302047c435bb500673065023100ace5be1c0500735ecf6fc3cccff6a0cca0efba5f1ded45c4ada396bd18188c6940d628d1cb9a762fa475f269a06d800702303fd3970885ffa4b9bfc2ee0f08a06fced7f5f1083980df93f781ced0c7f80c5f3d4929297162e2e8d25461b05c642bf00302047c435bb500673065023100ffc9051e468a501e36f5a29d12c928ac4f5bf05ef90ea6a47f72d984b9de4a64e86bd874d44f706a5b54fce3218ce7a00230265af0e54385d6fff2a9ffd56cbf0c513fbd69bc50b44ada1fc6f6c4ef791cc1cfc307c837e6b8eac765392fb23d1faf0302047c435bb500673065023037fad3127d794835f3c8deb2318e801594fffa0d7c687565210c75f2a1c0ee4e262ca3cfe6ccb4d5fad56e6c7755a0b4023100f9c71591094b9660442f51d247bfea5aea531b27d4fe5f10e5878d7d407403ae63864773015020c1b4fbe3bc2adced870302047c435bb500673065023100c304e7e9d91c2d1d632411e4451df425a5c8c52b3d164d613b985a599d34ca96e48a9d7c9fac54b76df8f6664e52ade602303a4de140a1719ccdeac464706d601f197efd7d4e7fc7c0a393f16e8e632b750c63fa695c7bbc8ed07dfadae3747b446a0302047c435bb500663064023069b8a5452e769cca8b0e3dfb17038ca683cef2f0d60f2446bef782a9ebc6d23acb2c3ddc31ed201abcfb0ef95e74f8ad023053aec89add8eb198e8c612dad4996e9701da33e2bfca2580d5603a9b80eeb3c9224b37bf3fd4fae164a317cb405a21e90302047c435bb500683066023100dd3d618c970e62a9f2fa025232bdd8de1bd5ff2a873e46e9810c3776e4d122b7f0a0a8ddf5d380422e357500a8534a700231008b7f4084ee61f231883b6fad9b494917ccbb92c9a52db1e89f0c401d08e050da9cb7ad7af306ef9ba3038fe3fccf49f00302047c435bb5006730650231009ee575cffc445ec2a0f6790aa11ff7362373e94ac728ddb02dd84eb229b04e46fab347f6cf0de08aa668f956530fd71e0230712e613b5b1418bb0a1d23b3c493d94fe7048fe036b84975c7da2a861503ff51b4ee28484ad9d32b1b1c0fd30e72f0a60302047c435bb500673065023044f118b3beea26a15f9dfa480c242263d929f0ff0506bca56ec708312f12707229cff57ff845d1a325d36d6d97f5cc11023100a62687cb8b6e564f495a9dcbad64d0d2a8ff624414c4c615804ba1b357f73a6b18507cf56febf39712b538c0f547d7060302047c435bb500673065023100d8cf449180a33f075586553ab795d06ca945c8c8b4299cd3db105f2845e47c84b6a7807ce868bb1ae10deffb8a42b9fb02305e2eb4be374a2107d168e32d711a23e3884b80bf086f53da9e0fee8474b0416e84c68adb076b03dc8bce36e0811307880302047c435bb5006630640230386499747105554bb29f62efde866ba9e53045cd79196235f615147a6cd59d471e5d0d8dc6248635690704d38bc72b99023070adfea13a5a81ecc11d2fee718deeaefe825dd5284154032fc44ee5ea45a1b937012180488f570a5c6fe76ce45e58aa0302047c435bb500673065023100d3a009d1d1504598f51f40d51398e765ffc6343059acbdd08831a5cc760354c8b93f8472c75f3c834dbfd0d3bcfd9e7602305bccab11e9ec56f96156b69f088d4bf724787dced709cc37dd5fe710e0c55f377e37b9c548059deeda7f8623de6f85b10302047c435bb500673065023057af723ac89c20f5a908949ca601318ce3b0225d1ebc7206d778cdbe057cea1e40d114fbb02abe866c58486b88d67947023100e85a39615ea195ee7acb55c53ce03ad257167dd0df6cb1ef1b03909e308e5df894cb68a819f09870e85e7095052852390302047c435bb500683066023100be50bfc44930810a2380ebf8e9de0242201cc5bb582cb145dceb5851c26e4c4fc4b1002c0fc709a4cc7232c7adcbba7a023100a4117db9d1d9da7cf2992493556336dceabb9e652018408af089cc77b758553960d0aa10b53309d14d5659e16adf474f0302047c435bb50066306402300c97ddb573269ea22b4c9f0da6e83d097d4e58ea6f00913d179342b717fb41f42a109ac3f14dae68570786e705e3627102307cabfa204e652aa7123bb567f59282b23f34da102ed7acfc0e7a5ef5af133b1ab207751a4808d7b236c5f57e13c8ba870302047c435bb500673065023100c75fa6958a8678e5babd702d8cbc7223c4a4434e9ed61b762009a6649f701785d18119dbcc42b86b1df4694dc9bfd86802300d2a30e2fd393535ac406584edd3c877dca69c72c8f4c088b04de96c2826604e35fe3de1dbabfb682cb9a9b3ed07d7b10302047c435bb50066306402301ceeedcb368feb40642e45b8e9b74fdd9702090a3753c7caa2ce83abc792b9f63c378385218e663752776d6a3f1a6e9c023036ec582baf7b45062284d13f0b5376829bcdb39e8896d038102c0b4a12fb56941d506aa0f4d35433b29df48dab3161d80302047c435bb500673065023100fa963614d301d016b1ea1fbd4849c74d33084aa5ea06d6c25e3cc9788a87e45b184ee91dcb2b5513b5081dea3dd7c2d30230515cae1da82248bec00fd34861e951a3446c8354e2ee83a3d5ed6e732cab4d718d2ac5c4f839c5846c1265a9a8ac67470302047c435bb500673065023076224dbfdd27287a41f64165c6eeadfc0b9e0a81ad0c796603cd6c40d4a53d6ba05da5e9cf742553c49867351790ad7002310088e8452ef9752946a5499016d74ae6c53ab6ae4849ced2c1335f1ddaedf0452e20f3aef96630fd3321311413efe25f580302047c435bb500663064023014a06144ca98cb8ac129d43395475a1e58531bdbcd458bc777cac176baf37b8262d979dfa728245192672e6e7ce710d90230675f6cf5c469a7bfc65d7d753c41d43047c082b118d97f5af875de1c0be8d276862c04e6f8aa346bfa04f51561b1e40b0302047c435bb500673065023100d05b79cba622e98e83ca92543783f046c217cacf24a6dcb04b9766c9fe8da174d9ec6818861548bb34fb570102b31687023007b467696a714b1b462c7229f5bd2c68a3c2416e2c62ace027bf463334647e65adfdb1b1f166a78407ecfd61e747e9cf0302047c435bb50067306502301f661419f63bf4c6c9340ac35cbccfd30db9871a33198f8f64023f12b9a5a806783cd98699e71315718cf19645be0dd90231009b0466dccf6e91b0d8647134ccd3d26eafefb83457898510819ef1e6afefbe4223fd1888b79e67b44a751131d1aacbc60302047c435bb50067306502305e13c373b90173225ba98428ccf828555662cd618b09fb0b8af3c9dbf1a652ca1ea3cf312ba5a10e8a2df6c57abcda12023100eb25f2387f85e5daff509f54b6d9de727fd410d23ef6c406ee0ab379f9e9b02bbb8fd9d26101d46e57bd80d61c7537990302047c435bb50066306402301b07898f27640b70a1bce105476c981d3e9e8a033587990a65a20194f4637639a44451b1416297960db3e56c304c844402306abd2bfcf82c3397ad1ffd44a45dd4b695b4b5d2cf3b3202970eb79a7109c5f3f9bb84774da544fd033efe432d21f7560302047c435bb500673065023100da91f7d7dcaf0bb1528d7e105d473716e6cfd6615ec357d9829f7f8098a0e3a87a88c6f49c532f0c76313cdbe2259eb102307b3ecccbc3a605a18a528b0dcfc4aa58591da493c30564f0aaeb8af55529f14eec7c4b9dfab22510150937f85e3f20ca0302047c435bb500683066023100b896d0659c18cc7916090794d142b7f4cbb8b2cfc2ca734936d9376452b366f6867047fcacdd047456db86f5bde6d3be023100f05dfb6e1003ecff774d41cf00ef280e513edc9b51c66658f59e027efc8ce042bbad5e49d1ad1b267cceba718fbecb780302047c435bb500663064023023c4adeecd1710feb05255cb2cc511c5f8803839dafd89881972820c74d983d81ad950b5768321394ad5c77123ae1b3802302a1c44388547ce20b1c9cc6d34ec026ac5a5c88df262552bd607dcd5167034ec8ec9ccd6248a65bb0ff93c4e1e2ba2880302047c435bb50067306502310082c52372d96c65106dc4a42cc5d025e643be12dd2b85dbb703f6384e3d03d881293f6ee9396fd7e2ffe10cfbdc4c094d02305716d4b3db3ad2f8284a2efa7495674d586b7a6ed7e43954dd1d733649da41a0eeb68626ad57b5b6395f802f5cba02160302047c435bb50066306402300782431effc4780dc0bfd6f65f8d3ca1f9accf02b8c9b623c9ae85f1af1625d1fa4e8b78249a8bcba1ec975c0db4ab0302306207371f21a72637abcbdf72c27c4867d1971a65e6c2818dc2885e33208d12a8f7988b5e3ba49b27ece4caf1d608736d0302047c435bb500683066023100a977cf97233077de301d88450b093b894973633755d8d3d6e9472d851e0edd894c31da5c228626f85310dd437d92da78023100e544ca7965078953a263a8c4ac4eab2626cacb671df6873d5d471d616510ce22a88395417a64bf15ae8e153ba5d167070302047c435bb500663064023006a5752f8ad2f81cb1f5e6b9c96ac484f3721a05454bd6c2d0247869dba562d9058496327bf9f2bff4ff7cbdd70d482802307b2c33dfc94e02479d974115a12f811946fd230be330222f16f63c5fae6a501f56dffaff28c73b96cc4c7ee01acfb8f00302047c435bb500683066023100e8289308117cfea30d5cb6308a6564915f84376fa8fc3df0d5e7be92f2707b36a635dc7914c1d52ddce37dbabdd5d8890231008a8a31df93338d3d43f9ee26dde35125ece7133c59fe8cd70113d3de3a114e48fe181dd6eddc2c3eb378a756348f90130302047c435bb500673065023065032818f3bfc34a80bba834543d6cee4e98a52f7d7aa10b5a104a3074b81ed06c62cce9c4e20b68773b3f5120f45ef902310083136de1bc2e01d572741823d456dd7f48634b9f1629c307f10ceb4a3d918b9cf0d9a691fcd018e88a86e2d1859997f30302047c435bb500663064023056bec513ab0d3598dae6c4fc77e9e4d5804b23fc136ef06e1497891dc469f6cf06fe30a4c1c665b0620a3589055428d702302924d5394a3643f00a2136cf5065e00f0a06771832b65f9be35126d842e614ca265d88210df0a3e1d24d3c4f02c0d90c0302047c435bb50067306502303d0cfe66ded60cc5e689fa330f155e84bd71b04b4db016c5c175d26479a7818aa4de8d8d11ae0ec658b0700b5a584b86023100a6105d60d88a9a38dff5059e2ea5cb98a200e7837e37a8abbcaa9a62998e1a1f39c0b127808368afafb1fbfcb3dccfb20302047c435bb500673065023100d3a0444182a4fa09e95e0563ca0cc875769738036ae19683c0753e5bcebe2fc91424a9eef43ded47162e0a8204d0b53002301cfe3c23e3c8c25445099eb82f0cebd9132b070a78cbdb097ee427b02409dcc5af4eed32ff41976a442d8a865c700ca40302047c435bb500663064023077fcb22e991b67ea7bd5c4572af44403139e4d3f0c65c6143246fb3b55e8e1126313c26c01ffb9bc390e7d21103ff14c02307d3c85ceb084d83f7db6958a8dc645ad781a7ef69a054853a9913a7a407030aa50a4446913ca136753210ae33a2362880302047c435bb500683066023100f13ce1217058ff86bd6eaa1bf1ac0e7044df6513b89abde07b3a03f98560a33e51a79b013856470c777ef74bb4a266fa023100950d3859ca8d36e45f272c6b999bc00cd826d880cebe99523ae1e58b8380cc6d7cb34e472b9a9cb7ce885779ed00a16b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064dc13331e219857201e1f5176e1ccc1ee3a0fb0b985a87f70bd9f949e72905bf283926e56b12c6d5f4d2f08dc9226990230536d13e600c42ba25a0243254fc45e627ebff9be548861f75f476a5aa3af9ba278464367cbc8c2bb66f54ccc1caa54e60302047c435bb500673065023042b907b8c13eada01b298136ceb96f9a3acf05dc88b0b97c374989dae3bc230f5e9a6b0f453e89d31f51ba7b03733c32023100fd1c87073430ec2fa33e4e58d9eca24e5a7e3842739f78c3838af307461ce202238de43aaef50ecb26874cf9c27bc1720302047c435bb50067306502300c3cfb3f54aa36b49470875cf0f7bf6ea7eaaa1d0abc104a8f99c9464c5ef0b3232c26db842457c05da2604571317464023100b507e6a3c8c363a1ae2b39181ef3b3737e76ec98e73e04c7e65679c636db08801427ed145c2c88f0e553bf8c4930e3b20302047c435bb500673065023038a39a3c76d991a568b9bfc014fe6d4fa82c27f1e90f71a536380411da89d1dae65f5e54857cff44e1031bff38a7b060023100848cc84765bd03f0b6189e56704d2ff668c9b14fcfc1992c17e27beec112cad180ce6ff558a26234b9bad67456c1b2cb0302047c435bb500683066023100ea29364d656589574b5b38aee2a0e6eaa51a0fcab6f4106f63f8620b3ef42eef11c8ccfb335c385c626096cd92e347620231008d3653632d4b697777720924682a2faf76ab9499b7d93f2705bdac27599efe7d1798dd7b93468801fe47d713785644350302047c435bb500683066023100b965f01eeb220e74ce94290d656f16bd8b72572bf9b1590da2888c09b6ce3dc971e9b8645933bba618205c0933fbe59d0231009b24124e27d8a8ed4b67977903f7c4d2f29231de1a034eff2bc5ab29451c689a388c21d9d02329ca18f4514f8a58eee10302047c435bb500683066023100d7a5fd02b25765975ac0161bce6e269199a73e001463b571888532b057855a1aec6dad4a5c3c14f2116eb405bd8d07c1023100be62a5794898ea019fd6379990454807967db3d061bc6881938ca2bde3affe2930cf9f8a97ec2a6b4f35dffc7b4de93b0302047c435bb500663064023047843920d5f9d48d4d2387bca9fa487a7fbb561f6869f20e105aabba79d3e14e3925c41970438a3f4c2fb812370c4aa302306c206c86937944f6be5bf90858d021157e00b07b1eb9bdc1c743466ff0946d0a62c2fbab04905b90a9f48239e2d12fab0302047c435bb50068306602310097b5d05925d47751aed7ae4a01464ea43de6a6abfc5f8b763880eaffda2245de1695a60e1288696c94483a069b962ac002310095e2d2aa999797b8bad14fdc70a35b3a90fef6e1a11ac8fc1cd0c7058c3baae648d9473a3f63146946eac7798450fbad0302047c435bb50067306502302436008ae5a55b47c1bc7725f11256eb6f0651dce0de1fe8bd26d0c0f27784ff91a1db1c0a9b0efe0d34185d92579610023100e1e6965f33d22e206d648387ec65ce4b6dd482432c17ffff2d70613a091b5470a97f66e1a70ed4cacf42af20d79166850302047c435bb500683066023100e552a18352bbe9f40027b9d8f21b808df5660b20ea23277a953689edf1af438a441777d852a26df9c7c73fbfdeaec7c5023100b58984b0927cab6cab9af6bb4500315ff10c459aecb082ff24bfa29300aa3d9dfb27ca25a301e8069e0ce9ea2709bd720302047c435bb50067306502310084212767e2875fad10ae2e2f6c59efc7af995882a51d90623369513e14e5f749cf3695a1e7a2fdcf4d8e2a54ed070cb5023030cd274d298c23313e664208dd7452a2edb85d913abe04dd9490e4d21d9d0a2805abbdebb13cfdc1298387ca42d00a3a0302047c435bb50067306502302627ba34c04f8c12f607535755c75ae6518d622354a9bed44b4aca1d8850fa12a423fcf1cf82a25308148cda66e4201a023100a83982ba994947f2f5ac4a1960632cdbd423ef4a8c159557917d27beb9ff3109b2e2476b193e1ea25b980e7d989e5c960302047c435bb5006730650230150129611551136ad02c2c073ef91f9d0c509aaa81a51553a47b0f9bef6bed1e25fa6600fb87ee76d159877573a7074e023100f42b3af058e0728857d4a80f759a19f0f6ecd5ed1b1fa5f56eed1c723ec1ac221723258d485ef318e7074001879604e30302047c435bb500663064023008aa06c570d134018036e8ea1750c4ae4ef6108f690c8489397a320dba64a0f69ef60644877fecc352ec56ec945e1dc80230014de4d5230a075ea04056e5c80f9dbd79e0e00de31b97f6322a06906bc44f4b20687e2063970556fa795597dd75c44a0302047c435bb500673065023072204d9fef20efb3c4917d4abc32217c82079cc5a5733cc06353db67a87bb28612bea087831496a8ad274bd9f74775620231009289e32d3afc791f125da5d5a7638701c6ddc8cafe08b6ccd79d5ee7d3b21721bf5895e5114ee9a23064b662bce3b53b0302047c435bb5006730650231009c07d890d34b18a5bace97866834afab3733adde5283fe9c389cfafc12a1d95d2a4e892076e410beb7e409587d50de9e02306c013aa16186da2cd685e9a9ecda8d5e253d7413cb62f2849e676fe2a7fee8c55a86fb774b9ff98432480ec361a5c7450302047c435bb50066306402300caab21b6726e450c60902baf0bcfc257fab0aa8051986f6c33040185b5fe591fc129409789ae61db60687892ba4bd3c02301075cca841200baad514e14749359e6a2a7e49b8b01f3e65486a726182c56a0fd7ad0a485083afab97ba8d76b1603c2e0302047c435bb500673065023100a2e48bad855ed9cdb254c966bc68e2e4aadd40ea9b7af80d3d30ed45809fb0c18c19696f4fb2111082f195f7061fc39f02305d328fc3a8b9b04408b3b14d42ce6ee48aae88309f00cbb3e1808ff07b0e32ab23d26dbd27830bc7201aa8d6176600150302047c435bb50066306402300e16d9221cde3582d38623afda4127da55f1455de347132ee94e0df15ba0f099dc85d00c8c9d61df0bfd15dcc167633902306567d146339a27437df07b7dbd7e75caeedc757e65d4f303f5d4fafc693c283b732952369520df065345d73d020a74470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e0ad8ed89bd25ad82dce2d421268b09fe3599843068fd9c349bfcdf0f51ccb3706911dedf68f23753cebedc444b41349023100af41d6a63a0079f405c20e24f0c25e7dfe9970ba192fc03d78ce179cee5be23b0f98953552c4b9e7fa668588fb4e27320302047c435bb50067306502303113894d837d1b6f6ed1a3b610de1607487f9cc2a062d03834dd378d62f6c43ecffcecc55b42a6178528207327488a11023100e0dbf3e556121489668834453007439523abf120fa44f631eaf00d2e63b4d5dac402447cd8d79cee67731baadb7ce08f0302047c435bb5006630640230390ac51f0e282246f6300d31a50b836962a08efd897de3e7a394aea0528f3d8190f186dc01709e193903e5916790aa8d0230653a771978eb637b487744553846aa54bd032ac711ce569d2c5ef060e530dd76869bcd99a77f7697e2455e037c90b50c0302047c435bb500683066023100d87db1db3f9aeb78025930f3ca6c1534583ffc738c7d1a2fce915c528352993833dce671ef016eddcabfdaf5134248be023100f167359cc0abdbb78cf9d013f32a5ea07b84502f1ccbff171165a39e57bb239cb31bb041e7c20cf51b160ea98fb938300302047c435bb5006830660231008a5c3817c1886fbbdc6889e07ebc2340a71e8d9df6eecac51bddc25f37af79e15bc48d0104893fc273272f58cda64023023100e1f8c4ae0b3a9e4213fea3cacb38370b7600d91ff5e7e07207988b7b5e682b1550350b43a6fefda8f54179e90a54686a0302047c435bb50067306502300d7da9095beef1a86173e16bf5cf004465adc0237b6ead8570ac10e7c1b5c0fc8c4d836d74a4a7746c724ef6acab681e023100d78cad155f10985a47e436e2656e4ef0699c809001e67edb3464e34726f1cf9ab00c48f9eb680a3bcb8fd35214ed313a0302047c435bb500673065023070a5234a7e7b099c1194e2c9701343f0cc3ffcf3a01876218a8217fc07e89ea88143cdc237f5321965f8962729acc8f6023100c109b08deb2f16052f66db41a50cf54590b06604383f121d76765a72711a0bd98ad9dab6ad070b922b37dc239ecf10140302047c435bb50066306402307dcd9ea5678e9894dbec37ebaa2123a6540b44586727383412a721ae0e2fd0697e0de2b2d2dd1b0ba69a10b47d72dbd5023050be945f54987019b09d636bddaa65236c80e25434a6ab5b34407af4c377ff4362d381728e3b84a98eda4c35674ec8170302047c435bb50066306402302c096d7d24a14a0f2441e5d38cc98907f202c115683de49ed42e488607c36bff404bd3f09399648eaf8d019d07c5da6802304c217715f8b32e4814fdcb4110ef71bf66fa5f2337deb42b68277b7cae2e37354d0a0e9d813896b833bf2fb8761fc3a30302047c435bb500663064023015ed4eca7d44df82de1e412eff9ca008156ca8f13c688d2c28f7f8221145652bf1e8bbaf55d3bfbe1c453b49e5a6aaf402303e602e77bb579981e3adb485c3e0875b44e1c047f25a52d5cefe8f601c8a95474308e2b159fd23b77bb3cf0db3dc4d600302047c435bb500673065023100c102b1165d2ffb64354be21f331c977adbbbce24b935ee2c99e3c1e4008202d8e1f93817a9286ae48d0dec7a6f046f06023017d7ae04d3e25e5175299cc3ad988a39ea7f685975cf8f744e1a94e31b9319185b7616c43ceda86d16d35e9abbeb9cd70302047c435bb500673065023077a56f33b0d9eadb68ec8614a9feddcd17f4b06a121038a0879b0201bf96ee3dd44cd7a97f9d6cb5246807e2a07c641c023100f87da67de4ef2d14de4c7fdad2d1f2e5612ab3f68face5bc2a9fdfc289b94378d33ccadd520cb69ab19941c5f2f354380302047c435bb500683066023100c3c76fd300e95d9eec77efd33b5b89f25666badf5669b731aa0f48ef3177532b2a4cebb92ec2eed61a4c378633049cf60231009f759b5bb8e47831cd09ef629d5378dfd61878adffebed8fa414a32f6f88a341c1f0971b41db1b488833ccc19a5f3c9c0302047c435bb500683066023100d55eb6cfc73540046f7e90794f23f4d212109c35b090ee3785d2a2923f759774fe6e2dc2aaac3421608cc4d996bd814c023100952b63d07ac840d1c253fb37588d8cff4c941ef4b6540c25e8406330bb6fdcdc57812bb2eb30c17bdab41c7bf1c3f5f30302047c435bb500673065023023b7cbb234ab2a89edb181f65f54e1abf40bcc1b2ae2b98eb441d243860aadf40edc57208ab011486d1d4ea49526b3d5023100e523c0abcc9b2e8c8b85e81f598a7420ed8b232f423bf38c404f819e6a81da07dd1e5c53e1bde4549983d363721edaa60302047c435bb500673065023100af4e3bd9d63abda44d13354cabf0006c54ad80b29e82f7e7af55f0cbcea2a6b59acfa08cd2d25d71af6229b5152a5f3502302f3a2f07aff69b81dcf7f03f35f36588b8cdb463f66e3ed2c209f6549dde4a6200278c3413cf6e94b5e174ca6c506eee0302047c435bb5006730650230498dd3a15a98f4d0b3601e9ce64afc12bf8e8fc83dcd26067cf29353c7f2192e310d4bdbcd455d9057c141236e0614ca023100b3cc0e99ca3c26d4e50ae5fd2d0c39d5f9d4bc8405d052f700b19fe3c56f068a73150c9aab011f197ac9d8eedd873a8b0302047c435bb50066306402303cdb5c74d59858ece3f0950503ab15988064b3905ad09c99dcf99cf29ee9374c0a871191889e101a6b08a9fd7f32fc970230427d73b0dac68ebd688d3660459371971dc913274eeecbc0e0b68f114735bede893bd685d67806ae25f9e204fab9911f0302047c435bb50067306502301181bdbe67b323ee8bf67f4a0690cab1a1c48b77aed3171df79ad06d1727a34ea1d253fcdca523ebb4a77e7f6749d0d7023100a0476054b27bbe24d5a05e2dd2a68d9efc5cdf9eabf324666547c5de111e7767c9ab426c41d23b6d8a597d086298294e0302047c435bb50067306502305e423f6e5ef62e04a240f942de0fceb09fb1608e36a4193c15fc630d69f1e9c4ad9e339d4fbc38325dfd2bf23f14cc1c023100a3aba95fecd6d0040e7e809eaaeff2dace6fff7dc1cc0ddc8e637de46007efe54565dda951c0a9a0b78d849f000fda9b0302047c435bb500673065023100c5eab83f86e00600e51afbde4320a8282f91979a7f14a1473d718701ca4b88ca0c6c98bb58721a911854955ca07b518d02303ec46ce85abaf81be8c7603db7315eb4826ff0a72a3a4a33d2c74062958b3476b649ded379913aaa42b5fb14d579eb220302047c435bb500663064023052523348436153da89bd6f302caf0eef27625f951a6c4aefbe1d5a0a62915e3107d56943529d305b1fba13d1c18c66f80230251dbbcf64b34b17946b2443ae1ce39007e7282145d30106720076840f90d8c382a91e916aa299bfe76a9c97c3731fcc0302047c435bb50066306402303a59eda4a6e2165f78870c4154429724c16d1975edc58f9c19f2e8c25cbc12a7695e05356260aadca982aab80238dd0b023067b352b52d32ab8190b0b3f796285836989c532c73049b48bba216b3bb7b7101415669828f38301fb9967d1abc458a960302047c435bb500673065023051739713f6272e4aac83c032d6f045a689e00d0d48fa074b97e1a703a70902cb54659c120ef520ccbf621c18e653848d023100bcf2834c9c1df69ab224b947cc1ac917a732201f224c9335d5183e698aa8491a32f19b00700f0278f855565d7aeaaaee0302047c435bb500673065023019203cd877b38de3587866869d67d53fb501a8bf7989b9bab5e721263eacf5eccc2a2ce37fcb16a6be11d6c0f95b9e9e023100d3e88a234cbe504e3264e0dbd3bb7a2463bdc143844cb869a02a74db9ab740d8f7fb83ab4a0de1346e446568a6898ff40302047c435bb50067306502307df0e693343224dd4f06aa0bbcf84f815c3f39a8bba8c32d81082d3a77173fce43df246178f198f666d03af6a9814a39023100fc9fe564024d14a8c37d73e0d2b6fc4c52b6486ff4ae0b39e8b5f7b534d32dc2d1b63bcbed9d3282c8bcf8c12aaf10b60302047c435bb500683066023100d95de4c3ca92cad3774523b939274609ed5e7e107773fe00588e74287367707142afb5bb378217d6831f3718742de883023100a9af48b5f7734384813773eb4078913b40eaabcfdcc21062fbb0a5eedc88af9bc213012f00be473938692a3b0efb8dfe0302047c435bb500673065023100ebd3a0dbb7ab38c5e308627855cdaa257765b99808e9d528a644c9067d2d1e3dc46d3614b328af97906088912058dd2e023061e8dcd34358b680300af2fc408158a532fc073e70f619a10a4ddb8a99371aa019807ec576d8875ebf68ecd7f706da270302047c435bb5006630640230610f728ff8a48cfdf48192872bc84a7136fb4b6ee42b62222950e4dd069fe070f3cffc2177f75cc7c53d93cca54c7964023067de8d63d883c51a9569588b602a43f24d8d6d7c5cf3a8fd825428ab8bccf035b1eab3c172fc71c53d1dbb7713f6b9440302047c435bb500673065023100c3fdbb0af2dde933e87d8666f70e8e4fecc6d4bbc6c48236035c4bbfccf0ff66a56ba6dd0bc9e5d55e964e85f222a1240230278f03ebf32ad82e3151824c708255e331b5089171b4d7ab3af89c8a6a1c35465c9d490ee3c9f2b526ed2c80729d0feb0302047c435bb5006730650230713f9a964636d90c6ae3a8a2e501c4b08db5a82f198431ca9b7bd5ed7dc358e94aa885843f36110cfb4edc6f20529e77023100866499d6e2e8571def4d938104686940660be57455c0cd5713253674791835be59d26d286fc365c74888aaf1c4c608400302047c435bb500663064023050d9224af1b368d63cf3688b11c808476fc64cbfdfb4540c2768d24a6e43c4e8d9541198867a397df174cf5bd4b959e802306c4ddc770a628e296a070002a5d07483cd46e7cf5f49ee425d420014647220dec6e22cc3ee79d7601db02fdb2dac1a070302047c435bb500663064023041bc71fd6c5b92a5fcbb23c8f65daff8dc535fc70b2d5c42b30f11ce4dc684103c6e215144d902c97451eab3bf7db8c502302a3a086adf0f42a1a990a53784104e8492abd5363c9f8d8e8130c54075f14d3de052bb9af749c6586fbe6bfa94a588050302047c435bb500673065023100d915fa56fda0935e06b2274d3c95a15ecc48819525b0e9bfcec2100f6853a6d70a2372778ef142fc0ed53e6e3166cbe602300ef39c8a5af14d313ea4873d478a79f348dc7ce57939b7bcc1068e9ace057fe391137a26f9d7d18ba8de9ebcc412fc290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e6a33598d7b47334ff566a6a8155d34a72bcffd796a6a54c3627ba0be94bd7dff904530a13aaca65bc95591cb06155e023015248dd811493fc632f3cdc2f4a261f22514cd058947a18635e02dc8ecd17f2c27a25856e6b197f1286c8d71ec1c9afe0302047c435bb50067306502305983e2a28ce99e81bac7c081dadf39657bd48c84408e1105f711d24e6aeef54908e9f03f2905471d7a7ef586a18e70da023100daa67a4897a046267e34837b6df8951011d02efdc9f6df4701311c9dd82ea11a984a33c910ce207dbe5b1a1e4d5de6cc0302047c435bb500673065023036859dd9706b68450c280c72780f5e4706d77b9608ec4f530ab18dfacb2353f2156e7b04cf452edc72c90cf7744debd4023100a2ef70b567793e90196f071dde06e0581a71192b818dbb732edadd25ed2148c6bb83af77126c57d376ed05912823824b0302047c435bb50067306502304ee4b71324a0940bde9e526be53e2c7c21486c529440f7d6b00af298496031a4b70893d9de96d5dda029e37f3495db86023100f86be7e4697adef3f24e437d1480f01c021b60bba37728e7694480e28c3b148d05527d1414f54f8a58c0cbe3c45c99cf0302047c435bb500673065023100a5cb2dae1f206026822463f72b476138099ec3be68c25a9b0697256856dc963a060a37647e3155c0e1307fcbe88e629602304f5ccca3d9fc184a40d91a4c0436411f9d2e4a390f84cf9e9a11fab31ff2fb1989597da8733aa3dd0f60ac90516c4d7b0302047c435bb500673065023100a94595f1296145d9107d1a3302bf5be80007ce5d53d37b16820b5eaa686fb6a62c9d3ce09002534f44746e026b782e800230760559274a63153c3c935922b6041f40b0792cb5ffb0d9fcb901becf55fbcf10b0503f42900e7eea9bb5b58640396b340302047c435bb50067306502306663ef26732bc0593e5729761875da86428b26e1af02b71cce4b263b8796d68c2d4cf20e006433b6c22b236795a0879d023100ad48cc8ca9e8060b5ce0db246711545df8e1686855e7d6b0564ffb86276b4f83ee22478d457302f000f754761faf60c40302047c435bb50066306402305b8523bd2d267dda7bfecf65856affc3105724e9d643fc6042a420a63b7821d3b731818075abf03bc74e923c7b995580023019bd687b06d1c276023f1a6e6d04455a94b9e597dbca448fd46993341c93376b21bc58f755f2a279ac5467ed663b464a0302047c435bb500683066023100d75dfb092d40dd45269a18d27cebbefd7c07e991de3992c95f8c1d57faee548702b9e882902cbf298210fb63aeabd618023100abaf83a14e66a13cceff8ce8e2d8fb9a036027c81e8f43ce154f4c72f55419fc86c4de7985d942c7cd819bc8cfa83a140302047c435bb50067306502302469293c8d5d1adc6c1c7178d589a1036fe10688171339a7e3c23181159fcbedefbd25203195840602e2055e8f201b1f02310091bdc78682daf21b00383d3fe6972afcb0a98f7387f63ac4dbc85195af466b93a13a672f797353f9ccb04ea7ac33a8520302047c435bb50066306402307a5da3752304416d83adbe74b800d308811e02ae8e2877e663a33652fc3e001f2b99ec25905b5f405d651537df9b93ea023045127a01753f85e5649fa43d6b50ffd21d8da278c07587336ba801d630647aabc1aa7b7fa9d085927bf08839826795f50302047c435bb500683066023100d5a7f969ba7374732d1183de3bc0ae42b412303475c863e9494124b0037356b3a40d523bf495aee8b8a53e7dfd0aa3f2023100a40ba322479e542f0620a3974cd0602af40b2d31e2565b1f2e86cdb377578921236fff988ec7f8d8cc6ace97f9d94fea0302047c435bb500673065023100bcdc903f6aef9ab02f828d1357ec75220c116adb20835fd412ac294f6d94b59f0139733e32f018d360dcb3fbb0644700023001a3c0e09faa8881a844be5b2d53c757460f3a6ff9910e4825d1472226d8bfeb23dda6a8620bfab8f3d374c29c79c3fb0302047c435bb50067306502306ff0e575382f30d2df2c771bb43b3de350930546823a619293a93ec8db767dd506118a7b1e8c894034a36ab1495cf2bc023100e9c542245bf193bb1419a3d33f61cfebb0c77f241d01efbc1cb3d90d2145db09e6e66f95a7072767b6b5497d3fe429cd0302047c435bb50066306402301a771c15bd838aff77d701d08ef6d255974029bbe22cb96c06a1dbd385b78badbe4d20afa804fe263afb77fc343b8902023021e85bbfb2513edcd06367efd0bb88aebdcfe7f0cb2788b681ae8f41f610d8650db87953b895da9be4b7eeac778342140302047c435bb500683066023100ef5f6f507bad94902f76426b231c32cae7d9c62a012239e33f559fc93aa6ac55a88c8b254627c1d6133777dffeb434450231009fb4d063748f3ad0bc3c6a7f078c62e715a2bf3db89abf0483e6f67f0b77d36f8e9c272b79a1830bea00452404fa61880302047c435bb50066306402307fbc251add2b4de8218fce6aac9d79b1f6debfeebc3daf229d7b66a226ae0093df48c03f659380f6a37ee0b6bac73d8d023068fb0b3c9b29361999933f56806440ea5c9beee95f56b426d1d60a48f7853d7e690587e90bdf0a6378ed648d86944d510302047c435bb50068306602310086441cd0438f7142f772e50cd7bd35410dac48eddebef71624b02b9dd0f9a36209cb871c6ba4e0b4ac0c5d71a4bbe8880231009a23e5318278d367f2d97866d2a6939dc9e27419413a0b58b1155f3f069ebb3983cb39bad17af151afad08732fbc93a40302047c435bb5006730650231009f9faa6833182ba52ac042c01164346a4892d43f3f790939b1d958bc873169185cb8fbc98584ff7099cb29e423a98ce502305e70f2c1760327318c817a380cdd773800b35719d17d47b2760e2a753a3a325627d5138802002c3a4aa04ee385e307800302047c435bb500673065023078779ea2aed9a4b1eeb1cea13f77701cd001545bb6925f7a9dfd16daac769502298843127f56156bcb1142aeec4004d2023100b937308f01d16639ddf5a2d0e181db0041edddb2433f12d3d76a209c3b600f8ccd5207ecd054d383867dec2bb9c029a20302047c435bb500683066023100e5da9df6126345a1b3babba6b1bd38c838f7be4aab85cd6f4cb722a5b5254f13a6e1e73b92b7cd25e3674e6890026b6a023100ae32bbcb85b503abd2f81e78e5bea6e9c047ff31be8e136258e1b7ee72745179b31ef3550edc50eb5468e1086b4db5c10302047c435bb5006730650230732cb0075666c85510777a9b6c89a250084a4fa3dd61d0e0bb7ed8811fbd6117b2a503ec1f59c63ec10ecb9d6362bf80023100d92b9abd6cbdb9d7ccfe628093b77ebde264b910cc4d1f7ec56e811c358025dec790caddae977094e6cfb757955e39fe0302047c435bb500673065023100c35f115691859093a2d9ea082af6ec26c25293c48a4af7b1d6e0e23c32bcf12888be30e240a3f653a77beb0eb42c2c3e0230064773ea316de4af1c52f881fac6868b931e2c44a380c6e82cdd96bab9d3870e4fbbf253be7a76d92f488234bb4168870302047c435bb500673065023100eeb3c043bf7725194b49208eb5d4fca627078d0fd2e03cb18b7202c5645c68d5fa3132e0563f5f84d97b57c262a8c5bd02300297725d4aa1db82ad02378423db8ee4a3cf032c61a9bb758ebcaa1cf755b4212d5e383ec7905ceb67589bb4121ae86e0302047c435bb500663064023048832c995fd7d0931d9e35ed0d4af4a8a965ebf5b341b6c18ae787323d6ca309f2be9b4adbed8ae2823abadeb86827f8023040612e68b3f70e2f7bd049a5625ac2d088020bf89b3cfd1d4fdbe6ae988cc716afa20863e7584f2b6c43c9cfb61b78e00302047c435bb500683066023100b7c400c2aa2cefa1c709d5894a036c794c15d5dac0923ca86f43bcdfbe3391af90738f1b46e9bc1bca8fa4db5f1bd71d023100a4fc6585b95d9d7df72068e192d6f379119fd4dc040046329d7f92dc04992e60d9e6324c587b39c9568996a85a614e0a0302047c435bb500683066023100c895f59d08028a7711f4b51950764feba8ace3111dbb5dd15ed22e7b6c00c774eede70a719ad1a4d71ea8b79da7ecc59023100acbfa4870dfab07b52a4a67b9f0e3ffbaf669356fde90fdb2890f146ceac4a8dad370b28664575d13fe91b55e90f43c10302047c435bb5006830660231009c1cd882c6f72d8ea69a770caceae9c875f248c8b299816a7bafb0daeb9320e60b33c391a63d68f015eff0114e9961d9023100fcc67f7de9d3927c41b5a3ca1f06026bd66fc400110b5c1500eaf6086578a5157ffd4790eb4c08953797a24dfa50974f0302047c435bb5006630640230374034c59cf031ac89199f04f39300c4062ee47606ca7681ab453e98be2837cd093b00c3d48e44d20e41a9d9bf81b5b902306d8956de7bec3f3c33a0919324596dede627f640ab81b26be96537d90b0041659d76cf2f52c4328a15869108026194e90302047c435bb500673065023100949a4df4a6be413c1187403ec9c33d9875f325d7841cc47492035ce7a1de21c4dc0d9f5275e7adbfea733f364f3ae163023036aa6ac58fa3348c318de2a2c7332ecda96d095e89d33750246229d9390d169e7afcd4296b6f78f31902be5912ef06700302047c435bb500683066023100cd2aefafc5369748c84815e999caf8a392c94b99482296989889854f32a075b0b371d9fb1e82ded62e25ab9603d7684f023100bed504c15bb7ac912261b03ff2d8044716eefe44077c92e9f2251c6bddb23f421da639da6459f12926389bf1d95cc5570302047c435bb50066306402301e219f99ad32cc284371435a8cf9931f999c5c922b4178037f8dca3f0e0f1c67430ef54fc546cc1f363d5b1311faee85023079c7bdba07f511a3a9768efbb135a1f4a088ec9035b3e017335267686a7f930e1b2498851e3c7dbeb7a75448a54322f60302047c435bb5006630640230484175017c03d39465f8711c7e12f7001bc029ecb46cf7fa30380d792030dab3430ee848947e0bc35fcb66150c8a44e8023051b4ad2a6987d23d821360c854e017f1bcbf92f08ac17b2c8c23543d59d69e72876b823288d88917df286ca96537d4870302047c435bb500673065023100fc3d48d0e27d17125d2854293e6c42bde9e2c94a9043237ac6f076195aa14e566ed0af75b678de3e8ab1c00b095b5b7302305f2f752736ae0fe05788034ede17aa3f27cd52ddd194061a37aaa66f80b3621a9770eca235ac3ef5fba2d23555763cfd0302047c435bb500673065023100b5a6d2e67958bd938eba1d3a13351966ba3aedc71b692643e31d09731466eed592828365b2562e8b9e2254f20da695410230327d4c1e84a21e8572dce193282d6c8e2d07f716d3270767ae30cb7a1e5360e95ac8249cd22ce6984bb4a771fa06c61a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e0b6b467cb75e21f72aff53a96deb0cf182594e71ab1094be8a9045d0a1270da13135a2c0fbf4394932bb15feab2ad97023040d5911cf6d6766167490b5807a2393376dc57c28490c70f20fce974b524428be0cfc40cdf6455f9770eb15eaa268c7c0302047c435bb5006730650230197416b8b8c9e15c018bc15022e17e126febb4d6a6a8147285e6f5013a0b94beb3d78ba64cca975a8ec7c5b973bf6d2f02310082395ec1e08d8d0ad2fce9cb0882698739a92bb0f15c7b77a391018bca1110a6e1cc86c3e23e1c7fa42941f920beebdc0302047c435bb5006830660231009c9c37fbd37af4b4ac7252212c3c966c794349ed7414a10ce79094f1c4560f3284d0c2d9fedea9334a44d1a21afabc910231009662e7d522ceba36b556d8eab5b6243e22d24d5b3edc35e3712c5824c6458670d4fce979a889f45e6c18f7148c899ddd0302047c435bb500673065023100a22246db0b6c6d44497b03e051448d7c9c264c5545c42577e254884f6860a9bf6108bab27a41b1d4f2947b57324d9c88023004622b27505add1a5fee9ce1957c7e70111d6392b231d6c4408bdc672431470da2e90c338fd5a6692e597cf5f63eff750302047c435bb500673065023100e6bc997a73da3aee2c1a7a1a916c9ebf5f33a5e4fe7a6306b1b6188215b43a202937afa08d09181a5dcc9a83995a37e40230743d05bb7f48204aa6d1a2bca7191b19085827ef6bf5fe23204add8fb34f333b57b2fc1a2e8f835a69a18d3a37dc419e0302047c435bb500663064023011bf9dc1e66b46d3d9cec80814d53015d2d9cb4dd225f1a0fd7535305e0aca9270745b249ed8c92fc52fd8b11cb3ca0d023022932c706386472e086cf37cf6dde71102364acaa674d55182acf161207fb1f11285e7cec4193051cbc273e296e8bde00302047c435bb5006630640230645d15f467bd566e07776983e0030690cd2ce2abfd216ff1b7d39e4f8d6a3e87295df78a40282ffd537060301a112cda023027b74ee3f3d3bd9a05fedabde332de349fec46d43f410dcef34eb3ab2a955510fab4a844364cf027c82986a59b69733e0302047c435bb50068306602310095948dd5c01ebd1f8e477c17884e58bd03cd112aff7f478e43e549f199132b6b0b0f8c89cb3c1b8a577e4d1b9a48ad0f02310095be893d9cc42d0ac8df328ff3df3208374257afe28d8829754efbb17eacf63827da192eeaf679fd5d90df2edd97a8f10302047c435bb5006630640230793230108bc8d4acee6051cbe0fef08c17aa2b0733e62e4ea2549eaf4e856591ad5805f73bc705f1aa44c3075d6e021202303853a51529079e38e813c8329669d6144cda40675200141ad5830dcfbd14b6797bf543448c2bdab19e8677e8833dab5d0302047c435bb500663064023073d54b833a618d28b11e1b746e3576c10abf0d14d45e090a42bed90e158c4b3deca7610d3020c0a773f4b80873bd2799023064d21991c692d4f91f2cbab1b08a8a68f1e88437dbf4035bcdc4b1c1a9a3b5015c4f468b95629aa0bb9204b1f29a9f8a0302047c435bb500683066023100823961ef44b0098d5e4e691e56468e7b85ce1251ea95a207aeae192310b492400d78665b54e180b8ce68fcd8e991a6b8023100ce56692b7825d8adcb6d19d9d6eb4bbd8739cfa33fef7b88bdc8c3ea9bf7a73f582a4c03c69d9563594cd1866340a7930302047c435bb500663064023070ee297b1e9794c5c78b1a8f8baaa4c7cc066b68e0d60d23a7161a647b460a391870f387e519bcd20d26e27bb03172f502304a77cc91d45dbd7a731509e0d0de8d4dac042a2d59473d1959e30091271797184f6fa071f0f0eca2c4ae3b3d5af7598f0302047c435bb500673065023100dcc65b5150194e81514bccd9cc813000759736633aac4bd21bf61522b44624b5c6a9272af81a054372fe27dd53d0f0e202305eb7d981eb753219dd07299e4692990206900dc104d15b5608ed94728d178efcb4d0afc5a193e4096773eb2517bb4e1b0302047c435bb500663064023023fb17042dc3c2a36febd5736b73948053bf46b7fd3da4b6acd4596f1cf50d614baa61211f86462a1eec1022166c2fc002301c9e6f121fdf6393176d17870575c132774a8b5e99a2a83fef2f392ed0ff87d9ce7e8df8eee1b160e619590535e30add0302047c435bb50067306502301cf81b3ab02576b5c47fdc8f0a6d5dbc8e2b9668b45348f28081bf163bf04bf16c43911ff303a6bb4e93cb39b1fd8426023100b03285ca5dcd91096639db1f5a5fdbf91e04e808b2759c48f65b8fad9c3f4e28a4f5c827c74a4b8548a09634d09931600302047c435bb500683066023100ad2775b64e2cae2c188921433b898bbc93c2fc94bb438843e5a43596d4b907bf6cf2870ee5e81594fbc26deb1b8f35f3023100a72fc39fd4220601beddeba00c0f280a6773f55065b673bc5ac236381a88b4344cddb4995da87d2fd9e94af69e1284360302047c435bb500683066023100926f972bbb1789109a0c6f3d071de87761ea03459b8bf2cf328e40cbdebe5fcfff385b9a896cfc272d8fe3ead875a98d023100d6ddfe24b5cdc940da56ed138115e2c60cdb50611d48ae5a2af109c2883c109df899fdf10de4fd2e1d113020a969b91f0302047c435bb50067306502305ed6d97ae04ee50e943ee9dba7b38d109858a0bfe168a962b67300fe7fe6f04d8cf15804a0a0f2221a221d03d92db23d023100ccec4ddbf712c15eb30b4e733c81406f04391025109a67a81cb49ac5cd3fc33e003fc135c4c4123e53b6ee8989eee2800302047c435bb50067306502310087dfcc2de7e19fddcc1647d62b1d7b1238b95abc9f5f7c1d6a01ee21a41d069eab955e4f1d0a81b59bfaa7f11c98e92602303f6a0a2c69d4f2e34c9a211e5011023a6bed0cb13346f7194fb4f8a1e90a6bc8bdf0f1e2f0bacd8a352b287d4ff5e2200302047c435bb500683066023100cc8034a6d8c9b0f073fb20eaa660a9066c7c71a59dc4c1a2ebe49e19919662675321d9a86d30e9e3795fede5d26d7b8d023100fa83cc61eca0ab217650b1f6d50c92f932cbfd15bd2c50bb604695fbfe1aaf2911ca68cb19ae3a3e206f2f5310d740930302047c435bb500673065023100da67393515df33d017719d68262eb8f166692f877deb99dae6ccb86bc91ddaf51137c05c482f8ad9eeaebfc91a1216bf0230519e7b1f9d5b0d5ea133cd8610921ab0655ca0665966e723f6969623ebd46bfcf21ccded068fb0262fe614b2310dc98f0302047c435bb50066306402306a76b174f296245dd99a4ecb81931af39f5d70d4acf0ad34585f59179c0026b710c9d9491494af431655eee488f93ee602304be11ee6342b44acaad5bbd8e8f341dca8036cf58aef057dac7e1dabcc00220de1a12642e4c89f8c2ad42c2f4ddbfcc10302047c435bb500673065023100e54de4f0d720c76147595719f0ebb0be51f16da1bcdc2a150ba7f6fa8fbb693d570a757ba661777ed03d4565b21025d102306cc48c2cfb1ee68844cc868d3c08f634b5c0b80b9d2ffcdc86e90a617d0bf677c45a314c9c1f392486a4c9591313e65b0302047c435bb500683066023100c7db2efe50aa3f25c02dadd927a2d2cff99153124e05307a06eca49d368d1259f5b8c71747b73e5ad630a358b7b3ffe9023100de42f7f15679ac558c687f697a75e0ae393efffcd652f67e7961951bdf20e0b920b3b68f0165c5bff0c31cb5bcaff0a80302047c435bb500673065023100beba452beab0c0f76535d50068ec61ede5c1ed255d3e7a2a644c9808a22c4784a42dc4b1a6b750950bbd589273d68187023028c79f3c0b12b26e1b80fd0094b09867b94b17699ace7ebeb6c595e319ba60e144395bc5c8505dced1d9d4ba0042eaf90302047c435bb500683066023100f6c76a5f6040bc3b8e06c1921beda83e3263eb2a5fc791f111d6ebefd566c6079da8092d5e94e9416662d752e2141563023100f50b123bc3f8e618cde6920218c4f5cef7a276cfd3030b3bb31b69bc042cfa1090ea1d378e18fd6cf5a75a5228d73b300302047c435bb500683066023100bd599694f0351302f7060ab019098b4c55ffe5e3147c7318b37e090b6c7fd49143a847196da00ed3def5e1e45ee1c2d8023100b068d52924c41edd156564f503991ecadd0598af6a60f8c4ed646cef2ea4adf6f77df184bb1ca001d1109e607bfab40e0302047c435bb500683066023100a84ab6b031ae0dfeff459c3f26879a3db776da4b00b0e81d83b4cdf415556fa8b11e662dcd1ef903bfa80ccefa6d7b2a023100a421b787c7ee21710ee6446a8000c2f250bd1ec39aa3d88cdf07503b25160b451a22a6a4614a00e0244aff8af4a273870302047c435bb500663064023011db2cfab5634b3801176190555ee2c1e47282f5f6a6835b324e3efb656fdf048e6fae2e57a39ec19f507a94ffcdc6b602306decb4721a026af08365945b69ed0c42e4459e4b7a61767f4dd1f2478f9b7b6cfef4c3793ffe0175ec7615c87401b8a50302047c435bb5006730650231009fec2db9b945cdb26d9aec5fe36f76640d8614a81b0dbf4051b68154f0fa6bf135957882778cfa4286383dbcd4a62d80023055348331c5dce6b710d4b15f82de6383513d536079be75f74f932c5763812a9c31f52165a07978be851e81e92c17ff9d0302047c435bb5006830660231008f683cc59be93492cd5b19ec9c0a315a924cc258a816e368b8b7fd14a8e49ddea6d5c0d4672622582d51bc517f3d2a1e023100f17f765f6182fc78f4ee9c6e4b7389f61ea17847e4e2d0bf9980c446881f3787964294d4741757a824060abcd0ff22380302047c435bb5006830660231008849549a41d92a098166731947f079714c4739c2921723e06e5e03c2bda9ca10615edb45b96dcc3bb67d413aaed14932023100a0d631c6c54a6e54d2907b3a051c6662df4962cc621b2c4334c44a0c9ee55831bf51485d9d6a94def1b7086a483b77750302047c435bb500673065023100a3b3257d98fbbbd99786fbc6a35908aad64105af8fab7430f7fe09902ab7de772f3658a0e40b943276589b5013981c49023058ec9979e4ee0ea85e383cef2627d730be0c4f9c5ef453d7abb8bef5837504cb5915b24493554f2cb6ba45b2777082640302047c435bb500683066023100a3fc7067a685cb44f4caf780a5ba0476c20235e44f0a7b52a0d533c0074889d563d10a4d1856df5e7fb8c9f97ea399e6023100e403f1ab4b3855fcd182c7c287ecf19db7818a82283d4ed1fe7b55082a38f85e054e7964bb51aa9a7669d86f616c68bf0302047c435bb500683066023100e62de1ab0f0da27c48da064baf61345dbdabb58a8c2bdab12c46502aa08b96d871f9f65540c92cd761c3ca852d062cea023100a8f960e9aca165739ef72d75385f565404226cdca641a87d4a94cedb9a8543f3540653f961553a7a299428df3b8b55f40302047c435bb5006730650231008fd818ee9c087b95df95dffc10b11a631fa3421188fcfce248ca648378b09cb133a743515089333de210fdd8cc1a4f6102302392feaceba8990ef033066cc0998561bae6429b0f3d97047191f5af3129f98f539e7d09e5009f96dab079c92d9eea840302047c435bb500683066023100cb7d6767c295b492f4ce94eeba1499636fa2b58b8c78f15f45186c8350f5d967484d348c2eb0cb43a6045430bf7e1aab023100d87018b10a9263da0c0e74b6ea0469f41821800499f282cf14f88d62d38ebe60e7a068ce46e1a20bb1b8d1ee552bb32e0302047c435bb500683066023100c4a4b4fa4425b313563c7196f2e1abe86e5cb0898d9e451ae9700fb49fbaaa754093399eb2ba8a97e95bf8950bb33bb302310088caad5b45b6ea643c5c2a68da04aa139d5d9f6382a1144de7c7ed7ddf710ab05021db3d4c4f90dafd6d6d11c1e802f00302047c435bb50066306402301d7410ac3de70956bf7715807a541cd55733c1141c9becb930329d54023be1b20c6a506e0ac9b6b6b278a7c582047eff02307972b1ed16bfbce7e2c7823f734877aae25db1d852fdd2192a9d1ace467640d796a5e12f29f46b79a40ac6fd7f0d15c40302047c435bb500673065023100e8f4bb4613aa0d42fac439f8d2d861062a1f0486e99220c8322070b910044235a3134c780c4aae2df16156fa43e1ebf3023072baf352659ab3b0ba70eff11e3de3e6124def370b2e6f6a363c408b5471c1f31adade393cce59f1e78369406248e2ea0302047c435bb50068306602310086016532d30870f5287bc050472efca3b77843785a77d442a7c04f6b3fc314b496eff72383db41936dc03d383ca4e8ad0231009688c29c1f4bb63b712d8406180b9023ed50c949970a3138edb842f0824321cd50c04d21f307b20e74bfab324e76cf260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230679ad57a1bccab668062b781ba24241f4cfe8d5cf351cd022a6e03a2769bed85e4ddb2b6b3ec3d3f481585cc5a04f627023100a5f23560cce5efc511eb8d604416661c0f305afafa4917455bf0d16c706707cfdaaf50b412b9c08337c6fad19b60a0070302047c435bb50067306502306cca07e576d0488035a026ea9fe71cba0ba14ab4db351b226acb3aa7b06c7d0196dbb2dce1fe3c9efef3c28930511fec023100d9bfffcb0724cd458b3162b8f3c471e02d7399c06c7a328c104742f32d9f72077e26e6e4b9ba6bc7267d91af7203c6ca0302047c435bb50067306502305680dff3fb9c554d804ced8d496bdbc82f829756eca4ae16942830232b277fe78d73351b7cb0b8659f5c58c4d42c217c023100fcd474b5021d858461cadb3108d99f2c3bc65e2adf46f1b2430e3474b8e217d95036d4c044c0dda2a6485ddcefde3ed90302047c435bb500673065023045e4d2be854fbef748880c7466b62be6a2289329aab47953e8fa3cec0db43d5b6a2d5eb633e92ff2150b0771e3ef8a98023100816255cca010efc9e62b3fb6178d92cd6e9fadd956d0625921c2b06600ed6e02aed1ffb2774eb34e0b69059ba107412b0302047c435bb50067306502306a31393e11b1125b9299968a558fc1540c1a32229d66cb4a6d01f47ad5cc07b7f1bd2248899fe466984ac02003ab901e023100c867c4b69c089bd2e24ad0ae9ea92df5aba36086d5dd3e27fe77672439f73574210868bf82b3773fd625ee98f798f6d80302047c435bb500673065023100e5606575beaa139323e327bf4718644dd95627d11a7f09eca01f6451cc54af9af47404ca341cf9aa2eb3933f8c57ed2d02301394febe0e6aaddd46c64ecbd1ce2da938e50787610ac94fde41056d329724d3f154c04d98e3f4697ba0fca9db5087760302047c435bb500673065023100eb963a7676bf52b3f838ef9d88b4a0d30cb752d6cf5a938ddb07b6204b4a3845baae24371509de52d9da0c6d8d1663060230760180e77c7099123151f689e0aad36b6c473d415694b65ece8b18b0c57cbecab4341c6205343b252eb6d72d2f6351020302047c435bb50067306502305f347965641f00058a9659ee57dcf8538a100eff9e935ed411a55c6743f836a09129afdecdbce66f88e2285ac6c3cc64023100c0a21b6db475d6ca323f118b9cd07da5efd8bf19c2e377a6f0dcc1d4c4d1701347fefcd7ef1320f7e55eaec80e5445c70302047c435bb50067306502303e56d4b19791beacdfd5bab36977a787f8de17b4909d1ea837130733a0ad3ccc647934b253b553aa24eeac69710c60e2023100eba99ebb58e3e0d6f08c0442db4f96cc5cf4a7317df795cde6bc9048b1b64444ccd043044f8f094c1bd2ae22b1218b7e0302047c435bb500683066023100c264fc224d51f451488c376d1deb0fa546b578e5c38bd3d902a675721857e2c1a8caab490571c1ca9fcf7357a7987069023100d005068478b6fc15de6898926eec7ae79f9a2ae2557a1582388e2be9368326bd49d4c5f6f09207299f5ab7fb86127f460302047c435bb50067306502303e815d89a66577d56d81acfa5f28c6e530fdfaf73ce870478830cd753fc067b685da5510a3135be385b74cb900ee9f6d02310090fa33250573a1dbee174de6e3a882f1a50d2ea337ea1b59ebd2734c02b5533581f31bafa4b9c9e2b7c38da30ea975ae0302047c435bb50067306502301e763e8c34ab7a8d64217b7abc70b68f14247b8d62d76d44f5896e30289ed51748e99c7edad6586997f4d002d0ff869402310092f617dce9cfff17f72884086e2a4840d406c06b6ad5f6730c9ec74a215b0d4776e0b600c72010cf12d2f1ae2290e72b0302047c435bb500663064023037bd59e30234b2c9dadc57b875188bfe565faf6842182ff248dea3ccb2325b28ad63368228eb03f6d844fc3c45d77f9402300901b3428e4aeb26d392f8cf928408a672ee53981b9a2178047043a9000fc75c84946ab1f10b4635d0aedb9f7db86ea30302047c435bb5006630640230607b3e9dc695efdb065a2fa3122ad11a1b3451670580270334755622b874c448c32791c8df51de251cdf6dcf76db14cf023003aa68bbeaa37d0ce2d48ac09ff1a0b6e7051f6af67d8b72b04f22f0887bb84b8acb0ac3ff60c1721fdffc15f3cf08960302047c435bb5006730650230695a4ff902afafbaaf257c72b10a23598e18faafecb291960223e87d1bae3a118b920c06c5c255924d9fd4656eaa79de023100cae62f53578437ae728da52d7e1dfd47a4a26fe28f8458bbfe315a1e7862d01be083cb8fe0225f874c826c1afc3dd4cd0302047c435bb500663064023100ceec03029ddc9b344c7029a614772f8c7deb04352ddd20d1a9296409f2cdb40d465e669b530f3841d7525cf1d8c60dcd022f3c39ee136c4b3709d23d6fa10f3ec5d07cbcc3fc015aac4cbc0094d14a00b84cae8f4accc2339ff779b9e87dc188230302047c435bb500663064023038fbf809cec26e110f11acfc6d075c9e9d3de6ef3a560c4cc89e64632eecb9e9611b2f0583b0329b8271362b60d4f5e402304dd665e4b2d42522e5c683060487bae6ea6679999db26e62b0081cc05dece1c3d51b342dc37de457ee7fe1e6ecf6d6d20302047c435bb50066306402300f9a1827ba1b4a873df002b7543437b55853d2ed29029c8cfd018ebd52617b44635fcef9602c1350b881b67284e6365002301441d34176ac4d6006fab2a2870bac9056b3bf5f1a07b7197336ee8c1732fc6450740f3a19ef341bc57d26e969410b310302047c435bb500663064023063fe0fb2270746ce2a3356b2a782b930a50404ab516191f6ba9e168f51d9a8de9e14b73cd65e04208034ed1a2de3a06802302665b06234eea264230f26e3e5b04bab9a40e814f6fc5d0f33d977243ce771295fcbfd4def392a6c8c2f87461ecc30fb0302047c435bb50067306502306fe68b5c39a13a5f4ab0e4c1e2af609fbec42b996eb3f8844c096ee0175eddc2d798e272f1c2ae39fa94fb2e65f439020231009fd8e4915b350b7a73915c91001759afd81bc32038409e0ca9caa53175af347826f7fe8a70a1c3bb6bf822a5e23bc2ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ddac061237ead7e3b74bc1a7809a6f7e020124d455629004701bf2f7cc08fffdc9e019df2ddc3f35462fc4d1bc116eeb023028ea543b81cac266902bf0736e950e2ccae210c4d839d9859962e8165957b90164a8f1820034c48468332a3a832e94fe0302047c435bb500673065023022b0f77252ec410b50ca2e0bce128fa4dd73c79a4595ff99b1c4a26b83ba15fb55551e8f36a1ebea9af81d964efafb05023100ab50016ba4458d5410853ad976fa2b282c3df9040388769e374d535794eae19457c204589270cb5a28023a2c4a6af7fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebbf8f3fe7abd007f65fd3aaeee4e12deafac5f3cfe6d06d4296fb96744ac415b3a1181d4149ce1d5f013953c535aaf6023100e7a96f6b0044d119d827c5e645dc2c9279611bd74c05eafbdb02e3d97a3d2d77608c7f21b994779b25047bd303d917370302047c435bb500683066023100d5ea2117444637dd6064a970b96836188ed9c03aaae8b62a7b5f96603ab49a42edea0c0ad87caab7cde9fd6b7461f2b20231008d89f97fd6292a148efa82fa346d6783b2bb45cc207d51a325a0b2d7663ea4f9dd2ac9afa3bc0b024c3cc1efccfa4d9b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9d3caca76c4d1aa4d71a2fdae845fee90f2cb6a98f8e31ffbace69e9bfc09382f2055c2f4c2677295649bc544ab9c8b023100d524f7c83fae346725c1bef07e4cb6d13302268e201714e1cf389d5b062cb86441436631e7736415317ae43ee341c1ad0302047c435bb5006730650230226056e9e48c26610d8025b015182fefa46fdb72c5c12f8679a47e5e829effa4af9174372dc1d57ef9d4984bc34d8804023100b3aabeb6c2eefffe5ffd4a598eb45fc2ad11b5b0e67c23341b99b8cb7a4281d08af94c7720be5489056ed7e87d2267960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007f048b10b88321f4af24a568895bb693fcb59bcb9252a6538cf4098d5f3a1e6aec373e89295e644415a9d354da5f0fb023100dbda82167d5f5b32b0423acdec07b791219b54543c50e11670019f7a49914c0d50a0e04224203e19a3322eb8f59a31540302047c435bb500673065023100fe99d3a0ad5ddba81e6e0629d9558f0fff2c02034c78ad1af3e4d18cbe3dede00bf9238c8ff5251860741cf7e82177a50230210734ec2766149f091e12ca3f43a62cad8bcd7ed536ca930ce3f9cf67e28c07e62ebe5b672c47d6cc537b51d7cf1fed0302047c435bb500683066023100844c237057ce158b1aed6afdcb5c20cfb2c66e60974161a1e2e3fcf1437912fa9f90c60caf4b8a4098d37d275a2777be023100c5ebaa005e5cbb92319863173a2d458fbb8601c89e9206f5892c72c75b360dce18ee334cffc79908e4b58657511697870302047c435bb50067306502307eab9c676ded39518dcf192d418106d1ad37f85a7690e04a8431b18582cc7bcf3c23acba3cdf71fd2361d8cf1d971e0102310095b7d386d7d6d2279feb12ee83e0b8a63bc2efb39007386ebb62f7bda74b159dd726ddde7e0ffbf8df8527c7c6ba89200302047c435bb50067306502301400a480aeae64adf91f8ccc68dda2f655fdccc09537f6c32c43042ea0e4deb12b0e98877b309ee64890d8158b6928f10231009509b8bdda7413844a18c8bae0465883565d5930552be169b49f8491d96c43c3ba54d18bb7f06278fbe89b68dd14d5770302047c435bb50067306502301164a9ad9c024d6067ec5c1d3150e9086c88b2fcf3e98623e8046dc14fb460f84af73d9b691430af0cfc1bb8fe51053802310087a0710e9f5ab0509ac1968796752ca2146000b7a33800503e1ae58c0a341d64f011b8f612046c96b0db3debf6170a730302047c435bb5006630640230799a8aa28e35c1eca50dea2021366703471231e7554813f20c41ece55a8e1784a4a5acf243d386c3c4173e2839524372023015d91a97a98cbfaa7a5f8619d327a8d3d521da504c6f86e3854549938a7e0dafc641090481560b751cd077b5ca2a06ec0302047c435bb500673065023100b742a18b4763b0fde1a2dc50c6230dc0703ff8f924dc63bee664a74e185b84dd64bcb3c529fec74deeb6de957b2765a802304f9e3d74eae846103144b1dd2749f2f1fb2197bbbaa2525cffd6caedfa55e5c18b634d10810a3c87e62a786eeecfb6770302047c435bb50067306502301cf4db70814b652d6c460f4caa8641dd25d09e9e4484fca8a143fd488e3cc043e8346b147e27d987d41c4dc34230f67a023100da0870b93bb8b23908fe6ca44c56158fed117bc33358928cc1a0cc3e3616cad07dc42d9645e00a1a4d807edd10915aa10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230484bc9493fb7e6de74c58a9f119c81daa9e4c2720110597dba0cd2ec99983dd37f186b95c03bd28194968a21b411cbd9023100d562570f82d6144e39c2c3a48d41140b13310342081d1f5c2832c83c524abc58dc896d2b3a02f4db9ceb2407684751dd0302047c435bb500683066023100ec8391fe78940830a632393fbb8182c38ad2d175cbc0400fc67b31db0aecf5215bb86167b9f84e18835c235d8debc3ec023100a706f04967e6a7408a77df57761ab0bdfd7eaff4467cad2d82fad66b338002b32e4bab85e113ec5e605fc916e87af7150302047c435bb500673065023100df64a385e0cf57128894d270d28e366082edc8f012a22fd8874071703a7875c3afa7bb599b34d7f16dffc4f98b94a8b802303bd180794fe5daf40288a8834610f1f74d0c74a65961dd51ae3ebac76096ae5c4c2f5e719eef83add10db46dd3927a270302047c435bb50066306402300f9cc2dd53e3813f1153bc3ba264c11923ff9c974c3a6adaa29a7da00ba3dad6de6f956be9212d56f47a3840ca5896ee02307ce3535ef33f05bb83566f4668f3674636d0f617574e67faba4de4fcff51ca796a5151e88fcf2e2ed34f14db5f220f300302047c435bb50066306402304bb3ab02e6b8a0b259f2161730a5252aa41e155040aa4305ede62234e6aa580ec525c06920540dc2ccf64f9b977eacac02306962382b89d1915cc5273654be2cf8e41f1bf8bcae066ecf6ae3878f2a48ae40780b35bc3df03d9622ebea65d759a9a70302047c435bb500683066023100f6752552457054be471e8307de4c1f6289aea903b8c6db20ee9380b054bc5aaab3c7affa93d23fcea200fac9e90729070231009c1029aed05acce29cd5a3c53f2db3662203073fb7e5376159b9ec46e8527c6bfca67ba673f57bf20180a46ffa0d7f280302047c435bb500683066023100d9b299982aed7d7e75777c4612cdc0dc3dcec816d10c7eb47fd767b91687593119ac30206093b761595bdfe313184129023100f33a46202489e9150d8374d8c5d810e6ff2e4733d2ca36b2adc904ef3d6691b45a54281e95ec8d09f77cd5cd135a261c0302047c435bb50067306502310085da6c6bf945ee5cf41f6fdc3b9aa680c69e9ec39cab2e65ed92392c1fc2602263eac00ef183dc4e6ec372fd80a87fbb023078dffe987f3449d6c4ad4311265559e015aa7236b755d6dc8d4ca2a597f7e87cf73eafed1fae0057bcf57e3ed90eef310302047c435bb500663064023014d568b1a7e737b9d8b7a4dfc3efaac78755491360f7faa1bebb234c2f254ea2f528908e57bcd0591d74baedf7fd1e3d02301ec924a75251cc29a860af9e323703d9c14112d6a67bdb8fc256be1a167109cbbf6c44ee4f2c02ddc7e4b56368110b590302047c435bb500673065023100dcf6596f8c14c395db9badd1ff594c8d3b7727a93b2cf01d1d27b0f1c3c37aa45f6df090671574bbc41c52b68039bc5c02302302ba9f47ccb4f1e681121256523ac8c89cf56ad5bec3ab2cc5e29db73d3d736f9ea70275c7d80c7cd9de0874f9889a0302047c435bb500673065023100aac80606c1f9c2a8137f67c5f637fa70db9dbd4f3bc57d3ee29e2ef90d65795b489bf439e85d390860fe7b690e91fcae023054f3109a53b77f0b06be410dcff883bed885203562311cbc420a327f09005dbf6d898ef73ba55f54f36bbefc7cbeddcb0302047c435bb500673065023100f0fb0bd5f9f010188764cac0b1bcf78f350088da2998bd8eb4cea99f1d222f5dbd22318a1d42b30faa50ebbcbb03da1a02307b1d01ec83820258353640e291d44c0961348ba6e9d430bfee772f166c967fc1b705475e730060fa901cbdf3b17b52660302047c435bb500663064023028481b719a64c5f172a76ae7bdf480b4656ede0653d4feace8f72837d37c0646a102f4dec1bd43abaa7a89710ba39a1f0230570a675c2cb2c481f2a66c4ccdde5d8ed362b3c5133a8a7151e4f9c53b90a84052412d67c462cf695605b06a5ad91c580302047c435bb500673065023047b6d3d9b0f1bc91182efe9d22b54b10106e3a81d62c9af2b3ca88496fee250c66bcabb45b46022c3babc9c65f63b3d20231009e339d16a1a8fa0acb633afc323e0e1516df02ffe42e0ffe6ddb22e7818a5a19aca76c8ffc130ddd05e33c47ab0b49480302047c435bb50067306502304d4bb342ffa5c90906fa31bea880a7537eb98f1234480e59687829728d4148af7a958aefba84dd8a4d3bc6b05a87160a023100cbb7688616ef4d575cb5a8f4873faf9f629e6c8abbbc4dbc47128c5672e9f60d283da4e11ff9cca7f2fb5176fa4f6dc60302047c435bb500663064023011bed3d66911e4031d72daa5be1761e9b4a03d7c619d470ff3eaeb9004065d8207228760fcffe5467b224ea86c20b89e023007cbce88c316effd9bd30e76b8fbc394dcc8cd1fd5b012bffd7fe3cc576af3bf4bb367f2ce8c0e7eadf619e28425578f0302047c435bb500663064023005eaa47831a98b8774f268e218aee75a541e3736a831fdf14168929b80a4aaa22188c3a2871babe403a8e46918cd96a502301c0198e3f5c7bef604d920acd42a13b770fbbf4153e30f1ca7d2a62efee41614839839dad9e3441c1226ff1f33b8d5dd0302047c435bb50066306402303b542d88704e93b3a4f3f4bcd20f384a1106f841008cd0b8e90a9fd4f38a56fb1aefdc044b41c5115bd518e97070d3e102304eba166a1d9c76953a49b177285c83eae95fb47253fafdf8928091c3638f070e68a5878bc564e7bf78367222af11e7ea0302047c435bb50067306502303edea8dac61e88329daf7b33f7412b11a12926dae61c18ec3f2e9872ac8a29ac40306a969728285c8347b1683fed6f38023100d691f8834f9185ab100053b6c6c614580e02cac57cfdd5750170bd0c9e166b450c242a8a8c63f4575d6bdaf3cda6b70f0302047c435bb500683066023100c76b6573230fe2d877bbaa58686b7185303c6fb2f70e7bdb104828b62033c830a5fd1fa8ae10d5c3f788dfa7f608b5b4023100f4e78d7f7ef0ed1a45c3d846eba755ebd4220d5a9a187a1f52c97099e56d995a872ab11edc55dfc8d95409dca6465d370302047c435bb500673065023100f8a4f3f73918f76c93f533af7542bffa721e40141b1491ccc9de96bd2bc7c0be2255309bc96371931ef5b187e4f3eac20230374d06382d65901220be550b1cb8f72a88ee8e2dd176b76cce1ee5b070d89ed5637d7f2d2e10805046d212339e5cb0ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aaf46c5fe856541eeea6094d95ddf8e59596371f1b30c894ba3d77906d367a07131f5b84dfb4fadfd3834b493bfd0d4a023035f8d47d627ef69f659332a4f213975e9c67e5652d59fab95db8bce2e1f90804814b6ede088f3730f17313eb4cf157e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a5051bf6f89b269ced2fdf96196c4182f2903b0b40c51cf3b4451ff3a0bb3baf15b390575a9a02e13d74b637e5631e3b02304b30ca8dbdfbbc06f1bdbf3b3128c2e51c52ac8a712c7c8ffa54a3a669c69419268267b9a6de94aead2ab7adbd3b856f0302047c435bb500683066023100f73bc6f2b641e879840f5adc23b38d08d566677da84dab3b6bd092150545b7dfce65fab52e9310c1dda8ebe86cc7b3ba023100aea0a5ad6a819ded6924190a75bcda95a0eaa97b4365a75ec73b376b4329f45987f2c5ee1e1e152bc5ee38a9c26a9c630302047c435bb500683066023100b3543d4704dab75452cf54bcbb9f7f1d1813c0da1435c169ae89c9ca2d684bd294165bc1db683e66810b8ab676b3f454023100f3706b87d7a9b3e3ebde9cbd7155f6664d0cdc5e6699777ccd92a65e938aadb02a4a068d79f2b2d64f6d53d64aaf633e0302047c435bb500683066023100ebaa251edb8967cdc72444d4d6d5b17bb1a4d1bbf51320f9eba881edd8ec55765b10eace5cdeb2051336fce97995ac77023100a22e28bbc9c951d7681cf7c50129e5aab15cb86df0f7b2efb8a426c3a1e5eb0408aee49772572bdfd9742208f5314e170302047c435bb500673065023100a8019e9ecd963315dd3a6a954520d77ca9aebb50c9e9264066702bc47360ddb567d73c8a30a949b7dcb14e245010b21402303caa5963b8aa28b63629358847a83174ad54ee4753cc48b07e30ac640f44840ed61fa07d8db8a832ef8bf15491a342000302047c435bb5006630640230768607aa8f7ae95264040b5260fd56bfd16d3a9b8eb546ac8c9e3423ec03a8bf37ea86711fcbaf6613e6ffdc9566323b02307bf1c118bbd633714fb40fadee0e77d067ba433d08cc6023806837015d6c3dc0bb50952e75744e344d683ac09dbe22170302047c435bb50067306502301302c4aefff5faf7dc01c07b1a5ad84ecb73da6c8276dc8bd086948ecf0baa5840f4758625145c86478ffd9540f7c2110231008d0a7a8c8b3fd3d1637f852a55c27bfcadfe83b6216f04a99fdbc98ccc20d162c28d1c1af3a13e8cd39a75b618ef8ee70302047c435bb50067306502305362de63ca9a68d97e4ab1d91bf123f967883a2985e6d12a450081602224a9773a8209b1ddb7bad0b87d840bf96246d5023100a3760ad66d8cbdbd9e61ceec3e3e2b2c82fe4254de2329af7cf8d3d9fa2f39e0ba9d060450e17726a11a865928b8cfa50302047c435bb500673065023079fc5125cc8ca6fd85ab8822cf33e04194a4aac3db72584de9d8b143d85612401e30fd8f3e5a3bf9eb0b32b18dd2a791023100bb769bedbc59b26780dfa1a20dbe01d6a100433c6f67ddaea70bb7933061c7ce2755b20d9aa454730b61f869b366f7c20302047c435bb500683066023100fb52293c70309cf43772298af14b520c54f877e4bb3ff3eb9e85e1b23cb8ab1c8839c300527da03dfd7773ffd88e66e0023100be1d4d0d72e33ea4804bde984530f64f7f428a83b8956db8132aac08aedfc9c5ce6305743e9cc12996601d440f8739800302047c435bb5006730650231009977428e6061201fb8b8eb084dbb20be1cce3c65aa58695b93045157a307055ba492d9442b5d98340aaadaf09f25fbf102301d80cc4f238b2e003133d1d90304778d5c24ee554c73fe8837814bff0553e2c54a7d847e841db4678745d7f21e63a81d0302047c435bb500683066023100f1e6fb962074440c6027336ae9bb2855cf25b2f0db350b2fac3f1b30881b7b443f4a5ded984c843f642e31ba505de1cf023100a3c91b4700048980cd418cc16010726b8aea760678ffe803a57b9dbd9f6cda87f27a6f7a912aca85e80335d658fd573d0302047c435bb5006730650231009b7829069418c7f80453ec42a6ed9682665ffd128d5172e1a67108541243352fb97fe30d26d347d2d87f9d48cd1a1fc6023029aa56ca72d384ba71da5d0a1dfbe857de23e165f5386079aa7c35aaa52589e3e6a34bb6e962cb09d82d471ba2f6f3ba0302047c435bb500673065023100bb6cf8e46d13f858eaf36aa09c19025e365d81bfabdae71009914d42ed75fa5c0d81e0399b6bcb8577c564698a40023202303421e1100e81095143df66f4074712a5ede6d7904f55f0497afbdc39dbebe8146462893228ab5782386da8db496e72b30302047c435bb50067306502303bf397f16bdfc6bc0284ef9c4aefecf6e09df366ad1ab8951c2e5c0f6c730f721c892a92a9d6da79d5e6dfe51a3c80e8023100f5e42982a12e80e25272869c466ef10861205845c873f4b3af776c470a77484d424d2001a5705fadfb4467fd7203e1710302047c435bb5006830660231008adcde2e06dc4ad876a8cae2c62886fcb238ae84a2cfec05712872294c3cc9fc76f1d4881db91cc20b886c753e51b8d1023100e460a52b3a4b8ed3cfd4b2bfc55865b141cf55f7cae1f27fd314ffb2806fd05c25009084bafa1efa62ef730d919b5f7c0302047c435bb500683066023100885377ab5213f9633487306b4f6701324bca75433bcbba89b5a91c7f3e3d259e8e8fe63c742ba88c5c159671dde78dd0023100fdf7e08b747ac46171999af678bf444d63c08a53320cb40706d2976cfc7104d54ce455a5fc36f6fa3d891620934653280302047c435bb50066306402304d51996db7919c3b20be5c93ea5cd981fbe1686951e59629bffeeeb8f9301d10b3cc31658cc3ea7ff0a9ce2fdd2e357502302682ce644f7929aaddf0bef249096645e0258ccfdfcb99a9fcb3d66d83bd773ae4f1ad02385890bbe0789a27ce30e1190302047c435bb50066306402307ebe861352b2bb2e6b8f8388b3977229de8a4756e4aaf585d25628e9d0c8eca7c5c262b73ff3f4e5ddda263c5a7fe62b02302d78182a9eb61bf0fb51bf7acc0d53a034fc74311f8944c53200176cb2da51887bc0abf5cd1541106b6e069bdbff47cb0302047c435bb500663064023010854272f213b5c76cffdb137649e60790427a71aa2f516985fe2d66c1075447a29a34d8b4cc8a829640537ed75f9acd023012a937451584fce5a7877c5b59d226b2bf8a57d0e2361dbadb78e165cba1409f84ff9ef272442adbe13375e22b81480d0302047c435bb500683066023100b3e6bafedc70fae7b87993b1333764d4dd3d3cf2e9f1196f550ed3e5b489aebea64576684161775728f1a0310a59aea1023100e5b7d4f086f6d1a1e0c8c64080ec638a95afc18ad9fffc03c788daac5c8b16063be5eef15bd62bc81eef6c3e6ad1dcf50302047c435bb500673065023100aa05ddd9a30fc99a239c36f041cbed5d070a54b073eecd12b2be90e45150a11e2b517c84331fe88700035815b7ca4729023024f2d3e673ba86e109bbf8118086b693396bae8bc4522451837054a05a87d6c23e82b0c166f733414b45cc519d7bc7290302047c435bb500683066023100c7e510f5b3104cb994d603131645610b0a766b7dc2d3ae68a8bcc47a99e4a27b31ae7bec8db46daf62b3817881d5cdd60231009d386ab1f4d068d7de85e8584c20729ae3fb6545dba6037062f3fdb35473eb65698d6077167a308b08af4f5e13ed1cb50302047c435bb500663064023038296803cebd8e01f5fae7221fb3213836e6af8f1289a9a3a9cbc2261fb5c57aa175c19deda16c6b069bb9556a3eab8d0230065292cb7225142f10bd060a4f8bcc94876078e558b281cfad529ceb476f2dc7dcd3a57ed380cfc767f2f2aa78b84b6e0302047c435bb500673065023100ec644b405c20de7e8ed17dcfdb0e7b0e1c1333083deffec324a100561ca3b3fa4736d338a362e7875d9ae33263b40ae8023019b4ab8b83640d3643f07e2f28d7e5707d7806c2a39babc8b15b329b44b1e8d3b868dbf93e2a0a1462e9f75981cf29dc0302047c435bb500683066023100e1c3d272bf2f1326a9f7e49ee36345451d86b7bcb02ecd3d6b4419a61ede424751dce51d279cdcbe15224d2768507d2c023100ca2ebfe9878646f3e1315e064e07b7f31d9ca1f9efed3858b4fdcd8ea0898260d8f1ac23cc439ebf162a7fbf9f3454630302047c435bb500683066023100f55240d55cebc35e22c45067fafd1381524da20a84e39bd95539abb7eb4f027d9bde3004d8974932c47e091543972e69023100e5fc0b4d1429342b1c4ca03aef34cb199452e6b73ee1783f3f643298dec5a817bd004af50b631153d57e3a768c5b23110302047c435bb5006630640230718235d4970d7e9482a872d8b2ab6354d63ddf7ebee44d5b98e0ac78b81b45462290f0105eea061b181583632b689c500230389f08a1dced7f791c33ee410f15b105444fbeb6e091833818996fe4fc1a770e79b2c44c4011759ac75faf1b30f183680302047c435bb50066306402305ab000e7bd58f55bbb6f739ea303b3f8d78c03213c5b1d233dfb09cc6ca39156159bc47177b9bfe6006bcb769586aa7802305b702bed88a97bf7ba136ad3ae00d6c4b7e600fcc31d461bf92ecca8c94e06d5db4d7b356697e35690253f7ae25770230302047c435bb50067306502304cc69cf852dfc8332ef0c4a279fa6a08ea78f1b621621b1676faa6d10f8fde1c60ca08f601222bfcfdb22e6265f3189f023100ba360d0883c06896ec7141fa2862916d9903bd5de48ebc96eff8cddd2e8c9802645161d960e5d02247926146f9e306980302047c435bb5006830660231008f14f46dd399e9c08ea184822c19c2caf3ec6311df4cd481aa60eab147e7a38471ad6aa2e52ea8c9d3eb3bca55608f7d0231009530fcb59eb9e6b016a21096b94c9974285281a0b4b584f229f57ba2e6fa70b6cd8f0c73cee12abdcc9f7009be8921e80302047c435bb500683066023100b5866fbf58dd5a3ab0519cbb6e016b72e012aa75947edf1847893acb3fc2a42bcfafcaa0f3f0ed17c2ab6e31a9584892023100d3afbced5cffc210f6a899c52539336ab6ae6e9a8014b899c5eb58c99e65428ed5d399f56d20e291e565c8ffbf3ae69f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230753b01ec82c4d6bd2efc5b7d622686ef8b021de25725faceb4fbc8e4418830d9d3a4ecc9a03fff686f0c30406d5f84a202307dc40e3a6ab2efeea99075e69c3c27fe86cea1e47373f4fe03a6d7bb33159a1c315b9962f841350c4d3969c048ab26930302047c435bb500683066023100a56823507378cd925dacf7771e389f524a723f7e3a5ec910d96f283a64c6a17c74524977323f745ceaf72da79c58d90d023100df00746a6a3ac7c4ac2387f5cf9d8ef1804779ec06a97a9ace3491efb1a80da84057faf0c9c96b66337e483d44d5a4680302047c435bb500683066023100ea4bf970f815fa1de6a3d6249b511feca5ad6e83b7bd2d2c5215c57d317af3379ef9d40a916dedc8ed3173cb7b186bb8023100845083ea074da262efb079e433804a82573f7d31dcd3da0c05ee41172c5aae171f8f42704dde2cf6d52298159c37ecd00302047c435bb50066306402301d79ab84033c02154e35c72aaba9d577be1f01443d71a61f7d4fd7839e67f464a13b5747e7e581fd34c25cd848c0992b02307a60b08d867bace3fbc3c4440183b7cdc4bff6b2f9141344c48b7439835cd73f400fbff23c866ba7458ca4290d47923e0302047c435bb500673065023007c2a6667e5e290bf3334560ef5c84871e271d32e38bc02d4d63957876346d9aa411f02d3685c07f03b7b0496cc55808023100d85ce9f3d335f205834980781bcabcfd8706dfc77111476a714f2df89439687b7add66e541e23e4678f9e7c19da08c1b0302047c435bb5006630640230022a92ad8794ecbc52e1ceb72467d1ce940d5db52ffcef22bebeb40fc651f1e9a39fe6193f4d0528ffc6a68749f06ecc0230691d9e3f134a50733c3a0ec0e3e40ae2c5ede30405c9bdc5232d81a471cbcc81af159003951b4f507033d9bcb5264c860302047c435bb50067306502307e8342474d306e94b4a990dacb4cba8fdf8732eaea8f9ac81ec61114c5acf259d7fa3217c322721491246c2c08c2a8ba023100c92bf041a3616ac77b2c1c7bc94a9955e63feb1d2bdda96485e73fa293a90a293c06e1e14b4dbd6e9581b5525f5a575a0302047c435bb500663064023073de75bcdf20ccb51f5c8da66fa321a30149b94819f81503204b1b8e8d0dce97c85c7c0cd3766847e11b311d47bf8fc602300946532a354edb2ec40bac556470fe6c3bf0aeea5f842efc0dfc45ba98f6d80222aca85ccfff32a89cbdd45cfa12cd920302047c435bb50066306402302bc8bbdc782d72c338543ede717868f492ec5a4e967241adba3772da0a8ef0ef0d5429e83410f4bbcc177994c095a5cf0230669c857dd27657355eeef50f043894be1c42e2d05eb3e8e388771396a4b9b72575403dbedaba72b080b26369c82b52750302047c435bb50067306502307cfe34801a14bf337fb90ad57990b4ca6a12f9200adddbcac88dd99d52d3c574ee085df935b61898d14cffbed422c582023100ef9c9bcf73af487bc26116a6d2197fd7023ef249ab528633b998e4c602fe740edcf7f52d264ab7e68850f396f315c9c20302047c435bb50067306502301cad8bb0b76316e7eb35b7e552c1162506dae5cba1023db1c35b1ab6ff443c16872abbef28dda89d4ebda1bdcbdb4d5a023100f0218a19530902e67223c15145d496751561b52ae4d84e648133017657aa5fec2be96780395d195375a163d05de13a5e0302047c435bb5006730650231009d43f05281128317f5284847f02a732de7549fb8884a0b358202e7f8a56ce6ed8cbafaf5b37c5d98caf7282dd143065e02307653eda34fc255f2aa34ba69c1a0c6338fe00db9f48671deae6bb6bce71d2ccfdd828694d82dd1a546f87e0cf161d30c0302047c435bb500683066023100fc1c96aad9860699911826f7bebca00a7d36f4889930fdb9165451bc55dfe558d301ca8aa926206232a2fb591990bb33023100f67a132bd01643db23f790bf42d2faedf40bc5fab004a47ed7c1b51a827a9c3050b466953ba2f1fec15e245b0f69234a0302047c435bb500673065023037b0a927ecc679973d0aff1e1ac92799ac6402654262f60afa4333136cdf7c10ac8c28928ad1dc986e4cac6d94f979db023100f388983f77da81946eaa9548ee81851cc01b8aa7d820798e114fe71997c23535ea1ca923abebe97b0ffeb57223d174fd0302047c435bb500673065023100ab235bed4097eeb4e1fe6b7ad548c533db39284546fd2c8ea512fd173ce0996add67453b7825e9055ba70d5460daf29d0230368a76ecb79a20cf45d96d879ff63564cc6aaedaa6fc0c6ad07a500461ca076945399cd50f282b9991bb37ef005f56ca0302047c435bb500673065023060877aa9b08bdf4c00e95880d74bf64ff9099127acd90d642251bc116bdb7a8ecef9a2d0a97571deea4dee34f53ddf7f02310089b68a7bba3e7d07601a8b60a19337c337ededb466b9d4585e80fa1771b9271fa2a97dda4a714c1c411bb349ffce08490302047c435bb50067306502310097000999f386daa506f848b8f1812f1f66d63da478ccf095002a61d10440ae14b1bd713ff1c9b0b0701cb73165ab739302303015bc46e01a2b27c923499658441a3a3288e623ac700da4ba52e77eef1d342987de5865904c5bb7572659db19eeb4ff0302047c435bb500673065023052cf3dd858e6c389f9e4d98ae5589644491b42b7d2022b614d738d7a510576d89ff55324dfbce48f368670603a9a5ba5023100e5b9bd38e04c0677a36a27fb52e1eb0bec3e97b6db1686a8dfe38486d60440b0f3fa89b3392978403e93bc9460027b3a0302047c435bb500683066023100e2f944e39a7bb817b531d9f66993b50686deed8b9bc8ccdcce0f671278af04fbd5ee291efcb7a1fe50e13f0d359cf6d2023100a60205547b2d9cad9cbc70f4b4f168d0f02fc16e8678880485dc86b4942879668b008e058b24510ade459ebb2ad715c00302047c435bb50066306402304113b29dec8a0493014042e741cff1380a97e6b6c43f3e93ef1dbe2bc027bb016dd2312e21ebc7c7c94179100a46996202300d7b52c058ba93562e79131e4ee67e60393e710608efe9080e74f0bc64bb8f5d29dce190be3db777a47367d2cbc815970302047c435bb50066306402306f20f095c76ac11320b8c796457459a2847f0caefd8b00ae6d89c7d60e5c25bc232c256df8f247b372e699fd3ac5690f0230334d998e1140fbe465879a58ef04822cdf1774ae6ed734756458272d46db1784180ab2e557f62ba7e9bb8a65141970be0302047c435bb5006730650230352da4abc38ba9c163f62394f4af854e3ad1c97d4e3ab64f625ef47dc57d6df3a1d3ac503bf067eba70ba8525fa59f91023100a49ac9cc27ceae6ac94b4595c916dd9b3511e2b4e2f3b6ff637f3678f78f51775b0836e818b932add54baa17305521db0302047c435bb500673065023100f8e790e1b7ba8f188285f3a1fe5c7c7ba0790929be1929ade1e53e95a87e0035980342b4954b806dff9586841cc31d7702307193a9b44e08a3dbb8832af940e8a184f95a76f988fae6cbb18b52c8d3528d8738ef8ff5d0d5b9bb79c11566e634c2fe0302047c435bb500663064023044cf6daef566a04a3724e0ea5c7be627be2546f2b4dec3d79d9c5a8ef4118968e6b78bf7907f19764d2200f6b00af5d30230379fcfc07ce807d9da7d731b2498a7cfdf028314d3d1d066f96b0a96c8ea3d231823b3cc45233cfda66c28f508945f330302047c435bb500683066023100da5fb6b2304bdfdc9b852ff42b4c9983608baf514f6aad35609334ae754ad706d0cc3ea5bf0f56654a75616ede9aaf69023100abf4840bc7dc72c2c8d57f1ef6f8bd79c1c5188d7bc47675e27a8cf231d2c35c5e1eb4e18e971de2a86d25153fdbb1100302047c435bb50066306402302e19f018ca3d447dd822d8f4931898023ec5fbeaba6276e8639b6d67ea79b1de6003999b1150f6bc93781bf134311ad102302b2ee0d03d21cfadc5f8ae72abb4f7aa37db9acefe7b10052e51497de44e8fe7111a84f12773408fee00b8513aa08b5f0302047c435bb50066306402306fdb8981f3a771a85999f6ac4ec0a711104e6027f4b118b5f275f63b6dc687611e08dd5d918874a3b0b39c987e0626d902304a445d2f6180dd1af30a789d63a392a6251743c2d810dc3263d7405e8c190b9d5082495237b62702296e3cb4858015980302047c435bb500673065023100cbda301188ea84ca06fa9816d5af75cc8401e02269c22bf7bfba1237458f61a28a583a10bf73e30bc31d8d9f779f266602303d3169df0541cebaadba9b6092591b71f62cf4251a3d5e011e27f093e7bd7e046bb6edcbd97c4b0c2178d0563c9d686d0302047c435bb50067306502303e0d5ca6850b36a2fcdb732d0a86d35c38d56fa41ff6d06befecddd4726992c4c6ecf1aafbfd9645d3563bd6bfa08e87023100e595943abb2d3e753e113b190e217f115acf2bb716be797ef71bd0e5f5b03e7ddbb7009b5e0712f2eb742a8a0a2b753d0302047c435bb5006730650230724facc62187166f5596ff03223245208de8288e988800b4c3437254c9f4a8510b9a454fa00fbd3762c51a3c97738480023100abd984dc012a78b283b2721243eb14ef6e7cd1f2fd34834a1333c4cc2f21c52a0142c063b206bf668594026e1156b9d00302047c435bb500683066023100d252b6a6e6018eb7321b3c9110076112b286b17d6ea411dcd96c7eed98e33755aa84c4e3b61e7f796558829b9ee6422802310096bee92f6f6e845474067eb6c0756adcb6e4a028eabccc866fe983cef741bb150292d606d4398989a292f92fe53518ff0302047c435bb50066306402303e83711cb3ed5154de1f819da4d657af9dcd587964ea0fb3f541078c567e668e98a03670cace046b18158eccb5fce003023058b171153ba39c601d14ff1a1bac4742157474461eda3025a1a1b73d9524788138875cd852ac1f67cb5ff31b4ed64da80302047c435bb500683066023100f9af924127f396fbe5ac05c6ee5bfe950b796e12797df5ed835c78e089d59e1a2d3579fc73e1ac2c6f890a78c778f5e3023100ba6ecacd2dce5e84310f7e7ea3b3a5a5e88af648434ff91d5472dac6db4a8491da804dbde4775a038a3d6d6ed191bb590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a252af17cd3b262b8c9bd55c08100b0ac4a3b8ee8888b1fdafd9fdc95e42fd5fb39722f27221724da4235b361a8657b023100c589437da4ee31bb498f10b17f0f2d1856d21058b83290b42d05538892b9f72361486f0c332d2cf4bf640176cc5c536d0302047c435bb500683066023100e7e3165245a0476c3471dd2b3a44b19876d6b535daeab07e8470834ccf78489f313af0a8a7849e78424b8cb476428d6d023100807f2e1961f4b84b2f957d4bf2638e6fb7d490f65e31b893b2eb915ab08c4cd1102359a9e901e506f8c731506b2868e80302047c435bb500683066023100c0fe8b5250dca5a5bdfbf86f7401ebe089961067b06fe07d9bc2e6cc0e347ba1a151a8710cd4c6d8ddbc2886e03a69ca0231008ab67771f0bda630dd282965580001c97c2205ebeb3a12de274987aa637df0d09c21fe2fea87237cba7a15d84acadf0f0302047c435bb500683066023100f30ba9abbdcd55d86596c1fc45858ac47cc68b614a1da3b846d8896cf3578ea9ef57c1b527a922b751d7685f7cd860c5023100f37e1aed5b517d8b772223d7b01dc1face0d1dc43e427941ba803bdedf0f4c65bbbd50ded628cb9aca67eae2db85b1fe0302047c435bb500683066023100a3e3d3a2df5071ff7d46e1efff301ccaab7e75bc1aa76ee5032d1161aeff84e2a475ef48e38f275d9e488e012ce8da51023100bc65bf4f6be7d50b77ba1b3897cbdd6db3c9d77bce79bd5fa7fd6c857f25404ac478b0db4565395bd3b480fc72d54abd0302047c435bb500683066023100af9977d587818ec4bf509fcdea53f841c135c27c2fd338d693bb54ae00385a61aaab452762fc7bcb4e312c1e1426e015023100f71d6e92addfdcf511aec5abfc32982f6fe176e7910de1c887eb81ed6a2c384d361125a26af4503744eaf1587da8791a0302047c435bb500663064023039d8e9663ab2ffb7f59084764b88f5b1df3de5a21c1e5c0778aa80739ef400d9754a6eaf2567625d6ccbce029c284a95023028b50c231f1fa3325f71df3172a0e5a40d2a246c3f5f0ac14dbc37013f398c0b16cc3d740cb55d5da2124029effc8c830302047c435bb50067306502303bbd815358a4c90bf45ed048c4f69336ddf127a069aa4d113d8b3d4a24cfb0f79355def738ae778b9a601e376f076778023100cc4b3f4a4537eb18e491c9564a7a968792b6bb6db2b2e571b250c7e7d319759663179350579a62364b37e0841e4dc7a20302047c435bb50067306502307b0901e0a5a91dc725b47fa6624000425958018b6b6177919621a3b470c76c64e80fb6fdbcd702e53c1ba6c8524c0592023100c9bf73885cc9dfb7b062429820085b73ab0d8d4e7cb0a2d5237e5ad7cfa470e786e0d8b85b4d34fd7aa7c1fcef4bf1b10302047c435bb50066306402303e00284f9775f76ab0bcb2cc317e13dc161efc1c966d5f9ceac582c28ad1014bb033a85e4ee5afbb48b544ccc2103eb3023057618bbe06481839df20b3fab881ece28c1c47ae3b25c3164d0ecfca6149c5b31806bffbf9aaa49fab8775ac6a1df6f60302047c435bb500673065023100b8e771f7a1a695ab0ce1ca60468e72ada6fa4da1b5c72287e1d2e4bfd8fd069b1891c85aeb2c5b516e2175cf24f7083402303999826eb74fbcad9a43b3f46e2e4a7d57487eaeba269e75261ead7dfba1658e5f9d348abc79f33984304c37aa7f16280302047c435bb50066306402303a4ba569d76bdc650d4a01963892ca49588a2a5ec728b9bfc9f1925595d40607e640f2bd506ee35f46fff1391877ac3a023006bcc5ffd9340ed53af85fd342b82724cdcc5dfb35120b70317fede17724bf33baf3dfe769f611318b39287e16b4118d0302047c435bb50067306502301d25b9cab82ea6dc06c836fb76984efa4df76af9a6978074c114d995bb56ea262dcafbaaa0f504b0a5b727efc9d2aa8b023100f5783bcd472751638d9054f3bf7832a5636f341d437899216448266ab147ff39d1e504dc4476e1d466c45347ebf4029a0302047c435bb500673065023100cfddfde6d16e4507054e34ffd4982783ed2d2c002a868e15201e2eab5326bb0e1101db1555a4dccb4ffcdff506cd117a0230403a706799731a88c43e30913afaddf001715775c23bfc8b25a3bafa8b7b323518432eab1e7d5270030ef3e688e87e0b0302047c435bb500673065023100c9850ffc681576891cf6fb7f44b7441fc8326274b7764edf2fb5939fdb404187e73fa199afc9054781b1df58a021bf8302301014bf2b4287a1fbfafa4b88f5370fce69ca5292eec17152fcaff935f2e921367cb14ca9767fcf7e624621274f12a3fe0302047c435bb5006830660231009b4c1c67981c7696c5723e3681fa1dacd99fed0c3aa3166453f386c21dbe59b7486a0a1af83b79d8c644c2b4b8278db3023100c1f274765c578c456e2304ef2d197236f72bf6fa1bbabb96bd556e7e41186d2270d5f6344e1050645ae98f3cabba40920302047c435bb50067306502304fc7854da3d9229356e08631cf949c7a6d7ec70a3e44a03fbfdd81bd65bc318c288c1aea39e009adf47dec8d5ba0b2eb023100999808340a27ae97fdaf09024ada3c6746407df2a68df7b220b3b51e7ffebb56a574eedffd6efcfea716ec57db40e50d0302047c435bb500673065023100b30199035822e54c395aec5ea165f5f5189f64c5ccda2d630fd54b673d8585bb7b3fd162ecf324a1621393009aeb0dbd02302165133297f0a675b85397f16954375f024c270d8ff81726df2a05ee2a347d9fec2ae64735cf044660e3d4d0d9dc54ff0302047c435bb5006630640230682253f13a82646a35a4588e6824bb87e48e67f60be0cd4e0bf638b4374afd831cd5d3a80ca5fceb400b35297251661b02300c726797161db49ee8f92dba8968b178737ec74c6d11616ed758f04abb431679e379083c9d4795ac92a6a5d6d308c7050302047c435bb50067306502303da6485d25654e5368612919eb327faa5d1c5e7d026ff888150bcb190829d3ff2e6ee9819226eeae0d110dd61ca768dc023100d451a5bfecbd7e04ddf80b40747d5fccaae5db96657ec2e2c7b1545706454591ea603d16ea5b653cc50f34b0c762b6ea0302047c435bb500673065023005858aba3c9e11f9e354451259101e32073a2178549e5db9b3fbba623cf739dd6c643fe7544d9e2bf7564032de850796023100e609787c6b99df4ef3491b8c88f0fa1e0603bfd5c13710dad6ee8e57b076c00bd8296219075d66a48c45c799027705170302047c435bb500663064023000ab9485c25d96c5f29099ba6f25ae35de1fa45c0a296db94002cc9fef01b110a23c9ded6ed53fa51b035ee7685fd1a602300c1b965971d4a73c4c7b4bae001c3be950ae6eb4f40594a52aaa43c28984166102a672ba5fd9cca3a8f243650c9111f50302047c435bb5006730650230282f7b448e303a59aaf7d2f7075a41f6c74585bb623ccc8fd074bce2256a74b64d17d0c7154e976477ebe1cf9d614057023100d20b87c3fac127e2e21f12b9529cd33263ac8a7e51da467f390b26df882bf36db20dcfb56867e8ff6dc6764653cdedad0302047c435bb500653063023001a5c48966e57f32b31ceb2d78aca92367ad7f21cc33c494abdf190e3c3a244ff24da1c0120ef9b6f2321df334f10c2e022f152a6f7b6bd76ac14f7654eab32a8b46bb52e3d5c3654c01fe2e651eca4f40b19765cf1cc1f9e276055e1f257b1ea80302047c435bb50067306502307bb8821bcb900142163fa1effaa42a0bdaee9155c72df76b7f4869158f1c16de74e5c9915d9c65440af73b38bf99a965023100b264cf4f3749684a46a2940ac62adb1fff9ee4de5665d89ea10147bcb8f94cdf726be939520ce9c6d184ff07c2a9667a0302047c435bb500683066023100b3fa07995201dcec9e5b20c676b88b6d0ffdd9319f42f1dc8fd9c9583105d222363ea115a9bce9f3b09d41a5a24a7b2f02310085946ef33ad9539061d981389bee5a73557795fb6d773a3b5eabfe9786866d85283fc8d997bd86a07332402a9cada6070302047c435bb500683066023100b26247a32414c35c6398b1cc39f5533b57d1822b8ed9ce7f15a602c54973ff45dedef5e55723858e2c3eb052a168e06b02310091ad417945afa53ea61676ca394727950d8c8e3f069d78480f2d321b71e2e2d7dc72feae708769a5bc94247c0acfc1d60302047c435bb500683066023100ae5ad02e55caa7735cb833c9b91b17e22b2ad86a8a7317ae3e0d1260ff2d53833ff2910143b5ce629eee047553c64b7b0231008db1e547179101742f2ee444d8eb88bb9a5305513e650805ba302c53f3cc655418e6ebc3cd0c16d5cf4e8c2287ffa7550302047c435bb50067306502303df5109d40fa346df5eedd3cbf7227a86f076028b9fca11c432279d6ea633f1a4969d5fd90031b83e7896fc31b90b8c5023100b9f4004305996a5788614eca061e2c52ce131f665f1ea36592f9476308a5171dba0b86acfcd610963d5e2f0637b33efd0302047c435bb500673065023100969b8b1361c9a1e43eb2b52a340223c2da088e8b666fb2fbadc715c53f35d7ea2012cb463b674672b468bac23237319a0230682e63aef95f301b5e835988627668437898b3640cb9a5ad053380d7618a8fb81d0fb728c018d90d0175dc16d8867df60302047c435bb50066306402300aa2cb7901905846f61fc0542092301ae94ddb209578de8707c3e58aec8dd994f69e7541f5d37df7b90917cc3a79de73023066d62f64c25856ab2cf9033e5ef0287bc2a49a7823cfff9110b0e6fad913f322ce323b3b5cb8945b8e01a206a215de6d0302047c435bb50067306502302d42bfe77e55ba81c511c7a6f76ce4aec09b34a3abb1be8ab956688c215a84396a4d4edb9201c62d73e1cd7251ef68cc02310096a3a30cfe3656e9615781d8e3cee73043014097fa8c1b015567af4b320092691f8893b38699fb570d31a25bb3f2f7e60302047c435bb50067306502303aa042c3ac7efb68d8489b144fb802ed0cb95fa7cf879f0424b81aaa33e8c03145bc7a3158c075617472ca9ebe2a4b1d023100e9cb22f3a7cc36f8e7c5a47042a1a005e597f6ed2b743cb273374327b2d7af6bef43fbcd9cfe9e05a2d2d7301663211d0302047c435bb500683066023100d2d79afe98e8323e6eec69f1bed31776380a734dcdabc8e5bf15e22d1b91e76bb146db354f522a925437444684b284e3023100b6f29660c5cf8577ff228665289c04850e596c04689ee5b1d524eb00d55017da4e1d9c1d43f8985bd237c0e1e52912990302047c435bb50067306502301ce258a767682a4faaa0c895dc053902508d01b86efac540330e6d03b7eb49400b9ebd4dd445e1af4da4cb9cc41df6ad023100d483b9b8695d17702147ddab39e1ab65badb35158ff4bfad3ed6982b0b0d28f84b69378c8efcc1f2b4c2b720c43c0e800302047c435bb500673065023069be168c2800f510dc1bc8e26969cb4ff6707058d549f41ad1e480b6d160b3c64edcfee144ae057e08a77bdc954279e1023100ae6b7b8a849d553ac69f5f56ca58ff8edbd2ca8fded3a31788dcaf321602f92e9ead35044563c0f32515641afcdfe1430302047c435bb5006630640230714d3956c6d4addf64ebfd10f73be40423b38401e03245060fe22f92e4f36d66ad85707e71f7d7adfb46760ed0c3112502304048d460bd5bb0857590e528c1ac78ad5f19404665eb80e56842c5ee49579116b3e1e95027c61d6ea3f969196329f7860302047c435bb500683066023100f9e1c90bac4d803bc95206a8a2dbda7cad817333d31fe444d02d3e727ca91e6e5675cfbcbdab9059b0d1e0389d6d3ae60231009fe40fb1e58603963dcfa6c360f9277b708b08180f73442dda95f1525df217bb499d77c8b5769c270f008900f8b4ed250302047c435bb500683066023100e66513f062ca5cd2b0c838c984f5946834a1ae25672ebbccb8a272e7019fdee4141a777f12d2d50720ef44237f9181c2023100a1595db17c1c9f2519bc22abe9756a64ff1e51cd36dd1065f767d014264cf4fcb8cee885e6df9458454bed70aab9a24e0302047c435bb500683066023100e87cee8eb3fe5b03067e02ccab39b2aa4d2a36636844678153600e877b81855b39e342ea20835c9c1d30faddedacfe170231008d7835517e69c09b24a34b20f376a2d5ffba4582eaf17c88b6cdca15f2744dba0e6927de4e1907e2da0d325ae89b0db70302047c435bb500663064023074845f764e41ebed724087d030070c27e3af0bb2c64c08e611167b9f79f0e3896d79829895f04ec719f6ce1a86518171023033ac8b5a7f7185bcaf621b0c3e8f04b2280f5ea4ec48e4ca34a309a4811cd092818aa6f546c176f7a4bc89dc81ada4ce0302047c435bb500683066023100b3c687ca934b8ab9c280176cae8f0493ee79b636773df89d809b711b7bc8136485b8579a34809f24f813f6f4394da5be02310083a14fadce8e509783e281fd9acd8bee2410ce0be5aa0204763f96d1f04854c1505b99bdba123ea161ff30e20fbca5de0302047c435bb5006730650230198dd86643bb6c7e29e2f033c5532b639b231bf97b5d92ac2a172a88bda67d72d94646e84fe69a0b7f5f41b3a1e9fa88023100fec2df61c733226f16edaa03268e4eebcc9c07eda775969b10fe7377607f4d426b097d0fe9cd48f6ac99a8f0aca202110302047c435bb500683066023100ba771eb8da9ea8431528d8c86d6e6e393ec61b5339642ca0860e102ab1f294927d6a9480684fe5644d4253b73ba768240231009ffd852427a54616e5be66d01b45644c010a56234ffcea21a3bd00adc4049149bf64417bd28207de4fa01274c6b2af450302047c435bb500683066023100f1c1aaffc25003ab98dff8ad66274b21f7688ea5e79fbcce908e4eba0127663a446a8aa0ae37fd201c561f151d8ce632023100947ccd78d1f9e7b5d695ce45cf2d41a8128f7a80e2a0ccb3aeab784de671d2716bc7fead03f1915a5d32b50795c9aaf80302047c435bb50067306502305b9a31c0d69ec5e47534e0154c66420a15d94702b7c5af52425693653bffcb1c33d64457bd020ba1e2e84867a0264098023100b1ee607478864fec04a6983cb01c92f32a6975f2480a93776902241952e88197eb40970714decf9049274c7581bd1a240302047c435bb500673065023100f9e24be3ca0ce0b97130d61cb8e64bef39b9fe2557aac6e237f8f56c55e46fbf265da44ffeb71bb17fc4167fa6a5b7620230724998fb19119a65da0504f100adf52d4a38bdd1a257563b193cde27981d3b09d335916cf25c29488f3af186dd8cdd5e0302047c435bb500683066023100ce84d71934186b65f5f1cd475ffa5518abd5e5120e2640763cd18a8a1fb2c1de1e8a7995bd200b2c4389ac615dafb53b023100e849b40d71a93bf39783b493d3e73fcdd3fad794b47d433d3f5478fe148601e06a82d1f1f34c71c17f6574f5d29712f40302047c435bb500673065023100bd271591998f1012a07e49721a2c8b9d299614a9a4d705befd189e22a5577740cf06e3148180bf5321628a441bc69b320230148d6872116c462333c16f02f8d0e8b3beae07acf6ad61a7f9114a14dab53e47c3092be7208f14aa8d503f2d07e1064c0302047c435bb50066306402305f8d8aeb5ef764c4e04144ae15692c53d67ff53a740e004762ae77218b34e1b88d5a14eec3d1f0ea5fe6a914555919c702302f48e953c540c39f5e708e2360540435c0b876eb16535b6e715a396873aa2e4cfefa8bb5cb64479a97a4bbdd47d265f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c0498156a4116b0efb62fbcc254fbbb5c64d450e1d8d45ba94d21402a7c3855b42a2055c58afb06b438f9b3f482837e023100cfe9dfae4cabc922f5e4a5e62491baab4081714439dfaddfdd88d3d06778d6a13e5a562fe625e2a104f70ec9b6c9e2830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b64cc6513d38675a1b80b871ca6ebdcbbccfc18ee1775f73cf369e89af1d83c4055e956979a938477f8e4b05db1651c023018f377a39137a6fdb7cfd7f34608526b8ebc5f5effb8bb4d28f663d50ecd13b6a76f5f3d6a4ab8459e25ac6c7433aafc0302047c435bb500683066023100fec53a9014d93e0babf1ca6e577a31c4e87f170aafbc58e06b0656549e99578bffd5e305ee53b5a6c7210ce44a1613b4023100d38209f9048a700cb3ab2dbe311401e5960275edd1defbdfc59cdeff88d110f37ca7d55fca7acf4948aa5a1e67c384fd0302047c435bb500673065023100d2a1fc05d360902a9861e090d85ccba827f68f29a2331caec840aef0276dd47af244ffe7e3daf8e782ea6308d439b053023019daadb9721ac0c00a43870cec6ab1c8483cbeadc563709a20f40bf7ad29a134b2d3a2cbdd6b50fe7bbe0822fdf58cd00302047c435bb500683066023100cf05b6da1e4fd3b679e87b1bbf7a0a6f7be412857fcd7c9d29ac2e40789b1b1f80695757ece7e61c2dca2ea79d387980023100920d2ef680e9706c70fcce47eb78f3ee60bf79269f35816daa16982b1ff23258a6f58203575e9a990846dec495b1051f0302047c435bb50067306502307361498afdba12804f5f969004ebe63f4331d3a217e211fc4d1c7fd855c4a9b8d0b23051093188fe4e7c0f33d7fd9f6f023100bc8d38b2313638b7b138bc0089f9e60394a8fb8d4fcf94a77b002b0ddd3e186469037c010c1ce5ac6784470259ed0a290302047c435bb50066306402301280f07e29fa3d3821f4b4433e6ecc627dc3906b18ec170fda4b714d0190280c62ea95a2b64c5bede20299ce3734c6a702305a92805bcc2a76a68b94c7b3830f53c160fe9826675e8c31a5a8bc8f4aa1f09165558cdd3c833f455ec83a347f9a5c7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302bcfb75530bd74c1ae6516cc215d8df79e23670e836f353891a0251d45b4ef5d571504cda12dc66968e8dff0217dbc8e0231009e07a1f307bdd0b59fb43946d298fcd24064e9d8cbbd0319cd70f60856a695083bcfb2bb0805abe711caff28c18617d40302047c435bb5006630640230667cd8b5e08a4bd87b1891fc130d17a0f8b0e44c4f7899fa9df24537cff2da702669fc2c626977d1ac406836f452ec6402305d6ec6c9160d5b9ef80224504863d57bf4d1681d6b172552786885ed9a0650f93b1025e2a2d61123ee4d7158140cbbc20302047c435bb500673065023100d8027dbc25000a3029f4281c948456afe08449565ae4bf6c07e91b0bf86f620df5cd7079c3e1cba8743f56aa21b5fa72023037f59d9917205f08db6a00a3493e2e23c1f3b9950898e246657ae2c758597a95c84b261bca75ef450c2a083cf4bd9a1f0302047c435bb5006730650230481b11746230d65502077cff79e795add51a52e0d94d30450730748323be6ad4fedcb278c678d44b255657888fedbd32023100d3eca1ca22f3515e14fed4a645c6d0b999b0a1957e677c774220d32509ddd3185459982a9ba0388d93205a2fed9399f40302047c435bb500683066023100deaa6e7842cd2658029985e527088c83c8cc2f2719c743dabedf247678c23e8420b9f1b0ac3ec1b51dd9f66672bcb095023100dc242c8f09f56a8e615fa8308cd21dea06a98bfb7eed11d3ca5ce4247f5454e308059f8f97d856eaaf389a5e62ed60310302047c435bb50067306502307f9747e874265c93582ccc4786fdeccaeb449f6f6da91dd44d46a6038942fdb35c157e2acd03df75cbe6c3010af13d8c023100cc095e3fee38efc411163c3c61955363d1066d4e56053d44b1678e47d77ad690944ffb0115524345172ac584a4647d970302047c435bb50066306402302970b96d15ec810a597b782cb03e6fc357fc3005478f43880e67c5339a2a7842d23d34a22d5c86f0f198d33ca1101e3a0230397dcecc54659ecef3e2427735e88ab9da4dc75e7411dc37d875217e1c7306b067c0f6280258b6864f5f1f9bf020b7f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023050ccdf90ef9492a4933678a7a1978ba1c70c700d378d735c9f635d99275161bb5b1d13609242511c628323e208a5dc8a0230353b39f2897f0f41b140527ceea5a0a53c5b714007506a36f328d44ed6c17a81b12b42bd0249c5d207531f2a83583d4b0302047c435bb500683066023100a8d4132e733673e8cc171dbc512fb40d829231465a8e079c3cc985edb045d661ffecdd8957e5c328a16a076eba91ed09023100ac8954ca71cd20990723cb4e29d7ed53a2aa1bc5d489e77aa6acc3903b0078680c1f9fea82d5c7276bb0e416239eb1610302047c435bb500663064023027fc1854561f1a34522fcd5cda5f64b332b92b52d0154dfc8ba4843cf10ba386f6cab753f35a895d4df6da110dd0f16902307a42017f2b7201704d013b3bb615fd1369a0a2dd25986581179d97af47fd61ac0f1e0f759dc3a31bca541e2712a9d84e0302047c435bb5006830660231009b8d8dade92943066684eb4fdbd933c3a3d3fb809e15320899023ae9f9d780c4990491f6149355643e9ae0a7b2b09d35023100b83d2dd9868fe0ed0af9ae39c473f405fda10d22d39d01a6dcff0a9222de2958877e221387496964ced8a7c2b3666ba30302047c435bb50066306402306aa6be43fe30954e2a27b601ea84f9552dba4363319f79363b3ee14f5e9e03a234bf00861ee1968997b4a856efb4269a023057e6ff56773f378257ebde4e8900aa5e083d4e33b009d68a560bbfc5ab16c928f490bbf05e8b46856f7a7ae98b5581580302047c435bb500683066023100b5b090d00b158ea7c167cf9d14c8a7e0371b8142c5540afafd0b1918a314582462a0fb86dd3c74c219a2af8fe412d93e023100bc48781d29948c6e229ddc396f9de4fd68b6900756693060d4889ed1b49026bd23d0cfcf68e1f413d6eea39cdffa535b0302047c435bb50067306502306d8e56cf759cd28d065c16aff28109252122e843cb3d51c66a466e45fa0f02ddceac28d5b97e72bdbb9d13b0bf033ee2023100883df72af2f3fd3c09bc3988935f5595ea658755b1f97c696d5a60ec2d16cca873e6ae115995b5172c06c2683a7032170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a39d8c9d78a333ace861092aed0f053daa48c0f735a57d6f38578e4583a131abd644aef67b2f562ca2fc55399ebffbaf023100c657cf93156267fc21dbf488045155cd9c1b1e5b5a8306a39f3b6d42ec835a6bff2a43a79d7a99932a51db5d4ca99c130302047c435bb500683066023100ef80de887a42dab43b6c055a9146a49858d10eed2250629d4507f8579dc300af7f6569c81eedbeb2104a17ff73ca596e023100802642b15439941c0daa7b5ec114c8290cef97ad63d5f391cf43bd26861bd50ae21af21ef6f9636ff01d24dd5169fce90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b97429d396ab07f578160dc6d2743680e388d56de07f5ec6f95d060ad08af3ca8f91ce3cdc31fd1064b4db3fde04fc8023046fb86da36b4fc9a6e2a268601835cfd5eddb12a48aa4851e8aa6c7e986139502c99d92bbf66f4722bcf48e2c94611e40302047c435bb500683066023100845754d8e61201ebb3b0cd956e4928b65c5434d22c2cc0e2c0c1e2e14a9c67dfad78082922a6ff1581a171a8e0e9ef9c0231008a94792b59ddd21c4e942b832f5c9bc5d75e6081e9d4a627d4d82a31b077c73efbf07b80a1227815b1cea6a55510d24f0302047c435bb500683066023100d9f60592d48d38dc30ad3cb385e97203ff614dd805f8c3a17e5a335f243c3207b7c5227ef2cc7d506112bcb10e4e3a2a023100dc22912180d8f584c6f495ecbeef5cf2ab12c8b475920556c8e03d7b696f8b86ad17c743442232b0bf4f51c191c7f3380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d169b9114d090ab5315b5544486acdb159380e3e63893c0bb3355135fe926e685e862c9ed396734b57b792e768aecb8b023008a735a83abd3c6a5543a556cb43122533bd8265ec8b94c1336590bc1d6af55770d96dc4de5952b42d88382a95b1f75e0302047c435bb500673065023056bdeb9000ae2d531315303b58ca624ca71a1f3f131c4ff560d9cab0d155447d6e58dc13a6dd8f75e274ffbafde67bd70231009e6ff315a9fc4c0bc3cb1c09044eee6654345b52092da702555650d30f3d8bcd540054a0b6ad32e0c26f66b8813dddd10302047c435bb5006630640230762f5a7707b157ca769a96b3e28439ae8799378d7ea00465910fd86a53ec9fd95d90dc9e6e34e63d289640e343d3f2fa02303b6e7b9a59d68fb87f9b7607cf3b21bca6fff918e3fe1fdf9da6dc8bf08aee76bc8a4b1b2a2e97026533bf237b8f5f2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073a39ef3c70fb5addcdbdb6d74dbd74b0f88bf76833253f1a1d8e76e9e27349052f54120ad333b0ba48dcda289e837ed023100f9ca3a50bc52886c3d7464a24f21a00584a4c14bc193594d0f5a4cd8e4d46c0f241b3612ea7816684c9b0ac68286122c0302047c435bb500663064023038429ec9b4609377a9f9604c9c47e40b4c18b0422fe764f2d00c406b12f57ebbb1c449685c4d594a3205bbddb353b1230230798a094615bdcce7b785177a7c405a035c08c4c20232ef483cc7370a1f4b6460091bf8d3e17dbfbf50ea94bd518ad1190302047c435bb500673065023100bc8494bd30d62f059f585ee3a89cf0572b2055709b0103e868b90b8e5534f7d674d4afd0627995c4a7d635220e092cdd023068da907101d0b259b77701009cc2b03f0061ff06ac071f7a93aa360353b65817970267614d3e6099152ada01b0eef1420302047c435bb500673065023100d70996a7f11da01ed76a7b44626af21a801e95f553d5434c3d1cbbec045007b934dc4b4f29faab4eb3c51c135bc8979202304fa840c399a132cd54b5d8df2bffaf6f9409dc2e91fffdf91f7d5c2f47ddc30c01f061c7f5444f6d038ae8fb51c0f40d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d4e762f68782e7e2d1f1dd8467a4e7e04fc9f8773c09595958eb0dc8567f7e3928b314f40bf994536b968a75ddda716d023100b85d1b3217a00995708e201cacd6b41b3bc07d2146303b03865429a24ea6dabde80b5000a87a0758147f4e8623349c760302047c435bb50067306502302eadfc7e1a9f320670b0b8f0e165f5c936d7c69af74198605b28b30b3bffcf92e8b811f24c0f454582183ec3c88c312a023100ad45f9617b7c57147b9f2c311db5891c3a12406432ece754119a2065779745d8edf61364b8643a749096ad6a689503240302047c435bb5006630640230353820e07bb47621cc63a65b92fcb7007fec68aa951ffab68671a2695fd0abddb91d7b089df4ed6535a0ce76da8aebcc02300bd6df899fc9d6251d9776c42aba583f0d41e828e5b48ec29471d0d643c88843861fa09cd78f4bd0862e24376a4d2c180302047c435bb500673065023053e426be91e2c904502efdcd8e5a8eb4032719ce86b67edbb5e9a5a4e39c5d38d692e2b8c2d39abe9df9132e7a6427e5023100be1f504ea05c23b53b3b888202bcb19beecbde3be3e4a117b64863ba4cfa0acc4974f5e4c994464a5dc3a523b45dc8d40302047c435bb50066306402302420def7faac5fbc79b5e071d995a8bb549199c35a00f782ad7203ffae024c2d7e3d59f78e526943eda4217ecbb3bd5f023078b498e2fbd7cf6e52dfd6323bada14f15daafba03a15542d06ba00681f627a79d3b1712fd52690e228da4157172f7480302047c435bb500683066023100becb3271c4c2215a8cc52fda85e952fe83e2719cb9c005fa3dde77ab05433bfd091e5a8acebcc050dc8e22a6443e5e41023100e8cfde4fb414caaa5ecc5fad5987a7a20c80d8acf31c43df4bb732beb82e567cf60aded1504495c8e8c4b9e35e28a9950302047c435bb500673065023070bfd0ed2ca2a1e9795c0c59d70f5b0ceb89e1a4c57466715345f74596474216eef86ea24b4604ad58962bdc95962aa4023100aa1f64b5d3a15a66167e671258003329fe8a45e92a5dc5c1e90fb85f455f83baff8e637d9482aad7043eefd65dde78680302047c435bb500683066023100f481ce04fc440dc80131996dc8132d0fc6d955e73ac57cc95f55c42d97e713ef9ca25a86bcc139cc0b46e8e1c5ff6f4f023100a41bc05a52b8b619a6a8993c7bb8a77844308416717d4f4cf90517b9bd7b03f034138f2377b8f580405b1751fe02a6b50302047c435bb500663064023070be39835fbef6860c573911a574c9763639ea1b6cac1d5f5df83dd35011159e698f4fe82fecf2304e790bd8f409094502302ffbca9f9678b1351f9eb2a586dea1c3d949d36fcd7a68accb1d5fb6c02838a5a9df3e56120f5b57b96cb1fd022448400302047c435bb500673065023060d99cd6e76301b5d046253903d019258b3a13c571320d2a0c78c63f8c54cae8c0d01d5c87f3f04b436dcf117ce5841f02310085816bb8379e54a28e99df1042c7f350cdc188744bd0e2a743df535bc033e6500b1bb661d4f9e91c64a9b7a12117fa990302047c435bb500673065023016e96b612c4fa48206fdbbe14635d80e48fa9cf68620544d4af9db57445b490f9ff57854108bd697d605b117c2b1e9470231008b82b3420893ecfb4943fd174919631293fa770e3ebc0db7dde49c8d681d5a89cec22e15ac44df670d2fce48a5565c480302047c435bb50067306502301e81bc3ba26ba856065bb567af564e8b05c4846aa2a0c0abb349ee7a4cac2c3022da85f1e9f06b8b6f518ee613ca8a4f0231008ca4a36c4c16f682b9a523bf548d67ecac256854ffcd849e00c54baf5e97fad88eb5a1ace10236d7e4e049c49dd816750302047c435bb500683066023100dd4407dec2e4aa36d5915454c41693f8e671542ece78d93c45c015bf0547223c0ba729215b78746c55a40af5157a173b023100feab1dc5b2cee5a1fac2ee16d3f03c8efad4b6020dadd92a97ebc3d896693846bb0616ce5137280ac52a095d0c7f20280302047c435bb500673065023018dff85369c7f6532bccc8b0e6181572fd2037fcd29066069c5e94a1294a26a1c5a779e78fd1d19dd6c8749dec363bfb023100c122c42b878c020c6edc4645d08bc22593351dd1a24f6522a230fd17ed7598bae6edfb54da3fc4941ab1762054e1fb510302047c435bb50067306502304e2abb976a141ea3dafc151bfe6b3dc64667f9cebd1ca7678ae752ef8dd6addfc649ff31e7dc83b717bae02038f43ecb023100d80530de39bd034965f16b1042cbf242de190f19153c7106c4a5f712e13f9d3cb7e7d3b792b5b26da1ff83e06971e8600302047c435bb5006730650231008a96abf4509a81f2f4628caa3a70b4bf0235938ed8844f380717a562da1e8d3499168fe9ef8cb690030e48b3ce094980023069b99ba91f98c7074fb37abfe922878d2b46735ebcade57651461f1020a9552bf3e29c73ea2db6d650a70445223034eb0302047c435bb50067306502305738504ebeb7b89bc39f398f2411954978efa4494176dd87b5a85c381126a233602772f604aa86dc9c4c3342c7c160e60231008f17e6379347af8edb3c89d09bec08f7fdb73c4d665f0b340ee3977450dcdfb5bca2e547c34e010196b0bd7b11b165240302047c435bb500683066023100c6c88d8f13be36ecd169479e71d4255fa08baddad503229e630f9738b3a11c90442912c162c6b2f1443d955242f0e1f6023100a305134b44d18d84df780d2793896138a16d822bdc628c8aac9b8efd8bb9979948c105abd58cef97f28cd14f91f2672a0302047c435bb50068306602310087118a495c3c1b5ab5ab0ebd706e4a51a49c8e01ebf95d9aa095c9d1696f02583b956c36334c74f063821bdabaa3dfa10231008d8b9a34213a1f5b7779b02412b4922d693185b811ed5ade7cca7f4ae0480471c67c3755874d5e8db85308f2989c75e40302047c435bb5006630640230686266f82feb9d608b78f4f4f12c5de27518495ce942c04028d4ee49f5b3188bcf076cff30d5c80f1db3094e80291a95023054ec16dbb6a60e24f8b6d0a110804c4e51eb3e7a28ae6d562182942a8ada2c6f793d8cae6b5e059fad62a513ebd3839e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d22a977bbd04aaa5c5741b4dad47907ebd20367ff3748d2a54abf8c91e10ccf6e488619e09c55ed3b7ccfb37ffc4d6f023100b75b301f4c4f4f1e8d9a73ff6aa66287e2bd55a25e4122e1ac9be878408ee4cb34e1204fd49bef71424bcfaded5872360302047c435bb500683066023100d40dd389e004899d12e9252e1a862d83d1c8b972d56e5ebdae33d14178affd92cb1b87e9c62c22c2ebf6d5b49b7ade5e023100ee3b1a41afeb6471de5e54e567e57e1b49d805f6031457bf632d4b4e8aa01c3fb66e0d241a25082894096f4218eee91e0302047c435bb500663064023005fe8bdaefd4cffbe0a954f365835c2d0528ce05e4ffc2ada67ef381334d171938cd1ba3256ac915138c25ce7770590602305f51315971d224c933826a75b146f8f03357286e964245ab5009f0def916bf19a1397b41b16fdb2b3b9c2d30ba6451240302047c435bb500663064023015541572c06f50a205112bd00b84a7469c8b27961ae15aa369c29ee3cdd95f279e711731c54a0f2492146562a14e990a023029e2a37b85df86b4a495e89ca758cddb32cc99ea43766154927b4506a8386450fed17884d71d14e683cedf11014c50570302047c435bb5006730650230260220011d8b7269b0157967548a3674f7504215874ab9e2c7a9d10729530c929966564ea1f993dab0bff8300e92422f023100f3f9a1f6b62f8a00e6d32b6a30b13dd7a69e8dead5a212dd63880f46db32f523e83efdf8aa21238e38064a2b4206ec400302047c435bb500673065023100ea2835321ccea08172f140fdaa1f0b86feacb5e8615bd676d159c11aee9f0843ac6fee8bdf26f1e8de5e913b57d5810502301a3bd56b17822e9f5a7f4f66689b7cd8be9a829905a623d11ec38679f8d4c4c4434e51881c61c0fa97c3e454873c2b4f0302047c435bb500673065023070fa70eb044b3723fecbdab44c22eff7accbf761e3464a116521474007d06d9a4d7e557700b79dbd04dbc1348a5eb1df023100cfaad1e6740c9226e9ed83aa3620cc21f27ac06bf3f151d12455ec88d11a792b16ca63fcb13a4f40b627185db145e25b0302047c435bb500673065023100bfdf82cd4aeff95fb840d77c11f56e60af21f46b76293bf23342e30c24307106232bcee74bfc6828abc3f2d51707fe4202303cd5cc251f555cb6089ad4ae3fd84bfa1c00ddaed8f37f2e667a00792479b8e80a85c4cdde0e9207b77698c136bdebea0302047c435bb5006730650230189eafbb99f121afe8469f3a6e425937e4e2e26ce3d82ce334651c890c4d0fae47465fe2671877484c446515b53c4a4f0231009b1e3119c11ef2564f3f10e65c54bcc7855490a9246a5fe7c2f960bf8a987aa9cace462c18c3b779fe71057206e8cffe0302047c435bb500673065023100f9901d42670a58f3ba77a8656c1eee01e6aab8e941683368e84c765d8eb81ecdb385878709720d4044df7adfe77d085d0230230f35ea1285398806f1e44f763d5b497fe875b676d56c7552a326a495fb89636bfa907fda8020766c09adba966a8f530302047c435bb5006730650231009482745242b159f12fb796c89ea2003bec75d424c150052bbf515ad8eee6e182910ec242160d907c0a43fdf0d04f84c9023032f60f6c122e036f55696cbfa3b378ab4e0f85b2b0993556e3b9baa69157ecc64932b4fccd5c37bb682b87deea5415a30302047c435bb500673065023100f278eb29c4e5a90b548fbb83982f09c2ff575a965e3ebea68933c0a1f71b2a07eaeb2812346593118e270660923e55da02300b85876c6a6df78644b48edb29cb800a0caa41daedd08ccfb61f0182d7e21ffea137f1dd63d64c5e4a4066786d8babf20302047c435bb5006630640230419a289a98403b806d5ddc93c135c423b89f99877578c4c756b6ee760e023249233bf1b9e862319601e1944ecef1518e0230652e5cbf4568c05fc88e6390025e77708e470fe312f32518ca61b4be9956681c724924783fc90a9e941908793196a4f10302047c435bb500673065023100f6053e97101ea374cfe2750535b777cd7b826da6fa1eeef8062920e552dcde0df6372253b3c7b9893fe838372b4d99e0023061eb9614dca81633d74c089d19f5e1a5731e84e8d2d59731bcb044cfe3dd84fba7f37fc75db78a826d37052d0bcd25310302047c435bb500663064023078d15b25202c64b5d03aef4f0c5834ffba85205ee691e4677567d7e5aa4d5fd2d73ca9f0cf8f48d5e12ea21d3986e4c2023028995301b320fa37031df95b545e7719f4bf4cf4c3c2d576a8c28b23c2c36c14c277c0bb2f44d09fe83270461eb636b00302047c435bb500673065023100f944d375318ebd2f0b67df8a50622444cffc216305f927fd5f5ff1c468e61fc6222a8f3934c08ca437a61f499a9c072402304bbccf95fa6abe922695843a45069ce3080a1fce94e004c99ffbdcb068eaf2e664c83ed4247d0fcb611e9f3bea4e60250302047c435bb500663064023052df3c154b15bb9ae3729cc8d0bd6226d288d05e728241d6a4bb2904b3012aca74a0a313d8502782fad73b151bb1658d0230263b70fedef8715ff7e14048e1c3e1236c176cd9ce00522c4b9b4e2b8c5fb80314060aa25a1e9faf00e2b5c5368d77af0302047c435bb50068306602310083a2b10ad49ccef20fa12648dd4fef19cd21c058504d62f1c5c36de65558ce059dde41852f16073e9329dbacd15aa8e1023100925741d7c7d23efeb2c5232273abaed301c5c98262bb45edf2ba9cb6581e2d632558917da5e4894cda2bec72b4db27b50302047c435bb50066306402300ef0919d08faefa03a084fa3b17cf300709b9d352fa2654caed38a504563ead590af666529852729cf13a1f6d7c518d5023009d9d82399c88107f2b4c3da2b93e96b1b3d539f84247d5c4abe446317ed9d6273ea24ac2bc5b0f537e6732bbced1c470302047c435bb50066306402306ec9a5d01c649480c7718b61a99e439ded87246dbc0b2c2b661d31240af859f68004c86b9fe5a9c86c51a7e351a5c065023001ae07ff771ea082c6bd77ba442e2e37c24641d26ff5cf8775085e256ee2323c957bb4009376fe043c1bbbe3e464c9740302047c435bb500663064023038cbf12127636523d1b0cd5d9d15c8a47b6c3d506a5825aae5022d86e745d32f1d192cf06fd8279bdb87106f290c31790230478af34eca65e4b618472c96be2e14f8797ec8e15b3f96d4ef66d8264f7071f58bffff2ba283b337dbae4194148d210a0302047c435bb500663064023002158a0e520aee241f53111928446af52d439ce8927719283b1c536b2a721c2ebade5638a403241159a3384f9fab7d18023034e0eec2878b060064cda5e190a0e2a1412eb5e99c715b3d943dac041d989ad9fbf6b366b5cca84492a4c28690a9927e0302047c435bb50066306402306f532e46574a7fd4f5297f32c8d5b04174cb4dface68dbef4c3daeb9c4441250c4f237ba13d64d11d858e4cdd082dcc0023036a52e6bab00d5d8172d9275394371fd9e5ae8acf2ab2f22f8a562c361deba4a04f2f3efad8a7b4aba000c7bd9583da80302047c435bb500673065023100f22e0023a5cddef8711f89083b28e823c90691a965e38446a06d0cfcffe477ddea44bc8a9704db4dff013a737b0a33e2023020bd7699d8fcd24de9226d75d9c5e37ba937ba82b39cd8a886b3f54c32756d991152d7f9cc48810afa662c0e2358319b0302047c435bb50066306402304edc617ac4b44179f70754bb018a3a26511e2e29bd0994d05f06a1d9447b9be465f7b7b9c869f95e61e9e8f2ba801b64023007324736275832ea21e8ceb78ca22fff6d6f3bd6cd99def15e6b1b97fc80bbecf9aa05c348e74c8fece7965cdf5ae20b0302047c435bb500673065023100bb83b77363f656c77f1b1f6d11a196115ccd194ffcca3e16657e6b6295cef2eb476b44904d717377238c16509eb913de023024846471cdcde3affbc92139cf672895b41dd331520c69bb060bb3d223c262fb01eda46b416573150bb2c2439c97c4b00302047c435bb5006730650230490c19a30b734572b241b851fe8e8ed9635952a09c7c671d3152e97d52647924c81e731b5c0c99a11054c50518bde23d023100aa9d1ba0200e513fd099f7211bddf67b1865a69a312a0c30e269426f92484a9365b4dcd2aecc7efe561f91b9bc95742e0302047c435bb500673065023064d644bebcb5aaa4ddba1aaa733067a9f00dda5c421bb0e92b1a7e358c8f8f0d8c655d8a471066bf2bb31d8c0459ea81023100a5feeb3fac422856c9feed875195c4743cf9e5466089d7e16d947f4e1ddc1a6febb6c83a268333a7a7e76a4cb68124750302047c435bb500683066023100abfd8464e5c30669935a6c69f139a19fdfba34af51c9e007659920968f811f55aea8d3fc38502d16ac909ac76ed36748023100f797e13a60a842db49463b5b2bbbdda9bea5a6f8e7b243cdfe9ea644529cdd0e5d024425f8d53dd7dc033010366734940302047c435bb500663064023059a77e20b607d074003064fdae98400faf94ce7a2b01c56d0439af3df0b2c6a19b64adfe4cdf2f55b969488deaefb5e5023034bdd9bfcbd5c2275656fc2fdb8f02999d7d6e3a0af8f6a755eecf204bc56ce574e3d38f80a54c063d5dfe58aacb0d2d0302047c435bb500673065023008a5b4895e1f853d3ebee45c0b2ce1fb6f84f3c14eeecdd0451f261e3e518b28c26f70c6e5f6d539f8f68c62b00487ec023100a943ec9bb4cc1d8f0c7e1be0773a86b6cba676a5ded760c27e59267c79fe3f1008bc5a733e26dfa8a11eb016355f63df0302047c435bb500683066023100e11cfb0d734721f58b90992dd8da4096c6b5823e75507a9f87518edfda20aeb7823ad5ea4ff7ae09a2496b87edc5fcea023100e7ba07880bb34f589d13047072e694469e1f7b1e9c7e68cfb34f30e087dcf74577246d2ed050f03528f67987db42d2d90302047c435bb500673065023100a3101bc6d5e3d8106c1e8283c7fe190b823a095b8add567a363af2e6592f607e55af1ed7510121112a84aa1d4917ceee023059c8ea554cda7c7832f9e678e892a20d63a07d65e28eab8e2ff8613795f5c205d6591b75d072d16171c65c09e4df02320302047c435bb50067306502301137dd621b487e1c34590cb9d6d3729eeb4826ee4bc52ddebf02611e9f9d4cc705553906d3118f6d7bb0a73ae050a967023100b61c1eacc315d98f21d4fb0a86b9ecd1d4567600ccf0d45a9a86ab3d99e9fb6fffe26650cf784a3fdc1965793ec8b5740302047c435bb50068306602310080d14e57bb08a4e5f44f1b3f229bdfa02ca216cf99803166286c2585d5dcb5f475cb72bfa4e3df9fb42ebb6aed92f794023100f30ea04933b6ee13bd26ea96247c7a10c079feedd4a22021e16b586810816abf95a525021387abd5b8b6d389f7af53250302047c435bb500683066023100cd6f99157972acdd270984956e33fc3f3579c1da425556a686c7d8f0a19364687c15746d208faa55336996c3d57f76cf023100e023527c43d0efb19be44fd5998a3878cdcdfa227a050058a40b3753dcdaf5fb5351293dc63f9cc36890da38e8d7e12d0302047c435bb500663064022f724dab28a38a72ad3225cbc7f8ab22590972945e655a6f861f39544f13a22a21c205f81670af42bfc90fb602481e5d0231009b4c6d60f1add20b83910b0020bdcda1a8b7c19f358ba1512922e165d26f0c5d0c13fedb56b5c289459fa3a70432de770302047c435bb50067306502300ebc8501ba744c6a4231e43c15b28636e4597347146ac58a0f6bc969e057cba004bd3a8404d830b99b7a1a524f9d2f33023100838459b15ab15c3e5ff0cca2b0ad5a81d01271ab205a4f3c905018166b9f23b0c11281614b1e16e1ff21d18b4d886c9a0302047c435bb500663064023048390f297d7556398ba6a6972a7a86af366b83cc35646c2f739a0c61b607ffbc2247d9f8746d5f51af50008cbf7dab7a02300416bcf3ae7e1b3c57c4e8e7e969eb4eb556af2fb7c11999ae3d57aa4351f516c5b11216655b27f1486de90b4f9f00ef0302047c435bb500683066023100a88aa65d42bc27b03b5d1d96df57ed44f08614091accc10dece95085ed20c2749d382d420f511318cd357bd1bd84642f0231009e54fc84a4688d0cfaf3f0f0e5993d2c4758aaa69b8f6fbc969e2ea67211f222dc7d9ad168996eefbadcd6145fdcaf660302047c435bb500683066023100fb348a2e613778b43c8b9506a4c2ee547205cfef50ed24edae409eba18a30730dd29e338b15d1c1c25fd79ee17f141810231009b12c9b0d07b03cb80946ba0898117bd2ddc5ffca890dc391ac08e60bac56ebb2aba5047822bd47f06c9655a1a14faa60302047c435bb500663064023045cae2f7be65afba6c684c26066a7269f90b151a39cd98eb2216f45505774b3b1dc08d4be1453250564ede0731af867f023028481abc2f3ca7490cece59d71ff91c8b2c3836d5fffbd11038a66ba85af25d76c66b09915bc5e1fd5408a93d0b15d850302047c435bb50068306602310095b843b2836d609e27dc3447348fc0e3237f280f5b6128f98382d933e69de807135bd7beb25a9887538d4276c3eb406d023100deec2a253d01c4f58d1d46b8e70eae2b35d23cd15e97ba328e38f938654c2be1fd24cdb916fed7d33e42695bba3ccb150302047c435bb5006730650231009f439af4c75408164003bebe22fc29e8ba48c5b16ebabeef1a74ce73335f512525c4adca0a8494011237725dd293db24023022e2e351e84923bd1eec1449dd548756c2fb453aa578e9fdcd801253f71131375f4e90f77d47ebea0f4c6fdd6f4143de0302047c435bb5006830660231009f4612eacdc4f70d6ff89768b075f83ff7a6ed40d85a38f6b44f1e7a189874ef7df18ae2c66c4c8575b33d8e45d624650231008f9a8bd656dde456af7d9386e8c67cdc7ac00c7a24a9423c53f370e3bcf732c413133d027200da58eb1b42a30f7d30330302047c435bb500673065023050cb13dbdb736234763fdb4851e320755235c6c29835c4e55fcdb0842de9dccf0ae6006343a3fc9c0aa178cc097fa916023100b246b46d7bfec23aea9f823fbc13a6bd4ccc689e331ba75d025b12f0436f3ef2f12950e84d77e0e3b6f0a75471379f360302047c435bb5006630640230311a1b475a3f5a2b4e8b1756ae37f63a10e219b0f46c1e416bd6485bca18c3865a13ed4bb7d2c427f1dd5d2dfb8d03f2023056e99b05df21c9b183eb0ebc52481c0e2f1c699a96f1fa246e09b144cd4245a16b5c3894cb64c617cffc30820d3046980302047c435bb50068306602310092c4e416c5f849e997b62792ec0cac1bc2b39df4f47b8496b21f1f81cbc5d6b0259ce3582bc0622faa52557f52ccfb38023100db963ffe8fb3660d74ed3380f43a123c89dd1a1da373c7d46fd054dbfbcd724cad95fa4bbb04d4bd495d738599f2e1840302047c435bb50066306402302b30b5476cdb2bfc90b8fc6e7193149b4f997196b74fc061944474c83cb2bbb8cc49e04139dc16ac55f179683366d265023049a60b2927953322aca1e22b0e2860433fd1e81d4835c2ba5fdc472d8bc6c277e4a28c2986499ef62b2059755deeaa7c0302047c435bb5006730650231009cef8ec7cb6620e31d754cd57a4de111968a9d62418f54537020269e1b85068909a0c6a3be78015cb5c580b53eda0ced02300dcf2da83a2d94a30bd1e795947506f1cbdda8962a219936398e5e06753698112015bf7ae6e513b869e819e96109e82a0302047c435bb5006630640230047f3f59492623ebff4687228b74b0da500341d40cb15ed22964eccaf210a96ebe5c892cf295126f102af992899fc49b023065f4d82400c2b1bd77cc777957e1f3a1bb692133b82831f3397ff41004cc0ccf33d47e0f640de455bbff5259402c4ec70302047c435bb5006730650231009a3c608e567eb71f8fc961d7df3e001af614a67daab86303a4b1198850437a2ef9d08f5801be8dbfac90748b9bddf1f60230340782889026a5671064ca23ad0ee0e98c0419825d7266737612f005c974f745ee983defc971f26a704dc5565c3d49960302047c435bb50067306502301c0ed78c1a40476f47afc5f320299805cf2b77f9203dd6c649bf10f8ad3ddc614e9b8c6b220ca5b851de00dee5e3eb5c023100da7f838ee06010292fa4b15e1797f7f11e0108ba5a366188666d13b42bdfacfa23e93a3b8915f1d6913e68365825807e0302047c435bb5006730650231009a92a2ebd88fc6c9345510a2f6dde1b030c6749cc2f1f67a004e9e101feb947c6caecf33f341ec2ff24bc218e2fbe09202307b28da88dc453c055b03e8aa17771e8c1438635ae63a201df250c38539680a59037bfed86af7448b408fcb5df6022a5a0302047c435bb500673065023039a2e3deadd8f2b897d0fe7afa5ff0f4522dc54904cd0e3c78f9da93fde138bae747e7add8192047b139697269949ca6023100b9da0b916337b2d46614f64af993cdc8c1f297ef99ee0cfc03425b3adcbd730eebeca2f942de2dbfa8bdd1b5774df30d0302047c435bb500673065023015fdc82d48a2b51586e8b360cc85e18d211a3771ffaba7b5df7af4c666be19491f560e0be8cc0580648204cb797fb611023100ae424836635b875d021997a7b86eb3dd546b4f102c10f8110bd64085ecd8cdd2e15db7a08624f5ec2a86356b499d7a340302047c435bb50066306402301c11140f4facf68311f71be1eed4a223de3376830963e8eed7c21989cff7c16619534a4f2d8d268e78b443a10dd6271102303b331712f8db5615789d8f60826db4c39fa40d9f1dd96ec285b582817fb4bb38817782a017f38e3df45cf093d27209520302047c435bb500673065023100d5137f615878671a57e6bc289a115a34c72bcdb36da5eaae13be5cd3f7e7b0e5d5563774c3880909748e924df97d9d9102301573932ea5b4fd52a3a2e90bb9dc3568b341de086571f005bc5010ba758d563b5cd4a8c1d332f37766a6bb6272cf72a90302047c435bb500673065023100ba39f989e73392cadf419f279f5569da6529ae5bd4a34a314777fc9fef12c62864e7c1893a6be440b0da681ef964323802301e9d7c755e6ee438a0f2f17552a376f91a73da93e110b0d414536aab78f603419fb7366c1a45761980eadd66268098410302047c435bb500663064023036c1adc53336163c7b54e347acc4b6dd1d9b537a101550f742e465880379b907b3d908255f396fa656808a5f55732d02023026d30bcdb12f5321af30370ca7248003ca9d4b46f97a139093b9bba2f2585c36e17a0171dafe1df12aabd34236b8fc1f0302047c435bb50067306502307b57f8abb438793b34d7b5f063d6dac5d0c27c629fefbccc316b2d55552fae2e626123a23877abf2a5d56d64ad73c02a023100875f9edff5cf008477cd688109eb1f6d6313c732f7010d1e79becd440ce8fd4aa4acbe492af0d9232f53d7355cab825f0302047c435bb500673065023100f617bc6e6eb2552da4da9cd3039ab690b714d73884a61dd2df062baf7516eb6de28e24085ec5b9a56541a7256f56668702305afa684e78122e92b1820d4b794fc431e0e7a00d4a07d29e7f8dd137b2f5064839463578405dce61759dd81a115a692a0302047c435bb500673065023100b820c21b3a8466e7cc566a0e37515097f48c0fef19842efe4b7f1e539b8229cf7834d0c7f4b89ca2b35b44e50d3347ec02306eb694e60921b4a620b3716f621a8778fb840a860fcab5fbe4104e16f5fb06ea1621716eecbf7a0f78360fe4d84f42c90302047c435bb50068306602310090a4350450f4c4fbea1d5d179c0a755540fea9887009305fa9c592c9234677f2fb12128781dcab9fdd9db339ea72eb77023100d1bafb6e300b7364becfef972a6b96930edfdd5c98a54a2cb984a2764c6e213e6be5f0fb92a185249d85efbc493770b80302047c435bb500683066023100aa5ef523e171baf46a033b60659eb119481dd7c0dc69b1cbbba8f5201b5e1de28aad8afe04fc0d12904d40047f869521023100e7bd4e291008b71d233c1d0c4a9a3167fd3a1b1885ede5d7315abefb9297732b9cfa8dc7010d9a335c29d1b3f4119ae70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f84945d743b04985a5fce700c75866647b953080cf6a573cc6f9b43cb4a08318ee184c9ff474e718ee13e08c0563c623023100cd495c0ab974e111ba797823958efc92e4acadda2b2a050668c0f51df4e69082661aba719a54771cfceca735ed221e780302047c435bb50066306402307068d1e04d2c62ac48bae84d2f0994cd6e86e0e1bbfa60693f23e79caca3432ed3b6f407b5c366172770b0cb3b0726e302304cc2f089e08649903d402c010899d4c985266ff9fb6b0f3211f747b894908783768dfd7006c385bd7949ca6c16183b1c0302047c435bb500673065023100af1f530335c5d42fd1f32c4fe613d54af6471b53c030977279be15edfd33b60246a90fd55265f124b63cf84fd2c61cf102300487e76b8294d0535a77b85c5a1ec0d64dae7759a5fb5a6a7d5c52c932789b92a33b35da6a25575d7c013f536d4e64d60302047c435bb50066306402303d69993069fdabf119ca59f33f5cd96332794f9a7e70a48c829b8bcb95395b5235eb6db88c4bf67991346c392d1cf1eb02306e363f0ddf52429bef3a5d3a558f576f2470b9e4f334e643171b1cebc267347515188053315f84a8c72fd7d888e0678d0302047c435bb500683066023100f4d61ec2f91597157e32be7a93e72e90e1d4e1ab34de7575d67f1ed20d17c1d9770a6c8d657057cc3582268fd5589a2f023100bd91c6fb217f488fbb702a3a3442a7367c07b8b547a32a23e9f329b0c928857fde220f63bd85628c044e7d9aa6e9dc2a0302047c435bb50067306502310087726fa1a2b061617f2450d4ac8dec72dcfbf0ee7ae41842775a49332fcf6f50094ce93472b0de8634bc2464ef45e1ff02304ac04355dbbbbb819be9d20728304701fb6fbf8f67a2cfc1289b80cd5dd0ec7361a557c39b9a0baea16e82d2ca49f0750302047c435bb500683066023100f40a751b204bfbda6396a4cb7250c478366cc4e40515b2e22d464168bd2a98de344bbe5a6007bc0e7c1a0c5bdfd43f4b023100f3a778734c62fcf6602cf3989d843765430ea209eeefd85b505a121fc7f375ebefe365c19f724a7b1eb8fe6187ec19ef0302047c435bb50067306502301decaa6f78fdaba2701df351bd1fb8c42f841965386c66a9f845b0e3f7fb087e1495a3959f513958b0d26b7ac27c2790023100cdd8bb28127b7423ec335ff8b3ce717d9821ac90655f14f1c2c1d7bbee22428aff96e9ecdd2c80a72e5760bf24bbdbf00302047c435bb500683066023100dcc9dbef59199bd5a01dbfc718a3dddf96d4b4b6dfc070b0d1e1ca266e1016101febdc79c2e0af73c97e833383b06fc2023100d320b8ebc4171b52a6fa411971aecf4b2e893c9593f9f396d0d124cfc1db5db57c712b56138c37112f21ca901392753e0302047c435bb500673065023100ac073e24a715f3ddba44ddeee06569eddb4463f13e832d5f0cde52c193ae0943de092c48ba3f7ea7313503f59e0941a20230787f2e646dc3f5ef5b5707bab7bf0bc84f16fa2e845ce76eb60b82913d865fb5b581ae05bae54980de20c85cee21b3b70302047c435bb50067306502305380577651cc93963cb30ed986ff6019897d5ccf0d3dfc3d17812a1ebcfec52504db20dd29f8bcd1144660545039eaa9023100da87c519d90e166cc35f7327c102a49fa9d77b1f05fe29f908ba465cb4199ea3e673de22225fdd393a7322914702d8a70302047c435bb500673065023100dcf124a4f0a876cd8a406bcb085d0bde60fe4e888dff8d173c3ec8d144c03d23b3bf3d32cea3188628b1c8df8da13025023055227c15803902e24c78dc0e3700c085e866d4b73bffc73edbcb5f4f8d6be414522055d46afa3f0f2265d686f637fcb00302047c435bb50066306402302305f72f8f3bb469bdcb0c9e96b58da112dcc0b7f98790032c4bd7c0a80197ddd5459bc5162d58142a644dec964db9e402301b2dc6f42dd0851b5e9f9b046c770fa6e4dd74e2f0222767e293882f37cadb78a83242b02bc96cea5840aad74e1854d50302047c435bb5006730650231008f1dc2ff9c47edd1f78214bd6e2931ea89cc29bbce8a13712cccfe032fb4470a922d1170add4b9bb0eaaf0ba09a8f6300230666d705a1f20b40b9f963f75c57da3caf027dda537273e8906a83592d698918c00108a3d44836f2fd188ed8de2028d190302047c435bb5006730650230079d657ba023298f8c9924348653acc0adc0616fa9902830a6c931b11a704d828a25c4b6723abc0f2d5634d28101fd08023100e73b51b4c0a6f1c591955ad892bfa61d064bb37b068337af499b4b24867da4b22cf44741077b002655d4f17155ba22e30302047c435bb500673065023100a7a6eabb29c3c8a88c366f7066599b33c5e5b0fae74745f9c190b4ff2a687527ff088e109bba1ce511768f1e5004e6ef02305f232d1bf64d7a6cc88139b11d7e329c7bd32fcf87c0915614420a45d5e2d18e9abc922711037c4aa84a5c1066f774170302047c435bb5006730650230410535a58cdafe684777b8e0671c7a9e2b673d586bbac170a1dbc1d67ee5e8473607d211fafc234d1c1ff6426465d605023100e811732a5a09fa42db9006f6ea899662786618a11eec103a93ebf596021f893530da44d615afcd30dbaca7975a74c67f0302047c435bb500673065023029adb4b9469e2ad418d0f650a3f1158fea189ed9a8b443124dea8cc3ef094c4640827435d214c32a6865ee154cd2cd91023100accb9ec0ad1e1e1dff0ea529477fdebfcf124f394dc6f348791f99ba5ad4392c8e5ed71f2a5cdf17b8a43bc9fe2896aa0302047c435bb500673065023100ca7d77f59ee641029c543c48d39cf15d93f5209bfb36075ba166862dc4f728874a362be69918be47a6ccbdc7f5e11cb5023014b90f966692eacda0c9ea99c43a9a821aed0d28246661e7ddbf776494de43da205b84cc121130a7027b98bea4f6795c0302047c435bb500673065023100b18d6d5afa9dc30879c508b19c851e3aafe2e3937fccc70ab8f98def491148fe4e78198486295474bcfde258bad51b02023058a89473ecef5deef82f08969482b7c4d87fde0c7171bd2d757c9bf22deaba941c83e5575ff4041c7eec9792a9ac978d0302047c435bb50066306402304ad350b740557e40b98f0f29619e0eba74f13fa1d8697aade19457e630fff5dd588f7a67fc0313240c298e52124ba59202307b1f66d338f99bcd17ab0fbcc040ac7a1bf021185e1d8d55fbfcc3d54b165e4a99b4281e7b58adccedda87c81823c3380302047c435bb50066306402302f9554cc69bbad7843d8257e0f4f7b98582f26108c806b172e26adcf864a788a6c8cc3993bb3b92cc70539fffcf6ee260230319d93aa291755678693f3398e64348424eba1d28a887475d719beec2cc399e784c929cf99b6a1ab84c9a7616378c3bf0302047c435bb500673065023100dbdc5afbe679d797642270b1801a689b06fbb868f3162ef2e34e952e8da838fd881343d7babbf19e50517df2c6dba9990230458b575d8927bc9a52124daddc0a95c5b1039e95b09a22c137105f3725d3af3a3f1b69d22ef30e97ae96679cdd29c4ac0302047c435bb50066306402301bb4699e5bd42ac61cd4c255ecb4e91d21bcb76099fb5bfcfa737f62d66b8fdece9c2e6e533598b55dc1bb2e72903278023076c8c07265c9802b62231b907848ff5a909bb931f3cf5acd2ca4d76a37b7f1d0dda3a936f287ae26f897291640ce78320302047c435bb500663064023026bf4e7383008c0e8ef143dadcd961e83ebbe51b8d75e8e14b9987a6f42c202f708462b635c22d2127d646d85efbafb10230544838bac931d351f281d9187321593bd81782c7d7e562b827e7bfa5f93bdfddc5263b5dbaac25936758cdea370223430302047c435bb50067306502304b75ec0c879cc1866da555031da13f538852112f5d271628fad7603e1213159693ed29a9db32cb67437a73adb41796cf023100bac199f587b2aff969c32671b35f51b7d26d8c482454202b5d1b15459da2dd3c4bca4f915704ec31936c3b97679e3ccc0302047c435bb50067306502300cbc8b2f5dc39ef8de8bbc65319a908d6bface767ab19eec85169bd4da26057da511e9ddcf84774df467701781522496023100d29111d44b4509ff69a0e7e03b009d1665a50d6a6e54d7d09299c2ad6c0ae9a67f64f0c87d77716e3a022be440c3ccc10302047c435bb50066306402304c187862b55ce7be342a3a36aea276d041b84d45a620dc77877364009f406191aa24d9b18d054d27de3c277eafe257a20230724a45f6f663545a1b2cab1f20a8e724cc20c495cb3039f3e9c1d12d3aec6a89f606700976fa93d5032bdcbeffa072dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fcf2ca352922274a6640709af4ea40980bca7a3288d1ef42e55464444ec385faa73065ab8c45f286771f893098dc190602310098fd84cced13b05399fee982dae98b0cb0eb97d7a6609ebae3371711f1c116fb347ce14d136e58356d05d49e1abd84c10302047c435bb500673065023100fd9439feaf7d5c5206a863ca42e3f73cbdbfdf3bb632cf9834c0f755d7f3c938e978c71498b88e61675522c51c8c7bb202304ed1dc7696f673108e0ca0af45f3d271e3300d935029efd99c9d8bc2c961e1e298acff720d775f0fc297fdfae23a5e5a0302047c435bb50066306402307fc727033de222e91f022c96c086ff0f9336985f9d061b66c583246ed266ad9ebb2cdc6c61900c1971833b3257c0b605023064b5f2b0888dd6973aafd166d655ce608b8eb4d34069329f8a931995c331075504d4b80a17a753e9fec4e13946be83de0302047c435bb50067306502305cb8baf481a4c5e93f54d723f7d40c46198b2f7c5cd6793ff24c2099749940f458faf429ffe18c879b05e29276533123023100a101e4ccaf017cfb2504404c2ec22aa14e012acdad9a5c04a2c737df187a1d8d69f4f81e1eebfc5ed74837b9d21db22c0302047c435bb500683066023100b600d6e2755ccd3303bae44245bae87470d38b25afd5c527d2aea948113d8d6abc07b0d6c27d5c3712567894f031eb66023100cb882571bd882caa062a3449801da523194ba74342fc2d5e88fe815b7d2396dcc8c1484d8592faa3fe6fa064ff0e004d0302047c435bb5006730650230608a8f01f5ad8d857e37d00cbce15f6775b4ad057bef1fb3b2be92584771dd0ed9f980efb646b4d405a901e50a762d090231009bf097f0d789631cb12dca8db2032f2f4d0c98231e9af9ca2134adf60edede37648117420f3251553ad1985a15643ac50302047c435bb500673065023100a739f864bc0a2b6c0fe0421c706315bc79eeded1ff1ae2a5ffbade2c603c6afc60823284b5b88c2e6f4b61bbd9ef9b7c023031246929591f30daab86a47995f70abe4bd5b00628726a1cbf929e31383f35cbcc425b6376ba2ec3213063a2380fd2f10302047c435bb50066306402303a568dd1511a8d8392cf4bb2f556121793213e8207d2e3c1da39b1f7108bd37d334b03fc8f0e3ed30e826bc12965acdd023062873ddb9cc476bc12d8e0a2284c56fad18ba5d1c35b39e32bddcd615f92c7377d8b8fd7cfe198dc6faabfac7395b70e0302047c435bb500683066023100c6f7578c2e3bfbe0d292753afec9096885a54c73155a2d18d950ec5fcab26e21fb93795b3148537b363ac365feab1dc30231009f0bc290cb1792e679de89fa3fd27b3772e0a5dc0a49aa65b48c1f367e7ef245a7a257dd460b8d1d4d8745395142b6b80302047c435bb50067306502307db98fe7d45c1739990c55aab88236da8a140f216bbb1613028dc0d108ea849e9e8661fd56c925c91f27d92065b28b19023100b58bf14a0582247102559aa5ca9664870c0a07eee79fd142aa65db68da4b532c5e1040cf7ab76bc879b46f9ae5497f430302047c435bb500673065023032a9d585bdf03dddc6ea757419289cb5c23a13417b9a5ad3d273009cccad8559937a34486803284294633cc2658dbf39023100edf8a3d282367201c3c19ed015806dd9386131efdbd1a0e1cb37acbea24fc470ff4f506f4a824e49abda85393433a60c0302047c435bb5006730650231008ac358e0f929a7a1624e1525afc8169cf80101ed778225f36ef3be81fc7583677346b3b0c9c2c56be57268fc0a9c5f1b023020764216cf6cd59ac6b86593eaed1594134d9ac84d72c54aebec449e0736e305157c567628a59b851e3a2c445cffe5e60302047c435bb500663064023042b9032006466674cbc15f7b27a4673dee5182088ff6ab0aaf8a947ea23bfca5d5f018bc928a1b0ed5f0dc4afda6918a0230132a8a9102dd72c96eaef7869745c4179d08dc867b30f5b75389ca7483295f2be351c9ae37ed37d1a40c0b98324ea6b10302047c435bb500683066023100fe46447bb1877324d759d773897687f1cbe324259d92fc915823ed2afc8282cf1790a7721011a8a243092edebf35be5f023100bb71e9f145d7b4e4cf5f9d4a2ecc696a42d59187d86cd29e489998ffb81ef7796c5533b6166ade6210b4fd566c80560f0302047c435bb50067306502305aaca3ee97817e7534681b2a88f7abfd22f1b484690eaf2ffc4a46940bc2572030ca228c926e87c3646e6f0b72352072023100a4e676a0660ec007069b9997f7d1b11bddd90d103923ddeca5bfd5e93cf3775e2cf2439853a1df4928d6eb1ca2520d580302047c435bb500673065023100fb91f9be509f914ea700e6b6fcf79ff37dcb2154dfbcfa032ed6335d59ea093fc0890e9296d5df4055f964e5c3499fc802300ab66076e6dd1edf2d1a3c7e2759ebb65969706c38395b36c2b2cc487384c71e54dc4d7423d1f6e6ebeda0aa947f081e0302047c435bb50067306502301eb49fc2c61c9db459ab60ad3656a276c6825c1eb6702ab70ef967590afaa1838695e16df8b3b23f9fafc4287dd161b10231009c09c6ae4a2d46e3172f117b64e563bfb53c447191b8688b60672f496c6039353d34db7910aa4580d0055a9ab955c1090302047c435bb500663064023008647b22467fe8ea4fa0db57fb46897be199d26fe59390e684333c6a3d17de256f02b690a8e0bc76e4bf7fdd282634750230156920035767416156492b1eb2dd350c283ef4d4d59fad44035feff621a9a7e93e67b82d002948ac7fffdc391189c51a0302047c435bb50067306502302886fe1cb903bd8d40a1909b076be690ccfa8571664ff8d9e6cd354fdfd2d1b0edd86e332d4c627a66c6002dfd105e0802310083dbe507b52499bde58f39e74d2594bab585171c0b53232c665d1a2c53e46dfcf0a469828694923bec8a69f52211a2470302047c435bb50067306502305a312acc86925e97da6f940c8e0fc25f6a8a3d263621b1d67741ac1f14ba7be0d38a3338a09ee7b9508f8a805b6f7da0023100a47f51bd9d173621fda8cc534899f7ace410e6fde185aa6d365e85560bb1385fbeb30e2eb4d8452982b238672e16d12a0302047c435bb500673065023100a1c3f6c24103dc6c0892517f90f3fd3a5a534bbf686c97a35fa3a547ce2de499ef3c6c07898e3116615c410ff868d169023009891c08cf7d3aaa26cf0d0561e44888bcaed466b17c1c7abaa04dcca01bd0717688870f17500929d83324359c3e981a0302047c435bb50066306402305565f27e27814b93c55556038f1371cab449a70d25a37c46f5efa7c47792ada2620f9567a1a220c56140cea63e945141023014d6cd512606a4358a9ab451293085792d06e8f32ae385e7796b969e07ae20fa7cf7a7f54deef93559d2a27e4759f7e40302047c435bb500683066023100fd4fd32dfa22ee20137139baf172199841cce69b75663e0eaaef362c30d8d55699e7bcc84e8ff1dbfaa6ee76f784660c023100c1ee25d5651e3be1fb6c7210da086a0267d6a60419d8c64c2eb4a4d8de90643d917488b23c3ac5e2fe9b555078997aed0302047c435bb500673065023100aee3bda771ba9cac338755ee636a012a88f96e9f26dd241531c0dacd0fa541c2cde007c0840a84df6d55874765e9016802305aa2356a6c6f66c76b4e3694c30532366c91f161caa10d46224d9f99f6079ca010fd031d9c9c6f4f3180c2d1dd632ab70302047c435bb500673065023100d040149a50c903a49ea40499d46a9aea6fa1cd2c8982ca60f84fc50cd5e1e2dac5850db85914396d660e9337ffcb90e6023068224b71ffe9e2d0c06d438309c8a8b86aa574188c3d404cef0b6634b509276774ca41aab857317a8675f46d84acaf190302047c435bb50067306502302ea45692db6e2cf31e403240d6108ad271af4c47f531d4e68e6019c594b6958156af026a3d259df6d735943f7b25471a023100d1be1cb80e877397e1ed2d0d7d119ce81776041d1a8f573fd3637d97b8f3fb804fcd1f11baa7c4ec0c1fc0f5eef670a80302047c435bb500683066023100dd5677fdcc210cb62eaeef28e1fbc132e989e70ba47a889d9d3590491eb0368937f69aa73cf8cbf2fd811e3719fa56470231008c0593522f9c12da68e79e197c4df190cdf79cd901cdb16100fa8d0b36a01b5cd78b58f9b6986778676e8b273f28ad580302047c435bb500683066023100a7e8034d351c2a77e7dc0ac5537f06a1ca5e288c279c68146cdaaf802e1e4b1257d9deccef97d0ab98da1ffe89383a9f0231009d7b7b43df66889b06367036e3bdd1e504270fb51a73a76de8def7cfd007fb5230c86642ce95217b6a3087a0399a5b760302047c435bb5006730650231009bc68d51653547455b1d90579da4a860cc197048ee49becd125a4a7c9fa12601add634a6e3ccac31dbe6cf925a82053f023060f9710d831ddd823b51f5809f1bc616b38053e68519a79fa5516f84ca02154839b3ce70835af311eff621b5939906c90302047c435bb500663064023021643b6c4f632d23d2a6ad7c37c68d1d0105a209a9cb414ca1af1d75e5b46289220db7c6d704fea20f21010b450b07f802300742d95eb702559868dcbe483ceb7dfaee5bd7658c594de7e257a922000834be927ead18f686ab263c90dc3649b19a900302047c435bb50068306602310081147123e7acba1cd6a7aa4c9e6e0f8484c0e2f8078a13b5d24ec54743401b9eeed0b9b7e81906fb8d539ab9b1c957cc023100cb9c66a862515e927cb570df3836225d368d7f44543635a0c43b83859e148538245c19988218bf91a3b5ee3989465c3e0302047c435bb500663064023079e218ee608a68515357e585345cccda78dba3b809c0ced0d14d726ae830a1c605a9ca6c5cb585b0e3f84ff91046d8860230138075674d4225096d85a6e6bf4e71a8c825f5f84f69672b0345e6f7208bd83f5f9ad7321a108bf4655fb3fb24dcbeb60302047c435bb500673065023100f0d3c94eb02357e3a7636c0d7b990b17a0bce7a9cb20aa7c111a2b3a39f03b99c7b48bcf705fe69e251abd7450b64ab402300f12513be67817085af862794f4cc15de72b465b290bf9f464010863bda5417cb8426c462848904298fc582b64b9ef220302047c435bb500683066023100c8beb3c24a8592d4534a7a84ec582cb8d323f27d30645892d91d72f9b9bf3c8a2aeff3573d2c6ea431aa0a6cef269326023100f0b5a3176790d418648168934cc509fc812b339a0e900ed48bcff1acbcb15f880e903b05eb62bec5955b6454347bd6cc0302047c435bb500673065023100c585d05523f4453a9a188a78f250aead68108ccc9c471ce94143677d531665e3f417d05cc64cfb682df448a312032fcd023061eaab3559ede36ea39d1c4ba39c3ed8353fd0c6d0b9d48f0f0e1f032c062377a33f9da1878f752342fef014ed915a7e0302047c435bb5006730650231009b624e7f6e3623df65769f8859872cdb09e1d0511817bbd87a56462ae35ca202c8efcde585d24c2554938a4836aa9e3f02301d696504a57734bbf2eb770597a4f3263c7539f986c4e9df37bc3869dafcc408c1b14c44cff6d8ae5cc56b21381a3efe0302047c435bb500683066023100d6069c2344a6e77bfb77750658ba50d6efad35fd4165a80e97656892309b195db6e668b3be705096a4377fd30b8c8b5d023100dd1c4f3704719aa2c684e283343734c0b0d1e44a93a82cba063096fa3474f1e2cedc6ef3c4f07bf98e7b783dd327b42a0302047c435bb500673065023100b83a1f1bc0a389eb4f2c201d859929f9a9ceeb3b358264981541bb97f88286ae0d9404ca8606f14d40a2f497decc567802304c7b2418bfb97e46b3f3eee5b470ad391411997df5b08a4582945b26699546a851fa54f0a6bdf33f8f841958e4efe35d0302047c435bb500673065023004da38651bf33be660bc63d4f70c2ff7c2c4d49aa00beb530a3137fec328ff1bb2a68aca2425221b382300c7fdd1d4d1023100a51257877d68cd6ce59dd2bf39aca4b6b238b933aa1b55e0637319a1a36f2dd8567d0a98100098a7704bd55ac9712a300302047c435bb500673065023100ecb3435d6207a0279eda8647a16fbdbab3d5676cf808320b923f9bc7fd829ea397f789c5c82984d8f708687388ef038002301bddbcd812e7d758a8b04fe7ed6708c641ddfb6eb3942a49c6fd781d5bc0597ef0e44567ada73d4d33241357ea36dfbc0302047c435bb5006730650230793047bb67e8c020fa2e067f52118f7897ad41cbd5e827482f32f0dbc451fe46e82bcfdab0126c5a977edadc91eab997023100958a6dd322b371147c30aa8bd6d6e003c4a166d476d9953123d40673dc9656a2ec2143e9437f0a8c4b8efc6145c576720302047c435bb5006730650230131d5a4fcf0c9322b767684febcd7b544c22ca35a13670379abd10350272753a4345083b955cbbf96e64834d36eabffd023100938350255338bd5867b1cbb12a69e78a276626e3914cd37418aebdc8bd12e5be6c7ec549e8c7107536e0faa069219e710302047c435bb50066306402304193f45b5a306975dfd70933ae8e9f14f6d6934577a63e305d2c746d5499d0b5903c02450c5e117c0aa9f4b5cdb4704602302a8576736f71b6dec439dbd81a0766d7f73d809754ba6760dc60138c6aecacd7d3b870cdc10fcc91bda9fc07c44d8d7c0302047c435bb5006730650230397494d6690ddb99c3c4cc3bb5a1231a243165b468b95ece2bc6d86f44f727d64692e8345e242f2055b725fbfd7176bf023100a26c06ef2041bd1cc5735d7845d12858a963b639d6c22ab1f6e4f7432e37d60cb3298b774542ec9cf438efa8d6cdd19a0302047c435bb500683066023100a2d37c57371c4fddf78db2f4f958d7e69395e0a3addaae0fcfcb70a8a590ccdb1f2a11c0e7aba3f4c6e2e7a310fc2018023100c3edfee1c043de5265f5912def71d03390dc2512291858add5880ab946b50b00559eca37e1e7c4ca258b1b4d25e717130302047c435bb500673065023100d348e62cbe4ce40d30a44a7e05065c965fd4eb2b765ab83df3872931ef4317716a3e2981f7dbc263122b2cd49b61c50202307fee45d1dd0bbd57226f95d5dc416ffb2455f4a194e9dcfb2d713229b4de26d938d1d91536ab0558c6539155923c77650302047c435bb50067306502307dcb10f7499ebfccd3753398f5055a189d17bbfffdbb9c1dbec208a887c4903b2f557c1723164057356ecce7c06af5420231008d4f7242b5b5617d46b4b3e6f6f4f1027abdcbdb9683cbb5784e17419fe6f5f5eb182fbbd1ad52cb73f9c6a0492181ff0302047c435bb500683066023100b2a06ebd54cf3442a55fb1a572695e8c72b2966e3260c43dd8de74b13a0dbf4fb9a8814dc9d8edd9e011b1fae623f16a023100c58589280e87ac5bd9a7851945f1132361085673ccbce0f1c6a4de0a72616e728b3dc165f1c6a90d37e89ffc6881254f0302047c435bb500683066023100de52c550ce6a824bb37599c81ebce4d10ea9d4cbeb167ebe2bd91e38eba302c6a57392f97aec76886a9ee0be6bdd45f7023100c7026c28f27c85116ef6177b96d5b5c2379065f3b0080bb5a8cceee3096b90e32e8c6a0e1e53aabfffed6201d2a5c8a20302047c435bb50067306502303faf32964883454a0d0e7f0e9facfab0603c675e0e1fc45ba4da795c8201a96ecb1a1ae185045bd2ac4b10148a199deb0231008ce105e583c0361210903557ca0fbed8513b537beae37e4b88345263413d3be2290aff2e4f49310abce42aa34b7bf9da0302047c435bb5006730650231008125641d0a0fe91824baf7fd634b01510f5191acb967b8ab1a99084e83306c78dd2ce78ce080cd96058605c4e032fb0f023011ead9ec0c9d97a54f4a7e8c70ea49ff757417b2586c420c7f0b59d6cc203d6a2464e255ed913f0dca57925671509ce30302047c435bb500673065023032439aca6465c2e029d0af014d84772125691a5cf64e423546d248babccb90244170be125a35f5229bb2e181aa8f2693023100f036f231aa8f837ddde311c1fd386ae4e80d67cbbdf583e4229c4ce44ba1a3c48e5005428123d3964af8e4e218174ee70302047c435bb500673065023100b67d6259d335d29a3bdfe13c620e63f5a2e878c0007b203d969127ec9453ca1fd06665b620c0cf6b3b5ef63e6efaad3f0230464afca981aa89c9e131a90fecc07f7ae2ffbd7d064438a25e061bf25c7cf741a379858af60c777d17e0dd63b9f05cf70302047c435bb50067306502307da4b05c51c13533d899c8469bdaec11ed9682e51b147a15f8717d2436b94b6251869c799b06703ff3898a8643e6607c023100b02ce81cd777f17d50feff862833df4f91c3ddde2c27d70ed4ddf4aa27e823b3762c68f81e8750ece48bf6de567564e00302047c435bb500673065023100ac3d8a7e6ef7e67cd2e7748935503f5b124e24cb8e0cc2be595ca0f21453feb274d400fa6d2cb82c3396919765ef292f0230607982ed26214bf8904c6e6fa22960d13c47cf7ec93a35fadb6a304123ce118601c9c1b0dba6f0294705bd98ced84f010302047c435bb500683066023100a5062d3f1fe9fee7b4075c1ddcebd3487a6ff69b73cd3ae27d33bf722991bfe826d5daf321f8ac626615c2437dd14b62023100e1ca42ba2f7d7d4d8cae33af530d5aaeaa3d9cd1393efa31eb2dc5d16aa184e7ad0cdcb1eb148d95af6f284e9a6cd63f0302047c435bb50067306502304811f2096027f9440b5dec06ec7c60e1f40f7e518cf01fe0b57e05eee1046ef186f23251fbbf3fdefeb266364ff6e62c023100c43c8cc44c86826fe0cf9f59a5c2b4630b0e639b7d04142e4c0dbeedd1bbeda2d885560d7c969d8b18948a37b4c71d160302047c435bb5006730650231009086a60def2527cca27d5928a19d01f8fac4e83550335362367aaadbfec0a54bac4cfb4d673ece112c4c075c7476cc5d0230446b12f16d54d31bfa5c18473452c1bda1869045862993312ef0dd67899756f2e59d2d9672fb86ef2fc55fae6f6d5eb30302047c435bb500673065023027b3b5593e327f297d7e394a17fa84cb39d1c22f18ee78405fa64b85338860e57ac9f6164859fa70e265b53046d5e064023100d102bcb5fd57a8e7806b2176c6f30e081f8e2b9be75e271b59a4f1f166494c001664c99458775c370f1dc06ebe1888320302047c435bb500683066023100c6d77776f975fa2b0a53f95304b6f93573407b61004f5257198888d512e504edecf46855fd5a5b996f7696470dce74b4023100d75dd09d186578ee29cd13011d07250fd59b4c8ef03127809be42191f3db86dfb4757f8b195f70f3b97b85ce0e2fb0b40302047c435bb500673065023053961c600fd3e19e7adfc3d018336c150038e183302c7fd5812169f6fc086944a5646951e1d8403d0ff0090c07b67d4c023100fd1caf08f58eff9b89baae5d6c6b688979c83eca6e3eaa190aef04175fe52dc7de8df37098db1cead22d071b80b5980f0302047c435bb500673065023100b0e0b70d176096a80aded044660fd1ee6c224090a3a1bb7ce77f8e213a0f0cc862c5c504c1b27239eb3a12f50d7f66400230732d2ba58bec933784908066c2d8c896128cba8883ba55edbe9c0734e0e22e5687be9aef3852e5162dd7dfad213aa72a0302047c435bb50067306502301bb07cc41a00ff9f3e94c819cbf4d60f8e10c43afb2b98f10bf3ef8dab5e862282965ab9bf26118dc043a7b0b39f154d023100f7b1b970ffa7ec52946032062a2eaf90613cd2f9a8e9e7d51907328165b1241fdefcd6fa696dcd3c163e8f87cade6c5c0302047c435bb5006730650231009914af9766d60eed0371a6144a2f79cf926f335b76bc6be1c277603a463d7ac98f0f9b4a8f6d64ea13cee5c0b8c724d002303b8c71eb3a1263b20a9526ebf6a6bc0fe407b79c0308505a674454b345d5b540a45c839976759bf72f653adee8925fed0302047c435bb500673065023033026ba6c98e8228caba3e0b260c1eb95c839069330200ee7d1095e6ad46e20b9b27be3df6d2a8d58a020636e169d481023100d57447f18fd8f05a98b9ad5ecc8573665a9c1f139e99bceb144419f9f7a001050ef6b398a0f54561db9b4ceffadcff2c0302047c435bb500673065023026e1874804b84e92eda71dac5afd73026fcf35388f543a17fc4123d889a2abbe82d17d79cb718dee43e66e666f972869023100ee48f92eefd5265049d0443305ad91dfcc79e6b3b4ce9c7076993632329e8c756561faffeccd9407bf7e53343617172f0302047c435bb500673065023100f790a918786923562889b310045c1e6aaabd0de670c3bb04f6e186f69355ffd39a123a6ff496c7d7e38dc8c94ac2f6eb02306a6b06672291bebc52614eee165d789552e62908d3c4a197682e6833f63569be8df539c65f7d7d51059f34ae9b63ec990302047c435bb500683066023100fa567efc24f8ae8857a5de958f61e2fa62d74a5db532ee92db52c120d1cb4be53fd0b37832e5a47d66531e9ee3383036023100f0284da329b8a67f9b5fed1b11e34913937edb945022d0a38bfcb1df1fb72335b0215b11677ef53f4602426acaa21ea40302047c435bb50067306502303ced0c68fd76361aff23e000d2108995447756eb4f2c07bc6a8531ad58696b3b4196a0bc54149126f99dfba29ef23fe20231009207e8983d9aa2f43611a551d8ae1aa2449444fb0048a628181eb083a258e6776811937efb874a435151cf8c5a5d87ba0302047c435bb500663064023053ba996c6d4a2542b53691ccaf3ccc4979bcdd0a78de2ba367c0462b2f8d89c04fa9ef5ca56bcf2035b0545d3caddc9d02307a79c7dc5845d0eee76efac5c433e160bf6e1aaefc47bd2eb2808afef85fb60ab727398b6e4f7984aa8fd7897765142a0302047c435bb50067306502305bb867d97f6b094600ced5ff4ff384752cb51d6e094f35e8be241ed5b71686efb4c2f38dd36baaa1a9c281372654fcf10231009e1392368b6fee80117e5a493c46ba87443fd3dfc201477806650cf2aa9c0302e35a7516c16ae8740b3376eeef7a86920302047c435bb50068306602310081c72b55e94b8a2fb79ad6f6908d15172c5edbf2af67b08f7bcedc4d2d28d7ac3791fc92d2b741986938cb60a7e7a642023100a6f67d2b217d2087ba24cafa01c1c29abd06fbfc0f5dc9c984076d692ee6aa3961a88bd068b0d12acf06b30fe54184f30302047c435bb500683066023100dfe4141edd956a2e63e4019a1a336f839b29bea9c24786ce4fa43991cf75e135d949d806933c03901c0239dc31df8dde023100e3e8d8ec8eb6c93effc8c4dbed1f8eaa1c67cfbe7d3ef53d66286d6d9a4e063636fd8e4e582e8e3a2f7146ffdda14f220302047c435bb5006730650230199eea14a1f29bc395d29ff6c6081b34cbfcb4042ea1e73f3ded475bd2c1ca1c40cd065ebd33444af6dae4147aaa7a90023100dd4848de01d5faffaf1f8f9c70425590c66433a740b0f529b34af9e5083e309d4fd65a5598f5d3403095c74d97e487ce0302047c435bb50066306402305554afd20db795e74f33b138c2bfbfe8465f41d9c4f8070cfca84f0e975b51c00b0009f18ad12c8be850acae660a7a6e02307101a74a8f06143b4b1feec8779c7c4c2067ba2522e59ccaf74934ff79bb83f1002e1a464039dbbaddf049fa328d807f0302047c435bb500673065023100b89a00000022ffe1ac54b609d9a6b27f10d29b2b019cfd8e2ff4c9b4708011c5caea81d86aaff8d53f0aee6a648dfebd023034b5da7d04d9e0783ebb2a3283b97a2671c008516735857e42e2c3991e35f583f380a257c10949c4ef96f29e5617ac4d0302047c435bb5006730650231009369fa2f5251e038f91755d68acd6de97a042f2e90eef2d8f5e4e3b3dafcbc5aab19bf376ac9a99f8b3af792ed805fdc0230215df3950b609e2322128e167b73f545ce77873006e6f1bb4a3710d281bb47439e0ec45116d9c7c1f2bb24d127457fdc0302047c435bb500673065023100d4155bc83c94bb7ccb9c5063fa4053b2e1bc9e7bfca7850aaf203766cdf2b30837216b4b0bbf641e8c7962d3d6e5a4cc023025f7ee67fc8585eb03fbcc256232ce7d79c10f86bc512b8c54e994d14df2183c52d3a221cfc837d2a1352dcbf26834d80302047c435bb50067306502300f47cc8e8633e042f1e9d00c4a986e5a7e21792c627d7ae38115d0496e128f3c46cd936366bcfe1e1534c57df151dfc5023100b032ba2ba61d5e3c89844f0ec164b9e45f5ba91544460b038651e6b2bf01759568402c9c6aaed9bca750fb788c0857350302047c435bb500673065023100a9021e0084a370a7e8e3a6b2df738976de12c6969c48206743d4cd87d7d0b4c442cfbf73fcb1762eaf661569e48c2c7f02307b8a0f35de8a20cc128f973f5699531c136eb5cdf62699fb7718387ffbc4ff1cd1458fda06c5907ed8b2cfb03b5080a60302047c435bb500673065023100d22342a40a2392c78833444a69847f9f5b5bab22ca5bd3b5a781cb79cec9e8916c4390b170fc536e3166b989fc879b200230421a16966e86a9475ba10203ef0aa1a10342a866ba787e7b811d3479652052448393f4a154324bc6a089f81ebbf9ce7e0302047c435bb500673065023100fc88683fe9813f346506e4f15dea25f634efef1c549165475394ffc7bb515fbdb33d5b24beb8fa807a0df2ed347c927702301edb689ed5635cb4f362fd8c2cc303e4d5885ede49f13bc90a179126e91fd66e82c2d4286215a40b97464397a7ce52a70302047c435bb500683066023100b4ce74e4497c46cd1f539f43f3444c67c021d94737138cb089e325e38c8f71081f945e908d8c0fd5a8f7ea33a70c97db0231009969881d5d5988017857508fd98a68325136f2fed6574ce0b36e3d2a70a4ba5bf4811373b7d91407753b59fb45827e880302047c435bb500683066023100932f9c4f4190e4a6b63c26ced5e640cc21ef0b34fd1e838f2229b273c918ff1286b759dcdc822fc71cea6d4f3eb188230231009f8d7c793405a4d10f46886722c8fb8e2c967de4ba0c300194416f182a0ff234b86279644c049e6c3049fa0760a05dd20302047c435bb500663064023011c21a39c496cea591ace06eb3fc73ecb13a0db2d0719e6be23111718e6cd2a1730c90dd2323bdfc83b04b0b3f1ad166023004c2ecb986942b1e7cd9353380f32d1a5e420f67d9742d02e844ada9f47848b158836efa32fc01e72be3dbfc5cbcdd7a0302047c435bb500683066023100fcc98d94b3e953dd56a140ffeae7aa933d92a742170a8f27d5ed513fa94fb388689f1d839eb9d748d3289958a3ac6ec8023100f4a6f9cb0c08495dc860e5a247dc45d2175f3e6db1314ea98fbcd50ec5f280ff6be05fe274fe766c738fd602aa0a99260302047c435bb50067306502306733059af4239163097ea74713b1ee4cf7e7fcdb6a12aac658f71c49fd2630e0463fb297cc10340254825d851ee09c0f02310099d21c7b2d26ed2de8eb6964fdb2243e4abf894add69f499bb42ed0cfbdbbc9e21305bbce60c69d6c0fc10d56fcad2040302047c435bb50066306402304d61af91f4d700ef1a966403e7e507c7294cd0cb1c510b07a5a661234103c6f20345ec714c2f753d0edc2d42ec8173e402304ca501055695c0d9a2bbd0d8872e335d6c26a868ffe6d237aaffba275991959951eb6e7b358ec929652922a7a53d605e0302047c435bb50067306502305388894e2294a1c60ed3861f8f050becc25f6afce7eba817af49867ed903ef6a9a4b84fec0e16cd2d1077fa7a64ff980023100f92affdfc16e686965714ad7385d83552f95e2257cfda9bd12e84ec0bb64f5561f3dfcce8dda5bc28ddf1aa0bd85ccc30302047c435bb500673065023100f7e307f40ad96932041d57368b88abce49f1805d967edb2a0e9db16d3fbcc6a6907edc641c78b463bce10a2674a8aa6c02307020473e367ddc8ddf9075691493c2ad155f19654e53243c9c41529d21a0fc80277fe2ea889ef737d8e584ef2f0ccb850302047c435bb500683066023100d4520fc9702657c5dba037d54947b1abf692aad95c0949fccff6ba2fd7fef1536d599cdfc082adcf42cbf61b1d8fa8a1023100fd80ee65d2c8f91d560012033e00790ad4586189663366694ef5a978e7ecc384744ec584da0d01494e3d70317e066d500302047c435bb500673065023100b3d0a0dfa779968af88562f0b7c4d240b28e3ee7962b11c5031056744d475a89fbf6a150f9529d2ea6e94c0f4fdbe8ee02306b64e39a3908a4ffb15e4053e76c63c20c4b1fa01671addbdff3d21080b7e36bfbab055a7b427630215c2bb519e5f93a0302047c435bb500683066023100ea71ba9255799d6bdf41cf4f1cc57984d923aa3a4a5cd8b1aacc85f2fe71ccad85096da6972e6fd8fb047c0c1480cc1f02310090d281aa704368482c999a63136a6f0ebd4da8fe090e3ac9dba38cfaf61c5d1537570ed77bddcab11467707a1cd1c6360302047c435bb50066306402307af844f4fa0bdd7dddbd41e3fdc39559911c80ed179ad30f823c047b1549f1d369ac34244956b5039072ee25fabda9b402303fd656472fed3f5110504c43ec50c65c46c4faae4a83c5dfaa1183c4898d27d58a3bad516afede67bb2fa9e8e9b7175e0302047c435bb5006730650231008c524162402ff0f8896c4211abbdcba3f2554a1c3c7c40918815138ee7ea826bce6fddc98a15a3b245e2f83f0bc1f7480230387662993026f25b0458cdccd82024727cb83218f4a90f73e37a5ccb8a233c6e3576ea2cbf643c42057cf6925914d6cb0302047c435bb5006730650230644006edb4a43a92f8da8d47a4bc2f2373732cddf91b6b4d31a19d361975ea5538a4d9ed0a27b4ad28f422c100a168c9023100cd75ada67702b13f8e070affbf4317863a1a91b0cea8e921ce9740a822cd6bc50d3de7e903b40f7066d615b58fb693dc0302047c435bb500683066023100c7131efe66f47faa5b0662b4d9e579b07bf75f11230dff6d87be6c30b44d3a9cb061277fa8f0827eb07f2857c4a9495d023100ab12651f19aad4d680e8e9ec32acef3ddcd04fe3f598daa21411f59d6bd67d0ed4d67ecbdd08453e06b1b9e2d94189040302047c435bb5006730650230388e41172da7c29c0beccc8a33c20b3d7202d82390e6a30628ac6787984c660054eae7699ea78187471d707185d62b89023100b6437235333234a8fa4c795d160a0b0be3ebbe4795894206ecb2c381247989622cebd1bc7ad30408c245e089c651e3950302047c435bb500683066023100f57eb7f731acdbd66b9be50f5975b2db8ee1cbba7aba9d457e6b8d64d5501250b550abdf85f48d4ace3cf82eaa0fe94c023100ac91d44c49a228d6ac704e5aa7ab961caf117ab1244fae2fa472c994a3ea73343707eee6538c975f00efd586516076190302047c435bb500673065023100fa6b220858db7056e3d0fb277ea8763da56c187b6438ff56ab6ecfdb86c94825180680fc8a6cee253a6f73ee245c58ba023015a5be60d4d4f2963228a75badf99227c681552aa3568f429bc964ef9131fc09ee448045e5a194e6ca9df7642651711b0302047c435bb500683066023100f99dc2be3aeab3824040152b290a01b21b7060ab65f7a920867035e2d47bca4ce038afa5c62d24635274884b86e6cb13023100afd47d92a0694167ec71ea9dd3d484dc012e305a7c35d0107f219011216607763634deb23040547684044755fa145f710302047c435bb50066306402306781af698576efb92cb689227d44ffbeeadef86b6e548bed15fdf23aab7811485999a0ccf82280ee12c43ae0f729bddd023027e99182ee73b3eb113e9410b4ac1d901c7994eca26f039bd836bb0c7482fb113352683060d8e51ab2fc55d9974c66a90302047c435bb500673065023100f80d62b19dfadc11698a512304ab81201a785a1866695b6a62c272af4273e36a6b64cde92b9cd5853dfae5f2109d25f80230235ebf6d8debdf4744aa1a6fdb4488cd7b2fde5d278206fe24a19806a4b14a13e8d0f4b8e48e82b3db8af02ee7f0c8500302047c435bb500673065023100d56ea111cd362b6a6cdeb48992832102c5e71660c27605996ce4e2026b51242e0daeed77b3925ecddfdd74029cf5ce2e0230202c7b7b1e32e863feaf05639628d18ae82ea5044937b150dbef823c7c534cc4244b25c3f70d03c2a66a204e3688bd8d0302047c435bb500673065023010acd2c0288c489527ca9406e1f094d5bb89ffc3c249bcba0520e71fb0ae2c1533c748b91c115fac7a2d5a41eec6d037023100e79aa9c90cd9672059e759c1abcd7326ac3856701c4555b9538a378e6b8a14b6ae6fbd73343a74dbf3e47b92218eff530302047c435bb50066306402307c6981fca83e1afe133d6046dfbb86c980ceca2858bb85f99d5d6e3bdd5ad08d14c9fc0ab6dd8e23f3477def8b2e004b023046b4a66dc3cc0aeed2e61ee3bc825c2c616509fecc57a6d8766b4c86d0d203e96a6d63e8da210cfe284f6956808281c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023000c5a3d9e0ffc66ce00b29fcb578eee122b5786b08045afaf0c7ded8d771fd9a9ffe954d7e296f87b5488ad20e1aa6a6023100ea542de0d42c7d650c408f518520c07c3954520b3138dfedf512f67f5e7d3b1c1123a21855566bc2820fc2459014f41f0302047c435bb500683066023100e0ad2e519c412454ad33841f676af561c542482641d9ab74c9398ecda91a9c561668da7281c350ebe5325a17aacef6d2023100881d6259eecf0b72bc05087b93ae445881fd5add10ba7fe26ad2417118be528054240aa3050017e8c0c79891114734f00302047c435bb500673065023100a139b84964719312a1da32f91ab5879f16ef6eefeb29a0fd32d644b0fee967f5ad90bdbdda23bf84c651567d8901e99a02307c6b6dbc3ba47c8f17dcaa5b966af3960eee2e7f12d5ffa76a7821f3d58e7c0a5c7725cd7e92291f4865002537e9790b0302047c435bb50066306402306dbfe95fe0bf252216a18487559320f7715ce29f511f536e68d2f6a95b5141d0cb985d56c914a39910272457a9278ce502304dad56e109a84dd933c2c2d2800c80633375ff806d829cfc5cd7a5a949e80b21a2a91a072e8b2604c4eabc0e33d514c90302047c435bb50067306502306f6a121547a759feddf8ec0c98d4f794510e4c4d839ddd1b489fecbdfdf3a674eb32daf78dfce414778f133aa35068910231009e57868e5f663742a6d028dbb1a004efaaa2e477488774508f001df92e9503948fa7e328c1d02ac3f3148d387b4b01960302047c435bb500673065023040b72d79439e47e5ec6e4b0debcc019b31b971b76cf0b467511cd2a3bd2d998821cc938f4f9cb9d3de77040cb6699b6b023100c5ece94cacfdb12fb86205b78d2881c5f9e83126431d757ec48755426c436818496b72a097a3e4800e8c1ce733835e120302047c435bb50067306502303766bb818eb84077818d0c7b9f34fa9a93296a0ac7b9451ffc4dc3da28b6e3ab5449f84d9f8ae4426cd9dcb54983bae4023100e523d5c7070a27c6be9650add9576e0a55be47d192506df60de6247cd421c45ef708550ddade9cd50da9b3a13cf3647b0302047c435bb5006730650231009083dad2c2fa58207c0aa67ac076d81a28dd21c7d41f8adcfc851071ff3aecab12880c81bc398bed6c86200dc1d21aae02306fb2abc390736254eb4c720bad31f5239d5568d599f6ede34991321a2d5a017831e8e95b4526e88b0583cc446c0d5d750302047c435bb50066306402303feba9710f068447692dc385b6b22c478e7cedda5316b568029e295bc3a2a31d4c0294efd97bb55272b222bd699466b702306363e48b04d6757a33c0485e84905070e9f4915cfaefd685f1596b51db34e81a3a79217d84ed297e6864ad994e641b0c0302047c435bb5006830660231009cf4bd34726bf7e242329ed32a7ef50d0e3c3503c86ac09ee276f1cd49383dc206ffcf01d3d634db782d2ba8ce51cb15023100b429b8fbdeebb6cd76e17228612d742ca3dd7afbaf94b66ad9092e1995b53579e626d16fda559e163e3cdc73c99abeb10302047c435bb500663064023100ec84dfdabe7198a3d8c9a71a6fe844e377889bb275a023bd080c7f083e7023746630fc2f1864c32836cfca0a0734ed84022f45803cb046d3c311f61035bdb96c0bc5fc9b8d06361b1f34ec7a9754bcb4cc2c7d42e588b32611d5fc604d2e49d3140302047c435bb500673065023048aaffad8ae26b65bde7d56bdc677bcecb5b0a9da971582382c18167777e68605a4fa333d483f659ecd5c70f571f66cd023100b81464ce574b87d0f0d5130564f286701b4fe9ffaf3019a12954f39e6363d3497faa6ff4ef9c1dc79688046a025d24490302047c435bb500673065023051dc201e3880144448dedd3beed380a0a415c18ce5f1f4fb629dbfab48505c4db19a54dc0a21c18416e39edfd2a9717f0231008f7e5098e78881e659c172bcf64bf595192d8aae7f3b771bd8b548119e309a13742f316d3b82fb75d96303466f88dc450302047c435bb500673065023000ae9359eb116932ce860a33f751b3f5d2c988d1b6e607ef58546895d8253e3a1cbafb95b37e1c5ff0c8bdc0f105a56f0231009f803fb03d2c816ad2f455a1f424896c5293033db46818f2c5cb82fe63ee94b6d5ab72f72bdacca06b4d4b4de5cef21b0302047c435bb50067306502302a97d747bd6387c5d935eba6b2ba55c349306afe0a03850e152714d2c19a476380f5337e7f4174739f8487f91307e82f023100ba0f0b17f2de3c4cb8c176fc7d3d0f2804395eb5c04575460377fc4bc0c6232190a054010728472791e7d2401c13e5830302047c435bb500683066023100cf09d4e486ec69eddd81824154e42bcdb5e30b849c013f9205c86ce7b7b4fcf92409b422f514b133475525f28f892ee6023100d7482365ee9ed0c9e6692c440f9a79aa521bdeb593d29a6828fc8fd8b19c855779284ff3601bf4c7cf38db366941afdc0302047c435bb500673065023079fb68830875f45b1cb92207d437134369e0abcae1fdd3f672d2021ebde74c64adbd21f6209f0d3d6d4bbaf2bdea29690231009ba8b05e0fae84c32cb3540da12cc0b82f613201cf0258c0e686dc2665d868bbe3304ff37f061e4e679fc1a9f95870c30302047c435bb500673065023100d4997a477f168088af32ffbc87420c7b2251adf3e922a862e03ff5656a71b75553fffde749958a03547996099dc41f9002304cf59c23a74c92b0b38a85e7b44a373df031ef900e9156331b07b615ee94f14193e86bcd5918541c99b67e1149c4a5510302047c435bb500683066023100e0bde12ab88d5f99ead700ae4946f9496bcdf86e6f16264fc7a243a73cb0a9f0b34702aa6271f97c7c48e0cc1b3c63cd023100dc00ef5dde5ab841924b079327c669d492c947fe1a4e0e74056316cfa32be85e274dfe4f44844d8eb41ea5a57991229d0302047c435bb50066306402301e0aa52f6e5a1af3529d10234c3e284d2b4d7d244a9f7d052f127dc4e5552ad68aeaf5c3b96e46193930da9929f735db023027a6826d69d282ea22216b3f1e5a1376081d2bb4522c6c254ddfb0b5a681e6eb33f3e58ea74cea87458d6751465450470302047c435bb500683066023100d9c0e8db25ef83a2af1cedcc6d861559cd0146260d8f5c53d41a7133b6cc4b212089c0040fb81ec7b32b5290bd4c8663023100cb6f9925d16cbd4b6c284ce226ea5824dd55c54d3a93e43b0d2ce3f721541f74d2c4373f583e43f6ec1f58506f8e158a0302047c435bb500683066023100d141edb0d515b4d236d1fd03409a6595bfe2e0ffdbfca68820138ba885e30df1c4c3635d75e9bf87574298d31ebc65d8023100bd5e410b64b436ba3a9f8167daba2667d091f7eab05815913d2244b80f1daabf8579d07ca3ed714597262de94016ce250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd140e13bf8057f1b3da0585ddbc5ccb038b4fe46ca85bf7548d28c1537a395f81222abbda7114405a5582fcda968f93023100b0b9c3ef5f6983beebb7e4d174c684cad62e37e8d57813ae136d631ab50eb33abe28c87bbeedb6c9dbfb4a2fb171ffda0302047c435bb50067306502300f43c95f338587078611ee3a2c271848068914c25e15add3b23eab0084ba290cd7e76bd9d7eec38bbb48e6f86e05d0c6023100ed1762f9cf001907459c400c1c7448cb0009737ea83e5c20bfa144390c5e003e68897c536054171ebfcac64eb60c1ff60302047c435bb500683066023100a3dbbab539f544e6f1d2a8e82bf7ebf9628802cb7efc4a92b2cb3f47816d617dd85013777e5920ed2f08246e937f1f40023100e2d81ed70a458d7f3fa597fce6d80739b5c4cd7386cd62a09fd6c36292a09b9547ad2d3c954b663fb4a08af2c1cc77270302047c435bb500663064023028f050e067f82f31fa6b5c2a584a545d8dab1ab0d535b90ee976a48306e3cd48d8889b08b799afe36722f64baf1c31cb02306110faf2e43d7f5b262815e32633864dcdfc9fb8d278ed90a363f348cbb3f3be55c5e49b984bcad8d9845be566ce095c0302047c435bb50067306502305935592c4f05513bcc2e3b49fe0f259b1bb0b9be2419ae9494c166f8c6ad7ff0a163b8b45655da1450b7ad0390a3db1b0231009ea582d50563af876b053244b9b5498e0e60a6449096dbd325b8f5288c81138f56bc3f83bec92589cf7c10f59b1b109a0302047c435bb50067306502305ddf2fb3eb3f1f32c7b8b3f9ab1e6d9ada1abe8a25e4adc84082da53c9a4d6ed7e672745ea71d03afa0547cab65dd53f02310095eb3c2d4d1ffbcc324f3c72fee393c2850b47d5ba22b64fcf4e4b89e83038346affa59a1da4e7f9d6560b9c7dc55f7b0302047c435bb500683066023100f698e5111a7cda3bc3f0e62f187fd612466b7fa238c7192b19a850b40e634d77d293fc2bb33c0de07701f5b4d628b928023100b6f252df2e0c762f601e255503b1d32007c491493e08dafeebb24868e57f98c27e5cc1dea1e032fd4b20f4f5bd9354ae0302047c435bb500673065023100fafad34bffc320b9cbe45daa7020d9ef00c15ca726ffdceac3e6d00b36df3c6fce2e023284ccf2b2926cb71c4310a90602303d570d87623563400cc426ef7c2f169fa03d8b80f199e03a38463387cb714dd1ed756ce4d402767110dfefedb75fd5090302047c435bb50068306602310082bb4281bcaf9a6db1bd5ea65e12fa8d3854d017d90eca5e0f58951321b5a1c0c0344fbeffe6b122aa6025c6e89bc184023100ec579a26daf3b88f1024a6039be830b530abc01f7219aab053b629ccdd04017b8dfdf3c09b4cc678859712e34b8c46550302047c435bb5006730650231009b3d8e123e19ea5485f3fdd1ecaf24ccf204a10f6b38c331010a499b0d92e509a380b6fd1866ad7d95ed09e158053d0e023041848310fef89cfde54488eef3796a1ff281055ef6bb6ceaee54148619592d4e1c77430496b6fd09325ff3fb1186a5520302047c435bb500673065023100c4c7ff2673e58389d3cfc236b28ff69257edd36d265f71908690383a783c8b421603fa9a15ea0e22d806a56a02ea741902303cdddc8b1cdf5b9077b49b4766c23dedb1f4a55c5af3307585bd1fbc84590bc86cb42d6cbae8bfed4391b645643a19890302047c435bb5006630640230636aa016cf771f2f87853a6499fd0d0851f5696589b6ca14e4d7eafe66d38c604c1207780e4cba0e66a37492142c2492023072f2c6d23916fcda1b859815d85d763ec458d5e97737bf34bb06bad6b68308d4b791d9da46d1dfdd51729a4b56bfb96f0302047c435bb50067306502300442a24a76c8b5e34fbe77142c1f9e8df371ad0ddfa14bd5e1fc7def401f63f6fe718953fdc62a676a0d4cad97c4020d023100a5863ccac7fa87e176a74f96b59f641c7ce7ade16071f09b9d48d17959a74760d8c96eab2c9a41230a1e08e091ece3400302047c435bb500663064023025a0259ef85ec4550d4076b339fa57bdde8e267eccdfa7f654bd1a5fa23895c93baa71a1d75f27e8b1410eedc85f0fd502306986028a557c4970884657cfda1fc9cf90cf19b343a6262e0d0bfb04acbfda470fec481464aad70d28d6a3f1e9858d100302047c435bb500673065023100bfef915d4bc2b147e6b48c97cc1fae9662484d42077eb0e33fee2ed2e56986be046114ae57f52069d64afdb30f39f5c20230645a214bd32b39c4b38f985eb98924ed7820273eda63ad49f40620f49b96efe9382c6ec1ad6239ae988c732825c2287c0302047c435bb500673065023007ffba2423058c30c50243010c0a85c62a426e912549488d49f337d64d9c7fb9b5ce0004f743576d3e173fe9d3487358023100e7486fe0ced5adf02221260490a0443d96d365e569cb6c91a5acca8a6a4c2e60e444122795de1c94c29634d6cbd9a30e0302047c435bb500673065023100fc2aa2a4ed6976ddfe0fe71664bfa92f310d1472e45109f89c7c9bdf9bf42feef19d1d2189dab5abfc115b71e6c45867023042a0cbc8bfc7e8ab3e8d6ffbfdb9220f760eaa53aa546dd9e70fcdff9284388a1d8f6ed42e53153b69b26202e36990180302047c435bb500673065023017094f9a5d5262da87d6c0cda31818b6aac8ece3b4df921479906c6931f1930c3a93e76c4b5da38286d3145c07d44e6e023100bf7e2ebac5f679a2fbf8b53c62f77e95a43631cac9bdff5a509298403a4d9a61522993bd3dc0f0ebd87e8f455d16634b0302047c435bb500683066023100d35df44afbf3dea2ac819cb4b4af354d16540a81402e363a5b60e09821332d33c38738063b0b724437ba7f4950f65a02023100d9aba88622eb6c2aeb5e133b2eb4a968063ab656dc84ae0ec867edf2cc76c73ccd1e4f06bc04a7a21b66df31ae6a3d680302047c435bb50066306402303a0b9c4f9e4abff95b480b5df78000f1a40f64683c2e4a3ec3788cc4b46682400b059b7be8eb5a73b46dd7520652959a023035bbc207faefdc45c203c596f8a4cabbe2b20ecd24af989ce26cec4b101842a75fd4ca4c8d6424772593a2d3a609252e0302047c435bb500683066023100ce7debc3c7a78afde280dbd90123ecbbef39a8b6554bc234062e7f9ccf65f51fdcc5c2826e600605769dde71e1178339023100efb1b0548e9635bc217d00394263d762642a62f60fee65f1db2f70d565f60a4719bc474eee210fd9cb44b73294f447f90302047c435bb500673065023100b5fb150f3e11b3f4ff9c8f6a4b548b02902dab03c0a7355ab0bbb9c64c30da30c6a21b8989db8cfaba3211d158cad27c0230228911dc0dcd0dbbc0841cc120f83317c19d050724973d26d8f8cc9fa925d9b469c6b1d48699afad418bd7c984c913f80302047c435bb500683066023100fc81e701a4a9be9b2d08d5581dca00ef9c35502297fec0bc225d5127b4db0772960c850b318b46a6fe3e79c4a0e37786023100c7edaba6d30b0f50d2a2584862aead8797824137f6d3a1851a0ff113a44039f50bbadea863ce4d326ca94ed26b9958800302047c435bb500683066023100d61455ef595514939c8eee3b525a051e0f43a03f0334094606dcbbdffe0c4451d1588cf7ddb7f0872357e98c3405b8bf023100a71bb34bdcf5ae7fc81e548bfa289c99e60e3655094b22f0577fc331ccb2988c7b2fcd4e81dbe564909403d6b9c85fdd0302047c435bb50066306402305379b26ac0b3435a87afa05ac5eae64491ad1b99b1a51c78bff9bc5dd48a9c4936739818ac0c7bfc46ad23b646fbc28c023038d9ac6e4dcddd5b2a6390d0218c7da13d66309e039479644c8d67af04ca55afd3dc54d116c7344cf3be131be18231820302047c435bb50066306402303ac8a963a73c89a32f7eff303ba684eadc62e04482986243f1d794b79c1b4485579f7b3fa1ba1c43b54dd12dcb7c8caa02302bc5e1dc01a3fbc5c8a47f5e01bbe3648b31848924ecbc2fa6faf998dac1d27e0892631a565f5ed1fd17c0f5c103f5d60302047c435bb5006630640230509293bb63cf1fee69ee88b21fe2e1b600982353632f1393d9e3647217db43f9cfed91bd73b5803c70cad70d44e5f71302301ae068ca5fdaa661e439a2597bcd795e80570b7d88baa13d267c655677d8c02a3de02889ce880106087935f14dc7ba590302047c435bb500673065023100af4f6efdf33269007c36059b6a60c2ef6b45cd3183b833a43811dcf2656e587fdcbf8e265c4e141f604cbf60eb73c526023009df37e601d5a48a545f2c7550b6c39c5ca072cff0f040db6f3d5045a06af8bbcdc3c84981ff4c67d392709e20ee57a80302047c435bb500673065023100a93d3854384f531a8655ef9a961c2fef345b9b089c56344894edfe7f353cf99b424f1522478f2a1b882987377923b11c02306b7e4886d1f5184b1473e73db1994dc67cf50d6021fa5a0dcab6fd6106aaaf4817e9572304478bbbeea01bd078a859270302047c435bb500663064023039b023bcb7817aaa01c8afefd53a9c9aaedad82f817ecbdb83ef5096d1875df17f7c3c7331aeb8b1534ff63aaaa13f5b02307039826df8e91ce130690b0f070a88f5ffe0cc742d2a0abaa148624ef84665dc7206c574e66024652da2074c907b646e0302047c435bb50066306402307a7856f4d0d8532e59aa0c1890cd66aec8810c29e70d18d74d834542cb9ecb154fe31d2ca845ef451227d9797e28dc4102302f1c2cdc246c95340fd9f826816dac878bc7cad7fe4feb109aca0ecd3f7b4c2ff3991aacb8af893eb638aa6cd460ab620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023016849674ff8e477ba4ce61e4c1c09df974a620d4fcf715211ccfb9fd99f83ee2b3a27b6541055d519715f581df2fbdd4023100cae1e1d7c0005728771f224fd26593ca8a1fb9b0daea9cab705ea071c8b4218885b69dfef94ff4d1350f085b72ffe1360302047c435bb500683066023100b48651948db526f5b37662190f5fc1671e22b1c204fa3334829395254cf664e2b6b058cf7b2dd24d3f0b7e17f3cd015c023100b20424e581f6925f4ae1fef73c477669b892db772c2456184a1288e3970c586394d94d77b38d5e2dabc93e710ae124870302047c435bb50067306502310080ff88a581aff32b831c0f7333679b31c87ebbe5929ccf5f8d6d78b5482bc72226612fc7a1eb90c3f10381484d2f6684023043d9b890e965c5f6feae1520eb3bce0972b76cb255b8ad0e050c1fce70368827a36a41d904fb644d91ac3bbed5b3645b0302047c435bb50066306402305ab7225c68051353073594189381cff803ff376c9a92b4013d31c7fe76e9e58f64ceebf34c7186d39e80fd3b95f69409023059eaadd0b930733265c98c8b6d9bcde568a4348ba131187679d03778a34affd5841fd5bc31fca72ae1b5eaf655c926670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307770b95ef83e00420664d479fc97d135c158951a17a3fdccbe2e951c171d8a153f503a4f4ea1350e3f095753cf71f9c702306b3f9d3f4e445c50a38d28663400672c396c0455b97e92ea707aaa465bd9179fdcdf16cbc496739755c3a7fa4538fa3b0302047c435bb500673065023100fef74f9af3f4c96103dbbd4728999cb1bb2b8ba70273a5584b5aed80f1a44ddb579dd4d5784b7bdebce58c9388e40bfe02306618c62e56fa3ff1848b8bd921460f32a2992029706d9ddbe1c1d0746045b759c7ba600181ad1b8b6102469cfc64bc910302047c435bb5006630640230706d35c01d849a6ff3d8b817fbfa81c912a1ed997441fab144d0119e11ee1cb00b2ed6800b638a723d913773de78b2ed023036a13c9af5c84a69a9380cd31cf72361310fe7827e49f74f9e3efac3915ae1cd1b38a74e6673eae4926e14c2efa151820302047c435bb50066306402301810fec95c652fee4c0f8acedce232bab26f1f965f4efa5338886fe937bd984258f4325b6763617b7f3ab238f7e9cc6c02305f9aab6ecf629b5b35f3965067b3a2e7584a115d6b4a39f16ffe0fcaafe7b9784af29ce3914de427dae94cdc97c2862e0302047c435bb500673065023100b4fdca825574f73fdf3ec7a1168a0290e9608fd91fc530a98379201518ab46e17002f0ba769f39b5716e4737847e31f602300385e83f5c55ea106dd5dd6d3ee12d0a15c0826131eb3c7a6de2ad2a06d6528a7f93ce46cc596dbc327a24669ffeb2af0302047c435bb5006730650230059a00de0c7acb428dc585202700f9dac0357c2f0b015d959aff6f6cfe2ab2ed5d885285374f369166a58d30e7e46536023100e441e958420047e32e0e8cbe8918dfeb583ca7e02865295a81353a6a8ce74f24e7cae640036a3bfd21f4545f821c02f00302047c435bb50066306402305c34a24b9032bc7c2b645b71fe77263b5a72f78cb1614910a5ef76a668b0de406905d16bf26705f419475169d2b389dd023029a7f8277d6684f78af2cc5341c151c01b72f77306d8a54ee37532b74a37ca9adec928c90392e7cb5466116cc20db8380302047c435bb500673065023100f2cea365c0c3edcd908dee8b622743aa8a5f344974312e5692ef7546fd78e1088f5b6304a7abce118249e5f651c83e9f02302265980d8357c3d0983e12922bb290469a3ea1f3d0a82b16dd648fffbedd0ef9c4262e9906e64ccab2a22d4bae1b89440302047c435bb500673065023100c17ea55464eaa61ad506a94f5bed47408f88c1121bc4126e9ea5347852de3a49fe4170be21ed170e9803b7dc800925570230603c0c45fe08c0dd8abf0eb74eb5552652e1f414c89ee28990de411fe42b111121be842d206d18d0ab62c56a907b4ed30302047c435bb50068306602310087633ccd33789186d1401718fc86255b20e0f7a0e9f8f292b155f310894b77783a80a837e1fa0f17e330b225901a42c7023100b78c0f685d0701cd0107161c7672a0a546599ff61baf3ed57969d77ef7bf8b98303ba7ecb257835055feb86a72255f8a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303017e8b1f4f1efd14c86fa83d8b815afe18195f0e2ceeea2f6df8ae9e63f39e0ce8d187ab2283cb923f1e7e89f40fa8e0230051d033d4f66992101d303d5e4de8979ca8a090dbc523f309e18bfb7b486135a6cf3651d67e7f4e74d56e56f625c26990302047c435bb500683066023100834b195e61332d95bc4e7f601eb8c3591a4dd1585d49e33dcf278234954c1748062a8d86c537b7db55c12d242d085513023100a962dc996b8aaebadbf08cc33b8490cc11d5441f600760865745b2d3c280be234bf4618573ba0104c49ab861394e08480302047c435bb500683066023100b30fee87ea1af6fe4f1130440ae0680b4daa9245b201f947cafed822ab54175db5bd737a832f1950b1c930204fb93fab023100e421102b4b61b6c5272728287aac4f9e2923bff7b413b5ddf453546bc2c22505605a22559458443be1cd4a2d1431fdd30302047c435bb5006630640230424a2ae68489171770369c74797dcaf9c01ea02b0acef04f73c1843834c5d97b76d0212ae3b45528938a9a2a27583f6d02300094a0c6574ce7b0b179226310822c25d10001ba1f178d70d7751f202e8e5f097a11de0e83b2559178068d394ff0a07e0302047c435bb500663064023051560bea4599ada659c0fb32591f86bf86ce8b2048186c659609439553164f0e6bcbfb77ef3dd31c8185eb595f8951890230782e0c36ba539bad74fb2c90b3e652d79a4dbc57b8730f5ed104858e61d1b8492596dfda99334d6e0b98c2182185e61b0302047c435bb500673065023100ad05c2346ea146c75303eef26f47fbb7e31facb4fe35bb301008fddafdc9d9db7e57bee3cc5a82a46ee1d7076e48585202300496b904337fb6ba6deae0945aa4cf8cdbb71ac637bc8176b8383c8df273f8ea27b19314168a635146e8a60e4fc850f30302047c435bb500673065023034be79f770eecd78d9e9f6f9d6de4fd9e168613ab03fa15eff60cd5af4540badd34f8b7744faad050d416ae95967b89e0231009fa37634f309f6f0b749bdb20335eaf1fa1535d8af1dd51f964d16fe915a7f7c62c766dc9c90f243aadad2fb5e99873f0302047c435bb500663064023012cc990a590c2b0ff4957fa54c3c54b2fba4da1e70e2e15ad8b4acb55eb2477351dd96150345b2287705f8c2c38897f3023029f27c7a9081436cb185bf4fe38bfdcd0cd8a827fda9baac1adf65c0c22eaecf46fbe8c6f99fb000a125b12dc64860b70302047c435bb500673065023100e5c49546590e51d909871abf17633b78e2a6245be2ebffdd37032917bd35725166ff0fa00c4530ea10f8f8e2db5a45730230089b6d409dfde813be91802adab2bcdf2c8180ffe673db35ecbe409c1a89092d9f30dbc4e125df99dc8c84b7637552130302047c435bb500673065023100f2bd8fe488ca6944c945834e74e9dde5a4643eaf905ca8a3135e37a81c5c5e39adcb7f9230a6065ffb4385117dfc16e6023013396e913ea29cfa1a4438c05b963471e2c39470e43f5ba724d92cc517c8720800bcd7a6f9fd689fde1e09f9cf3de3e90302047c435bb500673065023052ac931ee7204947538a8cf665a0047fe606b261e9ba6b80a45fa0ed9f5fd4689d3539c0520d457fdbaf26a9071199a1023100d6e0e7609943ffbbcab77c8f431ae983b1daee6efe71c93d461c1c478adcdb0b9b7ba1accf6ffeb1767840f850446a8b0302047c435bb5006730650230651d800ac133ef8bf6b9d217cdb593a5fb74593008fca5f0f8db150eadaf22c9e6937841ca73a07855524f9d8ee3aa17023100d64a0d5c273698678a45162c65e7c73ec3ade22ac13720a14bb76c530a55edc0f2093da19120c906d6f55594e25c59120302047c435bb50066306402307f4295e629a082455e2821dee6df7f4131a4972fe4d4760860177089cc2651478c29511699d3fe4f9c5be5dd19d2e5600230611ff66128805b72ec9a50fdc6f953be6f6f4c6bf5cf965d5c556c0896335585c522db4d08bc2b408b64ce7bf3791bd20302047c435bb500683066023100c7e91acb0af2abe6a394de4053a0b7777276405a32210fa06a76c2186f773969edd516af6948f896b278eb23ff191056023100986f88266ceadcd6945547ae1392eb3fbdcab5459ae33a6c872850f8e7bc4792fab9d0f8ff52602edbba1de4a5f44f540302047c435bb500673065023100eac87391f310034dd3a6889393433d083433c9770e04230ede7fb5fb8e789abae3c95169930c4efd90ca174fd8a7e8cb023069649507ea62d77e4367fd19be00dae80147a9646383ae6615d54064a1195e73270120f887c3dffbf2ab3e1193d7c4da0302047c435bb5006630640230569306a08c4f440b32df2da806634b644799a385b47a89a2ee982dc6f45f4f79034a9b9187687080f3ce8806e0c2ad2b02301650ae3b71f15c100612ed6243978e62697fc6494f60ff7eea040f04892abacab0ee1c15a02e15ca39eeed9985942c500302047c435bb500683066023100a31e51a7f6d69d0c08bb3b33a64d8b21019f9e7588d63b307190f7425e78079397a4404dc2b00ec68dd40bd94e40b9e60231008464b0001f07bd89531f8fccf66c3363ca1d56ad283b54c45c87030cde6dd45e77ef98e781fed173d7e08ab9347bd1090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307c8b6beb5ea8261b8f70d0b8c903f04a2fc79e043b69a0673ef2457136260608eee2abe0d93db62da3419b6b405f6510023100bed9bef66bbd5397248fd6618ce6edc8037dec2dacb744883fd549d490a79c09ae0a77fd09436d4b046c1d4488e0bf480302047c435bb50067306502303d05f858ceb2138ebbe16683b7bc124e2374bdcec81ed858cb784e9df5b1308457bbcb67e908e4ee690ede32da5aa4e9023100dc0dc2dd32765e1178e0bafc1384b6bf2c3a8172cc7d400d09698afffd62925099f08a7c94c489071d3fb88cc700f7da0302047c435bb500673065023100dda717e1df06dea7be4f81d812fbaa130f5f6d4d25091173b43c2fdda63f317f0e535bd590016b85d87ae63806603f53023039606b5600b7a2352b121f5f120586aaa05233b74321020c55b171fd02029fcb3581f610c681cfc20e7232a289f1170f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ae5743c7b943dff29ad5e7cacd42833c526c0de84a0538f58eea478259d38c1a28541bbb9e220ad663a464f3daaa43a0231008021ad447e4660b780881ceaeb2faabf1f74486c8a3706da1aecd16800f230b5e2a8692f88ec2c265f94a8bd796155a60302047c435bb50067306502310084f981acf18a494ce7704a7ffbb853a9ff8cf117a4651e6adc0eac7153fc35bae74761a6bd4f51e876c0046764274416023047573859fbb5e6bc26372dfd71e2c1d8f56de1584da9ec786896d4e8ab039c324c77d135d6ed9b623aeb56581a8eaeee0302047c435bb500663064023003eec5a527138aa8a990f5b4e2c095db6a06e2e3999fdc3340676cf6abbf83701da7d3962987ec332c4341f2abeccf3902302137eafb48c93a03f30625b0006853b05babdce2356ac3717f4548e370c8a0692127a174d56fe639eb1863d641c69d2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c552da53aad9c235ac5ede5bf8d4cab9bd7b93620e35b4551c24ee730f8bfa79ff927eea276733cda5e9fd65ae8b16c3023039455665929665ff2c269e0f626debcda3d99669d8298ccabd3d91e943e195e78ff800846497bcbfb14c9958eba613c30302047c435bb500683066023100f03664d02552c3dc95674aa32313412b8ef918880079bd21247d6843bad78a8023933f5f7bc13ff37a202fb40ce80112023100a709838d6f9b0b0938a16ce205be4d5b9d99a04e3fb8ee5e88a1014d8b4bbd46c59e10318afbbfada8ed66cb644416620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ad623558e3ee91feb42dff2c91f43933705ac871e1fa40c4e791f346bcff4ac1cf94d30b5d8cbf88f422cf167c9af19f023100fffc67475d08207fa086f941f9085ec2452f5a0b02a7194d099db22e1c8137d6aa894bdfe2e7a00a52dc1becbadcf91e0302047c435bb500683066023100d35ec444c5aee6ef116d5155b82b3a346835ec25ffd403a15643ba0c1cef3b12a3e6d1b50db4e17d0366fd2088aa90ba023100c0459e44eb70fe6c22e50810dc9de34aa74e9389ccf1e65c7d92ca8afa7d76543c82675e69c73a5958dd7e760c7c2eca0302047c435bb500673065023043bf0230eb64cec1db6abd1a631cc1474920a884d859d7c50a62801510a4a37908e899a086926b237f816c89ca27a376023100bca85e59c3b1933b8873fca41debe5ad57f450842c28b734d5722a7d6605db57c1515b9b09b777263e3b2145b41330dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d7d71c46942196eed61613c95382fe341e94502054c6cf06e2dc0257969f90f671d1f9d603d69cffd8543a8e6fe47ec6023100f8c2f3ddc103dedbb4279d90b0b91cc8e67128d918b3c340a5ccae7d7731d594247a015f9b4bf71fecf1191a65413a920302047c435bb500673065023070fdf9efe0002954ed1501f0b958021e46c3f75f81f3d106b1768a53a8b23abd8892c9818c2a5175746a7c1c261ac612023100a939be1728b3837d8f74f3a9019998dc8ce911895fae522d4064b56cb1d61a7418791aad7d0592aa660af78d0a0da4c00302047c435bb500673065023100ff7716121b331572ce55e4223a6861e22e9350dae463a401704c003da162d5383393b14e3086e89a6267a2e3b087f12502306197ebfd1a36b9575a757e45196a145736e1af688aa6df599e20f23a68925826afb95362620c1ede42d34ea0411116b10302047c435bb50068306602310091cecbfb102f78efa92b018a819a5a9c76229959e6029335a080cef899c8f1c0560adcaf931034d7ca580e91ba54e499023100811c3dffbd3421fa9624dcd74f78af78aa5e14edf259e6a6eab0c1f4554b4f3c73434500acfbaf85b0e5e06f362a83d10302047c435bb500673065023076827811f5570787fab5bb0872b922271a10fb7bcd5fff347f35f1847e4ec011983fa3840ac15a923286512d657798ad0231009fd4e291b2654b58e433d4b4366fc8cce4ce121332bc8602d8a5f998fbeb3ffa2223c791edfb75ed5a42a466f8d6cb7c0302047c435bb5006630640230561866ab536ef3c2bac03b32cbb4757d6ee8649e5b9a5465024970abd8fe2b1758a84d89b1db7b15cc3f4b6374d383330230492d32293e487e09bd93f89a9c0dbe5a26c2b3835f02ceb15451cf27be06e481f785549d3b3a170008c5a8f19ac01de50302047c435bb500683066023100ab0cec0202435f8dbcb26389e4bf99f2440e2697dcdfc8b59a4b0ca0ff9852c719c39a249b7b705e9d21dfff45d4dbbb023100b8849806367f5b020848d8cc40d2dd0fe7ae38b87919116854a855c6f76fd4362b3affb9290d75095ec5ad142cd546590302047c435bb500673065023100a184f2417799bc6c2f29d55b569acca681188d4e4c832ac9f4672b6f597c6b4172087d15f988d912d99dd6f6a79d443d02307884af700784511985100b581970bf345cc855e44e9b5183a271df446719aa119e5212c62a96c7bc6ea5861a808a26cc0302047c435bb5006730650231008fd9f27ba6c752f6e16da0f7310d93dd41e1ea1683128ab666fe29f0bf14bb782fdeb3563b6b05ffb470b0c3e7e67d8802303c05e3f83d1e6bbc677e502503395d33e8655c42a518b6ff78add3e7ad314849f1aa06ccb727ea2c0ef0314b1464884b0302047c435bb5006730650230633e41c0bb3585337bba890d0cd20dac3b9e020e8b318460e3734d592ef3845fc477fadf3f7732f66d2553e9e04e6620023100e1731bebf14e851a2c97fd3260c4f8800767ffdc53f8d419d59647ceb9733f36ffdd624fb3a41b6c61145d74331742160302047c435bb50066306402305f2ffa00395e829a238f964c1ab68a09309745d56e235cb91994372a05135f6a496258b2161f0d4588106bd05af00c08023053e1c593894b68ecd9295300e56cf0553fde639b7fa88c4ebfd7cf0ad22a58884cfdaa6d29547d0ecd4e4519e859e46f0302047c435bb500683066023100f2a40d303bc1276428f9b4a0613037015c71874102fe8cc2adaa9498d99dd0eccade933ed886001fdf721d02a020b708023100c636349b5f5f2dc958cfe77565448822cef82599ddcae4848ac5147677d24cc539df5e0a52472381273fa7626eac14b70302047c435bb500673065023100f08f0ce1c24bf31487c04ca91521ff07532533867b9ed20cb2e76f5063e6239ce9fe46037a165aae04e98b1e5791ecb002302f1935b3eb95c9110c6118a2e9a22e107ee55e4a942bfcc6d6470d9317724bc937536f0d53eeb2380442ce9cb6d302f00302047c435bb500673065023100a07ba2bdf499252e442378e29dcafdf373eae705637bf48c195c0264d662438f36764482bd0425413d39a799dee45d210230559f6ffd08a1e7c060cb35fcec8f3ee19bf6615b8498999efff8ef9fdc4a9cd6be1495b0a1df01e7855b47a0e31eee050302047c435bb500683066023100e1575dd6b4c8cdd1ece1184bfbe300bef9077d26b6a3dd28aa495285007e75cffae0d2339dd272e72e533f24d3917bb4023100c9cc25cf132b216f9dbdc2ed29f91048ca1e1c419561f765820e16462439759e3d9228fd8ff7fe5f5e42ade765da03350302047c435bb500663064023072a9e392fc53f1c13d45c9bdde3221c0f88f7469e796636bacd778106f26456910246748425a9cc5bca4d7379588544e023005ae41757ebc5b7cb46f0cf46cdca145b0ea8bde8af5ea6bc411a26c21cdbaae34bfff60eed8b087c3305050ae675baa0302047c435bb5006830660231009dfae60828febb4669eb0c683b172a6b78676f3bb2601dc8817f4701c3faff60b00c20e41536c9fad73cb7eba0b892ed023100d444c8a13c0ee7730722bfd359166ec3391ff2b43dc10166e6fb31f91188c26b658154860d5512812809781d9ca3c7c90302047c435bb500673065023100e7af1609fe83ff3e8d6cf1891ce2735367f58ff3916e1c0c8e9c91650804424a66a795ea91b7b37b882e9c03c5d38fd302305d1bf7d229bcfeffca366a1dc18294f2c11969b758589b88556bc1a58423d75901f34ff01c8e6fdfdac972d3b15cca130302047c435bb5006830660231008982dca37863e691145f8ff6853ab224f31deaa4a1a77ddb93cd8da123fbe9c7e1b57b101ddfe7f1daca0560309d263a023100937942ef626a2707385ee4c09d76f544cf43e23af19245f5218c018e76e2ae437b5c6e61a7a058e67949b74d349f57fd0302047c435bb50067306502304b96fdb03901bfedd094d321808688fba968769eb971a9345d0e04c6e1fa661aa58ff761d82f11882e34e4ee80c60813023100feda70cb0235c0ee9596eff04b1bb673b6d9e4ea96e742cc410a590e5424781a4bc3dfde35d7c424377d3cc239a7442e0302047c435bb50066306402303bd43e85184daeea1df4fba9334f9de96e4074144377596232c8f5a64889fb2bb42d388c4706d1c85aff3f148bf9365e02301eda4a90abc284a23f4fbf075f193d3e001f10fb87a9720c1b545582a7294e15d89165c77c7312b71020e029082169740302047c435bb50066306402306eec36fb7b05b6296e994254562d65eb4b1d13f7ea7954071839285b5238f2f29478cf151b68ad50a0cbd142a90c67bb0230458c8f49e85e6c79e35f252d67d1276089a8cfe95e22acee4569428185ea0077e202f10f41ebb1d388c1705e872876200302047c435bb50066306402302522e9442e8114b96af439cb22135db4c12cdbfa90d61e5ae28d6fad52a9aec7f98346666275243bffc4321d5c1cbeb8023013b3ac863b48156321f0831ce44bd68234af26207b0d3c3dc9c2042a93c0d6f20618863dd8a311b745d04a25461b67100302047c435bb50067306502300f391ae005798dd863fbc21b8470fed74a63ec6302d12ebfe23411f51dfe1086be39c9d5c5c985fc9144a30985c12e53023100896e9c7d79a504ef1aa75de5c0e3239987ed05502d17125fff1f4ebba6742d99180334041157f6892732fa7741997e6f0302047c435bb50066306402301ceced1235606731879dfbad3bb00dce07f312af6f2c9726cf89a9238a0810b52dc9a7b7af0f2dfd4bc78c410a6e536802300e98594cab55964ca4cde88a7463b790e78b805e8183dd9d78ab644c5d21228710d459c24fd4456118700aa3b871c9c50302047c435bb50068306602310083c1856ee45398d745979bb12137816c64954cc03b6a90f31a1696b1859c3a045ed9fa6e16bdad06aae5cc6d365a69e5023100efba13d70d4ae5a34af3fb86cc77f0783407260a042db5783edf5bfce995323956089167db98a7720c6bc4ae9ffef3020302047c435bb500673065023010dde326a65a337618d867c7e9d0834cc1fecd017ca0eb00320cf3b67ed9d491371264bfb678c72aef51ee390199d40a023100a98c61c1ff2d8376e1760c18a9377afccca3b9ee0d2ea05a95434feda0bf946c775e31bb745a476b58eb9e689c5d0de00302047c435bb500683066023100ce1fb079f91b4e5597f30ede032537d4014fd22f0cd3dbe0a25ac8f97e6e5ca58d7c634bf3242e02eb6571f077f3c24f02310096888c5dbf57d3fe46a9816152922ece8f937300f2b1a5a0c1a0e571af6f948e855efed0cd39db2899ec6e83eb554ad20302047c435bb500683066023100c6ff38f7b256725cffffac2d7792be37eef6c823eb5305238d42d083846700d98ead78ca3e3ced0456767343a962a295023100f7dbb40fc608a813c8d9b2be205f50d2c6bd96cc9ca10f1e4177617bcfb250f6c314426720d7dbf8a222a80c11e125b40302047c435bb500683066023100c754699201dc38ce28bc7e1ee6533432c4d2b64f934131574ddf93bb24a9173493f911acc15d780c85f67628b02a0b42023100d5912ef6e4895c5c25f87ae6049bf954513940778a6af927e11e6ecbbf4c1b65b1d77f174e60ce0bb05b33b94445f1010302047c435bb500683066023100881d0ce0d35135444e999e372236face623f92d40107a1457ca51ee42af50680f0a10ebd11e13eb2322001fefe143d48023100b6ce760151ddd5159c0e06c206ce0253f4866cce518938f879130c0871b3c0415e8d8d75ce14886f0897735eea6e68800302047c435bb50067306502300e2818838d8b4933dfa6bd5d5c56359963aade5b46bdb1ee17b00defea87acc20ce4940c309d7720bc90590b7b924a88023100c4951c34e077c80c15d231f2b99eb3f9271bdd6610d79b8bf08aa90171ba4cebb775cac2e8cd69182f6a73f13324b9500302047c435bb500673065023100b6f63735e9beea1778aec9de69b0bf1b3f7b72cc77f5e698d749c7a95682de2701b7af924f7417db88aa49160905b5e802307226dfd7c3de2efcfd90ceda907bc602f4d640322bc89c9041cce05e4318f616a1fd49f29b3e17fdcf698ec05f582c3b0302047c435bb500683066023100a56d13b03f7f5aaf321e3dfebf84efdb0f7c7e59ea0adb8adf656c05401e17a94a3a85f8b48d43bc2f6b1d86960faea00231009c52ccf7f29b5c20a396f15669b7d5a796f0b7d6db9c5bb5d74207bad1546b96572201a5dc975a78578c0dfdab5a910c0302047c435bb50067306502306c21e06f0bd0fad19773c505072afcc1caeabd49cdafc5cafde028aa8aadb05c3f6f9d66365fdfe4ab3c1c56c7073248023100e667d2b680ca334c8b00b55d54b8f546ece2086dc90aaab9d1b381c3437d26e1d456d505b389099c8d73114bc8c89bbf0302047c435bb500673065023033d2be614ab67d8b2dc5b5beaab8389d3955e6dace677d68d344cd658474a4d1143cd8c8251aa4a956acaaaf3d3fd8a3023100b78adc052af026d4f72cb077a9b08f6f1cd3d4694618e9b9f3701c3cd1a0495b195b70c66d0883622f8cace28999aa5f0302047c435bb5006830660231009fad2809340d4c2a326305e6e1c4ec828b6963c94c22c77c663af226add3257a9080548d72463b94ed335977454ea5ba023100a716168fb3529db8b2b00146c9e3af15607922ce2979fe18a0393ef8bd8972c2635b56c0d31f80e63c8a6daf8e5603530302047c435bb500663064023033889457c6b1c26d491e5ff5ca32664cfb3912e115c9ff9677e8048a93e1b6450e754224da6ab99786ff858651e7d7010230799c310f7c7ba8d0f50d51c5d4c8da64edc497613e023441b0a0941c01ea4ec4680345110ddaad608658a61f339158420302047c435bb500673065023100e031fe5aaa71b17c1fd1fe1e6e96583097e82d907800ae44c9cd76948b4db81c5d81f5edb007d1101d7b427b7251332a023039061e4cb883c85023d13ca61d1480a2d39a215a47eac1d403bec086ddcc733986848586f1c2a549f7652724dd26c0e00302047c435bb5006730650231009d2448b3a3637f9c6453e38af487bf53e57e86ea257ff516486593bebf9088e77cd5cf905dc0e4cbd41b9364f83ab02e02305086fb8b6dfbcaee4a6b6d3bdc7305d6fd5c95901652b75fc4c4cddd1cdcc9afc88b864420aac448ac745489eee4d4420302047c435bb50066306402303b4021a70817770070af5670f6c6de8c652065289c614c78ccddcfca4a8b4cd46e186cb4f45efed94eb2160d2c0ba93d02301f75441a4a00e16027f4bcb17f9e5a4c4b0ff16eaa1b914ee00654ab11d1290140d6abf5480523ab57cc787c7d0c1c8b0302047c435bb50067306502304ec942a0e96a6db4232ae72e413cea1a2e4c6c01892647e37fcb158a72fa9ac1aaf2a6e8c80211dfb6665286848ae42f02310099a4b0e1ed670128a07a59a82056d9e024eb6192fb006b47772d01cf270ef7eefe5ef1dfefd2decd6c01b1dbf2c953870302047c435bb50066306402306ab74ee6b18052009e377a0feec5a018ee3a4ca9273a3b9f0dc8bd650fa6c5979d41ecbb8fa7783ce4cac711aeeff037023021fda0e8a4e06f676cef80b86f3a88c9272d8266030f429ad850c12fc3d6367c502a0be62bf9229b959a46d1b20ccf9a0302047c435bb50067306502303224d208d315d9972af4e57a8566c166c577aaab7088369ce1fbaa69ca9a463de9c508cbc593bf16b8d7a158ec9cc1bc023100d305b48f158864f4ade38551c514b14fd4a67c94f09a8e6fede726b5c0edc73a065a8367015caf2b1c620da3e40f0ec20302047c435bb500683066023100fb3615a2d7ab09a08e30e69abeccd7c39c7d8ad2388e04de04d8638621c2a5e2aafaf0fc166852fd4becd89007efc061023100d7ed9665738b639152690facbb283f1b3ef21026ec4da0fdab59d4c22665224f74435d245a3f086e1f7b1e338dfc44a40302047c435bb500683066023100c7b40cfb30cae3fc1b4d2e09ca6f75689acd55b354ce3841b5fdc04503172f5f6805f36a82952c0773d109a6f6827f5b0231008de4e7ded20fe65dd3263d15592f5e67cb463f78662b0794a537ab81689d46053f447c15842414979ae0074de72e03f10302047c435bb500673065023100fc7b582c4c28d5b93b2447c363e42c7770b4410fd14c6a9c42609466f66402e2f8bbe8effdc4a577b34926b70500a8b10230473ca490b7f91eb81c8a7491ef1126471d964de1895e74d68d8c8e277a6ead9bbf3423e07ec31a1221e8e4902cf57fcc0302047c435bb50067306502301b5e82a99224329afaad1e5e01a71da63ec01d58b3f51d861cc04f7cee8b699f29326a6b04bd304137a4581dbd0f77af023100cebaa3bed0a47fff83165a5d364f92b76d99f70137bf2f1a47a6d0555d8131d73cc57983ab40c35f301ef9ff9e6684750302047c435bb500683066023100a42bcc5f839fe272ea85b130e744dd226f771a4e6e331098c5a75d7534e6c5f849cc9c5c9b851a01e2aa42d1d451f206023100d8aa80a83f93569695374a7b52b7fe5f081f3a0e31b205a8edadb350ce30b5bd39be642628bd26b847b95aa70274909e0302047c435bb500683066023100bf218be4618876eecb7624bb4a0a049d15473fdfe64cb839853484743a73571759030db2334de2deb181d6cd7c5a3cbb023100fd03f653aa62feeeb6befe5a777aa5ce80fe32f0ead28b31c04275aa0585f92bd346d3873a4a21b433893d57947cdee20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d088b0832228ef61cafe10c4784a53055cc497dbc037c76e616a9f1143d173321e0b311c1f05d5995724f7c950f09c00231009e84dc4590377483033ed464f2e7ec8c68aee5711fed6d95345062190efc6859fb9bcbf9a70060bb5aa08187e68ebf3e0302047c435bb5006730650230259f25201e43bd299a4778cc887a811db04ce252a86b854af9df2fce76ecf862efb2c4347fb6bced5f1d0e6e385e5031023100fd0ec86e5131c99a835324c8d98ea0de56c6cb2e55c8a92fb61cd248a0e75b6b8c4261c4ced24769c0badedd5b227def0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230629a788f149cf029cf91c88de0ec9e36c736b3547dc0074cfe859398f5d943d0621a32a70f1aefe87e7dff46c6920c7d02307bf1364c91dacc0241604089aef3b046b7063fb2613ce7c9ff6e767a4e22dc553e817531ab487ffe072bde399a5425b30302047c435bb500673065023100e3d8acfe36da60f445f064411e6f0e6d4609eb2a32a4d68f1539ce900b2ab32b334feb6c2aab80b803f3d278c9649e2402306653e8a0e04e18e62381b54bdbe3745c36427f7cb1a5d853363a5e373bc9ecd010c08664750b45bc1220b6b093e971dd0302047c435bb500673065023100d4dca1073df2e52d7422f998658ee1c4153cdd041504cf3612c3fcb1c43d85c9bc50ab805994e338c34d5b6c4466276d023062055309b449890cb27b50386f20c8ce33cfb50faa1e0efe7ea2793494f70c339a763f1df5f4cb54e4fb3046acb2771f0302047c435bb500683066023100b1965527a6b84f3a6ee15cb660dc2473652dee1f92b656e911954fa1084820b442e56f16b77cdef21562e86abe21178f023100ea2e5de2362918c785f5e5b46329904b9fde3ade4cca103ac59aa75f5e413299ee32f880024bb84e1b00e2070ff4f2e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f38fd8d15ae415eb4338e3909049adcc3fcdf77c198caada14739b55d0f7b862a9f8d22e601d326bedd780650370950e023073739d0c0476a3c46f731336b60305dbb94ba73495f8c49fe95321b573ba5e108fa24773e6728cebafad0e1af26b08440302047c435bb500673065023100a4830aac37f0a9e8675ea65e1146beab367eee84489e13d99a511bacc0a5588b80cd517c6b3fd047e13aa80dc1596bed023009eb3aa5f04d34625d2f7ae894ea4d1f126e72713655424b78af5bcf08db61e8c5e8004a3fbb79f53e518b8b2c5ca5b30302047c435bb500683066023100eeda501620df8d19131ccef019891a116413051191c484090321ca9a1c4832a71ff56c0ed82c89bdc186f9666d54f43102310087c8deea74dd925481ec8b50c88a081efbc4728fd31fc2fda0b5540c53dde6aa4f2a2a88889c545c4bb30604db3abb970302047c435bb5006830660231009a86f137ccbddc8769a3c7fec1c837d8460d2fe8c672f3da654ed1ccb5551117b5312e4df6a5045b2749f26e15ef2f0f02310095d81ac2a7e4390655afd22a444eb02870f4bbb4718a13234a73ecc7797af9fccdc5a065def1aa4702b68e26e2039f160302047c435bb500683066023100f91d56d23910ddf82cfd2bb1ce846de4aceccdf44dda500f3efa9d86b35dd633280313cba50838563ccbae9b48e1a08b023100c896d133c21d7ea0ef09ed2d48c8db15dae33d62f354b0b80811b35676bf8473b414c9b1612cb90eb39fab48e68698b00302047c435bb500673065023100ef282e7ed8ccd2b7072544338bdaff99cfd5ba8b1f9b2f29a9cd346e4aa40f35d8c6e2079cacdb54d01b0bfab0e9138902302a5484a24d34ff940f0eb9d169dac9aabe10217229ee3a33ca6382c0cdb9cb5b6703065580b4f48c3a006a4a0c7a36cb0302047c435bb500673065023100bb15aaff07796ccc15c5f5077f5d074d98e8943d69a68f90eee637a1fc5d59026964b9d66c734de67e0df87547eaabff02302c68f21e305181eaade347364c282089894fb21f2499df08a2abaff543318c266e13c722ee70433c5bc7511ad27853160302047c435bb500663064023040e355a561802c1fa08a174825c0f587ecb7922321c17e24ace6ca13add512576b45fb9624a56ea38e4b4f10b55207d202300203af9e42dafdb93f2055b99cf84378296ebd4a101e245f12d4f03d5cb5b4810c1f1f6f6fa942109b570ed4ec10dcb30302047c435bb500673065023040b8d91fd00a99acf888d3b7ff06014817a6d3c728d2925d0b592abce7667247e1209898eb20f01e6e6555c90a1e1c7702310084f620c55def431d18e39ccde5a589e410593997f97d65b752c0c0ffe1da4e3585dac6adc5d9ebb1b846e46e434565760302047c435bb5006730650230123c2db5610d652fd4d77311a1fdfeda9cdb21a854c5136234cf33319ba21cbfa40488bfe51848c5d2c98300a85a8227023100bac0b69658d2da670f9b9ccfe8aea97b178e4acce3c1776430ecad0128e1f9bf0c51e5df64bd8490731af1479d73288a0302047c435bb50066306402302fa6bb59e9f2d12c236f720b403a85bb9a5b3713e8d55d020f6b5d73846a11b4fd68a2444148eaab7895a629c1831b5c023042b583557764dba2ff3dc50a320f62eb4d638573697456c8a7d70ac53b5052463af9ec08381d6b707e42d4206502d0660302047c435bb5006730650230067df1b9e49e212aafef2bf88fc8926490864ee8057deca070c0fdd3206a42b1b9f9cd382986434b456b82648d16d1d3023100dd27dcfe19fb55fee8330ad308b6effb899adb8073022ea877a9ef9d2ace6a128348e5b2cd61834c544445db64c25a7c0302047c435bb500683066023100990359719dd74c295ad0f6159e6117d69f655370d0480b5b641b9c60ba5efcaee3b313db36c0fa0a44e0ca6c7296a111023100e697d6c0ea47464574a621fcb1d8e62e15f56fff2c1eabf0265804e9092f403fc08597f22139df619a0f4de7531285520302047c435bb500683066023100a2e39539addae182079477ae630b6f5994b310af0810d7708471f1ee1f2ccc9b552eda45de0b789875242ef75a60b3e1023100c5ad38926e96b9b517f0f0697753a041c2e55c87e707a5260cbfa864bedfa014c633af833e281ac518481d696d0f75360302047c435bb500683066023100a150a38fb2a1f8bed8494fd8dd8dd4aa32c51980874f6ea565d09d8d01fae08f25ec2fd2bbf616084cebb0b53a9b5a0e023100fb1b7bc604a989b1156992a3668f6934e4f4bce17afc11e81280b6007d23f5b340545b56cf8aa0db8507f1654fef45ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed92026497f31ed353025d671d87da459d7aa096481d93156186cab6bbf71e1cdbbf150b7e8f5ccf268b95384a8766c2023100fe3390c50d4c6c99ea58f05cc9322935b085b808f9f2c41cde37011ff3d5b1a76f8964cab845448bde00cb00ad6b4a670302047c435bb500683066023100ef4a0bbdd719c25493fda3c8cd8efeed6f10935053a677992b24e4c5449e8259f312680afc51731b2f1970d48aeb93a8023100e418a8f8abd19b39e6fc4cd907a2e29ae726971dd057e24904cde91a808c07df66c8fa41b29401a4918e9944616d5fe40302047c435bb500663064023075311d998a2293a297d9d03a417b07a6e49e8cd5c4ced29af7255f3a4e4b867534f4d446a2d2830c82b38d85ab42b4ab023030b1ac03610cbc22a45284d5c9858378664f899622ca5e89ff967a7f2d8035d01ceeb654513ea029afbdb62525fadea30302047c435bb500673065023100bb9de9939f56003df8282c4faaba9a0e2753e2bea94a8579cdafd363524c10ee522875a980d7f445f32059db769835b002306abb2b248c3c3eab45ef8b4acdde3ce602641e3dbc987147ed82be71691ac7f4057bb35df4f021596e8feae9869d65b10302047c435bb5006630640230067945ae59064b0f3f14204daf84841eaa4691f6f0e201c6ae8adb99caadabc8c2bb11472fe84781cdd622ff07fc9a7602300628c4fcca41340fb4e90efb2d5a1895dba5d413984cc97fd5d62b3cba8920f15491fd734ed73187eba16cca33e621770302047c435bb500673065023100ac3bf46c52fe2aebb70108730640b990fa100c06f181e08ac0e69b03327f0b28c1cf0e7737624bec44abe89a9d8abab2023051831ae375b6b29e03d3b2122ae14787d99a4a4aa97fbdb4cba58f7438f5058b80bfb289df424002ae8bd6739c590a2d0302047c435bb5006730650231008a7c11e814d5072b9bdbd005ec3e0560c827214bd27c7a7bb5a4aa3c3a1df72c0a90ca56f0469a075072f7a943989f6f023016b5d6a1028f580c618f33c3623380070d266b165716af09ffc490b5384b1e6d61deed465796a900e22ebd0b054b42440302047c435bb500673065023100d2024e548088db022a0e99388823985c7d97cc849c8dbc328766999de02efc3e748c6a7b5fb98bb9a32b4eb8f362977102303371611a66d063d3b3dfe4781321dcf3d29ddcb0a5cfd2e473702c83d1ce51a9d90635df935d0eb69ed91d9b142a8f750302047c435bb500673065023100a825f0e9e01bcc20bf535733eea447e7d45c46f40b48bf701f479ac7c702feb03c6a819aa1554f1a5b22872814513d52023058377b53ae58102852a785e896753e857c534d18017c5fff7318a566ec48aaa2177cd47f1be0399fe3fd665b1d0903150302047c435bb5006730650231009cdf6e6ce7ce26ddf48426ef9353af4c96cac95ba5ee6913d7bbd15f4e92143de2239a7a8c08c6a09fafa78fb22d2288023003f9ea12a34d87e61b95aa474c7754722e22bd725ca288d2f0abcdb336a33c22a958ff2e3de2400e5b4acb4b7267114b0302047c435bb500673065023100ef86d92d8f81113d36b6587e91873c157d4a244eb2fb628aebeb9461855c6e20a59019c32133b85e1b3f412698435cf902306823457186016dc7d83c9a2285112328ae3054c53a43e17caaefb446c84184339c8c62fab59af327f3914a6eefd3452f0302047c435bb5006730650230696fc2f42151a9e1a29803e609057058978977b0f81afdf6378ea08d5f1bd48bfb6274dca2255ba727bbb3c1109550fa023100b27fddecb02afad87a85dcac51d1e9ba2050c1849fa68baec4923cdcdc35ba5a28e6484380362fafffec894b560456820302047c435bb50066306402303dbe58a19dbbbdaa6ec9375aa7f1a0327f7e21e19d7c43bce409062b12a891c30e880663d537c47ff6ac65d663234a5402304a1edc321af686d558fd3d722f18d4e9736356512df3781bc37b29e7c46786a82a5dd1ebfc53e8b54171a830cde3e2580302047c435bb500673065023066441e7d9857223939248026512394f4fd450131d0108950f913c3986aa08e98d85bac85bc61fe9fcdf7c1f3c3f34646023100aa15507632874a5a33746f12ca874f7bab5367af95df85a499b80dadc141f0a6e73003faf0a9f0966f002ff5ed5cc28f0302047c435bb500663064023027b87e80398d84164147d7902821e3b93543cfe1732af3d8f5e2c5e2530bbe3cd00da9236bfb5a1300787770da79a9ce023002a24eb75c03e7d620baef47554c97cc36b3e19b163f41618d3780f7a16e260808cef9df65ec71e419cd8ac4930a7e850302047c435bb50068306602310081b568bd3f5bd8a248eba709f179bff8f905365888715fbcf5b3a8ccdaabece12c5e1c9accbc3ba3fdef0c0ca715b872023100f91b0c5e95d3c6c255c2e1c196b6f7220b903de733a00bac0a717ee594586c76124bfa38425c09916dc28c5816a8b0170302047c435bb500673065023100fd4d77750ad2c980a7c5dccda3219bf16ba2187f124c1029acd4969098ffc13606c8bd8f7ae084bc22b35177556d5411023052d7fb491c8936271eed46ef509c533cc1c8a9cc6183751b07ff2d7e959bd27fd415d27288a1a351b21fa63e3cd7892e0302047c435bb50067306502307d4a2e5a6d60ac5e13f58087bc8864214e3ab972005683b211c6be15886a886426112c36faaa90a8dfbc5a23c1f498bb023100d1d5317fb2a1361bceee50b1cd67a4520ce2162d2ff04a189590c98ba345f9156fa41f883ed8bcf452ecacdc74127ff50302047c435bb50067306502302d94717061e79f2a544de8414c7337a3e1c60f3a927a81c3f0203fd53042aea3f85ad4b86f188bab7dc07798f16ef420023100b43eb04852ce347f15a2ac23ee3daa9f9ba0e23024a22a92127766f3d28cd7fe49eb69db219a2089c26073c5fa608bb00302047c435bb500663064023070ab16704454fd5988b7ae5faf1323f103bfc3853dd2c8b6745dd8f2721a53173545d212ad9778ad6a1061b8ff072b4502303095b5fc233340c10a35b964322dca04324b782f0a7e733336648dfd8c610d16ea0d1e05db8396ccc9a3e7434852dbae0302047c435bb500663064023050f5da8dc1b901c3d7ad069a549d40297ab86d5a8130f7f6b7ab478b62d82f8b588d6f93917b2d593031959a34a3871302306db5238d8849067e76c0c0ccb8c3053e2a7bf42df9903e39faf6cdbec78b548d2597913d471790687eda8cccb13015a20302047c435bb500683066023100d9ea636f262dd3b36e721847b852a7979131aeb08d9f517d5369fa0a1381b60e443ce4a791d3d2d12774d7ede714fcce0231008bc5f3671353a63235167cbae866aa23debde82a59bd5e80c1ef9e32ac34fedc7ddcd94efacc049da7f9298eea8eb2f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310094d68159cc89a86c49d0bca2549ac3897502ca2960ab98f7cacf5fcd80acd3f48a0c64a3c01561344c443296894aecf00230757e91bfe9656e7ad8f85c2a2469995eff331b24ef993195bb3ccad2c35be4368e096d356aecf793a54229e1b24a95000302047c435bb500663064023074417cfbb56895ff3120397f9987d53dc395872c588715c05d3e2361c61a393de46b742846854acd528ab004b5baf06102305605d2a7a271dbd51301a3316cb3e50720cc4e53f196f231b6e3922ac50ccc9bdab5194b837c923f240267feb89e7a560302047c435bb500663064023071f775292d2070ecb4ae258d29ef3c4935fd33522c0b5c813f2ef8190afeba1d24a01d7d17cad2480f8de321d2227cb202304261c62804aef50b61f570df0a44b4c2c4eddcc78739e4da7018fd5e6485ea601639d35a053279213e4cf93a76443d950302047c435bb500673065023100d6bba178c9455313f1a952e6228a2d6300a3151b29571e7484981d4d13d9b5b168da9c70e86d6f2154175bd3d84e00e6023044c26fed7bae842eaeb7da548ffb430e032f4a8b169c0ce6a9c4670795d0bcc8addcb5f2c4dc58f22ab3027202806a620302047c435bb500673065023100870a0418af0e27d23da3d79ad6ced87b60a99360e4fa1272da677cae56ef77a692b6104dc685bb7c6e475ddf5d4db499023005ff11abb3df0353ee5b9af1e26d51766e1728dd9305e546dc777e4ba2cc79b3a920ce5a3d458a598be7bb8d4a8472730302047c435bb500673065023043b7becdc5f58c683910dfbe15c3340562286bbea46a5f8c0fbc7d7cca5547cebc2a3dbddab9fb73ad9ea94ee40df168023100bde9deaa18400a2f9fc06f110c384342303623e96f4b7409492406e08ffbe3328490fb6ae01de600ba0e116af42757150302047c435bb500673065023100e158c381b6f1bd6ad64d7cc9e235eec86f5d46f50375c4f890ab7679291d09087b053710959b5397fb765590bd11909702307f5ff3874dea64abba8fc74c893fed6fe57642a209ff361de3b3108865defa9e93943b55367913485341770ecb9113da0302047c435bb500663064023027197b060f1b62a51f1f9afdf622bf1ae594452975dbc30316922b1c3264cba8ccedf996603f78ecb0e9df3f9dee9b46023043af2e7a82741ec4e73c5c4894a03b899e5371c41726f6d198cc2f9100426ae430cfd4dd8fcda8120d62447f25ee1d220302047c435bb500673065023100a39ee67d4964aa80f7b57b0acd2d80906c439ddac079fd3ca43e64b962342eb8043132b2baa5bc87656d82d5b6e0789e023018b45aeaf7006e167fe72053526ba9f375bd28bce7cec52fde9e5873626ab41576f21b67d9bcc570abffb00f0721ebfd0302047c435bb50066306402303c4cbd700365ffb2fadf7ffca9ba88513255dcb70e807bafbede851d29955d18f1dc890b5631689be02f17970e2d80c002307a04ff9f8e86f64baec909266135c1f4a1a8788ceac54d13cf7b05db6dd6e81088299d1b2ba9f52af5272128f3c864500302047c435bb5006830660231008fb82ea6bdf2305804b576b9e5b3cdbb35d5b3c7be47e3ec1ff97b74ad89ae6c58fc8f21f9ffd624f95fde490c7eeb6c023100f7d04838083314ca8f7b048e03bb95c53c8dd049806f4e166725ed267669102498d25ba23a9b3b5c5407aea20e6e46570302047c435bb50067306502306ee18fbc5140a19e8fd163047b2327c1fe9c435cff514c7bca3fe706f9862f106098b70ff3eb03de753016ad24e1c3d0023100a964ddf675e2f51caa80e70405e15d0919bcfd98ba17873224b05179670d02c6849aef55be4b8778827b0d4b8c9b2be30302047c435bb5006730650230149305a140baf3298e2ba1b00bbcae1a22ae9942fa486f7335f849b4a8470a089d3abfc41d412a43e784ec8bb0a18b22023100eaf50b643b183929adb2bdb12b1d4be4998e77c13f22679bae50ee161a6ec3cfa5d6e1e579d09c2402fc3d6a1efbd3360302047c435bb5006630640230105ead0a69c64a7bdc78cb638140607b5a9a09fbe473e4350bb4568d60d537100777c3e062143234a9f610fe53392fed02307efeec7d01db5b672f2349b56db4b9ea9efc46a08ece3f94185c502e638693de26eee9f92a9cb6d3c12d80a0bcd54ced0302047c435bb500683066023100bc482bafa8144dd82fc8a3eab30994ba81f0c2e6cb3405d86069d2707f05d1505293ec3f4df44156c8f462b1ac4ebf13023100f7adc78968e6435246dab494308915efe872e3cdf4db464494e3b3377d29680a824aa74343ae4911e9e692c6c6918ab80302047c435bb50066306402305dcdca07b6603fcfcd621c4b75a905983f3901ed8b7ccbcee3d0fc831e603b91245698d1adf35bb0fa8237e23df6e07402304e95ce57eb6d24f56f73e879443f8defc288d4b80b0a20ee5043b3698264c48f03df405a28a7a310989e4a0a1f282faa0302047c435bb500683066023100ecaf00677e09128c5d560d54d8a51e5e11f3dabdb25f70f13f284a3e997c0d6ee78a1c5721ad67575fece1e2215ca486023100c8a65f8c07dfb8a0ee0d6dc27966f1528a4f45d808c10459abbc7150000ee55ba61575cefb50c0a405383159ad1977da0302047c435bb5006730650231009e46ca539558ad4005de84eb64a0b5155672022a8a080686c26ee550afc329d06db1aca10d43903e8e5e94447c47e364023049ab21cd5a8a8661c26259c5340b82f686126a82853b740e0ab4c235f8b808c82f1fdd4100e0a2adb7560a79d6d8118d0302047c435bb50065306302303112f4e518b97ee3902bc0d74b0f90bfac4c1b5890d79bd54ffb51031ca962cd64b3a166eeb2f5d249402a528e9af773022f5693e0eb04e6e1cdec4ca8c05a28da0e168d449408723d17727a084ad3369db60c86b39db67cf357db881959c2f3f50302047c435bb500673065023100d4f5cb6bd136a64aa61fed4b5b86cb1edcc7562b05c03c5f63a7cdea8e56c475ef12efd3681f9c6547c1cc06971aaed9023044ddaa605b378c958ae36d853752a67238fe45e6bb2d72e79f2e71b5e5e280bee635acc6f3390bafea99e1d932b205ff0302047c435bb50066306402304ba758284618eb5d5f625949caf34a05c6925b667d448bcc36cdd5ef7c8de25bb680213a7d8930f60db7ad19ad05801b0230452757a4d859d88fcb76c0b3c54a2fb20bf3c54217b924ce177a9149fd8a51299b98186ae013fda96cc94c1d401183c00302047c435bb50067306502306d24780906459bc5f2bdb9559ecd2e4fc028bd7138de5e5d5d6d2af6527d63cf588b4ec35ceb98815905cd9c644466e30231008868c13b7d6b59d350cb637c381f3238a38bc3f0d98f1004ec772471033aa2a687fee2d9e5c211f6e3c49cccff258a0c0302047c435bb50067306502310080205038a0f5f6b67a7b218cd273864f308e28dea15b2be2d569518ab5ec22d62284a0c132d309e4ea8e6ce4c508559202300e49812f5c088dd4c4022eeeca036e8a141449bb167451d013dca33ee828082e7686965c38b22bc42a3cffb2c3f3c32e0302047c435bb500673065023100b681f90822372923fbf5989d5936852141bf8db03db1d89bb537ffc54f1ae4186271d9a32dc871b985e28280087c1f9f0230056bc959d851b5d801ba6f3e0971d279cd8c159886d84fc33bafa77bc2c872ff88b0b7d6ba57830ea5b61518fb074abe0302047c435bb500683066023100bb6521e7073f7894fc85f49de1245f8f8d3d9287e92808c51081cbfdee07e8f2edb94149ca90e7bb23390a63219543d1023100b8f1dad3cd9c1a18a3d5bf254dad61ee96330e3710ff04f56b2a1e3e3e2b3a3e4f0c3ec0cf446e6e3c06719d26a9f2f90302047c435bb5006630640230449a59c99d4093deaf75ff8573107ad255e1f91e3711b286284f356953f93a43b5caaec26df6dee6420c408d363c12ea02302c2e789ae209153bfc6331b30cc57cc14d3b0d50d33770d7085e0797f4b3f321b5c46597b2257310a556bde21eb479590302047c435bb500673065023100930f0b72eb470cccef6901e3ddba03920a834ba0aa9c2c3854ff00a6082036b5b0e80a37d9e69375212736a29f5dd3c60230097e2e9983d8d395c40955bc19aa5f1fab37658dfa4eb7843398229c76a2c002df6f75d44eb877edda378c2eddb54ed40302047c435bb500673065023100d947127991ded1b7f3df4b08188755d079246fcd87b72274586c105405d915ee6f0e0db111f722b91300bf846c739e04023000ef04241fc419d166bf605851716f608993a3138c2aafc473dda24130620d5afa93a97af543944a01e380d4d94738dd0302047c435bb500683066023100bb79577901f67d96c8d679f3a560522579415104413e0025c5beded1026f36b6636faca66d708dbb04898db9311dc0a6023100b844a7a348b4905a2b823a0a378d559718e6be1c139aa62c852ee16faf3ea1a8471c761549b22f190b369b5972195e840302047c435bb500683066023100d466499f4b2686cc56cf9385fed5687a11f148b543116863c08806078df90d2d37e587727490de4b6e04d79e9ef5eb22023100958d9a6a83cda7875639fbf16a7709f242e957807751cff0e4fe064996a03f9f8388e2d702aea95e97edc23f083d57a50302047c435bb50066306402301492346ebabe128a3b93cdf804177148d38848588abff16bc77dbe72bde51971045e05c37f36a9077028747592ddabc8023027346e386b4768a908b0a1697b72fa6b6a8e2f0e3f8b0cb6672fd452563ee62900865ff0b274a8521e962d269e6386120302047c435bb500683066023100f34258243a12c7c1818b170510fbb768f380cdc7570f54b5cb6d40ceb20afa5930d7abe9eca3c9af8ce05c49efcedccd02310093be9a65219b7844715fa37dba98059ec46ab9f5d116d3754c5039d475e47807acd9a1bbb8cec07c5025242c6ea2b97d0302047c435bb500673065023075954a4c3b92a6409067a07cdc35e11991adbbbdcb1f439652625a09da1c04bab7f91323dca92733793b1e4565ba41d1023100b86d7f844c86d69332ffd7793b138e6afe1be07ab5ac388e2a6ddba7d79398a46a94efd15c73450874b95d79bf1659ed0302047c435bb500673065023100d81b1140217264827af24bc938b2346454c331de7b983247d2f3e304fc5582a019b594b49e1ffd1a46222186425fe0930230427959ba3b83305a4901bd2985ab02069cce98446b0d61630f7f43ae3d81ef7b90f2e93b37da5291d31ce29b49d0842e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f7e1aea3512a6c1ea9b41d45216f2dc32cb434fd26cf8759bfe22b04942da926c81248238cd0ae91c1b74ef6c073b4b023100db3670e8c497152bda6c60178f035ac1c158699774c60dd506a452ff52fe4afc2bc2b8de11b26f1ff7a4e8a87692d5620302047c435bb500683066023100f4c054a948cc2e246793dd0678f1259c298ee52c15f942b5bcbd9f0d9e781061bf231a949c5c15e78f4f0d8fd7624ab1023100e062e82083a5161b396919c16b38c6f417cfbe9652c8c85e83480c2bebed93340fc236b6a36cd564a68a811551687ba20302047c435bb50067306502305e0202c6885f9b151cd8105f9862ded418f89e39a2f7914ef16d484b8d297dccae1492bf846e16695c1e9ab99d106feb023100852ee7044b357c73c3664ceecc07d92d90dc21630c61616b30d9abd70de62dc70d616edeedc1c1ca0a7a32751088798d0302047c435bb500673065023100f044f89a02e87fcd1efefbba5b82d9f291944a1dbdf6774011f32355e2fe9908a6fb58c9e264cd12d806d8ac9ab80c1a023006bef3cd52acf370fc9425878f585b32fea44b5d4b30ba185230e70f95f75e77cdb7a07785348706725abd80e1e591a30302047c435bb500683066023100c7fcdc89dcb25c3ed1914053d57b7b801f421417d82852939e302def6d7fe4c08c01493bba303509f982738343a73ff5023100a827c688589f2e032fdcef885cdacb2f8136d73667eb54d2b78727f120a739031ebe3069bb81b21d1090afe1972090270302047c435bb500683066023100b08c39a98a15fd3b4cf026937889ef11650483e6202abe59efacf7f945a7207021750e6d1bd6915ab043d4548f50ad93023100ab7103371835c6ea26293fc0c2fe24a6ddfa6a6901afb79767cfd73fe1bf20ec7269a16efe1118be2e8c386627f0b8760302047c435bb500683066023100f567602eda8830227123e01c9e8fece2b59b93648f43221a2b0fedd9503821c6a7659c098c79710dc05749bbeda845fd023100b9901ce83285fe28d39f79139917fcd4b04afc720b5dbd988d985f08db66ac8ec17fceadb7b50c058a9b6b1d93e413390302047c435bb500673065023100c31a12f2f2e1c7d9de323eff4495d56da527f27730c88f23692c5f0a178fc7ba05c292e14b3c12838202138bb813357302303dff8d6df5cf1f806638e219a59898a86c8a4d985a7cc1b40952c3c59a67b5cbf00d2911687f8653c457c759434ae92c0302047c435bb500683066023100d9c00811eb3652fbb68e5c9da709e48c0e86492fb327de0825293340e5c4e1e9cff80b0e3b631ff16a4a7a48fc71b1ef023100cf2970b5e259eee1123e7ef16b0a2fd42bd6305af9b19d115287d0b307fb6b19c3c868977690e38d6b49888580aea8010302047c435bb500673065023066e7766240de7bfcf506d650d73d295e8d58fe0f466d3469b8c060e84fca2d286ac9b1438574f18acf926146dbb2422b023100d4738f0ed27891068fde0a6cf24a35f03650b7bca1be150e0f7b43ecbe2f27dd1465e524d4a4fb93ce0921c69882c6ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b5f3cadc2b6da3da14f4d08a292f54c754eb7fd082db8e7567c4f4520fab4cb7e9022364314e8bda6eb056cc05b3c59f023100bc989f33590e1c2c1c628f16b01467521ac298fc6cfe8370bb05253d472d74f717594c617c44431090ae464bec468ee90302047c435bb500673065023100f04c1fcab8eca525c17d3573fc6c2369564921c677ada0c5a824ed6591d71db8e660dfc60ac12d38127049d47e82f9b402306becf20e3ecc838acecdc3b9b46497789436525ca86250f6651d756c737caf9cc4c432175c3aff6fdd49f568e38629510302047c435bb50066306402305335b5f437545425737476f40eb5f8290afc45eae1e7122b22ab3407432bc52b932cccccb5210b152a94032f1854fe4502302c1f4a1932dcfa005e368d7c5976623d6b29bb65f487eb5bc7da9c3868e46ad824a016f15b6f9c48d726710fef367ee20302047c435bb50068306602310095812ddfe1422f7255a09a235c9e4b40d448e5590c1439591277787e5e502ea37e2c87e73fbebc4eb448770cbcc3636d023100ed244c4d86c61b180d044c15fa94c8bdb1948b676b9550e898adf08a4a7b7b95b6627e3a56fdc0db58d1f67b2c92cc900302047c435bb500673065023100f078830d20d9acade8c3845366048d32e4cd3d610e00e0f7a7d46e513b59276a59a50ffc50cebcbf32898cd4152381e40230155c55c5eee98f46ad2e5c3a220b156cdb4a51fc04d6fd55b66eb79050266340f1b6beea944010c035dc89b14fff56610302047c435bb500673065023033f1b127485e02d48b6628605a6903ce8c38bf7cd33d75009ee2f0e9d0d12ada25704386bfe6f85ca6f5a5d8e7af83f602310088c0d28b0053ed055319bfac53fad94958f694086951061c9f8c1b8bbc9ad3453fbdbc12dd291b00b85250f1295ecb490302047c435bb50067306502306e465d0e3363500a598eaefdece01a8dfa9a4e829e5598437729ca4b0b77f94f3bd9c737cb00b231ecfe7761c792424e023100c8ac2e5200ec28b5c1c3ad6b8dd3eeaa272ded313e16029a0663464419bbc57abfbe1564b421e2e4a48cc58d9db9ce600302047c435bb500673065023024c303e66687121c3a1225f1d13eb645f3348bfa245a2a351ed4518526062721d3cc646afc9f9f7f4a5d51dd1f3eed400231008046d593ca91896fcfb862ae728756b3990007e24c1926e5ff3472a397916d91862e621e033948fbf4ec5e8c0a73cd6d0302047c435bb500673065023100f6e1ce8f53722173da51d68e9b91cb41115389b9bdd95a7d655953d141174508398dc1a415f841e8d5470c135004274f02305a0772de3efbb7098c35563c22a81f3e38e97295bc4a6f3acc4019cbe6d1c15134e659540a687bf9c0bbae9cac578d360302047c435bb500663064023043bcc2309ef8139ff8468ee185c3fe9bc75dd51592366653994504660aadbb4c5f102ad4512b04f795ed4103bb4bd4eb02303e891f6ff97fef7beb7d49c40de47102fb7c3b862862d735fc38cb0e7ae1607e64dddc4bb46e03a3e8448c45403eafa70302047c435bb500683066023100f0efd7b056f6c3f97168b2f2ad0584f948ad55c00adbcb286b3ebedd7e4e059e03b374a9f2621d31e89725e8d0922d25023100e451f664321071f7382aa8ba66d5419f7b15a5882a12702649dd6a25a5e12dd54c7760d2ae1498ddf0500d2f0370e14f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300ea318deb89f76dbb5e01fd13f63b9b882dd66c5f2137de90255c41c644c02febf76fadba0286b1ca27ab207fbb0185b023100c4769e3c2cbf948b238a8f6ba6bdcc3349e5a7c66dcea52a0e28d7aee133c8ce7269f1ae7765a6e553f3b965dc34406d0302047c435bb500663064023007b93a90d047b246d60361fe12e6b6239b9d2f64c7e32350abf89d3c4050de1c9b5b99f799f9b414cabbd7071d3daa9c02307345f1e56e08fa46a12d548df4f32308b793c83df55f4e99eb14c492e9cb5d4e2797d8c617ae0afecd4686a0e25b00480302047c435bb500683066023100a770463b54d04b1c41c7a58cca452c3026d3b2dc476c7f6f6749e2c033a3a89e6ea82eebe08202836917072112b50b89023100cb50f6a00cf0ff5f92a1f3eb3e72fb236a60675a26c5460ea3a933a6df9671051c79ce9f8eb704ee09dfeea713b180ec0302047c435bb5006630640230365a57c382232adcbf98c73f8be370647030c41b7c3238c93418905a90b756a0f9945f7e12c141503ecc878d2fdc069d02306435e4fb6379f6f0bef911ea2ecc866494c1176f90f368c9e1f0ab61a7afe2f6be9ba7056960aa3a1f04e5a5b0df79de0302047c435bb500673065023100ce88e4659da106b6458e532b405e7a46ceff22bfcf4262463db5da7b70a0c16cab00a1cefb9e1f79d334cf149c3d41f402300b5bacc8ee8c0640bdd391bf724eaf93e4166eb46d2b2d1ebc3ca16a9304c80ae05e6c9125d30f5985acc4032631379d0302047c435bb50067306502303ecaf4dca84dcabf42fff8326e6ad1a1e56791a45d27eb6c2abc56f4de2d3b583b676cd53ed6655fce51a78a15a93981023100e99f148647c511d145bed4133e3e0427aa5a6ef0b187945f5c0283edefff5d5a975533fc6a0ef5a7880497c6f1ec7c130302047c435bb500663064023028bc558924e9a2c6afddbaab0462c0e1dae61decc8a6acfd812e6a8f0dcd5e62551e1a208f4d378629310219bb3918a002306b6f0e20fae9ffe9b91f9b6600c6b4def6f7ac72d31cc77c8e76a325c1bc0c60bd63a6bb2484a3c5b4706d1205e0d6780302047c435bb50067306502301d299928a7f9bd6b4f8d74044256fe342ea0896090963c12c6eb50d44899fbc417a975c6a90462ec842279407059ea6e023100b70b7bb7ebd53a6c6014c96c01ddd70c249867b6c7009f4e87f16152facd927af0acd8f091e65ee87fc3adb1adb09c1b0302047c435bb500673065023100f6179f15e89d85b56b28302e7c196445409e7ac9a044f16bf48b4f7bc4de46a85bf2acb3f2e0daed3cd7df2e16ca7cbc0230325a4bbdc7a52643bb2816ae32f5f16e1c177dac72a52bd6340f549b031007450690f01a5399996e448ca1f15132026c0302047c435bb500683066023100e08fb6083649e687ac397599f7a3d899adcacd105c9c48d95af5320c36624cbca73a5cab64f3704c3563c8e1bc6543230231009b26cfaa02b5c5b33fcb4a75f00a26ffca4f2ba550bad2416740d21f7d1513acdc24eb9bbe7799dffb85e5b0483a153d0302047c435bb5006630640230250ca4c19b40241bd3549c14a594b603caa5a3953a617616d6ddc18198c3154dbeff9d9fc2cbfd9519b4cc81216ef0f5023060e36b6f3824494d1273a2b8faa8eadbe4473367c64312048396d5e61d8d22fc8a6c20bd407ff7b2c6a5ed94bf8190950302047c435bb5006730650230024c60159b19ed761ded7025470a9a885d645d13b27fb2a8c015285f6087d891dd40010d20495c4a427f53247394f519023100e77a5ff07eeff28830e1209614ee61c5f140174f3b2fd793fcff76f2d654e5821c327177298bd1a83083d48f87d2c4100302047c435bb500673065023100de7e989d2f67a308100a267c960331027f94dc08ef914d6baa9582e38bcbd0924a4d095606823c45d6336f6920f2354302305a0877d7d7271fa0ff17da66ea5d48c44da6f9fe23d3566936b58a73fa574839c30e51965a740ceb0691eb60469448ba0302047c435bb500673065023100ef7470435c80e45758fc0d431d95b19162c4953333b0ca7779cd590e9b2fd63731d5e4feb3225a0759eeebbd536465710230023ab31dd8006afc7b411c90153060c073cbf6f4efdfd62f1469c7bb7550a591a2c17157fd535d53ceb18f8ff72ed67b0302047c435bb500673065023010d1d2d58f1cd35ea7f771aa2ac46b857501d975fe8ef221490a7f2a738cc171fd3c3e52214c48055cf12bce893bb1d8023100d6375bbc25284c5f9bcdf203c01f19640ef4759b558d6e90aaaaea4532c6701520840c9cd95e3d5ba7c7c817ed7debb10302047c435bb50068306602310082295e7b7c88b277d1b328ca5351d7c451dcd26fe58230e0800268dca4bd6c4a3dd3393057fb155dc05749470fabd721023100f908312f895bc4d1125a3eaf1fc1a3b510f5b506e7ee1adf8f21062127744edc372046250e9ae39580e9a09927db912b0302047c435bb5006830660231008b9d158df1e87ac04171b807f38f88175ed616fd178cef054794997f3d83468252077213b45dbd28dea7514e8370928b023100c68889958d040be69cf398af784728ecb34a629e6bcac90486ec0f7f0a3f06c7108af7aafa5954d1140384f3f0d869960302047c435bb50066306402305e6f19e085cbb331d40fa0cf16e061aa3465c1622173966c69b7086522153f6e870cd82c1ce7839f994a7e0114f967b202307982a65ff543fb54f47f35aef4d3fd40aa0b008978ddf658644687665620c8c3dde9c91b0f954b64fde8ca360bb5b92b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff5c9363c18eada00f64bc32b34e77e37164bdeb8cb3ab70106e8d7c289def782e46cbcd871d32ff0490cbbb25e55cba023051626a587e18d64b36a3138545d060cac80b7b3419d7eb19fbb3811398af4ea13e16d095369df6b13c64c3c79a8459d70302047c435bb50066306402300180887b24db7a087335e753af8f9e5977da5732127453afd992025b3d8b2e02a3bc91414787bd303d31f7758000719e0230041f060ac4d53193b9cef1f54492d0b0707bb89cc3f70bce23b09a10ea7d15c58f1269b8b89f4442d99ce3ad1ffdbd410302047c435bb500663064023031be7e6ef8bb3dd19a34dc12d76b69d922dd822977919ce50dcc90116ac531b50cb122f8d4333db198b5849101379e49023064bf54c0416341d1b8d5e39a261d8b08a3b798e83a8cb182d1da6f3d04b0401b0510ad2aab78848bfbb65ab972cbcaa70302047c435bb500673065023100eb259928198be6a29efb875ea0c2876146b829ed615bffb314c2e6f7d050b132cabc211ea15118b48ad4b63f6ab4741802304ec5b2831a80cdf04383418dea702cf43832a5e4a959405ee89979591450450f63b0fdce2890f4348b6f38ced3bd88d40302047c435bb500683066023100a96ba7871193bb8290d65c22e0b994a78062a9ee31cd477c437c6b1a46170535d08f2670b0bda3889f42610e78d7e381023100ab35db95eb29f7ca5ce2581027cbcc3913d630fd4d7efe7e86d60dc40f9b945785417e92cefb67fe4a95bacd1d97ddee0302047c435bb50067306502306a05864ba3b5a2c85bc1fcfcb84d11468fcaad88c07947daa907c2962a83fb9487d878b664076446a98fb572dc2ac42e023100ad8627e93d0b60d7978d3d65d681e5b2d30e1164f936167364dd2100d5789e9bd8371eb674b9616e902badb592092bc00302047c435bb500683066023100d8227842c81dedacf03d193085c6c5aa37f25d44c5a39f332c72fbc6f531d9013b8484aae0162ed99148cb7ca1ed87ab023100a36d90821e8abcaa40881992f00d80743e671fc96e69f0b52c5997f99020b390721df04a7bee3f3b906796003b6d88370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cce5d3298510bd125b0e37bcac29bfc250ebe0851b8554c9cba27ae2208d8488fe7ae627a07c96153ca50f8439926d690230563ec4cbffa5b5d55f794ac179116ae5ecc7775a7fb877b5dfd5ea95504354ecd5a4c4593217abdeb34508d0ee42981f0302047c435bb500673065023043e2e27a2afbe37e69a6dbe45fab2d3ca47a0461aacd86cb59ba0b61f576f845c6f6f5ca4164fe04579a05546db0ac7202310090e784b64375b72cd6c3c341535b3b12337c919fe48f839a835c92e0f9c83441ac03fb8e7b9971e2888d31dfee973cba0302047c435bb50067306502305de9e92a4fa66b59e27d02a807107d6a2c3b3a7988c209f57c3c2a15ed8495da7406712b20b21ebbd38fc54a20bc8457023100f6c95a0e06cf928d463490684fab59e5602ebe99e923092e0a3b34708244d2bd7e570edf76c3650b4cba621bfa89170e0302047c435bb500673065023100eb9d339d87925f48f8ed2b391845174fedb2e48e5cf04b467e6bf721239f632fc0c8701f2b83435733e9fdd4c0079dcb023074deb7f3bd180205527c597256eb5399de9d16312f3652fa19a583597ca43bfd47841b6f243a0556a4a0f1cf8d939d420302047c435bb500673065023100f8b2b45d897fe1d7a9e6029a78a8cbaca3549be9b8914ed6ec42f9f88991e9f9c11fe1e528cd96c3066b45e8003bb45d0230316334a49b5ad3baa4143afffb5928acb112cd1344d9d0060c6ce33f515ecf8799a96613ef45312435a6b328cbbca7c60302047c435bb500683066023100eacce5c5c1aedd4feddd885ab330509e53d67eeabaa53dfdc84ba746ebc3aa7ecf99f10bf249321bef1c68d22b221990023100aaf82ac51de667796dcd1470c673e7f0b3e625d7e8b8dd11c68e456f9ec075ea280dc54ca28cec1bf21548aa01d83bb20302047c435bb500673065023100b88c4cd90f473be7e5068d0dce5b378b1f69f4954cde7294c89cd9b0b2c56408b9758a5a3f693c63c21c0caecdf9a85b023012188f4b5c42a51c075ddf19c7cf833a8cf6979b86a53efc6144e9468f74b98283390fbf01738dcf7fce072e97f205e90302047c435bb500673065023100cc0686ff9cb3126055a89ffb7bef5b57415d9ae0e6bb2a5f647a3b0685956f9d8e4eb6b25ac7d212e8f1cf426aa496c302301fcba5f33cfe0d83587976146e8187879c954270f75da9fce27b85d7a525179d14ffca125208774f4bb5e9faeca8ce0c0302047c435bb500673065023100afaae7217c15c369100c9e78d1e4eb3c1c7c27a892775ef007b412232ef582c23e881dc629f2e4df5f620036355fd24d0230751e14cf98a027b618691b3f2d20485f8f1c6f3aa7f09d863c528a9251f3d1b120d686b071e6639ad1c028e7d79ed2e40302047c435bb50066306402305359690a03982f175b70044f579f8fa827884d67aa4c2106129e3fca6ed517481b6539c99378a27babb9fe69a0dd0862023055c546bfa6712d5f1cafc60e81108d237cf884978d4e113edd1f2ed94c3d94b473ce5a634ee79f3936a0ca6fceebde690302047c435bb500683066023100cec4791e110d2a6c5e9197b37cbddf6dbb28bf8e75dcb5268d3dce019cb4bbac8a4ae460b64a663432c4c9bd27f64878023100cf173538567d0e4d4a8adad2ea11cb7e76774fe294fb4e7fc54d4f6f6e79f72f5abcd286b8636af06a4d37ea393e72340302047c435bb500673065023100d83c63679700d5ea62f2ef3827596102ce49f27174b77ada1220536fb5d5d3e9186e2ed9bab9f93e94a770927afdb647023011de1ea52fa7e734a6f072bdd4f5e30cf4201619c8a4c273651f3d8ebd2ff5bdb519d447989527eae16ab4d353308dbb0302047c435bb50067306502306a49f43c20e7dd430aa8b0614d9debf2ce7a875fe63df5312525e5206fa61f4e1d25feac17eb52689fa91681c5d3e3e8023100865fc8068b3722f978e73c3b97058ebefb1d36c18305f3497a8475d3514cfa0fefaf7581b66ae09499bf4b4dd0ab3a750302047c435bb50067306502303975fe90a6ce2b6ffc7fdb5168c3e68dc51db4a82939e08e39b51c266035f1bff6384cd6783c0a2e5861ee6ddee4755d0231009c82c559c134493c0be9c4ade6bb03908f98bf1736cd93d26fe98b1b83f216af8a21341edaedc9ad38b9b56b687d33e30302047c435bb500673065023100ca138614f8b8ab635cedbc9fd49255bc71788ef3df213794df7d8098162530b0678279742402deaf1be4bfef709a8f9602300abed0e6f037a48cc33f6c3c6fdd6a61d09fda2c1aef33b1eea6cc35ab4039dd1ee4817314de8912c21eab06607e37a40302047c435bb5006630640230589c73574db688dd7236b048a67c28ab773ef52682a7386d5a9ca0509194447416fcad041fa6e12ab0b01b468c76e501023072a37b0f367451e2f574cc7f141d209c34f9a0faff791ab8f4c84d3c19c3a6dbebc1efe6a5b3dc9feb0636c9db6e9b110302047c435bb50067306502301dbe1b7bb4a3bb17517f4c6a6d15adeda53856ccce89056bf1df694ea3af28abb6b1683edf99815e98896ea65fd8dd6c023100b74d56781fb96765a2a92a24487564e1c97aaed194064c91227630210710eac3a7f3686e21da98b0d607e14d7041886b0302047c435bb500683066023100a3dd9e56b7dc23f8872531d4b29d97fc368fcf936d716ab6aec8d4e602a774845089110f02db7ae7eeebbc626e61002d023100d8cfe5b2d1da5fcf7c0ec052495ed1fdb8d2034cf18f9edce46059bd08289bb03c803107cf3a55fa483437ec944807870302047c435bb500663064023065bfcd6ce08324aa8c11df7a7dbaf26f55526ad4dab5b85ab3ccb4990c18a22a1e3f56afdc6b14e0c3341c14522a767002306260d96cb8f7ec85bd2e6b0b71e7e321dad2e86013b1570dd29346b588e7cdaa9601e77891ff63dbe56b338ffd30e1240302047c435bb500673065023070ee4c337b277b1448f1154ec2cd75f33017e687cf8decae626b772cdb87df1b35d865cb368a5b37f7acd01e222d3bc0023100c615dcb7b525afcfc3fb883eff23c267d9a4747ba07d0b3ac394630fb0bf140c00d6ae56aa81cece03f2c9a30eb6c5f10302047c435bb500673065023100ee2c4d77826a2351ebfa8cab0d10225fe43e39e2ea7bda9987289ba0e154bd035c58756e01c0b728cf2f0a06a8612fc3023039e4bc0e4fefd505ff097620bbc9512310041642a9b6e66e972b4064de38ed8925ff11533856beada88d6795be317fa00302047c435bb500683066023100eaa2e86abb93c835491b9f6180d4647a5d890bafe6e5e1324bff8064f08a2450e0001d0f0fb33c7cbd68dca0f20513e1023100b17ea3cbbfc0ef25a73d9a8743535a1d4adb870d84f65a0ddf7ae81bff109ef04980c7e638ab49dbe7103df0d0050d950302047c435bb500673065023100bdc87935f3c2ef9c8457996ba1e41f98a40dafe04d5856a91ab8a3bca4870cdeb34f25c8340414317d273d985b45f3be0230747b0145c97c6cb793851a9c88ea52b2868369f9253f19ddddca2aac220f409090d6c6b0ca1c73f33785e0e34082abdd0302047c435bb500683066023100a8bfcf475ab89c581ceda76de6b503b9f6cb05bbfd81f7614cbb5956be5c1321a20fbd4bad87608da8f8b97afb910bcc023100d78b82d83845a93fb17040a2ab8716287134ae909f7af7b8a9a053311fb16e41b454205096704ba65e7492ba5125e3150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008e55d715718d8f1e8b85f2f8f9b5e73d38621bc3e2676884a122d9f125aee0ef502eb2329bf15f8452ac966703e09321023069f3cd2f85ceaf940deb33ae9051a078de031293aee57541ccb25b4ebdc9cb83a4b9caa76f56a88522276eee10eb66e50302047c435bb500663064023032e09f1bad7d5542a8992de527ed727906f92fb0e0be60b7cb515ffb24e1f7d1b7f760e4a3bd6d6be3e7aac3d4771cad023044438bf2d4ee84b5f72ccdb5349ce0ed602382ad8e776528fde11828038c3338dd8b6171424de7aec7f5a4ee5b8b24a10302047c435bb5006630640230633bc3cdb389b9c4b65597b7b15af94d4c19ed0576591e2cdfb89cac8ae53d4b11bd17cb3450df09c67edba53b89943902307055b661f574433c73c189e36c96f9efaaafba72062bb1017d5060c5e65066f107d0333102878c3074875ce64a6f46d00302047c435bb50066306402305615399c0ac0eba2e3cc2f56b46d10ba49abd1b7017afe6b5642ef5b80b1b8823fcf40cd0c37a5d24b981240d10fc4d002301b029791ad88170ec14514e8764ad6d770b4de83000e450e497d5d645b14114f4d7f54c1886a3cca706a66651226578a0302047c435bb50066306402300a658e9f19a0d9a7b7738fdc8715146f92c27a3852cb114268412938fb2f0f25001b0cc71ef6bf32de113c5d9763172b02303e18acd0ece9010246d1ebe803b69d453c6d3ed8477e918a79057a1ac668ff0f8cf78764a9b81f9506aeab2b541850ce0302047c435bb500673065023100ccd9aebc415e13b65f060c8ee3d96daa6e8229b866cd2a0632efe75961bcfaff6b28688169513d101572cffc0f900161023018a3f3600aa827f8f217b5930d72fd002cd5060f0534b20c75565a03f24aac937b61af82536cf769cc85fc54739312720302047c435bb500673065023100be61c90882161a6025c1b1830482c3fe7840043f3fa546a08386804be7b59464cc265c4c1c1474d44f49c0f9c18cd1f802301b6a7f06a28532886cd38015c9fb2b1136ebeb53a5f1ade4e44c3e0f6e3f4a59e8f79e678c6e26f5d9fb79ecf93efdfe0302047c435bb500683066023100989c453c9f14214e00e31af8304d0a91984c51de1ca8b2fcf7361b65e7a8455829f37cb80c244102b6c1f51551801ce902310093b32dbf553824281fc43c92a251a6160d0b120327d1f68f467143850d14797fd5e42e65ceef66a56ef2c266754dc9060302047c435bb5006630640230781cfb79ea9df7194be860457048a72f2aa75b948d94901decb67e415a6d2c483425627571488dcabd23095b6388fbb5023024952ea9b58a4a49997253553234e69f348f4c136b6c5ce602075450c477bb0fc71655d4bd261a937a83c8eb6ba13f200302047c435bb50066306402300a48e1313e7d2dc23a321df8dcc21d600afb9c545d4e630f8bf7f6f2da4f0b3d7a80034700426665ad2cacbb045731eb02302de296bebbf873e358abe938c95d23967b5aabeca7be104b9223c321fa5c5160fca514988f70cc9ae73cf8f78117b7fd0302047c435bb500673065023016069940a7cc1286472dceb3e3b27f6b8386f91e91c6fad8b1eb5c8c1de5989eee7d0f277057ed53489a3ae0c1c9909502310096a570a4af2de792f6e7cc724ef7a4f90c2223c2a23db7ed51800cd37af086bf33ee112d16cc3587570a4635a00f5eaa0302047c435bb50067306502300f6bcaa35b4ea08655b36469a5b15cd679a613856f75ed4112d39bac7486de80a68f37c49f81ce1b31545e49761d9558023100eac780ec672163098d587f341356aa4936fd0d483fe74d89b28d39425a2bb55a7ec9593dcec20c59ba4d2e61e228b1610302047c435bb500673065023100c4a22ef2070d004fd322cdfe92488058d32ce634a975e9ad6958c8da4e5768b0a5870d6e6d8cd5baa134913bfc2cab0d02302c9b544c40bbaa1146c1c1c119e6dd058830f90588bdf3e98568866ef92c6f35de389587229b6780892d0b65853d69240302047c435bb500683066023100ffc0acebadb3d74fa38da846455c32c7956d287dde833d46c2dcaeab9f7ba70267148a6945cef7535158ee34cef098800231009a9b17f3fce2f759d3ef2b9cc00f118551b62be52b053a778e53210533db83ff9edbcefe737f39eb9d1396f5e2a5d9a60302047c435bb500663064023035667a108942834a2729bb542b8070ce9716c303ba530f19c9326fb520732a4f8f6752c9d724a03a56e03ccc5a2499ea02303e37af35f817226f7e190c8d1c65fc918c87a168a6acee6f943d0678ffef9619398d0c8f48da2a4b4cd0f263129936400302047c435bb50067306502310090bb88a09badbf550bb6beb79572430e26ce9f3f59e3aba00a6e65daca30a86691ad0f0545d0b3806946fb0887ceb53502305609033bd9e65401250e5215618f30efbd8d3fa4056002eed46ae0eaa76dc5a046fa36bb458e0becd2ad845b1c55f6530302047c435bb50066306402302fe9506148e7085eea6f947e52c12b73902711d93ec88029418b3af1f60b4c76700a968ac66ee00f581b18b9f31ddb0302306edad14075404f7a3d634263362eca139da9a457b95654920d23771d49565855ced9c98a981b151eb8a7ac1634cd8a460302047c435bb500673065023100a95714e06f917def6950e39708efc2859fb0a6d6dfdc7731ef0ed659f9ee6084eb1e5f5141d5e06a319f009865fc67410230085249bf46a49f31e15bccb1569c365b13d03b3a17fcd81d4a3c8c1bb81634f0bf9ceef3fb0fdb3b479f41c4b910f6f40302047c435bb500663064023073af224b95b741dc0498ac93aedc2d87fed0b4623dff90f256a7591d01519c25824baa6ba30b42e9fb23cc3440e37f4102301764d037526f66e300b5d1b616ca4d852c22d13e6a314f13629e332a48ac029b71ebdf075c12408c1d58f1be0b5bd1f00302047c435bb500673065023100edafc718353921ef85e7e62034201912144e14fecaa555add7e708a0fa70feaa5eb7494102209cb6ab8e227c569016130230193db1886e8e438e438a3931536a46e15d817edde9bdb30e31af53b1077cc1906852d535636fd094b9bf640f3b8b65b40302047c435bb500683066023100b0cb711dfa286421fe11324984f44fccda319a5bac37de3b832df76ef70b053df2c7c2e6d3b6fdba4297ecdcf1f6f1480231009a76a6065ed140cb81a10d6953c7e5a5ec41793bc5bbebcc15e018d159c03cbf5d2126d65652ca62e0784edf58e831a50302047c435bb500673065023100a542c083b94ef13eca7c8f19b6788fbc43202f54e7bc04925c482b36ebd3ea783ed878e2b46cf6aeec13c550aa875e1902307507a5c32380f8b3f1b9355fc0d1ae27dd883ab0ceaed1b6e9eb1f4d419636213fbd9d31e18aa1a66875debbdd6189710302047c435bb50067306502301684cb5f8aac0cf4ca554039720dd6dc54b04b1942139445ef20ad53c57b451b14ac8a451405013510976591582a173a02310094582a34b541da6d0917499230b6f5f32c7cfbe8b774b4c6599cabe49584a2d9738cd5e39057e38677ab90ca11d107990302047c435bb50066306402306ea9b94e70235a4c3c2287bf0c6a5cb0387fa50c5a5c6c5e2e2d296e0afd21647d5b8e55e466df602ba6180c19abbe4a023034691221f59300c3421a6229ecb2992d2dc06cbc190f4655d020939fed64dd1083ce8f382e5628a66d17153e3a6345330302047c435bb500673065023057fb182ec8176c27beaa03e6b48a8f372543c06a47000b73298753bd900d4a0e2607786b7f0df8d3e40cf0831e792fd3023100f47a81422ad91b679173e42dd9e71409e39adcbfacf9ae0dfa03402aa0c3886f56dfc2e0ada2cc75c6d482ac7ab2fed20302047c435bb50066306402306b15c90033c51235ddb177dec918bb7864ae4cd0d26ac5d4475692957f0957529ac8033bec290c5c4fd53a8f29285001023033751f12695979cd2b35bc3b2faa17c3e222a1d1466b2594b16b7a39826fa8264072d9e68f5c62e0885520aa471467cd0302047c435bb50067306502310085a94927ff966ec76c5aeea457f2eca3f2cfc284774b31ca6f762888586861dc9398ec19ec1565d9c93f4a8b8638af1002302e1248740527d34b906e90f26d18848232d2d5bcd25530958c6712a406ec70ee4894040e5ceddcc8d23478d3e619e8850302047c435bb500673065023100bd71fee48d3165e56573d7c587adbf45b9b43b521880aa24bfd353c020768a804e4745acbb753b2bb655f675c22ca78702302b341ffb241a9b056b6bc6bb00c0da9a18732724d6b15da9c6e0539236ea7c63d1d1c14e3b3a767523e8f0bd10eaca9a0302047c435bb5006630640230668b6a165b06e8b0dd54645b5cc76b1967b0a743bfa141b6b0f9abce2ca75f7c89daed3060b506febacfc6fbec82cd7002300f97d0dfeff5e1dab23fe314e633d641991c0d0d4db27db570f459f6d1645d78e07d5ed1dfe4600772c0b7e195b5c0220302047c435bb500673065023100d9ae95122f6ca75fbed5d45b773def33189fbc39d202b21dae83571928ac0f32e6f09addeb86f4ba464246e95c1e8cfe023008c742cd039c4e43a1e1e3174a59ac6fcb3115ab40be33bbfd993bc250930d1998b9b6c152e9f542d166b1cd689efca00302047c435bb500683066023100d7b4ddd488aa1f11db76804989e184d00aceab2860871c98421c4323044552bdc590691f0f831d29b20c6963a1f79291023100a83f25924c48226a00522e3938d0bafa8a7f02039ae2b089d003d0edaea3c90009a3d9602d6ceae7847941d625fdb4210302047c435bb500683066023100c5edd52c0d4cf9f7a4208ab01a6237ce5bb661a33efc702f75cb5b87a1290eb67d819a4b6a8e691e78a7dc50c36fbeeb023100a6585e87b08ae71ea26dd459b3516f9b0a542dfe156f5f5b9836449379ec5e47a926859e1e3daed98c662a70c26675d80302047c435bb500673065023031a3534a26c03ec0153518e0ef13fd0d615768e61c01c69ffa91846b9eaf5e5da3721166f57b0aeaf97f5fe2a790c868023100c6e0f10caeaa540aca13c31869ebda114108e5b00ac8d09bc69ec763d6102de725bc787c360a994a5879ad292b632a990302047c435bb500673065023050532a5be57523412b11af5364946155105fb432f5695bf212e3c24d13d15419633b4776b64074b879386b0b814b9d21023100a1033667f121cbb64b6a8e3ffe49bf495341dd916b19b5618f98437f8aa95be3adc14999b3ca6295d7a77396a843968d0302047c435bb50066306402301d16c94429b71f295da4cc2703fd28452d575f7a529b9ab8c9972adf3c63d98f5c17140fc6b5c79dab1606770e51e83f0230537dc07987b1454b24fa4088635488e852e1104ea8fc27451f823cb1034543c49d164e8b81cb6570ab875482ccd2cbda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cada1ee2e7f6eb9b58cdfe87095e6895e71f22425ce9383026c7b6037590e0c3e2b4e5fbb91b3232f1b7c5e9f4912e74023100a42e6cd979b27699b55bf66c997692163ca433dacc8f58fd311529d9199ededc424ca6b091f39b19d30efe8b67658b790302047c435bb500673065023100e6cc0fd8c1642fe139c44d58f7cb6302e2fd4770a273afaf49ee424c46bd51a53f57ba3b2fcf83d11e3a33d4ac4b0cc7023074f5f0daf05b45c2f2b72aa981240fe239c224b4966112edcdb73457732b27375215efe9c6b270665e945506276c9f5c0302047c435bb5006730650230180b0ff4eab90d86b1833d0389733a83ee2a4b215ae194b16ca32c106e6d40dc7770bb61e02bb8909ca8fbc1763cabfd023100a09c5eb06dec6fe32c7d4ca1f06692c63395c73eac9fe84439342de8ba0e00207f68be699b07919454073535062c6b020302047c435bb500663064023007f42f98b291607515b9c0e206133ccffb1bd78bbdd0e656a57b58c6f5a4355ecbe236fec1b3725c889c0397bd96e4cb02300525271376f2b47ae7e0b6e0e98fe06c4e75d9100199ddccc16a6cfaa66cf463445052b9809a7bb53c1d94b0fd6573c60302047c435bb500673065023100f2c68f0cb98f8d0275ae4fbae8610117974d7c9de6cb0020939320f31547d1431cb861ea017711ae834fe0f2ff03157602303a4427d005d1fa52d0fa7021567699938bd71b74c8c3bc42a76572b443dad5199e5fba7ae56ab26f89892c8a1d723abf0302047c435bb5006730650231009555883b9299c82cd8a16a55d2e8a9735debf9ef50649d82f1206ecd1cf1dbaac7a194514f335a5dcc233bc4b62d13290230649d6ad305e787b2c2d2b80781fe8b450ba9bd75ef9c22caa22d8077ec03eb642953bcd1252fbef5f6794b0f893fc0f70302047c435bb500673065023100b5a1429dd4489f2f558b95be8f139751a3e561f237e6fa095192bd3d9f26aabc0c24cfa6d45071f52ae5d705b1b11d0602300ababe2776da87e28b9fdbb073e14d15f42da451df0bc5eae9247e94d311b3a4ea955c89b8295384c7bd42e409fcd9c90302047c435bb5006730650230751965d4a9f096fe7ff13db09204947f68839fc7987baee88cc2e44eef680d7ba27cbbeb824086a5fb6a85606c523880023100d15d10312a417f05a37bc5018483c4b854640504510bfc5de271d9c2ce99b1ff410801d757289529418781ee14118f6d0302047c435bb50067306502302116951df2d34e6684cf5632378eabb6230e95a9f5fede9b3ced600e52b8014f37b88331d92de5035aaaf5a227f26d4e023100e0af52c69c30a55f7e6b2f600ce80a471be34e0911ece171d3ff2b522ce7b22cb8593f62f1b17c5c58a3e2d0fa465d9d0302047c435bb500673065023100cf2864511889bab66108d21ea9cc575fdfa7e957f13bde2744951c023967ae31b203e4d478ad657007d53e41f81572a502300dfc7107a95752f7c6acf19f7a726cb6769629c0b3a89c469e3b6ea563247e91f18e84494bec2aee4a82f519515b2e830302047c435bb500673065023100d346c1766185383e654e1ab41c80973f468facd5c208cf8dc82c1d89e0e6b279afec3b28f729e55832b15c270e050b4902305ea0b26358db00760f741e02d0edbf66cbe4381f81509378087eba03946338371eacae9deab09e3f3b4fc22de67f32fe0302047c435bb500673065023051c4092f75dd7bb580609b25474bc4c612a7bf834b8f6bec90f3783e43fefe0010393a960aba7c6e2be5bfa6a10e823a023100db5ee7af6568a56629f726af594482a87bee9323cd77b9e986a6757aa17d9550636d454913fba7790a9450387346e00e0302047c435bb5006830660231008d5b0106307714d7d79f143248bec6c91185653089a639d8687205fec96a41b6fc62d9dcba6beeec28cc91e70e3ac3c2023100bd289811f442d2ee72e3d1b0961a1e4b0184b9900cde3dbff80fdd44bd155e6e5c98f7413c9431c3d8ca33a658ed6c180302047c435bb500673065023100c9f89b3c1e3ba41b5b7b8af8aa240c36bee37aad8731240e5ddd4516496360c1d254669b81243fd44bd50ea532cbb85302300cdc78814e6afb601b542ace0cdef9fb6a1ffa8b7ee7aa9a866a15c16fbabcd26fd151aec909ec2af6ce0580c65843460302047c435bb500683066023100d5c2098771f454c4af1f0491d2c7960830279d411338b7b5b9602fab8ad1bd47881e863a6b04e4d28adef9ffa411f28c023100cfaca26aa3e8e8f2781f9f386fc5504d42f262718ec1417c4fcad7a6bdcb99c7d35dc37100f200cb27cdf03441b4ecd20302047c435bb500663064023030b531b70a33ed174850553072f45c2aa62c4e829361993ef219989f9c8b43220f8dd366302073ac067c38f7f205dac2023049680fa16a91c0c0fdae5dfb05974825f9d3290aa147e4b323670d91a7447fde7e0e520d0acd407f59afc621eba87cf10302047c435bb50067306502301974761750980849788817c317a54bfba168fe358d8e847c43fc58f2aeb25804106752c57dc1141a808c9c117ce4227b0231008116aa7a2ee2b76f2b0a4735cc83770ef7ec88b5bf54f2b43a6a85e7992eaeca13bb58cce2fed813ed0224fc94d3b36c0302047c435bb50067306502310099c512383f60f68b4f0f0b397252db11d793395ee749db277b1b41ed3cc39c1a166d35246cfebf99ac41670f2e324f740230480d7721e65be014552c49e66dc00c282ee811c00718ee70e19a4865f4a1eabc72f9124556606fe30ce7442c6488ae4e0302047c435bb50066306402307afbbc3059b057ca536e5e656f74cf7e30f85851c286a31e8afecd699606e21a87ba6e504379ecd7fde0bc8430c9dc5b0230308b83145ec339ab9916f1027327eee06bd8592e5de8c7cfa68771d9a4accf34fd6d085de3858ba6065ffc14451faade0302047c435bb5006630640230204e512091c77f0ebf9eb13b503e375ac8b9c18ab07f08901ab50ed22b0e467d8d1e8165271ace26c8a8223e6b44bc8e02301c6546c8a201e79b89d108fcab90b4bb4036e9681f63e75bc4c97d29aef3aa49c8759e4ba94b13cdbcc823b14fc4f7ad0302047c435bb500683066023100ff846bed7c46d49ca8375af4f8ba3fce66f4c060f2800c3b485fc0cc35e3eae211a9044a8520de97121bd11c121439e5023100be5e3325d268ad00658ee77d96790e5e575d2df9e0e983228222a147f5eb980afcd774df536ff6058c5bd257d8d80cca0302047c435bb500663064023050c89e85f5455f5659bca3693717897fda6aaa98c62bc6a07f1fbeb3ae5f7f9d4a6e05fa93a548e80e72a0de82984f15023034897752a752f60221e850c94d597ebdac3e6d6848aecca4ab8b7eeb12997bd4516aabb3084d057b7b9ac27194d2d9560302047c435bb5006630640230069ada328ed3582c51108842f4997866b556ed9d8f9ca13db63a1c74e3aa074a6b0f97b674c1ed9cb812e3f7fdbf01e702301a7eed2fb886ff1562212d331a0c14d5d8bedb5a389651e20da0565abcd2157c69062a83de8e9125bd2694522ee634a70302047c435bb50066306402301d0768a2e6abfbeeaac079f3911de1f9333b2950e1a1dddb66a3ca460b460af1a5c65af089d56cabb013492dcddb69cc0230182108c31f5eacc874474a8bf8952e8348ecdf873e718ef8564e755783a9cd43d88209e674c92d4a5bf2c5e2307313550302047c435bb500673065023100f80f2cf02740a6af9949a0d3832345fae297731cafc73af139dfefe251375b264f22193f1a80367a6443052b88a6c2ff0230527a1133d86109f96310451ba5e0cbb8a209a5b20524ac6d817c0883fb3a9fe38f694a76d5d2e99af00a7c93dc29df270302047c435bb50066306402305fb4645b3992378fbe7905e6d290d9f88c9c34b83e2596b271571d5830e0acd5e9b77f1b7cee7370467862832330479502305a2d9e47610ccb595af7ee52ba86d9989caf728a55fbb1144420cbf2a94f79e638ad3042a4764da70a5bac19c758e5ad0302047c435bb50067306502305083509a34b65075ffa9060fd71848bc8984e737fa4b89cbf63a0e76419116d01020d65604f54a87ae2dc01f0523c179023100ed315cf0d240c5dcbe5e818c578db111d940823a808bd928db6c4e79e1335122c9daf22e8275852d482f1bae55e026360302047c435bb500683066023100cd5f3ecff79b249112759b11ca278b88040c244418fb69a092ce720456ed9898082b9ef2c0f3bf0219e0e4300a0ffd50023100b2ec5d37c9e87d0009c12a620ab2e4129efb7bfe213c721ef80e1063f4a185f4b34aafb8e8277eed060e10f6c3a8c7830302047c435bb500663064023007f6e4ba304ae3ebd21d3d7b0b599bfe4c91961c5ff6d5096ac4222ae26d78b3763e0d4726ebab1fb1dfad855611477202306bc03b42db3487a56250c1bb8d67acf003b114020aebd63893f38d97ad17efda048f8b1bb901de9f7b424347ea3b48410302047c435bb50068306602310099bf2fed34cf92299899781e6beb546a3b4cc64e8264414d185e7f3c87c5e31aa0d53ba0512b59bded72889944e79365023100ac2e53a5f682ee9d94a5380d34321c5cb33b9c5c62dc96881786db49dc9b2eb580f3d25a8007b8c3538758f77cb11b690302047c435bb500673065023100eb78121215f0b1866900b008f15ba4b5c1b0e526b052308744e3c65d3772b175e47348fbfa588dd796a4e97aab084d8e02306d2c9cbec4c01b5868732430b05abf2f15530bba0716fbeaf11142e52aa7e9de81de4535a236fcf63e66440d3b8b4daa0302047c435bb500683066023100c3c6822a3e759ae5a20d544488b1de4a4d41785d84a27f1769cc742f17dca8c63a6f4a85019d4ddb62f7c30e9e7951b40231008781e7647645dce834ffb4c24e58814acc1ad8c20a9920c3593866014d323c1a98195d332d0236de69a8eef3ec3412610302047c435bb500683066023100b20fde3c14b243c8c9d37cfb40992ce7c8c6e31f55df7df6ec7d6f12ec2ae10b9e0fabbd0bdebc541ba3e77a0562c8b0023100a94b06c55110ebaa37069e895c59465d4afefac677757ca1efb1ece043529bf40682d06f572fb59c4c5b5ef422129dda0302047c435bb500653063023030674d852db509dc13aa7c2208c62f8f3d0c75dd79ae839c1c29cd5e548ee38b6fb5508f772bf4c2e88d140975b0123b022f3bdcbd03535ea676147b06ccf8f9333521d48ef53de4a761e725b4b728bdf2deeced34f65da53390ca4c5a35e92ad90302047c435bb50067306502301c237c5befa1f8e54eafed5531e0c4b067bee55140147a8a908ccc50c67a70ce445818ea72502d68d57c635376517c29023100d36ea9fcd6915bdf6d18c26e79223aceb81b9a0fe6e0a58c12e89bf9e1d3d43a8e3b042b111a77f63476c3386e15d71d0302047c435bb50068306602310093e0dc6e4c61349fdfd7b903f4c18008f2eacd3f37158667cc2078c5807a406aeb94b73c45fb1e880adc0a80ab8ddd2d023100e5f99bc7b8854e37fc068c4c07b34617a1f1ec5a3c6ebbe41c9cd2c18d00665646c4146d97830f729de866bc159d5b1c0302047c435bb5006730650231009a6e48d4ea7abf00011d48bbd6fe8b83572539cadea4fd3b00875baf4cef8fdf3a68abca2252ec8a233a701d0ea6b85d02307f394cae280744a2247a1bd4ed5f03594e32800582353b5a8d9605130ae342b63052ac424d5d5d70170078045eff43bf0302047c435bb500683066023100897fe7ccd3d8a6111a4c5dd5364e16c6f2e13e31b1295f43bfac94e567e10cb1b4e16996fe3360492143369174b006e0023100d62ac445efbb7f7ccf06c897fc3f1e1e7c574140cd655f26f073103c8427fab56c0631888bf50b9bd7f35874a27942d40302047c435bb500673065023046a3809903d2a4f71db473c8f54bb164869f2c3edfa95612fe6188a803ea6f6c82739112146b8866133eb8f07961264a023100adfdc83d1af4cf014fa136b26241000ec9080de131ac87785e586db30c2edc6684ced071b0e6f672040836eeb7c4def50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305cd23c0c2e48edd660716ccf5f7f41637ac6465b21b354e07c6f1f1afaf95a121bcd46db1f20b5e49f9fd9427acfbf6502300234827dc525dcad9924bb3e68ec9970a472c2a3a3130d730af536dd11cc611385e3e3bac40e775bff7be4e5d0adf5710302047c435bb500683066023100ce081575c6c9e205b2c7420d0db2235dcc0443c33a340c12368a0ad12283dddba9404deea63e0c66d26fbe08b05582b3023100d480bc02e6d9b22c4cabcb0edc609ee79ecc76ced5472bcf55515da2aa9bda13dccc4d66f95d5cf4003b9e9b7ca0f9b90302047c435bb5006830660231008607fb7474b8b8e6095ed619165e990588ed7202f66cd07137c48590ac8573ac7fe66da6d32b9cc9a256614fa65c5664023100b6501c00b616fd0693690095ce76dcea933df6ae48225bb653bd25fecae2294812bd90c7d9fdd6d29d070118df28e8960302047c435bb500683066023100e556ae2e61f9ad412f65f5a67ac075620e9d83b306bcc211eff9cc25d6e9568392fbcc135da502edb489a009e3af1e2c0231009e562eb0580e42e692c1996c0055240cbca3afea46582d9e42a62f925b6018050e68a8fec1d795aab2b0605b0324c2750302047c435bb5006730650231008205393e29edacd6e3b462a2247e90fd7adf544016197bbac4cd52e7a016ab07df42dbb9bd0905cc15ab34613947fc8302303af9f774917ddd2bbeb085ccdfbf384a51e093bc478eb18fb7aec07ad39e180820501e9a4c859cf8c8151fff2988a95e0302047c435bb500673065023100f22e59a561f98c478f318f77615d44cc469ad5d35c645199eb00f6a1d40cf007cf7d0ba2d9b583bacf551d154c05266e023045b9d950faa0089dddaa04fa225fc8e8725d176eb4122e4378d978bb4b97adbef1e5bc77c6025037e0563e1e7703f53f0302047c435bb50066306402303a7ac24abdfdc4fbdf7efbb30fca732688e74f59ba15410d3ea57d1fc8c8cfd517503b0123c89df281fe60bf892cf788023061e8543b8953f315b4679e04752b6f7e21fddc7fbf0431ee3d376b0e2e1f0200492f71b9d3f29dd56c29ad3dcb124dd00302047c435bb500673065023031e68d9b297682005c60ecbb223f0472fbba64b979fb8ae135a6553031df4b4e09e0b57ed4202b67bccd118de380a052023100e354e2df24320ca4c9f353dc0194cca9bdd34dcd0e8daf73aa218cdee75aae51db4892ea7badeae07903795b74afd9bd0302047c435bb500673065023071ba3eee0a568e045dd822d5b04911f78139dddf3d2c85c1f297551c9781a34dc5638589c9e6efff43f04030d0554379023100bd3c36a883f512e7c3b01690ab3bff9fe512673a96668e0ef03f77861761ceb63d496d18c2904c4077784c4b67f3cd630302047c435bb500673065023100f896428eaa1bd939fc56c4cbd270a14007620e5647728a3a44f64389d3305c0b04ecb94802fb44c7c0777f28c8a36df102301042dae330136a4db5f0fa2980464371044bae484f58c7c03c6f9a7ab901f35932b66b8ae40c17eaff972ea8ca2f71930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023042195d326263fe95110a96205f334793dc188c55961556c54d24fddad98965fbbdd2c38e4c96f7be34214e4f27ea061c023038a069b22202888beb7304e5e4c4c626c826fe0d5684d7ef6a4cd9abc68c896dc6b236249d83dec72f5168f5263f1c320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009589be9b48d90726ce3cec24037478be18a19e17a96e28c15774bd89fd138b2466d51f12f99e4de8c39bb929815e4a28023023fe180893a86546964447bdb6eff93bc2f4ef02c2e8274a00abf94d82c0eb4eb1ac36130744c428ad25afb51bcc986b0302047c435bb500683066023100a941b86d6d5fd09b5e8d8c8e47fdb25688db339be0f659fe97d0613204189829bd2478d5f52e458993034d845ba778a20231008d1850aeb11890955cc26f52a2ab3791cc1b67a15c82959dca8be7aada442b5c06ec7f7e9002bddcd163975ad3481df90302047c435bb500673065023100e87ee14d6fa9626097f6d21a119b1aabe3062bea6022410960ecd16ff3c5bc7f38e325e0b6c7064f1622f7469203ed510230771cac6f3ee5daf3409593d31c7e3803ef0540cb0fe20d4bf5b697ccdea74c160be5aeb9f46ed9e6b7367abef9d5e46e0302047c435bb500683066023100c1ec9e82fa2a00e212cea452f35baf25206292a5a879b61ea2564b967de8b3cf16f0b12fbf6b791173238ca39df15a400231008e7874d02dfffa18c67e1a3d8656746587a914fdaaf2f95a9662975efa8db684b5c2276bbbf2ed900434c426416698ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c552e6dfa64cd3067fa9e2269e795ec49ff4890ab0625ff6bba998d95b118af6121458d7ad16c5103884c1221fac8cc102304c712f7d088d6c1948d7fb6fdfec98954297172449bce8f98b840f113a5257ab8771e29524b7da0ea99cfc2e07d69f5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c9bf08ee4f7f2bbe87e8257c05115e38a6cde72caa1cabec7ed3e92e49a1dd9f2fdab2dff2495e6635cc3b81a2a89e602306cee69ad9d1ee068e8b9f416449fb3c3609f5f005f92b7df0789ad85987d1ff776211e27070bce89415ff4cd2df1738b0302047c435bb500673065023100f4f89bef096faf169a56fde85f5368a24208d4197befe673bcf16058fbd5c34d4821ce12b85792509555562e7fc7bad1023003fde239d9f5adee4566e908a6f336e38af1c39769a474a9edfca1ffe5a4d369428599f86f4bfd97a3224c1e5bb0ef620302047c435bb50067306502307e38a0c95d9f5d2a7e111dca27cee48b0de153fe3a75f3b61cdf6d9217eea73ef50ead2cee6bce4b9aab325a44c29243023100b81c93f41d381cd34e182ffc94ca161e6012b0ede6f83872404cdecfa063ac1b6e5b813a6057ea583f582df72153c2980302047c435bb5006830660231008ac82b80576babc951767f3e63efe1d03cde5b115ad39380fd9c00cd56a10251ac255a24a680c87073966a7d4c407bee023100c2c1b3999739f2ad04481337a752667821a05bc96b6fc114ca37fbdecd15c75a7dc82a85f131704f1b1f730c00fdf4c90302047c435bb500673065023100fbb9473de221b6b91b5c1d7dfa22531c2df158ed5c5f121d9f4e27f97dd4aadbeb6da41e4c448801956c2c790a9d526202303be8655eaef0886e661a2e91a603ac35ca4831b34a255307e966c0ae04cac3319481d3c248f7934089e6d8ebdc05ba330302047c435bb500673065023100da62b61427b7a9975666c87fc6fd80060be82d483874f881b6d45e53b33e639d2eb303bd0a85feef07237b56a37b591c02306a32744d7096709e81a2b03f270b3b06f6c727b94ea943aa1043fe1d12661f7bf426d565e0da525e242a4e6e3b56aba00302047c435bb5006730650231009e052c1551a88e0176e8c457d9b7ab4b81c1577f7a1e7e3416cabf7371308b86ba45f8c15c934c72adb943787126a4ca023001a7dc0e8ee046377c08df132735867f50ce90c49bc603bdb28a22ee797d4fab9226b3447c22c90c7cb83b7dea496ee90302047c435bb500683066023100c409e1abeb3ea6860de7b065cdb279c03b60a01bec7f87667aacccaac8f7ba1305e059e5e5c302f84036fc5fb6c23f67023100c7817b065841edfe1a07168999db53cfd3e4a1a951a17d526e89d0842035fe3cdbc783f2f68c1c31d1ff2383c8935ab20302047c435bb500683066023100cad0e2d24f23d05aff1dec91d3cd2ec9752d225b85a8a93272af7c4467ba262afaf0eb644532de93015f894f47ab2f810231008dbd99a17f81e7072a036994c36e657a9f5f310f164af294db0685d9604c7ca40e187f0b0a144d904e90eda647c2aa3b0302047c435bb5006630640230133bfff1250ff2dd84a66641e78f8c7842aa2c25e237ec26347e18a2c2d4d55ffb307b5d73275c6de1ec66c51c2c0dfc02302fc8890306abb779d31d0276ffb1ada8afff415508a8d79954376900c575ec5d695dd0800463023d7f9f350e8e09dd440302047c435bb500683066023100ff947727e6574e34315082262477f0f7405324f08455709453e5e40225ef4de3bfc252d79a94c4f80adb3054568bd66f023100f4170bd817184340d65d921a3f1858f3137ce79da145a68e64e29b53869e790a21eea05175dadb933fa1c39b5c4a67c70302047c435bb500683066023100c269dd506b86582d89d5bed6bb29dac476fc2fe8b7fc24e187e81ab41cb011678189bbd850e95f309d88498d20c40f09023100fb5bc01a089a3c7ea816153d9ba9510960311ba8d6a2a42e5cf2cd54e8498eee999dbc3265da5c686d3e90398f2cb9dd0302047c435bb500673065023100eb1be4f4b2f4cc4424f1664d99f8d08d7306f3c9cc3aa7447e7a1aa61c936bc1e7921349cc87c2e35b630046da75dc8d023025519b0ff0231640d9f57a471358f19c32df78a2057d0345a3f5d1d998620298f0b6339f341509bc6c9f7839558af80e0302047c435bb50067306502303099638d91b137df17dd7cf8227c5d4e92e72bc4c14ac2f740491062268a270c3a5e52ae29f89ae14e3d37799e3c7fc4023100c674602e859b65afd6305efada7a77d176b79dd7e728a6da9bfd988b24b8e2825e46cbfaf18991e5f876cb9427cc86b10302047c435bb500673065023100ab838a0a5f87fb897fd383e4e9fd67d9a9ec70a4e2ca367190ee091579da79f5279adde24391796e3789a190df600bb5023042f44e4d56dbe6d7c7485d093fc53108b7d46b01e6ad63a350b2d49e398ee9062f57b1a08c73662a3df2b217f66c027b0302047c435bb500673065023030798a3eb3e62524c7d50c73b0d13cefe20317ab0312343a17069b422e58b9b5c898ed5c1030b8c31266b9ebec978202023100bde378ade6231fa0ef2d19c804c59a475b3010540e431a1d13dcfa3db711a791c8ef9732e0613c27ed0414fcc73a48780302047c435bb500673065023025b2c849c0dccdf2926b47bdb15ad506d71da4ceabe82eb16edbc4a32c30718f34d45bd67a444b7e01582cbca87d08c9023100b98e42528bf81c604e58d0b020c813225511011a42e37efa115a66a9969c9c8937024c97672968f9668c843ee047af1b0302047c435bb5006630640230763d908f6cac7d6f39fbd31e9069dcb3437b500fdae400152e0a2a7585992bb5684550262d058a9aabb91ad59d83845e0230135950fc2a10806d4adb497584d46e304595971514475fd17fc99288a31b7decccd4184706282b1b2772bba93451a4e00302047c435bb50067306502304ca2039a0b3b4838d17ea9e9ea5bd754ab7a5f5a01ac30cb6681b997abddedd66c6fd0e633c310d96e887b251097dbc6023100a7b2af6407e642a9e1836986f861fefebc0f7a5bf09fe6ed26fe579b8841120c9423f2e1173b46b8840301019717f10e0302047c435bb500673065023100abd961a8ca128abbad908295565dcaefc231b94b50955fe9a31b4af66a008f23f14d3368538f4b362623c01a5adf2ae802304530349f140f29d3d20aceb364c22e21256446a717e1fa27322407933f2fc64c9bd57874b2a30ed625462c4f91fa5ba40302047c435bb500673065023053e8d84a41721869563334ead59e60a33475171e4e93627dba59847a45abdeffdda389a809faece2047c574aaef0ae88023100a377e67c6280f3a374702181906d1b3e728cc1a82aaa4c09599a807c492e760aa38b93832d84a037c930c9dd7312bec10302047c435bb50066306402302582527551d15744a918e8ee610fd65fed3878a9143fc64dab83a414a015473137f5a786be68758e0fa474a828952ab902304195f9b244a01b0bad82a55fc0efc81bd98abce870a616acc99ded4ae31119d043f351cc7dd67b92c55776f8b21fd9650302047c435bb50067306502303c9b188e60453684ae3b537425990dad6835b559f866a904793073250c407d66d8f34d1b2b88cd2cd8b3567ddb85a847023100909341e7539f9f5e61a59dbdacd8042fdf1facf60ac9489344338f52778c19c70a812e0d2aed62095e18fef8107e1fef0302047c435bb50067306502305a788e47aad9f1062a1843f5e56939b3f25351771c63cec857f4d9036edbe150ec7602268e95f8bf259268ac346d8c660231008e548c232a39aec84a1b62ea9a2cb46d8945d1c70c3ce7c550abe881dadd262bf626d122b317af07dbeb3508ad7077060302047c435bb5006730650230043d96fe383759793e1fb754d89223db895d319f36a525c78e686caa75c8ac3b05cc0d08b20fd43791f384f1e091df4b023100a5242c63330294772523ba0547a4977fb094767e4ba73c991224616ae7b45590ec973f8e7b9cb82669ff1b3f4f006bb00302047c435bb500683066023100a9faef3ee5b2cb40df2776cfa36d7fbaeb06acc788b44972a1a4b3d0022214218afbd4cf99afd86ead769673f9be04b90231008d6730ea1b06266bfc0fd28f76fadbf591b29d52d30879a5a9d80f214a07d0eeea6333ddfb4f02688634e0bef7e58d770302047c435bb50067306502310085bbc91accdc0634be5ee2792a169fa152fefa2f4c162146ec35654052872d8bcd87272b89d2cdee4f957fb3458f19bd02303357b5c47ddb2f45ad46d8b5d5192a6e6521527744530d7e2374d721829d54f1d8d648715bbb75f7dd9a20ba7d221ba20302047c435bb500673065023100cf019e58b3f2645092b024472f32b4a8c5ceed352dcdd95dd079449b6178c592413444ca711f00b450fb37dcd4b22509023033cb14dc3ad716ed9fab7e5c9de973ab8e79fa6b35e79124e70ceb62993db08d52efd1b752e3af8fb226853d8ad04ffe0302047c435bb500683066023100bfb8e78253bafc83cefac6bd3386200e1b7749c12904958553db76e1125a24558284bb2d62103be5b0392bf42e4926bc023100f6c6b46c73bca3bb0484801a2b9ac1244a73039b26b6d4dad41e9a3a6b4a5f761a0f39123a315f7cc7e4c56740afe8ce0302047c435bb50066306402302739e09947265254fcc6427133b77436869cececa898e25da27109a94726e5ebda1f40990a2f7e4c9d9d26f458340fbb02305871ff28265b041d029d56d7ab5eec64856dd9056ac7cabf4628bd5b295187f28855baf01187936c9f7970cb435537a00302047c435bb50066306402301327aa3cb37f3fb22c58ae65d3ab91f56d7d8fc9a83c9e6d504c6b9e68cefca7d2839b9888f95b2ad2b5fce350a04a3702301fc524d9fc806dfb9b4957efae980c9cb8bdb6cc1b3e229c37b49d215a888c2702547c2744cd121f93742146cfb1eea30302047c435bb50067306502303913f343348569605c357227e0b3b23aef3911da9888ede1323ea5656a854549ca48d0738d0a896ff6e4fe931bfd7dcd02310099187a2ee6f5eb173f32d731d56b54a0f00c514273bb4a2db5fb91eb834fa0199bbd6326db7611e45139bc0ca355772f0302047c435bb500673065023036dc3b74c636d8388098e4bfc4ae08942c62cb504c49339957632e4636e8d313f4168dca7114e56a4aa94a76354c25780231008af63b1384e6c3aab1260ec95cf86b6dc79f0d881ac1cd07964f5d14a18d8eda917b807975d0d4817ebab4aeaf82ce880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100894bfbd8027b26a807b21fd2604b39070b9fafe7df29ec1f6bc218ac5681580121966d11b0f1259dfea1e8390f37dbfc02305d321661d87b739e7ac5fe73c7edc7d8e3b4b0876cf361ba5de0e5d3f645f1e2703c084af8bf3ad07a07c4dca0d410130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e86249e75ec415608425f0660084ab7a1008a2c82945b784d229828e20985dc01c84e20d2af63a8a21a417655c5db05402301c9d353d222e9895017ae93d7aa00e3c6c02fff1a0fb27b2eb238274f24a509ea55fbb77c12d5176c1872d0f56a916780302047c435bb5006730650231008ff71b1ea3dfb729eb2eb7aea495638c5765701d3b6e536e13f78b26a0e652c7f1b9f84d2a74a94df373525a70a83224023076fcae78aee43a5958e3f6b87ded3e2e89a6dd830c0f14b39154f0f01eb9c47746221eda86dd1e80e259f9b973b67fd90302047c435bb500673065023100984b9df75e6646b0ef3ee7536685923e36f4f613731803757b70ddf813b430f3e61a0829dc09adcacec25a33db1b7b530230680cdfa5c4d18c8def9874104183bfb9a98cf9ad29587206e66b36ecdb540d11a4450cebbfbb6f6288af2c1e9b6a49700302047c435bb50067306502303f9959d0e9f7be175b942b2b7cb5ca25b08ce0752c14235b6a237fbdeafc04750ce5ad487f5dc1100c8389c3a159941d023100eac77b4d9cacddfe57eb1350172098a56d23469bc1e29a0efb3c10613497136819768d511590adadfb4d3e1afc7b995f0302047c435bb500673065023100c17e664010533a54711c31dfcde1e929db3c4b4c5ba61f81e7c5f18743d9acebe56128df0de04fa85934e034ae9bedee02305ffba67171fe56ff8df2727847154ef015d1034fad232e210211070b30c67a718525de8d88272fe2bcea3d55740ae6bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230311b2699aaa0f6ff3b82b1c4bd7b15f542ec2d3eac9b8626ace72a2edd38afcf91d5a99d82d346dec33cc4c700e6ad5a023004876eceafc5ee3df5cdf580a853f9daf7294741d6c8b9f04e6045ac704d7e5babf7770c7dfe59ca8f1e7655f16d3efe0302047c435bb500683066023100dba71d064e2fd2ace380ebc585a7f51b5e4b95c3c63ef78aa5c047aa3d996925be4b81ab3ee45c9fdfeb8492f844f0d1023100b738f823c70cdbb45c943b3d1233b89b0b457661c76eeffd764816adf5d9888f183e91cafed30ba748729183ecd19ac60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae2812e745aea1915c67650cfee0abe1c27450c2d4ebc35f701f5cbcaace190bec24725382dae6f6a7f6b7415bd847de023100ca8e666293654cd92b266e8655482f0e78e98f207cd0fa4ff94b258a86705e950a20a6b99f5de39ec0305f3d178b28e80302047c435bb500673065023100f782f291d721534f8ab0e63c9ac36a0109c0862446948384131dcd54c89add8d57f051373edfe187a6c7fa0c03c068eb023071577ef7889a08635f18963285ceaaf69ee6096e90ee14fd1a48b7d15dd2d46983e0a4187be0bafffa6f119877481d8f0302047c435bb5006830660231008f5ba6c7c65f8393e5714b87c43e00e913982532286ddbfee443f49be892ad970f882fb1a3b50f220529caeeb68359e5023100d629e8ed64cdf5767b964890f484758eff3d26a0149dc052598b8142f971a4e74704d70d72a9a37af2cbc97e33863e9a0302047c435bb50067306502305de04aae5adc3bfca441543baa1b1d5988f1686767e621220bb82dab4ee0cd8e08bfafc5bca06dcba31983501c314e2f023100d3a0550efc96bd94e2d5c4c8268be62d18b9d33408bcde1a85b9eec98243aadfd6e2e62456716a95b60509e4651423150302047c435bb50068306602310094b4a46662df7f4c83781683497df81543b3c41e9da401c029ce0d19d5f3db4457b78f403b2a4fa6b37c43824f1614b1023100d3c65e74960406960287c20bbcc126ebc98ebb4e237d30c474fe36ee2683acb66649c32b7a0b7fd9ba803444d51d4d490302047c435bb50067306502310095a73296fd84507936189acd68e42c360f7ea23ac9549174e3dd5f83320a9d8ae126b27e97a47f2b9b683802f44fe440023072bf6a1290cec5f65b191226af413f4601de3504692ea035040a4247e04630f98dc45b9d41d227b181806b86a32e5f920302047c435bb500673065023048c3866e956eda62a3bbe810cef3dd593c489e4dc892681fd8c055cc36da12c0302f5416f19bd3864b11b67e21999a4c023100fa494e11944d46c434bb9c04ee703939734694d77d12bc290a7aefb948d4c74ae579e67d6ea918a62c048ab9f7242c8f0302047c435bb500683066023100fe494395d00f9f36253e377711d62e6a0ef9277f413bbc3787a403b696c7b3166b1ff8884dae79c109d48dc9bc2e6653023100d2d22d252ac28dad2909ca1bc6e696a5d1acc9f50b9a00ca3ba36c104c82ea15d2a2c33aa0392488fc4110023592501e0302047c435bb500673065023100906bbeb6925a52381818c3016e80fcf094d99590cb35d8d7cfa7e3eb1f04e18fa0d165d27a5520e4cd53be0a1dab4a0902303fa38543e5a78f03fe4a4340d2d250dbdbc7505ef704d56fbccb5cf446f6ba22b3b925c29f0b8abc99da80b2f314f7ec0302047c435bb50067306502310097797b12edb8ddb7ae543f3929ce9174e212808fcc6952157369d91dca1725d6f28c85b8b21e5d2702d3a30655862657023008e5f5ca1f5fed8c9e3a4e09866da543d665ac000fa9958575217a5f7854ee72ff3ee4dabad2801a336aaef5bf1ee8e80302047c435bb500673065023040d796fc61109e92f4b994c9b136771b2e3405127e54b264a8df6b91fc71fba42fb0700767bc86ae205a3a9c0ede3b48023100a55354eefc81df956936bfe9eb01f26d64c5e8e31ab7aebf4bdb6ec9b30cd27c101b4c13638d36b8ea2e719545861c6f0302047c435bb500663064023069ac925262f18027aa6f3694b1fa66d821f68a52f1fc5bf284d9606f979edf9c52d7fb89a4de7e5b6df28c9acc989a69023060a137ca44176b339cb9b07403e1fbb3e26cb94dc0aa1c6c3a6b1d966c1b838ac12cdb178fb4e3bbe730a56de40833830302047c435bb50066306402305b9d942f90ac1256be0325de7fe17f724e754d4c40a6e0824b3891c3544506f2982742f7dc934b510ce80f835891151f02301e7367a877257f8ec3173ef39db4849516692dc37eb6f8218f77577ae9e7761a24283869e0083713c49dad9ec1556dcf0302047c435bb500673065023100ee0255388e6bbf8ee3658f54c943dfc2b10dd87e5536a8199e42092fd23f6587637ae998dba4d9535b0de9b927464fe6023066c824578c09895f7003cdc0c706831044fd7ccb36a93cf2f021ba94c7438502ec8167a9447ce916d25867d4264a8d4e0302047c435bb50067306502304c5e8ff6e9be34fd48817207459a80e232d6c82b15e21a1842519db1e930c9ce12321db79c73fe2cd2729367151effd2023100b948337a3d7147e2c2985478c929cc7e5aa545f39c0c2fb280b9ee420726a86580384426fb3609eb197fcd59a7fe98670302047c435bb5006730650230165be8b3e9ea10a43749be850fa8d95d7323358606be72fbd9e1a8bd84ec167372aab1f3bb2cfb538df42e2d80885a43023100f45be2e971eb0ae76e07e258e0b8ebc2c7364dc3633b0b82cdbbc1c96decad984254e2f22e35478e50409b557edc10b70302047c435bb50067306502304d7e588d4c6cbe5546554951cadf2c22df11bc89265063ab413101da07eb274e50d3b858efd4fae4322ff5105b1dc215023100fbbe548d3e87e64b1a5b1b5f3df98ef6d37d390248a0cb52a710305c870cfb3edca470f98d504a53b90655e3a65760460302047c435bb500673065023100f34062849c981c6b403f2f57e4193bf6ebfea822d1229e909297a243362753faf10b73b3fa3cf5d3912945ee920535bc02303c793ab484c026fc10635697fd1c53d9c4342ac23b827d732fc3161865847594b8cc445bbfc04f468f1fc1883dc17c3a0302047c435bb50066306402307dea6a6623b032384c8aa59945a3535e803bb4331edcb481be5c62ca5b3bc052dccc56330a375a014b99d705a732f6410230270dd5b3730ca247e9cb254286607884e45845a7c734dd0ea633864a8a163bf08eae8d5cc6ee9f39e5494d2677ec0bd20302047c435bb50066306402307e250ec2aa7d2e8f368d961490f46986ac72675e50e6a0a07a60f2d62176569f04247afbdbb8ab22b6134b8d9c6307b80230551ff8eafb40a727cb9f44d35cd373c6632217b3459c8ea315a9f9689cdc2f4ed8cb9eb099a3aa6079bc398653ee06df0302047c435bb50068306602310092bf3793f1aad2c15ee55d500b696564821b16aea6f7f48626ec9d6029f3a738ecd90304df229beb9f8d41db9382a7a5023100abd0b89da243b3f3d1cf4faebaa6e8a01623d89d6e104eb176990b689b2cf1c4b00d7aed12ecbd93319087d9106c59670302047c435bb50067306502303aef76868da9674137ae8341de22a8a9bdf260f8433e3b0fb8a9001672b8949b81a1a4659e04b5b78b8198f28cb3f214023100cf45eac0c5488e3e88646f52dc0a991fea1eaddaad890c1361f53c3da4567fe1ea53bbc58c926bc14bf609a612b8559c0302047c435bb5006630640230187860ea523df3a475abd76318dc44a6e28fd55b6452bbb1ad261490af02d3fce34099341119cdda6b3d90567477b927023019c14e7c5c106918202271d37dcc5406cc3920dd11f33dc989987f0f671213563caac67a08389dccdc40d15ba55ddf390302047c435bb500683066023100b076e949d1f15e6986bcf8269af35592c07840317b62dfd62bdf1c67438223155eb40307c378519a7b10c9c43ff4a4ce023100c483e892916a10cf5b2bfed880d338d8c190a92d78c19efcc06c787dc387b60989e7d53e3a65436f3ea17da41a75732f0302047c435bb500673065023100c9a6f2bd3ef631093b66c32f2d7a9bbcf2e0c947df0a73b936b1ac0e8c81126ada60373b6f541710ec67cbfcc12b563302300e1e0c4e249fc6870f95e12d1e4249bb5cdddae0a27e09e2aa5995c9b866d9b93fcb46f80cdeee24bf7061f464966fbf0302047c435bb500663064023048d5b7198f6d6ccdb68fceb7c18e7f7d106c96135081d568b63877108ff402eb68ab0200e6ac004987c406d16991f67c02306bd6f7cc17f3996b2c9cb54c73ad90877f0f015c527cf01002089f96fa9527b305d83e0700b247fba2890d31c96d99e10302047c435bb50066306402307d40a3491a984105df27cf2c019bda7475ce71e99c84147a896a626ba4e34313b8def943e7e760a93d461aa3116758aa02306097f882e39e9d5b2366aa2b45a770675499c69df20b68c6609e137e3bb0acce6bfbcf3f0675ee0364dbe1a9cd7bdf430302047c435bb50067306502303008913aecb5635a9884112322111a86faaf7c80394d4ce73139a3d013dde4601ca85b030d7fb45034e0d17af472de7d023100d618c628d72da033bfd6adb15474f3ed16e9a1223a70b7ebb85bb4ebbb79e755d54a28479414daeb708df50dbaa8d48f0302047c435bb50066306402303abcdd724b53d1d9fe81c11bbd9df7891f2849a5932a28015e7b910783b8bd6024413226fcbf43cfe58cf1edbebbad21023042b4c37a33366a83609798a97cf758771014a9e036143d62b6a62ef557f6ea32fbbb7b9b44130aabef96abe6d4700cd80302047c435bb50068306602310085fbdf16727712f2ac19054202852f5a46cee470c14ab2d1f28b7856898ecb6232377d083acd4ee7b4c2dcdfc0acc88f023100b5714219dccf2e0e401ec7318d73f2c696f3cc5abe830cb5925c408865d90c6b43a8e1c71f2e7612af710545cdbefbb00302047c435bb50067306502302a5d624f57e385517db2acc26c47ee5fc53d0d1ca1f154033bbd55d6f603cc395a13579cf4427cdc29fcfd58df3af37b023100e07723d4abc03da44d59f26ca02dbd8dabbc3df63f5115e1fe205cfca21547b0ed5eaa25a3d0a2341da4b8506db2ffe20302047c435bb50067306502302f71e38705dc4e6b2c056da4d5b6340c31f59ac2d3eddbc1b2fe267d8c5afed69166133f299b17ae82f3eb4fef571731023100bbc65b94897e693d2e8c6cf4bd4fadfd0d329d66612f9205d5e4579f5d0964276f303c717af7e149005c4fc7cbf7235a0302047c435bb500673065023015f7363695822997579019445d0e0aaac5c6d7986f24be7862d7e59205f69ff3c46132a20c14b8a2f46185b32d1d88cb023100dfd1f0adf315deac3dc066be7315fc96eb541fe19d4576f7c54bd58b409db7276585a32b521a8af4b96ab9c7f8fcc1330302047c435bb500673065023100ff56ab83869db38ddd8476f666426eead456242cf8e7ed608fd3b0e51584462f5e4a1d29fa77911d30a74cc70bbe34a30230756e33fdda49be731b6a71e8fe804bfb5f18fe5ae9161756b61eef3cec74e167c04b25d0871d7f3ffbfaa44fbc6b93570302047c435bb500673065023100a0d1a4e40a47c4f2ae138ed80c3f9762fd7a0e07420f8b1b84f6bd258e0e2536825b2b3d20bc1d7403210790b688e388023028f5c2733ea6eeba93d82e0b2c343d02492d6dbf50385e06102a340b5015da6f51bf05d58b3240b7d515a3bf8b8c546a0302047c435bb500673065023100f4d79749320b64d00a01ae5238069f1742d513de92f69f6745d3ab75fb1cc38465c9ce74d6e21fbfce9430495537151b0230603c2b3a8509c2382b823a61708f0fda7737b0499f0be475607c53d83d9d8e0cf2f16d6199beb2f83b9582ac7b46909f0302047c435bb50066306402302a3cf44a9cb4e2f2b1917c48aa09629239feabbcc37a2070e0f73e07230e1821df3fa4cbfc768dc9d2696dd12d60e67902305589a19687c01ca781831c4d3f93f2e093070282a90a117fd14a836e691f8a7159e3f83fc8dc18b7a5ab715f13f5866e0302047c435bb50067306502306f293e0ec11cd601b410562d2ff0ce7552e849a5cba8571364afbc0a6f3e3f45045c312c18314d956ebb92f7265fa0af023100d670c854950f5d422a4e4a1728368ade56514f115a59b04b67a8ba824df7d85f1f68ec3f4fc371f9c541dbf91e7fa1280302047c435bb500663064023076b1313cc5ffaff1d610eaa6cdf96078d163396a0d434a987e39caac6261560419f4976a3072c5da86f6f1099b98013f023057178c801f65d41fd93a4e2f8cec1d994028669927bcda56290f78db4fa4b0dde5d5541d9374354138baa5d580081e310302047c435bb500683066023100f786bd746f8f75e838fa8d198178d05fbbca018d473493464855efcada885e97ba18ee64e7a9d02f54624d0756ce60080231008fbb66017cdb8ded7ba68e129e9254c7964bb1b5bfe15885b9f27279aa03467d79d0f608698081a41ef9e81e21d4c52d0302047c435bb5006730650231009e1eb644072120db7b143ff716c8cde2d3817e38205457dae8ef9b1fc34c45f794b8252bac5e72196729a28ca2cf2a6902302863a92e421a9467dd359d446bc272fcf5da45368ce845744faf5ee2c38c91007d228973e08b622618fefdb951841e400302047c435bb5006630640230628d851db196921aaec6cb4304d6c6ff93691dd327bbbeda19e0adf122976f93586bf3900b981e1412513855b229b13902307ae471f84c66e8571f2fd09d8f4d4cc647c5c121193bd16e99f130eae5af512764493ec753d5a499ef41bcf94a9969e30302047c435bb50067306502307658dcccf12c3c282b3f8cba8c33daae9ae2109f1bd5cadee71280d889aac757e93170b3d7220ff3a7e32317396a7f420231009c70867b19e5cd44920feed9017be9e3710a0784d6635df532546c64f20f3a23aaa02cd9ce44920b7aca13a55f321a6a0302047c435bb500673065023100988427b7083ad81c0f354a8253649d5c65ddea9c00670bf4839728bd622c96a405a9688d78c423fc260029696f29653f023054131880b236ab6639df796dfbf39d4a2ac88b126561e19a967cebc27d9caaa1879aa212d3440b00cf094b3ff01e807f0302047c435bb50067306502305e9481e7578cfcf06f385ea957e48d99237a33ef929a25518c45d5165603ca3d850f3813cbcc5903e4e1fb7fcda1b17d023100a1e241e0486bf7ff099e02e42d044e74af8c75f0827937941187501125a2ce35f2e6cd44fe1217e6e532c14a2b9599f10302047c435bb5006630640230487420f7d402a8fb0aa2d6cc13a3bda5790d38b4733c02d05813aaf5c3af1a6b177402aeb4efb9d3a8d75868eb7c91fd023048c0b1fe9b2d5e62da376adb8799ba7dba5556c54572bbcbe45a81c5b5fab6ad25147e23287cd455afcb705cfa948bad0302047c435bb5006730650230777eb1afd988c6bcf701355ccefb20410aa8c1e8d017652b6dd54a891c98823b18c28ccccfbefda0b1e07cfec75daaa10231008acbaa9c047ccbcf0ed0df9607f6ca70e24f8742e57c79af3476c27f6e4ae07be033c6c4f533ee98d68295392e60994c0302047c435bb50067306502301f1b647958450e5461a038da777a5edc281ae332c6f0255dfa10f4741ced99bc992226d4de6a27504cef7c23230b4957023100eb3806940d6926cfb8bb3152750ef879a8104e9b01b3476fcbe4f67cdc12bbb3ad76242b07bd5a2e3f7a4e6b60b4330f0302047c435bb5006730650230202ae3827f462b4c024a042cff9323a01b59056833d471dd53a41a6558450989cbb5aba84fdca92e40a44392edfbaee00231008e373008d9d90d5f8ff4c017011e7ba910c95cad26a547428a7a4c103b9e340edfb5b5b25925a9a0f98cbc447683a31f0302047c435bb500683066023100d636d761fcb4fc28f0cb141c33f838584eedf6071a7a514dac14bac1b9c847a72e4a78bd3322da07dc85ef4e8b0384b5023100f29d805d5accb1da1feb728a6311eb3f21eec8e32bd5b13d6ca154dc2e2266737cc7515119161da0f1688a899db3f04a0302047c435bb500673065023100baa6a5d1f3da7a5a1fb2b578836de88e61957ff3624631e08004f9bbc5c484baede6ed429782d3d48053989fc11edc19023037d7ea1388c14369e6ad953658d02b05f6b4ceaa58d559592bea58a1f3406aca9e07de7a6fb1b34ad99aa1c2ef4d78300302047c435bb50067306502306b749e5a246fc11aa1c91e6a28f1a9a661d93e1da2ea7c8f2a3d80185b772c8f617785947ab7faae489189086d044c9a023100f0bf1c6443ac8c2342e120dbd57e6d7162dd3f279b15c22a53b7925b31c902a4020db15c12429214c261ec716ebf18150302047c435bb500673065023036d8bf7793e41d8c5e6903f97473ba5962a42906d540167f49cb86803cc9c41bc560f3246aa3ea1211f784f245a0e11f023100857496b12405366d7030e9a03186f46aac621f34d7890b64491f8a79254e4fc133ae23f1e42e7849648793334dc9f7950302047c435bb500683066023100fcee14e09a197a7c08aa5502e99ebdf9e3ab5b49ad17f9284c49d24e6381e21b5e6ff05df4b4f05c3fe8c7b64f4b60b1023100991a7daecf060e08fe4c3db91678751e3b0d8b35f7949cc50625711432c3d1a1842d06b2455d27bd928c2b3db87755330302047c435bb500673065023100effefde0da8012344a20f1a4466c7da01b7eef21871030f719ddb8c6a817fdb5f14a84367aea8a9cfc51546cc45d8d1b023050f454eab37f003233505f5a826ceaa6c91fe47f55d3b56a6d4646c768eb8a0e829db243a7e85e89be5311f1d6b878bb0302047c435bb50067306502300d8a59913f793c5240eeed4c507a90b2401ac7a491c4b9f5493cad803a644adc0624156debb30c95da37369ee35ea978023100e15d7e865906548f9155ee7e2d8fcc3fa9196e54770eac8ea17be28836afbeef8381e13e815ed728b9d756dc3c19d2cd0302047c435bb500673065023100b5a260fcdd56369d882b5868c53752ff78de769d46445788821e04c0a9819eb8fde51be5c8a35e66672d1a82150b3c2d0230527eec4ab2c6b5133aa2afd15325f8c9c6ce0ef14e9001d7b1b4f63f77fcaa3f926180c348a688ad65e7fc3a147dbd160302047c435bb500673065023100af1f6e185f08904f9fc1a874e575f7ad9fb2f7b5d3bb750348e9f11706f861f394a598ec9c73406d5d7c4f2e6fd945da02305e3f2aaafd297d1cab8a3ae8142aae4f5337a4a4935bd6168146afa2f0e34e82f66ca918c5ddc39bbcaede3b6c5b68de0302047c435bb50066306402303a68c8d8fafc62a01a21137f3b5dd7ac973cd5e9bb524e90bc08f9e335ce50827cd05cc33facf8e7c2eba9d6bafd8fb80230717fbe11c8bbe0bb87497878cd91da10f51dab4715032366a92f9ba6e1695ec168ab639cde8d9e6eb431b74f110ed3030302047c435bb500673065023004a424a9d255ad2db6968873b013521bfa45d2870450ecbf74e537db8c0599a817a3699003db29e8b0d5e552a14a68e2023100c3bffe8163ec7f8da153804f6e8c8d889e3152c858c3914ad4378e041632c1d0a2fb74d6a2510fd739c203b478c5492a0302047c435bb500673065023100def001ae23254f8d28d7e29bcbaddecfcad4be15350bd6e51b9e68f06195abb71ae51a8e1231a60a8a0ff37e2193bd74023021faf499c0eff7f80555d5813f5aefb57e44a4e3dbd22feda1abf65f5029cfb14263c79023b377bde9f816ed16327dbe0302047c435bb500673065023100d3b03179d9c2ded405ef2abe85e70b04c0cadaaafb88f7c971e590af41bb826ff280ae91c54cf56ca84160f77088326d02305fe91b42015e0b863a39fdb9bea703acd59730200ed4165dad3a3d363694bdca694030e7e430479ef2782178ad8b88e40302047c435bb500683066023100feccabac4af66656db595fcec4c9436cae90008b550148761be7a43c5180236b4d360263dffbbf7d39e697514354d5e102310082411bfc143e987dac52cf8ed168f1d8ebd16f38cdd28468e2a1afa88f5d56cd7fca0f33cd8b66497cafa66af8dbc9b10302047c435bb50067306502304f776f31fa66c9d57f860a799e40bf916ab7954d2160296ccecd5144dadf0c1fedde9fa390ecc4ba08c535eb9b4619b9023100f80238073da691ac0d729b5bbb3e8854483c44131e8fced3af33c49354c83687a3fc7c506d48bb029ffc8e701ab87bab0302047c435bb500673065023017e23455ae9c6a46ae48293ccf951ea0e19d44b243ac001277561aef4961b5064d8948694239ccd3fe4140cd4cb725a8023100d7941beb9be34ec08e8d3de8ddef36a6f09c1000dee2b881742afd8c81dcb619a21c42b9a44e76be1ba3153b7eed14da0302047c435bb5006730650230773f80c4fa16996d4882805898050a7be97ada757a1c9c0ca3586d1f54ff0b9fd944c97c5880075eb9e772cd983626fb023100d824003e1881edfc7d51ee284e90d479130c675b83a66506f255ec5240be065c1f9a55d175c3d962504aedafb72397720302047c435bb5006730650231009acb070e3195eccd3a59a0735fa31463ba764331b201f1b9c37e5d3a85f1c7ee727fdc0e9290021bd6a49b37d15fc5ce023078c825c26ecba9983f2204a604c858edc3441e19ee0f078373efe07f62dd0934fc23f079be2d1d1e40644a26a0292b660302047c435bb500673065023100e15918b8cc2f887a9d8013241eb9324b68a6a3b7c007f2c3f963af0962491cf9231f2fb53d43a2c9109452d80fa1ce2902303d5513cc355395e72a0d6e6c868c16818d400521ba2f67e79c7841562d4eef407358a3655325e2a0b03338fcf8af8de80302047c435bb500673065023100dce900211670e1ead53837751676cca544596661d8dbc659eaa6b0ac53833b78a04c0472134311a2c00cfc3d6963829102306834793b6c6b3a5c0c451a1b919d2f3a7a14108dff3222f745acbb97674d5fbd783a3483853f1a119fb4312608d30e2f0302047c435bb500673065023100ab714b7516cede7e780df83e6fd7be7bf21021162a39865596d88d1dcab1221a00dd77d75d746f5658e369be3066befe02301c38c08dc702c3f302953274ca9bf8652239fb9ca394c20028ddf99a6badbe9ba904c0dba9e8449f6945941f6ce0bfd20302047c435bb50067306502302ee479d6def8d786ed4714a309af1b95a46a5831aff728171d6252be99a7ae275bf0bfed8e61fd5468be17aa81db04ec023100989a2da97b718589cdff91eb766ce072ebf7633ab286be41afcb155d519850ff26a882cc32edb9e64af4e31f64ee30660302047c435bb5006830660231008b712082075d435155179711818f3cfab4c43a232070b5ebece5ac21790310f6323c9eddcaf70bd6934fbea751394cae023100ce2ff3b50cd9bd2d9e7923ed3e080eb102adf0ef234534ee86edf3ac0fdb507709169e509d8322fda88346a4fb3ca5c40302047c435bb5006730650230243a7d45d4f387957ff58dec4a2e2792669273c3d9e0019ba347a2ed596f0e5228e49f75b9fcc1c01ada13c1b0055b91023100e4afc47dda1df12184c5bb8a561a15355aba98879d72446b823161a2b138caa95787c56e6b557e24269303fb8fbecd210302047c435bb500683066023100ad19c127db2192f4ef9f4c43e616ebff3884818921058709c016b66930dea329fb63b28cd77ee90366b5fa77171c80f6023100ce0e5d1823282a3dae92616baafd4b02b381f06a632ae7e72959edd2b233aaeb7335c7586d81eb81b095c6860e4ba8430302047c435bb500673065023100aa32ae02b9f9a7ad5a582f37784e257b6bef3bfd5c0d916de2062ad92a5dd0b89daab82c8ef2716e4e5c71adcdaf7dda023053916ecd5eefdf931ad12cd483e218c7f8a9fc32126c5dc91c342fb08831efd293a91567ef9f21693e63f5fbd5219ebe0302047c435bb5006730650230724c10df35f10af918c308052c0c9b38fdc543414fc874f12205c217083b29a53f21671bbc87ec41c5b2daf87effb25e023100812d24886400bb062567a7d5af37b9e51def221093ee89b479147b465bcfc5404c29e0958105650e11749dfb3b32a3d00302047c435bb50067306502306f8f1741c4687d16d026e21eb9b3e4b59655d109821c8e3b15c03f3dbc26b8c1053c4d798ad07f55cb95e3e899183175023100d4f14f8d61d83d21ea51d572c039ff364b2771ece06bc452992f837c684df83d0f310ec73c39febfa8f183ad50e5a7a90302047c435bb500673065023060c75a8e767f8bd1d42c719067204454d428396595a2df3cda8a2d9d9d033355f5681af077fe0b054237175c130330db023100e1d364575945bf20d00090d20d0615f15423917e106bcdfceefca842d583a3da75597bb4b38aeb77b1f13bc0c3da98040302047c435bb500683066023100981bad9206cb6e68ea5d48ca55070365894b894173108a78a35ca4d71243b912e7ecd90ee4f18a46c1f6853ee1b8fb1a023100fa2a63a20b42be6e9b9d2719eec89711ccd25d2ab9549a3fb6a56b26fc468aa48f9c0b6b241b1c31f5f4bd4adf4b11f00302047c435bb50066306402304a5addbe11c137b7f92afc6eecdc83a39cdc23bdc4053b3f72b3149f90f2340b93bf55b997bf6da044b1affdeeb407b002303c63dc28c67967002cf4d98da43b323d8266d47c86fec10db9f0f9ea2394bb8802ad84961177aa0a0e23bb5dc143c4920302047c435bb500683066023100ba7df5ea2b43e7052bc4f6d67aa55b7ce2a735847d57ed4655d32b4911c2ca6c9bc7cc65b30d2eb3ae9203eafc6439c4023100c4b6bcc43162477ecdfda4a315e87b811cc0b1fc745057ac132536f915095b53da3ea01976185931ec90f07b952100960302047c435bb500673065023100ad6a31400379d77c0cf033664cd6a69aee84698668a56b609239dba2a59f3a78411e78ab6ef532a102bd8f0312c38a0e02307b86280579bc5967f42cc8fde6f84970a4d47c69df6813f650aa4e1bcf2398fb149eda893fa1eb7d2d3aefb6a0cb62c70302047c435bb50066306402300706f789ec5f4bc50776224679851d351d63b2e8d2cd34a96d729d309b741753a01f47f4b659ac0de2ca7ba9314e3cf802306c6e497f8228e47e5eda518e849a24a99757c5a8cce88a679fb823f1d6d8ee6da507526ba743e0edbc10333f9341d1760302047c435bb5006730650230284e7d6c6de4f43adc8b055a9d4eefeaa84d124adc1b934f74971b4c49e7adfb8ad914c795d6f7871ac31c8adfecbbde023100fa2b3a27dc75fcbde1db3af3d13ea2712824621da80ea003fdfb1e0ad91bb22f0e8731758b7253360cd6b8bedfc1911e0302047c435bb5006830660231009c400636a1cfaf9cf0eecf9fe4b27541a297e506efc380acf27043eccc22a49a6f9bed95b99884dbac51b8104cf92da30231008d78c8825d5b4c3dbb4eb77bfe8b33caa1deb2b86bee72514e0d02efd44d9a2c8dcdfe2395b3fb4187d52812ccd39b640302047c435bb50067306502300daeaeee4d3df6c645a4e92f813ba99f4001390a265f7266900a3935b7991fcbaa3e5a8dd0d8c8c0947ab24b62f8764c023100e748689f2a7cfb40eea206fe4e1af6f085eda4960ea175f0e414a34dd5dfbfeb23a9395bfa5ea9d17f8363034bb0ffae0302047c435bb50068306602310095d79fee0d53b12fb797127d4cbc613498c789440323a05ce63340d2df0a66910b11e6de3e382e685f20b8fc010f5411023100e2e6995895adc891ffbbbc5bbcfaba545fc4f9cb557f2eb3ad0b942da70dd5905e555eaa69f3ca3dfaa7a21f1a29fff20302047c435bb50067306502305047e77addbae9516852595280d013032b5e13edaeede8f26dad7041f1f429dc3d2125f0875a3578f7c70fe4b2ccd4ff023100b471e15e2225c72665ca025e464e2da7eb428f8eb5d49c5e509852587fd06353693dfde1c4be2145318f24646b8d1f910302047c435bb500683066023100d977f43d9feb00a26f1fc178a2c8d58ae03eb5a32f8dffaaed5d5d46cf5b352f849353820f7efe8e3306d16f67e35646023100eeb0a9d972a50a538de68a1067ed34c6f6e975e8779473062c4c754beae58b6fd0da04ff6fffbc051711bdbe13ab54050302047c435bb500683066023100d831ea37c2098de32574697a215e37a440f31bf4ff19b6e1ae0fe3f35987c73353e87530351c9dce4e6a28d0e27e1a160231008e076b980c7f6967a88f0111c2de451c0281b77e6a66999b4492d2a85abb77bbeadff49448b15315eee8284e6a1c62960302047c435bb500673065023046946a86bd7f0a97e3caf3d15299cc44ffcf41948db002838367194afdb05b2da55a476273c32c2c3ebfa48e1562f8d10231008bb1122a745ddcd3135c688236156161407562482daf09aaa9d8a7cfce39e2e57690d5b9c756151dd50da4fe8f40c4a20302047c435bb50067306502304513745d420ac69547e568f390859411f7a1e21b00c5526ba5d91cd68c5faf6d1fd8813cec8556e2437ed220aef05a28023100ae2ef8789dc32d518475d4571407b76f5e96a9db27737afcee047dd300495cc86ee42d9dfcad3ccb151d686b71d48d4f0302047c435bb500683066023100910861e953c1a10b100bd87ade4ed5f40c005d6dd582aa956242a116239b8bd78019786d72c6174353cf158ea02278530231009e3f06a256c8a254bbb8846efe30607f2d86a7db94594831167c0f10a4407529db9d054175eee930e4bbccd621cdbbc80302047c435bb500673065023100acfec7fd69bf2bbc34033701f41f0bb2ee2c0b5111581446828f53617f8cb5ad41944087f929c1d1fe1c07731492146802300ff6a706af1aa39f6b519714a8d6149eea03e7f1adb39d4b7f0506525a141c2522cc1ca2590afc0c47484635765556b80302047c435bb500663064023020e27404b6e51cbad1d8ddf29bcba1073b0ce15d7d610a99ad1a2c66f9c387136d046c2003349b06fed28e196fe3558502301bc6c5b6c7ac5fe9410bbdeb9f3470c33301c923ad24bcc70cd0473f6b590cd4ed5e8482da3afc249e6ed77670b3fa650302047c435bb500673065023039ad98981216d736166bcbfceb4ac390616092f18adbc683f199bf6f2374637107f8f698bf446208110bed2fc5f47968023100f43b12f61ce2055cacd2f1d5103f41f52049aeb8dce135ecc5cc7375d667fea543dd620c0545d88d3ad484abc1e8dce80302047c435bb500683066023100c57080d88769a2e58d5863fd738b078771e5b49d7ac116a08b860a4d77195d8317b4b3ac477ce68089df27e9132473c20231008372bbd82c867ab01b30ca8cf00e56b17e297d063f187e12f9ccd796b59703df3320e8c742494f23aa4200e3b6d2ebbb0302047c435bb500673065023100d8b2df0d276a2447e4d13cdffe9f159b2a4b55b5ed0ef4505e8ec56f23827ee96dd4a62abbc0f6af86076dc5f88550b802305d25f60192d1779a31ee7b0608bd3fdb75c8bc64aaaf2b7255fbb512519b1b8b56abbd3c93da9a7a2c9b90f7deff064b0302047c435bb500673065023100dfabf67a4c4d873cbe4fb74480640019653ed013ff5cad7f2159dc0f276af4e79463cc064d8547645df7c55758f90e20023032b47a11785764f319c7abcf0e4e062588fc0b932983f9a41edf8cc558cee5aef61fa5e25fa6994aec709126603d47110302047c435bb5006830660231009f16983924b8629a961a3e6ac7c1a89345f6a48c3db52407a83e250bc84eb4208b400a40b4509abfd3830b5b8dba9598023100d36794b5b0501bdbffe5a8fa455b5b38aadd9b62eab6a1133fd32e280781825254b8d4bfc77ac7f13ed49cda1ebb4e680302047c435bb50067306502302cf8c51f79c8e0ffea31cf58f9c5ae540a0ac7288af7c58da84d5d29d2834ce61fc4d0d53e554b7f198eac22ff517341023100fc137e17418b199f4d63591a4c355cc57bc1499bea5ae968552a3a0147a23027c09fdd0935abe10246e058e5111a4b270302047c435bb500683066023100b55a4845fbacd2669ed7254f442e26effff4a3984d85cef0f0ce8c3d287232d45254af0afbdff50d1c2ed72d169f1445023100b6181e9ec899c83babf54f75d8eb1d1e7bbdff5543cc7319209dc0d4433ad15aceb570560e3a1fe430f9ddd5ffde98180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100830197566e5eaf481504bc3deb09e3ac355408d5ee50b32a98151b6274e506ad8d177981400f28c1d5753ac51408132a02302e8dc9cded6721ccb5a375cae9f3987260c9787d96e33274a27035a7867b0d2c9f8c84a324d81af4bf5ef9567afd97f60302047c435bb500673065023100ac028c3824ee24da721536fe36ec2dac5267ced29e1dfcd8b877f16ab2bacabc1dd060e9f5b0b8029e5245b98fb224e702304453095cf03fe322afd3385b6c71a52752719bae1281a54d405610923cd4f89f3ea86fe66cf41dce1d3bbe7b2adeba200302047c435bb50067306502300691e4517eddf07d396de115cd0ad49f29d7089d62a2e15b207858d658dd4f46e335f24f2ea04a388531aec9350eda36023100e8c0eb1867fbf506e879d38f1d55ce28a306be9f310d8745fa1b11d6abb00abed2ab2e363e0b39c9d16b5f9e3bda27620302047c435bb5006830660231009266ff31dae6a25c0ddbb0c447f08eeea5e40fbd85269b83538304adb0d1f66fc874781aa76e9366902f44ba5e07bbe2023100e6a13822adfa4d31891ab6e16c31b36922ea80bb56e91ddfb61f4eea1ab174098ffe23f0bf0c461f1d9fad8b5aa382820302047c435bb5006830660231009df1f344ede7374f3c6f59f7c7ce5e2916c749248d7b1baa8bf34ca1cc9633a7a0ff5e8f1ca98b11398b1b52bc09f92a023100a48311457c395ee82a8a2d48145b8c560bea0347d5d222e81c10ab39e9021e520c0412bafcdf62e773cbbab57a08d0d80302047c435bb500663064023063a87d1bc690ac51a8a50bbb8f189dde9bcb360c7c540f54a8f66e06223bcc6bfba8ea69b05871608df7eb9d2aaaa56d023071a4c745b251702f9f660ab435f7031f7335ac2e870a6f2c74d83bd52e773e038065872706850aaf95632aaea3d8e7870302047c435bb500673065023100b9ff5f02ed684cce18e8967eaef8d8c78edafc54d268f6b6fb5012b769b283a913a191518327fca795c63b4667a03790023077ad2348aa4bd196b0769b0d20a60f4c2fed347074b1d8ef4bc1418790252a55df4f4b97e0e72632282e3d2e1616a8890302047c435bb50067306502301a89b3dabbda9a15eeca193c38828004c7f24f6a924478cd3f5ebb42b9db1e6fa13d454c446455038e0431ef45c653e3023100946a9b617ba235348b2cd1664a35bc7a423c0fb8d0b1aa5da5790f7fbb4074a8a0265fc94ed02ebcf27db3d4a2d4f7a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f57990cba0bd8faf1c92c8b68508e6637cb0a38656aa930856c20153ca36c7667c885166516ca92bf417538495afece9023012f1e3c3a22725c4d0b49f5c88beaf8345ced898a8aea02f89119857d1a5de1225cde85427e252f8c1eb442f42e3ad680302047c435bb500683066023100cb1b4709e97e161f50e50f3acad481bc22964273ee47d2d3475232f13a3e3515c3194018cc7be861123dbbc89ad72d0e023100c86c1ab235871b4cce20256aa3ec0565a50d1900ea33d9342a553e3fb1ea81e401d061672a42140a5c02db5979f0edad0302047c435bb500683066023100a6a204d7680e08d9db604af09d85a4982aa12ffa85f4ab2c2184e9869026228c43e9298a0412230b3154b6954a98a714023100d39fc5cd7d41cba2c1058ffcd3a8456b92f34c1ef7e47faeea3a03782fa9d2f155ff02ece932bd654b609dab8a5f08e10302047c435bb50066306402302769b516e02c7b8fc81b2402f39efd00a6de25b8cab44fd728db4e7156a11b64402f39660060f7326c364dd7ee453a1202307e9880b20eb64292d2f36ef72dce1eb52077a45f9dec370e56a18e0fcb5cda815750d4781667564d0bad139f0d5432690302047c435bb50067306502301893f666943826a56209eee26190371e8bcd305c3c333c424b4447b10500058253d14d762d468dd82b950690f5f05662023100a7da2ff5f198f2dabebc938700665d146d93440eae296b7b32045e550182a5163799bc745c8fa531b4fee21266caea610302047c435bb5006730650230139ab7ce42ec53b673f2021130905fad0ba03cbd56f58b044457bc97bb70f2632444987e8009600048f3a71e6f8a851c023100af241962286c8892487bedd53eaa34a1629efb902693abeafb2412520cd2d455e1703d0d7e4334f93e5c3d70689e57b50302047c435bb5006830660231009e80a6002acda50da06288d27638e7d28166e34c48307069fbd74e1ee264cd0fa260100f4b8aaff093279bd99b38071a023100c83091e971a65cdc6d860c67271945b919c477104c167825f4be9d1381855745e737a81518b528a77ba0da70d80fab890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100875fb515bade06079c1dc21fa9f742cb6278807d61eefbd73f2571e35ee34d821768844958d71a93b2c93639f749d7280230402a4b009aa4a4e4c580a66433ca31bac310f7a6e7921734676a92fa1b9628a683f0b0cbc770a3a9249b570d2500ca6a0302047c435bb500673065023100d88f0b5cf0dd1c8780928303f89e1081cc0cbf5fd7d01cb8e12f432b56d35bf8881e866c59f0ace8f7e35cbdd914ec23023007aa51cd133dbff4aa596199978916c1f55dabef6552a8774db8cd1e599a111fa94b7a87131ecdfba1bdecaabefba1ae0302047c435bb500663064023030f9beb3e4f66a11f5ada0052b9b25d7e6d9c8213d3006b86b0dc4fffe168af21ca6278ad72daec52ef95a0231cbe1c502301d623d7b9d14607ff0967cd9565ae374029df23236b90e5d84d72c0f72bc263b78eadbd0ac668833782f5ef9203f09de0302047c435bb50066306402301159f393b9f0a97907520e10e93ebde64bdc586923b60a09134d2ddb689af7786b4c5cf4265afebdb408c0586c2132dc02304d92da9a561c571c54958210c45e57036868eb2e57455417eeba366cb44f731831d1c84cd947adc6ed1a40dc9439a9fe0302047c435bb50066306402302fe0a7f17fc1227a9d7085794c087304f2fe70198beb66ca519aca57927fc9a35b67c4bfc537c72d2ea2f2ac30686a3c023045b64c5419a366b09ee4f5dcd683ac260e22406da5eda8d3767abece13a2867705f239bbbb9b7f745a11ce2ed000f8b90302047c435bb50067306502310082bf1f696e9a6ab7562e7959163872ba0d519a89f3a7dcc483bc199c3d1abca76b3a5626c6fe69d85053c9e6a07aa44402302156e3b15357c9481c4c870bcfd9bb10ac85d814623e8f324a2a23ca886a2f7fd6b556785ff8f3f14da64a7ed5d0efd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e15c09a0947faffc18c2a39073353fc339f97750dc26f7e09e848543b818d50613e9215fff41c9c84204f33650807e6c023100a082df8288bdec804382ccff126967334a543979c6c212fbed1f6342cc1fb8126feb7b67d443275492930d59ca2fff0f0302047c435bb500683066023100e47cb585b55b5289fe568c0f0916ef30bf0a4acf8c7bc5d59a5447739016e26d4dc01eca1b497d0ff64ef2264b6a43fe023100999bbfe24d7f2b6a33f6bd91e8306bc0f5e279f6e87e9cf165844c3edca87927edc08dc4d95f8c5d49b395de9d3c2a2c0302047c435bb5006730650230474d572a5197d8657eea494500f2f8a0dffd97953dbaa09e9d0f9e4cca0585b1434d1a7b5cd29b28886dcdb85f33bac9023100812229f2c7968a7d3e685eeb2362f7414d7f5cdca4b7382676698aee217196c0f7467e342cba0e848ca2cdb3ff9454380302047c435bb500683066023100e143f19cba77ab35c0e092b5bd2dde06c39ce5a9be3b14be54d5c768aa2dbb4d1e9caa4ae4e980398addccf5b1668f13023100adfb5f115aa5a625f4cd5c4908c4cd5cd129aae1f25d5d79c7abbae3e17a40655e60a2a31319dfe42b118175d5cd216c0302047c435bb50067306502305cea02191ebc62bf2611fabaf7362dcfe23b4229b48162220635d6cc161060cd5019230fee4fb31db500097bb103b3f1023100d9541e1ab4262137ab96ebc970cece8023f7cdffac2668558c8e243f346e74971f465e99947d010bfcf814605d426ca90302047c435bb5006730650230680607a43400d96bbecee657d813a0cbc5ea91187d63a49149df1f0326df718aba5d71a3334f5861b6c8389d2d7d8670023100947cb7b85123cee2710e1bbccb8f3d3ccda256b1ca3e214cf455cf475406b3ccca31a8e126028748f91ff1f8fe50637e0302047c435bb500673065023100e577c45d703bd47bbe7c0d76598d162427a0a1c8b2325561ddf262bb352c612bdfe6d5c70d6a316e0fb39b5e828ee18902305443474c19aa407df5c747ee7ee7a93fd21c5d2b02064b7220fae2531730fe78802894f55b225931c39c120bf5512c600302047c435bb5006730650231008ef4208289b09cf23c4c0ae16afc52caddc8002de4d82d3a6b3f5462aad83c41c128061acc01176ef6a08e7bf125a35102301b6ad302eda0b8d2b0edd9fee8ccba8e53a811ade7635759b0b9c5831606781365355f5f2fc5013c96a193fcf8600a2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029dde8dccd1e7b88b3774168e02c0e09b4d85b7c5dbc6df2320e8c6a1d17c787a315ff10667bc6168aa6cd21f8649f360231008a8a31c1759c1783e7342ddfa6d81b4e8c77e21577f6e947a53faa11f89b90e37f200c0727e3070bf957394189e4e9530302047c435bb500673065023100f1fcfaccd5dce17c01ba96b54829e6576474f17a014262bf2b86017bc38b1c89cf89483a58288577a156b9ccd6b0e0e40230723ec4f502b1c90dac51c5b8d36954d6763b6b198e6eca59c1272b446ffee8565ca4d33af9274f4627ceb0d90385bf670302047c435bb500673065023075ab188d93e41bdca297be51f527367873c140c8b97d542496e292d3144634331c71c82ec043e9057168a098f065acd7023100deac22f786fb1af05c398ba65638694755c6340e416d35f379dcbf7a328122fabc322db721529047c3a16b22646cdba80302047c435bb5006630640230042013a13b4e53cd25cbb74a8c12aff9eacb59e8d60b5087307211e05a50e58dc1fb5b5b6a22c4839eb56e4550601cfd02300c727bd4c21f3ef40832018ac824cee86d15ead71839590b14a47838c7c5fc53614d3128a2f45a3219e9e465c5035b860302047c435bb500673065023037f8b24207347f52bc0f027ca08803c9f64f6c2cff6da57b63a24c5383bffaec2800ef351a6e0d58d5f8f5a99a475d380231008041ec8647d003b21c81dd43dbac4546a790f1189d994b85d47ad5b41a7761f599e74c6902eeb712ddd36f1b30d1e4bb0302047c435bb5006730650230602aa636f101405f08132e2f87401b9f33cbd3d35ee2ad45959bcdcfc9c6df6bac4983e6ea039a0c5f85e5a0f2df821b0231008e55ce5925a8d80aa17704fbacdb346b719b17abf50178c5a585d5bd3da2131f426e66ac0441f23bcd683a11c06af0200302047c435bb50067306502305f638622dba42d92ecec0ccad1d12839b646e2038ed4f808b23867ea0e5c764288e81e1e8f0dbb52c5e24f8659967659023100bff843a577ddf9cea5361c44651502d412137469c83e5f9e8a3a187b0fe837ff7fc04c363a308b690792ce0a34ab32550302047c435bb50066306402302ff9bcce74f8f547a60ef3d646075490307563612d7f733b4dbc033c8b75568b9b22dc18ee2de6ca96f82c7d7d8a66c90230636b934defa0653eff8fbf29688526fb744fbd32f1fa9c8ec12ec48943d4c3c44d98f895df5e6bcf55349adefabd23ca0302047c435bb500683066023100f0a5fac23c34d3084f6780a2bf3d8802c5aa1ccab41ee859edb327ca576a7c79d1b9ed2332db1e6af4986473986d7281023100f3c3dc5172737699378cfcf23458628dfc9ba6eb95ece671dee54d2804337283391ef42fb5445c20b741be698b3343690302047c435bb5006630640230713e3d64bdf2e5e3fa52cc85d37484c1acf61e467f1d87973a1b2ba933a2cfe2e1a34ba7ab5537f419648720f33571d5023023622cf4a71feed5110e14155a9658575d51313a2f63a829fd48f0ac389030632a87831384361b44545c7faeb1c4caf30302047c435bb500683066023100e314a8fef5130001761d1e9d85feb6dd516adf047bfcd0f4cba58a6b21bcec04e293e5b635ab44828134af5d5c47ab9502310088d777bcd4ee4de6709b59b4db09bd7e15588e2b6ff7d712a12f7351d473d7233af7507bac5316a5fe4b16d64e28c4cf0302047c435bb500673065023010b77067787986fb81fed37f72c2ec2f8ab3f28f2c49f233badf51775882daba6df3f490d1faccab1b8845fb40988307023100b1b4a23f77f4f9d04aade7436b8cbf779cbd0601b46ab697991acab3725f705f54fad7ee4cfc11e482eb25fa38c29c0c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1a02d8630ba14b7a65c4ed5e105921148840a334584a96d62a343f2996380e6103c97d4c64c0721c9e9509609312347023100e0c864e08151ca43a7a391db0fdbaed61bdb601fc0d32cdf99c51121918e78bf90bbc00804c670d3adf9968cab7383a60302047c435bb500673065023100de843c4d06228c7a3788533c87b6adc115cdc2fd19c04b6376ae450f32628eaf907518a7164ab39c430593064673a3da0230581bd8b69cdc934b2787c7ac35eaaf164d773ab85bce75125f99c08708fa9810bdd7f42476b3efdc917267571a79c9c00302047c435bb500673065023100f3ea6d4f8ed65d4ccaf5bebc7fa8f2ff1a04c3f1f4e3e4beb4fadaaddf7142074700a102ec50855662056856f1c822e5023027cf43334a0620bbc256275981a2c9aa15454f7de911ceff4255ad47610bd8ef56e82a9457141d54a662f0ceccb7f8330302047c435bb500663064023017ebafe816b722898bfd3ee0a402e6a749adfc78cab4d4f35a85add521c6ea694fbb8e4fc318cec8050d48ce253c1ccf023073dd5387349819c90269d92b87a84af7ff2a6c7e9ed67cc9d6095c6a582d208fb8e93c08747366c3af12c97d1963a6be0302047c435bb500663064023046c063f677a0a13dd08bebaa6f89e532200a262bca10c8ee3fdd249f0ebd540ff7ac204777372e798c9dcf43372a11b402305e2db57b272db75c13c703d5f5613be1ef04c7b347944388104ceb578e82aaa906d65f72ddf7ebfe2fac270b70d876ea0302047c435bb500663064023062ebfae66e0466dd2dc347fa3bbb512078374ea81d4cb11305758450a82e0769e8faec41cbecee9f4200fc2d92c8a1e20230342986890e6a49ed00ce516a65baa12cfda9fc3f9191c63a90a93ff3a169de523da83659d09da8cb57031ffb8e3a55650302047c435bb500673065023100a47af5a7800ae58cf1e969508ee49261ba80eed916b952950117ddaf3714b1280e1d66934ff1737c42186e698ac4c7c702306a9371e3d885fde7945538fbc3f20517df5c7dc1e2553eda54087420a7f739b65bd0993c1db01624ec1f5950e7c6febd0302047c435bb500683066023100af2d038a308dcdea7092e5759f67f2a821edcb86ca879b783ffcb4c579de2ac54b5e87304710ff98fe124d88f137ba1102310090a624a7c4e851138031adea1670e781976ae0754cc2881ec0ddf15620309689ad33a83acf06b47ba344c83f9b193a530302047c435bb500673065023034e0557b219fc1a54c2def3dc9fb51ae760d452c3d2cc5cc7d1a1be0196dcbce685791995a983ce81c0d1b0a0f2225bc023100ac7e9d5b35ebf3d4dee949cb8f0d39ccf1a77fa8829e8333ab8a7278362ff377310ec755e4d10b9fbcc20b92c3ab9b470302047c435bb500663064023020ba1c7450fc46d712138f5ff9624c9ff2ce4dbfc6fc5013155f5f43db140579dfd28cb568293ff6f003c144255b02f902304c007ce34c086803b1fa576cc11c1075338fa3dded3c7b6cd2e496c96aa2a35fffcfeb838ab376832e87ef991d543ee20302047c435bb500663064023070a11d75613d4ed0e70c625b48685c99f1e515e2406e4ff01b6e3d022f4e772d029bc9af4659dddfa24eeb74c57309950230683e77693a310bdc7406dc95c9d661a8c5fea7b1163352cbc691387182de6394d045ea1eb5dce2433da4e989aa6e34cf0302047c435bb500673065023100aec0b9e76d0d5670e921589d331da920c1f10732977f481b0adab426a67f58f00683e2366f72cdeb433ee3024aa4ba61023026acbbbabd0659d9b3a17d269a635b8ca6d52d6b3ff50783dd725fb8757bd31747275b71a87f0d8c1288d1ee41202f110302047c435bb500663064023008cfffec13a815d72609554c22bb5e362d0f9e9c202135949fdcb050de04f0236b6d5dcbb7308134f0cfbe30d4f6ed6b02301123aa3fb81d0c25c61bb3bd28e42a52d0d8f2f765266384b45f40dbc45ea578873bcf4d79cbc41874124bad01c36ca30302047c435bb50066306402307013790335428546a93cd34d21ec586e23bd9006a4b8fea1dec178f6fc39037b76bf4ba6f395eecde658f54d41e5ab4902303c32129bff19fe71a2bae89993a618e44f74bbf54a740faafa0860f5bbe6aa2710ef82941cf0228cacc208397724c9450302047c435bb5006730650231009b3d531461ff5a977cb7336a1c0c4e87fed1fd8437b69a135680e1f6aff3501123afae687cb6e3d548cec7f110890bb102304e97a77a2e71dcecb59344560a6d4aa7c547f0b1c71c99bcbdc11ce662a0b3de799422b08f42a9d023028e0bbf7f78f70302047c435bb500683066023100bfdd73d01bd0a666e266bb2b625434cf357a5b64cca8e4aad80f3b906aab18b25a768639907b0feed846f8c3b819b1c10231009782614d7b5e04678ad17ddeaafafdb8c6e1ad0becdc1ede4aeae4ba9e6fd65c2e5d23e49b68fadc6fc3b18449328f880302047c435bb500673065023100bb6eb071dc7218ee70e306b0f2b2e98f3e2bd21b3c94aa825f846c62ed221404e8147eba4530d52041a2f9114ba875bc02302b7c2cb1dc2f0fdad538a1b7d07852049296287845b171a2068f49ac87c56c4621ed8b5e58253ddb94946ac5b1c205410302047c435bb5006830660231009444d0b1a651c81be3e139f71b6568f9870cb2f10546b8f9c626efe27df44cbd63e74816616601f63af13bbc5af14e28023100cf73f96abfd9a6a008869300025b14544be7da20e2d9db96063c76c5f909baa879b42da81923cf5545c5458ee46c14080302047c435bb500683066023100e3fb4fb080408a6043eb1c769aa758ee3342e10405c84a979097a3fa7a9bce614914cf7c72923d4bd1280417feaff37302310099e602954a7159304662813bcbcb8ce7ce2a2256f8fc4dc0d693012db440124a8ab236d89b8b75f52bb08c9ad8a256770302047c435bb500673065023074bf80300c5a6fe9b53cde506faeb5a947ec002fc4febe167ee132e8ba3f92965d5d03a7b3b5eb3b8558e0479bd80336023100a79bb1bfb2c2bc0bac65daf43f5f6eb609f764fcdde781a71ee71709d6acfac86b9ec4c04ef2ec6d02a9425f7148b7af0302047c435bb500673065023100d50a3eedb2e407b6510ad3b0e4d7aa15ebe50234423b84d3988e24d0b7d14527a800087f37444b5b225e0f273faef22b02301cc0e0ed0b641b173110c149b1f8b5470b1ee80c3ff82b3dc16a4f45e2b236deb3a911b0d22a8ec367155ed30ece91120302047c435bb5006730650230771e23de89adf18c84a0a95fe89338ca84c979eeb92df4e9e32a1db9df27d2e1cd9110020abc0415855f8406604435ce023100ed76a58ee4a18d0ae595dafcf3af11993da17470be6347ea7d33669a5d0bb855c3998021092ad41e389ef037a542fdb00302047c435bb50067306502301e1662558cecb06ae8957ffed0d0a97e1aab9c054b4185d52dc8ece860b40ad62ef82e8822fd36f108b9b87e7b61dcda02310084dc0352e6b4dca6e479f2c90bcdb872d1ba0cc3a5d31a037da169e9ed4897ec5fac55c9c8d4187215a04ee45549d3f80302047c435bb50067306502300f02880a104fda0bbb5465678babe2d7f616c03c3d90d84bc1cb99958bb1d9ce00943f8319a9df4567fd93350b1ffeff023100c1921aeee6b99fc2980bf88ecc82e3eb26c994146e77d109345c3d4eb19348b7c20773a996747378c4758152ac0468230302047c435bb500673065023100e9fe5e1fc1c788bbdcf5dfad849055897a56501af6fb5ed3b7179e019dad15549eebb64a35948317989845d4661c1a5d0230452014af8d6b27236e6de4d52a76ea2ea776b824b549563af4df271e52041f4fe347eda72a642cd81b2a0f3dbe5aee5f0302047c435bb5006830660231009661212c77150a01d4e4b16f45f2d7a4037399a4e42e3d69736162970ee432d932577ecc6765436919f4853cff80fe470231008ddb02dc7228a3797df8810dbc110e210e66586939d09d39edbb8d8b814e9eea81c1fcac0fc3a7dea9c3034ebf28d2740302047c435bb5006730650231008608e086254d5a7eebd33e27b2ea7610d17b3daf29dfd4a5539e2e3a0cf4c2edf76d75e51c16c5b93f464e326c1c244f02300d8fa8ca4ec8e448ef2fd5f3692970702787431adee864332085df634e48d8ec4b4892d993db24e3cd265795a690ab880302047c435bb500683066023100fab6d2dadd89ebb14b041bf8b4cc0f2ff03b5e2455bd66c31aede80825e64f8b91d1382f8611feeba53ecee372d6a87a023100b8aaee20bf9e295154e28585ea56d626d2d19adb3b136bedf8eff2913209f761b62d39e7793c63c7dc565c1ece3c4a760302047c435bb5006730650230559c9cb12a1618b5a6f7c7a0d19b2ac5a1a9de5fbe9ffe89e26612aea0366c14cb25f0727ee83a5d113de7a8d2ef780e023100b4679ae2bd533d3d79f30bf179ec9fce5f1696032309f4aa4db0162b3ae0d324220dae826eed54db351eab882e7dbf560302047c435bb500663064023047d3fc91af70b6aee90b87196b0cd3f455766f41f77ad96b55bacf7e56572bb904855bc4873b27331597fb311e6cb03102305f6979c61ac0dc98ac74fc27cfb3add55e8057e002a7c2be4133d3fa203b7f916351d0e914d9156e05dec166bb3ad45a0302047c435bb5006830660231008f89f8b60b5dc8f36ec4742b2bcb9d7c6c9f4d152f5ecba2b86b755299875ed127051452c6bee03b49e1e4d52d5ffbc7023100df08f2d25d49a5f0488c08924649d1fb2e031778dd286751465d02b0202d9ca1dacd33d1ea3936fdafcf3e8d75b1ecfa0302047c435bb50067306502300ee226c7069cffa1b47d76d66df90dbd8c911dfb60fea7db08546a3ab01126761e09ab9abcf04b680649cf8c0b800583023100dc1cd78486e0538adbd291d4dfc07cd3826d33f446e8c33e1af8f5df827af0e44f58276f8b462778a72e24b3b25fc83f0302047c435bb500683066023100c7106d10611d15bcd97293e3d539c88f7c77b4433f34e6d709893787220226a1bced8d1dc06324af26e67130b614f716023100e11679e97164e7f40523949b3bb55c6864ae03116c424d3f31ac2e05326f543c9ac494cc594709a2b33de6b23ce4439d0302047c435bb500673065023012b34503304c96bfca0f39df6f2e2261a5ec9971b229bb583671d31544079e3598c0d85f0754a6bbd9b961958e768161023100f2d9c60efe534ba3d17616911ff7dd097d59eeb0e349e932bea06d4fc2c8a1ebedf6ad40e0e8cb84f155a03c67088eda0302047c435bb5006730650231009effb51779eaef2c8e6f40e362f38d59c36376d9de50f019ceebe65bc3775b40f5c7ec6da7a3de9ef6fbb5da37ac52ed023079d205c93cae0fd103b4acfdd782efbc788b84b57675073e509598cbfd712de92b71244b6a8cdd59756756ffde9d84310302047c435bb500673065023100a01bf445b802524aa836d70026fde5af8b8aa5f07d92910e83355566ee94eb1bba4b308b66b206055715067570daf4e50230135c8e3f89fd1fb431cda21b7cfd4704ff44decbc92fd9722c7fc67e855fd835ac4535d81bac65ce32f7a6790aaf43ab0302047c435bb500673065023048b2158ad0f68d0888cce06256f6645212e0cb14a77e80c8b179403390219c72e20dae7bc34475903dac943ad037e989023100d04a1679db00ec9e79e90e41ac297d9f2fd9eaf1ad4f539d77df03e9f8c639bfa7eb084b90ff87af223becdb165071d90302047c435bb50067306502302791a0df1ae18df0787ee8b59a0b59498a04533551e22680ffbfd2b080573dcacd58e751c02f052dec82c0cb517caed9023100c8310515ccc389f269b9b862aad5804289f17cc90fdc3f90291bcc80d6d75129527fdafc9f53d1c51b2869f0039c540b0302047c435bb50066306402305f9cf598a31fa3f8a606b753208edc1d1ad953767e05bd6011b2b29655ca61343467ee5019aeb9c2e09b6f39a130c918023057855c06e48fb1ca2edac962acc7434e23a89dabdfcf61da043d99ea1acfba57bd67dba522ca695dbe12b161063488530302047c435bb500663064023030b5803bf3e0e6e8f8ad310e0cf1bb8e1f8c3bf1fc3dc9a31c053bad8f38ba975f4becb9f1c02713bbd03b2ce68050de023074e6e13944fb31ca35e459f87d2d6b218bf8eeeaea74901953930c7a986d8ad2ecbb953508b88c7accf5d9546db0f6b30302047c435bb50067306502310090fc997c623806376a8bfd1e2bfc39d3e2cf788c17370beede3fbfb799f771bb96f57e760fb97cd9fa69c9790fec802c023045b6931d0757d861e58757f3fe7c40cb19ca12f4a166cf2c8cb85d92c5af5a083ec4041c0bdfce8e3fec19a3193df4640302047c435bb500673065023100b0cb05a3698cd29bcd99f43a1cd242348d33b18e785f24a4f7737fa2bc4f18770403480f74fb291f0656e5686de49ad40230529648988a6951740ef386798f257a1b2f85d9b7780d0656a8b6f0b22b12c19493512a1c8a44853667a8a931e65f82670302047c435bb500683066023100be89fae11245f082da33c519369af52d035a3d414d5c4d47f486b9fd26587de2f3370071b775e4a6b497d89435e17bd8023100cafa1ebcadaed05e22f2e5a52214567ae4ed849b1064de5504041056d62094c353766582bb5e39db4e1beeb48096e5a50302047c435bb500683066023100a837a8a86b7f12f131547ca646572338f94d5254d061d2dd9d6922eaa827703ac4412c8e8d9d22fd91110580b7d5a422023100d52d6fafa2c7ff27279ba7eff4c4395fd1bc407f2fa54253af0b9301bdb2466d622b8ac91a0edc852fb646ff4adfd3500302047c435bb500673065023077af1b64de19115bfdac8cab2245a636801e195c0069067d5c43e4b7f6eb7d201515b6906b309da81dcb3b8a23a666b5023100f6cffe8a39c41a7e365c42d5e08278fcf591e7cea8dd49e69b136c8cad36af3c50e87c2f8b0ee18e0dcffa116a990c6a0302047c435bb500683066023100b7f2f0daff4d602ef0563824d69c93384f30c6f412023c230aeb214ee3b62f103f5072564461f2e8e6127a7162ced12a023100bbda64d39ffe19f081307b7a6e328325719c15be0e897c9bcadbd025c531af37e82eec12afd044b008beb17c31ba609d0302047c435bb5006730650230314d85c0d24fbf8ef92b8df7cea30ed9040e4942f04a303f5b91d106e6f885708b64c1032d0c1f32a5f041b783c0c7c002310096a07683bfda5edd2b793d264aee3223666645d8ea8d49ce28159c8bfeef8217add74a8235dfa94e285e09e0868e6c6e0302047c435bb500663064023048c89077558fc2371a42a281d263daba468df98f8d9272bb00a0bd51276f14d75fac0cfec33c007c74446c61ebdbab9502301418980b7a1a3f5acbdb045c17b7e690282933439232845f50909d248b286d0d8447a25b0841a860ad80e17179b7b50d0302047c435bb500673065023044440336d778b13d11c6741e61daa08fa2cc18348f0873257c4c2ff7d8cc4fbada255606a44ea7a800e299c76a41474d023100f017d6c2243e3a219efbe0882479bd81926361b428360d0dc19432fca0e3306837d8caaf8fc81562b2884d63d435c7470302047c435bb500673065023072312421a7c1e506665e6a7b2c35426d7f61a9c5b81911a6345a0fb891597ed1d44806f4d4dd4a27baa97b1cc2457524023100efda9e558b6a8c2e6d7e6f034cecf0ce4f1f1b15fad7ef2b94b0e7a3dc92e804095338575708020e626ce7281d04ad210302047c435bb5006830660231009aabea32de7694eb8780897f3be182133b7e0ac290a85902fad39218b1150579d38ec06bdf70e66a77ceaab0b13d5bcb023100b6e541ec846d670502da50b6cc4099361ed6cb849701642d58da4b06be6e510e30a595d3e8a9a2602352b1351d8bfaec0302047c435bb50066306402306471703e7ecbcc7d18253a13b51b75adc6d478b520bc9607e369c8639314c13a02354e61d7123e193dadec585b6c9e50023030c0de2ab342e97a2a8bf69f5e55b9ba7069558c5da4a8af8861e2c6bda6fd5816fe8b88049550aa95a5f45bf6be42e70302047c435bb500673065023100c7ad11199fddda3a45175bfdc94b200fbdc38eddcb5904646bd6695f26c0136188e3ff6d6ea1548473b2ac92895870c402304bf96b99a831fb093c55e5dfd8c5ea3d4b4ea6100b5f9a654223f953d273fe7f748339679ee70049112721fce62a19770302047c435bb5006830660231008af43b914fb240c5b0653d4a7940a883fe7f9e0b71f3bd4ecff61e6306d5c91003c368c137d1688e45ce2e4acb7a917f023100bbcac9223465c98052503d11d0d6889a9de9deaa7e1be99fe38bf3ab769339800c453584cd507d922e5f11e9782472570302047c435bb5006830660231009c9cb805527cf80f235b7837865ef9e025eefa5945ff5bf659c925b83d061e45e541364861418aaf9b33c234820be384023100e766ba1b6ee5ce561a3327becff5fe987b0bacb6a52d45ef4e20e6258192d7ed6ddea69968c67850a66d96c438fba2400302047c435bb500673065023100a8615c2caf5433de08a747792f2b0584fe59a8514343595ceebdaf2a652803df3a10e6ad0bb28c65a0b27beb770046f0023004f2f1721e373b1510104162cce796e3d4c11def73566704979281200449c829ce560f31275501b9c684ea7e5bab36020302047c435bb5006730650231008fd44a02f8e9eb0903dfe890a1f0927ebae105f0394d2add59cab5da26f3d2b6329de9e6b1ded80104883d853d6e6db402305859d147a087c30f9e6f9e9374780a97434d507f211e4e0be401c5db170f4e65b1db8ff30b70eac4f0bc5d7b830335d40302047c435bb500683066023100abb6140f55af6c5255394d891b1fcef726b34f89a65cd3fc159af1a686951b861fdf835c1f848120ecceeb0ef74013bc0231009d19abded4f83d6cac472dcf58f44401e8a53d6d8a70f10ed91ef062c7c0faf62660a2668b6bf387bd269eb8f0bdae250302047c435bb500673065023100fcae107a0e7ba799cbdd0423681f579ec9535e6b0b6d67200f059ff1b26d13f650eabaa6ecb2b976b692154679fb23ac02303342e0ab614af9a424bfde55e5941d668c96b4da782f3b5fa7115c047fa054ec18b4caffaf8943dfc43af517588543e20302047c435bb50066306402303e2a4771bf2984477d4f53efcfe08659873e73256f22b3856923f2f7a51367527852f819556a2c3cdefe305c12b4693e02306e3847b2cf16fe47ec9f18c520c32595326f300bcfc0dd6d2f62ad78bfded873149cee7186f67666e2b49e973359759a0302047c435bb50066306402306a2e9016f079ac9a3c68c56980f142f168f1622c3a4431bd61f46f52a8c40365e93d176583c1a41826c297a5be2e6ca202307a1ec223c10ad916f3f9e37a0d748cdfd0a9fe41a10377d694f1ed73f71142d34199bc7d271cd7c05ffd9cd8790432e10302047c435bb500683066023100ff2572aa0ee473fe68640ac3174306f68885e2aca3e83b507858dec38fad95559368d70586fe162c8889ab83378a565f023100e3f433316695e3bc9d3206af018ba768317e1d61cc6c265cd487916308b2b32746df050336fa59fa0ea9ced7c1ce08e10302047c435bb500663064023026b8cae03cef7332416bad244accf1578a176d7aeba57972125e72456f3a61b9d77bf121c6bd4f402b3c4cbbd7cc8882023062b1a8d60413c4c82b10cab50ced92bbc79db5f27a3b0e78495c43f4567c591e597d2d89969458044111f15fd3bc91430302047c435bb500673065023100c404541fc731c67a0227cd3167862f339af11d2a1bc991a6f51a34b4c3601018485e1c22362a2f4822f4490a35ce489002303597a6526a65d2d20d624935d78a0c0ed9045b310477e32839f7109e9395bcac1ab17375d18740a6ff8f1623e4bcf7710302047c435bb5006730650230714626ce74289c25a39ce535982809dd82f22f2611358f0ca5f1a0d3b0ca7c80f9b5c9fd0ed030edffa60fa31c6d012a023100e8ac612d7c6181becbfd2d0f13db95ce29f5bd1a1c9c1f121a90537f2637963947884e199f960a0dfef29eaf4dc9b1840302047c435bb500673065023100f9e6685ac96f954c200c3b7125ffe7980a7da74401ba0c80bce5b093866da16b2ca3dce738f2189d6086eb0f12ae7d290230629549df246152efc323b00306d9b4effec8236039a8fef365925b120750fd506faa647398166e189bfd43f3183bcf690302047c435bb500683066023100b3a31beade0d20def953355812238884b93269ec8820ccf9ba318a9adaf97a79f0bb2fcbb887869fc8b383a5b78dce17023100f3798c0bfad6cc9493b28ac02b0e0f12995f054c28ad143aa33e0096a31dc4c67f7b85b979d09aaf20fc65ffc7eb5d6e0302047c435bb50067306502305d0727033013444bb57d612368e94c745573fe59c4fc6a30fae2f60990b80729d3f15539357cd91d455436c83eba8e790231008066cbde3a6ee84213635be4a23d930d296b6d1fdc7c666c96e816f56b0ef4ed2df52a734315296621c007566557a7880302047c435bb500673065023100c7106dfa0147c64bc0ff99b2c01b649e6ba91d9060ab1c77a47cf7ed0cf5f8c57f57da55db08c61a44c2a52c15f22bc20230076501fe1b3b577434180f7362f12961322a214f2a22d9a39f09a3895816105fd6c3da7afd0b989c6a9617e687c497380302047c435bb5006830660231008881433a95d20941850017cd7162104e7cd61f2d6eac9d24578cebd56e119ed183171acce136697e2fbc425305550ad4023100fd178c3e8cc358eedee324877a8e7cd28ea2c0fe65489ec0f01f54df2ecd232550de5b31e922164a9d2085cf0cbaf5bf0302047c435bb500683066023100f4c77bab4c82d124feba203bf869e8b0de532fdd3f4f91649d00f3ee2b5aab4bed0901e15ce4b8504619c660bad697a5023100e3f548253f9371d334d9ca7faf6e1455a2674f6cc61bc60d4906215c8d747af4632d4f04699e3d029b62ccab139177dd0302047c435bb500673065023100a9594d0eed442db45a714b251ceaca3f110cf4074a78e415949aedd0dd342e58d9ace73aa08c5ecd5c6a1a9d6c7353d202305c18687085a2c1a16438dd177d86d12c64e572dd8bc73d176153f5203835201c0bb65788245e9faed2498c7bdbaa62100302047c435bb500673065023100f8df8224822e8bd04e29573654811d1ad3a885768f2685dca97b14cd58a6fb07375e9283bdf7f55822f4963d8cb79cbd023031e5c9728fbc6fabaf04d56d85a3dfd1acefebaff1fbcafb1032ce900467ee111eecd4e74f68bec554c153e2b2c337e50302047c435bb500663064023036ec17c9fede1ce8720795cc8f7911a50fbe57fb06934aba97e75ac1ea761ff4ea2b5e065958e690886f882f5064c57402302d64ffc302b1bb36bb0b3a6d845fee6379a865654fe53270fc93e00111684f02f61855e72850faa873486d4ff088f1310302047c435bb500683066023100f8ca3a886148cafabe7047bf96b962c34a8196ab5e186d9a60e1dfdc51a4d86d13c2c94e2bc65f2c9705e1541297c89902310094139b876f449c63e0f9a6f0a4f8f86a96191c28dce43c0823157373aedea8b960d7c11b3d80e46f53f901a19d0c5c7a0302047c435bb50066306402304fa6f83b8ec3cdc60acba751f68154f54605786a01cbb08756b23184dc23df7ae5315923c9b121c793cfe56d4dfb84a002300d34708ffaae2f5abeba903dc0e612fef90f8870b04a14d7298f82f5064179b082ed5e3a4735aa7f91f8c394f0b6948a0302047c435bb500673065023100c762e601b03af6250fdd1dc7b51597f5d39e85f6f35ea7621629504ec26211006803dd6c82e082b8a55f764c6ce25d110230668fa25bd4c2bb1b73b041614df1a77b1fca98f0a2a1d78afa0af24a7ca7024cc090100905f08aed99b4f422adb4c7e70302047c435bb500663064023073cee40ec0759e164525028f6c7b6f5ddd680aef74fe237722c2c8d28a14f7b9d3def14e8f3f4ea624cab7c9ded9c3ed02303e7d7973ae5f622695d68bf8ebe5a0a090e28655b1dd8bf8e584850f0e4a6f9842d7ae7eb4c2b35c3023d41da42be6f80302047c435bb500683066023100f843c72fb0f1577297b376ac912cef0fa60d723986ea26b917e367c5492b403eca894b5e8dd82555a51a9768b2aa6f550231009e972b11d5ad29586b72b7fd41efad19dc6f3fb967247fec6c8b2d3bb033d355d325c73944218c4dc123305e644e357a0302047c435bb5006830660231008f0622f544372d362d094fd4bf1e6b008e456484ab0752fff8caf94af4c5615aafa6f037137a55e81d91af7611515b0d023100d6adebbfdbeffd17bb51630574d59fe96e3a5e02a4482494b2840f51421f213b68efbb023b904e980cf2dda1b050bc3f0302047c435bb500673065023073efd6b6874866f1c9dfa2c566f2cd0e7b95d6d773edbbbdf7fdebb2f5c62f08918833fc7d9a7ed8ad5a84c5100dbca8023100f1b2ffabe77651045f793b16292eea3bea4ec776481202ff40bd67f8de6cb912a68cc32d0dd8924891d9a186af5dc8950302047c435bb500673065023007e908bd045216ec7e4a8d37d894c325318e126c3f306983db135d991d6848a4b110b211100113ba74e3df2474fe4067023100ae85123813787b848a5f6630bab7be2a9cef8b06cc5eb898847849cdf6145de2613448cc693e8dbfba7cd8fe364b97aa0302047c435bb50067306502303e59ab458fe30661c57b53a090b968136d26e3201c557f73d79ca4076481e838e2bba0c14e5fd0cc81f2e6d42597c833023100ddef935e242b54a9293388e3ea6da4d4e7f2d3c3f8ea25557d41f6a85eef02c5961ed35b8256f4c5f859a9c66eb159540302047c435bb5006730650231009b308c33ed3f697b03b0c96655132fceba2788056d3e3d326767fb0cffa75bea8e421587265aece0d5025980c28c501d02302c95251797883fc6894070b7d4300d302e964b2266db3e63c5551af7b7ce0378d72ce1c0d7bad3d6c237297598f9488f0302047c435bb50068306602310088425cea6b90b27c92e1fc130e0ba876627c4bc8663155c7bd3fc305233468935920481fa164b2cf6f38ae31ecbfc0ee023100b852784fa7e2caa72220f00e1ce3fd976e43f2eb19ae42109bbb8fa848b3468b348ffc77375e55b0fdab416a3c77ca960302047c435bb500673065023100dc5fd8f2d8e5a8e4efe3feb2850aa709bbb761ee7a486e54eb517733e95e96407295a4114dcf95d4562f8418b5c6876a023054cf971e1721f46ae47eb30f8f6eb6973e38cb0b99875509a91d18de98f587aa36241faa7a3de2c6008fa80fc5f117a20302047c435bb5006830660231009b6bf9e815e5c0ea4a2e2ca945dcf396035c0cc5615a9c5f86c1adf02a92b6da7b6aa01212a7738676902fe21c75757b023100e7ceeee76f6225d77942fa099ca1c2db99d1591686e7db258ccbcd2b75c7e6db6051a036083e98c440f53b85c7928d560302047c435bb500673065023054f5664767b9eaed144afa120d771d28af66d01ab5b5e36d1d93bbdda26572182da0756c3ea1071d6c04b2ab86ddc0fe023100fc51dc2cdec1813d990f1df774610ba237bb09c23f55acd7257856c7bdd8abbf54b7ec1c7c0c68cb5eb44a3068c30de50302047c435bb5006630640230185a43c998320389051a3d68d8615f32b36d0c6e513cf99ac5461305ad515c9e84d66c2a46544f961ae0e0ab2112d74c02307eb838a2e1890ab0afecd8242891fe624216534213f287c64f8e90e9e0450fb9b92a52249fecfc585fab3176afe303060302047c435bb500673065023100d08e1df8172e34dc95add36b3c3d4a153364b62aa11a48c40ffca4b51b39bda9285a38bfec889acdb88ef7311c5849bb02302182c945ff28bf586e63c147a3c4e47bfd76aa0b400146ead3c1ea15500a672b1708dec12dcbf3a09858e381020dfb5c0302047c435bb500683066023100cdd028f22085c733f6b9db55e9d97c33b185e1a764112b31101d9abb37320063eba493aa45fade5e175798e3225ce4830231008fc71383bd7244d855112a72fd8079b652dca578a0a927966c7acd5f466cb34a1aee55773c119c72efd3954f45ecab580302047c435bb5006730650230494a743e43f08a32bc4787bb9dff9622cbde379d07d0ba4eb77bf9dc5dc84d450683abda2b2c50f09fe4595dc931d9e0023100f571fa495b9c0a997d985892f0063b5da8288f5411e1c3d5492810e9b0d56153fe2ef9fabdb7c6baa5ae75ad53e12c2f0302047c435bb500673065023100c0d30191d87dce4b56845c2d4b37551535473ad71e29d6bcfe6fc74aa3006b1df8e2543bceb819e4750ab504fa9071e902305c086ab6569b929e05977da45a18ecd6778fce5217a9b0734e0eb19c50880c222826e8117d8287a52f27d26ed962bf560302047c435bb500673065023020e0820883a7cbcf3ec0fdd8120a3abaabbbc4dde821102f73804d9e7fd77acef07d681e292792a446860a71200e8087023100b5e11d63fb7850187a8c5d34fc0b58d14fea03b71b4182f480f0304129f85092a8e04adf8fd474a1345eca7931018fcf0302047c435bb5006730650231008be7afa3c98677decd1f994d692aa570e14afa84d14174258eda0c4b3593c29049f8593a0d2e34e72d0c71ddbe2061970230235173563154bf2fb509ab7954a95e31bbe15480a567afe498866cb012396f5c8d925c829b3118b253290116d8a5de000302047c435bb500683066023100c4b8faf5ac8f5b228518341349f5b5428ccd9d7af28dc3a5cfffe2db8de9b42c51a8e62e8505a73bf634ea9aa8429e430231009234004394d5fe1b6e84dc041f1999a9acbfb4e73a52f663b182542e3cea7a46d655ea10df766c1f3b1f97289690d6e50302047c435bb50066306402303ee4347f289c0f7cdb52b9c88dc098d819a60bbb108adee73a05c8729ac777e9e27928b1908da8e4ef4831bcf9d8ccc1023003c2cb3438f89a363b7a5a6ef1d6ee8051e9eb0a3a2ad0f6f8f11a6c29f66569c461ef642096f509159a40a5ff78f0ce0302047c435bb500683066023100f08e3b43c8f47496e3f466984f0ac0620c446c0b4faf33dbbe40ef107c8df0dc321d98222a3b139970fe003b7a68384e02310091f6a5d7939b0370535a91435153234332abc44941074d285a469fd716a9d14b5d4a92bd28433ef06c82f591db85acba0302047c435bb500673065023100b88e1a988e67dfb91a4f623016a6f04387573963b6211ebe4dcb37168456b9936c70a00cfdad09aca3b5dcab0ba9de8a02301fa12f9b661f800872540b9d14f1a062c0093112f31c2c568f6cbad43bd5f6e98c831e4571e42a62256478769cf5fa740302047c435bb500663064023075620a4d28374adeac12e04750c28dd414b1565c1676336b508dc6a9acecc6c5c7e1e25908f66f0c684ee06cf3aa2e8202300638e98c1bb2b78efac1b8982e9f62a0c36c3799da14bc83e7c5ee83b0db3a4ed7ff063bd028a08b5b47b99c293787ad0302047c435bb500683066023100f7e582c17e755fa2300e06c9b2a256d4f94a733587f966df7a6ae948435be4b207e2969c3daa98861bd43257b219eaef023100cbf7b4ab1637bb2acb54d0a71619ead2de53bd7496ed216e36192526c3d691bc64f59ee6b0687d776f173049874fd2470302047c435bb50067306502303d8cefa4abd240cc63cb95f929b9e83cd4d0c4e32262935ab53f8caa674b9bc30ad42efec5b0f12ca891ccf285b1b9ba023100ca7083ad29c161186b8eabfb098c5dc9b255fc8253e4206a054d7cd70b2926680d2ac995d28b3e6e1c3c9f3e65e61d4a0302047c435bb500683066023100a8630b772c5ea0041f4b9c9809446c6a1baf54a0a815b8af3826b17ef02c33073e975e972d6611765300dad518c189c5023100f0001eeb77d643bed1e0519adedf448a24476b696631373973008dafe306e00943611c036ac34146461b7bf837ed20410302047c435bb5006730650230252ee0dd57846c745b0c04848de8dbefa4ab133818a5b2c4029a2fe046442125e67fa564039ad82642e5e851e9c0331f023100bd459f63a3d4d013e0257d412d2cb1ad86b758b6634827647d1fefeaf7ae89aad4d47b7415a8c8a620626a511895f7ff0302047c435bb500673065023008c05b68d89c72bcca3ba37943caece99789b03717f415868008aca9702bee0093d5a04641e6cf045ffb4045cea19df20231009aeb2d0bc22920f411719f1ce48293b217112b0dc86447f4ea7fecf14ea6c27dabda02114c3b819ace35560cf2d2fbc80302047c435bb50066306402300d28523b503e13ac8df2508de73da765169d4d4519b28dd90c7c9bbd983f2660e0c2f65569c59b0b5c3f43dbbd8e13cf02307d6cc7c6e73a8aab438a70029003d92cf267e02c97efc76511e71ae875d24fce55bce622c4a77e99bd8305b780198d990302047c435bb500683066023100bc9c1be7106dcd16d4124e544088c727b3318f5af6f96061db6795b7c4d59d546eeee6ae72721db3f81a0b408e7f5562023100f554f13beaf14785ea62b6947b65e34012471010512edce7d040e35ab3f1c0135d6abffaed733753f9cb0d7e7bf28fb00302047c435bb50066306402305875afa1f816796eb302408702e80a0698075dc71268da6ceb89cab43a956661618b770a3b4b945485e813a4fc73f71d02304fe6fd92981d447bfd1ba7787b3492cb675888621b52e90bcdf626813a7ee0208e5fff99c8f87abed01f0c6fffedcb1c0302047c435bb5006630640230245f348a5f52970f90d6d1b77d3dae79f6e6caaee5026fa796ea4cc87a055b52c0ca4525d6d4f22017b079e9acc7e377023075084dd5ca98f5fea25bab5ffef69b626fa99ad2d278bc813957cfb355968080c6d583362a7984891959216f31b2ffe50302047c435bb500673065023100986af1cb6759565b901e903fb907430476b8a045da10d784102d2f74e1f66e5c4cfaa2418f2a3ead5362f839339a8c8302301cc8a18ff35f34dcfaed8d967db52c4f04500540f41b8052e797cb9cb04c5ea978e138f78dca6f7341094d90313e19e10302047c435bb5006730650230040c79832907deb284275f3c529e9d3502754b21f67f65f9c35a7d9b9ac48a7a8382365528ffc3c1432a84212a02d9c4023100f01f97094411bfd6e15b7d96d7590b5d4e553d5015787dcf963aacef86a297b883bfe99fb20979f42adb1073c6fedd260302047c435bb50066306402301097b8281823614ac0ec28ff88e30bd3ed31a0c8e89fb2e9b5f87b1b58cabe175fe4c263d8f80629ac03779a133f4ea1023079535bea08e21957ecc5cf7480fa44ee076c980286bc5893d74fbbdec1f94d58b34df10f907776bc68f5ac6e958402710302047c435bb500663064023046b5f61899a894465b9759e9c07db1befc9214abea23c6bbe21d851381fdda8236ed2ac7486652f187938e58159962eb023078366e12967b8dd09fa7e9b0fdcf3757f4573018464b3fe2cd7c827e9d5af75ee2ae15c024db6c28776792cf2096432d0302047c435bb500673065023100b1bd94efd5511cb2f078a67537acc2a4b235202105661b0b07c6afd2dc5ec496bf3e51b28f8734f5f44ea7e2a2b2bf2202300e921052b1906263296bd5fcbb27d7ac34a9cbe87697039c024211c98bc84f54adbe724796532e0459e4b572095216240302047c435bb50067306502300b18274a4627a86c29e2e2979ae27bac1b35c0bbde4ec7a1bff29f4986f95d1f415de558dae8a54cea86277b8482d798023100d815319b63ea61d8e564d14becbf61463a96cc81f35b4e74ea5c889e321a8bab88f5864af560105eef6b2c8353fc49600302047c435bb50066306402301fe8adcdbe5b4aa19cf175496438f41bf381ec3ef3bc5d222d2123d75c2e04a5ae7e2e06358f13aca98084aaa64aac8d02307fa875d38dd3c8cd930dc06e9e446f7e741030d270439b529cc23000012d13366fae87372462defa251fd0efb8868e4f0302047c435bb500683066023100e71a8a05f2a22f793401d6ed15209ab8ff07df8621bae49ceb9ead3de875b5e251791318f75eb496277b64319026ac3d023100ce084e67a075900f11c74a4f3e5663e0cdc41aadb3d020fb2b29f30646c11a580c3f8f7f55fd99396bada451221f38930302047c435bb50068306602310095e5a3ad20d44bd5fa04d856e6968bc5630834081a1064fb3e29b5576814437b6b5ef0f7f3992e570bfb16719b44af20023100e2c719f8b8ba18fec203aa075924c46470031ea8f489674e0291d25a968b3f05a3c44cc18fe2a3dfd380e555c23ad4720302047c435bb500673065023100fc7ea2695e21b16ce29186b9e47f33bbae0cdfdeff6ed5deff4529ca8d5c2e0873e5d684ef4c19623cc0ce9b9528a66202304622162d8b8b52a4e77c78a362135fa9e559732fa562983f30db18d71c2abfe4aba0b576769ea6ff874f43de527033ed0302047c435bb50068306602310084c33504d74df0dde5840517d6570781a95aa750a0810d87c9621e8079145f338a5e552865a5fb089a3705335b74895b023100e9065a7c1937890abe851e97dbfd71e2525a3f71c285171f8e52a2591a9634e1faf183cb080172d6196504c0f57c6a540302047c435bb500683066023100fc2a17c764a3f3f39b5a185eb97ecdd7226bf0f31020c43b097defcfc4fed526fbf6e446e0fa5da8e4249d02aada1a2902310095bcd74c742ab6f1301f655b0d4dc668397b6e77de14f63ffedfc36ce162ca31ab7b9178134290bdf33cec1f75a2a5e70302047c435bb50067306502304d8eacf08b3241ca4d47fb09ca4e0f098504b615d8f98de7f96bd58557e2b60cec1ab9c7821fa693e6a9bee9f2fd62e4023100e96779af4812535dfe44defa9a93ab0d4adbf86b74314b1d60a8378a62e5cad81f4bf90eb773fb6af8ee5d2a9b2b8e6c0302047c435bb50066306402301dc90b02202a28389e410e04afce77c4e3103b12f1a9642428f14f2a8eef683e5999f02921ad9b799f18cc640b1b3be302304d9d120077f2bc850ec0a450f6ef907e756d0c71dd676da0e2248c62820bb173ec11271635e39cf1acb297a20389aba50302047c435bb50067306502305a4a71f3a99383aa07fe0464611461239380646f93ff2019ef7219c732c08da3bc875cf0b6eaf33ef98c510be1c12c3d023100f9236c814f9e3b073258a6a9bafcefa4c7cdb92108029bab2f1ea99621e83db076474ef2c6a15fbd918e7bfef30f18a90302047c435bb5006630640230205004fcecd0c75acc0f2d335b58c7f626c0ba1dbb2055420db296e35d9831394c73939ff5f1dd4416dc2d260f6d4fc502302e47c57cb982167a83cf0ecb814a53306d6e6557a75d036e0e6c447a39f8440521e0f4dbf950c8b7afb97130a5e134190302047c435bb5006830660231008080af39e654e1ea18d853a7e5f34f75516a803ae3c57f57d94cdbe282067060313ec04e609dce3316003d0327115444023100f228a7577968d7f5b5c747a7ec4560ff10ae7ef9b13d736b9a85c977201997635bdf8e75714e4e553ef9cb6a92fa31c80302047c435bb50066306402306d8b9a9ee8a5e69b145e65a4a42598dd10ffb33a783e74380d0f487e417cfea1d86d56d9a954560d0659a1357d0eb3c902302d9c006d71e298e5208d7a60643c6140f94cc9635854c6203b6796e94ac523b940a8bc7f725f587f766756521c8ec0950302047c435bb500683066023100a8b33c50a294c9853989c0bbf8ece69dc9decb73ae20d5015b218315e342bbddb95d58aa3ea2a2c9bf058c3848bc4df6023100dc4b44f425cb575a3b99497a0c2e247e2cc002e2473aff3758098e17c3d14f435427c1bd6740ea565b47ee3e3c733c8f0302047c435bb50067306502305442fb07169c7cdd9ec00a3ed043655eaeda9db0db5e6a426a1c469611f0233d82345f1c100b608db56c906ff8ee308e023100ac2f9664d018dae5c31c9428a92f939a87f3415754ef27baa23ceab0abe0db9cab45f01887ed29ce36d8f88fe975f1a80302047c435bb500673065023100ce093479b4b69c5699ed3284879ea1e9a384ba4091cb659682a0330463399bb42348009db7c2fc28590af6090e2f77fe02304e7c194eb42e471bef9baccc1e07087cde65051b55ed7758229053948e0ec055e3f77f19006072e4a4e54d6f2e9838160302047c435bb500673065023100943d7377599de205824e7fc4af3802c630d2e4c0df4e6d977d3ff7cff4554718003698823cf3df0784bd5e015d93b2ac02303b6471e7e62902fe9c505c7b0900291776c9283080535c745e763dd4c4a3aa0f336f97780798a176ee4d27f1a5b990a70302047c435bb500673065023043e4b5daa5ebe21f45426292f91572e60730f496eaa75b03cf1cbabeca28c2172b0ecab54f33e13e50d8bf368b6c6ace023100ecebf7a44e82e72921df5e8c14223ef8789f6488145d28f3bcc2c2b2f1ea4334a1c6c7299f004636059c1fee5fcc03b60302047c435bb500673065023100edbaa37699403a7c7018825ea1b96d7b54e87d9c18a3ae966684b36adcf70bc71c7482209fe44d57e2daaec244143c380230235fbcb547c0579cbbee8d80b0d72d77c9162919fa218aae62ddedea7cfdb6e2701947405c4cd9ea40a9f0ac6b4b42010302047c435bb50067306502303350e0ac90b9817ce20f80b24f02aa86bb137d11dc48e69f43c2049b502a875962cb15b0650a4afc2a72188a9792a471023100aaa1ce1ec5b9d7bd6df2916bbe486b11f6e98afad8822c65b159ac1cbcf283a052303b82515627eed29a8ee1f7c3c93e0302047c435bb500683066023100fd4bc97e29bed52f8c705126784bb92cedb0282d45a824f17f2d9531c6fe22683d4818a521532ecdb399f31f412509a9023100cc9b6fb58f9e353a5da75efe4ace0410912450bbe13db8a8e55deb08ec63ec088121025cf103b3c3b821f1b5c653674d0302047c435bb500683066023100bfd669f918f3144d1ea7f45d7d6f8c7a0a98b7f41625348ce9f84b09f24575ede5c082cc7bdffca0b112924fa1ef14e002310080f3ee38a366274243d3d2c60c30252d018011207510d08e64b67af3d18ebbad6fe15e4076bc75bf9904fd076dccce230302047c435bb500683066023100a2b7ec6f0f48abadb88b2a592a216af4b04ee43ebfa8f836b5c23d8ae979d435f4d6a349aa666f53b1b8b6ef4185e724023100d4c340323d2b9a09d604a4b4248c0e01c71dcf569883d32ccc39e376589fa0d34a2dfb929388242404ddfeeed3386e4e0302047c435bb5006730650230122ca97a87edc65b1dbb574daab410ea6fbff95cec607a1657eee20b834825f7b17f122120ce772f9414aec14719093f023100d53e5edf5b4abb31dfe9d234b1be906a27d10aebf324d24e7261222a0f57d814f9e6684d1cba60d3a274413747cda6bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f84eeeec664dd9c55144b8ab9e110b63b8eeb084fe313c17eeefb1d7cbef05977edd69eccf9e35be882a4f4e092b41d0023100d6f84607ce71fe2db5317dccaf658b7015bac0b1f6b1d927439f4a03ef753ce86183bd54938d665ed8d7a5c9e903268d0302047c435bb50068306602310084f7d9f61c34b608d90ed14efbd9cff9b6c0556a4e216ec6f375f8f7cffad3219ec2a2d446abc7225cc489f8370e13d702310097c5ca700806546995a9bc4a9d0c2285c1b8a306cddda208ae1d89b069d7489da59b8fb62b9e9409126137b40bcaef960302047c435bb50067306502302afc2f0727c5862ade1f8d9abada3703b0199db273b97ef9303776e996c58ff6755408a73d072e86fbc9711d90a88df50231008d9a11f832fbe384bbd4d1fbdb71e9298e287e589f9a70dc8c1e2bd1e5e7456cc99601cc7d774e15a74abc19c75bb5a30302047c435bb500663064023014ff361f86337b11a64821440ed1f740ec022c2066718de5a615f10727ce781cf930b9522c757649af31c508b7bfe8e70230297c77eee619e9a07623249a9decb9bb4cfb59662bd7677454b477b15e7076b73fd9ba4227068d3609ad774eedc7fef90302047c435bb500663064023002a48c383445ddf30169bcd5006a80c67c95f3028e3ff125ca8e6db9ee1fce0a722eb765ef5114a354d51253d748076d0230227abffbd523142bf169e1c5a028b45b226084dfd9ae6095710b8b68421d941ab1527ce81569e6b1dfdebb7bdc0c82cd0302047c435bb5006830660231009fdab8d22e6933d518bf23baf42f4fc0362d4dc79520092bec8afb63fe35badc3fa16c3a94b470547a8913735fea3ea9023100a3ae60a88581f0b07f8bdb0a184f03dfc2fca5a573a2e937da5cdf08c9b7dddb1a1a9cd5d9f5256fb09314a44628def50302047c435bb500673065023100804558af5f54b0da8b74886e8f79a573a92b3c81ad639b2bb6e0b1174be2ea7d19d3bd012c9b6bad021aa34ccc69561402301df88b8c66242b918183469f7460ab2bea15ad6edd72f9d38c1b802cbd609044e5e6cb5b8235204c90f7bd4af2b7e8c70302047c435bb5006730650231009c46720a0b58e5a16166d69b4d36f3cfa0c909b9620145f85fab75891b6af96a796617a809bc5dfb0eadc3a9e4d93a4c023018268ef347ab78a26352eb9c3bace8bef85c256a33ff5b0d981494c5c9a376fc668b93fa42d886f016e8b0bfc65f2bb60302047c435bb500683066023100d87452711568d6b39c040097f4684fdd24c3a5eb48c258d85d27bc6ab224ea4ad06f2007beee3653d1de8727b0a4dd69023100e138059057f914463a96baa86bc40cc44362a209b23006aa04453b098bd6803658edb2a40bc977ec2fdcc5976f023bff0302047c435bb5006630640230176a2bad50f6af9b24141a86692ee56470292edeeaa69dd662aa6bb0b433e0b476c9786d81cea7f417cc41b0f144abbd02304b3d54fa4be20a3f4459b10b7f728a51918d87a049df4227ef4fa469f0b7b764cffaa6d6d7b9a145e54bb8c582c3ec6c0302047c435bb50067306502310080eabf70a1068aec9d3f02b67299a972a469f9ad4749fcd4b5dedc2007ec9f023af9054a40fc7a87cf725e63547db9ba0230390f78121d7da6ef4e4deb2dfb08ad2785078e44fb60b824012ad95374a4c0a48215deb552718a3f547387678ba25b970302047c435bb50067306502306f3c0a150509576cfb329e16d3aeec2db132b0f453f5f761b8d49cbb1f0668a9ab168ae812bad93eed64fe34006eeda10231009859f7372f5aebba952c8a4a8b3911ad307c8a8ad942d4897f9e782f11874469d18053789010b212c96799906673bc6d0302047c435bb50068306602310087df1d8568cd552828625ac760a0ad700e192f526e1dc78e59dc78529ce9d21d01cb1854e1f1e90df84d4dfaa4063aa8023100f4fd5c3f999f461a95d38f7e71b2ba9b29dfc5f5a4adb9f76f0593bde7510dcebe95f526e305ef517202b60fdd06a43d0302047c435bb500683066023100c4d64b59d31420d2ed4bc00adcb547022f85c71b76f6dc9e3855dac076fbb968b1802dec6f1c6534b4372b73bc62184a0231008ceae47a1d74b4ae9ec4a6740f382927cab287c0acae3abfddc80c092103ae07dcef5c4930492d6571c0d802244bbbc50302047c435bb50067306502302d7c7cfce3256ffaae22beaa54e0003284f29b95f1e69d13f83048adc1dc466942057f4102ae691702d848099a6f75d8023100c3010a138cbfd8ac33bfd57376c14b95c10c457f15570ea751a045a06a5c7e9974f1e218b3258e85577514c22c4b58440302047c435bb500683066023100b5a37e0e3ce6fee497ccf7948b8e6bef8306aa9a63d9d2aa3f2a5f82694102256b49188c339931f4546d15d49aeadf5b023100f9075f0c309e067bbb4d7810681be7f37c6094acc5a6049d2d2776da9b67ebfb89fbd8fd4c989349f40166c63d94ffec0302047c435bb500673065023100ab93b0da35694076e3af2ebcdcc3855d3d76cd222fb01a65449b338dcaab51bb6480af30b9c139131d1ae4dc2978f0850230453a21600bd6693be427c8d33460f4cf8c0fafa6723b4cca285247d2074c183365bcd192a9b5b03097db1f8e120d74670302047c435bb50066306402304cc65a7a81bf3044a3d431df76694ca694a6c4fe4312e7011b47c862278d313f9deb65f66744189cae933a8701eea600023055c189ab109f6e805e8ee3c3e4dba3eeae1f1aa031ea5741092423c07b998063a171741cb8a2cb93294df62d2dfe5b200302047c435bb500673065023100a6f4e4d030ed6cb8a92fe89f492580dc338991fd43cc079dbc4ff894c7fde1d5aa747917504c60938997195469d9536b02304dd68a868c350be498f481f56345f5be3ff34ac8e2626f9327110fb5457fcddf0b106d1bcf288d4fc286a2f00f44112d0302047c435bb500673065023100c8840159e8fa286d287db10b1c9c527b4383f2e2bdb4af455731332e73f9caba927dcf36526fb154bd66ffc75dcb1fad02306bff17393bd6da0551e59df993fb3e88c6181c39e815dae5adc5005b80c89c90004b8486f3ba71385e4fcfe19912250f0302047c435bb500673065023041a962f9703f2f8f418a04094f2eccae58a141f0beef2e6d801ba2c7a198a1f5ea1f7cc21ca6c335349ddee7e918845a023100fcf77ac7edb03b09aa66778e1b6fdf20f98bd66fce1d78553ae654eb641a36891ea4fca56b0aae78c2f559596423be850302047c435bb500673065023100d8930f3f423de12869e14d5d41e3d8df26fbffacd6a65032185c0de5180ae7428c43a9078db96e6ce7cdeb3bb477c2f702304789c1e549cd55f3dc9c623391403fc8e42bb662eeef10b655e00084032e8401f514994cb3406fd78160c306662c18340302047c435bb500673065023100ef8f43196c9172d9c5dbf488091e644e8bd64d980f447bcbee0f263b55047cbbaa33db2171b2d3c17725b5071f8f860502306f03024218bb182ba94c0898472bef5011c8f02cbbbda8175cff033a8e59809126257bb93e398e58f6c3d508dfabf3b50302047c435bb500663064023053d81a697b759c94b0e7bfc358ac864990bccdb8ba1bec4f4d2c91ff923fe005f33108b071ab457462627b8fb9d58bad02306bc93a2d6165deb748e3fdfb937daf0a4b42a827c214933b1ff7fce986c24f2aed1352eda06d9dc3d7c8bedb3f04ee790302047c435bb50066306402301eeed95b33d7f15a671cae4e9f49e916ed4d57e79569fbf501b08d53b43ab44f154e4723321f22c28e3d1ac5a6b18c5602301a2ec3052b329ba9a5bf586c8f647011d178dd5e92f510ff3477a06cc603a862ebb63b801e0aee6a248978670fd5a7280302047c435bb50067306502310087425d7cb0c137dc86c93fa4af2817ea51e4349b3c4c62ba0c3f1f4a1a1a76d4acd4d801f34d7182f1f42be1b77b0cd602303f7033e51686398b8a3c4d1b41f7eb06e1ba25ee85dc66d77d2885ce6024a8428fd695a66367ed7d08d75d40db0579000302047c435bb500673065023100fd892b4b50e6b4ec7075c7e3c518ca2c0212e99b1eb00ebde71decefb6ea7074550577c5ade1e79a180937688bf2f59a023065b26d51964422fa81705ee61cbec23eb610f4713a10c65826146a6394f830268a6912f27a00b1ccebb90e69e15054eb0302047c435bb500673065023100f4a31cbe69c06b080659e95709c4d14c15397ac27fc6f900ba84b21688c9d015373278f495fb8a9002504e4cc1eadccf0230236b476c2ecd0573e0bc2fc4184b44987b4bcb1f1dc9ffa06bb9167044f6332f19a20b2d8dae4e439e97a7d7ede278de0302047c435bb500683066023100ba3b5bbfb8e761f5da737d863b4249df8ee7330de5a3fd5844fbb9548f9b5d80e8db1848c2edaf38ad3f7f6ef263e9e4023100d309176bfb0b02c41292a756438be5f8629ba287e4a441e93454f31e8d8539a6fbf99d194e9e1788e89fbae93114d0160302047c435bb50066306402303315c94e66a01879684c0bcf99139e0af71d94889afc76e886b94d1d3381342d132eea23d17832eb7983c64017dcd20c02303cd9eefb4b720dd60c4376ccb0a4fbbc2953cf35a69fec65be8ab7ed61ad98609e0f9d9a4c348006a34397b467cc5abb0302047c435bb50066306402302ef9d7b4fa51ff3b247c260e6f885a298c302708760c4be0251c85f2b7f9b200e8d1537153204efd0bfc70d2c431e25a02302657c452d2a77f0824b4dece6defab767ac7f6bb1870624a979db8a8253e18b7d8c249a0438efd4de6279fb55919f3ab0302047c435bb500683066023100e1c06f38cc97aefc019695dce875c29edcc8d76978953a72a108b206ce1f0e48e924bc51e67ca5e1c79d62369151089402310080997d461423db7017a8649dc291c809ab5f8ebd4d6152c11bd5bd7223503d79cbdbdd07674b432218999c5d0bf889bc0302047c435bb500673065023076aa03c9d19d050707965e077b518f1978c2ad6116e1e15c3ecdd87489397b43f60544b9ab19ae91e373b1e44fb1e8f2023100c9cf21356ed840e280efb2bc7b14b1ba1aa84f28438c7457a181a1edf224ac309406711b5d5db0c4294171495362466b0302047c435bb5006830660231008c839a4e1d1e17f6435f2556373620cacfd58d57b52a8ca93d72991a2cbb2131cf8fc41018c39a75675f404c7dc4c7ff0231008d0bd06bb3b6321d7fc650de8f77f8e37eac4037cab9acfbd50235fd8caff11556e4d82b8b52e7aca1ea512b81270a120302047c435bb500663064023025031a8d5b5fea4c3d7816ab4a2aab76b3c0fae21512e34e0e3b1c8d87110bf411a85be1f27837cef185b536d08458ee02304031492a5c3806aa668549bac1f438f0dc9d5197d00e0831bdc9b6459022550ed478dfe385663605030c5967638cd0760302047c435bb50066306402300fa86b50ff26dd91fd7d47caaf96e3716d4c2db28915e052b829b940e139dcc2d5b5a5ff2b2196e67fa6d03d1508eac402304e0fdd96f0fc9d3a99d809857475f33960ca56d9dbdb679c889ab256952cc306633ed25c1eeff835fce91b1f7f4dacc40302047c435bb50067306502303d9e628ebbae9337d3119e629f8a3c7842df99300d6d4a9caf55e32277e63384376b3905a852d513db747246901a4df2023100d0e00ccd189995e251de6835953f4bbd5994619aeb36a7c423434c38236102764d9b31b46e17752de68b8ba0bb3018010302047c435bb5006630640230585c840a267cfe4e2d971fb6bab503079a0068f139f34bb79328f9ac7ae7eab9e04c14479892545fafaa685e19586fcb0230258ab79c4d46af1f7b18e2a42e0c8066066d7de80a96ae0e9543ae384d06fc50723ac3c4fe3c20c8ad23d834911551150302047c435bb50067306502303e6e65119a70465d74be75e655e335d71d5c0fcff39dad609483ecb7b591c864927ad3daa36ddcc186c5fdb8756da4490231009957952170081d8ebf45775808c3d7ce3e03ad255bbbef4626820b74d63457a5dc13bb93ddb557d3d7cca5267952ae1d0302047c435bb500683066023100a1965c7817ca381c4d21569a21cb77735dc9cb6426cd9585d9096670b4f3ccc11e6ac5c53ad18ed6457a5c3b1c7171ff023100982de064f825183bf71101221a86edece39bf1bd9c5d9da16377d72a9008bdb43db5d2d198401cb4a632c775d70ff9fe0302047c435bb50067306502302d53d47324fd7544ef93fe43551e7dfa2d2f69224bd161782445f4ff8bdf1abfa87d6bfa5e3af293593f0391be5c91b7023100f9292fb82003353128081eaabc1fcf873e51b8c081df5f7fd15c1e28ec4cc7f7a1a2663a77d3a8ee07b60e5df62644040302047c435bb500673065023029c207a0fb816ac7276c66f4c8baefbcd6dd2bb1377212b05baaf1a2b01e61b5f1b8d8307995375f5b6f76325c11422902310086e25710b7c0118b1dc538e0279e36b2b84a0da707e9c9c49de7c275f49635e955e28e2c4cff3c4f21e0e79e7fc3ebe90302047c435bb50066306402307613158b968eb63b0615f9e5d31146c9da4b29cb2f7843f00bf53345a1cb0fa72dc1aec2ef077c189115b768fd5df8b202304438eb9a5c24075e6fc55d779d2937c37d9b1f15ba8978398297158db4588e7dc60951e0eab1b3e6a86ffeca5d63848e0302047c435bb500673065023100ea6ccd8e6bbac44daf357d6bbec7b055ae00bd59dd55c4981ab127dfb6ef35c7450a77f04cb5d1309a2ba68f82b813c502307e5088ea903b786accda9ec8d981d831e0995f5987a8500e3d3cf66fced3b0fe97231b3aa72238e56fe3aea5324587ad0302047c435bb500683066023100a9f1422876d7a6cf50efe2d6d56865663cbc6c417f7aaa4ab6ef3ee4ebe4c6b060665b9b2f1bfcba9b09531edc643338023100c0d4b13c72332587085241c460c14da8aa6c932f57bbb43738538f398118c00c861b2fdddf81b56bdaf75074afd829810302047c435bb500663064023076d6ad89f8130b0720f8243973f808c9cb829ef259d12e59ad826572e0750fb445a326229e4d73ff743ab2af3c09e2d00230197373da86aa847286e7848b199a485f3766428ca4764d6665422dfc9ffc912d9b003346335a26bf286dde01d4435ae90302047c435bb500673065023037d34371c3f9e3715fdc824c73ece673559d75064789fe80b960ab97e31778658c767888e03eddd2e1ff1fa16d66719e023100e925b337424baeb95238e7f2793da3535855ed5d81325c45edea913a04ec7b333a050ff663f380e9997ba707543e181e0302047c435bb500683066023100eb515ceecebc7ad11d166ace748d4b05b87e5189f147b1920e3e1fc9d87ab3cd024bba5035777148eddb233857d060cf023100d4f0e595272bf12b17feddaa660d826bb4942d6edf1e588a28df268377d3272cb978702b01a0c6daeb3dc6ad12c666240302047c435bb50066306402301a7b74972f56cc1a8191b4823bc2f75b6a63f3aae3093eb285c39d8168911651638cb7815a0556e0b791c1704f45c112023031beedddd50db2185d4294fdffac1a01004faf269a4b2e39685a82ca485b29ba693b6e3a7cfe061f79b70403cbb19c4a0302047c435bb5006830660231008854754f7bb199b0e86c439e741c514c65e16fe8179a5bdc2dfb98d705abd6e135c8851f86712709993b5988c0f6bee9023100872894f3a22af3f79d0462016f4a94d3f14967bae30a606308ba7b0ec96249197d811c37ad3ea22a478177f0bfa7d18a0302047c435bb500673065023100a3955fa81731df059037aea78ab343d82f81117ef7b367a5bcde1f225c564f72e2138a44ea01849f7b9aa30b722a78b50230131ebf46323290f5b2fc6c0cdd07f1de3f0794f08438548259072ba5048b05accd76c00a760ddd9b1b2f4218d031082a0302047c435bb50067306502302ad9aa115e5fa6469640142f923e8971a2c0548254d0e5a60974ef4fbb0fc081ce83b629001bb7df3d0f2b128e93c6c3023100826cda770b3dd3c5c523c7121ab7abbf24ba5d152271ee5e2d78a9612fa07012eb38581ca4ee8a6c5d6328b0256a831a0302047c435bb500683066023100a0000ac7bd83e74346d2d9545f381a339cddbe4c507e422ba1526892d9e8c2c88aabc3578b03c60cb70f28611866f057023100941772deedcce6c8e22907f777227e84698ee2774dfd65deaa7f4fc888790c1b58438b8a2f0cfb01f97142a56e640dc10302047c435bb500673065023100aa16cd27df4b724c58e260405c9d18aa0227aba44a0eee1c2be06ef680c9fa52b26cdfd5ae205479c6358cce477111cf02301d9d036905ff691fa62b6ccbe9c46a984a0c355d2e691de081365312eac71d643c087ad32ec17ac560a7d0ea071eadf30302047c435bb500673065023100fcb5920116f6345585b2853076eec6df3e3e9ace59455a2fcc05ee12a18e3c7ec08a655c868a31c6b3d43cfe8d21de37023017ac535b690b929a0cbc9c3376c701b24913e1d8390336de3937ade627fd0e8793a3b46f37d221ccedb74ad77c5378630302047c435bb500683066023100d77927d57cd34a00e2c686422172c285600cb535b53a9a391e28dd3ed6493942ee2cbbebf257fb2fae7ec34472a297ed023100b109f4665205e18c0481c97e1786abf44b6d6391f08a1e558302cc7a02c63b57c2d131fdd88964d71ad077227b8aa4290302047c435bb50067306502306c649bae889258cb19d3fdf536f9d0a9036eb2b6cb7121230a0696de5c3eaf021592e736beabf76c71ddfc4b714fe40f0231009d9f79d0a110c071c763febc2a5c9921f175cfc5cffac499e25c6083f99af1dcd116a28213413da471fad30ae22570fc0302047c435bb50066306402304c2b28f70c051b1dfec754f861c30e975906a96b92775d7e1eef33946c285d2dffe40af382f39a1b2cdfe55f83d87d4302302a94b8c9d974e1e80efd56f02dd8f8e8ace1a99c66ec3d604dcb31cb45dcdd44c39f8e3c848c83f7bcdb1b063b3ad0ca0302047c435bb500673065023100b55ddda03f5d60add5d20b48b0f0e9fda869bd2b9ae0d97c4f82f77406393e60bf3c0b9fdefa109aec40dd3f9d406cd602301c268db0590cddce184a02ef6607dac39b4d2a5ed215fe6110d95b184d0e78f28e3d4fb62cc426e33fa45aeba2cf46990302047c435bb5006730650230307ec7d28eada36edf80e62b0579d3feadf463f744ddc4aba2c78f1d05464479f697bfa950f75682f1454a57364f0c8a023100a7655d7f498544035d402a654c7460874d1911291394b78dd4bd21ac5d8e80886762ccff28446ba27acb514a0aeeaaed0302047c435bb500683066023100ebd6b425109220d78a7c72060594723a53995469b4e771d154d9222726aec85464ef6ae29376a5a7d3ee8fe2181efba8023100d2a079a3195bb37121cb0bd5f27a10a08ec4ba96a90489b931812b3c3380c5f1ed721cf9ec8479c1f1ee1032c48f5c430302047c435bb500683066023100aa10bc447c7a9824ca1f18cf7b0f1ff2e5e70d30ae80b10db5db1e411f399f4d347421447118d9539fbaec531ab8d279023100cbbab17e76941b4764318f5c8e3432cc7dd32c462cd54e04b251c4d8ce818ed31d0c68de7efadceba1ccd378c1bcab640302047c435bb500683066023100bdc135270c5fb0c753cff92ea9e3a8c4a6408a3da95c9b398149a609aacad42652e5dddaff14ba05071ece7f4c56fbe9023100f9da661c0d79a1bc6454845061584e18e6cceea91d97e4b74dc23b054d960455045f706cde69085e032e6c2ad26b489c0302047c435bb500673065023034b23d7b77eb4d0d795f002550bc725f1b82072265c2950ae702b2818047fd4fe42acabc0e36056d3a6715f39505bfa402310080dae38d910d925433526700021fdb18279d921d8bb14e61729eafbe8538bc6fd9abf8a75b06914a0528e56cd522ddf00302047c435bb5006730650231009b5f01592a3220e1bd182e5d50942b86bc5702e97c1e89614651e45d8fc846a470ae3329e91fcff28afe6e6381dce2c50230398f762592f689efab79e9c09a6cc1e1bd927849899adcf0b12b7ad035bbb313422d63908a7b258206bace499216d4760302047c435bb500663064023063f86579b32e18f8b3421435c4f6e198caa5023d5f0e718841b4f60aef911c5708ca18ff2d8cb7d4f860b0d074126884023051755cc7fbb315c6cbf8857050a6f174b63465e6ce765e07c07a931a8465f91d1194e54517e4d22fa3a66613f17b316d0302047c435bb5006830660231008a125e92c9750fce8457e2260c8a80e8cdb0778083d13ba1b7390817816fd35d5007790e9ec1543b7ebdfa2b4a5f4e0c023100c9ee2e8689f763958027ae13e51d8817a53360ec74caf434a67e61fc7a1ae08119a6586358d2bb620d437f742ebf85ea0302047c435bb500683066023100a384abaa243f518fcd722024ddb8301ecdbf69144ebe3cde0a8bd89256c916b677464b6ce7e26035b1317ca30a105528023100b4d13cadf2985ed662ac4b9c6fc2d26635e06c77aa9fee70004871950885a4de065c200664b58f97a5e6cc125b4fe83a0302047c435bb50067306502304028727b852f11b970ee7a9ea679d173cc1b66225c0abf1f0ac95c51083cab8c565f8ded4ef9c9590b244b6413e3761f023100ec90dab97c62114c466e6735e5329c6b7e52b4ccdb6967c5116068b04ab3b21f552d53d94c6e975fd315648a9b02240c0302047c435bb500683066023100fbdb00271eb89b959701c1d81bdad28b3b51d32f24657769581a770de019e6128fc791513d23075420fe8991ff03b3d40231008c4503c2136353692bc31ff0b38a5f10a97d9d800bae37ecf53b09e8f938c982dec887dafcb74142f360e23ef111d2be0302047c435bb500673065023100ad01c459194be054dfd079e38d0da1292b6acfc828d09c9c3726e3e6352194edf07830a4e084b858031bf66a636c07d102306828473883682e7322f938f1fe22a3cbdb054de60f7bb5fef2f16213839cc233d1de8a14fdc8db71ec3a989fccdbaed60302047c435bb500683066023100f0fcf6bf1a956d5dfa873d7b2c9c0ff56735837edce1f85f385c5de00c9d9bf0945cb039662cf100f774ffdb76c537e4023100bc320ea232137e8d86dd598bc10f7f8b241ec24ccc8cd0ab734dab86a5b72604b1394efb42ceca8c38e87958df35a2360302047c435bb50068306602310094c02c93aba1a8ab05df481f553419cce9cd5bd95fa736d4571b5ecc8852e1921335bbd7710de106a40a76d1bd533e690231009ee759be7355ef1aebaf6d057af0d3cb89599a70d0ca3004a4a7d534414f1e55afda3513ce5660ed7e7df212aa5e52210302047c435bb500683066023100ec25214d507d40de67de063cc35edca2e0b145cd0d2008e8dc7177758b9b12648fbb19824f3f7f96b24dd665e2fd242c023100b7e2ccb092f2d4f2e23fc32b96a6a120129453de402936656b00ed36fb7437f34158448466c861afcab97aa35a3df7db0302047c435bb500673065023100a57d8577fbe167d103fd2d733bd43b56511a3bc3607387f025b0495b148bb8cb77d92b5a530f9e0eb0c002eabff364b50230467d858e106663fec5f79f2710db238f8e0f0324eedbcfe269df4bc3f4c80b3dc9b453b1f2fd789b9e9ab9483a7765770302047c435bb500673065023044f4ef9174f507b394392196cf0d4eb7106b79a07138fe7669a9d8074de38507c6fee374f0607eea453a5ba74c262ed3023100ba5ddff74d91c8b995c9050ed75039824d028945f4f755b357006835989db6152a5c39e846bdec182f41e74a633ed0ee0302047c435bb500673065023100a5bb1dc1805aaf2df70b5498ce2ec90c065ef229ba8c93dfed0d16cadc512d4b59ddc4e131a5515ed05ebd23eb92410a023056ac1d3c6cefb479ab5bdb549227cfea5151bdfd9e11fce754683fb9162b73817867f2c0948b25a9ddfad028d040a5700302047c435bb500683066023100e0fdf685a0a87873b71bcdd9b5ef4dc090d322d81864437bdf6f6ac0722b242f5a8d04ad60fd313be23cda8e9e209fa8023100f4f498ac473b3f8652414b84dfb33340a0aec5c4936986e4f7b0c728504f21ec01f9ced0ac3103d12c729f0e322abe110302047c435bb500683066023100cb8b01e9cf0f489e904ef7417e34e68fce0d73991e77904fa9a0af5fd0e5eee83c2d69aa6f411412d43814c7eb6d21cc023100b2515444ee7276aa348f394db4668ead7d8d72e0504cee92a3aa2945ffbf8647fd1cfd028590c2057c54284a4bf044520302047c435bb500663064023042770600d6f91e4f92cfb519630b372550535989e7ba76c56905725481a899b1d324bde0caac4496c2debec530c0ccbb023048b5d6329672e8319f54d6fe7ac40f73339fdbf624e7f2a6598177c46338a86fea5ad3bfbc71852c2531fabdce23acba0302047c435bb500673065023100c2208b00f0d73247d3d04af72c006a0e6757798c89de6de706782ab63894a07abcfb2fc9d711c9869d303f630867e3e602304922ab47c64d839a0266b4f881e438d1584f1ff26da00a7ac56cbb3fa6788e4c7b5368193e75e877d83dbe2e4b2304860302047c435bb500663064023036c53e6bfc9f73d004227c8ed3b4a1bcf26d5c84855d2fd564d3a7a34d4849e6edf6bd53681a0c7e6f605449893ec3a202307892a29509fe783ed0a07f8417be21f32fb9ff1d95756f7d5153b8b551ff014cd718174fed7551aecb46b2c519a2b7a50302047c435bb500673065023100e2985def5c2f81e3ac80170397156ce7dbede40a6d85d216669252e84219f0fd995a6b155a6b3929076a79023a4bb5aa0230426283445cc4a4a0a70589f5405c5d78551481ef46a858c3ead5f5d6599499a6b2e3a11d5f0db86ff06d5f31148582f40302047c435bb50068306602310091ca7d102c8d440e18b19dff8830eff5e07c457b7d006215f804ba087ea080648f18eac7c8b6965dd4c5584de5f1a234023100acaca4f3ef6f398dc60e961d8f6a2c40393bb7758e5fc986bf218a9562c833d757b41bca74fc7c048bf14eea9df6a5f50302047c435bb500683066023100da9ad431add2cbc90844e4a90ed3b6876b51dedc9016cf7ce14c268131076f95951e7cb8394300bff6bd389d7156ea2f023100a1442fcf7eb5bf7be96d627da5eadd69f6b8b2a882e8454ecb85d3a393632b13d790dd4793e2fe4a20882d92d72dfa490302047c435bb500673065023020b7d54a78257630d45c47dcde5442cd5b868e78691a91464cc1d5fd5e1ce7fae243868a8ad5d737de7a030d134aeec4023100d143678494eb918f8b816aeed1a1d01ad5b8c48c5ce1c8068f726f444ac2c586c09c79d8755b58d4193efff0e6980db40302047c435bb50067306502300869fa654cfdd617a16a86a7faa0ef3ce8f07123ebd8312fd6d7179e9aec349cf4fc6124e63141fa95675aa61f362d48023100cdd4b99c437775df779fe9fdcc4a90859e482d8999ea44fe982d806327c37a71b03cb22c67ede514789b9f169b51279d0302047c435bb50067306502305297d7f746780752ee68b992c049051f22abd79bd90a2be1fd0bf5b8ac10d66e7d855d285a04c15ff30d1ccfc742a1d8023100a3b73ebfb8d8f6d8e2570ba55bb67a7e8f8a391aadadcd3659ed5edd16d48035a3f4b60f5b77302eff263916128261980302047c435bb500683066023100e188230a3f74fd686db9d37492d22ad4fa4fac48898bf006a2543e637b78eef167d6d47986da3cc6acab5060ee42d421023100c03d46cad2e677a2cb9f35a82a93b75f98657e661d132a76b30e7bde5670600676d72de8482fa187e4b3a8fb348f36b90302047c435bb50067306502303f26a330958b48ca1e3cbf1d353a9fadec1469df8e1fa974d682802ff8f8dca0423dd017cc99ebbb40529d4db3339cca023100f7e31036afba19ca4ab4e81b6c19b35ae0ca0d1831caa3f03a23f893bfc7ea53f6efc6a441b41664593bcca563285cd60302047c435bb500683066023100cef8b7a163c60bb870c1a5bfd550833732fd1e99d123529300807388e9a23ee3c7a2d270bf396efc58fd14870344be41023100e4f2b5e9a4dc312ec4e8e5a2d7051265d30b0b8030a18ca5c071c4867556a5c529a661e4ae6b2ab472c5280836988eea0302047c435bb500683066023100dcf3f983b108f23ee4de5330ebe95ffa6b87fbbc34854bde72dd88a7e106415535d639c4c5b5d3ed6e5b4f341ece23f2023100cf43c1fa34f512201ec1c42574ce8139fc69d0dcc3b37e18c47a39e0b01741cc3f856b1a4e6cc94a35a78f9b0537d0c60302047c435bb50066306402302fb84eef27a6a5128ab7251b6ea478261f4ab14c2d8703ac0d421b72bc2f663a10f381a4f8521e53ddd7c050ffd4a012023058865be885bb8ef21b5eed297f11b8cb45994df8c6168dca14db70207336d8168e3f56bad9520dfc74d3ef91f6e9024c0302047c435bb500673065023100ac89628c576ad585ab345918c01bcdf00250eb972e87336005c988926d763a08462100e8b2b17f0363eda9bf0f6b491e0230686abfad3c95a8baf134a59bb6a8a4afd75e1e4e4100ae7bf4639f26921dbf378609173a302efc7f417152d02d10c63a0302047c435bb500673065023100f7797182736b9fc419ac378878a0f578d74b16bedc91e6a207246ed59f39c17866a784a071e7707d6a22196767d6e14c023039d7bba16b84c5de4216415623022cf534d30e831500e8b2da0a957c9e3a549ff9b1d402b512ad17d7cbc50411f2e8a70302047c435bb50066306402300346243f9ec60965456330acbad40e7fc52560dbedc5003d89473dab011faa9d951050c1692723806b840c63fe994c06023055ec4eda13db8babaf6e66ddd0183b7eec1ce3269c89bd2f3bfec41d70208f0a526e54c527ab27c96e3cd6ce97fe948d0302047c435bb500673065023100f83ef399aeeaec641392756a554f1e5fa73b2780cbe9e6d70245b3e7ed5f2633c2b055ac76d99f9d38b51bfc270f804002307a2afaaddc73268475fba1e8875aadbc2eda3df279265d7882e2a65f3e7e2be9fc9a230a32dffb3b1df198d79320cc190302047c435bb500673065023100e667bde3cb7ba18974e8016b0d4ab03c19cdfeea385c8a11a52d71f2553f9efab4de30873a340070e9b35c1b3fa003be02302ae8b2db93e64ae653b32964877b4dbafe434659be240ffd95774040924b3fb44b3603f2d2d9035131a00692ba7fed2e0302047c435bb5006730650230136fd506e7ab364af4a0fca0dbe253dc50c476e306b065d1081b8b9b28ed75811c60e1f3f6f2e48ef6af0519487764f0023100db2d88d42572be3308147142ed4a6db31f35f5ed09a2bb46fe97f1a5c74d553dfa23cff4f2ac455444aaf8ad40d8c9f30302047c435bb50067306502302d446b8a606bc6d51fe7c87569e0174dc8512828e40c3409c7b31e27adbadea16c10a063b2ba9601111c4d2aeacc64c8023100c3ad06bbbbe2181344882ef9ab8fc95e50200515e312b84bcb5511b0072e1ffba4e46e1c22d27bba64c355ce82a6e3dc0302047c435bb50067306502310099a9ba3b296bc7106fbb7a3a8ca8b701c0d20976ffd4822f51c5f55ac436ddb29b2a74170d9659f7b912d6244a2e65d702302ec2729d5455598bcec89f658fdbe9cd71465cc000a88b8668ae63f941b0856f203e82547b90cd46f6a9ef63b04dd1aa0302047c435bb50066306402303a2cb270707859974e4a1cf0500687b7b73db1d36eb61985b4b37341fe9ad25ae53467e8801d5075ec51297a0eb8ad2a02306614e0ed0ddc06c5e655cf4d07c82bdc1ba5dcd29827fb87524af4a44e04bc123a92c290f38689978079f7995e172dc10302047c435bb50067306502302367b2a4cb00ecf4d9264f0e2a1ed58d2c85aec5a1dcf7b46054767a55d68aacee3515849589ce33b4ab933d15a92c29023100e3e3ca883a29c9b97faec1089c65e64fe238a9cbf8b0f8fe4cf443834174cae073f67953d37672eeb1f9bee394031bf60302047c435bb500683066023100d84e241d043f7f5e85214be77b4c073cf9f651f41c742b0de59187a4eed15e2575b521972e82fd5b3db210956910605f023100badebaa0c54ea0477106f26b9b1889a9fdb72d40f391920f40207ba5c70e13638879907c02bae8396ccd4fe7998831b70302047c435bb500673065023100d0234caa5d12ffe417e51d76c70df40a77575018cae837f49fccf29fce83d2324b432a1dc82f55913be71e209de9fa440230643076523e5d9453e66b55e5b0119616f7e69fa57e8a11c00a108f3a2f4483bcc5fa75bbb73242226bf235138d8bcedc0302047c435bb500673065023068b7d1d7015dc714f790e7a333cc0c621c735de1f66b1b806dc2f914151eba416dcf9836946a735d565d7321357fc146023100b7c5dcdfa356a62bd7c920f63cf0658d8f903e28997c8a1c12836378a0efc69134236e59d1409399ca3f75733d228ada0302047c435bb50066306402307389796f730aa38c134cb0846519d8c9c510264534d02dca37e206f11f211201774e1fda76565b64682c3b5cbbeb959502307345aab404bfee72e38561d6723cd98b8a51c68c02a6090347ffb2b9e566ac1faa4abe7a34165b3e5014e124b7e3560e0302047c435bb500683066023100e50985526520a6044cb6f8c4509ed12b160ba3ace02da208e05b4950aab4a14cd9abc100c1adc1a2363a345873d8d49a023100cd6607504a77dd9507800f39124dda9476c65a0f287e012aae272d8bbab4529109ac13276a6f125f3b4f0b6b26e206c20302047c435bb500673065023028c901ccbc6512f8248abf5a31ca36f82eefa90d990e6c72692f3049bc078b593f7961949c95ba8f33d2b13a095db544023100e783afb54ea34c992c3807556717120f97fb782fe4f97dc22f776d75bc90e22381247f43270e051b760521cc5adc8c640302047c435bb5006630640230331104ec14793e2f29c8f8660add80b8063b12a506ca16f7f84776802ae9aa83d545c3a4d46ec60b2059d5a76dfd127f02307586acc27c46e6c4433943a2aa751d880a2c8bbde345797e45b37073b20584a477da96a728f4aa91a780842bf432fc5c0302047c435bb500683066023100a240c5c426a3265416b0e8cd71b00d47afa316fdecd8c5c3418c25560bd9ee652f87d71deee3ccda052e59699fecad52023100ff64b1fcb255b5b45f3126aa956ea9132d05924132ec6184f284e5b29a48a7d924b82af143b35c4bbadfda6cb273119e0302047c435bb5006630640230321d66c47a1243f795969f11a829ed6f3c7243678ee55295ada5f84d2e03e3f71bd32ffb10a601b17dd9a981c33f977c023023bcff2045932134046e04e59dd7746bc941cabfb88ddaca8b36170e312366e77c68dce9bece5570c577e17ede2779e10302047c435bb500673065023100e1113e55a1788ec55e38f154d961a0a664f148b22000a9a932930ede33aba3a3c5384f3f259ac626364e59f16225340702305f47e5b9aabf48853b1adbeeb554de34b8bd959a42015f8f3b3325ec251735573710c92765abc9b415362b7a5f64d5640302047c435bb50067306502310080edb0d5673ffabe341ae9fe0a1509537e07e610ae452946c02377171c191b1bae35f948184ea4f927be8b1cc27ed95602301101f42153e6a925c71e258aded3de0c549fcfb52a79f36c7016f9fc9a3bca22f6a093e39b861cce2030cb3952fbd2320302047c435bb50067306502307e1f2e88dbdbe6b84ab1e05f09bc32d785c3a92d76f0f53c13be874cb11c703f315548b032eb89cb0686de148ab65388023100c1482d338cb7b11902d6d3ec659e95856d7f76fec205e66f572e2fbd0317d957a0d25ca1912e6b304ec57c00a7ef1a0e0302047c435bb50067306502301e7f802b6c5d2059c09325f9cecb58863b78df0c80a7939832aab281e70e6300b9c09d9f75f4a7df4b1f6093406a8380023100e048aa0b61e98552867082b1ae0beb0dbc21685333d7794f9605a93a57581d303e0dfdef6b8d892018c5322eeb1533c00302047c435bb500683066023100e6753c94a4ad4909d2b7efccde1f6eaad2135e3f6850bca9dc88549b15f29372635c10f2850930d76cea10d14161e460023100b0accd3fec5e4ac8439e908d0a88952d436c284be0234d21d97c708c56b470b3fcb094eee5125831cf0c933b224ee7de0302047c435bb500673065023100bfb3a10231eb33c33b6c2e1dd8cfd223e59f78699764f7cae888d5ce728ef8d0d9bf73d5511affd55bc06039ac1e607802302c17a565648bd052c6e280587e884c20d279cd7e59db148c0a4382badf22281627b64af879e3cef76d3f381f877521230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304244e5b679be209be6b8e42752db0e33ad7ea1a760e59117eb0aded98045d1b8f0ac2ff6ddec2c6ee6f5cd29f38dc948023074e24880b9ae4b7aa369d92596b529ba81c843b80ebc713a668713c90a7e03d398b58658825ff361e8abc08f3111a2740302047c435bb5006730650230445e5a24349c1dd543a7cfd7af752eb303ac0dad7e3d48471ad8a1ea003eb24fa58074ba446a13df5c412ffd89ebf89f0231009047c252fc4bcc2068e1d3de612750994259187349971341a00f80f377b5d44f710ddf9f7f3a327b46a1534fcb63b2b80302047c435bb500673065023100c63b2cfe662ffd3af0f26529f1606d46aacbf7a56b6f7619f96a099444ff722610e3681f04b35e72c06204a5b9b966b3023045b3a5705561893269719ed825908dd94f4a9c01aecba4589ffec56e290d231ec042e5f2d3fcda0e6d9846c2af3b569c0302047c435bb500683066023100d339567b41801ac3c88bf21c46ce2aa7ceacebd96c9c3b31f2e9cc416dee4cb073025dda2244d56e85cb4308f9202570023100d77e6405b616c17e64d0a945b2555efe6fbdcb7ef8269815b20c43af7406c966a5c6197c9db1fb213d8e600bd5ec64910302047c435bb500673065023100cbfdebc9b60dcc04a62f45ad53e4f91de8e7b732ccb7ae37348f973c5f8f33e981bd503c7cf1b2606e0af01ae4db5a7d0230745f482590a97c10ccbe7bb0d4e22c79e558b5e913457881e4c29334826835842feac77823cbe44599b64f865ccffb670302047c435bb5006830660231008fa5e2bd0def98419b17d4b8efb4609b47886ba74d2b9afa3385049da180a61c42df9671990ab79d759ccfda8a336323023100c9b3e87c5a8bfce89a526965bec1fd9a7226208fcafe32d52ec50982c4c18472f041c01979c4f2c60f4cdb571df6882f0302047c435bb50067306502305ceab85ee4a0c64ebd119f132ff043073074129c6c888342c60506687add95324982bea5d394cb506b26ca598dab1b15023100d5f15932990bbb72d3a4f8fa76867904815c0c332ecbd017c7c0c6827be9625a0942afdce45d9cc3c5ced30c87042d410302047c435bb500683066023100bba29276fe9c7de330a1a720970e7cbac88f5f6892b77b2676091c5959b1057ccc117fe69e2a8baea93449fe977fad94023100f33c5cfb39be39bfa29e47cfa63501845e4bb21879f3dcc35dd7c5d7651fd4dc7d2b7ee19e7736be59fab52e0d0464c50302047c435bb500683066023100cc386a96d19bafc950488014aa97f249259ebc3159ce4433fa27a43a98528dbfdfe3ce10fb04daa3554ccca433417fcf023100c35e52107a3f8f95a10910947eaefddf0b85a9e1c001df91bc90b2db9a31761ef7ab3fe0d3396408e4656733f253f7770302047c435bb500673065023100e720d781240b1991ac4e98e2da30bc57606bccd66f310e1e2d88cf0e7175ea485e251d155dd9d1478989af6d054474790230015b28e87eb618eb6284572fb50128092bc839aef040436fddff2c12aad213ce8f046ecc9b24be1488052d6edf1709a40302047c435bb50066306402305f29c2e787c5e5ebfe376cc9c000ec0a58ced2d2a2b29efccf1181e6384b50ba2d15b00d53fb873f84dee2258a10132d023078a58028adec85dbdbaeb3e6b86464f77a10d6278c5e25fc85251738aa1627602e3ae62dac3b7d21611450d321ea01c50302047c435bb500673065023100b3cccda9ef657f7182e83c3a7df08a1feeccd74f6935642136140a9a1cbbe3b3a0056f3a4b0ae77294eeb420baf505d802301fb44581120338de73421da23f0d0b754ae635927e0adf3e5cf3fde54e90d78cb3b396524f861cd1cd7bd1a5368212930302047c435bb500683066023100dc2c7f70ab14f9e4a768c8c5afb6690af4b5e36bb14a6a509f68e870fba7adc827309b7e383a8dafda2ded0d971fde9e023100b08f00162b02cf180e7e247fcbf7f205f93ad3fafa01fb30efbd575f74c83bce4b837d260f2928f943aac14d950e44900302047c435bb500673065023077baf66eef3c9f234383aa4f50ea9b66325ccbc79fabb1e7fe59e66e4edc28a71754cbe40e5e9c743931a63dee350002023100ef0450fb3567b1ed59fd41826665e9a5dab9ecc51328d3aa497f35a8a6e312ef9d0e43b006e84806a6f6490c86ac2c820302047c435bb500673065023100dff0f069adf2471fc7522db7b44c8517835f26ef6012fff175e3ebe0c9ba4181678e450616c96ae0950319444b887948023039f68dd251a8eb8a95a225e7d5f6f13a463ebd8502be42482074720ae954c0cc260990a1e0651d4d3458fb39940344690302047c435bb50066306402305b715488c9815da16ef6a4ae17c74eb9080dbe54eb0c2ef5df05ff8775695aa43a0d9fff506599e29c29259bef18e97f0230757c37c3d037afd8acdfabcb694fb74ba10c0e31e6afcf0fe7f91514bc7f94a577c0eea47a715bb8fafd100889c3cf060302047c435bb50067306502310086187dfcaffa315ff34738d65373b0c10d1cbf1bd42411d15421111fa3ade1bcb4d057267ad7c3447707623a392e004a023063a38f7d44ac50de88d157b18df9bc1ffc4d11d2c1b4ca2764210d1355644220fa2b7da609a2cf31468ca117da65439d0302047c435bb50066306402305525da2846c18ea9fdcb85495cbdb1184122f7b424893eda6df100063e17faae609491eda3a1ac2736bee6cf653bc194023016c5a8897b41230d0db946c8b3966cf7160c01939636db04808674b4a44bd21f0b72e26d6f1a182e29907f4346e9ccdd0302047c435bb500683066023100a05d3f23aa005124fd2f011a6323370651a1963aa82a12365e558f99ed675d21f3279e4edffb83d29305677a979c19b8023100b151df135bd80549a0c06d915dd0a7bddb742e3c18c7f6531e354fd51d3f64c7f5dc6986b05025a15d30698c787b6ea10302047c435bb50066306402305dfd971282b8be01bc75851dc2b3667313061d56089191b00eca2e415e20d84b4a7d40bad3e75e68c14029c9b60d58ba02307ea9fd880aeaf68af0c5e176fb639b6cadfed51cc2891d920ad6edf17d87f4d4fca2027a2f8c38e322e78e0be57251040302047c435bb500683066023100d245c11019058536825ef4668a432840c7445a10acaecd65fe20512e31872d55b8b4a79df1f8e86839baf45729acd729023100cc1c0debe5e5f032c9b69aedf5d566f59973e79d3af584c501085518002b2ffea0c52395b4491c09f4b8038870e45fc60302047c435bb500663064023061535c486bc1575629af489c80a4ae636b239ba967fca77052a1636d08f3dd77cb6f2a758cd346d8005d69b47444cb4702304587cbb969ab3e80c624f43520bbb64f389dfcfa1405caa629d7bbab452752cc60ff5e54ade12e2762d2c9404a4aff1e0302047c435bb500673065023100dd16f6921ce6329b8da4cbfc387c8a3e8c0e60c6f21bb058d3acf40ba1537c4a2992420b17cfaab4264f604e329f5a2e02301386b183a285c2c572aa3ce977d01c960ea95ebeb601cd3ebb8d33aa81857fc90f7e6cc6ca866ca117a1c573d2eee16d0302047c435bb500683066023100ad5d0ba1328e59b793b1c28bc31b5fe42cf0dcc10749c390b0180ce26c619fed2915e67d3c52c27344172f4ca39c62b102310093829e50856506b7dd14106ec57ecf747f5ee788b61191b4bedc927007705b25c0c63f3b9237d794ca16fd11f7aac3920302047c435bb50067306502302a9e3290bbcb8f44b2824e386cbf429447673d537bebac895c42ccda4403a9540054350f902183ab3866fd85e8f80bee023100db5fc849eaefb1aeb00c7c550643ded99b0599f0383047727e80432681d28e8cab8c4df51378ce86670611d8cb40427c0302047c435bb500683066023100ce9a2a1aa3f74bc79e9e55cc2ab6cd854c44091b503be1993f348fa67012216b1cb89d69fffe621e6b6d0ab1eee2e5ee023100a755d9d89524837169cb2946a6ec5ced3686a9e44729a50d4a6c4e3f7e9e701649654be0418f608674a4f7a57e49b7050302047c435bb500683066023100f259120599858bdd2556e7bc45b837b435a763c22b895c5cdda655bf58e0b6d107689a79c25c72f518a241906711b0a0023100d98aea83f344e08b7f32203e770bbf5f4ce4177358fd8a8940dd9c1553224f1d01ff1ac0ebf0091c7720a9683b63ce460302047c435bb5006730650230519dd18637af5e47ee62a061fd2dbfad6b53ae8a5576f67bbb82ca0f2f1dcc4a963bf35ea948a86db07d26b9046113a0023100d7bdcce34e5a627bffdf05a08d53926eb68957dca3981b3cfa19ade856ab1b694c771e9585a7da6e6ecb25bba92d71a70302047c435bb500673065023100dcf787d717593c19516c2979605aabce5c0b6064988a8c79f79946c98d2e5501a1a554e196d3f943b935689e017cc06102306fbca4b23b1fc13af498eb0af530151aee223a714eba3eda2f6c92b6dd52eb073342533ffa7728839c6a151f5cec6b670302047c435bb500673065023038aa21343745afdfc7bbefd8c4e68e365e14bf365a52acd14589dc9e2cd113545b4f3298f9330095290a5ffd9dd1e485023100e8e9b4c53b2706dcb6a910925b11d2ef9efd9140ad37028d107edb4adbce383334174b765f8ee436b5615c8cf07de89b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023049765f83d9f18159f3b8848285c5d83e00d96006a8981abf1d6d63c163bbec6e3036d8dd4192e484fff59a7cc9d6490d0231008c179fbb415c03ff4293d948e672766afb073fa4ca931b73c86aa5c7ea8857cfc026acde2de34df6cecb2b99c6a03c2a0302047c435bb500673065023100b240bd5f1d96331a7121a997b42917544596028828e262f131162a1acb0a128d0428f032c9180261bc3cec6a44f6295902305390b5bdd070122eaf5012e629e88ccb8e690536c4ccfdf5121922840dfdd6e492a86e24cb19fb637183e24b255ce4800302047c435bb500673065023100b64b83cb2cae9175485cd5acb1cee37913bfee4a0294ddf83740975d51387b7bc97259b3c20074d72a512fec4cfd67ff023011ebd134220cdf0d00bbc42974f2b6646dbcfb1da8807194141885bc3178f2607bb13e9dc25652d36fa79526b08dd0b80302047c435bb500673065023059af42a084effc23e91cf85c36d62e2caacc06a3908e03c48c488f3867f43593717ba01ab3039b88d209350cf6bffc99023100ad682cf4a2bb1d21cc20d0549166a7c9134da3a1c5359a737826ae36ba30bd2ffc77d879e0320d950952573f9fcb66540302047c435bb500663064023037d5c9a831759b0ef0716708812b18f63881e37159e0372c3bc64e2275cd6915bf455937cb94082f375c122ed9760cea02301fa1c7a687c01f664d35e186e0678dd59c3bc68079c45d23770f54565dc407ca452d6fa974477910265ab9ab4ee0e7ad0302047c435bb5006730650230326669127a88bef4ad363218d13c1c651c17c15400f32e45e2cbdc1538bb0bb2dba215efdacb244ff19c012109de5fa2023100f1ab4783a1d28cd295a4472fa7236424b949e40ad9db18c41a3aeee5d946084e92147fcd826ed34edebff44fea6876a50302047c435bb500673065023100eaf21af7530bede6b0f1966a1eb26b4e7746985bea17b3c201245352a75d23df695622508a7b2db9cb23fe4501c37dc4023026e536fc90256133093b8cc24c25e5537d7ff71bd5f1a2acc1dcf3dbdb8dd74a8547f647a84851fe1a55dfbd8acb0ea90302047c435bb500673065023100d3da1bf8ad6d22821ea89fda6e474131d9a3c18f7289e487ed4d0d76b22f0c4dd9ffd43f48b43f8b830929b6d9e25fa502301c45e67c00c3deec8c3d80fb26a6b0b300e93c33cbb36c4946752713d1d5d1972bb931863e273ec8f6d5a2d1098a17260302047c435bb500673065023100c7bb54844a7da274864ed25ffa40595daaba3801c11e5247a57be4f07c85c6221bd19414b8d44649c561e07b6e614f1b023032ab5dba09632c221373f44f4ba05f5ecec9734b4462a271e965a5cc0cf0c0f13b3d7078f60ad22c29edfa6f6414fbbd0302047c435bb500663064023001fbf7dc640d3789793407c2c41fbf739de937419d9e7260851223721ae1f3894a9cce7d38d7d2133020f011f87e0230023053671836a845f621142d61604f1efc3de820a28db892bc36f3f35049a7d2008f145e31608197a3292f8e441061db1a860302047c435bb50066306402303fee06a6184caae4974effad8f98c97ae507846e01be4842313f90bc431b35bbf52c62037555d3e32a61f0a2d9542fb5023015e1cafaf17c26b5057900af29af7b37547d61cbc0f030400edc9c6aabf7b016ffbd85b4511333a1155670bf6232ffd10302047c435bb500683066023100f2d9095fbb80685b38c8c581ce11d1aad6216f76f6837d4df73b568d80a6d02fc36a4ad033a082733a597f46c71ae06c02310082eb5931647ade2ad29b21ce375b30d457ec3295ff4b0f67d64ed1d1cda31aba353779e9401ead266e7a3f08ae35de9a0302047c435bb50067306502300b1382ec0bf88c7abe87c9168daa9d22967a4f2bbc8c89efdd9fc0ac0918d13ec969f7e7615175edb8fc97544a8199ce023100f111fcd4690772598d93451e0830758c7224f14956908c6561f1f3c2ce8a866749efcd9fc17c47cac84d1d769034f7380302047c435bb500673065023030bd5dd4520e97b72494a65757b085a9697e5fffd959a4af428009ff7bb66347d2f2b1f787ca4bcfae40d670cc82454d02310087db3184103ba2db1402655045b33d65547f0a3d453f37e3273c1112a182dbe0ef30b9f3e1eda19d31fc3dd51e859feb0302047c435bb5006630640230671269cc2db716ae25e00bef7a1e7674b5a12b049d9261ce28db08a74a24316b465d893b1bbecadcb12fd38d4afce4ed02303439eaf3f3adae7c597eac4631351cc584c7fdfc274200165c253f96c5ee27f6609d11a69f56c330104ce6cde0bff6410302047c435bb500683066023100e16dc6a574fc01bc0ffc234b863b44ad1b6c2073bf0123e4e957a25678feff8f0b1cc82d93b7879e48e301a7b38e446a023100eb1a470ddec23c4c7979fa21f2583091539019204fb2ab7edad06692f7f9174b1329a6725ba7e380b8698772a58558390302047c435bb5006830660231008a5d2c68a82bb13b435cf0cbc9ed719780da68c289a8f508b6ade3d421550d108fe53a9f3081b088707def8fdfb94511023100b6be05b5666b4f279f5555221cf5e96eb29de02355bf696fdaec003d2aab9403784a6182d226410b04c9d06068158d3b0302047c435bb500683066023100bdc738737d1f7304173d9d3e3d58101c3ecadac27e1d2f2bfcc58f1c03d0346da73741ddcd11ceb1dcb1e6d16ad5cf2d023100b695064856eeb8d50753f1f43909457fc1491c4beef930816ec3f8e920679389038765963e652da861501514634425450302047c435bb500673065023100d1675a6d157e3c9685143a01bfd2591bcf0a4c0bf3e02caaa2fd1bbb6f3814ff50da2c146c8a72c76332378ff50cc37d02306e0d9c8b6e0c2f8c8e98001ceed34b48d7be978a8b6f0fc08c682d014e670ea25a63a1ce24dd0ee6a00614d802f181320302047c435bb50067306502306f1a225b7490cd40f0e4ea5d62c4ca06b06c65f0409c594647e0791b9520dcee11022fed4df98b493c8d00532423074a023100d62ab5d60e65c97114ecb98fbdb6d13dc6815da4424cf1288c443e10872a08ab1a45baa94317abb8d94bb1e52fcd46b40302047c435bb500673065023100eae08f38b2e312abe01dbe33348290c6e5a710a85deec3201d373467422c800f0162f3e97aa7504f896abd56d3f524a10230432792c53d6ebcca36a937c03935a5bc8639ebe3a8471a5c61b482846dc4dd9bdae430d732d96d6fce0898406d0627890302047c435bb5006830660231009ccb5d61d71a0daf4e578eb9a28c6416c8e1a9c9308e60bbd5f768eb9ac8655c80385a28a85c390b61de42ca77d32e1f023100de1c892fa4b7dbdb005329cd9e7b779e68b56af2988c3377448944a013928ddd4fedd55b6fa4d631c5c2a0dc47a6ce210302047c435bb50066306402302a8897129780cf820dda22c39a2185750dd4a4f53161c72f523931a70a9f822bccf0ea8aa560f1f0f46c11cd469a57ba02306a9c79f36ffca3d4b0d513f47cdeb7f47a4f1a289646e4312a7af0e6a52d23342ab063f3f76a38e749840c632b7290600302047c435bb50066306402301a3975f12d7a67b6673e321af544b1d81e96d90030e9b56ce0c2a55f4bdf34c44c14f58d6b0f8bdd903844112dbba19502303abe9faaab89a8e95c980015a4bb672ce2f5f7a8ffc87aa6c52c8086a688f8f92c2c70a1db5400e0eefccbc07ef35eee0302047c435bb50067306502310089199f721519ed39dc09c83ebcd23541ff688958f2b186b2be8c90078ead19fdff4e86df4a6effdb7315f93b0a709bfb023046b3a2112152f79c908e16729331d3e8dbf6d05e35a59040c065962e28d12a1b33d5c9deffbf2338eda67f2665ab822f0302047c435bb500673065023100d6a2230130eaa3f8485db623a1047f675ffa158f2459d087ac0d8a5cd66d95b2838769d8f0b843d4ac315bec2cb9051b02300297628b1eaa29dc9b9c6f98014923b726c84d1b3cb53873f5ca3c863cce652e4a9450a30ae967cf85de4f8e6376049a0302047c435bb500683066023100bedae49ea0c3f3bdd06a65fbded357ce745cefdfbfdb78a8caec1e2fa8cefab64c794cd3bebfc65d86086a9ca1f5400602310085bc1bbc33ce389ff33102fce83472b04d2787615ad7558817d55b603a42439162660cd5d5506762339d9cf9f026c06b0302047c435bb50067306502310082750ab0ba21182074b0bda33d6d8c1a6e3e58e250ecfaa005b48bfbb36e78fa47f5ba5fd0b4edcba8050f4f43a9bb8402305222fde3ba462c364ae1a2a81eb66ebc2af5055ee43ce0148c0bdceb2c27e28582805ee32a993bbc026f5ef4b28ff2690302047c435bb500683066023100a0a4ca8c2b455ede8f067ed99866e98e40126f1ebfdbf88fd9541bd1764bc0ecd463056f1e3d3b1c2dd29f8956e5176b023100b3cf2421ab753c4e0a5ced99f9d0103ac2bc25c6a0ed0ab66560a42dcf5f5d2b56f5efae714b3144c39abc0f61b808010302047c435bb50066306402307d9b2927717fd63c9da9f9fc4659e1e6762f54e95f05fb90e4dcca35a1d2a6f5b87bec818941e7c07cbf2b0e5ebc3f1202303128a07b9de06334184388a1bad8cc2e8d1984054f1b57893ebb9d3efc6280e1ea02ba9abd7edd3a20d75ad461240fcf0302047c435bb50067306502305d012595ad41c32c1758bf1c3756b926d7388b81d811a901497f7615f3d70803895a58e1888dbebe4a17acde340de51e023100840fd59b2b5c0e704a47238f766eeadcb14530f504754b0a39213c43f298786e36e29767b225f93fcb3d9baafd8b14260302047c435bb500683066023100e10b8075208afb423602e20d7deae6d5e593b584ce259af6d6a66f77f836dd80d7327d2bea7db8e297cc423befe4f2c9023100e9e2360f170deedcf4c8c27f8f5615a3524b21a5741b5d417b510c16e27fa8139886741f841cce757d692b5c6c8b8f7f0302047c435bb500673065023100e9be180aadb7aea1d3beddb8c355a7bab79cea88c4f45608b249122679c984fd8bf0219857d946b3994cba3724dceb43023025036bfa3973faed4d0db7eb9bc3da09cfde892e8c6fd12d240d1efcad988e40f00a1a42be3e7a7305af2d545100896c0302047c435bb50068306602310096c82f327833941d07d23303d52be083316bed11e59d0a4c2acbe88760d999f49cf2131d367d4a7d734b517de6d1a609023100f602051343b314b38de284fe376c4f77abede0389526bfe9be9960f8edf6876361d113a9d767e74576944b13e65b8d5e0302047c435bb500673065023100ec18a87f21471ba22b7b9e765a445ea189fd2d07fabf87665bf51a39c7250cd8ca7fb7c43fe7e897833dca9a116690950230219c06e2682c3950195dcc59381b18e221b505b3d3baf030ba763babda9d0a1dd95bc2082f4a0287864d8b046e6166180302047c435bb500663064023030ef58ff4501fb4fe5df41647489a5acccbd777136f0203c74669dae96d2b9f7c18d289ff840d64bcb0b860905cad897023022c4885c09d024ef568c14391abe939fb1d6c3606de72a0f7ee568e8a58cd064c3ddc3699a95a6c534f1c4fd569472bf0302047c435bb500663064023066c0e9ae150e798222628e2345e87b57682dd0bff65faff0bcf32bc6fd119f3cc1caf3fa411a4f23887d8d867ff0c60102304488ad7950390d5e1340be71d1b2aaa8faa1e843cac6c103b7c65f476661847bfb4e5901dcd88d6f718310a8f407dca60302047c435bb500673065023100d28c9f4b861165c286ccc9f914349781b3b9d63086fe9d695ecc0962102d66f368c1046e9c8923c7b45bc1b70d6b3bc702300d8c7db19f8c71323c453a435f5234cfb39e4cfa1143c5803aa5ffea8c8d0f550219f117d1576bcc893d5d81f433ba790302047c435bb500683066023100a7d1f6c61dbcf87cd4a24f30a88a6f91a33b89e8ba0745c1916399329d2fd49d94414e6ec02ff453e012f94c3c3111f1023100a1ce08785f9999bd31edae6e7e23f89186d3d0af7cb8be1574c4b42b68d61dcbdfaca6c972f96edd2eaabae5f9a991330302047c435bb5006830660231008eacfdc4fa94beead77539f69e0e22e6a599954a82d5bcf84b0666f2e83337bfd127f3d5fa8c580c826ce24c59f4f9ac023100e05cffdb734f159b39ca91f709eae7122f59fc052667fce0c13d6939ebcca8f0d59abc352fcf16351012ff36e0b841790302047c435bb50066306402303b013065d96319b482473151ea02b700cbd17620204d7993e21c98c2a655700b78a03f536182c9a7f73bff1746bdc6cb0230492a003bd1e74d73c1565e1fd84babac767f470d2aed631a2954c7fde1b9cd19e46493376b42d7b5a281c0e361654e370302047c435bb5006830660231008cd6420210dbce6e75f6b5004407893e6f44b04df73c83d8c1648f2b79d15fe84cea935c263334262aeef8fbda7d8e5c0231009fa8a288104b6fb9d3ed721cf05c657d096e02cbb8adb931d9e7acc819e787e3dc3c75ef6249de6022e8a5bf75b39fc90302047c435bb500683066023100f5576d03b4f802a3240b1581957d91fb8ed472ae6c4299672ed65f8fd563941a7fcd0a997522d040f1aeb6f75bc26f960231008e07298cfac471a9e2a3621cab7e8313d72f6935a10857c9f83af6c299ae537ee260bedd49105d61f83489c249312e440302047c435bb500683066023100fc9a9c714a8033e06e72cbe90dc69496ff5bf4fb6d95c168e8b7932cbdef7a4e684df73eff0ffbb05bbf1293b2c695b202310095d1e4ed16863d22d6825f9b341aac2332e9b813194d2f7fcfa3f978ee1543a284f1e613ead7a4a653b7bb9fe7e914160302047c435bb500673065023050235eca1b1a0ecb5e866be0d408ff02965ce823317dbe65af0ed3e197ae376adf575a910cdab5d9c530bf28a66ad407023100ea0368609c670cef324f6eb259fee8e3c7f67ada905a73a74a0d3b40273be8b02696241ceeccb34283f926eeddefe8ce0302047c435bb500673065023100d67aa40504d5417189e9691f9240f798939babf854313ed3094ed71abb244f9f4863e062f011fa7ef28c964d7247c28b02306f0332f9219869702a9c33e4f8415366044c8564d23e02e8c730523264763262f38b9a3f62c57457a6bd88d9ad0cbe120302047c435bb5006730650231008749a77def1f3426355780bed834efeb4ee00ab222b9a5b12fcd9f878171d8fb44375151e147ae2ec2750f912e6a309b0230276c65755b68acbdd553c947cfc4b88257956846b8c3348cbf9cfedfd8bf57e2dd806d0c6d09aea62ad3e706368a11410302047c435bb500673065023100e7492b60b97d1ae5ae85cde536626b05a6bbd6e82da462fc9f33428c4a4976f2e9431963e6ab580bed8d1dc1855dc11902300d5d73f03796892759d44734276feddeb6e6c86d174ee674363d09ea744d3b23da98b7f5fb7d2dae11813fa2977a09580302047c435bb500683066023100fde36792e2b504236b680fd490c1ad6be7239fe6a5de7100dfcea5c003ff845ea953d94a43ff0d4fc4a66ff728dcd41d023100b0abf48f0b0bddae64cac9d5870ebf0043431b48a66a719869fad95acc65e38838ae2ca858820b65841d2c12fd212f450302047c435bb500663064023069cd71aba299921c63a8c58993076dfa19ffd0b29f951e452395a0ba768dd4a5e433d837c3535cb932c930dcd1f85955023056074b9180e26d91db18429f2a90da9bbf2556cc8001bf3da4f208142fbb2ee76a8616deedbbafa56b584f2e01f6ee920302047c435bb500673065023100b387d27657959962086ea802cfeeddda480f826917fb9af58b0b93ad3c30a841c05fff965b84c4ead1e806dc2ed9d006023002e34632edbf53a9745cab53cd29a9dda650d68520d55701ad7a64cca0e93f51a058fc3278d2d59d3582fd47192a4e700302047c435bb500683066023100de6798a36f07a9bb6bfca481a06e890dbef83111de576cb0f4f70937528caca16f4d67c83052b84633af5654d1f2543a023100fb25089cb48b75ecefbe23d3095fc17ea0470d972eeda32a7ddce656b4d6f04231f6e02d60d3deab5d96de30d8b968380302047c435bb5006630640230745d0d0b3e32dddbf7e5d57abe8120776c3cb70f62c759be752165a3e32356f0bb71d2d3b68e7f0c79b39796317460710230629e8880a462d12b8b49fbe116ae8c171aa2c4d1ef90c85baf4ebd60cedce536409371fb4f71d0ad73932aa10b6705900302047c435bb5006730650231009a52410f37d8b72f63425cbf7a647bcd38c91868df476ff96cf78d2340b7f62cc7f9e976432c497927482dcb52babc2002302fb401675b23bd5a24fc627e9d1aee8c45597770e66e0c1e9cbe48e1128d02b0f829c5df784a9ad021464da4598504ab0302047c435bb500673065023100dfb62e6fbd59cf9ca1056bfb12d26c11b6e2a9c71d129bc1a59cd88be80a0d252ac918862d86eca0bdd40503c0a2d673023041a01dc2753dd6f8c399fbbd8daa802866846ba5138633fe50123852a42f8ceaff098e8ff0622a522aaddb2b73ef0c6c0302047c435bb500673065023046fbde24970e18a1b4fa175ff47fdec660ef0563ef8bcb69812b34b6fe0bb562860543ce1b6ee9c4453399246846751f0231009a73720f703b84e82de5e41545ac47ddb59ee62ece2229c1a854e312155bbced95e4737b65dfbe66618605cec5a9ac3b0302047c435bb5006630640230033fa543af784e62c2fce263438c00839d5301d66856cc39ada8d951a66f65c45d0a4ec851a62815769712237f335a0602305a2d31fe8a9ab4013556d7147c613ed70e14f24cf0ddaad9a4eb5608bdd69be9dcf7de56326ae7a44d41c8fa018d23920302047c435bb500673065023058697e737ca4ccaf460c2a6426e2461c9ad51f4656593de0c53273ff359423695f5f2ad236d48a3773680a9bb820c9ce023100b9076353962fb23d06548347ac6b50fecf8d7f0f7ea34c9c9ae3478b9f60eca9695f459d0644f1aec6251e4f2e2200620302047c435bb500683066023100b4ba6b18a6def093bc899ab73a625d14b9c4d03cb457c3b44badb41d0ae32c8f879e208669f542489cde631578c3dc7d023100906b84c84f8f39eb3a3f8b8832bff2569f0c86b0455b82fb4063339b13848dbdd850d45f665b9c4e6fadcd2765b1045b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c90d559f8c9c47fe297c45d56287c5f5063c021927d539ac877b4d5550a746ab920f8f66c9ebfbcfb4d98ebbb9f80a9023100a1712ae742a5f9ab705d9eb835a59a3421a6f3415ad3818408310f780e20aad96eedc89d0aaf2c27801c1180cfad89530302047c435bb50067306502301196701f8f1c6db7870f24b08d5653140701da3cbda4d859ce966e50933e8e4f602e0c67ee18ce14df70dd3d407a5efa023100d92b84e3969547183a7e292918afa3dad4ffa97bb9a49924095ae22d5d15a1fe0b91be43abb3e279d323629a0212514e0302047c435bb500673065023100aeabb481056c328e5964c71b627cdb545fef96a13c6a44a77d0578bb31d2d5dcd34e1fef9f69c9f7696bca9675de517f023063a79649244ffeae9da4406d74998849c13379f061e15701eab107c3044c01141a1efba1b4402fce7d74472ece363c750302047c435bb5006730650231009fe55b662471ac097a5227841f07240a31c37cda01b845d7e5d281bc3dbe67a1f654ede041812b7f033c103181d955cc0230335a33adf0b47609e3ac99be7407ab53a6666a93d40ef65d681029885c5f8cda1f7bb35a523b754cd7229959366bbee40302047c435bb5006730650231008e3501d4cecad042f63d5342d269b1256252b4f3e7702793d5add5529ea36cb39cac46f1a54ef4aafc38efd2a0d8d067023007680bce2e4ff1f15104d61b61c9437fd89f0aca4b706ac7a81468290b0012fd856fa8fb0fa1f9ee4b4f1dbde0a010f00302047c435bb500683066023100bde44b6b73798ca78c70306df7f09094f860eb795e6ef3fe2bdb8aaaec177f367bcd62a242d5c5359c7b732a838e5d35023100cd48d03aea356fc4a90c13c0ef8dd429fc2939e86c31cdec25772e1aacbc6c5da4997311fc80fbbc0edab81baa35d3c40302047c435bb500673065023100eb11b72755a0de573c60a7b01b783b59e739720cda4b8c3ab2a7422932c3af8efdcf105a4dc2dce013c2c325d940ebc70230010a08604d2fb86013ee6c76db5593f1c75ed88b89b87826922fd0754744a6b689299f65e18852f95eea69181ef83bc90302047c435bb500673065023100ab9caf1585b508cb04bd9861c010fb03189d1146831e7198067280e6ecf7bec438da3df22ad181b099ff43d94db080f90230203154df0c55635ba762baf934023443d749c121f79f14a43c72ef1ae073a34b8fdcb2e02726eeed752956642a7a2f4a0302047c435bb500673065023100d0f188d946fe3bfc0b6fff442c04f2d320ff51a3bc0ff74344ff77b702c46e2f021fa4f6bf0d7eb09ecbdb3a5189f69702305c2bb8fde99d074974fd39264d934c545d39f68ab4edcd90310f8badc9a4f7f404f3c070e58c71ff165e2096eb094c840302047c435bb500673065023100950ebb9d07c405689c4878d0d73af4ec8ed7aebc8c7b882cff1e2b4030ec58bc831d17c646210a5c13b8c5fa0c01750902306d0a2f6be6c9c9c89d593b62840fa586889462e16d6ab3848e190912f10a08394404d33f3b3f85e3e1425791291db8ac0302047c435bb5006630640230120dc18cbeb59a39f501f3196c996280e96d147e6deec5befb0a6fd6b2316714bd60a32b1e33afb13ee31348f897e384023074de7f58462037a55d4dfd0196bcf54e07737d22ebb36c735f89c29910492ed75fb776215c4ba1f741aedd8bf3b6a5730302047c435bb5006830660231009cfa6591edb4647c8fb4402e8c33b6a457ff5fc966e4fc820940f411b790b99e5e1b181c92856ecee954cdf78d581d4f023100aba0c25906eea5c8e9c4159447e88cfedd7e6dab19a13a047c22b774b2f784cd99c506505d95a8e75faccc794972d6c60302047c435bb500673065023100813a8855c08ca38e6e8c0ab90d91d785572996a855fb7445496824cd6e770897b3772debc1dfe3e590a1133fe7bfd3c8023063e9941cddce3e561a0ac19c8efe5e199c3b2d5ea047e428e9a54a8bbedeecbb7786ed141a5464b0b6f66d25f8eadb1b0302047c435bb500673065023100e4f37d0ebf964a1b08a121cf3e4797ec653ef0fdb046e4365d64348fa4eb1788b28edeed30555c2cab2edf49270342f902305ee1b1a5f9262f5694349d1d96ef0c11fb03615782544a850c63384e52016a79e2f10d7ab9468a0f99f1c9ad5db3c18e0302047c435bb500683066023100a6bfaab16d3a625a3fa8e49115c8808238ac856caabb5787ede69ee6c0449540fff1f4309705cf8888258463141eb235023100bdbe980da2546d8f8a472801c77ceb9d42d216ba9f422b90ca211aadae8467c625232a2cfd7cb1fbacf6e123534f3fe00302047c435bb500673065023100b3e4c77e1446100967c78da400cd01ff4f5220649161ef2f7b928aad77686e87100b772e91de5943cddbff4654bc025102301de04d7f140b48dbc16b1652ab049720c59606c8c4661a31450248c406dd23f92a3b8ec69ccdefe630b0a1eee1d60ecb0302047c435bb500673065023100d23809507e5fdb5464b6244b8a8efa2eab4267fdd80efab9cdf382a55d087101bad60de402ae8f00a74f1e2863b123fb02305b1bfa01a7cc17bf4f07022498e0d3c203d852f97282c3047307edf6388868759290250c1ec06b092e69f0a29efca0020302047c435bb50067306502301158616fd91e9f89dfb8108eb4b69400d51f66df26cacf0d657f2aaa2e49c83b388aa4a363bfafc80d1009714101ce030231009c0c41e5751f081c0298ec7e5599b86f8edf194b7e934fcda128111e1e825b5216a0883b7ea24eb486fa9bc75e894f1a0302047c435bb500683066023100c427d2521661d662f6f4aa3c92abaa3f7c06b11150ba5544e9ba5269a83a4ad6e3ea04caa2925157f16c2da824b66eed023100dde7e8efdbf9e9c4ef5d1e3aef74d500a892a10db2bd699bb49bd41410d2c77484432a4de6a1a4faf2cbacb392109a9e0302047c435bb500673065023100f2606992402609a7efe22192f9d5f32f4904ebae2068d7d06d9dda5614157117ba2facc93404ca404a7d8f732c0c32ea0230661b62acf16616d1649256998abc4c32ca63b05ab546f3f20d8508c4b42dbff397a0c43ce2fbcf287e349925ed1c6ed90302047c435bb500683066023100fddef4ced8af2f63b6bd0da95951fc623d3a085c403121c302b4acaca103dc70ae5df8819999671e8cb9579ee6ad6aa2023100b4b48acbd0f542bbc88586bf184c7fe73eda575b240bc24903a242059db2c657eebe14e1cf03957454096fbeff039b4a0302047c435bb500683066023100e6fb689578738c2173a7e21ab33c1087b3ac1b7e70e5ceb3bde0dd07e70ba6fc177da3393e0e30931c69f4ff764bfd8b023100c918d2d1a765d5490dda549e07d5f65373dc1f5d5d5cad3449da27a1bdff72d68cd957cc364154a971b0e003af990d830302047c435bb500673065023100af75c5fa8396efe23e59c02cccc38c1c431f1090b4e6273e269a8a8ffd6a065aecfbda9d8c05d7864910856da8da5ae002304cde73017737e9bc22a9c9c7337b3592700ecdcf44683bddbaf3637bf8ca614c99a8d8392697d833d7d3a7b70e5611640302047c435bb50067306502302b1ee6427c381de3f9c4d987e452956d6a2f4d4eb0bf938da12219efecf9fea7f4c2adfd795bf9c57361c331607c3e510231008bf92ccf233c8f45ed07156cf51e4144ed95bac9ab6124c71f6b3ed4a391436dbf955e8feed6b7efb8d55e8b642d276c0302047c435bb500683066023100c1b2971ae08c3af8b8ec607c9daa988018e210514fdbe8a846b7190f10e51a5fc80b5d01c05d9104304823708b644bb4023100c8f54fe9f90a008db15405b09158dceb378ab9de586b4728aac0bf6995448f40d42bdc155eef83daf272e313c3a0696f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1d6a6c8a3c7b1ccae12b06166f4d8628d08ec63d0d9b7c45ad58f8f9deab891bdb9629eb0bfbbf5b8ea6e5de56ef81c023100e084d45f39681339e4cd6ea19a2be26a171fec5595651144f3534c69c28849c1a4cdfe1e487ebfecefcb98889900d3b30302047c435bb50066306402304ef5b359ada8984d27db77254359867881d35cb61138a29881abab436b360e21d3fbb0d7df8016a87bbfe504b1ade358023038ed7381951ad7571f72bf41aaa27200a173fa332b712577bcfb4680a0de80684712a54fd990bb30ecd1c0f10e5285780302047c435bb50066306402305c410fc72cef42e41fc0e825bf2ff68a9e4d8625858c225f50bdc622a5aeb4071870cb5dc3c833b075e5f09fd5f2e8ed02302717c171f052bb0b8698efff363fe64462ff3f198a588ef2c5f57407baae5518e167b4334b2e5ff973116569c87949ab0302047c435bb500683066023100c464a5df6e4abf9427fda68f8b9b896467b4b42a9c44adcb498ab0fb857c84c91a93f9ea9613d6d10623a8e0aa632c56023100b4fbe73e5452780a5a4f09ef1986bbab4d70fec99b889a8578422de57cca78720d375ebfeb639822646ab9a83f79856c0302047c435bb500683066023100a4216135151d522f6992a4fbdf48817d614bfa7bc284588223ef594da740fcd0d7026390588f7488b5dc9154fa2439b4023100e21c8579f238559431c0e0c9f03b56f5b118bbd6f76131b0be18a79d2e497d3cce5c5bd0a1ad8ab6e59d82694e8d52330302047c435bb50067306502306e253169b8e6beb1c928d26032e50fe0f842b2e3a9fbaee9e3d3200cc6ea01436a76b44145c98cdcd859c77b9ac6f82c0231008265e9417ba5070cfdb136aedfc7ed8c9bf6f401d23f84823a84fe11a8defd82fb9ad68332a186846a92a9241314a1bc0302047c435bb500663064023077296b0a36ee5058a57e89cb0d07710555eba9bee82f89d103a8edd609bcbec9734c7a1fa93a13b1c9b09ef8a0dbb40a02302860468ee8143fe07ad439647815cb3ba9c1b39b0e78a1e72c1f53b5796b6a8699abba56825af45594acc29d5c005a200302047c435bb500673065023100a347f41ddaf7ce618bdae4f38f9c9fa0c9d50531d78daa45b14ae54f4618d06dfb1c97082476821406a807840ffc222502301fe862a1baa435ffe63e25632d3aca7febef56a8b849adb77bea651616fbe979ab5f2a4b7ee2b3db0601dec2b7c729090302047c435bb5006730650230044cabcb6b80bf67e16303fbbf63020813c5f9a94c01d55908e1f906a96569ff338e8a2203e3597fb7bb5d587516b233023100acdc2793cec05921ca1d545d22830abe9de8b7ae5c0bd51c7ff0f89388670ba33151dbf2028454a0700e3f90f6a3e10c0302047c435bb500663064023058047f38119d78175c3f58d579c6ece889f9e04457a0432d47c325f8c69723089664bfe08f0efa00eba9b332d58a90f00230405a407ef20c6d375c240a2d2522bf6c3f164fccd8cb8164db33dfe229fa310b0932c6000fef332d97a98f154aaab2ef0302047c435bb5006730650231008bb5d14a46f146f1f1d9471458becb21e9a4fd1463cd6635d14131941b82f03e2c402a3f5603d414af55d7728b95a2c7023033af98882e4e38806ffe6a59f54360a81c7393ab54a379fce1b076d1e57ea7bc933e75e946cd66543a6cd7a0bcf587a10302047c435bb50068306602310097ddfbdc6d365291fc00b29167e4082b0530b276319e318f4df601f89e88daeb636ffb1a12b8f286522a71d44a81f0d0023100eaec98c69f96a14c3d63e159977e112d4aa2b23b470accf253a7921a01c360824088c2e69b2eb74cb7590c6ab7fb2dff0302047c435bb500673065023100da276ca646066b7fb9c8f46738b9bb27d192a7c67af183296b0a765d82f92d12de42a6f0d1567c2fc21d13f953e068da023045bf14237c46559bf9f2674d5d545a904eb1a86ccdb2412c0989099e90d0151317927eb1f57c60bbf8d93e092cb42a700302047c435bb500683066023100ede9277b17f9f51f13755e2912e2e05f8c41fbc74411a118ab34dd7527591f2c40e1cfcf6c5fb210fb5df4ab1f57df9b02310094168156b0f683447989d31f27cc8c65410e874b200f4563854b0a71f47e1c4c7e2daffa667584bb165496c8fe1fafb20302047c435bb500673065023055c2d20adc373baa1bc2a71b58c51bcd23f59d26321180ed9acaf7feefd4961775d9e88935b1dfb0ead1a8e62dac3087023100c05ef383907789e26d955f8c91f30469cbdf9d98b5b2e21478f87b116301ee8e0b983ac749829c63bf507f647f8f3caf0302047c435bb500673065023100a19a422058a4a5c60190a433f0b4e02341c11e8c86c0e391ee7f402813ebbc96e53d6709d6ea509eabaf1862188bf97902305bce377b11acc86b0291e0a26b11d6476b7da5f88974fb8260131347ac1d95f2efe2f8cb3eb9e553ab09dc8e0a8439590302047c435bb500683066023100938a1196167a6be6fb31711aa544394754b48aad9355967b79b42bd80373ed49d24a9f40e02db8881294fa0d742a776902310081a6dabab4b162cdc9d9ac0d889b2a55e2f64ccb5e402021233976510dbc552a822205699ba2d0f39de648058ee3a6c80302047c435bb500673065023055dc57b95a54296c0751424417354e7cb9179819f9006c9c2287a9528d741ec57ad79a849e5b766e00110fa082ebeddb023100d2ae9c7bd4f6d6df149317a8f59705d8df8000fb92c11421849570b7e9399564b0c5e28779a8fa00a9c0cd1d62dc7ac40302047c435bb500683066023100d834d28105d408efb8ff7db52f17ac06364a85458ff7f5f9d1046a67bed2b13f1561b5319d011efd2c0d863f2f030ccf023100aa68b22b472f7f2fa79a80ae373d9ac6431d92b25e92ab5885501b2e3c779e8457423423fedd8309dc8a835bca9875bb0302047c435bb500673065023065749712e888cce9fd9ae35d0705536fbfaf95336e3165713f043067e803ad4e2e38063e9eecccaa7a04efd25129161402310086a7ca65c77f102dfba0b31d76d3af9a9053f1fb1de55a36c69c687a4581d1531a39715c6a80cddcff9f11a0a2bbe39f0302047c435bb500673065023043cfa1d6e6fd852b76f3ae74efccbef10c267069bcbe4982346cc04a2f833c0e1d32e40e681ff02bd85d0962a9db41130231009c489d0ef55d98058b1e3a87d803d91d8c94593c8dff664643324c55424af7e5a1270235ee85be38c629710fc8d23c2c0302047c435bb500683066023100c25e9347c5fb6a60f4ee9d8196154d889821c818c4a06d63b4c635c5d6f4a3d4ecb4b15fd9dc545112d7d76508682325023100b5aad69eb3fddb733fb64d96acccf49651aa7d6689e59e00560cf941356ac4380bedbfbf18c3163b517dd3f8ca7f8f0d0302047c435bb5006730650230602d854a2de4ee26a6e43bb1d471cd1632598cf2cf05d3c66ef82edfc943228156367323b51b686490dacf43435d9434023100a30fa9ea9382f6e4aaf139be99a971c94d686c5ef58fedc63a80befebae2d40106221e8075730b0783d6d93a21cec0a60302047c435bb50067306502305e6e9bdc994e0bb2cb2cbc64737f6e135ea4bf57fa584a58bbdd3fc4e8c76e79f3f6afa161d36865e9ca6c08eb4891ed023100a670e93716b3ca7618a14b561b0de821b84d9f3b7a88770681724c78c8b6d46e424644791c62ef4fa26740aa3e24612c0302047c435bb500683066023100d9db0322dbf2ae23ce0a10d2c43297f0bee48e323f4b155be35be59ec3657dd1addcb42f10084c6633acaa4d213befd6023100bcfa120e54701594f9df087705ab11ecc91e2f9930f06614b0e87a5f0539bab10eb75661f9fb55be02ed3c84557f5f4f0302047c435bb50066306402300c02501f00b0ff2bf6b5185a127e0ac53fad80775ef6d34924a47d86fd8feb43c118e53051b6b0231c5553b71c248508023076f0c82137f799c1f0981681ba8a6967301b7b1a185008b3843d2108cfa38492fd565e75557089d7dc8941016f20e07c0302047c435bb500683066023100de145f357288a818366e604cc75d0c86509677d15d3404e79167929908f4d36040c877567d407fdedf561ad22bfe078c02310086bd5ee596cf7cbfe1fdc2319c0af35927d1df754e5e203c0ddc3cb5d52974756fd062e52b103cc16e7dc40a6a54023f0302047c435bb50066306402304c95de95b6c7a0ee27d20e7a71c70a3e53df7ff3701c5564fee505b612f0eaa8ba1e42fdbe347deb47a41245090781620230260e10fc6aa9372bc69da06e3068f12675b31604ec1fe94a9967d33eb283c75b2dd89ec5d12b167afc10bcd511c4415c0302047c435bb500673065023100f281073a5e33adf9b9298ceb735b3bb182a310b8e50f16776cea58e1287da7759dcbf0280fa02b9d04833e8c156d87b602305ff1c24a9c1108efb02eea521f114568a5de3b4f240ba242a4fc597916f566f612577c626fd98ee246d05d403ed34ab70302047c435bb500683066023100ee9682b17fe680e61cdf617edd5a58e36c4533d915febef61d85d51999c220ffc09e3520e7fc3ba2916645e29c73d755023100f56e887da506be08dcd8998155f590ae49682d572cf594d52969f4a9095a52f8d867c0a022f0f7ea2789483416be30e30302047c435bb50067306502301bb492ef29b70e3c7e0ccec8338afc087b62181a131ac2dbbd249460200017edb5d117c39d305131abec7200d65a9f6f0231009cc2eb3e2fb5a394cc1b4c69801870c04599eab2ac2024753da48989c9d0228e9f8324d35026e347f55a2840334c5daf0302047c435bb500673065023100c274888e3893f9608f385bd7b2f6eeb46f17be17cce10d8b077934627f2308267d84e90307851fdeb9b3694b4204314b02301fb4c7e6194499485232b993812ec4f79586044d257816f9d86c1485c30fc7c01c6150db906d443176ee1e6c4756c6b00302047c435bb5006630640230656b771dc1456e6ad51b3bf2132949e29592bf36cb2edf616f3c2e1e8fa4b975e4ab506a82addcc5046eb7228301921402307417595e2843c82d401678c9a92cf84879fa33819724e614f21611d436c33299f9b0775bb68d577f62c0f848167497a40302047c435bb500683066023100a5a434a92c2bb97aa02886c3e65b43957cc4a6ae11fbfc9a2c2138d9db0f967546e379255349fb2bf4b93fbf0ad59d44023100b60cf1081ba383f180e4915ab4081b43c5b7e200462c9c748f1f2441362b0fac519b52db9be6069e4314f3034dc5fb120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1f6b56477fa6413c309292aba5c4666fabe1867d990b2fee52218ac3a3cdf550c619147ba0784d9220e1e5c17740f3c023100da3f85cbf168ab5a5a3008ccbe09cc353fc09fe8997d11d2ef8696f89acc392cbbc23782d90d913b83b6e4f9a4932ec50302047c435bb5006730650230725eac9a9d3d2811af585a764ba401d9bf087bd5dae43697bb1c663a2aa75b50f743318e1ad6f6cd82ad17863a60b7e8023100bdd9808a8e038994478501fb34c8b327fe01431c593e971a2263b91beb9c6c2e534a513acd85196295040307bdc94d510302047c435bb50067306502310097c073f46d5bb6da441400bf69413f805d29a9bf56caf3accb799b0d7d0c1c045de1943b4155b98b1f5325fc78bb0d4202305cd26fe0afadcb4304a42c1ab4fa122e98f407b3fa1fc20c8bbf10efc289765796ac3ea32a6b2c432a504642631679620302047c435bb500683066023100cf7376ddaae3a050f53c206d50ad1fa49bac154373b0495f5d442fd3de3b6a7c67023ff0cc7f54890fac3914d36b6239023100cfb3b114109371b4f8a60da0588b2cff0ade6d56bf04a1514e0e827d77967c6a4c8f51bd97165d0489fb94a88eb1ddd10302047c435bb50067306502305d71177a81a6029fc8a7a0565a382a68f52a416d4034eb0338f0b9c09d6e49403276e297216f3d2fd6bc18645a893fbf0231008864298e65a2d1ed72a9abb7cd27ce096be6c203fe71303aea564a5fd5b48e791c201d9393e74b4738ab3a9c95b5b09b0302047c435bb500683066023100f300562dd929ba6d11f51e4e07f6067b2b7794d97a2db469041da775f52593bbdc2e35b839575268b919e793372ef89f023100e2e4375078efecce50b2b039a5bc833b6840ac32060562e0b653f351f931ee13ccb9e41a000548fb77e6c246913983680302047c435bb500673065023100c576d4aa2e74351a106602e583afa2cfeaf39c0c7a0638a2bcaa653210f6e85ae89eee409727f507a28d954a15e9212702300cb20d3b1a69be05140d935f0406eccc3caba97cc6adeaa6e015900e29ee5ceaba03072f112f10d5e72af5ae3fa2088d0302047c435bb50067306502305d1a434d7288d8059e60199af2fc8fe7dd00670c4ed9cd1c4010336bc5036190246680fa4c8d84f12df27bc0a452cf97023100e3742f2977cfd1a45c33c922fcb3a8b6868aa9807a7f9cdc6269cf2b25227c0a45e37405ec0faca8acebf60bc4efcc490302047c435bb50066306402301648647b8dc87a467915c3eda6818760c45f784b54e630c27bf068ac3b19627001885ec6cf90f57b70722a92657bff7502307a0f4e4f2df6f291e14bfa70968b050440bbff98746855c3b80c587182442698b1e1fa2cafb34e5122088da87a24a6e60302047c435bb500673065023100b38658d54e432b72b46aae65affa9cc2dda79a8d1ee270d735efdfe849cb54d87f02d82eca3a0e8b40afb0dc0494720a02302b13449a58c967afd2f094ee539380ab51800f3941963d5e163d9fee96f0c91ee17dbb332d0e56c4e68364bc2c35b3e90302047c435bb500663064023033230a12fba25040dbe34042f4414bb6cc259ba6f87c63ca655cd98bb2a8f3ba989c49504870693e1dae95bc5cc79ba702306cbbf84cc591a1d6b69020baae42fb418018577747ec1b9778e621d8058d7ea3cc4eab35e41dd5ba2e35cd5a299d44ec0302047c435bb500673065023100d006c9962814beb70f228556b937ada63fc56727f634bd86195de410b502ec5a2997e7f327dbacb1b2cd7bdc753629c502306779e6b8946213332ef3f3fa3a5362e4f8b185d2d2ea12b97370214bc12074488fe79c603aaff320bfe133ac595e75270302047c435bb50067306502303dcae50cb814c970c43b498cc9fe6b730d0e9fa8800a144f62236633e31953eb9bb93244ef289fa669d82692a9e44ab8023100b4639702651f53761f28256641c3543106a50861c8b362336e5eaa157940093649935d08eae00d93e61de1b3e8942c840302047c435bb50066306402307a6b730a2ef488fd77dda641cf651da975203b28d131ddc24f23ba21fb48675da8993f45e919dc7feeb2c3c8bc1963dd02306001bb96be28bfffb69da4b1b2cca2f866000786078b851d7a343ba98fedd25619015dcf29fead485d82a3a5c8f194210302047c435bb500673065023029e40bda159267077b2734c516b6f52e4a72115521ffa2c0146d393480a9fc7a4ebb65fdefb19bf69c1c9c528560d82e023100af7899847e37f2061eb26501bc4bb7fa7b6e385eba7957c082bf0c759f40c47882861dce709b55876e4a16840f2bd7720302047c435bb5006730650230480ec9b6e0176f15e78533732064d0d4e3bfd230373b2dfadeb2c4fdd1db8b833b0403c329e0fdbce43650365855b1db023100aae185f572f7c2aa904458a7e0e1c32b8a2731ff010943bead95fba524b7ede45dd30295801e6c4e56b4b70b768e9d2b0302047c435bb50066306402303ed239db32dd800243845bc40bd26409307aa7f6fbc472fc9912fbc9e0351ed799814d02e659d2d252fdd2183b1fa62002302d14d4f0b89f923621cd17de5e6302e6c698a38713c6ffea2186e18da27d517326c5d08feb36d0322507067d98c362180302047c435bb500683066023100da3eadb0bdbc3a353b758a6d4eff3723c70d40803ae36ab2bf79e5cbf2a3488204a94b3fdaf7be932efb87dafc5bddea023100917bd657f831be6e261b071206c08efa28089e5978f9267858f96f7de636e5423d5462514bc4baf5af3e51189b70bed30302047c435bb500673065023100bef8cb88b0728d0cedca00137495b36ee274afb14afc0d2983e5937acd02d245a729a1dd554360925cdd3b77c2428a0302300bdece41fac15dbabaf2e3bf373ba56680cbd7e2f32bbd3857bac9c9f34971d9e0663e98677423e8a708c8b43926acc80302047c435bb500663064023035024b05a73e8b9b1e07756d779162a549dfc6af97e8e0ea6224c84f97054354ccb06c886957615aa6abc9192f02e7d702307662c49a6858d571a79cafe68bb75db6b9740df325675b56310d98e3467d3b153ba3983568377178a4bd63a56a3a22e80302047c435bb500683066023100f8ce9a3e469f136bd550ad22cab8b88527a640694b9ddb5168618b4c30cf04241282bd14ad29784e6aba1ae4e314bb160231009d1c5d0b964da75e1c0024a7eeafa672d95c188942c86ad060dce55ce97416c565e0b487bee3aacf81568c2c153d33140302047c435bb5006730650230191d2ef01a2f22c04f0d1524b86f3b53ca4d173104c6797289193eca8179c83c08610e83831d0c173b4597207077524c023100f80db6783734d188f8aa0eac01e14edaaebcc5240adf3b4356970674f984e49797801c773da80a2d8cd2ef4405b254fe0302047c435bb500673065023100bb925d2bc30e66eb0b034f91514f89f4c3d19582016ffe6eef767c3925d9497b577ef3ca9da66ad0d4752c169b6766bd02301548a6e8b53f6b11fc88581a86839b3202ebb561832ec02ca85876cc90299b089cadb98fe5c2eca236e97c463839cdbf0302047c435bb5006630640230372aec00d5c5da92efcdbd6226bf9a636beb38a942794643c7772e777f2e3c6a89333c60f4edaf6669f472dc76c60abf0230078ae2b7b052ef292abf2418b9d3261aa41577ec30097dac586018f953a2c34fb992c5d87dc247a1a684716a885ca3960302047c435bb500673065023100f58d37b1722d21998015880a4c82bdf42c80d59303acb774436d31d72d8c7b9e2ddd4f55666dc86b7c660c8e212235eb02303a4dcd5c4334a865f0efb35f4e5001f30f0f956ccd02d37943e6a7a1dfc55ffc4ddd626a3508ecdcc4a511586b7aa01d0302047c435bb500673065023100fafd4e5d202a9085aa76f6c7ad9fd493877d9542716e3b5c08d97bf600039034f0899a4b099f1b5626f1fc9243c7165802304ec80ce712a0316bc42e0e204d8a4782b6d2018b933a34bf8f44fdafa38d0a10d1cb83489c79b7bd9a969bf4dae5eb2a0302047c435bb50067306502307541a1e69c94ba3f4076c5f8f91f2cc8b0f25317e7b191f91d466ab609e21134c7ae1f7741f4c20f2b2c5fdb1f2506320231008077c645a49cfdb04d80daa47de286735483513a2170fda7b655580763bd9832859ea739c7c986907105b551f22ffe6f0302047c435bb5006730650231009928ed1b7720fa1228e2d19e6f444bb854f8fc5954c34291018224e0221c2f6ac7d147c7c1ad46b6ac1ca2ef2fc83af502301a8b8aad14c9d765982f2b45ee678ca513594881d60e811ea6199339069ca4ce1cf3af08235653806c5ca8c2da890db80302047c435bb500673065023100acd770f2d923c3f4feba10a70f93aa0236dbf3620cf861ae1878f85b9d829b8d70b5ae9f55300bd83502564fc55c6ca602305ca84ad8766e938e4ef484654a5290c02a01d216169f035b08c7cd84e22b867f9aa0d401dcac7e6a3dfc47873fd9f6d70302047c435bb50067306502305e53faf6df718a88caaa977ed929f25f5434f17725e4cd32b113a7b9f2dc3b0f7e440d20cf86aaa3ba2fc5c85f855bcb023100bddc61066b9ec8c813cabfee295e0a1863c0347f56d3a18bc5098b57db445a4539602484814567bb91eb4714c63b49fe0302047c435bb500683066023100f7260ea8fd85b010360aede6547b0934e4f4de3132e9da3fd8f8e7e64908640f015bf6da9a6556fca441eecda68de3d6023100ab28b67153b13ae56c9120c35ee822ab897b27a9439984eb6de9f07bbc1e5f7f5f0cfe99ec8e81264a0d99afc2bbca290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f60b47f82d87bf588d824b47e67ebb04f1abcd1f9ecd9e16235ff61fae7ba2eca629989afab5a0e46c8c41134f4eff8b0230683b924b9fadeba80a670665ca30a3dbde4fcd41e81ecce4ac3fa981480cf2f8b0b991acaf04dfce10f2891f4bf48d370302047c435bb500673065023100d9b1e0b698a2f05daf0184997e5d8d5b133dbb4c89c4cca70b2f281009ed87a680259f65c23021ba67c461a0dec3743702306bfe94893980d2ceadcc77c9a36c59ec17576501171eff6812832df525b307dc38f7218d4d521ef5deae361199e6ab8c0302047c435bb50067306502305c1dfeb144438b9808aafe2639714dc40d1dfaba27ac86a50bde679b9d73a0d51ac5fd31c64c127f43e0b13fa138007b02310098c585de31abc29d8f842222ca2ff537988bd8379ef4f976623346aa5282523af894fd485c4b5776785ffcb19e6a208a0302047c435bb500673065023100d9addbda3b4d8de1dcdbb22fdbdbad07bc6478d6a8dbe5bb66e800ecef558657110439ed604e6dc2b80cea0f612fd8860230717ca5db4f9389320c4c10fcecd1221f8d9e49593ebe6e6e6760f574722b8644cfd1bacc3470b1d1ce5fcab84c2ae7fd0302047c435bb5006630640230383e8364701debacd5765947d20d6d4a042b331133e3064896a451e87c37ea9abdd6087a26eb70b9c893c95b46be5fcd0230095e34454c5fd24ed6cf8284ea55d0c2d98ad20f7c5c175e410d734c7c984e3fd7d3fb7adbdbee29d976a7df3a189fa40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230722565012a86a81b5ea5145b10faa4724e003811f3dec1a111bfa78e703b8ac24b2f46ea61958aa192095f6507376849023100d9ea7f6794a4d7f7ddcd1362dda3c1cac54d6027f3d3079a9206566b21b10ae1f0b5c3154670db98df69b47b33a9ab1f0302047c435bb500673065023100aa5bcaeed128751597a904642c2b7b7d121b31999c3167fd04439e2b247d05d9f18378311a335d9108d221497424927402307d16b2eb5291400fd9bf2a6411513efa0cbf33eb5b2de41265de1177ef4c0b2a902e05ee40f9e650f53aa80efb798bd80302047c435bb500673065023071a4f7a29e7c7edf6ccec8057f09bbec6db0d02a44fbe9a7720fed1b020bed068c4341008df02a95feb5a1f9ac07282702310092bf27e2a4e1cf607e16dd464e0bc6e502832ed316cd7070f73dcda6d514cbd0112b5e5f216284a44c16e4f0a800e4590302047c435bb5006730650230180c8dd873ae5dae978748c04d0885581d75cc1ce9064136bcfca4b197484d7c5c74a31ac25ce239ebdbe99e74ab083a023100e9206c50f674e59831560d50e45d9b7358779f923faa495453bf334eb6a31020c758caabf8dfd1afe3cdee2de6f3d8180302047c435bb500673065023051046433dbd6b158f554b0b25e9b863f16af0a80b1a886f3c01543877e855dfd2b42853809566749aa28bb50e65ff4a6023100c213110d4c7769fee9106c14bab5c16fe58e2c9372bfcc22c1212e14c9a4ecebb07f7ce52d2c51025a8e7674c5a41d360302047c435bb500673065023100e4578de5662383552f16ad96c10312c4f8a39d1e209c6e9bff415921ecabe11b3c3d32b4e04c9e1c722a625a9217c036023007b22070fc1bd3fe5fd373a0a09fa47993dbeb8ccae1da19aa3ea8b9d75d1d4a443c679b0ab24569bbec8c3231be8e530302047c435bb500683066023100d7ed7183a807cf3a6daddb75a81c939ce166362226c95bea2ffb84a71714716e766366f0677b92699c42eb6644a21e10023100828186a125c3d8c18e6251cb44b2f7d5c57cdc35407fcd90c37e24ca324f520a9beee2ec15a59cb76fe1ea341c37902b0302047c435bb500673065023100873f02b6e2d7113f0001102fb852a474877349cd3e3e4ba1888d9a02c7fae71fc97fe9e33bf6131a0b170e5cf85479ef023057201876b42c06b9af7f2b907c21d2c16f95f0a94a4692c4db35def367105a55bc3811af5eed807a2cf66556a58be12e0302047c435bb500683066023100ccd26529b6c63159bf67df189ca56e4289b404cd333969dc7fa3a0b3ac0f08cc4ed05074a9db1d80582a13aa20811e3f023100cd859398001b1eb173a030f44333ffd110c154a62ad9e5a8e8f162b8f5ce22b2f573fce46c4a123b36e2d7340b3b07700302047c435bb500683066023100d007d39eaac86206c1cf898513026e84420e033afdb1b12d6f3501d10d8764d935c25b3477b4e964bfb878c05f31005f023100c419f3e2c7e7820f2a7afc326e4dc2505ceb9b1cb07e6e6fa66091a4c652d91413d768658fd36bbbb00de3d2c751d5420302047c435bb500673065023060d39526636a63a111a8b4d36bbfaf4fad8bb8b632630efa4ecf2f8b9bc59919697310a3a4960400bf6d1ba7ca512de4023100989b7386799ea4a614d3e01d774757a5f645491f6b22703dc465fe6369065e538b3d81295d4d5561938f0c5fb122e2890302047c435bb50067306502302b1715f2fff1d07bf78301ccad7bc2bb9c36be883e73d80069acf13d7635618dd00dba0ed1e578492daa3f1208caf8b8023100f1694784588e5651a8a5a114a1214097165344fd6c5d2994295fad8a56ec25d295488a65b806e404404a354235b9aa580302047c435bb500673065023100856c7fa4c38e0a21d8b7e97bface97ec9a93088762305a855baf4b15565395b600bb7c1be98aafda8b087bba18c0afb3023050b3eb586da0a0f127b2b068cd2aac0712a590ec38803ec4f74e0a79662ab0d2663b03435dbbb53e08b929319e1b23c40302047c435bb5006730650230118c95dc034acfda2a7936e2325865247e7d69ad6bedc44ec6e217335c3937257669c3c10cf054312b67814a9ce5b6ae02310092e09e554ca6be7c1be33f6a004da8b168f57dc7cf15d7a11e710a1b0f6d83c813ddfb047e3195a33c7b975081473eae0302047c435bb500673065023043105c555b6977044e13698a31695ec4ca7a94210a28787144fc091d8db17e518fe19edd18cf138f2ff86e27160fe423023100aa68bc33194f78e76b9af83d69cd731b1e30892c32e4d587c866c884339092844fb4c7cd50ece22f75308045aeb6cb910302047c435bb500673065023004638ccd7e9cc5ff61aa846db7bfe34e18791c1305d59e59f9d91f3988ad492ea2d3d7a46621a514d026870f90c1b850023100cc651b71697e5199393f30db4f92adaabdee4de878260fff09dcb12cc98796b906d94c297ff6d342c3dbdd48ae0c73e60302047c435bb50067306502304c542f3087a756cff7b9ff321ab8db67ebe93e8a0cdab5a7dc608e021c50b06e5fe493e5da47c632f3b1b80ad00282e6023100f7abffdb49ec4db9d8f3dad76cb4af4cf805695fd9fedfe718e50b183103f7b88bfafd0b1c1af6c2920e270163d5b7a20302047c435bb5006730650230257b31a702cbfd6e56391aa90633a57087d38f47f5c8bc3a739caae73e4ddadd5199a5fd33bc095ce327fb427495d654023100ed3c7329f398c75554cb30cc590998188fe15ad55e64840d5d45db6071f193b2ac98b14c8da94ac58152e40be408e6b00302047c435bb500663064023042c687cbb36e59141f6c7698e7af79273fe2be979c19e63d0bed9530dc5565f365e035dc979e519bf76422fcdb3076d702300332140eecad82d14563d917af9402aa8b6f0ba515230d669358f8591e01c75a2e52aa376acf8a34df1a920b71fbb7380302047c435bb50067306502310094954166ecc3d0efaf64db32d4c986147dcabc2b919e53d83e37b8026b7f9e4c958d3c3f40ff836fd4421f5c6f1ac91002302e5e8fd95c7f34c7560c774860bee0f248e5b584eadea386b9282088d52368918e7ffbab1e0777b14e81256ae90b07c20302047c435bb50066306402306c91b3fe4d1552ecd61785fc576bbbc654e9770efa61c6edfc2a73d6ad52ccf67ed4488e17ab1d30463341e58f829e6002306f1374d7a3eb230723228c34574af327a79a738d9021b3f9ec22ea2f15d171a4d4c851bd1692a5dd8b71b4b5474bebec0302047c435bb50067306502304e6cb216f21d167a967c12d93a1ead5a8621f625872791a707bc34e9933b07e3138f03fe7397d9eea76d6ffec28699ee023100cda3afe912a0d9a7b85955daa20742366c943d9598906eaaff1acc8d27cd5aa476b32a965135398b69015d62f80abda90302047c435bb500683066023100e090bb4a3bcc861d2f33a409115703aaeffaf4cc640ae0b57b428d0b71c5615c1fcf29114eb147a721d804fa260f7107023100e01f6e37e94dc852e304b5bdacbec980998db6256f1d9aa630a94aa3b9442d53411fbffa432ff01826f66f5ac871b8e00302047c435bb5006730650231008c31f73cd89a16877edb6d98f313c58e3cc0bb1271f09df8e8d3e7fffd15cb222143f22d0e8ea4426a650c1880fb45350230250b21ddf131b93f6abd301cf1288f14447857bad0a41f34464eaf81e70534839c29483f5e2c1f5daae425e7352a01d70302047c435bb500673065023100b3a6254a4e1f8a54ef69eb52cdddceced69cc50a368392765e360a4336ce1da1702ebfd2c5cc24ac009a09d8be835ea9023059e28310c7210fb84faaac7cd939d3fe5e9af0d1f081f1648b9af297ac5ab8fb6b1a24d0a649809150e60148108ee8120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230372bc52b1ddcb97fb180d8cccf3a10aef7e2ae0671538717c555f7b8da463d2409a173610cf28b25b6d9ed3a9f26613402305ffffe0f4d7ef09381c4de67ad1756a9b41269e36616cf1d88f8c11082d5265bfd266d6dfd655949bc74a2eb7968d6530302047c435bb500673065023036b35672f4e70c85cf98f59bd3f31734e97cea5f2f194274a3178e7cc9a040d92b1cca232ec43bf512a40724aa89cb93023100d3c79af8e0a4e020570a84b099c20751b14093b451222abddd5771d13f08900cbfc3c0d9a6de06d07f5e6bd9de06b6310302047c435bb5006630640230502fec15860e2f7f8ee91d1f9379b37163057433fcf1c7f758ce7024b8db4e84f9818a6c49da873ce7aeab38841e9e9202300578ab703f8569fcd134c954140c7197c89cff97da50e486b05396389ec7fef6d19c9fb78c5a3ebf6718df0e84f465480302047c435bb50067306502304480f59eedb57b03769a776d885f40cf1f24c2a185ca5afb4d4f2ef466db0d009d6c2c608c1965da959d670d21693821023100e09fb0f266fd9a48236d8e53450a7bdf355861bb1c9a96a8ef16dfea3df39e159f29bb5d403f5ed3041aadd0f7ef9f590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055e00886f488ab17bc482585272664c3035a217cab6251f2bf2fed6fc2c93b4aa40f7879ad8dcdd61a4dd1a72da9cc7a023100efbd9eb8f7ab1395428dd445def37a6621eec0c2189fd1ac7268de4deccc34763b564e969d6bb9ec9d284b64e89340360302047c435bb5006830660231009fce09a599f4c775b99a54dea3e4e054e6b825ba480e1cdf6c9643514eedb22e045b6ec1a5a74509724dcb7163ddc917023100c9fbca9429644469ee3826118c072c0eb82f6c2bf2004222b1370127ed15be794914ea314bc6bb6847591cc420cbcc010302047c435bb50067306502310082c889e547793479cfc0e02182a5d9d76ae9ba229ff12354674cb056153b73ecc0c58e0272a0e62e85f663675932117602302a2504d42b89e6506f197b422e648b4055ffbaa72759553e45592876ca2c3dbbf519a419f34c9e46ad12e0c105bc302d0302047c435bb500673065023100d6d099cc7b403e792f584fa8c972fdb94b72cbfb3015ac6ee0a79cca9a71663a3e729bdc8c9bd80032b445edb43ad71402306001b0d42cf62d083fec3159b119e464bd683910cf3f388109d990a12b1888a1977ffbd78ac65999eadba3fc8e141fb90302047c435bb500673065023100be411cf0916bfdf3899d059d7d8eb1a15368058b5d2428259b953bf52bf296fd166eb1865dac86123acb4fd79deb1aae023045fa5ba5e986ccfa8f3cb4eeb88a474165335c75814f0954644bb3ae751e9578bec1cb2bf4d8e92a0b4db3d1367a0f9d0302047c435bb5006730650231008a033a8c0bfc27a5a2bc1ffa5de13f7b02b71b3d1a4be6cd7dd3e7feab7764a0aac33c668748d9051dce4d6dc91a9fdb0230317cd7111c9a06b3e08fcf95780a3e1401334a3dd960370cc47b678632552ee7bfb541806cb929f05198d540d7f0a9dc0302047c435bb50066306402307f3cdd1e20c2696c8665a165ee3743da95f3e766aae9cfe8c7c4c1cbff07eaf732ca1b75a140868ba202c9b36154396a02305fbc0b239c0129a6ff5626b2e7234de9e6ac15c1bf875fd757b2942f41c5dda03232bbc8851c1105744abbc854a6c7120302047c435bb500673065023046ce0b2b8997511a51e7866cae6b145dd5b0b352dfa9bba49f4680f55f1bc9100cff2868a24fc1a9c5d5f8024f73e7e3023100ffebaf5257c4173d309ed5639309c79c675753da26b325fe8c6ce62f3b52db3771ff17f0d888a18b09da956be6b10c5f0302047c435bb500683066023100dd9c835f81bd69f0937e7e4aaeb5c560d45bc6e9b0f146fe28e4389290d8e7317847f10d7d9ee9d6e5e63271d8a5f196023100d16180821bdf10fcedc83aee14d99c4b1af03f6103ece9592c3ef7e36221f6833a7ed90cf27e0efdbf697d46d73d0d650302047c435bb500673065023100ecfc715d78bd9fcae21266e39588b7f942368c0d70ae118b7bf63a8a322dfd844419a0d92c514bd0e53c7f49591845b802303e0978b8552bcce51eecdb3cc4b0f26efe33b31b75184f0c0b695e0d9986ce8b78e9c240251d096dac73ecf00a313b8e0302047c435bb50067306502310082f6e413d94ec733817333cf59798a4d5bbc3621e29b1a36a408691bccc0bb8da4c7327905941dbfe835267eeeacf5c902300f7b9dabd331c0bdea09e59715c3969925126c96f026ad0c1d4eedef7e557f70709bccfed78c58c49802d113d4d5294e0302047c435bb5006630640230387012107001975f51934911fb7e0b9b7412b9e9e2ea73e43581a7973b92092d4239c11dec6a13ce4b56799c4bb26cb7023008d58f9f64e882e64fd8af8a13b7557831bfec285930b4d086d9e62fff767cf2ddf49c473c849d6bfe4bc7bf79d275110302047c435bb50067306502301c7c433023ab7ba07e824f999ef50759afd67ec96b16308764900816639ffb17a0eb6296368f3db0d538984743046a7f023100de17d636001cb5f12a399cc2690bb635ad03a659b3a5d37e56f972083744fc34f4bb4b9bd2e5b13ed900fd0cd20bf8570302047c435bb500673065023100aa7d364b4f2bdac7bee8d42e92bf5f09e88e1583c031bf9e1321ed6a2ffe90dad72ab89f5fadb1f782c30236adbb71760230191909db35dd6e2bbe7d7769423eeba37c3025fe3530a0081ef3de634f6148356359a3619d58178f7fae36ddc08d080c0302047c435bb5006730650230599a1edce476e7e16e05dc7102ebe61ec91f12306ca02421019c2bcc1ae89815b7a64aa403d5e77b909703c7bd8fa4f6023100d5ba93812140d3e15ffad337e185416b1e4a37f6896c8494375096cc8df6b14a0f7f5ba11142bf078157e970908be3d00302047c435bb500673065023100c2f4f4f962299abe586cfd49a5c5590f573ad6ad9cee960c4efa4c2c7503be24f968021de0f84b3ef126472c4c60808e02302275f3e1a2dc817ceff11de57c277e823315123babbf5dcfcba17ed53e66f63f2f79ee81aeb2bd89323b498253b5b55b0302047c435bb500683066023100921909e3120900ddc42e4738a3bbc6167558e0e18f20e5ff2d93ca478f2a9eb6e2e0b39849b7bab01133110fef6d44ec02310092145e40e0917d0962c82865b21ecc149564030d9096c618d4f8d2e0da4018e755972eb44b6a2940f1ab8be1f9e6189a0302047c435bb50067306502302a900fe3c981122d7d919238f0c5ab109f496f8ad573018dcc8b9e10683779520ee49f7f142520bc8e82a1c0731c4dda0231008ef7429990f775c1e481ef2435ebc986056ebf39516223dac68f2471e2b1712631e3dcc15e33f2001d80f60c0f49a2af0302047c435bb50067306502310081cedb3d30536c1d5e3118c4ffeb0a48d60d81987d798dd9bee113159f496231c6322822a1411f713cf75c9bf4e2e208023078d421c6e8473af076f95d7416e12069ed4bc081d4f706cfad0b43e0107416740f793685e29df16fca3924686c39df070302047c435bb50066306402303ece93a12459e8e28e130a3132700ca15bc50589995a8b160e22ee2b0fe802207a5bc8740e17680d5b4d64ce2284ba250230512dcc9a73edcd847d44969da8293a955ac5258a2d58f4618298f8786d13f6d318643dc57dba562028ebe67a03cfa3130302047c435bb500663064023074ce43de35325423a313700fdb86451c1a3387512e3529ec6149c8ae93e6692e578ad0b32fb36aa3b7bbd6903a7cde87023064937626b84396ab9dee57d2c067df0b85bc4a9de5714b0d21e8f5bc1aee1e018e087fcb90523ed68c92ec91f6a310510302047c435bb500673065023100ae32ea8b32f630a282f3533ccb7581cbfa74a00079d2cee149b31ad7ce76122e78aa599b8c315d5218070ee295751c2a02304e2e22b9917eb575cac8cb50d4ef74d324d7f1d84d4c2a30f5118cb0e6f34dacc557bdc7098a709024dab8ae8efdafa40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2b520942b8acfaad1d2b5e214d14cc365190fd3af1545ed4da2342576e1cd7c5c79847f81324311b1ebe0f6173b651002310081b69ed7247566860512495db9d4b76e87ba303df654cd9b027786618d7863d6d2a5cefca63ff150c0382af81593ed730302047c435bb5006630640230324b2e942e915edfe6bb3d59f0678d38f675612fbb96386e1959534d1e978b9f06873358d07fcefd72dbe896a6013f4302304a9d6e7b5b803ed7565617d494104d6e237b16c2893d1080475755eb84996783431799a31e6b928b252a4b6df0960dab0302047c435bb500683066023100c735d21159cb4ec64d33d43b06e7d17009f4545fd8ea345acb629ba3671f73022f3d6d4fb1bd4c6598e69dc6c3aeb8aa023100d84f176918bd8de4e0c2d028cd13ae57636124fc89056af47b021b7883e84683040171680a90367b83f5a38abb04f1020302047c435bb500683066023100eec005dcc749ef33002f2b200c3eac9516fc8f5118af2e3420a00f9ed0f540e8830c238852c01925f49dc7e998a01d7002310087b2719371dbfd3f38635b6edc5e8a034f6dd9963d3fcc2a35cdfcda100a7b36e1c62ba81364a0633bc6d63f2c5084620302047c435bb500683066023100a79e196c31f1fadf45195fc72d13bc37a6b3e701b1073f3a7b42ed86e28d6b7561ef037d85ed5d02cae8194786beed0a023100d450ee2bcec92b5051d1ca97d41e031e2aebc8bb7dc35b33d948fad5611e6ef7248fe33df4f475e318efd07050d9ceee0302047c435bb50066306402305f666e585d648b689a30b2943ca3283c8684d8ce81eeb2abb1adca575f5dd0ad634fcd3e13ddde608c2b979613bb65e80230792f74610937f3c300c3bb6f84173672668299ac7da0972c4d0fe6a8afe337de8c524c77453b420460b72cf79d7f67b40302047c435bb50067306502310096f1e2b37f2d73d3f89d88df86c729b0baada344eeac7f3d665472baab93565669b2c3ef0a167981bb3d511cf38bca2202303a0183d2f4e9c9aafd1f6432f8f6886d193e427a7f248fd73f72fed22b9e18e71f9b50da61c95346770b814bb8422d020302047c435bb50066306402301acc3a3480fa1f6932e3e45debb96049cee685e52ddc0e587e24514712969bc768fe8055953b9520d7586ad33b994e2f02300c7462612412e62b2ff166bfbbcbd7989ebaf95484a344ab0f804826fa6bfced7cfd3b8f0ce02cfa06ca9bf04351837a0302047c435bb5006730650231009c550e167120dfa3ab6db5dbe39ba4d075ba8865bba6e5b38ffc103e64f3cb11f1cc5d43c28889cdd28826f224bb5edf02303bb00180141288a6b9e09b23dcb2c8b9a459640e95e267378b597a4a4010cf2ba3186b74ab92aacdbd35c804999a3d510302047c435bb5006730650230660a0474f9dc2d2301597c66cffb811151a23af570676a5cdcdcb304faf60e467fc303ecb542791a4246874a3057a6d20231009743b9780f1f70dc6dc2bb8b5ffd933cc851b6c1a4c5810a4f4fc8156fa1cb17d8c510622a23715bfab1c6ecf3680f100302047c435bb500683066023100e35f9d2cda49e1be92648c0227651053a1b06758e1816177fe3775afa633581399786a4f38024b72f03c40fbb40942e7023100863abb986825526b41de46b981ab7c74d1417354afae20ccd57b3197829384d0d0ff15b0588cdc1b90aadc56cdfe4bfa0302047c435bb5006630640230377de5e916353791ab4cbe01d3a3e72f7e2c15b0104f6dc2580ae4da23ec11ffd7f60680a845f26f50369e5d0f5d31ca023003447861aa464667d1776ffe8a94d6840098d66c59cc804e3ceed79a17f69408d6d4a8a87c392874ab3fb23683da829c0302047c435bb50067306502305dd4a3db0dbf27cee8bfef9c2af8207db949a4bbad4eb91f70f055b5851ca9363f1fb15cdb71c7e8508d3df61609a904023100cbb85207fac5a54e8c734b5888be3e0d0cab76c2e51d408a5bf40dfbe8c75ee5bce8e1a457e47c8c5f4a226dfb9b6cf80302047c435bb50066306402302e755257c8ce6004dc9f4c14717a98aed143f242fdbf42400f2d385b4671116233c342a2eceaf3ecd33348422a5eb1160230613df72992780691e9c9edc05594b9ae38645e3c4c117001a41961514d6c89df2688f76a9adef8effd1ebdea750c5e980302047c435bb50066306402304d622120a9bdab87728f41d55f01ad49f90feecd1f59d79cd6a52bd1df25329052c5a01abf77a97c9478a98d14d9e743023039520ae32e9fafabf7722b0bd41bcbb66a4bf132dc74c7443e6faf3254117572b6d38eb7adf0357ec0ff2bedd911c1520302047c435bb5006730650230394cde8d0cf5f3e89d4c88666430486d5ded911ec555b76a8d7f6945b58f3c29fec473a7d24e3451627cb8c7753e145e023100ea82eb0cf6b9afde4a8695844c52ca3429b54fd4a94858eb08340660e740289fdfaaa502333f383547a0067afc9bb2a60302047c435bb5006730650231008fc9ff2b7198d3a931a8e984ac6bbae0984d76cda2298f6b85eebec6d6f436839eb785c9af28731ffd80f3a37973ff63023036d5627b6d764fb4dcab43f551016c5147b0742f0eb9ca7fe41238850af92358aa4f86b34209b79a6cbf62001bf4959f0302047c435bb50066306402306bf0fc59b873264929b417d6fddefc206b64de081e0feb3b0a848a2f6df8b9dd30a58b24ebc233b078d5c49345e20fce02300230b90d05e611653fb2c68940c415ba4afc41e92b83c5e33c8d80d2e932158ea8e67ada17b2a589bc5845eada529fed0302047c435bb5006830660231008e1820e0652b67ca5f93fd0a7fd3a1ba20c6b41b4c77701f0e5ef0a2e968781485d62b61e2102deba6eec020deaa33dd0231009c4e1521c9f64ecd737bd89cd89e553c85b4963a91d2242865bdc75bab1626a37f7cf6ed0c68a34f1302b8ead1b2ff910302047c435bb50067306502306cc0f4d931fbeb1adda5c17857165eb36e1c2cff3e931cce176c5776b45ede007ec7f4ea4649c5deb474dc65ca33c9390231009a1bb65ff19ef5719ca62370d0d6755fd319ba418bdf915a1ded0dcc8c7044d2dc807c30dc806dc792b758014286c9e20302047c435bb500673065023100f9166fb71491845e0c489de9b8ba71aa055ded1cb1f395ae66eb1398af1fac069fff910ed677641f0141a8d01abd2fd7023076a7d26887f7a34220443db7c65f5b47236b55dd6e487fab2ae0d57c893e135ee63e3cce5a30ec43e4e42705946eee3e0302047c435bb500663064023022073df8d094e18fbb88c3655be849d24f82279f4a81eb61c16b9fb7cdb5c8b3ac5bc2b551ba2ffb8051e00e7605e477023075a9e1748d82e54810b0c8c394296e058e0ab5b9f866fd7b6af542582f4de33d7e58a02260af3ab4d527751513ff39ce0302047c435bb500673065023100dec24d7c7b4e5b42f753fe7903fdbfccf97ee4f59e56727aeccf956865ea5bbcc7ff53ab2f6f70fc6898e288c211e7de0230477f6cb7be8eea050478982ce350635a9d58738984603f65a9bd6f45842e8924a802e627dcb5a7670f7568b973aee9950302047c435bb500673065023100ce44ffa9c31d08349564a03971edd9db068fc08a69cc48325b533976e3ecac667f41ae1ebefa716ecb018c23572a464102305857e1efa6b311fcdc6b835dd266e926b093c7ca525fce65340f051179a30a55947338ad186c1f19514f9e7252137b890302047c435bb5006630640230288529d0a9dacdd2dd7c5afd643e61ee633ce39f5edec7ff4a244905e0058754863c93dd2f3cb02edec655dc32f154d4023024957dc48e4731cd1a1766c75c45f3770a30cf9ac2e3295671cfe6d09615a10c795cbaa3f35f1b5768ffc10d4013d36f0302047c435bb50067306502301d8a3d1a9c283f5db3340ab0ff919b774a88e235496d282fb9587c7128ee2d02d2614bb34dd10dccb11909c9ccb687340231008501bc35c38369e8536423c077de3eee6e63b9ed695c57df18bec296ba51ba8b054abbf57fb51071f492b9dd1953f2420302047c435bb5006730650231009e088cbe09adb5bd25e074adca935bec28ff9f2a5a0afd36430ba50ddfdcc49432139f4604e327e2353e679354af938d023062e73ba6bd74cfde8a76bf7c25e5548f51f4f1061442377c67e0850837f29bfe724b467ad5ece5f8e683ff6b9cd4174d0302047c435bb5006730650231009ba2abcf6863737f2d71288a36e46f90d53fc93e350755a0b4165d5171802758e368c17f9865a280834a27f8e563d4070230116345db720fe797d42f10bb776ca55b65f0ecfbd4647c520729ce42293540618b24a6b30d4411ced1843f87e8abdcea0302047c435bb500673065023100b2a2cbe9ae84797e5696db7df106c1a6c106be4126a665f7715db50e33a15ec1a9aa6f05d8a88d1af7b7c0e5aa97701902305e5645078a0587810d18218a174e7c632fc74eac76f8550d814e35a1bf35195b756574957a970b9fab9865cbfb8d4bea0302047c435bb50066306402300dff9a4294152312044912f392c4b385a6848d0c418ddb88f93efb898f419464ffa4e8c4c15b0042d85911813d36272402307af8e73edcf4df7fc14df6d5cef341edbe7be5b2613ac863002517ed89b3ca56a5923e88d3aefb2ee1522002992d6b210302047c435bb50067306502306255eae567710dabc9810550aeabec1cef98a7ba4759bcff4495e324f29c43a1a275237d51a749ab3695eaeea8302a20023100d73a451e9ce545f520d488899eb80c5ac0af195d8c40c10b38799a8e4c363c7690644bf6a4175e4865d690b5c08af0ef0302047c435bb500683066023100ca0353c86386052c0a37990c85d057e1dfc1cf95e22c27499c7e99a43541da2c41f163247ccf3b6e41c3196700de32e9023100d5611fa3919fcb4ff025cd17254802bd21b1e6822543672f3334525b2ecc1080ae20283c635c0600457926e37ad5066e0302047c435bb5006830660231009d227aeb83a16eb7e4a1572cccc0d6a5d4b057e9dee97c7ba2ea38954ad293547ce343895b0b2b156aa438d59ec7f18d023100dc546aed129a4c05790c01843393a3a309fc32c6a122c6b6382db04624b6633d9340e3bd3a81c8a12c42c1ec8ce85d3d0302047c435bb500683066023100e22a14e33c6126f74c7043135eb4b21c805f3d32b1223398ccfd15860c491142d76e1b370c9bff891932daebc03ca6e602310087ce0c306301fada78795e5cb6bc61c0ff72d399dee2150e6ca4ba663b9a5c3cfd97e0cb389cf7bd8e321b40743020df0302047c435bb500683066023100a548af3317d9090e81c029828ea5d4970328f52c5247b887bf4c9d499f8913abfce95427831057b5648b51ec9cadf26d023100c92c6e22a70bfddeaee9bfcd4804a985f96d017505fdf81a6a8d9d8432405623807aeb5218b933621a754d8fef7a10cc0302047c435bb500673065023100bed3b1d8f93b944e53eef065dbb253779a6a40727d09e1126cc57731a201e9db82c530ff3fd2a7d3eb9a0c383add0f2702307db4ff8a25b3c65bba095ba12cc87a03a2a86149ac8c5dcf3755c8df14657a0988b9ee364e8cee1a66e5fc53546b48280302047c435bb50067306502302deabbaaceaa97e656c35ca9804d5cad4a2dbb8995e6618f0f460b066540cf82c9df00e3925823d5dbed68f4764456f80231008bff6417cb0e492f9edbd417284f55c3bbdb90449f3fe6f85c8b635b1c24813ff956673edf6ea041e283988a4cc80f190302047c435bb500673065023100f203b1492b65c572ada0bb9055af88f0bea832183a12495067ae0256439138cc1f99534f464e53d8eeb7a3dce9b18a47023024b4f2d6e733e7fb056e4a461828d44e05898ea4514c5e056515e503a7bea1a9dd6c4f1c17611640cbf5583e83f4833b0302047c435bb50066306402306acfe86a9798e8bd68377d411e53ae225c0e46452d9bb9b5d7bb99e94e17f877f914a85fb6c018e72bd420f0d3bc27d802304ba38b441a5a5f13e67061f15a8fbe704e39d426de94ea28bbe3c699d3691adb8964c99ef1eac8830704a834d5f6419a0302047c435bb500683066023100b80066f2cf7869a475a7b9ed72d5b5641a78e536e440bc6af428bcf2bcd0b3654867af4af9afc5ba2c72fc4310475758023100a41dc662ff2123d508ef36a7038c65b7d5a427c0db1effc83aa8136e4d5cd98d475e381680b40786e8bd93af9c02e7b00302047c435bb50067306502304c21a0be5e7fcfedec0436124970a7a546a0773f34d0e649ca366d12cb1fc981558ed8f970dbf8f12a3c74ab9e7f74a0023100bb6295a5ec7566884a5a33e4969e8095dd920d23bfdc01f28176cf4da5a30b395cef6f0b06bc81abd6e7a59d7d00ffa10302047c435bb5006830660231008fef2a417f867c7d3fcf14e5fdcb38b23198981aadf9e1a8ed0b5d22d1ed82d0b03ad8c3ff43725bdd4edb7824fc4a2e023100b1948e02cb81c9de05bb0bd739d88950f9b0dbd153cbf1d511185ed06b59d50a63ac12d1a96533f9a69a41fc7ae339580302047c435bb50067306502301be4607f3b9d1bf59f60ae98cd92e49a3fb7c2ca835f0abd1c24655aabf9e9339454d36992335b8c4191ce42718b6fd90231008ba429d39714e45691bd4a0b441b657607373ad6ebde5a1685af331897e2224539b93c6c8e21b4abc079cbdd67f9f2a30302047c435bb50066306402300150c856ad5040b03d41a533e7904463f7e53561178ec18ecfeab838cacd86ab790c36928718bbe5e3fa00df6b59f9a602304003c8c5b37c3137db2299e9a892ea9b5713111dd6f6e0f46402e0ee5dec6f1bca3f5cdb5df0f15d7bb8fc605cbff2d50302047c435bb50067306502307dd42b104c045b1b2b587dad00e9b5d130f103a5eabd952f90e1069d0df9d6d6c0e70b47e84cc76354c0546a59cc47f3023100c583663430b7dd3067af6434088b1c9ec98bc08a22fbd2991f0175f48d88fb234c34fe27ae8585b47f471c51c30348150302047c435bb500683066023100edcf67f64f68990ff59e738ab6f21d9692f8e9bfce0bd189c0ef352c3a5923fcaa72b283ab85d9688d3a02d341670ffb023100dc0d9dab4bf1a700ad9a7b3f2dea3d7c6a866e2beb2571d42dcac0c59ca41e8548c583558035273ddefeb8890415a2990302047c435bb500673065023100ca036dc8ba747720d063f4dc19880c6398cd1929f17b93f142e027ae533fd4a49f266ecfdf493b3cefbf45ec987fd88402303ae768150bbaf582f66846baa6d925195d69fc3aad667bb4e7a9dcfa2978ebeb0de86abe45b96094788fbb149d6628ba0302047c435bb500673065023100df29366356aedea9698472ea406af434103b17a04fe60e68472d9f8250755885094d3f53fc4c89368ee014c5b2b3d90102306434fcbf2811c368b9ce6b018d68b052377666c877aff7c18f0a2af484c95ca60dd66f1d8c7e95eee5883d4e638a99f40302047c435bb500663064023041e705fedb0bcca128cdbb2e4da3c613d1fed17a71d4be8ae498c23b85728415e244d9e05c73c0a0faefbebc937de967023024a7b5a4716623224a398329b727e4ef0e1583715fb0f8d0e6d764931fa9e0040a5b83d4f7f0d3dab07a1fd39d4b757c0302047c435bb500663064023007e1e90162d93b3d49de6bcb28b9f054854ddfe647db128198e5b411237bb4b7120a0d05294bf4e28eb8d4b2338b378402302b3d787003d2f1fd1ed119be7d538212978c40787285be04bae1d3a2087a690dab53f0ceecb4bf5ee9199166e9a4b1830302047c435bb500673065023100cce056ce1609762ca889c45d0f112d890718af6a39be41dac10cbff7dde988b304bb2a2a22119662cd02589a6c04d75802301126c543b8ebe1ae6c757a9ef58b6eed69d43e9977eee07ec0930b494a82154e321167892f26aff9400646218ba501500302047c435bb50067306502301db276b109b883495e9ae4b611674b9884f476ceaee388ac7bdac381e730cf55532464cfbd26d0781f88f640b7cfeffa023100becff8f4e811931a434a705e796e643d4f25ef3e3b9d728cfe63fa9d6807586944c8b0848e989bdc00abae2c85ae501c0302047c435bb500683066023100b80fd7700dc1077d6fb97bc0ec2ae39e7085c390eb698ba044adf9c4b28260a187ec1b9b58aead055bf5fc770e6c893a023100c9110e17a29498c59245ae627e5017ddc385bbc6e4be3f1595126f6fb78a5688cdbedc1a2e4e926606394eb60f2880f00302047c435bb500673065023011c4c18cb8cc1d54af6d2614cb0e7d5818b9446068b71f0faaafc857a8fd30f7e190120a3027c99c3a6aa472efe17bf7023100ac484c34b6f62c2c08175a04274fa7988c4a04ae0225e97792d4688fe48a45c98f47ccea02900f72a4f852827d9f12c20302047c435bb500663064023067ec08b77990c631a0af6faaa19993c8351e3ea70da348363caee2c407255452d208a7f73a9329d9132440ee7b170e01023076613c8b874e6ed1277d23f19264367c3033f8ac998d9c534bc933f8d4d2b46e38ef383233b1417dc3b36c2ca9c352eb0302047c435bb500673065023100e26dbf0b36259c4150c4891766d23fadb36bb356de7a975e417d7881a14d8de362680db680e4858cfbc72ce607693a8002300f6a9cfd9ea56d6be1fac86f748a828d12d9e000b15c52758c580f69a9d90c12efeda6bb913effdcb2b16c7f99af1d410302047c435bb50066306402302c4ee9c5743253b111a67fa445c03480d7a945eda8850eb892179e9cb52e2cc7da3fe59766cd409093b3bf7122f1776202301737f980cb443aaaa28bdadb3dc739f450cda19a6a23012f1981d4a99e9f50c63092125095e723ec73f7cf36c40548020302047c435bb500673065023100cf02b029dd44517bce386ac776136ffb13c171e646c316e91e413eb8b9052cecd2851f0dc3d78887f3d51a6731887e6f023032102e3c96c88bde9327cc7f2f1b294b51e0b48a0d894e62fad807235482f8f2c76b2fa37422721f4da0d00355fea9430302047c435bb500683066023100c344a39d813c1903e7f0b5c35e8ad9b3186737a41848d3df3c7a5081bd9bf767f38188a685b4bd30b62e88fc3847706b023100a165a66db97c9bd00e089ebe1b9b698a7396a01768a80e566949bc3cc5bff6f042b2e6a80a76afc8df009e3679ef5c480302047c435bb50066306402302bf7ca633a27a1394b157779ec5d94ecaf85caae1316bd61610715deee14166c25ecb2c7b5ff688ed3eddaf63857074202307cf0cf3f006bc19c01bf0bfed2aa77a2d277833075dd1ff4ee78e5bddab631c8c6780a6f3284e2d8517c044f84ef472a0302047c435bb50067306502301f96e1312a55db27bb15a4117256b4e320abe28adec4ef5434333b2d2e628d4e35a7bb7ee4713103289bb2d183fc60e4023100e2fff2cbb851f5458a10f04882326f891419b052a654d30fd4ad19241068425b99ab28d588f8c00d578b2fc3e7e1f6870302047c435bb5006730650230710a916238eea65cfd8370f81c83c5e1fa79751d652a6e4eb35e0812879c9b1a45c2a683d7a0c0bdf14c74d42fa67060023100ca6b60afd4727ed5226239d108dc3d90ceea68d273c9ad064ab52602e4426535094e530cfe6a624c5382224875caedca0302047c435bb500683066023100cfb8479ded9617bfe1c3e18ead9327af346cf06fe2a08dc937cc7ea754bd9730b86169f0fbb5e91fd4cb30a0210655f80231008be7a8acf970720e9573212cb92514c88e691c1ab5b87e53601ea36f8b9ca7ba5f493f9823117b332c5d2cb5cd0c1b050302047c435bb500683066023100c2a97c03cef6a923f660e4fa23216b7f2780c0a44c2cf1b4fda0ac7e887d3cf1480c79a1c8397290e254cf4df16b476a023100cf296562d216330f06bda16d9be097d1aca55f1cf9e3676543963901d32390022060fa7f1cb02ace6cd51969a97350800302047c435bb500673065023100e12fa58f7be151e72c082995220a43cbb3c93000e3019496a6138dc1ca62a1d5baba2725dc9fd7002b0fd63d00e8638c02301453d8bb220a17696ddfeed259e918c7525bb3049821bfe3b40f45c0b4bcebae959a7fc80ad31c8382beab15b0c645b80302047c435bb500673065023100c330a9b714e5351a5a72f2a0bd1e5be9eef77ed8fcf711a314abe05aa834b6c8e74d0e2a1d25d443ddf972754ff32a9602307e3e4e24bee5b1b4bc171cfbf576594fe8bbe64e32f1ebbf85f88eff196fa503dcf98cdce6bb9503cda914b704a946be0302047c435bb50066306402301d8b6debb969c2515c5e2f86038003a842b565a3962aef42f4af9508c01d75be142dc63d54aa57d0afcd84e11fca8aff02305f08387ea0f622d2d0abaa114b115ad7718afb2f484b8a3dfa9ec0d1749d75091d5507cee686f71fd4b0c94cb75889c50302047c435bb500673065023061aed8892cee6273ed9312844e308d01c2fe360e88e5aea63da349a69662826f974d1178e2ac4b1ad07367b8d533c852023100c661ec6c611c018a0d8513a16f5212ba92e98dd418788418d014eedeba5a09be05efd75978815535dd2ecab3c71fda2b0302047c435bb500673065023100d094892eff7d3aa75e1880e45dcc8a18b253c9c01dd5234eb7e48af0e69d6af0f729483b88e2750fed5d7ace90b9da29023013fa8b73c410fe3062cc8a0cf1854eb713fb770ee02dd3d467ac80219641d0ade72d8cbb856fd836dbef7169a8b32f950302047c435bb50066306402307d9f9ef99d6408c3dd1b61950a58b661014a50535df05bb80a2bd4d6552cba6251f6064ab3d3840a6ec526980bcdcbf602304be14743d59785d56d2eb51b14e993cdae65b9fcfe8e744e3cbf0df78cb300fba2feadd99875e71ec5715d9db970e6d10302047c435bb500683066023100fa1edb479cdd2d8cb4b6df981f147aa26dc1f578fbe5c455ebc055ebc1494129c3fa633f90014703c596deaf5fb5caf5023100d3c22e79e5c51c8a8828da65546aabbb083aa618485d4304223171bd30c551fc6afe7ae7c903f578aa3626e11e2ef8990302047c435bb50067306502310091c0f451163bbda0c7a1518a0c51e71fa9a2409432b0ccef00dfd2f7f04b6ed4bc8d5178622794541cf57dc707c8eb38023011288d3beea9d8d1d59fcb4baa7aebc0c6eb88fc96645bd544952125e35f71dcf87d51be671437100bd427bc740e23f80302047c435bb500673065023003c38907b1972648ff24d26ae89dad8ff3a31cab3201150a27c3f82672713564a07199589474ef6bfd6c519437917237023100acce56c11d3d73ed1e7c5f884035e49fff6e98abfefbf0e02f2a7f3babaece27062b1ab4f08fcffd87bb6d74202fe10b0302047c435bb500673065023049e6cc8004887d7fd29b4b3fbd078f01347190cb39bb21c9d2f68dd814dd29d74667c526b2c3c460a5b4a47d0c44f889023100b413f3daba4123546b79f8b4edc136c9c31479410c218947f5348f1b917fd76ff414c02e6df33a569a4fc181929939110302047c435bb500683066023100c33047015b6b060712f4842e89a4a32e4690a97a6acdb00446507764c387861762d40fdb96da10ab43cfc00a5a09ff07023100ad876a05a62c4efaf0ea748b4cc096322bd6eedd5293061b3c7b2d60263c1f2ee9746b017fdb4843ba1710cb174b0fad0302047c435bb500683066023100fe194b0cb472a971c2dc5664b51bff3a5ed28d76b9f7f0b2cdaecf2a4b671d40e9613d2b9cd237950d9b4fafe27a63ce023100d6ae6819acc70b3bc88ca1dd864eee68eb2a6f301bd90fd32713188d644092ed8cda8200384b9be758613a1e7fc7b78d0302047c435bb500673065023058653481cb05fb2db1e199376517cf8a796cbf0c9d460aee9f2445b8e0ce534adb6a424058075243110e6df55c97d5f7023100b1c37af2bc32d3addde774deb2b3cce159338f30a5c66b514ae988847cfc0b7db7978704bc97253549b282b7786492700302047c435bb50066306402307eaae1e92d86d19f61a0d8c500759b8c97e8b139c8299f1b0a508365cb508a842a2073a2fa43fb78a03ec01722f60d0d02300b57d94164b7f1715cc014a8354e594a68c5d513fb8541a8194e1df580341b7122ba13efbe0b19531ed5352837d0482d0302047c435bb500673065023100ed02c9357b535e50a20252d951d6cb38b91f1e6ea950c770d12a7b34f7dc3debbf034ae35837748caa2bb76792d78fd60230642028a099b91d73235f214e14e6a7ce69291abe1a02a25deef304fc5313e5ec5313813e2c248a8bd54bd7a767b126aa0302047c435bb500683066023100ca407d80f1aa2d3fb5de669fdd887f47718c77d642d01ca8eadb63b91530f2df2fb0b95b7c5717aa9f7c17abd0517ec3023100b03de37d169907db4bc216479162e4c2bd9cd210e107737af2c8a845abb30cbcd772c6255b7d36e20f703c07f3b273ef0302047c435bb500683066023100f021ae45243c6230ad8bf3aa1bd3d4c17188fe0a58d17e5aca55d86103f05e87f44a4b38412e95e9dee5a04006df8848023100b004d1fd3cf56661cf3c49219678034137a868e190e7999296e46a3a3f4498dea5ed042e7001453e87e42967c2b30d270302047c435bb500663064023100ecd4831abb5c1b1448fda2301cd8693a41ea601eae57cf5c7ebe110206edaff47ab81681eeb3cf8e3d87d2e83f140730022f3b1f38abba7c0b32408cc87ba006cf25c8867c78515aa162c5376d720176d06c5fdcdccffc9adb79250861706395570302047c435bb500673065023100e9ab4bbf09fc4a6bf49dfd808f22d438358c68bc60ce3fc49e61f6a66247dcbec7764af70d031eafb0cd5c338a21d40e023005356a2ae08510e82245f0a4e793bb15b1bc3a269ce12cfbb2bad7f4e0dc1743ac56b10cb32640a82fa2dcb72dd4c8810302047c435bb500673065023100c2cf8438814195da1ca3e24a9a0c16cdfbfb8a208a3fc76c8b74ca9b7dce57606723b2cb847b06eab148ef79ef966270023053f37bb696f4bb453c3e6beb723cfb02a155fab7617369591ea9147628ef7a8739b9d3a3f8fcac9e4a40ec0737d7b6ed0302047c435bb5006730650230771bf55c1cf3c5ffa1e6cbf7e1c70ab7e0ba94aa40b1693f3fe801ef261b713d33517326f48be159d1efd0b88d6c1fcd023100d7df19d17cb4bf5d099161453a7f6d2b6d01c144f951748d33e76f6dc51564d9304f15a2f4926da10a2d9d3f8b54a2520302047c435bb500673065023100a548141816f28a03565c29ecc52e0703c45f538ad41643df70daa716f6c241b15da05b70f4a10fac4e20be76113ceb1b02301167b6372f6d55399b5f038fbfbc200b6ed1fb2e055af3eaa8689f009dd7875199a75019ca300e5a948ef5d2924e573e0302047c435bb50066306402303e866b7c680221e746d997cf4eee9528620a11d63ad4197e44a8d1671fd228040d47cacd3fa2ea2b3c6ef80958f0cdce02303ab750e5318720b702a7d591c8b46db4de7778947554e3b69b2101343eceb0fd795501c8eb85a193900a223c94cf6b460302047c435bb5006830660231008a59dbdacbdc19efec3121ea20b77087e3c7dda09a1eaf9a6932ced252126d3c0987819604c2bb828f02bef1f66a0f5b0231008b0b137cb4911d80b956803a7655c54b93dee3aeaff27a795c9de4106d25c5b2831b7173d0eacca583098ffd2873b1c00302047c435bb50066306402302abc0d03c472284122ce2755139d01ef47620adcb341854d5e2ff08bdd8860854b482d9763475b54ea464d0ba78ff939023069f006560eb92896f47cd36d7cae8d793ad8399f88897f6da7d2f6e11ff7fd9a0db7e5f377c0263bca6915643721e7b30302047c435bb50066306402302e303535b19f56b60849935dc1ed1ee1a765cce5aa629b0fbb6ab2be81ccd4a173b5b040bfef1dc545bba37c7c86a8700230291acc36b12cae252cf9b74a6c67746a1866cce66a619fb3d089de28026f97144735de74cacec6c50bbf79bcc6e327f50302047c435bb50066306402306932991a5dce920dda281694b034bd747589a042fff796e3cb57d20cec7787e074b57bb1460eb74b792edaafc240d248023068e2d46dde09c101b90fd887fe54d142d4f9b022e30bd04a4b90f1bbf92507548bfcc91db2be05dbc9300298c3187f7f0302047c435bb500683066023100a84ed6e2bdf1b81e81bad275532cb1588c7da5e4d20f23dc94a572c16c437499016ce7254a14fb5b4d1056113d9e47f9023100bf44f9f9edda6d39aa600d4e6dcc2582661930948f2db23aa64189d5874e3bb3b76398fc8649e7d974a48aea7f8a5f3d0302047c435bb500683066023100ef044682902b190fbf129545dadcaeb8e58096532942e7ff07b9d26498a0e7bc4005542235994490a84eeb8e0d571072023100f58bacece87b918c44610374f5db36d280de916b0f766e9658f8e95bae520cbf89cadb25bd0e40a083e00964d7445f090302047c435bb500673065023100d63e029bbd08d29f73351265b0bdd7261d925a585754844e9d5470e65e23fc5ac9d8442b39dd931c64c77db7cd16a0c10230230675caa52cf853de870e4dc2d91584d4f3311cd78e35da88e5555d6a4f274e3150f59f40d56ef9e30ae5128f916ab40302047c435bb50067306502310090dd69eefa7c8b134415751f262e89f5c13fafeb507c941fe01f64a091b82dcf5154deb859f612cd7026a57de9849215023072240d7f9aecdf6ccfb37411a86116f90b74648fcec033c38d362afe6cefd7fb871fab9982cd785800c59f0f620d30b70302047c435bb50067306502302e1718996d4cb058ff824e50c1187f9e40592057e780cf985013959e5cbce484bc8e4b6eaa94f6c390be7543381e624e023100fde45214a1ef3147f18b66a8acda341f5af628393896bf12f905390aa27941a1ae63fde1864efb74f3a5da5f2d3bb1e50302047c435bb500663064023030e4664af5b0153755aac3a42b2cc1cce3ca76d4242426a2fa5fc0e7dd2d6272d8481590c2ab06b390d7730b85afc8ce02300dff4bf21b0b872759c42670145ea03fd11e529075ee78d625aa299850f5efbf8ca808e0f045ca91ad5e357d6492c81e0302047c435bb500673065023100e9e92d93a1cacdf56778866fd4e23b3f4d438dba934e28688d4a0f58c5062302f3d834e0d0cd6e0f3b822d7494b5ce20023035f4dc3ca6e7adb643a3af31bdbe68f19bd22cfe88f269e108f9e60b0f635d96fd5c1c888fb3c62145a8b8499d021b5d0302047c435bb5006730650231008f89339ad0888b3ab8dffb43feb0ca1b2645754980ca020c35e5b4ab8f50b262e14cfb071c4668889eaf4d0b0d0a393902303c8386e8f74a6a6b49338799442cc2a6ce4dffa82a6d4326151bd2275789455827112d328a20cd738daf718c35ce15400302047c435bb500673065023100ffa18b9a4478b4f9a4f7233a31e0e3e3938c53cd9cc9d5ffde98c0be776bb7733d2fe6e649849c419f099cfdab807eda02307d2ccdf881b14d017ef799d33d75fd623d1f61d1bcfea0eb6928017c657a6257fd0f9d4a732af7dabccd543fdbc2113a0302047c435bb50066306402300acd6aa1732c5336ea640bfb1b32830bf2ae7a215638e4bf03ab24fe1bf49a7ecf018e7e83f800702cf8081864975d39023042ed848ee4f8033385431d565d9b3fff549a235ca1d8dfa9f4389b0cb4fec479599038712b1fe57dbeca88f13563c8c60302047c435bb5006630640230457f4dc1054506c247011e30fc91aebc484ef7dd6b89f76d1f8e168bc35f2265363d641869e3be5309c3d94bfc5cccdc02300d2abb24bb2e7dd50551935ee847ef1873b40db37d9424f81c19d78e1533274d5a2d046270e82b1a5c636d0695ce2f5d0302047c435bb50067306502305634c693451a969dbfed6565fa089f185320d8d25425464595500708dc38c6d925d4ab3a8d4fc4fefae1fe3ddefaa2f302310081eb8842cdd1ccf427fb4e8c7d5cc06a0891616bdedc08af7ffd3e4d967536c6c531e1085e8f3c1fdf2171efc9a6e3b70302047c435bb5006630640230377ce32c08f2fda59d2f5551042f62b3849a9bc67fb269b62811ac830d4b37fff16bfef22bf994d5ca5acdd16d4ca2ed023040af261cb3ebe871dbf53b3773e41649d0123686615cc4813b5f256c5db8e966459677767e538b8e59077c62519b62c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072fba72068d36f00a56e00729ba2a66241ffaf23bbf3397aac5792e9ef3874bcf29cbbc46b4fd02311730faa945c20bc023100cd5642e665116226e289971326fc641c8061ef72bcc0be109742250e3965855d39ec5188a520ba279eb87ae9e468bc520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300359d708572b71589d29dfbd9a3071404bfacd9b94de86be65e90e7add8c7a066a53410104491606cdc3a4c6ace46acc023100f33f262d4a57ef08aa2b91c7ac7a74da3bf3add604ea95fa39e5a6c30cb545f875c44b9d5d1889fb082c94605631a5980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002da1c286909f59dd592b8222940d592f78a6b2baf4199f87156c72811bca4975cd74293fc7cd267938742fc5714208a02306162879a74371b5852ad03de2ecb40628086dbc4430af3b31f50ce6933f364d695ad6a4542f41e6580bc857e2896001d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303413a4ba761c3855398b0ba15e9899682a73a5fb09eecea196b34c76af663aa1bdd02e907005b0339dcbc6fb5eb15f61023100e875644d21af32ed1cafb53f998f6b0ea69ab39e4174e13f9a324827147d0a737c65908d5114e31adede4e2729bbfa5a0302047c435bb50066306402307dfd360a88d3beb468bfe0fef396cbb023debedc444821ff5e5f8927b92352347e2bf69077beb63fb20f1c5721e92941023034091ee657a2ee2936e69bc8c1c87e4446698f3fe0b5c2b3389d374794d82c51ae726f9c779ac9c6540705fd8e4eba830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012c2bacfa7b26990354e9f758a01502c75d6e2005898832085e56080ed322f695c22fccb15746ae60c5827dc0b62bc36023100946681eb101e91599fc435186f95fef49bd179017b43f8feeae691b358413bba58903c418434a6e84e11b122d89f67a20302047c435bb500683066023100c44d3b8db465850a177fba7b584e66d59fd461d5778969801a6c2cf587b465cec22883289f47aab84d48cc39457364ff023100f9429ebfd019cf47f67e17612fe83fbfce4de7ae5eb6dcbb099cec33ad16452d331103f5396b217f044c0aa87fb372880302047c435bb500683066023100b0797a4f5c5465ce644d961f72b4a0a617d234798a552ed7a1587cb4caa444121f53e159ce8470567fab8d463c9a015d023100b9644c3f9b70178b841d7c5c8a608b3ef3d9b1b6e42306254070a12e8a41cfc1b688b38d3e56f353d4de74eebebb3b6a0302047c435bb50067306502301efb493892b6cfbc4635d576d7eded631584af4fc8203fd42d56cf5f1b057571df14469093a46c23cca591323136a989023100f9719380b122a18d352e9923e13f347b5c6e697339485282b00965f5a72aece6e83edc32808e216b2cd7affeb57232b30302047c435bb5006630640230775b72f9cce98cb841b7e072eb9b03088b612c12817eb2e434f24b706c4b39ee7d61dd1b0713dd094c6f0211ed0621ea02307288647b7768ca5a746ad9a76cc1ee0de95f5e3f2ca9ac092eea6fa571b4cf70f3dbc2ba0809705a7a4580247b8922900302047c435bb500663064023007a086de352a8563b362b68f9ea59892ee5338a8f38296ed67582639920330a260bb5f9941ec01e36647cc05708b1c0902302d01515ec54af2dd763816cfadde19cfdcc4477053112edb3bca55dfd83140cdfb093d8eb4c82c2ff0096a3021f69ed70302047c435bb500673065023018aaa4b84fed48ee0cc32b550ecd8b4966a83e6e98d2b000f18f0d46283ef6c42476ce439b6a0a33d171e9c9c91657df023100971dec4dbb51f61bb0643b9e79b99c506aaf01cdeec6b0bfba415b5642ffbe8be65fc855dda807af6ba2d7a984d8670b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009f209712ed1d936391fc1f3f0cac9913fd6f9e58a8097460e7f2e33dc645ed96a2afc80a94f1c73626f62409d66444570231009191cf45e0407cee399ebdb815cac142b8f06eb97f8bb450cedb395afa1cb845d4a23c393402ea7646cbbc95f53dd3a90302047c435bb50066306402303c2c4c794a1908dc825876e126c2cf3850711ba60983bfea8cc9096d360ea3b576222a12058cee39b782d5f5ee72a3c102300492853c682976ffe510b4fe6487bafba22dc79ab79525151140b7e68332de76a9734c2a44199c6bed479b59272385760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e60fe077fa9f53eb894dba81e924e333830e7abf394de26f0122fd68eb285795ee0cbce5dccc5f18d08b46d3e746043e023100c0ae6e7eff9b8ac3987c9fa7caa01b8461410a0d9d161a782cb89956186a5f4dc1245c37270540f76755a0331d444a610302047c435bb500683066023100c0f0057f10c6e2e9bddd7496287d56eda0249b33a1e69b8e8437810d3d1cc6c706da351416846054f9c0de0c1ff51c1d023100bc4c43a67714e82e9c0c2989402da812c8e9508ee1eb395a677e5e4780bfd72235a2aaa5a7c5917f366de4f49310c1330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a42174a85aab3fc5c60fd36f09f47cb543ab98250ae3dfede436128532fd0f1921e4c471b445f3da25113edf58bb330023001c3c7b70aef7c6dab69f3f074d0f6092f0ae0d4962b601b92e1fd62133fc42185eaa099c2656c19b3a65328a923e4fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a911fbd08c30bbdccc7888141d1793e90af8de68833d166ab9ea62af31fea48274ea22c9c022b22810987f3e8d748428023073860114c68efeb06a13c729f314dd52a185d042f200e18d4d0ab895196560069476f0ae8bc30795ff0a790d311285df0302047c435bb500673065023043b38a80aa43c89fc63338d9845925aec9c694405f538f5491e3d1bccd9c430514fd9ae75f55c060c938a3a4bf2b79c7023100c006bdfb5379269a7f35a61540f7a6b1154c6f4cbe7f4d540e87a1938e163dd36a0aaf470d74ea72c6ce3988e873d03c0302047c435bb5006730650230610f99507532c39b9523f6eb5ca5487c19da3735bd3cacd7e193e8236c7c248b64c5d6ee2b5299c13c3da599f2ce8179023100d9d98606477c019c9d645a819d35c166bee8514e3f749e422e8a004b8ab060b3fd68a387ec9adc4ab785c40293b6c5850302047c435bb500673065023100cc205b963de7af4958a9519016a4ab0cb376806d17d375d976117488f65566fea75395db5825147a45179f9241bf8762023046f8b57f8a538f36569159c1f9ce2b5a2722d59e0004b1a935ccb9683e8f02210fe77f4067a815772236d70d0b5b5b150302047c435bb500683066023100b588b4473d4844f93a5a5e4406cb6eb146ec0e1ce779a6127601595b27c96f10b362e4208d75864c8d6f6a24baa00cd1023100f3919989fab35cd73daf74911c78328b55d93b779dddd09abdd01d74c2863b32e8678581ce3900514511d9ea32c476400302047c435bb500673065023100cbec29a5d91111055fb459e96c68e99afda1143966f53e40352c8c0ce6279f472dc6591c7ee0858b4a76aaa5edec6d9d02306bbe4f51d5aaa3a0cec921bfd199444cfad6c20443e0293ab73abe2f16f3701f0a33b73486009a7d54781c0aa886a70a0302047c435bb500683066023100fbc8ac2059a4277ca0d1b45d54550075f5d97382a85a203818f6fc9db79eca991940251ff31939644091084ea6fcefaf02310099d017d15002ebfe09f5a547b79b8e0c837f27278bd1e57178ee9e59692011b16d4052076c70db67faee17293dd3524e0302047c435bb500683066023100fee0a58a4e8574bb3d50010ea0f85d26d8eec214b5d47730cd0b4ee29b980df9fb80dcb3a4355162d9a043a71d74503f023100a9ea4be8504c2c839f0efebfe9a35404fed8c3a28e082b5d598573f76d7cacd3e0976d04db57a3adeaa9e79fecacff740302047c435bb500663064023074b98ae3ed9cdf3165d184d5649e6124bc55adad33afab87f84b6526d9ecc68269cb240bd9e9ca2f57db6a9bc81c43cf02305384432b310251f702bad9abaf164c728ddb19d1c17ba0d3acb8939703755458e6f72b79d2ad3ef9776c5198ded589ce0302047c435bb500683066023100b052c524c011caf82609bab10986df4ffe255167188fd7d689442f83dd19df2ddcc3945b0cdf0181242811a49b54a5dd023100b717771200096453af0d8837a294bb0c5ad0f042e81cd4b07581e96461f13f95012f34920a011225a126af97fd66a9f20302047c435bb500683066023100a8d413e8a6d64f7156d20a98139da95f1c9becae165b463e70f8e7d3b587313d181bfef14f3b282b624c4d3c2fed29e602310099d4a658ea84bfeb17a04daacc4d91935f4ba0ad6072b9ca2ab7f6265d70fc56c231c714281de5dc473a33742b8dbe760302047c435bb500673065023100e7d3aacfa460eeb0a918ccd2e145d404619502b72d8f54d20ef144bbd171b38dceeb507860e16049bdc48c5a45818a4102305cc65bcc47b5f23d59b32bfc3639f5d921ce04cbfc5369438562936b84fb8a39b7f0792cb30d5a06c0f6e1adaea575490302047c435bb500663064023075839801579267a3ae21d9caa9c8b88dd47349ba33fbd78bc27dd92eaefcab9385ff55e557dede58423628fc6e798ca402306d27e8491bb72201d31ddff2c82894d4424da2d9b792d4b62411b0c98be173091fd235a5b23bb53d578443b8595fbbe90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023006fe1d9e0d620d78ad4d0c8040541b4ba6845888f00467e8e87a345be04a6f1eadcc71cea9a6760d84db8733c61ab4e30230584314e5a34f117b19f1ea27aef07ebabe6ff191927b44f0989107ebf0fde60a4989631bdd0cfd09a367011c62c5ff1b0302047c435bb50068306602310084ec3531694b2da6867aaa6cac54d111648de162b66a1ba6151c695a6c06aaaf136d1595b69132cbd44052fa76bc6eb0023100c7e24ae6735e210de0e906d9bc80dead80ff7199c842e93b5c5d9886b971df9cb2e97a4d5519e6012d7f6b8298cdaca80302047c435bb500663064023019cdc8dc73dc2e97b4d18c4f03f1329eff2033b17e2065caa800d75d43d172af2841b6a989b1db7e6a63f4189bdfcddf0230340030e39f8416be67c712e5cb6f982863746fd13f31689128107435896e3938e09c2c8a87c475bae4c79bc04c5869950302047c435bb500673065023100e4b92ad2d8d91d01b05ff3b8d7d3d9e63efc1b3063c9062826345be1af27539c3c9d6bec10e67bf5bbdc2b522b2aee25023009de756316dad2440581ad830f48235667496cacdfce48c6506c0e29bc10a7e8b54d0de3a1ef4df8fb91194b46a1cc300302047c435bb500673065023100d3d72322d0b448798ba7678ea33222312dad0d115de94b093ebcb7e7ddd9c3cb6f14f83cb834c245ac029caf36f14a4502300a49c8366337baf2f42b3645a51d9376b5f58adeace5b444180157b01fd3d2a5b50b2b9eb89848a60a1542720897e3520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303342eff77a252b4635e1ca599b011575208137acda6875525e7fd4f4e826beb0823689ef14f5074c26e99496108102a7023001e5084579e7554ef97dea2485bde2be84426b925033133f03ceb845b534f09fefebead97c8c527fd81894db4ac5be060302047c435bb500673065023061ffef7faeb7fdf5d167952af459fdf9301ccbce13b126827780ea3fa1f5755a908f1e905947666aa35624ff8da5b8400231008114d055b32e8a48e7177830edb10171276a6d7c542f82494e98949cc5d9803765440d6efe6aa74f4e4195f59bb93b330302047c435bb500673065023100c16675f528ee70e81ab0294db0e1793f13b688d97507023e0f712c5e7079840f321a25ebd7f9579d5e810f647b4cc04a02305a46f6ce9304b1f27d2e0deebf57aaa5498175469385cdd29a7186ebba214e510a19fa094899a4c9458faecf9d3712830302047c435bb500673065023100bd2664c0e00ba33828c1f2d1b8806257093b6dfd64a6b7fced6db6f2627d0c68eaafbe228a8fa2fc119e026d383ba7aa023037076757e5d4ba549f81eb14bd0a93dd65fa0384146de97267e204ccdcea1208a47833cf358c31d58b8621ffd18e4d9d0302047c435bb500673065023100beca0d9f2b0f38e37528f88c4b3747b94d342f81569703975529693c7429d138bd3d36fd7a0db0032ed523ac3c64b9970230662e3ba771bc819a08754479a1c31c0744f33b471814e7a918efbb2409b707352f8c3f6f1480ec5872fb75358623baa50302047c435bb500673065023100e358385154e34492578647de9fdc21fe08c0fdab8e6cc89b5d790da76c52e33c2f6dfe3870db65588d9c2ea0988007d802307c4619cbe32c3ca106ebb0282595fb2fba96b4bc4932e6afa4dadaaaf7715f53289b4d95fbc2d703ac192d48928d19060302047c435bb50066306402301f2522c5b4c0b4523ccbc6693a12b9da084566c3d4af538b2463d63d3fa15dd5109a011a28f2b90caae754a1d746289d02307bad1883e7d677795e9e7df1833ad58c6a4db90ad909a763bfee62be9df48faa39b96808a2eda6d029e83448d2bfbcc30302047c435bb50067306502302f27b48c1fbcd43d3ee5e496f813e5d0282601c197b6127b943b97a6d642a3aa04fe8947deab9f82e28e6f79216af7da023100e1cc64de08ca2ae18159f78b2c980df5b96eec6330a00dbe6b032414cccc05c25931c1be191ff58f5d87dc60860e0b520302047c435bb50067306502303a02af28b57ea3707719caf6c3d04f76777fa529c3ed9c595c974aabd253bde07919c6b66eb4ded376707026747fb1e202310083052998ee76da8f1332734c96e3b8d21d5a7534624b4b436d30267afd4b1d943f299da67b9603425982554df477f7d30302047c435bb50067306502301239fe56b6c284307771b1e09f5cb0a45e05348712539463375eb1f8a4687c582844c0710ae7ea4b9c3af53167e89986023100d2c115bf59405e85af30e8910ea59b758b63572caf25070c8077868bd9ab9d3595f63c57324696a1ccb25987db3aa9af0302047c435bb5006630640230552cb6e00e81e1d9057b1c3590141fa8ad0d1807072f66f49992badfe00b530c06c4e0b7ae19d962815d65d7725ef593023040cf0b42e7a90b451ccc467d1aef33ddc6e6a12c1f383a8a13d91c404e0e53811b0694e7332cfe8e42fa4e943129b3010302047c435bb500683066023100bd6c3b70e7a10a5c150880f640d48221e336bc83e1b12fbda4847475222eb87a3daadb7545aae7076f048e9b9ecf85b802310081095ead8b9896e2fc5f65064074d222b49da85af04396ef3a5e94bc25fd55c5d66a275ca97a2b1a0215b09879bea6210302047c435bb500673065023100fad82e8edae5260b5e79d1dd2978be231911e5925f0e87d007f5c1d9691a25fa9cd40640da42589d25887c2eb02eb46e0230589a4b0ef4597d8d412fc6cdbad9066de669fcf2bd37bac757bd4f81bd81b6259435b271ed3af3b114a68704f399502b0302047c435bb500683066023100bd65916bc2f95e05109f77fd19994e680232fa9c9629dc4c8667fa77d30cc76dd071fd32cb2f1ecfdedc98e930530a78023100ecad924421a2e7e6549a5b3a63856757b929706f2b4a88fab2bfcb736d29af172bec1122b1a14d14ed7cff0fc669846c0302047c435bb5006830660231008e508aa269760c0d9d98f94df7b32c69cc59e814be051ee63846e7bdb63226f3537da5f25e4a0497f4f698711dcdd7850231008df330535f89d66d2e38601af0af21343a330d0775d5b6155e6242eb12fa63236016a73cd1a728c33cdbbf15248e5dd10302047c435bb500673065023100df7e326edcd0445810cd06826bd3b612a8a4277d3314248c1fb98cbecdd549775fb512df8f1bd4e2ccbd8a0a7ae57c0d02306de1ac8e11f9f4e49b251e3fabf3d8c5c2565b4b8d4917ac8f4b0099102931d541b777e8accb45b47740bf8f7cf631be0302047c435bb500673065023100da320368a19db28be26cde438969530691e81c546a5b457368bf1e47fc8ddf40094ff748a692d47ebda388cda730d99f02306a49fc7c759ab86392510ef5dd4ed96ca91d10a5f5bb2a935d2554dc3698f7b9d8c680b5fcc37afa2c9cb1b271db3bc40302047c435bb50067306502303c8a7dbb6c18241cf42ef06204e3832ed408b116538d8ec0c09efb8f36d77e4285413435836d7a29cc24bcaf58ffe575023100b70b23e37089d77b447e99519e2be1d894996ad7319294cb325294da507eb9d07157124e165900629a8e722bb8cb74550302047c435bb500683066023100dfda88c43463e5c264fd4c47815123c615518ad033768ba11aba967e58a98bb88e9bdfa8ce03be6503958153e317fc58023100b3b49dff1a4646899b674d469f9111305d29836c1578f5fb7c96aa40e523b3a080417749cf2b009a491e694cbf3fe1030302047c435bb500663064023012f4158c19da7f5bf75ac3a6bcae294a75430cde835ed7e11f51bff1856410e4a783ec0c10b8c3ff464ee03cf926f13d02301dc7ea16b21ef71e40cc1bad954f6cb78c11bf29aa9de983410dba07b43ef4f859ac77e4382fd5ccf6ed7dd6cd41de8a0302047c435bb5006830660231009dc65cadc9eb5a7a3914ec2dbe025440fb5390b3c779aa82ae824fa95f9db34d97bcff04939799b679c446b2cfe142b4023100f63b7de7d668316cb3b47b797ee839faceb1a61d2b93cac892f64f4cd3e021a7b2c6619a92babee4629f144985a3fb080302047c435bb50066306402302f85260ecfebc9b9ea198a6e56542da5eeccd5aac00ee1a3f372ab1e387ad3fcbb994ce724332b06155194532ec2e1eb023067410e65f9a006e9013971350783e887a092214a24fcd8e3a414f98470d3d25ddb79d5417e6495a77c6b60216eae7c230302047c435bb5006630640230654f11e6170e606eb10cb6334cf96fb23fb93f8f374d4c4cf12e8af575c77cfbc4b6a1366e53fc126bbaa061309e928402303139fb5a541bff32094a1e45a93f68a9d652b6161cafbb9308ceaf62bbffef8494afeb03898a7ca5500054a5b64be7ec0302047c435bb500683066023100f08e4ae0cb98d9bdbd18630b0091ba2d582c86841e52e4795450a7577080118d789f7269989307ba88e6475d434c59a4023100fac2bfeef3b4af6b8a8a21a0f9e83fc2127b0f7d3e9432cd20737cef482176736f05217c344dabda5888949e6b2535830302047c435bb500673065023100b751e4a21b271e8f8dedcef85acb0254816bc9d0b86237768c041e256f77a9b6b7e1395f2a6fbfe5cc29830d3ef4aabb02300818ca371448df4e4059ab28915fb16edef6300a1071573f67dc9c4453b2997a488f2c02b59fc621d0e295d725ed48c50302047c435bb500683066023100cb1dd36a5b5a1259f171101ef7f6babca8c2a4b8b5418489468b16bc1654577f7e9f508c9f46e3fbc2394db83904943b023100942780e987a97f15013f2c1a4ca986e75f7c3735c59b9e0947ec7f32f89c7efb21a04822232a2459d04d67db4b8570a50302047c435bb5006830660231009b1bef1f7b25a7c9b72d9415ad3f18040a4dd9cea1f8a510abf84ccdade149d42a1dee09e47ad3ac2892d0bc548fab62023100c4dbad9836cca2aa7ada7e02bbf5c7fa65cd385d7f0f1f7bf2034ffadcd66b055cbec37ee969c5b8d2ea18a2c836e50d0302047c435bb500683066023100b3f54a6fe5772ffb0c400870221ab1e869cfd0749f0512bd95fa984fa88ec22d255928cd5fdaf82d932728ef80a9d9bf023100eeaf0da85d63700c54d6f3cf0c75e29d18fa376911b371d41186161f7c12225b7379ddc3693c474613ac9939d9a0dff00302047c435bb500673065023100be82f1db9095833cf59797bae9ebab38177d2ebac8a22204832c149e87d436541be42bca95e061f6c6169a6765a1f78502306066c2d47d5efb5a9d0f428cd48194ba6dfa257dee8283f51672d63e149a8924324765129719d90bcbc109d400316c6f0302047c435bb5006730650231009bf9b42a7c79c2ffe9434cd5fceafbb5b00afd80cd85e6db31aa8a4a8464118125b703e0f631fb56b2c17bf1f968dc2e023010666af985c7f682558dfa01b0befb782f8ecea1da5c19c0dc6573afb9989aaa8e5c668d8406835439536a57fc56f9450302047c435bb50067306502307e4afc08bc615f17b34a00d6d2ab8bfa4543979505ec2e45f6cda666e75b4e80f7cf7eafaa3453473db908e795892808023100b38afa2933d0c9822707e140c7ada105c0be90085fbbe7e4072cb07d18af202b85ec6bfbe72e2a1d1eae4e62c6f3d3370302047c435bb500673065023100fc067d77945acf82519a055b765f56ee906f9a344d995a1b980009b4a36672bfa155cf77fb4a92101b11fa2ee6b8c27f023027cd797424057cb28cb3965939f21be91838facfc60a1cd1d7e5d00c775afe8db745f94f2f6cc97bc780551e3302553c0302047c435bb500673065023100d965e5f12c02e8a7104bd9b800b8a12e05ca23c2a3fa073439022483731ad94ca45c67ae70b8c8ffbd7f13e1432a2bbb0230582681d5808da63ee36cc4e8c4137e07e848ab581894d363b2c92217a465258fd7cfbd6812e5f608bb10b97d3ca0c3830302047c435bb50067306502301f2a7063219d87920f74ad87cbd5ca7bfe34b9c0ddd0ebc167dac8b3125438daf55e7a7d29865607d5b007fec18a1ae7023100a686b4d3bff8f4ec2e3059df97bf243b1ceec2ee842860b0661a42d75af623949dc2e99638fcf8b96f483f145224b2ee0302047c435bb500673065023100ae559be57120d59eb1bd5886f7135722b083c9cceb2e86294ee8a2236fcc66a07f3d7fc919f9a6b577b285b02e1cc1b9023022b7f7c8cc14c96d44da99624dc40546f10e575a37b911e02669598d80b8242f5658f40e2680a4997134d30c00aadfd50302047c435bb50067306502310085f6f93994024ca27b240cb18432f13c4a98722da109ebbf7b5ed72ad6e514266b80f317d3cccb5217e088cc9cdb8b2b0230412a2d79adb0fb3552f18f5cef55f320b3a34fd211c331d6d0431dc2d6f6c57c2ba63d41a0bb06ed91b64f3704f4bfcd0302047c435bb50067306502306c6134628a92846f330706321b0407284568c110b3aeea82ae50835d2da2347d1e46b3d85e559febff61bb6c8ab5ee59023100940e9e551b07b5695d44c5a1fae9b9d316c2e7a16c36d45f5e63cf45563de1dfc053f565dc8a0e39e9e70589c954cb650302047c435bb50067306502305b255ebfd39c4a886a679a41dcf3e4857d5c4a49c7cc5ade79009c3fbdf05c2d20e02cb422446c044981eca3e5bdd34f023100f34edcfed5a6eb29b85a15c696b29fee97849c171cf54238a6842441db26ce7b7c20ffb185c6f7d3439cd0585af9e59b0302047c435bb50066306402306b67699b81944ef55685b45f154e8b99d8044529252bc0f5efdaad34da9fd7174bc10eb1e654d040ded5b09fdf761158023004738ae08af1d17f4378f4b9076963518c00245a7b009aa535520487a987a1751b4b29f4a6cda5aee574e6d9d1b46bc10302047c435bb500673065023100ecd0160e7f1ee291c27f52ecf56bed0f6513464d777c5a764838c07dfc98375295ca42cc6bc9e41c097cc64be5b4ccb8023030c8474444770b600b613a4186042f76602cd6889e8a720eef082dc868a13a8d66f2a8e5fc4a685d5649c20d5c876b640302047c435bb5006630640230220f0ac0c5d88d2463d9d336a725334a694f77ed07da3c7649d6d90ff240725ed43917d4bff13b81922d74e9f1dab7260230182e3d882a171a63b7e38b3c74c646e21e78a1683c6809e07a62e21c5a85195957908952052e761b718eb137b47e35090302047c435bb500673065023063e12db49b49d24955806e73c4bc79e06281958ea3d53aaf0d16c7c3575fd73f9d1645f9e9e85128c78838c569714587023100d74a24c1c0039f249880d09a16aa3bc6a283a9d3c26b8f347bf1ec818e238cd2179219793fbae72c9cd0a2fe82c2760c0302047c435bb500683066023100bcdab41f3802c426e5bff193e083b53f126c1b91b31071dfe8b534379078c895901b7611b6f1a59ae3711956126f57ce023100ab98cc54323d872342472e095f2c71944b005a76e742f8558d6b362f643b5b01bcd398e0ce2cc60601f8a29a11fcdb910302047c435bb500673065023100d6cba5f3cab7eca2151bd67a894296c26b12d60f211d54a4e6c866ab9fd68ba913405d36a43fbc50c6e4636b023f31e0023003f734002f76d347c647f0a1d795a48ed4cc50a452070ddeba841e932363e02d70bf9c96bf25ca91466074b0eb62cde60302047c435bb500673065023100e277fba0029a4c5ec81652a3d301bc2cd7d2b192b8b64ee4277cc8d3724ea7c620f9f099ce308a7a8a2e2702642b77ad02307935c26ce64e5615f05fe350fa8497c84d48679ca27c5c572e11929ba2022d5ee099d37c6039e1e42348cf8820f135ba0302047c435bb50066306402306c599614772230c7a64c735958f152809dfa871e92e4282446f6b85d4a9d1099e549707010eec6328536ac719f87a28c023011558f8c759f7984d0767c7b230d93d1b4e3ec4467b958a8948fa882d9739ea65450d53eeb668b46a883ff0ef23667c50302047c435bb500663064023074642ba5f37b9b124fe6f154dff3228840b026c564d64a40b6190de8ef24491f16c97113036a3c9c87c2df8158fd298b023079216e97fdcf90ac40abf17876e17f06cc0fe77ad6fa021a6d7cba5519015f59367443968688852c0dbbbfb7670de4270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e108d69d216126194b69a121121383645460b0ddf17863a04a274e56d25b22c468216c938334c0bedef363c9a776b283023008ec2a5b3712ca9a37d72464f4a54d94b0a97c8dc16d4bad7dde1c358c662d847c5bab9a4d00ab0a7895c82677073fcf0302047c435bb5006830660231009c6aab3f061c33fe4e12294f0661eab148f330a8212f1d417a48808997109d2616815c2472638a0b820b89b55e300eb9023100f9bd97dfaefb7572711a77e68fc1ccefe8bd6809b282b70f7a8c732df349226c1ff91b86491a85ffd5816e87fa17a4970302047c435bb500663064023018f3e3c04ac4f46bb094df74d77e342e66f326bc37364764d82f88bd537cc188cb74f179519d16d2a6aafdad14acaac002303119617a808895e560bb1df0f64f1f312714270149ac8be0c07c2fa219472c4bea1aa20b375e8c617a186f0828dbf0cb0302047c435bb500683066023100cf2992483606c1235cfeca1030b77ff98fe5cb420c9aa42d59fd7f61b70ab9218787075e5969a7542a9f73c4b81ff423023100a370541c8ba761e9197e3a72549f6b5d51db82bf4aed19c17aa68a2b754f76b13b7cfd97bcafa15adf863422004b0cc50302047c435bb5006730650231009ef6345b8e68ccf68cd9086ca1b412ce7c6477966e8c76d6eaff5c8392a9812fc0677800109612a403f408ba7a6cfec1023026b7ae778aff44bbaa4b8ad7c3e9b690ee4cce1a5968d2e42e1e2d6ea96c244797c109b6c57f375748f4031c8aa0051a0302047c435bb500683066023100ee03a82880df41ad097bc27a2fba0fa77c32da2b49d03e736ac5304ecc00f811140e5c0879d4cc586aa203136b1f4b5f023100af9a469ef303459549d1bed00989069023a7593fd2d8007fa2fc2406d53aabb49b3475277971d593c0da4d4e48fcd3310302047c435bb5006730650231009ed6a8ae2e1fd93f0f1272928bd2e483ca68db720100e5aee24d69d0ab46bfe0b9a6c9ecac7f5aa425ebd64bf871fdbf023074274d6149ea3133c201ef76f4ef85e2a30dc3142bca38c6e588f05c462a603d714ea83e5ca0cceb2ee0186fad5541fc0302047c435bb50067306502306f647653c1906a4fd5024b1be3bf29201b928675d0c9420cd107bbde87a6923976f55c66a88b41a7f09a847c0c3eb66102310081dfd56fe43fb6969386bba01f7b7715b53f89017686ac475d58f04ca99f84af930dc21492f8378e3fec205e4029872b0302047c435bb50066306402304d6cfb54755a95c84b851719edcbed7450750a957b891f403da96c9b0f35c29ded2f34d1790f89648e15285629503aa40230101a83dd95e3103615c06aa6a7e153b8350c93616ce2a456fea7b740647ba2f009169b7fa4b5487c6e6e638068ea5d930302047c435bb50066306402300aa8a3b9ec6a6f5191b06c36c98cf2be33e98eb98231dfac015a65c103d55902868c69539b2e76fe60850887d90f2a0c02301e006d34ff526d76eac0d07ce307d9140752efbd3a336a6c338e066775c7f2cbdcc062fb2bab7d6849be7651d3cd3f5e0302047c435bb50067306502304d1431ba36368dff8ecfcad5613138eceb55dad0f2c2a5b4baeac69cc93fc2664767fe2a6baa3df001b03d52ea5e8210023100d52b27f3922afaa6815381018c32ee513d43465745b041fcec7df2fd3f0d32fd6e89fa6462260404a6c9a16dff0708990302047c435bb500683066023100bcb5d627d1039d35ebf5b3c1432a39bbc727d4089a059dbfcdcf97ca28c3ceeacdcbcf8c0da666daa8a5f0ee0c0160ee023100efeb088788ba098fe105dc75dfbd0f4ed8f96e9281cf1008aad5a33f0f38e957d3f7f0af8440c63bcd7ff43e8488606b0302047c435bb50067306502302fd5e143c616aa2272e4947569891e97af815cd1d1353dc0ef23740eb2879672bfa4f47484d30a061570cbd9d84cd255023100909e613844fda9327ee43701ea9642d3750445fc66a692a4f3aeaaad7d0ba97a1c6037876bc40c0296fc0677765547470302047c435bb50067306502310081552fde09ed1fc6fa63dc45ed562c2cc15d6f2b616c809d580dd2c9ff214a3a74265e0b1312792276446b6240543d9402303f0ecff5f23e510ba6ec2eba1614cc8e097cf5a42e156e04a2925487d58f35ac5c32af5eef7915adc09c8951265508200302047c435bb50066306402301e883f0450822bfdd31b20644f33c297b47cd0198d6cbf3438c8b476169b47c38d22c94824b4579cf9d7da96612ba5960230457fd31014e9ae3e621fc40a253797802689052a52372de90a501fee2b9f161ba952e98b349e10dc1a96dcaa9436c0370302047c435bb50068306602310097dda6b83e9579bb3a3247b112be175791ad9ab517cd67ed35d37d2c566aa6e7debc057ac76445c0ebc57820321f4cbb0231009e129a7d14d6073beaa47ca9e540b4141af0584fa737c08c8284e7e23f2ac93b62102fa54c9e687690ecee23a7d62d360302047c435bb50067306502310099390bd0fafda05a63746ab244d5a64e0f2d664acba7df49917d3991b9ec297b99718c78e571909272a3bc86360297dd02300a8633f8211dcbfd280ea99d47039ce0217b6de005924ffe956f287119dbe5a49cce329aa4b891f648a8fa8e071d41fb0302047c435bb500683066023100b3717162900f5b81a2701c6178c6f57eb7ee5f4421ba3bf2914ec47398ab07285a889da7d752ec5b960c4536943f5648023100b60f27ded3935b2525a0b1ac86f808bf71aaa5285fdccf05ceac2fbe726ddd513be0fc331cdea8d50e43c701b57ca99f0302047c435bb5006730650231008959466eaf50854819f1af4ff1d1daba9b65ab775e599e272d16280656fced31b945fb9bfa8cbc44594b4faf078ca3b102302907a130ca8a17f22863749881d19f8a59ac2d937472e7af7fcbcaaaf3a6219d37872cab9fd56e7e23e6bd08d84ccf9d0302047c435bb5006730650230363e14a1f83856cd7aad911aa70de682675cf6b32639285909c4d87dce57760ab80fa01a8a3997c734fd3c4d25ee46d5023100d09f39430f088bb3157760827045601a707c9669cb37b2e0b7ac51b39fde68e8316310b786e44f86525987020ef8e6120302047c435bb500673065023100d3b0ca494a58d5c38fb990bf8623f4fc78cbe5098b50ec81967355ac7a2736923535319d64cc487173ea2fe29c0a7178023065d73c030f573e5589b24185a40342f916348960fa86b042ff0ba17b0ef20b29e00d40d6ba550757ef02b36f308591be0302047c435bb500663064023051718c348da2fc6bfb4c1ae89cebaf6221468c97ea22d4536f798eb4018bfbcc9ff2e083e318a906366b5c9eac96afff023069512583f328d893785f73b8166f0350ee3ba7114885af7d4075b5cc354a8f7dfda6f6d903e151ed05752c8b5d37c9d60302047c435bb5006830660231009457526a449788a23ddbb94d26f54a0507e2b0e9f7cbe26fd7da7889333e2d8d16a0727b3cbf89394d9f05047748c393023100c21fa138aacae7415795eb78659484817e0c1de2c490d066e6d1db3f83e7ce70c3e2eac665a51394e5ab27ba69d405700302047c435bb500673065023100a1b32d2f9fbb22c23f3b6f88ebcb1afa6d1d2665a9577ef5bab6e0481af940be29d68db1685a9dcc0bc600de2987f5cf02306f373d7c6434449a181ef24e96d0033a7b2ef47468ab14214fb912ea8003385c82117bb339a3b46de2cf229c4e560fe90302047c435bb500663064023001a4770c0e185be7b5acfbed207882f4c5d5c7aec457720338c28a6a6104152dd7b9d40a394bd540b4682a7ca668b8890230275e9fae01d315ebdbccf9a709291c7a4808e415c17a1757bbde8a69fd16c34910c28d1f25a795b016b21d9ac9a1c1250302047c435bb500663064023020816683d4dd054ec849b86258399d156a4f84d3370713fbb7d774dde0195ccebe8a1e4c4e7a694a38c2e5070e2e57ed02301b66b4e22d325f38d5c8e10987cf340ec55ff7d412583d19c90e8ecb882ad391dbecb37e42908c6bd5a923c039065d580302047c435bb5006730650230068c8d3c1a19c90031919be444247cb10db18428b2cb48290fa7c11e7842087baf9f5c9cf55380f0b6e1d78f7dec393d023100ddb7013d2432d6bd3c2bf160701d0345dd265b4023f3140fa3f087eaa5588152480442fd05cefe396e0b702f0a3dd1c00302047c435bb5006830660231009d9d0528f6eb41280aacb6e12de1d5124f68881ea9a479fe63f11d31a9de1c316d1dd4392b819a5e3e78cbf9b1d762ab023100a52161c30cdc361dea2e2445f4f19d0335d9c0e82339389c5b8957615f0d63cdc85cdfe293164944fc4932784b98f0120302047c435bb500683066023100f1627899cf0b041c7167251f4eb774247c5efdbb4a432c24a203cb7e6620593f6d379f9e194905436b4f4f16f7f668f0023100ee1111ba29159f3d5d6cfb638df51bd62718d01a6e923e5946add8d70177b23a324f694dd01a5efca7d33eb4455a5d000302047c435bb500683066023100a7878ad907861a0a637df5055134c919786221fb2e7761da3cd42b9781bddb985cb64addc11458d0f6432d3fe9473bde023100cbd4df6263132ed60532e6897d483883fc6919f7f79a064cc3feb8d2c4dc4ffd4c6e17547fc493904f7462bf6cf5ab030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dee49b5bf0c1f24ae198f8253d25c797138f5f2e6ddae7ad4e821038c025ef2f5d6b81938c4f3b6c0815592a82437060023036bf81701d1c1cce4210c81c2c4ff510355a1d0270e809ce1d11d8e63d3f9255931ce82004c099c03bce2eff92c036a20302047c435bb500673065023007db3898b5347e37ab95bb71ddc03872650273c852d92548f870b4f0e19c4185981e1251371bd709f82f6ce7f44085d6023100b9e7b7d900520ba292623aff5b4321f466033fa16350b23da6c8cd23029d5b0ed60ba5224325d928a82c98b6b89d05180302047c435bb500683066023100aca92310a05b55484be008397a7f6b3d15da7d5629ad96b5db6adeff12feefbd18f6a64580656f2c915477ee99d7c2a3023100c515bd7fd796a6f78a109e78bf9e975e5e7203685225b0fd4161875b2fb7fd88f41d291899c6a4cdd7551bea9725d3c90302047c435bb500663064023036b55712f8050d6d34eb430b1e87be3c909b579a6a4d4b24ed081f2eb4850ec479016086b0a8fd57a799ce8c065502ec02306d867de7697cbe0c5c2bbee7d325d02cb76f355013ff57f385e4e9f513299e4fdd2b8bfec945253def3a3cf13fbb1d8b0302047c435bb500673065023042ecef8206ba0eeb6a13f8ad9b678fc9060de4042e8866c8d4f360f3a14921bb0ed722bc4d093d8092a852b2d7e299df023100b1f1fd91e7bcc84b57c99ae739fb04f6a289db63d33b9b411512473c9a96733032bde5b67ea59fff3f208c4cbbb25f840302047c435bb50066306402301331f5c801ecec85c3de905ab123051f7ba8843bc19df995342ea356d6c6bb8d1a8dc5e2cf3c9b38decfa8ba067f2c870230663c37452eee4601c0863ee5e63ade8fccdf0c13ffcd9c0f0b249269bf6f7c5e7908d6321e0843a91846f5729c637acc0302047c435bb500673065023100dc987ae661b2645151fc64416b914c7e1d203bc2ab3d9a7826ac6fc14c82f52be1565a28cd64efda7a343e6bcf411a1b02305fc46314592c3bac3e54740b5c33a100e700f2f3d5223c1117c3b60a70c499f50b67ee811d3ea8073f1b3fc2079f9f730302047c435bb50067306502300be57138a6af9f46a4d5422825aed2f039247766cb252cb0ed06bf9578d27e9f9cdcbea285756c0db1343370137463d8023100e0c47c051c222e11fa68ba7251c278db4b6cd8c468f99d65da5f4102e2b54bbd63b2d50d81066ccbdb0d072d3653fb650302047c435bb50067306502305e0b85b0bb10269124b06d26ee27fee9645642a789244e9d11e9df884e833c0a5f2ea45e85ce447898c31367132273ca0231009d7d8847bc050350135bebd36e0c20c31d89848c36ba362f5807e305c83c83f1b9f4faa7dcf9effdb53d008b9631fcd60302047c435bb500683066023100bec8a4c11015c5a1e6a781ca3981819d1a80acf6100cda3ee39ab78cf04dbed2392ad5631dddcb48cfcfa46d3014106e023100e4e009f8b2029aeb3948c9334dce0d3c2af47e0d45bd5e15aa8918ed84813a67f785cfcddc16bca797a1b4f8dd91f1b50302047c435bb500663064023032ce3628d8918b60c56347570feab18a32dae53f7460b5b0efb8b45256df5ff73c7ad16b4ab6f075f4a9c6d8c9ab96ba0230490a9585c6a1ccd768d6656e20307c534cd9b34c2e424dae2acb1dc57be98114ce72aa4afbd03e401eeffb0d131868bb0302047c435bb500683066023100967afc4634c7701ef3873b97a728dc2e935ae7bcc7b90ad033e42d6d3c82dd7ba61ee951b6ead79c933d43288497ce19023100bbd88569cacd666aad819bbac0376c937de1ee8914790b379f0f3c55185423cf4a2bd08ae23dcb534ab1acf2e892d6e60302047c435bb500673065023100a7f724900cc00dad9f1d7d13aa2adf44b799475bc398f4c8786ece35ebe17ea2035c8ae5f43db1c7bbc06d9352b0cb7b02307688655cafaec0c5405129d3cded1491e873182b47769ce11821572131772c2b1eb7fc8b65f870e65d794663d3368ab90302047c435bb5006730650230661f41b74a4fc8f630851eb60effeef7a25129bbc76e4c8d9e596d1ac9b6d1f30111ce1a4049a25761ee9d3af9e262b202310085897c357b91b0c6cab192d1f8268380df19c92cddf7e53f24d7565a189db31aefd613aea395a1d823398391f2e4c0780302047c435bb500683066023100edf6280f3385edb0148528f4e0f38e81f512b6e624d99db7466790478266e057335d8f334695e4644864d2839f972a0a0231009eabb2e152cc4c190e2970bbc8aa40ee52d170cfbacd5e651f38fd05130cd01e9be5eb7d4a9c9c623a5a0c645f718bb10302047c435bb500683066023100dc7e1f1129c7db322971b449854e5a8ab7c634f1a27096a4a3995889b1f966be189f0a07e93229a9b7fecdeac4add3e0023100c95591bd8b4b5ea917d3dfd44fc3b3883d3acf91179238fa9f07f9da215bb3b15f74f3d4558d356034d02cf67a016eb00302047c435bb500673065023100e5df322ef5096bf17561b23fca15892889cd73187cc7f4af37ba1c3cc83d7aeefb0c6bf9c42cf1778b2c0572b825cde602304add80bded9f6190d04df252ee87681d223ffb072a90193c111be7559f4be3d58f3d5fd2d4cb2c2502070ff321dfed6f0302047c435bb5006730650230434e7fca5f5cba30084beb3a55051a250480c445b0802eea250e3676b0916b1f4b6ef421bcfce5c77f0439c68ee9fa5402310092f7fcb7fe7918a1795d6edc60548838dbf74134971f17dcec70f0a33dea20850a7515d3a89a3b0d32d1546bcf164bc80302047c435bb500673065023100d411c7822aaeabdaeaca529550246160d82c6e05890cfbd0d387f24078e90c758f6341f9c792f918c579df5361135cc702303a04b71016b4d2624832e6e97f8e80e10627f38ddbc94be5208c4bb53d829173db80d2898dd41422bca15d759ccfdfda0302047c435bb50067306502307dd7ad9678d05a2d489dc52737ae75b5cc3c169fdee20ba6e37bdb61f3b7faae1f5a7e110c18c6082daa4b9070770b15023100bfc12ad75c81e3bbbae1cf5b811c8bbb28d58c45d8618699bc2e6c8f064ec21c43e4d8a60f9d7f11f726312a2b1e999b0302047c435bb500673065023100ca068dfd7aea6b406e0566b34badca903035009c663c1ec4064164ade72f256c16565130e38c4208e1df174e3818e9cd023011ace09bd350c9c75a4f0ca4fd5d23f2261434f06f41f4be15633943909033b4f4b611f93a8ee43f9ae5da45cf3a6a0b0302047c435bb50067306502306d539afa2cb49e00769df811ef2a45c7b32bcbb2541643082259305caad3f8531a283572f837ebe194df373f6d868003023100b53d20e3b1aca3cd298e9091c016d5b7e4f434e8e7005c80b58a3f2af85b5986a50db17f27cb0b82a37fd1aca65032ea0302047c435bb500673065023027f50d031ba29162059e4f10775fca3e1594fc812a1d766288cbb2791e87e5088b70686fc70d2543815608072c332050023100829bd35d3b9275c773687d98a9647ae43caf22bee866ec5527476068b5737787250e296db586e94183cd4dac37406f080302047c435bb500663064023067191bff069e7ec6a79ae1ad055f8c4e4c7b3bde2c4e53f944ea029a4e9a90b09f862b1419f76c3789293bf8020d595702301d16fee1a2387fab444574483aaf55a9e77ad4e0ef110cf85c3dcbaccc3296d1c70da2ef678cbeb3632f700a201de21c0302047c435bb5006730650231008ae4a770bfeb67b06919c56b63a7b13f9e1a3bb920e7e970e86a1a7e5a11f8c21b13d4403699aa6cae48ff31a7c0a8c1023029b93e683d13075335b8cb8fdd8bc928abc6f3c32ea7acf1f1b82fa8e1e9aeb769e17aa7a00dcf93365a3b80528a20db0302047c435bb50066306402307d139ec1e4893675cb3e87dd1f60b6aa00348b611772c380bc211b871313b8ad3b7db31eb710cfbe839005ada95d4ceb02306ba6e4514b912dcf58b635b29cc191e08b4e28175bf24e15d52f50c0726ee926258960b9680a6a433cf8d04e58f5e4390302047c435bb5006630640230362f6f55ad3b9928db3f1f7bb8feba52d1644941eab9318d27ef728ca5e0a1ee986f477b131b9a3ee337cd5694871cdc02307dee78ed9ba7a10513f88be669e2656d86537fdbeebd8bc7cfb3cb1cb2cb30036e055bc63fb6ed175aa40098dad601b40302047c435bb50068306602310088e9c95f506bee1751fa684d5b7d668b1ae74bf3cd291b551b5bac0ec956f837f3154076f2beb89eadbb1381c8196bc6023100fc26001496b69b3387ec777afbe7a9ee331ea1e296e40404dd3c26374b4cf748e124f8a1d7adfba73261d31ec4a4e9d40302047c435bb50066306402307e4db4440479e544d4323ff3370338633a36020ca4e56d9a9ca1e56afe4f9552e6b05639b321e1dad65c7a84f2ea1b050230616516a5f5c40deb84118e594cd559c3df9f71ea3146dceb495e0fee5b2863e257bd52adb1c21c33b57ae67656cba8520302047c435bb50066306402302310e6e8c6679a5407504959ee8524d407b9e2daf7d933a6bdd3f67a29d4f65c78fcb8a5d632dcea75656f5793c7069602306c9d902928b694efefba8997e5d30f41cda7c2bd557f6ab3b34b23a7b8b6b44d6a61697a408bf035c99fee4fd79b7c330302047c435bb50067306502304ea4d6e49680e869b8d9e3027dda8d06238eb8cfb5d04d9aefd1a3a44e891a1544a1f1dde6d8b53444bc8ac6795948d1023100ab26774741a8516d014a169d7c609130cb5422f06688645afe844d28ab5e4868105987eed9619b9b71d902e78134bffe0302047c435bb50066306402302f57c5c2725b25ca7707b18fc8d39fe235b7e3f483f1e653344713a7675e065b75fdc5c9c0e5ff0bff0ca7d6e998d0860230492e2632c16a21627d8d23daf55c2b6e573438f747172c605b866101ad8dd056223bf5fc11450e0fad8619528ad05f1f0302047c435bb50066306402305aae09489f6233b7ed69282c627320042995c84386c6fd0e123e737a7b3fb7937925a2194b96ef99cc092cf862356bd402303055f1318f9d0b3561fdea36a0758aeb67463e64bfe664a5467ba6ed0ce8d7ee7cf7590cd48d9154b0cb6debf660074f0302047c435bb500673065023100d794214ee2e3ed480f153c2bf5a0bbf619e122b92ffc05f786cd1ce65a149aa1797637f9e9151b009876ec91a97b324a02303a5892472d70e685a137ecffee7534ffcda72fbb632a705a268dbec0c541509a2f68bfdc8f13c51f763a3c25e2445eea0302047c435bb50066306402303c515425ecf67738620819a1dea092fc60277fa02597737a791a1fccab351416bbf92a5455e13f24ab00e2867b707b8202305c3830f8d65ead46f067b603b4967e62285f4fccc0f914f48c06e019c967782fd23e66f99a4984c44c609b3afa8427f30302047c435bb500683066023100a7f9f457999df3039574e9af317558b9719e40acc4634e47782b0897668dfab0b48c86871d99045c4ec6f385cfb0ab66023100d835a1805415e090519a15226f364668792b6543ef13b6b12ab4f69cab61fd5545256e0d49637f90eed9cbfcf66b69a60302047c435bb500683066023100db26776132375fb70e51c675de8efa021bca0d28b463b35ef7c725a156d3d08f9c51ba8722de7345dfe6ee72aa48f0e3023100fa499f920d86860d8ccfaa51f9e8f4789f25b4c3c5f2743006f68fa2e8a96f985464e6ef9a8c60ce2bd0f58a359e2f3f0302047c435bb500673065023057ef35ddb7c2c08952cdeb3848ea8849291f2180d7239456cda6ff6dd46728364d761d1a5ce4430c0f8ce36fc7dcf874023100ea31ddabbfc691a31dcac24f1afe661898faf060dce13a9a94b8d42130a6e865ea7558e4093000059c9bae91905edb3c0302047c435bb5006730650231009713302eb4be832abd3f8a2ef283dc737a6bc928b8ac1f500ba08ed13053d8b0b72a1a6b3192b270cfbb1b219cb5e5fd02304707346580972ebe5abc7905c54344976bf2722d9118c1539f233f7446bfcf5956110b91bcae3bbca95d8c9eba389ba60302047c435bb50068306602310098e3281511eb29f38947a4b89539465ff0903f0bd4664b1e1e0b4387c39aa2c8d276b3b5e6fa07ef39a466e520daaf1c023100e3b4658dd7014df957a6621e2c6111cb85063f88f2442931b0f6308a9f65468f8bc51e71912f1993e5a132fd2dac73f80302047c435bb5006730650231008dab76fd267d95b381ac9cafadfb7f54116556f97cd6ea0a79e68afd6e5e17b40b1c2440a0592f75295cc98af287733602304a3db65142a9a591cf710c004daa91282b4eac734472583d948652965f585b1f4f9ebe0479ffe46f851d49bedd6b339b0302047c435bb500673065023100ccb81f12dc41dbe606be985dc30faf6bbd470e5de98735d41b442e15cf53268c74f47010030e4b25e489fa8d413a067f0230541e23e5c0c2d82b6b58b6008b573d2b556e2b4613cdf34b7b775a4a0b43367f485de6b8bb6c6f56c25d5c3d8852ac600302047c435bb500673065023032e58fc1cb015fb7d115ee16562deac00fc8ef01e6cb62cc9d536d4136a4bbc3758fc926be314939876988ad27c762ed023100eb0b1296fec164907c6a62db0f70f962b0d2f8551e3badb948b6ee467f2ee141582b88318d61c7209c7616eeddde7b170302047c435bb500683066023100c40c6220472944359307ffde7977eb2adf6e4aeb839d7de0cd257dd91b625ce5f37bb8b0222c95a89e5188fc645fd427023100f0cc9f12362a2d457ac4e46f613f56e614d4e9f8a06b7d752e1cec7477e5ad48cff31810e521a7c853b899d0431d60150302047c435bb50067306502307e2e232804008c36decf5d7b90b18994db0072b47aff432d89616a816784e71ace4830dcc2e2a960ccea35bf4deb23bd023100bbf1c3da3d2deeb633cd590f2797604dc4ac2969f2d5e77cebaa464ae72694d5061917134a342a44c7caadd5f455ddf00302047c435bb50066306402302684ec5612f08bd21dffb53c0839a7ffe5cd81b2d1bd4dc04be90d5fce91476df60bc3124ef0b64989dea0dbff27012102300357190f4186edd43b0f6ad497db43730563dc0f880c78bb97969279a8ccd609d316192b1e0e9ce7c0ba67d45f5126510302047c435bb500683066023100b4b6e26272b5aa7a4a01d35f2d5a7078a7b92dcdff785a0526c436aec8dc6e4b75b619b11e8d7478326270ec190da7a4023100a0631e1f128cfcba1415df7329ddb300b16adc284c3e75f9c1da20bac5342308ed0ace8d536f9014ca7d5c6a3161e06d0302047c435bb500683066023100c2c2e5af681fdb1cd39c239d6acc6e3392a91fc37404da57b1daedcf50459cb2218392229764df17a0bf051b82afa9ad023100a533b00278b513768aa7f098f152401c8ee746c76e04357ad011f4924984cace66d77d6995f57b5dc6791e61d35f961e0302047c435bb500673065023100bc308045c3d97de07922ec5744b7fa4f991fb64ba7c6e8ce7aedeeb5e2a5b83470c9c2948f214ed261e58c79c80f5cd8023029295ff6e08777a9120ee2f2a2929178f7066e5c10f81ede7225eceefda823f66242629fd36babbe19201b1ea4dbf45e0302047c435bb5006830660231008765adc1219152048deb0d2cac4b582f919a0cbf589eb665d8a0841da220584714d06eac1a73b38947c530a9b71f6a31023100b090787355a1c1805f2a783bc4b286bb9ee83803115f4c13929898485abcea2abdb6e0d6852f5f3451bc4c28e7b1520c0302047c435bb50066306402304ef686502ec8939608a314c3c1ba06930835192aea5f5a4c30490d6647fcf9baf78d914f249010a2b08e00a9152782d1023036b01e0d7f0f49f6bb6c2c809ebe10f23b0ce8c4a1c29542967e9bd5793c677cd9a5f5fb20cf8e398863dbd0ef7211ee0302047c435bb500683066023100c413b1e00c5b58acbd651b3add9a123351b092c6f3cb549be454f028a8d14dee740d2c7f37bf74f1c15c3070f4e5ea79023100fdf74ff89994c7bbf1cddc12f19f5b8b9d5dcbe931edca2a0b1b41b64b67e6f01bc229a9dc30acf3891f8d35e7b693390302047c435bb500673065023031d9e370bb7a0bba9e4db17ef1ce301b39308568011f25f301b514e95faf31a93cd401274a176fa8753ead824ee6ce4302310080ff3fee3af256c0ae4f9d35ee050f4cefdf65c3ba696744cefe91290d47b416d7ff947f2c99a898be2cb2c0bba093040302047c435bb500683066023100b7d0e8f941364e340badb9469febc97e1a0f69063cf8fbb125b09703d0382853d42fed1c4a4d696bb295f4f2a340e43a023100d47ba0edb4bc5f23a72ce7bd2894933cf048c66e87694edba36aa1011536cd38c58902a55ac385aa423bd87348afde430302047c435bb50066306402300d5187e04ecc19c7074f147074ddd954c97ee463a8e2134e5a97a06205f73738f6ddb81e23c9fec2e014a58caef9f6e602305d4c847169933535fb646c8b00a48c3e2cd7cf8fac281b8eea1f4785de6771f730d57eef35adb9d5a8991ae1e0f2d48b0302047c435bb500673065023100c2faa88ba0657882f10a22fdd4e9ea8786dd8a82e851b68bd08a310c13566a2c700e2d45003b53805753f101c5ae2b9b023018e14a4e3b691bc330aa341171170f5c925d4a0c13cf2e3493befead1b2ea7d7f2829832fceb2fb90691b4fc9bda84b00302047c435bb50067306502307c29ff80212c41e2e30d8b4d81a4a9d3fddbb97852bb566eaec574c65a388040badf1595c51caee899bcfd37e9830585023100f18b51e8980290323ee427dc9e175cbbe0ce2211fb565c10adc4aab0e9490b8b70cfc6d3fc0fe3452106e4c554ef2ef60302047c435bb500673065023100e45fd3ed5e5430f0bbec661d186017c1d05f31986426949c216a1cc1dccbdd184b13311db73b0fc828aa04aa6752774c023027f877c1f6f2cbdb099cc12487b610606c8d5e5c263f38080292ad5cfbbd17ca2c3d631ddda91bdedcdb3ada71a4d8980302047c435bb50067306502305bb38e6d95746597d8b1068d6869ac41efe5435fe9bacccdade60b53dd95cb0cd52cf8b594831b7517fcc55013dc85cf023100d6233356de1cb0ee9161022024ed766dc4fa609051c9583ef9703ffc611555712c24a0961866eb6d4e7223e1d740d7df0302047c435bb50067306502300f1366e6a4803e9aeaeabdaf0fb5f1721f7f5d7e21725246e98c7fea776394b2f3809a3ec80620c6558395ce1777ad35023100a850d2e4cf5f9558060968a060dcd37af36badd55136c5b7e457fcb7d8292296297f554c8cbfa827df3dfa25d2f51c240302047c435bb50067306502305d8435b48b4cec61842f7fce68a5cb9d1ac0435d976d05e57113c7e5b35808d59fa71c2036f3b86ba5da2f0e95bc05f0023100c76e33595e5d97be4b5a3e0df42be5f43c74de3e4d16b5d98c0861245427c3d13865c0e7ee89d3bfe9095f3175614f3a0302047c435bb5006730650231009706a2f4befd49076cd2e52c5dd56b4194ef630755e388cd0fb4bff939939600d14c9e23b6be3525636818d31593729c023006b3fe32ef32633f25cd40e42c9149d79e70c083935d14abe7339ed315ce65c9b80d92911c5ab3f570629861e6197c670302047c435bb50066306402304c544fd39514e3ddcf54f4dc8bcdd4e5f8f89891dd6e49ffce20f87ada32c15198b4a26735d70526675399cbf936b33802306be71c0317b3a2449adad68e31560da0bbca3e5a35011d8315549822825871ae9599adfecaec80a9c1798bc39dc8c7ea0302047c435bb500673065023100f3852b8674f22a9a4863e4dbe8a5029609588298c5d61f9c0b18e3e6f6cac944ed5fffd8b37bd610f992acaa066b2b1e0230543a56ab996dd006e4d9077a48ac173f6310cba6442f130a8724cb97e115c767d33e43450c3a36cb199d78155c8967bf0302047c435bb500663064023072c69321440bf98ddb239b3fbecac8e3dcb968a891184de614a9de746c24b5eac42b34339dc7dbabd129bc27d11ca6df023052157265f7d5d15bc9ae46b342c38d0144819ecb0d5e53ba23082c73c65ef7bd270f38920ed14dc7f3a578a70efae1b20302047c435bb500673065023100f5123c46b8e8d6eb2bafa41d0d73096b9e844bedf2e43bd4d04a7bfac2eacff0b6cae68aeb0339674f4b20679b76b252023051613969d8f8606b5a1ebd018f1317ecca532803f9c37e0157c30eb549f4fb9add647c967d5282cb243d3d198808d19f0302047c435bb500673065023100bbd9cbd50d95d1403489c17c6ca0d381abfbcd2cc68787288c4f96f85790c726f7864607ec4d3805ada39b122243a7e50230228ca9982aea323886506fef946f0311a52afb1b17d4afedccad645283b06f3e80c50f8171ef9a7dced5e000b2ae21020302047c435bb50067306502301f08ab543ff6e572f2177dc9d530add125d1932a020405f6085539b5b2499a49b5beba2cae0fa9985d363e55518ff524023100d914f93831de8453a44333ff8a9297a6d88de41dc8cd99f5ae6bc5740fbf644ac94a9d02b94bf817e3d565c98f3894e40302047c435bb500683066023100b9bfc343c6c37b8ab5ffa740df195c9fffad03dc7d0d666f774bce241e50140e0d9c0a35925eb2e9e4060cefe2eeb86c023100f2ce28ea58244eb618f0d1812eed1a83f39b11312d5feff0b03382507c0394946e1550d1a56d3b786fc21e8fa19b0d560302047c435bb50067306502306b006d45e651e49a2f53f80672ae67dd9847ea011c54de3aca46abb17c95615a0cf703fe3c329010a46d68f033a7c628023100b45c72a0a64e92d5f48e91a9842c9fe1872f494a203b832bec28a8ab44fc9766ba469f067165b3401c9e97519026f4770302047c435bb50067306502306b244cc0688c2c9c22903d787ee189dc7d1d72ec7cd747352673a516d2f270e6cde30f0da9bc38cccd3cb1dfcdd6a8dd023100ce76f3921a2c230a175c1ed3e6308074252d6b42091fc9c4f41b9a57978eed37715db65970f61333670b2782be158c940302047c435bb500683066023100a542ebd5e5474caf0770364c22cd9f37774c6361b1aeb391fd02ba67c077055a25d2d54974926c060908f4fa54bfbd4c02310087efd3f99f6b0bb71907c2f06268b45433ab2b412799ce7c64e72b0fafe475be9b3094c2da4dca7fb1629fd12c8660ae0302047c435bb50066306402305701ab1cebb46a9522391d8b2553cbd9f40db0e572afbf05dac3b329fdedebe2cb671e3a2ce91aa024f7a7d2bc90d12e02302599897e93d27c16dc42616faa1ba1b351f4a799f2e940f809e8c434ebddc7c11bb0eaac13b741c3b2a02ba2c3a497f00302047c435bb50067306502310090049c84f7a78d54da2753de21b760a30def463c75e3451ad4d073695a9e8a400c72a5576e29b88aba8f2af36a42b061023032263d812adbbc0b215df20414f650a2d69a27c0b9729e6d0ceb4a0f0832a6b5f68466cbbb6dce9b7defeb52df97315d0302047c435bb500673065023100b31453228087ee37288e120264422336606c59059c469873de68d1d28a3a36e17d67569cba5472d4cd392fbd8a50c40b02303f23e867f890a89b81d7a2d8d723512971a8e33d35b120c4e084b60975c218f73907d3aefe54bb3fbd5fbe4d78f1e4030302047c435bb50066306402305608e2e2e7a602ef2f747cb21cabb207a3ad2b354e4965d491fcfd4ed0bb891e7e8af74d9005b45b89e121bb656d770402303bd6f1d616154e207eeb49072c96e0f575a16ec3e9236573641d2d25593ac2f4423eb351eb1713cbce67a4b3e120b48f0302047c435bb500673065023100bc76a87886c97524340663b3fb1c9e7dd884dbf0c854c13eed79700aeb3e53590843ef6718be7f5feb7e9c7c9e987864023002c8c78a16c7e0263c72f9041cf710cfd7e43cc03a3a3885457082b9d2921c3ba5f40de7bf9cd1ab7cf64d85ea1d0e050302047c435bb5006830660231009ea03e936b4b6414c73fbeff8087386d82edefe762056199dc9b7d1c07a7600c1cad99589c8415d8491f2af632bf5da1023100a32c44bd603b8d927ab79209705ad2b736e647cccc643f94692068269725d9c8d54fd45c6b6ac27127d86360d200e9e70302047c435bb50066306402307c0b646212603ccbffd31bbfb3b24240082d8864bbb7bbae4fcf2368742efa83b0985f334d0612bfe27379744277afd80230122e40291b5bf03b90e7a9389d06cbf8578384c0d5610f0fd79ddef86f4d36a53c7fb33647f6c260eca5695b28d58fa90302047c435bb500683066023100ea3ce4023e89b249b0d950cde9eff7d07774ff555b6e0c158f3b068355f7cb346a662c0b6c2c3710cef28c46e651a27302310085bb62e9e401e96d9c3f6ff92353b014ab446e089a0d9ee82269d311fb19a7a9f3d34be99e17913762bf3fe3b4037f7a0302047c435bb500673065023100a933fd4b1cd6cf1b5fbbe7ea113b2184d19894e1ce621c9278e53ca5612930e905b47c02a2fee2f927f645a5ed68d3950230495bb763f1f987a10a807e8146448b2abd3efad8ef59c7a96ea4569457918ed9df2d52523d623f941199ff6aa9e3fc450302047c435bb500683066023100c8ef5d62816c02012f5c56af6a4e346c206568c12657b40362624ab1aca5df9077419ad92a50c58cecbbfab9cb29db4d023100e27622fb380d97716c2d95cfd94d7653496ac4f093c3c3cb1875ecf40644b86bf449ca4b8f37a877fded9b5570ed5ae80302047c435bb500673065023100c26a2c5949a54c1f9988e55d2cb0dc9b8ebcc2b0f3cc0a8ca390c9e90e9aff9c02842a9e99af3cf14e734797fa079c8e023001c5c61b87bc2b7c17fb3263e23ef8eecec7ec8daeef3437d101018b0871e317c5d4511936c9acd72b8a89d0c0e9c3dc0302047c435bb50067306502304ba986375d01f4cc4f5f4603685c449d96bf83c03a7c9006c097a2dc17cf62ad62f7130300327900a2bc4ba22ce5e6dd0231009db82dcd1ed4c4c8ea95a51914bab3962478aaf59ea7d4722dd1a15712db3b48e2338fa10943ea58ac5b1c9a5ef1546a0302047c435bb500673065023100867e5a69ab0820d7bd9be1e12f1cbe102d292176e3ae07d162b22ffad8df75b25285269042f7affccab9fbb9a5a6569802303fac1de86d97b4507dc3cb3e1c731adbaa6ed5628565e56d627c3b166d957adf81f2136d3f62843748924c2f86b06e440302047c435bb500673065023035a668f9ebc2e317f901a80f7b8164a4fc2cdf288d366832d86a1b840c4ca081ebe9d6fc3cf9822364871b8f9a418e5c023100ac399a6de31234a7d77c24491b341bad5ceac27a5f2a760c6bba3d9c84e247bc654cb3c6ac71d285081452f3b2d415240302047c435bb50066306402303327698e2673e0baa0cc719c7d5168f9dcc6d0675c1c984f77cd254cf046d5dbba4cffab15edad170d70c4c7d209d71002304ba5f0834b9af78cd19265fe9670199efb1df44787ce37074797b7e122fdada972c9c82393ef47706fda71c9e72548b90302047c435bb500673065023100bb0fb49853731622c6a9dc47f70cb98363507544c890d6b58fc601a456c6f75cec5e3881c6164d7c1d0b665a7ca708d002304c63ee1c638f5d47378991de6913e143b7213c1ae8669bbf0bd3477dd6a4393a8eb1cf1ae77abb18fbe11dc23feba3e10302047c435bb500673065023015034443286ffb773087b7af806080cb02b168cad144833209a94f34ece721593ce1bfbf8d4a1acd526c8eadb8c122d2023100e50ff7429bc987a161e57e3607b2a5345b9014120a619a316a913879c3e18e356b6b16183ec442f6b6f4912286a765330302047c435bb500683066023100b2660f757ae3dad165829cea2252d5cada5b342985904282798ed2439a5aec95cce8cd0c43714a08c870b138122ee38f02310099193dd2fe139bff626d5c125d11a0182ae945561d781fcab04ec0ffed08e8f1e9cabb963e54324c1dacf6a0004e4c120302047c435bb5006630640230671a868de0df18e06d424f32fab8d1d52e8386d812a86f29eca4aac99d0be4160d80683a9ae43da05ac7153d80dc56080230358c5bbcc7e172539ebb393f3597efe73d66c093754959e859840089e0298ec1f767f2c46d56207eee6342fb38c6eb810302047c435bb500673065023034209bfa3de0aa964386e5ed308fe1a3bc986e31440223f5c2523cb93541b02ad81e13c148db49604adea0018167d3d8023100858fe065e9fb2424e0e1ba7ea9a3c9a4becfb1209feddccdfe1e30e85bfa79474521f6361426c43c41bb7b8b885a5c9c0302047c435bb50066306402306b34ac399ff0710cf73b3a40566567a96ff130cbc8c36aa5361f901539863f4c0f3228712af32c8485fec6c72e1816a802307fd8750037b0c769cb6e144ee761777266609bbc730ba1d49318414f6de6f3d5d65bd8c7f53497dccb47d41e9497e8ef0302047c435bb500673065023100db95fc27f94d7fcaaf952b1cc2d140db4af94dddae09d2025aabcdba71e3751d004e36b365c2bbf65dfb14e9e2192cfe02306814a45df9c31b0db7afe02833e864f10c0a7651b28fb39f5c7f0fa79a1e5114504dd01508315d80fdd850e78bc6bc850302047c435bb500673065023100f582a38f0133504082f64af35f753f27782c7cea6c7b119f3988b04293842be2606d84ebca03f256dd95ae8389db1d2b02301686fcf9befa6d8d0bfa74511ecf385c6389c9fbf20eaeaea0e122d7ccb02d1a529e3fe703e4a5b33f2f9cb17d30ecb30302047c435bb50067306502301bbda1130cc512e8825d81dd0746e107ff7408e0a2e6e1414345a84d999d5c9dc391cfc29a90c9c4854f7c69c8d199dd023100ea1c02c5a4756872de4626783140f07171c444f7bd5820781db2027b1d98403eb2a46dea17e1010b1332282d7ecb10ea0302047c435bb5006730650231009a3fbbb07b819517ec7534f83753cc840aa24e56a4ee0a28ce1be5ef7205ddc5271d06f1c641e600a3466c755d6a96b002304aeb90dba94a442198f06d090fff20071400df6856b62b9953123e5c8f5c917771d1056252e0ba655ddb06f81dd4b7c70302047c435bb500673065023100978bc5f40fcf163ce28583adc840b68961c5f39b6e72a5a0c512080cb0f62949e65d39e2b310de9af577d13bff59e9b30230531e296c73ef6ad7ca9d6d107ab628b07782246c3637f740ee4ebec90e543edecaa24dc818849b436669fab278e7549c0302047c435bb50067306502302ca9e4f8c6453abf27c497bbec874dd0f03d9e8b1651cedc918025f47ed40a2bd4b27e89bbd8dc789d5fd50349c50c07023100abc23f6c68770d1fb3e8734095e1442a24f410cb7d3692695c4c8eba97866bcf9ccb26364ff11f3caad4c6389f9142240302047c435bb500663064023015e25c09cc428f1516ae9739fa5dc54df784d0cf0b099fa2575ee5b007c23738f1beabfa449f6497546bcd309b80b12902301b4621fab0ba40d26894beecf3ede1e7fd77759c931e1e63417cb4bbc30e3f008b0192179ce7df309d75d62be52291ee0302047c435bb50066306402304028385dcfb7d804560d3f205b4055b642a12f56809bfc197bab328572e3e72d01351b1b7c83c9ef972108d7c3b828d002303c0551b8e1bde721c1382f821b2b86893c42b586416ba9f15516c86e21fc8a3d51d129862268b9804473e44e3e0976cf0302047c435bb5006630640230719ab3213ad6e6255a61f7b34626fa9a51fdea7cc779069584fc090f3255010a07d06f2a462b66156b323a0e7eaf0c29023021efd416fe8d5575ecd0d52934e0d51db447d8df8905f5d3cd1224dd4ada2c4f2819a29d7a55229577bc0d891a745d750302047c435bb50066306402302b3a6df8da352facda9c1a94d0b42760e21d4d82ac5eeb08770a8dcfe70a2dadf086f69ec7f0d1066188182ef0138c9d023034f7e23cd3b6527315771e01272f184ce5d1c85dc6e4e3674ba60d7720427ff017ac19e5104981a5e01728a35dee99490302047c435bb500673065023100cde44166e2d48ab037d467e83caade28ab6c101f32e45818f7fba527c3fd7caaab133b60d74d1746e068b1ddc8ba45ee02304b53e608c219d6fac3e1f0ef47632518d9f6fe61a46ec3af34683779296f635a91f70ec9c103d63e4588d05066a0bb110302047c435bb50067306502310092a5dc45099c63b56d7b743276b20bcc7b57481b1e0508b963d2438ffb5f73dd3c5a34bec3b2f6d3fa22bb0b248d970c02300cc9156e8ab3b898175de72c925e1bb22c4c70256bdba2fa6493ff2a82d63edfc3438bf6676df17696bf98c88c4d55e50302047c435bb50067306502307245b4547902667f363c8b7dab426038a56fc62ff28da30cb4e19ba85ce6263c2cb85fa79de4ab24a17356d24c0b96c2023100801b7da2f5cbcd38bd630b95eedc84244024d8ed2f8ba3fa3a22c246b98dec274e8c129481394c8da22ae8f6e117d7670302047c435bb500683066023100e4d68546e6054889c2d2b6a81a834b88e895315449c4561e94cadf5c07090fa3488a7cb46fb3d11e332926618d59faf3023100c0a72692e4e48032c113c217ab4ec62707a8390d3750e86c31104231c4ae24869982b87d2552da9b874391124a0730e90302047c435bb50068306602310082b0f5ea20436466f496d6e0e674fb1bbcbb431902effb3890cb937e7a54ae0d93bef67f362d4d3952037013a4c05a75023100f425a854bdd2c3261f6d4a2bccfc40281e58818bad3c7a8a6732f38352116f00a310979926ba69549ef85c200f5d50260302047c435bb500663064023006eeca813b9171a0f8b46555b9e82e0f6ed1e82bab8e6fa4e36b1d10d61b1c27560783aaf4d9423bafa9509e5d4c46c502300c467d2fec9c3186e68addcbf80cb149857677e7da5f9fd36f029435e1962f43e27e4cdd2e6e9b339788b66d8cfb888c0302047c435bb500683066023100dab73d2b6fcead1774ae9d27c61cac504107cb39a2def42c37ce7ba78f943fe4879eb565bf7b0b900b0e0bd6215bcd3d023100a371f7e5b4629c919eede4e93327f94cf15ada63b1b8b66c29c87907e4844096b7c2b84807fd8eb7a7dc99769ac580e60302047c435bb50067306502305293d60a411689eed613885e0d5af40c2ab6caaaddb2f819e95db3ec4fb1de47cd85a326efada5aabc1c3181ef656aa4023100e6cea4cbf3fa4465f33e1a9527769f325ce96fa893b491b42e452b854420e9b737dbadf699b01eff2bbad26f71f3cb850302047c435bb50066306402300394863160d6dc6ed3ea9aecc2050c7d63f83f28b79591facdb6b9165066fed72a5335382886efda1264911fbcbbd3dc02302c5c92821a5b2f4325069e3cea4ed7a23d7140f9cf81fa81d64016af4f64a11fb6b3a8619a59e814e1a08f10f560532b0302047c435bb5006630640230784267081919ab5806c6391e0c2dc9f54390571a5c8558dff15f7bd1a4e1460f8867734a85b25ddcff8e32386c4688530230107dad8d11f4db9a4525652290b022de026c2f01ff9304672483752fa788cc622aeffe8d96888f0365fc613f0628f84e0302047c435bb500673065023077d02c45584984d97e4ba2c9bd45701bd8158c179f7664e6a374375fa14585ac0d34b4fadb2e4784cb2eff6c37b59bb20231009c60661a0004e4be3f9170f3ae5432733abfe917dd89d44b46f92ef4f8fed7b5993f23259409e27745e91088192358400302047c435bb500673065023100c82a2e2f0dcb31ca39da0bc28d610e95f9b3414289a8a6138cd43cf7bf59e6969ba9f346871ca35b2a2e2d4661aa857f02307c383cd764078c00e6e2076ae0c03a1b3080ca99b17ddff7fcce1f3d631ca61a4a449e771077d2643dc6fcbac9df6c870302047c435bb500673065023100be1eefddb201afa66b9f72356f0500ed68ef193dd332a761cba9ed700f694ed481458ef8e4855cb6859b10413d10cd9102301ab954d06f5d5f75cc5c0940121a67c202ab14cbcb6efa105aee9e1a701eaa3c7fe502f6e24e7757c8bce191d0c053780302047c435bb500663064023032da93a93a2a02a8a8576d9807beb438f99b0cf69d516f64966c5eddfe56a81f68623bfbcf2b71ca7bdd642bd9208e800230089b5e8134c85f63aaf810528af2de39acce7f8a2a6c93266b37100e81539d38b8290806b0f6e5004985178b7fde8ddd0302047c435bb500683066023100fbe053a5498939f40cf7f1952f8b6ddbc23a85888e628795fc4dd122ac91b0079bdadd436f98deadf9ac4ee83bdb0fad023100c78e2bd77d046e2a6be9616ad822c60beb97aade4dca01002e175f09cd6bc3c71bfcd7f7e6428cdd16de452c7b7a9fa20302047c435bb50066306402306ef90f028ac08dd22a4e70424504057525636c1986ffda6679fa5d14013ae537e2fbcbf60e7a5efbe0b265bb01a95d6502307dcd7aaa58e4528fbe7b9699e37c828e07cb1fea59506e44bd6d1f92fed1a6c479d77ddb8a00ddd7f35ce9f0b362cb860302047c435bb50066306402305b6751f7d19130fd6eded0abafa581532901117d82b39e9e4cccc329801421bfa9c2a251421fef1d996079b432d3644602304784a74b8559fd15b4a596ed3311c9cc7ac99fe02bce0e944b4a782d72960e1b1efaa2083984c53cb831a98a5b2bf1670302047c435bb500673065023100b08e1f98dd4d2e0c1ee136f37c16a08bb5e3da429a259c950a7bdd1040e9c4e4b421980659b6de92fbfe8de847557017023068f3604d630a322ded1dc6c847f7f41689fb7aec4254169b34831b4b0f180b2a47ba947ed7db1653bf40258eab9fa7370302047c435bb5006730650230044a3d7bc8764ee18938230bbe144aa61e2008bb9b80727f751fec0bc94b1cc564fa4769263283f5a220e024a583d8560231009ddf5d4ddad9a34b63dab4bc636053cdf8e7541c745b8982eacd1e80258f07aba1b15ea2262867c9c1e68b7341639a070302047c435bb5006730650231009f5b62637467ecb8de7f413688448098807f97d4192aca11ef50198438c672d819b06e060b22ef4bbadd8f07c01624370230144f34d3fa508b326d940149bb1cf7ca7304eb8ddea9152499bafadbb04f022e9c57d77e108172a21df9c422f4f752380302047c435bb500673065023100dc7115bd7d51674b8418d9e735242e31adebb7d208fce93a87a4f342fa763998e4ec37a39fc5a214ca1bbe378a0d5d7a02306aaebb5b05dea397f0070e0e82a8e34c0d787d2032afcab6010bfc65e15b711c8f1a54d245159507a69e6a17aa08d9c90302047c435bb500683066023100cd5c776b654ba68c49f35ab576fc14a8e2611c47c2845e0b102ccb411928aca5706afb85f3c2893c29a1c22da623864b023100ed60304ee8469a451cee60808c493f481463cc084683c2f11f4a73021aeea5b8985ec0c5d8dc915f68f6e7956a95f2a70302047c435bb50066306402303ce278b7364b793ce34e2ef9e6816395f24482ad81e2d5c9799ba7c2436548dce1d48413101a9ef865d93fd843776e8b023014dd7be64d77ab2ec4a00564bd62e45fc47cd620d4753ccf97de2a01ca198b13d0c3778a954711e82492eb0a513128710302047c435bb500683066023100fe46531ed5b47a9d0427336014339a4bf9d08eb791f7989b52309274169ee896b81ea7bad3e020ded1430a0434bee848023100ae76f2ba4b084062b53c74f5873d103227c2104d4980287c280a18468300e5251a421b5e33a427cfaa3f6468ebec28f00302047c435bb500663064023002248bacd400cdf2cc58c535a7ccc4453f1042b5449d94e9995ab2609d06368fd965d6dbb368f1435c24a9203901a494023004e44591d14afcaa43059284304ad41086d71398d0219b69c2d201c6c792b0b5b52bc6a9ceb9d364483d88f48f24368b0302047c435bb50067306502306fda5519a12ac0d0e56e52cc836a93259dec630823a8cbd4f1c2c26b20a8718c8bebdf9b8ef1d238fc6a4d79a7762edc023100b59df1d91e539e609641bdfe43f17689b9807966259e3fdc17d6db3043f843bf001c1dbdc807ef3fd374134d0447fdc60302047c435bb500673065023100b3617f1c7628df790302c032e92032291d5480838b56c8b15ec588642a7a645484ac3fbd4b565377ad0565efb3b0253402300e5c67f6fea5686d5b6bdd6d171c711fca6292bfe8669db3be0de4f79cb55c3092869d36fe2d45e266fc0763e8ac66a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f77cda985db40f772b1cc168896db74cfb288b17c8a2fd398ae5f7f84543d66975c09f7d57fe01a05bc777dda03302ff0231009c8674ffa98cde4937853d56fb7cac293cf65397da20c93ea07afda921a033ad5f6e96e7d0b784cbfa43539d47a7f2310302047c435bb500673065023100da51b1eb267ab727044e78d6524fa8d8cc3140f112f58c0676203f8da172e0a3fd9f6aa5ba6a38e00135e03b913f44aa023014caecdd3a12a793c92f1e27c757422f15f916ef9255e5f1ac30672d333a43468a126efcd7a1a7681d915bbaa537c6800302047c435bb500673065023041b9d5bb811c228b6f562be31d4f343c1d9c0768c19600a3120f29c60ca2faeb2c9aa33be4271b809c30356492daa6ab023100b8a26168b3f5fee92628cdfba14d14b3a02c09985c939628aec69d8aba51a4516a34cc1df821fdabed3fa84688f8fa040302047c435bb500683066023100e9cb37373cceb04151058590108d2db65e8aebb5d17599f13caa39d9435da072141dea69b0906d9791b1d12e63ffa094023100c6cee944198172b043591423352fe41281ff3b84e867faddbafd5c71589448f8652904861e193989307077966340f3170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fa1051cb90eaa13824229857147887e170ed4772d149fef88c6cc4b8a63e73b63fdd562f169c1825b80b48702be86a060230779d6f586aa6c954b41b58beac68a28e608b1a209832e568c7214cf4e26fa72ecd52bc635cf3417835c74b63bf295ad60302047c435bb500663064023035bfa3a79e5eb90cda21a1a47eefcb696ec2d38ddd3191c6a1d39c2396d41ac05d378fc3d7b8219884ead2112d15351802302c7b38b41f9daf8671aea1b4fd6c2c5503b0f5da30a217f4cb56c3f6bb0695cb1eb487831cae615f8d1562121fb0998b0302047c435bb50066306402307b6718c8404718fa915751473cf73410218c6a60d9e1366f862c4e8c4207f6be7363069c24759febefff375f693bc96b02306fadc47bd0fa53d2cb26651557efda4be5f4b4bf923801d9ab88874587e4d3b4c5ccffd5e393fd1aa27e8e91c53999ce0302047c435bb50066306402303573d373517f7a838e44a64bddd7b247782c6fdc650ff862b09efa4ca5b26945f95d33585eaece215c2b84111f4ec5ce023058e631724641b400f90a9e98948fe93240b2e965ba2364fc6247f8c71466f0c5a47f6dc988a7cfc42b778a20c004d9bb0302047c435bb500683066023100857ef7880771d240aa38f2462fd8a32778a44f2160f0a03cc34f16e7f37fdfc505e20ae505ee83f7f29755c52c3dd7f6023100dbce789fc25a274ecec3872243a3e05b1263cb4ce7b542c48fc5c2d7f9dac723a0aadcaa0d4ed806e4dd8eba59a62f120302047c435bb5006730650230251bff11478d90647ca00e5be3a4dd44328e530dae8f8cc54b56aad9421430af03947ccc32342e59abbeb47d2aa26e680231008cd1b4d9b03e4db3f6dfc73af4a69041a6cc918206df45377a1020e3b590b1cfc401ca063b4571704aa0327a08e13f7d0302047c435bb500673065023100d7a5cc58f8adbee4ac77bf291df7ee090764d391144b71b4d30351f7e2600ea9c11e7b0bf87d8d5ef1a4bb0da963dd6a023078a1dead27ebd8f370f38c99c0812a622f92cab24b83c7c9ac3fc6266721155d6aba9ad96fa02450f5a1b22eeef8e6eb0302047c435bb50067306502310099e3540a7880e268c023ae33c55ca6cde2944b4dc4d03914402c6785c33e96fd046cbe9edc47e3f2a027fabaa0e0fb3102300c685f7e5e908ebee38e0cb5728d1699fa4edfb0bc1d502b54fa466bc184063ee8112aeb8641675ea816eeba7233c26c0302047c435bb500663064023030df51165afe902efab89375dbaf000463da02e4f283e92a22cfe715e0011990174cc97d5f296385676d6852cb16d85502307847d9e294d3b2683a313494adfc3fbe9b7968998597472a682e7620d90ab62df61cf23150577d8b1cc5be187fa742f30302047c435bb50066306402302b6d78911130b73cd501a133acc89237d3b39d5764fc4d4cd12d7481478c6c586667c3ae8f3404a9e6c7976331e00e330230147b2b466a507d9d1ad9ae09ad68457480142b24ddf3e592ffa6d9d0193885edfd763c067e9f7149616636ae2e4409ed0302047c435bb500673065023020ea7e0cb7e1c0b459bb53d7bcff08bc92d95f0fc679c0c11132918f0a0c17c5a2ec49501e6b4f9d8788df097be0f916023100b9b427364b769736bb1b6143411187784a3fc2a9cac0d256fc3f21189c71e85c1108f4efd12b7fc5c213a7507c182f230302047c435bb500673065023100ecee2b71d39b51342c8c364961f6edfee8d387fdec44999018d20f540f241acf2550d74c231660238c598fdd4ca2f4bf0230207b9a8a06e0a74d0add0979e3b4de7b46bd28b01bb82466ee3dbd44edcc9b71c8a20d1cbba0aad0b037808bd1947dc40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b58b387cdc082a594a0a3827877e545f6d4636208fec634c5c76aa346483d73e597a07a296ed963680eec6cf779009502301b9c80418451085cb41e5946d34a677f0d9d71b92c4bec36aad7fef2306b63fc6dcb0edbac416f290b6f8648fa8b1c330302047c435bb5006730650231008ac02889dfffc9d621c0d8a1d54048e0e0ee4f79193b448651a7c68fd529f606ae9fc19fe355cccaa3f35b4bf1289b150230323bd398a02653e3add1f412593e8074808a2212cfe7953c9b6669e28af9608df93df7e4f0f8c805f9ae83ae35da12ad0302047c435bb50067306502301012366fbadd1846af1aa204468a81b9fadd9f7468ef38d20696e9397b5659b048d626df44dbcf16e94899abfdeff82e02310098c73588be9b0397cdc0b0263931933c30c1f33145009129d4c9e6abf2609b5774a73184b14b476907ff7ce2bf0c0ba40302047c435bb50067306502300f9ac2fc6fb3d0b6302eeab6c3c1423a3cc3fb07bd367d322dbf64b125f30d4646eafc2a343c744b8901167742297c7502310082827214cc7914b1f54f6b338165f79d08b384ed1535474747b8c8871c1694079e408d4523e99fe849be59d05293a6180302047c435bb500673065023025b548f3786b66cf499f52249ca10e7c3bf2cb1eb9176360a4c67a6a45cc1496db909318d11487170665604e2138d674023100e0d559993345627797823ffac34e4851d4805274359b08eaf618899b534a0ba70eaab8d9e43a7d2730be31eceea321a40302047c435bb50067306502310098008e2267431a71cca7a96569fadab38ecf640c73cf1ec8db33d2c290be911f9eaa09557a5a754e36d8d47dfc3980ff02301cd84911f1b324f7c2776c647ee4e1c455846f587d860e50f82f4683e97b50fc297b7eed16d5a128e89ab965c9e64afe0302047c435bb50066306402304ce5e9f4510578b9a683908638e0183c16de03c9b96859ee84dda7884c15039df9db8e1ee33e0cf0f485e6eaa7ef175c0230353c1d8d398b12672cd579824cc15c032ee974eb414deac82a843cd75a35ab7e6f462533028b94544de744940026fba30302047c435bb50066306402304be1036ce94b3243e8c096a14398437b4ad85e4a79f4c85b41228b4c7a91d9212a5bdc08272778839b31b19d4fae62e70230439fb7a128a96f7bfd4cade916b8bd614e1b10a05e18b1f41955132ebbe58aa0746c67b4f356c3ff2bb21ec8046212a30302047c435bb500673065023100c2bf696db5282152587afcef5b41f084b076fb60d3aefd04b205c6ddc9b4115257c6c71ddece73fd6e33a889b14267b802305d0a19b4a1b19b2a0102c9ed2419d610da6cfe236651551c281b1da29b77312b73be04771d8961c973892765f29a9e260302047c435bb500673065023100a6a69292a939060ca94addf9ee65730ad792e0666ca32bdc30309335257abd77a62b728365b9055426527e9dd744d4c4023026d7ab469c9836ef3d9f16a24f0f0132621195c623e455e1d3f801b0e423e9b1933666de8c96542b4ab39e2e6fab5ffa0302047c435bb50066306402300fe763f4ee25fea3f2370e30630b75e6e5e6e914016280f159b5edb4e44783012656634806afb311c790b0a7257da0db0230145f4b5ffdc91a0d58c4aa41fb25009740bb78b6b572b5d3b78aae66d25259184f10a1a537089fbed6ea38ec7fdedd850302047c435bb50066306402305d8cd4d52c99c03356396f1a4699e49a5e653b1c49c9a9fb3a1bf97ee41f82f6d7520284d64f7e99f2cb71dcd98733d402301933a30e7e6f8bae4a0e03ff3ab90c93f76cad44e0761cfb15a0cd3ecbfbeaf95e4bfbcb9e0dde06d460b816950503850302047c435bb500663064023031bcdc1845afcbe04f109be546b511afd82d3fc1e048adde927b2585f2428ac75ef920eb023c26cbaa9c561728977e2302300561b0e5b6b6e0e61b913c0078a30acb883b9967f502f6f185d66ee9910f108002d81e47d14d18927d1da5e406b507440302047c435bb5006830660231009c054eceafcd4b877ff2a835a307b784fef89ad080df146e5fe7e94b23ecd2d5036a331c948cf976748ccf37a02ea3cb023100ec2d56e1e7f6c88c5b6a2e0ac5327c50010d980f63e4032bc093364052b4fc7048cfc4ba995ceb1a36107363afc46b120302047c435bb5006830660231008fc03554324e6fc385eba8f702292c6a8a01d0ab3c12a9e6d9dc77a45a5eb6749a79717ecaf0b2d67fb707dfe2f3e470023100b47fbdcaa69c86226406bbb99e0ef3353babddf6414364c3196e9351db174b3d01d308ed642c52ad4d6b7d5b85a41cfa0302047c435bb50067306502304a43638fddce482262d5a4a9c6912aeb56b7ac824d19c308d6ff96bd72e3526f5c484942116dd582e9777c5fcbfafab0023100aaae3e960099061f9d5ad022072167028bfd11a5d558db875a54d2c6465105d73f0f8c7b9ed0eaaf74151693224ffff20302047c435bb50067306502302a34b45501abd1ddb1c6554e22b84a896cd753d2613a511ab41961e05ebc895d6d6a0392475105de22321549309a7469023100ae64c48ef2a0a5b7d1dc87850ef90e72e4991d068efa95ace554942e62d06c070efa5083d626f6d8bcce9519732270890302047c435bb5006730650231008849aee0c007fd39f29ba7c5f93685b6d90f915800fdf127ebeafb4189f1454639c9164304df2ffef644c6c31fabd079023039e3a881f0804823ce19f16b669965340df4e43e93ffcccd7f1b39009910ad2fa182fd3c22b989e6120ca34abc3f8f280302047c435bb500663064023044761435f6a49e0db22119f227e5d8e39d2509e4a54ac9206e64e11377486aac6c98ecf37aafe47a493dbc8352c63c8b02303fe3c0b459aa7dd7cb582feb56cf0da2f0b45fdb94f72296e3b49e18afed1a1dd0a097429d4503e87a39b82443500cb00302047c435bb5006630640230737033f31a08f79131f9444d0d317f0f193dde3cde8dba8985bcafb417bd31c0c82a07ab936cc1f6b741f869e5023b7b02301fa355928a4cfe132c5c2ca9492c13b712fb386db4eac077d74ac3ece88eb4c3725f76e5b61b4b80e456418c856d34050302047c435bb5006730650230395b81b925560a65b0d2e33aa8856653787e166d3e05023166e68116e132e3ae9ecca9cd19452948ea8acd87f9ba3e6002310097b2d1b474b617f022687cbca8c5a89c033f88bc914b971c47cfe6b71ea4a55fa9eeb8792be53e8ce85c670e261219200302047c435bb500673065023046e64c5a7b5917481fe672ec51c0099ffc96b01fd44443b3a3a395a18a08b1fc9fad08f79396dfd32d72202d753603b7023100c0c78ec0b9aaf44106c8c6b03fba4b6828570d67f2c677c74e2849424a6fded09e76b329990f1e8964ad8e4dd910bc900302047c435bb50067306502303e41fd3b74cb43cf804c4cba22521237ab994ccabba510cf240503faa37fde18090d667f01a37f32f852186365abfa6b023100bf50639f7f67061f6748279ac0b89c2109217aef96d744135e5aea6659a9dacdb3b3a8787cfbee76592471b6271d5b9e0302047c435bb500683066023100af561dc5cfdb05e8a89ce7a6f8f3d9e4628ea6baf09d279d8b4237e3ffe467cf74864c4b8ff05b374d737f78151f329e023100d9ce78d8dc3fba83c9331121ffe8c4f4d2fe21cb4e12a299286ae6f9d7622699d9fdbb4793373198fd42bc11276293300302047c435bb500683066023100c654c344fa1f5bd767e76649d5a35400d3d3b442bc7f214d845f429a2b85c7abae4debba6da1c1a2b5fad97e2f0290e0023100d2ebada3c443c85111e2700a2aab3aa9063c7cb9d409dcdbe31eaace232a724698cdbc11fb47ac589d826616ba25fe9c0302047c435bb5006730650231008cfbf6295395342d426900e1264d2807df34a91c9525a02b0036526a387f9d0f5b56d6c02ad75778f273cf3c4da518da02306fce9e38bfc8af0d63e817a84207e9a7bbce106bf6c909153aa932cdf018cad6dea5ae9983bfe1ade7102a7920818bf90302047c435bb500683066023100ac13a6f08fc88784f24a6b3278a6a2b7c988056080b463a72c86a49be90fc55f93a3b21c6331315c0c7b0008b5ebce31023100a52cf053f314bb00f50904497128abbafa106552b92f25ff5b40f717edf3fb92e2fa1f4f01f0027995ac41c8a8427eb20302047c435bb50066306402307b9f8916e5b650fffce2cb6145b5d9bccf753ab6ed836198399b7fef938e9c324d42c69a782e4acf1a998b536c075c1b0230631bb8a9750d930088d3b839a35359a4ca64acc0f312ae1af5372de211c2d6e3e6bf79fcece526569b80b51f29cf40140302047c435bb50066306402307cc9ceab0198fc99ba7f9a484e1aacad0f5af8fc3b97c0c8543ca2924eebf8563205823b102f208eaf5d8007e5fc26260230477acf61f3dfc8479ea099b2f25d2b1927bc593fef0b80fe6cf344d4e75ed8bfbc59c056d30455229782fed46dd35fa80302047c435bb500673065023074302fc73cc092bb93dd7366cee76ac5e4d7b0864a442e3ca79cd35d5c698b3248be6f406ba8af2b87c70ae8082ff3b1023100ff6277ba26e38db1de49cec017c4e07dfb5f2bb0c40fed22208927286b28ae1229231376f3857b8125fda6eb9c70df200302047c435bb5006630640230582dc4b2370e4c9aa5db805f25237fc768bd2495bb605044f236a02d652b9739a4a189c03a817920628a08458ea30dc80230623ed99e6dd8e76ffa167dea2ed6ea301e7633764202c66fa71413a19b0112a0048c467babe35d99d2bab18bc7e9da640302047c435bb50068306602310082c9f2fa5e1c22bb1b7ee18c25c1a10ebc0377ed911b4289c23c8e76fc7c00a18d117535bf263448129ba88a3ea5ee0b023100ba3369dc4e02de32c0a9fe0e532a82c308d875209219a7bf360647833dd0e3fcb1347f5a5e85c7eb6c187474d740689d0302047c435bb500663064023039c240f543e2fb585b366033e7f797d92d30ebd8adbd837d596419301795bca94f2bedf1ad7dc672ce1fa8174fffc0f70230779f592c916c22b1c6d930a287637e8ab2625ad4476a69b450d3ee9d9ad710b852dce4db5295841b48c9882a2c49763d0302047c435bb500683066023100d9164c085b7dad5864e626f264aaa1dbebd3f88c0f1afeac6e27c64a66029d188107d1c1dd89a1b8880231e91bad6bc8023100f104c804723bf3ae6d6180c9df09196c5c0ce1693285927cbfad08d65889b0167dd50ead4d668e99019dd4eb866a2f090302047c435bb5006730650231009dcea7134eb4f01d1c5acfec515d380033c7c2a7984adf6ce2f84d30478abec295dbe29e9212cf95298b8738562a4a5602307c9e864c7cd7995360bf3dec364a882932f4f548feeb5a862b73e06fb3ce2758eeb9c636abab8594bc1b3ab53ebbe9190302047c435bb50067306502303d375a210e6dbb5db8c31d8a957a42abcf5750cbe825f9f88c35ad074118b72b1b04f692e3638b5a160e02decf6b17e1023100c6bff876556063648b5415b33abc2a96b703d06f88c173dd9322cdfe4c033ecc3f324dc96f97ebe2c8a810d587d77eb30302047c435bb5006730650231008115ab27b308e73e776c0630419331d931dd8c47c1a8ac60884e1712c7de06120c5655b375470fd40e1de3f6efe428c702300bbbde229d801a6f72d767355efa2ac2b84e06ce01525473438a827e4daae830753ffb90108dac71ad71c282cc089de40302047c435bb500673065023068845a81e8ba48e3dd966572f4fdde12b47604e13680c4d5286f171ecba93e4f91e6e0ea6aeb3c2a8459bc0b139732460231009e41957f72ded26cfb7f120121ce1c966992265e6835db8b25127324781ca2e71a64e807966c634672763c8c215c13420302047c435bb500683066023100d0b9e212854ffc89ba4c8ac64f3dafdcdccbe1578b013f208cb972eac4c0bdaf0d3218011de37ec47e6acda95555842f023100d278beab1b1da0842b9c7e522892b13d8d15ca93109f9e0895b17c7397ac7095c34fc7892c4b7e16666be0b0fc8bd0730302047c435bb500683066023100a11a1f88317bb07364165e99b1074464e9b7c7c4a67a329eb06d99f045d9feb70a996d0ee9ea59f853edf5353b3d192202310085aa00d2a8751e18b21788d893f6cdd3fff9c33f2e3f232c82815420b2037e711c7b81d8da0dbccb1ef69b07db51ffb80302047c435bb5006830660231009a0d4706e6c71d226a58d7e105d10966b3f0c95f9bb83dbe03cb1c991dc3d16096eaac4f2495582d14a7c5b5eb99c020023100a3ef34908790a5a63d77457d4fd2d3ff302a0834426a20fd879e5af8a5c7a5911f974abe931800d2f530e032cb9df6de0302047c435bb5006730650230532050a443e3fa3bc59ebaa9f5ffbde225a01959fe9bb683ab8b5f78e0f95a8648124af739b352b9af4f74918d015769023100cf39e60dc0ba4a40b27eb3cbc83f21e3180fc9456967facb3fa1318bda27e63e9eee41cc624ae76894f959721988e4630302047c435bb5006730650231008086a1ad9dfffa232a7175136685286e878fe57fb457cba49e3f648a8a0654128ebb4df948f7c774771a6353c2350c0002301a9cb7651684f62299b24755202f13cea14877e91b6509d671ce1693b439ef39738cbc4eb79b1d7837e9ca6abc6619300302047c435bb5006730650231008cbc13e4c72180421c55fcfc93c3080790953bc0d73eee2e76f3ebf4346a7fd7ed09d88ac58a87d6cdd7c5693136eed102306589f986ebaebd215ddb691b590f995913cd6d486698b98b9330f7f82d7e62778b4ebb24cb5b69489e6a65f0078600410302047c435bb50067306502304b6648f0bd37dae167d994973ede1af643a521136687226addce747dedaadad98f2205ddc2d1cc0889e0d2c4f0f7292e023100e3c512f3975b95ba4a5dc1721344e82b7dfa549ff2566cb5ccc9166a3d89e377b34f4f5626e1d3343e681b0475b1b9720302047c435bb500683066023100a300bad76b3bdd79d655a966c1400b6c2c188e8502cdf632a7a5d955c65be825e96897796a9e5388b0d78716162a0147023100c6eac530efce442c44e418a2a996a22970b95a0d847c35af83510adaf7a583e48edbdb4b4aad6d7c616971006868bb8d0302047c435bb50067306502306b98cef02ff9c28e8c349df4f0c056b02eafb3a38ec631e8845af8f58c97df95e1c9409aef0cfa3dd594a725dc2023f2023100c6ebd29f9d1a60577bb4780d95d850f7f8cf91480d278ca9d419a83ae4a35ff06c3db1ab454f1388a2aaef015274b9550302047c435bb500683066023100ab588cc2ef1259a262724b0fa2bcef8ce0b127c49f822e83c9bf893431c0e9d42620626e5ca21aca0fbd50ff23f9ff73023100944c43646b6f772c03bb392941f976af484ce58a59895627594fa6abe68ca4cc102d25400d911fa5070e5aafe1c9aaa50302047c435bb50066306402302d53f54d29395ec8b2e8c55c2d70fbecbb1d33d5fded7820f7af7c88b1a866a077222fdc62553d060a87bccf51749d130230681b07d6c1b1080628e7f8fe77e97aef989fb4097b78dce4382b377c7862e71d3e857789ae71b2f652f4ab8d9b4b1eef0302047c435bb50066306402301d6aea1712b31e964a9e25c4897805b6e0f127f2298991ee13398fa5ca8e5459be4f3e4af4de835a26df154b4c20e52002300b8dfb87f68d333d867c09f8ca3f45065a7d51e8f921a505d513f8a29d3d4f6729135757470ba130c6e9b888071f98110302047c435bb5006730650230387e41763df0d8f4e9cd8e99ed28de7fd87df6dc4366784da1599f3dfcc5a08a8e3168724c7677126523a807750f6565023100d28e73979aa2d3f9b0b03b61a0a2ea855e9ea24afac22c2c41050eb51745ca3ab13ac219b5b451ea9a37730fc58cb51c0302047c435bb5006730650231009fb76ee6a1a26ddb222375a5b6555df25b13be85ba79546e35cc36ede5c94dfcb14b183487c2ce50c639e7fcf202807302307bff498cbba15ac289281305e8a1dd356a301218a881a3de252331ace0b2f2dc78d4cfb67aa1b2dacb8a72cab565f8330302047c435bb5006630640230557c7bd5c3389a2098f48e4e03b028ed6dd0221d26d51b259749495cb99dd82a74e265f23cc31349aa0244cdf51cac3a02306dafadc08dc72bfbdaeaa3adf03fe5f9c3873427bdfc3efebe8dd874b0d4ca97872d3ab2b8cb25e7ca57d3a88ef3e1fb0302047c435bb50067306502303aed83fc7fd397b95c3cffad65baac8947e0232255298327228cea4e49b48f0f082d119dc92c60b68c34b8061a8c98560231009ed799ef5445daa60f2c9bda3827eacd62c80fcac49faeed1683eb41eeedb68fa2f96a8aa42d38428219f76d65fd04eb0302047c435bb500673065023100c6d29e2a4f139265a20654f38355b3090421308304814b5d81dac44ea23503dfac7a387e46fd64fc2e5b9e399228050902300fff49b16c672b635bb1caa904cf53052f6c5d3e1490f88cb8fd235d7d6db77fde997e3c9b4a465b58c1a456af00e7260302047c435bb50067306502306203ee231b73743cc139505f46ba17f34924fe60ef4b4650c5733f712f5755a43d3802a8dccb684b7637d8eaf95c0442023100b5f99dfe871fb73a5c1fc99d69b5fcce1fb6845233b5dd54780fd9de23201612c32f0699a0829211627d4e9ca03c99530302047c435bb5006730650230358bf3df1f47a0ffabf4c8b9e13d830d7eb2b411cff8f673e1d3de5db0ca582834e06a2e33f2a29bc62fea993fa9524f023100d55536fc5d1ede7f9a3b58f0f685f75b3f07b8d0b1451e8eb9106efdf105c6db33b192c45caf421aa24057e4998e94ea0302047c435bb500663064023009fbacabcbbded7ac3b6192ea9626a712ddc4aaf06d9eda30482a4192abdedbea4da50b26545cbd1d858d2080fb2fc9e02302597e4dd7a5807d094411bfd058bdd733aea135128001fcf820787799d1e91c495e3530e690a304baa8f0c95c605bf440302047c435bb50068306602310084a1265eeba9bbcde243081d82d0fef6b980b0c69bef70b89f554abb569aa51664b68afc22d9df1a13dea4b7d4e85ee3023100c80e61dd2d6a342e89d739ef681e7b415a031779d0a4b0a740621278e9f1b79ad030a36a8fbe5718e45ed180096e1d190302047c435bb500683066023100d188d3d79254bd003617eeabfaba8cc0a68d8bfb3ae889622a43c5ededa047c7b090f7dd5df1dd52b84b814884e98dd0023100eb4a27a4bdba672cbe9ab3ef3f9448c72ac9508ddf178f0fbeb6da5be648a1f5dbcfdb382b008e8f7c86fe2b9a61f5ae0302047c435bb500663064023058ac60114642cc9f55d93374da655c6a27c60a8c98f3cc96877ced865c9cc0716cd392572625eced78f0815ac446b290023071d48f584b73d60da08a17c99b49a8abe7eafded358a4eb9daad40523fad29b9cc805da4d93798ed7e4187fc44ba00a10302047c435bb500673065023015776483a320639e355596419d665bd0d0fc376ba0498427df88708f84d215172a9c1e7724870d652bc156d4687743fe023100d35174c4a6b366fe981198e241f45419d7fb5de7e2f5b82fe67a375d2c2a1e86d97722e71f94ef65dc4ee3a9890a6a4f0302047c435bb500673065023100b8d83af74363d83f8869b3ff9820200265204845520d445c11cb596703b8c9cbb4faa8b15e7326d998ee95295868928502303d368dc66c9bc31b85c9df9fd4232f80933bc7ae254f888cd1a86d43455047f1141e0b5010b9a1757d22cca85a35fe490302047c435bb5006630640230393f5678ce666f0a569d6853f52d48743b618f79a1d20debc1a0733571ba6f6d7cc6f6bf322d300045885efde83a166002300299880eb4cb0bf964df488d75e6f409a6c4584680fe11a69a7c6fac5a9ebcee19772efc449038ef1eb83a6d929600f80302047c435bb500683066023100829491f208bb6960680443eb6087708b4c901d8005d55e22448ef44a84c6ddf222470710105bdf674658557fdca80bcc02310082271dfe77c4e27cb9a56c1712739c394a469f9c8e4537c001fdeb0ccff24879cbf9317c834cf96ef479dde8d16f13260302047c435bb50066306402304a1757cc48010ef0dfdddd67570023af7a8f0029fa9b5b56f7787b7e3cebb3d2bf0e75ef498e88fbce0a18f3d536013a02305e5dbbc9879b83429c29a407e43922df559f9dc939076e1a62d9bd9afc834cfdf00339a4b3251996affb9c4c54e198ec0302047c435bb5006730650230708b4f87d8418b3151a159b0328086a79d403fe687d9b3c6031d8590ae4bdc5edf47f3b312565bbda4fe83d1b29ae55802310091dfb4e985be293bd73873aebe195e75567c68048809ef0dd9482408c496f8389c284765f95568994b28de7aadb198f30302047c435bb500673065023100f3f2464268f0fca4f7594b1687b333773720e4504fab00830c1409d64efd0661e0358acfe31f1b753c60f1005897bbce02302a5814679fc8c2c5a483a3e880ffd69a845fd3498d8b6a52b48cc04b68ddfd93306b5f54597f7df4c0f127af59a366ef0302047c435bb500673065023100fa39fef4306893780ad851bb4f1092d2b350cfb9ba20a5d60562faa2f4629c23d2799b862f7ff07afab9b2736aadcaed0230707f378562a89e22b575563f7ceda923659598aa0352612d4a3c84274c718fdb41256c5fddaa909cc1d493e8a4b2e2970302047c435bb500683066023100cba49637c86a0143f0bdb7a0e67be845651b02f6f96c037785a8bf1ababcbaa75f93f4beada1f7d1d7aa72cc33011c37023100e73a5249241904255d12d57039666b124701cb286d8add847e09fcf75c33e57bda38eafdea4c8f2a58245922ec72923a0302047c435bb50067306502304e3e0cae238cca33fda2a129af0d40a65e964573b57b9701575c80d6448ab1490c1e4a64a9d9e6a07197531b4348f8fd02310084605031b9800e464f4a3e24c8baa125d70b3d818086b5d77fdeda024b6c7c98f87e0cc1732e4c2e159d26203ece8d7d0302047c435bb500683066023100a540bd92ed6258cd1be18d069d08195a737cf144b1a3f381ccf3f05e0ab8549ec7f89f79dad7ab84babc424046edfde7023100efd44f3c489ae81b7a8180f7fab502338fa058c4f9a3936e108ab3adeab719d3aa71b5172f2eae1f300de791502f6d260302047c435bb50066306402302961f089b0b05179618102137bf2803f65b9a3a29d32ddccd879cc15447af3b5120639c53748374ae0b0d66e5d23ada20230509ddc1290c282d1dfeb5760461cbc7f2019cacb2f726cb7fa162f6dd4c09af3a30a276d71a9f7cedf9ab55aa9fc34c90302047c435bb500663064023008c10dff9da91f376ea6c0533e203fc95cfa59a08756e21dd8e85c28c6725d1c0db0cf972173bf7c6209fe908a6953fe02302d85d4180dec9a46ca3bf59af8691ba80627ef1a114945aa8dac6238192ffdf5d59c9e37d764c80d7af04358ce88bc040302047c435bb500673065023100bd99c5a2818e98f6956e85a62a72fefac3582e579f07c3a35eb29ce9d6bceaaa346867132e2939eba0bfa2a3bb1b6d4e023031718ab55f39719e1a6725f30206f115ced6f0491b97d2f6fa284fc4116d4fb1805d7b65fc161317faa52aae76fc20660302047c435bb5006630640230108c1a4e92e6d91d42849d2df66db5eb95cb75058e96e0f96ce3f53a0e065ab3535166ff63683b44e1fdc05a51f65b28023019d1d1aec4553477ac36f70821fa1c7fcbe8a0fb3e3383a561198038b23d71ac884516ba5e41bb6c9c3846c259e151870302047c435bb5006630640230759abad7e1964b4b3c86973ad88c2e838402111f3cab6ac6fdfa334d2898eeea4efa1de15f4c439320f9ef57588fdbc60230671b8cfadf07823a34d3031cb902316848882b446aca7acfe85de8a3ae1648b24a0641db44be343a30d219f4101011dd0302047c435bb50067306502300764514456ed37aec6c5889cf485877366930c9bd248496248cbc22f350171f16ddedd9138812a65480b3f003c99f898023100fb3b24159805ad12cd2a7c69329363ef7eddd7b2d05ec061b67fcfd71c59050fd357a87ff38c775f53270720d37f90ce0302047c435bb50067306502305a42d26040d20d328d8e8d712ad56b5abd18214e40aa876c84fb9fc12b0e960c71855b42d169ff22c378d452d18e902d0231008a6bd7c0485adc2bc2871630b9d2bed4a00d71949c124c542474d32a29556ad5bb44355ea12aa6684fcabf22a16eca1f0302047c435bb50067306502306c23d92b0090cfaf27fa28a8306cb9c07ad13f23af5345da1c47bbf258925514c660eaf588ca74f62764d1c9267e43f1023100db327a0068ed4ccf3312a34814c766e5ddc4db82d71b44da75bc53a9698401a5401352116ca37d73d238f2a546f0cc760302047c435bb500673065023100fd8407d8bc59ff254e1124a9ce8253df230fef73bdc7743fef8155c5ad7f55a139922a4e9cd8d1440e18c85a2cd9ac2302301370f989b02b943f672957e41f88f217d56a33fe31401480db243c3b628abd82e1c72e076b398f5573fcb767b7d66cde0302047c435bb500663064023008938398fead01785173a15d7da1da8c456bb38ae24ea0accf37f2f4ab34576c6d07ca926853e6d603f8461e2672d899023078810b64ad34c44a9de08d8f211590445efa1a7af1d8040d23fc932a8c0cd62a7496fbea64104196d7ef6f41de1796da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023058cc838a5101faed7d831c460f1110bf59db93bddee3ebdae6f8f01ca4ad3fcd76f19a128d80d690dfe20348ceb48e440231008ddb9516bcb59a1b825ec385bca4629ee407fe3771d61e9c83aa455a5a5d6c472ce913e1d297abebd345675d9aed09d20302047c435bb500683066023100ba41eb19c34c532d03a49a200aa33bc05120793297dbac0f5f0928e703db15015498ffb2b9468ee56c81730df63302f6023100fa399c3284038456c441a9a6a1585069df7d1fd18ddbdbc2bacfc248c4f3508a3f381d293223307f086f1e455ce49d9f0302047c435bb5006830660231009678e8aee725180de690c5ab47cd64cc55cb2827bbae15e3401bf6dca9a95ba9a0054bdfda8e6f6b4ab53a131fe9689f023100ac81c87295a42c11f79087c6ef3ba6937ed2c78af895ba75fd054e884bd9331390e6fe7a906c18f2c92a599e3e89b94d0302047c435bb50066306402304fd1aa665ce176bc2ab8da064c73d25e9683606588a83e9b6e573d19d29328aed877079408900eea89c85990331c197902301fc5cabd0f3484b102a86cb2b90c0fe948fc7aea863c46ec19aa36e0610469c0bad3ef49134ba18be2194413dbd845340302047c435bb500673065023100a6c1041f5d1f2d7a47cfb9eea3272062b195802d2fed5c5628d0bf4a7659ba0c4f4d8ab3161a11f133b4ad9bef2b2c220230442ee3359f1ad85b6233a85e21d386438bc6aef4cf3c1d370d37c82c9e8b95d4bca8e255fd9418f724120df2e3533fcc0302047c435bb50068306602310088982f76af66b6f5b45b39f1a772f38faef3894f29e47fb3235e1b522c23bea6b96c107123b9acefb5833d3b7ef8880a023100e35437be45e8214942f36d83dded3ceece6071b0d9c0005e94e01bb73fb84ad42f0590444432fc911b53cf88a809bb120302047c435bb500673065023100bc9c9e1f2432177d2fcd82ba6456416775cadd27c1ab2370f5de4352dcf6eb6b01791f2b143cf67cd155fed1da6223130230060043e346499282ac0eb5208c230de0185defbd60f6c482363dfe7156c8d70f44232f89908925a5ed82a086c95dd6c80302047c435bb500683066023100ca029f9f9d309b25c7f72fc46f27eafec1f965c439b569e84f32afd337f1aecdadaa5b46c2a693d86c38272d6a7ff294023100ebec8f29802eb22389c228160e3b991ed6849d51c50fc52c61d221b0cedaaaa0dcd58c9c95302f4c3eb22696e18d62050302047c435bb50066306402303a30d14cb35c2c9b317ebc4fbabb65ddb9fab45154fe1d58446326e2cd98aba1b0a53a71d179c309077c8a44c70936c40230127f99c0bd47fc3886555ab788d0f88e6debd9d429d1fab359b97d3b589bafc891ef5a098789df46f7011e91b69f797c0302047c435bb5006630640230401257cec4f65066f6a229a4ed9c753a55d1456f6245896a4accc52a1be72cbbb9a2a29ce95984e578ab4a450061a9f002300f4b0cc2efa6580d5a38b34abf7462e0be6283e1e6b76864ad1bced1154915ec4011c9b03c01d0d806c9c0f15c6bf5d80302047c435bb500673065023015d2199dc3554b0c2f681fd75e530bfdd22477f065eeafde30e9be654e00d9574d0baa3737396d0a4836898b016d9813023100bc1fd13f612e31824377aca006392861892e549cb476a658458c8f836abc34e39097a16cddac8a442118a50a6e5caabe0302047c435bb500673065023100c7ff15652086105745ea6087befb1fe4a84bff785d1065b0ccc8e213453f50396f5ec94ce05d371e9400afc3d9e0e7da0230264cb9a1046b3f03590fcb3d2f03b56bdcbe560d851ae9800bcf27d4f8818aa830509e73e4318874eb2e09774dd347400302047c435bb5006730650230297e2ca40925c13aaf0e85822a45c8f4d7f8a0eb8c440297bc165fd516b5d578c55338032a0dd43d66b79dacd34a3cc0023100b54addcebc6abaab17dbc2e9a57c554759b76c74fd644d7066a332b0d4edd5dd1bdba327ce623e48ed31d0c48fbc16d80302047c435bb5006730650231009bb01b9980f1cc92402067764aad4a45f18bdb6d669c5b62b3ce6f39cf47fe652a7642b89f69cb94b14c40cd88734fa40230473d0013047a8f460cac677461cfd6e87ed6493d215e8b96b92fc19218316e946bab35a3f5a5d75c988ba2bb7df6703c0302047c435bb50068306602310082a361b86d34ac3499693d0eacf21bf6c8568176faf11eebd96dded20dc139a787df83a8111bb393baa6462cb283116a0231008af2b27e2a64cb6d585259620ce3806e1c059898a12d892b5a829e56397a3d0996a61689007fc7dd5d1589b10a3925f10302047c435bb500673065023100eafc78040a33bb772ee97ce31d56f499801186760c2215903432aa4319fa0f5b1404ab1159721028c387deb2cfc8a81b023045726c210497ebd12ba15fb5af8e3c58960acc00bb9babd05022de18addfcf256c86d5dc22beaa4cf92055db71aa579e0302047c435bb50066306402302a8457b832c128545d8b0f2a5ddb30c01eab6e01051f1d9158c697ccf9a8cd65379f43befe5c428a9369a96df5de0bdf0230323449caa0dca1d05e0530e48aed037221a733bd54b5dfeca0605caa93328eb480e990f5303f3b662e33dbf62573fd2a0302047c435bb50067306502310097138227222161f147494064f1f53ba2d270065b20b6bde0132341d2cd82451c0ff7b0cfcaeec3abb08da01b5ba62c1c023019b1639a7fa22473fb93633d53bd0d80b3843920ec3f7ff3db9d927a156d6d7114d25fcab6015088acb822c68da2db990302047c435bb50066306402304a1fa78a8d81f9eb08725ef731bc6726e61e6f9bf794477f013d49cb7609784f87ef3b6c5dffb9337783f6ef7f884907023060374878ba1d8bf282edf7d5e913dac9ac33af8c69059814ca4c29627784229f94662277151c85c5609a14084da8b40e0302047c435bb500683066023100bab232ae60691b47f11920a0f969cac078ddee422d556c72eef49149fc3c000e7d20f8d5276a76c26e4e0dfb9b1b02b7023100f677af139d89d3cc03dde5d7a6d06a3b86f5e27b8a7fce6715e84d0035d6576585c727c03ac30863ccd86bd4ade14c8d0302047c435bb50067306502303e89df47f50a431837b2bd3e53d58da27a1a780a2a0d34bb12b4bb5d105a40e8416b09db9904c3fef3c6d4f04aa6f7f0023100ec9c3e4a6defc97e972af753bb46e6ad55097ed463d5da65728116d78aab96e020e68a4019ccdcb9a859dd9b463a39e20302047c435bb500673065023100f3886903af6a0c0dafd6452fe743f0c00be656575f3de61ae3bee032cf242c9f28e22ffa7bed53b28e435cc4fea4bfbb0230692d9352727e762cf499cd939151c449bbbc04fbb05717c820c841ce8c831d3460673868fcd63dc97cbc04e4603a5c7d0302047c435bb50067306502303dfadfaa113905a10703564d3c33940740cebb6a3be70b36c8a099cc8c6383644a55249c8c11114a8b354c6b8a4fea5d023100ac9731ff222e82b0500e37b288030ef33a1f5955fe530398acc9ffb2dbd689ef4a527352f24c2e56d708f73b6a9925a30302047c435bb50066306402301625fa155b9ccc706c74ef719130922d893dc089f9e6ed139bc5fbcc21395900ff292e327ab1985e0699d706f96c2b6802304dc33a4740aa615aa2d6f53e00e0a6c209b6c6571f3b918f9c2f5476f39c5db0c905c733b05638e658307fe357fed6f00302047c435bb500673065023051ada6fb2c3489c5b16124a80bade45f5a3662451332d471bc9d21da984d09d038eb84ca574a659264fc89fd0038c139023100aa46118ee77017ea77f9983a4d50a0c552c27b11175827fcd3331d5066b6f2494f5d7c954ba3d3423f2691ed65f058680302047c435bb500663064023048110a5f41294e6f33516b5396e41ebce4648d727d5387d32298617786ebdee35aeeae6f133ead3f529ef2aaa6bf6f90023001725bf8f4f700a70ddaadb42e0952e8b516a2aff05536e25b142423bad88cc66594841732fb54d8ee2178dc41c2602f0302047c435bb5006730650231008640832f684ececc0bd14aed8cfd0e3c0d152fcdb900b371ef519b61ae096b627fa87b349067e6acce8cd7a62b0175fc02304903c3ad8bfcd4951ea3f659584fb4d9fda43857e898ba10fb1bc046977beae85bc954786897566e6446228c2c80d3eb0302047c435bb50066306402307ecca52dbe87d18e5b06d083094ac2912eaf55483514a7f52ef7be29c58cea82a954cd5d35247dff8043d27287e2797902302fed610c377392308120ab060aa65e9cd821fc8d72251fb2f381f94c882d60408b8d1e84d22617726230d1948e57f8e40302047c435bb50067306502301278f5ff8fb57f5031da0215c9ee8515ecc2a59781ddf0155e3510ec5241f102e1b757e21bbc25d415eeeb33f1f42a61023100d84f2363612402f076a5ed13f0f61e45994aefbe7f71db98b109dfc2e1e2c7c6272dee06fdcd30040524622fcf97035a0302047c435bb500663064023073ee8723407b128c79accb6bb41990a9212a53e7332d0b26b9ea1dde5595b0fa8962b1b573dfbd68d81c67b1a38e321102305e7608f80c9df97223fb920622808b997f34ee3b76c2766e1986f27152cde81ac115a4f5da039c86e8691478b21288bc0302047c435bb500683066023100fdc41a8805ae9b383369ca1bc1cf29b1fb85b1390f9348b7f84fc367b0b617ff6271c16afe1a97375872984801bd3f1c02310085d01648151d34c33501a8a2784d8f8fbf44da63f64053ef4b4f9fe61f15606daa6ced65edb64846bbfe50354b77160c0302047c435bb500683066023100bafa7b651ac14bd4372a5017c4c55f586d408060f51e8e335b8f463069f02d97984ed4d36d992ee5d8f78ca4d8189962023100d226560fb1275c2ef7ba4275ee9b75ffece6fe3e25021eae9d9c7be44b826b96f9722ad74d1e9a7bd396fa5bffe92bcf0302047c435bb5006830660231008b80120391be3f428a7e6335843e1699c33edf9c2198d81543450815805fe32e9e9810e1eec46c0b7545febd7761ce8e0231009938975638b3623856f31f4de9a978498c575d219e0238bf21e367c95d4bb145db8316fe63cef47e520c11ff2608a8880302047c435bb50067306502300af449e9ae7244d5092dc4fa831ad4a756e9c58f61ada86ceac0ce6745af65d280f9d4e76bfc6647e5cc17082b3609d4023100819c993783a4ad0cbf1890eb6bfc56056da99e3651b484f56e0d23e7f973b50569b513580514acadeb97977ec0e52fff0302047c435bb500663064023043ef9b771b11cd647894dadddfeeb72d9adf1b21db6370f3db019bae04ba1be0e639cb641ebd09b54f892c89932e0b4602302d9f05ca32e229603f74cfdc1eb1abf5509cf6ee75ccdc490d65c12c3b1c6ed0f924417b750c41a8b11a2b6f18ed56f10302047c435bb500683066023100f80d0f62181c50bd84a2b16142f808816d48ae6f43eec2f5149a71627c88dca16639cc75df89f0e09c7a8bdf2bfa08c9023100a2d55f48bf6a6b2f558aecefdbefb36a87b1a155f44eca08902220e563c4f7b02c6a5bc150b20c2cefd3d7a3c00bdce40302047c435bb50067306502303bda0f0a88a10f7c5f69c57d4cbb8423b1eff17ec99dffb84d63de4cdcc9b296d5e00ea4dfcbcca00a0a4549bfa594f7023100a7a6010875355b7a73911177ef7f5ed3a53657fc0cb88590492a1199e2e6dceddda7c1804ebe074f3c95e31b14462f0d0302047c435bb500673065023100e3705cda1c0de7a95aabe2af3d5f75208fd0e967f90ee9d2fa20c4cf96e6b321c642de76ac1f02a7ee998af6834e4add02305617931d472b4d2679719b73626f7a96ace8b5063decbfe3e8fabdf03e6cdd50502d0c1f16fe383566ec4d91936455fa0302047c435bb500683066023100be6e12ad96c36a4fed241081c0d13e73b4b496191e3dd10a2858238f3422d58be9c7f5dbd923e86a9c0354d149c3e750023100802c8fa01dd1b5a9078aa582e33301957871f411f7ff9397b8d7d463b1c49251d4e8284115e04251cfb6366add90caef0302047c435bb5006730650231009fe37d8a9b3f033a5bd9a6a4f1ca0a7a710ae5740566e0c4f01cc6d820943e872e2c6ae62f88f9538ccbfaead0342ffc02302d7d6a2276b1d75c2de0707f8ce1182f9bc72fe4b07987a802546218428ac5291d1ade3b5b24300aac3dfc5b51549ea20302047c435bb500673065023100eef9f0fb32e98976f41d154076c7109bbfcc812e749f3f36287b96a56ce368c62e5b98a9ced0539448fff65ade94b5820230520a0d5dd7c593fce16b1b058de1a4e7836ca8cb80c0a68790e84adc5e826661caa1ffec34df26e09b9acda7e97fa0990302047c435bb500663064023003a87f904d92497a4958b8c5bd712a6a0f4160fdd7cd50302927456cdf689670c0597d743b8490935f672541446b9ccd023059f158cfe10dac1d11ce5de944934d5053a3b4f4f5180f447cab6c6d0c0323eac7e017220bd219089fc78a2d59a9b4840302047c435bb500673065023100d3bad3cffecb74f5a978acb75336dfbd8d5d08884c0a28559ead34f455523f11768e12c17073ef0553e9420231e757090230067dc01b02c3db176d0be15eef7d678b6bb10ab61345c9f1a1e862cb1bd77c4b098f49894881034b67ead3b0887030580302047c435bb500683066023100e547ea64cd82b729a9da6fadcabd88b0201053cb602ee509caa79052144afc62586adf8a08dae63c1466b315871c747d023100c158546086fbb34da90c8ed9e76513394df8ae6fb0c32bca94b3024e5d15de33c067c35a75e2ce8377ee601000cae4c30302047c435bb500683066023100e3f42aedcb01d32ef3ed3011334bb97b6d91e8507c7416c0f9b9f7d9448b68f554d7cc334aa0d9b564c9ebcda94c8ee40231008c0f155a13ae0286f6aa7c687f191f76fa8fa8b0b823468b3121dbe92863f15df044c967723f11486cf3717ff2c8b91d0302047c435bb500683066023100cda4781dcee892141ef26e9fc7ec12eb24f8fda329a19832bd04c3a8d7d2d90cb3350c13708ed5c560ed61f96232aadc023100c1bd9417ef7ff0d0bf62c44c5cb428533d5f79e536e5a650789b8803d332a546d71cadc1ed6b08d135bb5d8332c9d6270302047c435bb500673065023025766d1106aaa3005e10eb7c929a8e5a2bff0d1eba943b36769efc888c45427a20d774bfe583810d647ac0915822ba63023100923370c0589dcedea3fc152d51a65bfec14cb991f97fc57a6068c0e50b68d938442e64ac3ff6113cdbdba72a9ef5ff5c0302047c435bb50067306502310082166d8489a526b26b6e6e7dcd80884e07e81b07d7d1e9cb9c16e22ee81394580a0d3d6f1b016e3f904b01312731f15d02301a7a0762aa53222581f20ad49d7d2e6c48f618cafd325e700a96e27b5373c4a002de0a1f044b25dc90abdbc5ac8b039c0302047c435bb500683066023100bb931a8fafe0bff203e827feb7770ed25337a1bc281056d2b3e823975d85e8647bcb62efb8875121b36ad3e366a07cb8023100f18a44a6373768d8b35649f46392d13eef9749c93df58360441f05a4d62f0575b4d8cdc2f57223d22305f2dbcb0dded30302047c435bb500663064023043463c3ffe80550b2173d92fb03534df19da1c0274f6f4f1ec1c8d40794b79d653bf967d22fd01d3c14fc9127acc0840023017fbcc2ce42154b167ef89ebc2a0e7300b4f557673529c2450e2b7d176c9c21d5baab97b04c21cb42d5c6c3e04509a0a0302047c435bb500683066023100c59116d2c2c1c7655537bd6d4961a8984a72b3f7c2f17a3a53b49766471aa8a3802645430cba8cd56ff60629ac0fbafc023100bff7e53766481bf20c5c762194d106f8f66c629d9ebe2e39d4909986dd13f37d46d8c35fb3738d3cc67a94487f8f0a120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c96989badd773b7cd6c5923c5348a35e13fd5cb7e99992cd5a36290beece7d1d5cf3f9dab9683c727e097e97ca55d16023100a8aa8d865cda63e8205d18fe12b9c87098dfb6afca9c5206aef7a42d49cd60f474ec1cb5502e7f14232995bc2de49f240302047c435bb5006630640230530a1ea72c52f795d87aef15576fb64866c34ac7d48a4a9d9ac1709392b3f9d23f6f9be06fa90f1276128c34da9c63d2023009e6aab4ca80f8b9433b2f813ffd412029fe4b9beb48edff858b83928e8b7f2f4dd4bfc3b8eb3585674ee1891eb003090302047c435bb500673065023005c21b0c87f2a4a81ddabd0dff108037657fff2678a0b9645850ad47c27f769a1db40c957593ca6f5ffb0551917babe7023100c8b2c263fb7448c496bad8003dea11c16ca3cd2fc9a9309d22206247a19d9cf4c169270530268d01580e7a0e9bdb263b0302047c435bb5006830660231008a931d994accaf585570f7ed5cb8a12c648abe011a8652b326d24b0f143838a34678156444e22abefb1afe3c851a1eb7023100a8a365593ea99a2f205446403094f99b32e594335ed812bb0e715ccd87a6116dc89e2772de50c59235d07f37e408d6800302047c435bb500673065023100eaf030039e0afdbda673e4ceea0315c80723cb3174e38ed0db8bb68459bb700b08920b2d35d63333b94c855b47992674023073914016a17f4579334f3438951a279b5febc30ff3e9b971251668849d824a4690a6f876e36de41d8e8c29b3c0a00ed10302047c435bb500683066023100ccb4137a81ed0ae5fbb31d8a2f13c24cadeac96599129cbc52a82bdb3a2b7e2a6a6d4bbf242ce5abf12ee9633f7d59c2023100c06a9c732b4486686b1a6cfb7fcbcbaab5eff9f429e971074201c6b88da47df708c75cb6c7f212b0d8284ef2512cadfb0302047c435bb500663064023062eff32c986583e77007b6a1aecc4a04c92e2b68d928c55a78b18d17c4dc5fad5985bb4bfe491873ad4d705956531dd5023066c8a0eda9fbe82b97ce9272bf81002a3057bd0c1976cceaac17d407cce3d01b8b8d79e5c0034922834f6dbe0109ba650302047c435bb500663064023025b988f42255e7bf335a7b5709b1397e525ca2d44fcd0190bc9afe097081caa5e92c90433c1ec71883dd9e9a82417bae023051b5b46e9438b0357aeacc311e2ec86272facd4661fd4dec9cdeecddbe0f01a71cf4559e13ff36c460cccfb96f27e0960302047c435bb500673065023100a24edc9f1b168498ed6c282a5fb56c619709028dc1a81330da0391fe395aee4be0c226d0e1b62d2313030602f1edd101023032524bf50a55662fc224a49c93d755392d8db7d05bb370610ac46167438ce2cd63e69443b7f2bb57c6fdb2c06c011a2c0302047c435bb500683066023100bb73413ee4c63f7c243870e6e5eda74ab033abddd4d8d3466e35480b77c9eda1c77ccfcf5888304577eb3a98c9ac417d023100cadb108c897d0aa467481fd79ac290848c75be9e3c54ffa8f2623e7b2cb22253442f2d327744422b71b6e9c5995a07430302047c435bb50067306502300abce482af0dd1cca474e52b1ded0dc10458b06d4a9def6f22387f8aad09479182e07c6da8e29b3d4c0577f59390704a023100d6259bba5ec8c8f3de543ffc363651ec6ee6779e0750cb36aae6bd398c7d920b0c7bd499274a6dc7cbf6410610145b9f0302047c435bb500683066023100d7c94ded578e262c8fd4a01de72669b906bdc916a2f8e882cc025a39c7c4961d8a2a4da8c5be1f32a9f01ad930e9be47023100cd4e9dd91736358f608fdffab548eb12f3a86675f6dba7101960bb00be20583bbfbbb802049c69ed449da118e11284b20302047c435bb5006730650230526e55df545456525a88e07b726ba08a51df6b74031c279380b91158fd110337dd9730d25cc94608d3927b48ae56472d023100d67b520cc43550656e970af25b0e8aee6278ff83b5ec363820079f5a41bc3790b245205529dbd61923eaefa05d60f2000302047c435bb500683066023100f08ef04b84807e4d6b3a84d69fb1c33fd66eb2d3ed6a28a98038a53b06c939060a8c1c8c13011a4e53cf7341284cb6e8023100bf3ab999f60e7d0271c140729a6ab7fa10ab1e5ce08021740a85d1c4bab90d3502deb13ba239e329a0270f3d10cc45510302047c435bb50067306502300821823fbd2db0f2b4a73a050fd2e9985c63ed338bebb1e1c03d25e913a6fcc3dcb22f193d580bee4e2f7b4bdd703959023100904fe65113cf8a5afb618f7a09dddbee8277a1beee8645cdce288a4b2c12e9be1c53eae9e95249d9dcce925517f51a1b0302047c435bb500673065023100c3357de73e7a90d28e9f919de107d1b3d01bca22e8294d829d768e2d0b29b7fa475884f68ece18364ee56daf0d6f43f302305ab09fccd3c4998c755aea6d4a2afc7ff3fa4d457d6f190c1b624d45162faa02c5cb744c286a087092c7a0b081d985210302047c435bb50066306402306f6ebd776dbf35ad72f1b444329fce27dbccfc47c2e6890f7cca0874d335a2bfe881166efabd29855b7c0466ea6f2b06023013431362b77eef80ebdf14227e4b1efb7c13102e2b807d2d90c3dfc997c2e8672a0c3298811a5ee01e5ae5d537453a6d0302047c435bb500673065023078c28d1df5de1dfd94c58487e954871ebd4d5cdfc8d961b20e02d49391019ad052a4d3456026b28a50ed42e1bb162c5f023100a8cad79ef5901a6498aa1f19cca4b3a3396ec32425521ddbac1d13c07bcd3df07931d8d7be5e75cd424542705ae3abbe0302047c435bb500663064023014a6fc3c3a2ff3ac50a09bf260daf09bb37ddd2d4bf96cbefd1ff958781b1c2b63b0b5149b0a100caacbbeb4fbd4ff3602306e5cfdc8d58cf505b6b2d61d3fbae1ebe9b3878c7f60329aebb2771a911a5648baf0e5d58a327aaee539f08e6c8a52730302047c435bb500683066023100f981908d4563dc351352fef84252fd786e50bdc912cf35be6f90bc0feaff56ebeaf655749339c36d5b740937fa0532a6023100de3302fc379e61d9897aff1e9d48a27130e24706832c3a4705f51690c3f41b3560e51c74e7af44369131251be00950860302047c435bb500673065023100a8ef0e9ab6ab5ca16748717dcfd80e603c28cf3ce3e26af6af3aa722031fb669e4777a438706e7774f4b4d8a72d06b0c02300a3763a92f6d0da655b4cc52f9b8f7bf44cf1b0d4a836af62c1f5d81a4b762f7f49c839d418cb9c404d328e01392a1f60302047c435bb50067306502306af59e03019e9799250a8d48df9adf0984bcd1bac8ced806de51a05f62d00bd1206b39e8a2dbdc96d34290cb558a4b64023100b6ed90de7990bf2730b383210866d26ff406d54e8eca1d38600d8e892fc9a24abe813c3fe379338b4317ebaf8ddfd8d40302047c435bb500663064023056b6f51d213ef8fa2703ec5721acb48f95c64f176fc0ec277d99356c8e843e5421227473c1cfac62bfdaa3e132b8a0410230692ba1dde207377fab21583412f5595244bd12722a7e1db83e77c92ccd256134ca7ec5fb59904e85c87e3850c63df7670302047c435bb5006730650230734ed1ef7079112df9549df353333d772e77b5884d72a7d97471f5f1b28f3855c8a5d2dc457fc6e30ee154aa795aef8c023100a3d25990a193b75263e11d82a2320dffce50b4dfcab4e7455d16aacf94039496888cbbe663add679c67d52e906c378310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302a7e3f6c74b9ef529ad96a144834de506f08106ab5e0ede4f154020f3e7f974f18652c0a62e18da285ae8ce801c0d78b023021649c2c86be4a946402a2c926ee8f06ed7f4cfa901f041e3ca7acc58b7ac05a811888d8cad1abd3232ce2a49fb0e0660302047c435bb500673065023100bab3f237436771dbd1b22ad6345ccd7e260698dfeb9ac9563ccaa0188699ac0f15ef8b726b03c73edec54ec8a1c9d0a0023019b4d61303e930927fd47623098caf1385aaa61e798110824f4f9dd39f3cfef3cfed5f4d0ad575f88536f9577d6712ce0302047c435bb500673065023063de6258e1932b45a66ab28a6443546779cccb33d1657af8b4294c69a467582fa84d7ca59b982ca142ad77be5733d2bd023100a066cac0edfedffa4e889b715929e088a8f3f33175bb86f340c430273fd2afa81555b30b71e349edb9c7e3bbd4c352cf0302047c435bb50066306402305112e01ddb30feb596d14a61e1ba682d6472ec4b47e230b7357572ddbe222692e56b6892bce5516c51726a78f7b242e30230134a1033385338a4c319df54d4f45274ed7991b6db6b99a8b7ced54808c9529983bb29b08284765d0227f847eff04fc20302047c435bb5006730650230098280f554b3904f81009cc37f7cbb9fcb4eebe25a7077f4d8a12cb647f20ea0defe057a1b2260d06d7787ddb97bad8d0231009c405ab50661076a1bb6a25bc5a486dfe0f1d6c16e35d6e4988d167b62d9eecbdb08935dd5644807d4141a10116879240302047c435bb500673065023100f483572aa9176a71c9a29f786bb83db9730d52131cff7a790456f9ded1bfc14424e721077aa8e8095e8d380e2038eb54023064925aaa055cf3d4742fd0989bea60e761a74e0ec0d1d362ffd7a14ef539c90d25e165468ee4b0c7903381b5be2d9dda0302047c435bb500673065023100a9a1e1c8b7f562aa9c9f478bc8282749d7694f21d1e4672fd994a7f51000bb93a7bec92d2d76e3a571ef605dfa0f1d8c023008f7ed235796227f48498efc5db097907cd1510d6d906294856e34cee2b2b6078e3c1e9b209f1bacc42cc449007cc59d0302047c435bb500673065023100adfe218c83498a1f5d5718d10b1f2b085917857ef25a01ecc67e756dbc94011979dfe811329c12e571affe7f587140a502301c68bfbb23d3109bfcab189034ac1e9232d4dfded97ab8a5909be3757bbbba301043dcc5610838e52a5e898291e29ceb0302047c435bb500683066023100dc91fe410eb7f8a6b3a041ef16c927a22494e26dd1c65de7c05e9a69d6b904c1b91f074530bcfcecbc2e92e535d08d650231008647b6c645a466449d0b550b05364c4881e777d3d7610e06f8c635b7ef731c078350c81b5be62c81f9c3fbb3be43fd740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009fa2b5d4c59601268ddd38588f420647ce5bfa727052a3de86819c4f9e6e4c81bfb54ef9dc74a2477af944b33cccf642023100e569fd9a0a83af9a31b91b3b41e7122bfc6b8a6fb58643ecf53de44e31d92f85d5c95452b5e419623c1cbb17b35d998d0302047c435bb500673065023001fe70095b6cb17cb2c17bcbac688209919f1448979b81dbceaa5f3dbc59def0252f0cb6f1e03bb190fd5f6c8a4aa2f1023100ab9680602c6ffa3640fc0a9d716799f08e9f5a5d7a0a862e481dd06a27e27687d6e2a20ea5112cc8d4592f0e1720c4f70302047c435bb500683066023100954a4be13b1bcb0bf4816d9ffce47cf6d0bae74ab47e69d3f6a0619ebd70988dcb2ea57f01d12102b607286ba19dfe25023100e74cc07c1427389398f3387f3d968ea8d11ec0ed98c2c6d6be433dfa77776891bd5f6e3eabf366e0e6455fb7373d5a730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c48e51473274ec19ad149abee216420d82f254f2db32a1b5a35ffb6ca1b34a11810eb2a67a9e3699580bb87e7d9938902310090faaf4f25e1fdb5877767d57053ee9c6ed1e3c24d2a3ee4c00db9b2174a81255c49923fff8c403178c9866ea7c7a74c0302047c435bb50067306502307d670575df37804d952289a6e26998c3cbcd2b2c05531c8b7985c006223c850872554d922ce54064d4bc1f2741572853023100ed3619fa6a40ab5939d5c939b4c4667bd0a1284f5f74404a7060e6aeb6c84d0ed406a455b9b4740cebf650d86d5746ff0302047c435bb50066306402301fc134cd16d2ac7ec617342439640a19996ed443b16c508dbd9a7a8d4b0671faf138b8af8153eea1f729eecae999706c02300e931e134f4ccca7a7965eed66920f4ba2bf3303125a6449e6c822de57584c1ef0dcc1925d6fce8d2333a0126c57cd7a0302047c435bb500663064023100ab7f9e66215867f4f54d78e6b0509a6d375833df9c44d12b223181fd2f0d3a4ff6514f628c616acbba77d6c1b4c8918e022f66a0ebdc42a2c6cc6b7b875be76812cd5b3cbf938e4e2daf9370c5ee2fca721a554e87584851a1a81c204b031919ea0302047c435bb50066306402302fb70212e33090e29d74d0ed9935168ce736326a4ffbe0fc0c97017b168d163f123f3e483fcd36e63abab637607a3c1c02305f04b23a3bf04c8ef8e199bc5e2590fc4fe6abb512536a87f2b28d468351cdd34a604fe22f6a52f8f986584732538d200302047c435bb5006730650230323426fc9131b3b51ec4c1be7b8b34c143a3e121a1c6eb5172e6aa5e01e42267a6d16aba1e29936d96f0badeffc651cd023100f8a6b03ee1b339b433499d903d60d8ba2cb3f1de4c16545c354dfa5a9a10523f39b1697e764984d4f396e1f1ca811c030302047c435bb50067306502310095e71d12b97abe7055f2a5dfac481bcf2ee917b853e66c86547941953319974215b4a72a1e6dfb968e2dd69addd4e8ae023046ace7400aadd3d333773c05bca611132aa9f2339524b9c9fb0cc5d664138548d7ec707ad4dfcb44af8653df7b211e960302047c435bb500663064023056d3e5aecbd9079f49e54bfa0a464ca0ca7c0cd391a1a030d4d00d8b8d277fae1399123b69ecf060c5be71e5bcfe802a02302f35bddf8d18de8580279c3fb4998ce09e14de16fa1c50088ba867e96a169d52cc49eb9fa0ff1620504b0bc3c8514bc20302047c435bb50066306402307baf23d6309410cc2313e3efc80c41f7e473dc3578ed1f804ac9f40411a3e1ac3cdf0d484d1fdce8e1c82048e0f71590023071e463519d61e5c13f1ff87a239f991d8fc8510bbbed71afa9064a1927f6eb82bbc55b727d21b8e8cd3a45a91c3a601e0302047c435bb500683066023100a5830588ef41edaa388d8c2df1e3b89310914f29bd329c4f71b784d9a17111afd6a15fe9f931f63f36fe98719b49e040023100894f6f641ca5c7b7ced8379c632f3f8d0ac326909f4b9dd977a5470633c6a352712f2c144aaa27a1d47d6337554c049d0302047c435bb5006830660231008f2d902e40c3ab0ad9a38983d757adf11e8f79a5674e847e9db9769e719c915b06fdd5fa35d610c75485acad7c2b0a41023100e1c0397f8f9fb528d17dd5a5482c97406b25383cba5cf0f35d2cebeaac8ffc1f6449ce0019c5465eb993bd6a82e1a1530302047c435bb500663064023060dce552db6ff3360cd1b2632090214f58a7e81c195c4c7ddbf6d3aa4a94c225e934716cde12755986d3f9f3e294058302302d185c406f74b5dc51a4ff56d6b34de66cc512e154d087d2189bf21d46572344b61fdb8f75262192720bf2405f8b87e70302047c435bb50067306502303c9e41e7ad6e89d898554a8e6c190be616194c67f1feb3ad21633d4d03ae44adf33a9406f48dffca703465ce9c8359cd023100a6ee31d10bd6956627f70381daa43b019befd2fcd4ac65579f032f40ee4704cc00d092e60d4695788cfe4f1fdc7e18870302047c435bb500673065023100ca6aea7ed631bfc208b0e0d8384d0ef2c95d0682a55e87dd1f1f78c35f633728f71f117a039f5739ad233457e8e4f0eb023008ba155c42e3726bae74dfdee30fecbf7a45a78179df34f672c4abe1d51dae59b4387ff120369d656d2340146570ac180302047c435bb500673065023024e01067b7473e4dfa04cd9d6071f49653041cee8b683adfb8235893142ffa2f2f45b664ffbab9f11157082c20b4a946023100e0c150ddf5302d02a11c97d12d7d3bb6711ed3651519dd4b032c3b29cc24c0a79d36fe18edbd8bf947fb79caebc565600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e2df793f86cdef0f05afb05a3d3386eca738ff036f4cbed8af3256a4d5361f1a2858d70a203e35b812dce9c6c1f156a02300b2ba07ac93a577abece009f330c8ec7ce77b8e32fa2ed5490efcd76200f716311b8a6c789e39a00aad03d856cee1bf40302047c435bb500663064023008b6a7b963cc9a647184a9342a5fe91cf8e1d8e9fb718c2fb5f0672ed3f62d1dc05ec4984a3f566cac32793555f50fa2023025da47ed229ddf629d1441a87f8b2333863849c55131b8128ffd1001e7864257fdfc4d232862ed91f050c6e25c7adf290302047c435bb50067306502307bfabdf1029c33da58925ef04bff1d157567e903854711742c68e24bd3881e5d773d838d1e4f764a187a196450363ff3023100f3e2ec44803964efa70b430fea2d36044fc887276438a59deab039a7be2288ec87988a4d5005d6ec888f28f48585d4e00302047c435bb5006730650230448db109e64fea932cf4b9aaf49fb93f92c3e6a8342775cb662b35b5069f3e61ebedf20cf7ec4730cd5bd52473916d8c023100e63ea9f33b70a0374c3371ef2364de530a19b190bb09834fc98bacfc8fd1660721617f9b9613f6ef79113e7ddf92d9ed0302047c435bb50068306602310090fa1e3c649f74433a5c02df2cf2ba40d9899734012a7af4ee7116a455a0ae498aea9b223219af5ae9fb6cd3cddb8d88023100e1a991b9ea0c46d30de751ed5d45dad7025bf9c6f923e3a94a13092cf3c92ea8cde0737c66ea3fb97609f5a546012ffd0302047c435bb5006730650230321d8b76981c4a6f5e0a5c9e661c406a67b95893a0d35019aa70203f748a3ee81fcffff6b2da87bf0e5554138fd74f3d02310098cde00a7e60611abd0cc7ce887646ef63d98601bed4234d60256bf58b17e8d9f2b9579b792d90b62e851fe5440df7440302047c435bb500673065023100fd44bfb18d710ade8f1512d6be6f9c74c63f6d5e5e673e903ae192bd47dec41608bbf764febc87fc34dbff391b8634c002302066f99f313eae27d62288edf786ac43d857b4311c7a3ccbb216ba2a119dadceb2475713b865f84c6e5805378cc2bd910302047c435bb500673065023014e205904c4bdcf2bf76f19adf54ceab67af8f2d125ca389170c1d18cda4e5e70a3b44464e2168debcc891b0c2e3ff5b023100eec2eaebef3acaf27250be2f7ea14c94c3863dac139671002b8902f82d2198494e4f137e77de09d6168b07024f9e03e50302047c435bb5006630640230323325a82f138ec08e870c8c67565362904421b533ff094c493c03eb293091e9dd2287b393842943127932aa558dda31023031e786d4ff70ef2dfe97d043fe1cb0dc9202c976e8ae7479e2d95ad69266209cbdb6913ad9a365b3fe1d1b7ceede8e270302047c435bb500683066023100d58a672fd968579c5ff4bb0d3db2e887554dbaaa3ae7e3bd778334483f76eff1d3085793950b715bbe5c598fc1ee4cde023100de4b23ce631a758d6150905b6954b7e9634963b47bc1d12876ce0d826d56fde11176f5ef6638739da27513ce2cb9568d0302047c435bb5006830660231009683646ff2049cfb1ae697a604f7166e7f596121869430e79c019b7cb1b49b7ade1e2864648166ef1fd49ebe30711376023100ffeda74e1b5f47979f4273008bf2bc4d94f61e6ab013fdf5fff0b217941faaee0e3f2ced34637990bc3e7e55628ff13f0302047c435bb5006730650230418c595faba77c86230727ff5e9aa14efaac91318ced6d89b54d74fd490d55c008efc8564e11be90d852c4f9240ccf94023100b45aa5d9689f9c0db5fb6e5211b17d206441ea749bbcf2982a3d96063b2af1c3a8903e7c18393bcebb51cc93a0623fbe0302047c435bb500683066023100b26f4803bb301a22d1895cdb883aa848f0e034fcb598dd4afc2d2dd9cd2beed8dd1a334322bc4c8b4f83992ba29edb52023100e5ef3c33d4439984e1f080bdb9c9518e4972439d1823c1396afa2cb0b7b596b46955d932bb84b05256a00bf1b66bd1e40302047c435bb500673065023100a939495a32aacffd494155588b98aa5783869b743ad99481aa8315ca02d755661b39b6d2fc6f786efbdf2a312109cbc202307618b81fd20cb58b395c52fb3de687564ef7fd18a56c250c30521dc7eba4e0adc8d8e85eaa63d6385a535a0a25767d9a0302047c435bb500683066023100a33398435cf1f625ad713a8d499ba394ed74734fb90494367cf817fd82462984c2bb78bfa59101a580f364cd2355fe6f023100a5e707146d119452db70f2f66f90ed9bd0cbf07acb66e23798e37d0f7054a081b470b5196ee9cc3968fc2fad1c3e1aeb0302047c435bb50066306402307ef7e5f15a2b88a1ff1c8a0aba56ad4a72b0f151c971cb6b7efbf9ccb91a86728b1702f68cc3877e2a1aeb0cb274f87c02300b3ee5964a7b4578700816048dbdefb45969fcbbc810d98269a78033101dee18e4c107ca71d026b1999e9d66bcba02e70302047c435bb500673065023100b2fc83115b60f74d072527481866431a2ce1559a885e6767c29adf87516b8b5f13df317148ccfea40eb62377d7d10d4f02307e3194ad30a129ec35b483fd60d25ee650716af52661d9535120b0528c7980c9d3b5d932f0c824e51910fb26aa91413d0302047c435bb5006630640230673841accd5e461d94fcfe8a1f34c4740a50860c4dc5dbe35d5422c4a8be2a077fa429a98a9b8db2d56154b0eebd43a702303da3958d1d89ff04fcf5b655c99f803409e12c724a7778d9ccb94baec1e1b7239401858fc549f94520ff7a9691b7712e0302047c435bb500673065023100e86f8c51b61a42301b17adbe38f550c7498284a5ed3c84ff39a9757489b2e2c19234a1b52eb385acbe686b4ae9c475f60230073f17d8502754dc06a741bdb09367402cf2a7b9b83812d486525207636974c532fec953cb09d8df3623f8180a3e56d30302047c435bb50066306402307234ed48ecabc85a6495de313253cbdb1ba5c3b8609782dd66ee9d8bda86e5be4fb3caa96e35f9033e778b086e609e5c023070c21ac49b9c9bb1317c84da53f250caeaefa8f18aaa3d122b703030a8ede1312dbb83cb11adce9a5b8e033883c6faf10302047c435bb500663064023006520bf11118c3f0b973140cd9c15dbd489ed71b8bd4998a4f1f305ec298d1f16906dc70d779c5d26c60cd511a55d1a402301d2c5a1570734f54a9b955249381ad41247ef28425b67e9313ababbb5375c5739294e63bc779fbf8cfa72ae4b60dc6830302047c435bb500683066023100d6dd57a174dca710fff01f92aac5010e398d8ae4bec5c8e140266f2ef37588ed318eeddbf4693931e19ee95b0f1b105e023100dd08b14632a04bf9f430411c151ed5e7b50a71507de9b4f636bd43cdae341e0adc98e47fd8659915987358f5f8ebb2cd0302047c435bb500683066023100b5d245906b57912c80b0f87a4f07d988c4882d33a4b962f418ed297d4c4270ef640157db264fde121d72d058896bfeab023100fae8b8b0b585dc0d08171fe1b29c06e102bb45eaa2fac91faad65c846ff828e7bfa682838f6af1c3b9c5fa71e59e6d2e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080d628c929cb2368366a86b7e2a752c90579150aad8d084cf15bc1362799c8a11c5d7604a840cc50e349514783777899023100bbda5fd60187a1e6387658b88d7af691f8bbee225b325183ad9b7e36d3aaabb1c2b124133657219e2ff197b733a8a5fe0302047c435bb5006830660231009cadb92075bec5a46bed6d4f081ffa28ad54e2e68d3fb8fec840c5ee3c5bd535945e8744e152cc62eb8c4aa179a16566023100f600c1c3671de25253fb1b0aa5682dc4c3338ea5db97cead7846100d87ba627d344a10b9643b0a6ac5e6546ae62a09660302047c435bb50066306402302465b8bc5ec88e04e3bdf11497425b4770bb1981d3b780f79513f3800bf0c33c24d4ea89db759554a7c4557d3f68dc260230195507e6c6f6bfdf97939663df58ba6bd75003761f18851ef3d1715908a81a4bacd70cbca4527e32a5bdc7560eaf27c50302047c435bb5006730650230297a03e2e10db50d9759362320f6c03a5ec98ae92332c0da0dc08d4d81315a7d8229792a5c7c45368437e0b3bacaef4a0231009ed84eb39e8e9ba0f9dbf305f8b65089ddc4b3a5f368db08c1ced147b86b1bea3aa292c1ade2d9db44294b6bc63e1d410302047c435bb500673065023100b93e4c36fa8972a6dee59810d606dcc522c6455c5f1ead930a3cb494f385c8e92651d63ca7c11afa5be4ab0f7c95cf8f02300d6a0684f8b5d54633b6979656f529aaf3802d1625928a13f0ee6d7239d15379fb062033a269067a8c7389e687946c5c0302047c435bb500683066023100af009c88ae98d2e29a95faacbdd6591b4b75f11c02f3732c0c333a5fb72731bd3eeeb2078c2b4ce0e391a84f998a0012023100f71e28dddb2cf377c755b9e85b1cd85838735f7370c774fb5693287b41e01e9fb2a0d74b9a2d564b01938c836d90a35c0302047c435bb5006730650230361ff3a2680bc44ef41bfd565d793ac243eb05bdecf1bf6ac9419d09be796a4580ab22a3a0569fde99d41f93d16c2f52023100fbe1d3a77cc7b322fad02a6ce09f6035de7f01beace261d89fe07dc65e712b524b4e2af8ac9f521e536d66b31473ebc20302047c435bb500683066023100a52a63ebdd3fcd8d5849945c017dd89a4fd447420ade43a18c15c0d4f91d2850ad0b4cf5753df3bad96c08458ef61050023100a5c057f65d82faf4cd1b00411b6d12e0eb8c4a1014fc3ba8f3de89b16ee8bf7c96b398c777a5f34c48fea259c75ef4080302047c435bb50067306502304b275aa8f805a1302b1414e1d855fd63db2826c6d35ab18d9b1971aa24f58c6e1172be5f4ed4b47f3392ac663601d35f023100e5d22d9c5991bd765e3bbcac7c1202fe81cbb28ff878ca9bab96ccb4e0773c4d41f4eef798f8c5f91fefcb5b406bf3760302047c435bb50067306502304adbb1d0d1ba8f87ba2bc502c66649ce089a6f9621eb698d98bba0b344159c549a890ea79d45d2ef04b52731b7f2eeb6023100f0b3fd4e133e0668249ff3d74e6a95699f434aba6926b1502d3e7db11ecdad8df7d33ccbe2108a905479cc81bb0ddcae0302047c435bb500683066023100ca2fcefe87e06cef8cff0616bb89c574e636203ec74f4d9cf6a89e30e039bd252708fb2c430dcd608fd34d7cb7ec1178023100db47bc53dced74c0b42bd05d8408770c68b262c8098a2225ae201e01e44519e97d2525d30378cda3e518cd2b757619b80302047c435bb50067306502310099749ef946b089853b69a42d14278a3abd226f8821e8f1ace0db0405f2f09b30d02a59d63e8c9b629ca304119d03b30902302f1219b2a60bc651d0b6ee4a44bdd24aef833450a6a2efcf0795320bce8b861444e6ebc644c45692ad8bc68f5dbf1d620302047c435bb50067306502307d7bdff8126a041cd3612b8a6b9b20df0e09aa24bdbf36c06d74052aafbf5fc9f91fcf1055532169318d9ced3a15a9e4023100d3a95332d8a83b0fd1d3191255d489cca4bd0c8ab5cfa91e12c9cb1f4211557589d55e31eceb3eb1ef4e6b97a49df3ea0302047c435bb500673065023100d8c8693e8417862a1f4bc1020cf34a79f00e4d21c8b9390c4322c0e4004097762235ed3c48494fe15e1d54228810264902303b1db22d131665d098b5b09651d5e839bc364bd1dda776569118446ef68ee5d7384e17dc97540b90f04a0fd919e250ae0302047c435bb5006630640230404170aab957d95564b7f7560835c1926cd5b8ad833844e4f3ea3dfdfbb02875767297f5e457a08c0fa1b244411aab530230208ac3cb18736066ec7e54c2e0d20e59f61cd2e179e621ade12915aaee6ddf722cb36df42250e388145aefdbfa7c0e840302047c435bb500673065023100956337f9758074c6268884647fb44c380ad6135479ad4807282615e8a8ac466534c6b2972869b622dc3307c6b0eae1420230754fceb38884e3530a2f53c5a46c17e49e910d51905d1e2fbe8b7fed4fef2d5e65e9fd59832094184f8077619409753f0302047c435bb50066306402301c61f09a699772c5385616cb738dd4ede55f046a4321186f26eae6e4b34a769d82217c2f82b36b132b472b25b716050a02301ecb009aef457256ada4a3e5c2ec87cbadf9a6f1dd05b60eea6a28df3fde298c97516e80b9fd4db6b40f5c32a57f8e540302047c435bb500683066023100ec8ba91b8c0124b5e91e7797e5ba9d196edadf75f3819fcad62b1ee32c82c531e8418bcbf2e43557f2379d7bb22c0cbd023100a66c141528d7a32f93cd1e988857bed90caf9d1550891b3cd1179dc42d3ef4383aba46be122504f1021004c5758af3690302047c435bb50066306402302b6a4661ac36105b67891b61e9091d9720d6268a464c68a2bf5f842f68692285c307a3205c7b79e78816a10ffbbf870102302097429962e88996d08933a7c897f27cc35a68848d36514e76b91706ad68a99825f35cfbf2a053d81d573f8bda6826ae0302047c435bb500663064023067bd364ede2ae72d768d3e56c4eaed4d3beb49844fdcccac0a90fe9ea7b9c75926cfcd9fcb6778b4ff28cbe825b3f92002304302656aee44f1d6b1be85bf0af6fed0f784864e704c0f9811b3c8e0057b776dcc668da7dbeabe3c8cc9f6ef8c5052e70302047c435bb500683066023100af7513bca51963c98e6fcbe9f131906dd5c772bfe7e4736ba9625db14aa692f623fb7f26343597ed239dd9f7032ad1b10231009cb1f506a635fa6a2c06e0e80fd22587b624908233a8ba5ead10569869b6bac08fc13d89d5600d50522255970dae8f060302047c435bb500673065023036e415544d1bdac10e9ae109b7f5c91fd74cf43d3c4477a9c621591f3eb0b78a32412ce0113c641697b50c6341ba82d7023100d05a0956c91308d77b7ebcfd3753cd1a99260d3094d51d5be5242559619b5650e85290358969529a549bc02f33a7cae80302047c435bb500663064023020ed0fbbe54a14cda9895f08c36a8b117ff7521b96087c461546484bfb6622d1ffd7e241d19c61e8dc9c688d5fe42f12023061716bad88dac61979f2029e0966a857b93b5c58641787f1b8a6c07434b8d916015823c0256f7a6567e7d71304c3dc080302047c435bb500673065023100c90f74a8fb11da231407bcfa7179e65038ea4ca7da792b7a2869869946d8c05f76c64dfb5a75661dfc3af41fa7e391dc02307116f274d1aa2957f0978a22becde511a1e2516d082fd1b216fee647d5d7fbd4c9774d6cfb8ff341d30b6dccb37bf8e50302047c435bb500683066023100c829ec864bb11d3eafb28f7b4e3ffd509f42864041895fc8696d1572dde60721e85e752d42872767827588101ab27c62023100b001bf2baf29132a0ac769f4f46ea3b5fd175208bd9e8ad41b336886c82a915877c00a595e34bc284a318c9b11eef20d0302047c435bb500663064023016fd9fde2dbc43b0d280a1327fa3835964254ca440a6e65e7debd54e842c0344e576e8d21da4025cccff3cb9550edfd40230014cf223d6172d26062033b6237599fb347aea39c8e3af5156d09c891e051e33335a0d35794844be2ccba5f1dca939910302047c435bb500673065023035790869e2eb759e70731b6782d65d53e634f70fa88693c6eb4cdfe52fc696f231ea6536a57d1979b6af22ec6935a29d023100b58ada61ebb715d0bbc4378b2890bf25a76899db0a88820dfae978a885bc789925dcd323ee9d412929170a51dc23c68e0302047c435bb500663064023047bcbf1c12a4ffbff8b11b56aa14f2d8641093888c0607d3dac2dbfec7a6c5036d4926844992c91e363dd462ff1e4c7c0230768065b32cbb2a02f394d545a150a0a22143cf30dff02f45f208076a16f32d2747c00c7d746b5a6ca81bb9872bc5f9170302047c435bb5006830660231008d81a7564064d4499565c71f9c848072c00805551acd8a455e79ff5d0df5d3ba946aff49db15e81d719b74f1ffddc9b402310097825a30df3f7b943ad41780009fcbfe4e940753f7314fc3750b4c0a20d8acdc03571913b9a4bec80f84eabbaf6bc4930302047c435bb500673065023100c4ebe4c6494a3654a945d40fe37d10e1abe0ff8a6d240bae57feee1779e1675eb56ff9b7a2b05a69f105aa2f1253559502307bf5ed0db555406b4f4761e29826a97bdfeeeeaed378e7421b33b58061a615187fc05931fb20434f96aba8968a6174b50302047c435bb5006730650230603e04ee0f71e89677aae5aa750eed9862e43b88ebb0bb5dca3f724ac9d0d9da1b77e0023d8d5bb60d158adec3bd21d6023100ccd6f0c8a53848bf4feaa69a6a18381fe00b2332001a6be09f0f0e887edb35884214dfa22851ad55fea8e870b5e6c9c20302047c435bb500673065023030f78df365e21951d2e8d714d66321f43809621bd695f7261bc5eeb258cbf38126228f12cc90822f85c1f213c914f75c023100c8cd57ac794ed3b70b99ba0d39371c3d8c71e97582fc09dcdb4868fc123f5f16fd40df6ef4d8bf9cd72aad4854386c320302047c435bb50068306602310084f7703ee10d797fdade7cf8723b3f67334407943a927c6e78f36419a4e783d03e9bf4bd88bbea04f862eb4a272bd750023100c65e628b0adce3f3951f70c502f36569dc7bcd8f415b59328b76ef9a64ed040bb9647b09498495309c22d7ee300dc0620302047c435bb500673065023100a0f8010c75ce6529d0cdda73dd8f74fdc65f049f4cfc2841611e4159c3b6b07d03af5e36a0454aa0f08d71a7e2a5f21302307db48fbdadb6a680096fc3e5e384048f7a9cd754f895f82457d129919c17036b185ba101a3e0825741b46117a6addff80302047c435bb500683066023100d79f465515865e4c12ce43a7f2828e71a78aa0d70410b4ab79fa28d9622ed798ccb940a86344581ea893a1f1b8a536de02310099cd310d83d913d8ac19334a093d76015c501e73bb94606d38aae7213b30358a83ef515870a12a4f12979da7325803a20302047c435bb50066306402303def7bf6bce190c454ed721ce09a1b8de464c1e9fab44c244c18c41a55a86735c6453ec7262e3a883823a5309c93c6bb02301d032c6d716d424dec52100e33a69ccb366a70ca535138e74c2d4cae3cad9a4984aabaafa8034a67eb11351c7a56e05a0302047c435bb500673065023100bebf53798b0849108d06c3f61f207b40a1e1790d81fa75da85391a4d3a97d69eee71914057d5a8db1458ac846db9679202304ad31f2dcbe30f876d0080409bb78f1fab6748ae65be98d5bfb15c0cb4df025998862de19c6188201cb4b7011ea17a9b0302047c435bb5006630640230329001b88bf624fc63946699cf6700b97d14334252739407e84ee6c0ae365731cba85d15815ea6e396b3f1df9d5e3ff00230586ae6e77f4e6fea51dc8829e17a709f5226862eec700da6cbf526e91fcd9f26d2b94bb45a00d7faae9588f1410ad6750302047c435bb50066306402304f2685d32662d4a782318693204c64560fb5095e5bed53bcfd59795bef65a15ad84c74815c966eca02927dd2ce03260302306b12db7208946fa85f956cbf6b983325ee84ad63a82567f5833c53f962235536b590a1f8b259269d9de8d41a19083dca0302047c435bb50068306602310091cbbc16cb7427691b1decd7d1ae301fdb80a7644294ca21c028554abfdc0da95d705c886413bae810a5e66477dd048f023100be865c530e6d765aa8b0a4140584aaa1acaab7bc1af9d8ba2dedc34985d8b294431b6c22334d0f0b6daaedf190d2cf6b0302047c435bb500663064023049efaca349cee98789a54ec89c755795f43b76fdc7fc9d2f93867aac5587f2491255c0996e978e46228304ec2b67c4fb023036b40552fe3b3969d1f39ec36db52cc2b07cbfdc2a8441c618ff5cf9054716f82c01116d34c18f914b63bd784d4407c80302047c435bb500673065023027eb219d28ba25bc842bb24dc4588dbc5dbde642f2dd2ed4fa8bd3bb23f794b0c3c896a51d2c126011f462ec1f1f0949023100ea64bc1637726a3428cd8e2d60aa197382b6b9b6e1e25a3ea7be7bc57f260f7745c42f4c29dd09864f4ec25480829d440302047c435bb5006730650230142876cc5684221bb7e0801aa752d898e11935e20bc34cfbf5bfb427c1ee9c857e60362fa9f5f4526109b3857f9ccf7e0231009767e90d475ca471fba276f651aea5f3886b50c4000cd2e5ce4429605538c21955713d08bf1585a9a350a9f5f530e1730302047c435bb500683066023100b785c4d7d62a550adf0121da66986795ca75fc26d076422d3b5dce6b1af2d35a09be06935b2a22cde6ffa387b332363c023100d185dcf7a502b624b19cbe0c0d852a3e3cb91c6d1190d69fb4de61f6b9481d79fa906fbd8b571e1583867bcc33278f310302047c435bb500673065023100b15c43c99e078c7cabeca3a263c808e54daf9132e72b441c1f9b21232f0195a130d7d3a824b1448abc4c9e48a613122302301c284067cdf9feebc07381867c9a56f299c3dee9c1629e216595447334bc94cd84edd3a8a1d3aa3bcf2374e60d387ef00302047c435bb50066306402300eb3a3acab3e1a4108757af2706b546d764d81356d0f814d853c70767fc610061e4fcd8690ef5c4980ed0b73db0cf95e0230708669112ea5237276851d08b072332fa24a579d7715330a5cfbf6393c191d81b714556103267bdb9a71d224aca90bed0302047c435bb50066306402307195e6ea9da046ccec16fe0fd2911e7001c2b6dd188f6dc74d5f32c2e16c404b6d6fb9e1b5ca80d3364c4a3f2b6ecbbd0230721d646f2bb624dcf1d7998250f1b048b406f8d8e5132f607487d73105b8ad58864afff244b88fc6e3d2691e4a211ea60302047c435bb500663064023000d655bb195aefec982f6981a8e4a473e702b7c72eccb72c602cc7d1a4b4bb784a87153ac9eff7a4a645e40326576c81023029edd24a11a81c8a36106bcb470429b74667995bcac55e8bf7c8388b44383a5860abb093974cbea3e9c5264d8cf8d2730302047c435bb500673065023100bdf8b01ea57ab69b5653c7889eb97b2b1c1ae01d0137534a67be445588b43cd6a26bd52c3898ded4803e500b1fedfa6c02304590ab59c6cd1bfc24220823a09e5a8d63a69177e9f9ce2e34753dfeae4d80f2a5857b2ab7de79681c62d68a743d5c9c0302047c435bb50066306402301d126d43fdd576b39dadd80e7c51bfaf9341fa7b698509979fd23e4ee0ecdd398a3fcfe1b0e78a77094e6622cf657d2f0230457ecb4cd784fd635cfcbef8377e29f89e60560c9c24e94c40c6b482146ae13c2980e35a9675f39ca60c9c3571c53a370302047c435bb5006730650230756473e3d755f31aff106a30fa95e724ecf7eebe1d6f449696fb91dd84ae3d19cebf37becaf34eac9e2d3bc216975cd6023100916e1ea38cd7d3b5127c72606757ddd92efd0bd2ecf179cced00fe7a624fe7267e344c706051f0166928e5375aadc09b0302047c435bb500683066023100957af8308a3c649ceb6cf140bd0a9ef62af8acb2eef3add9baf4b45e7fef020d46c1686837aa806de3cef575f37327b20231008e5cf56ef01e46493284ac4ac0a89700e14843e70f77b2feac1721f719e33b45375e990bb6cc26c55c7098dfc4e108220302047c435bb500673065023039ac0f11ce6fc35fd0eaf759c284e361388f03464dd56a7cc28203132538545dc7fd885bd6f5cb069bc40867e911d38d023100fc695177e08fd2c13a8a77f447502f63d7cdfa4700638714c70b937c292fbe79c18843db8fa222be088fd329bd5343850302047c435bb500673065023019568e1aca2c655df7d961901801139113fbdd64e4276c5c2b641eb14070317d336d63208dc1362df253cf22734d0095023100932d0c4256b97bfb3773f7f9a6e048b94711333f7ff0e39cb00cd7055232c94e9c203e3e13fb8d1dabc46998ebf8f4870302047c435bb500673065023100ba34ea3b46e0c24954989b1f7e1cd6f1538376dfca964f08f4218da3498484db578ab59a5a98d9fd1ca731461d61b46402302e2a7cf7e25b88818a0a5ba08570b685f6243b8b74ec55fc9fdcf1933fbae5804f3f6e291d3d8831b35284e5f938ea840302047c435bb50067306502301fa612f2777a4d9e58a7d9bef6cade8385933156324b0910fbfcd02cad62ebfc001be6550a6631a0fda417a9757b628d023100c4c7da4d1ee1d6f2e4e6b6755eff4c59687e60fe7c6f526f37073399e5bcd121521fd7b6d5e6e9d7e5cc969b244454e70302047c435bb500683066023100e7b2178714d66c34c895788c35be60d4d190fb679afefd39e11116661b1b067bd0b42ae0055779570316bd3c9b931bfe023100c353d4eec2165fa8ba8450e644baf425b0de1675591f19a6e0cc8c0f393baf13134eb18c582d63493cd04e0a0fa591540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a7f13fe8d25518c56538128cb0c5fb0a10d24a5d033a07f3339c1ae5600291703d192637a3b3a5c012a51c01f73862102300901cc86f27d6a9f8f49af6d35ef8fdfb5b3bb912f9c8b1575cd732e38b23c6f05be7e611b0395224264ca66532f18f30302047c435bb500673065023100d9af1706d25926584ff675f52fd239342a870b391c89a7810c8bb31be43c9eae197ff91d0f9c4b6c0cc29293cd2310d802306ca67cb04c4e7aa91fa883171954d3a47af6a48d49584e6c0122056995b350e85c089e7bd0710f11989e4fa33560e7700302047c435bb500663064023068f9f1fee3ae91a3b332dd49bd7f345bfe4c86eec7c45476da5057fa0802a872da82dade684479fe1d0e293aa39a1c6602306e678b8279c6e46da4d81e65a79be5fb6589ac0bad9bc41604330f6fe63486ed07370e1a000e91afd0080b0ffaf9a12a0302047c435bb500663064023030ceec75c7f585ff80e993e88e237b830429c1162268f0d7eb8eeecc1b8eb69d93442e99d46c71dcc213f817319557c002302f2fd697edbacab99c9b11f1404fcd9d4aad916d3b4c3aa350a234703edd6b0ce19ab79e9ff90bda9673f1f1ddab83880302047c435bb500683066023100e81cc7758ef6a5e9794aa50d78481eb945374c51bef34cbd8eaba6c8d9dfbb6a5f7abf1c93f436def72aeda3a5030f5302310092f663d9bdc84a649edcae997f42bd9378c763018c3304d1b273a03da258fab1022f1ef58d3702e002a6910d82c856ea0302047c435bb500673065023079b53e8a50adb9bf3dc6b9b9109b92a5f4319bd08658485b329f8036c885e29126c55848b4357ea827c9870830e930cb0231008639e33181c3b2f2bedfcee0b333d0310079289079d96704cfa72f5a9dc23db5c5e36d9e1e0801b20be46afeb38a23320302047c435bb50067306502307768fd79fa976dc56ed48c2fbd9c4fa1a2ce89131af33ab35f0086769745034811a7d0e776ae89977dbba7470b4a37f5023100def296fb3f21980a45005b3db3f993260b66c487aa70279b11b903fe8c53066e0d6c55f5ef52cfa4dedbf69e6ffd3e1f0302047c435bb50066306402307a34875ca53ca3aec39766390da8a2337a88fb5fa00f8fb64b1bbb465f0f0e78d035fd6cc9809b405b090f1179148ecd0230515f2b41fb0601e312351d9117aab8217c20ddb5bef2daaf558d37b7689fc7f995d4deb588e9d6bf731d23a4e88e41a50302047c435bb500683066023100baac3ccc6177f2ea315a5a6051aeba2697c9455f1299db38c783768a3e5fde83ecb839e3c35b64d4d8d585464dc2db3a023100a1d402fd57495121a8cde7d36d00fb5e8ed4050111422e860322974a5a3d237a5b8db759efc51a0dfd7f4c5c05b404600302047c435bb50066306402301374fd58926c4fa3f20c5335fad245f2ebb0d6d8c3695eeb0689d114b595a5275475adad607786a844796169b574ffa602305bcaba3a4d5c9d92654e5d3b51b6d990fe006edb9d45afb5b62c77021efc0ff6bcd19f06660e6e28423616f672d4c27c0302047c435bb500663064023067da900cb66ea4580613ccb78766b929edf419f95afd66543e6b2f97fb6e2bba513504a2caeb55f7070b6766bb5f979b0230096d574a2f5ba37ef0ce9efb098741ff3724805ddd575821f89e84520be5e8fd6ee65307ab59f0e3b56de108a18ffa280302047c435bb500683066023100c86c219536bd9c79e06cb98f1b07249dd1d7fbde65aeef426568788f923b5e5ddcbc35b07bb2a482f2192face13a3d05023100e7c33f4f6d168f6678b15c764cd3678b3adae8fb366622960099831f83300d08dae30a400482ca35b7f0e3e05ce3076b0302047c435bb500673065023100d9a2ebb0618996065ebc85cfbaf1295c68c6bf49aca931aa32dc72069d5a7254cb8e407f6198a33a5667f1b3d5751f3c0230784bbddbd0614f159541bdf50f9ebb5c67a5a97c53caca5d75b9e771839990f3c29c3c5e2fd89788aafca41c530c12430302047c435bb50066306402307aa83921539cf12cb0bcec9c03198ed84ca26dac026e552ddfb60e14751ed908cfdb2e9bb2bdaeb831fd6b21369844bb0230548cb58cb2e37dda82738812f8bdba3fad184f75b28967ccc6cbb6e0f59aa2aba25b7695dd95cbdfdf8b8f76835cc8ea0302047c435bb500663064023034fd743a129d6b52de1ac8b7e4103e2be8ac11d683fc0a588386b899641b77e6f9d8096ecd29624ad29f612daea1a2f90230144208fb1c277f724d2c248ff0bfb5922d0eb2cc6be6579127ccc25f74d21108c6f092dcce60eb5a764e2d5fe483fbb10302047c435bb500683066023100e49254ddfaa4c1ff3b7d4ec864f54dbc5c1def635985820d86d6b237e2d911443aa37ddbe0a7e6d2c47336c0e268f783023100c40003f4de2bb4afc681647e2a054bd9522028dae23aa61ad6739292533da44455f5d79737bff6e776101290ae1af0680302047c435bb5006730650230494327540ae7d0ac5298b40747f4ae9dd50ce58f8f7aa66109076fe30c02a6a3c81149c8011907f133208b00304ecfdf023100e8c26f38ffc193a5648ca5f23ca170eecf4d6b7eb2f0d3fb7b429a6318483c797bd9782f344d8313e284b5983310b15a0302047c435bb500663064023032ebff8a1e5c75a3f6054330b4413f2d638596032e06ce2813d1f7b73b133af3a6dad3f53e82a7b24c3f762b1cef38a20230290af76d10ef5485b7b3cea3f8b14b21e528e6ccc4925d3103d6d1bf39a914e733db2ea925923a878a2b757512171ca40302047c435bb5006830660231008d849957e819945769a85b210f3fb0f6eac90051f638ca34391247f23bac2401772e7ed7c1f19828c76902115b16827c02310087b5e7e0193234ae56d219d5dadc3a9a459f610a022b6295842929e298ef600afebb9bfd44dd9ae4758af303348e5d6b0302047c435bb500683066023100aecda09279d8abb0f41a6d9a83cecd778ed3ee18287fedd206b425b2daa31b648e784aedf3df718e430da462d62e2476023100d058fd6d580954128608dac9d087fc787e58046e48a5aa29180ffc85c9fed74290b90c785a474361fa137adbbbf16e430302047c435bb5006730650230706b55eae4aebdec48be16346b7a78791a31dd2a1e459e97b167e238f740a89c0a4198af588b531cced934c1f03a4cea023100b93dd16e415cbeb952768804f1ad8875bbf9ada5e0b70d961f766a79fd9266145690430439e677ac67f7df36937921ac0302047c435bb500673065023019adadb11af8c327e83b6794067544b9564134b92aa34a243d7db2a4172663fe72fe8424e016809bdb63d3a5c9d98eba023100aea445d84d25d1528dde5e9a2c9251d77f62f2de89021fd168d8ed514bafb5ef7d637fd214ae1c1476ae47efea2a5a990302047c435bb5006730650230081786d0292dd230128cc77ee154bc6d5370a13140877e3bfef8399ad42bf8ccb3d9be08b5e0e2fdc9523207090212bd0231008406c8d0b9a3915430b768ecfa72e629c3410040a20b257927fdc7e68b14a1e535df7fe2a1bcc1bb87106001dbf5c95d0302047c435bb500663064023053f53eaab3d6f23e126d42fe8d456e0540654adc33dd64318d3a7fc3bb928730d95d7b27fb6f5493d688d936a338fb4f023011e752398889883d18f989764ba5cb385282737fa1f157e788e28adbe672c71aad32431d06208580b6cf51e7afc50c160302047c435bb500663064023038a07dd43a6f7a714e8c483c5b4b2843cd4ef1fdfacb6d956ff57c4bc7b56f90e6a676f31784bd6b81dae7344140561c023041b330443e9ae7ff273f2e3cc12ca8b4d75ee2bca39b2bb0a545a29fd848b6613050bfd5287e915c54fc16ac674154420302047c435bb500683066023100b0d6d4304fcca15ba307fb11dfaf9bdff04e32ede2743c20ae236083e34e4603a2ebecc84dcee5e994d53460981d116f023100a0818c0f2753c7ba30712665ac918be5d768b6308da38b71fb92aee28be5ddb31f020c2faafceeff5807799ca1e73df80302047c435bb500683066023100edf28de44ed7aa7dd66adb3e7b618439363736bf12b27e0d7ce7537231d680d3bb212ce568a77f1a03c6604ac9a1df38023100fcc6b0093cb4b87bf00d434da52008db4396e6299ec077f3d170d361d396f75ef75743b1d2d5e3766cabe39eff86ed960302047c435bb500683066023100ace036b0f7fca4dbdaa67762844825a3c329366a373b5e500ef79c7824a320d98cd181040c324874d79db160250108ea023100c8e5a0ed3d79354adb474c00586ff1cbe9018826bbc00bf9bddab3c22a1ad9808f63ee1c3e6dc6dd21c3d8858f4c9ef90302047c435bb500683066023100c202080206d66b9d0fafca4da868aed9ccefc6944d13c91290f2aa3de031b66ba34f3c217d58e5634658cbbd77125207023100d5594313bf05ff8b7d3079f3d55b5e40bdf9897e3a797d7aa565ab045068b4ec070658085397729a16d6465ff28a853a0302047c435bb50066306402304fe15328b2c475e742ab982804292fd750c80e69b6edf4db3582262d168bf0a79796b3a20e0e0947e9234f1559e57ef802303728ff2be0c3acff1873b2632dd61ad8743292ee3c3a029e99541838d07752285b71878e1911d5d21b3cf9e03e8d604b0302047c435bb500673065023100ce63c607003801cae81bed6e0930fa333cc0b1ce17f923e371c810cf1678fa00de61c5d1b08f5057f38d5f10c9dab695023024d46745cd6c1efe1c33c5b724097de18242bd9d7c52275d00d171f3fa63ed1adcef94351f64b1f5473dac9d663e6c5e0302047c435bb500683066023100c698838592e2ebb274e7861558f17b05dc75b0c881ddac3f1e3c10c70aaafe3a317b119b0e6ea88220e0e7cd2a865f89023100c52c59b644277e3b5b1cceef3b8152072684d50e6cad6ef460b52630aa1b0c5dbad406af65b4fa0e3bc269535e2bfab30302047c435bb500663064023062ab4ff93f6fafd246465fbc8a89127ade210be2efbf0d57ddc9fbb4bf08cdededc84d4b77b494785c11375f360d9ea102304dd2bcab1c4ef93db64587cc2a6f52084b1b73a2a28e6280fdc2da3cbbe1ddef745e4f132d7850ce3cc92e19c3e4dac00302047c435bb5006730650231008e2246b8a4aa9d051247b8fac4412673a3867a05cba354430ed947aa8ffd800331dfbbe1e12536b1e2521909e2893f970230134eff4a7a3c80460a914aced4a9809d0e4a4e267bb5ba096d2ad13501c14896ee5540abee276e637675d6cce9d9e8650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230767e8ad277a826dea324877454b5d13396cc715999b7e9cb3424b59f042409d21e1589e5c680a1bf87334a96633a852e023010e02cc196eb15fd56b6d57e6192d83d58e622cf90c5bd49b4e76a62316e8b500f564ec404d915a0426e83621e324ff30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a16a097655028047f213e3138115abcc0d8e51bc828139b9b112a42d39fa591a44c8f680302bec0872a0e7ca8772f0d2023100d784c4f365e0b1b5e4749dd6d084c5e564e8f7013a541d1ccdb57853918816713c72c1129b6d75540d4368b3c6227aec0302047c435bb500663064023078ea54d8b47f513df43c02293d03d6ee4fac053364c68444431b96886fdd29f1333eb848e69ea7445eb4bf16bf549cf702303ab063d42406652e0cd12121485854fd6b4b57b530c839b2e98a5996c26b18a7d0b6a295eea04ec49488e997083a81e50302047c435bb500673065023100c1378ded738371f74c111f23eb65f33873b3c7fe1df83408a4b28bfeae1b4fb5c7a3226e7fc85b66bc921085947a0f7102303fad4533357b4aa79cf6e139d705c7d6c5db5043eec9bc4709e7f57e161d1806cd354b33dbec93b6b93e81615856bb070302047c435bb50067306502304cb1ad4f47be245016d320f6d2e9cbd7e1d748d3988b7c940957747a0263b7f26c405b153432da88a075f5040899e514023100f2b6d36e3841930caddcf565d295fb40786d68b3d9ff17d0a886c0e70a45fd6d79eeecb038eb177fa9b568fa826f11240302047c435bb500673065023100b97c38f4086f79456ac50c937711fab164ed2b0b107eb0fd1ff443fb8504fefb46dd89d69a71921f7b9ac0ddf05dfcd202305e819eaa7e7817adff332eb4b852c9f690199b93ab4dcd16bdb88003968b43b5a3a6b50d3185be611eb7f352a4af544e0302047c435bb500663064023047e1b5aaf7e65a3004b340d4dc288f9137273f7ec7ad0de0620b622db95368b80ce0e60f2fb7a4f673646da5ce4dabc0023071c77728105fceee2d07a97a19593a7781e27b966f387647052c43eb4c064874659d43a056a3adcaee809a63a49310930302047c435bb500673065023100b10432fc416d0acdc08a6290a91b5bd5aaf0fee10889d45e0051e7f87a43ce2d549fffa561c2d1e07f1ca99583729a9902306dee554dfae1378b2919b97a2bb2d0f06e20621640bf5961c9864489b3c7888af3210a37d87b74205288bae77c874d360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b1d8c06e35f45cdd985ce3468dd3ea3519e776f7ff8b1a75629b6259fe7815f9126543dc7218acd6494345ae2b598a5902301d9a1d79b02a2c36886af41b5c3a3b75484b8471125ca13a08f479c29db66cb3ecc0d75ea2fdf8c55da717e1ea7c042c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e22b300b5a69354469682fe54f597dcabe9eefbdbdd27bd8966c58bc55aff20dd4aa08ab82cbfe9923ab88abd119f0c50231008b47fe23f338579271f01d4c24c22f91647635a68e06a9e4903a71189f5fac5611398a71c83a8564093f11fc63fafa8b0302047c435bb5006830660231009b3f1e83ab2e04819eb07cad0209e23c468f00767ba03c68ead16825788be6bb6b2bd3cf40e3c7b1d3299ffb0f9a598e023100c4eb00227e0441433cccbb7175a214c88f65fdd5720e5ef91281171285000479d6fbca948d1d7f275e816d38efaa7dca0302047c435bb5006730650230643b93f51757e605f349d5d17aa03fd2ad82e5541735868ef534eb9d4ff13ab44e51d08f919a9414ac6ff219815e9ace023100e535885f52556d02a8e6b2643e3cd08de1ba87d0eb0b6d12c0952bf25aeaa03f446e8ed7c221f748bfe27bd90f35ea060302047c435bb500673065023003d1ec7ac7fbf39e2c949b0562b165a29d578b2761e6b43af9ad1e2e95a72d802782ec3336781a98dd58f575beb1710a023100e39fe653d7f85e15e53160e7e0c939aa6feb142ef32d1467de4d91689e22764dfe58c87ab7a4e04c67ccf85c44b1e40c0302047c435bb500673065023044da3ae8fe25a58530a9e10ca54db150bde49457fef1512300a4cc3141b6f90972205717f6b5d7737d704e006c2e6cf2023100cb79288efeedeeb09eea5e7f0f9f419fb805b50322ef7633446b8d7177a01da0a576d7717ee03c80865b451118ab36ca0302047c435bb500673065023011c14b496d56201aba050a6872de99a46b9f3032a9a831882c23e84f491c53c443fc0137c7b200e12d42f46dea381787023100c6a4ff353cb8cc28642c98a0bf8812253c2f0374d7c386d623a96861665c3244be2e420103583f574b88e16b99fec5640302047c435bb50066306402303f30806274dee924d6c2205ba8851302953c678eefb77e58a7bd37a6cacd42160ae39561d96f4cf23b915898225a5ab40230456265a9120c94ca90fd37e51f458e2ea5f2da9f35b89754c3f9e865999de1c42f59a7cd203e662b68de5f5deccf33cd0302047c435bb500673065023078e844730a483b18f41bcfdfbb25cbc00960c7a3964723eb5e0fda3c7f75cdb257e1a87e82386aebd01b6e0b6ba282060231009835d94647f49679d72e7daad5c49678416e41f53efa0d9cbbbafc8b4d1c7678aebdeb4077094072d32e5d4796526b510302047c435bb500683066023100be10c724a1f9a9ada6e2566a962051237a126c3ece96a4cb5eadf71039d0c29173db6e67aa63125ca579c7237d30c1e0023100e543c087c6b6ebb401d087e3245c7b68c2e78dbf39bf57082f2f5857aeb6ed72ebc7b7087f1407fad82f19660f5aa88e0302047c435bb500673065023100a2ca78766e58d4f2bcef58c5b20a867684c938290bbfaf12d93b025f6a0abb6fbe54540d218c4b3605b43c28d44d1e50023070ca6f1783e5f0090a7ee4dd13fbd82ec4eaccd886647d07b716f805b77e995ba2eac2001d589bf2ada1e63308f64efc0302047c435bb500673065023010f143edeabf14929812eea35eaf6d9c828fd15e90aa082fcf183948d18c75ed325a0e694c2323ac9f70a85bbdc0f552023100aa5a197722f003a20dc1971963eda68e2674d032ed92ea27f4b3730e6ee0b73bbc355988b437bd1bbf49d57f183f757c0302047c435bb500683066023100adfd111bdb267b85cb7e1d37c2c397e1adc30e58fc64fbf02017fa78e5f6c04be0e6bb4f917cd43404a000305891935b023100c82f95a56bb2d6e8f1471b90ac99682f7dd1d2f411c8187c887e75492e653bbff8185d9b3337becab1c35b770d62b5860302047c435bb500673065023100bfc276038f9812466a38e92a399054e673f3e75d18689cc11c02c981ae34055b591b1c559df522f1ab14de3858c929c0023033496c8fe21f230f3077ecaacecb3878f13026cc696cece91a938348515d17e7d4ba0de14743e39bc336d36fc9359b550302047c435bb500673065023100da49f1ca5a67f2c7c3a1e3c4a1820570c558d265af7cbe04662f39c5b2ecfeb65aa1a22e62720c4bd7c39edaf2988ca502304d5c714089a282e5e583e47ceaeda7c8613ee22f75d28bb9440488e1f13220c8aa31bf8bd19fd6a75b0bae8f995fdbe50302047c435bb50067306502305252cdf4d795026eda8dbac1cdce28fe2d556fa4a2bce9d19e8d326b212274c3ae6736b228397c58cff65d4b82d9542a0231008ccea007f039595f7bc3afcfcb99bc00e46041b276c0687ee4bfbb62d68568111f2b9d46d7d950408bd4c57a9777302a0302047c435bb5006630640230527b7c8f2faf1dda8211ca39a05446568eb571354046ace9c097c647aa983fdb59dd7a987016a2f4b2229f92caa33fb702303d9e355ad2371a3637e79658a2328b1a39f3bec316366be9ada8743aa9faf0f31e46bdc136eca38aa6c8f69c9b3b5a430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230782c5a0532cc30ce8be8c4ae8a46fc92db232fad85341f239a5cb5d03debe56d5adbc76ebf1c08fd45d2f046bd878c7a02304ed32f28c2f77fa13dd78bcef0ae9f63824f1aaf0c47b85fd1182dc2e107ec38e6b629241dde0be5a9957459a3f251a50302047c435bb500673065023100d655054d2879f2b4ec1f2f7732d92972a0c3f30a1b49616959a2a2ece8de40b2bf387e8648676533a7b3db5de81724a4023066c9aa5d066191476c684e69efff5c62edcf90c4b6e8b21fc8b3bfeeb58f165db5382dc2f354b62af5b954529b3644990302047c435bb500673065023100ab04f82bae05020da9231fa4a728066db35c37a704d6b103c52d0df52e17df9e388a8ea62bb9966e20603df8689b4955023066cdf8ab8bffafbcaf5477b0aecf0b7a97a5acbab50390d52fe29f896579a7cc505e6f080ac3947b203fa48c40ff5ada0302047c435bb500683066023100e7c8b6cbf63e987d87e77d7930ebbcaadf79b4d1f6c08f434526e0391aa2284cb9754112ac931f60a40bee0b016b7047023100e95f06d767efd6d6c4e59d69b47b1dec4dd0dee1bcbce62875fe4849bdcb05eb63fb4022870e668f4a1924d2e3a1d9b10302047c435bb5006730650230378aee4fdee2963d5ee3226d3c16a2e498071d022c03c2b6e6d3f37db3c5b5c1052921407a652ce15f33f0ac5296409a02310086aa17d959d6632ea72ab94aaa07fb2c6d577169a2c6b5f14ea0110bb4ba854fddc390b3a30cdf31279525038fd2641c0302047c435bb5006830660231008025c30ee8ae011c3baac456e3ad2dd3b5be0b38a01b38d006f2271ca72ba4aa4dd55f1ac8d9a889f46be6771c9ea7e80231008fd3c21949089e4da4118e55276b064761e2044828db91c0bce95e71c3a7b92a0eb637b1a1d874d73f75f329b1bd68be0302047c435bb5006730650230143829c1390eb8d120e40726ed257dc3403107a9c26768435e9054762e13b05802d42a7c536f653000e9851ae70e5cb8023100a63f47ccbe2d2c9922477690165f2f50ad460492ca4aa23bb6ff2bc98d76ef940e7161b82106549135ace33d2f89b3350302047c435bb50066306402302cb3b2951ce69454e5a7d3e90a426b7c8f9bcb55e3808cee7d889c500c03e0c0949adc81e145edbb6eaa71eca6546324023037e9dbbd90f7190ce667d793d331fdee3163d903f4eeb15e77668e24e184ebd47e82647d2f71cd1e94754c82b8fe58ed0302047c435bb5006730650231008ca40e9e28c5696d6dd74d37c841d832e6ec468ce452ada6be25d85b6bca63f50b1049967629a4bdf5369ae826851b1b023056697737ef9db21061b8da9712055cea9dfb25a493e8a2c7fe0ee85b331ce142b169d281a534acb96bef31613d20d1de0302047c435bb500673065023100b05665e395105ac04039bb6c293c18c9a313ff10efcc9dd995e088bf723b4f90ff61778d98369aa46791c41726dee1200230532f4febb909f727b12b67617e5e3924d757779ae42728481a0426165c68b6eb41a430bf73b1dbbb131b672e34fe30230302047c435bb500673065023100b28534ecd4a39a4a1c90e16ba5223cc172a0799ee6f01a73cbf54a27354db5eb055be4c04ee497f85751a5a4967162a302303887ba70fe8e591a0b55fac630dc377a479a254753c78edfb6c42d6d670062a1b8b8fdad9594351014a48eac72ee25ee0302047c435bb500673065023100e47b62cc4d6cb727c188e065e41fa63767f01e267336eb5c190bb7b333bd22ef06e05ee3b7071b94f8aa1b57bd2c940002301d92645417a60bf394d5c1389e6f27db778203d4c8848c07148cde1cc0269a612b83fcd95ab238d7b95092c505928bfd0302047c435bb500683066023100e1a9f0c8ba524d7c193b68d200e11f004804db25b551a4e525feb008e7be7c6896df8278e4e6044e9918fcacf080a92a023100bc1b70a9ad8b88e838745e8f52ba88f8f583c3b63bfe442c0b5bc9745218fa25fd40958336e01b4816402c6fe42ee3a60302047c435bb500673065023057b066cf1a6db1ddbdf9262e7994d87f2dd4aee9b71c5ba323ce495a127ecbdd0b953e26a7f59cd5426fd6da7af054f7023100d2193d20c057bf12b913b2c2c45fefdd0136cd1a6f16dc44b2665de877366ed7a7e95ef10f3bd17cf5dc5b8b078b1bab0302047c435bb50067306502310080b318f2bd967fdf0fde78d070428a83e58cb82ade8a0b8ad27017cfe36a31fa9ec85f97be0cba39e98dc0a2e079cafc023077daa46c299c3457378194ad9f8f792d2eaa411aaf351d32da2cde138f42d88ef9c9a77673219adc5eaafc7aa309f62a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a11a9599e728a4b1ce6647e38929ab4c34ffb78a4cf2b9e237383c251469f821aac883b88ec00e5538660e06653ab0f02310095e56cddf21c6d93789e723ff0402505baa94bfb03025c904fe7e34799f27c023e27dfbd52b275225cd6756bc6c9f8710302047c435bb50067306502306709ab804254edc21bf4f0386753b8b8b79abb573adc3774ab362d002b57261b9ab8bb3107d18d2dafc0174624b38eee0231008003f4ec6da2443f845f08195ec3333ab92dd354a1b676b4bbd8bbf20ed0840cfdff8143878dcabe9c3d819b4792029f0302047c435bb500683066023100e7c43a2bc1f216d8e1b93cbbae747f260f60e370e14bf24560fa2412c32fa7cc96c4849a80c94c314c47ed5f1d279d04023100c365495b98e2a98a828769ba840b0b64ee31c352ef4bf3b2c91cd34958ec710956a5e075111b16fd9b71d21199d16fdd0302047c435bb500683066023100b2b21c37cd05eb07126ee3234e04622f4855362bc0e54df84801799b5e929da45684d765bd7a1f59ff1c41f00e5794a8023100d4353f9ecc3035d97c22f60c0fb7d4c02ed718d4258079caeb77224b61f8299592499b5e4dbb0d021dbfec665ef448f30302047c435bb5006730650230522ccbd66ec16feb97bfce4ccedaf0bc63dac2b3b3daf5176b0bfa824bb524fa09ce72cd4af28267986eea7e902b606e023100d3b9a4f32828cd92f42a9db014b8260899b4e84310ee990f1c63c36af7e706ce06a960f90931f19db354f5de6f442fea0302047c435bb500683066023100cede31b8e8e264e84c409f24e6e9f4d99e52d9d00618f86f3577c02e94c965d21e6a45f6f74e30baf252772682be9933023100dd7c6c6c70b77078b1bedc627642d9320f6689008e998f949794ee129daf2f19158e72045c9c460b4027399430e0bda20302047c435bb500673065023072e4f237ad6a0d9a9c608784ed3f79745dba2fe0720a3b86d01c646e961761673e39f3af8479e115cac8b1ecc9118db3023100fba75ee7d506f335ac6a59b07c75f421c04a305440acea216ee80d82c35044606b8adfeb5af358b68a977fb87e6b04df0302047c435bb500683066023100a80652462119aff84b5e72ed55a99ca8b333cfa8619d47148ea3c769ccf150f0b6be576b616a6c15e71053710e6156d7023100e9ecffb9465d453af28bdac821a85e79130a17e8b71d996dbd216a7cc9ea23dab3c65f8b0b23f141a32cad88a17570910302047c435bb500663064023003c9de6226e148001eab80fc809f9a68400543e6c8642225f9286f806f58634c95ccf7f58de02acd7201b927a5c6d9f202304714bfab74c79ec43f49f89ec8200577c72bed232e0504b58ae28787a72b233c972d452a6cc9d7337a8142fa61482a5b0302047c435bb50066306402307deb6d61a45f3a46af2e2ed1ff022a3af05546f1f614cdcfab979fff3e0b0c37c307c3f3c4928ea7e2904384da75139f023040309ec5b79218c75a04c0398586cb84642e258b22af97d79d30dca501810a02cb4ad52c59abf6becd3a3ad3a60a33870302047c435bb500683066023100e8b6650b18f8f515381dd4773c05452c4e59994057badfcd17473ee7d37d56485d199d7510e82fb6b47fae81f656314d02310098f8638129e3b44aed88acb530b41c3d9e155ec76ab44c5841266842207162d37614e9516a06f80701c0c286856523620302047c435bb500673065023100d37edea2e8cca242c4af6c0ac5965d52344064e23376b70f280e2cb9864a6d9ba76ef001549b279e054a6d1fb93ac9720230680b6890c6c9dd3d3115fd960dba78fc352b8c15e8748826dc04be5f884e17dfd1216388b98e3dd3291b6e81e21ee37f0302047c435bb5006630640230219838e9de70715393b2e96bfcdf32124660c08a9ee37f953cd384a8749a17dc244ab0819f06bcba6fe29ecade8ce6df023056ff49e71af6a1d15c76410c08b7352bfb55f6ca4398dd00f6dd51e1273a3c86023d1b7d99ccc47e6b2e11fac043ac150302047c435bb5006630640230101076d771e8cde1c1c4d288e584b892f3065a57663045e20aee337c5c59523f47a12ad0cabe777ef11b94fc32a11a5f0230703f869003a4957e3e198437b7c086bcd1c2eab9832757e3a730eed184311ff62d42d1f348bcc3769ccc3fe844d4954e0302047c435bb50067306502300ed044bc27a24a9570e243b1fee2af1544c89d2964d9e9b21e66dd096a694f18ee3b0d6274a116183378df05b54b5ec4023100a017935a741c01a11f3a034e5b3b72c8cdffd60221eaac81e6cc26d66ae5a35c8833ddbd8fd449d0ffbbf2998c9c092f0302047c435bb50067306502302f8eb6a9d6bb45e6acd393c786cdf18db4b59bb49370d246cdb4a41fb285adfcd4cbb4fb9140ba76aee8be879f8329880231008cffe4cc8d368c90a91301893e89dbc2e09d6b2e417f70d08ea02068b5b5f242a32f8040e3b0eba62483ea3921a65c8d0302047c435bb500673065023100bea3258b167f32c281de7b1060ee1037210b8d3d8d2b7dba710883db81c2c1ecc58d617f7f3fa6f1d4dc1012d4d139c202301e51c7f3a52723c6952f90a41c185b549f0f857bbad63ab9957c23a6765826b96d42c41b1a3c669bcf1db2f54911bbe70302047c435bb50066306402306e216043530c03e488cd617bce4182c05d57dc9f2c5d5d4fe590854f9604860c7df5f7243e5bb7d9fdd74760f4d9dba802304b84d2a33e4b21339174b1aae1595c32034133cc746e75e09101d582d1d8f3cd9ca82d159d4a218a74c5077fbbea73820302047c435bb500673065023100ba931b830a012d09bd3b582a836948f442407cfbdce6af3b5c27eb79ef98a7963cd228f501fbe338d0f7434f7e296ec602305a8640565b829dbeb796bf371cebf008c7379dae6aae18c828e349f46d278fcd50e70fe0eb30f334aa746b21628ccb300302047c435bb500683066023100aad56dbd498a37e465a964b7763b4efa3637812f7bd8507f9c95a372ecd68c6a62bc3955efd2048e7624640f1f13ef980231008d41e35b661ceb329f579c3caa1af220ca8646ff8c1bb655ed7c46405671001996b201fb38903a5c7823d49c553038a70302047c435bb500673065023100e8f53b0eb4a06c8a13df787e1a8f6d5e6fa58cb3a2674ac91ca7bbcc7b5b4191f1d797110b0c8bb9570313765435c5e9023071870c8b0c84c60c21b2e1f89530f2c96f52cc7a70913cbcda423a054bd4b3f44aafe9ac8e79097505e7649ad8680cc60302047c435bb500683066023100f3a2437ba6101e89f768d593d3859f7c0b676004317abb858723c681ff30af75f4a02c20e58576bc51cd63f6d838fa0f023100cd91c31b6a434b831aa57b64e6285b0a8023f0956a1858ce531f7e660947873f448454f8b116d7715a51225f6c57daeb0302047c435bb50066306402303fe2f9e167a0c9c86ea30de91b0e7d3feb55e6d25c84b1d5ff881a5797e22203dcd3cadb40d493c16ffcfa40ed5f73940230048d6cc9ad5ec44bfc7203a0c6acbebb764e34c94f7f0225c9f7f0ea36fe9d59c2a995485ea93968d4079f58892ac0040302047c435bb500673065023100ee06004f3d8ce56265af68a38ef7e4e6d78412758e16d7641ab4bd513197a8b1ce8cd43fc4fb620a543abce93fee3c3402304f460a764fbb298737a4532d61e1716df23286f9a6cf9b5fd202d9b303c797be2e26939e6649105eb3b6a2b2314028190302047c435bb500663064023032e3e520cad34029fbecadaf59f3574b5d651dc788fca5aa90caca3f35adbe985af244aab26dfb7bb54a53e674eff9fd0230709e4d4601628386e61bbe8415eeb8cc1a8c5bc39163c7e988ac4a269d2e978b97b291a46990fbfc06ad56d165d986370302047c435bb500673065023023634b582592916ccd6a153612088a4bd2a2977b0d8065a771c98c50ba4b62802041c547a366fafebf01c5723257ee4902310098c45c14e0f37e54b9dec37d93c2fbebe30b28bbb1f3af6dc881474c5bcb6d3fdbbd8b3e82846aa31c50874a963e2a820302047c435bb500673065023100b67b77c288a64be1a7b259595c615be9ceeb40824f9934b802e6b38c69dfcd91452ee20bf37ab4e16152c23b4e9e4607023011bc2db53cfb36d5194a59afd1865356855057061ace732506848e1a46c9fc639e49c3aaf282ab5b7468d192035c57860302047c435bb5006830660231009f4e7b4f214eaac4648e1c66a8cacb8b8b9cfaf306744c1c27396be7fef81e84687770a79019c61802bf6315ba42e77402310096555bc9719c1f7248f669db52fb2ff504709d9cedbf88af1a5c7eab2a0c22cc9ea59917a50090e2e25c7d750dcdbf510302047c435bb500673065023100fa22068beaa023382c4c55cc7e0318c75e0c95965e5baca1d5467c8345b541860547e57f8e42cb223b74f7c75a1e30e7023058b6efb6dbc0d4eb8349c441f662e44f4865e0f0aa7f29ca72592588b27f2c2b316c72816516214ef6301c6604fc4dfb0302047c435bb5006730650231009fd784efd2c6ac24bf806fe79f2e8ad43bb17e380941cfb3bd7dc76dbeacb0ca988acde59f22f63355a08308384609d802302ad28525d8ee137df14fc820e0fac6cf5fdce64a0df6797b862cd5d4dca3ce85835e8be26cbe7edb8ff975ceaf9f88210302047c435bb50066306402303fc7b7b37d9f6205e898460ca547b3eb671fd8736c83847eca6118b2a754b1f9cb3e06f2d2801e84e1c61d9574f56582023001621335b739df95d8b3732f2579f6287895ae6972ea5f4a216e573a9fa5bd1e7547036ffb7ec6429504387fa61bebdf0302047c435bb50067306502306cf86b1a637bcd08f60b715e73d78770c420c7538438b7a9a813b3c2a559efdf59960ceaec07d84ef089f96ef1b9b79a023100f137b5517d49cdd0113e307a7d3fc4155b8cb206436a52f7158ceeef44b9cdd06af5d1979c5a425705026f3a058628c90302047c435bb500673065023010587353bc5abcd6150d38953dc47e0e5b2cee9a6bb29a98579baa352dc97181f0ca309c1269ae9662c1e4ad861591c1023100a97cb5dc78fab883d5f30c83705aaa97b2bb4c39f2eecee57f35ef9a189ba38fcf458e9b538ba2176b07c92a0c4d83220302047c435bb500673065023100ead1cc3c16eb6c386f030390ee37eeedd3dcd8f18b70366e2462301804d9ea71bd1cf5f198630b6c6515646748fb7c7e023070e44723212fc34f4e7615323f2e94819243d422fa6533eddbbdef2b4be2eea77a7950ab15f9dfd29bc5732751ba9a810302047c435bb5006630640230412ee72f88c1e6900d91a0023a1fa43da01383cc11226fd5b840cbd27eda53829ea67a350be636ee518071498e83cd2c02301b028fedfb3a923d3f53de450a5deb9c9e854a2824983e26e2df0c831826c2b4d102ebc8b3aa442bf404c607dfe241920302047c435bb500683066023100a9d485c74cbdd5fdb91fe60a6ebdb2a9842ca0eb623654fb7de5310bad1b4d4081ee1197933d151c5fc4a0ec30567deb023100826ff962373fae34937fc1d67aae3c30dc3d1fb23d36ca74287e6f8e17dd321b94970e182b7eb92b9319aa3830011fa30302047c435bb500683066023100f61111afa1b404481f7d9ac6516c41bf4121c858484083a3e87582a9a5524adbee3ca59e07ae08d7656ef0fc11970ca3023100e8c704cb477885fc09f3afe15212c4413bbfc3c20e74c1da703e07fd6ff7c53ce9305660c19639709313fb656b5e6f960302047c435bb50068306602310088043a149708d24211fae03b4c329ece0d7d2a1f89d730cdd35b79d6be1516f8c1609594f05f6e9174f4d3a522f5e602023100802a12ea4168efc6264f7327951e37b2214260e814ed6df4f180aee67bedbdfe8adf308b733baf9cdd6d1664f89232cf0302047c435bb500673065023100aecd1426eb1aa0b2d8fa3d978ff3130a2df356ac6f25e3dd2d82b032ea2bf8f188a9a23683b8e9c0d06804200e128e0a02303a64157647953a084dc80f62f6ef62f9eb06dfe4c5b0c63bd7d4a11e8f7bec33e3b4a026937648138cd6e77e7e56db9f0302047c435bb500673065023100cad157fe786b00136a60442d46b669b655865209c7aa040c4f347f448a38fc766a80d02c60b374556a905ce97d1049ef02306edf5479b43f8cbb114c3b65b48b32b9f092e5d34e281f4ba61f3426acc00ff39b1e335d35876b8c810ca288035af1660302047c435bb50067306502305db4512a0d602bf87982715c73bf76373e79c061ff0f68569dae8084f1a94b2200f08ea04a296b73ab2b64808b1f11a3023100a545218e34c21af70cc3c72aab18f8e7b5f07047de46385e907d929d70245cdc6cbffc022ee8d250b9a7753ea5caf12c0302047c435bb50067306502310090f28ceeaf02de655bfe0579090fbcd574017fe8ea676382152998464a23d0d3d5d36786f071af6888a2323fd77ca769023061df6b06b5a91ad687a338c53b0656200748ba09d9a5242ff54a188fb15635dfd27654064821f3e9ada3fe4abbe47daf0302047c435bb500683066023100df3da5a06973b796270901546de7894079b379ab570934277d3f327ca76e8bacf32aefcaf40af1912f4dd6f34ffcf4420231008c2af7b80ac98a1ecb9b5110a45afe4b2cb1a2fd6132a8369d4f60308a0402915c74450b726b57b660d8a598340de14d0302047c435bb50066306402301d29593585b53593012558781ef45d1c28028ab79d2e61d61079f908079b3f415634b096f918abf960da52aeeb91b559023042fbbf122b3c2863fd312d392827048984ddb08c0af41bb46a08ef80c927ef0097faaa936a94fe8aaae252c2907b207a0302047c435bb500683066023100fdeac68d85007b4e7b2d64e15ff3d99cf4eead91d4e25b918c0aacb9b07a699fd2c2bb012b0758bbf31cd5bc5a0898e8023100b0b23df106c1bb3fe7695b3fd5da48682b9a68cab52345bb5316bd49d23e227649bd5f4946a445b18a26b27fb96dc4c70302047c435bb50068306602310099d1222b48006ce404e7f4ce837c8675e8a5956be833afb00fe64a84c3e75f71022a7a96706dc3adbd5aae1d8ec83096023100882ce6bb224d79289d51fc02b7d182746619b92be5cf94945b91aede7a9fa4bd1e56d4a422c8fdaec5447b0ce3a561490302047c435bb500683066023100e8a411e49ac596a42c290182cb847e3d2d5d17d943356f62bccae4c43c51ef724448f924a02882dd4fc98264fec02da4023100d201ae8bcd636ec99c92743afda899a0c124c98aee26e141777fb83638dac9339a7e458cc2e030c72dca10a6105592d80302047c435bb50066306402302ef4fa4d2e870b5815200d1ef96089786ca347b614b4d0090a86af187482c4c5ed2b30a39175e5ca35b8561c8ffaea40023014822a18f4fabb6e8a8d30264b2aab5f4216f72079a95c5ac3bcb917623e4eda460eec77290c2806d3ceb2e746f4b2f40302047c435bb50067306502302f8f163aa39e36da6a38702add841e30336548bc8058c1cd0e6cfc4fe3d7a9f20f52a76a5fd0fac1a63cdca72b74eda9023100dec877ae8940c94df31d72710f76ab01e5b22875a82bd32cdff675731a525df3656eb8265f7dbc1de0c52d6c16b5d35a0302047c435bb500673065023100cf79a3139b19934b41aacd4f80059e3438b2ea5b603ee1c028fe2be10ce0749f386311b83d1fa561f3acabb717914d1e023023593b9d56599db1ffe27ed1a360cc30dc40c60adffae70eeb80bfb7a3cf33d2c909e3d49643f6128d531fbf6c75ab9a0302047c435bb500673065023050cec17240139af099d6a1a78e7c6ecc616874921208b3496f9e79c9988597aff0d40291956ad78fcc18ff6ecd7685bb023100d6938b8d81b5a6e4851fac420cce7a4da16a8afeec00f6c91d7851345982563f3193d1a7bc9153429b0318c48207289f0302047c435bb500663064023035c142d0f6bd923fcef41ee4f0047098a4eba4877693d40282f0af9917566bc75bb4924526a8389428fe5490128dcb2702301c73db34bce7eb52388e3d19613977170aed21332e53c21414ecc4dd710ccbe63974a4d45c1a4b09f0ec8abe259d0d020302047c435bb500683066023100e74021786d2392508590816ce29552d7d89caa5ccfa41fc0ca2d8ee5e64a2b8c1b36003bbed4d3743afa2ec2de5f7083023100c8bdc477ce2acfba1b26fd2e327d5f4763006d76ae2b83748e1b41d09cedad9d3c367e983f7a9a825e8891b466fb1bac0302047c435bb500673065023100fc843c981b75ac255e4b89b052d2cb8fb59301730a45803a9e7c7b6859e6f5c8b0333d725d59b596aa5f285625201de802304c36fac1112894bbfd8175214b29f0a313be329aaaa2a83074a2129dca3c921bac5248430032ecba98190c89d681e5de0302047c435bb500683066023100d68bfb3d056856944a920dbbedc1d1da0899cf62bb08b1969301a92004f89cc51d987573effa078298d2df37786955d9023100bea172178d50f1c009cb90152fb168e4496728be9a262237c49822a065e2833b3845c162c831565e699260a44c8467d20302047c435bb50068306602310085c928fbcd8c82e3b4d85d090a27cd33547b066fb6842fa11ca1b68c4ba75406c8d298704a36108e3e244e1fd49ff72f023100b757aeddcfbbeef7da0fae0b57dd5d5eb43c5a7f53fb92c8a74581084e843e1cb02f1e68d6fa9242762d0dbd556d91d70302047c435bb500673065023100dbbd4055b3044844ad8785c1037a811b5e198db9f98680d3999857db39b88b74b0b055e1c130e73d8d4800746e05d8ac023071e6a16696520d027501c5eb3020436d3c5c799c562be1189af7bdcf3933686eacfc82c0c4b2b2e69ecf792b553ea9010302047c435bb500673065023100d93f3ae20a5f400e38b775e35a7c1f036f2f28bed78b5c4beaad8f055be1f8c92a18ef5a742f1a72f1867e614e1ef3c0023060489fc483fbe5ccd6745c12e3024445f28b708250578772539201a244e959cf2f07496421a2ce48f1979b35e8f1d93d0302047c435bb5006630640230586afe0e2f0622191e2d53f7b11a87dd8d39c1289d13a4b86eff91e6c2db88fd327374631a5cf6dd334e079e83d39a20023073840042f08d7b066cf7fa0251d565ba3a318f61dd1f911b1da42ef994b01d6d3afa8907cb2407f6fc3bcc90b689fda70302047c435bb5006730650230744d8b144f2a43eb14a8ce9242ea5246e113cdc08c17f0507f05d7fb23a89d4b0790db91203788d194481c0a0b68b8bb023100b42a37cccd3d975658d87a7bb28438cd4422a9d96d11be0f748b9c0661cd3d7e2e63eb9837a63717c2bab41e1b1f73670302047c435bb500663064023039c3fc07db50c8102ce251d1571febd9463091a618d96ad5f31757375580175fa28314f614753407c4c0c6965ea90c82023017be4dddf015f4bb30218e9e63b24a8eac35cca8947849a592796cb56f94811630b3703a99bac675af11517f0b97c3640302047c435bb500673065023024f40d057549e94faaef29ceb6008837bd43b16fb2ef0a7a80030e4ac69417e2f63840f1d4599dbbb9be0e9733806b0f0231008e03e1d08f47dad401d875b5fdeee5df686f5f61bdfc3b9f735922c50d6ee54b6be8d9a6bf435764e88fd4fe858f00fe0302047c435bb500673065023100b9c72aaefbaf8528d462a0e2a2a9af791e94d37f05d21782375ab5b379636cd38f09633e76eba67e5dcbfca16a731e0e02300cf70309d621418039dcbd959ecaf1d3278ebdd822963ea344cd060ed8f1df8e4a47f3c8e974171263498bc0a68bc1c20302047c435bb500683066023100b2e9d1145f6279503eb6e3c33086cc87b76039b02b7b2811ad24db012040d98657da0fe263ff970ea069ce5d6b45467b023100a82a4a5320e77af464b0dcb0fea58a326ca0de79eaa72e3fe0b7485d407e78b467e45da7f9ef07440bafaf2913ac73530302047c435bb500673065023100fe6453aad77699721ee1a0ed53749cf37ab88e6247a3a7b3dbd70cff16044ee26e439f56b806bcfcde58a0482146437a0230742829d58ef8564289590d5c813ec93fcc5e603ef819397f320fa1499c38bef341b2d86c9cf826433708226a7ea2452c0302047c435bb50067306502306fbb928372544c6a9d4b0790080d2b87d203948a6d8eab93a43edfb44471785c23ce18f63ac031fd5a9bd7fcd072d16202310097d440f37c1dba7f014871b41ec5075806cc66d32913fa4c92fce3199729e2c81e91f5c0605a43211a4f94ae70d0301e0302047c435bb500673065023100a69a7d7bd2839ee646b565a2b6be73a243608a239d8cded182eed0beb41dec24a99738194160923a97a7c9ac103e1224023025bba9600e42e32a8d180c3353638b461f3a886547c196efd5369cff1e035ffc4ecb218c55ebbd6ea8331d36c9d4c4990302047c435bb500683066023100e3ff05496c3a11e6e15b3b764496a156f7ccf2fba45017fda99e9f9f4162e8b4a768c85e4437f4f8fbce97e7d52e5bcb023100cf6bb6497bad2721d8994b812bc7afffe4e825d7ed2eb5d37e763c7dc3522115a73555e319ffcb75c807011ae34df3790302047c435bb50067306502310085ed4366e69f48330c682cf929ae6b30edd524d99960cf244bc1ee846dda2f2389cb81850daf0553d8b5e828a99f288802305cc96994e374b5f39dbd7a7b8f4ebd8061cf134bde3fb8fc4d4ef9249b64a08d6d274bd273f9a44b807d03d9f6fb04b80302047c435bb5006730650231009b5adb75ce199a0c8c5ee98d4ee55e1ad1ccf7a68dfa9baeda0b783cf3feb82c0f9292735f44718e9ecef67acbc90c4602300a4cedb6098e767862e0768157f570ea55480825f27f0af298ad02a967e589f1284cc294ad8c49e13dcd745ea6c1329e0302047c435bb500673065023100f0333652e80ef01f5336064e2f9ecfc4ed5c4c9346f371280a727d08170fff8e9c9af8da3c3ab79e1bb5baebef5473ef02303488e005054cea7f8233990786b376b31c030d19c9d20ec6faad3b88ea1a7ba499b782de56b5b2f96996b909c288c2a80302047c435bb50067306502305fe01e25ffcb5886dd186d48554ded92e79f984fdb5ccdcd83da0290d2988f1608e53a574d85b4321bf97fd4f946633c023100ae8482d6e8d145fa239c0be38a5e3381afad6aa71fcee922698684f0368531978db51600c2434b92a992c095c979c5420302047c435bb5006830660231008c8dc7ac0e966ee2e46f19e42d1c65a66a8955ee75a87213858120e9272392fd05ba35492dcf0bd463e4a462e3617dca023100b8ec25ff4830be4c16307e3efb4097ebcf33379dbb40f0e164338bd62feb8ce2190458a716a50e9b0fb218954289777c0302047c435bb500673065023029472ed4bf0bc1f522726d9f7498a64beb08698d17431dc8ac948bf05734f64683e5c830e0dfb5a6ccaf5c3fe6542c1c023100af10ae76b9173e8a8705bd80210d5078c0584be60deaeda79c573fa04b4969060de2365d1e85cf2e630c5d614f9f79d50302047c435bb5006730650231009075c21f34a42d80e14e1cb38014e698bf997b51aed5dd89f4ca98825d169a61b5faefd11c2a45ff37f8671e2746683e02305e0ae850f61a02770cc2fb337bb24d3b81cd005921be539f483c65b025b13d0807495f9f94a31543cce0cbf9d42d11640302047c435bb50066306402307afa8485a040e04aed6cfbff201494cc3f703a89bc99c27c313830be8eb6994df7c0775f2102b54fda35f8780a05740f023064353bb899576ef9d5230df8ad2825a9156a4916ef9b820fad60d42d492f3cf7aa49500ae987e4ae82eb26bf55c375970302047c435bb500673065023100ef0908a2c54b0859fdd7122af0813594ef9d7a9c19eb47f1807bca001005ac8b4723f4a3ce8da64e9666d8a840a4348202306167007488392a8478fa2c04f74f2d7a0834614254ba425063e2db003686afa57e8501ab8d827c98bdc1244e7fedffdf0302047c435bb50067306502306cc809c8242ee32d3b241ab3e77c8b037d6613957a377cefa4382f93cdefc417add3eadc7ed0c84e324a9cb1a3603f02023100c6dc36f1fe539c5224b9166bda169f03900d9751cb05c783cb63ce18a9bf918672c04ff47f9d0f659d0cdb115ce3860f0302047c435bb50066306402302a8c71ce3b5416b679e4661f92a4e652eeffb2bb037e3eff6e78b6304b9cc511916210fb529729c8587e9e6c0b1c6b2702300f0fc9909c3fe27f71ef83b0f66237a8185873fce22ebb10e1c4590123daecf30d742d544244d24ed0bc01822afac6e60302047c435bb50066306402305bc238b1932635c6bca3373e637eb31ce405eaf299b042513eed50a6196fb65e10669ba3a5ee4623bc7dccf1478e5ec30230643e807d00c30c1db97c9763d7df6c8ed1908b167b2d9bae477249abf4eb596f578fe71b454ec08382cddcb74ac640a10302047c435bb50067306502302ee2d3a1479a4471da56a642b95cb205add5b7851d31837c06a9f440eed7d12f826033edef1869f931decc99bc5f107e023100ae3f288842f19d4647a29652b82bcc122e9a8b070671cdefeb0493277a4e14eb453fdd00d879921be197592d5dc8fa310302047c435bb500673065023100a785d939c5e6b47d3b1e3f7dc3c0b5fce739932e90c0a35064c219204f854606c92588e14b34da0a7fcbcdcbd02dd01902305d5945eafb81c5abe7a4330d31bb85cdce2dd34387508e629f00f0fa6622c42e2fbca721f8cc49f54cbce50f7aef030a0302047c435bb50066306402303b434828c71a253f236fddebc5cc44281de947af720b6ae90a55459fc2600c2067109ba844daf0c1d5533a3aabe8cbf6023024af88c41332fa6f2a195eaf3b0f668d540b6e0dc349ca5fd32d70c623eaebd48a91ec05660ecb1ed12ad3fbd1834ff50302047c435bb500683066023100ca19d4b0d59340370bc9bda2dff6c4c11401860a2deaee9a4e0d2aa34576c0e6531b7c2020965f0fc77cdaa415631b90023100c450cebb7a247d8bc4172788e16fdcde682e379f05e13dc6bec058b90ce8e387f8e5df28eef3db9c68d0937e1ad74aff0302047c435bb50067306502306be99939c2e22ae77c8093725c56386bfd7cf32575f4ed176eb8a0f8069dd9e41e833ab3dfba7fe528bec517a02a2141023100f573f5e049a0e5a4495707afc599ee7cd2de2fe27475a0b833dbb0c4033f7b5655b8d06bebbde64c1fb0e6da0a4e421d0302047c435bb5006830660231008689ce676823c8ec1ae6eddd59073a5e31f570879fa7818726dc1ddb26c9946e232b87b190fbaa522ce0a93d663f2822023100d9f6466b004f2495c98c83816e94c598c661e5c029ae5493683026754beabcfaf14a5c24f60f3e0faa1a3ed171f44d2e0302047c435bb500683066023100aabc13e6596679f488faa808af3e4efa4cfb98196828477251774d2762fe8a733835c6ef91c34a00714676102ddc7df1023100a3f7e5eff201cd72e1f8d60ba7f0839d5100457e2cfaed17b73d4d7c92dbe8d05ec312803a86ea724d8ae1acd2cd2da60302047c435bb500683066023100977ec27acd4edac932c89e67d2d081937d71d345bd3535ba14d5a280279fc23e92cf0f47e7fea86d7323daa392c28f13023100a13bf3f71fba29eb1700266503c63c89735dcc0ceeb46257c0a901bfc57b6e1e92947fca34138b4c302327305caeda7d0302047c435bb5006630640230129db5c1a5952663d197f7a788ba0fbcf4e185f194f77aadab1d68d803d43436d8b4f3486b5666da2c35a255f9cb8514023047aeb7af3e91388966c49f0a6815519ccb22b3f314aedafb3dbc781e55f22e1a9e6e79587c8579df32eb87f5c8ead24d0302047c435bb5006730650230723a750ea9e781c034b404271b29ead9e2bdf1cc77d96b6a241555859a96438df8f647e41489927057d79a8ea0e7f04c023100c9ceb735d5a10acad245569db2714c9f917a42c967f2bf6da5e872ee7503f0e806f8f4b9da80fdbad2ec4a68ed05fa730302047c435bb5006730650231009baa1e56721b99e3abece82805326cc58a544754efe4062f865342f6711807779e3c51429d8e273d4b95a490ab259a8b02302fd3c76ecff1f2e5975f8a41d2433adaa50f3dfb9002c22e09bf6e72c033b934554a13ba458db5ce7e08868f7d75f1e30302047c435bb500663064023041cf36c6361c4c5c347205727c67fecb384d597e5bcaaafaa115ff5b67d62013427cd15f71819ba2d79d4e98c054633702307dd6fde8cb360e73ce34d5f349dbb3b2a101cf51f76d7a725afcdaac2b90d891678fa8659a848bc00fd2360b582d8f0e0302047c435bb500673065023019ab7f7b0aed31094030866b4ea900d5ce25e180985cd72e21f9f0a8e32dc9350b35d031aea20b6e0bf8598dd97c539d023100fb3f7634276cc74773ac4b9ca8491bab1ba9ce16c6568960228a565b1be9773b4e0a832bee65b407b4e15352210284230302047c435bb500683066023100dfc5fd9e7c6959d3fcbcab5afa643339cb9e75a29b3adb34bef5106323a097423b2680200f27338d293dc6966408039b023100d64c3a553871a93e79980198bbe57232eaf022fa9c1332997e1eae6c351d5eeeeed6510ea1a6388aa48cfe312c0886a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d20972c115a42e0518d21a568cf637d5a65c1f08b555031ba1f0c4c4ef64df6fa5d7fc0120805d5a474b573861190e7a023035d5008b001e4e9a70f43a46b0f4560f10beb5708b81c35612f21d639a42fb84a86c189e71a048d21d4e208ad72ba4d60302047c435bb500673065023061259a74dd78386b67a7499722687c380b4dca2f3f08f9e06fa842481a46702efeddf894c6fb47175ce0f7883999eeb90231008d488fe419b4c0287a4219c99fbb9228f85ef8cbda4e011ffba45721238177533eea1afe711b4a8c196dcb419a526b590302047c435bb50067306502302606db57053a93b0cbe95d7bf2f08dcbfbb3d85c89e43ad5833b2c6113efa1643ce0f03a43aeb71b7714f8bd913c17cd023100b1b8ad07f753d8a58652a5b60307de7e89c327bc7cf9c26752502d338b85c4b7df49eb9ec4bbcc502063b7f44807656c0302047c435bb50066306402304a72d1ccf43799f0a3530d8ae3b971751b2f31b9e4f192f49475c58803e9084945ea5d7f3ab7277a77ea14a61835e81002307674ca35b4e98ac6555c5a6a26dae6180bb849015fcde6ef6e1e0b2dc214ae597de78cda104850ea47d08854425904be0302047c435bb50067306502300e050de915e4047801c39b59e3d01492e1633108adffb4b8764f11e36c4714ad3a07c2e10ca3102c84a55d4317ddffaf023100cbbc6bc25fddd7cfd0e2b1b5a76cac4613ff195e79cc9d92aca2274abea0726b7bee55fa428cf812be8eb1ec657531140302047c435bb50066306402301f6c1dcb4b5fc291b311e0889f9a09c45f5c3cbe85363ccb3d2ce75371ae6b0e027fdcac76914b0759122dde91204a5a023033bdb037cd37ffd312f4a10fe83c1d69094bab861b497c2b2384e4362f7de6e380c308cea3012133165811f8762ea9ad0302047c435bb500673065023100d081775a83695e1683fbc82b8fc2490686308f03ccd7e540d5e6eb099b0d31b986384f92f36adf01a20ff915848ea93d023027568c2f8be5d0de1cf4459087b72be205144d38e01492e31def8f1144dfebd83878b6f46714f947776805865e9406770302047c435bb500663064023029b186c7fc1c2b66525519d66f0bdb6fc1f385d70e25de5db333cdfee60eb569c8eafa831dce1b07f489982ec4690cff023015ef58a439ecfcbddc2af1d89e8c2b90a36de1f7ef0b3a6943d1faad8c6c4af2fb00fd030b76cbf8a88b114407af4e1e0302047c435bb500673065023100eb3e51b476879ef6ac16d60a5545795748b3ab9a5179d5d02c3e3dd4b23f0ba0d0c071d78a028b0216aaa8e5eb1113080230319d35a89068dfc7f753d06d2a9ea266e58c72e82fd2b96e80ad4233342ba3c04339a870e31d0cbfa5a1919088a1553d0302047c435bb500673065023065a3157433d3b4c5bedcc5113ddb5fc76385d522d09cd3c9493a8c8493b5d8bb95ecb17fcaf1b5d76cb34320271d86b80231008e9ffd1b57eb9719511e5a9a87a58f0c8a603bbc70913701444a36b9c8ad07864ebae6979c697d27a69b26a423167ca60302047c435bb500673065023065bef501f8295f7a71d02a0eed9b46ab648dea1623076079f254da3348ab0aa1e4dcdb66f122d01b94776d7cb08eecc0023100e5f6bed4ef2d232c1704d2afda1d491ad137af74e46424936a6148f84e721aacaeb2532f031d8b41ff55b63245d863050302047c435bb500653063023030d996998f5aff0da1cf48865f36cc86f6447dc904f08df78b443071cc738a1b2d1ee861e349cdc460d96559288efcd3022f18887d593b5817af4569f240561b7f63f87a718c938fda4bfc584db5b5b4782e9cd96dd75785402a9fea336c5023910302047c435bb500663064023035fd2e8f2acbff2b48485a715fd048746d566be7ef7c80ff2eb145a31c3569a270a3350873188dfd3172e710cca3e57102307617f0f99f0d3de032bd3c1c15e66ad05f577561e7cbf8812dce4cb8d7e868d833ce5ed1fd1f1fb8bb70b07b3a72cd750302047c435bb50067306502306cc1c5edb9abf0c0f3956bdd071eadf90724dd285d22e75a2986e48e898aeeec21020ff978caa399701b9b2e8cd62b4e0231008f6c2ec6924d2f8b87b58eb08c4c3f7a9462a0a262063add1008ecdd290ab953bedefa4abacd47dfb7725cd3cdcbc2f70302047c435bb500673065023078bbd21cf34bd8a9ca6cc17447a15ce2b58d921a454cdf5b2654c2468bcde652c19b12cbd12d17977da0d94568f5c19f0231008c9a9d41ffda731333d7d1ff0e6079883c1130c854f383dcdceb56fcafecd244c7604619230652e0aa5a6ef6414d540f0302047c435bb50067306502302b92ad1de5dadbf57557c3a3a90c83d25c970dca05a642af39fbe66d1b0fa695402047408d5e72f1810a9e80f1f15fc10231008e1fb59fd359dac0bf3dcdf42e3d8eeeb8d0dcd89cadcf3f8907045390b6ceae9504968130536ca284df51b9e9d5958b0302047c435bb500683066023100cba4fd19935d464c3bff44eaab146362d8068d56c9e827698408257fa577fd54f0c0add638139bcbf1583323438ef281023100acfb32315e137723ee1b3eb1b2d7c4d454cc7e8d4ad16d742e6858d43ce19f4b8c58042401c43dc82e4e7ddba2a2ebd90302047c435bb500673065023100d55cf5e89b32bd10651a782bdb0b53a6bd0b1dd82b1cb0372cd6613a7240d6900183a49ae6036d91c1e5b401bc8907cf023060488f757d1ca1dc62a9d2746d57258e96583f018b466214843a2d934e4ab50036f2b85284c6abd44be06c1ac08b5c8b0302047c435bb500683066023100c0e5814958fd159f9cc0eb39f3cf8653562b24b29b8438e40752231b63d5697aacbe74d2a9004c1e41f284cc30d636c3023100a4147bc28f0e2cf6b93724d54f8ef994b632192ed8d851c5d30382b0b9f0a7d91adc647accebb41d41d924739b36f7bd0302047c435bb5006730650230555c8e102bf62ffff081454dd38d54fab940066be482c2dbdcab1b310915bb064e630853f1423f51f89741ef2d1f7206023100cb1605ebf837bec86c45f9c739a963d9994892ae59a7ec4abfa2073876bd4a09e5fcd825d5051e1d128818a41aafe0bc0302047c435bb50067306502307bd4893c80a32a6d001bfec924f54482f31215096c53404a4cefb55c55db673273f43c3b66df5ee67949864a86d96c70023100e884441881d56b72b8010e5f85407d725103cf08453eabdd35a4294c464ad2384be598727d78db317e713db5ec6164a80302047c435bb50067306502305b0922d7bdd3d6862af64868089d582043746c2216f988f09069254585f074a8233c2cfcfe67c34007c50d705a8459170231008261f3a9a13ee169761ae7447d1c4cc72df85fac932ab6d4276dfdc6fdbf0155d0e1da2712bad9f82f48db7543e332660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ecc3353f3219ad87d35c2682906b6b0f299e61f0542a0c0217f8d26a5ce7664036eb3464f85e60a07e70939ba1aeb5402300a8436c10dbfb4c549a2f16f749fc7473ee94b99d4228855aeff9c02ba1db006a55d8fcabeceb55bb2649aa02701ee7e0302047c435bb500683066023100cd071f3e84ed63928b323a253a6f4d8dac3a629b39a111d997b5014325d76a5edea85753bc93667aa7af9352372206ff02310094effe8964f10408d88a324a33234428ca404251b647dc75338f9ea828838f8dd2d6d00bd10d919a965bfa2cd2fc28f20302047c435bb50066306402301518671f009435e18dbb1a99af1ebae137a2b4dd38065166d5441926d9376c8848625e76012f6ff69efa44cdcb0d4cc00230666adc017afa3b5fe9edeaae490daac621b3a3f037fde6f222528ba1b031b66793ea2d8f1671117701279479721d89270302047c435bb500663064023030acbdb8fbee6332a7ff330da9a0d31b17b6afe171c4d491620fa19a6c16957e27cd8f445adc47744df4c78f867cf6bc023031de0c7bfb7412e967fd9fc378974e22ec69c9249ccce7656e5aa68f7f9c1b0a29d296e2c76af4a931ddb674f242510b0302047c435bb500663064023013bc0df18631cd954157bed1b6d4c67683b911da5c743f38ad8d83752a06cf07678744c57e301beabe1a23a2259eb56502302675dd05f0e03998076361dba6fba1f0f6cf9e3b21f6698d24c6fc1e6d856666fb22919fe98912b59b96dbcc10410ca30302047c435bb500673065023037d7a07af73739ed94d3c0c2a5aade55da0b82ab0984ea51bf972139ea072a9c7d948eb0cef258c14fdf27de1ec5e8bc023100d4a794292cf7d98b8db0616e4a56eb8f0506e5d367d57662768c7831fb9e234edae3fecf4741e2270127a8edd5178edb0302047c435bb50066306402302d8e0dbef4841f6f13898730209a67078df4a8aca7a722ce82fea47fb39835db3d0953f074aa761de178fca1b54aff4602300a1b2dbd3b4d5f21e10a290ca5859473138d05e62c44594645c44d880c0d9d451ebd211d69aa87e968b6372bdbfb443b0302047c435bb500673065023100ea8532254fcc93e5a5cc877157f7be8bfe611c224f1cc00e8c9c6facf3158a80a6704d7118621bc8f09184ee349bd98c023027f4833582a125d1cbd4d515f6693b1feabfbf410d824a74d004945ad867b2ea7e4fd3625cebe4ba6e9b2164778230030302047c435bb50067306502301e9fd34a52d5494b8dc10a3939d86683b448c3315930ac1feffd6c0a34a9f1a17b271dd2db3e414f5e1059c9bb8a759f023100bb7eaddb275f30787f9daadf3c8d4f43ea3f7da3e6abb5a670ea7931f923758f0564330bc510853310769feaa1688a820302047c435bb500673065023100aeaa90e7a78b3c35f704e892bb30170b518fc5b471b8621b5cadd28a88a6a3f6a31e07b85847e02de347b4235893307d023066a0faa6c4d117845cbb50209aee20eb0e24bc3e68f8fc0a153ebee585ff61e0d1cbf20fb81ae6f187997ee657784fc50302047c435bb500673065023019da60c3858962065eb33b84409c43e6531efe560ebed5adee831fe302bd55cbb0140c42bbf0142e0bdeeca57ecc8203023100958a78cb76ea183ea0fec5402a6c98563fa4238a18f131e14b381ad1657c8e280d04bc3541bae2f61c07fb6bd20105fb0302047c435bb500683066023100965595a1d0906de07138121c6190fb8455c16f44770119f1f007f2cb7cad479d3803a7a83b4876f883bd5db3dc30b842023100ec2360e95223c883d4d4ff9bbfbd980c0384685ef4c8306981be07dc1468b9028252d9f3c2847ab4830f473f44fb55320302047c435bb5006730650230195db66dfa25b0667323a1c5eeee92dead7b71672b337d88b22a4724438915e3ef1a693f25c337dc789f309e6e8de154023100f5bc91299809445d296f06a816b4aaf6eafed7c029655309a48b7837f3ef2945971e8ec2da1edebe86c39c2ce6cd5f690302047c435bb500673065023100d0d6bc112425741a76caf7ab7b7be789660e82743ad804e5654c1e2c992409fd0ef8b5d803f8e088cd67a0df835a33a802304975f5adf45fd0381aec0d08290ff4e7dc3b471ce9449d5916484f2d596751d2ddbbce29c96a3d0cec4973e1679bc9f60302047c435bb500683066023100ea95047adeb54f410133ed4aa8a4405d479dc435183f3ca485f42ad917492d36bd191e7053bc1b8cb7c158d2617cf963023100af4e9009f49d1095005dbfab4e778cacd18b15911bc36cf73498f40c2f913b53674b7f269642c877cd53bde08782a26b0302047c435bb500673065023100afe10a9488ddd4db8b461b99e6c781b3469c325ec5f79cc193b8ed9ca33a1b12ff561e96319d670f1f3fe29b6bd5a4aa0230446370df7cfa1ce2476beab18504f255479de2c61a8072f5477125677749f98efed69f403ef1d071238b8b8d31ab05d10302047c435bb500673065023100ab3ea6e9f8f910952bdb953e5abdc1b1b05f5efda80468e1cd8ce43474ef0ce36e413f63237870d8050816fe13577bef023043159c0010d7717f6248dec7d0bd11e69ae2a1f07b359308634d8d754086a3427cb81eda27082eae2f022b5f7c96f47d0302047c435bb500683066023100acb7ab801641ccf4aa972879ca36b046cdf9828ab5f5fbf264bb86d256a04bc85c29f03ed2dd8370930f5bb8ce07a75c023100bc7a43570f0a982bd46d8ff1d2de8459efabc6c9263014020b4a37c1caaab63c5085cb777b8d06f1a07d57f2eefda2000302047c435bb500683066023100f3a3c80d4aff1d76bf35132f8eee70ee71682a071d0e613b4c6b26fd1d8c1607813e4b13efe3ef1761ac515ac54e29d4023100d7c2384d92f2cf052523b32d713f79c3ff5eed72eb018199ab1a9a25ba5e1623373414f801d7dbd3eb81fcbc2b053eb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009423af0fd1a3fe3e43449b6a46a6238860645cb79922f4fc9bd7430ec381ca77449a16c33f605ba72a17c2387afbb3b0023100a7d425eb661daa09e700efbb65e1ad416ff459b95cfb67a97d3d9ed6ade7aa3a8c383609ee15e984f003126f09786b0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099214b7b1eea024132d86b540c019b083dcf797b9895315f3562591ac98f954217f540cbf13fa8f5d7588925cee13fcd023100f5d6c357da18a8e8fcd0c65af08c0202a825be678d079b6fff41fdf46fcf83b21d6289675a35b6296a9fb1ed789f61c10302047c435bb5006730650230658a4d92ad6fe2a87c6b6cdcb9afbff2e6835147f4fb93aaff497b2a604b832932c52c83cd09d3a16eb7253d29149ee1023100924af0a44b88c059e39c39fe18c298003bf20ef81309da3c2259856b83ddf457288fe87f3ccc76bfdcb54816bad4fe790302047c435bb500683066023100ee3fa11bc90b95aaf48d118c90f4a8113e0cbd7b95dfbee95e5da05db35658a0c1b37b755c255a2a1ee664c5381c2da9023100ac360e5cd21f127d86aae554cde95b9acf0726c874353cad864b8f44afd3347ec9f6a1d9971db6857e9449fa4499a6c80302047c435bb50066306402305b4742ba0209875f2b8e9fb8ea4e8382bc49bd7431cc7896fd97387e827c3bf50fb8761de9ef619eee50b2e9a0f914b602304ea5e599bcff751874604ba91bf9e21832da0606267b7e5b0d9fedb1856a8771a756de91ba4143cf3ed3f7e12a3784880302047c435bb5006730650231008fb84993471586193c15b9ab67fc14ef8c874f00c79b34979b55a43373159790ac766f3e1bce8acac36166d5f200b97b023034190ec1d0c0adedb75861ce9b68652e61494d3b9c2bddf0e43a260973dd02fb8749d403ee183fbdc77e047ceb341e8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c19bcb108204a9af14ec2d69cb63475041770c774b496eac9f869436e95828484be1c14181c4cc92a1875ff4014e37c5023072784361c44a40ca46f70639a4534f771bcfcb10372dea32e77ab42a90b66ae474b21a724e1722c12660dfaf77ab28400302047c435bb500683066023100861a5aa87cf5622b63bff91d8abb78f250c089de60aa433632212cd581e56654c96a9fa476ddab19c6017befebec728e023100eb9c46039e56350a154090fe1ae174ca7babac24ba4d37cedb79cbb459846cac32f41e9b21d888559c80445e0216b1eb0302047c435bb500673065023067214f8f1ea6be21cf4de51982cd56cbd7c91421872d8756b4cffa332e34ec8b907205a7c8b6a58da8c3192cbf1f5197023100e3afe0aaa18fee45c84216ff611d4d0b895026de1ff8811b89f879c530d2097ab046c2e0963a831abd1593813420c5ae0302047c435bb5006630640230194837108a344d44c3f79ea70881f949c775b390f3898b3367792d597929aa04e2878cc1432ef979ef7fee8d575cc0ce02303e1d5183e3ae3df4ccc80004a668beff6224b0e167fb19932297f886e1b662b7c2fab9f7d0eeec8eca22f7b6ca1285540302047c435bb500673065023100f4bcd40f6cb55ccb397c7d78753dadb5dd56436f1a8bf5f1138ef0ecd7b09a2b05a59eff0dba105026f7a7f38f412ad002303a94527ac6c1dd8a85aa13de0a17cee0d5b0aa93f9423cddd4e0d5dcd692d756b21eebbab85a767e4013e8186093cc250302047c435bb5006730650231009d7484ad782c1968d73fcc801be002bb6e6e38dddf125403684c0a2dffff457b989dc923a7f70396aa07498559e5ed7e023039a2db3c026873e7d4e683ca9b49694796e5fba92874121f90fdb63f8432812f42194af0cc95f41b63e86a74200a360a0302047c435bb50066306402305db5bb642a6fdb6bf2bc049ab8b3d16745f0c1a0f8af3ea207c2673cb3986ccb319999154e984551370a5798aadb98b502302055ec635d788a6d334392d2d4956e29fbd4eb9c095d82c6619840da7e485077e03d13ce6d3260af08363a5fd174c3460302047c435bb500683066023100ba97f5991990b18d12aa728ed91b7088bb56a6a6b2e59d1202205171c15b2272bed18ead9c1665d797136648caf466a1023100c41a0cf41bcc23bb36670802f765b84027be5b02f97ab54b77264f38057d09b4e40601465aa904c51dca70370390b1380302047c435bb5006630640230253db034624055d773df83d9a05c2146c36859d2b8f69ca45669088f70194e4c19641d9196260534e617b6e1b329c18b023038228036aff6055db139cadc6e4a1e72c1ecdf66d710fdd7e1b6f87ba82d3a741f35ed80faa3ef535f7bef819d7e1ff10302047c435bb500673065023100b4b4877ddfbf8ccc46223b78ab6d97935003b37ee2027bf0f21c8469e63e5b754507c9738191c1a190f55c21cbccb08e023067840a83872c1c9307ec2aa8675f014e17bc9c4fc77f3232a7a57476d5cc665737037beafc7e4db1dba691ae234b7b6e0302047c435bb500683066023100f12026315c6fe01166e7e1f82317250a1c9233881ac512b1dd5d4c49768a0e7e43f135656e6a10fbce620d2d2c1f45fc02310097be9cd888d44481bdfc7e0797a482a6cf8506f6c87a1bc3a7f3fb46fd624f559d0710d8f599fc454ddd630f8088c3f70302047c435bb50066306402300443ba315427023ace84d801b27ff1b0eea66447f1f93b440052a0df5998e99cd5177e81f80178743b1935846c5dd4a602306225259bf856dba211ecffa22d7980fd923da4df5570aaa2bf78bea8653e7fa19fd3b11d880034315574bd7852bcc78b0302047c435bb50066306402302f61459ea9b9db291b74db21f683b4fbbb44fc7e11377c294ffd04c3a7df69a6c2ff0e8da6ba886f5dfd6a442d120eec023065a28230b2ef6507a9d08e20be56d9343ffe639500cae19c57cac9d6fe3f71ddf8984575a645ca9fa8b7dab0ef4076040302047c435bb50066306402307e741525b5b89861b396747b09eee76ad4c0e8c692ac2ca296dd22601dbf07c89f3ab250dac7ba440f9755be9d173103023008fc1af13bfd8df61bc4f638a21fbd12c3ce510abfdc94ec60e72b3f01d29a453fd8e1a1d6b9db9bb8fe3733c333e79a0302047c435bb50066306402301020c61288c84d32a46242722ca97f415f3e30005aa1fd9f3601f8998930595652a8b5373bc271be00312e04b97d842202306b6813c72e833f27b4752e0162610c88adca4dfdf54881e2d6a523c0067772723e000243523ce2805209886229e8807b0302047c435bb500673065023022c2e30920fd60b9c0b670bd6aa01ad52a84a8e8ab1773e9c54ccca7848606a48585330df87f06d7a418cc3d9bbe8f7d023100ec9aa0210d5a7391406790d6f779a5040cff36522623c9ffbd9f2b4d3790ca5696f692c015e634bbfa917483be586fef0302047c435bb50066306402305a7096163cb2079358792a7dbdce6f86a3b0f0078b8ed50c60874723c6055aaf764595c2a94f9c881ab1cecf264f81250230624bb3213dcc89f45f234461c0702401e1dbe9a7f11bb86f6ab624008b258a9e320868252d37f09d7d3c81ed881117270302047c435bb500683066023100d483b70068c038c91238d236ab1327d23982691f03fbe2d28ef91673622957e2e004fb488ebeab12a15ee1c4fd5ef90c023100fdb7cf231e741eef9de7fffd9d8c91e925040735193679ea3385621d684c8b8bcfce8f07c1ced7f4b4c992cecdef55510302047c435bb500663064023035b9df4549f5c478b1943e55ea80f4c289a409bcd31d419cf386710771044cf9396b6925a989abb2ec3bbc148dca2d5a02300211f6b9fd30cfd9aeb3552191aef6bfa38853faab0825295d4684d076e4d5f771986fca2471238ac1ba9aab92931c5c0302047c435bb5006630640230368e941d8530a26908b16a6e90d9eb2d39d43c4077b78420f4a958fbff32f65efd05d6293896c1b68e4142ef6e43ce28023003e1faf706f14b55255a6c643c1b8f00872580f59e36834888f866c91c3c3daf16a298d5c65fd5f5bf5f3b80e75ddfdd0302047c435bb500673065023100a655e7b83553bcc0e872781b82db01806b6734f07ef5082dec6bdd70f75da1e54034ff47df594e329c8e93096cc4b42402301258a41b813c98b74bf92f73f7bfbb7d4521153ff25037a1e589ff7da99d42418d27cfbe10641f3a21dbf546314d4d600302047c435bb500673065023100c08b4b81a7c30f6c3aa23666bf5aeeadfca52721204d843691623cd4128804781e84f846c2b942cbafcdedf15dac5e2102306a04c49ebec03824675995c52a20691dd218e10e8506d72754185aa64fe5725e135534c05de01298e966fe067f3ad2810302047c435bb500673065023054f4bec877acd5d712d2349c9293da8afdb1d81854d4deed00f977cfb1828778be81d8849b00f3585c265c05c849bcaa023100f99e1608335e6d591001fcffbb91eca8b999d106a55ed64b6dd51f31199f29a12ab52415c74e4e92d43fc3445f54d1db0302047c435bb500673065023021931080f0735b13aae2a3ec9d3277bf38b806abdffe9e853ee5039a01f33b825ec00e9ccd272c3c1dcf34b92f3b1ff0023100bcb41da84c223bf6bbd275d594eb88d27566f2f0245d13bc2960d78add25a4ed39e983c5ed7a9c2228b6792486e687d60302047c435bb500663064023066288aa446cdab57c6da808113bbaebbc2d4d166b5cdb915c350fa55131f758007ee05ff2f5c04bde9551506f67a36d802306feeab70b091dec680e5a8b5cf168077072111760c450ac686b8c7ebb00bbd524eedaff92a3b622b817d8c30b0042a580302047c435bb50066306402304a2580ab7ee86a084689b050d312a759b078e6c10fe51f2fbb03f0c216cd4b4e823653ff4dcb702aa088a75c08e95c5e02307252a19709ebf7bab9704422d556a604427e64b698e33f429a694fb6b196dbca006207aa1d32f541a5ecd13e2a94a3b40302047c435bb50067306502300953a746a0a8a94232695d1be22fef185cd1c4d792f86ecf74cfb301df98fdd7b97613d1effef91f78bd19ca2517c860023100c3e0c389707ad86a1d6711e9bc5d5f126e5429708e75f03d67907ed77e38c651b38a270523e8671c8b83833698452aff0302047c435bb50067306502305a428cf87d00c815f59c1919549f335a9e0258491b119a0016ca77e5079f5d8ef0c0b403807299c280faa0550a2064e4023100f9d13747873b98f42423978a0bea2f71da1b982936583d93a1ddb142277588df3f68d16e2dff4df51dd4608365acdfc30302047c435bb50066306402301c89917be691408a6540aee1a7f7fcc9ca97e733efe9df976e80527c5fe567e58bb9ecd74282d1500dfc2b278438174a023039a362ed8b67d58ed8e9ff2743ce375f6f0cff8f493e198da006209fcc2d39d2aa79a24c6c4c48a19813335d0252284c0302047c435bb500683066023100d219a17fbe1d4754edb77cfb4c057dd87a334b9d54894e14eca46d632007457ed3434830d0fd66d7f22ff919093128ec023100f8d79af70848baa9596be0e8f1fa452a5a5053d883074ee77a48a4a7bcf0e2c1103b206874c13910ba114865ad771cdc0302047c435bb5006630640230223be0a3ec32c70d7eef156f1e57271b60d3cbf540ed6586fe0a1cd5d213a78765a1fcb0ba8ce0cd52839323590621b302307083fe9aa85d15c7eda86908d903818d66b824841535add3b45ea733deb26a6c7c26d14746ae16694b2655207c42ad680302047c435bb50066306402306290a2ee34ae1410f7424fa90e235f7ba1ea99ec669b0085f15beee59016be2917f3c66923614b10b2345b8321bd20470230395cbf5f1cfcee564ca2516211f0dba3609b267f344aaffe4fa7879db227157108bbc4a9779fa6ba3a991253996535d10302047c435bb500683066023100c649b277f13e7ea38e4fc7b93dbffd93e039d8a2226f717ce4f3f95bdb0a1a6bf53bdffb89b36b4a27df7a1ce843f1bb023100f0bbe5b40bbc55a84b5a8cc9b3e9d53b5b09436c18c949a95f82a9e98f81c41dce867d6f5727c831b66f37fcd86e3f000302047c435bb500663064023022ad83415243982e7292d1ecf9f2ccd6d25c3722ec2d991fc22c5dac56456213213c6f9794c9461e5420bcd5621707c6023003aea6adf7bd3adb6a5f0ee77eb7bd238c0ac018b304023b3a2a9736c4ce0a0d0c63d31f58a962f51e1a3849c7450ee80302047c435bb500683066023100a80288c1084719ebf88a292ac86be37e535c398773ba96b8fed6b6e711c6cb2011b6ee602c285529d029518aa2d22953023100bf8d0791ab601b22e14dd3b3f0cedaa3769c12c412b5c1a40cef64742c2028c769c14db7a863935436b3f93d1cc5a96f0302047c435bb500663064023019fbd7950a2915958e31745b28340cacaa3aad71e243d5dea318928bc05c9592f053f12141b6d733aaf27013fe14c98502306458ed98f5dd9c7f79b4b764b590d5cf7f80d455aedd1300672bd53f760f8b43d9cb7223bb7c4e887d53981423bbd4b00302047c435bb500673065023100bd9f62b90611072817c3b516fde2104ffc5289b4b47659950ba0acebd9a7463c6d45ea5a3c6fece8bd9518d5d5d2421402305d326542e696fd8dac8a1890246629b335049b880d33128855b2b0dbcea2deb7d92b69dd0bc462720c24592fbc9aed9f0302047c435bb50066306402301787203d5b78112e001e41f562beac0a87d6a3a96bef30ec9d8b04f67cd3eb88fed2cc73c9af82628954d555732eee050230391d05773c742c67ef06c91bd1e6d4472c808c8ecb59e83c67b506170ccdb7356d5621ec6da09d887fc6fc88a3c88d7b0302047c435bb500673065023053dbd59e1021314dc4db92816918bab91d751680a8b98c3b35ae2a24b2bdedb70ea631536d35c9bb7ad50f126341070c023100f3395c740055f8d0d8419d79710799c7713c9fead0356a528b8407d1b4e4f64ac6bca77672ced84094e7b13aadece8bb0302047c435bb500673065023100f0c9cd852ba2c329e2b5fe575cde446f24bd416709a44beb6a224e3b9ea53b4dee119698be0314b8fafe2441a803f57502306084a114f89c0a069b8beda2586503cc898d9d6330ff89e3fa56d6259fdd28de220462d7bcdd6dbbee29e91dfdd03bfb0302047c435bb500683066023100fbcee63d95ea9092b1f2d8e26452121963a7a95e0322132a5cddf9f60ebd069ed6f17485adec59bc6af96342f18cd696023100a53d85611ad3ce2b434c3033494a7a95cf1500d3ca3eeddcbc36fe5d19e548ab53d3f0a5aba63616cb31270cf81207350302047c435bb500683066023100e3b9c0dafe3c21de508de82c1afc33913c8a7ec8cd03cb32d921319aee4ae9a90fa849e649a4fcce1cc53eee657c97250231009c37e69684faebc2527a9dba50092e9d627cc9da372845dbe591ef636f77728e8d80cbf1c42f50d49ca4f44692f486f10302047c435bb50067306502306d2320f0534e1b709072eee98c29c51ba0959221de3442516f606d05865d6bbb39bd61334b2fdecd59ae61169daff5e0023100ee359cf5e219bcfc2aba824df28a9d8b0fa5f13b9daa53fdf4f83f34f58f2cffc271740efb731540b868c8eba7142f680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e6ca600a2d7bac2582e7ad45e415e936f1e621a0fe68adf1b0334f4455a243244b8a38f239749d31cfe33756f27b93b02300b57294c70e536dd8bd41075af6877da996c9477c84bacf393cdeff45548a916938681948fcd7f7801542e046eb3724d0302047c435bb500683066023100f69b5d00c12ff1283b2177be6d5bd501b1ae540e2df2bef004b38acedf3489a80c4335360ce4e3a77b7ae4537f04851d023100a486fee1c575a9af9cc87f958fa85529ac7e8c94475e903a7efa314d85958588cff0c31fb15f97dfa430d104a61d9d570302047c435bb500683066023100937c198d0e45b5122ff7e8c738c0b91962a7860fc8e8093588ddf7678cf3b961d95494d1b76652f28f4bc000868b7b72023100deac154f9149f01914337842353b2eed9c6154ed0b99685c310ea58d2a5b01dff95967db317e729d7b5b3e6fc17c5afd0302047c435bb50066306402304ff5239758f2409c72efacb8bff77505d449b647eb5d9453ffa2ade6785ffe5ca65fad8005ab7ad452674309c8bf613802302a5e157a864cbeecf235963db95ecec4891d465f171484e3a40111f652c4be599b447a411cde96a663ecfeafc665b6c10302047c435bb50067306502310097ae5d36f14632536f6aae25ffc7e2b4d8216651c10ebf5a26b8eb4cb84fbe4a665c440ef46fbf7df72773b65f746b0c02301da0f7ef6d8a17ea8abfdb82d28524786e741d49e1807e383b8709873634cb75c95622e72eebdc84ccc58ca5771a69c50302047c435bb500663064023025c74da959f485ed2d6fb99e85b0db929f69738f9e4ef871c6b182ec5265b3a495bd8dfb33cc42c48cf0fce16ebcd399023017624d7cff0f9ba1ddb6e3326e4a329faddcc40c63769ba54d3944e7af2fb4d2943e363e933dfc53f40fcf234b5a5d970302047c435bb50067306502304a2a151d3ce3fe0e16547f43d934d0722a5134f6cc74140c9f1e8a5af857dc35964e142ed5dd6412c6a0c7d9f228b771023100dc0c2a09c7188ed67d8f2e954b5e2842a77ae5beb57726bda8f42e43a29b7ee9a5867d9ae5f927551227fc0e93711feb0302047c435bb5006730650231008bbc9acd47b816d8512af44f6f0501f996e76d5e41a3469410a9568ab70b831c31a8303feccf29a93c41b916eeba8ab3023063baf554c3b563d00b5d580e657f4ad289bfc46f682aff262c6ee6cfbe524edba4ce8d947a01d222e71466bd28cf0b460302047c435bb500673065023100e4d043af2657a8604c9c5900e764ef9cf105746d404eb19e49db76cf4fe708d5b1e69dc9a4196a5f5e30f59f583558040230325d92a63516de0a0bd6ba9d916491cc256ee37ad5f75b1571f45099ed8551727b5e4eb26c3177f7fa18ece5fc9482ad0302047c435bb5006730650230549cda6fc3f48ed2ebf6a0785e4296a115769c07a27a49e787e0971c588c7d6796310e04e13920350224149f1f2f9746023100bdc2e52a58af1c41e095ffc2f2d6bf518df69ced125872e39c33cd29f940f12f053a69b28c7a442075f210fabd4d64e60302047c435bb500683066023100afa128606d8bc1db4c348d518ca52705f8e4668f9bbbdae44fe58bf481e857248cb112d4170d396235893d3b226446110231009031a64ab86fd09d833cac030487802270544e66cce006b5b7c9c100239777a38c2888e8369e28589ea5ea6fd6834ced0302047c435bb500673065023100e084c0b1596e7f40b65e697b9c2f1addbcb0924e60597068c3ce714fcc779c43ad0e50b43349bda94502403ece51b31a023044399a7f7d6b0617af9610138d1f7f8467b416850d192bf1e1f5e3db1d69d2aa73899ccc1259bae2cb3a51ea427273800302047c435bb50068306602310083bfc9e6f11d5c749857844b31fefa4f5924d2a749562d901f03c90d2205efe4d1f5a6a63f755f7cf4355823f163c2a4023100acdc5679768b288457f792a63150984f01d3f33b5910eaddfe196ae4633263c331db192b895f576e82b3026dd5d0e1130302047c435bb50066306402305ad4ef774f537b74c19e8a1c6a3c1ae2773f132d7ca8ef725ab2a77a8ae249b4830e91482d5d91c1b99eb7980c66456602306d7cf70ab0ba17c7b6b2b829abba622f4998c0808cc649721067e6fa36bbc38c6d8ae4313b4d4b7ffc7dd1af2dc844320302047c435bb500673065023100dda36d13ee95ccb971a8ebad9498ad1e67cc11c4409f7462ab030f4ebdc0c072f3941f657a75ac1189911897ad19fadc02301de76ccf7351c513793e95a889a8a3221d8c40d3fc7a9cf8a927e8d55f7aac47213154203ec06a7150eb104a1e58ccb90302047c435bb50067306502302b301407d2e1e9b9b015cd1c5bfe7866d2aa7ee6164dacd25094492497b80841e6153921f138b57010c5cf7412e1d334023100c50d2a4c30bbdcbeb6c690af36cf2009680ac7ea17fb90eba23f52207f4eff47cc68aade7e348ab33e9ab35e303612db0302047c435bb500683066023100fb8e31a0c51a36c6d97e860a8ef91611071d0ce1311275a3dfb4ab0a5996eef9052e30c0334fd09b21b25c13034ffbac023100d194a790a31f04e3144258948c16951316cf2b9bb082938071f3fdf8d4f9c0d78259ca9452c62452377826a28e1d907e0302047c435bb500683066023100d27d155bd503ee9529ada8c5545db3a05251ce835c0fb3244268c9389d5cdfd5400a8042946a12c6c48abdb09b80a58e0231008814251ec405812e9ce6e35cf302d1a5abb855c9dd0bb89f53534992da1e27a882a4972d0ce5aa2a98cac0439a1826a70302047c435bb50066306402304dcc914ef7cc814c62a85d55263e5c62685fd66a7d0cfc389a1505f864bec8a5d01f034c71020e48b6d4c2d193990baf0230569916a1b8834afcdb286d0abb97a7a850f25480150b0bb76e39c709c07386c6555d9fb44d7af1f06f35aa810b01e6b40302047c435bb500673065023100b7c5c51fa49e44e438fab0b8e1afc6151fdace3693b82c71bc67be838674f37a048f0b60acb321097049e7f60f83db5b02307d3858eeb813ddf1de5c88dfbf69d5949875784f478a848f4f2ce7546ff25309f27bf888dc40135354da960a661459270302047c435bb500673065023100ec6ffe48f4cb7bbb0c7ae0b2ba075ef0262a3ca0246a7a5048ea16f907856ca847301d7eab2ff8cf674a92991743335c02302f0e5976b53e7a1318df212b4bd60367f7c680c4ebd5058127e93efe921e25e0dc3a33cead786ec2390b0fc23506f1c80302047c435bb500683066023100c0c1f9c7e2240330906f774f02af7301dc35f2554850fe93b6dea8ea612f793278edeeb4e83a635c56aecbe6eb5360660231009db4b6d21d2df785bd7b6c961309e7ed7d52ce3bd64e2e1fb946a7221fe3976f39a7be7a5c4f53121747efb27da3da930302047c435bb500663064023012715b38d02ac3e744d489841b6f32e73653e06825d32679d47f66dd25ee75683d8be54ce5af5002dda7ecf1efd841120230374cc91056294b1869503f7fdae833cbbc23907cd24823b44714ac459b00375bf4f5e6096b64a2fc3c3c285024df39c70302047c435bb500663064023015ee5c6f11ab91cee773a63b1542d967af5c0f9c90fd628d38811ebbf0541455a66e29b71b7a5a481969d356c08016ce0230295d511f2562f07c8704e0d03d72ccd420f7d40fd7a22556cf32159a667b3a2b6e0c610d0536a1265e7f76ea0292d3920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300e27414a46863bbcca0397185b7fbb118f5d3b7bd70da22972dc7c1c9d274d9634ba34edc924321d78df10fb72f90188023100fdd50570ffd4f179c4e62b52b25b7ce10826e990577a40867cd5b32bbcccdb6da207344c9e4edfd0121e889c174d43ee0302047c435bb500673065023100b267dc4a50c58e7113acff29cee46c4f4fd8d02aaf436eddfdf8af6fd582ae1184c68dfb5d8e5295d9e3f1db438f78ed02306759ebe9ff11a00390fcb8c0e4775def994ca61d1e0285035fa25431f20187758636ceb9df057889d6ca948f4e9ff9340302047c435bb500663064023001d85bc69b065e620b3f4d18fab033ccec29cf54cb4681c02d74185bb4c1fdd936b628065c224e33a1cc60abd0ecd70f02301945848268249a15571c028c2448ffea399773bc0758a287bfd29425a065dd79511f19e4574981d80c2b8383c110835f0302047c435bb500673065023100a17bb0043564d419b8165c4b162a66ab1cfbddfbe3ee8b46511a4f38524f7e9845ef2b436399c7d96f0ce21c5bad2f97023007dae077e3a078d1c728b5bc5ce8a71b191c068bab5bd1d1c6f0259ef77fbf8cd900250c462056619336f2deef1207270302047c435bb50067306502307c3770605b89aad6dd645143b71319b046350de2dac38388dc8738c3f6c750c574a26e3ae29899add8633e2377da4156023100dace77ff52350f8204e7e1ec1f224aca016386bd7abc9dbff9aae3aecac863828c734f84e497a9929a75b3501036fba00302047c435bb500663064023025d1534c2275a3d25d8aee9313f6947069c0b269c9480ae158d9f0eabff0f9a639f1ae86aa84816f33fad4f87aea972e02302db1652360c137a94512c3d343c614375c9d5854f02141bce28edcc92dd9e826686547d7a0c8c95590c5041cbb66e83c0302047c435bb5006730650231009dd6c447c87ba326bbf57f91397589d269091bd034d80d31db9cb9ad1581e4b8970a0e5a270ca7afe93cfc0b1f520c0502307fdb57b0dcf018f0a3e196a7e53a9b4fc86eee4ec909f26199762c14d7d92f7d6a6148ed0215ebcbb85351ddb71d88710302047c435bb5006830660231009def5f63ceae324ddd51c8677d0045f1bc05f577c897c1c43f7868bea8395dd498da506b597b367bec790ba4004bcbef023100a64f7b66ec4a161b8677654b913d63eac1ce1501fed62584e637009a64151fb2cf745e243d1d701503d4f60c19ae019a0302047c435bb5006730650230741838c81b98d1252c385c44b9a926a71407a706bac13bb901eb8aa1824725ca5a8473329a9e9bb5679a6639ee3b7ace023100962c43dbee3aa25feee8e5dac05ae2ba74f0e82ca88d2f1bcf85955c1b38c91d0a53e711b5df5fbffd41c43d2c066aa40302047c435bb500673065023015b0b6f39fc016ef21a7f73da80b67550fdf2bb97a6086088c919db67d636a1476815f325dea2dcb72cfbf2e46d4127b023100d817f8071e5fdf6e799b9aedf5876352cb4e05904e204dac1eccca7f134ca0f73970eb6797a5fdf7c29d958e05332a0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023049acba8c7af8e8f0a84d3ae1d8b9c3f8c915bca73508724ebf40e15a1d3f3efc496a60f6f5e1b2d62d35973c7a27ed60023036281c581d285357562346083f051ab05f285299313ed76495effbb7a2ffaf0dde224be3a544a8c7e1121f2a700214240302047c435bb500673065023100d3d1cb201335fc319f836f1357a7b962f6bdbddc0679ce589fdb4dc07a396817cb8ba9a94322b8f0f1ebdbd132de76db02301e1366a6748c8b45499ec9aea3cdbbd868ffa36fb009b610bf52ba5199b287dd36a83c1b464942b64b8c1aa364679dc30302047c435bb50066306402305bad1e6c01dacba80f6082244a92ea753bfb2416cc9d89682906e4ba87222d27eca062ad9e5883a7917e74a7f53855eb023031561e77d882b15e97cca1238b7e898f9644e3bc750bb4ee283b00615c668c206c39293c21809c2b2dae4fa3cb4720170302047c435bb500683066023100e0f762deafc89426ec7811c7b44b238639bd3047abb5d7b7b99c61eeecb5ff4bf1cd07a7bbf843546188076f0c65a716023100b860c5f47c3a2bbc65adaee8dd303994506fc5b290d4c382528a3d0b3d9ab321b6412b11a641f67946ab7130507aadd10302047c435bb5006730650230792150fedf104207523b405b80a12839beb7cf87f058369442a17a91379999674024544cc0cb444bfb367c9130cd378f023100d930ae2446d1440a44d8d2722f9c0f4b1060722908801576954ad5a7ec576c0fadca71d9b2280479d449ef8a7d76ea6d0302047c435bb500663064023052c1c105687721d89f047028b31a32bbe391ed5d22778bb5b0e8d1f56dbeaf94a9ea5923ae9c584687e143581c10485202307ff3df693e084cba3daa2ac509b7d8774fe61a612474bda3109f42e3e02ec5cdfebad2eda0ed141e00257d05b6b4b6de0302047c435bb500683066023100d06cca1ec03a938401be895dd73ea4c9a59cc6be6b24d76fcac21bc3125dffeefa0ecfd3fdd76b6c4ed66b76047d83b80231009f8bde73bcd080eed2126ee6c667b69da82a382f3ca275d73e3e9f874f7ffe6bdc2d8427cfc60e4439caef6a4ee86f910302047c435bb500683066023100a7565941049d5661e265adc546e2427527d8a504c22bc552361d65fb7a95030b6fd6ce8b88e49978e2b285c12b6a495d023100d295082db7206c48f5f1db2f8685fd4ae21d1fe7e13907edc8654c29901a6c62c95f4bf0dbc481b96191999ca629a4dd0302047c435bb500673065023100d17ea31a79c502a5dd86d4e814f62e2044f450894eb148687a824264167ed0f59be7b41af359ce5d06e4d3901148ed3e023038d79466b4385c604f4fd9306aad043019fddabdc48c5eafc0106b8fa567c9e7408668180bd8f92143774a45403fde5e0302047c435bb500683066023100a497e1e7c408535fa4cd434d44f2250760c874084cc31346ff288171539b71d3ecc29d20dbc20d797dfea99cbe34dc0d023100ce185cff7498273cf4649179fc4fde2d8692b8b58eb3bfcad2d20a881e8158ee491147498b797a5106536debfe5162810302047c435bb50066306402307d93422c27570aa06d0c61d713a1421a4f1120da3da45123b875853418e0abbc58c8999cc2835c6356be3ff30e3c95fa02305028b9bdde43752dc72c8aaf6052a0581b629df23244b9d5e80c4ca1db2e1de5d70d17684853985654a548ab697e138e0302047c435bb500683066023100d6985964c357378bc3fba2f53fa5d707145583d924cdb4a495265c34425174fdc36cb860e0db33e3c979327ed2d5a4e9023100f5fc7841440d3597c3ea16583340538f5f6f21d85275f96fe17abab78abf9fcd8ff8ebf507e3691fbbfa0137ac6b5efd0302047c435bb500663064023065547d18b35fa6a86113930fecfb2d7a1e11c0df1e9b783fd35e4540ffe8050ca727e2e317db1e19b46b2186f3da823f0230057f78526032cdf8795a6596ccde4c82891ab61949d7acdc7aa42a76b342acf7fbfb5afcc0b1c8ae069b539aa7fdec1e0302047c435bb500673065023100cb181117b606625de62d6d6103fbb3f9e067cd6c1f61947e7c2aeb42e0d3f1997ef3bd87395103e2117bec513bf2559502301c1bf125dd9667903d4708895d5faa6dbc26ef775829792859ff14aed46ea5b925599b876a23d34057cb47f1d09812b00302047c435bb500673065023100c0ca22d545f3bc65c13fd2d739746f7358abbae0d869229d0a609df7b04453b790ac2bad72a77d7c44e06e552076b0ea02307f376706eeaa2ad79a211c3e1b9e97d0576d0d931083330625d471ba85480d8d1bfa129ffcfc8c6627323e872f8252e30302047c435bb50066306402303b1d888da7629984598384a2379c9bb366adf38987b07d69618c440c34731463880ba2639d1cd135c8728e971510d06602301bde8090815b13f0dd090b4e233a6c59ee8096493ab6f3cb14ec9019624c1db776a97f3b77ba221f6537af21bba4cdf50302047c435bb500673065023100e96cb338e757678784428f87e5837018d05435a55fc9a49070310400555d6cb57bc0ab72c20454676ab1ebc516ff14d002300814080eb186d832d1489958637f435bda31743489a94a43544f342af78ff817bd1330e919b4836e33dbe04510b9f5b80302047c435bb5006830660231009ce0916e952320ab7992e7723608c5fb058c66cb11e30054b73f9a391c3b401e3feb7ad4b55ab5eb16a08ed45c858755023100a9aa7a9a5c93ef237fc5bb4943f85d93a41a2611d123f298b747087e27303f282fea533645887534ea4114351e19715a0302047c435bb500663064023046008d423e54801a9c86746a9da8ebc5c5e2456ae0c622d9f849072296385056e2303401428142232bda0ab5c0514c0c0230519bd0b4d3ef1182a66702665029270039bb170a1e53438d6213d025d54d480ff496d8c2629b250718a0af5139e579f30302047c435bb5006830660231008f4942e795902e2c001cc4184e95973a827aa747c6533981fc20158eefab61f1f0218f779cd4d8ec748157ad4cfcd752023100e4a37b05459b88a3cfdf1b62b43e906f04e90cb2548faf4603ba5d46561824e17188f6f4b938b51353487d66f60f20790302047c435bb500683066023100a2f33a687887c49f3646ffbb0af455b7b85931d1f424fa92757e097495bc3ea6ea580174b30b2ea3682ddfa9707e603402310091d32570c4f81f4ce971aec8eec7c1548d6e0151adbc8d72d988e34deb87382c7f018dee8ea532bfb8e5ec824a03a4990302047c435bb500683066023100feef84804bc445a6acfc60f25079d584e4ae0b0b29589b0db00d2da672728d111258d3bce06c30623a1654b5e8b47d7c023100b79e0c43ff25701885bd9f36729bef70581de2ff796a3b917112abbd50050a3284480d1f62b51e2de8904e81f6446c760302047c435bb500683066023100ee4c575c292d886f1167fd511cf74d98f5f704be6101ad90848764afb4874e73ad9086ba6aa4d8e59ea6f6bc9672d79e023100fff8dfebfe78a4676ab128519a2f0cd8fda37dbc6d4642d5c1f662821e3daf709f98f9add0116bb203d6a65c2516bda50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d52b8e6293175e723107defc3e39f8140bc1cac90ced0fbe5571e8c55d92b8ad6f8b6b6b6c6afe7f9f9f1b57a7cb4685023071f0461cf09c86452627401779338b231c1466d053127a3996b5e841de558aebc76cad6000080576eed31e229c9bfdfb0302047c435bb5006630640230022f70c8c65fe5b1e69d20f0e61d7a9c87f91fc5963c571d211d942ace998590e7fcdba9b1c9cf3aeadf72048eb22d29023074b00b21d536bdeb11aea1957c8e3fdb96f4965935637edae701b260135f200f10166a1c999c0717de2797396cd93f450302047c435bb5006630640230749807cd57f015fe18a89896463dc2366fbd150a69df5387235ec56c0c54f9ed644a5e7517af6d46a9d89823ada8f02c023035f908f55bfb17e67de72648b57fb1f37ae4f433d55495bb2ba1d290104d6fd753e18d83d834d688a8c29c74e52c3ed50302047c435bb500673065023047758ba4583708f94a84ce46eeb2253dd0ed5795f703667663428cdcd85844c0c624c47d0a330383b1c8dca732f8d3e9023100fb06e25c4e6ca0cef3efb8588fddade10a1365ed655975026ca25747f19d7a6145698a4ea58e1fcde097c05f835ab45c0302047c435bb50067306502306d23b2bf26553b585cd4ef0551864e24a7a68b42dda56eebd763251f957fd3f2a6504049fbd69998d08694356ce626db02310081dd71f5a989c23383afae840456cf7e019539d710ed05c5774cc4ec03fb19699bedde85a11c582db4f4bb12b64206540302047c435bb50067306502301b0e91d731b7d7878a486ef6e6e18deb868a166114e7d8ef349ba3b07b53df2b35bc9ca3f9e969d03648c12e6cfe785a0231009fcbd1907ef36b4b6b1f1d6ad099768b51f1adf8a25b4ce98a722a6e2a3dc6b356517ff915a19a4f594b876f1dc63f090302047c435bb50067306502302d823344ab33608338627eb2ce3329a5e465ad79f28f836567dcf0d7880772c9f65dd8886f6d1f4fdbf3204286e19e810231008ac8485ce9b36741181a172999adc5cb920d01965c66c81536702015ea9cd703f2152c3b6186e985da2bbf9dddd950ad0302047c435bb500673065023100cbde63e7149759c671684984da9153e0e44110d63e3840635d97428a2a827e1b9cf3f18673506b9f9805f751c0c2a75802300efd803ef4b765474104f03671dcf199bf668742e602bc65f7c654f04f5e0cf9380803fa5c12a865ddf6500a77ad23340302047c435bb50066306402301ca35f97928d254aaca76100330d4e15fc285853378320aafa673c4a02e71b2242e0ffb3104a3c4d4dd1c4e5e0007986023053c9a0927f4e8b535e16a672e01f376265579610852a190e6818ba013c9d4b194641d337ab3a096559a121d1ba132c4b0302047c435bb500663064023054cf3a33822a3e018d7af837ae6fc6fbbf172322887e8cecaba0bd3fef71a342825914db197f813acc20990ebbe32fd502305682201429f8f6a1dd8842533ba91ab5d4a85aca585778a18804aea527da750df3db83533b876e668c6ed22d3c7ac3510302047c435bb500683066023100a7f77faae65a1a76989bd42cf8b0a71c95196681fc2d1f91f98d6be59124ee83019283926e5663f80987af5446d0ba93023100a0a4d0e7aead5d851a77553da8c2fce72ac20f35fb8dc08aa3145bebdfba3e7de2f0c75856342975c00869a4751d01410302047c435bb50067306502305db97f04b211f7b86cbbed5cdd6c4d38356717645b4c8adbfc815f7fd172efd10a2cb05c967adffcd95243374d950e72023100db51668a70d23ddcdc9a2f47224f2a671943205b274226a3eaa7f469c3ea0cbec43df1ca3f6178af01f77b87062b684e0302047c435bb500673065023100e083b4763e7599da0319302a171c721d9f4f555433bb6dbb3ea56cb13ee3ffc0666277f177db11ed02e77eca77ccb7da023065b5545b20ab9455505f8c71e3e9cdd8d85959ed06b1436572a20b6d27756e4bbf84dc4c45bc7ef9c32473cd2ba04aa60302047c435bb500673065023069bbeb3e61017ab71bbb7ed5403009ac857a6f0a7dd9762328ac840673202f455a4ef5cda0778eb0fcf78524e8efcfd8023100f1406225bbd40aa9b2b1bf160a2b16950e65118021a4bd005eb25758ca386900612e07d84a8566c8ed6163419214c3860302047c435bb500673065023100e2a34523d2f0a2b5639da450975a92982b15aec220155252a5a99c868f90b3158b102db7774466cf0f2b7067fb6e143202307795088fcca5313821d06dcd107d27a89fd3d3c5dd5bf51600da7edd003d63e7bddfef52bf59ba3cf5731ae7b3bbd1240302047c435bb50067306502306e6acfd98ab096064f55edba1f4c6f601b088b0d42ba4627f2fab3c70ce9f609f60cebbfaa56a0027fa3d886af3869cd023100c9df57e41df2b2205c44baa1e9beb8d3c702fa85215eddfeba2de9db35dfd6e6a5b2ca976df8da2bd86c91e209be56810302047c435bb500673065023044f624ae9b9f762ae9071ee6d5aa62ef08202d5b24dc05127227b8459e8d4d3b27baf98eaf56c5e0fcc913f949c09478023100ec369ebea98608dba3facdf9306f0729384a683c52e86556f9c19e449aace69e95b3792e2e2b74a047fb30a23240154c0302047c435bb5006830660231008eda69d8bbc6cb3b3ab6eeedcd019cf14a3ecc5a92cb31e034b924c74735187b686b82ad3018a4628643731da6f4a6d502310081cb864f074bda90e563dfc2fd913c854628b750e2aa8ba87a44f6f8f658fff94f3ea96b08a938a0d5334099bd00894a0302047c435bb500673065023064714a2b441fe6c327e93ff190e8ecdeb5fd6313b33f8ddbe99ef7e74e795ae3d636bbe9fa70ce1ea20697823ac4763a023100ebfe78240775ed365bcd83dbd253ae5d142c6e9164c42769ae24c0e2239798592567762145493829db1dac7ed8c1121d0302047c435bb500663064023067db43b5c8f3434d33dd2b0bcb48cd5c047066b927acb32d093a98de3a78a218f7362b6c0350c6b482977613dab2ff6402301a88aec6f1407af46e8281b175ffa8046305ee4a2217306ba24d163592448af6ae7bdd8b6c6640b13c6d4a67998625e50302047c435bb5006730650230378494f62736ac863e09d8720805cc6a1d5aa398deda44ae02f31885b73b4efdcebc0632bf5c0f5a0afce2eae4f1d484023100f7263b4ea8bddba0c3ca1b441a4dba6304cc541c9b70eae93ab0dcf9cf19f212a637dac2cc07e02bf7922a8d392eb8540302047c435bb500683066023100ef050192892f82e142744931d300fff3ed7873f02acbb1df149620ca9624949264068fe5d2876ec8e7d4b5e96f15854c0231009bfb0459ad08451f68956d0b9e73f16830bc0fd7b39df30031d91620780c018dc78268c1b31df26a27b3c24c64288c6a0302047c435bb500683066023100cc1d29d18881e0b70a0d20ad9b4076234aa846d251e7600a9033c4702a40d2cf0f081c2f510bd8e1bc4da7ded9fc6519023100b3378316c3a34618ec7705b287a3718b0a95f4940beb72ca603444f570244dfe94de1a986c5b8a6d749b9f044380a6510302047c435bb500673065023047b8478df4dabbd2143969115aeeb88938aef9a767c4a56680950bdf50ee60779c60fed41fb4338b732996adad91e9ef023100980662569bc47b6131a857b9a742bb0e6ef3df9a13a6dc097740a1905a1abf2942f2890af9c7db52856d58ffa2c4b8340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7753921bd6543277a3821692928dc750269031653d6ec67ff13f43311ac71e0c7693e16d8057aa4b06a45d62bfc0541023011b401199c25b0bf8fcf4b467cbc9411d40cceef6f97336c0992b9a2f9f3e7dabca31718471852ffe7fd8d01945b71200302047c435bb500673065023100cd080ed3835335a9ad96dd713fd3b7824a01760d2a98bdcbe827b7da871114a506be43afe81206ae874c3fd874e2563502304c3cf9444e6f142fdc7276300c27af910864391a10a28d95d706ec2c27f2a6a8e1e739ca8b39b3a81326155bc37d434c0302047c435bb50067306502303a8a83f27544fdfc50dddd85b9c43dfa2513297acd88427a999ec6ebb2c75260a554268ea6df51541509385387af763e023100bd96558c48cfbc4d36977b2b87921400b5a2ae551438fba7bc77b2ae5585edc2538326562409aeb3496d1dfa086bfdce0302047c435bb500683066023100f46877116b0115f3dc0b33f9f7d04707ae94b7a3700536051c79c79e4623d2285754154c8f96e0434f1dd6c4a48a03fa023100afdfe74002ca5ac833b6e9706332d3e016643eca1a11ecfba66391921e23632a22d33dd0c42326501279241c0808c37f0302047c435bb500683066023100e20c5e69f6cae64179a9faa456f0e386afc3b7530449bfa2a5b400ef08e16638100e2795dd4cf91628711ea10f18d803023100efd3b1b07580a053d8a2dc822555cec0ead57ae6f03a1844d7346d73d01d2921b98031415206bac39d0d1793a7d895960302047c435bb500673065023100c9ae57a6a9a51aff0d28311554ce0d1070569cc02b2527a77a6c18352fe4b16a04bb461c5854b49e4ce2ce23ba43c82e02301a2ca8876c4c77c669cfe918443ba011aae64a94de4cae46e6d6cff1cddb46477316322348fdf5ead07cdac66d5f73ed0302047c435bb5006730650230010be2d0e081bd7ff956c60570ee8267778fdddb105e6c0469b9c2a890e6f191f4437e7ceadffdc061842bd1e26848d8023100e23c3aaac41fd95561f93370e3e2c8c019af68d9eecda08273dd7aa8901daa1273d163071ee1f08785f3f811a22946360302047c435bb500663064023055fb7018c91309de353ae2f8d863d445df526100015f8a70a4d788bc0d727d0111f39c1c4fbe6cfd8bb7a631f9f6dadf023035b2449a6dde49506523e0046c80a10b2563f20809dc971f4b14e9a451279f5f0b002edbed6505602172ae7a6a80a1a50302047c435bb50067306502307130310981064eccb847b50e0aaf4de94521c7bcfa73d8eafd2849dd7d43df672e0562ee7339ee3668d641b9f5883c6e023100b9ffb5db77437f0b1ff2601a24eb0210e526a6b5b752e6b11b132b7f6e9e41d11ed35c794a87ecbc366f31d116c99c210302047c435bb500673065023100e2430d8cd4026ce50afcbc61cc46f33b622c613a81bd8c0e729c251f809d3667590b2c3f7d80ffebc324bdff2f7f59d1023009d7f608921945d08635aa6a564c2061b60e5253b2f6c4a3753e0905de5399fd712bad232afaca361944a9625b3b8ca50302047c435bb50067306502302323953b1ef78d57199b5d04b12a6bb653ff61fa629f8e4edfac7915b8cb9e00e13150804d3c85dd32a4811bc82a21c9023100c45d6744893f4a900d3ce3d5d9e99d3ce8d56fcfadf980d3cde98a2b52fe543c5720e6813df09a1390a6f2b93e8f2c280302047c435bb500673065023100e8906a231a0513fca8a81dd60d2788b2cb72267a4d47b4756a147bfd9178b77d87e0cf9d06a1d261c55e2baa1dcd0b2102300f10cad1bb1746afa6317b65f36da0b2983d9ee9f633c06d3f369fd83af9a6e5eb4e64a3e04b8c64bfd22702890599250302047c435bb500683066023100e2462d398c53afcb41e1e50b7994ed6dd4039104613d5f49046cf1e2c939f5a15f88a439b5aa12b420b4e9cf41ef7e0b023100daed4b59350310db534f94354d94b8f2c01093370f961c5a9ce28f69a24bfaa256a5f16b88f84ec7d66571949c38eecc0302047c435bb5006830660231009cdd5fa18dc3685c1ac79d773761d36cb9c139da35a00bba575c4bbec8287dadd339341f7f2aba2387ae866a61455bb90231009d34d4d852bb2cf6bb8ecb75613806282913a0aad84da6d90736eb5557bbebb9ee9c12727a9ffbeed27a94ce8ba9e13f0302047c435bb500673065023019c0726b75b2230249540890b49abafda25bdcdf909c4e139806567f010bbe9ea393e3bee82b4335fef6e160d13016170231009f1f24a9c44db981ecd19cbad0132cabd6b4d3808bf7775e9014ea588237a67b31d5736f4f74bafdbb8568002d0866e90302047c435bb50066306402301fdccbdd7b5e58a27a889230b98e7cfd5ef001808f9bb031b46813d7ab93f5e526e7753dd95dc6c6ce85edcfddfedcc10230256151e179403068da95bb3d8833a8d5268589865548d9ae502bcb39e64469f0d75ee38fc365f42a625786f01aee20aa0302047c435bb50066306402300e308c8359280f13f15dbf21d68b2792e84f637095f64443aa1d3511008b38a23b29cdab74941ff7ae75552064626d2702306a680de51fe7202f331443e77ccf07e63a034153d24005730c6b79d2e999ab1fe7f45b6bf82bb4e52e196d429ddeea7e0302047c435bb5006730650230619bed9e82014cfbf3aebd040995d46f334d3f0ad91bfaa479dd77cf3c92998cfab4006dcf05efd8a1c3d2809dbbfc8e023100d0f0cadb6f25e622fa2efd5cea004f4a26d14c2a0ccedeafd2324c3eb6bc25076cf8760b4c0a24be9702f08dba9e219d0302047c435bb5006730650231008851eb84b6f1dbac7fc859dee2e8dfd3249674712f50ee6e9ef07a264537dfb4c8fad8de4e5ed903905bd6e92d10648102300c83edece46ced263284e0f6a778d165113fbc2dc146ee75513d5dd862ff61b480f90aed1d9a09133f098e812d5e82b70302047c435bb500673065023033a8928cc8325a98d09b1d723fa5f6e901dfd5180607c4825061c34e0f7b0153bf4b8517ece492408e9c93efd1f155e6023100f25ae2e9cdda01bb4e7b38f8cbf157728e22f2137c873a3e80c073ca11438fb283b0c8409464041d41b1d726425b8b850302047c435bb500673065023100f4126cd9ec284bd1e8e65b90846ddc18892747845a1dadd8bc0c626e086712c4100d0e89e2b6ef0919e146b764444cb002301a864600f0a71ba8d389cfddeb607c27c9b4446eaa55742201e4cc95f87cc91ca30fd7c85a2a0d649394bc2272def98b0302047c435bb500663064023000bd3d222e2a467a897b2e299dd76e77d3b885c13b0ed697f7152319cdb302515d7d10a2e18f508eed9bd976c9503e9102300dc68074646828c62da4b0d60e766f631a29310cf83d786628f6fd60dc69197bf9797df3018ca8e4db772385c51b9b400302047c435bb500673065023100d7c709721da9a3b6b393e31a0e133b57622c4bd2535fe0cfe7a500c90da35eb570dca0d71f87c10a277114c85be8837702300a5c0b85f7741114f3a4dd025442533166729304557e90e4cb53b46f42c7d8876dfa6e10bf0d0d80101319f6967ccabd0302047c435bb500673065023031f6a1c7fd8a276ec0e732691eb2830b2131830e2da3421bf1b9d31874378bcff4591f69c2169eb39e249e82647a37d90231009465ab79dc4475dd3a2ece8edb416e19504ea541d4ef5153d59cd102d09297a57f015127e10f32ccef7e677eb0e644a50302047c435bb500663064023046e1abaa0e31d81e3e4e245556c253541a71a761f2b92b42d55f3c816fbc2b7a2d6233a485efe67e089589f8c8fa9ea502304b1173ad59058590eadb1385100d40a1c2b40e0ae127c60b998bc8fdec233a9af11d150b73a3c6a1bfdce5b502f6b9740302047c435bb50067306502304d5450a4105ee95524e8fe5c21f8fcc47c3049bce0dc590d06bc3dec5620546d99370e8059bcc63ea5e80947a10928f5023100fb4853a56dfbf4239e9229ab09e4c542259286d5764b3f729bd4aa19d59416a169f9a51dbafe55bc66819cf0c21149ff0302047c435bb5006730650230626b72a97ae7634144422ab36af8e04b8e49dd8657ae8d9e48f9c8488271965296f2262f7dada74c93775060e1e07787023100dccb48cef995e6ea000c337877b63a4838fd905c0d7fe6bed339e77e8164c0ad23a5879c275941ba3098a274ba50aad80302047c435bb50066306402300933d674d45a63cff59dc4a57ae17450a57f6381d733c0b746b4652d1df7330441f08125e3fa34e409fd7f22791e50b402300b33cf221932eaf906e4daf6595152cdb7a2b76ec386ef84c466d5f75532e2c665056f3ce51f8dfe7e3aaddaa53d13610302047c435bb500663064023025218d947377d49e2a68fbb8786d07198989b630f49d799b259ffd151ec048370cf101b6e786b56c62cda7dc83660c550230771207e399e916f1ff4f1c7f4119eeb2c9d3609341bd87f38c4866d2fe26964ab83b500d99181dca54fe58313dc66c4e0302047c435bb50067306502303550a4083bb7d415a0159d2885bc25b30a57d376a864325c60f336090ebd41bd71711ab3d507b5f36311adc1ef6779e3023100bda0b5c117dd7b95ea2a0f7dfb2fa560330c0703584e98489450d940eb8ddf4d240bcf96f71dfc5a6c51a00950a366550302047c435bb5006630640230324b88fccbef824ca53e58c79ba1fd7f48b21b79c288379d361830808346f32c7bd00be409bbddb1f3ecde6a8278d14b023046987080b0fbf926b61e8bbb60749644528eb119bffae9c479e9e3abfe85d896db2add764020c45efedeb6987149a3e00302047c435bb500663064023078a4bcfa8bbdaeaf5f743412cacc2a6e6e3574d0b65778001b75f18aea50d201e30178e9e95305be1837cdd97f96526b023024e977b5aa9ea9e231b629b927adabcc667eaccb74f45af80c9b6ca8aceb03d5765543cca6ac20c2bd31d398ecbc45b50302047c435bb50067306502302752e9f2348ac8338ae8746cabec63cb7eaaed0ddcad6223a828ea3bb9e10a7c4882feb9d9470ff2d9fd6bc8af631906023100a5cec19873175e6d9e99afc16c943c11d598f22492947b6b8498fd58938d7426433ad7758ac024d745558087080e15c50302047c435bb500663064023019cd2d91466ad927dd749dc4bb45034df95ab8d3ea6e49505e96370983f242bfc707a6a2e13270b85e7abeb1c1f22daa02307b33aea7b8902b003e54b9ef5e03b29fe03d0b6184bd34cc6de290ed7c551ebdff9df1e325e321737021325aad27cfa00302047c435bb50067306502310099b248ccc874c36422449aedfc601e95c0f9da454fc5ccb1172240431a0af3aeab1ea5fae442e88268d02f4ebb4be36202301bda24bc6e4bb193d22037be215044c909b2d2ddacd8184384dc3dbbb63ce153ef55202731bd95a83b1cede644d55fee0302047c435bb50067306502300f39876fd598ecfee6106ff6f8a1ba039c0fee5227734b409c9df8ad94015d6cbdc8d955a0ce65edf8f0664b47f62cdc023100ccbfe55281f1d1012e18a2adc13782cc93b658fb09b933a2b7aede92ff925b40fd48f126bf4d6ca5fe7a72a2372bb1e30302047c435bb50066306402302119eb655ae36bee54f89ce9d8cb06818ecb9fa97d5c0825156f74418368c22c4342efdda9e624de474953acfdbce1b4023049479cde9fe866a2d0e9988313d1adb155d83f543bb3936bfe4e9646be592e1b9f20ccfc386564b24382542f50ea777e0302047c435bb50067306502303f975c36dff88a2604c3e7be6081a1d039d567da026d337e3840dcd89b462fd545a9b9d2a72f83de323b0abfb5c1cd80023100c2ba80908e9251bd883e8aa7cd7fcf0b5a5590a92b7e08b076fa92d674be3c29fd7c1e42c4d1e464c35ca9bc1092e5830302047c435bb5006730650231009f2fbc0ebdbd6778897058d99de8e88ff4bd4f949ca94ff25674fd191ee6a98bc60a11f3140395fe11dc357eb5f0e93f02300a0a4af581520287d59b5737e82f6eef13ae4073a4300292bc3f402ce87b6ad27e6d5de364b9b0e8edd460d9dc7ca05d0302047c435bb500683066023100a6fa7f9230c4b538c7cd14b43ee906971c6895181aed3f0e38f4543d4d2c555b72415eca4129657032c2efbc8a9688aa023100d8a606ca2dcab36f41b9b0179c8974deef4f8e398d34f4d82a1dc00fe47af5faffc13df67011978c74bc908e28426d240302047c435bb500683066023100fa6871676338c906c7debb3a79965d7b86e21c6b788fb5cad6c06c43b1a705ae434178feb86bc57812bec825c45ab833023100f6fc520b57048982938c4a6192d0686df219a7e5498c7111a33030b83ec3f2063d22a85dd2d7afdf9237e7bfe27b3c6a0302047c435bb500673065023100b249738421765c2a74650a9d9ddf0127ef63c050b54105f1d228c942506d662d8c85475b2142591d64d776768af90d6102307012bdae3bef22da8b5dc3bdd6056793b0aa6ead33622eb797cfc5ddcf54a8b06e017debd59fc46155a247c66afa8d5d0302047c435bb50067306502307465f733a8307d843f05600a465138cc644e6d0ce5f3143bf5f88d36b755ae9ea788930118a5a7f152df3f1c52a301a3023100a9fa76306a2167302d4c398d3aa2cef15a5b77159f0f2c308092ef987bada7b92436309d284952238c1eb903dd86f4390302047c435bb500673065023100dc0e37784bbdcefd83a1d458b010b78099d9194909f19767ff0a32551dd10d8c49219b0f0e7ca4559e0c67f3bdf3808e02306f06c3a45ef3d2304753c537e28e9c076e98154e404a0e611c05408380589cef2827f345c54321c7e62083aec4d4af080302047c435bb500673065023036cd3e23d9a31f7c84c9a41efe76c059900912df0d0d30ad78e2e04b7faa5bc41329ac307f97a94359dfd039550ea29a023100bc358c97d03cceb9224655346e9617bf9ff84c79ea22e4b37ecb41a01941d8ac2fb9c1f564fa61061f882ce409c1e77d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305c00ef0f6b779b8f363662f1d29338f74d00706f2b6c90f3cd64433c4ba679e7222bdd5d7230e0c77abee349ae1f0ae5023077d7d56c7b1a27845aa610dea37e5d37f022acd9d47595fb644d589e4fe9542afaf903c8827c55f85521d7210fc488ab0302047c435bb5006730650230272ac13b2168f85e25636ca399c7b3cb0e99ea24fb9270cd3e2d1cd8223d090e2207e7cbdb9801a44881918b455619ca023100ed7f181eb43373d54e1b9c839d0f11f489f2d63ed83146a1bc0c87f2dfb6a55e7227a97ce6161303a631e76068fb377d0302047c435bb500673065023100e0cc9e34abb00ccca9cf35e189a123347c38999c548d74b107621a79520a4d2de723f8adfa43898885526da43f22eeeb023036b6bfedff5fb4929817d5f0dc866bd47e2a76f181f40c20cc90501b87de8fab9952edc1e447957ab3e09419656e226f0302047c435bb500673065023100c5e8f79df14d125afbae89f02ac2995f67cc135537c4c0dece3c6f146dcafca784e6a54db0e3f760235f8b4d1e60581402307c4f52daceebea74808b87bc78cf92a44d570f2807247b836acf9f674a52141cfbde5376f4c765014191660f380b28ef0302047c435bb500673065023100867d5a2a5fd22cc7cc71340cdf8836f2b7b73ba8be0f26012da67bbc2353655268ae55d79624a2cd72082179f1787928023027eafc061770ad2ced9e5a6b8ba3fa7d14760648bfde88d9ed93dc7718eb5e5cc8d9dff87d89a05b991a0058501c8f600302047c435bb500663064023039d21665332220dc50ba8fe184c153928980252577f95d156b52140ead905bf58b5ba966966b7791305834dd81374ad10230550cb58ad77fc4ec5969dcebb5dbca87dd3f8acda917746d373c45de4479888b2fbd729a8a2e45e7a12cb87a63b747e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023018a1a2b7304bf0528c81ff98073bf3e2c3308f3df722fda28b50d1c6b2c7743486f9a83f5027ee9c86ef19724f72565202302c6664e7a233d0960972b3abd7d0fb30a4f82e765852b1eb6b4c868fc1f1c1dcc0c5fc22301cd131694d06f6e80bc8330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ef06477c871e1d430dec3290a452c1078367e9317e3098e384e11e591e7b5511bd823ef0c941cab17e592752aacabe8802310091d9e0f2d7381834aba0cdac49c80fa9d65eea02b3de63e40b7d24ee03eed94d07511284dcb4d1ce14c9f58e7cac604f0302047c435bb5006630640230290ddc9a0845a02ed4a4b3ba16274e2b4122d9018df2e83ba9c29015ac5ad791e0a47bdda9fcb002af6ca890fb8c0d2b02302dc7f3dbcdda99a8c4481c081dbbe511cc90f6e903e1ba390b71ffef04a002ff1af2494baed145d643b143fe2565e4280302047c435bb500673065023100f7b649c651f2da6e2668f24fc8dba9e115db86339932cd1f0d25672fc68d586af73a1eb6f059f16835e56c59b382282702301ef0be2dd06f8f57597648ddddeb163091651b642acbf21842337bb64e4f77bdb4b4f9298885ba831a27ff38efa231ef0302047c435bb500673065023014727639697be9c87c2ca61b3a9b290fed28cfb8d8ffcdae8ace36b77d948afbad5ce33e2fcdf10b19d50794383d0ce2023100b10274e77791d243695f25a2f5b80b5cacd994063593c9d35d7f2f06649b0ce6c11f9c89c0e3243d71a9aaefd37fe51e0302047c435bb5006730650231008d7a2b59c720be118ab7e43b0e67aa4474aa7b897824927057bafd268abb36c1b8b709373b19ab1aab3b7b2044af69e702304fd4cf59dbff071998f89fc3b522b9dcf92924c1d92105855e6199718150963e890aab23d29693ff79667c2ddee6fdff0302047c435bb500683066023100961ee1979c62a4bc3c9907f0da3759480724bafd3a90803ff585d4359640c7a804afb3fdfe992199bcc59a6b296ede98023100c0ffdfd8db7dc8d12c38b2d06988dd50317f5bf20a554e1116cb68506695942911939bb6f198e9fc6c6fa6257a080ab80302047c435bb500673065023100ed17102d6122a0573d37bf12cba332ee2490260bf2594c590b074493f2af7506ef98bd204a5ded6e0e8a0e6ff7c4dfb6023068af952e0c229191d33548fcc570d993b829a815ae1e7abd8d258e56467a2cc6479d94324b74de917f7d291926cf14350302047c435bb5006830660231009146c288a69af43b59ee72ecd20f76900c10f0bb3e81ea7829939c481dbe3c675046efdbe0b3a9347dfabc41b9c28adf023100c6a71b14c4be60ecae333f6da82f4e905287a2baa1f8a87c4ea18eb8bce11491f13dbd1af280589c9697fa3a6d7b7f0a0302047c435bb50067306502304286c306e119b1ce28b9c4e1313745c3dceaf8ffeda4b14189f866a79f68749f77a2c7d84cc4f59520de721760dfd866023100d409f254b8dbd2c5971aa08e62d83c756dc3adb8e5c1fb6ae7c53f891220717ae71ea7a94ecc0dbfdb3cd7695468bb2a0302047c435bb50067306502302df3299ca73c2ca6b5eea7494528390f894f5be6ec33d33fa9acb0afa9f304e025218b3381890a5491139c999523195c023100bb5faecc393bd6fb9393aa052cf01ebb0d4972c60f644b9084464a0efeb2729d88d020a851008cde34036adb4b31e5ad0302047c435bb5006730650230116c0aa237656a6335454a0ae2e07b90f637036f0ac81428f60b090e861f8128191f00657fb895b37df04a78373c3907023100f74c785ff797c373e09351822e859b086b4ddc48083e89b2be815887928e23f4a3effa5a32c2c7f7b207c51e1b4c4bdc0302047c435bb500683066023100bfe7487e0ba93721205141f5ac2c13ca8fb4956fcaf81f86de324d115e618add125ac014c21d88aed2bf75521efe7ebc023100d2f1402cd19ef03a52d344f67188be79d35b53fab4776cd82022089f1d2d239abbc67cfeb0f518724ec346d49303a07d0302047c435bb500663064023012007f07c860c7b64021de2d0a9c14d5ff86ae8fd8c2cba92ea6374680792e4abc2855db94128565330e851afe18f35002303bb09fb396ed2dbb401d9999546a33ffa05ea0eefe3f454ece1a68e5bc65ee2da1ca691417fcc8f256defbe29b0ab95b0302047c435bb500673065023100db509918572dcaf239e7e5b0b1f2dbf1d2f2ca99ac5cd08839a8169bf5f1ee42da2345f0bdd5482a2de32c83d3f26d5202303352ea1f6cb38e5b42ca975a92302fd7b6fb0c84c35dc6f27991818f7951329625523894841b5e5264c4e096e672d28c0302047c435bb5006730650230769d10b0e9a08a54390891ebac16206c0caa7d5d23b1fc8e473e2d5693a5e401d7039b185baf755449d0424226107715023100ee43c5be5d3bd0bb5647027c315418bb254f1abdb7a9ac8e08d5e657686c3657a094d4c189cc12250b32c56451129e4c0302047c435bb500673065023100cdb7b058d3b4954d0d1bf9a3c8b0c57ddece95a9d9f4bcb94a2b06d139e63ff41d7577f6f6d996b8f991411d816c13020230412844e771d8ccfeba2a75d760988f9db6b174a84b507cf2bc941a90d09169398b2cd9c417b532ebd6afb02045da4a140302047c435bb500673065023042b31cd4d7b3a58c0ffafc869e8c6896314db7b8d83847f04ee846bf6efe0f13030705c66df61a0a26be0df1d80f2ccb023100b5081d317d5677c43beeaba168c460990e66735befc0c9f26b6c3a51924cc455d45b6d9e9c80fc2777c38651fe9037000302047c435bb50067306502302af9740de9e0e279ee180175b0630f2fa339d3beef7d881cd6d4d51fb9e840b54c7f7e8762c2abe4a842f4048d617046023100cf5a054135ca832a72164128cdc9596590cf3f79059e614dd6775f8c08dfb0a3848a9a45e7e492a4406d1de30723e5a00302047c435bb500673065023100a41a115b47327ab79bb103070b8307306aa643708feba0756ce6037e85c9710df957f8a021a508190b67126f50d838d7023073626269a4e8a158deeaa70dbcfc1560ee9e2837ba3641b89ca3f861bbee321ed939271cbfc4ee63d45a4089a3d56c030302047c435bb5006730650231008f2a7dad79b3acceccf2a2890731728874c23c1d18273f3c158a9bb8b4ddbf954ca76fa8415cb9381fdeca876f9ac49402307206e0c39db29bf5ae1b90b97d1a18a8dff88daf51cf274709eba54207d694ee3e321c02b53eda513b2c349cfa013eff0302047c435bb500683066023100863c5c16cebca2283a88ac92634d6590d9afb891578406029a8aa3d9927c916fedcd6e7f02a52de8e354bb2e4b4dd83a02310081cd4867b74508e4aaffda333910438ff1f425527f799e04fe9401bafee443971d482381df7499b51cc643a9a83e93ac0302047c435bb500673065023048b5e8eaa1a7034e9dce884ba7e01a9f85b4f144f71d7d9673d1557240346cd98247f109c5669772d9bf9b8e8c1e832f023100e7340cd7222bb55e92aac78b468522b1acd834158181b89c38892c5387891956602cfac285d43817e880f6f7dea813390302047c435bb500673065023100a64eb9f416bd2cefaf205b5c2f19c387a592d2f8b739699a374bc224faa5f271c7929092b990161b48abfa18529ce0af023011caa958b43eb0507857bd241dc2a6d64f49f96280401ff1aac750bfb5e346e22a22b2817972b8aca541e2fc8799ab940302047c435bb50066306402305aac469ee24c518aa09f475db23220e98444d33baac52bf15e63fc0652f7122fc3a1fccd65caad1d564c8f993d4bcb2c02306df06d5c7166d8fb25f5071fb1d63ea8e2bdddf595793d9078a6a57ede4c14de41c9e18cba65d285cf639611354d30290302047c435bb500673065023100b9227bbf7a1bf65b80115f6a4b9cdaed792f5670c4856d04803e828f2dcd59997a24e1caf875983b1a2e8c989011b8fa023052e89a7ecdc1448e81f476a19bd511340b0996a636c6323bb66630d613ae112de23c918ab3687fa0fefec29137034f100302047c435bb500683066023100c87df2439e73420c12d225161f65686c8ffb8e7480fe7bb57a5226c10b30b47f8a431b88fd212d7d07441a39443fc7870231009423fe6bfc43e6ba100ece88adf4d2bc93c3cb9e50a078e1567ad8515981e442cd99134244e3bb772e020cc61d6403120302047c435bb500673065023100a262cb288b48be0cf9dd0273f15b28a9bbfcfa9654e6f0f2db03f833f0266f85da671f3f2b61bae7fbe87d8a3e9ace61023006f8dc6d2190308507c25f2f26dff3ed58aefecdecc91b4ed7d3249beb7236fac6315de8791ff39955a1a28c2b77eb290302047c435bb5006730650231008e47c1398e164c253a15cc63cffe58931cd8a02f2cfc58787d7510f55cbb9ef917d3e076b9c6a0c33ee296dbcf9fa086023050d6c5aafa42cb77d461560b819f5b2bca7815a5fb02e09cc7122ceccab82feef50cf3d7b02c7a1cfee52973f2a8da040302047c435bb500673065023100b549f794c89a4b51a93ee8508af5ee85a5464214448aef3c0d479febdc0997ef359f6b7b4b91b1acf84fd31c689b160a02301dca1368f4f1a193cca706dbedc7e681f9b74ce3107ea44e11d98f3d4c67fdc13adbef7617a6c6b62d47a4f758a604cf0302047c435bb500673065023100b93070c473a4c085eac24cce9999854eee11cef69bc1c3e3033635cce410aa77497f99f29eeb2db91d111b987ccff4ca0230453d26edf3f30f88ff5eb7c15ee6b77ebf404b82d2bf2559a199d3e03ee19804f58ad21e4c61a8a3bc61c8c92bcec0310302047c435bb500673065023008288dd6e239e90d6e343b09ed82d1f784e4318ac10e9e2947e094e5aef9080d0a403b260a7551fc9adcea6a57011e5f023100e308800e05e1a414dbbfd18f93a29ffb1fbfddc50d4479b1a9c751ba1a9738cd0b01290cba5a201b333dcf553e352f4e0302047c435bb50067306502304204e3fc75a9a831ab1981ddbd899814307024153da200d6de5cd09e1c84180233f5e0373f13ffc7df82bdbb41219baf023100a746ba5c769889938d82e51d914b6340814c4a137a98ea1b89292469189b6ce95001875eee6cfe4a87f303aaacc9933f0302047c435bb500683066023100fb38ab756a10a51f1933319bb5a3e0ed268f0b613734940756b1b4f6708f9658a99eca76c3044da7118fa20a726be956023100cb6a4723dcdb6e6f64910e060e37415cbca0eb16f7ce2a5e0d3a413dfa7b4465c06170662d70b0627e9fca7dc2dbce140302047c435bb500683066023100f53a8eb36d2ec7a21c96f4e96b76e6cc2e1d90767d9be768c361112058700d8d1487c88ddd196d4e2414cc3ae3afb0ac023100c5115e6b0cffd4a53c8d88d14a7701f2996fb763035ef71eec428bcb8ce6e709ffcfefb444833240a361bc5b8b9adf910302047c435bb5006730650231008d86e3d5419b310286a646fbd1fa3976659368db086020695e626d56f22ba0189b2c706a1152b824996f7d6f4cf582ea0230508561406556980a95835894595c52708cfd5f36198ee6cf5dfd82fe9d13a01719bc09c7a498a47f02e27cf11ac963cf0302047c435bb500663064023100e51120af3d9f35d1729739448a16955b7e8f42eb16ab8a4c4d538599824d00ba2a99184c85f8bb1cffeb35b165c3fa18022f311fb0a73dbb7b2834a2fea57cde6bf0e62ea339b7b50713f7652c02265b8fa559245aa7ede05cbd3a0562d7d70f170302047c435bb500683066023100d2a7d704b72de0c799c786bc940c5371d60699475fcc72b493572a81defad476371a9346be031946e078b5a467c3366f023100d77676f34e6f874f9cb18d088b0639f525b7150e10d4d47935e3e86e4a68fd4438f39a425f849cf3c66416060f523aa60302047c435bb50066306402301ddef9f1d4e8782763bb743ac96ac96df2cbf7d3bc5b1823aa3bbbf313953b9cf97f4e9dcafe736cbcc6dbd97ccb686002303ff9cdfd86eb5ad0b355864647060c1fb54f78adc9aaeee3c088185ae0ccae56a7b5e2426278a9fedaa76a7bdb4f18e10302047c435bb50067306502303aaadd83ed271ed3659a879530c699adaed2f2d9136e7d639ab26c58dfbcb3d6dac3e529287223d2210882844196cf1f023100edfc5687f9d1c6e90a67d8dfb2ff4562fe0532b3e1a1f9de39d58d9519beed738e4054b213e1e591a7b026045f090a010302047c435bb500663064023073534845b8f50989c6104a14eafa05562c57ae3170c9768002ce4ff64778e51d23ce468362ed2940956fd42bd4070e5302306b9337d5211298ff53cbd0422c7da384f9a9b86c8de7fc9b1997e29a1af8da8145d206ac52cf5c450d0ab6d6598472e50302047c435bb50066306402302b9be2d774f59ab43ddb800519bb48bd8bfe9d6283feb31d376d6de127ed4c2f6e41f450d813f814d856f5aa23eae7ef02305653cea0fdd54d6f7d3f166ed26bfcbeeccd54cf9dc5d0e8502e357fef8e9df7f09a719213dbc5349361192ab9a6ca0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f461baff4b4fc6f2dfe2f78d9ef114858851f1afe49ecf1b0db072de6718064872077ba97dc3ef239c2956e091675487023024f1a758fe53242d01fe42618e739bffc88ff493e31ed4ccd6b4c1b73b59bbaddf9ca5608c4f72a946fcb0c5b4b11afa0302047c435bb500683066023100a0a8320d1b67ed0bb734565ddd12f0a73d3d7ce469760693c2db4e3ec2f9678bd73a94a8151397011f9b35948ada2325023100ef4cdb0ab76fa0cad4d8ca7b04d7f349f2bfa2aef0b901fb5c5510250eb720ce5d4cf69f7fc1345f1348f626fcf6a38c0302047c435bb500663064023008df1822eb959c071294878b63f854c81ce33fedd6ba7511ee1bcaaec9ac238cbafc76bd1f582c3bc6377554c285cc760230160fb8cec3404148f3365aef9d4eae14d1b378e84493fd65f6f14ab1be7406e6b3ba1d01ba293d2cc8d76390535f3dcd0302047c435bb500673065023100ad129df6e08bb67fa742390e0d2368c17da7db1fd6ee0186e214baddb594ea2c3bba797440863a5b70a3239804161230023017bc45605b2c3fed2b4872ebf019196a0723b2b2fcca1fd20087e9783e3c7b78234ee0d4dfc9c832c12f5c8deee59c860302047c435bb50067306502300869522108c979438940016f0b4aa107cf86b8c7f406c237db0f64460bbc337b8fb29f21cf3db553ea09a421c4c1f1d8023100d9049963d6ae1397a5c3f8806eafb88b132a01fa25f5890335656df136415b275e39c2f0c9418ecbd3da069631f2eb9d0302047c435bb500683066023100df603816553e767c2c644acbb7d451fbc033c7845674a9b707300a7fa125fadd22961adf4da25c34b5103f7e50ae7b2a023100bbaf334ac86d0e53c5e776db2a15f86f36598da1bce0369c92e27a8b0e60a79357f1353f268354a0b1721c803f579ad90302047c435bb5006630640230117a6df6ccc64e1a6af14aed022fbd3bef68540ab40b5580e879e659c70e845c87e9d030f11729ad3a2f71b35fa5191602302870c63621e8d55b40bf94b8933f0c6ce4d7596439737f659401ff2c8660fbcbd91db67d1c9bd318c726b77da2c5da410302047c435bb500673065023100cd20d3ec40a0a3c9841fc32cb12549a130e7bc173c379b2f65ca72bf83bd6546dce23b18aea4c3ca62b409391e77f99b023034d9d86f52519aa0d3c234a933268e3bbce6711fe947c81dfaf2c0c18f8600c26a1ffda7cf75c20974559173ac8da1250302047c435bb500663064023030c55a76a3c8727afa141501d93b47d1803b4a5e7826f7cc3477d967d545f45b51f27f63d2e61f0da874c7a79ca1a778023068fefd04cdbdf19b5216fedb13c281e379635019af75afdf07f076688b02f16f336bad674fa343c32fdf86e25bd241d80302047c435bb500663064023071c16398d1c7d15669e46ffa2f59cee9b3d13ca1492575559b233010f439b415f4c7b23fdff5f91b0dab48e5cc8517440230450bb9d96253dbba8932bcc69e1da0149b0dca53a641bd2776451f4997468b32899386f95c5bd2dedb7c8f0017e35c130302047c435bb500673065023100ade1215416a40702b835b69fa120f107871eae069332ff594d7b879f3962f09064e14097b3250d02915a1268514d59ce023036943629b74d953cc7b86f2f289ba5d85f4598e0c5f2065ffb248ece684c59e7ccc7cb799ee7e2c3e23e1e9d0eb7fff50302047c435bb500663064023073b7e4aee711e88a3b9afca303be6283a1c79f2cd968bd09416e402d91f0f0340331600ec0de694a364d47b49f679f7402305fe4f68f6430a3afbb504151f6e3f1e9c113a9a71c736aa5abcd7a2ea8a5b371e09c3b3c692b9800db5da8fd27f756a10302047c435bb5006630640230633f7ab25df3a86ad8d1b1a4ef5a150cb49878cde7c2ade59495db583c9c8d028f134333c2e9b0713cb2a8b30b208b8e023017f98fe8372f3549afd92fe784036766a4c9fd944451501c290f99bf4672e1847f13f131814a55148110e71ec3cc56060302047c435bb500683066023100b979b57bc0d1e8d01c7e612cf767e7ebdc597c5f662f125d3a44177b89113edef7d8ae3d999e8430e682908660cffeab0231009b51822903ae377e3dc9e35e186db24db485822ed46fbba1ad1b54a20b4ea40458343d6b871fc4c748c9e8e03002d8b00302047c435bb500673065023100ea83640f9ed244cd4039b77097539084612de7ad26833604b511eba713ccff8f242dbfd77e749fd7a8886a66a836b800023037d798b5f4b9c1de3311e65c777bab925b12e87cda4b3c47211ed7af0c2d60130a4ab8b70419b5aa91d7cb5d33c9465f0302047c435bb5006730650231009a0bba6f7ce85e9be8e4fc56122f0fb45cfe3cfdc61f68b34acef35371eb243dec44cd05d3c0b31a28642e1ceec96a000230529b1ce8ad57511678c8cfb4a11f6add2ab4bf8a559239066877adebacd45f20c994ffe2a0f19536e8877d60536989640302047c435bb50067306502300c272fe5e8fbb2634ba78164a11db6c50ac878922d5f514e49e11975bb62e2008229e9f75c353f431923e8389d5568f1023100cf62f79668023ca1ba583007a7cd63b4efa3315864bea212078e640ed09e96566ac1763143b9c19324c4d84f94f303c00302047c435bb50066306402300fa0ff4ff4b999ccbfeb4ead15ad80eec4199636d7593313da56683cd886b59a00a93d5eb8bdc1b6f05d734b121b87be0230414ad6475fe047d27732e27c303b4a01c343bb2285513405497fb18933f09a6a1fde318b7cad0534526bd728977766dd0302047c435bb5006730650230274977f6018669f40549b6fcb2c82da3104c1c468ab02fbf42ad7712de104033cbb756df91a02fe8a3b4c4adb66b5d97023100c3940218b2d9d2cd0094a18d5408ddc74b73bae8bd6953ee6495cc4d9911c24e03d39b6086d90125ace1b434aabd4ab40302047c435bb500683066023100dd80bc26b1d20634bd18c532dd0c621e2ec407409d6bc6c530ceb936e00bd11498dac123513fbed42ca71d99aa0a2418023100bec7cc13a1c8a75cc7c4a2a8246e76031582df6bc341ebf740a0827ae12c738d777cfc20f6173a6e945710d413be58fc0302047c435bb500683066023100a0622776a146b734cd095440ca0a8c6f1350b265e6ae65acc6279ef3f07b3ece0ee80ad8ac83fbb5da8e4481a2bcc20c023100929b5fd5365281c227cc2e8b6327a492190f326455e53fab41c720eafffddd1ad051b0edcdb14fa8a3f3c9b7792df7d00302047c435bb500673065023100b4d7319f7de6ae68f23b563f769f0dfec6558d6818d7e36da4aad505f7aa38702b9f3350c37d94e184ba9614528e77b7023035cef65bc3ce0cb280d3c7680a3003d210e35a8d2214d6d70928971447f975c248a5aa96b5ada56923ecced8d098199b0302047c435bb50066306402301413c69bd0db7a77598c69873d1dbf86dcf6a3d5ca581c5b13a8c3072eef392fa7bdf41dc79b1fd952cd622a13cbfd4102304658271bd820c3a03830c6aad707e4079a453452dcefd54a91b84001b03c59f7ad7c36aaa0118d2e17f28fa0efee261d0302047c435bb5006630640230399a21987d56b3edb35318f02082b0f824d895312eda9ecd0237c9ad34d007e021f24cefcb489fe6ddb2e470bed9aac202307c904bd55f7a1943381e181947fc4c64ef959ac58baa8a730885965939511703a061717f014601142d0c92a9ae0bae0c0302047c435bb50068306602310095576d456206434293fd22406cf3393c58b870a0e2deaac1c27c5e270744d9444838a9c913b51e4f1544e29694e22914023100fe8284636c9195c1f4f941749f110620ca1aaaaed370afddb031f9d6af905b51143b5a7bef1c30d8af695d14a810e7460302047c435bb50066306402304b521752e19f932c6082a46cd9961f346d221509b26372658b5e3ac04e1503a51c1a4e387bbeae130e0429783d20f83102301b5180e70be79b1238181ef843eadb9298e15e41fcc91a1df67aa05c82695190d3e81f3f980d6527a939604b16c835320302047c435bb50067306502303d9b6d0d1bf0d0733584fb4b9feeb7bb385c408a186ccb965048095f355de1452e5a0f853e390439a968214dbae40c6802310091894d65b29abc388246335bb19bfd6fde96931185366f78f903e9df982a6ee51913e9dfe6d55f1c20c55f5c71ea74d30302047c435bb50067306502303e925f736236325e3ce018e3b00f592e6c24bbd1c040ee72677a24ad62ab4affa2b85acba35a32a353f5ffb581a88f040231009fcbc22f60a49970e22da4a49e348357916eb3b087727f268d107fead5009c280f971c3ba29c48cbae98c2ea685e727a0302047c435bb50066306402305bf5a9a995382180e5d813236568c6bf1c32995d875f659d0de0d610e0401b0cdb49c24d6bc5ffd65c45cb900f58b5f00230763d13777d6299f4b1353fe3db3c65f60852fe1c6e889318708ed349d9a2520c2975d091f3b61a6e2fe932a334cf018f0302047c435bb500673065023100c0c5e6d47cba184df56c98315e70c0b1ceea74712260d6f308931e45c3e983f1bfdb153cbe23ae125c916728c3e4a2690230536c3073744011e4ed68b31df676be1cb7e42defec5f0c6476549ee54d38d0024dfa14465ffc807e7304129c7dc90de80302047c435bb500683066023100978f838cc29a7730a7d8c204929809fe7ead4eee20efd19b9ba8be990f37b2b13c45d1cbf104af7d07471beafdd83cd1023100fdbca350463b3ceb5208e255b8baf551582ace692dc8a41afedc4ddf0e34cb3bf04845026015e59d0c4272233fdc108b0302047c435bb500683066023100eb73b136abc85fba47768b02643e2cb282c7d39ccad19c02bb949790f5d040960d582db4e616dce2e6aa018d5bdacd17023100fdde94fe3d4cd23d51e1e35351d183ba7272e03cec687f434d058c79c27c4ae34dc75451b1c00777b989aebd8bc10d820302047c435bb50066306402301a1e720efb89cfd5360795c6229cc2ff3c1b3cb349d7f81cbe813ab07582625de8ea3205966ea6c983fd46080cdaa31102305b31e66a5ad6f56a8322256ed857b291f0045afa5c3c0175196891d8c8d73ea366c9c25088c5750253784a3968620eb80302047c435bb500683066023100b2730c57ded0b4f7f5cc7c82434f19c230f3da77f2a462b0759f19979d76a1544f33b22a5d03b71078acec533840ab7702310085c6dd550d856d5dfce7d08fc491d7bbcd48dd50652164560d1b333f1ad31e4dbf9d992884929d9b57c2042bc2f202d30302047c435bb500663064022f198295ccf7593bba8a4ae0422973bd1fc9be5bd90e0110d1c65e7f8e54d2a8ae7663f4daf0899a3229cabd7b2680b9023100fb63a239ccacf3fe9d87bb198d23153d3d8f177597292dfaf82eaec7a42080caad160711badcbb42c5ea171717a260d00302047c435bb50067306502303ffd98618a2e73c7a454c42f484e8527074ca0c1529b1ea08d4fed0502ada27446418a2e72df86ba46d57bbc9112d18b023100d80df89df64c4354f47991930e3356993733a6d2cc8238271e42ae1c85ea333bc35303677314d35d003ff447a51a4eff0302047c435bb500673065023100ed39612af821e706fc2cf03f21421e78a37460f04d795fa5897b5c3e883a55ef366212e62703cff68a65c7cf0d77e4b00230572a256d7255aa695779abddf79d730cd2e856f263a6eb54a1fd4783239d6de41b894e42099d9ded025b8e4e6fcd2c7b0302047c435bb50066306402305f42683730787d8c8a8d7a76e2f46100e1fcce7f9133f7cb76d6e48f740bc39e961102f5d9993cd5fc2980fdd9c313930230476ea3de7479de3c86580c6b60e2b8a1237808ba07ad6dd823f66b4c6bc173c01da135b0f4df3685e1474b36dc4d03eb0302047c435bb500663064023017e69e0a28ce50b82c914fc345b4a1892b5f0d15cf840b3eb066fabccbd97858fccf31150b480d301e744f5150d71e760230635baf66b19e650b789a57c058a8eaa2aae319d0f4acb95b170db18087843c1699eb7245c45fc3f6c230cdabd159879e0302047c435bb500683066023100d25f879abd695027f23b75a81a9a686f6365f9bb419be0ead388f04879d8d3bb792aabbb02f8fb6b5afb71e87b6806e3023100ee7ea04602dcace9f712c403d48f79826c78d031dbe0661acc763aee379eb9dd2648a52cb7844f8e3bf588304305eee40302047c435bb50066306402306fe79dea56daec943876dfda59a38ebb73549ee6757a3de5a0cbbbe252f825ae8b215bb0518bed495ed248c76a4354c302307e60fde410501d0742a20853312d0aa048a8c7bf7b9d180da157f65ab3d936ad5f134d505fceecfb6caef586b0a0e8650302047c435bb50067306502310099ac6f48d3c7463def577af63f89f575462bb51e52ed928313cac502cafcbabfc1bebd352be0424856f7c616671f55f10230673e9dc695a4155c5d6b9a491f0a9bd6b2a0fcd4f87ca752f74f7bf82b30071c5862c9dd93aa32ca0496750c20c290350302047c435bb500673065023100a380d2fced3136b1dfb70f231a1006e9250fe99e5649ee997e7d43a5a3e8c98e8d481c331b0d89b893f98bf3c006ec06023035b80193c3012a8db4effbc1511df9319d394a6126d432d07c7f889558556e8f6031facfd0e18bdb7e93ca6db0b80eb00302047c435bb500673065023100baad424a908e6b282c520701334af6523c26209c3b8c4e48813b91b9c0cf2514bb78f47d6ef4184d190bce50705eb2c2023003eba8ebe96a5b51968e09d8ee0da3995dc26da0a6ca6707660adea245a88e504d4a84af10798e9c881fc676dde5055e0302047c435bb50067306502310085c248adffe8c169446433bc97b255bf9373a250904e1fa940233555282ec5049036d45825dbc802ed61c9f652ab6e1102300747449aad4afaa1a2ebb5fb5fdb204af7fba2a5cab69ca8413459ad945884e793dbb14da9aad7519c1e46065cddcabe0302047c435bb500673065023100ee3b1b79f55b435654dec6a65e883aa8fb0b4a5af7153bb5de0f0a0d41ea9636a1d697e0f32484553968f0271999640102306dec9467345eea86e6c2390b92046a62119da23f74d8286d1232447d2a1ef3369c91d36561d9f230d7fc538df25e69cc0302047c435bb500673065023063d40d4f88efe3457ab4517512c61ac80163993eef3f27d0d182695ae8ecc20b5842a7e338829d525fc1bd642ca13285023100fb2761f3404f4794ba79838fbd32454decee8780cdebe8f7dee0a65e9ea4653fa8b211ad75d509501b518cfd3bbc1ade0302047c435bb500683066023100f21006fc1c55fdd0dd5b8d06d9a50b491d39b9d98262c8cc657cdb2ad19bf578e21d5ccdb1debf7c3ff0e15f423999e7023100a55b00891e200f3904da6da4fe33e645b8b047425df9ee0ba510ed63cc8dd672d1b0da4f33c3cbfc197419be24d5c7890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307802cf0b671b523715e799e0a30a5e7975962353041bc03f2158ef4e2c78d1832a8d0b9357363c202dd9784add539b700230596f87931ff76cba47a1933f486154beab11b824eff5368e36c12a8087a6faca712d7c2fbd146f5b30693c7698777d3f0302047c435bb500673065023100ecb648b48ea825560ef96d287b26f46b2301450d6857d175a1eb55c2c66fb8c24c054b9d922dd32b918c7dbbc09ae769023065569d3f0bed61cb1fd499b92a37ab958954b8310ffe2c73fbfb5ed796b8b808d032465495e2e04bd316e0c896f7c8ce0302047c435bb500673065023100bbcb85e137433f8e96dcc7cfabefe79f9806451279232bb7e159d56ee2eae53e01055253d1a32d446f73f55ed4832d3a02307095a271b1eb85461c9539e6af288f25d7f00726091752f372026f8894acc5a07370f20123e0d3e11d5fb4d6e931daf90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301dc14976e5aff6d50abb4616344b52826b8c46f3f9169c662b7408c0040e7db5f7f79ab8a17f786f264e98f40145a9cc023100a009d7c7bc9281aec57765d5d18896c0406a33d054207d3e435daea83b8b28e761c632c78375bd0984191bfda1423ad60302047c435bb500683066023100a32eec21708dabf9d5e39c9c363f7584e25ce86c5097df136e89a7154a8ff1460f098bf60a84cc41068c40f5e3887e49023100dc35c5fd621551b98582d0428007eddaebdf102aa9b698e1c2759d1412d9f53198b48ca003588cb6516378b183cf1bc90302047c435bb500673065023100fe8026e44c5ebf5a9fc48037a2a0a4babacc94b498189c3d78919ab1b2b4b51c93cbf8494e8177e5c89d3cd37fdaee2b02302f97fdbe06d0cb7163c74237f39a45bcd3c0214bfd063db52deaf3af2c2f5c5f36139368b07e1bf6156077f055c551e40302047c435bb500663064023009390e2e63621501ca39b46dc6f8342d755c0acda9e1065f37d5af3f983be14c6b2af17ac790643330002eb4cdd104b1023008264da35188121e816f8af49632fe771a79f981cb3b334774cd41b250182ba57a4f4c4cb53c298974ec97ee66d9891b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e1711b8ff413dc5aa0534a98623f9f77b7aef1bec076e0a419332dd83977caae1c0f5aefb9853604638a2b9e33ab5058023100c8c55162de39b417a2606ba906c0eb4a3d09ba808beb5f88fa907d1661383fc9b704aeffa37cd7eb4e5f35a380edf8f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f6681a7176c91c32a4f8dbf3fbc99c7908d6065fd892857e738d2f88851a1b03fe199448d6e45d453d2a93836fb2b4820230652f316db4c7cf5a58b705e31e3c4c1cfdd910ae236a9858aa483b7bb9a423bee4744cfa55f9337a934a0f54a5da4b860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300950bdd5aa26ccf3e0dae0cc9e02b610342175589e234c9cecfeea2412850a617422dbf99af1e306e3f60e2b51a145c8023100c524a83c054e775cbeeb19a0f63797dabcf5e8c79e68b44cde944796fa06e2c3744d2e28d5e51ea082ad7887632a51760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230302619914e2c531d79b6d2204e1cc438eacb92b622f3ac938edaaa4763d06982d8511002e453f850b05712b6a0d26a7d02302714f13722fead5c5eaa27998f6033b17a7d57c35f8523187f82bd21bd66297077c87100d1229ff093c497dab1e7defb0302047c435bb500673065023077f60419d271ed028210b44efc91e3c28ff20478d3ab90d99ae19d17a93ba20c94de7d84481cd7bb93adac01eabef6c1023100b8edb3dcd0dd625f375aa37c41e7cdc0c18a90032ef8294ef5ed8d117370625d4ae95c9571e3785e64a55ea37452bf780302047c435bb500663064023001dc5b7df7db440db946262245ad38824aa2f47ffb389afb5b15567aa83569b8beb9bb4368bc51697695f7a7d00191e902307c2a23f6d5b82487ac28a853d7dbf8f2f8264b09e092dc42a1ff54be8f98f8d3951344ff303709442cfec6ff969241640302047c435bb50067306502301b6920d52b5ab6b4d507c360d5de38afe1ac6d02d5040a2711a55b283bfdf82940a22da0af6e2356246c70cc563ccbf0023100bf16a2f64af34ed01edfb8af8464198f080ec0e7872a3d346b16f182d89dd6205c4c82e357dd4084af8d9fd8be28e1910302047c435bb500673065023100807dbea7f04ca7ebfd7fc8d042ce930a05677878623c8d5637d284ceacb2e6b3e90286606eddf40b4acd4a52deb65b4302307782e3f9b19edfaf01c0ef95601a78d28455a8973c2a2de82ed93fd08b970d8c7dde84b9775514ae43cb4ebacb8e88ac0302047c435bb500663064023006990ba225cdf70dafc44ea4ad8b796f1002a78b1e6563e5129b17c46524fa5a621b86111a68828f0311c6098cd32e960230440e2070fb3da94546a8b8222d8513d0be4a203e98647223f36c5039c6e371776aee76627177882e7ff71c9e5a6d4a450302047c435bb500683066023100a73c100764eac919874db425f603f0069d0ecc30a94b3d126f1a8aca69c139ce184c4975f2d3f195fd42578b860e2b4c0231008feda6f1484ae42cf6fc98222e86eab0567cddfb26e8ba3f1a19ebd7db04f14e5a35188fa2119f8c170bef225e5fd2fc0302047c435bb500673065023043ad1e8dd5f8824dfa95a99d66ad766ad8a3bc0986d8cacc9865deafd6bbd8a8c4fe207ab72c69501778dacfe299b6f5023100c2496c81a2cc1461228b32d42d7d89b7658c181d8294ac116e03ceb0cce36a866f25340120918fbee8d91da4eb02ebad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a9bb7bf07b9e44d2f155e54b1acd3cd44036f8cc054519d9704bcafe6e5a334aa62c3304c2bbacdc53147bd9b9e2eb00231009ddb1f52c1fbd1b8db3cd31686365adeb31666476af467c09094cab59ee4f2015fa829e8c177834c7d3194319329ffc30302047c435bb500673065023100e585a10fc77c04a97b6a463dee844b10f5206acec1f4996b83f88b3eb79e6908d4973b0c31fa2aaec85a37cdb2a7e65e0230673442e4bf7cd04810037c00f8674ca5897b3541b408adde9bea2ffef4a52fda255dcb7242134e435667a740a5e194870302047c435bb5006830660231009f968a1bd3712e707c91c232eb86f06e9a74510735d1451c93c8d460aad2458f458be58650320043761dfb3974affda10231009b68bb86c008077a41852b82b346788bf62a8edfb45e99257b5361d5ef31cf519ba1a1aaa95eed04074bd44d92a94a3d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030da1687c3ec54f874b41658e83bff948ed60c2d839e2db8ef511aeb3f4d695c710a085f88f946ef456dbfd7edff8e22023100e38878389e19abfcc1511f9195e7e2f46e9be15ca327786f2ef6fa76a94c2b38b8c91064b293f7618b568c152b64915e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c80c14c0495b1b0f5b1e7ee369e9dc6da78bcfe3aecbae4d42139ce03dc3bee287945edafecc16d3a64ef63ae70fe19e023100d1e1a62c564a99e9955fe219ad1a107f0c3213e7f9ed62b31fb189b440da4f3c407b6d583b9b495b9fadde1723f5ca730302047c435bb500673065023100de23a722aa02ccf25edc013415e05f8597eee885469afd53f92424dfa068d741fc8d863e62ec77988e7ae4f17578425602302b3d7ee0d276080068b77c4a886f13d1ae75c98bd39f092b1514155e0d6a68664d5e229cdcc4946bdfe8c8bbcfd6b9c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c9adff4e71fea9f51ccec330605c66a1d49260072c276d75b29a17275a0024e07b1933a86427c5f749a7b939e212aac023015243b2155795ebdd231429eedd60addc9ec8a6cb9b7953b96aed9ac7bf85695695ff4b94935fa1efdd62461736201ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd7ad3cd0362add176c1870e0468bc5e6b5a9dffd0e450694facdbd8d3c1546b63f0c8e018d740db0c72b927e282821202310089df7ceae5d458f928fec90f0383a7bd62cea5902475afc0cb1e77761380b3c08ec8535be60bb92267e733670c6451330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310098e875c668bc0527c712ab6341f9fef9297826ec329485a1c347b7db7d06833b01e56e4187404fdd12e27940c4bc505b023100ba317cdff822166076b30cdfdd154fb4d2855af26ab5a09518d79d2ce867356cd826855c8077831ab5ae8736e8b4c8f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aeeadbabde118a76b77a9d225faebffc92da56a456c76bc01a2eba7b69ee78676101699e9359a7dff78b967667e8376602305a11ff14246c6276d08d0c8f6f4c7d9c25ca171818a93ccc6ab223807320513a4dc5dbaf4259190e381ade99c41d42900302047c435bb500673065023100989c36de297997195d1b2e73f485886f6c0eb17249006c5e6c959c3ee6fbb2b47207a9b66231cc7c5855d067568b4f33023020dcae1311ff5f10cf1f3f281627c20d437197b93029ea4011130e057377d7c3fb46de14ffe6f90fa31f726d525b3d1d0302047c435bb500673065023100b8a41df5bb3c41674c8275e7989dfb890b52f2908cd91872f4c50b8a4cbdcfae2f16355157dea4a5441ee7e261bdc9e50230441ec30fa89901ea0fcc901c9b9dacd2340afe71eb8f50525d2a0b08a8dda0804c6f42e4733bb10b45209b33f9000c670302047c435bb5006630640230222f668736e1491188d1a9b352655aaacdba9b51e1d6b57ca8e94423eed99289207f87a7b40d4acf61def5c82dd319b402303e6103c23ca5fca3d116b38cf4f90491a41a2adf359a45176c29ccc3d939de5683352bec3b708b9b5e088410b94e545e0302047c435bb500683066023100e39234354f6ad0d31192817715be8ad8db5a627098b8e6d0177a8ac9701f91e2744f08e17ef28e1a8850fd8765f768a8023100f4ff10a9d78731b905c953ecfb1b916a11e136702a50e0254456d184c43145605b439a38ce54aad345a6bdf93cb4ecda0302047c435bb5006630640230650f47c4b6073d646e54c571731dcd5e6755aa6434ff07093537fb142ccab602251825893b54b27bfe5a0149774cc812023014342cdf2640fb253d79e69da88352db61d4d047266c73461a5e7c6ecd37520ca0bf60b429a7056c36140e42727aa70d0302047c435bb5006630640230056444d8c844b52d646461f849ef8ea18235b852813e5d609d55977252ee50b04b4c684be3e33643ad3722719f848b110230761f46ded4b10fa5effbe6834027f604a8981c529d27a40e15a329247aa0dd3de6cee4b273b410736688090b664575670302047c435bb5006730650230651b376eba7a675e3591089f1dd9e985094b36a34ef0e70be38ace8c26e11e5b37f25c8eb165d6c6681f9947ff38f815023100e5bd25024fc845e2c0d05b486cb51cd39bc19ebe2adcc0aadb34b5d3d5a8cec20aa3d4f6a8635f0ab471e62d9377ed3f0302047c435bb50067306502301d8acd514119b4d870170acc54b2abf8abad5926305004251351cc90159c0d589309ceadbc7f879ef9db82ef7bd94901023100d220f6f6a7ce2c9a54d1e89758c43e22c5194617ff8f1f57b61925d8cd7a9141f11cca3c2d482e43d680224b47cbdc910302047c435bb5006630640230668affc371dc857746fd5d485fef35348d0f3cf4f3da1f5fe6b4e7bda5a05a6187246faa18e094a87643b06546f0fd03023002c6092a79cb322db90c936e4343e6e702b3b631af3562414e8ab4472c033e92c11877f244412458cbf9960c6c21e4820302047c435bb5006830660231009e6f393b90c03e164ba5866831ac9ed303ec5a2fe1e2e99e6bd72018e20c1b8f5d3d74e579aeb5fb10a1c47af655dc34023100fb61a64d72d93dff961ed7268a9b8e6958e03c539e7b80150074ca01a0224c986c5ff8f1424a72cb4336805398134afa0302047c435bb50067306502306d6e91177335226f419cf594e1e2389c905368ef0ddb014e93c5f7b6fdbf1ebf062927c931ea2b16a3c3051d1a8ac77b023100fd19856939859a269e5c32dc0b860d9d2200bade3010b3f2252e9c239f9b6d5427956b0b6913df4943e90ae58d06e67f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac4080b181939741378a734a39a4a40e5f516b215d6b48f1384a22062193ff09976bb82ffd48d51d942bc73b18f26c3d023100899ac602c133f938677a6be38851516c8e853d4e6f5524d423a9e4dbb8a4b922385c28d3ccce9910b321043029a1b7a50302047c435bb500683066023100d2268450f53c02e33de1a183ba5e092a4fec6930101ea49ca2a2f54309d613f581d1924a580a80966a8c5fcd84be3f66023100988c61d7fcdb998581a358bf7d2516a79e232b5642288caf720bae023a874224117825d52748a00c74bfca57fa9af0020302047c435bb500673065023100e6c8000d2172d046dcd2b13dcd669e146421e49abe923eddc6c2ba1e26850f8c561866c6bee19ff2b27dccf957984d6d02306498dd18d641aade0cccd476c3c3a0a1babb84261e52268c46105f5f20ff789a9d13c803b388e2670825f9e183affd420302047c435bb500673065023100e7b10bd2631895ff97fe5a2909db85d209da3507334e55ff3a636bff1c883bfcd9ab3ab0e4add8bb867a3048969327a802302ca261115082f445f0b508944a4afc21112cef0b42bd56387cf6cdc18915d05b71bca9dcc38f8f00ec515d2c7113ae160302047c435bb500683066023100e1d9cd3c1c06883c517af9fd0b6bd67803ce52d924da440e4b4e1276bb43bfd162ba16d7ab0aae62f88c89f4680454ad023100865d9355b0eb714ef2345fc84b8fb17c2388ba6d5d490313476ec71debfbb1f5b272e956736f30fec96e03471a70437d0302047c435bb50067306502303d88fdc5a35f5c6daefb3fe4efeccdeaa0bc6b1b28469c7afc3e03ec0c7cfb2d54a6ec361b4181e4a3b271dcfdf2b1d6023100a96a7212387c127e177a32754553ecbcda3cdeac6ac0ed489f6f5b8d8927e793a1cffd23718fc253ac1f6bcdf227ff230302047c435bb500673065023100feb5267d608ac80dea7dde18a6dd10a4e16dba108a805c49ec2979d13df5a101507f24f2dcfc1e6221b2a0f1284bd09c0230502112ad90423adc2492eced16d06529a48561559b5e9230bca93857a6bd27a7619ce990457276ed572fd58823de3ecd0302047c435bb500683066023100d4880f64e44eb4f587333eff937fcd401c527ce85ffc1f63053b44cbf9126e6b3c8493c147c11f95bc18f5e7b4d4ecc60231009338c409a455635babe3a983e91777c45555da7cccee74e476cfcffc19d31d37ea47fb8c2e5e7279de2cc351c59346360302047c435bb500683066023100ce3d402d250842229e8b83b4038eba4ee499b570e8c4e94636e15fbe2bba6611d7a657e60b834f0054111168af691ef1023100f19b480c9fa25ba5e1cb93f0db7f0cea27f81cec5733e1eb2caca094986d20939c79c01b4da6cdd9dceee6a9c48d0ec30302047c435bb50067306502305aaded15984b4c65a4559704469af93fb975e2563ae9abc18553abbe6508be45bc5fa2abdce3b57973eb1b7ffaf003f60231009cff78827ce2419ac0c58ebe13e61d543ab5232f256405e8c37ec34e33c9ec1f06c49cf3ff2da048a5fc61815d9a36170302047c435bb5006830660231009084076666dcb7dd0964c5478e1608e3e717ee65857c4f2e620f0bd406790225a5963e2c63a7cf611c4d25c4fa223384023100da5dd4b4c0eedf3bc751549a1118f6eac4f4cbec1cee771e4d7cfa18d28fca9b46403c39776b02c8b9ca8306526f02a90302047c435bb50066306402305ae2e3a6f630e87a2964fba764fd9ab68e71585a68b723c066a427bdc66fc36c6540b0bec26723733303b2563dac525702305ee9b836d051c8b59234bd781f25addcdc156611453e138e279c684d022c5ac740b9cba14f8221e43bc77b4d60d5419d0302047c435bb500663064023011c613180f2e483bc33e7a84943035863eba8cc81adaab4feae00056c10268f31f26c0a59e57dbb6a868d4231c1460d802306e69768b3adde89a589bfb201d250e4d1f328eb9d704a920c6a2b68298c9ac691d38a1b1b07bba032d6ea027c180b7010302047c435bb500683066023100f9c28720971d5ece2db789efb3b2afa663d79b193a2e53cce7c167df9ff69834e370734983ad54a9377cb8758243ac74023100ce69c62c29dee287c676202cf22264b02e85df884cc11c5f41982f15a7262ce542aa2c983893789b5f3fc49ff97d9f480302047c435bb500673065023100d3d27c3342040bb25da50f2dececd681417d32a0ef9da8cbe1e4a36900af3485662b157ea202dcaae5e4ad85c130140202307a2dd1ea290fbadc83b850e5a5ae00801f18cdd48b97fb0ae66b4a5718b997cc1d4f56c1281e4a7ab199440b011c32520302047c435bb500683066023100b91afa65f30a9db33664467ed1729c2947d5a187e64fcc968acfd316051314d3bf96eee3f0f883dd4045e9028c87ab37023100d86e358ddc2abca6f3dad30e718cef881d97b92b76def8a83afdc1db757220a8a43454457c2566071fbfa9c11fcf7cc80302047c435bb5006830660231009d2c9f2539e29a4c321218c61da7a9c0e1f19807dc3caa0656db17027dabe41d8d368acccc8a03737fecfbb99223741102310097aa0addcddb61a6d97a7730a86aed99409cd367bd76270c61a33684c522285bc62aaf9527104d7c4371115c0ca5784d0302047c435bb50066306402305482019f549e5ff4bcc06997e7d9413d9a83d63c57b1419976dd19267aec6bc9f1dcef6205ccd21a690a42ef995a04b902306a55b14e851ba8d1493deba57e2507c79999f30c4a47bdc255d7e22ce0e6564a6d9d364ec57bcf3e285b49131f5e8de30302047c435bb500683066023100a9b3c8aa77aeb843bebb6828de3a2f92e2beb46b8cb04f88fc1a782d4a894d1cd81e9ea58ed9213ea6d4e7b85e8905e102310089b1e9fde57e10a9b845e994c8d9caf4723fd7881e3f8cc38a4e8bb55ef4207896dacbdf2a5bf37df636aadde910b99c0302047c435bb50067306502310092da1b11319a45e7737fe47591c09d3848295ebb6594eb5dccf7d670316c410d73c8b95274f98882ac9cf0d7b2ad9e2b023013ceb571d664f4cb53914f17acdc1a538aba1e07a19602cafd1c4e75abff9be3f77f73daec08908d27fdcb4a8e904eb80302047c435bb500673065023100dfe7a8c424b406a9d1203889795c9b373881ad3f190bfb16759f74910b940463d5c6092cddfc891eb3a4d8fb472a617c023040c3e72662ef661028a793ae8cf3ccfd05bd4e741ed369ca286519581ae208d6a09de1e637e363bee7ec292b8078c9d70302047c435bb500673065023100d61be3255a02110aacea9ad36907c2f535eaa6635cfe1c155a10906fca162ca8a8dd5f357c1e396d5a595af71aff51aa02303c05401e02f291630185b8ed25aa2759c714bf157049c68da0ef15179c4b95002a9651f27994cdb88d2962a14e6245390302047c435bb5006730650230270aa7490826b9a27d62078165fc5e8f76f98cd034a6affa15e9555db612b79b4df411f7913def3c0beeed4c0442c083023100aea3085a09b280cb797f555f16c928efb497fa8b7471f628a6acab7c0e43c38da66fd1c001d8433b195c68889f9fc1db0302047c435bb50067306502304a3fdb8d0c28bbccc2d8d9626928df4d2bd1aa54d5a87da75d7fe0b0cfa89a91b144972324ff0adbeff92954dd1ead7c023100d3cf3a361aa301f57a85de5da079dcc6539034be7da37752ed82033bd0bf90a5069b785d4f2779b35ade7098d503f4b30302047c435bb500673065023100f8c5fb562a4517bf41824081e95b208e8582e4b2c81c5a8c4801a9a6d61ff40439af8f57b8d10b38a8ffe9e934740afa023002b73f2f24800526dee1808bf5a8629a2a6cb9c0148af5fa8b406eccd77448e6a9e1b32c4e6506be6ae11ea316bc4bcd0302047c435bb50067306502310084417b26f859aef5d1b4ef19f464c58b9d091de62f4ce9d2880fa481fb4016467dce280a4bc9873cdff6ffb71250c30102304edd257a2ada220a013d1650ea3ba4be61f37b18696dc27d200c89135b5552a75acd2b42664e56fe8abc82516767e7690302047c435bb500683066023100b7f8d39b0b8692bd9aef147ee40664f0b196dd923095495d2a0de9c7b0b8001f9af7faf54b51cfb0b426b5021332106d02310094e490e38684f03c532efc0b13f80c4e1364daab513558981d7f7d1d99fa90a56f930a46dd9395034160d43a182326a50302047c435bb50067306502310096514fa5434cc7e3b902682156d76be0bad73f8c62264a7324e5b14852450f2ffde446d4e4d1ec48dd1b06220d51f49a02306a71c93b31cf389f0877fc9a1f2ef77e04498e81ab8a434d0d200f0ee9f1a1f2db946994a6369f0da7d459226a72fc7e0302047c435bb500673065023100d2ecbce0419358a0cbc6ad4d5aeb5684621b2839efda615121a18d54527706c994f759f2bfedb2632b7aed501a5166bd023010bfe1fe51af29dd26ba1345a4d183f8508a105a44070c7d08bc516674ab207d2a64c2877952047793533a3f768bcb8d0302047c435bb500673065023056768aa9120d2375bdf2caac3994684afcc277a1338abdc98939514b6b0cf55afff53e0547b981acc49f948c832e4e1c023100f67d1a92fcbcb56dd81eaee580aa0a9f337185485f3bbeb3de67e7a2e8232d6834d2b2b19da4f3b009432f830d3bd1b50302047c435bb500683066023100b0a0a402a943fec1e3943840d05fc63eda46bac0a4754fd098764bda52e27b0722323e57b0c4303ecf4482c58a3a1287023100eec8d716b1c96bd66947c98b3ecf6230fd213dcf63d4cc3369bea6e8a5fde1706cb3b1d5d6e5fa85e6d60498ae0de0d70302047c435bb500683066023100a21aa2610c8f05843df675b651ab95ea6af999a41f8a8b8624850da792fc629e207d0859819a8b4d1ca2a01ee88720c0023100c0f993ce87fffb0be26bd9dbd2cccb03f4e018fcc92b31016143d567cc192b49eed3c65d6240cd996a61c2d5d60d4d9f0302047c435bb50066306402304c14938c7afb183f84098eda6bb62cc08db35df53cb9be08adf591443a86e626700dc4e0297edfd34f438ab5b43cd38b0230180ab55d12e840366563c93ff5891d2017dc11654f5914bfff8c9ab45fabd05da25d2427f11688f002bf1e96fe8c0e070302047c435bb500673065023063bc71a16941bc2689fdcf5849167824a89ab247287a8830a369a3375833b611daf37e0a3eccd754dbb8de9c45401faa0231009e43f01db3e1b54b2595508618238ed49a0d4026ca29a3db01277f14b78ae975ac8de61935eb867aa55ac5804e95639c0302047c435bb500683066023100984eb0a60308b598b5c41d01237e1b8ad178520937b5a64a44127cb87cf15b452c29b5e8746d0a1003b6a0263e52e854023100b82d1728a02ada1277ef03395372396560a9c1a0613a3015b8cf28a5b86d474a4a1b33ff2ec291d6033f562b7b2099190302047c435bb50067306502302df15b74f3787904a05bf0799c8779ebe2f5bb135952d626f671089c54f7e3e8f5e4e5f36b3742f44621957277704782023100c6958fae320484b56e336fd5dffa7df4d89ccb95c367377c30bf90ecdca67cfb127e184eb2baa4f2f76856f8a07f243f0302047c435bb5006630640230198391fffc00e027cb962c8a904e853b73d2eb84dcc50f0dc0a23b57823cca9da928bc704ab560778841f17073c5e12e023004470d2d6dfa6558dfbe521f7072381d1ee17476085da78524266b4666d8f582feb455abe801afda84a051f9530ff95a0302047c435bb500673065023100c21c29fca9f776f2eba3388862d92f6fab15cc12d4273c699bba8831411c92ecd452d0abeaf98bc3d2f9bfac3c0f001d02301d69ab9468c1b6da81d66185784ca547bc6a61fd24bc5588980817ba5890f8b79ffb2a2cff22c7a4a9c3a93c8b00e3930302047c435bb500673065023100fdd6c9fd670116f899b2dbe0d83a202c20cb0f3afeb0253179d1a03acdece714ece1a823036dfaa1fb4d49b2af976bbe02303da1ded1aa87a33b37c855deea6303a25cf6a4475d9f9bd2960d0eabb43fd4a48706bbf112d7f54ed07c8e24de843cd80302047c435bb50068306602310088dfd39c0ec60f49b97e0790b849be0ed0cb81a59d4850de68fed9a14efec821d51777e9882b0bb0eb4fb6b05fc80fef023100aa60d3cdf818e35a34ccfa4502dfdf9400cc42580d9c55c044d1d80654741843bb696fcef592612d189aeafcea4e99460302047c435bb500683066023100b655c516c3e31f3bd2a08d697bc8c84c8e774e942e0c5c93aff860c78b7f4d63907759b3007e942f1f3325ebaedb6db40231008a72d6d87abbff1cbd75e842110febf45b59fec188c26b8e7d406745c7c04bd131962f73f263214b219c700e562863b20302047c435bb5006730650231008e4ff34395758122ab28ae0caa408b713c6702aed8db4e80e73657c1ef27b27767eecfb3b1fcf725f15e3e24f963af3d023018d7b4c0b65ee6b6cae7e30fe7f9b1d25dd564be7b8424d0dc492a4b79d5b927878e4db13d77f1cef4a6dec47187d8ba0302047c435bb50067306502305fe4e1c3f26e693dd360cd6100a40101993d0c785e413d41a4c39f6ad6cf0ff3b70a6e35b992a41686c2dc0af9dadfa7023100a5d4ae364a4f58d5caf32b396ad04dfe7620b1cdbf4b80ad8d6ddf427a60bd2024e659a14a2d090bf3d8961b7b89512c0302047c435bb50067306502305c0bd7f78c4fe715746f31d7731ca91b6bfc5782d92ca455fd2f89cdb6760a8f496b2525932f5426dd3842c8aea0941e02310081cff1f5a40260f6a5f0ef62504da9ce2933642631dc62f636acabf80d24b998d0faf84b372907e2c05b3f92799364550302047c435bb50068306602310084274c33ea6f2aeb292454e4d5ef97c719e16aee5ace26483163e5ad81c3dba056fa3a228b0e94e9251c9c34be4202b4023100ab4c06b9a74959731d5f5b39d0bc52ac4d83cd0ee5634bf05751ec9a14aa65b678464cc4dd7673296cba117c4034d5f60302047c435bb5006730650230102b4fcedef7548bc29cecaf7230190a92aaa18301f999dcd4f0c89cab5d5c5118d822b3ccbf2cfa8e6e2f0c271a2eca023100e686cc6bf4aa5d67fff709692ae1d136b0406e53b6938864c2a1b83db5dcfa25bdb65d57287d1dc63821ecf7bdc36fba0302047c435bb5006830660231009da41d04bab889c6695dca3045419c3a946695038408218b855e1fcf63bfdaa212a2d787b826b609aa76b607a508b3730231009362619119ffa9d346ad5276bc05593952ed0815670cce5de77386695f0bf16191791e1d7da1e67bbb652f7e14f1b9d60302047c435bb500663064023031ebdf355b801e3a266416df5bdfed6f49ca13772cd7a30997510fd518a4e2563da06fe88c876c10b0668062e4297cd60230197079869b0b883aad76c9d9aa3bc7fdbe2ad63ac81582d3c1bd978ad951c9a1e5a4109b5305f1478e5e2f0761648c1f0302047c435bb500683066023100ee1ced24499e89901685480971aa1939aaf6a987d866520662042fcd9de9f135ea13b996812fee373385f2dec907008c023100fc301c4f66a5efaec4a0359c2cc0f7bf9b01c800050bcfab5018c885c6d22f63c0830142b679fb51d4f7c07aecd076c00302047c435bb500663064023003eb1d35d30b51de42e2d4b12946316eb7534f8a8948d86dfdd862091fa6fd6125dfb33492afbb366d0df5e6a931afe002300aebaa8cab30b4405530d27903606e16d99a7cde345f7cd03faa1e89bbc6cddc5314113864fc315b422e18555cf71b090302047c435bb500673065023100944943e49855a9362f79ec553710316ac31ce12eb8fd8f2419efb251369bffc64c8cfc73fc00fd2ba16df5cd12fc6ae902301af59318746e209ab59df1c13520ef236178f3b150ca138ecb385e2dc7c60ced33098274c78e9f388366801c6662fbca0302047c435bb500683066023100e19823890b4bbe5674eb5da3233cbea387314f3d6f516dfd8cbe38ce376048295c85785c7862c4d3d12f5fafba9c921d023100e0c662a81ee5e5fd3a6dff03bba6c04aaf2694435b3844b699885d1bf23d16c5310b30864214442ad53c1146b62fab6f0302047c435bb500683066023100ed498d2ed33af98afb05356a20067cd2ddc7bf30d3f84586cbf18e3e9149d0921e6308caae4a9fb3a0f9b882712ccc2e023100b0ede747fe5bc031b2ddd35826ccbd879e13ca38c34f17e10c6f0c2eb04f9c5536b3af305432fa9d957ea9dcc9f148560302047c435bb50066306402307d3eac0306ec7810084e31be0b107a4abb2370ee43127b9f00dd19fda582f9518a5099368835d6c4b239eeb909c35a34023065ae2926e3bce4d011e68f0e3af26585fbb01e60dde4298a79c668d313bfc47cadeaa67e0f861f2cb3e781856ec17c300302047c435bb500673065023100c4402696db42b0f1c251f959f40666b9785136d8af864b6d35729d98a430dd1a3a2c614a460068b7d6a1a2b86960b66002306a18d490665ca8fc5e1826093a615e445f35e6e14e185500cda7583c04419b8fd3626674da62355bd11774a63b52ea380302047c435bb500673065023100edbc66159c231fc69dfa593654e0038f2f4b9558ff090852abbdfcc729ca5415648db4969ba6b25f09889f7c3a514241023012f7f66f945e1a37fe53281904f65b8fcf7acfa72076a5c2cd6e6ae1255beaf9bf3564abb48199f577d70b355ab6e0600302047c435bb50066306402301053fc9e684210ee26ff99d3aadcb28ae20169e82540065c3279ce7958dc440600cbceb6b514734ccb4ec2d981380aed02306ec6fc90cb36bd3c65e090968be0ad88fae2bb77d2ec892a890d36ca5afb9f99041438975ca61f2d4bdd044c3fa7ab6f0302047c435bb5006730650231009ef62d2554245583bc81dee67281d8a18e100cc8a969428eb69c3908480f11ac92aab65fb7072cdbda110f717e64afa502301b76201c6d900444ef00e8e6096d2ada6c4e5fcce2aed4f4066f5be1462358853ad5f28e5e0398a838ceb0429ef599c90302047c435bb500673065023100c89af9756a26752612e13f0c1febf7aff7f7805556a055c60ff2b26331b55b7b7c40c8ad70749e64af176b2bc0504fb5023068a5e88bb58fdcf7fcac0e91a07ad87fb38701f0fc14441f29b2dfe1fc478154f8b15e24a5c2ab43f029dd59c10265470302047c435bb500673065023075d5603155362672914c2d27e4f62c471cbfb1daef5665196283fe0ab7a787b413619fda2f332f265d8e0c1a37197f370231008adb71d722bda66f0e127ce9c2d8cb85cbdb62a0993c061a5c5ad436601293ecbf88f5203700881172b35705e1472be70302047c435bb500683066023100f2223834e4ed2277d612dd96a909affd2434aaca12bdb3a0a0e589ab6d4721bb022c9fb35631cdf9afece3e9b02c5455023100c76ae56f6eabdd437b2b45538509fc4d2887b4ccb13f9949def6299eb8912a61e4e68730b87643c5a95a79e8536105950302047c435bb500673065023100b21d56f2cef2767abc3726bc51c17d8aae13202237bc6f5972fcc64d1298230879a8d8c54081683ecabb4b07f392baa80230272cf4fdf5bc5298bc480afc18c916f926123f258f1faa041ad6d7c7a18d5bb4cfb51e461c64cefb9586a28ba8e8d1ee0302047c435bb5006730650230038594cb301a3314216070d9db1bd35027b7e5a93160716f9a1b3ec223874520c20cba8115956151dc53aef43b84cdee023100ce6033e7c09e7279ce5cfdcdeb535dca6312c70bb4a2bcb0741702ebeb0f3e9b7ccfe7c03a020f559e2ff7196728b6000302047c435bb50067306502310088818b599d60ced15907f9cbeda1ecdb669f75e212778d662b0eba088c08133959b80b376d379cb711f2f292aa0556d402302cb0a859ad22cb248bc13082e81947d6c2ffc89d0e95a2e5f732e8df63b9cd61a89c6423384d48c134f20f4d125e358e0302047c435bb5006630640230313b12dbf8ea0efea656295bc90a0b75a671df5bc033519d1328915bc8f92ae941e1edf6e42470a3de8a921f42c8059202303b5f4483148d6db3338848044ac355179897433a93033da7da2356c3083a6be5bd2440da433eaff7a83bb22df368428c0302047c435bb500663064023042737b1a66ed0e7ee980c3ec1616aa24417e8768fd1b2d860320a72a7ceb278951783013ce98d7f39f82bde51a0be552023046a119a973de0ca085c57b1b544c4674544fabfa5ee6bd5b7c5eeaaf88ea79cfc20692dbfe8f09fd3aae0691a116a97c0302047c435bb500673065023100b01f5b332f236d6e96225e637df7b918ace39843ad40f27d98f4a880f2a023e3ebc6b3381d884df3ffa31892d2fa774102302587c781c76d244bbbf34845e8c23e43ef9e18ba6d575f652b165919031d4632cb7e31351a870f00c0530b0038b351cf0302047c435bb500683066023100a5f6fdc28e0fda3631b7f86397fb932e35ed0022ab4bbfb8817df2cb4967b294684ed9595a59f12f0652254f23174a7e023100d4fb7b4170279cbf76fe22bf2ce97b56942bb784e462955eca3c752657f5a945e2a2c8c73c92d6012f2ead1524f2c6920302047c435bb50067306502305dfd572ca1023749a1b0263c5bf3aaa6f00aae3fb7062f019e90925d94770b1b790cfa01cbf55262fed00a5438e59387023100a24396dc9eda4d7bd98a3ff68176b1e3cd009ac177a0b1b5b3e9ae2169adc92f2d7f07d66686b23af41313857e7ab2f80302047c435bb500663064023054926bc4f679a13d99de71222c647ac18dcd2b729e16a393fe0bce5e3f469b37e64c4995f4d697e7b353c5da4c9448ee02305149a551e322c5ac5c6c19483afc79085eb240c1a43f96f7cc3c276b1bc1ea136f1add7325fef916398f4dab707eda6a0302047c435bb500673065023100b7f443230a52388461deb7d459e26cdd93dab9ddf142b4c754aa1414ed9f2135b4f630e1a9f040c557effb782e6e47de023043feab6184bf98306683e94e4f1519806f8294f3e3a1baeee0d0ed20857571dcacb10d8bc3b744f5541011e463658a7c0302047c435bb5006730650231009678d70b94a93fff8eee562fb1af5cfc215498cc297f2ed15fbd02a969a959f1135bbbb5a4f36ca25716b1a8540fe0a90230291e36ba5e022812469936465851e600bd1f416e105a72514267f5bd2701fc4bcccfd070d5ecdfdfd8496eff6410c19b0302047c435bb500673065023013964065fd525b3a695d8e0ba59ad9430367553550f9a528020fd65038f3a84c5e9b370f6f16357934f3bddf755549e402310094ac0fe19e2410b41691b86e74e7648d49ac4e47d175053ec59c08cbf04240d56db22fa608773b50811abc6e62700ff10302047c435bb500673065023100a2918254dbf5c7137bf74ee4ca268379763c792cedab3a011a997397e7638a14a142c4902950b0e0f122e37d5773739a023077a8ee0efb5153bc4e4f6e71b64dc6897b5154752098d7cd53b91fd191ff588a031ba531c988c9c1b51f2c48dae0fb6b0302047c435bb5006830660231008a628c7fe5aa9d452c8af75573a94db3114192b7ee4a430ccb78a4bb2db3a33e9a93bf02e30feda07003ebd1171f4180023100e58375e67b13b4959b82641f0bdeb82463e94baf5e69a97a304360c7308e29c7a76953708daac46fb92e0d000780d2d40302047c435bb500683066023100d182672318bb3e45374844fbf50404a40f98eeae4f5486a8a1e4121a41761be703e7506180eb685a2a0cb82c2465d2f0023100e51ce6d092bea091eab2100da36ab0a897bd4146d7cc1ea02a9720185b5af9409958c062a6a32650c7997d3ccf0535950302047c435bb5006830660231008dba812360936f3e31d44c1c23362cd5c1f272275223e896519d0d44eaf6756b61d6b717398ea7c0d9ea5e8e7901b574023100e1bd2aad24b186a67b4db76cef29ae364bf512207bb14961305ed06b3d5986e924b7b3cb37ea2cf2be99f8b8f391e1970302047c435bb500673065023100ba3cd0a90fa46108d2b0b5bd14fcc020f9fe56ca4bbc8cc13d8d4f2c1c637b418bdb12f6eb2d69ccf887ebcbd485ec770230600e16a6f44d49d99f72c7619c307cc25b8668c9a2f23304f3d7ea15c317d700331abd14e45df3844351e1c2a564e6eb0302047c435bb50066306402300b86cd9e54083ef938e428be08f2e4289ffa54108dbfa6d2703f3235edfb43d1c87a37d0194f8d831dda5e7fb4de761f02307f8a6d6865df0c994cb85098777d8de5df73ba96bba8092987a84c9dff46ad043674a4189ac5dfe094a73401e97593030302047c435bb500683066023100bd0b72e071e084e1a6005ccda141466f1151890216311e627851e41228e3775445b4492a94811cb9e710c845a50c37b4023100ad428132f1dc7fd6f7897087d1e1e2ee5088fa94c12361b4a8fc2a08a438ac5b4b356a8668ba7a3f4eebbd821e686e360302047c435bb500683066023100ccd288a59b82788282fbd3bc63a87073c3bfbd4e615d908496b8eb1d906cf44c3613a6a04c699c1a9c5815919f4315b0023100fea641aeb9af5e991988e5ebed528ac7fe581d48b3511a094de093c28a4f6d938a1b032dc7185691c22b85c5d6cbdf1b0302047c435bb500673065023100bc513f588990ff7bb138a78ae35ddc173aa24c50eb589d1c3d156c37d5dc05fc9d045116b478d07672a87c479e65468302305a388e0723f0a9a0c3cc5d584a604acde503a091a7465074fd2ac93b052ca739b601ef0fec699ba87cc1baf4adda1da70302047c435bb50066306402302e49c03013dffb883e7d1a960ec5dac5faa255c78c70c5640dd5feeb937ca9100fd32b4b1b8d330b21b6cbbf9bf821830230574b3867c9970f9a09fe71a76f06c6f613f59f3b13b11823944b51456617940e4e5919daa9e27bc017d998f3223b6f940302047c435bb5006630640230506ef2c78db1410d96a298a93168740f9afbde283fb7a35deee9d76f819b894de1afbe1f341fa7db77ecb24e1018ecdd023035e204a5a6f5efa756d600de8d701bb5e7b47284d4ffe72f04395868286747fc3fa4627578d19ac091e93ab33c1eb1720302047c435bb500683066023100f57795ebfda5c653700d90fa19973203ac9fc879b1730c1e29eda8bf073438a5b31ba25fe132aec5e90ca0755c415bfb023100f9696ece29fbae7497c9d5c1eb2a844a0c754ab6883fdda414c35be50415f08bda81ee93f8ed7eb1cb0ab930b7e3b4880302047c435bb500673065023004105d960270c9b6a1e45404b84386f02b7c3fa3d9bffee01dd8f80d3000f645cbe67602317d5b84e40e4d86f644e18302310089458179c6ad9133924ad0e1106836c9a99d9cd47f384e282b3795a66d5301334b108e9913d4f17069850a19294d748b0302047c435bb500673065023100f007b1b139e9fef0952b652d5817ee6fde41f987bfcc4ccc5d38ab1cd05db54f25b639f7b4193d9694ace41e61cad1ea02306e8533267859d44d111db62aec1a86d1143a715656bb0a528aef25ae32194ab7e6bc90823a3781833aeab61722b216c30302047c435bb50066306402305c96a7c4836177a4ea8f78b8e794a7f08aff03534ef258f48218e19e5d604330a03fb9ea24eb50e75c2250df66b538d1023035e5954bd0cbcd6bb27bcb4f45a37944b648a6baaa56f1eefc2c926dcd38fac424566b9bc2e80090602373c01e31070d0302047c435bb50067306502310080a27668fdb9971ddf03af5e61c2db50e7a61265193d3c9511b995baed0124e6f339e8faa30c4c00d5591c72df510af40230362eef6e0eaecc3be2a369856d2b01fc53c45c729654cf8dab296a5cff944f72b22ec37ce7613f2518efa00faaf018e40302047c435bb500673065023100ee61464b225aa616eddf62212b57504ca405aedb94c59387b64a4322325ebf93491bde1c2534bcc54528e7b67b686dfb02301637e96563a862f100000b643bf96a304a0b26be843162077f7a2a8bd18e49fb58246e3cf7d973ea33078bc65e9bb64b0302047c435bb50066306402307cdb31712bf0a3394e6836b69b14898e24a72589bd0cb21dd2bd00a8e7350bb1d7943e3034cb045c8106f3492a9b72b902307fd9464edb413fb90bbc5ed321b26b213fb6f7eb07f5044d4a31b083b8e56d3e18b3faeddca7a8bce291190d1cdaabde0302047c435bb50068306602310084c2088a556c2d5772a4ca4450364b787d5f021f3ebc7081f08c0acab41cecbd6d13671b8c3367588146e866d90b27aa0231008a355764fcaf49d6756bd0f8a65ca09414550f68138bbf20b9d5c501cab11f4f31a33b653e4d756fe44e272bb84caffe0302047c435bb5006630640230479418fdd3e9b86c54d350ce61713fa9639b98f6df5e183394770937c63587ec6a8e600ec06c1c087cadce156cefaa430230779bbcddd857484950aa2a927aae26e295741ab63ae55a98a53567933c2c5cf874221fdb8263481b73ed5545e0327b420302047c435bb50067306502307a5a12cba9632c40c215f88067ae0dfba316508577c222949e987344469f7d18a05a78953a82ef4e1b9f97ad11f926ca023100badc833997074444cfaf20f7134d465e700a090cdfa25bbc8d64f3d4bc5b6bf5c64e67b165737d987fae1dd4e0dd806f0302047c435bb50067306502305adb8c75a1c3c0d2031f79b53423a64325a1bff8ed9511f3b2552b4f5e49eda5356aa623b973d34d6645c281be4dc280023100f812d7a4dec49001c72b6f232da27bea4a9d34c770a715341a4a116f15832e14586009663ab49da2a3d14fd39fd36ec10302047c435bb5006730650230044e371d64cb433049fccbf0fed1cf78680acf61ec636489e90dcd28cd2a1a056d43505f6b3e2a6a611884ea4a28bef2023100e066fbf3a960010c243d06b72da671c62b6d0ca2895150bc0a482be9e2b7421d8cabc22df4b6e95af28cddda96695d2f0302047c435bb500663064023045477bdcda3048833ea20dcee4ff7f880c42a3a359f97624870c3cc18f28455c1954931a6c66a0ccbdbf64c04899adaa02301424d5c564e9c1b602bdb6178a0ae0d74ad792cf31fd2f2d0d2f932d9059ee1aa77527eab49c8a4b67b71bcf1cce86990302047c435bb5006630640230204e58799024e49f711a090af5e34fd60860f13eba3612f1433ddaf1b44ef2fff26420cb3c5fcfa3c229c7718f0c883702306c739cdd254a1419e7750cd6389f0cb2c4f6144176f97692e4b0ebd8baad25936b0fff6bc93f3770c25d426a5c06cd7c0302047c435bb500673065023067b3d3161bfeb7895a8da70d1b62929525fa758d1eec385c307ea889ea10fd7cadd7beb8a20b21fab1dc06940c9f7cc6023100a2d449df7952f12a811e1fa44ff61e4e6395ddbf6dd7b2316cef2afb5fa2378376207ac1a3ebe26e80c1c79bf50e0e8f0302047c435bb500673065023036cf16d8f1c166c96728664ccc973f602899126c4df0c92d42cdf59f33f89af98cc0ab7f3277512b8830cd3920b51006023100c3bcbd6055b50a36b9b07cf42ec55f7ce0c7883258e8e06e7542bedf8e71b6b79806b30eae846b9ee295753e16c231170302047c435bb50067306502302373699511bd67897c70e3da928cb34a5f6163ac891fc6c98e5d498b512deeb2752d2e7b210bd87a2395746d56d98b9f023100edfa632114250c9454b88190f5a5855256d008fcaf30d6d85175ba4f0ff45ae110512bf00ea60b7d9d1ddd4d064bb5b30302047c435bb50066306402306b18cccd6527769953b60491f4d0ec1b868a1503a79f66da60286e91c6a0ecd7a54acf198c5be48800ab1d88a9094a87023018aced7316afd0a6c30637aae59780c1de5e5c3d9ac0e584180b9b28e00ecc028d5a3d179e8557a77bf56b36a053e2460302047c435bb500663064023065d18a718993f276e53d7eaba0e5f1d07ae6e8b0124caaf5482d28f49a3316383b6c13d2fc76a6755ae28d3f274acd5b02303bd9d1c933a4775cd145018458e7256ac8ade1a2c9cdf1d419fc6e1ad146233bb66807b62ac9bedb19946848f739f3680302047c435bb5006630640230539dd938b7ef23fcc8f08240b2254f72a32427a5d5f910a1da336342508fae0ee7758f93a3ba92f5562dc0189a47bf6302306ae232d7d3fcc660cbc05e1a35e4ffff67a7abdf0fae353c6f9cc7b19b8c0be03847b2631326193f0d2a5fb42fd8e6e50302047c435bb50066306402307c89dbba4b26eeb0e587b35938dc798fa43189534b2d33f020e9bd7b16829b419fd548f91ed73dd4570a6397be1f956102303ca62814a1f57be9b122999f26662eb4de3233b75799b37b4f0092c427a00d04e95ca5f9d46f16c0d51516c41d69f7c50302047c435bb50067306502301afec50743ea6ae61e16508788158f48143564066adba6532f9bece65460f52c27144badcc3fa58db4b25028725741ff023100a678edbbc28ed316c930a92bd8d89d6f50b411c2232e5f1b7879d62bbd650720de014212358ed9de4f88dad714ff10ed0302047c435bb500683066023100d8e2d0ccce6985da4e30a94b18c7e45070a4bd07e7ba3c368982edf99aa2b24d49d751282a90253283d771ca35f629f6023100d9c82550cf975c9b5ba1c4c09ba1b7a043d071d15166065a34efa82a3f241ae4a3c1f561dcb867b67b267fcd046541f10302047c435bb500663064023072428d53176eae1278ea315f7995379d649164c06bd861a4a948c5a60feb167a3afe24f1117a22555cc88a2b6043892602306c9eda3efa00170d49105b2b7328510233371f914a64a0ad3ce4dae352b76b2d98f09937b2a317bfb6b517b9f20c433c0302047c435bb5006630640230053b7d2767250a50a1e2e6e3bcdc77b23b1d9d8e949c03301255ff035dc2a2ed4fe1e79247313e7bf5c6002eeb9b5647023000fbf1c41b2e3badc293b9bcd288a8c2c62b446aaf4267d01c7af3a6aaae7575d61640ec18e4fa4fb6ea829c8b5ab45c0302047c435bb500683066023100b54bad87c8977b29492c868c36588aa64926391b1652a1cf147322cb5dd5798c1e4e65ea60cf7cddef84c48755a1e1030231009c4d42af72618cd59a1f52214fc1c883fb024922ee89ace32593e3d056ab3e2544e6bb724f3dc8436a35da8701b778de0302047c435bb500673065023100f20ab9135e1e1f50d03fadd3c31595a6d7469d51e42199b704fea8aa484b6feb71c8c8a19a0028e00c015424c41ab71a023028c1c2749104c448c4557abe94f49aaa094b2077b514eb7d3902e6d994f1034cc1bce0a5203cb55087e0b3ba7b0d9d630302047c435bb500683066023100944d6e581ad17caa4b5489b5f99087ed988bcd6fe369fb316395bfd0ce5a7c5ca2e6d1b6cd21a796dbbe9f425667c0ca023100f52c273e93f14b2aa3aae04e9c8542f72d5ae66b631ca99642aa3f991c969b244a838fd0ed052d837bb958b439ac42610302047c435bb50067306502305518f6ca4b3d0c7f5db1557ae00662dd71b5033e72bbee02be783aa8a45b0ac365fac3b3d8ff667bdb1a3acb130a6cea023100f5ab99619cf74b2fad5c3ab43f62e8d1d8163dfab0c3fec1cd3865a0975a190fa806f33c0cd9cf1d17a98ccaaa4f9a540302047c435bb5006730650230123e37d3ab95e8af78540651371261b3f52174008748e5ce2737aa260d2cbb8b70b90ff98a866ea359192a59d69b73ad023100fdfa431d41e14ea49f1929933bd8d2b8e5c354f8ca7818c572540f2355109e6595b74980c19d4732ec1c10a4266431050302047c435bb50067306502303757eca437766ee1583c8b787c01e89ed9c58d52870b9119d0d2dded8aae10f812ea845bb198bb6750614293e37600920231009911b5bcdeb6ba73167b40db085724d54241758b80d3a982f246cb153dca47da7f58de06185c66fd08271c951310792a0302047c435bb500663064023009c03d5cc6998ca04a1521dadcd3fb074108337f2345f5bd929540d9b676a706236d7b145d85d7964c2ede76ce8de144023053814d4174005d36a884757155e8bea16d83615650560db667a05c3e4db9142bd98fef116e2ff2d2679ad8c0171afe820302047c435bb500673065023013b3b48efd24c4c176b587a85e9b3eab2f6c39f4db349446ffbb24d17bdf1a41dca8bcb7d3b28fa65f4ae4783d699692023100d65e75d0e5e4a22f26111f1b0cadddb2dc6b48961122f69cb40168d3e8a1e968fdfc04ffe35b451d346079c2302cd6780302047c435bb500683066023100880fefb9540bde66ee6f91a4e2aa6e90d3120805aebc314ce530761f477c4a4f69665292315c7360e8391294a0ad61a0023100bb25b34fc5ce807cd355412e480899306a4ca3c6bc3a380ce4987590aeac8076a8288a42d0d6f5651602fd11688db1bb0302047c435bb50067306502304776334058908f647889a4eb3f6f7c428746654cf306257fd4840642499f7cc7debaf14c53d4ef7e75c408d7ceaf1420023100b426a4fa751e887ee856d0c424d1866d9011924761a6fed4d8fddd3f472d09b730fd9ffb3bc5f683cd58ed7c64b7dee40302047c435bb5006630640230347f50db9961f897d7d10f1f641c912986acc3e5313373e125c74dc435379d3e823b6883b1a5c8bb2b5d3e0249b4c833023018c035051ecd053d0abf336ed6d9a298597baf718c682b2f26e14685a5d02737afd68058add414ca41552d38a9267e1f0302047c435bb50067306502306441f94cdfcc0b53212a02854f65580fa8df7615a881629a1c6059d8223edb834e65eb539131e83f22f52ac18f6f91d1023100f82db698c3d876f9fdc78d672a4a30a1b726b0862020b865c8465d02f8ab31ba009776ce57d51630d7bd0664bd1f68030302047c435bb500683066023100e7175804928a536000d7b01b9e0a9c12a7803ce01b12422142e49a48e4db1a1e9ec1cc2700c7310cbb089c87d65f5ba1023100f683b03324336ac0167c9eecd91c329a46d022c359a3315c0355e4e0cf71846106b0881e6acfa2f063137ba389f4e8e00302047c435bb500663064023056d5d314ddaae0baaf7e0fdec99e21e94d37ece56812e98ed94c51de22d17d3a023c332618cc1a9b27c1d492cb58ef3f02306f829dddb7f416ec239eb4ae567317095f1d25df2c121eb71bacd2c750e3455827047d003344b3b69d3daa68249fb8790302047c435bb500683066023100bb0c8ee5a1d4f895dbe17620e8f7e0c477ab3419d32d54ef817c62110bc2285dbe030806d7b729373dd42c819205b8b5023100e60e37e55e4205365e73f965f01c18e73454c34a8b0dbab0923369b7c5337e93fa945bc8d9ae0a449ff6bd10b69d533f0302047c435bb5006730650230663c6195698413b13cbd1d25516991d5db5951e50f6f3c8c74a460a6eed2ac691da74ccee3bd9abf2560a508e8f44b13023100b3bf65f932017e00dd0f8ca41c38bafe5ace0acaad0fc9f5de31efe44f35eb7fcc5033b75ee541811f934328e89bae970302047c435bb500683066023100bb6c205685c1afab9c1371c464764dbd617f7569346d14542fd9a21e17ba083428614bffc0bd48a121effc4e713dd413023100da78d8ebe337e82a87c6f6af94500cf25693c9e2444d56d2f08199d84262ca780ee07974d2fe3669f0ee361d847b54c00302047c435bb50068306602310098389a6809a9e505930cbdb364b0ed329c2dee495b9c0573dbc755c96f47f0feaf997d9dd16f93b40abc8ab149b1256a0231009856dc93f77590c9722a0d0ee3ab605c7892d501dc1f0390af29543fdd886b868e1c194868f83c89815e388ca083bb6f0302047c435bb500663064023052a894106cab99214fcb8540c5c603a35d5502c28d1d7a388702bf6577a120a81b77d01f551af15f73a26d307c8d5039023037071f0e7ede2256b2f1429d88272c28c260ea873fe538f6aa8b19b036727d229d04885b3cad95e53e18be8ca42be02a0302047c435bb50067306502301f338e614955ba44f20578b433cc834a134017d226933be803f69636ffa416d5f09a05cbfe9f7c6b8b2ed4e472a8c504023100945febc863f5ecf40edee9741485189fa28d003f79724aade0732e45882353313cad339e4d680fcf163ac40e482dd5790302047c435bb500683066023100a31b18c47bc72f292d228bcfdec152fdd4cf09f5c2dc026f8009d72e473956559585038c7bff4549ff5504190086bd15023100ff3fe5ac31146b23b32ca037b6aa5c89e5e62480b6e5d15c2875d38861173363510761c6d6668bbbc51f4df94167a27e0302047c435bb50067306502300ba0c06a4dcbbe2e88e02c3907a8f6fd5bfacefd847aeb32d16b1c77f198e7c259f18c734061dea38b6206c1bef6b9290231008b2e1f620bd0655916aec50ad78b4d228343a16249b1df8161be43273d27d726101a9f87ca9c7477fd5c25b8b023f5ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100989818bce4917ff86926f447791d9d48271e051e4dd9ec279989c091ce55a87a7d3ee4c50e5ee191d2b3602c5a830eae023100e09329162832d37353712325b58549e9c553dd9b0d545cf3d429c2f2f6657469d2aa7b77bcf102e3f2af374298972cd40302047c435bb50067306502300af75de568134cccda06594ab54584d6191c2b229e5790d44d7dacb1a4ce69f8caa0527124187f374c7b355f20f27ad1023100889d7ec2b7fe6e7ce0e35badd0566457a4057fd531f425a4a9063bbe3f0bf618311b4f036406662685e9c7371b8b6db90302047c435bb500673065023100a89307d34a4de69a2be39fc49f0b1038e3f62982d07de077e216ec1049824dc5a0a11ec4aecdb18f79e9cb2d0caad3b7023019d6beae78ff8ddd03d4fe2448174bf5ed2cd9c64ea62f38d334efdcbdbbb88d712db6d56e165fffc494a5b844e7a7d50302047c435bb500673065023100f5c94538a3ed502325c4bdb5b17da0f7081d9097bcd3fb4ac1dbbb8067d7a5cbc58d8071c347cd99028ac56f64fc38e6023074624be07368d30bf32e1c9fcc002fd6848f223ad7a2543b176abfdb0d819dfe6144c7975273bca654218238827c78880302047c435bb50066306402300a3e146e7a58065ac0c855e2c4723242ad66cf4c2e06d5d72978e84e555b9f9884714401cd793185527f9f63506f93d802302c6d0225d95469a2edbf94ead71ce0e57a3131636d87f95c265fa49d3f052d6344b07ac58cbeaf66802b936a282631ff0302047c435bb500683066023100965368d531bfbf08db1a824f485d5883e94c33b309735d430f572293319df12bf09634177e803a488a5f445c70023562023100a08d4d84b4508ebd3b3874db36078178f638e27f224239b24b304af3d2114ad26fef1c7669610f3d28dc906e2b25cd140302047c435bb50066306402301979e74354e88f02ba2ee751249e354600b596885f1dae28fea53de8b4ac078e3939faa675e305cf52588e708d7dcd7802300eef28871e9a37030fcfb616077b9532147429b352eae2cc5bef7642ed22368a4db1ebac3e518ea3ceda92316bbf4d030302047c435bb5006830660231009988bd3a0a759c5e690893fee2dbcbca0715518a8374b95c8b02742fb937a267d8d458b6c8fb8b868e375930f0e968e3023100e095f6b7cd58ebd6f40aab433363d56a0f8744d24248420e4b67db29172cfbc813aef7d22a5eccd17be95b1d15160c1d0302047c435bb500673065023071e3cf6d1eeae5aee2090c797e672e6b0310c24c2881ef2c81838b7b17c78bb147dff088e51641b63b6a5c40a12ba77f0231009d4a8cd907303700f63fbb10163af4258c52eadeaf383abad3dbe26a09fd0c4b7cfec609d7ea8568d1699d7d775c3b700302047c435bb500663064023065d21fa5972f717968489c56b77d16be8edfd12cdffde2baa7e4240d9c93c97abb7420a15a469fc27ed4a64725f4c78d0230690461b3c4b139ee04f571f41af9284581f28a6a702cf609fc57057e40f8c4defd8c8bc58fdcf089f5749d9a338fb6c40302047c435bb500673065023100d0d00bb8ed1f9e73d3fcb29d7712ab8eeea92065c5aecd4632b33f3d0e5b9f874621779529ebe06fe4a520d28716c9980230798a6e3bf37e3c169e0fc2e44d38e7a71e32eda30b37763793590c3494facad246d72df31d0710e125eed361eef8f3e70302047c435bb50068306602310093518091e970bd929e4ca657aae0ac1dc8922033d414eaad318c68dbfc3ef4f3eca0f4e1d74ad25a115d16735b23d9a2023100f020541ea87ef01c4b9e753324ee0936cf04a7ab871c741ea963a9ea80bfaec9d2b27f1b37d82ab62cbae821294a65000302047c435bb50066306402304184df553a3e2b370d7469e8148b604afd840babf471cb07212c8b319866c163e1bfcc2ab7899fd40acb9bcf881cbbc502301077a3b048c70d51bd0fcf79c15b48b96a287653eb13d37806ee2a09044e58b1de5020362710d3e967f753a6f2dbb43e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab4eeddaa2a3e6676da7b5e937a6941c91f1f3f2c52b38fcee0bb9bd4125f1e9454e153f2253c376451b149a1c5265d3023100872faedbd0d5481f3d7706a07e45aafc884c46c0c6a05b8ed60f92e07d68caa1be3428a6ccf5348a5912b372d78c0a490302047c435bb500673065023100f6ef2acdfc7f41c5333a596da182d3c73de229b3ca5a703ebc9586653c43f8078a607f031a9eee5a6e16186422f9fba002301b1d47afb8b3d0cdbb634eaea186d6b761bdebfa4127d60664a2e0bbebc98e07623f1635bebf267c435505a03196e03b0302047c435bb5006730650231008f5f4af16d694212db3b39f529b9e835aeb912c02a23a7e7afc86dfdf1206cdf3cf7d3bdd4348c10946def55bcb10b5b02305d6e5b471fe7595917252abad2581209b33b2e66f2d3fdac1ccaf5fc5a03bf91a373d6bf9db2f5070f29f21febb8a0950302047c435bb5006730650231008e537be450654eff15f31f84d4ac8c74c1bd1462300d885b27d1ae828f2a22c34907f56863a47900e630a0f965a6b3b602306d13dd66279583511741c72e63203e956a0026a0dfafc2e4aa66b1a97e6a3efa39664c4924453bd102ad581dca9b407c0302047c435bb50067306502305d197ed59b9a3116cf5d96b01fdbc4819270dcb3db64f7280959df0851c9620b4d2eccfcc2383bc515d1841a645b18ce023100eeed97aa5ad882f6ae9b73f64e498e680d27a5168c287583b957a5311f81b720bf53d137e296bdca15eca321533ecd900302047c435bb50068306602310099e2f5712b610c8c1a7299e3575d1d84496293449395b7fe222e61c1d64e24af39be2e1e903c23e3d27a0cee9c6ab5eb023100c25da96841bee4d9edcce4de2ec171c9884118aa6698e02243e532863a8c9d7037a01f2203e3ef75c4ee2328fef344d30302047c435bb500673065023100c0ae7f35573c2277769ee0e4a02793f6c28a117b253f522f75af3d08914b240549d02f959f128474b59ae999e159a019023028aaf136536eda47cb87a7e81e60ad14da19647b43a0957c905889363383cb081e27b00b18400fdafb035a87b2fdf3cb0302047c435bb5006630640230624a416646853fc768e2ee8baccca7b419e89cf9b7730251d3308dd3a4fb5b883df119de561e8ffa413460398de996df023054509bcdd4ab7525ec5cf631156c7742d304ea47a3b30d644724e6acbd3718c890052560decb0f65e94c3cc2cb40a4c10302047c435bb50066306402304e25fa7559aba617e40c11c436fc775352e9848b09356711c70b442a1577a574c439c59de79f71434248b48ca901e70b0230463199d29303ae0c150765816c6841e5cb37a063ba42cfdaa568843032a9aa1371174616b09b68038b3450c7b957f6900302047c435bb500663064023062ebd2f9240466b10da19f041b9eb08c33d6dafd27966ef4b1c16c667591ebc7451745eb3f6d75b4f96fc89e8b00efef02302c94fd4ecdfe0dffb6d0b9a38eeefa006056e30991ce2c78c6153cc6cdd1906b17d91bd44b896bbd3c54109daf40ebef0302047c435bb500683066023100eef4c0b0d3847738a14661007da6e9577617c58daa2d0c7b780205e1358d3258c57b8460de0b47df334283bfdf1093b6023100a075e42e7f05279fb883580c8ee10315d1c4f9489044c70ea33b888e2d0945f56eaf49bd62fb600febdb178270530aa30302047c435bb50067306502310088b5ad045e84af7a905e655e05b3a9ba34c146082beffeceaaeb65d974fe27e75c36ba879a138a32ec20d09e2c2ec4690230702b2c9b4a5b5301570cd01c9b6a56d17502bbc3944a06d9d63fb9ab1f6191115693d66505a2ad1119f1311dfbaaa3ed0302047c435bb500683066023100e89bbec81de4681a4e3fdbbc041066b1225cba6c32f1c56177f943d9441862b5b95275ee990c154ca4a58cb23a7af790023100c5a795194a0851caa9373ee749f2ba42f3025647df458e7c5c38fe99fdf5d87a12e6e020047afa76d1602d0f4f0c4c450302047c435bb500683066023100b3cf5b99529b87a471fcc061aea3ab97c7c37a0bf6020c3b1482ebb60230a2e886e1406a06bb7d6fa7a6e04dd4185723023100cb0323ab2e281177a0f7576495fc7bec579e8627dcbc99fac58645d9c8bfa5af19e3e9179b474e9b0eac7370e443fddf0302047c435bb500673065023100ff001be5d726daf3ccd3a16f0df4725b897c00ce141c8367627288f6e600f6e49f97885b48094694d09aef54663c10620230781e60f6157fcac80209d90b7fce5f16f8a1eeab98cada053b43209dbaaa3ab876e02b90eb1bd4465358a4eb529598510302047c435bb500673065023004dcc8ac858bd3e176953e599b68a83adb712611fde2044c0661e0a2d26d85761eac81cbf425a74120f44a8ca60886b2023100c2ef49a620c3e7abc6b68e38b2245213a70f1816a00e116737bb9a31d7aa847f12b2bfad90fa35b0d18bf8bb88d9e1ae0302047c435bb500673065023100f169ebd2d37fbe4a580357d9f6984ed85fa7f52a93749439e0d90c5174a7c1cf941c23a4631aef957bef78c4d34264f7023059dab4194c07dcd46664682a7c1c95e5f8b568f5933989ad0ffd66ce643b232bc00fd9944bbc8cade4809a8603f29ad30302047c435bb500673065023060cc6c82b7e8a04f4aff3459b2ddb3fc6f9a5d5b8c84c194c8dfeaf279b801a9eb06914714e06a220613f8a9725c6968023100b083a6ccf4bb483f41924aa87fafd6868079e19f38ff26f92d023acc2cb0872c7216a89132fc8c16344198603989a7d10302047c435bb500673065023100d639b5a8feb9d8e1671b4c3dd2ade294ad42ade9209feac91fab68a66b5afc1b0f5bf5d36d1248a5fdc1b733b4ff62c30230088f6c2561609afbb2e55960bfdb4bd83d163e46a4fff1f781181d0e361c424e2dcbefe32181a667258bc19552ea3d990302047c435bb500663064023033e02ba86c7cf0568121da32507b4be365a55edc2898ef0e8240faa582f96362ab175d5539175e0bd07cfbcc9a5a441a0230700162a3055cdff55f97e594d36ad78af1a7cf7ab41e6ec0d11b48685e5af2e2e672724c8a4dcd81f5f99c10b7b1397e0302047c435bb500683066023100aa1559398a599ce80b68b2b9b16f5b858eefec2de24399859764b7918ab570a3a4d8af44fad04646ffc714258dc00027023100ca31d3478222ea909cef23224d520984ca663434ad152e41209f1ca8f9548858fcc295629ad36b8ebd3b07826898bbeb0302047c435bb500683066023100a51058c06e8c0d3fdc0e679d7ea511c8a2bb7f0302710010f6324e1a05abd8826b94b88fa9db35eefd3dc89c3b11a47f023100c4d06d529e62e15c9de117cc9759bd1d8fcf5402f8ad9c4954992d48cb4e44855acc9b2b5fb2df131c5505da3282a6ce0302047c435bb50066306402304f00b66c24b2e5cd7731f23b805c37224abd7d5c3488ff4a8c337c85d332eb812936215f453a5f6d481da8204486ac9d02303a402e073e80b0c619e6630aef4e62afe946bef49fef4b7d78f1f8bcfeb15dee3672bf40625b4adb14379336b415e5320302047c435bb500683066023100dbf76fbcb311e4c5471f2ed204b67828c80032b69654413b9baad2affa5110b2fc7ff0786ab17baa98c2552bfae4636d023100b2c89c821764035b9582f70b24d863a2bee951b81ae9e0da2f17c04737a0db558a534cb45ad7ab9c203f5974e82a18790302047c435bb500663064023007c0691325a152685c63929818e177d6a36b4293531f7dca2de09032cb7cd236ff88d226de8f5bb4e90a1559e6155c0902305d796a9405c3eca464a15b7c9dc1cb91083c1738140ac78e783b9e5c10828710e8f5a8627f093d9ab7201c09d34f82d00302047c435bb500673065023076660a2f8d204c867be1f4d699ae9ce27c045ee89a233aacc9a2b1b8e8379cf58f272b0b6935825d0669f7aacabd7f61023100bd13f9a84920267f3592628a284cd2e371e3b29227bb1f4ff0139a067061cf16a42553ac505271973b0b0420ad1349c00302047c435bb500673065023002fcc89ebfbc73d39579e9c16bfb29199b1a9fce9490e9640eec4972fec7f0c7e61983e984fb9a9f43cdadf4c3d98b5b023100b98f3a9d660eecb0976e762864b85878e9327ed600ac08c64dadd48f97d716a9fa728d4f1184f894760398d3220fab9c0302047c435bb50066306402301e5252ee2d20823909f91d5b766654e76a3f1a141748b675065f88a383755d6ac24da52990bffc9cdbee067cf508b25002302cd6b3ca4c629501c1f28c85530ecdd61e29adefbd54c39a63972736135f50958aff48fa2f801307a5ab3a4e95b0dd960302047c435bb5006830660231009793bcbbca61bb2fe41bb7043ec9d0aeed224a6e0bac3c364cfabf86f62793a36dd16fb72eb712b56b75984395516306023100b0542cdd26546d3f127ca4a0c91909bcf1d178f1535f1a1e6fec375bb916c384caeb689c78a52ace481da99bc68c10590302047c435bb50068306602310093abea373f0cfa6767192b1b97edff4c010cadc0e1bba15af9bb61c49f03c6775872f5e11ce489320b13d9f9b9680c06023100b07d50e0fcec893038bd7b71cb79bb3f470fc3efc363744e1a62edd7e36654530a8f29bf2938cb0e038c9d2af8b95d420302047c435bb5006730650231009d4fb459ff950447232d548b3da041442643422f76af56fd738e3192a961308d9cc9ef8d30e05b7dfd9dae6fd02f324a02301ae4d2a7b4251522a1149892aa09b7297287cd0c370e00f632b3faf3efcc767fa928855994264f06738543beaf335fd50302047c435bb500673065023100c58210c2ec6725fd0735b3dba76025e8e2212be6c58be79825ec91e8046d989ccc4a97fa7c9c3b709c57ae295ca776d502304c713477ec1ab61015d446a995f9493e6a1ffdffe2ac1419013dae3d99d346d743f661ba46187b89f86f0169398cb5780302047c435bb50066306402306a8a7a178c0db84fd8b2abd1a4f5f825dfac43d3b780c71365628722cc4300b7b353a3c3a5187e989f744caaf956310402303652ad64b607834a5c223c1e0268f4e8b7c4c247b1ea84b884c01e5ee171144e21988c1ccc7c45baeb401ef63ea815850302047c435bb5006730650231009b7ddd6e46949c77ecc78677ef8f3091bafd912361eebaef43124ae0d1d20b5890e2af416f926284980b49e76b1f1829023044683842f99198646858a1e88934addf0b4ab7e943352a77816397f61cae2bc131d76315d10e9e89a6eb5ba1a7cc69f80302047c435bb50066306402304718be7f9fc5bb9926e9d804b9f9a8d0dbf3b7128312f44d4586fa33179d77efbf9d3fc2b4c9a2637f2f336440190eb40230154f286beede6358346982f3485d9a89610fe7c05f6af63201963f7111c2b417fb54267c3569a7aa31acfcf059b3f6210302047c435bb500673065023100c19453a23292eda9d9dbd04df55814f198fd4964962809c0117b1bba2a3103df7abd4fbb6a3e54136bda8f02193ba7920230779aea2a5167df5753aadbb7b7d660783ff59ff5b9f8bb0ed490a1a0de7483ca018bbfc3f063a11343a2731715f9f97a0302047c435bb500683066023100949ccd4dc74fdbe98d094506f7806bb685946cada6c24fc72c364964367b2a18aba2e0a612a1cd0c4fae676544da9a60023100885e388af5d0a99ec02339a1d8623c3abd7e8b6c95c48469637d9f91856a53718f51efe6a822646a591f7a3ef3f02a000302047c435bb50067306502307fc13e7145518af1d51b725dde2e8d235c2132270c3bea8e7579724e48e4097822811db3dd3a1dd0b8ed70b8a87e1f96023100dfd918738a8821a2ebf318af04086adfed6b9ff93ba4b845ce8a143836ab725c7164f0a5d078069baf2e39965d3ffee30302047c435bb50066306402301ca8eb6b4c50cd2cca061d1fc08bf1be15c33194da6fe25560e17082afba230c488b132b47ea7c730bfc3e3a12ecb623023074446c6500ac5665f12c9c087a1e605378d5a7f7006bf46bb1838ace7e000a4505ab0b80d7bb6bc083b130f7ebe4aee50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d46e3d81aece876d73b0d7c10d6140cc8c02de6cce0836f1fa96e4ceabc8d602d7f4dd8cc299cb76b969a6b90d3b380023100d7c5c9aabaa56bd89d35cda6f6699a7ec598fbf887c843ab5f018324c146d761d6721f144511435f5b2eccf711a736e30302047c435bb500683066023100fb8e3adef52f10024cd99f16a910bd26e9676577024b002be53653735b348c517021f822a3c41f8f3923cfb88aa827b4023100d2415c5a3847b4f30735a145d7d84aa76057cf9d581e97c7028d537799af4d79a9e645795e5598c44ac321c6dfa3ac4b0302047c435bb500683066023100df6d7702f4037cee3d98d4e57fa8f568365f38f2053380795e03edcdfd079ebfa8794e9e5a4fd65b0728d29c6416c042023100b0560838a2c14c4ed9b9c8337eb34d5732035ab547530b63f5845d61decbadddc2ef0540c721f5c990eca64a8e39a9990302047c435bb500673065023100a2a5645a6e4dc3a9bde6f9c58af7e5ae0663f581bebf8d5215965407eeef3f837cf898af99dc27478bcab4d421102e6502301edca6af0d5da990f9e5c686576ed938baf971d2e75d832d8204b550766daaf02571907647078494f793b12c495a8b340302047c435bb500683066023100f7fd6ccf8de8e34fbdaeb3785adf3824075c230273a1f259e669e0db48f40567d8cb3b775d10548a196182b19d6368fd023100b84d5c171c1a51646e3195b45ef382f2a6e26165d88339097cef39a26285fee803d397c181843cf6112e70f085b857240302047c435bb50066306402305625f0359a39291ab31bfbd341b90f1f1b54dc4e0a3fddc173b3177741ebc17ea5493f909b4bc32235a94d0120cd66ed02302aa20d3438a73ccaeb0fe25c2ef08626c6efb4880adba03a5fd679e87c3d60235d707bc7f172a707a3a8df46d52ca7b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec2918ef41c8ed9c0f748c4cdfb52d7cb0538a47d8d67768d216e9b6cdde1a96d63843682d013456300418c55c531dd0023100a9440dbd7bcd3694390e54a2e39658a77397dec3e305ad17c55c646d1b793c969c0481546f22c764277fae1c10f1d0c30302047c435bb5006730650231009d981e29a020a610b57e9604574d52fe16652c0dafb218674eb3ca0457aea57a8e89398eeb6d94bbe16612275eac3c3002306b6bff8f250ebb68dfbb37bfbffa16f637166c0679897218c4bba6d8fa4675d5562439de25ecc0522ed9b6c56512260c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d561bf8de3441dce2494f6c6b889e91e7e9208fdac8c34cb83bbd8eb49df8425d52647d2fc9be974316f54916d69882302310094fc83440ca0879969456d83180af98545e282cddc343ec0d4e60dffcc5eb8c384a223dbffc2e2537c79982acf31424e0302047c435bb50068306602310095efeee538e488a384b33d67f1991c656dba66d6bb968ac1fbeb30f83f3257326da0e7f9b60f6a1520d87fb4921632880231009b637e9807505e630b6a57d72b4043d7626bb42d19f7b1d69d1df0bb1b37483f0e795ba6400aa127d7b155fc776e0e1e0302047c435bb500683066023100c2bb595b423b5a063cf89b8bd819121f01c98375b9a3f734835d554ad4fa59edf39a2116676933eaa87d0fc34476f6a2023100959463a1adb2110d763ad04f8c5169b39ceed361f30ba20c02e4aa6bffd546d1a1a3257cb260214f401a9c5815cbe3630302047c435bb5006730650230419dbb19465fafa568cc5778ae13bfdb5a3ae89dc6d1463521b5d5a1ddf5df74c07999384d2a83d62c693fae90c79ac3023100a68e3e0053fd312d6f045ea487a35f8dcf8be598f78a4490a01ed378a3338b57795aa98724fffc616da6052cfe9cd37c0302047c435bb5006730650231008fbe21510e662347ebe02d5e28de1453780bff8c68103c67b1a21d35615b6a491b134099430c57a7575502af37563bd602304a2f6981326705c3431854a0dd22ab653951ba5da6312d621bddaa8beb3f078a9f8a98d8098bb792e34f7c5ca082541e0302047c435bb500673065023100fcb9994ddb1dd9d29e7d956841e8fcdfdbfc02cb5026529937384f56b9cacdb97b1f7ce889c6e2ff1f6084483d55ea1902302b97ff10091b1ea7b3c6d2887f2a25e0f3d6a5f5b3f4a667790fad9cd0733972dbcc40ddde3525875e7bb02f66d4662b0302047c435bb500683066023100a80e36ff0aa8141b3bb54513807a29b8e528920658069442435f439778d587d2d7e43b01ab12f9ae17b1a8734667ed3b0231009327dfaba109615be0ff84357fe8b29361b573b2912578c036deb5437b5b56dab5135ae3e4e1f315e435179e81c404c80302047c435bb500663064023037a186d15361a147d8092d1e8b005050771ea8593c3d0fc6fa9bb90929c863561fa917f61a44afbdf455966e1789a30c023007fec5f5d9f73fd2e79e850d8386ebfb5a1b210c97c27d7d6432996463cf3d9b6f973f298cfe696510767ecdb802ed6a0302047c435bb500663064023053ad41a70ce5a744bf82204a000e6ad5b9d9a4380323d70c9b4ada93c0397839c0b0ce99ee26119d4aee6d2c109c9bd3023032d838dc934b4a7a863a01eb8cc98e907bf67e889438927b1d4609f13f7d3c76020212b917df538b3e48ef043ff3570f0302047c435bb50068306602310082f9e5649d9b59ef156f653065d05cf0b80016a1f2815135940a2d3b8f966559b1d3eddac41fd3d2d685f239d204c886023100e8d9dc15dbb0e9f196a6183802d60cfae8299125211bc110448e2db6b4641c7c45796ab593aac6c24724f50d8045cbed0302047c435bb5006830660231009b2bb83f3d72de9a4e35b702d8c72996f5db470784535db52cd956ffd01b83be1a4f8016e8d333c6829ae09c792788ec023100c3eddd083950ccd37262e094814233b0c7b0717692a66fe92ba6c5829f9feaf4ac08048497ae71be4f72a52751519aee0302047c435bb50066306402307823f6192eba2b206ecdf4fedd56aecfab874fc15bcaa7e9594186a84e56e930d5bde84eb7ae134eff61bad6727895f902302f18f00b26492468f35fbf707c3d72b9388e495db1e2eee759ad374ca56eb127d145a9cd02a59fdc614a1ff4e1fd56890302047c435bb50067306502304c41347d8a98e735a2312e30dc06f972c3270041d076ed8009f5e7d71236e0a9efa95be2fd2f728e5c189f38c1c7ec47023100c3d6daeecb3b3670293bb02de728235bf9f64dd79f0d175b3533039fc3ab974aaf5425f898a6cb70bf082402f8053bfb0302047c435bb50067306502306773f43acecd37d4f3d48e08612b18e6390c643450472af04de0f2034fb9868661753aadb1c905485abea8e92905dc300231008c53d218ec02cb978b48a73a49fdc2f13c6dd1328cf51b035de992b0397e8cab8420be99fe4631232e4fecce671331e80302047c435bb50066306402300c65738470352b2089781c93148a0f27fe51ec706ddfd449ce131145025b4fa072802747991cd129f7d97066244ca13c0230569f9eeebeda55ba410d98e7a7adfffbd0d25e0cdbd3428c49cfcb803165cb99e875f2216bef789e226947d6709aab540302047c435bb50067306502303bdd620f10ea5ad362a856a632b47496ee89f0000a0ec5c3a7432e3a83fbf23f552d5e6c1fe513b61f5c18be67863dd2023100f4298735184e1476d515c293b5696a00aee900a591d4f0667889dda89400f84c849e3ee2d291f1944de94997046f911f0302047c435bb5006830660231008282292477314846201ecc06d631eb7bfdae2203d2b15723ae37ca05906b0eadab83a5320349451fac84db91733f0a3d023100f33f58a8c5f4c318d564d28c7ea1735ab8027b3e0ce577862c6ba18c1ea23776d08a0502d7a2d31096c318281a187b980302047c435bb5006730650230043dcd5af38cab434a2203ae013864c50fc15a52f9932ba171d95964c2d8006ecc0f5b6252f5f7e1830743fe78aed88a023100c3cc1ebbc0f8f9f1dc5b48cad9530d02aab28fb13fb89a1aad093ec84a81297af0d3172185ef15e1ad48d0182237df2b0302047c435bb5006630640230726a6636fb7114703461e5f686eb9a492a940087df2f87f5a96cff5faadc191fcf560dd10701244c89f51d0e33f522e402307ba5f281feb7666f8a3120b0f056ce7988dbf822ac1ba009d98a0449fad360f8c0f82430e70b81824352c0e3acb1968b0302047c435bb500663064023078f2588da3dd77f0b43a54579ff8048f527f5e285c5fe2319eba106ff2938a118562750da3914ed084e2e9bac24c18ae023027b4d32ec49e63115e47c2d6f62d8bc64623e3ba8b166c17cf1b4ca8c8e460bdd1480cad20a3ee205d42430c9ea807a20302047c435bb500683066023100adb885ad39fd1908213a968a8b2b522b4df4167aa39bcfa17b467647c7203d64c540cbb132f6065e9089b9962e7c746d0231008576113c9f3210c9421570cd361e914ba74b09ddb98e15f78e267685fe30c3dc68ac70add640a429bf93b5f7f868b5cb0302047c435bb50066306402307895ccc79e333e8c14a4d71f2f6adae7d72aaaf741ddcf2fbc278a74320844c0612f59d79bd40f0ffc6780e97561a42e02303c33938d3440d5b0cc4edc3fa96090fdf99f6c7ea23ed26a0ea46c44c4197ed2bc15d058c517de4a003ae75c82262bf50302047c435bb500673065023022bfba64d2862c1c78d91ed376e29c9b98759adb11961a069d63a8f6704a8c6a78fcc2adfcc3e028373f5d5f6611786b023100b80366d65250455045a1e4855487ba22e1c3b93901d7e75dbc4321b367f020f9ee25a2be7b7d226c11acd9eaddffe5c90302047c435bb500683066023100ba368406105664acc6884e2dd985bfffd158700f23298e87a33bc875be7a5e25d57348e1a0aebe3c80f0dbedca6d6d7102310080970d0b3d20be7e07ae3be4ded56448a2940e6260e76539b379f51657ef45a590a03fe109631ed8d55aa81701a17a510302047c435bb500673065023100c0c1f91b2d2da06659e33c12569ede6982d2bdd640702363817695d66ec0ca5923491a96be079f1f9b62bf4bd348cb87023061f5b76b744677de64210f724f0ab2ce24c3dd7cb55a1aa2d9a221e36fb0b781fdafcb72247acc7286fbae4872daabf90302047c435bb50066306402301cda60ef1ebdfcab34d0b534a404eb6b70ac608739d18fdddebd616548d18e9d3919dbed5dca598e381cfca73b4a7f9c02307d32dc2fffadeff96898f8d7eba85208f699cdd63a46a205a86ec4bc02bc88b17d2ed24074b834bcc5ad81820ddb91c10302047c435bb500673065023100b98b2ae2eabaccf8c3ca0fe5f9df12b04dc1da4f84b900780a32f66a1830ac19d3332d8f770cbe98959a3378b116e11d02301e05561eb1f80beea5793bce77e980e41e31afce0e6c075cb5b6ecbbc97903a40e1567db8670db7011d55f6b2180d9a50302047c435bb500683066023100964f9f2c8b63dcbd724fe3bc2103a58833e98eb85e4d17f538f2427479f16bc59813da953368773d2c38075d6166e6a0023100e02683aa271efc6f14d6304e46e248d57479df3c10056c21613f7e298307eaba49a2b76e4f8c79b16c2f1cdc2a9c5f5f0302047c435bb500673065023050a100ac85cb885f0a77b412d35db5671c6d3d7f21d680f6651b268ec5f1f15038bdb49e572d947e6ed6aa568af53a670231008a5272b4a908d6ca936ae4b5a3400de5c3821759370d243a7c76600db8eda6841ff8ee8405ffd0254feaf58d798e66b50302047c435bb50067306502301dbb8cbb0abff928b2cf94b4482bbe24727800a31c114ff69c418106351d385d249bba5d0c9cbdaf2a347a0e37a35e10023100ae6a8e96ccd2a7047fe9f5fa703c220d382c7316bab90bc0e8fdbf57807c10e59372a4c251a5b846d6d4708a44788c550302047c435bb500663064023009b9a5630fc8d20c26224bbeec975e3b771abba295c8110deef16f52f64c5b6bdb9c31fca04e2fa482f2b4b90bf60012023031ab6dc1235dad70c309ed416e14e088584c8710378ab303414e545f4f3e5959b100d1f77439a4609c5c2545ba279f5f0302047c435bb50067306502305803b271cff4b728b505712627ff0409a8aae349a896a35f04b4e8328f99408c0d464aaf235d579faf73283fe7d8caab0231008ae5f483d13adfade9eb8eb61fac9c6b35baafc8b987cd8b50935ed4e5a4f7a1b1110ceb3a01ff22d97e29fc013a83040302047c435bb5006730650230295bcfee857dcecf3ae7f2130fbe0939c4b15bb8f97e33ee24fbeed2f234f0183f78dd5eb5dd10608f9319599fa336c3023100a3c7195f5b5de2e3edc3ae18289e7ff84588c558c2bac561f44b19ec678965bc77f42b6dcb9b7d4636b1423b9b46f8b40302047c435bb500683066023100c346627bb652b7150004e6a69a407d268f055368c7a8bafd963882fc46fa109b6e223b34d5e1d526fbc77651f801d474023100fe088e09cbad8d625f49562f17510dc83abe999a241445b1312717d3300989d89aad73e565e6cdd6ff5e6f2bf40127400302047c435bb5006630640230725dbb561eb10d9c1a81bc0fc52727d60c61cdb7f61f46434e115c610583345c61f47ed52b51dd686b7ff92eff15583f02306d62aa3dc0c79863a2d7bbb3b5b4c539eb931c61365a67f979892df216d81f22904b6705187792813d699ee6e482cbca0302047c435bb500683066023100f151485ff8b2d18a9d87abdb7a9b654dfb06d73c986974207d8e009036cb932e142caf127340567a54ec9bc75c6a4a620231008697a2d6d1ea3dffc6767d281d064e8f076f082e70ef96bbc339c4d60a72d4670dcf128ff9cf5fa0a7c8218d1108bba10302047c435bb50066306402301ed7747834f855bd60417ec39ca7fb64509080e53872db441d0e74c97606404d71ec3680c3805a83d4dc4bac57a4c25b02301426b7934c31efe7a7a57039c94e35520afc604334fda713e0352e0c98ba4aab45ed2adcfc5b5dd411997e3e4062c6200302047c435bb50066306402302a01a89fb2ea9356e74dc6928d2ed266618e05dddad58c11df8ae6e6562ef734dd7197b918a0166f1767f6125d6e468402303654b578a3ef7344b8937dc8dc2ecdb866e4c65c45411d49e0fca65c41b092713c4a7da2f7bd1cf7462cf45d78acf8f00302047c435bb50066306402304dbe5dee8db2fd07a9f22156c96c592b9c2d625f9ee582cf51ffed5957b5c36668361fe8b8879df9ed290b12fcceb5a302300437ab308fb9bc626dd000d8c0391e532a0fe94ee4dde28722b89af0a5e55e4fc34965c35492dea4f107dd93c2f14c590302047c435bb5006730650231008dfddc92d986c79095b42046b448d9eaa1b0a2fac8f0481788e4bca9ca6479c73a6b02111280a494683577dd1fdd0ac802302af417b23eac4dd3870c12927457ed870d6943e8967daf11fa7a8f9a45ecdef3f142b50beeaa121d3c9ce2dcc68ceeef0302047c435bb500663064023077a8526066d374468d68369a13f442c034d2040a6d52f9bb9bae5a86109a8d21a777ff9ec37c42531fb1cdee9a38abc602303f35d5252b0554bb8d8abf103fef4f5529c902ec9fc1b4a943cb8cd85b08a0bc579992296c9b264beaad1383f69ec3620302047c435bb500673065023100db3e4d04867d8d4f35da86c6465d2aecfa3e0e399eac85bd3687b74188bafd6d8ea88316d9a193734204c81a2f17811d023067b2de0d77e472f5d043b545aa66b71ffd729476a1f91edc04031e769bee6f11090ca05a1b76b3a6db10b603ba168d9a0302047c435bb500673065023100c5488bf62fd5c9def93061dffa7a31aee3d349ad4b6633999c959d2fde04f9b5b0fed91129b24dc6840098e1601d1804023057ba6db9ecf64cc697bab2ea082abb1d72ad0564af3c33c8a7afa843949128844b24d0a154db47da2cc1e62211214a7b0302047c435bb5006730650231009e37082dacf3dcaead0f7cee774dd97945eef6d924f091d557e7dec0cf707c96e700b48308b3650f7e760805459704e2023004df9558cc24bffeb08e5cda0d43746275065a84832a9fd5c65a5e4b523fda31802066bb9bc9beb5d2def121e145d2f40302047c435bb50067306502300fcb943bcfc6086678bd7df8a683f0073564e53c0f70a9441f0a47f67ae7a2a2b85b8ae524821b3c57bfeee0a30f033402310083c1bd8f6cb9d0e4299c276976bab28d2fca76d6bad56cb70db8a167cfcc4f2d4e1718a74fc0831cff462b9d0c55e28f0302047c435bb5006730650230719ecd183aa699db7af8d2d2aab46fc77016afbd47a907d0482efca9b1118b929a2885866e341208829f1711a7279598023100d238cadc155452173d40edb065b042e91e41d6ba7c919aded35506e089691f61892348f607201f7fef306d61976e0dfe0302047c435bb5006830660231008d63c1bc8c52426794b1b16aafb6a204334f8b3620ca160e4b92047d3887d6aef87ddb70649e087a689f23442b2c80f002310099dc8ee515bd04b99d2aa341f09789af37490f65e1ff787611e7f4a492446cfab4cb9a224350148729d7272d1c9b5ee00302047c435bb50067306502300dbc6d10e782440ebe7b620256667f2722f99c6e91a83e440f7bd9e4f9d00fa8d8abddfd93951afa8a8b98bc60f40718023100ab49ea97b2cd47faec57f510a2b9167790e80db9a3f9295fc7b8b80b084657f47c1e425a9ebf97669749c9c9e6ae0fa10302047c435bb500683066023100d32bbc5fd9b342b92579c27100c6c78cba51deaf46bfb1cfaf107984237b137f4954a453a0ab996e2bdb53ace2e4078c023100fc73245a36eb239c212adaeeea12a28d9c9164a42bc11a7f1686ca5d346325f5d0d720c34e2d2eea997d45707ed0ba510302047c435bb5006730650230495660c9e6fda799782c2af6dd73182d5de81722373fc255ce8cd5457512970aeb0135a8f8e6ba83211feeb056f30417023100806dd11779d6b65529f7ef1426ba525c318e921bd49d2d4694e5040d7011aaad6aaa34afb5fd1b1784a3ac67268046700302047c435bb50067306502310083b9a15405b0052f2c3e252d1567942ab2710df7de5541cad5fd1110de5d8b31fb5faebb55c5f1752cef7620d021226e023036e266e160d080474994be84a960f7ef4fb386bb9b03a16b94d763be899b2c36efbc57ef5c6cc6c12596668e03deb6930302047c435bb500683066023100f0577c95616fcdaec6cb3421562296a6636e1317e57a81c8430643db9fff86a01a7bda5977e25d71eb13d322bc3cfbe5023100eca39249908a326f02101de4d5623205a3f87037418c0340a8aa2dfb30a0929dd66630825d1fbc7a2943eb071231fd640302047c435bb50066306402304f84f6dede0e09d0e29c239ba16907bb040c9f0dc4786636b2313b089f65dd8225639fa26f0044730877255d499e42b502302071faa1fcd17dc42f5abcf129f1a71df17ed4efc3d218415514fa1013c0ad29770d7bdcb61f97b8cb53e1742783aa050302047c435bb500663064023039fe4e18ea7677361e768f7f30045b80422009b4c50a3e320610429417dc2daaa2c3ac58effd5ad138c3267bfdf5919902301ab3b74749febe6d4714a73de27291a9991914c642f56d9a4161ae638274a5321c7b6cf76d62ba1506aea0f04823ebd10302047c435bb500673065023100cbdb77f0d3004450fa5c3b6c50703046a3b448615d7cb19ae56016b34603f2d9052cbec49756b5a20339bccce55178050230238d39e1874201849cf7956e879cc7c892ae654d3080d0e4f5fd02e525da04b705b819195e864c066129f1121c21ec200302047c435bb500673065023025f254f3cdfa3fc1514e78f72d0a3d4343c0d674a5883604144995ab3da320baa5166796cb4fbe36050c397772d32eb602310082586a42ea84b27fb0df553e4c34542428397c368c0593dac71603f3b173bdf706ad80f916e7a4bb7f382ebc55e6b0210302047c435bb500683066023100fc9e03527e4c8bd2764dc60b6d047220e48875e85fb7fb2979f0a10eedfe2323c30110a6df88c377d44da878986f7c5b023100a38ed7da83f7880f1bb9aa5099ea75aef5352bd8743873d631e09a6f360aa9a50977d15b904f4b7303241f83376388320302047c435bb50067306502304f3da37102c75a149b6b26a48d0d47797fd88e45d4c9c08bca0543882c69253de232b3a24b18e9be5e46a5321f93ff11023100e656fc5820107e4606670684040a99d89267f91225062133eae5323c470bd4aec9eb521ddfb81db067438e1b68976a1f0302047c435bb500673065023100914be52dba36058c28f3300471e44a6310ef242d3395e2c4c1dda035b4de8ebb4f730a11bc9e348b2c863dc07505ba4a02302d211a70a6f44d9f33a00f9e3a04fce638c64fa004f107169649f3a3083afba5e759d058d882b8d71132f6673cb087bb0302047c435bb5006730650230625990d29ee54c793fd85681dd361a0e036940607424d8e7fb8039cb0f4f82737ab1dfa34421a840eff2216dbd7b652a0231008354e192e53616e128523148e52e184641a26b6e45a1720dab89fb2d4d3659fb2ce3241080a8b77b63a5337cf3985c980302047c435bb500673065023009969c1435be84c960d46278c0903381f7b74bfde5225bb1052058507fe054e1d8583335015f6365582432f27867ef61023100e286fc82effea897950bc3e78d406ad173b8eea8b575f24e017db221afbcaad165b7a67d3c21f74f016948f0bb2f98030302047c435bb50066306402304885b69a5883cc82e8a32860fe5fdc260e0e662fec836ce2e97b54dd6c3cdb00b4ce8f94390d19a5f162ad2246eea56b023017e8441bfd1f5d990099a15b363c3f0e3edd2383cd9948e87200cb1b822650fc5fb171060b8921d9b97e800d6a7c239a0302047c435bb500663064023054e67242424031846ddda9317482db457613995fefa57f41475d4063ca0c7965e1851cb79e120a035fd0cddbb4a3e72b023032a5240427079791ca39828c93859a4bd2b3ca4d6428edd90b4530f5ab215d19c9dc37ee33b2e3db9e8cf6e4362100a40302047c435bb500673065023100a3d7225c00de0c3ae91fcaf4c085f90d4295617a3c253b809d1551d6a72437c2f772bd809479780f32937bd3069d7a64023070492cf3cf54f10dc935428b5c051d95cec072415eff729cbb21cd13c0295fcb63e57838ec674f27887c4c12af868b9a0302047c435bb500673065023100fa251f9f9a349f8512736a4f1e0f6180799f02015c52170953b0308f762db9a3691d18f25210c91f1ba1e4cfadde0060023034ae8cf1821586eeff0199b2b980ab1dec63b4234b669ed94c112084b8467dad5cd0be45cefcb602fb67eba6c9419c800302047c435bb50068306602310087d3e68ac7710c8356136b950033f3d2f421e202a81b09ec69033e710b34bcce65feeb2a277875d1b7a73818ed01f7a6023100a8d91bb722ad655c947182cc406fc300b5a48665644f8cf71c11af4a4ec90c0fae3d65c2d8a8e33ad370d8d214a3238a0302047c435bb500683066023100bb37f65e92c1eb42afffd8cb1d1a1cd5506998f89907514620a34736ca487ae47d62011d0dd653bd16963b02fc42ae10023100fd3ff150210e8ac4db12740c8bdfefda71047b38a4009f3310105638efa503917061a73f311ac9bb339aeda8fb08f0ec0302047c435bb500683066023100dbb8c4f4890a1e830af1a8f9eb241b832ae255ace935a3f47bcc58fe02b990f40f92a04e0e992cb986f732efba848194023100ec11cf38c29b80de9373745562b134130722eac5bc90b28825c81e4504c8ae22dcbe1216ed96155ed9748be6a8d8a3a40302047c435bb50067306502305863be647ffb837385d035a82d576f5c90dd82ba0de897c43e4b03738d6fbcc5f39ec646ccae2a789451fdc925dc2b660231009485dc416671b677b48c718050c6342ee930ee990121d07567e784f82bdb3b5e942243bee1a0e05a982e7e76b93b8bfa0302047c435bb5006730650231009dcf0b38e225ca2da1f38185aad77e315cc44e0813129a8407c55a6b3100fc5c688a874845ae1493a33d3d264bfee9fc023037540ee8517f559acb36807fcb0b913e1bfb80ef8c2adf2146034cc46fe6131696904c3d24e4aef62ea680d047ecdf960302047c435bb50067306502310085882760e26e01ac49da46c5e27ef31c971c532f1f68616cf03686e61dc3facce7e066554d98cac3eb7ffd0c4c7cf938023062143e181f37a39bdba487358e1472aceb3ec60c9af07c9d4577ff831801b43697c0b782dac4f5ffef6b40fd4b1b37080302047c435bb50067306502307797f065cb3edf0e1476b16be6303e27d88b2b8748e40fe4abf8ec82b039d843d45415d7f21cd6b38d1865a6c65eb855023100aa4b90effacadff253b242ef65cf3d4f9d38e29d16e697b965c0cd48a0ea07fdb7b81266a6077534a13d36265bbead130302047c435bb500673065023100afaaefe27ee67b29f30953052092b021c3bbe855677b608a6a54fc8a5a07a7bc60a67d372783102e2d243cca3113ea1502306a1254ea8a91b7d56eab10c46f3336bd82b10cf058cd99b83267168d108167399b329af29c98987cf5ffa4770ceab3520302047c435bb50066306402304397b0f9c3386cc62821688ec67ebbcf20b9e5d505290d9841ca150f852fcd0a129252f699ab63ffe1231a5e08c83ebb0230475f56606e1ed57e75ed78cdc23d1fda49f2c7b846d306487a03ad93685577098817f1fa10800cd53b0c99ce473a0ed10302047c435bb500673065023100bb6cb2f8a06ed13115bf57452ac6752812cbd2bbb97d81e32c7f86cd86245c26921ea92fa45c1b83cd512d6a6dd2c54a0230532bb9ae0554957c5206153738a1b030b21d2ff9559d991433ace664d39012e10722c510fc9b557fb659f9d2575748450302047c435bb50066306402302cfe411c41e3df6d577666d63ca1963856c81185efd83e77c6ca35c586dbb7fdaf38feabb70b12366cdc53c54e53bd05023036a089bdea0a79387cb177ef9075f6d5436617083806bea20869e0517a6dfe3ca31d4db37a74e2d622bf88d0d00f96760302047c435bb5006730650231008dabb198dff338b8c93716886fd701027bd9b512a49b552cfd588dc84e27948683f98104bb48c30a2848827c871e0f6402304a9f7a426f874b8920541f81f30599997d92ddf53b47682296079fe68497ad65aac7533e39a8d5025a16b8c176f423500302047c435bb500673065023100802c7ef75e2ea1fa2a421ef89b136c6f0a9ae834b9270bd374d07264d90da963489427481d55554a2b04ffa7b6e3f14c02301f0d27f01bc6b4553614d1f7ceaaafd5b41d3f73a295f39e0d4ff63950e1edaf2a5eb3261b352c053c2c1fb557b3ea4e0302047c435bb50067306502305830df50752404b16eb28826b769acccb9738c5b36efecd491b4718588dc453b5f3af17dde07b0680190dfb3c0ba096602310090eecb9053df8bfc8ce430638cdce9397cd4726521fce20983db5fc27c03ed9b619d83ec2937886796703dc890ea1e530302047c435bb50067306502302ba6682f7d83a6f58cb1068e8e5e7922ff1ea9242e2238227340305b58b5b4e52c2e660844a06e9c8f4ed3ccff8c2fbd023100d564ba42bba0e2d819eed87118cf9142429a15ce7e303526043377d6aced47435e2be8a8de2052f0849a787b17e556e20302047c435bb50067306502301d4bbfcf1d558788a7a57aded8367d1025a356071235992e8039b62c14ff6098f0d209a9f96173461e1c513b7a5fd20f023100c31c25598e1d1408137db6902b9c000567f53125ca2835fc8c8ef5d693dc4b2a46dafc589640fc1a19009ff3f60cbb770302047c435bb500663064023065e1da913add2a74e00c7c019790ba4c00d21431abf82dc65f7f578740085d1e2e991fd9f0ddf8ad644a0ec6c2b9a3230230116d5f2cf3c121c90c576e33aaa82250f1845d56dc4e44e6c261070f212d1ee80592374f33d0b18f11e2215ad0c959000302047c435bb500683066023100d908418831367ecb239226733332ab6f1f8687509cf737275621fc7ddb4357f666d6740328574431ebd9c35f2c07dea5023100dff8939cf1d225769850ca6173411d1a483caf1661f4ea6b8f1e76b2cd54f5968adf3cc54166c3a25641aa226d4481cb0302047c435bb50067306502310096767a30dddb2ba43a6b6d6c250fa297653e413adb0a96d0af98ebc8eee2a1805ec42a9aac566499088fce1a10e6f5bd02304f7e1d06bb1a1cbc414c9d1b06db4c3678c64bb1b90597fcf78c260015958ccfeafdb77863d5b80f5474d05f2de445470302047c435bb50066306402303476c1876082acd659a13e5601bcc0ad5daf35645ac8f46744474832182eb4771b26e00d92071135859a92952b361f1a02303d78288e3e163d7e7607b91e583f55b380888d88a9d38fc2f127413049e49c3d5ec9a7d9053e234b0dacae61cafdecee0302047c435bb50067306502304c33771a1481ddcf71e8e6cd95c53d1aa72f9a0ba9b41c5832fa97f9f4a6d70d515f6cc986d681ed4ef84f1463edb0ea023100e33755633845fd693a48bd3d64a64a0c0c5994be33291dec44e29377703fea9e8b9d832d566284198061b070881741060302047c435bb500683066023100e400b1824f4dbcfc49ab1450a275733de0d654da77cadb88bd56a9f7756ad3ab5c3b94e289a578774f4401e2568b34d7023100d307c1bf79195255a913071eb791bc3f7f235f688e2a56dc64ed65772b30b42ef1e645203ff755230af4854674f27bad0302047c435bb50067306502300401aa4bf2bce6d2e96a5f08291d5441f9bb97cc5be8d99d6ffd6c477da0378f8b0f5b1788913699da0970c3ec09f329023100871c45e8fcd099d14428619c95eeee458be61b78998a7046ef24e0205787f2226f41bd137967543a0cb24eab55bdca720302047c435bb50067306502303fdc10463055371bdae354b8a48f75003f68aebeb162d269d29c05d22b3903aef5adff08361ff21ef6fc96ec77d93519023100e756114f57b114a7acc2c3ff5a8af7960e63539e1ce7dcc76ef1a2de5c02f1ca193e1f28c9159994e002e5182b052b5b0302047c435bb5006730650231008699d4c317621dd69bb2cf375533c24711ec64396966c6e3aca0f623d073cfd17fb2235ff73003249d9be74692367df30230380e8146f97a892576d0e61ca2cad388dbbf231bc0d1565100e59f3e0d8f250e801c3cc52c684c4f216cd83df5a83e2f0302047c435bb500683066023100bb12463e65b01afdff7e3c9f3328c5eec461e4c58533de8fba68afde82aaafa92a63b526cf1e4b2ec5b1c1e20cdab9d3023100d8cca84ccdecb06325d7f0f27c77794178f34ad21b7fe93606664a102026c669aded1a1f9e8ca0002c9620779044b9de0302047c435bb50067306502302d74176c04563d3e1c73b9d5837cb6ddaec1bb33cd11beadf6f0bb8d09125ab6a8975feebf6e3da5968f06151e662139023100ba32d43fce930b511d7421195b87fbf4a07948a254ac1449df105998bebf9ce1437fd503f67860ff3527941dcb6d7dc60302047c435bb500683066023100bf60e73663afa9ee376be02a6730553bc3805b6dcb64fa7a10d21492ddaf0464f89c795321908931ea4765619579532b023100b920edad1fc7eb8bb90d4486161764f2d10f190412d59bb67851f60270edf8f5e1987582e6e75a342f4a217374e998dd0302047c435bb5006630640230437220b59e245f9f17d63dc742a79cc0ea435d688f531ac1ac44a08b5c36aa3ef58835ce94b9fc0918ea7f8fae5c6d4402300b9e98fd773500d29da945a0d5a7e093fc0b82664ef3be03e0c37601d1c7c855af5cc3cc62b47f8ad34ef06ffb7f9acc0302047c435bb500683066023100c1f2a44a334e7897adb9d663019d65a0749971365844061f0f5944af13c472a14650e2fe31b5071e5cc874322ba1b69a023100f8633ff9a9dde419decc12f2408aa72a316accb40dc926acf76d7de96e1ad3c910846f6ffabb561c58e61935e915f3340302047c435bb500683066023100c63aa53fb6592e60c2d3fa78214bbbac3ba47316e3bef3e7133e1bc9a9288ec24e4a97de8f3a16971dd09a90e7ed72ba023100f55dfa78d1e030ee2340c0175963ddc9270388cb8d9731edeb48c13d902e62185e389dc52076de54a6b775702057016e0302047c435bb50067306502307751bbfde675823660e4ac43ddd0f0bca997479533d7fe96294996fc56dbfad9902478537277b64da622286542e75203023100de17e106d31cfca471afed145029ffc3c788c779dc5c54599ab8b4dd6af91d3381f4756d7104da08084db396572868150302047c435bb500673065023035470f70d2d69ce49408bcafc9bed8ae25637bba2ba11c10a756d80f108b0c31a455e7b33192a5b1281501e1cfd2fa02023100c7c9568718c43e49d7a6e2ea63942a8e480241d8e4c3202a396441d7e145d342c1cc5d4702cc2b9b562e18bcb0e14ea40302047c435bb500673065023100ee013dc3c11c482ba5bd46189e690b5e185010962fc755d0c71ff9ef16ed812a1204c77ab66c44b10ab7d537ca92d27f02307bd48dd86e1fbc790d225e5b834dbd7a9f1b1c9d6eb34787145ab0bb1535f959e7821078f5635f5e4cc81155d6185ea30302047c435bb500673065023079871cd2f3eaa1564c27bca9e0eb96b021647094658d539d0d63486d2358f41a855ffff503f27648f3ce49c678242793023100dd3190c9ace3f2e3e8f49cedbf5a2c94ee07915ec6ce29e898ac3ebaac7834dffd2ef1746aefa8d5b2f0309da40cdf230302047c435bb500673065023100be479d558a9d607bf78d618c1892a7c91752d140b09a482bb370cdd0427fed2f763781cd468fd2030acd0aaebd9aef8102307b2b0dcfb63b7227a2d57368f3855d67b0d2101b439bd3327d33ac14f140203f33ea622cfa8f7e0946cc6d602a870b110302047c435bb500673065023100932f79735e72ebfdc82c2cb28ca65a5d6faffb8ea8773714d91c13b21a1f3114c8e0e7c00f1d32fc8a926b3f74c7a0fb02307cd5adea92df270a7f64444ea5e83cd7ca01db384b94346dd76d5535f18f36523d3583dea4c9a057d976d8bad78bbb350302047c435bb50067306502300cccc61421070060dd0d96f7a13575e22e0fccb04838080ba0af3b35f79e566a54268b1451a44e2ea2d1f90bf001dea6023100948a77217c1d2358614f3f5eafda7def20706a1f834e3af448cfe1ea96e8c81417cb19dd65d929f3d6711151b39393280302047c435bb50067306502305bac2ec076aa586fb8e445779fb5036cc151a26ff12ca234f488ea3d4dc2c2c630173bf2190468a3210a44f1a1b810dc023100a70ea6b2ecaf464820652a523950cf0a22f0aba728aeec7505ad261b75038507bdd553aa102c84da936a3fe533c8838e0302047c435bb50067306502310081f9b7db95331d2a0a6d5659adbb7bedfcd2c044c5736d5c6979c227e8a46b1be4f7eb5082c2c4d0f1d1b55f49409aa002304a58c2824df3f78a563340960878d6eadfa3ec5580aef17b8575fefa2e430a8ca93768c4bf42395f267a4de7f410d1360302047c435bb500683066023100b8524ad7445641ea9289e75d0fa29f9abed6d9038c3ad03a522712176f8714944d344ced27d4c6877d9fa20fce64b6ce023100b1f8439ab57a1def33cdd3a142c9d4cd4ba657c360c5a6d9686f711deb85ad9ffcfc0de91bede27a0644e7954f8956020302047c435bb500683066023100a6a14dd1f679cd4e01cd4c75b22856620c8969f78041725a11ae4eeecf193628498a80e554c1129516c4eddb9288b81b023100bf8eb760c90be7532ed264cca0755edaa86755dceec887b8ec0447a525c0bacdc2e149efd99d1d6da7d322104640b7720302047c435bb5006730650230788302b53ed9fdeacf3373cf428c58fa5a11e63aeab085808176011eab6c2eb0c429ae762be9aad33bf299c064afa50c023100facee5a3a5a63d24cca6e8b10f0be2d929a9e10c2f805f98bc1f41c55aaa6ce157b9d04f554dec4b8fab5dee82bbc34b0302047c435bb500683066023100c61354066b6f62043b2ba18cde6c597a039ff96d3406e1ca6d04589e9a2ba9f102854a443e3c0566365eaf1f713f81df023100a0c3cb5320d1b8d684daaab67ef3597a5de13f85b3caf74f5e463dfc7bd3a0f9e4a44fc6a384bd36c5f8d3c066309b3b0302047c435bb50067306502301765cc62bf77cb61cd338aa85129df3f7467155728c96391764891f5b8e079177c11d7c4e7ed4178c6d08748e5555dcf023100def32a430e39975b221c6eddf67448cdd617a7bc7e7c9fe9a52be8be86c669cb235353aeac0e72f840d6aa233abde0350302047c435bb50067306502300b6784c677a9eca8e642dfa9a8f7157d6ad1206de68912a53108d7430eb93824ecaf817bc9822566acf3689eea0233480231008a95ea4a83f6fefbe8b55d3df27e95a33760af2461f5502cb5bb9d83fa44e670a427636f1041cf38be85756d62376b430302047c435bb5006730650230516d3e09f4316a05acef1d9eb6f6f190af9abefec0821a65924c575b0b44933fc905cab58b3c5429f04ecd6cc4b68a08023100b41bdbafad92f4c239ac969529a0488f14c8d81c020ec509728a92131bfa1c35984d53320a3b3e73e60317136d97422b0302047c435bb500683066023100c271741d85f6f2f3e17d43ac832d5b9e633d3effcae021f0e8fc4beaed1b48385f9e402c7091e8685231c7acc4fcef8b0231008581a3122bef43f0e1d7defe193aaeb390a2d4377593881b3bec22e8d891be6defdf3e2d2072b9117da3982581ff694c0302047c435bb50067306502310099e2f37fd2c910551e0c387b56cfc4e9760d25eb81334c76abb1c84daa5ba877f856a6448f3da30f86538a09e4bdecf3023053bdf1d5753ca659b2cd0d9286aa8b8178b15a16bc3afe662702b1c36d388d08fd33d98b45c230f67e8febce9f013e8b0302047c435bb500663064023022a78692761b2c37103078f65c0b4da61065b2fefe3b4052d060fd6987602051f59d5edd867d7e5d6fc88f6859a9867202307b8b05820c85dcd40d8c3bf33219ffda7f505dc197a650c5585d5f7c90c75834d299efb096af7440c1a2ecdb9e22db370302047c435bb500663064023006d47abe6d40b77a18d03f0ca524427bdede78d4ca30ba00baab944b794d4e2db642464eecf4e2f98483c77da6835725023042bbfd42c1de171e6ab11d805aa7c1892b240f8db44919f2285c2b13509d47b952cbcfcecd62020d28afecbed73e36990302047c435bb50066306402307671ae259ecca8870bf328e4f967122dec26d21a01a5dc588a377ff3f58ef9ce8d0995f2dbc42efe81f163e5935cc61a02307fe7a095a9d0f891973989543d7abb5c9f15028be66993a3f1022c1bc76998fcd0c31e973ca7845b66fe6e3feac38d180302047c435bb500673065023055a4669e8f11548f3cea86c46c2a48fa73a86a64287e2a9c2c5b63e97c08c4a2b1a7527d32f11d120a84b5a664c126d3023100d0c6a729b21e36d1b189f8c3abdd6177cfb87cb84d859abd4a3eaf76b5d7fb74a8fbe970c7856b85dcc42dcdee09523c0302047c435bb500673065023100ced26aa021716f6ba42f2fa0c454847dd1edb185108aea129cd56700ce064f060441d7223c7a8e1b3e4abb71ee04845d02303af8bc0038f1eb102b89383ae7d231a1fe8c370fabcd4d10337980765a6580f204754ba42d3b73c1f0f39fc79175599b0302047c435bb500663064023035ade2e4461200ea742bbfe1708900b7fde929a149bb35efccaf0988b3ff9c4b26322d1d50d05f2a7ab3d61049ef661d02307b3a33ef593dd9623ee2d7713e857b173db18989195a570f6d52cca240991f453949eba15550fe69bdd372e185a67c620302047c435bb50066306402300dfeced510d70380800e714a1b90c758ae2b884e06a9913ceb10b92725eb18437e86f3a548ea59617e8e2a46aa913d9e02301b2740724daccf86b3b88a11f88b32373c2cddf9e8ced9c75a74e903f367265023da0eb04febb539e1054b2bcaadd9c60302047c435bb500663064023011b7b1c5676d82fc0e3b5af520186039c46bd5c73dc35a9aea3c83a3fe53e2a103f4fff8102604cf2dfe812c3cd94fe90230111f6a0fc36b8e5c9d6265e4491e0aa573474e338abd8dd85734f899bb242e25bcbf2b795a196d1ed0896941165c18110302047c435bb50067306502310080bc9b595bba3601f6ceb3e093c38237ff913053d0e296d455d32ce9c6e224e256bb28305a0f703700d2d66d4239bf1e02301801eb1829bc4f92c7d80c6ee9b16f0bd365beff1b69bdf18c0f0caa120bbab8486fea4927ace036b0886a4c9bfd390a0302047c435bb500673065023100c0c4f51c52c8fc98982f6ab49bc0434d07f4353d8083e16afd5f4935533910a59b773f9ae6d829952a7b4b9e4ef47492023001aefed95259b03b8557b2c82c2d351239e3d8f9a43c908de2c61cb7db0a6e176cc7a72c9c9aa4bfb85b72ada4775d300302047c435bb500673065023100f2a7c29a6420fef01fac8d8fd4f092951c38d7fb6214d46eed25b4f578626fa06725f97b451e7dbf309910ab021e83cf02303c840bab7bbb71747b60c572f949b982f8a0d8cd33ab984d1fcd63bc09632a006e0c9bcf785616e32da5d091bbe4494e0302047c435bb50066306402302ad10243d69befb643d1a2b17016e8f2b78240d71cdf0a2e4afeb18fe25d4c1f3704c35a5a8b14d4300f94f26f144da002300fb687a4e37f49ee1a2d5376bcd903648ce7bd74098414d831a694edad38b4430c810b09c3384b8d31d5912bb4f5b2cf0302047c435bb500663064023051d8a7e45a1f3ed373c657a3d0016c9e8fb84ba148f0725c00143a0797957a8564e9f41a9ea7336fedd8994f7457dac0023006d171a1efdd08527cb2dc04c5745a47b5a99a7a2f45130adb41dae9863a100770bc382de31f59cf0122d46bab40289b0302047c435bb50068306602310096693ada9d2b8879f9b64e6b3735ae4d96a97c8b7e77e17867cd90a554b55ca642a73d87dab6d5038f6f37bce4791cbe023100b99aae3a9bb8025399915fa5011f41839ffd513d156b9f255f19b329af02dac8a85772ca4c00eb9d43ba07cb600b2a500302047c435bb500673065023100a80b44d8c443de8bca754d407d77fecfbfa6a21e5e0d62380c2af245d9f498165c3d5c41f07cb1246f7828e11200adeb02307bde57c075b02f30b830d4edb69c33056949ce254788c46f61e210848ad7da5e1c7b339f12df75511fde4c52edd1ddeb0302047c435bb500683066023100b138ed8ba65d2ed6c52f1113ba6514cc278031ab87db279344a06a55452a2f7ed2df8123c3d342790045055fc12e983a02310093baf44f8e7fa805bd3755cb56e8ee9612e0937f43482fe3538aa831189f6dd362e3dfe7f9d1a15afd959ad47f5137bf0302047c435bb50066306402305a2f88d7147d733a134c5c6abc50ae06f13028ac685a58d3ff3c4d2ed15054063be4f5496df2192e790e0b5ff5433275023052b45814987108998b624b90fefb618f14d1abaac9d059002d0ef28c5d2fc0846cc9b08955e49043148f9adc54d36b250302047c435bb500673065023100cb871b470486d3f160dba7a7aabf98c6d2762aac087daaf76f995625f8b220538737694743ddf2afbf1e75c70f9b286102300cb0332d11b731e9e597af71fe65bcfec111e64beefe1187798e4b514bed706dfcc68149b4dc5323db292bda9e3f63db0302047c435bb500683066023100ce11b7572b1c44c5db6d5e6580aadecd80adae628aeeabc9e102f33dfc539c8f88896a359884eebf242e4a72e76048690231009b036dbcd0dedaf8c12dd138bad8eab3a68547d471f314135f86b30c7b001d30263d22e6bbc94db2bf39b41b8ca79b170302047c435bb50068306602310093e3e83ef0ebefc519b1261d691e87d79ec58761f07f5abaf514178bc127192f43d3195aa1dce60e8bf81c350aa3fc64023100da7a549dd40f6c646250f8191ab2d25b66373a2a80e8977e28157e442db1f8f51896bcf54f6af9d3d5802a6ecef8074a0302047c435bb500673065023100e1ca21adcb75e5c02dffd658346a155be0cc67a493fe48cd35d1249494ea0a0a0d51c23c9bfd729b0d2aeb417978281002300d22dd2bcf44dfca5fd118f4f02e47572ef4212da8c9e3e185f81f3903d278f49c8db2d4fd7fd54146547dd7833b32980302047c435bb500663064023031115147fe97bed12305cad26fb4b71a782a001f82173273d587f34f05cfa8d27bba0091f20e8e6a642734a6a4ebbfaa023067a99821bf9d7921ae4d28496e94efeecd055ded9c9d30747e494c478e9ff21c4ae5e6e9ed1e0785bd6155ae2128d0b50302047c435bb500683066023100c9ed04d0e46bcce573f9ea596b753642db90411b74ea81a815bde6abeb338ee450aef3081778f10850ff386b598d48b7023100a6a7dc664df73612dda276328423e8b70ebb549424906ec936f148f64e60dd41c9d7f80426f76669604af1c77f635c550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e768518c58a954237e80f35b8c54ced5a0b7d8c4814764293e5df22d6bce0a8e216b8bbc97721dfb302b3b9a9826c53023100e7d6ad0f4219b869afa24d5d14bab1eaeeb0f02bed7ea9e6053479b19642f05f3bf68b735250c7ca86d4777852500aa20302047c435bb5006730650230215a99d9b83682ea78d65dbd265d92a148b18b93c197b983157093655bc84e603ac278c5bb61cdfd8b95c98ffbe54252023100e29fc473808732a6d7560c93d8ab1e1330e908bd6e88e1056d225c572625b6e6a7913c1cf4952dc839088a987bc18ed00302047c435bb500673065023100acbd2b67a7c22f3c1d2b0605acc19eb1c33bad4426d03f8491d01dc2c6bb4befd4e98c1e9e03abbf1018d99fe5c5f354023040fff89809de47b5c31e66a12b2dd8ca66371646a37e3023469eb062b2a7448db3cd9d1847260dd040d3aedfb8a6c2300302047c435bb500673065023073e7fbc379993994c10c7aa8fe649bcf48401f0226a42c219c464704925b3a2ada74b6806dcbaade38a77261dd8ab9bb023100b89603780ae75e13bf6af109e8fb2c9888dbb0c00d14083adf3c94ff2bc9bc8b6d8a102af7688eb499bb09c65cc001ce0302047c435bb500673065023004e36e3ca7d229986b8d5eabbb2287d60455eb2aac7b6a45c96f55980999b8917b03c9ec6a39f7d5880f3f1a456fd1c6023100b565d5aef1fca26ced12a118de321169053bcc1ee204b3e7bdd8d71be0327d7cb510066d261611e4266548f66f77392b0302047c435bb500673065023100b758cd636cd4a92bc446a31e89453712178ace5e966ef6d84397a6f9f1c2904c8826529b89c4ec29f3d70a514271caf10230190a702c6a5d12739d824b0f904de605a71655e9da2302bdc3ad3dd9278e8efd1c60323cefa9b1931c27c62598c001e50302047c435bb500663064023070930166804c1dab7383b992df7f13107c4d82fbf0d213f7f1bacd5ca4683a036b79337d7906c6e76f1d4ad2b7d60c9c0230212e5be2b70656e2526abc9f0680f309e8577212c794981cf2dd5d7d417cbfd317434f75779d7bbfb104ea0d8c0821710302047c435bb50068306602310085dc022710f368c31cb43d15084e0a124e130b33cc122045e29eb9369632c12fbe2f32e4e48d8867bb8f6ff7abab0732023100c37f8bb556f158876c4c65000b0f9e4193f637c32d438c732be96dc195b234a56e2e12aa9107aeab779c6b42f99335ad0302047c435bb50066306402307012ab317e840d3e2056f15fc782315a50d887be70e5a60b27f585aefabc84123f97c62f112ede5bb3d506381b7da7450230462680be577da90ccc1820c12ce2af2db6369a83b0a459dd14ea6bdab19450abfb74b82e528031601db68daac525bd390302047c435bb5006830660231008fff431204ab523f67f8de644134b152d1b07fff8dd57f9a70a8713012a21b13e941b6e5df96c5cbf8037235dd5ffbaa023100db937acd87d36287a595f2421cbea1d78b8b6cb204d9dd2ca90400879f8e1619ea7a66849d82fb4df3f39b4d8158e37f0302047c435bb50067306502301de5779261f14b9997385f4a0abea6a15aa7e276fd373238e7fd7f87075b7d2a359fdc7baed8ba362e13c6f0c1c977be023100a3f10eff0ac8c707c2a4646d2736f8c5668aad75f5c7e4b119a5fb8c3ef4306ae6c05f9282d0d7e5e680f430f5e6038c0302047c435bb500673065023079cc8f1ce37901a788463a5c250fe79b61cb790e51cbb7542ea629ff6ed375d89388c7473a13ffab6a1647d4e4f695e70231008fcc0f29ed766517b8eba5febfb2d707d841b018e079e3a33cf1fed6e5b2450d47db432f536fdc9fade31adbbcec0e540302047c435bb50066306402305d665f83e6fc2b030d5e16a06412d3ac0bcb96c311cb9a53b93ca8f5a2ee0e61b39043edc465c5a6eb982686d556cd69023062728f78abb8972d57cc3023c485c9d1d5182bd498a4441f2ac47e80fdd85d74a1598856fb515cff37d86c608b5f29ed0302047c435bb50067306502300d850c7df834bbc64e0d99787aa09ce26950a9c79540c6de22d92c8e4c0316c3522bb7b26ce21227b56be961612b3de4023100ad57882a4bd8dfe90cfeee3c70ecd6eb263c73bc230252ec0178133b9f8a5d074a4c2575e45ac4296eeaf3b5584ccd220302047c435bb500663064023038446182d10435cb659b41be94c9a3f1d872e0f38c1e0b375999158d2e36550a060bbba4a74b7df4f2321621b08cfe7002307db885a69bba9676be4623d0126721e1459fc8302d2a8d947f8b186cd6d617b9a6c5a64f79178411ee8891088700d50f0302047c435bb500673065023100ca59c82debab703eb5bb343a63242332a0c8f19cc3d0678d8aa0d40886ccafb0901e48d888e57cca49d6656137202fca02302de973d2be45ecb3eee300f64b1a4009b04bb8b613c4ecc44e539821d9cba8b65377d77b12803d19c6e42272b294bfde0302047c435bb500673065023049c5472fabf352749744954c9630cbccf338b0b176eb6cc4f530299818deb65812d5131f7c0301099065a57dc66d97e4023100ecc182ac87420c0a68cf122d1f13b6c9286892cb3c50ac6a5c61f6535a7f1457207fd340fe1314e85767d9761ba2c6e30302047c435bb5006630640230671b22ca719c0034af92bc495eb862dd17ecbb7e74ad6aa5ff68695b5e278f2655614d34f091dd207f72a2c89e8e88d0023036dad6f6c116d04a1ea3d3ea121da78871f62fc29c5b38043e3ea2c755f3598c64438e2eae6f00c2410c090d367457f50302047c435bb50066306402305800a466de931e6573436a9844746319d94b976da641c68e255a87d0f4fa9828911ba3f55cb8c001043867335382555902304a31f643dfdfb0ba45dd18e1c190c602ea8f89eb17a6f0952a8d999fb1c27bfe7a4559ef493031ef62f09de6616293070302047c435bb500673065023100af8488309860302c6433d0db5ae9a5c5515d0f84719097a40635d2c72096e11bcf775bdd376288ab8b3aab4aa5d3e460023032c51ee14369f802925d34e6d80d8e6f5f880a55c6e9a8f18c1387115c6e6f422b6c6c18b53527afb71876cd4cb06e960302047c435bb500673065023100943aa704cb0eed01d3a2b707c1fe6b0e688234eb375b01d0ecaf3bf4ba89ea9095e6841ece699015a45b273158e04e2b02303ace4ad0709ff4bf578ffa04efded1931f46087b8f2ca13863a4d84a0fd2be128047ac53b801aee2741803e5baa068a20302047c435bb5006630640230398f69873e33a2c8581ace5c4682a226d953bee7e99402cce907091735e21a62dd61d6198d883bd6cac9c206828467a90230083ea87c62693984718802ae4ad4ca87b12101fdeef9e74a4357e540875aa6f070fb5002997aaeb74e2dd5d1fa2f33630302047c435bb500683066023100813bc0a102ddc794166f4dd219e740ae99dcd23d9e40bc04658c9922c69e130fd28659adbd5a3fa3adf6d82e102fdb960231008aa0b4b03b033caf89ea380f40fd228107bd0a18877f861f93baf160940da4cbb5a2795331c6803beafb1e818cecac760302047c435bb500683066023100ebe4aee0eae7f00a4c9406dc6541d2c80fa25a5a4e70ba99a97ba2d639e7a7d4218bb368e8fcac8b6a136e233dc24c8d0231009a8f84e704dcfef9a3d4e056a7fb301f9554ea073f7379bac5c581b59c94f71e197bd353480a3b555264048a58e681c60302047c435bb5006730650231009bd6b9c7b427f9f8666ed79907bd16793c7adc326577358e52a83d227ac3ab7770004918c3b9f5abb86673480c346969023037945107ed6fc970ddc25c9d4a1932c772d76fc4aa3474571779c55ee63a2b7e17445b2e190ef03889eb650f2ffce9770302047c435bb500673065023100d835a3685b88a4c52291fbe4e1e8690ef576931551ceb06c2be0aba692ba6a5410953090153787b1818b6298824d455502301b98a178ee0ac6b4db77bec7598437e703f4f248eabed32bbefb6e05b3a38e2ba695e67ee08c50b45f4824469191af8a0302047c435bb5006730650231008f8598f91fb54e1017ecab778b0f95faeebdfa4f60a6fddc14ba7e3a371f994b831e6af78e2916402639959a8f0d3cf302307a41102c2cf52472ba0a318953e45d38ee31c5c7c64f890fe0022b3670095a34df75b997d3ee5911bfc3402953b506570302047c435bb50066306402303a984e144a7d936d86f2e14d9c5a0c4a57455e1ff7b5bc51b8248ac8342aafc61f6b55e3b923042ef4384d37261ff436023039eeacaf59599c8fa460d7959c4f8e533e45fc1aa7fc67fb65f28f8b98ed6b889752ac070cbd78e7d9c95e646c1dcd9c0302047c435bb50066306402300e026e3cbd0bed6da850b579dc244f8d745b0c596a2b724363b67e250db37bd47cb0182e0f887ffbc202c166dbacfed002304e4547df44cc4ed751cb061f886f7e729d7e2584a660b8e405979d57faa8e5d3bd801c4108926ffd6a799258ff5414a10302047c435bb50066306402301f36dfbf07a7a46419a6980883eefac944919a75d24f092f8e20738f7ca3608ea0435950ff7ec99d153290c83f3abdd802306c53f50d2d9325bd6f45928a17399cb71709abe89981e4104caa2ced84a8969f1d415aa2e3a8e50b7ad0f933e1308f720302047c435bb500683066023100c1bfa56793bf76789dd58f6cbb07627d0836600ad923cb6eed346b2e240e12d6569797e659b029ed7d887d74b076217c023100ffe4c46e0df8d3d99d236c51ce8fb3402ca2706cbba7ee3dfb77cbb09fda9ff0fe64ca4e1d660fa2d843d90eb5ee8a960302047c435bb50067306502310084183e11479135346a819004c0cde8db1bcdcccb7d84762945f8ae756f39300ed5ec9176d00fd65034cc6713eded6b370230610973cf578f895ad56295f0c9c9bedcfd7792fb7c771c0e8e16ddbfb29e7294fe950299a40023f1b8e44ca3299d1d1a0302047c435bb500663064023078eda42b775bc964092255136a4dfe7232347e0e35c5a5147facf2375e1ba1add3591aad07e0907ffed2f0bf48d50a2902306ac2e3b3af30f1c0fa8b6a33cb9b5f03656205e2663cd0d25b0872ac15542ab34592838091d217df37cdc2ed7ba465ab0302047c435bb500673065023100c55efc60d8061c2b04f38dfe555e966cdb8d8f35a49fcfbe65d1eea8c463490a086e5d62f6e083f50160951cd437593602303522c4ceaa598b6d6fba1bbd6c19d02b3537ae0213500c8518a998e84465066bd7b811b73ae525b6884d33312cd808d40302047c435bb5006630640230663334830906abda442e538caeb713de50ae4f17d1375ffccc42724de3b2704c48a44416731945382afe6907532e80810230694e2259ff0409de272185ea94b65d157b704ab806450abcd32e5445041917042610c0fb18cb08b74e9eec60d9d28fe30302047c435bb5006630640230238ec9aef866689addae53986173d4b5db33403a5eeb3eb086e1c70589b7763abb56a5f2acef92ae7c5d51a091ba3cf2023068f1ecb35efd0178b5f15d0a2ded8076577f361aa0b3a1d0cb8e66a19dce6ab4dd40ab62449f5db5b6e638e101ea241f0302047c435bb50066306402303400c70ed794e19299d6e101534c30091be8031e018fddab72db7b1074de1a0a06509e963c5a98c36661e46dd695395b023017e40e83df20769a1313b95c183b7b403e6bd2e9b6bc5f9c5b407ad90e8b4575c064a6920395c761252aeb5af25a9dcd0302047c435bb500683066023100d722ff692357327cb4db04404dd44d08d2197698b057250f04f6d89e9deca0af0166b70cce7859251bdeafb37b14355b023100fea2478914b5dd3578b6ed37c149cf7f93aea54953a5f3a0ab2d2ad8377247fb5f9399314b76ca0462859f89d5aa5b370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ce5ced2e55b787534fbee0c8cd7659f15ec9f522fd0d3259eb2dca0c8f397470c923a28ec0366167ce61935c475662902302dc77b1ccae6e9c9acd1d58cf26692c6017bdc2f351299d0403664f99930daf09f622bc9910d5f1fb57b804c144a27640302047c435bb500683066023100da3e48357a78eae2f153cf7bc40aacfc2149233a64b84ae4ec54b89202bae092c36c56261395ff60bf6b9cba815b3558023100afd6c78c6acc2545358df8d9e73de6e7f3ce4e71450049e2970fed7c1b0bba2777dbd8ad12b8fb46fb361a477c8626710302047c435bb50066306402302ba2443e5678a8e4dce347d88f4893d169769b03ae54befbc2a9203a443127c8ff3ba42b976194573fc9e981a338c96702306e361b33d4bff6321a16f075ea8d79b8992b1fe159bd55193a65464d8bd247a8eed549b39d41b75f092b8ff436e641ae0302047c435bb5006630640230010ba1232576ef15dd5a6384016f1ead72200cc033dfdc60e98e8cc87f5a68e6a3f259bb62dfea85bc603a7af5172d1d0230698b73e0892bcb887d927c47a04375c1c13dca2ac6d2ad20d12da5fac72829bc7a062ef5615d2ee30a133f3ec9f4cd000302047c435bb500673065023064a6a3025181787f58548d7270b10a2d5dd4bcc4f9b66377dfda1e9f727a96a0a37e3abd8963c620420b3444d439098d023100b3e195f0eefa670d798973d57e29589284c2d14b0d35fd6005461fc47eca0dfcf4b39be3ad51cadc1eec20d6d686ec4a0302047c435bb5006730650230790fe70dfc5caf0890a893508b0d334d9eeb10325f9064a7ba1fefb9cf884e63fe6256516118cc59e8f9bbc0bede2bae023100d91f3b2bd55141c7137036482dddd43bdf99dec308dae9b27ac781b5a41662107682170ba6f248f39a33d1a02777e7cf0302047c435bb5006730650230339d8c0727845dba427be39d712573d61620fad2330b0dfa0856aba92d9c14d0b2f1729441e2286f35d5bae6487c58bd023100bed95f1389d0b1a94589c545bca144d386b272a67eb4fe4859d2152e409e23e4300fcd666d3c488ef3674dbf544832750302047c435bb500673065023100fca66af3ff19e1760c02cd58aa54e3c2493ba7739dc3564e6e7dc6a041de10ead1f1bd6a72d9f865a020f92db6d8ad62023034edbd2ce0b4374d307d1aa8f349d7d134a1686752d2182d6a51b61207df96b3cb2a2baed97d12b5c43eeec66cc0d6d40302047c435bb50067306502304c664a293a557cf901f67a91ab6368bb2045cb5fc436cb73fc26570b1e2ce49c02ee56ffa37f51c0f35480074b6eeeb5023100a6520f654009e3a8a8a8ce638c99934cf8ced51292bc26e32ba158e3f763a2a2171baa81fdd5d96f3e04c4544a3264db0302047c435bb50066306402307564a6c6231c79b6fc64ad24ea448591c434a83b7c34223ece484ba811c27de234b29b6d44492377f0eb3a6f67f95ae702301e204ab8cd82ceb2344f9ab501fdf0cf2e0efaacbf887d5c57b9f18fcc009a06b585d0b3f21ec5b596ad61515cd405f00302047c435bb50066306402302f2f08a963cd27a7aed69219a1cdb2589b5813c39f9c609d9c0574104a98bbb3bffbb99c923c3ae188b754ecd6eef15c02305cd60ef48c26e89571ef4e94049c8c90126c5ad91a4a48a17c3f6859b10e7dfcb3be0bca5b07565f9bbe27ab2764ce470302047c435bb500673065023100c01a561a7280a82a0ab01d475a1bc73a430537f64c429186e23876b5577a8c292f257a48896aedae863fe1a5523271c102303baea6dc6c45b42d2b9ff361b340a5608f4e191e8c78e34ff5f79b4c1fc810dd44488201b76389d00cf7a430d0219b370302047c435bb50066306402304a9836e1f2804f6e5a0514ddb65ffc5044f9c3e03d70556e9902fedcbc2fc57bac1a42e3b322fae609d1a2e11e1f030d02306f22ba249f5c7512f5937403209ec8151febb07cdc9038116d9ef43bfbcf222c5dad2d60b279f88e5e20b3bafa43a4a00302047c435bb500663064023008af215043bde793fa5d284e752495481f6ead66f061be81edd852bbaa5ddf29cb17276bdfda97de4ad4a7ab784dcfe602302facec6ed3ffc9a99b04670c1202923d652601508324560fe08302e32768a0d4f625c4bb7d7cd0793dd107779d9ceec20302047c435bb500683066023100a99c6efba482e4cc33bb30c5ab541091c86f460292c8e747836d8f9e7173e854aed429314b5c59fff3ada0d144abfb1d023100e977ded0915c47237de4e049b5d7e7d97df42e3aa2adf9801f911493279f13a3dcbe8b44afeb0640bee32284db63ec910302047c435bb500663064023075163a8d6957ecc4fa034372d2c83c1290bdc80b5eb41d8c4ccc6653bbc2320514f714698b92d00704fc03dfa1097130023060f11ca33afa5d486c6e758c6e4f3709352f815644956cef2eba2c110cdefa00138667898db8fd168c6ef30c6c987d840302047c435bb500673065023100d39c8bbc380c6602dca9b8710311630bed30c7c7a32fafc41dfa3d3f05e08ff35a32679ee687bdadc1c623987cfa7af10230151bdfd3995a96d82f00a3a577169d660c9612bbce48c5c849bb75e83003478fd89be855d2c0c42c89503f47e599fdb10302047c435bb500683066023100a2cd43663df2a56eec7f0f22d2acbd5e30440a97c185b8ceaf5c88d36daddf2ce75a0a837e8de1800f5553b75d72af70023100fc36bdf07659256b2a3f2e763b6e9b2973c0dfff76da38fbb35514282f30431764578b3f13ab3bc7493be249083fe3900302047c435bb500683066023100ae062ef93b00ab6eb3fcf7d084f7a79392dc839593f5e57db8164dd86c759559c466bcafac7780076dac69a9a4fdc6ac0231008a6a80b31a81062c8494abc458d516143f2d29d9246b7194a279f77a22e2afe29faee88af2ef78ece86f6953c8bacaff0302047c435bb50067306502310089f25f2f4423a3db787bbeaa687af36175ad446a4f5df6ac3ee4f4c290c0fa92b72e13d00c10a068e053c037fae16c5a023058a7c0d9b070ca918528e2de73bace13b2051c928804b986a2212f4b51ee72bc5479f392c0cc967ed4c18602b8ee41310302047c435bb500663064023039d41545292772e41a5a6355acf43a41a183523e86d6362d8588902c6640d53eaa5734ff22313565230e4e651fd59d7402302047e075783d15de47fe6b714fec97540a926446378ecb4a0f8d8ef051f8ebd55c76628b612fef7057966f671dbe64fe0302047c435bb500683066023100a7723839ec073d3692b7d17d27f7d6f9470f8fb9d6b46be41234638d27d864ca576f044872eff693e22256ef7078882c0231008336d28cbe0e1d707772b35d81dde6dc83188bd5e15ba833a5f3a67e084a04f3fcac0ed65914a66e09e71daf855c97a80302047c435bb500683066023100c3d525aca2e41c54589303b52a878c946b402e9a302bf6a04d1f9396184c7cba60dd9f876e30a1f96b13d773842f33560231009255e05eec2e676081b89c84cfde75795c48ddfb39712f42457356b44ae3c25eddba33572a6a793abbba2112a7bcf6260302047c435bb50066306402305f887d07f863a6ceb9be519af7832496a78c87038057530d59f5e2db094b8aee126111c8b9d8af37b7d36031b25fc98102306cbce50afd0c9c750d04b4d5af4c71d5435420577d239cbd701ceb5a30dd2259dada409d66c8b4f9c334ec4e7b523f340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ccb118fa811f9f1fee72c18ebce45cdc9bd0256b1bc4ed2fa673e67244d33ea51bc516d054d574d45a48739ead0b91f8023100cd137d43a54bac6198c1e02f53b3d0c41ff0d6affab460caf001fac2fdca0e21a280b0126574cf8afb96e991f6d3d6f20302047c435bb500683066023100c9938a4984832342c72a83d8bfd82d3602d1b0ff2b2664dd88b16119a8eb36951508668b3453df58010640f4c54d5d09023100b0516aedd6cb5fbbeed613afc58547456dd7536ba7986f7ce50e88cd0034539ef2f106ef8cd9009744ea6e40ea97219c0302047c435bb5006730650230293e270af50fe3f467dfa86b1f65ab9924dfda01d7b4e97842902153fadfbcd319df611e0d1739240acda6ba1ae599250231008804ee99d7f248449869e8a085232660b041f1f59173b85222f6d5c92f8bdcb7f7f132195cc1bed5fad4524ac5a2e1e60302047c435bb500683066023100ccf75ad1fe328cf47cb85004bf63dcf6bcd9f31c6ae35048f7d6d71abb9112528a38d778ee87238f85841da6c99fd712023100d94678792ff852b4100ce3c3159230a27e824e710483f3a7ad154ea835fd29734e449c8e49c96d9b9131dcc680441eb90302047c435bb5006730650230690bfd8d72a5bf3d05d092f74e2cc72a2b1edd66f83769d4b0d77f4f227cb224205023a36db8e4834d4bdcd0e9e91e10023100b91a034d8604f735d9d4631863aa99c64fb00f3654f5c5bbd3b500da5a8b522f58132d3a15dc1c6dc486f365fea0df840302047c435bb500673065023100a02ef53958b4fa1ecc6606b20248321ef57f4373c32a1abb75832a3f072c82e11b967a4eb7275cb464c1a17218bd8f870230353b98e63852fa18d896a90fe6f303a143ff12d55a47c2e3a10a181e0720bf1f97be371228fa2cb56536317423e348db0302047c435bb500673065023100a86668a2c35301ca1ad1113a6353715bdb135c9e8f9f0b8d6e498fecdea42c83808642ed124ece37e6be086c9a18d8b7023079fa37ac2c67a02783e1b1a7aaf365489e30e81e221db2bb7981fad89ac70d7c9947b086346de1f79c3df5877ab915640302047c435bb500673065023100ce81c9937a36458b1cac7a4f43f943db55b0bdb19ed2c2dfdab47868e56c24920513d451d33a4e33eade9e0f35e009d1023078ca820b9ac9f2030df7e3893fe67d7dbac72d7d6624b6bd5176752650b66f34d5319f8377990b5c0e53f9e68e3b1ccd0302047c435bb5006730650231008b23f715eaf1ede2a26cb4e32dc5c9e8001c4cc6c471d829e8d79c6e1795bbc764be6c6c23d76ceda517db8d52f0869f0230770a00a72e9305ca5e1289deacf8ae51749a3c26726b423baa46974c5e342955e1f6d563f887defab20ee91eb6c88f040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f76a9276c85d6d3d1e1c4bb4779ccfe44e7eac1620665d688dc585d76b94959d69a48eb1c920e09c575860fa23a36e47023030abdceb74b738d442c6add5996a43a96bfc0b53554b5899b21e39b360444d848eca0822919742a4379bfbe52e83ca720302047c435bb50067306502301beac6a7384e64786f3e9220231d28b4a7098ea52142bfb0d9bfc86fabae4de7d0cbdcb3cc9b26e1e843dd6f640a2ef80231009a096e764b04ac02b2e5518693ab161f85c33ce1f81542a91fe60482690133bd1fda8332f0f3d92698543e71a01755140302047c435bb50067306502302a701c642b58355ececb211b8afda8a9c6f1ab9b74b6ed4e5731e2d9020955197f7d3739150a4b87679417c82ee6131a02310082aa8b6ff47746e7b040adedd293d9e27c5ae59c5e3300a2dc8b49c12f553b5b315e97f1e195712644959dd5392bad6f0302047c435bb50068306602310090790365dcb31af0ef984244a4302eae8e6d462fb0b3818003738bb7fbb713ac764443d3275c3476d78ff8df879f69b2023100a2756ee744d0395edbbf02ca0a7ab2238f282c7b3b8d30130f3a39a746f3f872f7b0c3f1d2344acb3a58b99a843a41f60302047c435bb50067306502307a8ef22bdbf87363c4776d47b7b12f7224b4a6cc487c742468f46ce43dd773f9250d27a0e24ba9b68036e163b97cbb81023100e60073581238548f0c27f87ca6808077bedcf4eb4c90230b01078d639f3829995450bd999c03b591231a1f45a1019e160302047c435bb50067306502305de0bc5c3efef8f7dfa9760e375eb085f3308b98b1b10c6f9d25271a5ba2c7b8bb4ce86d4e2685372a08c5e9cfe3a138023100edce6efbecb0c619b02757605e48619a72ef9c48909aae03124478603677a3c3b18f836e9b44af6a969e68a2aceb4d200302047c435bb500673065023100f514aa7fb7bd797a624956eb3401dae1146ff39763ca20a98d2dd1eb26b823cc50c4d81017fabcf8bf0d520ddb59ed9d02301b634542b3496d6ad8ea02b035c0a9cdaf6a207b8ad1da750d002e19c0de945a4bc0003c89d3669ab45df3e5b385f5c70302047c435bb500673065023043c9a5cffe3c1734a8a2954b7f8fa6daf086b65cd27b940579ab21fbfb2588bef47661a25d19ac295448e4c66aad4f3d023100d6e94a8376f682d032187ae1ffb71bac0ca3b55507e05e69220da8debde517ae5e103d83de8013b861ffdd2cedb0bccd0302047c435bb50066306402304d1f2f138f04614db9307e537b65e0bae52b0f50c17d9a87d99edaf50b4006b4858adfa404a1a952c37e77a5ebcab2de023034d42a99024ba5a73b5fc3eb6b7d18ff53e09d3eef04168b0a7806ffb27d361d4939cf9a035c6bbb3cd7c212617f12010302047c435bb50067306502310086b692c46c4ff6ee7dd20c7ec6f1e9306f4ebf5daedd2de864bb9cf52d6145583d5c63ce10ae6c1c1689319c9cf95c6b02306c55e06b7d014df7df9d0e89773df6b7123124c9ad9e585d1b82ee78a8370afa8419ba9ae7fb289c5c667c1730ba4cfe0302047c435bb500673065023100ef482d37a4544807c28b7fa852a2d46f630b093fe6fa8f99ad2fe0ab584f92c06e94f23cfd70b0d64c1de6f152178d3002302ccdb0b1f1c87acbad18de2c765a708b6fb31d6fe5c6fbb40beeb4d1bb0ce455625988260a508d3060ee5fc3f87e6bd60302047c435bb500673065023017f3471a298b943af870285700df23b59ca475043431fa42c6bb48d06358c5f3c47396f74a0a85c9c1e6ae0ae58559750231008cb8116ebf1f87e8effedd7cd2390fbda2caf5bf5bcf02e2565568c0c4eb9580cfae01d7ee169a08bc0ff46a751a76280302047c435bb500683066023100c37d936244fe4214d57fbbee66b90f8ff208337cf336c3ddb2cf0460e0e979bce9332a728ac8015ca1eaac19fb496642023100ef6ae949838236aa1b02a3e81185780d4fb97ff7144a999e164afb09b4ae0d6cd5c270fc1bcabeea08dc9ab425ebd05b0302047c435bb500673065023056c78c3edb5e23db551a001d20a8a6baf8efc9706a95fd5cdd5871b9581151a85cbcd2a75a7e4df476edb60eb85dcb380231009b1e31c37015769e2c9a7634d4e9321653d7491815883fc286424bcc3f4cbb88d2dfffb46cfd9d614793193a6a7c77620302047c435bb50067306502302c8f1ed6beab734f34982327e6c067ac4b090822b9061c0580c335850d3a75c3d64afc85fe018134d43590fc55a77d6f023100b2eadaf24fca384f9f934f359d0e56f8e5ccaadd79c7db7c87d518301f74e0ca35af328a6ab326a179719f29baef240b0302047c435bb50066306402303aa67b89c408a990fed005e7e0a8ef1e9d4e1b358c8679fcdcf5c0e103f02110259783d54fb0b8d89c4d401cdd810b0f023046358a63de13f2d47b7436b92b1d2ca5fbee04e8f06ccb6e6c55a3a01f596a5daf48c52c967f34ac19166da527bd03e10302047c435bb500683066023100b9577c8ba75443aab162cb995ed47553840929af55194a98424faf7de935a4ff434b10cd077872c4375b30afa2fb5acd0231009e8489166fd7ed32fa41e77fb497b23485637013693bbf77c63036fb174e69e24b52702448610227d70fc7841ee531d50302047c435bb500673065023100deaee7a56ed1c3185de1420229ba8b9a136fc94671ea7b352022a8334c1690c6cbb507285341c5fd4efbc687e560711502302eff964b443991361027a39cdeecd5b5a75ab85bd3f52199ad7866dba9b847b7b8a1c06015814402177b11211aff497e0302047c435bb5006730650230081fc188648201cc0e57ea71b55043ae6d62dc24f7878fc16e02173b856c0c944b4235e1cbc1ff0ffe49df4dc35c1a810231009a5a678901579d2a1b5d45f026b8b77514e42634d72cb16b9d4f945f892881b1f1e902ae2187202851e222babb4577490302047c435bb500683066023100daac06b0398c9b2a16f3bcd9a43f971f898d282a3f41159fbfb3b0e8aa5e0a3602f935fb5b13a1581b71d31e7d92908b023100bdaceec8cbbab73356dbd96fdb9abb605394f0c2ecb28c2ed28024fee5d16c8f5f13e002a19e3a4083765e921c8a471e0302047c435bb500683066023100c5206f303da2a7440f5f15411c4420d0a15a0ae9c7896ca3609e24a6651b6818b336b416996a7e25f070edb15a36559d023100e9391cf9ae3caaea2bd637e78c6c1e2de96bfc012a9d7a6c15c6644c7b5ee11d560593ce64e9986b28597ba42ec11cc10302047c435bb5006730650231008bd15f00627169bb2af28a182380d047e82f3890969088679c8a0a637091bf89e972ef2d5f13c4f5759a41f9a3c1711c02306397ab82d46ab06c84ca1cbc5747c4f45207dae926afd971707f8f6818f6f8a9aeb33b7edc503199d9b7a62eb2d9c4030302047c435bb5006630640230660448b7ea1cbc1b299916845ab7086c933aa4748ac0a3b46118feb798dbcdfe1384d31f803730c053bdfc5b9e10107e02301b67031d9d81abeaaca0473d1e4261213a77e7e357eb3b4dc9cc4e0f01a454a180e1a25b2e973bae3386cc2fd3f996210302047c435bb50067306502300c1dfb8374dd2f9777dfac177c3257c95a8b1ad17cff8576f2e04d33f5ae84d39319cfd4ccc21472c158caf5c66f3d2902310098ace83795a04235da647de5249e102ddd24289844fce946f7e0ea0cc23129494142d8cc2b015aac68546b15b767a4eb0302047c435bb500663064023040467b6524bc7f381c948acc4a1be7cd04c4a06d36a948fe43304aa3f70519c78570b660fc60ca5c3c9b9cf23650b12f02307baac92771af42d970e76a009871eda78541856d4e1efee28b39b38d09b27b9a581e92f825f4f5de1b204e1c91c866420302047c435bb500673065023100db11e4e5a9a5ff8f1aa71233518636bae5e2ee54e45bd9d5bf43c2dd33e85d371d2bd396c0646736c0a450b1a3bd2b3302307d1f67e42f8690ed599d026009c851e3ab2983bb222ef700f139c97d6f3c34fbc9299737ba6d81f20644ced6a5ad289d0302047c435bb5006630640230083e25f5d14a24344245dbc2bb91008d0639a4ed52b0b91af6f560a4f16977707f7ffdaeacba498d73dd0bacd5bec6c1023062a5f40c439fd0d2a116c2943f878d36224b7dc20e3d321c2f0e1da6aa450d9e9f0edfbbdd8121ade66b5a10b158e0bc0302047c435bb50068306602310090262cdec223dad5ef69281f2d4647a093e469cc7c70e097035c388504e0a1ed17bf9e6942fdab1e8ce4f29b761a436402310094c6d20966b8969bf1a8971a622b1da9d61a0740ab7dc2c8623f330301bd50cce05c3aae3d6c0b271ac3b73d409402f80302047c435bb500673065023100be5d5bcd1c2b91b7a34d9cbbc2344298e9e2459038c2dd039e88ddb0f1d300a137019629bd03c5fc5fbcd4849b22007602304c98903e111d81973dd3b679f6ce2caca559dbc344e7b589ac1de7cd2629659275c0d32932285b565c5f091611993dda0302047c435bb500673065023100c762bce0af4ae47464015a5d7fec070c5b49746b5ae02ae02131c8984154376c8d150e85e7858c8ec09149d829cc9bc502300aa6ce23a7fc52f012ab337bce54c04620400543740b413c5239b314c3113901e66a65a8a1c88d1cbe353dc6c893b4bc0302047c435bb50068306602310086963e9d956901f75df770f607c753fb9900a97c127f064bb21c94c60f69b7b232f47374d1f8aeddf489530d8a354df0023100b1198b8c8a8a352a28e7aff5cbab1c14e917a043328556465017276871fe41c4c0930fc4ade6faf530c698046a550e6a0302047c435bb50068306602310081c042a5c89ee655c93d6bf9cc9e2502ea9c7e735cfb7fa2892f0379c1d7d0e5a144ac7d94702166274b9549c2ed7f5d023100f9ea02b0b3a98b46663fcda975198c145866f954a87ea0d52aca185b06323b8c277dc8d8c8c27faa5c0e21f352a31bff0302047c435bb50068306602310083ca5cedee816e3c73cfcfaa33edd627c392ada4be6002abf788dfe9d77ca241c8983c921d5b97a617506221f3eb1f17023100f85b7a158fd1ce13534f5a8d1f4d53122326836c4a28749072bf77edb7653a83f778438b19e87e269ddc4bdbf5c2f1070302047c435bb5006830660231009ef01563175bcccfb81065b6e2e58a748b7dd5fec1b9a427336ccb4455fdd1e7cd7b1f470e04781fc36b86ddaef1c07f023100ab6f2a6346549935b00101c139400a579fb7b310f26df1a002ece92f2e3639b1999a91e0996f24cceb62c757656444630302047c435bb500673065023100ac776965aff311d6fe16eb81e11a58b6025d1ef11a664317ded70c1909c10851532ed3586d7295cd8ce3ec87c2d389f902305989e16a9a9dfc95042b19e2c9324db3cd121baaf0b5014fa3428b9dd0c40fe3cee09e9d28cc474f88f2d45f34e85fed0302047c435bb50067306502310085e6e6bc773e79e0f415a95047eaa88eac847b8dd85baf944fa5511e7701e509fb82ef94495f19680b39ecbd756550d0023035ed34ba7ca4f1c593c4fb9a04df17102888b254a9fe4f642602b53b616d7c868c07fb7aacf3118d27d7792df03855fa0302047c435bb500683066023100b0e377513051ac75d8f6305c1baf75e78512b10c0ce78e55130d53a6f75795fe633680a958c40f6d2cd7e6086929bd65023100dd1bbffb8cebed23bbf7f999c65cd1b230b4d36aceb649fee8a2b407213bf0406e3eb9374ab5b745a1fd0557a3b2f9220302047c435bb500683066023100e659bc3aede5b94c8e000814228ed969de5efcc79d12e648365e655d90d93fc2d00b954e719d7d320eaa7cebde6cda200231008271e295e3780dea4eb014a41d1f16d31fc0c985fea233f4ccad88560f6b51253688d073606de8f0119e9d24f957d7820302047c435bb5006730650230085d583c2d8021105e1ea88d6ee1c6c99185219102b22a9a71413fb0746aa02b6abb5740780fe907b9005b5cac016d2e023100c74953cc9af9a761f410a8cdae7c7eadc2472bbdf6aafd3594a18af1bedc2cca7b361fafe0137d7553659c03d512d3df0302047c435bb500673065023100e1056762bfbc589e50e0fd76cf54546c5b8012deea7ce88c1f505edd1f075ea4d0c52f38689f04d09bd855c44cc77197023024b406c05c07a1f128adf73fd5c32633a1b2836c3c99be5b2db59cd334adb25c2e43484fa15182b66a523ab8c632cb7f0302047c435bb500673065023100a0cb652e790ca192eab00e127b3b47920d428d1e5dd0269e30dd75e916820ea062eafee31cfa9e8454560304f5f7a21d02305e4222775c0dce76ec5de94cf040ce0d4710642966a31041ef342b8c8a5cb842533c8dfe4eaf345f8010a520863d6d7e0302047c435bb500683066023100c018d93bbef9efe3b512db3313e65181b3ab97a1fd2a92f558d00a7c5e9d90257c30074f0f7640ec56aefa0dde77f97c023100e4a362bca0d845cbb82e6f2171b047776f813745e7ba5fafbb162e1d961f950e3f2ecce36776617f8ca0b6e2ddd74da50302047c435bb5006730650231008468cc3157d56c44b9da7a69a35a03f1f890dbb1bc645e7110baf7506e6596656f54450514e8324b26f35c459ce893cc023030f1c17f32b71594648d1519073f19dd3726f3d4fae7b1e0e22896a0aa9a359fcdfad2a66d51e040c2c9f3692a1785bd0302047c435bb50067306502310093ce5947eafda9be4e280bcca1f7de695d8e673c5ab1695cf98d0d6420c62e67900cad8a7f4c407a109893a3749158b90230164f4f41334537ee6555df60b1d782bdfa46749921e6de8ad4d4a2201b2ec68b93fd8b91409d9e32c6d82dd43b8fb3a90302047c435bb500683066023100bec464735cb7702edd8c89877405a630e2076bf7e1a1f2e5294616c200eda109f741166517ddc1bf434f610462df8ba6023100b0a6e10badec58d489ac4e9b4f2914d2764a255bb1bf9cfb69732291e310ddcf42692ef304962635a3005e47428f120e0302047c435bb500673065023100a31100ee56b456fd9ca7dd20e58d7f379c4c99d966d417ca439af0128bda60a265cc7b18303713b3c374833e1488da5602306bf008cc79614821166315550ad211d3229b1afbf7f09ebb9b1794b602959d09704e79b8861a25647120186a4997ea690302047c435bb500673065023051fb7041e1347f30c06b8f7e193e28dc4f2317cb92d0e245dfa055e78e2ba54291bad743e81c8cee97852650f6cadd280231009ee1279ee2fdabe30095a259e720bf0ff9a061deb6b5d235b9fdf8387caf768a2e76481ae2efb613dd747e063a39a1620302047c435bb50066306402306ba43468eaef5abd3db90c9d4fd90a2dead7a488b655ebc762590641b96a5f348438be91511f196c8249647b096d9d30023020dff3ddf1e0a2cd93e4201006e19d3b64e748dedb63afe70cace85a5ce8bead92a8c6120b3bc1dd5796bbb1da86c4800302047c435bb500673065023029d0735dc8dd940170f78b632f46e0024c774b66d35ccff886ce4281124ecd5196eb7a6cdc8595ede43ab3566b99ccca023100852bb13cce056c32ccc8a69081d86ddab8c16a6b4502fd281d36f4e64bcab10b778606e96fceab10dbe963e8ae3728fc0302047c435bb500673065023100dd18f8cb1e53e0b1d623ce8a7ca45dcd04535869c6db119b6c0e123b0eb12a5f0fc87ba974ad6bd4ca36d48d3449b0cd02301278e0405bdbcca7679df8ebc3a4c035cc155fe1299f9851bdbd55d8829866b8448ace43bdc14e2936712742f68e4c170302047c435bb50067306502302ad79c78a1e1b1700234134540a7d46b505363ceadc413421fabdadf61184c5c8657606e76ab9024016ec5c0a859acc6023100f7f6f57760c85c50448eab67669041e6134e14ee474e6b916c3eaff00d386ec30041edace84649f1b8111b73acdc96600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ffc8d4d04141f68cfaddb5263d2f871b65f321f9ed71a9f9ce2bb92d0ce72628899ffd8a113336cfb5c6e3ec66138f50230706e3a3f86be308dbd12e53546cf6071770ce4515fad9f148adb01fd27c2fb083580277eef650b01fc27d98fb1cc89960302047c435bb500673065023100c506979b349d46ecd509f72aa7513b670a0215ea9e9216a1af4a6306e7e98c579fe1b466bc6dfa5a8ad2a3f74f09327502304f62a4dd18fed23b5c19e1a42b805aefee3a30ab12de7a9c108c440170c4a7c14ac47ae3aab4e091c44d5d5c3c44f11e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230667afc5518f920185741d73e62766ba9a41b8b3788e1d638a4ce2cb7327fec3bb59f76c558056ee490a4092c7df1bbe502304765c5e125e490f4d80ebf78ab7db1814cf5ebb2867cf20d4589f51e0ad83f6888afaf6b0879f256e9f77c5f574d88690302047c435bb500683066023100f89cda07db6b0834c683746b2af6340ee24ebcdda12aca7c0762f049b01207365c2138b45b229d6136996c3f8d9565a8023100fe7021446060d99be38daf53650738f7902c684d7e6b2fcf304ef24b9a1003ccecfe915d4d04e8bf3d9cf4d0574152ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6a87e1e5a4793c8aeafec809ee98c098b9979ab0b68089f493840a04fedeb9c16291cc816c3096f7909b45a03b46e3a02307b465e23d0b2b9285a5d567bf077ee532737d472ddac3b99dd07f90ee0da151918d42f4b0b2e4d4eaee7f8845dc030030302047c435bb500673065023100c0bb8519c3315f4f00518c26435a1646394233378a2f0368175d9e9fc995870d9df126de4de030e7e4703376f8a5d41d023054e0e29ba8b1184aaac08e62592648296863ae5c001487ddf060e73007e32f1b2ce6cdc416f71ba0853d7cb7ba185ba30302047c435bb500663064023026c582cab391c967256e7794db0161ee6d9d239c30ec627c1222c4f757d272f80e2cc7213f6ef4fd22b6ad50cc93a6890230504b5500365c711bacd45db9ee97e958d7d76bfa734b856fab8594927b7ae1650712778c2dded633b29103cdaaaff0600302047c435bb500663064023026c9520cb03b81bc86063fddcc211304fe5ead5bb9230c682207c9e4956673a54e4f99a4fbf82aa6ec35393e700b426f02304f7d68dd77f647a78710d0a06afef0a74e078891eb9c53cfa21006fb1ac3b84b824425cb4d7951ce9f2ffe65802ae2d60302047c435bb500683066023100de89dccfbbe4a8a6663e047b451a1364700df8da677bbde8f105747f0c6406e2e10d57885fd0cdaa96b2584edf647a160231009d115daee914cc52ff50197e9476cb9c90380ed45c94b526109c9332eed646a0b2bfdca12b0e3e69896eed53e6613bc80302047c435bb500663064023046f59b38d54ed49debc6e09677e2d2ab5aaedf72a6523a4a193ddf02ef62684800d1bde861168a26838a66aefeaac69902303fd7a81732c63c1a508ab18fb61e7ce4ada058e2430d42c61aff5ccca8a988df82009e6ec74d97965e8a2601ef6240220302047c435bb500683066023100fc5cd0b9400df6c6835ff245deb58738b0c9c2f08910a8eb9310bc6f3e034f0899ab0345fa988090c2594771198a6f620231008c9c668d38c9978d9caecd5a4dc75be64bfd6abeb1b377222173210eb516c56819d52fad9ad5eb3613b309ea4e0bfead0302047c435bb5006730650230763a78751e3af0c057d4f5c809ba978cdadb52ce029fd5779cd7b49936d6b2fc20aa446fe02692a4140939af5236ecdc023100c97c1c3bcfa8df64caf710a2d9e750018b6f5fb34e03e7b7050f4a06553603c8dcbd24a84fa9f72944ce42d779ca48b20302047c435bb500673065023100d0458fe056cb959ae47545bf627d42cd509c4f1e69e56067e56f6f20d418d75c52e7c8a1362965be05d46494b8df95ac023014f5a92725f313fd67f06caca5d53e46f31afc4adafa4c0218f6cc6b62a6f3d6ae13c76ec53ab7cd0e9ccbb240c0c83f0302047c435bb500673065023045fba084a591c6905d80da2be82dd9a820d730e2faa232b5c762200cfc3c3fad72710fbb0c530b1e6a76757e7d3d4c3d023100a1a8cd26d63ec3d9d42e3269691d003dbe9305d93e564a00fd1ab37f3a35f891da635e4fd77fc9b3fc5ca6a20b8ec2240302047c435bb5006730650230046a731f4c03a8e2cc9855fe5e5feb436f7837cb25e2c1ec6dacbda6c3bfab85625d1932f5a0938a14f7b79466e9483202310091ddeeb7204b7dc093f3872f9fdab495bf926568f3d4ef0903bc7cd7c1c0c32c1674cb5b8b778de4c7b8b1a284ab07050302047c435bb500683066023100db74557eae6a99fd461dbec7a82d68d1b20bef603453bd42e80d2c20c5b1b0af77ea1a4623750b0017ebd37220a98fc4023100881d1440a72f0e706a64452010ec4312d0b6ca7b30af69102b86d6ffea67376b5101cfb0bd8f42e44193f748bea435640302047c435bb500663064023040eb16b9f42aa09e7e9505cf33b3e91852181bcf6bb60239122c5d5b83a1f3d14d8ac1dae7994f3c8341ed6c311e861b023042a6b4791dce631f28c72adf69fe9ff78b11b95234a4355f44371778b188f6cdc83334cbd54d330087431719e2fc78ab0302047c435bb50067306502305ece44057f8276c50b902732a6e47ddd89b4d19e96996a87963316a013bd7db1e9bf3d44060c2f537835501828d502bd023100a52f69761d2fd4b7d6223ae64ab278ebf988d7c84459744b7fa5ea57f9c09f6d29a75890faf19fb598e1c5b81c72e0e60302047c435bb500683066023100aff40fd053d8d2f4e7168c83186798b5b665abd525698835ce97586fe1da84484de0ffeff5eee33bfadcd3f6fb16f4420231009c9b5418f40ae7f14387a87a1835b5df1df0065d29c9dcca552afb792b8765aa214d6673049ead45eae6189bf3990d100302047c435bb5006630640230554843ef1aba5710d33dcd59ab9e1a396c99e4f6b38023850b7bab760c1943f3c7ca84cff7ebc3065e718ed8f0a3134e02302e141119f3004bf6ae3eab570d137e2663421142feefaa77ebf18c4a3b2bcef7b8e221fe51e2ca64bbf882f7538150c70302047c435bb50067306502310087cf6e50f541fb12b12502a343666dfcf8b99e91f5875aabf59ed8a28d601db1fb869cc9b870e2ec298d3423b2449cac02302f33fbf367e771b4713cfbd67e235ce95f80957aeb4754352c307aefe636052de348e0a4041649182181d635ccd81f470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eee119136a6f384c4afe30bd0ab43ff6f990fa57f8eb4a23c1cb673f0f72e98406c42d136cc3310cd7edf4bc157d4188023100f6090b27a6174bce3074a79fdbc6d7e5878cff3f564c5075d46ed5bb6a3c3213f0ea9ab72eeec42b5409dae760cd2ebf0302047c435bb500673065023100dd11fc703c31849e8a4236c6d8e9dec546477e9ac3db15e824117a9bcc8fa8d547b12c0a1aaa47f5629721f3b6a5728c0230254c158f6300b02faa335688a4c54c0af5fb63d47ebd4673b91e8b3a312c204432df5fc88d1885453c445ac2aa927d2e0302047c435bb500673065023100fa81a386b492f718ddb89588735e6a4574bd68ad2ad17bc657580950b8e6d9c94504316fd2586173d14140997e238ef4023054dd1fa9dd5dbcd61cea1482ad77530a36b9d7993e21fdcd3613cb5f5843fa4061c93a522a1b56c2204d312a06f267b80302047c435bb50067306502307e6e446cc70bb1fff109fd4d0b907a4b48fc42d136934f2df09602e88ae53d36f1e9ebd74f000361df13b2b62e70a164023100f99365b50c2853533af8a4077fa304c3d66b120673a000048227fe90af01aec0d32e09480f89dc88c90286dcbcb5757d0302047c435bb500683066023100d2d6a7fdd5429daba0d9962796b52518dc10d8eeb41467f37d5334ae80209f387a672db897b7738299dffc5a10a115b60231009ec48f0663a8b56dd181451f32c03d9e737c66a1b6e63dc97e6cd59265b24a45531b4924ccc2ad26263ef5cf1d1f6f9b0302047c435bb500673065023100bb72c1c8bb466aaa309e6b8f35202e46ab48bee289f292839e19098f641e7bb249ebe3b9702ae0a8e871cb0ac1faf25a02302462fed5ea4ef5c7eb307f254e1c73dd942a7e11fc951b94d9f3b3a4d8fb68b7ce716959359171d3dc06bc43a196003e0302047c435bb500683066023100c4b256d65c8e2c7353e02bc0e29024d346ce265aca6edb159d76e717d0cc6a4ba6e6e0c752a8fbb30917ee6b44a20e920231008ec202553a03c8177c0e52405d24b3fdb3cb139de3821399465fe9cbabd81aed7fcb29dd4a581602cc720ba9e86b21000302047c435bb500683066023100e9cdf43e7ca92ead41d0aa389de90b9ffceddf8e1ebf40e11cec67285e1cba35aae0fc747590ad4dafa314f747b6ccdf023100f5cd47febe75bc3542a119c9be657ca5c389046ac6aeb1ee012217811169d23546a65d415b7ffd56bc1cfdaafd8e45c80302047c435bb500683066023100944d3aeab6d60c06f2a2927418478c499cf1060111fec514895176878b6866b349450377958621f81f29d826eafc8edc023100eb6dd2190e2be630909f7974892797e68df92110235dd390bc40c9c7b7e1fe1300b6ca831164886ca68ccd4584f40af00302047c435bb5006730650231009b0eb4fa26b1156ab6ec923cdd0ca5d633531a63584c58c270d9f6d91d9637891b5100f26f2403e1345355720e4f91d8023058829a70f8fb09835ec24217541e14850a40f0f98ef526f864430c8603c54b7c227207b3f5e6749e902fbebf30c1e38f0302047c435bb5006630640230749df8f38595f9e73d19b489e1b23a199189bd9c5d57d6f5860520ffc7e599ad515fe04d1726f2137b68a29d2ead9f65023055bceb6e80bd58868fb9ef33f94f519321db86dbd2697058736354d9b5d25469e9b2b351e4e9e1fb8e99a1b8af37e7680302047c435bb500673065023047a56871a7a487fea6ec9246f23cccc28549d344f6ca6c8675a85b0a5c9f8fdd56838699b077bafa569a0b7477396cd7023100b8f22c8883e741e5ed6e7ef6efcf56f783dab3ad44bfbbdef1e0b7f88633e6e813c09c142fdfaeffd11a1703cea6db130302047c435bb500673065023100832d45c9a51482ba197b44f6011a427aeb6a84b6c9abe1daa826ad10afef4485168c13303cad8617afa6f2df8608620302307d7f62f5290ea6c73a28c1e601040ea2abcf61e15d41d57435ea128e670c54a6d2a0b50aad67f0b4508297b0deb06e220302047c435bb50067306502300e4aae055ca7d9a785ed96ad285a54448a0cdda01c8fd16ebd299c610b886b99455b84c6c8991bf0044f49c8c8ff65d1023100869dadc8f42bce2cd34e72ab2da074e1677c15837b888e16c8e1fa3070ae6de2246049d6208f8be2e97f058f178d9cc20302047c435bb50066306402302a5eacfee14b215c6a11cb09d5d4a8247ee76e9b1f3d8fffc40e2db31a3c01c0e5ee717f9e8593b7597a5b1f4ea4113802304b750e86edb2a207ac06f98d29e69d415cfe177b1c15d6aa7b45a61a73f374211d6a8ad73dd5778dffc82f75e81a765b0302047c435bb50068306602310086a7ff147352fe24d25438c4f8e7ed8a5b9c318d407ec27212095241950ac0d5497fde561ada48c4c4779c9ea2344faa023100f3c9fc638ea696db86164734abee250eb26e7f34913768f963d6015d3fc63661f43442b52b4299a1f1142f96ac5befaf0302047c435bb5006630640230061097d5c320bf998d5175f9b0d8a30ec3a68c1ed333e3be38110239eed4a7bbc50f21c5c6dc1d58adee99fd2e6a55f302307ebe745aeff7b6f5cbf841f948eed3df150939cb8d3febf91a0b517d289b8ac55e5993e78737ac7f9be1fd57e8ebf86a0302047c435bb50066306402305bdcbc38db89aac079dd31c73e77df7730870fc7a787a9af6a6bdcc332c500f41ec192c4b43f164846c1761820c046900230055e3d28d414e6e9f06f827b36beafe275792ee8856898dc38dc7193fad60d98dd61c55b7bcd76668302220b167657650302047c435bb5006730650230080773d42910d3cb1ca8170af65551c3036d65ca5dd68c6325ecf517bcc2ad3dc7c9c37e0ddd320e14f814fa0168e344023100cb04dce33c255fe8556b341b59967777f888e26f90a1cad01e8acf70d22d1fdb371bdd8dc0eb3a03284bbe1fb4efde7d0302047c435bb500683066023100a117eedfadfcf28729aa6b9c53e63f80138abbf443c06c7b65af37b0809f5f05c6599047be49d6417b1ecc2456603f5c023100827b88e567a19febe4b483859b904a72ade9624b0f4e9796de9005c9196adc5ddba439e4e2bd9bb0b6c1fa458557372e0302047c435bb50066306402303ddc6a04ac5b532f670efba96492053b279edcf3706ebee923dc39434155fd78f7ce57f7d7930f1121947309aaa4244e02302f7801fcbab18da96e809ef2e307794e674363ebb1c407afd4e7334709962328efa3e29e8d0e3540b150764e3b18265f0302047c435bb500673065023100cba3d94a78a421b159076cff6b5e47a24ac6f0869c0ff72dafe23a92f078493d37f4f333c15c44293c59c22fa84d964102304ef215ff8ebb626eac46535969749fbde9b9c7230470bcd924ffdca439bcfe49b2cf3f2911f124a5f8a02e5939eab1150302047c435bb50067306502304f4298c10d3253e3d1b78e13de908c947e397c950ec1ea53c864003e62f39036467c0149e98d22d1259aa1a90bf5a37002310091d55755a2389d80f7d1e6fe252bae04fd315f16d125a69afde30ca44da9c715f2904472dbe61109fccf2cdaa510c4940302047c435bb5006830660231009576d17813eab18ab4405f49373107b588afaa4804cd50fb4c561c0e698a20c3ebb8de0a0cdf08fa75680d06b6c4c2460231009fbdaf766373eee1ab3155c5d865181361d83759c424d280a972476dcc5ab358380ee515fe3cee4fceeb7ee81104c3e40302047c435bb500683066023100dcf5c95f19df0406f8d7cd1d63ef5160df9e82b0c207f7e8ca6509e6d4b88432535e683eb79192f7356b3c7c192aac72023100c14cac42b83dbea55f09c2d0e5c81016148ada1cd832a38d370899fa393e8df6da524898e68b32b66d83a80ec2ea7f6d0302047c435bb50067306502301e15adf8fab16d6caac263cda81f576daa16d33bae3606d1410feb3b1ed6d07075bdaceb0b45aa907551abaf336bd5fb023100c635e44b5753f90f4ba834feddc31e94060f706a404835f9c8f386af5456e9fae8b18b17637ecb50c5885101260dbc560302047c435bb5006730650230193bb69b18ce58167c51ec19b45063271cd8125af28a7b1521382f485cb26e5123b2d5133eb6e1731884e5acc9d731fb023100bde5edf76a9cd52749b0a24395af9087d2ff9d8489b576a3c649732b6d3c3d5ef5fb213333c15c4d2d53a2dc6278a5cf0302047c435bb500673065023040e949e17b07813e7e3a5657526754f56fc6f55e4efdb016ad708064b12b33ae373260b511a256c6b438d3de2f82d01402310091e8bd5df2943ea62773554557a289b3388d18ea329f4ad72cbb89f1dcfa8e7a6c334efa21a83c746d91b9cdaa79d7c20302047c435bb500673065023100c576034033b84560472a2cd1c882c43fd8b73f3f10998bfd02e6605298ca3e7ed82b92b334e608dccaf961275776d03b02300934133d7e5e8183ca16390cbe807d410bd1a609b120de1edaba1a17e4694880e5905a7a20a32f376d212fc7d480b1060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303663089b52f45418d99427e8ac5e9e9b8f9958d2fbc7f25249796b4bdfe2b8fac07a75d71e4430cc5088806376e5e98202307ab0aaf44d236c08f5a9803a46c5c2f205926727b169572223168135b255b942bc2ab979bf8478c63dd55048f66f80c40302047c435bb500673065023100f018c0bbe81920a2436e1509dcf015c98d73e1bd58b57ba8fde3b3728a10944e7131bf0b35d6cca66a15185a88e0652502307b3bb5ce699fe7e157ae1d7eec966cb432ae13428b59c2a1fd7173025030adcfdf6806f5a1af52fa7871e766f213fb4e0302047c435bb500663064023040536d0a2695232e406a19dc1a8fc81a61fe181654c594483ba15571cc1d1828648b2de612f07a1fd3427dbbbe147fa5023002bbc5458e4423cc74f5fdb25a5fa009c9c7485b0b0126692da40e24692b1ef03a4d36145f966550450822f9893983990302047c435bb500673065023100855fbc46fd8402ca101d33d8f10b9a70dcbc760d6c286e07a948a99f167b584843221b673296b0be7cd00af00d81aaff02301cff052d78d5d1d9691e8f082a1d78b275b0175ea634e97ca36844670f39f477c931170ff7735928a47eebe9a086d55c0302047c435bb500683066023100a9cd7c994ab27ec84faf6c011da194c436fcdf385cfc81b88e0297253c70627977b3f9177826fca8595a3cd6d0677530023100f702c75a508b29f0408f74ed685e410515d0fc99efc3a0dcf7fc439cf3158ef47003cdcfe86d585f1e957495057c1ef80302047c435bb500683066023100ee9dc408c9b82da828b268cb7880020379499c916ee3a6db4185b48adb6b76b7120ddad4b748122f77967188b63d4b51023100c0d8557d9b703733a12216bbd42f6bd058be51b21c3c0db7fe98ff1b5d9ab1f2d0f7a8b02626ef316851ea770a8c73a00302047c435bb5006730650231009689ba158a10a98c15ae30516d75b93f20f2cbf310104b718a7ecb7c1b0df22e9b45c84ea35194b87322328f56aa3dfd0230793061da7663f8a4c65c294ca4069bc1df9b52ba42a722928b445196ecd22c8dfd4bec24408966c3ffc87b57b0704f6b0302047c435bb50066306402306a2b06aaaf800c855acb87dd08bb21de27d87ca2b86689cab7c2ed8e16fc00e275dc556bfc1cf5bcce52e4196650dbfc02300348268f229d1792d01e682823175700ec5528d7b71523fa15fcfd2444433212f8f48f3bbaacd86617010f08df9159230302047c435bb500683066023100dd7fc62cbf4ec1cd46193e76a20fbc4e6059c10277040977fd7bc4f50ae6f721a93c582c1a0f945721f5f1ae5eea5a6202310092e30f620ce71432a48682e80ee526ac6964620b1847a10d623e55fe01b0aeca08c426b1652abc29fcfda71041bafe770302047c435bb500673065023026a14b417ffcf1833f55556c736d3bd1168da08c47eb8ebb60ba15108bf5bfc301c2927657192aadec8da70d3269738a023100f9ec1c7b02081b595c480a5c6bcf02c8d860c3237571bee1f62bdbb56cc315c17a0d6be13044eecf783cbb4d436d475f0302047c435bb500683066023100c4e13213b282e20a7c9a732f4fa1531e2ea8f621935073d96aa1c001a4e3ad40d8fe3cbcc6d0812d15a89714878d9796023100ca10e4f940fc6b02047f71778eed455eb36ac6c2568af3d35318cac801efcd30b52aa1ef007a31832534553275f8f9fb0302047c435bb500683066023100e559fa4624a4dd311a06a3f8606cf529ffe67818947a429289f5dcbfce7f9713b66e4d1085de51f3f6be8d6a4fffbc5c023100a76b1d1255dac8dc59e74d1873593ce70a47a5ae59f1788b270d164119b2297a864eef3d1ea2aa3d2ffa5e824317b7f70302047c435bb500683066023100f6f4c4678e8e5c3c3849916aad98ceff787470bb54b5c09936c61fc8bd00afe648569acc3dee8e344876ce01c34b24b4023100d09a28eb72e79a1bc8ecd28f1be7a19ea85e0caa9ea1ab0fd09afc92d0d66527b661667b5b4d29c37d44d7eb55a85da80302047c435bb50066306402300c5ffcdeafe6c8bf8abc9ee0bbc165b644b6440b4b7d434f928710938df531e723449414d43d6eb3e6d34b379bee34ca02300db3135bd933511ff3c812ff54c5606cd440326bc96cfc26da7a249c9699ac81f96df012bc9dae7f13a5598cc9aec8c80302047c435bb50067306502306b55cc3c4f8d6e76e1faf558059dcdde3d7d604977d47e316839f8617d68aaea39c2924be5cfd76a7be5c28986ecb465023100a0b3e323ba8c4842883922499537b97e2f23d992afc0e324d0a27596cf89eb33e692ddc1cbd00a6c94f182022943ea910302047c435bb50066306402307946ad31887b035c2eda492a3f10dc4e63f3aa9988848278d89068a9f3f35e7ebed44f64730e08dd2828472e643296470230611c88dcbf794ec69062cb15cf1b151ae34a0116f815c761dc6be0d803a408c69f5400c75c0840c84f77d8e2ac46fc090302047c435bb500683066023100e8253c3aa165929ae63fa0886bbb1591d944f7139eddcf935107517bb4dbba7c5b7c14ad84865ba1f6281f79e2b115680231009856981ff6f0b7e0720eff88ac8389ca7f1561b7f6c86d345f15ce48788d1bb65d53fab2290586afd7996f45593a90a70302047c435bb500683066023100f01ea27b9b6df130c7b02a36ccdaa3fa1c9d996a1f5bc52e108045b121ac88cb92c337e6d89bdf8f870074903dd6a6b9023100fe2411a48c589ace2b0f3cc3c8850521faf596fa2c5b3f6055803f1c19f6fcbcf4a2ee9064835f776a23eb2706f2a6890302047c435bb500683066023100aa8a8dc8c319189c6d0c8349f34d85a6bd0b65c788c51b43015967f9331d3b20f77b875d935b7abcafbb2c16472a548f0231008cb20aff17b5b83514b6fa19935aa76de49b17ef831e251939b7667ed5dc0591ae46f4249996237bdcb825af3d6cc2b50302047c435bb50066306402304fa0f33a606de601c74592e4ea54d0b0229f0fc0143444f3c6f078113ebc47e2cdc72953a96fc64c31600d7c35da9b5602300d602a3d6c54c17317e33286e53aff740e0dad3b508cac81bbcb6762795e434d1bed49dce7e57e4bdfad8a6f8567e3c80302047c435bb50066306402307feb86f9beaa768972060d4e239dfff8ea1e80bbb88f1cc5b0ced5a06e5c6b999c2a173805aaaa3ceb068c118b3082de02307245bfc125aab651f669f1e51d952357d9e0f717db1d893f6fbb515e3a74bccb1520bee3b75ea1da5f83d0afe592cd900302047c435bb5006730650231009e496fb162e72c1f279f8ee495bfe62320b6df913e1ad960e396e041c530e4fe831d81caeb0ba02c6351b691bf0b95c60230231f3a139af3e8f8df6e1da19e151dc800713228c9dafd473c10eeae5df0b5d0c90a5d48082d41665230f504861ed22c0302047c435bb500673065023100d4c28a480a64c10609f1fd4761cb8d9c5984e022815d2ba317f419832be635004211c03e962379e6dacbca4f0d496679023034113b9e92043cbe1d5bcab920e5c88c7d199ad3a4ada64e4c6c3a495b79a5b83c59ca53cb23a29629e484ecc199cbcf0302047c435bb500683066023100ad09eb739731d5219506ae4d8102a27257dce64b8fa16bc104dbd9d6c88efe228f9bece945a7cc48e9548395601fd041023100f44156baffc8a6166b8b42079251aa62a8309cef56a92fbaa16b7ced1e30fae42f139d7c12d23e3fa828e461f823ec200302047c435bb500683066023100c962cb1c6b1ba44591986337771c4c572d30448dd238ae84d2fdc3bdd9244d408918890e94903a06ba734ccdf638ddbd023100f8182243d26e93fdddc63b69502a2f535f189b0fa56e9da96649acb9fbc83260cd6a4b33da14c865e8fe203d6dc8cd170302047c435bb5006730650230088b140c04f7e25d81b9a8705d026bdcb3114be79bca9befbd8eeed2b4d0b9cf47d597a2c491a9301e1cb56613715a300231009c9ef74fe744a7efda76b928c19a8a8943eff96a8f234a395d3a617f5a1c95dcbfa99028d8cea1c0ea17869e409e9f030302047c435bb500663064023062636144e7dd46e7a31c400109389743913ae3502a52c6b2de82a2217535be9cdca41fe408ba7919534b4aa8160af2c40230108f6be8bb4e021771243b54a463b7629dbec8670549c96e652fa216f9a154735a42f9523b1308b9c322ab3a980ebb300302047c435bb500683066023100dad956d26723854856eb258db6a1db6015fb422516dfeb37c45a4365043cf1f452f79ad0efd2e02fb3b5053dbd2a31ea023100f3496dd4a425f2f1ebace107924397e505cc7af38ee3097504943a0c53776fae562af4ff824dc26f3f5c0adc3246f8670302047c435bb5006730650230773ef4f7b64fc83ab8d312b7410030804707df545b67b5ae48ae84a19bcf3a1b238c234368ce341df8498f57599a62e5023100d6dcd3279c140772e3393d2df414055c6f2bbb5e49c767347314a5b9b15bafe4621b117aa854968d3627197e4fef0f360302047c435bb500673065023100bc7dddf8b33d3638cec16225027ed5a639f3152fee5325f6db60615ec81a927032c3636fd40c120bd2e78e8ece74634d02307d2d9a75a6bae38250dbc36f130cc836b7fa447284c668c4d3f5bf067d9b0d28709a5fe32bac3c05da7d79f41ff7d1820302047c435bb500673065023100b300e8ded0cb2e1e4d6d22a3e27a6eecd32c42ed8d139c5bf64b4c9bd5112c4de7f2b493699258a54527125f43416aa102304b48a995603165541b1ae8db33b629d5fb7cfab6ca9d0e7d2681039227454d3be110aaec39b6491e091d07bd4a3cf64b0302047c435bb500673065023100b77445e08b8abe4523319778f08b052fce5da23b152d22b15f0c4de4cc8cb0757c50dc4a85146996d1e96036e01f9d7c02300eb7b11db8d87cd8895139b8c5451e83b9f35033a8db87153136b9b6ef990d8edca1a22caf505c5c97b77b85a44084af0302047c435bb50066306402302140a1e55266ae597e4e20dc5b29b34bf3576411e3e6e0fa80baec6803144b551b00b0be80da8f924fe23c5e57a2b19802307d8261286aedb35c195d62720466d5738d2f1443a0b3db40154c88cb0090062377d4b76dad545e139e1d6291a9e7167b0302047c435bb5006630640230578416377e254635c009b01c8675d18b396b58e22290ad2b1a490a9319a10adfac780d371fc6359d9559c9cae9caa53f023064b88fd173557db4b741d60e0c8577d16d87971337130c76a20c4d98b83f212e703ae63f8168ab7f00c202f400ee6ce60302047c435bb50067306502302c832000edf6609a8db3db3d73f024cfe3231197f7a8ded42b92068ac796fe4f69eedff87a1059e9516176eb36325f34023100882863db26d5d86b22c8371e9a2f7e28a00abb6da34d0f4df3f9ca5e0ddb5503ad0da8e8461881ba5f37395f8e896a0f0302047c435bb500663064023063419dabde86d3cf3a4dc30508737de77027bbf3460548760eac1de960a5940ecf3685f957727936d4571482f76baae502305b32b86de4d4be7380080ea6c2ccbc207d15986efaffd501028cb4dc495585ed653a4277b36260d48e5271cefe6a24c90302047c435bb500663064023072219db2afbab37574f36be95d0c12af0649b7f82c24ad8d375c916254f7fb556bb143c2421fd5b3255d9970440e678402301f184901a047e83f54fdbf6d59cea0176dcfb25eee9b879c29bd57cf45c26aad771ae5489e57f5f5bda1970c789fca580302047c435bb5006830660231008ee1cec4679dbe1408e18c1e25360281adbc10279e3dd3bc1f9bfe81ffdd01ac592557217104c951bd48473d31b1b8ab0231008aca686fa421fd5e82ee062a7d5a44aae0456ac4592b9ea9d45d976c081f6fd400d8124ac416ac84dbbaf680f6f8cc0f0302047c435bb500673065023100eb7ead5f173797f5e0f0cc08446c7dca607e9bee4f35444920edcb2437c98d0f5a930412335fc6b1f698d7382f252b8502307eeb8faf65325764f25857d712d91cc07810ecd91b04237870c6fdb05c5383331155ddd0be3aacfd624315c260dcf9330302047c435bb5006730650230232c12be76d26ce624018ae96d557e3172697ff030906b90955dc7ea28498d5101e62466afb93d755a12b3df848f8a6d023100b3dc3661d0fc3e83aa907fa2b9c28a372922289e8624746ce29d7c183bfa6b595b1463c83f84adddd5d60ceef25de49d0302047c435bb500673065023100923c1863247f4182bca54848f9f4e75b829624c4b0da2be541f60f2408b7ea7e4a24bad933e95142a7ab11a47808f94702307a7ff0f6c0013d32a3083b92c969adc8d111c3e4e856be1ebf3516e403fb8434fc15898004fb905a932b5132045a583a0302047c435bb5006830660231008561bce07eaedc4f318242490765fde4a1cb9b17c0ad5c0529ae140182165aa884195198019d9fc901c4bdeb8ca78e58023100e70d2b1706d3eb6736159b81738b15488c617c4ecb2b6c1bc4048ac29f1ab1cb8b1a8220dba8f7d5a75687e51ac355730302047c435bb500673065023100cf4c6f6ea93eaddd9ffa87e5abf05766a03c6d43fec143ea2b1b77a25a84150322d716dffb331e4bf20187e98844cdbf02302b4b67e4e343c58b5a540c28af04dccef1338279a155dc52461d1d14489d95f3819083e1ad4b3257835aafa805539ac60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a866dd30b9cb86764424a4d20deee25c23143d90c44b049dbe27c67ad97cdfd4060a0cded9c01eb8354e15550e3156eb0231008361699f8fac106365bf169243d75cbde02a1d53e841fd4facb080bf3832a192f9590f56404d7f1b15474b7505a0d1110302047c435bb500663064023077a5b0925f9a523805dc4edcb52cfbe42abb85fa619b472925df08e1f4f0fa02e7b187b2563ba7d44cd14f04276d471d02306eef41abc89dc264a818fc3d0784fb9052a3a68d47298a3713e9df630d13f5e9f39fe37816ff2c9c0dd7b99f0ec3a8760302047c435bb500683066023100cabec93fc1c1697f2dc4c544a7972f85e9b67a98a381c6ba847011a09986f79c7fc32b4f7eafdf73569d3d0192765bec023100a4b503d84789311a351ee0dbe4a14e5ae83ed7ece42316b27d91d974895ce67d74bef4e3aa1e9b70fe32b9362d2ca5fd0302047c435bb500683066023100b0e1916d8383640343519a55fa85a4dd47cf686cf7a14eb75663a2c2fcc6715fa2e218ae8bb85ae52fd732b42c3b654102310099bcb3f2b643c78e37823bc580146510d9780510faced515fb22b1ae66917149fdeae1d8531f7e82bb99f426954e87370302047c435bb5006730650230786cb25f6a55394664847105d20e018ecca737193adf8e7da02fc0e9d9d1e6d8f3ad4d4f987d086f4568ea6af6d16463023100b0516e7e77dd0e8c6013d46a5fb929b8059d13ad920ea24e630b66e85d8f39d1c0f58824a0708cce5b9367b9b70739c50302047c435bb500683066023100cc1ae64149101b80589a2e59c2cabd059944b58a83fdf47f698ba41030c9465489dba105fdd04b74e3215aba09f6b7670231009ac7e8ab7d93b400c44b97bfd73aa8d68220ff1036314c27c81b023fcd3016b7c397c76c43dad6972dbba520138999430302047c435bb500673065023100a1874a4d27f0e07b19e2eee45a63afdac7f30575709ac832dc85f9de92d7a760d14c9d7e0a92e50241034849cd036e8102301cb65fe71881afe8e726cd2c92dcbc6af8f408182c4bd2111962b410009c52179168c50dcd25a745a201ec086696c5fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f54bf653d7b032986eb9c0010c35f7ec4da5daaa8cbbffd2c75b8756a6b72b15b309dea60d3e66a59793f412bd146868023100bd8db7fc4811c21f70b81ba8cb11a1d2c63f9e9b6ac9632727285e452d92ba72360edbd80d1e18c46109352bb4768be00302047c435bb500673065023077a0ff331b1f1868ac6db29c7eebf7eacc9c1521227d8f7fb2f6a65e5172ae5ec75d7bdb9f509b313f1f98ab08b0f52d0231009260ec2f88d906e24c1804b4899884de4ae271c858873de6cee22b6bd7cde122019ac11a2018ce1d395d411a0b52059e0302047c435bb50066306402307405771cb7cca59d17fd2c26dbe466e42e3aff7eda5d890299216831c52bbc46bd98ec4d5a251751b945b9e4c4e544df02302688c1e0410f88960e498e5651d15fc89bcb7755a1aa043e5819066d1db78d0e4b519f4d3d1416480809d7a809eaf3320302047c435bb50066306402300291dd0a8d3b916c9e29b9908f7a90503fa7ad86ba2d0bec53f08956f16d4ec5590cd012b6bb9410cbc8e9c2f6c70d3702304f1c42775d41811a6fc2b4f8fa2e7d215506ddeb8bd4d791168d179d8bedc4caf3fad9dad75f50c01dd0642f8554ebe70302047c435bb500673065023100bbc88517ef853ad1fd1733b518b7ab935506630c512161aa6eb1cef6ab9a02a9e4e9cfee4b61d63aa2d579dd6dc8bcca0230318a710cf896ca9c08647b27beb9a656e4f469728126b10d9bcc9372fc3a6884b704bfffe5ee386b3de0ec3d0bb562d20302047c435bb500673065023100d4dfff1db963823f9630bd186121dc1f9a34dc55274d9cb06671853337139a921dd4c06b4aecbd689175322e964fe478023054b7bbc74739f7b788b1e53951128d65b0831065674bdc2670800a6677321d46526adf7379a4fb998cb1e4ace709672d0302047c435bb50068306602310092f17989fd42b52e069fc99d5594d1e2b743091846b6c0ad67aa0f48f0852f96e66dc9de236a784a11e664bc681b4159023100f95749d918e3c0b4ccef6512693000b10d041a39ee72543c0a577dc5b02dd9c00f285c9142d450df2fa26d7718e6e56c0302047c435bb500663064023063d066e1bb4a2bfbbbc958e1ae90fbbcc5577b6c8686258eb8007a4638e04816ce72d5b537b3a1276e1c0767a9ed7730023020aea581116afe4a2d68e633d05a819853c7dce66f385900c0bac24a8ee73695457570e4903810d78d9462c8f11720f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068169cbffbd4fda38a18aded9607dc565768c11199919e00cc9b40232e43ca1c0e2df01cf1b4e326ff4bdded562d1089023042ac6fe256a3d80d960c789ee61ba9743141c72faa7b7c451b65324cbbe1831479e452c8c1fdab1072c764ed7169a4490302047c435bb50066306402306923f0937df6f976a151152d6bb6af1f2d9d5b4ffe9a64a8c8189d0f488a48dc557d772521a0ee185537f1fcef5171c9023015f091be10fe1ff60e7732be000500cda9fc4974c8bd4c7827ab3b549763b0e1b9d5a4dcabf7540b9747c36addd8cea30302047c435bb500673065023100ea947a2576c6da80b9071f9e648734986a599cbbe507fc254fc8fcd853f2cae282a8500f65863e4f899f6830401cdbe2023062f4f98c8832c2d0a9c7725e2387324d7b7f1827acc00e6dd38f30c9641a6ec9e61ca95cfd7f298c496a943262472e4e0302047c435bb500683066023100845c4c94a5a48165031cc65c55e4fcb1416a6062fb899870d8cb71429b407e47c21254f2200732da75b3e227639db8b4023100c29052396dd4bb9caf88a635a17586e165697d0547d2ce0da47c030c337468074371ea1ae0f0cee373b13dfe139ad4c20302047c435bb50067306502305155fc43b77e2f9643fe12afa11c42a085bb9270f21bfd4ec4ba5b1381e6c2a4ab161ac54d29850fb706ba4b537a775f023100d3f3caf92441c3075a68eb51db612e744a023dae3f21232be51c47fc2087abd6d6d79396ab29233ab1486efd437247390302047c435bb50067306502302f0ffa6e177f98f0b3c530ac8b64807be6a4121a1057fcbabf23c2998b13578da8bb1de509948ab00322e0844cdc2a8f023100e568a95e2e6b924fa1549e6484759dcd3e49ae2cab22d1142928b656e086da56fb51b7d2d04baa9fa721efff5b2c366b0302047c435bb500673065023100bc84d88aa02b43789c1751af1b168d0b814c9ed21869351c983dcc4c0ca85bd54314d0560c2f917c58edf92b70288f7902301faf1ae06e9300abf45496a2de9e21c53e8662bb6be0a8b4043b50c263de3f67409c704c006ad690a63aebccf27f17c60302047c435bb5006830660231008b2e1905e41f0aa0e8269caab21d986d87ed5aeead7a15f5bcb35e1446b26e554717d5f4f5217648dfd880d781405c6d023100d85d272076469b0af749e8eba1494535def59cd6d0fe954c0be4f10500b0bcb3ac37bfdc4536718bf7095c513a6d5a620302047c435bb500683066023100ef87fc081dfafec2674edb798ec91c65e15610e5e9fd1b4f1702a0736c438595f8fb1ef0b303c46fabf9e563cd8bc585023100bc75c2614335029d42e0aac69dcdf1eca0681d2bb436e040f51bc46dea3788850d565f3e4c0de8bf501b3938afad75ff0302047c435bb500673065023100bb7967abc9b4ce6211c10ae539058e9d0e86811574954ba8eb6df5eb32b8ef4929673a47033542aee63d11352bebbe860230369b104d558aa99b12b36802008627af058d2937970b2c4a99fe3e4e2b01977aa8db396a5d5d600fc07e61590a38a3210302047c435bb500663064023077cd31e52995ba34df55baeefdcab838fd33c2e3acb1add03d799fc05d0fe4ebcc1da2617032fc861a076f3beba2670502304e4f4e846becbb97412c3003171b138fb72442064cd4ff11f7bf76d5aba9ab345815e84095d62883bc7daf794f571e610302047c435bb50067306502303579b2fea120f4c017a067cd436dc5489f7e7bcb8fe8e6eabaf1799e2a093b0f4a083f935d849cd683be6e87b2594271023100fc9b1248821035477d53a4ad7c1163c29448f52c80780a1e5af8ad70b59ed631033b231d09b704126a4ed2cb9e74cdab0302047c435bb5006830660231008d618999bcf49e13b3641ed25af7b72903b3f1857bab869ca61f110e75ad8e3f563481956df4fd2ac9ae96b2020da990023100f939cf4d503279f4e8cb0f20d66368e0e0d1924c4c0ffada1d74c1904d8b7fc18fb424e3b3f6aed3f67dea09822dc4180302047c435bb5006730650231009d8bd3199a77554b8cfaab03ed5b3b647d066511de05640c89ec234e92d9a5aa26eb01c86f8894e8a715f4a559d29d9602303b62facb27a717bef97c88039ca8b5860e11f1b2e8966bcaf2474f5fcd96ce10ce4c950f2a42cca51c131a99bc14739d0302047c435bb500683066023100c2e16844cb92eb572dcc4dad48890e8f2f1682e67eebf0c33f2dfdc6a6a8da295815b33a5a8e0f4498dd8743ead65c4002310092c0842142d727474a89e17976a511fdc7da2959bfa7ed709b44252ec69afaaccdf75b3f869892d1d5cdb4e1febde81b0302047c435bb500663064023052add8baeed7230e93f67f926fbba988f77b6b3698a24acb8b4c58f4aa646de610c5f98385897d26397228fd4855d85402300ea50318ce3f73d3ebf28817e8bf5906a8f9798ed26b27e336542158fec0411856ae636eb64498623c9645f16390662d0302047c435bb5006730650230010a8844fae476f900a8cd32394c9a58245292b25ec3ca8b34aff3ee6cc432522d2bf567ba8b3f731c96c8dd702e81db023100e1512ec653245acbe7a6d506a9abc2141ede8db50cbfd9225765206198a48dc3b7eed9c22ca4c33254e105f618e978b40302047c435bb500663064023054bc2e12c2cd70440330362f3c7237dfc44f160be0e0f996bb55da587613f9a23d2524d55cbf914968cd9bacffa0f48b02305a11fc85c95a9fe46393c49d72989ba3709ad7ea42ceda5ac9016f5167d79a63b6d209c8fabfafd8e0296e88c0b9c6a20302047c435bb500683066023100b67b8e08bc5ee718118623c8d356b5c41a9077fab813ef8b0a6c16edc0a77f668187301a4ed3e4fd71a57a48b2b1004d023100b877a4f109a50cdec2394cf0e784a9f6e2bc34a485f4670bcd94ca0fe717de44317fb047b99ad02c2626907292fca4320302047c435bb50067306502304a5f147bf230b3d74b212562a4c934d2ae2b3ab9c62f9c2fbe27209c41708d095ca95d6db0a0f39053d390140cee9421023100d791c37e1d85a07661869bc8973b9fea7a9863652943a1205f20ec88b67c7dbbd4430febf3e1e12d00cf4061baa87bc40302047c435bb500663064023006a6a6ff300fdc45dfa2b11133e1bee030f9d4c742c8a0314c22f7161f56262ed66255b44e3636286376feb02abab9ac02302801099b0b3c6b8bb5086f1e97ad71db4af3d051b8eb64945ff4b2757123cce460994f7a9bf21f0057d0e2bad7f9140f0302047c435bb5006730650230465a5108cf65b25a2320328b4b19e6e3ac6903878e96e49568fa6143d7bb2caacc5424ad45f7cdcdbdb0d3882d09f974023100f029c0267e01a9c8687a0c6514b630f9883f8444df121751188d0aa30f899b346d3960b9aaee71e701a537295a1e2e140302047c435bb50067306502304cd8416d834912846ea90a53e3ec0b2a2bef409b3fcbf546156543a864d452396ada44234138a106d244489016dec2c3023100cc9f7151f1c7dd99257bb4dbcbf87e43e81640e4d46394f0e66f18c89da439302e360c84c7e624c5c3a39747225854800302047c435bb50067306502300ae8ef5c28cb84c41a87ec59fa01e8055a6767491f1ee2a810b4f2736212e3c7cefa6e0c9d523bf669fdcbd4d0003b0f023100d90ee5cb66a3f794144d12865e3831c8738608cbbc99a078197769281122e57d27dab623fc668ac8087de16723e4f2be0302047c435bb50067306502302273d861ee28091f50ba4fa1590a88727ec4f6f02ccbcaaa347e220cbed8b46fa38f2d10bf271bb542515961e47c0e11023100fec607556566d7ce49391c24bebcb029ea1f5a20234acaa77b8ea9e38a59c49a9733640fe4451070f635a4984810d03b0302047c435bb500683066023100f810c8a97c77700d45c1f756ca1c5f50484c144428542bc6eb3cf29b2b8979d05dacf16987fb0d496ac7cb50b3b523ee023100d4d6069ed8a6941beca5c53ed9cda820ff9cf32ccb087520846527fdff9254de6a7c4ebef83210849d3b73ec1981cb820302047c435bb5006630640230147b43df23b4447ee65df5ae35f71a71fe7591c15218a3ad19b016eb9a067025b4e0cf4771b4d5b7d6fca2b8d1e088150230678d32adacab50550ab3e0bd0e754660ca32e8788290e0176917e103a43854d68aca29e699c0cb9f76c0d834c78888fc0302047c435bb500673065023100c7e0030d5d36ef1f43b00fbf5e680641637b049d3cf475229859d47173077a17186b805d7ba55aac3eda57a723f28a1d02305aaffd14065e5eddb63ea1240f2e0c1108972cef04984a5c00d4324fc2fed5d6f7bc6e00fae9075a600df30e3b86c1f90302047c435bb50066306402300e32fcd4dcdca3ea7ccb559b71bc2494174f896017f1a4c47243dfefb4077dc314395fa989d62de52b51fc19651a69cd02304b3d6751b557638e5eecdb7938bf001891e262947ff71c162e614bee38a15f7f657f8f9a1736fcab3ff7f51c037ebd7c0302047c435bb500663064023042e785825d687c1980521d2aefe317fcd6114b8a72c031bd4b6b2cb6006533995999ac679ed356b1c4f259f34b73c072023067f84d7005dedcf7fe1ff995b3ec39953a945edb230879182b645e4a7eb6a874d626a3f9a7bf62ea817067ffc65b6bfa0302047c435bb500673065023100c7e783b6b715cc3e8e6c1d5ef134a479d852af65621a67d88eec9e3386683abb215159392720390a586551dbf27383210230428025cb8b08fb0b53588e8c1366ad84020833a4cfeebd998a72be4e6764e1d5db259c13f0fb836bf24e1fd0d62da64f0302047c435bb500683066023100d0afeb705a3b22bc7b6484c3caf25599a9eef185c0f5c9b08fd5114ff2a3d20051b80d67665d7a84ad451a52b8668bcb023100af5e996da42b39a484fbe5449fb473e5da45975fc8c26fcb2959f52d302a7c61ba585919710c0c72cef77b4e2087a1e80302047c435bb500683066023100afbb688629375c12201ee8c2caeec152a50b7ee29727ff4f5df56ce85690dd42b99082f75bec0b41a6feca3edb2ca89a02310090eb97e1e3ef573741229438d76a11c3c7880847b5c309ffd1535a0366f96ad95e3132aabbe7fec2f3f2c777f95c6e720302047c435bb500683066023100d8f8ce3d1fbfdd131f1c2570396565419ec8f722f4a316125c93fb9163bd8de857126204e1f4b0ca761dbca629998f39023100d846ae387ac960292898f465685c94a528ef72346069bfbcd234fcdb43a50d20723c6de7396015b7efee5c27916139cb0302047c435bb5006730650230799b7b1f23c2471b12aaeea53314f8774400e7be0856c700ba60354e24a39d320ae5cf768f2ed9404da06bf141fc62b2023100b0e78ca34473a15765e692ee776cc3027a28f4c3372d2f35b1a98794ed066f0ce80a46c2e7f684f1226e785a8eb6e6050302047c435bb5006730650230098fa234d9df480d705fb1fd8713ccbe8e16d9d31e9c82abdb4aa6c16e0a112b9ec7e3dc94ed58a7324aaea0841e06ea0231009455d9632e42c23dc4b47a61874b21f12f572befe4d1806543a3d37e93adda6efb2c8e8d51e2a16c8f9c7321bcacc6980302047c435bb500663064023001996067e534ce8526d6f72cafbe4533d222ff6eabe8c02758da2dd1616aa55c3e3b70980c952271adda99471ac059a702301c636e744e6ba5c8cf018c5f89ee03865a89b45f58ab87f0d8790539fb71b57349f6aed1c8736df1e14697026fdd7b480302047c435bb500683066023100ff65599c9db56d476231fcec307c1c8b89b40138af5d54245e1ce56c3ff51b39e52aba069ef676f046ee12f017fbb94c023100e7e5e2836b7f3cefad52b7f72d6b9a2984830c84bf019409da7311435521806d4e886a704e20bd4f60d26e6884313f5e0302047c435bb500683066023100cd742fa14b0ae4027c66358465f98e7ee629c0f18af3d5a460b10c990c70eeaeffcd6120903a88a600a40876c0c85a44023100861ef21e0d007f6ced7f9eb2c67a5ec052f547328019ee598a882ca8c031d131c2d4fae7ed3eac7f9152e53707b355c40302047c435bb500683066023100f5e6d44642a92e4c7aca3f52b75790c7ce80d7c16c94e5d75f86a71439a8bc15105e8a94696e7020d68a8265ca2531d9023100fdd623ee53383fc26f417925aedd0b80f118ba2aea08c1725d50b48810cfecc0eda170b681d329fa6fc21e8962065bfb0302047c435bb5006630640230049e59a882d75b09457418970e4de281e1bec1baaf00c90481c1c405a94c5acd22ea5d19c6e067010d9c7a7717fcde6502304cc55409e20d2cb5ae1d821561831119e535366f2d45532bc239765f7ed3f246806215b8bcb03314b81191c9e32d67370302047c435bb50067306502304c72006d13682bef49cb1424e59ed0609a469ee62f375a35fc9fb700759e82b5579db2312b0f20fe96d0ccb362dcc79d023100b3457b0a321cc845452d5e045e95bb97800d43529c8ac5d9c76696b4b6cc86ea5d5e0726640867b6fba1fcb717150b990302047c435bb5006730650230403d409d0b92a70aea411ac2714a60cad5dd8268cb6384b7de4123800deb7e516822beaede11269c092c0aee6c97e334023100db3fa094b574bedf74e6702e9e81c4e0817f6f903c13f4262c898b2fb86056318efaec7ede025a47518ebe14f115720e0302047c435bb500663064023063e61d5a74eccb7075ce3a7b8267dacb77c14e9f639a31c75ecd7fbf835d4885cf6733c9934c014bfee7c77d8bf95a3802301ea0bcc17c3591d3a9fd286f2cda5312ec225b87d5413e75cfc3e949bf31ee3573c413b87d233e6f7638071929d409040302047c435bb500683066023100c55d3a37f9796996005057c884ab39d067cd3c143b161ad15a0f36530b84f8fc9a2877a5881fe482ce0c916a23f21e49023100a49bd11c6de60cd287a15dd796a5c88a8634abf5e043377e92d8275f33bcf5560d618bdb92a7e566d4be3ee804a6002a0302047c435bb500673065023100c3bfdcddefad3b99894420f954dae6005eb5144c735a056d70c60e5cfdcdfeb834377b0255713b2bf0227315dfc0f58c0230321b40bed66752cea0520cfb92880ffabb56a8a53e26ccff67fd64a5a737b076c9d9a91ae68988e61fa3adf65a74b62f0302047c435bb500683066023100ed093afdd65cb7a3c1c3f8752f0109f570113217dfe9ceacc63ed3a9db21fab449771eb1813ec381fb83fdf2653e2f1d023100ee7095f3d1a0b7b3fc3ca129a026e55ad9f169a429d1667474ee394f65f618f30cfbbb9412afa25162f63a4aaeca74df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301416d5317e6a180a9f3bf9b00789000bc4a80060696bf15a70c55b47229ee1559987cba817da579a98834fe9f230c328023100ae2408ca81ca7d5a12e6e3079e4d302552236efb0472e43b7f48666d07a4cfeba100e0157de8292151d961328fa921c40302047c435bb500673065023100eccd864d0666206cdd2f3e57e4e22ee4c42ef1e6aa1bce819c19dbd85f5ed3c0fcf8a82fe0fb18bd83eaa83e5faf85b7023067b5a49d5e35efd34a64bf86401826007c6d284bf47cfd537eb60d370cbadb8a0e3880b1c6f4683b594b62c6bf0266bf0302047c435bb5006830660231009bbb66266765ec55429afcb8bed77b0e21ac26336ddd7706d7b311e5873828bf985a40b405be170320ea158bc1196e4c0231009b0cf767d2861d26612d8a2d7ebdc2b646ad5d12aba94dc271d43a6329ec083b00078a384cdee568e6b3a59a020418170302047c435bb50066306402307a948a8fa00fedb2e901c9e04ef0778acf6448c3588f822b04031565572b8f7b2d012326166ed4406986e356ad1099c3023064b9c8e4dbb7a92b72612cd7ab370baa0b45c2d6857be4dd49a59c08bb19e93786f630d744b108ba8f2b949088e4b8580302047c435bb500673065023100e31765e3a94a8120199f869594b3df56ccf469321661bf96a3090b6698549b6436b5dac801826ea5d975e6daaf86ad6602300b07cb60d7033d8944660f6ae5466edec5475f533caee8cdf54215a53019282316a160159d10ec1fba3d12c0def2a0b40302047c435bb500673065023100f9a42d42d5ec811949a23c96e5b06fa9fc59fbb09a9f02ec21e2e980968fd57ac380084dcf52cbc06c63590068019ce50230031af21009f8c6fd2e2cbde5faec6dbd2f030e83f26c12e2e4ded7dfedc31b32fc96779a23a55484c8fc5642531270500302047c435bb50066306402304733d9a8b6229cab81cb8e236b2133084f2d6561062502c9963eedd9b4767596ae93965c24684024573ae9cc38f590620230450f8af8f95aab236d57b31bbecd5e0957218fbc66edcf4e43d84748724c43a1b47c8a8930f72c80463b8abaa5b3144f0302047c435bb500673065023100c43aec6a1fb47fb704fe92821861b7185b4bddb113a9e5905a4ea78fce0c351a5c43e4acbac674cae08d8754b2a93aa802305d8f351a49dc8ce8b5589402a15e52cb643a275ecdb1175763c6bc7cb371ab6281baf9689e521a5a74d05451e0140b150302047c435bb500663064023067afc677373d8dc51579306abd87955dc59740a340d4b8ba3013f786990618b6c76cd85d18895e4203f7d2bbe0ba6b6802307a7e9e87c7e2505cebec201c470b4065d14591d7c2a36aedd117cc6eac97d8250a72bd4ce803b3db848e33e7d4bcc9840302047c435bb50066306402302ddd56b0f166eec046c572b2b5267cf7f579155f9ce14556739728aff04544b9ad923b09e975caa7940e90f950ac39c402307f498fab7ad4d352fc2a8efbfed83fb620ad6963f329b7e720c61622305b9eaa061ac6ba8f8b31faae917b08aabfce180302047c435bb5006830660231008cdc7c09aab2855b6471609ec4b4f795bac2ede88c783b76693707a03c320b2d54bce1e64cc4331cc186b788ac364062023100d5d0fa89257e9b35828fd99baa488dc1d31a9a138dc085c89e10ccadb9caf54539d7a1c912d24f8c051089719b3d77230302047c435bb50066306402303b4223059a58353640c59d9da0cc38efab9bb5c1d3774cd113ec254abfb49826835e548f7c7ea560e6ee72f37e6c685e02304ebd6e973badb985e54f224cebd71e16f0c46f1263018f6dc0b5381a973be3f3a7bbff87289e11db21d3e744acc8b1870302047c435bb50066306402304807935a87371588c64b25588a0dfa6d37e6edcd1a3a0d6edc3d929e54030e7b0c7cd76efe63d821e0dacf67ff5a8b320230474eae845b12293881120eb04191f97e0174d026993d085ca7fd5a94592915b6d571d95c4c75879f1ce2dd189e4246cd0302047c435bb50066306402303a2798853172ce6fc059ebb9a05c64de430dcb92f32c808f99736c6e484e296f6b08d2875f393949b0baf79013c1674c02304dfd99cb8a4c0e94b268aa0e359fb04a3915627076b0e45c5755567b0024f10a03138cbfa2dad7c8b541db08e5446f650302047c435bb5006730650230399e4856db96beadf7f64d46a0393df3eea93cf2f4d75f602e9c7a8981bca909944e7ab925dabe942f20fc91524df51a023100cb6eff61514a2fae46a0cd7640066dbe3bc665bd09d845fa22b3ab2c0de0eb4ff2e94fd147267f897711c4b7c1fd863b0302047c435bb50068306602310087c8b8c9a2a9cdc1d724042f501f4bf8fbc1c75e8ae2865560f50389df0e97554336a33124aff7ab78be6de5140145d402310093220ee5332f39b4251db1d6a971009d835dab24d45ee75e3636b9caf5ccc583f45fd57f32010eef09c46efff7299ac10302047c435bb500683066023100aa5c111bb4c1b579442b0b509571c28c7d8e1baad80a88d1715a2b6b81da43f3cd92416305603e0a0f6e7ffbcf0fea5b023100a3634e920d2d136eea118098837fb48a935ddf0cb475a772c475e544039028736b8ba76124c836ab160bd64bcb004c470302047c435bb500673065023079e740c30796c5e409bf5d400a2e71b21dde1297a4a67e1c830b80e5af92a242ae8103d39106edf2893bb7f5eeb835c60231009129b07b850dc90a1a696a8719206170a4bb0b37571f2d89b8879e7fb88e6a75db849e9ca7810fc530ce154e7833978d0302047c435bb500683066023100c5dfa4955711c25e85fb4ad7160808ecd6d58e07aec50f31fbdf5b30e70cbad827caaa993f437e92b6f3579a36165e3c023100e685bead3a5543a1061b00dfed6ca42a803a7f221bad8ed7f680105a502fe023d84abdad8340e17ab9e2ae027349a6b90302047c435bb500663064023004ae70fef98e00d64be8fed5d52fbecc026efa21808da21a1b7a9d7d0173aa80cbfbcba1d78e4674215efa711f214c7c02302fd8a35ada56089d27bb7f5df479ac299709a819243d2ffd7ff6f94043501ded4a21c172e00b84651d2168df9eba7d060302047c435bb500673065023100f87e70d3db7b60f86150a98ebebbf1906b8ae5217f22d4c2ad0bc500f32b0409ce9779471e2abfb1fd095ad543115aa202302cc96e0413649910da3d894f97c671618a3f6347fa5b8799cfeb7345fc0490ddf15742f2d044e26f3e96077b710947330302047c435bb500683066023100b41b8892ed7479ae6ba8c23889bf4777b4f2e9fb17cd274c0a7df0fd0b46fedd6091168c9074a134f26be3b59aac84120231009e94d7e9044b6e3b92bb21d81a41f9cf96cd7dc049be9769b26ef545cffb10378bb4ec8651c7231892dbb67626eb483b0302047c435bb50066306402306b69be1d24ba2a1fa547169b047005959139a91a8900f452a4cbaf5610164566971abe3897e42317ba78138913025cdb02304675b9411660711b749f384bf4f0baf2d5f1e438f9edb52f957c9af346557e851fa67429ddb59ede08487226d05673720302047c435bb500683066023100c1b8aa33020c46ced19001371515889b6a052f5085b6c571f34d2a4ff1578ae529897f7a20f6fcce48cfc5ba4d6e1386023100ab83cc4a5aa8952e0686491109e38043a7fddc7ef143a36891bbb862d681d1fb3c6459c1e9d8054306d10a5eb1f8b9410302047c435bb500673065023100b56a3307344e9e71039420fc0db34e7a788440c8d37c68b1f3161b481f5d22f85cf936730fc87430ef0de59d0c75847402300bb7155f5842882e76d39f8263a84e49a4b73a36c7f0e5314cfaef31103f35932676dc8588d7042a615c2fe4e083fc110302047c435bb500663064023050f9e14716ad037f9ae63100fe53630a8e0da6b28658f11584e8bc4045551a89150391db6b8f4a775ec0cd817fb04bf6023028614a62be3c4329a65cd8327433e723b8ee8da9709e010b95183553d556819ceca06b9ca1580c2d091a29223820139a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230393bbd6b22276f6b8db0937312e57c23a6698f50076984c504c51d33d4a146c17dce29630102b585f9817955966ea3f70230474517d27ac2c61b5f58655051d476095d0433fefd1de5301a24477f7e6e386502924007167aa82cb50b36b78351a1e10302047c435bb500683066023100fec0db20a6a24e6c8a704645b0a2335713c291ff1f7b41dbd7cd8ab5e333a7a24f0ab4624e4d086bf5407d6a7146be40023100fee0a889475f6fa7c5d69481916971df723679c30f646f4a8e5f1e75ad64715cb0bdfed5f7e49a2492b1b0646a4681330302047c435bb50067306502305b82b926fba3ddcf54981f3b7ca5bada94487c47e8e546e3439e71ca06c6263cc5508e9e1ee8ac21bf068adcc2fb5cd00231009bbdd524fe657b2eafb6e30caf12b09b8f778e836c4da47efc0a201f632748ca9280e8fa521d1c1836d02e1a7327aba30302047c435bb500673065023100ecf3ddcde0f10e591a3bd7952399af6706b8e293e6a9d6a4fc3fd361713d149d321576d5c8b69135e21312db9c99259a023035e6fac48152fa0a4160c25b6d11b1c1b12fd6a003f738b4c6eada4836c94957fbdc79cbb9d549b7870cefda2f2465230302047c435bb500673065023100bee4b0958640314634b59ea1374a55d025c0ee2b99980c860cb77e67049406f2e2ebc8fdb90f0c758c9d49ca2b6ec60602301bffb3ba7a84d23ba72f254f07c900626e642fd1a9dddea7685e277a9c30fad1a0c6a07ab65288190a512d9634b372560302047c435bb5006630640230729286a7d486d5045972ad8f37b7356634a23fb710675e9c60e574de12192c294f5671015d055484fd5c37b1053030ba02302539cb570af8db63f3dfad9907310ffb313eb86a7ab22ad4f16075840e77b76b24d35cbc52db308e9f9e0a9c1a2d88190302047c435bb500673065023100d20c339e0c0b9e4a5f6fe3d6a0ef4a232ec96ea3c0d5be528321d561ae237f4986e1b840de15ed7d445df9c927f690b502303fc9bedbd602e69c3cc75bf5f5f43d4564e3b3c2a46a91775d816f781e9ed1613526e1ed9b35b7a45199b17fcd7255b50302047c435bb500683066023100e52a3dd3d4d9f165e6a379421099bd188d0137e12ee1ba39e359927fe8971daf37d974a84ed688f558f46d85c3cd2bc5023100c5ca7270a01e8f0a6e7f01e2fb86211e862da12585ed65e05b0507db3ac525cf9dff50b236bf068f6b5dfbea25ea38d80302047c435bb50066306402305cacb25a5584d01f7232ddab07d79464a6f77603123e420a4e189bae30ddc65d8388367f9d9cc8532f06499463a727850230267fd1c1ee6b555240549d35deedf56edc49529c349b4c6ebd27175836872e0c276afb11681d61df63cbdc72435072d60302047c435bb50067306502307e4ca2f1b1acfcb96e91245c41cc94c6a161dc2bcbf642766cd8bd5e8b4b1faf1f468f5281a90a6dd1b115952bc49d850231009cd01c4351f38d432d20f79b2e0138bc132dd658016fdb0738b26d7d6a02948aab2bcfe6949708798aa9cd035d4d1afb0302047c435bb500683066023100f5e308888d39c244c54c4c376d08b23d18d7ee81ae931221938b0a80ebc4a28d5452d8c17939f005bd1b54a826bc12b2023100d2d04a9fd268fc44dd54e4585f7ca92dfab884e6e85524a3058e4e152e808be444e8847b72bb97adbc3932274b2892b20302047c435bb5006830660231008cd74d26ed2ca7c98a79467c34310147e7cc76a2dec4cccee798ac276f91ad8a8408c276cdfb8825c2f240433ae6dcc2023100bfbd75da1da951082336d7d1b656d0112137bdbbab4eac92782ee8b5c8feb812f99579b5066a7cb247a72decdee8932f0302047c435bb5006830660231008a00dc47f3adb4d2640aa1548b41c8094086b18d2a199415e95d725a24eb9760a1d56303ada5992f053191991ee45ed502310091c0860f634992c2b35d41af235f93fe023a73718db525e681a5f9b730d76a8d7cf8e997299b0511e6930d924038e7f90302047c435bb50067306502306ccedbc14713361e85df93bfd3a93b5d39a14a353f732060b2e7a4f4a329eb9afae912c9e039e1840feb9f39126ccc8a023100f1d154d36c18e1a00cf44af2adeea3277ebb900be8545ffe38d978ab80b260bada4eac9c5bf2b682e1cda4c320da80b20302047c435bb50066306402301b756675bb0824eff9295a3e8f44c173af375acd077b72dfc2ad1cc7e23798cf7c95135c25ec1772f9375e147493331602301e302df8c255cf66a51257d4a19212156871dd2b65863519ef01fbb1e1ad9bb86a89658e276aa60e20ff7beb3f3641ae0302047c435bb50067306502302b2657ce315f6d1cb771c03f11bca8b154e334002e463280108cc02ff6c240a21c8b896297e0ffa66ad7dbd28af77f2d023100ff0f0ab4a0dafc165830586b25204e4f0ec3088a877f1c60c6237a24d1304fbb70825e1802ce01e383043854f9d591f80302047c435bb50067306502304cd95850ae382d48a5c49524358552b379fe3b5dd68417273cb02c3163abea82a6cdb121537474777dc2604868a99c25023100b67f8461d76507d5423273d646e8813104c48ba75bbff2f459cd190fdf7c0d90cae16b750604f472300afb4ea01b69f70302047c435bb5006730650230687e1d503838e9cf23b23c8e634b47b880d344ec7c6470dac211a9f17ab23868645c0372e06f9be3e97b68e6311bd1f5023100a7cccf3a14538cc0b59b17d23acada04b621ea20b0074d2b9e67dc27590609570bd2468eeb96f9a96c7f4b3185e3f6f50302047c435bb50066306402303c1fe5ab533e501a4ca648f53179a290d03be2f37cd1939ddf23470344f963bd6acf312ed4226ce99307935605da5d570230456e5ca0be11fa0971fe6f3c163bf22f4ba185941c21bf330affa258837882d71d2bde282da950fd877087f8933df0060302047c435bb50067306502300de2f52ee78b24d5b8957a079d30741fbedbc6611f776c8cd269ea5b03719dd1d93662733c3cbf12a88b78c87a16e7ad023100af06bfc933e46ef5a5d553ab9f877476f2aa0002c9ecdec92c8f811e20197be56d1394c2abf70412fe2f2347d75a36ac0302047c435bb500683066023100a3e5fdb43fc396c7bf41fae06b8436a8237baa09b8e506521dbade12821ea4b728b3453b27b5eabca407ccca6e0cb702023100b656a8da14294133417af7c9775af63b26d00ba9da2505afca8bd2c360f8da34e096dfefdfe86250c1b6a5af4beac9290302047c435bb500663064023076f4c7ee0704bfc30b0b1a9caeb594df1ad381121b540300fa316cc093af12b6a0fdbec026b33bb379d0de4c6eb5a941023054b7e385b43f33a9a47592d684a3420bfc187f946ff227912bc8d173eb17ee1931ab0d5569c4d94e8a26db044f1ec1800302047c435bb500683066023100f1522baec6782d8b0b5ed69db51304de66bd6da40bcea0c8d1a17dc8713e54b607d23c0257e770994d62f93b106181800231009260c32bc3a9c46ac074d4209df7ff0f8a681f3c1e2bd16826ecb45f1a7d0db6e15bd54bee3ad44c7d825393ab3d23a50302047c435bb500683066023100e254ab9b66140fa619877e9bf0a80085a85cf577532669b123bcb47ba4ef4c7e517fe898495911f0c4f25547e26c6e81023100f46408322fdfc96809870cb9d86ab6f61742440e595b323c32411c890d55b44dfac48231839c1b9ff6432fd4424159e30302047c435bb5006730650230026b63d96c7a98cd73fc614c81b14e874a4392488ef6d62e3d73e76b15ca09898c2afd5bb78e968cedf80bde602eb17502310091ef265de84a5cc889540d23c7531b433ca91a2d3dc2a7e08dfa5a95921eecc9adcf2f7729ba2686de49d736fa042bbf0302047c435bb50067306502310089cebca313a5972c2c060e501d4e6d4468ecbab135ca375300f335b94a193470e152fcc457f24d8238f00202024d8c65023010ca3ece92eae7f5cc13e43bfbacc365a40c3cfe4a33aa10ff6da014e2431b0fbab4fc8647d8936421b3fa1cdd31939b0302047c435bb500663064023005089ac68f912c30cfe73f1450ee200d7b405b257e4ca19ba67d5efa65b65b2f27b077253f29a505b926c6a8a1337d4b02304c4059281cfe206273bed2cc49f903172cd03e5326319e2af2571a705d574a025db1b218d4e8d28174af39221ffd73700302047c435bb500673065023005b63e23d101d3ccc82c85cf9d50cf660f3ac59dc4494dfbea557a261ab30b75dff0543488cd5198e3b2b4198013839d023100d2a7c6b03fc725615ad9e33483bba412fe58c58beca5feff5104ec80ff199e2be3a600f3c7c67b499d0310bf9b5465d90302047c435bb500683066023100f36d9a9b8d1b3db73989d144138b56156b942642cdbecf41fb85c8345c6175b1bb16544b5b42fa767737169c32376c9c023100ce1e0a558a9b39a400eda6c9e43b6dd617c911d6c34e0f231fdedc7e46a7fb79aa0ea15b553130ffb061f2292364d6f00302047c435bb50066306402306fecf0c3d81bd16df4997b09364a5db2e4220a9a692869bba0b3c5df4fa6f5d24c42f34d04f74aad30b1cfdbd41c9ea70230058eb10a67be43ca48249f44b8f944f4cc60d4fc42fd29bc0f3c13a6cb2fd646e196e0904e2ce13804f0b2bd698844330302047c435bb500673065023100f0bea57901a96a799928eff08ec4f7055181f220735047dcb5f02d5a1bdc7b27d5a2b209880e7538c46cbe2cef7c6d0302307e2518314cbaf1a124d0ffbbc3024e3990b8aa1ce97f50db1907b89dc0f6e156488ad6958294785a225f64b0254aa6400302047c435bb50068306602310082f42c3ad0e53992c0358fc00c50b871878485145dda595504bc94822b5435474c7e06e30c1434cc414b229f5254bc7f023100d510d29f40d9f697a702b0d23d54dd67a7887d41989a4794a640d6a2e3bca88c93a5376f740c0672dbfd8036997288050302047c435bb50066306402302dde9d63f17fa6887809653640b84c8facbc939d5c289f6e04e5cf35c106f0e19dbbcb7933452ae377afd45227e445460230235bc28abf889c3a007f2f02811ab7f7242c1edb257d980209125412de785fc829af7f1c16cfbb019d63e53187d88bef0302047c435bb50067306502304665539d95b808b056ed854456a4847742b3a67b5719e186b25860ecb9ae2c95ce293adfc803462951fb41e65f738832023100ca856ecfb419ed4f6d4b04db2b049cccd377fffceda47cc406d5d2112f1724387ba5c5e375610a73a0652396bf8211df0302047c435bb500673065023049494bc6e9fad6866f5767e8e92cbd3c249c9fe26fb01ec1dab193e21071e73f518d920238bda9a87d0174c17559108b023100f057484e7176d1571bc9902c57de0575b5bc9cb8661784f22b97fa46467a2f992da8912df84f26272577a22b6d72c9a70302047c435bb50067306502302985f8632be9032e4d8ff4e22c17a2a7e6b998baeaaef3075729ac7c162f065cf71f3670fec961ddb9ec9606e0c8d1f3023100d3a23605ab6402b15888f7b1de9cce3054f1b590734dc2d2fe4110216de606c16db7514c39c68572c86c35635717f7d40302047c435bb50066306402307e33306ad1acc0450f2be9c819f81a0a53152eb442856b45c4dac07bb77e66a8edb3ca891ab0946127792c32338bdf3902304de984c8ad1b56b476eaa79622346fe52ace472c80518d178889540eba036cda8ba1fd5d50557aa243861e6d304df4770302047c435bb500663064023014206aa0cb6cd7fe1a1436aa9b3b7ebdef52e81408428e5e5dc1d5a9e75a8d6b37153951ab8cacadc4a585e791fd654a02303c314896fac24304bc71f1ef3b4996a794f8c9ac6421d9a89191155b41fabc38fe1d66d5ab277f3f85433e18a33e3c840302047c435bb500673065023100f89250404a22da6ce6fb9ee3b5df16c6cce993192093a715f5d9b55939e1dc44d3b262e388befa2b0f30872322b92146023076195804059a6895ca2d788d7e1512d145ab2b19c50dc438582734152dab880f0fc2cba52cae12d42cef51951486a0d90302047c435bb50067306502303e48e20348320d10743ca4f2f0d840589ac757bce7e95eb15b4cc6eaaf713507b21eaf2848f6030939bea32a0834eb700231008a4c3498eaf08554c3babd2880033c45ec4b862c102bc7f6593170b186a4d8e875486c3f3b42ac815aeee507abe24cc70302047c435bb500673065023100ffdd87eaa44fe5673b8ab91d907dcb9db54cd00111669b5b09965db1fab8a5750e3a79443227db1c2174ec6b6bdc9ce1023037aad435bb0ede61f983baf05c0f9004afae7984a7d406d595370aa8034ba71c51d74183d3c34b1b2411be534419f3bc0302047c435bb500683066023100e6d3736426cbd656cb9550ebb54e25aa9527816c4b4dfb3f64dcdb8008835e0543ac330196901880df2416c970d5ffc7023100baac8db71b9770cbf3a7c79aab46047b95ed8d0429dc2530ca819f62c162f526b7080b2c7c976da5ba7e4b3e93736b030302047c435bb500683066023100c24510a861ada61bc668d5fd9f8394e05456920501f945e9f9276638c90d1f6e9dd50f74bc8ddb6c817be3d2d971df5302310097012f7fcc4754f6036e5af172528cfdb619a69bcff8ba3846c591d32fb2fddd8a66e6567c2462492397938e086124c10302047c435bb50066306402307d3c1581f806063de336b2801945fc3c5a8644b806e8bca09e4416cc15580f429d5fe8fd3f8087dc195f5dc3e03ed0c502304195bbb7de79d5b268c980df13ea6ce5d15a4f810d2330b65b8c36c8ca8b5bab620bf9d66b22640ab3d65de69bd7ca820302047c435bb50066306402302d16888cd340949c3cd70b903a8b3a2a414913f08086ea1b1221a805d14ed50d850e4c199f405fdcc2ec4a43542847be023048ebd770147da3a3c517d1d5e7a3f256883c073d6268ff7622a585432fbd05017e435b52bb4ddaa996b8cba4f34a8fa00302047c435bb50067306502306f59f81da3702318c3170e55b6c562448cc09cb0f95bc0f912625fa5d9ede06fd6e4a3f3c8567ebd10a4671b231881a8023100b14d611624270524c9b93970c694def22c7c49d3bd4d22d1561ef4eaefd480ce372f8253cc2a108b278cbe9229f341040302047c435bb5006730650230491cd583eec6085b70eff9a88603fed370a07e4e2e6b6216a1cff9a35b1f2f6189bbdbcbf8e934cadaf28d14ad85b1c4023100e65256b13114edcd42f49c6a7c353d2eb7ac2560cf281f64b71fc097a72c3af08d2053e55fcc549ae9e709fb5723bd840302047c435bb500673065023100889b2001c41c754fce7e388f0d3c713241a0e467dbb1f4f212396ef1fe1c21090048338bb281a6c8f5c424994231e48b0230676f7c0f31f9fbd5be3b5fd73bdd0c0565d65033d90e89f84d848e333810e64d2152c8adc7c0e47a077aa065c6f2932c0302047c435bb5006730650231009c200cd8c6c1a769b6314f413217bd4a767b6a2f83f6a3f42156f5df04a5032bd1faef41c639f6ee8b03cc041868b2b502307aa156702d07e3bfee62519f789accb32bcbe916195f5d358fe80a4b59f04a410c5005060b1fd1985c611d03768e5e940302047c435bb50067306502303e700e19bf6b75d8b1bb29f75c12c97fade33dc1951340503e5556f7417956b09f20e7f47bfa848f4c8b2ca5de68969f023100e7d23cdeffa8cd5f1fbeef21ecd1ba9a4e2f6e70a9d76c9f5f4e4cb1c60512f25c1d21092d1f70d4a29c9d5df8ddbcc90302047c435bb5006730650231008704cd8a12cbe8d0f024c676d9e2b6b63aff6ffdd102227f11c93a1b30cd2646143253d962aeeb4f43fa35a7c2608db702307e1a09c0cdbe5b421074eb52add76fc9a13944a6d065eee5ca35ae360e25c51583a5818dd7309a08b66d448c7496cb220302047c435bb500683066023100806bd07972632675486a9eb0f13e781c994e2fefd129db7bbbf543a21720032f83334a78ca3590d90127556bed173cdd02310089b359d8d02ee9fc92344b87edf651806491e941271c7c8b8a89d519277ad7c363d9e883374614651a0fd988e410b46e0302047c435bb500663064023054e94bcb6cdb46ae0c322bdaab214eb2d2cd8d7ff5b0709b2e58bbc8b599382b0e37a500db4b5c3f6cf768256bd7d6d602306916d81a8183a01aee85f4c8db705b1be3d0c6062db35e7aa1cbc7c1b1c980f0af4fe6d5c79f8353bb8632de60d0af120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c9fe80fa379c58a4ae68708eb5baa5db8277e8bff20855bc8d2ab2b1e0536944c3f5fd35df295918be5c5ec8172814a0231009e42f0dc5b35ee433cad7eebc2fa7dadfc78b8c4f7371734f26a24bebcc673d961c13edad3666e448d5943288910d9be0302047c435bb500673065023100899a95df736f045c0f43a632f83a6dfd3f12ba5d34182ba6801b2a592315863bdad75da7cef516eba91b171a9abe5ab402300548c20a95b2b81e07bd5d0e4513bdbd5eea55e0f7dbea5cf6fea438ec2f16c30aca05496f488b280fe649ee65050edf0302047c435bb500683066023100a9a47d63ca1ed42a625394ffd9aa53d58eb7d9c9da19977d43146ecc0d0d12afd24bc3966c5821c62e7e24699ccd9053023100f3450fb93cec67a04bcad2d1f75d2c56a6e25e4fcf4ec6d3caf79f556082c9266231fb88925fd773912d11976f6e15cd0302047c435bb50067306502307ffe40eec80a0c23e9e1f06c783504f5f8666034421ef056f5441399d71e6b365644a69abffc135467b330c8a38ae080023100e16d9c7bcaccbea1da8f9b47d5c2e44a3f7ef3809a629e6a3565a2faf1ef2b476abb65d1ead7a0d9940316ce8e037b6b0302047c435bb500663064023035a7458fb8080c44c244691502003f97c4b211a150af8e650b94bdf0debc0ab13a117dbff6fa8303e4d303640a2cf18602307a6a43e012d358309afe5bddd61b5475646593bb0b7516f49e9e2a3ac6b71ce4e4f6d713d3cdcd7b0b9162c70607cf8b0302047c435bb500663064023016bd95c4a681d049f833ab508e928c25d631655951982418b083f30abd051cb256cd4a2fa2e36fe698ae5b8f23ce37e0023023780be4ebac0a2b9313530324ae9c9c1b13a399325edcf11c2026ec9ed6cf5e8be076645d49048149dfb0ac66799c7b0302047c435bb50067306502303fa07a06ed1868fc6284ee1b86a360e7248362b156661bea8646283d3d85a87b5ee7d12d5ec8f4f33ef7d5d3ccf07ec9023100bb51810ea5e9abd151967f7fe26ed9032c27ca05cdf54e8a469cc497fc138d4fe75e1121fe869f23e952364e6da9e5de0302047c435bb50067306502305c8236564ebb17d2411b2369e66c3abcc4ab45683ada91676ef19461c1c9c4b821d8dd1d692d510e520b59271e0266db023100d09d8b934b156f1f0548efc9ab97bb90b6bec226faf90c6b49d913caa195005989e8e1637f8ff2342cc82c2f5097ebc70302047c435bb500683066023100d74feb1fe1c56fb753cf79e48a030c6910398adfe2e86a58e4ee2d1cec7922efc1e2c151cd6d42370ff820d746d16052023100e44a490c5afda306922aec38e80f486ef6f9111a81be5746548b0a1ca0472ff9ec1f7b7dd6b2fea19ca6b5f90542dfa50302047c435bb500683066023100e40951ef68726bfbc26385e6ec68a14e655f612dead07281bc0ec2607477d7d4743633136e3b5ec9f8aa3caf35742f04023100d56fa58c2993de19fccf585978b7c8276a0ea39b721e1c2016d4d9d4fcf3cbba744bc1537a2c5089bb152a9a5a7b15eb0302047c435bb50066306402304a3162c68bbe78e67357febe696a41695412b1fb027ea5eecee32b3adb705c25843b29bac06596c5b7da6e72a57eb8370230264c7c1fb533c313d567c3a5ae258abe90dae65ab066208844de49d0cafa98a96b16be6c6e4d9e0ea1b25437e72605df0302047c435bb5006630640230017e4876d3457c474d6c349177c444db9118ca567411a2993ee6c21a6b867f481daaaebe206127820ade29ce8c0bef6d023044e817c0b2a5b667d3542b963f588da06664a79634e38b297075d01642914e357a011acc91229ffe4e0535efddf260e60302047c435bb500673065023100d6c672b7c7fb992ad2e62eecf700cc271a916251ef4b5012a2131664bb100c9fe8a6a82b15e127b8025793fc009e6b6b02307f3fd3f0d802d60b6b710b4624e36de843c6b3932450c071f31c7eb6af4fa2012be5ca4f191f24197f5df8ca9157f9d20302047c435bb50067306502306c13b83f3f9b1874be277a488c6b2ea95baa44e452ff9521d570060c9a97af04e28b006b1cd1779e9fd49b018d9a05d4023100db3606af5f33e5e95fac561efaaa477a7b53d522140e88f11909aa128b385df5b72a6390a95a4f8b0ec9496ece96ce0b0302047c435bb50067306502307a204a21ee2f522c7e6b646d3d850b6c828d7e328f5de8f170a46ae5548efdfdec701dbf781fbd83392df1594ee412e40231008a23cfb147f04cd993d2aba932e17b34214f698656ef4961982fefd8e3e0b979f115dbc5dfd8130b41d4aa6f77babdf50302047c435bb500683066023100e4da43a0d504b578ce1e4cacc6cdc0f4d73117d4bb8ec4613634fd55787850679cb99afa781f06bbef623e8a20dc4b4a0231009dceb964f15335489fc60ca9e370b518b9759ef2a65a19403d776915f0996095f3619fbdf8056fa3af075072d22e6b2e0302047c435bb500683066023100f4c600f87580fa5a1d04d46eac93c5bfddfab7e7170b3883ac8c278d2fa1632930bf597a837fd8475ea3adf4f275b5c80231008becd5ee20ecb68d75118eba06399fe22f7d23b509fb333049c475218661c234afbceba3e927397e969a464af791f44a0302047c435bb500673065023100f983cf5b77ba8d7be29cf6b6a004a7d388705df5ae802680826aade61f461e6293a01e864bf3c4bf45ec08ef0a76c7d20230381316a2bcc719f26fa8aef7f7a357852fdc4e877238ab2e9e1d05b0b3e872c209ee6eabd14a8a2ccb3ee230b2854c960302047c435bb500673065023100bc485b0aff37464e3f19dd07458c7277b93527c209efc02fa9c0c18652f29839c0be40aa37ec629c2453fd2fc9d4828202306a9c43446ab880c7f716244485b33d4d09b15b0e570e7d38d40157f81779c606777d862a92832ff88a94baa3a52618430302047c435bb500673065023100851032bf54893661c1540adf2bb4c2cd88e2c288b699b33eca1ef9aa7606f112db9106fe2ea669c8876f57d440de4da002306360e9337d53014d5ddbebf87f238e366efe9f4af1397896e811fc83d9418fdb1a59fdf2b54524afc36a89b4b4ca2c050302047c435bb500673065023100d3f9d37c4550c74f102475bf7b7780c9944218d9b019af2e83534c44b6be84eb165c66220252dedc8e85aad05ab28667023001beb8832a79e72f9df1bcc2b39e7a1ff086486a693b4b16e4864ed2f982dc864291b034993efa6dbd000d41b7c69d220302047c435bb500673065023100cca2561528eb1794b7a8c0c0e8027ea8895d79d57414d06058f808c616c88ab3281a694fb44d4f8be2e1cea5345bff7702307d777a154b305ca445fb3deaa7e6fb416ad92daa862a9b2ff32938afced6b77ac6e0aae61ea4a91aebc2852c15e2c6af0302047c435bb500663064023042dae86b669498ad91d07578068c5e53471c1d10915169d1d981611f86a4324cd683f0826cc2ca6e3114d53d1a72fafe02300251afb0785f8c37d0fe457c96b50e856be02ee24355abd2269428f67ea98d27bcc790b46b1dc10104b3fd5e33c7ac510302047c435bb500663064023008a5b643a08f4974eaa2245d26da142cb608e9d74889a3058c4a6e85c8dbb52bdd42ad3286df9346c5890c92b5bd9a8302303504552ddc5bb7a594ce8bc0959201018840056b85646f4f3798d31bf1bf853fdccf5f2b81883a848443ec3b8b6242820302047c435bb500673065023100f94b470baf09720a550d831246dc28625f28e2ad7de37bc45b5e2eae768f537a5b541b5042601a4df4b18d10be3a05900230571c454241bb1db9e1ef0560e334f2e8c552c90ba785467f6d45b05209bfe4852511137841d29581d3c1ccbd5cd77a320302047c435bb500673065023100e6355185b472545cad5aa08817e2d00442ab7a5f2872c23906b6b1bced79fe309235667838135c9ea98c340f6d29841f02303f71657c535e9825331eee44b4bb2d4723cdc39d015a5d155aff3b2738ff0c7872a3cf3f9e934578db95131e255d97cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023035d619c7bda84da7b4260bd477e6fc3560189a3ab817694ee3ae281c7cfaa80a6044d90fdd2cdcac2865927e8e12fffe023100cfb686dde11bb2a2de205f2d0499e1156fe1cd2713f1ca02f0aaaea1438f1ddbb3b4d2f349034f58d45eebe48bb8d5590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b3dd9d276717378d99042e740ae7ece91f71e2333f5da4ed5b0ee84d4e5463548dd7022a5c773348ede217416c4a3df0231009384dd24adbfbf2862dc8c0b5d36dc350cbfba3bbef7a5a33c56c3e373ba3f921b06b2e65c5ab73b0aaa3e92a95a51530302047c435bb5006630640230402253ac2c4e53a3502fc38c270b86739903a03205a71f6fc807c9a193f44e468de1f4461fdcde3229b338d968e083580230491f84490c794f8601be914ba15edea9d5222fc6a0b661f7ddd925487371387547a10a0abdf6a86500be8af281041fcd0302047c435bb500673065023043e194f74eb10262759866de10756ddeae4e8be137de400c6b86113a6226e4b90d4ae63ffeefda908fd7492283667ab0023100a3aa5372473248c24bc041090c8e839f5caa982661327d025a66127eab6d0f577267ac706ea6c58852e9716273497c840302047c435bb500673065023100a0eeec2843ff61e732f91f79abaac8321005de083f74444f8d2e48a1a15819e4f7230d3c5ca30e172a4f405f747c1bd60230418acb9b408538aaff9ec18792b889d2a24d64ca1d68213911a091d071c4c810e9da87e338db04fee513b687e711a33a0302047c435bb500673065023100bbc8420bab33fae27d40efaea3703c175c1ff53072810279fda4776e8c6f58f7345487dbf0b657f910b0b120e00daed30230376f0d017282ff94a7beac6c73d988426ff68f240371bf198d975503e525c2eb243605b0f1b9b7cab117b643935f06a40302047c435bb50067306502303972d7e11b051d1895bf4de2c55a28dd3f93373e6ae128c5764c6c6639458ba60861c2d2d840d8e4361ca0bddc5cfa03023100f83f492b4e72fab41b96f2ca343b863be909013e7aea13668675671665d5e6e704c28770848d19da9228f49a7ca9fc260302047c435bb500683066023100889d1493292ca4f85f8cc5ada9be59710b763730896c4b265bf34965207586798b01cd52e0f9f0a1330ebe31e57968ad023100dbc7317f3327506f990ad90c403453311d4275b61b343059516c6062531cc9b651b90bf9650d7b1da83efa63fa40af0a0302047c435bb500673065023100d9fa987693d42fbdb2865c9c3c530ec190cc364ce372fe4df459f4bdd344fbc8f9f319bd7abc31d344ca1ef89a6f63c9023032baec9ee87f224d6f49078698197d89ae81447020700faa07354e69856c255565d83716f844b71fbbe48fcf38e848610302047c435bb500673065023077f94da2cedad946d3dd8171501ab2c1c34e0efedd2f336092f3633c008ebebda7576983b5b2e1d19f76a425b0cdef06023100a79764dbf3f79db9acceec238ca6dac6c44c14bcb65ffbfb7c9a89f13cd2af395cfa9c6e90f64a191bb038f9282b3dff0302047c435bb5006830660231008a0aa1ec8a4cb9a8feb397b0cab0e90171f9b570863daabd2ea51ec5b545bcb4fd405ef3abed68f05421ba98eaf71235023100a1fad03b7a50198d3e3acd6d8228b547e49fa7e36b0d31ce91f51a9359baa3faa7aae463fcb80a70bf43da9f652d34a60302047c435bb50066306402304f20a0cf5a1af55359772ba3b4885f42367ea84f44c16ca22cac0ccc29c31949ef7739a676fc90887a7494f8279a5c600230503d83cb6c4c90d2c90e0b0416a7b3710d70b1a0e47b07d6242b875bdc75ebfd97a591cf18ba50b50482cdc5544315550302047c435bb500683066023100e560be5259688d51365e3b10fea35db489dd5e69e486cba167ac0247a8913c8faa506fe26eaa29fd538b7f77176a1581023100ddac0f6d84fef76e0dbc52746cb5a4b7aa7ac817b95d00e2ac00a6642a98478af4c44e181c85ca89abdc7ea4208db06d0302047c435bb50067306502300b4380addafb885a6cca7e2a838d81c80c0376dc378a16da5d94341e68efde4d40c68db056bf35ee851a9d25909d9fe0023100b1fbabe69007f109d111ddcd052829d47211edff12f8b0c4449de5cf04562c357b6797c9513f23f62701dd31ff6a28b20302047c435bb50067306502301e94e045502c029e5dd4a9bd8897c0574334ff6747e485c67c79e557559d8f7953b4eaa96c7dd8a507090a7e01afac210231008c17fc8da90a4f163740976078207f3ef0b595a902f6eb5f80f160790d2fc7c45f3b272f91c7fecea790de5478818ef80302047c435bb500673065023100b7d3f245d076ec59a1074dd29297ce519cf9f881f43e8d2ffab4498e0e82a41f9c6ea8d2917488c12bfa3249d47cefcf0230216e1da6c9bf0e9357cd600dd62e5edca12ca924b629a3103524425a3618aeb9b4aad76bbbac968474c166c41bb831be0302047c435bb500663064023021c29e23c29fc74909e3d6ef5f32aba16283568f7967328532e8c9e7fbdfa552adb55da7ebd6e2514f9add221b7c120102303eda6b0cf63bdecacddfa08ce021c94a3ec72201b85251187a8d26356535f2f9419f436e0ee996d7ba03ee200e02e4080302047c435bb500683066023100dd5341dc862b83db606336f82e1f64c433c79250fa3e527e11e1214028de0668a2f79f1a2c750802ca26608ad53ad505023100e86b862d0384159af5c6c912c2e397b60e584f9d6c2357b817ca387929f4d08166a48d954788f959d9245916d8103e3a0302047c435bb500673065023065bb24cfd7be11f46d8ac060627c455b72509f9294a8af627ba110e9df2f0a56c91989d9729bbbb59ad7749186bd1c94023100a1eabd3b147904009893cad2415ffb2b2febfda25f9e63dfdc711c8b6872bc76b3f37de39bf85d34950ae24e485187900302047c435bb50068306602310096327e7d59c7a2da9a9271b81fe9e94e07a5258605c9d93e152935c27420453dde0edbd7c4ca1e5e385b335838c97098023100a4d1a78c788017c031cff5f65c9606a603980491b49fb05bdfcd67d059ded5898dd2024ad2444517fdceaa30ff0adf080302047c435bb50067306502303d2d6f17f0310b713e0bdff1e5784d13ec97c3494551ce34b9b6f96d6795bb18b3bba1e9bd455f4524b10ddf117ed743023100aeffe144075360070ca3fa490c9626d01dbb2708ea1ca1405963ba0a52b5b0caf36b317180c00766a33a277c7ee5aefd0302047c435bb5006730650230312c6ab428bc6feb9bfcf9e5a1a6ba7ea9138346d0215a79b6e88bc7df26724186cfb1ad1ecb72db460ba3366f5bfaee023100ad8d2d09e58fb7cf8cd9f087af59b267d633190bcc6a11fb2981033b941a9e567d5539e6d2bcfceb1e47b1a42203f8560302047c435bb5006630640230733db555de19f92cd389e660ee2514bc1d9228e44a3b8167b8dc9f02b27b82fb1d0c507e116cdaf2eee801b9c1d5a36502306a2d17b98e469a138c9ad098e57ec0067ae3001094680753a1ff66cc94ac1a557f0f0cab8cead7b59d6427792ea740a70302047c435bb5006730650230553076fe7c8d55bb4a4ec80c5a38daef6f9fb06cea3833c82c2cad43e583c1cab6dce1f486d3449edee6b58f8f55d12d023100f402beafce26b0ac96ccab50e480fcdfd45102d6589d2500f4fcff53cbdf5d9c766748162b57472bbd9b18e3b01bf7be0302047c435bb50067306502305652d29d53128e1597f9426dc351ea0890c08a248fc288454f054780f62eb277970e0aa86507ab04485fbc333d86c632023100d94250e7fd628d0f09bf348d098e14117496482bbe2dd5f247675d07ac424d93a1f2b6e2a8c1fb8a87429f5a8398cd540302047c435bb500663064023017d22fed16ceb7ae6672775c21c491f3cc6f5379f5b2b6d59421308a69ce796686efe6f319fbd5656fc818e44fba22ff02301974d52f4df856a950476ad2d60b4f0bd6a65a27f2a5997a481620d24625b71e1ccc584d2d77e7d54c617b0123611ef00302047c435bb50066306402304999618f21bf30ac44151f2ede51c69ccfaff5f17342245f729ec3c64846ebaaee82a885ea7f0b7388a60f99ae5847e302307f1428a9d372ae37b59f92242d2f034aba3f46669dfdb0ab95cb57c5a117666fd912a60e92a6162819edbb0a02608fec0302047c435bb5006730650231008f51e0a5397d4f9661d1945ed7b2a926a424808611356486abfb4e1afc82bd17bee07c3f20a978e9cbd09419c4add3fd023028fcabcf836f8316c5654f7cfbbc5e6dcc519ba2ff9b667c59899806bf42a3ec16ac4b239d111904e89814c81c8e11260302047c435bb5006730650230195a495ad1ab4a500aad733617a67e1c352aa55f298f37ccd79e01ec2822404eb0c8a1a401003c76e72cdcc3f8abf1050231008ef266366d523e9d92c2fc5c1158b0abcbbcfd73d141f3fedb13b915bfbdf17186442d4cf06a52460e0cf41a8676b62c0302047c435bb500673065023045af8e8b185c710c6591cbeb8b72f057c7294868d80dfdc1d66dfddc49ea44c2d383b474d3d6e6b249f3142b65425142023100f08fe0893c08f7ed245ff32ecdf2ee216cc55f117b11073942b38b6fcd3496cd512a3d53871b26dc21507684d28eef710302047c435bb500673065023100b366d374b6279370931738110deeadb04aaa43ecc3ca77f4e4db776a88fd231d76f23123bea6b8e12c657c28f280f5fd02302c953015a8a09a8e4a6577758958fcd3f282785bbc999d3a3b6d2c20dc83a463815e8524c8c7fae14232077252c9e5120302047c435bb500673065023100c36cd881ef994c37d1a15895e4a326e750ccaec66ccf4c4976d50d8f46a79733c05d5efebff7646b6a898f8d69641fd00230792074f27fdd1e00b8f38326818f5a58bdfaa9fd66ea5ec12a4b5d333f64aadf2381719d5861c4b15c2f5854bd13c43c0302047c435bb5006730650231008df185920b5a6f85d4687de49db7d9f3b277f4a3560ed91ef09d416c892802cc83d08444eb4ad14fe84e8845cb96288d023039a986c4e0dee4b9ccafacf4be73380aedd64cd925da06e5af6900b6856fc0b69b3762b32c6dbdd4f607884c614fcead0302047c435bb500683066023100b4cda18fd764a492601b13e81ceb1cbf42318aad75b37a3b720e8e22417971120d52c75c9423e79fa68baeb27c4a09c2023100968c9ff9acbcd1b0814c1fcea635af8e7844a62b91f73cd192bdbc04d92223776b85246f6c0276c3c840d70a32fdc3050302047c435bb500683066023100f396ed2cc177af613ba3cb8f44a46b1e6b8c4c383d5727d040683d43f27d0e017addc8c02901de5918154acf01ed171e0231009ed038b6dc7c8d46e99a24c98c136b2463fe46e738c406a58858ad71ebb94f78e2e805e22a1986eca2d22108636090df0302047c435bb50068306602310092a972b056dd14c9b4b55fd6521a347fd5b13bd9e82336ac5c3e5970ef1aac18981b8965e58d10428d6a3476dfe2a852023100b79d5388626ca7ada0305602b1a78e50e349bd01bfc5ffa90a6ea32d91e0bb0cd770058c76c6af85bcf740670c99a0910302047c435bb500663064023068394bb49250855f3a9474b1c8f4e41cc6c21d3e3f4125a4f287c3fcb65a16187aae66c6e99992e746cf251664858186023075354ef72493fcb56a14640c9e5617f0f75400d196b41bce3f149c87e60a64fe404ed0d92ac9d93ea6b1d8c3888482750302047c435bb5006830660231009e9432fbce0c91f180428921f85d0220a9637abf8d58bfe4a9a162ba595460f49fd8cbc4024eda572453d08d23be54b5023100d9fc33b27ace47f10cd38f7b774cf6ce44f0c0b0774b95ebd9cb884ac14bed2892a1d05b6480cdb74bd1349f8e5815480302047c435bb500683066023100e7885b84f28508838e2fdc55cbbf21302f28088a87f0f7ef97b37736eec239852a28059adaf4ca0441a1b2ed386336ea023100bb0276dc3c81fe38b8300ae0ec0da7901095b60a6bc3091996ccc294ac3720411e249784a86ab6ae6d131e433173c5e10302047c435bb500663064023021108521ebc1fdbc6c411d9c5300a5b85c3aa9ffc0924a88662c02658f99705c138706b4b1ba2d46c862b10618759bdf02304fc0805152a57636119b0b42b84059e1cb6fadeec0e48d3ba083af860139244b449406583f29caa37ee88f1a638e58310302047c435bb500673065023100eeea3289f0fbd388c26e85bb41dcc523f5d3511e727750ce2803eb9a24c0ab959b8d4d13c10be7d5b384083a574cef6e02303bd98d36167bc7260edbe5e93eef3fa3a97930a05f0c2dd5daf69a652395d3ca51a028839837517ee58dc6953b3b487d0302047c435bb5006630640230127187a3339d232b9c7bb1b8a445328784d756b903dd459d4773c76bd7ebb6e433843590c710d0abf9c91bdf9aca2df3023077e0685d95a4f9ba2cc20301de09e6d629b67cd5dde4ee7bebd962a81dea9832198926d56cff3e75348e005b596101ee0302047c435bb5006830660231008e3440710e42cc20e79e73b9a3b2b915ddaff0d92d0f419685d1c51cd58d34988883802fcfdbd641b642b215bbbce42a023100cf67e975efb1eae3b054cb5e36b7a888e12b4038a0adc177d8a9d659a090a8fe58bdd61f48e26759a50fc5d9fcaaa1750302047c435bb500673065023022db4ce406d9d727aa6cfc5f5cf4f931bc2f4d093609037a8625b782055aa2d422f1cf4e214d34a9b28fa0c5fff4df0b02310080f3571ec23839002ae496440cd05cbf5d5e0a521f8075912bb16804a6e40f3f7f27e1c80d4adf3f7d7d627f2ba4b3dd0302047c435bb50067306502310099186108b48af982fc0fe43553ad4236dda26e9543f16ae200dfdfed2a0b0a44e355b58fefab724ddf25ac06b1c409300230649c96e0eabc7b57b1e8c4209b5d6e2924a60dd624af8634c22851ad99fca2594af03a2f853a1404d2a3516dc4c07d080302047c435bb500683066023100a32157b758f731a4d502f23d3b5dee65db8d08ccdd085583add9d29c1214bc8dbd21e6bc0602ef93ffb09ce3985d6e45023100947f78a663ceecb166e003144b38e2de1a44bb56848ee495cee5e8d88d5d8847a45138723a20a9b5b817b978f47be5160302047c435bb500673065023100b10db0e2cdf53f8efd13c986094520621b741842297ea16fa9b26f1bb32d9c2164eabf06dba336381b3021ca471403ee0230388b68078a4d99738468b207cda81fab2b2cb07fd5bc76ccd9db887dfff500b1c84764aef5ddb17afdb85171e4694e320302047c435bb50066306402303bea0fbfaa80cb41694ec9976b9b43b60af8b37c0632c3da62c289455ee9a4ea025f4c916d3e221fb8a4c752a27a911e02306585ffdd1cc34c524f743bc327bf4896af50e414f54ed4bce6b82254d377c6d85b69e0880f3840620ce306a7d7d331850302047c435bb500683066023100e95d2113e35ae18aaa41e9a73f11038611f70f4e111ff2e8d5316db29b079664ab737886303bd81d1137dd4941e5ae430231009c8afe10243fa80f4e3754af714943f5b41ec272e4c28d291c2f765149ce59acbd91a967d5179a78bb19df64f7cd30000302047c435bb500673065023100b3328e60b63d01ce7d00ba8656714bfeac3c7de7bdb79116cfd8f6c5e06ec5013e3a799254770d061b0ca56e6132056702300acbf95d77abfb5d1156d49c3b9a3637b6fcef1c44711cc827ab4433cf734429148ef2d84996882627115b45f6c897090302047c435bb500683066023100e6c6f294bf202443749cc40f7dfb2459c23fb4a72befce5175974734c842e7456daa7cac7fe2c2ae0290f3b39f88d79d023100bdde9eb0ae3c41a8070f476f8b0110ff9bcb1691461d05c349946d7b1c158736ff5266f0b415a25c5647ff78f6b841630302047c435bb500663064023014b389c0a729c0314cfed61dbef50960c24474077b4f475b61b07cb5cef6d9a5254745bee4bca8e79318834baef9516402306a497916561aca24f40c37acacf5b7a7e8a4cb9094f41d641c4dd506aa791ef9bdce3218b68d778236148f3e6caa34070302047c435bb5006830660231009dcf2add563b79243190562bcb247d2fdfd43a7d4ecd48d8f55fd442ba332411c13cdf485c7e43f50b204cc975c2109a023100f9f7bebfdf3d159b8ba3f1d743cc860730fb8c28a1f2b56371b9ff05f9c7a511723bfa61e54c5ec1c2d1e32a6387bcc80302047c435bb500683066023100db59c2e1ca87fa938f851f6e3b48893079f600e506485ec1e29e4ea2396d3432027a281333f45cddbc3638b66b5485fd023100f1c2bbe49149b32691b5f97fface4dfbae7cc68779d910f50a4ab72c692547a2d383f15eb943b9e0f427d67a50b683140302047c435bb500663064023072a14a7c3d5427dfbe9230b3d21dfc36d5318e3ec79a939dd196e282816bdeb677a40f71654e32330ca72288e47c13d002307e4afdd771e187ab10d8c374416bfcb18a80562b9bf33ebaf7c132f3bc5988969dca336376bd62550409e456da18a0930302047c435bb50067306502304771073941953beb2d16493724620e07652cf4cfee386a061f659be92e1427f54b008c4558bb8cf27d365e13fc84c34b023100bb173f7958490f73c6025770e6e0026acfa7ffa1ea2173168704725865f110e7835a6671f1f7928ea37568ee187792760302047c435bb50066306402301e1d8160569d393e356510c953a5f315df86c663669cae5b1dd8277c91e3654d6c079cfbe8458e24bf70e0d814eff9bb023025c1c2abe21efd97239b2e35d0f8ebd307a4b054415f47c50c8504e3495924dcf84f50abee2638b811914648379469650302047c435bb5006730650230706266e516e54aa1ba634903b17e42a3d6972cb9645518cdc57465c2a5141098d7dbaa719b76355b83d0c048445d05a7023100c0bb3fb68507e6ecb97492ade918dddbfdcb14ec512fbfe190eb3b6f675d576e5a1715201c6956dda1c91635e136db280302047c435bb5006730650230167269677e3cc94f23e5beab34808ead9b4506df022edc16451ada869c44e9dc06ec69797d95d5ca8839cd3159d32a73023100e3db5c47f906194ff6e8294571bc2b5fc9fc54f8ec271f0b1003e8fe0041650ee89bf4ee907320134721b63c8d6a56d20302047c435bb500673065023100b9ba15191fffe29ffa5a7fe6d3af55f2f7b8534f0bec21e5b12253974245d3723fe7e98a1c09891c67e3c586fde5af600230459a6e6555cc8864cd0b1523e112a8eece9d25ebc48af72df3b7005ce1899744075985b1bb0b4873b2d2352cee8200360302047c435bb50067306502300190a7ce5e0af419225a0e290eb23d3a42151b105b3f7303247496735b18e2da9984d15b45b6f20e83c7beb08296c5930231009d7b42267fcaf44e450c90cd5a55fc0e5eabca12d64061b49dd7a7d6fcefd2c8199c2f60c86cfe04e5b8602c1a7d517d0302047c435bb50066306402303dead0158465aac42301729b432d6567037c22c939c24f6ce8c3751d6883036aefcb9486e5682393b086d4914d9fa92302302a2429cd43f1f68fd38193cab10e2bce1e62ac1433bfb9340f78a05559d4588080767272e63a554a1184121d5a58accf0302047c435bb5006730650230552588f04e52ce7fb0fd1e19623ccebcfffecf37d3035aea70d1432e00178085a7853fa6023e1cb700f8844427cbbb3d023100aaededee7ad3d6a4ede847faceebef9125ef841145c4c23f45d73d7e2c83002d834f0f219c462701e40911ae27fa90f60302047c435bb50066306402301e35a42e2b661ab8298f1635e7118fe65e18ead0ca2671accc197d4b8479097c1558ab3b0052d873f58a2c3a4b5f3128023050e765b7538ed0a3ce7ff72b93f3cdac9f2bdedcaf72b85a4632ed47ed57404dca752e607c3385ff4c03c6604f52e28c0302047c435bb50066306402302f0cc461155792e36e9beeaa6f30b5a13c765153bd8662ef0a24c50b6ac7594dd89038bce0d57aeda21759974c02f3a0023069e35690f141b42df98b4c76fe6aa39a0b64017acb195667e110da7c1505056630641b5d1e02d346a8f22fd3c9971d9e0302047c435bb500663064023071b4ba46f044ac6ed45e911cec75675fcdaf6acdeb54b0a23221afc10e7757d7141960e1410e17b65fc43b5dbe523b1402303847551274031e0a915b8f8669b0e5eb5ed139e5f03cc9878a4bbed80f8c89604f50094e714b3f9f93a01d712008e2390302047c435bb50067306502305a5d5e7d87507c8fde3784d46e535539519447979e44caa93abe7f9f0152c934a8c049cc03d22743e304b72752e2a5d402310095ad014a685eed8c15c1fb3901c4f10f99bd2d3c08a4d34fc559775c504d5be60dba83b73928b3fab2b0a8c69b9869b70302047c435bb500663064023075a79eee3c4b667cb46e76d6b05e05d0ec9a02167fce065e9c995eb1242bb31b7e8ab0b240f7af69cdd13ca07cacd5c402304407e78472eec533493b0b6405376138ddd8f8e755598bc9153766ccedb59f208aeeb2be2cf6d1520cc082673d875d140302047c435bb500683066023100f5f6b0e3e810cb1e65267b2908c354cf3134866ed6ed8cee21f25c9bf6418b3933e5cf8561d882189ccba2e11d3c68f8023100cfd7aaecd60c6c745d99ece2dd6263e6f39d85b7f7bcecf08c95909a2b8d4b19db048c7a8d50e764f188f0385545ac4c0302047c435bb500683066023100ddc11098025e2c4fd2457841c04a1437c91663d944286d5e5b33472ee91a34dd96d892b7dbedd9141b291df37d191070023100d4ba44c000ad4b0f5051415e910e84b8da0d4fc9759a6f4d41136c0065016a9063547e0f983184340acce5a23da764380302047c435bb500683066023100c24f972e33444d5c4523ce4cd93863b1799988186ecc812dd6f3ca2facff63d0ef50b2908e5039d5157a69d0ed8a8056023100d166fcd94bbf2e8df6bf0665a4fa2075b63bfea39bcb70a32fa198c40086c28429715f2499b58dbf2fd4df2bbfa49e410302047c435bb500673065023100b2519c1535fef7386272d46b4c5c72898713b3e9de8525e03ad72f57abc9a92564445dc3e82ad3c70f94e24e383d508c02307a2fe0d715877a2791d7e9075d8a63f6d0db174d181d514090bd0f4e7c7095dc7f37f41c161007d985bc4b8ca6221beb0302047c435bb50066306402300d55769ce86521e67ac19d5996558a50886b72e15456557da86727464827d4cdb6bf5f4c9dc5069c6b5de7b07608e50202306e54acb4c6513f99e9a31596e11b429c84966eeced5e3a206d1fb84bdb2e68fff8fb748594d6d32711d277aa0326f66f0302047c435bb500673065023100f936c6d2e6e2288f2625076548ed1c3f1b31e669348bd9921eb9ce40c086739b061f439e262499765e662e9f3ad41b7a02301cecef3edbe297eac25bbb480cc3a4afc4915acf3a24eeba8f74e3cf865f50042122360c817e1c390b0093e788eea75f0302047c435bb5006730650230648d0d1b45134c7dcf62f9812f4e4dd617dfb3d68afb5c8215da519ad020b573f6e8a6b128796489058ab41f393aeedb0231009da55b15081b64c75aee394adf6dd5bc0cdaf56f62273f68c80829c4bd2edc8e25062cbc017347ec70fc6bc994fbbce40302047c435bb500673065023100fc357c76259ceee6b4cd60029bb85f22a7682eb6d3cdf46c426d18facfd8923f28997b557fe1ee32b53532b9fcddb793023016dd8cdee1e0983769000102bc98c8d0e2fc091ca025b830e55d2c20ac94c0e26fc5a1ceb8441445b9bb0ffd718b98640302047c435bb500673065023100ca0ace2fd344a185748868cae59722c0308b3a15961a16419978d9cd0ccf3fb72165222b8cd4785b40f44ebb91cf1b7002307d17067c455d1cfc41179e7d41b6fc17475bc92f68623535243d599e28b4343091b16bb2811621771eaea06b9a3ae4cd0302047c435bb5006630640230139e812f601c6944ce50b77f10c92e3a773fd36f8e42f79bc454c8c89ed4a4d91299e8bfed131a9f10a7eecbe8632aad02304c291d1b9911c0aeb87df510a6a19495021a73ac3fb9c5ca17dc795a6d6f1889ed0bb8cc150bd3668156c9bb39285b840302047c435bb5006730650231009737e3a9732ab1c960ed73c69946cd25e35b01a4b5ce0058bc986fa4c98930971a8fdead06d066d51b0def197777501d0230575eaed8259369f7bff99d25523f88ad7c9ab5aa4a84a6f7e436cffb004fc760c362b88152c14f3ebafce6a522dca0eb0302047c435bb500663064023038b12ce3c5b72f86a049b38ce0570337110e923bd535044d680c65baa330e2e95489944667c67d4fb00c8e0b2bbc706c023025e358aa9cdfc04f0a4eda5f0a89c6918d8f04c42a4196b2bdb36def8d004fd4cf86b48e9ec6f1f3a7515fc1029329150302047c435bb500673065023013f121d367cb22894bc9c589d9b55dcd1349ebeb6ae4718c5d586b5ed42479e5ceb42c11770f66f6704261856ebf61e5023100b4c5b2f30d29efbe145b618ad73dc0aea18322ce12fc8c06733538b805f8cba95a30758080595925219d44c8a859af220302047c435bb500683066023100cfe29d2fd7902639d83e2d4d6d663c7fb7f6ac7908a5bb6bf97d8bcf792a52cc80ade73fad4ca0ce03ee91488e794f37023100be676a489f896f754dfa21f2a4b64966f88a3e7dc578c8a71bc3526bd3c027c1481eb1097dfd71a3efb2a07a76d822870302047c435bb5006630640230102b42a0c4cc1d231db2f1f9f255f4077988942128d264d5ffc6a621f693b4aeb001315fea2fe01965e00b4cbb5a3c86023031c4a40b6f3121f6d02f3bf675ea15035fa5d43cede0029cb18dc5b2e03a39f2bf27eeda2b2e742820ea181965ed66c10302047c435bb50067306502300ef61cf94cc5b1700ac6165f9b3931c3c1fa130a8a004d51657c3c0ce15900601439b6a3237c8e04cb814f26079bb2fc023100fba6377b5f2228eaf972744dcf3a2b44b42629a3f5578f829f1a99352a96d8be9148d72fc5929cc224228a0fc2ee79200302047c435bb50068306602310098d8e5983cb2f9cffcb1550646429a9b785b2f513d451153c5239eec43bf861f86bc08d96beb43620763b2720b217db7023100f6eeda267fd8cbf72d2e0b3a117736b74d5e1e4bf0ac6d55d60666678800f072eaf54330b8ad19a3e1a1128f3fa2d4240302047c435bb500673065023100ba14f6be4a5cdc432f992fede6fae98867ba6cfd0e6dab6498ee939c625fb7985fdcf71f184aac3d195f8370a50b9fc602302d1cec3a4b0b93737dfdcc87d322e4b40467905bae09af7582a1e2e0806cc043d948c83b2f0d7199c6d09524f3982cd20302047c435bb5006630640230210b96cc4b18851b346413a657cda3b09be6ca7a29df4de59f778265f3870e57a01795202ea844cbf8055369c65fa4f502302540fb32525c07c7a6ab1710d9a21885dc3c5ec37a0a385e66a724978317cf67745afc7efa74bda32a8f9e261a743eca0302047c435bb500683066023100aa1e302d8cdbe4bc53b6a9613d28a98ac47b668ac2d4b4510ed2448afdf7753cba3188e8080bdfa37797bf14be1dc45f0231009618574dd3965a276fd443ef89c30daef4b16dc0f2b0232b880219921d6afde6e08f20cd07c47b2afd92abce11d573110302047c435bb500673065023073da98c58e48b1ff82b7cfa4e6ac73e15413e3a8ee447a9e43bcddb2b7b7c4c667c4ffd3a1c650b744e572d3d29f6f77023100af68b79965acf1a40ce612a20633c8fe5cdc18202356e676a7ab81e1f760a61bfaaa1a7fdd5325de0eb1267dd240d24d0302047c435bb5006730650230687f3fa39bcf817949d730c9becb544d1dcfdd8992757978f194a658759c69621fd8527b829fdcd9f56c742c590113ac023100dbb1e254a817bb0d21d260b73160057737aa90b2393a8dcf10a3fa7c7fe144f95f717dcb04f7379c946e93d44adf89100302047c435bb500673065023100ad516bbb0541ba9e829b415859b1a5fbc56bf3a5c738d3dd40eebad7430a76231ff8b8d293404c56d9aafa32dd4ae64e02304b54b7fba3a3127045580700ecdaaa32b605859abb4e7bc6af038ef6d81e41c52225cae8cf1f29355e36caaa7c81b7260302047c435bb50067306502310090d09d5ba59b28e1d8f0035b83473b7f2df6bb21ad9c5f8574c7edfb97922900bdca6b1769e3e2d787dd0323030fcd78023072c03419bc0eb21c483b23222ed1a0527fcec595a1e8496952956464ccfdde3958755755bd4225304fde32ea11e496a20302047c435bb5006730650231009b27f1f6c0bb7b50113ee7a1c6fc0715ffeac5695a947dbe7b5659b81b9e333cbe78ed2ead980d61fd5f5d5d7f77487102300b0118da9fa4c15bc42df8271cc2a855f225489d8be2e5a5b43970ad14e3347749d85b4c96f54fb5e73f8e4255f550500302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230291939b6313c9a962da2a715284bda659affa8e7a332a9266472c1dfd970b1e8a6926a37eddabb6b90980b89b764b6d7023100ef4a2a9fdcdfc592cc124d04335100ac15f3c44d1fc7b446b7b95d3c08b0cd69d15491be21c20f3a169202d1c45432630302047c435bb500673065023100ae24e80e0c11f3a0d038cd07bb98af5f5d14c69301d55fdb2631a303f94890d15ba0eb3e9ca5a71288d6c270fd48447f02304be97ff3f845cf6d1d0ca0ceccaf7bed171eb10a5f30a0001eab0adaf58bbbf7f4c73a12b9c8a1b9ae22ee3697176a1c0302047c435bb50067306502307feee7eea8d2e9bd9d222278d2a311852d1618c7cf580cb1f46ab33e8761f876eed6d543da3e4f8c6974d24ad2439628023100976a5e4ac2bbab369f9c975ae19fdb9b9b917738f21c3b3b1ba1af02b7b62a4eeecbbc5342c53faaf2332af5309bc10c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a252605e610595e765bb5b6693fc5d7360d4f56c4a0eb2ae411ae879e2122bec16df1b4cf29176139c279507960958602304997fe0d664d666af8b85bf366eb2200f695e622bfe2b53a895aa0bbe631e59a07697c3d8dfc7daed5b5877c18ef9e8f0302047c435bb500683066023100cb0d8d05e706e9fef146c748a6a87ce876a0e5d2e7b7b5a61481721f86cd34df3afa856f0604e1c3db22e4dc4c23bf2b02310096b9c0ae0c8c180a3f4af4227448b9be731eee0e24ad77c52bf3a772eaf5978dc4efba0787bb61f5b05d15223bb3f6170302047c435bb500683066023100f421959a4171398b755437e21dc29f654fee1d8df828cec1ea7d5933bc759fb13482e6813f65b8a41127b80a2d2ae81a023100d2649e6e04ae14aa11b9c6b50a1bd7e963896b222d6c81896ed5505db5a0d3d430f1d511ca737869d4e92e72bece56500302047c435bb500673065023042c7eb965314fb25264fadbf3bfbdbe0468e3f2229ad5bc8cbdf40acd07880941ae91711854c72935af4537a6bf62269023100e9521397dc4158726e64a7202c2de64f9b8c0e1c8c041dcb95dbb2f10be1536cb65536934f6c2934b5be41e409bbd3c70302047c435bb50066306402301b0668dfe71c2ecc05e3cfb4b69a7def03f950c23d3bb8585ff1c4b75d6560f4b1a1d7f871a0ee99eab363fb6fa188cf0230461f93fd2cf9fa0945ee240f88c1c1cbcf54babfe1d212d569f00781185dbfc8e51e1274b00e600e9f9819b93be500a90302047c435bb50067306502310088bfc390535140ba9e9575fc8c7b0ed8ab121e855e56f46cd2229a70a02f28fa265fef47247cb90a9b1874bdd85432a0023038b85950489dada0b0a9ee03b6cc99158345b22cf86cab1ce4d60570b38ab24428881474da3fe2f9ecfc57437780341a0302047c435bb50066306402302122b5eefcb253981d7e30a3bde7aa40bb11282960b9f5749b48d6603609f34419f8f01248b4d68af27b726926bad16a02303b67f8255493cb71d76f82a2e4e577cd4f808edf8fc0dfcae78a68b23dcb399d0a57c847d0e1e776ea521d2be08c10550302047c435bb50067306502307fe8603774f57741c26883b0c8394420cb515ccf0af14737defdd16659d864c3ccc8db980922f2e6a1bdee4aeab9c7b4023100a154aa63913c7ccd3c9abc047d31ac1c03c91477e366d9e4173dae152222d33bf26b6206ddf79107004b08c0307111ce0302047c435bb500673065023071ea225874dfa59b630b4e392ff62a70dd8b5dbce9df6ce5e5db3b8486e04760c9d517da42a226792c1bb215cacc6aa7023100e82ababa5c8b3180d5c481a6e95dd5c10e2fd01bc637983db02243e05fa7b6fb56ffb08fe22d577d0d45afc6608ccf2b0302047c435bb500673065023045991203b11f8cb5ad70dbd6cfa2c1fdaa88954ada05389731061c32097e1208588a2e82eb90845e3bd60cc107a41e6b0231008d0cd8e87d7f781951a0ad89cd061ef355fe23cb00e4b8b9d96eef8bbc0f75b0453f038687ad35705bab06ad74f715720302047c435bb500673065023100fa74e6f2ba9e6094e45967c59f60811a10e7fd074fd0d9aa2a4d9f536287cd697f77c8c9b161d461017b7b32439b8f1202302144eed5482f5da9c510d7d4c1460cded942da91bb12f8dd19665f6e7c65f0d2f07235afb029ffb050a9713a80a7c5de0302047c435bb5006730650230141caa8d01ff4fc53900dc85cde6aceeccab1a7cb2f0d454f3c482db3294be68cba462453dd5f8e02d18faa01e3b9883023100cc31ad8441e2c862397e9d60e3be75915461ada64f6ce5c5a7b5fbf643786b62cc44310bea3e2e76ebd62ceed476ff400302047c435bb5006730650230026b5739d1532618d37b2f47508b8ed5cf9e780289cdda0b9126407e77125b64d436a54bc3938501ecc0e99483210692023100afdcc3a51ef47f65e71f7274d7cb7132124e4c8a0667510bd4e194afc7857f18ab31cb8442159f40cec508a55c701dbf0302047c435bb500673065023100c1f05bc71c501dccc3a983c5513c59a70af8bddb430144ce9a92d1cf80ccf3d354fe86b646022a5ad4a507089d4ba12502304d683c41768d76aaef2d09406b9b3cee5ebe1a8e30e5f266b5032497beaef6e0f7431a435fd34dd3c5042eaf0bfa4eff0302047c435bb50066306402303d688e826a334d9aff2753a04e1213e6d99a161c3c9f874498c9eea531ad8fa4394cfdd6d2d9c9e7eeacc7b8696a6a1b023064d97a69b0680d044466e055f0c5664cc0b6f9215857aa0382d0dbd7f21844f345d1a491c64cc729c562c476256636040302047c435bb500663064023037e0138811a710d71d05ecef9711bafa37cddc27f83eb9f12df5312f1bd4d09d6c68f9de6900bacea97e385fd48b6d7d02301bdb7d20fa54b82b48f618dbc4fdef3fb0bb415aa55cf53ea739d311ab9910af94565ec4fa0d7aedce4000e39c253d6e0302047c435bb50067306502307b44f5a627ff2ebe181daf0ccba2dd5ada42fc21a8326469fefca4b7294d74e7e9126d2db0a02945590d59fc9e8f780c023100bb002bdea48e380372bc5c5fc842931245e2ab80d208da6e570bc419422f9ddf3b064f167b944df3390670c1cb7d64090302047c435bb500683066023100c67288fd27e5c8efda9db0c50ce071bed219e0b62e1732314b88078031091bf7d5f29065270cc6ea92b611c004762f5a0231009ba04038b44be0c2c4dab75e2ca5da476172a270bd692dcb75da08e55f6e5843e4e572a627023c3c8c24d22c25384f770302047c435bb500683066023100b291a3af218dfe99dec90073ebcf166805ae715631a2f69c8e9533dcc94d7d334f3c2f5bc36eb7156c925b4543f68155023100d8801768a026c39dd895cb5423b3def805a7b36de7396bfcd70dc822bb870c040d5dcfd359cf2129bd1c7c0e2cb78a1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe64b4840d2a7eee7c5d9172f78646294dc6dfc35ad832cd7b1a50330025c8c8adf0c357733deed01ed5ee0fb7101cf0023059a310056de724eadacda2ade6eb6fc7a737abd4e827b5e7f2b6be5003be3443fcb2c16e63fa84ffe07427c94fcc4fad0302047c435bb500683066023100b7e9a1b178c5a3310ff37e64f1a5412e8248161e640b7b37d7ef7293245446dea8a3ae6d38f5a3ab852d681ecbf53bf5023100ed920897b90577d5df682f7bc2fcb5770ac41f8ca382ae3dd199f46139f40583e93c43881faec0238bda1eee0b2ea1270302047c435bb500673065023100bc29a145f17a9405b4af4b2c525dd234dbd0f8b5a0cec28102a41a888052a4971540268b512db825bcffe503785bc17a02307caf2940c9856ce2981d9854e4175e9e9a88ead89a68dca096e65ea8ea89bc9861ad3743d5c1b31bbd86363312e84a4e0302047c435bb50067306502307a41cdac7535c76a92ea578f3eda34e2fe115ddb101f928ff88ee6fda10fb41319e9381e9d9c4d10181b24163af3d54e023100bcc493c9a4e97d186dcefc4d5cd95126d325ee272753b1a30739f17115166e250b6e6b405a83de97869ee5b896abe6410302047c435bb500663064023071ecb80845dddb8ac452adef7fbdbc72c63edced2b997f67c82b9cc3d5471f0d608119d9dcb0d3e74246e87fe3c32ed90230103f8b4d808052ae73e0ff7210b2cd61776a1c2b78154317c6bb1385cc2d42400ba696b7b02eb6644e724d43eac330c30302047c435bb500683066023100b62cdbe604350efc761f40dd6f2946af19ded44c2538f24730a6fadd8f459e971d3f27ad514cf824fafddd207955f565023100d3f754db522ce30cb769377de314610bac289722d7dcf63ae484beeb2eae30d6e0f3593e28a2c39b5d916f5ca0aa13190302047c435bb5006730650230640de4bbcf71b2490b12855c939ddcb884ca34111a274c6f31fad5c0d8ef5ee62d4e4c644be97694e28272816882fa9b023100d4af5b9d7c62567a66c9922c43564cae56e2cd9866602da52235968b107a797b136820edc3d0ffa4d5d5697e167cfcfc0302047c435bb500683066023100855b107d28bf8e045d00dc9713590da86a42df100743b86ead815bedfe8c8c135bf029fb0c19eae97418c056157259b3023100b9d24a9b29b2829b2d2d610d01fcd20b92f55e89415e97eb4ea804e2ac75c27b27e4facbea3a6bf7e5b754f65c3318d20302047c435bb500673065023100ea2ceb8d17864dc6b25eb5d3847867313ca49b4975808ca3fb290b3e1e256085c561642e2da8a9aabe166b12d907943902301814463dd41d937a144acdcdbeff606d44cd288684befc4d754bcf2e3d50eb802e6ce2d06bc67d4979049740d54b5dfc0302047c435bb500683066023100a38c75f8dc4bdcae663e0bf714b4565a510d7e2259ffff8ed1555391a1748ea481ca517ae60c628d7d5ee7144aff1f4b02310096c77a5a92a117120f4e97ad152b0e002371678c0cadd1cbc5abd9b51d46a5224d49bf13175c3fe9db06edeae9c65f600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4c5405718ee3123ff1bfcf968634a88c5f588261449f27c896e3c92a2430cc876a6522a31432f91ecef480e4cbb043b023100890a2418d1d9c53b4acafd352f20cdee26f60438712e276a5c98ba5506fe1385d496c6992fffd500b7ab21a593917fed0302047c435bb50067306502304c3705c072da76bce8d09313f3269dff47515bb97e5de612592188ca51f63ebe595d8b171ca8187af9f8b1b4b80c4d7202310092482c2c2586ceb009519cc1052e12dcd84242698a91568f2d6450def4aadf8d36c1056da7f6817959565bf86eedb8490302047c435bb500663064023003db567172a4c2fbfe0a0bd37d21ab627fc3f493349fd636225ba203c8e3754eed316ab1c367f42fd318bd39807ecdbc02302d15eea0373305f08af0040e523b5a0fd63ee8cbd983bedd068ec65551b6a8eaa88cc11ae5a64a995ac47acaa7e2e3900302047c435bb500683066023100c029713a35b1a269fd39b2def6b0d6d2b5f6c9c7e1c03ac4d3f1adc785f540aee69fd8f7f098da1de02a54d15fdae6eb023100e535a5f037d6837a4dd08f86e8bfaa3280909f1887753da03c28b93f0b76d3ddfa337d2f1f0721f38bfb50ffbd7804f90302047c435bb50066306402306580c3c458988487285c27dac7c241440abef3f922e5cabc20286857723269de3efe5505e766f83cf8f9f547825100e8023033bd7bfbe47ef5dee6640385263f5375421d04937d3f6a1c017309f58dc666a19ac91c6a73856d15b1e5f36863a9f6400302047c435bb5006630640230517c1a0b9a3af50438589e3953e6e248a55db8a1d814b2a96e2e23081598b4494d92fa78c86a872803090231565c441702304eb3eb45c1c97cdff770c53ad89ac4667b217dccda7031ee1b36ac363739c9c5b5ffd0e179017f7fc51426c92f87bd9d0302047c435bb50067306502301c6ed16fec60d60a2186f91d80f43cbdd020b86aaa0e64c481b42338cb573a39319d8385b708736b0a98fb0ae9100e2502310081ceef14ba8a7f0941769bf29177b8d4a56678241394703982d81d47c5bbc9a377887994fa05de2305016fb703b80e630302047c435bb500663064023075cbbc06937c3a0d1984dee912d73066c41c2ae7a09139cb594373af002ab2f3410249e55d4849d33c9847050dfd532902304e72bae7aa3c786894e330f1f90351dc19d17c36bcdee7749817131cba7c8a4053c496891431b05ff45e280bfbeaf2990302047c435bb500673065023100d846bdadc5d5bce5d81037b97a76f72df7b6116566fcd39084895101d84b2de6243b5e00cd97f132e704b3a3904d2876023010d284c1c6ebedaa0b9e1c4115b9bb3a03f3d4872e7932ac6eb0f8a0acee829f4f08720d24937e5e0c1c0308a66469b40302047c435bb500673065023100a43f6e1118b5cf93928d0fbb1eb29fa0d2eaa58891feda08c80c97e14fbb9cd1bb9782aa9e211724b75e4ea0e273742b02300893ac67c9e5f3944dad39fd406cd8f7d1d84312a12f078bc1d168685f0efd3e1195d9493cbfbe27dc8093c82762c6ab0302047c435bb500673065023100bb3555b01b2e1ca81a823fbea871dd695d686ff0451bff5be8cce89a5a9ba62f1c9f6cd0a2bb9df1a5ccb841b5347a0b02305796b94a707b0314130ebcf914fc1f2860a0c47145999d13096d1db2052155f9aa06a558a52ed425a065f5119b53b07b0302047c435bb50066306402301a931f0069ab249c722748b6dbc33dd0fd92fab2f641984f4b36a6636cab91119c9d38362a919bd9b91f5e13ba87abf502300779ff61bd7e384b3e6f38951cd867d35a028e32f771927e1af3d02d30d77875c1a8c2673dfe699b968926d79c98a7d00302047c435bb50066306402303c0b672ec41d1dd69d2957c5e020c2ec26ea2cbdb4e29bb7c248a4d29e948d04c46908f4615d7b3c2eb959dd2c44f7f702307b5f499b1525bf30c7a24b90f11176a687b189126924ac3f9415c920e3874148cdb9621f20aaeacd3c8ae28b91b6c48b0302047c435bb50066306402301d27772878c5efd8eb4de848ba48892c6de342b445b61e9174ad110a9cf1ada97f1487fad6422336d959750f1caafed802305e3853a1c4b68f1d85275edd58fae04538876f0b0326d1938dc8c597e8b15e109e6437e0811ce70baecc60327c74f3180302047c435bb500673065023100b3a5428a5199fad823d80b6e7cd18edb8d372143b6b2eff5276e366474c6213f25878c4751948aebc352e93d9b59e90902305bb530e1d92ce156ffc07f558b6438d654cb3a96c6fc958b2793922a1c8bbb4cdc60fd6160ea55c61e5892f0c693a03c0302047c435bb500673065023100a876cd3e220b4b6982f60c0b08bc493992bd0652a7b1cc43043103286d90bee3369b19e100a2e9bd585d42216925036702302089952d0c313a761026f634e5bb4bdcdfce9052338d1aa2d7fe648db8f4cce6f41882aec135fb9a70522736572891930302047c435bb5006730650230115c86d0238ccf7665a085aa7e36dbc81461a6f1967439a82f5400c79696d0973e1a6bd20399f80c91e87415b0e79d57023100fe77d8ecc796e700013925f55b91f74aa27ff9965de40f0bf5fd5ce302b59429a6b702a9a2bb3f7954f5d870768461240302047c435bb50067306502303ce3c19692f3e903cc6e110a41b5c6859d21ca18c55c4d8d44a7e601f82e54777d811fe2ddab2010cb8e4e508a0ac9f2023100ce1f6bc6f6170d0701dd6e0ff5567cb1f4e8307438244dc7afbec3047810b4e6d7bbb278a1cd6cd50efefc1094d35dc40302047c435bb5006830660231008da1d823eb6b6f394b739f04c45ac8ebbcd225ff447f93bb22eb72a190946c96a2578ca2c3670b572effe1092afbaf9a023100e283a2ecba264d5281f717733aca3297dc97807270787f9dde7a1caf2f5840a23e4275443c09f154852945b03a426a5c0302047c435bb50066306402301707bb0f1790d59c7e3d78982c967d1ed8c0fd16bfe33e95f4726fd4077568dc3265acc6117e985b4d884241e9e07f8902303cc6f7210f48ffdf80c6ce2096ecbc1bbb8637e85258716f712c306bc60252e4422250aa707b6b7ded88b5a30ba317300302047c435bb5006730650231008141af0295f86c6d384c36ce8b9544fdb7fa2100205b8425f065477bf88388248836e7afc92d18ba3a44fa153edf4352023074a572d526c7e9bad80eef76fbe5ad51945b2138d9edbbb09bc049db9c1c2a3fcc24adbdefe82acb3a753d2cb9cdf6d20302047c435bb500673065023100df31afa6ea8041976089efa7722a0aa9efbcec6e30332465d8a1646be5ea328d78ff7eeb759f019ffa251210c24ede4a02302f0b30bd19d64b669406794f41416c864951e6fce4b82242263ef7d20c929539efaf4cebe6ad301d0dd6dc2e22071be00302047c435bb5006730650230541171b13d7203837d3d0505e47be1fc7069a14a1290c1c0f2d2d1438fdbd069dfc83f5c6a66df424a2ec50264edc920023100e9ef3ca9c0d59e05941cd00c42e8ea4f45b0bae68362112c8d9a4f283dee1217caa99eecd6b1d588265d964ec2688c6c0302047c435bb500673065023072df64e2d7e3626433bf1839f6213554e40f539bd7acd4333e14a667af136d44e3e314df811439da1785367c85e3aadc023100d34e48f068a197960f94ff6d408a1f3987d12c7731610f8cc06afccc8603e044074df71c0d0e99013ff1986c150d0d350302047c435bb500673065023058056f292a9deac6f8f1bcb22ea200214cd3e8867be2acfcb11a5d1c70e4584b2536cd9e3611c815545ef595c8889c6a023100fe9c232ee545a89ae52486589acadfa7d057a9c4d02b36dbf37921732074a2603a7fdcba6f7a1b1df9ef32e514519a570302047c435bb500663064023008d662bbbead1194600065d1f4c12786f69885a3f5ef9676d752b09d0634e6d6cf8a1b01bc5e0f920ac0083d0bf7576202302b18a9b4048ef82d29e24b398a6f15416a1af3e009a72e7aa9d318056e8774f0409b6147f9a6dbfadfb2683e07253a860302047c435bb500683066023100f2deb98b66e6b3f2f5ab74c1a2c19cf28d3be1efdbd327e0b00ce3d3cef1f6766ffaa4cfcbf58d835834119c7fa117af023100fcc12c9fee5d4a9cdfba8ed84128e59838281ce8db1d18c2683335c1755bfec81463d3221aec5b4f18067d5fec9623060302047c435bb50067306502303eed11b3991fbba8c84d603497917db6ddfba4ff1736d69f2ef25c69935ca69bcca9f12f3f1e3ecb1e62ed16fb9a96bd023100e552ab1c3507f8c535742e8d9bdc3573d9e1c51dbff0885b2100d1a11b024399caa3b533ec6bc54302d0558ad88513f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f0e37b023dce8ddc1ebcc7e0c48948f2d1023c5cac82538cbcb2cd1538858e24494a32a445c3b9d3edcba1be28367900023100e24c4cef3c5dcd7612b977c680127a83644cf9ca7bcc8182d6cf473f562f5566e048201844ef0bece6b591f2b24f58d50302047c435bb500673065023100c835860bc030cb64e6c2fb4b6411f026b041e97d6f450b138f8aab54240d0c86bf9ded8b7e2c11d4a63a13234ccc393802304bfcd21f889e06a787b87edefa544ac58170cd1f3d8011dd451204730b7cd29cae77af0e41a1a5657bcffb5f7d4150ca0302047c435bb50066306402305f9028b5c4d4ac40da795b8a3dac8479b3db51f328dc5d1eb9f8642f163a040a2203bc9d9a6c93037ccb63c88cc525160230590f63f478e35f2f0769dc6ef13384af3eb05c94edd02bb94c4e18d4ef913e257b5a4a8f87d705da2d21497edbf01c210302047c435bb500663064023028663eae4719468be0c6c1f3b0f7e532f5aad64eb1c8b4fa1c6eddd53d2ce902dca32483b8ea7e852adfb34c615eb0da02302768bca2c6dce288d70d6d501dfa7ae66cf40b17b2f1f253c3a953407c8669de11ef6eba9a7ad25e0b992d7df03139710302047c435bb50067306502304d31c399ebae748cf3a8c50a21a8e2b8b5d747bef0a80f5303be870ee5fdfb92677622e1f90634d9492645b0a9852b31023100d55d795f4bd16966a0efd1034e52a4d14bbd92250348c03b7022960312e5ea05094615ff9edb6f66bb9128b63c5111850302047c435bb500683066023100af7a25adb8fc905b3a7830b18955f560235c63789d6f617ed15c6eaeedcb7baac51c58c7dc5a846cb20c097b103d8953023100ade55bc64fb767de9f8aef651cf52f4186d55fbf2c5a435b095470c7d0db9008795459fdaa73b087923596793ec6a5420302047c435bb500663064023038170f643fcfef6472983aa5a35a034ccceee005f3b9e7774607352af3dff01aac69b498391564d8825536c78c401d4e023024fce389b51c33ac90be6d1944de5c6867d38d9f5f8cf4316eefdc88e31d1d21792b2fa92170a630ab7127307dc537050302047c435bb500683066023100c2f38fb77ecd89aad73f88db0d21bc5b2f7654f8017312338372a27f8d5e85cd01733dba9545c882d6947c88999e5c1a023100e25cf3c8e93c442c6eb92b77cc1b06a66b2b612b883e1a8f2dfcc88093bb842c711aa8ca03b5a065d2f9da9a2fecf5c70302047c435bb500673065023100dd5d5a2d7f289d4e58934ba76c2555c78e3138c3fc8d346c67d9ac2e38ae89375e0425f7272569b961029c2a0c3d52b3023028a654ed57ba2dc4ab9715c33d5b702e394a3b0fbe91eeb6327a2620f3b49b8b61c0d9f7a568b72f2ddb4b120543b8a40302047c435bb500673065023044d2d5704aed6c7dbfc5249700883865909779395135e45b42f059e80e5041d73f726ab893a0664685b31b2af25550b20231009416b73a79b5d17b764683b0975de30aa63a4ef6c0aa881752fec52a99613fed0356cd6a9149e2e81e9c5af37bb09f420302047c435bb50066306402304a1e7789f59f87f73ce59cb15a6d06c552de33c044694ce2d4db9a03aea875e6f89320fbfa2a9022275be1fbee21629c02300dc5c38683146cacfe7eaf4c14c5078a277bac825480430ca7e2d2b9fab7159425ffcf41d848611da54dc9ea46dfbecb0302047c435bb500673065023100a1df6390b46f176e822db2ea3e65bfc834e3302c4add61aaf0c384ce1244fd2d6936d15c71f8bfc119a1a164d067567e0230370b719f2e9f64cbedc39866f25e80d860fad8c935074107c9d5efbbde9ea339ffd60f42ec57ff07eae560c767a730530302047c435bb5006730650230561018a0ced9f4877e996a1c73e638f47d9f7cf77302cad4c8406dfe10d213aa3fe1d15b715e6d5ff31720441f4bc20902310091c4c2dc32d34d5e151d8c1d7ffc0c5eada0d1056bd610db07a6a008c81dde61da7b038ac68c25a592e0d1812bf1d3a10302047c435bb500673065023100903cdef766802fb8d8c69c21474e76dc5560880a57ef2021ca15854f5e9ba0f8802faff98ec9b8f4c14f7055f6a918ec023034d4f213e5612c93b33bf4fefc28fa1a9765f90441e9a63eae9f7cd41e574af1fa0bba530d827c032b26dd5710e0b0c00302047c435bb500673065023069eb1c9f5da0cdb14f510977282a0ee96495ec479e9de36f3852d2dd799678383c3831937f56bfecbe42ee045ab148e4023100bd10a46dd278e8866b1bf2e87b2d5e1313c1debdfa344bc197270612b296e20ce0fa292a5250be727e1134ea509bf5710302047c435bb50066306402302f8ed5fd61cabd0a03ac91bd713ec81c5fa550d1be997ecc414ec33a05584290f842ffdba32b30f6c9c5c7d19ee8622d023051ae205a13dfbfd54b1bdb210baf589fa9e8f1b4f383fa7420a7f1fd4782eedb2999001480ff7ef9e1b7225618072ece0302047c435bb500673065023100ad4a7fd3a79cf0a8a5c6101d40233b5be59952d83cd75237f1b7d11faee99fb5c55fbc5cae801919096dee717059d4e9023031a2f852dee84016338fa237de3020d33991ca3c34253d470dedc0a594bb581c24f9606588a8632b5e075a53e0e1c3e00302047c435bb500683066023100d4ddfc86a805d11478c3bb5d15a2f4cba0bec71217e51e9a529d454a5866f865ec0ee07f3397b3fb79825366bfa1acb8023100dc9bc5c8fb26ff9369215c9cf10631722b5d93c750b301683a9b87622553a545b823a79401b3e1bafc1df1d2f84d1e3d0302047c435bb500673065023100cf7f48a2736e24ea5c519cb168ddabd243818ab7e01ba556d1e8cae587dfc3538a7fd9e3d98736e7b5cd57a8d3a55e4302301b6b32d34f4bdac036fee306b5efeea598fbe31a3c95ab418e56fe56a145e7d7b4ea92c8cb30f8bba49a5ec5632d52590302047c435bb500673065023100a63e24fbe9341069c576c11fa213bafd041e473d9d9619f17c23abe16de7992e948be9c47b60238582bd5653adc2e90502304570a33cfc324af010402531ea57830352442455719d2738961d67cfc8ca52f5dc371aa40dbce97dd12a01912396262d0302047c435bb500683066023100f9392bb91ef13852f505ab54f36b67c6735b1abec54ddf195cc84e48f9f7dc26b80aa75cfc82cdd0beec1dc70f17ded1023100d61a2d2a36852b66e454065d6ae2c9c50ae73ed6d86bae95d04a7f617ab54b61f3149b1309a10df04dd90df92e7073380302047c435bb5006730650231009f756f6c2d7b63726c6f0151b64bac462d1c7d6adccfb80aa44c5e04e4612a25ca992653a98414d42518a9afea2db8d6023039882eb50a8420b4ee2f982d6f648faeeef8e7654895200177f77e1c6a9645e38b8edcad4b7a47f7383ce0b5459bfacb0302047c435bb500663064023061649698d4209b767c018f795bad03a6525ff93f53efbc7a3985fc42a00d3b2530bfdf3328e4b537b4fb7b410e2e3900023037aedfcb0fe6649860ffaf1b63bf2ee047837b5e030a8093896c2dd0aeda1ee32664f4ee05e2c1ee655b9a7afc66aa4b0302047c435bb50067306502303149ef3378f99dfa1e02272bef1fe01d1fcb58839ac4f06af8acd91e5ad0d2c1bf14fb1abad677ad9d4bdc37e7d22205023100f7cc7b189da1ce558d48f5e731489066c2afe6ae886c63f6362bdf916b07d6d499e360aa9cb3cc9444a39faab2b603b80302047c435bb50068306602310086e34d210d7d9e3c01710760346242007b508cc83059f285292376b48cdbd541ce4415ef79d2484328cbf30b64f6a9f40231008c5c47860b54c064686ee0de3331c005c76e58ce38ef5f787ac00dc60429989e9a47af1c931cf21917722ea4411ef7900302047c435bb5006730650230204a30942ea8f609d1a2e695d7b0e5741d9feb207629d0cc2c41776df148350ebe3f09dc8020c6159b77132150fdd2d202310089252083a67833327cfb0a7960ce94ec550d9b51402f6f2ee9971a3a2f1a50808ce4f445ae5b925c959a8e51b089bdb60302047c435bb500673065023065f31802141b3e6be73918e431268b0d0bcc1798c21bfd5f7754f68f7b2df8cd53ed1210afa66925abf6708037da7650023100c06dac36258c7464c221847ada74ac812087c5c40c49ad1a461293e03764339cb675e12daf21752ff33ca8335012c9bf0302047c435bb500673065023100ff1f529a53d333eadc3d389b6d37012e4a0ba582cd651adda906b8af4eb6cc8b3294cc5b2e786a26400b110c30b845bb02304a67c5106d3cfb089afbd887a29232ac8ce08b7d508b4d254b82f719b7df4bbb99af43a22532c0c17cbf1806561ecdb80302047c435bb50067306502303d9367d7ddcc471c078c08657570e5e29847a18d65660b574770fffe3baab40d7dee427706e7e245f1146038e9309ea0023100fede9c91b306a8b12c8eef9f41c4ce15905072a8ce7760e67c261e8bc632ec940b36bf644e334c97404ba5fc78de393b0302047c435bb500673065023040b7dcb73d391cf175f689210c58aae521a47dbc86518228a86a3caaffa39035a312a1dd2782400d8a2ea2ac68cc8d7f02310081006a46f69f4814bfc8dd85e862fdb4eb0a9139095cce37f01c9f1190802743ae715c2f044a6a9bbfd16c1d8cb98c3d0302047c435bb500673065023052d323ff3a4827242a7f3061c64ddd84821bdfa5822cd2499caf640b715011d9713c2706ab562dabe3babd80a11d8b4d023100e2dc26170183fb9136318588e9a4bea7a368cdcf417eda95c5be1654d75d1839051f27a85c1e0c567c558254a83ad6a60302047c435bb500683066023100c0485d48aae5a5882479456704c990ed373ee59aaa0f3bedfab40379438ab1eb3a186a89b54559257047badaaeb8ddb60231008c0af13932d5d2c5b21c727079313010f02ff85d4857f40d970854d66199c04e01f20cee261f166c99962de4c74d36ff0302047c435bb50066306402301c30e358ed2e04229ea7ad5de20655b06c5c5eafc8532c4b98e0417a419fb8705701ff072a5d143b1ab055540feaf31b023026c3d34affc61513925db42e8b4d548e5c4b003765c9894c1dd46dc355cc01a03c4e8bb5ad6762b8d668cabc74ec0bce0302047c435bb50067306502303629e117f467e89ca962ce09faf2ea61a75ea21175b6f026353fa9bc29afb135aa58e7c15c20f9ebdd729db66a39108702310096888ef30f3521cd60faec1c7df5262679586c37e0474c13025d28a01e50aaf3e5a17d20c957eb7101e1fefc0f5a4ce80302047c435bb5006730650230504f686a7018e071b2edaf92dbbfe5a008c795c6498e86ca52b765ac5111c728aed733fb81105af8364dae5a56a10297023100aaef32ef0a82b88298238c1a6d2268166f35c52419bda28127c7c7e06f078141baaa28b028fbc57d8088a2bafa0f8a820302047c435bb500673065023100f872b8226b9a660ad7fec64fee48d95734f8283e99f27155a273758065212baa2eabc447988c1a43b08fa2cf7edf45b402304d8539e6fa46c519aaac43465d00a364c597694eb8df4c6e9ed0369d4d5013853d2a452af0c11e7e9d4e7f25fa6ed59a0302047c435bb50067306502300a78028b07731e7bce127a107817f2a4b93bc2c707ed18b20c45071fd6a1e7fbbba4adcb451f2918603412cf175eeb4a0231008b15be80af73c150e1ecb4fb607ef16fce1bec3907e4fbfd66f38f108ce21f2c9f48ec797809db7d4f2cf15e0e6b9b2d0302047c435bb500673065023100eee88e8fd367945445f8aaffb832fa65283415369f6c3f93591498bbce865584c380a43b73a982f93dbaaa4af85e3c5d023043566c98aa4a921e96614c1c807753f3290e8e8f184d933d9e4c8597c5458512226ae756b4a28a0ea295b961462186910302047c435bb500683066023100c3af09f670cb4ac9261f8c6ed5e03ee50572020d2ccd50cd1cfc68d9990c999ca7ba26ed7e6a09c6e461ea3cfef43bbe023100f517d7d5265161cf0d80f42dfdb60523d59d3744969c6a6ecb69e3b303bd6672d563b3955fd18e56987253e38792990e0302047c435bb500673065023100f5ffb91fa4ad0f6e7be75e2abe16ad34003a02ba5f910827e577c86a6d27752125a400177e0ce55b3c85e2e023142cfe023078488a2c77e73a3eda9fd52c2415563791fcef4b5302b8a8eaad9e4a0bc5e25a8542ea94d5e5822109348809cf44bd9e0302047c435bb5006630640230176b396bfab09189cb87e6e03b06bf08e00edfcc0358042f4eb11255a42dd2c2e5e90bd0f68c725449645663e28bc5dd023046a8675164cd07d4feb0574535ad82d956e306f10a780dd6ab421e394e0aebd139d59c6903a0e3feb7f52068bc7865090302047c435bb50067306502306d3bd1090843c8688c0b1c0e81c3a17a484d450bb487d0fccf18b890c12fa7ecf9c70874982bd3c121f16565856954b60231009e7a62a97d11f36546c0fa73334f103c2b0afa95615708da245477915287fdfbd54252020fecf599f820816882230bde0302047c435bb500673065023022510c2ba6b2b663d60df9227606e851bf77560cfc0f7533a1136b9262193421aa9197f1ad64c92f3f3e2832db0e2483023100a2ff38b11082b7188b5c1e490e26c2e462681489d337d6336ed38b22b8dd02af80a5231da8f3b9731ce37e3f9dd55c080302047c435bb500673065023100a25de83df7efab46307eb7d422dca2a5d3b167b16def2568ebf624986a31c14e67d327bed285e69cc967f883dfd7686102303b3f5357b3c96e47ce7bd1fe9c4909c177e1d65cfff5a3bc41e408f476cda824f9a4f979a2730a97f408aa380c755a460302047c435bb50067306502304d4968025afbd04d4387091b8c026f3918b2c4309a68038c5a0618fb3b59b2ab07d592a3c1bb02e1ca675b7cba280af9023100e67fdb9ca89b92bad81c71cd1ed2e00d92e23b36c08f7348f4fc75dfab3cd27c84e2394f1fb2685d6eae31ed430111310302047c435bb500673065023073e33b2d76b5ae2cb4611fc431732666fb723666c744f7547248922103b2d3b7f87017f1606fba40ae4ca53393b70cb3023100957a3f547e06bdbcce3d6a25e9ef1e142daf219241f9b98836a8e5babd17e3efd4aec18115abad6f320c8cbfa4af6e110302047c435bb500683066023100e8e829a24ca0e8c96d30841c49d67c152b37760c9a3c17a779fb0837dccf22c047b3db76bc2892ac54335e96ac68e77d023100c405cfb7f9b3e25463985c8ba06969f16406dd78d4fb8ae970eb40be72271c88703bbbac31d1f59cd0c5407f841abe570302047c435bb50067306502305cb4d7caf71c1e6eb533c3f3a97e8cf43997f8379ac575ea08fc42bcfa7e967119dcfac5739adb59e90dc093d3cb1371023100e0cc0a24d54c174214c7361186f065bc4b2f78a3a727e00bfb0071321621004b4c8bd1cc2b0cec43c5c367e2fa69ff3a0302047c435bb50067306502304942cc24d947d76e79c80c88606624d6b0050435a611d8ca2068bdca2323dd886f0ec96ae00cdde62427229964c68b0c023100f11681c2f3dd573b39a05b8f715d1c92041275ad71c5759fcf24483f5ec91baf4a33c1dfc5c293f3ea30f1d16174238c0302047c435bb50067306502310091e46015e0bc8f23238838d2da59e3ffc4374678f0025b7186999ca305ced66dbc7badd6ba17363187cbdaa0bcc2775402302799740577753e32258ac8f21040d872e77f5310df9d34ecc02f0a7da6ae1d09c0cc1a63cf1bb3ed49dcc2d6c10127d40302047c435bb500673065023070c7b58f9370464db2ca19d9a43356986594facbf6d7ebb64629395932210a78d61a29ede53918494b8ca27ed3cc9dab023100d6a5d4c403305d5b422c47072ee125bc073b48a66e37bd9f40c06c196edd109ed331bbd19c630fba2752cb242a39858c0302047c435bb50068306602310085465af6c3df4a5780b9921c817b9188790c2481e2cb293549e62edccfc28e538e0ea0ec9327952c563d7068dd4429f4023100b2f019180653d8f189d08ed3159bd79202860a5cc4faddf68bf8f477083a239366f36739c991ae689a95add40a6125c90302047c435bb500673065023100e2ab313db77d316ee2d9db877bee6337d036e1e08688c03b88f50928420a8996fb2cbb603d7715053330c2e9b7d42f9402305e699c7fd7cddfb2190f8edd37014640c50bed34532daada1be04c45c87938d68eefb8a893b53eae1b728a718dc436c10302047c435bb500663064023034874b5b1f8bd2dfc5ba64924dcd77023c473c3fb4f6514fa529f90a208bc84a7723fb0bd320765a6944f77bf715a95c0230729f535d78d9a2706786d1933f6f48fc24d77b177a22c73b1168352bee60e457db2e0e0974ac9cd7df9f25e8eb7e1c780302047c435bb50067306502307084ae3791258d694d8873f2d41e049490e392629d31f3c02901176410dd547617d70dbe970adb785a26f008673b66b00231009f0840b90289191b48d07ddb1853356502ca75878ea2c8a5593adfebea10390bec6db03a07c81c226d4a5d350247a5e90302047c435bb5006730650231009ef2670416a418106e72d99bce22bf644f292ca420c3b936b0ff415929ff06267cd9e470317b2bae143e013ed01ebef4023058e7ff47698c63a33ab5bcc47dcd0c93e2db8c72033074fd1409833c2488b1a07062951cd6cea273c1928d36b9d3cb510302047c435bb500683066023100f8c1f49baab943ecf24548a1af0c1aa6811a578abcd52cb898429470d9b73733bc000c1952493ed996ebe055e00fd602023100e554da14db73fbd437d7bbae8798c340ed6308b3f65ea9fd9ce56a04db300b53f588560a81f8cdfa4add64e6f163c3900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ae343dcb84613ef3cca46164984644d67d71b216c29a9e533bfb5186676d18ca028058b32b57c55c07240e2e84f95930230751be3f1e7f0cae311eabdacb35c242ccc62b7c342e80ad95b60ca7f762f755ba25de74e9945b69e863779098e3e6b3d0302047c435bb500683066023100f423cdf46016b121b245579819f24186f9ca323d470afb01a306dc716e528f4ccf4ebd41b6ca6ca7faa6fc58c14d738a0231009c8773aacf1a945a59a68e9a5a6552f70ccfd640c2972925772c482c879d8595112bbb758debc861c707285acaf64cad0302047c435bb500673065023100a28dd299bdcfec5d6df23efd8e564ec5164d9dd8866587046513c037a8a4d7dce336e4d4d1176338d179d45e7c9148ee02306841905148e706f3fb36ca086f3d25e36f7bfdcd97bf3de6f643284fd1f211fb88a7bfaf62f1a01992415e5abafa98590302047c435bb500683066023100f4aa8c55542b0d0f16ef20b9f3512a872f1a2c3755dc598fe75e3360c457c7c4f71cd31c9a80a230c2578ac65d7cbc5902310097eeaa16c5deb4b7affcb6cee372b93a8be78e39665356bc05647b3a4a2c2705ce33807fb33cd14e9e20e60379a1376e0302047c435bb500673065023100d46aea12580d23334a9f9cbc5931a0d671b2c1f6820d216413b92175b0b5d366ded2cccaa60e2bb761838bbb9f352bb4023029d40284eecca3a9389fbaed4474762c98d90c148ee24a1daa7b42010309b60e52fc697a550b478f839fce9972e077350302047c435bb50067306502306169bee03aa9550065de58aa502d52eb479d7a6a9eef182cea0f1c0e057a2fb222ead143a72ebed10cc31c9bd61d19c5023100e650839d7a08dd32aa2f06923b9e26f748b45853099fa01f9f3fb4e46e525119bbd998d5017c926f5d950db68551bae70302047c435bb500663064023018eff580c33e0dde931368338d0b40f890758697ec8dd532cd47d7a9af2f69a680596dd8d00fa9abdc9ad298c401f74f023044c4e79b971d6c9c646362cdfed5e74bb7fc33cfabc642d74147edf33612dba58fe5c5a63fc5f6f445e7de755ecbc7590302047c435bb500673065023100d5b950fa059cb6f7eb2ac2bec551f46196c861dcd0a24afa8aface547e7f566aa436acd4fe860814d17a4baf2c03bec9023019c33812162bb030e8faa49384b40e30647d564bf712b440e05d44786edbdf12fdc2ba69aa0e6d43bf57c3455c9f64300302047c435bb500673065023100b0991135c5e9b3e6bd407af54d476d007e44057fc643ac4bec95258620b1cba261f84c0e8fb97df2d36c57372215ee6e023072d3773b0e9f57ae57539b191385d857e731eb18b990c83f99e754116f64e5b5b005349640109ba165ff33c1c0174e9b0302047c435bb50067306502303587537f0ce88cf9a160ca82d31d71b2527806dd609cd90805b575d778d694429a9d6eaa2b96b88d0bc5c65af0d13e5c023100fc3f0d8852629f34b44333a59b7764b88c58c27134204bec06c9945850a2932033f15b7823bce5621321fdd1f68af3a60302047c435bb50066306402301204c8f803256fa0024c38b5bb8fa3800f1032e7b9ed4b70840fd7a97fe1d26990ef8ec81306b86d2b3c5e61e3ecbb7e0230133d9d8bcf6044ca3dfdb5a6d561fa78059ad0548cf05d5bc7be49b53e39d4a1ee087d836f54b10ac2d25d62afdff0200302047c435bb50067306502301664bdcc80dc2914341ff60fd25cfabc881e616998daa3e51f091ba0d38c411a3680164e46f6c850228611ab3fd7743002310091519cc02abdea6219eea8cad26e4f760abd1c116ffb3b703fb9a3e2c24880ed642cdf7a6563696c8db6b555e5564fa60302047c435bb500673065023064571d90648fc17722f9e0d7d8c2cc2deb3239744c32e8ff62bf318925fae101ab4baafcaa650df3519af35f90c0a69a02310091336dba9c4fd6dac0585296717c079097c365b0f752e4702fcfee939f223526eea06a055beaf26ff19e2a72f89168ce0302047c435bb50066306402302e46242a9b32a68b8c464f6c866144fb2b35d0880ab661787bbd8a24ce17259ef99ec0e6e251c2cf3db5635e6aae86ae02304322b36757b07d748e44bca26bdbe8d142b351fbd4dd2b470f15111783f71a3179bc2c312a24ab6c8f308792940266c70302047c435bb5006730650231008e6a52cbadf445780ef706af51af3bac65e8ceb30097a83ffcb53abfe618e43ac55d8be2d4e105fb92276eb88f002b6f023074105643264960cc16139a97984494ca3ed28c0bfbccbd6a9205ef1f1f8d938f6f05255f91cba29ae7beafe53876ff6c0302047c435bb50067306502304035b5e1fb5474f6759f6b61c5302ca4c15679a54a450172ce2448e9c95f97ce8acce81cc418043fa44b5d52a3b3a0bd023100b75423c2800d746a04dde409c1e56efe58c4b9989e2d8c014559d2f7ab2655d3f789de6c4b099e4e6d4455830107cbae0302047c435bb50068306602310092d91cdcecf0d4f4d51c1aaaa4001a3ae96d561608203c3b1173dc44f5681f3da0328da0c6be6a341bbc3417fc40f1de023100ceca9181118e59ddb14973fd3c64d60aab5264879e7f8714f377c273867e1310f73565c6f97f15418b645f92cce37ee60302047c435bb50067306502305d06d4ce93d8438171d08793177a7651716213ea3cc8c0c5432bd984afddf5ea619960e4a988a5561753fee9cbebe339023100e1234cf6fd9fd96da3a11df7245303f48d296497427de08911fd278d08245d62e9a09a49bf68932329fb3005d5340e910302047c435bb500673065023100893dc3cec9ffa732030c5b5980785b859639753c5e14ff6507d5598229ad3e9f827aae44037ac1b97edd32376b649f3b02303d85fb265a54bdf7e73daeca04a223a5e44baee79433db11811567aaba3fc21f3c9710754f5aea1258839f3d7053e2e30302047c435bb50068306602310081b6cc96524e24cc6bffb9fe3a9ed8af165e1bf42ce4d526b2fb8f39983e5429e7ff01559992739354fa8eb418c62e26023100c34f71df635fe6c4826b8d9c52889c3b476128c52951f01896f342eef2f38e2caa20315ce841a1c9f3ca8674b231fb710302047c435bb500673065023100d65197e608cb1ad6e16f5c254cb68e637394d8e9bd65a508e26ffbe95f9f523813b04e23a6c20724da2b2ce5ecd7333e0230011f5c4c97dde6987831638c680b97b3151faa38ca7b7fb06d72e53f75a720d4f7019f9bf7e495c2a941fdc7abef22d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b037f08973fc5cde48f1a2633347c6e285a52fe85805156c44774a425de9a26ed6b755c400f884b2c5defe6bce2f97f0023100c201989000f07cfe589c0591400dddc6e11e5e209c798ea98d1e3d1aecd6f14701cff62df95d76e4c402413f059ada6c0302047c435bb500683066023100d5065723ab559990fa93113a65e9a0c1f86cb46b1af35e4480647c48818a7fdd3744be282acb355e99e89a59f2645b5d023100d58c7c8d710f14cebafa149ec26a2b8016dde1e257f64daf6ceb9cf4b21790247cd0391ebe58b66d84956150490f86020302047c435bb50067306502302d7f2677fc1a148a319831eef8e53de0c8b28a01a645dfa3566be960705916bf53208db272d2a69c01775351d56dd4e7023100b8a4a24438dd45b4fcb83e02b223a9e83d64d292c8f180200bc592a73a880fe06ac41346a40e5313625337c94b4ee61e0302047c435bb500683066023100a783fd2228dc5c8806a6d21ba8d0a6f0bf04b494b2d441ab9132f1487d74349a674b9219e3a0cf7328c4f104db583eae023100b2bf16331650c5d32f1236fd573f29f32f311954f62a70643e4d1c4e08afe957f8688f3303b24e6a1b477279f8f0614c0302047c435bb500673065023071c50a066ee051c96a6a8c28ecad1dd663dde7fe6b64e11c1b5adef9b58aee529c55690031054a2a5792a2acc93b10ae023100eab28c4c6604a399ca400005b59b1ac5837cac85ab5bdd3b15843c9b84415983b7f9f8422dc0cf7f84eb131a9b0867c10302047c435bb500673065023065108929514c520c5a5672ee8876715479137b4d68ed94066ece7c02462635b50272e727d173088ffad52b66e20dffb8023100b6ce8fc86124e4b3884cd8a86ba07355c4e27b21908b916bee3b374ae758b3cf6279423d53a45ece2ebe9b82d32e8d160302047c435bb500683066023100d92850a9cd1cde6d8b7fdc0b59b8d1b9c766c1585deede1623fbde993c0b20361d99ef754a3b4db79ac3d901cc400143023100ac1bf29ff2e382f699535fcd9395934d032253e3fce23dd2dc1b64e6f95046e246be3ce4743441d4906efe94882f0dd40302047c435bb500673065023100cdffdbf6d469e98a4ded2089c2202494b9b46156f88215a15f218a4c7f9a11df059dcbf6499eac979ec6f7d8ffedb98b02300b7c2e640255f30ac670e97107438e47aa31c39c13171bfcbb1a65548839ee6a97420712e7983ebb324d791febbcd6a10302047c435bb50066306402303028bca459bd300ab80380c46b2916cdb707ab1b6b2b3cb49941250ad4421bccd1ee46d58edeb9b063fe939c00f3dd7b02303d68cdc706c55d401073ee88a68edcb1de80893d181a9989b3a35b1858e449d27b200496c3cb27bda40c3cf482fd8cd40302047c435bb50067306502310093fdf5caf1d95b1f56b5490e547654d5750b348cea733a07a57e5a43900274507fe42f5ed66ecf2e9dbf5cedeafc4f87023076326fdbb793524883357c6eb167c4b58b9d49f7ef35e0205225346c88abc62ae992c78621f0e80b3a86cc296fc9ea4b0302047c435bb5006730650230664c9f1f0c9c2c7f40d9d70b13c445f1ac78fab3b78e331bd135ac51803085824787cdc849e3478822cc431482cbb78f023100b85a20fba59db3befb2c653f6de233b2490d023fcaae3e1dadcc604b5bca17e06940cea3ef71342714678bb4b9aa12c90302047c435bb500683066023100d8a008b8524ff395f2d3ffbf4b3498f26d4c701a28187a37d9b4fd994a214f8754956b57b69f7d7a5be1f6d010c60b2a023100cfe3c12285719e8030ce8ec410931ab247d692fb1b63df2c19306bdc91a26ac4900036e2ece35ddcbe3cc5c959b874cf0302047c435bb50067306502310082206847c5cf22a6dc4cfefbedcc0abfa260e31c74da9c7f0781e7ff0974dc88d3a4fbe6e8a78419d5cb667f4525641602304bdd8a19f63067c9f3cd981540fe46c5a45a9339d4c1aacac3ecc9e6242bac2c59b7cf6c2902a770ddbf78e828e111250302047c435bb5006730650231009f4b5fec29947712bb9f23fc9ce93eecd4dfebff91217e61c647ab494ea0897cd12ef24d4e92ff89160095d22994479502303c199ac66a9f74c18d3d7beca02ccdd084b86945a62122e55b8948eca89ddce4ff197e7c36c001e567cb5f6e826c8d720302047c435bb500673065023100a341d44ad7d74e7c696422f1b7bb683b0980236083ea8c504a118925cd781ca463c18d06351dc599e8b86025b4bb40a602302ea60462cf98cc8d4b73778a7215713ca6cb4762dfce9288f69a4d683d9c0d29df6d9725b69979e6a2618dabb6fbe5a10302047c435bb5006830660231009b90e6945ba1cdcf360aed7c1d1c427633dff4d876845dfdcba751be073257cab8765b11cc72191fcb66732dac013e7a023100a70913d51d24caa04522dd49d60e431705ae6d788fd1a3be49b46b1a9465959944153a96c6bd378551c2acbff0189ade0302047c435bb500683066023100a0789edeb62ab55dd3530f982ff3f35a0ecbf677cbed10822386dedf6b0ced9a01305fc2c4abeb93160b32e009c1fe34023100fa88ebda87d5e06c796bccb2c1a897cc5934826d2d37deec1cc5edb3ead17a97e117b8ed4a64be81df2a94bfd253961d0302047c435bb500673065023100b4b1a76f245a6593b4b7edd0b105cffcbd2cdeff5f104391aecc1f2f6c8a6bfa3d4bab078132fee37ab14a05f8a04a1902304f96716cff788d3da825c78b89b16085f0f67213fcc5324a1445adb69d29b668c0e156786ee035f8b926ef32fa9515030302047c435bb50066306402300dfc803991975dfebca8e579cbbacbdfcebb86cd75c6730d8026d351e74c2e53503856561ae672f278dcfd9e4b23b34702303b8fcb062774347f0deeb28932fbaa1c84c6c7dda7089df814fc24fa842974fc7ef71ba5b33c2b3caa49dcb9906e40e40302047c435bb50067306502303c96b0d32b297cfb319e46b70f457336c98e32158ccdc64a2aba3dbdd606356e6f7cc55193e5b392f7ef4ee868bb2497023100e8143a9cbbf6c179f55861f46d549ff66f0e5c10680adc1a8001a0d3613f9e553bbf3f9c9a272d002f551dacf85a9aa10302047c435bb5006630640230383c8a3d371eba630f88503b0ccf4f5f446cfb3d54696be254a1f1999d6f4e4f010946c185674fd9f72d93efe64bdb600230552983cb305c0fc59fa6a899e87470974b74a58c6c4905e5cdeb74ab5b96abaaade714e883b6483261edb93933ceadde0302047c435bb50067306502301324552e0511c931b85dec35516d66883fdb7ee6910cc2cf71f25ca4663cbb19bb6af8caa81e69d1c427f80a6d47ca06023100fa2ca2540aaec4d1a2cb84ff749e8e89db1bdcf1b36f41b78ab77ca38f053524b8459afd27465fcf9992c544992c50ab0302047c435bb500673065023010c7cedeb6ebe49a35a2d70f2942034503e4cd6f4178b35ee5a9195bd5e95120d6b126a571634505deed65ca27cda8a60231008b1dd66186d73362c97685d6544c28d76a1facba6e68242f6cadae51176ffe384b2d706667280570afd9f66cc56e6d050302047c435bb500663064023006bd667c77d3438601383f026149e5c0288b396658aa22de17f8c969c0603d54cf72b9b78c0e90effa690b5c236a81db023010e5d9aec83920e04f65ae86c41e4731bb851ff886d09259fcc13cb397ce9d99a129cca4060d0b9d198b12a65e81a2ac0302047c435bb50066306402307fa0ddfeed55f0db470558232fefbed5dc5d1413aea10785b0946fabaf94cbb075da351a139165d7a896ef82760a8603023074038e3848eadffd252a34344aa411d55d746abf39d75aa79f0e700c644f4d32b5a9e20019ed70603d1f488bd9973b420302047c435bb5006730650230266e1db326c442f684d17b467edbd6c6df957d4d8cb7a17d068cfd255d6dacde8714690ac536787432bd8cd9bbecb785023100aa28babc9dcea8896c185b2edf672386711c2530a3ba25cffeb23d561e3d4b28a46e9f2fa17f6e176d9f25a44b669ba70302047c435bb500663064023075c6c3fdbea3f0672e900d7cb3450c234577198ee6b254ac225129cd9aac76b9c1668fa1909ba4fb172f5e5f88abf077023078372f5e506be178d22ba8af903df0ccc8344992407a7f60d2230cb274db54279889c7f98211bfcd89cf747a0dae26ac0302047c435bb500673065023029253c8d39b5d6259ddfdcb7f0232d302070dfdfc180b61855c93a1a6eacd55ab9e57359f608ef438312a51fe0b2841e023100fde083c1c593948f20329655b53b6f007ba9282c553a7e1c44ef4de7b6f2d1fa86210052eecf46cec47566285fc328350302047c435bb500673065023100a42576fd9bfab8c596e5727ff115d3181d3fe9cbbb9e7712404bcbd93dd98dc0f5ebbff39f2b4fbcf7646c7ce19f121f02300c9fbcaa514d1109697029e2e8db3236ec909b5d67df9f623126723ead9109aa33e8794221ff62ec42e7441bfdb286bd0302047c435bb500663064023037320c578bf6da0018441b814e75e7f5db8a3e887e511b74e696feff56c43e7bc3e55181db8dd6d21cf83a5c8518369802307f499f2662b659c0b62e2d2aefbed78722e5fd9024e0d2c67a805bfbdea6cef998da78efca048c6112bf13ddfb52a1aa0302047c435bb500683066023100b7af2ec95b9d7d8430c4690d43dca4bb3edae2d2c76c9ea5966384189bfcbfacaa70347db82e0ca4a520d95a472528a5023100889f1db5131b476bbcff872b46653d945f81fa08084bba29da46682d69be35f7e1a2adc8463628509f6a93b2736213490302047c435bb500673065023046b6bac57d9516c48d86a06f0d0ca6e1db1e2e8cffec3314269c06ca1be1c806818c24993a4654a74f295927e8c231eb023100cecd7b1f744e0e5bbee4790e158904f63aa7627e4405d52ae3453243bde11914040c00bf234ee871b9918a737f5c83570302047c435bb500673065023070db86ba11e51431dd51eae07d77572c5bac73abc0b5d8d46472b07b1825c60dcddb1da5b09e2152420b049ef914421c023100d287eb604d0065be3425a5789e0a3d8755346defc48ae11da28e3899f5fca7b10eacf6b1c13cad91692cf80aeecd09f10302047c435bb500673065023100d14cd45f906552d671ea61416ad7d87fabb1d7a68605f2321cdbad07049e30e6e633fcc8a7287c13d1296980107bea7802304f304d015d4e9b265de268ab90a85d07f0df069fe9eee92ab9a63f0604972b23f962b1583fd1d5a0b620484e0856a3a10302047c435bb50066306402307345bde6cfef88eec0a09a1b651dacb175793fc352535d8945cfab6a4e285fc919d26442840e4b05849892abb192aef002304143c929a7b9bba413af335065ebaa0d2a873195b3448f96442cd7e19fa1aec15440a05eabc5034982ab671d566e6f660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a63b34b59d50d4cf5f80889e7d6b5544a13fc8771579cb17441134501395adf2a35de8e7a683b87f60dda87157603c70230489ba1ac489c1469596fcb9e908284ecb6497d68cb9cd5b8d6e6f29d79de80f65fe143c003003d5104610408253cfa060302047c435bb50067306502305b0396ba8062f987996b724a92a13535425be6142867b8afa13b2c65c4fca10fdaebbc7fd1689be539425da9bfedd2a2023100b15e5a63ca802ec4002c062962ab81fb5ecda5accf21c509adf456f26144b7e9230548961ca029f47b2d30367974d49b0302047c435bb500683066023100f01855aca055bd4102745e008a618708b6c02dd36c7911a2d7e564635b21ce0f75cbfde3e38b5165ada42174ee1c1d92023100db3949e4f549e27737c79dd38d4903e09008207135a73ebc51e601138910819672a8da18ed4beee2c4deae7980c257570302047c435bb500673065023100c6dc9341aa9962569a5ee9a8b8e9099e91f5e8df116c42a7eb7d9982e746f041f6f6155adf273753675d46e3453d34a20230510bff801a9a61f0a81136ed1de6530542535aabf42e837f2cbec260640ee060756cc5255abc51274d8c1805e48bcdb80302047c435bb50067306502305e62bd54e3bae9df5dd86304f825adfef79820a24c596ee4265c7df0d31a71ea7063d87ef9d101dc20fe9598317a7238023100cb12da0f117535e54667c42313c33ed55540d569b1a21f6b5a51155c9b7dd640437243a257021dd233b22a46ffd00f6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305561c033ed218e2469151a441323393e7d54c20f8737bf4eb09c6544ef253fcd2443dfc4fa1b34b4e57c33eda957ed8302303a1226e08b8eca4a2469d86f3ddc989813bf46c07b6a7d97390a6ea38e90ea8e672bc32136c3cbfa5f39130fe26b117f0302047c435bb500673065023032818ba5e8add10f9cc6c15e47608899e92a9a6ed126b02249bd35780b36b924af52c0a6677d053b99e2ee67aef4f372023100f5c1c65ca0ee4fc6c5dc031c45e923e38b26502abe5532cf4e61e6d64def689da940054035df55e42214d8c593a9a2b00302047c435bb500673065023044021d071fe5beac6a160fd27188ab6f6ba68d1728a344ef08a79c4cb3fe76a73e1afbfef0de59af881827892a2f47b1023100cbc3a7dcc96865a63145e441e6fe6e6249e221d999801bcfb28150f83e09ca6c41752eca621bd8877ce2bc999c68268e0302047c435bb50068306602310096b66b49437c68a7f48384afa9b5a7c1b3849dede371c22cfa5cc7f6b4b7b4ffd520c2397cf14a8426c69607b3f1e11b023100dc9560bf86d5bb27aaa81f6abb56ffeaa0e25c3207cc08c7a8e614f9326e4622decc61c6ae266a795bc6db6b1c9ee61d0302047c435bb50068306602310080d17db40903c9fb98354bea4ae267c19a30a027468594cd8ab98c5193ad2abcd24782ac3da5a4fc1eb604f6b67b50060231008dc86f4131e634d164ae99dda4793e7f4091f7f2c521f10a04bb95c63214629a6f435592a372c4e7db475d09172511b80302047c435bb500673065023100fd8808375fe2380a1337f5aeef1752b3faa19a2468a0942867c7b6031c3442a72cbbb9bd418dab0e7b3a0a2861bcc16602304049e2771625e350abb1c4b414399e27318b468074bbdd90969b173544d4871fd459f5da3856c0dcdf45db3be21251270302047c435bb50066306402300bb6abbe024ad4fb8d228dbd54da06cabc274e0cebcedd805babe7e4cdee1d4a10f21db173476572ce8c0bf2caabefbd023059f578d37e75de793ff12c75dce51437c21412a627385cc7fd2c62cd6eec56ac28436bbbba8923fe2b1450c84fd4c4d40302047c435bb50067306502307547fbc3c7bd17c5a5581ce7cd0d11b1113ffe8426b06040ae06b84502a9e079d42cdac52e9a88534f29779f70d7c70e023100c151ca851355bf928e175c61be68b801d705c40254f0588357d735552f72fa67619ae3fe995a5c916592c7373c848b2a0302047c435bb500663064023004e748eab99d36cb9c6c89961a60e6fe955a75644e4b0ae1d3b6f6c53995a0ef527357bb8d0c146f36216424464fd267023018f1e096e4fd028905d4bfbb891c9d488046ed656a7c7ba2798c4ecc28f0dee3a773bb5b7ff6d5f1bdbf6b74724921430302047c435bb50067306502301d6b6b60c539581df58f864673b7169a3d81b08a4985e1cd32eed0c7a357f0e22ab7486f0969e111c0f80293bda754ef023100b7a077b834e0e13edb181c79aa955c8162325dd78b053779ac001f25937a9003cbeb8c7d31a2f075fc2081bd4d1962d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ae9be3cd6c32f902a75d7350c2dd051868d9ca8966e20874555101663b1a41e0186acd486dea04b4e21b1690c8fd82002302b1f7b6411c0298b96797bd29b3c797de55c755ec720227d031e925e258deae50870249b7cc598ac8a3bb39c4f4dc04b0302047c435bb5006730650230173d822efe13954ed628c757fc25524d94b1a11b149a4959626467047c0aa9fce1d62a0dff577c9c06f57413b016ddad0231009795bbd529aa816ca1bf6a3d69a45d24a11c1b75c86c55312292cfa974a3c577811a833f559d7c99a2f5b85f391d6ffa0302047c435bb50066306402301eeab720ad94aa3c9c5b9b92c5b9330bba60513e01ccc73b98a2ab71c06cfb13ab254c32b98a5aff36bb4c1f0cf495d602305982eafd826744f71afa6950e3f3b47765acc76e13678e76d1036a06b732868effeb53258d4f0ae33d189520b3e9eb8e0302047c435bb5006730650231009ceab9191ca0da462af115e6395280e42e4302d67716685e299d1837dd134ddf74bbc1aeab4d0c7cddbb97236697bd1d02306295fe6bf31a840ea1be3efac29e8012422fc2a4ed05e2a0a378807e3854202667744471ea4925520b747d0fcb67b46c0302047c435bb500673065023100ec0b8dcf6692df340c548ca812382a1aac5ae2a313f4ad43bb3bb411c6dd0e0ac289125f851522f8616f9fc7ccb5b4e8023007da6772dee836e5ef62122a27bd87bccfcd47c53e32ed214f3cbdc91441c195d2fe6faba0e84ac725f1aee830e80c6b0302047c435bb5006630640230180614350926f49621550272f63a629e34c84266516098cf5ffc409519e9570081fa68d38936baf421879c0a25fc1d5102305faf700940ee2255b4e2d21d395b4385f226705708d286d7990c012b1339085ef85c478fbbe14373fba0507e082c8b7e0302047c435bb50067306502304bc4287c16354a43d220cd33bb458756f2c279dcb61f3379bdc8bcf21f52806baf459437f1f82481cb42dab244dfccd4023100debd9f78ea734082d36eece3f3276db5fe7be8979cebdfeb80cb598124e568a48468ff116bf5467edeb872473e0c64c60302047c435bb50067306502306891ec6f7454f2458ba736552c4f0b3a2122e65ee4a50ceeb3da8d450c65f7fcdbcfaed04208416471bea01c66d1bfb7023100e058d93dbadf0b8e479c7374a51dc4f483af32f0638262f0bcf3831d22dd7993cbfb240db22e234f8ffc4a932110530d0302047c435bb5006830660231009d471d8a83c34ec27e4341f698d33f4f2f7d0b62cd4c459986a78df76ddce8b36a3667deecc27b8aaeafbbd368cd4701023100b49a0edceb155d935b83b499e6e828b1af3c9f5c315592545288f9a9b188779757047de33948c63c1f521472e31917150302047c435bb500673065023100895c4323b5d9a27889f91f9421f7008863391cff725dcb7813c12c655f1fec4eb4094ca26f7094e6152fd9aac998bdb9023020048caa796ca1401905a8d0f6c211d7675978e3678959ac70eb32915a2de038b20f466c004b70d7ec6f4e3c8d1a53120302047c435bb5006730650231009fe85cd57091e1386be3b23a2ea7d7bb23d4bf24ac097c0163b84d78dbdd6293ff2dd4c4cd79cd83d7572291d28d64020230600ceee27323a0c24a4b1a83befc54269bd9ae6e35127c250ca8cace4774ad4d7f19904de1c4a773245c89f7f33d16df0302047c435bb50066306402306b21574e09b946d1708407ece69e43fa5f53d054cea3ca36dc1a5769652352b7ff5d769e3e5f1a70cf79f4639fab6d5002302582161d6451371434a4a8da7e6772a05fd49d315535130f072f63eed68a2954ab0b841872ccb354cb88cedb6da0b60c0302047c435bb50066306402300856852b4660e791c169f58fd47161eddc28617d56c3cdaaf0c8857316dfbae86b4aa1ef67f3b35f2f4adb83cadacfa4023078b9e30bcfc08a70c644e8d0e24120105875b7cd8f1ec35c3034573addeba0302ae35c80d0251fa3ee9be2fe82c023be0302047c435bb50066306402304540ddb802e6c34ebf4714cdec5c6b0df30582b7da181c20e29600044928f55793c373fefa7e4a5f4644934d03dc963e023061665fabeedb53cd2612553270d24d1f0c1c2daa00f8c11568885f7003771daf9bcb56d84d9769298428e3e41b41820c0302047c435bb50067306502300bace50eb3bdce0d81d061861c6a23970d0ebc2519d33b978ac5f35f70ac65698bc8c590dc9e50723c885d2f5b7ca5970231008e9ecf74f86c248f6474d5ebf498bd6efb11f745c68030d3b8d4829c215ee41d0c95e61eadf5228e409ad0c03540fb220302047c435bb50067306502300939617ea1a1ad62c039fc921557b7b51ff0e59ff27f3eb8633e6fcb9615ea9e6d453442eeaf73f66353209ce4ace7d102310098bd4715ca4467ac828b74563ab704b08bd48e441b4881b285296c21a1645185ca3fe7e707fdf944792c13243a5d8c1b0302047c435bb50066306402305439ebedbd93bb2da3c7eb380ae13442673661dd1d8d2d5bae2431e22d589b505019a4b593095cdbf96623b47c4384a1023017de41e8e578dd92278fca362dbc9dc1583027734f72edc26c3e5e518ca3fec858043764d6a1223d1449b125c3b6f8010302047c435bb500683066023100c88d3b1ec81e59c2232e3282360b86ec755fee9360a99344231a590747ace270095b7ff2171d063071458705a767e734023100934ad79dbf48bef6b98cf3febd8f126765a249fe1d82e79c20cc1b212516e6ef7cc6d036e372d48a90bd1b55cc4511cb0302047c435bb500673065023100a99af38bb294d5f26fa084ae510a60e1d3011aa4c56b4dbbfb8ef8cbcd8b92dff4344a837b6081ea515637c1017a9b1102302499f25694adf339d5857ab27b5c0c35601b8e46c57d5f2e2a2fbbc5960f6dc84b3b9ab42cc6c606755799be2b323ae40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f06a7e67df56f1a135ce330bfba7018c09ddf0b7e657ac258cb36be6ae9baa5bb4c5125c9eb9f5c284b5ee0a303f8235023100ed7abc834e500f8e6bf46e473b040dcbded1a4c84f957b330da97c3d8044c90e3e80de2e320f9f5c57f222735a3556860302047c435bb500683066023100c7cb49c138771b41cbcc47df811300e9540699faa30d9e25b7d22f8b704a7098a806114abc443fcb3d27b955625df4a40231009dbeac7b6af6bc03eea438f495d1fbcd3ca084598da85e8e98576920ba0581998c3b9d4f5bb58810e6cb32d77b551b530302047c435bb50066306402307458138c2d3b5376c78d0c2929d98b4117f910efb7ae22a592b71f93fde03020225c9909aa4fc7b871e2e0d490dc8d10023027274bc5e44278e77c4731f40c1b43961e07ae41d8413729d55e4209e2c6aa498ada279edb7db1ca6e0602fdcf5f0b7f0302047c435bb500673065023100fdd4ce065c3614ae7be55f73e75d5167928c33c04d45b15e535b2a94bb584a56103d3b7aab4043208f080d0094f0e4cc02303449a4ab4b00c58b99babbbde8dd157360e932a16b0079fb7d2e8033d4b8793926ef5a13b7d93dac1e99cca04696430e0302047c435bb500673065023100fb2348a01bfe59bfffd9c4d1b71a6015fca0c2867b66f4d04ec997c08a363d4318234231f4344a0b2382a5f28584476502302f0549b9f3949a5d67f9102056ad5112a4a9e911448db039aa379dc4a1853a9e83d777bff70ff0c6d4fc1de7a0cdc43a0302047c435bb50066306402301436c76bd88fa7ca95d773a011bd7afc0f4c380d32649b195e5a16667f5b9615f872ed6ec322ca59aa4cee0860e4408e023056f0587a39d0a5ec493cfeeb912ff3c935c6f2e4ad87ad15f1878783b85d38246cb11e909fd554625a27c7ca845adc530302047c435bb500673065023100f87c64d3bfa9d4d8236c3cbc8ccd830d48c91d5b3e73a0a77459e1fc7d3045d7fbe519e42ef7d2fe8bfe747e638df2360230463c136921f729b97ce2b222b7391a60401eca77bd8b4f18741c5e9102ef50e1f622b3245fae9d97ea0cd8f50aae41830302047c435bb50066306402303c482c5f22b4c1900a031a1b768ddbf85d8c1823df7ec628fe432ea32614793e43bda25abf50e7e9913c6cfebcc4fb3a0230112d3df4e89b811f50a19d742abcedc724e308542243227df6855549b13fdbc30dab21c836dc25f953d0b30bd02f61c60302047c435bb500673065023100bfc5e065dd97fd02068ea53d3b121107f08150315e59468a39b5b99e43765829a022d63dcba6f4da355f79af1589973802301659f0f9fad6ded36470dd88686be1ffe078ba8f92d17c3e02fc1b80468a479eac1e3e3613ac944fff053b435b1753b20302047c435bb50067306502301204659a2cd0c34f322bd8fe635da1cbb242547cf6e4e22a3e6d28d160ddfd7d552a7350b337416f6f12f0b6115855dd023100834b1b08b3e1c95103d5bbad01e048bc9cd0812d06666ff82c47be451e21ae6cb147aab3c1920e8b7de202e50852a6b10302047c435bb500673065023100d843db0e4290e1f14280f2fa2d69fa08a7c5ad4a065541b9ea57673f0949c6272b48c68295d701c3a8e087c1bdc469c20230255006d8639a50c4dcaf3c23da683d17e86fe6081f9a72972b4a06ae9463cafa398a919d55bca37c8aaf3c02dcebb2d50302047c435bb50067306502300c05a05bf722772632d9072ba6c95f0fd38521eb46938248437ef2ddfe5d998472e1fbaf22f43bd63798f4fc23096999023100860d38a926780ca98abf5aa63534ab60f51ab041f6c8407f6c0b517f1f1374cab9af1968a281e14dcab6acadfd7cc3a80302047c435bb500673065023100a44e2d178269d48c9853e42db66b1aef5b2b0b8327ea3d9db50bc2a278d4c36dc7e5ee28f4bc060ca3d81ef6fc16fbea023000a1be84fcbae9c75a89c34dae67c787f5eff2ea6434917b0d7a0d4bb23019b12a3f3fbf039c02229d05229d927426420302047c435bb500663064023038521a4615d340e5e94e2be1a0c829f8ff88c14c451efb6f91d5ed91eb7ba7fa1a221d12400e79a0ecdf3336326ebdb90230572d6c42b72d1f77f802f40b0dc3463f679585de2edebd12806ba5e11f0c025d317d4c177d7d96bf8031abce6808a4730302047c435bb500673065023100dda5f74c79514c0fb040da72d12e8d78948c1fca0c133a7ab122d0197127e5587917e6047ff8e663565e2d5ca4755f790230615ba49efb5c3f68697b7faafe9ade3467df60d5f9bf4aa0d675674e9ce86701e479776c2c5f0876413e6a1dde0535f90302047c435bb500673065023100efd8fcc6eb2a6cea81d803809485e30887d32f36b7f75eece0a4a95d291cc8d904ec78926eaf2fbf0b655c193a4010ca0230692bfda485f9a02154eaa6bf344f30f704a06fd07fe57a80059a4ea62fdbd9db36ab99cac736ae59a6ae5936d9dc54530302047c435bb500663064023047d1665c59bf6672caeb2b01d93f202889a451d119961fd722a36b71e259c80295580efb7c24c9e2fa4f3f40fc71d8d7023032bb232ab49435ae7a6df49e5b68391d984040b7ccb45142ef170bd0bdcb9602e2e2e1442e97bf7472cea31027a57b0e0302047c435bb5006730650230547d3b726f54435fe4d372a96a583bb1e8628eeb3998e77ec9c64c7d3a8bed820d558481e22940d078f07224d7cf0afb023100812f49fb441f4ec4e56c9cb2680c42939f41fc3e7e48fafbb3abb12c0ec06ea51144d8306ae53a52a7a517a6e908699d0302047c435bb5006730650230247d9d8db0d6688df2142b7258b78f9cdaf52635cc9ca6540af07b7c200e2cb5a0dd27c01d3de2c3bc54226b11f2700f023100c4e7c5616e21fd85d6d0d7eae9c22f63a7c0a55b2b2c2eb51763396f4e9d152c236b1572f9504f5e65739c2580676b820302047c435bb500663064023045e674190b61a752009d8e3f256592127ea9885da9153e79dc4e759b59b57364e5ab555c07fb8cc2dd531044ff74695e023011c63a945bb740a31131d131feccd42bedd90eb9900eab018a506c207f8f22b7e9233590b619a76af3392b469cf633000302047c435bb500673065023100d0c7e7d5dfcbad9f28346a6081b3c92e495ac8afcb4260c04dc3a36603d77db194f3ae933f0bd9e550ac970151aa7a5b0230103d720045dde3ce97242d2d099a8a24854ebfadf5c6ca87dcd77dacf189385c4f38e39d49152d83a776aac4555cf5450302047c435bb5006630640230084580db4680e01611545c21728eb8185b87c564886adbe53669039c7f449d3f1cf201e52d7b6476f36afa3511d8a36602303536648bb2a71c04478b42627c8fdb9b1ae617dd2cbf471dfc3b1a439960d97228c7c0e224270a515530af042b3c21810302047c435bb5006730650230215789df008473fe2db32286dd2c0257c83fa355249585f8dae96b90d74355c2a310ded89af1258dfb75d1c52c52a086023100c7791e3f533651f4ea6f4bf67ff20f7886cb72484ce7906aa4ef4ab9d4c22b63f06621b4c700fb7fda63d96418d033c80302047c435bb500683066023100cdf87358409e8b15eabfd0c174338caf593f15c53bfd3219f1b7e9c02ca0066a8af0907eeaedec491b63435bb884eb92023100bb784519f75705947a7324e915f89e27343a69b425084e5b14a43250eeaad74dac1225d71d60ed134937e8db3db869dc0302047c435bb500663064023050560fbb9aa61086dc61022a18c0eb472fde6965460bd1d10fa0c7952739301f8a25f013004271b3f62c8007f9cc34cc023060b1c013b1072a340f47873cee3494194e0114b9593cb9f32abd297aae8db7171500da5b133ed09e8fa2706144980e1c0302047c435bb500673065023030e3c8c77cf64efc75943d4071c202948b4e93a23475b3d2027a516c7eb104cc3aacae49bd7ee533013bfce6f762d77d023100f937a584fd0b05d2762a0ae358b1d9e8b4954e632705d2dc48d1daa798a8eb3c998eb1a227ada39a4be35de226196e1b0302047c435bb500673065023100c081d0166a8203f51209c8edab2f89f6eb70db46ee478959ff9f22e2a2438a73db514a401498fa9ca31c2ff7c4cf7ae302303766959594ca35a1e41fe3f33693886b10732826ce2b5868272e1d551ccbfc6fa66b616899d56e327c35379318d376c20302047c435bb50066306402302f8cbea9a8876bc7873a52b888c13aa3f6e61f11380491070dbacc1922bb1d79719b4cbaab43b958384289b3ba7e26c002303aff694f56d283f8e7083659633a14c94682a24649f13fa61d6d3efba8b24a0bd763cd946712b091f0a06ab9ea3635a60302047c435bb500673065023029ba46ade640929d16c5b105d11ab05f86c93c183cc0608c6a25393e9cb40ac55f85f4a76160dd68e713d9d6e0d0a62f023100f5f9ae5319dda6a0154d391b7ee7de9652d06e4d53d2d70d79003b03f146aa774382e98b899ea6c259c7a950bba88c430302047c435bb50066306402300a639035ee1f5a135999103cac6ae9530c0af62cde0c10e052fef8c0c36427dcc1f476c40f85d62553dc0f7faa55130702305b87d320e7fcd0cfcb410758dcdf4a0863c552805d90b75057eab461807c6cbbcd5bc822e30fcfc933c0b6acc2aa0fb90302047c435bb500683066023100a819bd7c352b65730a285d6034be91224ba6dc4a08f507da3d76e84eb3ed147359d47ca32601389d7b244c753f64f3ee023100b0e3884deb4c93a42351275374b7c35b5bc77d41df15631b879a1fd0f6aad2a8463398f69db89851b399f00b6546ad590302047c435bb50068306602310080a24be56fe947fd95a6c3b5c5df59f30c4ae06d25c4f31f4aa1d1810874a0af20046c32b7ab1a32e74c97d0b80f241a0231009254de6d82098715d464a4314d9c0089a8826e1ab03318ec597993951b5e38104e62232595d50a4cb0fbccb42aa416880302047c435bb50066306402306514ae7de93e37e0efea478db6c47d21ee19acd520c0ed24d9845ccb0e3227dbc9fc5ddc0e81c4d3dab755d82941c08202300b4c0f2be4f2a526a868fdd8ea9976c262e2fc07b5e83fe1c5cf8611c480bed4b916df94fda20a83e7c972daa458dd5f0302047c435bb50067306502307f7898aaa11793ad086c6e3cfd79fc10a82351525bf95b600f13cdba4116ef9f6ba9c8df09b72af38a3a0bfa347154de023100e9912cb854c2ca2a99e0914ac7533b932c9be95811e4da0d0fdbc1f585b8ec2a1514ab6aa98a9b97f6a983ac64145e6f0302047c435bb50066306402303e6bebeb71d2f1afc7c3a045ce2cef6415fd03751aafb9addba2110396517eb726f168529f6acf5d2555a1043a58f0e00230760540cb12e3f072af5b5367a913e24ef37efe2f3c3fae7f18ec97f884f39185cce65bd05084826828fc33b3264a50590302047c435bb50066306402304d716d52ba181b24253d5c8fbbc7f99cccde1d1d9453676d065e56d0777509bebe600fb2246edef29d526cecdcf95f9402301f6096a5b844b1f947d4947f5cd38956b6b492280983b66669f72d07ea7d39c0b6102e295d171e12369611716eb8575a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023003eb7dadaa89cbf593e65e6970fda374c3492d10d127a9024f469ddb0246f71d596e1a6e4375cfd08a08bdf020ee364c02300d32aba899cc9e76ca3763879c0808ca3cf0c53bd3757ecebf0d9683d785da18368ccf9b027f848c4a8786ccbf9d7c2b0302047c435bb500673065023100efe0641c4fd2f67d31271615a1bdd54127091d60c82b788dfaf2662c3762cd6e077f7eacf04ae55bd8a2265919e5734802302e65dbcdeb62e87de4d393740f950b352d9de5773e1a6e0d4349c322ef7a8cfa8af69eaa269465d13c8fa26ddd86529f0302047c435bb5006830660231009aa049ac4f9d441680cd5a1cc014fa37e17ca47bb0a1d2394f04c4efde714b3cd94122e3e6ea992bcbe22a44c26ee61b023100beea5f204bd6e89335a2e568eab33f11ee54aa8710b2a8c144d73e3f29e81168006918177ec66d5e4ae6e9365825645e0302047c435bb500673065023100c14a2b847e0f8443ec8b86de3d21a5981317bbf79a07803c414f103fad2dcb2af3e7ce0d3b81553df57c5716612d719b023069687d6d1462e4201371bcfcedcd82c740f27f0a82f63912f6bda00945991b6c163e00026bb0d4d064f5d9b2d2c329f30302047c435bb50067306502304a50f4f1f135557100db66075ada342318dfd5e6948c02fdadb99ec24c520c96c32b93ea2bde2a0967db97af78400ab7023100e32a7268dea7d9f8e57537e57752c641dbc32e9473f2eb58753366d6b456c66da3f08c8311bef88fb7c20be7c81765690302047c435bb500683066023100be4133364c33cbf9ad02a7bdfacba55dc9e60d29e59f206d4d26fd3e308039e81086caa1521667baf7128e9f0c4153e7023100e41cb3ad4647cde5e77d811ad5cb9336ed8b5225f7f1385208e3035a04754d14ae1c378e0103c1429d475eef1acdea2e0302047c435bb500683066023100b723f2258ae9ba63d7c9c0b0024fc29fa07fe1c4a260bbc3b5710ddc260e35b4c3ae0347d185f2afee698bad113e7553023100b6ce24bb8017d26ff5244fe3658312e90f1d75fb52f4067954725d91c3c1c0d46e15f82a90d35b2e9712c60c08c0c89d0302047c435bb500663064023060d6852f176a0512527b268878e4643680e49ab1411bdc5f0564363de661b3082d746ef24fa8a07e49aaacb2d0667151023013a130ece53a8c5023c2a00aac672d9cf84be3d0afc8c306f215ba104bcb1291ab16c06a4dbcc5eb225a350d850bd7ba0302047c435bb500673065023039024595d95ce6578e66cc6d03872e441ce52454f6e66ad59a4a1c12df560aa2a2a014ae2e3677d1627a638eb80f26610231008657395c945043352220ff27b72c8ec993d4a665a025c85e876396b201bd6b27688b0a0284f15b40cdbff787ad6876bf0302047c435bb5006630640230784e70f67c44e50e569fca18ad19d2873de1f328c0ff6d3cc737aaefdfe998f1c6459fb2e37f723f6b293d96a25f4e2d0230142e30db9ae8a2dbb59cb123166849c67dce62c737eb2e0eadd0e46cd8587962a8684bdbc845905b09f78a3b9d5e8e750302047c435bb500683066023100b14b6962a35dc00e6be481f1ab06dc692d692243dce6c8a1f8580f668a85fe003745f8ed4e23ce8b04174a5b10b41409023100ab4fb73e6295ffdda3a8ac5030e0c18063b2f44694b06808741c9314cac7e18d88ac5e7995ed8752406b0bb55f3b06280302047c435bb500673065023100ac847a479643131e050efade172fe54aba8e0accc5477552823eeb2789a5d07a9c30500a0fa7975187043eb872a5821d0230239ad2a83c64e55a9ad9fc3a5b522db53f884c7d812b46110af24185e51e470fce299e0b9439c2d98ea1e224f64ee44e0302047c435bb500663064023032d17d3821349793f2f33798875d122f99c0e6d222d8735b4ffb2df384bf28bfd034a4a639dd3e97c473071c137d7ecc02301e4753f6ffd26ccee546a0a3dd52196c4b6aa3566ed4367e098837b5a40039bd94f80a9d3d19344719327752e3833a3a0302047c435bb5006730650231008d11c78ec4822619101d24e401868a505d775a0141965c86e42657c6c482752915485146d61346b663074ee0fe9972fa02300394ff41e88b52b35dab707fc25c5300f98a574666dfb8ad336b7d636a94fae98fcf3a5584e82e11e52c51396c40ff0f0302047c435bb500683066023100a1b3db9d79b1870d9eae6d3e87d09cf823d22c208c3c3e8beeb061deba3a1c15b50a35f2f9edd0b4ba28caaf15aff323023100d14ee3781e251f624b09a9723c2194219b329634f7c2ee415159ce368c28417957dbe072584012619c444da9477269b30302047c435bb5006630640230565f303989813415a0aae075e56542198e9c3a78df55f531283a5705b9f6818416cf55705d68c7b6ae2a1dee70d7ef59023051659b4fd89b57d8dd58cba7bc22a03a25d53ce2211866f3b39158abf63ffd8763d6f017e8a508555b889fd60acdeb7f0302047c435bb5006630640230477eb88868dd8c3c4676873687536f723048cd35ea370dae90bddddc7579e6650cabe290fb1ff7ad36dd089fa995326b023074ff9eb320ba2aba61bfb10b1456d6203246ac21f72fe1aa3df9c320c314b67d6b7a44d06c7f9380386d0fa12f3653f00302047c435bb500673065023051ad6b5353a8fb9d7ae587e5c294bc41b9c5c67382b0c2b56d035f4a1495c40387663fb618043a6f288d40e115fbc7bf023100cd30096f85ca3f58f5dd5af8f42e380500a726da250e7b0451bd6e4a74d81989f51b83cd321f63beeceeba75868f5a4b0302047c435bb500683066023100bf5d7b1c70fbe9f954a81a78c0fee96680ba4b7c7fea8bceb1124e1e14d3b08532b0950d885dd79c3a57a8a48d923b29023100e215b19d0a0bfd5b3dcedb18e766e3eb22494a893355ed51c325df4a1052ae6f73415cebafee71e92cd9d4797b56a92a0302047c435bb50068306602310099866090b363362285897cc13a7a5588355cac71cbd737615b2fe46ca821f6318a861fe6a8cd49639eceea8f4d7c23a6023100fb6b2f0e264e2906f0461c2020f103376ecfd533054b976a6b7869a2b74409f516c6d7749641a412f106fc9d97cdd4ef0302047c435bb50066306402306b2ab1d4f02639d46a1242ba9064a2c398b2fbbf6a3ddd3762c759a09c56e2564e23ebafbeef7d66ba3025268387480002302efc995c80387b4378d9aa896ccfae1485f5aff60ccfd4439168166fe7ad3a22ee035d6a85a4cf43d7ba7df181c01bde0302047c435bb5006630640230123d6933c7e58c8dcfbc7fb5cda4f9b09ed132806944f94502150c2f32dff9e25f380561c77e833b6d689933d0423f6c0230196c16919c4407f41b63d1a05b6105360207de56d5ae171f01d8d0e99e7e21fcd942cdf9bcadd7315ec16a77da0515430302047c435bb500683066023100c9aa729fa5c88c2a42e034e6ee2422e42a9e8f051653916a2246278d793b6c8104ed525ed28ca7797609f10b500504cb02310097b8d4e5f3923d8c94421c43e55e2f523b806ea81203e9255e7061df396609bacaabe13dcdc66db2bddacca5fd858d220302047c435bb500673065023100de113b90c394dcc22684842094b9e150eb1a5ef275f653a0c7b5998d24e680101d12d2beba583cf1e1ad89334d5c7bb1023018a2ea3879189a6e809367ccfb3047e7637e4802d8c0ac96fd784d4a2d5e6f660b499d9e0aa8678cc1f7bf4045fb54d20302047c435bb50067306502307e1bc5cb1b1f559ec7b8cd9fcb8a59d78abd0ff5964b2466a75c4d236842f1d23c3e1cf89474390fa34aa30fca215dda02310086cc5ac99a627443f2d8f499094592b63621f5db2587cc806251d9cfe1632e5dec6c6731706e2e14c9561badbb1665800302047c435bb500683066023100a1ee1debb3de5a7266645de324ed358b66e3d73565c7beb695f99f3c4bed28a47aea9d8ee4468bb41b7c5c5c2f6c5f76023100d4505f68b7c82316402902519187b0546dd5a97dda9a9b502d9488b3912083cdfdd4679fa41d16a554bbf84b35a86c7a0302047c435bb500673065023100a3dd132bc8ca7eb5188784236dcaef55f56d09c621b0b4b477b49a485cc2f70f421df141b8653de524b6e63e279c22ef0230034165bded49e85dc00300ca1d71278115e3fdfc7d06e8177ebec591259703c415ea754a5509c138c7b4035e08b3edc20302047c435bb5006830660231008fec56760b5376165b519938c6a6a96794d59e953d5daecc4d91235d583733cc332c0c9f27ba445c7420aa7015e4cf7b023100b196a45f37299f562aa7497cd9d992368f44d28c1fc84bc54bc40db3137c05e32df31a60f743ed2dc11cc55b3c7c454f0302047c435bb500663064023018beb7743ebd65873adbacd25e685c8d0a9deb7f2de64c7ba652845c568078ea5bfb23d10c05c285db529f48f4e1a5f902304d7e898b60721cccac5b693583598acb22ae44acaef92a993b24baadc593181d7321d83d9ff28b71ff401d2ec7bddfd80302047c435bb500683066023100c9c19a65b819ad5d1d8308b0823ff3a0e8286025bd8cc6addc441bae7f8d8b95938e170ccbeb9d1be719a6e9d803cb600231008ee0fd071c4321384f39d8496453262b55dd3c4b36ea38bb8eff60b8cdfb0c30beec813d4a3a473fab4575606bc29cf20302047c435bb5006630640230581931d83d7423d7f404156eed11286627ac0fc75555ce4eed396eff7e4ed7c1f530580ed66367bfa624f96f0d350b67023038d9191883169e366f1f0df8bb4194d258dc76c0ca932c408771e62f052804b96905af6a1bd55f94b2f7e9d7df8242e50302047c435bb5006730650230135f36f8f301847f2d12a07bcf952996530e29fda769d3d1abab6bb701979d0e9947414fdd56cbe8a116f59eb8e7e7bf023100d0325976ccfc7d1180395ec69ca0b0d0cc2535ecfd4a3394b33193a2a7c9a1d4d9688092c570dd6bf9d910b14bbf25980302047c435bb500683066023100895c6555c060ae1bc232aa558d10bd1aa05dca173461814c7de0c8aa575b15d7d6de12dcef90556489efa6c4c2b2f259023100e1cda83b31fb5082b5537bae7586b6dd1ef6ac1e08d14d54e9b7d8f2ded7b1907894c1e4db1857c878e489f3bf47bee20302047c435bb50066306402306b5541611134222ebaecba1ee189f98e53da9b6bcbc1405dccd2efc934b94a2871300360de70afbeffc9857aecc47c29023063d25a1e1833ac3d6172d683e7acee4ec16daee0a69907f9dbe3a7784e584f9a9e8c95dc450f35273549b43f8cae0a400302047c435bb5006730650230347cf42f0163df8f0e2ac28536438ed2eb43b6d88793c3c3ac2ff2bfb9d92f61fb45671655584b4c68fd13b43d8390d0023100ac71c488e43dd1b18b2402a343a6b64877250cbc38e3ab623cf27ae1d53fe1f27d9f2cf7f6334969893cd93e940cf53b0302047c435bb50068306602310080a7c1ade6d9694f467a056426bd46f4116acdf748b9e6e3b97948441eac60a2861ff583365931e6702eebf6ed13dcaf023100bdc50a41d2461faa4b6eccd7085b9e6c55bf498758bd4c8606f4bbf32d4b81acab284374761050b27bd94bd2539d84d30302047c435bb500663064023071f06dcd3e4efcd6756fd96f3e10cab820a9fa68f1f232141b7e2c9426eca4899931fc30ff56f27b17d71ee9103b56e002301fac2150bae3a94605ad83c5f2bf5c4e3b1471bfc39cc6434a54b91de7ccfbc34ee732771db203926da7887b9668fd8b0302047c435bb50067306502301f997b5e1eff2cece5799b034c78431b43705f9e926728cefec809e17e07268ee0e142a1714461b14e623809bd27c37b023100e206f6ecc938c7358ef220e42357ddbb7eb44cf0c2af19dd9f7ceefa7a9d5573ad90c8555ae5ec427df905fd704b99a70302047c435bb50067306502307c131acecb9c8179f4a0a778c08b4b44ee758bb896ca2a591cfb2bbbc6d9c8a400da87f4668e3417192e419604cf681a023100cb588048c75ca384a2f3ac0d4d389d7b1db0c9466f68a26375f88359c24802691d8961ad7d6e4a251701bd70addd689d0302047c435bb50067306502303a929f66f1862ff97ceb73f4757e39b7acffc1b34cf1e8bc2f2baf6865357ed2f8d0bce250eb6a0782ea8b314b6835d7023100a53f98e6e833fb336b687138e5bb9f75ea4d96c57e34db1f1e0c142a528bdd18f000c5b6bf609aab5c01cd814401f4480302047c435bb500673065023100d314ea8b59c44ebc9c64e44c3b1823e400dadd62eac7b7ef1e43b3cb0aa44755b17a96b765031dae25ffc6f56f7fe2030230567dcf13da86f6487ad99c3a634030509b2b9f971e7b8754deb90946f8710dad173476a57e2d1e23af34a73d05455b8f0302047c435bb5006730650230613afd7fda5127f6d2df1de8263c89de715e0daf548ac6b6a825dffeb241904da2fadf4535f8abc424762a284868a9e9023100c74bd02d389d97100cb0ba74db67b951562204e4c9038f61ee0ce6f33f07f023243eb6356da6d924df688583be1cee860302047c435bb500673065023100eb47710bf236d07956bc7deb687cf1c710522507db18f847ab9d3251963625a3194c939e2f2d5eda370c784f18123a2d02301ce253e5baa4ea94b1be869ee8e66ebc18f496aa861d9791f1672a0996afe50d2e6d673967f28e6b284558d23fb991230302047c435bb500673065023100bc7597ea811ef745b17d6bfdd33740256070f0065acb6ba5440c236576725f3c8bb1a055f3812186d76c335915e5b455023013850c5237d776074f88e235168b086e388afc2f8917963da6b1e43aa52b6ccbd27b403d36bbf7ff43074794605c5ae90302047c435bb500683066023100d4cc8a2422cb146f5b3992be3da04981db08d7e9d14740b8ade42009f89e6cd88781df25273712ebdb39881c05ed97b402310098342fc2b1492c281a20b4a13e4761acf4981ec6901ef939bb93ad43247f27b4f37e4a377ae9d94d9d0e9716f27a268b0302047c435bb500663064023003a75758ea528da34454750151790fc7ebc80cb53eb17312fa089c6ddc2c7746bda47951de95c7773ed272f34ce6bd160230096e5bd44921df31fefa8355ea1a6125a68e81fc78ce9dd8a22196bfe7600cd5777c8f9afe6d85aeb0bb655030ab546b0302047c435bb5006730650230767b60405d290c931d499583f7c0d40056b1f3fedb99dd734e507fe6fe6f02ad32a5112bd7f9c20ccfe743f93d046836023100c7e4031ae08b07ddc6b0b61673eba5346116ca92f580ae7728964aa5cef77dbe34190a7387cb5922fe429fe0a8923a8a0302047c435bb500663064023030f17740e7d845be3eb3b18bd13607035f323be15902fa3a3dbdeb0e413caa5482a2462a17f80a401c0c820be7d163e5023000d0afb4e62880f246c373a6fcde490c43ce0888240c5a58bd5c10754fb056ca3d17af0ca37b3bf052b01d3552c156490302047c435bb500683066023100f7ae6555661c96ab39c284b43b4eeb79a86b8084f15efbd5891426f889b8790577844a5b448a6d8d315ba7085347bb3b023100c5fae7f4275f0a12c00772cba8953e8c9f3538580a817a28a04f731cd75abf965c139f240626a8383a70ecea8085af100302047c435bb500683066023100ad2e6923e42d5c56b96babd3dcb8fb5f97ea240073a22ce36cecd8069c4e1440e49f27994c762dadf31c91bd733f52ec023100e30e0b0889fbcd49f11363434c31e150815cc364b04e5d1274fecd72ed392a58748ea3951464d361aa3332012e9b6a6f0302047c435bb500673065023100cc338ea65dfaeaf4bae366ccd83c2dbe9db91c9be00763f12874cbd337fc28237f8ae6d0c0144e9ab3211f5934d4beba023049a729df0e33b2b26e632f0659decb65627f07661f15ab7dd825be16a9afeb53b668a8cbf72c922437fef1ff4d6600d80302047c435bb50066306402306b76212f60e0f1fc3e3fdd92b7e2d15753cdef48261912ca47b43743e998898fa2a1655b022ef6c6528f8f5c86d3439f0230449ca6ece6c3bd538803256e2b89bfef3e58928f9c6f4cf96e4683a7368dc82ac935801320cc9ab7d6beeb00154b9ac30302047c435bb500683066023100ed858dfb76b89c11e042d5bff271c0720b4b65e49df64597d6dbef410700aa681db02f57316b6f83597ad6a035efe994023100815a2296867bf2e861f3f0a3b1b30db48564e7707c70386f8dc746ab3cbe8f31e3e57916e46ab139fe1b0a6f6c78ce240302047c435bb50066306402302a44151d9dfcc1d4565078d6b3214a7409a937555eedc6a6def8fe3318db30c09eb27f691f6c83d0b225ba02e893885c02303ea5e27dfbe641e8a953fa6c1f11eb8f0d7ad4221ad22f7c62a237d7b63e9845b0e4cdfe0edac95db54f52c30b26cc020302047c435bb5006630640230576568bef8c7efd92adbdeb2db05c9110706295a9ecef3cecd8568856796dbb4c652383d72c14f47754875627eacf90b0230646b80a950e4c88fe052b8c58e3bcce4fd82fd1bad963083e949dd1198be890592d0204c66b8c6f8aade4840eadf43c20302047c435bb5006630640230445a324e0eb0e905c42662e42ebf90519d5bf1bd09d396c259b21c76bf598ef4e82e1bb6006f18655bfd12fee6c18fd7023027bd07beb6d07d64672b3f4d5f55d3a574aa72ce4ceef544b119cdcbf47881cea0611260fd15556a570762b9a027222d0302047c435bb5006830660231008fb7e0fa82fc5b4c4425dcb2b0912a76a2e0b7a8ed4da38362a2962c3f31d90c794eb979d3f915681f40debca74c5f52023100ae02ff7ab8541d6f0d242fc3c01ad7d832edb2158de4bfbb185ece7625e5b1d1250968f47c1c64b7e14eb0a3085525f20302047c435bb500673065023063a313db6e3e5b468c43b9f99188e43ff72d9ac90220a2839597c3bf759b249d3442faa6e4fd6bc80112e2fd1809911d023100cece46c765b6cd4c08bb94977262d8dbaf63efe17a4eaf7a346db2bf143ce1ad08f78a124d189977a38e2334be68276f0302047c435bb50067306502302c64706a1bff46c8781d7fd7804881428fe59e103ad35184c2b4cc72c54acd38653fff1be01f782951f29b1a2bcd1c0102310099cf8ce72630348ff4c4790a3556421152efc8d3c2bfea29b0b7da3d50187d24742961cdd723787aeffaac8664476ec20302047c435bb50067306502303be7404bf64689f9c2fb597d8e8509b83b5f692d12dde2349e4351e32d07fd7ceb2bc78923c2cb532c1a06255a3e883a023100e90e7f4a59630b88a27d0ca16b522e61636ce44571c95f5b9e964951444612abd89969ab08202355b7178465d072587a0302047c435bb50066306402305c718da8eeff28e9061634b42788246c3927bb7bc525870fce021b5e136a0c0a894fa723c7c8674478e0afbc201d95a30230508d340209a1c415541483c59932175cde4be57d7d27d3f732223577449992441c5a9df8071b2348257a80f35293d5290302047c435bb500683066023100d41d15c1143bd3decebe023b0b41fdd2ab81e6915a9a8bb131dce19751a7493c97b507806b83f1b913dd72bb700671870231008152770432671665e4fad6e68d94826682b11c6ac9fd1c777bd5331d1ef6da894fa95be690b2a2c400f2184cfc0d77d60302047c435bb500673065023100909762e44fe2ba94288c180d622af445e2777953042a2a20407733a0e34914a35d7f5d9e810160c982e5de34897ba916023072a76efabf2bb5a4571e80f2577e75c9929e77f905b717105482b5dd31d9ffe9a2461a9778ffd139ca9223d7b534b4a50302047c435bb50067306502301e3c6e3a6897621dec5aa1d41c219fcb743de1f02e2d3a3b749b5a47c4ad783195424c3ed8eddb10cb4d7d24a513ed66023100a17150f1a5d1ad131f7d3f58b447f2788e15de76c7a3305b8061ac9fcba122749a9dc281206d811e3c98af775b08c24d0302047c435bb500683066023100cfaf18c0ef0a56b9ff508008b531a3b375db1f957ca3687927785373a786de3016824c5b0376115ac9524810a1bfe6cf023100cd351ccf517308a4660acfb746257b2dcb460558d54904e57dd69f7c5710b608e015c510eb41dec493bb778b21a3d83e0302047c435bb500673065023100c1dbdc5cb3ea4ec3c866f9ef863dfb4933f075d678063a9ab5bfa0368a5903c0b2b5f66cf936fe691c1a6a92c62b3db1023016830d723e0fa5c266befbc1c1baa8db6576efe7da66fcf0336cdf463f4f9f46e5e28a461184366e54c4da9894a0757f0302047c435bb50067306502303433f0fa2a5ab613de4671b5e3500fd44de40d0fd163a12941d4b0b69a54f6f33946b016aec382237fc2b800b9b135d402310090789604e6d0547270734b8359aa1a01baedd64425b612f1ea9a1eac3c3e5dff1e084f2cf7fd8974996883448a2e4ce20302047c435bb500683066023100c322fe05ff863d0de2d37bc7a8cb5bca5d9b4a65bc5f18312e32d74468f4852afa4d21ba1385a1c9714b206147b4b455023100d81221f4145202a2a681bc546b90b38a9632849f0a352057fa8baa87af112965912c81fd4049481669747a9980cfe0340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008125db51132f3273c919146e50f394c208315ff40cfac57c1163a9a01cab11ef8a9cae65524e87b721fc4cfafbe683ef023100dd316ba0fcc82f6069d73ef95d9490c959da0d3f5afc3a8063ddeb0d39c769a5f0355d60253e4e5aab8c33724c04b18b0302047c435bb500683066023100c2bbed43239ca3df0bd3ee9051ebace02bd1dd05ce749a0d8cdc75f277c7152857edff90ab603b24df0929b704c105bd023100e45724dcf80a212798c8cda37d8d205fe5980e82e3dfca1f434a46f0df595e60c7ae8a4e935b2be1fd6eb39dc82e893d0302047c435bb500683066023100ca8fc04179f88ad818242a240a1fb055a6d4f94731112c785656837f1b8ae4746b7ab75b63791674065da9d2089d710a023100c2d0b90d305cf12abebdc88c60f9d7054c3a65fa94405c69a005217f588c30563db6c771521a86909e7760b8f5439a620302047c435bb500683066023100dce486f3d8bc963074e0b632eb50d14f3557073c306265d3608d45db6dcd6a7c9833e32ae934d1b09495a36435cd77670231008bd1683427ff89e76bb69c2a731ddf33e81417a32fa50834c6e78aa5400d2837bb846d8f4b3221cc79a73b681ae3e13e0302047c435bb500673065023100f72249c41e77a39b9283ea09796aa5e0a43d40f88369584e954181a1c4412d57952ddb33d8bdc119e01ff8833e94b45c023061bd0c4b47c3a918b4847811df3e7d6e582b3a881df90e20bd477db20f50f5ed671372d38225da2e54e8716a5c34af5c0302047c435bb5006830660231009621b4ca287d6aef804152bc886b8d92777086c0871a7b0a844947d6ea27ee3bf3d1f3a2b1662bead228784442fe68da023100a51bf4755f73efa9fc2828d2c68b12b3c34fc337ddcbc28c4793d7a328c59671535cf4d99cd0212123254f8ff115fe550302047c435bb500673065023100b5c11552df75292e00e33f8bd4a4d170d157c0a10f6df24abed756ec01c20792338a45a4c4ac96f95a98b4a7d558ddd6023064cd1bc5f4f3d0b524a06d014cb856369388c5085cada60980933109bccbc1772df0d7b06fded1bbaa2c12c3b35e51bc0302047c435bb50067306502302dba703cf59116c5ac8acf9ed624a17017e548d2e9ef8567838a8d321352d8724f372f018e81cf40fc8cbb01422110af023100e0ccb1b080176eda069f3630677d5a73c687c80c86582d99d89afc9755d4fc22231ac36916a63efd7b71716cfda818cc0302047c435bb500663064023027284c731656de8f48732186cd006875cc87058cce03ed05b591b07bd8655fabb6e8d64a7f89c970eae60be6e1a7904802302c02086cda32e6ef801afb070a4ed9d0bb93a303587dab422c4e1fafafe7beb963949d3e094872258a60b941d819312b0302047c435bb500673065023024581fba89038402d044412124acf7d061e1bdc04de0b7b50d630f13f0e065f92b05e972c3aee615bcb36ce6efc5cfca023100869c7df61d929bba6e6a3b34799a4a03aec380baaa9b00bf090eb128d93f18e3008c64bf9e3348a242ff198702ceb3900302047c435bb500683066023100feaeb5a44b10e7c98b02b924c19fae8abb553857a66f452282660ea0ad074ac80531a59a0806ec36aeeb1912c115a51d023100b2ba1b9c5e243fd81721d51384aec933515d53247f2e60da5c55af39281d93fd7e98e4f3fa688ad10a4e4c0652f2e79f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305de55c91716736cfbcc00def29702709b3ff41be4f7b483d9e89b98eaa30de649ce389facbe7b24eacbefa1498ac20e90230067ecb93d0effff0a1a63f8febde6e4a0c9eb2d373bd28a2e7730baabcdfb651e6d56a44ffcea8413ad3f0c52a5a77a30302047c435bb500663064023045926da7815691725a013f6890418b28df3c440e84e39dd60cb0ac8bfa676d7762c1bd82610be01bb6a10c39623cf489023041a07fe0725737d37bafc90d27fbde1b409a07e26d653cbcd465d963c4d13b49496c9ea844d54e210707fcf7321684130302047c435bb500673065023045eab7a34910d343a760c2a4aa7ff6411fe1de3f41b31d8b63f60d685161d3569cd035f0c446b4066c26271f15e9486c023100e38b210b72375d1575c5021888dce7659f71f27fd1a1f6ca6880209b923db13723ed8c18d0513c8aa8948e5a5d08ccad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230782fb7c70dad5b8d1dbcd6e1804410c0611cc5e3ebaa14a8822ed2eccef23bb42f4206408706b59fbfbf313fb02f00f702303367a5a1b42f634e838c46c964641b260ab730c59cea7d76a0199c9d8b16de03f106b8efbe14ff7052ed92e88ecabefc0302047c435bb50066306402305ca750ba2dfa30b24ad8dd5b242ad373b9a01e9f5c7c46c06a4fdd340d55146db7d4cbce2756a69b0ab60a62dd62d0f502303b13075cffdf4dd94f13738baaaf3570887ec739ff3e7f777332bc0aeb894ff47c43c57286add2e7d0e9e2b16e26f8710302047c435bb500683066023100c252fe2e924b149bd3412f4d0cb02a980948a69f16d1916aef5cf82b93629fe4b95884cd414e2c3228dee3a2cf944748023100a0421beb0d5348bfc6fbbafeab0d181b03393a6f02ad2339958fda326fcadbba8f1c1ac95314c93463dd82457d27af770302047c435bb500673065023075d329a244a3dd7453d9ef4dae2e0c5c27e05d69f01fced420c7728b4a1e3fd88258bbe25f4565ae7c879ce69a84b51f0231009471b44872e9b26dc1837ac9255da2ff44c895a517673687c791b29224610a89766a6806f3059bf22e7eba81bae233f80302047c435bb50067306502304a253655471b61a47185789e7ecba86bdfb3a5aa073e346be646b324b46f6cc77a163aaccc2e39302108550ad4836aef0231008d36c404a7b4b8e1f767d7a42e9eb479bb27c2e79a0573fd3c77dd9bff3fb8695dbdb8f2cc78fe8c45498d7157e6dd4a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301db017e5507890611b738877b54ef1625fcdd9225e93c7d33d2dc8f664d4e3924067e8fad210b7fb67156311384f89d4023100ea34f4b07f6cda6d6a7ef82eea98da5f4f23a4399a93629d2ff5d378738d5aec71f11c7e63a8cc1a816f0defbeb336300302047c435bb500683066023100cae784361e12bc5556f5599d01ab2fd71f238074029ab766f27b75835b09d802c86e6fede7f1680224413884b888d28f023100b5e1313727527658c66015cbf122c8c396d6e902e66368928ae9f55f022ca04becdca747486dd8509e03675387c778040302047c435bb500673065023100b52d2d2708dbdfc7ef6df0be8dc170ad3f669dbe2a79ee6f35f3728ba11e1ef1eff8bcc24e8039116f72d577a29596250230343f5c8f190cf29490fa7f2e3d8064d4e86f03a2d62fcf370e6cfff1c453c5ea2ac585bd9f94f4817c64a03663b32ffb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003a5be8eca17752d22ac3046cf1404f1f09bf99ffb3309e1206a2b8771efcd6e3cc2bc806adf7e8dfc835fbeb6ceb7e5023100ce7667b19fb2b6106f0a8b96ff72d791e0fdc6e0d100d26a250e53b10caf0bb2c72a41d6ce8284af8ab04b76c193bf1e0302047c435bb500683066023100e4d553f225b83cec40f3ed80bcda2482a5b05e890f6694d0ca2646a679c7c7a900c757f34f8733812a7838157b39ad82023100eac184118722568d5e6640336e75d2f94534af0b9edebf4b8ed2d2dd89d8b30aa92231e8f84b1de46762fe4a1d5eaf530302047c435bb50066306402300952690c5cc4a9e02ddacb692875eb51c87a37ea0b0ad1bac65997991b99f4b57939e75bb082d43313e78b2e2ae6f46e02301f1efe7049efd166cc0a59261dc2be6074006eec2dc8fb739f8309060a8c43ef849e1943cbf63f61c50dab8017ce38510302047c435bb5006730650230189617e0b5ace55bb6d586d3fbea8bbfecf5201de7c23a818b9a5fed553cc1182b1121e7c2d03878c1c60176427b5d38023100ae4c636c84674a144eff03327f6d0d96c0117cfc85a63ddfb504eca001ce086c0bb1d8b57714e69e0c3831f5fb12f25a0302047c435bb500673065023100ff6495d898395df4555cfc4c0984685f55c9de19ac34ef28a4c6646f4f45c72091c1f852dd8de5ca42e821696f7e319c023069831ceaf55bfb471f4a940175de192cb1150ffb0bb59502ce5e5a5de1487fe5640f8f1c862e1dc1f21a0bb577ce8a530302047c435bb500673065023100d04e8bc33bd00a6d6b5a6189d42bedca37b1eed202bf875c5ed6a6515bff26f99c34170b6b16c137870dddaa6e1f5e6602306019158fb6975b00e5539e1e9a7411a1c96dae7fa061bf372bfe103de335ffd8206f7f97c88061556652049247d890860302047c435bb500683066023100a3fb67a3842787e8c4e6ce31acd19cd70133ac4cc7e48e84249551085fbcce70d8a80b2a73099c52f4f4de6f021b3a75023100c50d98bee3268ffee76faa18209835e349a58a374cab27c0c17f5daac8fb607289cd4386b935417315abd063e03bfab00302047c435bb50067306502300cb424f24d96f57eff4108c59c08c571bbd78637063f41142679db1416c297056b8a9d9cb28ced420a1c725d9a96a350023100bfc88c8d0ec419ff9fe440469c5adc91765391c7f6c2d0c006fee7161151e28259fe2475db7dcf87979cc86ca5d0ce160302047c435bb500683066023100c799b92529ac7d64e2cabbef4281f7aee61d1b9ed3c47bf62f9d8aa99e25791e4418dbbfd315c1a036d2a855f48a81c80231009dd94858090fa6d6bc2acb4f97277038a0568aad36f6b141bb5634be7de8d6330dfd88929ad1d3e2b3f8f11f398754ed0302047c435bb50067306502301bd590f139cc0b928c9400ad5f16e0fbed39ba9116ed91d8a96176a1b1943a24a4331cc1c9416bc991d007d9549e54130231009959c1097adc0a5dc70e844fc03752344295dce9ccc0696a062265056557d58b9f5570bef261ac8d5beb1dd0df0c4ff40302047c435bb500663064023021f7de6532fd07e1a2f1542ca2b1623ed8a3bf49d312023c9bef53f87d5a82996fda45e5d038b69ba63f5f491617d5d702303698e5df776e06ca4956c85475c0e80d50ad9973963c4f09880b7f9b76cdfed580f6c7804327e9132d46bad2cd25aa480302047c435bb500663064023009b36fb6dbba529eb1e871cebde279f800fd16f31fac8965fb8a923ebe7e7f86068c76c2fa7ed99c49184ab6730b0ac002306d96ba748be6aa7c543674b2bc106b5f405d389c5cfc52a4c2f912336c18a81b95aae2f370f7ae10785382a815b3fbeb0302047c435bb500663064023023f927ae8c055aaae6e7713266856e15cc06e561a81e9466b42a570512b51523527f8e8ffd93ded50f5584315e9cdc76023053d81575435100fc97bd16beb2b18f4a3d3e9abd49b7c8be4ea14f0986ddc18c0778056c117c64593bcca4e67e358cb70302047c435bb5006630640230174e721e26671ddb10c3fba0a5b9bd3c20a479e262237f45e58d73a06550d52d552be0c50a90582ed0d46fe0a68c1b3602304e4c7ed6bdf48f688fe74edb896f7640b2bfd5a80f7645fbea357b5ecc5260765d5ad4dd5fbdb6e07a4f8560344063db0302047c435bb500673065023100dee8c2da917a349f3177435e0c4322b94efc677f4487b38adeb9f123c1d06a4bb917f49696f53dca9a68cd15d0e89da102304afebf429332d689a14961c8c2e144710a7b2ba9c7c63faf9a42bb978994edab20a4320c45ae3a4c9387a4c84e6c2ef80302047c435bb5006630640230189a85281b5f950d21a09837aaddf3329d722a3b8ba1656586971f60cea56f00cb020157669dc80a285d8e21c61c2bc00230035ad5c2164c0f80b0eaa59e112da5fb0a84870fd84626761f0afb59e51518b2812931dc4e80d71a65afe8e09b32937d0302047c435bb5006630640230733cc2bddc61410e90c8e9eccbfd02666a471f36b34999c34afaa19492791141472442bccb8c47a33cd202a43dc21e1a02304e9132ba41638eaac247db7762f60ec22f26c683abcf9c7c19162915a9cb858bbb6a400df4b78c76503501f031d29c8a0302047c435bb500663064023058d0d742ca14f3e56c20eb3459330841d0672fe13942406ff5c79cc69a0f0f179fa86fee8d3ea3ee22986135bc6db5f0023050a0766ab8acc4b9bcdd2ce956a562231db4d668a54e258e2b3f9d2cf802ce9fc0d509c9c5af09f4172eae223caecc040302047c435bb50067306502305aa64de71c66ef77a78e1082b9f1ed58a707d7d29477f5f4c402371f3c0eefc8740733ed97dd033c5de6557739cae3cf023100f9eab981ca9715c0e2e5c09cb4d35af8053f01eb3f74eda5bdc0c0a78447e6c1f635eda372c1ac9b2c4bf10a7cd977dc0302047c435bb5006630640230481559b2c4e9159c98015d2b39673a51ab99010529cb63038d111ee3855ec43b5694b4533548922772ca807486cd373f0230244d82e20b8ea7d052565c25c745be604e21ecc0a8b3f8516707400d9c274c813832a2e2a109038a86e64fd42cd4e9250302047c435bb500663064023055d7a26d5370373e2446909819d06f9e30c2d0dce997d1efb61eff30a0afdb24b26880d04fd1e347526ae992fe91e3e302301d48822051b8d6ae3360df3772afb8ddfaf5e99dd9574980abf42125584059bddc0c4d518602a6e01be58ade70f2b10a0302047c435bb500663064023003e2a9f06944d281e842a46a5d29709bff68ad95dab60894b715037de032bee3c14414497a0551bfdf795052f7e56775023025d8b877971d4bb08ab54c8acc15bb5f486452efa2601aebadc75e85d87f0a067fa0c3cb6ee7c73143125f9711efe9ae0302047c435bb50066306402302e26a32c4e9a5d0d12272725f2edf74884764a64cc2fad31d42c8009d011d6f5d92d393325cdaff6e363b89835f36647023042ae6f9b6f91cda48c11e135f1636bf44376ee7cfbd2a3b5355533fcc21827894c81bf49a2a5b6382583238cf29f50f10302047c435bb500683066023100e68c4fac856fc5fa8a8c4a10ef63dd91256f28125b2ff9ce0c6d15cb1bf9a5a5d70de1ad58fac84e86c23a770a2a1b42023100c8ba461f5b4ed1b5cd6f8b8916a5ae88d4dd470118eb15f913c7b062d2467cc4e8b21c36233fd291ae7fec47cd7bb23b0302047c435bb500663064023038127939678876bcf12952731eb3c36be05617132643e33acf347d0d35dadddc6a0cd2bd222b2b8845518c6a4d83788902307a1052d7abc4cb0b5bc4b09997207fa92b8e0201d81c62c349dd9f634e9a935e80768ef0b24f065e5a446a6c0481cd3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300be55c2b05286896cd115800223aed818c78877403df31c50cb2b45e368e27e64980c30448dd4422d2491b7267c90d8b023015e1e6c3106d83fe21ae795a2895db186f98d501e94db6bd4c97abb624135cf000f334400fbf2d7b018cf9d3754b73bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d10763ea94b4875cedfc9bc94a10fefaff9ff0c93132c839bb1249c5dd024563619da6038a6db38b85f25b3e7456bba3023040af620e1bf6a8ce478fdf45628207b8c9f88ccedc3c0755080e4cd5852f84e345b46c81e0d827217f287f057973c8580302047c435bb5006630640230341e5df1a6a9618e4c5b0b6ce0e183e1f1b627056f40b2d684218ce84d22753c7898093c4357b532da703caaab5f06d802304b89d5d8ddc4c6c4933a899d76ad33a55f2b46f50b9f5008a5c6c8e52480666f6265709fc2e71e3f3549100002debb8d0302047c435bb500663064023006d73f72cf56fc98bd96ddf92520b94bf393a7c70c32f5fb39fc915564c8cbeda57dbe912692b6fc62bcb81064af3da002307d5abce8ec8674c1328cec702c3e24d6a5b4f2bfd2c891bb642dd2d7c18d11d8e5036dac4451a3fda562c178ce71bcb10302047c435bb500683066023100c0c082194ed502daecb51e934f65e03be9fe9c5e39b4ce169816633ad3e54b521704ebbd24c76f855c3f27a7af2e9eac023100e86c6a328f0e0330dab868a52c2a5f56eb1fe8fae4a12715c8b2bc0301b7fd559d47eaf0102464b8dabd4374c54f4bfc0302047c435bb500673065023100a58e806ddceee5e423e373c2e05fb45fa81118eba489e9afee2549896aa72dac3497a219ed9bbe9277feb8991ead225b023056e2d845d502b5f50219e643d5e7f37fcbd19197aeff9d460a64c38aaceeb65bd3cf926e1f035deac8a979c104c679c90302047c435bb500683066023100e741fde41654ed08866ca6229ea1af46211895634a0163917c5281245141eb3821efcc900d1d7cd729ae85f3286196f8023100a8734fdda7ca9fbff119404acab7027966f3040526f64fe1b600130ec102d17dcb4f1906500890048e5a7ede5ec62cb30302047c435bb50066306402302a1c98dfeee99d9c5a3e13da73a31c076fba32d6c215ae1d03bcbbb05794a797e71a94467eabb77e07bc4d60df2bee5b023054b28146b0019c415bcfcd098fd0570a11be3134ef72821d5e3bbf5b0c1c90bd7848415aae72af090a1d0f0879edc4aa0302047c435bb50067306502304cd1e00d9d2011a5e603deb8e3872a97eaf9c8cc5cfa2b69ff84d05d58b96d2fbfb888fc23d64856c9ad2c417dafbd1702310097e4db147a99bee18dba3cf72f31330cb31a31260df00fbc220205bd45f9d03c555d9f900c7f58e8415d79c020f2b82e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ac155d21e8ea3dac9b8e3afd604b10ca1c1a0c5024df7bb429e66046f040cc219bcebbc734e0345efc4f5e5373dd32f02300abc2ebb9ac49b63468713d898ae54d7702e8fa78713d406a5dde396d4fffa583caa53df6f6bef3fd0172b11b91a1bce0302047c435bb50067306502307de66b8da790478a523758fdec678e810f50472294e385bdd4977a122ea60c0fc351a7a72d0fdc34145ee0d6cc820a3802310090f2f3e939b65f5e7ce2a23f0ca45adfcbdf4728bdd075b01c8fb1bb1cd9e8052ceba58145f5878896c5bdfe3ccea4600302047c435bb500663064023037545d15266c5d44de8ebede95e0f3f80cc5169d64248d76a13f5baa60d435d5b0a27c104367221171af0ab34c00bd88023059f0cf236ccb8c8710007211bac57021ef01545c17fc3442977e4dc9c0a49c8ef89614c8da5d3bb96153a243b90c90860302047c435bb500673065023100da0b554bc47f7458eae7d4e53c31ea53180e987553cb0a21b96dcfacfc8899a9e73331e626ba7bf0b44bf4fc41080e83023005f8c77d970e7bdda3795c9a548a20bddd7c0e66aad6d1bc20ce6c781b9c21b3057fa158b4c641d7d9cf2deca66674330302047c435bb500673065023065c65a7ea4ce251d9becb6d0f0f8b09f02a38759ec648771ddfb3f5c431f604382b822d91c22733faa988e956b3bc1c0023100cd04824049fa75b70051a733c1ae1bd562ef9ff10ae9d361cbdbafb7f63829ced39d20ce74b527c47eb5025f4f53c4a20302047c435bb500673065023100e4d2880372b18cec3fb505d7dff8a4e21e075f44b8fda21fe90ac2bdc08e0faa781ec3616a550fcfd8917f753ebcb72a023040349ec262bf322c38f6ca6574ff24c37e6153f77f323940f53b11a146ff6795ea277c690554a98b86968baf55817a030302047c435bb50067306502302dce8ad85b16c3f2f8c7c6cf053ad00105c2b26068e9c8508d51603221802c88fc254addeeb6ce84aef975787528ee4502310081ef10e82d7c1116402aa2100e2cbd9d0f01e4f20e4af36193a0f1dc3f3b492fb0c2ac456d16adf177e445512b6acff50302047c435bb500673065023100e27e9226eeb24cbb4423b0d0bfdc473f821576b93487d2088eac63f26cdc34ce5dee69950af6f8ab94f748641625b7d2023058d2a5e437d1999b8f5567e73cad8f565762500a6be2236f69acbbafafadbddd240bbbf65b3a9b007d7c2c9c5a11682b0302047c435bb5006730650231009206294e94cbeed414a84d0ec3fc6dcdd656037376a2fb32769de478b753b61ed5bce730f2db95a8d63cf0f81307d4fb02302afe6de7e06cc162e56ea72472c783c59b12ee58ee2c231309b24302206fe315563b60715c8bbf62ef156f434b87a2800302047c435bb50066306402303de4b9ecbf1d71bf90208ab104218e6af6186fa52a4361effff37d97f985d6b0505319ee5307cbcae08081154bda7f81023066c88ab8202632c649212220c5ad20fb64a52375b3c06b6727d4d910c189c22633b412748376fb5337984b8364f416850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304874207ee9b74e4e3e3a59dcb1c7a659278e2d1f9243468f7eff9760828bd5849ab106903bb4ef61f87a3097611233a102310081b7493ad3956a7bdb5e37912e40edb6a955b06d9ffe5b3b50e1e3265329db9f73946a817686cd424d40f575a560272d0302047c435bb5006630640230406e12bc13e7f7093530335a0f8f33bef90de6542295fb0dd97f604fa38097e8ee874e70840ca8090b35825eb48192d3023007e76fab3784ed1320239a785df4fae9d72effa50ca96b16df6d3900e48f81489a749738950380af2277de74621b28220302047c435bb500673065023100e4a7097f5f7bf24b0eddcb2e0a625c427e85f26bba66b46c9431cba589c43f585faeb7abc2663c42b4dc5af89a430b8a02302d7d750ca48b913e62f4611f7786ab6e3b8986de6e35b474db30e8d01e2a031845f74f0cec6935be39863eae95c2310c0302047c435bb50067306502307bd678c9b8b5af1d83cbee4a7c7be2897f4ed2f1e347bdf7ede7f354d089dc4f97c9734b05bf84e05bcad33238a7ae66023100fa295213c7e4e265a5c3edea633ebfe088832f48db5ede02c6b256cda0d2d870316dfddebdb6d42583492514b5233c9e0302047c435bb500683066023100f339fc7df257aabb290e9a596b0e2a49672a678a9a3bec1034588a96d27ff6f8d4bc8680170f95bae23c36e1ba6a1de1023100b9f7e07b22308cc63c390b610a9a6f7251a03c96d633dedc911149d49b2a1b0c07edbefaf39190296adbbea718d9fc580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023068a1ba9362215e159e3d6ea87729b6c4191adb059bdab174cbabaa92204fe4ba4d8dbbd5311f804c34e971d9440e5fc50231009b136c725bc474c0c27ffd4c3b29be3956e2589b08c1e21ef5eaef4438d5c96ea1f88be3dc880473e1a32d95176f55da0302047c435bb500683066023100c7d8908cb212469af61a62d512e3ea4622fad07ef2e71a791aa4bef04be001747757d9ce0c989ecd7808f1c4db1c6974023100fafe39e507de6b7223aa79f663e779d3e36f96a1cb196fa6cc4ba6336560bd13c256bb61f123d779fb829961d253f2740302047c435bb500683066023100e2184b8fde678a95c7b4daee38614bc065f3b43299e61646007f9f380637777c585158fda67894f891c20c8614ab6210023100cee694f79086f47da18f6ac7c7583d9d79ea161e9c0664a5c849d57220f4dc6c82a3399fb958e2cabb6b1d9b28be22160302047c435bb50067306502301089773414a0f596c2363330e76079a6e1fbc1b3ce0ec03097ab04e37ea58bf2017d519f238b84bed74a6ae53775e712023100f2a5d06ccfb77d485b1c0cf65d9efee506259550f880cdabd67f5e7778736560333fde858050ba47143e839d504337070302047c435bb5006730650230700528554940e39f181b8f18654270ecc5d6dd5436d08aa245158da6b56e3c347ce6322d1432d926fd792e6edd6a592a023100e792b63ca52d099886743633fbf011383bcc1764cd969414d6af7a6e28d01c600216f9f553f07364c8a46fa4b05860880302047c435bb500683066023100f678b279fe1586a1c93691d53c2d2341534fffd118a975ebe6e73816f6d4c3816a4dc98b4f715155a6c5e14f40d9534b023100a090a8860de1bcb228c5acb2be2ec9157bb905030c4d93787938be5303fa5320866bac99d9c16266dc7b3a864efef0e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230714095c60755fd417214108571525be0d34d162f9f8adc551a9f65ea74c3d03391a94f685e573b979b03e9e515da3815023100e73acbcd4de5d883c04ff171a9666008c2275d1846d873df3a45fb7e456c580a6f374ea7c36daa507b24442d7e10ae790302047c435bb500673065023100d07b3efffb06f6b979241591facc9860992c0295ad9d521dc295105c13e9e317e8def3a9857e2cb93476f5726d901c0e02301dc9e9ace80ad8a175d2868d2ac7b7fa5040f9ac204e84854021d0aee90813972037bf99840b9bc53b5ea50177060c0d0302047c435bb50066306402304e88d90648aaf84617c3ce06d295b488f7890d0f2fde429db9c2dc08aab1e57dd9130bef59a3a70c25cc4f8981693e0602302e8260f43f0db699f3a2fa66940f3318778b73227341e9181501578b5ce11957ac63ceea87ce004047248d49798405eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306d730976f4dfee51e8ee188d8fa5e25327f39d8cf7cfbc48ea6e38176d7abf8900cc9d80dcf939476ff4caf2d2dc281802304214deebb8ada6123fe2f2aa37257ef3d5c0715106ce52c98185b302c68e190194f187b94267f2205031b3ac93c6d73e0302047c435bb500673065023100bb133c5139f8b2f2ed5a1fddb59a68b0e8ddc3b7a156c77d6bd6a0dadaa97a6442ade55c1731ca0004843ee5d5f21ae8023036d650c5176905f52276a3b9c31808d56155d2cc1791f539b6f812d298f1604157895f9576e69b9cb328308d9ab710ca0302047c435bb500683066023100bed3a3c5fe436a06afd36f614618c19b1f0981ce5f47ad77a1b20088e3f3fc50dfc3d4525c2be62d7c43ee6f527690b30231009037fc7e0f917a95e1d61fdc6934c01f3ba866003a9c9dce03e2c1024de21ec86dd9c8b51d318ab72d84192c551235c20302047c435bb50067306502305ffe10aa569f7f17fb2c793e5e1a246444e824f25c0f2c4b28373d6b758cc62a3a27a7ba5fa204c6019ab729ec1a0889023100debe28c7020c544b5378dcb3cbf81f780b084778b930786f6d4666ef9034caf80d2b4a348d75c5f19506f3e27d5bb8230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230127197e15ef12620ae343487b771b9b3c7be77e09dcc6b2cf7eff2b9ad4782113bd7930ea7a6d043a5bb51d458f170eb02304a24ab54b71ee92a41ec956a386a73a13cd32f7f54078894bd15185cade78ef248c1da53a688436565c0ae9b2e463c410302047c435bb500673065023062deeabeb94045e0781489ce82c6f1058a7a6478972f1675d5e90e9a0e7440c8eb8e1e9c058dfa984af4f039305e9350023100e8a64fde56dba716266296a80f206c42f8e1edecd0162223eb8bb58069a17aeb9592a0c3def15040b22e9995d988fdf30302047c435bb5006730650230469824560fb4a50f787bedd593ab61f8717aa966f417ed3e503635d34ec38dcc1a3763dac8be944bb82ca7d5e6d64b40023100f2e12ba886146dbe77deae1b503ef09cf9ee8e30d477098de102ccded2105798f0f9ae25950e772979dd2415c9908b8e0302047c435bb500683066023100e61261c6189d5a47f867df54751c00b90c85faace3a0d36b8e8c70433adadb9e2a07d12f1c9d3e24e52a7db217eaa074023100f293d236b12f1ce65215042a381b2f4adc441b3c50b3eec58675a9dea5fc673e77ec6fe6b78027a19da731dc8e77435d0302047c435bb500663064023100d2a9aa8e3328962f42ca7bc5ba6eff2e8bcaece1abc5a925d6dfe32be51149fe2fef7ed71b8fdeb8fc51bb1ce2d152f7022f33e6e33a4521e59ee3351c4a65231f64b5e104a7626b790c105c3d48c54b245e2b5d9dce3d0765bd4228a117d4dd7f0302047c435bb50067306502302e6501d7d4de58c88a2a0bfdd4c9a53faa373b3810b369c2a8cdebc2688aaaceb7c14043b1417d4f3c2e8fa6eef73905023100cb7c24377ba6ba99053f4c556226fb19d12da7ce4af52636fc51dcb6d96666956a6a88c77dadd8fdae253eb75ab69e520302047c435bb500673065023100d1cce39ba8cdffc574e56f9ad06ad42c548349d060baef93a1fab93e3ca347705419c299f3b58defb6c749ffe5c62ee30230707dcded71311ae23e88f678469ad3dc1334ffd0d2d824c9cdbb9640d82b3fed84dd4f8ed05dde9537bf75ec6e1988960302047c435bb50066306402303731edda5bad6bd027c7880130738289eb92c00f4948d0b3366516af68b89ae080c2155fce553c5d7285b004d718b0fd023075ae252fc329379a3a9fcd7863c9d4b8bd1be1aa5aba9281fc2f2d9ffa9966f1c5de65b73e4688d65df8ae7589fa8abd0302047c435bb500683066023100f69caa802949f9606449e89ede8d1e6df35edbbb98d77834f8825870c5f5319d995c50fda432a07b14ac9d7a60b0413b02310090a70e80d24fb1d705252504066d3186435258f34eb616a60e637ebb4995dee98d0400c97787abb139ebbf6b58c305dd0302047c435bb500673065023051516b3eae8fc535a3f35f6ddc92da063d4632a433d9f8e15a67110671d64dd9869715399d6f5076a0e45ca4f5819ad70231008f847a63f1f2ce61ece4856c61ba241874a3899283f23d1f2fb6cbd3bb9d32c43031c48db5cc4488b0dff034df8d95a40302047c435bb5006730650231008f3fdf8318e13e976c1738ae819c3d632f40c7d2cc3962319e9703f2cfc34ce9ca20d5e028206d839c9bd0581148340302301d66ac386454bfa2601b3e4dc52f5d40e14fa668790f9a10861e94716a603214523f9bbbab914f8e8b273a00ef568f840302047c435bb5006730650230442f94969ca3cf35012f009fcae07a1245e25feced6bf44053bfd82999d2b964170cb2e4f90095be7ebaefd881323df3023100ddfeba64a3d4dc423edb34bee788fcc9489b6e9f64f0620a27cdc0ddbd3c9bbba5ca3cc1959d4153a99a8750e2be66240302047c435bb50067306502307f0e43aad0baca8a73b1fc541935d11e3c85406c62efd5b064cc86d47b59b19415ac763e3c81ffbd34c729f2b0adf81a023100cca412e9ee5d9b8bbd68b1e72d9f85ff01f77f1c1f5dada5017a2a2e8a1fbf6936e4610a95b7a8d5faa9f077ab59d4a10302047c435bb500673065023100bda7e954dea8dd625b82b15d69debfad754f2dcf0a74c0152c56929df58a62dd28e7f3d3475cf4ea72ae7a1de1fc877c02303eac2df2f435bc0df80fe522bc2f7a585adb260bdf8091cc3f1e4b380159ed424e0887d7494e1d877257ebf79c6da00c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a4bcd9be7fd61d0ca31299a3e6d3f4a81144acb2559fb70ea46e8465905d9b71dcc4331bec42c8e573ffa29b6efe4da0231009ae85cb060738c139943c76e05a1d5dd71422edc7406f59b403ed4c016dc671d72ba1d4d9863a6e3403caf3d243bd5c70302047c435bb5006730650230507351226d4e8750ee0f3e6d54989f5e213e90efb9a452a1e4fbec9437b3ef70ba91179493cfe2766bb7182ff255e7a502310081ea97e905682825b6e003d6fec66235ddf78ce3b04368f99602b0303e36fb7efd52344f0b659887a83653475726177e0302047c435bb500673065023100ea134bb841743b3f52c1e7951f37004371fb2e49a9577113efdf37780caa4a75dbd05aa63afa426e391eaf5b55107e0d023017de2b0fa842576ac43971a90cb628ce851c2e1351226b239840ebe9f591ebb8e0c87ed6026bac069afd299313cee0a90302047c435bb50067306502301ff8e9c852eb4ec61edd09d6cdc97a756ffb731dbddfdab5b7eb2ce7f7410f67aa0c4d85ba45cddff606d7716412acf1023100dbb0735583161689f475fff17d8684ff3c871fbe19a8e41e9c9b42efe2af939fb9c399d6c3b19dc7881641ff5881b61a0302047c435bb500673065023021d78ab1fbc616df6c3dfdba9ca5fb47431b19cf8f2f65495a8e9b3725bcf29549df29a6bbe4d5bb3ca4cf94d7340e030231009d8e8dd8d1e9808c818aa0f7694c998ed485d01b193965995e511d489b6112431e8a14c2424c42b879e745f73c9078b30302047c435bb500663064023007bcac7219b84a63f073884d778b76976138acb1c9bc691619c593b1057620b01cd7d6fae5680bbaf4b1abfd22ced23c02301057e9b555f805815d9a1d559ed7a2b1a77cd87a8543d3cd1e6f09ac03092de18f9adde896420c579624a6c0c785bcc00302047c435bb500673065023100c740e4146ff812666b0b60a342fa1faf3332e13c588af16cfd85a15c46542f60609704ee055ec6ace72801674e1d8cf40230330343ae3758aa1eddf7566c05a4a39151063e3a5c3f5809bb12ebab443de9b6d08ce86bd279f4b3f85bea708a83bf770302047c435bb500673065023100eb80d84abe91ba4337ae1b32c39816b9f4be8673bb0ca69c1a41101fc0f2b88f7fc9578c5205fcb6961ec868ac1754100230622a993ab450846d29857e1fc8545f2a021dbcbd3a86b03b9a6a86cdab8170424bdf0b0ddde13b5b892f2c2023047abc0302047c435bb5006730650230186cc960cff38f52b8ecd038a29be480d487690c2277caf02345530eafb962514ca9bb8eb303f52ac9bdc560c8280a32023100f01c32d2e27feb308f41470de786d7eda67fc5b464c0ebcbd9f8f2e3b96d30042a57ade44a72cfaeff5ad6253f852a8d0302047c435bb500673065023100ab8869997ad04f81812f149dbedbbfa60bf7985f6ddc79551d3b8253f808b453822bfc62bc3cccac2636b0ca2f43fff60230313f6856d42b27808d645b34d80aa800dac4bac49dae3c194c3751d862686d67f1afeea4b49467b477339d0e498eb8ec0302047c435bb500663064023049df7304b6d8352a38e102bd893ab1cc184ffb64f193a26cad600a4e5041e2484de181124665db56aa5d06845630c65f023050b28e38600113fd5e3a9a39fa0119784be1299f2c03a91df974a83d1d048404e2a28f3725c4205c54e5213a4f6e52200302047c435bb5006630640230304e8ab55fc9961cc2f2a546f938107a2902928c6a0b4c5992ff388ff915b1548cb95300c399986ba626bcf0b574787c023008ab8d37d2f3562ebebd87dc4b2682dd7d062b080e4d33bf9469b079f942e0c41cebd91905d9c219787621300b4f27db0302047c435bb500673065023007a837be3dde7dd709c9cdd07d7c54baf765daa94d543fcb2e7526659f9de980025cced5911c7b4113abd498c704b54d023100d6e745dde5f027a6e42e13fdab4bdf33a165196fd8579e390e82f44aefa6a0f69bd601de612c0464113c8035019c27d70302047c435bb500663064023022bb9e54db010dda2fee18586f592cc8bf41ac6b0ae592253fb36490a00dd7b0128e85cb44d78315bc4247993d8ddb8c0230340306892916a78695e13c8f753b0eaba552680862b0ad59ec743f053a27a77ad8493cfe2e4caf5c13257a10a3629c870302047c435bb50066306402307da1eb6ab1f0e84f559bbf57ba89af6c2992908c61e6328121e8927880686108f6e370aff5e88aec97fc614f426ad4780230250c94792eee355a3bc765c904ce42400b099682676910596696f821d073e24238331b678cbdd3b22ef0ff0902912c720302047c435bb50067306502303b4b7f103cfbab9f2e71a22ae468782c39a4ca2465e5e4ef279ff18826357912bede8ed1b0b5d768a60810a5b5de4744023100aae0b738479dc41549ad924be7aa238d648471a4fc488732fec7d8ba41ed4c3f12a594cd3ddce78f844919472d5da4710302047c435bb500683066023100c702ec3808854759e29ed4b9c5387ee3d40bc66cae34e53211a74b5af255220a118fa117d2ba846780796851e63b875b023100f7f2d5956cab7bb81beaec1c216367e90f864eda72239f263df1c12d0177c08467a803c0482a9b41200192ad92ac3a740302047c435bb500683066023100810ef44efef4d9fe2fcfc20b75cab67da80e4bc6e97550618712507e62447781405802a6332ea50183fd9e008f1297f3023100c0ace223586f554236aca2dec0ea9587d472fcbf7e546b68b83e4eec57d3bb3e9c832251370f4fdf3245f4e9611cdc740302047c435bb500673065023100b809426690141d02a84f62e63aa6fffd09790be0e909917e6c7772ab81834967aa9a0c5acfefa09750b77d738433267d023075355e7f67a31d3ccd643d1720a1896d94929b26fe652b633fb289decd0b3eb8c4975242863474ac24405545b569e9050302047c435bb50066306402305242a902b63a9589e11bf93573e3036dd312aac38e20434d986719fb2df29048b4ac5d36e9abea2e90f00e131908236c02304355cb4a34d5604c3d7d02c251cc3c2851a70dac1579b67276ac66698911bb01e270f3d0cec6b8681054379215f5233b0302047c435bb50067306502310080986fce499697408f65d56b13f33f7689a441cdc472b3c2be07958dfd31e7cd56047f5a6d944bc3d6d132534864ba2f02300d25c19facdbca992515e94f137a80cba9b39f28e1d1677dc8b3a611d3238a674f481b706e4a2fdaaefbd0336ded92ff0302047c435bb500683066023100eef2d48899edfb04a70cbbea793bc088cc6868b2870fef4a9ba23004cb6315e4174356e3c3ed35bb0188a4abe4cfaede023100a7af4c6b6348bbbd51bc2fffb54251239932a5b25c2ee9073cff9e4bc99a671f111c22ba3984f86b52a9b6884f669e900302047c435bb5006630640230567a9b8b34bccaa9090895f4ba070e826a2e832995f799f60318c573bec967f5064acb591108ef80bb9592e480bbef6702302d3117370eace78413b5e095b951c87339a650975738a9549db57598ed086b13b528c391b78eecf73972d2fd75b34a2f0302047c435bb5006730650230625df5e121f195345eeddd95cc2655870df1a519d29e45d21b13ae21a71c021d6fc60bf37bd51d22a730998d7152f99d023100e1a5606322e3f868f9589ce36a16d5126f14ccea4a56f340ad2a036fb3eb969ace13d015251a19e7d6cce76bf843a6ca0302047c435bb500673065023100ddce46b2464c70fee32781ef86f6e1a07775fa1a6b441b38cd60d4d8138752bd2bf4f99e4832365fb1358d751a7b565c02303f3f701cee5f0a0bf8705a289730f5cc7785fba8bdaa2be4910ff56cc059f9528d55eb0f2a06f7eedf90a9857a605e480302047c435bb500673065023100c4ae4249e6d4259dcfb684c7e10c02dbb1abe9242f6b89b7b66a033e19101b6665e03051693d4ac2e2ac9777843593630230785557b4882d7c89a629a78753413546dd27c7eac1d0da429bb7cf2d8e00b22778579561b14bf3a6295f041a2434a04b0302047c435bb50066306402307dcadb56a7598140c243be0738d2c155406b38c04d46c3153845d82472590888e6beeb729f68343323f991c4d1beb14d0230039e155db5f62584a60c99ace734328018fc695e2162d99fd2dc9cb53411ab409908743b1fb9903398499ad16f8fa15a0302047c435bb500663064023019963696188a604d9f335b80cc5a26e6367367518295b4bd43b07fbad6b878a5c698798eb366fdcc2ce02f137223e09d02301cfc47797bd03d5d3668b28dd056831112751718f08e45d468942d77de999203a5cef868a3ebcacc5681abb2cd3659680302047c435bb500683066023100ccdce54a4984c265043c4871fbc93190b58323d1f0286306fd9d739d8487d991b33ff9e9843c65fb54ff535561128ebc023100d50468915a39f4857361c9674620ea951e6264dc6c1d1e3c18fe25a4bcd1fcb26b92ab72f7acd207d1700b0fd550902d0302047c435bb50066306402302938037fe0d21b4cccd9c6f7cd015e0a317c1bec890ca54288900b73c8ab4233cbf0c723badce4b3a2931356325ffa0202307d0e84f3dacad98c2ab92b3441b4d3a40dc0458ad2d8ed235728709de450af4d58b358bbafc148c1fbd319256d5fa2060302047c435bb500683066023100b5da881fce7ac905be5b8f00601c9c0d6ffeabe473396638fa85ffc2d3e2f3aa5dbdce0c490aba477f85fb341743be8a023100e049e9d332b42b136a8484ba4cdd37219ff2414b7f67f7520177020997bd769cc9474579e55ab1f0fd27f6a63c577a910302047c435bb500673065023100b856c329708104ec2d6dcddfaec3ae1e43840752266f05be9721090bedaef7a2a6cf8b1b28388c39e8ad8c0c22b5b98602301f5bbf6544d1a33054495dd32f59b3d7ab9b9fe8ec9e1e3ea8bb28b051b705f4181a1ebadbfaa1648bc4245c34d800690302047c435bb500683066023100b6d4e73a38ec7aa7bd17930df0c096a2df236b1ea6673d6279d5f83fcb0e8ced7fe5303eea60c1bf2e89a92964816acd023100fb989ea210120f9cd9bf67c1fce8cdeeca00621ac13ee3e422436486e3d5b4cbe72e24c9c0ca4495de2e4f21699e34380302047c435bb50067306502300648c79b289baaabbf76e53f0abb3d0bc94b178028f17493c4b8788a2f43d5af3a86e02019a7f37a3dbf925d2400b0ec0231009329d44105e929897e7689cf40300255688cb17484d8739d79a55056a6133f90a83f733395689bd380909df6bd05258c0302047c435bb50068306602310096fe43a5e73fb18691d0d58759656f3dd9ec07756cfb4fd5d41a395e21cb985f42d54d2f7cf284342cf94e2ae30dc92c023100f4b51e333b90ef1af7afdec606767eb1b2ad39f5ba3b2abac143df461651bb1e9e92f655d2a96ce713e634bfcad12f6e0302047c435bb500683066023100d4ed46c7b4061751d3355700fafa09847180b05062e1f5ddcdd5fbbc09f8cbcaa6529444d5d4291ed9dbf1c7b7a179f1023100aa50d945e39c2e09265e73db5d01e0446958b42c94f18ee2da92888bf40aae28bf9884da85b53186891a0304da7b365d0302047c435bb500663064023079bdff6c891ae226fccefb1736f9e793ffc3fe3213c842603a5ac36ff5c0aed52c10d302e6d7051f0f9e032180b707e9023047b7a1d90ff353b231b21d8ee5f23a1fd14102ab323ff2493378cfaab47cb628102ffd4f607b31de89665d3f9d385fcd0302047c435bb500683066023100bf82d554212f5f9ef99acaace921307cf2ea6d4ca5de1a1111b8acd7ec215e9ebd88c5d48669c2b5110c933114f327e9023100ddefc9d539e8a943f4553f44834fcd61282835e7db12db78d10d5c1ed87ec779b406df026ed472482c09bf7da11d0d3a0302047c435bb5006730650231009e49add9c3597999d826ad4b56b3bcdcf498b3f2dac992198491b89d64a801d0976035cd28863c0d65e1176849637583023067efaa204c9b255dfac481995671b592ba1e5683aabfcd79595017c9ba74b8b61036f341303a9a3ed982267610b0e97c0302047c435bb50066306402305eabd68dc0c069b528de523f4bdf28a554b9e0c2a30eb7eead794fdcd431104e5b347578cd9f5a80c11295385f7afa1b0230773c63dc5a21d818623eeb7fd827da5c4c44b8aabfffc44078fd2d0f76a7b4c197c96659336ccabc82ad59c6e3c813920302047c435bb50066306402304bd1fd21aefb79da79d6814543ce368cfae1eb38f937597c48dd80faf9e957d02aa77829896425b9063c4d99d7df619502305c564aa5b3889ef00675cf6898ed6e15ca5b86613687affc89c7d92b57b0d3d7a1304e487c5aecaf8494de56ed751c8c0302047c435bb50067306502305b23fa3cab8a16275e4b9bbb6c84da74d8115e19df2ab2f414326200d2a3948532b0388a9a7cae87fba341d20bbe5619023100b0466d5879b0056d30c34467b81510ec9897de5f81dfeb1da2ffa5d2ddb054ee81ae51441ed843aea7e5f5dd9a6545b50302047c435bb500683066023100c6c720009f27cad005078c819d51d8e9146f0d3b8639799e11ed29ab139d7e68238a16d8ba8bea627471da61dd75303d0231008dbee18773ae69fc2e05ec91fa66677bdfcca035179ee5306e55947b15606b1062663308d40b8f2db9df14a48b17da610302047c435bb500673065023017f37375e2a2c38f2e5fea395cc1afca9bc5f8f7787bcfe34f5d1fdb7953d28cdeda536d198fa715b7c82403559c80c3023100db238a5a7f358ed74e187f2941c6aa0af47aeeb1da3dc15d0fdafcb6e91cd2a35026e528dab54c8c09764611f2ce4eb40302047c435bb50067306502310096c8a538c24242fd98e3c61bed50c904e327c11f05e249e4f77be03ab87bf4ab5b6e23ec4c824c84a7a35e80132596d9023019ebb7214dc8e391210d6b8630a1930af2db76791654b6a291d5f6e1b35d70f286e8b24693537665696280db209c2e400302047c435bb500683066023100cfc870ad00360ec91a3de40d121ca19ba0ed9d077cc1a3f1862519f0695baf55f95ee23fc6f20b1802e467728746fd9b0231009100aa098d5e10aa5e8333d803d0fb148b9ebcc3d2ef186b6fd34f06c9a6cb510e5a114091a27af18b318a318a076dfe0302047c435bb500683066023100a6a9e33c5ab83460ae77794625ba8c3f023a6c3caf48b5df88eebb6d8c09ea5cd48ac45d9db57f27de535bf81378789e023100c1d33121d542b45078722fa95d9fa33f0c7bcb4a3b7017391a5509b670a1d18291de9605606a7af42cbf6f4f24ac62960302047c435bb500663064023015bed76af01d23c0e1b93d7fab4edb15596e19ea0e04340a03cbb07d15750a7265b3dca5f7ea2bf14e16bee311d1bb1a02300146a8296b7b89606e8e674e1b4e19b0d23f5415299c3c22076e737b9dd12ba466695fa59fd3a571884c6751e4ef98810302047c435bb5006730650230336b8e756c4fb92f34427e13e876aefc2f2a1a6db422a7afe052af94dcb51b35a1b47c21d3ecd4073874c7f4cd6f399b023100f8a1eb4a46ba5571bb1d535c65aaf5f487fd1c430953c844c5b3bd7efcae14b06be4ac713d10e0b4b334f613e8cbc3020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023061c6e702ce14b47e259159c12381b043dcf90e87823224ec1b655618b47bebc3f9f2a0b928683730296437755bfb2bce023100948c6c8d8b3241d6112643d8521e686d58699acade560c9139a67c6347135d497bb6cc0a03c1a2553c5e32dc61aef1da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de6631cd6016790e8dab123800a12b5a7cf8629d268ea617f9000d7a01f4877bfb1953f0762d5fb01620d79c7a2c03f1023052183f197a86e3a68497653f357e24d9bcbee908de32d9792458b103562102c7202b6efde18aa372f9ecbc67b3824ee90302047c435bb50067306502310087d1d3428aaf9f68375f29772b2fc8ed32cd785980b3bcea9e9ec1d3727419f185c4c7393c712348d771f328cb8c2fbc02304c2bc99fecf1f6d268411229490e32b6f88f3f7b7027d4e0accbb0512a8a76eb5742724a6a68e40dd0b7833fc0a6e1610302047c435bb500673065023012ac8f65dbe8d5db3d614ab92da1b83f155db309e0bd4998fbf846a6ac976ab58cff753e7ceed43469dbfd1c5660cca8023100c41c476ae169d9626a55c3d977e4e9efff9f919917d1e030d37fdeae5f97d92d0bc499eb0697245de70722de38e232470302047c435bb50067306502302fbc9388fa73ae7973242a1a6501e1751bded2c886cd66050b185a1fdc84731397b4e5dc861c0bb5e86ed392d1ad7172023100d2fb41d9c3ac5302248c977dd195a7b5662bb1c5f7650619502cd62449623619df88b6a4f0b6c1160287ace0a1a4ad1e0302047c435bb50067306502304951d3bc904570d48adaf55b59aaa342bebee39a77917836b7cb4ffd99517cb06072c77228ca629eadca352011011312023100b30bd115ca8eec55f78ff6b42fa72c8dc0578f27958aef26c8591cfaace0a90823a94f4c902d7bd9b7e14d56458542d60302047c435bb50066306402304abd5279bd2744fc0b1a194c37a77c4c0c28e90eb115b8a5d278493a87d513566dbf974e63996e69fd4cb19ef053bf0e02301c44a088e3c2170d298e9b8dd1a8c0bbd8499bbe2e1799315deb746a2b7916ff0818f60218c7a47c1191d57b7501b9380302047c435bb500683066023100f40e46b9018ce691f6c66e9c696dee8655fe6421994434dac336be2139d3582505edf33893dc86b5d7f0e87ecf01a6780231009bd4ab8acdd6d213681f4b9ad3fdfa6d3a60ba8f92a067ae64ad65b1d2a69f4db636bf45d35881c2203c72b022ac9ee40302047c435bb5006630640230326fd67ad36ebec1eede3ff875378b777bf0e938f1ab7909b5d7d62d0968cb9dc4a19f6a10905a099df7401cb8e557a20230576922f1669f6da24bf49b6cc0c93966cdcbf90081646f516d4d94a467b3e6e9e5765e886e7b79cca95449a395411e1f0302047c435bb50066306402300e9580e340ee416daf85f5bc2d89bf10aa16a49aa9bbdec6d9e635ffa76938fad0c571f30038915aee32e992f5fe8de5023068bb340bae8897ca8a234ac7f64cf95f8d9a3f739e02c977f94fe5e450def7f073651ceaae4b2e9213a7e1c5e0b3d7960302047c435bb500673065023100dc3d0628d9b42a48f4e69160cf2cfc2f1ff66e60eeff908b7625bece8e739c37d24f3ab21febd7be5cf9e2689378ca1a023022f54966e5f4ab335e9dd5638ac688b386b1358bbe4e69124a89a645d085058970ee7f096ca5e3511b2b90747ea338400302047c435bb500673065023026c208e0f6b517f10eb344bbbcc1712ae91a70e592e9739eeb356aa8891225808039500c008b9a8595c94b57e904f11f023100815dbe55534906e674cbddf18a11749aaa7e9fc750c3801ce57530d9441c87ab3dd7a5ff62d89f2dc708f2e34fc8781d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100844250304eb6a8cbca6bcaf33482c46cedfc7a3a866fb840a816bb4219948fcaae2349373246c4e43b6534e3d5de921f0230324510c5fd21b2a510358a851f36250f3e164fb58c6945287d2a2cee90da5709c651cf1c32ecc336d0e98f43970c4cfa0302047c435bb500663064023064126556f130e361f53b0a1d070f7be5406785644eeafc01406df96f9c74af5900a7e160d14445a42225a3c805ff5a93023019ab9eb2222c057cc3405be4e29f390a5e056a8900190bac86ff0c036a45d41e95e61fd9d6d28a2102510f27e9b729ac0302047c435bb50067306502302399b57ede6b27df395e5ff89fa30210dd4113f7c2bb29b9b6176ee2e7f426b80a4f5c5891b5719ca7f0eb0f7ca52440023100a4e275b38f673aa6f9c5a31cdc983bc0af16eae8367deceb026c43cba1a629d46f129538d93422b90f1e70df0e80f33f0302047c435bb5006730650230404d9dcb2a6aee64ef3f2e36f6f30aebe21d4b2e8741fb93d20fb599d2bc95fade70f4826c1137f604ac1493dcc0a191023100eb73ed24585499c07d3f537f614e5f1524083c671fe9dbce301127165d017290c9f7df5cf5ab8502414948f61fee98c40302047c435bb50066306402301374f6cb11e1527cd9f823453d19deaebff173d58e861649a508e66bd87bb8ee52da9058651388ad355e7f15d8f5c9840230394e24c0cb3e7af53f421b68fbcf0f475f0b29b20769e1137e8dfae966361f1ab0f499f8d264c52ea6048921afa65bca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306ce0f86c6b7b6614428b8a78661df2de5c4e6cc670535208e9b9f53848ea5ef6b0a694f8e1ae85dcb16b19dd0d64685a02304ffce4b2dd20cff33b65e4ec0379dd234b5f21971f0e03fb308aa95925fa26f8d4d887232c2ae6d764cb3fb68a3556010302047c435bb50067306502304963e14bba8d69111203ce0e72c8aa7f16a9f92a1fc4d9e6cb4f80854277d38a61ba5c49f6516afea8cb1ece7f1999f402310089f7efe73589044773c8880b755f8294707a99335e0225a93e7f947d9ff29ce0dfe01aa99d55d28e1ec7b11588532a860302047c435bb50066306402304dc26eefb2897840a14a0b1aa17451dd9d1387e816a820e83fda247ae5736f6a5edc90c52a01e2790e1bc7f618a9497a02301a3e47ece8bb7b3c2d835409bd99f9034e7d2828d48923583afe7695450b67c705f014aa41b9c8ce99eef8f55b70bfb00302047c435bb5006630640230380912abea3bf69d2cfb9c242eb9f2938217a2c67ead3dc33408dff68bbf8a18527f22e92879985b0d77993b1dbaca1602307afe54d5f7c1ac397b2db73142cff8b841aa9996f8c9fb07ccf5c3536989bfe4531ae666fd60c95ab6d30b64b5f77c870302047c435bb500673065023046e0f1020d611f615e79baba4b5d77144a27c3965f4bde076e156f55296e88dd9c74e443d950d557c5821f70c53c1293023100e8259039a9cc69dac040e6019123a2303e93bb5d29814a9c63d4e735a1269b2294a7fe20e85961448da5470cb1e72e480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301dd824d683cd175106f42429e39205efda1bf3a22cadf06b05e0b453c8b0bb7ee06d10b3fc1f6e9c09eba5bc8a06d62f02302ae827fbbec231d81ee4faa354eda584640c8eefa89e2e59ce77f39efa535443a8ee73251aba0291b754b09e300cfdd00302047c435bb500673065023100a5c110e8ec39ed41a63263e94b77d303647ce2230f7c1c7a9651961755fee5bb27b868ecf3711336eaa5336d18b8fa3e02301dd85ec2351ba6e26a2026f23af91748533aaa0f8672d138007be085099f420d6e386e51e08528df7f8fdec7650578690302047c435bb5006730650231008413e3a132543d4386203270bdeb958c8b92a94e146bfd6deab9dbeb4a3830aab0122ea2faeb8e5a69bb351b476332fe023030bce52be9ff8a803159b756980b040e0ad3fdf9f99c2b9cd038cf097cee6fa5a719a5c648e9dbf1de33af7328aa4d520302047c435bb500683066023100ed84435aa14aaf37030a5b9fdd3d63e434a051ed3981b64b36f212ba37ba7cbc19960ee43418c94ac9a2d84808c79330023100eda5ad472bc521cf5a13c9a67e243b4361955c743713972ff29e81b26b2ace511cce7d0efc1f4f72a6b973a950cdd0a20302047c435bb500673065023100ea2de3b612da911968893eaa24c667eb9e1feccd94c70914be7a1c251616ceec0553cd65d7922305c939d162825fe424023049d0391a2db1a305f39d4aa8e02871f8106c9f76730a5e7ed510c27215874da68e26b1ac209618ecaa366a26664f09050302047c435bb500673065023008e38fb0ed9527f3b86ba2c0aa42c436e4c7c33c6e9151104a843097503ec70609f40347856d0f813797628aa51b1fd7023100ea97ef01b7f23571a57b26c99e8c447eeb698b7f25624f84569998e34d9a2f6cdbf7782d62d9d5cecc94acd7565383300302047c435bb500683066023100966939e8063afbc6e1b64bb0b383080d15e6ae2baf60b52c3cc031a4afb49ab804242c7df3d98c0e0a05eafcbc530898023100d9568f60c2bb9a3edea170ddfd483bfc399b977bb33a4d8c5262fed801ed6d9ac210141567e30c36cdca8fe2acb30dd30302047c435bb500683066023100b2e1cd107acc912dd9237c479fe7e811c85845f29e1600d5f4fdea25619cfdb75a48fe1436fa403308c3f70f063c434f023100cf06d28e345060cfafba517fc504a9f67f97839c969d42c144704eee7e4f665ed0a0bd7215224fbb44f634a768805d090302047c435bb500673065023072ddc58609a5c8e75671fbbe41860b34295547be073784790561f3675bf513cfc30cd8d74e93a2376be51e79f3a005c2023100997e0209c0ae5183586b16812b672d843939c0c457af85ed0ef8ab535af73690b8fe6315f74f0f3f0a6271f284b54a5e0302047c435bb50067306502302832fae4ffe92bcace4efd94c696cfb0d408247f6c6a9c22d42c51af8cd2f6e6a8775271d00b66f65572c760ad529e2f0231008c9d79c90761593b7c53df57bd39e7aec6735e15658f32068cb0e3b75805804ede79bec24037417d39ff15e76e2845560302047c435bb500673065023100d75c6ad60e53ccc8889a4403a33559ab46a9add2216995b7209ef0b3f8147a5a4182df917bdc4c0cc01899978abb6ae7023044b564be353e1af7ec9dbe1783796e38ea0063623cba415e7b0aa99b13e496e80cca500a751f248eae42aad23425750a0302047c435bb500673065023064862a8f809e9975cf067795d776dbf707caff408b644e9b6ab2c7b6840932dd875ae3222d4d87a0817315e5013482cb023100ab9ffe564e21f16a6b8f91b7a57c42ed62e5c3089ebf832a2e49ddad97e1ac2087ca2682dbdc63bc32b0a8c0ec7282670302047c435bb50066306402302ace94358b40d6681ced0968d43d24c9406e6cea259eedd18b0cb0586cc85739b91c635cbb315a86257c09d0feb01e9b023031c140fc12e218290320d0ac755d317fa52bf94d9f46463a4e34bb413c49ad047e364ba70d0e3969d61658bad41d884e0302047c435bb500683066023100f36160f118856cf3aa58d562010c6d22e4d99e0ee6fd6d3d20ff345f846eadffa2ee4eb3488e1640b096469fe3a62680023100c7b02afcaeb04ab532e400db936eb0e79deea99b08bd2b43a3d0a220bd38d0c6797d33022bcfe70e8aee73302e92b5360302047c435bb5006630640230380be5eed2703011ba2d51079f6b53bd8fe865c7ec33e84efa70ec402fc024600f576ac86d078bff74cac2b8e1a16ceb02301a27999574ccacc9949fe1557188dec21e0cf750c60d41ff2bfb16a32ab0f66eecc6a0da361f61010144fccb390945360302047c435bb500653063022f18cbb88634ab2ce41cb8a5b2bcf212e944fdc70b7ea3ea493b1ef85f57f7c7593d6582f0fa0edccbe0fbe5fad6570a02304c07682a824bd6d38b8d21861a4debab6aa1a278cc074a47a23ff48d63646aaf5ae815250928b7ca6580428a7f19ebe30302047c435bb500673065023001b7bdee07628be1ec25b448eb76672a17813797d1d31242022b4724dfdb8df26de10927818c74a50262b6f9f3030b59023100ef6fac0ffe5ee18a83b80324457f5af9731030ca763dd65a3aef7b05a013ecc3c87f9f9e4b9a57317131e66a0d6c65d40302047c435bb5006830660231009e6c81034f7332ba91261c375dfd481b6d533f5f1e2dafe661da33f201b3f4b578ccd07c6ba1c5a80a8d3fdaad17a234023100d33234edf1bc4fbab8a85d27994c301007fd35d3b6ca6ca74d1f4fb3014387cfbb46e9d291526e947d3afcdcc6cb16150302047c435bb500673065023011c0da34e3d3aeff0da636d12d794dbf5d2bb67e6b3bb1788c137c043914b70bbdc944f78e2f32189f97c8afc19aba3f023100dccc980506c9b6fd2654b6a3f4ed2645e2dc86e52d7575660c7103abb5ef5478d2f617f0637d806cc59d1b60fde9f4ca0302047c435bb50066306402306cfa21ec9274c8e55992e43397b0bc60f33a7f9061ef51c6f5b6ee27013930554eab3fc1128ff2fdc063229feeb75abc02307ec14e922251c05dd3d7efaf97bcff27574dc13c9072237ba2c47d1000961d3b00e39024058cf151d838e52f86baca4f0302047c435bb500683066023100858db418daa99697b5497d5ecf5be9a1d6a37decdb6727685fc66bb139271230fa2142acece876c206248ab37740cea10231009f51ec37492b737935c445b7127a68dcf7da0063878873c0289751b79c6b92c4f6fbfb66ef29ad5b5e1c0a51546fe7110302047c435bb50066306402305b257190a5026538dbe15de1645d479906465647acba1b3c9cb51e006a8c0b136f93ce54367a395e9c5dcbd7dd61e45b02305337d2adeffddb9a07724f92676cf12fa9a40f7f1ee19e8d37129215245fbeafc28b1a7d50783393fa82651a4140ed390302047c435bb5006830660231009403fdfdacb36c142565871bb49879fe5bebfb71aec17066ffcc680ed235811500ad8526f50032459927bb62f0090dea023100c97d31b8f17133d9eae725f670a53526de86b76988cc30016b583dc7e13e83c67e3ea1981af74cef923c7b83d19e37f50302047c435bb5006630640230371b42adff4a61451e3046454ba0e718e8c470c54ebefb60fbeaa2f3e9d2442602fb183a5d8bead8176b07bae82be55102300bfe098e393d644e8f8a502c2f4f2a9bd5f8f76597c17458e02b1eb2232151dd3f8cbb66ccce294c45d2c41402b5490d0302047c435bb500673065023045f724572772de2c4a53455dc7b869dec6152f27296e1260d747d81019e864db7585915a9681c9567ac3e05aef8a61640231009cad77a2f0c73d6c2894ea0b080f0b2db69c6e00dcf374b5141550fd37e661dc852ce3c25922b4fbf67a4a5de763c9a00302047c435bb5006630640230377033ea7a7a74c2ae70c20089841532fcd3d203bba9b7a5316b27034470833a4234bdd74479474a2390394b31eaa5da02301c01809eb7fc70c946dab68f3da87aa3287c333e8fca991d01b159aeaa709f8eae649d8e49aac0c89773132ca3c66f3c0302047c435bb500673065023100d34cc982df6c15fd1343dcfcd4038236c5acd40d7a339839d609f294851997197db209d9791c19eb5d1e09a9eb07224602303386d20876a3ca4683c381ad05d4caede294a1a7f9ae19eecd89a8fe6141f8c7faafe90149f905086139b749c4979f3c0302047c435bb50066306402304186059b2c42684acc789fa26d2ba7c3abbbb95a0078a6831bf3ccf3b071f504ac73a2f3367a7d2d6a59d3ea1d46b6070230758873ec570a7834c4e3443d1a5d1a183d9caeea7b22094f9b79445ab5680a320122eab39f64449bf78548084c101dd50302047c435bb500673065023100fe401f2bccabc8f0319d01dd015bb130240c4e556bc19e9dcfb44ba08d48399dfa46888e4319a561f4f0e8fa1dd801eb023000fa21cb095f7fbb02a4526cabceaa3195a23d61ec42c7611ccfc18a4d5cc0e2d8bf57e195de5697a6aee40f1e1836b10302047c435bb50067306502304a660977db51596dc2fc8cc9109f7d04864fae699b28588206de97ca6b77d5047caed9b5d0723d5cbf613d4ffb53556c023100ceddac375fb51a5d42ddfd838c2048212e4af062e7b0e359c837b6db2ab57f07cf5500e7242ddfb9523d715b109e30b80302047c435bb500673065023066ec4b67c0cc4c9c52bc1ac3af564e47ff4f6d5bed913f8b5089f038522c298cf44b602d412a396ea4d83793bd50525d023100d16e349c84702c30ed8ee40869f190b59b96acf3e2f7f7551689024452c73d5514aaf51300f4576ada1b0524eecb9e700302047c435bb50066306402303f30371cfb164734c5395e4472e8d8e1d44e5a0178dc22c13bc0b5b361ed94018df701fe24993052e816956011b25739023032f62d1ac930a1b56ca938cc67a81a7dce329c8f3abfdabc1f267d8cff8a0a4f0fffebc86fb438457def07caf8bdad340302047c435bb50068306602310092553a0f0b36825d66cf356f6534fd15d451b85c21cb6802dff8b9d506288db72b0ad015e4cbc69e70ade5c34ae1d74a023100ca8080277cd21c01e875e8a6b31c48b662365410f6d90ab571324741adea11e4ce23cc0f0d21369803f532a955db61840302047c435bb500683066023100f1ae48db0bde009b92d0f420f821d99e48f418d9b9061d14b704953ab694f35a733d4161824ea9f29ba7037c78c4e6b4023100e820651ce9060ac912e50a7e1895755114acb187fb1415c506311c3549488adeec7b491fd288bc1560bedaa94958ad8f0302047c435bb500663064023040be3ebc34c891d3313648bfea583b4bfc1a951daafbbf3491b51a77cd208f9d86ab38af9196bea29a46fc58a3fffc0e02303733597cfd400c09552dbf980552d015e01bab816d4b9c9422ae98b429790342d0f931d494444615f3a489a406429fd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305595fb8a962b14fed8f95456fd5e35570b109ebf228e6fa88903f1742392da9dddfe37d6aa627e6de594495cddd4ab6d02310088052b8c3154767688e539888e940b5c227509f04d668a1a62cc57d6fe4228285ab73a65556151e2d9c7aef1e67df7a50302047c435bb50066306402306852760b0e3a4a6ef84526d5a6015accdaaa5063c9b8d8b7fcc0130274f886319230c981ce1d6f73afb444ad6daa41e502306938a8aca431c915adac71db4fb1c340dc00555d222a75344be1d64ca83383ec838558b1312583f4851c6d82880790920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f818c2edbe4904b1443c8305a8af9afb7a4f4d032b956be98da3a1a43c329936133c828570441da35d77c84f9b2201ee023100a6758fb099699fa62b34155e349e39ce16cc788fffacb4d80719d502d43f909004799a3f11ebdcd70ec8d682c72e6c250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e35c7fce4f9ed51a2cf950e2859175b83e78ffa2b151811967273fd6354fae532d519e25c0dfe79714cdb2ca3f311561023100d3fafe33856a3a3665ba65cd4ccd2d3fa31ef27180b895f065497ea8e31e9ad01ebd78cafdfb2e385562c491e123466b0302047c435bb5006630640230503208e64b89194ea1e6f56072cd930e436d01716b268eb8a0f3495b46656ee9dc114f7d991b5d350ae728411ffd31c7023028898ef891fd7b6331c193c6615967c03a2bd3baea6abfd1b475b7732e8bf51358ff56e20acdf729445e7852dc8fee1a0302047c435bb500663064023059e54c4461dc5f0a1dc626cbe346caa78475c169a54bb05f46fa0359c1c6837a8afb78df18351e275d38bce547437e030230350f71f2649d88971a459b8a57c670056ff97434eeac263ac480a319ed007173eff9d36b473e9a532a56748731789cfc0302047c435bb500683066023100cc1a80351632fbf6918fd6fbed632ab68987ae7e055cdf6f1ad1055c16415c0430c978a71f3261cd88a82cb23a8a04f2023100d592ee8a1d3decc4ce308e0cb8a814936476a85e2739542e8bc726af2b993f012111f698812f1ec5a678ab79e9b9c5670302047c435bb500663064023029a876f86f8e1fdd50b69124c581155d10bb734f5db382148746e6c3790e5cf8b5a1906c024dbe3e701ec42f046732db02305bd482ff3bb2b521ba1966a5456bb557d2d92ee15d62e534e135ca9ad462dbaa24afe3681ec6b43e2c3c14456bb19b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304eec7ded5c0661b9adf9098557a1fe0825cca32aa8014982932febfacdde1d1925c69d3817a712ed85d92518c771df8f02310095db699129135f7bf2a8bfcaca9fa3bbe55278f58fbf71448e921998bf8caca043d855d513f11709c4d4a103c560507a0302047c435bb500673065023100982424b1f97028d231d0c540e6fd052fd5c4bed8595c6893e0030ebc6a3007ed11079fce0f40548286eaacecbdf6d6b50230650ff7a295a866f3cd639c95732d8e0ea75c9726005ba4746ab7cc0140d74f401a048f4b3ca11c1275eddbf6935599db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd811929e050e84ee37278cc61fd412beded048c800558c82ea248da75601b457cd6b9c279578a38c10040064832e76302302f5779784d7975c3c25dc05b35976d69c803e1d3f7abcecd510ba3794f8589921959ba8e13216a982a143425146d27f10302047c435bb5006730650231009cc6e5caba481e55bff2ba967bcc2c3d7400c5ec3ad0e3a2f21378a6c0f285320275ddfc00f796b41e783814ce24c4dd023017bdc0fb98c9d32e4ec1d9942246a43df6a8bd7888ec7f1207dcf1fa53414650e0aceb559f53cc228d70b95983e16ddf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ee04b4658c8545fac46490f0d6ffa7964ee54ea5c85b0490977c9b4370c0050ab3e3ee795799367f44f7d602b0c359f202310095484af307cf4a17965dc69395a6717aa063b5f4a873b6c41bd931d545cd576c8d5b1b93ee7b68ab48ef1178b70cc88e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029549fbccb85983f6d2f61e3f90a24d9f5639a9c70597b07047845374cd5d4cde8e7cf6440362be6222cb28bac10b2e7023037335003b0cede48bd45fa4a47db2abc7d74d65ce3dad2b0ad56a81bd8b47fdee27bde5248f70115a6293bba555c6aba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044b47b2287a34d61747d7171b0473c2b31f8fc9538c72a0eceeb0f84e033b0c54ceb41b3240d4e0e8023b1ee30b8a2d802304217c3b2e44972cc047d2b267bd6a5dc912dfba07e132b1e255be7ae86cc43cdcb93e8cdf7c5c4627cc756ec3edfdfca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023036598b23db914799e9dab7e7bee678e64d9d42f5c451b9d60e7170ac6e5a1faa028801dfebb83569b4f5023161110b9a0231008f8534221935e203430dd7d672107ccdd00abf570c5e85107be0f81a4b04a1df2eb3a401f683efa89fd7cd3836fae3250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b2d2536caffb1aee7db2348a7ac1ff04a96e59ff386a5b5c3718c4949f78449c36a990c9b4032f273a3ac348826753db0230176acd52c8f429a5124f9c01714fd836a1b6093bca07e84d00bff7f08e310562b52dd27eec9d3a0034e342f866fd23850302047c435bb500673065023100a088ddcd78e10c61637a44b43577d61fa2b94945698418d08effc60bd470d4e6ef454742ce4f8e185318ba8d6e5a9b4e02300395e19956b9e7841f4b602d490eaf723d0b46e75e525ccfaf8d73b3780937779373ed3c89d0eef3191804a3b1141bb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ed8e224649fef107205fd0ea38ddf6e6ebc3ebe63d7f65764f7d9626330044cd768073749ce5f529dceed6365a8a68802301a0ad2c16a337a5a8853fa4fbae5d296f47845a36bf638e4731ed736374b2e8e73c1a5055bc209df9d765a1754aeb92f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068c343b87ca6f98d2864348a5b0d66cc8f312afcdda0c35fd3ba75f063a0e5810b6b456fa434ee6c134502227c20cb1d02301ce8b33f44d71601d0a57fe3f1107f476c316295cf5a86bfc8101799ddaea746e2a1f2243d74272bd42708eecbdcc90c0302047c435bb50068306602310089e09336d67b75b9356b797ba478c0817b4cf3dcb3261fc0bd22b58ef7dd33fa93197fe20ef7e37c4f77c9c225c259d50231008bfbc357628140fb76aae1fab61e4b1b9f48f8a75312ec6c2c98af4f0af8a978c6083aa4f598bb6ed6186f8545510d240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230356d60917a337ea0143e6caf50791377b481eec27c2f727dfb00f53b335e6068c2ed04326a191168dab56d1ced146f3302305136d5d893fb6940009898d1debbc0d09da066a8778862430b1a2095ff262cba5e045d8420c5ab32e3a03c3408db23bd0302047c435bb5006730650230023652f3baf60c0cde75071001d99a9eab0443ff9b58faf558a656ee7e540187ca075e0ba3f64992a574ef8c1e7d6ab9023100c9bda06b9e222857bb6d61ebd65fcd670d5abd1ee9a5221ad93f93c41809c89cee5e919d407d6fa312eded6a629af7090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac787bc9f2fa265cf05cf2de7aad74511c21951dd7a725b99bb3f58268fd34c4872090d32e5b8b3919c5ec7d28aecdfa023100f326681a83e92a2442f864adf08f498d3259bc32fdf7b6b57c773142ef1c4b7b22e6d34f85573da7d455105427b116950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096d134f7ac652ab034dfb3c709e668784d4debf6484bb145637fed42310df566e428b18faf8a49c7a5a1a6364a53cffc0231009c891b81610b6300d82d9d417d46f5c6400c8d24901a7f2f353f34d87bfad8c119ab9e554378239248cf8219b06275410302047c435bb500673065023100f010d8dbcffac3b350a9272b5789e1859bf42a398cee3f1febe1fcd771aa3027f1c53259d0769c7e387f25718f60b602023062c256cf6168c04378f5b441ae63ae7e1ed1bf57794319767d6d33e433a656b3f434e65fcec789816e7753e14e5b52d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023071a3294e11a703e924e83e94e45e1252b6655637287d9f9610a4e02fca72aa2e69f33ca59aecc6686ac336f0e170db6a023052b8ddfe4e08b759fa33fa220c0efed13abeb5304107c0ef5964018861bec60017d1857c92e5424c43ce4f95ac1a628e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de87846268a43e903ec986e6d65c0d4a126c61218ffddaaab1259275c0592c81a06849fbbde927cc0daadc1993031ec202307c756a1b1e98d91dc409e3d80ecad23a754582aebd6c6a708bb1073c6255e07a4fcbc5be60bdd92f789723947a7e01b10302047c435bb5006630640230142a8748878eec557e3dea24f39151f5d34310726116d6bf8a5003a4fc668473e570a2c2c309b16f8dbf697d10aa26b502307adbfaac1e5e497b9ac7d49efa71be0ee770a008007ab547cca8d349fa7b05167945fd6b080924589f38b41bb10759a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a51fa9e729e867eefbf55ad409217b13e7f07c97ba515ef0620ca0bd2ea36ee163ecd926768d029677491ed7dc20cab02310082fab175f2e15b0385f09826af05264c47386a3a91f3ddf7d55663714b069cbe8b6aa2f083f26f4f1c02d81e0659e87d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023032b2dde5c442367b257acbfb375a19594cddce85b4e162b59b3b1375eebdcaa4a27861a3042090b4e031c60a52807fc3023100ccf25555913b3ddedb458794656a1325de91399063b3f4114e0e8bac31b294212328cdc355b682efec7084fd48efc8130302047c435bb500673065023100d82e971de0d79e0233e6da08a30734ca80c1c224459c5331b960ffb9c54b56be6813ff537a0e6720baff797f4a91753b023021ded90753ade8d7c29c2383b1bc567804a9c56bb17954a415018d123ee2642bade89716ddab4d7f96ecdc8c18202dbc0302047c435bb500683066023100e0d959e9ab442a0613bc9f1e2c9074f67ad51eda2b550a16bff76f5075c972b244a367509d3d870d3e13cc710ba9525c023100cb488e220aa0c81ff1ebd2622b16f5e95414c8f565cd0a2e6d528a67b75b4ebef03ca813ab1619ba3e0595cbae182bba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014a3ced825d3cdc88173810f71d31d88dabd944ccbf36b5283f594e9935b78e64b07eab849bfe71b9e57d7380986ae0d0231008515fa33b63759df57f458e289cedebcb40ec9ecc041a2303c6d0916bf1bf5f635006789afb155e97c7da6201cee9a450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230473500175a648489e971939b08598728089dd7082b85822b75ac519ec99c947c75bdf8f7f5f7f32d5b319e62839c53460231009266669f95e52e9f0c5aed875627c248234bad4de9cc6cfdf53f725bdacd353acdd2acfdb3ee844be6487b8f7074b59a0302047c435bb500683066023100ad297a6f65167476d2ddfe0fa93bc84cdfc01dbd9693afb46004247c53bc78224d83f38af422addfd28a20cd6d0a500c023100c64ae497d7c648eb130023c5802cc378d03961eb1177e6d63fe7880bfbc3cfb7ae726792235883a7428c72b71e6d779f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f7a31dc7d5b3499fa8642b225b3db020fe7ccf635b3ec6ac1fdff9a945945bcd1be8924a01872c986e3dc02be692b4d023040e2ade13f73445ec1d1aa6b7c26bcae32d8eb8f273257f1e6f5299e3e1596edfb0bb279cf3c0d03aaa0be0ea78abd160302047c435bb500683066023100b486ba33ca2767401dd6e0f1b25bc8c83a79597930e77441a4699bee7a8f45fd86b998438f3926f2403be3f49ac311a9023100c3c68a8fe59c7b1b28c961b7b7de9d23e2ce48b47b4b2fc397a5ff6b43b2775b52ce9a148260332f84e2e408a85ee11f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305dabf2d4e1dd98421e700be768cd667d56ad4f6cff6490e368ca1b4de9ccd05eea488b474f0ce3f87b84fb2ee595bfe6023100874aac791a0929d9860e814d7547741d39762efe359abc5ca185e16804b7a1c550ab1a6e6df2f54847f38599532375270302047c435bb500683066023100b65ed2626d4ff07a631390c1d530680b444b35bd866888520869710c1e0f545a4731b84d092a6409944a07f88a86b34c023100be3cb875bcf0842fcbead34d51f0b875236b777a05515c4d7a4df7fa9652abde927a29568f7800f50c3e0bd88c51f0470302047c435bb5006830660231009e24a627fc22a3c2b4c10ea81ec57653fee832f2d3380a5b19cca7b7600d90eaa4caf8607950de367e97abd09e8f0a0a023100b3d035414d436d78cf0e6cba804e5cdaf1a7fa1e8c3f14e42afe3709eb6cfa4c071bd853b674159c36ea8aac033743380302047c435bb500673065023100ece628f3a60dfc743ce91a44a152d8126d008ff6ab5fda37dc6f52da2b54bcc7d792f794c7bac6c9fb23a88b5b79a770023003dc145dfd699f6438f4e82ed2ed92e93ff5e2de952d11a3e9a6e35fe1650512a19cf5dd29ea66dafeb8305ed8550b1e0302047c435bb50066306402300df42a71f5a8440f7df5a136fd92810a3f82d794627afeca9c1649d6d680e4bba6a8ec0627e7c58590ed8f13450420c502306c635e525c9956b74e72db618a1b397e03d46d7b2d7006ea2a91fe10cc9c760bdce8ba576d767f96d2bb7d51844b4ddb0302047c435bb50066306402305080de0aec5ac4fd6bbe4a3bebebc32ead50c47bfeaf7a927681a679f26a04d5d725c2aa643dc611aa8d18c96e3b61d3023042cf7ac7233effd4e6ad0b10c510c3858a1655e9d540d724649d8b0b3714eb1f9adf0f789c73ad8ed5ba1ccf19870b760302047c435bb50066306402301f24cda7b1f397bf086d8f70733058151d1eb8c99903ca6172954ae5f3a659b20e89d1ab3a71e04a852f26e9ce2b870502300343b1615939a33c7c51d67bdda67864b6c3982991ae2cb365cc1d5e9c5a3f5146aea5737b0e6194c9f6966c9e1f0f680302047c435bb50066306402304255088238702b5164a86493db21d80099a31d5004c573256b7ab22319ba5a1a738fcd70a76eeb3ea9a0f39ad2e7fed602306cc66abe2d9e744d1dd70316a52fd633c462ee5b186a0c9dd0160db94e03e6f529b91501251d78534bd61eb552eed3110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f19194c327948c9e5939ca1e2788eb4c81a9229666004a83b9b4a48ffdff50c4ed08c4db8b05f41de4183318becae9e0023100d1a39682533390327882b2ddcb5f0dd1574155ee9bbd08705aea32a1623ed73eb03b36a91a87b3e0cf66b46c2aab2f440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305cfb5c2c260ce7ad67a99d31b25c9cb191d23bff8124b0672321ee818b70b36c9531fa53de23db5146818548258dfc34023100fec0dc2a9f6d7f73efa3bce9ca5aeda3006a3a79baa0322d4483cad9dfef8f636f661387500c73d5a0ef1cf995a4b4200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071be248b409d50c36640c58b841433b8f6d45180c3be1928492538681c03a845df4ae51c466404917596a6536d69bdc6023100d8c723b79dd02934d9a68f27497435cb6973b38bd3d7a5e888a3241a6acd58f3853cccfd4a596f05a6b64a2abe34482c0302047c435bb500673065023006a6ea549c13d412cea24a5660376e89bb67ec6e29e61cff80bd13d8b1a21911c22144ed75212089b9fe1ef0b81ddeca0231008964c9ccd561f289d082dcd5eaf91a30467915f2499054494529006812cf3f013bf83a229e77d1578694d18d9ccae1820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087e1d2bff8de0f9f778a85f2caca2f1ace94070aa3cd2c31a6aab32970cfc213b7cd93576700b08552a9cfc07dc5f1cb0231009a31ded019062f82b97cc2c5ea1e493931794af56e2e372b03550ed6e464b72d62e080cbbea1c7c58d2cfd3cfda399b80302047c435bb500683066023100839fecdee56466396988f30e3377f17fce6b07d3b10db148c3d866ea03feb2e6f314aee2146205d282fd363cb268aa17023100e7cd14daa59baaadf02bc417c7e1ed3067527625875aba95f71b39c035b33551105ca797fee848ab1a5621867ae572bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307dd7da588a7886be8f55897b539dd3622e2f450c94c4534cd4763c0d71d025f96a128c6948d6cf2d29ae8f89ef5331cd023100afb8cbfd563c7ba2a9f0f698d3dab94e428b49c610d894e15bee4cd5be400e4adc2370cabb042064a3e4cf328f7776a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d0450b467e13307836078226f34ab2497d460f8c98f2612aea4a27e45b03fff9db5dea62e209e6f338e942cea751eea02305b79d1068a70a339c1dba49dd576bd82c2606416e2499f906cc2df1c0905cd47348df7813b4f7174eb4e8af98e6482290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100add9f5d1dffbc672c73d6fe23c7482af957df632ad5f38bd6b5c6684fd6ae4f8e01dd65bb6b6648dfd11d0901993d8fd023100e1499693aa65c9fa5eb1e568ee0ffa6275d7aa9b697a3efff4cfa97912e4b471ebf4f13f0c4785e4f0ca2aa646838a4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fb560162cb4efe89f3e04cf194d5afd404e4c63c1ff9bcfb1d395bfd57bd119f54557c6cd2cfe4c34440586c965d8a64023100a88ff19455c6842eafcc3e74d443b142aa4145ce81088f8394ed3913037965c239a9864a46470051b02638fca7c66cd00302047c435bb500683066023100f8c1311cec68858cc56b8cf466628fdae34d6c92458fcaf95007810588fb471d675ea33b5b9c11d88f768fcba9968f9e023100f76d55c603746ed3401918b0bfc12070ab7972873d9aa8453aeca43e9efda6f69fc53b62431c0eab9d216f86b614dfa20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300bb99eb53d93bc6d07e61ff237e8b0cd5601c6da5853c34900fbfdb396cc2ddda2a68152fbbc4725bb12518c06abb0c70230683fb64acaf19c5af5ccc16d4ec952bca179d0bdb408984e9b861c7a0c6cd6f0937e740ffb8a2bc8d3f1515f8a4caa170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e64e476ed8357dfc6c277ca975d1acc267627ce5aa32a8356604013c87e822723c82ad2bff93c96343a24f0022f28711023100ee9b9e427818737b1f33af2f00cce2718df0b1af309d9fb1c2193cd7fefc016ed1d4934d479d32db97699a37441f305c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023011778eda6e9ea3f4888b1409d255e9321b52990a35abe20df46e5cf7401fa6d92dfeed178f888c4f601e528d61866923023100a57a14e29d46bc7b246c038b5612378fe1c6af48bad81bc4a43beedd4a29fdf84396c89675c4c4e32b06c08e565537420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f8dedbdd01bdb9cf549b0f13f1f1952dbb2109a6c467a1ae78454bde6e511cd6a2ec855bf4370022e6268ca4e9a24db4023029cd33cc21290c5085f95696fb36e42d3368ba152b7b8c7c79784dde5c986ea4da11d8e8533643e7f82e889b488f65ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bec79f3be18f167cfea5d2126f9a90ddb932d521072708fd1255d23eb678fa2881e59dcde3e9ce3ffb54bdd3510284b302304484dc489a22767e95e2e158e91db74ce9864349295944b0f60213673942f3b7bd6192451f3be3a8c7db3b918788d7ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230476a10ec070c3854dc9f1c5a6942c8bfeb58ba9b13632d4e410a6f8613a1eb741a1fdf48d621ff8edb30e45422c69da4023100a8bbb912065af06d62be9dbd89ba36a0e65b8cceee573d38b427fcfb2e41872b50523b43367c9b5d0cfd4039dff0b4fa0302047c435bb500663064023009d0c0ff5ff0d46bd1cc539c04d5d7fe9862be881b9a526bb14452c675aff5e849c518154b5a22377f557a60486e588102301b61072d579b92fdc3e0f48c67bb8c852160cafd5b2c479386eaef350e52c579336f8ec8cbb5a00e4e5e36c4aa7548670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023037d12aa4e08fa33b1bb3aad8b7310c9422009b658389e2416bc98d54188cf5f33a3dcaa0160b96e825c2a8805770cfd302305780a0431be74ea82446fd3d487f3ec4488329a951636905a3cd3fb0e77a50efca375f2bdd4ff691f7d0f440d95adc0e0302047c435bb5006730650230651f551943c28355253defdc2eb93ec662cbc1d31ede155943b96fc8fd8363157e2b069fa409e680ba4dcda65641c48d023100a1159f16acd50748d346a9e4fd41658f6c76690623cfb38d90425cc6d6b20732d0c2dfde390c00b0d69be299d4b0832a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230614c97df59ae024f4b083f4893538547fb13d02a37ae9b468327f2855d122c04b4c62421a2eea76cee87ca8992c29a03023100ae88f015ed254c296843a49b3d6b9ecde1d716a584c188a62ca4f5b4e78df669521c6a00b6528a353d2d4ab00e16c0990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073c6ef14e86fcd32e669420a65bc090d89e4d0ec650fa2ad2f334665c3ccf87139d10ece633714776e6118a3854530f3023100d46f360c6aa03a667c10da7d79edae8bc89ad3eb6563b8105146331d8c4565f8b3822634595acee91c7aab9ddaabca960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bcb3f7014f8860c55110fb949826bfb638e3c0ae78a7a5d4bc09ba66dfdf0e2298ca085e9cdf6fcf47e10d5dc723424a0230721b75016161abbeb562b9a43e7316b48f92fd0e5adc33aaec5041a465551212df705a8611b1062f6a9f0906c2c098980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad53a380a70e92e14f3197b1ecd8ee659bd22d4070995f68dde104f2510de9dde46a24f9ac35178874d2cc9bbb98909a02303004e24ccd6ec4612e3fecb2764823b60c7270d7e1e25aa95a376e32509a988be0046e6d4fb23f6d465d35bdc24c33dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023048e7da696e8fadefe4fb45fb0dff507f108ef003ffa8388a9e599ae16de0a79d7bc14ee72674846097c773a47cb802e2023100da300001b43ab2dc5cbf05fee1d914d17b7c33073c460e8bada3c39ad0bdc4c03da746ca38be565511d88ec8f60d55cf0302047c435bb500683066023100b0e87321462dc25866ff385c07072d6dd42dfc17957c3fa93b9a056f02250aecbab50dce749309725a084c0a61f575f9023100a2a01690b4bf48a36e23e99ed3826b6e33a6165d94b887f52d18a392f53ec8e594885fe9b6f85caa1367173431ddeee40302047c435bb500683066023100e397fc32183847d51f74c312580c56d38484cc80ba5956e12b1b78b4f1f63764e53c2ccdbf528f73219d17fca06ced7d023100c6606e9de4dd242fbf47f4d0565bb34b311c89fa9f7c2325e357627725ce4637e44a2c7be5d53201696bf87a0866f4b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023047ea4c66c5a58f03df398c700cfd82338f29f553d933fccd3be31a34982e1eb0928b7182c2a1bb19424dc6d48654057b0231009eeec355686150f838317e92bc2b1c433552b9e256405c8f5c6da391ce939b570ffd1f718f06afc80ee15db3c5d863c50302047c435bb500683066023100d2593709bab115d5b3edbdb25816c6393ba90886f45faa409d2839ff27d5c72f3c7d934b0da2a7549a18d8a5f4dc296e023100d1bdeb86a3ac4615bef93605f3755e4205e1b5ff4b18f7ff009a9d51999bf31006cbdfc0cea9e29e121735f83b4ee0b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300dc1defb99624d4df4b2bf15b316d4c91ca1767aca57da1a89dc1efa4635b3a27918124f1ab8627cf208e0124b931d0a023022b87833a5a2d0191e6a9452ab9323065b461d9760a8cdc16d39d063fef21cc859be924794c0eb16b94cd0477bad5c660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5ee5e18ed7da829eee1fe6358e4bf2e3c834f31611ce0075d2f764ae963c9b36ec91690f0a5dc0a8cc0d9475ecdffa6023100c983c4be7182a8857c44bcb6562a02b1d5e61bbc3310f08f8cdd823d50a60e7ac7fe2fcabbc38494c9eac000a19be2f90302047c435bb500673065023100b390a4d10c4c62feda561441e3a432a84de8cb83bfd0e02e01209a38e3103461a7465b0e2c548f7888846e3f0daa29d902302ebc53e0d8fffbe6835bfcf19b3bee4c525436e78bb3756d2ea49baf4434aa5b945ad5afafd3577ccd704e0a2e4f2e740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2201db3f82499b9c143aecc879a645701b34e524d89b784a4668fb1de118779d749d832a679c1150812940b4abfe24c023100d4f999ae53f814bf3283fdd79cb16100b364a9124c3f2a2accb1fcc0009efc338e98afa62f3aaf9a4126271288a1a0a80302047c435bb50066306402305ada5840e7f8e4f23e497784bf4b14cef63e9822a3d2a22a57d664d3046b5a2575f989dcd48b36b0da35335a78b43028023070c99d7ddcd42c034b2572b798a3f6bb80005034da451ee3b657b0615ec01d1ae365fd2c534ec6a6848bd0ccc35636510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a8ca7e9f053629ec0422ad46e6b82f4c3d6876d7c65ed723cd2f962d369a761c9e8687fbb60c7b71195f8a315261364023100d12e656b6b8a35e041018dc5721d02def4caad48f180ecff9758bcb17ceef40f851a1f23a10d7573a343dd5f31c978f30302047c435bb50066306402306c7718c237d4ff26c60aab7adbec6f2231ff18e38ac4c3848cd6273783e02df3308d1d01dcdcbc92c8fe08124fe7c825023058ccd26a474767655e2e7f789f29057936a0ea23f856a5c7f6b13b4624096dd59d9b11df720828ffff03507ab5a79fef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd90f3d33d185a5c29509d91c5e9a7b49e9747767db2fc350ec5b414b5b58a325c8ee9c49eb200d46d78add6d7b2d8d1023076bdcb518f5a237e84abb89fa2ceecf3a7dcf10065c69cd4a3043df638d8fff05eba0b862423a86d057a1599a5a478980302047c435bb50067306502301414280c2752cc933d1e13899120c307e8e7901c14246fa1d4d3073f4bdf5ce68372a478016dea2764863a5b160c707e0231009b4e6c66b5489cbbb11cca0b846f8b8820fea30921fa8e69ca8a4f341d47bff252981263eeab34b826e1f56d9e4f55610302047c435bb500673065023100c3fd6203d462fea5f2628f40cc57053c420c0337c0d6e99a5665baf69596649fa0c53a822a892096825dfe33cb6a698702307b701e78e186b6e68de91f1d2cc0e95e0722f3ea6a8a6afbd72a80faef674cc915c349192eae5f2ba11675c63fd404220302047c435bb5006830660231009e8df9e7e73244d2903378401733f5b063d7e32819553bc60a3c54794d2badf512ed177765e4dd47a7db1ebcb23e0aa3023100e5e659fb4721b4089a6a28ba84d9cc3be18bb3cfc4df990061384b901dce670a42ec1e4f238b86b0126dd430e1043bb20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230482cc0f95a34c4c1fbcb82da87c6cd85b7aafdbf1b084ad3a3b3854c8eaef266dea0695bbfd664b7cef75baa46f3c9d0023100f14d6ca86eeac20456d207209d3317f91e96a8208a099b5acfe60dbc0550260f94ec768ecc9dded6cafbe5b8c86eb0840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023073e5a1b4ac744d67d6e36461e38f2b6bd6532a7c270bd99ec2a2f352c63198ff425a0efff571ff5b70accaedee6a58c30230268a755fb26cf8fdd9043ef7c936beaeb4f2ff80404a3fd7984cd2eb0c7c024c3cd9b79e1e144845111aea0e426a7c300302047c435bb500673065023100f1c15a154efff141ddfb65d8fc9a13dde518d85923d4a91d33c72ad7779d7c835d2a15cb7a51609edccb964581ba42a7023003416e526586411b529535d502e2c120a8e24d9a3fbe90155ef39eb3ef1dc9989eba78ef9ea83c9640f03973cb779ca70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230265937b647c3e0f1c15df8ed48cc5044e0e7a8f777f74e126ac1c8329ef864893bfe3e0944cd3c9ffa45559fd6e7ac340231008409a1bfdbfa7e0367af34d1a98dc075ebb9126916312db03cc42cd14fb919909d905c9b41cbffe86b3e2653bfaa2a570302047c435bb500683066023100e23543fdac5315eaea407a7e902ae3a91d6fa84cd1d9d12d4be07d19ac8457eed65341dd2e8ccfa79286614d8e6924de023100efd787988e35ba534f0f1fb8647e5cc8e25b7701507d20f3182db651ab492c6d1883a7fe3c523bed421c2a00e4cd21c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305524edf6f62d886051723847ee0f69487025b87bee9c610ec334774ffec7e58288afed6acb72eb0054b23945d65ca8a2023100a1d7e6f0fe991e1d276aa6161c9fccc78d66d8e0e22ca0f40c3a8ce7a0a09ceb16217d913e3f446cfff6ff58372c0b790302047c435bb500673065023100cea442b519689831270833fea4713959235ae4dec347874f027264827482d9d64f01197b028032fecb54fd398516c1b8023025743ba82899350c90c202b23c03924746f60959c03558f4b12b29886761e92e7c130e2c111b7d73d5c35dd567537f7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ccdfe6fc971c40467a4b706beb9f1daa9fa914ef143d734c494cdfae47a20b9e8f3033b735320c638e0d6a9119461f3f023057b502aee0b848fd4a23acbd143dd218cbe4b045f845147592d5b79fcb13d8368c0e9f49d275f477d5048f08a439af220302047c435bb500673065023007e63fffc456931e9596ee7d5d7945306aaa86b2c2da9f2534089718fa384a1f1f186709b9f8993ff43bacfb2219a6b0023100eb3c980531516d33d5d3ff372f8852c7552da2af1942e66de2f4d867300098bffd63b9bf606966a7475f31bab56cf64b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306051d3cc060324503fcbc7ee391722365ee33b02cdf6163cf7575c26dc33ee8a1f0ca1cfdc6824bdfe2bc108cf182bd4023077efaad57ea856a6fb491bf38bab790bec7e50056976f882a277cae8bc4289ffc502287e77a0313dfae0482e83cef58d0302047c435bb5006730650231009d357dac3540185215841e4bd05858f5d91108ac4901a0236675016e85d77fc02c6be23e21b95d173e623d5e16eb3ae702300d92f35e451505dc34f0d2559334ef45d5d89de2fc83d48fdcf5633d1a20c2236541322f6632c79a0596179d3b10a6de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230545516e05b1d7fdc245f0cbe57c36b9176cf2f7458fb49e083a3e5752cc38a658af42bf9579928ae83b21a77b561d2420230572ca748e4b8dbabc20bb95f8f6b2caa569dd3d6df9628c87dac30a67dabb24be7bc0f77b6af8824174c19a63e9100af0302047c435bb50067306502303f8f6b1603aea2493db4b71327fe827456c86ce33b8e2891a6c68c4c2bcc71c511ac503e069b4915af061cd821d39e7d02310093914021e5631b06f04e70494f8b6edc432ec149239a50e557c419bf06c9cf056b61c8705670fd60639380b9de4a38f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d5bc679387946ee22a4c771881778d6f74888c1147ba27919d47cc67f567ec9db203150b926937fcf1da78a50b37e0a02304f10b7086e50bc6e672ca5eee75fbeaff70e6eb59935c50cfcf7c130d157da6b44ee4e8686bc5c9d297a8d74987b2d150302047c435bb500673065023100ad6338cc2478296f295e5b49e575206fe057df5525d57b66ea16fac6bf2f6641373bbdeacff19aff082aa72c735ca33b023061723d3f24f913e73388648e66f1de4b0e4a193803d2a36cb8001fd73efc528383164abc1af6cf1d3436dbe4dbefa8410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d7fd747abd886b2f915710d01f7ffbdf32f4cda8a15fcc3a534d185d4cc4f2cb9a3529071156d74b1e9bde9407d89b502307b076ed3ff16997ca5345c65c8d6efb73f6fb97f4ebe0cc9bd286ff37d528846f361dff1bcf866331666702ef082c5920302047c435bb50067306502307442df45d04bf44296c70c0c2e2ae06e72f72a111f07f8bf2ccd4246d6cbdacf2078b782a52bdb7ae36638773ef89e1a023100d0b451a2d2949853d7e6e3542f23d68fdb0ddb007f86bf3c74c7dd851bd650613d2749d8c13af8484f479b057563885b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6b0c8dfa269214cd59a0bd7cf4e86dc37ca9055c5cfd38eddc6f517d76c9d02c273f496bc021086bcecf2ac53752ecc023044735e3fb27260a5778d8065c9c512dda8ed10eeac418f6807da6ce84fbb60e9b19d7169349282483e565facc1a929a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ae429407b0b69ee8f1cedabbeb6358c512a9b4eff3e4d56c845b7cd315e495b894c65e7ce24f55dd25e038f92f666d9023100a0a08d5ad8f7f69e3291307e84100874eb23c9222f759bc1d85ee4755bf42205ebb7e94828e43c6f1b3ba13bf4678e260302047c435bb500683066023100a1cf487647d237704c04ce1a03264f05eb8bcf0790f39369078ba11adee180078db872d62065f32c82c70989a8504fab0231009be9532076487945c1db05161870bcead1d680c8506cf6f38a5d73dfbaa797d93acd64e4efbdddc6543d52194785f2920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055e0364af98e3be6b7abf7594397b4e88af04929e31925c5d00155ccc31b5e22de537af2e06bff6ef087385a523d392a023100ada3f852bf09103a443f13c510c4c1fc9d2f7534eb33815d4e273acf4b868f5a8aea02bd11a069d849dd53aee426e3d60302047c435bb500673065023100f0afa48d2c6b00912f662ad40644346ea78400d73d4587de6ddc42da38bd346b7d2906867397c3958896c02a7e4852f70230759f571e94b34fc0d7f7f5ccae2d4903971e012736b481aab32eecdb81723a6fd3ea82d16ccfab290e9a513d0065c2390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008147b37bc8a5f0082d7dd0106b8e83846423736719633b4df08a048f260f3d93f2e219a81cb4a4bc0de07bb77affbfc2023100c7d1b93ef241d483fa0ffa0175d364dee672f1ca7ba851043835e04c7cbc3bdeabcbbfb23d33a6560e2c0ccc58464b810302047c435bb50066306402300f1374ae2d985c062825e2c858b753e71446dcaea2ab7e76a4c93e6f68a3a3deaeab28d052c6c0e1dfcdf4dbc4d3ab1a02301b04dcf656bfbced67f260f92861a872b9de2b01ab42d8d3c18b9c502a5c6e2a17245c76755f2dd502941016737baa250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1edc816c9f5cdda374c346b159c1f521e97b925019951139b1113d5f99fc9cface00722119e00bf19a9a948dc2c204a023100f70725ee2941aec251abb517faf5aff81438d9d2e97f867180a6ffafbe7b1b6475d9c89d0108b48b3c5a81cfd05a0b380302047c435bb500663064023015fe3e6fc3980c2592a08144ce92198d9075523542854fd8b46bfc09de5cb4d699b90ab3ae83b2d9599ec02a70a8671802300811f5bcfdceeef32138073f452db54869872e4fe679e42aed2c682b508b61c596a5a97b2b574105f3551954d8513d0b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023077987318f51d4cb515dc9af18b2654c0fec68691a216f6c6d8f055bbba5ea8abf4c5f40474153fe132772b798fb33281023076db10cfefbfb1730a7b53619f3a58fe8c8005cc79965fae4e86193154a493d5a0cb368144827e5f98940dfacb3fefce0302047c435bb500683066023100f2820142333feac081cce6fdc9020ee156a99fda9712c436d2211a89f063bf967b1499fe41b7516b09305a73262364510231008f2b9a4d314c6de2dee687a8899a60ae17815573084c9e9edcaf80e6cd72c78918b0dbaec333bb9bfb6181b4b637b2af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d02d0493fd8c1d91db9cdfbdd8ff1f317e119466e437f874191820fb10474c377509ec47aac98531fee923b3db5fa6fe023100e2665f5a361180d1503b6be1dae5f0b455e27af005d4845adbb0616ac129eaa673ce4f289d7715542ae537c626a8946f0302047c435bb50066306402302b4ce0274c15ac47421a82540d3334a689a88887d1ae8c8fd29de4b180ffb05378eb7565e1980d2032e7bacb34b7eacd0230344d8486cd1edbba8cd6d504b94ba7b0efc930cdbb5cfc54b5989fcfc33186299ff055ae372d641c4d72281cc4113ea00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307c697145edee05aa1e0e7fc5ca68f372ea0be90d00dca4733d68d6d7d286e4c8325cae1c3dfe120343d0786ebfe53330023100f6fca5880d6f0ffb89f42e6c9f898fc4bef3df3c220af7f5fa5afce7cdbdc82024da190696562a8db963aabe2021072a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f13a422ef8152739b0468aa84f5d960a07cd477c10d6e8ce18fbf18efdcef1f70135a0e7a4f861a5fbfadf3167e7ba302305138df21fe3a6c355a835f1f69462d3813169e16ba8322449b8d9770861025f882aef74a30c91271b12f655ce23525e00302047c435bb500673065023100e683de4ae40b4812c69b25c02655f49ae713645a84ad72d4201efb77cfe8243dadb464ba0b3c33ac8fef47fa2d58402e02303f2b4385aa72235b187abd9c74c9bf6897143fbd4157de3446d79088c50235e54e4c2356b1c2acde28344fb246e060dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ecd19da1e17a4262d5792c230480ad0592e2e5f1ab8bf1a6d6699d68208e75e6fd7982882c1aa5837facfa1eaf64fd8b0230303d80b4b69a7b05278887301df1c56722b68ce4247b0ec63d6964fd0b8389dd735335da1dd695fb641db61ee4db00970302047c435bb5006630640230569889c0617164e383c0d6c6e693dac9629dea25b3c9e6c0163dba76e1f16a0d513bfc7c6633e91049c8458a8d9f76b90230338d54474a4b959b8508073c5d95e1ebb2d43a0ba5d871b8aaaa1ab0e863d49fd9d9ee46926fca4c8e245240216919340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ef21db36d7785859a80b978fc351feefe6d51afebeee5ad402b9592ed668a6e5bd55efccf5ebc29ae06b365860fdae20230465396e192a055e0fe4c524f5a00006f57e8d3e2a7a02c0ed5d58859cb78bdff6cbd650017172cc0f1c575a7580687810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ae2ff69cde1b726422b93b1c14c276ea54a04f5f948c98bc05d5e0f1040149d6e31b606cb786e1bceafe0cea22ea8ca023100a6643f115923f9f3f29852e7266e49c7e2f6d1c7587a568525eb16a99bc65208c759ca6f464c6e83d08a1c6ee20cc37e0302047c435bb500663064023010fca6f789ace1681d713b69feb7d2bc18b43d912b822bfeef8c4402ccfb06b1d40960a355173a3cc7235b6fee8257a302306bea729444ff1cecaf23d00cc9dc8c06d62cfda610dbdc5417e90f680d431ce00d7597bf052a2b6c682c10e22a0adc230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd53bc021efd7c4f1a77b29cfcd2f5f5906b708fd09fd2f5a3202edd223aa148e35ef817aee1b9f3978a0cdc6533f55d02301502af6214261f46eccbab9b599860ffebfc67f03fb749e3242627d9bb9f59c762e4e5d7cdfbb12349b89bd2658d1cca0302047c435bb50067306502304d240c9481971a17c2c04827e90fd5de85a6422a3d123bb0cd075f9a8f0ad01cd21079c77a12b576dc5117222d2f8512023100d33051ebb342532a511e6a27072468988cd1baa5d26ec1168709b3f2032d8881adf941e6fc19a193d9205470eabe9b5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020d200494782f219c4a2a0d8c49a2963a65d90d4768ceacae0c01dde9bf2aa2843e6a5a61129129dd79a5c11f331fcf0023100aba9fc6bb9b2c8dd24739bcf90d84faa69e2852ddb1e9edd0cdab68fe4d693bfdb2b826ab74865f589fddf509f24dfd60302047c435bb50067306502306a266cc46ccc5b4bb7ad145c48cead1b6ddde96fa7e3c6b04402820e3747f97367640d11814ca0a42673e919c29fcd81023100f07dcac57f9210bdb1f86460953670423890e3cf5a9a2a2f6d707d72ac02f39a1cce277e306c3d09eb9398c353191c800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100915ebc4f35bcfb6e3b0ea46dfb4f9be453c7f2f3fb40c6c8578d7c6b91310bffbe20c97a98da3886a13f0f064f8267a6023100db384907dce2734f5dc1a283f2311a2e7b95492819ad93fb805f8c0f9fdfdbc35f90dcc1440d3ac4c8e14f50d4db70570302047c435bb500673065023100b466ef124026c5f59f554f8e844691a438f7ec5e16fda8e9367dfbec5ef2da25d3068e7721f2e727c52523864597b14b02307484047248b4245f564d411286d8661777eca7631ce0b4afd083517b7bf74374e7ef21bbc9e224884a2168d8f29f280c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bda9a1c5b977265155ceb0713b30ee7db856bcdcc7282d5613c2717164f86f6197be5ec95ee78e8e77dd251484a4302c02303dbe7bf3395a42ae64e00a95dd8ce320db9a7172f724b1594fe4c3c92b52206054d38d13581c20424ea7e12ddaaa9b690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e32ba5a388063e123a5f97ae818b5f5e4b240172b26647ebe2d6b25cce4672b1732bb0c2bc8b5debda3a5378e80ebeaf02301cb03e24752fd122f6d177d9d781975dc46c42e4e185f353a147d5adb39f60779b72288af8430faba71e66387f1439230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301bbf411c40498b5e8c82fe2f9465eed2ac0ffaffce249c68dd57a5b24a14350d4ce963e6de173f788fb870f1e38b637002304c1f3eec2c7b13c0767bebcddf1de2f7305e83e0f4ad6be32b6433d15dd8d98c0473092aad1b0a171f4480967329cbc10302047c435bb50066306402304a4957c9a67baed3772e6d132d7876975add4a615d8762730294d6974e0a2687598315faca19453900832f4bc2ef1bf202307247e2d79760264b36ee31ee46f5e38667d60e6279ab338599bffdd7e7ee0d0c5e8bb6c28b086e5f260dc4548131bbf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230580fe5dc4a08688d6e6bf1c08d23eea52e41a950290b6623e109e5c41d1221300c311869b0f7841fad8f9637faf80e66023100a753a027a053a671c7e631f01513b68f270b95f28b4e9d450dd41a8b33812786c30d190595f9151e0a95fc7bcb355c300302047c435bb500673065023100da897791b8453fcd81433f32f0dacd6cc2351293804cdbba91d1a20b74f55432dd4c8e1753be3093f7becd2cf5459c1c02306c1cda09d304ac31cc3c3009863667210e46eb1eebc111bb2678d6d38411b5b99b2af855fbda2242949ebf95167e5de80302047c435bb5006630640230522f560fe5306f2f42a57f8f7a590816171d8e94c7045142404e6c675cc1c7d0d9e9beb75b1a3bed32d361927aa93fc402305ce4681dee43772e36fce4a309efd65f1fdf7d8a1e40bab3e9dd54987dac3fbe24dadbf8d605e475e53d0ce44d3914ba0302047c435bb500673065023100a11ffda8ebf54363124e6e37e58d3e2fbda14a66ee0ae32c7dea57884846379365f17d34de59d8046c227baf6838c3060230634911fa8ef106b6d0dd99de0443f1780fba4959294eb467d19a298f34fe932edb16f78985e7a536ca8b40635f0c04c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b09c33666806dce67377acf517cd87182f6cabff4ac53d66153d2750732f0ee6510220df6b4d3bb0118061d478d85438023039c23ca11a4ea6f1495a15e84f9db4cec900a51062e8f282ec1c05ab337542576bb04699002408cb97d37678ff9555ee0302047c435bb500683066023100d54fbbf08006c95eac6b69c286f6d8b345510e739bcf92663b89e7f1f11d0f2682d17bf40fe8ae0d1ad28641a0bbc051023100f66109e6bf1d5613bd753b9e20a93de135ad2ce3099b6692b8090534ee408248b557d8044d930743d9067aa0a21ee9a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1d4d98705a255b126037a8f52f37444f8f11df6af2417706476486522c4b8e7ad2c0230480489ed875130bd42668d30023100e8589153d0742b9c5eb692e2dba52a5983c65b06005cfe82bcf1c48b08cf91b838f4d7fd9e6de19236db1377e9f9562e0302047c435bb50066306402305963db95a9ad67fb321ac47c3595a0baddb4f74dee161627707bbe2afd34264bf610ef9d3a9ddc2c0edd391c90c6a8bc0230524908d18c6a334c3fe3e47e916aedfaa8c18a66997320d3a8a4b91d0b16d077447439cad3a6f382b491c54cb4892e060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100963f10a8b959ede4acd333735105b9e04bd4cc8d0024dd7b804ad7b75d22fc6b5814a38ea69228bcaaa3dd5aeb57108502303e27faac781eeef41f4a2b1bef7bba502747c756cca3cfb1782782cdd92819f50f6db6795b0bf9b733782794865342190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f90e8b0a531ea92f527a083e97c4979e323177714ee23f281f613b195370085c4cc8ff8f152311a5877a0e7fd03d9c3802302a4b3cc6d0199737989400750c68cdb98312007277efbb7fa1e7377af2fa593152f28bc639a6a74c9014be620f8f42a30302047c435bb500683066023100cd8acb0505e45f70ecb57eac72bede23176c1d02b3563137b52168c3f6ab7cf7b56937fbe21a7768fa000388409fdd94023100ae5c8f0b6fcd19bcbd69322c712287d8345941474e82b435dfeb3da8758fca7ad6d9b6553c73e55c8979194acfcd7b520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f5e1a90a36d40ac4a93e76ebce45b5de43dca9842a1d2b540eb2aad3cceca9dcf0c0f72a15864d59f9e02a0cb9e14c6402304624bbc6bfb5c9c59feeb1f82b06c0a1f8feab0b680d0778a63bfbc6f4c1fc49cabd5601eeefea5e92b541d9d9868e5c0302047c435bb500673065023100a32bba30286e4b9fd621633efaae23fd2bbc2402a7295742a4f8c644fd85cef32547805d2f9d7d15b4041ad8599671810230247d2c743e1efbf77eea5d8adf5eb7d8904cb5857ff32ea52f4e1efa4b53db70548b19b493f1cf817191fe6e6b469c2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c3de471a8ffa467dc64ebc3c6911c33e2b12a401c9f2c7c3b25e916b30e7539f9e0251e1d938ea72d89313434346daf023026f38b9c8e2165f6dd73dcd2cdc748f7f2e0bc343fa5cab0dd51a2de5f0cdd96176a37a3379d5df18aef82b6c32b29d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1458e2e7ef69bea8a647950fd42ce7f6a3baecec8b37eda7d4dacb5b87175aa1bb50b00cfac864d0fe72622fb09de67023100f6ba45cfdcafa736c0fa022cda8841295a6fd8d79d3bc47d7041b52bc062b8df0f024e09f4de202e2250a767eede92f70302047c435bb500673065023100a2508fa78776f07e03114a1e86a998bf5910e8cab86bdc60ca1a209463b6b997c4b013e33b643d4505aa1bd016902eea023010f2e11f484f7442c8a887244438924e8377fd078f1817da4d8a625507d80bf81bfbcc9fad2cdb3e59bc1cf1cd857cfc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a6b089fce496cc82301654c511104728fb3d1a3f3f36e43c14c4341e5a2715bf0763398574d8e06a17d95ea5cd6e1ea023100d87e736a76d170894ff43d3253ef6cd5ce405b575e9535ab8f057795a1ebe8e85f8cb77638b53baa2234735aa80228f40302047c435bb50066306402303ca4e30d46d06b3815a81558ca68979430c04e7cc753652b7d56d0e39246a410ccf010b1f38014d6d922a4b4edee2820023056e49bef3ea036896c01e57f22c97e4d9b0d29c5bb76e9e18c2f73b137feeda1abe34270a2a233923fd8c50bf18dc6c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b16c4c33bd2b2228bb766701b37231e1da0ae9883762a0ea3fa9c2c2a7bf766994b1a1727507614152b76fe32347a15023100ac2f4de0ecf16af83b6d5a72fc76b3af15764d8ca2962ee7392775e82a3110b98e6d457158ef0e140cfb8c69c3c595520302047c435bb50066306402301c5e648eaf39bd4654f49a98b61f16457329ba0e8759b2aeb442765e73fee0260a1d8ac19b4d41d108940663840300d00230462fe432cd3004492568a8f30528896d260b8e6f0ff6e88026a07d275bf28fd79b656047442d36f1eebb8d8af57d91c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f19fba4dc2949a59cc5700c456c926bd2ef3f7b95f936d81a484ea85485011b660ad3807f5a5878d1eb69637e968fe702300593ac6471c74b8428d2878cb0f9ba2d4db4f0ad94f0122c0dc79489408467d5595ca1904902c8d6aa317ed743902b300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230105b6246ba6a392f2812f3885d164735f5f9fd0302021f436a03584bdf38efa474fbbe14222c534fbbcaa2b41ab64ad002301b1488f3961f2dda34498087ebefa511f64b528fca39d941f4edd91d2408586418a1948b812942d14c3c1d6920f37b9a0302047c435bb50067306502306c82af37cfe0b921d710d275e61cc165f4ca841eb6dd5a55ec6bc6a2f97a68f4d1a03dd40cb7dcac95df7d2679608543023100ed9e9035486408e8f83236cdde4f85740b11608fc87a4cbdff5cf88e69b88e9325207dc2da77b7f87edb0dc3d6b067bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c556e013d7ca62b6b4aab070fc5e9f003e8f103af0f34ab60aaf47e9fe9f66fbd3c6c61c45e174b32750c63b7748d21a0230441a9d7da13f41e6a1d9205c929ce81f71fadee1c09aa49d9346bcb4d14e23aa98193122eb8a311d6e0b0b0822f315300302047c435bb500673065023003a744cc05f91be1b1894465d33f19d81b6e2fc44ccd34d7958cbbb08de3f3e85bcc8a3c7a2a2bb5cb40df195579af80023100f227d7ba9dabc1dc3eeef2abc70e03884bdb39e70c94335154cdc05e3935115720e88c90a92c13f8cc14d498bfdbe2040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eac41e6730d320c63f1c5d1bb4f1f8b0fbbd9d4fd47ee9bb9ad66e1bb4523fa0b8a514c62902e06e0bd96547ad28d4f8023100d5954ffd519e3fac60219f17303117e10b7c91545cde362112f26592d37bcbde2010502a31a869dd780bbb9783679cf40302047c435bb500673065023100d55e3b07e9f5651c9ae2fb59e3a5540d04b1fdda1607128925d73076992b3ad9fee208b9251574db25a6c2b68dff813e02307624ab8e8724741806bde9fa5b7c28508492a3d8f171d8cd3f5bcd877519be85a74057c32001fdd54a1be7111409956d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c9cff3c8c9d216586eebbe29741a513fa6d47eb2cb2662a661e7d763e3cfe856708fd24bc405ac088aea432c994c3c0e0230333b8924e4dffb2691bb15c444d4e7f0fe4ea4790be6cdd22e88721e1fa940201bc5970a5ea226947c2518c2683a01030302047c435bb50066306402303d884e219c9e369c6b39525b83ec1b56e95737dcf07d10c3c819dc2f2cb51748d8d159dddd4d3fedda5c2d80f94009b00230250c5c2dad64acf1e0b4568a633ca6701ab5943c1fa7d5f3dd297f88fce82054d82ea2fee51a6a3ea56a3185fe64533a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302166ec1044f00bf67a7ebbe40ebdb2338ece67063e2205583fbd50d12e6ad6a268e3f034e7abe74cd1d3842e8d68b190023100cc246263a15f2bb5ce369bde4c9804fb1764b4b1ccbdbfffc86b1d0cab15035445aa20fceadf5ba54f124e74159a396a0302047c435bb50066306402302bca1fb9590fd0dd4a6ef646aeba8157eaf4cbad3807b26b2e9a404fe3de0a924714fffe58ae907c0130ff6afe48605702307d41cb0b110ea318fac8fdabb7591a449b799953f4010591335c6e06cb0c9cf8d53b586d5c2bd9de044207ae3fdadad80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc0e478c50bb994df336dd17a85d76c5385043447c145ec2c7b0b0a1a3a236e90fb3b0769b46a4554391af182a440bf1023100d67ffeab8af262b0f4ecdf664c3a9e5a5e3fe28d8e622d576e77ac6e07edb1d9db0107f013c12b4e7a4f3fadd03104fa0302047c435bb500683066023100d984ecfcef07464240a122f78f04ee2cb64818b3c45e9c3dadfeec29fdf9cbc9f75e16b8967fef153b92f40f087400150231009380a6bb238a00873a90527c182609f2001d3c67f1cf8d297019ab4ee88271c6d3bab78f83abc17458197b2e0d2e52ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e27cbd2928bdef69a42e298476775c76099c553fcc325cdf36f13c8a47f5ffd4e4261e323c0908672724e197aaf75b7023100bedf07255be99347cbe069672ff959c9f68e4168ffe335ab7004f0426c9b3a8cc2eff3b3e46f7bf25c41934832d67c510302047c435bb500683066023100e1aeed362cb9bea82ead8a5662e36a0334b6f9e7278f3ff33e8f34aeb1a08fc65ec73b02cb4cee4ec7e155029273ee3b023100e2accad3727f5e602e149a9b6e557029f4aaa8f7db5d19775f309283943929713fa58e05880d393b0f7c5d9158948d580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099e7cb1e7cf9ad1e925c1c792028d66ee59d78bca48778177f8908d163e8c6ead74ff6d2d8e5be7e2f10ad11a96211ca023100f3cc447f93ca5f3c6a0fc8cd4a413f75fc58003a056ec94a448cec9d2aa75f149bf5d9c31d4654a93aab6739be3c6ecf0302047c435bb500663064023000c7813325a7ad6c889beabbcb73d2ca51d4256bbd8b52d8c6ca1e3c991cef9386333ca5724ba8ae9965bb789242955f02301d62ceb65717aa14f55b63734c61fb48d35ab3e609f57560fe9a6df91f55fb6007a36e944e34e08f3e255a4050bd13560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b59ba494702cc4b33d2c6d2c1fdf91de176e362870d45ba5f8668dced55707ec73fc8ffcdbda2e6cf6ea14a724842f00023100bb11faddcab011b44d73e70642b7e5b7dabf7cf38bbde1d20351d8cd34295f5d6a02c2dd533301bdc7bec1dee0a713340302047c435bb50067306502303adc32d4c4b919956241f938cd5cec0d711cee6aa87c3816851c98e79e5cc1070a6ce4a8b670c3b0fcfa1e2a8eee5d5d023100d7bccb4ca6922483ea39433978090af81116aa2c8415260e73b1982fd65d6a20d05f8cead3dbeb03fe362254f2e72ddd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e809f3964de21f34a29175da609fe459717db4d1c40c8516f9e784419c25bdbcb3744aee4b92792ae8e011c583e015b0230342ff71d910d5b2850b08f5b06e8a8cdf4608de5eaa40dabdd609e88234472f428d0c573284266e60e67bd9731ad0e800302047c435bb50067306502304c9e82e8216a6989d3ac7371083d12edd6bfd57b85d7a5607e05b0e00e9f571a92c77742a0da5d42530d98117c7eab24023100e83ab6af3d30d2294baf18d5682e2545eeb61890a67a9897690dfa7f07c591ea75909ff5fb0bbcd37d323431279629a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073c521ec62f4e0a8e1ab018b54f22f02a679baf2b96e0c9b393f7985dc2f8589291c1d0ebb911f7a120e5f44caf4d32a023100affee4cf5fa0d867ebe56b8ca58ad3e9eeb35dca97f52d58d0993296e6eca1092693f605165307dee7b97a90f36b0ccf0302047c435bb5006730650230505c3db27fb3c2cbe2601fbeafabd833ff0b818dbb14d05223c7d488bf207ba1b5a9660fb209f0ee8bee78aaa8c337af023100a6381ace3f91192b2ff177887a5c69e6d51970e690b309cd722a5bad0eb8073859a3b0bb9e9abc6bfd9124263424500a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305da9f55b7575326a49a9d0cb17824bd5f4423af735f5dbd048ba3c06f7a3925af747cbe2a8eaf328226380fca4a80b3e023058be735813782a72132527029c37c46d083689db9c69119eecd915ac58aa0f388dc2c5fa9d14ee8a2d06a85d3187d21b0302047c435bb500673065023100864ae2a03de6bc371c6d37b3a4ad909ac37583f7024592afd34cbe77ec64b55d8b6d5212d2fb5bf2b1a5bc13c65088c60230686239a930b85eb8592190ea9f40bd7713d9614e533edea8e319b1c0368e5df50a63001d32c6fbb9c160680b0957e8ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230262d6a452dd04df2928f1377a0fd37502daa0551e8bda8f390d933370e8e27e6146551950bc01ae3d0628ebc569afb49023100a8f1548874c02d2138fa93591025b2b0fdc9721b9776b85d6e8cf4740a27425ae936b47647d0f46074df824fe45e95cc0302047c435bb500683066023100b5a25fa59472a199ce2bbf38cb03a67e2b3350ede90d5da520b9831ff758a74cd9b5cac8ebf4c14d16d4e628381dbdda023100d31cab6a262b0ac3c1e2275f58b6c21a96f985cd6a9461ad2feccca24195bf5562f36d558e8fa48fe3855e6376bce4fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e73e9e1a64dd16338f1ce8329fe13afd3f73b4deccb09f0d66732b8a2eca7d60e3f5a7ce0dee16dc6abea95a7f0f2a40023060baa17f03e4774dac232d5ccb8ec8d2d77241400ce9597d3fec587d912c29fb568e7735204e5a99acabf5fc87b904360302047c435bb5006730650230660d1b480a8658c86fd5ca2c0ba6970765eae2281ff67c8c2c77f9fef1f7ec49c34195ec079f9e6c22f9ea04549f8047023100c0b3efd8cedb2ca7f8d5dcfc44c305a73e51826c8e5e979fd76957a01d76bcd501bc776750821030379fbe4099a9472f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230377d13070af0d0b0e3c24cd14f7ca48e96bb124aa8ff0f548b83d67822a26a442e62eef967276e5dc70b655bfd4ca5b0023020dd00e66acdcb205f349a20a955118b8c757ee8896f318f170b472421ea596b5df8ec756a4a1c1fa4b147766f9ba0b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba2229dec88fcb1de4bf4128f946ff15cd688ed4dddc845e8a23ce06922b7c542e8b1337e92df41de91c703c44ed1c3d0231009ed916d4427090a2f14080fa963009cddd55d3a190d116b34475066c4ffff0fe40ee2388efb07248e7129e2dc767702a0302047c435bb50066306402307045e22343baf2745f1a7ff9507e13bce06d53283ee610bb99a00d3268791e737a2f4ddfe0d15e9b68e605d51acea4a1023022b6078a0bb4f586e2f01942eafe81a1c64ba498fc1d86b69c58194d3472a0a8339a9304ffe8f6eb49a670df0b4d0e680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cae585eb251e7bef7147dcf10b93160d527cdf3d4894f960503896502809da0eb633bca093e3ce225afc58c98bd6b1d6023100e0f4b5ae80f82dc02e6b41c23601bff22b73a1bbda8dcec6e53f540a6a2bfe284a937dabaf5f3bea500e9d172b8114f80302047c435bb500683066023100bec81aa0822cf10dfd4368fe9c7b263e8596ecb155ffe74b7d489a8d87450477d1c90f7913eaaac7adbb839c9732040002310081c92f1fb765aaf821980d5068274632eb0e523da7c21e66a9e86355e3fe9e88852eb0a9a074b0bb29e320573c7f744b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305931a3dc7d133174ebfe8fcd4aa554231f3de60853c610e6cb66ba9bb6d71db474115aa80ace3f88e09d2c2a03891aa802303de4ac5c8f9aff66ac19d1aa6ac571e9247774c4bf642c1a4b4549603cd4a830ace1023ad5245887bf3a935f2c1257b60302047c435bb500673065023100fdb161f51563b620b437ce6ff7d5afdd301427c34330e13f74032705e5a46dca52053f82d8644d289e55bd741bfd4a6e023069f46cbd1feff51c2152f4b94747b01e816c651981460aa99f14558fcdecff4451a79802c15417d1a5b932ed55b2d7d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c128db95eed872662ef5b194cc560b3778c33c0f5b7a499b71d402d18836a9fa4e075e9cd527ee3dc9d7ffad26e829702300f3b24afabd0a7c4709844db83421af4e80b6162ced517abb1bf314e929baf830ad9b6a3a98186f83d3d29ae0741c2830302047c435bb500673065023100b8c24a85f1c5347e1a39c12552167fce6675bfe75f3d2c70fadb88e7991197f07a0351ee243cfd77d2aa33add704a73e0230104f0f9d4db6c7a7fc65d1671f28033db92feb5b5e8be84e512a803c93fa0dc29c44c15067c094509e20d09d31a548e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015710d72536a6ae52dda79036ddc3e55f73e8b7d8eeb7114532253efc84cc67210d866b2349c18f79bc7a3e553fc389e02307b57e834140091d3e857918778a98444e12975bf69d406225eafcda3c8742773d154d7b69b5a2333a6f7f3edd51135d10302047c435bb50066306402300acbfa2afca95866d023b5c63dc887a8e7d254e76db439a2934f805e8aa96190dc946115ecf86932619f50714cc2966e023017633187149f488362bee7248f84c7b63813ed7676282d5c79dfc10304bb84fb92b7aacdb3ad439c33e3915fda1bf0aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107c693d0d5deee84eaaa3c878f81580c7432038433db000920afa2407f30aa72d5003e7c5329d6186b7d3b5fdfd99fb023100d66deddb9855e33cfa1ef05a35a3875fda0334bcae8cf5121aa6c29b4df6595d03b6ef51035a5356e67b98d41531962c0302047c435bb500683066023100e96d7c9ce78051e8bb004092fada4ff3fc25e20d93f21887dda22d9e2403bca1023a7697a7a5eab6b1eaa97db30360e4023100b4b88a83b532eda8f62adaf5d5283b114c7252f574a8e1877b2db3ee3795b6c01618090bd7de6ca0a67b8c1de5c049710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008765302383abc8aca35686d2066d6efd52195abd00f1fd14e67eed4ac1af10408ce1b8aaf59956c19dd6aff3c62bfed8023100d5e86fb1fee2288472c802775206800966416787372f2ccbe9fcc366fdfcf0ef53b1b09bbf8e2395f0331998f9e033f10302047c435bb50067306502306a8a642666bb91a2080d79ed01a6aa54de1df7f3ef859eebb8afa6d40f21005669620d436186e88afe3aecdc5e406165023100c9277e2d37755c6b3d6a4ddfc6981442448855b87ce1d982e93fe2fb915f5e3c4649858c90fcc024996e059ee95e360c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300a7cd9d939a6570d4506128502e7014ea7d079b4b2f33bfd5d25db85a219e55f857e60cc2705fc2df8a996408a95e51a023100e5d2ebf9f2e8125e7713d9060c2bbe090e2e6d28db5493765102e2562cac74875a41b9d0cb3042256569deae4d1702490302047c435bb500683066023100f8736fee84f27f21bd04f16585aca886665ba32ccf56bb6acf71809986944f43404ca2259b0a15e3dbd087256efa33eb023100f42f18ae3b3d36c566d73ac85236e72520695b1b65a9345c70de6dd5f5c2a7f01c026a1570a7ae5eb4dd1809883b37680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303981763294c5266cd5b7f4f37bb82720d96e7515a0d6f750cee1a93d0ba49134cf7d34bb62bb889e494c5a3c329b786a023100f3fcbbeafe8b45d34316cbd4c251c6cab7cbd74875f87e262bcc240d4530df61594e69e1ff65812d2aa31bb2bb928c510302047c435bb500683066023100c8a8fc704229bb991a864c466f76b6bde06b4b886b4f64fa9b5a89cce1f21f370e21250c2adfda44fd3833019db39252023100cd69243f54a124f8d3505c6983df09c4f743ae6b8786df35f8d3bed878cb6ef7058e5411ad4cb9c3da313346eaa22ded0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aa2b357c1d08fc81a0ff3ac2a7db75426cf3e4bc0175498df77de2f7a339c08486b730a80e6be3e2c93f3fb2258240e4023100dfba3dc0f76ae72bfc776b3529224ed7ab78b09e4aed16dfdf88ac739210e22f15aec4f462a3f1e523688ebbc72077a00302047c435bb50066306402303804db3b205af57a8b5aa9a28136ee2df1371f4f732c6e5f3277d9efb582faa8b4cfafff1443aea001af863921ba89390230191518e04d655878225a5955052f81a556f08987302ae6f337bc5e19043d9cf21770f69fcd1d6f828826055a185944860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3e8981ddabd18ed4da9f9fc0d76fdc19bf4ea52886550475a0948d6705268b1d2099ecee423ab1bf384fe9989f630af023037f619b4441528ff19ba91e0015107f27087f145304e7b30f3adc286da6a08766c0bc88b0b034534fae16da2ebd95eec0302047c435bb50067306502301a0ac3d42a0bbd1c97ffa25b90fa72e07b1755ebe207dac82e76bf60dee2b2fe3bca01ffc279dfae25f7f0573163f7cd0231008914422870afcb2fcfca75b9680c4b60007765d49ae5b79ecbea65108ef250c9a98c8960a3f69b67c7d08695901a56cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ead665901d7fb341a9f960d263a98b52889d35c7b0394b89e63d80824f4a424143f318aae93aaa0221dc6cf69b78ee8023100dab029852564aee10e7fad1ed5dabd943bf77b37ed48156ae6dc443c69ab028495655eddda46005e922467852a820f0f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303e33420ec3139a6f3b8e3a2aadabae08da9ca1b52c89a2c7bbb1d39f09e1fdee5337c723b22340275b9991a166fc7606023100bfa6ef1e5262d1b58dff63f0acf85b0aa9a876f5e570c8d512d6845e00b5b74d929519a1abc9960bfd28f74b60564c150302047c435bb500683066023100c545c793257395d0d8b3e82520218acceee434b378d0c993d00499d7c51f7b1bb5bdef09775d4a598752c9708634c0c3023100a00a05467ae5d9c39e348b7b3ec899f65d87bc96ac21094d2cfaf279a79a6251e87cd1db9c291b14ad01c81c2d15cf830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304cb8a56973be13734c214d0af0efe4ec068111ebddd5158b24e1318ea3d122283e317ce5905effc84300c169a461c718023100e622ca008caa503b61e4a09aad51f381bd7bd817075b5168cbcf1a88fc39100992dd9e83d4cc6fb24dba0d1c998129980302047c435bb500673065023003d4ae94fbf36a174ef3f262e78969f2837d6d5dbc4dbf0a183db31efb8c922376adc01ce6d8648cc0b74b11d7cb47e0023100bc080960bde5b767ce0235a96cca5a14e69fd7b35136ae236ad03d5a6096e19ac61910ef95675d91e3ce711d7f7055c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c007336c844da5ebbfced9b09f480cea0f16f6b642bdd358cfb373fd65379900376b74b3483b9de06020975ef657839302302152d9eddf24f67ce32b7a8aed53d3cc9b9a94925b28b966e6f9578c7dd76ca8cf99dbca2dba10beab5145e52bf953ae0302047c435bb5006630640230332dcfd4e7848f7ad6eac3ab44901d26f533bec7a0e5e523a36d31430d91fb2cd2ad203482eb90ebefc8a53ad66c945502300cc420c785fd9c2623a6b96c277f2c29f8a52c5d771c6fd0a889987411b47759316a3c3410dca98d5c0c0e2dc82068a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302be64bbe4283693afc00e1c1a499577e04fbe1828b8a7fff719715951a379bf8104e29dc23810bbbc9e3cd08515f319602306dea5f0fd9f0fa4ed0e16c7d302a415d8598f6e355e5d38009ffdd56f9218d614efcf15af927e8d0df4ece19698292c80302047c435bb500673065023022dfda6bf368f71b0bd5de4d4525f10e25ea62b177a7b0377836572af4e71bb6462cfc940da7ea907b8b04571e62375602310098f3b5aeb226d6d82dbd2dc47e3fc997b58c98c272735c663932a5a6a98b24d2c970c79e7bdcd45beb8f44d57025b6c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bc2b5d3235a5fa5db2cbb59310255ccae84022f4bdb1f43ea947bc41af216279f715bb5867d6dd0d7dac377ac26089770230409dac51d7f8b7052c3a49ec9ff6a4bb98e335ab9d8c852d0eb72044674f6ad8fbd375582d057bc080b8616138db25670302047c435bb500673065023100a5a59e0985f8520b3000e8f8f36a213e653732338436567ccde03c5158fd9980e3d8a3a6ce3e9962be7eb8718cf3e7ea02302de067e95dd935de6ae327f4c49e784a8b17bfd66c0245533028d89ec478cfecc05ba403f63ddc2799e696c07ad979fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e062f0fd1411c1ddf8b5808e864166c2f22a6fa1a086dcbd05aeb1cfbedb80460e8c200eb8c8a02a6dac4a2bc43772d6023100e4ea2839c40b265f37c6608fc8745aeb070aa6e480440afd65266be6108e6a9edb499f37d773e2b43d626219a0af41450302047c435bb50067306502306ee320d69ffa82ea24218ff770bfc9c15c6011286e485ed6003adf244d2cb9505f142cafff1abb43a589085735ea969302310080f588f81279bc60bc647a94efe5ceb52aaedc5b35e1b1005e68f6446b62b46fa2e02e093fe4322485886c186bb2fcd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303eb9ede857d2327c77f9cb5a0ca04afe02c421c5a0a6630f653d129414fb96c7ea1e81b0fbf610bd94234539e4dc475f023100d68c901943e7150e9b3b9ccf8c7492f727fd966c1538bb9a829134ef04731d1627c3562deeb3316a706d000e7c3319320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ea0418d30ab6e8ed6dc534ca0331c533f170539c2c2e9a4ddc32cdb5061d264f9a134d90989271713ed6e60290b6f11023100c3ffe47b379764fb970bd92aba1fb8756faea0153d86aa645049766296f88b7af685c3b7690a497625326216a0b48a690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023056e3d362505e1dface6b35d6859f2be43d16dd0f8bc28b9659da2f5cb751055b4333f5598fb0253147c5ac5fd6e6ae340230206106efeb30cd626a235f61a892ae88118cce8bb94cb49c0157fac4104bf1050d2e3d0d1c76589cb738ff7a62b2e2120302047c435bb500673065023100d5488861f85b48a0e75f8e251259789aa5b97c69873412da7d91361be56298eadcf43eb75f6b03aa070c0ab9830f760e023039deb7d92e15718ef03c34a50d1c5c54c95683390288cbf25c06731472ae4dd8b8bc191d430c583e227c282aceb3de6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f3a330596b25614190d0d9a9d2d8824ed25d0800a1ad2807b41690241dbdcb0aabb3c417528db3ed7d43b0b93b305169023100a2d65435ecf1a19c779ce320d5e880d0c60841ac8c8e11638d980c699f95b788674b5f5bba59bdab4dc86bd7ad0b19b70302047c435bb500663064023078e7467e3469c02c51bd1adb733f1b3c6b998554b6be8abdbaa8c7323338f360d382d8edbf9493970850eff2c0cfa2cf02304fe85e87ecaa43162a29623c1b3aa52c370ef01a8bef683e409b4bba4a5ef14879eb294aff6e7daee20afe854d68bd860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f496de038a43cdc7aededc85afa4a45089ae0296f0bac0ad0e93c20d2d63c65e8a0c386facd032f957b2bf511005838002307edc94a5ff366b02deeb1ad56cd17283b4d969ca752699a8c4b5db61fa87a232e748afa26b3f11e40c4e3cd252c3fea10302047c435bb5006830660231009649ef3d2616885e610d726b6ee4c816bb8aea8d8c223b7afd0577683ad7296f2c4d24a30fc2adb7a51ef02e8382942f023100e87f33db013ebba64ef492f9a3d4232bb849e6e111c14d2ab62e205f5afd6377979e5a985ae6b35b50988838d268e9540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096e2582b40ed2035397db6a8c35df09e2ddca8953fc25d78d7b92579a919395ac7910d895ea187269c8ea04a11dd17da02310098852b0cb3b33465cb8aaa61238560af885da709c9fa17ec658bd72cd9b8d3f970dddc358738da1b614cd24ec43345490302047c435bb50067306502301dc1e37732cbcfe35f11fe2d29bfb89f8e206ee7263230cdde6ae4109f2a6c74a850cc033b22ddc6aaf43742a0744b5d023100945a89d30e0c3e331725e4492d7a8ad555b6719be9ae4c66204b46530ace9ef845ce3896b8d0401d1df60a618c5bac410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023028d888ddce653f8340fe34914441d974146d71deeea4ca5494a253c95401babeb493c607bc7d7a44b1db3949aa8c62e6023100ebcc54d1c5424c9d64bed4672022da8a3b3dcc0bc2e4588133fe04a4cfe51c73c8b42268ab06f6048763a4f564d6d7150302047c435bb500673065023100af172e24957256b876f90cddb6cb65203163e6da0354f1b6270858dab3414e46f84fba10fd0cdb79647f1238100238a0023067587cccdf374965425b1dc49c648f7c7273c26dea1d5a6c6ad8da800dd464bdb8f99a1e49e99c9f52dd9591f83c84670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230046cb3f5431054d9eb41a06ef245f7ac064df4447c5ad04012268ffcb914e8640b2e4fada20749a1e3c81917bb3c1c2902302fa5bafbcef57001b86cad7b533bcbdb15d70fdc3310254e923498642c5a0e1291066198eec0a0d60b925f1f673fad3a0302047c435bb500683066023100962e6711270864dd3f3bcc11040370c654be3786e544b8c04626eb3763c6655a138dd631f4de2e35b4c4f030741ed7870231009be2f24da978fa3dec3b21e4017c8f54efb3e39007aec2aa31521c65383406dfa90a7b4901b761517483f36b9dd69e420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a72d33cfc114018ba238910a8e23ee873efb6ea4bbbb85b8484eb49106d3007273db0565e5e2f070a49e5237385bc418023100ad1a4fa2918124b4aadf33fc2b7bdaaf0899e0692550b3addd4cdc443cbd5f571bd2ced5f76f370ce3bcb1af3d728e510302047c435bb50067306502307346863b01b1eca5f61d77b064fa5bc0619a5abd0ff3bca93da2967997b39f53e76ca8733d79002e99f4fe80f697d48a023100a9f431192705e06f2bb7f72536972c4f323b5f2d0f5366939730b5e3a0e0b4921a424151d9769a128dbf8529eb2227120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c62b4e3875129aaa65dceb46a373756dcce9a223c2a913b288e66ffd3c8aacce02111341239268792c158d2ade1cfed023054bb40b08bd222faf4467ed7a1f7ad3bcf41f4c7d7b275e3d3cb24f5269111b1201d01ab09166ca7ce09913d494d38e40302047c435bb500673065023100d014e1e0c058818b05ee04d7a6fa622c96f1e4eb13e0f096d5bd38f3521677e96a836f2235696ba32de3a73b4107a6ab023031aac854fd1996fafcce48865e923b750433bb2f77aded179381aaba6daf0b4764bd39a47238d33e2417a458d16c9f260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b25de0d7c67aebb54d1f705bd243a4466f551d6b44d17c22911a83301f1743badfa0f61ba933b065091ffa664989a10023100a0d9f66994079085fe934f55f7a26c1e96c874bb19cea3fe1d093a2b13faeaa4a4794915d2a39f3c575998a9bbe748950302047c435bb500673065023057c710dcedf901c9077f639f3290492b9a0b62668cb1fc15f3de3212dcd5c8c22779514c1e76e95ede58377f9e598821023100ee1b0d2e7f5d028f3a54324e4e71d2be8045c4d7dc655490c8dc12d243ffa80a12d87fc7f583087d29b1c04ab32a5bc80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100814b682c758e3f4625670ce201d689f108e278d9dcc889ebbad7c0104fabe800aa83ba3aaa6b5a08906142238e1cdff9023100a8c281165b18abeb6aeef576c094ddb57d15f91f999e56d86b133330c60ddce58985e811db6ffee8647919618ab6b5b30302047c435bb50066306402307ebff3f1e4607d6630819d6546f0fdb89ac015bc5360e4098df15d59cc19976da405381848360e88a79b37e0fe81744f02301eeb8a1602dda119addcf00ed84951ff2a0354a8e25d7b8dc73713cba0441e4045cdd7dc6cbc79ab7d49d001e5fc676f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230110698fe93d5916538b983b73aab2ca9aa71f2247b030b150077c796f8472054666be476bc91e2d62860f3c6ef2571f202306f8982e69db35093ecfdfbb34bf9b597296592de00e2cb1e4f4bca1ac1bc3aa15e3f92f68b8e4bc5815661710b1960850302047c435bb500683066023100e730a760b5d44c9592375e69f460b75edd8772a219e3342a995342fad46b50386e536e27abd79e09a25829472ea3f67a023100ceb3f5b679a90fe58707dfe172ef86adf1d4efded48794003ec6fc9271666713210e6afef42295859f07c061356e9c520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e0f3da9838364c90aad262fada2389a820c41c03b54d6be41f171dfea70c5464c943663ad487033acf8a6797a6d18374023100c8efba80dfa26330d3c56e0376392f411aca9aad9af762ad2791c248a075845d5830749ca282c1ea69738ba3f29a53000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100930bc5858c0568b6b6ddd7b6315989ca2bb73cf9ecbb2187e3c81a6ad330b1771bffc2f38136de539bed0abfcf428a6302306fe6efcb5625021da4d38fc9e51d8e180f45b0f906c4568cbbadcc8d7b6010da7c9332251288c37e1c0cf1c3d54c18a50302047c435bb500673065023100f65a3a21c03c3e90da2d75e65930a47abcb858a8bb816fe745888400392d1491d7eeff0c98b289c8fedf18e979e5cb5302301863ecbed442d47275b91cbfe335c2936258deb299f3c55b52030159d1f447c75f4f93f47779f1ee66e4e28c0260159e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054631ef2b746564b052f0dc922729c82d7212d8c733f98cb6fd5666d309554bf5e953d91995e19d92ab359be307d7336023100a2b0f7160d7a3cbd1bc6a311aad805c3e5024d95b8539437c3c5399414d5044d1f3a2337f945dbe7151e1426e93abd790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065530c23448bbf63a7c20c9d7b12d770b8a3d81e0b55936965249ec013a0299a878de8346cc0f9cff15f3387d223a60b02310089328dc509142f917c63cffcca9575c5561c8c32fef1ead0e3ae829d7094368c3f85840be13774bb210542ab098c52140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230488f0961394fee106537fc14285368bf83dacf3c98f6511835acbb00ae9b83873db25c5cd24360dee0b2136b371e1099023100ab5e006a6808fd5e7c5357659554b103b6cfccb47126ca7fada44854fb5d100cc113a3b3d14e8a0405ec67b1894270d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310092928d390406c1dbc7ebbf055bba05fa09218021e99561b35cdfa521b3d9e3ecf7a15ca27a22aadc504d95ef587702d0023100c491f4546b92760256747ae4f4e9b1af9d0b9c0b6d7d93f6f3d4996872e1d4d354a466343f61284f12e44df2be13b0130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b2dc8d62cde9e9c351e1be2a519241ed115d53fab3c750107ecf41055f87cf6bf451e3c8a52324f90400b9e0fa216cb5023100f0fad5071a14431329ef2f9643e2d4c8d7b3b10618d70c6dac292f47b941faa2f22f2427e8d8b7c9e3baf395b902020f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b79816af8a8293a5a0b45fcdb9c53723a8556b9bf42550ae44f14991fa995e499f45ab113bf0c2adf33f7bf7e71bf880230342fdf8638bf02e32aabedc971eb9361dc5fb22722895c62cb26de471f5767c636a0f388df4ba11f909fa79fdec14b9a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e6366893d8cae2c31fc7c0e3ce1c51879d3192b2845a6f88a78b0e70224adcab900395ef75c4439a8719ef68f98208a9023100f7c13db4699d1723833b2b2ced8391c45d894549d24c636da341e93f5a069bbe3ea2c6e7d4231d55760b43deff42a7580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e0983888c0f217eaaa29f9fb5a282c1bbf10c0cadb9021a2548750d83cece17472ce27a622180d88b742afc3ccf89c9e023031bad571d3a9b1029aedfa6ad2aee8b462d08b205e7d3d42a572d40db21e1f8e52245725908d34d479bd53f5d2b591dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302b96fdf6afe476dcb813349858ccffd2564c886761ddf8593b6f9648e6aacbbaeead60d13d4c5aea551bbc7445f1d413023100fe5503220e6b02b549042dfe11b993b634335ab1a452c55dcc9d045f013bc54759f2fed493560174ce03f831fa9784a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c9d7245328e2cfe881ba2c7972eff10e50135b3f398166d2e5dd9258076992d85981b7d60af655f7401017384d85ee78023100e30b3e60fe528def70414763bbd782c35b8f2e38eaf1523651e3a5eb4f218e7dbb47d1d962983af1d50202167122825c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230275ce6f8259b0e6195217f10f3d7f07fdd6691085a0a285195b1bbbc37c3170bc0e094c7f2fc32bd908610be23ed5b9a023100a7c3446ae3247562c0b178a9dcdb9ff0f5cf0df26e9765d2c9f7c7c853e2a25dcc0a14eef00fce104b5020f94f23e2380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023018db8f98ce4d12bf5623b1876a152dee7052bb8122e3f0469fbbe37b82ab36f10cedf815cf4036cf043eaf33a50e389f023100efba8c5d6f5bd5125eb2dabe9f2230c7fce681fa9474f273eca74feaa310d5d67790be53146a13bfcb38d09c4db41d460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c2711eaa98069fafaeec212a8ab55b30a97bf84052f0677f81ef3b158630aef4751fa7b0ab0a9a7dffce8dfd7d3b3bc3023100c797d60f31d948ebc76cc20f291ca9a9cd8fd7e6d5894353e549f72884b920ecb8005895fb0deb330664a50a33443c2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb784d08b3d6c279324066592ceaa6b765e5880385c273ba53808d48b9c8d09a9d0017d3a3c6bcf3ff184dc7688372e6023100fc611b1fd51ae12a2f22a8b90c3fefa691030f33882b15d37c096b77f9f74a0d15aefb7e2923967fb4679556c15275800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304ef446bd111301b27ef95b105037945fc0986f6bb1a88a42bbd6a1fd6660c5cfc5ce30d5f605489140e39c6b2be3900802303793da4529491b360a3444d954ca318fa4d26ef9ba42727df7dffac2ceb777917d7bd495460d65d813095daccb8ebf6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300cd95615ec6e02289f27ecc9144a0900238bc0a3e903c5a89bbb808666fa6cb3293f0764e191303d1b318c4d0346bfdd02300d698ce2ecc530ae4ef22479fd52e83626dcc8b9802ffecdafaa9fa1fbd6873bee636bd4e78410d9dde7cecd377d4dda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b6d89877f383e8fb1536fe669cade3c54922179623fe03fd9218e850ce90903b66bfcad1bf01f57aee532af612b38b502307e895f7af3a8209696b986c32c45d99ebfafda9da9ce8a8e897d8cc12932f0c1b64658e753df6066dda850bb52f8c8fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023036713bd5b00c4a28efdabf18434f8de63b3041d2f877e1e41d7df90d4bad6aa7c80fe41d4d2c39f9b75a541404d0959c023100b1e90e5a26195a3a926423e2d9ac18822ed70adc27326806f7d74a32a1844ea2e49c729967a5be11d043eedca55086a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e909d9ad96f4bfa3a3a2c983e8418a2d317a35fb59723afb52268ac9968779fbe1dd4049e37b98ff85fcfc14c68fd6f102310088b3327bab203f9b8c815aab70b63543a7bd7b6a70c0c9fe0fbaa885533a86a7053269972d59ad92929b4cb5b60dfae80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cca9a6ebee5e07c8978559102ded0c934076b1a1c9d0d0f6678446f454ad1fe4d0cc0577eb5e339b7cd5ba45008629a302304ceda8f23c58aa7be83f07766934c85fd0ad4e58178cea41b773bff437b0e3036ec4a3748566815a7864ca77d880629b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce59a30e6a27aa0d219cbe800114cf2e38100ca13a4d2e329f5dad5447bd48f1dd1af6d5993f1f28dfcb989c0c086383023032d1f3e4710e05286496007a587fdf8eb60484be3f79e8ea8714ed610a280f97451e366d160817b8efa42bd2d77c9fb90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e81d4ddf977f5facfad35e145ada5bd0f7f41abcc93ad0b05dde4474ddaa879d5f77e8cb162997c1de381dd05abe2407023100cee7249c54027e8261aaaecbc8429cc1667dd42e9639642d48450ff9f7b7dbef7971fa17eae8c72a78f4fca1d239dd980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad4762e87247ee40f41f88b14072157ff09f4c4930a4ca89d5ab9e392a065e5322e5a3dccbe9c3eb52dfe656818749df023044cf4282976f23f888dd1e67f34445d1ef2549cf559685bec5b346880fccf7c230f145254c8863ac2683c09df542567e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082d174b69d67c7d58716716fbcccf0c4617240922418fdfd8ca1e98a286ab5ca09b4876029c7f208834375ef54bed1a902301115b62dda007a6719dca4dd367a9994d41ebe9871a3a45b5a172b1ab76946ebe6cc3b634791a3e6abb13a8892975d830302047c435bb500673065023100873bf7b7f234b3cafc3d7727e676d7cd1a107cc9fbf99e042029f2d15c625bf3f4df896b8686918040900d7e9a4076150230112565c321ed5e10fb23366c6ef19f6f63064f0e20a4a347c84ca95b7ac140b3a7434414343541e332f181c640a32ede0302047c435bb5006730650230254afb6764907e3663f5c363daeef6fae2876edbbaa2f246cfd203590350a0051024f1dd7872ed04a5231fa66bdb085a0231008663e8ff2f659b5d304c7e895a315f89211742b8e5adc6fdedec94a6c244f24cb144032576c3bf188c23d9430d5781180302047c435bb5006830660231009131e4abf5efe3d66058e63f86ef32855333a6ba9acd0a9da247b106d838251964c201fe5345fe8d7e7a3aa727a88f8302310081b8d95ffccd8d25d16002b839db7d979a65fde4e1833c2ec8107cbb1b78a9b33a19a74a8a1b09090dd59235c2c815ea0302047c435bb500673065023100c72a90505a931ca9a4eedd0377c57077c19ed4255e8d42110f028e01d4812162d4a9de6e918a458ec6fad1245e5bbfc3023043ce7405e82fc1ee77367143f04d8de51cf299de7ea3da50694a66b0a1faa22877450ab1919200e299b3805c585957700302047c435bb5006730650230214b7d19a072f8f2e1619785c6a9f24a89746210629bb060c1e2b04773830d3d911d2ea74bef2e9d98c6cea27a4d6532023100b29e68924e1aca958bf9f5deff15c16d006145d295417f62f7891ee40b84abecce66b33ffaf0e1f54cde3d86e030adbb0302047c435bb500683066023100ccbeaf3435fe5af749f4d1773d3eed2eee320d9a8dfd1cab15c96d4f7eee7c36e677a55594f93d4fb363f964e7b97185023100d7fbf4cb871a1f2c751c22478466781edfa92d511155ab29ea1dae328b052f6c437cc30a9065d97b109ca2a22962bf030302047c435bb5006630640230272976ebcdb6817929c1382e32957320de110c2ba9f845ef47626f96b026dc1cc4cfa429d3cf3f1cdeaaa00254c34dba0230769df28a3a728ea804f2e215160e30c74cc9d03c7845121b15341cd96c8863fe8360b0df8fc3b962ec4f0cf5b12ae6c80302047c435bb500683066023100fe45c33dbbee7ba897753439cc7dd4dc882f4451fab8d2dbc0f87539977aaffe6823ee68a1fe0aedcaa485a7b4651357023100a70dc5066f4aca8c6941a2a1526777d361ec098db2cb30f0c589d8912e862b9552efde4a8a067be669d05162d9ab16220302047c435bb50067306502302af8e4dba762d82f969303b79f9a652ebdf3b85ed6e2eed7166c147012b0aaffd851f0072c59afac6b483d2f2c628782023100c68458c75ca82e5722759c0a9090031672c93e12d75c34099cc522b7262802c3afcaa465b42abd46c953c299508636810302047c435bb500683066023100b2c6979d386a416b2586a98699340e8884ddb00bb76aa7f13440566f05de21a0ff28aac71772a1d7cc768ab773b6cecc0231009cde2b985964bcbb5008964826d0584cbcc343594fce02fe1f82f5b2d43178c8540b357c4311f9afbd485416b71c43590302047c435bb500673065023100fe3947dd2513e09f23a89f02e4efc21bb69bc6dea6ea049683b7eeacc42c6a60532f482abcd8caf5842f0a028436d26c02301d01a38bb7aa6ded5e7987d77fc0287f0010a40a3f9514aad7ceabcfc5ddd237795eeed40c0d689840982d60d1d1f84b0302047c435bb50066306402306120a4ccb6dc50369f9063338c87c37f7c3ec9881a35cbdb58d19fe908180bdaa2b901335192dd47f648843535f81765023039d2cf7bec67543b3a9c334988c317d7d6ce3eca5337f5208006df3ffe10bcc6c3664de58cac16883e90b7fddf2657290302047c435bb500663064023072a6e43c79d9f4b16cc90d84b636b8c6f8116fe9838f493964b102d07a83ab50b11c40ad42c9b08c825be5244562eee0023072f1dee25d59a77f2a9ca76cae8773c300464925436d31e742663cbdb21754356a6f288389bcf302b284880654bc1dad0302047c435bb500683066023100a2eb33939879b7fb382494060ba879f37debfd6808b1e78dca16e60c6c94d09f7dbebca1de8c9bf38b6a495ee16aac0d023100e5ec84163198d48b59e1a7d90c0afa509d83b49c28f7a257b1281138f18036d5c48aefffb026cdc505f0b9ec6f73c7b30302047c435bb500683066023100b13e74ae8b3558f8f8c6722f10b84c5db694e79151ad5b2ad39cb05e7b17ffee8c0b60542595fceb13c1087cb3b6ac050231008f6173a0caee4ec2e9d29810ec693dea9c03beff574fe23dd33e3e0c3e516607c2b58efdda46b270840ecf10d1493df80302047c435bb5006730650231009af5dbbc0b197a7a121909404754e932982b0c2a89c576d2570c536692cca1d6056a32d1db42f044000880e4c1badedd0230706826be7b324dc34b2f051433503a2a7f5e9c8c8791f61c6113581c46aeea86464ffc430c275435e024818af4a4ce190302047c435bb50066306402304bab3108af057fd7f8d50a7add81797259393395570f8c37a93dea8a90994d18e8a7785c0d44591b32330eb79652d585023066f38a9e062c632aa1c2389b0a42fe6ace3e12e4644071803a289ba3cb17ae378d1a487b8bfa533e3700fd11429215a30302047c435bb50067306502301f996d11cfa14b8293d5a6ae8c087ae6fc4bd7b2d04e10cf8f6e989598de5a7df853b0c642a5cce8bc6bae6f79bc4fde0231008471e8c1cd36f6f30b6fdc000185ce18d644da42a0f7f99c3b0b380cde716dd8f9f9edf741dd3fb63a355997bfa10aea0302047c435bb500653063022f5c927d715563ed7c6f24c92d3257ea054a9e5ae0f8046dbf6465f47e97f77a266dd1e6682acadf6a2ba3a0265198aa0230198b035ec266b58da6a3442acff43aae2d5b69f8caf85193af34c29a2a96dc64cf5e9a8d5e075ee8f44054181eec52b70302047c435bb500673065023069787d56c8d300db88483a6d02cdc186dfa807157dfb3cb720e1e71766efdcf2db623d2d16ed214168dde3d180162082023100a9af23d56187a581e79128174217325dae0ff6437552904ccbf252a0efdef9573e4f22440c1d7784fa840e8b3042cc820302047c435bb500683066023100b2965c4c154aeb8f65202d5436197140729ce8d1e804d2aa2530d19d67269d083c8713d864868bddda716bbd496c2804023100e19666060a0ba1371f39a528c7c936ce5098486f0e425fc0abbccf17dfe24eae6b2f5f724fcf922b6c2c55bdc0d48d6e0302047c435bb50068306602310084d4ba988705bd62c6f8e783ff431032740c92021321cf72280c11f1cda42952d3026d8e7223c3e3f48e4569f9220bfe023100f679a1754c6d1d1ef19e056bd78df2a8ff050837fa758fef33219d40f207ce8e851d9338d3252da665cb401ce9b165610302047c435bb500683066023100bfcc66b884d5ecdb69510536cba4f20befb4c560b89169e0d1322f31a9d99541cb5df8643b517a93dbdd8ff4148de6d2023100f3ec70c90b47c34dec571162ffdba9c96e02389d56779a1309161ab9296ad0d0c71da9bc7bd9338770a9dd55a083e3f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300fa311e1f170e511347aa4262725d7fe4e7e6d24c9dddf4909c3bfbe7f28fc7efe96c70fcfe6d72c49dbfa9a062cc8d3023100b1eafb9948683397ca66b507078a3561a8dc749f64db3ec0d3bfc620e25e3a79970c01e56e1abb72b0ef50e64bafc0610302047c435bb500683066023100a826284d661bdfe9ba4c08ca22ade5bb20f6af2b2ec6d9beab005d1003bfe20b643a2708aee62371f10d94be97be5572023100d8cd77c6b3d807f0a7c5f108ce68e61b2d15b5ebf8044c364afd8a1b41286f74aa275a2ea185fb03ec924989d7dfd8360302047c435bb5006730650230117455a4cf68605bbe0e3ff74cf0e0096003649a6f74aeb4cd1ac788e4b335804d3a2ee9c3f5581ee9b684d41a3f2bf6023100a4603d1cecae3673dbe3fc8febb510ff29a49fa7ba8cc3d63699e1f9278e6d2be12fdecfa0aa8cfb1def0a14f0c8c02f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307f5255065f3ff800020a2c6b4557d626e2de84878082bf525b6d033ead8d08444a9c75d246d176a88b11b77561f951e1023100d8850c5efb59501a77d5a6e08abe94e5b3737b2f2b3796ba60f9f1b901f6a18b5e9bedd9066dac75a0be4eca52a73af30302047c435bb500673065023100925ae72f068ab513a562db78e92167e654ad1a61c206dde33b1b1b6837b0f9ba1b6443403963688e006f7eab23bb2c0d02301a2dfffa05646122b8279fcaebca13df01a6e36d411369d1ea2e79f35a339f2c3bfeda41608c1b8cc091bc13e1bc05900302047c435bb500663064023042ef79ac5d16dec114ae60bfe16af2de0b18f47fcb265a0152c5d3999ab4de9b5f1d7de46d84c3f5250d92b8b3809e2802307fa70584a9dbc7f912de1b9382d953ffa47a41ccc9b3ade2135bbe85f2adcd46bef3b2224eb022f9491791f20ce3ad330302047c435bb5006730650231008e60198107689ad77d6ef45d8d0fd4a4b3c5f190f7ab24b17091c04c7fd584e6515dfac6da0a62c5e9dd08f7039d5de402300a8f30a61ba19d6cd5fadbe8e28f93330ea70c61bf91ece2cb8f35b360f1c06106cab9ad1943572ae25eb0d728258eef0302047c435bb5006630640230146c69f7490a8e4f81426cfe4dcc361ea67526457849f77eb489b09bb9ae6c7548918adf116dc6a87fed284cdd68b43102303f65949a46516f5cf28b5024b21b1a38cf756f3288b1e3457b7aee65b69edf887fe51e0da7ed4238cf312ea7032a96300302047c435bb50067306502307698ac4948f1e8abe556ce870a65e958d3b633a8bc734751d1dac8ae71c54ba65a2cea8b0446939e61f6af24e827b318023100991e92e1127059985c0cca00c0c7081f9532ffd01dc71fa3e36af462915af7fa1729d73c521eda5dd080c42dea798df60302047c435bb50066306402304dcf603c609b3a825ca5b54ea9ad1da642d1632cb8d56c55c2153adb6bc2a39a96eefb7abecaacd01f137a0d25e38edc02300c55eeefaea161ae0853a556c224c68cfcbfccf9ac1a4091f66ddc840c13d7f8699862b4b38859fe77f2da5c2f4e72890302047c435bb500673065023100fcde44ee3f2d36508ebf7bcc1f73a35eb3ee2e0edfd65327fa91e2a1aa0663c0db92c09bd866f81c54139d00e2322ad9023015e774bf9e327c50151d93fbf8592f09bcd7f59ec8e56642ab8a66ada169062b8d3800bb65bb2a273000cb7f6b27ffaf0302047c435bb500673065023100e5f5ba499e3fcec4cd7dc860f3121f1a6fc87008edf58f836ab2f77008468bcd57d229ffccab5d6d211cde93334e9589023008a7851da974317cb79b3aac90163e67484bb66faaacd0d699a004570b30bb83cb9314042e352da6167710db0d9b7e350302047c435bb500683066023100ddc58967e439f97424e4938a76d603aac75b83840c0fc4fcbe4ef6c3c6a2114d7b7e4816115c6c071bdccc5128f6046c02310081ffb15bfef0bbdb99517e4856a8ea9e0548e9fe35eccdbc897a1602360b4b3fc1198041a6e1b99a6f5779162819eda40302047c435bb500673065023100fb18db7b3a2a69b5d7ef22055f579f28e6d035747fa746ae56edd4e0b8e716afeca3e92823e1774437a24477823b622c02307f7ba3b81dbc3bea3f2c4ab7026154c884ebb4abbd218494cdd44842c2198449fb04593ca25c37ce5a6eef2d2deaff000302047c435bb50067306502305bf451bc1cda37899b6352f1807d404348272ec765bc6d579efa57770d62641a5c71129801356f89da5e7eb9d0d50134023100ad67df321956257f4d023ee581ab20f642714af3239111207258a019d7487098ecdb426e1fb0c90aedd33918ffc7f7310302047c435bb500673065023100a6bc2f5459f5918e0700027a5b7000f04c5a836805ba39a515271b36dd03075ceeb473097ddd47049cd1745317ed311802300efd2c3996f31c0b8945df4439e928c64cee8460427f4e1add240842f58e86cb5baf8dca05c414cb2168899535369b030302047c435bb50066306402300295229538ae8ba4ea6ff84aa7cc517058b38538a067a670e11d060055fcb0a12475f23fde2088c8836bf022a7af246f023037e4c736baaab5920132b8485da236f374ae5e3c3b6ae9b7f29c7ffa8f1d9d46e2a6a880c1e64640812d43e7b46dde5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3cfa9906ff3a1d3c6f2c1568dc28145f43b43b312f80efa34e4f0df8ad407d4b1d13354fb679dc73deaa2bfb75a9a70023100bdad73a130d4da88c61abb101d3829a23c0c5e8f3f12a58ddf6c178b723c97accde615ca9d95e8faadfcafa7539cfde70302047c435bb50066306402305983f7cba92de7c7dd767b083ca7a93e87b64935268195dc6a78c421cdb92e1119e08d771dd105e63c4dc57a9e868dcc02305d2e82b77eb9a3bf259a02254fcef85aac54f01fe4f8958550260f9573c2370020997e429cce0448addb20711c2da0f50302047c435bb500673065023100f969b9299d3619046f89b2b92ac07c534c391b29491e91d618eaed27e75c03facaef60566176c9f9990c95c05c6cbc7b02302efddfe44a580ff89e6d4b8c223efffd65a62b1bb03de1abf55efdb97dab66a303758a9761da8942c75190704446bd2b0302047c435bb50066306402301d591237c7bee941a3dde66995a3ebc87c8ce4671c4a88b793c340ab3edd4ae00b86f93718907e2f4efe13f0bbe35c8d023059ddf19e4d3d35eae8a2f42c717e0ee37de43f76f27f73c0faffe1946d56a0c80d87bf905304eeef85f63c61162738520302047c435bb50067306502306c4bf82486561399218c2a9c93b0e7032ed5f76d8d97cea8eef872f709f345da7cd9c32012e2b75f8e3722591ae3118d023100f375dcdd2512b4f6d2670f5043cd35d96746058da9de4cdf8690d406faad23e89fba36505966ecebdb4c7a9ebdf0e9580302047c435bb500673065023063297f9092a1f5f784a86bfc1440f0b37c0bc2f4db611a312cc31b332537682f443aa468970b863e53ec62b7c1f33f6f02310092127e84ef4af2bf6e103f2fe452730e2ca9374c116547a21ef8d0e0afc28f275eed31e9d679471b55f6ddb84ba6ebc60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230301b835ae890ad3a4abcf0dbb4841a46f1722bad1ae7de26cc457b997ae47f7220da1a80bcef1710ccf94af9cd79dc15023001e2f5b1ee7c9c2b20c05d734d44dcfcd12180e9e083ae4c7911d033c56da42a493e24bce91308e5594ccf138ac94c500302047c435bb500673065023100ee9b250a1bc69500517fd41c9e27c70964977ffbb6aea08b309d423554492fdf977833f689e1f25dc353827efdd015220230747354124cf6bd694f3b08a579c76f4f7a0ea27459a5820b9ada5194f95d3832942a6d055eb1f12a25eb18112f2dd3070302047c435bb50067306502302aa36bf53e4756803ff8f8f4ca96aaea914e16edc4e3040ffd7c7206798f53bf305cc181aea56bcae63177da210e7c24023100df4712eb30c81d45e3f89cec1a22b9686dc95f550069386ef9534ca1661ab7a6422dece57fbb15b4037ece50238908150302047c435bb5006730650230331540e7388904a6c0c521e514fc7849e1f5ba0b019479a2588b75917a499b3ef3256e49b14ac6f0f576c2793558c129023100af516d2751c9bd464f0ae5442dbb55a55f9330982600a939a812495d546fa630f44ad126d3e984ca5011c6fb1740ca670302047c435bb500683066023100e27f3ec282b2b2adca8e84757f853b08534dfe4c87a78c276030e01a704985a9aef4a7e81e9b73452028bfd1dd5b823b02310089b1091d439d25e7142e52cb8c7da396bbb875875bfbaad97471891e812da423db2190cfb7fa241c29fde7476b06eade0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fabe5dae73af34ae0b81ced129431bf88f59f47b7a3d0e607bea524f1305411274e2945979b8087b78ae4ff0b82a336b0230167d6d8e5b262ab0a255a9378404b92338cca6a74c61f891700133b92807463e53c72d134075bd6c5db27737f656fc520302047c435bb500653063022f611435c4661c8bd29ba38094246bdf74c64cddae50ab7f5fa3ff820e1234ccbe9baea39e13ed532d65052ce4096f3b023075e3211c6cd993344d9dbe7cb813b304c67692c7a23acb46cad257e7e9b2b3229d7e919555063d47848e777bf58f7a170302047c435bb50066306402306810880dc6f1d576c3f4532e26c6927ba2dcbdc467b254c6bb79a0393f2c26578364b7debcbf3d56e6ea9dad9ee9487502304445e3bcb88d5833489df2a0cb5d987b2321e90913d7db1e244d1024573e48239607aba2d3f9b1efd0585d8ac4560bfb0302047c435bb500673065023100ee13cd8c0e2bf310718c83f5ab1212dc4f8d5e238628e6d42aabd5378e4260d8fc948b7dd0d874f7c2cfa0ec660caf3d0230785b5b9597d0c17c8c2385d4d0a545f932ecb2f91489e26afe180fe1666b7d5ebbb17966ec881df983bac1102dd01d7e0302047c435bb50066306402305577bab3c15e38e8249934da3e1c5f1c4cac7aba4c600394747c09523ed44ea79272d1c86af8ec970a372a8c3965c9af0230483a81273d59f68edb2ea8555a26dd17c7f5a6ccc50dfa17f96d54135cd62f73e5fd26c792d7f39ead7c89785142bc900302047c435bb500683066023100faaffea4ff9455889839f768ac087cf882d1c34749db120084a787cbc1a75a6c68470aca6defe94effd6697c7a8da5a0023100e8ebfa90011c366c331477b7519c7da2da49aee2b36e4fd52abbd913f554a21d0c3cc55e54bdcf56f63abb28abf7f39b0302047c435bb50067306502301e613cda1187b9ff305fd88a1d25c18b373a8a206cb34ef8ebb009681c37cb9b5ef3e50a4ae26d9e0a56162b40aaa5fa023100e7fb5c30e276d47d0f49f14237f51a93827f13e4c423c6bd3cb37f5ea901b0c5747d6eb61f7c2ef085d3c89b558f2e5d0302047c435bb50068306602310085ac618f19343e8c359efb03c2e827fa05df547ebbea7e0e82099c71a4dedfe01d878c6eac0bc23dfda18449fc9eacd1023100a24986a3a66ff672dc7c1ddac129285f511f3945b0500719c403b46c924afc0bc54fa3f92263b3dafea9cbc20d1ed5070302047c435bb50067306502305ca0da3fc1fb7889ecc4a9e3022398193499e2d93aca80cdfe953e17cfb304287d7b290822d2a61207ae0efa4a300271023100eb16697340d2b583060b8374636e3f2bb4fe352c7e7915831e1d63213d8d89c35354a11a2ce20eda937a7c49ac8298980302047c435bb50066306402307c0bc8eb73af2174f89abd6a0b815c2691e4dc2b6f3b42f71bb33dbed552ee2047101a04b39d32dfbc34b8b3a2f6a554023074ae1651ca1fd5c1e45258701cb3cc0a73e3b77fef328269f320a3209f6e04625692e2e4c7c7661be2c189a4b003f6970302047c435bb5006830660231009b772a5c018cdea604114b0f8233015762b141ea99156aa0ae41a6171068e4470018da85a65d7cf548721ca831ade8bd02310087e73b15b11f913795c2eb679d81c518e53c07b820072f8e89f8cfef9d894c98ab185a679ca0847a177f29dfee1293bb0302047c435bb5006730650230735727ea7f4b9d9195d198d5631a7e90580aaee2272ed3795f4ddbf5421c2b13a41f3a6662f5ddd51a10408de6865611023100e5024b6d81031b681c67d9f5c9740df5125c1d0bcaf62efc944be46b6f5dc8c14d16bf94ae91d7a9b3dc30723fd3b7010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e941f0b06a66ac567ccf9c3ef917a3a30c64063e7859ee2e51f9da12a009a41ae61e651746f63a832144d77a0e3555402304a061d16e2489bc9b7bf7ea5ae7d7fc293e92b38108e84b09604e227555f4e76bc235359797f342c5d3f92dd953f33750302047c435bb50068306602310081082a1107fda0fec56411609feaee0a163b59cff7029535eadf742509fd7f6a97af4bd4e26ac7062adeff12c7d3f8930231008a49483f86bb3adae09474837deec86bde5193f5a4a8cb7510c4217d6488e46c803fdfd5bc01c74c1addf139c782443c0302047c435bb500673065023042b638fd88aff106d79447c2900d9724628aa7b52fc048224effbcccbb69bc3c046c406a95fb2e93d625ff210263dcfb023100aaeab1555bc4f0488e83c673dd91309dbd644be0c6299c9dddf3d678a3bb2cbe6379c56584810f938c6b9e744d0dc1920302047c435bb500683066023100bad1410ea74ba76763ac48711653391ea9a1191731224d2c92690df663b565a2da4cfb5e85fc75d05ad8c3c9234dd5b8023100f4a7d84ebb25e3c570bb2bbabe5183191d8be51542125fd59dd1f575f806ebbec3dcefad66c63959ef6a00057dbc49630302047c435bb50067306502306c818785a0322e80977a6386879c884dddbd0e9503f7fe695fd27b6ed29fa77ce43dc20e1e1f415ae8e1af898e1c59a1023100822ac9edd447fc2500546f4dda7baf1849da83d90d2271200fd6d7b88ccad00216ce04627ef7c4e3da79ec14ee46acac0302047c435bb500663064023053abc7486d0d87cdb6dd967a82f45b6926092203561bae4285238ef833151c1e31158fb70b744293532fc04f027c7012023065c9188220aedf7e51f36e64b0b36c30a0251b09548a217b2aa0a1439a2bbf6a26be0822871a23452f1d8fa008ca0f0c0302047c435bb500663064023064d5df1b4a735c36627698bcd673fa3ed0fd94980f5dc1f8c0ff7a407f373cbf45a3938dc5fd6d63e4601fbed81f063c02302af2808c9883257aee211a80d1b890d1dfdd45af3ed22d4f1f37c77d5087e65e79b0f4acc4501c46b89251efe846749c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8e406036516dd13371cc9c54167fe15ab3e21a2e3b9a9d05765523dcebfa5aad07668235e619e65326eac6a7601b4a5023100fa20a52896364637b7f8836ef1be0f99fbd3fb3f0f942054f9f5ad21757aa9d48614b24313f9cb57a1e1f84d623487980302047c435bb500683066023100ace163cb7e60af2990f7214ab7748e41b414e4bbea851ed129b67a2e805deae2a0f46950cad4894ed8f0c41164dbef7e023100aca797171249fb3e2dcfec1f74f9bdfe80cee2f7d1c9b5473300775b30e48d4cdd3244931b445bfc0c0bee6c295a36db0302047c435bb500673065023011516c992e10e1315c8d9ebac359837dab256105399af51e8b3fc27fda3834a888cd0d8a6fcf1ab8d13d0f461273a7bf02310099990c1019fbdb9a3bdbe349f903d130a3227ba83630ee164195beed4a25fa805b8c5a9a458b0c7949ddbd22242cd8570302047c435bb500673065023033145716f0f1ff785bbb0ac1f43c00c32460f1d26bb63d728ad348a812441fc54be47acb9da452b119ce7981a25186d60231008ba558b0499f3f4425e4e09aaf7ac19ea6be225547f3dd99e2204ca2799d9f6e61b0805b3b6d0006fa91d3b971fa15f90302047c435bb500673065023069bc88cca4a0ecf65141662df8c4a9df250eb6b0cf63997008008833d13da97357adf00f0f3f948e1bafa7319c9cabfe023100e579bc5c591216a4ba6ef260bacabf0451547b05704b82fc7c5ec21669091e906d8552f42697e67dd7185cc6cb4056be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a337031126efa09ce505bb985f3df93b60ed824b3c076cca2e0cf722d70cf2ad34adb407d4480f9f166204b68ad5f89023100bfbbea43953ea3e34cd747fe998c54bc838b7f745d4f6bfcf520979167cf54ba517c08ae7ed137a0791896d7f2c21edb0302047c435bb500673065023021ff6752d4a117ec14ff67ffdfd9f079d2ab8bce2606bd4a417e35d616caafa5fda9d803176834f342ad69730dac9ee9023100f170a801b923e00fe0f1e06b0e323897f68bdd06d2f6c27f74c2abfe2abf48e9a8885003d8ca04cdba955cb5d76b4bb90302047c435bb500673065023100dabebb58f75f653e4f0a71702da8241502c88fb379ffe0fb62fc781de7912c28e5fc56b4802aa377cb7b279c5ee6d95f02307bcb12ffa7ca6431575cb9907cc27cf1f8a862cf0b3415bfb3f48a7dbce29a7d6cb0034ee0cadc163410f92be87d5d170302047c435bb50066306402301b0d6102f3550365d38534e2fa25e948133a7d8f029a8c47005e9151dea28e09ddaf3e4647cb6d55fbf2ff444445911502303bb87ce93488eeab12713bfaac9ea88d1068d67d88f3b03119ef8cfdda083808cdd7f4a6063aaeef2139d898437033370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009acecc1262bb579367b1fab93af84d87a0981d30af426e295a03605e591aa46e4f76454e8532099f739078e8051b036c0230572217803c18a6bcec6291fd01c50c4cd869d080d3c627157d5524d2db74109cceaf1e661289876dfb170bc2f6dbcaeb0302047c435bb50066306402303239c788316de2332e599addede0e1387e996b00fd9458a6653b6319a59044b1f2a518293c235f9920958ea241846c6b023009c121144ade810c00a990a822c302b197753a10bdcc6c41761d4af09b5fb5eb7974393ebf4a835c9ca889ba9157be0b0302047c435bb50067306502302c594d4e61cb80375dc6923ffd924df697bc61fd17ca5686ca42b34ffaa8162726db4016bab60f94cac252d07b8364c9023100ca5aa5e9410dff4aadf60b0886c5a373e8b5250abf942ac3b7625ffdb01d102a45eb2eb05713652067eb2f7bdcc51f7f0302047c435bb500673065023100b9c37d9d0000cb27e80a9ea594a3d1b2034050bbd4e9cf37cfab7b1b3c964cc61df87e564a91550d199e5d103457df820230567d67cd0ca414e36337260b0e3c8e2ac34590a8fb36e45392c1149beb19fb9ffc94f3e93aa6ffced93ba43cb67874060302047c435bb50067306502305bf05e1e840b252e2db32ce2eb55671e9313f6181f2541625c47602188fdef11a101fe6bf05ae4a0ed32602189638d4902310097631970662742d5e5336800a17c46183dcde148039d7a624fb651e565dab49ee9c2fa15ec6da866ede8045a6fe5a5f90302047c435bb50066306402301a3069ff9e85c13ef6c1a18f288551d82e9365f037ca51c4a40720b126c0887c3af84679a823ba771f58964646511a700230680df99ec97ff5df6280147279cd42d4486d3b1b0664374d257445e9cc56e603d236d5521687cb2d7f83ea20de0fdee70302047c435bb50067306502305a38e5c9c70a0d48493aec4fb25a5168c6a7273442ee6b77d1efd015ab9311c9f967d4c1c4acc9370ac505a936b50366023100e6e7222bbe2ecf41622b6e2c3171ec9fce14539ff8a3fb908734042e9d7af1386db6b1b342e06ad07bc7355421dcc4e90302047c435bb5006730650230769c635f6a725c62604d112eabd6f691d1abae9d57e08eea23c099198df9d6ef1562a7158865e21f196904935d006989023100d4d81d67502d844f9f583eee36ffe36a9d480a455b5264a57cbfdd2897153e2a513101b26f06c52fdddcaf119ab856520302047c435bb500673065023100e9bd1aa36b22f4ac9cddbc44c01f602be1aa8032578700fc493bf573432320a5ea25d0e6d56d2dd94e0c96c72cd392c502304d7ac7ca4fbbd3188c43c93e766db76e48608bc5ea2ce545efe7dcc12895bc7fe22c57f50895c8e049a6fdc278403a0c0302047c435bb500673065023100c7172e1f6d7434b4257bc65cc199be4b8777ff82a6494cb1ab662c67c9e9c2cf5739805851eb9ec5db7ec3d2fc47af7c02305b51bb121183f4fd938e673a75890400e2c9411ca8b5b360f83d7ad38168cd4fff2357bd590193fcfe7ac0f98207a0ce0302047c435bb5006830660231008e6068ba633ad47c68da4465faf8d581362e1a1104a7f62fc70c51f2521338d0cf40b3b124cd3f77c6d5316dc3cf870d023100c008da827f083ffd3d00da5cca17bbaed8ebec172ee7e3bf93df08c16211b059c3c63ea58e0c05a9260728e1848d8ce30302047c435bb500663064023036de199848bbc38e5b09e367459db72e6239ee84b8fdbcb6beb0332ba5f7500476a2eb8ad33df0e3ca3a5cf2d525052902303b611f8724592453a2db14560f4d490ec9896cfea5035c084fa6169c07653dfe907b01cd67a5663ed3f7e125feb86f820302047c435bb5006830660231009aad07c9955fa9023f8ce4b4a3daa53c2935966c155ab0b237241fff394ffde8f616da9bf5e270f88bdc620fefdbd6d6023100aad2aab4aef2ddebc6998c29dbbb6b4080b539743e8684fb0333465bed0c1bde05f10b845ab7d5e5c1b9066bd962926a0302047c435bb500683066023100b6aadf6fed414c321c62b99a9bfe67714927c0b150a40ddd59fae63fee154bea354ba91701304732cd2c8fe3985de82e023100e7a32ffe160c392fbe4a34d8f79c8906c4e9b48b500d424ad404297a6aa4c5c6db91658f60d5ad31b1b5542d260c252b0302047c435bb500673065023100b098cf07a5fc8b127161e3e1e45cdf2c3c152d75d4f425479db1d31cf99e0182a41ce18d7311b59f114dccd3173162e502307ad600fe34aa9086a87a5e70e740a5fcafe931281752c68b3976a8362fbc379c8cf65b9767922c3b7513cf88d71d0cc10302047c435bb50066306402305f10ddc67d9c6158476e9df97f68507fb707c313b178fc81f8b21c0c4e22e9f221c21526ba6c71116333bad655c8f54d02300479ecf17d175f97324b3ff7220bd1dd04ec8b8fd82faf602a3fe2da895ab3a09885ebb8469234302dc0bcf9636c8ed10302047c435bb500673065023100a4bb9c26ed3b31dfcec1058a743067b7a587294031a06c9a85d4bda55119e5834e401dddc0e25ea386e5028f7dee422b02302689d989921cf5962af599ebad06f328a25804a176285647e711342924f32ef27eaf20bb6dc11a13f86203f12bb313d00302047c435bb5006730650230012b559ba38287e9b09f0b2fdc51d4cd1e7a017eccd53f3c76c0f17c029902a8297e3fff8394163682f06ed30c0c3e33023100cb4990b5acd78e8b3ca1141022933b7c3be24121cad760b9e68e263efced3f6a6dca296e38ba10962da036bdf3863f550302047c435bb500673065023039301964b356f840ea06018706c79d75d6a56bb812ecef512f9adb9f2f8a34eda0f2e7b67a42267b769640210e49439c023100843935f67e38f12b90a0d0be388d7de48e966b67d9ca0dfd800ef1f9611c14fd7b23edcc6f5a7734335ad24b5af7ab550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f61bc5dfcbf28747292a91193ad3b8f64e0b396414f7277ee19ff787f7264efecfbdbe9cc0ccae94d49bd7b47bb9fd1023100a2fb8114df37d01ca073604bd9457bcd8e17a4c8c8eb90d4f9001b86efd706bfee2876ba60537da0dbdd3ae8c15c472a0302047c435bb500683066023100b34b6a8558cf45306e18acd575f3802f0ec705fda8fce7b548a9ded964189b96660d351f129331d5cb18b55cf2e37657023100a5f37348c081acd8d84ca76757f79a5c92d8b3d93f21dee127aec4a290d8ef5e093f2b617648dded68914ee06b9b533e0302047c435bb500683066023100f151812979f8996a4a795b3ca3460cbacecf5c854444681e69c80e0cb24efb51ecd9349a78069a9af4ec77606b1e773b023100fd93154735b083df6cba3bc896e8e93bb009fad1a6d2bd6c555756383067d8906e0958e13d693a2b108464dac61d612d0302047c435bb50066306402306fc497a3e3c1ceba3408bfaa6495ccc7d846f9f6022f6cb818d510fd99c12b3744845369038a9b3bf1b27a4cff307ba5023034417049a5480031b7c64a83d7f2dd834c5bbcbd5118ea902e4262d15235c6f23f78f8680e268425104a4eb9edd9a7ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac2edc2c8d0a3044d45d0890f29beccf50c087b8053f161e737f3671da861bf955425bbbf39ac25916f948d5a230ee2602310098bbf63c3597406b6019b85518cc1e764d686e5eca00349145443f36dcc814a3a6c02944ad25f6617f0e9d9f4aa7a2cd0302047c435bb500683066023100eaae3b92e837954b97f78e0d62dad25a1528710c318b2dcc852084ddefe50308af7d8700e55ce9772c72ad6bae9a50fa023100cea5627646b6057f0d239c522ea08b9055823879694be9e3df5e30d5608753f5ff68ca38ed28e7ee56f219340806d7c90302047c435bb50067306502303c08fb1d47e25f574fa7d7f3baba406b4a7a256b4ae5b065013f7c2b31f5f1eff22173f21ea9edc16d3565dd688b73de02310089f8d8668c933a95ccbb6bfb3feb48c2fc265a75fb1243240344948855b00fa7851b7b8af071a794c2001cdefdb03a480302047c435bb500673065023002ed5e2c5af1313b45ea7de6e1569e4b24598dd6fade5cc5fb76938358a91e19a6f795cf6ecaee40fcf8751ec71449c6023100c23b6256d42647e08054d08470a7a2811ccccd24e0b5390cc330d8466fcc5bc9cc1182acbf51726240216c00923437470302047c435bb5006830660231009047dc2a2e28d76e36a6b489bc1c44cf7142d7445ef7e30b990ee67aca797ad25285c5cbdbf72f6d6cb86758dd3a6935023100cc39f3161cd6e02f10db1cdb56d908d975fbf4c115d35b1e20fc9473c5122be84f837589097bfcd07d3e45553bbb919a0302047c435bb500683066023100e65bf10412936d40c8c2375f0a466c7d6b188bc3751ea99d30908e5bd604869c1fff86a21cdb40ca9dfff27a6c1ea0e7023100f06a46f316b7d741924f91230a593b1ce6e14c3bd8812456be41dfd77069b9d2a9499a0c6b773614c35da63a3a365c790302047c435bb50067306502310092ab1928fee7b656bc8d04040977975b507028608ec4bb249f788b802e589d0322c221a5229db7964ea3c24cb60754dd02301d7ee320fed2b7297517208b845aff42e082a84a7918d273ceb4c215ffcf743cd5e6845e28f3b7d89b6cca9fb9f92a7b0302047c435bb500673065023100c2fc2f6e276d744e759d2091e7aa449f2a879f80b5791fe771dd2b4886cefefea959afb3168ad366205d370a057faa72023043b112d03ebaad3266713453258a525db2e4010a2577532981396f7dd54b7f6044f45e7b32c0c4631395f5f4125a12b60302047c435bb50067306502302eeb519a19b878da1eb58d66f486b1ce12f58c390d4e9cbef93eeda3390e1c389796511bc297cecf42e316fad1b9256502310092959c811ea16a8e84f67c0865484c364483b33775f83db45a24f6d601094d8b2b9122b42ea34d302184f76dd1852de70302047c435bb500663064023004399bafcb309e68e6d984361678075fa3b82f52cd4761157dade70340719ce6db79ac9ad758afaccfd6cbf1e21d843d023024a78e9f5dc3dfb2ff648010a6ba84da5188d893c7fba3490bfc889f5e5a1e40cd80ea6429ea6ace3efd849e966487730302047c435bb500683066023100b440b039d71ae8ef117b963594fc501d5d6f60c918122295f01a154a02aebb1ec77ef087fd85b8110a1652d7082b3e9a0231009e2ed611ed78ec5e117b36f59566bcb4615615fe6804daf4dcca89c3f704c9daca3c00a1ccf4f61d85b3b491fa2072510302047c435bb50066306402302d7faf5884314d272565668b193df001bb37765a9a67f2161d72f896da767039ba6cac6f8201b52af25f5c5ee67c722702305b49e59d71625262dd8801d6d2c506e857429a7acbc19287e8b5ad58235aabd34ca0ef7fec94074abfa1a9774d9377dd0302047c435bb5006730650230681cb68d66ea622cee2d0f598bf02b2c27970be2ed4cc4eeea7c44e13067af54389f64f7634bca56f48100e0f3a266a3023100c7e0daffd883b6ae8629f7273106053c86af46eb6fc30c1bb227d6e97094ced5f8747143b8532d8b82a06458c001b7650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c526f4c3380120006ee2ff5c8ede8f20e662dcd4508b40f891b990ea6fd4d52a9aaa67319d4a691da26f37e302837af023100d53c97ea3255e65cfbe2b9ee9186d4089854797bcfbfb8ede6db8878865a3c549115fd0bee8d0f2e0103ccd193012e5c0302047c435bb50066306402306e7da8f98f0776b6803f04695c60ada4dc81ead4abf09be2a30931a25c7e799370cdc116e49c372cdd923e16275df5a70230553792a33cb84d8d836f23902e3cf0113288760dc02402173a5137cdff43984a447e2cda4255ef61923fa04323bce66d0302047c435bb500673065023100eb79a088f3b286e4dd274f19f93247a167cbe35c1695b732451dcbdaabf870e1f2a44b0baf650d1d8be8c3d24473a4410230042ae97b7d4a404cd0a94845d7f84db10ea94cf7457a6549d8b8abf21eb5722f7293c35d71bdadf007f0d382a5d7fdb40302047c435bb50067306502306c40eb2193d016a6afa4ee1b83c29c3c176569d308f2bd3995c82142dada33929eea73354dd4f9d2384bf0acbb7c84620231009854cd2c8198d631be554de6d3f38230052b04ec5c02414f74049f7b90b8cb56a721d5a8a2424367b14be6a9b0ef41fb0302047c435bb500683066023100fe8e4926261baaad0586cc0a7b3271b5973fe8f1f62749ddd6db7c2d74daad0d2f5ea6647bfd8555b8fbe856e91acdc5023100b97eed8cfc03869d4e1762923e56c30d18b0107f53f438959126d11314b8596629eb1bb4767957639999df4b5505e9770302047c435bb500683066023100b78fadbefbcb9998000a10f882c2f0281666d0ebd1a84523bcac8276c3cc638c4d42a9d47fd6a01281ed6f83b24d1af902310089ce42c61ae02f7495b7d7aeee608c84809a03bb352ad19254e33a3440263dd8c163dd7e64b9979503c71d500745ce2e0302047c435bb50066306402302ae0d39573b9bba5ee24844ff430bfd5ecf3333ecc4a04a8f8a9017cbf2a366b1c98641aeb3c1759bb8d922af3919018023035371f7aff490e1f2c260c9f32d26a8bc56b99d31528ad7cc064b1cbe26590e6421fe801aa977825655e717b114da0990302047c435bb500673065023100a78da95cf37a62b745d2b0cad730747115d96902c49790bd45c610f730cfb40945ac7e1713aa73ba29e9b73554a8f7cb0230242303d03b6c266a6d15b9e8b2a82b58e7065913b223db5c8a662d2ae6873a90e80126ab56b5a037c73828d437eacc880302047c435bb50066306402305fb484277ce6519d2e2f3b7ea60922cf4ed481e662047e1f2278a4bafb3b9ad3bbd621cf7182e740874b1cd9d0a062b9023031e2eea0ca512dd6ab4eb014c699149994bd72317069e3db523cb21af8589b4eb2c8f0be93d9e217270d0d663bf86ea70302047c435bb500673065023100c1206f997bfbe8790f012d799c34c6d5763d9fb960f1864df9897b3b5fcd91ea76e675aeac1c60ed7fe8f39d9ea9927002300356556cbb169e236c49cc50aca8f2e324c48a87926b515fc724ff062de6ac3180fe67f11138ae6912982239943b235d0302047c435bb5006730650230033629a0f08274cfa0ce2dcfe7542917c5995d16896081efe485f056566c3ce121afb2b279dd6917e248924a4d49cac0023100acb1b924fda939bc48d0e4f166c65b85ac57e598b400637650ca9f6fd2e5067cd2489ee2ee55f4ab707126c6e49a1e140302047c435bb50068306602310091a7cef80b74b4bf0c8ad02cbe71f7229d3ba80516de71fd2ff3309e54a6663022943e4ab5df43e1ef2064cf85fda659023100a464235f240aa08a2e75a63cadec14ee7b5921b6c30d320de4ba03681592ac904696fef393a4cdecd1268b0f67e982990302047c435bb500673065023100f3f6092a405a627f46d63335520bc49e57c1c32064b2e25c28e50ff1940d04dd78b7b453bda96168bec6ddedc302325302303331957dd3c551bd8063b28579330e6453e6695365e5834b2982505eb29ed6cddd32043cad322965d7c732ff412bd0a70302047c435bb500683066023100ace6a4f4743c410e8e840327975995c6102f68e4f6cc545164f4ccea262c54200007bb512d8ed9ac12df25fdc9cdd0f60231009e4baf20fb46eb0976ceb4c11d5b3c91128f31d4b2d238f45bba921d25abec212ef67a7bb0aa924ce10956d1e611be660302047c435bb50067306502303fff4338150a2b53096db295d1376f510cf644ccab1a59c2ebaf85a8b49e9f31cc328c585da28256d28580f3ed162bec023100c925e7a996f518792cc547f131408532c086716d14cefe46fa8b1f4eaa1f3c5541ec0c375df48a5da57a46c44b96ff2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bfc3182a2c5566a8de23b95066ee739614a626cc8c23a1e6903a46a5e4627089d4038f27bd1281970eb8ad9df22c986202301b9cf4dfb88d227b19f530a028bded1a229afdf7356ad62e9c7aa01622a17e1c07bd4c2cc8fefda1e4f0c063cf7338d00302047c435bb5006630640230593c8d9ce9ee1c1c25653c5be0683e5730eb2666b9ae8c1ef8feb3672411c02887c66563a96a437738f8df0769c47587023072f4be8b2ac20f23166308311a99f9ba6bd7def6a2e167d018061a3c32615e70de42f6191180b95e6b364547bad0dbf30302047c435bb500673065023100c89ae7020ca2200f0000b6f6756cca5b38eecf179733a518d7a2bf439ab7e769a21ed5af3639881d11e0959c2b10906302302aa819322e5f41be8efc126185a55cded0dec017bc65d608fb4466617412a509da9bb737e068f64979f7820f0993f9310302047c435bb500683066023100f220de3541250a2e8da3f12c5a545e94e3a3ce3d5cde2bd25be7b1825caf60348ab8d89ab64f0906147ebda82d060855023100b91534c7b2b14d150fb575cca141be8e878595f60011697f234164decfb506b1688b4c05f71995dc8fdadc27d38fe9310302047c435bb5006730650231009bc2d4ad4e133fea25b7e6dfa24e0d7fe59ca9bd24b8ca0bf4e6a71c83588ad96b908bc96f555d25bf11759a9e9d5fba023031cea696c672444b1296bacbbc44462074a37479b2d902b081299e49aaa96dbacf4353e2e1508c90d2b46423404c319a0302047c435bb500673065023028242f988e9eae94d06d46c08eab8a8acb3b0018acc621284920702ea63e591d6d3d6fa2612028e735520b18e7a9a3ab023100a18703136cf0a1efbaf396163efddac0a233bd6c5ddb121c3bfb39431326e91bdc547cb414166f7f46150564ba3e52d10302047c435bb500673065023100e7e9388bcc8e37b8171b457a3e0330a78065a83e46466bba2a708f4b86210786d3d0de5feda6fce29ff45077e6501a1602306aeaed3dbbc92efd1c8ba5e70ec5d032674b1ab41bdc682d698471f5b56cf0727140e8a0039fa9f278d0c72f752b545c0302047c435bb50066306402303c53368f4dfb39d416357c157897b3167923962acd0549e03ed2e84a81921131085faff97074c9bf938f4bc63ab4ef17023015292c2006e6264b607663b7874cc2150dcb2fa56bea696bedbe7b4e9649e7a69c048ee557a688f173ef507287282a650302047c435bb50066306402301b890e52130013dbca1792ee145850f49c5ef9babc0f9b31ace9092cba9dc4e7b2ad346ab34f912344b5738355dddb74023031226a9f4acad040d44d40b3b52667e1523f664050d559e11a31c8613037134f9070a99338862d3350e56e10db2271730302047c435bb500673065023100a056b43a24827e5eabcb8fa76b621dfb8f584db0c2afe81428edc96e2a66bc48e9c602192068ffb0659b50b52990579b023031a1de1875a948a59abf0566146aa303b53572c64ce2de31eae633fa1ff03e7516d8a0188b69fa523a6e27a7942628db0302047c435bb500683066023100a1e2b04e27b88ce897cc325337d990c78f13f7448e5a7c3debb01ecb4c492ef800309fb3c72cc34cfeb7a662433c253b023100f8212da44f659f5a9513581ff9e013070a43fdffbf17355fbbc3d9d91c5e9f5d7b321d30a61f3254dc33c2d5ec37620b0302047c435bb5006630640230273fc9224d12937460e78eb12d6e74c4767e1839681d2f365bb5f0112c69607fabc0ec3f8ad0743066fd9105d3e6127c0230107eade47d5750c2a0cc47ac285febcab13fee226fa6649cbc88b1ae1ee5d09bb73ace9f0762fd008ee60dcad18b82470302047c435bb500683066023100f5237b5bce5d268657d4c54784875d434da434ce80b47cde54883020c6a40535cf44e822058730b722a3ea9cda7946fc023100bb4dae46078c9536212a8235780fd7145c35ace29288f42a6b71183eaa5d412cf2855fac827e1cfd60131187b643a0b00302047c435bb500683066023100a27a03235566c8428aac9fd8a19ee696a5e7a5204d38f5f6431b66b8f6cdd314e8799477204a6d7bca48016c0516c203023100d5da3817ebb148477d4d936a56ac95117017955bfd261a08578dfbb162151cc3a7cfd00cd1f7c430d2d163efa5f85a410302047c435bb500673065023036b80ecb7c88c360f7f1a439cc10eb6a867cdf2e554aa25b1fb3d005e8bcb494142eae49348b0632951d62389bc04d25023100efc8ba3a82c4a108ee07080404b866795eb92cc58f40308fc4e4f402078eaa3ddf1cd0e8ffdf6ebd0b41923b9d8889e40302047c435bb500673065023058b70c86c24b32ea546bfd3394a2b71e46c2ff3fd6946e2cab3cbe508699a83e1404250913360ffcf66cb3a91e6660c40231008e7d2c5deea335c6d08069f30ea15720ca46bfdf42134062388251cd7717f62a4e5220305251a5760ada676cd9610d310302047c435bb500683066023100d52a015809d434b3132d38fc74de86d2ce91dfa1b21e11d3cb9efd23ac0ec43d5cae099d2e895880ad86dc28cd82fdca023100cbe9ad73ee63d60d8eaaa812a66a39b87f005ed2f1412a9376f96636d27170865e4a90879b68124f07b526303481e5670302047c435bb5006830660231008c46e02a740cc33547c57e72bbd6f9104c07c4f8ae6c2f0f81f020640ca154cb9cdd82eaf633b901b19340f81a4166bc023100e7ef4d1c150287e5724671d91d651d586cdd548af21e070240553ee219adffb412f296f9c23c04f739f223084e994c380302047c435bb500683066023100fc7ee03e226d8ea4f2ee0b8a52942138d59d0d9e30fb503a45882820c98fb535181215df55d06d3b628184db564d2f940231008f7a291e381a7fccc8baca853b4dd80536f32e76a23bd1b6c4911a044b93adc14e7965aa8488bc0afedeae789790cadf0302047c435bb500673065023070cb8b5443973de53519811af2699abad6b712ae3e266dcd2cc2afc4fe699dbedcdc4b20c335994318d42976177fd7070231008933c774b1e46416d715eedce2492d217452e1d307cd616927f8a0c831472987859b0bb39a14a3753db1e26c08ad91dc0302047c435bb50067306502304c90989a555c7775ebe912ebdcd27415bd9abdfd747ffe370338614c77038af4122abd0ab75df2455d4892a8341bd536023100d6959f6ccb5a05b8bc81965ecf1e732b75296acc821822c3cb79cc1501181bcf9b3b4344e107a0c32c8c01a8f7964f0c0302047c435bb500683066023100a1f142820b42d7b923a2ae64e565f7a50a9a57622c5fd74809793ead3b6a7b7999cb283695e29e182b869d4ba3bbad860231008c21011950d60b8baa8a0d5c240368029b308612d8229c8c11e6e0f4434c328890623d2ef4d9018845ce9f7084ac10b70302047c435bb50067306502305342d272f69d6f12e1de6ec575d182434c5e8ed370e69795ebf0bb6df533658939d63e31563852a37aeb1c5d75b04478023100fc704aea64f7d217ee4360cbde9bbf0d2ebbebbf127f24d88f3c90be18b0391309ce846426395a35eed377d9dfaa124d0302047c435bb500683066023100878cb21345e8c99a97759514ecaddd6a2d63c46001a430a9618661b83005b0fd30a086183d7c4e02c3eefc74fd43ee43023100fe0da44876e59b407d428bf2d9b4011300b4c268068dbae92748e48ddfea27ff0cdac91822e80184aa3acf00d8e44f8b0302047c435bb50067306502302fce86b9c94a30e328ba2bba3c0c506a662b1eee632c23d7e62b775eec1964fe1b2d8048563b0f913c5de872402caa99023100b4549aa62f54ab6ec1691cf392a368ba01ee18edbd2a4feb8f164bd26a3c9e797f4f28479abeb7f6d3292ff3f7657e570302047c435bb5006830660231009be8c6852439984d71bd37c5a9ebc9ffc7d3f7badc27e1c8c07e29613945d2cceef36ca3aa8f1431117f103c0980f875023100cb03274c1163f7ac7a38012f805396ca1dcf3df2ba0db121d1eddbe33513d847ef04cfa2c73f455d55d042ef98a484180302047c435bb500673065023100ae62b6a07dcc3fbbf28c2f2a5d31317e677a70fd6adefa1409556122cdd4c72314791563c10d2e97b82ef4ce21b70eb5023024b26c799b99fa1e7c223718e5371b16a9ce2758af39b076020fcee5f076a2f51cc85a118367a1ec4b9999a8686eb4280302047c435bb50067306502307a0eebe6b7a35cdc7a0c2f04521dcdfd61af385b1304d02f4d3cac0069d7e367b3a04ac756799f5287631af13781da77023100ee3be0fff532d74020f24fb773b0248d67828b57c0169ecf24406d88058f07f25f370d03f5b2ef019b631040df86e59f0302047c435bb50067306502301d8dd14e13879ae54a7c4ec5667e6838805d8b658a29918eb6a4334b4249047590fe940187a950dfe2e28db7a2b20081023100dc4b634fe9d97adeb7348a0365e6d2107cbefc057f51bb729544d7886b58c056d7f88084c83e0857cf71039cc537dd9e0302047c435bb500683066023100bab120c7cf59046f8e06b85401212b107cfdcf29ed463fb46995907373993b17cb5604553eb5a74a6f888c5129769af7023100c83cb2591676648a657b7ec64eb6beb88b02a8dba8c366a6c16907438c14efae1b93b2fd9a41c9a71b4521496007534a0302047c435bb500673065023100aae5f93a2f821f84070a617eb719a65577c6956df4dcb40045d2d8c52699ff840cb270242d64d89b027cbcc3fc88e0ee02302a1849e93cd3cd1fb03d89cedf265052180a5a42af684361946fc4d7e432c38b49075831403c9057bd84cdff4a322d120302047c435bb500683066023100dcd1a474d013caad74a6e45ffe55c150b1f08d0285a0a8092297674e0bd019a7b4122f003791879e77191c57ce56b11f023100b8c7291dce82b3ccccead0bbfab4bfd312754d5329a8171b9c96610609acf788c60d7b7c5e5588fbc05ff810bc387dc90302047c435bb50066306402306d2ee73996b12cd2dbd6fa4292e7b0f74210ce56b452823b946bb0b0691b466861db8de0ab91b21af7077c1cba497a510230739e8313ed520f9c27398d564d00676dc204cf473f6f67bb7eb1c647d8da6a0ba6db7a604f59d03d18df6fbd8e2b052c0302047c435bb500683066023100e31a9445680dc544b539b66a371de3df64c9546777d71aa27d2ebbd92947c7a41b5a01577ecc6e8b8aab59503c3e8cd80231008773cff68cc6e50301399b59997b1752f94db654ddcae05d174a10dce23a28be44d67050f5b92af084ea9ce10132135c0302047c435bb5006730650231008239c24c49a6d2ec3c93939ecd0131cd11434e0b521602324ca2c5369be93d9e92463cebf991b430460be915bb0ba55902306817970947893566369074fa4f7949d2eb9795d66e0b645ebf58607bc7710eadf594f400bceda3215a8320dbd4113d130302047c435bb500683066023100d1e4ec499613df6d1158a32d1f41fd969554d76678f8469220cafc3e4023a87e4e6662aea1a30708c3fef0550e9900ab023100bf0d69dc42deb7ef0ed12fb80e9b1f4f24cff3c4fbe6e6f623dad021845f7ee110a270c18c3b3e228b687407fcc77c640302047c435bb5006730650231008330d4526aecd6f57c0d2b4094a0c259f3edbca515d8ddbf5c9b0278bfd32f88afd4b556cfa98b59e3b4c1996cb386cb0230792c00f75bc78eb5423165bd97b15766bb0ee3261f9b7f66d0b2636df3df0b816fd930882de527368b2d68ded90351c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa890ae4b65379049b3587d1a6359af56e8caa60c8c0810cf1a8ab8906cdc167463b68bc3ddb5b34b205ca631907f62002305bc3ffec522e829aa3fc83471bf91ce718f44db11064b863feb1eea6aa0aef8d788f26624e702b7821599e49372a6ec30302047c435bb50067306502303668244160168534f15b291a24f52b2db1737b18e85f08f8a1e5c0742a371094df69071057df974fec79fbaeb1d46580023100a8f67f43dc20b9c49b3f8750bd983b3870c8717d748dedaa2a6045d40fb8f37bc57af9007e3b8d4239f2d4c52dee5d770302047c435bb50066306402305597ab94724569d90154aeeb13fdcacb52df584ec8bbaeeca1a9d93001ca2850ea4f6ea7fa5a944d2e38151f5df6b142023043e68d3d40d0f08b4281903fa7643fe53bcf66a7d367fcc81e06ae0f0031766c5cba0ec8ecc60a395fd62304f62867720302047c435bb50067306502300d28c7107c1722390599f6655d4e28c050d6ebe8b47d494f1b19431e34a6981cb69e34e6f260b81ff0728af35eac182302310094a64b9f99803683ef33f0d8adc98a1f48686dd059f35bbb64b5ac2244bf99577985b5ee0dad6f1684ace5b343be07e90302047c435bb50067306502300d62d45f72714906426f12f801300300d787a94b437779a87dc7ec694c6f98f698082c42c6dca57ea2e0e7ac8586ee09023100935e90b1550f93f09f05461431e54dd61db43ac2c17bba5244b87f141181d0f3b7fc9d7dd236ffac6d1efad2c4d58ba00302047c435bb500663064023013e4cf46b1a606411cb194817b47c09c2fe287a2c8bd713dfd4b0c5b76fc2618931e4ed7611a9a5ce5470d0a711d85860230392c87d8af14ef1a039579e333f0594481c16d7b0c646903bab44d8d7c179bff3dfc500caf41e86a70c75544ae41f6e90302047c435bb500673065023100a05fb389bc82622c0bc45ac5566fb0010a8fafa846dc19bb9a9c0a95767ce1baa9c3fa6bdabc5dc34933bbf150e884c40230705f33ac48cc14e070a1c9206fc97fe0692683f36f72183b8abdab68b16b78dbe67dfac701679854ad2e8426831b0e550302047c435bb50066306402304739d9a600816e7625b9ed644b87e0fae39675850ffa1c897c37dc47dc98ee4e5022a297aeac2ec1ee03879c5ed5d05e023032da45e7e1ff25ecca6c013770685350aa1194726526b0c15dc6df396d190d155aca098acce27024ca2be0ce4935d4bb0302047c435bb500673065023100f54f4b319745d6b84034d642ee373f895b70d540c8418d0dd29c681bc4a67733571263397804c1fbdf17897844639651023074c41d988c87d735eb7b5179d97ca6b88b0261b5ca8d779f23b9e3a1cfca65eb0e24b8d3d7564cc6d988d947ad5332590302047c435bb500673065023014a9ca15d40917decf8bc50c2dd7d4170369968a086e342afd8b7846876438f1bef0b6ac0ab8cc9d92ce7f5269e8927e0231009d4a06ef118b38831f10435eecea3bc52a2081fb39e259065ade021ee40547c0a9f4123f9df13f5ed9f965cf5fcab78a0302047c435bb500673065023100b643d2cab13ed9708ae4054bd5f39a5606c797ba21f733d8bcf6290a5c7e4a9ac399c4d79fa5aba0696065cd284b8af702305cbc1d6fc0b92c509b8f72bc4ab0751d253e04760478d5b1ce9dd3ab26485524dbceed70815d8d035bb73c1f7a42e1040302047c435bb500683066023100e01bf0c45f0eaa91408c8c84d5dfd4acac40cc7bb3bba2f71aca435a1a751fe8854a5650e584554c0dcf4189b5c80263023100a6a424ce9db5052c821f7cbc4ec5fa7acf4478aee6228cb6463ded12715a3fdc3bf5e9576cbb21e7d95712fdf065b08e0302047c435bb500673065023100fcc850054d092faf5f4aa56f38d308d0ebf2acca03ca25ff57ae843e23d1f9ac5715b0f829086a3b5d60fec43ab180a302303df922024804f81c50a0383a088b1b2d96a391c5906926df7cf98708d739dc47e9dd5789f8a57d0a4d2bd954536685bd0302047c435bb5006830660231008ea9b5282c96487c9167b595938fb10a136d1b5ecd56bb7f07b4f90da828e94f7ae0b155b52e64b591f5817ff6fa21d5023100c3ae0a08c0db20f1c2b9fc682e571629f878d95df601d4b618ea0c7c4cec86db845570d0d8d461c15e3203125be9bb480302047c435bb5006730650230422696825f78e565ba5df93656d35d6b61ed6763c199da48d67aca77e884d599ec6bd15ecf281569edeb7528baac6a2302310080f24f4ad8c0f20ba5b8150bfb8f38dca8d91a0accfc34c8b1c966359c2248a1fa9a6860225b15350526d4cb4b6814a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c70725f2418b718798961dda9db3bd5d9fa349be92f459e889a9a2fc8ab55111badd505d9bf20545b079033fdf0a85b0023100bfb7b7c8f03458939dd58b04fb47ca8997153c7042901b4c6779bb754820c81777f989b49314adb915dc14970b152c820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100918632da81f0f926fdedd5198678786800a2af975d6ebe73d2d81f740e750513ebc7ae84c2263aa8d9e12fe8b40a7b6a023100aa7ffb4b06de00a8f4920235e2cbd205d6adc09af6d0f42a6082be7b54b8c40ceda2fff3e6aa41a7796264ac77ee38170302047c435bb5006730650231009dded5d198c1d58c75e55c730c3d942888516d4e01995ec6a922e07c7d9e5a5491d7c7f3ca1f93d0eb4691f18a3ad57702302f2d38a267aa24f9a52b561272dcf6238c24f1d46d78074ae5a588e972e646a5837f528114e4c24d67d634d890786c340302047c435bb500673065023100e1cd6f0fa5570ccc96cf03f4a7c56b40ad71567707222883358c6d19a83d0d15aa99ef59c97435f6a1acca0c924b27e4023054e7b4ae72dc76a94bded8d70abe4c9e50570a7841227593a15af1fa953ee1a1b6e944a8b02c0469b743b6fed57640b10302047c435bb500683066023100dd38c577899c3317a7fa80496d02423639f46c3e6a72ef78bc7a39e1b61ec18c04314874136ac7ba38c39dc030b96a76023100ad11bd1827f4c6a7d7c01f74eaea778092d801e463b2cd42fb53357e4fd3390dc12c8817b7fb040017e6044e1eec560e0302047c435bb50066306402305a8b12e8009995f637c842b252474d99905696beaa252ac3de113dd25a18bf4c56bd0b64b69a307d762e8a20a031cc7502304598dc433ef0f48d22c58056123131bff9e39834d3ecac4efecfa388e08e2239194d9e70fb55bf47fb88493dd938fc9b0302047c435bb500683066023100e05c5a85fb6c575d56147dd19f2508d7c85ded94d14656e4071de69022936e3ed88cad1cefb259aeb892ba4d01e10434023100c56339384e58bd2d8795767a83e36b0f72ed52a01092e5c6f0d3ea109f82d34edc8c9b2321a243ae3be3acb22c68566f0302047c435bb50067306502300fe71ba8ff96d9d2fbae43249efd19b51d2367d63f7c8f0db5e85592703a1ea9711301e410f047880a6e33d9b3c0d32d02310089257aa462b247e0dc2281d1827bb9b5be375a5f43f7ccfe479202e4b23f54331d0648173fe1b7ba5b3e296ea8a9c3c70302047c435bb500673065023004ba5cf2990000a1bcaa8059349c45516af407e8157e9397731ef711c9265bf1f83cc15b98c7af90c638ee056336b5a90231009604054436a547025f2ba301ddf26ce2be1340bf6bea30b5878b157b4720af4d35b4c6c43050e6549ca01d9fa46b70d30302047c435bb500683066023100f10543966422859385b3b39ebb838ce68e415df5f9ee34cd09e1c2631498261825ea51deb443fc5ebc42426b9c0c2a2402310085ddd578268369d0fc6acce99de99bcc3e9fa3f7759bed44ccbb14b7dc36dcbdf6eb3d913776ea47f1c24c7b00ffcdda0302047c435bb500663064023040e3c23f0e243a38aefb1d8a3d3b53bc6d93f30e8ad9531849565e8fd1b860a0f40873e6a3b8fb52a9cbffbb3b34365b02304dabd9a5e9887591bcf32ed26e7b220bb82adb16902be42a018ebe07cc682638eb4b8309382fe181b47754202aff05de0302047c435bb5006630640230492ecf5ecdf172c731466aaff9918d655d82a04a005e28d3d653d94f6cbec87de2cad4210f342794b0327ec8ba20fba502302105991b02c1cc54324a27166e8ff9238dcbc026e214f496c9fdf7d0bc62d118f4696ff42dabcba90b4c53f652eb1de20302047c435bb500673065023003247f87efb80f86879b9c05849f84f28f8559db33fdbcfa58e63f6df170c344b6745e002e683cee9b624593d1727f15023100c102e0762939787393f3178b07e2174ef554d643c378d92b2d5d7bb4c5e9abf33727e686f50347ab855d26252da35e270302047c435bb500683066023100ab573eb6eb64c01f17b6a0e3dad51243255494a78dcbb7cf41f4d4a705c854aeadbd2267607edac5afbfca389712d0b902310099a49e4c30e02f51a5f0947707575865926c8ccb9aafd77c5a31c35744da7b10c5f94d1cc0ecf2a3a3a0b0690b14400c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230625c3be1ffb2e5f2f6bfdf0c52da10862a8fa6b532a9614590e93ee10ca7c274f3dea36af553027714ebbbca207a460002302df140ddd4354ff212b05490e54cbcfc99b8c6637bcad011250c88014dffa57ecd545a03ef8441927def9a14ee621e9d0302047c435bb500683066023100e6e47a83abab19494f64ad9d7f3138b80a0fd8bce0b03e96a6c4333d143ae4ef86d66b8585232c7d1182128642bda3b80231009a232c1dac0225edfb036c9293e7fb13745f969ea974634732300df98dd46d0571ddab9ef17cf428420ea0e6d6bf08520302047c435bb50066306402307d0099aa0117dde63406ca0ff6f59d702a00960ec7aea424ee12a5fb18e80ce107fa27e69d61ac755aa36582e68e5f3c0230372ec51c3a6c5a06c097bdbf3b106eaf550a0b0dee3077eed8f71eab5f24619cd85c3fbc3e86cab5835e0852c5593e2d0302047c435bb50066306402307c85388d3e7796ef3e023723b5a720bacb1ed337afaeb88d9525c709e75d4b00aaa01da5c399946709456ae46605e13602307d1516158c5d122720835dfcf48bf2f2faf2a0dd4f0f9599cc4229e1640bf8d4b5b3926443612f02ae37602612c737ce0302047c435bb5006830660231008b830a0d9fbb52056c405edccc73d4ce374a1a933955029f58b29a6ea1c2ae7a9af948904850ba98b827e9bd05a5baec023100f451e500dde446fade6cf4f1d089b3696fda6ced898ba817c640f62cbd1f9edd441d82fe4a4ad4e6b06dfe835f78c2cd0302047c435bb500663064023021773bd16e01c5f1a81f2af1af8bb00be64e1a5c0afc44122c4902c00e67d38ef36212d09c3882283f1f17c6805992f9023054b5a62e0123f591b59dcd550676fb63beb930d54e9815004a63c8e8a5f37ff2670a2cba2d61f024e2e23200fd354fe90302047c435bb500673065023024ea32eea97f58a2a626a9ff7f1f736b0d0159d06ba54be21f9d35693a71dcdd2c6c83e4451c00dc624fdd357b6ea279023100da12229db0ec6ac04515ea914c53a6ea4c313bcc6e7fcf8b5f5e9bf084a75f818e79c0fa42894c4a3abe67dd4fce85070302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402301dc809373f89699ac6b0f3b0320deb649c9fb382cff18f09a77c8ad8bf533cefb3e733f44f60eaed35f00e750fa72f9f02307e967563666b5958707854601e5515ef1122849be4be78ad693161c140fc7527a87ef9e5f1f40fbbb905943472cbd76a0302047c435bb500663064023024dbc42ff8926177b33510c48c921fc6f57df4e2beb02ed5bd5cfaf60feabce588b01e569d4860385eb1a2620a1aaed802307ca6fe1dd9a5ad9dc9f05a13d691c1ec4621c78ed2c24a22981047c68c6e929e23faf627dde0b6a9afb476ba4cc10a3c0302047c435bb500673065023100fb8306b69feddfd91a271aaf13310c4e85a1cd71f4c2c47045b148c80a131c270909c0b867e399d9425c2918923d0ed20230567e625111ce4ee40b4c6e8ede2d2adfeaa4b0d16668bda1e4a008b1e2d108e7a8f33b9d4c7a2dc62637db8001f845680302047c435bb500683066023100890415131c0d57f636429d1ba1219e3301508fbdd866e3cc9f1c39c70bd20f78dd62dcaf65fbbc09a57ce1f747913f8e023100b4dd43be3d9719de8b9e1956128061d5231eae6d2199f28424bea02c5d607c77780779788e770b9b98441bfb90badd520302047c435bb5006730650230223668c3386b9694d5de5de8137be32b01045e045a4f4e916ab3169b2298fb5298dec982e870600b19db3f665768ecae023100ff1bd84f619d999e37aa9b5ee759c03482c9d4ebdb2b7a8ce5a2400e3934df09abda5bff28fb14ae27f581e0852d0f8e0302047c435bb5006830660231009a2d53ff3bded6640ba736523e52812faf1935a55f8946f8880272cb98e2e51508cffee825ef5f0dec7abb74f8e8a44e023100f866e510f1ed484aa020beaff51885e527845817a7602405ad1209d0bfa86f21966753a7f5a97f421dda26a4013b3f960302047c435bb50066306402300f34b82683476523e2a133a47919b178a6ed76c9ece18aed2e4728d892939206217473fb2241d29125d6bb8d7d4f511902301ac4631d9385fa85a0c6e4b1becab3b1ebce0571c17f51177ace72bc7bddac4ed1ad0c8b0cd412d9e9ecb08404e040dc0302047c435bb500673065023100efeecf9ae749f3396e45c2a9422b8ef1aa5cfc7c87eaa77dcae3370cd2a1a23c8d2986ab2b4ad88ba06d2065f42dbe4602302243fa54bdc147d8a5f9f9f14af72d162b72bb414aca5e1048708770b0f3b5ce05c13552ee1b8300fd54d7897d81ff920302047c435bb500673065023100f5d2e69962bd060cfdc013b33d3851a02f2afc1ce592e09aa38bbc0083ed82d24c8534709c7b7ee084732f48f9d5e2580230529b59913664d41817edccbab2eb0711dba5c5fc22bfb6124ba894709fb5f9f4aa6bbe125680fbc8ee89e84f9b7fe6ca0302047c435bb500663064023044c21de7caf1f2bbd2909545687df1df96d17b0f0402c1f748293aa1a814d396183ad96ea16d76dfb9d663517d1aff8a02302a12aea53aeac08103c80ce5cc9cfe813388a7766e0766f35b9a541e0ed4b256f03bc9d9c4551801bf299caa29faee1e0302047c435bb500663064022f0175d501d652a23ace6b301b8262e7f2153bd7922f9869babe3a6a12e130a225dd0296f97336499ee39e88f6fbdc1d023100e12ba0f8a2a999947291ad91c9337beeb27a445fb6c75197bed1c962640ef3aff01378452cef62961b52af40a35244590302047c435bb5006730650231009369ca3e8ea03277343ef711591fb615e3931fe9ded7baeecef3da8f963b46f98d71922613840a86912589c32dd51a0f02304427a4255219e34edf85823a874cc76c551febdbaa25d6acc7cdfe59765f0106b53b44454f8e737b177a529aff284b180302047c435bb50066306402303fb3ef692c63aa1ed95fbd0ecda4e20a6718ba16d35bdbe6dccea290491f746444120e8e73b2716b2a3adfb1ceb5407f023046f8b490c1a052d1cc3b1805c99723bbf74921c8a0318469429c88104dd0a1ebd9e5556f02c10c6d7a7716d49bd7c7360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9d26fdf974482ec296e4947ded274e5d38dd7995cc71656536d849dd187915df6927e90b64c8b81344695ae11e55e7c023100bc6cb86e18379b801b918696a225f248ddb81c329fb3acb4ed364a67f47c610830264bcd41962f8005979be31cbb61b40302047c435bb500663064023057f8198c7a07163fe271f495acca4420e74eeabc25fcaddded012c877c56d79f7a3a7642361f34dc6ac310477d1b73b5023011a90751de83177abadabfbcea293c818fb9b3e874405623634de634dbd5a70e878afa0914cb60761dfc81be1feb7e540302047c435bb500683066023100a59f9f05f25ab6828b1f473941474ee233b919ee65ad088cdbdfd916235e2b775ab1260ea89132626a7ab5fd57d08dcb023100f549592b16ac5739806c487ea01a6a609e4449d5b715ec66f61f0ffe077384af0392aee5f9b3467407fcda5c7b5d15050302047c435bb50066306402304f1be18aa25462ae3498af5866f4f5dde6381251fa20adf8506703ac592da774c54b7a042670d90df8272a6574c6b70402305b313aac4dbe9e01b5dfc1fbe3da1f8750750ae3b366ebab558b21b902534456fb5b7ebaddc32acedbf98fd31ab35fc80302047c435bb500683066023100873e51a05c461aeb6935d83afd6f378f146a8e6603e15e5e29d6e286b306b919cf6efbebd2000e14b8c284ae8d1a344e0231008dd93f538a08d2ce367a74757278c94e0a696f9c0ebbcab395226ab63d61cf192efefff027e8cdf5c5175352982e16320302047c435bb5006630640230054be19dca1d6ab865b7f8bc1994bde2770124fb18f3135c2d8383fdeab28d109e7ba1ce51f9e52eb190c5733cccb6df023001def43e74ff45dd02b8e9f28e399d2f3182e84f689602cf75e8da56b49bdc7ad54b50f34001b97076f6e11bc44ed48f0302047c435bb5006830660231008c72c0c65f3c371794403d1ffc60e6ede38dd4eabc81b038d6abf1b30f72a47a72ef6dc9076f384bc0cee24793e8beb6023100f1b381bbb5b70b11cfd3d7e0cfa7610d147f34f7e87b76a2a5727b8bbef2e9618eefc5e559582d499d8459fff8df80310302047c435bb5006630640230538fda224c7a5e285daa9448d5a12af109efea060a5ca2090a76ddfcbd90507b163a50faf465af76d6b48b008268d24902301c53767b0dc1f403d5ce02bcdfd23cc5f2ddc77e30d7844fb68dec1146fc51ec9f2cad306040aa95a6e4fd9f947e3d720302047c435bb500663064023039e0ba01b7d4842c1e2afbd7a77927e1be8b435f1eb5eb9ed1e191c1f8e87f685fd6a3111e1def8991619c2ee86c39c9023056ae1c9971f82fdada37309a46b01eafaa406e1d9c97022284ba81de8c4aa1e610b1d55a90cdff49a0f8fe17804305080302047c435bb500683066023100bdd048539fa00365088636b8d6e4db6816445fd1e2e046b4beb54d5e515e0e1029511ca270da0ae1d32c8269b757d265023100ef9a83c06fe615b563b9230a9c45f1277c94d9e66291075716faaf76ef067f7b6983aa01a7d036e320d6c24f6b9f8ec90302047c435bb50067306502304be9f231f0b2c4064c22a3d8f4bf579e44f1c609b11849c6d4a1e01cfcb244fac0bdda860c538f305fbef951c8eb0ebe023100ce5ba1c3114f7237bb95b17f54317df5f7fa767adb14a9a27698bb40f93fd3199e0cb9b97b4f6ebe96a2043ecaa3ad9c0302047c435bb500683066023100d0aabf58e6a43d5d6c335c22a06a987d1d3e70edce1852c47d9898ac9f8743986cee253cc2244003bafefbf105453e52023100d907814c92b26e998456be21b84b41112bd58327d539d2975a7a992271cd976785b5e7513fde09eb7865e3af493144a40302047c435bb500673065023100871a6d3af4c987dad084cc65e72ffb481c99bb34017e3ed09b8fba70b942e039410a9caa48ff965773b1fc07dc431d07023057939a1b5378390c713d664dc89355de9524aac962742c37223f9924be019c375508eb27fe14b9a1d735ec3a795689cb0302047c435bb50066306402301c2970525c087b46528b5fae4f0a28e6123c18e8170c283be2c2eef32d424882f2fae35a366f545dea82b00645a35c9d02306d31507abfc576d533d6cb65bdcfa15cb3ec3a0cc1dd403eaa48a83187e6cd732363a38bfefddca29bc09dda93f2cde50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304251fd0ac1585affdd8a7f612852e611fb10242c8ca173bb747e4189b78027802bede645c9a523632853053303fbb5a10230522d6f26c441ef039a3c7815f3bca86e7c59e939353421064ee809861af488a79d404e1a54d09c230370e1823c80a0680302047c435bb50067306502305ac9a6e87dc634029da1284591eda41ff0240d0586f1421276ebdc7ff0f438bc6eff08d58dccf857d8288a98b9a211e7023100db952235ac2029c45a49f5de414ae44212cdd44f10c11b4ff0b09f581792c0604c0bca69219641ed2bfdfb7f98a60e860302047c435bb500683066023100fd80511f7cb3088d9e06ecb6371adf38ffa73332722642eaf601aa70672319c9aac0e0751c1e0974156d046e407a0c840231008f2ebeb168e4368909a6a67dae5a3a37216133e3642845b57e55b541721f84187fce20a6ea09124fcec8720cd32f97b60302047c435bb500673065023072d47c734d04eddb9e40260ebbc04712f34737270efe13615eec993c6a26b23a2ecb9817245e0ccbbb93978e6ff926a0023100acd62de13c9f70046323ceaa4571691da76f15f69b308a1992db37eccc4a55b5482b8f6daf467c4d10783387d3ac7ad20302047c435bb500683066023100e6055db80c8bd06d76d99a53e4bdf4d701e781ab63e89974e71f4680e8aa1348a8dd925c124fbfe421d2e592cce86f67023100ba15ba882b6ea7c1c7da9dfe26bca125686dc480dc3287f33d96811e329a8b7d26ee5b46e59558de15eefd88628fd3120302047c435bb500683066023100d0139fa3c7d93575d534d9e9303def52431dd734f4367a7701142882095700b3fd73e7f01f2ddde47418ca2ace2482de023100c6e3adec26af067e9e411faef0b1ca50e8a862a215629e20bd003aa4ce2edd0c90cb6922f70b8facb05e4f2ab56623880302047c435bb5006730650230724942a5ffea0b72ae924b71f4db3eb3f72c4fcdddccad87f7393413a0149e5c8218e7aaa08609ce424de00d1d2e9886023100dead420fec32a8f29f9cf43a2036792481fb572f98bab7778267e5271b5e36e196273ccabb717049395ba1c0b62516c40302047c435bb500663064023021d3ce5bd737b312cae8348d700a05707989f9dcf5365a8e2c82c25c2bc0087427a0832719f2e2d2394f8620e27500cf023004f799bff4896647c6ee4e4650931b2c1473bdd8a149997cd551ccb18b3b147af38fb93b6b112a7c60fe341ed06f35270302047c435bb50067306502305c4094c41582a2c583c8fc080f63d6e0d1f36c6bbfde4c220d85511eccfd6324ec9783e35a26acfd7848801853a9a7ec023100b9f41d08f0f75cbcb0f0ba749f89946bca76a89a9cea9ae1252be8529ad61c56110da32f85355b5caf48d450753e57180302047c435bb500683066023100d94ce38003ccfe3c750ef96680a0af4ab105684c1f1bc58d5ba38f777a0d9312cf28fc82b460bb5f5dd76cf7470e3efa023100b3cb6eca88e355be4634e7785ef01b778ce2c55c5d307dae7ca982354dfe3231e782a4cda8f03309a44369bdea3a0d0f0302047c435bb500683066023100fc17412780a47b4520b8f89e980dcb666005f841ae43114b04d783d1409cecdeb57f9dd4295e702fdeb4b58848862eb4023100f1e76e2a4861a4765b9f7e3ea2ba3a40d041bfd56aa97b3a2468d31b7bf8b18328690f31f34f6529aa335bd9f55447670302047c435bb50066306402302ed4c5913bb4c54b1f4c94ba935f0addf497ba0bd1b76ecda03c64f78afe16b17ddb93bd0ec7c91975ac4b9d01244779023044d14721715b0855e3d767c6870264ea0f9b9a18828b55ce63eef5e0d0b21bf1f480c363387156bf2c269b8774cf64ac0302047c435bb500673065023100bee4bc4a8743535e64158407ce9599740335c8f9eab2fcd4e5dca16b20a3e683b21b4743e2d968f71b5a8d5babb578410230618a8e6b9eda7a034c23b9b7318a0e776cafa2e8d8369e69fabc84b5389d2b178d2e96489469552169d819a51bbb13de0302047c435bb500673065023100ac729055a4434d4002c9d2d0f9c08301f7745eb1dad95e6b181eb66c7af8630b24f37908028622b86ad9b1c903f354c5023044591c1ff6c938a5dd464fc400904afe86161ad1b66c1f84dc40c1d42fd89920ad09eb84b8f00c6ae06429ae64d3410d0302047c435bb500683066023100f3dc49cb874651d5c0f0682e7333033cf5b57bf99a33bffc4211a92c8d770c2800845b36a16451fd04a38bf4ebe084f0023100f65e891828e25cbc28137e934c72aeba166f20e0d4cbe2bd1173ff2238faf9b1658c7806c45a7bc65e02b000e41b4fa60302047c435bb500683066023100a6d01bf4b678a20317b68249bdd475717cffde8575518fdaa239c2f976348ad912f3e3018c1178f0fc6c77dee641c5b702310098107bf439a953c56dfe00094c1d973cae15d8f264e6ae93bffbf3ca6a6f3135265ace7c98e186ddd6461860c36605550302047c435bb50066306402300e868f147f7850315706eb91f855fa756046645cbbf58b42ae8026433ece2d119b7158dd1cf0e2eb8ba866d8d117fe3802302aa7c6cd9f14c357fbb0abb8f970558db8e2e4deab31097c0f2eded2decae1239791c0556d354d676d20fd61c15130a90302047c435bb500683066023100bff0cf29544fa54ff8587248d07bd1d2836bdeb43d3e9fe24b2367dfa833f8731c6c4fca4fc9f931b6e073bf2b46ec43023100b54870b04c258bc1c1ebfb22145cff9e9a5e7e2a464e0754566cfeb6fc5d63008eaf5cb9c6cf170ab93326ed66e42e3d0302047c435bb500663064023013ef79437dc545d13643c3f9a8edeff8a04a08a33c369fb9ab9082db50da8280addba3db7dc3bb4dc330a7acdf35dc3c02302cd7969e51222b9063cd4d57699b023681cff8818d8bd22f2a46196861944767c63cdbc1887d1e46f20e3f70a299336f0302047c435bb5006830660231009c0b4f4c06360908460f6471cf49edee6bbbf33e77fd47214d70668caac4dd6adcba4e7cd39e92a16ac259f24c43e099023100a549f6677ee074939fc84fc59c888357e068c0ee3ef6754bf48b87a218fdbdf0792a89fcfbeffd4a38c4444a0579c3990302047c435bb50066306402305339c695045761dff181c202a9788da18851942af8b4819f034ecfc48b632e57f055b6af69f22d52997c38c64d2d902b02304aa6bb33945fe478aa6217822a0b39a068946f2d1333fb95e072ad18a024381862f42bcec849668a2fdfb506ab24692e0302047c435bb500673065023100d2f5df682f3bd98a0418d286f9e0072be40a47ee87a906cecf8490c4c0918d6eda8ff7060ad30c3be6e2c6e77a3d582002301ea0659a7bca81cdf8608bb2d5a3636a7c8fb54139386b5868043853ee0f588e73bf1bd4f8f1a75366a0ee7dea5180220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025a6c116c3b0e6bfb8707f6859a7783627034fc3bc0bc36848ae695d33ca8f92eecc1f97d5ed0f0f5e00fe7e4ec64aa902310085516638eaa8a774f18da2eea32ef0f991311b539d442d3d1f970ebd629c881739313049bd3953a2a115d0a79e5029320302047c435bb5006730650230578b5004ef48f42a9499ac5f8e1cf1b69eb43c552f8668beb022441bfa39c768eee61e422391ef91fa7908c08ef2246c023100f46ce751686ab5b77f97c21b0aeb5dce5f43e694989ff3a7973dc55055e305b649ad5b00441fdf696bb69c1fda4ee6e00302047c435bb500663064023059b521fa4bf8d4275d9cc2143815e46b3be9148da2885e1f502966991a2e6909517be198e9d1369a5028201e27538ac90230166379003c61c61478255114b17567cf9fe7e2b530c88f42bc24406a34dd15cb43d193b43e29a630ff7ab150f2ff79d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230474889787a9f785c456b045e38a5b4c6793316d1661bfcbb70b2041a658dfa2d4d8bd0c15bb26d453dffe60e8d46bbad023100deb1e5c290555404de5fee892fd91d23ed4dcc8bbb3883e766cdac154994d8380e4c5805ba3aa5d1b172c22fb3f434780302047c435bb50067306502310091f12a6ea3e40c94dd079e026a7a962d6e4aa7a717957142176e629fabacaf2b1e1afcb9e37e875aaf310c96327e6c0a023018640e7dd045e7a4760666f9f1457b5cd03cddc5ba55f56ea2f2367d52c217dc6b5443aec90f6628524fac6e2e2170b10302047c435bb500683066023100bce464704ac2ab061ab5e1d740adf0ac69f003c4f65c8079e422ef26e446ea04fa2d9620562f764371cb3bf3cd32063e023100f31a0e8e15ac7b04f28bf497a2de44cad23fe7afefc5ec440d8d1e65a0ac66f73f55f68ed6218f7678e8860fdad0022d0302047c435bb500673065023006beeb79850a37b413bb0de50332155f67c88c31fc2e8422e7c0543bf63b032d3074e923fd5f05baa7daf1d9fc13759a023100e59314daa50eb1185ce425668207329f817ab186f562e61b66d3ab4d6bd70bfb81c5002d4ca208e13fa2e45b3d0caef50302047c435bb5006630640230488e9387649d9f28179a26d568b4680ba026eea874b1cf915478ada1d29b134a27cf3b1c724ea87215df238082ccf9040230732831b7c2f48d38285a4c5f4055cafa6f4dd94ab63b3b44da24b103f7a11bfed436158716654418fc32129aa63718860302047c435bb5006830660231009831a901e49bf1114f85b0b04c798e5065645b7b15e66553866d570d7375834f69bae3aca1c08421202a7872943c80da023100e6d6e86cfbc119deed4ec236f6152a1cdf9be425222d025c34d8e62acec0547e54202f2195cdb2ff1ee500b8a5450f3e0302047c435bb500663064023046d69c18d91c36a0945cb35f0c11e6941b56d15834842b359b06c971d427616c6cc539fcb2bcf5cf5f069da6adedacde023078a300f3c05264682e3a47b40bc83493652f94f03a64fc637d6ce7f8ea12fad02e2f27f795adaaefc65b1b5483530def0302047c435bb500673065023100e7881d604fdb6f1fb83d7e3ec967c3a18075c84551f48853d4654c7d84d6601a90b90b542b28495944f2a994f6cb7d7b02306813139c300aad170e8a8b3f68041a5bda844b4f08678eac76b2add0ddb1fa5f02ef303c407d9a0ebe34376157d57c220302047c435bb500663064023047d1b4b62a69a2738fe7f1ed86a91b51b7468c89d3a58f21dfe2ac6d0fb3038c7a9b173b4c242615fc0a8734f370e119023003bec5f41b34283e567607431c6722eeeff1cab89765a7de8e44980116650cfbec459d9b5b6beabb17b5a1970a6aedc60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230107256c4b1db8faa8138f0b9fd2445fef737722c63a8ac3176174af6308036e464c746f642a6ba9fa5336ea213ab8c6302307c065f2786b4d2b80c4285cf92f050ceccd2479ad2c400361abce9e11ce15f4c04f93f03e0cb572be541edfe759f616a0302047c435bb500673065023100dee4f0b72a15f538a252fe433e954352fb1be409751d464e09529bd43af32be146bdeedf961d2ac5499a1c543a310c4802305f07950779717a8d3ebb34c1ff2c4ff212dc6272e33be74a851d597349309a7a47f0d8590ea85b8e22f791a749d2ad4b0302047c435bb50066306402302d372e5e41896e22f4f5fda4d487e8379e85def1feca4ebc5739fa89eb2031e633546147afa5602b9fe50a40c2dfa4bf023010de83363453e887c2453c25472b447d6649a2708773f9ea1646531664cc9eabf2d96394cc44a4dec103a0560e9f1b6b0302047c435bb50067306502301217909b03ff57988704d02c12730dc8b37ebe183371b44aa8c7162bab09ad2496318aad8cee2e3ce515523fc82c669a0231009c458f18dabba7fe0298d937c715d5d0fb3bc453566c3571e07fd3991f40fe0269fc041d2451d54c359892e0b1aafbd00302047c435bb50068306602310089e19ebd424463e70505aaf852eae14ed2c6bfb9121bb86694ed6697df2439a96d4e65d1bb4adca72e228e42dc9d252f023100a08ee92faa03a687e514bc9b0fd15195394679357426ae533e43368f9a2bb2b3173765358fa989b5440b70d97ced433a0302047c435bb500673065023100eb55d6d92d4b164d3ea83d447a1c64ba5539c750c2e670beca9cd7e44eaee521856a439aad9d28063a908f4b98b3f74902301599f6d5ab03b5621708173fbf858ec8a63e91a47f4474db0754a438943059912be7de9ca6b2f7a6800b790dd2ef91110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c1bbe23439f7e61138648cceb51e7577d1c3ecf379240a82a40b110d8300f20e6d95c2535c7c6ff90e3b7c582a5340b202300a41a7c522080605dda7be059abd1f06729f60735d724f21205c92cd5ba4d659b6ce377904c76fc70172f673b2963ff10302047c435bb500673065023058c3c36bfc22e20355bb129b3ba46bff8d16f86cdb4451fd5f1d07e6ad85b3cc5cdbe805047b4f8fbe9cc044a6f81d9c023100a967f1cb741a6ad845e3d6ff86d668747cb932e49333810ff30b7feed909791bf06130c4feccb20573e4876c70f172e40302047c435bb50067306502305785d62a52f85ffcfebab58daf9bbf7c514b79837ca77cfebd98c37d0db3b4d356c5c813729d34a8aeb3bd405af1503e02310085041a829cfc038b939ac2e6c6b04df1944ee340bcd3ed2060d4f67190a26367e0690971614c44ef0bfc9b32b023b3fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100864e10b036e352bd6f1fc2686232d0abd4c6e1eec05d92c40642049093722fa2a81b2df3d69307412f7b17048f64471e02300a078a0a58c2561d9097d4c8e4ef88030b9c876059f7b09d471f49dd25c0ace2b8790fc2aa6fad6dcdd01186833fa4cd0302047c435bb500673065023100a2ebb475bda4d3579480af79b47ac7a2d33b65b746704242bbc29a80bd0f7f42516204ebe1d2d6f49191d2b487cec83702307fdf6c5189c7511b418c63b5e8c4a93c7818a86ed719905b0aecfc0b2d53cb0289d6cb8087870802e6d2c9fd5de7661c0302047c435bb50067306502300deaa1c204dbd88c243b7d4353bc6bae9dc23cd223509df9666c85dbdefb7f1880e1e043ed50f47c82269aeccf8a7734023100ea2a84f4bda6a45929fd5e105922875efe0840aa39a52afa0795eedb7d0c5916b87f96d5d20a9efa3b9d20d7ea4e99250302047c435bb500673065023100864e10b036e352bd6f1fc2686232d0abd4c6e1eec05d92c40642049093722fa2a81b2df3d69307412f7b17048f64471e02300a078a0a58c2561d9097d4c8e4ef88030b9c876059f7b09d471f49dd25c0ace2b8790fc2aa6fad6dcdd01186833fa4cd0302047c435bb50066306402301ffc4d0dc5150b1404aeb9e4495306af74f4a3712b80744c9fb9ae20ff153dd878412cef59caa1aeb5aa085a0cd964c2023031a981306390803f86672d3f23afb702fe2cce74088cafc4dc4e6c77dc9f3fb3f331863e8638e9da3181836f0009f0fc0302047c435bb500683066023100f6b7ca6ef6875f47131c47105e9cf6fe97a4c383980bc5159b693b386c701c4fa4c8a81c5b9fac648d70c788de6e1f23023100a1341d71631d56fd349204fe09ab95c3417b0031dcdd91046e713baefda187e4827a1fbb147ffed5c614a121b0cf1b4f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304524f53f3a8349390a3dc6c5c2d42a42f42b1f1aebf50d93086fab64b8fb91330dd4b2bc828ca5df7535cd3c066c31250230522ae303d8bedf808f0bf2dcbd9edef2bfa7bac383198107c917057fe14e62ae17c545b1788237dd72b55ea49374ce430302047c435bb500673065023025ee8404f1a66769514bfc67325cf12aad10637334d95024ece3872e317ff66d5d34d9f1cd78d71bb45f3a707e9dafcd023100af97725da5ef4ffd76638ba169fa5a10fea01a78aa17d92d248746b449ab57244b4a78116249744b41f0d2521d3a45060302047c435bb500673065023100abba76bb50e28ce498294471a16846845326b546986b5a6706653a3be0fa95317d45d4cdebeffaaf21cc03d7c6d5d73d02303ab0bc21f4e5ca918b24bfde95fec2cb2919bb76c8c9ce57b18e84099819064d5d382751148504aa6b59eec479aab4360302047c435bb50067306502305326d686a82c6281a0b27dd045f55ff906bc190b750fb3f040a230b4b66b7516e24c33bc71e057bb2fb91d28261b42a7023100f66841f078149220593848f9f115b585f7cc2ca9886a2908550a99016d1e26a896b1b27a1e34c391046363db38fb10030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023041a6774aad78c884af716604300944adf0d769c2848b402a0d0c50ad293bdbc622e38ef95c45d37341ec00ea24ca1fdb023100b3b38c9a4e0a775c9fc1af4db867baa860bbb4d21aee0833e6e87e84307b63993ac7fee77c34393b74c8d378207b11620302047c435bb50066306402306c2b149ca6533e247958d8c14f156573d2e2ca905e71513d9505b293064186ed47457faeb5f3ff35f63341d25425fecf02306e0c120f1502a945edb0fadaff995d100c1b939ec07c3db4053b1a4907e0d02d352c19005338fd68e3f2a3986f004c7e0302047c435bb500673065023100e375cb11bbfcbf7554c527900a1f5296cf9219f668a1bee779b83cd78eca36f8b4dda3325dc46ac247d196be9158986c02303e59a127b0e8b5e8ca3bdfa735feddf45745a70f10e6936b3d529a531a3d20eabcebdc17a89762f333800ec6e2becedb0302047c435bb500683066023100dd5c3c725a7111cdbbb7d247922ca268a710ccb0c3cb67b4d0d76e705d23ffd9a2281e79129c3951f8317a8a20c93ea5023100d0748222983efc8fea2d3c7ed4dc6cef1e502a802baee7d2c35e00643033b7efd3f772cf6fb670724110d55166589e360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009d840feb6f66abd1a0fca6eb7c07d246c479643dc4d1c974af1173a3eba795041ed114e6a4d12858050d1dd2bfaccb33023100dc2f64e0c86c8bb12aba6e849c2bf9bb75742d2ed22756213974c0668ac06904afd4152464afab3342b4249a607c54a70302047c435bb500683066023100d0cc198bd8b8c53dcf9e4d8db1736628623ffc03782b30601fc552c71bb0d8caf624b598a8d20cc7f5e8fc05ab9b1538023100c1c73d38a30079bd37d5f2d1b572b6a8e1efba3c9e7630e8003ac1aa76bc4deebf7eba3e60211f3765f43c7efe0821280302047c435bb500673065023100b93aaeae5323c179200770c9e1b0589c4c36ca8726c3c8621f4ff9f97fc110f91590dc63e36770a494ea811a21a300210230605fe5be02e322682544a1840015681e5ba8ef41da025e354a8477918ef516d06da4719829fc61975813f7daf62e18110302047c435bb5006730650230712aaf95e99cdeeccc665b458975a62a6840c0bd9eccb3ddcf510d700b49ac870ae5857f7a164fd733440af21b70e6cd023100d752f23952fa23e2ef9b3cd4866b7f4921600509de7c35fe0087f24e42ea325c2581883fd38f48f27abea65150d33b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cbbaf078242aba5d79173bd18fcc6e6184494fa4da4f1c7fac8887be1937e7cb542c835e86f1627f1eb0fd8724cd28c02304bf941fffee3ff121db1c2420e7142f172bbe69bc46ff120d7275aa71969bd234fdea1b8ebb7e3c218e2785d52c4e8740302047c435bb50067306502301f0d5c8b49415971e59df7323714dfd2290a67cc354568756aa7fa71300b4ffe121f9053336576a0db6687ad3834a0dd023100b1a1559c8f3c72ce98f287713bb2ac2fd5174163e9edbb05e4a5314de456cea244e68583b2ab54955461f43b777919120302047c435bb500673065023100a8e971bfaf75208d49585e04296b5e11f8b4340040867418fb0e78bcab6c8edc80601b4fdfe0555da7a6627c34cf0bd40230604d1b4688c2f5f7fa18416354893530a18224fd7c5a878ce94d96abbd937a15f7d2057dc295e934b6cd049400fc96ac0302047c435bb500683066023100c6121486b4afc34c05163598f98c6af37dda7580d3d270dc768e843f476451c6e2657dde3ebc70b66f7d8bd112297b09023100b1694619293e425947c4c43331b50c31fb1f25471ee13355eb209e49a36181d25614418078d48af5bb07dd72878cbdd90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100825a158cf144164d6de87ab1d5ec334eda9017564d42b6188e2353d9ea16c6fc4c857e62158cefef170a99b13a22bc5e023100b88276d21d04b290dbf88600dd93176c75190c1832696dbf90afc744de964c7c9f2ce90d68164c33f38169b310d02fc50302047c435bb500673065023100b8ded689cf93438e63afe1184eabdf2428a7e9b124ffd7b7fe165b45d2660af8ae0068faaff48f00897f79930edeef4a023046f767c124856acca55e31ca5285dbc1a6a150f85fcc504137a2a7a36e20fe353591c59d0b9966e1e2af5a99f1e01cc20302047c435bb500673065023100f803d142418cbafe3ba8dabfce6fd5016b003e3732a216a4af164098157e004c652c5576a4aebd72aa0bf3e7e7be978302302bc3c367048878a8ae5bf32258a63a205ee3ca6e8f65c491e4995f67b1d98badb974b158bf1b15cee6ac9584a64883cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306ef33b5954bec489c8184f66ebdd59d60d781040e7b20e364b0e0ee2863eed041e34a1a6d2aea394b39898470e67f781023100ffc55dbefaba53e0061e031fd43c0c8fe6f5b726fc786d205de83cb0a3f4d795ec13d02672e43566beca29e79201339d0302047c435bb50066306402302f59c0283112373074f780624f98c3180e19e742f274887eb7b1afc59abc2745a83b9397aad06d357185f2bf4a1e0f850230031da2ddebfaf116d52b12306ff674839d24683ee5ceb0b602e227439a863e0d7f4f6d8a5adf049c7054efb52fa879300302047c435bb50067306502306edabf3e7465c7001e269b76a4ec52ad0e532aa5d00127ddb23b2cb19916a7f27f6ffdcec8798f9f517c8b0414f4c6df023100fce0eb350d0ff7236a052b98f8f8256b8869f467632ead40fc5ada489087cfeac042acfc4f775eb8f8fa4db3048ac99b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c799becf1c16adda7bb323eae974c0fb9ea8006e7bd8195a04af264424c5f9d6eff3242b64f49fc873b48a345fdceb702310093fd8cb237872ef3d4db2a816fc41c410068d449e8d7fe696a7629e4045c31224c3ebc40b6cc8077dbe26d767b168dc10302047c435bb50066306402307bb7f70ff12733b2bc555f98391eb78a08ca9d76f3859746828535aaecfd59326c706f28ce381d18eba693a5eb4c174a02301253ee9fcc39dc35545b84065c1fa1ba1b9fe6d39c6faf10fbab1694db1042c3e5ac1ad15ab9608c34222db895dc93550302047c435bb500683066023100e31e0eb8b2f694284955d071913b1bdc8158cfbdf45f7feacec072450a2fc4f4c7fd1ec181d663f986ee6e8df215349e023100d9b39931e89ca442ed164b4b1c445e92fa56e21f00560c9f331833996b4bb9b713dd8683c9f41b89fc7936a8082e91330302047c435bb500683066023100c9a972042582b81ef794abdf773164bf4bb1d68eaffe46d942710566cf861b2dd9f95f631af337eba73a63491c4aee9e023100e510d5d8e83c201674b2cad74aed0ff3295efed1fb7274068fcf0ee87e6d51328704f3e9c538772a54b43aa420c653300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d93700504eb9597f220e4c90584427105cb20ea8ad3a1138290a3fdd654cc9fed8ace32294a8b948739d6b4c94a5952102303dc88ad77049d95056235070b9ac9570a012ff68c8fb14b406b8f1a979109eccf8a171952a46e876fbecf559b0a8cc610302047c435bb50067306502303c7923472be1f5724822ff8104a17d7085b61d9351547b1b3f7f3e792648cbdefffc03907351f9f667e78f929d25f46d023100db195791bc64208a7ae3bceb37b5476c2c3acf854d1495da6b0644ba304df9ea5f4ffe5d4988003e17ca888824d3bf970302047c435bb500673065023049ddd34e6a7c2780a1b6dc25722d0fb2afc94a2c29d5612692f57693a5ef88f8db79f4f6f2c806aeacef6caf0071fece023100c51747edc3c0cb924f4bd56f044e508f48db6d0ab233437e1098cb6c6ffbdb2238f8ed49fc623e29aa7bc5a320f6c06e0302047c435bb500673065023100b89fd72f1e960b03e9cc4ba7b59e9279d990ad768bc30c7128e775e754e06da9e803b4a815a8af9882c7d86c16d1e96b02305df5b94160249e4961eb995318643df3128b9262f0407241b37e28cf4799fb6c288f70c4a9211a5b104ebceb6cca07270302047c435bb500683066023100d7dba2da9e95839213dea984cc4e88374ccb7dbe72c7c833c8f74cc70c93f608f6fccded08409d85d1e0bfc3a0055cca02310085322b5645e26c7c714e762404e98d7365d640b79c4c28845d554677a4cfc9bf93d25ec813aaf9475dc5cd8624a43e270302047c435bb50067306502304ebe17f2f3735ad4816fa28b43cb85f9f4ad059c0b8f37b8fd1aca6e1b1be2b75b7a45b6c4041e9f945c7952f6d6693f023100fb46c0f4566aca1e83adc70681e6599501183a51d6ed6170a9b59917ce00ad3668e975da2b6487d69976748e28556ee40302047c435bb500663064023020e7e63fc8c1777b2f95034113e6d9e62b513a6e30c112c6575216098208f665744e31e97f14246277cf328b2b41a66f023038b5b0d394dff2096ee3063b9df728ae2cda078f2840380d2292d3b5bfaaab5b7697287010c046c40e86c061aa552fed0302047c435bb50066306402301acc9cac391530c80ea5fae5cc8c935c551d42ca75ebb370aa81531f610b69bef088deafb48905f1bb7b168a30c7ba8f02300e0be27dd017eefe48607cf9edd8e343bd11aaddf5a357f3c75f878018e5ef7ee4e0442efa21361f2309030f117c501e0302047c435bb500673065023100c3b4847dfd10379668eede5d1a6326ce2dead6642b9fd6f05a3e0292732d30cfe5662610eea1ed9fd513c48705a2b7bb0230688c2aa72ead9febec58cf91d0230758b7c0e1dee097a2f2fec627135f0e75ee5fb29e80ac080d3b6fd63cc976de9c810302047c435bb50067306502300c5c6cefb2551f9443d9e58b106683aa7f0cac6fe10e5bf87af3a74b3d33b9c8c6e39c684dd495efd8683c02c4a28fde023100d6fe8f570997a227693ac9ff07e78d94b04c4781412b091914c2a23c8cd80fcdc6a6c27843a7d26700b26d510f95cdf20302047c435bb500683066023100adbe42500794d3335ae0224ad2911b1706e28bcf4be4bae6c115707c94a2a3939e524c0dade521f540c0ca17252f4f5e023100fbfcf81483100b629c291ed6e1e531d14da08d34732149c9f146ff3f08946b1effc839dc46840c0d0c27b6fcdba16d850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7e9cfab520ed472de6d61a774f8b91798f37ac6df398aa92f3579458c348a69888c043b1df199ed8ba1bd956ad6152d023100f8d5b5484ec8f6724f83ea713c4abb0638a621f2e69568afbd4f4dda244878cb99ee2ad8e41c7ab2dfe0b5c737ac89100302047c435bb500683066023100bbef69c95e5ae8df7adfd1313b0a145ff86cde5d0cb57f830adb6766b4fd6f26a2f9ee6887dadd96e33ced66962db860023100dad09c6d0a6128578e6ddff444d7146f9be27618f64f03d759362324676ae741af2e6476d50df489e086a560face86b30302047c435bb50066306402307a830f7788f939ecf4daba4a7277794c99ac969040e8a4bf38d6b0bf0d0fd6f778156c84ed14ee278fd7481058be06e8023000a5de0067cf7c636e7c87ba8330cd12f5400f6b0c8cbc9ad41f53504effefc1a082761445a803132c3b0c35d49308d90302047c435bb500683066023100c0c5fd19831612c9527db57a7d703df5e7f32008b84d45637d3ebeb7fd398c0f68bce8917459ba51966a0eee3fc0a4d6023100e0f83742cc10cc7e4d3d7e9f3d5f1029fff506d6f3a28f50afa4d157750204bce486279895d0bdb2b675aa72d1cb5d2d0302047c435bb50067306502306fa3434603410c5fa587893b309cff0d9a683c6a2cbad6adf0f2da29cc4852428faac6fb0c0e603050db494bc0a4bdeb023100dc11526422626fc13f0103ac1250069f50d9a36836953046f5d048dade4e3274b32e23346c41672f0786c47348d452d10302047c435bb500663064023073d2bf97c189f91b21ba059ee3607ffdc66115356d65483b74b0211358c2a5e64c3278d3a4a6227324a8a2b0ba5397f7023067821009a5ca7b65091565d1aad4055d4e76901d23b0cf3c30a65a19b9bdf6d903544d20d3f59e468e4a2505dbef1fd70302047c435bb500673065023014c349fff8ff8dff43166c610850885760f96f4a6475860ddb8c772831ac7b589ee26db15b023dd337f701ae53592446023100d3733d4f4d39ad30de658b033031f4a6d466611558ee7183faf85e563b90e42fa0a39c16bbba42357d256ab33a81614f0302047c435bb500673065023100b3ee171caf7e59f88c1d01ac25b59a1da56ec0b79e54b499d58b26a7846eb9e38ef33389c8e9a94c9b075244bbc1edcd02303a158fa739c0d26c318515c3ca3b0db131f3b639037e34f560a940de4d4fe40772a2a2ee68107a6481f6f44cc45fb12a0302047c435bb500673065023100874d4503b88ebca3f597bb4a0f73b71d8fd4de52efb7dd634bc1f352f78ae89bf6ad33bb5b13e4d141286b880fab52dc02300549227033e5ec9ddd2409a5369f945402006aeaff9deaaabd07a08c301c0ed5b6a1a02e9917f3cb9f380891d730b1080302047c435bb500683066023100db3c5c264d991b256f369aa81278a57b6074b904d069fc74c0ead2321e4e7346cb21d4d924f736292b782b1bd63c5ff102310084145d30f5f043bec2e138d9c17318d43b788cb29197771987a0bf99d6419f12c75afbca898faebd7179913178a4924c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002a74cd6c2329e38d42de9627e34d687ff2f17c65fa01926f47771a64f090eb6b6c9de1ed973b9c1a79690c325b75f0202307b41427c18b83dc8580d2a9605670acecac4debb1d6c05e63e8011b3fdc24ecfefa0501a9986b80781a34f36ad5560a50302047c435bb5006730650230599b336dc467bfd55fa852e5c7acf57a82ab4e7150524712f99eec44ffbbf9472b3b111b3b76566083b0338e8ebcd111023100b32151f770bf9c796ea0b338dcd19974df8791ba0cea58a497585599f390bcaf417192694b64b8c46b5872069484e10a0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb5006630640230057afae33e73ae1cec38fcaf6098268ee5e5342f5b1c24b608f97bf60c483ef494ef6e0b547a5039b23958d0828bce460230176c5e7c7c8c192acd7ca57fb7eee30b71186b0502ee425bb54530b754a8ff9a600897817a77e6578b9ac40731d5e9fc0302047c435bb50066306402306ef8cd56a60a43113f73c761dc3cf434349610316097b31edde410016958c4745abc00d38690faf0d6c883166a4c782602306797c631449056b5b7cc5524bf0819a7e9854d8d3b4c87b8015f863e4332682217fcdd7d1c1863d091a5b5d945ed11170302047c435bb50066306402302fad8b61b56173004fea01d1d6ea9ffe4424c88de875068411ac46b563e9b4b3c5a20b8a5362e98264c947b27666b88602306981253b69c0aa2b45fb491c6ed97768be1cec1f57ce7a6a34f80a6bf055569683b7d2553aa2942acbe32f6a1c4ec6580302047c435bb500673065023100c06c8db187b087930502a7ec41e7da266a408edef758101f4e30ad7cab480bb645377232bbaf7133ab8e6e2c38468f570230744adc33042d49e4b80f645d79719ee99b93b2d0fc64fd650334fbc62199fb94011f471601f0914aa18fd63948ff3c4c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500673065023100d23c8b364b77ec4cc214cef993bc694a9f77051e7cfa78a7a8107f1bee7271318685d190dabd1403805df4e4851c8a7b023013165b1b287a44a52383c59c6b28cd4798bd568bfc46cce9ce91708a9f58ba4fd98e2821ea188ae5e8d50bd633b8e9890302047c435bb500683066023100a062151fb0a8eebfa8ce51670039d20d48be2ad3032cc04c46f83d4e35d0db80d95d32f3643a02bf6f3ca5cb85ea8577023100a6ded258995005c56b4029bdd160efd1275bb2d8dac0c9cffcc0b15db5e1d49407b344e00cdbf669046af7c8d89c6c500302047c435bb500673065023030a974af031878c8788f61c8d5670d11ea88222193003393ff46cf669a84e8d3cc4dabafb04507ce754729564bf83b82023100d1cd7edfd61028bf9a3d8661e98e7450395a790286f2ca31ff0bd5fc6bac091ba6a571c9ce749ab829fa2676681109210302047c435bb50067306502306d44934a64e50f451f94876928aa6480f1147bfb7cc794364691e529c2bb987d9fac4ea9cb333d7a9ac24d0c73bb1f61023100d6f499488a88b1ab4880e581e9ad4a831efa27498a3e73a53a3846c544268a33bd8ba42bad93bc0b4707f7deb65823610302047c435bb500663064023066b68ffc75a6af85adce468d07b379f254dcc2649d33c40a6c0fa75c1b0cb9d294a9dce95ea654f217b0472a2ddb98c902307553a9ef914fa3d0708dfe93d975470eda4c1bdf570f5812a542bfaccd709339e55b9ee46dec36de144e9807e0f28ede0302047c435bb5006730650230149df9f63c4ffc264d57b0b607fa89a9853d60e004db23ffb0b7473f9988f965c030a6dc9cfca456d4597392d6c3f75a0231008883fdc46e37ba02ec2675a9c83565c76e22bd6a906308bfd1e16549ca40b2f00ce47bc4e6770ad3e1c9fa22f6671b4e0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100c6db07a2aa1f8098f7ac7fad18cb8bfb7a21239267703b0e3e2dd4a697eb76eb84af025a506b65f5a021d81125942cee023100d227b227a39fbab4007a20e48138568d4b8d68f94d3f47c26816782eba0595504aaec08d9cf565eb29e928f45b2f69160302047c435bb50066306402307be1a732c0eee899409b0fe651f90506b57f0165a41b7cd9df6da107efbcd3ed8d0f1e54ff5ac3198ccb61255d40beb3023031e8593a5981a4aa47613b301955fa800ec6465c20b7230163cb2a094f0ff72871b021d466ffa3853215813453d7fb130302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100940dbd9fa7c23ff7052a71f1679d84205e2f91b1cd82bb0492fe3090cc8e793d78efa164c973751f85b2d4c2050528e1023100ec20e9df1ce200811b34ae1682676c76dc06c61641cab143f61a21a530d876673c03fde7842163bc80f931612b74f7380302047c435bb50066306402300f9944b70dafdf73070dcd4239948cce6e974efca813f5c1b1709aa65d779a2588ad7f170b3c80863b8e1db81300b78902303ad262a89fcce3b961bc7f3c719e9f4f252b4e8f7a30f8bf153295690847b978c3cfd60e46ec3f0a3845e5275d978ad20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230307296960362a411994dff4d688d6c4c53fefe32de25af38918aaeaa023bbfbab8040fcd54f37436e0e9968d1c23791302302c63bffe1da3ec031031d54bb2a7a0b83d50483a9a5a041de99fbb9bb6e8486c4240ce4fe6b71f6a5c11c440f9b555a10302047c435bb50067306502307f7f649d68720c68a7033de2e9dc7aeb014b9d42b99c5a81b741e69fa8c65ed8d206a73c6cee28dd112db9be165d69e0023100baaf019781964c5b20eb75055c515edaa924af112afd28ebf1d7604f741304af8004f59987465bb8a2b921bc79f2e6980302047c435bb500683066023100bb9d38781a1e68a1daf26cec3565ed9721e91a4ca54db1346df33811405388134ea928a26d501ece8b7a577f60e9b96202310091fa23890c00f8ebca32fbcc44fce732bb74383db803d5531c05354f944887a147fdc2687b3636f4966e220d027088040302047c435bb500673065023027bbe18be366d33a0f94ab760f1316935b0a629b8fa25ce1f149cb4fc91fca7c567f6e20be8437cc83c6b8e87f996e5a023100ae1abb1bc70c1387a3500e5cf934deac354b4569821a29c80826a08e6f67a990e5c262aabbf813b7e217b61922a9c98f0302047c435bb50066306402300dd9068403f890a4bc660ebc2214fba16f908e6af9fda1cb3c60ad7da102148b65f912eaa246f9d34861bb0aab109fe802303c6edf3edeb82c8a79e3fd6950910b013bb91ee6629e425d995ef5b63e1a28df8f1bc64c09c361ceb1ce5f95aee545810302047c435bb500683066023100d1c0b36b98fbbb2150f77165b65a4efc5f420bd805bfb9298c4f8df2497c99a88018a5f7f6d7dbc62fe586036fad00a9023100d8e1f3307e04970bd43c38dba49186d0991ad59c7116abcd138810bbcac005fff000bac3121afdaf024c7fce9b9395950302047c435bb50068306602310097d7dfa7b3acc567dcb9d2578c8de4a4afce893a32c5aeccb04950c98f80b9515e52e813d1484f99ac4a234a05a6b3f8023100f976f370a94d3c8766fa8d462ee55d7e99133726675990ac69f4e2dfeea7798c77778c9dd5d04191fc063777f8fc26dd0302047c435bb50066306402302a17b38ad59df8ce5ddd23c2b3db3b50dc2bffa85c66c59646ccf12c2429855c8bef828c78216cfb7871ac629a4ea33402303c8a97a54ba39a8fceb9524342f57d52716722cc263fbb527adced2d5e7063f9cca68da557013e20498230c02a52c2850302047c435bb500683066023100f3704f2ea46add40a2c7b7671ff2cc693503532af41b35800ab2508e2552ec37c0e3898a89cb602e354b6daaaeaaabff023100941c420b245ff30c0cdc35765933566d3c62a885b3153d67c07a10f38367dd0f7489ba820a3317c94d6978322e5c15d20302047c435bb500683066023100cc5f446953d9987642db1ca40955ebeeb9669fb4757bc0875f1e93de1ad63464ed617955c9e7a6d5ec96d320c75d412b023100fb87489edce712acdbb8ab9c8bdb08dfab7fc6ffc269459f812598cad2a18fc1ad763e6025926417fcfac0bbe70220550302047c435bb500683066023100ffdaa2bad59b62ff3b02af3cb51fd7a83a9f8badeec4028ef2872ed1dae63928f7a5ce2db4ceb9bbd894634ab204ce7f023100c02fc87bee9b92b2c036d8dd16fe43d3689fa61efd802d67fa93d82638f8831ae077545319fa3903bc29083d5f1de1dd0302047c435bb50067306502303d69ae21874988b7ade381364b8decdbfe792c30908e887e46e3b56301337f53d7f63eead8c03c296f4b96cfc5b204de023100a88120cc335edfbe7b74e3f5a7d58f87d8f2826647ba006ddbc064428bad28c53828a753be2e6b9e81887d4e2067c6bb0302047c435bb500673065023063500462c5bc3843dcfb747c6f86ce3e44e009d25e6fe514a30902ac05626a2ba5fa3c1a17f41d537bbc17c6bc22e9be023100ad66ba35e1a614aff8b755a46a539f4b29be99685cc9f0f3913ddd6f9b2b961d56ec0f2d20a07d243eed6fe0054a9d900302047c435bb5006830660231009f89e1d25d3c2c05f98de8e5637bf2b234cb879cf8f84f4b7888619bfbed242b85f554a47ee1ed3907f71b1491fcfa5a023100c47d248cd484b1942e7d93917cc097a85c8cdc493167da9567d530396d11b1932b34bde3d1bfad9b9a549a465b7264340302047c435bb500673065023100caa1dcac01574d0a7af1a3f9a6c4b1b7a034cd340ed0d98ba5abf067038da31c900c733f8c9f2bf59eafa231d30443130230270cc442ce49d8e37cf6a2bc9b6e7270711f69ade4d6fe86c9c682eae4489b09224eeb69cc751855fd854ced16890d210302047c435bb500683066023100fc2206c2c3cc8f69accabbe302afd1b9a281e4654177dcc2a926581551594837e0171bb01c8fac12bca1efde8f3a43900231008647c591fa8cdec37838cf16bb26be2478406ef3ab932a3ddf3254a2fb162c4e9ef012ac8c7c702bdaa3936b87758f830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023037439062b61052f916974636eb1e6fab2cea4a6269d23f2424810f0ce1a443601395de4dc7ef0970803aa6b0415b28ff023031435199a0bab43b82f8dd4e9784e2314b93471730e40393e509699d65fcdf0fc2e83894bc60ec24493c067f59577d340302047c435bb500673065023100ba32659d0d16f64fd363acd39529f7a325ad96a0e075d2203f32bb87146d087b5bcd27cd324f0135ab3bba4b677d21cc02302a757727b5e62179bbd80b2219d0a925073e4a597b49548ab4b1923143af832e209a83e41ace34b076a01076103243e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a9311b25013292d0944cadb0b6151f04ae24c058153880b2dff3a2c1f73cc0fe279de36a92de2e94b0ba1fe25786dac102306c318c2e9d27e154e1a1158b5d5c5b31fe28332e9eff1b692cc7c2a1827690556bdf0c5a84ef19f7d4316bc741268f680302047c435bb500663064023010d4a3c41adc04fc4ac343c48dea95c4a9a7fba97511efa9499db1e99d84ff284863ae62d2b0c030fa9cd665f22d948c02301c2fb9f5787661df33b6910c91a6d8baa0630bd3d1f942cb11b22c4c5b19dcc483afc9238f88264a3b6bd8550c084c570302047c435bb500683066023100e5b30d362c2ea99b5af9c392ead5b6e59aeb34150a908c2758cd4c21431e3b7fbbb9d8d8ef6df092a2adf9e5f805e7dc023100e4f78bd3fa77d5bd8c4dd3d6ef18a83cb97f30c850bbef9e71ec42f7ba7409ff9080de182294386d0def75bdb3074b5b0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100e87cde4ceb12c86526043e3b9205e49b33ff127b4c0b474866e0b669eacbb297e22ead6d59a4d21c302b7dfc999e1f6e023100dd78386162fc1a0966c50cf5b35add5607070aa9b9d3592c3b2099fa16915e8db4ff0576c0d4aca2c4c9e9923ed9785f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f5ae57d48cdeeb322a865a9b46a09490f1e5439861140a43b4666310e62e719433fe1f56e1f8d4ab7ef495240e30d65d023030e514649c5ae3d37c0e043515422fa673f18d8df96db3e68961732e9f3f2d3d52057420cec54d0a33fe67ee217946890302047c435bb500673065023100f5e739f4981ed34e53516723d069f211e97427e6fb6d441e9126f3d523fcf21bc8f2bfe73681e44c2f2a44c536c7686d023027e18d7b92d74f1b8a3449690e49bc37386541f1145faea4b34a676ba790dff97ec472e9757f4c5cca319dee151785bf0302047c435bb50067306502305974d800c08ee598208eedadd252468661caf9f7cf8818d43d4afff0d312580e2251ca128802af0fdcaebbe4f7e9a1be023100eb5a957cee0fbfa56353f82d91cdf6213a6b32a6953ba81b8ea2ae15899d3897da96b940fc7aee444de9ac828f2d248c0302047c435bb500673065023023dc47e83d54be3f7e3b2ab3d65516799c097405b7acad9a8a4f7a7b68cc2fa037acd1aefdc0598ceadeed0bd0bd0086023100e42ed95afd84ffaa46a000f55cc34d672b4d718ef20e28c7dc6436f483e0100541c7583382d80073e8f3cc536afdf0640302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100c66097aefd30efada689c4d170dfc2f051cefffe0d30e048145fd34b2d78718f961521ebb369a7e0e3bb3f7988272cc70231008eba829b1fb7d08f1e1a70eebdeb962c665d954b8cb9f5f2c8edcc3d7a6ad8c3cb25b7f07f249e797c4efc1d8cf66a8a0302047c435bb50067306502307afaf51509dae263efe403b9818b53d301a27bac2058116dfa19d38d27a3664b9b24f45861ac2c0da213609770436179023100f030eb568f9793125bd7d81b245bbf7736628e4f5e77d1b8b10d2bc3a5c995bd6a0e40f0605fb153f09e0667928cba250302047c435bb500683066023100e3c82054b334519c93eae1c57e673cd015254a16322833198e0215d6c013a057e2b508419ac6e6566f075e9cf66b58f7023100919e9b079ed4cfa5fbf543e4e354977244096024355d6cf0ee3bb51bbb1cd45fd21b63d71b64f84852a31c65ac6e24ea0302047c435bb500673065023100a67c829604c105354c2a3855296d820757c31f3ae5193fb139032e120c1e36fa8e7f4162fb22e34bf9c4b9fadf24276502303baf749db9ab45d3f8c1045f2c3b5431fb9554d4c6c02465f13b323c90961a5c82680db9fe84eb028e3d77e60ee39b700302047c435bb5006730650230233226f3af0fbc6dcb4e9fe325aab5c3f27d022751259165d02db26eca6fc32969d8a33c5ca4c0b84ae4bab0d34273dc023100a62e096cf5b8d30c7a9e583fd0793a3bc3d8a91cdb12f475dc05b89dd84474c1059f48a9faf5b00e9b72d7a20571f5a40302047c435bb500673065023100d89d2e852d850e1342a1e7a648abae6911dddc9f5954c1dc4285f87f77377d80fbd817e21a57566315405b3987709452023070c726f4fa55a6627e12dd86d2febaaecd6338433c074178138bedc49c8f1985634c97b7c4402b97ac5424791a70d5780302047c435bb50067306502304cbe086bcc2da66569e335abff47a7352c224369b924244707d62199ba22b29f12c819d98708d4585bace4b093f836a00231008e38d539b26d5aaae9ebe7548ee3175660d106f20ba81f0479301098d467c5e73577c8eae6befdee5dda31490080f4220302047c435bb500663064023053ea3414c2d3830d17863f5fa40afa62f13ed34d289d2437dd35826e0d7ee45c9d227ecf41b2dd880659d16a6cf65ef702303192b1792d37784cd1fd5479e92981289e83d78031083b8d27602a940277b3829129a6ab0ad3b85d67a6bf19ac5b540a0302047c435bb500683066023100ef221da429171104251c75fb4c82662399f0a8400de2333349e3f73e72065cd31ac51407a2e2ad7f3899a4e4ea6556de0231008026f03d78860b4ee750ef43c5ceafb1f5239e6dcf4c1c4c5c1039322c721800456f8d4fb59038f8b7350231c85a591e0302047c435bb5006730650230429b9d300d301b17fec6431cfb6d9a138ef17810121ceb9ca877201b4704725a6c9a173eb091dcaef76b6ddd42239b95023100c202d9aca1bdc771ba266a284fe003794cf11109e393fde1d3122dff3ef2dd4915e9516697d70d01f5f3c5021b24c1cb0302047c435bb500683066023100d0467bd56a8b2b675d2026afc1b9bd82c97f9dbee2acb386144e60ad839a53ebb443089ac5be0ae435754a62b31c3fa402310097ea3638b6592e61fc7527486cec5ffb696aa935354e1d7f39abe00161ef3df5b9ca3b29e98f8b504051f14b39f0d0af0302047c435bb500663064023022e71ce185de2950858692fb77ca5174281115f07116bbade7064712f592e24b1d9c188b454743e370a1fdffdce451a6023073fc389fb6c40d19a1d2f24fe53308629a6c2d827114c4a4d73e1b5e53d1292b0d80b7987bbc04a28aadc1aaba0b9dc40302047c435bb50066306402302490e02e47288b74f1cf730a499d1aeb70209cbd2f12ffc91c2203b255d16e3588432e26d8db859ca4a04386d973370002304c0ab20f92c91d3862f91f109b4af7fc7f5bc1951cdd86346cae14834665d62191d7dae1f7d92f20a0116717df94c5730302047c435bb500673065023100b0ce82d25391069a83777a209c101ae8601ef0b7228df4276e030b542ef20d13e36edcb4f827a1d05008ca38c73f1d9e02306c91e6a9c1f448d0530526ff1986b4b2365760c81e02e9a6ced2b9251a79c0ca17477ae870b2be4be34fc9d2f77d29440302047c435bb500683066023100d9b5ba0811ef2ba9d5f90258eab86351ba2609bb56799574039ff710cc9a7ccc4f0bf1d07769960876cb41b72d0eb5c5023100917acbb9c868c569deb9b4b485662636ca21c01c1f68ca579fe4f6c247b631f00ca0195f7e980fcf9ee4ea466270a32e0302047c435bb500673065023100b7095a9585912ea87f6bd69f514c01fade8e4f3724572dcf6a10f4aa45df9ae1920f924f365927dcfb4bb6d7ec9a76c102304fa2da86949a8ea2319fbaae174af8d1f28c912b785b7eb8e73a89de0e9194ccd60e85d56e9ba248a23ebef715f71f230302047c435bb5006730650231009a5cd9f11613b1aea0ea9667217b3b756723d41702b8b177b10a928d214e4f624f0abaee73115870c22a80d5f8caf8c702301e421a981bd291c562ac3f8f81057f05d07234c989be250e790c5fabcecc9eda3dca88b170eed5387e6ff06ed44e36de0302047c435bb500683066023100fe890baeb52ae113969d2df7f44b5d73caa4f4cc4966edb62071c81cba8d8e21ce2085641efef7b08c30ede5b7ddb9030231008d46db11e767eca6183fd7960977e9e1222cb1a93d2075ac198845c6e875884cfac84ec53302ed70cbacae0de8f6d42f0302047c435bb500663064023064a79e28ead41b2a0083fcdc39adc298edf5786d363ff89a0504dc9380cc31ab7465b10af07248a9fbb1faece5e1ddc4023064d67a074938e4cd54a045966fbcf1fde9fe327943455667b2ebc3b346658f475adf65e4294da5f884cec44c2fd985e30302047c435bb500683066023100dc6f21dbbc65362fe7a154c04d89db7bd698113bb28659756ab0d221c7237fef6c2698813677096d5ee6468925fb1d4c0231009f1eac4317516624cf8ab5c612185d708e5c789b3752327a60b156b34a3d2614eff3283abd533dfdf4235a1909bc18f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cf88caf2269088f68b310aee23c7f2d265f9d255d21f8e66be0c034f7457f8cb594d342d9846abdd9d47cbfe3e6ec147023004b5fbddc19fe9b4f97f2e94809680ee62dd085521b29ef63f6886c469252ecdc5cb36386ea5acff249d6e5ffab53dac0302047c435bb500683066023100ef0f8229e85d50c922ab022fc84ce32aa907a4df7df847a80f68482c43720e3d27541f90fced49f7eaa5c1e27abc332b023100b5c65d0d86d6ba41e980e38a61544f21b955ccda09ecabe9e81b8b7800f67879e47e3d0717fa263cea81aa38ca944c2d0302047c435bb50067306502303450a920b712cf9aae67af46328257eb5da6b106375412a8c28e8432139ba69c1ce62e16ec15ffc4917cb30f6ce46245023100fc82a158550eb3130f608eac7d5d69115b073182fc135d5080dd43213e35072d07c2c09444fdcbe2ad7a9782b93e75cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ef67d60b8eab23aaf7db13dc3d3d4aca7becbe8d419d5eb3c89e07811e546ce522363f29bfe3021673a2701ff9ff199023100dc2f96e74e4f24491abc22501dccc589c78ad35291dc9103d9d03c2b70a83a222c5beec3ad8c6f54a36d7b43549885440302047c435bb5006730650231008aceec06fc02f12688f472b76af14e97b5da81e9ec59cfa2ef4fd300ebd8804aeb55096d019222466c5466a41e9ff402023015f3b644ab26ebb1317fceb1ece440a14d5e6c3683e3b2b225c0eab768e66008ce2bb869a0f96fd1bb2cafe29b7274010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303acbec71ee19f5da620d97e0ee98fc1a8cbea3f77f9fb15e966a9ea8277b4003d52e2c02de1993d4475fa96d233b0df0023100c16e56a6f1a0e89d10740eb4012a62885f7b483b6b23d9b96a2016d897da689bbc8be9399aa0c27476808d732844e6780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ba86c531804da0dbd79e72d8298e391ba641b7350949ab82fdb1be61e84a631fccdc48e99d4c3e7e542d11ab403507b023100b00c6d486a6b1334c61b4e7ad7289c6d2e1b6fd7f10138f8b12e2299804072029e2693992147bed6843b1a63c05d80f10302047c435bb50066306402306cac879745aacabafda347eb597ae70755a7b70689f7ac2ec081de753dcad25db8d04b7112c26e6eebacd110fef0fb17023007a15c6bc148b278a15ad3b3aa36bc0ece3d05bd50ba67217f12d46f7311a315eb2e1bf66f06a177e50f093b4384fa7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bfda203507b0b4faa48ea33621a7c077ce41306459735284f1acacaf4888996ece972bc50dafc185c9a6c717ce4a7155023100a5390fae58520031cb97493a8db20a19eeeef0bf4cf3a0ac5b92ad80952d3e35f44d5a4112b69a2594623e5c7f03d53c0302047c435bb50067306502303360bbd50501e21881caccaaf9c6173945efe5f4e73a20a664bf6cdb77dd104cb0bd1caf5424d869d2fd01c7288bb45f023100d568b679a63eaca62a6b96525752f3da8ff1ce025b833e29f355c471e75a56650ca4f8c548c432cc097d537689aa00050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014b50770f8ebb9d8e74fc3868f6f47e6d7c607b7852df464a6a50b05da74296b13c60089d46643f8e4e3026f1e075f0c023100baf523091929a1484ec327fade3991f6769f6c7498da0edb63a2a42d2940bcdbbb9072a8023fcb9be4fbe18c50e96a9d0302047c435bb500673065023100d20e650e7ea62eb6b0a8651914756613a2302c42e127860cbc259bc176185d2cab1e6aad93c68afe70a0fc8c9345d93d02304692e61be7c2ea89ff4356c44650fc207836607be131351609fb26c44e344547704be6394f1ea04ba3aa085198ce65060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008837a9b418f70d096a0f2b8c77a3659ef7e87a5665bdf0791c35303d8d2b98de8bc9cf2b22160700d9ef3ae1fab3ee050231009afa578b3916f8a9fdf4d9cb033efb5e1f06f178b878237f1a9688f17dbb16948648ddab71ba4ef4d00c2b7862096df70302047c435bb500673065023100f9d049d650b675fbe41a94a0a6ab9b96cca97b4de1e7e3631eb22933b251a5eada52db1e6ed3e5df18dc4183f64138c90230247de2855d3f2456b9f366c496b1ca7fd00cddc29fb99ac4960128ce616e60d1e75c42afcea08cedf39f197ec878e31a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ce26cc54c4648e02c361f9acd7a3f3355c59db8316b3f653948cc351b14c4cdef2035e3255ae9436c36cfe0ff61b1f7023100ce63a545612b35294d4c8fede8a2b72b6419b79e698bbdf6b0ab85f52e72ea7cef290b305bd3c429200d032d6cad877c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a3f056c57bcef52131465db3d2e83301cc6bc7fd92c556cf3c5f95a20404ebe64d74d91659dfe6faa97ae3c8a67a3ed6023065d0f4443c8fa7ea59d0531dbc0bdaa90850db7dd48eb978c9ffbc8dd00f9124fa0bb2d5d15c4671de49ac6903aafa7a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ecf035181e64de351307c2c22d7df9ea73d39f2262f89a97660d8b7a2e3ffe79ea39c5f7238f7f2269c42064745dc97c02310096097bb4a39c22148cb78c7f9457d932966d9938596a29502b0a691429768334f7a051d94a0e74bd8faf849dcc76a1cf0302047c435bb50066306402302815f5a6d6384418ae8a50404ac06f13670d3adab063e500fac952421df990f59dd3d5d9b45728bc4fbbd0831bedc74f02303833f7ec573344c50336d5c40c7df868abad2257f14e1b28e69c58bc94d4d0955aa000ec8d97e64ba52651be7fb3db670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091c5b392edc531ca051f782aa3a23e6aeb341eb3136df1309a55860beea0b5ba222950e140623a455551211250e75bd602302385502311c1878dd79b8407794c6fd0d91f1214651312826df47a338561c8c6f2cb081a3c804d14c82d57ef295ed4850302047c435bb500673065023100dc4c8b5f2b1b01e608491234e9f9c41be88001842ce0feaed5758230a3f7465d1ed9f997212d75a526b4dfd47a5de3d7023071b6f1196ff5213dd886dd2b467b7847c4504d28e91639b6b2f20ad3b02df15f5e7702c462f5725c3373e265c889fd910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dfe5340b39b2890518ad39bc5799991e9dc9c3b19e29f1669b7141aefdce48d2d0b2a8b2f0e841db133938eee7acba1a02306fc849c8e8a9e95735a59406c7613ac856cb984ee4d51107ea2c975bcc90cfdfb75fcb83de6a4bd46f4860c92aaaa1150302047c435bb500673065023029dca5c62fa515f6126fb8380274576b4e6f3cf48e3a7f66577e5e53cbb0eb20f18da24cbba2c69512c77535a97a4d8a023100b072685ac2b10cbe4175fd24589d1772a29361297582f531580152263056f7b8c0321fb8d3f2ac9b644e831a572654a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d389a969beae06f89dda8336391d86b43d9f2ddfee0490faa687df15d1db7ea992c9ea805875244092fecca2e5c46f7502305ef381c57073ffc94bc98e0001d62d2b703b978825ba1df07f3da34089f84e4b39c2a0fddf1f609bdea0646d699634680302047c435bb500673065023100f0079d4e4fb92807dc5f3ba4f21310f2b3fedf4aa0ac54ba91fb7320e725aa202f40d033f833bbd1adc3aa1ae4b8db46023003135092c2f56ac62ade5a8dc3903a9fa235957091bca38caab17dc5723271d4bb384de4b8397fe2a52c925c57e00c900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042cbb1d563a8301a1917a7cd784f0b5abf08a5da525470f6391203ba41cab72708445168e7feb1f26941719bbdeb984c0231009e6d286f3cc8b4e9b88892b46321ce6445b06a783f2b09a4a0ddbace77212db13e740f7bd7d9f678bb8c96e116a07dc20302047c435bb50067306502304056cb84a4058ebcc54cbe0fc63bae37702f960f1aeb65dcf79f4207ee256fa91875b01f82cf0e78d64580fe844033d2023100e312aad4832b18c150d7a44c7e0c8cf596d29bea05a4a26fe425f7970010c74acb4dd3d83cc6f1cf23cfd26ffdf4d3400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230767b567760fb54e5f82f4051e51cf8f41b2b23fb36178506c1d2ba64212b403f84f52982a7c961e899537a221893d6ee023100908e0a2c85c42cc632c3aa06eec85cd23d717d6066d5e29dd5ea01a2c4df2e7e3ca61268cd5b421c9962c0e3f9149a720302047c435bb500683066023100b7d7c4716a382cb69b7e2a0ebb560af75c0dbc3dc859e4b079e4d9e2d4e7142e5b2521207bd9136b835605e917906388023100e1fe21f324803b9811d2da9f8e52e53f22cb32a1a9d08b530393b9fbe5e9bd37159ae0e325e8e69a89f2303395da4d020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc7c8b8f4cf3907550bc5856ba1301dc3fd138ab422786808b4ae2dc32538f9637186edc89771345044aeb07b40c42850231008ab821cce698e1a1a8c60c2374080e8b82fafebcdd9311e2c3d0fc8da2f50e220354089d638c2030435605577922e8760302047c435bb500673065023100c00bedef9e106f8fc674e29aa95a354ec6cfb74595125e336542ed3bfb05ca7af2b3683341bfd967a2077d31f087b43902305c671ae7d2ef22fb741966f56dd5ce4a525e108fad0bdb3b0a759e3ccf17aa80516aead0c8b262df2c007b7358d030700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf12afa444c6e6a8e0d0b12698ac41a64e79cea6c8c3cadb2b04811d92c3a813b7701ba4bb8cf445f2692159481d21ad023100e2aa6f94f4e472662b6c6657fbd38e68bf1b30e3f6b554b88a82939930cf8da30923b5dfdfa62e9b75077b136884b7ed0302047c435bb500663064023079f1ea069c441dd926f5509f72d331e3b48a286bb1a74224651b6f2197196410eae277ac86dfe7e427140fae4fbae3b602300fc7832a28f4697e4028c5b2efd2c797f82d6dbcea28f012eb5852c2a8d88efc4d5f2787863ebd27c79229b6ebfce8090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230601a56fa597d25723cf33967e70b560ff9e4ebaea72308c7933cf91e2e5bf1f2867c8bac7e367618209fb0d48c4806a302307ec2456d12811a28f0b4036f240d1947c0c3136c0cb350c0e09b036a196e543e58bab669e0864d5cd730460a4d845b8d0302047c435bb5006630640230197c0431f444d650213168446bae4e2d0c8671055a7e6282587375a2579c3addc9f49124c3f9ea164a28830ff004c12402302526f71c4c30fcaf1135f8d11b237df5ef3edf66835cd1d24cdb6b6a7e91e7fcda1d75c223680f4ae24cf9d7adf86fe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097c1fe324369dddd2a127c3cc1c5b60ae9a1d83bf650f4d4f2578e8edfc671503c9b07677cc1c35ef0112be06f6f51a302304bb65aa4fe1bf1e44d5c8069b14581976fe7db3869c9f47821866ba5517c88ed3ed829070db4c0171d54c515c913a5630302047c435bb500673065023100c4befb1e822495bdcc3a915d54b54776663804046146a7effa5adbc5bf4cf9f49e3815e4ea52c91fc3bcfc96609dee0b02306abbdce093f583a1832238f2c1e5900d4b2965d9babfd5d21eb8528bce03014498f4af39cbb5f93c7b09683d1aeda6bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306425e08cf3b7e42054293a2349e9d114a86205df2cd4315cd2104020d442f867106796055035dc99dcccdf346c9e1688023100a80cddc236be9d206ac21368ae35c58cf4c40268e311a2de67016a87cc4490380df155ccdff03b22da3a449c1bf0efd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230052bb8869f080f1298f05349f85e48923c3a3987312b6c56f261d565f5522be50a97aa4c7a7b6f37cd93e636096a02600230600ff5b5e49da58274ca1fa61fc2493e9ae783eb35696a6595577b4027c2cad8f848321c01ac15a7d35f8684fc53f9c70302047c435bb500683066023100f21c8c546b97e8511d6706e862b3c6281231b4d2e367e2dca5715b2de3d1871994dd1209bc53bbe5fbb6dfc73f365d12023100aaf9b0137a79aaad6975333c80fbfc91a9ccaa0c3c6dfe37b7a22b283408298656948e45d5cefde89cb2d10334a0ed280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ea50887854c9f9451e34ecfe3d19d206e1c054c8e008a6d4a8a30297096b017d83916cf5498e1e2fcf50f737f131308023100f35e08761b7eb060147fbee03780ca4e462276cf9fd23fbe3b51bbabe2ffd17c2b897cae575942c5930a0d1e126998350302047c435bb5006630640230764c2f3b4f137c06a6518c7d7f062de894c4da66d3c1e640766f5051117b1c35671f285e7936103f8dfbed2d2e9288d702300360209e0c1b1a64acb61b36d22bf3eaf548024411266fb6bfd1ee0210cc1e0ddea068b2afa46d9f5a19ecbe8073343a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230157fd1b690174f5f5c0934d85177fbc486559827b02b450f08379e4b1cd9f2c25012a17d55050533460c6103a453a48d023100867985914f34ce79e2a3e7fd06e6d2b9ad681ea415960e88700ec5d0415590f75ca034f415145f2029feda48063382a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302703b620e08eba120d590deddccccaa7a731cefc3f622831889685223dcdbc4f148ebc5ac452a984820a82e7b1da529a023100808b26ce51dc0747c5af19e596f5d30a939e71cc7114368779d7f99d4813592dfa4063a2abf102d47f37276fe1a0db460302047c435bb500673065023100a9bf8c00ec4043cd2b478ba732ee050eb20e2f6895d8a59fac9ea480432fcd19084f6e16e95ce6f0f2975fe2fac2b97602305adbc2c58001b0157aeb0e56137ae56e576d069e13090eb228f04f2e491df4330e8d7411ee6d60c0f4f7af3facd6e32b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd6788e2f58887ad21db792133bd35e64b93420d69f1b2083a9c99d6116af30d359a60ee974fe06bab91ca4437f978bb0230690905f4338ec1eefb1ddb39c30322acdf4c47e8eede387852a13897b305786822c1438d67a0b832326acbd465f88d4e0302047c435bb50066306402304c726b81b5646c84692d672502f103ec1dca54f15e56e864e5029572b7d2893b24c25a21597800b83b21ab6bde260f700230218c7463e0036cb12f34fb9eedbb36391abe6d9c4e53298b6243d22e2c1cebcbfde446db4bd14fef0e0d13beb99911720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301369b352e7df7076de250cf27964551c67626657301c762d589912b2c4f35d0e940656bc7866c6bd5569ca51c6efaecf02302140532b052de5f4bcf259be8ec02514ac8d94caaa7551643f4463f9401710dec703df7aa31a42a0a735a0991c42c7890302047c435bb50066306402304477dd2f7b9ed612bac28e12537144271572bf288f10e5c49b94dc848663d25fc2f8885c75499c9fb7526530fc4cf2b5023065eeb51fad363ac23b047859cb98f3ea8565a53b9f655d5e2cb939accfa1fd2e3a0093c965326ef601f5d94e830f949e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303acdeabe33633291e6ca2c6809f84c2cb1ed291fa4b5ee6eb9a60e9f1b39207063a61a34175bbccb21815ce2ea8757ad0230711a2e899b48710e252b2a14d0369f18d43b38a74cf5d03e5667bbced167f7c669130a6eb8b1da55088535e56d931c800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc53d1431d6f14baf1deebbd96ca8e284b682f24810fb689d6c29a35094ff4cd9d46a084aa576b71c7887c85d8c8e0b00230379ddd43638f73f477b7028433e9dd0790e3e8a45a4f9cf04490287cc5f7782853592b5a7e788ebdfab8c4873e87fc0d0302047c435bb500663064023067c809b8030af97542268f6181255874a0e923259d898d26ac9a57a13039f96b082d2a967ec5841102b12c274cf78076023022ff70a07b1aaeeb4a4818ff6a56d253e0e71747c9335f9524cdca45f8f03f87ab62cad7fdc21d1b8f02cc73bbe00a7a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a15694af61e6f23c9af8d0574d20504870ba3494acea1ae4d21dddd3f94ac25365cedf3edbd850d06d9d42b11b6112e023100d1701e5a5b9d3b41d1ace8e29e7f934fa061a48d5f15bd79c133914d97a6ccb3aaef679439dd7a8d52a7b751d22c57ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0ba408ba166bdb1c3de040bd33c72dbd465dedbafa3d2ffe42d7e1128fa724728e393a8ac21d05b83b02ee340d3b89102306df73b0cb5a3f8176dc5ae6e6f0161d9722abd810d9c5c804ff8359fe18fd69a14896a3928ec2e99e0fb3a18860d8e630302047c435bb500663064023043bdd7c50770579bf2ce5b3cd78aac96bda1238d29a5622e33dad3b89f478c8d655e66335755a01e48e32d89c651c8ad02304a2263c8a7bb6fd4035b551d0a9172aca16d7d7f4bd7456593369fafe3aa2232a07afe970110fc34005e4e7b6c2e88640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fcf0ad1a7f03cba883846aea0a5b2431df9f56e2f9a316bd81fa79cd5cbae366e24a998d89551ef1771df16d169033c802305f9cdf50a4793eae4734bd8e4253cdc81c7a4df9ffc2675138fb7123a7cdcb4b26b99c09520838acc493bbfd73ac09390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1979e2327b537b4483a110d495108016a755d82698e3a995b3b8b40e5b974e7dbfdf4fca2ef4d1dc56ef5a87eb9426c0230177d1333da2680e46f8ea71f5577b9d4aaa7527dc321912370969e4779c23fea4668748768661e89deaa1462d68bb3e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303407cdcb52654e1b1709d23c8b966f9f94219fa8953866527c9b60413e0a99fee8430fe846b55123a8f903cae4ff3a5902310085217261c821b70885b8e8e273d0300d534aadd2417cb6a6c74096e42268e439adeacc5e35d5d8eb3c9f067c10385c380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307412b383b6b3c3ba9c35e9160e1391c5bad691fc39bf63dadc8963668a03b7abe8c4bb75ee6c4d1956bc8981550570380230379c5b72511cef34d6354e1ca2b58eec39a60f09f0919babe14a9314cdb63b1593d21e209866f94f91c7e782927da1740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a7943ce6218cd7f8f6ccf6e0a3b7f8eb8855ec5f77dac027659c39a7391a068e759b8eaede645941ecd8b847462907a02304f5cc8b00c5f7a2ef2a7b7ec1e06c3a4047388a0632fc0cc483678b59660978d86259e013f180f29598534d840b4c8740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302585baaff365676e75f45c6d061a82af6812fcdec120ff19aed7b76773d5a18ab717d8f59aa6e0087c35810bbd972a7c023100e0970667b1dec073894a473168e6f64dc7643ee48bc7d3c145757be06dc6f516b13301e884e9a673b9746d4c9f2d08890302047c435bb5006830660231008a90464b1d6eca61d73945ffdce8283bfc2da8c6ad33bbf80d3a18382832fc96eb455137279d2dff96fc38dc4dae2d4f023100bcfb486e7c0aeb92cd120a565e1acade37ebbca47452d9f8f4a77519bd5966126a73ebab71e8748a322d197245fa18740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b3f88cc04b660b90cd13ab5f30990a12873e6b8d76f62f6bf5b9b5190c5013122e47dacb6331f8859fad7b731acc1ccb023100ec57deed25c953d95dc5eafa6a2784091126bc2cce95d34298e56c10eb74f1e4861387c96950d62caf2fdfe1da5922aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039c88bd0968e5962a633a6594e6947b08cc3fda54643a2ffe850d67bbb332de54d03f1b0e1a85e93933fd7d103bc3f7c023100ffdf3065475eac5a4a33dee77155db126d745ef2570a09362055cc9515b5a35f2c6abd56fcbd90fdfaa72a3f304338e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230408c80357cc8a44df152d899ecfb3f89fb8b0df90a67e4fb27200ebdfa89754f9c8825ec1b1e1af1e60026f79dbf695002307396b67d72124a771a1b58c7973e1e15012948b2922e7eab3132f8c5b82ece64be66a0b2747cea26c36b2eedc1a8f45f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305c5cd2fcf03cd77f3d4163dcae48c7ab6f2edcae71f6686e6d22e29b0e8a904cbd52f9a3a03de491a10890338737e21f0230228e80b5e212d4d049651d218fe684e7025c9acc1226d03eb6f01a8c8d2ee3d4f7bb605490d883c11884da0403c9ff5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230220f165e82be1e07e5e6e6aec89775844a14f23518e7b5e63acf861e054ea9a1659e3a5e0268bd108d44891ca543a8be023100ba9fe4f32f1a9ad317091cba387fd6ab8b8e2118940e949b0d717113b0e1269ee50b5c1b2b52ae23e49414f88fd4f69e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306a1f151479f5c21d0b7aa69bbc02afb38d18648ccafdfadc0f769446e9d326b746e2662ebb518d054bad88d11981dec7023100c4cb882706b5c6d759d36eaef7ca230a4cd87777503d374b5918b1e3a4765a6d2acc47fc96e57f9cb8cc17fbafe771f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230789d09874647717ba650f8d4e8f70c5b977b3b4ba6fe6eea97c9e365614fc95e91a19556ac9e80b39aa03a72fed80f99023100e6c64d2cd9ad4a57610de676eabba1a292ad7785bad01637d86dd0684bca24f2ba7b87758f684670ab192cb21db9773f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d9c5b158ef5cc4b87ed066509e7e05dc458e48c07f94287e17856332489ba4ab167acc052ec57c1ad8e28bd24e2d13ac02307cb7ccefde6d4aa42df97cafd1fa25da763d10399d13d9127c2ce5c084a307e1d0aa78366c1a8d8e5b0bdebfb8c4386c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023006564cb3e59b9f2be9cd6c772181bc2fcce8f4fb6f8a39dd8e7aafbabf5d9108ffc0e3d6ed8e1e2c1aac96f6e963bf9b023100f447b0ebddb95e4325fb93a3d317cb4172280028dc60202a469ad0f275f3c7a13be9204b3d050a4dcdfc0d0783a8e8410302047c435bb500683066023100c1a5ba69302b37233828ae68b50cf98775f0ff06764542a51d0088f352ee8c0677aaccdca0bd1d4bd5f75ef8e5b97f35023100f2771474d1f3ec4949fcb8d6574a991b2257d83c4f119f6e567ae14f49a04180a734ed4b0503096548f2c24e82b4fede0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b6c058deb86622455254367daa35b2c148358f5309f89d4ab2d0df07f65d614af727ab6547e170ccae4d981a3e00b6802301944065232af157855215dc5e26286608f20c7ee4d76adffbd2fc5bce0f9ee8c77c06860d1195047eef2c59d587c3d720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff6e4da289848acec6b29723abff6540b24b4912c4c036ecc4cf275f0297f8c8e71e0d96cacd3f9cb294d3da67152921023052178f0ae55835f3af706bc498d0c75dd765a9136cad050e9a516aeee334919af159904fed541f4191ff0a87d535964e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023070c1b50039092a640414f8c20c0d6eb99c15eef7e0b5ef33e7c4ec9b3d86cf2b87c2ee3304c3d546eee51aeb34e1b123023100fe44ba3a75404fb00c429f22ff6c30411bbae536d394fc139e18f0862fa1812fd6745ba579bfbe50880021f39fc813160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088a5e20ca8e1dd243127f5970d381e14b50a1e07f4975a806cef60861d908b728d856371bfd9ad9d9447dcdebed7dda5023100a93ef75ca1e2022e16a651796d1591f4af4bb90ee1228fe464dfb392104ebbb9efd7e3461a41eb7b61033070942294200302047c435bb50066306402302b5f7d77a7a30a9fdf42f2c96ca4b5009f6940dd9a35bb1b966831ccac920ba1365d923e06563512a898f4685f78781f02300353b628d8eb04423adf568000af434230863caaaecc8ec723dc066357d4e8281fa0774965e983d75cfffb8ffda497bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230321716e449c1dbf4dcd6e41b09e4d1b86f44e166309ccf8848da903f3afd0dab40b27dbc0211f79f24f1a32a0fd9784a02310089b5934c89cd565644f266baff98eac6f70ab61a8e84e5e157e66fb3618ece4394a50ef8d601467c2bdb491070a336bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c42885f0dd2d8c945ae92efb97febefb3ff3008d5a1d3930754813920ccd1f778409aaebd3bc50ae7d35c33a8c9de9fe023100e5db208e0a045d4d69ba5e7a5d6d4e6520c30ada2f5f87d6e4a784d3a8b2082cfe6a0beaaa4c1f465d1493aa13a181c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009883bcd5487cb3308c4f388eb1e0147f82fb2992b83dcbb8c9b9b6fd6068874e7a616e51137efc1265d557898db7de6d02306b2d8213ec346f23134a2279968d61589e15717ca62f979ea6d1980aa820aaf563c2dbb643efe3b1951b94127dc5d7740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a02a9e6e8c3d3da0c2bf006c8a11eae395d0b9e547ff54fa539fcb8ae0793a08bd184e57ab4af55b2d109ab1b71b400c023100fc7badbbcf41766a750a4568febc0d71b9b687bc6d524a352953a90e4fdb47b21022b942cb908059d121433ec773971f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023002885ab2e4f28b86eedb78a1a3607624834a5182adc97907b4a6341e231088c2087769688226ca902347dd47ce981b67023100bb7446cd66ba86c0b5cae79a4a73948dab2e36f5429a385a86f7ae5aa8c0e7c8a9dd82bc63b094d72710ff47844b8ba80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c8fcd692e2d8bd274937c62e20f3e63f41f546b1efdee726a9d96df21a6251783bb74eaac8a307a05c423b63ae153900230035d5a412e3a8a085644b9c340459887fc197f70dbcfc2f2a6a76067461ab330ce278ff02bbdd44b4c2e1250981a70d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f3898847ad82b52ac299c6b85eb605676075cac71c75900736acd441c368d10fe2651741a7cd5177f82db9a54e3c4fb023100fb7446be020012f22fdd4c075bddacf5f70460f408416357d22f034ead26afdf1d9bbb36b68f6edbb505161ee4e6fa570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040136aecaf19568203cf05523dfe43d1e30076cd751ac6f0e09f2cef19b6daf36e74df3a26a66e5978b444abee95ce7e023100dbb1dee99def4ac7aba09544c9b4952db8ded55f0b7682769a3b7d278b2dcb33191e54b739048ee79b47ae48e6e2680c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f06598ccf5b87cad6402f568e2acef261391cdc999b0e18db2490452fe5c21ab4631ba7ee3513a2dd730fe8dcdcd0da002305c7a86123dc693909c7c689513a37e735d46615fa6b13d75e797899f017b1897b589ddff39411d386fa1e2a225a851ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023014e3c84733de5ffd6caecfcac8c83dd96fa4ecf0519eac93d27c7c98a6a52e744e6fdc6d3fd74461f3deba78da49540502306c99cb61a2a721e4fe6ffd6e08a0552792a792424fc087d6993a2d27580222e64fc42599dbaaa0d050fd546ea4ec64c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fe626026c9e6b2f710abe876fca6eafc1c1915e7126458bcec2a30d3596506a706e4258bb4082d212d64e4181b394fd2023100c0d2b36bc05174d895fd20bb6e3795e92d8a2c1e67a85905faea29e8df181f920b05b97a3a88d13a37d1c36df1a6b81f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100defd12aac789662e191cdd3f0ff4aecaf2afdecca35ddbae7d2f0e99201a136e479c6df6e60cb325ccf86ad34b60c190023007e8fb2c88625d5920e764b8cc78cf24b98ca16c044dbcf90db6adefbfd05c86a8f6292a2c42f2b18ff4bb7b8bd4f29c0302047c435bb500663064023038181c3aea7e522a5e05a806a30595e9336711beed13878e49b8730348c62711dde16cf3d9d4be42fbdac20d91af5186023024f3837263cb085c09b390304f5f3c007aa1ef758a6bdc6a8646644adb144fde154aeb8a0f226517b6c064a321b990000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e4aa82d6418f7e70f03a174823e207c145c06e6bedb66ce1cd5e7d90451ddec72a57fbdb13f2fa8c3b4b09316c7ce80023100cdbd60be44300ca95869e7efd7ea47c192b1543939c72104f0379a273d4a68ef89c37bf4e33f9c6ede93a98ff6589c3f0302047c435bb5006630640230060ddd56cb02869697ad7623c4baed9492ec0b3cf0bdc8579eba4192a7b80374593c0654a3bff1eaabc192dae36f57060230419026d427395f3c0f33f866c0a724d953a9561746cf9156df69d6e9224df5e4e3e4e0d2330cbb7dcf6eca71263e06170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ff37dcae440c2203679c3e9c136c0a01f69cd8fd24def5b3729642e4d809771dec49dd75515e4a7bc98dfadb9ea0352023100b87257721647149a43ba4ea99881592969248c8f90503823748e766f3552a2465f53d6ac97a9059c62a45004c5a9acf80302047c435bb500683066023100aacf259b8c34973769c96aa2915702f2855fdb44984feda78fb3e5174eb657bc909c1b4da831bdcffeb372f2f83cf8c1023100d5d331f6f52052becd6842de43eaf42fa515288e1077cc12d1dd184747ccb1c8f2775c91c94aa52e99d50d5b1f9367650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230019f5027eb4dabe8529706cfc043416b231a271a0b0881e85e3c1172cfa7e3efabb8488a254927a5d5248d3b5110e6a40231009144553871c0bb821240298a85327a7e346a78b2860d98c6743f08944d0a698783708fcd576b53281d23d3d2d00aca490302047c435bb5006730650231008a50478c2f4a6dbe435d3eaa031ea32abe309e5a90a1ba6d4ae8d39bf1b6f988686b0e68ef4784187096ad6c60eb54be02307f1ce84f31d0b547cde9829e446b8a4037c7090114c849af29180789b8894ada5e682370572fa6afb588fcbbc576e49b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059d63b7738b71b9b6ec0ee71734123ce198373df39e329c1399a40d401b1dec962a8f894dae2747102ea8584f8b0a329023100902477e9d757531b9544d46f1a63ddf8dcaa7429909d00b130062d6f2a8264475472a85a7660053ef62b4e039e8cf5e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d851eea6f5b8690846420dc77d69656262ac80f2ed161903a73134b586d01851ed99b99dbf912d49bdc9e8fe763e753c023035c4f1357ba8241c2e0ba54cba251a5a887e4f3b6f87518952a1ce3627566e09a1a74ee5c888c17b5e7bd34a34812a750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300204e9d752f585810c6ff1c7cb1aa4bb07ae1d776d75f53d565031a6d69b885bb83bba8b3e6d2e5f5708cf2d57bf7668023100b2599ef89bea6410d20d3b4ae15f9e8482de3c407e35bfdcb1569ae5436e5cc772207cb1ad32204939f3f50bbdc80f670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230778f56611821a13af04344e88ebdbc2c6484d9a2cfa1ed318e3fdf7f994ce81de8be770591dc38ee00a7dd9f43ea4557023100f0a57d0dd3c7df69d0b56271dec01501bf039a3c1d159f583318771e370131ee43f759ee4b54a636ba9917c339c948260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a16a47480bf773651b86b462f6d3ef440c726cf2d2f85c51e23a41c4b7081d71381ef7a478b16a063f35576985392894023100c29a52e1963faccca292273d1145ff61fff614acf2f8e13cdc9ad6199f2ebfa015c985aa4dc666316fd894029d4be1740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d3c56a220cbae8f9397c2ad3dd8158bd4c7d08b8966005ac743c3c34ae62d2e60001164e65d5f600ff4c3167430d120f0230639f1f5119a9e7d3153a6741433c27c23fa3f237e0ae897579f79e585fe92603b69f74b7e95afce1f8884c0f46e4aa330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304bddf3b7279197095e2b1f44f64ed2401fc336c2902dc0dc6850b4071091d05674388d39dabb3189353b0c9eed3e0ddd023004bcc597486f6f6ac546b52f59be21104bf1c86313079ba9536bfe0b1cc03b156e688a77e1c05ffdb99cb8acd9acd0b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f86acef7f83a310b6d827d7551b3d872220e45486ca0a2b0571c8b3801fd9358c5be24159fe63e9aabbbcadb286d1e5e023064ad7f6dfd8d547dcaea31af746c6f5ed018fcb3194edc0165a9525c0e3d6bed33018a2ef28484c1dd39d044bffacd340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1ebb5020aefc11d21810e8aaa39b7d8835d9201d5d550302314541dd8c4e2bdafd443a2fe60881ee8838205cbe4d0ed02302fafdca78ba72d78a5940fa999e3ddb992d4989f2fe3c3a04e6fd6ec1171dce9911e971cd2151193c71d18231efda7400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230581f94c64c5d5019c464636149612dfcd76694cf575eacc62575a4045f424ef623fbe9f883023548a3e9ccf3205c6ad40231009f7a8a05598b19b6d0dddf677213d67d9521710ee8d7f271a6e05c6cb1af8967811b1070a98c224a2fccc88153bd54240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d325525bb04c5e3a7ab994799b4e652e275f3dd6f8d8ea54e019ea82b9e84c0f9f79b1ea3c7099738339e1a4502f4ff02301d9adf54f57acab491d87706a34cc02300a3b2203c733816f7604999ea397e9ca5c1eb6a272c6766bb0b04016b12e2340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054fde37d288fecafc03be1bbf91fad7d64d8365359083aa8f9733c569ddea3aabf2bc290d5674658ed6c81551117b2140231009a371a33b2497a2e33a08fba823b31e920630fc359584ab26230255ef16d918f8fa0449f9b69b427ec28964b20abbae80302047c435bb50068306602310082811822fd7f60f070ec76cdb0678b78a8027e29397ecdc2dc4e2b9a9dde61cf4ba161eaacef165c8b906c3e525350270231009d7322888b9f27fa1c1ef443f981203ba77581cb05f6069dc0960e00762a3ba1b6f6681420c871aa9532deb3625e78830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084df4b57e60a037d8e69d50b45c9c5d24f9d6cb7e4b44b81db21669e8abb7b23f7e180fee7bf6d89ad8f11cc5e6df48a023100a4fb7a8af90013c8226a59ef51d7e7abeb43f0d41a098038b7c07bf0b67fefd73aa30a41fa84242e5c676d17a2e4cbc60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b98c31b1b221d3053ae1610365967dd2ccda115ca81a741ec1e518619890d7f142ebedf26bdfa5f145001660c83d75c1023046f3b1a6835d8f1d58ac14170bbe306c1847024ee1fcd8bb9d21b2c7f9b70a5f2ae131788959642550611c946d38a4b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a0468f2b6e03facc37fcd4870c83666f9416591634816d802424092a9c4ec271540ed35652ad05ccd5d9a954d135919d023100df37d812f305f4d778b5ece42f8ae73fe620a5b31104bf1744350b4c3baa6cbcbd483396393f481a177e126d81e9d8470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044fc388aa3a59a22a6fd0c372a18a4289298f48d1e3f58a78fff7452b05dce003908584fa97053e9f520bb3335f60499023025b5b24ee0c7feaf95c22bbe133410704f553a2b04af577cda0d2484e8ae2c5c39625156513db4d65ef2636fb581f2ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100996ad1bf204549fb63d45118e4af0a36db2845f2408497e6a1efdfc89541e939eedc82547a657a88d2f2e024f39ce3bd023100c19031aad1f70798a45dd94d066075cfc68bd056cb01690b60bca8192d8064f1716d1aa826210b1fa3fba2b06e15d07d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fff8145effbd811d755e8e00dfeb167a69a37a9e96a9198671773e935ae3b3ec83b94bcd49b6208799c5637e01f1ed3e02301fa0aba4e9d9fac9c28af21bd60e664460e1406992ab55d6076a50484b2a5c0cc8aa9f2adad3103f69cc80ead7b4ef3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1926a0524c173988aa1f9e34a8bc2e11f3112ba48a5224187377cc04d66379fc65cbec8eb6f08fdd6b36038ba05792d023100983880921cf16a1c112fd7047fdddf89b665ddb8d38711b4ccbc10982ccbaaae9f1ee9c14210dc04cd1c59ad3dcfa52e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310083dc48d6b5c34a7a38f3d223f0934bf34e89d8744efaf76c10a9d9e58f02f3fab088dbe2b8883b1d52e4d53c54fd43ff023060c610d0bc587ccfe058b0fc821830514f94d8dcb91be9bdf0151ffcb53727498f3f87089f093d5468820c7e7a80e8560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307d689cc89f10eb033eddba3f368344e3fb9f605764405b88796ee6f266be38db6700187cc8ff7f91ad3eb82a9b8ed330023100a2ff2d78327fd0e6a16bcda45cc9d52f0cae3edfd71c44953b96fadb1e5414072ab4b624f14050ce180ca77b7ffa1dc10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303051a212a5b5d3f5d9712a67e21103d6fc3f577dfce82cd9691be2b9b198374eaf4c4cfd5fe24c8539a61653ab9ba7e2023038b9c9d78df7cb252697199c78455a84164d7ab4fa909bf6761eb4aa43e3088b59fcce3babf0aa29d67a56af996c3af50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230724f5b5b0b7ebc6dfec3a8b7f17c096601dd91b8d8582abb86d1ba1dbf995b0609e6e8e6e50e62813180f7faef47001f023029f8393e9d656189547731bb3d7add70f392b563b2d24dee69727b42544b75fa369243269c6b7280cd2d600d94e83c8c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7429e4f833549b19abd493afd024f18150f6ebf90585361cb0b97404aabb7c7853965fdee7ed6c282f2fc25da3c23a602310097c72b56734037f33c5b76d7a270c22dfa11fe8f735524ebb2a935d80f3b42e6a875fe673d68258574e008b201d3a0020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ad294de5daa2f2504070e258b1dcfe4fe268fb1198985bf715ac5a64201c7daa8a080fbf420cde491d97af0757f73e70230041692e9187f41b0f9c14622e73c39f03d58ab7db6160cf3942059cb97c9120458f7063a4c23f56be8f552892d5c99d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091b71a4fd46387936a0255f2cf8a145958a74a587a57914965f952868fa9b35c38d4c21f0eb6c39485f218c305f9f303023064513ecd34e5041f804466944c3fd2676b38522f498e7348c159bb60f25a907a93f335ceb96e1c8b287d89676ae85fc70302047c435bb50067306502303c4fec252cf318db241c7f202171b77170aa9b92359a9af44feff536b5e2dad515ef4285f78c34d8b30a96d0871302480231009c2100c990ed2b84065d22ce93c1e33191766343e467ffe5fcc9fcbe614d793e676efc35c280ee47b6fdf320e74bde100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026d39872e1e1718ab8857d6d33661623c45cc4ad13973612b02f266407f90b8ad717e3f9c7d75819351090b020ea059f023100a7807bb0c731c2164486b3815e2e97664b606fd91e3037aaf4bcd8201a0dcfa2654df4b3af12caef2e015176ae4510850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b98beef8f3903a1497b194399a6e3af1efe1514d962fe4cc0164c05baebeffb5b382b1a89f8860a013e861f8356171a402305f1030843ee5694bab55db4f841aaa21767970a891a41cdf81d0277291dc164c22bd620ad23f0176a6c96ee1cee376770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230588da356f15a6935147c6ba42cbc120c1030fe49725353822961cb18452627b0bf5b11613be7ab39b9e073098c556028023100879f00cfe8687c01691aaa7d35cb781d32620ab44e8a68d379c4a2e68452c57fd6c1e8ac31aec826a5c6adf0ff0e93330302047c435bb500683066023100ce64db67f7593650a9e99521cd022d6a4ea81e4af9f3e6e5851ce19b712d4d8c5b55090856b280e289534ea46c95e7c2023100c95b60db5a2643f74b47c48db3285e4d1b6c0901ad9ae07ff377e4a2e29fbe543eb7f7e3a0534621ba01e5d278aef1340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dc7c01df10c1c528e258d4515669269cda5ec4b2e71bf6fef71f15072ad3caff0c45127afb260429c7b55eaf1e8eab0f023100fae3206ac057b7acba963fa0ac69e40204ec8f1fca455b2da601b8c5cf2d9f9e318efce0c193d0744762588325a2815e0302047c435bb50066306402302628aadde3e742049c53d9286a13fd31e71f8d80c8bd0857ed7cb739badcad9c62bd701adaf3be411cf9c0e5aaa119fd02307beacabafa070fb705ad1f0206640be3b486a03fbd8ebcf133701f1e005d0d85f860e46991767352c0bd3d41c72b1ccf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c6926398a6a9ba14b172762f78d41dfaf15e373b77cccad9fb377ddffe1e65c325a626b48fe1f60661251c40df213b8f02307ca2918635d193bc30fdb6f00ebbfef2be8818d741f9f74bc78d45544a42576c3189a7121b8216763d06ea51052fc14b0302047c435bb50068306602310088b6595eaca5263cec30f6992bb6200df63bbb2127800c209d5d502ca072e1a7f9d4e32cb3c7c62dcb4408fe8ff50e50023100afa2d78549526b23d67135094bd3dabf133aa17be6153c50ee6d3c2e36f9cc49cc64b7279e677e2599ef1410537542f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b8865d715f17e5e56d435c6d68c7b608156bab8cdd7a58bea1435ec523683b8c2430c3348e4d9e71253078b8bb583bc023100c13c77284c03d1ff5610137b33bb52b9e5caab2caf9c54c325be173d07d2260890abd3118eef65b678c4a98b91b85ba90302047c435bb500673065023018001b10c99fcab6c6642de2a730534388a40ac866f0219ebe88c9bb41d4267f28cdc74746528851f4f979d015f55e99023100fc68773a766e85d1a9417eafc3798daf27c51f2506b5c8edfcd1a22926934864b4e70a5478afd8e99bda83f43bd2001f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085ad85ba65937cab3c0c97661e7621fddfc4a2d6e5e7afce266d049c8ab12b35bc7985ade098de7b439b0ad820e004b4023066f618eb329593cd50733a84017b1164f978e4b2dc20381843c3195808158ecd4b391e753b2c4ebed6e13b007205446b0302047c435bb50066306402304a4543cec86ab32ef452dd4a8e539318519e459490acde206dd36e99d5544a79cbc6720c31511e636dc763d5a3c1fde10230180265f7708ffbb000ccab0cefa953513520b7ab5c0c4bd5b070dfc48da210a26eb5d95d9fccfb4df14dc2e29d06a67a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ae0c6a115ef13bb07ecb83a0699c60174c1fabd907be37e00ab9f7d5519321c0922c138c455fe0d0a4b4ba9de9ea114802300261694ea6fc61cd1c761e23e88b988ee0b5875a339cd2dc1255671e54ce1f028c489249883c62c4e8740cf4186ecda20302047c435bb5006630640230431e03f0d99e03ce57481f1075ee3bc7acdd6d94d277993e05cac3d3114ed1591c258946c4f17bd1062e1ba4aaec69f1023036c893b8b8e7e64dd90a50bb0ca6689d49c0d10cedaf8ca79c1c31bc853773319ebe0525dcca5af77d657f2584eebfb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230755bd317d94520616dd793938cb64c138f225c1e8cf816ba6101b4ba4e852b699adef05c9e4217529ba1827d0b47fa8f02303a0dfffa2ba37a866eb472d013c60ffe6bf5228381c975911720e353b09579a3c2556f4451b2e161a1f8cb23e234063a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e5d5c9a2c5162eea25fdce1d0b3a655ece68c4ba9d54a489eaa4c37089b9ffc1f48ffc1c3de73b853395169d0b8b15090230326e67038bc803531fbdbbd4d74f42d96bc980d2c23c2eb075a915d94d1c7b3c6e176d3085abb73fca04d8263b0bb3ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fddde514f0cc3e45003923144847f72c98334eb56077638ca9543926c0b25cbed004688d7edf41218dca6f38fd1c835023100c5ddf68287dbca8b8027e32dc9796e2bdf4d32ac3246ec09669ac0ca1dbc59ce3f262a6e470dbb21da977dfef0894af60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023078da22f221eb629b7b678d56ad22931f09183912b4f544c17a1de3a0c1b104b1f4a3bc5b98d868c866669391bdfd1f3b023100eb8db3a8f54385fff5609a9ad1256b70a9e67321476e69eb63454ad44a6e887e35988a89e863883fc115016dd5d30d1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023063254ca1d6a9851be59fa2e1a9fdcf90f9d8e7a06fa037bc6c1d301204e54e06c8def81b3e5bc73a58a54e64e191f5e7023100e0e7f76f0db11dc98d133c59614395c57a1f67c1e1c30a9c77c60a67c7a1498640415ed160807f5fa3e8a8802ffbc49e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072f731dd2b95155a6616faa2244d4cf3eec7754d11a4d2bf7f3754724c0c9bcacc9ed2ead7c7453cf869b9a7de0747710231008515fcce06146108e647391d82154a2cfa38466d5474ea68d4588a6b9fd01988f7ffb5f8b24ef3e90ce2dacffe1ed5760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f027212b13a3d8333c6765cab67b2a1482991727c5f7aaf7a4ffa2e51a849c3d52c702efa0048febc7cd33d936970ca3023100a546a5dd6fa431272931ce4846dae2da540ec4426d08733454a5cc26f86a9b8a758028b640f83bea679dead0a1655e170302047c435bb500673065023100cec3d83720254d6d78a561396da43616e983a525e255bf1845e7686cbd75773efad4b7c24a2ed441833ce2280de9a283023078e5c2450d4f1c0e804f8c50dec697e3b986389602c2a6ca364ce3797f567939fa32eb125afd507afdef104f5d1f44010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302b4bc316502c143f81de6bc4e722af871db7a3a4aaa4f0b5c9a140379c8dd26168aeac0b8110e0b194947dc75cf68c03023100a282a16bf0f9874006706fc8f616a8254cf4d41cbc9ee5ef554b804d3750ff52b3e78748d41f220323a3dcb120c2bae40302047c435bb500673065023045250b4e61ddee427019a5717b303667b6e9ab2ec67062901fed958d5977469eef7fb6f8078f9d9b424d78dfb7d0cc95023100d1354323252c3c10f547d3e0c0d97e2a857d7bb2a4dd2826ae2f23c835f6ca58fb7886c6087ef2d6ceb7163fba6c7a870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023050b95d3a04720ba17462d2251f180cbbbe13d40072e48b48872dbc16f25e12ab32082d07e618c24aef23646d64efa2200231008b19b88e3446f194757606ccc13e0f2be47f31a2937f508f8834668b115fa355eae777c668cfe77dcf8f7aa254309a5a0302047c435bb500673065023100ef5bc61f4952de67159e5094b706ccdd774594f73443ade173e8d92a7c86bfdcdfb2cacda4c8ee26909d630f0c19299d023017a00cb0241f12a309c39c1f9bdaadd5e3ef86a3c63fcb1542da3e273a4d0a9b4979e99e73b718e625f0df9f9bde8dea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009becbc5d2dfdce6f94ed33b75beed79833b68884bc83d67dc92c926c9f9d25b1bda8a9ce000e5c0286731e9d892d178c023004213e488631a993897580db6bba567c73d7c1be974d004a85daf969e51017e94993f91ddfd8e0d9de7d1c084efeae600302047c435bb500673065023073da31589f837b9a62dd31b965f0f61d375d92ca583b63e727d9f0aafb70988d01c223b96d942beedb41b4a958727c5f023100ee372a7112982350dd91a833a143540d3e46e4fe730dacfd36a5709ad7de13be437d230f37a5448913bc372fb03ca95a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f9b7079dc12a76f0f4300e31b756884011e4338d42003eb7cd47f8a73773503f51d2aa419157e229086ae8ff8521210802305557ae2c6aefea11545cfcb85e09d6209a6a1883a9d95141d11ea758091a8abd4eb162781b8e6181fbeb19deffb4efdb0302047c435bb500663064023031bcff6a8cf2be945459a8e192b8ce6ce79983233647ba0dba9ab0037c3a9159ffef3896fec913f578e743f91e986d150230174d5ca07c2d30545d7f6c9d228a22fadd055347f2bb281debf3d22f11c00987648d5f24960c0605803470b234e0c0390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c53ad28642b3854e3ac1d2d8f1b94434f009c784a4658c3d9dc1d802d8d2acb9ea369ebd0a5d8ffcef9bd2579f5e8150230022ec73e626c94c410f60e762f8c93e12c18a82e93b88ee03be974ea917c09a522373aad86d379765001693e6fb1eb640302047c435bb50067306502310080a16f0cfa640657409a6e8c257aff550ebe06ba5d3ef334a649cf718fd597c08c714b87a7c68f51e4c92d462ad9c08502302904af7208ff74392f22b484603aa9a409e57b28178b58182805c1d5416c3195e364a859d307b8e45cef6c1dbf3abccf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304446a0352c546e3864924c539f5befbe1991186e112a273a548294bf81e4c56f587e40db476890dcd0c40674d677491f02301b34e9a1d0447361e96fba4c1cdcf6e889ed2f928aba8ba1ec915de42268e058d54afe94acca554b35b4eff754b61ba30302047c435bb500673065023068e32ce5532d45d1751f09c883f9b8d3ca49c166f3158db2308ef9ea1aef6967bffaeda04ae3d002a752958c464940c7023100b4eb7994963f1a9f97539559ed63ed9e67172507b21b697f877bbae0e357f1372eec6afbcbbfdff597378c0dfb7777cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b88476725dcfaf2eb738fef30b522f0046c4cf1638d6abdf51348a7c29c08bb77d328eadfb7693f5093b6b5f215779e023100d9119a1d33129b28695dc7c8048420a9234dc072195762f610881048843c4707d77956ac06c356ac37a0acd94ad6b6370302047c435bb50066306402307fb65b62211a857e6deb9ccc40f3140c1db3d99a4427238dd248c7095501dee70fdf63003094db656554230a18be519702305ef53b4af923bb7362028eb4ec4409c564ebab57a0597eb84b0edb8a29cf984721799b0565c9e778e82be39cdbae0c4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004d15ea65a7966eb353081bf916e07bb9b490fa9a9686d7ecf1e18e06fc2255c67e812492eebd2eb437fa05efcf1ddd902300cb8e5537fb6f1e5bcea0e8150a525934231517573fe89ebe80d84c7a04db3d31e4b3de5a5fc726cf7cdce292284c2b70302047c435bb500673065023071d4a36880744e71042327449ac441e60c7289d7c997fcd0ea5d913b697a87aa17f1af065e89864732361d313a5781a50231008c774049349d2e0c7a9510eacda989fb1393586524d441f7909a0ac6d926096273a0080a71f487bc62c94dae8d2f5d680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008b42f09e8543c1bb6654c7e923711c677168c23ea9f4e2113c1cad9b15fa42f0732927b922ecb16c8c987f8f4d0e274f023100aed18d072e95901bd9f86eb9080a1b6a5ffd5b1a6572bcbe7ae0315115f3c33036f13dde5ba81b738b59d21bed410a350302047c435bb500683066023100eceece32e30123ea9758046b2f35e5e51dcc1ea8f8e57623b74a22395daa30f2e57590b1bc02557cd8c9412efe62dca2023100839cbee93b49c380d61bfedf749ad8b345edcf51b390ff4f86288bc257fc9a0608fc9dca783752710c67cb205d2515d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230410fa5d4630ed351f4b25cbfaa6b917696141d0f44d4f4bba8ac0a56d7826f53b09dc7c970004653cf7ce3e2b1e057ed023100c9bbdb53946fb6db52e9eb0abd2602a10ff80b6f00bd072a9d1d5e26d8b37b6e6264f9587fc2ac8d8087fa3c51ea944f0302047c435bb500673065023100b5601d53f3bb71b11f12957e626d049068779f5c13a97e4466a9a5115ca65a991107ba3a182b199cb109a2f80044d91102301e2f57dbe84c5a333905ad40b8ab0f0ed42ac509c60d888b771ae9fdf4e1ab28245d8c3a5729811dc2d2ccd6ebdcbc510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307b9233632e0592f20aecd8d1a9c63e434bbe97211dce049eee0056baa63e71bca07ea78ff633c5a4cc6bedda54f3de9d023032507b578aea7339a33829df38e017c94c63c7325ee072bf7cf04c16cb76ac03fbe0f8317a26ef2a183ca2fef732eebb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023007db36091bf9a96612f4b195b5bccee01e16f1d2b1f086c49277bcdd08fe71016a71edc37a8cc0876fe25d5496dcd07602306707888f51381a57c7a1398aa2e7b25527f5b8c4f9af284efdbfb5121136d056e8c630818c5ea6fdebbae70caaf948ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b1f951a72a5f8e47a1872296f47ab7c712e1a9dd5c6b2513c69e7e340e14fc80570fe2a414ec07d0b3c8d124fcad85b023100b8b0b3ff0fc5886410509ced17eb6976a6fba7f2e38dd16de2481a0eeb23a89d02f4a2a8ab8e2dfc6b58d10a6745368b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306ed8ebeb3cff2c7aef4409042e4355c0af75e7b364d9c2f67c188d2fc58c3fa49fcb5b444dc9922cdcddaa9058e4f5bb023100a08bdfaea563b5b091385b2d4a4a8cf8f5edff72c8c8210cb77330bd94ac6178d6e251b3d230c616a5ea5d7940eaf3990302047c435bb50066306402304622078049a09bb3bcd946e2fa75e09c8cf1a89c7cb158050d914bcab901567f727449fbcf187b1420cf6f0d633fc3b20230338d13c73240b8dcacec8abf0f96479c197e9ceb480241b710ce3bfad4c644daf74a68c8614009677a544f06435474230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028522b3c72a3cac287351e9f9cb33860eb494b0514f581b6c3e04baba94271ad25a6ea291281fcf6ed122ed12209a5b202301de6a6ab82ea63b1abad6f749510034cfd42312d0c6ae18ac04629a5cea975a8b91e359cded40f3f2c8bf483a4ab65a50302047c435bb50066306402306e83ae943e4fa921d1caa87eb58e5ba3cef753928097e49c61c57e7103ec33ed3f8a6d8a83f067ef4f1acbef249cfc4b0230162af66d2ce2abe5640b0c8de5e0800e79726c9dd6463033d2470515ad8ab772c1b2acf2c0d062d8830d96f93ae0d3000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c905b470ad8f2c2ba4c9ade85f4888d2cd1f44d67eca76ac627e52f91aac91ad7c3af82f93d82cb256233cdf6d93261023100c1356fdaa5d3f39d2e43fd8659833ba354a4bbda99598936d0232aeb52e1a060a945e41cb93854a7cdf4518b06e1d0ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307307280e6b5ddde4d635567f90829bb488ec2632f42626c5a0b4e206ecaa8dd6a9f886065afed031bcba490ce7b9cc6d02310083ab75d1977d90db11b4be93977b2777101b708ccf67dcfe1ee3267d3dc9052a268f840599537f715cd14fc8385ba2e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306617b7df93fb82a8570f56683231b1f3afad236c76ce00c45e6448bd9bfc45512b05f474750ccc54f51db0ef42acba20023100d4e377410b0a96a5e77b5f8f8fe19801ba708f0d715c77b15d5ce93e486b9d4ed689baccf71a0b40153f9db376cee15f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ed7a32cfb2a0b98039cab50575e2359ad3ab915e3779e79ba3bf1dbccc6b5dc42bc32caa0363ef76d5732e870d4b9e4e02307967f2cc5aecfff6e3b3fea71c6f32fb2ec65f677be0efe601b6f0f2df8cbdda64a3c6a22c9fa889d07fe617c1f92c9f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc27cbccba81d43673d21af3633ec216767979c7da510c87fe56d509c9f0a855e039ea273e0d0b3f35901d31dbbbfa4c023100fa5a614f7792802d9637ca3781b9ce6df59b445489ac600c29a046b46b1d05caf8cb0bb23c70124f2fb45a1e0a75cf2c0302047c435bb500673065023100b9e4264500a3defd30c4594a8b4c04ece347bce9bdae5d32f871b366c8e65d8b520ef191ccf1d1248b6baaa4f9e4def10230081b27c2c25089d9b03ca2bb18d9e2c60c86dff13d5be14d52a0313994eb4dd4fa21fb5ec6f207b487a9bb708e0f72bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026f8234a9bd149f4931a8f225d08072e9b121e55add9f2ef43af65267a979f3fce59508967f2918d5e62d049df1d8f47023100b1d3a9e1d7aab5a28a0b0f33bb3c6097ddf3c7f9045a1e629f7f203c2a0edf2be2f49c8cadca0c1e6035dbc774d1d9d50302047c435bb50067306502301729d615e09b01fba4b656cf59733e174e2428dcca6fc7ec187d58d013aa69eecb4a0d5a5ff43aaa7e91e6665df8e95d023100e2ab7d314a63ff536e60ec7f05491db3e02ff4d842d16e8ee5b03870be8a48297eaf292cacfa74ac8c52417e3978f7cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fcc5e307256a2f315eef03bb9b1e2fb1bd87a604d76c6fb0c49cc86677f988fbee4a5d6bcdd404c876f3157b9258728f023100e720a29ff8067c6009dbd6fca2b1bc500ec1f02789496fe14a3a78d14963c6281eb7d7d32f30031a01c4e306ca0d8e550302047c435bb50067306502306af7369cbf000d36c370e278940630ed755473c28a65ddb8bbe221541e5cb8c67c0da559fe6a427fe3f507cc5e31ea20023100ac0d1e5da0d0269153ad150df44f92d58f809b6000dbfc14cf800f3557326d20c16d147b132c409ef0801f5b254cd3570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100995f5f9e8fcbd240680e2a818d84cd805d77e95866f02e28af67d639de476c95da1a9f9c68eb8aff02c50a9c4c608a6b02301115e437fbc95b28661884588b58107b90f4c243a1ba1ddf8774f608bf1be6d3919cbd18b869c1c33e9e8b2ed55ee8ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ee59e52a7d08dc21fca4b5062c2a338498f07699eb51812ccb7ee6ea8d9128d679af5d6799f636b34e8542349c79fb67023100cf1b5723986923cbb08b71dffaa678887a841a226b04f3aa6ed8a70479b6b140593b39b76d48fccd91435e3ee78464d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300d655dff93c50bebb78bc0ed57330a2fba8b02e6fd5dd7ed9f82a059b023ed664976274065668e68f0e00d10853ac4e10231008fc57d4244672315540945aede255f3bba9d59084f352f5f1431722599b8c1cc4bcc8ac1b0cc6c65deff3777110ac0c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303fe2852336c2f498fa79f2549dd200dd73745cd262f7d6f4f2fb4ee6104e9efecdc213b96f1c0e53175b8b4362d69ba0023100b87a68c78e56335237f94bb32cd6b03ea54af0c7c4b7a389a1517900ca559b9c6252942c19f2e9f88ef9d6947cb7a5a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023000e2024adb2183f10ff9850092be0234954731c471d5be16c4930745715e177a657c8095f0a02de476b851a804477994023100d84bd9586d8d2988e350915d746ecea52fbb546db2fae75fe168cd878c60ceb938fbfcee5035154a35636e32456fb6cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c21ba572de2b9cdf3972fca5d529285aa9367982ca5f34357c20a708e1e7c6d41406f946e58f34652b2aa1dc2001844b02310088d86b73b33dfb0b82902ec8ccc419748a9119a18ba4760fe09263759b5ded124db7b02c42689b9eae1695e48cfdbdeb0302047c435bb500673065023047d89068749c5d843848c44696fc521e8fd99405566e0cae0a873f62d1648bd94b98a87ca73dd4fd584412843635687b023100f5ee59d4f1d24463a3a2d66cfe2ed39605b40e7b0fda4c14291eeae44bd45523872715dc8ea1f5ddcfb63bb12e98ab920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ac9d9bcdebb01314fb220bb8b9d33493af55ed7a14bad68be07f3d1dffc2e038bb6e3cfd57ad358ff57b4118570c5e50231009e3559da5061f5a201253c7d08ad03b0bfe0f4f5de8011bbafadd3d155dbb77ac8015b49b25aca79032e893ec8ee32d30302047c435bb500683066023100e3716a5468c8deaba803a1d45571b3e9510b0cdc86e454a7489f3aaa65c99195b3aebb68c52efcf12d7b1d07bbc53f0b0231009f38794a85102fbd8a5985569e43c7796970a0eb98b742e26f6923ae3a38aacee3cefef2be32be830a6bb101da48decc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306d9f237c90727c4bf4270b53402b7ab89af293c7bfec8ef18f27a6fe01d832fc40c1cbd454ad372967bc15e35ff804ce023100bb0c9a94a11d08973ee01ac2c091f04b79578fd05716978fcec7d2544fec00def455fdf8e9553977ef31179dafd2a6e20302047c435bb500673065023100f0a7c193ad7854bdea088436880f9a81ab0710985c1f0afa65240818aa94baf6fd213a862435a12ca9d3d34c1694cb8c02303c449ca7e66dce11630398fb7a9469e26288dbb428e888dcfbc0e944d90f78e9f1f2b166ab863b0b22ab42b3318b9b3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a528bf0b81433044181d658f506e3cae87ed87c78862f0271dad51e56aecc763c205c6e41b68acae8822fa69da3eeb6e02310097590d0509596b157c384551c2f10d27bf93293ebf5efcc723570196addec2d80993aa11d91d875f4489b71e0574c9a50302047c435bb500673065023100b79c092daa68fa4430dec40762ce021782ba7fd71736df100b09d2f15329204bd0c2e03d1caffe456545670817e1ede102301d626b58e7ac0a6752b7e582f45b1690911082655bec39bfac61473584214c6ef9924157126a47499555a86bb136dd140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3c154fca080b9dd571887877c54e76ecb0745993619e8861e5e7d0d444a8f848112aa891e9979cced565180fef7787b023100d0329852654c297a5fc305cda7aa57141a8cf3ba9e8e904eaef13d24c20e4d6899358a796f247eb8a61a38aed6c80a5c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310099ad3ce29554636c34fe0cff92cbd613f5adc435c4e4492cdb5eca51ad77ff6c0e6fd2607461daab9229459fd350287202306fef48f2cece81297e79f20657c5380bf3863cfee9d1a85ae156114550c0845e7db75ef4837a0b262c081fce26f67f010302047c435bb5006630640230133e05bcdd01cd3d41dee85ecad019b21feafd960695d266fad18b01c0abecae977c7fc480b5363969fda92c290a97bf02301bf24d3a4d44cec46be15d47e57a5877b3ac8d7004cd4678f958898ac0169f1b8b2d54714a6eb811ec09ceb43262e1c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303ed86ba88bbe430d122799ab43eea11a3ae4cd256bbe053f740268a89aa508f16cbe547031c518b821e03758f5204236023026f2d090db8930101d281bcc20da23fdcc3dd9fc4c5fcb8804a0ec08789e3bedd531cc8f17d81f4a5358962b03dfd4250302047c435bb50067306502302cd478113fa425e1671271c3487b3b3a8f3bd35ea96a8d84da06a6483948be5f21c58e6555296acceaf2249a84fe3eb4023100d1e3dfe4deb5d28a04e9e1dc2ce6a3d3ac58ab5dbae5cebaed4fe28bab485b642d561920dad3b23fb57e39e7920bbe940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b22a6322808d318aaedc826d3cbd01f748e783155db0bb6a0cdfc8ba249ca2b41ab4e81a03cc7e7ef782ab671c7a581023100d97c8b6d6e72bbdde0d8e53cae34c40f4b62de0f6e49573052b1d9958b3206790ce6eac5293ce8b666ba3743474828010302047c435bb50066306402307c2c1c7fe066473139fed5d9fc31649f10187ce432d2cd77c342119fdee42ceaefcf2ae1a0a15af83e741211b2dc800202302fb8ea7d3f59f3dbba962a63e164a2826b4f9bab4fe1c7aa8fe26650e0ac9b6cca4b0aba980a4dccfdd2f36fb02910700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d357adc4c95b553b0acfa0ec913de1df02995c756e47bfbb3b8963068cc7eef4283611986bce1f75e1cf41e60151b86a023079cbcc735b18a32935b3dbc077b3cacec6e649c4a2460428198aa980ddce6179d1cef8f0b2b2a1ed1982d26786ceb67b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1263bc94df98a0fc54981aff03d5e0f825ead80c3134fc3df0e180fea65ce455c31da620e657579cb5527fd737d5e3e02310099c44332ba682ffef07bcd7ae4b53b12114c88295025ef324452e79975e160edd1cfdfb01e17c0398ce7a27d16261d730302047c435bb50068306602310091ab2202c7f437f5c94a1f6f029c4073775b6ae7c266d2036906e65fb531194c6903b172cbf823d6df69ffefeb91864a023100ff5b7c7ef86ec5787daeaa7c904d934dd7c4da71c1fc8388dcc8408826ec98afd3ac7df9be63c31265080cfd3b68eb5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023044efbd983ec8e42b704043689e6c6141ad8532e2a79dc743f6c758afd91e730be8e3690efbc9760821f1f173e28f1e5a0231008e4c83c787444342c8098ccc40b45b6a8baa653f97f359aba1ada26ac056f903cf7a9a1b044efad17efe3f28902051fc0302047c435bb500663064023000f6d62d2146a8d2efe0fa9141243c4739d2facb026ea9e8c02d1c347e125d3d83aac0a42f0b584f33a820da92d433d502307ee955259035cfd5aac1a04b87d48040c7c51a0c7ec098283a63e3150c45ce9faabb0aa8a72882e9c55568e1232dac140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba5d71538f0cedf1a91ea20328372d2638c44d146b0f3e014b7550fff9ed7feaab4ea1e459876204923fe24cef9022ad023100910c518a3cb83f4a35eac3fc6bce802b4a0e58856ca84642ea217288269a09d91a560ab84250461c09f00046a60a62770302047c435bb50066306402300e973c6f3c9a30d8171c8d1a8a193b035e1d952ba19ae2cc600dd3e879a2621b0be51f696dd4489f45c05a425f487e5002301fbc6c3bc7c806998245f29f1810f8cd9209e0841495fe31d0863fcdb5dc48b7030d465cdec456d643a9973abdcd4e840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301aea59049de1d3b4c6d2bab1af7a363fa67c87fc3ab1c09f17f05231fe204e778e6144e9f8139af2251d11a377f6b39f023100933d9e86b2f299831cf9296c024e1fa5e24996a127d7cc382e3368ed249ce2dc54ac7afe611a11ba4f62765346febd5f0302047c435bb5006630640230089379e02db13c741b63c1d7f2826c61606dfef044394170e87298240d4600ff4f155fadcb0d000ec382101bd6a049de023067693d74f584891e440fb075578aa8e56c7c1b09cf0f9709138f4df27ae1d4860f6911eac68c4ec7131212bbba1b274f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230789b653817dbf2aa7a9019d99c99c25089bb4c1fe83ef2a1e404850a3f93599d8658ec94a1308581fc7c4f667ef85d0c023016bc403c7f4141ad61dedb0fbeb8c5cacf12aaf1bcfe60e0814da6cdf020c1e6e49555dd6db94b5f2c51848e9242b25d0302047c435bb500683066023100d93006dfdf45470627ac0530a2c3c96be7cd8d8f0627e39d5809bc8037f7612bb306a6aa5d1c6358b7f2dd0479e75ccb023100cf7171010ace3c3835b73f125f7526dff1cdba854f090aa03bc15b146af41a94a6d2d6be2e8793e1184829e49392c2370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d99f795c33e4c97a2d90fcd3d8345ae12e541a98640c2a7e293642119df9c576138b056f99a78846ad3223cf35eea4720231008e9c5e6951ec2527a61fab6ae17dc0b7518435bb992f8a1a6723c134d5237ce9826ecaf864499fe4409fe7ed54f3f9400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082f610f840189a6944258de173ca60561d3340573e01b9c97f60824e50f10d97b5db1e3db915df355c81e1a22bccd04a02300f3517320b02d79aa90011c51bf1a35d4c6410d41a6b5e80763a1237fb0a1206e6f1996ee152a2bd8276bd7f6df6b3c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055ac76ec3e9f3cfd53e1f91be7696414e95fb69210b9f95ed881e54708b28fcc06e4f2c08a92de6c83acd6771a329e91023100ee2f9e19930ec6d8ea2406cec66365f01c446c44adf88fc04b6dd0ef2fa62c0f6b802adc84bf7780b6188b27dde4d3630302047c435bb50066306402307554863cbd3767226cecab5e96d50c15aaea3128417826589c71fcc5565e85c9494605eb6ef7851936234ec613c67b4502300b7464fca035f96f721ca7f710c5b99f52f0fbcc9ff8ff2d033eae9c0f3b6b95a7acc4ff5e4949665c62db3f754e9cb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088ef0ebbe6957760a3123877e693a7d6125a67371e8612976b0d466c967c8eb8d5e6e7aa88e7aaf2a365ee62f5ccff33023055a95e962471ca527ddc0437aa4d8eee3a5d47464a22c80487de398266974bd5c880ee67222b9fd97ffc7b44c9b732ea0302047c435bb5006730650231008d4aeae9829d9e8b5e94eef3e8b0ff860e758baa90341c2383849821aaeca7c593ecdad879ebed693b7b3b8842aac82902306ac9becdfb8282e3bc0395c7dae01a0433e05c22bbd83f26b6ae358d96fbf28471ef022b3964667c699669e7d33a18af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb92575dc04d0ad719d576e41552a96bbf9271b4a4029c1c970c3ff75d525d3e47940f61547aadd978cc9f05dc7f180d02301fd8b90d3a4935a86a15554eb921bc57e17a388d3ee2a8fc93d9f63b9c8d56b78d0e192f4625e57e0440802b87fc68720302047c435bb500673065023100c7a491197e3270028661b71b3acc2b051ce2efcebfa3583df321e6b53955b3195a5bbc39e5016f17564b93209fa2a3ac0230195ad007015e197e99daa265c91069b7d35698b90d19cd6e785e75311f6864c889cb9b840f9850877ffdef4c97af98ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023051e72818fef67bbc55d3e794951a10c99c6ce8982ad186ac9b5250b0a139a9d1258495e49dcf97eb48a8b103587323fb023100fdb85bf5072c136a7dd8ab5004ac6ecddadadc86cca257faa0b53d38835ca0de68f4296293067f6ee94b46801bf6781f0302047c435bb500673065023100d05d3475ed379c4f9f39af57eb64baba1e76771fe07ccb6a2e63f123a7845d4513a9acb28af7674b898984a10d071b1802301f82fde442d3848c36b60beb91b10015f5b89e9a966a9215e04e6c94b59830fd7c431d5bd1fd9dbf29e2b264d569e7a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d00ddc033acc56ddd4ec36a75a5678ee08721fff79deea820b453c1cc065578645bdb0eff8f8922a84b576eafe73968c02303fbc3ea66b93568d81f6883837a3e4617c6cb9c4af75065a65c6759ffc845a77df1c50774dcb6cec7879d8bfc618708c0302047c435bb500683066023100c7cf585a69ba0b4c8801b8eccc39f88452677f1cf63d2b64758d4e622d44b6039d119b4579683e381589f0185e934828023100cc8a41a6a9c7bea7255fbebdf726873cb1661e02309a5e5b9474d6a72eedd15a232c170ee3029c5bd0e14d25414876710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e6704db238890576dec52e7cf5fa4b77cfe7e02d24cff8085b4f67a7563ae9107525852c7d6c49878370fdd3e4c42edd023100a720a86ca0bcaad0b8d3c724c45786a9eacca7c3a509053368ea0db4128fcdb91e90c8fe47c5e1255e0ee86ec08133d60302047c435bb50066306402301f65dfa69c7f6016db33d20df6d286422acb273da1d81d03c0627b05a0802bb676f30935ac5f63129d5063093be3012802300dbb88ce93596c40a16a71d0206b0f2d067d8b2e14a5ad3206b9a383a87ad7b9912b8bc3eccc7b06a05d8d8d6f095e220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010e4dd5bffd20830dcaab956c3ef77cd136e64207d8c0323ffbc13dd5b6eb0e48ddce50a2b1a496a67e9ec99028988240230121d45208512b8b16dba2a859b26c7586ef9e3bbc2efc41ca5c76ff63360efd0eeae5a98bb59088db27d7cda01f0ecce0302047c435bb50067306502301855674b16f5b25c3e2ac55687a9ad2a2f4a21d0e369c7e5021c2fa6ec5298c82c597f98234529398a5e26a1f96fc324023100dfa19acc556ebcb7d4dcb2193a328350052a9d785f43ff7082a43558862f69eb6cb7bdc19349cd5e1bbed10899bf5b460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305fe28f227fd4e28d47009b66d99d87c1f5da00fa1fe535c3e646fdedbe77069f369c363abc39d6c975821fe0aa42d2690230273cb569a31e5eadbdb0be64d857deb679c5b843dbfa071bd4809fa3081ccd162053d09b0136e1e65d3a1b48da86c4d00302047c435bb5006730650230588c7a20d1d11d7f33022e2019750e3a1e259a4eb6215cacf33c3231111070f623b580d2692036e3ae5bdd77ac141677023100be6b385294683dc10b9a23cc0c1366abac7456fc18e615e5f00254c54f035e8b5aa0e6755312397625a5d224db12f1300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c8173833d57b86c38c889e5186de994d36c0210c18404631e49f5383b5f65192423817c4bcf5e3695ffe2f696264c9d6023100e01a541d87042dddfb08ec9096cc8b4509378169373c18bd2cc9e4d8426452d3ce057603f1321e6b172345bf9f7002a10302047c435bb500663064023077c1fcc2024f0460b12247d542c822546499f4868176a0d8b6f87191e04acf48ba983bf5770a4494755c971bcd18a851023006cc7aba58a856bfac89122886de608435d203ff3671b95c0b8e36449b0a2638c7d1e9469c657e93d6a35fda4091fc120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fd18b5d75a10b765f51e1d047be9eae06bd8dd126315ff450256f01c664d464f2b0c166e32af5cb51dfb8341017ce36023100c307899dffc264206761604eec89cd05e6069a4d5439ba8e74608a879475908228eb3c7757f58d1c0aaee9e916131c940302047c435bb5006730650231008da6acbbd1ee8c85c60d1f39112dd67e484684668957e885695a8176ba69696d5ea4b31ee8c5ee94d5bf97a261d64b3c02305e920ab7127ca8e2c2bedf750d0146696abf6ddaca5b86d1cc24ada4b6a2760a73fff2f432fcf21ee1a1f95f6e8802da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a55239be31d187d902b7bd53ba1abe5b626ee152e7af317c5f8d4fb6cd4188d2be5b8263031604c1beb2730c116fbb380231008aa8d0e612835a9115c8407ff65819ccc22c9a8d820dfd0d496260a0c228a3ca30afa83740a7b8c7ce89fa9b33d57dd00302047c435bb50066306402303ce8dded4b7359d8aad1c41243546ac66c98e10f4ebb6e9f25c6accbea98f8aa95c1479fb0f819ff95050b5d6fb2100a023041fa8d7b0a2dff823c860d0810a95df314c56b222fcd0b7af041eeed8f40eb0125327817f4ff2b46593b11069761dd260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa3b91b81e91e0f37cd9438e46fa182aa92b3b4014353a546f64f56564ade6da1a06e11a889c6ceb5483055d10dd5aa7023100b2c75a35a51eee5a0566cab089a7888224c1ff37268bc833fd5907683af088a4c251cf6fc1480c23fdbb9bb0271aa7970302047c435bb5006830660231008c8d3d8044f60489569b7b41b39dea8dfb7a5392d1dbbc28f773e7342df800829f18981c67dd137b29d6f9b3eaf46c58023100e9f4a803ae599bf8aad215d133ec26696f8121c868a8286247b1c6a0df7f6e78c1d5ff982c82302bed9705668eac448b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304568e0f84cdf4bec6cc8178395c6591537f04b1155afc60e64a9fb6717adf05b46adb0445c98d265fcddb1aafd9f547c02306c3c0c8a5d20c78d2e95b3165a7168bc43aef4e3f14c56b401d5f993cc433c5386a5af67d95e204280d37aae351a9cc00302047c435bb5006630640230143b9290f91affba6fe0a583a5a8b5b433c654537b095dc776c297984f8e5411baec417539ac4f8df8c9218218917577023071244d25feb2ea00a8721be2793c61711c866d4f6cab840af02a325f547afe32f48311537160ad886d5ea5ad12eabb5a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300db8dc83f9f24e02e4c2b56706b00bb459dbf4fe3b7a15a0c32c08f1eb413a309e4d2cfa4f609bd047b5695e14addeb9023100d440ac0336a492491292d8f719f54be5bece0abccb8a65d8e423a0ba9735bb468cc5abf686751c730e584153585bc8810302047c435bb50066306402305b8c4e7b0b183f73f4897c29d36c6fb223355085172026f283712a1ae765a4bcc00745da83a58597f2043cff9023bfd70230121ad31d52ec6630cd90e5ca119bf141cd37f1e197938c69f39408da203f006a2b1cd10b334f5d3a8704fc08c96783800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056b6112396a37b7da9a7b63a7fbc91e82129d2159d97b3d60265d47a95a5c1511e57f1f7796e99ab7727e60712c80dec023100c7b3d4d535159e696de1d2c6bf1d93c80bbc3397d8c9424f47706934be9502a03df0b819e0b1a6d486d75109a75c8bfb0302047c435bb500683066023100816533bb4baac753b713f23d187a221f32d7dc5608e0d6ff964ddd9e9d72ba29a2cd56e636dc3ad7ae577e6032f129c4023100d9d3a7e1584ebe679d277752c22ede59e9a28ed8a3d5e0f6386bb710b4aba47cbd0a091d09c4cdb67aa93b81cbfda7cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023038ac334d2c9669c70bc818e125ea398f8f4ca72c2607552fcd179d5504ca149041ef4a1fe6e112c13cf7cafaa52c96ec02310096f46c4ce0ce20d8e67f4c86b8ab8132d6dc0b2491251b6a23524535c9fd136cee549f3de634f49102cb3bcf051ce36c0302047c435bb50067306502310096e97f03e42d2d105fc1e0d62dd67259e9122106c42d1c879d8dc73b325bee083777d8841bb8e455b5f30ff040b0999202304b822e6e398f07ee00a78017538369d021f0c1224e641cd0a3632b40a2c250df40b7c042a9213d106bddb2dd52f0cd590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230053977d476d307586e6ee6edab9ead4c26f623b63fd4ebff1a62300326b8a8e46aab8b4daef2b321d511c532400bb20602305e9a690d58e7c89bc5beb584b602d9d6f103a3d29921805ebe2f39a28f37e71a4d178497157b4ab3eddbdbe10922fd2e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017b794f7bcc63aa169823c84eaae2af4cbb3882746af8c2a9712ecf41a16fef6f767c652cab96caa5a38cc077f550ff7023100e6ee8ade087d027c1609443aa0177ffbc2fe2246aa5a4782c363bce9f7baf4a9443f2aa743ce8546abdc6ab4e1cf78b40302047c435bb500673065023037ca9eed9ad6ce1678994766f3b7d28cd828004b626dbb49be37bf73791bd774b82bcd6a35898cd48fbf03b5b72d1d7802310098eb2d28ed67beb6d21bf2d73d8a9a8b420091b1d62fbd66c31faeb67fb27f9b1c31eab40db44446cf60a451e040345a0302047c435bb5006830660231008a5bbab794cf85363c8437f8be36dc62d877ce74f278c2d028d5edf44d7c3a0688f67031882b34dae5795f032602f124023100ca4ddd2892a6b61fbb96d669fac6628bcaf8fd74f98632d1ea35c58cee0683a587a1788224945f771a1c06c7cb6571720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c44a0a826b51c80e848501ff98bcdb0ba56bed2564bdfdb765815b94227217c1d48cfee0727fd268bef63fdbd03a57830230195407636eddef07fe77aa0696d8642a33dcb4e791a51c0730e22cc658ca0e05bdf96e5621d8c4b68e7fbeb81fbcaebc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ddce058ac9c4ed2fdc02a5ce322b135d4a7a1b219c15f60f82a6ea153c3d949db0eb8c1a057ee0810eb5aa830edc3e37023100b1d97b52c4b924aff280547362ca76263d2956c1c27bb0d18937ab51f1b4715fc62339ad1daa57bacc9e918ed5b985cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043b2bdbbd1034bb045cb0966fe5cf5e2732f97f434e057b614a976d2d7fd34b1a5428ddee08e00e69c0ab8c80dd85622023100aed91a0b189eefe4576b43390055ea357fe186ca9eab21c5eb79cb42d8898c4b7463074502eb722a5cf9ea96c517c1080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305eab25f5f5bb5c63b1700f85bd6d8ed80f8d995b09592fb29b75ba4beb0fc2be748d64be4ce9f8eee93c19f9dabb781a023100df2338fb2e8050149195b4386a5c77b777e18a7aab653e0e32a5c0609fbc0e0fd997296e57bb504dd82b3f1cfc73d8500302047c435bb50067306502304b8c44862f0bc500a99abc76a8f1b63033acff0e2ea663ba032a8ea7de10e397af83c7cd86404dc4bdceeb4f948f4e1d0231008a2ec36ca74bc02e85dce2cdf5ce781f9044468a74621b77118ed02e7185d8b3e5addb3f9a725fc4e7c29efe6f7e397d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054f4da0447a53ab8f8982b602df30f18cd66552d9dd17d00083d07321db97a031ad01939fb0028461e48eba118bb24190231009070061e29b3ba0b69459608350358a6890b89b9fcd1fafe373b900f3f8272fc6290e7fdc6e57e81bbc2f4f2b0aef5f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c952b8dbf9c322c83a3deacdd5f8664d0c812d3f0868dc51d8b1f9d25dd6d3b50510edc52f4bfbf3f0282c5d08a30ffa0230723e2b0e35548ef4e2aa51cc0dd9d6ef97f87876b4435eef87c0b11341aa40a7f9e460d19fc6138c53808c51f61089f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023001014774b7c2334c3c19ec5cc7feabb9b3b6bce4922b5299d19cee1ca3c565f13eb77e7c5327f534e2a72a872d7f8c06023100a15648217392eb613fc2a89e2297db0e3ed04b7238aa63fca2e8c10cf62e3c190243ee88978cfffe9ac86691ad2f4d860302047c435bb50067306502306f78f6a96123120541aeb787664fae25cfbeb8281f30a862ee5a1fa8482e8beffff5d9b93e27849f49d4b786639dcc5e023100fe4036627feb23e9f46a3c7beedfaafccdc82bba07040201631e879511949db874ac39b6b03bc84ff4418879311e5d560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065f84f89ffc0ae68412184d056f221b335ff27afaea3d5c37a56f5227ce0f70598194bff73c29976e3a0bd025e34c30c023100967eeb9fd9e708cfbf30b0ebc5d1ff4e7825b073644e248bb96f1229f0212230b2b8ae56e73d76756acea22b032459690302047c435bb500683066023100e709f5eeac80d7a2c4aba5522adf699b2df5d75d4e04e2d35611839a9cc590e6d91ff1f8227643465c79bc9754382de7023100ba4311fe65b42688fdf34fe8092ae864a787c986c9c92b5b28071083b010643baf82463cf1d90064fa5fab170eefb0540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303316e41d1d21eb3d4123cadee9271b11fb09024c16e17092196b7d01706a3d32a0bea637bc541d2a372ca0362a79262002304398021905fb98fd5ad5f30637164ac889659ac26f8f432fbdcfacb25826164d529b1eb3ff78f0340386da785e3bdd860302047c435bb500673065023100e2c750740a352997faff5d01d397b3cc6d0614f117e1fd214fc4153c7e0a64ecfc1cf28d00ec3e099ab0f2892512df3e02302824a7d7e6c172240ae05d955bd3301ebe7d806100b349526a5f30d1399655eacbef5fcf6c331a1febb341398f3c2cb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef62edd700704d56c87f28871c7f62155c6b7921d836a293b7b1a0a1e8a359bb85538325669394bd6a97e9dcaf2b667c023029890f676af73ce425992b9173cd181599232125f6ca92dda22c37454fef32edbc6de115e1399d41b197544eb03056e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008398294e6aeb4005c6516a5ecf8f7fe09434e67f9cc8258ffdae4b543218d0be1964558b8ae613cc5ff26b31b6ebc21f023043b2e1d000f3d3f00a668bebf5bdf9fc9d5190c4749bdaea8426cb4a93336e1f97b5f50b3255400abf636c034e518b580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039c355e5f8c5646e9b0549568149c979ff41221e86f99b74a2c000dada5a0a60b8672d2032bd17be33de60e55b1630a2023100f4535a3ad36a9f6a5476de31cbdbb52d68d69249e22b07a7f84c51ccb3dd50dcd8adc59bec1e86f5027cd5e362cbeb890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301808a3568dbe150f50a0f9d5d5d3c673c5852d4b13d33db1bf8aef5fbf0a00944fd02bc81c6958aafbd9e4045309d515023056799c3171d02eeb7f6772c4bbb1c614b4d9df0a28d438a2f98411380f2ac05b2a766de31ed20eac7e7456179945e0a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf77a1685649e9fb5363f4331bb19fe08db49b7d1a785751e40d85516bed83d6e0d354e6f1795c855a597e0710a314f802307eaeb657fc3d2150c473bc95ec45aede7791109cc9da01798da8065fc5ce11631bf10b57ec3e0120e246b2720911ca0f0302047c435bb500673065023100c69ba03f116ab84ded0d7557d5339587fcf90eabacaff3914b54d8b32fdd114d87b5ccc9e8ed76bfef2d4a17878df05402303a976980a6a2d7d01feb7a08b28b3f336129e818a8c32a62fcf1592bed751d9402ba84985106f607d673f048c9dbbfb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f8611118e448bfde993f46a07ff4f23c3bda01bb6f73db924cb419eb2b44bf2b137cb681db9b3f18d0b7f0e8aa5ac9f0230137adc42981214b5ae1ba2e3eecf7120616a2f5f09a60ceb8d4c6eea2e01c367467d31cba083c811ada8cf982db4663d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301755dc31393c810d373da91824e319e251d0306b5f4177aee199e383f0203517b284c0f60647151a2f2ac2c5d2ad208602307e39df696001a0477f827c5513aaa2c92e2eaedc9d916c54118686464bbf1a3ebcb934b04cc18ee2899b74ac9f85ef540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8477dd84c2764a52638ecdd08d15aa271e638f768edfb278e54640f0055cb0a0d93e077b8d5a59b2e9aa677e23aafa70231008ed3a50409307be2310579254729029c3f0e293711cf298fc14eae13f212ba9258cc8a87555bd197806423130f2f0e3d0302047c435bb500663064023024f5263025d06c6c099ce2c373155044bc92869c5df3b8e14b6758ce69f9eecb61635da7e3b30f160687620ca2576551023039d8048c94be48a488ca279deb1dad40d4cef555c79b6c0463f470b1601d0af07ab05b510844f1d97f3420b253cc60960302047c435bb50066306402305f486d21b1ceaedbcebdbca4c316f232d116f2864f668f8196916aaab72e1c6b524ae11fd5e2749e83df7c618664312102307a0855f1b6e1962558558ef1f9d023f38b0112f0d249272dc57d5083000a8e98dcc8ea222cd6366c9474c493d9cc703e0302047c435bb50067306502303250bd63a526a90420065ccdf35fedb19dac62434583bf4c0f4c8dfb1d68772082441896c2ffa1d2a7af3cfee36039b7023100f8a15c8197a9dc13007953ecfc5825a177661c82d1301e346301b11d7812804cb3f152415df3de1a8affd12a1c034b920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300aad4d0c378796d842f96d9b2c86440ae5165f2c43040be9841e31da6010fe7599fa84a9770f09bc4b72c1d6daa68f34023100e737df1ff56ffac209bad3fa6da6034869bb05efb2896d602c7465168322945f95629c95a22688619001dc3a95604acb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3cc88fdd9f7b15abff0cafe44607a7273949be9bd5c35b85495b82b5391e2849fa7c1cf47516464bcd2fb30aa0a41d3023100f4f910f45278764b86b334b9633fb8097f88fb9ee131a399ba96b89459e397c43c2e477644522ba3b826ba49db0b3c050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076d4752a4e20ba65311cff1340aeef7a1227a08467d9fc74b3e1d21680080fa7e5b1217409856368388dc609bad5ef5a023100f0aea591f63cf9e3e975036c361d48330676d307539daada0dbbb5623a61933c1fc2e997db50cd453c210886a117c2ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310095e7fa3efa1d2166f1512f1e33a065d88b08abd4845eb5109cd14b88e874cc23feb92fb5447cdd4297b941e8691d185902302c2828c91936c55e11548f89dcf4421fabf7ec9a976cfa149d8dff5e5cfc2177872e39d69bd3264125bc0746df4a9ee90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023021a9bc71fb38a250acb0d348792f07d0cbf6f2a5f6b25169cd543fa8520d3d2d0c35d5a1762938f5241ac64a890d22b802303997180ceb226996fdcb96b5b9b24963f597ae46a4820806c76bb275049e993352dda7cf6f7ec17c093a62529b16836a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dcd8af987e3381d0ce422f06783cd0dce932bb6a6e52b83d2cca225cf451b6548f65dcc9243b3a007c841f3d331b423202302f9b2a95ef128695496d07f4ac726ff0c9e00567f3133dca3b23400512357e86a779a93cfe1c1dcdcd808b04ffb719900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304cc16ce29388c0cdbf475ff11e3bf0fea24c37b704ec60e0ad785bea20366b91af41a4af5a42224125321a5f486ddf9002307c9a067e32c156027549793dc7c2822f44b5dd15830fd547f61646dae4205539a1e5f69efab22bad0bb06da2dc779a9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf346c1c12aee0f0a87ee744d721659afc9df7db8ab839fca87f99254910c9eac34ea5985b2cf5103ac9b00b44868cf7023100ad95d00fcb9eaacc65d688c3b11df88e83adde2bf169db29729a71197e404c0937c406730cbf5d13ce29e340ca0de1b70302047c435bb500683066023100ce90766bdddaa7914c91b039e5dfc69e28605fac35c4260c9bf744603171582e895ef7a1e6aadd63ab1b1b284a761d69023100e18ead6b67f32701466e4b843a18c5fa2e54ca9b0b682785db070917657132b140a093ff5b2576a02d2ce45ea1c6538b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100840ae04ad5808ab32516c5cee78a9b3f0e1194fc3095c936ce01ce6669af8a2dd49662ebe0b865793897a775e20e25fd02304ee261a55c7f17d9f15e33c29781c6f875ae228bb41b28084c1bfeafc315ad2b7d6768e12071e6d9d06fbeab3fc965c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085cbd662bd5a0991f541f84b9d344ddf1a4398d9bf097103e66efe9b1fd26fbc90d7037627a92b2e7d340f849cf7c67d023076813a4835bd7e1374d6a007f45d2487dabdaff106b3413a27c930101fa617a362f871fead7c04c43652be5b9c39d4e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b93c3b5d9b64cadd1e26f667a9671e5fd212303181e6c607995edb7bff149c32dc702b77d087b374a574554b866340f023100a08a83e33cc0572d4a77a25efc351806339fb98aa2bc24579aa608b8c5729fe0ea213361d0aae64408f1718db78eebbf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e85bf82547eb4d995065d568325711d0812c071e99760ff0db22aff59e42b3ac0bae525d86b1bdb55cb30ffc7b7e82aa02306334b15036757ad41b0f327e81b2e9866899c34eba80bd17260904de89c2261c9d117c6fede9a89cf20c59729f503bcd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230701a5a5201c28f8618a4e42f4b9f9cfc20cd438cbb3c20d0cb1d0236b423027a72d47d6327a07ef0cde6d27941034aaf02303a69d6418200178ba6c3af9010bafd93e583c5ab9cd1b8e3b3f549199da7ca7e0c10c36e3bb0086a5a5d279bd4eada590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023074da135dec56a2a5c33fd015d6ef076ae871a94e0f5386b199b87efc58b0e0b36aeee8420e0c622b8d3d820bf444b008023041e4748936ec1f443a9bb17473f2aabdc9cf5827c2fb710c3e32812dfbf25421660eb6470fca9de70840c994d11b95b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071fc088a1131d2206e1685ea3c596a4ced3232e26d83522caec4333f0aa3d370cd2cc81093bd99d3661ede5faf51827f0231008e294955246a7a7fa75bc5c24d173b77d8616227a042b18f4856bccf98fd30d693f5ba179d6d4a772df05375b977299f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100be240e43059b4105d2002735b6c7943b1e25b0e7f48f0a335c1d526dd9b70ffc7a68abd3c653914ac600167e9e512846023100fb73a726a6e064dc339cf4d3a6564dca458ac62aece592719b22bab273c771160b5aec60b987ae9b7c7939d99ed398af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008a4a2e583411f06cbc294d164c65ee8b2e6d064aaa252ec7bd3fd602a386c48950d71c4d1b00bf60e99fe5e3338c9c2f02301611db4e674ffa27fb2b329e5522faf80ab2129e31950ad72d18ce6a1a72253b83c198515ce259e65544f646a825619b0302047c435bb500673065023100f02e67b2d4c3b6756f128035fbdcc987909c0832458aada327a2939cfc2383342441b3acb9fbaaf0e5384782c7eb6b9002302344d5efaf1e8c59e3025d7c53adc04f5ec1680691dafdada1371829642b43eacdbb527b730e6d24745f4a92e8a700d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e28daf34564d056b16e8e4947aae6113071ae9802f1b8716f48f000bf479cce4fac4745e62565283cc05ff7815fd9746023100f48190cb53961993b6ac94a194ec99210de6fd92e7be36a9c934dc6fbbd50eb87d6a17d24df9ac417e768e665dceeaa30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305608fdb3cae28f7cfee5382c72d6af106f709684ebe0d4e7215fb8efe86751e9c250df8f3e1bbf990471c0dac56967f8023100d6aaf58947a712af69eb6a097508cb4986d5a240677e733e6665fce1ccc1c17fcfe33e47eb961f9edd60df167aad2e7f0302047c435bb5006730650231009321ff7e12ba512c778e0155908d705e86da4095548d1728b2e0afb5fe7d1700057231fda256e5697f97760377f2500d023067d10eff1a2a7729fb80eaac99fb8db375cb5a9c7b4d6a9efe3651a6146d22e06159e1540102778c371bf7778fa2c44e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd9f48aae296544196f2dc007d67a2b019f2f8a6e42f7fd0896fa110129124b40e6423e7397fc7d199ecebba7b19e5c4023100edcaf270cae83d5a53cf4a644783e613fa368831d10fc8b4819ada29a6ef1246cdf74228eabf8cb88a8019c1199f4ea50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb525ab1058b5248760d6a06f513b893df149523221b91cf2d06103931036d32da5b5de2dc2c77868cc6b25327ef9a10023074238c35d927c4b660df51576ce6d5dcfd1a2a82d855c9d952903132f0cd7ff28f93b7c0944a7c45e1aff9f4a87d711e0302047c435bb5006630640230023b336b38f1b659174712505cfc8ccde348b6d59281b6c0e400feb75652dc4ac252db71518ef30afa40e0ea39f18bc102302e70edbb63504aa2dd3a70120cbb27025f2ca13afad66704ae660d16e1bf8aba8b4f9dc59f56b865b545c3483ae02c3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088d7f4057f906a64db0571daa67f6af04b17e4a344deaa77ddb10810cfc5ed14a06ee052c43908514c047300c398305b023100c621bed5fc5bc121d424fedcaebd54123c0811b0a8bae09a075907f70a29c2e43259a515a03504827bebc3efc125c1f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a65bd996e6f29ae673884fb795c08405853900da289f37254b0324223c4853621613d43403f3323b42637627488de61102307a96d7217b90577c12f6a94dd235b91a50d509870dbea12801694f269235cf902b7ed4e368b563410a555dbb94256ce40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e388a34937923f280a4b224fe9c70019d3269303f58a7a46a8d7fca3e04a96fc7e8428d03bbdef17de9ee7bc4a3d4f1023100b68373e780611c7b61478b19904c803252d8283100e879ed9fab7e654c0019a281591b1820fbfadc029f58028915eadb0302047c435bb500683066023100b933858203874e34a423b90e2879541e12a19b4ef07cb6328fdf1c67a29d00f5d27cdf6d7285b12d7d2159cd8a873ea2023100969ef3f51e03c7c08b7d8fd117a265dc4049f049ef06430b047ee02884d4e148de8f39cfe9fd561461757c024b4710e00302047c435bb5006630640230021b83290d29c6fc38444a85c801b865b75013fa8375c5598ed1c3e7bd68bed9e78c64708afb3f7942b15865c343198d02303672ae651d9a67494de30d6d180b5366fe44db8785b210b65292f7f28b1cdcb91684830f81c5943314421a78e29e9de70302047c435bb50066306402306d98789462167467013c3596871223cf680bc29ab3e3a99ca1b64ec07f50d3db8281f57a305d442507c7ca34779fe3e602302364306582ec3a722ffb4f2319a5102361918a905973f81eb6779aab686bd491e85a510bc8ce60fc14f2fa3efa0fd8630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100807794d7ab4e151ab9112ff8d56a8f5330181ed5524a433d4d9ba174fa46026c603b54429092afe1d6713d4cd52bf6cd0231009dbf66c19efcf430a0c2ed09fb83ce16ed27ced49acb354f227d4243a27bec98720ebb457f75edd4e83345082dfd83730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b9be4775af6819a3d242b7bbc0f94f1bb7356ec7195f902e9942ecc83000b07b098aa92947afe3181533c6d7b1fee7d3023100b848e4ec50a54ea3e7faf35b2f9ab83deb858bc7a2e3fc6be2ca852a38e187e02db16ed68a1180e3a63f336794b930df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea37638a958f447e50792c903d2d9635f85d5b5c2dfca767edadd6ad39722a3dfe1c48babeeb282cba0ea3caa2a555a902300eebb8433aab7138237048fb36af3aad1395d9422d9fa80a94952f49cd191b0028b52ba7936449c1fec0c2b217c4dab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a91d8cb4b282acdcc27271205d8e3229f6637b0a2cddf73deda9c8c39e0383af31083c0c1c96de3e94e9003830c36d702310089dad43deb232546328e65d3db4bac600edd9c60be04c77ba3c48caae453ecac30a6e6317e220fff1cdf1a2940bfd8160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009091cd656a30dbebd8fcf7f73db2d8495626d0cf5cca13dec22d8303cafa0a50254de10b7d060e3644bfaddc68c7b898023100bb7b68cbe73ef3b8b1258aec2a84fba8face79992b3b614645a35acad13fafc2c4160a1b5876774c9c1f7aa48d1d95180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090b0d747ca60c2254b12b365c66ff759bea2b963f50699facb93934eebd7bcc094b8c5b799bd9fb5c58c0ac67923ebd3023100cd4c7515b4b5339cf4b2d68b193f579f58a604f59b579008a4376f3d70a335c28a6dbed5b2247e54699b6cb693e3379d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea37638a958f447e50792c903d2d9635f85d5b5c2dfca767edadd6ad39722a3dfe1c48babeeb282cba0ea3caa2a555a902300eebb8433aab7138237048fb36af3aad1395d9422d9fa80a94952f49cd191b0028b52ba7936449c1fec0c2b217c4dab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023044f602e75fd1dfbc71e57daa11e4f7c45c5e2b07474f22107aed2718b053cad3363a949b08afeb1fe5e0dbc91e972487023100f336442f2f605eae1b68f485ad38ebfb000bba6f2fdc6ee2eb39bffa5c5be0fabc745e0d5a13e00780e183a52d2039340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306371693435be8dcb18385a72c8872591c494c24c1d0a0cc204e2247a1bbe1a94689a43283424b23a3f551ae525ccf44a023100d5f6262926b2dde84a11a1e53bd0f65ac3c56216c9f0512630c0a9d6c9fd261e5836448546ffbe809e36ce627bc12b7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea37638a958f447e50792c903d2d9635f85d5b5c2dfca767edadd6ad39722a3dfe1c48babeeb282cba0ea3caa2a555a902300eebb8433aab7138237048fb36af3aad1395d9422d9fa80a94952f49cd191b0028b52ba7936449c1fec0c2b217c4dab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e30086e82f0f579719ca6f6ea50cb174bf98c564ff488c76a0feb57e32c6156abc608d408eb109706b38104268b16f86023100e8b31bebad98a199e37c419d6593fdbfe7fbb63b00ae4a6466ee559c834d554ae4adb23e13f594d7eaac2ac56bf429ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b2b232634b4edcacb024dc509d0488ec50e4bc293b0df799a26a93b34ba3acec0f5b1843ba82a586f8159d5b6d1429e0230581dd2f0984f6d90eabbe673576d3dc7067fe3c0f68e8431b04d3c1b5a5fb7d10fab3ffd67eb309422e0bf8cccd3a9ca0302047c435bb50066306402302f4b2cb9d5a30a677e7e0daf92cee2e2475bee3303f560593b74846dd8fed06f115826b5e66b55d33c37b26be02e9395023003e253db1c0053330fc3d9aea933c16f82d8dc2749d078af97b6989787fb987d559cfd8718709738c7ba0fe8f6d843ed0302047c435bb50068306602310097b12238bb8fb402fc59fbe084313a371c731eee61d7cf4b8d8abddd27c27e3f16241e6ca84fe3d91473cbee964fb638023100cf092a3c24b2cc7761df21019cf19e5211e251618cccdc3f5916d6513a1f9997728bb8047aed46a9b78ced6532d73d360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd6a62d87a7b4a9bc6060cedbb98c321945d6a870bd2b7e6d742561bbc41a07def266a4bfb778de6d25f4bd44d8a32df023100899bf6f4153dbbb267d87ad08fe39cb9588500726b4013dc0e2c65a49f1049a95c8ccb4e91351e4b7611ab0f1ecb98b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300b894fad4b2d62b9d90521a144fae14ad942872c3fdbb7f5b0e405b03c9316c16fc7dfb9c165c8eb9074b784be96a44f02300bd402392666b864ae2aa134a608e4cb2454213072921ae9c0f1145840b43872e5d6b18ea4dc2b860a99507dba1a2c3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ddbc728b6fd4a031d20a8d6c975f5ba6f6fa19db694b0130816adc6ffcca35acc32e768e57489eda6cb2d1f6fea50b07023073a7a45178f2568618e8aac3676df7b9913b296de0969eb8f6dc831b57e41bd2fb46279083259f5f3e0d324a0cfab4420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f4bf6a12c3edb974c1fa587747f85e7d175321fa46237ff630487e3355e74ac7dc288ced6d56b6ea71d1dc841f582f402307ee0be754c9e17382893b7456dd217544043f977bd3abf23a5969774755645990bbeedbbc2d85206f0e0be1a5f253daa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230068abb30ef6aaf9e9a95cbc7a211a85f89adcb5b136007decb537ac5fb5fcc8bdd1a748e54d84a2f34e466256b575e3d02307be30bb9a08a2a7104981517b5dfc8d662a02a204bce8364008c8e018cdcbf94346f38f6c369f17f4cbda25089ad3f3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028ec10fba4a2cc89b3c737bae02bcf60acdc4a7943ecc124595aea1d84545230156d00a9a9b4a97de02cbaa115ae56750230393b102c0148c72578a7677c2b7e67ee451da6b6a93896ad3fdd6d37ce4b7ce1a50e60172e131ee710cd3ac8b84b60c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303f2a7ed2e5f237079de97a9939b29dd7ed15c8484a23aa0600764f1edc5c62d95a6a62d4abfcd92ca2f167f668bc0431023100c81d3d9f7430ae6577248668b547b0d50df9c911b0c6b2365a9646222d47cd74e1b13732199bbfd6fd7eb3757ef9d75b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b44fa88319c3a87fbcfdc676e48efeb4036ea2c55ea15d3d2a76ee47710e7693fa446397df98069cc0689f6eb3166922023037a273f44b8e0ce41ddd1deb5514b7fb1f6407e012f10347de8fd1ee1e469da8bd9941da2be4854fdb7d15dbc52c4b3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023063283000f1ec3dec9977ae2d9cdfa8efaef340b781ded9eb1e41912e92660c47fdcb422ff8f62d97dd4123f21881eabb023100db8089781c95651a056300ff7aba9e46e5252ded1496c56943deff12ac0b335fc967327ef73ad5469eb76d01b59595e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068006b9722d8e9f5d2853e9962f2151d62496caf2933e56ff1f90e93b95799a96d437b48f617b6686d9f0dc38dc1ef1f02305135c31f9d65e373e994af3aff3e7049772415bef2015926d7b1c20d886d57a50778bd6f1f75616a61c318384f28eaef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d75fae631160fe4801814989534e3b56aa0fdc81856e1daa7a1dcbd49e188d7da623cecfcdbd3d8e422fa9d38197d222023100e91e2605f36b425ed2438fcfbf244be49db116203b692025f828b08218e95d683a752cb4ea12960ab1a73320d0fbecbc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efc38f92feba1a7da8e3e1b4d4411f6e5e9ceb06e4161565a4f43f49dbb8d20f04744c9c43c9f3b90c2b9f3303eec3e502300feb76e311089099c32e4289083b4b556b76a77cd2c74e078bea3a6c9c6cc9c5c8d66dceba009aaecfcbc4503291ab100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d0603ebe6021b316f632f59726a402b4947590ff5310a91aa6e27def484f6aba29bc467ca47f5a6058ad913afd1624e602305297f78d2fd356d5b4e5a9efc2694bc5e96f5ac8e4a1bb2df2c315d11d744282db442b285ddd0f75bea3e8dd75df8bf60302047c435bb50066306402300a3d6dca8a4c2373fb73fc37cb1d3a6b29c4b8cddcf6e33bd657cc97f19c89a0a1eb1cac413e588b9bc261ede351b5240230791065ebffa462b05deee2ce0a2f5f8a94b60e9051c9835af630428e09c7c956b6d834f6c7de26ee01bba3b60fcbdfbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023047a5c2038a1c4ed657e3ed02bd163a47b5a3da94bc5f65d86feb6936adf8eb9cf100b049f8fa1524c289c9b42c284b9a023100b4c732407f86e7d54288c3e871b931ecdba795a70cdaea9e1e6c203dee9ba4a1458f826b2ac200b18435f3d6fa0933f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230272992120ca443188e0b3edca904678692882ed5fdd00a469f1080baab23da09d54635bb7031afc7d2f42ee0ca0ff3e6023100c8222ab2496d64a2b24121117dc0361a6dae1d4121d9777b4238f7d108bc4662961f867524172e59482b71964245bef90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b5b300d8245274cf3a55d39da2d9caa16055dcea7164a61aad698c916a65680fc5ee7f231b13de9ecdd2d2fa2c3441ab023044513abdd6e8d2c8c1d2006fdecb71526c046dc4453e2383368fc77a832f37d2a746a95ec149d9392e9a0965ca3c392d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4bd1a22fdf76d522effd4fb233ea2afc89ae8d9b70087b9880ab16ae4ecec35324caa7cd5784269a6a24bc44fa7176502302c4d5241c8a2d6739407cb8f27dd374b3d02229e28bb3f6d0b58bac4fc478fe3655123c74ecc9155c32b60b33d8d7c1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebc04d8d152944bc2e684bb58194d59bd496391037c74912213d753d96c2820fdfd0674945b0df19a56deee1b2bd5f490231009f75ebae1f5605e9b9a798e5feff50bd43ed57a1d48529b3be26f3b23e71d0742c1da19ec4656f7c236202b113657a640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026bc7191a7a73af81d742bb84a8df85c5f5c09fcd32e3670baf5e84d742da8502986c3b81c9c89f7a9df7f09697a64540231008eeea80595439cb6e3330633ee73bcc9decb2c9eedb60b1851011306071fc7cb1290927d84a7d1cbdd06cd8b6a24ad950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf5036c77608b4c375f420317235142f349cb0dda919892fe33c6ece9e98d898b8ee0be630311110734ed4cf6a10023f023100c94523998bbba11854d5f5fb38663d6e73c51e6772723034fbe1641d75b622156a259f726bfc34474b7455f590a53a6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c3212eb1485a8927e79e02817969ecd0d1aba28dc4507d87e9a2ea0d1e303cd57d688493e7eea115549bb9c19bc64379023100dbcea70d64879a11590bd0154972fd72b835de0a205ac1775ea169cbe26192626abd6969e137ac20df02786fe454a1fa0302047c435bb500673065023100bc4ae01f638c25d2baac8be99b68b6ac9a6bf80bb16e0a29950774ab94cffccc8e537d42500607a8876be0a02f02ccb9023005886bb6d3daba1421ad35438eeb003b36814356646a0081dd4f4479d3d0938e2804c68a901016b17e84e815531eb8840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025ebcb4a4fb30a238dd070106b1f4e3744fdb33baa0409e23c63313b28f1aaa2b0d6849aaa61a0fb4b776290dfcea9cc023100a2b07c54e46e25ba2416c2d5504259b343bafaacdb9d77d1b3f5495abc202cbde2693c97dd10dc7df68ca23de2fc7dca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4da82c724ccade564c3843865774027d01fedf007c2fc3ec9fce18eb6b1fd3d0bf9a444cf9c9e170186ccd253b72759023100cb6e5abbb2ba4780294cdc5980dabf14b67ad009f97aabf1c0fc85f888a9198c31949d4396bfdc820d7167285de98f740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c6f5d1f211b90fa367a2c739a6a0c35a84d23271b982d526b118c6d9600541715e536b3675387ca6268fbe5fae9e3429023100936602d0dc9f5c24cbf420882ebce738f57e3aa273209fd5a8dd5a6879924ee4cbe7fec6757d336a95c5afc33a840ce60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230402075910e5102d5d29e3c9dd7d226706c57c1b7ba7d1fa66019fa134829d67d18773c05f87bd22eec001eb2d6a0f539023015d7315015fe23af6dc264ddb57f59a07a2915f1154519fdf48418f18eb3d17cc5fc0f743351056790c6179abed11d0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023035c2dfe65691280ad03bbd68005e988efeafc5df1dbb57c2c9cca9fc0689e6cd181e51e4705ae9fd882a62e8975cfb82023100dd7c0fc8c2010d8bd0835ff2346722da43a986158f0334b8132ac624a5b45ef21cb6e43641a125d5a5bf4076ec9f665c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d81169a341b90e0ffd94def08ad3a4b0aebdbee6d6a24463281d9130b435f031d4508b1b5fbce19ef1d1a3f39df9dd33023100b759421ad1c5913f450f1eb07170d8f3d2c9c86093e32fd6527c954a744f2dc3d58ed1f941352cf497874611cd2755e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230274bffc06cfe75e944b9334805eab9cb2e9834e5ef7be74aa01aa6d29ca33d4ee61daca22494d37f346500612d1d4cdb02307707440f82d7fe2653c55c09767c2727f475fa1148ceea304db1f6b12de963b1712872b8bc5985990f9bd23590ce598e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023078145e740c6c7ce9e22fa6bd2027515564412ce61597eb909b49b11d7721c5d9b2bc8c3ab9fc409253423391d73c19330230497517b0574ebdfbd61d74c1d0421edb4e966e9fdd107f3ff89cefba9403b5b03b2ee1feb526b6f8db5e01146f72f37d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026e94b6117208d54efc38839cfdfd9f375f0d29a280bb82d515e0bf44bb978b9052eb2df2052cd7a16bf97ce14c8c961023100cc2c1f48d9dd8edf2f1552c7b0aea26f4c5e7e028b50a213252a5ef056946092a639907c4e95e3130b21551f847fb06a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305552bc908d7c6746d2fa5a86353b4a5bd863bb7e6c951675ca2a6741b672f3782722027c87719c4e2835ffd8a8f0f151023100f72493a6d3ba434b6be48524f759461244bfe96f47896679d2777eb115d416975764456b972eab9e7a2a9c623000e64b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b4a29c60702eb6a89959b29aa0659c50fb1e779f9f588277f60f37857e751b1c4feb75a4914e49967e032a075ec2b33023048f9487ee2ab54052950f51552eb4fe58685ca705b0fcc31ae7ffd0bf0708373c47545ddd1e1becf49db520bc0444b760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023048d0f25c99c4cc1be740246c9d307442147f819dc606dc92b0af99b26048431eeb666b0176adb5456d9e9be2eaafcdd902300c663a2e946e574111aadb9aad3c14acb05a48dbaa8efaf99494f4a6e84352c63afd0d1bf55d2eed7c444af1f258dc7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebbb4b6356a66f79ba34f6479919594be19ede082d66e23df978b1b1485205956a7a128731b85ea541daf5341f7d69a9023100c12c5a2085fd28f544d82b74dec0b9d2e64770f9236ac967781ebc29f5d59cecad76165ddd25a1e998591dc05151a6450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230082d98c98fdf1c976c6f704491bab9a7150ddc9b7331ab0ac20be0a8f10203cf975e3f52554dc22afeab8709ca0defb502306eed6d019a57d18dac50e13f168b60d453f921f2420aff72c4368a7a152a37adaaebc415320d7be5d8ae5437e442d52e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023065d75813a6f1fe9af02894f0ca569b2e2921dcb763e51e453a1c1a8d0e5dcb4c0b58c0c80d326bd83c034c363109bf9402306f3c5bb94d8606ac51aa89e01050a3337a816d754e6149c258c4357bedf37854ee1375ca1126d17e4fda99fd9bd0c1280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088c99a5e000c36bc5f1ade75c56ebc0dff55f23ce17ed81e406b322bfd139558940c29fe558bea2fbdeba485a927b83a023100dd3e76ecfa0d60bee668162bd49714813cdcd343639d7c82deae1a7a7b665f301c3dcec51372efee6beb4f657cf0ff550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d6b478d1d5ba4276e7feaedf5377c183d7b8df030a09486274c279eb3d52c0d8221b0dfe44d2e03c627f3de62decf2f023100c2192ca10f47c304886f296847fca09ff2760c0832b78f3c3fd561d8f4974cd39a8e00e19641e01d7c8e674f179025dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c66c26a19a4d7f73a9dba18ab1283715e4577ae324dab5efb05a66c9c8885fea3d57e3465107162b69c00e86a713e2102310089995b58fdd3a7454899fe6a9c73e020dc34f2101ac300f373b165baf601804f5eb2c8f929d5866cd78bbc053cb21d370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dc2096187960fa078fdf49b7d1f1cf445ed162066b199454266c1a16699d19f106fea24222deccaa982029d84825f5fa023100efd19c825c339e448d632f6fb7a5a1829d02913d6bfada44b30f929b8597dcc601e0ef8b913eb94e37d5c2e8570210b80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230385ee478b741f5c7aff3dbca3b5bb74e21d6206fb8e8001fdf4995fc3dbd75ce4a113d6ce56f8debdf530a4e8e29e0b902310080a21493fb6eeb7ed254202ad3006ad5d600eddd877793fe80c7bf925e838fe6af16d1e470b79d87c816a4d4dc69e1b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230228e5a2eabb79f3ecfee9b13ca587cb473535a7ee81114a2998c22a39bc289f15a2de329e18b890bea5771ad56b081a7023100e871d65fb5d019c114f4f62529f49028f34d67c40ef1774fb0717b17f7f9b4b88ce52cd349cde9e9f0c4df21ebc911a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4de7fe213356ecb25622e52f178664f495d8f4af9f5e1bf52bacd2c0667e1f4aef872464f9aedd3fe20fb3aef407cfa02303dd6a5a484db5a4995ef0c148c5a6018c8bb48e0d68f8632ffe4f08346e1a97c4536ad14808dadf4040460dd45652d1b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303259a066c2b9cf6d12b849b6da1d69efef3de56d6a70c33115baf859b6185be265a65657e7f9f0ab049b018c120b507c02301889eaaf5edbe114504ccce484d66cc64c8f3e5c2fd93af9b3ee37315a0aa17e07eacbca44b10fc01a37afa45751b1bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305be61e9b582bd68cace728ef35c12fc3e7268d550836d64bdfd3387b77975e4390c4dc34791e856833e66cb75994c244023057c5cd33747971088e94fb1791550963301d5f88c7dcceb5c39e9d400b06551a5db0a0284c45a9063195d9051a6637100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c04ea16f17a6c445763174253033e8917bc9034c6aa0aa4d8db3f2358b301929314c80440ea83690005e9c9a80b477a2023100e495f86aae967a89348ce0ea6aad52e5dd34788f52f253b5e33098673bd459b44e3b372725e96ffce9c692707c8e1c670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d7f9c2dd4192b295cd08bf6caed5746f55660af72881ca999592a7075deec21e4cdc91a6576478d278cf25d0c0789df0231009270d6f4c5bea9378c9277c114b1efc589e196207b6f76577b48d72551a8ae971b74688c20c45d2a505bd5c2e0dcfb160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8bf21b252dc5292b297f54ae6a5fe6bcb7cc37d77b0faecacde39c35a53490ee9003f6b7f2aba5647e0afa766f1774402304775a8b6705690ef7b7fc3cd3e1a1fa55277825ae13858669c0e038211682a04f30b5dd57587b4bff23efffdefe5a0100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a0fc36f2f1e0763e7ff197b26a339e04930f01f8a1307cfbb0a03aeaed4e70dc391d53df8db3115b872bcada0046c2c023100faff91e614ab8709308e46f016a6769151a868537402665854d66bbd8bcf8a2bc79fa5609b63e21e55d01f8ef7ba32590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023031f93024af82892351e7deab8089d422441deff1e28d69ce86276dc15fd954ae44b46bcbaff32e882612bba2ee0d0d31023100901d5c02b1597997e172450e73ba98a2438bd85300d0c15c8939e3b121af16cc682b7e641ef9d413c5720826f033c76b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cff15c92dc4ac48739e1e852f67073bd7bfa5fc418cbb188dd009b1ff5b4b713f00c0d1e60dc12970d1918f637761f00023100e93eb74b3a12e0a0a00ad57b528a44302133f8edc5af101de55c80e35b69f1d276fa5dbf3f4f364de61736172e001eb90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5c6fa5bd8b4e1b7f39d3aee34da777207d89b3a8750bcf6a375837740d2291514fe61c99ce2b08a0a3a05339d3b82ce02305c16d0c77ab5c615191ccdc2d4bd232f68445e45497fbd516464ce4a9d221f0a518a4cb8fd15e033143478dcef9da5490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c583b806994f3a4027d257502160fb5312d64a00286de58353c2a2b47cb93bf6462ad7c4507a743eba3d918cf6e69b80230504293ede653dc6a59d885e3212759699d871e7e4913e8ab02f17a6108e4331bf80bb9b8502a372426e3fd987fdbf28a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1445b302c00034b397aae4bd3513ff2d84804b55dcf2ee4922af28921346d01cc32101d25f48fa6007649deab0b0ca5023100e1f39b39cba2c20c0949905c77ee6f6964a18750526b0074c23d73d907fcb3b82cab7b78b0868f5d2bd3e8498eb33b260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e73ca4f39071477e8db1d7c2c2badb0babd31049e04dd3c32360ab5e3546601cb3277833e73677941ed75ffa8df00a3e023100cf8a697b6481aa72ce6ed1a904a24741203c1e6eb6ee96334a175afce033d1c9d61d92da30cea8c3f9108528616bb6260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e014c571b1db294d8ec4062641eb0d574ffd0a8c952a388ef88a630d7784421051fa3d2332bc13cbb280aacdcab310990230140b5702d050426ae460222f74524055bdc2ebbb86b0fc715a40c6cc7000334634dfb6341eb74881d24d225759f72a350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e011dbd74d142b33a4f70dfbb32a5f81689a2abfe092853dee23f653c0790317fcd91a2efd248c74205720c19fefb97402307f281fb76a3fc0042320aebe903555adc8da2ce0487c23b4f98181feb9acad4611cf00a838de63679a15f7aa3654c0970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008d6f1f34969698680a02ee3c4686bc237a6faf60e46b7bc6798424b97c14749cd93b502238099a912bfd98a765fe4e1202300d62170912c854677c90f919fcba812e0c0ac01c74e0ba1e16578a3f34339d39a1c2a18cca1f6fa3052a4b32c76ed9940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c8d772110e43f5d7bf068a1951d992242ffbe447241d45ecea1b9a66195ad1d53b600b18ebf3101dcbd89ffd228416e02307bc1ae9c306546683e8857febdd22d7e0e1645bc976c00ba3470b7458f9dcf12dfde4e46a6191ff40f7f38c3b83f81ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe7f1b8f7258a08251438c83fa2b14ca6044d777817a570d91ca1f7032f84259977ef8df9d32689179c497fa21d630dd02303d8d2dee0eb41605e3376c27c5af2dac8c82d5754549e9cad73dfafdf779c8dab02f758c7ba9db1f23b7f51670f7ea8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8658f20fbb5e437efd928332f670dfeee949994068363602bc142095f69090aac79c28dabc7244cf0d60c29e9205e45023100fb084d806d079b75b50b78623cedee6fa215bf521c9834cac73fca92726e4e16f90e5ea854063f452d275909eeb8bcaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230219185036841c78d04d04c5e0fbfe296be79bf3e8ce0185a24b23e5be2e1abb77ddb9beed615db2d11dd2e8a67c48300023100dd936f22d2138b997e12b44118da3f3fe6beb690e5d9a02028cb01bf9f66525a0d7da13cc4a01936a77488b7fb7137b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d8c9f8ec169fda15f3e0ed3a56750c9c6c07c8a8b315a6425539766590437dbc01762e222b4344956e21d6601d186b5023100b693153dfd3f58c33c806fcc3ed1402b17a58378eae280501f2408acbd812ded9179b73eceaa99513cc06a9c79e0e5ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023055837a0eb6c221c2fb9f1299e284f591913673e2674b5c073c1292aea28f35d10f73b966558a7fdebdf70d808d9303c10230303ac50af2561c84beaa0396a8e06116e706e11247cef90bce7bf08a5c9da8704b8476a5ad3773251ab097933bc721e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cf9b971ab2b84d1122a0346792fc59cf36baf00de5c04b7c5ab6c64e3f3cc87477430cc3ba4c919af6a3ef7d921d60a6023100bb83374b4f3d3c0c40944c9a56b243e3aec5eb5adb9cdcea5c456e7aa420c238a9a181075f93b9d7b3ada25b7c468e060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dfadf96301b58babcd4cd72283ee6b0c2d95ae8989b5a60f3158a912e5b422e66db515c0f0e7a203d7caf6d86918c6cd023100f1de428977221d684257ba488c3bef0d6f685e345614dcb9909962f1709aafeadf83fb5f8d1a2986cf99d11114c823150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230501f059af728507213fd5edb36dfcf8642ee4c0914d5168c491b6c84322656af565147a988a78935a461e7f5c0d1dfcb02310093bf1a0e22992cf456e31a19c3b4d060619445f99308128b6ed058847f0201d75ce9579874fb3d94ee44924fe152913b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302bbef3084ac225a092135378893349e2013912d27693cb635e904cd28bae35ee2202696157d5c12e9bc0dde117e2872002306496a196f37fcdfa0175364a3336b71a6d6cb7e8e057c1ba6dae7c3f9285a4d59dc9b112cb34665117e84a26897b09400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307488190a556aa6fb6d3be725b8572c6f175a31ea773a3560a2df0e6897ff3ccee53221a5424e2d24b6f77b47db38f778023100a13088d208e539bd01134d213fc4bff00b5058f61b781fd4ae3cf4d6a4985d83c7196b650c5ed36ba1f2e9e0d97c1e540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307defde32649ebadb02e49017ca902e4b9fcff9ad5494eeaaca4bb5c688becae216f792497e2096966e9648e3dfc69d4b023100a1287b6f193a114512326d2752f4ae145ba3b1afc11cd6b8531396ea347108d6d5f4875adc4c4683565a9788d9ae1ad40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305afb726d0e666a2f38675c4dcf4dd99a340888ce6295fb51337c2809dadc26a077d4f47550e511a1c61ce87a01f37814023100ae7f56c203e6042ea58a6daf243f32a6d6cefdf29d84dca3f433ce185e10d673bd2e2af5f8d5e272835824da580ef8100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dbc241a04e67671145045ba9c6a6dfe66f270ba006e0d609602ed9947758907593d8d14c12cf8783f3348e63c0263672023038794ee1bf4aa1b34df7e5b3587b9b9a2168ca5bf5f2093381ab536ce13b34828496491d92b70d58ab3d90f2ccf6ada70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a4fa52db2228e9425cbe9be69a7bcfd00c38b824e93ec55b043616eaec488d0f683a14338d675fc0bf01113e31570da023100c6ce1e323af9eaf0fde78c31b2ba0f42fd8d7bd3a56f47b67dfb0e536aeea1ea7e0110a956f5bbbe869616b6174ef5000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082aa7f3c9a315fd84c8f033a66fefde5809b1c387bd02c59bd52a4fce01b0f4859ff5017dfccec0daea17b0787ed900a02304209b7f8c6d7769d08faa48fd72719e6cf38a60e531a754d9e3434784173a88d20c8584e72461421a7f178c458047e070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d67fc5bd24fbd5d28cd7efc69b27b27d2e80a722de99877c98dc0dd68c410dca7d8cd22883858186a5caa4ac3ab1db50230607373f47eaf93bf268ce48b70dfcf03851a80e80a694a185666a0ff36987e1aa348d4ee167c26d3ee362836149eef9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301663a0a330b1f021c6ee9671efe22c0ab8199de2ec3f825fab1e6f3c3973d2869e96982b5426a2e9312982fc1a85bc32023100c5a09b32c169968515f1e9fbd939b556dd6164e5dafab83a9cb907c8f9ff412f26c4ef3f879d2354fbc68da840da46330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b8169b89ce60b22f8e4fc30a57c99a94866ad874547a50848fa94f1fd88202925d27c104784e768ffcc6559a0afbf2e602310082b1b331344c4590fb4a2ec558ede0cc333add0c1e20edb8017dabbb5c7ebb6ffafe003aba8b5a955009617ab8766d470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a65935629793c1411e713303dbbf35889371d05e108147f2d198a8fab62c222f11c70bffaa6921e7eef1da64a8b4c534023100e584a45d7519e659a6eb8d5ceec092490052193c169252473c23b823ab236402bd87f2a115ece6f3dcf5ec55bb67fc7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017c6e743a11f998e030e95a1fd12d7440056ea3d6740e6a3dab3f859188702d56eea0adce1e3d224c7eb586f17a3223a0231009a4a272bde168cb25277509da12dc3f9807d85be3afdf6defa1b2fa42c881143d1fcc4bdf126ccd1052445ebc6b38b5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230740bb0610551bda496a1bf4bc2c90065d2bd60072483c7ba854fb384a4ce8b62d4611868706968b3284c39d41c2ee732023100ee05c95c85320fcdd94cd3689060077670527e6db0bff0dcdcdd11fde862b542574b136bd464756702bb30b0243b71e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad67f71df0f7a8cd7be7f2b95ddbedc9c66b2f1f3b8b4df2ddce4f6310f53da0cbd6c30f4313c13902fabba42b650fb402300622d6aa9c0f1c71b5b96b9a7e4cb05500778b0516bfe94921a868f18f03a31b9354b4e9823505d89bd7a5bf0c1afd100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d42f98e2462710cd33c52d92139cd66418eb57e4c13954e0c4bdad25b052e9ec0f11b1b3a44d5e8d85f4102910a68c800231008e0f784174602fb5d1db9a30660a4e7ebddac37513f451f60751f211c9b48467d7a053870097cf424ddf23c020a2164a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230152167003f94c9e0fff41f5a82607c9733a7bdf75cb7b345c9a62f42743507008c834108c61b5172b7edadb0366b6c7b023100be3a65e68c3f685e4988637c5fe08bc3777b9d47516d6e426c9309403ce606c06a8a319cde32bd0ff3a64f56dca797580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fa8122512b80c7e0f7c84958a58b6625af7d2cf69fe7e5a96677d4fa8d4196e55a595f4b0bf0ceb9cb17ffdc8bcc7d0023100e6a6c90c6ea31a46c9297cef3af377951bc9be6a0cfcce759883efad1b2cbc794d64b5fe1878c53624020f01aafa3ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba51336a454d0d03df43145267fc194e62619a1cdc9e571c87890221e01ad58a0d581843c75c03dd25fca92a1ce09d60023100935f748f5fa8a4077f1565019fa7305f4e76a620fd765c0c654929241d24d806627165bec4a6f8ac7e7695c254703ce10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b2502c40f23e5888f75c8dc45f9bd006e2bc6e72e9c51b567ce06cb76cffe91ef9105a0c6e09b0298544d058067b13b02302c54be1f09f4545283ae1fe29487b368e4427e8c1ca23c34406cf478887e60494fe303fe20e60b66d920f69f3361b3e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310089841bc335449cfbfacca06ba1fb412f38a907b9b7193fc8b62b006b83feb0c73ed35adbf79996b97737c9ef436928de023100ba05678730c75e734dc7fb06a3aa54eb93c2fb1c946f82b25866b28b96883f430db2517257adc4b59dcbf09ed1db19bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023062979aa3a236ade7a67b938455e19a1e3d812f17923502ffd805e0ceae182aa953316ab1cee3328d98ed8ff1d8c00b54023069906eb418f96a5f6dc0d9f73820b95ced687e00f40b3a8aba8f8472046974d006c33e21983dc641c2c47bb0a1412e030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d9bd45ca2de86f1ce9d6bf3650e2e09c548fab33b6e99f66e94409a15c41c0fd15c84ab339cb5b9ac4bbb4698d697d0002310090508a22ddc436c6b30860bdea4dd97c2c949c824072016d955f981f409bc0b05e9bc4629972057b230dcfa169689c170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c7ab4bba828e7edc24b31cbc87058d0b43309f520f402e71c8876bad16bdcd2522d282413cb1502db09b5c6c24f4df6402307d1720f782563a04536018dae4141c575148163edfb67a1269802e7aa099abc0f0868b812a4c04fbe495da212a0082a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a2db8a3573f155a0bc4d24812b54a2fc2a5771291da5631aeb957680e9760c27e88a74c1d60283d3e98ed5ca05b93f8023018fb3e5b0f4928e7d314b1a7e07ae03d6bd88f14c69937d06351eb7bac76219342e1bf957b5fbd7ffd156517abf0d3830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc0a5643bba9a90add258a9d2e2acad3269205adc6cf05ea29bd1b520c7452ca59091efc231cb73fbb286e19905cee410231008be46229e31df59f84b30544f9ca803b800bd397fc51f0eebd3520c0f8f553569596dbc19c3e4e92c4f9e08ebb3438710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230644f959719f421ee18e1ffeaaed35e93a9f4c7ae294cf28fe36f6cfd6d341d72735e0a87b3f1be06e0a7604c1f620d10023045f37f52acfd1e0e84cb2dec645f74d6684ba748e17b2a8ef6bf3a913f34f7af95f9a132c2e01add7a9686244f1759730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074af6fc6a64a4daf25f69363bd89d2751860b4a23dd72f9156162ad50fb24797285067eef5e8bffa060b11cf528c354c023100c015d3f660589134be0e0453ac07f2e84050b4e3dc791769c5d9c8dfb9127760e7a1a3b546678c34437cbb145744b9db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a45d21dbecf9efcc0ed59592b4f35f8aee097ac4a475205077ff1b36e6e7f6c818938e5ea5c3e30c3192d0549930c384023100864b27ad53dedc577a57262e848a1a7c0139eb10fd0fc2df9cf008462100ae6786789f4b263012ca3a8d9bc60124f51f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043bbf856cf412e13a173f1de787f2a6e6bee081b8b8cac07093a87d8c234469cc6e6bdb9b520c4494207769d85d80ace02310092997e1fb4b4b7e2dd539e8fe9e5b1911d778c465fddd07e7cf0490bc0a16604f16fff21daeab268f38495b6fe5f95270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c8e2191ae749d50217e2c883e77efca19f9c5c29b534b91931b1c1aa1dd1bf1c0f3c841c1d5014dc8546a167f29278df023100e0705dff0e248e70a7893288dc82e0303c61a16eb295c0f69ad10497ceaa23517e9d45f4567105b6b8042613b7ce58310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c7dfd1b23701cae424601f3db3fc78fade30c2e506e89b9ea1134969c58a6838710969865c46a08b9a91818329f9e97402300680303941a7078bf6ba9a708516a44c758046c1c04a84f32e2abaa6109f3f376c4f089a9b5b14a1de8f82d8015aa3ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a92069ac5e37597adf137a396b0d30c5be95e763c6a63d0620614f80a8ceed3a8cd8a555dd898f3ecc50766b86143b66023010112ce860e28142be3fd7cbdab96485af26c8153987ae36962f73c500917790be80fd76e4b9e99fa00b53e070612bf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fd39c634d286af787b6c289185d0419408d490f00f56459722d54700a9318c20a48b65aab8f4f32c3fad143211de2a20231008ed718954a7f422cf1a6d8ee0b274d3243f2ec814e44da1430a802c62d131e94997e3be4e3955960f06d01a7552a9fbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008b0a7a319993ad3b50def0eeb4b37f851f623ded0656b75d9a4166f42b01e8413715695f83cc2f480c6b3bcb9b3730ba023004c865b4ca831d027a11c79c76ae69b67fdcb108058ba86d00fdc0c0287b3a866641e6fc89849722411352805491d46f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a89e53d9cec4bd1415c30134cb169e0351346f7b84ea76d5e23e904c9c8a203bf1ea2f8040cbf66f6da7e069ceeab8a023100e8124f2b985dae93dddb6fb67ccbbab0d790b5fd3490be3aff90a42683ec5c55b7471394629976c9a1471648c49740210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310086a3405aec3b673e610718cd7d6696481427fe6b3b140b1fad0e8c29dc68d717e1bef685d9beefaa5cea394488d9280e023003de3003dd5ce466f77cc60e01fc93c8eacba8d91239090ad1df9a87189e247b62442051dcf95f6bca7910751cb527010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230122018ec44c0f84945d6675eb74c7f6c1edf8deac3975f976c658755b362350b7c02b5120417c4026193e212746dd98a02305f55c95feb333dff370509e59dab5558caa9ff6096615c2a3f133719a0961e334d127fd9b4795dc393b4666489df3ae90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a0bf531146408e6e89f98835138ea688a2008b7ae3ba7bb67850893f78b2dc7dd721e84203856610602a74c979ede0c2023079d3acc3185f93a02230cde163a657df74cb4e3d54a88d3aa65196556b85da2f2174f31ca382762bbb7178443be87ef50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059f409c653af715a1c0911d3c5e0da64ddb3e1f87112bd7cb0f9d9fac171a7792a7e129969b896fadca278fdc0bf8e00023100eeedec92bf100f88ddf4558c682cd56fa984da359d8787598dad29a6d9d83ceb13728ac8fb2888cfb6adfa72a80c90550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310092530cd7ceda8fb13ff7dda70fad46f6f23244e75939a5c4b08694590b48f7dabf5235fd7ede9fa6d9be219e571db7860231008a25f57e95a5f4947262cdd8bc304b465e1151c660514ded8d4521616507d1102ab1ec6a6798ffda88af1b05361cdd9d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303094d3998475c0943bcbf2fd31ad870d107da1443f143a37bfa4044d2e6263e36e6b5ced88f50e7517f2f2930302f152023056d94b404022f3e739b683b21dc6315624f78ae5c1e0f639362dc4c5297a512d5d5383717eb5efeaa59b215600d663580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cdfa1f3ecab4fa3f3690f9fabce215e9489ff85c91a64fe2b803ab644d5be36e1db8fde29be269c8a709a60052b05ee0023100b7f862df386215c277148391ddc988c1f7902d9c0f8105f5949d022be8441dc445a9241587c97ddeb6746868c0ac21040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dc43ad247f285a8a6b73d28f8591bd867083e657cd86c30b9fdf606a4a4975dd4cad65194096cecd390c3a3f2f80d37102305c614199f7837b52dd33424944e2965faccac14a7fb2bdd3c60d0a45668e5a7c603ffe6601ede24adee298421a453fcd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230197a332c3eee2650e19306e8ef4f57628f9c857b56cc19afd6f11bd106c128ae7634d47ada2f55df9b19bc2a457f3c8502304e9ec87c3a09d650575bbeed6e188158c7f60332c9631952a312efa32348733181e050b7dea1a9e9cba3a7cd9b973d3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064022f7810fdbec9534038692d956deb3a70414f417affaa8c985f21de69d258cc24f9ac83bea7b435be77c0b3961af55bb1023100b99132abcecb37be25763d8cf50dcc5d9e94457fa6a50315bbd791ed86a4f1c66227237a16b30756ed9f854966ce31650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a5d6d6778f27a03b630955be78f60719518df024ff6d071b0f268c942ab980ac0cf99dd3d71b6403ff07333c13968526023100ef3bbb52ba2dc7a17d82ed5baf8adb3f70980328fb1cdb6b9999b86bfeb9f493a05dd55a5cc0c612cdb160c6e857b4040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebb30dd3fe8006a94f13b9a78afc65f856a4187eab83e59f39553f953dd7b600e6d1fb5a5935abbee161c53581b738e70231009c9a8d0fbb6c9c425b31a3abb03a4a1e4187961492c1f3d532871c8191d661320ff94acb90eed28294dbbfa4bf245ccf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051c9e9086aad97f226f90e86d15d732cd0db6d08a6af284ac5cf28126c26a39067099ed3b74cd80d531627b537c0a137023003d0ab6474e7240a34a2b8426b5ea6550fa7f90a7ebdd79d1241ab7a214ebec38577b614a03f0c2cb491ac58f9d9fb210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307e338cda0c985e328bd7fd71690c5bd8eaa9892642aa84495f6dac8333fdcf2a57aaa7dbd7797e3e0a14ae611bcb589d02306001d4ba889abbeb2a7a91eaeb68c9eb8d762d38dcec8d94d51d65180d6634181b5e7eb697de3d1942df80533419d81d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d01f25220a84b2ca9ec376bf137fc97f4fc8d7efe186d1bbc054ce1657a6544a2aab61982dbde971685d6fcb133620a0230798e4bf59b3e539332c6156e8be03f556e2147bd55f4f278c953347ecfbcc5c00c25121b1942001c478f3795e1f8ea850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5444d8eec3adb281d61fc59e3d063ae52e6b0d4d9bf9e94b1934bc8aa54bda34e4956ed555e410a8e71b79d8cd91b020230759e274b9b439d3f459a8ee681ca0544294cce14612889dd38e06e5cba51ac0750e8057995b366b6665e420c8dbf29800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302551e90056ae059a4176e21987c3122fe0346bf1577a417134365df84713e427aa11a2e83d585bed93f2248d0f9dd0b8023100a370de433edd054ccb31a8f92eb2bbfbc6c505f56cac530281b3dc40c19f091441345e946318823ab2e2e8b787d1d10f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f3becdaf8809f66b63e1499b9b3106caf4d636624e176887e54ceb20ea6460264e8c2cd00deea14850ace71ca119be2502301e9d5e2b5ce55b62e5c66261b4b3af706cb17f49c76f04c1b9418c15e20add26480d4d8b84ff586913970d6e615c48200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fa023211e5a479ced579d4946d83680a2954b064af7c59e39ade35bb8d86eb61e112fbe91b47173e7ac7359f21a352b023100f15955804d92ee6eaf7db0b4cb6255c81d77982a0aa07e02518c1d2cc05f29d4ba88654c9a099a880b90b2a31e14684f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305232d3978d45a4e121cfa8a3139667bf14995ab63a47fb34815a8401bddeb9075d43ae6518e4bd58542e4db89db3772202306c0717d35874fdea0cf2838c2834912f8be9ec941521d3c06fbe544552439ab674f38ee335c11cd1f0028c3cd0df75140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047234e63b98beba0162321e0f30d21241a1d539c539d843e8d61b002657b6a3125fb5874d574904634870b27ca1e342802300cf59a504d801cf46b54244d3c5a067891c4279bd3e9e1e747305d69707e9905c25979f87cd97e766d805f2d4a778e350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cc5707632fb3fea42018043398acf5da66e7a631608f4c9faab156397697b5179d78eb11850546cbc5f3cd58cd05f622023100f85808db8240bf7405dfd1f6e32ecba67006f879d786d02cdec3ad3cfb1202156e6831a3d2c66b8402347820c5d20ac90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fef32056abd2b7dcbd8edb21307788462bf6a0fdf95ef2c90eaf9e754cdf9d9061dfabef6e316b6e1556461fab71fa19023100acc39c653bf7d215d69fa76b55288ceb9dd1b367070b81e9362b57517c7f32e43fb40278f2f845424c1a17e725f8c52e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023053a393e0da693175ba8548f7468edfc58f20a256ce9c26029f3b4bf7dedcb317bf9bd134a3c5a302b06f192ea2d92306023100e333f3185f6c53d48612e40e8cae1baf56c1c654ca608e8fccaa5a3d54e95d06f730b214c2bd48df74d674f5b984a03e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c50094830d1caa4aa6778271ac791cfad2cd39246f9ef800e1b18a18accae122d5ab2995fbcf17ad87f92aac3b00cf6b02305638f56e6a2e630c9788db83535b294024faff4a72b408a0e1499f7e87dea14c46ff620d709083c144123b1d69ea06770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230408bd30c55ff1587ba380da3a8e62504faaf7ff480725f33c15d64054f8a6fa1053e792eb3cb0dcf53b3f8662f58364402302a54e8690dd219a0c45270f389b30c5e9a3e876a23046abd774b631cb179bacbfb499f07cc3d4bdb74b270abad9999a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023049d4221b71ef4e6454f4a771f7cdd7f8bc9d66227cb51bda68576c8c4bb29a833b77fe37e7584f7d042417a7b23cc69a0231009998c360120bc12cf90689da92c895cfbd53b90f2075d6774643df01d24fde402fb29223e94244ae65fffb8851ba73c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c4e1aa58843edce463da0f7aaca278911eb07fc8ee3dcaf87f4c1e4857d68322a6139d924f4ccd21e6d5b3ba2779088202300eb4652c2c26ad6d21669849dd217d2831ca19478ac30f0361da6cbc769fd20dc90d901c7d3ab01789a6420ab27d20d40302047c435bb5006730650231009299597f09ff39e1bb984cbb23602a089791d70010d08d436dabc082155b26c96300b4338c46f6700a25fb1fc5600e5102306252dbc84b04615260e9d1241768c2553f355fbc8d57d5c25b52520092d06a6685018393827e6c451014574e24f6c8540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307647c2dca9982d28ded46976e625b6c9069dde5ac649c954b4c2cbc08a53fb18fb78f63435536a8ea75fe50cd9c3e9500230372b3afcdbd82003cf5c9df7c4d1f6546669920b6ec5ed603c73a24390b09c74bc2db6ae5412534c9edbc4529bc8a6660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009de733fcad76030e70748a94c5c5880cd94aa05d324e970492f607e37f1bb7b83947ab53331a8c44b8700671aadaaf330231008877e4e4f4716228407e93599e5d727a4a0f90307386ed8df38dfbcad4f08c79ce96c9e3b95b84b51bf657c85c8594420302047c435bb500673065023025f3350c86ded9ca12935363f093696c17ace5a683675a6d1bd53c5eb515dd73d723734f090ef15b15608746ae3018a602310098f024aa094e31cc44e3f8149bdca9620fc5f25dce35392492db12980c243769e65763afe09aa9e35d5847bf490f51440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c0ebd826427ae99cd2a306c8b8c60769946c89dc28a258a094e74aa38546bdc706fa57a8a33204eae7eb38e4d55c51c2023032ed86e23caeec5e7c1b7f5679912599827ee6834766ccb08e3583962772b37e50a93f757859ed39c2861b060c88ab3c0302047c435bb50068306602310081006bdf72818e577b0ae75481372aaf6853edbc7c43a949866bc541aa89fd856808e51389b3d4d5b1668285740e68fc023100f34f489c440d191ca53dcba340f1856bb3892d5e6734a943af43f2134c2c2e2dc748ecf339f9a1a1aa9819163737ee4a0302047c435bb50066306402303d74be5b6a4498d7cef88a116a6dfaa3392b7c4ffca8b7605e35f1d4a475ec8c8d771e05cd3bd41afd363c51393d51a4023069b109b85eab38829e95df6fb6031cb3de6f7c969975120a88d71fa765cd682cf3d486e48a89385befa8837d121f55ac0302047c435bb500673065023100e3b3c2a90f3f53619c7770b0c27af3a0d88962f8edcaa5c5919f06c2c4cc14e9b660d8d2792f61b6ef0adffbcc5915e9023060af58eae9e41b149bc8a5175025c876bce281663ce5670da7bf1458ab936438c9679c40c7146be3cf76d9aed386e6ddyeQ{{ U]#u^l1Z&Bc-mM~kjqa2 e!ʂ.Ϻc Vcb%/(< 2- bt).̀ a22"^ݯ,sO8R@x|^QF_NcP!A!&NJp.wtz+GK͘yk3Eq3ާ-|m@J.ɾ1{vUTrwi|ŭtd"{ Ж-2: }@C\mKf\{c{^Lx8|.Wzp'FdVU]T (w]p>ȵ?ȵ d ) mC VpN>8N N yN N 4N N N`N44NpHppqh(q8q`9{`:v`>}GNHNI hNXZDYZX\ZN],N^Zb+9d,e,f,l,t,NuhNvȣ*ȴdȴhȴȴȴȴȵCkernel-rt-devel4.18.0522.rt7.311.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.eJBx86-04.stream.rdu2.redhat.comMkCentOSCentOSGPLv2 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 && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiXM CBUcn<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?(r\?PL^4b    [.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}96x=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"@)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤AA큤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큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤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큤A큤AA큤AA큤AA큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤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큤AA큤A큤A큤AA큤A큤A큤AA큤A큤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큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤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큤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큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤AA큤A큤AA큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤AA큤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큤AA큤AA큤AA큤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큤AA큤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큤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큤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큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤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큤AA큤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큤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큤eJAieJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAPeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAPeJAaeJAPeJAaeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAaeJAaeJAPeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAaeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJA`eJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJAPeJA`eJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJA`eJA`eJA`eJA`eJA`eJA`eJAQeJA`eJAPeJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJ?eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJAieJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJAieJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJ?eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ@TeJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJA`eJ?eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJ?eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJ?eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJA`eJ?eJA`eJA`eJ?eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ@UeJA`eJA`eJA`eJA`eJA`eJ?eJ@UeJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJAPeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJAPeJA`eJA`eJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJB eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJAeJA`eJAeJA`eJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJB eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJB eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ>'eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJ>'eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJB eJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ>'eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJ"eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJA`eJA`eJAeJA`eJA`eJA`eJ@UeJA`eJA`eJAeJA`eJAeJA`eJA`eJA`eJAeJA`eJA`eJAeJA`eJA`eJA`eJA`eJA`eJAeJA`eJAeJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJA`eJAeJA`eJA`eJA`eJA`eJAPeJAaeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAPeJAaeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAPeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJAaeJAaeJAPeJA`eJAPeJA`eJAPeJAPeJAPeJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJA`eJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJA`eJAPeJA`eJAeJA`eJAeJAPeJA`eJAPeJA`eJAPeJAPeJA`eJA`eJA`eJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJAPeJA`eJAPeJAPeJA`eJA`eJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJAPeJAPeJA`eJAPeJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJAPeJA`eJA`eJAPeJA`eJA`eJAieJA`7c33226cb536132069055cbe84ae4b66d14a0154dbece27001a0b1d93c21cd9043aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d78d6aba5d1df43c471ca08b1ae995b3b1b6b2322c5e8e261766ec4410a5c47b6dbdc8fd11c4d056338e91463cd392d1c99345f41479a4baead9c291d3175a0a65a8e753002ddf5956cdc88a901045be27a10ad25e137ff22216e99f2db8642d2c4c357a8764f6be8c3009b3bab3c209d1fe336c0f219bfe0dd3f69a0d4ea0d0561d7f202d0948b1913a86b3590358a83f2b9d0be5732bc5e558a4c9ebaa928fe0a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803f595d70fe2e7583ae1226ccb345db07a5a68cabecc7088d65d1bea25b3d75e7cf1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e320632e52ffb9402cee403e23e94ab045f16495fee63b72e6feabe3cfd4b042acc22a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7bb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f29961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0c09679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c1d829e57cd5e5bfd4dea82b87c78857d585fcf53da9123e2905e1afb95bf9d90156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0870b0af69b26ff365284413d4e8c152c32c343d2560f6e212a1ea2eed90d4d132ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2d19e3f1e2e48289d746d6035a00cd11f2fdb3d0d33a45a3365cc697a379d5093291437e78269fa16df5b668b653972bc690e67f2b31836d1b181b8785f5a95e543c055330bc622e8cd3ed40657691d5ee314d00e9c625fa2274786f33d133c49aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5e46daa30383c0370d1621af8de9f4ef969d2e29a6304e76805b19c4de0b23cddfa89afe5606cd16fb841dae5b83c357ec47f85f9abc84ffacb63affeb0d90d94d2b632175ccd85d9a952d3d17a41c6189375e5e672b8620dd4b81bc0dbe95bb355ba19993966103991811c07ad608b2c222b1a848959420df5f4301dc32e1f5c8ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a007cde8ebbea98b3122cd1d3ff43bbcdbb55131f5769185a63ef66045c6d6c9ee174dc569725506584b797445d7c61effd040c55d62b03bc8f3b2de41eb5eee11286cea4202bdc67fcf77fec051e444dce29a9e23fd34c267c780a4552f50b7c3656b666dd0e1683dc772eae1cf29df5d1c3a06c8ffbce51faf4e7dc83fe366f1d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0ef85bfc7cabcdb82753f3c796197f4a54fd7cc1b11af90b7abdd771ef7632b4dafba24f8fc00edddaf55ada60dfdda17e34da8b355d2d5351523d0ee6ff23c46b548d63b3f829897b66ca32cee54dcfea94a043369ebab4cf9309629ed3aceb0b4a487f44fb8e42e229fbce62336f641746c7647b591dc401e000b83f8d641e3fa31cb21bada1afce9aea71d61196022bf263575d1ea41074360924c1620afdc0f876a723d7aff7652b5fbb1c69075610f251e98f9e862b0734a66e7b77b00fb36231440f694c76ca6d7fcf9dec9b0162e41a16d67464bd351e386583bb9a093968873a1bcd09209c3c2c3d754b68492c8a02c5ecfe449b9842cba2159d5cc7dd7558ce74ae77b9265ff825ed2c5d4c3a982888343e6cf7e7939481be40ca9619a270129b0558cef3a1c558b47da022392cc06d3564d1dcbc86bcb2d5bd725f4eb9043a427c09fcdbcc00792e2b92bea676940e6cd410e7cf52343497c2d2b42b623b44ed8ed5066158d89aabfbe48b9e6d4380df4fdebcb4a383f69e1776481c4f8f3f5845848a04a95a1c6c7c4dc344de63d91afada0f55f3ecb7e931c28527054bce4b9191592450b6f0c4b2c4f8c5bd0e9ee67136e070789f3a783833244d672ddb5efbb6abe052e9f86de9e46da08bca110cba75b084d7243abd462eac27677448ecdac6fa26e1fd4999368a08c0165cb725824b932f80847bf8a37349409234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4da6d3f77cdabebb35aa82a8fa0cb0b4c48fa7eac287735b60735ddc9537fd213fec13e1ac3b2d4d9ec2889979758902d8394261aad42f2d572479ea4cbb3039c81e3aaa9781ea5680c1f3a56ce2101512e6e98864042e0741143730a6935b4988059cef1583e4bca560ef2c6306a245f36d8e28f2aff8b2f83b1f8b2cfd6218c637880785e133fc146ac8919d8cb900ab5cd05cdbe04ca13b9e6b1be5d22eaa5e12af1dcec0a42bf7d221213a14cbf7544fcf29156adcfa6d31ad5456d8dc1ce36c50cd103ab630f08e275c2a2c16ee7731c564a33e9df36d60b7624d34c5db440772ce8d25823580425aa9641fe7fcb9492f3d88d60b6e80a66d5ca20f7551fc92502938ae2af6af68b9278efc4ebffb4c2ab466ad077ef7105a1cc8c22db9271ff8ce0b240c7c748b8a29fcc9a35eef2f3502a360e477995a304b256047b384ae9b6726360f3ce2a25a529e201ae7997ccc5a1c6e4b03ccedcade543ffd1ad159d6718ccaf4bb74251ffb879a61d150e5d9d294923e95dfe5331f7af75f07ba0f451e8d20c3e7f26ba250115fcc0d773e3b9276c1c2fa9f41a40f4a824529989bc86e5a222c49ad5b491abcf90503aaf182ba7a0f1468d8650f669758e34d74445297d7486e43fef64e2e771df99f46037b16af34f84b62d5d9bc2629e088156ac0de1ccec72c8617212e415b36314cab9c498380eaec9bf058d90ccf46ae31bf313a8cf2b4d9f7aacb7e3dee0f66f9fae50ecbf0db1c6b6992a64a21f20621c882c3060a462ca97a1ec3bc37c98842ff5231fcaa8651ca81f14f5db164fe1e20740c54b1d46729f622e1ef14918dd679e639f9b7216a0b8c6a84f796f63ddfd564ef9c5b33bba3f736569bf8ad9559350b17e204508e3ddaccf03a549e79afd0b945a97a5b2d01f98b2220e826040bb59fa5114bbe73ee62b1499b68e657d5261bc7735aab0262c83a14caed2f8e3bb4b58887edb40ea947d79e49cc787fc1dca75eeae1c7d2ac13a5c2868f79c6f9506fccb67bc19242adf4b469ad40b30d1abccda0002ee98fc2c111b66ae27a9caf05eca4b31c2a129206bbe45848f6e37f4f41e4e3f3123e3f0a0c01c3dbb96e759f1f4e5298271d45aaf51232059942cce319ea5012b957dacaef8ac4aad37d13a540180b39845c9f14762b2de71bc8c59a905fe4af9a88b8e95369494d6415d90431f6e5ce123c9266432803d6dc2e240a88b86b21aaf7fc09dfab3e428546c6025bddd1534c335bb3e7803a2b094fd2a2d80d3026c4447805ecc4fc9e7ad0b7bfe16a03914b1fb40a6d23bc82bb6ace998e8836df210af28fead64f1c42a9c6d07a2cbdcb6cc855ddd85665575a07b4a15663b1012500c64ed34b1e6a1d56b78d03be9e6d3eb4dffb8eaf2cbd50fe628609769c9d4f5d3309096c26065960edae6c6d72eb22876db27efbca6669a5b99975ce361329e31d3ee5ebc7667e5a2566db0fe4fe3b38573d0c49b5b0bab5e5e735ede86a597fda49377f8212820454e6e152443ebfba5b4dc2fe227ea5819ab0bd538767db0d40e6da6b1bdbef5be614e5d504f232f6001a9a8567dd1728c9cf2dcbe42d836afbabd7b4f79a964e418130a52442366d766ee44145d293befdfd897d46ccdb42a79dde32383258c1ffa1230763c5f5ffd7413caca5ffceb18143d9a831ba9d600a91114d459c0eeb97f1f1b1da191998d656013f4e8c6d438dad69717e8ca0e48405848fd6e87b74ecc91fa474be2a5731b363e0aacf8096e2e0268963b645f2afedc5501bfabb71108aa1544bf3c3ca73efe476df3d20a742bb82d9f5fa5b7033b19d4197b958f6d853be13530c2bced20329af46adc1906da1b1c43323b59d153b001ae3f647d3028634d9ee086f38aee0eab7ef210eb7968af61adb7d3091ed206efbca5ca4810a3222637faae3b54d757f8777ecda7f70097607468ec855cda3cc254d97b0b4f74a99bad64519984d3f2f3919094377552f93e1b77a0c2e5f6bd697a0de1523df4c1aa5234d469137e7e90c6b769f9c9f331d057a892a5196087efe850adf84d978a79c1f5d320e48384440d1a5b946490dfe6591256c2417c791271d2b755872731887f77a7778e16be8a564fcf41122b45058714342bce4c1f1118c42923b50b0c1237da27fae7177f3b6682a955c9dced93f9f310a481dfc04471e557a29b2812f68cbf79cfb67ca5f555181997b95cedf55368fc034d8b7af761c63666e247bfb84849cfaad3ae70cf243efad2676a48e2ed4b4a46ca4d6fd4698621249d7a7663652612bbc24ae471bfc36176d55a7e47ce84af196cf2bda867dc1ae8da41391265f6b77fccab696736da4f0f7b30d358dbe49e4d5c29c0b0d0d7d317ae43013b749f7faac15291fb80d91f345d852856b87922f3930b4f885c68efd2be618fa99a104080871949d208db04bc32297abae2e3647ac395790e9e032ff3cd3015aefdfd3bcf8a3d8674215da59302ef97c0fa32ff124446f27d0461c9704a858e3edfd2c00bed9d52bd08a80bc2393ed4ad5ebdd366550453d35a3cbce531b46394686bc531db56353626cea2e2f0b1b4b6acdd505ab42bfa3ba031853dcbfe048c8d023c1833039554688f83c0879ef336f643d7c72c520c80efe80197eb506e8faacd9bbf39185802c9e59bacce64590e968072f0d9a028d0175b57813f8825949f391b3c3e89148f2bd43c8faf6eeaec3ab5c292363830bd00d8a861492f4c92d9f6a134c7720ccbe97e978652406889ae86172522b12c07f8bbb9257697579cb38b926237b765ba3a6e14a5798ab3d2f47cb7949c9f647fd0b2e702e0e3783bfba609bda5731916f936d6bd7df71727ddc35b5cfb904b22a1f94bfa7d9b784dea39c7a48da184d94274d2a948777bda57e4fad4031e31943f3645330cd38add75282f1843083c6b860de0448e65656582dd6fc38bdce8c828d38a55da2d40aac04237c5075322f39a6aeaeb1693a64465459087efb74347944ae420488c0d92e141e0cf36d5c75c5b6aefe4b05da61daea25387894552ec6f256e8dde345b3d8ad68f1aafd848f62f5ebefb094209fd034c8407bc28dd04e8219f792eb3cc132c9fc4a0e0d7cea1ce29a668d2d4d5413d61326cce97b5ef8713cd709c5935f2e39d69d25b93a47fecf2f4671cb7af4c152d5f172b5bc2c544bacad778fc6fe1e6b8e6832999cdc453fe67d7da9bd340a1f8b6806a79b76cfef24337e35be3a1e9a0add786f50e86a813f09aee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f94cb9e7a46077d83f96b74e21127a95a0c254a128b87ce3cd152a1a4a45105df651fee436e45726bd9a413f6f36262517c7a9e10ca75a5d1fb2258108c6976ade161399697fe762aad7a7c21f062c6ee1db2aea2007f38d38c8e9214c8078d0423525d388150b0dc086c1cae9a98966d7cb56b6aff3d79746ef8acccd7c4b59742cdf9af8c07531f400bfd679aef16e63988716708557b550e8423989cf7885b3fdf6085941b6325e44084dc85ebadda8ebff742c060f66667471930ff520b4269ede2286cf585d46567d0ffe7ff67422f95432d72af6204fd9e41a8e0d5efdf32445e1e4be72a3c086bae2806d8d7018cacb0408f42e89f822590807e50be5f97879475c8679c5787c21bd6628b062964d78c48a32a7d8631d839ca84cdff1cc5c829e9d104b577d091a9d77b3749742aafc4b071091a68cc5fc08dcb7ac9d76459ff35162dfbf3eb6fe11a089d0661ad1f6e084000395aa37b715986c1aee4d755d0fd4dbcdfde5c732df23adde96c10750b868134e40c1ff5cf820ccc705a655103fff1497c84b99450db54ab3cf285f8c832910629ecb97e8f9ef9dcfb859f73340065b4cca494334ce5c6044182ad3ec30b639fc15c54fc30358559efa817aaf6a2d6eba19b3632b0a333e8a23515261a2e927ed26e175a52abd437d9517d2bdc1f66f3de2190fc5bc4472cb097db7325cdd85e7f436af653b1c08f8fa554da24893614eae65dc3c95f8873e2c991f0878c653510b9e77eccc324bba37a8edc55b71ca7fabf01a4a9b4750f67831b3302e17fa1388992a58c3fea6720cc501af46daf974b71522080209cdccd0e3dcac662c748d7826f442d0e4c3574a606bee74126e38f8dceceb014b5d7ab34045d3ac426f37aa459b12f91b7afda18f101ace5fe025897ff28e296bb83363bf0230a0ca5833d4bf5a3b809413abd627a0cd1b918b4b8f93166a98f96306867a6539abc816ee06db90c50b0460baf869803bab8c68219eb93d366a063158cce6a1cc56f46c5c2dd4b973ed5e0d981978aaae513f35ce5c622aec9ea6393a81ec72bb25feccfeefd290e36a865acc9fe2943c29c026f4e29fc543128cf1571a8e3834f0c94d0047eb8be5364906436652ab4c5fde70e08ed0a67feb27ea29b2419224d640aa918d075bf6e70c30d665ce5bbf303543d74c7eb2c40364e3c3f03fad3698f6dadd673c25cc6dc07b4a7ee1346fed302e5fb73a10545f4efc3de551e999189e2a49fbf6e9f701e1ae69d0dd980ad2f8f3b0d17b7b51cfb1bd06fea5b1e17ca9ad8ed048c5d3d66c19a2f7fb7e169454173417df306b925d19f023cdbaefa608989d528b4cec8416fe31784429b1e3e346daf7bcd6119fb29ce7ae1043d022444be3fdd1a007d191313c575ed31e8b01f998508388c2127825b7fb152450e8763fc69996c1d3d6edf10bfae33c5dc02d631a8cfd0ecb0766c3d0aa722b778df3c0d9f47b020f14f983756f44deef307ff7990b12a9d0303ad46b9032537392d430ee7d54c93459908ac481e08ccc6dd61ee60c61fcb089b65351c64328e0fc6b15dba38056a078d9c740b089f2beb89d11ada801578a17f0278b6f77c9cf5004fc19723381da1d48bb001367fefce7d171d85267c081e194636c9a53aaf1ea52fcd42a0706a114181fcb01273be766154a36d6ae31fa665c9511b2651bcaa78252b2c842ac0fab37d57cb3174b86ae1d1b12c39d0fddb1fa9b4de2d18d4ebfd7d38f839206243673b15be2df63ce38656dd2eab951cd02238e1815763fe6d0bcc0890f71ee930f7e91d9c29e5fc8ae0b29964c93ccfc6a8b33934f4a9d758c02b93254893b88eec97cdd3f105ba9a8bf8233ad6a5e4d57c3a8bcbd43eb1ee7daad8500587d60b756748682afa7d5080264f9d778677f04548f0ebed7ca92de1d745912c3a7170836b8ffe9f7f3c7b31c05ca039aae8a80e8ad8270cc99dca264f0292d4ff4dbc9c905837fb1b497dc7e86dca745dd40be76c204b011d4261957dd85f17032431aacd7182fc629603a318700618a009c95022f838aa21659648cad8e2fb4edcf16772abec90473d75fe45373251d0b012ce4c1cf06b5ed3d8ff865ec08a076ddbdd8da4aba7aa725836ea953c74eb5552908f0fb0960b9a0b96480d0489e08568625b75583a18a278e72b05fc2b1da1788c408cf9d4a4ed6febb9c1f5ceeab1e81075c7b4db208dea06f2ed1df3cc8a3fa27adfff32b1eb4b9c7f9c6e173fc4f6e2cf80ac7c8b1a276fa724dc6716cca89ce7e46dc29df9135b43fb059203c29fb5445457cf1a1ca5beeb305909dfeae22dccc2561005b68e207c0dab94c376086995674e535cc603f2a4b638ea4831dc58affa03be410d2d21b97118ccfa7572fdd982103f858fba7ffb9292310410b8005a23f0ec9b9804316cdd53fe8a306a9a5aaeab7f917c0a4232d3aab1635891e9a7029dae5b60465b7d8f0070274757a2e145e65d3b9c64632cb5f2e642bb34f3f89d94195f7ea30e995237aafa8be2453cd5e5ec3be172b453f21f51e05cd052d388fe22467a6c46c8a14b8527256ad6d1eff0365142f5a359bbf8cbdf04932a2f9a1adb7eac5b1f3d1e0fc698d296625630efad368eda5f7a90c51901b3438d5deb59a52467bd0380821055967e3d935026b62fdd340850d2a84c6ee394d3e48648149929dd1f3a9691a334b2052e443fa645a137642d1e6bb4f4fb25160f68ba90e8395cb8eccf6f988db92b9196e10ccef16feac6f2e4f94484ee437d50076fd155a044a099ccf42a0d53f55458dd81bb7563ac81b2580b9412103b27bee9bf069971b9fb23857aa1f3878ee7fb21a8e7fc373922cd0c00b925b12d4f6b59414cc54420a6610419a1e280b55e18c90132aedb2c0a6ff9b5db9ba7c60a27e954fbb2423c4b2a8580226a5f739fc934e5fa285872397cbdb033ef0083fc58fcd86fa50f5fca0c1d5bad7f669abee0cc86041ed1e9f11df7a5f1cafe7d7de1593727ed56f89e7e706a2333f58cd34c9aa80594cb93d906d7420b66ed867ff8725df71cb0d3099bcbe39947ecc96798e89e73f13a35c80fef4b1af51d45ca86530565c26ef721eceab2a6ea7481b4f2527e2202049443c959a91cd092b67319995e949fe00f167e17ea6b02e291df82ff15f1ddbd8e593563a18034bd0dac53ab1b93bd31d0453fa17d92656f9a94ddd7d45ba8c000dc3d6905d2a96fc52ec72b601a83758e590ba45340daaa095a2ac19e9183da15bbe914cb35b3ff4cb301c39a0705c8b784ec3226ed6e1a5a50ec953ee2fa296c4ab893c01549f73337d78bb7efe694462dbe7d9bf5c0031902dd081694215453f5766ec1c8700ec2f9c6658dc40d63d2609fb1ccd05bd8ba35aa83458740b750bd9169914ea23883864d076368d062fbebf156c74bb8932712bc67b84c71760fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5ed6a08f90008fe6345857bd4ce723cb7a0bba229506c5dc7e923c8fc4f23a01d8b3a4be0981cc17527f3b7004b5b2f1b7717d2aea8b084cbb2c5fb1ee815dd4312fd986c79f8541bcb34ce4c710ce30795216be25ce86d90acdd53f2bb37eceb60411b117f70414fb93af757c50d3ecc74719f69c684e7fa11c60605da1b81faaacddd7f7611605747e65de92929d5651abba664e1b21dbd32becd56f2f3b27f12bab57c0f2f5e9f9a61c81e5b6cf1ff65008fa4a9f0cdbf6f63dacca23a7236ccebee4cb80d45ae9c616b0d2a2db7a7fac37e1524e3b65331a0037156aaa03f032c9222f9151ab0d67d4333d50ab38a5f0cbee480f12af63d4f02f324ce704369262d7b0b06549c3dd4c7677b0ad19ad1e289db22ba86fbe642cc3cfd6f1b3165b059b532bc50f97fd0a5a5f8082f71c680838ad9829e10b020661566c70b342b746d49bcade621297535781e6807960df36b220917f4e81cc74e75cc9a66ce0c6da602860c40905c959a0e0ae3c19d84df76c6b752e5f14daf474f91548959e32bf89bbea6918c9bb4499b638c2e29fc4ef9faf973bf183ad2dc700dd70549186c961e7bb6ac5e68a5dd1d1f1beaed7fb7140a64f68e0841d1085e7b6632ade7289e0d706540cb39e46c3c28b7b4cbaeb70d1d46a228ba33b8efe2c3bd9b192cd3ad8bc67f1d9f656212e401ec4343f679a93913acdf5e9cf66a2479937c6fb85cb69513cdb02f849e3bd5f047c5e8faef19c1af6d1dfa30f615a52f387e3c3fa9ae1ee1f90d6283129ea84d1671671d6c90640860a213b0c50579dec037b45e5ce37baa5114f99f2166ce02a334092fa47256deb3e38375352461b158d27a3fcfba85d0a8f85c69fb1e3c3c8a29c1670666684d64c1d56658848179c65e998dab51bcbad5468842d554b4aeef07f725b541b67d0c3f0d6a433c7d4bbb2c9123da13ee0cd47e029be9405171b60075a730e84916817dc881c8c8f90cfd4a6ea4fdb9f95f3b1f73643284eee09271f7983a04069537ad0ef49f81caa4f4196c111060ce6a3076998fa555986bf441712a612667f771cb41c6f6c2160f43cbb8d4281dddd3fb13b5770ae100e32fb7dfa4e17746cb41162b6bad12bf828e2850d530bef9fdc0409bf3ffa62f289dec0228053fedc6bfc21db7296f4bc925e4efa615ff225160a80666b9b1efa9cb4e7808c02feb5c5100de464e54837b3b8988c3913b362db3a0b4eee2bd31b88f4a1111240b6fa6f6b48d9bb5d109e93eaa925e702ae3d8f6feaa069ac10e52c556f5dac4be4c7b631fca5fe932411bdc70020c9e311a1cc9747dfdb409bd0527b257d0a5b41c3574e40c4958265c98ecf4cd7ea8b0e23a940aaa515667681612a86a8b27f5408c86061147ac42add7bbf281b2d1a96be2c45ddb04c01c4db677c890d6b0d1e978550e9b7fb19bc7020048951e022bb9ba2f07fb74523c3d5bcdd26cff48587f883e87b66b09039bf678bc9a6d8f649d787b10eb59f7186dafa3e6e4ffdc9ab777954305c6d3eb1d2f8fd7ec9182713dd77d5d3570be3fd8674e316f5f0ff2d92fbfccde2ef14ee67854217fa2b59ee4dbcd22a37d70243818b82ca373fb93ea322945b4881dce3e2c5e3beb9b5dc6e3db8056d41da92244b7249bceb40abf9f35ebb2146f4cfb61c84eea976188394f6764a11381d72bc0e052dbeae330c4db04bb0ee984a3e751c561094ddeb6d0596840d08d5d04f0c20ea333ffc7ef973b2a9eb5888c5e38c32fe593a42b2e04a1400d7dc77c6255c2c70a131cfe8c5c618fb3e29bcd1e111a9990585d83e474338d34d842c0bb121d1ad36a129c649c64c2fb57cfcd41d953f1028dc59997ed610ba7c0d907a60907cbc460fa2d78317c30ee0bf2d5809f88ca0b0d5b778fc9d1d8dcdae9e62bd85962ea721a718ba755ad0bb961eb796d8c34bf98285381f550c53d4c3607acd4c806de0bc016eba9afe6748d34a887bdd32ab18f2777ad3ebc2169a3c7b33cfb770fe9a5db33b4d1f9ffa0ceb0f0c1a5a3bbda94d5b43cfaf9edce5eb87f0b27094aab1337336192568e16b110f43424061b166238cdc6c911ad5b022462a456330ea527a9d360e7d7a24fdc057fadc84e9331b73a0d9d5feb019fa092f423d44f763e3fed7d7c85b9c39327ba5ec653dfabcba2386c388f8cdec4d87a672d49078c840dcad1e938aa61bd68da6cdf0ab45033c1f6ff27e8ceee8003d17f81a137eb947e769be31f1a6d5e7fdaa1ded63f3160cd59bd03c77ea5835b96dd3b44b115dcd4c5fda0ea9cc34eafb9955248e7bb4897e7ffab6ea9590e20a5f58abfc933a32ed7a877a7000e6b8948e7f5a9e0b2d3703e45ba8036166a48d0c409536d9c58f623f3c53087f6714ab2f2140368af5cd15d8ee3dfd7802b16c9838c207bfb3d002f8304a5970a4cc2f11c4b45e3330c9e9df554e3fa7cba85135ee579db7825db2304d8f91a2201fcfc570606c506aa27dea6a6a2ff056e28cf946cab8db96c48745653c20f64bc8f84ade9f31aa0955e23208031c08e0082678fc43febd319892ea5f2526244f15368749c1e5b694e101b48d58e7f2579950773c11e06ebd1dd7e536c4941395d5a353a6d7d3881debc8072dbdcd1030deaed2d7f173bec6a4ec8d44b503f361154ec4d836961e4d450990e9ab8339d86df38bfa4fe70e9709474e230551c751c5a711047ed1b17483a037e17bc9eb8da3259cc984b18fa9f2e9d8d86c4c06b7ee186733608b96bdfb3223f0066e65b2d2f219e9e23e7657d6028ca7e48ed672a2eafb80d633797b18bd5782ba93de36f5f1ac929b657baebbc3e1ff67ceca96d07bfd721536a9702c9ab1207c0066b522014384179af17d648019b424ac2d01d7923fbfc265de2f7d118b5f4c177b8ac825e92031844e963796782c472670c51c2ed3a04dd02706bc54f16f1a58fdac06331da3e337c054ea268ad1f7589fb5cfef82435df1652eca9df79081f2ac578268631a841ab33e77a67e91f5cb969ca1bfe5f0798229c66b0c4edde18e71909340c6966adb641cc1c43424edd490721bde9dbbeb6b17a2a690e43716d50d1d304a01f7bd20109d8f399525aae25748d15482e4d856addad2d92866158f1c0649205b733d29f14572adcaac7d866af17214d65b40168a8fccb43897134671fbd7bce1b9e80e3656b65e1b0cb2eac0a5e1b333ebfafdcc991d62e53e4cd7c1821df7e1bff6f310f70f610aef1b325e6860ba203f6907bf7a3bf23c30d231f3f355e4a1405f06d845aeb8c0c11adde447690c72e80ecf518ac95d365c70e243d5db31d3e2310b22d3cfd5d507cd9ccc243703d918c9b2768fa8580835863125b1c2c4cd848d166fb83f91b0be522bb2f9625fc7163487e8ea21bb53164faac20bfb4165f3c2267c199b75ad78a39f249597e2db015e9a564d7609a1c07e0ee8d24159b28cc398f87ff2ea5d9d1ba7e3b669d8d7d7551ac93620cf1f3a5b493a62a5cfda579a3602dbb0891fed8e46534cf4c7e7eed8b7360b79b4990de24555382bd4a22fc2ea4aac72ed4c2aedb89f195fee0243ffe6db71a19cbb626fb267fe104af843eb742f2b2998689b12c71f29ded714970570c1d28552efd3136a6bfb03d79ff5ac94695140856cbc31425074f02d1030523992dbc9b8baadc14af27e2d2ae86aa11bd27c5870a3488565dcad8acca171beb340b104d0d3eaf7ebecc69280304155877e020dfd75bee40bc0360960507cb0c0360b608290654a53d55302f995f205685b587e99af8b5d3b78a8a5ccabeb8b50c3bd91842e2f6f1f0694fed9ad91f62684a8df434c12f2c65ba5c9c148dfc352af41e6ccec7ecbf0cd5ba55922075b8e61650602b53c09a04e45205184df8c35faa886b6d551fef82919dd981eaaaca747597c4b44a3ce1138d264ecec9ce1f5bc2f388e8e7447a59883cd4a3095ff616bec658ce286e0ab165279843cbe9942d43732fc97a6302a5d60a2235646d725e186be8c6df407edcacfbfbf4d06545dd1ce13478afd230a223bd71d7f4b520f97d2c9f55b345d0957a3dcd07d62de9789ce31106ad37e646ac3c8eb185e10ad99de4112857d142ef6ee019b365c6338a6466cc241fb68a91080e6d5db2f84dc25cbb61d418948844f03d77c46bdad49a5d069e5f6de17871e9b754d959f4e0421c9538d5b3f1142fd2f30256213a7d8769a0df7be537a716450d3154ba2fec5e76af71707f23d636f5dcb7d21689b9a44017c59fa5a23b3357d9540a8943e675ef1e879bea225e0785aba75f4367213e6d10f868d3bf4d583ddb2abfa330d9737ca027e08516573c72ff41e7318d2480cb22820666f2ff26f9071bc1df8d28fd6c6e494c81403a85bcd935e618af9dc148bd271915fabfd1247f3e37b3da8ffa1fb829f72b66cf723db4af71540c4caf23ba4b15f68895ba60f9f7bec920ab92f3c8a25a84eaa8ed5e085c8996a8ea5c42ec325a60765d2c5ce113917e1ed91b7a16d9c36fadfc0c4521b6b636fa574aee8f470e77123cf271e77f307b6891e5ad66a940c8d09cee478a6c9952a51472b3e581697a352406036c4a4c5b3eb419e7ac8439e09fb28f0ad919069adf15452467d73d90cecef6c93ae466a624d16573bfc07350ba5c8f3565b609098e10a9f031194b4c922afecc867793a64d8b8a588cf45e75c88fd19de63a199a89b20763c24d1043ceb259233246417d69b4c538b4a259a8d9c28790801d09baf24c1e14b40126b7f1a45551cb136814dfd820655ed430021f10ae5a85ade06ed3aacf644d8a7ff52f88f21173503a3724690fe46afaba1eef901e6e0e81e7b56210bf81b18f85878826da7f2d3c23510ff0538bcb25217c4b2188f62025dbfe2db72b3afa8ceabb89d057082369dad64e0bccd5a0d9c4461863ba2b44ca686f00b55daf32bf6a5986c1f3aca8355495b3221e2598a26be67a9273d159c1d79c9daa6df100b6b711c59905e3796d7ae977b5ebc34828b1fdddbee77ece804139cf71fd7a5a3e8f5a70e8403ca4b3d4ef2d768ad26d2cd25cc91884b8498cc3c760248b7ca8ea92f217ca536c7a9c7aad2982b0da2edb05b00e986dc25b46d646e1f3ca84e482002219a44bb9d1915ab7ad8d7eb6869a75b83b7127f0adc8ce2c0aebfdddafc2ad1a5dc6cbc93be6c9eabda74a4c1f916294bf3c450449d508ae15ab7fce96a0543b3220bfa7a5bba5f6d90e2413bf06d2438c49f6b46b6631690fcd8d5c73e3226407c7f72d7fefba608a58c764184a1b01732a27cddf124c5592ff508183fc04ec95311aa5f327e8cd42b67161de49127b292cb5adf23df025190acc6f205c227059c1c39936c281cf1d7819c3bb1c57e3c745869a8907e5b7a2cd0f9f78cf6cd66ae7203e36180691a87726dfde0f7cb99facf71aeca3f7864abf1182d7682f57a52a462fd50ddd57384ec0af9da56ac4bdcc7e465c066bb037a06fd2744b71fb5039095756b1245a6469c780e9f1ef44e218540b9ea50f1b95d880a89866398d945d4b9fe798b004b26258912457bfd69bc54b44553cd9c7f05f8e2afc9ebe6e7288956807db9612943c060e3e073d2f7e439f54b3fa282cd3221917745c08cc39f4ca4caf37cd00f0d564daac9554970140d9fafc2086e70d74e65f57d603c839a3bc3bedf1db9c079f4bed420d5828546ad9d17b03070c01063f94f8a4b61c08505f73a7d43eaba65fcc22101211ed1de3839fc999869246de291f4d7c40f1fb9e561df407b9a84ac2c17b953fddf28b6b0754b93626b29297cba5acd20949ad590bfbc1c4eb039f48f84d613da6426c2b229eb1a9426aec24d1221c6b1c52cfab38c1d05ca58774cfaaa530bb3c5e7ae0c91717f1a579da2f36648d41794f11bb509ecfba7194e3f1c2e2f4caf21f548eec2f0838f8a93d8fa966ded380ee3b4471235ef136d04395ec6815400c65f911c693eda76667495f0a7f1a972dd44172df506055c87882fe981cfe56314b23c626fe218aaff1917ca80e6ff8f8455c9100feed559867701cb8e74c9014e7bc960b17120c5fe9dbddb00e31a476c05b1da3a62baecfebf328fc4cb32d587052d384e597ca02c36798d74d46290e63c21efde241b555e74e07867db8fb7624489a66ff531f3a1ce458fd501ea05f2db053c81837c50843118cd4c02038687fd7d8573d0ef973abedbc7c3ca6e69209e31a73a87d6f480f69a075f062201e43b0965c00b9fb081b8df19518c3a0b7b799204615f675cd52ddd4c4f9710545cb0b1166f3beb8cd7746cb12e3b7dc29848d81a056f42f626c7ec5e2c1fd1ae1d8ab092153dd7119861cef13c8ca772b39f05411583cbdca49c355d8a082ffa9a17369d5ffd0c04b1de7f1989ff2a96675c88582e0a4c8313f9c0e770c4be609008393ab2cc107885adbd15c6be53b8a7edf5ca22cfbdfd27170b817434ffb6b7df9a0b36101667d38c711dc08d565e98f80eae436ba3ec7cb0fe9ffc9879402249c49c0df40981751fd46817aa2f01f7d90fc2427ec2edc2b4c511182ec22e489370046a0d9c876e4e8535975ffb32b836f3510c7b5df451c2149489740e093d79d945be2ced7686541cabe5fd9e0cd18b934c6407a4607f9233d7d1b6516e9be0b1b9c6aba02444ba12b06a299e337d0242d17c8443c8d211cce41483cb77caad7da0691eaf4e4c1d6916e45bb23dced4b13e75b6d14f4aa3384fcfada45c98de27b74b819df63df2367fdab1957dc659ee59870b3ee54e23467facab14d281547dc7ce75507577b0c4bbc4c2edea4f0084d38b1a696c2a4365a258b773b9d3b964c8efff29f68a3236fc52c1b9469ea855f4edbdec3b994e72ab81a153911439d9055367f4a304ccff0f9b879e788b817aa7d64aa18fd5edec4bf943fd8050eb3f56b2d60cb49bb8dbc0e4df922ccbfb93a9f91a09b473a8beca7ee763675903a22fc74383dbc2084256da490f7e9c48c340c9715b0dac11802a8fda058998fadcc47ffb2f4c0e2f8507f42729cda56ced9741da8d32c11756984503ec683f77e1154d03fadce304a081431541843e64de6135470bed9b4dba38699309db890b6c660af2886b4c086bba8a8140810960aacf2ded971a471d8456416567ec813b7b3e46652a7ddb5e71903e152c9e88f36fc46aefbfa8de0e8ad0b5808f1b61c454d3bf5b06836617d0ff3b67ccc22696be836d451e4b1d2c7539667a0102ccae8e1f2b00fa9cb96249f2c9e9b67b425bf0e26430dc09c72caa68f5236d766a942e6c0f82f427ddeb1920a93ffb30c9a260b3f0aa0e6a5b4f6f6ee97b9f0edc412503c1df01bb21baef23f720e10e44ac5c48be9fc23a0370105dc1ffacf2435be178b6eee4e4359de9b5a9ddbe859f39b3598f159cddd2887d3030514e28cd311bf8a7f2480ea852ed9f040c303001b80ea3892fc6e1db16fd9ab5f54e446699f40079ce33e890a944271d818ab5a7b56d0c4b3d22d534267dd78c660b64c90fac480e3602bf320cc2dee19d5c50f83e1e8b7355682c9eb4cc87fd754a701cdcbb3a51956fd243efff5b25ffe77109efe470a6b4a0e899a9beaf14cc5338709bcfca37fbc617cd24eb397f50d7ddfed83ae5d48cf6bf7e93c37e57761853b8d501b7713422830b097a86e872593e0aad8a5bee4fce0376231c4ceddc30afb2cb7a21d35cab751f0d6561d1620b8373a028f14c67d76b9596f9ad286fd75a011d7e10bd66d3483368483990715094b6bc7139d441bb808dff052552c22b22f8ac81aa9736e4d54f79dd6ccb59166abe4c162411d10b06122293ca702074d27ef43cc7603cbe17504efaa8a755910521f955536051463017f0d484797a3d7ed00af355b44b1dbfa44a702ec359744da2cc58e10aec81cf75a69c3584b8383d7e797a862c0acb32c852db993ac17e6bc649af1b65e29d6846059111c6ef652a3e343884bcade4c786976329c2796d21a7ccb1af90ea7560137c548ce7e37766dbf0e747e2d8e25efcf98c1b341b9d0edf3d9d5e389ad0f6f39ae8c3cf63c741a8f4ae57533ddd536c5c8136b3d1e970137ba6c1687ce6c74834362ce4613511ae38ba0859e3756e1ccd5a669c719a4d766f324e0cd4de9ce66f1fc09ef15532555f1dccf7ede91a06150e0288dec9f7cdee731be25eb2edaf43c13a005685e2af419b532e6ea3e07e930b557d2caf9e449c61d5861396d158d9674be5b8ac93e24d83f55747f84d8e6660e944ed97f9d1b05d61986a480e22f5abd271b4b144e37fc61c60893d1c0553a068a56bf4ba3f226db3de5e1b4dc31f60332e465fead778cbe3664f7a17db8f9ae2c11e59fc9479de4718e9abd9ef668c56e95aa83e34e3e02f9d75a34d2cc5baa1ced604a5096bb54ee7e0e045ee1973b92f090583f3b6f8f13de6ed04a1d9e85422c373e53b32b0982304b93728bfd2b9a49c4a23dc7a1a95bb73f8d07502cf1a6f66c630ffe37938b39c88576a9b1bf7c96416c3cd32d4c0ae2ac2646eb0e3f23a82969d87220f543156f50627f780738bba74dc2c2467ea8619ec908029de3783cd5423d2ee084608b36f04ecf65cadb4397a079a63801599c447c36de542c639faa76c052ec1d7196e7b42dacb7f06b6c5eb5a9d1e576cfb979ed5e8d83367cd132b39901a272952520ea2a625cda47c0f74fa30f11879924b5dc8fd9490b157b7ecfc8d6a3141bc88e458f7c8fdb81f1fe21a6d47a6ecb9059b999fdcc436a76ba5f32e96f9267eb0658e5fac2392e0f311fcf3a2754c9931e0b82ae86048c55d4e450ce4dc3fc43ae80e1f7c6b2b9bb835b0c503f31327d17b4371dcf3dd0144bad623347f07f4970e41c421774755c89e523fd41f611c7b077d1992b0eb2a4fbae602c917a6390b5835a5a745abe4df9ee51f2fca9e950fc41259fe9043e9772b2ed1abce0a979b46bcf3eab43464c25492659c8c2e5d67982660c67eccc9313807e16e7eda03199eba65e0c179c28026a6c4e4a2cdeedd67a7e92608a7458d6948e0054c4521d913ba8983ca5404acbc0b877b93285c52e54d8f49123588444b7d94ad1dc4dfe8065a4cff014c7e0d2f9450437ce19c4f2520e37759451551fa49f4f4bf8a664a84cd6f0dab8976786f78ea34510127b692edb224ad1f2c41c6a464318068f7959875355364e320abd70208196c7581f5f32acd8b48490a6212420f7ad4853e6184a4730e4cfd18a1ba68b0464ffbab9ac4458076a3c2eb38fb82e5f811d147771a12e40b132cd2961109b81ed591d17f8503fd184a1cadd2f0dace6c8c8509d5162dfc96150928f48bd573b55b1b8f46d24120e87e4347d2644fc68fe61f53baae4e833d065fbaf832a4b7dafe3ae407921a9e12353494226832e7bb184ea508a98f8f9d06966ddb1ab05f5626e3641af9e2e533abef564f02fb7ef6be703595c1f47da9a9e84683439ccfecac21d748f46d1e1f940aeab95238de89e49ea64614bb8d5a7447692d4bc132dd9525a708ffa9616363b8d5f840d1ebcc75da44a4a484ce38cccd3224c68b5ddd478481b78bdbef5a280fc1af09ecc5eec7db19247ce2672932007988fae0a70d60c0f43b05959c9f1cd7eb93fd1081a1eab98f766175197fcca9585742b0ffdaf596f0d939a033121442ec525e24e944ecabcc48168410d54b4f6895acaf763dca32a13c08afbcb6c5d67d61cab8f3382a38ed9ab5db0996ed5017f1baf1d20fe83067079a56d48f2dd811dcbeb7904b3f4e581880695ae3774ca34276158f5814fadb0e529920647f0eb35dc82e490d96461abd23bbf2da522822948455413a345f9ef8ac7a7f81c6126584b3c964b1a54c24a12ce2c0f283661121974436cdb09ae91822497458072f5f97447c5d7245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395eedd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a990782ce66804d000472b3c601978fa9bd98dcf3b2750d608c684dc52dd1aa0eb7e562185c822e79d362de4f9f76a1a7016e1529a01d88a7da9552140f666c6a94772459b97034550179063bb5d020d3211a2547a14bb7a20e47f753d3cad416b6746928388cd2fdaded61933655a00df5386de39856a98bb68854f8e47888091ec7c661b060f00f5cb1c92cfe832faf91da739e447745937b543eb5b504a61877aca5223fbf8f03613a6b000e20eb275d9b8081c8059bc540481a303ce722d42f3bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d0b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea48e0940e8a6e8861eaaaf90853a685fa803c4e039166060a3c921c8d79001e3ce58256300b4972317a540dfde857553323ac54b01af491a20b7745debc9624e513d8e60ff8a83f42bba7c1cfb2825e4dda8092c764f5dc6c42ace857d512c86205c765ff735641e7eede7f06ed9b7358e945774926614dc42712071def1fcd6c510d64c70323025dfde469539ca3b925c5707e72d0d1ce2fe020bd18184009934bf845389fc4ea3871dc8007e7b0fdbc0b8fc539564d884222d1e5bd1323c592936e5519f8b8a417005b3f1d9e4ad326c4e20164f63c6d4ddd80740d132e14c9e8a38c2afdda6dd245653ed2876c5c142cb78a402ae1a225c88cd6785c40c52b8ef5efeb3f25ae47ce03ba892f5caf77631b1257715fc12de72c21e61db17e4399dea777f6bac2a71aeb642ad0e6e7f3538dd74827269287339369eeb92a5f00f03b08d1faa1cf3d1a37ffc87924e8007431040bee05caba1f5c39d7a5ee4a4a0d8878c49953810b178449937e995710cd85e3be17089ef45a6c5331657a2c24f6bb1e8ce1d1c9e0f5dac9cbee55e72ccaf796a4710f33bb525e7406c87b44aad21d83498c3a7c87735049490ba02f2daaa6c9d80cc8c9c9b9b6164656397a704ee384515a4325315992e61dd957f0fa91f3858fe7c079de59f56edded51de86716ef40c102b1701970c7b0c34e6633d8a0ea1c89e7527252fcb07e63074221d7a5a95272343633b138abb330736b59ed95690c05ebec8aa80e6b9c293a4e3decd5f2ca4aec1cf71a49c5754c716dae18f9f02aa8e7c74f726f5f87c587e24139c6ca9e365296a6b66747cbebdcf76972b8cce7aab91e55bf4ab1f3581df9c2a857d11a8415a18e7a6ccf23640cf9bddf245a5f90c43b3014d08d3ae19faf9527d7b26fc15cfa914dc6e03d976570242ea37377491f3619ab287e6169025df66471e4defa1966d41eff6295259cd5212293d921af029329a5a3d15f4fe15db8ef98c260c8865603a742eae2e2a07336a2adba6380f582f2b3ecb1e70afb20cf42aecbc2617e2da3450034bf5c04e5b48d767ba7ad12498f7440c885afbcd58fd114a3e888c88970515d73484f51551fc664d163f156d7279186ecbf6b18bf870fe0335d9a95e12a332cd257a65d6d3435aaba4dc51bb698aeabef06bc7db0bd99cc27ce3a2873b39493bb7073642828b86af0aec0cf2706952a394d3da37fe8f57538678630bc09544e71e07777ae97831dbfd42a6b84035bf719f80cd3f625b7c30c0f72fef406b449596e61b95b58677d4f606f86b28aa4b3a52bd8fbf3f94710dfc6f122a6fb9e57005567bfb3490094fd57e49774d2c3f484820d3b8de50e075a8efe067cb8280ac5226624a0fd334bbb36c5353b53ee5ef4a9aa699d8d76bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b88f848ed2cb9d4d9691684ce27333f4632fd897469b5ef12622fb48b243d80810c7273fd75b14e5e029619af15bf176f5c676bf3ac0cf71ec7de9e1b3586acd196b4651b81b4b3becf80f762bbf3d34a8a2d48c10b0987af13dafcdedebc22afd5cdabc01dac0a3e9731ac16353210a615ca44e85b6ec9eafd2e79206e0b26c768814d01cabe26b9b2c8ee27feb00b21af889aef6e66098033fd1ea388da642aa7386347afe4eae6830df7e33e700a3e78e26825535c87a86ce4c3cac6a98ed48b0376234b056fde83883d0e9730951be202c3644e4d5075b83b2fec4b8517a6f761b6f5075ea4a9b8d487ae0819a0850b858687ba242ae7f74afe0731eb76a55f6cd9410cbf61fd6c5103e8685f65afa20270cdf9cd067c908036ee722e77aae6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d97f337bb07156b16607394e8caa771764ca5cbd2ce06e0fffe9622c0ee7d16b81cccc5e8a9a7ad608a04f242530345694bd7150bd73315513284142b6a39ba4b789cbb406d7438e4c8e90e1e0f03d4c9a199faaa1a0939a7c9b59b2674d892d57ff4f1e1fae2bd5c63f32b23cd028bca626a869479163db363a4cd7a1aebe88fb7651cd173c294dacf2ab7fd1e8937c098d34cbd08d3d6adb3f654b4255f289c086a1e0d967fd7c4963a25b81975857d7fca812c24c6cd0f49f9dcc839e842aa09bdbf34cba5d10fd6fed612d6d7d8096f38e2e1d2993af5f25ee4423c1db1ea69a53e8edded83a6934f34882f0461f05b96f2bef663db1f3a355cbc181c9bac1ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e5cca0ba1e1a55cfa1e853e326eaf4a69f48c1d0caf2d3724ee41917fff042ca6c4e7415dc58cd4e35581fcf3874ae0f50b0f9dbbbb2f7ea3044ce2e1bca741a6601257db0dbcf5623e2aa7fc4e0ea81ae7608bd43b56d98b444be203205cda4a88df04139500a43e68fe9c469af5f6c672e50531951bba2a5952ee2d833b80b2cba6faa5749f84248b3e73894fb6731dc558af01f8f5a626d8f44ba6fad469770c0899ba44a3545c5e137ead0f121480c1d6d3851c8d481f1d6822e39a4cc60d515267e0d66e7e1bf222dd2f6316d93cecb7161a58e89b821fa0e88d027d2b66a1dd18c4e5c39422b86ffe6b588960921c2b166bd80e9f629f282f1e3e384be07c068e57721f18ef78dd4bbaacceb0ed18cf4f44ba873d4e262b741316b1e98b5e9860dad1bc2406b372de5c6bbc56b110eee9089581a19d01b884adb0d166991fa849426c181037576ff149e88ec0d710ce34beb7f3c53393244fede07fbfce816a4246c742f43898720cd9a1c2827450770fb4820558148b77d4a184367667a5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f667e110d199ef9ad638599e61570f03d237fa741fc3cdfa60ab451d4f0bdf8fafc22ef66cd909942225b5b5a726d42515a8b147db902d522cd8eae37375f806d7284152c5d3991d6810ff44dc8110d5914386cd087f53f79d2b9f38e71eb382d1e4c96bda2aae72db4c84de67cccece3b757e3b6855a1cc533412db184f19ab5103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dcdc729a828215896a1d88d0353de8c4689c54f12f4cc92baadea19c1010f21fcb382ae7f736726620c0f4969ba9476488f65951492ff08050254dbe4ee4149112ae8b4ffcfe0367bb457a73b9a9534bf2ec495e2f7d99e23b1257b0009d69368088e45459755585c934a9e24ebb9f6b71fd27f8d10c2fa9cc4a4d51fe3719166ba49f30d39b362c29bdd27f19cadffdcfefefe5ad35511dd4b8f00d002a1cf08f116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c81e3052a62a5923033703d8237e53a0640826fcc7c97f309078b39ce04802310d87a7abd4f3d2eff93162865e9298aa9761ff5d708af47bd8c2a9217d7f5d57b63847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3dda17f6c533c90144066c8cdb029e9bb5074d40eda1d1c36bf63277fb217b781585d9e418765f5177dc2924931e55ca65f4978229bb19961222644e62c888f8b4781c238c4aa4c6354ac975603567f56fa0029e51e7f4d18bddc1dd584857aedff51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa69465a9b252ea1096b59ad7653f14f2b2fc684c259889bd8fceed9b63f792fea5859a41cea51335ff677181dbecc9f4b4153167999e469070e242a4847265c7d13399335381c9c71fec3722fc62724963d3d1543b6ba0d2ea885e6990447fb8c72061b98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a670c59c9598c5c1737e2e056e275976e1c4635f13a6f5a1749fcc7bcf76408d41ccea099f586f33723840f2e06479f5e649c29543f2bbe54cc51402a94d5fa8aa32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f0521abf30ff19c0833cedef2dbdf095f74df68042755a34986224753caee65d76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa83685204dc41904214a43b7b5f314c4210e85573f8e44c299cb50f70cf1b72df8779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1dfdf5eb412ad15679cf3eefb0c2cf028728fcad67667bd983013afbf958c00c8f29450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f2977d41af0f71a19e0d327b3790d43f0bde1b385c7a3bb9c40b40e6f75c724cc898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade33601830cd10e103583e2e0b9d1116c1bb20d14909824d4af0e66746575beff87acce6badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa619211e2aa87c2f18b2671e8fe2f4525d58463db70d9c502ea503388ff3f61df95f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc82164b39a87fb9f9b6719daef964e29f23aba514d5566eadb995d6507f7008d77285df51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c0ecf79ce154a75e6404d91e88a5ec0162114e02587ea7a63195d738ee1bda1142453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123761e24cc68b306ca8338b7f3b524ee528e4f907ee272732dfa1ba83b048bc7903b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c3c6e398b99be7e338e8b6dc1bb492597d770f990eadd4aad6b0296a45da4d2edccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f6a1d429fa49cfbfebc93779590bbd3bf80865c86db43454b9edb294f9fb5e302af6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fabc15ed1b11db3c8e14e5bf1b9781cd884a996bf850892528bcc0ce827fedb40d983f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a4808e0fd24b5e7779c9c5ae7592b2b9ec457bb94c5c0baa398ceb8ea1fc37724eb0196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd13eb99165097a7ebb5baee4ba15169766fc3a5ab156ccb8b547e9d03f616a4ec0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a2e4bc4e001c8e5e0ea8ac4e435260c2f11155f2bea33885ad1270f3bdfa4b655306b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d82f0fb62c039d2b492ffb37bbb0e659bd9ac899cda4866bc36ca8b788cfd751b293c45da4944fc51bb777ae7911e8fa117f20e4ba434a3f843f53bdd484e5dc5d71dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e359d4894a377e057f31ba8d1a038351a6d45fb2df9eda89cd0b37cb232293f3b9987ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa3fc857726eef948093c90fcdd77626d6a4d84f0390ad7f57efe2b8578fdb4a543177abc985def1417f9a5a39cbfb2b33c97409ff2abbdbae153daf767f53c66aae2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae569f102f266f71bdb86d9887ae8ebf8105a1cea012c842edf3834104e0238c7f2fd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0e1079ddfa33dd02db731044cd8ddfc833a838e8165d8e4af6b790b4e288689dc2a5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f8a7b3263e5f0dcd6f74aa877bd13932616ee4acff7fbbebdd7138ce31ca8a1775d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80beee2857cefdd24692e998d49a007159a6ed94a74c4d53eb2b6c50e5c557e47230e082874195098f2f2100e62f22c40178d745cb75db7c42003ae7edb2f1970087345b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8bc6cdca1aa91dda5a797386df7f8fea8823dd55d233263e5eb25f62f4d8f9f96d09cdc32023db4bc7ca656c990b0bc3b81eac461abdb3a057193f4b7808342a5f5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2d9fe113bd08b162188bfad989adf4c5a70d683c6e7864603e1038a586c7bc4dab374ea36b57746df5674c49cecdb2bd6f3a8d3089280e2a4567136628f3e15b5b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b5052170852a62255fa32f884f4f05d11c8ecdac4d015c286d47e0b0ed5047d9a9c3f477ea61b58b9795a7c02a22abd138c6f2be3fe1b248929768726ed778d656bfc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e156a234a01c041a6402699577633a39d07025fd4e566a9218575fc0eb9be781dc19ceb068f1a023408459c13da17386fe003796354bd6d7d5a2ee3996f08369db935de9961d0a6be9630c3699a6a8d95c2f8baaf32421e9ec48bd044ae683530802f63bbc61f801bf8b571ec714d957bbbdfaafc4bfbbc7df61a5790867cd1a60f4fc1e8f9784932b7c5cc9e36774c66843f8ef99c0529152879cf69eaa1d6959ec0c1800e28813ef807fc9b53c0a819dc45d886de428bbdb81a58f26a2bbf528adf495202e9273d542f866c11f33dbb64f057eeba2ade4a235a812c8f007dd25c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d73914544a361f1e90faaf42dc35e9c6ab6fd3afba1c22b0755eed8b6ece0f7ec5dda1fc9251532d59180022cd02f179cd15b0f1739d215f9cccc0209d3e38f0794c91e08d9bb11ba335f5e8dfa0bde1a3fb2e89b0514515d11fa879976d9865bae1184022ddc1e6c24d55bdae995cf245d6843f6fb73dc4be05b18f037234da600017b78e13ab1259d8efb23f1b692d9cbbdb2b4a5cd64ef75d8022e5133fdba5e0e31e9894f3a45f6edc3523b6b3e4da7acb536a0948c7f6ded097589ba3d29b1f9512f8b0e81d9ddfe72fc46ca37b31f1a741912eea6bb2dbcf8085eb20a6a1fe5198779aca3da54bf5cc3cec1445d1cd288e9525ab87d61cfc7c4878ec8729767dc45a6ee44cff689fa05093db4b67c465c2bdc49b69032f6f9828f6877ad4048c2963c9c309a01ee4debaab75d78cd0af21b15ae8cde6c11e662588dbb430926203be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf54081ecc4262e9016e466ae3a620099396cc2756d5e688034ea1321eeff59f4a2511f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b5ef491d91cc9c36d0cb94a9ffd9507da22f46c1ec4229eb7ba5ef456c7609daed00442ff50de8e648b7408f347b525b3a009010e60581c917d508a77eb2f8c98f793f9796530be68106ba7491fd44e4b2129528573f19fcd8e7c3174590a0a2760696987619d7c75cc24d84b800888f90a4d946ddf79d300ed89b554a298f024120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af410f406f1db38ba9657ac4b9b707f3a74bbab3486de9cad9cbf4fdcca19009bf7ff9ff83586f6123916f004b97bfe007ed5df7174f071ad9f7f31e0bcbcda865c86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c006af4250299fc92ebbf4b5105c4fb53f9284750dc45106b28e5d9a81bd30c64b9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08ec271229f326bc72e07b50104601c233e73454798e9b4575689525a2dde846ab37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a343999cbe0e5ee17058f6cc28049d52bd5533063210940e5b7f7a6eddb1cd7538ae364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f6965e016e9533ccd32650c39ccf80e080167aa2ae9b655018c2e7653f438f4877be5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5eff4cd272eff38690e76f53d80f69b0c3869479a3345b6ab71a4863488e655ce4850a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82c2184acbf66e3aa899f9f8829e2cdcaace21d58d58662036b8a5423de3f7e61853461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c33226cb536132069055cbe84ae4b66d14a0154dbece27001a0b1d93c21cd90b896d02f238657c44c297f1ce0bb30b9b91c0145fab0bb37c7e187476454ea37e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85597940efdfb33caf4df1923f87e5a6a1946fd45827e921085b262857330b64f25e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f9b678ea7ca45e6028cc38720657830514b46a6866ac70ebcab3d9378902035ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab97a8754daaaf47db447230c53a21aea2f2f87d46fc32f9124d07e52119bcee05188da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159540fa4895265fd9546e9fccb5f656b32118f50a1a086ead61e05eba5e863d4af642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a7eb26920938a4e51cb206b11311b86dde0433e959b2745bff404113362a0a37e4e6ca651114fc8bea2c4db96aeb2dc8aca2419a7a131c0279efe70c4cb4784f1cb7baa72cc1d7f28733a2e221448bbb3bfbd70f7eb83454b86bab8d184951d82cd20ff231d1bdc644133bb16f6548f13d8b1e3d70739e7b846918012a965a84ada0ba6765f2969482bf8eaf21249552557fe4d6831749d9cfe4c25f4661f8726ea6c28b59d61bac961f363cf1a361e984754ec0160a3a289ed0ccad30704ef3239ab1a0e76481906051dcea50590b60706e0f1a31d51720b44cd7da38987e9135bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8dcf9f18f65ad44089354233370a05e1eef4b982ec2d2a929dabf5413646fff0cf0c5fa8249a5c39dec71bfa492c4450ee5fe0af935a776ad4ff3f31ae8bc457adebc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e3badf58e0532ae9453f37bf7cae746303bf1e9eb8359477b7d138a763157d4f44ac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3544fed4fd03a6009c1eb898feea6f7d730463f4aeeb3d80249d5867aa31bab936451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e431d78b7d7bc99a5515add373d698dd0dcea01150312fce48d4701e793d6d943dc9c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46f25997469d734216ba882440d0ccb61ece35999a18e087f3c0afd7f4616cd4b38a04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f990550c9bcd5715c816c5e566c7384ee7ea3f6ddcdf17ebc430a4945a08f6bc9190bca30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bdb91421e6bce846713330a519d13c50fb2a9c2c858dcb1f53ac0fd710e9cd81f07964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5204cbfd06e4ad2f47a311a1d9532a081bd3ec899e95f50112889857fadecc09ee359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e15bd8ea940f7e7f36b8998e539a3a493e100739f91b85e499c946bcee3f7a55eb355c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457df6939dcdf5972d4dcbdaf8fd4aa05334f4123212d341ccf87b6160027d867fd7ffc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544a8519c6917b154f36b8cec0b619c34aa141731404ebaceb20fac32c88e658a858a400759b3c9b1613fcf7ff0ed5f6c1d93f15f767cd877e1a19df026e2ec83ab6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd046004ab25d54550344b03f39344cc13d448216e45d95119adb78415ef988a926dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383917ef8c606069a568a0c6db9639dd95a20686433403b5a22172030548fe872813bc7c65a117201f8039c7f1bb78874628f31d9f49ab0b7a3cdc77308771ab20b284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf8c2ceae6a8344eaafd2685950c092d5f8f409a9de3dc8e3d1e240cfd5d93db48fe444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583ebeafab7333f3e8ba47084f626ac0706af3ba2291f263c4f5255efefb193e35f2ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cef52c4cb9a0b03278d00cbd276660a299711f87568623d6fb922d8b88df08e6067856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e67456915c581716b15a19d9799781ce5c4c6e7b4e0b37441043f121861630ab2e212bfb68803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a211ece9065af25dc310872de08c461330999d20c66fd8db34be7f1379f4138e6b9c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e4684441511e4b4217051c4481c946dbbab4fa11f6f8dd6cadd2458e75631ded482497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f2d23d6612d42d19cf3d06db8ae46845a438ae0a00debdabe5c06ec53f169c253a8ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bfcf0153fea48968f576e67ff203145c01b568bfd1a312f39b94ecbb17c2a0983457027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db924a97967d4eb31e6548f085cc93b7220c6aba323869f2cd959e80f48c641b48f16dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e945db1a9344d17eec312687691263e5fbc84e06e6dd40ea708abf94c30a5e966a5288cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f1549a6f256331dab5d16b53993499b36fc49039629211ec63b9373e7436ffd06b9eec12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1da88eec9d361f7857d097a91de5a1334b6fec4267fb0911ffbcca9cc97659d87124f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda57e02b60559bb0484207df1227cc0bdbd3f8b8a61a1ad6655e97608c3806dfe6b0411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401b04936bb97cec33e68d0b8e90230b264a236a6413ab9253568149b7a6e1d12b06dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e904446e2e7fb0a4b553a6111365b0c8034710542ade02b872dda57505c83d593adcbe4db5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c6a0274169a372a6168c86fef32f283b19a402ca4f54ae876af82422d166163ac3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b569c0251168d2a0a49fc4e07bb40cefaa6acdc8b5a690e30303447bd7fe4a70ad748af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42ca6ca861ec91aff427b99815bd57c5695c72d010a203cd467cb1ec39a2407e84d313d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5f9d677c9a1c86f7b9fdad9db10821b48f26b09b23985aec87163d45a0d1165c194659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5809f655236fa9514ec92a25b2fea105ebb8575c2cb9ba70fe96a6174eb9d950ce986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2b7fceb53315836d86c793d257f8e0cd9a4af46074f47c604cec44c497368a545e2d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d5201ea5e5603b0f88121052ce71ce18674736bac18be7ef8c4f1b5f492602fab925d9e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe5395c058cbb882881dab308f35372ddf0b755ec659ee8dd2e86cf1172e0e2a65079246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa327ea5f6cb5829b11a39b0338aeffcab8c93a0c04c0b4d947320178f29d65dec7a5aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c31edc4fbba6f4fc5b671f327bd8e22415f36f9fca74b562306bcc258a1466d565767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2b52f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987b93697f52fe967b7e446a4e364ac4cc14587dde55c981d46ffddf999775a1a8f80d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c6e53b7902ed8583902d199a84800492d9d86007c97fbadc63300326cf6e91449e5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f2ff33fd6a5198d161d9cc8ae90d0c5829e97a5421d0cb976a8764f9687d820b144481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db3f5a0271b6e436197023e886982b12fb92f3e84b69cc7d5869c57818c66e095e2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c67067a9c1e9b3a1d8a5d59dbdd437fc38dc076ee3771c53ea395222b65f83e31cfdcacbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c53b7573cd78924df7248d8a9ffce02e9357ee951e8214553cbc54ff9ea084e86c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df5bb2e345055bb145df7be7fd05ddba0c1b88375199116b3c93f703d1f07afdd4c9d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83c55b81d18fd0baaa139858f350d02216c689f6846e5332730874e11ba5dd252aed2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c562c07a226f395b7f6d6c5063bc141015bdd2685c4825a8043594c173796c2bc7e4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a07b0442173762ff3f515f8b07fdbe6649dca2ea5fb4ad8bd630c0772257b8d2f72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21cc16094834f0f5305d1104363e5e1d524aafc53cca1fba0aa994a6c2fb04c4d22985a9b9467124f36dea843021fcd084e5e7207f326ba7e5c690b47186b2f9b6d502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567bbd95fede8bce17ea8dc2c91a8461907beee210f943e2131aa0b2cbcda0679496d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c842604c50953db62d06bb8421eed8d092a45212993c2d4d345a5ae6c06306fb9412044288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7bbdc323d5113f3a39d202a7897f56c24d470a17f03bd7831bb504f5ac8b0d42c7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43df7b8a0bc03abc6e40374841c5bd4e6118702082d94673b8a85aefc7daa944213541608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec89f27c315f18c7a9073a21b8c3214f005e385c6a9d62e3b44495e9c7bb5f5c0fd5ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c747bbc7b089d608a6912e831d240d7d715d49a8facd055a7eaba49c806eb9dc36180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302e8d87015cff582aa173e3fa898a22fb6013905df0610f4997586c71ef69e0bdec6f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fecfaee8be96a6ca5001e21bcf13d1aefaa5f78e52bfe42b28b3e3ee741ca68742bc6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e9116b806cadd247d275edd070b09d57ddf7b20c8614ed0624b96f1ffae88ac708937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a7ca2f5cb73dbd6a3aa938e123b57575ab4fc7b58590b3372a3f825bdadcccb83b9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a97206f13fb1bd82c8028ff6d102a34c1a960e7b41b9d8220f034c50869cbd7eb1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c330a7f9304137eb6633f1de8f80e6c3325534ac25d0568f1db18e08c1f7ff2db138d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f0cd12e798a6aa9dee8058075bb97765f311a4d2deebb566dad1bd701dfb09610830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd100d852c4ee87b5cc98f66ad453eeb3a87037a48f09c7fe87daec9f51a43e8ea3096ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e2652627026901eba6bb9713d49ea4deb40382f79e2e253aa44b1ed541c5eac2c0b8a1c70ba1b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c9ad0120e9de65b96203264d2e54ec794c69c0ce444bbb60fa4a49f49e13549e434ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9eff643b0fd3856b4bafa791f817637dfa45c00a5943049e37457d99930e6744cdbf3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e84ba5c806aa642ebdbf37e9166f8f98432396500e56df3157f562bca584ecb53f666cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e53fd3cabd114537d1b74282148a7e9327edf93f9238115a498ac49c1b862fd52035f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad255821af27d0e98c7540d6d750e3a99610df6d1cafcc8962d3af8e58c4dfeb9e7b1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd3446b8b15b4e245cb747680aae9e3ba7da7a2154ff52583acbf3a4b625d38670818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c1de0ff3f23aea4aa0fc77b40218fd74be3275557411c98ff8bf93425a74d2115ff21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6130645b62009c31f6fdf8616e50fe14f7e127deeabc3b806c704926c566ff1e4a2f91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bdbbdce9587dde615f49446ede895fc30efecdb4a22363a7d90609c596bcf36c65e2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c827f3acb57f9800ad3a3b2e035ce4852e34840263b7c3b9ef5d647ba94a6284b175e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d0c52987f84db01681622a5d8ec6fc174ad262c757c9e48f0040c15d91abaaba2cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19debb217370ee54d0f57a47431b22071ce2c43ffa0e52ed113cb2c68c8d38aef758d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5ba95e9ee762767c2129e4bd2c94eee3144c67c6a69885ff1b58850e5ef749e66e3b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97de4c8c9d4ea9ab6a6816a3eb68be965bc62a81b97ae97a37ea1514fc11cf16d0ac3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94ccf4b66f3d0a3597c9e7db76e665c5e7c90f70e00698703f6bb5874de993def2c6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb3359432618fc9cb7eaf41182ad9a075e51af580a96aa7def8c527498cccfb2baf3d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753e165b01b1999ba4dc64679a60a0891cecc1361d80a30c7fd14302adf0d20847bbbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b365d107d3019ee7728f31c1aacb639caf86ca6dc91935076f375faf409e62050a379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d741930e7be45eff19143c3ebae8908d426ea0842615d078810cf38afa516907d25effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dff13670535ad6cc41b5cca3502c5fa41a900c1c4d511ac24e52c0624fd416b80131a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39b3f8af551cf2d527bb51715044663f20798fef310447ba5a53b899af2ff073acf5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725bbfa4db7cf5c0014d2327f696c29252ea88648b03e95e6c674b40578cb4cbb5ff699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2de6b6b776258834818b1a973e75b7077884ee5d32b435eb67fe8638abb687a28ba8a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22c7796537539016266ebbc35b7915f65bac3a6cd12ac767aacc13a02c4276e1b3a247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d2f9e52e04297deffd6d4f0e38813135c9fe94d97dc226a8b467e2187f0b05218c58eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6bba3a2c22b5dd7d7641736126d43ac0627a9815216703b7730888fb5eab87124ecc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa92af912661b6c97149fd65cdc161d6f5be0fca947cba7205493877dfc2cc4d7eb1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd98cc8b969859af97b541a8feb251c6448a9abd0a9163a52193a4e14c13176106d6d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a28b7a12c92ef400b1aeda82e428e32b248c79821a5d413f5068711797fa5d77c6b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c7626c1687da9cd389c6d38c0220c8b5ab9d711479d76ae6887c2ef44f7863f157ed8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdffe79609a87d54b62ab3fc421a102780e655debee7df234543df6f334ae8d45f43823cf08b2b70ce128f0b3ea28ff4f643e715e6786cecdc8dd7f4b658648d92bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e45dafbc9e2a271876d2aa1966753ea952d72a90de2e93a5b0ea5f44d7e97d42fa97971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf06f6bc66ce7b39ced2b4262ef95d0f9cbabebaaba4fa680f23ea5aa8c60c5fe3bf45462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e897680b533fe1c7774e5011b3a77b1bdf4a18e3212cd94b07badd0c3a6149edd4be59e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c722df1398f1d6ce15f9d3f1305444ff6eef3eca6268047aafea5f4b22c338442751619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f84611f635f643f1d5c4eb16ea29fd1b159111b6dcc627a7841bf98da30b4575b5a2572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dca3c530b115e97cc6576dda887fedd10d813c9dab8d3434e1dd97a714cd27ad3a3824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2ce7e67418c475c61cf784ff96bd76e32479d4d4a2db2e9afec09c88a93cd6d7a49fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ea1afdf0276fdec5c715e44d7ef3699fc6d0b4ed00271409b08daea9f99d2cc6660a336f0e1cc7ee57baa5a1f8b92d5a05701fe1c51d8b5676c4d506add7f3098b850cf836e3f6fbbbdc009c3f759118d2efb61dac30e2fb671a9327a908a535eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc81433d2e7219ee7a73c82d9768578ac6833eaf4e6b25a13f58e3f8ae4bf4e3a02c47f305845c786cf52f8b493bf63718360c20841e15e26930450a912b6eb64bcf25f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90faf54a500e35f5aad731a74b3b4628c39a686d65534a9e103755f50c264fa275d68db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5eff8f6c96b1260ff5c492082e86aff8fc67c0228d309381c36e77506179db07d9f5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda40918264c2eaa72a787be431d927be1c1adbbac2afd815fff5691127e6a28d1b13942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96ef63e3dd1d96c6c2a85ccd02ed48ab381e4a77f822212f96864a4890b49ce81d74cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae66b86b0f0d066a14588cfffb80894c2a467bcf86125c5bdaa3eb45ea171909fcb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f006291d1f0fff3d9de79f31aece0c799eb1e2daef67f5a6c0bee037569c4a5ecb29a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be6368ccb2482024da43bcfb52f80fadd52b757f3d98054e4d788a106abce529126693121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759efbd02e5ffc91f19d738e256bd471d55d88cd7c15a8555a62b5d78debdeea227ed75e3829ae8686419ac369feba2276ebe7113cd5dc3f40fb0fd0bc1d96249bc1a67234d483ea03775fe8db7fc88344cc9528fc9953ac9ee0da2506ed5a5f1b062b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba7527348539787c01e188daa0ce05c7e2ac787f9499fe29e7048b503a6f7809c87232c01852e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d1c05e90c2485d6443a4f1ef000d84cac4f60cbeee90cec382ea6ba57673338fb25c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7d433808fcd79edc3ea017b6d6a2cf1ac850709832d27cb50dc6eb78ea26f5d83e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fbc080ace304598c08da4cc96ce7844d391258399381a9b380b99498550b98eb9d86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319f89fbd986063352401db972b788763109558c4a2da43960f4ee3cf1fd675da16d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf7c954641160a56176a8bf11cd8e7483df582c0fdadf69893d32da41591d5b0615f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5db52b3bdd69f7b9b53f1dfdc2b2ba43abbe87c3474d90fa8bb94a15902a9c803d7e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3af1165e944e9f1da0f55ad2dd4848324684cdd9908490a36b06b2dccf37bc017f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf5a770a9f0f1504d10d141ad6e021161a0562be7090695051fbe7b30f8b1000afa9f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0c82c4675d1eca8ca3bd9f6e60f4229d58b452f4601fcfee2fad705cb54f49571df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a86520bc72508b2c51b0b49791c81607ca6457f7aa492200b400c4c2a33ee54796d63d9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad488ef311772d0b1905f33ad020d557d4e5dbaaf7c21bfe1b819d54fa7819b0d532938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f68eaeb867980113e0f1994ffe02dd19467a969f9d5d4bab5673783e0670f02964e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0880b27a7d5ce1c26f9fa0501118b7a7430afc015276284e4e742aafce1a274f0e55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c47f5fd5748fb09938a42aaec7dc2518b0bbf8b46aca162295f3eed5c5149727c61c1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e3382561b22d28f5ed05099fb3ee0d623269482006c337387535d507cb0fa0659fc28b81c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb0879d22855e05150116c576390c70510a24000d0d0801a23209cb267b14d2a58749743c49bb12adde3cebb69e1f67832cff6a3721ccb5244aa45d752afc2b87b39c5d1e4b418537aaf2903b5bbe8014ed1f40e24ad459217075f78cf661c4157c95e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c343f9ba54aa640012b4271535e36b012e4c4aef54cb85d43126761172a6b89b9735ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777e2fc8614c226daae576c0baf629504bf9ae842a7c613de6388054651dba4136043eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f54684a7dbd20d9b2dc47a44a268c9d93a656807525f75c6331f02760c4276e4f0564ba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadc6a01f461cd15f2ac1f7a2733d9bf212ca0240345c4f81f0bbaa8d5cbdb250d443f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdd2326241bbf5e4823960e9226833e36550da075447f21236ad89c3c85a4e4bd810c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b2861166b3f2a9defcb66744661043b851bf17c29f7c12cfe9e6c8ce8c14f4aa57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc7c4a9304348f11e1ce6ca54a98b697ddc42d7386028df2c9274f56c3f4ca61cc11db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbfef180785d9c092343445ef977264fd0cf7f47987364d8f4264768fbc0949ab772b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d3491994f4334a3e58abea1d4e6ee153caf48449f320fbdb446ea4f67e6f2ac149df1633aa7b5e519005a5e5c2dc3af899284c89bd7d714cf1a7d7f1287ccd2530af9a593673545ecb5fec459db7840936d2b421db560fdadba51036e649a6872d5ce865441c86f6b4a052c4b00bd09a690142aa9b6aca8efbba86ba5ea79d0ff9c77df65234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa70e9bdbae5b3a69168f362e620cbc42fabb711fd9ed1479043cf46d5acb3ea97c22420e2055bc894f500a89d1a73ecb75fe5ae98599fd31dc38f462ab9870ff82571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df97b41b4039889d06f5f9b4c0bd82a95e4544f03b69c4f14bc5a774d7dfd55d44cec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cbd974028ce294a00a1d688c3fd76054326ffa794d96000271ff314a9ac57b6e25be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b409815e48e17bff96a0ed2e87ea1d2d549f7b9557d98e2e812d460e9e75c3675d1ee00c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe873df577a58792673736aadf1d21a95c04cc82a15656815f56cbb072a509b304b728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d67606d1e17dcd0fb72e0e998413a5a5ca0202aa9cd50ce8fd6e9ec4059cc37e3bd48cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e276075c268adaa541fbe6b1470503966aa74f519a911c78bc592f04994ce313d72f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdbb41b2ea8367ec4c6794df0c934fad90c07bdd399b9be68225e9e18765b6a18f8c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddda4975b7a5adbac50c4bcbce0fb0afc69121634a7bc0f91a8d241e5ebf53ea6dadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95f60cbd6825edc05d08588568862fb68a7dcbfb59dba6402d3d28b0e76cc57a52808c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc0db409c55ab862dba2651c5b8d03b7f932c50b9217e771b01edb24b84fcd2c144c4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb2f214f4499ed839bfa951ab2ca77d7b0666c50a0a2f7e5b3a034533d473dda666d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c63b87e73fb1429febafe2aca0d482f0caeb4494ca9d5c36f0ed7d589dd19ec3c2479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c51003ea1065fe69611c6753e5134d059e5f2a486aed95265c672c9abe595369e63cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98bec0d359680b55c414b1a4b424cf25f72a0eb44817e0891a025c775188aabeebb6cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb853b2c59533fec261785b3d6aa038b0c25232b5e760607b837caa1e5371e8b6ee4ba9eae7ea0293059b0a505a2f6712d0afb8f7797f7ed1536d343a131bbcf15885a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340a4c61aa65772b7a9e43b30777a62f53dc2f6400a315cae85169276ec4b618f67333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c193e6e706326898a878ce70f32dd6854e3cdfa39bbc1bf483f23d416e1b7f1b98a13c5707902bf2ed4d3ae4ddd634ad0f93f4b5cdb45d3a59b0c15654b9b757da00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e190464039206c8a511fad9db282599bcc362823807b24d2b211914b2440f939ea53c1401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9dad162b1ab9c15fca64ccd50918a10749c3e41ac2c6e4c04c5096ec359b6b7c9bd9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e49180d62b39ae08903ffae8ce361474d67131c95f5bb8133443f1fb1699c8914b691bf4978214e709f99d22c184253e2f360ef4e1a497dc0c1e1c1ea585f07431a26eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfd5e77656481a69d6c9f29edf8e9243c92080e38ca1b702a94a1da43fe82c234454149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b810b4d7f9295f752d40fd3711e8c6c33a5589712fbad5691ebaae48ee99cacd26044f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec079d506df4c3a2a92a68ee994883acbbfcb3dadce04a197d2ade826509e11a9c9cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f54f3d1298287a47dba2ad8e94d0a1238185f394f244a9f1c139b77c41899b691e0ec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3da613613aa0010b2afe1c6b86dac7f3fcd8e4a9da31afd84e30fa2751da85d229f74fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670c7500f109962cb8f1f4491fb81a92a7275384b903fcde93870175357e40f60da9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd9367b8311caf4f3896fdd1b0b9b7b69c7791dd20ca6b0cfe1b954520e0fe1a5fc620284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fde69e0f50ce5f1bec2a36eb12947a4fb6ac81770c3f5ee7947539375edf790ced6005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85549d20428269eaf4b0a87ec30a421abb387c02866e5cbdece4473c84c95b6c82a0d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2e97a5a454955001cf2cb3b8db75e84719709a75e57ca87b38cd71e89864509d523ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e44fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a788138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73e774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c551f402aff92bfee1ebb9f4e1d7f30f74781f614a0d1e27dcb124c2676620e696dc323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b9c303d4a00463b01627a34dd6ad04267b95011979297fcd6f56c6f8191a2b4cce38a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7a2c337e9a2634726ec71010cf77e450f77a9d81ac48e0a3b38673797d1cd56ace83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f247e3671a54409473c1f5c7c7153239ab9a6bf0d3e78d60b2d1c9ebafb16dd476e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa65690fd779a8b3f07b3fbe92b63c48129cea6ecc7de7f8aad9d90951c432a962fd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13e2bf7f8d4e0e48f5d341ae169c56559d8c1b26aa1d0d8de6ccd8d04c97602024aad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3ed676d4f9741d5ab616238ea0a88329c2afb98887a0474396bc4d85dbf111d5a06cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35c09a45e592b2811b3a5f63609fc8a14c6cc662f5ce98ab5a1d578d6eadcc656562a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac5509d92b8e23061f3f739f55445c8dff645b1e455098527d5dab21917eb4e393068e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde79231f98beab1d8dc40235d4fdb3e1451c774d7012bb4300b93a40807476b1ee80373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37374c47fa57c2775ef2dccf902d8f57a19fca4056ce996597f06f93f00ac75de02d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2d231c722f5cd047ba5f7d12159f3dc251920a4b4e86988a97abd48d8151f175d17203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a3343b1c832871b3e240dcd753e3165088972fccc34d58f769d46d6936075c16f095a1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef48619864e274a86a56edf062d4e3fbb751130da5555cefb323567edfaa69cd5201b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b13a98fa0edfd64bc8be4b8537f8d4e83ec1e6f9ed4d1c3e7bdc63dd2bc11c39bee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c1294e0d546e661ab4201fb5697bd350402abb455f8a9468b5045385269088b7c4c9b44fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b4331ddc231307302729bc42eef14127720411a4c405068b8de0a7321879129d370b8f82dcb5bac72d7ca5ff9cef2f3163781ca05ddb24b6467d0ecd0e0699ea90ad85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1eead2af810fd23967527905afd2d999276317717f6c4e7ac9c5f821f6fc8b43f53d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1822a535b6df4c5f7cc12657028de1e8d57f2cfb29bef4e20501dc4ca882924aeb801847a976872452da0f7c397005bb2b86d16eb734024309e369e7cd63ddeb5583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa35b9f2a710e2d0d7cbf641cae7efb81e7327e10a4e303970eec2b84c3e475ef5885ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056fa1dee30fdb73007a57708706ad6c0607f93e0abb272c624cb50bdf528b7d3d92dab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98733f1086e0f726fb2b7fecbe6273c69ae9b3392c40f070e186217cd7055abddd4b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c5e633ccb2a30d78702d555d4212a2315d72d7bc7f8a147ed6a8da3afb5d6a788f3ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249962e3a7f7bfcc5742144c3f1e81ee7154b9c3f037e2616226eaef100e203094f8b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12f23a8eed09cc9e87bbd876ea155787e6d8025fc03fbb5eb35273091fbd1211e7f2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f61070951005e5851b4624eea7adc326ce0f2bd71009b05b50cf91697e983620684e7366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bc1388faf3dc1db1dbb2deb29bc89f347745225101779b4b419ca58b87bd619683f51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43bee0327c14aebe4839fa3685c2da9227a4b56770c8ee5f936fcb11d8dbc61cf6fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a057844753d8d744bcd79b327fffb478924af20b870e365f3e1348710d7552d4ca61490744f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab9928bdceb841f885320140963a1fcdba79eb25d548c7aaf42f38c3c0dea6c3e1ad8bf240b8f011f362b906dfeb820a3d42173d8d16e73d0a5c921d96ece2d738../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-rt-4.18.0-522.rt7.311.el8.src.rpminstallonlypkg(kernel)kernel-rt-develkernel-rt-devel(x86-64)kernel-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~NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN4.18.0-522.rt7.311.el84.18.0-522.rt7.311.el84.18.0-522.rt7.311.el8.x86_644.18.0-522.rt7.311.el8          !!""#$%%%&&''(())**+++,,---..//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::::;;;<;::::::=:>?:::@::::::AAA:B::CD::::E:F:::GGG:HI:::J:KLM:N:::O:::6P66Q6R6ST6U66VVVWVXVVVVVVYVVZ[6\6]66^6__`_66a6bcbdbbefgbhihjjhklbmnompmqrmsmtmumvwmxmymzm{|m}m~mmmmmmmmmmmmmmmmmmbbbbbbbbbbbbbbbbb66666666666666666666666666666666666666666666666 66  6                                            66 666 66     66  6             666 ! ! ! " # " $ ! % ! ! & ! ! ' (66 ) *66 + + , , + +66 -666 . / 0 / / / / / / / / / / / 1 / / / / / / 2 2 / . 3 . . 4 . 56 66 7 7 8 8 966 : : : : ; < ; = : : : : : : : : : > > > > : : ? ? ? : : : : : : : @ : : : A :6666 B C D6 E6 F G666 H I H H J J K K H L H H M H H N N H O H H P P H H Q Q Q H R H H H S H H H H6 T66 U6 V V W6 X Y X Z [ Z \ Z ] ^ Z _ Z Z ` Z a b X c X d e66 f f g6 h h i6 j j k l k m j j n o p66 q r q s q t u q v w x6 y6 z z z z z z { { z z z z z66 |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   6             6  6 6 6666 !6666 "66 #6 $ % $ $ $ & $ $ $ $ $ $ $ ' ' $ $ $ ( ( ( ( $ ) $ $ $ $ * $ $ $ $6 + + , + + - + + . + /66 0666 1 2 3 4 5 16666 666 76 86 96 :6 ;6 <666 = > > > ? = = @ = = = = = A = B C B D B E B = F G = H I = J J = K L = = M M = = N O N P N Q N R N N S N T N U V N W W X N Y N Z N [ N \ N = ] = ^ ^ _ = ` = a b = = c = = d = = e e f = = = g = = = h = = = i = = = j6 k66 l l m m6 n n n n n n o o n n p p n q q r r n n n n s s s s n n n n n n n n n n n n n n n n n n n n n n n t n u n n n v n w n n n n n n n n n n n n n n n n n n x n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n y y n n z z z z n n { { { | { { { { { { { { } { { { { ~ ~ { { { { { { { { { { {  { { { { { { { { { n n n n n6 6 6 666 6 66 66 6 66 6 6 66 6 6 6 6 66666 6 666 6 666 6 6 6 66 66 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 66 66   6 6 66 6 6   6  6     6    6  6  !  " #  $ $ % & $ ' $ $ ( $ $ $ ) * * + $ , - $ . $ / $ 0 1 $ $ 2 2 3 $ 4 $ 5 $ 6 7  8 9  :   ;  < <  =  > ?  @  A  B B C D E D  F  G H  I  J   K L  M N M O M  P  Q  R S  T U  V   W  X  Y Z [ \ Y ]  ^ ^ ^ ^ ^ ^   _ `    a b c a d a a e e a a a a f a a g   h  i j  k  l m  n n  o     p  q q r q q s t  u v w x  y  z { | }  ~            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 6 6 66                                 6 6 66        6    !     " " "     # $ # % #   &  '   ( (   )  *  + + +     ,    - . /  0 1  2   3 3 3 3 3 3  4 5   6 7    8  96 :6 ; < < = = = =66 > > ? > > @ > > >66 A6 B6 C D C E F C C G G H C C I C J K J J J J J J L L L L J J J J M M M M M M M C N N C O O O C C C P Q Q Q P R R R R R R R R R R R R P S P C C T T T T T T T T T U V T T T T W T X X Y X X X X T T T T Z [ T \ T T6 ] ^ ^ ^ ^ _ _ _ _ _ _ _ _ _ ^ ^ ^ ^ ` ` ` `6 a6 b c b d b b e e b f b b b b6 g66 h h h h i j h k h l h m h n h o h p h h q h h666 r r r r r s s r t r u r v w r r x r r y r z r r { r r | r r } r r r ~6        6 6 66 666 6 6 6 6666 66 66 6666 6 66 666 6 66 6 66 6666 66 66 6 6 6 6 66666 66 66 666 66 66 6 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                      6 6 6  666  6  6 6     666        6  6       !  6 " " # $6 % %6 & & '66 ( (6 )666 *6 + + + , ,66 - - - - - - - - - - - -6 . .6 / / / / 0 /6 1 1 2 1 1 3 3 4 3 1 5 5 5 5 1 1 1 1 1 1 6 1 7 1 8 8 1 1 966 : :6 ; ; < < ; ; ; ; ; = ; ;66 > > ? > > > @ @ > A > > B B B > C > > D >6 E66 F G H G I J G K F6 L M6 N O N N P P P P P N Q N66 R S R T U66 V V V V W W X X V V Y Y Y Y Y Z Y Y Y Y Y Y Y [ Y Y V V \ \ V666 ] ]66 ^ ^ _6 ` a a66 b b6 c c6 d6 e f e e e66 g6 h h66 i66 j666 k k k l l k m n o o o k k p q p r66 s s t u t v w x66 y z {66 | | |6 }66 ~6  66 6 6 66 66 6 6666 66 66 6 6 6 66 6 66 6 6 6666 6 6 6 6 66 66 66 6 6 6 666 66 6 66 6 6 66666666666   66    666    66666666666666666 666!"#6$$6%666&&&&&&&&&&&&&&&&66'(66)66***++,**--*.66/60611213666456744846996666:::::::;66666<===66>>>>>66?@6A6BC666DDEFGD6H6IIJIIIIKILIIMNIIOP66QRS666TU66VVWVXXYV6Z[[\\666]]]^^]6_`66aaaaaa6666b666c6d6e66fgf66h66ii6j6kkl6mn6ooopq666rs6t6uvuuuu6wwxwyzw{w|w}6~~~~~~666666666666666666666666666666666666666666666666666666666666666666666666666666666  66 6 6    6 666666666666666666  !!"#$%&'()*)+,-..////01111211111111100034050600700088900:0;<0=00>>??@A@@BCDEFGHHIJKKLMMMNMMOOMPQQRSQTTTTUTVTWQQQXXXQQQQQQQQYYQZ[Q\\\]^]_\`\abccad\efgfhfifj\klkm\\\nopqorosot\uuuvwx\\yz\{|\\}~}\\\\\\\\\\\\\\QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ6666666666666666666666666666666666666  6 66     666666666666666666666 6!"!#!6$$%$&$'66(((((())***))+(6,,,,6-................-6/066162223226644466567859:;5<=<><?<@555A6BBCDCECB6FGH6I6JJ66K6LML66N66OOOPP66Q66RSR6T6U6VW6XXXYY6ZZ[\[66]^]66__6``66a6b6666cdcccecccccc6f6g6h6iij6666kkklkmk66nn6o6p6q6r666ssstssuvsswxsssysssszss{s|||}~|sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss6666666666666666666666666666666666666666666666666666666666      !"#$%&''()**+,-./012345678696::;66<<<<<<<<=<6>>?>6@6A66BBCCCCCCC66DEDDDD666FF6GGG666H66I6/JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKJJJJJJJJJJJJJJJJJJJJJJJJJJJ//LLMNNOOOONPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQQQNNNNNNNNNNRRRRRRRRRR/STSUSVSWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWSXSYYYYYSZZZZZZZZZZZS[S\]\\S^^^^S_____S`````SaSbbbbbSccccccccSdddddddddddSeSfSgggggShhhSiiiiiiiiiiiiiiiiiiiiiiiSjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjSkSlSmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmSnnnnSoooooooooooooSpSqqqqqSr/sssssstus/vvvvvvvvvvvvv/wwwww/xxxxxx/yyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy{yyyyyyyyyyyyyy|||||||||yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy}}}yyyy~~~~~~~yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy//////////            /                                                                                                                                                                                          /// !"####""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$$%%%%%%%%%%%%%%%%%&&&&&&&&&'''''''''''''(((())*+,-------------------...../////////////011122222333344333333333333333333333335566665555777777777778977777::::77;;;<<<</==============/>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>/??@@@@@???????AAAAAABBBBBACCCCCCCCCCCCCCCCAAAAAAAAAA?????????DDEFFFFFFGGGHHHIFJFKKLFMMFNFOOFPPFQFRRFSFTTFUFVVVFWFXXFYYZ[ZZZZZZZZ\Z]Z^^Z__Z`ZaZbZccZdZeZffgZhZiiZjjZkZlZmZnooooppoqrssrttruurvvrrrwrxxryyrzzr{{{||{}}{~~{rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr                                  !! """##"$"%%"&&&' (( )) ***+*,,,- .../.0.1.2.3 4445464748494:4;4< ===> ??@ AAABACADAEAFAGAHAIAJAKAL MM NOO PP QQQRQSQTQUQVQWQXQYQZQ[Q\Q]]Q^Q_Q`QaQbQcQdQeQfQgQhQiQj kkklkm nn oo pppqqprrrssrtrurvrwrxrypzzp{{p||p}}p~~ppppppppppppppppppppppppppppp              !"#$%&'(()*+,-./0123456789:;;<;=>?@@A@B@C@D@E@F@G@H@I@J@KKLKM@N@O@P@Q@R@S@T@UVWXYZ[[\]]^_`abcdeffghijklmnopqrstuvwxyz{{|}~|{4.18.0-522.rt7.311.el8.x86_64.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.hghes.hmemoryfailure.hpcieaer.hbattery.hbgrt.hbutton.hcmpc.hcontainer.hcppclib.hcpufreqpss.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.hath10kath10k.hce.hdebugfs.hpci.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.hbfqgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.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.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.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.husednsresolver.hcfg80211cfg80211.hcrdasupport.hdefaultps.hrequiresignedregdb.husekernelregdbkeys.hcfsbandwidth.hcgroupbpf.hcpuacct.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbldi8253.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.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.hdebugbootparams.hbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hpreempt.hsectionmismatch.hshirq.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.hcoherentpool.hengineengine.hraid.hops.hsharedbuffer.hvirtualchannels.hdmadevices.hdmartable.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.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.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.hf71808ewdt.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.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.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.hirqeffectiveaffmask.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.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.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.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.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.hdebugfs.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.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.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.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.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.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.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.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.hpaniconoopsoops.hvalue.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.hclk.hdebug.hgenericdomainsdomains.hsleep.hsleepsleep.hdebug.hsmp.hstdpartition.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.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hcpuresctrl.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hthermalmmiorapl.hvmcorevmcore.hdevicedump.hprofiling.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.hnetlinkinterface.htree.hquotactlquotactl.hcompat.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hrandomizebase.hmemorymemory.hphysicalpadding.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hmap.hrcuboostboost.hdelay.hcpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.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.hpci.husb.hrtw88rtw88.h8822b.h8822be.h8822c.h8822ce.hcore.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.hctlfastlookup.hled.hctxfi.hdarla20.hdarla24.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.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.hverboseprocfs.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.hkstrtox.hlistsort.hlivepatch.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.hirqflagsnmisupport.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.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.hcheckbioscorruption.hcmov.hcmpxchg64.hcpuresctrl.hcpuid.hdebugctlmsr.hdecoderselftest.hdirectgbpages.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.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.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.c.000i.ipa-clonesdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cempty.c.000i.ipa-clonesfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-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//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/alpha/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/plat-eznps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/plat-sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/boot/bootp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-alpine//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-artpec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-at91//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-axxia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-berlin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-dove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-efm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-exynos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-gemini//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-highbank//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-hisi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-integrator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-keystone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-mmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-moxart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-mxs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-netx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-npcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-nspire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-omap1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-omap2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-prima2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-realview//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-rpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-tango//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-u300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-zx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mach-zynq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/nwfpe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/plat-iop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/plat-omap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/plat-orion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/plat-pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/plat-samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/plat-versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/probes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/vfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/arm64/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/c6x/platforms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/h8300/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/hexagon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/hexagon/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/hexagon/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/hexagon/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/dig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/hp/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/hp/sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/sn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/sn/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/68000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/amiga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/apollo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/atari//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/bvme6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/coldfire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/fpsp040//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/hp300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/mac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/mvme147//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/mvme16x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/q40//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/sun3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/sun3x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/microblaze/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/alchemy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/alchemy/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/ar7//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/ath25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/ath79//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/bcm47xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/bcm63xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/bmips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/boot/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/cobalt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/dec/prom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/emma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/emma/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/emma/markeins//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/fw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/fw/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/fw/cfe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/fw/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/fw/sni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/jazz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/jz4740//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/lasat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/lasat/image//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson32/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson64/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/mti-malta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/netlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/netlogic/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/paravirt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pic32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pic32/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pistachio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pnx833x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/rb532//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sibyte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sibyte/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/sni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/txx9//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/txx9/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/vr41xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nds32/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/nios2/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/openrisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/openrisc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/openrisc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/openrisc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/openrisc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/parisc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/purgatory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/sysdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/powerpc/xmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/riscv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/riscv/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/riscv/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/riscv/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/appldata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/hypfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/purgatory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/s390/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/boot/romimage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/cchips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/drivers/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/drivers/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/lib64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sh/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/prom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/sparc/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/kernel/skas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/os-Linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/um/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/unicore32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/unicore32/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/unicore32/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/unicore32/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/unicore32/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/coco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/coco/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/crypto/sha1-mb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/crypto/sha256-mb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/crypto/sha512-mb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/entry//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/entry/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/events/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/events/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/ia32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/e820//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/fpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/numachip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/shared//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/asm/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/generated//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/generated/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/generated/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/generated/uapi/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/include/uapi/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/apic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/mm/pat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/geode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/iris//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/olpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/scx200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/sfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/platform/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/purgatory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/ras//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/realmode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/realmode/rm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/um//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/um/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/x86/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/platforms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/block/partitions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/certs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/crypto/asymmetric_keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/crypto/async_tx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/accessibility//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/accessibility/braille//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/acpica//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/apei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/arm64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/dptf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/nfit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/acpi/pmic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/amba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/auxdisplay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/base//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/base/firmware_loader//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/base/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/base/regmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/base/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bcma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/aoe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/drbd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/mtip32xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/paride//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/rsxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/xen-blkback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/block/zram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bluetooth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bus/mhi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/bus/mhi/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/cdrom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/agp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/hw_random//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/ipmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/mwave//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/tpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/char/xillybus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/at91//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/axis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/axs10x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/berlin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/h8300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/imgtec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/ingenic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/keystone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/loongson1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/mmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/mvebu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/mxs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/nxp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/pistachio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/sirf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/socfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clk/zynq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/connector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/counter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/cpufreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/cpuidle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/cpuidle/governors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/amcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/axis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/caam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/ccp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/ccree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/nx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/qce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/crypto/vmx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dax/hmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dax/pmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/devfreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/devfreq/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma-buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/bestcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/dw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/hsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/idxd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/ioat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/ipu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/ptdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/dma/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/edac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/eisa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/extcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/efi/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/google//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/psci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/smccc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/firmware/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/fmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/fpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/fsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/host1x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/gpu/vga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hid/surface-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hid/usbhid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hsi/clients//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hsi/controllers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwspinlock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwtracing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/hwtracing/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/i2c/algos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/i2c/busses//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/i2c/muxes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ide//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/afe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/amplifiers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/buffer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/chemical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/counter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/dac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/dummy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/health//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/humidity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/imu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/light//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/magnetometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/multiplexer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/orientation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/potentiometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/potentiostat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/pressure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/proximity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/resolver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/temperature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iio/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/sw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/gameport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/joystick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/keyboard//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/mouse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/rmi4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/serio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/tablet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/input/touchscreen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iommu/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iommu/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/iommu/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ipack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ipack/carriers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ipack/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/irqchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/capi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/divert//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/gigaset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/hardware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/hisax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/hysdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/i4l//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/isdn/mISDN//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/leds/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/lightnvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/macintosh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/macintosh/ams//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mailbox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mcb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/md//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/md/bcache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/md/persistent-data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/common/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/common/saa7146//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/common/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/dvb-core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/mmc/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/cx18//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/cx88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/mantis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/meye//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/ngene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/pt1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/pt3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/tw68//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/am437x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/cadence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/coda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/omap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/vimc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/vivid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/radio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/radio/si470x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/radio/si4713//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/rc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/tuners//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/airspy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/as102//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/au0828//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/go7007//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/gspca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/pwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/s2255//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/uvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/media/v4l2-core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/memory/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/memory/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/memstick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/memstick/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/memstick/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/message/fusion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/c2port//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/cardreader//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/cb710//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/cxl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/echo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/eeprom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/genwqe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/ibmasm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/lkdtm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/card//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/scif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/mic/vop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/ocxl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/ti-st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mmc/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mmc/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/chips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/lpddr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/maps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/parsers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mtd/ubi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/appletalk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/arcnet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/bonding//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/c_can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/cc770//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/m_can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/mscan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/rcar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/sja1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/softing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/dsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/dsa/b53//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/google//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/fddi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/fjes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/hamradio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/hippi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ieee802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ipvlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/netdevsim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/pcs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/plip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/ppp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/slip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/team//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/thunderbolt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/vmxnet3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wan/lmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/net/xen-netback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/fdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/microread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/pn533//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/pn544//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/st-nci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nfc/st95hf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ntb/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nubus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nvdimm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nvme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nvme/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nvme/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/nvmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/of//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/of/unittest-data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/opp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/parisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/parport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/controller//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/endpoint//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/pcie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pci/switch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/perf/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/allwinner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/amlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/motorola//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/qualcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/phy/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pinctrl/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/chrome//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/goldfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/mellanox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/olpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pnp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pnp/isapnp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/power/avs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/power/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/power/supply//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/powercap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pps/clients//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pps/generators//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ps3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/pwm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/rapidio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/rapidio/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/rapidio/switches//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ras//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/regulator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/remoteproc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/reset/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/reset/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/reset/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/rpmsg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/char//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/cio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/s390/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sbus/char//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/aacraid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/bfa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/csiostor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/device_handler//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/esas2r//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/fcoe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/fnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/isci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/libfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/libsas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/lpfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/megaraid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/mvsas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/pm8001//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/qedf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/qedi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/snic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/scsi/ufs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sh/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sh/intc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sh/maple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sh/superhyway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/siox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/slimbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/sn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/amlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/dove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/fujitsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/gemini//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soc/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/spmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/ssb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/android/ion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/board//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/comedi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/dgnc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fbtft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/fwserial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/gdm724x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/goldfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/greybus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/addac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/meter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/ks7010//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/imx074//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/media/zoran//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/cdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/dim2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/most/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/netlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/nvec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/pi433//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8712//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/rts5208//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/skein//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/sm750fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/speakup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/unisys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vc04_services//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vme/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vt6655//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/vt6656//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/wilc1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/staging/xgifb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/target/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/target/loopback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/target/sbp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/target/tcm_fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tee/optee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/thunderbolt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/hvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/ipwireless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/serdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/serial/8250//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/tty/vt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/uio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/c67x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/chipidea//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/dwc2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/dwc3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/early//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/gadget//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/gadget/function//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/host/whci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/image//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/isp1760//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/mon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/mtu3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/musb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/roles//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/storage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/typec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/typec/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/usbip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/usb/wusbcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/uwb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/uwb/i1480//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vdpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vfio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vfio/mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vfio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vfio/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vhost//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/backlight//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/fbdev/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/video/logo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virt/coco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virt/vboxguest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/visorbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vlynq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vme/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/vme/bridges//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/w1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/w1/masters//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/w1/slaves//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/xen/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/xen/xenbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/xen/xenfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/drivers/zorro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/9p//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/adfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/affs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/afs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/autofs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/befs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/bfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/btrfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/cachefiles//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/cifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/coda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/configfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/cramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/debugfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/devpts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/dlm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ecryptfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/efivarfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/efs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/exportfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ext2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ext4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/f2fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/fat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/freevxfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/fscache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/fuse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/gfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/hfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/hfsplus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/hostfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/hpfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/hugetlbfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/iomap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/isofs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/jbd2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/jffs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/jfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/kernfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/lockd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/minix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nfs/blocklayout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nfs/filelayout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nfs_common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nfsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nilfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/nls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/notify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/notify/dnotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/notify/fanotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/notify/inotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ntfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ocfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ocfs2/cluster//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ocfs2/dlm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/omfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/openpromfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/orangefs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/overlayfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/qnx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/qnx6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/quota//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/reiserfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/romfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/squashfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/sysfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/sysv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/tracefs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ubifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/udf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/ufs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/fs/xfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/acpi/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/asm-generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/asm-generic/bitops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/asm-generic/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/8139too//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/apei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/apei/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/cppc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/cpu/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/ec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/legacy/tables//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/processor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/rev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/rev/override//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/spcr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/system//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/system/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/system/power/states//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/acpi/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/advise//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/alim1535//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/alim7101//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/allow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/allow/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amd/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amd/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amd/sfh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amd/xgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amd/xgbe/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amiga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/amilo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/aperture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/apple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/apple/mfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/aquantia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/cpuidle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/dma/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/enable/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/enable/split//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/acpi/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/add//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/cache/line//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/cc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/devmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/fast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/filter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/force//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/fortify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/gcov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/kexec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/membarrier/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/non//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/pmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/pte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/set//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/set/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/sg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/strict//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/strict/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/strict/module//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/sync/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/sync/core/before//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/syscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/has/zone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/have/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/hibernation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/may//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/may/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/might//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/might/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/might/have/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/proc/kcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/select/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/sparsemem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/supports//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/supports/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/supports/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/supports/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/supports/optimized//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/suspend//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/use/builtin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/use/memremap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/use/queued//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/uses//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/uses/high//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/uses/pg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/batched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/batched/unmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/batched/unmap/tlb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/default/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/general//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/huge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/huge/pmd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/old//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/wants//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/wants/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/wants/dynamic/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arch/wants/thp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arm/gic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/arm/gic/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/associative//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/asus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/asus/nb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/asymmetric//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/asymmetric/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/asymmetric/public//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/async//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/async/raid6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/async/tx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ata/verbose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ath10k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ath11k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ath9k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ath9k/btcoex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ath9k/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/atomic64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/audit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/autofs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/autofs4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/auxiliary//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/backlight//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/backlight/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/backlight/lcd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/balloon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/base//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcm/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcm7xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcm87xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcma/driver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcma/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bcma/host/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/be2net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bfq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bfq/group//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/big//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/binary//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/binfmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bitfield//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bitfield/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bits//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bits/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/dm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/loop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/null//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/dev/ram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/mq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/blk/wbt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bnx2x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bnxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bnxt/flower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/boot/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/hung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/jit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/jit/always//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/jit/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/kprobe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/stream//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/unpriv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/branch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/branch/profile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/brcmfmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/brcmfmac/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/brcmsmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/ebt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/igmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bridge/vlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bsd/process//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bsd/process/acct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/bnep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/hciuart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/mrvl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bt/rfcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bug/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/bug/on/data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/build//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/buildtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/buildtime/extable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/8dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/c/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/calc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/cc770//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/ems//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/esd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/kvaser//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/peak//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/plx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/can/sja1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/capi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cb710//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cb710/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/kasan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/return//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/sancov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/sane//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/working//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/is//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/optimize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cc/optimize/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cdrom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cec/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph/fs/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph/lib/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/crda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/require//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/require/signed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/use/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfg80211/use/kernel/regdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cgroup/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/charger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/check//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/checkpoint//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/chelsio/inline//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/chelsio/tls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/chr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/chr/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cicada//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs/allow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs/dfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs/smb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs/weak//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clang//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clkbld//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clkdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clkevt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clocksource/validate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clocksource/validate/last//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cls/u32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/clz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cmdline//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cmdline/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compat/32bit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compat/binfmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compat/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compat/for/u64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/compat/old//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/configfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/console/loglevel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/context//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/context/switch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/contig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/core/dump//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/core/dump/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cortina//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/freq/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/ibpb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/ibrs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/sup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cpu/unret//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crc/itu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crc32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cross//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cross/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/aes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/aes/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/aes/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/ansi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/blowfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/blowfish/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia/aesni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia/aesni/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia/aesni/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia/aesni/avx2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia/aesni/avx2/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/camellia/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast5/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast5/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast6/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/cast6/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/chacha20//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/chacha20/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/crc32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/crc32c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/crct10dif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/des3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/des3/ede//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/des3/ede/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/dev/ccp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/dev/padlock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/dev/qat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/dev/sp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/drbg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/fips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/ghash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/ghash/clmul//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/ghash/clmul/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/glue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/glue/helper//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/michael//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/poly1305//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/poly1305/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/rng//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent/avx2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent/avx2/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent/sse2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/serpent/sse2/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/sha1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/sha256//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/sha512//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/twofish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/twofish/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/twofish/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/twofish/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/twofish/x86/64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/crypto/user/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/cypress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/damon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/davicom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dcache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dcache/word//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/de//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/debug/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/debug/info//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/debug/section//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/decompress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/fq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/hung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/hung/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/io/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/mmap/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/default/tcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/deferred//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/deferred/struct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/deferred/struct/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dell/smbios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dell/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/detect//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/detect/hung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/devtmpfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dlci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dlm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm/bio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm/multipath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm/persistent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dm/thin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dma/coherent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dma/engine//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dma/shared//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dma/virtual//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dmar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dmi/scan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dmi/scan/machine//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dmi/scan/machine/non//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dmi/scan/machine/non/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dp83640//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dp83822//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dp83848//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dp83867//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dp83tc811//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dptf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/amd/dc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/amdgpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/display/dp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/dp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/dp/aux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/export//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/export/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/fbdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/gem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/capture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/fence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/force//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/gvt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/heartbeat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/max/request//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/preempt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/preempt/timeout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/request//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/stop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/timeslice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/i915/userfault//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/kms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/kunit/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/load//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/load/edid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/mipi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/nouveau//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/panel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/radeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/ttm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/drm/vram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dummy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dummy/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/au8522//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/av7110//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/budget//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/dummy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/firedtv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/ttusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/tuner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dw/dmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dwmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dynamic/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/dynamic/physical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/e1000e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/early//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/early/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/early/printk/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/edac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/edac/atomic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/edac/decode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/edac/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/eeepc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/eeprom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/dev/path//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/rci2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/runtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/vars//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/vars/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efi/vars/pstore/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/efivar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/enable/must//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/enclosure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/encrypted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/energy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ethtool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/evm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/evm/attr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/exclusive//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/exclusive/system//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/exportfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/exportfs/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ext4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ext4/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ext4/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ext4/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ext4/use/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/extra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/f71808e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fair//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fair/group//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fanotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fanotify/access//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fat/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fat/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fb/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fb/boot/vesa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fb/cfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fb/deferred//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fb/sys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fcoe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fips/signature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fix/earlycon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fixed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/font//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fortify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/frame//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/framebuffer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/framebuffer/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fscache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ftrace/mcount//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fujitsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/function//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/function/error//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/function/graph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fuse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fusion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fusion/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/futex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fw/attr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fw/cfg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fw/cs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fw/loader//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/fw/loader/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gact//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/bug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/bug/relative//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/calibrate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/clockevents//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/clockevents/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/cmos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/early//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/find//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/find/first//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/irq/effective//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/irq/effective/aff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/irq/matrix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/irq/reservation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/isa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/msi/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/pending//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/smp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/smp/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/strncpy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/strnlen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/generic/vdso/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gfs2/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gigaset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gpiolib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/grace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/gro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/haltpoll//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hangcheck//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardened//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardened/usercopy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardirqs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardirqs/sw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardlockup/check//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hardlockup/detector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/has/ioport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hash/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/acpi/apei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/aligned//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/aligned/struct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/compat/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/huge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/kasan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/node//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/node/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/thread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/thread/struct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/transparent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/transparent/hugepage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/userfaultfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/vmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/within//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/arch/within/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/bootmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/bootmem/info//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/cmpxchg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/context//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/copy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/copy/thread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/ebpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/efficient//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/exit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/fast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/function//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/function/error//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/function/graph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/gcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/hardened//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/hardlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/ioremap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/irq/exit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/irq/exit/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/irq/exit/on/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/irq/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kprobes/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm/cpu/relax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm/dirty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm/no//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/kvm/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/mixed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/mixed/breakpoints//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/mmiotrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/mod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/mod/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/move//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/pcspkr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/perf/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/perf/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/posix/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/posix/cpu/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/posix/cpu/timers/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/preempt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/regs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/regs/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/reliable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/sched/avg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/setup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/setup/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/syscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/unstable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/unstable/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/user/return//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/virt/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hdlc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hdmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hdmi/lpe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/headers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hibernate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/battery//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/betop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/logitech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/custom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/inclinometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hid/sensor/magnetometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/high//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/high/res//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/16//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/avm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/bkm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/enternow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/fritz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/hfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/netjet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/no//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hisax/sct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hmm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hotplug/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hotplug/pci/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hpet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hpet/emulate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hpwdt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hpwdt/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hsa/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hugetlb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hw/random//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hwlat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hwmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hwpoison//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hypervisor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hysdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/hz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/amd756//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/designware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/diolan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/helper//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/nforce2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/parport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/pca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i2c/tiny//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i40e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i6300esb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/i8253//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ia32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ia32/feat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ib700//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/icplus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ideapad//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/idle/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ie6xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ieee802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/igb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iio/consumers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iio/consumers/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iio/kfifo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iio/triggered//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/illegal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/illegal/pointer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/appraise//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/default/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/lsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/measure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/read//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/secure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/secure/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/sig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ima/write//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/diag//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/esp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/tcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/udp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet6/esp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inet6/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/opa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/infiniband/vmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/init//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/init/env//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/init/env/arg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/initramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/inotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/ati//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/atlas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/ff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/keyspan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/mousedev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/instruction//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/int340x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/integrity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/integrity/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/integrity/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/hfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/idxd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/iommu/floppy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/iommu/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/ish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/ishtp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/pch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/pmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/pmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/rapl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/soc/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/soc/dts/iosf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/speed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/speed/select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/th//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/turbo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/turbo/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/uncore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/uncore/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/intel/xway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/interval//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/io/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/io/delay/type//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iommu/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iommu/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iosched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iosf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/advanced//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/fib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/fib/trie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/mroute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/nf/arp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/nf/match//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/nf/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/pimsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/route//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/set//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/set/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/set/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/mh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/pe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip/vs/tab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip6/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip6/nf/match//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ip6/nf/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipmi/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipmi/dmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipmi/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipmi/plat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ippp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/mroute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/route//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/router//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ipv6/sit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/imon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/ite//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/jvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/nec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/rc5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/rc6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/sanyo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/sony//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ir/winbond//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/irq/bypass//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/irq/domain//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/irq/forced//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/irq/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isa/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iscsi/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iscsi/ibft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iscsi/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn/capi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn/drv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn/ppp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/isdn/tty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iso9660//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/it87//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/it8712f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/itco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/itco/vendor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iwlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/iwlwifi/opmode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ixgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ixgbevf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kallsyms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kallsyms/absolute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kallsyms/base//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/karma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kexec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kexec/bzimage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kexec/bzimage/verify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/keyboard//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kprobe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kprobes/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kunit/all//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kunit/example//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/async//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/external//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/external/write//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/generic/dirtylog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/kvm/generic/dirtylog/read//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/l2tp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lcd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lcd/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/led//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/led/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/brightness//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/clevo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/lp55xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/leds/trigger/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/legacy/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/linear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/linear/ranges//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/liquidio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/list/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/load//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/load/uefi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/debugging//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/down//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/down/in//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/down/in/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/down/in/efi/secure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/spin/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lock/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lockd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lockdep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/log/buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/log/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/log/cpu/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/logitech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/logo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/logo/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/loopback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lsi/et1011c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lsm/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lwtunnel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lz4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/lzo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211/rc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211/rc/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211/sta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211/sta/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mac80211/sta/hash/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/machz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/macintosh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/magic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/magic/sysrq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mantis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mapping//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mapping/dirty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/marvell/10g//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/max/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/maxlinear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/md//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mdio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mdio/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mdio/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/analog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/analog/tv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/digital//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/digital/tv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/radio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/subdrv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/tuner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/media/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/megaraid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mellanox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mem/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memcg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memcpy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memcpy/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memstick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memstick/jmicron//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memstick/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/memstick/tifm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/message/loglevel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mfd/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mfd/intel/lpss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mfd/sm501//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mhi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mhi/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/micrel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/microchip/t1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/microcode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/microsemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/minix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/misc/rtsx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/misdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx4/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/cls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/core/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/sf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/sw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/tc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlxreg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlxsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlxsw/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc/ricoh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc/sdhci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc/tifm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmc/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmconf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmu/gather//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mmu/gather/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/modify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/modify/ldt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/module//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/module/force//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/module/sig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/module/srcversion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/modules//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/modules/tree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/modules/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/modules/use/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse/elan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse/ps2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mouse/synaptics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mpls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mptcp/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mq/iosched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/msdos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mspro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mt76//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mt76/connac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mt76x0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mt76x02//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mt76x2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mt7921//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/cfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/map//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/map/bank//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/ubi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtrr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtrr/sanitizer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtrr/sanitizer/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtrr/sanitizer/spare//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtrr/sanitizer/spare/reg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mtrr/sanitizer/spare/reg/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mutex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mutex/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mutex/spin/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mwifiex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/mxm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/myri10ge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/n//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/national//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/dma/map//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/per/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/per/cpu/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/per/cpu/page/first//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/sg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/need/sg/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/act//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/act/tunnel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/cls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/drop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/ematch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/flow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/ip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/ipgre//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/l3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/l3/master//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/mpls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/poll//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/sch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/sch/fq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/sock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/tc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/tc/skb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/team//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/team/mode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/udp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/net/vendor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netconsole//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netdev/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netdev/addr/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter/family//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter/xt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/network//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/network/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/netxen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/new//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/conntrack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/ct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/ct/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/defrag//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/dup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/flow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/flow/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/nat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/reject//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/socket//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/tables//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nf/tproxy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfp/app//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfp/app/abm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/acl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/v4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/v4/1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfs/v4/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfsd/v2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfsd/v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfsd/v4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft/dup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft/fib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft/flow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft/fwd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nft/reject//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nitro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nls/codepage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nls/iso8859//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nls/koi8//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nls/mac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/no//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/no/hz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nodes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nouveau//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nouveau/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nr/cpus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nr/cpus/range//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ntb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/numa/keep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nvdimm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nvme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nvme/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nvme/verbose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/nvsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/oid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/old//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/openvswitch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/oprofile/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/optimize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/osf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/osnoise//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/output//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/overlay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/page/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/panasonic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/panic/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/panic/on/oops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/paravirt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/paravirt/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/parport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/parport/not//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/partition//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pci/lockless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pci/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pci/msi/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pci/pf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pcie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pcie/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pcieaer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pcieaspm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pcs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pcspkr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/perf/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/perf/events/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/perf/events/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/persistent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pgtable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/phys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/phys/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/phys/addr/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/physical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pkcs7//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pkcs7/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/plugin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pm/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pm/generic/domains//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pm/sleep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pm/std//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pmic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pnfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pnfs/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/posix/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/posix/cpu/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/posix/cpu/timers/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/posix/mqueue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ppp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ppp/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pps/client//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/preempt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/prevent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/prevent/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/prime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/print//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/print/quota//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/printk/safe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/printk/safe/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/probe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/pid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/thermal/mmio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/vmcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/provide//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/provide/ohci1394//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/provide/ohci1394/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/psi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/psi/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pstore/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pstore/deflate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ptp/1588//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ptp/1588/clock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pwm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/pwm/lpss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/qcom/qmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/qed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/qfmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/qrtr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/qsemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/queued//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/quota//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/quota/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/quotactl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/radio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/raid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/raid6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/raid6/pq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/random//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/random/trust//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/randomize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/randomize/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/randomize/memory/physical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rational//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rational/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rc/ati//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu/boost//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu/need//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu/nocb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rcu/stall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/reed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/reed/solomon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/regmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/regmap/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/resource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/resource/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rfkill//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rhel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ring//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ring/buffer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rmi4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rmi4/2d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rmi4/f03//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rpcsec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rpcsec/gss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt2800//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt2800/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt2800pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt2800usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt2x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rt2x00/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/drv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/hctosys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/intf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/mc146818//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtc/systohc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtl8192c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtl8723//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtw88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rtw89//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/runtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/runtime/testing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rwsem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rwsem/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sample//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sample/vfio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sample/vfio/mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sata/ahci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sata/mobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sbc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sbc/fitpc2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scf/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sched/mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sched/omit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sched/omit/frame//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/bnx2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/dh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/qla//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/sas/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/scan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/scsi/srp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sctp/cookie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sctp/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sdio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/section//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/section/mismatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/network//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux/avc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/security/writable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/select/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/dell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/fam15h//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/i5k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/lis3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/mlxreg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/ntc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/sch56xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sensors/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/8250//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/8250/many//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/8250/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/8250/share//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/arc/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serial/multi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serio/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/serio/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sfc/mcdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sfc/siena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sgetmask//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sgi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sgl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/shuffle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/shuffle/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/signed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/signed/pe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/signed/pe/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/skb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/slab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/slab/freelist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/slip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/slub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/slub/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sms/sdio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sms/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sms/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/smsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/smsc/sch311x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/ac97/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/amd/acp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/atiixp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/cs46xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/ctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/emu10k1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/es1968//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/codec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/codec/ca0132//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/cs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/cs/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/ext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/input/beep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/patch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/power/save//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/scodec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/hda/scodec/cs35l41//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/intel/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/intel/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/jack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/jack/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/maestro3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/mpu401//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/opl3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/oxygen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/pcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/seq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/seq/midi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/sequencer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/acpi/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/amd/renoir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/amd/vangogh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/amd/yc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/cs35l41//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/hdac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/i2c/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bdw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bdw/rt5650//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bdw/rt5677//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/broadwell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bxt/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bxt/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bxt/rt298//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/byt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/byt/cht//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/byt/cht/cx2072x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/byt/cht/da7213//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/byt/cht/es8316//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/byt/cht/nocodec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bytcr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bytcr/rt5640//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/bytcr/rt5651//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht/bsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht/bsw/max98090//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht/bsw/max98090/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht/bsw/nau8824//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht/bsw/rt5645//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cht/bsw/rt5672//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cml//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cml/lp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cml/lp/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/cml/lp/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/ehl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/ehl/rt5660//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/glk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/glk/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/glk/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/glk/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/glk/rt5682/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/haswell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/hda/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/da7219/max98927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/rt5660//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/max98927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/rt5514//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/rt5514/max98927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/hda/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/hda/dsp/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25/ssm4567//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skl/rt286//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skylake//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/skylake/ssp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/cml//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/cml/rt1011//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/cml/rt1011/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/da7219/max98373//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/es8336//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/maxim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/nau8825//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/pcm512x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/ssp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/ssp/amp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sof/wm8804//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/soundwire/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/sst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/user/friendly//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/intel/user/friendly/long//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/max98373//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/pcm512x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt1308//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt1316//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt1318//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt5514//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt5677//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt700//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt711//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt711/sdca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt712//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt712/sdca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt715//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/rt715/sdca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sdw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/hda/audio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/hda/link//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel/atom/hifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel/hifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel/hifi/ep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/intel/soundwire/link//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/probe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/sof/probe/work//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/topology//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/topology/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/utils//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/utils/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/wm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/soc/wm8804//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/sst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/sst/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/sst/atom/hifi2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/sst/atom/hifi2/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/synth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/verbose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/via82xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/snd/vx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sock/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sock/validate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/softlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/solaris//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/solaris/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sony//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sonypi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sound/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sound/oss/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/soundwire/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sp5100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sparse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sparsemem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/speculation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/spi/pxa2xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/split//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/split/ptlock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/squashfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/squashfs/decomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/squashfs/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/squashfs/fragment//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ssb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stackprotector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stacktrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stm/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stm/proto/sys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stm/source//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stmmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/stream//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/strict//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/strict/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/strict/module//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/strip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/strip/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sun//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/suspend//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/symbolic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/syn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/synclink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sysctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sysctl/exception//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sysctl/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sysfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/system//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/system/blacklist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/system/data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/system/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/sysvipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tablet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tablet/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tablet/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/task/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/task/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tasks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tasks/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tasks/rude//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tasks/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcg/tis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tcp/cong//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tdx/guest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/teranetics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/test/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/textsearch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/default/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/emergency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/gov/bang//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/gov/step//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/gov/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thermal/writable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thinkpad//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thinkpad/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thinkpad/acpi/alsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thinkpad/acpi/hotkey//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thread/info//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/thread/info/in//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tifm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tigon3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/time/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/timerlat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tipc/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tmpfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tmpfs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/topstar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/toshiba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/toshiba/bt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/touchscreen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/trace/irqflags//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/trace/irqflags/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tracer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tracer/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tracing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/tree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ttpci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/typec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/typec/dp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/typec/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ucs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/ucsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/udf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uefi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uefi/cper//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uio/pdrv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/unix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/unix98//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/unixware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/unwinder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uprobe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ali//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/announce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/announce/new//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/arch/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/autosuspend//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/conn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ehci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ehci/root//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ezusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/few//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/few/init//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ftdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/gspca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/hsic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/hwa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/led//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/cdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/huawei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/huawei/cdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/qmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/net/rndis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ohci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/ohci/little//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/pulse8//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/pwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/pwc/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/rainshadow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/role//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/roles//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/roles/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/digi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/mct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/safe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/sierra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/storage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/storage/ene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/uhci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/video/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/video/class/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/wusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb/xhci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/usb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/use/percpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/use/percpu/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/user/return//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/user/stacktrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/uwb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vdpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vdpa/sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vfat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vfio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vfio/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vfio/mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vfio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vga/arb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vga/arb/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vhost//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/au0828//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/cx18//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/cx231xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/cx88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/em28xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/ir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/pvrusb2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/saa7134//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/saa7146//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/video/tm6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/videobuf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/videobuf/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/videobuf2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/videobuf2/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virt/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virt/to//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virtio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/virtio/vsockets//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vitesse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vlan/8021q//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vm/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vmware/vmci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vsockets//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vt/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vt/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/vt/hw/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/w83627hf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/w83877f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/w83977f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/want//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/want/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/watchdog/handle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/watchdog/open//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/wdat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/wlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/wlan/vendor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x509//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x509/certificate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/64/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/acpi/cpufreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/amd/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/amd/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/amd/pstate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/amd/pstate/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/check//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/check/bios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/decoder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/extended//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/feature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/hv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/hv/callback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/intel/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/intel/memory/protection//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/intel/tsx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/intel/tsx/mode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/internode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/internode/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/l1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/l1/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/local//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/mcelog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/minimum//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/minimum/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/need//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/p4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/pkg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/pkg/temp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/platform/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/pmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/pmem/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/powernow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/reroute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/reroute/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/reroute/for/broken//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/reroute/for/broken/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/sgx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/speedstep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/supports//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/supports/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/vmx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/vmx/feature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/x86/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xarray//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xdp/sockets//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xfrm/sub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xfs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/xz/dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/yenta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/yenta/ene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/zlib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/zone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/zram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/config/zsmalloc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/crypto/internal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm-backport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm-backport/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/drm/ttm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/clock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/pwm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/regulator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/spmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/dt-bindings/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/generated//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/generated/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/generated/uapi/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/amba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/avf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/bcma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/byteorder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/can/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/can/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/crush//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/decompress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/dsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/extcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/firmware/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/firmware/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/fpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/hsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/dac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/imu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/iio/timer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/irqchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/lockd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mailbox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/abx500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/arizona//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/da9052//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/da9055//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/da9062//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/da9063//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/da9150//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/syscon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/net/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/netfilter_arp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/pcs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/phy/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/platform_data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/platform_data/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/platform_data/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/qed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/raid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/regulator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/remoteproc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/rpmsg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/dove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soc/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/ssb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/ulpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/unaligned//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/uwb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/linux/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/media/davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/media/drv-intf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/media/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/media/tpg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/9p//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/bluetooth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/iucv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/mana//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/netns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/nfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/phonet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/net/tc_act//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/ras//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/rdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/scsi/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/at91//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/bcm2835//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/brcmstb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/fsl/qe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/nps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/sa1100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/soc/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/sound/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/sound/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/sound/sof/ipc4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/target/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/trace/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/asm-generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/cifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/dvb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/hsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/raid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/linux/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/rdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/scsi/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/sound/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/sound/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/uapi/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/xen/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/xen/interface//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/xen/interface/hvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/include/xen/interface/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/init//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/bpf/preload//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/debug/kdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/gcov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/kcsan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/locking//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/kernel/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/842//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/dim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/fonts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/lz4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/lzo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/math//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/mpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/pldmfw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/raid6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/raid6/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/reed_solomon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/xz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/zlib_deflate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/zlib_dfltcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/zlib_inflate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/lib/zstd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/mm/damon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/mm/kasan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/6lowpan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/802//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/8021q//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/9p//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/appletalk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ax25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/batman-adv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bluetooth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bluetooth/bnep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bluetooth/cmtp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bluetooth/hidp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bpfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/bridge/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/dcb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/dccp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/dccp/ccids//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/decnet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/decnet/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/dns_resolver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/dsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ethernet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ethtool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/hsr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ieee802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ife//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ipv4/bpfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ipv4/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ipv6/ila//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ipv6/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/iucv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/kcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/l2tp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/l3mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/lapb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/llc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/mac80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/mac802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/mpls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/ncsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/netfilter/ipset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/netfilter/ipvs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/netlabel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/netrom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/nfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/nfc/hci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/nfc/nci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/nsh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/openvswitch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/phonet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/psample//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/qrtr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/rds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/rfkill//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/rose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/rxrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/smc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/strparser//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/switchdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/tipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/tls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/unix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/vmw_vsock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/wireless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/x25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/xdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/net/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/auxdisplay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/configfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/connector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/hidraw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/hw_breakpoint//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/kdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/kfifo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/kobject//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/mic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/mic/mpssd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/nitro_enclaves//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/qmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/rpmsg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/trace_events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/trace_printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/uhid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/v4l//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/vfio-mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/vfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/samples/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/basic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/clang-tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/free//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/locks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/null//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/coccinelle/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/dtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/dtc/libfdt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/gcc-plugins//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/gdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/gdb/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/genksyms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/ksymoops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/mod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/package//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/selinux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/selinux/genheaders//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/scripts/selinux/mdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/apparmor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/integrity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/integrity/evm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/integrity/ima//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/keys/encrypted-keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/keys/trusted-keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/loadpin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/selinux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/selinux/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/smack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/tomoyo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/security/yama//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/aoa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/aoa/codecs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/aoa/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/aoa/fabrics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/aoa/soundbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/core/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/core/seq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/core/seq/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/drivers/mpu401//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/drivers/opl3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/drivers/opl4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/drivers/pcsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/drivers/vx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/bebob//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/dice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/digi00x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/fireface//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/fireworks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/motu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/oxfw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/firewire/tascam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/hda/ext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/i2c/other//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/ad1816a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/ad1848//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/cs423x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/es1688//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/galaxy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/gus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/msnd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/opti9xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/sb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/wavefront//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/isa/wss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/oss/dmasound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/parisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/ali5451//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/asihpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/au88x0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/aw2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/ca0106//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/cs46xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/cs5535audio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/ctxfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/echoaudio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/emu10k1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/ice1712//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/korg1212//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/lola//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/lx6464es//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/mixart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/nm256//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/oxygen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/pcxhr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/riptide//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/rme9652//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/trident//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/vx222//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pci/ymfpci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/pcmcia/vx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/ppc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/adi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/acp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/ps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/raven//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/renoir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/rpl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/amd/yc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/au1x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/codecs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/dwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/img//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/avs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/catpt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/keembay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/intel/skylake//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/jz4740//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/kirkwood//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mediatek/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/mxs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sh/rcar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/txx9//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/soc/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/sparc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/synth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/synth/emux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/6fire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/bcd2000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/caiaq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/hiface//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/line6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/usb/usx2y//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/sound/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/accounting//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/arch/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/bpf/bpftool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/bpf/runqslower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/build//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/build/feature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/build/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/build/tests/ex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/hv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/include/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/io_uring//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/laptop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/laptop/dslm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/laptop/freefall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/lockdep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/subcmd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/traceevent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/objtool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/arm64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/csky//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/s390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/sparc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/scripts/perl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/acpi/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/cpupower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/cpupower/bench//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/cpupower/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/pm-graph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/x86/turbostat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/nvdimm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/radix-tree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/scatterlist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/damon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/exec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/futex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/locking//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/mount//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/size//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/splice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/timens//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/vm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/selftests/zram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/testing/vsock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/thermal/tmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/usbip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/usb/usbip/src//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/virtio/ringtest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/virtio/vhost_test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/vm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/tools/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/usr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/virt/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64/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-8072ff49c33cdee1649f3306991fd2614aae7ad816aeb39dfd635ee9de28ee667? 7zXZ ! ] b2u jӫ`(y/f-Bka(υ )G$7ȩ[(JؑN0w -dΐn=vP'.N_;cBG ֌ÄpeFn8ԡQƹHB5؅b͵DN,v Z%}E䀔D ,ϒͦ_~bSGF (Y39B3p }"pIʼBg0Kib8ZYX~*6T9@Uy7R|$~Dh"==|Wɿ#a5w,X;9^1KN]t$Yۺf8!j;Kc8Հ2: ̴^8Aď|߾-'c@iN{ش9Ѣ htIiSH&#΂ЗI*!Lġ R6VE_+ܦ}PKK|xsd'iWE zȺ-0"o(RľG"b0(͋yv '%bRk9ǿoƊo-g﹆*;P"o7"rD$[ r-BJ@ zK@mYRuHnÝ+"ɇM|b;&Nٶe: է]tbaF/dq  N'Pei:MbY hymeUCۀ> h+yϿn2¯M32=L-+[`hmgynx͝DP* lV BsvrtMj=]7L,156H"ЛHJ.~+bԹ,5Ӣ8oIdo q@ 0樛4a4W*b`9 =R;Os2oov csqz{P(i';%x0fԜk:t,f89>#Yc‡WQQ:h0q%',6[f%f6CzwrgoWiH̨&*`X&bHbȩf :ք|gR$ [@詒"JPsQxG^*'Wv Sd8x bZ%- [^47< G& ͉(<A[?XߎQridY(0z,KWϏD-)i|w!"~3'䱄iN zLOx$4;,9;{`Im\2l] fiUzꖌڢdWnOK!M*TY"jo!1j51Ýh@&TgȉY'U;ح378PF<,7%gHj,5 vC 5dū뚠]G,iSB{iEcF]ַA-vqY5Ǻ ǶcRj0y.J'Ҳ!Q K g2780Ѣdhp;>@iĶz*ʄl רUL&h"_G*ޖUϊI#x(CwVgb5 s كlÈѪiɦ;Y|hJc4kw&2HB׃a|<s$HUOVmoEy`_tD^8Mosم+ie %H(`CqÔ%i9-L[o"=#_{#ʣ+9 e0GkU^zw  "EΊxbK*Ӂu0~צcNik<ͺLIn N1%dFeV&dR˵M?&o8JGa\#!OT$@mOUdwcX"릦ƸҚ>jRJTOCx9ԹIq\!a$~ ,b>U3h_!8ԍ~ |.sͬazL>$%/H|]G!b,Սk۞~+QNV>i̋aH_k.,שg9 `|+IoF7!n/{zxfrQGҾ@įUd8Xf#dEؒԫwYxH8A.g3frKEϤ'ބiuWo:ޙ\>l \UhmM'cFR?t0os?r2@2xzc.4qy5kX9dM*58 m*Z^ػRiyZԑscHO{f>x016h?oƩ~f[.fU"j[@,QDZg%Z`^Z"ר 0u[.J ի5"!P,Y8IH_%Mn%o8{[ɻ!fT/ҥq'5#mSz  Λ{Ht]ϕD^*qniN ‰Jk)v圚gI55 C:+5\/]xץB1+J g"d5 A.1i]JXWF"B{H!T^H~P4 7Q ,jތ4seFIYcθB⾻u? Mf]Gm/lsq:@y>=鯧Ј9qNF5ETeF\Ȃڣe5E~LU=l^{"G G\Ҕ s%mF.ypsÿ\mӬrrywt RyC2/ΛvPԪdׯܲ$pֻD+-FJ qMڋEvTf` B ] rBɠV.j-d7Pzduz9h\v4D2W,M _]IpvnVPZkZxGl,϶Nu0C7Cgs\c\+@VGS;0p߇|fk9"1uHK94UN֤^tw';FyrR]vplJźz:'>j! UJ܏%?ҟs |7os=פqFĜCa=Md?^TLw.8Sˡ{nfxJ3|V㐸1M75R[mOC6jiT9eݲ7v556!!<$s۽I.ԷC&Lƞ R~ Q"p"O靄(&=/3d]vXoU48'@!Xte(ݢc(0|봋, 7T[S#$"!J^wX#!@_?NܙQ:Fj1pij`YcM~x=_uw/Q 6-0><<: ̰h5MhM83&=@1<- HwJ*_!@ϑ`;w7եi# JHV}w| өu!) Q'rrۼǔkA%)a2郡Lj?[ w M|y5 KϢ$߯soޖj$JJ̔tPz}5x3!eJت iPF> pNjo*leGY&QZuJz{qFehu:2ǽK]!T/AB)ڒ =j|1zN՘Px17"4o*S׀q0KW^fRm. trыw`f5z?m܀:>~3Q&Hh)L~҉ 4U3*NHbB#uN':~fnUڼnmJG('t$ (JFDN5  5Vb2>}7emwY[U`f(7'yB`^{\t/ϣ 읉I֛;@SXEl|8列owgx D5Tm Ԣ HB5A%Z?Ќmt=rHo 4$O[T`w"‘Oub iǓ> 8H9mE&u~iN(kj#OviEw{j?êeKtbwlIՓLC!3=l)VLh@BH$ZRvC.?1Vf\FFS-N& ٘EV^$wÐj-S|Aar fD<浠EkQ@"-NUC@7BP"3%yM1L2IJ F9RR3Tho6owbOWaz8 zLO7k*T);MMYVԣD]LL£RF45Dy~hMglc5j-Bɽo-*63{FJoYR Uގ>6Yy̻L@YZ|aMd'^Ԣ +2dҹΓu}-xj^۬xCDŽ%Qea(w:Rft20]!K^aȈ2Pľ @o.N=-~,4tK^zB;B&D)Yd"d;83u}k%Q+֬BcN"Nll="1ܾ-xvƘ!t e'ey r'0xȄ!UMGep4on[}#n4"So]~ڨQ7\ l ?vcvzbHnONG0+#on*;*_H&V]?taFO'J [zM,#Y1i&DEj!3=2ZyðmisC* ϣ!'91 tGc]57,iPfۯ Uip8+^SFߍCĄ4-?%H@9RBH漜ou V?ИdzC3#Oڈ1"nF ˢf1EW) BGr{`0̄߰QSx$eW(&`u`ap40B`M-H+ dr# ?0IhU8&D:L}cʛ@7EO{&L S[}fL ᄝ*2r.:1pGW2d]]:')݂eβ Dl Z$I)Hj/Ѻ`WЈ0.ŖykT? f"+ EǸ!\{\~4'gK^XLbʔ&hI`oL6f.ϓstdZwѩM .=rU32)ȶ(zHے-'i9`KO0-2QxaY\k.O;)g"uulWI3wf6u2b !kJ4!Gc54 d>=Ă<:֊>)=%jafD{n[O pw,"nh I8٣{."\2 bPNBK2>'ONé+TDmQQ[ZvTW +yZ 2r ZGEd:0KLmK.]H>wߢcMnOc#]KԬeNfaaO5S-49cAT'qС]0uH@ߺ-N]n[nz[$!B!X-O>!0Wiֈ Z~snT%pubzi=' }2hAi=_a)~gmvՓ뇺&*ve>2ߣ`cMv"R=fK½ڥڻضw!β&CI΄|s%'hME&}?҃E.n> NaȣT]QYWN?,B&3zpA1UGv|+e(t* RUO+5V00izւ6Ri#=Ύ$Ln~);!;U<3ϟֶrְۭ2i똁q%\f1{Il%7 [!/ +X+5,r:R* VSOd[Kĩi+>ė  ;"l*KLWdk)<7vi0t1Z˟$rvu' YvBxDwع\-oHkHhiU7r14ixS_E<|ˇ #T01-0L"T1Q?Y"T(a)ƄӴoDNe C-h 0m#=S^֜zDܔzdn)!$;m߯-~-/t:M蕝Ȱ8C>$w4QK56h# -q$Pf/M<֞iˉǤ^6LGw&fQȹjHɏ>vj-!޳,Шym "M3ŐF`}P3HHnylk:lMRM2jUٹfKCbVZ.\2 ռ kHtoRv7`mtY>>#Lu @{Ti6"UzFDⰀ`k+zt6*`BZDjQ $|Dׇ>S l1$Jt"ܿ=DPx Y7 ?W^`],UX_~po1-89X:|vq6`Ks&4Uc+/wM?(LXTvpZzWNrٺWM@*X~hk?~EsrCED 47HZN{Mp>>creʃS)_ɿ,BBEOtU(a-n$BK.+@<4phN&8/Sl، @10BA}~*2aG=AX_` $s~nB+Oַ)< ü3eYU37֦8Cïwf/h09+NIEMy!]Fu dvrEɥf݇-M'%G<06ui<,(0ͫTr7ŻywVPF#xiDU߄riwtL=Ϩ{YOB:CFPYzL^@焸Ϧ *Hw) a<;0g+e*(ǃOAp(E,Ň2bW d|:E!L`7VUjZJ[P(Cei0rEg\}a.L+NazHq8Ý`idJ"'wJB^Z w} L'yDڐ{f6].a:ө9_\ S ˊ麃87 &9!TB}O$Ǹzel{Ę'. ӵ>uA&YQ^Ҵ1a-oфyM~L?> `Tgˎ]Ӷ /fY]pe袸Y+fi D&Cu5s|a6}c$b_@ *#U9\oX1wz/̋9MҠB|hk>S;*YT% ]+ H 3$ @7DR[8LNS7jQG;xP/Q@]\q)UҸ{'ހ yDžWUnMLN`\urՅΠCm; co fk+x΍Zdu%JDzF]"3r*RdpiC"Ix+ld ^(C)ҧn_ +ʀvK]Q1x; DKEZ0v4:&)T{GbZwtv7y'J++.L/r޺ 8 /n(6i1v3ƒi-w'ԆFVi͔ǹb #Ű_QihD܌?dRܜt4tAծ^F/0IhfEe۹n) lz^57,I<Hf8 -gm4#|0uR_.'= w\?6cN])Ղ^X\vlKV6rnє_ 'g?wʕq j-/Z +^by-l$o=_ ݝ^uQ(Ο@oq xi\E?)1g<44Z_B`R!$Zz=n1[p} Ђi-l.B?hAbz>p2Y,D U:.Sj:VqŕwN{Ky-*M95FI͛};"q)Q˜x+h{U;0Gm2WF#L.9NfСq2B>k}^{^H7zNt) S1S? -O5m?Dx?PF}MK'd?Jl;5(m^I~Kr5ae +HhQ_ROPW;ovr&^VkP8϶O,C *8]L6^@YF> gַ8QdL]@iBnEԕ]4k"I)I5>\"c0ooϯ/C/mg{z+y_R-QanjW-Өok9ig#=\ֳGj`t|F ^s J\C.䳥wy3I}*cu!9ϘFH o5 $`p= ʩ!u)Lcbc".ĩe^37Qv# D׾sۮg.ER]l v qhgJq&CʟHHخd*hZ Mo/++_H5fC)lS.M:^u%{ gbMy+P$-!}NGKj*1H'wsW p>X&OfƊLǔ9qp]lQa5{S&[4]ppRb{.\#Y7T,vc]IK Ճ퓩+T4, @BL\ΔC5 Qz̹ӭ5_I0j.^x=P |^lbT#FW5sik]sktEc*ׄЄ#"vZC9ُѐSXGse_\#; Cv H$ {JkLC$4aZdz;`ADU]c90(I'4H/߷IgY=DB#!w۬+{jk7|5F4%j%O,dm _W&j8_uSZDA6GdU.tD8n V-=(e{=o IG2,>߽:CFy.2`;yN ErFlȷ}BOmߥB ,G2 # nL9TU\%xBHq?7~Z Fvb!A}D|k }uLgGym3a8p [6x/h y] [OՍ@Lo e xzݔF~P&Dsy#zG. W ږ]\9%՚u)d:R+hTC48$SZ.;#q| pJ*16 /f?gdBKB@EO dKA Y 3x?@^ʖ|o?CXz "ȗAɮD!7nQzRbC5?.rͨ>tF-5osMMD_,v{"r8c? h1KNd)IV/]cZE {>h^#wFV?DJ* 流Iݴa,~۩~- aOM~D@}v|uFoQ=Zu`E\M3$!d+Y~\p{(]?{6`K\:[|F»[jMuZ`@ܞn/ׄR9|?ދ[sLu5GᶬPhvU)+Yt!_2Nk_9,}(@}Z|~Q,U 5eh˲]Ey޶BCxg% fNnXxտ*ndyC#Yb(/[HE ;rL\[qȕY~(6f"VHSnsx@g^C 1vd[r!$,cJe\W%g A9*yCRFI0f=Rm- ?O֢GMЖMqΘP ~J̢ I8%rI҅Ot`S֫1%v Y9/ê2񇫼(DDDuR;|"SVmߋB!m;Ȕb_`q^=1ubYXL k|ɻ=f >+ġU533Kҩ5ȥx @ 'ٗ)Flk sqW%;iJo"jẅ83O;2)r$½y)mT T/8:XՀV糓@FĮ4*`9W`T%(P|}8Túbmt}LJԛnSP0XU&H!H8Fշo( Fb0z_VgOLu/Y;ܤAT_5*eN$eI_M%?HIGP||,0SchPÎLI紐8#7>#Cv5Oyf]J]daxUp?e]zt6; R81 +銱F&?Wmb.\ 08QCxQ~8]5ōy]F|h zݦp{?ݡK(BM8O"ӯm%z఍\8hwri+~fY0ܝjw #neyX\Xk}sX/}E@mzJ(_O0T {] \fa`շZЋ<Σp彑.Sy*֋s"TVvՈبKr4&dsSI@kWDΡN~mxdz幁:umMN#~PO`SV& Q%&M\:= Z]s8|I 66R[O踵D'" zP0&z{HKw5-XW{_ ь[B> #t}.z'xuiW]c}db* <ҡd{<>֞jB?:klMYn kVIJ_%?-<~T>g# r[QH gQOAsWUD<WEs= ˚MBd4փ2:Fd;:2S^]]P5/$bE1@;.slzĔa<޸lb%;i=~jc*YuJz C]"kf9uowc,[4ymĵ [#$C2uDo>ݸ,= }__tsiQ@z݄}LO(g|LOY% BN9}Oj`]- atDfr{N-@3IѽebPvMNL+-nIc6)n5tD+Yej\lIJw:0WETIn~ԃsrC: \ +We%@0[HtHӶ!mV]=W%eW(Lo2؋7zbmm:D,VǢe Kz0zPF+0QޙK@* h?}kxfY چ jwF=4`&,gѮVV^[vΪ兛8ѐ xv720}Ҙޣ; ^xpA-؈sU,,,<뢝3E 2O!YG=PB2炛#]<鸬}Ӗ;iJI]!Cq!$S-~d+`9u]7%M.Zt.T|v+:=]D>N(|e&AC0:3STLc⥍a:GJlV1w|d^:5 c,GͰ*/X\mb|cIjw.rs`0;7Vu}47t*\>*0w1`*Ue֞]Bԍ<$J_74.%h )h!ʁ3\P+Řy=s1$iǠh+ 0VF,TO+[9v5d]llꑭmqݑ"OY6tZdm :h&caHbF:W ה`c&rhjnyr{ճع"HHyg[-VꪮoLro%֭oO5hQ3Hw N̈́f Ac@V-~ Yl|'k))Bk+膽)\[~ji5IBTf}?Hؿ0pm~!$~E~}4Ї~ /#r# 2e6Yv"c܈l~<\ OryGAB ,(M Õ6A@G35_QOr5+Z2uo?Ke1߀ms#KbODKioUrDuT\Yi R m"bZb!wI0uTki<9?,ܾIQmT;)oiƇ%MVi|'qW$/@!zȷ#X)}1ݛct/+䘞z Mr3+̵CPnpBR;qrjMn*xb8zg!ЕSʡYL_53)Q>Yp84Gg{cpIؔLISq<b@mV*v1k0v7سЂzN[]*a 1,@Oh9hSk>zn{} &(S+h_ҥm)↣Y}GS:խ-ٳ~ex6i2B#j $F_[JƤ~{ugw@~h4-DyYUGCx#Z3ʭ B*L׹d5ZXSo$X'%\dςqU_e9:WX3o1V!;cJbdm͜Q|t7 乱nU$5v](G(R"CPc $ o(:UX7MOϞC\13UY! y&FצPȔj04u4jTKOQ #]C"w{U; dž6ԕ**s K~msM0&QC&Ц|y^f .y[t k$$0ψxB3lZ=a!T I\|T}pYjY]aO6 !eVۥ sfDsҢyk(^ ֜b3V 5N3_}}jjԒsZ#qw\XCi{HngA@%-Dfmĥ8zZ潻Ooe:,O#zXd c3+̘c;|/73_5kLG7׷ t~PrbAJ pc>H5<| #za= $_h-`GhCnUw!.N7LK.2e`cC)P/WɹH~Κ,ͧ"녕gsd\?uVੵ*MߵF5}WH6pɲ+ ' xu{`Ya1Xxlmh.1S սp'Ԏ+\O& HxiЮWWۘ dLaN&% o1HΤhaD 4BA"p}T4qZZl=-J˰eIam"7^\;rSsZ@3qP=J{|cFO)hu1Yޟxkˈ<["y{jǑûcΆiV3VS EƖ,%C(I(C{ Iz,ųD6n>qkUup48Jjxi2}Zͮe$m<|rVM?wXG 1 UJgm)NCp[R2p)x8[Q0X1kcۤ[a x(X=]|y/Ow=Wv2}z,: * |hj4w?%{%P!`L::4ҳaEk\m/)b>5bڊl&R DaݍmuPJ)-U4^)%"?tA[BXAMF5b%1x^A"wt9ê QR/ԋj,PkOYЪ29&pk ș{}p{[D0y;MS$@vJU[?(KUnfSu`x܍48;܎ \}JX*B)S>fbO_޺}5#jYhY2()fp|d9n#Ul;j13iȑc\\10`DZAj0 |h lEEcV۵s cC`\e3qj [ᝑS:?յJqqY7"g(f?z/Lߒ6$ntv`"ꕕ _s L9z| %mGKE WiA~AĊ[0CKQC A N?,]uMA z; "Å:^9s/雰rPv:ʲ- E G:%9& az sJ?-'jɒ2 P>0m!:C%CGKִm~ᐤ>-? Ag3 W0 Vq28̦-߫߄QZ  Rź S~\RzqG~=h<0NW&Z͛E16x-x\p ">3h: Y}rdi?!ws(X'o2wYeP^^=:>aS|RQ"czT=~\. %zl^N⿁+&2)[\r! ԡ . ]Am2't{~~ٚ{֜EWݐ$^݉PfMcCGImK6J1PÁ?H դmH6gSU|7Rٰ/Fи+UBGaT'%γ";HJN:? gTpxT %s54~aaw`!zM 工(xV52~j`!r 5XK㥙ث"I,sjQi `գrɠocyn>oqL  $21R=}n-!^Dر_()L{ⵕOL.ª6q1dxF٣>FXp0؂P5.`h6c-)6ٹ08 WH۷ꃥjZs'hlh5ei9KKOl']ŒVwIkq_(YBĉZ`>ٖ,5&a5T>a:J߫;0- )CzФʼ`= :ow0\W?|,3bCvs3%  DB|XLz_eM|58,CE=EDiC,V3Pj6-Փm+p^}zbkS[q䄫8g#y&_}kjŕh^B+p%u70~^^.L* õ&zOЀh NȄl@, >a@x/"`yzwL WSw1P&`+efbI֒91g9l^ f=>NG؂ %}p;MN1>ixH?F~z2!8w~)mꉞP5*,&L 7a~xKяdoP.j6QZH Á>ɍST+;6ʣ  |8w:rkB 7pa.wdwIh>&2c\U>}ć -5Ny^pTk,7CsĠ5(Ö4k94ɬlL灕J7K|t}~A#u=;`iǘ@KdRl9+ ,2kSP[-צM@IsL;ǣNj꽾`Ct7>]7V2v̋9kjӁB0R׭YWamdipRuϖ~f]›:2\f ڷ$28B7ً^!+zy) $nTj )GEh&;SObﮚ%8^!J_kSΙMӟRz$J5((DY~{|Fhdw"v-qX 5<jPwܹ=/le4E z9 z%۪fc-F*j}UIPYM`|^a !i:Fi\vPW?!,`$UT☍Ikp!`0lvJ@MKph2XΉ.Bs!s0v?2x12BY@ȎS?͉I/JעjU5~rsjq1nkG;CV${ܵ_a?rC.x@c'ұDR$=LB=$1;0Qi1,փџɢeS Ms G Cv jwEA9z %Y?^i&Ӂ9 OU,k{Y1V5*c/Γ6`@lB~?޸YV;$(о; c~e5)Cݘ q~䲠u`&,~;AGG9W5OD*1`jI9_-lC1 /ry*e 6ND exd\F Ԉ0?+vDD0r@|\0t$vC&1!Ig\A - S&NLO. \ dФOtyJmyj8d?[4;'Gy&kRjbXu^) )\Gt{', rsΙ6|$}zJ54٨;?^x3Lv508U Ve\h)3ಶ⍓,B,Z d p6:ݲ-wQޠPp@&g쥈fcDN0Pmv'ʀ 7NAo*ub6<1 ŬͭviuƬ6k:Z'z &֊mUU|B-Y^WF P1NCAL`!9T1)U5aÎ0n`P{n {9-%p*7=, \*&q#CDqЌQP92N< ^eمW\&C$O{}s=Į yǣ Q +kI >x["|t)7|  xIGYoyV.4ʊg[w8БN' 0>Ͼ*+[a/!op/LTsQwo h2}BB!c*J/n[+Fqbz9`D itjM;{ӧ 5pwoKވPUkb "ʠ,h3}P'34zɛ3z`_$^^w5 \v(`UD`]>݌eG7 TQN ?y"rtAGIKmƟ[Km=IwzZ~?9er_]!./B̸K]z]#JH(PL;$)+֕9AjClBVG8AuwHLvVUBb6 CLK jG3mjGD_~lXraa#ecg"UeƁp!ȷ{@'vjqkw|ڭڷ]] mMD`= (<\*I[AQYhu5iPUPXt2Rcԁc? Xk)^?{NQɧrJo*?q?pn8*gCVߑU#܅|V /<,_Z2Ё}Qg@hgrԩSCOoQ(Z$MD8J9G; 1WP#jctѤ8<|3d[GjZD;~(e8q)|<҉SSgYp=~+p`oE~L"/xة(zZ {:CT|eKfo&AXO.k0G^mN^f>!H3=/y5h rAbP!Oer`E{VڰFf<Ċϸ? 6k攨?Zaҫ.![(3 =}*O ]y}`yrSQ7y&{b-,e"Xά23"̟*ה^*Pld)E&Jb^ 8!0Ӎ0:o6*a uj'mӬ*Qvh _3*Ec *7esCp.j&E-6.F?FP0-CMYDeSuJ7GK ׬9X [Te OUJrđd*dz*2a &ݦISttfⴕO.@s03TljFAz,8=αlGWh8󫐿)"$ffߘv59fIA(:VmmHmS0;x&v(vrI0i;drTҹ`MU nL_Xs5f{pSzj字D-onzNhiJӑ}鵮[ $3Ȑn\TB}U&g.5ߔ,k@g:|Uy[n|;^`ƸBv&݈5&YC7Uve5G4hm 0G%ٶb3,A8Ap962>3< g-ڇ*gCcޤ(9"" WAv5 3ih^1LMy'؅Y$6;NdKJ/)t=~1TWSDb#<e/x,B\V? 1cyRvA=z\԰._f!tOƍޘm^6iXJ{.(5 '<E.f`V V(=DƗi,+;xaa[b(.1 R#qixR*ŕPhO~"^;8^){)b=Yb0NyOwTtK5)lȤ!}:B 괰.FÂnƅY^GҿyT3cCLMG@Y-%_sZG|~~8Ӑ ύ-xvtyՍ B &`ŽiV#F2D?-JKs ܌'I׻V׳80}{rHx(e!`ojҕ%ΐ>oyލ27wg +(i 1%UhDjYLj! o=B^$ɮ/Wl8QK7IFs[]N$ Ϛ"#yVkH]le);Fݺ{"O |OAGR^d % $yrrffʒ,=$Svro5d?$L9_UѼ^f%@bEk%R"rb0 z\"j%XKWQM ښ7 Y}ں} >7-\,I)psT=b_q(h {b6­AŇeσ~f 6ԫ|U>P bVeصM5`:J]VNAj}e6,m+0tg6\yѼ{ߦc!{I軫㢫֗Gok]C eR[ >ߑMzYC76ѬgXC5Pe% . B2 @N tJ/Nb T9皍%9½Ȣ=8= P66\`~WB+K( ^ɆܥY%?.U}R] ]1:ifdsV0E'Z0x5pބ5tZ%L۷ꏡܣGh_.[!_`45B@_~]CWfÙYM&4Vk8~kT'eSZ܁|e"9W'X lF-4֓>.Gm-VJ$~O0-a6Ƿ}d{*8YL띭ҁ (xU:| slY,C\6rx"tS(@1yM:4B(gm#r91S|ZpSz.]~ | ͫ6]x:"~^Sf=-|7)38@fk dT'|Бz'HlК^YLe4 9Ҕ# F%ywY=Jnr~"ϟ/”҈1w'yf~l;}`28i; l׉.7 Ԯ5LA`B4&"jodڎ9[1.hÐOʰ!j%,ßuʆ 5oL2;1-_[g,xoOu+' CV[ˆ3kֽeQG-[SOķM5Y9Ļ|ߍ| )kBK2t !x{Eބ>v5|Ntm0k h 9Ma"LRÚWl.ϴ"0(f#1QuCQ"ҒĜz׮vit&Džo56QbTvi)G 1Yjᄎ[f~L Y/c4Y7 L@;"y7ƽX oWF- ?,V3 I<c MVp&ǟR/y;u}|1 lQ/@ 50RZ|S >OCap}7wJ}&*#4Y/k7U66x]& Yvr@=DqɳZ@t{(a_~'nۗ(%1ߞrNOstEuĄ IӿIF? PJRߍ l%?ge96a=!F汐u3l0Wn)QNT-T H[; 0a>?ɫP! P-]+n@.\i ;]n:=jڎTq]x/̤@ˢzOSxmp)R0::glf1UU2V#㻹J.l[ -2,ϊ3u^E-B:lv؃°RTkɭQCfghN~s=9pTT՝iڮ @*K8cEGk >LnMIc&tdyf0b"6*BP/^uEcLIao.@<C,,1ԸkR Akt\̠Ginґ7 R&5:Yݢ[o{sĶL"s c%@c(Kc򻝌b[{OԖdlymݟ=pgj}g=:ZerPqb]v+ns^x3@i:Ѭp`qQJz]Xh f@^>w6qteX! hr(;<+&y_ETO;}u{mOǼWGÒ\NV(5!x|,3y+^w,#䤱q:[ ٯZzZ%B{()dAG`*ò$Y99j`6I٩z9h²ܦb[)ᾮ!<`*+Ȉ vi|F@ya XnP8$g\QH4j|\\nt-QM%o?CӾt/;D$}^,϶Ťqs`d)QdR蕲B㹆R bApnɪ. iT˒p+`/KaX267\l䆏(P\H!・Xս?kX ?.3eC4;< 1ZiMߜD,>d[=Χ ݽ?vvl) "|\"w]oxB*dp'*ѧs׌cPARQU;}2eD^ؚ6Hy rY׋|?o 6R6xme(mg"qbJN?YѢ^6GBs#6}[ڊ:rZR.\*gf~t=V#H۝/ClY@<^Gg!ߏ<\,PRج{  %f43KWsNs)qHf/YT0m3j}6"@rڈKz `8j:;fc1 "Ep ie$qnb|ӵ+=LhoS7D.J@3ZJN鵳ȵejq:t0uPu/Xnb=0w aZeW τʩfJNg&_ϰˏWO=7,+q~M z먫sͷD8EXZܟM_呲v!'ۙil?+^d' Ǥ^cME|aBElFdN&̠hՉ%A_&bXCD|vlkj7OMCBHeހڲ0]"5zKo>m' =}㬥+H2d𫡘pT1uK%pH"}›F܃e V7,7>-- 0⭪B}ps]~jk[EfM]g#b%%D$8}|☒W8%ieAp#;&NʸvrhQGk ACx~W ňiavMM"􁠴y WxEVZށ6c4OC0ʽٻXr׭^;<:r#}#b>(%bW&3h(_ij끔1 GDGa`qj @&| *xCWi ,v{چſIP4k~*\ ͪOH6͜z@%ZЦ$gT!`璱!Z38r[ρY*n|(;5lbVD1܅8%L{hl9`@iC bl+XǹY^[Ew:]EPĄdZ><%0Юw`A׍ťPM{@;|$C&2v7goL+C3Fj6)m8 mJ}r4r":,գnBҸv<2q/LD7Fk*Xk^h^h`Y;#/L5^!R:ū$pWSȅ@% T}螗Z422?)nDE&Jvу85d),}훅8R@kd)>̟hѮ㧒lH Tώp;\څ\0恀4&܋ɦD.\ux[]//0N!i1rߪ{ dg]k^ÂU~$N9MTA3F VJD<B448#O3"&ӓ [;C8<_v2jUk=p0P{ ($U )E+c)(bUrB,,-:Ƽ-l~ԅHHޫ_ YcH8(Ȟ4e7j\ӆU+shp=ٶk\z/=j҃q:h^] '<|5C;g:*8;&g}s7(D;sSF-'͐fz=ZݨVϷ< >UKI zHA%?nʯA,$&Ni}BKp6;tʂ[&t ONaۡ 8"~dਖ਼9. g;:CsSZJ!4K4>̡͕5bK(EnmSxo̶Ԧ$5}٘XZuw82qc5nEKAѯ(P#)P]WU8Wm {5߽شU(-usbzo͓Sf}qyoR)왽L|brc u&Dk܉B *Hw۾*8>E!yƶAK،i+rƁcmP&)z[[ŗORgpǰinGUr eULLnt~{œƑQpš)[՛}x߲Ȧ7> xdmG> "F!Pw;[Ucpo >LxO vӷm iAH8|Oza-/8Ig#2 j*W#Y%?8͇X0doq`me+p(DʴІAN炣t[ lz k$G7H -+Z_,FN6ާ||#³J_5 P`lrK™H'@D(:'ΐ@V @gvn^^* ]PIQ}fpNr_s`sg,.АR TWf~*$*с(Qw8]0)'omLsnH#M'XPM߂ PGΑ-)hmj \%LUc^RssBȀJ 8S)]- hfpX4,5Nb'|bZǛӗeWVQ7)GLb2>Ŷ D`U 1s߱:mxq]v?QtgyZoc K ~DW-,+( Ƙ܍#a wݸA$6R S^=rx1Vy]m%@$&^-Ү)aT1O., +V$ pl4 u$r>`-d)y26.!2ܙcrk6ci(a5O><U]P^ Q5/Y/mAy0g^%r6Jiq-o Ήtg*#e)*!2p@-U-Gk- G*?5QLs1ν\$^w ӫ9-Ƽ3f]lKdMDU4U 'AgvV¢tl0oZ%pJ?vT]-*qrT4P>e,I]*I/mg41fUF&]l^+go%-̝(6;6s\*8U4_v O7+3]1€#mUM[S1/=5~~NWrflh.WDm2:N\Ǘ-fA4?mNc''+t|a=T>?~o>) 8B   Nq= BvD=3o,Aqګ|gwb 0PS܎vklJ3@2bOVl%Qsc_[ FL؂cVO: %DvS/ACS5$| x28~0N8/I}3踝̐x((1>u Dv6ԷDGS1- -g/:xXݚ_$ SnJYZZ.ǪQazoܒZU%nbŠ|czɪPaD+\PBBQyp/YEQ3e dS6lOs/˻wRޛ h|v=Rv+X,'o -; YAOqDl"ڝNG7xxAZTwewf/?!7EE!5v?Hw%6"j{\nE5E(BYFE]FbrEٝ!\/d;iuW)B 6yzsx5ݰ:8N@?4-WYp%9':(_;!}XK0=V:4WJFwlkeGhC"X @!T4+@#q'xt}PD1 X 2d^1Tp)-}ߝ'^IګܸPv8*${?SS6'f1TvGGk)2崡_W)Sf8xrhuC7qJgdU~@~UH; Htq>Jw F&ԅQJ6nF2Q^DsWqCMqdDwh($޻gR(P3cuȩ-T[A>ߚAAXk^?sSb31ԡ{'$1S\J"~ByHfw_bBQ<(eiN=6 0t?:VڠeKn?coƴQPCt0͵!\Ӌ>7&saJćb:hg*V .yk>~T A T8f\`0 6f8 TPH^/J|jUȪmPwbm/Eזwr[LJ5\+*%RwFϜUjBiCLyEE)<`$sٸc$L[N}p3w7ړ @4qɛwBe/x޴LgA)."Bf`ҬRWѮi[\ J*K}ˀ+-rKm=&[$L!}ATAUx)OtodTAD;$K0;)x6㧃9=ie1m-ԯ2"wUGR]VȵGG~r^d]eۇ+v$'xUGHx&FW9CITǽމxӼ Vy]zl$9`}T K(ƜݰH$d.>`֣'/b ^k: zZ'm"nYest »eq4rs萄ʡP$?[b>0tEwD8W 9Yҧ,ej̲-Km2Tb=? KPP?7ᓚ(FOBSM͛h+O=쭀?sĜ-^%z1x'|cU8d* F䃂 <NJXWfJw+9[~<FhXMvXl;J5$LD:QoC!CqIC8CQx?\Z6> P,CSC$ ǽap$ΆUFuX<>FީE0'JJߚx"{o"[qgmyffDUz hD1͛`L> Tűv`,$geЌ"@2?Yg)6@RL!RLOEhket|1\\΅"E1>Wl`ld1@(Zl26HRqgnƎIu0nVȩƔ(h.cD{(>%HsdMː /4͒fZŪ²&`z &jح8 @apL&jo*-LIPf]jM uǒa m!8' h7IKd㎆g_gھӫ pj!Ggk&GU)F~||];A\^iK8~vrQv4"~/MoDE稠'B9DYZ$?R C?h㵠MV~cߣ,!FT L2kV(qJI/"ߪC%8L}X2JE-ubl;Z70. w8L D|U%,|NCy*ʖL@㰧 ki0kL'%/|YP,pCbI +}۞)c4tzͼbF3mp2"6IeCn>XuS)ARC7:Y͙B-GvꍩjTDo1 *U$0w-9p!ٱcoz!&Ŷ>Aon*HFnCT:cx=˗Z.c#JͣBbdx6DF0`[|1}.-/'ZJ7+^JQL_ǀ3(J#73[%œNi)ԪOAO`˫~\Mӯ&Gq?eY!PkH# f㲢A|{bop4pUu;+LzV\ u+To%cPڊkirzT]ΈYLZ`¾+x{gXޛk[|ErE;FE `f19UfH y whO 'N?uW ƼjL6 ?2&]CSe ~Ԧ\nAEp4m>(0guLpFoe|!5M\\^]u]aAې|Xfri`7p> &V 䇾V P99HJ}0Szx IcV_ ?eRRt I x~-T cȾ\#H'.E5=&bq 1ɖK pG:a`:(:_Rȸ]}џշd|M<:>!+XJC9ACq([HAVRB$ӀO O`CvہV֥vc fnþńױ  oN&^(y%TH_lI s#:-i0Ox2joyъ_cB9ԇ)f\äJW2Q̉7RbH71dۋP|EDq7H=4qg>"sf)V=1,9ٍ <rl$ QR" |lA/uIt}a ִoFu8Imr#%{ (l@7mQUtK!Z/rwxX6< #50EPH85fw˥o(/5YKm{U)ig 0* I{oЬfs;5᭩`'g[]'?T]]dc/y4SfvbjLQXB$7 9orH{Ê[N: x%ZQ;.YpQ) 7"Wf6W,7+^ $IKmMOGϳ淘w쬵\9I)k0$11m,P"N)95%WӅbE:NX9{DzCDF|q+W%Y M s^v%Ty4N`ZKh) s hW~7YZ* Z12r?,C:#jy}z8KlB7w:V_-mS9Iݔkx{ +KQZ.^n_&`X#kݯ<ԓ5o^?Fs2yЇhu dNFZ2Q&l1}=v,2}mF6Fi19s(]ַ+HDoȸ+e˘hzTht-M)e/M@ixBMwM@K= &:q V_pʿlG{ nC6tK@ D`"Z=\D;s{ńLǶ&XD)HX-jĢb\\s{^5$:p,O]Ilb X ƧBv<^c~#h^4-cY^;& M+ ~D؈w\2m !PO!,RO5+tknU_:\Y| *ha+|%y4aerb!VjH'*;g`TAh|^1=TEIti'+0a|iS!?676xwz0\ԕD|n|ײbpj?EBa*)"wV:SP z?q.to*Wzɇze4Pr]ae*+|{ [^@vmvݗt>16QPz2 G0?)Jn-h]6WnTT{dׇ-+±Z5{. .@wO^œSN\\r=m M p%/ dA;wQHdx0?N 1Lٶ8r~HÙ(Կ5! }6=*  ":o,4N;4De[p5zh'W11'́rr_rNR@Q1Jv#i&>'_9aQ.:CVNq4>L/促T͚(ep1p#+ϚL;[R_ }U2SuqiD{'|SE%e̋a:E B5 Qc~H; e}/0 %,]v:Zmzl? ?~Sn9DY=3oa2K˩X6> pv߿L;Fx`T3+Sl.stA ^CR?CegPWD26 _xv(GKZ.l " 'ɉ'K99; p/ъ= ƻϱ,-dW2aؐ&t Kp'¬e6kч\ e&S.]=Ac gRSn &/`]UY#_+?F.SlLLJ(}^E`r mwZ,6^@^nO&ѦLZFWJ4f%2*b,% SFx8UhL:z!> P);ۢn$Q1f|USZv~k~?/gboJkα5AJ`Rޡto;A~GH,Q4'Ba@!8m!UܤAkQ G. m~&b ɫבg@Ăsg"_ mO!7stLKUr;3 uxW4.QxR5 šlAuOKhlm.*xo.K۬ O@< T1 xQ{-ۮ`+UA0ag$]ϴy x}fUWzcdKF*+U`xiv6m")ٟ[ *ٰpN"MiK/*g]`¡S3 |3!k% ak`4kα}䚡^ hBu~NÞ}բ՛ @'Ջ1ۥFLVw^ɣ(\'^iȵ:?؉C~5K!cNB Xrm9U& 9&g:>b@ܱ9lq֟!5+j 8 ,b/;\1wcK`^>o{ }NgSez6Ew#}V(7廙R_8Śsy&0rN@jL~̪C4eY'*E1to$*ճ@D pի`}YºtMoX\rRTMdJL5_Qy:smEC|LivJ/-ND͟jf'Efkд,iltWIOYE.Iٴ]X:1\F+E〝_{kЏRP8Q̸4هQ`e6_F+4f΂k͎\0 gq^_&5o]# v"SV߸TȄVMBpf(t ?h .ynx l5ui*S8Emp M]bELQ}}뀥xא]BrmH@473ZCb={UxϴX~)4-Y1]lKP^_'n7[ @&}O`CTg&M])@4+%kO!#,wa[\[%.m9) ZN6|CƘt pWokxşiTT4z)Ne C۲״789b㞻pltHhGO[0@E}=HB m3vj1)30сgl7>*lޕCatJcc P;5T<rǚ=֘yw *ͧTLeN "CRD鿞b}8#śY/uIW蚠8Xhh[XǪwH-''*#QZ,D/9skuh[BXi {h0 ؒn;"YQ#s' ȫy3]ѐ)4AW3)Zf2N})@0Wug{Bw8j7*H[ @{6SE"O~PwK$cg+z = τp M\#>ErV8 ʴoe&nH.>å *.)Be71jyl] $Ѵ$[. } ^:e](QET@?p&`_ )B~񪃏Vs@QdL"V\0P9sd6DIfε TQ&"g< a.ou`u~Tg{s+1"ݟp BA˔ګVעV>:66ţAN[?z!| 6ݛuJn޶Ko# HwR]Hygv}ݻ:WĂUܴ$V\VIVdF"_.f\%t ̄ EX@Pq4#PɉVicMڊpJzЁzt4X, Qlvn^5BqD>XiXynu? ؇kp}0 ^x]Kp@}˟JQ1&])>e'P"n]Xи~$oBAߥ$78Q;F8,Uk额DU&-ɗ񍵀#Pݺ'Y: ʦZ#Y{`- efC''W6b~%C{rJ R"OQ# f`\r -"ҊG,iқةWXåt zi*!\SVM5ǀLeCUwTEL QY桡&Pv/;οz/C_/"<ܿfA:BU u]{4qW:4}\l,#(Vi x*_zeVS$1$UXku߲~PؚԫV[Uixᵬ.n,^n-IbZP' :fZ 25? WO( U_1,R5*OFaCYLWwk_w) g6u3ӻKVځ@ wg1Hf?O|>dOgܭ89% ?:&!VO@DŽT< + 4_ѝ_Zy\fdL+Qx &Xk gU>gM[/YS+' uʣJ!)_QZY.Ԙ6YkłLs>WenI<~.ܶ.΍ʬJw"w^&C|bq eG|btoǍ 0((/=\(Nz]m+:'  \iR9K1^ U-0_9Q _{y^gPaZ 93{rPHjiPnu"Ƥ R|uL' {LOV/.tbhp7C0dby%LR79S6ӉBqəQ7VF|nTu sKfRy '_vHqe%Xex;)2JQ7(PO>0x=@"%aY*6Q>"1,Ď|Skg c"HU"-E1|&)5,ƖNn dך4žUfZQSenj$*UQI w ԡv哠ۖoSZB6)O(sK*pkL Nq_;|qGA5K6lr鋓V=ܖ#Mp1I>VOe?Xp-[oRC9FɖaF<0N2rX.~(/K @AJ#Xֈ\x/X! ayTS^VQ aLS⤚6:u/'Gk6!ZS'1>֜|E rzR`C!ir U 5ՉN@7,eVejfFz1N$봱\ ێLشrBn+Qq\Hĕ{^؉-P[ `lxzӀݱ ns$U riR @S$Eh k]6E1/ 4u >J-WB 9*y!Z]z9QꓒJژ~ `]rU֫A;x:'OT'>wwX2sh~llZrcm:Rވ `dXH8<؋@3D/_ BaKXjXz(2*~_ծ ݆+*BZIZuS.>ޘ%#/O\4iNzK! h@&@h`(`>`'Ϊk>D֡pX:وxrmb7Vj6l%^305iߕnO"k\s!(#iI9ғ9 >ɵ!3~݀xN{)9t;5gX62Ø.+g?+@{ m Gww'Q zpD)s\ٖnAT? 8[~@ If)uDŃ|F$D&!zzƲ ]G5kNvG*is8hBK#H?Ww0-=32Ea1Ou0RoyʿKu{ߢPa5YUҹTk]RമY y@hkyq v's΃0yD3x *FxLļ.$ Zk9 GGouam؝1ȼJ(1D#)q|ر&H$YU%UwQEo\:IMfa 9c!/*u+JvDh?ؔ:G_Ůȇ1;6=*H AwuWAb{((wF ƳW =O b)kIWN"Ck_x3O4;"@7թP-nAQ1CZhRaR%0 럈cyjۀ:Ew]a}v`ezM1̚Ī wmTQ),.8}ci NJb5*%Y0My$o]pA 0/._ne{ゥSHH|3@BS"hpGxM&TP`yG2W<z_=-(?đXԸf^ 'Ks7ivcc%8XhScdigUD;t 3evQڅB 큅^,6w!?lG&ǧźLQ*5~V ] ZT4ҝ E3{s؏TW;}떓W2ֺx5Pzj~#ƨvM&Нׁ)=vtG+wpek6 zg(=\ق?-L7{#&M%֔~1tf !YMP3O4݃OzsȄդgbiq ɣB]'31!k?dxZS4q6יa?%CCTphk-YSӁ&dyy&hC;w.6sc3ث"k-3/n.5WlB0%x|*F)Wik[Ys&菫V-`N;_;/_U O~*Gn:Щl*'leSԸh,Rn U&TĮb72YfM+kdD,6 S9(3=1%YB49B恤6PNt#X8RGVe0\&dq^ʞ\9-:B~zQɀ ?-=/5";3Z0)i v,@ ֫I L p6[s,ɼ{ {YI=C}UorrʴV&M=; q-=Jy߈L1ytcuZPL [`S=hb;O.3(m:N̸M|ϧdiz @켨, *cPRhwFd-.6VTb^ Zy;vr |Wa=,t.)1ު1 /ȼ *t YVTl*Ku>r@藰tosJӋ }1b^|X9iv7d8]AwADY*U;)L ^`ۀ}rn}ggГPNV4+pDOIvl 7"('ɝZf;0o;zκRtuRmeyŢ 50g˄_DON- [q{Iz8eu|@(Gy ٷ'Zq"eU7RW&(ӌ~3ꬔw*!6&5C]X2YAOHFmǺB} J>ƒj2W"jNu["lƌ#de/"ʜ=ldo,"aK <zCJnN?j^p"qB[Tш;-x$xV1جB,U#o=lu$g5*-`K.cL 8Ձ4wA؜{iwZ:_Uc(e: |{mn"bFA/߱Fb~B}~L |-N CHՁ9^2lL'b pUG!Ӎ.hUХƶp/bOD@^o! E{:ۏc7\[v  #HJ,aZ\;bF dI^bt4WE]gty+,V9|%SfCga5F(܏o.duKsA^݈ l.juL8TĊeu=B4=;uDrO#б_[eò'Ai9JCGc҆*hƢw}=h}VS7?j+ipѷ !" w.tf$ۅTl|z5k?26L{|%=[1Z_ Z gb;ZYJ+я)8 oR^ʠ'YmI=C8*j\rx%G\}qDv%4 t se??&8Ѷj #thl64/S+¿! [d%K|@y =iJ|Z܈/4[b yo 4Psf!WĪ5:"T00 B"{CkMW3yej/pn"=;rePxbS f*e^@1T[N0gb;Y fw}gת Px&2'tP4huOdekj1OJC ×~>^Ly}| Y |u{YxfuIk`a`~t /O YJOF׼.AEBp_]5꩗W^k'0C[xVC 2!A΀nD.gi=%up |z$v.$Y0eaz@$FMEԆƳҞ,Gj@F G ,((|j :O:4.u}vnS ُ!CcpiBG8ݲ+l0ea8 ۱V*MkD8JþU0_pdS@wV\=S}DHk)Zj8ִOe~ )NLJ2 ?9]li!^6i@H8[iMsw,r`(z*]ƅ_"E 6]|Q|2V/h& !CȻȧ{ܡ`\ ᩚfvAVN-]hmj,C*Nh՘/Sұ+1Ei:/o2,S8= _B?'.,!`QjnCCiG:ӗVq!{E:9 %6LDh:E 3eӢPP߬l75xpRPZM&v)? Q2B1 !{VZk?Q6Ww48MH5GP˷M|YDw+t`dRbm z7$)e߯dh|s;s63 g],p v(Z֕tUWo]^|J{A )VBW8萑 RHx@07OgкmtOÇnVm^n ]%O9}*Rs1);mz[bHBhʴҥ&[ O]3{AS'@|bs"KzQsh1~^Q o1l&Povj{l)Ⱦt9 g| oxA"88-g [Ue46 2Ӛҷ~k,K31FVa97T"IfGN&̭})=5p*ǎ oz+17_UC ,)Zx+t[jQ>(D% )J/X'`MJ7l6>*} zYܼ0%s.ٙXQ\c|p2+X~n X#gHBS"r^UK/K9&5\1N:( zN$!6"қ'cLɤ0ÜڽS<ӔTm>p#C0~%Q[ >zCGj^pɡ<>=t =}QggETcfl={O؏xѭ(/qI|(6U}hR hɢ5ݿ_x8jӭ;X)e R4<k*wb~qf^Wl[ozpx/>":59[^0em+166f#COk$ ! ~ßRmD!L)IGJE ޟǬy,p>w;uihXTKMO/M?zzuiaQer:X !2bD=ro3wu[tN+nʹ$fh阇)c[b~r@;va'p;•_*_,rZ{$Ь.cJo= [N.j. rX{e*-WAƲU~tLg@ׄL.~cyS?9<ݮ_%oeAzSQ_LE+yU&j]"#"||vrwqK{7\HP+7mQ7|nf*=13CEp)Dߌ%LJxOLp8qϝD )ºc$/Z,d.^ q^aBlS6Rmv!w1A;Cx%nEAA2dw4hoq;rR% CL&?%߄ߋ'}y啃%EG%5XaG;16!tA g73͘Ij 'k7PeVwhS}|e˜G_%r`nr.SQ ۱z\,<5zZ#waeImDqJϏ"o('ǣ.fmaݙq~lBU` s\)NoD"!oӟ5'%@bur~ʗhl۾p_w]n8^F6lKipY1tF˭r~_a&nhn֕ Z!Iows; H=(G }Z:*=^%$uJ]H d_]߉vEsі~JԍUd@'E2u >ſ*M-LAnGm8< :zbYCCݴ%?UAa?Sd'F:#z]/{:2- CV5 d7$W>02\?וF`Ii$ `ߏAŧ⥺?{M@A5}O U.ĉx򏏯uC$zpC0cl93@|sÓzJӷG};Ȃ=A}B`"s*=ATyF̅cHO7d= st onO\VX &j,+0`.wC1Qxs$=2i?(_Ň>8( C)s -iBRU.O`V\$goA@#KM$"y udff]|)؂t.Wh)]aV0eSr[ĎB"aon$EmrG?9.K%1W 5'P IaQ ]9a ;bކlFA{jmrgrgk%˴|'j XL`FWɼEYwՉaǍCzqv4ˡv>b!k6޳=AqkX4 qÈFx֡ZZU*UI+$2k1nV{x}jB0A3d/WWK JO>;]8Rco*l q$s߁zev68'0|ޥ <$\ 7WI/5h_Xbcd:Ie?*HBxѮJckfQ{y{>Saa>IeG_}qb='[b`cHGEUN8*XSĞ]`ݓ.AmbpQ\ͧN7A׃\|̞jz .]mӺ:M&@L`+i&l^]8Y5'\<XMKrGw X!$C12(%\E|;5[w#Nlh&$pN-(mH)Pm__'[]LXWlާ*,QVȼ Y0`lq= K_Bz픺 _+XvpFLREa󔶡r?gN*g̎OO 1MY|((wA$Q 7h\M0J6(?mņ]SH*( WC~nbIp~h+OtYA[DHCOjv$c 㣂S*3㪷TiUcu7ư{7l?Wv-~/i%fZEY(TEhC+8D푮:]q)9-ۦ%|^ A^+ʦf?Mp54eZ-N RY?V8GaogRߺB\SCP-D-C]aO-E͂J4UԜѧ Gdiy:`g:%  }^y5Lr'M~\;nV %R.tsT,vDHyo1dJ]MƲέjI r `&a OsF.ZH7EOv2\_ρ ̈7Vn [FGwa# S{͗44уڒdSqΤu-Dܟ0ViXħ7/ 7p} `Ã޴qVZEM``:B)Et"䇈B=u!>5CPb(3|OC%Z)i^Kk-hrib®Vǧ`?oA&8sc0_ H1,ՓC̔pU嗩/8̦Uz#W?,Au^;x lQ%poDr㍐<5?(b%AXVFE*c'݊0O-XfOZ4]iA9-.%Փ)Ymh?z=f=2z⓱x+Ƽ (kӪ}GC(%t s1ӏv}}JWfV3Vq48?o K ID&KIT g(ҁQF _y*_(7Ŏb(HVѾJ}<#2 |G\ {/:[qh57B/y 4J4CsJ &?h9#dhNȯ<*UZA5Rr#t칄.nヱ@6B&UL$ dMmBӞV#DI{TFVoGmĚA^ r6i|w:Nc~lʹqc'ZSY]̓#%s'cd`>Vmף)S/l@Mk)(>tU4:Ӗ֭xUIÑWЕmV~6|QCC/YOƭ%df2],H Q&w;;>ޙɡ@moω[b)tN1 gQT3W ߈IP1l9\Nיo3Vo\GFKt\xgIY j'~9"hog;q,ȨoYA(ku5z@OXbg3NjEN$tLVcf0MB*¨׆h{׬+LCRZQq){hJc\w|o4+Pqjο{z1nM Cq>waPH{y?~O@|+չHE;7b :̮E'$>kY"|B|疃+ex?urCNN^mmiH:aBCwT P;QHOؽ6R5zX0T wgJƍ"yu;D¨/(b!szy NxTn+,&/fY}ov+Um\կǷhʬq"kN2qk&'=Oo%VW_eYi5Vˆ=!G{U: GaEJY=/ ; e@CWUB|Ca0]5,umca= S0bݨtê+с4:bIc>Xj;j 0NW`ZhpDOnk(brQ :uA M{1岑OҐf`!—VgMw֪<Ķy9,Җz P@wD9hm( k>ѦlՀ?>hu_bũƕJ8@1lg+`LϨ?|9BI][[s>'mZwuJ+Y{: }Z!f_z?*EVHlm+.~]hh<ߪ/- r.^[]T=m;@ixtSȁͬJG3RF8$a5 ;c{ǟZRo iJ%'i܉ZnK/fn+Ă\@8''D٨}9.85zKj+sTzXi9]o3l(>M UZcĚ-},ysg<_]mVw-AZڏݼ+TxcBްtﬠAhefk,\]#];e _qi褆Hz[U6@{OoqC[~?pX1(5P\[ț[fȅKe=BvX`ecα׌Ș+Q$%m%,F iYf(.%vXӣ|mENȔ~jǪoq*_D0lQAxyd0Q?}RߚErF>TRU}k><.`g~mr#"o۶zaBvu>_13ȫ5G4 ^̊D<1"]5edQ;įN\Zf>䞸4:(g4>Vso(3}Eto ?/ٵ%aK2ٛ1 q/e"-(Ұ8r>^"r/jߋ~eWkש"9F+]pIeG/c\3BVfD=q:WX@ZJF`:qz.uzO|ͣ0dvo6=ttH Z>Bk%xS=Z:ص@(Ӓ"]k"NV]76t1w/D_6 cGè>J8ګ_JM'7BR@<VdS̞'Ѵ.b,ȋ񽋮%sUGAj\=sNIc6/=u 'JGkBXoQ˻@bzuYUꀏ;`0%3b?|a坐$Ώ6)>֤.Uwp%8Nud?ϧ 'ӄkӿCԌˌnU|FŒ;kk fHj% HZs>6-dkZ]|TA@O `+1a{9Uq>K ͫZ%Ƌ#k,}emIAJ!*LB(b㑹|B;5-Xi Ur>?&DN8/}I)AytSiw6a] r+)͓͊ùc^攂˄}gbTX C?*>Լhxe=TgYzJ7m& 85h?8(2A :1w;˪LvnhpHa.}> Ydb, &p~80̹9 t>36A▕>ǚ'~g@ E愪\;:MY\G$ WOW;ۣ:;z0h1捊6EߵuaGdm5֕&H#c=£y{27snB཮rt8[J 7jlD / h*7S\ ݏ*6:=B\ f.C3& T{'m:;SNӈlyfz{YZ9-(fvR&|qcOU!x7Q)R Һ]P&;cmB5bF0u0_Ef7wFFUOEK'gifQ$9v9PePr!t B+s=ҘK]7֚u%[A" &kLq} YtIXwN9p%Or?7 bK*iIo j#F/e:.(ZBdAr6v-Zo4FdMs,{ B?UCO4~eI&+~,&Cy)<,o,') &f `:Fd#אeD,GY>E1(QaHQ79p0ml!gY MxxYbЄ l73 yH-Y2xΆzazЃx>$-p6ДNĆ|mFlzj(h,{J,6ŮoN mtCCa8*D8Nsy_jȐ88i N^@uA-99dC qHuʍ<8O<mE:9tn'*lEԹo"D':WJ`tG A)T0l Bxaħ6hMxt{'ۆNt|ya][w&0;v( Q\^ 3/2*2R #T5>*.PC]QCp^;+ }]1h)4)mϠGw$ǓjH IxMgwr) Bt0әE4+6ېX0k7觱DigA>J_ lN*dA R"t/hA5g"_"-KJg߈6~v2'AXeWamOqЄGb ^c$ڏpJgy= ^3,iJϧ|fy*RbDDh[p.% r}7# A-rH毈KiCOq͸S'tx6e鮾6/> +P8~]HmJKs!2P`pM<6q,uŘO0X`ȽZ"W [ޘI+O5#6=x +9ӕnM6:Ի  cmX/TD}5hRݴ /X7[5Ogp 폮H3rgS CVNp=N)]PNj@_o(;SnZGۓ>@hYZo:X&/'*;;QqdŤZmIpO|X'Egߥ鋨^ V})@Уkwu}%U"A|y IQ LC钓ãKho_^DJ=$Q |h*1[rurc@yB3!d7K6Veo4]l2~eNh$,֙',gfKt='.r[V,,j޸t9/:xiŬ7fAhh014[l/;\'Ey`wdͪJbĥRjT%Ҳ7^!IR<\'F梀iJNfHkkONN'z>bM98Ԍ50S*<+hLaixV؆><2HYؠ*auPUA(rUm笞l6r2; ]k)GV ӗpo(+*.,J}(z`:E[TBF 흝o.cĄWQ굈fdD:1W_>㢃<. kyx< i#Wh$V\vߕtObfiKed4k?ŋHO*>a~+<dewy9SqAV0H_UL>e*܂2.PEkj,4~zwzQZ xv wۘ&Ft4/au١Hźn), o:*+ӱvMIA[Lw0,X |sT.$}I 0&:DKCt6s<=۷2!P`C EEEeݻJ>Qo*y@ac8cH)!=`4fi|` wH"={: w\藊HFC[/ iS"nmGP7c$z` +P>>dDY|X4ӰIa?vr 5?a.rbak e e'rCW0\ru&d77@].:0|=pi fnb*C6em/Y'|q"QHdgq]n:PG)! 5 lhTQS27,QwA H.Vy-9ƌ3P҉!&uUJAl:DDqR\ w * Nj ZkO|8 DSrA/,ߢGhVߦ]6jR\P:\ds4F|ۓ9_f\d䋳eH2;2;⎠|ԕ{ eʐSPjj¡F2İvD7RU9Rt #i稸7a Eb:O]'A#Q([JAO ՐA@NɅ)hHCc$OEWn;qVbj>Aaj̋ZB[O?G4Շgµq#wo oUo'W\ęiԆ T `9 BXz!,`ä>).ud߽uYfL,'X##fQD"R0PT{@EaH8'a[: 0f>KENc(-x&An SS!z4*ynSbHnPu_XVwԔRtkîMD,NjS;o|*"([oo"׷z{@]du&ZCH&ڥ'|A {e<<~VΣm!t@N$lw?#h%>i_}D c$dZb*_@̙\d?8oKkQf}!gN/ Üwy璞,x# (*hx^vGVif9-jԇpnu{n JoemMhL"e%̺fg)A.@6"+֏g`'Mir"G<rʋ'Mzr\l224c^ѿBOg-&Ebz|Q6'D0mNX|D _mSlKGӑJJ€e茎l_;3ɁzʮǓT^9"ۆ}􈺭$X䞷jS`Ou%iA %ƈxUZKuitǔVf5pTd lь`0ٽ .G/_Lt'qPmS$Zp]smߣ Kȡt_vή7 &?kz&{eQPzP7|^7; N-[MjDӤ(i n}Q:D%A44KB*U$;jN9Iy)# B[5ՠCA$ؑpb9fxYd#/ Ck+tIHr(LQ]Cê?K#옂RAPa#n#=!lb}q86My5 wyF%aNm~$^{ܪN) ^Oyh̝9_E)n@@U]5>8~"\V+8BbL߯8i5ꋢ@BHCpQ*ҴY)f7Bˣ(v2) @h\"KTم1]U*Lsӡ@\= ˫S9IT.OC︓^CYm1j'T+X|]oMl>V^tĚ# #g¾0z7չB+Rl6\._2//SBbH`y$PՕr9ZB^ϻ lO/3M9r; +VoցNxD"iw,q, ?ei WmX} Ige^0Q/0!(悛VŽzNAtk^us?kfGjz[{u<ր1 \ӿuINQ-LTyHngU~hEb構$~ЃV|YƋUp|HR$ xY9]Jʹ*;s7kxN4d0}?wX,|ڵv-4wtn:YcvCkEJK!/W|`Ud_[QC)EڙF3@UHXRrt%/ࢺo0TJǢtLRN1b )+*pI@^ޔRm:&S0BБ~=1JL.N3bc`8)EyPZD>N!\ Ħ`$,=V؃տ"{_ZtTg>a$cB}A5y?d{Oq,.it,W:U uƒWs=Ьᐶ?<r5 N7cZ?e8qn#1Kܢ5z|}ڷ^d:h%5ڞ?""#ڑA04쏖/{HܓۡYC3Á=haXMi͠f fHEv/;l1}%TR$q2!Pr@u&pi<Թ^1c81F0 [eA!FԠ?Pz&.CD0 l;%+PA*Qg;H \1/we2'Ds% :)# ٹ掞#/-AsıpNA=xmclLBSgA,VvGIbM軜ay zMH6~|zYr^jmW*H #:&![6"!ofKw;>]~hfNjM3/+g)FW>ʥ3'oh^/>, t2lySrroho$N9p-yLq h=NN?SYCgT-7}^Dz SV12ڷG,gHg/i4wAX#pQ,q-5!jBnVV'9?\*]Y0{όW I`BߊwYv Z.!=`CDa\ËG(a5d77#1BϫSR˜1KMr !V! ??du4@l>j Oă83Ln`T >ɫެn>WwMlR*/=o0uX~.Bsƹi7eyvm,t*5@@*%HO2 '|r &#!Si5ݖF~ -`L~X8[3V` t b}4zhY5=IA؃ %uRp!q8Je0pb^8S=S$VSo}HFo9^{ nMNMri@x~ė, *ֻ3w7]_m% 4/=%VjPzW4(I8pFxʡ"7^P]9l>2z l6؋UR:C[ұQ_+*l:^zD3LEs;a] 4iN6+_!OB|m5dz,bFzC?$Dbohtw}(Pb(&{t]UeN#A#xh«Pf3wJcrXsND,n'ЀTkȺЕqC++[x=Dz ShfdXu VIFNbP7wmyu~<@S@n]Í3\]G[ɤmssld1 vxRHqHXc"$E^"rz[AO3??wz6ѵqIcf3;#ѯB1댶:\ui1kzfH[3J9=O208R%ch1F`xɰRa_Hp`r$l0 㤞v"'GbM-FHVf,HV]NEz־4LqSZ gpō1L0O}^$T=ؒMHO5n(Aj^֒`[X]𽊧,06&cOcd y qZR%a"҉CGJjj`UB$1j<_zq@G zumsZ>Os'e!o>*I:3+W!Ǥ3%`thW}K6V)>$*jƺRxk$:*_eE#{7 J/S9,|ӱf-&+*Uٷ9dg}|'ڕ-EقPqՂ@PC{C$kȃv=evkQUFvF7L(a_ "B # ED:jGabBqDϨykg( ]/7ΙKg'饸TLF h!f%g_H|s@c]K#w|0l&bsx2gvn ua9㓩l,CV@􍷩 60Ш2Z(\ŌA+jal9\PyåQEc )RoPvdwÈ1z*{ k3G.PэON܌p8fE5;=ѬwbbR\I>K2 H+ `Pz W2l*"Gur%V'CBZHakG3> $p掝0$'Xd|p#~I~t,X{ve9ؚ>* a_eA#vefA+"Y)-[˛Y=RǦ>V(8Wn.S?utc+؆ht7$f#&#&ܿY=Añ\bD9,(7+ i | g)AƇZQqT&}%F4Z[X"ݾT)K`idZӃH7~w/ad3y- 6kc`X7bE(*kMWA`C*ĊXEuDZ,)3FU@ tX@ZŘ`4V7yc+oG3)l9Ƣ! KܵZ斗(__]pV[dM.HES/@wUP(HA!wjS{lcT}"N?Q[EXst7[PmW:ԡeE۵oCwv ƥi0*BDcDKV K#wj.-#Jؠ$vfSGTPܴL𢝩..h@vZx`BV)d+FqlgEܡpvr *!9YjvkAIO|-YqW^%Bc/uFg=7|J]02;!S9C&ۓAn;"~@2 ^`.+4wfM l%SȮqqܻ,p t֢]u?{QeDx&4pJȐر c|s_k%'*Dy=9fIwf5]b =q} RUyZnJ ^,pf![=kZ]KOB}pBȽ7vу%]9[>+M,ok׫~\VpṐCg95Cܤ*NA; E*n(¿?>v nءZz]h_l8LZ9l:0xq2W;rq4`Jq!h[/}76a|9K|Gs.5A!x)}c7&kUT5{A0q wpM]gsqG/O9 eb6٫>|~ӔPˋrt 7KL  5#)ڡWPRSۅx&I6$z vrXrh'R4i,lB\q ݸ1!aɊxr-ZOChbtL L39Ō>ki++Tu$ ^Z`_krE5{A8T! eᇳtK  +N1rOqIw~l&q7"Uht X00R4P%[K/7`/e/v]Nw "Dvv5'|EMsl^n-A;X|xf^0T$n)d+eHkXg!Rۨ!&&M 0Ye( O& mEPK׍zFfyu@SCySxV%UۇSĎ)p%OWAhX8u4Af-S0}wrUS=&x5IZ EcP#4s1>``]$yޕ/`f\MXCܚVm5,6Z(I\(ƚJ QRYp,-?]< tMK6m9[QQy)4I! 5A㑼4!x¶3Wi} =[t{96/xguyI(jyrPz2 Ki/"z+&'w`%p;QΘ&"#L_79ziWϸЛok ~+\me71ibyڰ-(Cj*acN0KH'Y DR{%Z ,0!SuA2fߩGJ-E ]2Cv1F@7]be Bt mgV܉Ji*vzO cA=X83Sw=]_X mԫmIF Y91dXYxzTY`*ZWIBR ˀ;{WOqm/d (XG1M|sR.ﯹ.P*_j7Z]~X(wqg0&)?/Fc  0-ӇK)CC<߯MXȢFwkF㉣Κ7`@S[C3Xmkkʫ).dvzqM{$h,V _lF@+ϙukhOKF̰)ĂjNG 9'o;sQ:AB^nl8QeGtN=9̟s5Xp%Z aTN0m!>(xڹ0>ûHJtsX၂/ϔ_|>ɽ+3UmlAJ )8^(QWI-%\b]$TJ>-}(ZQI#%#>?OSK6&\X߹+B2@8^m~)WdOqGKyӴ?FE!ce^ށ5DQPWhú5&_qvS pB=ZwVAI=0+ ^bWo+L& y\RS3:ܻNqS8b@s/"keP'9!7=XUr_7X4M)')/yoBPL`ڽ!{bgDv_^z<$lqdӁWc&j`#61nS+a4`WΤ 4*(@Lx&k CY}?/lM4Y|Q=9$-(˨y~Tgi[˗+-X Iο,?,0& &5y ӿ(WLYe s2]& y/̡γ|gxρƘэ٧u[ I5c2>PeDI~} ~2 $ɑ߂4ck`g}sH#,K:اx15hvkOޭohu9;F#fȷ~Y t#V>Ǡ͈0w,E?ẋ+,8)"N0p08S8VAi~堸 _T#)Z~ 6C 4dF!PH!_FtL~ZpnR!7Dnť6e5RnlW]"L}?.γ.S`#vN2&~#T'V۠E<%vRl3r2!G1p+*GtLRtDV5Tp>B*ra*0#B5EQLby8 Cџ:(ovl24F25(L 6-''}&'.q=X Um̐g Td=2ZLwd wݔ49@Ά+y?|F@iK/:C5!}&~2~ƃ.g9RGVuۮ ڐ燃z.EO̿C"ɡmCÆ|8uxS#UW=F"{2Xe8]g.0=i10T8;8q4ֲ/m׹^,jۡ$uQ1J0z ӱDA#upJo™}V:?%A݂#w ׬9cp+ZT=gߙj1,꿜y?0sТ h\cLqHǹ3ԓ.,^z J]ʐmH^%L6]XMsBp?YB'4]]抍V{wx2jpD#O _\vx?.G:T90xRx>Ov"|KAVA- $۸AIEkMo]}0S1vUna-l3es/>m]1Frtk0^P6fCT^/Ž?f{\_A|frQ硻yU 7Q_bRa pK 5;p "; .Ĩʜ BDj-Lm,F\3,?)+VH(KĐs[ kӐM~FҪ/K/MΫ,2]NL 7kW1-8C`E}\-ڃBO139:fNjꚸ>z;IMjaL\4Ȑ](cɏLc8J؝1\p@'JwQfx;c#AٞAdWM§1_KL46 IX蛡o[iށjx8$F tറ٠ڰZ}e,ޓ`.'\q]dee*i%DDy]װғfDhl, ,8_cɎN>$CǢдH}٢Д,6_\GqB4x Q4W,!krl4jmEy8NZV_pѫ]C0#3L):Tpڤ-jjhڞtDT^tq`C'kؘ'=.n Wgl>tcdjjj2@ !1HH޺[{QK@ f Ptk*t[Q|MRGr{I 2g.X[+"cCG-'Yq%~O'LQOq0 2)Z O~ZMl)W$m..鄒x Gc;/'zɴ nԆ0׾@Sp-ڀ׳ %%zQY :ZSs{ cu|'v\݁ةʹ}6CS]r~P7#qkC,beD-&F3(iwi(⌿Wr~o3EI+7m- cXh*Kc\3["RR~oa˨aH /WhJA .ze zF8%VszLd]zHuEc| 8 LxI|i`!kbvG?kUMn8o"zd;6+I*g o5E#f*Uwܚ퉖)g;/gZOɮ/irzP\?Fl('9TߏZ>ȆdCPTu[K M~v 19rzo޹u:0 #r'FVݾRk? _Z٦EyoSp,f2UG%Kmo^/qB/M N !(Â|ڤM)b3p,?0ı)@”;xn>3oxm1 NTL<3=lY2m ?'Yl=?? FyNLy3E 'ۋz(S|a ut4D5{ JA'>FlRJe勤-Z!g%M]0sA'HK{;CLħ˭%ixfQ)ҡej#,r J-31Tk)/.I@xfG~1>Y -H/z/V*Iroyq ɺ:Rot;pk|Ii eIIg].6v}_!no uP~. jx]lקnx⿺5-IYjA@ߦ.`氩V|ئ.Y[f.dsGs "fv |\}ʥ]O^y{b1gfXJa6("xHQ)QQNkMw='̟V&a;H~,ZJcfDd0SRAYs} 2 i]u'=%b'a¡OE*(γt$N;]+8ô.xm䚜"q~f`e |v7t#m?*p̝ѷ* BEVp!st_ɪC]z|h&!Ǔu 흪dɿ?xM1@pp=#Rwcjk#f"(R,,-(bh]4oD>a6̱Eo*1BFbNu{5rD/**-$q>WMq.Ê&< vkljJF.U<6Ԥb4@{gEÊMYP??[֒tQLx[^[E%0cizg"D l;D]%tȏ\+}}_ XCJQ Pb[2QHת^&8j#6 hx!c5|Nhx./LqSb ߱^ LJSǼ__H ?oo*1?IԽ 7yÒd:6Fg WjټG1,C Ww˭BO(G2\ga|YcXC-U0|6hßV=pű9 FZxjπY x)V54XTkM^~+RG_s+7z*_< c=wN%/Iϗ.lspߒxյs9¬OiԠv,D(c BEoY23onpE`IM4.tIU7?/\f7̇h7tȕ9X={kO  u"D%WWBit˧&i8she@ z]ă:&[C@Tx@A'n$/{VzA\-ޞ[rJ",|۸ aYVV_ɮŘI0̛$]PE8„ |Q@M=LDV1khӱٿ@ jbiڨ׭ީp{5y *>o)+(D^_Ui_͊<㤵 oX!_ ˀ ,9~V=xCf ;:PUI[m--߾fQoP9ֽʁt;/6(kf MJ0Fe'?:UmSьB*O+/-ߜlܰr LEZQcw;Dt G_s$3TBm '*zv11}18Nɪc N&׸NȇռpgAÊqX '$hp'%(#pUc(m&N:xBŪTk] 6nt&zX‡ҐvNM8.dR5N~HJgYG˼HJ\*[ J KݸMGlrݫz%^(Sɰa׭A~$׆R oU0Nsu yO"tS{4Y]6ecU'.h춱rJCL0v!i]y0J*ʥ B㟳[#;,2ˊl Ï)Β9<g{2Ӣ)ӄ,& Fs7ɐH1Oo E *Q:~h);ρ؋6p]|)?znw?U2zLl;N>,gz_1Y:@Ə3\~OU| ^L /kvz99Y$T󬨯{9AU gھûIg*P0:̇lu>ʎ*>MR4o84;dݷWB5HI۾NGIh샌Ⱦk4h^#,-b+ףb!gr6jIIân~O6rM4I NQ5ټ߿2 N{@JHdcOC%C m 2 #ПɊ I@zD;MRjѓLFM>:bD.ߥr!FDB@8KBSκTL_rg>}).Ȫ⢭_ܥP@;E cl'Sc9xUOI;=k0¹O!uMKqKĎ=ݱʬ>)k.@UqE[ V3g ?ǏƬJMhT=)yޡ)X+U@YҨ䟠qw0o;9pl<!3}d0ӟ~Rm6VII] 6A~xӢՄ%ɣ'`ʧ2^g\gc9,Q(L? ޘ;qX x1Ě~ *_Nߎ1`V6Y$8C\V u^oYľpBCi6G}Ɗ%G׀9 ak*6kQ޹8aKúHRlKg}9i1m|ʀNFpThS u_FZ4s(&-JSjDA6yzB99١]!m/qt[`9ĕېLX׼?QjK~S A ȆX_R! TPrmU$ī^]@5V+൩_"2er/䰶_w7F.c \^yge.rg[n oR"T Q 3 n{Vg|i=.,B3lo@ L)䎹#{tlꝇ[DLID k.A)J.t<^3Af!D"KLeuh1#jy0tD0&Jy6߲c״]2ٹEm"P!6 ħ)(!?Od[%{L`oV=8\F%)vߢ.ŵQ,M2oիZ%AFZRO>~꣎ 9?(Xt*˴]S-k@Zdp?[_!%K/h l TzE[Z(S[e.kFVF/9 D M[||:VqPCY?KH: ,%¾9`q/ؖfhϤ~#b󺪢^?^|r ~/i(u>ƦkQOKbwRy(澾#UC@|*"~&hm]1co \9ǂQۅ/Dj, {0Z޼U=J_q5p6#ta)GԺ `&cz`\l2ɽۏCUlxO=`ML‚jM*mpv?#7D5 ѧ%-¾JkJZR&!7灠B_#s [VVcw t 7Al苒͊U(.*$ 0 Ua (orfwU ׵ +nӏFZc P5:`(UK^*M?npH"K.} >k䖼:}s+#/cI̢%YÕeےn8 ېdx1r*VN%Qzx6^B$PZwGvr=j@C{lJ]jeʜ<,s^T^0wD˕4yHu PMh6t1+ U F‘3S~9zԶU:+ * 'Dwb)"/dq%a`U8f0\Sj:7/n羃n0Ch03`;*T>L_ v#ɿgXzqݙ η< +`ӾѮu^21F~C&>ESj">2G6 +4qkRG{28Vl XS>Ր@̲ORU2B&*=nr&Zd1j6@uYgZc2 cǨI<@Rd䜱}׳2.b=Qm{bF*L4 !R`,-32A\Rsqw-} ϰJ#z.VO8v}IFF0<|2.$%HC<_q|[Ȥ5C/HKtI,ʔCV{c@#sv4U]\"2zQA6Tbε@Yx]RlN.fR`gT s;_e(|aj]j"] M֡Q3 49̓Q(3*3{h e#'kn+ێKc?+ l\(" N)i2Qe/R`0ʱE(_ܼ ضIV߯ d|azZO! (2PL{[~#"eHXՕd{a+b$PySCsREX(?\*حi4Mcp=eV3}-T9:$k;+[ 9짗QΘgf绊O‰*MuۊBrfb^ ᩯMMgd_+k"ʰ+OrUXos?`IΦ ;na*1@GlOHgo_VB7?4*/ut 춌dMaL3idi; < J'oŠ]-4ԤOEvJՆHc)f978 9I_ad;O$K8Mj^DɁ8fjGkjW`җȰ).55*6^N*410(UҝtUi;FƼ#͔IJzi7WD73#"+cn~u |CS pxƺf7?IٗYŁ+m3C].[KrQtZ cvӶ2֓VM$7t?-U$Y=IG ڙmlM1vBM戳bfZ$ }H x_ m";iVcmDc#z4.&y1 xh~+ʕnzیן$dD3x8I)9q9QGX*q#m#pq6ZyǕ!VgWZLk=KS6EMA rmnuɘPύ1pZ!9! _T UL|6^txRɥ:6H/=6'rJM.Lt2!Rrݥ(Zp a( pȀrΤ'%Vqkz'6/Ӝn]ys*k ],T(efҔ/њG cͼZnȕلφc =a&oVS)v RbdZX`_@c ˹rY 䄊5dfM.oْM]Y:F* FI$ 8AэHB'|e{1''Z>a%ĵ9gRu :TҼ$t'ڵ>&n#8sn򃚩&"v2Ok'Wn ?: :^JlxwbOh; {p#l* +!bEcb ,4M*|h5DfObG Wheh(t4BRG4FV2LKzXrl"D &L y]HNS[d=y ·D$d FT܏y0A[dJќ1 Zb8u,>!bpvL[u3S4QV,RGa+y?A^VAjzNpxl9^Әm{ 'L T Js9y(AճC2c?Ύ >zpY5QGQhl)1Vˮ OzK0`铃3žH9.zanbYNtxmx1 X~ q9j!Ъ9 6j9I3m:l'?%=/Zǡ̂}_,:M3xP@=aSaؙƚd5նP`׷,ibkQ~GYƀ 7?Ҋ^녋A11?D%[\.^4MeBfFe@c^9=D=T&ݹgf=F M![J WNQ^@'RW`Lqsϱ6Xn|+<䚻n.E+K@2J E.8{G熍F:>jSPp` etr!Dg͖':4J"MfOX=L]ܠ;ۑ |ŵap5mP, Є2̭# 3YIfrPe!elYr-*7YCOmtPy'8uEҡxH~tR ߭v2544L#/nӝs lWŤfʹO Go Y=TLDJ-e +)Py`ung.D65b7#^o3_@X9Tp!컢wߎ7&i}f6,z5ƫ2y?);!=i+{dL[\Ψ)ƾcU56Tѷ Cc'Koݟޭ$2;5.= ey s%bxHqԶCmE&@|v <Q![6`puF0[+pF+ .V"uYv>#m2q /&kWb `'5@2(\~D]%إs6dږUݗ]Ta rlWP`I-s ;_QX_W9ޙ@lDm 'ݥ"ߡwW \M eO$h@=#Rb 4E1O'+ECp }|'l u&Me%Bk>CXjcVFvHx *Gje=5e[#_T:5 C;vA'/Wo#u3΅]!1n++ ##r~ wyP0u4WJϞK}*zSur5~ozzpc4Y^of^sMRT#$=!es.N%rSN\[tgE_>. A_W_Lcrc{˟ 5.ogHq*b$jqj>yk}fUn]@:l?g7HɵG91N+j}sOU,}yUpA"*[b ebߣc( ߎF->7˭"Xr14*'m{Xmfb:Cwvo.#B{fW^S&Q$7b3AE#SoԼ ?nSbB9׭?GF^7>yh -j2/d\`=9O:6-\?nĴʣ8זk`0zYE<1gޚT|"'h׆ڐYQW-$ODGGu/Z߼]vg^+ p 4r~xE8`nOsI'a~R%O?u.^"XZFV+"i?2̓GN &A7`6y^ F ~XSQPZXj_oBH.ѐuN!0 >r:6[E0YLxS;8okstKېJ<|)'N!o;&.wN[>kl>YЛ_T+6xeri5b)@=6G>tŎO5ͳO m@hX]&"C4";1&%r!;\'7">]0+Z_ު!UQv^:Ms!vK!E]"lxinP'/"Wﯦe4&~B3zA!r(u%k)0ECǫ\9 5^{,Atj!EiW!76ARl-d;⦂0FGR v/+4(\+ g浻byjTrGZ76?M HS2eh91~*47TK4uoZ5W֏’X,B)ȱA@X`-wDRo*%'ajAZu![F!d[y\_UVauѷ<\pK4>d[ayVhSH$ 7o;툒!kMṕ @M&"\W[qr,yV}& R}ELǗ-,S (q֌uҗ\ŗghѼ&7tA_#3AZ_ ͫ4j&&T՝*I23^OcY@?x Izt) {C|c|A`fV#GUZJj1Ri#B-^dqOb6GI\-^RzT[wc00w,'{Ty:-aX1;&, #0no0C\- _C )ꢟjӷi]T4{}MOض0rOky^3[Ë*"w¥uD !2qXk낕:;F6(qaJ(31R;Qm/r utv0P:©Z>rp!ޅXǘ)osKu3f հ 6d{|lX5mUV$ VoÙ^؆{, 賶=p+u9C[Vcp] gN( !jQ7ҽt]L8aЋa,gUb>呉D[f쑳 U,PvxlFHl̏_-<|3!ŜT0pGNv`#V?ޖlbiRv[ENN4->^wPgn70_y] tu*]d@®n:L5'ؼUxʿ1B >_LKr0BRH[I.hs-9a l*w`űb8ÂjseGE f)R~\cŘJ%J* ?J;T'=Fĕ"/dؤ9xUi@B4t(xbx==n\lE9M+oB7xӕG,^ip}I\G5s"̏S6=NyIgbJ|e{%Kc/JOl9 !H6R q10}.!)Ş=azMl#+N*dq1$/)z Sj,BA8͂f)>R#2W/o ~wp :o- qc\wv\W3F/C;q%Ks:oś C-(Q+*!KqgQA%Z)XϾ밖in3eRm5͠N ,] XzSq~rÞ[@ͭ7! z &r$A:<7*-OwOQ Sd>Q?B#$#xHq:΋.j>n0~ -YaZ5$&bfFg^{Гe !z0ZKÝ'%mĀ tE:GQY*q'+5A:#kJX |[HFz<#\>Yoned*CDX{r.+]лPW|rWwBو(J\ҐaG92:_02lPI//ٽT=ʾ#th|>L,ڔKgCmsd]D[DHٓCV!Wr 8# ~l e C]_ wk5~0S/H.>;+ymG?YY %mɧE)uC)C?qœ:1 3@"=WtC6!5(j^I%'=>ñLM%nhPhFtr;;.oo w4_ g#mr"6Lqc5L2yqQ;P/ zROF?xڇPwFsgSRXpz_. Iѕ'ظ9|^xwn:ÿܙ8AHq GAP}ϐײ->8*^R8aXq WkG+9^\žoЋ[m(?ؘăQ:F1^Zܝa:iؿD+e̸$ D Gĵx} vC n U2Z2xlꦞt/[#^B0:0xkrxOۅ l&6Z)yIe+AQ* av^%Shs &:e7.O)TQXzF8 #I <0féRIV-ٍq-@c\59_}J#<&h.ws^$vB@D{X`r]-a?`$q]u(EުM{b֋ N-rx",弰qwT!?M 6;Jއ tX%y@z:xD8M½NM&f,9N UWq-^*`hE r3iZς,RI뭘,W.k̨f擖`CFP+$^N/PՠүJ/k?Iu5_HUwnv|nǩq:ꉷW-dHѼosP=k@0;a&tGNJg8R-‚Ц?RMֿҠ38 =ZrpS"Ϝ3ݪat^ *z"%8z8u` aK4ظ9\j|It̲pup׀K8 f݇EzMvbIs x$W͖IԦTC/V8Y]lXhyWai^-QDbHӍ')}Q "EL mlYt_hJY1w^I!Ϻn7 q_ӷ,F8K&/]T\VIDZ+d//CAqӀ< &稆ذȷžDiiB9Pcpbb2޴\0n^S':͍ nɢTx9||vN`ʦTeSd&*a7 +*M)^c ,? +_KmgT} 6#AA;1&cᑰS|˜S@x-D. c fuBwP:% ,$<_Y}u ҇S6fNC^%=H 6B`+,K $-yTOz: >z[?%čX*6;0س^/UA#.,1u^d5&EN~ԁaq< ܖd z!fCODS;V} -H#) >x8x#Rȍxi=N$r͏ 7|4?>$UBKc݈ %:T⬯1ܠMxQ)J<4<,~_\ /zpy?' ufuOu7YxqXMC%gy=>x xh'6 }VCIP?YwmL cA9 _d<BV`So{^CX<ӱAǯa2C7Aua'^S("Emhs$ mq-O{'2S܄L'}"$V iu#zKY˺AWrIktfT4MU9v?Wgm=${i-o(p ͜sޓD&1 S?T]dH,3NG_)VW ͧ\@tSWp>#q>m<$H: +aMEO3P{`bM`Ӄ w fHnCŜyhõ6A<01s(QaKQx^,#7+n Ib./N[}TW'ydj$iHuMTB7흘3׮<=&{оSwû^$>x[~w4%nzS`nFzOd1amMkv^DmCAN94@sg<#\U޿#ΰ%ߘ=e o6!->#} Tp8ףg7yb{{Q¦Cq`Qd%#rGT ]26!rD1s'Kjc5/]H>Øfہz<&2BgơdY |`7M(>f[aeJ=,;' qU(U!k˷xـ5zԮ~wqyc F" { %ŮއT2wwcwvjlj&9,ǟ1Q z,e waбhb\5ޕqglb܏u~ 䄝 *Byz#}"{wH"~:ʼnDbPεTL_9V3)0iBy;k}=忆%Ukag8r-߾醘nB3 B,S2M77v1Ĭ|C%rNbms6܄}ZyVz["Q^t^Λm GsN!܄6UM\M=#&nƋO2%S].VNI%wAHrwVdU}]ÖL fQEDizw1~B{X:_=1CB;?5Yb$?F˒Xq;r#:~q[Rv|2RVF L]ݙnua ~5^XCYr(+췰: ҰK;Xxw-g祻zAp*\lU9H;/ǧЬT4$5c"=2 w<Zܕ*Qq:k4 Ej&ZSVrѹAmY˂)r/'tLw9ڇ#T!辑LQ tbY .3[P_x*1jW|g2+ng#HEs,Mk;]3Y.l0zb +pR)=Km;or S[ L8ltu$]v -Nx$f0"ND;tr-!DUJ=%a F!y&LXDXdfGG)A%A><jeԕw7FSGeo!-Qx,l"u,28ndDXM HQȣ$dxEf4!.){)!RzEYKjٟa}d |կO9jNjIryamx@i{͎9K0hv՛K/4@$]UeDRɨ.ΫjׯLq@$S3Ŕ;n!uUtuGf?Zxy2$ ƷQln75 mnC!IAj4_1AW3%m ZwLOW_z*> ?fQER.\N`4-xzľ+ g$҂قٽJ1|D:wַhZ :3$yI7C;p&='*)|Grwtm^D>a׸ǹw(磒7MBg σ2[hq殂#Xfz]Xi%Z`_y,k e5"E}zh7p,ݓzp]qeц$IlPijRNpt0~ȢdK ,pp_m>ߔtKh'M\J/Z۽V']vHFETCV]e0^<b mB;d787Pz׋ņ }e50afWq{^$PN{xjSdqޭsQ<A{YBLw r1dz1B%=yLFg7icָ}$ .2}B= ݭ2]d&>k\SVs )]X0 DgxZdb m9jA[Y _F4xr8ElSCZ$ UjĽ0xg5}?:A}/RafQfYi{;.\s`S&]`OL*RcО`Uz1d8FYcEW 3 y *%μm ^਒yIUuΛ@k؋Ӝ"*z?WbɚZJM0b u8֣p+ '8-ˤpyfy'T@ yfo\不?Wy ;'u9#%̦2T8vw3C9';xܣ*!y'(1yHdE~C.W16\ 6PJ;]klǨcKG7(Lb^?j@<Бq`az"ˇ}X>rnJ|L !yW(~rVDNUB6Ռi7@CGS z4}aXڿ?)o-g3G&P$JEy]mao cDqPqC&BW,@? EwRSkJ\WbKn0WAWU}|GiAK)`4$;ijG gEv_-[U^tl1tYl,V s ٶ \@\)+kI'^ArL.GנGyP+CɟmQIS<%2#WMQp<?2:&JFU1wxoDheYTtOӹq =O/CxZvIxhi;(ER8{\²ʠɂߩsժi8im?шWp`КvF -|`%c(#G Uƈ{ofrZ2- ӄBR \T0ƉqLzE .@bTEc+Ex^%s:d&! x wfT2zkdմ#>WפȮPzbU@P~Y;]f@&AL 93~`OXOh*GH~aHs4yR}H4oJZ3: J[njxq:m 6ȥ8)sڛ憰@D h!VWt,}E˜RO w==d/9fjA-p Q(͆L+su[{vm`׽.1-WO)|$ɤ#3|6Hrr>+`ZMPFNtUJ; ]{faZ#iَQP@P_6﬷ynUP۸ǘ|Kj rm\vRrdI#5GbdvH]|h.AKWu n u Al!mٸp?F;DojM` gOK/FzFN.#Bxs:C ~c {L^:#qj pNk q )il?x;=mPp_e@zRb(^׺T$5%-iFAivB5+|IF J p) r v*F_i2lL*64 L҅p : ƣ8RX_9=c; h*ƭaSV $bl$V<3JȻ ԯEQ !e|;b;+wBoVUvb }(=\;0e:DNȳ%"[; y۸ HT98܉"Nފsly1V툉:pю(gGH.j(M>NUcKJPF]y͉s z5q?1TH4ҵTGg-nuklDߎMQU>)Ek82j"`Q 8]GU=ǫ~l̶kRLNfhTVk`^SIi?=*,p(QEhl{f>U 7Y݉څ:syмʙM0nPf3^?&BtU|5'뜤|'uP[̜eս9R^ydM` 5E ףpS1` &2k\^Tȫg#Rtok, .Z Kh,W2lZkJ9Qp=zɏEf܊+zޠwU :R "՝=N!j/xdpQIaeFqÛѴv9]"#Y8kFi@Rf<^,cQ/I&Ǭ.h0:=BBv\U6,VlO5וOxVS`to7X냏-;ndHyhL6(tlΰ6uM~::q w~z쀯+Dlnh/۴c] |̠qmtjN+(ߌϗ `B90=7ZAgr|͎KW-::YZaD}u4N|PqWyc=[^gE޾8 R>ƲڞԀ@V%140%7 ;)ΜB+usN=nK{i3Dmaq- Sٹ!)mȺۮZ6y~b]^D^Kg mxLY: `<>p!;8ƼWLB$Qs^kxbؔ ~;ٽ!՞4.TΩX>]HAG2_0uWD5LwBȰQ1:KpEXO8!s=҆VYW3 S'm>(;'R7n9T͗J~'xg5 ʦŴ~#p)Nqv.7-GuŘ аi_ j/_WdE"yd,y!.9ʎhj7#g],vY~‚q;WW97T1t/5V7 e F }}K5H\H#q RUo7)dVڣCAfJy3aS-.`:c7Q gsC_.3+=w1)fop(N>q3A.q`{>RT^5BFTGjQ1^MSNRy$L(u0)^wEq~D@g#2tᲤګ;іoQ. WY];KF/¦k2S+~$_Ъٙ|u2 )RK  H̀z'I*Z !FX] &_ߖ+z-WQĄ Qd0aӳٶՃ|vH5ת5j)2C EKsΖUxAhNop$ -b>ϳldu.KL^d_:2i%niK~o- S^$XM6`O^ 7O1=v&ǙKjSӄtghg /2˟K9s/%>UgV?Mu;t+A2ݢ յ3e yP.ߦ*Ct8ڿ:aYD~Džs N~*O5F3A \N!fE?eb W㍒$wgƷCWT -1s ;#Eeft̵[O*䐖|da~$,Ɣu_*I)ݶ7w<"%䁰}S-?{r7;ƈNĸG6hA9gӔnګ=TJ0S*;Æd ԪAN2DRKWs!=4dqǓ[NI.:,PVxdemaoPR Wߋ@e)d1 a-̤L_+|r &B_8-D|-1Si6LvG ?EzW4J+ JNqY`P¥69+-ɋ3k'xNZl+d  ydژEA6“v.& fJh@ [w#o\ 5X>vk51tD+)b=ipeBLlDю|Y5*`:!6ꆸnʉz+}H&Kq: ±-~,D[ *U8V7vʻBk%6?M+rҴ_~d [K|/M͗"t`QTTF2$V'\/+a-Ba=g *JZ_ EHM y\Y*j'؉ԋu.D#W.ooM&~-j܎u47t9f^҉]qJvH}Jw.0vscm gV/$V{Y5ՕFr냗'g`1ä5ȫi x֗3I)f>71LkPH?fE-߸>;K Dyj 8Ph}dsL ?I"8:CQͩg\m; 筒Afe&`e@W]kǪu: <%_|OL7zjh.^GkSݢP|ΓO7ڙqJj*Ï)R,S$ ۼ[ dҬjBig3dDcr]tC7\qZⵎw<2ƛe`֟"@/~v];Ty-lY߆B-^yBלKiaɭc)4^ח}t Es2* EOf+DIM Mױ:N[xFgtحh`M';(G/vE}j&:]S5H<,mͬ4QX2;`vvOjL+};1 'FުpBy>1rF4AUOYXNM\ =YV0 7?(ZcæM>?b9e3ꦸVZK5r9K؇38댍a"==]:J/8Kw5xhfR>65vF~TxgjeڝۚsGV'~DuPw -^h^\k wA|ي<~H'`3"A#n/)߫{tĢ5>{ /=06Ɯ'!.~ 'G[BEAmҔAL9^".ǖ$z0ZRrj{ӯ81 7 fa/}H0o?a % sp8 wz=NĹKVI48RU Fyo ѕ$-cӭrKp_IrZ77,+*͹L/CLo^>I+][tx@cLtth0ʟ$/{'|:bϠǿ~^H.)-;>Ru{e@^L'uMr E%RRn| ݹӨpz߶ne+r_|lJM[!V8YR0[!tsNdJ[x p{]޷)Gc˩N!C|eX$ .?̵X%\}iJlCΙ4!@c-k~O-ps$d螒Ny ;Y"̥lv=S%@U]r7?K D Q?LC uF$gYPFR' cl}7E9C\FNsMw*j6q4I+!!1ZbgWObΘm:;ՌԲhR@ G*_z: ^н[2>H#lt*2aϩq0f )fyWnogܜÕu T&!q|0#!zV bZMO3eAm5QXD1&yE} 7^uņluo,o4mVJg_Q]÷x+HsJhj0}{x9Ucuj8#lPqs,rV$˚:Ppq}+d>nqGk$3ӖӎwvKjS 5Z"k2yYC|[*b p(Cȱ&Z2wm 'rK @PgE&VQV +hQqy[dPq0 Jݓޓ ϠjLBLm$\;Ri<mon7T1,7,Ī1꟨fSDSoJk|Uhf H*([ CbH"Ƕ~Z6*+ 8n13H=9 J5NpV9y9g΁zfYM:\L2!V%ER^o^=>35;x|v! !8a:W4'X嶄1Ǣ"$qA.s([K9cek/cC '!8f2a"_$_~ hd|+(KF[H@BKpE}1aMv[.G"Q;f:8)0"l1HKhPTNG%:_JXRh6U'>W~nhUdzPF#T/ t$yh]<2-c[pFzo?61[ZS#m&ؔG:>&=҈1ڞ&`đdbzesj9 H  ΄"\E'n !-Na[&PCK욂$OhsD0۹S.lI nTjO; ҄?s騂\Bl? )e4&W^tV-*c w|22TM .^572KYFͱ,׾i z8E=(+o8ԉuI68TFQ_#uohH['~8wʳ`:C=CG]HRierUV]‹*Zs6@B ~j{8! ""z{QctAIVr4ƢIEjmeuHs;(GLM\zDnt_20_*^]I$/  $vYWD.FMvu5w&2> z+ FAY2H}ESy6{.NTt2j5eUvI, oِ/KSEUJl!/?Ӯ,Oz]rsPz"+ct%I~4I#LRcO(_ 8_-Zv=gzULw7+GnZ4ww bp (Ne玗 U/a,ipVES%._3i!.fO* GP$ti#Ҭ!}9@l$2zE=v@ I2nbp5etoJpPmp:*np71⮕5PmKex?}<&.f,6ݽAI$ ]F'QC'kgɡzU d4Tؖ5U`rzl;]r@0N>wK1e}IO_n@^9 VI9:U5^׉ı,aш] Dv Oq/.f>MYch'bxY !]ChkJ-Qn:C:KEͩ4 T@7&,UYͬԳ  HCkaj~0ܜdtk+Y}Wc1u(2`X8?0 c(Zd`7ej> ј̖JL;'R4'[|$t4AKmq ^n'$ ׃, y=VK܅8< D3TޟaTٲy]!SMוr{c(֌-e׬H.4of/Ԑى:y龐7_2l]KF:&u'և/ߪyeV /$qawlMa|t;vqAzG힭Gmdcǀ҂a<|P]2NfNZJrd#*I~ ^fd:OjB#w 鑂:#hQlSw}ۿIk/ԁm-PV_W9Z/rP!αal (\H =TJ?9'nZ9+A`@SQUg(ϪӶ{Pn9@}g1ܦ㝾N+VG-kwCAUFPAB S#񆛩U0jvgE@ֆ@gTH__y\i*GMe'QB+mU-ܖkq u>tKp9j$!wtXn `9*S48hIwy1] _Y{//{RD~agG3Msj{xyH7|9|ʯqZG={O7Mۋ4}t6}Yp@*Np.MMךpj!O^2FwSMNk}aMb^^dvۡWe{*.mJ[v@6krl/區 m[=WqшPp,Of lEs2r L[/4k"F9Zگ֑+Fa)x~s<%Q*UヸX9<9E G |ȍV~A3D&1B~z~OH`awfQn u]&iL:>?u5b\9kך1.x|jdKzCAT}- 9\FSoז§$<>bAg58a%d P<;Sd!XFqx>J#&R̺DoviNbZ =-=[zjDD[ }&Tl_\>qK$8KgQUci'&u~mx,5N&C#Rm :yiX*0- cInO[zBĕ:%q(~q1 AN(ELws7?dO[#Az(*T pc4jbr.snC.LS N*K* #KȈҬ^<)S\lEOE;}a%|k \V`#`3!9XV8 0M4jDm85Y[QS% >,6)3C8bڀ+CbkQ@1H߂}аBvFː8İƶ6Xk &bL)z/i\#Cq=B@ܵmri_UV0(c5mp9p0 &'8'.At 뙄zooi݂˧)a֫n} ieacHquާ` w|d=̂=;կől{/Zz̶C|\"q󈘬m K I tZ9sJ\0kʯ-)UPt[*u|[,CDŽ1ؘ46u1ү]qB2+ǐoǦ! 맽L>PÃ֨P`Sk-XTQ~1)\EI\bqzJ'Z1~E3hEnΤAFઊZ8e4VdlwbG|De ,&4ɆQPw g Bu<\#7!vD~ΞΖ Hu 3#6Y`dUN|Jp>=*\9+&$s1TVQnf"鶮!}Jxdl|&xǣʳu &P̉|s}Uiӟ!Jp|p $Ҝwi L]g\]i]K]DM M2e?/ɤ7ʖy"|p^bo no5-,MN9k81@YZaIKIz+SABa8J "Z eXuaeoccpHjnOWݖ!`xq_H>g2DG DDZ}*+בS05?X0 Λӷ}ô.bloY8.]У<ZT 97-WL"^ vmߞkY_CV6{~>,Y((C#!5*3oZ(s*\ፙ@A.[WTeL!0=Ƞ]3hKo Ηc &4:C훛R]7-HpwKO!Yaۈdq.h%YȼaynrOfJBGB9.c+m[y΍JKc]BZǟgeaY \pkuN~ kA5ĸ ?}n-H-+ER @J2'Ah8OrvYnM 5OrTgkacw5+|h:,rkgE{߹1\cM4^IZ.{\K(<=*+^ @ڞqd!<֭wbh\ FkLuAXU(cI9D 3~C[&wgSY1b!TQ_vY LhyFY$ IE_OcH@G$Me]cx#HV޻Sܾ?I8[@CT[HGkUF 6MgBq\JYs?~TؤwNcZ=0EzNl„?*NK|*ٻsWyJ:vy^ӍpAE#O{輰MH+>fsFFwcxEx!7Y|S3 AK3X.?sp-uk3幃(mj_ZhD]BҽG?:&aWGw͓oÛ<֊S4 N޻hbJU)F$C{`'E'KEu;q߰#Eif^xj)%s֖>:-cij;d=S sn~P_%0 -vEypU{H z5,+H0~m6ְ](<~?WPH*qDb|%o&#F~ fTw=qC42D2C:GJjF3\_"h -[Otf 'ڡL H (Xdxez9l܉)?RX:(=,9طnc 'Y,"cJ$ok2]B7db?zB$вpNԜID9TX?t^ky17|!G|U _j9 m黟YxRl΂ҭ1tE0( .ɜZk3$|^Yx?ywZ 62gг)pn37AjeXP 2ot͚:bֱF >ށ ]ȡJ 'I11+y#輺i ݭoނ%"- ћߤn^U$`6ͭg[zak-JL&qt7+]MMe힆]?Xڞ֞,X,U6P"oJ 0=2gЕҼn5&Uem\:׉ABBRڹ/Wtb@3izhM'; |SsuJMX}Ju}݉ ٞ: g*Nznݦ}\jjr_,/xm:_+7{Y"oBRIdxQ~פ))Ŵ$\=C8Y!bY8\һ#),{p;@_383~;U7g;t[m$t)Ah_oIT8+!D# _VD^ekͻ嘆|啼Ľ'2~`UpY1~Dr+" W+\׵Ԛ kלA fDL[%̢2:?e3.KIX{@T /_h5`OTM~9[|Iu$ute)ٯh tb.Fw' B<PGbw|6;MKFCZRTn5#_ݦ [x_|5U+dCzQ |3-CP:ʸq@q‘ ,@1! j2}iBHb,# /]~w|gAD;I&Fh3#;[9ҿ&/ )YW͜ <{bo}.LR ac):34P9Ÿ=j+kk+H4B~d]]Q3\@q:ߧ~ƯIPA($y9˕+5X kb+IM̯D=]QC0T[;ZjſwCm(ҧt z:{" s&;-$N^QҋZl2!È|!qkVwKg6О/L[ź=8N!gXPvV,vWcmQG ?!HkEz|v¢>Ru!2)JBP.T4PK6%/ɣ,6al櫄l.tĵ7lJ7P)tx ' rbe Gj:` %d OTwa^ăIElρGۤ?焉Bz,V.[nPah; o>wprp 3tPϴ-3NyMf JFk,"{;Ra6>9tg (.U$[R@OM$"(y)"nOMܖOc*v7pIZQ,t!"l E\)k07цUQ aNj1,ʝ8eǝxtbMi10xѼ%=Lj0?@!t0kA#zU]]{oE "G pupGr߇҅7Kn2ABY| چY9fNnCY}n&a;={K,5_l5ċ:hhy5$?3O"=L3tbV⽼Yiv|qx:*#b8{ݔg6c1$wW6)ȩ3=G@^g&Oz9}u78Qj⽓\`m/Λrv ڷ]Ih ouioe'ҫN`C!nP-`>V7~D:Ȑ>+-|\@5_M\\^r arѬds\5+!8 ̀! W#U?~+BP~ŵD {RMy '*FY/{gcb1t˻^jh_gğpnpceng8э :e xL=D~dtf83Le8m`|@֯C6|Fio-bW'5sux"AcݴQw utIKI 8ݬ7_b嵣[V*qPSC;˨ϓRɮNHC*C'tDf'jj?")96sLf!^yRaůŤǗS09O vt2 Uȵ lVpbW9l.'pa>q#g(L^2az#: *~~V6a9 "q,Q` T]¥^?s.wQfqTR@TX&tBuh~(g`Zc3#:v43z؇q'r[.vY1}uR>>0Lqӡ1?h%풲+ϫyfʋw+[ rLM IHdhfkol&|Ehٜ` G R d;3+^/0Bv~> y)NTjďxN]ʋx b{2E)-i͞t'k/M]]f&dzyUo2,agL_T'ܥZrWg[[6ׁGǐ4xaʇq)]5imR\K 4J ĤchP.x3:>PNlJn M\VvO}ee4ZM!OyˬJ<9뺚 cm%VYh91Zc.nۃ`#$a<_@Z\X|NHfoۈ!è[;Py _cOߨx1z">+u"v+`dbppnhyJnT*=7kʘ}rdTH(,C/$&pl8}4 1#_HNlU[hPR^a̵$9b`U}A.E&d! ŝXy+jVY?/l s(jx%Jk?{rlSJ<` 6iE`{m/G o'.ϤoO6(@C&㽅s0\6~'}Bp]iS>3dN s EL0bOʪregP.:v0fޅnbT.x $r҅GC%-䓅󈑞SlRm`$8,z0B8>8 cax 8?a4TQ62yNBh\Q]Kފx}QTٷVf#0O6\滭LV(W(0Л~! QO^3nn b! {SGvBAa{#KSkԿs Q14?|A)E|qCQ":vj/ګ?[ `L{ dx@u( CfOCzAd,UY؂.Ih `K|=ӶЈnԳ1 l &$3,zs/Ot2U~ LDR6#h/KlOayN 8-?j}ȉL;^ l/fe0TL%G`,?Wv]K4Ɗ nA_:\* D o{̉,TdmdUVٯ_'a?LwF_ Hs/HdN=Nw]/@߾h(GᐸHk ۄ.rt2alW^ {y1l!y8vs6%^m{12UV:]/c"fZECkrudcigܩ*/`8otm>DjI%*g4dU\}7]Qwun ~ FX2G իP.'([kxftST%7p4RӁBľ|i"3¤Qrc:)^KqbwUszXWC_9gFjBP"P;\ xāpdL'|T5-sYE `@@͖b#\# M%3F#gЭ XXX,0]m˝>_R\'z iS <OuݖEZې;l] 2A3p )}vIq,^{ 8.bx%)ji(VՉa^YiDM\$-۵_ R˺ɖ>Sޅ#{{@u-Yt93e/qkc.ݪ@O}9LPiɂ9_#Tv'V[hHAA*vj%]1HjtS9])Y׿Lnc&6Ie|cԊ7WQ-n&S/FY+ &#ɊBB?D7|ߠ`,-}awFC vLSS$;{}9jb`8DQ2?nNĦ,%}+( q G8% 'aj["IO?EԦm'gB>hf#?z7}gȉ `*o/踑ID\-Z58gS? ܉dNsl'f~n:+%Ԝ _Ed0nH\r=$bN@p_|:_s~N Q;5U*C#yepSlkT_}  ~Zy/,/EQ"LSŝ'Sfv] Pzo7 бﱁn֔g jR[:"zV!΃d:3ۧkv3όW QD-ϱTDe)4L!5^ߋ @ɽ#{rQ-L)^*tGF_imI(笳x>abv'$<1LE 5d!;| ~f80*g \mLO(vL|MlD:#9V?N-ؑG=]W}VH.+(e$~]~a<}Wva+}srz-w{xAWPB_w?5PhfDtkQM1 ?w.\8E,D|a#qą!P=4ɩ}/|h0[{qZ[a#)Cm>Qh J5ҏZ$ 𤭐 7tMKnME-&!~i4~>\w"l'AFnA B-2@moG4DE ! ILt3f3(>M8ŵ 5i]Cײm5ۑ7c$h1Nv{2UH{NGJ4J h\{SDQxt]jeCvUˏLeZ)DvQLSs3G]#H4Z 47-g^͋c̝ g`4@ЀC<1vϓaz O)i45سo 5ù9f|f Q> k {%_N{e>~0|]랹T7c;yvl)$4łf(Ľ0S5; Q;@$Wus&vouͫi^ZruxLa_rhp"i";^PMiI9W'۟{nWHRv@3T>n٨ zucJrJXf?p15 !: sg3HHD<7}Vq(̦j~1i~7OhXh~4ueǺXciP}>W< L#cU-}-yk vY|pz8|KOzDhZ5P I& ?y^<0'CF17X: ;cA)(rW8},,8ݹ>.q2V!Le /vP;%@ } /WOk8]#cܟOXQr=K).tnᄯS#ݩZ8[V}%2[ED瑖4lD1F呿i3A3G2)#?;8Oi&yefܾ!pT \tQw]|uτn$+V7 ),YG:8m|>x9%yc-+iB׏LE edni/7B/= Ćd @ w߬7N;E⌇ǥEƢDӫ OvLq۔0q=7߰SCj-Zy~$4@UݟjWpBCq7=_X l7rrR%8M`(s YcY`ybV\3l[jzU0n{u?YI6M!/'`q!ThŐ#Kǡ?/N}XDzXGcAtIC(xyLZqE[tt}D ɪ`( f, ;nUO݀s26GHqnʙ;X-}#dk{W$`EMA) jʓ)$7icM_B5#=SAcV'M>|H,nA!ߒp|N*eq* jL 5 pӏdZsGq#+/M@Fx/%tR~uec8Y>YAYjCu˹/"HޣG/䳮B~hi<ợһɞl)=h?) YM2)~S4zq#W)gp gCʉxXpm̪ U0ad.;e*/aFDk Hw(s{#sXyįUf)iK8#MjJkd(@&XSQOK$}׹L 6UEl_"+BhXb)Z<*+?W~σBywojsu]kA~ -|?|n룰I4 飇0a!loq+漉ptAh\7)DmϊSz"|2=qOij2}?gF J !Y+!'LEqѣ1& 6[Rs%. :%&eS5/R )>L&bM%:Lsvu++J<(k J݊kʠ9BBU,b%rq*,haitq]kXa-rdm. ,&y4Glc#ŵ)Yf/&FH:c0Ku5ʢt3N`Q9փ}sʯGu}Ԇ0p0^:7ݬę՛͝6{3=˼B*`ϩѿ`RCM}tkPbhpsUBּco^B!>>v=!=)xѝ D f G vFɣ5 ^ˠU#6#؞NޏpbGûz1ˆ5r8"άj4bj EMkŧ?Io \l! '|V;ujΰ'V_}iP Fn.scRM>U*ʏWQ0೥V/cEȲ 3R:}cpRmDDFA,-?;[^hK"H&azɇKC3l}m,pBEq!q.+ oRjA= Eӕı[UFu&cH S' $D M}k.8cxG>FnHzZ%5\U~O쟟Tec4":MMaw(}Ј6H(Qb(C88k,k څеX`:gz1z Ee,YaC<}d Zч(r4 4Sfd*9<~=5֚ax BE8yƓ,6_% uA6HnVث=VZO- ?%w%UhWY|NḇV =Z|̔6!凃TciY> %  E"opmd}iDmR}t:Z(QJ!Fx ;w~:7n@5݇?6W-/aŦ!N9ه*3gowŽ?EKyM"z',kmNakYxg9!I2c]p5Ap 3J~H""l !):/WXc{Jb.h->^eI Đ[QD%"$"Ȁ?Eo3xگEЫ/w& f:G.>=IT'me|I/Jim@Eƞp!wxpb'iLMAVWy4&4yɰ痡%R{nkhV7 N|aŴKFZ J.c'ՅN9zѓ5iYM~īX]8BtRR*t>Qv^kf0 &1ȃE՟F4䧋[Nw>_cՍ~F.2"Td= jj0_5wH_":(⬿*,ïqr@P6 0Xtn]ux^]`;q57ij~@ }VChŧa0@̉s#s})Gľ^.9zjAߍzV 6$ϡ^Wqt-"|e?zP }PfhY;;>Â!_db:Ǭ_i)NTH2 ʜ ȸC'ɘ@e|`PD&˙f8=E;AH1;]DN.S sͽCHnLa:fP)' < |bM `3N4e$,"Ϣ}?DWHxg(վ'Kd9\Uxх{$x"LX2˚n/yځL秙Voqoy6*kmLk4!U>}FCy8VMu!rT2rk ΏȘ$P,paX>1)ƛiRgW9ϫ+$]4ȍO!'H>vo{5Aa 33* | D*:aI쥬{v Qx\)D jD+RTlݚm9X *О<$0zlA^,ϯ‹+<)' qD4,a:{p8)H7Dt{ =Fud-̂"^ZvˁIx?}]8'@ E ${f$\{I Z $EәIKr9OѬi|?mk) Tll3tlG6ʺ d6d**q x2V<.ۼnXbUۏI:[6iwy3<~#,K_k4Oч;9۟7 ^X+Yє(Y &pcbs;HPˏQ VR Y-+m V{}Q%=寀 ]:ie~ѽ f۩w(5tbH2Y7qc ?|n.֍UDѧ ׮avr bMn#TS]lvAVWy%\ԜLϢOӉwb bVhd쀄g3^|٭KfM]0@ }-5aX(S=CtdCLm I–ؗ5Z |Q6G1{!aF'T*Ap!MD qTjpW,qC^\G$ 0MsdLT[y1fgC,s8D#z| 5*{J\QmsBv$s̬mVbXS$Hqqa#$e<<'F։v.W6:atcVQa _҉X'=ѽ&9 ")ҝvʷ]H 5SDb3 uk,Ee=O]D<\H c_b ]D}U;%k pL 0.Ў?M,crxE;cEY3x@]cLH . XW42gpiK^E/P'Q7$jN·ȾUk"Ƈ 4{G>Rt"-)l{'>jUFJsgu'@*u.$T~&Vz_ 3܀Q2[7V}O|.́;o+JyiH |6H-ȷ-V2{ji99 ^*qYNR=+ʯݽ2&V_c CQ-`&Лv e|RJy! ]$qiB29'Hd{X ޭ1j fl~l{OCJ(ɽXprf@iabaߘt9o&&NV+Mcþ25{xy_ -|l:X xCd! 8>\PsKƒd&=ڬ\o;Cg`@9.;q^)PL[%.C :$A(ey}_d#uD;hi[iT8ʹN*8KzNjf"C?|vLEo'x#Ti$$Hq?]3TI]/g ٬⸶ &>=evYH=VY 6~ Wk`6f[Rs~PChpc0V%5c(PCrFϷ#@$TWS 6躊Y?ߑ2񾉧l=h>qXQqR"LF05M`OI҈ݡ^sE9sM!V}b^GEQQ>pV:*ve+;H1VPi}h&wʛ J@Ȑr7In]`CLMo<`D&:iK9+AީKQdeIEIE⬈svTmUג^0Br,aoW_|(JQBYB|M^&mZZH7ۓKANc}HPM0'D#!L1~ߊI.3QY)}?xHj!wLv. =9gFsZ$^H6}c uޤH sul`Xfmap{K(lxgM{RÕ(Z}RR3)$,`0)yp\j;S+*= \ 0ɂ+zL*2p_TKs+-K8Z9\ ж"^K*b%1_u2 &HjX`@'sے6z#(SA8eYp<K7h~  VsھU XY)V_UЁj.UNdKS)w'/C~ާ.,)N^nZ1IKYlSO5}<5O޽;9E ,$%ԖQa6>l8gYM/(\a׌nbi;"S?3;PoQ|ԀVkMĒ0i]!Ӽʀ^2HKd+L7l $s[b݅A m6M=ؖVp7 ܯ8!00Vz%?M<䖢Cmcց\@Uj<w?]4nn\yq^8jxHI}¨S! >ȫ;6C0);7N?acto+0rE`vNCjCs̏#*KFoYzp`{kj_^УQ+]H])e fM`@iW{W' ~ji/UIނIl8ج#HT]Ix*'kǬ`,5:xG0=ߘ0?b:?<.5SFE~ތg2Xb];g~pѹqGⵓ3Lssk%d BUPZ, *lnSݔ4NO&?ps[YY m$HiD\H +=B,l<rHo:{~32H7 -!UE8($' s|f0<O_b71OT>(yT?;lBa{Ӑ[p$. M~RgQSk vTn'Y^ VZ"a,2?k3x(HPdNU㗸"[1Uv0%]\iEZnq^Y_5 { ?Pa U@iyGë>Ј#9ByrԷy!*B@n -{|8#bVj?g˸-2M#4]v1(4f<|] HWq,6aW2,f7\:*qATv+פtJ7?nό8EfݳT=m~o<&zM q!QQ ]Yת0=1ilYPωNH?4=2>uzO^Mpdđ=C !N7֋FК \rʿ8,: }Oia?VG Cٙ,N ZXn2eS ͅUXp*kb;04ES?g8UDљX}z&&4id`4ܡt2a5^Qp0e4Ѹ|v}: IH0c%GMbemO", ]ny+w{8:)tbb{˶I|Ґ)vU3V{;rt~Yk"-uͶɸCTwj 1Uu<_Z#wA؂d涰p_u/ģY5t!=;E+E+lb/呫mi_ vMm;JK2`z V:HTj2?ۻK8QeHA/y 4'"eLCzG]!ygk̥D wE6$x:!@qL2Bz"SdFԣ!իOJl;==u97q~8|~ HAY<(TJ;{KPƭBқ{oUwΉ*2 oN=w2+=eHc$yPȑd0g (c\`_h/* U|3a#a Zɩ3['ߛ,6Xon$Go kɮr2M-%ȸ %)M(g&@2M^ܦu4m񹵈tl<'^AjxeiSHm&8q\W.¡uh$01V%kEeqyOL`Y8 SsG%nzB&zX;HEUe[f"0vgk}a*T87~_}z85Wʃî^"!;gŜWNj9 P,)r5 _hC৖EY&3U_ߤ-+,KDphm=2Cb+#)'ck&Y}i<^F] y-Fݬ'2%R,T=ZpP- s tj䓣IU' ^)gTQ"0kߡʂy #F~~[`ODWz ABdWH J.N-1zA3~XThBD[ɥ rfhxחJ:!$k5ECmw6u MSŋNEO(P "?Վ.XowKYl;f}EkG'#իr̤:8&m&@4^ejmm).$uփPgkX/8KSȂߘiLOHե3MP`56 לF=*`yGk~;kPth1!bј肮ҝu]*YW'OOun*pV8T_5Pc?"749{Tb ɓ /NIcP(fkp,8Jco܋tp9) pqu]`K }4!1`Qr*ӣ=TƤ3 5-pi|-[ Y#H = \db.T)(V<픥LڤN[Uڠ,*UǪRXHwt|0; )|9v{v54ua $+U f:׀/uҌ_%Qf%$鍒By,$qI4tVN,-tP${uҟ2qً;yN )iG"q+6XAi%ls(Z:'r9Dap]PsppH]IWeAgQQh VVHfhomld:WIz3(mt!+V}D_]T~LgQ8MGe>vf lz60MT"pm|>jlu5s.Թ#ٶys_6\B)&P- bx`~p<4 aLJ N !")atT䢛P݇14ա5zx(kog u3-!f33N&\PjQC˨|{ 2-C=ؼ(W;Yu>Ae)*U4YGbG#< *9F3*oWMAs zӆ8%˳\BCVqg@9zI4>-8jR+Jm7$P598Oޡ'_ u ?^-OGFܲej.pA+륪D1%j5S!{MͰZKd/igx#eo.䯧t.b!U!5_S%3_{ @C!)Sd"ԂQt MgdU5#nI<~O2ۆb/ [qů7)Z0YpJ%hhb&쓎x6Yo;-D͙fY!!YyD J0%x(3?qwr>jQA!\Z4%C>ffܔX*ZVK" i!Zmyҗ9Zڝ}rk3_'mv@{YL*&-*r>GNFm|)Zm[ =Il"aen2Δc߻ӑ ϣ&$'&j8 sƘamq*96xLu\-ͅ7'#wfmb`+kviIЛr6V>s;(+g?aZ@JshTcpjAs?'V kSVjLd2ȏ+7Ry^®7/~?YՁHbMorxLdbRx985>d2:Is4<':pq"lT$ }Hc彿LZg" G=Ye#Cvq=?mĴ5&RQ3A=ds(*Eό &ǖ8\c|kܸ(@7=X,(qu )uEq[ yYBJ71fVFSadr?2r:Yu7џ۝@|lFLΝ++t0X¤e(xtIALl}voTd,eҡD% L%Uhp2CtdDžG8k 2ܗ1} AB\W$avBDqHX)%XC:1f-b+ 7ϺD/'.,"(u_Lxa+$ᮟxf b+]f->̃l&FyIRbLJm' 8um?V|Mij]BuG;淎SEIۗ'sV?z қ$uV0 A{c)GQT\V3H6uӈ}#RzA%W260c/i*RG 35ӣ_| 9N*^l{H)9Lx΅ ޫXD <=4\Khl֊xo+Z0r!CK* {5~.0E$:h?HQ"G=ke.ǟ|kmp#x"K: m!},̜܁ Zz3euh}Y**z`Iݗqc $@Դ+lG%6TM_{mVz>PKnaBm{.0)' k,R Bo`BC~4D슴( 8[yi2~J8;%%Z\Ji/]yڇM3ҘGSFE@a5^+b蚐bMM^a j 9ivF'5:ʽ1~TDc?[7W(=]U17 +/DVeie1b}:I\\@!Jҧ>rW~{y!PH9Whs@(`\riem`(nʜYt7(,s~(VhwZY͊a{"4[\Z|QH[̆E)Mˠae8)@ω//UgpLX+=-wYnbvE>jwH-FNQrYtߓ{Ɯ*H3_Qd۲In;Oo9A>Ud[2EгFOƞyhkBu2 ~ MoX)Tz+6<5qkNH:nTVV6\Qf0 ȏ\qY8_w֮A EbK|٦'Ze?<qj"FZ}tI3 Gx)xˆOMF-:!)G;d|^>tįpiH2#MYEY,{iyrHR3g!*zz۝[72oO 3%s)!Nn([{/w~JSp>)-qZ.R D)vX8]eM=Ǜg-˜;-]_4PQ.2K_}.(my-T& LC?=Fɿ;zہz( Z3;#VR>`ބ!|۵01-@JeErEHB{ju I? {qCINeَf I(yeL˙ܐO󠆫5RӬm+A4|39v.D?^ zdi(/bwkS=:K Q 3S$12 +Ssd%'>A80"ŕ+AƟ>} cڹ5iiՌv`FTZC^B]Da2*\e;FT-r  "wzÅwXN'Yl:e,Xw$ 2 5Xxo?"&i]9Li,NuqUzrC@N&~L[!+ H^uKLb n"Y&"؎Ye*|vCMLTj~%v4CSaaffTSنuLfg. ۼ՟PpT`Ӂ2Lč0߼ou4W"d2\O8n,7Ө2+(ؖ)̕dTv\1"Dţ*9Q%p\# 43cIc6Yi6;V3Hv"]Z&+;Eya  T(aߐ ݞ;"fZyQǒ3 P-.ՐkBd4Xx>fx]Cxc- ATȹ "Z~tO )]R 9;q>jkm%2-ReB@,K1;b0vʈQq l6i6ۨ s{orR ;ًC*-P`suT`w7?ܑ+9/_NQi6ap/^ 됏K)4=*oP fjQ7iPSE^lsh7>^ mx m6NVqv~2s H/s"H=ܜPZ?0#%Nh#LO8Ůlorf}eL@+`=ds%ڵ|]-RfE5MsE-+}R>%l _PqKh(qne~CVX[>5fP!T̽7?Q;d:ȨW`s,\1ŠF/7c`~@F.5 F n?e1YcM-=F?sb+'GbcXRv-H9X@(&sm!fQ~T[Do7T0_wdEg8%A\s˿Ӡna7X0afgy+v%6I$t68j>ܞ=e׸%KxlC6wn @K%1 (f|wBUGcWPPvSk E_=vAD-ֆ}<0Nγpi8si_kqQ)0pMΏ҇j}(y6#5gy#.'FPrF筡]`˼~t?g2a=Br.qWB+Ei~*S?W_;@\>~켇HL/ m:&?Ѥj,=nوI=&jdku mx%Gb:]P3 fobIܠ-,8egdLmVg/y0CRʁzF`y) z$#V시(<Z~p[1D8nxV_Y2g+poA+̅H| o4diVj7:{c7&ȹ/iPφZdƍtӆ:mh5 $Sƹ;-;,T@,m 87lYf9n ܤ69*Z>O"[NAi})ueaVƼXum׺WHSl 3X4/<Ts3pȏSq@1ĘBT + =F7>)Oe$0tD?l%sWYb\tkp4pf sVMǺk#2δRwn=Apމ \ޑS'ʐh%{[ ` 8"WN;aq|/dPCv͢ m|^Aɂ]Q gPX;@C"QTij00W4 P(ʹp< Klx-T&1KD dN, ӶIѳ:Eeq(t _=,f@Ϣ #4 5ݽ! .r?~܂bҀ)u%(C2_kƶWЭ\FQՔt!5KՐlj^k rWlN[S$*7`Xw21ش8B'xYEmE<>BmAW;iB̷7?p\O"u/*A't/o7!'"༹;s azqTʪK02ftew-ij'C,2(Gu7Ң(i`}wQ(t Q Y6)īC :tx Lsj/#U{SQB;~ItP!.*#LKxd@,;]Dd 0`?`R" {WtDIpQ(K<->o>hҵ{g4I:Ƈ0hEK HeX 9Ď@1M*}6(Nxqlj˹Ma$KEn\ĪŒ5"OV[qx?9 r<87aKtq߲ڞ8o2.j'N²Z! 0p[ތ%nW H9e2x[)G-Q9h  䌦eSzE Go^:NBrA](n-q3ƀ d 0Vۃu' e,tV짾6Ik1R?@N 3.,oqI@@=[G4T .9qTvv+]M9".Z\ǁ ٿ zui(G֣J VN;䊉#J ̓Q+Qvwۻ XAssF4+ŀ%唏E7ѐ5$HHp$.b@ұ;_){Vm ?,HePW9Z OBWڼOyl/;[+gVt\&(<0nqVv_EHaD?oX }At:ux +Y[ w {h yaТ߷oFb"$$߲:$19j*`""EԹq7-F x1)'iaFUԋ>wŁ2`{A}Fa gH$B.ֺNo>whvsr wi4NZ:[@֌Ѯ)+`iz~aq '5ar,z+x)`O]W 9ӍjltF=Ǔpƭp#Oܷz[ʠ}"4KǨn"Tï˩q)n=W %iuΎ|[U0Mwa_VE%[k*s . lݣ Yv̈́#/'IN g":n%m ~tBVV{j:2QTCsYm>uw j|b_YU <В]Zٸُ܃)82~ځuxMLLEӪaȍ\YfDqJDՃ _*h:$K ssYl0X|;̀RsT}o{[\k$,!8fwpjAIKAkp_X̹AZ9[60Oͱ]9w'V$6]FO uvWդ`DщRyN17 ;bV}(HO%mpO0:$7 L $:X5I`!= VTz*J5IPïCPnM r"ZRO%>#5RP6UMbb]R5 *QfѲFwė+bcoň<cO1X ?-a#Pȍыf,[+|.=L-%k Rf`c]lBKdAf?]p6U :^!vstͫϞ$]}Z6X_|URz΃Nf̓z٫9v T$5:&0dS5Vب$vF(܎ Cu]=z,YDcUeTGKUMDf{+sU3uK<ީ{3TJI{)C!tf(Zz&ǰKu*s*U65Y6t %r@S1.Z s7 AimqrۡC)A6Ϲ|LȂ;6ڝЂ/ŮښɭxkiQDw1,78&|Nr 6$C-0Q!,tYFfKĄdX68:-Yedlߵ(42d(S#K-F )qx\z.<t Rd<['cqDN N<{zŤ;{a SJygL6S{pvr=b&!ϑr(Ӟ?A~iT+Thm{zj[1}R#[92)=Y0 Uh*$d?X 8yj|[=ظk{a^EMjtކv4ulWH.]mF8R3K/4{r pSղax5 (y1RQ/֍}!K: Udm:kK cY1 MP8pe:$RZбpz{AJs?@d0Ny,`[2CT 0Z5C!Z'^g>s M=w;%m^fcw* _DSƺS% ([a; K熮K3X ~aH)Y`uT;o ]HwT(iP &XWt7K, E5!tG!7{ g<`E2VMm?[o-"NRPO' q~1O@TcM++>RY݌JCx[3CȅၣUY$lI<1©]͇0 W G=R.g;+2@ᠨV^voM6utQg|P7Dn=r^^ޝEJB/h;1v12O6wow -6LIE !i$(=q#NNOUI'ikcDIez) #ʧ` G2> %gό)qěi,sfBu~܍^(Yd3 0aNpqe"ۛFSsP;b!'Qcy8P 7d)=,h|T/kܤ3@P]7T/؇WOM0Qck%qP;((&bϏf86$3%j"ǡ.F 6 .h'wh0_dʈ n p&ڜpՊ5b@xY:(=K"R׀y3;pOw?lMO"ΞIS 0Dl0ɿ59?^q\'ϑyճYu~l<f:R#nߧ zP|aLBu|> #RI\=;cY/6%r`7`D$he9I3SXHG݅ n[k#, P&%KIu%^ck9 "m5B,߹Fr@t ֔Ր8Q}G, 0K6\6I]9-/UNg0 ^aRϑnxu2,#dsW vJKj}+&pSZ̊wNLؾ,dL +$BPIRYi}84AD7ٚ u(},X)xbWn?5N^5 @Yj2sebЁ968)# t~{n13g}=c7wAb)@o(`rM£ˠ6"\5񅍆1RkI[AnqJ|i*qMd;>}P"#6dY\ܕ(ZDPOUePO„&q.Y}S_q=+6O^@屲ppHD 㒾;zs8- ^թ&;PHfNO|m0y">1ߔdE#|<à KJ@kgօ8E-舅~jP}>´Pu%#@һ]|^zpH9< Uy[V b˵71e+5PxO FV>T# ׺LʕyS.tEa`Zǎ7r/ ;aDoz]?& ∺ Ēl캨~5 P F?Nȷ3E(WaO2O? 3:^_~XukRRoo&Ӻ&R+ v}YN*7U0rs/0^I/?+'mڤg+TT0m=.5,4hT5mV{_o6/bz0̥o[)[E+iH__{^jlIk5V <oFh'ín97@E {;I`PX\$~GSK/d%KnfH~h3: ,.I۪jZ$fШCK vs!IM]^eSV:J&ԅ*+xRTpɽ> Faұ9.#ʣj];#[Lۏ'ee&4+ f+@_Eid:yph,0K@#*|V=oZ(D}TMl,Q>&P$eC€>nM©u4Z*\XTȯ};)Sܾgj“͙ثcwSk#8IΙ[INtk)܇";}1RSM, &˚YF(,qY)i+ҏĹz&PtaM߫c+pqGBה B]I}gxb[p57Gk]qOlVF`1>SW  KkDQd q>F+R[#"a Zl뷳 b͉e5僳ޣڣp 3Eղ/HvVf[9M j]1 9(pdA?;PM3,4]n+G^ _ V{~ry9X}ˠm82ƃ˂ݑCɏEN/ U}w( -&nbGXKh GuqOm*kWM\'0Ɏ_pi^*]U0_CFqH$fm.yF8mom;,zXa;ףlhk‘qQWGd[#sj*ʹKq@lMsY!ٌp#M$!$2^>ïzkDt0iJ%OHWxO8.vxnvOf17֨nt']6zY3k 0SnzdsA3x 3 C#l}1Qm{ex>^Lzn7ay+[OxZ`Mdê>8Ed74k sCI%"Ob]ПH:O~=j t⨏86 Z3QCh~@@!\DvjئԿ>t[eA*ii"̝H)SjbyV?gF&=kQ`9d/E( 6Ss2Dw3ݩgr  |8 Q6u[V>>BmdaPDzlU7 nG8qKe5$2|U[;[D1lVE.L.FfШocHpD1QRJ}q``¸;$iSVM3"jh#mZ֥ێ[$,|+-xb 0M T'P&Uݧ: m9"^R7 `'cҙD:OҀmu-,t@~C)x6۾PY ~`FHfd{:Ι|s"8(G-S˅#oX ؀qnʮ]m!묘QjuFzFUZX$4hr+a5#zGDfl~Y\*],'%[m%YT!`ENjC}nu&1K'@nȞ4V?҈;*==^މ\N ;OFB`wAT.-ۓxڦw~)JPf4I" 씥x0q 95GMKcз]i#*EHM#g_mO$3X$Bd+Sw \/oPEkF.ĄzEo{>+NK2pgi@lViޘzI폅yBݨoC4 ʬnqp%ў{hGf_/nHNGY[#նU XḚ8!V^Koq!_;='Ao&" CMÓֹHaa)(U0>W/Y||ԁ'ف˞ C3^IN da&[}jh2j?dd7@d @> )'~I }P Mâ' ZH-Ǵ2N9!ЂlL˰7SڥY^pFvhH3N vboƔL؀$ts7IT)smiVlK8&1ߛ>::bH}6Jfoۃkl= ds3oUDִ9ոW4z(`fR=*3< ~`VT#rYۈA u5 I5z<3v&ScDPW4SˉRȁ%7EFW?1r *q(}NsP:&QJwSV>4 &deX]!4P&AOW"p2R|+)Ɛ̈́M*7`~7]a2PJI\Ɨ* yh8PӶq1)&7[$W8#, 9V"h!=$>Lsn) F%*ŒtgjnnKmc'?YsT\ArT Z@R &4hI碭tb(}8~ l<)kY~;1J%mQh2#=HqjW&K%B%\XTڂ+.Vχ s\YY5qގ3u}/x>"BY{%8!U|Te?rv k:tCgEjrlsnz@S˾h/[7s^weCVf= *p&Upl Pmsu*[Iɢ)rd= ifu -g!,5!|9(GRWՐѐ3 ]\#Ț;ހqCzG"^) U6$GS]0:]%j7~"<%1tN nLs[IJP7 m//wZQvs< hKm;Fb`=畅p5"h|<9R3e=r Ij!DРr^=1d54OOjjPm7L#'L]i:%lC05|4v:̖"=M" 0b*FϲtFٲSD 1ZkbcR8_X+~UuÎܭ#?qT|kxkeÍaCN9)8]<5BLv0W'CyA;F/$.JʔƿC+a i@|~Yg)#36'7q>pK:0ZpQ9Cݵ:*YxnuN_gg\LcYrEnI${Dp9cv-#̖x<_mHh JNCu\Ơ#r3& Re'l^o[kZRlAGbC#GGҨw2Psw{k; 36ŀʘw,' aFMn9}h T+#ͣrRl04꒜g 斘CUwSY)O `y/,oQ<3Ii=@E NN=b1g(|x=:eo n=-ѹp2t8\j6?K/}gB+8X3C] |U7-V \EAi1TTDJmZ#.$i՗}\6^4&Qz(HceJ[/VbrE۶cnB*~IHGFD2]^x 4qTګ'99 Jx#ջL?dur#LlWd8صysNa1Bup@Lݝ$V+-R>!gM#]KH7/V{Xn-h,{xk(<by!g:mXf$I]Pkwi΢F5k%~yY,pLmY2*~S?R/\eH0`Y'?gC^VO#3 {R^;6C'\w} e(T)*(Z^x0V:A_czyl,0)tG8wG~Vv vݟR3})Z w˯Xv!},YPp"mO!'TK'Ce_|@N5My NBxpr!nk+D=&"/F}}cE+Mϒ\nuSCHf? JGLk@nz:zyq4K? ނVp ƳZ 3;iHuMT*3IQRokcXR."KwbTIa͖≐ <A'x]+[rCus8TՍCy٬ u+ u{e(08"Z-ZST$6!/W1%+=_Pjt!Zp ;JFMIP{ I/^RDKۄx0v[;lzrMԘzd I#.U.@cXd|҉e}Q%1(^gM)# }0NKB~EhUs|/xDs|`b$re`ni2Tݬ{J!xC]@ą7o5&ރD6JQPUQzd*l9.'g[dBBcJ*:\ۿmb 7L滞ȍL$AJE{Bx1şBeuWҷ8˔NjR4 QD۸bKdxš3&ZzZ޷b80`_ ezc5cwiFkY;{=9b#%,A@9t:F\VX@]&D{c%7P?z-ߡ,&-3 Тq\;ÿfr{϶ Ȍ%N]VyaٿT$9Okg[L6ܘY:kdŐU;z̖IZ$mQ@g.[a:לデ[(D-h%0  ע'ӵjK-xe>bKI 01ymq;/4ѾϩۡlmV߇ } QߌˡFƞ ;sV9qO@ Z:zMO{#cE^ lfK檫.fE>zO3}XN}`џ2B{T Q`^LćoMg@A*N-^/7 b㐟Fh`o0I;-4CF*ɝ?ໝ0Sޗc %tZA2u 6g*@fͿD)`Sf7"kXO݃)HDu9i+0E6U\ 8/%Y#qw[̓9e>u?,Bl|)LaX9a?KGkvqZkGJK~m:UǛhT"рfbL2d6,[Ӝ W"Eea.>3sA ^ܚК *`φ2@2 OM(!7-:@h`̦ :u=3&XxH`";O [`_Xq2]za'ճӁ\ ZF^Go{]=!ǹ DI|~RgCdPR6UNe&OYw φZ;fHuSmPf<6?2-el2G{,7B"+VYO:Xyoϋ*} 5'ne#%?_ZCߛ0-[[RCUjJ@ѱve\c/ 6@=ŰZy2g09Dji<콕D5sڍʇ\j8OQCJ4|LZ3[ ꄸdD*\zKJ"ҹ)ktA(-bFcJK|SYb#Qh+1o,M:j$D:{ 4=!DHYOlӄ6|BοqIK,okSOYiriY`}ٛM|탒M-6DȞIR8'[T0õ$ӵ ^2~lU =8FUB{s`u_L!_^ C\>"3zn WqfY"bSsҖyG6Oɼ y( )f~T&D^WX.#P_hDլg{fL@cnOܟgjWy=};bј4OHzTa`_ aڸ^:igZL, ' 3MT/ c^_'Pu֏(e]_~z&u9!BaPoбb'h[=}+]31B(< &C.aq'RC ?j{{`#]**e-@z|Pvxn_D[[޺eA^x'U(\$=]ӛw#n8q[YE0a&n"( ,@N?PQ+#4y z*a<%3rVX]  Z[fۢջ%ڝ' W񸓹t ^!0Ms};e< Ljukm.& Vd-2Jmٶ#|c$X|I/iRxP_ 8 ,p8c. ՌTOFr#̞[:C|zp**LG{R{PǙ7ZD"9g8o?xB>v)~WaIu팅(d&R &n5tΗ+zJIK"A,mʰT3v7bEbDs654׆ 91z(\g1zJ'(:L^.Zᘫ3exEkYF{9e˧Źzʊp,gnEKo¥Jy]oyWAFfx] 1 |1Νp')dƮd.a`q.γlJ wTev8.<$AB׮dIAMRӘ0l>Kss=đv2p0OPy"N'D6Aސ03O 5c\m~>_[ёq7o%w ϗ`ϡh$A!wts͎a$12joǬ<=͚F&u;  %2nT˜~O+> @.'ujgM>{4d4襥z.?ȤPq9Zfa-\4&CDޭȢI⅑]"t5wx9Qk}r Tj8z2sTk\u*JS"-%|fmș0"{ ~9@Vٝ+ iba2W,8rymZX"Yə 8PM?A򢺯(=s^7]ťsSQ ;B#;$l TC !RMp9:3/;̵_)Pq mι6%CVaEA1 S&MjVIX?q )X\0eql%Αaк~SBdǹRo1~{$HZП4T*ˇpV /v*,[#)WCbPt ~5M7<||dTB ^s(Ar52a4wⓍ-p0z9:Ye!yZ^[,zf,[KU?7n;ey@DYu䏨9:aI529 cǕ`C"v?6Hz19U4Z͊!D,+^Xt[njVcBDUS\1CiɂG%>@[ ¢ͮ ^GYmsSPQO"[`*5,]+7@n,֫ˋ oXɒK(UעЅg2^?-z@АvgcΊyYRX-~^,;Fsjʌ cv|&Lc\Axjy ɵks($&fy/P!q~.h%3Geš7 ru#,JB9:qG/و#F7fHc!`JC#q3̌P@uhwۘ*t Eo{_FQ>6!*KmNVcP ɥNcV5fNJ,`䜰>{+b#~ȿ㱼mSvI1HŮpۘIFbҝE +TROFteg{Mr)=kb)MUbmv/YZ'#g]e4nSA-Hn0ÀbGA1{XN|]9 +2uZ[/{wwp4qAAiDh',llGbϲv7 ~M16u\r`s6 xZayK]DA&nF P3uW .f#rWYȆɘbvW ? **:Z/ ѫnBκ48^ =#SKE  QB/Vp:{>2 >[!`u8u9[{ ԇ.&Kƀ5ytZ+ߪq`ij~ᆒVhs?._8$|E)Ms= _c|z1\ z~R[ <(\1%zl[\By>bHkDv0\P/n1ʆʊӊkN5e:1C&=]UT3/xG )Q'h#H#ꟙl~p>/ PzrSחu@:+:ҥyLGs:bb;]9]!bdxG p/k^w=b)%k&\dtMUq^@z927A? a`.H\[?좵Õ.8`[`^z:V\k%RA#KfljÓ͑1`3gjNbyPg&=Tnl%sD%Cf _Tęg( 悗?4@y ?oÊ:@Jv@)cZP%+jsI*e=Oʭi ITSIX,CHzq4'zR4.xO NY xj?y$RvŜ! oO)k@a̟gYNC_AĠֆs-|^SB*IXJvWhA?\cҼӰj Y}kMDo~ʴI= WFY;HWidH)eѠXAJX*PjAv %3.GZJ0}ïB>^|Rs\z5J/Mt 3!L >JZ6da M_xx4d1L8T{gѓ*QJ7B 4ܗhCځƃL8:ΥN_iݷ\jr+Lf*?DDtVm5"kb{5t#aI5W>yzr{p% gabrV RfCU\*ȷ?edK%V_)`~CHWq Iɡ_G`_~tM٣齜[!rP.oQ(Rg[y>Gu I$ `i4PS ",Ҡ疃࿀!akc]AǶp<^Qބ_tKW?.<]XƜy@cYR还 +\-symUSTt?{F_7T,ag{cˈS+#(U*n挡 ŘvfΌI!iWYDE(,'"xcXkAiV\zD `X?aSRZ{DRj;+J< q>;K Ƴ8 h8wb=vkjÊ<I8:qODgvWcIg]! "%َ ?'L_ZCîBgr9s=O:_:-y޴4+pQδ%) o#[N* hRZfIhI^a =95Z/}[^ȢϿӎ^DO0f8zvYZ^A (v= RqY*i]j:~G>S; &듭re0^bdhuDNJ`o>K;XDAK[)J5U&kSϧp91oD# cRaWy+d#XL{ׅـVA(<} r fǠx@$@ODV"T: Gz\A/,~7 gP4VАV Ī3wz\=DU^#,W7 U*Qb+s궞;k#Ӽ8(B]AnPH*Pۀ^'r9qEdzC@dL˻¤4gr3:pFW$Px! V˕2ekxH:3-W\s#7V#GA GW-΍rW_<|/MG_09 ԋD4Fx/0/P]ؒL u"&wLXH`DSrZ`ǝ= U~Bۨ ^ۥcX2m)~3ELG7$vF,?*jxCIܯN\ݠ$ZJn\o+ V$k @)U6pZTS]dFQ" uUyW"nHиt3 ɠ7 Vgs b6)d1~Jՙ!._T?CvgTo_6.h1R15F޹@I׹6 EY(V| ҕ޴r< p:ƓRVrV!AkMGO=z(= dVmQ_UqlӝN ukN.4reErk Sr-;o?XyP|~4/;y6{_ &}g(Eio+b]D1I K0H$~xSgi~x5z=S@@pArq--FC=Kԛ ,n=̤urxM?PPFlNoӱ2]"ɮvI`Љ8L#lC@fsҺhWi^D >m:Yce"dMimnڄb9MW7*0bCgk/nҐ[) cM+&QyNJLh_bUXiK١/#&;fq ̐@z`p/_/OD+&Go[@qg !i p#UmM3d[!5Ւ@Җ.A9d/yڭ΄ FhQbbݞX"& H Uc @ ^[.0HL=NVqYZci@74^!ӊ_p0Z< [4>5FĽVɮc]h.7RD`1-+G kzbm^0j 6r#A<߻hj紌m,ȩP9;uO pxxcbfVSH'jE^e0o_p,DyiQQo|{AJgj&@gqui 9pngUV"1NMR7ȅ_c#Opq$NUO?i}d$fm0wd@fp%yW]fhWo _G{Z1tG qI8W[L"Ob&݃ #vՆ;ŋEྛ B~LEN sBV;TĤ%jXO\tARzC8(ba&ofeyfJc|UY8s|dմhVH  }"Wdg|e=Xӟk)r 64 >o ] "3!B$MxV]ANvUt'ޒB9c TüvSֿ"&5z'tAfo]WVZrWrarlj r64!kVkvԦ`(WZJsZ7H,@#5.f`}߉ gr0g4t)ؠ9&o9熤z;f|~\87.Y@\]&@,HE'++o:>XVV~7Q"wT!]ѯc"6 Egp o~Ih5x>4焙s3xƲwCS3Bxǁ\C]]$q^C, 3F_9OGj t P&oVQ#hkͻnjy-u7IS@[ۂQtNy&q!Wd.v bㇺ@ dCr(JyXHP= m0 w{^J 2,#dx_Hxp?ivXS[~v2g?49|F|ji?a+=`S4- V''hӊ27WMmOQ!%4ݙErA\N1a*2m w_?o.k!P0/ [idtv! vEO &J>$ۏj:,9<˹60n*9 ̴)=:ךT8o\*J˕C.owo*tˉɥx{h_Ջ ӗv[H;(l+iwE@Ykd IV6ъXԠT ҌЮ%82Kʼnwpv]tCKdO|gh^D%ゥYu'e(}&(3~\..XPNK@jιkGOI Ϯ,ؤS ~^Q"_D‚eBlݣ#Wld`sݶk4)|4MUd9.j4j9#dr@ԁyq9z:=ޞ!הbYYxl]cf{D\׺6j"94j2q}Omw@iqKhj^_6)q0$D`A'[Ҝ':,_k$ d-cť KT0P $+!b2YGx4chœ&›33mlqzت/M%z+BKTj`Ф0y/$.3 `kDݰ$Pg XLYua`{o7wNAvyo,F $`!""P^V 9w@/mq_QͧiɁa1;P_ dߕ'@Tm>LCzfyj"֠/l۸ӳ"W"5MHDZZe<(ܵd:dZ~<~iz^Z.*FWL4ȏ[qE mj}Öo:<oȴ޸=.>0I:}'+]Kz(W/PcL " #*?)2q*O;rE)DS`#,~{M!i~Z i?Cƪ!Y4YPjjG&8Q~B+GjK7).-3?kY' a-jq`}S=>4WxhȖF~3W90oucrYܪ*XPk3'ji5'~ZjdDw4 Y]7 [++gJfJI#EۇԒ l0cݎ@7ݹ=H,Gגc~2z! "E>LjDQ7nh}g gj&M&# O4'$ZMIZnLn]S2Տ߿'?*,|$$~A#꜠ax؜'Z׃Ys?Qe#m0NV%uWWX9M;`euU?ey3IznRD\lQNiڎ'<,qTУ4f呅bbB+;l\W1x1"CoX_[2b'㳭!VE:nʉǑQ!ok-C1d S S0knF7eo||u9ۿf}Ԧ{O^y' ] clw#@㕸Șj !$]E݈by뛿}i>CQ7'6[p=vu^'j+y* =j4q'Ⱦqa҄(orY $Qyk%9<ѭɵWXu=f[4D%T4[h*Iy`<mwdl9}KW6/71Ev?t7G 32@JBIR@mq5;lW.ڒkY FHYRJXuqǡhtmen\tWP^&Fݫ8P$M5iDwQ!-@faڍ -ģbqy9c2xKp,)F*m=/a7ȦÝCp0e9 $ni >1:hľP]_CF\疬b˖ЭCTnwn0&-dd-_{0F8nb!ܺ_vixi2b-ljB늖ODkw%BȭXlDĒ«ZZ3K|Mo"SoYg\ ة|0j#瑾a8:mh(siMpXv 3Daw*y;4*JIK$Ҏgx:3hZ^?1n$ 'Ga7Ii >Jb 'auqaĕ7̬%"^.ojN {TǷj+>KQZY0pOh- V}HLd[AS j lw;P'ۡ=C NI` 'w9QЯe0(NF߬Wy?\)ovX30L~*X4 Nb cS{o.s b(d*Je-56e؝wi!' jU E}U@R0QV yy>&]9"hpYV%¶) hig!xIɊp|-6,ZEbj/G=A8R,"o ;C\(~.RӟI\ZHM6;$<pe"џw(3Vt½+خHdRS}d]a2;2}J]$Z ?㾺*_؉x}{bXddrs]eSE%¯!/ $˗ kAY0A..퐱U!FQ,Ն HHu9_йv;W"֊sЁ=v-Ǣ'鮍mH}V=N} P"Q?5K)E>KO%Cr:RL] b>O؜F f7=xl\\2b;>+^|-*$bh5z X>g)B#*9+3O`(пH!lf? };Gq;9~#=qgk8}02<@ȝF37ѨߗgRq&e"æKơZѿi8[ (=o@ǙH_*x֖vwpQov0pe@w0-L@Z3L!8CEq 즣>[[GiBcp')=(۽q/B_d6א+cոK=YIԓ7rpX#ۼ?J4w^Jj춭f|P{FIob#,?^"TxKwLa^ZR 4rhйshy=׾yn*#?ZM?`G"qemܩ)XK>zfpߨ*\C U bOx#jx:$ir}!K'#gAiz{J:Im,KC# 1 ^@췖U#`^ܛ}Jq#YfWQl\_&H \1rMC~)zF:ӥet7a2~>I ^EX\:5ҊA6Yq4=֋X2 B;_`5Ϙer/-jA5vX2q~ޏ>A){|zp|3w@,Qvib&Ni 6 DA㺚D-+)'Xֳ~u{4rk$ƏQ6FWK'<5d fp 7Qo֏:Km)T$Uh] 6F==!`R<.,Ņ>!q/KhEa/- yS Qqo{&sѮT5#]Y'~UEˬ. [n3}҃\&b0 _,&0n0Є"H<.wKZwiR <2=ip6x~lNxhRG%{ݝ  ;,N yأ (fٳ`$%)d'xS>'$|\{{oo[=ʹ}qt[^Nu `)PYl?bZ/IqY;[\ d3ҟ4]6ʽx9QNnEKr#?^+BD+4z61Tl(&`#e< wn;E^%Thw![Rx}"9+!Vv>5k_8?:wCG(?00e;y;*ֹQn3_,kx)9G,I ڑ٢[*'(0k Kּģaܖ^T)'3l~+^7E2~-Q(RqΘ,'N2E+H[S:4<˵]M}tl26Z'Ì[ޚ;Lv=|͝ȰV$\H4nx>'DӜ稘lO-$M tz!qPqWokC.Yg kq<ROZF>@l$1Ey["M5||z27Boyբ{?NIkl Ԏ|yGfI3vrjy؉(E|YTԧu. NL*&ouLp$X<|{X`zJ߽{_}By'IXaFfhdTSOn!_:L? T%RE$,![t HҮ^\y=2;Bc_ΣY<_z(S^x\)D.TGjhޥUm%( {fi癧Q2$(P {wK3AӰA"vK-y#VKXFd2="1$W95Z&UO6lotr{l`&f?-fߍ̘rpb/s=rH=l>BNcyKJdiwmK›}M8z6#RAyUTe`\XPj붕B,pHe,9t?D$, aq[whD23mC+J9PؐA#GCZZ;PKgE:pc:qg~vw"D[!}KA(IpۚJRTZCUm ! ( _9 sn:F-)2kn%okmZz:FN>xs\2NM[nQώhUu]DAz^E>8I_JA )`6fNLn)t,P ^%.QG9Skrqϼ&! *j +FHFk̍ь jUpL=;vˍm c~O:-pxA;> Vw+F tBLX[iSZ>^)́y_.vnnu3 S$\_K)4( {"W4cA[fJ{jXnt-MҜ[tWRkD$li51s?ő&&F1v8A_3H6c=TpG \=A { e]ⅉOzUeXLs7:m`n"%o9pDٸ/*,^ 5Ey5%G~0}X?NC^lqy ڜ:5]񭮆/saN{n:@c1 FCL%Mhl)+Mlnt|̓Oi}zY9r]RB\.|!~r/L;١čɦWg͙ [V`rj.E' 0cN_ו6UGOpLGp@-qmfzlR x\Ζa1ƓꩫZvح{Q GjKRC+]b~rv4<6z@*_2CmU7#4OcShJŚ ·\8 $ٻ>OXAv3Y݃k,ء[%JG  "I(\tpd}_S2Q1S.ryeķ^hlςZlEݰw4)a7uePL5I󲇹^WoYGEE;+N+5E#tdL8ACAHn2t͒F4av`8tGd$ Ԁ[‚4"3Uϟ0-(ָZG͂L>16믗ʇIJkS*k2Sh7eogWL6)ٮJrǯ -AmE#8M4'xhtD}oz'dnx7dckʘV+f8=QjօFaӲȷaʳ4 $T)$P?]3M][#fhqh=Wbɒlp4Cyz>\Y^fVF- ,B~PZpEp1پkg/@9Ḇ!XWK˩sRNo!( ZU8 g}YC?DBWCP{W:D76`htP/H AB}DNLxB:X-u86 /p=^sұS}!Wr0zGs.-,&[ xDG*n`h;6d:ZqNg>-l )`M,3n4I^v`Z(J[& ?ݶP^8ؾh^.pZAm6܈gR*5",WifH&Z@ QWhxk:4fe L,Dxү(~8ǷXʤJYa&M |xg jp; K@=PG3C= }\5$nۭ10sSGOA"[qh/_dW,{5Us.rd2k>19/\z>~Ylfe-hzׇ䒭)sF] 8 bjv) c֍uab'>͙&L'g岄8I(ХK: p tgo餁a$;/|_Юc޲kdh}01a`%:G]dyvx M.fW$%a:ס3K ෮a":k.wLq#7F))k:͢P!#WY8[v|R6\N)b/+݉ 76W#\StơX2aJT~ؤK7{H&s~=I213F$.l^XNUDt O\MM̤\,tn>дJVt(+3 6o|2&>/{hˊꉿcQJ>] TybZڽS>jPS΂{ Iwt»v: c.G56!5Th8rtX&)EzjQ4n+j-:;L[t7O5 qaLH E*)[kU'np3@JkD8S, &2h:[1ۈB?7_.&I3.Xxz+KUxo l!t M3| PB]^ ʯ8mAcx!`aE`5'XI9q=8bq~_N-t%ނ4#P|_GG*q^ h񷐀]cqx @lcB j:&9R s"19UhTbv9"]hjSiWSY&Z1u ܟ. FF\["w`N(_$6_M*"%/ՍJ@v(_Ɉ@݉LJedYBDEg | e 8.k𔭂^&u5AV5吖(C~=MjŁDf`RY W5ydi|K&@ $w *A v= YbA۸*d `C3X7zl=Rt8BA;fBZg+!'kR@++\dR-F/$͛0^y;y#iKjX.;F8rx 6닜VMDbe4ߺx\3EB860t[$5;YTHģ{8_y{Pƒ 0>3#q1lHswlC`NH.UZBA=!]jҝm]Il I[^$Kn̡,&/o!CHRG' "'D}s@MM'GkpT6aIk %_\RBmO'~w/yt$ /uq 2%7kѦNrߘR+f :)̱/H3yD")hyYjGsxA11vBomy4_* $dHеpi`qTT\Fm%en#Oܹ$Id J\vF }2}A?W͇gWdv0ZKo3TO%δvXw@߬2[b!e;{i쯚쎔\RYxƱxf!3eލUzDVI̚x225)B.t/i:1+(;jmCg|$E*$2׸-_|=\n0  5xԱ:?N[.cƒ5l5nKL/* /Ls<14PwWPG0+#DINWnEۆn>IJzIʑk3[xد_R6_>8‡NF*H2(`y;*䢓hc8ߴU 0,u@F8pAMF3{B2VI򋘅" kTFADt!uQCR`imB ŶB; Kt٦<ۙCaS [lLr˯}{qEʦ\]@ICGjxמ+7HVzP a91Z7ko!UB#KܧuWԈ|1 eH|PcTUM6̵B& _0DbiA(a |\o֢.'.VYY1G5L ޱ^ʼn/DW. =,Dj} 3HVN5b>X!-٬!9ih^'f0.T*M ̿:>u\b.e7|Ly=jam;0,\sC< #]fbNRB2Ց7IbJ_ U>b{}V>ժuMI |0&!vHȌS$U~N݂^ˠm5pĕASO2ɨ1%DF_(W?suTߚQ|(d!6m>CKpzNwzeӞaN~O2 AyٱNd?GK׾i^5[CWܬ=4c:cj2+sh?[@V\)d$A33$ YW`,sV(~ R7aXn+t tמ?&ӦRx> p<(R3BSP[x&[zY{|34C(޲شpj1AjكZWJܶ.#U.n,lj&`^)/Bs -^(pmI+IEdm89;\o\|{ylFT"v9n_:,Ƅ} E]aoB6oۅ%˰i(6[w?"lX6aص>վqÄ/|>#`huW&(EaEz7B!<],f[ܤ%Sh.^ĺZD> d@B>: jŇh`9(`D/&z.l(]N:ƋYng&IuF\锕\*/A; מ1&t8Ey3Ywı0Y(~|/ !Ʋ1֊2~nn`{+_p<Z,S~e2ˆ)"iB?r 'ZyfvD{?xnUƔ 徚l51z _R̉.^r{"NԔVpaّS3t_oE Kp`>n91+i]ϕV̎ E^( ӴL+TS;6kPV-m]"$:{ by"*ij=V?7zJ\ O{ LVP@)JeNlT>L ֞r_Lr[qM|fU(>zȅz5$ &@ 4GՕGqE3iD?ڀSiGm{& 4qh(Ș*V[.ۖ\i.^ sMjl%ӚbQAyz);"c~眾,T eĎPo]E/S|VWXSr r6سdG\"lrL\rɆqj5#Ue6O\bۄe}Y+Ny#Aul% ʒ~ /D2|]f8)qn{}+H5Ŵ6|pw ܟCvy6 9Frus65EekmB`au:mFX SIvT42$+zS^]z @t? LP2qIE&d|xvIsIZ"S=3H+%YIMUoGl__]{&cr#x4 8 HBhQ ʟ ,%W?%{xFp}!(tjPwj?Y}IFu]^ݔ1=BI !·MCFJstZDZJ@C2W/uf'vYsAG *1 Xƪ QpWqTТ`)F'gjIɭ\H="70pըdA*hzU!Ql(3f({:Re P6ڨob냦=Of^oWk$h[TPo8 DP7E~vSX$a7G[@qRY_Kl'}]BP,5BZr܏QƷXETGJ1F:Q\F4.n4:65kxu7F.cXI5&gs5Ek[H_LDx@Lmq?=,y##ͤ0~,1S h |`ECnCMixOg DW!i;ԚJć5MR1H$ʅɝ_'oEaoy`bEj=0_tf?T0,^l*slqBTPtzb@P8eC~L%&df``;[҂|Ż4(!W,(ao-q8O7dO׿WM"0Hrȁ${Ηw+-8,1u&&h%GeEꥌIj2}pƠJ[3BKԠ@|zYBZ7@icco[g9ev#kE8s b5irXgTqΊ]̑K.yN1g$nw^yA p R,e/l=RQPRyjW.nrUat1Đz,[̃Qcr~pG0^^D֚m!r:xUNIt{6 @/R6m\{0܌ ug;:⯳L@[~Pf\ _ GA tv߁ɔuɜI &NB"I]wݽbH+ݽ;gW4ٰsI19G fIk5Go]p}64w@1|,g֪C*Fn\7')N+\?Zu΃,ܯۆU'=ݶƶc#dm==NuEi`[5*LXV@c ucՁW2%5f߯{~! {aԱ2e.W_a?Y%m kFd>6oPP7k,6�O-͢)ėG!H`EdڨKrUs% W_%Zd"Ň/o('/ڡopARl Ӈ\i@{כeT˳  ,1\ڕze!K!ޱl+=.onP)E5705d`Bh$^!_ P9U% }=f:"~Dow&bb_F-eR:얨R._QqT_qRD7Rs崤wM1͗ ygy|+b9i^S\c%|36Lii?zaER)2|0]h]!mv$˱8 x3A$zw=42+p%QiPf2xzJE+ zq$U)wcdCpqT)nzqi|Ҁ뭺km]28(K-bA[RvaG .jAoCugt*W/OJ:HI1Pҭ#41]|VKIv1QkwhqMwUPSUsbQDeeDmls~6+*&;5Nb+8 3hCvaȉ X4EKo>4-zi I_<BI0P`C%S5թ;@@ip i3B/푅#u7n|9W`W݇n$bwk#\ r[8aA\+RDM{h.%쎉F)" u֒輽ߓ0~|CGtY,N!Lb^TV!& )Ll9wa 5!: 9 2_]MVsfdlV|vF^sО^0-n,OȷXݚ|t||f]} kwDwpf|-Wb+ȘC^9k4v' i;z/{}x>&S1RHm@.UF-`U_WOH2zf8Sڜ &R ,e*x\7SFR5)vg5U4j1XI]@z\ᆭ~:3BʼԞrнl/$7`,*19bHaR2&l˻bձ\gߊSZ6 AIke "ꚩ׃?vObɇMeY>2GE;k&o} 幹E8`K.nS/P' agK|:(3ymzi.*)J61^$Jt1I1_=c;-|S[|sWXꕑx䆷 a@lVMGCz=> QMYZwuHZ!A݆T\aQ~-d5.1BD -}|ޛ` .qqv޶Rdw*j[s}$nH/9 xo 8ӡc+NvNܫ"\hίI Sbhtz@‘BrF}R> Uy #Fݡf'NGF5NnESGJ=GДb{{ef6`5l]qھ^MiƸD!F&hL-Z(}}xACX kq{"w/TN;siֲl)Bk$Z6ihkVc1mBf4]9 mlO $K#0QGˈ&j VnP1気"Di.Ik2S:tO) FZ0¦V.TQҒk3@j4P0{(  z|Kk68iW~bdwrp.-%T6O4D"4tYc*jsPOl)bpA_.E3%c ~M2:,X"ЌdN*=>Ht9^!kMKZԪ,b[\28YF} {2Jx:N~c˳.<"L*2)\zA=l +ͣ{4L/D˕oޚQPox/Ikw jR{; 'R8&B}2 @KQ CRM@()p Xz8'QSٿ6 w^o_XviAt^ LNZ546v.$b`L2WlbAf:;@w[&t/<XsxoҬ$]>4R|KAl0'!={ιa,DmU[#4M۹TU2fQK?b}7VLu߃t>GRHpɗ[ 97T s[_^25UFm2`0oVXd3 :rzRjʡe#C*3 5~2A:>> n0~ȉM>ޛ>TNryOUS)I^ܓL RݚOK;hh:h\sXW>v9"VY:>̅,SB"/ȿtwtӍCt,qsța7߂qDGE}+&uVW܅ [A>f8%֟Z5_͇U =[(_Uk:Hm08G2^)%̘ uH_fM…Mӑ*ׯR Bq e$AϸȽDɐ.hު>e]!GuEXTWFOOwdwvV>z B7踺,$O bN|vᅯ-x0:nTN3 dF5bVsόN 7b'iWW+D5Bi cHpAs4?CM:L[ " F+`GvtY;-g ςlA`;~o2EeE>c#[ F2o/:I#4_Iix $!}tw!wh ky۾`h١/eNq.i X hM`b b$hDu(dK*reGb)s YWQ4F90Z_.ajMMAkGY#Ղ{ ؔ0ӵ|F {U[Վ o8qhz(ޑ).,hTxl.|Jn%܀J{i914%YKy8ef[Kf@N2by8é̆e1Z+{ Yq}~ʓFmo|AHZk[apVL*F2ZߣscC.'"AZ)3Jm],"tN*`dh. (73+P><42^܊QA݋+ӹ FC,7d`gv#AZv7gb$$ fLbQ$ 11FS egqӖ)?9f5VF5ahiH^Tޙ|,!&Arlj-\+c[?m<.<'6P%hH $^~pd&ϫï5FhSKela>x94سR^sxAjz^ 5$]O9j.dI %u0⌚O'8l] 4|,$ʯ~㹟SP㢼bpUsic[Eef*Xΰ. ź6eW*䞚VD!6~aU7Cfu }M5*f[jalV1HT]E 1sj:| d;8#LSiX~9FUVg(츒uM]$~vxsjF|b#q,Ek:U`~z< ^2N3x~ QSM-KUE#]EXeZnRQ61:Vo5u޶+,Zr\=,]xI${|ڍ0dzrCX.5-'*̕q»Ħ^oe:~Wp@;M;89CMhCq`#-C;sBv^nbk6f (iyVtS`Lي(tQKj(Cy*\J.@RSLrNꖗrgE}0#KoZ(aمɬ71WJoDMdg+WH l%^ JLƳBEc>3t"ʕXQQ>VJ?AŤ m¶J_|I%w-gyXY9}ŮJW? BL &6m؅B5^v誃Ҧ}P? 'R(kPl@|֯IVЋ"),0qv(pʿFh>?s}7B#o<CiX,^x/+-47 Z|c71AkrQ8#NSR2Ji( @G&hhCx}?S^VB_" ~zLliYyfEᑹTx]* _B XokKݽָ?Vꇛ.6M4Z>&-6zWf ٢Wc{% &wM1"UCbw4GOF*j51$3RktaHc:.¨&n!cCnj%)ڛ/)VL5='cl=գl8O'>R }uǥ6.!/Z ߾~r[KP@Ounf Yn] PӮஶ(ݽj؈k qjNa`9oռ7+O%ӵo?5o|]t3)/S"/> ARPlK/vl"/ Cߜc2w[PqBP挻VgP;f745SE[8 ٺ\U`]C`uM=B ˼.KvR"pS6C({} H+Ɩ"Zy?QdAOߜW[.xG9h'Yqv}ʁOVbY@mo|oD*!B"CV^Mh)ţ:NŰ=Wozk "IezS}m(VR~[w{{ {n毓hݙ_i\b#o5qaq~) ^V ;МQ?yhQ+C#Pt˪qsJA;?Ծd$ۦ':, 8 [pPO_4-.6$SCLMh@JwEE)sK-"ef/T KKdb_55Eωf6"ᕡrY7M$:A ,NA}aO;mۉՂkWɞ ӌeD>98-UQL5js>sy @$o6f^QNY]~J/Jfk=?jKٞI\Djw0$80媆n\S2U NU#5:@0%gMelk@mz7,<n29qrKh]uMؾI7&I%\9y]3RLG0H]F2(,%:FAi^3 [U1w>$KS 㬤\a2%xw-I{̘dJ$؞/bXĞe<ك'4:5f7`:=bزp"ICVܑe#r wm bA69PANr)%9& ĝX9P=40Wd,O;3Jl 1>+SRqȩ(6 k~@w>et6pPhbO'A@>pNd*xm2!4R Pi)ayG(VddG`|#)楡&% E;=€?WSXˠ@3}}b?q.*8RASB2;Suc՟,\#Z2Ll̙pk7Vl@|;EMCյ{c<(WVƠ}nM,28.tKVdjZz X\-I+\ =UW"crۡorkM&HS@wb{̈́ZIoN%Rr %_.]EPk렓U0ƙ_!3=I=~Ո/FI~DitG|U,DN>ejP1c^M&2jBCD$ zw,7kiNT6]-7V{[%DKue"6.+iCeqį S&Ov:O*bzkW2%=ch_+qrqԷQn!]֡=1= {KC`NY;a8DJ*IvڡSkN755Pk_jD CIY4Y|aԸA$k[4)t.}=-6Mh)NWw i_Fnyx,ɱIwObAYv9ѳΙH4!Q[4RdT_=0`^/_I)4Z/A*sa+aUN6#$Hh}#Zd=$A=' ׽4{!-X)*e"jEmlBs@ ` zvUY(0X ;4Rϙ%h= X]-*J=i&cd@L֦4騚&n2hFm эNR+,m06wr'AyW,0G~fzfZ3Rڣr4= yAoCK)-b@L5W~sNij aq>-(Rlp$򨵊gvX\оy9 X(`gA(K+~Q8Ȟ S˕tvK :Cb6h9ie0?{pM'Rפr?+[cÙ;c˧(&ʄ ٶ5]M*Lzy k)F56ql+b0hu렑ɳ7L^d}:I G6`!`~6ދ ^51`$hʾK|=UrjAOKfXKzx<_/ tK<x ݜ TK;,e _V1RJ?t_V`Ӳz?@p E;^F,qWNPaևυr6I/:l:S55xoI^C/?zVk '-&v(T!w(Kw,̎>ũtqYAJq !h"* 1!-9K?O>ՓLV}4C$)b.(p\ՠbIvΖ|]*N6.*("4f9ExߗSj`k[V zo92wd~AJNKN8r| ɀ}%Hj&=lPrc'W~{mIjք9IuzPI.BUA+쑲p)+Rnq;[IH2׸ٛ\H%?*ul2e DU`a'%ɤXзָeH N!Pڂ#on}sr̀P86&QY}#ſ7hqt+H?9Qf,QQ|UQ1wx@*H@pT\AԀmcR)#TmGU_tt8Q Pg4w[n5jRXFR;QV)bOHOBCTIւ)UMLЗ7q9A阿Eihkod`b}Fj%P' ~t>Pٽ2缾<`=3:ʹtl}ZCaaIdK=[MG"*>#نFM/@^p#܈DRB TH{{]AtME`A>mbz:qz.wf6i)dr"G B3U!NVJ+4Cm=Z}K>M-A)Ͻ;P8߸ge_judei1ƅ>-uo|Z| VwoN0Sܐ!w 2軾:Nq}Dt ![8Xb}aT1RmEǺC2(W<|ڌ,٫qT|[0_%ƕga(=: ;x>_):)ˣ\0Ss;琔\+'tR#\FSbiO?`<#Zw|:XFVf F{+'QCRT*Z`9QjbnӓgHLM#W /Mh=V8vwb{y܍GyPnXt1hHW"Fz=jQXI'}!/98ˊN{]h 7Pd&x>Q"V~¹rS줏G9G;+ka_ h18.T(+-սB L:/] oǫ kUpnѭ#O4? VNf&O\Q):E~/WG-sQf)ElzwW*!l׌,)%HwF+d%ɚV1Ie8QthvT: 6B\荳o&j$'Lne>4NLRC>-0`iz/6_w$RLTb48Tʗ}`iɆ;~U݌k:XB` X_vIu>\v*e;pu"ҚZ^iCrÝY~ &\|{PYxH*:%1wmf? Qx&|±J=>+xc)dedJ,i{PO',8,E'pwT3*J+p8MK0)#E6EFhW AÛ y$;{x~L~,KԻ fFaeF1`@}q]D0>,O@籅I9eڕ= `Y%87 57a'A{ޱNdU<<#"kGTʀ$"%g=K7b%zAn0v>J7c;1T:dÂ郵oX4jC|fW.Bw% 7dZ'%|y)s{+*N+P=ʼn\쩪$xj;L!d:VCJdk-E루x.ӻö́Rמf,}*F}e5J$t[]HOuD@dε/bNnXDx{7qp}[Oe \p5 m鮗01uYDG'陦f/b'-:N^ (m?{oCjA>ﯽ,Oqz{![>,Bу7'SK)>"_ ff[ZT:M?n.X=` jؖ%s=4 ^q& _ٺc ir~kЌDW+sT>]MAϷaAπqJȵ8-vs=o'5h ]QMr8F&60ŒW*S$ZT!k,!}'|i"&.0K$݉܏Qs9݇B]K5z*CؖG,ˌc xcZAK2Pt0|8|Ԯb~_ڄud? מk,7o8M e,}=@;_gŹ("P#~7,Ă;hBD+b+4;0eD^tHd|BA[C-#6 †mjoHMh6 i@{uʗaJV4ĹB9m`eMOeDhە )7pFSFΒպqvͽ%*y]х]<*WKe5/$d -@cÊwL(-K32jνF Aɯ&0Pr5#x==Pܠ3L|h|}n&+5fz<ٿ,#D^x]qg HnV$^j|;S갵W \in,C 99dLf^PÕ[%X (oqIJ`TCkٕQoH#hA} К>MEz$c2Q1Z+\#^g$3`r9ӋgH 荅w@fQW׮O\5Uay%E'nizALZ%c)T 3Y1NХٌVQ! k)_A)w[,]9BIwOfqb`=]gwŏG=.|plK.l2 otz碊#Y8`zB z&2[UZMI~m~tEy6ɏfX#1o'F<)v-|V_\\`~u%´(bJȉbeqdSNN /e&f gJPa4iڳ+FM$SGZ ?8*SAy{dJ,0q׸8N<54UOWDx2[ӭ|J3]]B7~>ɴ> HMˠ^4-lIXt#)!l|/XS6T_(Y俷'{:&̻i!W]s n@&RmY$v_xj@טGCϤǿ%! эtQp֙wL9!\{a(u9kdZuuAԪͻb &m&Ķ^^2SPr j$:{>ӵ c U;ӤmiC4YCk]NNmz Q`.Jd/b GK<'wY<ĝAǚ)8GCz]noerK!0q*Ҏ?j@zPz$cܔ4U,JGzz/J8QlxmmďD& UV&])̵-%h)1fuzS ڄ? Ǝ]ZYSQo] [`џyZX^8)9UmqʃBˢ qp^л"V,YfJ۠>"Ap3W2I-Ed3b@i3 w֞jmdG0AKr2#54fp60g_jT@PQ>jxyד'mWLAȗ/&Lu/UF!U*Ȁ+=YW!j%M#7% h8?DJFqZkmڇ@¯܅胿⵱ ɤXA.h 4BkB0PsgAO3:Z ?߮gtM+CjiPC# Ϡ:8bVqB;7 ~!{P-̳umXKʵcB4z28ʢ={zj,zɭMx|L_"e9w30 8XAS:XfFx)h5Z܎r(}6a)W57 CoruT+yv|iX4%]^C,T#舵{YV ޠmo7 yvǖ/} -hWE @%mR V*ZQ*GvJ?[oM<83ʈ^6/gF_xDE HiVgUD<f2C 4^~d1a=tsdxatPIoƒǜWaWJBybjfHD1*|DKƮ9Q,-A QV2Bt| A@Wk]/O!DΏD梁 t Pf)E= Uh;}lcd}> &P*Ű mNKR1B*J-h&&yEdI qBm\hz2n% h}Ӷn]W)d82(TSR,>+Gebx POyŴX (ttPxZ+4X6 n%s)*f:LJ(R>~pL;:wđI@F]4;ڐN,\_(ED$BrFShJɌښ+G xc$\U!;_#AjDKHU[đ[O)YŔ8 IWHI5<3z#䞿H5b 1T0g`U(,t)E~3 b3Gfj3!XBlm=褄!f9nmf>$ykEL ϶ Pf+?FarqxHzڣIYfC>.{'%NҶ'#@q q*w^&zhDDqㄉ hMnp#}҅ fElvg,`qq+raYXXTPqfy+8<Ꞧt8 b4Uv9P͌P>OB!ihMҧ)/5T9d@Uu!;=n)_<3d_׌)^fb%p ן++#TN}mv=Jh%nR8g~(TP$4bm˵l( U&t]OgwUNé(nH;2 x+ K!>@u⊵X.g>yBy pء,pjkyՃdQYN[ y@X9Π! IyguܴDSW"uIV6lz Ͱ?FL8COyGL*<'~O_ePBT8@J,^߾̘|\/diTu4Is̴ֽwDȹȘ?pݼnҴoyo0Pl]7{*[i%`6 O.wSF}d4(_$HglZJ3/:TdA1YJspM*~8MDȔ$Y m9n",f&H0 sOH8BN.O 1=`y1m.YZ;P%kK酡uMSfcpJ;G\Hs1{pFϥcqMtلmsSR `Gs1.s'Y)9:?}٬Njb}!lv@Fƈ ￙R;Na`5DrdwsňIe_)Ђ;FC?7_D>wGnZpRz9,'Nqǵe_]Z*. 8+RFPM@=y75h'*Un&纄N-_ۥ[r%=~:Lrjǿq"!Y%o eNVZ3=`e N% <7 \҆;9*qXFcSFŮ:m%?ke61L勮|j4c Mte:=!-g QI/92˪"e59HtP3gUa*:I2ta~M5g$,n۩0r?wdJL"-f~_~c0 +< #fMUnv/YUcmE3^+'̛$.gM'NWغnNQgĎ)O.daò_RG:4]o0ْΜ"EH"b CW{DmR J= @߲Yk@Q&ׂUhS:V(f@s4OCmfTyl!h‹Yqb۞SEa3n?vս%9.4wYjyl쁦V$c5#tB 1%%2_]Qnub Q-*DS`vliQdҥPW!p8&;1`[e௷q1 ޏR3Aw}YZUA(@I\$QkC K$_vQݠƞt%ߕzIGedHb(ʐ3D 7߯Ƽ\~I`9Ʋ?Z޴@@0'U ARW16K(T*Ļw~]p-+Jedyh$BOԁur6.0󍟍E 8kmSo`xK MCPiJʛہkʈز2J+1IGPvENɫߌݑٙ\-j M= `iH`z۽mNqq3CZUx ߭o@QmXAsx7?hw?hy=u0.z_) #F8MIEQ)w'A,:i5879G8 YA D Ċ/K,|∧lԇkV2PlptFνFkmV~( 3i`s:Z|քpP` l}x>1T[*B/ֿK&.2^6g*6Q;a1dAV~Ƈ~iAݝ;4.RCXKSVC^>kŽys0[y"J? 5|i$a )A%>莉lt v4}]CqV|Adqk$ 9n~FqIg͗b@g@0B\鍲I`>FyL𐇣=AU{+t: fMW@^& wS"t}.ogq#TO|#P6~G1z:t+WO׽ax7Hk̐qvLm3eUM*򼺴oa'aB_ qKBWt~+ 2Htn LӔ k.@28љƵ }9aF=!a**አk-~^hj)>q4kAQ2^& 3 pfJI$j5&{W >]Ȩ!,̕b _l" [tj~@q?(2G ӫO[1(TYx;<kx^YpѮlt(lQfV.2̠`hThg-R{VO-Dmշv%pHJMzؾ9>l0 G*3/z6J[<3>m.0羺EYxzL_|TV(. a`- :coA'Iu!{@FK,ˎi/f#p4\`eYУ֧qMdBS^$e`e3NNnlrnm6s,Qo)we` Վ4ZrX(|-@ޫu"GW7P1)_45%0B,ZHT4[ {̹.߶ۇC3O\ND}<4h".(U {"fw6uƉ^/bhZ-TV:trkv]}AQrDץ,cT$.3|.Bs`*m[cf+[٩pKbdޙ?Ӧ.tb!Ug.Q$cuMpSirG%Z(|[^eeə ?ֹZ'#n80*I@2'{_#(r.k )q .ɗ+ 蛎]% i? RNU"N"I@OPz?u x3gc;N짗k/z g"[ dj8WW6l 4Fg^`yyK,qg8^В橃63dz KH| |oѴNv_ +S7xó LJ:׽hPBsqFMBOdV"jmif tWfz"XtVo.[qE"B9!rĴ.Wi^UL@ F)Dp:@5/s3L` 1\mZN($b4I%:kleLa7H&uG88-B' Bhڽ<Qe4 6QݨD;".ӣA,AA[0%-A2[6֮\RM_8Om3 .>D$RoOɜx]J6Mʪ z;9==xRX]tćm\SxjMֈ03ՙu5wdcb:o9? 1 dG 5D>o 5;=>"eLʹ\K8&§F$M{bt]iuv}=o;c |?<Lu}SIꚁgeұ#u]s.##˽ yji;lĂe'$\ޞCt$*{T<81DzN d\Ծ>У펧7 vZlKT.S1p]ȍwKX@I0GA "'K!8AE}Uku NK0zY6\n4hLè*Bv6Ȃǀv3^ϫB,*xɵ̇g0׻Y_QhNSgzxb}$=C_,iV~e 0#uE^\N!̔ uoCچ#o-.ڶ\2sLlGZ3W24L ?O]#,8'"1hw'n i1O h{,ӭSLoIňL+_#sNjvXyCaܺzPxK[lQy U,A6&¼߰\!T؃1bo)Zhؓ19ۏ /%nz4IvtUR-oײva"@}!-JdLm-MV(EtbLr:-z}~n>=m3yFdd؅&XYnҾB4N]LgX^E/,oA2d7o;wю 9@TB7UmR=9g%+,xSI!Ĥy16D FI=$Bz`QB7Q(-_8 ,#aHi26vBS"e}HdFMtǾy /4Zkj{­w1J$S~'r| ]\r߰I\fpF}vތ: \MgD q(:QCg92ea_V&ch>P^??Vy9@.dM!v5y}|Gm^} '.xـX^<|NR 3m_CaΟs@VG8ȋi b Sg0T?,&R}}?یָTu CfL[( QR*$US<~ͩã(y`bFA*Qa Ȓ*w R!e*{qD`tfH_!ek؅7$.yy` 8 h=5gtK8QǤI!G @7M0XI͵_?bqv& 糧o_1E[eO".S}xI%`~[|Gg&Ӏ!)8:[[\V d^\Lo36')ēcRȠy ;[>Sw]%[ecR_K&x'@!MnsV<2Oh)R@[fEk2_RlÂarJ3|Y ge^9c^yr#: OVwbSL=.mK H:}̓[-CH:BҾK]]caYw 3}U8 N<+ԓpqCWR1Z+?8vudټGD @Bm.iLe킨a\ :=|*8`z&QzQ;+ ͲRR-ls #|?%cQC͡q1FXH'lVoi8WrH]tл^ -}Z)=<6.;xr:'ǴL!݃(j"B/XRZf/ &LW( BAwfܪ{>z*]~D.iF;F\0_J5|pd3=30Y>e 'u$gTDک=iDeJ5j:Cb 8縟܏a֢V"%x˛aH8|uوgI/COE֎=V,H3+|ihx1hd2Rd>(̵P7 @ZL0rTPvQ Vaw:»G9&I%PɃ]Q˥h8Ύxzn[?sor*K(gh~s:paqb@rW+-yw(6TU9Oޤo Ga!lgosvc$QV?9,#'> ] \Wq`!73J7uxc G+Y`4.2EScN<}ᬜ7֩4;nJSOƕ: ~Mj!F(.ʦi A*k`f}Fgg3 [iђ6rr];U:f;ۗf::-qv0\GYbB0;i y 5*vm$МENQ u E:"wӜ`],VeZIF#{b@BKR;S-c"#a¤-kRʀAKܯn6%5 6'7= hD-ȸރ31ZD/޿xJv'qZ<Xĥ5a Sيk0h~*m7Pjmx0^~x&?bv,h+\z5~рDUGeac_3ciDWfYN\>c sm\>va699UMuI%]+\!fAY0Bv$ϋ)]g% ̸p|L@. w%MX7TY^^IOzSyxh!8} Bm *7dMr,ԣ*ي[}]B`]/U7K]fToB[^ 1!h ie\^hy6!ꂎΜR/<44Q-M&kv5U=׮^sS3ў]b<*Uj=[k[Z/<<}I`DWJ `!cl0 a5Ǩ3k\@ .8*iJ$4nlr:/TiZH)>I2KL8tW+ڔ17Yy]YnGl`uYa Fv;l "X`usG!EQiG&I>*nvVG;F^{En[=lv2a v5r @!_ NwxCYB}K`C)UI ^R47 GE 3(}kMZbQLg'6:Q4OJ4it~ B}Ua[g|8*b j戧b] UD%BNRUxN7Ь1fkݭ¾VLB"dV83` z&'/'+GkŌ*xDŝ 3~;D;ZNDST zUB#{f69Iu835ɉv蠷[?- V"Eڑ+aeQ ΄a<=[+):sGv"XIvk`!bgF PwG1e{=%nZzU0hH]ė͡!EO?T`9g<]7QU>{&y EkRthIK*ltȲK0Yȥ R>Bq;ॵ?S4G.;Z6$ I\hpi <'k_ʇ=sd)WO/% ;**x+@]ð*\i7YEA;Y**h%?q=&>ƿa.5+J[s쨋Y-! Y~Vȅ26ǜj˸Қ#؀f/:/q१ 'H$ L-A\~_\XG>6 ͦ%LWi.3ah;ьAYx1e[_z yy~gӭ}f4ZJ?)CbcVmxe~r%]oƸf `q1bSut14i9>U>p$ڲ¾5ۍ]YќՃ]`=.="wtya\o[)NZ鏄zٷz9x(3P*]> xʫ5D ^Apx^65F\uE7#f%=ԅ`U r٨icdj^Q!Ꭱq,7C˾JXٍ{yܙ5 e MuZY8F#$r&@Ç i(zly'h? nXWZUGqn2v.%2*6{v8Dk]NaͽB[4>v#&a5d 7h Q'/ Cw ޿oX.՟%S.gbp^HVSsn\,)ZQA;e1GӭFskM{akbV#=AHDPy':u%A!|b5N.^y+1D[H:L9\֫U8*+S2Lt|^]ܔDRGׯnu5 U.<2G@*G0 |Mz~j3<Oy`^)ɓ*ʌ]sjo܄ ~䁎U+(su2h: iB'd169|'9;WaX[{RPyRG[j豊Qپ.YI:5ULCoT' wH_=C_ _VSZTKW#zδ|ZDZۨ#,fX/<|7dpEf W,~e1CCᥣln߿6TAJ3\iy~,b8MyV.#'mup@fvwIm*HqJb I{S8LZޖ8MR}F/OPnOz02?fzXA`Z q`L0ꔍ1DbAC3C3s$5SzA7B]OrιGYT!yr~qt|Y4c;bxlrw>9NR }S`X [^Mᮓsbiq A4jRXقThcp^Mwc w2V,B4i٤~ԟf裞ߢ}gIl]c|:Un=+aH"3 Ieo"ؼ?9f^wt Usy8eX9NQ7eDLzc0<-+Y G]1& $$坩^&I)I8GD5! %ݮ4yQl0ػ/iOT2Ӌs`1LdbńbcqKH/])>r7e"2*M YL'ZCh/Q9Q~1jq󰠛nSdSzLV}~&z&JɏrO'tN29Unz #-J:4c2tusU JUd.k_tJjrXħPWcy,9siJVR{+QT[ؽKL{|/.oVssRWé~ DW}ƿ-k.G !թ]Ӎt?ڷEXayp }jy@tߎ vGc!ƾ}@}ԓ>Z!/m?T=zcfRݡ:O.٣f4zAte8ӎfݰYRvRa]DI &%La]mK$0RyƮ> B7icRaxD8=x@@9=Q;[]9!qixu4HwrlR7@?_c6^b, %4-}'At'2Y'_3gMJf6yD{Z$kѲM)o ڦlhyJ.pq//qF$]0QvERq [b_ooOm8ק3yx}ݗu82%H ^vJ3FmCXgVb>/ZIl:EP[+$MY:ԛ- @Yj7ӄ˧&g>h%U-B}зo> 6| Y-GsO;4+ehHq[S&xl"{MzJ#ٟ6K4}}լnYLD{D{g""%{|9Kf2Ѽຫb*[:W_20@̥Er`:.ЖpM9oj52lJ"""+J#AV_×xPo7/2YT%jjFX2tULat6%+@(~tPN'JqJsy%ԘƤk2$G?ww?nlͤc{ 4[\{[wAй22QAKSM&;WQ0it  {'>{ t;Es(JgKO XkNlaY]Nãɢ*$,+L2uzm5@yCP_~J/_qSwre~TLqxXoF=^S(;P3hӛ*޶tYlkpH)K9z{>A2OFЗњG4;O!&9}=2+e6q"&+H[<{ ̓zy`1\@&YN*M%3 }J`g"v  8s3u0kjU:zD'$?N6x )tPz,rJ=((QMwK0ټ2b_|*N~}aWÇ.ɱum.T]L *37A:z]tFpp.+r[ k j $ 0,G²(EsK+c]؞ EN :sB-hǝ[JG Is^rRvꦬ۝QD5䔉3WLcEG^}˗^:#oV m>7R^ D|U&J@ [ e br8G13!ɗps:DžSz*(ZTD@p/z&$/}OqGmF~M֍ K}W£KZ*(7Hl6'xK#HhՄuC8Lx{f3ίPe}K9`@-2F6Mh#)!uѤU%v!vl=dz^RH`T \~x/q h4iĠmԿvՎ$ښ 1k]G*#͍j5jsp))NFZƬRsKxNupDZՙe1@"Jm -(WxXg~\t q>ȲVr0,ӯFk=gnl~fpS[KH ӹp_=y葮bvvq$ə, HUlZni(PYwU3G3d6B}L5+E0kU?wr[2SN~ j $XhہnЦ1j+ ."s>īncXTW [)?;!(=ԫ)E>(BCK|ҺЩFZ5׸3gfhh% Ϛu-rMkbtu7C/Ӯi ,1" 9e uiRpgVQ<PݞO!?XEW Rc#@~y[ҙ< R2s8ae (nrjq-4e$20hOG̀š/dɿ9k#`} &C:&?SP; =>DNYL]O O?~6Cg^q 0? ۄS_Э]~go݈݉mUŷQP;@F}Em.=C.,ɐ#ˌlRtJ4'{y-Kē( T (1bsP{|cfխB}Aeԇ1I0@r=Ӓ`bZ4(;HVv:I\{[TI_Ns05?(oԣaXCC{x}P9B؎.пZkɁ3e`4=E1DL2W09 JRG|w߼ ݸKT1b䒘Z~֒(S(-7;"T)\w OXm,W03;&A+ 4k-iePr_B4 UG !ϗow(咲،@ս#:U8yU?< OWz= HΞu=]"CXƚGSL+Lj(@@s]q`?@F]__F>WW 9bvhV{[>8(+EW#q4..,6 _]u?x~O+"Ȑs9U R) #5jGodDes"ܫ(-gC~L,^xr`_08wk,8ՌKbǁǠC7^$HG >1¨%NeN-yȏ<"٦"7!c>~{Dө9:Dpu} ~@AW# lefP// 5˓vnbTDt]MnQSq\ԧw|$|*bzERg^~ծ $Mǿ0y)P|H@׀:Aϥ3:&歙ob$fhјR:gn9E-z.#.m>(/ɭ陇4aiR} Uj{XSEx-p0ЁҞc!KƂu#־ۺ(Wd/V $}:5qe$%^UV[FN'+@[⑬ @ToĎ(4@1>&7&A6^=gehzugU_AƱ{ҼZ~v_;NUR؜y'mv\v2̟36S) Xzq3-e:}ʋ%N5Ÿl0^OEE5E%3@ýj운4Ďo!{&jm)YOաLظ@n#Y1" 1CP/[xd};נ;~-7!q"9a]GhMóC * :Y岻; _eG_KD ZF#]9dBA\v:Bֆ6Cޓ9K%m|^ zUlk\P墽Zu`| o -tn# q倫sђrለ@gń)Rﺑ3^u_k5U%5Z+.2z \dƑT`8i\tb gA.f~j}Z5-ɲL47i}D;T(uJgRςv[SYd${$nͤ/Jr4psNrvbt%+1( 5Ȥ"D.=rN OUQwU#W!>/grf*;KbL[ OIw8qؿ2qu19ŋ9Y :l{8uQ?Wj5; _ `1g Da Y/K8=puzGg-g k11㧭cH"f&D@=pl/H%YV# 'E"b Z,VU~},],wjE-\}7Ncj߮C窅Fqk)"?'BFH!sjKib /e]Bzm93ԇ[XXOZͣx;4,k9LTu뷾 ox+mm~nNd['( r'Xa J'EF~W}0ˊCbeda${o@⎛>mŅ̫QNKSfE+cU6loT@x¨1U̺`xK2F 9holWg1ԷITr܂ҢkLCEg T0<d_c ۠|LYvcXyI].KM:K鹍z-TG؈{Ȅ\iuƫZäG+?wut;O[ByDr5ԯJ[lcddEy4HQ'Y;q6Yy0ħBix(۔`~LŎ6HE \J!mD. Jj/3"E'_/AVijf{;%VQ]X ^iK [Dm rgND)|E7NbРFUP8O\MQm$/tXէbzwp  tI5;!Q >&Ar@'H #G-q=ѩK6jujۮM&~yI!`fk''p*fp>Ăv}4pGHw%y˴' ^ T)ۻ5C3$ڎ.M!OGTm MҳۦHjMßZB+E#tE!T3ϣȉfY |Hc2DtaYBh]|\jf5za u76nЉpi8g4Xԁӡ^EP`Q*;VI\T~㷵UQիYWT!W6 M)>-ЀO7&s&B |6(ߴæ{Na{ HA_¡ξPwzL QNv) 6!Z!K2ZT,tlO? V$?W?iJ,wR?h8|])hcϦOY_ JK1jRr"hc'njVR#s={;yZE3%7ektD~j$G Ptl/ '8p֨Tsӫ{;MKY[>YuHTN>PPX u^`R_'끵kLaĬ%8;{eSǂsQ(r*0v'.f..w_)9L&M,d $kd}`vיA-gijg-23D6"T%B͸$[wbS¹@"Cki~.MzD޳>L "#9MA0RQ6/G",,Xq ~]KY9ȻBAWW!?Zk[o,滆2ew=;%teҨ9>v@H_~Yx될lٴ/ x?V1f2!٩\/t*X5cc (V~TJ0 V27'=ȵZPKsq[A)LMG*rxf?xwqEC`C;IZvNE^T/1I4M8*?o42tqS;X~@c,ZZ/,iFovDt}ML$;OKeAJE_ 뎾*]ghtHpG DmmR~*ub)k" *=@9agd9kǒmnKX W_6b5/D[U b}Q^;:@=pY.+sBk&>1_1't\7*Bm;CeG0YZ-xgLt,$_yH!1Uk/MgW[Ӝ]^5D0{Xv\ZUD6]YQ H(͑ZR]fpgRbqEd2rv@<}um }Z C]X k\*[6hJuzr4h%gB?]l)4^_MYhG-?Jڞq57|XH"FַK?+2fA ߝz.铚Av DB' GJ~vǐ_ݹYu,x / U{KI, Bou&:!SJ8g$3Ih#&q%v`PAʯ"^AF_ZmZ<a`{O_a⇫QQ7P-\|MNY`O#tyM`^LbɎ3VgY.NqmHfFb){+I}gwkXltܒ?y-}Y-鏎 Jd9`r v(wWm{t+\+"њMYξN;%Ÿwcq?hbHBZOvI ~YsH>E2AvX};  |૝%w0$SvY2 &Yr&Nxq.ɡ;~Mu "x\WFTK<35eMl>jR"אdifݕj9,30qNT.0(g;c&#ҷ#T$Diff7Z:[7hݑYh6`FvM٩pI8UB)r s_KV0wP PkZg#;!Z(D*>uӚzzEZR٬}i\ҽ#ZQI/Y]lRQTy,$Ag2?Ti tPLxdxkL+[YJ億b~ҩ= ;z4Uq| 6l0+\EPmn4og<,SZi SAb3xR8DF! z+^THbQeLʎgI&pa;0*Yݬ)z:Jr]2Fq4QQ OG")f""/4 WSvCBB .U>1|ySpQ')=b0I37_?7=S?E}50H6L A 7Rv~hPD.BKUD}vލCrV^>P94Sq8N*!jgg)rа5Ffn2O_*ky\^rEj~3,Ien(2H]czMymH hsr :8%\Aus2 .hǭqZ$vAe,MLjdcXbV<Ҍ$|Q/AK)\ 7G)* ˩V~b^g_!x衿a' )pv|lZllD@_޸?)پkGO@B87njyW%4 |*0eBt/ԏ;7 f`Uk^hHi$m4Qg³A$μ[T0*5'@yc]K{`aW% 1M.SCFݪ2EggjNJCrP@1EAS I(YqYy8$󃂉Y0.IXͻ]0?|HEYtR_jn fESؗbpn *4 xJ'>@h6%b4j|'!TE{~ߗ8!lF7!xc~ǟcp":nu su ' d_;@]XfVs5 ҄rLFG& U\,՛ע$&e@z\>Ί%Cz+P/lP&NsIdY|4 +sx[+`?/eLqbWhjL5AkhgF$ϧOV앩Zn:U"t@tzpHY,O `A&>-+LU?Ѫ,Iؿ=0hD~D5Dw޾,EhI򺩛B[H 4aBo|kvu^]CW5䩜xi[8Hߜ=Us|"`(F>5AmKVL2޲ge1zL$)=rǿ c(`z ֠uO@bEs~/OpXv䷒IZ4dul߻%Odmo|ٲGď Q2_ CGIX06`*ɿf!(|O%d%C,us*KYM]x|zʯ `*bR]:GUq&=]E>"ĸ-CO11qŋL[B;v sk&2M2?{<.;rWLl.N{%qhuԶ,< ڑ/RXJMK]C5D`~jCdI\A. qB#;6`*4SheS ` ЙLa0@J<_Knǡ720PnV7a3kr<$S$!![fw`,rP,UΎ\I R1ZP׳Q ,hbi:f$m| B epVY/(M$?+56GA _4cXJ?R 梡IT+)Kza oq4䕤!Vqp#lo\1F7(D7g }%Y;" "8Pi d0 l. ;H>`jhEAm;h [.y& "Q1ON(t  ;}KT /Q VBg] q:nR`TM17}lxy$ в=nF~E}D'H wVoͧPlџ?3:Ob_C+E_ 9|΁9|cĺYtURF5F4{)6DR{<<‹L1`~eZ5QcW&vyIr~7:HljmjJSCUFؗ/=͖UkKfk@S5t͉f^.tڵ4+{x5dL(ꏔMYM׫P|a{%/{Kt® *d`}/}&72ldNe,cMS'W+#i۪(^MYr7Ջ_)E5.xO$3:t UmKg8,R8NЛ&'z ]y={L١m;F{kxR0^)gSSrw+hmZIY;eNm]8]9ϐ~ش<㡜E~Iݞg\MSZ> U~rm]ퟮKJ`heZ^'9u)FqMHЯV;\L;pٜ _P5 1>+qBQN3Yv"GZu%gC*eR.%76b- iB^wtk.ȜW/ :'F T rTo8r'k74cThmX+Ė"soC%8nHblRAZ4X}ͪ˼T ϽjD@:\6:Z>r56ExnS L -~j:/x/ @$}"pY? 1IfڑHFou<'%-E%.A(vЄ|8мdH8r'TtwjiۡK(N)NQ Nμ="iq #"kADrY\v]uZS0)H#8Pة [ ՒqD.bIϓ"hY Vב( H?Ua97Fu[=*?Y}w''F8Z%-(Yk4u̗!0PCO҂ݒ^\ð&s}㕵Y{G%I 8 I:vRl$Ln'+#@vR:YV[r`_WHOP\ 73 O}.9)~RrLj8w-e좮403maMe|B2>8'fEM9I˟>YnGYE)_d|2`Ďn6&n2g"мtAtبzY^h|nۚGK*,\LW 2Q,s/bKQחKva4l`4&6%[{<1~!,>M9+樗ݔp| |"^PX?%tIC\`N2!Ks,v-e=oD o"~v c @ݫZr8Y!!x(7rڞŋX ?^ EgeFT:_Ljc3%+xuls89.^mGR,Xֵ4! }ɲhŷnCG#Y ^;GOIwLP𦕛8l`FBCWa`IE3Z+`-:ŝ q=hp{U'R1P_f-O*u .q;Jԙ~H$f"J-lA;g$StKF 5g%7 cn&O֛5Dh(vpT1཯+ir`y5XvsO-,o^P76c.>sw _?|QI`;0sqCsÔJW:TW==iAAtuT?&tU䉲1>>݂k̙'S0*v2J*y'Yat*XlFuL 281)1{%]騷-8&^Z(;ѲҟyAxeQ%y%4p4u9k <6D%2TbY'?ŽpQ()F=6;K 89? Cz߳5˟v~t5uX qHgĮRY1l۔+[ HPEURU?=};o+{h= #R4%CR?"nm L_ʮhlq(ސ(W4ۅ$`gD2m?D} ~n ԍ/S-loļ;¯SgL @);,#L .C3\:tݩpO:tTש^T#>tݞ^cMEC ۿXnd0z<& >H Z,Ly (SM+wؤyV>T)I..qJo!{OжšvӓD"F[ h2X4GRn`6i'=`HpBc){eZsS0.:D^\>3"1g cΒoIΊEU٢gI)+Jv׷ LتnikAZR!t˺<'yED|)&ZDc5Y$7S'g+ċku?@}x%[k ̧L|(/*#(Ir;qWMIS0SD`+6BCWL4Um I{(Pڗ)8RUnTSǾM+ +z#QબR3bB~mZ)0LSxo!L>ZK?}1Ze[(Y͸- GR6;M4ݠ6gGGVvf8N ~sŠZ4"|cI= WUB% өk;jo6t#% G4"!M-qPpE:${^xktqcPa)Y nvlԿO4I+9cR>ACN}+t\ԤPu Fi>(TXrNw@h:tc粐oxI@G,V,C "_50=EYNXQ>ww,'ڲF,@2>!+<تX2:^ T()GY*|@3bK;#D!zDPY|Cf d!-+4BK"v}~jL|Z(}O3}iQy)b߀~3r]`J,$_7y \,^aVDm%X2*kջeA3wOBYՂ077;"sօ(9^lx#D0bnmy~Z{}.TsOig%^Ïh|HAyő$BdK^^oDҰ8[^N?D5Pd ̄Wŗêq?-c@ʹ!zм[E:OKST!Eܾs#2BhK :܍[cIȂhBmE` a P*548+y߆-9 #SOڙ! (VDr k ޳12JV(%!X/#(Ʃ Z:|Γ#9;b[iӹg|"4q`pXqF9QbP!*CXntӵ,q wA"Ld^00_@ߘ<GٕܿH@kkM(޺05Tq}Dffp/Bk哉z&]yAg!:O >#X/ },1w] LQ7F7?jՒ7%37ߦ{&^[ *N˾]S}ʁr\0> jV5aԪ=XMDQЮ JQQkg5_\>x~Xʸ [!TB2(?mgj #Qa(NWߣ,L%KP˺΂*w<-)1;-dG5~IߟD  ^.!d&ōK>5"). *衖ZtIݲ%^3<1a{$3(PmiS\a<&DW5hU{j, 㸪t|<^ԡTtuPS$IÝP14M4je'ΨƵ@Ui_ES L8`Zovh,]H1qM®`n+Fnm@׋{RGy&֍n{ufT%K87oA$X6Hd xXIG (IqS{WL$)u&sաQ33.EsRU6-đ5|n 2zRZjɎqasO>zQ}lG1Zp쎫 >L\ͪʥw%nYE- d^ 5-w{oS=!M?nt 'qQs+ùZ&b Ue7`){ǙJW{&Ov:.E+KrMY3 Sֽs!_cK0xU܎Cf{}[*Q]7( \O%cQ@kV"3c^00ʰM%9LG2CQԓ0[b')R60_7 :Ov;avMd&,[rK'~? Y6POЗV~jLcq W4p ^9{mG`K?2.A:0Dz?5'd@J<5ٔKVa4a,ܙ7p$]DcL64{dWj2 i89K rwPH{5b>b@@^?9 `X#YTM,, dHa*uלTaߡJ`t)jƖ2nAgH{J; %^mdC+E0t'OOmhHW]e:&jq< 2qVc?%trSua?ӳ21HiMx]{)>ATfH+,9׿kj}{p$#2ʪjq::\ ,nB7%zwG3w2x+4xϞG\`D 7V^nXZ-ķl2 +"oyu؅怴1R 4Io3n4w^OxAgDt+.> wK}HD3e¹oR%,ޜ/w+\F~~64h1'[gu:Vk@5A%J`{̵`2ă$6S_>LaGne*dn#Zvn/ }drHeѦ؆WmY˦ԇiݷɀ6dAS909\G5- MO`5R-h Rx]#J^lXSEJ1Zpu!G~RZ<_e:pQvler>Op=ug@Fb3#ZP1(xA@5nhlVEsh||kZA %%(I8LB=+(gJѲcZ~σU8R|uk#l\^ɾ~7ͷ23ա~$\ľ:?%XO@:>P ~u[xv3)saXM[l;[j!jY#]Lvg?5'SQ>%bI$jl>sKI{Eh?(Egt۳cP;cA M̰e&gECP> Z+(ǽޜ+ jQ>&2V.KDUwF ,QO=N(+~-g([mڵqnQaHv%r"00P*] J{IL_Br a5~z22SA_Ҫn\ibi{h A%:4fWfdiB1a& ZNw9]5bHp[1n}d$Ygm9̏3ui7ヽ.Ú*͘BU[l[]IW1=uS5Draw"c3p7 5= C6īڤ됹_b8ٟM[TL.#O05kj+h HD;$Ӻ0I y'NaN⛗`L7ԔSH2<&r>iմ\r^~Ce%7m2i-:)16@pZ퉑DrZ| 0njHZZ~~% Qh`N1:hM|"u/+V&Tûosv/ m%5i?"+liTژ:s5n&Fw0>7OubWEBpBg2 {ok#Iéy))m"VZY nV1+d*]ɪ Rw 4 LŦA#YnId;݌YTIyJOE0$ Ox lfw:ь_h }nי/,5_Ijz~т/sKo&4XM*{4h6 t?Ad{'1hQq3EgXCX㏕z wVzy,#j l {Nh{V?'3& &5:tD L-WUMfj%|h ]hrwJ`jUIAgxgfss'$y#/ycwV{/#m;eY.:X:39w$azG\/Hz:&a#d>Q$!\.Ela̺B3r;Yz3gl͕qW-?жڔ/y;dCySYCtϥq-fr\ȹν42o+Ͼw;@Uבd/)QSl AyV#RL8;q>)sTa.@{\ȌQJȮ~\u:[>P*ɚM?ᇮUz XDXz䑴gȨ hAfZpe_n!^n W?Шߩ.zݍAlͲw{v;X"(gI qcԯnUEʶrUƇ1 ~'{|8XwE!9t#D8]"ΚDۧV(2٥ Xb^ʦt-4Kٝ9fmR~󂵢KY8 yXJHOu4VdJ.b7zŶ0P ΂٤珢ɈlLWz8WkSAsZ֒&[ϹKS-v4z|Z=_,+V L1n+IJ `‡y((jLdMLʳNwz w6OPMWm{jtr"+ώz qM#Ly]TC'aW"/R?ʯ/3=gy e4ls .>WbS 5 > 8!U}^&-/`[TNeN[&Zڃ`j>T#v 7&PyLvJi 6&BC)f Pm.Mg,2!oL)5ȬebFooG0 uuHҖqO?2R`XkL>~w9[9Tzȓ6G?9QoEy~ Q-w05+V-Q64:{f">.Po.Kx1jo0m;d孇s$M̻İ "cp0~i{K-ڞO{bwQEf_\q`]tÛ6V]C̅V i DSxF0tjgH;uЭ:]䵜qRvk63Lm ~V60Jb:c<>uP"VZX.t6+L8 wD\Vyp~:%BXy^dJ͎?ETKn@q豬a1J02q0 [[a5k<ishDs`C` -хѺ2|Qj6_qK#ƙ!(*,eK^a`T#*ÍTz9lOqI#L' Ȑ iA ؂,+kd $yEQƤ4I5|-S̷p8Ô4 ˄HQ&͹g I* )ȀEI.4c[ٹaV&~ B:px6rtPzYEO+c#Ė~ ܂?|]1>$U,jyk9h}3u윊H$=c<'H!=cg %gVxۄBDIA-5l@"YjkO,mYƳIՉ6";=L_oՊϦ+r[bb+˭48~i!&@܂hr(aWǞR֌c"#|% 28AIygx$W?6"grYa;7lY3]{M(QX!Yv2JMHV{C=y(R2;nN[5ugU)j(JU,l 5suYo $EktAY -ѓT1s,b۶ĈI;N%a s]% p8oj82I@#`a"'T=^Ώaa\1כ@>,C?y+XҚ_sp"B%B+,Ϝ'pXrv+ wt<˧%. ~ԅ*(ڜz{$' kθFf;hmjet;2Jĥ޾Δ67.wԝZ?qfbJ}1\B2`.#>kT.4/\ahב'GV*;ו;~'Ϯ"fO5X`)'ؤ̵~;Lr0m0 :J6RRik@;>ByaTy=̰+<}f]s4>D8?E!~̀}iv )dL P)e*I[dkzm {'kKi6ƹOc=p(] QH[ckaPYGk^{0gXW)l1w66:0̝AI,{-:a@m֨ oKh,ucFsX|ֳ,ڍVCkt36ѲRS\[BR#sC7mI\āђ%a죄.qf=j zY!6SZȊڨPu/|SC\t]đDIZDA-[ iFt,b q?xۖ-wt BU˿nC>AyD.#~ _3L2T*⠌dg)V:id@wHdoU0)bZ`1"SF{Oȴ>e\Vl#; eu!(zT0W ړE͏ڃfm,fISuy+y#'=TOO :fuӸP+rgқX%gEe*Nywn/Ժ]fL In_o:g'4U$pc~7La/ޔ:/_hS6b k^^jVg"lA~'h D(J;-s|+%z".́-q {z[kZciB,ж^Gw[Z2 {7τZ51a5W=;Y>UN!2]Kd)LQ`T&֏70Êji l!wE(i -QA+l S(&N> УLXR3n=ȿjX٢Xǡ^qy(x1X nM 3nBlnf{;z>T-RӤSiS+Us2X^u4Cjד!uis>לs ~US7ĹQ@|_E ؍q^|']O/X )}H;:YTzE f֫A&b ֋SHӤ<42f`,T_Obni6"d_˖3ì 0!rbxqE= Jƛʴ7{[ٟr2(zŏp4?%~I;5d&L73fc ]L%^.K~80 GN682_"-Lq̺d|NEU^.rF`(U>(loytq4v 2 \ \k%+!ZZ3=Vy[LG#kG`NVPt?m&l8.-͗^?ŵ )uQ/,PDCRkq,B0:Bc]6~^/; #r p&9©S֥PknKwV}42HZTh8JeNdCt8lFolbZqƷdt&j)kV rlYʠNxRNuQ;Ac|B濿c}S e+k] lHWR]e"7PTI'.v)A1/ex^QdvaPON$):21Fӎ۪5g? ΔI Nʜu{A X 93?‚)sY6+ Q1Ց牪:100Mj#F?u6mg Ʉ oR}Ʈ|cnXⓘEȮG+<Q g=+gW%Z,LzeETqF~&9<1 7:/"pl:(Q8.@*b˶9,USM\Iz'~Cxë'RPPPs?cMQƂC#T1;~n\Dr&uU*%\QE< .\A=B$>9.E^q>o@ VƋ_23"[3l&Т0Ҩ0]L˷Τ-Q˱;YSi\En+D- ג&2y>=G'lEDVc =Ͱ]l5NVK\fs̹ߝmry`a/ Ut6T2k*PƼڼX`4;1LJb4YdK`Af鹩=&ToEPVCy Gcgr@S5ՈDP^]$cr EfӏьnG{} .DM;Cv2oNFOHiedǃ5><[6)x`6_p_q ճCrѡvcE&0ዥ_G7IosVEX/~"6dGQ#5R5qLキ{),O ٴϔ[3*ϑ34MntΛQY0i'(J1h\~'! G;0C5qA7\guN(֚R$٬E)5]aH*VkMorB0Ro4"`jB吰`w|4\Sbfƌ`S !ϑ(ق,k3 >a?q^`u,\+WF 5G]Q<+5fj<RIIb6gI6Z.UP)yx$Bߘ(7-P~D<+R#M<ΰ/E]O/r H79LX UR<'Q cL#\(u}8u21 C 9hۛ(C@5+EKqۍ{?zЌ`Kppz\t;[mY jzƼ!R@  8?,:lZ%C,=m+ ^J A>;DE)W) 0/rL; c$IIc=SoUePA4R=ӎd;&|94ʕ7_Z*%JRxy*X&wiV"e[G+tDq'7 ܕn&S֮A6p218p *㧛ֿHiOCRFOt~*`e]< ϙ~/4Z /;KKS)=P"m &y] dYY+!"`hXNAZʊ^ī%9F~nN.ི,zR! 刋/Rs)(ٮB n_w#>|, D޷z*$BBI L@˕y@&e8r~S7v*.lxP9co7!Y.яi{nsiHӛ)oGq*z7>dͧV9eEwVK=ӎ%8\m*?txf{)>s, 6'Ɔ/%ꁄ|RGA7 jWoExqu@/cA0d÷quAoIr]`myk:Q!)?+wgMk]ID8xEr͹#3COm%idF쁆̳߬:|TrzqX5!/7G^n4bf ށ}PHUz5sޜtћ0_5ߧi(W] ^cs`^xc+)H## ʬ?HX"_%DEY^a&%146ЋL[UX01EZqK P#>~ x!%[ CuDT@'#*P.ۼ"nl0|&FY}AJ`>@].y}TxqF=AS+o\׎u4-֥59I ?MX9%>7(X#,scHN=q^/U{u1[">Iv4_9@<ؙEma0h鰷Fm8GiSWHf5Z6܊uzn03UnMYW&_ӥrCnq8.'~?YK{gVP]J(284E64m9s%wPsr Դ2vFѩEJWd>2-=k|5ҹ5We!Zo`,Gn>JY5Kňї3H\fl[O|F5Bvf[9{3mV=YSMdT9$yU&}lã.Gđ15 HlPKLOӢh嶑;A`9E%l$7yڦ1j&?[e"AF@4'K[YJ8ŅycN#>﬛_CjcJ}t̤t1os<*}OB"Uajsg*b0EP1'+|S*{?]mL n Ɠ5Op\^HG,8 ^t4'ڬRuI)Ӛ#W߭ZtLAKJN]+ICqkϹ 4,D!~GeĤ@}=+Ӽ޻ >P/ 3|ρ:3jW{f>A3q]sxeW#)*Yc`eH2Rn܈c~%jOiN0y0s4! :,dJ!L ^wLH`0)߳Hd_#@fN* ,.й`|T>jfC[U-E1ꉢUeu;I*q{y.eU|Prt\^\V|ع5wW(t:1~V v>A:?46eӵ1>HԪ? [kȆ]\O0\T+n+NSΓȌgX/]9 q!fZu^Hcg J(=G:J14IB>xY3$̱x1.jZoO$*cWa%$z^Ty^Cޝk~[>Bcq+\xۭ $U_ԙ0p: ٠pxUABo-z]g{lm Cc3$7a&%"5?Hc梅vsd(Kvң-fdl-MVSLb ?HYnк_gˆBPQ?hXE@7^J{.l=>v#=J1D?chb K'RSSj>x{A8 jPDAiFf%ՍɷTm@59`'7uK)_1тZ AGn ,S!E,bSe ⠱ <)cʒē%cFVCm񼥩XzM,\8A%xHcoTע?uDg. Ŀ z8yvL"?^Ibϓ7U;pEޚ]x Gbs)-`=LJ"'bp~$s(YdC/wz*J_{,1Fr۪t6?0( +P?0WdžjN8fbU*l3kEKgwVGToGT+Hn2)+~s-Sx| +rezl4HX1f t-iZg]cBsDې\iE'Z^1Ê]ޣv P/[E'L`q{Q4wJ#"hZcUm5W3 *^HF%L,C[ ~6=.].grشPLȥڨB(8!qlxnZN^1ku/NcW1u Q?f /8qFj>]ksH4_apǢ u}IV}տQCŌy)Aj:&(Bڲr#N,p%΍NA<- <8g] ,vtJЁiJTOK>6-] cX#&Bz~d9LJwPB$Z\B0[bLEód8ҜK0Z8)K3zmgt:rf 6zL4ԉUx|­и֗ȭyCGsJ?Р{`8fx$}n*SC>H| e,VREI6`1~7HFyPyҙ٪ I%;|,VҔEǪ@͐1gNeW>ب֬!c`jNoPt}ɶG 3W r R'Ɨ"e:l z-Ri'7.qAup"$.HόP.DV8Pd˴0ߌ32%ÀG+[4n91x$IsײG&a'  ad/DpjfoT: L" # 2oR-=;rZ}r"(w~7.rE!ޱ=b!%R7]ARe"?'ȣ$˃b؇{H<Џel÷V`Lr[ȵ4c0땵XU1Xԑ qiusV h) O+5!!0~C\֫%6a }%yCiÐوU9| MV/ t%Į:atG突f:z>kt [h[kDu΄^cOjNN&nAON<⭑Rc+AkOt}|y{ƙs~r<:pjݤ/NR& ={wtc>d֨q k}?yIJ3Z>?QpVyK/df/]+5JCm^8@3!P5 A2jC cv*˲%ѯGh&T,Sf 2ҡ*' 2GSs|;+-Ѝ#6 )H^ AE"/0p* qq k{%M[ּy6TMD+v)"{Fc*D1%? ٍЫ3v1S"ҨgavM/ ~:D*ֱOcq1* sI |^!5 Ǥ.ju&|o>D4PxE 䓢LLsi]X@?oלiŌ*2E_vs,Dut8{ER+i&ڹ*F4m 74z72 dWd 99μWUASVU,0O iڌ5p(0ڜn3N<̪3+ٛΤ-[lM=Ъ/bJu ]7rkN3"'EU+qcQ˻R}^IPP)@IzZ@I7Vm@̃w Zw59vG̰< $cR$';Z|ʳΩT2aHz*ej_.scSݤgKڅPC >sA׫=wyJ ֔>N/k6!@iC&"pFN8[f†; uhy XdN4fCH@gOzYimy%4i>0,5n&aOYm'H\lv}~NZa/!p1 '^G iLsdZDNA@ڶGRP:eh|9s0f=rMZ%3$r1~iSٌ/ 4boNj6 dWEG>5}fU-v,Ŷxd%[1CԜ( 5vXFG2%]ZXPBl:K9ei vM ``[EE{l;/'G{|to7.vr.YF)!c1˲3 j/c$&yfFj ߊtl"gwr z(6F cv^.=U.&BfYSQa>Hv5hF d |T2f}-D6,!m?H~ԣ~鎺բ ! K9{18lgdX]z2K0F4P'Qw00οf3"ƆmNVzurdɨAM^&y!w=~+='=yS{*x[D m9L^RNREܑDJOtȲB( !>yƿ7R eh_&m/8.qiǢ V]-ULJJNWߪ% !Ntsv<+G,GcXu4(kLǾ+C x1 1"b 3~BdG=L^gYP]y&$9e":^ګ;Knik[Q{^*9}E>MmŌ{SO<|qAlsQZR?Fq%yP4\4ŒE7 LՊ6zaO?Z#Bt" 6uq%͗L3Uo .Iuj!5;E>䫏i[BJZ04֣^*dYijt$KI jz}aӘoD0x.^2Hޖmc2T%'CܓG %4_F9kS@9m 8{e,[X&@4M [l;&c\P8\"M&}ZNN5k;Ɩ{$#pMS0Q6Ub]TndC+;9kQ?x O7R~;T+P \\P?"5iҮxS向o6,T&qJ]0pʿ}nM?DJ/!0%o̗\g!yy^'x=WQNǴedFiY\N\_+ߨ"sE5pC 4EX|kwaI)Ϙcw?*e`,>rV@]ё?D?Z;&HZM~ImQ%9~/*^{@Ro`Ҵ1vtC5-rp=n^,hf^"Ջ:rHٜńGO~}5kM:SDuh/sV$l/<8di^:'oϘy)!Qϐ{nSէQIW1;Z&`!&7lƴlM 2#/!]՜K}Wmtsjy: ݞ!^DNTYG~t3&t&P􊠁uL+K]aEDb"(ad>WWYz͆ US (T*X)ڲI_D dwÔ;dz5*[ENY\i 8(,ze &ü>Jw!V(Hf3c܅? 2Һ1e |q dkg}=:˵eC 3,_t[ 9$?4y- r`pϓWuǍ.| ;Ť:!+rMFsg^סWt I(S„uZ ug: ~O+~:19-8F1Zu 3əUpcWP'R/Pz |WU xtRjq}S'bArPKpQHEv909 qFĪQg #JKM] xW->u Dچfd6TDyk=MW?_ۘA61-\)/?U@%z'qOI2Zah*D.B&,!ptyZ|črRtə X6=hEZ %? rH0z}ȍ$12:"bzо6 .,Қ>P~/ JQh8i [Fy ϧtڎ _]Xe6APV,މW#Qީ-4qBUFP܅{+<rqt(uef{2KzD{K6uw)5$+֬}4A[ ;$O>@=q[X*s s]en\$)#z(䟣3oë`$s2Q+3" ~^UcVIOs? \~Z|eZVt_T{=Ϟ7p/o`hy\䢇~1І^`M"Rxr<,'GύU ð~(FWУ_tʰM6R-ΛVkkE Ri!C`fظE}IL#x%$[t$6M4@+}ݽti^eZh">QY,{y|8?`jeA а,` 'UtVƌ-' 4 HpфOG84z08c:H_[>Nu:&8~C;ԾghFXNpp1.BuW9VByL"~lRJUüN>fLfrǴ e $&sےZgP>f-9kBQ,z9DFٛAng ,F"vC2 GPei^voT(0gW,y@m /o E)M3 {jrzXʼnַBvO$L ߌ.9)S0uqU=:K*|7uB%Y0;B< KpTl`jEvbᶉ1(b [&O"7-4D7 (DJRnٸĄn-6޶NnDjҨ9Nv뽿'U"^+DjtL n0[ a1ԏ$s-y"hZIiYm*KOGŰpa&k]9xt1gɪe;]Yk͓ g)qL.$V͹S^ ۔8Xoi/G۷bYOdĚ isL) fJC]nk"[LscQ8y# i& (z^0$UZ.q1 yxQ{"[`ЃL!kGM<,jxGs2w<\ݔ/ady(.mT Z* [i0&Ձ4eO.i4i>WH?7+.NO i*b& Q", cc^^_Y҈OG9?yfE!?@KfxɘA/R3ȻPI_o˻IXhŞ,V^W d8 ژ  >nb8{^:EŽD{WvzpY~ؿb gF35^0Sz9vZ."iS[cm 4wLZ!1GMx%;k zj› 8c<̓> Lv RUTt>fq˳@4! qkb8sfw~:Hql%e˒VlM[o@IyH͟y PҼne.``~wGg|ZB%Jօp2:oGY^)"}V'@wJwf nVT%U#9MVu ] }wdFn-z\N繨9p箆<X-(~Qfg>@KADCŒ=7.33*!5azNl`RC7bI/#<5$ L¯ %vx} 3;,2nK5ZCH"͗]HSܺ2̀`6pm2S rιR\Ƃڻ%Ʋ{Na Q_tj%7LBp(-cXN0ٲ4D8kGe;u0 UyȬ: $85#GiRZjA#_YIҁܙD{qB(enP-5ޟ=ة?t&ի}ic6I]u\$N,;Ӳ'tiގ ZRBț T"/q eۉzH)znҩ t4ihP k7u{Ȳp7" r;bcv rp\G,W X$Y6 %:&^ٙ cHz֯a%Vޡ#^0*A1< Xm9bJ^.(NJy;trBEAvy bYTp*MީqO8&~D}yBN/94ͣmg@ً KД?y X#صc5Ӆ%o.sniӨ,PLիT LBBH/:!]2Y6\8$qؐl4ۚl9y((~Jocፚ .;X }vglUˬp1OɊ\6QqB5l٘e Ýlq5sU2)Pj^sWn bC!>~2wGZ/.s91]ck64!LB4,n'-e{ Z~;"X2ơh^.xe#0;-vF,)ؐ oTwe{}@ɮ5 Mz -n~кFL<\mposB Izo;dO{+A-7gl8T&*=(ڜ8#OYWXS Hx$+{Bќ]/8 vxSRDIOZ>qQ1BM1/CbA8a= 5@^&?y#]F1U"GI)۳/u 4Gmuiڻ{i0y3({M:;6m>?6&i@Zo- &!'OBW\5Qѷl-=8.X [Czv{,d8`}) ܯ4 &[ipa,6PCU@u~c&soS&7=MݶyVS%Z`97[/XPa,0xʅ.9Oa9k_l7%69 }@u۱!J4*_" xϳA4fU}!a0I_D>EώӴ03E3TX0sq53Ȫ;M< 7DP][7YEZGI '^,H[rK̡`iv6ٴMj ʲVa A#tR۳$Gy`!J(Vos`T~\(Wkśq^C؛[ٓ^ * yEX QT!!q2Fn˃~zr=-,6S$-NU%Lt!;D9'.V&4n/C|skFX$wM>|N sC+[ !K`or!$G(5)6Emؿ {/PpL6sr>,H[\v;DЕpsRAeѭ;,UG ;K_aub}̳ߡu0LWW 9x$ #Ԣvc/Y>oRok!zoQqC7IEX !zV\E1R~g,V` }jŵ9M曣 y2\݅BK@>׸+@-ʹKVPiF$D.bV a Q_J]KV}? ꮩ˃JKiy`co0(Fj_bbqH,G<7"ir}2GӘ(sG;_;ч՚%5a;EO=x'udҖL[ʱO:d%THj\S5ml˼뒠Fu/q~JГ#EOgBQpcϴ|-9C3M jaPrX.ŧZ6]C7 k*q;#n['Gygi[K }NX4mOmRnꔶ>fp]uKrn=)x 6l4!%+QgQ@mb=mhqP8oŭ j ^~aǭLJT-\pu9h¨D=( c]v7 -etz\M-3<yS4ZuXפЩGNKB hEEǛx^!LSnkV |>GkDhCg[ݮ|EdU5^9z^h`e~8$Cٻ4e! <'|w(-`T$p\)j3+7hヨԑN{eV﷋?6tCV}: Kh_v*k02+Ս +q"u$py{맇/+P dR_aT wWN}p.IAC;HmK#80fzV=qh7Ă}@ylnA>D~"W7]c2}JD n fRpLH+3c\hu>exO#3m1z(\ KGF?]C kURewK{>F;;iXJ1n,}<bEbi]eF"Y߈6H4aMbٰ ^x5RH^ò2ib>8A""rݜatY91sn:(sFC}{Up *;ZR?.L 52m 5O~)LџmPu[VjG;A)7D P$?a'aG ќ/BfX!ǴͺSb$8ьiѪwC:F׃¦Tly8>TFUdTUh!LZ(FƒY>…>9 }bnb3€=n67$a"om0^󙸹u@v۵3$deF!G#In3#te 쇴wX|աL" /} [!N {41i d1j!d$|pC䠼Gǫ6X%-aˇo|`E^Mn3Y`q:/m;``n|5?2_3T \ݠxfPqEn-C k*N]H_?h^7CW9i>ڵƋiKD#12X2ݘ sR }Dj]!YU7۾1\\yaqBdZPg Yga)'OE hJM3 |)ZnJF >sEa\ :k6Da|?ײtS*9"Y=!m3:U+WKQfD~c_^#v\[D cU(\\h~ra}"O  eF8{c Hp9D<rW02LAr̅F%b?ӊmk-OC='Z%xc[j5Uv(zwHmw7H|Oư狗41r4hYS[4(jG|$יt@ƅ2ZS .tHMYhhFrthgRmw:[B͏|L.%!?^)9N^-{fr &hcgUr$OFs}NG%n=v6UI ;pBPV$6Shr&d)k*Tl㔢׿EB&ܗ^n9Q$wm$]}]~An7Ŷ{ jH(3& 챛}V՗ ֤cBktсٺ,mݔ\<|=HhV@"n(7BϮ/肜Y,+p\时W1V[l5vK:>*5tTVb=?YYoI/\Xx%clʾX@_q(h[*< ..IXֻv߷~e/NM&ȑe5[?lЇfnu-yM,óg 5z"W,I(ԏwRn6p PJC.j. QX.CոeJE\~DJfHEEvΧT% } oCLǫ}2MkzRFj| ~;>2?ݿ[\7m[_} >onMӛ D  ?X%Ik= NH4׷ )uߓЦk>Ff'&AؕꥉB]z).WrQҋSEY4C'FELpnzpV:d]RPAd0B=s( YJ{zrMO;Mv'*wM}Q>c٢gA;g`ݗ5vok%.c &a˲ 椳I|$A7s\KW{"`u%kCTye(_G/.B8]@JX5 |'F$G.#m /. +UMǨDװx'`Z6+t .*NOE/:P1}c`yk@TOMW~ EF["|G>%#DULHͅƍ:Hz^IaoM0ds{{PY8>z^WBjhfk' Aq(\iJy۵,lY,ЧW`wqXW1y{1ВU59Ա!8s=&%s? ,(8&lEiޘ1[ Զ6Wof?ԃfPJ+ucGޠQ%C[SƼ0]"TݘL߉0j!)4 E 7% U2Y3F$8QZQTE@$a W[vN*em])FLe|Ԝ>]X0"$QkgGJ3RfqRk^V"pѨt^A9{rXKg2ZԧYމ{5iW}yZ{3Bt;@Ln~̷@piz+ 2˖؇hK^:zʔ/#PNV3 !7T Ǚ}q!Ԩf^e5~_jFp8wm ;>nCnˡ*Th[k]!H3b6t6++d(#h9.A*o{?ACNv&p̡\0xQOvb#JAn1|̦$"Ϙ=u+:|ID/(g=[ՙLu9ERF%xT~6ěTWohkP ,Bv1cO8U<A`wiz̞I^C;W"aВjZL>O%^ϳOƟ)ذ}&UK\ziӂ9eL3c GhߐG  sZF;ѷbڙb3gG^c6#iN#bMl3)\%7Mם9$DXm륷o;V(Z@ɚ!RcEBd'밲Fn\3 PS8hGbc4X]rfƽaȁ!QWXGoVS>IYP(I p]4/xh3h \{IBg)5HoeC5XqaFJHlڜ / =/ډ44'}ab@ DG80%N(XTjf"0E_ ؕL:O[lj^Ӌ'ӝ|/>mcKY``n  gI* ^vHd@=/>G!ߋhchYn}8ULz`es*jXR"W"ďf.H Æt>?6HEȖ^8Ѧ_F q,PG#p:AN1 $A𻻬wNGiTˁhw#-2c*ΔГ+hcJ\&V ݝ˟+cyy 77:_ ifj>ƅO&P9]yֵvnഽ :1 P $)kMff8Ig8b*eIeBqrlA\ԣ &Cd?}v G,ףlW^w`'0̓\kZUI6#(uYDnjprg;zdzU9)9$QDjO[<G\;£MuA33WdI7 FAm}R,)-$}aI;|\Q q_CҪr~;x~`D}w<;;:yƹ7Q}kD 0qfCF/rU r^w]rٚD\\ ^X)!N0ꘊ8hddvoX>l%ukNjnW4PG ֳN(fve|M=(tISˏ}˱ar Aص@tiK6)RMR=d345r5$@ Y4E5˖C7L0_K@'{,h%Mebn#s?fkT=))%'$  H4e%p׿<Γj^L}Xd|fR,Вh(j#WC&я"{P*aק"%+&SY6@P0_l[LK,rv7Þ)޷ 6\q'#g0Z-Qi<( $DҘ:S{O?;~\9bVZY S5{8VT9F ǖҔϳBSmWڼltqϢ'Ы.cbᑠZfz:n7o1Tx}t혉ZcVeBa*k:}L%$.% ?PoFl6ћMTUq 2w`ng:rYv!oh`>e#&EOU.¸D5q{2_QP4ґx47[{pud,5PУc w)ViO_Ů#;c ~#'?5NJGe$Kd "oxET!ak[o%I&ɸ+'+ 0oX x/g_' $HTAӔQ*&-kz/v([\=QM$"~z9w_}BJ[ *9{0bGjn[HpQ<(G 1Aas!A\`6pfݺLb/v~q1R= <!Cc(&c!"ͥ&(p2[<㞮$,!"w1& hbnjY % 1"vvŔv~j1QЈie'g]6ϽОW!Xg݃35E;Z 9m@ RJ G'G& [vj1<:C0w;ځ昉]%70 ر4b5&{(\|m*=e}UPClKoo;# cr֌=x=p3|.O8A-2r~LEf$nb_*dA=#p3bz[DyPrz& q PfIJw=B0{v1 h v2)`ÿ 4b!dm JEz0o-cl[i%S!3ͮ/YUK3Cڞ.`'h9 @`p G{6EBJ}?|G32?E\s1#hY'5(fw/ꌵƅԍpdGWi.,^S+wxX~@c%mNcrrzm%} W|zd]8 ;@F%&Z\u|A_I[X(1=/.8mfa$iPsx!BP\BWCv >-dϖդB'(VOhYCKq<4C8 $%!1lF @ ^Έ>H~^_GǕ:} pD|w=[13 f%7Oޘݎ,HWDB/p*Vx6>v14ZXjڞƙ+|9{b{69`۝s|D> iC?<6l5 HzG9b媥?ϰ1E#K\mT51O8irzdfޘmx5 ᔲ pC9v)3k&.N'L'B .`uFcPf&f(ކycY19eiz yb!,?%$rNq9c8o08CTdx2&?v\xVAEѽ3OA(fEOŠZn{Ƞ \Tm6^ȳGD׹oPE4qvuOF !jX%9`͠x(܁>V+=r Jc|aqp*5O;lU7V"(~_/D;ȁd@)L\fkd]a[fvTkn,,g%<2ڻ1%,]?8F!p@ * |<%ƴ@VFyOw6 { %G)N-`OV0#Jr#!M.WS堵֍I ONJPylB;u΃±fWP;XMsGrreգZHH+ }WMK?epJC`PG{icvn(!o\-Gը]rΉ(358LĈӧQV= ?wH`*&pD)f<*Yn Ǖpkq*V4uYGrPdԒٕR8O#6ĎMk/< 88):+G'KQUv\l遹Y- ͉T)MYDT&N'`k'kHms'4]|OKpg<녁z4d$F!"BybOVh構,iitD~YlηKhi`t{i=GA«5V<ݻqy/N^dWJ*Ywb8 |l&:u_Ν@ 駵N 9d* NA|z&j yk >̿%9_j9o?nstҨ1׽ ?ZP>Bss@GҚbicsuVA9f?zmab0."­}3@Z ZE_.t\qLJ}UPO)U &uZQ]?b&%fз/ڶhZ~-M;ԂCxb}JtҶx}DH9mUȈrU~Ig`kY5ʞNӻH-sX6ÜZ+Ȓɸe7Ƭ,ljEվ\Z$ G įp{`z ʳ9,ճV{٢ &-R!q"Ng_i ?sƵobV'M{2oBt5J8^`9v3Nws*Oa>Q7`dFfφc/ku_8.bYk$a3J#{@RO{8s6p<5e-">ev0RI'`n!Ù)tENŀMaPٵGlunJgB;>yǎ%d`2с ]`eȟE}sGp)N`}L"]6J;sOC%"N;\;d fO[cݺ$Syl p6`&Sg ŜcvO4c8e8Tɔ} F[٬X)<)ad%>X+"vE{V-ύwV,%g4z$5sxѤlksKH vYm23ڨe(Zڕ=Bt!N7-u55wv`*D5L2Ak8 2"F@k t~]Pd(8'DCvZX ;]f*Q2U49On?V;o.Fy=gJZHA V1%0_S>v[ωfDwaYY"`L::ŗE3i *Oob dͳ_C2K*[=n6G;(E2!M*=,P-K ĝmM#VeZ'sVxۂK'oYm19Dqxf'w#M['HbFTŗ}C0Q>S>o>ÁTЎAa}m ,Zs0}{$L!`C .˗́j!YeUW =Pxs{(BA2h!;ة At_-FJ`'- $Z b0miWa2Pݩi'O@hԲ5F7AA ^ZcrB_Lt@jS!< :qՖ|-EtWF$ݡ&2Ӓ{9 U\T /DĆDQHjLġ*Snہ\_H{P\ZW]1'+4QoK;[6υv@++ʏ_U=1z wA16ZG>oUW-dHMp#mʋ[L-{bHe"p':$PSHeHfK]ü:Vqvk0%&CnpNB׮]eZw+ؾًA"ywo΂Tci~mla g:6 òAU#3Bӵ7S$E#y(yt)SLE=Ywylql~|0܈;|6%ѡRC/ڷCyHve3.g/m؃fT\#[iX?:R+Яt9n.Ux=aQ!~TcۇiGH<2ntSپph2xA="HX^v^yjpk BcGRT/}8 ÚovڶIC#(TJVX EPvNtLNi_r6/ " :y2cL4H~0Zp/YPmAhʗwX+Ppj:Vb<>jEܫQla{4ޅ 9Al#Z T ?*T͉NM7V-n5Ц_%_͊ǂ#& @nZZd9N'T.F_%ẄM/zԊ$uΡ^Mo⅘ᕾԛ! E3`с.5Vso?L^ѾO")}P` :>&W S$y47hx`aajl rg* ]Rj+Yl |y؀1BHoi- *` Jeu0 姕2[1f'(R19 */1 y"vSa4l,7IL*g8lژ|Jh<ŧ;qD5cߐv"z7pDksK.L$,_ 4)?,TkvT>|኶auned,#ߣv$%m4υgO lP3I}cCh+ +#|VgwAz?GEŀΏ]w~$A,GAϜ!aY V_;N>e٩yG40 ^ckr,@mu}= 4vCdOpӭR̰jNgĒZ!v1#0C;9be a1[ Wnv!*m~Zr[7/M0lXƺ7L0le QφEs%Z`+ ?Ufc$G.]6 !] BhTLφ ^8$ 8 e9:@9\t٫g;~ls&:qa'؄<49~%FYPKr8>a[D%myf> UjՋ}9lT~8͍o\^QW85 m"o:/[$hy)j5ӹ(%ϲcCJ'r+OA Un5^~w S;uK^[u--'Airʀ9+mq`OCc! +M!-v\o3%a{uraQk@U!(B4~u^>S\Hl@8Wy4CWU60FG 5$:XPZ?$"- (f)HW1@L!OY!jt\pJ|b[]puWJPFO#\U ˍε켮1X"fYsUW.=ّn!(b蛂SuZ6-n\-:S|J͙.1}vF:… td)vw.w®gSE*P鍫vPrrP` Lwaa`H#Mm=iKe[H~gw:Ɠ^yߠ ۬%8zF^Z}Tfhd_!r Ǒ;mA!i@eu*!O8 N=PcXZ24D_.T>RL6WoٶT.jW#@)|f[ub 2m "Ag&Oe|×ocF cl!-Uf]y_>1H&ag̀61~.qT} #VMj30CS'sjٸט'Y؜y!=54"Pߴz,/w lFcKxAJI rk!"b&Y '}tC˾Y/uփܧ97sMP8%%0*j ( C{*^`+dܛJXH.l Ao>Jaڢgf$gZRV]m_ŝBV;mx#i>k̺G{|BXs/LZfd:x6\!%?-cF:3N}e{76Kܡ*ju̦0M}ݩ,=N)a\mQZ{+ $ѕ:R=q*FpHt׷͆C`PwL3,kY AQ ơ5 gM[p38tkG h}n;WɚKDWtwŎ7{&%YڻcO1WۑbK)ZUjЩ^򈱯~H B4G%剮7Ƹ2i!vI+{.8^fp(.x 0wTO,HmVMB #kkMz56)@ҧ r&nDº/nh;У 6/Kh,E_?rVEg߭%j;H,o(%P{}2U%U5p(RFJ\M$z9*JZ[cUU ,8y.?E!_5_*#t4b2j\,21F`a=fW*.߽.a!-- = ϼbAP`~:WCZbN?=湼]~}=ߞz- 0ۛT:+8|(QQ6w7 W-\p9xhCAhK6{=܀eP7nE`y?^ y BeLh\ Gox1"Ty@q Je(3$k[_KTb/RPnBbOAS(#nq{U-"Pz;j&'BS] b*ɏC90e8~:Fw Ʌ7e16zswgVyFn|T.Wqy0{V`qAuu2b&)N~_E1oCJ`/G!ч#npU@{mG4`y?\asKVoM*[^Itf5MIFa>YJ's[$ӾZ+!RM͋VR:$J}X4.QKP.DjC}tedӲ' k`uㄥ yL\|b_Q(MgH2-B?2qx4M]yؤJଙR<)#db\;ڡӄ{G\%Uz_5gީY,0+cA"V>[%zɾ3ste(ўuH &3#(N]yhK0D/ , i)-'I&[V3|"غu[[mPl)A~>MʚQ*)ϔ@zuk d.9a2d`p|]QtjoZfa%wJP3)Z5 G%6jpW(1"hI4tА zʧ5TYT4wQX&[ vi2Gmʯ'f-x'wRP{ZN8JCh% ֟}Bfaϐ XNd¿mxagTf8iH9]?YU\/R䴤 X*Ͳ`c߅l >>0/Jޫ0Q0!0!έřkLhaQGX,u= EoNM ng1d^+IV-/V\+ĩZbo m:%B@#07 #&grw:Ù6A 'd^&X^k!V@r;T)3grlh廊8ښ hlx)S|ׂUۚ5[;/Mie}y3+{of˖.#ut[SD}:27~xa̸J<ϻA۴T"=s`"e nͤdnC(.7 \lt?~n4k@v֗K(ޡN<7eJWf׶wQ؛5F|i ÙS/e^&T/[\ PX;[(y4WF[7 4 |2Ҿ _+U@ ЕyIT'jb&?:7d:9pZF#{IQglGl0l\J`_ĠӇY@+_sB8>@Z M5-30yyoT/r`~8d(AZ=A;2a6c$Q/KmkѮ |d=V^i‡og8æS|]%qN0}e/wR+ЭW=hRj%xF"tVO8Њ(tvB q@$E'2$nup3iLP?3ֹrMP=Ӹ1}/'ǽۤ 3\_0s=ۣK@xըWŃ %Ld 5 igIcvC(ajбQ܅T%;k/S!1WGlp(tp{`Ċu~00WMxiyY L|zTL9&eI3!!V[;#/;x/89+d-O~3[Z.ka.Q#\R+m8Gn0+ {GM,!/8Q_#[ uUI`OwS=O%*6tᒕj:eq,[R-VT?6 ) `ռ {MWM#:EQnnp^zi GޥxwxA6a2~>@øqI<W9/3 =EpCO"ª/LmΤg*ɾ* WZqfȋѢz/@Ҕ2%ռJĪH9xDx!nH;GVHu^_8o@ 8+PBjnvK'Qu5۱j~!-(;fEDM&}\h-@Si,id|nX,{r6suk :hF[J^f BnA1g5Wg )!2[7?mNR.Cr={5gQKA8>#n]Pvkx?%+Ѽ qtz՜gUh.>#q;C>N(pc?VkGrMlrwtz yϬ3Z6+=GzGR΅ٌ6mYI;.qK$*m)I'4,\yXj[jE+\C@;D ISH܆C@+YŵE*j݊T,weQ_xh|} lX&& Zr/[1 :N:sdx4sz4n-ml'~ $El!T)#-ZrPKτ߸N@dgL/9q3jrx)lǥRLar d2 ["pfGb.VFAkseTq1C9{b/' D`l!baC ځanz.'cˏsz/ L+G̴ng^85J!(@{]Uh)Mf]M ҼTiceu|! tAS/oy{IQ*4qt*Y tH;n)6!-E@vHtcj/βbJiif/Ҳ(cJZ,ې]<䎔Mj#v*~ΩQ򊮬@\w.YJWQ'c*;kK@§f/Pn&e1VEL4;X⮮{亣}bZ73ɑz0s*" 3 Y`_diBHE4k^>EdxR)1]IjpбrKnΓ,YW_2s%-H+i=yy*%U2>[;f\GCdhKH1FMT#yJ@@OT5*`bzRR$ڂl4?2Qd^fQ@Mգw)b|Kg[/ORE)dGC#2MbѺ(>"i$N2=㔪9ŽEOBR4_!mG3u侙"gW9%Mz71bzj09z׎Ȃ5 V[]'r?WWVgJxpreIJNUDxvlϏc}/i.KOVh-λC\i󆜀^{K{h=uت6)G^ҹy|0zRG>0$)C6myi\V!A A")?L-ϼ^^-d7`5QŪ!qnl҃Z9nM5Pf/4u'B*Mv'\Tuxg|l3)B qNB7&蓼͘bf1 _T k5WMJEQgesܿ(QxW*H$$R//qTvH&^bniZ3А}`Bkl7#O1Ի*EtwUU F w)}LB*\௠ sG Ez.YBaW`}Fז]U!So+Զ&Aqb[ y+tvp>XJKޘZo OPw/!Y%3TG>0^@_qP/Ex1[J%&}(raXz䗬y<;UH*Z2Y|(}bG(ď'`/*pwM#eNrj];rύH)+Ûh܌) "P ">3/Ne)*^J_ omp4 J5h>Z+ =&֭DRt\PX1,i 23Θ9s'H.l>#࿾ĥ  YJ@5C|2o<f# gvyl X,h3{P('&U?ͥI\?zd ?t0T?xe:k)!F^j&NAw~ *uQ;w9= ZzQ!rӹe&18s0~^AOFI`yW),1ߕn22&P']LaG ,]*cyMcdI(ltoQ/ϓDŽZW!5-idEU^18oޑ-틪1j4p=n{?,y8Qܭ~]0ɨAZitSmDG+n%b9ګs3`z7&mv]w"+(\]ud_ Ap@iCn9 Xol&4n?Hc)0||D#; HJH5Q \J8Mh@_soߠ+&I)Pﶜo[$!Yʠ2> zIx>x"A\2)ޞc Y'3aM'g BL^--qi'd|,ןp^*D.a+_]iUpt#ͤ(g,O~a㩮,C_[+@2Cj)F9FfuTdL-߇C}BMK֡8px%>KrDEtd@WRZ.C 2APNzJ E/`˜kf̉>'h$Ҟ=` ;{Q4bNjte˧kPdE|+D~nzӔ/GFA 핣;sz#vF{\"DnVhQ,oRj@=Uwj^`WJKK'>ok%z #.p/(9n@)w0xܣOb]77:m_G53<]|?+=0Yla&~3 "њ2mbp;Di1Y`9*Or*I ]{^ErN ,#RܶȮodXl_֏C,YLuqQ =ȉrhP׵Qԟ3E( vnuhzd@3 (@[>kmEYe*[bZ(412#!Y_|Jd|6%,sG V5FP14m?j ;ӻ;P=@-k6qkCtJqx\e=" %Y2W:y8{K{; Z~c#6NZ!Dmjfg[b>yZPs05Bw.0x B-DdX3 zUpמlOXe(|uATHsobN7w;El%!ЍG$(;W QXcUQ(ӑ+㸫V?Z JZ8C Z)V;ב9l!TW0X8>IS|1P 0@=ˉ3s/FPC?Bҩ>Hiɭ F`rNsSM27A`p2wc* #3?%U߯c M%?+%))hK3Mmcv<A'EG"5oU~$5W+C:ŝ&͂YBT֏Hp9E;  X qBcE;.~`Ix 1OuLFf[¤z]'I*`WFa˓2W66piLʋډ6Ek@|#@gVz Lpm{wB2k@F^(FJ=@O~,Ԗ6) 2p֐k1GHS;+./bQ5c7yhw;V|p9W9mgWY'AiJZ`~0>=䩔C활 =̓V`nXH[v27Dlk{ 4k_gS_Yŵޅ{$.F#!rYmuP" Y,j!@neRM-\ICΟBA=$,R^kNAսh(@ܽg75dӹa7̥Ee]rJw01k&;}*<߾!"j(bqš_ ~K#ʥ͎)~N&^ g{mu׍C!X$bX"a?cj§qwn nԷ#5fpcC\nxO=7+ lf@OH ]5k$.7SľZКu}y}dG̖<_,4Lwi*,7] o ݰ9⦉g0Τz_g#M_ԩ}J DXWQƦhuW g>/ys3ɠۑp} 3PC3Il|nD' x$xv"[efVE9a%/@ϳ?'^SƄ[YbH W(ؐWOn'd a)Mfje`_b?8myw0Ea.  >CHy_iCHs[T+5؎Icp@-Ѣx$x؆Ɏ >E\wW&R&.s ."+JpPoP@ӯ1c>`N'>|0ݨzJJݱfX"!h E~LjiX|'36CjuC~t¯Âvj/Ʒ?g0mbJC3}.V&ܰFrR.i{Ǽ%:*{=QLxJ.[A# (5)]h'iXg0 {8i'p⍰7v͟C2ӉM!dpvq8ŝ$+`HB[xO I .)+]m{^6hJtk Ӌ$EI'7֧&?t rJZ;X)(ɳt; >c'R[:)d2{@=6'hn@+׺LTM:CDj?jT7TQ5K~z}{w_mP,<~8FFp'eta ^$+̱Lz&VV hڽ侎/ Zd5 5=^bz.chV'ѻ(+)cqHUʋ3{(3 uY#}4W0Ș2xG%#H5;\g|rAk"8c+կ92)9$t]6*,Ѧ=udZ#|t}scU < PTZ{0a P\Rex3ٿFG.ji.F&y$l^mf<;ARznMosK0׭+Œk|٠ 2oO0mZ4Bc«i3ue+ckwNuShLptqmzUȧ;#l@|"|^}K6,Bܚ&+4Dfqhʺޑ<a>7󁡅`5)࿚;^8a^ I:aP _0 xR29`vgz<\*4F KHB*`@+;u\ßgK#Vw|((?IOuҗz Xs|]Dz5zZ( vr:%Uէ^ΌiX C;g%dK \z-7oT 5&{ ` حj}4PXiџ.81RK@/7b@n=f$ٝv\qL3Id&<+_k}X/jx{} i`4wB7:5)q88{@Ҟ[Xfׯ/5>Ms||PRu0$i`MSأYUl_*,B4 mYu@F\ 1$d`ߔ tr9_aLC+h։mѿ<1q&.j>Q$qҚi[Qʙ5#yծN[oN K>Ɉݹ\Anu3ĘcaEṠ0X lsYp62b{)7b<hSݖ9 u%$%fO*kV2ku3 8b 3QP?)NУWx]ƕ~bӝ9Ju.+!P_ Hr#տ_ĝm眯|ʀS"LEV{!Ehg5.PpS^yG]vZ#mVp^\ ,D0CHXTB#3O/G(<+otČ؈N:&}}ݡi\lDւ3Xr3\+AwE hd|'a-QGaݿ␁Z,ډ!*ʼnDŽs[0e@v%/G?q'-=J[_}׎n'"J}qf!ޑzohH*` ș',Akj;M+L 76Ay~{[G5 E91"fasxIk}T =0AR[m"C6d{S6$<lNn{Ů]{b׼8=jAsł܋=3y1Ml2V7Uq pfOh$(~TuVt¾f>nC-Ubó=ka3b%Ҍ ivD-qp%OHz.D1tteHoV ̛dcXYɈcŵ fz޴A;_lUXL畫Y#OeN&oRRJ&I-qԕ'  y.p{;1=1s!P&M0cX^=u(1lGNX:ZQz3wU E|xϪfb,٦D-͊JC=1Rأ:LH=T<2fzkfbVd[jR1\:h*eBìȁg]RaQuP!E6V!@;Er Yv (-VӘ PvQ]ܗ ]5SƜ`76#=M܃>m s}SPຎvc^6e9݀O&-coFQ&G]$!Z.2Fg)h4JfrqᅆD>a :0|Cxo\ M?ϴ&,9mz~Zڼ yQ g+hҁ-o{6ѮqU}Xl8rfg$C^4Mնg$A8Ӣ77RJ,W.NERJcܟno X54g0n9s |E9{femQer]eWbtth`2tb YhOX>kx zrE~F 8`:EP-bwժY^=K~n"`4Nq zZOaUSqŏOz˚H0t$P؀8pfh3pġ%W\8EGGq=-@֡"ۏ,Jd٫^AeUvfB/=a)"I#`YO9(:e1)R'x!.^JVוwmv'p5Vuz#qX9%E l,4TXgj9|9a3"{?[! S*|$?rHr3 );8 ZpJʒ"oV?UR4Ǎ5)XikO]N->R~waB7DU?\L`Hkc%9ī)rr}dF\߁"0|*:-*LfGqxŹQ]Lf3bƃX7֓WBB,s@{]FniG$ -ɦOQ`CIvI# ~motxрě rg&ȓaDT_' 8s =T[X7 z7̴|Zk=cD-h[>=:鰪ALw;=nڊcqϊRic:Yh5m-di%eO%d6odΒ9Lx+xuDl-Y)D:5^nk;˺O)}[蔷Vc>Y09+Mlbbn qʭ>dM>ʞ//FhN sgI mXnl6&3{5z[`'E1y% x{m# u'mԡ Vh"sư(| {{1@m zB fxր"s60$=A,N4-o:& xӄ CzۿVF.*6ej=6xI^{4+<4^1Lv1RʊwS$}OAhOØO5\W\ >aOf{UwRFiuL$dl< *%.ti$D;`1S]?ȅ.I5!qay@D ]-j"m0iļ l2bf$_R HTܐ"ab^ȮɷZ0AmUcRܛ6*6KG3~`[%DS^eD#Fs:-AXOחJN$7`a\LSt}=ݕDe d‚uC|=W,q[Hx +#jFT=&;z>׆|׽)2ԃU:ΨKkLo[{b6U6Ur6Y369@vu| \k]fL}ؽ.[qfyv@ƒ K8?- !zW4/1xivziQ9 ߴaOG$!xD4dI7ڝ$Tmr,o__MKˬCĴ $XXBj*0GX犋邾rqGYvZ Y E(AB㌿{N԰D}ňԣKگ$5[a>dβ(MoѼo_[;Yg@,kÙ<¼,2 _.O$ *ًm M(ZOHJ;_D3/dgeݴ'%7$ML>XY&:jINc$I1d#@gfECܟlR}chK{XEIu--tp+u E1`r>c˰Lev )#,KL9B7+1*(YWC̭-$eąT6/+ BƍCJ@MC@AieLU=&7hxMC,.-VHP&\;fF 6ح x~8i^iK>4Z=dXIGݶw~R5٭EXG" :m4eO~cْm߃;YrB)uM 2H2&<0PH=Q-EخN,s7! s1܁"|/#NƖIït5MCd3TQ!lE+6oGo&;ՙBIdPoW8٧7Ԯ+-wK8Qܲ9*>Mo@{@oVh^Abj 7M`[:"ZdN0Z`I6FqE $S Bwz0В:W%m* Dm:RGX ;'{קW.p}2lP(c`;BJE(#P[DQVO:N{n:۱kv$ߠ`GA6_Pq|MMg!ƥ#=ΐ?JF/_|LǕP"wQsY97R}_QF/W)n=蒱IFOgPysOɛ:>H/`RGꭣ ӽ,_d](D6}K+ S `وRCLu(p_dt*/q,7e& ;OC!&*>ڊ2B\U@ٺ:D^NrvJ7d_MZ CyLLzR4a`1a/̽t*:CHTz>ϡR}Łz0o6F]TX_&=g4'c'̦?cILbSz-tڒ޼rLGGtF5=X4Àv,R@QerW@>$p }oDѧx.!T.)⅐(7oTr <2X](*!2gwbQv>* /" sSSݙRa6 ۋ7:Dj_M@-b޽)vI1/S*W'9r(SʢRHфGR uѲ`?f7ۚ5  ?-hkLwP+g!ډ<Q˘~pH< r# =1QC߫K=3 I^e:?i ՗PpM/dr6ɈdogRǥ$qUtks Gh`l,JouUʻ'y.晶fɫz6 @["^j3\Py^N|{=9e  r[R/=+XoTV}S 66&&C"JVW"I נh$#6wb* {mLnܷ$53/@kNJqʋ"P=˹)+>Ia(ʿđjjo8n#v#^xlٝvU⚲y')TeQ\t- uORrcbhә`8\JYx/iw*ʏFaD C",̚#Wt : >@AekNK~ <)Ѥ {^!afr:Kߥ ^xblb9N)Vϸ)6^uMo7FP{K\rYETOPD톧UQb݈y+ngF?wUI#YrJɓԘ<t1.Kt:N+Qk7虘C gy˧SOiH=NjJqߟ`G0TjniKEV| ֗ul@0NL!Tk6y*ߧ N*6U;ohkWJS[zfk.dNb_*TCB,7At O˔nO*xoz]1!uKrm %EMLYh]Haݠ`E(SD' z*| imtz}ƄYm'C㫠*͐nn.{XlrioohkHv/!1HJiKzH37˟bT]zN L-yN$<ws&) 7ki)tۦةkSu, ?  X-cw> #ky!'I@/=yUF:wn7mTZ Prd7I[EY]=!r'bOz4, `b uG:v^'F}KxU/ZT-g7<XdF('Ej00GSKB`k6PJk9!"+Oc{A&5b6 79C:?]4 /$N++& nyaǮԵOICZ4b?W^ X3{_K3lP9NnOcHЍuDڂh257X;^)_ j=PJe`,GQ>h&wfUSnyQh{@ $Q0k-:ؓCL.{?@گ.0lg8Se~qG$Ab?"tzu|x9-@uڱ 0"kiK6$[6_4XUeS E~J\.IfݑÖ5-wTgX0I0逞IՌ0 RG+-FE?>0#+'ޭJZŤ8q[e(8ݜ#!ң^aq>o~:sr?Ÿ%Dr vZvc[BG38{C7o?s:>D6 Q<}0e9a/@[0=eCH9¸}> wк޿bTV; (Cm CjiqiHػ uE)41zR4_4˼#N$uƗt.8J4@G"?⠄{VJp gg9pVs~q J/jZvM 4 E$M8al_㨳xlfd(v(u5c+:PHHpW&e,KWy/IgoWvArT*E=45aWmMHXLVijڑ|H +֡&tҪ, ]%{0gb ϻX i&;JT^oH˶)2I!PAY;!H}m䘁mz;S?ЈoW 3O[)PÈC?_:9T4 p7=T4a8H6f~n&*P?j{CнTP JrBJcRDsPWIJCa=2K>^gb[!.I[J P8xj15H} p[ƨwn@ _ao$>(y‹ežE/~tdf (2/*N?̮`e"u1Nի\HI\"bF"1Y %?U"l GuÞ=| !?(΁ӡ;8r6ѪXE =,'QKPxkG%Mv_\_7[SU깐e ˍ6':3["vziH+I/lad& QOpx\ ɚD=wU0k_DJ\3Ϭ uꃗD>ZՀ+)V#.=m2TaEZ C]wu&*,hn/| \!iKEU]3yYKmPL?"glY}l ߉A*vBnϗÅy_ o%7Ja ΰc*÷x1spEe|UXA$vB&Bt#$4M&est&# JEL:kxSEj{BF7W0"#n Zϐ*0iΘ{QGl p~Gg:aIC^\=~֎폅"lQej; (cq?OzzTk۲+&D 9@r<A\}ཪY s6>z1Sή xNrQv?cv+̘&L09&)IViEȗ1,\1 ѷ$PfR=I):;ѺXxB@\( $5+Df$cǑmN̢_H-($bbGy?QG@ޔbVCe1͍[Ԓ[%H7us֝I~p疀;AlF¼H0Mkt_Z)Íx 1:a"7L\ R3[m;R%-'= CG@ɥ-`ϼس}idܔϕY/(ϥ<6NQ)'HH5K.+wE?:rڥ1c`.@]1dOJ8(,7D6=$.{wGqQ .Z2#,Y|-r؋ʝ+q9r?1Hʇ_lMz< Q8T=O! V%fګ DPP?0j02T5|FkK޵\l/7o Uܟ/v0P GI\ڠ1^,X2 3OZ2jN:VvK0rƉkcI7us^D𩃋Myu`E3m.v>i/=:{; x"!}/3}ak1<8ʎ\|!VbA§@/4>K-!/dcJ4 [\@ j*4}C7#&DNoe'[L+`9- cte"xLN1=|tRtsז1wX{:iڑ O6|%b}I#}5鄞nKkUf(; 0Jo5udٙ V34:+E̎D״tێ?_JE8H ]⛏'e7#= DVASKLKIǁxDvj+G 2%odz: r((1)Ȳ` <_F:QV`cdY#1dZc˯cl] |GeGMwaHe3Y?134lĆ@|((우I; ;es]YH}zSh-WHX %\?=}%@=4>q ڃ=#R;p!Χ+12rI]>{p.N,|$*ڤ嬉_()O>\<>5S{䏴$NŔW>ӂLg_k=nEJ#-Tݧ* r X޴<8^l߹}Xng][]{,#ymr3Fom=Q(ʡ6xQ $f򊸰uւq{ǐ_x\:#RBmAPTM\C(ÿgk:nV䓕Eg.ʺȕ#4U4SZ5t6Sі{Y%6 uFŸXnnvRK5/tS52˳U;}s.ҐywG Z1-pL @&5֤nZ̤Zan϶&qY, u{ ؚ(k a>,C4 S^VO?0(ң=]ٞqP mܔ=k v/f]bfw Wtei$o hvmgfw3 jP=AiV .=7fKx+vf$cgb%Ѝla$mT466ת,7N"CI6LlkiQ1t.?PhZ &bfMNDbCeXzQFEܷI!zi˛?WEH mdkM!NCwm)5lD>pϠd K%䛸'y嫕pWN`. qg! oen{o-&5ӌ{ c9zxN8_+hl0Pl Wpس-WR#YY.EQ7_hZG gA@_Q1w9PUcIJlh$v'kyB)Qү [@E1V0#jdx'}ְ/1'{a 5:)am 3"-`V*")Z4y>?6LfQsᓶh:o2qϾ߷ux2"޲l1=tI΍>z6(Fo#pXI5iV5eGB+CR!\w+47^^\y Jw Нhk Hz'iy%p{7}Rr_( hy u)i>5W IqU#=1_C$xRMT).ǴaFu F0z7q&B0gQE5^CUhG$)ew4 Aft?lIyl!d5XM DӛgtOpxn_X\a`bh~;ׁ%'>-='%հF`)S)o."5d;َ@;Ԝ0=-zzB4`}J6)4{ Kq{iA]i.vV >N{ )VP(]ޯ%%M1P}vMPJjDBJQRĻ6#cP 1JǾ _W=-Dlc6^2X91pC]#;FRܼ+#a!K g l OMGQrK4c$C~{)?'{+<)A1R2)-j-<7g98\ >7qQucBsC&/,J}'+td3gnsDɬ&,k5:Ak02%(ڳ.40&ar(Sl%Q[׈벿-x1 NhZ5hBOL^ٚңwx,'/0kX0I 5sSwk1bq~j dFmgv$q\;{n )պoCpi;ax*>,zi`NV>EgH ϙKEN7\Z~]e Op;Wxa-U2q=Ly]_&SVJByA8݆m|.٦Ϥ覉 !r0xְ15Y8lc^t'К ᤭3 CuUYWR-1w] 2+`EؑSkG S[W 6Rt ݎgfr S`_ft\MirxÊF!͢C:)< 4E}t)hsi?x^M!oA cE >5d94y\**T}_cn7{+3bΰm݅ 1ǗgU=Y^ p\uƀb]w:\*4N.g^bw7Up nHP j?# ix7g鯠W%-v⏖N\]Zb)07=h6O#tpYҨQKV?Ђ$L:)!Pv)=KK vXЫZg$w$:})Q"ui7JN]4d_;Fw cy8=#*`0FmGAik'@u8ނC-?[8x#ĭ+] exz4*:jR|!ױ]aP0]YEҦC'1Nj^5pU&%7@UZXcj".u-Q X*$LLK>f nB g3vRY1/>dB1t#_2XF!':,q@; +款<Kyۆf'a]ER1}B KXu }7雌HPYn#3A1u6 "#Bg۱ra=$([G [rsH\Q45uHI"/2)ji Пwɺ /6iwV9`~/$jGzJGV_E ޙnYgd{h?$Y%};fUE㆗ȹT+AO&T]#8bcPfjȻƁ G札-USwFWiCJDpP6XR&`8//޵,.Z=rS'9mZkozDG+L\&'"2rOjiI 7ܞƻ=!$zD l~;jLE=p#rȠӢiP|ܻ "R2\[1x_MZKٺ44RNrE2 yIg79Hrxo 6rƂ? Ϳmq߰r>+uS3##p]'GāXRIE;(4 \g 4X5P;+ v*WP;Ky7G@Wa6sMp_\=_!`,`ܱr F/("5 (N~@iFcd=9 Wa0oNdYe d2y|߲wSTh\R1a +%)ef\prm7[r'g~BDB̛ކkaUKzmۖlJ 4"=R WD==C{?p D`>EnR*: Y(Ṗ'+-Ԃ23LUTj;S;Wg5H'lz}e:uKUXKpK!K$)U3^ɯ8SL,*K'-tk8J`$#:9E;]* )t SN8Cy8ގ*4Q\CZ8Bh$Dϟ-bD)b\-2QM+Vo]yRT]v1O*!s-<,ֽ] l_kZ4\AfO-\Ksyx $33׼n9>,i'0hϖ1)aܾE2QRM чM^遠*oPհJ\;{NP]*U3xW@LzkBH,OY5W#_%G?*R|o3'jK";dzy9UM4U:?JƵl5]1oЕ{(&,G-!:w,Ars=K*d{.#p;2S,$ ù8ob4>vo Ib<Y;q,OPg8&Uݮv}h=]aOCW$ȴ $~norG#i ;"~tށPAd=S\RN!:tk*CnZLQmE@z:/K綏OzWm#g &e6qk);#soK{"kS]kh܂ }<fe6hD Kں [ }oZC{Xf1`pw{Y~x= "|R?iؙ`9n)v(4Ӻ^7GLBi?ԼJ|)B;:tT:o^)K\u6FLL[N%<*C_CK@5Jex*d꒒ֶ;3/Hm|kt'M0p;G u`fۜm)KV$vN7;wbo^(FW}`H~ KM/0\EDeM uU5Gca .&E+R1iX9/iIC[-'iJE&^Ð?|ӾԞtOUF9F*Qy*"_ޔ T; \KbћlW^ss~2hgO|6BJ4XQQ`!S@gxv̘hCfVQ۳%K?-.agyC=۲ #1Cx9 ePLfv0Gn_!+48R C2>޵-X`W0dw% $GR?cR($ *%Zձݧx1˃V9֝Fth0wK@E)יּ Le˶S& UT-̍m*)9?ټcݴP6Ư^͉+#U4KB ?-Å{Iy|/ry8 JD9d0 ;HЙ!eNNJޏXZo*IؤU ۣԆOSd&ȮPr+T\i;y:Ry B4/}uh"+x#Y09T&%}{A)Zs9=z+l rq<JА0W &q1ChӶ)zŰfW‹?*ҏpIo,t֒P,h0Vc^* n >+t{AG?́v#E֏>&1a;)xE43n-*Ãt ?H"RjԼB;?Q{ =TV}Q;hoKCU~8_$Nb 0jS\ \3}WL1ALI 'ĖWXuI1qA:%nߊˢ6}p.Fky(̻?l<f>A˵8{K y }ήv;[b>¾Te$$&nq{e$ia:.dIARanH<{}ݑ,>!è,3:Fe\kc63iCA` HhqZ$.Hٴj)Bu! Y`xf0ؚ+aL?h*+-씠1 `%̚ i$:NtN)B=dGTs) ~7䞕o͝w5yuYDAM80w+|2`5"bSANqE WqTOɧ`2j~y+MLzv3RDOu -i*,?E.1܆Aa- . $Cg[[M9JPF_uUJ$Ĵ|FD9[ݫpgnq,Db~Vt'z|̈́\LidS /n6\^\h4Rޫ/\zpQW%맗XmgxK i,PX`G"2mT ͱ.oZ_dL'Y!MsuW'9xc- nL?3 &A8S!X`\hgs~sP<4Xɘ`D<7 "-SQ] a**,}:bV*Dߺ'x>|~jEkSĸ$w`f"]{.7{ۓc_~ F:6tvG3) ̭P$n+u7p]KU"$kPq>s,\CU`Bpe{"s<+2'FB3>B YW8q.kJ(ŐwLbX5PL)(ߢIG]i(cG}Oȏio : Z-^B B.*Ʊ?O޺H wJ^A=n gRV {~]枽ck~ TDG[F@";:50BGr)#_B-w|ŔF6F40"raZL9A)O҈{c8aM`8!`e g7uG5n25#xo0J;DIL v"~2Knr(KuT5Sm])MٺsG=H%@tYX"e3F6}1JX,6/}-m3_0 d;hj>' `" X :=6X[WR̕Qug5L{w0@9~'_v-_5Jl(-uKrnρpQȽGBt=շY41G.X.F_$BT.e(6!&@|u_~C_$K9 d0:QfuLvOC/`R3Ĝ<ɬ33, ixҹ`mժޓM~($?Fl>oHJG:'rZ"@GEb$K P5) |& mX;ߛ$ūڽا9X~Ă5v?jY0Ų|7\b&wsRN!koq@g#}HRky!cZ:o@!b!)ǰeF,uxz;%hw 1$Ized *wf&pP*6"9' +Yi'\7c[h d|ѪYg2E$Wy;f6TmVIȕWGmSV%;J46nt!w!d*u(s0ToGرM@Nr$Xz4r?Hn7B,:x;-Hd!I߄If*ȯd-R&D3AI"ȝ3gȞE%Ilq sI[CT.씷(tb5hi&0# r3 < %sתY3wؖIMmg㌀e '7wa",I@ByZj|-t#OH8iЀP~!݂L]oT&"9C8Ev ͅil4atΎd_ݡгQ}aG5qBȡeδgc]+bWv|̖aMR`38%kI٢%V KCʇ]eoؑӔgEt Mu\˫'!22-frARҁ|kۢ c/*_mm׍6_U@GPyvn*S<`n!`=Л&oP9ek^; 'ʲ(_~fnHm}#Tg%svS N}*z<_bsjK~858B)$< i(XOXm6J36}5mm/,s.QF) nslE&n*6:B0jG `9}?tT ?qC*?;'䠉hyǨKg^Oϗ\ӜTйaZY*C%(g|/pi9P'_ڨW<NE[M#k,2#an ?@kiۣECTIs) !>5Y:ڼ_w9?4E$)vp 9 |dXiXHsN sKP׹VսR` ֶ*+`)TUGYޛ9ZTZ2R?kT,vDCI޲<>q';ջfO󃈌hDE+m譕#$)TqD Yln!aMq|=B8 .(sWHBe1oވoCn'aֶ4@AXbdð$^q3= @8 #KL:%u-&fL&(5E7dyn96礲i +ͰmlOeum:/x- v}eMfl'& ݑdǻ\=V'gfӠoČaЗb^O˜BlsbsJa2Ñ#UJ'7Wjw-+:M?$OqojY=<9p pΖ L>#Wx&! #޵n˦b1@D1vܠ]hnRgԥhSq^fm}AO#:Rac? cY9[{h,Qe[ǮR %2bn,PױVziYP3rU"7cC Z x1wj=uHi,N=z X0so *< Ry OyvFnec`]^T,6ڇJk)~c;%s*Zl}'`1վB!jЭuoGώq- a'ձL$ "XgsK)ꀴƒ". %o~Db_C{iS ;֕A%q<ٞ$5 #1o(b+FZJp-q4Վؔ4힊$/@?cFSJ̼'cb_%Q=ㆡR*OoS_!/o_ot.-$Zx#3Ky!a8=S 츥ğDEֳfUӱN4횟URɻycc-a45Ckxwɻ:KQڛ؁Se~=w,gb>w95̳TZXUowr,,~д4o) d}a9^ v8BU@52*od}t6vx.Wh(5@wZG0g^@E7!A칿"R|8=EG׏CNh7Nf5>;B-\ϟ [n-v6aՌh&%*1[1$ 18u)@t7|YKr?ػmHh/*qCϺbG$q_u1j=@͔!oZ}ٺƽ $zDZ}'ʛY ~/*/2,w$Bp*PĔ͑ ֬7qtoyvԟ4)A]ڥ:WPt֞p[fPUlU((*PϔȨ_>2c<+^l-Nڡ3v$U.M"&zD cOrɥ ZvP[ v1A:'ӽUUov@ω3-r¯@s$E^@i^0vi%-Ok=E1`Y9YDzto1n?*.sH`5 . Xd:h+P< { "b>1 0ВL'0hwM>y!qLRپS{;_\[١$t,!:PB@i|9:MsZh\aw_z32)|Ub^6,E 9ȅp>7~m~'5C&( ī\M&ܵliDd)́[ Z` ѥBA[n~ k&[ጾ/%B;Lc44[N]ϗ34~\p!RꌊGb_&&uvH _)v4S 돏ų\ϳ@ q~Yj%vz:\v5M,p&6Kr俿 t\ DB4)]}Z=vg_VXADHJ{8M_Pf( ̝@kZ/ 47fF, "\.ZRWGr>Zʅ^*\ܭ5dOykqImo0BG+OY&6%K7N%ڦ5-y+䢆5W4LGZ_2J'-($qswZ -S8`@K*[bZ$;jz7iL!j=2Vh$mv\i#2/dL.#I,@b\+x"ݎ!hozEArbc۬82!''0yu`P*cCF|~匑VG _=p?KLf2\ވ ne_?_yruitb_I*jgoC&nJ]Ԗa&db\B&会!0>,޴#:4"'N(`2S7Bo |b#BXCV_ 曩5sΪOO -a$)V 1 iVe1T~: }(Ϛ('#<1c=šȔW|L'ǴkxxK"o,7ߤzc*xF2T:;95 B~1-Og-(ʹ}+׼ 5D t=(<n_WɉX.s*zb5EWWhoiC񿥘YG=?&’ɯ~BRc"ay*%" b#`hjY~)v|9 EeTL^p"|Z_%ަ^bT5.j6:@k:Nnm L/+ryj[ۊ+u])N!*Utl܂9Ӈn_LpŐbM81o ҩUMM7Q[p^|qIOl;4.K -HqxSpoc2Aha )s!\$) XSNp2@f.bmN=FG <11﵋ZS#r58R#M}T=D#dX9^!Ð5L+|7O)9~SYGX EgPޢ/7Yv4pY9\<ڒ>(0K6_ 8GMv~ܥɽ-Q:`)ae'|uCn5tbZ=fZy"YT8sq{ŦUup,Ʒ[VҜf)J*F}we^|thzOSy*{; FÎ'H*`Nx^ b۞u-h-hu)#SrHRB] l2\Y=֫1&{-C4OƻYOl=A=?ۤ6*BcHY-eIf >o׷Rٺ;Jy^}HHze gM V_uD0e`__?W&G<:G !i| ")E;׮nfnWwu~-&_bC|Ăd A&֥bʌ=3y aS;."L}0g|YVwȄ'Ad sjM@t[5ub[ހ8%NW_L ^/jY{|}k6=Z7Y2:uuL#ʘ9VŹ1`CR{/_)\ ;dXh"5DYL4-L }V'#I" `jrht dɥ'Fs ht r_Q,w:T hFƭ+sS@̈xch5q)j #K:p]mBZ( 2P-Iq Q]>j@*%~̙0qft4|[;WlE˼fS)&N(C<B~=;ѲR L:Wq>Z\&< l8W-U<hzl6<"c*EQ[ Xf =ڈ6}('&A7|`sm ޢ KHRzI",A|z^IfYƍdt WתUvtp'HƑѕ?ׄ8c&F˳C FLᆟT^Ɛ#(t1w45q3IY_u.@)lk*pXk'VV5w|[4çk҈~2VjBKM-& ]bK~0yȅU_5"b˒~󪰴О~#5)cўtƫCl Kx_4Jt׵΋.^\N槉r3<C Ӥzv4X62^,IkU"It:}*X/{zZ@l7-x:m2slREwRՆX;Zk=ij" WE[gFG7dQピ>C%<08T$z{ |0vL,rÓ"!δ;WCs8P1ʒ|3ËeP5`>Щӯ(W`GG|/nfU/J,?WVpй&RJ[p"u,3#s. O͠- πR]mömQKk k}@g0-&z[X1&F+%E PK3Q}c&ɥ+y(8 #JW01l2 }𿄛5<gLFSolIQSwxFW;CҪ8bO^\YqOE1Bz}DqB=.WΰI9.,B- 7zL`=E6+7HqdY3 r> < SPݴΉCc7FR?aI)_,[6hqxqky-iuŖTL'onYS<SW``j2Xeȣ=פ~'?woe^ ZZ_ۮ\|OHseŸ0AK7wv-R]rZ@n' d@?ZcLUgGe[!R-'5N?K|^cыqrcyd68O{í (N[1QH1̼ٴZ q<+ mUFd xGR@ :y~,̙ueCO(e!:N77"4ߚ_K@ 򑈳p1T-P8H}|O?> L%0Nť@u njMwiݗh`>Bl\ˍ)-I+

]A5} Ekm?y˭63Xv1V#aWP'^9r0w,]<ڀ_w@Z22/G$b&+_V&j}TttVi"ҭX_Y]oVpuk}Vŏc|*p&;ϝr9CA_`/ 7wx9#TIBtEs֋m\#K^םKv ?-̄JVHFﱦE[aWT)ǜ ƏK\k討s./ 6Yss St%)~nTmc$הj<0X0;|D` AE&u)T`RɣVHҿK6~&YWES,‰[VMeE8]`FGA|T;qQ"m+͇@0Sixjӻۑ)LFJ|WgآWX7kec!y"rx nM45pR>zu;$F++3j ,i"*TTwD=.j8>"Ԫjc56~Ep(NO\ld,W25b@Sbm8!-'C_ 6텴҆b]OᎯh_*/>$s};gъ濰&UT\50wrw:ԟŌZ0$A3=POD\U;hp[E!eKqݼrɫSG^*kk@:ǟOZ2 s<'hɩ(m,S~)V616UHk_̖D)gu1Ggr|q8bVxʾF<%Gx~SF7L~L9dzȃtg:^ m)gZKzb h  WfqOaVox#'i (Iё5yB8M%ތ_4fE?i]]}CwzШ$Y춅#Mmv/}ʉb#?ґxXC7T@={7hGz^]ڝJw5"5ВgeH"H1Eӑt1"Lc-*s+(cTc9'F6>`oyXBbr)>oiRӉS}t’9>3\|TnV0+C`QzL~Tx(/ib{ {>\[Z8/b[_x&'U?3ԬFTsH]#d -`)_ӆfNiBN`r͏Eߨ{{lP^40 ("(#Q'L)~.guFggh*Vw#g0`#à}UUZτFN |-?Mk)Q1_L"oLkUP=̷3R$sxl?JT.+LOJ% ,E)r~\68r/KL34L^Bu/\`L 3l@H=dMs\LigP1a=4;ÏQf |1Yބ*p(̵,a< _,E` ˎzLD&UFPUL'm+87{-~ QW9V腔]_̒OI:X3Tuv(HXtwߘIo {H$Uy֨Bq#V857\YIoR̯*w$LdT8~\N' 3Y0IA{C=y]\N=5O:F\RIX"V;Օɱ}ހ=!N薸|f|6a[ essJxn @4^1ΩB_ۚMIJ;bvӗjJ'HRSVPPiJ 2UbbàMjfrd߱D2܌ۺtͮSN0 w ӃPVH Yf}Sp\@wEɍ`ΰK s\ |PƉ_y9+(MQ]W%xus$ӂUWȇKЁ__Vtd1ALֈ!+H@Ξ3IgFsz W X(7sֱ PŌ¾*ʋ ibEqDo: )Q'T="g|05ţu!<)7FtèSpXk[b./*ٌ7z^I.f]ra( yDli x0SA=DT#κ}V"/†SL1H)q'O=@ҮZщ*񎉄DQbb}nBV^_XNfRS{xDlu9XO+)nsތOݗP3 _.L!ݳ os"boޒQK. ̂{LVZrɦ(:I>^t◠P<_0E.\0vnS7.y7Zޒb~aG4IjxA[jSUGHw @ |M|L 49A>X nf&dM]с/f%Y틎DgYnV"(lzi파-5') T1ݏOC?%1ϫ؛R6uSR J̛Šк^i<9A041y8C*xtZ?~#~ŀDvw`΃7.e=hM {ifb=b_XF $Yn*TǠRɵ< ]maEn ?oΎm_ˋ|DP#c>Qf'ǣ,Þ$G.nHhC蕁4jHLC WOC |C>M-;T5>v- 3L!Ǐ.ь> akd(J]XAg $-u(r\DT> /KHxa7E |Ƃ&';ڼxLm=m i?ϨvmiD&H26Zk)J-`?/^a3 Q.JͬvLC(/PEdFDYNGPH}!B~0m@{9^9Z`;}yͽ0TOb0rf8&O6O(lPݘM7w{,-=Gm-Hqb2G~8և`r.\}tE> s@C6Ֆ &,j ~5| 8؛LjP4/vX04c۰Gx)r0 \QɭP zG6pA><N09mkQ[MZ)7b8jݰY%CS5ȿZY_ϼQZOM2NTN# c:l 9B]5LA-3P.asM!p)$f~p9;/8Og] 'ed0қܥ֩јCь-{N|)tngMea08k\^y|BFwv[8ldY/3d0.. εl~f2W0_wUT`/TBepbw,5Dmҗ;ٳ|8_W#o'Z\W41Xqi>Xu-jҟ8˖҅D2&Dr7Wy/|f z=d+uXR82qXxd~CWWO`۪^@޲">čmQ䝦XiW$GF6} hcK&R6QPylƘ}Rpɥymj`E9\̢8Waq\Kn:z%}Z.)Д| ?*{ti8qJ[ KWEijQ09 בYch@Ҥ.DDyU7sSa0hM?Ok 4wDf]DxIk8`IUyE k}]%w]/5! ~<UԼ+l.UWeu~$z>K * vbGE@{| _PKgOd&fDBUu :šIPPMb٠|h tΧB(@xU6^z$/]&{)Eʼn8_$9T3O$HM93LLmV1>Jɐ ͥ!H+yP Oi aoPxw@`ůbVzn87XU`tHyAk乩RP>FEHMUǍ^dBT=apP\&s#!*m,a^buF]1 TA2 X],Gqn UCE[`>2Zm1ˍ:tY_a.4b]U7_ deCQHd~quWmvo+V%clM18شd)۰;xkU)Qfw;yswt+J1@rW?/UyGdV>G,8M v(+$:ۇۉ^GK)-/gW.&w jR-ـD@"&/U6 >e% zS9_]՝oms.D @x~CA7Xxņ.S4{IBeU)++}*#>epT\)BI)ʢvBKG;QUv;5=Ψ"$b_Q+Q2uzj}LF7~U*3Ӳ2G@䚒j;_e} (42g2x.@1&#C9}ȹ}9]sr]7^q w3@a;+$/Te8 R*r05z q؎{DC{4bjC(tr9U7d\lP)Z@_=GfJ|b&Ei(n؊g4̍DL%q3t0Ic̤ {R!E ~j#DZ{ZvGJW@eNx,ԯOL#z3)h}. #ռS]YywP娥uFg]];"zxbc@vsͮpG&p² ց3aՄ68R+h|<'|o̬,,#}^IKwz&]ҞdoKVq>y@EGG7zGL-֗UjRܥ-<*} ;CnizREPH-l |[ֶ\W't^)FfKIG#4bwNT7ƈW`yzOJ6bAT=Ѳ'V#rýs}*߹%?RH $}4XaK0㬴8D^:P2& SZxx6!-S|eT M+P=8gJł>δfUpS1)+0uvmGL2ַD^EtnN2<Žu8M w:ARPwvێ,w -P?c##ʹ~f! /P_w,( @ Ar@@;ku"T2d]ydog 13L-U !QSAo}%hvs(bs/ɑ/?̬8Y{z )6HU<ЗVUܙ$ɺk4\uMp=Beq C7pa?=93mE3MӅ6w>jBVv{ΆPx Fo$-nӷ^HEaO[AĶ[6M4o+W"lS=N G?uv]3RB-b6fV~YӻW$=d51Sp?4T }B`qfSmx,Xv(=7hdC!X#C8MᚁʑY#(#2r{ A#Plaimj,~x9.rWb!Ek?9$=ZY:=qb3q'\NFg- nNrp`NS*i5} @}y" s sXKs_ҝ%G^FmֽȽz.Yy?oRoA/&-YרCwAV0x8-dG(y##y$ "B;^cRʁrA[gU9~V1vWW}%fCb:m/}GOPDL=ЙdpXx>~(5+sNY^ڤ>Y$]G 3_uCߓ 3N0v9?YKĔd/K)ۚn }  K~w6㴍\o.k`7#?KePK0U]Y 4T\&Pp<&<ค$lvRHfK 䳦z+0K QL,,vه }y[]v{; ӯ@3v|Cd%M5!NnHi ]/܅ {5C! %zd|D"֙kw6emBrj d TSs F3*\&\bV2Be{kbWQ踻Θ?ǠԘ\?yeSj賃ʔko Ix*+6'IYS^.xߚwg|ﳷ|WDo\HZqr tӟ&M6l/T(6+Tڀ>zA4dcPFJdZJa1l%/SSbͦv7eM(%גe:a8㜔p6Rb,Bzܼ-Pl}feAX+#%~}=Fp 'QL =ɜCKҁZq6ˤ &QR/}lY#5Y;d޼?jP[J 8US3l Qi-J DgHǛS/:[^ ʩp7>`{lƈZ2v#Vhj%zkn};gЀ4-kRaP]"| c) ik`;L^M!J|_ll~O|,Ւ2#7Mzi(2\ݺeLq+2)Ț w.,PB\Ct@Z$N %0Tt`~9Et#pcW5,-& IHRTUٴͯm¿JpT⬝|>w:h7Qgc?j\VK(Ms"D{(cqƒ'Ԑ`9yFP9QVn>g^AΠKr|ݦH3Ͷ@*Hw|OC( ՘bxb]9kI`h!҅.Ւe8.&F؛I*|>O D`Y*1ĎSVI{3cN P̓)˱C<$IGۻ S.#2Q6c{ߟǨrZpZ)=HZ+h@E:\M WiQW`¾7 dU6bsbwMcb}i3wiIE׶f@+PO_EX%/ XHŮdmF)2Y 4QC"߂^ ph3{'9m`A < "su V[+n,v24aye 5m#,*$k݃2{zmtzꌣ "ƭ#!;)vE0*Dmy ͍F\b [db\4t,С+qˌHG+FC &[]y<;\OClOz(;VYގ|fnt줧oa 0㿃]79jKxVZԣbvf AbU^SfDvnGӻ>C?-(sBpiA׃II-XZ?ITtLW{˲Qy cޢP,M"@CCe@لdOIqc}[jv+'?JB+໡UhG'6(Yrz @ᨘO wMRE"l@:qH=@3YIO%Ata 9Z yӐ=ALΰ=+AN}5*X-.s*ok Q}@*J\LO9MΦvE^:j6-a"]A<eY}0 ! UJ&MsNWZp>2Djap ӠrZ7{.evUv]Bmޡa'֐9sW$0}T%B|5¢wxM/LI `H@z$dL]>bEM oeIDܝɏUoWT~<6clDԀ[uCYE2VBZ nNLm&!R]3d0!VVd,5\>6"Mug Ss T-/[>gXג Pr!uS_.@)(W@ 0Ԙ WSͦ%uJ؂a&XẹK'$]~i~>(:٧bs4~ Ĭa'eT` ;@SI.,Ɨ<> v<(.gx nݮ`oB9 a3IBs쯘)* @f}Hy@,Y~@dsHԜh״6Ck|ULiB9CB op*Z|C5qʴ3JY)7QRH鮽d6Fv} m!{l-Bo-P)E6#(,2}҈*X&3QHVԽ7:`UPWrUFw=Ns:͑|\.?B|'H;/4f\ZWs>t*H0]a S#:(z0ooM^is$3?xfK[p7<.Gʌa{Btgve` 1pJ ٳq=FD!|D ^{ˡTn|-_ɶIL3YRr}ο; PmC:@@o/A첐-&]5Ͷ2V|@&f6mCCo$$@*FRبy:S|qKk8 Z~Nkd}Ԏ)*bGx"⿜h{9 0YMdd5-?et('J'?"[K ̆6S*E˒$Ib"$\H9' G zu&ְb{ 1ލE(\>ZLg:`3ZV"Y!SfmPi ,jKQRMӵԐ>g}K?J`"6֠V{z<]ڟc$Ү`J DE 3(D~xib jE1*ݞkst5le}Kǂ(+ǷfQy N=/g\-1Su jWvhE/!m=n8 <'bH뙟568:3tֹ r8D(1v aJN3A/7/91AUH2n\w6NRP p($]ߦ<߷iOnK+8AZ=OmD.ynjZCD1@ڹU/Hec/CZggcvL=L~$S-EW_0y+N},|?EbGT|Vbl}\P֧02n:|x,VO,U8l5jPN?^->[C.d尭XŖ=`R>-l- a`i93kS_O j9A>A[ZKicquJ8]^L]-v+IH}&uWAJ]i'0Pi)%p!i2&sp-xnR;f,ڵ 7 oLC~\!fFy=rK<Ǐ?ӵ8=çL}CA%_61i@z;+NWQ<;D/۴ҒɹYxJ)yE4ۚdr;-ʖ-vT 4z1BJ̝Z GO9N!f^f5jHza=n꒜4po>ץ翜nbѸqq2P6(];iPK>0t4@!."dzpvE?l.fcm,( { p#09~N3{Gjț |T"DgHsQ9sv:PhSKPSQ<kE;bh =U(Kb\K_ n7Quc1 m;mH#epdDy~鷊e:oh]wG?XQ"P).ORwit2\Y)t0 rϳqNqrmڳ~~B!b^4 )Z<0ƒ69oo o46)#r.곆7|odOCWʕ7wf6tZ/?ȌiUtQ u-ڶ&õ D*3x l:@Hes(FJ-,K]V`Hs)FAaf!!: Za 9Jnю@p5jʟ97^ 9eF82R]Pd HTƩބ|K_8PQd[1P` P'DQא/NNe@DbUqtR"A21Ƈ- 2vmX@D|?XTyƥ|y3NIi̱#ڑ?܄լv'aWs9ѻ|>'z3v%A;#&feώs˿_{mc' T w]BdeM[R.>'*թx"< %NfDHe/|V<AHI8o D[ɮtijCӉ,?l [f5.;9ܹȭäy%yc0<9  wPi۳dJ.&~Cv7Azf ݶgtDԿrWBxxcg_~Tu۰#6bX^S[ @Ǹc bغ@o;QL$CeSp:m6 )c]V TX%7߻S K0sLy5YwFUYI­T ~w_q>b. `jg3itFO~Z#Q, qIp]bH.xlIv9;^sM"T~ĨshIp]n_ /d+egS u \l#6<{Y($xNQƽܩLƌ'B'yT1R2Ycn)E"Tݻ0{=fW'N ֊dg%9LIREԖ[γnj7(ہcy)GdnHifLƒTJ?wP;teH ЋJWvcn:pK;Wi(֔՘a|F YRSMSwo}5ScOܾ2dsPokOj+ fF~i:d``g1b)۝Q/.++JN-[\]4/SZ9 ],Eו.qYJ3Pcv{ҔӨ,ڐoqO>};,WEBǀF hIɾN7,:Q :\>~NSNKT*A߮cф="ŹYn6eo !omꧼT}ѦQ6u{*2y(ldؼ0ìN>(q;pt\"w6}L>4<,g ܞ. <[6E+_xd"Y)wN&f':8W 짮8G'W}0Xh7!ˈAiPwQ=x1w@, @P"qd|UG=}*zDK҂ba "˜'#s87:Ԓ{~{NZUmDXP)=§J)^zzWa86z!z "WE+~#ȿ8H)|zn5qۭI]+](|ʬC3KaMf'(z#Cs+"4vMT)H 13ҡa z٪֧P#6>;g!s_2Uas4uIR]t>7#7T*l,E۲ /.vHhď?·u[qh+"~!0p T,L4ӆkN[Z <is)}=r\^*"6 /X+ērv%5>@^A~AɊ ;HfhjM醙zM<\l,MFN}ƋCJ<ՙ蚶B.䳥!@GTA+HVWur!{ YKph0~H&ET aJp0n>8l3Z;T `1)3CZ])\,XQlA˶E4 H_NJQG Ey4R%fBa f5_M5^R9; e&pB=Xq<*(1A[@oDs"<Nﲿ{SMhGN0(#ě8yYsiLР\#6u~ϋE12m:KG@FL=$]ǧjwԬzL>!9'D@'m='e $R"dtE~.ն4%܏2)ܐ6ERqڬqUxo[ɂbn D( %K>}7 BH>PĦvI'xQjxn>balaܗJĊ2OE"}ļAw-R!H,@u74.I kJVeh|ʥX3ì͏6.v""m+5Htԭs~>]DhS~gj^[]=s.Uu˫O:?tFx1:葉2Xpxt{㶡q, xN~CZOM~ƽ3uMhWɡ#9HH^]Z} 6 Ț-ۧHƆg@ 6/88l@ױP .*prp^&Fő%1z\߉O0(ym/ 5gr@@# p.SOx (%I)VHYbid `Z-PEA/*qqУW{FӍrO*θƥpZ1SXNx3Q2|{{ 5)z`Bcls{WdVQ<%2J/фѹ2&K#J¡ 7 Fp5i_ ;-I \Q 4ibBS1["NhϒGTbH4!FvL?hMK# Ƶ}=M`?ठ6q:YPn y"'rU_izZQziTvdd\Ŭt+0,!k0X HC8de Gg;f&0Y3A6-{'`h1j>㖳_椭a%50>hQrJҶ9Lq RMoZsoՂ;Zs7do#Acy2_ -V;ƯC]^ژ'Qk${i5-~L\ Ej_}ĦAF0pJ94jY9"fΩ0V);7'.an.ִUf >$Ϛ{4M~6q#mu>]L.U .T2[Ko`,bMo[)DV)x+{m"4Mj~ZO 18*q(.yش 7 g;JJ&Ǟ\`d=[NCH ,Iyhg aѤ(m>n^}f[e1TmXJGcHR6H$d5Ih|c&ktSؓľG?D_u8j`1hȲDuT=>.iD qdTV*oUV[NQ3+ l Wlm*+6W 20(RH#(ʷPҍ6N­W*1耭N+pBEwEaZ#T9p{AEZ$<`_1uVwE>e!6fT!7^HqB顨֟nnA&-;_6C4k?w >\&8?r^ـ ‰uXnOcr(CK0e eEId%Rp "E vՍۙ Dv"7EuN5T۶s#pouVެyV"akJﮤ| G@ߖBi#[\zx9"eaN>ߞ)$L[2U% X:X&UF ^@ݴϬD)ZZ2DPE.uK5Uqq8g#|%:ȂBCNWǫ'4|hy{p]iOT^Q#||J oɭ ڬ tc+´@U3Ohlbp.>묵5O ;gC+jhZJwi]ˁ1oF>1Rq#|Ԯ[}0:EKTѸ/iKlBv]O¡%1ԞG0|$o-r+$%e?gZO[{Suv;H1=v:BT4:ğ n>c##nj`j~O} Q<\c0Μ69׹d6OZ,;ddSthHĪE$]!f@|ФdSXu$U|h7ӬD|Kլ"8[5`ń1w:MwU]ſ3&E Y"9*OžSy$xv}qeX$b ap3}4@Ot AZU*sdӱִ~b,W'YV:AԊRjpO/+&`dd|85^VD?{O;#/al`9ψ] Y7GhJuҎB4)٫>]zuہ:(}Lf˻qPN1]]K O"RgMm.l{=;`]"G\50#FMME24(Sˎ&*gPo񔰇*a,?T|hJbY(gFjZ|D$إ_P?Ƙԫ$Xs"\%^ORDf{fpe=,ZKO"5H ٪91іѴ %F[N2Vz$j@8kŸo;Zal n8>l7^2@y-hP(.~6brUt,t}>,tb2Xo܌c UpH">Eh <{ucPO%eTKW/.vzOJo'*~FZI s9mP&GgуȢi\f#y\oG0cw(_.5ӔN4hzZ_U90jul[(XE E}AH1+A y>= :tT~yfbx蜭^@̆~e/tF4pŘ\5 O2L) E%0fd!Hv*x%NO#[M<89|/&S z/YAzAa&/':;%h[.WtI{In,bzwZ`^5m ,53g1ZwƗ G82jC[N[Ud+cRIOoS2r9vO:\ &f1xXUؑ+2࢞2ȬOL:G*ڛySy!iD{BŽDgC wbQqi>Rmo@߬J"^8~g~>b_XwM,Їi4[K?X鏓F&7ٻm I7bqsIdgr9b `3L4H(' 2$!A,XYҩjͷ~u vkaxk"΍ߐ5itwe6#([Av )-),Z9y +zEsr%@B^[&]P/oB"$G>9G$>$9!%pB[|}X4%Y*;QNk25qN܁ ru[b22mvuxLǫ.3MY;8C7ͭ>k;d.BYEy!\U;wC5Ovnf9~z=Gc1/c:i=0ecWOyTm7whf/|T󳓷|`';r2ĠvК_W(=9rEiWIUQޢH?&]=BݶP\e M/͐}y}M쇃tE.ӫ/Hî[A8 8&SoX+h,. eEy~N-Ka7ǍڧqV O!;Q3X-u^3sAN 6bh~KF[![uxN-^$a={|EJ_0+n9.%. Ž}>Lj iOiX~52ށ}Wxc֯~lL¯ tGDE>'3, .W<  bvǀ59ݳ[9/BT ڗaQƿJeUEN6n<3A'jZxvIu mKV2!/x;3dxlPdŵ^MM>/@3F ZK1'uh, n^l7ĸF&ǥkU24tЖ8j;5 SZS(@?5bn\쫃 BZ*6,zӺX1k$vVyNZf)N 3^zJ'k;۷HݞQ1=BilE}"s/ErLGq !aYy%W'6_#cSw?%L(;}5lP$Cq~6 BFaUeu#sMjλ4=YX'FB S_K1NEƌk%пvy2\%(0Pq{Bu8EdqhI%_6hVáPEhP[0.Ozp2rVbmqgaA0}&΂֫ihq”l2L $oa kPQV ]bk4YӸ6MycԄK+zAI1R|Tڥ;*{IT#ykvKs*I= Hp]PI=oU5)Hְ䘜g;$-V3T"E"/T8]p5?InIi5]o.U![7n+&:<1~379t;ro/>f|N*TC)jGiE~$+6m]P-oIƍ:)zcߙ2zw0Zc-XD: ^2ĒAQ +on$'ؙYczfkW4Azパe8`ntAޔP>gǙ>)!i}vBRVxj۔@,+ņvS1טT^qTl=|=MDꐁqo\+I$G܊05N>&(\il5ic|eIu(o۽1pMk9r|o^OJqYyZqzWV@[y]Ŝ#1 : ;J} ޢ dw.DY[qP +ͬX~{%-~ɣPe/08 p5~jYLG^(5#+5tqBú"Iā<)V ?Ö 8`'n!orD^ɦ/'r7l1z)lu+E}1l$ U0 j]Y#5n ^=[`>%}ff-Ç/Rj>%gKRi3gP O~@>0͆w&eGC{\@ǔez "4hR>\^[!~GiPр[8X {K@[ t{ZG7>2 8:ⷰ+Xd~`l2q*5Yu-תc'/6@Lj xrNZΛX~"eTknWNlƗ2LPǴ$-YR"sNri1CΩAz!mrFbI^> 8OӨPSMGėLwLPA>kYIBxddR:rK2hĆ8IuXt_ ң{}m ˭8zs(lO<Yfj]1S6ۍP'Wn?=$˄eu'z]6 NjǢR:c(u§:ua)z@t{,ѯqtݗn4zi='&8 r-]w%o޹TKۖ& mh- 1*~=)<-ؗW5:pAxY5ȫЊ(`+ Os$ne5/c&q<Ff9Dtk{X>k߶ Ӳ}Oݲ YR\XE-te kI{:(Ҳd Ab ^SxZheB j0@`6gG #iQD?x+}h3 zy~TS!Ъ{%%m-1޹|Xy )*?g#>0RXՔb:."y3X\un%[ӽA7;tJ 2_`˾{/TF%OTX0Ew v VEXX:Vr3:XOMxCrhLxH %ɒwumdN4#aԲp$nx#0b.`\Z{5j2"nU:!S>M!P9Pv:5$9m. >?*?T:n6F5HI^Oc}B{h.DFqә ԾY4iwu6pd܍r (rp¿>kZwp2Vy<16U/y ol~1kaܐKBr{pO-#4(X~}fX_ǿqeS6!҈Ob1n!ͻ`$BRd0x,@JQЄGz<)WE_´̐|Ho3zIΙq;p_Q[u g/qCX:8uXes=J |\Ȁ rhh}y5,b4_?]JלNS?ЀY:9tM5 l ‚cޝJgM]^CBoWFk)P@Gv) hnv!=XaD"9L۫j17oݽ'+a{{ &S &j`gs9Dy{G$bW {v󀟳>gf&ҽ $㈆_f- FWMl&\t.A)pM7cnGg ЭAT}}6(pb54P=pTv~ &BqNZB{mm8{ v#ĴcgRMUT00 힆 FoX$:\7RhwLLM" 79p1pFo;"rAc2}163 y8qcS|q>|Zk)c #![yZ׽Wi $vqdfrDt]%=+zywv<_ l?OULxn:MA \(7"Φ _;NNj8O&-벏o['I`AY#rWJ uk~AoqoI+eڮI=◺I Oٲ%;+3x6޻RVqcJ˜lN4$:󆼗u3M;E^>ʟx/KS}<8wunsV13Mv ZyozB<Ίܹ5DIQ O-9rZ~HZv})Yڎ3>irQ#=?w}y60vk,#Z@-MwkOJ4tVK..AUpNҌh&ym#P%ۛaM>,]DP}zD"%ND22fhw…JS='$nf]`p /P1jvCcο~4΁}@2!6 2Y_N4 n"hMRb =]u-ZG;4<4D׍ls1!\G<5lB6)e"ȻvC5u,3x\ ׅs-e'0DӮ+#afyΨNϡmX~}ٍLtF;7s!z'-tmg3 O&'WTJMߚ@]K'ߵIB(RP@>>^ Qo`9YdF^X9ȏU'A^' Gj 8&/L|s DՓ=;^ Ǯʛ7H=Y0۞ '3{uFe?jc$҇q)N4 vxVn( Bԟ'XoSPܸy䎥Rxk1" A`FhX5nV3_vc}(<@P|?xq?&&BiPöElqW2ڷ]sWbŬӒ;s(Q5%="8#qDF`R2RmO=K l^]ЏYd?.O8ǖPy8EWgM˛ 1h!Dv]o*i^]O&(aIzM> |u!y/t~A%]20W/Ǵ:WQku^)< "n=8VԜٽH1ۛuл`e U19'7< 3@#dJ#`Stz<šy=Zrt 8TXk$5 ZВeks.6زǃ/A1|Sw'N%kN+S#\2ݪZ ?x+GQBO#D2p *hlEX> W3Ȕ,nfBƯ/:XUEr,@',У3 Tae>ib96T^)AobSyL*zQZ0p?&}mFSM>L pl7U3S[[(>,ەZ.}c +_<˯VNYm*6W 5(L> dq 4 X؛ !DS5@oƈv(ƞ }&P7=2H[;hrRt"_*E3H9S upԡ2ݹ@) km[@4 0ՇdAU '2CfV V3ΰVhMOwH!z^hF@Сڄk;\OMBkf1ƬP]Ukũwœd9Л$kζx^j,ekpq>W}Z1sq pgl!t%e]yӈ^ (='S8}dt>>>^i!k8wyj Z#kNLtU-ҹZw!V lII̺NS:)V%LV lz[[}]c"iu֨i1 j~&yi.>`/j.dp P(>9lixRL#%QYtԈG+f4\pKԘJ}>7۰χ-F<-r0RVŪyA|sUjR~e (OsLN"(}&|#o ;\1\Z–i {OPӏ/&7)`jAC$&E͌3hV06?uH_l΋ooa3. ؤu~c޲-m?>a xedrs5"-ʼnASa _S,s%]OBnzz-KK/JaZ?n)EoZawLDKjm>pv΁,d)왉Hot7 PTmىAF '1ʸxB箂!%#+ڿb/Jb7-]h!ɵ6g'|2kWEufJ4Kׇ\ewYCk%p$U/R )=y(\xx6z?Hvr(r00zkB ѤF:LºOԯzƕmwn~M_ XzbF|*ϑ'#t,ݵܷJ~"Հ=(o|scrnfw!Ҫr&AzVP/7ҀUAzijLfa;) m fG.ZEʻĒʻuϡLj[jgdo>KK>tQ53vJY(ɘʪf@>v60q :#'E4i?P ؖ5()-=/nFEǭx7_{$.8E: Ʒ 7VeR0 HYYI/R!&mQڔ,m :-4: l*?Hy=J=A I"'& 5eC? }f;XOO-"`L6:{sHzLψ kG-Iy7{".%o=!U w3fmh]3\󄉿!]|=OWFk SM۝MP4dWa)' 2[jGEqV =cnPCv(g 'Ցİ+T\,0,UT;>M?|3H ]VTiV应],Q ¸vA)|l %Xz;qmxUX(^jiEݝ?Կs,2ٸ &6㫟 zP%n/ CC77!"L/; ݻ8ڜ) >TJh^'|;e-o^\N!:c{-Qfl8>w\a i2'\yb>BuDdڞ|t! uJW6 eN(,&ǂK6H쭎?/&!xikg [}FQg4TK10It 4&k?<(:1NH%Y;bݯ_XH5MHTRp@dϺ"U[%nYt 7!COYYJaZtG \O߬&W6*dwTGI#s7z{Ypph~5@[:i~m$E?Li3F6>tW!n`-/'#^ŐVZuw gjg0=c?+>1wgb*8ުƦ.YU,Y tOZ-Jy,,;R%nʣ֣BOlܲLdƵUUӜ:U"DIX TDy R{,bV@%Z\S3m d$]kcmtGR )+ʡx?=teV&V=kuca<5̹Az36`@g `<lP#B[Nt-=Hq;a(uBv# L]j,MF$6ӺTKy__ɳOqcF&]S)X=)|γS mz)0g3i60f7c :L;R/㪛S`Ɩ8>\$\ fhй (trS)+E3 /u:ě 9$AѨlgt鼆;MA/cb.89clӴ-XaOU-lDz.0p0^Xɝh@oTWWd}U8j#`\B7*锲TR^'RļFEfrK{\{b\NӠMFp ?k\vsv%?:jwYub+7+^'E78~S`Pvcj&rl5_{=PC$a V0%f%—٦A$)xnMfYbճ= O;{FtPye!*d @V:x*85+].XI4i{̒2&S_O!uR`;{f3 M=fP/'ʎ$I;HEV*U/~#B6"(,ۚT疺%FG3ϛLNPZD5^ĞKU+=(%$ Z4pyF2&PpN5k!,*/0?ˀk9-As4;_:ܜh"@@& ;r@I%|Φ=`3 }D1\7VvN-z|VwJѴ'CnXZug 8'֩wu7*ĥPNNkKI@zes77Aft]M6*/}̕5-i&b=&ǔ/- yXINa+0ܔg.ym|jd{T54"Wl-,)aL(}$}iϩz]q,H؞ֿ2i\(y s㜰ý5ךp|MfgCH`GU2:1l #x]|88(JnQ7vEj9C6\k=sRnފY1?t֖G8 E|Y{N 8:nڦ쳛12 M3P%͇,3&fkVRx+JMk84ea,65H? ZtsYGO "x* m"߃gEOeu.HÍg[W1JJTj9_ bSd(8A Gw2'02`,8^)j8` el73:Ef9s*βF aRskO?^x(|kmZSLdهI* VF5˷_5DHhǕxpZ^bUNTN&0tQ7M2nYJzmr[Bиhwgy7޾L2ߨ+\2@[tay0>{S vAY}}]dkϏ AݗNbDOELbU$ G6S˄h&k-nFvf1Izuv ?xy$+jܱAi"` e.Á>Or=)p$INr1$V:-w15>R ÁTTO$g}<R@յ=d7kH j.T`0Rsc镖CcJ\DR|#Vk4ì BE!x ՐasQ4 9MSʏj*Ú kf"0BsdIJ8qTR7/5=mÌ\`{ D2U*kzס2,4dk- )|Q*&7 4(=1L9pJBFLw#~|vY -'k,V{4PUPɱ>*JGmO+\'+f nށqunpe^^`DX4"Ŭa,aZqy'V-8Y*T9AlK^Vf_.ewȑ>[mP )#ϳ (*'bټ$!Caŗ{7'fh91@h$P 5`18]y jjlSSPs&> v`DR8:eiH'>;' /\s55usE<_dqh8={73Y2|V)[gE7k7_=SmILtMX2 qy\r'0Ze?vܮAr*O(G> ^k-Z_t`;kvAEk,nC1tz"dLJ.Tް:3tIcHAP浣8K8?N[g(zҝQ#hO0@{y00y`Df 0*[Z\q3.=]kHٯ:|}HȬ|}f'U S~^:d8V4[(zjDUbp'?Dh/kuoTO}8o +JPϣ8g7>>wF=R%r dǚ ]Ka3MnGXvUuWHioYPۼj\l|8 waqqecǿŞkd&o5_W [bJ+bnhvXQ ?W.FrY>-.bjUi|F{{/0ǴJA%OmLvy2xq.hNw:Ѹnci'_wb6p AG1pY gJ|NGOSm$.qF!u.WQ Ԍ})O['Zucp6IEiU>䖵\H*T<:@*+;Dn-5٭^dmVjN-:UCX2{+St8yA좸ysEՀx:$kGp-K.zme9N Ӌ>uG0B)/-VbJbz]Bi 9I0MJbjs=ʆ84/GO[ QtpJE ?TX—8mv8+>7zCa p}R‰Yv6B K j`ߗyPL믁J1RRH^B `G= |k!"ԑist \}&X$Zx)%⌼^[u/nt?,򡳞Yw'jzs,a/G?Ս&Fs=8؏i- YEr@O:9BCLu8G3dcV 6))y(Z^>,үZF,lExcU 9̓j@-ƸCRpQW(;凌&˥oѵaܧ/J.׏C,*1&W=>L",n0r VGOY jr.71xZuv( JtR90;a; -]`=1a}.F[z0?6)뻗SuK"؀O+UHPE[-Izcr"Ef5nF4@}QNؓf}H@Izqcy"f<JUF}4M×3|=ht / mzKkYا'G&* ;~zh4ՀJӢ"w@ˆuj-oozzSj _r۝-f6Wu8Sxn Ii5TB8Iow'Ë^o޵QAC\O}ƗUu7z3d_oMn}Qgu2K0{`ǻm:7c8yB;~z8+YVFv\%h/ؼ0S%`ҘCe'"uTUGy&+rrsMOiMjpDs0banPLH,Xa]Z5\SQ .>;]U1ΨEOT/MOm/lo$4Jh6g 5 L'H8BMjHfJ^i\`Fy_MrՀ:opygdxjU#5/ }3z~P|pQf=&#;А vts9 y=Kdn@q//&(^zX[RF`i߀i׾w鋦5\'7A{7yojFa*Z7G摥}_TR F"cNe\j09Ac#͓b)+,m9=B+p!b^@aHFt̄L|k"<]+rj̈́f(jG{0a\`-|YCB|Xst5҄8tLSCj{V2QY]?Sݴ/mcl glb!H 2<s|44UFv`PBͻJչQç6,UN`8u!W%piom ERzu|nNXyXn 8~AΠ!gWv%.B R 0~ka/r}MdBEB`1FZ|5kFn4;eujp%dL3E HeFc߉TZn-W@F@$22FP{3%D߱Z7( Һk+딠IbS+gL[y'cCEg?d2EpEF?Q0SN.\ J8SRtNAQ.S]װC(]S"SmA.ꌼ`S>y\m5x\ 8pQ]U W/:oCYG5Nd.hMg1/? 4Հ Pű6E:': ^̩F%C>>'TCé|)40ya( $dgyLL3kT"CU)t Pc;kVL۾dxGlȪ`8kT`S9,D;_se.AѴ%1 %CR)bOh3t6x^簐k&gd:wJ9PEX ycR%M`;tai G&S,0*s@aaP-/)UlQ _nۉA)Gv$ C)uA}|iԼQfO^8bER/D9'@tzu h~&+`V.OφymnH͛g(ፈ'X/ko5ʆOBE"HB DYZgn^9 P+Zw\S%\pBͧ&WyL GwJ\l ι_`/hsOu%Ж[j ؓմ@ݞ}֙@63}2RJ1 &DžA6]Z2j`55Sb.Ş֔d;pI*j򑏔2T6IPh7>1VCtrǡWH/,n4g\-Hc#Bը@T bpʺ Sݮ|FTAz nYY>%:^^`͜t߸ǒs.L>m)G-"H2ng R{YQw"$4i$XURIY=%S5&bLQI[G+:!Q&/Z) <Z,=|#o*D ˬYQÖ&f=FsE0FluJ O'jfs;}bX%O1>u8Ϊr+R L0$Xhdo/%o-'dWPՔ @X鿔`= !0!x-6FNJğ}9mX%"\Ğg*j.\?3\9T?s.iBϕ vYmfm+?-+##+ǖ9 2j\2=xߧ[vbcoKSqS ' *o䞄F_%@qw@&NXHlN2Zdy >Uy+etH׏MhBq>qRb~n!K`0A5.J@J1-11KcXʌg/y9 w)nZ)A[s-|.xK8>`4u5N `?,$/ٸy d/%{]%YQgwߊ@Edmj@Kg77I60ژ>yNN6hhԚ Nv=|ŘgF<6ƒ34|+]4`=f{&vۦ2*}B_ 80K~aGp+4@.="wU+{M◃=ArugG]4PIm_}/ge![l[4~nƍ{S]Dkd?[GY\/)&mI`ě{ V\az=yHiqe;52! aY/g|rtsͰKbBEW8Pl ȡe"Hh +̽>'O$%h-⮠B[;200P!wOkQC(*s`Vt̝8;\)=(׷=-ܬJ0fh.+(x&QϤ;YPǞ(a="4b.kgQZLc}6|=ao~`v{(g5 teu~ǫ\FPL#l`nCD[P鴺ҏ]r{MKC蘇XRYhNTKl'J`>4&/f-f?OU*H93Soϊ`I{!׹rmnp80[[ 5jB?({;6/#/!ރI 1f!T]A5Xv_J(+v{v]AP؊+i.;GjR&H b:mUybuڹzʿ %X>^;b Z:^^NwmQ:{ )έO(o"M?WZq 8TT̉[+qmݰ@e=@i8pݏb".00{®L"GN5`C|8Ӽ-}Q9[)0GҴR"S2ݸT~?IRa풺,)VA}GC鑶'W|2gꌟ@7>y+[ԝ1`.u'ǖ|L^{KayJFz{"_yKueH erI |{_rӹ0*LBg ~ZĖ(ob%'@~P\{KeXJL;+=] EE8l9;|T1MkV#ޤ6ZYlJ@>p;vHd͕ qe&v4)?|i4O]3 |\_SW5\ oY]xcĬ LS&(]]E3E_'z* Ւ0=5r4iMhXž,/hvHQ9@]MqgNKIap*³+AI*DH\jd-U 3Gr;ǹM(ʃS$IŃa'W+zRyY{ O|OtO7G_ݴTG7*;H(Viul+A0aU= \^ekuSYa o1)wN=8.Rrw0`2~o~FŶzlHי #fQ J(}T^R e_e^34(k0[+Э{X֐~GWv(<7V{[ǧd5> ;1;:cm")CA;#Rr H-nW;Bu nr|w^W!J_.gb'+'HHOkӠw 6/khĠy38,lv6p+I23:QydlTK9ü$7[;ԦJ015sEGwTy973`0B!TY@1h%-݌ɣfwbUQ襯:Ť3|]8TAW<=OԨvPejlݼ/FFn͍F>HqFeWStbQ_=km7![JxrNPx n1Bؘfݣ!Nx%EiCte;yk_{yg4b>K$cj^P^h(pۖ׬ Rh/_iEl3x]Q,0Jz+}'x9 zWٺR9bZ$bkDьM+)( oRNm΢~X,#pʁQ[QPRg5IXۯ]WjJFw0?ޕKF5޺._!!;#"3:/cd1 %ǵ0qm~ XqZu<<24-o=t0>9"2' -\4zh c:`%ɏ=Ma<6Nsv:GTG_5cDtue .LB(lF,oʧ uakvXu !u_/c^yoΤLk#c@-Mo&ygVdyk}Ζ㞀j?`ި"_ =b`Pe\T1N-C(B*al;E9*Lqꎞ) A&V(Cg=9k/B.9GHlnPMtTG=-/>e?f$b8 gjESQa~ Tz7a&ܷA0EngKwyɊAֱTlt-kaf/oPWC>IָXY`JjB2?Yں{t9dSIKgh}x(E焼+p_c!XG-MFՃ 1'~ZKE-|dpGD)=J5?5x 㛏zqKWn¿@ezX+iifaf(L1 kY[nW:LY}I*IR\sgLԚ.Vo^Sn&yΌJjy+7H){M ]2CXX<ՑC'-9@ ,KJ}N'!S/#гBְd$^"i׮4usA6s(BjtAuc͗,oqulRc%Rb l8%yM1qd`⇯*>oLg!3H}Cѽ9sVVVcU^m6#*wdKiqIo/.M4bCP?QMR #yrP\XE*(x 98>)i8J7BR$kd P.ūֱyVT| X#*pDxr5\6E;7C8({YP5:rw[iV=JyHI7BOsN(0mUҕdjX/ Xz"֪[_G)O%΍2!Kx HK=)G7(_>%o3 ȼrLIaaSgɸШhJ wfFN=*BxA1Ƕ-*1z!2f'ɼ4F:GtS~6LZT]46VeK,5_+9wI}N08>艜veo ЄUUK70q-OsSf}­yykw 'm/K wLOslVfJ4UBؕFo-6Kx@2aTVvUx$mPf![,.!\l ClXD IȺ/"` 𗇷<| 0:՘n /p6'7`6\L!`vWA}#ų^QeAy=*'f+IDo4 e:<vR.!yB |9֙& $xJ;W; H}$A)mvJ|ަ h/i״9i3}&GUJ(.eozx{bHħΓ,)KX]^X"dɞ-[! x.8x1NU-Y3{U*ȸF |a$_[- +/X~$Ta>A=t[8@ )D%Bqlԏ<`S& {F>-pm_QpБR)e^iEGYhD@bw>i^e ׳y:1f}. iA [.\=o_{+K`h(5< LKÉ̺(-=t[fL vE%<}72`B)xI]5#ppQ_[lysEoK7wYmOS6"3<4}pe]}EVAȱaD 9}"n{ <}["v*P0¾i:R8CD9X/0'k4:ǒmK*vRv8}"!- jAH%Pb+[(#H7m U櫰ԶJHtᆳɻaLD#ȢsD@I4sOJ.˿!둧8WGx w,Zd.$Zv C^y&I WC7,qIU 5 =R^+Ȧ/J #cvMx_cI7;t,8`JRsIQMK˭f ؗ0 4[.a:UkzfKЬ܌ -yLS[w&ZCc=n@}rSyw,>)+Xw+МZx9qZVq&CTdGoM9`] P`96W 41(ŢJkVT_Ҫe}a.,Z>/)Į&X#G!_x3U}]F&G! B>fwmbA<% ]Ya4R0x("0ſkelN߉oAjk5ho *BHg/ưQTzlu7H5*iPZu6 {1eܠ5T&oۓT[dt SG5 xn߃<%`aPm`2ssʥ{"t]S cs>niT:p.ξ[9uk܀Pkb;u=𜍹#1U1C` zܿ,8}F)-ӆ{@vQ/s2YA87KbHQχpeқ" =wQ=69i-{̟{+!_G(T݆9yAQg^h|B ʅ ㌴;1ObGgg1ӌx"M`Nafזu }wu#V*5 W܈ a3FEjqe},jH՛M9f#nM%Y1nAd.lNmGOP:s~J$D BA>U)U {4@>$l4Xhɘ hq0aNiBvrW"6Gӈ^&dž{u@)y"6װ 4"^ɪIzaQ ipk#"JZ Kb1Гmn kGwAXB;4C]kL;C5(lhB~@_ދ.:n; "F|Z=S4Ъ 2r<;pg+ # |Wn -'zb\-@CeZy:ELԷ {'W6t]`cb+;5llO^> 畒Bd(9T_ݺrA6 Rn[ze#u=ѥVܾZ֍~@IȬHg(ǕȂ3Dl:A1T/95MuF%,AmûjjPENT; [&g[ f;\*%*Mg#srL@AyzZQS^VLL@!̓rÉj-Wz>c纤LC[Up$߉` f[aOf,zBZrm+ۓr䟑s^7ڹ\oЏhX(oNtבc zE܆c]˻e P:Áy[/o([:AdW[?䬛MvdcL:PW:NC}ږӊӣWFcjT8Ehu?vUKMmeǺa{ԣq&uq vbɠ2cР mt/hS2$LAkeL'u^,eٔdEVWfTtWa8F {m}`Y{@|dk; BO6=-Sz]WQ\z8DCk~l\g`N^SN͝q{T e(3^gpt>M䴱LG]@gp.{*S4ߩFЙv8{>[1iUP|mU܀py{"}PrʠUzZwכQF=yzQĨFj-v,OC8 0k ]ӭًr/\[&."6n}\'yf+"hrRuo ևA#Ӧ\M~cs(;_ULgh]4h]vkWMM=_*ӝgjx& .fO >xtPwMGkmPeg;Iq<a9^(a,< '`K#:ˊb/yllCA1x_/Щ2C=I"K{ZT ‰wYޤ\pJT-/^UYw`S xlLnVly2 &®Ջ/Ǧ)1\Ʌ6[f, O ;Б@[a0'ީ֢<? ۗ2bchI=y5pu971`5bh1_ ^c վ:GC'Dc\yoQ4킻kКst,x8_9Eꈶ~"Z3i9`n{!t ㄿn~x3$qĶ@ޔQ4m= m;LJ4]M 42*kJ>M^Vi]n`KxEcGt.ꤷD OB0cu;=xn̠װW NB#Ct_F(׵Oj#kIGa/۵AFG?QplN_9s'}Zi!iĦ3{?mhp6Jp͵YMѴбȣ+ruoROTxƎ#vT},$V!U+chf& Ԅ8KWGGEa(N3W̐zJ{tB6M=[f;ΙOH _NCFqoޮA۩^aG/V LQJV3r*CC؄sk /&D(@R] W @Eq5+mIlE V~ G&"ԝRFrWGԸ=B )!(*=`d& eV<&$:qN,zByL֜ϧg6)ö ^3gs.ĉ2!bxhCkVDjK8*U3rtjoXN@=GSDwA91rY(ٺlb/'#Or?vpfC;]]l fEb'XEjIKx,,Ck6=ym?^aIEy$:9] vzx8 (>Wl 2aU/U'vH'$B[imӇ'_‹.vYwzP+'$Awf+ >+Hhwezޥӟf "\z1"Ʋ@2-DvQ&ïh./~ W#]({MW,`m+İguMb*wlZk SHᬾ!je1^˛gL$YC߿.cfeᆯ*0p ľ+(BBd{jHo<"o>{_?)~}j_GSRmG Ĝ`ϾZp6: fF*[ ꭎ kcoC1'#A yf#@YbK!Rf{HGL$ylJCvQW&H,bԮ7  _aϭ5×U ,5?Hy!fsQ xl@.*8@W:E oud* 5lpHqLaUxr+И'C=y W7nRY [Lv ~"ZtU^Yֳ^Np~f4U{=uRC'ܱ(,GON`dE8*OR֝KM+nh/nV) g%-@`n?(gBW"HҡY|-vhxP .D Q';+ž*Gn]h]\>u,D}q}77`Ph;8ފc`!&ye.F&pe yd:9^Αr~E98=ph}\).{..CpaMDE)(BN[wuK>R;k~$?=ӬXG(HL8Vq`7\_ǜ r)& S>MSgQ|z_2x!9)<ʣ-s;\4.!8\|}@kRxIvgh huTpe_ȧwn/I4`o^_" _t$tk=4im]]T֒ .f-*2 M706U^"bm ZvɹP@sf%Z}ƢFz\>v~y& l̪%#E*<(ƃoTyл?RZx/ Q Zw*.rB7ZR6Zktoa ë'TOHTt~6޽D%7eO0zxt;s.E+Հ.%OeyVw]ep28cN8lc7{:;e?t̴[= zv R ~Ԃ0ξΌA%?-o؝oپ4h,H4Q+Ԝ}=>é`.j=>UJ/Y=7`G~lZ>Qzb ?QcUCp|A>JѣG *R=b+GMI٪vVAG9LDlaQMi}_~R炡ka~td^7T˞C*1@lGb_rp2Y(K7*|7e0 +LK)1I}xhpApmu~,a:%3ekG$fYWQ0a)1H^3ĮIe¥\W6]Sm\,sevL5Ea{xB`vTҞk2~h0(Mir#Rs"=ؒ^]Ss<^?~&CFA0Z{C/]WHIu셏}Kc–!},3t-2b㟁-:?mFL4B@)iQ[{+\Cwƺ.a4I w]暮u]ԩt*tv?-l|s%J W2{r+f9cD{:9!{$e>exc4=)pRëe4/p$ =`m_HD[' KCLfԎQ6> i- &k08[v;ihzULlťX\¾(jxP[g.qT7[p"WHıS{`X߱ v}lV1™f6D95-]ۛM\WɈ L+[b7ngQR!K2iMG\5ꬼ3NNV"֯߿^[m1xB-bSP.crEC(Ay>7<ۆi -W"ҒJqi17K"o}`aXC[ PHIh I <N\HƅO ԡΝ291v t,aZm, h1L38 J`L()w8t]plFIX XR(r^^j|[ 0ɘ&,z&8h6vOp  &EgFS]P_g+#}^H]\!#S) F!{,U.VKȝBL-knokVG,c䒇3nFm]ײך~DPUg nabV2(cF֧{]>'1eJ T^h T:/4f3|r r%(D'cl4%g wyiEkGx"=G<%h"I_͌S@"r+>eBa \*}U#F1> zOihRȾW6ĹH6f2N]fʽ:Βq>N&ivYUl5ZZ%Cx,Sksrz\& QEVĀFhsҫ H{F$]kbbNapUAR]_gLkȤ%PrS>l#*nv}ӆ*UJxi\s܅{%%*p?]֢=<7o`RKB:?J|݌ĂOfi# ֗T=%DCGN f|--Ѭ&,{A|:c<$A=﹃2NvnyeyRJri8uSW,)Iknjqbt&=Ǹ`B'g1: 0'ܼ,9!8+\_],7f]P u?w_l\/PTŏ}N7(a`1_di$ c%s[{6Ft$ƒohV[GP.[ $V6{y>b%C =yij_EK\3P Ĝi Z즉]! dOHcfyEp,߽%=-5VaOދk[*oVߗ*qdv,"YRї/=1ӎS,D!vR(a Pά S&5&&Xޫ'eB| xnY+O85[pU0JDPlq!BGy0Gldj/d?:ziv7Lh6sOI}a{E#MI%d>RaÅՔ֍ Jur맖VӛW벒sxm0ՕsFTELv 9)'Mfh w&Qhx6g4;b?cmu m#!2NHK3=ɗ;S0whU1\io:"x!V!_捓#P# 9,>c;\ !'ի:D",Ew"&20Vo0'Mu*s_:LqKuWPb',6r5r_,Ӭq 7 5ͫ~J0-kvt=@~]R /TرmR"yF@_jԋBƚ1hZ5&o rx]T"Av3:Ť9{ucGseZ  zFbtdt#fZnXˮtOЯ66YھSiFnJ_{xԦzXErnWk=:DeQˠ)K]IQtw[;'U:rCտ竟~M OzTb_+V䈍2oZ2nCi-@^ vmDX:5P卐ϞN#*J] 8t7Px|B𭹋v3w”Q#ϙ˓܉9taFkM Hav'?uA#:G-9k-<^1*bTsIS$ dևrK#nPƅ&x?6˰ӪN.:=P x6蟆B{'ߔ9d>ܵ(+RQ_Oq8xPݯmJ39MR2u{PN~qѹvc!HڵS!>/rgzon,uu49N116l䓱0L#>$[csuww7{@ilCQV~o}h n qe NT!\z]MV Ux鈾Fm)ܤWOʊd\Dl$OE4ݪ!v\ uu CUG]%>cK\H$K2#i_47>o,,}0?t(N1/q}1ŶTy\ _?x;R%"j',zq|)OAfNL?iNͦקe#s8><=78[mKiF*zmk1 )Ťٷ<.54 [tu'6>+eHI8??Y|9UrAe)&Sl ^ans1#_^>B+(f$VOe=@3Ɗ,?pH+ E t<̲βLl&@U}T* ʻrmoh?rã6\AZ譹NΑLԵn{4 D|56?Հ-R^]v llҌ)mTEci3.nFˏ|+A4P-^#хS :=y'4tnߍmEumBaJW0W5Heqdݫ6_,r[`Rk:l־)yلxQ:XD߻̸쇝F44C(6ApKi\@AxRS +eGBteL*:wV v.@?%3ʃ@r4} 6cq{a}-|عn~hLEL>ʜ4Ӝ $6AV'jXQ>1j 'H}R0Ä|)|GgM).2U L\_w8nKmQn?o>) ZE [Pa܎z>c:Ӕ@|7uI~j^.w5$`GA#" *%ʦ("YQ)uhh<#,n7<Vt8ѽ aG숊qK Tq+/f?vl:r̡A` SiYW^J{eb k$ |t.Kc rNQ^rK89+R=+HT䅓Ւy|N#2iIJ*(3W$ZvqR}ދ0E\R_Ɋ2P,D\W@GJre_p%qp|W I #C%hbۍžS$RJx[XӧYNhW("ݔ!02rG, ԏBG{F+ X+ GBj<:qh>Ȱ^Y'L(vY֗\ܶMdfo.=]z Oe}x5ZmP0xͽjs #5E1^z0/kx_Q;,D(] ڢs -&>$Il~>AfnNl; EǕ?:Ao׈"lK_""\ϭa.8yUmN ,26DeB 3U7C+W=݆imY,e@C~6fx ϐWJ;!=.:Mg"KY#5~JB0c|8fi:a̦?V]_"q|>|{$b>0-JǁpO4B)V#DYfLA^.lYZ ?M ]댾 Ԋŝ{t g"yd?8+I'qNHݟw@Юz%>U4Ap.1ENa%ǥңS*1fP]<;FaBsz%4w {G>NJ]1/Mu)ύnh$V{3ot&=2mbG!n:x]rjzٟ?.wPĢ%OچVK#-݂j:@C>ļեڑR>NhN>Z{5mU7GMt;LM$.=%:[xC \39'i/$8תMZ+NA:j'T!>/u#ia[q!su}}ŗ/c2oķp9U. e G,D!'&";!sX5׷v|0 tSSKMj.>D7ioEH$bF%gK9Nj[^i¡>";zGewTiëD0N7Azą>t/vqq.nHTldg4S= Ekyfm]@Ѳ/B2p1!@ɛ_5BykfKij#Cز1tl`O=ڔmBwvX(&TU ꪤ6lsLEAQ <9@䓏J8ՎMōl z_QL%qΉ,H23Gu\5Ϲ,7ͲpGqİ+Eb~3WzHt-M2Pެϑm ;i~WCܪaR:"H2=GKL1 r,IWJ]ӭ=5NÆ _YYxr{%,E3j6ASH3]#!P_ah $} sc7 7u!Nᭂw0NPqM)Zܗ~+,+gYʋUB OƋv-]_,+.B-9#Q98}CQ.jIbܜ "?#Q?DLRڕ4j\x^9<rC뙒Lybk](6*wU w$lNcW'5ӽKq2~bZ?B~?XV$_LџmA& D {f&& g(RcFf?sF1 " Όn6i(OhlXϖ;T*2NzWl.h nuLj'vߩ:ﶏt^ch"(~:,Veaߚ*KbK} *M.aN-)@c!^|n1/9*ИyyZ 哏Gt<7qZ99l\#fUӵո:.{ ՁɈ"a߽<ҋߪJq ۪'8mWޠfGNPc_:8\([m#^\£k[Cq~&A{#a)NT )n> A#gVB4%SWJ֯@(9^m|#ǽV qjV*ވfn, .[h/.m޿ME` Ȏ"=> iC 'fC 71Rhײk-R ޫe/ Y`s'N}YgCҽG>৒LSN J^Z3,xv!q:oCx:!_?B T-CO*Ի4}p>;Mbqث'5}HCq*ZI"rvhmE}b!DhSci}R/>m$\E5;8Fdį,4HfE<3ڈ!6Tg1* sK(c"# x5'AKL/ Tdi8 ] Jۂ5ۂ#0ԍ1nwmMjÃOYiս0},uA<8`.{<h9^3eE $Cʛ'gԦwYWN'X;?0pBbڤ2o=жS~_E,suaU P߂X7ji9=gQLzM&ٻM6ix"[7Ò1.wY"SjhӇf_="|Q[T*}w޽a?{X_"0+ m[◈MCg>\zO3GI Wv4Haח GMsL~-s*YȒϢ-y|լ%a2Y[fHR[ZMzt+ P)obF>#z#0yi ,K.9iQ ]0"XH x6(\\͊yϲ%OyT SJvL*>(;Me&r\!%&\i8Oozw? yഖcxMKV5sbt:?~̏Zpy% `9m0pk{LPFGPn+5?H^0par$< 4Zg^e7Ő+訄e^u4U2ߡlfC 517ߪD+ AZ< odId#]i@v=: ULgӕ%--cK, 4Kp J7a"20q dĥU͘bM}3Xa.dNsm[A3_mjNAkZ䓅}ҧwɕ*<ޟB 6ZwpԄ3S2MrʻznSYu?Me:${qW<75W}w&~0 I 1ȟg8/Ћqn+Ti~9&9 +S"a2K9dxQ$V QTo1-8ϨOL܋ss#Hr =uEA@YSXn8m'WM tٽwVĎ$oI_G6w/^\Kn5Zr&6c{mՐia:S ۇ 9`sEHozngKӕ q\uwӱ p,K]jE[rK}Fq8ztSB DobHU;^6ߘ2L%e,lzhGbH/ݒN-o֚b)k>$1O#+%&@,s9a@|BM9ERy`j&KGlO P?^r]/p*05 Vb^Ht{Di$>?zޟ|;zRRcLx|iN]xT~H֥LR6|NC@xiQPTi$h ~#yTpYaeMXAsu6Y ȌHhiglP5sǠEja8 ãIU|jq[#ԚxxT-THl4TfĻ@i: f| cϑNi}hK%5z0*Z;ysV"fRsŭĴ8 ̍D|)U2,baq-FY]o8͸6fqf4TkߚF%NӰ$ˊjj:ϩx6aY&A3O'rEWMM! X)fy`Vl61Â᫗&郌XhC{IU#0+t  -*c *j|ϓVq,ҁ’YpZuaw{B_!DZzwO2spü]p d'ɊL/2rGQ*X̧:[Owh W:Su9_=gq7M`pDđHZeslecuY NLפ1 ʷS8UG'x sawy{l:UFC&.VGU(z99{:I}=i} K>8XY_>'#s8g):%VV둬jg]A[qHl9,G \fہg{Zs$lMKh7L:ls" n:K*b&Pz%Kp*nݜ<t6##~^-6޿$hu~ akẘ(etW|`+%;Ut11s jW_~@fD~S2ZvX<֕[JxAty'!~Wz Ҙhu'{A0L#{`$VB6Um`@rEW ancYZw(! 6 cD˷ i3 sd%^md,UyǾsc[eNO?/8VtZ/nAp$>K 4L*/2i 1קͭ+Kv5 5Oxu ft?@&l_3,hKOgCh/L|AzW\g桓q+6Ժ% D!Í^`V!svy[ۇh^$IB]÷%/k"0x0O*Vk׍<nqHzJW9J9#bx8Si_ڷt:{wW L2ewn^}*WӻxU}QFF4`5./ sUL#DBoy5bmZ~U3?9=!ʢul>@?vW⹣~<ؽ+ [lLND\Ѳh2L$lJݤhLZE8`,5گ qls*hn2aL0|HUjM+B;8YR5p-R lՠ߉_T$V1&i(9SYtKyMMo>!pn_Md9s[/4Pvm;WW%ݷ[ȕѣҼ}K+yxUK$KCaETeWoS,F5 #ϹsEME[ =8FW%9܅ڱ1/%V,ZI1I$H "J9`$嶏-`8ٴ cmmpǹ)e9w͖` g宇7p[R 1[F.W۸UE &$J|qoԾmšCF |4M $_)]Qڽw(AB|G/ -&i7AK YQ)#ul@Ց&AnIoqϭ6"/I^W! 4z1]<^;Ty0Q$8g#o%R: 2z)6Vg"8d}R#_Ixjj('@ԼAI(s?`u??U5iJC]+GYG~$_a)d!9]~rU&KmBC֋XaF`Bh#5D.W/Z-Ov}@bJ fL Ml&%A"z3Ģ`8T0|4_-ܕ;7b0QH QAI\Yضlx ][w.?Nmkh{uTH bl׭=֎x5Od @0\6tUh{h-rĞτk]q+:kwʄjm5C8qy3#)I^y|/ ) ɬ ѐ/Қom,J3q09})<;==5p Z cdsˋ̎2#{nOPV vlUh͉@Exq&-P"I{ֽ+Cvc\D|Pbڐg̴k=>c7Mj 'V?zRtvI&ɛ|ƥnFh>6.ZrLQ+FA GJDXOQykD^o4d[.uAJϭf@B7x{N >MhWpٲ?C@vY qE:|ΑxrLbZKX0?ۤ Gv}5wey%$?8@ل;FVlJ uēj~4!({)1-e+*u0[ X:>Thxc5lyemʰP ɒӒأ !^2skci;wM{NZ[տ<]4=4F:$cS У(|]\nv{V̀ bP~_yPӦgE8ZN費 zL[WnۻpI+'+:~.4FMkM{rf{ެG? ̦ӽ6Է8<ݟ^XU [+$+pz M:fG5WsjgHҞ}YVa>}K\a¯զecawçhs?;`uCM}2 rWL'49la;ȁB噡$[A7T3# ԝF]ɍ7!߀=Mv=ӦO!XW|ּ.6/V3J" vד&6z aNzb̑%Ww߾U$oz/eHCݷZn|ZVLfgzSK$G%~ic۰?GyK/0 ɣoPTXo%mp6&묅Ftj=I S 7 w~k&q79YDj}B ʴ }Hܯ{^&zp5M5dʍBvV X<{,dĕ`U KyZw2KHZ(GɶC{ XrFh_enW 7^;]~0r^~&d̽IB%rgQU~y5;+Cz#1 ȣOL ڒK' h,["+j}dmR28SZE$ޣ 5Z2Hw8 2ʕp=BQV`K#NޘX*YZ|ӤX/g?f}?Э 7:yowJF;fO[ ur">Ǥ~}ʺ^ip,ì]a߽2$a-1*o7{}|SYiȈI[-1 CA[@|TWfc$#N~٠OLfj}9/I89XC(KwRHε"):~Z#FHR)bƟ>cSL,˅l-h9DhJwB>S# xHIċ؏.[,.(YIO >Tj ׺|j/MHm{Nrϕ=e) :|JIO$ BqDklF~>#[2o\~E'{<02C+, $8Q3حҨ]#YJu-}2XJ #8op:rvanbFFL Adh%8bj^l Jf.,^$!ٌ ݹ?<v~e%!n? B箉 ӆ7cfm^]eqocғCZ -[mwf1Ol,+Z$+&uL)vM_VcA F GJ8cS9m^Pm|9|;+O_n3n4Ѱݚ{r.vL>.nQ +JO*}Onj9OXhjަtRই &qΩ|HEaNlFb[*NO4EDD/xގR"eiP&~t \f._Ow}-F /Mc|ZZ4E1 >ku]%#fÏB˙ܚW|_^/l9%?U _sk󛻁+PARw,Bf 8)򮗭ZQϚ!- Λ9FT`gF gXAa&z}Y:)P;{z_DRQD3( ELl` -jк4;$LO_6;NJ/oDNV >~-k=ڵ Q bkxYK4 ߚ *VYZ6['r,"ߐ*JlZ4F/G,E"EzKv6YLISN'ϳ{hSs[,rf_51CqbV 﫤onyh2V$pńneOGSx-tn>I( W_`>g+YI0~;2P/rԅ0$KzDnIݪ -|g;Nwzdkf#S|K>hoxKΦl-D$`N`΃Q7-N0~d~I#(y,oNŋu"`yݲQfJe#ήdOlkb;IY`AŏQyDiu嵶+Ü*=MҙBc[P+|/_i: ~YڪFJ}:[2^J;_h1wZ*ٱ}=!5PΘs(*xcyj<wvbV3e(%Cp`X,g=+"v+Z EOjt FWFʟB Y"W3UX5}|ɦ+;,#9a:*"_(*POJx|>,yPNvN_=Rͺnyll=|tR'*W_7 adJ,{swf@Byķz٠D= jԭί-srB/ &D@ow"0:b]2~$jNJR^q^{ϙ"Hߓa 99WzzZr&EGjfhvE֨D![ZtL-TuNa}B慍/Qdw|-q)f6W;.q䔹{8B,Z{ژk^;Qݪ]S%ϓQejō/s(AsgP᧹y#E+\t^ on@eOJ὆|/_Yp̸:/~ (nQU_֞`Gߑ4Qy P\{G Wqz[|tsz_QxyUhsv/*iS摥,FOv '/atҺ=?=JBΖHSVgl俒(Pq0F||0Td sQ;_KUTRh78mb ?K7$ /g#sunFLIqem\Zє\`Fz?НNҬKq.rrtJllOyE^yA6$8 Uv\/Wi]S|wic˔g@Gj^E~R&ki]H 2қӴOZ);u:0j0uC{fIyȔI(s))siP |h1M=q*֭HIOﯚ)mhkNb/!k)W^R.^ͩ\-6_:w;#uRZET3'Yv'_8=#W:T}Ap(/8ؽ6e-yTVP\QE>nv1&R+|T*h=JE| fovl6k5#0pjIT<^Y ܿt5 ,]81—YI_Tn[wϜDJC*suVԗuK{2rݽ0ڙBēV3^JRlzZN'ͫ}bZo^j*Ќc76HJk~/uJ ;FD!H%Uze3Zm' ` $[;gȤխc3 SOeߦzݝX#Ouv2#o$ w;*Rax@{4x5^4;deNy:5)sٺy'TfHjhi &.2q$Ǖ Ə[&q2,?I$-aJBfF[,>ʌzcKR~75Cu7~FLg+eDݠ皳$5՝t7;T|Zz 3Cx{^K1/F`g\w3h`@J,^ǐ|V sB=IB ٬:Uא(o_"sŇOT?Skyу@W̢-9bT 6ǁPzyvl&^Ohf0!Dq|"3gw@g:QA$.w-P> OH>O{ӡImcgp/J'5e Uǰ4P]}S{͎B2UKNVJk@…}ޖ&y(Nݜ: SA'nq"jnR["t!}6Q -RX>67 $sO<5ӫFrj㣨R'dD`Q)=!@t)۶ !ȣޓB/WLЧ{i䰻2sqlVqh4etb' `/h_z;fm6< P\K4Tm1CgcM:a3v#;B߄ O6$$(a: ͤ"F9xǗ s.F&yӿ# u(XBARyS ҄Ü#Ң #2|ѹЦݢ5穢$36be[A'$a+T#4 :Ɛa(J_eCMDbR20se%(e&vřQ<xA隵خux+VIaM^ۯ%[3O!0S L&|h!Nk;~Ue fxSsx%,~k i3Nջ̩#⣂\> ϡF_!HWL[=lA]/Ľh%[e,WE NSI ?Ѱ6"_@H<VPvXn-SP'1jw|+H&`0ikVd浦_xZ9S%'}_Efu:vY}d/}::^gI+5˟Ћa'-WvRjV߻QP1r t':^ k%>qQ;ԧ36(iDg5ev{}8K[![%}Bzlyb k p`:yyBnW`2ڥ;NazrJ̽}{LLZ7TmX$Ɂƀ0eFqG|>CV-[YnFc4++,qN&4;G$/ i)G'%$]X?X=U^}tN.o6 ߇ӊr!&$ =ּI4oE7]#}ff4Wjf 7! ,\߲~[wF J!|obp *tFExY>N[Yjj {+c=&5ʦ`#jijQ59Re%.p nVU(BZ{}Ha,Te0Uj~EzGw a~s{I<ϠoY/fN=&.EyXϷ-ρ'PNH¯cWx-VM4M;mXnW`_ZP JuN Q|ؚ!H\SaG%6a5iJ% N8xn @yfs%=Z|1]#zň]%Nʰ)1Yϝ 窿[U9袃Y3453,y30f=ۉ5|]*I1cn뱗_&Gy|0sGB뗂>ԁJF9 H`'1ƂI&^(~\,a ލL|:wq" Uam6BZ3 Nj>kp܁<6bP%,g*ʹ@Q|앰U)^9oB2wwЦV-~e]q{ٱVJI9sd3jȉ%13;In'Z/@$ LKlK^ثE,>vE1q)? m C$VTݶ/*2];G2FƎCz2FBir)N͐Qpqu̟h^Fy1 }QWWCBчEQL0Jp-`t IVYzvm&(%0ݲ*A{c-t]uu"_TnF~ao%ҕ@I|UVl@3q-xDBWx=&!A";! _e<ˁys$,1^t=t󾴱 jn:E's3 zHȓ bÑ>^%Eyi`E~y(H5TmەpLCUVMqDe¢1˷M\=7HH:Ɔ"А{:l8(,盬Y4*daV*r6cr|Oh8,ߨ)٩[/D_<}5VVg IBli.iL0w؜\^5^3q)x`Ġ⚨LH'hhGP;)%] [|RІKGKPݕo`3_ 1!sk#ufȠ211eu+ C6޷JVm%*߸v=~S3CUt`sD:vh۬V1 5~;CA+N Ymn sN6?#/G! Xd|P8XV0.iQL  1j%؉ݬ皳H ( I29VK84Dut{)|7FRl 4 Ѧui5-߱KeNfq+Sa{N.Ȟs*EK"Ӽwؑ-ƧV!?9HDZYi8&^HD/S- X/m˻C DV\ oLțI3<[[b9M[4 l,V&*9G+n*^Yɍu,$ʏjs` P3)uX8wHU7 wc^ۨmbð_%Yuz^źtؙq9rRVLhVEf*5 侄Uq}/{<_nJCYLE@qfZd Yv'ڌk=F 6,FO- ~+L? )zA }툎iO'eCrAK_w$shύȿMWvyL=WC;2\-EefR l^đ1A-)'m݈j;-a=+˕/l*u |p;{LC "Շtf_*ë5\. ]{c^ 6+ERݎ0h }kS,]yX, J)ۑP8{î4dLGP7"_8-N)8$N4sɵAtmӃW{KZL"''4|z ՇCn|IFz S  ji1I!e%B r؀=k86h țڑ _ Υ7z39kk|WU6RvzP yZI ?Jwq3 Q+Mbj,0ů#7 GwVu _l?̯EW}0Md5}[L&&"CШ;wڴ^HS2MA2QϛմOҕw,.[f K.Iz3cpʸWu]'[nwtak2uox5Xҏmk6VdIocz&Z$h\t UgA!z,B2R5]g QL8_Y0.}wzSCZ6ݿ7k|I;zGj$WSE:=R4nAQ^v[ve~Ҿ4' {l⯘- cv׾H8b R X{EiCv%SPO; 2_%GĀ8ʱUQJ$[(PU>1:/NLmOO 41ƕaF0a&v!X(K,I/ۇg*}2g'ƻ/96q%-$Ҫ6bpٱ/x} |yx^c9hpOw~>j(!U_m=}(dܛ9䱸'bp / kFNB_^΋]} uZRgoUڐ3h4{:_O0:fYO|?(,ߑ5}ZtEcGV쩢L'7O$-^<5ֱw9SG obPH!dlA%m';Q0~'q^ }R^^Usp,ğyP@= զՙf^ia*TqF~~.XOI+56n c+x6_c_mx#)}7&3JAEiG/"Z 7šqt~401᧭[^P`ܘi"(cAq8m03I֋K3ނw!ȧ8`u-;2|f߇ԉ(2g&PrlA̜RI74\__/`ź-w6rԨ/Iu Atm^pA)Mo&~[_ u0) J?ϵK1oʤ⁵*Q !-M7p tK 'dw$vyOr;-$k~T#t,K6hTNM;(\k.=ɨ3`ߜ F>ӂ\廌K,F=e1׀՚l =sЉ#N|~-Hk;xtj8TAyVΜqXi[Zut3awZ묮%|J:.~B1wF(l2_KA=O#.WG"6{@ݷS&%PKuRcFAW6~bFBQ澎c YW㕏<3˗ǻL֡s'K1#XHAc$ 7ޗf8 j-I*;?|XHT>hΥeUU211D74 mku9#c>^mӟ<,Zôv0G=oԞ.aBn5A^1zA>Cnրa(aDؑg*Aʲ=fW]WZSԾDjA^xy3|犱|,1N`>V7d'1CFhg  =E%>8MQ;(s=LUj-C7 4o^Iy"߫#'-26gbV R{+<~J!k}6jӉ-؞A-*1ĺ@= 0H-dxRt0$Hy3/2W ̱DGQ 2+}x"++H袠$~v^ƍfѿDwgF@6RQ_H7mwS@ixgjML9W\\"K3X{8~[=E܂%: N"=7R\dE&{D>/1 wp^Zޘ4'bRX~TpX#e,ioٵߙӭ2S')V6;o^'~VNoĝ78ZrGT!>>º;!{,B&$Y<2JpFsRJ 7[ťW[^I8ϝWiKWb5F%9pC@rfQoc|6] :9P4T4;k/?5+dZ,[I_p5/@W)4I?U= B%DI=4'4t 9o!ztoRlʽqMuXv9 +5jd̯(u=5;X(dƀM<9[,pp?P6K - 7Q usrЬe.U? vAjCAZZx䗙.=ĝ0ǥMhJ͠hW@ hOya\A>+ݪ׃k-[ىmW$ x-'B&Yƍ~i CÓXX^\_^ŏUzcl~^?v-fщp"WąKiqbCHL3ުeӰo5 Jxy1BoR;,cSj&FR4/R4-Ъ\qz}LDђь,oJ>f# [ ?k&8B]!ȌQcrIa@++']qF3F\As.Xq>.}(GIЄm $V{a y#$ֲI_"-ѩUȻ'^b$gs&aLÑˁc1 ȱjbw2x0 Ђf;Qg\!șmn3KhG^}qN 6bQ>FYE9y7_,¯$ ^i69Qj&kSntnQ=n8< >)Z}"bc.!8ܦW`ks2ͯ+D W9:]꾚AUCpk%Y$]]dBt0x5DNN~2/,]"ed,{ s1kOl zrAφJ_ )/ȟ|!Ee6Iܷ _cId?9,mi@qfk\P;A7/^jPSiqi<+J[g",2qz"Lm`-Ϧd3-8_ (]Lxq1~ދ-o>eԻqB+N hePG}t1>}&H=X?NZdU/g?vׄ4L}~ ~pG %y 87n v%}9W h9JRC8>&b:=ܡG!aY? ҶyI渦)&1e3¾xCፔ[U"*%'a}rA7-m(YSK[ģ1W6:6TGkev]n.b H?~]ߴ Ayʆ 8%LکƱ`a*Zk\~.XL|]qH};ʾuIZ/)%@Z_ӌBvXG j[鮌ujRɜPS'Ct'ysJ2ǩ 5~=JeB:y O,.;Q>bU~ _6/&m\Ġ(>4"-ACH; ka40dҴ#{AVx*Ђ$? I޼Ar!A6Y}I[G`^5P?pAe w"TfJK*xd>ݼ .Ǎ%oqM#i!&OTCX _ǬY>IMO Щq^3A ?m~v*}|Wn8Q o1J2r$7 Sd12U \Rێ/2&@-g*clOC|x|lnXJEd$bE~9v"AnRoG6yZQVGTeB?7d-'֟H`{cj{BJ/Rk&FT;ޢ 9Y 7ЛMTB-@_yig]}G:3W$NNQM Uv[$;Z"R@bgLKȑ:&,kٕ>Ḇ)M͒d}nbG㎾Z&SHc&'aP,|uk=>7g#g:Q߭r:Ʈd(i(L2)iTxe!i֮y&"0Z`*deElv ||k"^^k!RR0.ZbdzNxXEdkjV߀3vZM]+I=Lk#!?&N$lṎ0?)DwcO5FG:a*Ռ>vܜi{>X;G@f'>Pe9yyPQ]U}'7+.*~"5So .}&d%Ka1Ve@ +E;V ^WIdq Iп_LM&X@ŘM&PYx*ЀB30(!Hoy;tW2ؐ?cɖ׋ G,^k: sKڭ}k Q?7g :j2 WZ*x=ii4(xI.Y` 2jA=':GVx_tXM*zj.Ql|ňjW}63T i+Iy }7側 gys9(.DC6/XU.+4; l])SiD Ñqj&OBXG9uIF[OMs&QMps&fذCy&mFY^<%KhusqN"*DSR6U(^_6r1֮KsG660bG}b5}pzAs qs˨AGcvv2#<)9{^yWmob^5ƺBZ"oC 9"{@{f!DDRcJ/k0Y݋ژ{&(Yl9ǢumF[OG'ąXTW?D`'pu۰$yQJgטslFN}/>UZzYolЂ?Y|.5L'gXB @MEEPet@P{ ?Wº&dl4$; qVz5*i°#. qFЙ Q OTBGC3$M:AyL? 1gwڽi~KNgO[W )猰ec1MyH"ˆ鲇'5_o 4EXTB _2[J1u7rqPKE 豌Rܩ$m!a=Vƅ H]Cҳ~X'T:O>s@$Tps?G):ų#`>erzP>>g9Hc{LI ¾-!k;ۭ9fPZ7r1aPi[2@|C6κ"B[uh@Lv/fY4AL**w+r"bu%dHـ$Ѿ?Pox}c~CD-) 0+£ QYNu[M ]zV1#tv8M_tr)Aߩ R -{iy:uZ'^w*S꾼fhڷ$H4}OM{"FQpY,L]տwN<{JpIàdA$KLë~}5G34YŢF`(X=|Cy$l}ppZswӍ"gϙB'O% VR+`5Қo`ٲ:ND$B0qv-€e+tYӇ-#*\OZGKJ.:h=I{!<}{y5)uFM[zRRQl G`o%>61n1 矪6>FE}4ml}p%OJ\*eT}JN.>0/h_Kq|xسS7r1kK5hsbƧ %+lW q:_r(I C>w~gI6yM坨7$;2SS%&WTyxkt>jVe[a[&|[fA| <)O'=}{SK< 0?iAd8+8>f^<Fqì:=Zi"5}!\^!j>USA›]S| 6jƉ^x[yjftdǷUcanjﶛuDLxI+ܪeǧ;I`yIhnl@SCT*_ihQE]7q95oN,$;ImKߚ^ӌYAv.p~cdnQ>#/lPJWL&,hD/n7v"P#'U>QrxC,:wBTYrS}qA6]dA5٭>wj"hxGk<= s1"ώ(JE`0Gp*p.ϝ\J4)bYwaػ@GiĹX Re>h OMyFOޣV7@X=Z>6qUF_cY0`pR pxڮ7\4K{PƄvUBN+٤_W/0h{ie5:#I#xNpd=gx/#7,~]ƛLi u[SJ*99/q/`}lϛ\+k +)EVxrTZaRs:ʤd or,J5ތI!P"bػ}!x<ڠ1S{ 9Y#Wj#YtnEY%|5>WLP48NiQ $[5I"^ϖuJl>4'ڐiK- W8VSD5ՀNP0ag1g9=`}:tdI-GЂ ϞnLR`H;bG_|L= zE5.L/0mG1EdF;r[Э}Ot*:}; 1Fjj~f|`GCYo ˲tXǠ9 G@=B-{~is@]ՁK-r(; n=e:!xrʗ7 ÁEQ^>dğ8cs_T2Pyp~yG%Bc,&B޳/Bo&5,Uc;S"Ó Zp {e ؚvՒdq bQ \ӳSdC@nUd&cuW&gbj< 8L JHyD С)hGAr鈄MP=O_?˅` I1 H҅?*2I[#4ۇ*!X/\GS 8Wg|Q|\51] Kn7 irHj@\† ~,E%^ .qyn R['_$Uu ކF~bE ^b)-#cbG !|?6$.)vJ. 3~y;w L ;\9 SUマfPaffHW$ƂU 7':B¾G=-0g~Zxy7#M(mQFAyvWF~bLPڸPy[E2?p@8~zTlm$nlt&c'&_:'1Վ?̆W62粖ra6=><1%R3[n/5ɜzagW B+d7% )'okd-C\0)_~DExLvX7Ii5vCKL+DDpß T]E49cm+v.q| ͒ƠKo }+Khqy k5.U#[&6'8­~ ^Gn=L \swqO/]y^`L~̜WҟEAao`: 6 L=5أ|RA~d60vm! pn\nJ=5<,JPoj@CiZTG2W`1|W(A`~P?彿[Yg"_Qup*vB^Ə&l3 QQpBe}YI]k_r[$-E87`1ѕtYiO4?*IptC{U71DSI%}>ԑ0N {8o_ B)`[C{."8hYX'&Yx.?Jhq[UJ&&g=+mEp(i>W[v7qK$V칉=B8?ѓ<41# B__s!4=)4 r^$#X3`rO:3WoSm7GҎ[RZy&2NpA0&x-gi9-uOB߾*:t qXxI"AK%NQ,yH/_[ Ҏv /Dw6fӦr> .zH²kodM`neUb|[ȯ,zdIaRc.I8}uI+ẻmW}oiGB$v=,U RLox^1$wI~e ׏9İ2Kٙq;9~@+|& ϧj}:|e!eX--n?9dJG䞈9IJ|p x2Ty_38J@d5N8U(W `$%H[cj7 q6,=oѦʲ@H%y&n#af, d?>9hD3O.Y_7|eisjvN7qU= Q1u^HAu@ *9>W95waQ eJ7VqV{@n W48Ӟa[^wI NHEE nSN c@MC<}դ#_u]H~?,(NZII߿$CQ m?{X͝H` =l?ꪉ2o]r"4o acL]j1 }uUY}jĔX.5?sAȟJ}"QbiThpp9!Ǝ"p|W!*X"E [>:Le]Gzp ;w@H{Hx˿֏FW S9:]=qU,VD3ͯ W8\ ݨvnk[yklC|8}U;Z-J7巿Vv˧dQ*$lѿM. yC7>u^q](bHaNYӦͽ.:- lp[?Q챧|Ny~3\!YɻK3{ِ ۅI]~!*l`X*ٱiN6ƪ_3XN=*hm[xjZEo#?!|.l`Sm7iҀo; > D݄Дo;~=Յ]]BcEF?g$'p"@^ٌgŨHehĮgFNlȚ=hB&69I أ+N۰YG};;kݧ7;k(fgL[} #ze(N0U??PLf Bsº(U a2z=Etb'Xi[r]LKYGb2Sq2Nw8Q:n)DQ=hr<ɅMB)1g *ʄU1ȱ&20z%Xd ]7X:6u%kڱBM՞h6I ,ǁThx&p8!3oŜ;G>_Wf9lt5@cw_%[\pQ& tsXypM e1AmO=5{5 dؽAv0I*AluZ'n*OZ >ToK*հFޮm5-h^:υ1_jdL)eBV]P dO,[%giޞ|]^-A2N+6x*ŕ֜+MJgCZQgh;< 8&Uu]+ $֯ve|@pȘkθ{z]]GwUI𵁗_;SO$oRS3% 4 ӆpɰĽ&l6 B]X 0Wx\t֌8EG 6_*ǘUchB>vؘ5DXm:_$ݝ|/.Ӈ3^ B7 R9̈́qbm8^+*ex7Ɍ'LpB h4:eD.b/q7_VAG[ $JpݷL7ʣʲiL& ?6vh ~5L3JɨзƲjA,m~+Qq[Y!5o8gBv]>яNJZ&Y(I4O- C&BKBxRs_0m0| >wCr-kkM$-J*$ڲe;R3Ol&ҟV.Eұ>VR\ GTMQM F,ao]aTֽAװ> 1lse[֦"s峙N> :yp]@E0at=ʼ9#[uj0u`gqBc_P쳼VI/P}FoCnՉo~p\| d ]'OR`S{BHa!<"^GPlcjBjEj$4\{}Iїr6~xCEmcߥT(y/2nPD# r8ɃJy o72h@'%s4 Ǧg)lthtM0BY}^ԲQg8zmH&ߐ1/R\eEy0f[*RsP4zL= fB8ʻټhĵזV|wh "z;]#ӷv矊keiH$hG -UbB#v98ȫBӣԓ` HԲSW;z-(tCm>'!E* Qj3zM|1E}0ӉtItZ@ۃ22|JF|12^g$?^+NEGm^/:6wS>n^%a =l{V#N1ӏC DkBOkpb1(#kC0g-pPTF6v%WJ۵:q,UFe1Z3e QfΝ<]¼"9?J ao^ГzKtz~M^8Gx/N]m$|Rː/wr wn^G$$Zx9Jn!f][J)PVz^(gh_8GowE:<>3{Jci9"O*#2J`𗍙4?{P˱%:jarOz TNJQJϫׂ+|ʨ ]1-Zv6J( 7X8~cx' +z* Ɠ.W,˶^uκp5Y'iEg@!UDUq$F-YG.@/mr,d(3%Q; *Ig6FW:A$,3ƿh*h3IFK DgIlh.N2l,I@dB"x!w1J^bg]?8 ҌQ<u!-Y>B 0w<YeqD{QJ]Dd "ve.R'snZ >u 7-ڋ{G-#,1] WPws9uxjCܦmP\CV xEz-)7 j. sTЃׇ+ ;G-ݢjݚclF/D1pv>,m+Ern̯3-YGݺdJ,Fcy5e*jXI+3iו6̒ ;mK|itV,&ׅrF2TޝZwI^-QȉC)+.D[gV&.9B?<1sb>D;ѢC/C);JZO4[KR1a9 #{ޖ,`8.h$Mc.Gkj?Ig|mMݨ.W2ԙ,!lz:e$9 \}{+0'*Z\lܭҠgމdܭ< tR|=Rv^ǠbCX4U'L\jx6ˉ`ZEs {tW=q[fVD˓88f`Xm(åAF2 DnDzx^"D\o8ڢ$.Ό9*{ԶG%ZAz,ܞ ƒ ʑan ƹVkۨuҞf"^W9C:#mhO*TGFcN0g+':k ;+PkN0ԑsNdg1 W!p-/irV4v<页d<S.bN]ƀ5cȨpGQ6BpRD F5ٮrb`B5 [#>̻D򣍗a>`Л#92rQML?"(˻"f_Ї Dn7`8k65nڼi\nh[~kصꨛ6g,[2n 8.s>ߓ"Bg3( .\%=eȃ6~ ؛>R6??M̟i*Qɴlou609O}ɝa #-RΜIk86_{VLgNr%(MqqEL_9\ 4RYme:ImiF֪ ެLNY\a]f&&lhRѠ'_ Hvտߢe&92|.2sBQF"*1%uUϼLhOm_`,b+N %~X>hM~a%Vr4f^jP.^Aì*q?݊%Ežz,kM=ng 9V/&vz̞{|AVROf6 7,Fw%@mYjRr٧xpG- ^֫"Jog[CYl\o-vL:yoBYa+@Kp<0b$xu<#FSO*q0~h˚*O#nYOYgbŮn4X\|m+9_CJ<9#Xy&@,u</b/@mk27eDJ?ٔ*ڰMx6!D4?h,˼t= ֶ: ~vHlwWۭ/'.*_j,luia*W莚ty!(RRz:pnV8cʄSׅ+M#y88Y-󮐖)zpehs 5%kL1е_a8b dFW*)c.޾j `x9L8}ALV3r>u2t=#3Ɨcn,ĕQWΜIP0A0{34t,2n{g%м_9|8-:"%{!ceX4 =V{xLȧ-dGvCӰxu@Z( .SCXtZ3_]hB_`3v\;秅 `*+y5uTb[lAʈEAθ'F SzZp8~|ugxާ!Nʏĕͧ"!Y_H~v0c؂G,QIl\8/  FI .w[l@:pE_F#HHz3z1xqsE=-$ d罏lTۢLTdyxgwA!aXX.V94aP ps['7 "!iű5j/H!h=Ε}U3AGH!, ?[J(fA>!J'։UV0ϯ-Nc ,MAąGu2fwsW@.GSirC")R-7YJ(SHTMIN)9Q:4px,l⧇5ƅ)W<h/ws mܭFƜ40E;We4 +>L3_fZA!p;w&)tiyӳ/l÷ ֆ 9ɮX˟Ey_5GNW~`?5gs)TR_L,"NYP J'ѯq-_2O1j,r'%馣ҁjQÁ0$.h2O=o@ԻI9fG+bEGwj ^r +Pk)e[!alt@ L!dT傒RL$Rue3ѡb,ikl@e P d4!>(W@Ιz;;5EUn1{{_JۆEuƸ CBhV!ܕ) rxpaEa2,dvը&WJ.lĚD: L'7^Rg~/14艫-E?C/GO}{0ԿɴzjN4!M5H }Ƚk{U.[}d Z KWWxwN9I25T7|/7Py;dbgCg 㥫}n(C д2ٷP1Nn+}3.  @t ~E 9O$B![j(EF'e? OjiR(F PCM sΧC ȁyNW@>YD%#=hvu ߥ%{Q.%B]s܊1dnȅH$f,j}ޫcdUpz/F.'$p/V Vmn` Ayl0c{P%~ˋ.Zz=׀_zpVR.{< uךPCH [Kb޳lQJ@dK)>AH4T;+n;l{~1wCsܭ#Ng˜xULk*}\n@xp]Ƹ8@wRD{{htUn-Ps&ng#:9Y h]uBe ni׆1ɡh2PJuYPP~-Az[d3<H.EjD3tJEaB'˂?EYF@u$x̝5K-7Bm +UҰ@h<89 N3X @JsP:e;,}Lc1plm]ޘsH+n[$Q[Mw?P쪩 1sAQ'PP,wu sRh _e`hhȢA˴h /az4 ЧC՘`6sXZ-:_J@!A Ba{7t`gW&^:AhPeZusmqr޹&tl1LsHS3(Em鳤h$VE8jSÂlvϭyƱq\Gv` w? &TٗU&+'tyZOd$t46UJ<1 -L@6S5j}Hf3FPu$+ ?8m9MFm?4bDGfJYPL b=ұ򸞞cg#,p)J/[)Q0[G˹lz:~5[3+tLz P1fd.2ҜiV`ʼn-n12NJ1`pIJ73/S$,Ow/&5x#l2hB%Eq5DVmh\z"?rSo:)EӃ0UxW"+{(:YbH8:.`H]~'1+^bT:9ƅ3_#Vf9b H04whxE@Ǥ[Ҥ Eety-.eIArX#n-gNz_b57ҳ`s6~'yQ-ظBIx.L"iz޸BC^]8*+eg+E{@PD|WמD"L8@p ⏦`ry/JeKlY+?/b'xJcks s|TK|&XΝqĶ}Jj߷ 6\ 6c]@MǺԘ+efӂ\yNY0f#щ [(ѨH)zGP 4I\ sJ<g-;%f?wx͜=Lބ;ӟloGSܐedQdWB49;ZO*~b/#VJdD N^!lwwg0axL3̖/@%Nz7WxLEJ?#GBlqLUrf)mj8`Hܤmܬ"4 !)yZDU`Sӡ wsԷŠdRj;~3A#bi>>Z7׃|H/NpL+t?ovHjKcrD&PQxe+@ar,BI*3S%1V\j2z+ ڗ2b^HZ-[Wjji9a1FZRܩ#9'|H`M/[D _ (PXDIS/I_Ծv( C &IU$(ؚRomqnZoy(QR2 8*S+GngWٸ14BWb|j fٜp-S(L|HmUpc ZMvB%+4xzTwݲ7~_9vTK9(T g87%>y_2]`lG;SHGL5$;{nu.@Z rxE6_0 &c!)@EΓOTfjf)Xف4)Kd{6~NEWjE Dn^Ytg"1,nn Fmwq\2TWh:ǡhvA% uK"{H,k zl .kW;] AW)WgslWN,_Q6'[eˁUWv>yEӉa3* %^bNlsl1MB⮯jg6ުT}C+R2 @9?J]ԍO?'/0. oLFLH\FkEy?F& Aub[,C`%nf^JLHB|*R4?P\7lMehc״6=%;+k,[Xv2+T@2lI:h/I_~Eԉ4+-֟r7f Ygҩ -,X3Y\enX+jˊw4"ǭpI6ӨQۄgÔG5FZ8FބMZUE'zYv!ˬGz1|1=z 48IQu09,1;oO6hGOƩonX{ ym`VmYA,!8ォ#|{ rC)&|{;.7vD?M};җ@ȉ\ $/QrVB&d| yzvuOpJ VPWGxY1~|S8d%bpY:X̒p*cyp:t`ٜ#?kXT<쯏G %5269=7 z«LU,AI<m9~o7Zth/HEQ\5/!bå֕ƫ"y/S%rَ'U:r|( @)ÁŽUF2K"g"+_O6Y1n^yVɛ fi*7Ba HnZn%[J}$Z>حlςi2AVaIo6Й\ ,cHث])WlG2秩13njWp1v̳w8-ϼI^ՠ--HSWgu#يD8~2 ('=~d5IƉ tՇ.-l""|q< 7Ss W$W-FAQtoPR% tH Ȍ˜ [rt*_re yp&#o(0&л>3rZmc5lWTXi?-a'oIV-GexʭD*♖#AkXp$"?kA C-';N{JF\h84߯,^bQ|:ر~ ͪW1 VɖQ7B>DhrR&V6i n5OmBD*lԌ䵉]$ jjXr[=+m(%iclTOOOQߵPZDͦbuQ'7͋KZ  uFEAq tpjP=hT┢  0Fl5JS V7Ӄb!olcJ;>Zzj9;E$A^Z=s ,|T;UJ|ʻ!/ߠdW~˓o?E*X G$&.!O,E:ϲL~4,ip=y`é:@ +Vh<ÑOFN'p^B㠤\}B1kp :i9eڌwd>^'&.Sy 6ZkHMBL^,Q aVG 7NZq LS[l88YmP,STĊcQuIO` 5.UIΠ0bxv]SmPm|o ۲&(Lq=Y*|K!/ܨyy_Uyc\Bo: Vk.Eܦ)F@t뤼Q`Q*hʏpRfaYdg}cEV,VΧnIra-MMbzotEKn'ps!ftVK8ہ68"PNa(@X%iQ`I3IMmZyI4B')J1qfZpHG!mP?ml "y6llu$P!F=p?T)B_u` A2$]dr>c @r$ ԴzH'ȴcgCc"TGYUC%n$;+d uh5-oM* PjǔFѱ\^-)Lt8Kǖx#Ʀ tc^n֝t'0ܕ0%{`k11kR\JkP5A(NF|M1F.\1'MXD31jx*9Hr*=.d?`1!d 2;^KHIE(nݛ_AẺx_WM`)\#wUKC!"}7Nm: U:; 1ko_](2s/B;cp B-@H&:ﮈʻ;7XWg3<V~ ut2w]\p#i-ъby?z@кoq-ʉw&_}M̀.JX:V=yկh{&d[rx0(ܲT~$_OjiXEzɓҙ(.;$KˋT5M2Y[6VHb3o|;=vJ)9~ĭ)DD %"$"XSlŠ,P>e% 2yoYYԚPxkB EDPl]]Yr!-3 q˽xIve#UɧoM A2M%7=jgV(uZgEЏ&dj+ۯ5<~WƮc() 2O*Z#WUP 6 %t&C O/H,[%N-GU-eyh2N(TiID||I Seic=|vNp&zI ѡ#eT%]N|a#g~#kcx5-ùvbJ;u?@pnΌP8{a|qcB vq>h kzUg $k)Q՚H놺;4n5 E$fD^bG玂d}G.iH1}baY NX+N2AEs:gOv`YLeA6͒6W sĝlXDbb'BG[̏JtZUN7exQtjmj)I/gn 3`xANYQ鎎̰!e+S ?K(P vC)lս28"p8dY=.@fV/ ad'թ1Rr$OCF"OKObBq" !fw8dDugcs@>S7KM^BF{L2:ԷY녎5v64'y%W@m#*wl?)2ᮦXn"̪NMXH tҲ1߀s;t/G7oI,L24}|VZ|~.P\E3$=ռ+F ̝U4D{0LroJ=PTK4zd`fOm֦< VYªcnNOY Bm Ee/l㉡8̨|ԬUb6Q$.pՄp\vplܠ2Nxdd>OyW >NNN RFƭbXDŽ>(sRP2(Y: v pĞmFum!O[N[EֿvSİAWϛTa77GcY-8q1 /W/rꣽzx P_w >v89ҥ מ~W k2wwZKmds柱  kZ0 ZZI:͋͛ ^`* &1Qan6QKRX%cwff!Cf9,] <j2!!"&]./V4ľ1zǂ5DH9ӯ2o?4V68u_y:3HI?ۇUGy^}aC})Cj*-Yl![%9FmP&DWyoRGt8|_ŹSZ*} ^'bb!xΓȼúv0֮'['`#Ua =ҿL h妕{@a8[pS]N0qieH*a Cl+rZJ<7h,"WP3 jBFT#ܝrm!aGz>FT``HGc7+/V"BDbp& Ul䳳Sg^@@* ߘSL6_6M8!FDZ"#*t4]^~c@E3$/:dhSޞI@S? aVFxPH)mrQИK2dDVjTޣ"Ьe:}ow(ϐ8$< 'kB/j *#HXlٹgmxCvIyW|MqDx#3y҅ -*쿻_Nj;q27Q+8KL?b %hAEkjm׻$V8kIH+/~4X[ԄHkKFW X)K]$|e+#o4'E uCi)9:Fg8{IsuW4(vB";NMźm0H3 f"zX,]@w#pOr̗LLjE;[̇BpE=Y#Sۣ g0 F`/c9D2*EWBOa/{/Njy EWQЭUFvD!j>Gl.o2(~YB%ѵ~<j~Ԙ^F|_6'b=)W9ie`_7R/@;Xߥ[.WW0p ~UA;#9+'jcAZu!wg+Mp3JxK30XºQX"{#GF~Q70B iϹ,_AӦyho(K^@(%ot>O8|6׆lQ<Ñm&Kz{b[F4m$M2oP>)!d& XGr}:jj?b?)eCT1~Y 7u)G挘( ,Bzݷ#Dݏ:e"j:b03*&k_gWcu0{tϳCG ??]? 8a.L}dqCƦcf-^-9R'/Ƥ~]^I%h M'GB09fD'Z }+ HIY'UWD\?[ L_bb\Pj =0W+DoL(4T,_mףJqø`iZxXUh2%3# Ym27mFpyb+bS'!12+ڱ[M7E o*HW-jjP{5^RF6)zQsࢀVJ-L;1O0rv`Ub&.?|ȟhX_"`W;c.B,FfE YS*m Pqg2sz+j8_ s+yLдZ+8^'A,Ke %-RmgҠkH8xϔl=_ WHdqq,S7vF檿zesb5%TnpN&lk|r}C8T#EVvuAG7{Y kiILqD :\ LMigmC][& w"ap\o E\> Wh n4 ;x|}5Tu*6 X`n |Rl:Y6$|iqshuyDy~$y|&>c"(,S |gTnc;x45i]//v{ya _])@-@{,3}M)Nrsځ^qސ–a d  .sBѓhc1*9Fqu4>+[^]$ml/ `V뀛KI}w/GeT9;\V?ĉmUXU|{njgcpuXn8N. eXHA,|LB{عqV} o0U>>RwˁTD9N<$\模1Ӑ-AA{%(Qx%|֣M(z<)ݞ Ϊ@N-iq&MqsR3_=CP+KŅKӡӰua0j*;KY+K 6=j?zPlwo~'][Osh^siH!/BochBlPBj[qRsN9#_"n,u$$,#0flNX4ۜቲv$q's^asRd'_Z C}[ E$h޿0Fu]k #e[&C"\Ę ƶAZ@/ef̯fqM CKG}ΘbL Jp1oRnlp5DVXApFȷXޠf` zjLHh w VQ3i 2<@e'4Zj[CfUd+@dY :2(\fg.PZD׹^΋Lky˟sAM/8U,IqѲX}V19>"?4@ s?t"4DlgٽhcI?Ƭ18`R7c׹H?c,{76C vӥJ]YgSn b)w q%x w?Gֵ$bcgYQFr:,uջ)vQ m>uF#*B)/ݻ[ЙY6xF@%er ?_P[qԻ>z.?[V`t|UCDӎw@DVć C1%ΈnC/hING&_I8C&Wx2Lk`?`+^v+Wc=ۗYaigG|ijQg26ꑃ EWu32x+/f@**k8w^?>M{nYZ2W7AgXb6I?ci>DyD%Kdi\(},_ꑦkz TJ턝TqȽ~>e{Ej(rj<SEMKx \@WCi&bbLuXmVg"VuGb_RFxbvWJAjZXoRF{V* D9zj&'GxN$,$C+KBd+ 9L D%2ۍyG oCXX D1jo/OV}}1U._aaib.$F&OB\&*jPYdBRGn:GXbh\`=[իtC|֌S9K|XhFEsYUdjQG6$f]sU'ˎO aq -1Ln s!+,{B3)j x1>Wp6R 05o "%<@rY:JLG gnN*fD~!_q`uY5#7jc-[F7j;$;!7jKM Kdx7kA+Rϲˮ?9!EW춠~akwX}CDN20rz~bMQTG+a6W#/ؒ">q;\Ԭߐ=;Ǔ*=\ QN{ǔ pzSV҈~<š*)!]۳;]ˉ?F Q!~H -єE[Dn:PuvaV[D& Qی_^I[TDWTd hI4y"\JTįv-فLF7dhnq}AkmV./ eɊuᕵ.ZJJlw['Uqem+Ж8x0ii!~ 'eh8^pP^9(Ge+)ۛ*]*\ tteRfw!QNGx|ě1.֛mAj/Fke7ZB0=vk+ EQiV 0WYr%2Jn~8 x9@ ^oNvOB7%Mui@vJ@JW9~wiB(,he}TU!CwQU?4l Ȳ|kR6Po=Rr S:U;y@Xq{fOG],ʦ'`gMBd7 pPStjP">UU* d\ܭC׆2r,no0U(w|\4QZFXtu.^Qd8?`@fC) }j\LbVP̗Q @PM3_!zv(՝; хb`c=nC!Qq˶˱-~-G߂JU9_b6!mH=]cUm{ ms2xd/\M~6Rk%&B$!oԉEF +Z!Eӟ s<3͑"vpFN1H]8ycԾ9 *ҙX#>1¶aAoB mh^㒈:ؚ_x 9cЌӝ\Jz׉ʽA0r pTdQ:c|k$*Y 2] 43Nn5KfEmM9#7ߥ|$M:s6S£ l؍9acFrj}/Rkp?#&CmkbPG Ju5._l{5R8`'zR֤m/p̙niJ-H)eG^qM`16 <^?RR ؕQ{JD:0\O1jݤ\$m>A5@LŘ!> ecޯ < ;p)"VA dAKCzqǨ{ D%G q+#8GJD~+?́Gq=ZxiY2IrJEe^GDZC4lc(tO9ƄVTڭjvIm*5iu(eXHHrr`W Fn>Ԟ/)%B@3fcevN#4X}mF";9ed#FmßQU{Ruj6#Bk$]mPBb 2~㚜!^&d*cXFJFxfiz*zT —Ck| 2š /;+7Թ]E藼<=%k*.!8=ku7~c^ CȜç%?!;c^]JM"\\ Dy,ǘ^2e/gv]58vQZ:_eɐmLcD23F#G%e$*w捋;~GWS:t|pNeyfvp3+[ ^yB5Vu{߿݅^mӾcSHWO) vŏzj!J_ %Zq˴̈́͹q<spνl1)lq]GaJ ZBqM;@ wuưiR U,|꥟j͌#FQj@A= N1yjhpXG軉]|/&*肻Hpju7M  bFS_y*2%#drRw3wauD!4l8g[BHE2{ ȥ/?!֪d *{(r{~/lcJST/txj>u3$p1pk8?Gtʉ-Rt r|~$M2{gY}B?“Jq򊎍H" s)ώD-C~$zH'MrNs]=:S3P:WYTkv͛l"oԃ h,ݏ[B8P%[2:Nh+FFz2? xщg}[.I"?GJ6?BcFpu&bԈ͡`2rsOmg) ~.0q@^nk2}Qg,p6GI1gz-LWkgќRY f%pk%q8Nar2IOr%i9'(Rnm݃_ 𱀯=aSw,6!ZpQapk@tM\I0㻐Z&.W.KPXxwlqO7 [[}w|s(᪮N+s5n3YV4[E Cqj {dFEO~nr VCv;t~yhtf%yJ-{[a#HN>ٵh;6*4 "^WqOΪ!.8u` o)bG&>\E~2!+Q-l4n yCx6w :Ѥr6Iz"y7KZwLwy2rU;Y7su-;͟iK˻*~ֺH0{O…A 8 6qh3sv-meEY$L%2ٸ"Phsޕ0 )hz?᎔p"eI/8ѳ|1$?k1&MeL{|{|O[q])jltaK` gf=6ITcLݲJxG9 fn,.KwO/-S&~Ҋ#y;H=re?pb<ݡNBunh}F b ؉} q Cn]Ѻq|.rX] T-n &K:|WLՁE9( (&9 F:}J oLm%,\J@b}0y gk^ ~:FdG(pLvM4P m4(˗.Qb4J >KɷјYyOP[/ Fpр$`ʬS $]LŒOEL#m A'''$Hwq FG k:FԤ;/a`P^g/ރZ=@T>v{K=BX[2)5~`0%ÞB^Wug%^/܂9q|ІDWڶ(uySx6H 0oy^iR; 1D/%@ 겯iֆ`sz6 э&lo%hOv2.vK5$;$ZdXk|퇰m\<\:\ISpO7|YDBe $*;/qN>`QX:?+ľH.Ji<ڱ!t+Q+Lr-D5*tb ;0s7%q)ICa/=s'.+'9(tqWɃsȖVҁTCwoeBf'_s1>ޅ8+5cwb2rŨ1 bwjtUsHAʸ0Y{x5x- \ @L-7[ONdmA6ЄbiB{IYEG)mnNQ)HE㣄NRN"J1ufENUV 3T_ ^xR9>Qc'0KJ2ϩWuU<`[X?ӁnΙU1Qe%JᾃpRGz@W#mǩB_X6^> S Y/CC7Hrs̚\ }Dʌ:yK%g~2?؃2|+K Ѷ uP0 ,},EI^W~<σ;S l^S&.T͙#<;ɈfCCS7E|OBA֙ àhTn2/t?=cAƋHH |̚#TzSREZFͿ#8rZ:.B/LPjKKk2e&NŸ"fj NeRe?Uy?7(SC)-9+3,HǜkH\6<ֈia|kMzjڝR`Mh F$s$ƹiQ+ZPՇl~H?T#%oRkA,,9kU:jt4d1)U1 %E,/R<-IVѹ,? &)f0: ;-2,f3 .0ac,2}9Od{g!7kq1i eQ v|ĩWt/+Ł*ߦL~*mt _@΄Fv O4_ug˸%6Qq^BU{n#ݨ SVˉ`xəq9v%(O9rRcHY}V+HclJPc25}l׷*<7*m}rU 0؃D 9dH5[d<1HXƴ0WouՔCZC9QmM3jku궾nwY΅A '0m)|0 $tҶh弴2o :n4 d*AkwRR'棳I{1~ h:9 B|Iww􀽇Ws%+MY=ʝDJF)|`?R6!?'Њ )it 䠵z1ӋP>O! l,qoÔe/}5"3d\b1~e'_vW̥wQ`͔o:^BL[(7k :nYFE(%ø* 2zTHg;;*]e*_`5`hШ,͢l%JmIi20ZZ -az8'_1| I@pJ@hu1N˜2~.'aGK_Ìt@klú_ŮO Όk4`eoOM V] b\ ipaօT` O VޤaO;$;™) C:,u3?Rd7u'P=ֆ vΚL d?Sea[Xbu\߳)6 4[ `yh*GikQoIމ`8#g"ٟ.m2n+B.R\q:ekCFJ4d.ۼe$LѬTiZmٹ0e 6<#:(^sRd꾄 w^UW9/bݬߚ ʺ6`%~k?$ǎSS6@]P=B lwWƴ@akO_F3si$D] qR4ݳm%€D/!D|Cr! ~_ [Vlcs\(,B} &,юvz PRo6xl@:P v!stP=JC23 # @XN /@o4ϛo^ l;BmO@Qr-KLXZ%ė-Jw]V9S!($ձaQHk]iE&_.m6 ka)0jFjOAIy[o#2/TbbpÕ~HߑƢR+z&s.4^^O_@1ݰq.+%m,֛^۞YH g }Sc;Reۃa 9F)Ȯh?Nʿ`5> ]:lCӒ"比s9*$td6?HLkˑLI< ^ ❃+A<2bTYޣ siw_E³R3̖4ܙyD"4#WwAD3hj=6=;~yIǞUձN8~ORťtXHYgrqxm~Hm0fv(.+_E$h$Y]`}5Zx pprM $ *-u1AÙ#EtGA'5 8A^_voHD.48Vg>&Ԛ 74?dKT.ᥨ#5 vOkff,b ik ,w]:f(螉獵 zi"!EOS ~$X':3?Jx'' y}lt'bʪn }XwkI;|d 7kU뙂S.\(Ƣr6tY2DˆmjSNJ[E_ΏB Zل;/FYd5D<2bj qYA7l{p3riGR:Eй 2(~sI c=/B#EG)kCΤ+q7!B>IRJ܀Q 3/$Q/D)}=mץ+.%+PYLkI1} b\!ob[t4"JW ̀[1BI_okZ~II-KU;, -[һ7锷B&l+ejMb4߿IM0yҝnvK2w|i'}D@}ajCTabs/H6AZ2.ha:{Gq>}";#j< z\_>:P *8 \|Uз8tHkS^r5V)`Wn^&G~!un-ah<)ɔh!Lɓ8JqW%:HnMES#"W0Db+d%@tм-Xs5æDQmuJT]y'@sb7l[WxXݙmwt S [oҐRlݕ>Ӧ*k8FI$%"f5ezK$9b$_͠`>:Υ]]T?[c[3Z80\42`f"ەd) ֊m E1$m,a}IJLW$˞l ]e AE!豛 htOρJk¾@@D߂_3IrESđ>=jtz-s>8 ʠxnV**pHG^kcEukD}a.,8lHXM]EJvtibυ1 mG8'iaj-6UFvw]9P`+0[>I8߁W]$XqaO;myZL;8x|xQjZN3%y6GP곡xFGQ|wGdQg̶#e0ƿaC$jBxQ1DAUe^4C*Fk x{LYij)Ja$mZ` dLOKCHI KFۘ J5v\HI3Mk -6l5Xz;g Vnna1hun3ӞQ%E4 V(ie]Ls96rsd{+F}&Pget!sƒvϧ|G-Jq*ϐS[}(oG:~,sTom'r^-V:&Z;+>`[Pă~OF W"7z!E6#-QgʌT%eZ|CB1Ys)YpO%0Ehf_Y`Eļ}BEO6 XeD w,PExq PVЏOՀ.O?jz"2rUfݶDrc֗@3·+g\UbOР<"]p+= ZA ҵH4gmv)LjHVS=5U\Q0(GJ}߳b)Md,οW8K_,Ӂ%Oj@7V& /|6]l^oHU{mԝ9xOIrY|*MT:*'w/j}^ ]oVΨm?1^YuixJQ2٬I`h4qb]R1B!y_9˥ oɱL4NzFv?-ֶk>Uj+m;zFE t8 o`b<}5`[3w @ ޱ<=95}eYT/PA`C.N@&0ܲ0  Uobzݛf5A>=ϫIeDa&k겷9!lsX\nۅvgCM9P!1"_*`wH (\RP DBxK.M]b@+.ՕpgzY215-!`b6HsPg|2_iYud:'g E/zey!pmdSt]sEx$L43L1 nH3ZݟA; 4VѯQPc5[6BoWRkX=s'[bU{]1)J3k+ypĭY(k$8N5*[:YNkv0qgOEX =9cH@ rt֖9 ~2<ʢh:{(3X{+ɏWd4z=޿D;N gZwPle;w?b9OHD I 771[$1Ul X΂wޠQM9>\tпG"/KNJacm-qjwylEx { n˭C<ϩ,ώB=#]PFliހ݄L5O4 s+bG4uh*j9zjz \;SKz0umpVr|D4lmw(St璀R ugch?@;Wv]61)`7Qa wq'"/;fŴE,LŮ9*D:}Wo^,sl-"G*5\tPR&B2scֳh#V8S"GWDb8xvE 0\h6m[ K~\Dʉ:ݢvcُ/)˂E< xCp`38 7].)5rLбo^Vd+ِ<.;t詑6OA&wg>H@<׈|ՔsV6,Y/ʪe x$Fn WEb?Ojm{-% ]n~vzyXX`2wj{#DZ5J2 jm[j%yLꉵ))b/߬-P@Eyk!; K{E@Rqv(َ;i{@;8KIÏSu[HX~KJŗbj j=g-~r* =XE}%LDI`%;K"m(JeWIN~%ԌI3H鳐2Ȓ'M{J)Y+x3r[{q76c1i{g,aLp-jn<kƌ 2Qa#VL4[apUo8J*KGrEϣxgħ^rSHi2&a&lr;jCS~h= 翆sB[o͋܅37θF6!fvQVDžUMNkvO߿qXܖ.M;XdBIH24"7֫?:p`0Vaw \ H_ޙQ='4ߍۈ:r%3$K) eŕKLjءpJgdP<רE1cnZz6&T>f]#p^#%>VGi2Sڒ=E(h->{7g3 Zic^!Tf&G7Т lfznr#Y'H>q|'oA 7cTjdP89åRp$3tkc\-g$cTzM"n/ 37 Ɠ>tx+BW<߳WݯcƼkvY~ʰtd9iۡ cTi<ͣ6v<|' gAfѻ=,Rp3u֨&#Ylx#1آ ʜ ;tCeg撣h lhJ)6Ƿ1l֣ݐ<+Zu(eX4 oprSyUDPvj{h=e2+,aEB?0<s%|syQ!v_1"g ^u2T6:a1ĵKPĊ0z뗝/ ѫO]]z4YVbQgGw Oӆ'"W/}0,ĆBPyut]ͣj%f_̹ۅR@LQ,u*ZzzBJل(g*QgH0w9f',/s`k]RE܀/:n`FYB@F5]ߍ>aoEx ξR+XWZ|\mluH,:"=0H۬;@%*(+ZzPnJ&3@Cw+Nq&[k%490kHD=Źp(t ?bڟe1'sxKcebpQd'ϚV2E^9͘>čBL H\se88 B,VFqrB幛&0! cJfhXjk=oU=.Y8W?N5-P;*PrN L"&Uy/KȿZT( | WT 5ĩ*8•nE@sمvO=:D.' LL0S)-l%3~l_!9uh nGt}5aZ TJL~Qp'>[u|5w BpoS0NIӏz?́?TX/e6#"C:U CԩQ +h=*F[/T&; K{-ŷI4L? i9+,2 .-- ZN0wL)\jIAv-C{r1zPie"UI͡&3_|SCaxJ0G2 / ܘ~M̫"FWl%p=_m|Ƕ=J( NY=I/Oz ໑%Ӱoݧ_~yd JTC=B >>k3]v Tkl ܅ lRTa.:h0__9-/ z>DŽ\ɶDFf&@ x•x '1pң6Z:KUX{&|#<[krx?[o:O E 9)8nuM@Q'T^2ڐ[\]69T+*T.VP'5x3A }1?63yF 2BY0 (sT0HE89+G-߃K]Ȅ.ao<0 O7d.t}4Tdm"NXZ+trc"yBf4aՕ4^y;2] 0gA;A qR:hѪR|@k4:.;3Zdw`!O:HNa][R7ٱ:LzeI櫖Ϯ-+tqPWyXրSy88Bg o/7\ϊ}=|*lSѶ.%mHݛVܲ/Ĥ U >rG4E8bς"÷1WS([|\YsKrC_o:[MKWYO9%;jpJv%8uP*G'S+kgodwY\''v(`æ{^B$kfcEV~]?a Pð6az?嵆T М _YAw NZ!0p6hN P(*bLwn+J]LVf|uw:t\ Էn lDe8ў;4T*?88@r:DRQPq.֯,;ibXE5~حEJDźjMLd麏I.@:x@)OIm*C i)CI4_ #뜙+4_І1=Gהƽq)siQ|8:5Ŀ^&^ "n)ߓf(r}vF 8xwf6$˵,:[sG;xtSL)=~QݕvX%Cc!V^yupUAf2A (UYNt+N ޜZ3q ҿH-PMGuKm>?vnAU[7IK>şNk{\hkLW oĝ&Z(~s .=z¯~"~Ga>:-<|KDl w, eM iz8*K{`۟QoFފR M1'43uZ7!g)g-8Iиm"B|K~]IisjI+)wR/7~U_>'ۂ)ObuFOoG0Ih§_8/!vRx<- gNM^J_! c9vp|̄.]s]b04g^l䋡MX6FKhIP vU9s6րRy*U\Ķ0Ynj7qgawgj!;и߹ua[>Ae9ˤ?U ~Ю Y篘65m k4`1?gT)(|Na :֛,}3Mf-8=ǭw<>S;"~m !O PLW.b S֥7$N|-XvGux({Koa l5D{_qNRND ֻ}C6">9Ŋ oFu8>4`k8mx3g䇚0=BM|l3/.2_BЖ#B69׈ӿg0Ki@KB[gbFQ9a!PV"Z/^9K *?)؛pot=o]7wGjsžl}`԰u\F)a[z ځq`{1IH~>RE[ێqA^leT/?ĩ}6%}6G1=wH7dHjRVU!^zS:?%utRhRp@Rq"-PtQ.H؜W)~|J:Z*7QhtQWG!Wwd=E` oU) FW1 "7i-PM^3Y"x8ZO׮Ln<V%SP)w<2`C xJ~PWV (b[3F_dԥH)P?V@BH7Zșxٛ# zRUrp#[Bft /TT 6Ϻq(RKOf|@Fu!^#<)U:5T^=C)lGx:j:Ѹ(pR5 Ac}t$(sQBL(_:aNh),[7*)|b!uwm%%Q2Q lj%Nks iz-P?ɉ.4@>yrWQ*eF>\h0h^ۣ0&iBjuZ 2l0^4HNQiՂS% "\5 J\-vL1 aK)qܿ/ /Lf,ILuxUJ}i;6CYԸ;j7tQVq7ٰuU}#-RG wfT7juecZv߭>n#03 ΪR "@ͳt/@dvAno,J'?ya4صSk(P(QOa;wdܡNhy6Xb"])wV ȭ8f2ν oi &vV 7i>ń|;-w^.f1\+ tRښiZ,u"|s(D0REGM2L#!XS%vZfVbi^Ѵ!SA'U#Z$~`αݱzbwH_4=YiJQ$<)6xWgd'QD,sG >=|fwiӏ[Y"]U2r#4cNǘq+_GsvP :$Vݽ C}$3e(6АnQʭﴌ7d1\ 5J3/=H~ v ɈWIn sxp &a!jP[螤Lb㟡7-9g_ BotaQgjE%ٞBf?A(\RpSY0P9_q|QN -*x/6R8}]PǬy1=<~7@I?tRwlXaW֥ş%hw&!\ٽ{J615@}TlX}cb.meq#w V 4RsûeVR!k i3!t2%t&Fvn!Ӆ~GqIM* " $OX:1=A2t)4U+`#d 0ĜcMY֓x'U\DGg- q%,fʔ7'˔:xmIs]/oQDKjY9vɯN;-x\6 0BХ84 M8%*;S9Ҫ>/K~kvVr':vV;9ǩ\V$AGZG=o[EE1̕')5wyjSb^RXal70tMHYPn[%C{|8FҌefyqx|[OF'e\F dυD,v,;܋|t"sY)uKd5y&H"#MK_s)tH:#PP[F%+ {HX5D1Ve {q6aB/ե:Dbyo5hK1wB= ޺5I_۱7{6 avnQLǟ *2x(S*CAѣQz@Xr}qR^:/mA,$)}L }|%Z$ w[p`~AfRVE<~ɆL¼^7äJ@U0_]  Xp\P\wwTFƺ>t6}KMs!c%wH&[:Y+TK۰t~_H=I} 3!w}3=T,T$(DFB< Q &<y`uZaD p8>I4sF= -#D xک7Hu>#҉x0qE:6 5'1oH_ I9 '8v^{Mzv}>ffϠN ?Q= 8s G71ٶGvoyZFkw+Yߵ91L/ ZӵxuA0zoV\9Nc $lm$4p,SDl- B ̥itnm4;nuMnnlY2kh=r9ɀ%8c4C|/Yk;AOf"8oBsُJ߹EtOSL(TFe~ j|`#+7^Tշ1r8Lf}E6kJZ ei^i<χU綀"?:Fɥ|!ȦUxhw]OE$ua@~Gj|YbZsDǚ*~KR/ck7&,>o)hG?3٬cdqO񯍪D!9Rqxc1aT`dbu,jgsFT\)dӀ?8?HQDIcZbgP,ʮ$6yCi噅R0 .7*<ݐ'R.4cqRXeiu 7o]SJpTW{^</ X.=x5jL{ z]z$`&hKמoبQ H";].#V(w0[G;/K fzcxg-_rUCp6RE}KH~:D1{LtPa"_1^Sn: iw/{jpeƕ).TVrSFö -&ҊwP*>b(f&kvP̵7Xfԏo&CѡV|iV:,H[j`wfu)F|M z|-te'Ç5Uc./H} hY}Rqv3 QhA:s6lAN 7XQ{&xw &&[hpQlڧt |t \ZȖ$X+͖X 4܄¿ao/ /MݴMh Df,Lׂl/$"TOpS@cejA PyF Gm7y ~nVWz#ΊP"Qx#'zƶO0)XWH&MÐ>}?7Nr58w>b.ӷO

iYU_~  fPWI5m`*GK}-Gzz5z"̊ @/ 6{xp>-k"'T)R@sLeVPm?քy)HՔ/qT~M3Y7^,3&Rpob횗UwC 9[%5?@V R.{&&iz=m 3T q*,suu]1蠻ZN2gDT`0 5k4>}IG:m. ?49 Ɣ M*6K= 3Pc!DP*l=b5}(9FVڶ/KD}+]Z%y4$r+L ~Uh0+[a4֞e+#VЄ7]:6rdw| ً]x"EE t*]+ tקoY9T8.GgE2B̥ oY}G]<*n%l,C^=*?ĈcINш| $o $=@,چ+˶fw; ;v=o)FzzEC2s4C4XXh0x(B<JD12h?$ s96Zg "66#NJ[>"Z}.`@M4L MQAh5v!_zwFQG냈uGIvVtIGe[{`=}5gD)Ӹ,I@]LB<:Ԕ3J0kEʕrnֽs8=u\}+No_`OܶˑURC`7R(\)ͤb(mCwĄЖ6C,4N"IgQM.V{<.Ӓ(]j~fx9~ĶOjMaҸ dB f" bFj= 7cR&+^/ `+,k1H"CXTx%j`q"!dG<*D& CGay#J $kHf.Dskzs҃;̼Ԩ ,حgy&"ǫNpф 0m$ ;B־/$g/y))u F_z+RwQEk\@~ J*TmjR!!UO5=lVȘ^,c]cuF {M޿~Cw]Y$F$wp. \d|"p:,z40u({Σ7XVPtD͏bvk9W4א_ , ?A)Ljm+[PΟ9FOzK /ahrMmL:7rT56gJ'G(?݀޹S%z|,ם(,b t G(b;k%P`S3k-7;Ws [t }ĿQTq)Te̢Yԋ.O")j$8}ˣE:&Oj w=]NgNRM";喸 4.ݚbC=;uF.Y^;;zH9sya[ T6vpgwnJ0HeӄG1x%~׊Gϟ ZRu#j 6^X׾z"K)SV;mGN1jԶE %= 4! v!ϹV!tJImN`\[g|MIDZPUE|oǙ(vw$cIlnu]'_ JSta}|/]i6o'v\6aSdxe vP\o}ۂz*::zDyǣ囖]H.hmw+&IR<wstEէM2/TqxZMP?. A);_NB*aPegE(.R#׶e|k@/K\y/SF 4Z0)H:qy`[Ir[R3TLA)RS .V SvR~l/VZoYes4q;]Y .w~QoѺj5ฉJ5Tr) <rDROëkKo>@9C@YK٬d OExJay` DKZ%}f} hz8.psF6U`]pV\StnDmoL ,ffFGa^ל,r^j/euGቡZ\ڜ ˀ\Odh+  uQ4Zv6ְA{LoP5[|H83s+ѱ #ƋSh5iw>O(a%qvˠŘ*6iV5[8"L55S0Aon|k3†Jh)}sba[niM;dl_mWAh4+LnxD1U^>rl<$Cx#!EPphu:'! 89i7Tņ4){?Wgfj06aْz( X(SuG9uaR;zʟ(6.Gc@K-*XqqKԁ@'Kb`Ů}i7Z hfkM.@>x豱1IPC =b:WQX!kxFCZ!cwp!j>1? ROyB>}fǶySCc^^_*qygj3$MïO"Ȃcm&Ssum?A [6 ԳBG)uGpBǾ>>L%{($\GTܩX`dv'H}bMEt:UᔀE=IB9\z[4WW[uύ͔5SuD/p5̝/P ި ߊ -8*X?oyJoNUkP рb`ZN`f3>7{Utؘa 67xuZt:dÅ%4N|"2Q.s'K@B <.y'N=g@ ,I,jq@PBL,.ßnQG#%qgy>юKG?it3Xwz ͊ /h ѭ6;8JҷTy%s ^R^p!$Z} N,R5g䈀K _T>'O}>Z1t[?*ec@l2H;u y?/ҙgHB#!٪\?o)1+D}0rzWW@^T?C5Wlh7WgyCI { P߮tB] B;)WNw0[b1&[iP'l72eS" 0IFy'9Xs=Mo W0m"z_97(M|'h/ 'L@- )W]f]4HLPM'&'/LON~kG/OM bEM.peUIADkJ,w$ȱ4  , ՀƺJ PV'U)e "8/ڗP;nh$DȜ:FaU_[O[B9T# 7OBYAR/#mKw|okQحX?"{Z\ۓۿ!j(Dxˆ~ԌXbA_0= po䝜)YH:K ds)X98%rEDJzD%;S'qi@6XFbLEgaߧī(iȒhv,M.vv [ɥeM K6B@KY$S_NgvLT:蕒cx\[H@g7/2C'c,֏/ۍfHY綆HSgZF^HЮZlp#b]xر<ːX|gv&_ӼmNA!Hk1U|&`d2D_{U\C څ9?Ur򛴀|'[T @7V XD<_H@)sG gF)frdVc-u㝂DF~hffO{[E$TnԻf'k`)kA*7Ꚑ6+})biq_tiޠ)\ _dC3qsüf}K\M7N@RqTݶ4Nf1(Wt9DCKzi 3k脐9Y&"uwB16G.3̮dBaQ,_v Ϩ}k`uܭ- &3ﷴe^H4OHimKt"SZj*s@OX^,VcTS{,YO)c,f9{qM C}\8g>/ ^FBrLĽm SDHplvfzLEZS7ws3*-k'}~`w~OIzY73MZdZ9VW*&e|m,N/Jǚ@j%X?\({ ܪKhu-l8AAhbs^^]Lan9]o/ 7JtV"􇀱0kM;2%-GX0I!FyuMݐ6$c}0cSh;! B6a3S6_-̡YaV^}PXǨ ЉW]U:?Mgd*;\T'*uTG9Ѩ—Yb.ꖱ+5@̼n{ԉ6MY-tҭ;9N׾cPJz\RwO#(6^cm~ߓy^LMb&j-`~̢:.c͵ "ms&A`HHeM^h˵l)/XXyz}oG?e3"-@gRouG?>ˏ./wr 2XׂNȰȉt1 =5k8iAEΈk-k \`$k\kB (~ y9)Ey}_%OnB#KbѩBAb82%:?JP$i(3@Ltpy{e1A-Ÿl>ȳGN7uO=^tk˜yPvGaj\󌔞\Gޮ[s? ׏oNFMs=$zbVdX"wp![%e&o b|G7].FxR|7Tc50IՊ(Ls]jX?Gڡ`|ܮ2ƻcֹ(7:gfi}q|Gt=ң!iR>fW:PmkϒLB MZT A .({{o$BCX<6'_q?lH<`}VNa*V4qh/kYD& OT7: 1=c=N( ̾F 0[GTQ .!\4NQ g??>|n/UJlHt5y. &;^4Z]PvkC{[:z-lf!ϒE?,fCSV|I[Vev`XS(<6jU:Cyz;QV;OwYyKK m"G|';id l|{0k,/"SYW(ZcC8%0:&x/`=ߟcG\\[q:W\;q񾴖8%Qͣ16EZ}F*h]aor|n\:v@9l_XhE|_cISQ8 2'$UgO]7g=#h;'lgx}k{ύ&O՚Q4Zs&.DB>#l"VܨhTf~Ռ0~I,IP\ɣ/hevo91鋳E>ifPEz=`EQQjKT+xYa<9-O؜P mRKFygR8Cߏ_ܫs Έ њ}6ui;$~<wx%uh;I *#[OД:" JIp29`X㲪KM-tTWrHrOA'ի|'()zgbn3WRZAеHN*x+ڜ&.{ g9$HCz}5?9 &ْyYQ4-J(,j[+- M섞5Ypj[I(3M,~H:K\jTh!ؖ]se1Y|OIVufFW]#PttnO6r ; q0 X$tc&ou %Z/}^?^Yd73` )rw\4; `Nh45** ,Ok:(]C54'ٷR n ع)Z 4Q_hpB=_9dy3dBj!ї.Y>7qֆmn10LleθDuouBړIL/ qp{@co}4AeyNV)8ODZ5K\րb_lT' j-{-i9[CI)ڙ3x{OK+12 *r?(*mY!)ͫjE$pNr \bjzWb*E2Qbxy $xPאxI/M%o>H]QX5meH͂(Z=Z&}t;',wHSN=o9' 6d*2[`Xv5+=ؠ<5PH#v"t75'=$UD`.$]LOq9.P SI>cbni;WĸO&FYRkk^_pAu\b|mN8Y֓-Ͽ-,UBOE§T֤B ū*.?}tcj_ $ͥ3qqF-7(W/~}sU/~PKw"7PU(9nֻr*QiK[ %2"`ȺFQ _! / ^$W gb4AIM*6**4p 9 oKľDqCqתhg7ݧ[*\uv2\9lb46JT_b!ࢸek FgP VN$_> j:B7piyK\"'CM{oƝkPKЙ]+ƛnYx,,V>mz=D4"y|`$UA~a2>,w$v G 'X!XFoRk4ޱ<f | 29Ш* N/jB5kU8Q88!iAM~jhDSU/_#yn1Vs5j1H7}:?ʗ <.%-j/&8_oCGhS z? bԗ0ؾQsi1NVZ*&0}X[gpq:mrH%*!lzj6n>",n:nTd0—r8?ROnY ԻcC~f.BH~ "*m aƗ1}ا".Cō"O>@( %Jz&}?-cP_m}i9'bs1{Kf//bm:aa gdז.y~+1؆gEJAøWJPpA g?g@^(G<* j6wL;@K:!2ˎB~dJzw>~wɾ  ?8g>EuM 4C㏼7_1UL vӒi,qN˵]OZ - ^ ڂ2x^v|5p33k\ct x-hg :#"eط\ЕA7<:qJTå_X)sy 7%2d0Tn*o٧ޜS%c.y@vA!98#c:i^Ѳ9?|O"vD]Ci՚h&tj%?Ron]_es񓨞$Gb. !Xvᘳ)Hb!MIuvsMzo, esy 3Yup<?GJp>@Վ1^7Lxs~gfgTw!]9܍v}u ]JK/s]|N$w7=Xo+ 3_r[6lY 2s(ߩ  c04⩉$Ws@կKX4PxJ[ v^Xs#Ht$1=x󬟣"䗭ruDYd)?<%Ush_8-SvHMF%B#‰n_S?ۘ}}4,%ll>D\ƔarϾGt$~ PƂF)lC\ѤGG6{1^ǼHsVdP4̠rFa`>i < e-*m8XĊ.@&l(59OZa}6N&{a%X} qi 3IDdZfAgWq^޽V]Oߛۨ.$BΟKJg[S*.#lJ* Ydx'\.s ^̈R3M;468AiY+#AN>Si}?\k>[p>yYC2bM#oya\ɚaL.~7Rˉ7KӥfzNU jqP~:Su¢YXx}jP,|ƍyack\,r_|@X.>V S*9A0$G\!.a`-`((G'8q0kmfwl_mH뛊UV_Yqq_ e d(s(kuU^1) u@U\U@m.0ݦ/R`7yKq3 ۜ4 wZseWEgbCUυ͒ODÓH9r-^t:cwtҞ-'!D=Dl+#0Ƴ߶A@·[ D#c ?w-69RsWܥge]|FQU7aΈuMM+i5o%s3Lh\2_x ph{khv/:U(ěit=KGŤ99QQYXܶvgӐr Z fjTOMr}9sR& ŇsosKwSw|40q7:?͚ؖG9, bKUFtz]} ONW [4]VF탡z,CԙSl}Haݸ7w97xT8\Q27L -Sdn R+vYL8 AJ"8"ǏĂu.L_koSL&y- 7C*(CrC Ks՜gPg "UX1s= lOi]`}5!4/kwy%eZj{>H1 W r mS%P8%oA4fm@ua$ -oPP :Cv3# PGF<{r:nOh?s1 a f} x{T|(1:M3,AbdCN/vTRJu6DžI2>JaګP]U]5T&հqߔe㨰ZFGv)=[ mIܧ#Mj0sTR$`}}$|:k~EhLjNcN^ىNP =F #`jUlU¾~#%l㼫_b{[3YnDap:+^#w58m!XvՖ\ޙ{nC9E'g#1i|gƲԳgYGK>4DL YV]W4KmZOUX|eF d57 ,QĽ &NFP!_鐟Щ::*ez5*0ak64ЅQ.jqXU(޺MB/ hJCF/]! 04IZo~/O| j_B@IuUigו{oEl8"[uTz 6+}ahe~iLrN.V^;:{h~͑AW]W1mɩnbS?kUm\W> mb6/Br{Ov6PGf@0MVglwPYc]*|V\ c]!dP939/rE_ᰘx5@|Iz&[P^fS[h H[PinnbP0I$aR_DX-+.GHܒ*Ć?pӫUl٧!*XPcF9pviP D;}&cLYp;l)5 @%5omɜDv  "*= }8]M*Y [8[;ALe@~p玫m~U֎?iF)4fa 0dE6}3O1?IW/Wηc@ʫ4B7RUmrj]L I uG@J2%e1.1m)7۸`j`Werˋ*`qg/n q iwqgE62~ S@ n`k0lqIULDvsٹ2Ө*vUKtip2 jh h~rNϘc~^UJlEQ|ه0`ƥGIT/L"Be:pT]nH s 5M'F'η\ɸD[-'s8m Y_N~J9@=dG '||~UJ\xQk(*9F,Co]3}4~e%NYe-,huꦠk'LLx<Z5]}5-է2UDqK0E9Syiawᆲ 8PSKC~Wf^&-ALW޶lO_OG.k^CEH[ !zR N '_z l 25fL5ԸܭMDiUO oS$ՠTk"F-E)KO^P/[J;J2W,<={=2ڊ|]P˒nUH >ewf~RT{ͦ y\ /F;ʭg+&~_MIX0tKtp&Ϋń48AuV) .>HPn͏M;jE:CC&qԜoJxh!r/ DHr*|9j0<%Η:]NA+#8 H]@p\-9B&,󓼈8:k_T ,&FΞޫ-_@s'C5>ˋCjȨp29 zW9El(p׾8!;]@]*F<]wȠ}G^hat?#LMtb hy;m &~C$@O߻7,S͕b; -5y:gaПq _ !:|}PqZNb\>O=\f6҉ ^κp?J @rGOzf0we+xky 5?qm6yuI5nYX0|&b7QlS@S2k^.y?vooq:‘§+0I0xs x܊>уr;+Qr9M&C9\JS*M(J"(b NN3<˻Ž*Cg,fd} C)0,&yYƙkd +pWXH?}mcOP.ƙ,i G?ݿ{py,ݞŸLN2qaamr}+ЯVYJWݜZ_BYQJZ W\y8QҲ Hkᣑ55C1! (gèn|v@Ĝ=Yikp"M$&ނƟQ*1ᬮbi.z -| !G z}av*B t=!Mtݽ۪t CxNj' #{TM:N.W{umt!~W`cv>nMy[hQzf2l@)wM2X˄D3}Bh]:wP5Xu;E,R CC>58z]6_^B:Z4)Wa wq6&nY*IJ^^(skܱTČ2jCwR&fbQF"NK 0L샹,yo7AsOYi K(ԽsVFHb:xgy5>wo@j%Ű>}2&0JCrPRTe6Q|wBqraۆDw_ؾ}ߛ]t[J$׵BS kwf,/pI]l WӰW ,gww4d.@߼Ň$\M *7SHǵ<{P[D WlpL|X9B$kv4Pse^!=v*YX7>HP>6̘i=Ktys`UU]4SL33Xq/#qUCU*DpziEYaYg Ub.b엯0' ݻgu)=HZ3 (fjBu{kV\OVk$ɳr̘(*8S/7 fcC=TI2TY^,Xd28ch\;*/9pTClYeR릧$Ÿr8@*q~+Nq 4]Ot,Gtggj5,g80^\5p sp$O&ԀenH.n]K ܳR4ZHU෽3㮙M'}/EoFݑ}kk-";r  wRW9C!1 l'Ș4;nnjs=(ƬW`,3 mdHbz7"0^.l/idzn~tK#j?Ll ݈\k5Y+{읱WKmGapN+`_|v ,[GUK[dn^ro9df3A 0P;G$Ο*mZT$ LzwpEaFot |vJ~~b` v"x+~Q#=mw&9-;XuN4+׽TAb.dyNS|ՁKIۯx+Ѯ-| {0F\覲G꭭,i-2]3&$|b+IRqVyQJ?8%59ڙU>w%՝V`=MVn; 2Zm^l¬ S~SSlD΅ʴj[mP_mp8`A-:&ƴ`CEo^g>GEe-lvuE.P 2ePS"Gԏ1>}.F tբLًuw?)oӎ`UrYV36RcOFSZ _eHy{ve-vҥqcɘety_;/Y!P4ђ@1dܶUfG zp;h+B@U-wI ,-`4FC\FpOhsE<L2 <8!XY)r^pǷKS>6y,UA,|=OկTc7]Pڡ0$44r}ҕqHd1үy@@}Ɉ+e,#M@)}:sZ?Z!!{0xHиMkȎAZm9K\%n:Ӛ{*sKLp1YNp1hz.3 V4v֦9(&N7ԬLG؛Pc~gŒ_vX~') TˤR(|B[2,mgSmoа͸JS'^~\}r-+H%<>6EBOn#F`>MHMÃ85LSY:q|ϧJfN8s`y9NUf#33 fӮhR# _%7V,'(,~ 4TX]\JpBdSS/@и-I/'͆eaF|71/څkE0\;HsoR?}Đf(/V]ڀ4:mPwFaPUBNL /%55 fk-VԤ9adն_h9zV(ƔAjb*(njf~k( K;zfq9%' 2?)-ZX@Dbuf*i0\p~qQ nR,s^4V:͐Io+ؤfRNOPgqMmnϩ]GM*pKgmk \_u?6ž ) _H@T^ݱ؎ d_WpQ;>)O%oy%C~j%<"+7a =X3dM l<=T3;?4&}4daO{ZOf-]Do]kt\E# vqF˶:Tg<ĂL1C'"e"E-6$qK|@Fg'kA6sS \W+n1uWr"?Nnz8c$baiQvª+ItK0{+7:m}UI+܊o;T@c3vFy)Rl)Ɋ ޚX:I: cMƃAR痈ȇk>`+s𳶃X0#,!x#vK(' |? pCsU\|N0Rm ZƑ rn/q촽_Ԁ<k /-Xazg0: ydm)Ah -p|eŻ( Zl$(KI`v2-m yL[ 5`B l|qػ5{Q c3 <> Uۺ)t6㻢I'ݿP.w;REDRr4#nd㫋ԇxOĎsu.eGiapD51E zZ PC. Zw!~1a6J_~%p{ =fǏ};=Cy Y_qwci8F@ 3xV\7!xխ5B)\;p?;Y.4dS/mXf\KvX1i'd/KѩU4tW!3/{]X6!@lѢ5Stex15 U!x,'IJMj) g9Q"_|擟Nzcmq&^sӿe b<&uTWҹNapdA-?^P|euՊV])X,iaJYVd$|ꊨr#R ;Ϭs!qN<ލ(=`~횪8=ݓ?a [T!$!Ɍ!e`j2%0 {it*˔.*\ݻ*#KpF;R|xmbPqls}Va x40IhRn?y9di\@N4Ǝk%傔4o#?i͟ul-B& * 9gE 5S!=U'ۅΪX3[=oBha~oU$C'_|]OPb~^$:NrYg8m@]O:>R.j=%9!䑋Ɛ.桹=A/E ^T)gBGGbT^Zv>D߀ 1+rm *w<2q`l(.᫱L%t[sPZQ}\EOIH©o2,47@V׺nRK|fk dlC<؝]rljꀨt6v.;H!e#!ϫsiZÿ 95+7)Le=z-쩩Xԫތ"0"}r~&1%E^?ֽ,U-JZ>qw,L-*|؍Rez;\~4nѸzɃл)=AP6>߉,LF. ;ȭO-R1.rj‹ԁ#L^wQ^W>tٿXP[cΑܭ!D׽bL͏OaKTx m(cuxL)QA ݡ-vz٢ku@Jk=UXNrB::K ]?'lsU\1a7kgFBct˃v~ eV[-UF/2qY:ҵ. ?JWgPayRFd WWcto)li/lA~fWہ構,sf~}!(b x1DY8P9"GAd8imݦ/wő\y"q%T V%E{z@%C[ JPiD+Xs̚hTEoi=ul?LHxG]0ѪFLӄ~5>Zg(15=\vD?̧ (m&M^Djr]N_34 t~YOʇ[/LbM>cI>=);ĎQSVݥf @kNяSwswZBy0 ?0y |_< ա //,ܐk /w[V%\V}}%9utzKv1( jt~-H@(RʩnlZ u܏:۠^Maz׵b bJ,vi .e&d{=ԮLlPC_xh>PՂmfh.N9I_ yf$(e$L2F"5Eے\9 "j6+w:5c?MZIK*3ߠ*|&;HX)mY9$24 zO2o,#:MEKX4EMF$1%X4tXe0J7A@ 7]&O[ u.ڇ mE`iԊDgavuӬl@rhk/#aS,5R*56^2빡9I-Pxnp 6I˧dN[XyQn9q lNNPoabG ͑ .2wNDЏSSЊ =f9ço+x&261è@1ĜI &d{flĜ)D?,Zwӿ#s7{˱{n 8ΕsCSQ1)b er q̐B cy\HnDW2$ҵ ]kV+|XaOu~b5)m8f%*<Vi-"tRbݬPaYe?uR"Vœ6ztd oJiSJ~xelcs"p N܌UDե{ #`ٽ]tH fU۪S\?[m0Qr@>1YZV?)j19R%nsb F@3}OoD/|R.fܬQSoE?SDUer0cw9A$-lLr?zImajGL#3Ӟ--xպ!>eQZp4jn[ig:>zM{@I.# c͐tTS~&CYΒj{D)씖CkÔU I`WM7Gqǔ8uu]30 VuDպ[&:,B2B@^IUHq-i: 3JPlHS`Y(JmhX| Sϲ(vsũ()B]Qɕ8F.?}pz S^$pd/ފo$brOfMq"e r.{-9C_b"n,RѷR#'![)LlX: , \auxZF9d X/! >l$b!,=_5F n|\sv=+oW( (èSϹ6Crm7{F lt`=rד`a Hɑ0d b$[mY/{t-o,Zz=Vg!v2PUޭXdQ:UKY'%uu'l!uKw}IZ'}g57eu56τ26`)zѤ=դ\ν 2/|><~!22Z6SdSO54#N&WUK6 ^g .qfV+(nH=C5m$Ԭc>G}Y g79{Hnڨ0_/`[gE7}`<ꏙ>[6x)dЈ}펰iSo>u?ǂ/%;>ӣ0z,ԶPez}i'i2NS3O`;rǕ{5Nf#Xvy||'sObjϢAz˜EXԐ`Oah/S=e}šwķPPq:W%%(c< S  2$10eEJCPW=pjo]Z5֭4Qͨ Y0RD{nt.I6XӒhcl>xՓʅH$B!J?WYsɍLa08./pPgc>%òC0U2'ٮڪnwէSq<|QŐ_JCمj Y}KUlORtިMHh⤨Q;xBNLe'/cyPc?[嬾2{(G$FVz[oIn.",/1jBZ5*L;S<}M''᳘:F| a,RznT3ԇv@%P[]աӫw ;1gz AnhɇZ'H(ρGDKބj͠og^55Pm%7RfGG'4dDdP{bQf†b77x=oצg)n>j->n&NZ{D!@[`Mdޥɸov,Qm?/yjlQdOUTn!N w]􁅭ʹ vDfT1*+F wx?/ˮjb]QAeJWc ѽfiB4EQ}W(+ K;Ɲ`??\39 t0 aG2xJ[#1T .MH$ } Q:r4mLkgy v5~'hC͛!k񃺡wG_^U%4!*Γs9v=vQc,ʀ Ř+z%P pr#MÎM E1ow^rڽveFuU]T7urp&MbzJds[S;i`Ge6TE]d@jFUAo=^l#WnQ]H/I jL#qoadƐ(V1XB4Aq Ui2guWvr|[6&k,wZ5}si".R֑ɬBԮwT.TM;!?*|$F[DB+w6=Is5fj{hۉh3s`0D>~;Zc+q-hG4q=*n3z/^+{JHHQNbjKD|X* ^z9wøx7J#m.z" /JlVVUnw@R/UF{O)5t)%NLz,%m⍲O1˿K?xg_8t|,bl/bEӨW$L ШT ujr'YD2.ݭq: !ab}9%vSGR Z[[K&eM[>-?4?P,^V3WE&=?<ʗ*͢yT_ 7Q*Sdםs:R=LlԮOdVܲzgӛ-Uć:@Z3B-@: G8:WW`w8Ŭe"Pb6 iO&9m :(FwZ-ۯ5pu !C+ )2ưHSnF |ηR)v^l}&8"t&x$[ Z19Qm͈4_Qr-%Dܡ5Qe>lREE,J?ˊ^ab*7 a͈lu ڇsA~(vN&Z"7. ®k7'|vLȴ)]&O'G/^K5!F(t5!%<Ь<z'>eJMm:% K:Ky>dL0A07_6Sz^T,Ơ[ 8?iBxbL+R MA$)*H>y-.PCh^г#GѦԺCւpwR:/<sWoMz&LOufn` WJb/~wMQ#1;!%SۻqOl{$CDFz(<կ>L"WSGBGb\p~3X1>j~6da Mv+ I#vv ]}Ðg+a5QЅHՎLcnL xiܜ\djX t/Tv`ɇg (,sA{71oɑƅEw٧C@-oSYm!86@H.٪XRi9C'lP;rv7uFjp) ( ?!,n7yC?j({`qoa5aT&$^ 7$rF`CilGC=Inp$L̓W5OtqC!-&F<ܰ&M͌VXmH#`168rn`DcSJPLC<UTCvOӆ"(,Llx9> tm#"ӈ*"K`R 7eEgS%Ӹ.]JD =L 4#WB^q{8Ъ-ZjA;C#Pw\إ߼i0&tQIpg%.w \t MwGڕUcZlhgX#pecAhT<%fq)`tr?0Mh1,L'Τ_cv~s`EJ+ooiȉ`e?ߥ1~#?/j%D_  Oqk4}>Qvz5g)JڙC:cOlEYyZ/Kn<"',u?G'R :aj(X %d -(>FJONQ/XzYU&]be6<9E’sDp  $pYXc*C =mXE`Wrh ZDANXCPΜ'.Ohv;T`1]ZֱlRxHj`7ݩQGFgq7X`7-\P$7l3뒴i,[Ͻ4d|ּ M% \ \`+҃ c(t^ ϳ2;iЪiZ^GVPe;@0F'^4o IQ;X<A@v-L4>UQ]H l"5.6Y>@!ݝMw]wen(oU6p;mdbNJpּܴ?KsYdpE3WXcI)`T3x]=';&iE'vIMsSUCLZMCဌJ;uY &$v82rG[6i]33ЏCKeJP-!T>T[vNZe>|~%NJڢ\ `+˓u\3"iEpxF*p^T[Y=TzGl];>FLBXG{i { ݒ0z;* u7, ehvˌ\֑qw|jw՘V9L7Ŭ1_NR8`v\oAn95GkڗKl {9=Zk-RK+.»FጧA~]jK`qsr7Q9[gisTBȾRarc;b=.[IPW"e%( %.X( G *̥ѼH0_[#(>$.S5UЕ'aرp0YA•4)q=E"?M+(хnn0 ,.P 26#%C'-vZFok  vꢊA`ncQuf285E`7@Hӈ# 3jW]1e\jWuז>A|m^ !>Pu)WB-{< ב"Tw=%iaiB00NlIИoڨ'~t{8JEV5+fRi@;ak[A}v9x@YK?4v(B@q{_);SrMo敺4$>j_ sz")(9G3BGʨ'P.괳J=LaGtUZ-W*-zb:xMY5¶6qcٞUWo݃SESb۠ZR;"pa0PxRv+ţ{aGJ]&o x͋ Ȋ#2lRl 9{F3q\LWG'9cPl𵃦]ٳPU L#= $ <]I ΊЉڷ]cKRqDr4V:XSyOߓ(zE o"(YpΛufkO^&lSƤszw(:x[Sb{v@v%Le"qԿ/Hc\nTe|Gh1"fV0sͷ eHfcD?,hE}?cEŘcMfAYdJ,Ħeq4"6|u\A[?E4#k;/1pbC|~#5}wg25LUD:뤮 %>{"("gE{%u4 ѨޠwGftq 9,Tҭ/*WQN!n*r~i)Uoi*j>MbO )t/߁INtߪ7mG\X"`P&&l᥈[D#[j|G\m.8L5#jIp"%* !ꐋ2&1Kb][j<@'oϝóh&t1S'9)TE6ԟ `}܋$B2П﬒QqPg~MjSvDEvej+jDjq6%:y(dw0Н-Ԁ?XNf9o䰇RO-V3wLJi^üz؝%zd]D !Ra k2q 2@yKnnXY7VCi":rHlq![/|oEV"ekg1Z4 #|,xRe#aweJ6'rӻet8zT%h?IإxX =:~Zⴽ\kf&ݏ(P2Q3N|7q:Dr;,FsgM!u'pEd~ }W e"k'6P\< Ku'ٰ7`, 0H]y5r'j/ 0{]_x8waJF8-`< K; jD s}&!wנQY E~(޻M=tp 4)'+!VuP`C&lJC<' YqO{wnC}-%j^`ft5RmSoś5КOV i?G! >Zi@JmD6~1xɋYmG &0[` oImbv";)iژ>q b&#SB?װʈa15f8Wj,9F( OQߑ|jasnxشg]Ҁ҃Uh\B x%̲8$:<>hTA6;)Cg9qȴ*/v~iS#.z" X*Lcmy}|HoajwNVo`'1s+i@5@Ɖ|/*৵,Tºiv["/4>85ܜ` *F};$ZQj?6% aT:Pi|с:&yK%۶L}X }";@f (vqm5?DoqEsW\K{#>Α&5 `.ܬ\bi:ʌ~.. 'Y*fDGn/b! #+T2wi\Z5ː*4+hM>(f`*{%H1ЩvԪ|wJhuF&`tO{aTQ\-lPQ&EH85wF ]pT.|S UIH&:puCx,~fie/ΐO6_Vu\3nj9TB~R)9tE<(뗷9 DäL3U+q^.ˇA9Ɵ 8m ˹xh(n@Z%opH-gc_w>/:Y ʷRbg-,0v‹Af[I*F~XsX68 21"h6@G_-t̛a% NWXXĘE"ꌋ4c3zyGfZ, -Sc Dc Գq~E=k~.K-C+cbJ9%-Ǥ&eB/zh{J>Ci*Gq92A^WȰ_5^^ upj2¹ <:SD`0R;}G0%6/ .XbGC#f]!#&1t-d/٭3!A<'ʹG/6m= SZ(Ĺr <.|MFmYt,0k~m=.]<91_I #nH)j>{qf=(OV~^04V]1ө⤐yXr/ +uՁrkI@I/BɇtbGv'*EF|V?ˀJEWEyo6O;DׇEP]Og2ŘNwף`8L,WBq dž5o'?;pؕEZb15ytm:SϽ!ȖC` s? 9{DQB@ǢzLAwDH%%h',9(@g]-\_ղH7Hɑ$M3^dN]\'0ꪴ4ղWu c/7Ru:2wZU1yHޭ!A&]r'EL>jlH]7ryoQn\)wͷ* z\ǟB78ϓ:_y:m<+kf|#rB KV2'7\\$RG9k#xRP ~#6r\|ܝѯώv?ӜDq$kqI!1pcd-([FKAH5Q*:k=uJUq ?-ɞRph'ZF)鹣90;ѐNb>R?UR9f+g`X!xs9ڣ&Gt8m groYI`ڟ@mk}zR QB=bZ8V<! (!!sr+ T}Lq-st҇ s4+ g(`krqu[| ]+ߔ.9v 4M5]c18~ -s,F&4} Jk†2~YSP8  sа?ٹk[j#?Et"^}p A.O\Xwy@ݒm-Xl6ȸvu;R>8vեOw] [P [ K! ɵĴr^# m\~MŪQ n!HOnkJy|ل*]58S<ת`T 'm/T^D!pӖ$ N?뾅Yݥp-_ԡ K,c,rQ,Ӹ"͜ ;Jި*ofoD9dY^睍LmS-Pڭ csF3& 8u#*o.8Tqw~r{m €lZ(2=M>Y7t ,oZcX./WwAȸV!|jdž8x9a4y=₿ETPI^r2Dw#ߤ2K(AA0|}u!j},E'sVj?yxϔ}(V'p@Ma!F@RhPT4r%`瑚0!Or#LhikWpoJ͗.~ VUD];szIVg /vٍHi_*C(zE%2I̛zaءyh٫@X7D È_kMQo{!rvB?`|%Jk?1=pQfe' pΏ%"Y܊A~v7<Cۙ +NōtU B\ :Bp>@'2MxknX|TJh (( :89@ ;|%0_hDl#y-jxHL.&UEl8*D;^"V F:, }]˅w¸ܒ.07cP$Q]` ڙoMSj_ >~@6] Fb_/#=q?=i0,$7KM]|H7;Eϊ_Vi+8noVRԇڎ!AGiW(gopYwԪL <`pynJ˦ɗ|[\M>4N>8uYgTfuܩ'y|XPg\oiV_:! J5d}\^cEc,H0f|ݦF}zJAv3nj(٪8 KwY~MrV N$JXs I6S'whA3f툷Pް?m ҢAHSΘ3t9Q?d1ϴŊȭ!5SیD}[jS+<Ә_]:3Z7j`=3(]oY϶pAz|`1&KpO@*,Q9H4qFpE>@OSa O>k`CGdoAц`y^8'q)l]/b'aEmjHAX ? eME[)Jf7sn>83|C(i۵ǂ=YFLwiPQL-.D#ӦXArYpd6Ssrymmv@&ŞigƿJLE,2,؝._@E`5.}u]>kMvc`KfO[nK)YK S93- Ы?m|(lb⛔S;Vs!P l8j|/z6taf إ~!jiNc߰jֲ6 ke.R~s )ԋRGc K(zggJhekm9)/LһMaq2E>J>Bi`,XjTBfԐ7^$r4(\ RPm OFJ6B:+_ 4L5+0RTѕ1ɼ/%$1B)yOPn[Ow¾\E`>k#Gp!5XTARHA>yATfr!-J@Wc ̊u ؎KFpqXXBJNf)oVbOO2sfzÀ>d%?),ߝ5d6i؀Y?eRpͥicG>Ul=޼a'd||+ /1! DpU6YTڳcB젚v@P%ҳ+M*Ҿ%v8/9}YKZmjyf[ķdh Ϳ)!:3kJaGFcb}`yRӜ-I-Unj-$1ȐzKAE7NflQ/QrTB'轹&l"^U^il$& j$l:8;PJa@ Y/ǬQˡadzOIheS`NP<^"l Rc*5ʰaTJ57M@\ Q4w?9-}FTbfc]e4' =ϕ՘#h*@N[}WXY͇r`8I=345 o[:q#mim0/ռĥDP,w wD["#7%|}PvU)j5dbػ}O":>]U%K?@`m;J"n6hE֋'\GsCs (B1\y. ' FIOavs}m ȥ5M:%z8 l]3&epm>^{ScV 24t"+ЗzfKJC۩}77C|3 C:3CrV?9lzm$)}x!sNrCnDGs@bM(bI{Ӽx[J引=YAHysfHtT Q= 5#E.w`fBfm/07;Jx"a}lsZ6I_ _oòGScfi,~q ÈĒnM44zC0? i3Gq~ T!k?b38 }QGj.J0Zx(DA&/°ӓJ ٰ+zJC q\\n~-JVd?-Omn{7סeS 2݆i$SSc,OItz\ j9R~1?Xp活D#t˛PyR7o6Xh<]M̈[Y㉓<k f3u:=,PA4g, [K::9Găw׎9F630,U]:Ɓ ێ&DO'ؾzf;7kF} %Ƿ`ItȎLrEe%Fi%tZZ oHoTKn7($#m4h۴l$um"s{,hk,BMB65aSk Dg$V'B s6rncN; # Xh u^9+}*xw,ʴ@>$:#=ěLb!BM}KؤStz y\ADÁ;dANdl ~]_H$8|H<}}m!t[|:Í,HR T`xZ\.4V!cQt k_f [ԏ0ϸ&M>v>§\g=1}!3j? O*#jBи7ohZǤ%L\|QGE`9s4p96jHbIײU0?-,)sx`״"I! 0(4BԯZׄa$pƳx~>}$?jc>)px=#O lA#+Y偧Ń<>.f .I807fW:^ tboj1J^QZ>I.˒՛; a܆aNfV?.ll\}?sObEŷ "BSW2,$'Ed Jy<4grpL/Wo!qMj6P2QlC2e?OPOYJ_X)_>N(~dXSÖfW=le~@ CP]e(m, SRl{u Xv`驨UBR hNJc1>,X 3z@څD8xsH$2I=ͯqfp(p"Ok :⑉lojWPpi1_5h\NZ?>7,f,'~ K@X8K՛U1JnPT}Xr^6z%z[gpQ٩%,ډ9J9-Ch3}X3'lOׂFgc$&׆.)JturEd&m~`հjs"Ÿ4{߀5k ߛelyCX(m0>HbG(6תb2QHiYl.C֭Qf Bgzc']?wcd+{xŭtHㅝ0C7=Zm mX֚AiFY,+VYF^ܮ򆛿%op4H`Y8ߨϭHG/e݄@vn,mC39suۼ*Eך ~Hٿ,ග>W8F59s0e$~Qwyhv)@!iP +1i.!şJ(޷1K[CѢ5 &^=cBzV.0+߫ JhB˕xo XӘ -CY.OER|~ F`z ,<n!_4%W=SifKW=͹6<<^rav*Auy!i) QAhVY#ٖFRęZ /Aip@q-$^RdsoǦ&5GOtw]} VRUXZ arlV0Ǐ4ŅwFZPnR?LKQL#6>do+_5XC. XN7ec՘"= "G}j큓PShƕj1FWG/&~ _ >ZSoQ"n:;UC:6ޙw_3 v*֒8}ewV(bfe&49Ž,U4c[e{&kf407{;hju};2 BFþO*<ǁ?VA.N)(#jy2򸚱Oyۭ+9SKj&bpvSS> PjX&)i-$1F3Ǥ%}?"ײգjQ0LB C{?fnMNE( eR*S }"CRKu2ѷ v=(s})n7 E] u<WIrDfANrQ/6GWr<4tT#(D^9\ox|ESYf+V薚,Xb~pOM"@#[aե<+qkp TDaN^"?Qgm$y*{PP&6 9! [{pޜX2\)z"z-U|;҆1~u8$(`v ^%GpύbU:0/$:}#"H!C'Ћ_"I8`J+mFQS,+G %B>`"k{j\z0h!j؈. Z1JI드] ܱ.VGQ_> g'FynJ> S -ٺx5aLN,;(ǚ;Vo`C'KQN46F sFsVfyF`\CO jM8XcOצ gUz>k^4 hoݭ9ǺF #o9#gL np Sw)?Y0I4+|MC'?4m/Lp+{4-cwBWUf5eN9bhՂ,S _ ݂|x-gr71rw4WO%,q7O@o(GP 16': 5m9h&}?g5|%UAD'{lt7|lgu\Ph;D_SfcDtNGSe?V̉{4˵rK<! p,5i! )"fVN.ݺ9@G_BUQM;|w$_ ,v"GkZΙenKM=4{=nWS*y1ݏ|aB2foPhw7ۚCM( *Jf,g (L`z0 0*cr(˹HFk:ϫL[~ID]mClYت0!Yv +ޖ(A| LJ(+$:w88UPv~BۄZ}K"qEs wMWǶ5r[{0 -<R0A$efNfo^{P!yf~i캴%vET_-39Wjb#TT-ޜ>㍗jz8"dWĻB/Zo3Ð|'Q8=1 ey'uM}6M}]>qqhx ]榛¥ZnSb@fDDv/h%ią"mGwjժ.\:Kr2ړZO^#&4(T"ۖ<e JqJь6 vNY& TK;<c6`րX}%ycU.*.[2m8|mZe33x ֡%iՏewZ~ `nљʪ?|f_ƫS/ɤYoups4)gctazCYk("3a6V|.:ׂ% 5Q ԮA!8O<&s o k¬pcJ*|:h\2zÇ- jomqOi%wH*!u= wi_ /$٬"o^.Z̚1@J4.Qm?IJHz  [lk#D/ hlH@ߝʣ2tl]Tc5RpP$́6; Rē-n2,_EVL;-j9GB$`豿vz6;Iz2&;hnĉgqP}pQF",ZU587ImN(-[қZoQ#i܊A-ڥJ¡mq4%SWgT~ [%s8Hd:E&$z*P}-M͜b."H;t1PLV#,~Kk@X&Ckc\uv]np؀>TrM8)i MXijݸe4;CٸS60#&E*:W_17/샚y1sl|=|mw>ך~->`}~ZxH\ h+pbi:!M2]%DBU9 NeJ?R V⦖$ ,ě!08&ҍ,D̯p|k?6|.Em!N]q0,n12 m@Jrt òZ,0>ϣSCŹ4[s"~V fs%;r^*\uw;h1IvVV !μ0D>/7DZ"NC$=o=O`|l<"U`T-@>7v\*'/Z#G4|Cbis{#g}+Pg# P (ht:MSx:`Mct͢ȑvLSqq2V13O~y_F!0l?JsS վ8g\]?Us.hW>T( a< 1)Zf:*^|z7=I'PX`5Qz,vL\TB p`,{з7:M C a mh~zqu}eR0E,fˈj5z7&ѯ!- 8Ȗ `7u-B|^L[4L32%[d]U\غ')Z)aMY_7_\5>Cnj[k@y?)[ͪtԩ@T뵮vMl;GSh!@&hfp?!Bd#!a}^( LdP3U`j JILz> ;˧5b]7Z(ZJ q<3(dp`ne?\AN"! r0*eAɅZ'8X α"FoE@\CKkidC5N^V]~iwsDn)pNQtomL W 6JH8 cB^*C0#6 eLk UX%;\i25Nm"nW(CQ &Mb?+)$5rX`_'%93E@_M4CzcUƂ |rT_tbE KWŪ;և.}wL 4_uI:yzt92S `HP=N%"AGOAs?9{z,h5<`~ϏïuEp2Pg;4^, Hy1(Ne K_Gӣ|6 b+FnIn3w̴d$(!9A uFg9ʎjrj>GfD!ns2 #0,HY5"e n,dVܽPU~^K</\ǵt+h͟8EOpvb+gLOs#(({W_+*EY0{mfHd;"IwusWugK %YgTѯќn85'93)0BR4D(Eߌن5vT)$j&R;7^WŸ"ε7RG=SO4g jŋ-/O 0<D[ :5.q*y+5 T"6 P6I}rx%֟TsA+~^KL74.-(KqMIW&BUa7=ϺQqK(;8; i$= .YcHFČGg{ͣu8:аUGd]p3ac{|\HA>-:6+Kks#,Un5"hk&IyN{?9pi˹ѥvEi1n㰓@; aSoK\Пn5Mw[-v= TIVTZw#^@H,?z/YPHwV>hrܰ&$҂wL ulho=ri#Y*_MkfS>tg0$(-f|1wMyWyo6g|~3\^v".#y7>bGXvNNdޜl"&pd(: چ+^"JK`C}sXv*,n-32l`zjPXUAl,=*1 4oYBT{J&sc^?1e5= ,p 푝UX{m@\0>EC A5:ȅ35LxwMR*4W/}6}O4MAAs97;g@J`@qsu.oSk{2Kar֧*L㗱Ol?' ά۵`^~\/PmMV>(Yz(Vp;֛WMM}l'ITU;˚,ܓ=$vޞ<@'z4z'I+sa:6'w&ͱxU0$?j>`̖Vٻ9Y!SEL(\V߻-:^+ǷOuU^yp1rIKJ $.bo露}}8 ^BtɿU9N4{id3s"nf2{4|r_"o83Y g DF+Mqa]eXcm.kUzкA{ Tˁ>Q44+ڦqEJ'ȭURmg(O~`D#}iZDHO;o5tg(ZKDYuj]@=v)RM?0p6˪I%+bVXi菀}.7>`xTVfԷXcHE/OJEEQi\cWAx\0fX>\@~S0v$l(aH  )3#`y>8ǽ `Z#u GFj7T8&>ֺ5+x?cT YJtHį:Yլg*Q $V^ZDo'ƒ1𲿎k2XXHPT;L鮢q-Iu^Dh>;9O;#$Cg qrD0jZ/(I;CB2o')0fNy0ө@(̞ FèyUـWQKhXl$eI8|~V;OJEh$N^}14n<}qÏ}!G< tԽ|9ZZ;ⰍךL?;h3(()AUGi*,dVQ Zٰ7%gT̵;jKJH|c) QEfTO$ǎdw#C+Aqzk+lra:%ii/Խ9K{FvE{<∱-gתSe8֧2q(Jr@!8fM&YE% ?ndʗڇ2{[5?bu7~x$N!Q$f8m<݉%JۧҳR ꓆Z-/kAA| %[ wX֗i#'$eFOu@ {0wLX+|%݅ņA0G= *L|,ָuje!4@I #^ύq-ʴrw01P~G{қe$#giXrk5rۛ#(' zO@ Ock}k˖Jt2#9jtYU^?{(_!G穋1CnB6=OY%g)ݷso|ܠ'Sh;L:S{HPFƬ"e뤌<5auL:ȐQ$fL%%B\3T,Fz95=#0F҅%V^ovԚS6.M:xhA&?zdϧW\dOʄ3o* Є< ᓸ{O6:VFn̄“YK~Cr .ZdzM@0myt M[rN1J{'iDFGjW!ji$hĠC4J񖖯6X6(YǣTJrdI2Vy5c{4 [?O}S0r·A>,mqMI$[ɩsF+=XQE2{P+.3w,댙GWR?2Jsx77 ިʭ6xW+ yzUH^N$ﴪfe=lCc{WVa2"VǢ/o)B& r~l(Mk/`mlce~A 6+v]N"5j dqa)kJbm侖8n;OTF5pGL1F&8iAq+zZFHV*<'3>)7:Lisx!ԕ{D}}><JhţX"" @^6dQy-0w >g1erTJ7,~o$p ~\L^ z^eqm`Qwה-Umn\RxA(,_ݗ26K3yV7#UB[nkVfPb&- l[ gHMH2rXU ! M} ]"V:"煠Щ[ ^>Gg}%Nm? 4$ز~ 6 :~\fw0Xo=b7xhlڧGZq0- =&Pj _KM[3|asO&g8?3]1zUݷgQ! mG  41[ m]X+"r'(55xzoD`MOYtY<.a7PV 2[PP z8jc/0!WM4b!B2=ː<0*XXbMf ^L/u e< t XYҔLNbZch88mҾl*fWwnJƪug&!d&2_rC&bQmw{;VuY&J gZjQ4?w"gxHXZO $Qm?0|i2QAZ8#Ӯ;+`|n@ZiN jw$(9!!)]m=Wspb rTD!+dP ӆoH|glbhWeN &YydJĆjI6 Q@V˶rb~guKh>Q얆wdGP-Khֻ>OeɼǢu?2B=.nd0h5'5r <K-Gc]2˴xEOEY˂;C6V :t^}&n*)(&uh r^*f̷챃gz@3dnsbB򩽠c={X# }~)AF">;-z%TBm:/"4*h';$!%OdM;EG:=3W݇,k 4M'`(c8]1Gy} *[4.ϣ?gL$b4u/kXA~'/>jmK0X^jazMJ`ŧ@ Z:@ G$nÃH,Rس(l8ۯeaE R_ ELa@pƗg+;yCGbpBqEqi~ (6W.(a`s)0"TCk5 u#~C/C X 2yt"ƘYuKySjSFX/O ۥoJThzBZx5X펪rHAkh 9.hf*($磓[vY8LloOM_+} >-BbEJze6 U`±eL[.{9”^%%b%@RYug8~OrE;F7tdd Mb;)-o"'Z? (,smT;+Skõ3R*8\pAx)p,p62Ո hN/iPZ~Fe "y0;nݍB{0٠'U2{|YA AX]Ij瘈(E?ISRNzyQfs ؈|7GA<|DdLjԶ69p6w=Crf%Ҏ^s?EX2J._uL9!JƋ:7܏{a %bRr8%_T iG=nYDx$#:  Я-}sʼu"r2S0$o0iyS5Wke zO1;W$~~6XETJ7e xn ~Vt4/.0b='_Ay9e#5x~kRb4 >ۅ֨#N[gǭ+U#q=E3TUC Tv֗/2?&iQdoOex4SC+G^_2.^83@ 5$BݵzD‘uqn$^aR%aVR8! n^$9P|M 2gBkWߕ]T?R@E1PZ  s.meE Il#MF6mJy<?YI̴JCNDZ+=-D{?4n0֎bSnc)%"VgB0k5\ZA{9!0xS,{+DF+-5ATLh:_VgLX >!h,&ʰ ڨ }KdSqnGeggaݚvy2Jh 3Nnp/>Bs< yBqz&W俶*|4~ʉq iR6 XЏ4ebTEހ?妺WwC0/ɜUj*,i7fF8ހ8e|f;G|)$vļ@!d Fl5D>N^sܕ1FJLtY;#z̋e0F:JbPU}V%#W,;L zxW~Wz.巂X4h_[~JF ]$PVYH_~d+yE,b R[8o+aOrw8Ju aכJ ;(@2 @%܂bJഷST -Smj5AX5)YJ}N>k?2v"8}Emʅg|ps'D>ߛ?2l^&aæAD,=\+. >_.jC?3崛nB.vcv$So{P÷Y O._]Ĝyǫ%z)cyTSzbAao4 |,Ϭ _o̅.45 t4𠞾F O'Lv8;ØB*S>T3:ʢ%L_gp+e_Iz?4bCbH>Le|L{܋lx/IG0b=^BIekoA"!GjJ]]7&U Gƒݕ,ށKkpwnk^ m0MDj0f}DȋW֛U?8œV.n-34|)Frj~y 14<239ڧ~W|\ GO@.O(ADVkjbгorʹGd.mꠔnUYՊ+BnT|pkx2d}?>%PO?5ћ;$n`0 „tݜKP2xGH}17t/r5# /GVdw*7{i2ҡ׫ 7%Ggxe rx{kWtgvy7zVߚt5Nr{$ӧW5QZs`n|iִ"OMk_5/mN{rQI{7NyZ,(R(sո7-JculVYK@ЁDpԝIÜhT2y0 #L-pb0K+LfH똇-b~Dg0+mANI MUĒKQP2Mi:tG|dW"9sNarƃ]"m'EqL q$Q- [Yj6\['sk$uY'ȫTjomUJiDyAϧ8_ ؜7H\S_!xă8)QG ~m(0R"卢kU0cSvMxzG g}E5 4L$^ F&8@0$μނT[aܻc;}xBbɀ^(kCsjo@(4 lo*[zw?KŎ~h7Ïv>>nSP/!>Gmy lHWVNb/,7uCȾjl-'XJ0N9⤖*6ӭ.qO"OVyKJ35!^49Cp^(`|t5l޾`i?z<:Mn'FUdiS$H> od#Fc}K: x9Zn_{`uVgG`vGubd_%]Y@p ) $>z8O-O EY_d倀1oDPȢxFgA~+ "sG(A|$їܕ\S]#W.Y@á#zHҦ-xvZ 4=J7fCik{~]^?Q<J F]S>AGnzjSȿ!`<6sȜ: Uezw7m^4r447g4*]' 3v5vo}8g]S< e C4نnY c# j֩#3=rU]’bH}.oMc*UX%tViY1gF1u=[z>XW BI Ik* DǕ#{{y|iQd+LB,vU%uD0)y⻈ )FT&߭E} ]LJZjo^#-x%0ʜNSS '4QJV́VLqiov)j\eaj ρt#UXA`|upb>[~:X;ݨ4\f~jzp-dO쇦զ1dDPȌ+e3۟xKz4,~$y=-P"l\PQ SLݞyҹ L5[]Ca#/PQ'}M&j${VWM36.͡ouAE՟zt-$fn?Qmk:anhGҊ}0g hk (J,n. pFq؀;Z~>)3--p/*{ƚN_`\{iuh>j؄oߔFuhQ" A=WGMEM8u$!g_Sl;,yn#AL+KGJ Y;%BaoY [Ȭ_g)Ll%Kj,+EWo]%q }cjOJg4n,NnvK~tJ+EW+X?\/:Hnt3=~=*u-0/`+`v% YIh  BY!՛c$YMcT") NSm5Z9;b͹C(`L|VC2Q" J, V4@UN5;ŜW-D`t.E 6(@jiqls?uc9BlYgP2!!MNT?l *G `.£~`'S|xBn`}!7$N460qQY6Sq|#D'ŏB2 ,QzEzLjpMIasMJFEga'A8kZ2(hgwOdak3`vyp:WDFB]0str8a({݈}E|cw:G= ";|ж3h(bɤPJ56 }(k=1|%n Q-'?*$Ed!!0;8"jj9jIVot0Ҙ~Fz.VYs4~LU*#Zly)操$у8/M|mG(B -+ 7D%zbʱp͊A=#ep"5ʵq6n:QlV6b%Ǵz@UV;=`h)WJ%q%-!XNq`&VLna-@oR*Z;byq,}I嶯xqJ웠r%<4!'$ aH=7CI4ں;uMfhw=^x^<ԩp+"[OՂl#'GMSK&ē@g>_U~!HC賭Sè}jbk Jgƛ"퀐`QiO a ݃qE2W~|kgZE6~|} ۢ4QMasr> NJ\.v|,yh<`܎nBiB―*Vr;ɟިtZӤL߭vqq)$IZ" LgK5TIvyU]1Vi׾xZ>p] };V:0^7B/TY8\PVDI;RBɟ/Khr5?ƞh.˱<5Kx@ |Z(g֕ڥ'0o'~{AbUph4&|fs->W&gm z%5[XC0!$t 89SHô[-ta\kXnJכe r(zGs}yhgM7ac&cֱaxHs 09JC(v8+Ss@f UŐ^`Q6^o)b_VնqW :R"[MHdNsj9C6R{2$&qBLb0 Q}>TNgNfF9ch\UCIE:Pӛt^=~%qOO{}y i ɼ M{ h<[fbّYȲqCKjB s ڨp[zX 3=70 >ZϬm!H|92I18<8a& v{FY#g1ٗS6 :dlS*#P]tƺNɰ&kܒWl޻C! wRn{@1Vf@j<|Efx5DUE2Ǹ@0fLZA4O-.a`:sDnQnvrGEK6򰱼JBͲuvSݿl}>w̌I= aB4FH.  H$Ij~"s-jqHY.qGo6<0k{plۤlQ؂\pFnilK\-<'k)QH;}wDDWLlgr2CkCw:do҈f0*{?1 T.ar. !o_!lGGtjG@%< [IG f ~ IVoCp?c !* EB@f<\C]bg64o+Hw[lnNyd|3emcmCڝCeY-CCP٠!ɐ=;70)m'vmmЦU漊->|_,+X>aR)S? W="RnHg !Wr>ɘO+]=a6fly @$G -UJ2J218\g̀ .Mɛ:ƅi3/!+/4e [JT}V/P#NN_0U E|2I)qe$7C+0.p' 5m"'wljD4OBt.5/t\Ϝi.Oo:$h o$B"R ﺿxm.Jf&*17CpEN{ eB~G$g:!:":[1 ˖{Hȟ* ^i"!&yiTsY^j*> NG;˴cA+..,\\C.gXi+*lKO+ĉz: qP-ytB2X$`g ?ZAHz#'k&ElՆYHF-KMJIg|r%xGHNJJ) 4օPhk~P˦8vI_s>LsEpiB9WQMhC?^|vRzppi_Tq5Iz16^ 9 Mvrxj|]4"mQvD ޒ\URT^Ƅ8blCfqxay=qlP5 yKRSF!V'w@-|=q{^]"SP2k:XtlԺk,_'Vt}œ.Y}q:whg)"nv7 fK+28ٶ-xKO) >}IHW5 0>R׿p0iA~~UbE_7c} vEbNi4_CR̄{ AаcwG"}vkXvu:rPm8P,q2T&u!V7ۢ v"x!%y.+Uo =.[IYdyybaàKx 5y <'6A^FR)0RW$9Ӟ1Ɓi$*:Kf],r!5h`'uh.o*)f~޷;): "J_=+y))TlU}nhb8~ic~GNʍ'+e]#txbi ppß0I;@:i쟰Qy 1{ȌƌIa;}GNzq`Iz'XHTm"0vtw q4P)]z=žVNrH-P-2)}^W7׊]Ǿ)@fp8䊰|#aI>RHmİ6_x `Z6gL@AR#}mO9ge[EmevXr\|Ea jgB -$ODH?h7C2ESQtKr =nb d:SMG ! 7Jv?6VbS+dJNV>.:x* 5v4;p dRAaX^!g\6d2Y>tKLPXa8f)ߥO OG(YlpZ4g'W~L|RWc]h5(Hlּ SRy7 N%lYz~o9`g48}oiB(pد3a!`X}i8 i.2 djIBmV,{#}N^)gO'w ~ˤv=ܔ#$(rM<&G҂vPgXJ )IOʓ7;/-}1Zm=zҩ|ɡ?pNQ8^`v!eQ͋A'tXZo]h4eh-ɞ,Ɗf<.6>UB@⾿/&z_I{PHb³J Xq/;'SdR|8z=r7}XwS3ui9`]8^ݔG? 辣h8x #TWtGn|Ҍ}~ՒsN`]Z`™7キ*V俾r\56RibX81(,j˳H=TL;NAJI1skO (O`y+7 Bx-9O',zY K1#ie_ڴˋ8(uTݓc ]UEu?"CΥ!wJ`B<ү"0>6w/NTp5UqO2HՓ|29cܨ`3j^[;{N6CۀKx^蛐-0ci0:f@T pQ}vc%M#{uń(AT #`oP̤YJ:/8n|M3TI ގ^Jwhf ȿ/65SԵ N^94/a< "?D%\M@.24nn$P1'Ign[v|#ʋOunr}!ջvo vrDHXr]MjQ,O2dg({;Y], ʊ(8.dA}$i+"0"DËpqC3FΣdp\MA_!1j=k͞\>(uJy!6Ǜ0. 'yG jOp}PMOdkAF ʔxAUEď8-a]Vdqie9bNT 4(T zeH=iQ[fB apTLd+poh3^r\l_B^bvq&ɝ kXe0e@*Z S>RnA+]tKQ(r=b"sS'9V箫J.wڗy{92)`e݅ԛWR,Fct659:! [+:i-ynkdNӆr{@x`zkgL3V;fm0"^bt-+@ݣrd!H3Djnu /PD3 L}Q9)rϳ麴]d>"D9/H862"|}U>RwҡxnM6措jK eu'~Q~_5 l9w΍V,oqB G{J31j:b1zhy+QRWn@u k4 v $-ܛm|"a6R:&8u ۠%WF@G4ObN!jQ,b=!}iV1=vHmĜP($-"q)Ӭ_kύ63EK>D9b"E gk9%;{o584MW 7xn/dPb{F kw*|R/E.bbV[wj=i~u'p!4&w cQ\ZHU{S8B$fbBLm~@z“[Jb(;33,~EDifò~ޅW--#q9w@`ҽT<Ye̟)}h)8 3UMݣjŎg dAN}EG#b(/NIsjmzrkGaj  QHp;pED`SV;=[c.!?@'2 䂿BDZvĦ)m;Zr1͒uOJEq*] V"sj3BK;tN=!s|vD q -j oN93FmϔrnJe`[g[-+;1 N(w0 5pb&hZH$S=ŝ4S+Cu&g,\I}~i,?{0@hS%qP`^ָ;:=Cljb2qY/3T b:_E(:bV\ ԉs3 OÚՅErsKy{ҭ?,HSv3-Qb!8Xx~Y@)-ΩglƆnNf 14R @kHS5—l@.h4GHhMo+ .IxKg~6}Rg7IvE⃚e,'fؤHԊbo*# qbI|Y*dk|,e!Xj=5mݓh^C,@߾s\xݚ\볜ݚX "P;%Y I<ϩa!葟u*i +`jExWco&*_b%¦D[&մ-6BQRSy$ɩ-1)nFX?iNr)u~Q܃d-"αѷ޽5 >v ntzL/p$pjW**};wZ(i[aPA$o%$;rQӴHwMf"⇇r&Ũ(`o}x n}ybb`q@#4V#M7 C ws)j%d"w*b)`, 0-9fB ?=i X!cSs.](ͯֈGOQ: M9c5d= jfVk!B@kRH6H.^VݦDXXBt\qoRe+ ֕^D2[:{ Uc[ _@w+3 Nf MhHɶǟvg9[\T>HEjA:`fo~wp)Ucu'"vRnbM v#P۪TR' 'GnE` 5j[gg=9qQZVB!cNe.}Q"XNe>JW=htgk=SAIaoF#I˲ѥ Ͷ||nW?"2[,:%Rrzڱl][nmH7P{7zq17GҞPq;P-*as u]F !{È Kvf3@{Mb=z?e{TT{˗2zWEw:*K_-ill&8xQdZ:|ewvg$4bp?(TTec:%V*FߛEZ ^7ޖ]"('p6d7rkc'"UzA*Tlǻ$Î= & {HƖ*E+MLV%"o PEģSgґy ylW֙tQ槂߇>!QI݈ˆz'VV C'Pecp!o!hK6C4]+fdAPBQƽ#]~f-:#C{«y9h-W49*QR>}F xu^e"`?A[HB2$;6_PKVʑE33zh`Z6ybTg:&$hHٿ$ԅ˳rs&nu<-BLm A֕c4i :DF^yy,윰{\a5ow~.qg4},aF/~{0'*z䈷[xk ,3gj8\#U(/jlˮ] Җ0!_RdF>ŽZ;4NʮDE-Uw(c5<7͇z=]9.7MT~&F6|z𢔢bN#6{:>ը2v"M*Lr|@[x9c_tԦH tY c'0SrU![x0[N|AT3Q51*IK{Csϼc`Hw9X6ƿ%zL9E_k7k֔xoOᖢkC |kVL\6:;/tv[T#MNhwD!+_mS 9Rl-uUV6 e,%2rU߂Дt1 '>(`h>QK)Z 19d`emO$ A_`.!DH|V 5d] j{~8/N#~6]ѐIqArztt fBFC {hÎCdk$_4r[s">,:J^>sRsy0i0~5$>}leBJjɍ'uUg1_s | Ꮍbsbgp8:bM"]bS+(-ח^X@߬",y(0bfJ8QHU;.ذsn`֬ L5?`4B^P?AaI=ii+ n&e- #\%p01GZe| v*E6>3 ~m9jD!VN_6Ѕ$Sp|xhEH`qPT^.>=-36J0>cs)/qc,Q(MDS7Qdy1AE"L<01fμO{F8Yz!wKIsgr]^}:zo֘kKޒ/81&۵5pOT~7l> O5?nALxlg{V@G*'o6"P>pc/:R۾pZpyH{҆ Fwlla5U.]*])/^n9'`'}sa_0"!V"j7JBjn/~ \v=b1|2i_x/gԩW&cP%Ez$g/ؼdF-fډU0%Qzז|}3R!0fct}12_~iTjJTǨl~-;h9ƭ5gm,,>Pڱ 9Gđۤe %${G{#2bTq !Yc{X"s:}N{['rTez9BEJOȢAG8~s+aȺ0eZV3otRdVYgVڎ,4ԺQX5>o(8b!@K37Kl榩ͧy`L 9Tacet<_⨣Io;:{OJVŦӋ-/Y_l-ptϜ$;-e@%m3azSwId$[&!$B?9QaWer(WAg3Ig7,Qw> 4"Ӊ*4jc~2!d қM8 i6. \w|⩅.?~̣lhAǏ에x^%a]oLjXA 3\JOoo:DAQUz)\{7ora鎣cˣBlT4V+c(hMYBW;UMYk"P{|j'xӑunNV~+m&AǦ}u$.RDzqXI$ ;ɫ?pMd| "#*q GS,3 Mj*U1tLAQ{5d M eG< 2n, 4`΀ J1ӮuL+䋥y^"kdlsuy4>>Mp;ZO?Y$~tR7z7gGj{dֈ9 aUV[Z^h BM="b[?N y2V{*-f 2݇\"v 0ҥoo5KJGxy2]jHcKS~4G2i6%mx|д-4s*[U ժq ֎p0QFRz_ʁ48R5^v7">|QbѦ g'r+dv`BWG%k;,D ek"nmJ~d1oۓǑQ< iq`>|Jܿ<ĬӷȮȮSLj+DwD^׫gcl,Thr_5ŠE\NQ%)EJ'V2 >9Zʎ|Kw`Ul+,֊,V , ‰t8##{Wk,a E-^rh `qZl N"Lu`IJ|wQyXK1,C WD\#LU7J1_pFuA GDQ!@b~<ؘjV}N|N\ 'fO~l)8-2$~plbv %Ex%5 xggF$ $G8`w4K<Կ0h\ #[Kٍv khc.~=aql|~c7e_1Rk# ;)$R%/:e'M (ݸ2լ;q~oɬq1j_(dƶ/4KPԱʹӊܸjc_ K;(곒e`$e/V8=rFF|y v0+Q@+Fi\WFe$s{7ZWٚ2.`7swQ1fYN8>L= (vy{qXTtdnT2kUWoکx ٛFiMnVl)/rވXdSSؠM4}#ŷfD+!>s^'Y]Ik^Y `%we 2ݾ ی?ک /]A\X6<}a-ݖIjBڴޥwQTL@Wo^ \pgGxP-}r8/_k_1$1|G,,~:0_n"NN`95K<|#R1P^ N,Cñ+.[ߨS lS("l " S\._lD ot mVF-0HCK&.촶'K!n%$3 U iz'T"03I oiOaZFBҞk뱀*nkPִ7xN:3+N+<5_`/ j̮\%#ry-kpmk7Ҙh܉fH _f$6dg{k]!|z6>1 t-V<Ω{l6wi-635a39A䞣0]>Ny3i.X澖V;з Ć^4';Jf<3SPz)W93]t6e޷{֕UB'~4Y'U̞;&xH);UM50X,]hS(u 6SI42ԯVctM߀mSmD)ݤF$Kd'Ξ7@}$Hn07c|xpz+i Vj(HdSu^qRn G xWx PjF14J]t%*Ek9rnt?yv`j`Go^Վ0Ae]fR3= *#kc1dx83Y=8TBxy%uE hq-![]^Պ@d0sDv˘[I(Zmz66]P^Tvٓ흔~)gh@{c4#s;i!1'Ofsd+kulI@jи 0^cX'B7Ą a+%ȗL;D$N{*l&j ~ie֡R1qL@ X >04^v>o1-~.7AX^xAIEV|%| ZT뺂Jd/ʺA ˠX`=aX$):/g(o.\_ *"BTu-e,QLVtB|׀k`Е[BB,Sg(ك%HmcEJۛQ tBL[N8q*K>cZ<"F_hJ9OuUcak$GӿB:^It]f.bNwX>G 3^XUVsnZx*@SP_2Q8]g`87ltINU}Ƴ oc؟%aX@NIPO{X^_!I5Jkfhz]с"Fx8UCti6%'3 j;Q ݱ,{0zx+y^kCca}VV<] /Ӵw Q>RP{6 f_IMbw Wx4.;qbpfY% P$VRy5ѥgk`?͜RqjڠBW S;ǂeWB׈6?o D-Koe-Gei\T=NY8NJ-zQof8ג Auح-OMt@B02Isf3$M e!0t{ZIbBH!u)Uܚ# '^uUo'mrjצ6qY,Ld0Cqae*R]= #:W1p[ }2לډ(OYGg.ssK>Jm!I# >R_STW\άp1Щ>ab:rV'oq6mc_kwW %X`RۭPWd"8 L+\B1wJS xMj=aC*+$IR PK-?g@x*iVĿM\y+ d')[XL W8[4ͣq^귕jQq'雹{jO]nEL2HfQDŽ=\qrD_{2&+X p'Uh.tunp,@Բu =痼\:{@A'zШ<*I,WDfY/PoŕAe*wBw8h&llvNr95pӄ"--[J"S<)h;zsm뛅Am\VEyJu Ŀ&|33ǡ$2Z "aa Թ`?jvc"[l U`MkkY.V"{I'{*/ѪNb>Um4~5vF aX^*$mZܩoyJջzQ:6oq~'$B'o\c}T;,c.I xE`-88[Q5{>h74R+-5^e9^ߤPQޤ ju,hq`;>#o/nuŴ~er }q_BX GqqTo>ᇰ=C8^eL3ʨ3l&>LA|Vd<;rz~A4'ݴc2,n<M}jCҾfPrlj>.^FD/1 ~yGk5-7*9)*s9k ^"  qJRMuՊ^V&ADw$xF 8 ?09/:n\L"4 r K{7:m43',twF#yB1&'6<,jױo!?1O-\Kz;SģU>vo}:9F~{G"ɕGX/(2bRYpH$MqC()+%*v*_rAe_'mF u`T7unRQ x.uuSms{֪M\,-y^{Y+ '*x q:8hɹy/"XN~S9".p DOh G| I= ILm>:_94hu7Be P:rG\yaAѴ9IB߶˾F ]f{b%]y!:GTS eQҝ_p" no ȅE.UR՝׹O nx5u忿O#\KCRRnp"A7GEDGƋri*xAA0"J`#͝,} _!/]sWSfڸxPBpy1 bmo4l>ɴ1Z|TIIsà2P"8f;Tl#_^LLI犣4uh #~;WB0w0i)^xyF5qs{<IrѰ5 -+3 0CDT99-Ȟǵ{af K{gZ`·P-u\_“3|WQ<,Ӗ6;'^$MAZ,Wn` fɯyWXKVx)~'֗+Xl}g4JI֭UE#mq\eT[ʹ\ D;]DbME+̑iR$Hr E>w_M]-s:R M ~az Mx0%!Ո-kh ?I ?oKHYNMdCkb"D (V[p{z8+mݻ(+T fC?~ʏO;,0נC Qڱ ;n"k_w.J(i40;> 3WXvQD;wPԜ8x` {u?gt>ୃφ{#`8fãO*͝5jye ^Yu0MU23vR8хw["t~Y0=!2NSSט vjOSM!0CY;ӥ;l"л[OTĉGq[:\I}Z;Rr*ѓm($@+fr 19 D`S%RߑåIkC8\ȝme@P܋l6-mϣ<SԂQ#{6vK}@⵼ԩQϥ3t|&<%}O9'փ_s%BzNOb\Q]:2:#X} ^[-iQ,e bxDݷQ0YNy`Ud ]ܑ&\v3q,d=0۹0!nj9"*q(y Ψ6h2y 0%x%ؠEDQ29Iޣ׍{u!Wl M &~ajwzD'О9!-=0,3j e`Zr: I0זW8c|?XaCL_"ru=nD4Dޫl, "B sZڛ ?|L6$hknm}"PE(j۽4~*.hKC&e;`RkyFpf;F$8Xo}^xFy; 8A#9,*$ٍþb)>tx ҕ:M8+r5*T7imh˭~a2x e<5o e^50ԊTW5y{t .cy %x% !2dyv$N؅,>R U=R]?<#G7cU(:"8z/dYp1+=èVG^s` )O49( .M#3{gѱk@Lچ<Q' *OEPEnzwP6h4 ȋ*U"ɍiQ`wSD眿Y(.uXVmMyj*EJ8|fI]D%15z@8`E!t0Zȟ*3DnJóتV9^CM3<;@$H.Q01USJ.a֦n3dĖ}I7\D@en#2Wz_4ֺ|15KvClo6XKm?G,哆vuB>E2Rɶs\P/;"=`wxxf# ѯ|EgpsmynU-mTcq%|E l\YY Jv[ 9`&|quFblacH:7.Qs4Qd ؤڝJ}&DR-FƹP@5s*hjq"<5;mHڍ q)L' EwHИ̓M*2/r ۩ _Uiu5 C'nV~2Q@{]0M>}>)SYq!vgv Ip g~ f5H@wwڈPD9,GIk[nE2$؀\6^Аr3}}.AHR>4&tsew_"1 MTF?e_u} +548j;DŽf) +\+tm6 ܄l^ˮHVi8gRt0F$x_҇rcPbr),؝|:'E$!n^ƺRߒGg~_͢F2 涇J>Β|qpR1^x{c%n>9b 9VM(bi }/aq#ФȡĆK>r|{dd3K`YQQkg%Q:.IcgRLbxĪP:6qN}y VC{ SA'BEV)Rwp,ŕw 0+{Ɨv6LuCA6dk_RѪa996|LaI1&JS!1> h(/f:c=B:/újs `{m NPʫiFbCq_Ҟ Xl Hl\bGS(z=8x_%Ea'srsŽl bFE\/|5 2@JeC-PjbeD/$N݆uگXdȆ*gkK͇c@^zŚecxvh\7C0 pH{+ ?Ы s 7\ UH'hm=Nɾ!ըNj6,d9ʥOF[0/w5TΔP5KX [m- G6LO;QP5ca!j3!hmMٌ?aY^iIlg%94 S왦;."\{Ѝ͐.1b?B'NJc1RNfUY&#). ,T3]4.}jf) 7go_7Hg gE>5rB z1Ʋ&-xv5 {=t"^4Uþ AQES@'8 OPn\EU4$CN;c-&oمFdqOwF*MY^7*ۣOwguzl1қapim#q6#0:]"Lj4lKFL!nc8'>%4Є1q>,B2m.&CsÏ&{u2 Q_m:0$@ۆ ^0㌹ ]kD0,Κؤ[@Q'x9яH~D"#GYm'$m@)LKmoqUDQsJʋ\TMa36dUߛi﷣!?5Lp[,%8/2J ZZԿy;X`RKx2SGmD^;L"rm rl舡cJf К -5v3ɗ|Iu $HOdp}hD;(Zm#np%#Y2AϷd~wõzQ).qaO=Aπ#/&̏r\ Uj_y'|Gr>Z??Zmxc~M[YÐ{GhV 8:ܗ0 @# {H/gʫ& \lasm%3O98۴B~*gR(#i* m*$3҄Iάt)Ywj E~z+XmIlBJ.'7oq(m@SOIj~l3U* _+ #@z_2ϫщ,ꠒb!V*k*w^v^o7BoMYVY>ҶNf_($p/Ǎ8-):LRJS_%#B̛Z+sօuWn8q_W߹EUy>.>wfy(1“. bu}!yLRO.gGKX*34VTV.< 謂U9_ށ>&.IaO+Ipe}D tnA9@?d|4Do$ mK!EL15. ' #u[Ie-X y <߽A1iOH<$t[K/Ĵq[';Ubӌ9:p`KHO+ VzV1ݟqoMҀ iVs{zp OdЭ}cޑ Eym4NgD ~ O&ڤz : u 򕤟)~-K8XA$PKiߐҗ6b:կ3{ T;pd',$EhFizVCX6Vh=ws/ x֚aP ;5ai oKX 3 3 d}֢:S`1핽6l^{c:!%p ^>Ys7Ɲe WGI4ӻB=pkf*Yln{z y8WFS+(  $W7 <5%?ԍvGeqf M=|2D]kDo!4]w8 XX$mB8vw+&xAE%\'TIaK7/M , XO8wDf#㴃 ɉ5->D˷rz_ /2S$a3^/[ GX]MH,̜!h1ͱ%H/{GJ}?C=Did9(0QEW׉φFmh}81Fcp?#"P+SoL0mpޜh ]8 ; (p#]-YFydaiBgY]2=(kN0̐L#C1 6dWFZŮdcx@M'm7b)%A2R(VRxSA`R*8C 0Rr6ݨˡ'@{  dVO4tKdlh h 93pQFrW$8;,qGxBy˜gI\ $]V4ޏW1YG*ۀ~ dP6xj%M |G܂@ݭT"tuTZp$xͭE& "S!%$~_cU@dAܥMىDP3dnD.@{1Gi7)b_[āGz5)oKŐʠ5VY#$H>TCMwU+w3,&BC-4^Hdl7uMcX[wgO`Gm1I Ww +l].qeYCQK= @bI?^`,G O f6C4NE& .;e#b'si;,@FU(IC2! kʢ\*R:'~޸ӊyO^U`L{"_m@3_hЖx\F+< eЛW%KxL?d7 6}}0v7bn m%2B~{l.t{-k?ihF6hDL,H>[Ά1'BUR [Z/O\Pz\TPgxap$VoW/$S˄#Qǜ6bPF \ ko"'ɭv8]ǷakUI["£lQW)Km+Yo,skʰxmќԯv5I)XEg8z#T6B[Z B.oU\JpWqԝOL2xqx.3Nq,l ދ.aV8cyMZs[LŒL,RtЄPhb}îHkB@l_m} 5뙯0QO[q274q{Q: 0zطp.0*{rP㴏@Α~+JKXKB`x\ۖZV6Vg"qWN9;kBmR$:ɌhCƼ.F)1)#:Y%묇 `vR׍sاk^%,$i33jXJGnTIw G@)/2`xvCe f;IggW_tM16e5CRTDFۈr~&yd gB&BE?1Ź2BHkCjb.b+'i`c^rK Y܎΢NZ%H S)O=IMT̵q#PO8*c2L!Q]nmQUx)\~Mf{i4!dV׿3KL@ 7[&Qonw2KC?Yh|*Pp|>X!f,j)?le2`!eOcqL~#K{VA pڄD\I0d}gbBlgWFd4xw?;"J|='+mz\:3gDHKm%z,dݯj? l<iژS ZttaWygpcKKu]3<49גZm:`G3a9;:k,=w)o;eohӓ{HlS(9Z@?w'Ʊ}ӭ'f'ȀϼZ$gs3E=>HxWHhtY%Pc zD;֗)X3j$J< %,UoI_^* M;4kTyʜa%V pW hƉ]sW% CH6s`U{^>^`1bctbXBX-u)l5d`jp㕲dQj>iy&G;/|"VQm>n>*q]WR\ls-?טwI|(.Mx  #IK(";UGwc/ʏe?xT9O(7$F5mgr&4jIlC}9q;y!m^]$E (fAq_D\RO8T5mYO{c-ɵc.Z+.n,]+OMiG|aph Q+$l֨_<̑c20I}̤1܅$X4R?ׅ-3 bF$d~FQ  ͐mR4-*&81%+Yx9y`fRC f'/լ>%Gr!dId@<°XA2iMqD_u E; *iMYFFWX*NbUƭ3`7|N6?~Q}nզ/oA'G?8=ZԄ'!* t`HPG(Nb*dq96&>鞕}Y۩4(Qd,z\v=V̍}!1 )&UH>Q8= B'ckvA{ۇU4&uvz!l~|؅I"zotj#9*6|tgLk=٥ D)1>[]N9gmcVJ~؆9*ꖉ?~̠poux[ezH8 QnCT ^f 1]aP1<=ҏL/g_SƈIJN6@CZ +7jrzu!BM<3 $Q|992GL@][% 1֘6${.0 Vm۠d2"7= b *g$|Wn^ocB1YM1#NPmly"aw/gĠX" a@eb 08g8~BB,7:Gj9ҋG{W6㪻Lq18-?" 44^&]T//4)U I˝4Zz!}&6Etyz !x5)9̳H>-,n%v#IiϑiB^e=]ݬp,7rk+^yZCj.8㉞*5 yڠ5\{ 8SYI2fZ #Ǖߧ)>Ci9^T%Ig#^o, +hڟ_ߦ6vp{cLPT)K}K (MYqՂGj }KyOrm0ˢ>)dLC$% gT-1fNSG8xC^i{cv<>)CgRd}߬r[]` ƀ1?Oܕ;c{ ew K]^RVw }CF ݽIX8iSe_9s˦"Y!#:˄"Q6D8.cVfXȠnI?0d@; -[mXÓCrE%ؐSQ|kQ6Slk}Lѥ1{DxV R^7f52"O'-;C:U5p.hCLJ, k1ldR-|U-fSmVtʐM'! ' }=~@`>#0'WF[>os^W,Kλ;< F44kF [ԜQ/nZgMIJ2YA_!jˌ6avRr+Ӯ@@(*A{Y8.:Ih_ LݢD$P%0S69$~>NƉ7֙fsENI]DNh?!r# o@ 5~ǷX*W vh&55 *̞b~ZMvO{ Nl0Wwτ[jVEڈziJ|POv5 S-$?͝±6xsb* `klĦMyf*;xnCv0n~y`vY@c~/qWFy65q,7(=Y#ˀ1N ?TÔAQ(?jR}1y5#A2A귐s<,UK6Ci@/-.ivVT.x Xb[$^ɜr1pnϒ%ʤU+KG~[0/ƻP>uJ2 C8ͬ&\3ƾ˗'KuvQ\CAEsC_dKo '{ >T0؜I|՟ Y NJ0jߌ9" 23]|m=nYKS5!N!n?M\5a*x;ghiA/)(kҨZ$)|78;s=RnDU0˃M5!x"fmv'<O gkDsI#'H #@5D!eUlg38f@NB\I`9o!ݲ{Ȭ4:T{.&咽8LnY].݂ r>{J2hcR>.U6.Lϰ*z9s[Hnr7`S) GD@7,v6[%B~?;t*cWJ>?5+EArY?swس]+-h &F tl8t'x_ͩvbhDjau;" < S y %Me2AHVNkƆ4 GߋV&i-z҇)`EPrB٪qJLzUz&8 l_Ϭ{Բ}bTz2)y3` ,#@ML v.=dN9c^ZR<>Z>xsw^qȨcMʻ )faF?H $5HGU"BTIC;8 Őg]! m5xH&n8- QCl-oAT?C7r~.kblEK]}t_@Q|ٲrW, iU&!^Y)0%Tyha%;5W}uȶ?D LwJc-.Շ!]K~ܞnb0T)Z츼ö٭\a[QOZl/KYz5nOI#{ߣDE&a]fD.8Hic3ʥaqqQ qzmlu*Ge$0ȍqoL|oD ܈*u@!a-M O^|e/ %E`~by6YzM&\[ܒShY}b3^yeՈDQY9< pɜ'Z~3EdpŦ:$ :%r_fCL(iQ)4\J0vcGέDqA7D)?,$ d-xH$h0'F5d=et8 >ISk픪3AO CJz5=-bޕVܵT>Ń~1ias9;13meêjm{ؼg/VK `gOj;-\ {u,yl'2 nibGg\[*ʀ|ƯhW]~}LZw1[WA +d-o{/^7dh-"!d{yg3Xץ:~^A^;"L6O9jr+]]mۍ-^|Qeztp?w#L닻UkEK-S`zGǷiN ɲRypJt% I\;(Ol`וtl%99Ź8ᓎnT=6r/+iX!eMB)di^:ݳ\/t5l[[eAE,OYOw`jtў ?|jj^B61OX?wV*w ؙ [Ӏ-ǁxFeDka8Ryp}uyčh3SլBϊ*$+S325C%.&¿ddb :8=iĔ4bԙXK#Tp9 GB,Og'>&DxbX2\V2'*kImv7i~Akx{;͛|WQ UV(5I?ݑ*#uQ^ō@cV&2>%kWش?M#8#jgA |$0C=њ 9D6'+\x\hoRք`KDEKx08C ~ @f>D$E{rRy}sMO* jsFz9v! $ G(4!ؽ#B8U{Wii{,(B;[%L5T|-|p\bz}V[p9Kk!&&w4qţT=C[8I)Em ijiJ6|^92g&M\ CuЧ-_p[pt=$Q[R:.%ՀS&.~ zEge%]p4T+ji ᤚ^}j]dyį<5QNxoAxWsd-yvx*?0h;_L~-7{`#G?5v bhרpdc)adWiܣjCp ZpS&cGp2OAvx {,4P\L5ɖ,g\|pt\$Ydȥ;)Wq+4=_L*0 ]-TQOAj;r\m+.2cn<~xʳ8*(f֏}G`|,VnYrJ B(_pm:;b+E{7 ,³.\܍G+Uub>@諱z l 4_2,o5E>Gד] (bwB_op{z̢UA[kh ֗|%xO "CeqSHu_Nʟ;bc$a :kTK Fot'FOnΣN;-ː|$~TUTS?dߧyM5K/qn) &. x͙k;G4̍kEWR}-8"ӷ!>;q2Y Sbft* .yp [d+^vo>*9vPrD.6\j򣁄H0}S.FDST>+vnv(uFk~QG݂)|0C7sc6$,3߁L(@c+9ң3c]e,`z+=92 WC`ha wŀȰXJ{w >}Oe*= {ۙ ɮ%}rJ$r@̴AX:yb lTk0 y)*~'F_7"KRZgeBqrQ"l;3:y n9mq(Oh7 vaչ1)!%ωᅉꢀN!+L.s-vDuH5.9"vRP^do |#}u8|q_hs_S{9E,҅;uWɤf![ި^KO `eWAGLIC]IWyaTblZ6x0(ʃz_d-\IF[^C2rwp__3ؘƕv#'Hʣ`sN2o6X /sXg*N "4(ۻk'+J+qӹ(|RYET,IOG:#r%rw UqYlrƼz2#oX^IcGp҄ Fd42˘,l6٨QNUxoYV)M 6G]fd!!~~(f`oVy%|t0nyҞ<,Ē/͛6n g(I ~a7HVחU2zbŲP3TT_-)B5؈vN؃BmN98zumI&̚{.7aO:x`_R?QA& eZ!N]PրܦFk_;vUH-{Ac*/U{2'B9 /MyENTqy&%z#~fnʫ:ܿb9iFS=5/ _rԈ sО J*MT5噽)B7L>0⃁epS&Q@] > -~G:1Ճuyx|]?,= `{Iu 0!@cLB =/Ƅ> .IƲV84, {Zmm{fˎ?H9KìDLhuOU7ӠSɿOj=*Kx.697؜+)W?߻u>gvH邼>JO!ko\" thr25xC6~19FShe!E$2C޽+ɱgʐXsΒ@W|EW*M~B?=WɘODZ *6FEI768rWAvэg&<}[W-l (0Z93V\״kjJj5t' . 1'C HNZ]Ϥ8VCIՉ&䤣2PC_[6!Z31/Hqw<&y:9jE_x\S + ֮ Ƃ]->xeë*hâ1 &X;&|X<+2Fo8 |]Vad^zH -OһKvx7'(Yo{Yޡꢒh&DPk=n9=&19P"gxIK qxp!_G $k_FfRNm|KA k)CqH1Ҁ0VTV,ä 3rZSg=-4=PGz<䕕w9N &R=rzw]jէCjI,^SbUT\IF'~#28/ayY򍵺Гe%@yr?C@# *MҀym[K`[u?dLiuݞeΗpY!&h{:С2ozdE+Dƣڣ F]kшbC$lp?!OńCItoh*!} UMλ'k3$U*L*TK|z&<#ٝ9&F֠GhSUGd'V(MBCn ;`o|}'=23!m3â i\F?)0C$xsIƫ)ONžeu?U[}; t>F'a[߆j-Y :MzoO=‡~ܺ 1"p㮓2'O/:8LN+IZ mѾKJ8+k;SYJ O0,V/]||r~JbjM"׼ەGd!};|2^3|3kE$ mh*Ҟ,>bbdEM$p 5B^Ƚ?PY! ]v.O+.]"NKU[)Y^01x;02Q^ 5L) talMzVW>0ŵcPԣWOo_TDP^tu)2D`|12-/P yӱ`[YΔ1ZDж"WLw"pˬ[bbn_ ulnͤ1'S`cRVoV3$ u~ ?JI"m^fkҗn2)lVy|r}iOdKtw Ddy`\s|) 1 G4pg;k:)Sq%+pnԢdĕ@JE#[.n*3p_0L*I:%Qa .4WCZSE^b@} IIPWg-G6 52D6_;s<@6mA,)Tc7qN?,4\j!Mۆ].@1x` 6v=o9hŷ3#[ cHu/O^=k o8@ L;~]HKTFanՁl.[Uق=Teľ+өen8ր7ti*?ѻE˩7낺`NRPU[YNJ#z;K1>콵A `0Gv Mg@s;$ ؋TUI~xX?9moMUb.ɩu%+K$ >6Vbf9oU^^.M[=9&&"QB2_A:A!j$6_)a,{DSxP)} &4߀OM戣odNM᫯ph|vO&)MtILK) $+))ytQgǐ)3ʙ^ 6XԸt \aY}kD?1S}N9h;vW^B“+v{exCi>g֖@yS(|h.1Wz˿9 etq8@N$*%V88O$ׂWXՄ1;%v\ìyuF 4\"$$ (,F}ͤ,8b'a?/wH`ceG?_&.#U)\:|'=uA- /rMa]YMԷU. EhǪ S1Pne;67"^7^Pf#?3# Y}a3I ĕ>]@Z`Pxu@ RKu,C& BdG0O:AwVc J$sW>pֳԼm\zA焌=J~kƅ0 Ett앃*Y}nS_27o3b!h%٬ǫ}#btq5Nl v+'D!ێ&hcLwz 3 J[zԺ#"xqnHTdUd󷲮7N7"VJ[dVJ%>StƙDIZ曊0Ҧ- ,DgYm1pƬo$Z6=v*(Ų@)9ܹIN"oJ?u} "lTP1[*OG_B,e'*}DZYM"']$m)eM\NEwٲɝ ا$['\z T !Z XӇ5;ȸ%az.Y !x$Ώ/dABc6Z3_/L3"_li$E)<;4cd_4&0W٣4M,ߎ]ãz 'DޘG ;"P)nt%Im-thR%ov.I$~>ܹlK#HSehM#AgpRFrCE>4x+&!<(N~{a@2Sz VY >Z"ry(R+Zɗxp7K_;*=7.t? dֿTKi]a ^3^Dq8ҁ6y/st1?>i[Ԓ( ,pՌ~,Y8{xz0_YqSKV\ 䑾* } 1N^YU96f]ch^߁ #d% v[o"8@Ե=J4 gnޡ~+0Ĕˢ[eQmgGx07.C<u2fEJ Z|ikZvV _ʨ& !TX;_{2U${۵;xB)m\խD 3YG3lbV dp^ƘsWxom -&D7?jo= Zj$/^qZtHG@uLu,LSM.ӋCc3ЂV !j:dms,dP Ì;zEYb;h\YߏYbP>b-׮- E㷩Q}K;Q6_4W'm&ְ 'pv=[*`hMNY@vtlUbl!1c]gc/?JYqU\gB#Y=x ͻux1z4܁ Z̃VK*utw$PE #,1n!8t#*8IBB#Fi31G 'j?v&0F^f=?J5ykq`oJPv?Lfy7"EhEo<@T>ѳ8K>6[ 3ep+vqD*{ A5&'RݮւB2Yi} @VN)#x" HxwoOJ|+.%H;9+͍Unjk(>Q莧)ǿF#*r]rXѻyC q_іOa-KfWZ}ivEy YeNHw10F\ :zzTO,7å{OhDB<G l^`GW#Q=#k:g@MTau.:gG{[ؽ碀Ee=~3=%.}|mg =7A.|-T`UP/|V:Oole2"!#wDBԭ6+QfwtY!{K4dt*b^M1& ÃȀ @ mM.bXKK-xAJS\wVx:VRF?0IlPUE#d/sSb\ۨe.l]&t%WۻU3H>1)p7--Jo2㞸X:FObc,k*OaBFpVs8[VvY٭TI^ESe%)+Kw*]<ȜhA< g1TZ?XtgU.SIꏰPd@P)>YsU'yDHz74_T:~2˦bgRpn&9q 8 2?gޜo' ]`#>p(ngkΖPh[0I|O1=/{7⏼< CܤN, ~_ us%pOlVj1xax y*_r2438ӫ#Ga>я O_@. '86P^Ge U@i_ QloEH[x afs==Z)S3sva76Sګe~Ӗzo{̩Nu=lϯ:~Vćl/ƵA*(rĚǭ^j1 KOGa- eM+M6Y/i;Fү-`]V$_I >L0r"LBر쪥&0q-`:]>0牍НHK5B% e[:]Zn6F'NUC鳒[@jl ێ'S9Wz>!U.$ ,#2~vz菶-SkQ4|Z4ؠ͌y,@uSC዇i͇=]Zn;5٫-)Q<0mߴ 6Mk.d4f,!rfY1 @5O,9kB7NƙYI/#,NG o?ÉZC[W8@ ~BQ̟Oh#V9P| .u9gՕYdwz,$c:@Q_YM•wbLi9)'TɗUc"`Ocp |?,mf0}T4"WYo^" /]pbH\b;yPHbgwU:PZ5$ɫzDt%&bm-yXno-3\&$D7M<Ͷ?h&9V8+nIm҄BWƐ0|gq b%R_Z?Wro<'ƴ/y,$r!oPƭa`,`fnJWe`1U`X~*7<rUaJ4/OGv;0LF4V0]t1b3ޭE#gy,*3|9r̓A%HDXh Fq*=pݤVfn'lPu/lc`5dGn;~ +"JH#k:seEL7 #:n'Dջ㩀.Mzlm 3i3vK,Z ׇ8t8-ڤRifViIBjTrz6N?V73i57؉VY2ILZM۰ Gq0`m'em^yo9У{^i]*[0沌A24j/Qd:U3?dz޾! qY:~RU-B4}h/h@O :u| }@ tބ>Ey? [>5¥ae (- R7ќQ2p0N1#<߉O H|EĦ#0R)p4ʡ ^AT»=F[vJ=j.{J~~o`%$5,^b4nmSC/]hAOq̎*괪y$tvjp{6I&N/ٮ:; M pWIFzqJ D+OM42#NnF1xGR!HpL' M7:*V&Ԯr?+.t {tդx>y]WJqx`_VR)뒖b_|8@gX+ Jje59;!:ȣ'qX!M1+o\鈇ޡ <%^.?4K #fv5AD<`{e.(~Q1F0\^ӗPɧ=V5=XxQZl[f{!\gw۱t2y![{ҘC;d]^ ;V6Q4]kA3h^Ҕ'P6BҢgq6=GMljW~Hzс%'ITX1oβ]`625n3JUTV ڈFH, FOA]#?NJ.v ɇ\Jnz\&r#M%},_Ißхa6.H9M=AEITb-s1GWp]W± ;pNMM:JJ27bb0V)*C)xHQ1R^SX@ Zm=E}ߚߏDIM"Y8L¦ʤ ]n*56nbrulgN*]/m EIPN\mWD.چ)|89"l(PͰd"w'skf|g-e)T9gugvW**5ҧbP #DN:a@aqY8Y%1|;õ cmјHR 1v+ }0!.I1: 1B $uGa\ Xfv(Y=꧸U(\7*"9/V=Q(nfIyꈾxUJ_o¿<07:]Jq}.~W;z|$%tߋ:N8).y^6)pny$=E`|!I ]`Vۦ(tŧmӠ~!STZЪ/{%$,m+Nƿ`6g V} z#+9Pê?{ &1#v ޗ)U޾t߼v+iي'w$ X >!SqSWa4S2IBgJn[4m0H4.x7T,7\Цbln-x5P| Zv^]YT6#u‚5 7U@'̿ʧ6Dl-6[;zD)omQtUGMC"#_ [Uq03gۚS OnC>ԃ ^Ćn75L ;AnWK_7"P-C*/eJxO d#]A}<tȆ#&o}.g(ࡣU U]k@1Qd7-<$[53Ls_H|l>x oQN\>AKoGlٻŇ&A!oKKjji= ՇZB&ԭAD~-F]W3` A$-nS wFfXmT/+EGay'}MʚBy-k<6g{g>6ΰ+J"Lר˲`sFc6eU3cpꊫE$&y%`)'x+k@zĤmƉ^i/ ~%mg\6ls 66G;]k?VaMf V9)rZ2fGh<*y %t~4S3`\@ȍ5IꑙaFTEA[쇴c7ʎ Oq9E{[VQ,p-UssbMGf] 3[73AZWӮ&ԡ/C^N@ؗSvԗؿ/Q>i79! qܛ l L`r\VUy L*>4Gi>|a^[ybgV@G Gb|QN8jW xDmdP-9s>s~UZa~`xcBݴ0;O?Bx o!r+ҹKeQP~"]FZ}\Ctudn`e7 J6R k~&_+؈(\&`j5?a]| ffK]"[1M!^Dct Ը6@\x9׉mw B-̇mסD`5KHI(wJ .7FqB%`[a%iؾR,`rV_ ޱ210 rVlb֙Vm$ -9&6`N:Z%W'S͉(8:7AF+uyZ=A9$pޤ#? d9D^*'js@tb=m)d$>$^̀2K-~2(3NNV➈,p6G,+ +G*$;t'; jEow\ $G畱@D9hAn&}CS Lȧy`扯D\wcCK7c k%p@nV]{faA\s LF=\AӘeva7Ȅ.8%FC7g".22 =72C-xgvKh>Ua#jCnYHoI$p#!q3* r1ҟ0Y\p`W;C+Sӵ Odc8gQQZ S@o[=yq* yVG&mS)7@jB0rvD -S+;ncU[vsinߥ1VdrvJЬ-;hJ'ˋ4+ JjԗhoJ]?~. aygIG8⹎8kkoII2SPUP̛U !@rb  CYή$GB3'v #Fe7ߟB38RL뚜= ]hJkSAoVoKp/bgxc)rKXwRf[|pwvZ<?RL?,⅊`,."~Fb #7<4 iAt8QFy7 )7\٨6]P?= ;Rl@SG4ҧ ԂYہfKyyą6g ݪYH B~fPd2(HsՒ 2KQC_Kʹ@r}[#6YZ^I@/#O+$6̠btw-6IӪVyvTLþn9j-bm -Y#Z81{ދ ״%ttglˬ73nB$ 4ft/PݑCd#F2*@Z\CgtX= Ft%3C2/3P L]@RMD%]A&qAȋ9â-' Mk\ 9lr`1Ǥ|lj%n%yf/cZb?fUYvzyS}3lY0i^ +[uP,Y *rWJ'>>OpSj䠂 pr,WR:ޝ=Rum`SJq8x}K1f%ԣq 9\+࢒v\Q7H`epBNGa FnK"+:nߓY;d h݈cF l#*tkjvhwb8$*7%X˛%.v)8٠#%S;YB8ⰚhQ>Uf,MDO`ѠLپd\ٍ4d;<<J]BҧƓE}GjxNC#,zIqb/@GcMԆ`975 .6t}"ՙc]$ j4.r4_ԨMD&0W: "Dtk8*n 4"$>+O0tAFcG/tx "%УŸF$y}HQcg?cU">C7N܅vvm߾s^l%@iN]AN먀ߐ i="NjQ61 e*7x(3!kGXZ!99XQ ? ΥՉ|1+,sq/u6hEɺ6QQkI\GL농I PF߉wQ~H4T@<;ח/,whָ9`|zKACD7HyE?o^}l.75sx ؅֮C>Fz++y҆mÒCQUrN|7KO!b?m{ :wc/u=$/ֲtKN:8//  ]ڡzw &EU1׳zɭFm y.y_ˏLZO ŭ F2EN A$UAt8ޗi XM/F@B?VSZcYf]@ĥG1вZ%-f@Owӻ2)Y7אYLl\RSG:҆&{`z@1y]j(z*=)|62H_t5y/oy64J-D'ʏdv@q9PrުFZ?a=4*ڼm )V0/E,0|"D3Ҩ یTZ:>pr%q4nj6*jZ YYfTS0H!l'cz`VbZlpqƚ銽8fh_+1[j\:Qx|][/yԵwrtL*h~גkNJoW6* SZ,B sDx29+6C8|n/F\,ɑjL1KXDBthqw VmN:bNddp =Άgo{zby 4 9w']K 5L^5i|nʨM0[220t1)I z綀?,Ӕ/5"|jOJ($c E?Ċh[s.d& .* jÝuS@W&Ib4e,%1{.`or6􂻍pW28+к]tm/&[˧avwT_4$6 rT%<'^hl\o+;ܗB tB6#\^iʤm% ؠmmhhk:USZ2g_\>d2%1C/M1ċւ sXm#!ۡ$7x0cU}lٺŠD"-Z _y{Vz0n#4"3\ ?et7>}WhKذo 9RMaRh "99S;Qٵ/X9]եˌ!߰kt_c,C-rK 'Y!^~,n4uYsn$,?i/ې mD*~0-GSjAwA$jnƻ+UN~qvlZiu:Gh7I|'h RJ^Aհ"s>2rwf^*^0ݽr&66"PY2ls =fQRx'^vo"jz£fKx?]? $F yCQx;fʠIL>[C43%kI Xmz3]gdwlJZ\@;,]n r>rZ/e%=CUwm0TID'/wV-xLOc<ݵ)D^p/D!xՊ vIbH0|nC_t!.TM0nJEO IrДgjMo9VanN„ T;|q$]xBg'"l/V_`|=Pu yܠA~+|}!O :z lay[T=857ŚZ W㝥3uܒE4ܙYyE7)y7:#PZtȐ1V3"gq_]aɾ_-Z,+餶?03QYgD#74C#OٯArF 67_#dʍLʕD[f>145|6%gX4C/ATdS{TM#-=+rN X;b}+:l yɢTᾨuG j2v.A.v_q JK^m;bo=̈ZY"hesf!ሙhw̔P[km$җ|؋*H@$NNQ$!*Z( 6PpY$f\YQ(j#mŝ "-~uXzƨ GZE/e 0-NRBSELJwZʲpqKw;8᝖o"O^゛$Bt 2gU*kWL# C,3QI|԰ȁ6q-d^+p|SkQIciOn|T'/Ioo,bb %yFE`, HB%͵+\Khf O`inn hD΂"* gkq> ?k܌OpӰa\9?u-I-R$I7!,DpքƭqoN$KZa|ʰf92Hg[I6\[qv0"@[8A-P_ϚzHK5[ 6?V`.YGhm gap#|kޞpnjOSU KsF8?vaFMKK;J 2Օɵ"&'"Bl얹_,>?jŌ{F5 {m͞ LZYx⧦)wDLI$EW:p}d::!,EȨpbJ&KP#NzYlXL2%H"ߺQy>ƒFk,cٚ_jBr6U!k6ħ&bݼ&x<9y]rM8,мL Pp[U~,,,Xcͽ1iqF>G$OOHa,hSʢM`Wӥ!\v;u堿 و /cOC~pZ#ה[s\UO_'u:D.sy_׽DYx󉃖k6=D!w)XUҍ'2OA6!LrrքKn)v~t ؋ -Hb=sS oSfKAnVc-n1؃P?[/svngpZM'/rVkɖ¦Χ4JHD6_>|ij^dN@x28r[51ό;+ "-:p"oulHV՜>ˆ^,ASjE/8;(aq+Z/EH1 1Ǣ@TU+ M7Vhyo{#v셊LqSoL$sΩCe擲 /.xΑScE ?\_f!B~b|`8j*>rh3DO#?[KH!15aKMg$Z)%: !7I蛼r6P(;!zH97qFGMuw4Uc'ѵ M騌(W i@YqϽ (͔ܳgw zvygxXZ_JPt"RmJC\̀4( P&XI!Ft`߭}u1GkPN4FO Ux-Wi ;3+scɫ3A"쎚_}Œ5Ji{VecSQ>8[u *:㟫du%KZ̀cB O?YJAl̋!I RcwzŜ@kOe$ OzhHև-hT~;vY޴4P`*!1Gs#@;"hy(JJ$90(pjj/}nRf5 cuR5wm%^JDşZK ҅0BuDܫots q/…tyFChtu7PlG^B?qNFM8㻁FХCˆrlR$Ca;Dai.lզFaZRL?)U~jnȭtx.+ZWzݝeG%|NTs5׌D&)?Q -gsgp6Ui3< tKF P)~u-#vNYQ~vúQxGz@YEjTиoyŷrz|/FkliӪ*hZ,3й n6HbJ'+ F* %ZBqV[ r~UK+̈,rj*h* S"Xq^&s3[Xyo]@7wT7^Ռ[KެݤL~eiKƟ@+6ױM{)+y=VGt jܓdv:z T}`o)f~ ӞYFB8PCxt!,&5͒=CO|Sǘڋ"am+s|0$sf'|2̊Gr% b搯}'ch!s{9Εߵ|>i zaަFKri%#W_ !"#`Zl0Œ6bA}#$H 9)b}w=@0W:(7mD6_>"*RYF0b^6bE{!jV7cc/f2zPM#j -NM^o;ݶߜHrG،hN#UVpR1pv&mxP| p01L;nn Z;NFU=@^g$4 c[ O v#agUQŽ kՂsյ~L ͭz CAq>vv.K6. A?|y߻JյJkΊh!8 %_n >X2Vn WuKѣX,xX(ECdu! u3J~2iԘtGIQ/a2mnSV*'nj=,>4"*J4i8yQ5S=o e;"uۼA#dd! L❩S Džy@as1 +>aRQ("AɷDUHE>xMZybO"|&*+rLׄdφ]#un__Q& Bjc@X*2--Z{0.RǕ-]-&=fFnσYGe\2 ivbYiĒP ^aBU]Wv)A?cI*J3y47.<߮Uyə5{%H))'Z9z%0[긎I9842td`_!f^5%mbo#S/Q1;y> pfE>֮Eej#eĭk|{$;wQ;GZPuv49<ٸ@97;H|]j0N0S4ܴW*&f l? ?:J|k9ySAH?t5濻ˈ:A9?)^֠%v"^w Ӎ,[V5FvrciEEfgd51$[vuIFuhdSY 2Ļ]'̽?K)̐l>WO_,e7<=+j]@M_uaQ;F<l%ߋhR=`бȖ:3i)ߒ2&ZWO^HX?P@l%8p롅 LP><ǹlNT4/XcA.O53|6!.j ЏL%=J\G Iin o}Oi%o3x(GR]U#pjhkm::7U 34qX>O}5S͍њISme51@=ԍ]FtTC(G!H]2@3[~IgYdJSn(ͣ{cWʋ!W90̿4d%!X9RY@Hgt,Gs3H:GHw~!ߨ. P*Zq(V҆$Vg}`n|`BQ&vk%tnrhs%q"lR)|af˜xZ붶R7dQMZ O80 =7ِw '-jP7b 8jev8ďب\RK(Ha"\-Lฬ{w+KnGk$},YVC.դsc06fp}9 ҋI;kZ3"cfzGnQRYy~’3D/ ;Cd9J& QjʺcLäUBezS~`&]h(i %s׏ f!@+ =c7C~ ?Ъf=`FJzLEi =RZ Ա2zNV-1ߌy:"1 kKc጖VE>lzZE6XJ6mj&j10`l ibV-н ǒl@vJJmoX"z_N@eO ľzꙅGmlk Nƞ'1b/ .~mž\: < b%oň!} *S0  mI+VGG(( 7v ?%&E1pjퟋ.WK$۠}k,WWA#">FlW 1+M۪=|ϥ.1+1j(oD߼zF02.}HQؚ7DA6CMꬆz-0Ɔ:۞{R@o": >grǁX]z˪j:PYUVlͻ#HHo#~$U^2w%izJA|ߍk.!Oc}'T%%.҃wNvͲiHWbƥF]nݨ^KSX;5sՂ?fAH훣.n&b.dH`$wWR"̸X3>R',^r ,,@"gޔbHh#Mߣ4Ͼ;#@{6d$cr!I3߉ =y4PQѰ'ڛm6Lj+0KoB.I\Ѿ-y$N ^7fil2oK'i|vH! Ya%DV5\%l9R9C7·3c1VIͤ-u֮>;5>DGi?jHʵSf19z⻂*WGUhR QPwĥ " `?:{ XqIkG|zreɐO}kIB@iK5| =4 ~|z_፱O\߄ $9ٝjeپG 20yϊm<8BVP %XjKB$eె}A(6ZEA}^=mKWT 6: J#FN{[`HMԮ.e 5h &0h4{rp7^VƮk QIcſ[̳]:u DTC8W])`;Td++X1J&Pw5U5މcѵr4y6|yçe@'d Q : 0Q_hJI;HU^)SӾA|&,J^Z%`Y}$RyWZ+p6E{1 :t'CG6xK'% lH[KjIN Q7,/">H6=ԑ?l)!Y5p<搅IMe(bհI8v Y_Bqcof΂:81>DR~%l濫_𮜱n~"׳Bp%;$R`ـt0J=t4ܡƣLV@VCDEP%_ѷgџI0٫}sW!c fio˳ج,l wyGNk\ʃ&^CnQr{E%YN狪+qCYj¡I&6X:F_9 Ȇ AkR+-0#RarlX( $1V72XKܫxﭛc t(ykgS #5Bid+hl ʹ $MOO?n/}f=Z›PdfأY0r5ܙ?4)7 $$+P2]tkb;P% =B n %T56D?s8Aq `J &sp&%d]_,ޔ`H%<–65+cX7\hI'n*H+%]W7h/崂-!Ξ.]P@ȿEHc]N$ 1s,VBf<Q2Q v!$vX_ʋ44 M~}TUHjULY2m3Sɱ..7i<~nNր+gmz;)rur6} Zf| P=WOvtyBa9bLauzw[>mψW8)y9u{oK~}QlƏ7c<}%We5\1̂؊{EĻ wN'A!k)'MK>#t&.}[@յqD$R!N>IzCbi\Y^_zleJ1{ *9^.&X~ Q Dzozsu|D{uI9>ïv+n0f{f#Ǫt/ȌgX2~q-KOwP2|U\bw.+v 'MMpLjQ0WkBWS lC6y%f`TylPxL/"(o{.j#g$9Tcg3O]>3{:JGBKl"f{uz40=g»+#X Wh?}UEsw#Qk*ԋ} ,&O25JUfD7tCnQ7y5F.^0O|i`7ַ< LHHgdCIacNp% )1M ׏ީN2$,0D:MϵYۣߣf2BKyU# B"+Ba5(J}pcaaw#[ LMoh D3Vb؎q3F;w*\6`bF-;͇aNRxv&䘓4@> bP/78>:_ַ K4y փF>o 3ƟZ9=j" ,/aߟN>$ H>Qxe~=KXmHxШ]1zE_(L4l).P86WM8/$yUbeIdjDZt1"l*QuTBS<0ԓTdINYŴUu4I'H;~Kh")DF&iCJ]%p |){V1 BȥeٽțSZN{Y+]Rύ3Kk9 \ dW2u WV%IĉR49a>l:zJ/e,pF*KlU:5Bb(D:*2_#&*Ȅ}le{F'$`cZ>jVzhأՉ*h|Y dY4>)IG=+ hғAmn!蕉:W?rf6c* ԡ7쳑:'&n߄09@)RG.36.IW(S[>zu.gŸZrc~h@L<l{,=F@M&X}9D)ʌ?eT4=υϬKBFꥭFf[8 w $3pNUGH800N׹|F7YL+<˚1z̄1%4 N34x9 P.2w7Rk $`$9hr&jjػP'Xa[p~>%jF筵# *#xlo'|E>(jj(h>>sڸUd2om{,lJwxTJC2j0A]<ǜJhz7dPvd B,mvIHDfB5EYc[:ZHW]<)ykڦ7 /qL-#4~0p/X3e:Ճxf1r&Kgk;cig<|ϕ딌RoA31-) W:U UEp$'VV%䝽'd* E7tx!,-hE AO,I,}x ۼXF9m-8(Q"$?6cq$M·V`*ؠ }/B]&X X>-eB.j1>lҎRM:̕_.:at80G쨘x@imƧe٧]T)'IJ4%s\VʎUb6 dz{;ָe.wpC}? o [3lN>_K5#4eŪ#/J(AX; 8olYb-TsoDTFb JOz6S i|ݮeB(ӄ1b]px5ObTru'w+@[ݑ 3j乻qGcO<в1N{4\_a:2OOfoj}sփZ~~~*w<~EP]8Da9ў> sO\mdA*5{UwA3B^b~wPI]?TV\$$Nl8m]EQ8`k uÅ/&|-L)o\R.ރ(ꘉHhXe2^h&Yݵ9Ql=:q1@ Vb Y(5;<AM;bV j{KfD&'$4FȠ20y z ͅǪR^tobL6?4)NqLz}MsqI\O $2]5J.HAXFUeiЧ|x;. >Ξ7h;c*xei=<:f@Ö[9!L&${ Fնۀgn)=%hƢW;ֹU0l69MexJS *(L@5I'F{تRC8Uv)@hGe#ĕYӻs)㡸e=-k0Emm+%co*0Ru-x{5pO-9.ɌuI<4Ӵ: "3K`G* &T#v @XGm zJf.>0) Y9N/j,˭ 6fⷤBW1&ۼ+£eM`pc*Y~/'&4>Y84n 0w{ߞ<}gf`zhĉ&DX|/?w{_K\Dl av˒5,Ppg@!-;-BՒ!yC&7 e 0vq]mXߡjE o,|0>UY$vl*nR2,3$HPGwĩ{--:l:&Qv]J5z!.NB4m*Y <լeϝ(#AmH7 t 8XKr7Ubbe mp$S˷ /C} '1gSְߣ<w68u-_x= Hn-EwV"0aVkΤhdIT!0MVtw!xk3J _kwMOZOd`I +hLqA('+[ մ)&n8f}hR"_e-L9jˡ$DS) s>Nk;0Rk5QK[T 7;l#uvc5o#xu>N7 >5Q6X\KW@l7}Mg6ш5bdƞ--xI[5RhP rᎍhfҫo\ :Uo,dۿ) Jk,iA_Kt<O~!v.ʹWf?~ZP5%wAcA೮pZ$Zdy?~ Y? D͵@6̨ `Fzϲ#ܰK`Z?i. GwI֫lh&0n${ip>lրcܡȓ0cM#F>gZd[zFZ|@.z4rc:-g}byWj!@*kb*3($cۘ:k6 dx$Zb?ͫlen/{j'_u1ݷ_9~_A 0 Z3p v_ 5֒m",A(6a(l3Swo!c% ,Qؐwq V0vW%Jة)/30W\Blsv"E@]AIKk`+V2,Jy/\gx79^^Wǰy0IJ96 6Azoe%KX6ʂe@ Wۇo՟M|Q5uZ sc.p)k+N ts+>o`K <0`e+m iŎ/Z}_k|ix{YE̾ 'RaAImJ2yǍ }=hp i\P 1Iˉ ؙy$5dH[Lಋ6:Ɂ8+ckpIE)_ӤxR1O]GRDѸhbbO o-tQe :1T͇e z_ZC}Fj(!"17:N#+(k|*2$]q PoG*֚V_qy[ tc턴^&'̾A 3OlZƏ]š,;Z!-iT D&3$_׫JwꜚOtwqD,۰ m,pH}N&}o*c1:A>>Xq@zxKG6PMxGtWjWs_sswQT.g?o(^R\!eG8m!|;]GBDx75t$ni%L/4!BɎ#F<-tRlЗM`-C%8k4ߥ !of&⁺P˔IW|!=j Z)NrRiL @g0fPYhgKOBuH&`eF },Uo 5:"m̴-Zl՚74ATUw(N"S`04.D\:xL|cnXb Y9N @[ ]K=0 Wd2fݴk4Fԑس l`߳AךKe܊oJCsb7Lg!\dN09c l&>M,INn4T#HRǧjs䶻6xBhOT뫞r}asqE|?":r,ٸT:+_ u:౫3^5@ܻ_'_ͩ 2V;{E3"a׽8Mg<դ -T5} j%w67E{/GӘCgʦ6Ikaτe(cHZoH'.~d,_r}wӶ#&g H$TxXFl]ہdکGJd\Z|p$[TRks8w Z~3_UVK)7|Iv]c!j} '[hK5F+:q#+.xMm2VD#;z7&:.l4nUOXS. ѽLf8sBWd2h7Ohʓ;^ Cw{SZ$T n~R >zNt-CЄrSiH38h3b2&r}0p#eWa7!3 Ѳ.Vn,ػJkPRvpT;E +)ni7PqS)FDnwR[ɻۧE2-=@g)ͥίN< 9azpkHDC4h!G[9w 3$8rVmhe-dLf E9O[~;!Pc(NDt0m1(?xFS2-+@7`."Vst!rQ["MS 4T)FEE3ŌMw5;~ 4ݎl4Oޅ7Vbɀө|-kA(.rU lvס*aQ:YDW j^g%ɔ{=D*kƍ S;OV% ޫS)j+`jG${ӌiCA"v;wUL*A 丨ݐ†m5Q>z W\}6evz|7\SeY 1̏lc~6P;vX!'v` %awd9}jӟ.bW }*+5oMz:HV-h6]\~&!^dˢzI_&[xE7]$V_N QugTn 8% .n<_gٔ .pCJZƭzL.9ֈAV_Q'/8vE\*ÛGtuE/V&&b/i}!t&T@٪4Xq$KlH#U>rM2CjA̧Vf$h(owl9 qH:cĮnS#TZQ9h1QŎZˉ\8"?%?TfK[-y oXQ| ]8i-{P 0n>E_Ȳ(FW{zn\,LѦ dA줵Dmͥ*:# м;щ+Oɴ7Չ*ʧ}dǭYn|PrV' ۆGdVlM_u z%NR] N;\]?{ ۥ˜dЯ)g LKb;ZǸjѽ,R!3[b<)b|a*B廔4A:AH\0? ^ iYkޞ=iu츘vFݻiq!e}OMHnUEr[G׻10N%pUXHj11Qɯcǒa +VHx^~N=#dbh^)<7F%D׿r9N>͗-^U@cAp)k'ok˲ T'sQΨ:D8kR5(@ZAqH/LSkF_-33z(b zJe<\XQzr$ 3 ;~5vk8]l ?8Ci\:s.ŒN um[o#Ok%+~^,2W@jC fr#z G Ъs >bF%m #8c.1E^@o*6[(XwZ"’@"{`tzRU7;^a>zRWj "Sѩ\BXFx&:k΍l sg!6c/$cAFMWv4ڟ+=KE),#< ]`Nęjĝ*n_o0O CHm߾0@pH۪ZP y+-̻EŮ~ D ۆސ_-/ޞoT>C;25u)Or2Td?b{fwU(u/x5KT1}{OM, q|19-6$Ok*&Elع-gW2 M3'oO~Bu`ABDvf2QG9fbEĕi\\t.BAMNd]W. [6tR"תXB~FFg;ksIv2?ymY5W_sr8m4SV=k!{q3/z\w퍏af}drSPi8E58K5 Bԕ6'Ci),9n"uJ ?HW>[qwѤ~m*Ƴ= j5.!.)F񩴻N>gQKf=H-u9i$[5fxK=qU P7& 4@h1rNN˥r:ǯ535%@8 -AF5F0 EcoW:>Rѧyԟ4vq9b,EJ+o6ʱE^G5]fx?%F}myj~gČTw5U{(p$ƀ#ČV0!H{O{esZc2)Nm *s`e${} 8mN_r եmD%336-I ٜbǢʥ"C B6O:!%]3G|:^zTW>!2J85(0n\e93>tt^+Ƶ IPC$ShoJ=? 9 ,2OY]a cK䢥IҤ֨ ܝs6ד4ۑmx8m(IS~6AT" UQP#ȁKp+/S>jG](m⣉\YjՐXK8%sHtsǯsSj)o~OYs7M_ U3qF*Ө&|Co6Ne|f2I,9_Xa#KMYf2ݓARU1Or!/ˮűX= @ )fc=gb^_EtKmK+T3FRT]'>sIq~\^n$>?r|m>ra R)wYJ8 0myG%mk#h JjDkRW 1\5bW=q/8^H|ұ1qf_8 ,*)B_6YCEkmV܆ZP1 (mYp]a$&hW!hF:KN"=;G*{9|<u?<Yn~@ aPYߔE@Pxِy\@:]]cK#&Wu"|5?-fPbvx/뻎sx8&>% (iL\'0}`q.\[/Zbei!SjsM kkHg=U~v.zȝ$hhl3cWF|[1{}qØE$;3֑DFN3VZ7V?Xp9xi^2:4ҟ|\=6Do nmaoOU\ݒÃZ'& 4- 1ocpsOamnݼlG`ErnG+ZQD,BIEh͠^?~0A {pT^v9,q  ܆ E!U4`{[\B)RȂ)e"#Y$MZ؄mQ0zjI|:AoV0ä`kZN̘R`¿{ 8s):g(#HgC6$u0:Bd_f];]rxٖgg_;po_NT[:?hL4${ȳ@E]z4?0ޥ^ OG!z=eд Hʆmꃩ.UlQnLl* +Y̳֠(4`ߗF{q"jYIT'siܨ8H&e6^sWm,(~߬բNR",&L-si GESb~yЊ,̪_E`-q9&|PޟĂPab>6.v PH1\Bn#U+$[kxSl;vdwu'~GNlKsǪĥ}CiЋ[i }WaIRɎKAmp̹tq˛z$%jits;rw4㬇"{ׁhp^ /R S=1`%pt&y@H?ɬz5MZ1b2i//+xc(6'5+zg`pW=51K*ʍv`]YFpo0bq*Z#Pf_@h өhco#,H0NOj, d.pyC4aA5uS0bǖ vŲwR3h==bMIх[m^Y-Rg!Y% UF5yT :fGg~Pƣ\I?K[ TFLaAFlmS,ƈR7kN6|12@1l :)t/lB. PF,[EO.ڕۉc4` " u!Vo 5$dS:_}!}{{?1Ӈl>O+[V*;SEv ,V kpA˝*XM6[ }h+rP62h^.Qӽ@2z,8bfVWOsl9uنwLw#8Q[d *v<Fo$x 粃Dث{8׼L)p"^>ri: ŤY}ɞb@s8rՂ͸XOp%J 2{*OS)ź|!Oh ^8HHhN%7&3X/%Jՙ6ѨVb=^?p1gU,l% Q{LOjE R.*~+`4~#x-OHlЛ3?yP3Dr?B2j'i<+b`>m؂3OCB2Pu#q ua]б&e-CEk y!B"u0hRM-s8r9ɟZ=GX5pEmk_vNvVt芎dJGֲK~T<}YP4;8I ؆UW=o&#ln2 ̾R©SYA>1zbYbl!ŃgW]o(!eC D@v .=Wv#ekpyJOsbY*eU7U,3+Ϳ"kHÄ6Kbp5.ǹ kKkv < )IVyYTU8* jM I tz}cnюorۙ%`"̘qUϧq93hrTh_] H.S\o|YGdkx'fo4RxAj>MLS@EmO'MҪQ e9; ;uxLWqdv%)C0fWSNmE|P#]i\Vb8~z">":_i ]b-ݏjFu6Q _߷i9o-Y k馀SyRHy9QBFQ94 Y" E,8ɣd3 5ch {l+nX?~#]g'Cb:G^ReOi+MтO-iK*v؊?!J,m70tdB+_W#(q@0ݱH)Y2UKYՅwoG7PT)%n::,7պ *殮&XdD=dC={Msæd %[I[S5Ϛ8KZV }Fr,3:0\hc]xб T3ӄ#(Oׯ1t_^%n0;Pi=K{!cڤ=bs@Œd #; |-ikmPNc,$ɳ5N;&fRoN2뇗F\8deϮi+bFTlKE <1q.CW V1x%ugգoWO? Hr؅i~`F|Z0GI&Ko1o*6SO~7§?/^PKq\3ɛ-QJ{,4\cUVRܠ)'JZ[⹋r#:Kt)8(µ;(BD|޷JRV5jW,^Ogֻӕ"ý!G +`l:G= 3/(sSL1Be 3>UmʣJ&uDyZ~[DeNAafL}uv+rmί]q) nTK7-%0!ζ5v4M5j Zf P-ђ6$ ? ހ$$P{#M f'M)e^lS,'TC1p TO9! .b/CZ@9cTLF)C^5B%MT22 }}UiKsLRݹX 3+-,Z7pxwZ!,0Ki BuӍ(XM@q3ܟ e TNG;VdcۼzhyckYs}ۧ雐( ȓ} $k|w-@i%AaiЈ d3Q=.WFtlu`땖8Z1&Q]He[E9j܎|fÊ/aE' F4/ ^l.GE|$arw[xbLVg`'5 7{:f-ؽN𞓀9:HYi&ua Un p;NPHw_&x5.%O͖tc qF76w/ {aWEƊyulc$m5 ^6hS 'foWGy;0>pnxHm>C\%%z#^_PѼYETH j ŷ2b Q~X"tcA:TBૐ!ZJcM я>o}dm╃ ,Hr<~fhGnYtQW+FmC[dTTE֦dtz#vw1g? ņBK-@Q~j)d;>k{9PqIk[3?:m,so t".N64*$ۓabH -/%%k z-rZ&J܁C3T_X웞 eaO wes#!~s3&,]p:hQPZ5N!>^1bhI/Dzе\['(krŋ&{)v}K:z&dmF$= F5/t3=u}~"MƆbvhKFkک*h;AgƉ =u4 bR`*YG[AlLO 0ۋ=T"x?[y $%,b j ʧE@=a$}-y% s%#aW,O9YCg3"# vb.avNG 9 بu+}"8#_Cwk]Pd&dRǴŽsMn*DtOqY7hd*Xa8`+u&; E At^>QH<5';KRp0vo!ˏvaּ+Z,nqUw)iQ; eM1;~GP姧nwJBoA)4bz*DvM͈ ]ƇC6^[9z7VeD$c7)'TsCp{``G"hOiT_3†yMbL\EdZc4Fz-0Z{wV]z#clURŸ .w2F^+)16>s{7TO=,Q!󒹌@? SWP}LU1'Ytmcp.AJ|_c3\JiVC&4ZĹj<B 6v%qoQJP=wjQޏ4\/IKW%tt zc, ):.Ju9ѻBf { a'~:@ԉ :o0 ]9 =@l0RHҀm1b {Z<%HM{Aowcm  X^Sd^Gh rpuٖd6摱x$9*!Ʋu4kn֛w?i0/NEr&ZɎYI-w،Lj&RlVOs["Y_W3`Rq suG8Q6MtyE&Dع]/pl,TX"tq Ӄf~ZM.x+/~#Aؽ Z){Rs>k7zU!_[#9Z;Ĺ1k.פS0 1hODofppԷaɮVҫrUB`:Ƕ*GV&Y%otI2(rx)*2&#ؔ9 e~„Kj+1$fwt/->"B4,O{iAe bg;N&SOATTx3X<9jr2P`Eep*a d+#9O>^%WCЊ@wcLQ VY|+M01&)^J;`vlMЯC/.:!&r5CT;#+iڱ$WRqW^+wU:2Ή6yYV}Ե*r<̏T8!92>sv&^qCyFE!cQݲn*DCj?B=Mx~\,_2Z( MyrYt_,@df\^>糂V%̽HC檧W+SA-dl ES+epMe2)?pbr|I(L}{:})7g {gXIEK#+SP HJ AaV|Qa@k^kc-鬵n4Xu19)F}prgi`2󒺹ees 1bD%gNoh."G6FŜaJɞjozw,.r˾(8rGx|glއTI"z2T]MX99_Js~E 'p֌͇J*\1ߪ( UtPtb|ďH_yãE[7K5|w*Ƕ pW~i?;n4oY' Pvє{=I] -ݞWv,5 p/+@7@B=P}GB%| eOfzL' FecE&\+7dE~26F!:6>I^*S1Ow3VHUD# .ʈƒM@ͬeI'̳-Zo{~'7lhMmW(cEq5zD!qQvVnKa0 :%Z>1ͩPlj<_]TvIP=\]oBX͖z0"ځ+BԫL=k|/hAQ܊a2p? ZF Xevǻ"G s".@"[9&S|s(6u*p Cn_hsQFT̋4Npdce԰o$%0%)?*doHj9-!Ӎi⏜o\|>5Tr#Yt%T>܍GuFسà]ʛ$/)EL'/NHm|e{zoz|&+ן\&δ"fuy6TM-;19z(B8$hs6 =sǠ_fgzuf3+?[=%Kő"c@MNc: %J^g =ņ7I5[" ĵ-ƩynF3#6^E o(ҖLcA HF ;usV % ൭z^ƚ,q9퀻]WSweKE,"{ ꗘL4nU1bDaEǙa$jJ(^)Apը"̙<Z>Ftj_n%O]crwj9]AKW BQ%?`6@1s"M૯as̕}TXG_` `D;b)2 7< t"54Ѣ8Dg(*־XdNծ=΋V Rc{a8hƝlh):le7F7nC\)}L }r.3%ډatj~֯hCP4~ UigKܴ`|afCx\DkߠwMkd;|S/ߡccT0ĉ! R `=O#:/.j}yHTIB,Z'C6̱Z} [کT-bO3WsgP**Qn{ Ea|NRYqyгԙ$'!ִ\= Cك0`a h`:X֠=p$9C{ƚdcL!^'K } P>u5iTB>PT'q\5 n1ro~KVB+Dp*9~la 4go{dr#5()DPE,@eWV k'ts"-s+UK&T_16f7QzΌ'ix,p-KE A 4h$zQ(H-҄]ǶE\r [% +j5tA6qnBt6H Ui8;Q*RHSnܙ);Ԋ!tpҏDG|u1t0*"8o*{bQ FbD\jAoX0P;S(3;\):-dꣁL?4%z@;~+}]WW9 Hmcj竾O%Arm)=A`(+_"m f:#%y٠g6NJLX>; Ӭw5IϱY3P6Lfl7,c>9}@LC@>&K)*0Ι4&_zgj?Ouovo$xI>*ݙ=y C a)q6_#؅jqŘz7 rHeP7 M (K&H)8ҕ3օOO$<Ry'<p;;d-f{Y  /O#XDbK~bԉЄzЧ.{SܜWaNu?3Q?j]ĵRKb^9{ ]nk&j~/J\{bW=+V:YTQ(zp .n= db¦905Ue]f߄'M4ADq݁;9-q(]\'/s,\$ma˪U4ny`d@yAљ{Kiu! Y2M2 ^Jby;'D ^m(׿o(|z^OY;8**@4VaG E?|=|✢a;H6PAao'k:hg_a(V(n֧t3@Ml**L4dӾ9i*[cE0]C:n**6"_{ v~F3Zj&uH[ʜ$̡9xac V5j6~l`-Be{~Yo`]`KCz_dM=<;dNӁ%٦ZeP}C ml Qu#Ƣi@H&s]U6:'M%M!1%q@2}My/8fI(dtc"iԱDbtNn2}3S4}Y8X]fGyьCK x j.]02*ܳƇdF̚vz]Mi?a/*ډi=dgs^2_UAr/㢠T6m~\ͅaHx*R)t!IvUX^- TCtZBj#TO*rTMb,cā"ꦒM:EQKGA\r}|ql0[(fk}aMzE9vQSpd CbO5BN+nA830*7\~nh_J*O'VNlA2ӣ_uNqg-ka-«C@Ix݂RϱpIQp/BZX} .6>H< Fr5b#ËMs\u0z%=T5mR'rAPj) \ ~lay%=RoǓS\`.N.t4{KE"vMt8ba槞B+(dPSAF1~Lϓ(wa>Ҋ5 Tn1d8,xqޖv_#mBn/|l O*L9U!wW!A0e9.x As> 1$Xvj]h7.}ԟv@$̗-V4[&@x9G C_?,-]8-a9:kD+d^;ɼV iF [H%''@6@YW0Y\,q)F)mU ?qY)>!ovմҟYp$RTƱG M9tR :53c%HΌk[$Ϝv;ǟhtON0v,9g|x+]0L5 x*VxęZ"TN4GF y`Cf O=.4 c&Ŀ%A ֺ6)zظp* ܺaudؽ9'mI5ORz3/Ղ>o{7.#ᐽm -딻'm{tqЄm xy)5J7RNx" Q;Xy'Ul"R) fyRx'F)+\v^ㅐr̮Fp ,#Nnm~hM&<8776WӸ-,xvq[8Ύ875A?G/yaD%A^JIcP Q_&ʏF M8ҕGoez 6sFK繫^ 罺gjLq; Bw_N_Qc`|-fيƪZ6G9U G~Ϝ{-PAr!fb`ճ*EP)U#G(ۚwϴeǢ0Ҿ9;g <-m?j<82ME `Ng:csqG\#<xϔ8'n7eߺɕ6w`ӡ~U&3>Ay(27%7YֵʅSF*?cɆݵ{Jз!{9+5ewmUg=;iȴdXQ"!NGt,&H_˦kN܁{5,MarrR}C*R]Wuy+>SbONEA?̇Fw%~)JxaqCf }`k W2uh)t#i=4ڸU]2M7wOg1R&d IXYL#yڏhI-tEͣW&z9Zۗ/fo+M287?"3PpniPli2 o-4:[We*!E1aj.l% 2 |8;\q@l6ƄÍ(A RʞqD&בS.8wBDvj!+0v&D_٘MSLn#,V!Tka]\|HD*<,DD-#p;T>&P\1h/$:E=r> 3D"A:= b(Ou5Tê4ګ_ qh:BGȥĿG^=Q]۹^6ᛂ?lKjӣ| VS: \w7!`;x-4 O%%MVcB[B'2x>C:xJ0é"([)DC[iUy9ǗWg&k7GФ7D0TcZdL¿X8LNwjftCմXj*Wzyz ݫI`Dr @cFmV'@zVwf")-;1Y6g~*F~.OCqzrnuGDkJѽY\/ؾ}_i0Yyˌyr{l[Eɱ  d Z (cc+PM֎n/]CyVMW"@;U( e==%H%z3?uΊF - &֑ XɧCa25(lCae('>u[ew&We]sDj) FL҉MWYn1ԕ9he۲;4qEp.rsO(B9 cQ# 3)>q)唓Iuֆ>UjRR4zö)JBsQOʹ|'$frl%pcyg|<8UImI>Ɲםy3qwVu'g#{~Zpv3QJZg"LOwPn#(}Wڜ!`~WDЦa2mmg5R{}.nO-EhXTEN7P豳kiw261n6|S " dN׏AOnFB ׂ̠geIU:)Wo2\g"UlQp72߈1paߧ> QJOkLs<F$}Sa8]jU*w%(B}Sl01EcUlڒ~B =@9UIDžtHָuaW2=Av(r9,-\DLl]a|-X=XK&k 09cy9}v{:f*<;cc9&%X$&qބ0ڡzTH@ɻ[dym7j216T ?}`ؙx{O8a'3%89 b o6RR:]{?D&;רxyHm.5 %ӬA>ܱ?HV&[!}6ZF=W,Ov #x@!zKT\L 1-Ա(;O{g=Ė(UsG gR*&B/LvpB#Iu|oխ(j6'/C3Srֺ5ָ!'=L ̳"z@.dt7~o=ݏOGϰ4ېjRiAه(!LÈšPH˸Y(xt&A t!@S&? ,3b|n`]fѯ5 zP.GTNUǥCKHj/Zl2 Ekɻf @'́H=l+]IEfN(El"J CvZ~&ȷ2)u!q"7)2@³\TnMU$z.5;|Fs l%n 2iTp>"YxghOpp`{ٟiCuB>8 BPRb j3Sk­S\N@46xYpO~)yg O'- tz0M5-_/EEV]&=:%xG-9h|U>B;jիG`> Lz 0öai2)RС~Ka `_WQL]Gפ'鋼>YK}2P>ts{\ls٣o_|{jR33L0}тgdeu7d O$&s@ldeAB.3N 4t,PSiTˉQ`'X߽rIҩakt:qAdHO厸:כ91 9fyStPN2 oI)w88sU8b#&wڷӄ@/iO˨Jq|P2T}Y}yr]":74q7_e;#kRo:L:Fri+,r -E7kFt$AO_mLd!ڠfKjAKx*8ޙq1F<Ĕ_U!֒ õo) +.oBs''>]S/F/UJC_`6ӎcQte *+F!M\B?7o5A&v;OQ*A筳By=w Db,Jfr5@?h{Ht-% 遖qs:~dM^+^wRlF6{حh:9o;7obp)q>za137HYGXm| "'Ev.Lyqk.N]82p|~cF V&ݑWXD❝'qK{"aSH,m)6m|KI{))sO3k! Qd4EPS^1cJ)/iƐ)cU(Q8ݮLbry~.M?#U -ZDDWC(sz.5X r㘛X"3Pc@.ǂ]'ArD{#0,rK eXʫ~c;7!xĒ)A5 ʫjXrk00p%癰Ϳ D>j>1SwTaS)y֣dYpIOtD?hJ7Mn1MB%tFLa |-xe0H>Ѡ0CbL-éL~|3Q,`X*ca!n+QZΛ+ C"`'Ɛ4vꜧ"Q72ZM` ";NS 99$Cvj3?-I0F"Q!d~t6G]^ szo'cxqL6zlXߴG*k.[C揫4tZE˞k&ޭ1c#<ڣ(J387bxhw{p?H0.仑x&7e&C X8|O1tKܥAbv_xr=y?d%Fb_&䥔 0ݬҭb@z)]d9RZ$n$YvB {1hCNT$y m@*ŸNhftw6WQh+I{, Avԩ\ա!FQLLKV"~c5G0xÇeLɟn aOiK̒$aQJTęcf ` p5v֓:Q| ZFo[[~YF0r=` 1:FL/Y.~bt~!kʔ=#:͔Dcyũ{`vh]zKUVq'k5*;>-]s^ xP~}6ѫ]Vxp4ocOu6 0& rRA'O{o;qB MT;KݎY'\z+4,ʣPx9rWIw¡xZxx"4rp1o gC[ۨ-KY͙3tzV7w;D禁M-փDGoz` xhV@{~||}+Q+g-AF5$i2u{ f娴TstXw.MM>] ! 2Ȳܢͧp9 F]~%Ch9lց\(brM le4uW9]vMڿ20U p-ClE_ w"aNKa!~%wg||U"PfY pQ.ôر'ʚz4+bd7Wb4fO:Mӟ0=Wbr;띫lo' @lD}5x/B8|0/N9bYY uGv4PjuI^ad0+L&]pytc k*rѡќU~}/6k X:Fw X˯B=a^0@OErE:Fٺ5V!3yfBңuR\KQI<\'/=ADY/]h{('~ '?{$kZF vE/H㵣9]Յ>[Aȓ T48f UIEQ'Yp-)(KׂgT.w.Vj#l8WZ\*Mƣˠ$ʃ#kBE&Z b'2G8\t Ԛp|R6^] \sB㼚Ta3T&`Fjr'Y8AYHG|{l:4@z2 UHudTn&'U[4‘a_E=; f5b#J#qw7hXVĚnpaPsgJz۪fZ/zlD #PM'~EmQGÿ V͋Ս sbA)Bψo6bMyQigMقu-iZZEyXڤMO SһFd[Vc( l"џL\.y(*A* 0<1@-a /1q}^+0;U $bp@+P)4vϔ JJ؜1P/;=N߸Rzԅ7^-OKo`gk^.WB;ǁ}{)(drrP-Gn7]"W6~4{a85`r3V̰C5'6K(߿1iXDi?EWX]N(Y<I߾oߕZHg9LlΌm b-\ili#Y; ~7 Jk5cL2T,j>`8iwZKď'II`Jb? 5*=KSa YR(pL_c\{3QRSϖEƭ Ph)+&PB(*;][zuO81pwXʥs4YvUl! n6 B0$˰4iU}/ثXfK &0wM<>DB}E B!KP(?skMaEXrg{7'4TxObEiqr-K (>H\E;\?wX灶eVh&rzBaf;K- JhL l 2C'[֏1 ba+ދ+mclu@o,jbo93dcM er&ENiܶFhɆ`CƘTJXm'YIWBq>L"O^On]<zR+!ȌPS-cg)]uLijW/(d)diէV1|+Guz.7D OzͿڡ%JTTFqrs#R70:q@ e.&1I 2"1? /wQr#/dZLWʟH:7x[@,uiY]kodKpEn 8w ظ臾\s w+ǘXZ_C2(Ǻ@62hlY;xZ5-.Fl6P{.>dÁugBT2ĚV W?ul_9¯pKx8RX[ң`(bF2r^\4R׫?LnDb>[4(!CF(Qlu~1+tda^[[HC"I&5vn*0K%nG H;b[aU# %U]Iu5_R@A`evBf )e`Wo H Xqߡ‡*͂e笵YJIk> Ube|lu6.jg.֥Q?Tw2+e(:)hΎ–GwDBek?(+I0Z0Qb7]gA%ZH ~H="ė_ uwA~[.Hx'>>C߻\Cl5ywXlN[ f_z"D5HL4>C]ϮuB Ż3 ֿ!FJ'5o?s#%Gƀyr[ZՁrF]%;ӽ-DO n N0Ie-N9o6Dɵ/?Q dþ߿DAv,( [rH1NYjw'E&RAiHDi#|S~c8*7;85u\U27X&;|OBQ|օ<,BQů8OªߘˆmV'YeGׇpȌ欇C6 `%vҵ%,'ʣA#>zhExe@46 Fj‚ҿXz,͛j(5 X7J3uS(@(bSy3|Yr)??`P&Y Dl%[?5xQڰ9 4NHAj~\\Pޘ v -xf m8\ґi>-'J` @):j^MgEaD_E}kQ1t$޲wd)M_ls<ddLݟXeС; -4 ۰p^qPxVD *O&e^"O\(ˈtB3_@ZaDvQt^@8!+.ƱSf?n+"q;!'P%›3$7Zқ(`Fq{)E|4ZuÎc^ d-DYɧb&N $fAp6(C7-6NԹzk\##qER-8(dLj-i2RcfdeA5OlXAo1/Ptu"=_sg7 >"~ ? IH;fKUJ\}\"wCgQ1@|TxYOzQLo'TS}1Jmg,4~s4ԜXM!,kD} ^{ ?G^aFb޻G}Ԃe8*{ ZD$;w-i>6t]:@MVӻyDnttEfZECA%ĴU 9g#e<H9$a l>e73UЯqp9w3,"s.SzΠd`b)3%E`#NZ@\le6#n`g4ojd{ Wf}eODLJB`nx1^MQ-j&+SkvPԌ/|ٵ@ZfZ})]S%2 +s⾹s+x#;+_OD5<_>bGe7Ri#;NoKKpl U'Gi$V)ȧddCxx#"1lD$M1Tk`6nIIbͮE aF]AAp_ <ϾT{f4dubJGE >)Zpar/Xx'eG. O^pT^CuO3+PNՍ&fM}ھmDUtFgvU=JPKQ(>ѻܰ@ xn6U^lb9؆t v+sMQΆP38Tc\\)=;Y v?iSsf~r_*NħUQzsU;Mb雞l`BHj1{ #]ҟaD/DHka(T}G7[5/a7}\/҂dK} ^u bQYLE ʊD;.A|nxp4CV%'Ъƒ˾w"O~Ȣ^܎u% MBx4x2xXQr.[PtsuqlgmIbbkK}hHT$wvWEћtP\cWI1UQ&SxĹQl$R)xF/: <0kijYV'QWFtxs轞98fJsX:䟍a|b"'/@߷z|| T}R< u}H$Y[.*x]EUMnnzKG[hn=EA(XUr᧼؃:.s !\+퟾bG &{WA0md+(HwЎ>*-mU]l_LL dTlJ0N6u&z&&05Sp#D' Cot%=`M& B[?ґt 9 [L&͕5[է@y1};4 Tx(56h_Q weyL֏ `K@[4}UrOa2l֎ڳ9k0H_¤_#u^[ęc 䍘c2, TJ@ÐI#8o5r*4s\`V^]|y~Ϣ*ĠH?m 7ttXg8"c$`칹 W~Cy,y3l ꎷ[e0?dHz妬\zqBb53q*˂Pb85NWzT VP%O+bnzGh=b1!d«D*.Pb(WU:vt"-'8Mj&)އ=r65Z(9cmR,:X7~/B4p4AKFὢV$o2H,Mue{ˁ_ ~d%O'%A<$uI?I6e4Y?;8&wlG7r&#K|m}4Dn ޛ.ItsΤ6M,HVs)E m٣r./#EM"h3$"p]} ~~g#M#%SC a|Jc] bSAϖIdIBdOG9dHKZې:Ept[ۀqT/lfNx[l*`1L 8#.E>.Ns'Rmk^!)`>rWч T)Z2xcbߠA /0J(!\1Rqr=&IhHJkp2߷[ǣ>`4ݔ2l~Lِ1H{M\00"=҃1;[#hX.WGɒ3U藲CqR7eCL"}#?oC<"'֏B.>Q~p,fv6`+ aQ̵hN~p 9 +}[V)vFiN&6k6:K͠Snﷇl%-HBS"~kMg*rxЩM:P؎7 zeS&D]̱ JZLR,`$! x  g`pd?tF:a^]EtV+ud;ֿ+ctƩmxRAL[x@#!(V5g"f{n/enNK#%FewJ32_)N{;'uv)W-'LGɈӯ|ݔVG<8dV&`O, AX%F}^DS™A3vx8dLOS]ec2SZ`eIK$)+#iʤ.oMճdJWYx/B+b(%\Ϟ/>Nw LZ~毢7p@d m(!MŦ Q}aH7s#f[KSD_20S^Vbh{"QP8Sd'[ ryI՚z$ìPY4XE0AcDybYy ՅQ зO;Y's n7- :#$lapC&ukwKI Q5݁LLR_ U7 d?*|`x2҂ ,HՄco鋇@E Y; =;tIM/I ZP`!|}1y5yܖVE D!&tGIrwQ4r]V^JYR0fE+)s[`Ӎ %zނ1{3_9|^A{O<?B: QuWo܆qjpJGzVVWM0z,Ȓ" FGk!(\ږĘا 2Il@Sa@Bz zd},Y.?ÆZ~u>e7$zoȝo'^19 N^4Wus0J |ޯ&?fkS0HJ9F=a,ʃPɨmQL \Z52[L/s^WVH s VD'ȓⴄT/\v&Tf}'-^k7s7Z!3bt;zKsȍ"n(˗tO@6P4 ]K.bFD`õOTÕas E}B :h/ʴҩ ҏUyS ʁ*QEeg}-lʳk9Hs4j눽Ӊ>8KMSUD%<U'ϓv0,hM.szC%V6'ƛAmS*Y_^IxKSFb:z 6,,Kn>9`|)cò5Áin/ۑDTd>2uյ"#T@nJ3ɺ+H>/I" 瑮jQBt}EҍԆHMkN*ifT\6DnɆȗO}Th> hn}6dθ1jpD%{ Ð߃~=SwD+l[zB$آ:&D*f~.e,FCu+T=` V>Y:`g5^6wZ0Aֱz +`sYWy?7})dT>HN4͍ÔwaqiE>5`ޤAfC>=d_|9JÚ[cO܈zH!'WpY[ ZpӮ 䶤v A uQB^s=ay703\zԠJkzOLSbŭ|}N> tx湥Dvfx<޶N?–f1#ţm.P~'Y:}p nLS>3;c<>)̃Kq&i)rS1pzu?i!]\\]~=_"{31@6VNBx`dWm+2 j"Y7;6@vkغž\otp?ZLOsԄ 8_ܦ0S|w֟T%d\ev^17CoKoAL ~;!/-o{lj~KWs{wJ- o J9@iD4 Rܯ%@>Pc{c\VO,uDg:[_1MqMwj[dCjeY67FJ> 2CiJ:Γt*85sjia xTPE`pcDxWN `h7[moyo.LKsEldV:dz  2&Y#[SJUnw MZ7l#=QGWW\$7gH%$D(nvos2Ba@Ѧ 来;mhJΐ9ak-%̿V#eUUж 6&a(>_$+Y9]Z* M`b(JFVF?$֘vӞUTL2nif Owt8hnΦq,aC [:ވ7}j΍#).tSo .t@N3(]R2"cB%FPdUNUȅ~E&[dAfP1Ʊ<Ĵ,^&<]0">Lפ(V-0HAq} Մ8\/.5b[9Cw/__eN#PMS6ͩ wO&B++m1фOH^Op0Ǔ9 8D;UuR~Wxr8ܴ(a>YQ;e*׃xm̮eQ&jwϷ(h~@lHJ~=lvo0IXZfhx8n~zaHCYMɯlQ~T-(؆ikRK4G:{CɢEMĐZG+֏ A~=CXN*v.^ycj8&xix0Y&8D(WozĜ%a2Y,lc[ii=J9ڙGU Y6zkV3ƶt `hK.N6G/߇*Pw #Odm鎸ə$zKKqS`lAd 9}*B̢V0#P4 6\cL)F)Њo^T[[UUˏS?Z4]Wl??í )GgT4kTxXP)fEs?['$Q6c zM,7)D:k4Ek롘BJ 7sx*oksHk]b]Хj=Sj$Mqw/sVFBc0,8__K)X UH cg,'ظ6|/1^Zoԯ™"H] H ؗaULJz$ `gQp?5a_Zַ;G M$u9mV.Y0;ޝR?[gqY0,ze{ab1E>L|-@*bd9^g!jfQdmD!ﲾz:^:J&Ύ &NJA=܃I"0?$0`o‹ݣq"O_Q P9~mN;ZNDEedlݟs̸veG>E"HmfbAR+3]oSaUB (HyI/-* =PsؖՏWH* EKR(J~u= {W^-u`iǿǀypUъyB|< xAv!՟ cxL] ZWyU+r'ZC$*}Ѳ\{gt?@l.'y je0UÜ0zF:ݔ " kq{ K??K'ξJW8~LXvړ"Hn!GYxE.ϧ=ZO@礸]+E6|\…F3Q"ojֆ\>֞ p":ca#أUMWjCys>tCH5^}yiF51@' %K2}7kA,_O+h| AP%yf)FCg鶋C^'N4Ĕ{rAe#QvZ}:-wz wX~, *e޾6x^<$/]ck߾\/I:@e]'qyB͍!_*~NP@&ig?o[Ųv;?҇+XOyc/V J饧1%MmO./Y -;,W(L> |Uu&K'Ye1.^0]%*6/hzd,g0\fgXIn9SfRK|I ѯzxǝQ-jJA&cޗ Đ$YƌeB&SuèDpg8x߼눶e Xda0ѥaASzAmߗ[ŀ3;c'lX u},epzYZhp plhӢ;Z6>^Q7X]i"fH%ۋs3xkMXֹ'0)'y)X;p ϾtA2yhjq R\H›GVd⦅B~`Gِ_8HfqG XLX{A\ua%ʑLmyFP+nܤ6};2pϢ+Bgm容==vJ9zu)PVh.?m3IFT,^/jH%M&z`ELV&lFԭ:,liK|$cQ+3@HsT6'=He睇b͸mKR7Z])=}ZK(ڦHA_%L S;M JEƉ+9S{-CĶn-{)T[rZmyb.]Fc7b˭]39g4@L9jcau,@&DX2U.0D*xc 4F8닛Cv}Or{Rg(1{ !pZri~"FzTzr2V/Ě8k)VuJˊh ߕVھJ0~9L=IFYg*{4b]E( %rfH.\_678 vxx~Pߡ #^RI"#,6H*8/"%4> N 3 ',P=KsvwcI\t*rR5ᙀ@1ygTַ&\2 1:Ob݋S^9H>[kJF?'c@Dr]K,n܌F )@X:ڗHmT2d2_hL"% Fl_=kc7dKkf6+$f%`'͹c ߸I (,w N6: q@嶳6Pid0&pDhgv!e1F! 5R_h,k²Lf̼ikr<+jU|ܣ&" Ǝ`")X)tmV}J(##CDKZ{{aPd_ X͘}7'`?c:ܲ52'^*LSS%7tIo#O[p:|F3O0n)9,]=RLP,GZ0yqI}L@ؠ*/Ki2m}1]ۓdFU@&0v- Rj`R{C6.dV"p(dRC\_K412aȏ/Mej78G|~@؍p 05zirKhDf#:cܥ/jqׂ|y_ۜ8]<W-~]4ľtZmܒ E!ɞR,/SA[MŠ[mJx④m9wAʗ4ٓZE{p3.p[^\-Wg$=)8efˆ4W]# \H(^E{2" RAl/u Oɹ{L*R65&etu*6wT8wn' /h+D=ZEM+I}l0%N R/=I@]aE7npn 1RFC,d[i2΢}a,'8D20 }u|bڎ҇/ҕ݂cdpr•h ?AZhٓ.k35Z]z=gQdAMr'/T io&.-EOI(maR:D*qۑAKso$hR(>!vv3ܠ6CZ)lcsvgSlݸ{Ge9Jҁ4X9d_} j&yyсPvXQ#jxqԉRo" A3UV%3Jߐf_OnЀsJ\ڌSm׮T[9.ۼ-|y}XjdړzvvSÛ>j0g'p[o=9>2~Q%u0ѩ!I,IウLuӁ0-tv;]( X?nk v~ g ӀZ5.d_sa@3"Q]FL˜7&u:4B 0l]c+79}Fa' qfE!vZ8LMTDd \iSx{5$4?=y37u ?_'0} sJJx*ueRm qe=$o(Pիc)I@`DDJ;Fb ]M80?N?(u]/dܪ7CGd$6<3%2)p6Sn}90hyL4ڌ4NMMΚAQ`Q5n/OR"pzx'~@׾&Wj%ٌ}^Riw.Ơ,}ŷPulLw5c2ô{: r >w+VBEHi:-|(ǖO\,8fj. ܴt(n뙀P/#asB/9TY(۞zb58ZJv6wεr"1$(jm?yDim3vts #j/~Ȯ{Pk@X$c(FG%-eWzJ2яb?Ĝrmoj}P e[gN2B#./}{WR3 >7teRNpuaZ lKv.\JY,QijP=k\/a0cq5V v֎a6o6jd|SQ#6'xVm0RK)kuĹ{q$G#K _%9SxaJ9Ŗsg߰Pcٛ鐁q uz/ӛ)@~PyC e>gVB ;_KPB:3[Xgίu ,R[[@JENuf.)?~B(%MS+wz !n Qi3$#DJcehB[9…#-$ur]/Hlg aUQwD @glU{n(9IL굺#>5ڐ:`[Q(taLڂojŒTj(ݬ.Y֕XVM5}A{^@O9~9l>miKvDo6* ^0) (%CN֋A ~qJ g+4Mmtf7^ ]ȮVBq+gQ а&E1!F}v ~ޒt_CqnJqe ?A p#aoķ$/Cf&[RܲR7M%XPT$Z(E*'Q#so[xݷMM3 H1&SAdN*xu=NcM=@ V䶬g`]ރM]DKuC;v]! d:L jґށ߸ q1/w9 ODX|MƄ(g| F#WlH.ʞ V*qл|3ɣN 9PmgT ьQC{\޽Shь-/נy ~FPJWreɈ;,y`ԭvЭP >hɈԝ'uN) `d&$^v`WZR7M4I@RJn~dbjH:0,||lC-vG"px)oNMW/K6*鏙z Om}&E4мy++^^i [)@3G9YXsbw0B]k_֋OUTNS턖k-7pG ~{ 1?`N(] U A@A;oh%}.C۷mP-ãvSMcXL2x3o[E>[G[ĶBV!7(F%Q@"U,_3Smb8أt\/ΩU<0'-4q-7@ufY91a$-;C{Ʀ CͪxgË?O @/H&MF/TZbZTc*;.FnfO4#,{(:#,5OPN1u3@v;w!v-!_ȼK~P#~p|YeЂGUŶ(c qn*E!$cMxz|ƥ{UoRK}+u$$C3>Wh(Y`MG)N 6"E|@.bR6φg/I%`gҠ|LFPLM^q^ Y|s%>p~7q1l E[1f0=9Q({(aɟhkXC]H14Qd~;|BuzeC3p$B>(#F`3oscae_$4Hx7<nT{U{eiE^i[+]b%7ŋ'hV`.~ Q*SӪb hU]'gQϮY7 z&%DYYDjH#ﱐ /~vuɐ cFQf &@OEd` 6/ ;gy81U\[;UnSC͡}#i6³%}Wq9M=S*E6KC (U"%iu}Jgcz c3+Rx:'=VWP`1NL2-kSmNlDIΓ Z`uLss- xV2keneL]Z/Ck"Cv_╡-&U玛mIfUDhc ?+xlfu- ډ{h ]5ȊsH\5\.#g.Kp G8܁Y/FI <iOJ(ߌd+n A)jMmTlZ7\J |SȀ '2< $a^"(]Q A1 :Bbð+Мd*i1r<(yk_`Y"HX"{JUd_6{M$L5틊 D=cꞼ-)I7 1OZ=Z$h5L#L *\xlѸboW8SolWPj06dl2M@8z*mM"XW/q; N6ѵ&6ʉS~L$3uذjm,ڡ +}Xk禅ASm؏RYvبo4 3@"衹tecY-'_VT~Q^oVMV5q[x[Wf:plǶ_Vqרy[+5OmG]8([.hs%G,>3GRȸ$|"jT~oeIjMx8.4xuMh"b[z]Ǒ2b)i-dQg{u_'RhlXY{$ uYCSϘ.t#GCs6̳JXbza4L lSB:?Â#vDHQiw5v1Vâ@~R6qT`i%>Ʒ\_\K0NUnx!jww{ɵ{Y|gn$_EI$WwH23L6t'DNy"zJ^O:%o@[$Qn:}ԁn4[*ǣ[?^K̨L,`HCLR븗J>* p=4ZFi!ﵬywBBY x/WIs"F=݅|qsjj!nKϬÿf+%ynl&(5|L |eOЂn9q[aZ)_8&-O?ܪA妅`wsV琒H_f$?A}ks*x|!tVXÃjS*W15i̇J\/W rwqUq0vQh] e%">HQbEi}+n@2K/AvY\x꘢ \s݊ܮ ~QF̛Br(#KVuxi^49Ig3q=!F]2?nqz*atrE*[šl47R7VH\mߴRC1l BvaNkl׫ykI_ _ ^ZLs>8yE h<8-s|mN8lATϠq;"c%Q Or[tҤC 5;|!&ayvgh\7[mwDp3QxQ C5QHu/i2$Pz{8mKjqsz_(wʎ6]'uDFf-][kME|Q>i`-"3z[1*1k?__<_*^bgF'ws|2#;pnAhd:NM#W72*is&Xeڭ;@jWѮwY^X+6&O&wW/a_~Bp@-em JmP^{X*b+8K/HI0No?;A$%(+ebб[Jy. Vh$@zu]!_E:ǐ(xld_pŽ`DlfRfr;5Đ怟/pRwh `MsWLCB^=ߤD=嵐jj b?>}!9>VS%[\@,eyZM*b}K&x` 9]o<8ɢ>YY9|}WBBZ!#:FJ?Ċ 0p(R?)$xpЇe>y*")Ex{M UT2rN]/f87KZG\`CtES"U+?U0|;MaOaGw /0  kBZ)zUTwUN Mu2@O@c`XW׋)1&rnewEk8dudb|w"n3*s$fgLv<%b}`i[k|.cV{N+} +1 r< =:sm3 I-us)4ZdgOR2pl3 FV85ŹD 2ykGNWI=2@IF>30r0g96P 9W0J돎AŘR"#@R22FhN]mQz8DX<(ۙ8"+h=@$-`mKl):M芷WHȎCwOBu4 4toByH\JVh/9YgXZ 8uIa!Ypzt;DuAѮ )#.kjRB)~W$DK"DU-ӔdV&(*&b-33,5SZҧj(aGW; [$W%ߟ2H34}Z#s\t錵KO9-(7ކ"F`3/`)§X>8<֗[\fř&{f,|% E0` \~\dQpHM6~(YxLmb.[-r4gT3]% (3)I'=] zdi?_zgQ= \AA >A~KU#p$B i(oӣłZcʩvLEzKjyYtn=z3vتsgK.*JcEw5 27 n_a2uE#&er8 ʞֻI,t T8=uPyͧPR=ꃀjNFNZC@h_;m?b:e2c>NgVUh~*ܥ:Wʞ!` &+ 9\mCU%5#ml 1Kfyꨯ^guClK"YVJFEәd\Xya:2sht3g> +K۱EL>Y1CfgG)7ߐ>fŌur㔱9Tii]acKcc0>f@8s2‒t7E?\ΆΕso'H@gtbՏ94!M01 Ԩr X`m Nތ|H1UIz0\ \G0K"XW┛L5s 0&V@oi=m L G=YFeoO rcqw +4''F𗳉*4Ϫw>]3&.1htV}VX|>Q=$6a!$GQ6[|&3Fg\HD몥lז_X=  h Ow+1D @oF;rEd,V0rBqȎ |R&7#rakMP+#k燎3͂ob(qNЬCء0x4fz\ްFElիXuC"zla_ 7m>e-]+p{l%!Vp/g5!_I"tD3;4Cz^pYJV՜JJa#YPtP(QM:CH[)LOVng-kRwW_Bգ(`MX2\m\5x5ĵ ײ :e#c2QYTW}&:FjFF+_a+yD ci[lV_> x@.!:Nk <ȵ;'WR1bX?Eˊ)w9l̃^]Zuىjy w}'y( ?0rh^WI h[~'%HXax'3J`ˈyY+ [q?wA_™̓nߜ{lWu5kVQAZPs<:z:]b2p-h4*1KWJ@yzi) ӏ q.l;qUf 8|pR4+bLJ恵S V/c7cjZHlk! _-\g(#<3=@p@[ [xlltݙ)*ԏ`ߦbV݇ɋŠ l *yR j͟nSʒ_>F!?H/mҪ>5Ev}k̹OwdQdz3[}u@8(E~駢Z~\ fSLSK҆#"T>d`" 굖3y>]y y=meȥ"}FaF2&A TS KGzZC;7ŵ@9tr⦄.Ty{(f?XWcf ҿMT ID:$|::]/%Li:\QAbR75l&59 L`̺$˴qCE%)zK#~bJ^=4#BN6W*zs}%T,uYT''_ `fVP4'wn iBxYĬͩX[H)(^%ځIҥ"`<3!b5͇AqL$)ӫ~[a{# GB=($캲`:I"r?-oCӑl:ǣ߮m q}+Y"1߽b.A#Եx*j۸*gť 5(:\Tou.3g̤4K~pDW"IU^f;)s#DH# yk?4BM"^(1UBgL}.0 d(8"-G6ƾRwGtV]3I2E`AJӉvS(fgCk9dG7'DMOSyG,qVix7uJC݂vif9ꉋޢλ> ~tz2XxWCgc}GYO1+ч'}"F.8E;MoU,PKK{ܝ֗:Z;-c+OQӉx5|Nln~KHlAR.Xhjsn͂dbcf1Cf}}%:)˕m1s0E7ڴyrw9мDZ iV\C$W)=X(!/Q! })uFjG s 4MMIڵWS|эւL/ [c2,t\ $iiMC нj{FSM~&1Ect'6jSݙxSwPcl@QbU'RaB 'L NO-z0~wI@ w`z;8O<BVklGʗ{aI)YpvRpӺ3r׹A(߅4-kB'F)lxa,3ř CUH>JκI9 .rO(cgǥK{;8g݋adL}mY{b0ε%xǓB4Pkh66Sk"&s-#tX>XK86+AW۽Er#C%v^K %bH9~?m3hû y9rdBBo ֈ 8]^涺Wl.^5* ̯5c56W8( AjbיE@d4Ru6DP&ň?#+4ɿUm{]?'U44=ݡnIYM T$A/+:b7R)EnoF&@Wel4DH7tGEmL6$ÿkY/oRŲ/ew-OcBM\=恮44,!lHSi7c|`[rF%Kn.~m 0<~yAzxp g+uwR#9EVž40ka+OV*닦3ɼ9Z^bCǣ v:jdy !|@ݸ4h=5aɦ^hJV ީjrp| :d*GPLSw}Nj&Q!d}*yKľ'D?K|bsrTY L84'۲\ HULݗs|{[P%Ժ::ߖ a.@vtn34LUy,yr҂WB8w&.&I|(+A3n~(n֬C l|) ak&mfDpsRQ-Ig=!?^=R;xYl@IA{=BT0N(@d$k 6ϸ4ɤ}cVIe9p2 ӄ:x)z%ţnJcMYG񪕈_Q=-ZtléobZѼHD!p#HaaH%lKɒ 3,lQfW]g'\UwQY23T> .PT=:t8S,aPEsl3yL:$@셏3T;^PIjwc:8&0嘝<, wȀrI϶l [~g}]Z`: +cDN]G_Ġ~5x+g&x~rNf0 d-,IKk+aGy,klɏGw-){5XlKVƦHǣo@SZP9b\&-&; eZ-ogzݗAhBMQ hr7/u ;B#vWgl_s2C#V8⃒/FYDEEj^D_mO0 2EEh: 񱗂-gRi8[d'x┺EJq}y-lڪa#E[۩cAQyVF Y1e1ܺnk۩ Vܗ'8bk<lb(Mk8eRU{gu%v W$v;a8N:eY'[/o}:~\;zGZLY6 FTKK~f=9|?,&~)& `W 1g_VR"T{=1VF2rUFr%l3xgctA%Zxp=Svb ;9d f5 f1CU\Ufyon/QY# ߸D"[JXK(V`xciC* v7pKŦq`FvL1ϳ$5F^U_@9rSO}U YvlN1OEg`}2 y[(IJ؀W&A676l?3fQ"䗥=({l%b(%AJW.k` srD9S Q1EE3 I%Ϙ1jGbo=P2~߹< 20zMnH\<1aYF_%`ĝM^w1 kZS@ɜ*[`Gj)TjykF [y"w{6O(#R$Nxۀ(cI^Tz.m<,H9;uR2T h qF-f} > {ilA]$ݎ"?_[Z[q!N5-Wr,Un,XMN{eI,a'4#n7LC`ڝʷ)ϛ7]gThFG!&1myoH ",TX[EBbARB XPI#(iM}nv/W0u /ǜ*Aޜ8gտQ\cRx#ec,ޘh|wQ `$SYRb^RzDT̈́NC +`Wz]PmrX?lƺWěA3so/_(E[fE8:yGyV1mz"3Gu]ShF<-:$:0:lR=vYiT D|6iQMvnlE_r,PeF-okG=9gθY|VO܄dހ|]NoG0 ܃aOi*fѵdw0av_I#HA>ҵ3eMfŽPʘ!`,lX"}íY^$u s'jO-n(nwxXzPÐ&ߣmxQ%-?]#Rs(\ 88kFF}\jk:&bfIdWoErxm(r MQyڇBL0<>5v;R*sc(vd=Վ„J3#3BlGP9DF3[Z8/sߑ9Y9qetIPo)\6L&5p苫a*41y\3d/MT̊Gj#=W:n"U!=܊o"9]l$OFpRloaRAxޠDϻI3Kyۤn\fU{-B}dq0!HEYkUVvۯCH6# =s!to.3=bt`uCm{1{SRն2 ~Us2o8!:+;z X,j $zXB.z:cQ - - ɔ>`>Z"؅dk; \#qqpNv _)4׾F^bT8"m]qgC2Y"Vy Gbکf@#'B,$kkgZR`;hs]7XSLm#0G,;~3A{ϯN׊H%ΰ7)vpuS5K> %jamR%(+>P7x٭ѹjuHG}Z/͛&G7|_xRg|m_96q7X {m4 ,x ,Rp9 e1`ώ"L,ᦤU)h F~Xɢ{zb"QĝrvA 45?Qd✂~ʡrQA^`3%.W\}h_$)Ť vqMjXyD9. 7>-=o29fJ?Y;K)DP~3 wE !r-j9E9ؒLQ.o{|J2e<H%V'{c05N8qYa,$@|FnC?vPdk~ hj54ض,zL_r'põ&n8* CETbͮ &7U/+}4"M!;Sx6O=093JT?w\ghvSAp)9KWDb^99s8)SLjMi:J!FApG#ya U nvhSN>>VolYSiIϰjZ-=Tw *D I< PPy4ae6&l&*Ms/>+ݑc 15> buѽ0a%i I4ܵLG24lǂtw  hKNiKr*+h"9#2Y- {operMN9İo+R) lL}V~b+yi'-DŽb-96pF#?'PCKrs*2xK3mPSߊ'qx42K4%%VF:Tݍaݍ9$T }HfPU+t \P! *  _–]oԉ<ͱ֍}긓UKmN 1$x-SZMUN2$?wOm qWC_VhY5eX0y93Ý;aJң=YdžIWNt)NrhWga^zvLew9~~o9>vJ]QX{1<*}EZ{Zb7I6զu7^7]e%LX*ii&w!8oWoIhOjZ =?e{i(F=c Z qLch[>&̤iq* oe78)WqŸYk5Y/PM횘 "׸fFAwq^XB]3u9xK/6B(C b.i.rfiO5H*k %& q<VeUh :#G8醺$.59s ։2aEkcXqKA} NkedkW5E8f)S83p05s5AǴC`}C$p8)$QYnڈEϡHUK?P[>x:2PiZ.yW'6FnKQ3PJ1Y?G(>/8R(;ywM]'j[̉:_Ny_hl+|;@#'/̿Ж:R۾˭ɗ>}o5-:VSQKL"r?U=0` "~]966n]8œz#zNߢvm|Ě5$m!DItwۘO(7ɴy >f{|0]07qqpN۠S/`s\*Z ?\A 2H`{', MNV5XvE+ ?X}}otuR0t$]ض bfR'lvQζaXOܴ{%ꧺQ0gE.7.?k0T-ffOҏ.cFH7q^~I yvS]" ):3 Y:< );I3 3*WTji`P>Ɂ֓u75zP SP~%rNbvZzDDe)BlakځQ xs>z4 Lg^qz{nNn;pSB CP׉D g R Cj&ҕ,?f Of7{D8S_#nϜ"> aM0G+n RX ٙzpޭSy,'xCY60 b!(,R Xզk| lֹ alzj+)+d1@q\'yFM== py.RŻGݴ:t?ՊKV7)Qw]l@Sz?Cu8VRqm|`"?Xcs9'ʲd<`Qv:9ܒ{$k#[6#@xLà*D$zl4 з(fWk*$EϳM{c5V64 Ng}idQ Plh:X25˧NF *\@e-BfTFy_Tp4y׉P.P(p齖mё "[.T5AuUzg!JXg3b{1 4_Э @+&xk?y= Pfu$Cw8 5ڤ#lP?1R)T۟hRyԜ`zd_vAful6C ѶpKUn>Wf 1.9%4D~R_bnn;|u A7>,`@Rh0y|Hsr38av!sxeGPbo-dȞ.hOMTcKԭf<5@'Oh`b>M\vKyWPJw'[@Jϩ5pq>B%Y:XXQDv ?%tՙ̌F2/`xL1 K( X+a8SRj?KpsQf.Vuoo4A0PՈ*)o2E9"f)Iw  c&^qDI#~ 8S|KW|JlIIȧSDŽ T"[@yT5bXtV+d{Z I>jHqUMZtwy[)\4 7F Z+4N9*I:2;kF;+xnX08J/H'ߥE:)KjKOMHs/-.I_L돹^c EҴGzIAQ]ݏ-xәPH_ԁAԏVɨ*(п4K K.z =,nw$9u~`j-.X 'Z ɀ,p6~;U_ |6+*?.B(}]j$IɌ[OORJ5 Sņtb[-_W} )}8QWR&yW$МzЫN*gP]Wh kAwYcEYp 3ĉ`!?WќcWʩ; Gg ij< %(%`+B[&ylrO3Css"55'N@?ȇAtmI6fZ> BW8ګQʹ;VQLE EՁm8 R"*c񏚳^HzCl]tsz׽QM*Z;/LֆxrЇMa h\i^V۔&l/q{B6 ,J. (F7Q4l@r}Z^0{@R WMx𙠫 Z}1!wлVڳM>|{!&{avxp 9uǶ~Wȅ_evR!Zn+fy L ~:i((Is V a,R 7l>,i.ONy2f#]0hpDk)݊q{431MhI|_OC↢֬8%#/q";27<ĭ#_FF2K &.iIDEcF0ܠC±!DjOP#knJ_}f[;BH8IDѲ 2RS($`rGCVT\Z̈Jn5F;<"gRUy1Y`ښ<8[[3-]5 ƯGV.&KI.(WXCS?C쿉.U1qg# $x= gZ^TG;o#j_s7ezuʦJ:KPC _'[a(VsS*5D7KMx#VKKpH cB _oKpÌl.΁Q~)LHfBXʌ@fu}!NHJM"Q"G2HP?gEvY)mM}Ɗ/kN%/(_#&D3xQye˷0zNCv~`? |=z{y% !bںMkjnh\~r\43{@G ,+ 0(GjDd[BɆޗoqi+8 =У?/ij%#\ܧșKVKjU{ٷDOoE=y#%sN=,:euM~K_gO XaDżzooW_  ^1nw)Q6<(Y6D4$Ln`ui퀂YKt)izM|&pjX ^"Hw&н>z9JsFbU{\p)ܲ, kÑí }xOpLMN1ߔIq>ӷoJW1(*N9 oNW@NE$҈UE!Iȼ q,-Y @w3b(j, D½ha2_?_hY h=u+ fFR \10`; `rm \$\/*Vx\{Չ#(GJ`6V{}sqWmy,˗^d !ϖTimS]g:Iaꬺ$= rekQ4$u S1 ` ˤrou|;- a\¡se~ &Gҧs}jaD] Mv3R;m͖Cz.vq^&%2O{5y b #'/}Dƍ%CXHIK1~O,IIF4)28{s8 O#fhM6g RgM G!A=f aF0(o7sgP{oɅh bv]1hK:kIS]sɇET81T)"dhvİx~"QyjRֺHQx1|~k].﬙r]FNP9*{眣ꄣ&qg46vmIR t\omA{|GRip 5=^ʤj8l@Zh`'xD>AtlA11-0!+WPbl5ezӋ6ymО}$2-pX1}k ,~({<ܺή "=c|RraȦre3@Ю؋-RYK3s0YqtmȏBƬZ LŪPԒEh.wKBd ,6Bqԅ1^RXvr*6E7hn8-hdGR('{:: W Nhs-%\^51d]@ӟx4RaRl[q*^+W~݁'}gͩ#F^I~Ej(=Z^K%U8csե# oQNVW2#mD_򭣠Ϧc5<|K`qJNUVd#]B{¬]%ՈvZnUNbpbW5j_kY<1 Pj.$P۟x|}LJsLBig%#)K+ۚtKdQ):PऀOfǢ@.z:<>(TVK+2f)`D[ 2$t1Pz㈵StCv'g9^ǫ!J7bv Q)S=!4pz)wVTp3 sޒ6bac?;^EbjW½{H8O 8]n2(\)*Spߝ(}U+0ߒaN%|Tz" HZw dTڼǖ-Eπ;2H qK ܮ⓳đ8OyeJ7R-}`ŊDjRJ يĨdta`o xhG{4ODhp3E1)9b5{døɰ 9$lO3ESIBA!b14 a0-f%Dp. p$@\qƘlCqB!0\{< خeh߄4.BOfL;:ε\g۵|( >ZũD>˯hC}BSd`.B>ty3u2_ ٮsZ.a@JIc S3nr@O)P- i䷺UF+2񏮟kKȦ+~O.zl]rk%)Fo^908S`pǓ $I;%5&qF7C5HZ* x_tXɘT~x1&B HJ5{26i- ;2ݽcٟL(yu32'aiɣ5a+ +Le.-&aʭMaz׶Bwf=r+y7L޶~RE:88|5a }'Bv{Ra`+ vNDVRDD0yKgEa'/򇝶~,[%qMQ @[a3FkW}iJTƱQ}?^@"ʪ!rp|F+?N5R>j"Y p|!u5m=!/ &3 m IR4$̙4[$cZ|1 Ǯ\drs@wL8wC.$?b$ZCi+gwÖMAIxtDɕV$*A%ٯpRyOqqGcd v-"-nժ8zm0J[NK葵5p7?vF72h7Lh9?(saW%RzlhRL![*`Y!dRuW~ 1@cO\ÞNZ g7)VO5tr:9("{6(~ ;/V$2[f+#}bbIPzf *;CJTމ\PbH:Gs>RJO~6bCd}`v'N CS#BIˢfh ,"'$e߆%ulN1-AynuÆMoIcB5YB4Cer n:6 is_ϰ3_/<3OG(]˵e<\ vOS1)g"R\H&@0c𛀶^XP~6|n ݾHޱX"Rɧ"QJ}/sjm$g\qO:/O H\60ARӯB܋MT lLGQ?GE#z`C1pjj,HJ )X(%=O[m h㜍`[6{GgPq!ɼpwߵdSX(.o\ 2n[\|@aY6(&=#1Vif`M>KUydjfط)=)in}O{5#Oz0T6teCW@l`cO}'nX>c`=ő_W/(D ft4ؼx2wI'<(º+1H|+&nW"FFd fŽt7,Y\ b_j$JeAX(@YsGsS}ގ ; TsBKZ6Cbp̍8q;gGOC+QnWc)]0ׯ,eV7ٜ-rn"[uW:[1TxM5^/j>"xm,fps8h@gd!V} Ig_MҁSKo\9 ) J щBuJT5}T}8CSVP|.? Ex\k_34,:'XI[pʌQy2!BXJkZ qV$ GcCw7l%牨醢$& GS=4L`R0'j jgnƱ#nMJM׉PX[eŞ0-PXVJ͡3{5 14v֍p) ɟws><i¸4cFv洼}Շ >0;ND$ߤOL+L2*8-e}D獆iE>H۶B3"(&s(y8y)ذ bQ#%͐e .?F<0@D/qH}/wR-%8{az;oZ"YWSM|~ؽM{0gE"EХlnjՀERB0vݲC VWfSd#i'5K@W O4 ZX4\R,L/Re׵ctXHg- P00fqGm Ϗhm=ޑ g+ -:)ʝ[S)/WiVݨqN 6KIMVNKDC"bۼwg\Bڶ/Ԥ[xzշ,FoiGYCj_k y>=3 ?"ewwrk|)^o1۟rTU9瑝p\.XeGr6x=G/lG;>MK|_ΗOF$F5U_d41`@6YErm0:5-Tn%^ pm,a-A@JU*9.RZRT`DVYJ-+sUJ#>V_O(@U&]vYP(wQwX1 Y-H5 ]4`4ňŸE5Yi<lWz&[`6-ё.08*(FJt4Vޟ 6ϭLZ`+G P˃2'tچd_OS]M3Ep+5FuBur.nPbZ OH2ͫOa8U沒Gډ!L?;6d_[Zu!bՌ{Ղ]mOFN O̙!9W,wFirIi}R$T(]_+=e(Ê5=6/۬"PO`ԟ3%rf{ r[<Ԥh 9IEk0]5E4CEk<$ʮ|!`_RV ?IqOokGCenRhuӻaaZbrRnlc8inEK8jZ 4F}lK~?{f,J՘c`mh[+kQ}e-O/&K7*16>`Bt `%\p7)% 4T^ɄXOsDhU2A5sqBl:VE* Winelu+Hޫ{] ,1(쩦%}B̿]T&:P=o9ۛ=%QR׳Z?7{ WcB3ez5xS!Q`d#\wQ''@k-nFs9*eʿ@\ரIe?c6Q>}T>v(+/G^P"({mZbA4&U  2A ]V|RorMHzɑʴwv&;,"@/Z$c:K .^XMr5GPaËII@"0qwwg^"8O\^gOx"B&7f ٞfT2(SH:cC@7#wHyeUX,ԥFW3IEk ?1,JB}- 4gZRqs(GBУ4`|2vUˉ$bF>J";.96D?R)jb0;r-|!<(]'jB;Z"oD5 88"IiIA傷hC'E@kdEx/!0 V\6gTw!Փ%:6Q0)D.)*ThH;ɗGq=71CکI΁@k~1737'nMfΚ3=+Q9yp5O\U;,R"BÖcH4' pmWd*s 9];}Ŧ{26p?n~䄟DrD]3LGQ =7שx\&YàlZҲOѩm X=yu?}u!r>D%?ctt7~9 "WuϽGqXFZK_'d(#{|FC$O쐶rWLZtoGq>p;}0ǎd_hai؁(r,ȝqX3Rw`I62Z:.?>FȚ~>}ΟSy3J@ey`OQu ~ 4T˘՞֑Z.G>3IY@#p]{\]L GbʳMJ90=hA>R¥侯8T=w(وxL,n.YB ޙÛ<Ȫ"OH*w$h'ϥڹ/5o[8ַKV~/|dx7:~@${wsSH/OdSJ2q&&1vB -kܷlJ@ 1p+eE fn+xiES:SZ .{>ZXK&`\ƌ8ZΝ;:xKɃuԌ|0 "z#k ڂ4D:}!Q!8 ʵrCs\;UpyYtP /rz'̘͉yOՑ V!2ucpSqM!OJ3pǿrK^-vBfA fF7=aJA­;w@x2 t삲?mTvU\i!dD{^*V&[3?T珹fy7:6~K"iǏWMx&|,qLsx}cIi~@#M{(K-p?hB Чbڃq[缒c)}D ߦLBONJ'=Dh2E{O'| {vk|b?~Ai7Db8]W 0|(mdMwcT8,O_yeevVr VIW(')DRrjtF:T Bη0E-e-I.!ptE)=-W2{,OIPi=;1e%@w M/Ll3/ dRf@QG\R@7#Kj\-tf(amV dNb,|jMHw;bMNTr.[V0U'A2}x缿=&ׁܼ0ˤ>}[@ɀkO@[s-,bmv!cuc(S3Dd#:l:p7ryzg7iD ,ky"j4~bm~+3A' pP=iڑK̀^I%^;vWO #?EKbAHH^Z)͈c[EK0چjK0;DiaϚ`78M)0BPp+ކcg 1)uJdd;i"<ۿ( NН}K!/l 熴Ixzf8)+$<cz%[|5( .j? 9D)iOb 8W L=r:uD77LQB?$ba-ûxl8' 3t|ǽޓH 0 YJc Χ;+N׍ID+3c]^rW&39 3n i8j(t >E&m 2!&s!t@#o$eE|PY~:)''耛ЛtwTdWH'EMkLf#r;=%4L_9LK#cۮW#5HˉpX! =M}^Q01pRv{Yu7*T*@l~{fBL͟/Z>fWP.EE\\ۥ˜. D^ vү$ƫ޵HgX?h&{-*Fv`Dd%wNgLM[Q+mY@W9(П>ykEzOFgF1R(u|$Pl1n50'7fh<4|;֏raPH.G)9l[}2M+I^oU%|nH>%VicNrc 7H:UZЅ~%KSc򜣻tgc[/̝ev[L/Bh_~vSo@;IbqKV&Hb||ݦʡho,'FXt"ZEF2*ܢIOY|+RlTl`pWf/1J\fc!"[@OimHE;\XKp#?",_HcVN@鄕)ޤb#'p_!z|J Av |_?AOL{á Remg!gIRtƎg t_>f:|c5wĢ<0|!lImNG)+l``ez{J2W2&vx~|Pv*!-oGGKkcߌZRY_b͂i>[F(z}aHF޹PK<Oe Nyיv,륔"$1cF¬{rd.@ f~GՐۈqҰȂ|9xGλ2`Zjy6|5XżHߛ`΂ɪfSz;^\xc>CMf\1xuNF؁ DL7 Oa$k_ơ)#6PxWT.c~u\s)@_$̼rȭ\"BAS-F4ŝ-H4\E%JPᲦRHiN*?S9~(8 ĩlmڀMMUr{jKו2 |݋ AKrotS Y۬HJÃg>91_$(1~0yT[E.KwY\2퉆OD@F8]v2`?<<Bmxng;^/=Z ^cu? hIĕŨqDy'*Z%e4v]]F,,Eu+'UŦ r˕H({>XPĢsfqMVHo gQFeBK; j]MƘzcSEnxKi;:`lۼw4w c4 um: qNd6k?quqP g"_ SYF/&3 QA`эQrIodG=7ҖaA'a?'G7+Yrskժ |騍j}AyNrV be_J#Pu[Z+yз>M[l젿=OB,PU4v lN] Mo8nap;=߷Ӵղ^fZ8%SK34=]ng-ʇiEvgiO=y{A2JGmx4B&ߚ,q)plJґXO:{>L?)s7GpM9Z0/M?#K$&i;Zk?P%Zt#F/ `qY2LNпrMѪg2o, [Sf'qNݸ^H~$3CDc );SGO^odz=jv ^~XMB WON~Q&cVU^`Ѥ9? W  R&:}8ZO ÆNM~&)q %P`t>4(iO䮋D/'[ }x,pĞ0I@Z5I<[ŵe^ 3=fP_BDQ}u7 `v͵:g7YPg7z@H-wq-SN}y)IA# ~E'Xʘ3*n"\+*WG? l5,e11A E^\m?h&4:DԠw.WQm#KkY.R1,lQ-&6,Qh}NTg'4 C5xNOY=}x~zHl<9ы'ˑ"aU "gwᅰ.^PtmvaAdz7$ڔ8 qR. -?a VOdڒ ()ӧr ŋ C@]RUژ#IZYhRobPN;BPqp=R#_Cë|N70q5oP"e$R.oO+s0V41Y٘b ꏝ'^w5sq۸VlHb"mW曮>/%-6.9}_0WjPyyl~OQ*ĚR(="K[[SΎRj jD-4TcZRJW# #u5J8|^qPT[5ˠ먜LC}K Ƈ9sҒKf$J;M~_/QEI!rYo+Y=r܏j\057yo2E }S:!=L_E si&i{g4 a4K* չAEzǛTncp[ȘДo2Yf|dd)cnn+mnl?=M93M%3A9CN~@"g)X >5ZI+ۍa V/Lt7K*c2^AjWvn@,J0iywxvLšE4Hs7ǯ_ XgsbG(8uYX _A`;JG>ԟՎ H9"YE?8OjWFPRAPB`,*[xbRe3>>5ýq${bRI[e-M1C^1ҼZ) +u#k͵Rl džxAԋ?vh u,=4-ݟ܀0z]@G3KZ)wdɅ?9kk$rv uJ 5qs3Oȗ}͜Uh>ިֻw, Sr&|ʈL?M?IZfCC LӔh2:UM8/:Pސ|_hiJ[ُqFйA/<%nL4] vd2J.O1t!$qSY2D >[{b8E/+>m;~["))$lmkGF+)a[ KM:o(I =J zebT9 QIdW7θ8bz:YXaTs5*#TZƲSi5>𝯦2f4.ᰢ~є}:\ ը!JthΩ|#,A;a<ߙQ-;xZÍNJ> WLn@,rsw.ߤͿ6ąfcڭz3 |}@kY8ܠÁV^Uf 02S֋[alTuc!YP祂*c`^.ep0\?ۆ.52 F? -,VRX8?a֛0)C%}X˂"~Ҽ >p&Y_o/XtQ*Fq d"͹aNϡ$|]2-[0\J)]SQ Qac >8eN3ׁA>V h| 70ѧ{Ud( wο }MCb{yelS.-u(HAz2?Yιfo4V&L`O @#Z EY|&vցLG۪gc<+L@/{&h|=88,?xZjl1~jȸx[Uſ5;tiH5nL~GfY* ɳ*lڸav'9*S|ؘ,=V ƀR&P\n_HT9lSǍW/=:JwKX聲% KnP47QJ8<݅v_$uĹԟ6hnùȳ>$Ua,}4;(eY Y衚E;@e0&\2N긥z4BENs;&|H(@'=&GGwr-5ǂRNm xb3:t+ >>"gKhN8!s-J-g:54퓎qmr ghgkXU W=~{~/0=>d{`;>LM$ &); %zpL NX 2]x{?gXZ.kx{ҹ/c#R$R-5Nک~XVyoHjGIe&+׹1;>c󞉠91DPO"һ! ʦwCYŦ3&x\G~[ %̬0[o4} ϣZYa2%} :vpCv#1=QxeڃY0 TFmc3NeQRP^qܗ "JZH; Oۧ++>@Ϳ T@jer.)1Nin 8iExt|PpzYP>Q$YK+Tj!*G01d~ YS'/ӗ[vƠ2pBlC@~V7ɽ66P#SGp\$}wX ݢ6 ؼ)d6Tٗb~T[&Lx' OQ{))JIgɋS$DXT@7`B`:[RMTt =^=Q͞Jd[%|::;6?vo-FI1$G"H;[^$ u 4o҆ŝࡿꪨ_]>fb]so#H0/[6,28^°}&ܔЧlmT\VkNa DU)jtҢ&=]/#9.x)p{ t˸{C5Db1`T0VFQݘ&UNL\J o ~'4iy-쉭Qb^S3i. vk`;C`"c v޷>1']?g=8o3j#ph-vG=ǺK754ww6\ a>W=j(0YON1 L#)'u 0 0?SZB7Bt.=Kri_S#CopݱCyqR*|a7prNԑVwoU.+*Hu;)"#,jfq4wS|s-YvlDcA/3+袄!|~gP֖TK5fjGkJc 8G0"pE: ZG+* <ⶴPnH&@iBPH/~W?tPG](D$ |Ɨ"05i:`vERxB^Pz~F48`ӎ v0%2MafF{5RABQF-Jo3OşLF ջ%ZOA;V.ys GLЩomNK~l0ED Hv},Ktye5o')DS]!7[O=Ŧ̸|X:h%T?mU^0p$}ɵd3j ꌋf+b~^:؜k$FcV$8<#H;G$<+4J +ZDxH1HOG7 #׉cTcR4PhϏ-J/D?)ƯctL}2# 8˃UU&ǣt z͘,)z,r$ė~x ^sT,y9%|-dwaF|pSl.U=26x4spܺhY}f4xc %۲s,l@8*۲˔-b4#g 7 Uq# >-_cm-PTV'gC0zrvxE/tl"wIqT=dgƭ9m;vOVY3Cݤ N,Ի]!kI diaOM\+W!)T"`B0_9Ԧxܧg%Bju9;Dzi9d,hή# yccJy/L!G$BF؈jZ?XJ(U$~iz!Q vްwR4/&&|44/5;Ò\"Ysɾ! ioUI] $ NceѢNfb_=rD,eޖ[Pz -Ow * :!st*Pw,٢l+4!y:98է};X4f䳘mW͍BLHZ|jCuȷ9GxI"?_NM@E9DIF^S.0n(>KIQVp=iQMY>2[B)Q冉:N.!~}$stg3 *1d5_xTqqhߏ[/2XhAugIE%˯*JA}G^G 2o~ S&Y1//qGnsm /*'!TQ>!q \@ Tl=|ey~jP(I[#XJ4'E27 5R~^M g;|m˹>zkuG fZy0ֿ#i!nd_`)߈+sO/ X",Ie?$pFg|jR,F^-q8** -83TD&=*47SY@8˚ds S"֏K_ײx6yKF6.46쾌\ć xfOƅM6?c{'/I kw2-??9Gεu_5 wX\^m/3~$pYM@f`!bep$J5W?#F PPs2R>-#(Zy&9WrPHX,͂AKؖGō5 d}3IMf\͝w$ W ٪(0_W =M^T˰^<|] g;Jv $0|pDOPp~"fa5QWWLo?4wXRR^Җ'"ȯD£x:b.ͤ)wZ.t Rx`ݎח$C^#x %@Y s ۙ]o#sPrml |Zv1bD-6=Kjba@t 2֬HR;7N脥ᑋ=dṱˌ^"[}_aw˗[4%:Pn#w[Ae2WeIFBM u"5+t;&@t+6}*s okvaj[Q.Ou"\!tv4A]nrx,Brr,V(KfZIdR DVL1Kj "usĮ`-ÿ iIݑa8e$G[GNv9l/53؍*U`ne!sMt] 2?Qފ<= *kI˦ۅcn_ֆ:HRD^4B䟌3 _A{?{+E'rwҤG>^p+w4Pd:X{W[!g 졤8cx63O*JKE2?ݝz"kK{w RjL1c*VggTdh6t:`ב|s$=A3_oT\u:M;lNj~ w-#.>/,džWO}*S.crY`DNZ F iEse }9jPV|Z¡v<7oX `O+DLuA~h%ޜU9h gSnjc dsF,bEbXڟ꼩7bfxȖ"Cxh,N>ğ9_S~ lxs~LYRf' 5VD"e: + A( D x!_tSϐ:dE*f4r{1+YJ߻7 E$K<-+PF+ ժUvtmu A`$QCIЕ@Pu^R;҅yh6BN+ CK |}+.M (Bw54E*D/VV‰%h-vvQ%@D Z6J c$6ߎ }\l+eMeLȴVdtʆ DZR$VqD(dDJ&ޔ/;!ņ >KW%7.C@.OȄw2VV&LwM'0ѱ9(=9g! 5I!%LϤ=WėK34 -+Uu>j.*Tiǡ3-O{wVkxz+k1a窃7 &پ1Rfs"3s'B% ?75ۻX`e#:Ⴕo=@ m8.M%)]k×o= +l ͚_1KNZ, !mD@ eP3p.q1O ';9*wd4RoU[a@uBNPEZ)ڧ>D8kdKR oY#jqùV,RB}dCnd)#3Z,绉Sl՞SKUv$,V&嶃SrC($ny[=^huZghJB{+W)ppjS'(d~;qxl#p09Ļ{uCĐ4gMFW7dX+|JsQB-"h穳`Q;+9.Q}}Z@=,XdhJ6# %HbQ5;~9~Ͱ u [P nӹS}W~w[&-ieQ=xB w*O&h&%&9f'p̺58e˓CyjZ 89y% G9q'jp κ 6rU fY?"MgQR`|/ ߫[pe{Q@d>Cw_g :;tӄ8km2gL-lʵdjK5C7#[ T™]X Ёs.|Qu]31cևYO'H;5og%=!+;>/4EОVԝƳ% Lܠ]+b?x]#zc^.jǛ'5n#ۺ4 ܘKpfh-0/>jKB7B)>NRbX,I I[ Cd0 r|3N+V@]ߏsT[p_VW]lŒP@E09!oӶdJLɓMuq%g/ZN_i,EaRre&F'18ܪm@ztۈߏ یP݌'Ez"Or'".nwTsdh/8JyI:sVMR;D9bVnҴRcD9k+0w 즡ЕnHĕdEc.W֏Q7)_%>v$7 = VuP?A1]!8jAaMR$3\$z D dcX/"ڰl 2$`i؜oe}S~Ph-׍˕^&񍰩tQ(Digb,\뱛\*sYU ''rNiڑiDl#iʹU =1/QYx:UӘ.Rw% ۛWяzفʷ y/ja$#Q5ݢK8t;[z3z"xCT8#B?e$eLíRLӉd 'aѝg35ݭ CQ*HyLjHsh۔.eȕf?̵>NdF+4 jD݅ }sQ{j1ӻ4Vc,d;܁43ܞEx^\]܏DJ[ ۃ D\& .z'k{sIiQ݂MarNeaDf" כ5S-^ҥɡVɪtni$obLV9|htˡ3ЖIMg {)ŨiSxMA'-mY葿Iuףd^Jὼ)u]mOh;43EgYx)Yw۬e|wx{'vBp}8Rp,ӑA5|]IZNDt-x`,%``ѰȉikSy@`[APaQz(&HsЍAtɜKk"pb5b7?,W\?[Me}{j )Ѡ"I۶.xЅVB6n$ܢfd0 狆hrJ# GOw$A%_5f?ŀLT! zi0SwvUe'IJVH]WJ 3CpKi .BL7EWL X$q԰Ql X֊s,T uwat[V]\i:z9!;%_af2lSdåL-{ azuɉ0 N[G;Mae~ dLp.PDH\6r.`/5p2yT߲͛*F/l7?[# 51-DFr-&7UlRk7@QNnUl21_>cU|"7U(Rpc-J\mу~^b%r EMhɢsϲƭԉu[:(]:YOU$a oHA is8, LHyN U&6ŀRot aAV( YZ3kA|g4ictcH@w$M #aHw]"'坱t裠04 砙`QK zq4%@|ͥefUMF_URLn"/N}+{<P+-`K4"B}` U nEd3,m LR 7ml8uJߗ&}nQ8!R8QF5~aY UL`hB`h_Dh:euՙv?Hk;"PTG{IhKڷ_p:uCMK0܁ kMk( Z!1Opxjj%ooeGqCAz]!EÛ  jab RS8Z6n0z< &mZOP[!;o=VH̨!/C:HR<^z*i!ν4\aӷkc$ǢtE95vu3;\cLE4oԽ1  iwж=[ _jsN!^ȥCTӔ~*T|u(P{"REWEJp !\>ZyK/QXF ғ%&-L@Ľ^OCʎ%IA3gG\-;"Xzan#a '1uP8tGM\u|Xd ʒVe`qP?p3|.!9tI={Mo@J-ղRQI}Ot)Sڞ#z2ɝ^8hQ,3& N[j>2\ d.4,oKH8,r|`7ѷ³cWah6Toh t~]12: DT*bcP#@|0.0u<#%O Aϧ&;1`}q3B+?&.a[yd`pDTf^.BQ4U.9qr80Rd757(aĶe?i%mlEF8=%r:Rw'ѩ>6 9!#F׌l-3yz 275wHjce+zQ|3,CO!S(,"L ЯRlX̥sP6Y/J-!7#dUTW9(Q7bN_P Lq>]|ȿOb/oqZBEHFD@˖(q#Aj?H;6YiRIIDh; ܉Zcj$%rV4CvHc[-4x~gW&me(<l}ݒ4),=n2"pVuONp.XߛkK%T òM31ߧ;!(ETr<# d菉$ҷi>#P  bSM w_> `߮]|nQ:+^ϟ}N6rN㜺+UB8 u))ZG^w?.vh߬i8((L&WKA/1P:׎F# neH4S*\*D5ӮI?H:1b6 ([Q\kvu2Ԃ'ϢZgzcdAyOp@ ?g8,!Od>oPPnr&'D8I.|Eͻ2gAi _#|ڞ%''@g?琡+? O3#k0Q%Y3[ U# :6,BQ)KjHl4/'Ck/kLFB3ّsqq11ԭiTr,Jeԇ ($$O WK,R#,iOO"qU&giRV/l>:p fE&[!_tG=﬉!=ÅٛudΕ/ti&X¬m#Vnx: K;v-GD߻i\Q) D.¦b.E_6MxF~֬ҕ?sj{(O':)j?;F~P+;erD \UtĈz%H^5146lVAn!5TWsС5Nx{A:l# 52Q{iwhYƵo8f5C Gg'ǫ*H󨎑KAEo5l5iZA~kCm+ hF0 ^lt7l+KNng윑t@N ̃K_!HiNDxfr 0IQܕQ^-8c%GN'f;}epfY2.M~Uŏ(/:$^f?x kȁ߇zd} *)c7EY(^ڃ)Sfʮ}╗ÙYʌ7'hG^h[t^'MXUt#b,vw1; pҀZ167UTٶD,Z9V*DTj03n_NZ1JL3RHyfÞz恒n\MSۇKxqe>#+yeA^'@Gb/!;`Pܶ5pj\lZG.[ AY8T*4gk{D0poiMtR1eSпDu6o6vFH>ߠi1䆖kbY$Щf*d2bo0M"(eEpȖ"wvgeՂl/!OA ĪSy6ct4Yo)zo*NILBzo;Uz{UUMbb5!?5D9doUE]ʇ6C7t7XB',y ZQ =o4ߌSz1*#fu 4q~C_ٗh& O)Ș>)}3#n<>t.&2h00BoHh fWK~`&$vfn᪝Gyl63%c]˙\vLжEKPֺiS4=5T퐽Ek R=T4R^ HMlXLCO{b  @}9YFloؽg)=:*«Vt zhpC'JVРJӔ8>}m1M@|hҚߧk1_EᇅgQݏ߸%#X nI*eF6+.+ȎVLK4更1O^+a|a)P6ha0NߟF^qc_XK 03"s+K,8^S +KZam#' Y`bF*|pY2ֈV`6JaHB;>Č> -Ɲcڙ/u=zMexfw=2<YKLmO|]*7TlSts"mj|Ng>ݘ0M.0; Sϸ&oK@7;6IKclf̨钗2g_(,I'krs'@e?OlOBL cfh w2õaNtW@XAƜ Y?2Z Ϋt/,h'~ Al h%^xGU(R6ً8aSkc2dzݜ3z3j&c&!wztP7PNAfm`҆փXZ4Ndi,v~13CZM(dNPnD%7@:g0]^P@_m V -v9ȫm94}RFbtMUk[ 5ͯK<`Z~,53mxT ;Y dhIN _Rއ\2%Ҫe3)Ѽ` ?eehFmM̰/7uZQݻ}fIu#&a9ں)7CpVZ,m9D3-wCY#3rNXk/ԏMU4y]A t=¾\oax"[6њ2o/8_iF<4g| m+ 'TyI-.UhW^j#9*Ĝd9%S̍ސ>CŲJJ3k)0_1U=+v>njykvfdSdeʚ]s63y~#el߽`6—@%)pC*Aƾ"UFǃ٠/߿fD;Ft.AHD3D!$_@'rEw@P]0eѪ ٗ+[~a5"di_8@.i,]zr:L6Q Pi`8.∌6-omz:1$W&,a )s +z. )t. L~TRHT#IEpRBeB(qFD9+sE%,%,`>/<Rh zp"T k};R&9F|fRzm@vAewڗVW ,B E2ry>plӪJlӮVtB ue"Bz—WESyGn2 @n)%DAF"]FS<|"NŌ *(5}n%2{zډᶲ9SÐ$ wl4TGo|Ϳ,D3Qٓ- чn 9:W#θ:Y=b li%|tv%P R3WP.;Lۂy~]I:-W/5&]U/.d/v~6_):={vv D2&ț!t`Ρl 3\#H0lS[oyaG(: Fc<[. ȳoEvߖ01AMxF;qKko+3vkb}_1[ o/ X*NHnP ' ,TYq$Bż?+2(`BZDp$~uuRgxdp&cUƐ(T ڑKکZ cfLdC }"rUCyQ8V]t^c+m7âgSM3a@J^w+ADiOoaZo=jvmk㛱Ķu'z |7-[dq]^:7FG~2 &:GP]Ǩ[9 O" y0 rʴ8 &:qF]A zSl nGR9X=ϧLgszpȭ'dT6(a(.!DiMy,m 2)vU:[F3ǻI*rvJtq9^pDӊd拺ҀIu(؜ W4f?&{0%-uVRIcԎLR?\WRt $g層]Es~Y=;l/L:d9mOeGIturQY'U'Cʹu=0SIn఺E%™onR$:_Dm1*|Jt5?YA!2t4Jb %*S M>em˩ddÿ9nG?vꘀP(Gg<Ὦ$?{)07q 6- TeѴk$:13HJ5ak;u]msOL^.t'juy[Zt I;?/b$ Ê,ZD2#͜[rXT?r` ͥw ~ Y_8ɚ,gYnB@P9Lt= G6m ?lhV# KoVl^s[]6Na <_0}3P+UzdA}\Vu]|'U>2lS"WcR eymG0禀2ΎGmcG=#?WkE[5YL4(tXna"a[Q1?@ApU?8 ڍ4oP G\bViBkeU;dC ٗZmIu1r+_$DGb0^G#]*ЂPSdaqރb,"fMWV@u.$EFx[%l [tƤ3)]|}Ġ %߈p#BO" PC*uY&NDIj~, Q}UL^707wY7S%ؤOzi,vVzAgqTᔌ`Ourf^hD[sV̱ͬ2 -q}#&BX/h+H!I5aYD'Uǽg@M " ^uuRǩ;ONDԤ~N{fmk߲*Kk^Yiը7!Io^#'6&`mq)Eɣ$KOm@|Xۧ`.)9Ұ7?s3*j4laϖo(s/.TtGvm$thJw{v!2~(=#d]xq>Aꕷ;e`Zs4Dcb$f%:bD=Ffk-5M >ـ @JeXkatsT(*]2pSO>ڬA >17J 8xй/ RGnC=PFFwuQ)[THl<÷0ᣴiuAYLhr Wl1-in_4/3QF3J\%}v/ԕDV\8+˜͙-Q D!V^}geǚ XZo͑u2[:} 3TJ=b|WfIh?:~6`FG g 8[t l /yMO&M ֐vY%{TAhOUm֐uOZMl4cձ'g^hѣ^x*DhnoBF{ B٠c8""C(| `#Q:i1?rꛆj0oM@ݩP\f5\#T{]T&Lhc f“Np0b'|䥎ٸ~wxrV5:n<(Uȧgw'Y"lA>1884Wkؚj/zxFM0|B5 *j,\1gs#Iۿ/Wo!2$,@p?N @q<ͮIwwGzL1pV"yA9R;ގn10_:ͩ`hCWK-n6!<",*̟@*3i2TYۃ Vșu7=_̮` _qpJ {rӪ5Sη)qާ3Y9Su$,U=.D ơzU'ҿ.NDUS_q&~5 EM EWH=Wt#`5N$<ލ`s SlhM|mʭ_t3F(0 N]Lܗ>(5HILAM@rQK)㬵?˖> KhNRҳ]&aPa-- Pe;"R?=2qX{p;NhfyG.I OaRS-P")XAuJȴ<M`lab[Ysi.3 gXH X/{=JCT(o&;N-^$IAsQY]St0 <%ߗVUuRZu&`_s~((oÈk*u-ExR@[.r|kY~NǻShf#~x3 {<(|+AP6 Xhw8Az@e9S{y0'{ !҄ݞIbZNU70BŲV3}fTI ^ec.dk?ţ}O2cLz}gMY̓`^YZ!juuʘzY#b҅C_IE8_lD9jBv-?曼^ ֏=Mʃ,*}(h$QQYζ$T$,a'L>8}xƚsy"%= @Ӽ^a?V2nu*yXw{sK Z1K_Φ^-RkE%aۿC0HU8ݽp*͓O]6&x<ާRTsK ێV3[$%%'T5Oe!PtEI,8W1aTſ1[A gP#LODhv<1_,7vQs~τcoA@6IsC|v,+ s@,1ە$0kcsi u/+0kZUrx F&!1W+AO_ ү܋IA?e15߭Pm~DZ:񘠖Zi|6gI:8W <^7݅\Yqe#kwj^_>b[&Y5CBZ*H8M @\Ⱦޞ ߅bYwT!4 |fh`ë6-m=Tz\=@!6ukޡ1x`3Y8dN$?Eܰ-k`>Y N_#)yoQH f@ֺ 2 Pz`*7Q#CiY\3ᰤf:wP$&clܘ\KWaR8繊dhw]'"dFT1xR/п/5cmlmVbSF u_V(,2N_3D$GIP+$c8f21vuzݹ. ^@X[e}hV1\+3d:wًHzpJUxn%Ee|_ +`b-K-M 0΍cBPf@;p٬Yn14haTR A{!MG{H rRBD>%}--D R2QMw]b!NʼnzކBS#0FrLl3Y~3=*x QwϜ4jAZ:i&i,GjQUp<Mܶtlome{#W {&<Ѫ@j͑#9G\0'-3}ݏ:U\{8c]q *LٶG|$-zxyF("*&*;bio}5Ao w|ioԷcd +%s8d(~ ͣ_~Ն>Vx ̮~!bu<&u NQc j^(;w%b`IzX(͐`.CNB‡m;aT&fdt+fݔ(-]}6':o bn docͤ6$L@m,]xކa'/Ĝ2q|Hd8RN Ln5JV@&M=p9Ʊ,V5zDQutY]&=Y!tu:y58ڐB8.d+W[Ͷm7(b@+GI*u|B]y\H˪6ꏕ(Bt2h*&; YW^k 噴O^|.[e<J]wl}Qx?w#6Mõ d\ykO`K-<_Yzvt:fFӂ~BC̗<$"At&内q9GzJG78jt.\kY94_Cˇ#S>֫AQdS9pm; [P,S59$[UG&M-Ntќ.ʍ I3,*<S# ONsDGW]B8X@rB 5(*A>|NYWXؼe)WO;9}K-IWzt~I?H*E!蝎&yIRѧdxLM6P`7plLqֈ*B|FwB"Fg%p5F=>bZ qЊGT!'"ZF@o-\/P,4gg[f-(gv&Gy*G@la D oi3򲒚Ohk5D=KYk)n#XS0A%4P+CʼuCV!f:IN:-ͪ3r⎿xǝH@TȫVmޖ1v& t~_H'<+/};U4́]vl1@g7h3r2BW$ȅ@rg'7vޥe8PN'm)Rl[f1ξ S%Dk]!w>*Ҥ >+F[ߵh?ik8NQc-:FgOR #U>{ b[2~Q^3^o}B m~G 8.Hj`BoP2%Z߅:TQ:[yg>s7. ,ÃiLaah. :u!!%ϣo13,T\TZFVIf߷m\`(J$0! ?X/m>+kٛ$'sy;%S }K^>'w9ebWQ)r6E6.%V?hi Urws**zhK e(U;Ϝٖ1p+;<%BEV/>lj ܦ'u*X^wi@ BA&Q%Ui8Agt"D`Rs8}[_NLwbru٩r8zNi mh"ͯQ M<O׏ɻx,K00SK;q<cu0'4s@ q,r#>@;l$bsDldܤhIclKRi$g6F}dY7Xg1!v.ң)T87/K$w͛efeTvZ^3R6z#4+4"< G؋=W*]z5FfdqB MPmW49?96K趷iF=%B -7Cݷb1**57j2;ςC*ſ]ʣ8 g Qu;VdRbn#Y.  dЄi&V$?4#%ymKmfQqAYI$yMyhygpݱ%kS.F@i[GsŚbm+amy`̣vkD>%gX}Q57R\ ,ϔۿ NDAX2嬞4qN;a+rj\eV2C%u*Cagn0 vwy;,S-̻4u+ro6\C,pѢoaݴw>MF^/{hq"Vݟ=G#6!\548p< xfMT=vֿZ]HIF5C xsr5V3h4btcoܬfNz>'tո[AI l(:K)P 6pj?Hto?]_X[<3AysVuG^~AP 4o p ] ֻ1(DASXK*1`B$ql3v^}EyƩ s4!'p N:]M0dzz" 8ٙlIK}b$o|=ć ɃOE+Pu ?fAN+fPj&vDB#c6/tqfOyRR 6nj]W% T\xrb[R."%!~_l= ۚrE6<40Iؤͣ%j`]8~kJgQG2Z~[KU櫆0 {t_qc.w@|ęZv"qg6{ܛ,q;VA-Djcf8s OK@C&楮[fMCXp2 q obcaO iFnZOl^!Z?ȡB#=vꦶHfF<~uuntVav귪L"/9q홾˶'T_mmGS}džW|& $Cb6^(QswQ 2.|2= Zgټd+Ӿ:ujz(${Pweb-t]r:' /FpwA[-P}tuk7 H.~Z]MH\϶"\t;GDz\S}҄8 .߼p175Z#p$?e{l8&rK㣣6\Jl`à%AfbTa5~qP₞xX[Ra&Yq>:9,Y|F ܞ34);?,LS./ S{GCE}"c|V͝Apx Zf%?E-px&O{e?QLڙ`.;V甾=WoF0u{'IZǗ&.%b~W+?yPp1-/@[FIMub`t R\I7>l hIv8ՔZsdS3[aCƎ5OTZz}ݙ#׶= l†DurTiLϗ.cPj\Ŀ?E Ys8o'Cu!swɰ3y> Vw~A wtމhC1PBoΨZ%y@ض{zȡ5rA͠KQإ"@eix d$}{*Vo6l/ZL$ ]ݢ>M%'?N (* en/"ǔaA59.uk̽!SLw`W)FN y;(NX7g1-Ұ)n=Zbv:*Y6G64>z~8\&Gڦ_WnB.|8bԇ]oq~H,e+Ύ\QJrQPG5@W4.13$x4L! xz3M!id/Gn1 /-׃~R^D gy؄HUh& ň`Q<]F+'tGx rgN< %{Rp hCa鬃fv.&0眷0&.g('iCq=ODsEo\\0 S:n8f1Ҏ6-0M،!.%0avSU-D=M@nsαPC3 pl, =. hć}F>$Vr|0c ~H8oƵ ?ܻyo!I\cja @WyWƅ:> 3iU<-PGbW壒bgxۚTڷt<>BGl\w3y֚p%SIO%bFɘ{3odHRc7{IPafyogAei!e 䯍OMԵLAgYW-ۊS5}|H<oCs9&``,eP喎Ѹ Kvu!1ŌeHRnB`7 i{|eHN{nK-C<2],`x%c|c_YVW~)e^aO]o@OXh`'I:1:]fQ?W+c]~oxi`J2 i݅zH5o LQR EWH`v`F?, Z,[|hd0bIpʸrRDR eyȡU8d:V_a7.N6{y"IUA1'Anu3to9m#{XWہ+,~JxМ>_hǮuL]]?fK8iv !66.Oޞ7RȘ4ims6ŊA{m/ &~vSBNd>#Rm,\Ni$+OFȟ6NԪݣXsMIa]`lϾs͏}ԹB:E&|ѺR}LtLG\4Υd :ΰx"Yg8WBnGQ y/8AO-DsqsBa8QO/)+‰ټrS EfK M~<=U60:br\mmq8.2}fJm=S [vc2^&6\pRb>leh*r6`} L@ieԩ6Nw 41GK[XW$o;Wӷ_4>^Rي)b$]Zh= Gc!Xirm$Gc[rG]椬Yz_V/89 FN۠#ڢ'.-a6&ph$K娕彡쯅(4e\ x'%Ac|q 7+s{Zɶ@={s}JEހ9SgK*7k*~>>\c>g/1-~Tf24;<ր]0a tr TOiHূ*c 398{wN}x:lv&U4]=22nӒh8Ni 6c,/PPBE?9 hÇ{~IJ(}asN1_,59|荎&O l?N5VTaꇄj(P `2ҷkw {DZe|;U4C gJm~>噉9-ϺQ.b9˹Ox딭SuCQR} :clt&T==e*it#?v"u'Xݵ[Ձ2+I-j鹝:[} vU ZvDJ TU.E51zaڃpZ`H2ud[ݛ+#aJ%r S.ϑ`{E}dt$sM5bi5<;b/_ Gr ?vYOAI*H8%6rzo˿<9>2D7Hy?{4}$@=ę:u X3ЛjF&mAP^Mnn8*j[/Fk T{< WLUKu 2襸Ga- o`9Q`,ys#5MNnC-=Br< v" |A([X0q`_"밀g+}ƋfW*1x,.歷k/>βpF}E !rKsJQ',r8#9j; 9Ekڂ&L'Hv'vL r ǜpuwō[)ƫ nѬpQu1V<.J5vlNtYbK.-F2۟DDg1U]$mtDe3gF})[k+񢥪| ؝]"kBz}>>" {χڸm ۃWc QyK$T.i/#jqG,6 ^i}ϳfiɅcO#zl ˿㣅U![4_~_3iD1HMܾĥ[%V`@v!jʅoh u tCy9*orLjQmk2\5V=xj1*/(Z ̱;N* 0CdZwϩ- D$+ѫpKv)I{ . 0&inLSΨB m-]+ G/L_SbӮk,҆Z{HP~eyBA ցINcsQz#c) F t>Ot*~ϽN1ϴ)7/d0@A=,y&l߶Oʁb PMTݲTZ^xuyR2p坐{r /Mkf̦:B NED I~L[F]£v8InF*W2Py|/$ߵ:bH-rToA82L26~AhX2f''\mU㠥^]Q7VQ`͇sP0E$K T>J5熞 ;?5ru!P1;!.nS~,Y,1RFzbNOe5ؕ4ˍ;C@V@=+ vO_^;!lS/]2`@׸_D#M2͛ 7lEƳغ&6s@Grdui`0dR%#I=[х{ؒ6M|X(zxk^[mԪ"T/]e6lNvU@LvI[n{޹:G2A5q!A8a5&Qp{d]Ic8X}TLIj#+c#y@)ˆ4tnNvmVg8Oh/-`P1"vwG^Z#hY6?OFUG8]yke@d|}52RĂ۝9v^à@DpIt[`XEV|0K5hO#AW$x!͚Ad.x}? Ђ5HMzة ̃zon揞.J [e:YJF5*D_]V] Iw.K@{L pХ0fC mfBhZQ I*\/W3Z*TTk73J~waaͷ`7`(<mPyDؙ9h-xe^sX*Ã;)8N:'Yp]ze?2h;9|ߖ$%lg exs'mdWWsEMʢϋ‡;3;j VE6!SN%" |`Pr.YF> {bO+g;]eE5 ,cifǡ <jz\&# UxnBim|BxQQ(Qr)т$\BEʙ+zBR硘ҩ)ac3Zy7KjDTQ:^4 w@]fz{W+E'E&bFk5|;QnC<:Yz<\VzN]'ڊ\^RbuåK*G?b+JxP>.sGr?ep\'תαF:)LǴSn"C>&k@w.M9o6|4H5@̃|ɏwP+ uט8UmQ+td~ZMt7"ar1`W- ,~k&ޠw5ٔ^i(;9X׎+z`2agɇL/96"r^v;yhfQb>&X] e5pPs4M=ƅj[jF=肮!6Oxa}@( q =WD~"3ԘCkw"S"f)ᵭחeR؀ T7U˙  pYn<-ɖvy2 \9*]rE$*gFday823JEtP_Ihυ t$X&d>?{ ~4aW,ɫ_Lf>*A67FMKlYL,_)љp㡳-;=lwZ-sE ]&Mq -ltj9HP&,.Sm[u@|H{L/݇& ɳ|R EÃ( |X҇v|ځٷ ޟE4"AV#6g.sqQG:3[^i=@*v)( GW p,Qe| xKccה0.xNQe|x)c9oKqed ϲ{9El4@>JEaMq!?@}O.4O @4$4sAwkaepO|NAѨr 9=g$Xd_|8kΡv3&y+Pxf73tHJظ'E=mHSk[)['qyh|ɡ>Afpxqpk.)TO%qxXPqOZW;ڻDy`W>LKs:ĴGv4e >?`]׸~ G#T1 ^U>KB_l o>";E uYnDgA(h>Q%$CgVH^R1gAz]:˂^t^QPg/tg[qP>] HrsQߊ5_R=lD$/łU-?-LC'{!T ӂRZLJoxBk4 {G~{ƿ]& 4=x+n7qȹ ՛o?Pxo\:>G{8qP9+#˓3PP޴մ!殮%/%.+ѯCd.rTkrN}LFL0Ts-ᑓ$Z*r іզjRGN}舻n)nϏ8LqW(SZ$؁N-'|lau]‚ctܧE#S hiY&S? g9|{ ul`M:"$΅呭;# OBbzݎsH4 K7tRgţ&TB>.R@Ϛ Q";QxTN>D $3)wm[ ^b /^BIۻByX[ x^(R(#Qc#u.&A37D.gVWCIcPB};x`KIZV9O`MH16n9$V+zpcxzBx>DTPUx)΃;H1~2쥽K*E@Xe+S{RJ~V4ڍCF>8.#wJtBQkq&+egn{!_A;D";T^ :0^8].׳XN(MT,-2.MS++q HP݌m#ڷz,k:ߞW"0r9GN24p]Sy(F\"l y:E@{œV'+}1ba!cF^G0ђFw1f͠F?:_Pad S,9:-ǘ]NYBkR;M aľ弣IeCDԆCfgwM4[7(o dM|1ˁd%Pǀiྎ .5k)[/J* JZ5D{^0h<< D"鸎MH^\3+>yN%;VhI^}7v5 OЁDm"W(K̂'mP))o"CC,F[Xmޚi/?"v8߻)'wM@qJ؂Sco]qT:G-Shr|~K eE1q.ɝE4br5; rpf>vL)#e*.&d%Im#fuA@z/NC6ɧ-a$ ˩,#j*v_G @›x ADM%2|utxifܭf/|@yśLFx#;O)uNM4f7BjߣOfQ쟽| -שظ /s]IG[0Y\Lv|p傓mU^ ay>09vc۲䰚o5+ASՐ{J9k\n>ccNLkUZ—[)@;+CvaЪm@ADbj$l"O8w٦ˠQ!K`,KQV `Nٶ:n ANQvH)l/+uKSIcF?oYG-I ѿ^qw(э`Fqmç)a"y-5X3%)k|D,Xr*ߦ(`1?.> Av ”z iϒP/o*c 躩:?38хeTi.7"ڂYLY2JE/b·`ҼžF3V"UdP>#`$q7?6:[(vVh=F[ ?*zZDo %d) Tɫ:~E|h-h3(*T)ccGK ,SvЋŪ4GD!ˋGS]yuX'z6+2fXW:#h0@jyIFlcg]xxuy:*Hh=p$Ghv%kM|xԷSEqkmy>M&(IUO<}LŸP-o~$H{K.',}q:ySyK &lqפ%A^xTUzLϚ)DiUQM_Y>V84RtQ7DrMp8(n$u3=mo{S)Tߘ{F N+VA-OAmByRLBk 5/YJ5 ʝ* &EQc.E`?&aYRW4+ a׹E!@I. a Tn }HUDauNi.o$9\Dݛ?Wcɍ"Ҙ<,rAnȷ׋Xj 'a2n5\FCd ,ʥG0CP )K',hp﷒roJ;)!Z2 Z3]%p!gei'K( 炖mbEnӆ(*!?=N U8LJ`矇>:(AcA9̲S U `GH(uj<_n \?Ծ!J,iA~KÜ:0IB w4Tz^Y.p>+mM|KQW1\F;XMZB\ x7ܽqwoDx#t+e=g3F};>9 ya՟@^{А@ u-GCDZ7*mܸ tǶ-~z2y|zhcT)u#gUFDXN!6tb\7yh5/ze"8JW-ψ:Ece;Y^>'~~Pl6i,XI}:lIg,D!qXn {;d> o[1ق`fJ ?#<+r%M {)vbOr´T@#ZCB]x{BJb}Vi8SսK̘ڇLtU8{ (t'B\1 =IJqْ0e.aOtR%4W/ N^pE,ŦToG@=T=FÀ 4-F>If䰗zuPre)2́aHYY{d{Λ)LE"Hj1Ub3爋>?b j`|'!CbŞm#"ԊhHdZug4 ^L(j_dw%ʗ0V +!,!0Hmv(35r~K=g5Ez),Obg rs} P%)]+YFpq{ӑI) e/,pIX+-h{'O]{xUp5v9===mv>'1T`ʗ*'mV*QFJ q`a^8㗢CiO{zEm{&+Ї2e59JbKɰ0=s' Zt|elK:7!5Xr~+ؒR|ȷ'uߐR%(JU/2{A$!ӻx>Xh=A^[;o^se ڥ &6fB9 &Ei%0"!@ Ih}L WR$GXD,%Ƹߓk~WC{m-p׸ ?% aXUG'W9irU<5R(9 G&?fӜ[0Cd:%\`H1)}5?ܘֹ /.,,q //(8 mkUa7LI`Foj 6AӣԚy939u* R3"㒙%ubp|#S4 LɩWD R +s2@^B\xA/T1׎蕬Veu. /p 1H̵D /i'-a0lDT+ =_m]Q`x%U ^Ϛʷz],cɮ^ǿNݯvrOqCl||N1mBlJhu>xuKw,f6p)}&Wjbc#|16!jqu SI\<9@I{Rf8 > 7cgM S].+qoEE&yf׌W#]RLoKrQEC8?te7`,Ku8RMVsrBH<V.l&=T,Kre8#S'OOߦZ*kAwyEls*ZVq-Y9GhgULjNطvrtS|̝MO4qԈjfb66 0.=pA60YzO!:H _:^r{ۣ`hh$흡fKWx=n2]ZĊkZrՎ7.ۏap+c5KƫVsyucgaWj{|Th Q^\5 F_7 l;1BoQcU (yD_ٟy,N+˞#=sl]z@g)Cb?[цne}O 4\z$ nJ;=`I @A1a+ .\u=\]?:"iInwŽG"|V-Ղ \Ȋ1Mk"`dRԅk"SrXMTL Zvcr@"y΢,e5KRGlٵ[7Q9H͊{S>@VPR=_هfUZ*ۄcyj['6y!X MkH'P];_lV/zΨ-|yW ޥH+=]v}>ڴw7fY}XGEZ{3(Jكu`EܥMH#yȬ\2pi+ږ$oj?WqtF7! 𢪔Fm),/ʃ8@WmR N.8=( &4&L'#3O4(9*TH,}jCT 4vW,25.5)M$cl3ch(Z$TE6)h¹䩌mOf" Y&8|P)I;^=#QfhߦU̐&zޫRI*Զ>[يSܷzH¡15G&f&]?m;QQB6ɥ c#nK*#eԖ'Lq&YK&b.;f@dU?2 nKQJ)@{+urޮ5R{fG21"\^^KhhY֞Q}<6զbX`' ç҇;T-ca?$Z<#i7f p3 xr-HJ[e&|W5OmIbQgpYw w햓{Xa 7]fΒ ]*3k䆽 8 zťV:f % =CԷ|sLjdvmnfl\>f UXyבRDt0=5Uy˜Ss~kd$Ow&`M-e6D||iHx63u*ȳњ1`PbdH\S<ۣH \ \LABcI`ssr(< 6BBB#Ȟ%^GUe&vҷbqIrxaP! &>!T麻սn?=2jlD mwk) @lY2ݗ_fG,[Ư ۺڢdvɏ&гA|Fcĉ&0ޜ&f\'3}e [lԦqWQG.E+|g. _%ic,jrl ީ[7]s_'|M0F[jj_NXEB-lV"30#><;ϰ 08hoPnh+{Pǒbk'g8LB/[A| |M( P+Mpݰae;K.Q=Eډ(A¥ʮQ5YSbM[Y&5գ}mWgV1gAo*t wMxT|UL-pB$g D6r\XFNKa u4kS2cBmV"=1K&`]vA~o ּeMxZӣĜd*hHjRxl}}* <(x=APxRQNSP)AS~B5xUG;m>(q8%ތi~r> hҞtfynQ .PGZKSq78} W'CoyOB@dO%\6~ -cQۛ,}'=s*/Q>γ Ì%bK Y7]F>Iq#XJj"#(j %y?>/s1]!<>Y3&}|b[^{ ^@JD*<";ْo$+-7qmſ/@hq/^z . ȞN4Ed;<5;\mo bvk_ cCGi!SS{]IzMhgr>I?Lrow;?:2T/͓k28 pr BU-56( ܧ Hɷ1DìJ8 벍wȚGT⏈(;\*: ګU3ƷaaI_쉇1T-! ty PӅx>#А-%`oxpNDB ׂA#jR?q8!; C&:*ÒF8 n.N&%tQ" <8%CJ߄2l_Ts |Y n{c _&D^͎-cG|p?SJo0'~OqS7XMF:Pڰ1$#wW1N_VC0HKԪ~⏔,2[Az=ldJ[\kz+7" R;ea πCgA"\)7ĩ㫗/J-$[v5}[Tl̺І=dstCqKyih;uDb \H0 %P.5zSpiͯ] K32гZe&)yEogp9(vva ٖSø+6DRg .;~p:GR5O\xb Gz$P۬=s4ߊ*<95ɹ< l8*5צ(V]vg8CU+wSZG$ ߉/[eNZSMH|DtxqeB|VXlw﹀^MtVwyNv1S^ȍhOrU+EO"QoX)Z2z^&[ F@V\˴G#a8gKN;lULqCmL%(Tp1 +o``Ibg]9љZ9b2!jiPxbfN 4>SL5y,h[QUJЂj6R00>dk~;ez].R^ PphZ>J@loٵ/`ݺv>>.Fn3e[y 6޺~b4 *$ S4G˄c5s3K☗]#p؍;j7BclHʌ3s',xXϾwmSGg9%-\H .m_)Y"Q9ZΝGnz~m?Vxߪ~x 3I8TASgnڎ`"T$`&oQo`#M^˂.Cՠ$f-T)K]b"Y!A@*EGw=Aı- kB1^ap贑줐 b9S58vD'ݖ顟V>/K}?`ڞ4k~1nupzUE`2|V#|A->W+J#Ƨn-.񛔳ԞƝ$WD"^R,]PnxG&!k%XZ ~{7FV'|,r S/  PƏM6  T pkۀ ϋe%o<XZ<,h8MԷӏqҪJSTu:yE.̩U@gP1h Σ>ŤQ&&A %K*3c4q70|n3$LM#dLTyw%z2wƵ:Ceq"gAH46A聤+ERN<%F= rF 6pΏ\ДA \#*U\ɎJ7viܠA(Ȧj)JUOB_4 Z/^uFBb f #k]YiZ;zupA覲Ƴ+qN"^5Þ9 45R"߃_\g,Z=u"By\4*H_T|ak:t51hȪjhds!g FqBzȒzI8 57oJ}x{y-џb6gbJuDnDwoG3q%3 m [ZM5 il-,^ljUcinh `sP A*>#)?'P0CO?"(Zv*4s.MHq#a$&"ldcX:A=N[Hy;4~ΚTX-SfsyrZ`!C5n't@ܧɦơ*e pl >7VMĸҌ"Ae֚ULRy!Ө~G_,DŏE,;Dث z(KH=VZvp& \/ǐ>YApC* vZo@X!Ei_Įu2'YC@OIy7 uߠM+PqӃkgL^ϩHڂP?8K􍭀jj[8Pw) ^L#ņ[ѭmpwY;@(ԓ[פ_1>ېc{I^?J wzkq#cNJ^UDdYJf%R]O30@H- d6bG,B,yp5:`wIXGෙnޞFeCr}tFn|== &f傘uo\#h\&٘Tb3ԤVN*F9GR3 2)tq4ui|:o^c^ߌw $hc5dcsmaSL7 W])CRG?5BW'5X//3: ʒֳ ; MҤ) r䢐2U {ίм̊Me >JqåwB[=6t"4>I&?H+S%ꛮ97BxK}ݗKNcs @>T]kX^# ֩:R> ~UU˽bD/kH'_w.1F֙ =WO&5U˗#֡ G5kԶxU*XKԵEȧ~!x^k􆽻:aEWMV5ٿ/rl E$ @,:V{ xT,ζ.Q%{z%C~؈JDs2=i+ub\H>3ލNzs{,J~L0gW.:vfEOdf/x(1fqOi.:%3F5\md0)uB{6عLlGKa U& Yi"z 9qr(c"mpo4`g,}uU|"!Yث-_ RXq t,+b5@Dߪ269]\t 9S8Fo<ǘL "$[ f<1'$ec=!ŪQ XhøKJ[әO^3FrKj>mB5ha1&udEidQER:~t|-L@rU(9f܆`ns^[%YGWj_HL-]kE:A\@ 5MPE>"kzǶ!aW36 `j)*F3HV=po*EμBW_U%'&$w1 PiޝQbB/.ש=kr];RzvʊdS4N?Z_z%r>ޒ:@~mt1E"۴lB]ަ~3OL&p4^ @cR:te(h%~EPp.&DȻ뾊>Ҋ܁Yk3yRQWR$6 Y<}( jxM@ 81֠/(STeidAiy}_ln䒈#d $cUܺ|T6$NthkЙ/&cf@\4$AhaZNil}ݰxG%KՂ9Ol$/u swGR6W~i(j= r•.St,,;^ymP$ @.r8܂f4WuL迈QԃlK)?_(\-qkG L|_~Q!U)nD%+-1=.j)1s%ED҂Lmd@#HD' =YvG=5"NO d!oQ/>頲m͏کlF})r#ɮ)\ 4Iz΋c_ `8 D>VQmbtsNb֧3jqwktL;//(CٵmP,c¼=k'ht/]n,( uuAh3 83@R\fj5jgNj`tq1<"HpBr,;[Aߔp.g^V +A_6HP)_8PxUɄuYU*3iLLe-dl0HHNjlU(0:L̪˪Owr20EmjũOwv!'5{שsy;n7-=M^? Ρ\AZ=1Pv jKOHv IG=䥤j{̠7Qs=e dlaBW1* u}>h _' ӆ5K.GPc\ jfK5GRrŲYYL]SqQ*>X ep8+'[KE7tY \|(.´-Bwݬv;KyqY 2-I-2BG"JXN Bg;zEU:ӆw.5eܥ-Z{JCdМVI 4l7__Lh:)фW@&[٨x,y{eZs$$~';p25uu7H0oY1<[HSa0CuR1 BH-ڛg)yxBWuYDv:/TM~t28*{lM UVo~VD +<8xd]v?=y )oٽ5in 1PGT='51 ;`~>Y2 4gD%呹8)foiᘁ #58[m\ hteڝ%`tv/P~rӃ":9$䟤zMla lU?#hR ү;6#Ixbʐ@(U3;]g& Wu\ȀʷP)@l ~ӎ$<S4PzO2nQ 2]ʯjXMg;AI @PAuʙ Y8F?[Ci.$F/aLMԚ'QH7W8vDq`452eȑn>=6S% t<wYXY֡VO<>WC'ԀfоN]=Vx)ů,58RyDN#r\~)XZ \5fE^)-|BNlTM#;;\<+5"_=OgXVs"F*j)(eT3b<.Jnh7puu`m2|Д^$G'`q줐0IIiM" cl]ȺR)exm}iN*SCb*jj0+m=ƓB\n(ET#pOFA>p<r]A)U {d=#xVIIvJR5Ė$h$JMҿTAE&L7 PnCޭ~E%NSfgiIRzB(;u Շ>E*|}j^q?O$_E(h99܎+COp @X۟r@3S,wrΑﶴmN6w'^t#d4jC ۫aU}Y9>cneuT zoΌL p1#XjlʸN3;`ҼmN N^߲,߹EO:NXL^]lkUVPŠl3#nqo.ea.uGOnG [Ͼd_`;a2兟ȋ+ZY n T;\\r̦2#As3(h5v>#*% 'j%*q8/dŸN>?dƈ)g$$v;?eYڨZ/0h]!]B^3+vSZ 9wiuK?ٰkK7mԥ #z]+&MnfVUӨxX+^*:'?x2seۺtJ^Ӭ[gYâaށ:WQ쇕pV knMk_JQOZV;ĸ9cɍ*zwn8R~0p@5'{+9*$dF}oCld͔G%{"`,e0P(ق+^:̡C4f?w|(@IK~>"YGUdz*{kW,qHlpPNEq[ctuC$8#[<hrL}g2TKtsozF?isVƓ( &}]lS 97bǢPP}G*Ο;Uuu GhML*Lv0jVU94Jc4 Pqnd!֔^L.MULW; w'a#L#166Al\ɒ$.مZoGA? ς&AN~g_- ¤籄C Яm=Q]HFH"# ̍;[w6DjND(ntr  IAN3Hd-Qͩ0v& 2 ,=`y\E!ܡ1CBkoワ."V`*X*x=}ٛx!u 3;9}6u@~$v: psϮU !,c;#q( Xd5B݀X rYa8M1S6گgnc2Nm"Q1vlNSS9q7j<A{;V|ABFloN`MoM#t+|C mZ TTB_-X:Gص5RMX [ Vƍ:]P{"EOQ$'sZ08;=cL,[!Mْiqq= cz6&OC'!h+ړLm=vi~_G;Bf[t H55}#3 `@P҉cse[^}<;uyҙ=JcYeyZ|li!bVWrN+v=; m>jz~0ř#DCHCsI'[3\edd>ZN>%b]ZJYs[A_1EV4>첥= (DdLg1XGk.$},;;3Uz p(bf`=y8<#ShmWR֍Hѿ; DqjT@@eU'u WkM<ݖ\ժ,J "90oM!#H<]懜,2Cu%sBb(1 oƱ&GZkԸ~f,7F"BUs l8k O9&sC*}ZY Fw|ryQ>] 8/sǯ (FV^ӏv~iWx:`u*UiJ:diu &{+8fYiQjj_\B~!p[@:#?iؘfV`F$iWM/6cVb1}k?AK靴.&-4!Q&p'wufMG5EaOkk 9|mw; U0Otu.0уcӔSTFlwBmǫwΘKd|{U]V@8so)ļ6="a m?as፽sHf$J螎 ulR8g3f kWόjZ1{0` BU!<6hcoS ~%bF,l-O":PQu1̐@tEN?g~Yh.qB˞4JI6p'{\x6t>d{̒HXaU]0S{p<"mPˉy-DبMtbbsjFho56Id L tA?[!ڙ%'~|e P|D?s5g -ls`q@Xx6V|&7Wm̽jE7JRH$ jb IRʨ؟qNSCD(ͬS*oʣt0 Cmr#w5-En.r>$=-lMTY`!7.oݰ-ubEZQw?Mjh_fЫe2Xq,`DU FZ |7? GS;Ԛr<.fjR]CQe۩Wn"叐UDt +:hT4xи |N0rtL|y$m &1\vi6t6ecs*wI& d)1O.ؐU7SN[ʏɤ|v#_‰JǺy[t%牶26]+T%n[Z{GVd:!l1(lv>d4"4xpfp"qpPkKo绞-Җ!X֤D4EE* T w?I(j4C |)[eWMx }L><9K [)|ֽZ:28Vp3 bSaP2->Tn!Իk-eCU ؓGP)׃4H(hqSS'(hW ^X#$,NlWB?vtXRӏ~;X>WFH3Eu/_K٨2|xƏ5ȴHy<{6>֡l7XH}IC>?q~DEØnRXgK|MPk +;`y5&tdyxYRk# bоpD @Q(qQnQE=,?^Q = 1ߠ'֕8f{o̹iQB(%r7 fsךaSqORn&Qbhb_A)&ø. Q8?7 EVMKXCibQIO'wL/\t6m?]HG(y"&,9ď|8呝K!B1kw@K-&pivgڝ< /n`7 7]ɩuVbSU~BoW0?経0HD,bsC $}f_) l?{V'ґX}c̱O#o{>o٦Ѿ=yPluUjS.t'} R\xǥ犴ka o2hWYSYon IMC/sɁ]ymwYlpz:t!& _ʔnyX8Qړ|Њ&s1yxIy.ChLŇw) P4+(1';Z x#fimHQri {@!8 ʾB9Xo7#0YJ]<]Dymw՗2Tl: (P]pX7_RabeH|冇P=yȘUkpi!r@u6Wz (-i؀V@"RM{(؝pnx\{H^Fm JQِYg`-H5?)q9S f;ׅ@viXC>/lzЂ-˜YĦ̱m&r;/sC]<<]Y]4%N3SBМc -5~Lmz;pl6j|D>M7wlu^wBo*nKވ-]wSP8i]n+?c1I }Ꮈ0#z>xo2*Hn+<~@ S %ɇ$@i7sǔյ"%e/悴\glU/#6"mC5pǠM4fÁCU;O8%(Ws`=k;yk?,G C>naOM "|5KL8Jf]]LvdaU'#@5^<bǛVBBS$&a˼s ܻ{˷*89\:Oo ATV)0uΙq3{nTȎ4 3\ጢOyȊ鮆> S%}3H'@óy>:@*/>t+{coO%ꀪjNԽƳ˥;ޚac{, M0 ii{ ֈ?O^DHq\0ND o#(A|u=䤏p,3Ͱև uvnB~XUKUt@dz<1Ѧ^UHnNz;ee=ݷ$K*d x) Q)B;&"g +if\n* h CVsc=0umhDq yQ ^jn0eۺ;~@'9gy֫f|IW=*^@R%lza=ǩU eGBX*POV$Dvːo|Iepֲ|?:|C>;T̼+e&MWrP nv6!-qZo+mw|+y!ϐi4 1 mXٽ VigP{J#?3I묨;ǐUS]D7|vꆂ9<%O}0URU+4tl.Ädl>\c!F]i bٺk0TYHO~`GUWà*Od|aK@bUvsvq$CH^>Xle gbuB@`&xZI`Q=pxYdp%z9~$<0 jRLlm*C.٧ڻ"޿Qf:$!=iml~?e;jkz;.U sU>i*޲i֦IYZXKÌ @w;e|j$&X4Uu!;lzkZk~Jqezb#k@K(Dҵ HڻB9#Pʇ{;Տd~D:MLt+W, eW2w#]'WKh<ŽOWz 8!7?\%8>jIž)3t.Pv4j$ˈiq)#ȞJ^#l&f MB&BHЁ~T}A7W-i#ъs9~:w\*1!y_3cS}]ɞ Muv;6X3Bk02ү0>Rfɽ E94rO+K͇MI:`z3EK `>: +sơhх喂{ A3VvlQL3L'a؃"mT f4gs7;TT\Kǽp%kdˌm{>0> W^u9٩^#wA]C-˗%#qN۩󕁧z+ڄori뺦pdzZY:AL_U$ W =T&@~t@O=7RnM]]VyKA&<٬H'}.S ^/0*[K1ꃐ7:fO;`IYI*_Zݣ^C7)_mxÎ>}" yD+}(ޠ]FE66&̮тjR%6J.ܭO(h5ⴸ=9ɕOTuMBq eTU&WNa>dP&h[yლuׁq_77檛>8vxm@ޫI &[Q-"0Fgn7,jnPSTZV:<4P %:Ъ3Q !5͓S @CazA7 M37rznlysg)gzY`^cs8{`,W\fy0Lʘ#X.0gFqPBo UdX]_j_'k MXrLA@r.swJK͈I«jAܧ]ԈCFiD4_y  `|a9ŷLxi0 \ߕ6DD0!+(WT+K2{TrHn`Yph@p6IDzj㝰4zfAr wstoĮbj]): |N?,D S&` e~|/;4ې֐L`x\W=Ocwǽ%EWl-/"fYI9N 1H?:Pe ]ِ:0 ug(g׈1yn;_,D9F? /~}AAl{}FjPà\oBۛ M*hKu_4~iKRmu+no`ѩ&(n:J 2'k<y/oHQ1V4#P̩ zaқ5H' ʒY]:%O5j~Se.e -PA|x.i:[+zIOD/8h=q q&@/<'~d6# 2䞡1AN5uO!}Cב#wXEm; 9n~ tc} }Jsgk;?S?#K~to*p4=Hf>%1v|2 Im[z@o@c</K[.}";2EkyW "׼!AȦIh{~iл<+P SH+221evOFd59 ̎?rE7q?1V0jTڏ4rvd\_IkΫQ{^8k 6䈄zz&e*Mtz$5ndeA4kU76RA{IN{㣟Dݴ.n˺Id/J"C)}I"ʯC5kH6@$r&9|,+k7cjQsWR1BժEF:=d4oEX~]$ؒR_Y2ʑ\b|QqhֺE®N )EA@N=D+6ȲD3/˲m۱PWaWR}"p!Or%TsdI$`/ԃ7ka&8d ޯslS_u^FCd13 ɳ>kҮhbGKC,qrPغ1 T_hv̹An"P{ 6GoO-";{pg.w޹[Kg n'?A.v@y5qbVdɏ6 /]M<9#a{egGAa*]~̡b= c1_t]Jvwr^sxGF8Yx TͅڢurVIOu2B*58xc\!a0 8~)~sNn{_.Ci^/\`wڀγ|]#vcmf6pZ+})SWخ >8Ƀ2v( ?M2N \;,URWaXWDJrx-\Ŧ?`.h!,, Xk2~8K<{QŽ ն)t┺Q2I{y˭>~ƀZR5A:bI ÷5-R]}z>v; nV eA hqy_zO og:JCx,JQM05,֝kOn~әމʰm*Ѡ&ɍ;ۉ/bA 7FmG^l׹Јqbl.D8Ϛ<ݜ2"+'gҷB"UCNH6}4 r(,%ݽB- #"XH"ʨB)tTbQ*Uuihf;9tAff_ghsوP~U;Ϝe0F?S^D!_bllہ~7"&CV=/s pKtq;%38@ۇq~;v6=%]= B(zB,_`& 3A"Y HK/aai 9[qD8p S8Rѐoc0ݙ8n6d\r8A n`LЇ'H:׹|6ËuQh_9_},oآ-h+qx>yJUw-̔?}ke%ח*m9|f2xKDѾI5ogiO.;K g ~ ׹ԶcW'2`K]2Z!/] վ]WPbhl̷x-DU$*>ىwt ~S>=|H:<P&̮ġ"͎B WY<C5goMH*?E EreԕsZ"T8ݿ1f)zEC.hhd]GG؉ ^@C*+rS#plGlθ`x C擖aeGCTwaKy_;nhLZFsnjNjTiK{PU#_w;}wxN 4g#QM6L(t/~]FTKz `~f?QY8Od 4;7$,SMʭ@s0¦Rڠ{QHo= dPd/[\VT(q;/V,G>cm [QJ.hV9^t}(%&N!=V:89a^==aI}\7 V}z-K@-U.iGY\)+W% gk9?(&6Wj8)#KaNL5BN<#Ԍ`MQW\ś(rI>h۲쯎u,Cצyro/㴡\]q 4w]+m!*)cF!JlkŴ~-Ysw)b 9;VHx%.>soҝ R{wx/-N8m8.4D"ͅ_ |Znn} #Cu)n;G_ J RU>oHcq"oV%= \})cLZ^qş&?<)zg@qKΨCHՑ!bv?Mq;%\ǎ 0T8]u֌iȌ?\_0 v#f6r@MUpjUtp+x~VJɩӬŲ.BCCVc(kYut)Ԩ1Y爫f H.oY?/?Yl!|>_mYnM]K(zCT_hTg|۷}~2?ka?|]my&=޾auTq86΂M ~hd,zjWf'eOfKC=& ^TRB|Z\LJ6d y8v,}( |@;b+Ժ~c*;%̥qɼ}:p9j[24t|>>(= ƨk.ffz%!,h&/sX+d ͔6]lrv/{`H/"rrF}( ;'>'?1:>o$OlRj)X'Zic!Wc3Юܨ\22OXf=?ڋ{dVn) QLAlSjvRy8mT!Қ ,{WSGܳ_.JFN#&TccV]{Y?X'jen_iQ>\,l~3*p}fTv",#~59^9GVمۼ\=廬:.^{7|nFƩx n%joDћݘkbAdC h]\gsH~Yޯӧ7ى Y+pG^oiQݘ wgt̄q>r q[l:ձ!k.4o}t;#0In.P!eKӟ;AW&ʤ@jt`ĴC9L cn/EaDIs0Xi׀RȾn)dv#<}btR{ /`@O.H7Ad2 bLuJTL#p$myF^'Ea7۵{xý/D6|: PAP BO-X9L$R fgvQU?8J(04x[V.9y9tW̹u{$PD 'C5~@sMo4Wz>@PֈzArɒE0P1e>A/HL0bK!1Bg"qowuƷ۟P_PfdQ< fdm-鰧0$)aN>S&"vqi #h,yJXxzzN8|G ؽBm#ID 1b@# .ÈS1A jQ&붹ΏLkNv{EYZ.HZ4%DJ0l\t )H ;*,a#3VoNZl7s RQ1:z ϛ T+gQ\^QgY y4:w`Q& w FM*Z`Q tMWlsl=g[3l)QEgjJ;;obdY-0^J_8ǫdVAp5@I]A! @~{u-X #,lL‚[ϨҞd( d) _ -mgqBkh7<<-iJS&.>Z~319=3?$RcJƩ*Jqj ZTO ֒;maQ8\:( '*9b$515FQ9I̺SxG1SgPq*k8Ab+xk;6{q%$Gw=#W- ܱ3 NŦot!2%)`cE:5+S7T><޲:4fD3q*}KJR@'yq0[ Ԛ༵=[6@UhyCO2[akf%.$ÒGxd/ʣ+)7F@)PcBP[k AtV:O{4=g˩8!BĽĮ9eF+6_XnG`G⾺O r|"S^ܟ\p[Vϳ&Ezzذ I+Pj6&ۅ0%ug˾{@-R}"B^Y LqcHyma3DO6]F.ݾB YK6;fSi\']HfNB E ?աĮH+< V>'dB" #0 ݒ Qm|J8}X{q}AVϑHшv4!S]B Cڠ]>/՗TͼfGq __@nWX%; rSx];Eu%CeN B9VrSGکזn]WѼqq4tC+@{Atb,efpP a 8=x YZݸnYtLAѺzCڀuiB mY"Sצ* v;:A ꈬYђ"x|ABVY6Bk.v<]W-D yɲ D.c$JG2~K̃7槎mzL8sFfB"3v<{%D_[S gޙ^;}pBOΓDdy @4FDŽ@ ŗ?P}|&ڲڅ $`w},JU~Ͳ`: [}ѾF@0[~O,ATY,8DAH00ȸ{˜I}M4 |$D { Q a%an&Kڠa^ӈrY(ׁn٦Io!LYe%K s4(p`9+ R27XѰ/ sE8= 1W>:6{Vٗ@A3 v- k~5= p@d}e6c}۴N)cA3AKT[ht}P |d9::iQLϐotq#~Np+.N$ Bg@1 ,3Q~Y!MBA͖ޏc@Ů{31-fW߫?=AgJC0971$FJcyuЉШ;xDs|DI^'krW9F{]DB1O0tN^(J&<&2ic:[(5dEE&ZȵXCz|JX1Z}Gա5# $i,^{0H>9kiJ>u3cRnBۭ1t6)*l"g 0+#-@Ow+W6 e@9ƪԗQ ;J1ǂۆ++>ZV"3b/1Q3z#( P #OǃQɽ[2:8+`/MiCSOceZv~_Wٓt%2o\'EUSJ?rsteq=-M?57Ol+JNMP"%Ja(GbRkg7?+٬[hڝP'ʆrcnDa) Jo L{M=LF'Dn.ꉳ/*M5%n;w2iP1Rao!?о86aЇ۬ۺCk?YV.`}g, m{u2)+HL*I^戴B;a뷋ۆ gɉ0ȿ U +>i8A빿S A1*OBZ\`2ƀ4 %_ԕռfǔ =73٦3h!MkJ9|7zcsv)7=S\H/&Ss?2rJ6d tOO W<֩JGL=~)juHSۨY1B Uѻ3zqϙ/|RapY+Ma8b?/V*yҾ6=ĵ`HGϦS|2JH8?DHoKePy4Tk26*<gy4B.i`sbX`Љ(i)MPvd~vjyt :/s ʇš~`lh;d~e |۟14JmLR]6ڌKIq󍎐D`$SR nkʒi}{ !Q q14-RCO^_1>W^WxB>4IWD  VV7$X۬Έڇ r_S[O.V"y~z& DsS%9G^y ~8?d@=c > qU1n(gb|>U#\+::za⇃jлF=E>%N.jv~­ kVn7T(=BÊ DRPOjV4;̽zi ;˶-PyTb`'&RU٦[:S?yOw31 "KĦ5d4NZ6N_|>FZCoW'e/2![Õ ȡ+>HQ l |(%1'< ~u,t{jJUh^\Zr~jVgHR&bEV̂rWPV ).S#v)%8L Cs9y'"DaQHc0⌦v7s$S?11T8>^c gB u:@ ^Ƥ+err'@Lum+WT;ۥp!qNV*37 $rվfXYfe wb7ȿ\{-_ٳf ]t͌-VXH4izջFqq ]k-ƥyR$#Q M=䄻NGTzJj_h֒ 9X-ڬ;bF<"^ǣ&Lz@~41`dߥq㡆ч() zQ'.U8X]Kmԍ5{A;+ve˧39"#4*Nd n}5xk}*Z4ӻL5$wҸ5xP1 {KC\ *QYq@*%Yϕ+iԞJk02eU([Jͤ i~d#:H0q#& .+⠹?WyIzqX.^XjW#\vf 8VhXUG9Գ=b#)8BFd:]`6YF7>eIַZþiU a*Jv*_ ?˸zy Y6 ٰKK# %_Z +(J ȓ^< .g ő/0BS381#xiJ7^,HN!<)Ҭ +me.EX_ ɠ7qTzNފISiXi#׀k$ggU/>aO{)E,E#I]**"%~O[% dk>0Hw%KqlΉcD6z@r!=8|6)xMBy1ƒc#v4hVg)3y0BL,Y[hzjABSD%i:3]]-֏=%wHmVKܡP }ezlYtl:&Ԃr{A4:k(;o@hfе L!=`-ڇ,!< ڡQs-/3(FsN@~8s00?(ܖI92m:k|-1ռ`6(L鶤%3 n}Q$ ̷ Ui43fۮ_'Fm%#XFyWF)Y,S@F""ODPO3)Jpxc?b`㮊7! $ތ5{6d3iov) Y(sz&/!SǚA i >,p#*>. 7}.xƞ}{A>9w S댖7yjJJ^&DQ %Bi4.?m5䣴dr,4ʌ'<_PzgYx!#jwY .qAuys\Md,!zļc3x:[enC-O|f+gɜiC++ Kc/5&\0z Ge"7aOq iqz&_ɦ}/S$E C#`ݰ;ʵәL~GjN,2etIhXc7r|%kЉJymnX'P n哫qWr``~8BLdbYjtYj뒂 uQ[﫶 ď oЩ %0hN RR&}:$!~ה7KLw7kt@ \A9vWDdoi8xg -˹MGzw\AIf6/c(qgLR,R`d*W:#icq{q#x[P?$-F:F9q 5 e/Xzj@-k1+ uKz Gp̲^䌆esZ ;p6_8џpu*5gef{d !b .$>7%Jb UDK $+0Uup)X 7]xW=_13}$'_ͫ  U9:o#4D CikNiP0= qw݌MqT>/*mJ7-[g+5@$ `nG/e)gS"A% !~!49#E[?J~|5.Íڝ<`1ś*KƜqgkU\2o&N8Za$ߪv}Hݠ2w[O;Mfeg*kI倃FpL״U(TI(Nmߓ.X$mp 7:$@M[\]bTW-œU>1g=4V?ބzwaxz:.V'-E!S4leǐ/A9D`iRcnݔenASſM 8k׺_0pƹC2(VB(46M:( XF׿{OcBߐy>20OB<&-5j!֪+a2q"oo*W9$s@эOK W|p2 EB@!ր@Z~'72 ,Bm{+4 jb9JA>H^BW8(0Yd\k1Ȏ~62BϜ?ypXs/_3aF{c2M-9/:,Xf0b~RՓ6f(e=)Q4\8@V*$z @y~Hvld?6sc.WL#w򻾗3 &™3 b!UW#9EKf̢!0},BA~ +tUtnl 'ۑ nƩkJ-Zh,MAܑVMcIdeU%^v's@IabkXXgnż^]EXjskH~- \i̋>dՐ.i4R[ER 5g.i6`4URbM: 4c \);2,8;b3U $]-=h)kL'Yׇ:~%N_RZ&.2^Ko̓*TwRϽmFަܵjruE$kA%b(JPq͔iC览m(Kze GqgJ+wβr1{E޾ i|` !Imepe 3 Xk!"Qܖq epMXfjM޴$ Nfa(QDaQ@`xQW\*&eҏ[0^l> XSf,"kXxCjF ,MwQAw[2pU5C,2\l%㺭"lxY@AJR bu ._5mN%V @z9T3jX{4/8 SkQKT,DK^ϝ9#VWHzA4b *WRuUYOؚ̮C<+;S._ǖ rȯ>e?[v"ZLźKT@ZVe{^^JЏf_,e R@%eJo'R%ylO8uIK:#ywU2lA?CpN|)xծWDa\NRQ$õaU)J5 "䣎<ѣٗ[4?jRj:iBTLS|vHks nkz.{5H&5J;ݬK;#'!Fda9uY"oVjˬ1فR+B)X(m;aΦѵϢ5] 9yŅNN1,a.@Op~ÎM["ع[F Qhʼnxބi'lD"c?o^7  h'u)b7ճ0R@<+EK紭|^O_By gO%}ނděҿ=*I5*x^^'&$4D/#g7'L[ {ݲ u;=-5 oZb;hQ>ɣpX@='ABBނ+n8{G~ slϟp@Gm^.-\3Z9So/TpU Wk3yNm:+p3QF%Ct|5075A_ 0@B]׸R+32Za;9ɏ* ))[0R6# .>hA]@L?`7 |i5A+mao؎{*1\sG6Ň:.L1c:в@7]3LU]ئ7;`ZdZ@D=-K.WX@#,LbnH8i۲ U} oحھK%8˷:y4܀A}lKaM{S넸!Zn粢V$]]s..Oѥjp6V3XH* =mo}M_2bpC0Zi΁4z1 %Z7LŞcR12 ;-+>Na`w7aTx4s&yWd ł!lYE 3lgfme}Zx|J cS筰OaN (;xƬb_>cS&h֖8wI9iT@1S:Z]ޑ!MC>9Jiz sۣI%3 hos\ i<g46IF*0.²0F]Sk*j_C,oMLt,,ءYHQ/#8!訒g$եm8OӢ5J "v:չ܂qZrDx3y?pf\4iF^|s90{LdC4`(U``uX!N+cw3E *R? iB<-k@fw *mƶq^o(N~ʸ `买uyiYdmg/Jj_ڳz|}%73#;/Czzf'+ tp,?~Yv&kU$:%p{Q=ac1[DG.v-hʱ-xr#*[,ItTS'Ga첈 M?EwKXB6qg4Om)vˍPzGG[lD3mf*U% _%"ҾdIOI_&ߚ;YcPW:ȳeqa?EU6$#c^]XkW,LMf~l?Eѳ c+^L`ts6m⁹'6#V1/DqZ_ '! N^,uBM:) Zm45!\ҏyX5,ieh7#ۻJItXvW$g6z&;wݫi׷ 1 8c᣼I`L}_$SW?;'7+سW3a R۟4STyqLR<Ɲ8r@@H&A`Eyu Gߕ !pt:xN\]c_q*m%A߶A}qчݗ3'w X\iߟn͋=Zrc&8 @=&A޴?uc5ѯC)\ׇ= 1eĜQo,6mrȡSy E66Ybf/%ZQ*9 Ut( = JWECb`{2ѧN| %xQ/h@,lc\75-.pB?([.  @sI-H+EjܲCE +S\y3)giH.F=U"e^p7خͤMDH)lgd`C;F1u9ð_,1mu|ǽB y1/($goCWҍ9nnUM~ŝB1|R)p(=H+1- $@NK7U!  $;\t;6Uk2 2Z4_ԙ$ SɡiRB '?~Ra[Fa߬i4B*~ asoUyMx6Vu= |th=S͟Uω"}0Ac˙dEOSiY32Zr-k} }]ry㆚Gs%`Gv:ob@R +IW.MC^<48wlvzU\aUCR=RrOQ {h8WΝXҿܧ@<H6U'8I>l X7")>{#f4ŭRAk7z.abJ_ m.3"|ܻ. Ha8h$$Z^ՠM(8ɥzSN 4^AN6[f0pK< sH<7:t:/c 8F|K@KXUHPvbSgI1zj/A4 `LEWBk.4]]Y Ezz$7oxM4)֓0ݠ}ؗ#ogz7r7\c_t?p贤,Ɋ.I&XM <K8ZaT 'k1+FG2=W8Cܞ<)VWma]EW>Z66i)%k.&0^<^@ Γov,+$ֻvn?`Z]ܞbGgՂl_"% >KJm3] V|IQl#ߛŗ3Z~UEd2'מ!?QȵF5>9 3 +7cc,k*ǥƁܦ(>|_(o)>λ7sv^=BV09Pa^_*~dk[8R 6zaUHΉ;lTdGJv2{xMmISEWt& Bp8lW{լhc֡t?KFjoTL2IS*9i8OazKj-Uf(=GQi❂W^!&rLDG$HC 6+tjن*aut'VњN+zO,xbnߣoT`z W*!h1G8 9wRGwKAAןͺ^Fn%jϞ%U֌?ʚ..- B@"` )ʟ%r"QnO qG]KKk{SWR?ۛn3>K&/'jҝ JZoXhoa9z'֘r _0*N^d մuGJI{7^՝J;_:GqA'C.$HMeت ^%-.Hʺqvm] pVao̮YgB"[o"T^9'u4'rdBMX!n62uL֊lke)iR'z "C )9cH(spFk 6fv$尝 s&>z PG={em A"%"` [>njɪ% $]qfѴ <ćKQgeӚLjC Rت&5缼suյ쌆l<W臈})F_8ZE:?v5/M>ۋPQ}*M,xn=ϩQGy(h2L~TB*r3 z'Һ&S3zqP{.@ X$!VpSK8DlԿQع_IoRKWA$%ґ/8Ullg)$['hU cKu9*W`î_ vP <P;}E:&kP߿zh[(T{4< |x 1& K!|a"(Z=vT}N| uĉK@[!,_Μ{(p֝RկvN#&Jb:չ~R6tc6"ʾ9c$CNLjsxmrw?Jvjh pTz FaJWXZDa?<\LbZ}uCP~廵K(jj;=vmia(lhxovְT[7g̗7ܭ%K ?' /xˣY6e %"FKDʍK|άK=I'#vkRoA+JR _ V߲?׹yyUf=VS0I8sOh\Q}󪸥]9B_"RaGyu<ռ',xiU?݄2XtJt7jMV"N1êQuWJtf۲>JTFӮc,Q յ"Ѩbp#U,gZ-X+i_rч8_wڗaK<*gg:V7!uex $ꆉw9LH rLrcE.Vjzxp0ȹ+s K%!!4okߚ/#Ȱ&nyڰ)Lƕ.tkぉ_:͟ЦD)1M#Ej53Z5WR/ɀ'vfҞq#"]F$*p*BFB@c)"zÑ>29MGbcڏiY^cj?A)|WLA ?ho"ZVK,pAI#Ʃ"TGk2h<["v™b2)}{ang[x.U{sт(b _]|iKCV`>.BpT ) oxJ>uYּ)άcd'v½'bI@gĘk^1mi!9om`;\Сo+/ӿiL |iR)t6 [l:a[{j  6gBG'c}2bl8(2UY-ۂ+GStiG:zbU)rlN'9p~C@,^r-ɟt+~G1ˉEݜwVX.ZK붩"@__:b5x=0}I5#Y&myơK`E20/FaLy‚%g,IEVpэ\ vx&߹HcB{ *Z*}h|oZ{EκO\]yZ$ f=sx 1TQɖ MۘD08NCax/~$$c;kׯŒ*~OHlKF 󺺏s{[߹kwx0ka#:ա+ ,PfV叟qиo ϲC6g,EkdW8~mE 15|%DR+B!8#ׂj KU9DkNeK; *㮵5\ۅq@Zy'mEGMFGKlအQI콼6@J*+D ˉ@.3׊0ܜ)l37eA|`,ϗd)D&֥/JomwjVP<| 1Qpm}U܉؄GP?4G1-ډq4V¦KשHJrbSG|bSNg>$~d{2;^VWpы:!3_< 4ķl6'llnıۻvm@c~syԐpbt,sDvVv2/Nlx'D N'ÖN}ׁ@EyQfRhL5pIDɴNv!ڍp?.1HJ^RvӽhTV cÛpyT4POzؖ^s|"EV"FoԗBc&|&N/<f`9J|K0M8D}W w8Ug|6y=Izǭ(oDWEyd`/Z#!^Ŀ{-K f߼*+Cߋț@ʐF!j}@l2%*c %&+ 5ctF8YA Ws%xM_QR^,K N'41*ȢW "^qmZA'Ǐ";ݖ,G= V x׀^8k*6Ze-MG%($"@K&qץ3d@K` XlcpGI,A=.zw9o)@6?{uz BQºZ]S׎ήZyeb\jP+ح.!v^ndSa9+ y`fYU&*.t!Xm4;k>oRTU_rPi#-yeB;*9Sy7`j4C=v+F>nwnG( yp09KVMwȰ&> ;xLɪjĖـ)m,lLAM)0?:ʩֲ@xJ; NCÐMn@?Kjt$j;qѱ8> N`@zIDJd`gE%Y5G*DͶ|5yUCF9Uxԃ5uXM`[۱.#C܅s]W+6s>OIHNq\3(.]6VZ%#䉋"Pք_` $XEYa,Z,b[hݲ)^d< 1n8˟ԣ<-$]wryViYdۄ$XdYX+!V\NJc Ap)OrAuyO,ËU{9!GUZl`|&&gEǽPvߴ [.w)@ldeAfO6oyo\zL@.L rʹrF`yl%;naQr5JAYS6ά$h+ǡfƷ]J_Ps~qB=7lܦC?(:FՎ<:@E2d<7j_fv5;ڽY4`'h*Ja9kX>vO,tB O}]7[d:L/0j-E"ͧK;:]RͩKujw˱nf0π~zxr_Rw3N:+}3!x#uFʯ? vF6ox'aI"b> *nY$<" sϽ0j5z4vFӴWH<7Z pBn&plQe:k29^Xv({oϲ-sMOVHy'>mx8;@hfKP-{/Eτ/hc:]b$C Ѱhܷm(4&E?]( t2@WL&h9{)&XQ!xmN@lfVbDJZNvY Ydd!nGvFM0+5{Kعjl aTAd7%r-*hb\o@KΡ9pJG1adoocVm"PY 0V17o )*(|K`.( IQ #~P\Z')t:5+?l鍾X07Pxj"vACGB5vDj3^QƿkC0m\NKRǡKw#aM1/o:!,183iQ-T~,^q O[?r`K*n37)x|iWPR3MX^^ AzCȐsN-~ē=G)XhfT:Hku?{JQ/;ԸID pz0$RvVPִq@0R6F$? #P|Կ:kF52sSNY* _cXt6 b|A*ٝ8>,Ϸ9 s9(ɛ/ ]()0sg&_eafǸB$9 6ҪW C$Q_G9qKi*+ $w tS4E:p}'u&o^gX# OYe)@~ rƌw=*-ŅQ#MbfI⾽4ݰ5Dc|x'2T;Uwr0jX[ `ԝj wK:jgbs2)l*PL=8!1'~lk?P%I|ԩW3S-~[l¬Izc, ƒi&+#ldo#zN3(f֯5\ 4(,U8> A$W. ʈlܤ%7#mҲݟv{5df>K"E:[^3K2$):xZ%XrʳT\T(o*N\RIJ,ftVxZ5[WpYI$ǟmRT,o)Ii G 7{Grs#8Is Jo6)e$fU\/b; vf9}8L5r=]M=7e+Fm h(Jf)苞^@x a'Mr>>j Y]4Zm̪r3dǀnQ!f9,0/7:dQZӊ8@qīdr`~xEK[\}7LqB50AhP`CD S݅FC.SkgJ4'k$1JĉwsR6.'#”s̞O w}BYkMZ@7KSz@^a^ןL420=1I24)kfh"ZvY_ fF}*7XNq1D3azJD=9Z=$(pyԆOuPLPU˶idl..u6Ѫ,u'P^QU€ Yl2'kRj5%=SJ<sxSwcz^vߏ:a.]=))T>~c\^f+"b0 n\U٠SG^_0y;ԡ|KiBx~CR&S㶚%Gr;\Ӻ{{|+{T iiG0)hQtE+Seyj►>s}QnrI<@\uXAfћȽ˂ȀQPha  jb&n_Y+H땗ԅ>(2B~,CÂKR˰0Ig;~20#BHV"d>zO\ܟ4GYRl"+TIֻ)x$ܾ‹9_b/,c*5H`”RHԆњv BJ0\'Z|Y!o]abO p<D.Ys^?Y;8XzCr|NO|JzleׄyH TKe)O>,t!jKqkټ OߢYYŔ0XsmJV¹,P >uCNn3Gw#,;4d M7sH*׼{ꀪ7;Y,(5AJHp3cۅKK<}ra/  _2L!pVAg2AՏDf.,rвa Ugcɮn[*Ll}v3|~q fQ8lF&iױpTQPr~9DXbݱRY)ID4^[i-@e a*Wis#pVjd zGUON ߐOcFQ=k#@})$M\*6jl@ʆ@¾>orɱ/z.e`VBEjU@ZF:% jv)!>xի;PRʿT#,U?)*~Ł%^̾]. j(wY-vujPWQ ō@iԺ'E[2ڊL'| 6VF(B!'h|S`n!kz9H uQxSi/+DW,7qU;n\:ZjrIg*;'guy-݁-:>W&hndEon zVU;ˡ͚o.yQ#Xqӄu+zK0$ @GcGRsS )i~OH ܊4M !q8SmϾQnUVt <>V27ǛYj(aHדracHyfׄrC}M-(jS@WZsHl?ӎSIR1;[Q. (? jVjTLw-biOk蘅dSm.NpR(m`{,Ql |׮VN' wJRvJz!JÍ٫vxЙNYa*XE$Y%QKٝXV}'9~|7?aW gwBfa5V*4 LթE|kh X5Vז[̼E]%^DF}N#SwDl 0j^T$t5 "#(1{rJD,^o.')~d+ uQ`Xˮ۞q"MX8AU0BDǟ#Ca.{M̲lKWp^pNGW-~$=cA{;iJ5E,9F^X7 z|#L۵&WG)kj䶈?i4y)/UxsKS@',}7[ SF MwyQ,3CwOeeyސw%o&#nZ@\83$:SL#^hn'dL%EpY$:71x7m]Ɩ$ihc=u>`w8%/2k1],*K}@"d& \1ĥ!_sx`\N@nj3Sqc[᮴]@^}"v~SDn^֦H d5FVc:AH*&bVh+g +]?%ԥN-kkPjS 4T[}H96RI:oNPOWRV4u%).;"G/:o`]McH3#/C kȾgDٸDVS!DM弣J->բ-d3~ɳNɈ9&֓Yͩ?ۅ>T.uv5YS^_ (*]csճos3Cׯ_Kx(K~CATw&q{ҀoσaАʓ-whe TC/q"@H_׻XI:/ -ܮ:3sWV=%[@yYdBđ3]x0m#%ee{ѻF~&Hy tخm( #oce!G>e6n;Ƞb٧8SL_Spr^|dq.a%e{AсWٚ90A+C\GnM.Kg/ <1.6rUĄ@Dc y'j? w%٦qKpDFWmNv#׸NT uʁNaĊcoYkU&`3#K1\B9k9X~Nsal1jAK=#]f(g/*OH l/TEΖ5W1QuLbnsI$ANO iQ,Va SP ҽ!wT!0<0 v9އD>G\B%'ǡ^_sET83L V!-S8eBڇBeFyFEW/cjE_Lַ9Sna$6:~}6W/w 80;16;Tڡ]o@ЖH?; } <E 6vA~ؗ;\ΙOd63)*NL ~)9% Tm'2!a%}8T,5OlCEH=Oc{Txa,V63s>Ar(zA4FTU  ^!(nV]<)dY凾>o:!cKXm%=+cT HH=@ňBչr6'L 6yBvR3qT WFWI*`eS0JY0]!&*[\0s{2[%?-D<ܗ\iS|_+=&75Ji֬~cz;<m26E ٬J w ~#?5oRWi54*naCl;7X"؊i☭XX'+z8uj΅g<7-oQP8DFqx^f{ ]ղ$+X-0Ko^gzxQdAys=b1F?Qur[rfPgߗ=\4,v4Qt,Fs#-kwȰ:#V\p+w)jȵ᪂¢ #<)tX*gm͎'$,4݂3Y?1ԾwL!mr斉ܔElq)u~cpVڼ; 9䶚ev d 1EljUpV3P!->O`'I(*h ,Lv$p D.vl]*i*,dUj+.5_O>=I s yW{[ s/%UME/<7IV`@5P*,m'D,lyenё0wB=!o{mI$ ZfgFAݝ(|TOsINa0*Rt|Ԃ5mrtO*HwqЃ{@chܴ'C{k$я8-efE=#MmTeN2sV4P}A |?mjUcSᗴ0XQw*L /'gSy/ 9o^2Ii^](Uow:\[Y"r}\2:Tbc҃U-qM` ȆM4]^A9 7q/!5 }l Oh ` IX/=!k \\)7;J}-t,NuAc">;K {J+sdl*5t6٤Y@O0!\o{~)z5C=O-&yě6/g3V-sO~Bߏ^7oRmŌsZVE6L ڷJp2 d];~CGkF(.xkDҨ,~YvR&n:" ~X 6cpa<'r-呞<[[6<5-n;:|6 >rF-}2zXنu[]G%̢(5=pՒECQ8=6V=˱@(du}!i}{ kZ&J^aEz K8%P|FO jpk5ZcBPDmL;PYSX8*H(te2-Y9nGg)XS<(8rO23 .,3}bzR :r.] z1u^uj$CXEsR& &2 ?om:q:p@i~yj( .qi|@%,.*hvؙB _pjS{Yť[!#n `?jso Ae lM&#hSe0f"ˤ n`V1Qx'6YGQQώ9C۹ElXIQ%CQ,"ƌ5JӢ\x\GǎJ ^{$`tEl268j?P1iY \ðL| X{Pg,n֪9FUvN}IF԰օg [Ymw_3 -5c#?rҢ CƠ\2\X'5`:ciܚ4 H'ek2TkU]u? ,i>Q+/9W^D/,FO1N};ݫBsb}Y}T晡2NWh' dxq릇{,P![^8kD?RmAxy*Yycafeupmjn| GȍZ!M.uC x^/Rh0`rPN&\MEK?[H'y*3™&%yDa1&YPS $UJ\9{:j/]o*U{k캮<#Y G}’l䕂@a`%l!ß/Gpi3؇>{L} -h0gD1c|)wGXxa_Җk! a{xuh,kGS64X>B>ZcK!@0g?ەMlҌu!3s5i_Pq)t5ܯ6@s|gAduD!Av3bN8ƂCN ~#qǹfoN~?Ѷ zy9M:~(t,}BRԈf9Ԧ$~_mdR5 U @).АFO6R.WkΫcXy "IćI?=eEu$#D ڱGz*\f}W-J9 ΉꚵOM2Xhu߫@Cm)FS`O*keo%|. ':ibzVғL4ux zܘP,Æ!BeP =嵥+pDaKb@92icxIlroD]f8!0J:t O'R,k{[z@n~K -0ٳ*2H]c˒ ?g'$cQ'Ť$+x^=-;k0"z1 1 Fel,M{Lg<Ĺ/FyL 9Ec}pvǰ.A|87l6Kh0QI~ G+C)PVUA-26㔕v{IS5kc`݃r/FZwkك7JV"[5Msc%Ϥ~*}Tf k4;"nP{R}g՝+]cCq`ep|RuoScơd3T03xB$M2֒*u.W bL-}Btԯ9"ƙ`4\v;weĞKAJA16{!ɚ%O*УF9,{ֲN "}$_/6OvY#"~㠒{1)&+Haj?N`c+eDRD#ȍ~$f""vt),n@j')'QquQWm50s~Ѭ~ݖ)AUVٰP͖> K/~S}:b Q*)r*Ux% ~T>qᏟ/~ؿϟYC+-$Гƺo+7Ȟ[V\lzd{f{At,!:i@M7J$tEi[Ѣg)/,Ð%#vO-P`;Z)ڊ-Kw.Oo-^y;MY!+H)Zo{7u{y|%Yxj!;tӤnB]Z Yicw8(ηL 14w^;UHڳ&GZ{ yll2H e:"Bp_DV8(@"ea)cXsGR%`jyFWfkwY@PϭMGhxjSEi ;Q2i?2cKTvJGw`u̫:0?t/JE0J,~W]O6M iJvCRgn5spSa ? nM|1X4Ɵ L+@~hۼͦLKM,Z oe"ɉS!LIf]_vaoHyN⢟V92b̿"(bh&Zd;/?/)& M)k.6c7 (<'%\myʘ);'?'/q~O߯!Mvc!XRC:"{e e.mwl6?Byc͚yY[{R,|:M$yb_)bwٌ֙aҼiUct=-]L: v{笖>FGH*kB + ..S.pg Tw_Q@Aeuedj; ÃV(,τ%6A+Cqkݭ1YW/ОI o Qs!+GDʔFRN騊 *eS5@0&j~U(4/*fQVx8_2ѻT7bWUum7ƊPxi Цehn^*A(MqS $a \ՈzpG;"$?THȆJLOؙ'Ƹ 2X|=q} @/1nǣgŒ 6t/WZ) O)aT*^{/3olɹ#nIQV c]o0FP=|hxKt,5Lxk$W#s`D*}s(ΟVh⁆lz眺 j{yLbV>E 4v| >%mhhq>W7b8_.񾉟j'0]Կ۪scޑ]g_h!gvqW=ʯb"Jӷ7W"sg6Glfr>KȡU(ocGX!g0Мy&"!  /% jauĖjfX9}Tp4ZIy.,rtjHҷks_ΌsQ#d/j~2(@]F6i]v[xp(mi<] }sf IC,({!Y8|Z3]mcQHOS4p}Nm@29r^}ٮ$ %C)OjVO_ 0,d}`zR=C? M=gEeqQ|_&р"z!fbHw8Im;&) @)[`13>᛽B Rbtaifn'?D&a׺2<0U \8/w!rxTN!/,YQ߷j]gW] Sv)z&pb6%A 1 ˡ cTZbՋ(BqDmN t.ݣ)?Dn8=A=˜$F `sꮪ4NmXhKM⺃뛆 |S Ih}:!XB=W&3kpڒJFty@ /rUۜܲvr@Ʀ{w9@( yȔ: mm>,ZvT e_Ev=n6&#oV eoGAR1|L8+u |G'46RJPpuȑB@[΢]/DҶ¿(ǦI ͨoܯsqI8Q5E<\w<[KYZE1?ERC~͂ ͣ;Pٗy΂ ϋa?Z]X8m LĻ<8Ձc;Yw&G;JY%HLs g&li`F2Is64Drvff敔 zKˢ38BY(o4ez6wCC$~hzwxqghx%7 $|J8_<(~!4Q~RP>aSz$mS ˄6 Ϩa-ELMcCl09z0W2ϛwZ @(kw^.R| 3p~|N uUAhEFBTb+0"z;TR@F"|  Y7@{^g@ɶͮkUQT馳mL `4n>t G9T`Be#i m >.:VL<ǭoŜqf$MBy#yoK@+9+y巯oU}v[PWʊ+L;/d^:@6Ǯ/T;>otDz/ke by +6HP}ἆv:]oZŷO I v@'{I}ѝ!HQ1;% ˘ɒ \Rr 9guɨVh+"rX%;Gqf05fJd;h|^mVy-S]5•4najHo1-?S7זh:wPqy]H`#,SXoz}m8 dޝsxW{8v2iލ$:29pd)hmd%W j=9aƓ+f $=֪ M g[H*vp*O>ۓz;[}gyd M}V"Zq߲j 8×HOd^2dLؖcd$snC;b!BR>($b@rҲq.p/l I;``׫9w[)J'-CW7.,xҩ(jNWq}e6_qNSt&h5}S{x,ha1+x<\ JL$}װބN2) @ӄ03.MEl@.2 ?'{&GŻph@"^z:SS_|/7g(e@KT&TN,pj#DK.inި.o>o CnCZ8IOł^}a쏢ݎL_ˈ-i~ T}ks J>Nb˟]LMAlWKo䎣Idh=j(9NhY?xX`6(dUڍYIn:5FXr]=cfuw[[Bט{<ɥ-xDZcjU9z 'hX+z9[Hy6?WR#p^c.ϣ:%7P2Ӯ}-,Z{-a9NqVSYpO::^9px˻xFO3.<^ZCb@op[ƽzRk7)T7a R]F,;{ |iZH8q@lA4#zoVI`J-[뜩1碌 g\q@Np܌вhRJЩD1hȖy@zQJxA?1epF4L%Gp)d0Hrϔ LLd 5< tGoe̖KVjF*+LkCA^l|R).9=$jl7})8̇T1ZCZq) #@'h15J;¿FI'0)pɶo|U՞HB .U3EU"c'Z'o};VcfJœA4rYa6aq M.^tTϐ:t7fu.FKb/\x*X<i|"y l(BysEB[ ";|:.e3IT96oe(H;yV5w)t9J) {mwLʴӗm`649ʫW+*$*.qI39\j$L#MT4ꡙY0%|$׈[cAO)S ea{<.|.&(C1[TS:Nx snwDctXf6ȱhcޱW~!y' Ǧ b30sDh^b# >!Fv<{e6&3ԧFt_Ώڐm1h |n4f2&b+HiWr+9UKJJځujT SCV'\<@+;f9g3=ھ,SG(=4ñT OslQF8Grf!dۣ^N_a'\|ȁ~%ʭK.;Uއ=MȹYvI㈄bs$4 }4ka]sNU{#kn'{͐ߡ9 X jAh =#Uy˿ P{A;RWF#ur娿i>OX6@HCt^Bqs~T#k^TRk Ou^z 3a(4*ҸWyA--UyToX~ IHe5Tmw(A>:m4p&plyѻ)o!D[cya4b6,>k>[HM;ZF"ͬҖEɢSPi>j?B' I^LyËEKr}Z:4VϤL>ڹxH[T('{m_7ՏP|N6~Edhmd~ i9Fa4\Z2*ؐH1.^śnnQLM&d[yMz j|6/Y~xϿ Z6 SԖ'۔O_~Q#x%UozU sL@->70kZ[OHt YwCWFtk#/Ӓͨ\mJabd!7x,-J&6j:)SA{tؙohoil3XRCeD3|"{Pc3JQ?픞Q1'MGW (qm.K٨)tUnHK ;'r_ؐ*` /[*k/LYlڮEaWn*2BbwvźJ)SJ$z7#YLql#ZBljt5`h-i]0mN63(ԸpYvV9JC ϧor-Ơݼj<S o*Xs#^e AWs䣂|agpwf xkii=E)Gh+F³Is'"mb&doс$)/>xG4h#J|[|BR~sIJFLo0PBrۼ8a)C,g 8Vс_NUY* t+ENHB!'4TMEP#AJqђ~6yMCpWy)UNɼ\ x~Qb}G4Q7&)yo緢!+G]ćT0vF?^K)Q!lQK21 lj)5D۞06n߰袰L{9Di|۰nj=9uy/78jJ L U|W 9|$AUhn 6P<`;>{#R؛E-B~7gbk3|d݁SD ;N H(bTu2K7 @!D2[~Kv)&-<ӊ0Ru֜B~)n  sLdk+@PΠ ru6*뽴ybVR pV,`BA\n.1bM&w.(]yfv,R`RK:dbN籧`ɥ6 b-Ca|'uk)8E"z=4][ߗ)'՜\Dl t|j%:0a+ewBp}@l_&qqڲ2 &hx"^Z)B뭇ŭYxDϸv&vi2K;V(JLk퍏j> )%o04Ӆ"y(.ZFlOuuG|tLal}*Pvkm[q+;_8jDzKɏ.<<%<5?S^AK6c6)fpd)uhswԞpLYݲ0b"Ba0&}8(3g3͈'VW@bqO EVn[X}lD(W _Rꆟb&wt_Ƨy6=PX3Y!n@U>}fc^PTKrxF\MsWUF?:Hv㌍ȚЦXa%p7t,ICiwܐ 9f'^CњAkO麙ul0rNw~bQ}c{^jr8Վ15#yk!dxXvDڱLtu@AuJJ e c|pT+Zea !bLXء՝čp~_RLh 1K?ӂ-4>A4Jn.mġ"1\7\#OSoNo ̾230R$9яi|b.‘BG)EfGCX;+; T́.<O{Zi>`pè{Iٔz#sxѢkhQ!zc`NÜqo0w .hY4lA:9G8HH@9挞}^Du00*hH' @a˶BJdgDnq=tXU8* O.ZZhb2MMN3S#obȔ}nR|G[ZDh7(Aw>}>*{bP[qBLz!7m=-g-!!=zXfoJЉ(6k MLO<@w.3g+m5v;x-+9NXKvN )3&Gr=XEQ(/B? d ${xڸcXB|ǥ8Y,>?Ջ!F3s2'䰼۰`Pu=[N_n,߷QQwꂸM _画'q9Yc[9}@L*Lg?3WbO|1Gp{b˶UN%$?h[B5Ž ERLć厛N տk}ɢռ/Z5)\:K<{ P-!dF5AͻLօfM}"vmIDtT)AyiRէ)@nT(Y9J!hu]8/ǘzIC) #Z $lRB`fUvT81!lEu9>w&9&V`R-: 8ݚ nыq||6?#,ܲjxIv>Wݧ:Uu9.h y83j2lخb_^4bJytVRT?i~nN]I_'`8d 8eM˷{d$P,V&͍"++p~12 A#Hi@h ꃱ,j]`&tm\ᾛt!BFQF(_ )nW/|pVRP^{voȇ>C!عpZ+`u5=)K0a̦*S!m󴋱$<؆";T%_P6QJA3j@1J<}̧I n EM(g1 ICFT[vsv@K7q+k躠_y䆭`.ՃX nnyr|EF4( LYfp`B>@P,x1."0< 6rZnsM9B/Eq6H96P,G:2 J[b~uQ '0`bwgpvӓ@/Br-Mu0'Ѷ/CY,u &vK -K\ =ngAbsGg+u\5 \ ulS\oig߻+j=~r 0*L#xAw '/ /|{EZZ6fØ~jma fT_uր#7E9w4Pb:uVz˼5?cC*}OEGBU:M"Q^ $nM:Q>}D-(iyɱ3Z5gjKw^+ Rɟe"0'b^U֋ i BKu;"]Xi\6ɳi [*:j 5 *a5L@7qXF 7S8QċWq= ;p\y$EUBg)۠9YkX(ℎJǪRA]e@ɄU!BϽX2CȦЄhߴ#ck=QQJE/}̖t rxlZvWx*bp*wOHDO0ow/Cm'|6+U`J/[rɱ71E+^j>\ZŒWD?+c9ߥ=:U% yJ(D蓲}Fܡ!SO`a~砳l٘O\ytG%#1wHTw q9/4G6THKӎٟ7qͳ9ԨrF\*_]ҮƳCF^ f>t`e4rs]OKfc RY[Z^EPT%]Y&B+D%~wKaD̞vM AW9m,YP<;][)k{Lg>5E:ey2#;// jqt¦ qr|Du@|\@^9wQ!G`i:b6}818jn{w;EB r_=c1.hUQϒ6c"!~rX 2Ҁ&-Mi#sViZp,Ž0nYKȴ1X*:;5iY_>Y߶CIPvPi/gQ7tr \b.28W]Ëj+͉iӆFBdom<'95٢mFƕz\ٱojoaz8iKM,ꃢ#w/WSo2}}y*~@!y~hTAqJyu HNA*AL'At^0^i'[ lf5VknX)s5SKQǙk P င>aYX;0 5<6՞X4*L L[nC&j,&Vop"Խ~; &B1K`,-~@eL\Wwcb5IutFyɠJ2SgNF9Z۹F K:M䋝FssLboY_]*?ZbL+YHC1_57]P}ԛ8&#;8qބ '=Ds{ YPzG3C}Mrݷ'Č|fnRNi?Ԃ%U'u80ßQٮ~!^peu^[Wa\Y `aPq!rjMNʖw"j-8=TJ04C }=K) Jg[2ߤ`8%MKbtq污)|O:d >(c_Ӗ.. O uٷ4 6L5P6sEDֈueUlg'T$,~сqbOw̯kZWp ~ψnήW s%i1HD*0ayؙC-J*VlHYa6PiU Kا CK< Ҋ^'W *Bl6I>TKqyij3X 5#s}7a R tgrkq88}0Q{ġsp?M?G5@O8l/r{ au5%鵯2s=x}0y.߶<6׮5d#*/_6UJI󸤉JYOPu|ZS*4OEerXfox=Ob{"$ U̍K tih"?Q=LrR%S}50CjS/@*CYw83=-p#uyTk ¹q&ZJ:>+.Bz߉_kZKLid3Vk˝?ffOF}7TʁhLBtakDJa0E@?mk8U#\ǿX>LG @ 6A!k"hd&%:s4&ep˟EEne˥x><] 믿φ^tn,IZb1o>2(0)KD qݜ!OhߜDIUlm8Ti>YϚ34[X\3hH; Ŵ6V!dN[DI7-09g|x;fIB(!xF`ntt4`,~zvOde PzcٖH43!M;؉8a>x|v~{d&Sw-Y\e|0k{[,+T\].P A2h14g}f ]-ec,M!w-Ozֿh?IgK`6 DŠ*Ac~"gfPǪ5ŖEˍMi'X .*2TʈːdXZXSKB֯pD䋣̫7PLO|nt4Bz*/艼B1(I7rJ_ mQ߳>Qi`f>|mH2dt0G" ~mG12`Ǻ!Ma7lc اI:Tҳ,C* &3*x`[Ed0dҥ6oFe*H8R Tݩ"*x˷d Kәﯢ9ztF_xĹ(}MA/*[߱6ҦΊkfn_Cp;rZ#R^]!=>\J"A#|qdf('/T 1ۆC HUePy=E?7 f# j@~?=EфM`MpRE!K+CG3l<B;kz@V,Ķ&0޻x~>h 6øT!`''O 3SON(md03' +lq$u*\_|묛ЮC`4.Y]8LiKQ>73FvRUՓ:NpC*r`S.S3[/ǹ'Wa|8-Pd?URDE.mrT4\@}pw w]XBM;8sׁIy!|̐14'Z̔|f"2Z{)/%bkӋn 99g}ޫr?ǻ)4yII!`zS}YePXHt 'OvBccV7 ] X85Oѡ2\$ZNHAk .uEmȽ_kYRh P^jI9fSH1!"@,\sgril bդKI>|jⵕ 6D2*7>eXJjn:v%wװn>9O6Xp|9LeOِ|]F2li['ތbt1],[MƢ$m#ѕǭS(잜@(}8B#[i-[#H #:~(@v{O?;{l#A]%'I da1q>v4G!Ұt!:vDK2'U%bKkmfX];#A&|ێ,Ρs{ b_:Lo#WCwJ”4E H%") ՠ ^_:A3XS$DžK}}y(S.kȇ:-&L1Dr 0@{vsf,.7#iĈ@r1:V?D1ד}Bg*'"}@)} `0lt1~_j/[zI5; &Coo۔hs9HS-DбtTkD2@'qھ`ۉ'$'*ΝYfy)l$ BR8[x 'h r9-a Pi!&ވb.#qL頔D?<VCIDz솳YmLMzh=QnKk˭_*NogC> )4/ƢPPɿ3S;+ۃW)E/@XYqހ ay0wamA<&OG)M^EƓ{߬p;h<ղbcHx2%hyxOFgi6z6|z#fUmoi)Ffl\TEaqW] z9@L|x7p:6~]UCTQZ'۫78θ]ܷҍt;ɷ mv}ۊ\qSV"8 epƑ=G"˄0}ԍ1E"?[d"`h@d^MxsFȍ*]\7jGF}8?c=C[mZPf e&f6ϻ;0Sc'Ka*#%_\ VM}J$),t/\<Ϛjc3Zb4lD#7L[%KlIff=u>ex%slF[L :̈4]Eʦ^@ST -v4Wuӄ8jP5 U}p&˴zwwbH4Cp؃G{ _tp{5) k "q)*4'RUɐ_Ta'z>\KREILKeiaeY*{ܭhC*v6/՘ʓƞ{%ĸ)e=|;Hk}my*翀#މTNKCaf/>.eSAӅ]*$]{a~IG~/E[G7jI*z873hZ=gQ*cʲi&=1 fC%߂]fa_gjܡr)S!O FB9\ryi"A#Qkaiǻmu*s[jy@M&ኻ,MI 54%,zC4#T3Asx/#-Md/-TmGjq,~WJjKB- 0ʁ Xю\A->xL-Zv O?]@L>bC%"T̀ ѢA.w::;oR{YwUđXJR6;p;ީY^%yg$}</H [1j|]/j)1<̤m5.TxXMb+Jrꇂɡ+'L>Vj?|>qx/?iqn2aՄ";)zLHR6/kb`{/v5/ϋw(PYMdx%drKIx qt32 $ev?]޴x fxZ;td+)O5<>cG_p `_v"(6 Q8' bg=ђbO)L򋒅؛S~Qdž_Q0Ɔj܍F]zt4Vf.[meK&_D[,[`}@߽W,oG NvO;MǤyE[fpH]6;j2%3haJ3jECA#j%ӀD^_e^9|< ݝg4ظTaK'';Vo(  QIXĜu3AQfSO0 Q͵G~,&0ux q+*Ԍ9G&dbad'I18SFBvl*̏<鏰jKRȽ!ɑ!K]AEvJH}/WdJPZAKbc%12lv d ;!ՒqE4(k~uK)EݠY#<ű9p>q tgɵU)?+e@x삧oɇ}[)ôCE:![/D j%ب_^7l$p3%a?: "{!.L$¨'v],DNvE}*^a[>-olvIO`Ċ+њpB#\(C2 Hԉs ،k#|Yv&:hu. EU^̿?7F ݛbngQRk=0Mc[@4ì#KΘ׎@Z>B%c*T~EnB_`7$U}!(ck:1rwI2H?&2)=5\a XzeQ, ~ftgßXv<&_abʶ" ?G% K#,X4W(*&7S^Ό+t)]{= fxa פA5Vjcvuak.?™F2 Q+wAr4+tQ۵LvU+9[ ࠁSo3C;k=/>DY>1w+\Ӫ*"R30$]Cz ._3է@_|).=dSt'^3"lw%wX$Ú}A6/hTO.3bfhd.]d˧2>#]! 'ވIbӑt~D%nI)eW4E`769  NJɪKW:)9IR319 jͻhf_+dBvyke3vn u\,8oԼ ΞrZr/,!!FO\F;Gd=&kqӹJyY5w7I!8nuH(+Y ApA؁_bdlv ȿ?|5| 2SPtIAe{Xf>7:R2Ä0/s O/=3;o:\=^~B/i[ٲQʑE!Ϻ_r߬ELn]5}:9+e R>ztyYwBgoSoS358!$<"2fX9!SINA$Ǯ߬yd1v[f!we7g%Jt]NqwALXlBiXdsDa*d/Ym&[_'k"1蚘憒wtp{Fr,sHf.znof&` 5hT bq͡xjr{D=TT>ZjJ4;wu=)2Y8eB-sx}f@5>9m"Ab;R1Y0EV:ՙ2~`a*1p,$x'q Gz)<`x DN!rZ ބXٔ*_9-}T? HBK+^LXWof z !@:IPk@&N1:my}zBFRhA{\`WSjzd?yxOivEVYrnRy8Ff(>gѠk W*L4Kp$({+)։:3:n 9k2gIEpHq,sQ&7,@kX) 8*Xs bR,%(efOR^06vs//!2f!M*BIW"!t=onm1"Rнu6Yhk\ qȥ}I:y..vѳ _Q'$Z? 'a|gO8<@ wŃFWAt&X?0ɣ_<9fv# %*1eoѻҋI ҝޮ-SFUKb]t%4_|WT^nƌ+yF)P;5bz̽],3kX0.fv_!e22|]J33#$,(qEɬ:^XR,CKJI Z:]|4J%}'`Q2,>1*}gʣҊi@>ˮp2'3ƽ{=fJkN 9q! w45nm0 Tg(("=yXǮ,cD~ `BA}$Vs#qv; oCڱG4[͝_Gȿ` UFHB wc 6!0(Ū#ssUV8UK|3?=g2KTp×m))`C(|-}ߥ+5|--34O`hoIX,7BmJGBEtP^i7/>6RwQ1/ZR@ґgѿm5f'5A^|U~[+޹BU&F _<4N`7Oːh4LβbX[߮N}$F* ' +~}^ n /ImMhxz{ؐơq࣬-׬*;,Ijf.qGZי~s67x&x]"Hu)%⃚CfkG7V|du"է[)bO E0$MS"?']XHW!#.:'%Y1@8ŹG$UˍmW:IfM!Xh{t sy^*{z.\sVVP-_ӊQ}uXVwo N/1X7ZZfT6\x PtdY{GP}5*8,Ԁqf4'w!OT_\ƝGGJS6 ^gvAJ%f y P3?Yd+zҼ8+n Lͽ3n2Iͦ?ƨG\x8Uݓ12e!JV/*}Er; Pk% L%?N]0sW{Bq(4D~AByx._*lvIpFqv.bƨ{ؿh{r4Jh[r o*^ Y[cWZO/`]{Snfd i]{g .<+lS4`CHbkJ+yZzڣuOD1Rg멯Զ*Ք^_n#'a{I.õI%Szy *R򳭺Q| 6g~+HK@G3. fWN{lbEfNX&h+A!n*M-i$܀/ +31eDʠha!Tٰ,ՐSA<9-"0|L\8_#.P“͢sq6NUA%mDvjj=\N.3\+Ӕ*M6=qu) A3Ǖ*.ߠ7on/ /!G |"s`]0/HO>n֢g=+c+n᤿?Zot$'񠠃Z¿텟8r/ /5aU3:!n6x,b+o)($Y&xg""Q -^4z4tcJE@ZMhiI늕|IrU U:a6rZ;еϰ_9:XwK&khnޘN@#S Iq9fJt Eh:5oE$Je9B\, Cxq(5eXҽ0m1vpэzւ-yc@*RDXiŭ#tq=y.)'M;%ilqBh`.'}+f㊎d3~jщ] XC-9齣_N{fWOU{,>v8f$sHś7ZZ櫤 yEoJd%ݿփWhDF٣}Œ>ʝd mݫ]tN _jO*L2,ś꾣B.&lB䔑 `.ŮD)mb-[= Vo3ϕ;&O>ZvtE \T1]x?@}v:󮔔+n3Y:nmBGXU,<mT" ۑ@<`/T$7gf'>Oѿzd{+u>Jw Ai$̺" w}5tNȆ+ T 'm&B Iqei4Ou/k`S5BfP'w3 ?)nGi:PљGMʾ3ckh!'~U9tY+p9gUcv#QFxJ8)b583UM"'iuoʽ /;m6'1 X5u/E=L= HzGZZmb%(dj ye5OnTE :3M`+*:~#w-/l|gx=ǓO7E -[Ԓ<}=ړ\(OxĜ UZcnR36mtci3#d9:hCoژ2_1`5ɉCYz5YfP$~J&S{>$ "umCNl'c ^Eׁ|Kwu֑Y;-~XS.,:Iv$f+>%oI2g_95H_!. pђ u1Kʱ )ɭKv"—vqS *HܕK/ ih騙[b:k_ԧMA?(wꟾD?̾yqhiZ8p㼧;98vLxoKC4p Mg8"ȃy6܂XAH?i2*_3)E& |J ?>6Ղ=Zj2>dk7|4Y?m3^֏`z#v~֝9bbĬh}(uLÊKmwyY!Ȁy%N>k2M .C5S0=f$A5:m{qc*[lץ`1f_zoK!Ore*j8VWa?j?{0 \07f8je%7q m{yʭEVNRXs}}O}FM(Y ȏvA##iM3 d}Ͷ2Ctϴ<RY麄k,w+KӁTȈF :vdz2G% B2SOpI2?lۢ]Q?$^u&'UcP3財(U۬o_$""bdswJ 2uk@~]|-o}7MZ8~Ejfc}n_YG.Ug~E͌@ #({(D[jitq|Æ#ȫ^F\F;L8Lu`dLg"SKroFX+?K̩`lT<+(ry jR8Ǒ :`to[:/ȧwU f/N+65-:)_˗;$ buGG#7Wp9cа/|ǝ4Xnl#di?&x1l.7TrCnf'PjBe'LJ/E@úWas k JyxV@ 64.pe] fS+Eb8_dS1I13!ʗg*VU CF"$@=KhƀKY(mv&%S9qVRȞ񧧻]7t{` W,P8EO.@}'RҘMŖiMG9r x:gZʶcً`/ļV3 pvlӟ75~'{ѳ-[lxmYo{8gx|0@+VapQ`N$dS(M,R)+t+iR\H876.4?,Z#7%&1!p¶d IzWÌ8 S ,c`)!x' ԢX0EJ{=ŸCTexj:|c$cO>@N`|/K}pEV45!OgJ :ƟzJA1^,-89CnmfD7כ.7 Ix@M/U5$bh5vm([#7dܽЧͿaڎrGxR^/@H%22?}NϘkOR0{~|%:a`T)pGIg/%ʞnj"ˆǗS`vZ q37w)Rʲ6-&BbԩW͸` Y+}-= #F?le.n$`K2 S0jdLiIʍCmCyb ^JG8!^e 3sqH1Y#RMuT]]3a/@̝UfeɝvQWm(o|0(S,.Z[?-:40o{ 8TQίP-8hX/D,̡:y^k?M4aW>ENJ(N3i*]Pu~wՀ4%BQ/3<>Ho婊:i8/.xM8w}g2 m!. b?NGd޲v`{F3I.=cV>8LbwD:YFi r-ƣYr#KQ,,-ѡ M µFi]Hx $XIB;.lwNg)_^!dc>ZR@y3s0G݆*^OT3lE6;v @$aM<30NR0ɷk_}M䫨|P..@n\cfڷXDe&[?ޛ$NY 7;hjozXe/vH\)\d͍;1XvArh<{ax|/M1] ۦsq8tTDlo:4AS|͘|N^S<9θ] Ud6E0 :9ە0c|vr0*ưv` S \2IL)xz5`AXw ch2[t>waG^~"#pr读Wgk^./FP %0g?CE.\J/CK}oI)G ]PU%!vϞw IPxtH14+]`M#Xg[_7iGr"+y*cOȾ-(?DjL`h~{tvi=3s ME60iwX/쿷q+~,Sd]2d ,j?* Qؗ:܂8 `$j>H ]tPƾ[qbqs:(*E0{+jOU,(Rp`D$GI4ɹ[" ݰ!*m#EqupM`Kس& ]z!-L,u@MMvBS!7,߬Oڕ\Yv9hoM;$ iCV?C6_ uwhihBwy-,TpFF$B)KSCJA6qek[G6Zd ?y0 jE|{)152ugV=KCֺiE5y}&^^\A"R%?m`.\g;/B=X4f,e8gI `7DA# aCT^R%׸dzy/_m |Z]iHP}P*q,pGX2}MvEܓ%~sGCְy;/ijPOg/"jQl0F/}^`3MK_xO~hekܕE7\/)r9ʶZ l&&53[|$E (m2%w.U~GuW ފ¡dwZ Wr}쏡h].'~01=7T[i;HE :g@Nԝ3F,rީvCg",t3-X{3;OF-"ҭꥺ'IwDϜWA0|0 F~*Lن=c,a97+Mp^uebײˠ9Uz xE#]TвOnsC(VV맷z>>>~R0O+v /sh0й =/Ņ*Kr0i8On=NW+|*l,6Rr: {DZzyk=Ut=(r!!j*Z3މ"6 U?Б>Ⱦ\xsآ`\NĘ&OO5.uw4"$֞m=tXCWDy㳵>*=w#OӝzmW}|qfZX_IOx'ӭ LSO?n~+`A'/һC ngn꿧e~qJ.J/D.O[|DEd'OCб t%k! 2t}F6հj/e19 ?[ 1DѤl@ <{u?¾^Er;lxܡP ҉ o`׾V:γOs `A l%9^ƣj jH}F ơѲX."*A!f@=AZ3>X÷Ҥ(ta\6^M&#y/JCqaI]?xߏM٥ҷ]v$F0X)F HRgSXlFX;j28v;4;gQ3I f0-dGyઇnqv`NE)Yʳ*cM7uTy?%t)^5yvz 9o 6My`x>×ƝȴcW/q_ږ͛*ʫSy2+~/`Y\5l5c.> d=C{LbF[Ʀ" y0lj-p}h;b]l34嘜js$r$cg>Ux .]*je\qDzzO7ʛ2 5D OeaڵKIFH#)s EݼN=-Uke"dhh>Ps<^6l1ȵJ27^mZW%CKA%aW&X+ѹ$8mO"]Tov}ൟ(+;]}R|/>B Eڑ#ğ[-mH1<5#5ak'uleR7_W#~׈湨EyNgPR \J R[BTөjncDp2{E]ZjCR07LF 6:}]"EԼ9nyJ}Sꄁ.h@XlI-yw`R/m6rCO!"kGzX0VQ p !CkXܾqpB| =\8JZ;nDؒ 8; _x`7AiT@~pI&1)1>PU+lup#G cKRXs%#6j /'DaNJ=FeBb32dh'iRQ#)H7;U':^a5v%LW#ǀ;J6z0sCfX{^!LvxD[EiL腇leѝ]] fX,20D` dewV2GfVvSA6Ҕ,]*PTݜ-rJ{I%-TtJjoIHC{',X@T9ǀtܼ^8|s\P{H!`? Dodw5YIįTnKINlΣZڟw𹆮!FL+V|FFpi eEW7T_vda5.vLk~r&:giu;tzu0%pb NXE7DDΪ7-`iaJyi}F Sz,elsRdUB$w=:J0d3 apgYm_\2&¤8;w xl -9<)'릸Wl]9o$pOubP?9wI+C97by QUb OuGId MkhGyhzxFOhY,]M oY]Vm$,Gig])1cB:ᚪ[%}%4OR#da"tߢ~F`e{|u.R7:'k hK/,cLydRNf'0As )-M&E͜(nV [1f *BJ(߶Zݷab u*?|iZIZWM/̚6I,gn\"=nBٝKY%.}^ԟ䜤~5ӘVob @GKгYkEV35 s^U%d jmiG|#Xfje D%?do۞7ޫ,.&9#Pƙ$C&Šo]ztodK'E#X4g>B{OŲqX_;Ll#\ymXRvsU Z^h6)KPfm㩻U ٣:Rwtu(w=s(C+RZ8q\m86۪ Wax6DU8|y *ދf&@}nՔ00 p2X~\GgI۟-?B9KU|o;ZxK enpbt,Cr32{?Yvg =qJG#`q)8dUߴ&EB=0xV8 oK6ԩ9*cJZxMjOPu^ 7򪉈WLV1 `hJt|P~:V vޏ,2NsK~me%@XkSg@WPpfi_CZ3>tE{F}{,mx5ёI:% <VjjX .q{SD7{[1;G#7惫p ֐鎢ҧT)8Y~>?Et]P\d%qN2 z=/\bNCઍzbr_"-~,aA-F;(hkmwތ䔒AgΊ?U@ kRK!=fYZ8@`xKm԰ ng 9AˇhiIw[h!6_sɺ6dqmtlOI%RuD:-p{̳ ` :9a.O!g-)/쒲+Ӏ:&2;8)a0<RiQR*%f)uQ.Z7}/>D+c{$sB<0.8d2XMٗGo{f6*-zvmނ 3-"QEg@{$+P; %ɃVu~@΀$lD .D,xyDjDh3 h=4oL^M@+8BL('𽷋)F45 酠=?ԎU(^,@.dGEfy:&q'\_+uT`tn]]sMj;l˫,H)t?2Bz>Yf*^3p^9?4$JЧvX Yr:XKQpwkĄU';{[FW/s y'wƬiԶ3`QYC֐0ak#M̲(#x9˝xwL)_pS8P촽pJ0V&cAS;!N,J;0P8S9]FGߧr]hzZ@[D𳔴bOnvM[JXLQgF1e/E)N3Vҗ+ $>[߰έ[Mvypfvp:u17ډWj=2sɲX u(7C9\ ('>u@Acjx"%6#nkC j<t kOPfw礋pP-Vj2;leߚ(В I``@1yҝ AVɵ$%]qPY932˓4a XU.<$!c_eB lo!aP3['hj!H橌%nvDf\"l_E$I8Q5Hcv\QK5rD{`߻:!kZ2xD~҄TT;ث"I;4h ,3,֏|( `eb^vh3j\'hg>HSB zP3@S6C8V|, dq`*i^ݦv 79%W Шxi4t~ TIA'09 ,τMEG)'8Ճw"e[  !ō@xvgo$Q`VqM<`Dyŭ~'({\R $e,de h4x{ѿ3EQM ;SoR#xP4XE'jʩ% NJ!J|O8XW u_zlApç Đszy.+E/_U|r Yl?~Q3SA.``fmٸak9q>? 2Y&#SscPE] w0|t b=Pʯ3p&w^UM'f@5qJH [N]݄E[^Zw`dHjw{!ZpC5\ ;;76?ˠXҀj58q`RͧQۗ˫$$] Zm|CN9dwȼkӴt/\ d;GQ(HR*PʼSw44鸅ߖqڍPHNкqF:DVqc΄M h'\ӷW3ۈ=89Ԇ& 0ZAj})v$hs؍QQup..y[—x! E5(QW[+"=VؿxTܡd{@FuAz[ZgVF[0u_Oh=/z" e>4$8MX2}Aw`R|Y{CJVeS*#=J굖o#Rln ; Y2q0d{80M87]ihukw5~ S pW6gV M^M=\2dZH: -\G'( L2&߃ªh=dVbH,n%lS bZiL9&f2h{sr&<UKx?a k=a*z0ɖ,e^i 篖i.AV)Ҁ|&̣Gf!S4LyJ>I \ JBcve,'vw b%ÜpzIL[}âLX ibBYۗʙXHNUyJQ1ˬupHy mߤld:'hA\=e/uYTlUCϷ"Ԡ; 2tȮ Rf֮%jK$KIYW! {ڼbRGlTsP/>6yY4_8]~SIZsL&:@>3 9c`J % 5&hPl ".eC^}<`::{Ǹ YZ}R ߣt Y<ߋyK G8g:_9_9yrs?"bOz=1v %a C>I1U"#4.׬+mXLʵzd @a U ޵dح0ħi/p凵Fnm.3 S!$E I3>F様ڭZy^P5Y!@gݗF$IQ;x{ʏm'9Ɉh@ *7dj&3F@z Bu;KjƞP!!ZNTe䙩)0OwqH}/v p I{qR \'c QOVLl0@ 3K,@<:kՑIgGy]cXnt;[X~ƆQjجDt_`46|d;Jfq3qC hdA#p]ؒȷA`;EhI_y. +jIgP~*T* =Fi K"& vկבRV~ bKhώVMAxv6BvpU!1zԝ5 dkWޟE,#u܇>LJ ՉCն {q/OR93@*?kS[a+p_b me#;VtfȤònQ)vEdeoeBd2!n$Y֍o0pUL)'(p,LTd^'Ofp'ouw x5OשKmAlL<l hwJa.2Qe,fz#gujL)u/|Auc`Wd Vxe@m0rnIm$RvbUBA=Ҡ>'$\x;̿1zN6!~X,a̠w'7UcП'\oj05aއe^);FL}fI [t>~sG:7 .s?P(8 `]>԰'TmY-kXԓ\fЌOe'{z`LERċ˪'`nLeo F!|*^ܰUyՃJWyd/*HfeoUr HvLJ% VIBt)ҲZ XkKJ~`cɃE0!Cl8(Jkj~% HX\E`iX||;LQ8ĜNkEEOxRtΧ=!sĞ3;҉w+yB#e-U&6vQawXi*`b'K.~jv7鐏6zx7=Sku*DOȪZKovNAī?=ߞos' 8,IѹVf]BOxViz ¥\i{f;+fcG D\jf

!_l (ӷZ@4 -8d]2h VV2D"jY k7(?m2׼EK[1V׆74Vwu+8;NJ64i{Fx>Lu^yVgʗhdtxOV%u٬ďuĵ32G$zf2݈US F3B0hia(Fi>/Q9JfnHՃvkwzUL#zi/)X`v0gv]!v妪ܐV"seWYIx߲ ,*_l,/gD;IGOkH7?Rm{XD B_;%/U*v!J)y{8rtKT>kk捫 K_=OІEPiNϯ;=Xxe4"Q %-T!pōLdFd76 f(~T"ܼ)I0Awg{G2? k'j2ANbq|?1U>t= 2ajIpBs'SQ|ܔwB*,Xώt3x5f?'7KpvwFSM{ފ*08OXtSo/jGlogdw~I4_eYͬwæLp9͹yw(:d,_Xw^MYe ETՇUƻo6"(ji5 h J5Ŝ.(Z+Ò Yv(a=vLkrlTESs FÙ"~ &>e<%m&~|nֻMݿ<̆:&;?5PN )/tn|ׅ(QPv U(55UzPXW*|m.-K[XV/Ț Y*7F2,3/}GpE#4w;/AGp-SDy+Zal{Ud]6ou8BX'lEO63Pj٩`xhm2$db6ޠKuY1SW@G?>lW¾n@Lh'ղ`djgDFPoƘg4fEOCDϚE̢~pkhV0h;Ak_bPX<"ޣ> Ucuk|ZݦbBc`y2U&*sȑi 䢇0f&zyp¨eI}nvrʙBr78{xzAhȨ 䜗UO&ˉ[~tTiQ{!b5p6ں8;k"Ш(gP074Nsj%vs \K/%=urƈ]F)\%&P/~q\-fCnQ@cpK9k+$&75ВB}z"T*`8dJffу r©Z?~E%4&`0zz{rqD30*igN `͖bfrE3To4rWvxs"ޮ\@' \O"[Q>5蠇m\+A0? 6S?<9זHZl^ʎH1wlrʔ|S& *B ٮ.Uv*L0y;RY!e3tKv^Z6_A/lYA}e-{lUi3h5/dO:Dz[gPdL<>Z+J`ȍ ApPOrwhG:캳TBj6XRNEo&cU2QNΛU(j'qH <+wJ QɓVЪ꩙},-'cyoe"ձ׮{Hp` *O*5D]~=˱kb[tgFZQ9=UByIꓢMQ$R4.Bb3Ћ1Lŷ!HiQ>(L_hvU I @|܈^7qgTᆪ X \Ncpax*r1ιԓBԺe:_ymS@[cYtjEƏVɉPtՔheO}S,#d`wV<e{De9 /('}MO:7})`u_m$\~dbÑmY"0#WJy`BUDW+AX(f7U*U{F68 ш(3c<~4.؁U,ٮ 6I/j3¯ 'c ~~_M?<_G"z HT506qrm5tdAn[4-[۝R:XlJeVN}Κ5T8o?zʋԷIA#IPFX㡞DhozBNF2eGAO̡7 68 Ȟ/~4`'Sd<JVB_ZQlpJ$.꣌3%Ur/yTDywC.x֫ iL>ySIS@kI x}@}:YSNW쇺`>a٠δs/TpV-J%/{M|p,9qVzR,؊1aj ,#$[jcٺ_0R("|Ig#Q+%ɈWc tt ZnZ遖Hi5WR4soHZŚr(qC(x=iXSg<70DPs_Aw+2QG\> bQ @&:D5˭0=}xVDWTcץw57xs~.J~3,U&&GM3ܜͬ+~I땙7ǚliX6[)2Z )8]ݗNԊ["'2z M0'>޴ A0-ֻpPCjⰳ YaMo` T3k,*J=zt/]ֵU\U!vt!Ȩ%e$at2?9 ЉQ?6)蠎/c/I $:fTW |1{3`]-bHzEs0dTbBҸ0 ȕ.gb; QnF jl\\e / 4`S" I)B '䜺 T14w^ǦXܸbC ǰJs-5Cj;|Ƕ,*=CekZ?iXB{2AŁh.prǶ{P%DX4KO#GZA$AR׺:x& 5Ү$X[V?sDˊ3 -Q7d~8hv3()#x̵A_o<:7%ru~xFd&Y,p0 ۱t UAbyЮ=[nҞ~95̲jRо1ٴBRYmgomwyHa] Qc^V &tBG̻9+5r JjBeoV"Td hhKQ R {sb=&8"Z_M4]mIq9R WBhOY˩f߱XgB;E@äΙ8J1  e~*LfNcdfѵywˣ+ՊQ[BV4C `E`xT 1=|FbZ&ae y*JMС]v$N+)E.Cij> M=q_Yk͝5B3ΑyB)P( klTwW [(LE:)ꎨoHoTvXD>UnK֜gILhݥg=q5>#=ضzG& A4HyVmL(]4HRbzMm噧Ot1"@KdYК 2@Ee$fΎDX- Û3Jf+b^U ׌OW s^JkhaWHmr>7#2Җ`/J1 >=*U52,~kD 6;m>p8MȚ&qFḽ%A/M MAA MQ lA [4}fG&;Gi#G'q\mr,~ dώ/Ue0}8͆; دM׉"~= Ⱦ:(AA_tl9[,ƪM~> 5jXrQܡqpO](Õ=Tic3Q;쩵qK,s/yfTiN3t^*HE1fg S|+t=>/BPXv}C^bC'&?7 v8@bstEʢN6$$&Fgr4VVE|И;@0j23K-YZq-4`b~>^)+fC򕈘d^ږi*RAgb7 _|e0[t/HI8(O-_:2(B,c]HjN˂זe=Q8$= CTE"h΀tOXCvGre 'ECbf"51RD(!ý1pT޽befBql,W`Ǒ1;! UBvavvRdv_W\!@3Ơ͐'X]at^#鏦9j.}OE6خx,KGyz/R3 7f&M1 [&6nPD~Fy^>92_y[nS 9˽+!@c:T@ +;եoN!h͆/3ٞbް.H^A{a}SQ JK7A@a?c5pl2_ w >K⻥/{aZC}؋ .jfK4 {JPn=F+^Fκul }X?-+>-Xg֯^*=+X̱~'hn(&jϞLD %E:K_[XIrXAu7ǦB@#Ռ?Cst"F^OYG$i62ʟ-@Iv"BK\Y)7˺6Yx&`jD'8zu] z'Hw>kwH#Ba:Wd#ӠUur AǴԓȭm|ϡ5X>H$("M.NޫW5hn tOyz{h']cWs M (XԜěW%d]0. ;6 /=% CIaό bxDXS "Xx%aVE-0;DjSrS^eq9%Nzsś©82"CU5n)h%ɳN,MöOƔ1xe0_D;QǪro(9Yࣝjbd mTP)r4-l485:QƵ{& `l&SAͧzɾă`o^җ[k3Qa AMq~S)xyT-h]ϞɵeuۉA6&ѿl.&akaD[T aPueLV 㯸FUHk(c}q6 O%8 2ʬ [)GM? BXJ$ɱ4T D ]v 'q08T gf]teRX'IwS}DzTX怏cIr} 5Ö }?aYw%=KMe3ZMCKup|*≎Z_y¨j2>VѼ3!jf-ZJYĞwlqP&fY\F4%bɬFFZ;'O#/U[<0^*Bӣ M6{0 ӽ^wQ yyLbT[#}i)Q3gmSEVWJ: ˝`̣kE*P$nCt:s?_n։|$' 9oLuӤƌWgd~`s7n++WG 1$>G0"65#|I&f?\LÝoIe} h2*[ t}V@UWn9@[zm9VqѣĔ@]? 2KuXDR\By* t^ NSq.GBq4E]8 G QE45EMQ]&S kg+̱["l(U*KN95S9K4fsUʕ@ƲnM$X_$&|<Ӝ+űlEtV!cf'f^AIsE.[BpA,JdZɖGpmsBDQFB 1nе]R| SYCo.ŸqEjW@ZP*Lgv~؏ol/XռUd9;0ITV_rgxQ*ޫ~~V c7m&/+A,ٜz@[lHl*B鑔:!$KaCd7: .Uw@˜ڼœӃM,9kUO *oU8!mlbݠ | a@f)(KӾNj`;+(ZrԈh 5J7Ef>HK>ukE=XsOt}I)t}j n]ܲa7\&4[]yUGfqm}댌3cY%%ӠSf`J&'sqV2fH㳅y5l訅7 `> <{`Վs^J`?h#q@鎄3> ǼIpMGP0&Vz[-Ɉ}&a>v5ԏ<@}\wp̘nJE_a?G/FN2`]w05X5xInj}9y*IQj^ :2~'sվnJCa /s]5K'ޣ'H^&L..0/1OR1E&"2FdM Ӳ[Fв\K mCV蚎jO "n~AE{RE Kak& (qRv`lO&Jg#/|~KbO5@r<#Kѫ`c.;Rٙ"f1[ Hf͉fP KTnĆRnk;C 4[isz/D{+Gs\x o2< DőR9jFơ⠮wlXlsi:2-IOVF!Zc5ݠc?Δ B{BM:,&PQ\ k%}>Y&" Aph  1ecu&*l'd9v&t:I^a\15"PPJA)bWn:eBrt5$&%Oq&xSO 0J_RWJBԣUG؞/e}vEt7eEQ +XIdbl9zK=,'+{3ۡ"m7rp[_4U$#ʥyy[k)Ƿŋˏ:d l#jLb89DIk6Y1X貦#" "=@LR1QS"3x$[Iijhk۷OIFis%INOO qtOZdȝg8C@.xzK TH3K=ʾ=#vM(YlfKht &g̨8?cGSϭʗ`ĩ+ uD$+0^]z-.t7)ʖjQ`AH`0&_zn2VDn .#&JXrz||Y"R1Dd^ezSBfr 90sBu/? ʑ 1DzوzxsmxCR+?cF:/YlM<8o3^2v'N$b p Jhr^p8fa$Gd<tT Ԟr[9ѭf\_QB83Ӕ)k+GW #]eF}lkVdL2g`E RVwp@ #9S`BE@1uEjd4\ mr);3`d9IR[e0XWOc_ZY4WxN#X2awP :ؔ0>~sDab9\4Tu>.ZJe?}|/s3Ϝሞ#SXN54G##m`.`?K< Pj{Jsԇy]i &pnok!RgL{'ՠ hMo[ʩB|@T8ORW}&fojX&}@@s&w@]%JHM}L$ț_" ^wwZ RG!no7tmێ)ڲ*ĢNj-I%|tnꌣİ߳ ~H1HY<΄8޷̙4Ї:$%D:`;<ǹd4;ΏcIrŴ/[՟vz͹l EVҮF՟Tzm"$I1O>{en#+ÑI3r#2ij1|7p+Ig?<@&nݠ0HU6?!k|Pn2f\^ȿqM m['Y_f_@*ke349Sc';qeY/@@TP юU7Jc4g9>SDBA:)bq`]O e6E E|X ܕ›&PG1!hԷZw>`LKE_$U?3e56TU"6eLPTqRrFVo.[w,(l}SSw.d T/lI7,Cm%ǔfˠ[{2 ^NJ !duL_|x{Sˋv}}j+zӂ۬yGx\./G#\_€Mll^ɠZ*W>`HďN!Kt{xA^ܘtGGlccI=Yx#SR-/ SC0S#J2-|{OXꭔ037_^;B7F4vGqH i5A ٽXP\QXE?ֹDe8on ;.$|4ta 0vfh0u_bwj9T nɻsY*_/&]|į. }fpDh_[8/j=*i~`#B²_!Z9םBi  h}~,9]oߢOgzQWbk1~aGasވOJՈDz7?[ a͑zXP;&B(C/ \jˋ~l dLն4ˣ5cc<zP !5O 7~_v-JydDy %3wTePsP0K)&M%dTDe%뜙 0nY%57k pUŞ2^+̓C,Yyd}{pl ޹ot'a)J25+X=.4Xz=}|жCg*CkR-$u [:5<zRWjG}q|^^ $Za]%SAt'jy3F"~\a"HnMmtx߫oAU`[D3?9&%PKn>*n__o5}2\ਸ਼̊*_c%"Tm`pTTjPq\ 4E8}YO 2,ʙiE_B{oJQG){MB>BQ<[{Mn;9#4L.e˙ )jhɄcn* zݦπaka Ga hռ\|3MGo}CȬ\aպbbꉑ8"Z%lOwl{o%]NSҺ Q&jIT81ڤ2Gv+V$ۡJ*g4MOUR'|!(@|XL;NMA.'{zHAIacS\qx.Nli7ؙǦM.gER4X5,5^/ Md &|x#lݲYH5>%c/Wǜ0U#Eʖ>C- l%}sXڔc[ <-1 ߷mi*+8 0q|yנK[^\ъOP0q oi͜.M)\i`l6iۦĔ (l1"Z 0 hBxUo]ȔE;%N'9-Mj߫0sJ]\?Al )!o,ണ<.Jp$T7Oi#SDI iedR ˅di;;9] ޚFBWo55*@YiD`aÐ'jvyuH'jŃg-T5swϏ `j5)R,E4PՋ^~K*3CQ{ZѿcL4jT ˞[(QĈ!dܑ)Rv]VMGnz3ld}OZiސUb`29}E Z]+\] Faez!z * sGi61 !΅* ##oR2Y-q}^DDLӡn ~\|w~ҳ2q"7eYݾBGEY 8t0"P;uI CjiU6b|$z`x^UC m#ݲp |D C=簟 } p/Aiߥ|"{um+6cp=0CKyiN>q/,+r? eOsSfqaeO4%QKfϹ3~@ $7N0|$g=ƈW){U 2!~SHKaՂyg[aHA5nqP:AQBjF, 3oXRS;+ yzLͳAuy!^VD<7O ޯ F#W<܂k~U?z,&rbVRl/:N) >Tb #LrZ޷B:<^ fi\sȤd`IaS/_C笐C\'c{ OؕI$q2R^Ȅ~|8c؉a6%ʖC .Zmqe[Lj̈h{`xK F%:Ҫ H|wkSq X9ڧ B[ZߊEkk~=L 2?Q$tj/ĂLmY=hiױ+D~O3>>puǜ"FK/OhkWQ+Ӝ5x=zo$%yUőt_UzGUڮ~U+^M SLhز rY8t-v?R, 0t?D#ɤIe/Q4Iep p]Ll}x{18f[֖Z4J,O0o=Jr@6~̣xRd=`%!@it܏fV8tf~H<\.R|.#nuwiuZΜ"L8cJh6q'Î,9bKPB[ %W/Pj3kѯy^+xE.*74׌*kdU[~lJX4^fGحvT.L$VqJM*gm|twEKi[U0 N8bsB/aA}e <zԼԎp0d΁;` 6?gV"G}BeHIqjNqg66wݝrT~/W`: Q15A2=ez8K N4䆸vyNk& \A L"dVHuL KŞGL*L^9B#!$G C D3!܀Mp( [C3``v ֜b%?҈c.4 \ sY}Ꚑ&?3#b"J.k9ct͡f_*Dkem/6G!ԓg a#p;  sU6؎p˸8#D?^_t٪ɛeY'Qj^ZxHHgH4h]?J.d6QwQ + q7'z((tTYX]Սȷߥx8,sOO5V!ZeU*Hܘ8/՝ٸړp[W/x#` 8l#U1Iy4 k ,4|ZQߋ9Jzh y:WY@Nd(;/*z:Q@P)"R,5#BUaP 6HNbA= l&dZ)lTpOjP0w2Hq Fg?l⩳o'! tpIfV:Vry˛q=P@Jpl697]Y5l#E he?s-Ka]!(Li(nŷ̓xvD&&?&h>_n[+T+*x+Cv6\ػ~ q?S>@cC%<˼elA;>ir`⬝"kǮFs 3 n!j]ނ`59`fΥCbori]ii1"po#Ў#YeӖP3VCN!F RDEA##f01?,{.송\KEnv(P&-rA WSJO3"e'&PDzHR_",2.-q;b8 N%B7Xe`VE+< yZLdG;Dp#zhxC8pD d*: &R]_g#0 L5ֲ"7KScEB,C_"Da<+40OΡqF~ozm+.]+~:r @3ct;nw bx0]G "tC-.o͡cyYa$))) 1[UcVSawx~BrmIתI<:(x67aCz:F:CW/- ({!XZBfM2wn)1:E%:CR|6]>+aX̭}_gTF Ml!:g\5Oft}U-IA6YO\D [@+|x?c 2,v&юRt'۱104dcvjEd^vR򝞆;5S-ÛrBfhV͂370 cP/ r=͓?vGvNzΊoAr;M-w3n0A .N*d{jZ`_-TP"0?? ֞aB:ꦖ&<PY&Vjl?IZF+Βv`*{dus NX,3_צ7Xce#mw`Rdh$$Xnwc@ԙI1cX񚍆|@!0Wg=|ex=}rOLa`I@[|'=LlBFbz`jO@s[§ #e ;a2?zY# ^`K8-IّQ@ǥu6aKk궥SaH2z3V)k]V =ZA~3 C:弍$-&jhVvZ0}߶@Y&V(;`0h5t6zf,;y]g{`VI/=Z$f;-utrɖe׎,'}k( (5#2UK9qн0!\˛ QQ io15vq{5r}\((kUgkKVjAy l) Г~Bp#Hѭѡ(7;t.IxB;WK 涔Igԣ&G8yR,cćN`S>0 I~*fr݀X7C=rsHZ,{{]%m/)' |ÚtqyB%횾BZH~,WpYa=}<HgzLdϡ1E+0D+" FaxcF_[IQVC Nژİ{N(aPN4 pDkv&*t2]?CB+}b3Щ),4_5k\s=Xg>R8 Gdo`*`h 'R?3bCw[ udngA_.Fvxwo}DjmzU2}r ('C@-303H(-=%X\>i=@ŪY%t~׉.z̿fa $i]7{JWŹ);2sQPI>=b1Vs>!3CTŁ-tJѕݸy;Ug`h$KtK^@`}GM> wb5==̬)P9Z)V:z/Up k5uݩɷ$yeVyீ-YW&B\nuT|O$uDN3ċЄ^!:Nw[S^a*1݂W%["#N!|Bn)H4f0B7pZb(TU6.Xf˭I`i2t>+R|"=q u1jķiaٳxLawiMX F{h὘8$BC {Cbb+mpDt2g?m9򂨸̾_o.jܓ7X @טb)0]kY#rΑ `X]zIjJhD?*[3<_=[c-W)stCxϹNv&]NՆO|2C ;nԃxlUkS^Etvj&7Oړyx'bZ;><.ӻ1n҇ vxhJFM9Cq/{S3m'c0/PN~֤ zvvVZ!niZ0cքٙ]uH&jy B9`Żn;G8Ѳ, G :r,^ZQPcy<ǘZD >NP+e)G/ݒT?@YUdGg ]p[qJ^3Zp.5Hbd3yF&7rRCw7쨰^zSmj8T }[EY]U'@ dI^h25x=@aMpG*8_Y~)\[zud=VL>D7 DeE i+stl!a_bM.{[ZxG`܀%6~L?nYn2/, :sɯ&?oUV M!P ު|DFh:hY#t݆ROK=NXρAF%6 緧R%UH ]Dā6̜^"4czTîلާQ:șPOL\g'x +xh t(MVledVX4 /+PrC: Q}WbB#^6ݩ[s%`㿰4J}Hg+ܜ_!CE>.p|bUz g9j::—q@?{`[t=d ޮ 3VAUBUD "$?ɿ6XD_N%T 4KUWFЬeAa`>Zč;%;%g֊O^b8F/\坌2ͳ|g̈́P5wi6:YSH,ݣب\o-}IN6M;+Yo$,nGONKŠv(wZ5}l#t=/Gh5/Tc$t#řDqB'C1pg 6+XfטnaR<#h͵-bRy|IMa u]t'3niƱ:MR5 i7w_D<0.r;J <҂hnőNL p_?BkBtv.qNƊl&1WԽpy XkL')~Gu2SΈ)ѫZȃ+:PWݼ6TiB\>+_G.Z #oteWFya|`#VƙTLs{ 3o2;b$I  m4#eAFCg,m7KFJJܔd8!*EZ^H_xA`.$F֦5pZ+n- ٣==8=hߞ η.(<B5P.KzQG){JoSY {qF+2i8O]mnll"?[ApWvEd&ZlʁEs5 {޹-a$6'3GkF:BD>Tw$4kŗajV1Z7HHQ۱$::m֭KH@ǵA@3Q:yEG,v\E{ǮR`rj)NZ>6yjqodޯ'ĬE bͺҜ0Ɓ/Thz^XVzR݈gg Zus9BדmpA;8=^6{6N3Xg3-P&WNp  :K5N?HiPy.+ʎFs%{>=%`FFBwfaG 6suārCqX⡻D ǿ%|y,{O MK>[-L[_w Ʉ~ *][ !֠L ϕ ~Ob|8ӓRF @_ =ݥ?P.)ůW-|Ѩ奙}Td ;H/#&ӯW]q h>62a. WZ^U9؝ǦIj(QDYv!{A8Zn➑֩%G!t)fNK1i *D9alBJe:s]Xf⫲0/Y~voj/ct$XYߙY/j$.Wll]ϬT I7">hz1xnTt-w%Td:xVqGJ~Z^@32q{S|1PY-Z]:Tv+E1Aj$ e3EBs!PQf"!#[Q6L N vT[mS[m¨8˖^˿8~HtD/[W~#uRhQc! V5+#!P{WhU^:Bf6C]t֣ s"]:Y҉ t19{0LWbi6WD$I@C c8T]ȷ=uF㥺B5U, |frmf+ܹ;0LGc|N˔*3!'T>כSSq؋ɴ0J./4nʺcio߷;yij{s/>;![Bxy@OioJn3czH7(R"(/1326̄Xƭ-{G`{W0L"kvc5W}\̜j͸IWwS1r9(L%ḃ~@P1ȳNiYw(HGֶkPsSS\,7p90ETIIT#5ԠY8`uKͯ3à4K-\Z[~ɿy~2AiP^MKRA^-e3G3(c0u.MȽqjd;Wih*譔еKnί14K*g](0 ?gۜpqɾ̨ӤOIs9Uى<׶] 1oHi)K$5 .hKkլ<NVP=I9웨֕cV{( L S}q4n,};[{@x׬]noR W/+x7[Zxc~!yDzK>k#tİ7ҪY %^8s&>RPoOq @0@S+i89Gf=ezӣ 7_gVHXiތh7LgQ^d (_xv¼KI&@ܜ k vto L x[ӈ2E|g+TUc$sg7 ٲ*ԐePE_,'oXHZ%4tͰ̰B<~ 4c0˗jJrbuN (h~X3TTH!lnO- n jkk9\犉7Hv$AO":~ ^vgVuoM@_4W+\纂[sw4e̗W g(--db{\szFCݜy2$jVu]+IӍ$I4:[}e 3HV|_/W/ -R,GB]'[3*e\ϲ`)u&vfz14$s$dR~[\#`.O=?c%"/fYmS3R/R>7=9Hn p~/>lhw+r-N?ŐF= ~c'5ۜdRuӫ߇R[A]WՄ&%tuDՆ$z,72>mo&1W23 e:rOPw&ƨջ;E#x.?/ҧ6VI].d@ox+ ws|C٩tR)g5k ڛE.`!ޣ _B(saKڦ؁1m1lޝ{S+H}6R5+a~19y2#ZTuXD9,tmJ0mOiP j^_-ذ,U^ Kvo9$LS>J =V#u*؈.`@mOOnf`[`Q"b{Dj8& fZ-5(o{!íꥎky摢+)Xgqρ'Ҷr`̮q>iIϔJ#Te 6[rbJziYkJt]]}1t>T?!MP0֎cc[:n2yO}TMƒ{tĿ*Q+3@㧵-hwܙ] U/h#f_ JBoGXƺP]p+,"j!PeD@ VW0e3)iJ8JG}dO89Z #a䘝Xnrxza~̤JO^mJq*z"Ǽ:+Hp8=q1-J2,|Q̌&OidS܂WanÈN ˆ鱙S{XFo)4b0e>Z\ Fkom#lzH 2fvMT]?,$ /XHڶ#螜<ЊQiznDy@?؇|P@(YXVS NjhM5nIz,hi96hYh~q%ϪƧDQD!DNPv.o(.~]ǻ\8[ ݖ'|TCԮe껥p]VYW01)Qz,g?13¥]0.y<\qt9ʤ/(Zȷo*wDu6Qa4&x V;S-J? ),2Wnĵ廢OL[D9#:(跪k)&F">YJIS\.6BwM|{ʖ%>6vd>n6K>k;.E"L[V/W&u(j~~TD^L( VGW!pm#3|T^fʋE>[ 40s <|{vsJ59f}-,zZWJ؞#N+D@YOݥN)q|v~s;%@ 9 |rH6_؊t?hR[GZIJWxAmBzT ۈs Zۧny٪P -c5,2%q v{靝ʁ{.!:U/)S/9׃'VqMHr) Ō"PZd}],? ?gmY>YZP\=c 8mq7Ⱦom~skVMR18q@ @ۜc=@w#|67*Xk\L+nhE pb|b 8 5!GfV~]RI0=…[DDXׯ_Shb) J|{9f;P9qFrxV|2^94sI\ZLUGT~!΄|tZe7|we$V8kV+qiSǰhFk\JODLQݵGMUvrΉN5)_Ѭ&i7b@/&WJcWS L]uk@"fQ]Zb%06n ')25A3i0ޥΙXU~@ER5 :bs1LվJ9H%<88O %Dp$*R.06wpfKw *,UƟH[6/c4㡃$NZ&RCY"R&<fU|kC5)]IIfnp@:ϤfTQ*Xt>l{zd&p^: Thh~P|i)!0/:OAN U`9]'[ه?FOKuObm#d~@N>_*u`x}_:tEe%>qFH+1e6vKt~=?rI2aJS[cQŮ;%M`*'>+BDAECv:O,>ΨMMQŢŊ߭6[=AzI?|mCY!ͻA~3N9M ŵyB*j9 [Yfbe!Y ?Y')xXgH nq׀o3eڥ^ogt'HpÎo5Ue^ $2K,R +t@ɪlSWԂ`YOcv/tjC7<€d&VR _mVqI/=5c>3#nCiAEU9Yn Ƒ6gHk.n.|d6O^-!ڶ3Vbߕ>dY{z(#{[GP{ rǚ} 'I)5bof&%(OL( uHףg ;H]n 5NӞ҃sMoB\ e:^aI -F<|4#X+{\9V=V(Ne<*].)CV'؟&We1hY`=U>X6I*Yx+kMw僣T>we-m!#Yg-;6 2YpsX(bT5|YH%>u!P`cN.zUY#8i!"C(Ewz2!ہUqvWQn9F-5Ǫnn^9^yGNi3Q…gkRjy%o/}.Gs"sx*(9Zq05;W`pH \`GN`= uÒ(4bc Fx1L3[,5MWݼ CGx+Yoqx=D_ ]_nRb5٩%2qn2` %> %+%8Ų?b?ۓ({UzhdU_>5Ć1i1ɛ%nCxc-ZK'҄ߒQHick,$X[ eEK3.m8Qwb7P9^4 ^O|#w1;凉D$:6Qևi@µw(`qEŏo+2U}la@YfLQfS }d&(@.,{A&68n/jr_b 7o:+c80;*-L7׭7E}C-4]#9I" AeN5ȜV2yl7VK][%0k/0U8{L?+@J_W\#Bo+MI%sı3qFn4Je4zLVSzu޵O~\PU88@)\Ə kGOڊ(T9qJ@T:~_-u/w(9[6e#Y\W ~EM6ABRk ;i,D9Yb[JBb66AKm_ U\>:P2B `Bay\PU8R2z:pΎRgm8`АβŝDM\SRg7;>@u\TjǼ|* 韙 }]1JKtx;z=iד\zA݇)ޞ'!WtT}&*47$\#*?=G'y@*'Ue0=KPkGH9@ 0v ( J*{0`ϋp_AK !34v>% @(-E='=)6xWXXPVL?5(P~ ﲻFk2i)0vk!rk \T9XJmVz:eJ!\i8R!T5qk 8~ %3-m?{M7^/A^oRxpO`L 'k"$r嶕aGCu 5hӊt"d3Xj} XKVf$ӢY2oʠ|65LS$13H#Ǡ@C33Bfe9Ŭ:W ${Ar Q*ݭȒ(ngUDR$T }V#}.N>m0f2mRHO|!( x% {Aѻ{evy-g݌YȤNBLv*AwӁP@I 4j 4,U^Wo?ɭY^Z6ɽTL)8SH0;`e\  [9LIߠ6;|a^]} +n\ĉy3GI uE|ӚPґvau & ^wóh.r0\"1ڒ[(6'v03>~R.N/*ue1W+c6xQ3Rm3 ƫꮎ. +&/l\r3lخ>(smK^ـr֎M7e//m)I+* ]SP  qCtfVTjk5(A/Qb#*Řu}w \ hWs# ֑ lDb{+^ I31"^\4g91 DCPsi~t7\k2"Z;2ia@ʥ ~V{Nl1u ңv&^8p/ Ӳ,ZQ [3Il!Vvj4sLLj=W >!ҀoPg[W_s/%Uo}\Y3KnK9TmlwDS%٭V9|ձ'.5}JYLq jar mL{l[qU{Qh:#R{-쏪Y59<]4T֩7 ĖF6IE-<kV7?;eݍЏHDl}Op 3Qs\F鶴`1DKKSxݰmxpC91+fEj )ޣQA3˿|"ڈDav3$_G` *8VAs24 %54"z;56 n&V啒?n dEx:N!=VArq¶ܯK&~6i. K/Zx\AX TVTb'ۚ$JE34<5y7 YhSG# `S~t5X+Fx %AɅ@cBj7cK(n.̓1*$LH?*oTG=FΆ|,P@s&QGj]8kWU >@70줴 @!;j6;٘㺴H`<󇟍F O xk 4z.ϱYl&eWW kFEPJޣP~s&)oZ,͑.W&O`|n5r>:ACC6qcfXDư)>`:R - EЁ@})41R=,},Mo;P=dyz~'.-6$`eb|DLPji>'* 8iEܡmGzHKT힚 )bΡC\M8W 5mڅn%^#~0+I㙃-wht|WgMvs ̤(hYW"3+lׅ0.(-(֎K X?Άk@3Tȯ{NB >wa8LIVXj4- zӨ9Ka1rҌ2\7]N5C=-%Kn!vf".fa$w;=Ozm{LA`rT@_e 2 nSnԩ qkSpо_|'f9&|l ,qhqHءF c+C>T4T۱vw6&**6?ɐ͐/g8xi$a͇9rZ\uL+8%-}2?U әAq.Y#R E@h'^Jryp/<}&rRu=d+68LÚҗY>Hj TBFz*i,l SSkV][Sb6|$h%u "scvX:zc*3IEx&(\ 4ZJ\h$/5?ͼvAvr8x@śždF&?ZTpN Gg><@j<I&b]pp >'_wؿ]mZqqNow"ZaҫރXp@MZ2  %YryPxTB!q3r:UMN0)ɎUQKTd%0GΫJ hx |dJo&xycEwC֑=Mb؉i)BJ~?4¢9;$h{lEJl(dMzc= [b6Wvs]04uF]T6듢I`xeL tdrYA,z;(Z1ġKMFGWtz@Vtk`ImŴ1)h2晶 9U@h&!eڧ:@ b>3QjM*RTh["#d=;o{&'@ .κJz9pG8_yB?!=yk 7 :Hlbz SK_zI<Ė}g;8Z.V!8}Uc?LB@0PE4 vzC6i迎V2ft7wy ڱq`7튻1Z Ldrs(H[(&M}0G8@gF~BNpxFi@{j[g# feE .(Y]/-f[voTO&W3;g7 ?.ӓ:0{I*/ᚗNQ.^95kVl %rm֤nى"xҡ W!DX*=A 6)H~t,^}B"Os鯤~@̐?"NT!fvW".xM$bQ`7rk縓{bֱ,Γ=˘O'~`V-#3.f$рs ˸(p%j䡲]@zDYȣ]}|ż%Shy8/;#}+B<甁rz0c6 -ZtvbC2F99{4(b-_^ҐrPkמOFԿ2YKTwx2b!@i ~S˘T%Qy15磣isQ@w,Ϯp0ICҿ+v wbLscС{Ò<ݾb-۩ >-e.!(W7r|%{A5CuH Ө˫~I^g}6zS:P]cYk^E Tm:rQH\q򯕂8su|Aش9dV1s.j7]Jy); #C d?V`R96}B^3j]$;4Bc*Kko r)}lI2IB 0ЋnU!pX:*!]f_+X|VZGVm B k]&jѷat<vZ65%U6BFwFT8$yx 1Ϥq{ٺgF+tէ:(ё u?t{ ^7|u>r%[Z(b=}ۜqOE}dd~Q:W7HZџ)8 [ZHY/ֲf7pR4jڋ aA]u`SrMBQ _MZ:e]+p{ :͜wpmp@gH)Y$uI[Ğ'I;"J찼qh0׺\X|65*f1O[h GBǏ|k+lLF7`x܂j *N {]'¹a*O\HZh 6]㙚6io|Ys)?%N ?`oًs(%Zl4`Qދ g\?Muȹ{;B{BKմ(plGҵ [J1_aaC\]3Rӯ@Mωevn2Iךt{5poaq S̋s]eUрw`oKL+Slr 7[CiԹ)8jw #B1S'2&[$w!MuZz'0 cA`̺BV,'#iw@2E?ANIpKijzS;ګdx㐚{=͊[W%Wdo{%|9Mw߁ 1Fq*+Z :.}[o SZXo1IW"ENn ۖV'[ : xi 7W2{M*QylɃ†K-Mɐ3AE&KMq]Uo kR^ 3aƾnT³VUʓ/SxXpJn 2=G(p`ke3^k1'Dޫ 3ϨҶT7AAh%ضLX''8G0?Ȥ> /g˔IV9e/g/[>Vt5Qv-\wQ;ÙOn&2I90]7 Q\3شAnf/_۽|($E$4.OޟeBqZ@t3?j{Z-x!ry\h%f>(ܡIӌ [%mJ;6g=$3^=vkͅxA:eyR*CjBPs#0k TdV`xֱ#d5~H86EȗG5k ᓚ]GL$E:늼3m-thx R'Aԋ(ǩ6qqp`kCX Y罁8'"Ԝr"_P@v9~'у|+d6lZDr) "פX5pTC//A}F!3%,'+}\LP!hǁ 5XK{xvچ3SX.I[Pu,#}O]>(5RJR1&_{5,,ؗmGO5hyde+"x~m\Lm-5+jyaS5QnlG9cVuQ4;{.޻D!{HN4Z~3k].~ՖFxn c Jq(gaF&,̝z/eH1#6;!nPm|(6+MhN?sFI4w cH˺kP7W&]XSor 6mܣTYN)y3cN1Vcr^Y Y| x2bdT_1|D af%z(-eXNA @mJ)_BqFF-s$ ϘDUqupe ~B"\H,Q<<ĴD7W] XN. YΧ}TmR3KJZy~/7{k,.zcT2!u49X΄D4q!:J`[h H+VF[%e"Χ=H)H:f+s~4>R+ l.~ZTv6eC SޣSCS_.Ke=tkJn h`oJG~;S!p_RO}]eAJ`y*WpRLh }Yu:G+H nE<h^AKřq$; 4>,h# $W"AȣdJ6JKb]ef m dҶVd٭o ]HAm=ܪ.}ԧ jX]UN@gj}虇2zac lQ"rf9 aبn?As>t&UTH>fەϋ>īE)Aw!!Б"I `P*=%$9YsPSq=60}f3Nd"GBOШE:aNˬ{';yr?qs0+QâUBjLOKjl֛@anHBRVs!mm zΎV[>/ | A5aVQmo_Eʫ(҄k1/Vp?0,g! x1 8hNj/."3O,S}yUl=ɚJΙE1 WCe_PCaB G0jZgo@%ԒĭZ:"c`'_d& sO&()a=csq')񊀺zO|noĽ-~IN;3#RB"cXL+?굢Z#zX*dխ>(aP\SbJΖ}G RHX+9FAER38UU0C-ueΉW5PvW``*3 đim lo0;Hd&q05!{ߪp\f0jա#ĘG`i%*({h++}Aℴ 6Y?nC2j06e$~LOTs#;tv\QˇA~ɿ֝yCq\ %9Q.@^Cdrc-Cr޳ܥRF0yҕo0*Tstk$&s.F'b-;(M kC:NZ2l5y'* ^"_Vܝ{6Fy^Ȱ ]~i `lb0e2}"L_poLkG6#RēWTzbqukċ8)tX"]D%y1s0~ @ɱc&'<6kIAx^8H=[ȁ{\I8֣jwWbF׼bHOJz:8O>2?\Z;F/nD U9O(ru밶I,,hQP9FAuB;3`'Vt`AV[);MKEw9Q<^b}Ŀ* ửjbiTjNa>*gիz`/v&IP[#YS݀km Z'9,ݓ.W}~Y8@w 䌒䃘5I=hUb9B_u+L JQ5L'+ D%ʿ nAg*\nDz;N<.e?/g\D3%˪JB@M[MP~" `|Fn>J`?qY0jɌ}[1a*HO q;YSCF2-#~K|m2J&Z%vGQ( # {Ւ%Niݻ]#cބ[$*yΤ٫d"-evKj!ugmӬA7cxU~_oݱf R>WC >j܋a5]1H90c }CGouvD4>u:=mq Ii$^TU%}8ctsѤVq#9\N9a\&TU'0k=Ex>M 5ϝ1ta{" u6x&RZWCn5|G֍%Y!C\YOt?3}Fn.YA[=Xz_b DŖ,FѬ)5D^e 13ߕTŞQ>yVBd;Y65 vM%|tTKJnlXRKeVCkL褸[1-G\ /Kx]uwTB2;M=: 5yowJ7BM6:&c9/<<;Vx3JWՋ?>24$Z&m`ӹxݘ=R<ӵ@EJ ]j}7;wñsl:}lQ%K'& "+;qrzb~Z9PX)]=Ry%)Zש@Rx7ʄa=xȈn$]AMF5lفIIgECrh%A2կ)aaK:F-Z:-3`u@t͇D 5E HFuX ih,ƨ3@}qxX>3-dC;4}oBXEЮcandˉ#C(aJ)y⧹TeUj;~g*ķI# tK5Mz(xAH6ňJ|p'$ӚLMu"Ax &?_>ZO- 7yj/h_`T"n>.Z LB6fr_2!An3y@=@s>1/9S 5ZjnXaO"C*Jmg%D: +8vd XjDg/n yNMZިycnQ=eV=}L3\I r ~hmE70tr9{}{ۯLc_PM^(P 6Ch32L"MGg QiMc \6 &u&imQϣDsIEœ;!$!.,Z'uTQ:)QSCv1ND`]u5b/T Golr.W2eסKgl?? ~?|TpXj*~;R% 7iȱV- dX/O-,/ML6Qxʞ䫚X?@ AOoU0'mlg.`<Ȥ ;{׸=,gZ0 C'Zžn]WYXW10U$=!4ۣ< k퐸%Uސ"X}ޕw.J ԸYA.i!xt+@Қt`íL!ude/ Gi϶ѡ.8>U'+-Yӊ~ngrفr'MrthGT(Moxَ2IPOmE>en*RMT/ C{[tس2*r-U=wmQ?~z_iGk<20֬hE<ƜԒF4AA#,bdt2k!Zh߳@D2lcJڇya)E`| Jx~ pe0_եSd:ɜ3k9 *E5 }DH ٬A/P—$4hrMui5YUbĞ2[W97G{;~R$klB6߂}G9 ZQ9 AɟU+*`feI78YN bߧ LC'GEZ ({+*|1tTAm$KMLO?n%^(Iyc'r^kZ~Vrl):g"Y/5>)I"12~ %$WI>;..௰uӃ J)ƨjv 3 +A8C`.it@9QT{㡞ABI]6Pfnh C , 3jQ8XL9ۈ@'?Wm4Q -b;o}2:๗ rd+mEtmAQX1,-,-0M+$C^Aѝ Z_@C52s Э/3+Ҍ_lݳϗ"f@n9f](p>C%Wj`R!,(/,XHng:ܨWLzJ{@%f\$>l<"OJǺ~7߼Ύv˞̣Z:q1P[b ,咄=r}"a~ K (/^_+WH; /|Ҋ\ylom&؏()- 3r֍#MVȳuV1.t9 _%< ņED-i6L~ ✯ʑ9ïNSB&yjiI,jomY=vXv4qH6.Qo瞳O]guWCxŲ|L ]u]UarF/EJoU5Lsj`r-TAB :+ecqZ N $ h+<)|YQ{[b:L-8dZ 5:'fNjop죝 ?ƅD< _͜.{m澼 3YHqFs~ZD#.Js 4",wֆ1׶e kM_iդMifdfk0T_tn.m\MwxӁc˴800xz/|_ͤ.WiLW4o. Ez:nɶĤ`75gYN:d=ʞkXfeh 0 =Gjs;" }NQJg_b3yb>F^`5/=xcoĖ7sw5`$a9jlO2S>!pnHmQ'Cl$u;Q˞Hc%[ y93Y+Qzd p((Ũ`.\ڣ]2wQs."" /ي %; s61ˇ4V21-B8}%/H{ޜ|mIexn|2KCPz3nD*>:b(bZuA=q$Nݖ h8a N(Lc>%י*A.ݩ 1hA]*HúL3=C=d3j=HINH$I P Lfz^2cN"-Ў^hh?4i @c׭jHb(SZ9 $SqÀPr#㷋s=mwQ;>.q/)yWD;,NuS {6kTRqc,' JlwJVAuSѿ9d6C掾O֚0π[Sg[Uu%hCKnQVڎ{5_Cn)c|L8Cˑ4X,l3Ebu 9[888ŏF( g :J#sNO=}*Ql&2o(דAyohʐP +}ބޤTcn cgL|o $TK"*UL2)cpD!N=/uCL.ZP+ZY0) Hb(.LAߟx\%/1ޚ3nRdUGG:3*Aa:"'@OZx$S֩z4S%sV06 :]\ύg5 Rt$X r$DdK\=ڣQ(Xl$1>) }2ҼMB?#6 FJQ!r W7(ZƺUFL!ݾ Æls: KXqVma / [ɥ<*:B!Cv wdIvTq|} E<aJ64E0РXlW  صK.ܰډbm[ݎg Q>O_x.^w` ub"l .W@a\ ZptixzdMcO`c~7'r;A6PNJݬrq3}^wvvCzbh1˸LZ,0DX-|.j"Yntq(^SsEVocQvu0LCPXmIې6:~ՙS[pfLhDF'eb v[ ӸXLdѴ"$R/_UaN+JnD2Zo>mHH)|5M۽ьA&<+1~;<٩Ε-&V.I$--xD`{ovIowh1HZOU#ȿA+15Lfܝ;5tpP5\Quj-z TtDql:'s0g'#nP<5z |kas>P ?1HlLje6HG&h1n \*_)==o, HyPe#o JG4Pq5 ӿz&ͭ ,銣Y18B@I :M 'bP0 ඓD jʽ!W=uVt`:,4cg~'|f5P.:A>b/;ZwRo֡m-f"W^৑Rn*OH7ѱQ~)ϊ^1CX԰ d0t*ߕve޶TF8 Y<W:$!iW:[l'=bxnSHҪcvSS(<x,Rb!UYE.ҷ~Bx!>Zx}GsR:qN*jfXȪ .eFy7ybGr~֦ 6T;Q)?T]JJ|a8Ά@7m|1Z:e>Sϳw:b{aGM^Z:M7=eY&"G?3<>BcQ1,>=%a46 TWyMr1m+%וaF9i RQ{lӎ'3Dn=Oo+Lq ՜y@|"iOҟ1Lo%au&ɳ8,=ErJ/G#:͊*_o+gAu5E.sĨOm;4cOAn=qt tGQ-N-JЅV/]ujbh'$9ݱyX/^ᵕ}R94[BBDi|"4YK+7:FbY!TA@ZzW!Sl,=.zH;J2D&qCRs66.aPHe,Ee浶^Q/]$Da#L.29o1Ua2=faU9tec<nvWqk5L`_Jp{T _5}O:wZzw"쐩㱲g!> bt 7.ѡ.j+;;HU%=y[zV=$KT: r+DPRH ZPeT bPQ{V[4=_1wv{q@G$2pLLIsn~$rQ%zj仜 k+ۆLʵA&><_ "QXs5z5zj;zPf[vv@GZ]7j=ϯ {rLnB%B}wS.qu3e]n SIS!R 13ڏc4ow4TɍEECDg!42[Ëd%kX%SD;a6-G4hwԐ*Wrj\nMj|:7nbI>g0YIϠ>F5MG^]d-Tɰ0'Fq;Y;`J%wmTM*AguB k rCOR-)εeKuLncyQ%7&W@8͙P]"G1uYyIu1:9.K7LV dAyPs|;in"I}B}|@J{Ac(&.>IN[^ك,{,.* u|{@7aD4'q'9Ӳ/ :HKS؄wmc.X q6C&e+.Ait8HBpw*~@Mކq߬e\U.;LѢҫ+YՇÊ ? GٓISҧil{wvwu8 8sRpAM ghUF棈+z?=:~~2)Rv3jkD۞ZofR+!Ud TnꏚLpe/]O;-1d(9e @>J8M <io\k]KLoG9:lT9Rwh&ڢZ{D7Y]C{mxw{Y ZC24:R\v~q"u\[T`3toC?!`+P&{CŁ*$mf b[Q#H+926Kk ?:P1>w+iЃ뫚m1 Ї1tb};:QOႠPsI*ChK m~'qJªG[`4|W 4,)`i nPbH;Ɂ+ Ay`M3ljp.a#j/(m^WXEŽwcƬ=qh-+ķ}@ƇC?#o[ ˿kREPXKr%moh2:;z 0U$c׮n9G&;o/+tn1QRШ1Op1s5 mĆaEЕ2ф\K}|ڇey&&Kws.hf׃k8π Oݢl<8kX BbaYU`T-eᎿy1k],  )ͽ׏n%9Ή̆ʝȥIp |$Հ mfXGD38I QN]{;Ưll7K۠Hzi-! D#6mT2hVĽ,j>U~D8< %R>(̀dk! Fg|ggb醅G=+%'3S&/g>hO9fY.e>+FgnV2'a 1^=>6SE+? ?.*oSh]{[y𢐓 DLwRXHz?y̓4Rtv'wq}I4̙۫6Iex]ś*ﯯϏl }7Ӧ H&NYKwoV 4F5"c3l@`jWGǛr7YUh-zȊ`hY;^ c 109“XbF "E y6qz!5Voc1<.;Ay :w7Dʢq?)M< # cz`@ZyXժrŹcĉ:L~|+J0ko͐6%۾1%5*( 5PC=mC;碉j!<(٥QCeh^>! 3mz` {B5'yIL&@VdxKaՄ mY7, kl&y=˟>w(4Wf-N=uűdc&x^pTsuQNR_6@c0q/)WUUςnY磤C/SBKaw';G2HJ So/ճGo:lf{ x9,(Ǩ_&ÿ219WrQgzۡN<ZӦ#L)P~(,S_΀u=b?/cS#Kg4Xu~ĄYpܮXRn"s\g`aM P"'VK"h<7By д-Imы/;o^QWzÜ.CR_J]0\٤λUsgUE.Ph>!pӺ}XOpai4%#KYrA@#HpƠ0N>QG~a$Ꝧm!.[~W& Ltt, ϤDe:n#>Tt^vD̼T-HXٍ#gk&៙ ku=g,4>1zL"r3~ FB轂=},{rw{D1%YQ }[:ƇnTxøin7b.&{1RF3+ \ƼŠ!#|p1Ϟ(zVYD$Fڴ^Xں֍j"$&j2>34 ׶,xzq8~Z} ϳjm 1͜P?Y0E. rrBƭV/8F~KCE>LihF7t1VI?,Z& Í%@E}Q4 `[D i=]]U_Fm[27Vc^ Hmju1čBqWF0Uw8ؾP?Fvtk43heIV 4!IA&&kA]CwM\q艿_d>ǺsMښ N kf(ÚqC_}Uz驩3w}#cP^C>3ΞZ[# @/4Iw[&_,53^ĚW`{T^]ܺu6c["P@H0S{R/х4ˌoJ+ lRo)=}iN;+<D2&CTY/F.Oom5%j7|Mk?v H@iԘxVͮ]pth. J?",4-R˨J2h"@D03grSC:V;`3%[гę44Un^6}F.xݚF"GHEh0*o6ٜ/q>.]blsw hp"Pў)nj7Xh|cr}Fn+%x֎۔އdX8Av` [kdGcgX+T>j;>t[}ď_ZxYP$Tȟ z{nlqJڣ³R5( ##_"߹y_] N4+^U=˘ /mۧy͵{O}(-O.pj;csPPpja7A7oV< nrB } Ah)\D`K~AVsg:A} ESgOc($J7 tq5H7-_D!*7(z IUC{E{1AS"0 wRkP=rŜdiD{JEzgR$7*(rFV"g؅OZl1d1Gzw2x! DRwՖxoQַ9U¯-޸?ͮ[DjgMQyt2;E},d+́Ws䒝If:tW(}PeAf wķ\/2-}ek`:J ΎdR>>z̘3E@qҋ".h5u׎9C^.Om~WPȉ0g/vtr{h1#m9XNŲ6WŮLi?lqSׇ hvxA],BoB+f5a`u$Ӿ.g0Cx-I2G 85{52EWmƕjdun3Vηn-ZK0'>oqM@A*nFry_g%t X|2F#0-^{*j1f j}&$,R ?.|Rn;Sx??]`fnS~YVCil&6/ѣԦK(K.(- uy;Dz0z{!'#*n+KcdSş͝"6fyZL&Z<9Φx9#iA 5DpQeR.\d| KO,"Տ׸54b^E5CMۙɣkL]'_Ny97넢PBmf`NB߫瀻Y=ɻbul@WL Ks#b"oR CqwpDd>M<|0Sm XqD*m5`՟e4ZnYD+uiYW.Ky#)Н{dDyKbZP烻)%[D`p1-̧.l~p9 PtHR~tD ,Qt瓄;ZvFd.gnš2b̛)=Ȋ\[.Vw˞ӵy"#(Љ7;,O{T׌s[MS9%ԜN|XoIhÌfw>iG)bX# iVK)iW2ȣǶtpo aDڼц1E2Z&|nAA"kS{&@qFBuz;!p2"4vYHo0Y"0F*1:'Uܵ]z5{6짰Yo}xR}7R>OO̓4?^ZQĖI*s1؍{s'BbK2A<Φ4[YE k]oiQA#E XR]v#f6 U&yѦ:#dJp'9: u1Ȯ_ĊZnǰLWDT}w:^nJKS+f0i5KNH+xx}B) vw=AQ&Pb߿b]M w39%ujܫ}Gpl+7z;Cz|xAlN~Òe͹b,G@xsji iW0JTTn.qZ39 @]4<}d:Gׂ-Fr~D(@0WZ^͌O/W/w`@RfAD*2Ϋ|Sq5̾/|(ޑ`%lD"q," 8׬8z010p0w#g0焓6iXHnh݁qGjr^4'a7?|v_|cWeνB#\Re3b%)h4uB ;7 yE00 ]3owGnߢ&r-Hq*ww"ЧxXz P?`C[R5Uـ}&/S!Ѵ :Vn=)HJFK*5 *(RQz=fDJַXս2C"nJ~w9J:mYR=0 Ɵ]:Sԝdõ&hLag 1:BTk9?]< y $]L52 !Qxhiml] Z&jfBbxlsٔ!/D֖`)6?dswS~#z9U]LgW0VOVQ^I ,3񽉭a!kSt;_bޭB&HRt\(]|?BT~(<@yTziGOJ.k C^?qTIn޾)<2rayNH}$=fVy\ߋ ]aqZEC ĉ!i접\\՗OyK5piWL =] I›i~#b33uqH^yyE[`Lx֊1xl_/ :X|e__u+ /6)ۉ>r3@HMtpJBQ ,3Br` mwbjz0K?H 3vIjӳ t"휜Zz% ~wCH%s8YQ EP/ 5q9/IZBCUvʽ^R9Ԡ.n};{Vi<gf +d]& ʮX8,Ad_WW"Sf:xI&C%44] [aL@/7݇J&V/6$O^K2UOBT@ ۤ/>n\N{ u[fU9;?uvX s }}yA0iIX04?2(z]=܂Snd@ٟw. %K5X8VC~V!3'^8fCa|'BFv"`Qs;|o@ZAOgn=F&@*4|„-L=C~딥dCݯŎy˚;Zf hѲ5uN1-ވhp@G+S!Zv6yH!6t/eu `ӠG L=x%nSoReq|V68 >4$.WѓdԀe+u3@5aѭ@uvLM b"h+5kW%pvkj~d`LzbK2[_8&W`b4ޖV}adJ w'u(79|T~`A%y?'Qy8R$nUGR-ҧr}M 7fKA.t@2Y< }+᧎zLrk4\mFk O/us,-8:<୮n|D7OWiC:RI>a_ Er]s;|w3hX%@P.Lv5ܑqѕB[n'nދƥTE keEYi52Y`2B^.28QxL"M}?-!)~sP/0E.AEp/((O>j,ޒk>z,YE9U$Ulq=gAIf/ڲʗG*ytM/ ʕ&o,0:,3:S yEIUv!ߴ ɗW'羆j,koÇjM4V^_BF$oi7ۙPt]UDR!bn$ F>SZٟg}7~p_dS?"XqpAh=ϨujH"ʐz҃j3t.ji!L eOTۜ5jͮ_Y"pσZC6b7 ~eaTL䓙,*<ԙWM9qy@r?gXo"bNiµQÌB|_,0p׾-x/hU-:fD W|ieLowُÈ^ km{6p85ܤ0izDSi~,'fT$U)(hԃK7vOypV`/:_.|&_wyc[0uğfW3tsgy,QWN=-ƩihW*6p9-H8W^(sb 5lsLC!MX"-^vlɒj~g0N\ruC2JD=">6?8<\23Lh[7rM1vFؒf$_{M%*47'T'N(7TɆ {Π?'gyDE>t2xgiP`s|1%dNlfIR&`d "U*[ ߫؍XѦzGV]JaJq-ْWSݦ񐁢șt1旛9N,NlG͛%7jURXB$*It\ϼQi,q }M%BWEXC}Ӏ挕RY+.5=Vy Pi[whSjkm3]p#.!GJ̏{w<sGY8L^W^7`0Zj^.rxͩjPxb<oѹ8{`a& pu[ca kF*vji{V{Tc(+b&)Ahǂq' srC:J("H>G*. u6gRx'K0ҩˊ;peEDqjP)oww5.|Bq=K[ н6h=pN\&B0NU}-\ B\ŴaBY˴)@ٿWD>=Oj@zho9s[يǣ9d,ssUYO@@ePd̲?a JF$oe:b%;3)"B @ gPUjnDM1֕mXl_AԲ# }fBW|]uڮ|ѿ21kC,%:->EvFi7PA9{ djW(79GDO TDcw34L8o1@3O19Fg2_*hȭj!2_,]͋.nIzh]9~OUO JҠmREТ㞇"NC`^ug5iek/kZrM<3"ަL,ȶU蓶DE~VrS}4_dWbKb:UM<=YxkAr˃wφ|Щű^/&VhȖ5}ɱ |AVB W6){6IcI9PJ4]ye~G |ij XZXIPIo{NW)r e*+fte>~a[L*Kfy =aHQHܾ.R90I KG\$@z֐UT'i&Rz_HRӔDB\ je'u?T'ZǡåRW<pf W.MRzxt9'X o":gp[m~+{\- en0G cBP4D䄦ʝ A!צтRᤄ`,ڵ~Mچ^LQA bA?"%rV1X#f~O| ُl,!RBx9/5 K])N,=YL~dŝ6:` S5 ƀBGB3%:{]htk2=ݘ q7ʻshŻ Bf;+i'x{224|:x,=%#S_ڢ?PO792]iD,ݿQnn5@ZI%nIkX},zÃO2б=א]Xyۉ+ L3!0L{ pS7 f!3S+լS" /db>9TBmt /aWu!9&%̞¤M0icdKd7Q{tqf)*k`gF|Esc8rJF}(9̑1*Kci@A=~7&>!_, ffu!I /33Z~ Bޛ}4.:\47twJP@1C _mvj+oE M%\7\FKsХț8g\K!;炚[5. ކUN; 2% UAb9g"M_EG)!KYH*~at3 J`Gn%^կנ/UIZ/D_M'W@$A] yxT.+s;tn 4u5%)pkG(STG!`ּ9lz9֮dĩ"kqpK+%8ו2 _xx8яfp&g'_fыrKpyf&F53"aUq bG+f39l~VTHfQ֊Xvʴ,iT띘/C=$G.$ T`%19e6c"Cb'MZ#(r}oMy[:L'x.O<| hV%y-y7Ίs%?TG +3{g\ts_$ X?r@UcęKܥh>=HGԲp(1zf{ azƃsEWqݙ)ɏ> ăy,lLooU\ YTB},l`¢#{[G4a*gw鉲na1dϿh4 [*ZHl\+g$1޽"973grE1\!d7|Fulu[73ԌxBF|MaBb?5RpDefeYNx4$g{=MAjOk$b f"s);(ѪX'uHWьMҡPДlJd5O"X3)o֩Jomݘ5A?$f˗URW}]h7 1"6.JCg Bn~Bw"u!s H202B<~SVi$b45l('[\#B鈟CT7o,@](R%ͧ~5 \p[1M=rP 1kUC1|)@%e%b囕K&VH ʶܹkc 2!w}$ǂFJtϖ1m~M0+Uĝe)pc}t_*lX;Ly;;x_CfbՀ]]t8LGC@E)@ 0Cy~㻙tQ]%mI(UcJZȃXz)w@ TaTtC@"ɱwV{i#j񰁗8Z!gWvJ&~VQ@e\R)]Mq|hh D :yZ~rx!zm4]C4c"5p qT-_selY;xm^IPY }MP8v3%YaGUr"DD>߿<4}QG(~x5ԱQZD1qZPS.H'Uz1;ڬ~gzkgo\3rY{g*E>W[vY8(3tT,.k3>>, ]_s(ۍ7P#h$n|yO%FA _2+W*]xVAD6_DAFeUF4'[t25L\x'av1 ( Su˟"R;mf## /ҍK)nc5m хgrfڀ/bT" $Ȑb gMUAq*`2o (M14]?z#9%4$D@i3T l_TD15qkK5qϝ_W Ϋ-wa>YqJCqˇfB ڀTI>l-C9b9ӼNbMR;ρ6^ aUE4B|m_XFMnSCьOd@cNJLWU=)|BQ[zXn/Є/@It ̖ xN.00k#?D`DR`RIjlr"Hg![YbQg:8?5SWzxC;^nP6J}88-7ъkxB% ƅ}-8n5ZlH|\L xK職g>BP}d}xrG.IOfv򙔓ϖ ַN<;fqN2E^]ˆ #RW`+,+{ƕSwڒ$dN<%3ӹl;A [J1S,*d'oK y/\X \ك-f*/M; l ad}l?6Y&?!:S9UW5ƴb/Gz]3l%!>f\GSF\;l4Ե4)AM፿k Ǜn¾k,v8ĸxĹxLƩ>HrvY_u7JE*B-;r7qw7|luc`Fѿ5`3%c $Y*J@wt Lgq=(xi8YLvkoo&򣳹`k)rtFj!Mhpiɦjxx>̷zEHRqպ`tDV4E>z~0lwG Mb.jZ 4 ޢY$!5( x'KRM.,-rPk'?=퀂YOn@yXWf}D_cW^_'q(_`u6wA[uGΠB"us۟ɆE'8>)(5f_rh;]|&vu?,ps-:^l> O8 k;AT1l,> /o5U=g)q]Znc_xNo 9Rh?<8͵ ͛ Sp^ia[(ȏ~RQ>uK\wGv "'NS΁ФfH&/ј7\^|Ὥs'T}/łzA?E7KLF6@MRFZsz}-gg)zh_콎j|#KR ]qy{5޶ 9 O {s"bcbD',# ?znn(β2z?L_F5jۨŠ2n!"-L&*  M-q6J yv~?Cd>YםWXѢbJA0/<=i0XYtԒDxTRXsgC։IL}xR!)2!Ϊ? <ѳƪ:syd} fpiǺUޠ;btzXk]kն@2nv&1fx">+p9z/-[` Y6мEmIJZPI39̍V9Bc"u#fR{d'>Ŷ|{Ve3F5sZ Ggv$43FONS䣫I4.Z淟[}c['}t ԧ!ɐx%#ow3]VC @eŰ9= 6>EӹdCNDSw)Φ!i{w=iśGCv*6(KFz+3/ _DϪٿFA)@Hgeቺ,opu p|ǘgI=;OQ?~+:#ΊI|`~UjY0`.UdzL26ԁmHH@:!Iu(jS,_N5tm5~HXmV d6A54 S7naxr0'QdZrVhV_A(݄;Lc| /cf,0hrLl -Iyt߮\ՋNԿnoz>ePr`^|5mD- jTv ԀfE /QLfv !6.lUkIQcgN4$kA͑ wֱ6ko!1Z{͜*ϭ(/rHxSdٱ+B0CQ1'v@nm|NxsQmRa 'Hp+ċʊϛ_6tO3e:هVQQ=P?>Yg5y^B3-M)U[?!ti"O]lhMw.y3a x蹭%'%ipeFE$bxh9H"Z/kWհK`@rE9Ÿݪ'P`V6EWJQf̰t]f)m(Θsk1~ԓ. D~eX`Æj'A{X<ὧ9`uv\&ǵ,`DLƱ(>ꄡv4",(A @yeQt6'tO2O5Ų?c"$2D+vlÈc:nhnV'Z^ϿM ZSBNTXp$u*v<-=_ۗC=3ͳ}#C ,jːU$,k-wC\wO]ӿlσT%٩^5iLJ P|aj !fq,8H\pSIאE6 C<Ԝ/31 *1gi^L[ĺ^EGF]ESw p5ovk(`i6 Űf0f?Nr?OcFt%}rH,#jnSyTҎ~R7Ҋd֌)"WIn6O{o o{``}؃v;{(ۛ"稼rʝ.O ǰ 0&ؔ"P\#w]Fz~HN]&fA?f-W˵]n(0ZaR5wWVOQWNJ> b}yNJG}xܹq"P_PB1 ٣\%dӋ0)$_sm 60ź(K싗KVqw06lJjPu+LV3<_ߛY!י 8Дy˃뮘2FKAY&Mp^fayӗx_̻O85SQVw C +!xyZd95NeX:/.M bIZN6E N8R!,YPnήRceaBSgdtRR9"$f;|b]G;^aM훣s:CZcHgmE7l7̮QŁ0KG:Nx=$,+9sfz>׹b0`diޞp9sSauR 1Z!7F?ðZGChuƔ<-M/<$Z oE6%B?u&VE} ~fk%eD٢6xg O%}jꡨ kJU!~{ɶR yH_B#;n9l%p/ͪPzCs]bl!K}! bϞf%*%:F9Tˬ{TJ-³}!wN KK$e 5ـk欳cLQ>\l#Yr͕wum"? 1Jl ײ%yv;M֟:{bm0t[c"t2PQ8Ӂ1{eg&9 C'H9f"xTwm//6mewa)jwg Jǯ\Z/׺^'ēfO}p?8%avM_ B? ia$SͰ%~C_ߟe|dp@#.$K p~]ߚ7F(@Fjz"BJCB9)"R tZ];zEE16wASn`k\ؑ5pjl úari>RQ$d9ajmnQ3>Opl#2<[1ׅiIwA4|T4X?, M֧3Y 0R QU =hGgąOеjV&"Y.%ZNV ZfnѮ5@Jr:5w7$Bת0z4?7۔5sGN H0or5jT>W,4CP(\*B|==L1EO=M'ZBg_O?0Ҋ lB5(A _tC=m\zCR_T0G{uBxb&F@Irk ,8G }MɶBZ]))l P|qPaRV0Il :92΅X耞ty:Bm~^N޴y?q>mT!k1Vys.ҥ1Igl`ERkϜƲGG+'UlCin0oQ43kNyR⿈:&o !.Ɲd=v5}!Æ4F w1C L0(qy_J~Hv8jh)\uwG jF"._d *cf@8iX^{E(AՇ~#jWidsZUG3R((f N1;fy#+kF8Djh';-RE(Er}b/*ʂO(Q Y{`^4GsѧujzCdVH 'w@IP1r^! q)ȯv>K4$OTg W莪u(,J?pq8Be9]Z왒]hAՐmW ]8x=D4 @(:Fi\ū3sk7^+l%_ʉ!vRgR=O Y0,}SXx2B܅uS*l%D%׸)Oϫ@Lȥb${R\?#/y$rFަy-}m}*Y[=1\]%hj0.锨lQCͲ V=w~w/r&"< r6}"`we<ɁmZIN17hBS_?'ͨ- t$N(԰+X$1`nSc6zϔ]=ׇY/diPE8 x(l.+iD$;rn22АBUJ37]PI9Lɜ"PR[zU``7BeR#QB-(MY '3eW\OW %ji hШ (7`u,tF֍lQ$ɓc|JnU=i.kSH:\.hͿ7ߕNڲY+H4AA:O0 K)5.nI{m>1 Ӛduz·5246=O1&rHZt)]~ 5@wX؍ ||%΍"u4tH1}{VCgE`}Ă+}vxA9#-W,ݑxGw碼zqǨ?^p|AsXsvc)&0s ' >/b{f@#$##q[.TDrYuƄ FCt$C{|k4/$ sJt[ A=A|bapѝI$tN>M{ņ~e!ֲg 4=%LZr aޛ w5uTx%Ԫֽ umMM^6Z|y]ƕõxKvnˊZ,1Vb\# Pn?hޘVrzژ'oyHJ.ueff=M#%QMk% j=đ))MI:Jd:bWb ٢2qn__M41y%hG/빻,!|Y΄& xD1MM )fCGkkz-7Ag grQ$V gQekލQ0lK[^!4`qSOT5P[ND:O^Yz =U$G5K qVJRŢtɲ ^^MՊ ƸEط78lCxk;'0qX3 2>/@W4r }6R!jYVAz|ۻݳ!LyrM ʍqӼצpAl~6Z~Zuq01:$bgά W`PÆ5r9Oi"X"$n\6!d_T?'qLrmLEM7tJl7ui]+*?9w|5g\!fڛuzf`!F?,g.,L3ɨ&ZU րhwGw>|ndP\!iIh%$rB_6ٺq^~=}Ho⮙&t`k /η`RIٍjpK +7wǬXJXCӖ.d~) G&gĜj)!EWԴD&t5rtQs==詈%sMyf'-mvav_ r>]}]ۘܮT:}s;Dl>=5Wt}V68WrE__ij>3.X׭^9VB/\ @,)_aZCguX"cw<59؂B;QP&u}o"v kQM @bL\INn/عM]U&C"AR>|hPޕ8(>j,\ٛׯ!G =nOe/"8 Y\Mxwؐ.F'~I 2լ(Enuͫs< lN.`8AA<]Y>gT38>O)y~ }`x_ca#e>d P8> 䀀CaH"u^:Jv}zc[IK(ɗU8/;LAG6wtQޡeLʿf-7KQc=z/Yb!cd bXa=NN,W3J=Ļ2 P}/  "H{,TK,9D55={f*=uY ˢU'<(m3#6|(ג37DՇMsn%u:!m{]K36N p0 u3l8E33f V=AI['qZHm 󩲭ZJSC\kEgV xqaux K?~b'R1 feQd*i)wi;ӟɞ(ȗPȨ3g.ihCV<X:@kk$cQA!n@Eh@&þ$Eҷ.aR{& ov0*#g*Fglبۨ[k+͵$ ak=wz=ZugvgpދA'-"m:@:/z5@_Qvb3h\ƸwfrL6eLr- P xX>hBh٤t^@|MށQnM TڋԻU߸H39SO^,>gO WKWI(OP/׈i;Kr`D>_" )<ž+=06ƤԿJ%qS{Ps* 7P2Jvr?gõŽ?p20Ǫ0mN{xtn*+F?p?~;~ M;҆GM珎tJO`)@ ~=K&?*_l"+ #SbzNU^i8^98Dʭ?s% 绫3JD{c2ݭ]jXBLf0hA|zi݃KpA2t ]eia/Rc vG>veUܝCeꋨ<%:=H)}ΙZ/-9~㘆 z^۰`LRH:T5(TN½{Oԗʍ xfkQei8@ovAfg+&YMS$>TdKvrVT$=qw&HyXVFx]Iڽ-+~LEw 6L~W+^VَB$7 0gMs>CxiFА<u?s䁞 <1k6/QTDž}MwY\wm;N#ܦw \ѥeJՇ=}9R(xj"+0BrޅYGb8N}vz#z_pڿ,dN͚V&WtA؂ |-&DcCJda_aJV[ΝuH&ަUēW_̓G<G ?OOkxh#|,ĵ[ۛP ,/$%y4t$UE\F1j sЁ-5.Bq{)'MAk-mBB%sy.W`#`55?dt3T Dcď^ʣc`w eI 1TX@=2X}UUv&!)ToFըmYJbpQ&];1_|wzDˮCȨSl.JI>C⤵ םg?=5SԽyM4ǡ /hȌ0W*r,:GuIjRH_:yARr:@fIR+u$ Ӣޣ ^* d O98uS&~ aM+0xn<[@ql,.6  uEKZZ<cxj` M8c5'M@2X6!u}̞Qub.WfKOCSp1o}'BE EiLnA1K=WMLF%zO $3C4U!kcH#pJ,8,<1defBǬ`]MZ\C`*+[?څx#ASz?2?V|4]=) Y9"~n .0|N^Ԙ'،);&콁,@(;m9(f,r0~yXkgGN.WaPvhq p\xQ[}Ȑ8/ 1AEvEx[+u? =m崱=_UWFs+S;s|G8o<~^D)\2&s>R9LN%ͯpQ\r 7ɒ+]H:žxc$И .J߰}z{}%0vhs(Z8F!xT9aAXxqh`!cxcO,w:LPr]V:aRs o/P?Rd"#]o\9Xޝt~ĵ[)&D?:x Ѵ\q7@;%qRּj-\q::`DpD0 Ø1lqE0{{Ԁ L,hFC^/,ǟqڐ|ήBÜh&߱2&-TI!J)C՗4S(_?t3HCaw"6ސ'yRv ԓkU5~fӹm,//-h: k~[, 0$;GcpbJD."wKbffw1Ui4 ؐ7+rafBqյ#ZM.^3(ix+R`&m_Zt.aN;+Zm բt-'>a۾$LmݲN@'l-̃벒7]5kE{rG1evؓo`N[%uB>}D[hX;PDܯ1)_W]K(ߛ vpV.btTb n JeH dc~mlipTQgS~C&y΋_{bm ㋃.a/L= rr"yYm'P}IŒ vdҙhfQ!얁d_^;>;<+S GEmrDCjR YNeKm1扈z,hX@"IMu_._5[{|v. HDY D_eֵW|;p,DV !ϴ\^W32w%i{YCُ,R6Qs>5:,9Τ T/ڲpuC,$鈯qA3Ow|ED\aj^Lq}p].ІxgfIt٧@ s\RV`'To*dz_'`4s6J9ENtcz$shF/9л X0à\jœ!3V bkk[ؽ>ɍ)EVN i2QHWN„ݜAߤKw_V7wҋOUy\QH3]WGAdzOrߊSy~칳'%&\u"tL) s= vT\wmU6:8z5Px 'kxv/ߨPTfe6E"Nf 4Y6ϐ' 2K- ,aeeտ&X-CHf a;/P$t^?x geZ9Ќގrk%%7ㄍc >mp*>m;[d*hIu8l_m<=3cE9?"#WWcѥkFMl|U=Dp=;ڏtT:@a$I1.}ӥq2K*4u{9 ]UT;;#rBC֪kF %ϮEt@Ь^[w;WBX.{ȥIZώQ\ I!կ`U]> If{AStVPᢙH\U,:|/~cZG p)tJ`z\#+$=LJ;QMg˱Q Q}P 18#Dg$R{LbU ;ȇXT:Z 8CIOxfx lGrRq1PhFkOS=S6}20ͭzk cNL 9?fKq }d5YS/ERtyuK{z!kEp8( !6Qy (RRܮ`2J\mh"ֿ;1U눦fU4 @tl^`=pD}9|}q$i3huoQjCL:Vo5@<1= i~—V/yǒ:8kǩhkQ#.AZ,nC#ԅgߧN ˀ6³SuhnYo?΁͜=঎Ꮗ!c@`jO'Mu`.x!m^h9;{!щ$8srLOd]'xLV_YdRlr><2b~pl8{*g|,oς^J;pô,JpG=K]$t&+{ɦ,!{l)Ѻx AʭGY.1+xfX&U*G88i}9n0)Ws]'@1SjTz>rtĘJ͍ \:su-|ͬXM ɨ#s@RsA1yI8$f#jGggԑ1} C:y`HWWl} hAq0y2 in@#t* @D_yxja{Ө_xVˇE< rG=܈7SAed|p_Q2&w df}\Eμ ZN?y둕+ ژ bkA]uA=_Cx=K YR n=z,?qctOJSl9 sTOt4 d =|Yd&A.,u@0Bi"نmopEߚZAP4e990ĮJQ.jVo,i IK!POie)b3AՀ1KڈV%bYX{ޕ >QpZ6-nE2<Y;0S-Iz:a.ۛ΄_I)Po7l7GhA3Y\IZ(sfLnf`v̘ QzYxűvC'20kbzfla0s^MRrxԨq?Z gZ9 đ He_yM!dau-TicMe~p!r]­m!#Y<Jg҂OB;6M&V 5脩%#?KZoۯ)q$xՐ<>w_5*/ڛ2&@cyeDG*ON˚aݰw]eåZL a,1īYrkZ(SsG,dBIyVt0-A̦S:_Cn#xhT9B:wM9o]1fl)SeTw0âN%vu0%ـ h)-u6-0PY HY*DiGnvKiz#)DՐ1RnGYԊgJх);c:(c!rGhΥv_8dbXKGq3%|3CxӂBTԊ w[|9Y2~:5wtv`.aKK(U5Re3 Os5l%{KƱ 8ZM:x(#Vθ` n%t J4&8]['r@[6I^xc+p9Pʞ /53o!oN7ycq 8v=dgqWs7Gb26nsŻcmZ8up߼Tt/T[(2N)7ÎϠ} g*1Eg(^f*h20w{Dn5GElȥf@)%M6 Jmӑ}CY>G>s* }69ZQؓ҈?*0'3f>O"SЋG_珶qcj@J`dRzI*5n5C[~&XU= E;;?-YQ@dFl$'  Ŕ lc1OB\o]'1!W}Tq/AkqD[RR6?bF{6t.AvkN+=hÖTzw8a*=pxDs9Ƹ%"e<תpl3@$b3| uH92Y3keTfNNէ%LE3 5 T_pe (A笝#̹/$7*[1zx1OH#V a9zO=Qg.&? ~P\UXr'+=WfPckЂ-=/:( =͋S^<)J{@j^?<;LzudsVl]?`ir?Ҧ430SD=إ=8v}=B3SBPqQ)A.͑FX־jȊ5$Syn@ǭ]~GVhOBAΝQ\]٥E+2LMDzw-ߍ<\8 ~Fꄽ}BSD<2 {s7I}NM{"{W5 5̟`wy`w?Ò8';?qW{)Iss&xJqd&gv!')zs O?Z1nG4HƷ|nW5]RL+dT:I63{!/,Z4JhE!٬0#fY#F%͗؆ܶB.|VM-TZppt~dUFAJ 37$5{f1CDZ Qm _`Bֽ|h +gO`>!Pk(f` ;fL^njP/Xtĉ`*8lCtcJ,.GdO 5"4c(hEC ޠGK/+z|'y^^]4;%|F /]a~`I.Vw_6޿VQ5gWz"2z ӅCPUDԜ2tjrw덻ly|_SI?ҿG9X Pp6̃#ؙ ߑoj|8PY5L䁀6sµEL rVG6c%`cz^ 1F}D$ _' j~An7C!&J04:-SyvݿWy(;4xʧm$'#SYس/!naB*|L uW:bO0ּu$uaF1-N88bq3tZ;="ɘԭ|ŀ3[a9#XZ.(%#JI^K􇿁:of(,I ܺ\=U9H:T-0x 5 .*sL($TvO6s<!T^ $NAm!c%Tf\EIiYg{x{1r6RwwWglWU]7DbqWxFCc'ξ2w^ӉI^'}537MTBWslKv\9K ϕˊfr?K#n,2riYϽn3mN#Sȱ}TF"qDZH8bCO-j9LO<NYv ɻ`tc\ q";djr8@'nӭ4.ӂ.PԖ噳i ǥLeG"iB6GmOr5h⳧ T&y8҃KWo }+7U(ISӑd |PSJ*cڛԾ{#V_;IkrEhT.aq栮x!Hc~ 7ۮƄ+Dȴ<  [Su)Cy^!`k}-C!' j^Fc4k2!,ioSܩ󵡐|рȳebpz!}m| csC{U Xý,zFrz+ (5|GdIBu[58UU:%<tSKz'2˟ЄT2<3 yKjpXr97T%j^dN}B5X4ܐJUP_ }.U!LR ثshȅ8wRѹdsͩ]cT"Go`oyC46~ItD*`A("x>3jQt>Vɨ5~wyjktZx]5q}yQdF\:4BTL"E烢G8xSD daBwڪh J k/56fJۮU.ŕ [JDQI?E_L-sH?B? ˺9̥ o7%r.rd{#v@A>UxLUL!o #_Bpp@oH3MXG/IE ݟ8C ,RZ穈;Z}WV m$IjoKW[6DZ]0FUA~ DM9eOƝ+bdxΓŏ T4qWKFEW_D6;J?U_jw1 [^X-PoQ\c6:&\}UiN\ɾطoz!JEZX]@Ҩq=Xl嵏L91fNr q~ oF]a:"+P5$qyjz'lKz'C h axkP{0!N?#~7y;M?$ YY4RW: D* Jk!iOlmg:p9QC>EV'[U Iۚ*0Ja-ڄh!2~22V eM^-gE%gzMu5?d afrv^9Δ^ +]{kwf7q׎Ggn ^=zɜ3B8既˘xa_(t;Z 0Б0l[:_9DfLts|Έ QuD_7Kn5[Y1%Nll@NRL3e]b!ȰA >*d&)=G|oHE`Aպ,uSZ {'}*1$A[Lv`0hKY}{3 ˪6oxZņЃq-[Ai-;jt} 7kkk&@5vf[2ښy۟^^"')Lj .7UcRƪ͉G/T0C"<'?-o"A6^H@5Y\WGSs}Ĝ}Rު!ZpTeBID6!ЍG4hi#;.#=@cg y! ) s1\ Wի 47=g9TPDL DJQ d4Ht _Vth9͐R/I+'|"H*rpNFBoa2$ni0lj:AㄒFhţGh^cu˴+0eeÎ`5F!W/Q1.wfFLom5GIlO'ٯKzNްDh :(y.q,XV9 T"jr7g3D @;$rMa`$ye$A-r7,c:gz>?Eyl#hZ+G?O|4舶nmm tbnZ :F[HezÚy̋DS3#lԮ`LL{8ќ /^ 0n !t:out Pݾ<}PrdT>vڅ[ p"L^MgKS,4)!d5xQdD1. ;rN>$餘ॵ_8\v+\KDVx7ƲBe>l9-S~#vDA tDH]Ī ԢS45(A?&lz;Wq ̐n^n>AGRnuyOP!2FVS9 N ,B)ٱ!6P ^%SzvU"St=aC0(BPG9 gY;:۱,"'ZTKA63> @BpѷZ|ѓ"(Bp:|( ߄pg4{-rƋe*Vv ؤm/9IGO-k8=a%^-O)~o.P_;rةKPD;# EW#;aݛr~bH q5t22t ]Br2ru䍙Pୟ&K8m2RϠ3_S3V0i>c$mc b`&!/_O lum2ٲ/oCUi9 o=>&#G``O?c__i؎TS*DzLg=[ u&M z0"&tH^!;~\'`FiAʋSJ3J xξy8opVo[%ўyXgM H%+#,#N# N׎&Y8K6zz\xjtr`mNjuϩeHOPszԬq0 ^OlRZ!W@zοwM`/y0jEES4B?CQeM^&~vcFݜꤩ,"_m Xj](LBp4F&{+N971 LsTZؽ6tt tŽMCap0G&oeQƼ/oMpjۓ[5pGwIS~̤"');!Dq(](e"ZZb[!i3Z%e섛??oa 63%ٷh Q@Kڇ{(;?*MnYYg>u4f`SkQh7 -儆V>C_075Jo֧@o\l0yFQ \=HH 9!)'X jr.i{"Py>ZV- _ K`-ΛH:,& 4Aq uIG&5 %GmE9w˅P ?笎'(Xھg氒t /zqpx숫YT%/p(jDL2(p7PxY^R')&N)[=6RDFa|"LLEtn S j_2ث|Qm.Ȓ=<)bn" ,?q䧩{beh(ET*㫠\m`g/=ԉRqq_]kPbztcF`Z7jʉAfIJ(2oNڋ]>D6abr|jڪzwg@jpf0+|-w Zmp$V  M;o d.|t+_l $2G-Lz|p\\[ LY͊.t@ Wj6-528A +.@"H'T/VB̲QY;,mvGG8^oM˅ #S`Lq>LT ʂeDw'tZ.2szYȩ%QZS5;F~יeg]ϱR&nVrc¤6o"FDR_6`AsyԹ/$JڱWDFNMMX26N=ozH@:W*!@⼻h) Qz4{?q,b&Y6JL"m5T7Ѣ2FPҝP_%-Ļibw5 ͓IEی9-~Zq?S+m|V8J}TL sߣ`Ro^`G`ysOIc wf-!e++ck.iBW8tNi*6/JlwJf&*孌Eo3qAxԠX1nce(ԋ kGe,b\a⟚v\8\Q#KP{赈x'3M H@6,j&{PLk 7=NzpwaGK7:ҵmaens2Ii.K=1i;|:(ƺ^AJec4BT.jK" !hSlѕ\ f5I :?BtBd)4\4JY?1>_ØÑ>NΧSAǗ`k$IZ|S˩ad'ACrT#p1QwVSǠE vʀ}$GriPx{έePtX,0įy2*ș4boxR"1zvUm*mH{_Aa6›V(|ӣq&ˎ{l\jeMjt&kk={<#;{wf3[5~Gi9P<vsTJɪj#HB~%8UPҖbKXRAqEQNsC=lQ|Y3^n/ EN  zQjNt>ھ!&O.)ma]w4q)_LmѷW8m=B_`t9"28a0]i)R>E8%GޯKcо9S6Գk%䝽#gБ8̖:YQ>%-C-'B]0ۥ7@I(~KG?;S`gCc\O!(>Q:.P^j`/,NٞHoIe4@"~3j2Bq#u 4l_bW zS '^:"L뜬BJ9]\D>13JOȠf S3= :\̒ߣYGs;WjyhU^#)-Wԛ+Dӻ()Ō2\\Ii# v=R Kikc6ܳdg@zJmv[]*>axtLXE~>Ҭot:ki| 5rTG+缭t%ٮDߞQORҶD粤6 Ϣ*#: 0"AZ=udmIuDgKR&yd e =Ŵ`d%=HOYc'Fpj@fb=tuGDgq=!hGzѨa~i& Pd!F)O7SmزWs =I:=wSjGA6p?vg-;p5ח;f}HS>R!BK" K1.?~mb-S1"|9~Gv`jNT}DMV'^NUcelu,\x}QJ/#gz`"reiqZW9C!ҬxZ" q:0lw-QV;By wf#I"%ؘ:"~2N)^Uz?^Mno Q}KULX-$`,d-.օR63 H5΋]mr8'c%|xμ"aS`-ςŚMgVrC_N`㎧N5/׼j\H~2u;T)şhI"Q u=m޸t Ê3/:p~jmG{ Ux IVF w~6qO\B\> t Beeރ_[u&~6Ʊ.Ë ,S80܊5J& ڣ53*)+*DZd%:CcnQעt`{VǿkArHYZ'xu|"_"d=Do:ء9(8E-?_&<'OB6(FZzj 6өw3Ǻqq:v6?sZ4I>v9hwz?E{8(i`6z ȭRՀ%Ws8`R?paZ'28.~8kjs|Z_xޟxLY-fG GžlX;5]GZN0Ί~ޥiOE E]TyW\qȵSHB`ދղ$_On%]G;c4ظyiUY`87LJ.'b-=敷 G%p:la2LflJ(J~M;&^ Y.MB֌MXj62zV.kXRm$Z5\/-hb*u.p GVA~#5Nv&KD>5=1މh|6c2OiuTT^b c˲ZZo9lI>8`gP,_jgb8IĢ@&b3U}s#!i>_ʛY8㏤ѥtz7UiJ^БV%Yalq,o|)C>c(~\`{9~op%#zC#4Z t5{Ƽ+,t޲czA98?P&%a,h+r /3jv,4Lۮ"$vO$5«dOŐ.!f;镬g7j3U 󲽨7\~0Tя#wjq{k s#<;ݾX 1GP3Ջd,k!QAQE$BeR2<jgM4||uwyo2y͵zy[Kх&Hbӥo ϩJtXz;/:KV;7x= WW?6|9HĎM:O֎r@ߣ\(dwU=K6[i vV$PM9*vC KZYL{n' Ҩw 6 Ym; ,ȹN@7lSRMYўt;#8P4}(ʵV/; ēۗ x"6/\,A.[fY샭FqP o!&seVck!pbkҚB T]]Ldq@&9ϸte VBozHxfq;+3ʦ.2K SuI*SkHY, vW(DUb2AnF@ bJ&ȖBߢIeKTz_ԕ*GFdKO&:4C ^8 Пk^f/i=^ Rߖ&bN[p @lucE 5:Ʒ؂lΞWb0-YYFՋkoSTR..ҀϚ?XYH Xʨn>gൠN%qP`ٞ<&,'UE|~nɞtd}6mDpRIP3V;}>jFɓ.]!J;,3K*;҉x6q d5H ˼4lu)1E_OmSV"^˱Yd# aAWuCsmfU-@Bw8v 3/ yy$.q"^C Uѳh%N %5s?,u5*uNڠǵ*i 1%džEX AO6Ė%@W<u2tD>^ MŀwXu\ 'e?-yƌܖ= s$U{?l}ڞ =4<iosA3Fexy#FZ"@Km0Ըede0Z5{ ts]6 ZKj7SE](oJOKmv?~Bƫ5{q>*O\:Nh#v  ϛ!cˣ`rdF|*il ?ȳ?RV{{ pRXMh_dP}e?.8mF ᪪8[Xm;v8Qw^C^B%>]t%g |).LEiA8!ܢDgXA_|U|DKP57pn7 ~ Աsl` Gi? a-dڦ{'^^zGy`O̬CD P0yRxRn,/Bw2RY2b(^p4hJ4b p0e&+\#Հh3yL 0ka~_T06^xRPssؼvޭqݍdԇ Wcy&ط"3P/sϡ)!԰9R ': 'Nhou~w,iY Eʄ}Pny7(0»O&LxQ)DJC8 vXC8ZxY' fu3DT~2TZ۝6%[bcb% +ŗsu["tx[Tnk4Qo`kS eA<2&Y n:uxM Dd1+a=ɾ( c̚3&KΤ)4 A<{$kq^"۞@7qimTDft{o )靃 |&6M7|a 'eا\F_O;K[e`u,߱4^]+SAۭۏ RvhMiiD x5nb߷"/Le=]oKZR_Ǘ-$h;VW]*u"!bNV_a~g" _VhFhܦA5 gxRG&qA}IS|=: nix1BT=`еv.$&V$Q/X}5%mrC\bI~^})yjOy. I hz'}^ hѻ{nG7)D]US.O!ŝa1ж#nMZsVoۨ6{ 5U˿S5gWd+˛|gΛ 8\P;jk<՚\A?hN氼@DFHDs:m?ҹzdgߜb{P~0qI|ubD ɀ/󤭠MV!`@лG ~fG' P~>m/"C*oVU]; '668dQvQpFٮrZFG܃1s&xJd C;RO A_Oစ -+@&N!((n>T47ށ:6b |C2?5ߞ%q8hϖ~c3|݉ fYKv=UQ. 4W /a|9IF;i#Yc杧m ں㧷NiwES>$Eht؆Nn:M'IaW!_>F"d'38)QB{ &pT^ڂТ $TPLNˆHW|_ɜIU;Q /in(82ڨ^}d7ZY AUebAu\GlY *e&fblNWYk/Z]#$dšI< <|ks'vTs)V;3V-Sc\͡aPΎwҠܭA1lLVR: ! ԱX-Vb^-AWT6E=,OXddh:[DkaHvf;sr]~RA(0Qؾ fBqjmB(?v)$/SL K>vϏ$`4X9%GX*Rg!:>1-NfɕyRŕF԰| 291® />>lM׼Fj⓾;$˗$ f7X}c򞱠Pu}bԣ>FOj% MG6whpsP蕱JWh`sr.i&jfq#X B_K<{ EصB*W0m4M7[}t{ZB)_UxޱjcIc􄾖:BJP|L߄@Y]‹&Љ52^ ,8浞ފ~H 8eGvIסp*̃n97Y;'gv'$*8vf TAgV򇷖6-UCm>o7[9YKf*a94c FuNc߳ cpls -CqI2L/U )뭑|5jczX揷C׼蚙&>%XuPeNv*Z=B+4'o^# Uɘw71в f>BOtguP6b!$CE ruuT1NM 2E/`Ӳ"{mE#Ku$Q>4"ΡfS WGBQ9MrҀrfKTޠNY}SڂXa;ԡ0 x] (!U )6o5|8TݏFsWrTLsw”d6s+;?E5m0'v* >:໷HWH&E6JLu93.ԳR>([F^|E^o?Cl|pg& S2."l=cb>Kۗsrk%]jz`"W!2Ԏ [U^S[,D5k 05ZtXx7fp㬖7H8\:g9"Ryd3ikp;&ㅹV_݆ċa߭SX4/ tjuU/ h pQ933$ ԕLiCF꯫ٰI/R8͆$骩 4 !M.,^Y㛔<.nGkJ脐U)YpZZvg'8EqFL'ic wO/~J~p+0N7UPCމğM2,y/anoR\44+G|etxJ} 0KdWOVNB-QNRQ5Z%.OMw1s$Um*rbkWX:*Z PhwGq ⯟ݨ-~~lNڧ {Q!$GkeP9=,QPWHְr꘵d8;r˃NjVpJ,x7{<| CXKa,6ŋɂG%XavI?w51*"ʢ yΐuI\IOΦ4\B:;jy 2uNK?j)qvwR k ; &-X#Գ)J1Tr jfՆ?rI`0Xΰ.F M+'gK0X0r䙬@s͗I~|1l%L- \DjJhP k:DR3凕|S*Y^+[EBMuķ[P4!K|߲flOoF qRSŘG}'7>PeA>*|/I}ّNv'N 2'q v?0by~c7 PC$r2^rG3H< ^>9+' n=_iZpZm7?#ĭ=X(י_5lAe!Ӹ7㷘*Vb _5:0TAK$yտJ!H1 :u+W31l@ 7/rB^^趬$7~Cn24G0hת"ϑA&v%`w;v<sOq31;#hZnpskf؊~E&hd$`=sŽwۯKb|X1ҙǺ=CrQwc b.Dje.zh >LDdEJjThjM~aOWU9m4][7ax5ˁ_ h})o[~ Oa$bΈXoB .YXJ ]a#gn3_bCq/<$m+HFq zyg"%-}qrnB/:&y_l, Y!8>O-^?=F_<LtT\:=9L71]A)!&WFy"&0+\V䐽Fi 2w'Y.eU;Hfeо̔VP6πsEMp  y&?P o'h{18^*d"z{ Xp#.<$}@aG~Eex1^g^Sn((|ȣa?S{N^֎f9uAoȘ﯊a紪}'Cв!-Asځ^.|0p;5% G<,@kòBM=y W71LP`y%`hП!;r8ӳ{ע잏OY ,SԧC8TlIU@|ۖ/# #&n 3d57ka2oy fdPʰgkW+>#(2S8T8Ր&^g `X?{ٌ NMikQC'6} {O:U=,VA{ '--tPh7!IͤD5'z,bRF_ .q28JsFמ葙mA20nnM+={(-3CcO[ֽ"0n8R@uzS9 >9?RI'ĤJ*^vlu[,JbլBkgZ˥L; tq#~HF2 ~"܊_ 05k/.DWҁ-|:Ւ>)(C mRfZҏ7h[ʛXh#|LDr;R^#.ᓫ6T!PX>|zݢMT4=Sc[nbB;[Ww'lVPhӡc% MXxe \3 6prnT$^v;u/,N*ik@] ʈ|Ig Rs88fm]Y8У8Px4YAђO) a۳oC *-aܢE@tƯ]1 BW7e=ZlLZiXdgqeG ^ʃg[Rb<Q3\]6Tv+~yl8QoaI kn:`EDyZy,1ŤxNHIk.3zMZ(fc5#}gD.ޥFZ\73[ub lN<'TN1{jg{2THLob.iɈP &1Zg2rSQUpi]Yu$Ejl_/$UeTLB18 *6`B}<\m 遧P>FɃpm@ʅ~[e3TFL#fv8F0eمu#ٺ׽(/sQ NV8Z!r+b?A8BefʨtElaiB@Dg jCf[Rct=< 6(O嬔Tz /e&9SH%1*"Ŝ$v^鱌xU|b'Ctߡ0=:S@ӡ|Sƻm(MxIR3`{:!ׄ@UͤEt۽xz~=xGYW+ẖ ^3N`v~G!ap5䁲VMN1iu#@ $,Rۛ}"Zd.( m_>GiP~}UĖSiXi^ as#3 B'spHp:K{I8Xi0\x,7t m Ha 2Sd\4f37"Yu #Qu~~B;WEnA8Y00ۭ/,QᒀԮz Z Sz%69 '! {Z`gmq C)(ZQVpчy)]c̳ us*LuZ\p^jaOv،ګ}"rNRL>h=WR`V)5.2'?otX)I8噃C^> sp4-;fL7wOӓ#)P| (\ňУ` U/"]-H+58PGu9ďTM`&xGOdD_ Pjv mz[,}TH$)iR)C%'[9]rm.y~BڎABDa ku1E=oI܅(OGߦt,pN[řZ%ouaN1/(*+rI-oÌjް{q~W2݆KNȾLI7CQ׫ %\rDjڑGaJ2,X=둂]֓N7ͨT[+U N,Ix=dqog%=S˰dbAN`G[D7Z!G<{I*5BāܸNxC{R+r{@TJ$WwhY׈hm_R,+?K>k2L/˟>gϕuT$'1 )+ޡ p~wQ\\:7ZԲnB_T,s@diP uf2kzVHc.ު+^/VI˶'6bh{czۜ3F88u;8Y#7[ҮYewNK}Tٌc?9Diɺ]R1>dd\P@-kyETڴKDLk+ ]l@IG[ZYTIMnQCBϜ-LԨ=*[T( "#0BoA4>GZ PѮ}o.+8DHAh{nNN߈hFՊ~uI;~80х2BְBHY\&ت9wembŀP~f{7i:߱`D3oXzZ8u8X?n+Zpi5m y~mЎS$BLuD]zSY0jz(zw:HPW72+i#Vb; Lɮ[TAJ1Yt%yzpRكLXKg:8 >X=8W鱒%MS+c`#Ȟ>OlЈnjɟ8R/U& :Mo?[3qʧ{*1Y^sBL Tu1%&j$`-@SgO<CAry;D54x΃Mz~&ω&NZ $v,sΚ[J^`Ze\} jQDIsf2_H3E'+Lo&}' EsH4r\<]d*H},Cbr9Xo}#_e+mpȡJjqQzҺ]﷋*ϢAg 6AoG lo>tBPo2`^DK(ǙjKo3aS2'PrrܭI 7:ԩ@^o2ޮ/GT3n $ 'Y؊80 ش~HGO>PWg꼿=qDX8ش ynnB%&2< u#corâgtQ+wv:cda+5Vh>[Rl ]/h,I)SWqZLQ}F^c.|sy)Bj+:+51(1k܅4dLdJgJ OGaU|͙/%_IT.b F,5*Gƒ>Tyʘ(R*@U>X#AuU gu͐3:*__svY+$+_bX\͟j1 cz:.gw0,sb ɘ#e݋)z䬡eVqٴ_Ew41Zz1 kRjEn^,-7tm!2,:# .PyRvǥgsmV0q1-!3obDV5ʹTv R̉=[zۮuJvЪtXM}z ~rkXxSUsKFf [^ș-ЕYسÃ.î~XvzǬ/t}RGW=bǜ,bc||#Key:xrzpbt|;Zı!˙Å7+0*vp(F bMHX]8etrkfcB( N{TA5PIħWLTs/sM ;*8##q;-d ۦf)Q |pZ'R}Ҧ7{:8 |&v%9j{ V0WTPIfՃ` '[(Y pUCNB .mMZ}hwEv7@y G0,`!ʡgy/5P(ϓH? ΞO8 B M2JWo%6Μngʛ!::AT/ VͶa9^z-&^h K.vO%(;zm+#H 2% ;5JCVJv֝pfu԰_HHtx(;n` f)-N2h-bx꠽g/t{%t@V$|֫X4j=OZ#Y|, )0T:aՆw)`z{ 8s&zȱțVSB,c05段)V綘QQ\O-[R@.P}[SU.j ʨST=&kX0mҝWRZAdwI+I$?LG?C, I ۗs*peեji.#crbwE0.m1=ۤL…z M' ҈nNnRǂ(Om]eUߔW'hRqK)y`I'Yp0=KD-'C'dxU@l> DTiqդgϪ;7ZLl/|k+Fg)Kl* -B/  ܇$Ǭ 5.%{/s-=JvD"8DOv)0=(J̔I6\-P(yfЇd> XX(T돽uOBzxB?I %cFrUۨ;N߻ ?ٗ. @5צpIo]|^-2+j1F]l#+ Go <,_smϧytMY7{b>7, wװdNnF/cPd*})]9<އF88T~օMH7Qf5F8@lؾ6:dςA?lXj\hb{EW*E~Dao^u^~鞦Du5ЕSg0~(kQ3綡YQ5o>3w_13n0Mf!܆Z9 qDp2F]x]b@}o.31xIS!d DvHꢠȵ~젖Lߙa*qfJnLOH=?iz3᧪@]R*c7T"Cֈ:>gMϏIFSAgaG3?'gc%idL^9c AZ^^dn\e5+ccG G A$wQ[ow={ɀ6|hCenc$-+I-TjǜYN@_e8t ]Go ;m5e3m{Bm7 U1Ķ@T}`Ohp '8I9ﹴ 8tRY*,qHff>H==;''XI1pڬ\ 0AO$#,X "A ȹE"Y߽D^mv = 4>[TN C- EL&}͆Klf}-Cpe0i 錕W~y@ݰU8[{Fr.ۆH$8\|ExҖr0c&P6dye\fIy$鳖[ SP!WF`#Uj7!bdՙ7 0mE ۓsd˶&-u Jdy˃*ɻv fFR.֩=hI;&I:}_gݿj:/Rprc=]PZɍ列x TQ|fџE}@Vq +eX&\#FNˌaLI)&zH;T ljO-4C(Mo8щ%#X_Gs?0:8~-}:J!qT smZM 곁>ybC}FASť YqEjHy&`oI0L'誄෨_Ξ/BbY. pBW#>3vVc'+)"Iz 8'eitS!xR =ňR# ȕCyF\ԣLZģ\w/Y^QdNgpZ0D#V%R]|%CM.{8\$/BNߵ -}8hfL#QT/́%̾gN mmЉ*8DL-ORבVc*! 2rYӧ}a(GE0 2p"!2{{͛6/1횈 kKE47gJ8/UЧA L v!^H'K4oGg8_n|̲0Dm_d\eDr&u% Rce3䅯VO2%7@-sn8g^Q%ryP/ M!Ox1C{󍤀 ,%.M\sc7t ;]sfë^uT_aF1*4r*s`=`ʾ7+lQ$g݌A)oRpoDDN>dt6T5oI9RD8qe7SR+~kBSoUzIv7v#d0s 9ecvfe`,4 x)tג|\מ@03O%jQ!=GY@c*Ïr1OKfˬ~ wo;:Y`Jk\4LzUU@ϫ`[HbtUZ#"̅K!ɫMW=zixW`,h PO!Ы1Aȃa^ 8kLK?BqF7ieJyҖ{v2=! AT?ƒ%8R=b&Dmii,>#6jV7G5T3Q%ZIƇ;\e-'\viYCoGM00Ż=HMwĐ?=tƘ& N4: ևhҋ70{lj(`ebK }`Be6?u%3ӊ$0cڡqb!OFQpaX"`WR$`%mQw޶IKW\^J*eOTeԻ|hEd_ z²)5FwAT'_ )KD On HiXK(MVrݩyLyt m۟@0(^Rf q2Ȉ[oܕjt5|EtqfMѼeWN \7%6) xνV<'bQ6".yk:E"c.M̝iRiuHXwJx$=F]G ƓJYBqϰ(,cDӋkӀb&KՎe o0LŀqEV0Z7L5qaq".s%T5D/8KPin = 6PET$*||/S:=!ʽ+|tnZݎ|xrH#Ok QO~%i~t92\~φ*ER' j4#c Xۉ%7;0ڧyk7 -Nj gtl\baK4Tma Fo2%heTf59xk)'yYN/8oi옗=2@q?]1"x(e7 %݉v"mN@ ֶ7jb=rm;ayP" Us[-3d*EX`|FW"k( 82K2qk)NpSx[ Mc_KiچR WLVyv!F(TjOIXj ȯYDvxVJG]ICP@U[<BI_żY{@.Kl[HEj(#C1oHUt!@TrAIМh"ۏMǶ^eojvs#wܪio")9˛p.V =l$ҔpY1,V>Tx\Z;0Wg`_nQ7Ԭml5*6JX:|_W a|uؕX•M5ذ9vhSآ =?uA䍮 &z,Nk` ޵E(c {3"忢.#Cwӌd6NBs0-6SmʺOۘxIpPCjr`+ܲ__g{Ѩ,2cv?>Q-[FKe5|#kh0פ+nSqu( ojcHKtѓ\ 'fwQr΋ _Gpѝv ^7`]1[C3W;IrH/ ?vU؀ b 4Y} R~~?Q<c^I}g]v*p;Oi3Py!ڒ npti8 $!: GϺeVff05hN=2Y3`#pȚH{;}" F' ɜi9JU%R]16{{Pzh@:mK, CW5)8!uemT\xg(BE m}'3X ^#D$ t|Ku-`M>اA40:nܚ3.3CNAF޵%HrF}:gTZ ` "0vrγ/;`_> *}\mJ_'"hc+tڢ!J9 s_擾54*T #.-T0p_ vؗ:U[ /WoePj^I#pUg{s*mĊvUD9q,Vs*XCX'{bIPx )8|MHX#2ܩ "zr%^#.|qg5_%%|;ݿhbq#UkQS6Ut.w}g-/E7J ࠼Đ,9#c|-;q= g/)܎`"=0Ww \X\ބ #4@Mܞ^,a [ nݤ޹k :fmrߵxiÏ*Q(S_ʞmrGղ݃qӲ7 _3`;l6UYO3=M]o/ioi {\ye8zkƙ<_1Z I6BjʏeKsסo/o}É#j'GE7o"%*foJzo?8N?WBMO^ +`AE[ɸF-P<38^^z]!%c}kfߘ* 3)~2?͂TH~Dڰw3}$M4QM8W;'gaKz3>h3qcɶX,`5 ֦:Lʆ}T6D뢞ؖ|Ygls!sgy%YֆiC5E<3CE&9s! ʈs Iȱ'8+*< D*7<\Kkzkox A=i@x}BsMU]J@ZYOr}lOO[Үbެ>jQZ6--:c_Ie(zPǂUaeI(ׅOw@'lE *Pmos)^4ebpn43 ƎR4b6L32[%;!9@ZZ[(VNv:ohRrݗ!DYs%De e(h]gFv wbX! (D&ND`H՟H)FbvRU Қ5 D}P$_84CJICr[gi2)R1 *i[i"r\νgc%ԂO:Ti<lj~EyMÅ6B&Mi1ws5k۪MTô |~d}"ՋG$N[ S/V['vpw&yoGֶ]D" Z-E"Mvls_T!G# Cqv:au\F-=#L."fz G)ɔje]ȬQz(_bD2-l$ÊVfV3J]Fx؂;i 1Ϗt>N[mvޒ>ȵQ'YlShlO>nF{> Ѯ OFej MXK9yȥf_[2}B-\,-5dS5gӛ~GY<@Awu)uxq.[]fE3[[BGzm`upSI=C2(J62z2ߧ sRj˟fTCG--IxW1| :,'堾$WR>Ь4/Ċۨ ߥU9ÎR~tJwC 8ިђvR;_> /iB+gC~91b\(s.^̟ DV2vZ⻶Zax++g Jvb/77·N5%6_=iu>z"SC-~NVRG1,<M/ -߉c4ݵJHP^GZ6q|.l@ѭ42S`M;I[:\lOgk+'x-z^I+ud>jB[?"^uI q -g3wIhwejyJp{εJ%a ^3ˊ sfUԿ4\q]@)HLjpha"tzndH_Lz^HtZ0 FX|fޡ,=)~1P\ >@얄!NtK%jd!^0RC#caT\ _I5'e :WJ s:ƒKbD 9HS iWX";_#nX3qAPڟKǗj.p i;#5請x8B䉄bFpDwFў4:޼CkD2> *_=؎"ЍA{K]c^Y~21v3n0/KS6`qtu=&:3> Z-?NΙ]~Q]@MoVǯf IhT.>K vv}LH{>%ez8ׇtf \}k5ɕ_~/Hvm|;l1d!XLQWV֡o"6D]=('%T0[|^FR?AVL[B0!:˯ =;k1Q *+6"J BO]6FN!e7B XEao2hӱ Dv1Gux|O$u̿R4w|»M[ R![P[h$ݭk<J]V4z\퍻P!n%M>$zB8#꽀CS˘9l]v/5EU"RìGwyo}'fmYv`K8.&H#Ԁ* Y^ȫk 5CVd']:7ݹӳpj=d1Vt1ߕ{(ŧ}[X(m xy9(泵Iᦲu,Mt#9a&{A518\p-wQ+V+Qy s[x*(Ms %NJ*lڋ?'/笮~h/O>~+<9< .m{E6,ݨ_7Y5 ~ w3rYh;X@v8L*H\-vXr9A8<^-G")_ǪFCRtc/KHSUCIy}R ꧸`gDuZ17̍Bmykr&JY)O>%bH7p .2$Zˋ3͠0Kr]Sݙ no_DŹr]L{ 1= [/V9eYQZ3d^ y!Χ9JG7su>rC(L5SJ> :BSnJ'^[AZC>D*"1m)XuCܳ14*qmt! ~Z:6L0Q6q=W~FR #GY6Ь!~R1P @7/pn+ O# Q{Qq;exl .dE i ɿN/#H\'c)}ظpikfM3MdWi B4r&uq꺱te+!qO(X:P)KM߫M=))2x>Bd#mLk峁߅>X~Ҭ Ӽ:;Kn_}dX%auN[?J# m ^iO$TLQ?PzB;7S!LՙTxMD1 Ӹ]ŦCU<we_+jA A䂲gFo,0M)3n^5hVJRg|B%wTF;-uW3s#wYhvx_89D4d5ZS+^eچ˸D,,#Msr7M5h4jڼQ33X,=Db4z#qv"ԋ,frpOhIHC [$C6 : E_|Cٸ(D&6u+1A輖y%D_PDgyGSa r jK!ozo|AXkn κ?nR9$|qN6ԀsJ32oRsD=5]aP[Ϣ.ܦZpwHAdUIG"|,>Bj# tˊ),a_ϑ0%T 2PaM&~šdb`|uAynٗEKBpũ|Y &xXk>tz8[=~3$&~} hU};qNS <ՆKy: 1]I$:TVӘ.Gcudt߆F,]qQ숉/]a/zy{2D 2J: UP47 G_;A-VNgGJg+AF?']ĩO5Ii״yHI(>-;,ֺ܏`E;ް|d#e؄phT5@lዅ#I㻌>Eb`J/xc:xg[x ~JIڥZג:~휽Hh[5锹4_P$2| -'IL+7%!ОjV4RCB}<BҮJPΡ*ۋInފ/L۟)7#&+] r`F,$ǃl>9[i/Rkŵyq%Gz/x[躡6,kBoVVUȟ8? Y 0|ܯ-}7P3k z Vl$yS5 8ղTG\y̗7j4D6;LŁLڜ?$z +Dg9ݕS`=.zhAO{p.̈́ HZ(Ϝ9wn;s:?U뺲OΏV=K,\j6kL%bH_Ɠg_'9êU~e  |PRs+2Uٔ].Xꕈ-R8Xt uNB݌qvX\ɟ߆MEoga^jao)x]6(@{9^KH.5p5kaS-%$H'1:/x{UJm]V\)H(PkL ${z8%dhu0ֵ%c-2CcuHO_=,X״k˄t8+~㽖T)7&~n?~qIgfx5[֕[:zP#?\65ᴝīe6wȁԊ)mjwZ cq+~2~E4d 82;5cm߾/6 Zc,FR~-tuq@ 9V8]/יզϱ< PpPq&N1lC 0́$zw_>vSs#'oXבMjH([=ǃc\UxѾLԪ$( z2@J(w/ Jr֙O_([ o*AsJzsZ8㙥x!~!hA`)e"%sZ_M\6h(G R3X%#\pB3aSv.f{|5p-QpOl.>%RKDm̏5J2m v':>+󸈐\1+[$$ZVV݉0 P `u5tW!Lx x2[…ҔeW&;axjr7h0 $~ ~ 36Zgw*VVm[3c.ҧGFMAW[ F)2)`jRQBR}Zd*G}@@8M%+QOr8-c6eNg_w:f*a(/ͬCQP# m2ॲo*3HmwX(e[w`'iݰzY=Y#!RʿZud`zcGM'[Hg;4Q1_9eHIC>dݔK>{:os$#rTl{OS i4ՠUe3󧞫TɣQ,YzӗID\K0LQh{aKB.~V}$E.sY*z}S+,'Z)ETm4؍B,Nu]S <]E g5IP26"ީN`dvТy% O$E*brAK&ʔ&S*vX yZDtPUcjBWޖ)h#HvHaE!\I$`K1\ujUʝnqVf),$~nN+\:1Q Q6hp'C7FmGVOdM.Dȹ]8_'vi36ɘ};31"$<l׻e~-,r딻Al!#i3e9oղb۶U1e&` ]h M( ߟ>F'1,M[r%`-OEwL~uٳ\w%s)y1VsyMYK>Q0A*aگX]&L .8]; 0?7N䆧 aNGZaE'evP2٨"-2HnU *<6J]6pn[r וfAʰ̰K2dfhp%}/4U GdMc5qE4 Tю}T\GŹDpF 'w(UtWi)sg\p(~oxrWRVUz8[Ԥfd+S#d==5 5[\>BzWH4]HnJFTY4~h> Qw:( pivYw>w'P9.XJ{n*Bɴ߀TF^V`]eZ $qbMG2U}h^rFCtGN^%ۓ#x%*r8d)l{!ŷSsm *EE&*6;>%& Ͽח DXr9a/#FANv%zn:&*55[z#ogDhB)&j]Щ2{%s gnd0gŘ3_1(Kk溣d\m~)}d1؏悇fyPDZh>}~J{qAM>[}rɛ ];I~yj>ڳz"ox csg-;=j޼\TyO)=Cs*S>P"[%xvpgWt8b<@1:\˸q=Fm{=.P>: SCUJhQ <sǧOkT<뻈s"n @UxgUQEoFpM:zA JefcYð-'q_^ ImWR\L>m .WDBfMA%9-1L(gC\PxS~YYohk7M2SvՃyfܵP̓ ]Yl$j)UiED6!uO k8*ΐɼ84ʗ׉wWh7KWצF`KS>ՠ#O;J?gg,fL)([c f$]sFynfF'~KccpdNARם_IQ DK\׍L]~ҫв-p1PᅩA+ }E-읢Q{oYYh(tP!Rco諳H2툿l.7km &,/=5}!88bydI>COl{؈4ϑ?shwW[7G ]?Do+ns܏<E3#fhS}TcU 1irm'a,I8ͳ=ߢ]GWO[#jaH{9 νj#b+XcwM q?<508 ]|sH,FKWo=XB)DA[E*ĊⰂ2⿩7Sd'ںԄGjv]t).lw/u^;G|| 1 b[UZ̪"P# dY{Nc>X{aCa,ڢ_gGNk PFkѻY5o s9IMczX>v(v̠.+$vVh#|I=^ G? #dZ]럑ޤ>Lϥt#7Nk-hK,S.BnA%RuyVwjjf o# @| %9]pdO($f'!NVcw[ۨCrDVZs]&-GsQ:VQ'G&)FSqqnGTlH\kCkUwZu4ydI|Ap#$ҰV/Hu0f{ .ܕ(7seP":x+g8, p4mâK`z!LAIyY…;m*;zG/}T ]G~I:@b/\S<^HFݡ/pS` xōTa\K.p8ni΍ʥz 7 t^jrxzzͿ=&;,!^>T6dhmQ։p@xX5h/J5F Q {ݹL)=6i4=3mڃzCQ)S԰"-"3rO>Xezq0 *J.KT#Y"R.8g{J~ 8B傷s0}*ӢQ_bl(cLG7VB?ʄ6L-4?E_Y;J3.ዊbpt$plKpe41JPe݄m~0滙CAدM$~*#_ 6!U`u4=6Z/BHXÒcpί=Y^ןwSerkei%bJEZ.eDfazYO=1EmGXJ<"IUKD˿2A@FMJP旞y(qZY!F\o֍&g-GH]C?D6u裢utm򇌈  4s-U!<;Ǚ(5;"7c^ڒ}UX^!g2l k$‰ (]%o&G"2`HEa % |~ ƀs~0d_)}JN]%~۴F~2L,TFuÿ9u'6o`Ui- wN',iOU7e`vdD>V5r?hhSIlۑ%:7N]7dA ᠾx00o?cfآ8:` $T^y->\&u LŠ_W/tHV`(&`ގu(*Z؅Ah wͶ=s獧e*(ћacP0oA }Er@o+Ya`ȍMqXY,5GڲL_Gv{w0]s ^HDȓ#ofLW0S-uX|WugơHǕw+cTuH(ݲ2l|`jyr1V>۠_EqE2骙+Ch#i5/cE*髧Q"Tx3Dt\=BT4[hCG? m)weuOtK2UdW%^ȹ-Iy-D+{Wߊnj7C(kUoar;BTL+3N֒5 I0&E <7 ^Vbvt,ޫX])>k}wu+5`I(X*cg\W67_e4ޗm7! c &uP}(.H&ъpcjS>/Q]cS^8&u}X짍TЖ42gd"H(##K?\)6 .ڒ0\8f&T3?rm{M~g-<~nTРM ƞSv|ORNMojNK#}h&6͆a_0?}5t|2 U!?˙̦yaK ylP4mLlE+Qc"$HJd||YP&q?L(/ VdLكC$)"}1v,1,3^xH0@nĈȤG" )?[f#pTjJPI4JN;<ݡq^nj9썾0-F G Pzyrk?ټ‚N29r )^ޑؕ@P`ңm@׹ Жѓ񇬙CKIf%7'Aw~/S_J@~s:f=~ oWAiH'A>z7<گFem<.wc*P齸qn‡ LأzCK^Dv"%(Pꀴ<Q6nOܞZG"$y.9okYm#xN%Sѭ@$WԊu[jNN?DBOwS7lo6QM394x1dU\Z-hSn|WgWNJ>Қ>~-OZhDZ,>(83.ķC_hbE$g5i9 e \w3=K?MIAf \E<ޞ1^r`Ӌp}͑{J"j:V<{it//ɩ˸=Ɠx 7& k >Kz_&unucPopv:0w=|W:tOo'wc4 (`ẅ́ shz, #.fMɪ]+xբ^07Lu ijFz8eZg*RV?R80INWckD %tDw#M)NF0Y*\V}bsf/Q x~[Oہ Kޓ1^". 3yc=יi,e5|H;|@`b)8Ѧ&Yd#mb@ Vz2z{AD;C*k3q@E#R睧6@92x Z:ma8F_X"޶ ›nyz66{w>MUGgFt0xȝt8g'N5$`TUm-#f9)LN_׀'#V,|c z{TLf*C԰mE}SS8AE163|4]ڨ#x1q0K##"WMmd'mJTyQYmƔ6S~T8R: !-Iz Mdݟ #V# T"(su"[ҰRI a(U؇Ag S/Q F&\1Ǹ>:4雊T}zCibezvIZvHERYvE^,]J8 \oK'(:*N1J8-L0*ᬞ}:2+b翯\ g\wkFet;+bRzѿn,R@n\2N<im>󉯤мo(nvVPBJ4-)^/!0g:;Ĥ\]DzZ!4蔶$,4Z^bM ΢NT)hx2I" ݏ PlÃ:} DYaoQv1o:|'GQ,OFɦc=[?~2EBi-2ylGz/&8Ṽ=YKVo7B)Xakwobb C=V{N?I'FL_<`_HouN#s'CM;Ě,);~ г(!w_cC̈wcz6FN1!;0]͌m 3I ÇTDҥ-&b/)=Fߧ?Y%Xo\{W6hg쩱{kԼ^Y)7əKAh6g`w 5_95H=h< LmP׉NFC;n1E5 r+zPD8 yi._v"e9ҫzVV"136vqd Zi;HI36?xBhI90:>zy-\szN D!*00M%ܯShxEMK*  ${ظ 3b#S[lAC2z'|)ȿċ Q;-DD$cqoxךJ+(Ke#%fktm5g^]=9  etwF], v6z0?J0cJߪUB\͞;A|l&$&q*]bua]ԇApBfI>t\mmE]HM}+2nQh$|3M]h&ԅj"M믟pT?Z喝䟮sB5˺2ƙe1V$pu)?'M~# Y9&L>YPe-Z~; r!O1F5Z E\ .4W:M[\rL c 0& v"p2E[Ѵ|^m"Nek=L<\/᳜f&oda&`'s3-$Nݭ9< V.dBLu*ʇzAhl!AóLDE_/%dWy{<ڬVkIuS%4eVayV{9iu^R,҉"ʮv^ `dȊ'[#B{~qɉz/cKKMb{tFf/(zO\7|TƖBS͊3Y~.5ζpdJ؝w,u:Obf{*<#DA޼m(͎3M%q̖\ʺq U/~UMG7΁5kɪ.֚ RFFԻ%6mxpw" D`s7ŸH9pp8iJiz(5üPE釟%Zt[$O@wvs~bv5#jهj+.ܖh󈼑) "n iV4N)2O 某J&6Z֐7OL)G1JIEΔ}^2Baߣ=v!|'yY]ZRU;SiigOau1 @ۂqVDW(gJ̑ǿ`!1 Ϳ$Cl4X[>U91σlK{G$Ϊ!]j,`3M:K8\E ifY,׈_!} vxjQ|x/|O4'b,oqpJW>BT" D㟫B}g%{D:k6%27Nc7]o,aݲf9APHVuˁ nh[ژa~džCɌ:"Qpf0 VNТwyW Sjz"i!nq~ 1ÂlKJPm{ ;EGuZ!o8hA&[ X#ގ8jlxfk: |&JwxL M?A?{ *@,xe^7.C(9ag=>:1#Y1ѳhlLAB>b,+V}^UdL쎵OF,.h; nM9K:HwKb!M ~{O2M`6="%jqDZ3Q%9ewT6~1bL~#եO馝pbY?u==Z" U$I7ahH'8aT9mC+JPtImTyE6T;ťc:`Q,JH|T7ޖ R^Kq-*S"8Z[21|Y&-_1lo(28\`h~f$qlkb>Ǔ-P0 uu6<طl-x&TY/lΘdx#[2J$NH`A?ҹqHxi"⇾}Ԟ4W:K{]?E{qhIbC{C&R;mkz ٯs b$oQlr4h#IEw15"j[S?C1:ݱ:b弤؟YY*pbtEc鑴\'^tmVc`-eUy\7iOHVC-6n9c /S{z>''ܜWߚ d&wo-L.TP@Xx!(Sf"z.,ҳ̛ޟRF !o3z9қ;[6{Ռ#06RgbuB1cz9*[,o(m&$K/FNˆhe)#bc/Aí*&Ā8) ]l\ǭie}ve"RQW2s;О FEMܻ\׃RXWb0XB[ueǣ<,͗/>B fX:nR9J*X%yxCs]#n"\^<ԯ$¦EKFFS^#Y n)2[1LjjA,)unM&rT,ABFsXzu<9SRŸg彳PV%h>P?fb^GHuemϹA%0WP%BT$J%P)aː4KL#oV.QTͤH$~1ql9~n.N[@/ex6CDi&"ɹ֙Iv Gs1bE/Ka&9ʲLSwY/O{+nX-k27J%2!dQIPa.kȓC`,_ K@/ۄI.6!;"H%9on#%͌ Zu5E`yHA:ơI3;p(*[N#g2Kִ&Z4;XR\ӃGp&ƁAj!LG]}RUw9DWϨ :W`W}]Otjl3lFX\_x*!M9p&\#.X$fyS1i8ID1g< g([$" K?WY"ת=єdR1 ъ$n7QV#3Kb;HSzbR|.T`BDHifrhӝCqș_Uo%r'}H^*$ Y&e,xcmnfzш};·=5PJieA`dW@!u.6DeV-1ښqtZyeW_z}$=D pm CXQ2s7K+aZB ͸ EʷoaDbnY 'Q`ۤxchb#%|(-35ٙ<+kth{ '^`1/Cal Oʘ ?8? hAiۇ~ӄvTEIFx`T.cIL)@πpiec .2$y*"R4"l:6Nu8E_/FwD r*-nm/Waa Lm7PJ;~ %e )"Fi5W/{su5?ѡVGZfjjD`u9fp?OS/H=㒄1?HsK]yӴwf3 j¿ AibJT ]\8IC[LsoW+>`>,o^, Sim&ʹ ]ZKNBSd2F\#y׿>mM32L_(uS?9 RITӗ"J:w.hVˤ_LJi5:(UA E }H9a78vmX7Y G:pY5ޏRI.OH6&$eVΥZ o^g5EHm~KF? EKbelc,jh<tas䝑r-5zaY=C{wQzi'fb+J6r#nvJ`a9Mֳ wD=jY>!`JfytLRڊsnaI[w8I6>*2!\iE⭰ ٰCqZ4&L^VJ!]zj;M82QAm*ne9旜 eQ\?UA$ GER*'ug۾ixa)lQp[aQ"33>H/O`)ˁ:*m Q_0kS;X=2bDAUcS8KnYo}ZiV|;QȢöߐjM=?Oc5(5~Cq݃Ъ6H|_l|%枃E,2D ܉N KDbiїӻ,}oo˃3Q )MO3F8C 'ϽŠY pt=A2%sfbpYV7J EЏr9Bع?CA/1\w$ a7#c{ñ cmSJ^z,ʝ&&iG3T˘]{׫m&֮v8sƌ5?L}J#DiEU֟kr?صFŜgPᗴZZ[˔̍k-i~v3@>뒷c0|SGvL@e! =ݗLƑ&hAE,· z>*JS4 6~_é3H4o3.^=57E{bY cW9Yd G0p:E[0yk aN$.O=% |4i!skБ=1\ P@$Q edk^yӟV0u P)rr\Ho |"u :J@I58u*; "Xzp1'धĂ/Ց& 4׿6Af,(VFNq-47: wB=Qbl!=Zzap"{HZxutN7h9Wq"ܽF`]5;?ImޣS|Y\NH97 9$87I!FN;R 1읦^z'x̍NEonR'޲WNS \UFBDp(X5lyUDo5:h <ũlcc6H. 5.%;pgq.p ,IvEH)2al՞^HX{XRQȨ]!=(pj530<`LkMo@oCoJ0O1b

򸑳=3LΛ3+!y+(g>_hJJRRY!?)]+F!gw^=.d0DmE<^PKtf3|0z3#r̬,/cM L[)J!@:2IƠ]筲~-TבsΪ?MTiQUHrUNa1zjM5MTe})ts.>[^=?=eviڤ/+RKÔoUK)gǻ}svS 4:%_eRK#'9B9}B|n1&%ɨ&Lw71tk^~жww@6)b heId?'AP浑2ivXYUD^ɵXVgضCt41jOo+gֶƅ.}5, #LOewv4KsCwu$TMOwGk)a 5FŖO:trs4x"6&lXPmC:ڒK;*>Ko^(rz Vag7eiYF['ڦ82!bSOXt.4z73*`~N*,BݚZsW˟O7Q!Ʉ:c!J&? }fi8O۔揮CHԲǣ: J`lŘ\W>3 7<n^pZTJ0G]I)\E]Z"8կˋ;vpb.˙QgE2kCRQ%+f}5+N^&&M̤ qD8y=^_>+f2RPRkuK,F42(C4uwCM}܆'=A Hl6/}4(Qxu־3/CO"<LLhW IGTYDpR`5$~gY,YU?˻.$٬Tg&1n]jmXhm(DhJgw){=L|\Z%룝b, &Y+8Qtvh$}Ph K$sȞ< :}5\ J=E9v"5&~5VOxxKB 6`WQ=-עM~<+`JAk.q5 ny}(F]as %Bn3S(ݡL /LV Wn7@0SNXվgv ]FR~煫RmwChlD)ڪI:ןnV!= Lߠ*lfa[s>K:jjR`sm칞K2RI*ԣwpe.gUPf۷updEC+]w|v3ຄl]:tРoZ"C~e8M^M D2|mSx_kqMp-\,kl/ tR$C^x-E:1׃{ƩYm8CYƬz\/QS0iETQ9A0DFc{% &2/v:$D!vbˑH l3/:Bf&lGFqxGȅ}ߡHG*SwZQț+É|n|p~VZb8r5yHqeoÅAiTT*CQŭSYZ4>I"*4/(E; J2= -$|E4J.EIgjCa5ϏQ9Ky)_dLjZ דdnV|~rZѲ Ң&K51`4B3@ pJSpGE/HVk}=cE e랁=ʑ5FBMԤJk3xhWH̪Z\~J?Z%Zk5n1-cJl u*f]R߈ ˻X]XRŞ=5ȏƸrtP X:(ahv'KN睹U.T& KJsk6BwAiA.z2یzl-UPyp@ !*zDiζʄ}\ÿ=>d~k(Du~tEeOw /&Z΢lS-f){%/SRD5r}"1U$_]0\^@τ2)|<OA܇yɑk1Oܭ l'8>quEL0mU03r29+GM{F+)!s.Ӄ?=EJ}ATٽ2UuDi0gt]C80*˙y;pm?P"V%7d z?N 2ʴ?"LTMTK3yE  xܣdi@␵]N3lHރZF} ˆpdȮF*Lӝ?zjup?n)l5G'|h!y@^|/"^`1&镅!e:ev0JٵA%AogȀ. GƫK$8o-(QakkTN{ڀ#bo;ExDl-5֜94 -{j'rӦX.YĖX @]5:YhE%_ZZ4@( eoJhcE/\?@'-eGΤvJLk/8j49<3e?NxkĵpB$Svc:`( dʩ."HZC>k7Kz84c!p!”Y%28tG 4xTnDJ`l Ias'}l;L˴DP P͒9[4dG8+(3XzLiӼGS-[D6 db9֬P ~V n d3CD6Bq(]6\M GI^8r _4sxTҴX#*>dBOT;%̪QMfyvkmRw*D>SĞ\A\vGnw潡 籗m'UcCM~E`&Oi i+~p01O܀7`-NHO)77W[#f'tVyKv'h }~ϲ,#b/]D31?'и߷J`s :_mrM]ߐm;Em=-p|l=x'>31JW^IqH{j$՞_͎EKx.lXJ?*:=y4Xw{`8&T=*FQg;xbcusUjXe0}UlšÊdOvOZUMEӥ==hT uӢuX?n> &W#-Ȗ; ?b!>n 1ا Ĝ[9[̲3?y-_{a<ņ[(jS3Z4Ύ8I\ϸ>!hЁ g rQ~>ADyjfi_%>a?'^-a)Hn/fc3!¢9m:Ǭu[{p#SN%mL٥ i\@)ԛYZXhⒷw^*#>r>eM TvbNz4 |Wd>_h TkiiXF&=R K*1]{aK t0è:Sܩ?h[f*5PЂ?z]HMMZ;jSNL՘/1 \F{b&=8QR3c<=Oqx'g}(CNQ506c97!/nuz@g+&뻮LE: D1y~@v6$hW"ٮ1?3}z0"f+R\#w,[p43P;(]l,;וֹ3nOqP^!d1;WD,yY1mث^C$&ҍ:X,!:_)4@tGzT J 0c=KmbVe8Gu]'Bő-[;sLUu0鑋`yx|b?fX4F;>7%=c`l *&ysvٿXYYNb-+BdOS";6s+ DFBH:u/v#7)j\B3eoyBP5G˙͟`3D "Ľ>\[d~;aHU(p;r\܊޴ M{jC`٥N%~'x&JjfCX'?{;et1do0<dz׷?u ;OrvI Hv4 f c4 D>1GuIh9ݴ ր@[k8nL =ߟSe#e4ds.XdҠ>;p1V9S+e,]W wp(hh޼pN̽ xL}2=k(U'tfsi[̮ڲFEP*ugڤTPG̵V7=D2135n%-(j>+28H q,1ŒL?HQ1 &y7A@A BSR{[& t= k+ߎ d5N (HuUs zNǀ"NNH?T,C; ~&]ޭM~&lZ2ۂ)5o|ͤWA9R8Yr]+4\K~djW ڧf3 Iˎ_w !9(` p#-:v?iPÎ73ɒs!>z'9*掑cLݾ?P,ǹ'*%h0RGk!MeFƈuB,]G3y3c43**хn`D&lMS|I*J ar[Z#$}<@4b4!RۓF{> Rp6@m }ˀ-> &/&o8/EF_#XsYRĻ@'g@"WN}̨*e_QW"q/@9e[ n5~e+;3>VI6@b/Op..^FE)c8\OT_XҊ"VĜhigƖZ\Gl/ BЩwL>Z:'5I)MCw>o~CWB{t6K?@- ߀\y햓%2KW39Qj GuB:_H3) fU+3$=v&5 A@U8P.5g%.nK7P3?rӐKgJd}\q ݊Sa6w'ٹt%)ndvd 2*< &tD̨ s26畗K w2H ǐ:%Y7LOmԞ9GFr'oc/dVS,x:N ?8:jD~D ԡZciTK.7ϐV晤njbi?N $NǀlF)&3M]$prhjS͘4h:B@Wu-c_6WL2q"DՈ~|d *u,dʜ*ǝB+`!o;d[zMn2z?y~4M4j;7f_œgM0KEFT0<1G*Bם|'&&_Y>ܱ[(AҎK['{h/qZc&#@wKp!ރ)nܼnihQ4l0@gHrxԶOVx8Á\yeCr$0РtN7t֋aHH.+􎍨WONŘqWY|b~6>!{du@ Fa{>Gdw#n%֋)k\b)!mI5AIRKh3 C][ .E!3 G L).K޴SH(h,9.joNi`_4| yW{XqL_V{-8-$וg'`~yxG/I%ڐUYxK*FQ6vƲJx wt 9Q#J >c|]t1?8_dO7>^FxuZOjH ,%N6_o^aʋq .zxi>ʛohOQp0z_v qc {Ig'KI;$y:[Q{ ]#(.J<+9ƩUm"4%#Ebno/OgLXA2J+hToչ"K\@Y~!pyg*.dKlvݝ0\~%>>|qq 0j $ [N ӵV>"@S`הݝV0s-7Po3KWVKr; .v%֋GP I E'%uuǡҏՐɓ`5v*asu'V]b-r3,yq׬D[!)ŇXۦh-Ҿ~D uAjaTLhцJy $oBEH6X>xiaȺJju"gIS `gPr4]qs\|o6\ڨwM.8gJj1M/ꈊzx^npg ali0 ~$;[]*gA<,B4z]CYjtVG GԇǮݩUM6C!vM8kTDh"Yue$h vzcx{g?IN #_ Z=!N{>D&G:dS+R[vt.n+lq?Cs zA hK$OI$|][Y)U[Ugv09.7gE_l]x}r̙=RKT0Gܓ0vQ$.gH m3nZLTߢPv ]JGfB?|R#o33lJ^ b8O;s.&J].IYI$"5Z)uph cZs/*hp+/)Zą:L31P @b4~p655ecmc}ԃ7l~W*֬{n\.V aV53]o{>)21(('yLV/`՜P25F?tO $.F֞s"V:vyn`VܬPt0# G5xW4UtKp;)ű)eYrܷ :o=?Fe֌] 2-/>[icU`_ 54Ѣ)OE+s0c}Z1 -)0ә4gϛ(T7`amOAڒF ̘u8L?xЏ |52d[؉%)J|Zثmp!CUFS$?,"7*Gv<$2[sx{a{2=lr$릎Y^l\Ss݂rEسro+Qg'\@%$xZ@P\?u}o(ptI (MB[Sá Bb@NABw(k:#6iH@K5pwDmQ8 Q5~Q_鰰E6=(]Q-%–K0X 2>.` 2sJ]ۣ?=UȊ,DeM&qK_A 곯d_U(7*zKl}`yxpHӚ |P//Ko8$ײhOV#WOc q{pmh0=4+\KʲzwksrmbsQ5E9!9 Ύp8 Wm0M)W H.,G|>8gJ(ѐΊ3Mx_K^ r'M՞ڬ< *B"}Z* jWxKN[@7TOU_tpjٓil #)oY=& He@2[NIxwޞfcG餈N~ҍ|dOuySbX1Ȑl9P˕HRoNtpgkWTfiS,2Wg댭'`zLr{[pR{y JtZRϟŸ!)Uastʘc>Lz-L*B#FuQyTbD LWYvRt,?g3t%h߬ClFӞqgIC[Y:uy[㐄򆣳, o&rbi]x\x)$C3S*GXFV<%̕h7U) 7*kK4;^ӏ 쯓ZtX ": cB[X/|q~}lR g2#"ckB:s}]/h=QUE(%?+c~b#/vz=sǟ?ckxeT;WL?ggv.]F,"Kҭ3$\++Mhc^DzI6Zy]oXIS2Oe5g1`'og8eס7:'J^RCx1`DB0LXI{*cGuH #"^N0O_ *!})x͚'%ݕ]ٚ0.5/=Ό), uzJE+Ym/§e+!  "[^ƛ4nB."~{nՔLGȓ먧_CL7v'$t3ځ[\3Lз'ܘm̈amOmro37"y bP)xZH_DKߒ˘͞lQ{1U֬qUTPsZ8#e2!ʼnH+[پby)a灕nʛe%acQ:zn| sCk+{SgT! '37oҌmyaSQ 2t>9isFKآXPoJ >B j{Sb@X$=6fi,zg I\Zs mdP#E|=WB|ac :ɠq9L$RjԯMuv%|) +^>%I- 4DkŇWh*08..5dc1뫳%D,cSh!;ꋍ$ݥi~UtO\DDǯ8C:10zrAN-pڜte*uuʐ1;}'Wh:^)4JhEw$W '?`'1 RJt8<߳ė{ސoA1PhgM2Yh+-?T=FB׌7-Ss |ޑXDTNSA2 >8ij)Zwk" _~2BF}m /SYGFבCMB v晀8c%'{5*GCt 0D .}Xt\ Px!wVH 3qEJ|!NZz-Luq.( f}#,Ɖ^҉CEn\M&&})tz  `{/DRK;`Cq)Y^ujZ3Ӡ(6G8yN&Ή2( Ę#ZwPmVGtɑ؞B5.4`+mğ=fARKM,lH[E1o#Ma3n``J!bK_*g R݉EU:pgjI /Jѐ; 60B=;N{%,_}QO;qO@$( 锁M.0/g7 F )\C%`ԧPLdb%tR$Mg(*UL/élc藊L8rf4mѸ_bJ\E}b<"Yk< ¯KM?i^G~ ncz h3 rPc R Pv)#9ob5>g.\U@5Wiͦ#I1Ot5SfVgR|ő/6|]NI$uQ+j>J)†~P\9LE\2]hG繸.f K^y5<֢`< E'i>]uBj huE:(~B,d@nIaaGGh c{z$i>$71AwyNqK̈́c9Ah1ޡcOZ,ŀ\v̝ӺV{ y,XϷ$Id R)7ؤ䉁UC4~ˊ-SpdũuӤBBxĵC]mʰ}ܨNZѻD5o4!G.%A! /P|o a=̫qbe:(Bs>cAo>8H;t KN#\KZlGI^xHqK=e6FH &TD,c+,%˱  .{{zi( >Y Ntbhx}rKdo./Pa3s!c%T:4뛓n6`ҬSUG֎#B0*-SSH mj󧟇`Cߟ?Mk/ƥ? ۉ_խq6;pF Lm.EM2qjrrl}ZI}xb;(DKxHy`Ҟp!XI9j4F*"Pێ`nsx I/Gz- IMQe$E ɲq6`?#^X!]OQZ&-OJ fJ¤]`%Ӭ#"_Y#k)oqn{i&4LpT]/ Zx*):!9a/-N- /QeihZڽ ٟSRZOe&)H1ݲ9lr$1ѓ8iRH>{&]0!1,2Ya;=V˹A`jk &-H 'k]N A %0'тd!Kܦ76l3;N%DU/J=XiеDc),Y&bݻS׏"鵢T Q˕ 궒Ʋ`>O~uwBҾJBHH^"uɃ{گ@:GnLmvb ϰ˯DAg`@fs*i/ 4|A6j%6qJDȪSKj̫q#1ol_|:= -| S͏ⲍ4d$c y_|~镸,XƮY]D6)(gv0@I$_Jf fBLp({{vNt+'gds,T"tDhf W8/Mx1V{ۦ#tJ ^X4$ٺ憼RwHa WQAY34.vA^q?4C^,yFHOm﯑ԟzpΨ/SG&"]dP_Rr5VSlr1U?dLٹjtaJy* i} LW_>9Vس&3>àh!ZBfG(h$Tz; P뭖iYJ`35#r +',?>n[ qW `gX;RЇ+/H.=J՟A ->EUƝ}W=R/ք|dRMG; X `%!^t2^P̘MNj^ֱ-s.ѣ>,lးi)3ԋlj&e(䠊1b4j@{솕=]8|ᗨ0oe@i0mƂy>[#d:~.yxF6N:kjCI* s0ߢi'6I@Ҽ Q# GOC^0's ٮ-9+icmtVgC~81 aF$R,x2mU>w>Xm8x τ$L\dj狮2( I–ҽOQ,AƐ6|Qr^a#f08YzhK;´e6}i 5/L u9-du /c#pC;3] kK,/:8VaaT*EzIi8,++tʣ&'V\y5)I8CwBAdfCTcRfE?c56o#m㙫[".qX󻁼d,KNJ+ЖxSɟR ぱFD#ύ,kfd>%hg]Ck S ^#h"E7Û*HYADs,Zsj@J{Δkhۤs?| bɅx%#9Ƥ]a<)aeHYw '_)3lĺy "qFF$8`J0}\4'joPNgMCMr\J]3%eQpo3 (+$>PCN0*ef;Vإ`xgӝl aj*8 *.xL#-FW3J8 LtbsС&Q3UcҞ~zkڲ1~?'/`™7I 8G2B0cđJ¹cx2x4hw*! Lw ^ S+T]Ww$ўA6o`2J 9;$Z뻏Dŏ#iWWY)ffg FD(tx0B6Wt9#.Jܩ2]M@)t,XpQ<-x2gBNN.U?'ͻR%QKδ,幭76lJ[#|9ɺhXS VY)dpAe1(;SéTSjScrrS]r(q ЯK6  a[4#WI*L;TWlm>C(_*W0*VLd2E  dB+'v ۖE2{v6Yk9vנ䳐U<=Sqp:v{2킊=j>vf:!yD/A7 Ҭ11Ui x^JeJº;#K(J"Kvl{a; Uj+q(wrulK:J @қ#-`G]LŜgVfYXN.Ov5(ϺnʈqI%ɯ ?f?=-K27RXw֥W S g y <6.fvh6W,wܬ/lon2\p:{k>/=J>|,,!è㯐9x GG,Aɶ!?@L[g!>i8nJq%9'M^M͟vTSAr$tHP"6\q 4oY` Fԑ eI ?jnhNyפOP݁SX?wZo硸f*+|Fځi'՛ZD31'(ԃIQ:ZO;<↯niE^^D`\E$iP]c3|GӾj" Ƞ8$SsEZdv4 Mp}RxDN{"V8(^ycxSPB_23n\fYyr>C<+НQ4Jov >Li1wZfĭ$<ܜ@sf#%b3]ݑfiY`I7şfe{hKCj.mX֗YgPD} ac~=7=Բ5& ֯ `-/) #Zb>d<,2Քӏ\҆O PBKwwh[_6ڨX$O}>H)mQ^0;Nfԉq:9^j(/$K_5A'-YуH~JqQ2RWH DV/{600nt!W5<8y݆zQ?bm(;Qn @&BaO촱JCoゑ[J4U0ma\ 'EcyZ7csGK?SXDOtjX* @OXTyn [q -C_ {=1UKj|@r ftԄ. Icu vPr[}(qƧ~Ir%>Xvvf!+2l%TЭE}g@ZS|W.Rn⹤):MZCBlc_YaLAo,@@35C媛S_p$۔yU.cG#2 *Wx љpeP/]>+HySZya SHY@TeF%n ($*_.OK6t=UYZwq1 ,G: *?{Yay6@4 f/ ] J-1KoXC1k(0w/O eϗ>An3{ʽ!Aax ,++s-v&{O?6ay_F{P,P[z 1^GMM7tB*9[Z`_GeP*]Pq+|e=oBjn''J+=0m7g3Eb=૘jFGb:GܳG dXi)+]\]GZ)E8[PRQt\j#d8گ5d?(ŎJȣ</ dhF7Fj^30䪷/T.њ"nS\%Fk7ޒ={Dy΁ IM3B7?mH\4`[sW3 3rF {+&+{jۛyP" |.+dv!ok(ǟ-'/ckc'*ۼZ>$*;IQs/[0`e0R?]wf1h0F/)b"KZ >>CL3[ֱ<Tq~@R"$.Ǫ_w4\h)Db2d{%vo<\ZVLLQkC.74hvP)/xpҒx7HUI׆kOcyG`͑(xTRLkn3Z_~'cmַ[\ Gd[Ֆrv͜` cQ?BL]A<G/u-^B<]k9+ &[2Nuo_41߿VsJ?xרbTa >9S0b@,!p#X z]TD($\ƒ#f(҄yN>8'C".$0Egh<lJ Yvv5K!+omqc(TdBْaw'՝[Bl 7) !9ZRץ9ͨ‡V.WxtpXo r;o?/wR诈O$J?Ae`{6pn=a@O>kmS蘆T!?V.`4T ׉ziEm.Uzseԏռ4վj@[P؂X  ~j/\pAѺPsSxDDT:K&S%?*>PCR~ӽ,ܟ޶nb)>[vz+ŭyxZ s4ַ,iZt.ȝlu$smoC4|Qtr7єpT@NcN|%"//w#^ğ)"ޱ`#i" jM|>ovyؾd\gMb܇$HyjXPBN[PJ[M$ͦиNNx| «?;\`&ŸQstpk% =`1ek(?S8"EٮO rlk.-=?\>hy;8 3H?Ie=aR;zzH<K"Ex7 ,M$@}0wko U@"݇ܡCsiU=H4ZKY$~Tݭ\t7yRQ<Y’rM$ 2nw{mM1 +jޤ?{{O6Z1[!$ݷcN'LQ\pf$@a{Ls+uUD #4䳸F@JUEF ܳ9] W0%H;wXsvG4vziM75o%=@k:sh>}?{3@fXj|h>yWьF^)ȱ;+'O]T=)(&cq\e Ū%uOj&iQ<;7s%撮9^m>ݿ†hwcY-}8}Eϛ4Fv7fݷ Y Z;"ZcXu8\~rJLcWA+%3<&/ DI)s~'F \ӯ+Z3, =`OA?f3r4DlG4DIQJ̓D) ϓa;ZX\~eRrhMV|ƬSCL[ *:s&i w]qĸf 4.z%G AyaV2uشW׹ޏȤWfk~]M ]䊏ш0nGh(F?  ͶWY~*d@Y~QU'q}N<&Y :fKOwH)S!LrE[BX{Cۤ6qN(6*,~]U4̿:`?KQ~. X'"!Plm8۲ X0rkWQ`b(7_2Ģ<^@7C3'cJ> GS|Ml)bRœc Q\MmM- ~ٙgq-n;iƦO͡"^ T9|člnֱ+rkkUmD|5Sf]xMH). Dsϻ ҳDWTb=Z]zם[,"C*lQ ` o.c6&()ա]r .%f]dO_GKB7w>OMI:ҷznΰ@2coW'Hag%qC3:U __%@7~WN,V[VkаOZVM&J'ŸP~Iz~/; o<CB+D)-8"8.J YLp`HxPa:G"<-Vcw4]xzT+U/Pg˸{=)<Kt!T _ss-Շl;{c9VY꫅ ű_I63کs[T&{i .@doi ̳ rRр6ah4% ^ %CnD `κ*WSzLgєKr,(_B9`KJﶶaX+@ʧzbzɱ1D{`qm+< 9Pߘp!핶+9`p3݅zLnQ `lXhgTww G^͇#qq 623"YS>`fHs!o@h=@ћ(d lvvFh!R2W,~QKo[:gjqO⁓e[8/=/H+ < [ @̭QYuV z($TZ;-AH+saQ/NceQ0 ITHppM`W$aj3Fq }|A%[A]#<%|RUH^3PWwkE]YsV8I8JEߞg +vL!)F%_+u-;b!lUWZŷ(ݓ񭵬 *uet9Ya{GBx6vCPmmlr+B9Z{y#宏EhZq0"''1l>-L~7=XE{9|d -4ru-)s}5C3f`^*/Q("N!ʨ39<ʰO>&<ʜܧ;KgH̢iue{CZ7NK = :ntT>!4v]Ix;uIVx V~.æ`H1\Jkg"z!*cz8o"n>¾^kݣ%fa*?\VzgdiLc0=&ɞf&4͂JEH&Tg|sךk3]vc @|B|wb]){hhTh-&R% sf°)~Gg᪯1M*2PZ関CcwH_tC2)V՘5pd>Ў'`i?%sL@÷j7 BCPw&ϴ7CHUF2`diSfNAB҂;cUB?i:C a{ohUoGHU ,!1B<:d?MjDE [;ݸ ⳛ'VƔ(*Ť(Sc`"/V(:`ć$}T(VQ]Y MxZs$Wсge"8B=-!Y#aU X8*]7n&l4H moR0>6kz3w_aZ!U ZW5ͬqE#QBcJ@i-rYεQA[g{GU6#F{L'~5L7`~&{⺼SVex]Z`hA黂<K9:Cd]dPB Pǃ,TBw_cC$$[iNKyTDwZ2š.hlV=-BLfH=mhؤkJz:'r&]zŒw]h#{WGﭲ>ڏ<@By˙}B!6#p~yT1LUgs֥RiGe =kz@X*4s+ɣCz:H͟NpfFUx|p-%5μҡف)UuVOY$Aqo_;sCPqG#?0z*\nַ yTM)Iz)vv)Al*pSPV)%O6j\7/k@Dv>J93$ 8+2]fF^3QuBf'o 3UXZLy'gt6~DŽD>Qu苪P3<wUˠgᗗ uhl)Vt OWS.fO&MputӐCQ^z]_9VkE̶SCʉeym|_`ϒȬxyo $ɒ D Lj RW0aP=ܨ=`-;ELlI`䉓D|LǨ#h4$NGF.STfdI _#=ȅ,?|f1ɒ$g[fwU_7icѥC9K.iF:@IAWp, Mn0vG6]х ҽ}qBƮfTẗA\P&m? j/Ob}\}Tcvp 71)mL7T%#F;W\217Jk D!G 8J! NBb9%1MfFA6D8xOLŸl.E잂ᜍG1[K >3I~5b^ʵ$3Iv%InJSXE-$%v\eRչyҨCy@ʟ*qDk|YmoTe[P7D0(s^uЕ5fV&~|ȡ2F6}OD CZ^q @f #FZK~Ь}:aef#|Y7=fko=Yj7IQhXҗ QE"♋9F^0vZя8.maȇtk`SZ8B'6zuɤDWKەH%s,X7:݋V:q/LB+ /MG;gFVE@wsZɾ:.is [E}b#.G]>!c,Еz#WԖDš]0PW{?ނ2j+SѸ{r4lܹz0kY&s3F|e+vG\;`wwQ!7Mxӻ äNv 7 Lv^kݹ)܄?7vO%MnzB1`XŁ({{eQ-7@bn= )[i- ڥl1BWdΗ(ľ%i&I:#V#AtjI26cu?h`F<EU;䡡W0*{eCk@#C`'=_~gf䜍{1UC,X L~G+RllƝ^Űh/=;  K+ę꿒 x|&<]G*̃"zXy`?j#JO/(rQMݣwi=3.jP6]oD UNq}!fu.(ۦrKFLB(IȈ*z$pD؟^M :_@7 g{.oab -h,qC,> pnK[)vГ&JM1%nq& Ԓ3iCjFnwkۙJi&N \SctH[NhJdbgA )@*gBF=$D"cOZK0j\?B9&9.GK~s#De͇`g}*(~NO6aIL.Ț`N@΄+5 ~|VYTVs" É|*+kۿ:>9[C!,z|+QۗP9|UCG16,uTJ"!;˅ Ub5Qogj~qW?.Fc(?\qiRw"2Ĺt QDO9#սWgtrϗg/"!. />Q+׋E odTA>{܋xlQ?{r0esF3YBfa/~qF1Ub4O~VĆ=v3S2'ݕ#]_yۊ)N.N sG]f)v?̥o ᡩcEZ(q/<+9[L#cD5qGQ}<]Ӕ J3!CRF~z13ĉ%6ZAwaRYfY2>d߸8AݣLYC#U)3! L#=,n6Yg^5 .[iΚb^_Lp$L-T0%լ5y?5;믋ZE9 *㶀7RkZn92"mY9t:+w\$UZ&9hEKw`!V/v?a'u>#aoF})ja{~mR 9/HRBwS@+$h O :  -99E8U_P,&lB}s1@O5 @R~ǎIfGB&+90IT8,k\2NZOPKP,unGh -R5}#v5}PmqPD#@Ө cx*kW7+m贑܈ ]\Us ze9D Q[jOlBKy'ţ0䲔az^P*{!Im{6k 7k)1?['\WYO(h*RYwd}7FS0Cg&hCԪDoOtN]0Xhq_NsB{OXu42y{MkY+mk<0 /Y}a#[ش}sa2C^ bHJwgs|(G1yD6|EJҭ{P!EAqla T^u4 D]hXO+AaoF`cT=?8jS`/P"re_/:L0yaq'{#iagӋRfȩ!#;bfn?Ay8GC 5/~tQ)q)[g| ~=R&tJ+;a,yYZPS5WMr>:BV:ܨlg/ ~=IN 'rF~UC} uǜ"#zk!ILq5G0DڋREC97╏z˺ r mO^v$hg)AT*@ISGUo+-u}183#'3$#~w"6Ƒ)>_e;[ҴxLOQ2wwa Q_?:N~*c`u{ Fٴȭݺw <&["qT^#ebL)c+,igdݺ_ǝoEHSJr^uDK9Og2y)Q*r|GVP oG@dj<*QxgB;L<b%RgAHd_mmW2e=Yaq8. [J⻙i a4_Y-h ^ /Xb*3U`qcklrc3𴐣tB5x9K)5(ޫk$<א=K^rӃy%싚Dp;E.H~R=G;6+V/ϒSW2\By:-ӓ-6tSgsرY+ (4&FװѐFw܍[L)]%axS\އ%LZptAH~g?95uym>~`A~pkay#>VUi>I\/u?G{s!"C{ ?B/)pQ4bPr9+dғVC7j{Oº#]%$~d<`_Z IWKe2`PzC) ur!1 wje..串®/jN ;pWRI^ zj^,S:t].%)-GjNlJq\k~ƵUsqU˶ZbM"߉abE G(30&c EZҁ8Yc')6B "AJ u"j-t]y1ƞ<=3T7t-Xv=jJ\wjuW 绛sC>)YRSϢ =FU+&Q߉lvI ugr-u(Q\%jnQ# (ON I%{b5"78VF#zRZ"!@v[财} 'qZ[܈?{}BK#>g1tO͔ߎ73"={iW#IL3\vqPJFYY?W]Eɤ9As2}Y7HSS*+>*a}Zw!x> ILFԎ Hg[nkMYB*$?}K}a$.HF_LLpXwf68>­y .K2ϧEyE/t"|樾<9^Wj6 #8^9U=vΆ9W0>UطKTi2p Dg\8ֺl, Ѻ?Ri -r^!M{ ej2D:P׾WsǠ57Y8w?<dןob]HRp?1cUolR}elKP=9h2B4"𠯢:wĥP upV H_+GYY=c/Nn EA4&5$HXyw<s҄ viKg\ t-삘LxjӞYGz΃g)Ȗ 88|羺ãgiuV}4RZ5OórLa}')><e9vV&3Jw<IW1J`^6=T:* eJպҲ'KdW pdK4k+X,4=2r<**|Rŝ-x| lv8ƣY?D@SDj-KVERJcf}Y̥5rfqyYd/ۤ??'lSd># DGXzOw1GH* %ǔ\_  O=Gഏ  G6$|+SP̛?jeqWLQ ldh&a]QMܛ=NȢ1¯6(v:k5Pr2}GRڿw(D<ͷL݉ɘ]>z ;ɟ'Û<9v"Ce؁M41@#"Lej@zƳaCNJqϱVgbt("c>p<? ^%m,Oʙ31iNQ7KhA{<!4Czd!J8pG``0A0ASUF}XOYߢE rbh5jK1bb~N`G-&>iD$Sbve"c]<. MiŒwSNR瓊d@>U=b 䕆y$) h3!G4$]^<ۺ6jd@kh3X);mPF} X, ck'fo0{sjP 2mʅ4BG3D8:: ;nw)$aO3 {01lՒ?dh}3?#<@vrb"׾Xc26>*΋ȓcxqA'aRrn>T;ͻ$Y[_\^'82^]<&(M H9_vGLKe]d% *JX(+뾓Ԝ\ۊvll*L 4(FtB MSHAH\cLz?<7KbHѲ[*Y M v{ Lk*T6g֛#ʻm;~ Z ;:X\KF*V! ſUd&֙GzEĤ]0qRn;en,k!m+V> ϩ!-gΝ1n$+Kp]?Y)ajVv:j2;t4͵{zlc6 q ?fL1 L/z)ޚAt!+>`>}l/yd3OU.#@W3>o|m(an8H&[;ZbG)9T1omCAցsxGu{R$ԁRGEk(y(r4ϾtcϘLQknk~=]gAm,jbPKY3k- v]?<21$/AZXHVtf8ĉWéH^`؀'NП!oT0XWX 1Ǚ?Ϸb{vnC]JϽL3&iLo7C@HR /b.shy<LƮp] wwvTrx73XҚ {V/O}}_Go)<&"^ xӋK+8xYESBF4"NYqNT5[q 8dX5i?$*}r^*'"zT qti@0m kA,}p؊:d, 9&CwزX N*;>u1 {"[n;GDl6Nu9 [AQ) %[$p" ts }ʩPvO7Wb"xqD9ώw )Y;Jȴjr=gu^`SޒQBucVcU:^{y]LQg*ڤ/<,bpL-dtrp>. gqI1J)O_d\0({Zû?(v;chU׎ۡn9ǮLd=1XLQYd)475ce 2@.=t<'ΗhKd߅[CXNgQg܁7aO@۸%Dqlkk Zhl KnY:kɞv|PL$$ʄx|h?[00Ϻ;lgD I[%_"&ui~Iy&_iRvM0L{ N/71j~Y޺MpĜ;#]_sd.s̀ wDo3΍qir*sS Fr_Bg_/^ gz3\ ORe"NV2uVCOnF` ų gm!]fk9<7 0 l005oɴ*5xBo81DRODwVc9r`s̬B_nkg] ߙi5cY4]Rn~osiU/JlC:?ɯ9OIm}>ŀUZa):.m} JI)MvbQgU<-q-km BeĈm7{ot%'ͦf PFa'RFsD\ff  Y1 (;*0%Lpaܗ2UF=}EA[T Q iZ/">ʐw6(rYC@^>|Z{+.lz`1ѤvOߗ9:KB_e܌%IKYu9EelhQ-p#!KlKՉjO \Ƽ4Lc[߾ONcn -r_"MS9x+  "ֵe\4d#|4Łb/7nԶ,MW'4x],A7ʖ;hlꖼ8ΧC(#na%AQD|JǢ4agsDB >Dv9-`e/_03/`uz(ZaM 4. ^DoT.*L|9zr> ?SBcBil&ҼzodM89}pMuֱ Cű}A¼ WTc;{2ί79tagLջS`fV>Wr ޕ&urH0ޤ' %M'a/`GMjs0CF!2[Eł?4{d@3i:>ߕEeA%ƤenfЛn"F<LGWql,@7|#,0V osiBW=AऽqYK~wh{`}MLGPa<>y=z\YC:;5v]zky{ "G:S5;uZ%l@|\_'Mr*ә_l;ʑ+b?6>&= ph474#zGڼX 8c$>LB`|53ٍ.?8yD sRp՞x˨"!+v=C r"tsQAyj*!aJrQ]~q87Ab6! ʡm Be:~_4Jx4Fl{U<"V`{]p$]yUNGarT.z6v^c'H_>(9Gm\E u;(mY x!MԹuZrffHwa-^z%º$!^q8tc-x✪9iT :Wlrd,'=/dÙyVuxcLN}aXH`:FlJv%%2s 7VZ;DxL$y/Dn M גP'VG&?a~\B, 6}0%k- [JPQXV/gsnѸ88HV3>aPbb]S*v sK-AA*"Ų[nBaDή)7h5Y`FGSMgӇu B!*]8{R.=!8=?ai+R=n O;.e]Wr _M2U7sWm~9P?QXȫTl8[o m%`'4aܵvCHHv|dV3Za&ot)AR!L#9m?TD%XmJ]AWnLj$M/S)s4c j s0 " RKm5Z,OU&I=n*}BW&Vwc$gQj!T?\Xq6)1pE-R\|{9nD9INit22GZj=U|WL?aHW=4ѯ-  4YO0 nHe0FL"rSIͨ)=auw$b4MU􀯭 }Ϥإ`տs%H)ȓ!|G)A qCVO4'J.gA#}Mzyo"+Ke֣ Ay3vbb7ȸӇHk֔g‚LW?h}a?r {(&Pt j;_'P \A]Up+5[wvgH 3-Ml$@8e%&y獵ȑܿǘc|>JM1b?OOfN1JPyϛssdӇqUNlE[tjt;)%O&wu!8:H*Vmr+@ۮ>K>pyu~_a݁F(Mm>b-ϕh` !>gj`2Uo0r@4Lum'(΢v}ioJB/<{a~z1 J >VT޶tiΠ#d}lH!-s s1nrIS)MWՃ-|{w <KB`eeLN7R4-.0(\(_QNc%z}l|2V(KA;W-.a]lж_ wX^Gwz%? lq |r9՗4Vz{x[V>9huGx1 w fܸ) NlQ⛆>z.ЅB6t-[ !Bgq4D NwMEA' ?֪cCIZDR uY( JVvm$,̡0<0)K)%qEiݳt㴡 - $BFOؖ.+J*X:89j(B4US䢤۠w$c&7ퟳ3:9@{T>Sevn] n+Z k\x\D!pY`5ҙ[HT؅5nUހ45Lyy5ƿRGh͎0 UcO"Bez7~_ pO̗^`?12NEwN:HY\VOS &ōvnG6lS3#*;q|\Y8iY:6?{1\rq2c@dԐKQ(쿍DuMSQ$|s!z#/0 (坨|~ȇpO![-W=Pu.ATJ zST12.4ԿVWC;CYm ^Pi.?bP+_,f3 sd}L/w#ei Tp5~!fiK_y"̩H Liȩ (Qe) sT/߼6lvGCGalEZmJռ3WMX'O* ?F('&Ya_0>ԯDٶ^\pIq-ekw^:U,k= u_ٽP(&}1 %b 6^Y;EKxH"k9uJ) %.l<+wm++f47kp RcH"bRհxī'fyt ?qLsբRZ꒭Nu?{MP2J^M W;1ՈdƍD}A-J=1ABBa<2U8Ik A)a (i*)#lT\S1)r`35[s ct8SfެT)p?^xrRe/Kq|d?/Ӻc^R,=Y1 -SnWwar  &pߣ&[eҰa)Uz1}ꭷ;QL:Li][5h;.dԧQs 2֖yC;i-9VC-c ;[&MHk Lc]em#.Pf(PRW ,CVZ[Li \BOk,bf3^tqR6Q@h78 I?6~a:rw?3 d-/ 葢cS,~ q ѷ`zp\1Q)v=?kZFBC5x(,7o7=-Pp҉X5PB=ܘc !\>ms=}_yQ"E@ %/l, -,0G=,8Lz{âe`9R鮟b$(Ŗs~RM0TШ@i2H\bfǡ7-uU2h&U%us(lm`Ic%iW)2Ԩ=k.b" *@'JCJUV"6&r{8 Llo1צx& my2@Kؼf߮ 9F-1 f>%8RMeA'Hܣ?Lz1jbWW坮@ݘ)9^(-Mz[[LP5{>f.٧ ]} S[GK#c3RT}aJp,q%AL?О'gZSzPd1$/EvUm3 #NeFuqX׋ N Sq)~m@_QkRpr57Rt,PBHڦX ̌9eQʿd@tMՌ♰}bx]0O B;ڻ4}>I-S̋PmrMqHfJvΊ/ۥA@Ed#P6X ǰ`cMl KɠxcrTvD.em32(r*컨Xq)Vv_T^5ODV#dFY/U1jU8'U.u~$ 0-bdG ãѱ2a8ރp4X0f (w얒 hWdE^嵶DmpF,&E)bcK)fRavY|5hCmzIt!}JMZ3@/- Ґ^/6=`1FAu pu3 WzQ6N͉JbPu8;kn ;J|+AB|q̣=VY)#J!!T޸ijd\tdu8VnG4_:Si2a<^0F ؠZdR!'҅`pi[*y6nV! u`&>黪%4C뇛EYP,Z3i#Ps`+A܋9@}/nV |`,Ao\<)u#j%ƛEz]"ͣ&O 稘sg<9:`eyNڢracJV%Z$WM 2h \H)yt7-Ԟ:~r*@Cpv5}7N({X<#Ii9椛QC+g<s9k&j$4lt40XM*AMMU8*0rR.jΞ8 og$G"_w75Y4DۆM3[79r|>KTj$jlmn2+'I reΕNz!qځD s܈ylc6$z 'Xnы/t:aE~7k.HoGfZ2F 0nEn:"Z+H.W~on7cAAumx~7+o ]U9ȴ!N!b)۲KNNPLΠaEvs܎K7[ݞf0)셎T~H56U*%ְk38R%m^zďU' XZr]ʣO}B;,0L$ ;e{2K^Q3Sa ݯHr`|Җv:|B8ĝ.o?vZ?U-gzL9tjXu܆lGc:C6ْIdÜ \hBTmv'!}qWAK&d`Kn^´< LyR+mO 3r=>GkCsͲCvcLfK~א.>s8~[lb `c!J9g[^apǯF^ޭ7^l1$2ΠT?P+*rlPꪋ[tx#tfF55"jp 4 SS큸5w$W=nyHqK8Ӑ )vw`I+K/֣ȥv ٗ;-f8zMk )T#~i}eC TEmo/TY(S +VQե%m hd[q4Q 5)oy+ 2,!yv-{S!\Xm kFE;ڈ2ut0{ ǡșN]xxTDCJ0t.qh:^: r%Frb99!w \X9+QIc.JjudpW|RBrcu7u6sPDxf u2SKNHxN#$d0kh=(?<˻4!$|.7䢸ٮXlWp@\5=F*O8_1e0L+\xtCYL96:Q6g:|.'! }|3MgK/9j0HIMr~bTo,/^!iJ/e3-T-Ǐ#axC1%jtr_ȈQR1Aʃ`юOSUl}lv4:"_IK^('LBv hMpj} 3: )' 5@+КsFD"$&l-Wo3޹p#if%MxͲmn'2F'y;{2,'#C{K0o+:/ƆVOZ~9rơGv1L,*ty"򔒘  'z_"7Cx[?u C i)?ŵv@àOo6\7;v!d: _ve x_ x b(w \$-EIsg7pLČc ]/tD^`F]H^pY5d+/DݰV12t\쏇Uw[ޫH~'mӲLU(W`G7 /8KB3zO('+RW6md8g5Jyld40܎BD\[4L,?Umt65WEw$ r0&ONד(H*$_Ec,jN'&}YQ8lG$# w񶫅mu! .g.,u\)6to1j!ND'K)ٲiҠm(dSa"si7 ]AW%vjtÑ 'vZlK9c+P[(b@ZD#ԯp0xRIhhR=X X&ޭ}CۇwUG>w&&. :#zʲvNо2$4!<΃ 늮EMeFxs^:T7t>S 5ExI}XUԓ;Yg#+Ot0L[[n!҈tI.á/epU ;Jj3?g^(dD+E UYPZ,n[n]U\z`^fJ<:ZC.?. $LRߒ{(t2RF#)#9|"k nא{B%Z$^ins̆'ȏ^lf eY qAfam:DZO.kEĢRMpd3/ZSR߂|cZYzX"ٱznc<~|񶔨l7Y? @![HHSJ;vޟZG<S\ 8{C^vEnN@S#]<[EA񜖻9͑NՊ?)!7xm'gKY@F ¨=)8A`޼YB:cSd0[dIJ^4tԪX&-D׬9}33|Rw/oDW_Bc={ÛW ˝auW;"RCUK\lZ@9vuŦdX7•ωb'[;4@Z" D I5 wC$"0\+(Tc`u&:;fB(Z6hڊ5-JE6:D`y \S쀕 ;]c =(}f[]_\v0tnMr4j3x<]/)?S9޳fg=n6 :_p}F&fWq>|ǿ~ ?nj@0'X1ĂY^JK6?m_w3LZ/y?B(=l8nGnhRvn(4kFa^RxAFN^)ÆɦPʈN1,[PXЀ˔j@N[dsd6Jg׸3F'6JWO]5) }ECCMȤXkcH6}4];p1-.ڶkφw餏rBO@#OD1C3m\&A{-uXj3X.${vc >?lbP2HS]Rxw": KBv6'^9 x HA5`9fItCJޢKBY.qwߖ !:liBC[W$MED!(clo'ߔJ܊ h&&+k3< d&y>`!<89>à&D֗p6&ȥ^ > .[^AoOlrdW58b.O>Ӣ݊Jb+;IZMA3 eqBa6kWoC0$E)t䅿l|kp% [FETuffP >ιe;]tiV v׭E.NN]$K94_q_,6XL?.XHMT,׷g-rfTDڴ&ǒ͇) SH&hW R8E6޽6Wr!k,N\ {Kn`:EW6`'x,џi [UjK8k,p2`_|pIRvkof1->Y: jc2n0B{*Ho:dsŬ>:nѯ*9:LsP+oTܬ糡`Ts<#ʠ8_"+o'$4W'P H#J~M]C0Wgބeqqbe\*@/ԁtvNYptW:.DjV7 J ȈGE۾4]]8؏9jWSTa#@i]Z׹@2-jIAGkMp˃Y2[<:<ܑN|Gp&äqJon)ʽg'GcDD9ԣ7֖ f\kwJ]?3wꌥ~rc vNppBaa[GZyB[Yej{%mb1O@𹱖>_U ]pShQS4Z}͛Q&Ej-ah}Ɠf^; ˯3~RM \%y,ܧ~cAB[ /~Mr"|ň)S9;\_ We0JrZ)j?R vr.7՘> ɳg6j8}c_H1?3yfP\*3##@ +mQɠpx1SL4(LQ/o681uߺ6Oxj84Lp AFnjM/5XD^Ko" G5r3ҽ/bwnI$RP|YpPT ChUרIuR\>~+uU}g>򾄣hMYb]_ 1#i__WH@mL0Qq7NؠqG;?NC`jV(]۫N.~P=>/CŬURfIgR_?̧rf4~ K1)ε'ӫjyDWM'It܋i]Ïg>:p{qr Tk8o.%)IyVSSۃCh9XB;|ubi^2(̼=:1 U*B&(!tpFOI/و b5=OGQZ{1hҧ Ցs[MRЉTwGGv%YpsІT/V|z.u52p I g,Ø-ȑ1me:؏hx ^AQ{μ2; ov;g$ *0g?|p勈wJefͧ/)Q'g5!5S:ƎlO%j{yћWknLa2y_k׳VWHc8CnQq(B@HUYJ٧_ySE{O{Zb֙1h2tv5S51CceQY$2Ks;,/mibcz8-PF`;;$ ֩@R0|]m1|ȷs*$Ʀr~(׷WEp۔-Qy 1.eGUm/M[p&k@ĹUxZfBP \OaNZ f#"|S2[F}=Lj[NMKt0”Ƹ #v \:<yKoNƴ͛ie`q̪'|K-Md6!K7(ɼ5AOpA~ GMs6̳K޷<E̎]A:wG:9[@:l[y 4uE)4Yi(脿.mٺyxipI }K`7 G*;i.uv)K~i & $+F=כ,őp^QHs&4LWH>TTX"u2dVf9&oi67Nq֪|:Cnr`x3E(bk]G=k,9)OEjJcc_\8 sgNbSaP/&mmjUwġ&{lR#z -"]$0@*_nbOQKnҁ2<f39؊6( nY#z0qc.mm#և)WoZbLҢʃZӂFN4֮ ma(n^'W;uXeRl,ξ>0OZLF#2"WYFR% |/qZ Ӽ!hBmTnEբEK@Zk)6xp#>m؟e[,4k@s zaK뇛X3o)߅ʚqV3v#bdm<ǂ `f@z #ib<@(W̙^k,z*_]GK>28!ݹ0 ݚݝ= cH{9!ƜUИ尅 r>6m2l$w଍-JxjSԫy9V:(:h@lDֻ\K٫?H,<֗K/bCAGoHnK#sTcfEd SԸr)ZĪ/0؉0 ^yWk_X03i$NRei]*{6/SݚUAodwz\űRh}"{RGI;C\?ޓ1ӌZzzϭ"zlwخ o_ꐬҤL;W'IQҼb܏L¨TKFc")6͆Қ%A!pCIBV>-"oH7#F)+Y>ͯ[;d`PN ) HS n V*+TهQpb-]4=F6_ 聢Ri^Jì^%I{TM)@Թ*c$Ý]\C;tÝ )ܡ-d|%xi3fyhLh̃*;[hհҙ#$r8pG .><[E~Id9U@[(.FXֺiA>W2M3T%%9>dbcwÅX}zzE"]Pq킔98~ E0{5 q(~F9z"j,l.lTzlKW(ĤnX~GPFcm>k݄keBN֡bR0 gA]c:e(dz]Wn"U, (G.K os3>Vm]IFQ8QetھyEpZ$O3_Bljw1Ag.xȁ3VxKU>R#6>rd Ht0*<{|!N|ɏ)6ŗ1*n5ާaNbcv# }彠&zxa?`&(P7+>$Jv=;ߧ)h "jf FC/GҘsl[7jPs7lR7M2cO'Q|t #[̙7o;rl[CoY^Oɗ1uUMj쒉kQ0 tc <2}N]Jh䪟vh/$7J8+XP!%>_&ؠҟA[9))Jtm?'x2zm^#yUqTe%J1粮BX_,9F"w(M_c`Ǜl**v[@7ב8N煦,uF߯fᤚ|axG/k0rD[ChK# @q#+iK{LbcN dP>VJ$y) JJ,KeAnD1=L |dU5|C$=Zw!HC8"=9)${Yk.`M}/3·QZƦ(kߖ'*u_7PR9,Ԏ>B.Z`a2Q}_4cy 2aA4bػD7,=bI>5},- v4дr "uRz+RmB0a|YXEהAMn^_xYtamRRY΀)Ѡl"PztV1  l#r,'hd/4䗶aj液cplG*w G\$1ґ(͐zX8`O5ƮI"RWk ]=r/o)FE@3JEQ6sn4#T`+dYgփ&[z rɞNwD -7듹dž\><چfK8P&)J}+M.{9H¾oZWKA*~u= ^ [@59½Q׌WN.2'`&T$GR@}7/SDzI EPJ0aE{4i>v _/YܐE nT,P>א%'C3ΰG@ؑGEw@ w_  FC&;"@SHx|nÆ"PaB>EgBWT8/+-( [ĖHa,m<{{y*jo:F~bS&+i`8{ֻ0ig<落|U/U`1 q=qH8<.OC<b%,QtpfPo?.̱T5A`5H8)v3X*'8mTq `nwf%W(m:*DI-+/p=y:7v U-rN1OOaBuS0`8Ԅ󟄴c*uYjrd9-+Bx-'voH?~q#i3W8tZ:R j,V~h/iۻ?C_մarXTm[A0| Ye&Pqc48a@Vw[}1|}!WU<MT~oPb͵S޴K:) 5fO Bds:2_t5n}G Y"Ǣne:h=jW'mQO:ta1f+ЌGo_FCxV*gk 2함$m5LR:Q+Vye H,uzqC/Do~;1)h61PҺӈ ߟ [ 7mlibcN~ӦRna#!SHӢnKMt;]_\&AZ d:H:}{N3PeX}.i3Y:NQ_4+ D&Ćn Gx)kIlɊyO%~kD#ޘˤ"ABHU+ReQ;IK.s$|+2(XFl9iA-4c#'*A~䄓7ۭ2NOn !4g\ԇI!閊9+_N J F`) }ach1o'%~dzb%ďL#"Ȭ͔=ґ67stU#R91B97:黈׍8g_\6;/߰<ݞ"}O͛m_}ˤ^JvF̡b$ftZ#4xҼۖ9gۡޑ8AbiwLNahhd ,VT]=XyJc(F*u 3٪z쪲(y_<_L#!/&4 .n Smn" $]\ĆzZ;E:JfRS<ږ.!Õ go7|@T3Ī f8N98ϏIsXJ< YyGZKeKՉPi9@C$=tx_OZwm'.h? Ubv⌁_lSWAL':/K gzxz%:UهX v5 ]CR3o Vm_(l.l~$A6ĭ.5t23hnǍ yVDlT?S8mR/V7m8;N(s;oÑ+0,(~&ˎ("ރ)ٯ:]܃ޟs5Ğ3ѱ,T"m7n' 4 ѓq}x<,$^HZɆ{i~=ݔ|d6“Rh9ͨ3"WVX u VН?6F83UH[K۞p&&F?=3H&So)3#4- FcqintŽ?X.Xw{_5f#M]TZnTƼ FEԖrb= 7eTGq{Bbhz mmE9iB<K[{%o|=O"83o\+]lDm{쐫$\DT4$L0n!3/G 9nl0jaM^j.};9L PsZ9ʈ8uJbxD]vaLO-^gQ Gt4AU7'Xsi.r 6 0&˧KH&>(`~@qgseRo2BJ%K\;B(t4zaґt(ղhoSa$X L%'=|lG=_ѱ ZDY;;HƂc35p\ ,o^ݔ݆ߞ|NOX tEw55LURii_˔=`S:zIIHP! X cYp4Z\̞ +%"/9SX _ qZ(ggIj-v1KBqKُ쯖R1 {Bᕺ|YI EFbK> Wk ^"Xך2f¤< SgUPZWZw^ jI;Pjz&}{ /x_z Sq%{*ƹd\΍ok(.ˍ}bwR5MX5d#ݨKca"M[{֡&TL8*Jl] t BbtocT> $nE%;} ${ 3 8O: }9ފ)PKbvX OHZ[_z̟UW5}M]Oo!  GO񄌁DVF 9&{ݚ(QXOҷ?7R-2--$Q?-(KYʈyn~Kivr @qi4\Õ-!z S͙CG@:؀'9>1'J0̟a ˛/?1#c7₹xRzݜY!¸ju5ڨl%dl1J^R4WzRs%Ɗr\_Pt'3ex(̫G_fk$x>]`xFwEpSnكcfz5w؏б~P#ȩ75K\:O 賐Y524w3?i<. %sxIov~Ht)<Ҡ4ts)? *|[,JU5Y'!xҪ/* ixVm &1bҊkeK2 = n7gxc=rCT<|q1轍#|A)MF ~PDŽa}{^2XnI֜L nikZd` ⽁ܾ/,i( ^y>a0BhCS| `V[[qiksBW6W\@6~SlwQyJH( $m;kq1CK|F6 w "vt{O/vWcxǖ+-[7${[@ XͭTlٴkN<DUpuzfۂН7t-['έ\,?̛lޕ#/WHi DGݱ Im5p˳*Q,jDqw'ɚ_d>e7A͘0[ ssMO-Ԧ] pO1Ǵq^aPdžMi9Id{KO= a.t~iν>jCD+*Cm:@-2؝yC=QiE[Pl&ʡ?b@hU %sնhL7_N-C,GTЖYmo[vbszD, U#iW-3ؚl~Zt/J&PO;~Is\mfm3^I]݀ Ď"Le~ED4wBP@'jfeyǶE^97![b=JY`1|g N=i0Z[ƈ@ru3 g#cO4RD!$vQPR*_šlP0h# ~iOMYV:z<n@rSGSgAKĻ}{tB'˥(c U TI֧y"[0|s[CLxg"hRʓg-d}Ikn xri;kgH)WnD瘶t:ֹ8 \>uR^Q7(p۷\[~ɚw)}XljgL/?`$yn7n7qHm ΪӃ.x=؃?ӑYY5H\܇ D IVȫVcP6E;Q;_j4iD-[ld+ޠQLs9 Ww_C*I i[L"mYǂH hlC![7 j헑yJwEnDⰼ2EȖ1__/-"vۙH[_/$xp\Eĭ6 ޙ~yAh uLZY3]4<<'6v\[5j^FWOGA(H#'7]"=vs5["zIo]O(6<xUH4'3S tB7J/k$%C¸Bbr蜇 fl SaXCu6kX `_%x'X>Y+%xS1 9JACҵW۲_R&y!*_*d6Ove郬v'Èsf"(oJ);~Q6m %?`rЛbI%_ ?>p$:T7C4!Y2W(!%*&/a%0+%gcI)CҐ id*5| b,tѿЏR;=/#zF"~2 ×xH VLc}o'$UG++呪0c\Pt aK%mKћ]{V7q~pq:h8Z< 9)N:.q:ȊP̍k;fPV뇮uL&jVbx)$%[^$L3bX[U !fw{mD@γtk ' b]Y) @ Oscj&]j) 6Al7FoKΈ2 h"NNM}Ónҧ+;sdf yE/By:1T 2LP>gX2`\/eZr&TܖtS8i#a:9FE߼=geB*wޣӐAmXpS*3b 0l5/PnqwAQK=GpEkI]Y \Ŋ# v?-iIvVk;LԚyOi͸cw.3lxi^[_k&DRr\s>5Քc"uIۿ48Ϩ94l{ze3M QU"sϩ42%'aIuÔ:ůLByp _O?}j¾\> FxXMEP S7a\*.3ߚ|q*.*KѯgoG)j[|R,kLMcc r츝9"po6hߤI >}sGЍ.uc!{qVuD.21t}TLe2_NF58w:C2 9Yf mgrRߧ?=H\JttFrPrЩQ$' hɋc]Αm bMr7(qp)sNXokP|xi]@vLPP X.@֤qqEJ}$Ŀչlna*)6׺jcgʀMm.9H8W]|b@B%"P:M'lF摞eļLP;3|kWj48}Z\u-xbc )' -{;^ۊVː wB7pi9RG4ĩ/5/!YL;@$ڠW1"|5.ʯ|72H7:mtj.d=,Y)BiJSwiR{CVᲓ:&5F7UwjG%M{%E|m G R}]vՠe-.Grj3:) JҦn 䱃打H;O"pr#},c`1c@KB>؄-C5Y_s|~7;SNR7XkR9S:"l{xz7M[nQ(šFadZJ]gHM:Dėg}ZuP\D,3_}1*- nH9Rx+̯"nrڐ57 iRNYA3O!2]@tkȮg3HLHM++4!UޒV e@g0TiXNQ%K@Q<KEuq8ᢶ\c$qњj,%9M\ͣeql3X ,!j]~WeEoжyw5r)!fb~O!`@aӆ1$YP<388fH=Y*.=I4b#pR,Hi{m T{"Rv¡{{ 0 q17OVY # 0It[%efAu8#$}Y&em˜b+h?qPNkd@\*"UUZ 45L==%#B ҷxշ:e@CVvRg "dAyh!Uz4 O}LjVGCκ$O h7S^2!/g6~T֡Ϻ@)_p@T!Ț5iE$q$ J2H6k:SbD3+[ܡʣd$g9Oe 8U$QKArp_,?6X"<z\$Lyx~|t!([KHӐcM דaȓdvS~y@F`{<KbRoFWClONF=#5jڳ$F>r6PU`g<'1k7E Ix݀u6?["ӵMa4&rsOsNRBJIXsةۅ2@A# J~@vrb!1(о>ؤ|Joٷ vR0}6tSC8})JE*VͨhWN\8'ᒚ̝ A\<"Nөzߛ`NI6%[j?=G}F͍tN'| A[YXVk/uܨ.G2e:Udp>d^tB(^t/U7,QV+բtu*FF(Yͅ\V/.DAi7+"7f}'ua7V ]:˲؄ε22XEKq8q˄2stq0rwD%˦bS-:,[c8WEB9b/K )l7s[$s}K^o 'BCAvs2' o]iE}u&iʗ׃= 2z P'u,?,r|ERb(I>8U:no[.z ,W:2R5Z-N mlШ[6]Ѷ_죦%hm'F\^Ix,PŅ*̅|܇{8p ;fvpI#>(nDx dBJTKj 2z{ aH)UR>8wVJ?7;$/*PwSbq[Z:@R;b(KrIEGZ;}O{Y9%M/ 2CU{1Bzq $@L+yׯ;xx\ͼL;I sl@ӣPQs{\dA<}I݇ҁ׀(s(zLEzF6 z I~L%?'ȶ4ݎO:%T2tV= 4]LZ_G0;ʩ3q/o&uc5 }ohZ6D`4D5~8⃛e 6 MJn?Š [ \nآ2ƟbTDL4M_ıцi`@>j7v pkFFZGXRk*,F͊y~294] n6\m*V/ChmXϭAӰ0>,bu8=&n1soJfFLT,NP=2HuGbLw* %VVDcz<%S Os1=RpZW_'qs]Yj$0`]PSIt*)^=dQ/ W!n Aűj#JPc]k;a3pջNbE@_ђ(YLQk 2@$~ C@£r;B Q"Iܟ o?Tˀ0Iͼ-~O(@[Aq(  gͳO{asvtMe먦/Z>&9t34`dAv MXCEcM[2(TvD袁aqx0u?кPr1IlF!4y ?4$Íf6<O-SbP(kP6k9ӑq< ISl2>X}5XHr6 j6H}݌GcC{M )QYo-6scb0 􁭴io:"Pm6m!.E  ѳ;XSVb&}m,Ҽ=)s*۝~"[aj,]![U=nu F' 6E@b#F8;\ J/+K%^1EHq+{ _CpAr`w[j9yg xkBBҫ6:ߟaRf@dfn\~P * ى\Օ!zU .corZIa ?qd-A2s;s\:\W#t5ΧԈǁ bOb#o/&n* QJ`ёgY'n5+"|IkJ[kU jZH/*yKKYtա_B(g JnJ M=UP\ļ@#c'zȟ ^6O ~Rd3?ډ v G aiؑ M~|9@)Bm1^}d |݇~ F[[Ǵ#=F+a&YD>茋}J>5M6ZZ޿ȮA c/?P~VI !w..LMbI۾[,|t/fz"J\fQn+$%KuDj\T=Ty0'-@gs%Lq- )'cbhߜȋ\꿚ӷ`;WHfm38ej5%-H L pMnU/`i=Y|5E/c}kvx|oqb\Xڿ9W>e9$n(ހ8bz[P_yN@epKQ=e̐||} 8ux׾GGfȢR2r vC1>l+B:({Y:al51p<MNbAGQ`7T.PVو#tڮޤ- jF 0ig1iV9gFp(xtOklQ$24jgͬT=5_{H? ܬ{fЬIL{q"GZt ZjiҠXc""01K"N[*r8U6/HvE0̻J&GX  8LsJ3E`I/Csᖴ!醄/;_r"0W vAߙouL%ׂnDZB>[:o-ި׋HEGh9?|srJ@Hej*WFw X"R%4g0Rx)>VOs`ѿ>iG#w0o"zyuS0zKO+uEэH :u/gɖ`Wq,tyr+ZNz\9W9Yg%~cJi.}U\-9A+q(gǫ8?G#Tg0Jmw@vB(J/R@:/ϛDp^Moh(|Slpm(JCRq_ì._ޜcu\*=lUja٤AiuChV7{uUiylhut/PPAcɅ/Y2fyp.¤f@l !5v5%r%M4 VAx.z#s0r:5(>f bd+2S!O1)Q&)=j4ˋ43^J"%#JQjU(~%rYK95Sw80cC6`RMwGm{'!0.{Oshrۀ*Եio$>3O-]7(-AB>, 0TpG2Qo[b ΍ȘJ7iR(]GBGw$2Ae]x|˱QVЗpv<'ZĿݦjnܰ9:\z d=M==Sj+X3VKf١!_DgvOJZ9B'JQ~Ҡ2<Tʒ(2NyFpqN뉐z +̜fkHkTFm@ Mc nc̽}CsCWXV46-J}zy`KӢSr\9Xy<2ꠓTI6 =`JE3TJʺh%1gHwrt[!yq>xí ҿT_04E@moKD]3wgS l{O/%1P>>ĉ_w:t&>^J-k,!Jˆa_u̲gUڅ8=wӦVhŌ,C=kaSY`k1(+4<U7jM݅[GbvB=`;BVtq_vkD=,y106hvpѩ5ŵAWOEωbi(DA+{=`vFYkP-i r1G=k5wCqAYd4OVxѪ NOV>3p/`g%M1"QEYSqە)>2DDsuDߡm7o5"84 Z,!Kz7u' $ƒM۔X&yg:/z9Z)p%ir_r9iZWh{o"Dʰ_y\z\,RgAJPV3$mчy'(Ge#;Ŏ0iک'tgՎ\W/Q\HƄoSǫ &>e~]3D~Ia9*Fd2yDjZ{EekpK̙| }H^z'].ӽgdZddRs1eg퐩kr(H~}7尪r">3KS1q7bg2+%M@WhĨl?TW$I<P+p-ym [GR6О>%BOLMiܙeIfdm'Q*sZ=mS+ HrEYA:éCH arL&#ߕ?+,'+Sp<О,ڜX:`nk_Y/cE[Yx-@\(EUO$3GcRS?:S4ACiL-߄1vߤfM~+[ ޏ&'Xgk=çУwwfT7 >b W"svnqgQrjZK{?t.Oy }+4!}C~Ó>E)WkA[ta 4ߗ(ܡ;ȤW#1HNaJC695GIi91+f˕LM`uj*Q9gJ67 C÷oSAoЬMG=Tt|C#p$g":\& ΍cM{w'1N(PA!O"5U_e]ZG*LM]QֈI8vP\MfmCd>OcT7- ,uNE59_pPC*ӄ59/50TM}͚%Eh_!5TTdpF7@RGWꚼ®Y|7E,oՊ*M0XK>a /4pӐMySU3憉j T6;2Kk;IORsW1#?]\D.$-5ӄ`\,`)Jx8?haPD!~P8j`2M23itb3n<~і#0j<3L ?+:6,;tBNCGO A.¦MU磗fWh"aZaAQOV :`cwU("|*3N0 xR%%c\LbY )Vٴr 3C  1b^>+BvR#ǛFYXl3 o۫JĪw&PC hsm8 3Pl(T8 %waKj6*ɣ7 Ƀ><4*[c]p8g 䦘a0 Z }[dQq$k7?nO,IfHO$ئhAgL]Ɨ5 '>BIXdrdܐUi)i߆nˀW{I5␛ɡs6q6QK|GKiZ`/a$l08^ vN<8Q$cvXs%QJwq7x51$#1ThQYhs}#FZO\L' #H1Q 0Xa#1ujWC.PN,W/!Ў"OgQ\ 7 4W.zBp{GAu]H4%jcb[yW@uhI|}}gH%25vҭ D8^3'Vg(Ml0bGJ *4 i- uB@]BD_-"Q4}zS$qëýEW~ģ|3 }ɪaeʍ"D~ʕ0YG9`!Tzy5itb2鞽Vz%+w!6Ԍf{*Lkp~?."jq0T[t X^m` 4h%i#OP .093!;eJ򙛗|Ƅ%[r<Z՜]mW+{f0^v 6^aqu\=Pԭ K<ӬeZ%t l/dK; kNlSЯC(F90V+h82ŗ6`RkЌQo Z6e(zvRoӟNzC5 VP"5#]mdw L2΀2cnwr-VZC ;DhX.J q >`Rrk8?V R)Խ&TqapQ8(l88{)v2k4 4=AVEQ59& ǁLJ5,+ ŗ{RaY Mz vk.f%ڊ.,0+0Q9JڕQ mѶ3^'.`FH ]j3å^VY^jF$Uh&eH syE_9i E&l|M6?YPrckYaN_M|Ѱ"'<DKFU^EDioTM%P{VmaLt=I{FDKm+zǂW )ll' @tRIW퍴Ez;L 8)x2l;8g{>Q5oL`*BR;+Av eQ2*z†i1Fա>#(d[B_ȹ+۬VgRJ IܽiB(|:'#>{@gS!x<6Rށor<>Ve+("Qs=ŷ7Tfs&:*ԿK߷ԩ[rt_8I˴Y?8GҘ!841MZxL1V2K*$P{q5I`J'3 }zF?dO>TKFanڅ,Z նwOC&9[`q NO6-jB.[IOty )0:AAm`憭^ X4[+t%nmsa3X?ĉi \oxZ26;Xd'z.;WU3}!6r'9 'l0!42]igՌWvI6}jÑTJ[]yf(1̀\ e l_E>q/(f_T6; GrIlt1mwʁrqh?^&h"q1DK;fvO'd -tE CV4Իx^e"fNÚCe좉boK8$+Cf2]ӱGxC,Mg&"UDfʜRsbǶ3.'a~Bޟhyّ%R/˩3SFb2Fˬ7b'AC\wjK:))vs*nYzSEZ2k\۷ZljP72~$*㋤P,fgA+ihVI͠a|{7Dw*Gl K12[`fn*Iߨ7Ag"9 q{N[;Y]A$j _wR8"iqޕW'n'Xfs îxs4()PoGЁMnLڪO{U-B6|zKA\ZVY\x>/l_>FbA +y29,\*? W)k919X y6< ?ȥ֓:; j\D-!fjay1fRf FooǖH[,>5eƽ:._Bq_z=tf8|^ EӀt{D(}'3B𦈢 ]o~P==Ĉ1|nysɞed=RB'=@ڧrD=Ǐoc18wd -TwO-B&oEL*cpG8/̟Y 5WxJmLw*ʼ~yA, IEzPC|<ӉӌY7UHJ<;5iPMP~;J 1 KdVA(K./777[F[f~*eE쾜 q99/R "G1+piFc&W,a?%_jnʿuS]sяZHX;V1 esRlC,ZglC)n{:2sDo4f;~:VM6"ufn vs4>!.mVpKi:͈H3® w{Dxܚ!H?OCKȧ8Nf.I+*r#FQ?́J} Gw.Gw&o5/t~-wwQdQ#}?]h x렸|y yQw{ҜD02c3iM27C݄VI(=zi-3.KP˼a*.e+ Ƒ `!NFՕ9쏒 |,#?9!s=է"$6,RPy#QdV_扠)@5Ns}0t [-%S ׁKfUndteq!W*iSKyl]e4dRlť\@/Nn$P |̄hTK+N+ {uEv_CQ+#a]eNyx K Ld?kQ?,O^tJ8VBS t!1RyO%"]| j")ojJܦ@%Z<]sXW;+F.]a l0!v>k:`LOۍx,b[L70,@*k&P|`ZihQ3I9yU'K' n߸'T4cI00bٙe~(+0Lﳃ#kQiCwHJhL(#NWb$C.1n6/| # rN{|O3!'LfJ[Z j:{k a 0e)UkW!]ђ Ljٟ\nNu8$g"1@0 #}QhvScʻJPcRtu ܬv-!ZRvCo5=6B 3=ҺHtշ|-H|P~F% spq avmX`c4\!5mv,?v߫ΫOQXy%:tW?kAbك,Z«N;^.̇km\Cf2@ᣯW(3fCEf0ԅh1] 0X ۩0oHJ#a \ >) qZ%_M X}w6cق^MPK<-sWXHl\j/ i}ZHv# }k31i@wzLf]Q+7{A;)iߦۢ< +y˜.ϴ/"&E zHŃ|py| +QDt).'ο򬡄DWNܺ[ӬYkeKlaυwdO!5%€S.`+-?i>+.8. `[d꿛+Vh;4`BY>G3Zm C2yvOMLZџ?WU$R䕥FtQDžznZ!" '>c[Rd&ږW$灚r- yvKsl k1n`֣҃8˼pV I0^]#vNgٛ)Ѽ `Z`.׀pxuS}O) 5a|}؃+Z:o6!ٴ 4Jql/uG<ӉFsDn[DmU ˾Bw/(X.T6Y͔f13`RdG2as1$?\7O7UEނlLtlO架s ~[{@ɼR rʇy#"8B:cS"%l,1H$⚈yY C c#6[SҳNݗo ݗ5NJgiUqi.XO[J_]^wD}<$-/@E~Km|1|pk- FCV"J7 g? $###@n~j pˠZAm (e~ `L >rKE>ﭔ:vrf ]t Gv  UZH 7[#A =Jq?\ѿxgQҼoe[t zYe%N=2Q-7p Tˊtq{IIԛ#> $BXV W,O%c,(Qk? _\+\j縂=Z]^xt99CDWNӽ V<}β=,f|58e&ОcpWdN OM+[L:][Vl'?F[\H+UF [zˠx)lΤW}|?Pn{'Mh7`C[ulYEK%lB ,@OA>Ϩ{&%?H z<]@tZ&xxe˗AXI&ziC9TGq䩇 'a+[y58a |ivl񢒡[!si6Qm߰/Ű4)y/,t7A|cEKr)S%§}h~ 'Ģ"/=_>-љqqk+u[9M$`] p4\х|7Êk;;7EZjzcO|tiiCF *%>iv`L0fЋVc@M!80ĉ0skA@z^c :_wAZYtTsoB OCUF-ʪ(*Etax.nH 9ȜVp~۳p!1J" [T`؛ y䐑n267\ol1BI\!'G(` Ϙ C'R=e ܹǚ ij!&ӡ׫Z#H{$͵#MC0EJ>19l^)[pn9/* 7;# 2/%u}n4 ym,C O*It&Qqv"Į佫)8u'SB/2|G~v/8~83v-P^2& s "e bHw@/T WLW$ ֋RBz3&Q & IM)u uȑʼnGC,dt޺H`KqЍZYۊ%$?]߻پFőq:u4dV7D411@h$/5Yy+;O^$<Udف Yq!(~o{?ښ~ԋ Im5NŒugJkp|֩9;KUXu<(H[75II?q!QOELP4$ivBg5ެy[ar8@5pB?l(_[# u,fVx(wQb5.:?ǧfa n!MZp&:ǘQ \H (a誦j*aq&]3n7kumKt&2~J3u(&:x@}Px[s.̅T7vNRN܂Y#? gFM;h_-1jBdț>sasѠzfuц=R o#yd Ui>Y0rG5N_a*tߟį@oB`ʗ D#xhֱeQW5"bPtdR!u*CY{#9 kϙ "ihGŻ4K5esYswwV<ܟȎFag$Uj֭5#CLTp[?)yϣ}[pR9. ,PK,Q@t=27(wq)=DYwf܈Z{],v3pL>7=̾`@L mAmڃե9!K2sI k!5Qh$7$G< _<=䯉=58 R!C1`YBdFvC 1ދ>-S4.CNc]#QLw ~7o} gr?78} m|k~z A$!*y1Sud;/`'ł xۄC_޴pKsH?I {&FhC&fȰaXy{t z;NQ͌"I&j.tT [FBa%n/_KA8_fabP Tm4U*P =+H%4i} FU2K0:qrߓzkwX(QZ(hɩˀwjXpw]F 8U}iq2 vɿbe.V/rg(ae)(xLOuo2@m[ C/q>atmfu!ivWIUNKeɩ 6鎀SY-)"jإ.|HLGmz kinU Q-yЉcDkTL]UB~cI=O;ӎ>f.Kl1 ѦOGAbSTXARGQI'΂4fE7INz cD_"o>JvL}pi6̦kH@f{ÿ G",WG#aN02П}g.N+y-ao,,~yٝrS*ᥧՏSL&-:J'OgsЕ:́б8x 2V:)H!cM3-I- fLXm@;0G'J|IKG6c.h<5Nݒ9 뷽", ޥ8{VʝcYY .Byjs!H yJp3FK unEr ng OwAg󍛿{+@W0$%skOR<?ˊ\0 &Wf֦s$e?*0e"^yZ+cjj,oܸ%ve)ڮ'~#9>ڈBDe*hluNP`fNҁGqv, O ZSXlŠ Am6XO@9_eyopa'"ӱ@+ѵdO$yFBh9o|HHB# ok:K#h1i[ehY'b*@xɢq7h G դ ֔yi.ٜGɞh||Ij{vEGmuR=5#,EAıWSZU1?<yjz톳4Ia6(YRYP %0D bt7TK :ɮ[01t DN8{NSS KlAGCd&-ppMKɐs^%xKںM9GfQ1~gy*Ga"K!s sWx .hU<ܶ1B AR$4Ry5j>RVЃ҄- +2YpFPHbx%TfhD+i(Ho+CCୗ<0~e"uFDc ,ǁ rU-dUR|[׻lq;ډ +p&ChM2Ԇ` 5S^>sbϒvC!ͫ&n+#) "qAsǥ< WԦBUk <2O\aro9vI{Q|`%օ|uIߍQ1lϒp8 {A{qDO Vr1JsBv2vm_E A;`T,;2I``ǴnFqd?@ cOlFLZWl]S{  ^[kw~臼'V5*}芙3@[?:Umtm:JbwW#d0)9U-ؤF;[uzVK<@nbSW椦c+9(^֊A B3Da}B D%:'ò\xWZ,dș7을 FmA(H̶{,R+JisriI ᕸ r gws+^X9g~MgY+ =xlĝr~} r `}^IRca-ђ WCbb dˌ gBёVt~\#Y?m̚848,\RLR g~3MߴJ{P}#2Jf w\|~d]p@~_xjDCdJMHrd0vM>.8];Iy}m}vP퐍^B)o^']EI +!] 7s|M$)WQCaR?Ie|xM1H;fDqfZϟKxmKLf΍d~y)HK Q> x|f" .h"q!}򠫒Yį '6qbo5%R;\ IXf|&Db7p2;b|}mBG+0N 3 [ImpbC;?Ody.AB4K&B>FAk^QOnpL}s͉J~Әrm×L u;Y~=.ոRZ [~(Ԛ wiFdǷӽa ,9P@}, E O2AFP5켫LxnŘp=z$LDž9AVЧ/G>C+ hMIH'ESgG:f&N|7rP~he+E2W>G ټHXܾc1 {Yx2h6iA "֋V mۍ:(qh;f{nR*ïBYӚ^:{ bO9;?LLVoBEs//i)De@"%W@$,-]}zr?*O "^7 OSh8 dyI*rہȂjAS14V-䂭Csu-c3r7 xCrqeRr 5H.Uֻ}h a<͏K3ݿ?>%.qv P_b\kЕUOjta.B3"V-zfg_8RILaf!R>ѳޯ3]< ]̽\CN6AO08T+g Թ?9h;k2p'7$3sbdet2R?lZձE*,kKE!B0;4\Ulbr" pjU͓fF/cf{H_5eXfY(XZwBtg2-4Dv?ꯧT8旛\s(M={XƆU[v]nPnߺ;{`Ԍ:𝬋u#aT#L,0oQ(>KN?,}mUjǫ}]f\US>o {4%]C26Mlus0́y\\{O3m;jǙ 4C5wBȶ$8qUy9nVaQfʞvJ>@!ԉg@[W9<怇=9f(jądfF#+ p\> |(DpCsnLj+qr @_ѵJl>gk֙g\i Z{5 3vm4(Hivの=:{0Eq|s$XhzN%"cԝc3"^ZJi)H15dx' g!=R_: @zf v*>vo!Uݵ|t>lyc=WQ %G h")}uj3dIFFIUa2W%#/ҝCw>~u]>Ǔހ׉dUojp5 &!\%)|K,16\.*CԗKo6-׹5C#ޡ M]y7wchNAO@;8y4^V^+H ۔fݸ-L{Mil?:\0 Xej@w&^9-9 ZoEGSgJ-G΁S|: Er1͍T^5_Si5Vc7ڧf *(S VI.B*nWUpdB[SMޏ2s}B)4-|% QCtTL؇L]8WCOOHɋ#x aY/wsZ5q4@gpPc1I*t,0EQ&FjK@mVWrlAp՛K`%g&SEҾn#TR.b"k>;˖=Rף\膳^Nq[ RVF6vÞI{1TɏVID~6JS85<,ItyEژ ^$\$jތ 6Ȇqpz;  =ڼ DT,[,u}snqt F4&53-bt[*|s/} iȼ,z"2؇Czr ߫_Zog.+Ǘ|Ox{Y'M7LN,MGqKOsg--J=29Hh9?ZvlNnUŒ zפ0q=^z7cPD9fbc'}ZGJi n=4]d.8߳A4[0`b܏FR2%NǦ;^gt0'rvSjѕtQB T褣f M綏~8 V%\i5[`1$So43k;rx9pR#[7~ ȿ4D6h3ZkCl09% 5@b я_0W ۩ `:TOYQr.{W>czK\d7| uPBo{2dCZzȕ1{U?DiXS-(<TVa ;#yq>  \t!cY HVFAL 0}+%JlɧlթzM*Y+_'Uo5ƼWJ8 1, B-O"B0Ԕ*]#78{/zK fe&,ͺrtz mopIs M~ofJ+|s1oZS~|1,Xv ʪl{P6؂d&臭:}i& y]o8A~nV;_+_~o_+э"%y>僟@52 ltG3nBK3,o_)HiSi2_b}?R6 xolܼ>Iii6* Κۇgrr` % WR},sL'&0qMc:%BL(O\fHRVYU$Mc{컘нbzzբw.tOS't![j1ZhQ&俎U]ф#Eq\bSnIo4LjǷ"sT 'aE򕸪*\ 1lL*ipep_sLxofիZ1*mv9.Rs"Oj`:'.V5SYtj6PRcrV])΅ƈŗVD6p@͡!革aB=9Qt9ofdF'0㫟UP50eW/d{@栧p֘:#ƏR,Ё*e3483~AuB@JbwL |m.s#poaPpx_^iy*Z+5DY#fY?t5Nyc\>k xMAs?t!ZiqB#:H跇 J\6GPU`fր- v_9*8nt|b9zSl.8)'`F]6Mo)MA=ZjVX́Lr)5qu Q9~>|ziEa]C0qX {{ 9b$C&'7l,[J2jJTU3M  '.09aswU#.Zmu lY9M2 v5Eu3dcvCQk{ _KѸB_-+CB$kƣ5>ГV{:WlJ {ieCzH& :Cv$ܭ bL~#t> 9cGS { W%{IO{&?lEwg{19aϨ&wLл >*#MwR+X]vDTqYT dJRjU& Of2vF1gOlݲPOp`BrhOrFP+y: pt+oB՜|7 ;N2=¼l#!n+&FCE͝~&qMEs: ب$} d jr<)$m5fnJuJ˚fP*wfs0j"y{r2 I}t:?$}&dԇ?9n-t̕vux=o 9+Ȫhڼsx3QY]tZo Z!w Ս ƕf,Hcp6ڽ]ysaȋA%YKd&rug?mP3ƙ:bd1R Vfe#ˢ&j7?Чq'ˈ]bmR8uUQa2O~"wcS7c·϶?@мqga{l\\:[{/Ck[ЦܛC}z}&Yc@H)O3]$W5ayI*Д&8 `]{Bx)Sr@}i3HY`)+\~Y&I2`Iz*f2iW/G~|-P9P&Q|>`jza |T DUkpjy;ȯMpu|c3TpL :*M+a˞3sgBTM"5C4q3bIpkBg`$֥13. U!"sR]fsĊ&ZZUb"t05 !P ?ndgsq޿sxJ?abRg05PBF 56`,qOT =mt(Yit+V#-Vqw28b|^F._"Ǜ8;{0]y<0o9j:_!sFh܏aA:Y54W҅=K#˭%NI@RJLj eŬO=ϥ(O{DN!s? =͚1cʀ(1  CݯL(AڠGظRaL7¼qSOL<"ѓ̇ɾa0X$ $Rcl㟌Ձ@T3u #nQdF%j߶Ł0 &=L'4ikn vJP%9{<!Ш!Z*| n3Z/\Hg{(% ?mrUUCU ]staq*Cf]V`zw5IeEL~6+~a&ݎz'6"㨗DCȍ(T⌺kX9ɹja 9f5* ;i>b~{lq6jytPl5 mp^ J29gFRƁr!5*'w4(@V) ;>bwA1.:[`F(?p?< t (À+wD֋5:CDj$ wD]@[qvPcːTk]V(Qp*`+[|ig~.4X !ci^LWulrV'ovE8;inaWVcQuˠ\L  }.YcTbut|N,DP԰¿8?6<"gF{DڱoXh~ `"[=~u+fYSP9sx 7Z%ᲅ,!sk:{YuC05JQi#u\N :4\"Bd/r :#>Pv)z}F9]n2Ib25yIFvd͉6#mKB#qsa1F o)j5M] \ ʠSİ?(?q~'j!X3ܽbe8ǰ|Cδ쳁0G1ߋz1D`qURQ( 9shK~M]4䳇u $H%Vb i=䨘[WgVGå R Ne5?C=$60T[G,p F`{MGRH%5WfrBdޣmSڻ1Vu],G*hLJ{+y{'"]ɳȍFW)M| 2f~ q5/ A\NXȈR#-=Zp?T\b1߷H{DF4h}bY7,흢JAk~p#%{W} o řX5~ 5?Y?8p~ѢGRJ7* 5 `nMŧNñp)ڨc\]#r/#ik9Gup 1AV@ (}Fy1#7ԟI،3SR$ktdXz_kc /CG3l2Z"͢T{A>H(q̥ xEƁ R5A!{'1D Ug,eghdk'{  ;9$n]jV^|hS”Wf,[zo&BGm-|ɄNbg{d,b<Ϳikgh0r6z@$'L}*hΎu(ѹ@ȍ-Yuߠd=X/7 N(@XV4 4`?wi#^RaJ8M)g=Jo7mE,uӁ!@h*%Dٻ}r*'8&_9.T4u>$W%tWPEZp5/]:yGF x@F1xҾ_6Ik c!c^kEA7Fȕq/iU(ؔM*rhgL;; woHg=vPi* p]֚^!wT(G~ !aKu JcAPo=0b\icWwсwNNﱞC za1n^ TCÕq\LµíֳEf\]T7fp~Y$<@G1Ig|؆ƒ;gLƼ Wׄ!vޓo=W5U>'f?QT= {# )WuEޑ7eCL懪RVJo;U^WJaNlZg{qM}a|[[̚ z((ְ b1WVo]ǡ Dy]U>*\zZ~G~L^ @A*%^P-lZL_6IToCM)`CUf ޾:z,~@ JmQ+H!"psV73m䳝zRnHST᲌_F$ 7{}\ueK^*ȶ p+-JM,t ?oI{we5;7{A+d RqU3׉<,y޲lkA%.vaF1EIqbPH 8ZdݘS!I} x0uw͡0k$9aE/߭bW NfFsLY0n5b1 JxY=0# ymgdȅk}`/: 0X~A LMʎ.{ qzSy0\P]%v0(̺G]u^j]ϵk,XBA6y(wh"O+'_~|/tվ^ƧJ"':[.ן_7zP7n,ulq$xHݴcWGj@^;YJ_t:sc)[DCY)XfpF$V*@AnL׸Ͷ2R>AxzF|envw.GU?8ĿҰ|)p Q#n2%(_OL, 7QU<Ev>3޻=G5Q 9?ur3iQz&nWw_#I|ڬI \AG9ѽ#]ǐOtbg } Z=٭ B`:1,yk!u/zL=Aì$+&F7 ~'{gggG=[d2!P֭!bAďNʈn (إ,P6C=GFr;Ԉ&ZN}$SԽ@e޾9F$1pgz$Z:YB%N^6MjњPAzPAG[xOfq x-eqۏu,HxKw[.hu1cS9~gz[$$*}R4 c'm%Z"Fq=dxY%^YЛEznk)eH,Hl{IK0F^ Apۿ0uNc?ʖ9_07ai{)-6xЦZق$}e3OJa5f="bp2Y+U R^_x|<`@E&Q)9knw(,L3?aӸ03zIt^шibֽV@];^d iF'Y[ 8U\ `Ώ4% <]8Z0EWp,w)f?QryUc;'*V;*$s? *!ۏ0 $7T$qZ JQi:tˆiNFl/VsBS" +}Ț5bdQ4W =.uV.L( ==r٭v8D:?Qz{¤O@ycZ'/ILz[q/Hy(ޝm6g/P']"Jֿ\x9lt"[rnoo1Q /̈́qPH)]2uAIOf4&$K"<KhkA}L}vQNFe(pBbnB4kh,(){;˦iKKZ,`ykP $ >\ڶ\u-qf}E|`#*?Q`Zʭq$c ~[sA!,6)[K)YwķnY(Kxר9 4 q'C``"݆hpwuY[F =[q@Js x~-;tyɉpU +>e!ֽHىY:SQ'p{AŌPK:7;ףAސ#8JGKʻ8APC/ wtKT7:>wj>;iĬ.fzMfb9] J"0\KdOi`;z 9%T@4"! fN YhJOR+4Ei_Уo{'^i/&5\_HO6ð]wActPj͟:*g$?pJHyL򔌚}GdeO)ӅR.$Q`-* uܸ%e1?TrtiSjWnz*sUض)B`YI|s5H8/i9 f ^cj'AtsHz VY[P>AOI5l=KPΙZ̲.3>5Sl!6NSu2M(:c,znqaP;>ZheK]O)^V&Q:ʞrQKI. |6X`tpx1iWwJ]=M ۷ Nr<4u9R1DdJ|fzU3d*X-igX2 o'ޗ SMs7]:,( )=]/́tkHʠLHE}ئT7Ͷئ^8>v1 +C AY26aH!i?)xn+ێx̥:o @r'E|웋a!o+14V%B\[ddSm[XQP>ǧ̀]}#z[ѯ 2]l 2xez4Gļk²B’J_4;Җ+;6FH4;#_YRcIGHݥo2;8 ezUN`tho{5 lUQ. BO$3鯧g#ONl=Xb5*~D+ƕ?[CX ~pಊ=q` ~Sa×h0_6m0#'ӽMV{!uB;wVdNIg(NYd@jĚl0_xĂ8cEFlO(&=9!UbRB*?}p$ΨAl:vm6 hN!o*NG 0$wD"gn4{b'n-5X(w<OMVEئQוEAKVoTRkA 2+EE濾.0+fLps8]I-8[h5u|#ݽr / m9V %U %c+ ERCƿ=bی!f:t`6Y6F.b9zb#lz}H .ds mu+F -pJ*[R^Vfe=s;ҿT پ OL;v9H]ͺzfwHPz9 Q kupTn@ͮBˍq_EL6l1B|fVK}PboZ-RTAʏzv{}kҎSΔkSpSpTkOiwǷ Co"𮛰З(-hz 9P}_n`6h Qz!kQ@ .4||[QnmME6j7 u%KnR|l埜lskrG`G2ov\}$:pFkcǬi;~GˣXaׇ#Ӽ"@BXpTRz JjֹGIIR Gq3wWA8khmj坢z+](͑Џ 5L?DƊ?B Ө?KϻKO_LfxH ۍ3J?Y 3:P>1t2s(F'N4cfZ#tDpLI%ݯoCZEj_Pgygߒ;mV'5`+#;YS=QԱ2a2QWzf5&v@^OׁO\Nzv%GyWqʵxv*4J_!0ߓ:$| pjdAqj\gO@W;ms  Y@̟k;IӅ $Oc\?)}ZO{K;3jhߡr<_г+'QhLmi2KtI45T׾ kT^HyUe Qu8% JS[i *( Z}6ph~9kjXe2;|}r7uL]95KS481NWDS|0_Bﶰ? vtԂI/%@G4N=T0vS3/+aBt#^/짆Ōsfi4)rS̴)ſ)DZZ(1ԋK*됻HϷ)+Zn 2%\'c]{A8AҪ3zZ}1Qt]J9_`VJ QJ9 (ظ۵SD骓1ZЖˆ۫/Rz zмaݪџj[:I׋>ZhIe0Ueb`zR" v+u^_g.d ͙܆7ʔIe:f?Ͽ/[X/eW!mcWCZ*r٘c# "zh"=Cl3T: Fs ښ?:{K^(pu2y88:'h],c\ ; p|S'R/ l[*@C6K 7f!NCAl3*g!l}l`dI>zM'!P@_ٳ9EyhQZ5^(+*%땖 kP ;/}z6/8J ~k#/bw.JqRz;0`dNL 6  /f CJ- wm܈{hqLm;7"//b$NJO2׀O:5Qb?S魽Owk@ ~ZAd`W>c4hxX~_ڽLvi|\-ay\]1F{ș3"^+RˊʵK&W|b#Pk[KsFFR]+/;_tW䷆ 0PVl_4C~Q[ր#swBme\IF5TpťK/ flBXJönG5(vP/(4Hks4лYm+Acf"v JdB-t JŒ5h%-mj3h }2ghF|Ϛ sK,;bUK{.J/ꍝB|,Rl/F $F /B굜;ݟ {c(ƒUm3:<2m| 3/ExxaݸP"C BQj:l/EQ:a|4"\&l Z@{PҗvDDtna}!yAb4CJຣbEY <˰ $`|8JnB,O` -|-lѦ͟vCfN4zS-Cs5ZU`ipCy1 5;Kū%OkC+*yaeZZsVc0 #ܦw ndʔv{gt!.bG !A֌qRiN]{r[k$>{ټ&qi b/K,Uߦ`;OW[l)d!PD0d3)Fr7.£aMܢ9AVv:1yĈPYl%| W3:}=tsmفvAwwu}IQfYv}&nH-4[3qSÎՋ(jU; iR3ذ\G$~Mʧfeڴ"T7#({ԟ~~rOT!Q=<hz |tHVXRfwzv>q<ίP3MIZhqMl?2vL4e1B0 taA@y ![AO3@bDM3Ivs{1`&oj(,`S$D'q7BxԦ=`+G%gbWyލɺ( !) ^NDv^ۅ)s -FB?| #kɋ1̎ැ772%O5dJ ]>oR2J<=6nkބ@p2.H_'dNe P;Nތm}l /99G@m hc .MQ~ɄW)M!|j>JЖNazv]=[j]"N.TYnx4{*2Y|x2(a^uGЭݣ~mT;Թi2:o>R+MpD(Aq$?mWVg|MԤRwLbRZ̓h F!?#5ՊPeq|vg?+sS&`'(ZI ,lX3| JSu^H,DJ -X瑲S1U1km[3fAq?5>8j=QM2u )4^8W*ۤG_$ C@]|6lR673P `G6[lLZ{b.dB8&L4S9OV`ߤLܗ./Th @;aȁD.rr8X"Amj,Ιx4x̆IO%SAFT63|A4CY: wFwtE"%ϋ7f >$KT昩pfoqVص^UIeƗMW.Ωlc<}Aޯ/%Ӽɫ"7?!PT,YP*?7=#rʲ+ލ\'AR1c޼yk+\ żջ`8by-Ƞ9qՌi[qڐWMcamr~RlJ?k,j E"IX-6#fƼi٥.:fTiOȒAќ^ B<<7טq gk]̥Є.ҸY6G R"O2_.].Ԍ-rxI7L>>tv db)cʄts?dK@(of0'9J<͇tGqWR63cccNp^ .n(Ƴs{- u"C]k/ۂOT1;9b1bA;g(*:g:]jʬĭ=/_'#7eB1l`EJ:}G w>GWfiAx2r=hc%9@&ZPN۳a|cDbn34S-'w(_xk]E3rڸL$>TA 纩$}e_F|-jC__p]`wN]%WsEc)5>`^Rq2`N\{MHιys_Q&ΐ3z[+\c{h1CYP_h斫e8Z>a!B$lkizc<5qKqDnLt#wbFL;Nen6 RNėaHڧ&1P1qT5|Ҋ%St0IUe=͸]Yz撍":US8$t"%_ ЄdٲӵXȮ$S/fʫ?hϿ@^[Gec9MޏDe*/#,go4\CY>&_i|!$HMȬ/֗\'&ӄ##i"Y2Ո.<%\UjYB'=ezL׌\LwP+^i.F]1CjXЩf´'im7GXL0*0URZ4XZ1VE޻XIQ =~UMd뜔'YR%FsׇG:s:!a?2AT_VvMWa[FTQ͹˚o窴Dv/nikkssxgoc'O5μC?;kL~@H_iP^}Tji|qJڨ0I(BCH n3.0 郧ezwoursr~Zr%z?gL%MЉ*LS_5̈:/uv%4[]N K,T N-K7iGUZ^OHd_qH6è.Ԭ(|vaT#7I<]8 }SPZeL\!C⽘kivD*hxӜjXȖZ?3ݸߥ e1! 92γyWDM%[^:B$&+Ӵ9b}H_:+CrA}0~f-ިW-Ўn7cCR*Q+aߍ=ڙA]&@ߣ6'"3"G@drT (&$M[f 'li*1D!_sz)N\VzjZº)Ƅ֨ܙ5쫩 4)iQND뺷d@ IңF8 Hqf( ?w︴o_&< qƖ#՘1(saS;zo5L<&ԩ;U E7hΕMB ZsᓯPeDΚ̅|O-oˇF SqLk ]i2/n1 E\؍"dO|_Do)_D;(/@c4t/XV˷NkĢb gź^0.Nz4Q{MjGoۂ-F_C{1OU8jKh8sST,tXr&:dQCxpFS M:܂qYG5! >7{,PEg)S0>۾c0貫c@#,jqCЁMt8/K5k-'q9 PZ%j EN4'Wq]-ҸyiH-eA?JoXCZPhH6jd0O4|?> ReB)Fh$R] Imy6'=~F pګe~X{ķ'ǫЯƽlr]4hԍ'w#ZnLEjpCZt"H'Y*ڑl-OUf懾Y44;`h9_E_JV:ƿ/i1F$/y׃j l`K&5?-տ [Iw N ˣe`K bTx->Nf>-)Y$9_ı>yQ&k=w$ `i [U i89Wg΍Rfui4~E~j!/f?uh!'LKjy VwAjA^G9ӎZ`; #2Ӈ°`W}tƅMAQP㚏y`^Ha4ަ*y͌T\>iMZj-T홑eNS-6Yt<ͪl(lع֢0 Iu]~,c;ݜjMexM:qS 8LKXge{1*D E|.{TȞk cpFS=i{7o1zi{R[fIeߣT6YHifTLZx~#p062]0DiA "fD$OїʉqWO˹<Ʀ:W*Wy-\hJSD3=%BKk+vӋoJE[hז̘)@Ɩ B@mS'RMv`zОU }a/P|jKVyu ,0@Ebv|: zD Ŀss\_ \޽u?ULt2RB`ɧ*ʨUgN'i\)J,!{pMՊzҕfH`(EݹEu] ?&֛U% ,"o7a;̩ɖ{S&^ kP1Lr# x?; ^6]8y;I`&hQd=َioPatѣ>}8<#dR}PA{l ZFhQ ymK\%94ď(SP,se`VZ!_C=b?A`X$aeXrxWKZ14!6䔎mp -3C(:% .7b-]M,M f*C%u-;NL^%¦5j]|qyս<]+Ȥ6ҟămԾ`؛t멶"=˶񽌛7CZ|OYQܻKtI?) Ѽ3v@rFj?*|\3V桉vcG ¬Y :ܧ A,.h7wX-]tҟm7 k0I1@ī::I_#z= v0Z/3.״5>;wɀBgK Ja4V,T20aiq]S;*PwҒ:LNH,M\(w'bث, Fv&Ghrl60T( ɽkCE?|bnO ܉9ԛrlu|'%KM$<*0^?XH- ̀y^o-<|#.l"L+Dh6Uؾ IESe4lK$$pa[]ukhQ}2bί,Rg2L()0)ip{~)1'n4KV*}G|YFdAًSCd Lq[=4-Gk}p$9sX$K]hMwdpe/J\e Wo9GP$BbX@81k"=$q>!+8eN9/&G@no:cHUp f˙Lk5K%3 wP:0¿( t6a_ %G(LmŔvND[;lϤv BJ|Uȼ%XQpk{O d'cGsU A &z7Y'a.>=f_Tl5qNŅe`xny@+EH̻{J?xkT;T#ܞs9t[T|]w؝%!Cyg+Spq=x#$G(&o%=r38_Ψ'i n2R)C^KZ3^i*9:y$:~tѬst/ɐ.f ޏ#5$ٛ]Ii<^ -/^j\Nʙjj7=.gڋztL5<.$$ D9^M8̈́!%ݕ#Mƅ&@5nb] OoUW@Nj18+leRAC ѽ|,;JNF?#\=;wY]eY|RovG~ACǑv[f%o͊mh NVʆmWb eW4$';C

^#+F OUz.LƋAxCOgiPb`GKu6dq2 L|Gx..[&>;c!{ V`0;]a'^Nd64 /jL=T*+#*^Z1랴'|p"/+6)J|-+[PY_Y OK|My,M،^*N -ӿb &"^:P odӱH/˔3~IU %J0Ĕ貺f,Ĵl<`o۝/k1b }N2աu#G`$o=;dfQpE'C'*PH΢"}xCך!ȕv0d7mj̵9ȓ|֊sa/ q@ *g.wz4YUw*z5e L/,f]/YrwX%d!?,%ovg`l-gԬk!OD9x> Aާ :uظ56@WQ6RI@)J1f؁2}(ʄj8J'f͏>N:[ _`gO\ݭiNs | Nڭs2ipsQlf,:{+cKbШ{v #z8pQMl7/4dXOS.4_- ج#L[SnkK:fa'ͬڈC<@N~u8T]fy!"Yʯk! $?^N^}K>mgMP=:b@7BZ{I+aO4׵uo-yaЧ3O4wJ+C QZ=u,91 P &)C!ln u!: *Xbek>K iV^ it@=H {.ѻUa=pYfzKipDjUj FbMv`**toB)Ǔz=*'1U a,WD82K щ4ׅ~&Zp)5SbĖfD<5 N"Mm^6G-r;y%Tt.3Oܽ(ְw,"1r_ P^D"7=mrm(6vNw7Y^?:Qa09g'ÓІS&{!Y*(_qcbP<I"X 6 5WVh/X{@ݳ9)Z`W|B;nbĜdp)j! t=˞d"( -`R{`1NdF;v?I_OݨǫG7`'Uy4-`0F L|lJ5Jsy m(O\K%cueMV7?CPr o]Z4~QM2Ͱ^]H2|mc5 StV%JRB[a!W |`I=Ò7-qBhD ~4Xo@rߖ0@77gڤ~[@q,C./M1eo{+aOu; vuOBm^OJ^V鲕v=Cu0rI7\HuSjIҜniHǺa$3$ G/ 38P-y%w$^2tSdi%a7n#o(3%p(rD>*gorOdK A&ÊJHIUgA *u{đc&qhOr"5J~"wL5B)&<"JxZ\YU\je%N$r,@%UT&rs? hvaT߈QQ0~c\#&Hy_)eج_60#a/Prӎ4IъCU,ݜXg3"uCS.vqT] mHv'{.c~ޛ& -W~ei3` 㖥_`i7 9xR?vCd Jpf1s>VWH*p`)O>9kŽ>Y5'D*Z3W(TJvTIx745jq5GB6^&OqY0SN t(~.L,DM41:ۢŜ^J vH;s}}t>/s .M66-uc~2z ޵Oՙ w7! }76FzW0^k[0|Bh^x@ W>*m^0`|S>yb5|q*kh޽ eFr~eI| Sg"W7{ qg95Up̱E=ΐJ]͘ĢtqCO<9S}Hxho`G'umq!8_wD(=w([$L8KWa*ϳkZc1|rvH!(Q;}2-yb~"3~pkfL`$W44| *L?D60:{YQJf iv7`1X{*9rE{W(!ذځa3Y鬒aK9ܲlågWa_o>m4IW4R" [|ԪeXs '}YH72Rk^׷a1 oNQ*uDj$)<$*)ٌp*b:yY : jc򂢍n}yDV#jUijwm_[Ν)7D\ t۩F3ZL"#b {Նz o6X(I`G?sVWr8|5ktƤ$N<'™5iSGQO0х5m<n>7‰ꢂ5=Qb(N#cH!.+Oj.UV%x 3|SOA&E3E)HY <J /ЪB~%^^`,+:k+"i3MA&3(Ţkgʱ5b2䡡)UZ?c!]8%8@ޕưgߒĜ BvDyM^ wb *S@gDqU1jܬW.rA8 bd)ŶNk`ik5 c;B7iݤbk؋?"w CL@>A9o7&B44m:Z:Ĉ"G:)o[jjQCYڦBDr'6g{b{9[J^ 3.{\PAO $a^˾71rc\Q. jc;7loI/" :S2zNW9\{ B =t^",uFBvrSp;/Oȍ=%s-D&v>ij+GD>"f)^a/>jF뢙XJ;,u3>/NCu%O(m$agvR3"bZ\+ gAie4P h'NC"J i)3Z] Y9dzS?IL 2hL;=UO'x1<ʲ$ m@J> t3zk.׼1,|洛>˷º^9pŔT)tƲaԗH7 fix=;AwDHIL+޵jo¡;-@du- m细*>h>o^.d{ ֣9m#Se8t3]EP9K:TA$PϘ; H=Cē'1n훯jlDVs~cu>1/ɅGDRg`/[,]dMa,.h-.\nNu>oQ8\Be]D/ݔLU >I/6޳E V\aYwaqN,>VeO_o%z^3g{8lS6o0f2{F5P MẮ/,0 g@4FoL+.ڝ쌀$"Wk/MW_PByQ9kc@6olGqvO]Fiނ|1]ćDvv,hY$/Kfo!whb*/n2Ƈ:$&T1->dj%Y}GР,)Cx l'likmJ/-B[!\Vz4RBhoD ҂EJ ar`"񀞱ȷUNO|f?3Jy77s2x6X@W1@;M M,Pgx>wSl:n%2i ˦?2 wP Td[QǜJHyQJym~x4аlD7 etc/ڞzWj֓5&?zzXL`&wwr™ڊTE ,0VU\m=bn4̃5}b(̱ƥ@5sJ[uN} i}'H}yԑ> Ө;be^/q(XA6`p9u^i@k$,yT!GFy6g.y:"7.<[AaT`o5o[3 \ģURVrF8l>GnqƣNh UӈG(D%Îgar`4& Q?T<=/Uz~3ĺj9*_3q*g59 kX{5ާy;1\'I;jyBZY}?R'8o@,=7yp5w9/Nffo~R֡h˜^Ui|+I:%3RiT.W(Xd I^|aJ&*j"#+eN^-%-s^;_?&[u 7\["j'$\Tw%;IIcv}%NIpT `S3}t<f(M]sx$fϟ͏!d_$܉~RF3a_{2z݁`5ČdbmQ|V0;E)6䨳E8 B))'X=3<@8|G\9-4Ŧ\~7Ylo^hN}m5o!tBql5:~QKE$UV8TZRA((R+4<ȡ~26UQVJ'| 3ڤpgln% MC!F*KC*S CF,l.s+bD_Qg s*zl5|vئ-?ƋgAEx֟ITބ;ۻI6vЂ$Op ARݯ.ᦓJǫIA#Ȭ LF7* ,5'OKno‰6'Bػ>-ˢ@/䧂$Ԝ|zQvW~BZրO|F'ז[]o)Cg8M%aBHpEmn,(D0 ]LY=mhcŞ&vn#Gz^6˅B14ڌ)x( jM9vP]:M|M!)jvڨӝz'|dKPXz,6}7ξ+ 6 :4IGSK3TsǬHٲKV;[~ʸ9G\D%ˮn^vH7r1zn.tYƨ [Ż}t*[˿ԗP!ǯ塂i NEgXҫ׵_\-z*n="4ʫ1|V=&&mV!/"2Vŵш-PG{FUKڜr!W8Xݽ(ν΃riNьNV 3,Г&XuqK'DŢs>M&Ҹ}`*ZR(gˎ%8}璁N*> uc :GynκY.|+{Эkvi]To9ݴ 7&ԽgD8kХY,g)Yd&}<ۄg{@%o+@ȂeMf8RѧjY=O=ä[`NʠS18 bfdXЅ=+9?/~Į xXVH+c/k`wt\1ؾ?{F ړ;2m3A!ydZT]|pIm@R}&0ϯ-/H~ZvWB06I^ AU+?qHtO7κ"{A|&z "k HZʹ6Qׅ䠓v)prd TXN]|Rukp_G@L Q'*ș+p'}ER]M YzHw.dEC3йŬ?Fp_"Tt}z/. 8 6j3Oבq!;yp5[0),ŊTp,%Y ?y$F|q) {Agap>쭣.oAc߂B֛u/=91wD&lO$x@ ,ZYf`=;ų}Ji%rʹ5DI@|{Ë]R0*@ -Þ2;̑}&F$Ws6سe4 p{Ⱥ?wzm0S.wx>baE=J"^}XusdӔ.uj,Vr'ݩW@8ӀK FaP{1ܡ 5CkG^C]~Q$(sQVλoI?뭳7;LJn됪~ʤhL I}An8 |#wފg=eڍ0_ҀRW*j>0bJ Ϧ[9N173nb)OpgpslNϙ! s ~/QZjyψ.nu%ZAbJōoy-T\i;e˹-/ }ެm!fd$ÛxRn zYohƈ$ ` o*9Cqd7N:!LНb*|H)wSsz dԦ=.npF' ڡ0rF&djaw8xPܝӻŔl y= Zڗ,ȾIɊw]`ZZrTƴoƞ_V$;DJݾk N9%'B<'̆D"*UeK:jb@ENsI6DF䈿%g`>>ko¶07g)_Wڑ.F yp%`)S %eaS+`i݉bW=Hٻ4>tE0o#EjϠ}MPXR^+ S gW^%NCSi1 `DQ2ѵ1/oC kwpZеNғ.*W?/v>UdcGF/Yp5 F#W`w{g`)<2:ai|izU8KLCwՙ: ;jS9AZf1`>X#n60e_Tc'roV-/\v O8MɚȐdyG[x@'sCsXkt"bd%," A*p/ig r1)ܢãuMY5;b}jp;=4QIs۳1!FAZݷ7ERMqڌrɔY $;:AC%Ox9ܪ(de֕$ňO㿦_UW7-DZ-#U #'Sb#2I4@'oq,7Oqp D>p&C޵ |i:5s Hq 3ZlȽxeB`il7ҧ."/h>R4%r^8 tx"]ǕE0 :+ mt1|ݰ0= w)/H4)YKl Lf+ g.Ld)9 rI.\"DeTu]Ѿe`?52">ԧ2Q Ib;= sG,H3 If&Gigv/}:TsLSB^cN zԆ'DfSdOV%閤-[0&ӬrـZ$|Tty^sKmxʠvI=iD$HrU]pF$`.֎'UХkdF T7BČ+JՇpO JϊZ͸Xħ]$JOk`RC~׍ GC 9d'8xn3{PVՓn@$47fz-^U.+Y?17_aLC egMJC*a*dK'BIG5lȖ(yܲF9\PVar,5&L *P\y<cLnՂ ܸrBI"V}"ؙ\v6+,|YAGuw:jFaK shym`ώѣi+7\+X6 C6yusp'dC߲CC$w$2y9&j1*Y~J=xH8ڽʈ/ZE_[ p]c Rmo"?bd4h^u%9c+:!غр#܉i@; VD@|wdlnD`S<~KlSv~g9ue}dBS]ǯRN(W,2jQJ7Y ؘ-G .%de* br%\Wv/ǖt[aA$8-nC"s~z,LX=@d̂88@9 j5%ӆ+%lr62c)}Y'؎tL]6Jq(yzŒ],9(<ƓpЉG]jv4liuBADj)O-r?CPyҖ^&"/j>Âs=)SUW.4x?PGIljآgc0feml64NB08_8p:,'$YÔ U0{8?gݷ#op0/[ܴvQ*& kdMgBCff 1X|uaQʟ̲1H~LĻcTP{PPGC.9 R#7CWo-?Y 1.~ TL)_z$kv!e+%MgiMB9Yˀ =v](y~;L` Wr%c-TnzZ84}1fPbS|hnqևf |9b^縸|gR<7Һro+M2ͳĻ)'pJ(%gj$s~DZGBv[*t!ҢOG΂o?$W'X,SOm`&aSsmyzސ;dj|6tE rid^ V#2QVH)p efs kO: Mԟk{Pc\037Mf)''C "SX]o/EyǬ-%;0oK5";!Mqz0ے aV\znVMߩII }# Zkf(,WM!to\շ7F$Hgf0TF<w\-UB+]ȻAg+`ֿ5f~욀^t)p+d5j 1q~Gf uҨT50W2WcEh4R^A#Itg Ǭ uH XG^VeNke# l2fno7z݄3SΝ籱UQΞE$Ich`^Q_wxtxbDvԩMQN6(|9ĭFr"t=1J׫#9Qsd*ҐH&nۏ5eq{Ezv[[+OwU'Br<|!Pf<d_&V`.A`֕V8mp@ N"-,uuI SRP%[Еog+[fxhXuGW֢-)1u`QZᗁF&ܗ=9&DA.La4|K1 #^,h6dN Ay'9сmX;kI7E X?5S$ir;[ڃT RQ_7OjqSNLj<[_DfZ{r"OƟt3BD@ 89$"Gqc{`4f J)ߙr+skjPNZ%]ak5s8g{Ƥ&>R1Fz7@ JOL(j1hy25ʅ߁nd[&BRݷVʂ]KxqmycM {$ᯀn#byYU'0QdlJ_3bZ5]C)؟42_ K\3ruK wXB!yu rU' Dh9#pRpGƐWTc_|"`S6{]N5)H  lU*Ka>/UO]Nuo' PqG? gsX<"k]gP\^y<7"PͼJfpSsΔ- p .._8zk h5Ǒ$P&jCԄ޳?:8 ϓs4 O_)Du`X`tB. pZKS#8$4bI`$z[e 7\@D7(=8uꓑ 9O4i/H\z!w&#~%X5AiNrf[S*mĖ t̞UQ ~>{wmc˸i>]avo֖Ĩ%)#' hY'f)χy ݰn,b+S5j][-S @VP21L>W3$pa,g~sc<2^r Cx>b^1@\܁DBjEc))fF^ sՄF%}Hy V޼/&Pt #UWX|LӕJ{Iȗݢ?> =x:N<nQVrQ<\J\VKDZ6Y 5Ajߐ"&I~7Lg -]Ctmj"+w?4w &>nP려~sۼ\_;3O%56gj29vY&-nh/>}Ba&;R컒zUWӚ&X y=K\l!+ճ(^"ޑDʊ CK>Y3<™+1* u"F9Em=u*kja۹7>UN(2-^u|03^mb$ m<,8^_$c(%['aO튅! O)R~/A6Hg.D!asz&,7[#W_TO㬎qۗۢp=5[_tbINvh7ukX|jm1ߜ "m/a2_T(#OfPI{ T1QZem%QYR13O[xf]Y}>VHPO]ҏ_ϐHNS@]W]g&>Jϵq &0"/ ^Mj$1JVdAb7=\lx+n &BT݉-@ d_$0t sŀ.rlCyD羰L_F gׯ&#IՊ&}UI]VӰhMқx.nJ_DFȐ5jKeVW/SmjɥCg-":#əsDnw)DU[ϝUA6C~bʑt+H>˼EXي0# $TX\ kr*_^5l}^j)"-8"(٫8~:i$ւ:n!%wT5PfȐUnND\\{V?a2Eej54$! tWJx+öDH[wt -y!*#_zB]& % ȋԬ_&BQ^FM^q=;Cqw"&  aIp֥ReCO{.ŀ,w $. s;2NroYG f8j>,=[hxpf-෎7޳iioD~;zC {gU8P]ᷡw$>j*pVQx-}ђ/me5gfH|lWT$9J@jQ,$x4@%0w'9 O]r>ON4_N Nu1la6xgˍ?jB.N;`w(;t&'^/71jcGPv3{NBXRWk f^( B!ԙ8y%'0FLdJy}y 7T =MbWza*`LT)΅>hmT 4A<6䢎"G>҄6E Zgc5Çk2=Y +]tқd}fVe}SO͑tc٥,~JNHOoiw$ :@>^C8U_jE亍'Lă" wy`"iU~If,;<@MXJ!0.CW^.|I{);/TJ8*xN?g+̴>xzsVs /?j*MY߀ٞ tw܏4 yY}fVQ~]u8dƙ }$g#pdeKeYЂ6¸72ؗ9g޸*oܳůTο]?/֛ɰڗ#Ǚ>aw `n5l8 ʕO^J!6Fh"\E2aO s Y2DUι'a2˝&G;yھAFT8(rT I(9瑕#n:/T;Py=(s^CG֏#c+zOte+O]xv*WFr`L$hvXElQʪ6IRl޼T{9yBLJ$~WXYڄ jZP-ѷI}`SaLM+.-h[o C+oIX,& ˷4 =<_&YpЖ,zJf1 {*-E[{l RR~tۥp`RAK3}V 3jkul].v)3AL"bI xXTPͣ: /+>u$*>(3NZk&r`$35w;W.[8qgH9oԣHs=A eX<[ GlعӔf]M fL/~{ F9WJ"U$3$ 37Ѕ)w?mSt,CfUg'F&i^mC}WcܸUjp]!Ak8I4l3'Ľ&r 2D:t"keG L;MCwYZ6sKݳ8N7K0^>n[p[ 7巊aAR^2MdT5]7$/=ʁit %dKD`~чtLk6#@ò  A>9 [/d(#,wLe,!njm ^ `\Yd5Pﯕ=}u]1U 0⇎jR')B09tTd ݇)S@hZxuuepѣJnM|Pkb& …!W$6M"T0'c0UFyw-5U {HhrVenW)hiIRo"SCҒPSBhZ(evBxR\|Y}u5 AGF[~s80 _˄cT ;, E{WSOL 6FL/mYlŻ񝡺Io V :(AQ9HN! |;T5 )p8rr/niu"/6 1?;w-qsWWL89]1-Ȭ^ vX pԜl^kE *zezj!l7Grbj`;US+6~"SrO6$ ̊M\݅yTx wiΛx! ŭgJl@(%]\K7B;婽޿Yz5̾td9]sUKYW vLvM40 #7PPb?p(Fi^U;fQ(Æp},Զ憎R.-z9Z6 W;a ~ . /ǖ!?x-A_ ށ})!@t[,RZJU49;|W6Wփ meɓd_}~5 մA~U/I %.-\US7l_>сsXzݯ#Vls4cBy5aHCd\-]kq<2;ɣ<g::vѬ ܲ=fE, qqb)퀗 Q1}b$)>1hY Y ~<i3ʉE󮮀u| .)1w FWR$" YbiZ'";K"/Ҏ/^:cZ*~7o֏vx䜄Dmbϙ<:cnRT6 (b-:r_j BP y9Ve2C7EB:A3nO4h`32i'GS$`D,#wo౉![`%7O?EjƢjbE=-Ý֓t~}8H(BPn;0򓮠. (. 3z]i1y{P[$9~(w:;&@f k2 :nNHkZp~+aIH%Ōe%k+*{EZi+EѬ%J7K^hZ8dqa\dvQ`6&,ol=k1"4z5&نhߞ%j`6ImY8Ncz[wdb39 >[jɭVjlrϲwc07vZz6{| o[@d\qR pH|k\ ?=oI4Flw`5`"c8$h̳x y} Z+`' .E*r̴1]l\OEGwT`;7= ѶM9 A=0^Cy3Gr3}u3)jsY/MDuG-iHlU  `=vANS|o "uWoȪQ]C2iXan}yp* j6j6ǖ]tWTӿ4KO)Ѽa;>$#AٴA՜\t |/&NP$qdӓd&Ϻq{5vjC_!9ob\sα-~ at_N*8Hß Ӝ=m-O\#taJ9/D+rC,ISl"9M&05NYK [N 0Ihm};'] t3;V%m4!ճX|xWw?kfnge]ݧGM܎ɿ_,CdA ={Ry\hyryt!m0~h1y7c|qu.SWW @ m,ȮX4̭)/G> ɩ)17,H !czˆ\ԙcC),ZD17WM#sQ <r,Ϡ[\߄& 6Ho3(mwG2Kb k{^idbx܌!"mtwfdNz-L_a(ZuVfBi1$w$5A?W|7hZW`+$%y yJQ9QqH!T> *{ gr.Ife t|8l6_ =(•!2Ô.Uv ]͚;>Cyg`xqL[#.)X> $CPb/\. f?PcnESjk">PXsכZJ?NJُ'Sh x|˟x`܃oEJ5E]_H^aϱ:2bZc8e~uC'}+H@őmh ]pG]wֳet X[Lm%I*9QlF|_ CÀmgnz4W<-oiqV>';TIOqf걗eVL~O(߼HCD2Qbu=onkVC(>,ִ7Ef|r6p,? 0I!zIKSOպ 5EKP00H8! >m=]Ѵcq>aQk)6ˠF|hyoLEjPo w*pI&ЩmS8-ح /xݔpgf D<= QԜYyxU̺skw+b-Ǯ$P3 )[QCA\[n$^&o DI >,o|ep8Lu3﷢JG捧Y:xv|tO$N|?%A/ShpU>f|?,J2a!pzX>a\DEb:Pz]H `fu\NoRM|1ԁ`XPwa8ԔPhK0u$Oss<.|I︖ֻ4@X`e^Rf¹Б!d9SC- 7K(jz;! нEX^T\N,ɭsH82Q`js?{yk;5KcrH@ADylRpdu:"km#6Uj$[%u֯cZnQ-H!7^70U{Dr 7M*M).U8+ଧ>g7>~hIlHzRYnd_( g,̀.gHiRZ 0.v5,b4*]BvQ4 M,;{^,?ZiymbyC$rZO"H@6MQK$cNf[R8!KU5xBd^QOC܍{%x4vO[J8Q7iL}|i(OyxN6zE44ETde^,|eLׂӤ|B>/,"?o,s+Ob]x2S9b:, S(t TQLO?~wfL yȄ$e+fWqϭgQ JM(Ow;E׌8 G S?z nP0B{$/V0ȀSHU"UXw;nڤ1'!%*M"Up[ ֵtUy?G^/Z|"c1`C*1 q P om]I/l !Ѷ 2gsXXqfTk- tJD9m{(19a| f^w/F#Ωϧ?H0'aոS=sVp m.>rɥSΧ=х^g E?V -+Ӓ6J$ +N#eٟs_$IZ3bSeg̏isrrAEKa8+x,3}{"p0XzU[Ek ~iuڏ%?P2{E*aUHm6̩8OCۂe0K52kϵ/v}Dy:x+#kOz2\fBMi]K"4!3_O 0ιehYLKp .&y+mKRԎ7[W{)Vִ. Q po?MW~߶׻|y6dg=9'tDm=Ir൰"I-k0旭6Q )C6n5Jɴ٪`g>eӽ0*z۳"}Გe R nN;n`=:ful+RVqPz4UfYV$sܪNTuԒOKu^GNRY˾,Ve  lDLf|xI2ac^Y> ع9)c:97;bw|`~z)@RS̞/V$uC^7zpdmȝ 1, $e(:^jW ,W‘Uw,d{<Ӑm(eb5*g ~K$1dd/bOxB{͍%md&8[{ nʧqpt oX>U9Ýƌ}ޓ=4Y@iG~|6iRxa$\P9\|Y3rdhɚH@kl0K][LJs{`Ů~_̤ Y$|P`S"KlXe=Qꝯ=Itۤp X` \6 -0$Z۫u4rN/![&k\:Ddzqe—w%6%>ticAx֊CGаU;> ,tLƠpcBA^tfc~\{QhhwJDcs?z\E=ϥ†א%9uaYƐ?I ;}\b.J4:H"~6XXo‰ٻ'|s Lڼ?fx*5J%O -(^;i(53AAp',H˴ZnmQS6.g3ᡸºtRc`Q?'G!cN2xmK>/?'a>燯|v^M t4,AΩ\n?ytpFG7[]yF(.ZS]Ӛ#Lz.ҋq%;]gkV 4ŎH)ut;KJ׾Ew%s4<+)cHka\|f/O.HNlf!^F/l䦅X%R|hĐTp4"ߧ@~ S_#[3J ^HYY?0![z?_zB}jAbd")MoPER.1gP>'GZ g`gN$VV:J,C)$3ú튇8d'U}cػ.A@З\|X+0jh/*B 6Tͨ$pd-yM>vk P>k+|2L"U;M%mGK9Q /I@4a3WQg1TEwRA~L!Zc&TJCD[_hc7Nv8d띫.ݸݩl-̠]~-PKNrI"H͛ B,6VrHIk > pLf%Us#vmr%OVZ3B^5uue@:M'`KccFyr~l\{q=flpr!Mp.+C[AB%v:ܺoͱ h'VxG,9&¥{er߬bp{߇oT%ЃT $ RxlJ*6p3s4CZ7qP!cG0ul=8a5(emW%,̢5eB&AAŨWpgٟ19HiFs3/! UMՑ-, A YRo "#ݕ"@F4ar7&](D,jg-6v\tGJ0޻uh>9' gС ?Y#cOlF\vMY&I7.jT?`um?C2;G +Ƣ BK CO3v1\ىv=ck6XזsqBh3 HşF0KME + QP~/>%4Zi:tgb׾|w6iT!s"blkpdX4ZLx((œt$`~ztrݪɂŔV@ա%+Gv:8x&4mb(̺F.7`"Om5+ަ)lF3[%cK[B( <w8UQ(Q@K]Vq*'AXѕ 55*G IHgk8/{ژPozSX.jW(thyvC fW|-A)KD{ b秎nKe.qfg.ɼ!k w'oGЬ/w)ɔSʯ/KlbD|!otcp3.qU.+?h_jGiU ) F!<2a^ehP [~6l6\юBh:ɨeRڲK,` Wq2GnGa2'u13߰4!YG˦OR{dcڧdIX~0/(ߺ*M}sZ,1>fcEVS+R  ^8b9*z[$R{E ﰆasG4r Zq;,}Es{4٢H5K lf.D*|IzOG'%7϶(vJn H˭.JJŔḃMOI~i ~*F k pU˜< 4|QI6^JJ6&P 0"zCX\>jB5DŽ0lnG/hɬ`eL.)O1'*D2Ĕ>@UnêB۫l?p2BD )WU8}kZp!! ExgJAF|LTջݮTdfmeJ{|$bt@;; wj;4^UdWбYa"CdIA_>rglH ©7}$/6eI{WrWJwLf_[)xT˔t"ۂJ$ \2:VRBaI|š^O++m\] v-^g*Cejjv6c6 K,J$-bϱĽeYzJ eI*Ӊ)ЊgEŕq ,i-W։D}B\ػϞK3K'$􌮯U`AȒmS2?!x}A3<}Բ'Gw(J)ra-BHBR%(;n 1tK_OMDOSe 5h$XqczA$OL۫mD4Ry] EtsyW{B&vB47ffS ufgR 0@ j+)6TN뒥 xfT3O_yE+trI9616oг ~X={+>1PLJ%Fu7x1gI;o)ns6׈ **d[.P2 8aX p*n,At@ߓZgvIXei22 "C?b4XF ϒeU*C5RNXE}46LvXH'A>صŏ+ܨv *q$AQ^B/uZ9[}ES#һyxը"n)SF]T|(&obu1YЍJ9Fra} UྦྷLdA1=B K>o ? uv:t TvċHٲ$ >(҅x- 'I,R`YeBpi=p yW%'8 YJnGydC}{7mŜ\[n `J,/_};)Gbd|d5ۡ wfMɪd.Ow{{vځqAD=kmy24nk18B~CGsOE =:^V`QN${oIQ'x2,\q?VXIܷ{ 矋V!A/\YLVX3+M҆@ ;ƏX 8NJUz&[o8ZoR(FG+%By%Y+[0!OUR2OHBp!Rp~DJϥDհZ oUFÛ}b]隈v[sS&d(eL%"iA;t6b }JJ(<)cs_pOWmJaMt!Kg>1A<0EjߙEˋp-]at&V0v1wTV%;>=rVrf?nh^WMa*0b|hgGd .Ws ưihXmkzsi=3\;ɔS)PNo3*$S;“A㟜bseό@Ch&V 'J''6R P;9XSZ3eVCi>#$[ N+d(?\l&E`[aԵUD!](BEd#\eYY1j; rI0fWmD],)l$ |P9+4J$yRMJGʭGvvw*_p˧Mb-.a$?~nfP@(';^w;8HxUy||1,Q,Ӷja0)w~ay~jN%ʆ> Så Fd.IcQļ̉JO7V/KC، XqL&͔9[ZI,ox쉂FHB_>mB:ZyQʶ&;t` 'q5]K}[j()"\4A])Wz.9gNW YܓHi+h8 0u<~akߺpxE QFV]mj%ѷS*nwH9#ٳjQO,@Q, NeOS?AV,sǷ#`k' :8PhfZ07䤱~>e.y;#MC!F5wU"M7y91!\L& lcaMJ:aErfq;no'чMǵAWUj*Ih֐59U)|֌5F QwfgNjTVx!`SD}}.c#r={sVth iS=F]xɼ`w.kmS`;D"Y@ƒGU|PzqLG :4ƄHܐ{\>**f/|1Ӧb)S4IeX(dE[t+ å@nݵ@|{4=dzɜɟQMGd vБ#4T<.[r0{ PwKi &=uH+z= <ဠ85켃}՗5P#XFN=N-*? >4MUj=<L{|-)WJ  `*{Vz 4(O?XXF#(=ɐ1uܘƱ}>JgjV.:1qNVKjm>Ed",@^@;'" E U%'7C4W9[jU:l$,J沒.z2F>Jh{A'Հ($i !8V_2IDWb'ŋasשּׂZin؃K&Mep`{h$h!Kmp29kIZeÅH{qCsӛ OX=S֗BsI%d8]\p4(ts7ZLrķ (ί(zzʖRP3BO~AdQqL.o aP BBgG 3Ө^$I?U0O@٤3ԉ,|o&;DG!5u`)qBlKK`(H޴O ky6`,4bڙ 7mNoZԕtŶARIV!$:7pOnOzv WZi.EWxjyLN{T8 jY$~~]lJٺulpn)Fq:0dݝ IQJގMO\S};F`Ҡł)/=M~CZuev1@o순)&.×F PϷPߘJ xzh!e)wUC<ݥ.&[^lc^U0 WOx O9߶^ ZYzkGyQ:>mFh]3y^O^{1 -M"oNd#_Nb+sّV~`⟁_ڸۖKRx.4V9@Qocu|i@h7k O`A(ușP;$"Kv:-N ^@Mw)}DAA) T, HEcί[ЯC{ᡀgB:} k@WNYi<#"if_rTeCox 5 GԶmOeζ>e0Ld &VẪAtQ-%AC}SBn׌q9IG0͟@`olͯ:7'EJN&]MJlZoHέ´&ڷ+fK8UTl> YHq<'EDn#g=iyU)>>'$I7@f EOu#@.RT][xZfLP`ŠLY: NBw dDUw"Ej`IF{Վ)\sXl'mNp;FS Cѿ۴VP?HI&VsIA[}0?-$4YYuB07SouɖKi0J ^wjfͺm&)&[5̡'MPMJUĀiY}?Sa~x'5h}X]Xwƌױ PzpLr S8# mB/=L3zю/yY$pޤYf(7;~O<#s`FJ@3%l8w_MA'帜8ᯋWsf Vwe~#G:o (r+meThQ>e $R+ Rv>zM0dX 701w)m7OfZPz%tpePAFK$Յý~9%P#R\쓴/0vv?6u2P1AA.o 2߽jE|_'IQB-=tHۗ]ϫ[̴P%V? 7 !_[N0˱qYAM3|_*&"eD2=F%j&i,8mo'F6Y|!Bj {_k?VI{ V`{Qru}#;jR֜F}*)D[/^Ϋ`??X{SO| @] ,O|Y9iS]HTTڃJmdv}&p]>^\S;O4ޣw '&]Vkg* of/68}X^z%DDNafXPfco*zhaIaOsɹsPofťp9КY%nt級< 9n0Z;৳T\}Jâ1 U(˔`yFjC%;Qԉt%3ݨ>8N~IP<) U<Q_ h^AQH1^{=T% R<OLU>\/H3 j\B? l|)5`NB]nF^c Jm V9wL{>14HӁnf0gUD,ʹ֧>4YI=@q3DPƽ9xU̖cWzr AF̱!GœyH7 9jI+íyTW@YXC~_76.767S9Z>#>*x Gm}SfPe_Z"IL8T7qôpTz"{7J|rxGM;fCo)"!^Cfn<G%3qHF4BZ-Z4OD#rHf\y@D"ڣ`n<*̮sAig D >K@K BZ,v#¬9fv(4]LI6bI󗘢@{%?~!lGJp T8\߼ Іp*C5:Fk>j֧u -o!IjLp 9[}P%XS@v-&fE~4n42y?x%>AW &R)Ȟ1ԫFz⤶&y#ї3RW49C.,gfx5'!g |s0? O՚S er~~ 2E yE$ j]-2Veo|;2YHh@jTg!M \pF\.fC:,_t[RPlFr5? x6Z'ءhw 睳jJaءxZ*y3niz;kZ:,]t^7 w$^XNMpC]Zzp&FU ]iξ0>lL z'fK=*D x1ܑ67+ѭApRc~[zӣ0 վL.>LMvIVwkbH0gBzCgiYֳl~} +S*`ֽ0Q@#^sR8 `/t^SA;M%/ᔕ:ip gPSLdp݋^{ECc…ݸkƉi)(h4l=JoAu>MDX0tQtE)pNt!Ѝ\5(%ޔ $8e~KS.ƙ[zeg#0˚ 0v21O?#sL3n41u$B֍BЉa" i @k~Gt.,ۓ['qN%!WGȳNjeZ5[tBUv^yh޲kbL@Gȫ`u{#|beCpn; a@0H L̮0'.{N "HJrR '=3ysEBL|HYY)3PF26MqD%r |xJnULbM~|u AB<8 GS Ҽ)n"%MZ{%5SRdW߰BǠ'{2)+\MQBhԃ!Zbp[Ny8Ln5\防#s~S\ &rNnrȰf5f@ }۝d'3R, ~+M+5ii5ߓAGٓ:Nh"ڭΉ6 V V]#dGd`TϪkˇRqo1k~?(G0kk] %!"U(%u6ıG=<lDeSR6uoCjl}.bb;JԓiԲdvq7cs &;,q%3Ҫ+M_=XchLF8ϦUarR ~eg)v))5P(d.$az|#ڂѲU~g _!.WO\69 j ɋmN 'KE-Qf ܘ/2eE!츽@pqޣ]~@zm|Ȅe'b z!p3ľ ~izm AJ@_}RoDZB*mN#uT m %IG,d{D&ؤ;%Z̮ևLK2 ÒJ㐛w4n{脪qx3,YE"+VPډ]E_ӊ\Ԩ !y^X]Z h> 2 a"\A<kG?bvךc'K!ꖁf/a{X_>Dio/L## ۇljA⢩>wVr]/a4;[%@wt& ?bLo vIhDdCrOA:grf,::!kĆ)k,4Iy~,ЋCn2<{ dFlynxCuZW[iȬP(M7wcY:gݸ/7 ,(\٣d; LIh fzKNCJ3^|=kE0˳F-L+gtG\ `ӛ`v ),Xut&){\8 phKS$Ynٓ N<#p^ڳ: qŨ[`a(ޣQgad֟لO>#ɴWA*=2~Ŋկ\0{ .^C'ջ~#'44,/ 6f՗ PnJ=6PH[L7G|DR0|.x@Wn!)w8F83bH gϝZN&K1w/!2) v9~=0Ys rw< {X<4~e[s+HqWك>z8v>4!Q`65j XU0}0t~ƁV3/S_}K0S\v`18U.2BrgyijDo|?qB젘ˣce)8E É` k+zbDN;r$*Zh)=p <Н ȵv.AhP"1j|"AGhB)[^֨sbg?nJfhD/RceIa>(Q CFAe! @n.E+D-KT^6/() 5 Z1;=r"2eue6s 4DU%H 6Kh*YT*|> ħP&l1S&ctF1tGUߓJZc9o*Z$,?—2f MlNc}ބ#).Tw2hP)Z7}b QEGI"O[N}{<01GΖvz |ʇ3 G\wlx!ķhW㠹&т٬ECl&}ֳM94!gf".t !R!8vh(/ !q!pXo4vBDnԦ5Cx)*{ L x 8m!3׈1fGT рt"cyJG[f˂OqM "*I:ǿVedB/~KZe^Js˫ ??O./j44|rw:dK-XS⦒2J^Q[klQ٨NFRN} ī_ .<r7KltP=xbֽOAuD՝`y>:;ywl3H`~f9 'V['@锿'pŒ;vJT6X(`c~cɎex?Tq\j0OMt;rv9_ZDky ӭ(b.߮Y߼|<&]jUXB-9gR0 '剏i9X+WlL3 *?i\WJ5KyrP`2++NPe 7_qiG':zēaiNgV)0OSy%Cw#˾[$Lv:iZbYQw 'a>ԡF'%u][ Lɏ(Mw7im9K:,3Hİ7$#>XZWC0<9! 9 I*{py͕>Ep:v3 b[83j`O/x B]48+(qvN'+>Rm@|F`#L`_cѓN)rZ]l Yy-]-N0118{(䉑[0#n)Lb|ָЄ~}2.Q,@lBY$Y"~&sع|bSݭvi*G9 If- K'qK?8 `u;Q!(h_ W$1'e[d4ʷ6%-3";)D53,:`TQ z}4<OVi]I;qv4쪯8&J` wmC"yfH D%@qo[DvL?إi+!8vf`pbcaXe`9s@5xDE@Bח ]4M (WWZr]Mv'O2,_/%5݁t5jDYG&QP@`_0΍M+th g~C|@OusěJT|1]Rh0g(HcuP{+ @]mXI<<=%nxҧ41Ujfgwta!Zk3<%cU#_2W0P5J!߃sVTnz'ֹ6rA>>?B{ sn j29YTڂ\셻ʅ(\'(A2obn|WߌZI"9 $KI֛>[n顤+w:ճ-=k}E>h.|"_P>p>\oDj7}$hՏ`-Uc6* y\Jj4|O7$d" =𹋄՝g,SIwnM*ITRut)|J[H!lr*[[n j 7o./Fȃ1٣  0Ѕ~v4ڑ9m($ Y~igHukܤ\'r!Go=F!'4gƹa ѰkkKE5#)kJK0rί` 3 &*(H)! ;;* ݿ@c @t!iJc?l"`{z!1WXۍ U \BX[)̣GA>9^7N)bd"R$a;đEIq(lIrqQ)|h[-wh+;7wXo-5@vzs[)'aʴ>MRv7ֱV(`j$"$ $5j)ꃠ>J02# }Atc2NQp[{|6Ŵya~]"C?o\U݃pE" ח.K٫WeikpU5x p$$8=W7ㅆɘ"f.J+ ?/|(q9/+{e[6=[&rlq35st;o,8t&;,5R :Q@6pm{1UvQ ,*NBs02Z3Z-{c[x :A\ے DV;UyS!.)=ڶT2Y^<ϚTG*Hsl&$f)t*NnK[瘽YJoPӪzLZO:%_$1i| m2,5ݶD 9LZy3# Ń5')s0gl5X^ EH&co hS}GNZ2 R^5]QUɚ̾fl $d156"9Ā31 'f1O[x /Sg25A>`rp!nbɅ'LnV~z(SO?R6TYphҗ~}:3+gÆ檱fB)8V)њ,[a!'7Tڔ1ڊ=elk8\?f2o6o!I--9'#)qv4[ Ԃb<.㼢ɥ&2}uk^e;tlW;xb,]UUO!d)5]^fm0pO ިB%6K.4.oNKHz+Ĵ\$pߖYtYAHj}OsXگZ0ȞnqQ__otf: JVbh;k: /=> KBH) jSڌShՋX8H׷/ j ORiמYÔI`USЙ'G͐R&?}u~-X4ޯ{܁K>ݬC?ncKA-<lB鴸+ӾeDžGU)Lx@w8h\&F˓2^YoV/K{GVvO5V=4_8=u e>Pbm򽲻׀K>k϶#'3ܥ~hd,7?l?{.mfBEǫ!Xԕ ugP.A_T~[ ])ϰQ@#Ama"z\70`6GF¾-٥OId#w5 S9QdQexY O +e2uoTݼW"̛LɛZLxC}C2p0 Dsr$n[)b F؀GJxƭRvXĺ;O8-Ud缏aM?} бl:~2&6v}.]c>~9&v@q|T5;.(ַ\\ @+bDhTAŧE ox@k-UR0; [O}m0jjOkȍUOyjq׻N]/sp\(%Ķ0\JiVo[] c0à/BS+%h46@Np<^W æISFq|;1ƭ,ߘu)HiOh0z2cm* )=0hxURUg~Ѷs@ދXMgѺ7ˮQD>^{R¬ u֬{b13mZMyS"BF,S.tpY1l`qjW25%U}z)"1'Dn s-tIA/Z m:n.2;a'RTݽ` 1nfj[V;="^]-r+1#5 :]$X_kxM(M2@Z q[3 Caw2DE)k?xܧ:6ݹ~:9wi0quo-`,Uݷ>d8lk3nw'$}LvUL4DLֵeA[𝲶_`#Tj*TD'"tw 1ez˜l Aֶ'#$PH +&\]|@rva EOJNYWNu`sRhvQSTK Ag ﶁĺdpCA\۝8G #3>ë_ eU&0`ܣ{Qz~KOW9,e-2cY´"b1x5{ɮ^?# sl+yJ?).M7r%_kG'vQ%F?:A[Dz@EHYتk a!iRSޚf7߸܁_Ȳ?KQ]]kn$3_dl4Bڏ<^Kڵ \wG 6RH=dp{-S.jS1b ]5k(EUVI8 \hpU$q#TI5j!)39 CPѱriM3yT92xST;bZ0::Ǔv&( S39*Bȭ)2D>rjQ pN9VF\*v҉|5SuP1PMzHGvJU!1Hٯ3\nU$ Z8Eǀ90phrElavI+Pثz XZ2PI &Äbobi5u]0%iΙE^!<L{d ~=KRD5W!j3.7>#/DsltpG(C>@Ϟi{>/׻IyN+j3Nycf6YO~zu8#|…,R3VWT5ETEkY~]| VcnNM_ݹ1 vSGk/{fL]Fv,5[z^˓2> e0mg9B|RDAPN.mod=޺(u~gMP %Am:y;+`J⌯8kOԝH=Eye c 9ovh$b0'ߌH!tJ'HM";bs[ lt]YXr!t[D* Ll/gegJ3 눉X5Ɓo n;8Cbn(?/Pc_+cn~$)2%#B,M[ma9>$wT IK0hlr@%($+{\$JU̅b^og5CS{.`ޛv^2f:0%u-R<ԏ?mק+]jϛ|,5[YTw&?o: !i'S6ӹ\L:j Vj|?J`ܦE̚3E߸.GJ5w0)*lRÇx46x-כV&]G->بx.-\smø˕+:V2d6-jcY$ș֯CXrs"!ヮ䁜>f!ʆɁEfsU,&[I/Xˎ@fR_c[h_AWeIeGǴ=@?em`K-#[v_=6%׼ %P2H|ܕ>u0>=mv"Fkjq],9y~[8V _#ldNƗgFr)uwNzS_;(pE@>.!Ee,s7JJoX唧 .ӄMcEkr**K v\;ƔJl_w) 8=^SrqeFyo""bs6G'ۘ5FD"vlAVr$ (znb躊t|M̧ wo.9'Ka*(v^5 KtmRqʒ;v #>{ Ypjy/OE}0 Ԯ̻#$˳l#>g vڻ²ʁCi J+FLyY;x{)Nty\ ɌEU& 4 ^zDoA}U~H97ٔح"Y6êMLkgɤ$l銓4ٲR4Q!9Ty?GyXrfM`3S4 Œӝz=SЪW,)34qp`.V"lwysnG@L${24XK$?$ j(skOB`"-2]><ҡ1>s~f.KHTW9)y3mfZ{ .F_'4K&[_w)NMYf́X_G58rG mA0H@iJrLsz0w>q-^@{((9*vVqHurV94/j2.zG BGݼ _H^K>}œޅ<#etH8QC(U|~x)|.H|żffi yKWO-wl-[m5a@5o*xYr:i>F+)_UR{Ubն6cN׺fC :N]fqA%oܖYsb_6[i%sh{J)#w q 6%1K tbV7 p.=%93ȾE֣}uMD"Wq?X_bUUcm|] %{֧KWA3>>"o=טk'z]e";?*`X3Ef޹*Ս+5|w1̸LA'lO}}Pm1X%@!WVhr"ՇKx8ޮGY7YZMkD\e1/ Et3QʬKlyXݨ*iiL,-s͍fk5Of1b.!X=-\;x@Ԑ\<4)ݪX ZxȊ`$TJ8L`ڠi+YC7C."e8.z#RΒ^Pm5 B{߫Tb6{v+jqo2 5zWqY KX1irh8n c5?N>C/RHn/ 0iJ&^xkREtM?Q ) :,ܨrV]; k`Խ;reԉ_xDWV-,%)"ݠ9\[ϨQNVJ{~ }r(O2 kkw*iڑQx92UGELΒ>b7s±zΩr6 B\\=bUM`x|c#fK2d,h ƌI\z)r0V 8$EiĎmb !DkL75! !L83#%?4esa($b?̙€{ T:40pIIDD+h t۝p笍3 Lu+4,t~\&3["$IC8ÄTaKF[d nliȸY)?%>h!U!+OUHŦ D[j|MqLf.s| qo6%>w]zǓ,.-VG.wF>ψK| ct!p/}N=MXj2vL_$x*O _5%7 Gt 8;)Lޏ?`i<0F^ҏl䰂)IaZ.zsmOc=RS6ebݘ\[(o"yj i1GCHYj@ţAhIO6#XD'&+Wv1䩰177s4&nR̺퓷ڗ,]YzPͯAq#R s,,Lo_ujxX&*1;b x@g%`y򺩯&P:܏f,.[3*֤lR|^8>m2ٹC^ED*UٚcLQg_dL;uub)JL]]YrCnKw: kfvj`f C`\M3f^m>nMV`znF*1+no9m9jfH!g?|~1r1C&ƿ*8";ɾW_5@~1cM/ ̹- +2babZ O9@mtLjaV ?*D֗y9e([Q_zjpw.y&0^ ?߄gX1ꭅYVYa1S|{FW8:"l?HT&:.5q>ʷ}prФBLyj+լ0L̍( *=wrYvR[ԂO$)3ʼnc#~y0THJ;\9,gsC^: yU*{  #"r!w%CI[?$Lm ՚# ( t@WU oipwԜqؓ89y_0zp9ujbQ DfEf3O&POq2Em5 +ͥyh2=Ӿ+d Nϟ>Ak ٷI7|VA@W7}jg81;pQL܊8 ~ݚ|[xO A@tntrp1j[jJj7]ì6'&}6R@7DIjTLLLEct q&,R|u{!iZ[Cz$Os^F1&na18,pq_LԀOׂ&=}!K/~Ox5`=KsTҢ%8bEfuBT[|< $ +,U;'zaA9xG`;g{APY1HrUw\VL4lۈ)ًRv(ߺ|^vdr~vQed2܉Dv)ER_ϫp|gTNE`֢#ox%E)XٛMZrkBG*X%~+t;IB<)?9t& z( O;hix{mxWc$,x^mi:{9LZ9S34܁EրRodȨS $ikSdHGaD|I`Xwa*7"4ɯЮdSep 63wx 4n`EKUXmJQz9u0Aj@:AHAaj1V/0 $[eތ0j.^%'ם &5@+(T,e[Hqֽ@aM3<6w>NdxH<~\AUm"8|=狡Lj.bvZ;0׍͹("`!9 WOz'v/j+ x[:yp WAEuW/'Pt SUz}vCaSeK@YuhUogp{Zy"(Hu+= ؖeB 枖Iꥀg޷GoTy"ue%R~ OA-颌zWyG ơ}rԕZU xO2 ߍm3yW c!_ϛ̕>︴~PJF"\f:H0p9.\nb}$n]uO}L HHCሏZo'%  "XyڋZy5ζwWy)K=)$W,$бHrOlF#_r&@(Hcal=D]$Jw٭Aq &KQd/<̫]@{p5jOu`;}rX\u:NvUf_P~2 99ͱ&Q/ ` 2-\CH}TĘmi~Zu=\ 5GKޖUwX4TNʢ oMh;=CV4'Sh"]ζGbKE$8 @}w pݧMc&=0V+졈-#a;(zF$Ceq_ULszCW=&M7M"GB !g:JfMv9^ARPĐ'.6FToV~ۣeW<,NAA n~̨DŽ:vC[v0c ; Ay$/ve@wE iLH %5MZ[ +Jفxye5u=H=(|gu=}()^pYTrthOI5iU [̧T#!إG'A+@-XҼ`IkډD_fm!.rR-TA3$>rEY[v:/߇y5I]_A1h>t?p;Yi"nOݴo;'p9;;u4rBųU J"^Æ1gқi FiTj %fk$ѯڥeŒ! q`J㑧Jd p<=xЎY f 0=I/b(2OAWpvo U]9jA߷߹>NRX@NAї"9(cH;aSnpΞ3yQq1ڳ$1:b_jX]yYiIg)GX6퉟}Q NmpvAVr˗4O$rM`բFu3_醴*;!9Y=LB8zVؖ`. Z(G16YzCƆJ48T~,'0}x-6J^򑷘bNƅPZ#Y& %mV&bHAzxCS%p]K> Ȼ.|[JF'(\o~NB6xw \&M۵_C'?@;`>3^uOԥ |+l s«Own;HׇA;OP ,jKHz" ZȼvlZn3k=ja$$8jZ =jƘi2vHWjrKsvmlw^\2'z`C.եQKnҀ@` 0>-oÂ{&^mCΪѤGӡDzczSoI_\O3%}ssoC3>Q͟C_FA]e06)كR:ц-]hڢOo-3^ÜA8m)r?!0Pa➺8pL@,巻C+Ԅ1i ,wv2 z= 6f@,-޲&C_oO^+:!mg!vR8n|@h*-*~𺇌1)V:\mDUTXD_RP!YK;ԟX֌=M6̻be9˰ٔ۳ eUwLڬE[9j /ZʍՏPxFOepgZq1HxT-l`eZRfV {JX]]q=36Ą1A^4-q14+?Uwd!z٩WT#E ǏwZ<|Rm񯗡^agNi'٪56JfJ_o  j?@PFs:Ոd "X{d !&D'0b-ÿof5K Mí1ཡu?ݙ?x\=`˛z ]JAxK[3z9;w0"- G`Zsz42fOMz0xF.wvSsb_x-tO]5&Vg*Fr1 <_\/,*^6QE>_TTovU|J[.smaل'N$6<{6~bY {m~+%Krio4}r`yYVkAz4x!.=^|Zi!D7c,!1ld}Pi>dFņ ՕTW9IF\ڢELQ'U8Y E`_#jvk͍уMs *m- x-}8-xX3d4so}ڡ;yK_5XR.ݰ]N^`>oa2 hfeMfGH{Zx!ׄei)[ oޠ7}YUiA$k6`Yqy_6ߐ7ak^nq /䑱vdߓE$V#}Lz}̀eCu9d. yt|aNb~c$)[ϓkY0K!kLpBUNZr/Ce 4gNmܾ /#'Ox|e)^Rilji".AՃּL'mp%zzm\Pċ$D"Ǭ$9%{9z~i/M_BaU`̌YO ?oNTJ5 0EiHz$n,`Щ*j6djWGpM<x|AʉtOg rdvZef e#h/Fi3ZQa wi 1]CSuc[n~IXrMj!~폼RX;u H)҇6v7adwE fge:_f!A4.#!jg&4R,GHcLvFBD8˓$-`(P;I+/}1z0MuZr9F"ϔS=7j2+Jݮq&%GS<nh5QZj-1qׂ,xQMfJAHBX-m3{p.Äcy~,1l̽KKEuق{s':Swoel|]?-7h"tV O$؎Qh#,֨Ytq*jkpqV1#.,&n~VN.zOu0 vbY ԰0Ȕ*H*g֥=4}oH)b>¥lnwҠjpRBJ,F(o`,fڃ N^S|!GUn ZaF1jUZF<%crl8m.dzLELBI(ҋb$ #JuV%!ZvU}TVa Sb̡IRr%^c#Eͣ iȦ9 oaIH o/Mzfh4_.kc=fePQ儗m)މݙ/s>ӪQN-gk S0ı"% GB*'[W1юo|իz{hay3aEu3C{%!6|_7J %PXȂVTl-_-R8 Iw<n$T? -0NGG VUCk :;q%r\8l}A>CMsTߎHOcpܗRkN(+3}\4Il[xC`֞GlWL}ViLO]~Kȉ;|L+Ih3vд+͠c67u:C^!rTD 1m̰O75k_w2ޭm~q|jϕsm'~ʹNG(7q䌄DŽěA, BN i$@nQ:PKJLv-9,^XڷkrC|1UR yoJ K(s^eLțQ>c !m_ 8$31#TU.#L@Uau/lTiυ;5C+?\[no.`dh.i 3zf$?t> ,quIF|Ze \vo ƌ@q.ʋZ}-~.˜YF7 8,,SA%r}?Lth꺛X z,of=tX[n%o36k~.Us޼ʺn*XxqDYal{{Z<͇v-< @M i[ӭ`&]ɍFt)ooJnߪ qW5&> Ip&$r޲}W|c2W*MqϠ)*beP[K*y{"v|svJ9CAqJ,i?*TB>l򄄶.,mE'/-VJv,N9rF!yZmGTw¸rv,] \ "1T46`  pͱYСV .>G.ZS@/a^1w{GAoKz8R{GrolQ`!.F@ $/{ty#rc3@m\SO(:BG<5Hg}bex[JU6Ӹz>on=OM_1n/H7GN$*i@L '2}ʰ=Z'`b~>G-HiwvzI&[*E(wl%n gl>D`zŠ ~8eUao^})oeCXԩÜGR]"U ;줿H.l=]^G$0g /\qgDUugeq$VciWF6yWX 5I%MQ`$Dc'Xyjٝa5RԶ" D0yy񵵬zGn_ANIi5Un1AYpq-0~*GF<DҒ}Ol/ױm;儦qLY&6b:ҳCήy.ۧ&{: Y0DŽV72=Q F ƻ>q`u;` 4t\ofP}b-EaO#_ε-wOE`!墬tz2et 26z^uh ULdfNS2# Ŋ{qML$0EW/3Nhi7rA;kCCp5v{\͍vXweV<}.6M0I9v"86W\% Nҩ::jP Wф۠NAg:Ҁ9toWtK Ƿl,4֊Cm]=nC7%AҭFLPT|y/ofzn( }p_0'*:on=y<~RѰuAnĒNW;,%b~Ku!M4 Bn:,IЫ lFj8m}NV=l/6޼ϜȺs|Gdn@3Ό`D*mbWm!9c]Bnּ! "I 7کyfQЋ qvN};m `sfd~G?FɍM>0e%OzD)O%Gp?gUP1IzxHznQZ&i+ &VW!f\vTww(#JC^]Ҙ-9`xAkgOtJU5kqЙb&kD2쀦00-4>#b(KhBCxcGr6;^ jP4z}-L@.!5a}"j۩Q!&63ޔ!]2I7yCF>8Jl4zb() R9hE'h8#$GR'> 7M1v] nZmYMs!%=6(k&Dﱳd.Z1N94Ŋq1=t5ޠȔL@JNzF.jެG[<\2l`5Փwu ;He1~T#[?.߲qܤHZ^SuR}8-F~2菘_05fh`)Rbq\&T!?/6js6%p^+ƽ6w mUQG0L\#g):)Ң间 ;{?u)!7~"`/kJOl>%H;cJ}[䥧5ꔽ2_$bhw( 0p.XV00 >Q}fi4}{NG%FLsR)#+2J6 lx-ANڅc6>)ۓRBfjsT<'j}CaVulɭwߡѲ{3LۭXp")371qi#e_BX[w+"2*C^23nx0'}o}yZ5GϺ r# % DR8 ůt*4YZ^=SR=.؊^<@66 cS:_sJlH?f!.mmr˫FXġ*L'vMe݁R ]s4TZ!*|x Ρ +GFJ6aOM>M<JԡR!(eu%۷$V1j+qOo5_:PZ'Uc~ X,]49AnƁ@Y RpcĨV6{^`gե GNʎIͽ.i] ?F:>hq o&puP='ڧ(yS #1^yYw-7!MJ[oEy"#u.$ПМH+cb[U*O}4m:9yym^gHD.Aft.(Z;>R>N TEbS/ۊ=&s@ \37 ЍN|ܭeqA6¤E#QG} \֬5Dl|}QX! .:o2{WԢ=±sG, QJikT1Eu={eo ^GuH-}-[5aWH~c@l5.ĉ2550EF6g&0\*:Fԑ?? ՐiiE_ap@ &ipOzJ[+zAɓ9Kxe@tR+zB˸v|8tj/; oFgJ4 Go¢2l&?禤awQ{ÂU>yTn+"ti|{قқjJdu2& JnCxI?vD9)A^bA)[ǰx~:NJkU[uj?-:eajT26ZC;ՠ6>p{ pmUe#vG4xejj.uW%ۡ* WVcRZo{g)_!|e=ܒg\X9i9b@֔ 6}`O6 u0cP?},+4EQDqkCqfkZSڋΟ,,Q\'ƥ4 Ɲ4钴7SdL_Ǧ9z J?N~oY D2]X}}`ȑ',< 㓇֢Fy-p֒-֕8`OJmWY%vF%cKChSsA_c{T?t-CZ)bp^_X kPUйg!$RU{M b_m]lڣ,\pA]51lg9uʈ 6&2f` І/7-B2߿~Ј Xd½`]4l4.Dj&%d4J.P8)n,(_ݑT_XEtQ./75. 6V4kX5hl'64:e/0*W|%ĵ+uӨj e]R}41,jˠ񱘥4#UՌ,xڇRC<k]8? wN j/U@?pՃ=.RUa'MxicuP[6o$10#+oTMWw{5cᛃ݇m(pU#OE:1A[T6iQynm&_[TFge\96j.!F+)u0aw@:2c!飚vᬰq7^dN@SrjZFZ &pq]QwNN^=_m,iD(- X NѨxq~䵟  #lo('I){8EXH{;a6uZ<3Z;6M!gO鈃!jÞ`+7ekN q#rGe}ؒy'JƷ~ԝMp%1x0ajRTȤP}+`U*\՞|+tNOPw*iڠ S]]QUMV~W^稔"|0r(/s)HEL_»4J53$â03QY )4 4i"ulQalWȈB@$o:`)E0X<ɵtgʊW|ɷs}y h7S`_AGG[u%],!1/׃2tV--',>+ =4t^0v7t+iɎ~DS鮲W3<7%*g$Iq"|!ŏk>`yz$i@zVvU~4PY5zi3I4UrZr䊮-.a8GƹuMqBÁy^]dh,ֹdAX+!\BAAOrS%M]vKajjO_~C=ԱqkȺ!#MMs~uW(kIv W`Ԃ}m><D{-ZfVA)DZ߇|N޴5ƅ'ǂ$D6@;f zK6V1fʄ)"Xq޶'K8 ,fd/s{7][Y g`RI=q]6C{6b'!;T3˞]%80aJ%)ucʚDhDsHu߄|z"iz{U6~/.d 3}MF'8 9/i [0OkTeK<*KSv҂r ,?˿Wf )00 0 5-V>y+[lPSg,ǭ4I$ȇ\oG<+-T=sa bQs-kᔊGEk+{Z+}%eOŘ(W]Y,(.zZeI<ʻj^K3M42,~vאj"y =IlϿe&ֈ[dNvl"X$r5Pү}a#,9UY8YeRqQ*ZwM)~p9+%q.snQA<1͊Oh'48u+9!נ\֝V-(cT3`ZՉ^,$ERwȧGF/ L =!ˤ>4K˝[7c g˃0!H[Wd?GۅXp7/@ | ֆz,@- %OU0l #t g| |J%o:09K24y61*>xN!ݍwvR*3%/pR <`Fl n ("Thڈ@(1)r0tX"<2%bJn}ܔ76 4݇vWirRG'q(:8%D^0QhPH ɃPHX)մ$6$F:UXB7 Po0S 6\GqR,Y&6 [lL1-6nxR<://XPb1d8^ hC{nN3d |{-EJ4>T徭]ARt܍{mF^Ks:cjWݡWGYv@'NVp;sB}"-cNl0z6YBF_]h ׻iw$ĪTDWm?Q7K p+H>hp*[ :h@q45AW@c5W XBm9oqEΖ7 lh <idTE\C-F+w-tmM [:9_}եxl94m?R(UO1 s3Bߓ5'B^nhs34Q-)ξHz[W#aި5xJ:}Y{@06C߁5Mz[u{"(2xE Ա16*iA{JPK3 ?,qb9ñvӎ{Z dQ5UP4vXO\/ V|mB;yE% Bꯌt 7>I0>Qaq._\*4 N.bl/R|+ XS]@FoޣZp~'I׹=m *VF= }moyߞnZ_m4DưýVYP$J4S>۸yo 8 bب|-7/ds;t|_(̩x8cXh.@쐍ɭIK ؚAPFe$#V.g?~Pq# 7<6-e`6# 4wdYNr4⒠j"˔4<'Ή%m!K2 o:W\E{rV ;7vyaM6-A7 {%l4Qт۽@<5_e(JEWfh9*ˍᄌ09mK*z/1݊s@\p:M 0:Vg2 ?+ UܥSڱjګ<{&!`x=EU+JMՁBףx:eT-.Fvb*%Vi@qKAyntútuIU[r 讲V(%Fr-ez3:_32?՟v"nߎлaO \)EMHֺ쭤c;YBuV^)h_UNлXvCKIaְ!\b\쿒u]үZE͠.:@CuˍkAQ8SC}'{SpG6S"ۅH S WRsz57nS?yhѬb@n6~rz)\qiEgΦG-F =|$J0tיYEtXGt(4GNĄXXtP%k,޴iP)XٯYXvN(1⨷Y3G %WUd#m\+0eC h3¼@'lVSo/zs 0Mi8Che|,``ُJ4(FC=@xG%mj̗k(Ρ46 |G%0ENZBGaqAPpQ>'-09+@W 43kiOvMmFֱpF>z,fo-ZH 4dt +:Qa`4o7)9vۈ쁳;T/ ZzShp&94&k{?Z4X0|XFn啈0Ikt:$"Dskv>/d23!PK_Bw~LKPxo8Ah]pwׇs n,(%e6.vB~n@uFc7ԗ:'nJؤChK1J6Kew)(+ ӧ嬎n_y? V'I_,E`j#gT(M&j)gI&{{pW֐(K7 }5LV+-Ý#Ie$@7YR'jB&uȳX)M⶞"Bjhܾ+ O`;Bϴ[;=Gy Kh WQ6ޔUpFcg&pZVz|78gB K1LmǏ) 6 X>WN6T 5]r~MO✗a,Wk.qhOTh6μ H۞>[pj#\+lX_{#mhPOp ڳug塄A.g!G*,0ԨoaxԟnZ (2#}«LrbN fTRd?͋k'XYKf~Z?[g-Ai|&W 84y2j:MLy˨X{i(%t̖^.CsʼnfبfXPqI3H ŠlÜ'ˀBΏt婢 = `ER@֜hi!3qNkzoB;8L J"DzRU3%\UƏ$ڗkZ9JĔ;-=W[F zt{/+$gݖPɢ[+Q+ήFp[TCUz񖆍 Tm쓙JoY)i7>&P}tlځ7Fs 2TexU"&Y]`%ƓJ(>%>D!tozr(mw`Y96Pt ~,;OHZ \ܻ|M Z~iT}9kb!;EG-;W{0Gx#/> ɨ#tTy[ՏV)Bm۷*]8Kt릀">} I,y*OqBI?#:M㊮W m]^H@ f4.3Wr`(@ͩ'c7I@o2{64R_ h{TF"CW+ibS`Gò):1K"yϫS)̢W jk!L/ }ycN6%_R[!Ӟ纸pձ{Uڣ7s#rZS"͝8cK]uȹ-[dվt_ IdJ u캗ǵrLQxB+ $#6 8obl8]}_Ax5UWA_Ô+,$ɀ[(JO];*%xKTu؟@/EDuC ɪT s0 Z#QZ(i"TAݽH$@g-|Qm6{6#!+~U=Ž8!?*pS_s]aҪ#Bk\cyJ=9vS.d^Y;72r 0ELކvi3|fsME kùYXoI3B|*e,^I7T^N;GN398`!0<5*~O(خY/ W^αAm^ώf#d@aa z-$FdrsߊmgY"2NR!k{fy_Tc[M"-']&2:fE.8*Sεf]5pC B<vP CVK$PS &/g>I;MIU c/t(8XV,Fsc$C4}V@-', Rv(Q}1 ウXu6$@V5\;zdM"Q_ȜTBP(]TLhd]f]{'ɫoψX=,)[T?7~O_.GTH_zsH}ŎC06YQܳq4r#!.ZHs8SĒ$V6a?}% GP)qRSFXO=i,vB0'7%h@/#%swypRǬE&nfa5ڔ|BNc|oQ6'eZlo[qK"q<]gR.ܹTc2ti#avE`iKaz.\>LyEԑ_:T1*bjk0E^GM,'&!dL'@M%JЁ`TP4!3 tSMw7r%˔0H.s^Gsg~E $M߼'}NBGPiL ٤5kz2HxQHo> G2G]:\9+ G(?PnF]ɐ.x|̀kW.`c) kS_@wѭ@C XuT4 ϰ $=ǂIЗ>/4)hfU.:dT`0 f4~v> `ghjzG-x]˲V5SQI(Ƹ8l%펭C#0=̶ԇ=l#ɣ6v.vJU %gvĉ%$8u-cEpZq'7/қs2Qcߔ`|Nw}%sGw5 ૶ufDd14qri]2|]D)\#IYyYySk.%/m$z*(= Ha-t`A.k9a2b^>Vۢy-׮{@-r|NrJݵF㡘/+Zl܄Y%3|U/bk|tBoS|Qa1'vFN[Y%^UMy̹fťL,ث jt>'`wA=pۂ 4}N9EJmEd}8r~mdo|t!ڰ5T$>1ցgg89(B]/D#e `!h+'"N,ټ4.ؠ1JSHڐvv$Mre=o%.+HF6mi*kʴϸ"M?^+o9 ?iT&w.L(iT/Datbo-"l`-˱dg1Xz6KC?^Վyca&$[ydlq3 ;P/6Bͯ1VmHA[u%#+t^gvN-?eZ/G$M 0\0wBSUy+Jf.M۱0ô & 6!rh T^sSgi1V #]ͥ`=!ũ3U>t}j0vJi$ 'I\ڀv@맆8syՠN#xadQDXJ9 ʂ.[_ia4B@=~cl#!-#&}J7Q";͜-mIa{6M_қeQL!>j^cXkY}h:zJm4_䛸͇k>-T 4R.(gyy=gXؚl~6,{|gU(a)P֎ޱB:>j g/0!06Ubk* N6B֚AI,:$a3:/u[7& <ƉxSҲZWXda6~q?Qː0[ʭuNq}D 8!u [ZuWL٘S*{ 3>jjoGZSk7W!'Ôp2뇡x1l|lg%=Q T1ScvakW{1b%oKX:ѵ"_>^k:% `*8xՑqUT.g6BAƦa{yr c+k8b63B\=D&Jۙ6꜆PB;;X|LT+`9;|:UpC86FB>K_^ÖR7MW9'~0Dtj?/;T!`7ߗ+g!0 N5{ڨMC3?nDSKdf&oջ*/9u|r|#4md BҢI_Hv暴,P?i v&_Fn]ۄ$*8}NȜGE gZ@+ZH2hyX}7VO#vJ;rEa]5i3@`h?# XGg4+<U:kRHiB?jnA{ë31Nzxh40wpAPZp"=rqK|i6xSBwh%oo.-2r*)ŝJ%G/CGc.>)e?}|+%2-2O'ղ)Ҷi(_=ΰ'{&6΅bb#rlٱυǴhYk|:Vl"QjzğVJQ)|0bŤZg8c ltHqm6n[m/,$nՔonזRt&̷5zl_ɺ98ɩ &ƔC(k] S}SgGC*~ A\ d=kyrh1}pF6, L7q#q7IC6}1B`h (wכּpC=Z> Ns xO}YUN]k_{}UBZ pp~94MˉfU(6 O*Yr .R_@H&6\(?w}\=7,|IMJ_Q2-Z 3*w:N}nJ57bR"%֧[VwR"̓Cnjqʀl?@`޿YFiX$휓pʁVV|f瓵DZ# }-lz2}v3Fzj$wbѶGr t(ߟ9ٮmc|4'e7ꯑgE2 XbS^$orPI:3:DR^.۠bհ+s}kk6_SYN;` q[s }zgua7384=_I`{K?'DmAֶv뮔2ܸcl:KF.Բ¼Ղ qBD9$N"|ɸW9&e##@?ǔO2tQ ʿJ8(Gѐ2ʍ \/Q0J&c fnj<'hP6R J}1#N$1nqQ4-=5A|͈hQ<~&Y-\[feZ AXC@ `*cP}Q\k3+F( ߠ"yХEN>!!WēFSҟ[ +w3LfFN%ФJVBY=h  |mEI<*3bPg|-"<K. ;E@}e)5g* !"7𙧊$j΃JU?A=Rj(p J-^&Џ΃[ օ%7W]BT;cDW|pŪ3nȍ|elmhN|*#bգ2ނI:c!:W4c4pUK&ƘԢG[[?Q0t8J-Cc8y (Pc9m^v3}xkE(-q "d柿H(w|K9Lu1uSVR7ROz $ϏQxQORNJWW " ׯ۸]klhe}JPTIau&,-wv h$^}ώr ҽ.,ۧۥhϘW`2Fת;TGc W Cm60X>YLAحYݠ:EL%OTS0PTE&D#l'>.~B)= Rpزy ,avF t<3q+93z߀c}G ]:@5W׍W6јl\l˼t=+ uL79]&\+;CT Jh擦\&1b.?]gm?Usz|&$c.Ѡt[=dy4{črvV$d`,nrӢkrxe8:DSW٧BEPv>4﯒)9Qy_?eݑCM@S?#6?X^73 cvM%r:Z0Va-r"tИ\\Ufȡ% By*v͜ 1Z9DK<@Qo4,?Q%F|LW*16 ,6[K yHk쿾Аtq2G-ĽevJļ#^ClDg!9w}KJ-[4OWˍ1艶Ѥ.%|/hLQ@cI*`4rJߙfZB][s^[u"jÑcgCeߐˡgQ#o)"o{fBg>)A`[Z00㧾rJ :5_PRip %GF~8+xrHAo'!1unQq'DO9Hg _eDicPQ}L]8RJ1 DϴAރX#-;x8a$E8KTؓj LepdCyRmːi3nwg9l9_n6ȑ{3 f$cF;Ԋ6wb*zp\<m{ FNpIyLE{`{c0ϭdq. |of 0n„jUuKl3?9;PnMkX/ y&yB I5?Zm}-y(:z3`6/Zsǝ<0GE{{`ޚӈ#Xe= _GWhO٩wqpp6(ľ(dS-Cra7 !\?*& 7 H.M?00${Q0 :\&Eo(K@:b(`URÆP̆b0 @ɌncA^On@K=iyyuP@irӵ6oR.`5ds_MEJӦ:r3,Y>AyeD\6lOF~ +8Fȅݨ0ZxWv{^[ט4K Ǵ9A٦:.6[һbLc_PC 3@ h@A&Yl쬬A,!5nTg?{F{ pB@"#LAvYnŕ3%-ȡ<1~g7_? (J6>.f}hg\]0|>AUn1pxuObgOX&U'Tj>kYԾ u} c|hl9,}X M`*YϺ=aAz1~8曈mbBN'eS~doGc[Sjw7>o{V{\~D8؄-ieޥ`'\\x@PKp!;BӅ8bldfũ->Y:Z$Z%Z,IM3p(t(A-'R̪*v74IJp`ҷ`ϏN _B9]v@K1h1Bw5oiׂhld:#dW xǬ1xǞ:aMP9uCGk^$"FEQSDZ͊AOԀBALsp" ԁqp[CPD%VFĆLDmg6j:Ntӗ?7Qh,f(UyDcJdm|mmH*$wY UUpz7ݓT%?3;Jseav2oA[:GJk."11Oml$Ҭc\ҬEKձJ,v/Ic@rz6) Nlm; 7_P g#rx0%7M>G|6o?DKXRg6il\ 32K} v4Px `TxA@]v/vSPq|Uhxm{뢔y\vd[&=n E1xk݄\)F;`ؽܫ#.ٳw !;!= km\}bev|J7ս-JSaA\a}ļ;S8j$8#i2Y4)OIPJ%s)4ζI]w(gF+Y,;-*X=KJջ[Av;25lU) AKؙc߅me,j3zUXKXRe?5ƗvA>䗝n3N0AGo1S/8QςKl^d*<$<v*mY/ei6W c\ WjߏY<]hں~#c[h^_CA&!LNOHW) ;X11ߡ=Rp ~Q6Gzl<@bͱ AO=W)z]yꡃgk}$V{ڢUb@ɼ+J,Qcu 4TY'K$lPs/.2 1}݂$3J&UJq#oQ+@5{YIC@竣eϯklsv8d/Ub9-1p#8բ#+޻K`9Q4ywM9h/i`؜b>jY_8H9;l7. T::p{m߂Fpbf#6Jt/zKFg͏@X!b~ҊQ 2mÜ?A/!~(oF\(`ɪ&\E?]x{BD,fçmHu)q8确tS, ;4J~kg! utpe+NSQ@q^T('V3F*hYzճ'v k)%GK'hqߙJ4*L/512x'ҩv[jH,ʾGEn0RArSɹAAxa15([{ܛ aehmρJHiaZ xl8RfRvv~ܰdk80^ϓUā~@7@mgX 缦Oo?1 gHxPTqRŬTz %3KR JܽV< 'KOէO>'W"`P.@FtP ?0O:bgu 5RPC7iOm21ig#sޱhL/(lUf5QHjtNшX {LHu_>NKFlPK C3Cirl1"u"Wvnb]+/ QE a٪ŸLvVvUR=bw*ve|oEز ^wnox<̈́nv̬+$~VS*Ě7[&%9/©\EHs:AZq8^ƸI{ȬrsT&? 3N%ʇX>Α L,N"ASOE;I/bSD{c*arF⣬jN[D;49|m.tFb%Kջ #!?Z{n/c.l*ЛUfDE( 'AjB:bC4zFl7o壱2vk^j^P/GCcC\`;uZ޴]rҐg^'cs29'消$gL`51# AAs Ğ?Dͷ6唬& IP_x6QT 6x/Z6wyF[`Dl@$> Uvic, Y98$ ӧ}Dwݾ9v"(Jtwl+AK9oR0t0;KR4QW(T֨tga)Lp YuC|\#'D'X µN ,;=b{b-|KRxzTB :%#3 к𚟝N&:M˦¤KϹ-yw9'RҺR&Vɇ„R+]f|1TMJڡa[ḭ\ '^T!^ekqͬaeXr̬;ƶgq|k(\3% *mIg%wSA.CyײG 6-Ç:L&JM}Ict3n p)mjVmPu"}G]ɥfOU?9&*eӶpc5k[\l: vo*UٕX `1ԉׇoISN9M_;[ĿZrޣ+VԣX+љ*qc*/At+PT7R#B l Gu-NF}L`pZ=.p*t|-(OTݹ=*0)t8 N=8eK/L_*i݁0Gߜw=yo"_+\ .>fVM7a^Ni ,hFW\$Cg:n:i,XkT5#`klhtZV>ZY%|^im^*RiRP ^.㟺;ӥ0BmWqO8O;j7 R ^frqM'*VG$-Y ɸ;L bK;OL+ :YWZuN3-7OK=*?W3Q\XDZIն LSj&M'ň6YDkKrN`gGQ٪Anf;D"2MaN9v\îE+Cx8zDyǐnk"1R`}2&}%t=!rUE8 U 9t0[${2AWDNz9G , A f)=QfPs6", l )Woi..2<sP6왵OHi6mÃ[D=tX9%>6-0U!]q02_nMLj6P>39GTA~4\D?MLFk$BZ`Eі句beECvg󟧛T׾M6'MS%KgV&aϩ 9G7 c,s_FqO4e%*V{=OZUR k}owOLAzvGptؓLKy^b ˒}=*R̨ yx;/~9^I/ka;}5̳?V^ᳶFyM:[Nc*>IM&oI.仡g & MErKNd*T*w< {Plj®H-(d9hL#s?)66YF+acN72 x6!UEs69:Zi%W9/}팵 9FtS XoG)\~#ǧv,*ֽ'{͋4rNU,B26 ?~665}ayuvAҿT9!b*4;<T,v6]艌v=T'xO"l\LcoJDpw«<UNy-s١.\d/t$x,̄srQ]&* _ۧhwE*`4"B>o$-4%_[l_ aHeB 7.%}aCo TSmW^By Qӧi3c6J7' qvy[>#WN3[ *.^Vyø<>كo&f&%}PdbTbZfzqk/gi~҅yʮ:0Rs8(s RM_9Ҟh}X1_}L |toɶR_䳈19\M qɠu2z8ʉ0m8Ҿvpnlܟ_1:D$$¾S@v)0!XTdenTe"/Db/,E/{$M5E9{fpBEaԬ`p=ϒ,}jEu8&JL\,Wu?cX3oƢ MC=!اEy]1~/TҴ I7Aݡ@U5b(ɦޚWw3fI4so};ExEiN|mRl=a5ƽ+lw=C A{l4|nD0 +uS\NqA&atI0O7O hXX~1NO~m},L%VU{wPw|Ў9[sS11iWyi*O7W˶hK̪uV{ [A5 +~jgBR$(#zK$%c?s m{e*}3`Oպ bߩҜ3@H;xΤFoSWDjS+2`޸ `.S5DWk+n^g2'z8^)em:Er"=*82̅S[  ʿ!:[/=~I8Yg>(~D;ӹ9^ ˿"ĭsjNAw-K8g!(z*8Bŷ!9ِzԤDJ?\􊻔ڍ|ƧA5+!~Sό{o! tuEH[Yy=O >\+ t4@VےN nA`9޾@{֭J9 f ύ\d$_s$E]G /8jӰ Հ(M!TpfsGV*_:Tƻ~0k^) $%H-ql7n$h3T1Pl'ӽTяײQ7 @#|C%5eP\lLꌰW<-·xLlƲ;GFAWC7d[ȕ_-IASo۵CE]i{T`-5TRJb*~McmNeC#?@/gQ-I_)mm:oH8®ӂյs5j:E F@V=. ?3Ǿ(&@_րab!_ké/z^Zذ Wq~7=ԶQ ,!g}<1-B?ڇ2w=0k05P,Xԯ&b1.`,-x}eזm\ɞQ_v*2a2;AK\KYΛp6 4GUZŗR#G/{&r3=`BFvdcR-:a)ĖJJ‰6zzcs_^UW13dh/$cv8)BК6U|;1jCis6eE #Jf\g+:̞bY3K#m-Ztއީw(J|ea)avn/'U֩^(!{l;=@h(, @\.EÊM}\o{6! =O&`%pI?LyR}N뒜s: {6\࡚2ĮD*,l"rcΦxgx#b5>hϴ>fzvQu ]yN.;#B=q͍Ba5+{BU Nd4'R"#:AL #•WЁkGoUG& jRǮ(fഖB7f52}_ 5E?[}=BW/vTv D=V:UtrS(p)g< F:43R+i㴘K?G6)Q]L_ю ˌFflg>.0+-6E Xe*ܘ6 aiFMyKW>FYNQs_W1ܼEP3)w nI}"!3j)T0_-OZ%sE%Og~PM=$:_eN`N_[ Eѩ{zd,E~HydBz*o?xN"~Lt7 Ww(Է2z&'. w1$mɡB&', RaW XRtɊl`Ny Ѵ'76\zUve4/A{7#l /Uyb$!5lƬXA0i's3cdzﻞ S;"ˁ2Pv6e%} 0[`Q7sLPVFޣy=DlϦ8SFW3qE2b R)WYv Kv{|tLJTWf>:@FUo7{;ۣ,3`-{5/'xA i$$DaC}L*GÖSdKAaiMwh 9fz6TPЏH!{^Hvѳ@JX"&p 0R$kVOL_OZЌ"9nE"vQ~ӾۡcSfdoo2+O>lSa]䆽p4ՄOΐm'^}')%Zo+{\+Y o~Ǫujo 5yҀfQUO猪R1dCthY?8+̬˼嘼tlݯkhdY ɖƼo9 #{c8oul'4O3 9SDʲZ!7k7Bәrթe)pD#^2lx=A@/P= cM#;ΞV|_C2k[U[ $z%Y͖gp ;-y(qZFR 763+|YF ηVT'\]z ԇc[Qʴ3w|~}%6v`q/ mV><7H(k*s]fCT!Lj6)&q-~O5RUǬBs8θe )6"vodzx1G.,7xtۑ k"Rۑ:jɆs$ǯ ND M2u+ b1D)6)/~dg3Pw>sᄺ㊲h7D(CPzo+>4SNʿ-Dw9og.cc( ĉّ]:^lsxןhbd^[P`/طd^ 20L%:=M$CA˝|,~22'鰍:su6G(Xzf4D{8.$$LQt\6* 0aX[q􊃎uKo Z4+G/9Ï>׳6p'2TRB̡B|ӾQYpҵIt>ô{57-*h 8%AF`f3YCLO$tY#_'d7l DWs51D"TDo9ىAޯC*sc*{խZ:C uy gӒ8Z?(:xr>FU2>X:e`Imk>6*Q+"?Q+(HuOf(I[; Z7?(_蝅 pp^xk4KEQqܨrug_7\tQJ^CNgݺy}rSV:+q&Z}o# s_LB,j$nTxN19(omj?=]h)6N(zV?2ݤn׺dMyHDw푚\_ʧWՍR2/cX؄(,oTS2G <[\U ϩ@aS>VSzZJdݮ-`fEM?NxqqŎVUɤ)w#4H&%EONVԪR#0QRyc_ a`s3([`UOe*gF5k;uIqN*|Hg+3cW=Q3aԘ<6CB;/aј h굃5:U:0xP(0euk N򣂓*h]P-A+fY@D:ϒUL&5,H\D{AKxHvB[V qdDpՌ;iÌX`${;6z_ Q50luU']wO MLPxV\p^6K$OLQ< !+Ti4ǰDޙ7Un VΦqQ:TUnZ2I!!p~.$ws1~&an]Q4X'U0CLwnSY-7\ gE  '6mՈ }ES: jR^'s.8&yM ޫ~?ړ9 K=(I. 0v2i)CFzqDOQ ZsߺzUٗ,\aV%8"_) M9bb*<ْ !zH1 D,uȏYZ%NB/M8[2k;݂oFpMR !jV3 v]>G~5qUdĊQ gӂTf2 qWqzXk1Dax*fu,$@ӆkEs,'+GAqDdr}97MsS#5lfFץs]E,7؂JMkDq휠;wfֻ]j֚`j]6"S"Dqt̬tK7OW"uLp)ABL~3t~`>CnWr\r`/tD JU5d| #AXlbP`ݷbPmF?kESdCtcK/gjb'0a.S9ijբl#l.s,(Y)V(D:|Ĵ9|ȏHh|.ەךǛ EEuwD ḱnBi/} =cG9.HBOk[h\ -T8_`XnC36'$f'a1TzXEJ{9} NfR%*B~D7 p:4W.`ۯV鮦6vyy~^q\X\Lgc{CD3ggnz?2wv^u]߽ 8S@4״ "_DGvyHקJ1 [m0UHn]}M;BXOŶ3N6a#%cOKj4}㽝QDRB1}ח8;/O@:H2ju3lzK7=uar9sL$wuԕaY܎S'{@VɌO݇'kZI$4|nR֧-?=XT}?FNLfj{V S2[ctXzBc:Lp\'*_; %qFIKYcuPEPJRbz/8n]ʉr^!R_ 7&C6p@?UE j('.KNQ3즠]S{G~\ ޓK*EEL:5.um}!l{ N26wS bosj.AG NM0j?OPpu?u$hs ҝ)Ǡ'HmRU[c`UA9 7c^*= D==l˘[&Dɀ_aԡ7:b[3k , \*e ^IjbD};YW%tZTw=2j 0,&T'@tB_W50B(o+h8hG fxv]HP [֗yb؎A<'{# J UnM9E-]]&cE>On( R6>mc[f|ia%H w|j3LLDbyfVU{as=I$J 7bAލցw$v8קaDv=w{Nϒnv S:)A4y8$'~PW@ļ2.x]+Bv&ڐ^r*.r Ux>~aӇ#z֡.c`5,ݤo⻨Ayj{t T:7c9t $S6?6Yq7e\S~!Hpҟ_OueCe=kd eA!|Zu9f kӍf n-bEH.Mtx -#~ gFës"Ġy/z^EE( @e/ϓ4:awf{@2UGm@㵕 K QL>kasg&)6ohN;Х2)=ĥHڲAv+18BΚLT'(2^q9N |`qe4R no 3i17*, "@RʚLv<\fFuMX$>Z79U0d{.YvDlg1]hq rprH Z[t]8*rKED_m_E#l)~'N-dT+M~I]޸>pJ}G.4΅^b{s o BZkp!?Gh :_:FC>-i5stHf_gϦ$!SlΣ:qҫC߁2 _RH|h2H jIܠ2_p4ȳHs%>U]l|' Ev&[ PJ TcZ*uuӡr&- $]Ͱ>PUZt2{okpB%VkDZ=tbuG:)讟7-_UVK 9%w80vR2ԣ ik6ܘ>}&^u-*7ۡv>Wc;刷TGJhxC͌'KOSrs"MW -e"fp^.Cj=a,[L~j&[L׭on&b܊2P{f^@Pvǎl7ݧG'ݕ^ƕE0V;O2 =;XW[3e&VA_eOAȋ;1\dw]v%Lׯ:"U(]Tn8Lq2[s,ۗ#D0ti? iS، @;YlA 'څt?>W6\9*CZºƄ˖N1"\ 4ɳ*?ft+OsV `E |rW 㞰4+ٙLtaђb "mn"#,)/um7X`BȆ&!l_w#v|fJ_Ui B|ήE]HtcHe LNed:,a9߶\ҊVMw1HBBʫ> Uלζ_OAG͝?0_2)LEϸB+~yOds:ʦ %T-* |'TBhӼ2eq;14ȿ`@hv(ˉtޖE؜doh];W'Iu3\J-?z!zf4-U*zT_xUc :LRT.!F͵_7:CX};Aa 3I{2y,<ȜZ7-|k$,`8%ej ɝ4_%@xf3𳿒1+"1&8 Gƈx8] AmaG5?ј`q3ДU,]*wYD\[#HK_)-$iqu I _rɏFTR-Omzt@)3<ϟ[;}d}Q@ތ-XoacqҢhMWa^?Қmߊ`EOu].YDVv@1ȑ_J[sLm|x%y6 trF]^;eB HK ͞ha Ȱl 'x6"#t:]ݲ[^Aq8+3b"Ü@ ӃF%|p#5; f/b=-S" f# m!_2.,z["[dp|q e=fmڝb/Oz8UwR@2JhqKƭ^ុ*OmX:4'BCs4VS.iAgS> Z5QBl\X7.auf8wˌRZ/x@6csd<#IOsSR:)|gT|*_ `R{[)/rh3K'&#8M&pp_SYqEYel6:Ïa[}dg]Y:*B0b2T x_n2ϓe[ht\".xj؎A.2^BbmQrƹ99w _{Wﲤ['\L7;zy4ǍP8 a Mt|7gtPT0@r)<[пS7ciİ"9Pyi*_ p^C)'vˣW-zՈI[W4p&eC]AX2My @3ă%b2 ' 3Iҹ^}`'WP2"g㔧u0E6JC< bhP-OKf1`hf 9h?S0N:[,EzM=KL4Њo)7 -"xB>Ã?L$f C~OaLH RPA=0.>,hysμ>"obz! k0y?awAː<6y94$sF2+9EmFT vIboTNLY6WSt]ӛA%ΏPW$ ӥ#K?Ғr}-e*$0>C6Q X@a_HbC`!V"dpbtYO msB2'|m`"zG:U>J\շ4.[V)5!x3kEٳЈ߆ha@[g;Et4ϑ+a xّ1!DD'V0Ĝ/9>AGѳ~q.XTmq2|y}Du cm4U|%z]xcM1lpp-쉱5e#Ua:u\MB~FY qaq[UD]W:@J*mIJ| ;@QuՊ!0 {D`i۩dKK6 2شY3(/qWd+n w*RXIeK28?JhR!㼑 ޷]bH qˏ]_iJ2RKRu`);nT|G]?dnCץ6ެB>lsԘ\7aY=u_ڔ>aef̮h/`뒫pAd1RK" ȴ:v3` $(Gk6R ܇59ӷkt r=B7 r Н?ќQ)ByO{=.Os}ngoUB*$m@=ڛSMmUgFnaLvw+3^r̓G8Vd`VzG#k'HEB]OyslJbʙ .ETiS{ՎFvZZ.;+*=JB, [4W4]O /bעH+(Fq&0 *sm>U{ڎfQuO hYd+`A78Ce˭o4SXz W#ZT-TI=\ ,\.q`p*9;aʔ~e '3@2LY9z'x8pzR .kCOn[J%&Pui*4i|i:V4=R,ܲWd_>Yԉ5B0 hyeU^ᓛ5͈b lt&МCx'̯aQ];-;O/#R.;7rlrQ=\h+U`Ҽ[9ꭰq!+#ٖ~gK?fK/ +c3ע%wdgZQ'!1o %Q +Nt1]y\/L`7yB2EkNr V0[\_LAO8 Gr9Y{Ho1G7v u [!D,b^lڷ`A|mtpzuR5̱@8{F@K. gpR_S؝τ|xgVi`_Zܺ'RNYooT DD@ Ҡ(-l' ڜa"j7 NU0 c -b"qͣ|oW]++Z͕?3*ubs&->_ t cR8(mhFң/T!񎗣pg . .Sqzq<[;4h|DHfB0v=䯖UGYVdvRV^\BhXVrg?d#ˡzjz@=]Pv^ɓ;㍴r(=r1x+&qG]j.tTz bbYN۵/,2yr,Z@Az8g?4f9 6'A52B|vqAHݦGI 4b;jWXϦ ꑙ0osi3e=W0}\&Pz[b4ÎiU>oj4dRl%vcHju²g#C̒V2szH JYWn;O"g@sđua})`dbOJe>vڐs z\tp8V1PaNm 4 Q jƒ&zL l녥wn!qC܇|̑RlsϝSM R 1+؅#/{Z)n;TC4ix&Q^xKXK6.̪!H(dZ~oašU%765kW`CݫV>v*gh9'p(|B1gL(bk!ߩ\5T|^t{ekš韽ׁX! CO 3y[ܓ%#=jYQ: P JRe*$w¤f vȝ9ӇdvA޳pq9{<8D$K!qYWb2˄pd!z&M3KŃDM!T0w 0xJn^~%>j%a V u;-g36gU%~YG1F,Iy.g6݁Mpif݆qF¥CHX(ς {P{-R\8ߢMZx6yȘ0ǩLLLBJ=0: 2_[Go cAEu`Ϯ׿"X#ji uX+,UaFOTm @gAW+0 *م:3.n=>ӥBxWsbߟ *ɘ,WOɳL~ՉqeMO[Y@-)`yGgnz`v躧!KؒYJRf؂ ~@avwҬM0 ܲ&_ilYeM \eaP$羨f%M6@;OG1NA{e^kB*ӹ>JV{sN!lmsYi<zs3#IhQ \Hؠ^@Mi'j<7i~e0N8 mxq"%+!+<sB35sLܿ$!&.~ 6լD 0 sjSiZ|lx墦O VI m~^^')}3( "+V:K#v*>#f뉽ۺA,+=(iE% ʵ ἵ$PYDػ^|&}ng;k{voÐ@yx8*E?dL ޚ(׉Dն=r%Kð~e eCɱݭ&ӸG_DJaL]i.E3 4 hrt#u~77,׈Md-j!7 V\%L6ҷ`FĨ0cJl ?2Ca;%~ s\TCm=G=[Q*"7OV@_J`6$cns<[]FM<=.\DqۥZ;8xNɾgH?14XQ*fHRk;ǜZ!Gqlatz/椄zl0kjl:jx$Wx~q5ɕqAaoZsp]i#n(KFIXR}WM^ ϒgJGp̭Hk(Šl1!J}8|W2S[M8H4}²-{:Q+;6᫤AzH9ikL%ǓRM)`3 (EY 3:Dʝl_/GZ~OR"KTC/܎K}Nx[_{*:+Ƕ],v>/A$J3ԫM%@nTw]b%+gY,-:e kg+!gKrQTd[ aYLQu[/bڲ=ΞV" 2$i%x ̙[d!_!+r$a" .cطfޢT)鰆 ~eR@%ǶP[$8qײlқKhM=ph6~&9!HYY1~j1sRB(qyϊS!fm:L@q"Vd͚FLtU:2aq^B\aq½e]w-Qvd?Kp'eY/s i ;ň7 |bZ"pψ$ ?^S5v3u{qɾN\M37̐H}tYSlX0 E+vuRk)sجe& q:؟Nw";ibnRGB=1슼QZ䭡KփŌiJĈg%*2-[&kezZRO NXMQG"yͤ( k:!J3 ct\_WI\`8.*;k #KM9t6텏q_o>Oj!)5_BS=Pۜ{`uՀ$=44wUY3~&pE=)D˼3m-|\ڶ$_VnMd70u=t,琠%@_eni*RǣI"?O v8淤[+A|7K0G5#;v¸cN[B5ZPm:+231!Pk r14!p](Ϳ9]#y:9K`Dq\|R[|(T@Lpjh06VlB(8hM G4?ԛAP`zz #fYdX˱Yl[Η}1s0geSFl%7'; iDm^iREVw=>x H=ב%+QD0Lc~H^T+2g$~/r">t V+6$;ܲ,6{{vB h13 j!O* ''KGXut6"۔#R bހkLJHL{ !AE&96FX.~kZ1$ž+rV9xņ˶:& F'Ι~Q3uIddໜjcKfo3wTfqf;Ą' f0Wq㱏ݒVԸ0=W; ҕQX@-W^}ֲf H.oX8ixwM`#r{І)z Ɯ:/;5قNfw f/m\=yT1ZG C@d63YeB;L>(JgO9җ*j@L>χI@(خ? B}{ńije;;QZYOjQr;ps].B]8`̟1SSe9}H|+4$ru| GS85{;2lz7*zeGfz3 ڛ9-&ia'y+V`bI[ƓRMgu#5 Oҡw.=8bEeb z !QI7DbHqy;Ej3b#M ^ v9&{=W:+B'S{RB6@4єAoT+v$DP<;aNvt^/<QIuZ_|(d&F`gul̑\—Ӕo^ĺ8jׇH6lS`[P7IT#HL*nC񩊤W?4!FB㟤:o :R.M#bF^U$FTMO2F3SdI~5islgx~݃ O-͛ ,bzoWbC&\JG5>ּ{UNe<>``Lf0=z sDab?E54)ʑ~de.o:NYyX MDRMLuDrÇ9=FߞrÔdh\H+w޿8EI |}?Sm%7k^c &&(Htmb{1ƒdjȕhY\:(/\jo"_(r–7y11qj5qڰ_!dCK;5K";;Bl4tZE* :.#K`.(`+[kNoEbl' sNѹ^S4kicu?6@ܳ Ap]ioЇ]`ϥCaS1GבUfG=$ܪ` oge_mzM;ȏ\/& &lkj~G~'d(xJiJ8E*wꖍ]-,W9kmV֠5!Gl)$t 0Z:!x?:#C1ƊWYԉS$Z,-KԺj #:U4 L1cE~&Џ@;.Tpl[0XH$ iMQVD2ej+ X(wEжX j=M<\|=LŦΡ rUD/Ñd YU&U#qvL+"8<:"cm;꽬a:{+,{yZC%p7u%z~TSQ9<ˢXSzd~Z?!"wŗYe !XQݼJ3IkLp&nןw)R U}DQ|E o-=nfܕv7"Qϙ {mQF D) t1(}fE#AmzxFA|Z` vL?p-c<Ӱwt(`+*Q&.K~Czǔ!=ٝ9K9L-c_p pvEЭ6mNb$Ţi"{ o;fqz2i~cсn eh.F3ôW^!ԭ!hӞC?O|t#zqIl'Tܚ09 .h\ ;[O(s r2Hݛ.w%yhv YvA:u({Xoz( #IuePt nj^,4Ã(e#N3=K虅l'Ű&0Sz85 sQV )7fbssotL$YPd-^U 'Z21V*ŏVqqP{]~MsOluYrC;Q7.j oJ# ?L xr8ɥ=/Φ'ϯf\Ok;VSיq4Breӻ} qMACиڏf ^wNz'Lj)(K%V ϱi*7Ɔ`~Tt1zTkJUXUڶp ( \Lo+CaTzCnW]⍱%heYٛm^t8H'$87C _ ~ stzCf'Y.TLDvnoY̏DP'fљ$ᬉXqosH40gY_[3j.YIUZj̧VZHVR%COQ$y1BqmbG+Rg_2V#_S,\ n.뇽ۜ'۳ڣ fiF&ȸ⯰_JO 6 w˶Y9-oؒ_~Ls7Av !~sk!E4:|!QubdhX@o]ǤP[Q#S`X%(V~(ƿcZޖfPxoe7bU40ЧDRQ BI|mD!1^hsu!_Sj VSIS5U/g%qg:oF 0'qjk`aw ]"U­L?87X- 09UKQdEާhutoYrFG l+{mdq(B ] z&wd!wF=j%o9 2U.&1H<'EҀ[ĈCarak};mՅsb_3`{Jni?*׏dE!ySg2͓G^ "`$wS#EC>K +*6o-Ld\~asNvEdo .. rʵn4=Jvh}cc[qmHbqI`PQ{S֍:nukf9%*zvNbScC=N]tQL_tOkQCJfBBЉC=BV$\ -d7Q@gD4s sd85(ͥ$Lǡ" 77e2(0WA'VƐDҤg\+3*ϳt6mq6DC\2R2nnW{xowmzGIMV+;vM+/P\_2~Dv]P%`2it;#k>ĵ(t1̞|4:oJ N߂U+r`g G-ۢ6[(kVƷ(LQMml?Q B[\x]u 6!JE18kшH1+KܕXuKeK4Ʋ!7TDo%?F*eKt @v'( /`ψ|t,E}SZ0, M8ߊ.;1c]Į,Z|x78ι#rH|q* =Z8̀E9}&a#5҅]DCضVBn+$P~\7?\@b?bz'#8<0$ T;KAsL2<7㟿:MMs,<~fHz]5G@fy ^"2T5/D oQ-HLqאZΓ7/W>txW*0Tqu VNIX}Q볯JHI&{ܭF @Et9@g rJ눛CA"gř_pʨ^{>5LX?ڕvWb9<'nL M!F,sj6gQVtD8 p%*hRs̥+dvծeK@] ;[섅[Ӿ!0cSujA3l4 ЏZo 5( { 1Ϊ;DG!h95ʀĶn9?8on;9𦗯({{@FH9a/ hR(J[Tnp"* nCI6._ ,f 6+79jC:lR{NrOek!'>T74vh3ZX^ϊb0I'J~8_r‰gp},Z^inmXPLEMCPnSu=Kf͢/V܇(TUMچCOHMK=ם&f3QiLWýf ǎlla8A.H n(sUmE<'~fW'+Nw> )5wrTsE΋+7ǧG|kB\]7rzՓZ~ECkPUC`0}=?GSľGL[{Tх%bi (wYGt*d-d+Ǿ. B ^.Ҵ;?!'T^iRJ|[vuLM7Å6eebvp%M;{rP@5MgYjZ( A>}h xh ܇us,as@ޔY.FSWgմ?6Մ <@mFuyVbgǩھ? rPaxd Z$U5?>;v+"`?e&WMo|p b=kvUj+ߵ=-矛 HIMOk*_VI0ELc8|lO.lkX7$m׊#xD+1`צk{\Z<\6s.2?) 'b=rR: Ф9K !%xR|c[:%5gI鍋/|ͣ )1 *3CMxRQ2yZW}?Zaf0KH>+i,{~ukkL<~Q2qG1bn:ifѺ[YpA lն;wy[}pgr8hMw@m($r$>1PW,K݈Qo,vLҜD4ROIZ&pTCa7˼r9oo@~ZR!p3 T{,p?E8sLkɋ :Q >>tJCDѹ=E!G!ܶ!.exߊrz_N%;v7q᧷;M )Țs8꒿#tb}،]i}e.%+)UIVGbH.dXْOY2H-0߰ӌz~Gp{=͊6/ |T {|NP!j`c$BZ;(L*)[£(i?ԉ] .PG2][ +vnSWYeN$!יsF` ɦݴz8XĒWJYwPNZ? e=?-ae7De?SJGv*8ᐓ +4=E%zL)pUՙ{؝q.M"KhGP,j-8Am*r}ah2(5ŧABtMD6eM"+/ 98w ӽhhE/7Cn?x$Ɲ %byڂTn/0៎؋-~T8μ^4:3? `mxYO1ǗGARD'iͲhwF4bgpYi $|&<T{kѓw#k|.=)v.mnnSvFRj!>:&^.C{C{'ywq9vce EewnNY'gǹ%Rς&0Ƒ EN~)3#Uj"Ru*d-9's8Baq Y!R .z,K5++NMqqT% Cxy4p~PHw]*^IlZAU$ D5;./)$#}:~3}2;|>G[ǴPp]_rAVL/;\%e>0}_ l/lIRL+NCj75|uQO0ɰ?5,sSFA  @vEa{p;ݟ˶a1a>q80I'YEI1y&X9򖢗l;n[gBSv[PtFawf} z"FkPˤ~a)SVQSCt d]V]2Ⱥ1n3ORg0rWGHgE /~y/ځ{ /7S V! ,㩽}/m:k(S~̪6lV~.I_w갈%Q>yxy8]#QAws78]TK\=@\mTz# YU{Ik;!I=El](H(h7 >a O`UҎ*aZ`csw( n߳sf~H8sC' o IBF?{(Cܖ! ݻJM_5R=U `ʚ𡰗qLEz&('U*;P߀Nq^ ;TYip]WR0tyx*jM%ec 1gE-۬yM)aoSL3i#vOcSc:qb&-Gjg˅")fSdJ#:O*vcL&I<[qK QMItLQf;6kz.@z~!4?\hNdRksߖ/s݊ZG21TR"&Bih  '҄ɒ҉3Rȁ#{ɔ 氵=YISϷƦ[5bmXd*6.񷟒zBeg F-=`ݾqraŠłWeJBi Yn@ o؞CXvփW<_)l.U=ߡ GmJ]?V aNd+>uZߴ/2? %uxA̻ٸ^c'K>U̓R*=z#ux`kZ%J ټt%HYtإlɱ]bbm~ |U .u/ZrܞX¼v8# i]\֬gԼ' ڼeZhTi&u2[;:ȨȲ܆z]/cHQťt=LdL]Ir */[&7ȫ$(ΒBת`}"/ cI#ͶY7Z CA!)?/\<֕ZB("w1+Y-jN:0[4fFvM~Dme"J Xă0RWӦG>H-#Ja*Y9E Y\1]Tg{bWSX6=V%μ2ܦªbA@o8("v)I7r-ҭPY䑷۠[Zǡ{K?vNp_%JE<4~kStF W"=wg[t%H&:L"5}#Yƺ4i [ 裛7曳a- N'=:rMy8< GA9 fc) TmfO5E"Far? s:;;EM/r7~C*0s֍M+ Ge ?\À_y<˧ EYL+ .wSuU[B1Z)@ p sA<0Knyv)Ơ=O7LwFA)D+mKm8y\ pY9nPPx1&ّPx]=v5ŅP_q0Ӌ[V1;PKqxnlwF HEk94br*Sxֵ'MB`7&Ʋwr%-afy<ܧ%MVzB| \<B_^J;⥹4f `( 1b -tظw V$WPiWV/u2왻s=r?Nӗ>Ѻ hʻxpqPBAs,F rp>8I@9Tko֍,NL3:`8Y6SpC'k5u:!U- 6Ϊ>ѭ*e@Dco@ȳWq^܇Ow5bk۱Y H),Үc$g:)tݟeS8pQL(2ƇX1"EBCf fmq/.Q1[tkbS}󻖘}@1_r#}0"p0s#p04)֐}kǝI)I70,IКqϭe0;r&uْ3'YZ B2[ _DZvPt3KiU]96ԌQiizpd4]aWJ CdyRFy/vl!j*;<>dboTc7Žy@ #9a cփ ,b_(?|AH؍[y]nE! CF 61Z/4"c2 sQ®fA#.3Nh2X+MEу "UɑQ]=ӌha-t^. 1h;YMth?yʊkG*u]SfHSO1|-S.è|z[{n?B"B!;3VL,)Zh͘6XNL*0aMsΰ ]lfYjC|MYZ[hSNܔ$pqkYΰ&oU£5XkX whfUъx#qZ&ȇ4"8w50qhOġ˱0[qsK߀Uf@p jÂf1r!%Jpq!W'bufra{AK2H;4XT-4\Os-J|P}".wC?,VK3EVL{B2tezIN0xĤpxJ0܃.̴^y*|4w۬_!V}8ğJ>?0˨EtZx^SK(J5xf 1wB;Ws lmp$Ghi=;`r~gU@R̫ƽ[#JUW7sBWm&cpݘ Ers46bW 7Mɐ+n_Ah:5\͎F)h u:K؆,Y%ܠrW]樂ǃvKGLd/z}ީ) kFzJdVzMjp⎄ū:8[?FҪtj -v( O}uf /NΞo^tTn Ҟ 9a=|wO#ДK' ," #pJȓ&hu \$0W1^$A.}*<{!Ϟ~"8͘"$cXU:FѡU$l ea֎mQ >'A7S"X@O;|6gєjYLbXkuqe=iPxij0CMa նq4k 6B |PtR=Y?ly"}= 4ExA ?埼yNu_=cP*p(@q, K꜃։駈]k*`k PR-]<]\mv{"w]wO0 Ԍ%X<^ *B}H<6< "U^` DjG N.jypOnQqPJkҚ uڀyr[."B*ܤ~dL()wC7qpyWZsMJ.X3) k>Hu$٢4}h4V*;n_;\yҐ+cc&/3m5Tt N c4U?;F2b4>0JG,]u&t Ɱǧ;G۷` hQ&Zs'z5X!.{,*C;UNRttx?:ܹC>%^T 7K.H=Rɴbx^='pvD S<9p _5I(}v*'mVUE .lwj_)7t[֌o\`h@)?\?nnjoXz gյILA!VuG8e-K7~߼L ʈj.d=~:RŖbw2[ݚ)y%y5X}؅؀o[^/vs 2Lxd}c/F r3@b7U;:V"ãrJs@xl|xԽAsz10Y%E y' yX )BG \S Lq0ô#M3-,5]Nz]V>S>Q(xS!>q!ׄ͂e>4d6vQ̰2Ay޺sT<ԠP5 */'i겥['kCURa6VQ<6m5Qh֏d5z96Ge $89ba&u's`1rq#۳POh㈯3jup%L܂: 1@$8|i-Ս -̝@ԯR H4XeQ ݛis.xaaE?^i% _D w)zBRO@sGߌɈ'τg9KoL3]jDX-}^ͥ_jȶu)?eEў O(dwnQU(j~5s#kPs. r_o9e8SF5|Ī2ݺC=t$aHq'S?{c "9l-5pݯBWu+2?1OΊBoŪ&ifhFFQSs //C :%2}LxRf 9H($[ݔE9_V@ lN.|5wUީ= _zo8 eA kUGp@w+4Qr U̶+‰N }R/z #r('ُtH-  jtL0.D0o'^J@gJ JVz2oKz E-3/f@%2))u{h;tO j'^M=<),IKq + 3Nj™.$Au ٩xpI|Br%w4O|m,+|g {UYK4q/[ibbM_i7[w XcG#0hDa)\d9[&7|]1KC,7^oܭ?kƖ ZNI:KWAF[%<23֐q4o ݙ9F&*ڣ9~s{J'.M)L=L;Ɨu>Ƀ*ÆO.|n~F++eCsc;2y@ifi'|%ԫ9 STas%hr~S?nq\MB!/ 91T6H?&*s)b^'Nޏ =>}@ULz0ùN$V?D3aM/mA|ڃǺ߽b \;nT=}NGK<̊cp\A2nuLꅡQ y㶾)Ҡ\سm^|")b STh_Ăf\\!\wyՖÕ@ =vK=ɕ\rQdaTlY0]n}BE~tg /j1Tff Qgibgc_ü#ηIgk?:'vb@)|#T47qO4a ՕZυS`)Ȼ!:02X7?|$57<~wC.1?KXK ɧBppA>ԯqgO ueJ2X<-mBe=q[Ӯ YN*{NK&X|:,8{WzgZzG#~' .ĦJV8ؔ!T~'g!0O-+2]]J RR?F-miȰ6gnnT-F3׽;X(e~`w ֽ#dٳmF%YJ]4c(o!<_h 6FG1).z ta34NÓLc'=R}=4 548v[("[cmYy7|KMUb,-gܿnZfSrBjGs Y>NUP خy?S}e ĿSh(s^v6K|^L#,GULgs3 ^g5[ Y"*lVt|QG19;Ԓ:IB7Hl|: q`!%UJᐨJleK2]& ZAűo)ifgipE&1ji #L^ʼn'FNwW{5fZ̾ѣVS5|LubMOgVNm鿬=꾂DbǢs*4[Ҫ]mMrt$d" Njdsu"%' !Jed,2irˆ!OA'a38q!d'c+h*2~z.5@ Uz puK mp& <^Q4y:rwt[:\9 SAڔ9רG>jT?D>ryKBoklbf+l]_8=!0RnotJ >ř;21_7A(ZMoQ'?( 9gVCrZ4[X^?~ofpD-gK7[>35M|lvT8N@Usy޾ Rm7<`7ާb2[% ,BYO;?8(Y>j9;xxI+|x{8/x7_q@V&u7Fj@Z@Ɠ2j2Y%aS;b/b) Fzu<9{ʑe[. p<'<>Bj("Xk5͸عؕC$wbPz3I_<fʃ8+ @tG*`mRAkG52< #,WY+S9;yvKX|1Ö!#.4w1Αߩ۬`tX*}]'=yؐJO3u݄F=Dp tnCQ+lі-6{7E 6>*mW"06(~: [9,&.уV)z&Ρccu~Sdcm[,v'GTE}rҮat&6fu&?\g6Gh ݻ $}.Ϭ?q*s#vT(I7 X`EaÍdOm40MEYV(.\[Vz6/ (4Tk\:Y<_J`cs{ 6x"uC]Z,#`4|'Erz(kBLs}rߴs"k$m|P$ xH4|^2PY[`Jg{r}/ Wј6ds)0bU sjƾ#t X8P)W p{$~9eâЯ;y4!&zԀ?Rp]_gFў9L($O퇼K5;`xv7| Go6ct`/aҟ|Kxm.1'V+' ëF(+^R\\c^HG$#Je]{Sgi.PK6G%?5ň3[5kfTnP2<6*7-!g` Dr#aw&OV#՗[O'uQ7$r=> 3e4~EGCNMֲ+/7m{V6&ʅ*ѱTxi X}@rGpDE?q79=mAX1] h=,!DUWT>ǣmBS T75CKoUbnmWNͣJ 寠Q.Ap pWs~Var7nGq{ tLJf`v#5ss>QE#f[-mfz)ʝNDvM^)y;iLjxv`M)8 m,kjɕ?j`иWemNc[ubH)7c)}E's9 6ͽ-|}톊BhfN;{ T_RLaŸFXؾ k-|j#'q +* *N?[\9Nb0Ƭ.\\fɎ"u#M[0^$9 /XǴ`hܺ:]K43* 8o9z'TZˬ)h]ࡱkaf NT WllufuB/U4]m f Y WC_%T,(@b:Vל(j>خŶABJ6[1eK1 H'3qs9&ILVDդ--D[Ik֟ɰ_X$I C Ȍa*V[f\P2KL`5Վ?D B%"(B ߫TH:{JWbI'6<+{3]䏮0cbT&=O4U!c4 uQj'B NKj: g'5[%; vҟ`=6p Q ҅vƽqaSe| {1񅺛HV}D)'[Ҩ1s슨ߍ. 씵 ȱG#'WD `] (͟+hD]k:?魲+IhXh'Qi'W {=,7kTʑ"1d200[zpc ^pVJz qW Y4։McjPۿ=6|]>VjGA"T>X9c[:DQ:aW;JÖ'Av G9kYB~zj|饖Og(dV!1I%Lt&>kʏ﹎;Dvdf$@tk9- N~D0%/U.~D@d* ~iyqsda59!ĶV_B_ [9̚>6Pˠ0 ݗ8)jx2ಅP#ݍZiM&#no  EB /Ԗ8-vl:ʞ|ۿ}yr< u|J"7uG[|Z0CKTݤ#CcS֤_88⥟8ƗNx%BʏWX\.- ~a÷Ѵ=sp)4&͞W3&AĒR=³}/—ۋEU#P*2ҍ5_8JPV)1T!E\,fmR5>8XrŴ@VKz"ɠRB3Pr#LSՙPCzEun.Ԫ8+R ?P\ibRGB^?kٰ%`!p>1Ybs3f@"?(5GҢ@AȤb7VY#KEc$Tξ[$]Pouo^k#ܚά^1yh)ɇ-D{L`<,e/|+'K l _@9ɣfa91pr@:^?*Į,`nOȘ4ӔQ8)UU˧j4p}_1^dVLUZ^4퐻 INiV\RvrQ[aٶ)PD@-(yZm?8WTW N†yNW5ښ5)_z ۦG#tDm'`o1ZW=۵>Lu XKmP{@N p53P+"K(s4?k..?^A}Vyk߰k# PǪCD !̉5M祝ٽxx3R} 0 mVTvNy1M v7Qoih3QA*-G%8EKXb'뚠W .;C&DV>5'CgJ8>{$2T O ⰰ5zEsxǀSMukm +͹#m`%V vuv([Eߦ6 %^pEL: V\3D/#X|]y s,[[꺯"?G$79E':%h :FM+fu8mBNvL<)QdW`/stHϻ'0yyuDqYF%Pq)ʥLs~sw.yWY-LϬy,[SYKvzrK{PKYjӬD;r-^8?m$^RAF*cfvԥg*va cc!;]Al"JQF˕xyuHOCQ q[|* t*ŷ(?[~TЦyi}t^ $@]{?+xwo2, MQR͇͝v/Bb l[46qQpʁR.O~)C;,Dv8y&|kmNSזb71QyaVpzlU.di(f2ՁŸZ{ٌ6/hyi J>HX dv5w]GH_1xPے9{DdeSHY@my&'pc,bVQg4U/+5kN /s^;zZ-2 "}<}8eY&S=ͤdp ~f7}8}2[Qe5Tӌ &n1w~joAuܾ!z/1Bu&! ь-l50c Uh)J$(DKgPQh &rl6p9U,qǿoڪ:@ +K]r@ǿvdm9tӌ”(Jne}roS.)4-GS4Šm m|ndK2?*D+EGV_%lv 3RҾ 2GX_a#9'.EwN ۵t 5Iat.G6HtRF:AЎ߃3bYk4YPk:􃕩s~愖 X|NDgIL$ нwPdmT10H|JKe.Jh6NL:[g*;Ϯݧq4P$0';a3x'ݡm A̜oysb Paw= ςr_+5̓-Ki3 qn;Cr}6fĽݗۚZA+d]㺏WyoSy-4SD8o5v݅A1OzGO*b7dYH9%#$ՒQ.T/_m:k#},xoCU5L:i¬;bPZdoZ0Wwtջ(xT0fnKGR3 3w_3lR}'dH\WkD2W6f5qW-hҰ-d7؃0CxIe5!eЉ+^:[qi-!Y@Tp >&Jl1wI/\,r"rMuFce|0r:>Z;Uw鞿F? pks.Q D9:DzFtb-qcrO/d(fO .:[-%yn*ϭiND!RIHY'#PG*IG| _{1#| -%=C,)u/NNƈ{f Ƞҽ OE\":ztYVeH=f|5ľ&f5)MF^@NJ"4ԧ^c|i~U]tu %Gυz,nSP_f~,t`.m4NNA!AI^]@[86m֐(`T^lט%%aϮQ$T.s 8Z?XlEtj!hXr+skTYeo~sWlB=815G.M:߅GD 5yG|P>W ~o7 IX0CKQ'] d7$-$%{M6P䥅'_ܬ_35Xl,,E>*\cAΒ)Eh UmOk!F(MdO'qG_hxuYW^!h~ꕻ~_҉䪃^|NXɬc\/a a-{;TDnxKnqժ{ZKRzw96pw#H{z f#TN8uSOga=%R:)'=Q[zQ͚]^WqmwQjsvOmGS kEHptvW;I&~= h#gh^$m[Mģq{2 ?yPtzٚ!jjFu l=M.>kvu2ahZ[2P lR |kkYӦ$rz0EmAu%q)L^+=Q"*qS" ^DВgOZGQRTч1ӮqU I:I}!4üoq!tGD7L൑+86%Ky?pL; #.P41mS]̢@"!~;jCz@e0'nI@,D,!+-@2`plm| AO&w}aǶ'AzX βm]ұۧiJ+ehFS?bۊZ,\5t4_!^R`q4)bN>Ǝ0qnCH2[i' C \#7vqβRI|]D֠=W?+2!M!{qrDvTH驽DCau')ErgW}-ͧzIG55!4Y EfPQ VnSqiXKX'+"JchoZɏuwn]"9QA>tc}v ⍱u] :T1rjn BfxviaYBz9 IF$$|؂'縻eD\?ԬcJ|\k3>@cѦ;=wwY䕜\?Z 8v uŮlޝ 6Xf9ձ qf(roo3R) sUkA._do'FyJ{-tuj.İxK0ԣB->]CC=uo75(38"6l p07`'#c7[] Yy hhh$7xe/ڶBv#8h"ez 2] Iv8ٶd br#Krq_UAH%Nk=2F(Rukr(' uV\[ "-5[HCh3"p~*1)~g.f9NWOjI~íAH#.TevP^0=FTGOcňCnZһfR@0kW JlQsfݯo*gnE-,Ypγ; 9h?KjH~z_@唰.}1; ]ѳIߚ bbx>n= z byy8ZNIԜ%Ÿ `&ȭCQ|ںVa< a\lJBm4O E87KíQZǃ^u>dh pqb*'SKJ:>ZDُl6D^g"}qyT&@s) 9PŲ  | HEXz nP (syO,BDU6xPbDo+{_dRi I`{l'cw]6T0tGsj莭@P+G1N6kMTko#Z;mU&~u"u1N:_fp T)x&yʌ]>PY[%(b L1*(n JwP+M #vR,I(TGew&|Qc4o4 eoXVs " \adnĒudO Y뽰䇀 /yJZ>*k7ºv)>T79] A}t'5FLX %zwzU^SQe-. 4EQן!o#X`|b!3 c%I&$'wfƝE+սt٨RV8"OSTHdm{}b|.7([+}Y- ,j, 6z;Ƭax4DHBol:k|b/C.X*Gݓ Hmu1ZgrX_i1ҧ|,|/!eIGW.`1A&w\# %`p `^kYI6$#=[oP&u͏ދ]7mJWm ye[!occ??rVN &-t@\Ӡ!} PN?mb}tvj* j \K5 |opop,Z6 =bkm2ɦf4dO3 P-B?z>bUʋ9GUNLZcJ2E tq{J}Z$Q_lM8N)bRcrґF(ƴ!:ˇq xRt(mumRS%bT=x(TuDY!Gίdw;pzD1!b3'{V>mpI2IaCNmEEwh)]㼀->;Fߎz`y~ h O$uVǤpg9ьMoٔc?=иCxW3*;+ k ;6 P# $6ܠ/jP!P節 OOQ B fx`ʬߣ2yax4`b@lP_âyo܇u$>dnAW}w-Чn4Z"|ߛpd+ZW@V( HD{ujT \˩-AʿZޜe#E@`~ $[X0 ~Zf@ZM6I^  Jw0TEa;q䫝[upa啴!6֖E#.]Y"IDw9S?5LR^=]_zw& S:rtF]z@Eg* w-c"m,򑨗z ݵ &(umwBq[ aP ԐBN}#XوW>#f׵2܊FSVu7Su7ϰ~d@'$*T,^s5t JGl#I\X"2UL7 (dϑQH%^qC;ֈQ=0!oycKtL%@GEVxuבxZ#o3Mt6eNWa+wH$'Fzw$o**%m' Kwk2TA} euzx (T!;A0 7qQ9pj\d)OnD 6>RziQu2!g,= .K&K,;^z6 `A9QAif."HJYCE~dm %AVG\(aX˙G(7"&>LdX8F0Zگ:>`@6$U= Ep/5@v x\}INa%F-.ow&? ܙ*QlNeO&b4W֠D4ڞxw~C38A.MGwzO妵smstw~0/,?k,iMp2E^AchX2jL \6񙠗SSAQyWOxo!{;OXjT 4l{㵈֋HdY, >Z}>/v@4*l\~>)?$#z$>PvƉ f|.ķiu/B5v`iU&#$)84M!0*7ے pY &0`'x :NqlN̛OrXBdY#`m{ $}l Mɔ#0GLyܒ]yGSD?I<ݿE]%/w,jf.LNN6mDgR 3Z9nd:WH6]Eyv煖Ѡ,?>jZeYOye!XQb{dDzO:ZBp3ޡXϰJ0{}AZ.s޳ҸnyTp)mr~ڦiEzW@-EV|3Y=%!.xӏG $ L ~?~Nfɨr%va)q礝u͙Hҫss#Ǹdc\; 9̲f `:LdCefprf.74LqU8̒"ROS(G`4ҳTAndJGKNػZ %no J_1֒QXdJyM>#zF-K4v=p8fZ*P]O >!$E|lTNKT/qئPfPq0VPS[^8M^3C̜qg2L6ɣu HxWeVvSf&qo$ ]O!@8aC q\Ã-[akY /`nW}>͎ɭk0he$;cahrL^wn i׫258|6M'.XI TIOlW斯S~ 5;2tNȁF!jຮ+fdDd>Wh~rQ;p9qVG@͐lA `P+ČC*cJ#OdNPc2h f- 9'm8Id,>=JD b9h"^ WRJyA\@n%EϯXm굡v+'{lgZ&R_ASy2݆O {P40ܠ[xh_ *C?t+^i}yr/K2h8j!'29M +߅z_O E~bq'X6֊. 9sñ2b/> |p@zLM'Xs}HrTqnfkEm,HE(n{/;w` s2nGIB^)uTo \.!ϹTZo<`bZ*3hҁS)#9*̕c7ݸŔf:odB9DSʹX]fXhFzqr;H_t$1Zר:81@:B2Bs.-JAVvC/ '7dYŒ Ή+rE84m`$MD (jɕ z( (מ|yTo NM& ³Kt;~CnVX 46|}ӊ#gw+8"i$gٻd-qX+/bC72K+\ga𘃰%՘ !ܰ?D/$ouO8OhMq;,|7閖)K$L}::{jo od6^;I2cLeh+FPg)n9 M%; /OA*.7suz!̏?:scksMi$yd5*QnWW}!"YæQA-GՌ{ڰAqG*갘g޹PFjUfұO5MaOarn mRBm5DI)J<^,;H\r~>*+{Ջ, ޡt>(_ 15Mkh ԴT Hlp*2z&˹Z)@IM m#Ͽ:"ςfEv2- =Y`'ٕC4~y$ j_N="(b&ʑgrTF\& ϩ'z'@tRŐ|:<1Ypue4q>7Jġdr(F)Frl玎%̆d~F[^GXX53W!Ř߱=f8"xZb671r夤[0Xp"U`TN$?MNTVc3g88M۬dt#FYB>aFaF}U{=ee!Lʆ##`b*'U  G;^x3`Q5@#|VPšV>)d][@goK@~PqY1Հar(p. xcjfMH1FO X3(j[F>G^!`O d(Yv}P[WOEaMUj{3FApFCʗ+w[4a'YGLڑZJ`HM`򐔰m L 2Jf\EDPћ%FB94pn'.%Dɋ[NK)CMUᘻM[dO98}NAޔfKd OS [NߺӀz6 Ǹ_ݷxO9 Z( ˧Wt5}Wp 2D?==*Dy(}-K)K\!m 5"n0oCz-ى4bRhޟ~xczV?B[)N+?X s(2>M%X'0du wisu[ 7b'Z ƮйhR2s30Lgޔ"d`Mi>QZ~Q7]cR(SaYk: ID_ [OKwT^-NLIj'B@D6KsoLKcXKtcs*sCVX ]h`&B)o .z dP/ Oy0DiKLs@[)7}ՒȨ?J;!Ҽ:6 +-K.X!8@t |,+&;{)n#ZI6Ą+ؘVd1AB h`kzdYaD%?`d"hb$&csX}Nyw܈mLqr ``%t2S ƆizXŮ͢sC >U_@oS\xjӋ+X?n hqf= x*8MUDq]M5Z&DO/IO}a~+> Gm DPlq 3} jm5p<8B4ݏ3c ֩Σ 3)5N KI:ZfEnŬM4IL.UxcpQԘoJQKz5O7`Z<)ik-yě<1w2l @ 9 O߃cRцg(+ֈ:u\"H`R9SY6eOMj[t;fFu\,>JwNĚ7qqdCk | , [D:8z 5@Ypu{DC*ysJAi3An潡WyA"w] F2c!#jAРk,$)SčDDy݆- nTN ̍~OJxkCYl&Vv$I/r[F,8Ҭ&=?JYM_hH_ [͹2z hۡ=gEƽ2'h sphVP}&K.[J~\VMV9x_x8PYΎ'JR+i?Ow1%D-s_R<Ԧ`C$VH;on4?"?g~fAQ h J( RnI-V g]^0F3p`d'/q$'1B:h _,Tm5e. i58 ֊xrMC\2'fQtF[3Կf!oSԎ?_W ufFw ΚP%eѼQ HyOӒO&. ŽZ`H& .J_!P 7 Mqt9 :^K5˫ V%KC^~M*(C1|~yU΍u9GCq2_jB*Fۤd}jI/^YATiu\weh4ia/-7w埘1C+_$U2v*lcXS;vK&]-$cw6Lk,* aD a{QE^鉁@IJ?(m߽lXAq^"H~/횷Qg'yHqLB v/1d0;{m 9赾5G)V}lu0u@}Nl֏2J1Ig |$22FXL68 LLC iSi3Z%܊\Heŏa) ̓6Ƌ˚KΓV` YywG ] |pѹ߄v MUyg."!pcZhd},oEa+DŽ9"ɵur)7C \SGSX8Vܗߛ֊ך3˃%Uk[{ LNpÛ |j 2$GַUhGil>IR+ 6BYu5\p,-;^BPZB4q>&r M?&0q3cGfT'Mi'1K碞/Atw=S.k2¸if\z ]ufCy,gh{ͩ]^"SHJoL԰&埆RP5*3r$9_9*kd_F2;UUG:|*sBޥm%ZI]5 >9"v-JAD6Xo$O|~Ar@r*R5vNL^JqNPݮdoy\Nél8$A`CKN=RwNʎjh27֋a3mTA`;82;R ," n{um9CkN6)+lֻhνc1Ҡ{ܕo j~*%FfGb;p܁N| #4E=LulCPE 0c)8'g^IaJJj2I--YeZCn .YZzXe<~v|kfRR 9>3n^dG^Y{DhO@(Bf%k}UKDW`L8@?K!-yc`pNDi9q*tdDcs-!? %>uF\N.P==Pˠ byN 4G%F6?ܣ{14?ľOo)kK mf)-J}aJk6#aAAvtM!9R3 `ԫ^[qV2\ֲۡJC­eg]kus kq4'&H܍]jiOP+:IiW/?7ciK:`w8oj[&bw|G\ (.s1׍ŒzXX>q@6 %mr`O=pw djEle{t܋'Lf$++xY3 ?걺r ]n2 M/N4F(0/)QBW͚ҽf*C~^snd*fυ}# ZENl;уr>59hǖ Vu^oh.$X#t:W߷$Z? \[=1i͢ꮇ>LA &++r{Na83.j;mUJikEIa (w#<eϱx J1,<^ɳ%ΐ>PDtBWEA0NyN~H+N%Gpc,uKcd2g^ORJYnY@f=Zӷs\j$^ٺ_g|ܐRf 'Vð HB@:2J(͹3*A=QmQ0ȧ[ !WCNA2[KHU ~ITnr(Tn -Hu{0b Qko5rwj6IG3Ԋg>$IT7E)v>H@K hbMJSTp6Y0)ËDzW> Vz3ԬՈ-tOuf=sTTN:xctr ?W:w*ܯoJݠHHKUKCɸ*sӛI2C qε}(lDҚӻiĦȖLH$VsvC~*Hwf|vVp1AJ92_U€fD7=Aju9Cz)/5IJPhzX`2y!&@/'c}9)7{8CcNe]R t? #Ը MIygN3P/-R,h/uݭB=.'JtIv@qysspF\#'RYаzhFД9F7 $2: G,&*RUڮ"0`>PWQc.؈8gʼ'3Gj^}/s{ ;r؏^.P } ws!ЕwA@n.hF(!)9M'?G\~6ڟc5\Ėo^ (, +#>=ĈaaOH,5ꁮ#m0#߁j†F$f#kBydmydV$U=>SyV2c"k3zxj:)1;kB4":#κjn+!H_H97{CdXIՎ"j#H-(&Xg ZE5&#Zҧsə'pTza,8'x| wbXaL`BtQb8 tO+}^fi( L uxyIOۈH~YX0bG$ذݮW !W1:i".Aa ov5IC€7F:!K3@,k~lѦѳw!7ٚ * WXJ t^V_eH2r 2%n!?Ej{Xd̗*^\M[¹dqwBv .B(s3Y)4 vr' | 4풽H)'QGv!4\4 ןjdJdjǂBwIJ*":ό BCvb% e '525.t\nǪ(WPF<\ʫa\ d:/A,'zİZ" #^D$qfGSgt#EǎFKzf H<$[NrTH/#-e¤D[iO- \cT<Wdl'p4JJ#'CzE*lk(c s-e~g#53BF;16K fb]IB;nk%L3 7z(s<"00?##P5Qip0,8z"tjP-iFC M(t>0[cM.+#!Xho^3xp^QlL,̕/$z˩5g_ĆS_;Yl%bǃĎlxTpx+q_knٶEe1 9Qŕz\Z؉c1ܧ}-y\ڰp50*y,yTՐ3geM J*?3-7&%,L-tmtu_۹!` Mqx^fq:6 m$C { zˁ#?X֍=*"6U\GKJ\3Lg jFbdDz لg_}jɩm^Iey92aFݔo1jj 9*1/)H,v+禍QV$͍>xV7=֭$ࡊ8p}kR6"ʲ@^G̳bόmSq 'нt>}𾬋wK2'`& ;-,5o'+^mI!OJx@}\eU5hVl#έ{bΞڥjzv>~]WbF#WQ%h5kē} 98pfH6{')Z(qnP y>T`x?}:>W$+hS&h3] -t(yvJc ".4xan$ܰUruKìڃ(J@F%#;{v +ma.LМd{JgGDhVؒ8qX#R+tBnBPG; ' qX>\a/Mʢ h‹/<\g}Ϩ=6 V/Q;$G=JrM\dT!&U)#=̓Zi'w *z| ed2Acѕ ,LETw  LL—V_QMOH%Vx?V)IKN4_NHky68C57bf$j|1=:rgt@sȭ>fWsjp7tqͭg*fpm\p\{?w=_L-QJ76\NJpcuR"%&|O' Dלe;T WB~7僵27+ǜSQ:vA.W%V篒sp%^#lq} p}6,8ڣQar,.rm?FZqZ}k6᱘<<1O _I(]k@)F[iJ̵:)sFAVMdcpVɪHyI+6e@(*DțSJ,`kV ́~d<4\G <ۀg.A9C2 m}uUMX?>KhɜOxD&xy 3DmetR#Cy@4bFFW'Yqe4^4 >Ia&%V~r!TcRΟ81G~4S/Lp=Pr!K0uO4F'ws;Du .VtPd$Jt52vWUUoJl8##~s eJ[CL(|tQ:δ_5V@ izHKVw KT9Zs7 ~K{(E*57P^'I4QC3:?@!X3KT(T$ugՔd6:NA,zw;6Zܡ9ēy,;RHSKM:?Esgu>9&0(<}//X]w9@0Kpd8$鍬;XǓ/]QNUNjsV)Ƀvǟtl%(!!UكD4+YIjM~+RYX.8́uDp^AaX"'+@a/WE#̿'JJLާ :]GQ9s^Y%?*$s+zPӺ/+ y@?fQ[_ula螾V2*\BjjtBꊊyRyRw74အ~xgJç\lL:/L)V caCqY֫ZP4>C?*D:.O~qD[N޸l`SnD\Xs g. ayϺtzWA#wBy.dʛߺ!5;Hn-H>,$i?Jc{1~|k~66u:b 03ؓĴ9!KQ4эAH[fsU`0V{n[Ȧ\jkZjO碢-CLcrq+j<_Tk GFKֲ}F>Bp\b|~f)˟fl Jrv簚 U^aQuWq82=J!w a_v%(C]w@B4s6; z; F@]Sc k#D.0i𝜫t*:wcMdw)T'*.LK8"[6 uq (b.[Y0K? ]ځ)PJ/ַB;(}h`ػTL/6Ԭ!{\fG'{*m(%MMm̷J+}\*ёpY|\pJ}1;'AξZү~ 9_` "Y냠J)dM1q>0ERg0|JD~Ϧ;哢 80l'Aٞgs*’&de?)X۱ c>5fMet sF;`HЩ,{IL9JI5kS:/&U}š#},6cEL'SC)-Cޱ%͡q08ˀq^* m8Ȧ|35cykG[˶z}?=imE4}m^] 3P4f' Q0nU5da>DG~#iؚe#j Om^OK6$ g1oA#v5ki/idk8|xhd+F%e~*?7U-dU2'$g}pX9=xsU~iؤ 'nc VV4{K)TLrv1yV[-aF5z;4~N^Yk'ҳۏZ%zaŪԆ2en &Ɏ(T|0,(NwH!g+OXJnr yދ^xYci|X9(M&O =:q 61/?۫cG\nٙ9& :&6ϖ^e;'W_ [;|wKZ[Go+m-P0 qǮGAOk=/^y~i~s#ugrGTU1_4_.@:A֮ \1ǽkpQLJ:%Cqtn!xIט Mc}oů;_1eE):Pjx7},Se@0 :9 0~W R(aBǚ^TFVB l+_ܢ&(zeJ.HT`~퐻TuAI[pg_ڈ^ZynOQr_-vҒa[ym .e9ߟ|R([Hԥb^hN vYͅ'U(_ M7+TYv_e !6hB-HcKs +7)]u,)3~ a?.q^:d1ƺ1r[)fڿyW7iV"O#pid'y"~&;47;e ;O?)ҋ{L%_̍!mkl;?+aDI\eLGrA+%cp:ǻXwLM+Wj:L)BJn ē|!6sgx9-oPs@NL c_OЭ2hXFpu-|&rHnF~'G SȻNEv/|/aSq5d!u(|P6׀bk]ANƷ0 tTX*F@[bDܻz>]&LEHww[$^t=`C0a%!wqTUV%jcveK8,zcV!Xmr| i-ɇggi*2I1baN]h!=" ilw2I?fh&p)%$'dXcdۅ~1Y<ʦ;Xo[;w#\W8[S5xc4IwkKit&9TۻckB9 m xXdS%gV.qRɲօ$d fa@g[וxn0yi@/ꂱ`Aݿ*{Xu?L=HlC1xH a3b#}DžlX+~몇>3F1 n$ert{Z6:}DvVXAZdôsH>/ŝ@YRDMH4Rg+v)lߢo&R+ӽ^yaL -W% 'ĝHu;tC~Audx!f.T[Xj>BBXf²KtEnjzm$uμ)6M;Z ޫB>n,-rJm;OͧzwX;/⨾vw@F^u@H'FZlF-W/ h"8f XmnBT$%[`-S3g&A]TE`8y=ZPJlkېK31?LV~V:Rezw.8b 15܀">.1i ۖ} .U;piI,ڻntV<2w̌2M=s ,؝64->hy ӝ6]/ f5|cahl'(ǦȳO/;5T1Rh€v*襀@BP(I/ZKqKNT.ĺ}ZA5EaѰU bLPK9NZLLJ0TkxU H(2@U]r:yN~sNSiE=|g{h+^KO##DRbs*}@ z!8oʢL/_A!_8zB91"ݶ7at8(V)$&Ur5YAxݹFh?1hnRI`k4=@ކ90kÝv&*ܨCb{9 um, l0@PqZ&{Lg (?X7ۏ J:+hF]]7Oe$';.TrCztȏFi!8p!KUtwz$IY %NC9x)^AyؚYZrCVga;֋65^(![IE2@" Tנ 4M AL%ˉ| ;9wF)u4RY^ sAuqT"o=v凁zCi5&P`A}^GS>%7Q]17m|,p%t Ea^ owx`:KJUe'uʽQ:S o^t.Ը9 p,>ogV*$)>Ƌۼџ(;:-ہCzTZy|WrUuRh}:aT( W.HX\$$4Nw䪳[0SO4my0gnO|s4g5gd#X G(Qn6mJkʆa`G dB*>EtEo?iYc,+TZF[&% #ǗA1Pe1;$Uǒl\ũHҟx:GTgqCA$sL )#,!>}r Y,Ee;j 6} &?q%39DbtѵOz%5DŽl&*9{kI:L7 cN_ޝ5\ ꞇ7<96YRQ82\J vڈߣE 'M`۰j"^&zQ{Mϩ!X T?Y^.ate,*LjWPr]|;AY5 THX=1@:ߙS )¨ŽBb Ŗ)y̞Hiڱ |fGʼHGCv*rynէgs.Qq9$7q_)5U?-dhۍmH Qk$YcmIhn+?NUP;<I$[ [1 2ÑuCB c3N~=z[.3r&]oF9i`rLlYK4'=$9eLSVCG y=^t{Ị<#z:|+ zd4r~Ɖw%<%/Ȭ;",%.`2%P`Ggdͮ;S ]63U[z࿯ZϗX",0zޥJG8O$\>_pϔbiIY&ľ/YH9x:V[3h \[riέI[r s3`鞼A" mw_<mAĚ԰͘j*%g?#HGޱn7K//\1K2?vJ/,ކɒci=τ 4c'2m(ZoiTuI(h}[V1d2?"2w{[[A7B>'ٛZ:$:XS{mN۝p.'#B2KZef _YoaM]G3P{:T49`0"gQO<%o԰Z^Uc_zpnH6[^YHuV:D0~Cq))+cJ( AYп[ Z13Y^~`̲MgeԍG)zo* 79Z̈́쑻vV\㶢8Le ixpS;7_J`-,UjIATNjڠ2vX:--(b$1 !E6kW{@Eb.hxI tvD*޸ьTCd+x~kR#hUK2&N+Uуެ%I3CdP~| ,(!Nl-mhgSV'Gte7|>:$CؒGAfdbT+SYDashR}9q;nNebDIa5GX*NtA}wGFQyn!/=WqFQ&DQ }EBk *HX!h/HzDsW JJ3mܯl+.Y>F5Hk:[ k3)M;[>+TheX,3:t'ǛE16x*k3<0{L_C ?L B|i^~)ٔ|liȾ?t^&كj$Z {DMOT9cEe{c*.Q@d[C.y$oM|"IMH]goԳ-w ],0Zb87CAldTx *`PooTշ$H f]q}&]At"0D!AnJY&- ݪ2 Á&ULC'd H<`86L`)Iia.Fqz1~M& UKmݳO0pR 8zǡMZM;PĪCjMƣOAG AO4 "_7)]#12O0 F߹1;_@leF=Dll7VI tdiOc|&%׵n`FȴKuXnB+!RѶ#"93~0e0wŕKFyu(vSꌾk=q0mRYT`H3>KOG/dE9zcfV* 4c!,.n4F낛 >5*lWc٧Z'rtVf1ĸ@'nX@(:܂QG}5ׅzp?9 b6f+?<%^ll^1Y:o`;*+SO67Ix-78/8p=b|.GYtOuK)vni/[xam<uuz{hvNa2ص$< qf6$ە˻tM)>-LD8G? yռe D˝Rۅ^>0j҆PD >r4y;gqdPQ@ei [!Mf?CbsŃlߠ595rRNZ@H~~SEpOesmCWGF1oaƱ7ºS7rgu /X@ und 0}F| $%O.'=N.:g6>L|7wh6מ'r.(%P M yS]#F[|gD$Iv+ijhU5)%H1\.<;1eK'#vD]+D_Z4h k儓${Ll6lÇŨ3C +o 24 Iޛ0fD, ۍFo,:I3;ТMޘYV8Z߮{ӌ.+yXozUZoaH6Û*ƈmYlt]aT]6*UXR+9w|*J-X ս\+th "=1g "4l^0A "tCsBncw_wy0%c{^2>̘yɖ\?Xnϣ'pϺ'P쵳 "*Q2,>mn4~Lc&UfOήdMtؽ,UVŅǤ(Roazc7WؖMaq&YY)]3֦W>BIliJBs.-"PD#(eZ#2Flg4g>;f)GQl(w uߜS\ G-OZ u,hV~ְs'Q)o=3ZERr"iӲ^ o%{Bi[+Yyz &zN:(= Iw M61]S~~&W `mc)y2v&Dc6:o^3QB]a7=>M&eiۃ;VLNH8CSvhfG$W.1"]$yIË0e^:1j׀."U#8 *+[!.A1:Z蟈t&8c8eUOK|t']zPa[ao9rri }ɚ,㛒.Sٞ-|YM"J}G;JHA/ dC뾺b}d>!@ȘѠ34G+PmGx+ j'|{NMzqʈpoPۉ&^E4>Jx 0 9TD5.͞S'J4!yx*΂/8&2!оWEJY<\f+#$VS)(Wk=gԑ9{G)Bkvez"~tpcxGxt6Ev~xw^# umiɲS4BAX]baDfʦ{1+uNJqN 6~vWȣ#(Hob)z̸ݦjaafŬČiaY35C.!ZGBV5 X{Dļk!=buFV:Q Iӻ)Lsn5{u.+/'kUCeUOM" e2k&N~uROWAyIZk:4 V!ef+4j90[zI* <2MN;aM(JYtM)s%99\x|ݕuI)tOU[NDžKŻ6Pj&ͺ!-B ]9+t_l;ƼZ2Wf劙dݎLU7W*!G\6K|O:)`BM+NxiSÏޤlaTByrz9)ݯad)Wh6$y.&;8 W2.x" N8ERkk$'Y(~V>>|HqN2:\($"W(RrzIwCSFcEJ⃹M@A'n(.A`Q)U2dK0(=F0T HHzL[ feG&vE^hגQfBҥǵڶtr7X՞R}p^݆ӸS݂Y#YIb/23 A=jxѫE΍4 ۉ _&eηTT 6U&]N5 6_?X1eja1͐N ^/Aa w0 qJ[[ N  }MvX!0&v}狆IEbAp|F #_`sx"- YEw3x4AAgTD̸1Hp/2YΚT<,_[ =Ĉz=lvôx ďK#`5)o񃒚X(HB$H v&e t Opȗ%,&B? i Z3y\*a,vX}NET| sƻZ ٰ$'>5{h)82!0F tèNטR0>| [GxNGmb-Hi]<*]0 GE$EpaD1 r&.y'Y7+4B3B:mRF`#i̚l=1RX7p$䇯ATLN1#p*Uwy0G-[Ps,򟟿D&i #혰B7SZSpk/= R$gt߮ipFHRt\_Fzju6!C 4ٴ"hP7VTYqQXm ÙYDbJpcҒ*)3"-;4ȉ `x5m?feI-"K@Lg*A;jQ䷳{,Uƴ>c&CYPA"j:Ws[|(m}/~j~.<I DPHxt que~cfvHމY)-VnīriuN%PHcGଔ' 7)M_b˩ iQ2%V9*qZH?yE._,p`lwauw#"]5Dan7 nVҍ2:x]Y% :Hwp&H|ϣ$&CRMDA>ݳYctn8c^AM_1U.Zթg3m fʩ$ĺ Y;K6Vf׀}žoGA\LI)^ nDh馈;x7 @#D^!lD*Yl8&-JУxEQ5X.cRq<H8;u}6svȢ l_^.f10f$5nw9tGE {!@Dqr_?mKnuV˕ Y+ =סt˳jE9Jdj+S$k+qn7-$ĉ]R4G xs45Vclz/9öG7fLO3뗛82ld֭Oc0#Tݑ"Ee-RA 6I1g9"r|j:% "h=t(Eڄ!T?*?gP{s&}wcRsaz>cCi3 2beޱfl^ײqJlЭ8lG R hz2 }}xOu& oys$wTyǠa:@z&C 񢙋vdk d[{G H}%?*.~/Y-'zT5pN 9>jH}%ZqӖ<AN𵐃Lav1 }:{BO#`L2#Љ9W8x6lg#a)^Ƽ-H2+pk[Lt>[4̼ E2f?pٌk>G&E)Y{.;בz+Xᵌg7Ⱥɡ 0ɅmES%_4́S^k6VogwiJ]/RE80})t.If FmݎP(& &Vծ[~XUMy叆D!0O۞Da^&o֯O˕!?TaFm?( ”d=~q 7iig01͔&v6\!,SF^R>'dcry:sTM`|^@sG$(<flezcTx_N=\D&@nڿz#܁\?I-Gr_r`X' lac:ktQ=QLݕko2']g ]UJit]a`!b )`Гe!%}|U*A?l%tKvCq[پbdw122Lt;"Jm=nQNB)U f3 NznRBhdN>EIKX#7zyy“x0d#lO/bGdsʡ|kc4nT3pVKٴfp*ۍ ̼\*FԨ>STO͐䔧'-{oGSu ,i3-ECktJuQ[U҃qNI'f RU^Fq-^AJ pWz .lv# Yp6dy, L]ԛ;^=vxLd5iw3܅бA}B*҇{!ăE<~4!Mmq֝b$; u#='0^ۘZt7lyPaWy[e XrH,(\ځ&0"w ԍh ޸g rp@kj:lJ(uKaZ-S] ׭80Qi/!"me3| V6N?= FOjz(9pt0]q(LltwG)?cz(0ѿ03>M{iS拀$@ ]6 Ճ81q' +)ftOo[g63, 8Op}Dbڦo}GBØ 0H9O|!a[4Zd &I(OY1{ŝl^Z_q_  Ju Xs/=rI `w,g, σ`MP$Z,7cj #hA-с? &>ɏk ov' no5`puPa|u - ѱVjX g{B + 3k2X%*?4*ɴ yEDz`]~N>6-aV5&BzO_5x&p'Ν="qOj3i͍ Ͻ8蝞8hP,+_.rUa;N`&0K̰M쿒:[P![lҊ4RdH]2fh[a; RN櫁ZZ)[^B97Z*+aRS # M wNִt8咧tspX,K'PaW@XZ[jө .r"}D-F/ c*GY? ; ~GMWYI TC4݅ [*h I EŠ,0w-WMK3]pٰG,h4CU:}Џ.x**~gDfD^꾚זc\du ?1"5Jv3'A-|qgy{]`O]'W&}O9 9qN`5Դ/&(j5P~;:|Q]J,:`Θ`#, ^s#T]l`;->6$]v+8qH%S"5tYi\ؽl5!GPqU&8Zm}1$Jh;;XѱISXoc|!=Dg\9lb{m(c EMI%ǟD wpjGY^;el$&Qɳ@yKJxSƴ! i\)u%G=03])tqoGᡐyl<r6V8U,|奄ؒT|Ε+ L 6g8j2҂*fUv`dr|634}/̓ a>)ƏDRV j|G RM^ P٥]q^ O:XjHҿ1[* ]nձ/BnMp,s*:py2G o Xa;ݮ鳏5s_˜}i,КOA~a&^?l?04J'KJ{C8- XlTݧ4k *GYo*:dD1Sa-d\':Ǟ\2m mp ?+ ][l-{D-x,k$Rmq\ WN[kz#ᨀl?,$evbEl} w|V/={z 03S-,Ty(TΑnf zE$ jВ=]K9<{&BTs& L g,'~YK '%?ͻ 'ىGBzy|/2u> p)[a];!3]F;n`nވ)TD_X?^#Uj;k8ɂi:sث4I{ QWV{3: oޮ넴"ZwMG D H2+U:8wYv!?sRA*~?mo=h8,7)vI?*YE۪Ms iRIfQ$v tΦ2ߞ^^,7EAp\1N@ȅH%fn󻋤ƉcuAee LJnfiWRGȄ, <^4`Wu%J4d`S&tP6Ak}Nw w<]GH1P ~x3 ua/zpI2QT~ȾF=a-#)PPnA&^]e05H*!!qzxn i J6R$Haq0drPWc-yГ0l-?[׀Rto`фiIC1d5]xI+2fhݗB'.k9ĨM:_{'. "h9NZjh( 2!hEV[$A\P_RXB ;:ʢ\h\hY@D&I<2unxՃ",VZzVIjPy9'zX<8k=!#,XOqJhxq'lv x(,{[T)$܂w$'@4cV5y+" KKw?7s *]k[i}m3ZǏNso- =lI?o=!W^$Q~3|o@mtg^3a}PvgXaگʔ2itN68gaF=+D'" 90u, yU8w L"-&T\C+Ŝ'j!0Hq|v]u YIs0V gѿ_o| .N ;r8DZhlϠ.Gk =o4@2,Ϻ#7"~Cc`Gp(0Xa@!A`RJ PQ׭ eЕ`yZʁJ@ffߤ5q;fV4͑_~Gx`x6"t|r/x?iS>hR#Zow 6`.lEtrH(x)`±!U!x9xC;{Vh [ىh_h&%)ѸgXutRXU ң,_')<[ȶQ]e'`b]#րq{sWwmyߵe""{R-ET-bR?4DW>%fc?!uVucFbTy8ȝs)*%0avP0 MTGjCC}8zA#3M<Dmjf4OZ.\79 UvɚX*e*6.lZgzA|u ,aC#vG2>F_q֭1[028qLBC2e {x4Q_Wk$%>OQ* j*]X🨪`dRk^=ݷeQħF9FaؤP/?1>!V g?bSo'};YA\ [H!]2Op!Y#pT.p opAOIB1i%ӠgX!cMM&V:ڽ^܃DDB 1m׌l!uM9]耞XG\8NXHCm%XMG1@/[eyB[*NO߮QtFi؋-Ғ`S3-l6)ˬCl!'e9 [CF+(vLsⳉ<;㋙bֹ0|]QUU{?1+Ybx)E*lG[~@r 9w :[vn67 D>rҳ&p Z@c}'ޟs桁sL}FBx'!sC#IrO\M'z# _r\9gmHU=+c`E:Ds ]E׊]`VUk; OG}j 4fk_dף}yxK@ =gn!:<!߆زKk%זgpb|f2CQhޫ_ޯI'tKlIX#;#({DHxWD,kn,㸫qP۽ot;*mGrjzDoΨ۽~q/?_VOz0M?)zGݚL'8֟nA+F{-3_@qտ{)LK+*ԁ nbR5w8 I;>J,%5j@I͛.T_9d+tM9!SV+C)(fPp<2ˇI#41Rv@6`2 ?jσ&l5?' /Ãv `dҜ"ŗ=Če/kUmܬaLySIk܇9 V5{B/4LPף$`eCT$#)ڞd]S;Dwg8fjd6TFӨ V`0Z· VoGUpQ"H|Yk`[R̖ssж%QG/LCb:w0FaL cWz>|G/o@C,rL%yn$OrdxZxңMDfu4+  VHjYR"k5)S /2k1yOM%ұ . w݋e9/nl !,m&GȜDc#EWki*M(܏c=S J-icXH쒗dk=rsh0{L{&ٿo{o-6`:Cu߉ P3}D/SF]n |TJ9(kMT ¡wKZINSOJz,p 6~Hztr% ){-O9hQU?7.dD3,=Pv l:HiL눷{NT.ݣD*}cD5w5`DAM&2[eۨ1Hi4!{rI+\ϙVh05GNLb@E͵D/Þi]%o⫽Jtw;%鐦qH6ra9US9=1le+]ZP /20ZEĘZ2dݼPc1k)`TP`Ⲯ*a =Y%<2ֽJ:ǟP: ejv2y5LwNjS^y7H}1&`T6¨S☾IcoB"}2>儣T52$i2c²s 䎌 & fww s9VoTǩ0O/KjԩFT3b&"LsmUjIZ 7׵5j5mciN&xM4\yb2@Hįd+v>& B Ha`Z^ӑԌdNS RS)WBm$NrW-] |ҏ9z&b. /*|EzT4rIZာls̢&gk-"7lScߡ53&2Scٰ9n+t[tNŮTUb>ž|^,gx7m'#SSaܦcv=VN/*>N,9U]-'Kz8O|k/OQ \^WBn:aƚU7܍ŜLp'i]9*3 I <#Wl2OM@j0rq)NC"tmBtw~in |n!\p"b'b6G.>: 3 4}pj.\ۄnĦ'dFlS#G!@bbsN0FV@dClylgGKep}"f 86#t?O8nO*zsx-pek`mṄ2㸫–x Hn e]%[#@o{z KQQjvwʞ/IG9 gjܞoSGVR4SvZIŏgjǽ8gP|#va6alћl2˪GK/" ۝Hy,H@caھ{ILfStx䖵=mz)iTT?GSjd8!>Wi_Ƶq1np\pGORѵ5Nף\538=)(7ū􎠻;Ty(떿 Z5u;Wj}Z߆gB?QT&K^/e(-?cOiQ Ƨ}bHϮO8U\K(OfB cٹ nUĪ(dw‰uxOrO1{56 ibr0}45\/eV} T4I?mc8#ృZˏQofε-^2w "&qX# hJ0Iߓ'rB5^x̤֤K''1qSrי ݬ]F%lZeVwvYQ/ԏQ^!2/ە%`[~uAʞk~$YC ITsDqU!XOOຕ+?(Pv>Eٲ0ISp %[[ 0.dӑ[C\@.H/=Dc<Jv݉BE<9SN!(EHovh\>*V.0}p @aٖ7hq婯p^%#2bBEwQyh$󼡩fy?kxn #S̺Q!,檚{Au%FuRK ]:kj!K=5U p7KqN]IwsDF1(~"niVqjFfD, 9\տ&;u`K  C3+f6mѱt*ҫ- =-elDer #IsH ȟqڻUU1-V!,ajNb*7 GARmFnHr(0dz0"΀~]U/T=-y$.4-&LɊG^( xFPІT =omP3`%l.j.ma=ptz. r<+"$AP]ӚD6SV&a%l\'4Yv%RTi>ߏ( Iq}t%:dԱzZPNpCS#_S΄4e\Irqc.RaՆY, 1ʭgCSdQoV$,ncyUU9-"L`֔&쏸c,|X[ ` ,Tb:|44  `Fc+ 9?9]ph)`4,ڋ7$'y~("B &(D-:ʆߓ(ѐyCp\pE!^aMsB{kAEd%13Td"%n3v6=WKAeNZa92;A.:ʜ_o[Y(dP3C5 _+I {691o׽\pOxgb;@$>(YZb"&Y;f " وRrs|?F|ۚ7ս ̶\09\fӳ&/-E s:7*nz583qb,v՞Q[RK72f*y9bÏ|9B9&ψ–jCگO&  %bNJ.8> ּ[d-ϟ zV.7yE]ձ䝨H &r"?>(͖#Ht X f G%O!TF9m }8J ])Ń  !D?d rܪЗE.|c$;p r"t2/ S&xknH6% FE[T,"(tu͢myju f|a$(E='ۋ.g8&3y֧7x]k7L#7,p5AY;ipxt,lqu_M3;Wmo[UDU>C{ kŰ&ʠ x,MU 뎧G8`zھe 7`_BΩM{ٿs2s HF#lL}e.-' Ac8*\ZjuQ6G'm5 l΅sf/_9oo%rcKlQ~]x'XF4C>쌜K!Lm,E6<őÜ8P|)dIY(/%# ۴3ud,I9=ņx(:μ 7(Q{!Q*RMN(uZ{ZZ^~r)ǹ%1C[H =ZBTAYJ,*tdKVdy'#{4sҒCV+?Q=,:/4*vnp|3c'SkHNqwJIZ)X's0cmO#s t?S[m0G)U9VdŇafێy3Faf;o!;uRui'?[.DI#qN^eXIE8Qjh9X̨9+yqfBjCCg;^,\KeFa< c:wvaOa]\Yht +Y*r8fg,io%NW0OӡD6;kkai= 3ť!XTWL- >̄DYI%lEL䖧]I7mEvОk-Dw\tۘZ)w7QXPI"pe<_qˌZf8hdÚoy~nƭVƱ*8X$*ƉR ßNب ”KdOǀ]1`?c\ )'@Vξ V\ l%- s}FϳeSeׁw1[d6DA= 85_۴ejoznb92=Dʁ 4"do莜YrY\Dc*Z)}@C,k)X3%fw^u~@׭C *aT,U)ߐeLJe6 6Ltemy BI$IR 6Y&˂[W0/)#ڮf284>"M~z"]zTxV!Ep`d~ǧ/s̍ضO*MO]H[PtE{jraS vǥʟzqgsPxY="(X֌3QK.F jTuP~A}{&4o:qt/(}%yH{eCҘL6FԡȶȤq rBtKݖDW=i;[Smmܱ&g2~LIëj=d\3! *< )u;M.&k=Ss.N:i/g 7*bsLSNFBR zz|*N%~#OdU\h6/&D6)ek] Ҝſgt{{E7)N˿">T{9ǥۘKx۽ hP3Ep2JYldzk})m~7gd4TXE|jZfc7jPY') ,ZcWdMPڨ[jUJKJU5p'wx d d??ec,oo?ri<#5Hjh7$7CڬՃRMPͼԊkKki|}lM> oaxagP-sjڰ>*~c=骞}ΐneN&B\yW 5t+v9<$B]q. >LedR4# W|JY?F+]ݐBra$Vs |&Q@AرС K6:?&S"{L5ҮW֎]NI^cFď#HSpa\QkGPo"$3tʬ\3k*q Ak2_;eSf#> X {8} :roy:*^19Νv>c-Bj1ͯx%R (L'5`m?VDA@N#_ Xӧ{MwNYո mS2逽:;b Rxl{F;Oj[\*k UΡ#A6%f|gƬ#s\|ZqHS6dѾ?S+=QB@}+2۔` ~Fq7 @kUG:ܻCqYe^ڜEzIQDu &t+~ȩ:uMKg.蛡iP}}J#ENoT5_p+VGssfL,&{Z/x$97'Vhƅu&`fǝ)&_߸Z]7oܮOiϣvUIYeM}t澋;VvL `Uh~|.itA*7a^C:l>n͇{*aVƬn1@Ukx'V- Zsn)[<l#/m?׈0%z%½wDujZ1HgbuP UPr%Se*yTl\E>Ve vl2Sqb]a=, BfLx z%>jmz JdrZg*cɂWf 6G& j]QCy4 oBx@Vҵ$>'72qP # lʭ;C(^ HZ1{ 7/?Zt5m0M]grB0 A; m A1WG>y'CvC<}'YcA}(0_V>HW`{z-- \a}F&U_I~sKyeN׋7Jc[Epc1Zݤ`|ס;#Alcn.\a>(į@?cTFxB<٩^/Q`sL ԙZr[syR>(܇mw|l>9|$Q5C+|}YbN\\^*vT`B Ϭ;Kt1}m`AJ$G/WI M`hez}8% zŭH| \ϧdb%)PL/L- rJ l/h716koGd. $@BrƽJ6<l& *߮Wj&O@ŧWX.qSX>[o);rlj૕#ڮT -&y3'hhTR np%$2F^E>#ۮ}A6dγI4 G wӍJ$[XP7fnJ*@E=HPBq|.MJmKY㴝s3j3նgՍ6RvN jmٗL$>Sk){N>s&`9h(6sb*%}*@(C_p,g/ư+D  --?+nK.[V4sYP}s&Lkuh*BI9KI} CgO{ #GKX~=Ǝؐˊ1viFkp1Qd^*3̂ 47 nCTF%c~bBOԮU4֘u3Ia43y2ʄifih0;۪voRr' Qg 4bļAںcAЙc V 3 E;M/$ ʁ n䉆*Iâx -.ƽ6W޵Z9'$#kgoc} ԝEΕҪB37ZLg^"^p wLr;j5B(T)Yl CeVx#n?T|cH-3Wp~k@SmΛ4*:\~hҦG>^sğv}en}&TWcfWnv`4cfz+ XA:D p -4aRSP,vNk?˵TAyݍI5D +/ȁ8Fnkx'߂KRFԊ.xUO&Xv7& HhiiDZw)~_t9jrh|Iw!Ɣ]/YΑ͹\Eg3;zC5,%TG;"BC44  C+:Ex-<,?B,3R μ+񄟌W;kPm2*R:,z#Ю \Y6rj##$V&[Zrw]eRD0 g i߲S+H︎)nTLr_06'Ie$TPW~:p>x}\=XHIVS=L!up=EIzX9Ŵ?]y*a ̀K"}L21(jғnc y!)JvV泲8Xz^E'(oηyÃ~F2í{r;.GM51`+֗XoQ )׀Pl3R!F04aTW7SCjfABI4~dBuA&804HyԨ+>ȶ$m+ Y"C8puS뚵ݚ=ʺ_Pw}sW?QJySM׺9 Ш>ad`a1aƏE[uP5VӔu/n8Mű]MFI\b9Ӏ`4!Ay?#ժ 2BuG: HctC̨>Ф-F@ƭ*Qw% h{Cq"m4Wc[bGj^lMs]6T|Mz5ͩ/np k>0KDM1Qئ&6~ٸ;ٮ~#%YF(`Ly0 G[6E hw'5zmoB'rt5k'W"gڲT uWM:Qz6kv4h\_#7*U^l(xLҰI``!A7P44ǧE#dwEŇKYr ->eo1A2׵>I #Cᑸ xU}f[seJ\Z,f^k'i4]b1:d=%/rڐMNjPholV9gy~6mܞۓx94k*P%:!È.PZ';Y\MS/f2²De$gkUi{TQʝYwG M v1eV6u29*пF IV,vHW1.ѝv@8Xؔhú?#fxoq.D6m(RWp!>"Dt3"Agݟ1 )Mt)ajDG8'6b&.{k++7NT^q6zц&kL51*R(QnL>n䫍C* -toplz=D͸ɛ57xfy\{QxՕSfr&nT&̀G*,ۗqs{Q] 'ulW`ߐR qQRFLj҇d3ɦW ]_jYYQ`K5"`t㫧X“Ų& +l*nBl{g|vo#o4ar"Guuxa 寥Nwt[ܸ }>)ƤK\D&8 by>`{4l/qͰ{OR/(8 +8?-c  #<4c2%Ӧ(Arf ?z(Jx- e;An7EP2XoE"7ͪ%<؛/c7Oɂ h+E)~ %ꀶrLLN] >Q ӻ1EGr1@mKq\ ./mRh̔@˶{PhqV?Y@411US鵼= jH-O# "#+ a{}`'Qq UGnd욫|^.9J+אe")(.Kk/q؉i``01mt!(B\!DEQ9+lIfs(N=WFIgd,ZpW :<ADK[-{+:qFxI:q*@k 4ɌrĴ$Ԭ~Qɱ Z%+`>)d"> A3ޏmEWТ}VYX:;$^%/I3E ytR 9$X qkW -&o濦vH@fM&ö̈́rTMƪ#0۳(WoO=CiF.DdF R4JՙdzY H|]xA&MȪ QFPT'L~* DBzbJľi :Bnx猯2oqpc.7%)iqی;T*+,KvB"ѽyb=c&]T1ulnGNQrTF0  gҶl"|oUˍ{n77W{:;Lae,[kR}6&]3|=댨^jᒒ)]g5sf;iQ #@G _H ۃVRz`+Q{kJ;BQhiӏ b*dF~.9!;R'29-hGB ^d8[?Hb7,2^IT~B>)^Wdޫl\‘}Ôɴ:B FG͇sY,vщRmq7߹Ho:ǒqL"XX/y81TF .DhԀB1Ӛëh;|Vn SHU}er\.T{v7rE}&h_z)Uht;$0Ábx[SFJFPIFx'C5 C.O/CLL8heBMRԛEyf:aΊ 8sLh@v[œmD~p2XO'!@Kr<ǍɨV2I־Q7^DJw:J,nx 2>^XD4"ùJ1Kx.Tӳd+Al=".v_l;0h-Lx#0Qy4ݳ5{4S\ɸV[3wۥwh.ˁXe?Š @t<ŕ.J(a5 9hBujZ]M0+k%wBKx} Ud?;vUq@w^d[HLnՑW]!k-ӻ1z]'uH5<*n3ODyC ;hƭG : NWq|-0uC;(gBPKjC2o7mm@L  Vőtƨo/wrmA: mxݮJ~1oµmBI=@TZEnENhX)7` . vPb I|$_M4"zX/$T\@PAZg>ݒ\è٣PT f 64eQ/|N>W~e?GUhzvF+2~Uxk3cE"۴ɦ1薼9!ϙ' Ln⥲d&WxLzǞKy"2D}_`"ebU(I_3^h48_2_tn)uX0̲aT,x3C'z'߮6YB6KetŚ/;^ć a=Ef{LXn,2wh MLع;JʼX_b}(޴l9 CIۖiJCK2l>p/07|/TTAʮo18TB WKҼPw!|gq@Fu/\*t(+#Н62IsFkS"YkqSd.6}WBb1MӸXupU]`tR~QHW=Cœu鮨7?.i\;(;e-$?`}쾑EF[i2ٛppXן lK }m-2nq2>/!ľi7eU|p7.pVN'i|ډ +y4y/7}y_4{5" [v1k0bes95㒎Slޗ2X`}[v %:Da=љ@f!^x4E BYq,VGK#4צ(sI zG@,jui Hcg5S%'Jx惮jz'P驋R"= &V׎))N?f4GUS* 飯:~B?+>! ?E.AYY~>\ 1 #ؘ:hw@ %J-P8Sm8,= ڏBr &JX$en~BH X$9[:vYĕ]У V,cD@ۦXg ^"}0)U~Л ?3OUTY;SZYhY:I-0y9?{Vj"-_̈~ -VXu˜\\a]e/eas/ Uu?}Zhbo^ ϭN\<%]P1d@ޘ]KlT\iɌ[R#ˆ k אavYXd-*姇bI' :q ;8xLe'+ݣHE(ޡ_D- ὕ3y0P` [گ;2qa2UK^%}`=>qK %;ݴ AFGM6- TxQ8Οi(JÁ?F̑H4znx<|l 2)aOϟ` Ɋ˹=|إo+H៞ @|lƪ˼`i{V ԛqeSA oqGeXM> |`rmi2՚!r]:-PN[̠ڲ3 B~OI{3m #A;L_O1e| #YaT%vg`95hZx 2=r2q>PYV%Ć8:DiCh˄>rѴ<*HJJcm;mC(]$IXj$$6!!RzDU͈<Y qћ/nAˮpy gd56›Y|ܱ׾wў_zMEI|w¡.pb)xc[X 5l7u:J ,rco![^bbV.:@6UG gm7ҶKv{w>*lu2 xʭRWUlfvg65x+;CKnTV ]k G.^kllH0I厏ڗXcjN԰g~M#ja'~'L=,WGj uIyjrfZQ!t m^2Q<,~!X癅IyGTn$Q=LĀ: : T7쨩 /4}hdQp'.N\ST=h'¨(99 g}P:A)~(0%NmaخZQP]!eM+j|=M{"ܙ`&Gq=}Qa8QVP*JFgѰU!̳IŖ#>$L*Dp#E2;@OG}B:0+I!9j1rb~_MyTaC"wW']]¿X멻Fce#Y57E|LA.*ޛ5i.6 d< 6](@oj)/$#2oYVԾh\, s=[̂r 5& LȺZCj̷TFKߖ`l7lQ)^o3EZژU-S, K//?=sk!=hm&;ѵ69-]E;R^ށ;I;3&tMSOMaiZO>k[ -Դ81 2PTxĶ ~b7pR!uB۾eĕ:Bvה g<4!e3,E㗑TR!@<CLRU@(ү(߶XZm\ 67gY7Zǩjh[<1u-Vp aV-NŇ %tfc5ހ.7l?| ʟ"cd:6X߫&d$^~|"Sa; 邅/"/5etRM)g a& 9~YJ#hxXq> R)A(SS%Lqu ȑ~z6LV4=ܮu|Z[G-lQkslzv(qw5/=uQڋwz$&}E4I {T M/d۠${bhe8g=!p>g@OtO|5 {rәLV Te9BTxWeSj2tU,DEm?~ꚩ'{ݔ~D?C n!i4P-v>dGF0FkٞQsґwsro!6U yXFR)Ti JrlHUåJ/i(UoDdnc 5B1Րt~r1¨!]Y$PY%St>{]_ea.]/0"u(wQ]wV*eo713@)2 r?i0ݵ*{lsKOylĤMlRĬ5#AH4)q땇T^Vف8( !uJ쎶I>zpR}Y ұ+$%tesvUZ-g)4L sٰ/%ă!vN=9 `xJ4&vT2< ֲmP;Rv|iП:EHý4x(ӯ06Z:C9ݶWrlNåkUySR{\S"V683rn}/cq[aATEW>8"m8^]KY Ӝ[pL aB~5,vI"x=` bI_G>չ7v vK# n IZ)29ݟh;WbHNUuгVr0on)U(F9r35͞L"m܎^?'/ܓ'Q*ݽQ r3A<ÔB2%pR9b$!zͼ˩摵ޚGE`ǥDlB[oٿ_+ ik|$f /;Fɶ)6^@44 o{\ Ϳ!qusIΔE`kڍzx?xK'Va kt*Jl{}=˜+׋tmy%h4jOvǗ>C\ '+S~@区E'@E00+}+ݘdǤ2Ihl-:%@ߪ#UuFK]Q5 ty3)W(0821-T`Ւ]CBQ/b k5$($^'I"ts*#[T;䩒Yg0Zt^ Db H<|͠`0B2{)-Iq&6jeҬPoYE [ J~%|`5k`A=RQaQ=33aU kv/b#ʂAfBmD|.4ph /L<|,q>$Jd esVɃڡF^ Lj mt=Y'"f77z) uW6ˆhbƅ xUlo%%N̓{lS-&8mtee$E%@i핲,\✪ԚM^sX^\2KߣИ̺0)ȃaPOG.EY`ew'W0gH)8|xoT/b c W)N yfEDՓgYR`}D@4Xd~vI߾B^EtoDJ@d\s@çS՘7EH Mu9atd[eȁ%-Ɔ5Rxᤄ+6ߵF-_i"%.oA!WHϯRyb~u׳x6`S ZVHϫ 8l fT(g\в|c1q2XiFW᯳l.-G(@5$R4:}p8DB.`fy/w$ η^[.RZ1 XwED* )R&@4L'Gᣥg'v ]~.%+" 0y%Xz iޔMiF>_yBBMjAc9I3C8ɤ9CݱVgiӫ;XmCڗ?Ʌis?:wfq4dE9^ CNs1#" 0RWhM(^t@no_9;i-شeX%_G*=?Ns4W5U$&=HR\Dvx/Y1*RKii%aa䖃peAV6Q[W>@*Gs`"6 Aʧ׽c$tS֊zv_?7{ h`ZkIBa'!˪:H9z[˃9*Ԍ#Sk4MR( k$;6'0jYMD% Zni" Pa\TF n՗,ivJ9:I v9VaJiy Rl}DM5; VyP%ȶH19L$\1'q99! tt[<' ЇnC~EwCu Jh)a+mm{tkcz}3g?-9F!^%s׃*S Vx98ӪrG1ABzX4=0a.+{GwAwka;ЙR!{aY3s`@PJbTfIO.ӸnQ$UdLZU9:@:fe5s昻d)( ,uI@:B*D"u'q!g̓6NhJH:=ô.h^O@s ~Z[ a9p.0_+1.;9Zaf` -!DoO Mnމ lƚR Ee@z_) jQٵlV#ʹZ4yYL>8?d.Ҫ{ug !ϖn @3 + ()[7 $YUZgߧ;r.#tv ۝2AおߤYHH,ASNb2Z=;H6jH~-)⅁ͪ~x بW)(rݢu!9޳ zd~5߆ 'ԝa!|5P QBϬY->w6m)WV6]T쫱|y-L߿C^ om8GFXb=" ĝxȵZUp rfYe0װ پ%bֶ[7'iݽupV7ᣦo/DSADN ݖ҂܀ "Ŵl2_čsX&T֫P(z?wT=ⱇK=ڈ"E>v .%Tҋ3](X(dxrO=i`[;),x+*yoJ݆[H 9Z1n߰烵^vEOT3> `5P狊oޙ&a&݈Xd:էK0ѵ@o˭%ո [/FNgiEIM2j/=>$07e4Ḅ$|s:=6?}Rc xQMC!kU H_^YT-[VL毁&s\L !|'Mv)-lE1u?W8Kb9NeϾwF$NPTZOͭ.1#(ݿIƸiiܑ^ݐ1C;8g<'is"-?r9J$>4Ȕ,GC _Kx^"XaaV5uO%ʴ[oբ8mNDP iF>Ki~Tt4Gy;pA&JDK*tk(^##2ͮ QO8BREWf)vN!IK5}dzGνB-\u2GQPD8g@޷Y>3/-mqL8X- H >'9G Sä\$D"j-Gֶz&_Xާ|մu2o1:55NjMG&z&?%m-Hҍ"(.^(IA0 Îj㜏ĞDAYTU H 1644Wij7vOl{0öD1_G޶ W܀ mݣ SQk)~Q`m/I.dc0euc,c7Xe{ywb2im2ij$fI˜ B$5"R0!P'/Y<3ɷ`h(z5hy{:SmPyJN)h6rH ǂsGuL*믐/pw j`oLfbhB(o#ӽ!A+ŘVc8㕵D 9mI#ư@sm-=pΜ-lNAe>W( K:z!HsBIn,hٓ2R"{.6tz E2Ƥ hO&)f3uI91@T|AEuC@5َg`ՆM3i c @6LlL6 XUK_# %F wvrjBCP[}(P4HLMXw5̩$`\=Pzs`\1cpIɂ^}Zmd xa=vl0 T+|ٛdy6c:"c8+/x#(S\KNz~EP P ̜3=C+*&W3Щ1d=@o=o<hMhOYHW++>bcZ ΂ x8ߛ2ڹL'$8;]aI+Vjc69K(lgNtOnd'.0srQqVV =.i>@HvE*@ g~o%nei.eӖ<j؊w.G: \;?S@iZԸY]ͣw3AVʎ9\>(s pUv0fS5mPUY C]h Ľ塡RaK'#Z:;vΕCa4BI2j tl$"Xk锣#G#/Idʽ 1w }@ >% PXU6 !8>S' iqSi: $^4=Ax:4tp  U;#씹Ȍ*6][QMH|)flϛ2] \fv`ˏλ8J;3BCY(< b,ɬ*at^l]0G@zt i7a đ#{N/|\- J+ q@%`l1[;6m3EO8Gj/dK}laa53a.@ lj<b#xgjhái~pu2sK9A~ඣVȥ=R5l1leDuϣEm"MX9:ߨ fb"iB*6x)=S> &&Z ǰy\H<θAs6,ʇ//!MI r'XNwyq^YlШ;F ,nҠ6FUs`*nN꺆`yIrC/1[UH.C6xhSvKOϨՎl}^UdyuVWP$g(6G̉N D֮:S?p9rqF:km@qa|C.IӴ:h@e4tޠTLPC g͝Ӈ|Eh}{kԊ(m_;#Pe(7^[8:ZrZsw_kv@>y!=pԉ{mx/`[ dž^ʝc=;#Z G !Kk)07B%;O } gPuh)|MC̣^X*u<(׀lF=jaa*͵ ju9 3qML<~|UwZζ)hn{_.Q'TJ;t9zOw8.ja,'VO־Nnz(Tcqzvi,krfi1\n,3&R,B5 0ׯ)%ze?sc3cܩshҡ*uGzHSA' ԥ5O.:/GGZ~sl{W-n xxCC?K{?pT-u @|#|Մ%'}i6pʀ֛CUwC5Cu ^GQ/γ#,W!+mYW֑=bqY4*<|EsWtG1v"|1ESaZ04a qu8Ѥf1W(1DYF[öL 4ᯊ eZTT$ o'b򁓲RF4/yA,;*cm=;&Q߻+~L~Ws\UzQG0XLܼ"֫W@+b I0qvA|4{Y8RO 1^bʿm 6.CP]f8u=4/&x;SuqeOH] W8󴱫kT}xi=$1Tx>VavcYC{wt~ח?y 7Z, ߻#i<4M5] pf')(>6Tac+..ALI&IL|_MHK@o!|"nܧʐ,=h2E)mrn7y ɅH 2AwqJ!K*&EFTupۂjKL|M%bsM47:t h}Ovrܴ' o}w?Y~&ƌs ce/{r p 8y*,\:Y]%V/@:ԫay.%`!0E(DvM hVE%Nq簞QFkU-s>I-5I[(x46B?un!SIO=~Zlq+`st*Kɾ):U9kPG/&jۮEH9^x"ޜ;O\ @}I<0ƝqxewpNp7eCʓ#!e'SAui~l,l/}5?crͅVE-k7uo/2Ai *etş,s<L  őVyE# v Ӂ<Ռ%8hN-,r:A@2:ZIxyۚ,*14;^0kvdܙ7ZR`"<"%shI,, C3(Մ9 ~o>)q৷V\!.Pf+~D(w00Ԕ2blRUD yЬ/|l{ܿSM>SE I8C}MtǸ7LFe3 9+`4{)Xu.EDM ~"`(`DYݙ*LO'+ \\Bﮩ\/s%Q9G:eNN]RbKC<+v s$Qt^=QSb5xL9Y唆ٮq.h߫r?qV+!b_Z/}R6~*Hް9NqRSp_CHM?TZۑ9`= LlHG=l'E?(bJpEzCƺx{'>]l:biB"Y[Hvkᛔ*OقُN'MZ)@h)L~oGeF'&dw>"GPbKq$!]w(2r3BfCeG,w_RxxHa܌4h7˩.H0Qa`k$ӄ\6Sm]So+ޅ&%CM9ot<ݛ1 XFh 2#Jj>@-jMv,XV%|Ijc-+n7*0 -=sb,YQGA%PRܖ5Gh!tD#,r& !N*i;0A( ]œ :{] eM"O/ dk*켐ĞTzNH^ܾNk՞ b0╥'̟%+_px0rPKp W_PX(…LJ!"?M_ܛùb:7z2dSoH J?a ~q3Z 8Y<9yt``zn[תpIn]̆ c`y[f CK$U^ SF%U\Ȑ5{fG\P([yңU.#;Թ!0_x9 &4a ,7v7P C^uR>NܴEIIC)n#rv 𞿼\^?cٙWt"w ${4S<pB~Mт'&val.'Gx\^F~0!e<1a}.|z5*E(%\ϫ!Zӯr.Zuն9ȕ.%Fr%じd7UsNS`.؟dKd@ȵٛV'Y8g ^q&rW5-tA=5'_ ②>Ng^ mZ)L`|4S =T`"ikT'bG sQKrCO+`cP/4nRsx?gF=my$T<c  ;[1j c? ]jFܺ({ιnGu+wݞJ1-CKgqd[z ߾*ȭ?f ~Ų)sd]$Q1PvW@LQoǾ&hi&'> ߹sM-d o7ʚP#@ b. =7\k;)IXbK⃡6q-JͣnpoƩt˘T>ZU'GWW.:j]+2}\A2e^p8v)Yd( VkK?&d,!9wF{6&GiR$ft):| `E6ux~?GoB=fcq+r"P}ڣň5%+{o8&1jGY4={R}swlqdmӵ6Z鐷ԁ͵_?dg[QU{Gƾ!2h?=5?Ο}wÚ!f8 [6^5M\^|U2D(C{cU4869fQwbx(?8eþ.[a?ϕ!-7mk1,%. h+Zr4u9=*XJWryr [I+&Wok#h,9UYFfRpJLY+;$))NpU6-6]aLMg_^mvl-M_S,CF4x4ՏVMg6يr+ݶMM[eMzޓݯDj޲; §$&CWA c7$gCi `8Nu++E{|R84" p;tjYvrl~L=P+).uo~rk/u}gHΖs},ֽ(sz0\f72'4hs1Q'L U 1Wk4a?BV^vr^Wq 7PM[vM/LR$k| rFoRJ)](5;B7넵fYۉhGlhhv's4&ClbC/U S (kDByJ1"k3S9B,.8rX_V8 s* Zt,u 2FO%Ta;R_V!p my4:#O$?CD{wOݹ9Oa#pxC{fC]5Wߟ0!4˝"wI %&Lh}(^kًMsٮ6lߚ!Eg|Եsɍ0'_ guc>s*:)Ays5N 4DgZ oTI)5ah/cF,A]ljQ8~IޏG 謣ͻ6nZ-*> (ڜK:#5QGXh{j.+=r$ݩaȯf6n~c魢NO%{+#1ߘyL~՟neO`7՞Tق938~rq/-tK|/ 6X.Ц3Z+Pql9'" b^{Q}+Hڌ[8(@랮kq¦5 WN?Fy2ӭvǶ˭wΤ2.1h3|n'6Pâ޶GHХ3/f*X*~`G0h-w V%OT0Vsan&C皑+7 eV_"k z&V`U.Ym.<} f#8M8h[ekpb4n|$T3 *KYBC(M}+8Z<4DzWkǭ3CSdԨ9HsZ/af6Vp6vbt (#DWjC^J҅A}d(!6^ל֧]2ܝ{q{5s`/.y~6/Q@[g*mJXDP\FX*Lq]j xN:.wBya+%p=Mt KW)Z[򈏩 U WҼU hSe/xn='4RxjΠDޟ͋f@smCWk:1ϊ |k.#Mqv;&v''EJTvK_J╮k|qJꕱ΁y?LHyM%.Q|_a X< NcB5:d lM,߻u|` WW! ΜC< N[mVo%DG:t\ YJ cUC( YDVS}m8^\{D`n?{߽TA ;i3Mtw 3ˮ]&p-)'嶞r5yUKzydp#᱃FM=KQ6fkGR2Ҏ ʍFF(oITd>_WŕH11ֻ !N ,y K;XFf-ؑ$~R炕}',QE׿nұzƛ׋FGRYdȗꌌGub5 3BI(bHIhu4+ 0o[o{ b2pK "NmW#h/o/`ijD>"1Aܨ8.%=4Z^M[1E<\e2 ,C2M|DڍP:CMZ#߰L'mRZ5s{h<7H?蘆OgXbP6ERtqmg>\$LO,'!_{!i;4'w.JIL?^Vj co6s _sjt8=2M]6ѕVL Bn'MY}+[/ pfv't]jBp61WKAԗ "=z7dZ lXr .nӰFegaۇn&  p4.'F8D[̈cP-x^\[kuh9uccK ƣ050yNFۯWzE6Y֙iI;(y׋o ?A&QKH:ysZUUsم;lZE|Ac-I=ߚh6ܓ Gɩi#؝ϒL [A2+(TC>3q?Hi?ՈNneNTL8"-Qk@˖N~٫ hiVUzF%k .tRz۲dq) v4V)DZ?S 5!h?eTPb4Oyjy:,K<[Rd6X#7\f WnD'BtD{wE/C_>IR^Z]1Jtb/CxKP:Vs̊I-vc[Rft:.FqܭHHn#=P\Nҳ~$5 j9@9V>7D/w=XQhzgDM[t˱ł[D/t!ߑa 3i-ީrNdޫq}hrr }Ng; @Ra,I'&:KģId T*>tD0`E֞q9WmLV[Nj"$6}( ?F0Iţo;=O3&%yu=R<ﶱ%Ԏ'dt+>-aI5, ąT2#F1VJK-GNߐG}̳-ԓ` '<"S*-nb 3{(g?v XDe%KR 7XY]F:^M0\+]NΎXENr_A׀D`njpsTg|x ޼TN{}4'  vQ̘Kbvc o`/a4(D<j*)?($ (1]M Zm5_X[2Uh!/=j*Z"̍EE$xJ1Y~Q:IJCPL^s 3veΜq_ O-e,ൔ)T['h{NJy$ sGT$VX3ewژU7pEyABo B0 >ޱЙ fꧺ_mh0kanxE T6LpG-v(鳲l=䍝5`ߔ຅U&FxnxZ f㮫\9K -.WTl;>FER~mN)ou~b C3!0g@4V0,tαDa$ ǔ5bm@yWoUT)p2%~i]|^i-€R*D\=&գ"eΡF"l @4EOs@_ v[ fpOh֥9!W;JZB%k 5TY`B_0I"Buk)-W"^`Dk TҋAM~Pk%Z % K"m!vuPAHdtc+f " {sVgWdԤ2]dNH7L~bh&;=;V_*>WnogA~e}3YRvYE$ diߚ[<\zmA|$aeJt*'vL]s-@#ZNMoBY4*)̰#1bJgvG]r7q/;obAbSp0=չwcDya]5TN/=g{,K/[ JAE3bd0/qls&|0j椵ZLW4!گ<9\ULS@bss\/*EC,H6[&nnWTyxo/RiH[jidr󜔐p|xN:VPe&) ckyb! y-_!Πe@jݥTUKu@Acﮕ| }Lr閁.C ?O߫5܅5Gtݶo_6JsȮ`$Y"#`M=|a#:XMv?,aZr 8 V ;Ąly>-V5_nw,%&Gtt0Q嶧ձQ Dhz laDn2fmb9}cCc[}b_vr&RC3%XgѵlY {kjK9x IQ6E۴Bd2m7_vԂHi! 6ȅbz5ٍXB* b{:*|DzA!p6hT^JjY,U|בz2B&c# _  b[rς7eÂ0E$8+TAbIRK HXnr&GK8j.rIhE{z(ڐ>iz~#l=ܣ u-:aNj8]$YK1M΁2f;\u@q&E4pV~&=-pS`xX7 7|LZ,S˦H|+6 9̧ HkМP^<@9rFHv&;Q09؆/,zE;i`y@[ߋ404 WΥK4d=1I%e,:*V'/xMQGDҼ/Y)6ta= ö|]5E6|wTXW+ݤG0#Dp?j:w-v6ْ9w*,owM\U޼;jG>fzQ./$V\_E[賋6D}GS&+ĺ~4ثqxSkPZ0]< Z4E瘐Sq1 >w6΋nBf ;af)GW YB,l#OzguuiwCFw䪅ui&ZHoG&ODH z襇_:7XT~,ډ odw\[mP461sc1=dm<~$ mDu ';;eʝ,~R i#RH/7A~ۘGQ?]}"N@F&YSh]qcjӺj 矐V#]QB0tp'O~֛Ӫl?2S%a!bCEs|GXX$ⱎR U&H( 47 oC4#MAj8Ɨu-"Y0g_>RKq%7ۡ{uOh3*('P 5: nCo⩶%@idw FUTf V]%L&XUA<Kb0y @u7y-(<|_;ensbeT9|;,/?K M .H(O{6Z-C'/* 5\l?8 :fa`BsnX3ّR- 򙈔(L]At0R0h)7㒅XwWp%\a;'Ք6#Y7gk_Wg6E1@؉7?}qV/,X>d(5' vwR:yRHkhwO)F4D|z"o culeago ˀ"r#J* B|QcK-GQ(#yΰmfMkO^sZxŠtBIkef:Q\%DbkmD6N[\h[[fkf"n-0 7;)qdFwjh<qV3|o:k-jmd3T^C4ppX),_P0+h:bd ,.RlFy ghq\h3T897ҽMK{HnI }06"PD(؏9?#PǮ#~&˃,B [l89pwFwe %9§c'I7հır8ʿ<~vPGb9YtǢ&DBLˈWy f ǒ 9PHdx^q//{(ͬMByɰ,d ॊcǗS8{%$0z"lL731a'C0ZG8ȄƮf:қ1[[A}$U*ebW8pFw [7T# )OGQN{z@zvFūRQwG'J!0c?}\ŧ6Y$(Z(jmX}^~~ e!cG=ALj}37tۏ._o M3 ;ĊJdBvGCݢrKy`H(ti!gWl ۬vTiT|;ۯz3ݍk@!Z6ґ7DXJ%v,PC8{z4Jr+e:f6o<΀ c\䭧PW5mA%DmQ'< horۄ:~٩{i?ȏ>"Ϛ0Y B<odXk~8f<6FfJ}΢$$WaD%PZO(0>j~N>M8B,ܛ.F/}<8iG4WRh)oڙ^M/]VP~eriK&Ymq)q%$ʹ >0xm܂C`U>^g"^q > : [yR[VՂ\=p&> \I9}q59qܛt7T^FAb .K&?` =òR=R] 8=; 伈pͤɶ6A*q*!){w(^4DMx،omh R 9cnB/OcwȒRE"2yҚūt@oE[ӖeB# ~>ͺ+U`9*^{\GIBHl mb21MKS`Nyx(jT$kbWN{Q;}!=*FFqVDÆ}Ri,Eb9 on%}ei4nڌlCOxBvLYBj |zE+Dck%kIZ$7T/'m? sJu=ܭ)`ȳN;FxDJ()GP :IؐL>E `zRj8QSG)Z|qP8T{%X1K&Y>Jt V)sj gЪGؙfQaa ա8 07eeO!bpUPy _7]/*]ftbNB)4٭F7!l\̤.Nz#b|)s߯_*߀g:کmЮޥo''Rqeh f*7$ \~یi% ?}T.nZdAE+׼{hR[+ok?!_fWZ^i.Dx@NFcN! 6W+_K!~S~|‚?) &0LGX6{r&D1ݲ)ua܈_!&0Op)Hmgwu8  uαT!@ LW@:9gǶF\T䉟M+ooEj#[e~ycaX,Ws)R_;)=|ɇQyIc9m%!IZһ?<7?N098'k:\'vc*DnL,vpsC{n킀 HJ޷n ۥt>C.Q{z9DYR 4NVɉҭhf6r_'ę)d)eG\⭕A-}[#+rr\ui.mBCz+ ek 5xwnaoȃ>TBmr]; !騽]N/1Vw؃-|!Ү7㨅P] ~yZU\ 0"cO W'O5 =o}N\͙֓v:B+-H 6[n}@tdrqY~U1z_JK,75df Vh(@c/g/C5>lJANQTG#Og @s&"ܹ F.0IT)trJ_I># |jL6|ۀg-ejtF#LPA"@``s}bݢX'@ @n+m5.:q%L(`);5z DYF 0v9iG -nC&tGH{MO݌-\g6O<_yf{"ZLK~fn8~PR,\Z(ŻZh5H+Gzp_(ݧa:(,e3j2c& bxӠ X;0E!C}=Unb8,><>@>gC(y+6v-"B9~W }^7,{bXǪ28q ò,QbJ.^X" r9$o/dT5p PA^J%?=S9OA5+GAI~:El71i-#]rhcXnwP7dXeoAns57*v (Z֙W;A'T \No-M \žX6u x%ݯsF #5yߟlo1s䑠wQi&Ɖ9Q,FbJ)7U1KB4KPN.//[܀:$os~o BBZZ]B|O] ϛ, $R:g^vQ7~i)NhnaHL7u7Y/+ؗ.EYt\G<#*GJ!>E MV~[L/uTmFqBkENldS9i|tXs;yE[u+7|E߾Ǐ&Z-'l! QJO2)Q_NGty@LMw0i0QC_h4D] CoȤ\]2㷫aچa9gMBsES #a .3'EΫBDy1N7T]-FXV)̅<#YiFosb/Z/X e^~hWT / G2sc!V`lU %9kҟRWT)X?/.C {Ļ8/Vet7W,?vT {; ?Gp!iA*:Dc8:u*>HVwX#rlCZN:jo ͮbwdC $,V~śa }OlVrǗ,%Q@n^n_4/Zbp|7Di`IDH[|'@\ HFn1LLPgr6q6/>lJFTH@4ԯJ^ߡZ({nf,i^Ӈ1H~!)Q0RwG[3sf>ۢ1* yBMRt(4栄^,dCZd.}Cno4V_xx;#O\TzAvvyB$2jEwtڝJX2ȁH5~QpLZ%RqdYdte)q>;뺬ȈT'RYoM&'7,qDaAj 3ro6>gўE@+ʦ#"ܲH5'_cwǍfewFOb?#+쒎Xo!^Jce@K=-⥨9tχma$_4|$yԬyRjKS,Z'!@OV\!=[V ׫9ޤ8=k7a<})Gpx5 }a2ފ`Nvjz^~L"[Ft`@Q^*1lϐ[[c*>O7d>Lte /I'A'DhdQ9kАqIYhz>^KcCT[?'rE Wt`"Y1*f_OѬTo JQjauoEl$+GܦnL]0aMO,Б@RƜ yTLAq!.ߙ::-.@ŠWV[AQi[P& <L'Jv6)lWO!Aּp˿pӽڗRwo3XÆakǯ{rTRbaC'SVm1lf1ua$BO!I_8%_}?4NK mLQ/\CVh#S Sznr݈Gnxs"~zDz嗢`` yk42 #YRތ!-|1Fb3{UH+˰mMKuwk\Iz%@`fZTI-AV@BA|"ou"D=Ip1*"g-/(g"~;]k{j"=K@8m7:AqQT YO'}c\0/ᤗ#li§;!o)ҚX j͹p9 .V"&#@sq 5&I4^0QODu[g!Nc&Ω.H+P㵺cXH\Qʈcx/MSW<߇78(|r\D*6p}quh=eK+Fn'=̶StPo7,FN-] .w/ί]$Ƕ(2Szf+(+(6蛦 nSSAt_o<*d#>~fqTǹJ"RH`GWB'7uh>:̍qzi5;#*$j-@ͭ9 %h_=fkZa׮%rހi#=jyߺcO-ZD;$B rt`icվC/nˏE /v,! 1N[e ?$xze|N4 6u~Hr0k,I<9[-==mzljgX'p.رp#dEq^^M5bp8V &}ĺ@j#`z}92=%bSd<1 ~ܴ~DnF3e)pyBXҍHGc)VSM?Kw#v;j?r[ c%DhǶ~۶YAkNy<Z xD\rM~F2paSr>sq*|Equv\U D.S3:K&wJ~.)~w5gL*RE~& ie=^#n˼ uoaU">)Y-+EsW$~OH݃ ಐekA 7k<3}s9dz@I8&E__,~}>C栐*@.Wn_ B ]ӏ}f^4q}PZ]rNy9; 9%F7\m跗b)ULA[DY[_ Mqq91.$Zl/Gd30pEU Xt}<'t}dWkV=^¦),ewk)˵ J2':-IYDUH 8u+))`~*Io%h߶F@ v_~$t*w]LJޣ1tN񮡅9R Q^Ht HfFl:W;*Z攍qY7zhoW&Yjڕ *au >8̚\6k}bB)}p^:UZF[yie&~^Q攪ኔ/R9%yxNּQޣGs5H xb;խ@7tEߴ||`t>P~y!(C3Ҷ0ߚt;5(vnJ??/JiS!b,u*wg[]yDPnjpءk,eGiq_ībRz\4LB7/a|Tdka[s~ͯ[kHA]2[Z~X88`^duH -i6&cj/QMݏܖBR'>-. )]1#71,tX3sa~R'e;ޯB{mPю#ZucTf"$Zox~xI/.ˋ촓G` =C1ufs}8CԆJ$d$upW mƳE"M׹e-?xh0Pž$#QScI0o~HY^|$c*D|Dlfц)AJ1ȃ5d6)R2h3ޟ/ag&+q3AQdџV>xit";Xo%=YҪ9˱p.k3gd^U>+$MY''Mm+}Ϊ 1renWm;iGi(hA!òT~Zވ2(zdHfPZjMom\E;Ksw (wR@7`=ZT`#c#W!C8mHQ{):Kz-~@:!j?MA72=D Et΄3jb&c3^Hn4Hwխ D>8Hv>{ ,{"KFЯg aэ jĶ25,PrhIbދ7[Hz;@ņv&2_/ Yxho$x #Iϋ ?KX\/ sTyӭ% Xww&ʘSto8#Z`̶?IbT:AY*\с0ޛMKPI/v]ʁ".ѰE(3gʋ9wwIC87sör Cix Im>eH&=Be:lks8Q<|dA]̡nյEQ@_"'* ɳ;ҝ.텕d搃Z| e77:`lQ W~gHWތNwB14 IZcˋ 5nNbj]>*^ށCΕk$~.kמKI4q,-AF]7{mF; VOB_ PjVL2NwFr`-s FWIz׷]t;zS~՗XUש#TQQ vDGRzOT :sӌDulK*39_As6J^/cABK,t0=p3gGɵW+R>7h1wPC`*(5~'WjFVoulث;Wz! 'ͳs@LGu\ C7t87)q,㮾38eWy4M|W2 х9UTX{JSw|r`7e}voL7,M[ܤ'ў)m#yvbs.X=6Z]18-uU2*yKQ<*.nhofn!s dd| wKO>g~SA֠PSAaJbIY>Exjdd4~vƣvuz&^"gH~)~jhpNov/e(ޢ ?F :lq\u8&)5٣P}x> Vj+SHᩎJhKݗClbxBsp( m$ $+o7\|b]v-iapf%;3f /_4:HbRl$X]y1 b,ɟ2BIHwETԸ߃CjxR p܋S'K de}jqLƵ@ӅZĊ02yMe%S`rgDw4; emhv>`}̤3)A$z4J`%lyLK&5ogW YUk&jF 6l]]$Y$PϕYZPqN •D~[i2zIÖmáBknYEvfx62hz% y&Dw p~=/_%_bZ:j/#*yhp;ކ%\1{ Ƀ8\c=u(&{[Ee7cg,Бa]5D5Gը'xUPi2HJn (YQrd0#$cHPG6Ĥ} HO={>);YMn!5}!k ˨_d4šU)=S M6q*ΙUJ\s Gnl"8c}KM 24ɇ%[ͱi5'b=_cX.@YQ&DFBJ-$ԡ~/sS&k,2[=,j }˘bC~Bc<6 vYq`ݴc>`ryܸR1j"WSq=dDل]U4'}9DiRylYs=|qBvEIvlٮs][_/_4c>uP!oB|W6:[yGg6AaB'L?+B?V%xQ(,Aʶ\bAMtǓf6oxK<-&Am(g6U<ﰾvX[D}w||kp\eZw#Ѯ̗nCs!TUS2" v&D XOKօ"F&ZHe8@6FY/ϿmwbWy㯸~Ήc=xiWEH˫Rۖ3h.If zDM(ȴ|o:-Qv_5%  KV㇆v;:rǴB73m_fn ``—=^I/wf 9[jk\UzGImDM,* )k0cegי3$/OQdvdQxm7'(Fmt sWȑa;x~E<oP708ԃ4rsD+k%y(iR6< }|6Vj؅;-7‰T TԆQq-PѳO+cZ=fB3w vɢRvoPWlZ|߷*Z,j實uzt~ZƨXp%kv{'M'I`.hlQ(fYzUJh TNasx&Qj}҂~,ƴd3\[=TOZS3_ƿT gTk`T!ZEL tc3$Sʹ?/9gA&E`D_bl>%V$oFO@_$A?|'mt& B|MQ5[?wtJʭr|E.b܇Րt qʄ&"+OFpؖg}[3D 壤DŽcQ #xYnU*L’5*A4[ sWD,Ht9LsZxjxxpʳ-MS,5O%=FD0iLyh=PY4‹Yd@Nş[E[@?1һCD!"FC܀VOWS׽ÔcܖxV!f}؞W\QSް xhLD;|GG |}ev3ՍCy͗2,b,)Ҕ٤w]8R9n8/nK2BMu|7tL"14$*fDdΎuD`T;VX@ؚV'>M*- fak] ]3ҊOAfp7*ݔF $/'Q|Q/0KtiKu'ϗ}@%sy9Rg4)-S]cz:/ƾXqp1@~U>5 k'Y6)Y( lMtAJ޲(I9\w7_ƴܲEvjog7-Rm|f{^֥"K+H\*t?nL?#}m:kTgD8`\hčƘFpᘵ"u['PP=o(H;p[=AC~6MH;\pj&i.r 6 -`}pȲ'LnAt;U42]Tj.SGD5Jd"UMRP_ɊO @{ms3h@[KHq׿]%AM&"95ɒwm~i|#^w8 x(7/a|Eω Hc=]G5]2@*vrv}̃L&!uZGm7R.ar/Y<m.$1%3t/Y>Xkg_UAa6'Np3װb #migǎi9&kp-#Iwiô6F5DpXXJ&p܌'Fpxtc(_`G> j*LMr1XP଄,8Ql<Y)^8V7qC:oRvx$:%UĜDVe8Hfi*|cfw 6y'kv1lpC{x _$k\CaM3/ZBlr c1P ~H;~.eޥRicBʼ7߱E?1, u[(W@ig9F/s!n`jTb|DY"Qc!lÂ%i @cȆJ6&jSgSW+˽yӥ]Ga'Vڃ^)XGEJ=$z[:7 bS|*7Ht*Fl|bq+%ZD躛)Q9M-O":O]' u'agٖKY$0] mvt-┃ė3B\ѕqt(@{".VG߾0Z܃d~3\˫S43m@OT)̙IM(Cx^ǤFuNSMZ*#f43KK*QQ8LE/9-GY=i/TKQΡ؍1IY˵3%-m]KjŠ̏KWa_zn_>}i6{JwOAjD*6 U[\k؜ /nR 8¡;-pFcsstak)LY EcZϻsB<[W8i7=_pQ56ut2F߫M %ѳޗĬ+;9*)@BƦi3RfJvFUDd_T)#ofg+wwoL*/={Kz<}9堸@hϾ9.[c`,Jo_*%BITi!NGίaQ%ש+l G.a"էk}u}@qx'*WG3i[Fe;ӟд+/V37Lk}aDͨ04W0wD1-^Xʉ&2]_?I-r+I:O5_T:3,9eb4s.I6аloD$cx+_J! UQ jb$Ce !|P ( bM #"+`o [,0t+LýSPn„38PYp4 %3ʐ [n]9DiKz˓-$C9눐b/ɊGh—!9dpb+`j_}gJ1VΏGR.̆JO t$Y:%Rv ޗ%erԸ^עٚqg+h!ȶW':/nJ Q>k2L.%g& =Ԓ)h gt0b@ Xh%1{ ~1&6_# )2+FL@cf /Y;l 4\L_- 4!|XǪ'Z׈:x2Ϊ!+1|ݘ2G{6W@?dsXnGNpQc#nh$3UpSl5jeR\Kw%YEisd/#b"#|6wW[QTTJ4DSlCe5!]uiݿať! ,n)7[OqRiᐰ.cyz ]E^c?O9kNy!}Er듦?nǔʶoXM&Qoj(8*ע;p!9J%lFVN\gp^:{Ⓓz%|J<4vAe0fVX|16<]۪̼ҎԄ*;B>~L60^dǰs1Avz?a^gBt03yY@\&j~S"Pg|d(GLN;|JI\3/#`4{pH䪗v](br7dgѬ vmg\gJk\͌v!pnR2c TE"%#koթ.u۫%R&͟i՗ꞗHEԝNKbo;#ZzOĊ0IM#ah>y5T nM<|,7 ej?b 5$%aU_0+K"%hkϦpWa'Lr1]($3Dk$Cz޾fޕT 5p87?)؆mʂ8EU# at+2c 3iJ>O^d2$/*/σ և,oMbNeUEnMWq4:_r]pJ4QξmHADuF~BH5!Qw‰WE䤶9}żq>2Af'!:,:1_?,^ەtptAq3 P­nQƨ G@p}BN Yv}zi8F=pk<.v2FC5{Fl?Q?e%/^dZNXcqf1hv9zΆBvȒ82*fY;R@Vl.! .#r&tmJA-V,g=ٱTCγ8[SlܙxeY>? ͭj,]/J牱S-S|<'=]ZUPWV@*Rc= 7֌D} Aeli3,42pJR{Eh%e[Ųh~ՕgX+gYC[#1';=ի%*E`/oz&ԇۉoAFq4<NJIB΋rr?jApG^ Ӗ+\/ O XNzDw K=g{uiҢV#/O)VZ~dC&NUtˇB.Yَesy PiPFN*? Yȍ_ȌFZ)ewp9t]6OrfnsMJ oiXť5ggŒA]gdE`U Yd~soNVӬ4O<FSzKۭ: xe&o_o j]'֛p ]B Ba.}'O( fZ&hyi²hMg?pB?Mv%T}; Z>z.n adi`3a!ۣE%!0d?:};9e.ON7Z4Ǽi8[cG넬fq)e]LUv6Fh G*٦LV8Rvp@\ie037%(uf' dT/r%2zS4$qnܾ!@+e?hv#I@ OpWFS^!t!wU;bnb.9loģ vR/[ymy;) |իYACl)c23uõT/kA6MV5 4VFLUw=8 95@a :[qaj%Ybq_Y)<$}Tœ0z9p9™D -WӀf6=Ɨw#tֲu Ċi&ă|kz XRE M9:~&-c /'v37KSќBkQ3N)SnfP&Gp Շ z#(q5@g[\+Z˘Nnv/|&nG;xX2GmMߨMzw+F:po _oB%+ȅd=gE#g$j{I4I{Hǟ~R%&7I I9( $rriQ X *soo/ƪ:TX.IlU  udsVAqgE.v3; rBD+Ypl]m&>, z4|=aE7©]pīkzᚫ-AT뾅æX~' $_yyQl4W[zTnGnT{ǜvHBw8l/ ,ݷ>+(5 pwlA4,YeEԜ1]&b52.KLgaַZ$l[5*똘E b/\~ .w}5cP;orz%1:'$Lqb|{Qv]ݍWV#G%9;尅J\-F0>C"m؍J|j٘,Ahm(u9D']Կ>HT+ (e59R!xS74 Mٳ}@d-Ño5E$8o=꨾$ם\h{ۺi0I+=.u׾j},L4-՘$^ d()0行;a 8Wٓ:"o*D~A:J' >].^pϪU#GVjBskicaH,,HqPͻ.^3=%q!5Ue#AW# 7ԭV=AsQx3_!r16C14JAX$>, G!M}u Y7@4+{DBuHMm. "՗H>ߜH5=&4`xcf)P68OaώHTb g{4t &o *q-27-:Xٻfb #s.SJaiU@|,?d4DF)vnf:f^tIu$ /93[~"Yup{ pdwj׹!aS;n!Nt(chV|Er,Z്:Fk0-C3ׅUO7U`HYN6UgBZv34cܦ`S̅RoMLZ<Z0'X\\C {38 EoCO`r3Jxq70 AifF\ A\hjͮ2a,&@zP ^WY<&=啓k*z._Rqh-̶)Z6IO VܖEDO @]IS9ZWk ,/ԙ@as޼6mG+uhb2)EF4X?u3Nɧ ivC @X BN0-ydZ$F7-Ikg.ѐ"2j  [ KڞʕUAzXa)1^ԛ}`jݼ d;!\X RzGz *<6mX{O{haWe9-2Nڛ?kR!Ll-fzU=e@i/QԘ@ui|rf5.4.\+q̅u&xb@ ^(Sb%}bMS`'VX6S(7XqWBԑzRφ4~S42\e^-MpF`ݦmkt8~g\FJpo G$/k-ʿ[zB$}yK-\Bwts4nZ2DWK3E y6,0Pszq9 f 'JB|pieKߣ7k`9BiA~̷*A6B+p1 \?fi[(v5"mEݰ[;ÿ/^1+u3>$L z%0)T5H;# 芹+7eAx{)ZpK/ܨljCJdz6)/ķbkU:K5v2}Z%a= [ibuV):Oϻ̝n$8j/yUV3%-6dǴn hfFD7V8Oqrw\5)9lk <)Lhg8r瘏v7T F0<{V4GWIh.)vRoe8]=DMǝYtIH1ɉh!>UB)fx7\I貤Z&N< fTs넸gI|S!/_ t2(V!8T8"V.-U-8< ̩K݂r>J#[2t6*Ux>y rm>EAM#Wb%-\ӑ$#ނwUGte^=l䏌t->`[:ezc%4tb|QTj! ?0!6F -@2%^2ҐΉK&yNb)`">u?T9( E}t;AP*"n 1-qF2[팆8DM~˚֝@Z6m9p`,#CiQ_aʻF{rVҎ^fTMRLNGFwmLXٸC 4%&6j$Sq 3ϴ0V~=O1I#zoР׌V( .#L:bн-/ %/-m/3ӏJa(9wy٫pU_޾+ikL !7EcEJrB(6n4aށ o'&by[CeAfx>PFDe⨚Vb,lK1$8 u _sFie#BVm 4,KYw,4G: 疴kgm/]Fnb3$S%%BXGj.ae߉|Gct2n϶3<^0(uU>n6/_plDuj=%?k`0̥ZX25 a|xaFWC\ZvQpػ/ӆxIz)k5[a^ڟ,;ۋ>&s&Id6?d(=ݺm9 aҦ`;&V/#~>(+r4 P^ l0Q^&!x$'+I;x ~~R+o,j]z58QI ;Q:1ʟ~51?yAN7D=ZP$ڼh=p;&O 9Bgx_!?h~Ug]$i|8谭d,$:"yeF&D]XHYq} $e>ER" ݊ng GS$ otbv $_n(h$~PR+ٿd5 6,hkpAN7S6A1Y4;6y.\v!JGV#_MeKT8r&"s}NN@~yE|onA]9(|,Pt,|]k:C0d;eTM`=;|quL[!@,S~X5 gോV{O<7.FYʸ>&Q_GV~=RVl8 /e]bfS 6kKUش1ZΝ?oEHQ߹c svDA8s؀s'W! 1bp 2B`se3YULnLux Bҹ5WMxM 7P$Q(.~v2].Eq09+!|rNX>98+x': IigLQ?[3O\kiwyfm\b%s2D 216ڮoRsj]?0av&Tlo<^4=f_jٽvpGN_qW(e{`'+pNiQ_Y*̃퐹[Zf S$:CҫCUCaܥ25 =kC^vF)+TL2@y}c lev " Kp j9ݘ_r5%%8'g jf+Md&mcsql^دiSmS=M2֋-E-.4U,!{"  񅈴8 Ih<9[,l/_+({)`WS{F k΄31J'~%|)Q6[dzHp\aEfR{uƇ'Hw^LkRɼX, r9TOWW]N_0q>oPj< /Z[hNKFpF0_v@}mn F׈p]*oF?I$;4~z< s~\$i57`l4lsz UKA`H#FMk,ԁ(w?,Ix&p򸑯㭼%srGh?ц ^gbe!8hv/Q;)Z{Qx]yDPnl=@ hJdO#4ijEG͆df[&] y\ڀ73¿d(|[ߊ zfe SJb%x!!lń" SW&O_ҶS i?ei6G:, VvV۴C4rZEd.?rXvrˮ%!w*jo}g&+ +g•&=ai2|EJYC{\ʄ[C{ؿ Y\1ݸ?w  AhYLe0Bx569qRdjp{d* |PfKe)궄Y'`Ul:'<[ ,_ך_'d7TQWQz.jF'plG97ը#]jx{V(& K0Ht`S#.gY]^<BFϭO3lm^Cԟmtdgg}2)1F\$QTj]C1/ ;{U,K|]<:w 2c,_'&]tGP1h+}\<[~Znf Ę+u#2qkPS=z%؀>Vsw) )#l৷ A30A@\g6b1w{(9Y4H|fܙzber>Tt*[;[@g<߈wT5X;bEP+ҳT1ԙȧQb/!jp<}p#QtDÇ$ IkKsTN\R*y)ku:\OC $֥̏ǖjE* K鲾a`+B R{F'4hfrLTNPċ5DIUXkM3BÑCgF|e(C'3EO fo0*,_?*b+o8Vϋ0d6=G촻.; WS z .C(*ln'k}e&Gm׀[ G>S=6=Ma﨓!LcGSw:ɸY$Oo0%F>ogxgaw>6&׃;bڗ:*(ʬfLGY?޶4>At~aپa$ h]E|^EፎMlS%}D:s7R[nH8žL/B/ 4Mj2BԄ'g!BCųtr*qv$ciC ײ4aŖzh`0bR!wb +P|^5WI,!a`GM N +aaL<簾q I=vQK(BK%v$f.5WOjI*jH6-8H2{>` 2F*2D ~ŗf- ЕѠ9,Q|d(nU*b?9z0v `iϮ%Q3",J3~KԎ5$Lvx{Wt/>ˮ|g6`;kq[*DMVX_u6N]<xg 9'$H&6mgq- nn(Z&Uc6 "Ba/Z=CVq̘/t{I4YiRaWZvٹlsfq* WS=yy 0Gz1{?祔ffyvOYiWsg jdt598j\‡ s @~ѪmE9YulFp;}"m(rrBFxCm/{J(hglDw4Ivdd[ ETL5ߙw}Љ9(zWj$s?2S7a1=$g bYgdΩ /`O( kQwJ 4+$r>dIkst:KfWDVX-\9&Xr`&jvZѻ)[W9.Yեzb>BJ`zrYD`ihw;R3twlT ym#L@r/|+*cnM‡XsxWӑCf٤/c'&_倉M-1`/hBa},#8z@?6b?C(#ΰ0Sj|+B[` ek6,_ڌV|~!< 9`''}Ɣh$:EߗM/NG0k~yLgC 9ahѣz sYbu:dWKdǨkbla(uՏH~~IBD" c/ØbASDd=kce\n?]u|qOig*AD˂>A#ƆbH}G e:dnmr,Y+ڨl!)6VWt CpL]*.7qʩHR=vNͲ>MqJ&*+!`rSփ4!]|fsd\С/?@u%5T!nhv,&nmҳ9<+{\ZzUbVJp'(uoPo2X2GG3,ɅASUuB%&ų?d_#xKjIPo PNjsY%4sYOuG-IYo@u4?Cs806'",lm瀤2ҠW-$OP(~t.@"l]jY|:$?7m}XBKN4 "r -T|ҎVӚJ6aC"gw jYY5Rb{0|Tu+EʤVt Ht:t /xQ#OU D; =Ru.\I)$)W7I_9%r*:v[;CֵgŦS%Ol`%aP\74|KƂaW'^C푊LYmuQݷ0Qd%u㯏 (E.辀Pa-CS.IA,H>@"׀\բ eJ%&l8}JePG&MC"͖o³ۇOE!yaoԷXHO7=BHroQܮX+[~R 5vJ78 CSh TsS+/T+\n*% DyAi TF -Jűzg:8=ttS hH&ؚF(%6|/ޙM_I>7mOF`}LkErXweM@C%zK/uB #JGM^ UZrRZnH+*ZioHC0 AX,H7ոQ;;Teݨ#eiݮ Ui^q@ pB؄5[U6 \PH"\7w9bI,Z>o} LW0 $T~ 1*ʒ97'AN"9nf2(0)^ k/ ڣjj>|#&Gz>vjpCt[\)mOR.6fXߝ !W֬gvgCWYMmzv%':s؉/bZA6NQpKc`_/nV)*۞2H\{wp7odģw(.'5+]Ø,;^LK~CڋSz0x (l oA5+k=gRTl6A¼$M2mF0z35r I%`Bxms+29$M?ڶ@]s^}lўXr[>-W<ź[ѝ)~_x&{Ow/9qWq/T' .W 瀛p;?f(^޿Eh]);(&wLTA}/ +#_lKouhZ]R庪 VwslIa fBg5!'Jɦ^uwnhH&˱=}?SP|+;OSa+ P3^_R8v2`KMo&?48 Q@p(xT0%zFQ[S"NZ"2 wd&}Ex,[*_i3 I@#aWlbf'Z*~vD:v^sHVQ{S(%J?~&-9s"TDcw>m<=?sSQ٢22x8ƗE@YCM<_o;L;?=8ZnazXWx33G #:QU6aʭ:BCTHVu Bƹ;ol S!K}V)`vBa>ʠ\m(5Oc._a3ܣq e bp1馗c}YXh kǫJ@wS_s,\kVFq @J'MapK9XV vz5_ef D"!H98Q[ ?qNi(RU@Ek?fbgȕVp}k&s)̡1w,.=L\@m?L%;@#ؤ aPΏ% 8C QQCi_(NhL D4N$U@a펋EcEPgvt~@ɶɬh#*_bsȣ~Iv9-fԚ!ج' 5fQ%W_$,@Q|w[L>L!oN'9u|Z23#zxd:fcBݸ_\k'_v: vHpƤ`VUλ\\FO[@*E~`(qb5rcsոoq1 nC2^|YaL@3t0v,u\(_>pn-٥%AiS.nxVU Di3 3e[9V(|1uFwbiZ{Lhd`'seL`_݅jI}mw C~#b;NWNV.mP^!3{; K4\lw! Js~b؟*=#Arg.8Ֆ&0PfW^BMa@? o)SQM>T[7} JXeb>c{&!+ā뢃%`Xa=:Bw ŤmwIY4" "תED@LQJ~I(|ۆg?DhF6mM,%ݻwy2# OVښz9 ;3 ~Nr17W P5E(l7xmsEC&J\ Q&G$:ڶχ0اpV;$>g)*]hdcPĝp? 硽/~: ^9m.8G[<|)7|4v0;TnBnIQ4ճ5) -U|(&5x]a(zgؤՅ*9؞'Kb,O}q\EF_ӊW lHRFMF*8 ׃'{vy n r/bm npNm!n`mCo8wyL ( &Εn-X\mlf?xb wowڮ d꘷S#l 著c$,νskOM,A^iK(•$ʭ .Hncy%aJ)wII|:JÎrrFFաM-=#g;w^d9l$aP93qnfu=v*QJ@9#E/.Fel.uٖ ,+d:~yWWקL=E@ 6NbwkW<,Ԋ_l @iC~p<(Aa AA$(gZ-K]X#tK/Al b)G Y4*] P`Oҟ; ԤZHL􊹝h|m&߰vՐ?օ0|D>S.ojEHF™Z;\sj)uE񤖽hZxZߴ,=B>BeR0P(gEWSRz"Vh2ئl /}E? W'449qIufUiP1'684H8tb`@d8ٽtj&P<Tqc^, P&Z=%e4Ac3pS?a! ioT(\}Qv_͚,#@ L͉F86eϒ{|6w% FF}zUV[NSEXʞo2kfIn3&H(dH:ݩYzIAjE5[Q}ZϠp+\HBpNd2x&=sNoZ+1Z8uv{oYZx+StK$$;,MaA؋qؚ ;Y]N~6)꧔BhQ:7Y;[Ntv< bSZ#d,ԗ!;]#*q3##{t{Z `f,B~ tv⠛w&>*dž8d+,l.\rmS!d]g-DLJ'%K>ҥmk*-M۽%j DelDEk\iDqIZ_F[}I{d;H2+_z:tnT9Fvsz$Ɋ*y s,jr[&ӥ(bjtʢ\G~@cͬn$n4z=qQ7Orix]yq瓓- ¤m䑸록.TM*ٙ Yoo{2Hh< " no cn%OZD|JZ܅wi՜6Ĭ"7љW0+ OVʗCVvet@tRxyQdoy'.Lkb 62 4[edRCvHjP.F#t2g"ڕ߸Ęeo6[1ñ:-+Υ]0]b+ ̯Xڛa}f1iw@'_$6 g3.x-W&㶊T|B|<(,!!SFx KFC3 )BP3޿s>B{ΰsAL4ԒxwFo\ڙ RfLoT^HJ+}[lN5œHKEŌ&;!6B]`;}o.N;BX=hXpIwPgW2 Į bz_NN-M$&B}?O@|B黮Eo-ZB$fr'o'ٶGtFz%~I K'WP.2+Gh1f-'M3Q' CY-r{Vbz%j* Mo?!Sx_`|vg@I`=JoJ*,~ϝbŔ*K J?ХBk[ vX~;`ꥼO*viDMXYswr78:D4D|/f&/ԏЭnߋJ zǑk%}Cw`S퀋EYk2U!hį*P!wR_F#!3O#'xc pW4$\&3(ʠHkđ??nھk(6Q48rfgvLy./QFo~ʞx&;xCYGYu34!(3(זHX5 ' }8N0U38*/ظys@USO09U(ǦQW"$zq n-2ǀKNq]Vcx|C5fqIa>Aw@0ɳ}gˡlƳ44Ot;fZ4'N{C ts1U=;c79Y/h|ݡ|rz6:U]FfS'a ??yAhfWE'O8%qe{L)h՘}ݸţwR1g1E XIk!HKӕ,Bup 0ኌPRv EuIЈ,H84`À*[bلPDw=g^tD807m-)eQJަb=/k9$#g˿uz,+=,HKI]/S첍Z*?epY Zwti*W^k~NFJE8bx]/C0l ,%-LRIxHӧ,0W޵/EI=´=+#1׬ɫ] %? - 26FXeq IƂ}cO58{j66|=Ncdb^꺤]`_ڸSS>bYH8JVPAiq'Td*יa2=Ug"M*Yu ٭he-NJUHYރBr'Yve uyj1G M,fޒDf sTue/+vJ3 ICUCuT/figbt&n "S--?˳hvtO]s[o\;&wK>_}HdIw$:p;@H mӕ)뉓"qM yfUO 9| '8wWE}{f܌Ky,uvP2k"]@LV d+:b{$žF!:N+ҽ֪}A+FЯ"[Rm˙PO^/b*rj͇oN33^Mk"՗+^fT䭝tb!IvK2/sr8 O}<@!sq,@iGq$d2e%{`:r\:3r2:orM<.j VÙ FiŇ0ˠݨc' hm|)ҔQfzhBa*Rlk5ѻĬ`S J^9k-=1i~7A|KzGE}Wqz֒2]Ŵ%]% ;<7a椦09RB "L?GvCƿ{ 023igY~VOqax7TYl?WYF hdIl>_ާ%>i!=B~_1U"pyh?i2k89xO)H6weDm.abH'69_QE[Ct8J]Jx#]zg&T% 7_ˊ}m`o{[ecp^)uOݑv`zZHz %hqE|WHUl?8GPzI W#zc ,'`J]]ٌ);[SI,Un5w_pJK^x_ xb` *asF^dA&8$RwAu9e傲6NC+3%Q%tmq&Qݪ3~@(szQUI{@Y"JaB'D& iIh m;ГH]uekIuPe{m7y ס6S]sw7Y?DI$|@j'J 6;a,8#xi<֏z HAv90NmFf @lĩ4LLfabL6/aVCTkEҏ |P;w7Ca2K]r\Z1lk~oYR|_P'E?zMz׎xWxЁnD^5ޝCA`CsGk 8Yޫq"mJ؏Fۮj*/9n)B/z9ƣhMsҿ WEi9C .+#w>gJjd8hG*{T/;F4ta'JsRrtR{KLP~k&Tt=OW^Q҃@T.1_0V3%ՙD; ~al4fe)F 4~i?KL bEtFFɹBޜ7&֩LDž]AщS#k7?vHͩIL^k >`ۍz\f3 'C M}صj; %ڰ2YEw8|xZ+y+I.sk޷ Б` wss`ufsȳ_ġ`^"㹥N<7b7R k{^ Vm)/WoA%Vz'<ҍM!>"s<& $=˗4 "aJo7N 1{5 k`u -XfF Z\I_X Zso#RQ~B^G c'^*i!S:ݫ{ |ekdkp1Gk`ՋqfDl .;ͿcTmj7Eo$=ΣxZv]:Xy"`v Rl3bʢ`B-vz,P-8SGϛX')T]mޛowtwT9{3W^A^󼙚muیf_"yU`emۏq 0EȻ}Se{vtC X'TfF?.hҐF]+~p݀>JViJM[$~ \A|/6OwQ:=ԄCUF|6P%Q{@ -K0*ՐDK ゙HIUwqm^g+|u_, u1Oܭ1AaKxMIYXH|Z`,i\ɲ%g pw?fTS@- Bb=AqN=4 E6-^arƢW Qr#b ͡O)׈ʖ.pU&aeHi|W- U=0^hW %(<SMR*BifV9WP0®`los| o.8"j9 3y\9WX^Iq,*9]z5C?L zyiU=}L q׌EƘW({{-61SG*mSXuYʏɝ6*0JpPV f5x)tk]t*nXFoР#нQX i +jbW8яvv_fdgN?q8Zw.v^ t _FR|Ps?1HNmY7VYώnococ<ċ.:6 Lwm[ȎlƗM&uvq )\!@x%Ճ)F٬q&zғOS-BiԓU{"uvVc=,sp26 xL K;d/VmgOJ[CAy $'|(M",Yo9l,lFԱ9U~y!56-(Π  B+vrD;^ CMPAcSvXw0 %}9vnKz 8o)Abb,Fbd1@@rHlⱥ dL)N_lM(\Ab)d`Sͦ $蠪tՎlJo%f SWFJhHelrb`zR#fO*f+2(tڶpשPE * kU<@=gPV2۶*A(FK ;n>y_᤾m(h J6ME |q8 7n=!7_ |ijeIB67g$v>JeQZƏ#?;2%NDL(*KJ.Gp&5(NqI:CKQ )aXg0LrQ;]QyfsJ*LlHVT1*ivP2?I$rl|;7n\[By3EwUgI.s&u}="r{2HK$L:8q|YB"͆# فq꾹%c22pX[rgG`b۬dy2ؐ`:K<]UFtJ1i5LBdƣ΢23H%ʉF.4YDvfM.E4f[ ڂϮAG-a4Ǎhpa[ޖZag?WfpsV$wJk7A|WwE7!O:wqTz\ql<ȌWM獬.Mv+SV69?6<ָ:DP[5B˅,V}>Af( t&"%%"Z"[rSm;lPY֎tpAfw3Sӆڴ@^dփ ]U]rU2*Zj}mڊ( ~ ۂsgw>NsvaB6>F!߸Ed GqC;PGU4!R_SC,-GN>tO  ̃?սH7K4nsH\b&2O7WkW#J?x+eL V-ydD !S%U`h@ [ݻTIF~ n҃BuF1e"$\v.>`Gςr;l)!0kQܑ, P|?ħ)~8{ 9p5cL/|էҔ yO:\pWk~*uWn~y{IGÇ+>ݲ:|OZƈŨ&%^b4M-ަ% N+L$\^` uيQ>a2Ჾ:3e+abO~i̒a(֬ } \+ #2k#}2j.$B-_ ,h4*?F;ZR9(k#,Lőj'D'#xr}_45Ԥ9ظk2-}eožꊾacI@H[zVmЮ8gG`̋ xfcFSh.*S! 7J&!x{HTw'EE/roһ>yWq cUu瀹Z$=̘Rܵ:(ui} ޖa# Lh@@3 %ExHj " Udu(~|bwǐiewN#LJ>u!4q)Bb$&~k9%o@{5sj$oM0ϟ)#,z֣-A/L< Pw`^X/j>=fϛP| {cQ Q֠( 5o,G{E+$GJm Z؉ҭBznC Jر9 "cۛxxۆ ߏy:>9r2></?Vg\ɢ2A]ʳPx8a?G`ިh#a gdã^7T x<ۊGmmew,CM28:Tx<Ý"&ج,YWM~ڭYj GaOrKAGs)Xq6~;LWU+Dw興m^Oi~gCMrF6ˡ.tKU<0- ;}vG=wmMTָfM»2$ wozpvQjbަiȩJQPFئ׋zz'3rܴgRR?ݟoG6")^ո?ޥLp"UM T\Htx[^tn-Y`p ;a'O66_*$7h172v%> `V [,QFHQ]*H1|^¤DCrxSaG< L2ZٮCH )d]\ f=HYujqRLE4u07('taGMZr/FHQnm?aW>v4:CC49l<lY I2cɉ*qlz MӘB pUmpcOҔ)I@|ʑO-OvXgz1-hs]*>\!\Wc.v4Jg*&U^̯N 1hpP&z{r_~/?/t@#{pxAL+&U]AjU [wmm 4 pV"Ӝk@։jת"|ʕ4 S3Yf7UHBҺv| i>y G`:Yw$R=( 4+9i4(^k^.@;!_[@|Akc6?U)Ol69@ _o^7O S 04 fLfKp5GEJM4J PpX&)<3ߕ_}2P_cԃNή`q+ Ú 1m 6C%f4%LVMG#(^J\pJ_ Og2WƥԹ⑊b۫4s[, K]}ǕG_kf`7ZxGN% #Qqn].0_fn|_iPYܗ'NGm("BEv]U, O0DŔe$=8H(3<4_47~^ZL3T.nс,|kƘɸ>w a]KД[!y^9 saSL;s+2ɳuCQjT$CLکm_kzxq ӏr& !ю5xvݷ2K-%E3j{LI:qZ@7L̇K4R|9K*Z1hO/Ks(4YIG4RM V r?P#HÑڀ WTUnb 9:17eŴa2 .j m-}'~_?pj4eǮ4quRP`N-rmܯ`1Wl3 >|)"0@0Dth&oAd '&,[Lxm,lR;/FT!QY UBϸ ɌyܳxdvK,ϗ|Mq cL/˿zP݃`#4w߀Ae&>KuO#mx,Q!m}dxz}kzbjhe]WZOq)V`lܝPJ:~O e5n;JpJg(цcX+;7#2!>=)jTrrqb^>@;X;$.3>FyFtj1)" NnCJ.c ˪S ]In?hF\2Wsl?;ұc3f+>"ڻQ1lq@E"(dkr EjԹ5Z@m[iW0-" n?2,PC !eZTh4[~mEmø31[kgP Aw +`!z=^& f؍$2?-PA,kTQ"\jwvbo@V:e>Z%Q\\g$ -b}(s Q+p2jAmA^eHŞKEh@zWf7’[i5+b2 A6}2=6u#x,$0k&CǛF[` dۉiֽz!;)V$xlb0 Ԋ0l/[H۠u,M g9 UlkCK\gpX'f8P߶W$,+3}XTe0qchcuY0X{V"J!ipf22pyeʨzoghEf\Aūcd*))i>󿦠 5om0^̥O$P\ۘE'0~dP_1UEvD^6!e=A`'576 NhT7>Jk߆z6)A M^|kZ\k[G{𥉉'2PГ?V @AKX+uSvC:H"Z3D6 ULsxڜw(M#u&-w1_ωJD 3bC݈uUв3C|@\=d?,ttX ` t]T3嵻G vk|J'G5<{)\\a2N~a_9b'JE~иv'J+PUe1j |Q>:k@ tQcŷ40|Y9&yF0{4'srݻ㸷]OϺ%4x0R;ӛˇg|Bw=)Kp:Pl(69ڕZ~2Ib".v r͐Su?M@[awݼ "3"/ ie^D/_P䱝B6<+K)arGŋv%#e\>k? <ꩄF7 7eIHudߛXG"Ld2zG–>hCHB#͝fΨ.o"C`śJ{.R2T!rf?0*(B2܆VH8oEz"Ri쎶1?a D S M6i`~lǟ4ZMH˘O> G*`񰞚>9Lb(1l$ 0N.**p6\mjӉ2~؜6`wZ^@_M>~lIg_iݛ!mˤ" #g4uU 3'O`*G/bȦpMȑ(\\BV*Di5I<ppKa&O*D4~NVAYOjF! 'T0(^5Ϗ۔E9Q9jIP9X,$zC=BWu- Xe]^L|T,OAhIʙ$)Y@p3)DWxiđBɍt[!u_J5`am)T'V#>Őm؋mhD;yaZV1d}̥!ӮWk[u]qN7IʼeEڃQ{+AoGÀOi7)$I6ܮ^S+6 h_{ h#_U1s^YCіIR?>~}Մ}6+)#^;fkfZ0 GA{A͒plnZS,- T ׊SB̥1!+pG})C@Tiic2a Q|[Wٴ4C_B\ڵ*%V?Oq/h+&_:=feFEPoJ \"*\2Y?H<)?K`!caX$ۍg7")B r GTOWت:;_x(lzy ڱ?9 NOq/Z>JYe*VJ0`m'MuUf&i kޛ }mpZ)-ww*JдtZ>?`uɤBEwGP/hc`'©'wUJ w06(L.r4-̣dYK }9=V >%,M% Ɛw܍hQ'd;L|֋S!E4|2yF\@5{%N_Qʇf{xԣ KwR ClI#_q9X,gP*+4uր8]y.3Zc6Lі~&:awBx].# gkf˱[P)b6e<>Adr(tnyKMFd-X4,UGfO5R:qAqz F0 hejMBҥ]vt>_ ?7X֌5uаT̏EPiۍg>AP$9w %_ )ւmD㬛(CdrZԥbxu&gok0楳Ji/U!!1f.va@ĴXFF7O=â8;T f"$.ހuv0 @5~N;HpWcrpՎVWղNhM51: k\r^R hU,ByX !lLT[yJzwfNDܩU"{a\Ifob<ƴiτ5.8{~CV_- ̋ϐ^YV9&Zib)7i=gCxԔ7֕ O& fJHŨRUA"VbΓ^(:D#=|ըkGQxp*DM+)]Bdܭ?Q9!jfzFOS߭ZD@Kd|B 48pBaSkZbQ (a]K\F5>W49p\^jt15^D,w'p;%1b_bG %Ɔ# RB-!|b\hxgL8ur:=4׹@S"m 9ә yDGdMA&(Ml\nxW|w?8+e G0,SG%^2dƘ^̒~nׄՇ& *af1JtKo 3T0s[V2:z (P;E[&~R 6!w>4DwMM*TZLd`zW 8+p,L[- T/\W1 ネ|s-hV2c.dQ 8&A0 n ȡ/$QmPDnP YXgDXؕh{fpjs ILח+Ab`Ci_0mR23gfdnUhvpm 2IeU@c,)EB̟C38M$udJB q#xv;@WM>wywN''ecܱ&k}R@qErIFS6>N*"4CG (:`BqSӪ*QIhQe.χ]T[ehoNNNh+p?]i.R~ nVzAU9AӺEm0H_&# ^P70n!b,B<dL#^SDK8$ osfX_\{{5Bi'U(KOZ [.2b-[ cƔv[Xʆ'3>g‘Ǖ1|,1&/G7 w<}jKnSj*Z*@}ӘרÍֿ|geC(rHy@Qc_89  ?YxSmwT$ _8bO?/טNP!qF}tc2< ( uuhH= dirkL?嶁ྩFX7C$c<MdiӈmzkjYP+O{+'MFi_VzV~fíg\HÜ{cG,J nNNGNn-`ր5U ꭝ:3 uHTP#:ٶni$CY%_hT7MhPZ.jP窽oo>0kh =Q> !P;)kHQgqeKoF"_{K4L4k>0΍52Q-E(nBp%td{g7ij3k[0JG^WрG;8u4{5e"M+n $ó8+ՓTN~E6PIT z;p8E8?ۚ?x"Yn)=m0X:9JuhGg=؛7[;k ,/|ҁ8ˍLJ;t'[* Au0kx䆪lt⅟؋,?!lD o37D%!J A!EIMDv?mzFW+@ Y'h'|moD`mGFPWg.E Oe&Ro>[#( ьBa>-ў js%2~ 3qב_+cdZ&U>ƅz0ojCHHsz ǒDA# v^{을RPe,mm5 ڞwQ497x7+eizU@'ѕTK}qZy1 jL68|vq[\Ivb. q@55@w?{GyI =gn40KF})#byv{ak+.>VTXed< M\UN XB̢Fu=p xti[J"Hf"AND+?2ǡb\3Q E ݲV>Kohv\݄8CR_!Q@\}]N32wseu+}YWWJN\A($$\,?zbˊNsI6#و`rl7"(ˎr )0"oB(&؆Q]akExEh&O̶)?Yy>ixJR 3xr*!0X)ϋc-tHg",:d$=_SāG3E0r@˪Y>kh^d:'L4 ?$_ҼOc+\iWvD?kdħ&Pr%ޕ.6x͙Rzg9\y"so )Y{rjWv~_ISn%8HȜʠTV@(% T8g~u_[d[H;:;l2YJJy.`̯H%hn6&s kUCsz4onwHyA;SL:|9=B{E=Qb &m8;7|MS\`_0MxUށ[MU2kz'<:|0/[(4?mR=Z ȏ)"ݸ}9 7"j[;K A+!Dž#+,դpTјf2Vii]1%͑2x C5askZ=CQ;}hήUyWNH~4e.!]dtT7阂*h!J#[}~w>LHt}Rb2pb筴a#+(_2\[26ig 㶞uR3PG,bGM.-<g{/< s9&ŊnH1:0t;rAgfwwN qڌ>lN¶pmD h9CAǺB(zMp&O"#g Gz˳Q,|-kɛW`BBdJ?gS =bj^t.@Qf}kh#Y6Osnо 7Ϋa?PP3SIe[V=V)fi3K1D{4,F\Ó m3en@4/RY)O8KDV(:=S7Oᆶw!"Y DJWl@{uèt+P*hp # %VQͻB`ݵOAGʖ}řl>:^}2ىqM#8(lCE PDV#CkMDA+/RD)^ܯ^0H{&]:S/r_-CgLdLAF#\#gxg(ߋh3lg (K}3dk2ܒWUa=mJ{AX|Rn>#) DSBHNkU: ]K} UM('J(*nE(qm3!EYZNTx0E's+F!2,-sǦ:"Dg}ڄ!{+τݦ%Pja?e~t?=$aqD5^8;ZQ{[|Se5 lۚ#:aW XaL> <6`IȏRڦK1DxW/uԃ <tZ rv2ʧn$"R'm+o:a,kQeOUʜsC~E@U0eWZ"gL B믌}oh5DhyQ'Lgîfq? ݊åENM~"E&4lWWmoC2?@+𬭸xr] d`}I:e_Ia1/ A*n57?"'X?LBڙwLOVra~%|~]T>Jq H&Dj0Gl `ZlfyQa(Xwt|hԂl%w1Z|0TC| d輨UMـW xB>S 'b'7#ZpN=uQbfU-4vz3lWH#]i&抛Xb;"~ OfEՕwcNJv M$vL=W9A/3Q*y{|˽qew=er~dZ-a #v ؏ `%Fl$g{i \*qXmNR[:-aPז7NlN 19B47!};t:^cئ9IV;кC҈&SI7eB ;5qE?EF]a8[F,1%:|k0W1!mYk26΅La?ΗUfq݋>zS:.oH s,c7roLAf1i8+4W,#}L0 d s1eCgLm$5sߠg`vj -\L"TmA NI l?jOB呉rB Kb\~ύ>oveݑ${.a ;++϶Ip ' <4IM-Z N.g} n^1D}W~`Xsw'2EMOs=oNВ ܾcTTB w̢ERz\ˁrrB6k5;r4?L3*G~3IJ`Ed2vZ0oA5T~DfiUny`жU,w&.s"7 vȈ0CDGaHČo< Ⱥf!:W" crT5@6YF7ͅK~WLƤ!B|đ HLS.0fkuKqBP~S 5K;ȉv"#`ǘ*<[# ZѴw ` p2dݸA}^gتC `"Qne) \P9 Y΅I|Nу8kV"zl#Z "s,=L? Vtz6WnC;w"2K*T4FHl}_j|O70B~zS'S}~muӳ$&|WZQ6οg4}=,\ˑ],bpҐTI!.0DZRdt8|/$2aQ* f4SC6=z 툖&7Gyv:>Nv-juxYhS d+dh*ixⰦ5tFroր;(gzE_-qotCɝة&waya)?].VqXӡm (0CıixH 1o _k5|5?*c6w.{E'fWOg\)f'Ib~14z(]'7}sE~^r f"SwJx>cF>Fr'lT!˧<8X/h>I9PMW}xcګKAgjvU7W'p iRRoaYonЗ]Iߌ<31xـ,!Tfh8>2kXLšz }<~\KU&NҜ)X5"s(=]M,x OQHc+R$*|p'z^z3لŕ(fUk@ Juh;%OOB]OךUҰI|Ϻ lUANrK̂\`wa5I(HRc=+D@j( z[eZdtR=1QWSmc۵恱y$)L"aY5/@!`ŒZ$mwRu %[tL%"er>bcN6) UC XՖtc0dfY8P@Xhu]]ڵNB5Rx\2E]uuOW/;4]t6Cyhœ9GC%ݯD|Y7v]V#Zp2] 5 eǴćEoŅs|/pdΔ`Bʭis0 BvQuؚ7_,r}\ѮdCV$wrOwB(CV!G{)?[n;>*іh ?*ΏwXd'Ң˘pkJ{ᑪM2dj7Dv8ۇ&껾P'%U9C ݑE%bY5=?%J%L7ֲf8u7sf^jƳP4 nT93R&7D]/Х9Jz(ҎhǕ mDSU A0S>EqlRЏC]}+pFZӵLN*{]*cʡRU*\Cu%5:24*}opN|s}O(<۠sOw0b| ]x$P& ^/[ѫ-F<{.8D[Yִe̼|-V=DCB~n4DΤZ-[<l]* &:Go;&Ut *BNew}4|2'ˋMmYH@(iFNcLEϯJڸ ߡ0_4k-}EyxA#ֵ7Ct V`&Y(jkS* Рu&jC.\ass(׶Yb ybr3+׍$L|_y^>hμ=wÌRJ|dn[q8D5l c5'M1'h)}bdVWj-A 2j :68j <,ɽ>R\)ߗ8c͈s"qM&E67/R68uX ۱ Ln7nhK:ZmAhDzs&j'5ط禳OqB)Ʌ#Quqޜ(%e"4 "0M!x^w5c]9JLD)=_zkn !^TX;ڷ PWo&.z =4/-H67beIwŌx95p ׶x4{ٲj@2I!f7qP|Vtg L.jo ~82]fi4;z8ɾq9;Sh@$p|0#k_+lR3w#:jj$vfڶآ`YyЕɘd%' fg 1l8pݮTs Uo3t%:7 Ql5ãI:$ir~AKp,8"\t 5 ey \3.0%E>_q:8qgAZE׸=**ê{k 4|=" ʛ;Q!4,;q߫1#QN.EK!_VL(r!OJf&J:( "ʽnEpjmvw+Dmϔx6|b8o&>R[-s ᄏ-)=$wR:h| MB]B2|I*ȖjYcw 9kά-gpny3~aiyoEY^>0 ZRLvgpJ`!".8߸k pU%LWҖd?WNxe+h4Q6zgCa:9m 7#.^x~Ţf wY`DUw]a[ŨDʏU{qs :;zLB[3MĮ>tN0 󠜃" F^}o>' 7=َi"wg2W#@/2q7L@}j3 [PiC!erQjQYӿa5ܑeؘhvQQRW[EĐ\3/&N7/~tg0&޴ZIxn4=w+[V i9J氂pIir$V@,F\CWE[h YK^3{DiGsnFF<[XSw aQ?T) SS:SO}w>#K=Jf+}_eY5Ǯ1@8@"F[֋D!T3#|[3ɲeGVѭύ̶-[A*4FgjnqYOR$rB X5I'W6̓Bhgz!$/v.MB=؁_jI?0_ڕ+Y]DU?dhƒϙ{v?gՊVp 8Cf`I>ٗ%fMk<+ޭy`k@/gШWx5~8f˘cq8{pfLoiB?iPԥvq'u u"}&! kh*Xr,5Z4M%Y") &Sןbx*\ #Pv"񁲇7U:yw:EcIH%JBDڃ󪟕pwC5=[@nU5.OY#-[q= -[)E;'AyΩ_U, Q*ͬ LV"5OLQyAJJ_#x@ՓDtBp( [- 9^9'zkZ>JO,>msO;*Jut:ܙI}c4B bSm}?O12WXRĞN GhdD WItlXb )@Xq.|%VΓ71҉H9RwkILMqqv[0_I#<ݺ N=dmΛsVHb~INA-BM0 )76{3R풞ɣu ̡q%%c%*΂QB$)WkhTj$Z&]grg73snP\Lc` :ȿ^S>tأ_z%+U, ] q]V)_6)Ld/rvۮu|DxO  :|=JنwxG,މFƑcC`5v-y(PD6ٕ)2C!@ 6iXrYɿTxh ePƈV9s -,g6w$b,4yn?$X2e<B)7͛ F[nP_r-OUF͘&yXK;tfS5j3ir9&x7kg:q^$f{5hN!fG*'ޯwWhޛ(qO\_Ҁ'rA4/ƂWQkVLuCۉ<H;y.YDgz2~TO?W;F*;?f T &ˁf^S܏w}`b=b X r[ `R}̜x/V;֡Y)qD#uDսjI39fFTrR!ҭcBH'H#(J:lبٵU|+9" 7a :JD?*(΅ɰVge +>%D U}u$wr-F(8BUw(y]ƷZjF0Oa,Fy1cq^lÑLOKȃWΙnV] .&HKd19$^.o!T3^A1O_l6ah d\vʢrX[=fMg S dB3RA?#FA5ȣBhMmcJt(,oѯA{a60D*א[uL?t5ʔƯGLp* _W< yÙ#>xucx< IfxJ&\bE|' OsdwrY%Èl\\>X7<3DIѢ/L[/y F5|L@ i;AVaܡйchv@Ʋ6. `f13%41ȏd1mD\UD/W$5{^A\Uw%cX3BMx~x#E7\eaXt:݋0-8]*֓(';,nxN0?|Ȭk_%H@}%xOʎ~*R *pPP K[AևcbR>pONe{]9UضsB;RU .9%7V OTݶL$+٩ 5hM] hn"NDzE$ r˜D"%J\fi);$KI  F ¬'5,CU9U|9݆ȍi5m/T8PvK7]oOS y#:՞"$U)Ν+ݚe[G@ p{pc (u|=BF8YkU(5:re |EX*,kalM!UƵ-;əp)q3Eppފ2kv}A].:x.@<D >-ZOG@!ÊkKfK , 8Z@a(镕S[H Qj m!rGߒke&=fީݒMGUI\<*=99fquq"X]^9s2lO=j3yl*, EpJߌ>Zi2v3NmiC3:_µzBpi*q s}gumz|K[ [)ov$3!jL֯ >꧆]<~tK\p/4t|#݊F$ qX9Ӵ5eʞTCE؋/e&#L|P,< 2)Di3ۖЖ񸐝dM 1.<`0 #$Kí8 L`c0 1!-4-ae͵d9Bz,R%+'3CPP@+;(oANSz\xR}K1]fiPQTxZbV"vBY{7jPV ҍ*ژzPnSװC}m.g/Tʡ3襻>3n@Xn~ߧk뢥t EN0ZSߋ[M 0Fwppea9{׹dͶ%3ЌSܧvFD `X~(19!Ly΢9q2ERZ4-!C~s6p43= ;"PX.(,~::n_ bVnzZ[(`' Z4x_@GN1 WGҺh$0:GZ2Tޘ(K<梑2 iK45j5KfcmmK+WTRϚĿ`[6ӇW{@޸=&JÎPg zhisǤДu:dBΧ`qqXw)ZϠa5s}onO\ v3 "@wY vDCmPNh吅00hdCso`m#ѲS۬_1wsq:F3K+Tp 7LD=S]Rȇl2\-G$dICUCRmh)NV&x`-ٰS[߹NqpL!6SG_@g,|q%*BLTZsBfjO=7:C{wsBǬ>X^(hj-$xrPl򾸞ų\Yf E<*( 63kVB-zW^9 Ve]B@Iso[{vraIơ픢:$rJ~gw l\r,8H㦆ȗghm4(RYUJ oX'qԜVHbZ݄^8e(k@.Dc٧*7!LW\Аœ=`ø|e֩Gf+n\Y'`2mJs K_B v&5sʲ1dUqvlwa1Ag:NElr1P2ɦ,0I\=ܘ֜Ut|XŖkfBwՔYAײ7Gbi͌!L\/Pݳ~S{EzLzn ¼a\[[^ E*ԛ Lr'?/OfF4S %hƽ3oS*DX./>gݛN'5ջA|95 ^fk=j>3<׭ЏL7R? 콡y~T ps1 \9R^&m {>glo"ݥ}wLjV9Oܥ8fX~]WѡV(VҌx9\x,pUW*9uwY}CP,_\/C lT$CvnJg56B0#n!\sj|5P7 Ń1gpB}:לɶ(G ,)2S\dpaP%wZ< c3 ]U l|߳[~qi‹0i'0[dl\Ul'Zӡ%БBdMM&քahw%0\~SN xdaa 7a>/){^5tM.Z2! ▷L7Y׈(CЗi2"/|%, 92%Or7&=a/Si+ʴyB^hZ3#.*Mn1 S_hK{uV=XIGUl?&Cv_E_k$G3KuajC)<.eGY^7ٚsTXj$:|x*GOx'HYj3Sw\~-_F?`41(zVdCθ30-%h9z93ɬ&/ʐKkZq+9E،_[+DTXE`Cf' f ǽ +'pߘ}m[%~5V*7Ş.Ymŀf"FEq5a%,*'mK"8MaoDeNrTUv3oi=YXV;ِVE-p熷viI!88PƩ``_Gy딤" }G;ϑsz-G+dW2c՘ r>(2Rs]v^W CԪB k<*u-j.bz{+=Mв IUN/:~r3'GV 8+2, X?Lxߣ_J1i۳Px"#(#yH}قۛ@ qhckXqx rTdbSCΨy2x_/dO%pD|q(SA3灭C'8[A6/[\ƾZ*~)UT>YE՝6{}$VR#ίmp-:4a]Mœ? F=p?kZ0ܪ_䆼vIG0M:y 6/zb = ]aHC?3@{o$nG7:F٫:)7 ;&sI8'!AӛD#._$W4x {8>B4&'4ae rU>>m$T!{1t:#t92[.0Ur(3LS^,z)ZX8H\m]ӟM簞d6W;Uvmc{uG Z"7 *k< gVB3)}*T0׽kEt2#u5J,XJD~#nٵ~SP9Il(S''vXn p3=zeQ?c55w*Z#l=wȶXFm\z~v(T{%Lxh.w\3geX0ԯkRfg`8ˢ`=fk^hv+PL֩ŀL=q*Jl?/2$4F:Wݐs_c:bRv2S(1Q\ݛ-0>Yfx fi:I4udu2 [S =C-h^pB rs|IEYTI]׌r)辬EkZ^e>ٮ^ȺÅat.5S^F&'W:پYr,ucIo6Ѕк.dIN#"&{ HXNiU+aP G]$4&;r0xC01lCh"(n1^>U\݂>x՚<0<3^fk]zŜrC:_mpNsx T$Le SGif~Xlj7Uz_ 6yܨ?#p:p#b0_(i]e-|FXn|vFpQ|s"-S Y; &3.&%IRzt˱Y*^XXTיr~Z0;Yԭ.rQ3~}^MXR&\ C{w@4{`ItAj1TNaG|Ȁit?)sbji-2q(QzLeHOvA5f;8ΖKC7Hf`7zwUsMuF7VR!$=vnjSy@ٍn}prb~I5ڃ+R aݚRs>uBcV kPH6yP 76^|Ո5$ ;0(L12;|Ϳ>/~B Л}b֘ѕ0J +f`5x)Wf0pt5V=$>Oo) KР%EmN7sV0S&: U计'ɿAw\py>cf0QE[w:w(ruqʝ4*' WT̽7'ҟ2HB ܙ! KJ/b,Q El]tM(6)V6R(+& [)xס;3q,*40^v.IKF!cJ}I0 (x9%\V_32f -Q`g0a]#{%ZtrBOmrx^.!l_"VoU'RC ۨ6bⷿ` k~Q9Ʊǎjr lgJDR\vyj/,(YXׯ9ZGn^_`R@#H LW^fwmB~*S>7 ۍ#`KB`ʛ Y4ΟP΀͑D+ai KI_?'fzON3L?G anv]q !zv0Y@f }ʜڍ։ԩ?Huff(d}CaxiC5 O@%~,S9M8+#Bj)pُ;p&Bv7LpЌt"zygdCb<whYqNɵ<aM2&/Ws mD8OlzUc/ NJ, x'=7WE.ɩ'7UCE/6e{ONÄ O?K*x_*)ˣg6`홞]`v͇*h ,y` 4OŤi#E٠U:8vvHR0Vt„W M!l;]ixN}3 Ő7@EG*]. dۗfwŘ?4;sCrLfw iUBJJTkꦩIřüLNR4~ӉU׎șѵW 3Ѽ?_d&p3&DkLsȢ;;Vrj`LXsv> 䅮[w+TM/bP]&π~[a\e/i o4T2@-j]yqhf-,n^=FL&{L vODq(׬K0lۆ|8(K2wRGfO;":)U0W!'|̿ h_Uf0%V|FyT pK10WBqۜ_+zRr$urء]Rml:q$y=~ܝ L̼0TĻ$v|3q83G$Q'ݜ* iMdsO ػ}qS.Kd=AC fb R:_ V32VRsh\Ў14l1WLRYY[6&f*Apj[_c]AH??F&m"ܧשSOLQԻ=VsfQ8%;\b~^41n&8I뢤ƣOu,S\_sȆoNc'ZPGHU2kL^+}UEH IBh4EDΎ y{Ab~li^q3Cn SơRW U&~',y;LzW̲*8 ìn '$B0=IfDll'cw;g(3W{0LwrsCesHO>CO UȍЖ*f\>v<̊maHM|< O4f^H,V\a? DŽύ1to(,[XV8w$EZ3k Wܓ"2LZU#q9r6F_?ZcM8~(H Ip>NY]kCsCwgKOeJ(e XK%T]4SUwxCHYn~Zgd@a,«Μ%Dڬ@Fl?ܬHO7 S,AhHmizcU)ͧwJ:IYF2sSjM4lc/Ea7}:l']cJ%#"hXzS?+0ػnHé@BY!/| PK>a_MZ#. ^ c.QGRJ1L..Gmk o\)R=PJox: ϑ^1~c2/t;[P~+h0'HQrb@`7!dČA_-exqMm@.iM2Qg?-Ɩf Qw o.Vj=*:?uP0kcs}D1#D$O\U);O47v<-NU!XH L|{>Ղ OyUKUo71P;OtPbUG?&9)Y}YqK";/ DŎY[/۸H[|mT%˿(- lU=Y O(ef6/GH̃֏:^`-H c<˃ >bTp%lCѬa-VhmϣLuk#)>à3D/]r- =rV4q.rqn"E|qD2o4iA6Ժ&aHb69Qe?ࡔ7α5hsE=M$,@{JGzg*y=lţkyfq $P"6t (;*kkK\tLɡ~-QlE鐧R 3ٙ3IC"P /95Ș WFQ5#Vn[GM.a4=]ZZLJ r ֔(<2vCͰn`7biXUׁߓ܇єK#|;hgQ qf. 궺V=1+HnSzxZVhKPZ cKj_x&(4m u^0rz ]Ug ȥ,)͛뿭Oppo 迯^ꇨ/Lf K1}$ >`}eҁ%%vP 6Abkt!ο{*9?J1KGaTjȇ]k]kZB^|,3Rx4jgi%~90E蜘峋eY?g1qW `Ӳ\©" GlUgyvt1}ҟm&ء5\{ >X_pJMͦhJf#@#֘ eYBiF3y{qy YkHsI`mG0`ΗvrQ113<ѠR%pNjPX%-||^?bZaY-No˜ 'nL H,?0/o .tQv Gڥy~c4/:wT⦆)|Zzɐ^񩦺`|]. =|C$Cu`%a0Lg)*^GhScZUF,o7v? b@x~p[QRٽd0=S\LbKCxbܵ 2!U8Pe'CbHZ !g"e{mOCsֲۍiXv$Ȇ(ηz@nrb&xfFUvdy̸֪7^i@A|k:uEU2+gI诨H1F8dӆ!8잹QQ:*wJҍ28s>rsanVWd ځi\ ~)Ǯxlv֔>qHӄaIݾ4d>*ŘQ*ZDD?{kS.^,~2<2Y#Kduő*Q PICYbScwG{6:SĂNE*Ǒv0cA)ǧXBcVqOtw?&LZ7MSDGc*[I!,Ak!E y+3rjǎ6ODd^į'=w`#[O8sr Raw>IGąut :#DPh[ e6?, #e"=9j 5{eoѤ\m)M!GY*<}-03^ x7..^)EBT!.>L/OMpuճQ:#wywmKUy@cwNiaюTjrKޑm)#[OaK䊫!}ql_HBd+ICg _7O֏=J#RXU&p36wu*,Se^Qq}UTKޕX̺4bf`wd6`3vjQjA/} eK-V=9cCh4[طp'zH&Fg vxLaB%`}yDJ>)mC~N")Qt_ NzqK\↊[S+p6ɟB$tp), & V!bf^y^Rj0:U|ZzJH;#(v-E9Ynhx k d"s'Erߗ1.^le[o7jUYz'91DBe~PoSTG$g!RTQz+K#zjD퐈e ]?SȇjI44HOFR97"tdX:~ v#8%Ps "vpP2 YҠ"A\ >Y5=3k~T2)e(6З@MsFQT|!6Nf@޽Wzk2Qx|jb^G/l]%zw[e! O[eYy>K{m]$bGkN\kOav3_8E" r"\nq/mUHmd-\nO/r }7WW hy^ӆyO_Yi FU*P5` ՚Mu1*\ ,=Z^*t0.7h>YGC$a^ N_gPp+%X9s&ʽO QkoZ5!H0^Dr&1o}΢X=ӓ0?|3(oK}>e_Q93#%DUnWx6w{=ShܰW_SSfJGho_Ry&N_P * m2? S.vz(JHH0 iKw(!RӸ /|]Wto،\Gi)| e [+44'BpU)H0]yW.eSίH6%7UuKM+nq=FrJNjZ< ލUCƸSFt7yҷύPJ[iI*g W1l~l.]g,u:R\߁UeJTjqA 3/Z;Vbij&F(0jNk ?&ίGjKU_^J"ڋjg[)QęO+KdVՈ_4s`S֋ǤT"l}V%<5DTTDŽnqfE$Xl#*=D@-[Dh4:/.SDgx9Øvj?#< Z:B  ΁%0]]0؀,onq}oi2K_rlUO1(N|rYag݇Rz~-Lbl}22qՆLf#(|SZ\ / U JQ\I0ZJ|QG._^:4~v>"n*7Iλ&z{UG'7p׎k~ u٣9aP٘QQz2|] ?BJg~S?:!+aNxξ_?Y=E&߄PV/ 'v[ddօ4_e7 zƫ<~8]ODA|;Ю@`+dLqIްθXo4f\G)wWx)t PMjjA$!,&+,P-)HѭHթy{EP~u0 (;¨ 2b;gwg ˽9巴X  ڛd /RU*"`zseE#O~^MȧZ>_J-"GIikm qXS % MzLĴ7i }d )څ{7p`'ix,ӖT'#[\d$i;z"{XR=r霤̭ $U:do XVٽE 8I xF!0>JWgB%C =%h\ ^/2VjZۅǵgq)h2 &2g|TG{:W7bYpR<6 *@zxIqYv( YpMHC'pvp 1[8f6]|+bz3e?}Keff~jzfハ2Pp2J3i*bbFf ]KuI?{b; v4,.iDSMn5I>!7O-(HԽ&@FZ3Ye:˚FR;JqG`4dcM~ Od\_.+8P[|g- `G`+ё7hHj NLJw&Qw#~vrsyy,6J;>s}@zhb[#EV 3)o~ %LYzE5 MN xc׺s;Mc7UD/dQ(ƑVgQXćeZVۄ3YZ6r͆1:s̙~]tjA`ϚQ^Fl~g_'^МղIo}U*kJuaCYaȷR'QY*k\(4%$ŤGhI$SY!\)rKZ{޸f_+ 6_'WO3ϰPƸ1xW7D5K4VClhjk|9TH+?tX*KxѥTczg! k(/Vͤ$J:]uVR#:bYQ/Ct1{H:; Zs&!XR%lR˶rfD͞ 4UƥU(@`N=œv݀9[M2Oׅb}sexqa&P43Cn&n}gb幎c:й guỈ_n4$4'> ÌU إ0۴Lr:G5:ܜۨ9D^X X?Z/v5Os y#l,w4$k-px:p[nΐreL\Ar$T;-IV7AGN@V<1?lh;V mmVY=>s{:PS ЁJ=r"K+=ZV-3--PʘDly9xߝc0.5~>X roRwJ~@mG6F Kj)0݊(mj'f$ٮI)AI' "gL0%u]Y&b"4F.|<\O-ȭtOjphr04QeN4%jFߵtԿC#k귆oxĆŃveavz?;aZ@,N0rV/gJ6hQ/tL=L14+ w87v$\9UDT1FHoxu<88( i5ϊ L>T䚍OvI;vˌWWv$N, v}W9 }xȞL,ufMKft.#Q"?vJe%/QppؾB6CjL|FoIۖaܗwY8#h_|'93M6P7 M3\W~B,&4 0q\'e Bg@(BbhS!?{I _ 12E6u8cW[ -7A, 󅴷NS^aggk]0JkI`9A7&oˣ[l F;8RC]r8=kHq{r|Fves9Ic7%|埵 C|[ "lBVhVXe}PѥܿZeo Qv"OØv7ʕ.vc"O̬v3z94@9XM:Wz3O/@%,$9=+'S;"=pFiu>tM .yt`i,+\٘vU~:kYs4$xE"q{m# cls&hh{ZRqdƧ-48԰L_r^h];p8ʾ >qYda>l]=.H9Ҩt"Vbk '}8ҩ=dT1zk`*' DO2Gcj(UFDZ~ #y5M9y-@CX~iiV蘰~ %̔2)D>W(iN,9J^^ |eZw:j0AݙP\nŖ~2EY}qc|8rcU8y>50hi_vvhC˽?`X=&Oj7f dTvXtQ_u:P/(5xVӖ6XFvf5$ N> R{a tFoNZXp i|uA[-{j/7wmw9~t?:Bۅh)K !?w[ "~ gj HǞu(xȗ@]%Cr#Rӄ  U.ExG0k'dF\/~]s7co߳]A,ݍ#B 4R`Vn8dPJ+'5+#XLj e \LNʹROveW v +E |枹yLQH!Pdl?ޠ*(}1zn ܀tėD[^X0s'>6 ئq"z57t[͠Hty`Q(W w}[6[|JqYoFIOjq@^9"w} 5L@{e*C_7zr[&BYЀnAjI];eJfs"C$'-C;ImR?L>D]K֑6U*{-x٦b?|3@iͿv;w}N&w& 9gxߡ?#y&2|3H[1 Txgc8pą-opd(wLYsg஄>.5?Lm8akKSp: u"{BkC@v9Ǒ0k>)ZqP=Q3<\[ZNn/ ]n9q(+'x9 S`J*~B# >P줙z0x_}J.E>7ƚӫ51*'oޏYi|{=XaJΞn’X۾Y׌@>t*ЇǗTAN],9Nk$Loxжe}f:D=H38H2{^V|VvGݏ7'7MWo ڱkk*uS,/ 5 Smb/H)PD2a៣a.s“Iv.._dK u.\\W4GRIX 5!`,1IhU fj9^d)J%mpEs xb483.r ]<T7L)NS G<<:ؓ,49k}~ZI*3P r'"}P 7V#| O5R7cW4w%!?)Bqp~#V;9DȆ za~" S9-G4cr*w|4f~Ւ):)Y#vR+#r`e[=ǿǓiiCaG~cW˃T˄7Dioq1<``Nz۔{$t$ G[TY"}9:Y# (mN"\I R" v쁒 =3v(,|B;(}8`Fra70ӜH,+?fs1%Ϛ039'kW d3[ s8ْ V,Jev8;AG x҆uSެйJQum` ZMBFzI)֢4p9Z-hWrea@hWcy{6=s U?lT(PG;5HNPZsHL( Sʘ[1:"fJ@H2,J-{"*m֚j8\O>)+9S v-75mަㄸZ+$^tRӜ$Yd6 ꑙN pȺ^sQTF]0v )ސsiɻ|0͕p_tJJYo (#YpLAduKvĵ|%\h[9Uz%HfJ"X>){JYj۰}ATzBa0 PkC;J+TM=M}sfV }AǣUO%_ ]%/xs=IaZ /yuDAy.InLE?Ň;0ԝDhOtɩz=L A#:R.R3ҶcN!7)cD9Q~^ż_yB,h GOcv- O۠037 Ë0tҰ|§A_O&xN BΘzChi+ C$TiVr666畖'yGaz# rKIǗosK Asd/@"ӕ;= Z(Ӈgԅ~5nBVo Y OnXFg/ QF`ܪ>K:K 0L(Tj3QAA[ ͋ g ȺMOEBǏ_?DÆe"o=!;kMcC(aQ)K$Q\7NJfRS=ךzOn<"?u5C#ãϚ$nu53nOx" Q#ISKP=sd2!l>JhAZ8Us*]IҠo.SPg(#2<Ua>d0:88)jS=94K(,qB'¡ʨR. a'Nj^r¨mKM!9EGu2߲ա&Iʄ0z `$[}‘Mָwz8 ~e MpۖRusf38MѠ3P LM](?pՕt3Sbe a2Pso@lu'*eS,9 8{ ?-aڮG7Eo*vow)?:mssF7z%$*Xp2F`]GÌNr8ӽ6KSÔY}ϼs0~hf $8jc! B-ao 6?t Sk?oA iCkPo <&ӎSFѩ@iμa#m–66q%j-X"uJ!nO1A2tމ+P0h,:#@y&"[ #Xx:y:"();L̤E"u{Nb&t^*~%jZMr-dʵL VFl<4_Z<^bm9V^z%nfJyB 3DZ8Cc?Qi)B*>w4V@/"@۫sH'C1 |[)HDF&%Cm\+T'FT9x ~U ̫ ]apSba#5˨?W'D#/,otUӧTVviMFQkN*Kj813kJi$@\o0 }dDOrzL[uŢM nվtq Qչ۵ƞim L7W@_70hq{tBRwW |ޥIc)[ܐk,AGzt!ЍHffBiګ`elWϔ*!eB˲ҙڼ bwtp?$SA7t 9вߚnNlV(Tؘ8Nϰ?-vNįiO*z1"aKMbM0pSC$1xRg<' *N^A$f+ẐEѯjy"> ?{hjPNeOKE Xan֩(q#nO$DZ)#4WI ֶi}U}VBG2휤15؟uzf Jd&McUu)0`sQ>u T,/.J iC,IJp#c'vfIs*H KMQ*g""Y-ڒ#mzHfMǙvw{"|!0]/ 5}03 ofɵ̺Js`g0Hjد,<6sj48^n\Ӂ[Nvowفɮ&D7Q1%PzX9~\mCtkCXN.W|%8N 2#wXmkʼuXe/GpG5}(cK$^x/h,u&BJ#k'$~e)iec` 򠕾y gz[D,fnB7MN#CL+uK> Q"7u;vC{P3!i'mr 7Snhtl|IP@g:m<=CRc '2Rzd+ = ?^xa|qtIyPf CC .LVi7jlR!YC3?Wj4!{^O,$%Z{C$qWHPBn K(KBH"A7IתӕulRvY/ƟmsӁixZ 3 4w-(#p(h~zAQuu|L\KVFFک=@핖#R0!DѹE]E `~)e8H_>w/x 5˔^wRKJ;9xdSOY]+k^I~Q-aFK i=Dn6Mf7=9,F>?2`)d#埫1/֜Gfxw؝X]<ڇkkṀAωGCi J'V3 Ty_-5 7{͝}UB;rYU,eNL)X^ΣI f\DtFu(evsz}1s+?Nhd̳k w}l8ׯ` z{i_U"U&B=*oN7J+0Dh_;БB%igɑ҃Q-a}#՛2;(apt1@W!JuY7ʁOU ըOh>V>+ƚQB]״Q2iq2p.E} րb)ޓ"V>L qz3 "9mS/ڸ #>"bBBQ `}C?=:xuעӭT;cmE"WpC*K4zkyl{푁LJ%CMT]~O3Ca+dw[14Qq$=$Xm\b"En\-7Tpp m/7%h A]U͞8RP7}pNRQĆfH\Rݿ,Eڬ˲wo4oЪ 6  Uj้[AD,H7`"ݹʵY)e\([K5}IrremFrݑ!H&Q}gx&I Γp7Dk5Y'f4lx "PYG*e8E=Qq. bhqO3ul4.VjO$~鋔!Ǧ-r)rvL^VLˏZ#Ѻ ^@Vɴ~"fWΪ0ۤ^ %V؍~(yf])E_8'Ƽ [l?F!hHn=0`"C{HP8R?u92`VlD R?Ka/P#z<ቡU 5#nJȵL_ׯI<*t? %43*25|ů,2d29q,X.mq*q/[L9?fHD}Jh$ͬ3uS|"~7wݶ9Kuwˑ?Dj7(9gUS̚ѽ &#]bMQJ|9mLGcE8 S0h 0XWnӸmk0J7Db+`*> Wh/x##g ث}`R:X̡ɾ~;NalVDx|IZ_h8)o&o+#* ÎjsW_^qnϺI|$0ҷ"Q3ehrpi!wEK:nu&;Ԧ$p --#@Eil 5 1y\KðJCxRNiɉ?9k63s>o zp5@- lvx[kikChl0=tjs[ Έecwz$UfiFHaQs.e'lnRs  9l ONҏmwu53\ˈ ADLǟaW7[4?piąZYqνE%8B{P2z#ͽKыܬRo_[e5hw qf_[i]qM{R,ĭE#Ka5i '<< EV}0#YD^ä O^3 #̲4ٷj)燉k'(T+J3OAIh dLx.~5ȍ8><̤ ({Uo؁1UuUPt;X(rr ݻ&:\P|@m Gl >!3le[_8> O&1E(,kw.y_?*n}amFU[/Ipsw'2Ecy't߼3_U_Ϫ\6xL$y+jlBFC"E:iPi6]jC~$e iT8llk,U罕!CEI6OX F˫Zjdxe ^l}L冦?D9y~uN^ RJ%LoD%6^;ͺM/!|=ɯTꨚs}}+P鬅 ^ O@)؈=w duA]wc=(K1n;z{U(zalb1(pN쮤Tn;NX1,8)N#H}g2Q6%8~Y5 W_VCV/3Qt!&aǙtREUku*е} 4eDWt2!Nf6҂ .Ϛcno (z`"I˗/RZ=rZR4?EP~+*e A9t8ig-jhk$ޗ$N{^ Xt&{TA,ɟzæ?V/3QN:Pj(Eθ5o7%(`]+<X>EmXXK䖯kP^2Rbpn?S\"O}pW%%!H\eD)@/ h*2g&/_yefg#Smj9ɟL$]Ht Eq A* ٧ׁVX4Ikm˜Fș[I-$Ri;le5"Iպ5B+Y5\JQV@:?`PQ3M?k  sEI5:4f=[;תM}=Y: fowB:Mg m@JXnʕB$2Z7R\{Y^2 "pzwv=̻F[Q=mt@/O Q\C}`:u|@=x>C1cBr|xn/S<''dEp\(¢f܊Go't4b3 v;fT3?’1#,#Ń%BseoU%%byd7bJ Y4ժC5j8R2 ⏠=>ˢ4R<!ԱfDT,p6Z!9y̻$%@@7Tw%Q߀$uc ~@5rẀ8Or5^ [9[}(NgdK4J}|߻텃]{`Nj'tdҭG <(yҫEbjyo:D#W=; 17 ?ݳܟa˜b+؀t\:=Λ__bG)U <5IdBV}2]T:([vd!FʟCg$#2˫4t꽐_O bEC14xIvf_H)nxtUk,Y?w}cEW}uNhgnИ:êOCQzTXI\-ϥcqߴoi5'V^zH[N/ysQFELd{$ϴ%ڤd)uk ŜG .&k2k 3;7w5j8Sd5Vdg6U-9_' *EWKiid\wT_ܥ;~R8D+V˾.#l F)YܧD%uSո --}3HχՏ⨛?Ԍ'.3\y׈Inl_OṮyM7K}Vs[!'"3`"hAqΗDjLBo Kqad R՛FLIX4ʈ,"+gaL_Ri/~N![1+)%L{8T Zrbdb?Ȼ}um.]ݏ5[z%֎հWW,kZ>~P=M6w/HhaV]mu>Bј>[IA]U%ԣKR-6#c֚䈤VT5m[ 71@(1qqtnD@?GqpGOC~d-$) k!GV驺ns9?|g\Acݪ %Ue;WFZի"&*>x? Cy45 !X+ T]1$Lk=hϵqj?[[?(颀);~Lҥؕ̒*ûs\mF7i/@d8S\;̽P $:="9+3-"kљzOe#SIs`7G-ҭ0!t(tɺuuη0y[ϵ4װ^O|ʂplj۠i"F'-^hH zQcӞkbFr`j4x-Q_e@Qol SdFJSGI"ApT -gԵV<oUhU#~9#}m$z[~czSueZ>$SMuCC_8)+k:_?Xv.Vr-,#/b\E'B;WzTҒp ԣf݉]FdYKK'0S3X~]-qs^WZ;dP&}J?zmxV֋<106[ DZZQTa:<ćmW;M2 x>TVnkyU4DX\\-)w?HpWV~7zbN5ⓟU*@\XBop qɦVf]l`C5z›Ks ?5iTiXL-QP97 Flw&T'}a3_< Y# b2*iSd u5 0&7ݠ6#^,[aMLW2"ķ C4%tvC/($0PZ_ ꊈQ!#"2^3*rU]v 8KsUR=݅&2v>n @<)Iwe0VaM1Ci)t.*\9ӔStM|+Hu@`\(WzZs1T*:o) /%퓗[[`FBtCOkfCthmK"7:\ oyÏ\|7VE%܆/#)&iWfYFq5K7*Mh;N;?U$\< h04}_v2qvkHi}w7dH7VgibS]:CGshf33Ɖ- Ԃ}9/TX a'V`IF?\'l38|5:& @ SnLwڀ*ۘQXˆ 8_y1̶n&%f7ZT& d38~C[B8o`k.Y~eH; <Ex ,߼XO}ex$_yY Trp= Φ*}^Vj:`uo{{];"-֚.UKþT{ok;Fɨ)_/򖋈E q F; rՑw [d-Fa] mJ%~HCM*B8^t+ka#W`@E,k e!jg+2vz[@Zc,)D3̷E  eHf/"|m›y[3@/yD'WYB{NLVR1S xSku2Qv}:{~{"x!G,Th~mk+Ƒ~Ue/7>u;? tr!- K{I0)ղȈe.R 3!=ưy"1<( nݒe|L^-^U yUnN71tI Vk"d䊯PB~a;u*Tmzh?~H)kbycC轏qu鑣(&F2A},U_,7yJnəK4AYF ,,(&HdOgS^gv&* 58+ >œ6$pkYtG9(ޗ¤3Jh$:ix'V} mݧgg+)k f{[E"|D{l-3+ p{|DIcT59hN轼^Y6E, ^<0J ǀL P!>yVAȥp]Q2NUŸ)h]x^Nc"KсP_#V:nOQ̡Ò- ^WeQT1%}!i3ϳ&$DeYKEDsII3D$ND*ꦴ(c 5NQ,AUB.$A/L;nW5\(b妧T6#V,fD}X,pz[nfȶv묪.qua#4ŘJ1z'^) YW^aN+,g Jan¥3|pdRĠb既tPX]dٽBimOkЬo^`]o~-8Z+um SZ6ҊS@[DUc/ '?|m8u=D8аU@#!}!{ش,:f ?RlVrXPY0qz<ȳz!yGǯk@_ VZ!ȷY͓ۣ^QJ0]:0 Xz_O} 1$灷P*{Yl nc(ʓ>C?ݍY{QNCe:X%ĶfU> ϥst.`/m4[Swko%>Ӱ'HU ^NR5UT :9'㈘` Y4ҷbqb3 %X\GCRa8xPYW ) ƞf')K%ScMMgQ' ZW9lZ"2V;j@zԾeFIozT  Vqb2+u ꘀAh劳usS: 9hƟd;9֙iAچ᪐ܰkL01\SH|:AtL ,*9F.jymoUΉ@ IO}[Ce a |LH;tE=`-Hcr[GVWmSǯxΊ $7{?ddPM0L,&%_=<"uR~|Ɵ ,-N<ʿzGgɯnkT}=`އ;k\ڽ]/#qQa%}A؃bm爀ś{_3{$^4HwLjټt*hXJw-Fa08'o4уeVMTdo/[ bDz >K+x< h1(oJ5ۥ49idyqYbpl^#r@ Xuh,w1k&))k,*n:.`cWnnfh;17x+J4/3/ [J,Yw3 v@j@fo!ېf_ N S΂qi1| 2wfO+YGeUvH\N"rY]-'wڮ!EL ^ {+LҔoL1|`7;]f?sPyQx{M'Ue gzN@/MWT*1$#N~Phr8( J-ZiC糖eP]I)I8ǚ]a)Lk h/qah.Y6P{=ݶ>-`U) EX8 nj(?uW&HQ\F1?%=xnXB;˿Q{"gߝWv3Z#-{ZJ]̫ h%ZF=U-!.BɈ*DtJ ƅql2NUm璶y6hAz`eY^-~;UseMt> OFU#wz!i0CtsD30 x֕l'-KDG Vo ):vߪ2O]ɱYedO8(eB%29Ewx <`Z~)\oBkA[T#D̰zFR ?4?Z N|:9itGW"/AYٜ6Ե[dfu4R$d|<*"WOPA+xb&̶n)!G+Μ77ۋ3:R u28]A2c~ JQGVvRK_9$Tvy*f鸂rA &K#$VAHdA{kG:0ZYH>/Xe֝P <-o:yv:uPMAfY7YjPxɑ!fh*0.. J:RNf-<ʥUL} 02Wgḕ*VhTeqJH4y%?5\?т*vh: d:)T%DQRK61-D⷟򸀛-zXA`~NN{)2MĪ\ gI0Vj"]>"hLu_p@tĻ%[K܂fG+ʴUUK *ޙczZHM G7浚#%6op R6qw!6"ckpDڶ=uS_M}ކ2ʬAܼA &~%|e!(ƀi{%tzϷqG0.؇f!Wjk]e"4^9|!j3"|)ơgTM42!Pwkf"U!p <~霝RxB!6FLTHh}%Ԝ@|>B!tXAd>B DV@.;5t8! ʘJMbmM:-PWQp#weN FkCml>@ XFVTH0|Xpa #ճ3rBaFlࡳd(n{2fa? 3 l'[f]dW%0/4MTFl6˛$g4q+O s=mBK g[YgfBL_xuϨ4cC)AF\6n2 FF~5\bPǹc):n``x;saH Sv`߁|dvǴ1Cbu|! VxlG4.1aoI'X^AX q"toCY\v_F_ĭƦêr8Xgх'?n*%Z:S[[|#?QqDY"?{H 5MlxYɼcXR#Np#M=,Z ˭K#xY<Y'r3U?4PTG%|8oZ7/S)s*B {ޠqE[ap#qzb+۝.R{SճETvœw ho`x,50A"f]mB ^s`Ņ =~ *'{DŽQ/IaJ6'&Uske1 z q۠IJ!֤ zUkxs΅ Y(('2p|ug烞1PÐ] # Ś.F,ݙC/VV{]TnxE=ܾWk-} ir7F`(}Z'0y +nxM$P\FNW@cPk"< @BhQOϓPH,TK$̹%{UNGM--#܅18E Ug(sY!tw#@$ >')`ӡ}ܲ0^dnuW8K/$ZrK?CǮWx\ 'tȍWbTB!٘Lw}Fڏ, /C1:NmKsܺS@:XO!8w\h7 jnY4/>pvHqFx%u%i~(Ʌ1O^a:'46H= #퐙Hu_J#˜ ʯՒkuq3+Fֿ*Ho~VBSŶ7w(qoC-MGa)?w[  YPг@6)~Ҽ!@Q*qvTlzS W0ՙD[*|5Ϯ_;8+M c7`.[^3M&Svb"RF!g _$L1'4ENW'zC\?N{ V?Ab1y*9u.%Kb3K2@u;_NkUAm40J ]T Cq,iLl"&kVhDc|vN+s>Nw5wi0)ӕjzk!we4PSlEX*WE t>~`zs7OIɰUIt{-@.ɏس }W>3 K2i櫅٧~v= S9z?Y=ISp"4z8&{v {HS gnz:4(^ 4,VpwhA E=LxIvh%fIMhD)bP^2u@Lwu3-k?9ڙE–U;r9R-rp=5f69T>0>p(R<0c_8hU,Zfbfu<M~ bK[~ MFF2ϚyQn dn.TA!E diI hf#㴿de=O6HtB W0[˫O]o4(eW/ isUw>m<\a3a̭B@ȘYA}d˸Jd}3EH|lNw g Nu0ZZb Kb4.W/Ӄ5hb;nB5$r+??@h96˱&[SG.zFo!pC]R # Knx7J̽ {߼=9=|KGA׺ ii%{;=\}^!I Z"UQb" 鶴6z6}lJbv꽌AZ$̓6Dt7`Y*U])VO$^0҄zPҥkdFbɪ#Y }VQ#l%? ¯Kʰc qQ$bj'I{)4DjtB"%?'IKά"RS4ذ3yMC1ObKo4z 9'Q/ "-tvޚ_2mΨ^c1eV7KKon ] kKc*NOܸ|urUTiE}y4t6 C-^",@<{ttyx1ތMYrJ16*7 ÆVqd'H% 6++.G#1Z)1VuwMvq72-0! *(=@>Xw𪼹ދR#J&MjDo#׺^g$Yԍ69 W1Йe '&J$JlѼXЪ,yl]R 踄k . '^N D{>ٌˊ?F%C_k_)1Ɂ= sz;Vh5b(쬩#X#9.9@Dr0[Ne6G+P;(PAYfR ,=d3\x[ϞIayDp(:- iuZn֬_05LDݣL$оmutk ~8IZ}\2$2Z]h,4^Gu R3jʴžekBrr"w(ooXTVc8?g\)9{ZCN/ڵ yMWƄwY6D)419"jWT-P .2j胳@N"KiOKQn)0%c8^̩F6 AN}׌%+0'! j/$#ҷLKA ~qaֱ<WE^̘) %$8,(HKbٟN,eYZN?WAy)2iU' Ǯ,p UA<~T'L_-=' WRʝ}~EV*Q HN88\Zp^ B-AN%NWL7dgKTk @ĞTZiR"[FWAښý՗;.inx(ۅiv?>(MbV&J~҃@\Q?C`|Ö|/P*š9*(0v ~IZڒ? cΘ3x/a3j nW}Dwvx)N8iy澖ݧ|Ԙ:>bn  }P7@lYr`n8r:5s:my} 8NӻtL V"ۜ 7t/om;v\F=-"XYޕ^ 2P1_:tƝ$Wdu+ R,MV1=b&_vWEpB~v@M|hf&}D:ۯ~v`^v&a[xD~Hٳ;Ei4pd 6zAG oCL PMRr.iV%SRs0ATEAl7=7a^ @N'ɽnjZ[Y"FO!N`@ރ%间`bdYCW/^pzj#&6#h6>D`dpn#|[.7ml^LNk~F8@- `Gga0 94ߴe=0Dm2M\Wh|`k4UzYwi+{9`mb\.P.:٠򰿩)Ԅc> 4XḨz}!2k&C_[o i?w >4np?~̦ɽ'n*N{|Y).[Ȧ楖|* _QZ~|BW͍ ȈPk EQwd{>yj%sZC:ߖ[`e_ IlKX%U03{LC5.;SÝ`eAfxJiRnd<qh__D1gAx+~ZGKBw#Qewz*iX#u!t#[^{#9@arT;gW?E^gAYt|7q/!"}Mz5gF $>Ѭ N/yBؠ0vx+1=tҒ $ =۞In$)b3a0z|.0/{ꃎ}G}dZ>mSz+7ȶ]}'nOLch (SpKfY?ʕ@TS#[4vjFfizk tݯ. nF,Dlr-GEbEKt;.VD ?Ν-~9ޑʚ]U\XZ%4'sRI.) E2E_kN2 (.YN]h"TKٔB(Y"ۤg {B8M?B iS\U,^eh:;1$LHt:(%TL3ORiRLy]vq\Jm9zu_K? FrTb#RzeH YNUV"cD;J]))/cFe-2SqDvVˣnFwwfY$sv/ {Zb5N.B%Xp$.f5ey2r%[e+K{ry:R 4KɎmd^Ǒ X@o1D[X@sO_gGۜo>`\8G3AYlG4(YVic}ΟFt|&.}F.'XPe74P{HBcbgqh#cГ:J?'$`2g÷\ӊ_1&#r 4[,\z L0K]jTOJ*^*Ҟ"}ܷ"0//aq{Фzt;ڡ7m8^8 iqȢq##o#JjI;>D) J\bF.K/QHb"kH!d* w 'gv#vϖünPTCg;{~'u=ׅl6: 1Ȥfej1/;*}՟ǝ>k~Ochqͫ6vِ̠tDGbÉ PD"M\+\";qj5<:&Rׅ|X.;!K{KP)5sxIu 4&W{,.çf`7#24c$mAl֫#,Lm*pBVVsMfx=1J_$v9-nڵ> B`T*s؝Xؖ>phc}/G"'R:Y ll&)M^ CJ%GTN*6s ה7`k$ ? }\]7{\}Udp(m4\?N*kf=,ok;b.^0dz)>je&زĸDȼtO&{ONpQAg5>y]boT/cN7٫4WelrGH2G'cMDBn` cI$+9 Z4D 5NB=_$7O_fOzabfي3tkimz zc)v& I ׇ)XG9gPh12nőc Q7ݐ)Ok1|B $qfaE-$~}7fO"HU&qdws|KnB.텚~DdMԢ `" ZCꆔU{D)jP;N˶֨eң\SЧ"=66~/u: <޺f7)^Z[UKĩIFW&.Z?@͈C nilMeeJݐT2!}^Ew[f[ݒk,Ԇ7}AaK H e'b@P:G@lYVܗqhP|e8YᲬCi-3UjI\ ؗ߉? RK훉I˴87$vڊRcV5`6m?hxp>Y_Ŵ=DZKVM9=7M&{Z謹>95Tx"13l >Ե; du1nQL/rKO>!M+5pIw$d&bn@Pp^`"*=zkEc7XX9zP@hozQ2ay GWzO.Y>pm4-5Y+rK05O,vڙ;zUM3=ov7<}R?twm + |pg֌x2ZFEmmR:v; \)u&pvua5dHWٖ)*a=Sj>\8ۭ5Zh!"@ q@{ȣExĊAR ^8@z?3\LFJqCQؓ޲A~hRRhi;J0>Y ;^H2 ]3@Wd~S$ҫ8$Tޜ=ً"ks>MŅ(~p:ݤ|+['".ϯnOб'aA-[TzQ/].F*Jgpsk+?^4y*z4rdh!X>V MOlu7/gN#!APKv.]tZ;*X\{_Sb~cl%};m QXO"U7P۔L(r+s7e}6\0e&L|;#u \h٨w*/7p>|(ӕcmbnӐ^]3M؜b1ϙt4ΑizΜhU{)u ځ^\)4@IϭHf' iD1y7k@(EE,qDDMsZqd!@ LLAt)jͰJ ~#bD=6:s+kw4 p# z4E=Kh.;I)x8Va*cUSOZL<':ۥЀvCp ɯ"n&pYۡ=T_g5xl,6JKMeb ;(8U8@mLs@ٱsJ%>J:V#KK/9Ŭ7d0 %}htlu"2 |0Ԑ&"eF"~i-mm_ uKyg_!_"Yom̓~- IjO'ds]ybdTXEbAmC+k15;%X%Dxһg%;&ք_)m }Ю[}E^g{C*seHO$hgw) P7oB, c0wb/NK09 eԱ|A#ΡMI4zL/o$7e$ZߘދCBmh J'o5 * nj>EpcR҇v;Uf.O1\I7@ -VDZ- a:f+)JNpKل+>u Md`Fϳl`D&o0WAHϹH[vhF_rPz̲ؒ:M[ }RscDURPw~'#cjhNIM"ӆR"\7|ߪ3(^!6sZ=w^P?M/,Lͯ bYOV7cop6s~w9B0_UEua Y|0:5_1iu6LD=YϸjUor/:b qiX KKe*:ۺ]E韜}T h6PtFsz5t @}W P#mb#a91d*S| !Ҡ0Yrf#%>ʰ^ .U]J١$YV2qOTcl 3 _R3|ijGCg1y2YҞ*mzL~f3,,I`Û$JTxi'sFkLJ&tdSDOE^|F8;(h1?4+KFGyx޿ry'S׼JT3bP)uߍ7 gf̿4`umrI,ZP PkڱJ݂f/{Aj)>Cl_0aq-I#Z_r,8&hYɒN@R &8ur'[%';3' 'TďPLT¤DQsH[n~9o躾9UQuﶡr hS1ftRAb_;N=|\ފ!#̠͘$|bbcUJ?ŞPLOnb[Ex(b>UupolsKEMlbV/ O;:V_*.3ސV¡]՚wvdc&{ùϚ !$(:"YD j1U3e뱦WDt݌)fgkl 4?7`DUt ;;`{)|#>,՝5dp*08j&磒,J)lA8fq HE+2*L=. !9,9yZs݀|}IPث>|yVJ;P9 m #!vH\Ws+?1% Kf|84kUR >oؘ~Xqi䇷kcBшX#J X@!}GxtĻ z:#)u1#foCPͰ' ~L {@#x$iǠbemXdL ]nnOG7oȂ}p DWw2l*oN`)if3^{5QDbAq=d IͼXG6 Io4z ) (xP3Yv,%j0ۇ6yOjRU+Kqh}I;[ PqUice4SA+:TȞ0";V O}*7-3 ,p2ReHėlW%D#{)HޟQPݫ*8/op\IY}"l&['#^kX6zS7lBT1D80nQq5Evw)5JR|`wUt,ܳ'q^~z9.KsFoFrYZzyPь  Y ~oU35ڢ_#= ayF%+ _˖FNLzc|DG߉I9.rܡ^=WIsJs7AjcݛaQzgiEN>|>p [C{#G2]S9"%6qs!mX2NKxO7Ȕ)~bߍAsՍdY$fH9ՠT2 7[Sq*  KMx޼F{ $ag,(OS Ee_S3{r0 N06bxIZ $[Q**욡Wj.\#  Me?PJ2C))w鉨CJx8b C1=$X>pSFGqϭ[Oz[ZX ؊ {1&D"n0aa S*JyrχSeHq$`nQ%8v'X4w1(OeWR>10*C"79t\ _ZLS&ֽg0lKw9(c=%L W3djX!.qi}a.^o[ݼ9ډ|d$J{H/`֞~nD1suTH~&"*BJT;|0GۡXέ-(<ȲaWhiX-8*VJ)cN'#!]NLZ#w%&mCrKWI1򆻚yʔ8X4ꃡUx(*Q(pz;nl[ WI멃# ª1_Pbm"}<݊C4 IS 2Qs4kw,< -\W$F6(Qgt@خt:۵^nb@r,핥GG~`2 -iʨHnLJpKIt5\ |E}{ɑCw;%hzeFArHOs(#X21T/oD˜Ġ~˓vhO* ?v3ѣy3+,<BE7Q(ۓ~rS}ȊϖE1҈?3W;T{Hv&mgsUn4e]~zBߪw],^2s%Suzf8Ǣ:: ;L4pYo&76G9M,!9miL+ dܓPno1-. \E xZ=[RP*w}w9}e{8`.<Ӗ%MĕMNi h'Tŝd ox;|K9B$Wy.xt9 i 5 :Z M\W 25&q5#7[N^`@i)QlE})/0 +Vnfh< 657.KbJP1F&QДAkq "O &q39gnv'/VĨY0%R 0\)PKbis,NvT"F}W5J3ЈH9&bO>0]6 Ūv> lIF{oKb;NYERͫfMżDZ} 䑎Jš 5ZnUQoiI|W8NN˒쥘n'3^-hX#U6NT.7boB8㦨[.|qNbR3f]p}up^ꊻ0)GJ.@7>ZF? op<\5QF9=/I~e5xA OuEOs uc_E ϚX)vHLJ˚;GւQs \eP&\IVYDڶ;O 7ly j{ZvuWE a] 0v٥ֈמW#Ɩq]9s)urk,@G+8YI?<yE$u,=8W&+wmr `"+%yoظ[+Se"j ?rx~0?vTdtxOX)EI8 AycC^FF4L,x0DO-rmaMpY_sXWbamPio+C fhOZiQ.725vuW5*/zEe~1o<`HXhmXpH uZU 2r_H{.zˎ\*Vxr L Kϋm |_7COY\r.Lo33o;߃NnF0% _Or(B b X=UbQUq)m\ٵ^w[?r 'Um^I֪0 )wD!/e-yrZ@֚kjVlu7<{|fȰJimE9}GLԎ)2xM* Z-Y+oN~`ZHPCt`0)QW\R͏?X;ᲧFlԉ ^g0n*[rzݬ LߧZR đ"3e .,mijRsz͘=d-VVnӂx8#pV@Ϯ.]Ti)6RLր[-Vh&q[C0E!~?4 nz8p=g5W0R:\&Lj6 9#Ж ?"<$s˛ HԜWoveOgT&3)vh}Dnڟ!+Dj#:_ Jc2s9J]5X[=G?`!8||q{%r|0]y:ܝwavF/AoKu%a[:?" f׽z}tP!3EsfMoNY!Z/{>jnS슁ħ(T,8Ȏ  |%r]Ky/vf|T#3cXEGdP݊|Vi{/8=z _vTQz3daʎgxAYkkM"Zχ$t(;~-%a 6!ZLIt^J~RW3YkA c7 z2hpkqQXQͦ;VtM>uՌY`̹0wc!CE}4&EWaYP a'a)eL>) mf/MMR]d*ϋ*QLX!$2@DEn? l;:kRIBpx+X#DHa8Q4`E?\GJ-C&Vƒ _S6B:0 F3kڟ}j$-Z?ʜ/)=!)= 3!p*KΎN'SSY2qz7M?UAv@w f4̅ Lrt5'.v|d7s[7PIU_XTi^+1@ǸHt{"~y[fN_"dnռ ]L8s1&F` N.YAzRY@EܹHE݀&%Jy 6F%ԚuDk{04㷩}Dwc\x#HC'M@#KL0sūJL 46Ldk ar [4mP/0G^tY[+rYփJV ϛKT ݑ9 FB?)`n2A֏AgEeNd鮠a}~zl·T>]Ŗ/%+`E#N*3xPo9׳D@~o8ǚ:I~o 6T)؝{qv 3o6Ә~IV@r9ًi0Pם)|gn[H L2h:/=A_,Wm.82@ {z<.Q2F]e6{bEn+a֎KezLSQyg`" P} r،9fhEX'Ft'u諥g6Id#%{—<`1SW:A-l2pU:KWGJ8H&G:`.MLOq0_ zM#!//Ȫk'QR|X>9̆jrt=$,Q7Է߆q7 *wuϕJ2$d Dif2`/?p#6DLVs&`eH54pַa6K R"d AzKM:/ohp~U\tN,,< !%|+,Ѵi:aErG g0 Bx,Ɍy2R1Iꚍ{>"~J 8v7u(L(Gl+Le,'D.̃{O0z;ޥ0P4sC5:4{aB’VLB;0Jq~_0HQJ/[J6? нi*EECs̟ۖdps7,#l"Ybc50qGwO)Z `#䋩1."%su* wGY|*Xv*w`2M|5JfHXg*k]7íniUswekL99 ]:J3mJbt8-m ,%8HyV0`[-T,(1L 7I'eUd2,LaM{:5f I2V'3W(eؠo%1aLP&:TGՀ,1t݆e]s1es|eˬ$³&n)=;т@CW1Mzl Qla+:%#*=g+CqW. vb^DTJUKBEC.f/{7"P gQ$Z>C%m|pmd?RB JeYwtaLkHCDο6=Cَ6E,Axfu7 9|Y>yoUsfsɽuשq`QjNq!#Z/fM}*vddxdAUH}ڙ'ڷ@)t+F9ј B!qjs'<6tR9pxnѹ (pKĢjj=Vж_­S}&qYw˸Mr2Os-݀o.-ȍ׷E^RbR1#- d"7xNxs &[/9>%ȌbܴED |UE" şʦQ{HAl>wݬɰ4]ؔ !s=?g{yK(_FW'C^A9NG\Nbq+0;Mw &_qWO%$WW>0!ͣt1Hq@<7u l예>rk?@q^?j}Sd[q,XNA;2;e:=QF7I*}EG^=h,Yps[4>APB0y D&mct_@lӱrA։#riiI+m!Y7J(MT(IaPҗoi]{DRdQ~i\ BIIAVX>iv(&4[PL}Rl%tk-.+JFp:XnraY<6Tߩ\ a;WV  lm>eYr2}asGYWtF[E 5 ]M+m*E}:>DJHK $J|?g矵]Xji{Nܤe  TPA-y8V: bt<& ٪x|dr Tw<4WouȐuL(s včf<q;\5sߕs>7.$:4PE,=]\uk|V*rNc/F8yoՉ~`+bަo-昼=N m@\,8(x3K?B2;kr {0ퟳ^9_-fAY; 2Ejv(=1"3+Y2$kOUAVo` K"MCB 2v..ɈIʮ--J[l`}HDHfgZv4tMxa-6zW?9* yW*ub.%]6{@|d ƄHõq0([4{,|uf._%Nw@C&MzMS ne%#|"CY ~S hڦ_ x0{5z 4Y#sG14 ČEejn"N(mHg%E|WYސK$: X5rɶ /u쨤iͯj2يrd٤UC)nӈС )a>}ĶR XT/Bl 6^\sh*ml(rL2^:Z irUpc <4*kX1&٩[KOY'1 Տi@HJp'wb̸ ]6QeOsr.qh' Qes[ 0p GnQ5r6 >!PDK>"{BPFǍv{wѶ B|/BIo#_gMNL: ׷ᒺA@c߽6!HV"A[}QBX9QgmPܨ@7vT/,Z'(N}_#S1I<7*JRD^2Hr԰z u>p}^Đ(=$é ƾ/QJϘY? &pi/R5Dd 5=dPW;.ݙ*ׯm6? 1zCH( )ӗ{v~Z*B7T`O dX*DtTMSv!nzm,b?J\զ@D M #RlupeM] bvW1K_CupB} J16+Z? aSv4_9B3 3lG+|4 sw?ֶUoo70ZMEF9Qpt:Zn0[ jDždykW2K Qw2h(,며+z3e41oo / ULRExd l L.uQ f Ahg`Lxʑi3$l$<2/Bs'7e y-f[^*Wpmd`n ~Zz^&R6k' ppĺ;ICq1oZo=Q]/~UPZٵ/tz5P\! Υ,tO(MIf Nb,7;cPZd㌱%ooBŞ{ɮ-]K5~ˣZu͢=<'9 uWbh"y{kLYKFYB UPӆG d;n/7V. <&( N^WY7#u/pecgiWʲzEHLYd5_!` ؽ,H6b 07:CCkuIɜj:5L6u{D6c[d%E?Q.+S3YCG5~ݸz"Цrk!32߬pt0Cߧ0%+3=bn ,ͭ}_Rm=@`S sSv3`Y&׬Eߪ.i8}YΐVT y"z .B )N.5?]" qd z6ZBoUsTKFV¿czI*<~(èsL*-^nvJ:zU;PN8 -vn')׺w ~ B:đYJImE8 B%-jMpzgCl'؎5)QS5n.&Mb q$3oMGQ@ ߕV/n5cs?Cv`d4H apԘkHQ9?NQn5 ehw`RBANe %M{ xlts;_m}WU~TJ[# S݇t(q'ޡHT@5t^D-C^ o̦M"%=XYx{uBɣ_Z x}z&DU򗖐ď#CS}zV΁iryY?Îs?>'GJ%0R!T˖VM1$ ' wUcdzgbsWD(Al=6j\6[.TG%A:1(؂{^B?H:Eگ> ?ce /q&ag X6xQ13Vw6"%Xi]7P|-| sy[ 0⸫ ;wU>J?:84fh-9YicACKU^\Y!.,ͳmz;>a>D~[;iBoVa +4|%J\XЗ鷄G>AD/oKnj1)֘zoj%M5qYĒoXX.^N&ybبutp)d)Oywn(]bV2QHefkq]A`Qr*OܷUT%/|p`/v˙whz{r_ X^7<KH3l5umEWvKFTZ98t}Zv. Y. %Ra_aȠQOPhSܒ'$URsvOkI@r"dge |,z_aTYK'WBe7,Dvy1䛜uxm8@%M5wZs,4'>h|ѓpL! / 5qO@wo,X+Ґ!ֹ4sN ~l5 g6'l]\ 8h }:~20 p-:w`d[9W3b[DIc A[`,zkfFbgfJ٨32X#ѾwHurI2S_/oxj`9 j^cx2PKz zH-4ˬ>=`cP/#,2ww(06zICs-9DKR; (oI{9-ŀS'v)ܛiq0HS#dh/zΞ{RPQ>h< e 9op7TZ*" PO< KW7e:'LJ\.:Kg;юII@Ix P\>b;7Wmľο ԥVb ⻜,a{^%zi(/mf x0\Q6JD; nW{G t5I(p8sЛDlOjDgbqNU$z lq(9J@<ohgrzJx04޵LT}[Eƈ( j#ܴ?SJa!Z8"42^Sn'j:H ZNS!$[0:v @=wk`ƛpswRW1>!C"2g?V$~_< ϛ%R);'#Т'p4"IsRSue\@ . 5oRUf$}Jwʥ,:~GD>H4.nX@/2:C(ZGV1'Wn؞FV$]^=`O&ٲF D\4C=IaNmR`n 1ja[1im4fZ!0# !IK T7͹ma6w?ϩGvjU 2 6wT]xKhQoiZao]-rMifD[#D_be|&q tpj6-f^GAs7a\=WoqX¦eLE1HGaFw`{^&Qsv3B,G;@ 9,q|"XiH~9ihIopȭEX+PnVZ m6#+M%6wX'ck9@id%;O'N.(J벭Z4޴?6Weg0];t'wv)zN+w5b^YȎ7uf?0lA@_TqɌ=~oN:cgoc!uvHM0 ,y:qNN K2e$}ڟτzMi2ەn@v6 O{:i2½YXȁm/ [ j{#4YRUjsF,6PTRY˟\a-= r.; |H,^,ܛ7 rHln ԫX,`y N#h"]2M+SW`prH?A3Q` p(6J@Dm[d٬}TURڈ{U, J7x_c)qځǛ֨eǓ='N}H=qMj!*S)-\u/o]_,I0{Io٪Vx"zʯl#.Κ{$?s-X?ױLG;5o m ' p}kx'&GI]f)H5Se}L-s'%{=`iZxy a(=vmPPCW\ju#n1JEc^lQ;zUf  napo6.8W^~:d=8o&@eK_t(KT<DCR}nT\D?N: "uhҋ -+{a|3Ciǘ:Sqd <⸉!$ {A_l'L&-Z4&(+ZsyY2wu9{PX>m$O';NZ057 E5O1KmIǫʮfaKHs6w$-\\%M-CVδ㕺Ek]3DҨ8n7.[7 \dϾSq3\DX1iƣey)ďv̒[:;/xU^ϵ&Le|~]M飑|F-{UߑzA|1on\uHSANއyYyCWLS0x3,0 WX?m5`'9T &}?.,-c;趚hG/Y(Anox,<6:q]x@'H7ug7# *+Va{UhYO݃cI",) bo,st~r\\~c)Po&{e13;bF4b%"|kpb::?ULl5Ć^u1̃aJ^!Dtlbi.d~ ͵VMyd}GAYh@}z>זMT9a$R@aNyXzų'JlXܑ`j^ JhO=*ml 5%Z^S1Ԃ_EoCk+i~#EH2NQ hrKAX҆\Zis)Va0x–i4i T(+;0ᏥXmfܟ2񗚘aa:᮰@Ȱ5^,eIӮe,7T{U2_H[F8f_+A>6!"kze б!ŃOɊ!co2wrۭʉ_D_2+p*҄,Sԇ/[(0~n:n+<CPK7jab8rdsI27_Rb*T[w=f4y@yQR#`Dg)``cS5#2&`64y7?;g@̺CVt9.$5"Ƃ,bG##?A!G{1Qlbq@klJ=#Px_똦 ȩvAe:$sr#nj]4C֤/fUvУ#%>989}gլ P]h qlxݟ1 t{y5iSZ|)Uk.!!Q!7dˍd8tF Lt /t[.'UP-oSi yD}SdIo=aPN۞ʝH+c΢8jB%mOh8p]&t[!cF {km X} ^EOL~K{搢o=34܊F?d(F`**eoFu9_8_[+x7EYX)ᲚU'A,lW#HY;:c#rLMij4wFuO)cN?F+Lt"*8^b1s*p^uQatv0 :R=)x3`~.AHXkEY9H!gy@J-Ϧ)ˋ@d :\Nvys6A*lE6qp`5].7cwDpCopdԆٸhtՙjo0 d:%n "~Up{?'BlMNˬ +M)HE&CfzYs ):0C!* otk+Lii&:p#2'7F,łOYRt9epBqm6ȁqI4D%;t5 `J_[*ndAvFy ޝ™(`3 Z,Yr {Szz6O8n@*ڙ4q2}6}ќ4Y9.TA_dR+YF;&Fpޙ&mM43KcOf'+$VxQCx~-!A"0lStE#s ]wQK/&$]Me`jTv1MGm,-F,xv:T"Xn}KĜzrcvS mBhs !2I`:j*3-BDžDt?4n `Io8jBejGzzƿ4!yL={'0"_evcÇSvwIU͊4Jr!?I:˔ڲ$WB 9ɒ̰y *>kműȱvӪau5~nGfJWIkD3.-3lpZ$i:AwD%ߨ%ZB.u9rQ͋(OmCr?Εu\gpb?'4$߱2^ٵV`#ɭa_Q5[I 1W4&uMeȬ6֎2xa{4Z/A{C]_7"6Ê}:;%/ƛ1@Ǥ]}!{_ȩYO9"76X3Y]? iR&4k2,˖rFZZrsS N'ƣK#(RRc1dŢDT8aIq.)= Of\&i"f;yπ-T[HihS)]dzܔP\^5}k` Y='}@hNr=RT{GF%xMp s=xㅕKxb|R eŭTywP"ї5}˻$AQ9=sZ3 P!5R 9=Ec#}9'sSl7q *SnT96[ q>y'c^,-ڗ @Y~\=m ]y?BB k[l&VJ\yw q ڞ7dGCNGiK, հ=PHȷfytjP(5RKdN^1Z֐yLȴgN٣DC#JuVn^"78O8Q'@v =VCǴ擮,V][|h@TW=,$!aTH Aޝ;OC{`+zF)|6$ %WOQB2J0zF խU,\x}ǮAOY")B9eUG]Bڋ/Իg,0K.%P)'8>ث$sN!lTh@^C=5Q26" ;#2X̴ԇ-Xs U(x Uu\Sخ_=YnmP΂ida6h@u_xV*l}p>1>/-/:7ٮS(pk̟L<$6l&|t*?n_dS޶LIAi.o'@9Hwya57f$-900e<@%PA_3fWzN&SyU->uCX5zeF3䕰J:)PNk,&T"%[)ի ;$ jYuIjGՐ¯vߜpc 0BcLmdR'sd^!ǏZRvgak5#,廃ȼ+F85U5TS ޅ}V[-FN_R<aCh2Af"L\%inEH?,wHlvub1Txf4P7,qq)~-<(u]wZD GOg,UttWoMy9!aۮn?}>̮8䞖 ~Rkw=9`0\1D}ea׬LO6V7>Υ1 cd{OA WP~~8 I5pѴ{8Y(f$Z0JJT{Nq1eyu 1$D}Z]c)45 &޵=HL3?-J]q12ڼ{a[5Y%u<[=r U=ElEmLp2O5X:dE01w!2Zbj1qU}π}0Q*nZ oJQ/`iL9Ajҗf-YE,M+Ɵ,܍:q7 6 }̎b~֊LoL&j( T5ZV#h>ô[c/1R_ˠ^]Ih*`gt_td@uDW&M8j. J+j)_A;.Hou@o]8V!=叮?<|,&SuiS*Q*J-zE7_(|R68ׄ}ia޻⭅`=BwC4qawVWqu1`x3ٔC!gٔYJN̓HI H?,X8؝OaQ R)1ג-Tstnh-v67B-G@Z>Y^N o1Wz7h?'fVvel3 [&=U_W~ow)_(Q[N|&~E2s=+)qscsj $6qPxy1kq|M4bpwS7+ Ixp[`ab vLY52'pk^M7vЎɓ5 YؽIȼb^eL u跏̬'SqC YVj2e쵋Sc G\Ix 6z!R f&yŶq6Ʋx')BO3rآQ^e\}0V}i:vT M'&Rs=b){8`_daܡy"O 2h N.sd.kw_.p.>{ '`kW_fvʚ-#[ o-T0fZbМ>u:l$~PkaTj $XXr6TBϾ3E $2Y)ԸȤf. XGb|PBΌS)L L7;J$ ?:S+#%Gգ^ P lD9xsٿIy(:cwGAIg"Zr'r(Lz,%0b#+*@d ^CHe {giR3x gW!_V膴7g:0P堺<):rdAAbR*/ =vU`Hd!y1[Zj0ς1-P;tE!-Ƈ%7ѻcE]hSus]ŀKwM̉ET/Wr{Vi׻8b,(˞z˓M"IA~>xXQ5H'4Ts͆%~/hWc?E!·G}?Ihu1Vo83g^}X^Ri /Ɍ}0gbn .l)CˢWf@= G4}7D(N& >syޜ>bT4'S2!e~:x34:@HKid32^%FXنUU©ќ=:>jr8fݤCff3dCr2@O?zQú-|-! +ׂgyV?p8__M}bV{6Fljư8t1 K`b=FTDZDPfZHW |^7?PΊM  *wjsn'J e@:&L}.tl2"owl,j7sKg 驟d_b n"䧹²íX=@n`k_({*2uSyf<-MW)6\,m0$^/:UnLIS#U0pе<+|*ys``XIZCwU$QL(\sd1`F"5{Tn7/݃l$Z]#pi#[vX6b!4KMյrwj>\Lf0Df֖8A߽S^ hڭi4cm@Mܚ@o GM'礹@~ d|.'USEk~!.:GBdܫsР4*:Kzx`9R̔(t_ 4<xhvW1{h{8x)[X8'֥>ebbC>[.:E%*VFEg#3jPO尾ld%6C]i~jK qAEhϴX֎5ĩ?5;3s@'hQ&33^[rUXhzf+؅:(p^+$wx)7xO\xb}zF,2SEʃB-89zZt3 )D+խQ-Tm3i&A fgeqT]S.,zrB ." ٜ/F~GYVvI]A/4+ų:t`Usi+ړԌ}AKI<ĥ2nܛLWkO3Q'v. r^opy-z$eQbI^ZyKWRZ[+ |\R 9brLLukZN) MEFGP󼙒kIIÙie)S,J᜼|UH5I6HhzTv'rohK2@'3zs1ʍW%^ HgnZN>z?<}L?\9rdw%;Xyc ˄Dd.Q_} ;*'o7 0ix oVV]2GvB"EP-H t e۳ ZrjR!D#t&sLfV{І.DH1] ?{;$9>/МàVhJ *ro Y.<>̚I(TU<-2&/ kaѧu#-OE}kun P(dTEÁ֏#IhpQ$J0_I9:̭%W8xF{M-ͷN(g"cwŐgιSl^X%A{vv @h?X$<>CGwttS%¸cEFڅڟbiGS+z^t9yqb^ \{-'DM{K- sR"8d^z0HV۶HߙBj"tk13bQZO ܸ &9d>?aomLN?.ȣBVJn5~M{DsU+H12Xxfè98Pɇx];YjVSJc Oy͙=&sucE,FͤNs_2;̅ Z mTUP+@2.=t=2xbk˲W?}$ґm$M]U-#d1 d. HEkJ[ŐI{ l ZJtBȲ[lW&I ,~t/D'RpJST oGE`ɹsm!`QsNZ򉕋owX*)&B#RSK08P/!;kמQ_qd[$ HCpv*}Uqi`с@wu }4̗5X#hXoW[Z,h ;7)S$߷_\Lbm!˽t8 Ύ{UP<(%qNi%GIz|<)ZJ[q)7ո s1ÉFA^T3Lt$ ^؞"jor֟B繺;ֹR-r1I1x8T>y17&*Mڑay^+IU13rʲ_Q @gO Рs/\}qx^z LWfL-7V}oԞK8KyXIp(t0YwG3?!d^m!G2Pm'|wvXh6K I}0~noE|Qe9oxFJ =/ӏyj)8X4%{V^BJ^Sdkfŧ ;|JPO"C#r{^My|9rKbPdTģ-**f,z5Zeq3>i.pΏ޴_-Ȗ𙗞E6)GwHl, PoI٬(riR+~{l)+VA]Mx_v3$V+y\ Y~ECv]Yc&TaS/U`wߟT- ~o6?^食D~2*N9PdVO+`S*}:i$5!]45϶bW~'b߳t{ġ2P:{ʵ1 ۣ }:3A uSo[kE$v'cᶞmb^ bUUb7@ؾQ 5+_K@P{q*tvB0{vqz[Ym`oDheZwu<@S᥻7|fxjt#ġPpoZ*9@^ 'Mey||?'Nd7y 7Pbh!Tږ|=Պ!&E}#\Oga NW\:"A|iyvF=>ܕbՎEw 9}LL7(`ڗexQ+Oǿk:$܄?YZca)Եlؔy@zԊx0oWDC sLO*8 #n —P/,Yy`cͪq}qobIE IdYPc% 6_%6$0Ws,ubA^2Jkb7M0e4o.ҽ[7`d5Acv}J b8r8fWI~wi ܚ[RӃu!PH curoH2V{?9]ivYg/S=Y*p$'ju%ێ xcSD:!cիrONYm{~:MѭcT)&n ;T){elD:XPB[܈4u׫wFԝXG\dZ)!U7$;ZZ>IGCj/@${1 4*͇1D aiΓcf ezى>MxXgP̎u=$/ay}|X_0x6f#4}@*,^Nx2 #B`[j[K.35 4.茪ʙ9H&>MaBx ߜI%˒b87*DUm#eh2R3G2),WvXYN/NtROTc]X0ܳ>-/׻E/áBvM黚_2;PA W?zBٹ'`3;) #,,*k_{>M>0I)jx#PY) nІ1Pk7H֍Qi-qfก:i7~FqrP|lRfGN[:_G{<)kW=X" 㫱aj ɂ"H=؆iOS1Oz?YJ54Dy|)j'CaOi=%Tt}#BZF 2J?I!+sz0hS3:y63N|#FC.s d67ؤ(\5)A`g4d*fp[ Hqwdf Dq|֏ڌ d!=T'gߜ\Nߑܿ4[4eTꥑNP>.L T%Z7y0<>w宒̓q5x!W>qq1\a4M,`2B´ QSa`?_0hju!{JcS:b1^\Y@IżmܜI v,W? ̂'ܚ%8mMܙ'^X.99Tm5![n,&~̀ȟL}y]O`F~GRLá0p6gzЎ}LSm>歫  Ȍ~ k"ZF*CF%-$CעQ7_B* 0b|w#԰28%QeĚY;,% f܊r7y-mUoA6>R1J ώz($-foTFְv#]9 Z+p>y^&OCwTO~phviS2ˤ?]"U乾>Q"v Wn/28 eie9OCeW% y41}O)]6g4F :iVhŕ*[;uOzZ%%x +o"cd@nœӶI˃؏cC[yhztU.WW}YQ!c2`Yw`mu  NcK"ylu6GGzl Ԍ$Kb@ 3Tosz߷ry=|2azLRXD: {.RFiyV~6Qp7F6ǵ$g%_4m2Qn-.rȫ_9@`fDuW T*}÷vnqޗj56/ЂfL~ 1H ^\o+ٷ>c[nxQg>* ۫c KE[xg HY_ œ; 'eB"q̯J]V ?bZܯQ$?A*iNS&$rAʯ}ey1X ;?|\4xZpE(+v qBL(9е&#D'Yh`$ExɈϳV.٦OeP`ʽ+=2A3u-mIJŞ)5$= ZQ2ۤgRrrYYAcڥGkkdmVivn=p9}oSdnt*-4`OY$kW4?{V'wx|kcMPOJ)vk˺[]},N 2U2_ aGƈmD:m`xj~.cɰ槃]pmqwi(1{gp2cYOӹK}!pV 07/TS6)0+3++7a-gh _jUwヘյ46Ǻ<8Ҭ=\̣}mtLhPyeBRZ˾PTgZ(Lkgw}BhفtI:Yy,_'!܃gt ,5#6 q% G7QoYxvmȴUʤɏ#fБˑڣy_pz{3SuZ~"@q/Ghז2 PHyd j`$e[E8*D(-H|T`6i"l78GĒ FȳC6o@ z۽[|ag] P}6/CGx{%k!h^c&-|*;Xz.2Y68r^CUcw+9,  Wɩ( :Xf 1ԩۤhaaWqgFu&^C3@e'/`e$5ꟽD'-HsjB%BيpkpF B#k Rl9e{VlLdK4D!Q0iR{ 7JF'9l !ZJ{Ivwɗw25i}}"tr^-/7lZId tQA ;R2Si#iUu_ @8A#=t<+e/DZLG$<I[|F2i0N2!l 76MΣS,|[& (hR] vIZj7>Xӷ<6 o-ts)K uʴ2Gvzz7loSʭnO֞rglBdϙXBҟ捏ՓԿ}U@ΐ[D䵿J!PiɢM$ 6>^,=EVpe@pl^P%E\J6pvX"xO G~Ή K_f>Xr w5I#c_fM.inF $Aȟ~aQNo"IrSk5?M߇P6_)KyJjT~!t\r{<`zGEfo"]7zHG>#X>?э2ߎI~:けN3۽=]N[cP(HTrIRotztIPJË!HC%`M!@|/09cјe?NڲI;Qb 4e\y睃.dsk"be] _v| qXz9/Vd뼇Gk8_%6oCDr_8-ޱLHp8 Piqܗ$Я>f62? /knXPǎS @(=LjnjdG}R ֯]_']]!9aqRjA V'Q̀rJTc~r&O)䕪h3B4sj](/S4Ϯu82=X@ \Y*PIK)Z*haiPm:] iXQ56JQw\kκzz;|y+ƍ5.cF.̨H5uP)H^W<5ٔj*0% 5^a1k!lUNZp9'zۊ2fDNM zJ4[ Fg2OZ_U;x &ED#_a%>x1/wa~7le^^enKW^_ ա>6.J:Ik%3Y8op!ٟdF7s5zάgm&4\TO:tN#PЕD N(cojJ<Řu;a*#8H#V6#h%p9:__e$DM25cD}݊˯6x":`nxXTτ8$\P|mS=ξS\OCi8{swc܉H}TgDWbU%G, ꩌ,טCSzֽˡ{(S|2BÚ'>LSxq=w1հ{5(Zms&)s?g2ϐr9i{KkiRo|L{I:8+du3by49œ7s⟮; ,{{̗̗ wnAh{+?SȺa) j;I`Y#GTy2Ų^pxtJguf LRC6V"j<#p{E4E\O}G9}.KiVAbB{o g Ē"08kGT/l QR%SkU]U?X94_8KqU7#ّ*w{uB\Idkj`8HJ>M7`oS~1>$ EO׷E V$nrxXWmzήZ_- !$I: +&5 /uOZbu(o1?xdTqcF/ Ϥ^X?*fH9 e3%\AVځ\{r6mPcו/"qaMbKq!sx)% b%Tx"ia}{,żsnWU$ug+;0h?9Utl{"ωXz~>F|_QP38}i%x>1&pcsĠLq m2M.i?_>s|($'l~D.smV|؆ZP$O Bb6ԡĪc:WK Ltʔg+JoBt,nXo:]Rʡ9rH6s.&-(xg8m,84L=<-ItXLd2] 9e(J̅hXwjs2CYC"P˯)ϕ߮Σmr ,cƗ@:D 4#:r/*n}Z24qݺcQhd'H]&r2.`4fü%*t,WɥLn8!9ZI?@Z>H겎>N~v'Q++!6< 3MaCL(>{j+xL}eVñ]H vbr`*BK2L([|9tt;`ZJyͱں50ԧMEBb:T)'F+E?*Zڇ"^nb/E۔쏟ΨZ>WMV \)k-w2賩P;虮*:̙N%5%Z!$g?2?(?wAJ )x|z{ysX(˺vX9ԠO^?t"'DY =aR*SPoFDgjBuRfťZ_UcRTD##gdp )Q]([tnpɑOwGW ݐu[hQ1@ֺ\ْJMnD3&;9Sr1CAa&1>QIV[799'۲!=*,1Ɂc$&€q-$lMFߜC2>i'uTT=EP\),˲, nxylUnv=@heڴ#*p@M~Q\ ^!xش@ P## T lmKۅ{ҭ5)zլ%aQ}*X8iԼ,䛰%$5X,"u?K{=e}w ] r] -s9bG='}MWU-FX#<7!k˦Aano,P{ 'J C*+J`Uq(+'.T҈n|6x*_7$pcC'KC6-Ӊ5KֳVš&Us2 m Ȓw5bdҀ,٫7"*^HvFGV-2%~jɭgD4*e؞7FGZBS{=9 KlA',vCWS+]caLD/ًsR,RZc쩉7]t]Db~EȬ>t#m-¥Q \)^꼂EΆgե0|)ʹɺ촮*/}>zjB@T6ci rzwOArmD)]Gn]4,G7!{!+je)mΚ읇s{I>HѼE_P M]Xhs?e|5IBgFjRht'#[~I|@F^B;(J(I:@[,&u1(j w|fT`b7!*"4zS0=2}ts^F;43M{ভiP% \Q1% qÄRqBÝwIMu*?^9ȡ[Xԣ$4}mL;cWH%KA3."ć2Ebj3/| hsv5'*?WQhP(uE4ip^*hgT >:[[;L< _>,/Zrc7tfM]bfN>iXׁ.͛Vv^x"OFT͔*7K(Qp9X 7x I'rL^z:яǜI|Ha)_2M% HRsQ~K1Swy5@6զ XJ:Qja@k$[v7$$ei# =ϾrXyhchٹ% 3Y4X `i-15 ͱ&u@b~.m1qXlÒF#T֫Jk56 \V9P@sTesp$鵸4l}; 8,xF#S9ħGDNav* xsVmL1hIa ¡"p~`@53^\uLG&Pl>qW6>Kd&WwMk9thj=O(;`.!WpC ~VQ+ۤLl>+tʜy,HW&icUf4Qk 8v:|\Nf-24 |XZ~I٨lPa\HXiϹ6_te{g-dbf =1鸪U?3ץ悘ОhJ 7%&\r%VCGCQ,s A h8oɮ%~2I l3n 67 زUN^Mog-"XTȅlwOtC;+M&ʇӮ(ĺcG{ Qx sSt7 'vgn1ULZCePq.1 L!IAA#3A]<)'?MYYA@-@.uI1S&Ɣc<,F7 bg>' _k h^_Z|M&܌ͿҨՉGo4P"v/ PʷhuIVo =E o2Hyw0 \>2 x%%cfuZ$bmz@?rY#;Ũ9 kԓ, u Kb؝5uBa}~` Ʈ%bS&!Q;R [I㑭Oy @'_^B}ӱ_g&eWM;w>ԖZܘ?$M%-f s.;::oVi|;}kIqKd?Yk;A:/h%'[)p;;4}򺳳ghR;MB Ttz)D(Z" G{3Wwb֝KY hvbݶhvvlŜek[ͻN͌lez6lt+85Š.<; y]k' Z%A=佌]p*!eej/ԯ%SкMjt\bg~8& ͆\a{Nѭim兩m;"eج_RWXqUPSU₀mpr.,}O<d%60(zPXdʨYZRaxXu/v X|iC>%BzR]p5,-]ٸ'݃au+]ޘ({xr4UU  JF(kd|&>Nd~<95%~06'˾ d.ެx"avZ؉10jN3W4+-y8~@4ȃa_^o,x2˂!vka:! ZR ̓&QٲFJD8C+r|k| We28ީSlBMed#r E76u~Mg[kȯ/6=M暠ѽM(Jgii^s ^[:Ȱ3;~ 8Lrn(NebC R?o}4ٽ Q>Ʋp nXކ5EU-9i>{xkֳ^y#XX Uif~BH4L)r@b@K܉. \-j?盧OӼ3?.Pn:d9(#^D&.1d 㒷%iKPG`Gt (XI02dE|fEI.g"!zL2GDd !N1xC4L m⛀(&T1~P>rgJv!ٺ]Ի.oL|@d3_SI4}vT'k( s2w6h rvlZ9 6oZq}7ge I11Z==9Yp^NB8LW >؃1^%|׈"S]6ڋ0ph 3.ls=oljĩ頬'H[EͨㆇFN(`DMQ)2:L hҠt/z@*=d*ݠa$u5#)*[(p>P?~Q/:=4UӘɂ,5yůO_?KjR|h^DWﭧk=pNZx &R9T,2>DҾО6nuJfücuT l=vRBXV5`{ʆ*9I#Q?NR͐ȢCa,UWIE%T(q7)U,G<;a-{n ]Cimh _/@CaqCSwZ: eU x^ <)}:[ti4mGT?Ez0OC:[Wn#iV@TW޶qLd鶾0*wHPQwz?f!Kt Ri!8! WN0n?t.B=Ox8, UiVZÿOSEOQ~_7s{=֒D#"s$yPYp¾t^cIhfo dpBh%ZH\Y#V-\Ocf,Prv;RʶQעko݈:zsv`" =Q~Ȥ3AڝC0Cf mk#At1V Ÿ́u}{5kn:5XcY0g}"sUPg])H2?,ҷW| u~%%L%TȴxO{IDy# YXin赆}ʱ&[Bvg)EMI_r>JwA#d%q JSӥG}:ao4|E'G"mڙUcIiS)˛q+s>\Z2~:<>clSE Tw. { rHRmRphH pF9ȚW^0lv̐tܧGPeHfcQ )n]NqŸ7{=9x%RiR,>Ά>WNSbS$Ukic?6ND+)vb9HΣ4CRg[ Jq/{ƳlI'~gt8i;J=.z`/p_ŶQL͜"0 хP>]+YҘruSUȆi&J0-y~]dUn| 7!7: K9.'M/Z^jj4=YD_Tsa1C^dMh +;OGNt;#i9޴,ħaJn+e>T aF %Ok&5.(|EG/E`qߩ@U 2R8^'ۃ&fAabҤ}J6<2V]Q I-j'pxea qל׎}@Ӵ7Dn^-Jlztx{,Y*>sE4W7 ފ(9*>buAX#D5G#QFLv10`H.P^:|>ˀ1I/ ;P 4Ӗ@?(r+E g7` EK!ˣ /[-gss@h>BNs6IשjaTPdL |]צ`V5}/PzVP}LkNYbLmK~Mƽ7mmyƟ=BXoLl 2@~ĕ%Hl؍@q67w8H nUyX lt쾤z{ߐSgA{q[a8ljP}gpr%"cgw291& 90]Fw.4wwu^ u{`1s(/91O2xlqKC-W=G 92rucI PWFRӂ $xh2gz頭Qy}dY5?:[ k)3ny'3ŽC!l 6*DFigEP‘f)TB3lWGжjbOfdYĠRkCcR9l {&&?  {s7ad]udҤ(XCa<} δN@%ײZlm"O57%UYOlFR鍼/~AnON18O\z;q2vaźm|ub8톡/a ͂>8j֜e4ڲoL#kfKsЅ̣O$^i_ p0F \f҄g`D-P,rUb 'ߧF@\ٲGX- ϖ]kFhmC A0$C1t(7  +a6Ƅzxw%GX=#'c%7'Qg E"MJ#27[%?{?b _3qZ%%-?\kЇ_ ћ|zVT Uq4'o)J;$>_-9_|Wq`R%}QvP?4=;pz,H0(#4 !(:@L_T,^I?g/k q?ħ@ DE2 i M4w~C%89:huYvmF^v {m* LRjYV89>Q>N̸T. [3Hz҃m޺*,Fe]}#|z&\O8AUrQ?(n)BH y<Ԣ@djxv >G_?g-0Ƚ~Q s O \hNmG(]=N[oIAkCr7[eI~ Rג*94O:SPɀ!غ;j4Hy8zNwMO/Ld.BcFw`$<Ɩd]I`^Ys~X2U3\ . EWļB ~¨%,%ַŲ\tS(i[+0]X)٬Ehp{cm^Mo$mhl.th虔ƽ\r8agEvIXäO#f-9V,%x4M>*k va.w΢u ^ ^:jd,9 k*B&=5B+] Cvf1|lp9vhɳeg-j^uմ|K 6 1&ÛeOUBz::9o}Y8oB1 v$ .L-IՠK6봸Iw/ 0d& 5=[鼽VP0T=* -*A30&嗧 GB&voits gtB/pg/{ <ɆW^,BN-ކh@|%ǚ?SX޽W{F:=}txN0R;%v9܅~eo6R=U hSu9^/ Ȋ +T)q:%?vނA2f#YbEٯ 1DPaј<ٙ=OLNZ6C&l}~Z& dQD64IWz\ !.q(q8Ǽ 2+&D!Ӡսߺ1sY/A F=i[I%fi 01_I' _3"B0^W|, C7vBاʉ U\Kj,27eZ&e\#sr)iɴ;wйT` ~OC. kdi8*W飖\@lȻpb^XNpd|=Mz'51+vToN-ŀWO A o#S!mbr a$bSH+i4^kho zgA~Tn$IXR8.yC0 灀M7 W#&GƉ|s7J6ŸeQrd(䞚B!XTԐp\`6n"Өr t2X pGCh0u#Y#sv~Yw֚WP XHdb;7$6w}(=z,Pc㳯:ӵ$+[.!:Q͍wD_ubnT0 &=(R=aťb.įR==6t.eE/Q}h7߹>2I&<2JX#?7tT=맦,Vm\pW9s=KiN7Lm#qv:PIM)Ŀ?@.IɊ6tȉƞC'+ˇۓ2yx@xpa1f^?b~e )kqLκJzօ Daf"#C/HQ/p0AmGζ sߢ\i/f9RhK|29axIq 7ίē~򌢬f]E; @PDk? #Ӷ~r pg3MլȊπ"@SLL߸Y bCXP_]zFB>fv&CmݙWffFI(FۨG7FtZ#kj ߇VIM&isb7fgi^`W Id?}}`n/q,&N*>\ .>;0#{٥lT{.~L #(f,>wٚStxvӮ#iO(3pBKe%WP6Duq}G]G{e^? .x^9(w5PgR}_>1q8f~X*zB/J0;f gNT?XHWf;'&YHJ{tXH5q\B6F3@Հo&ڥCv7<1 8+ݖ+n*" SG\h+]n]GM 0-,GRÖX}$eȬi@NRb!yM0R[ML{utY44Ŏ><LvfwNܥe񨂭K=fWZhӱ_+jZt7~߮0Ҽ {+t k4+%DxpwWdp@P';qk8хy=㷭r+'"ؚ hwFi^EVWNj${(XwVPӰȤTV\߰麗=.􆽣(Cؤ/g6*{$[+-MɠԀ8)[4 Tvi1i4.>+!#2f r+ Q^ stItaއkϥͦ Z7VWŨN9yɤ@vBwjrH% Eѐl =B"`pߜsߢ~Ya,&N-( Cqߎ~s "xd54xBLНxtw\j̰F\B\q B*!Lk@NH*#O̓sQ^KwX[>}+@rEy ֜1~SjFyD,Lȣ9C^Ge#f`7*_"{,=8yMr/MWx%JV._C.~vAc *LRO=Mb;җAOTS*pDzsb\RLH '{(F i.h}ČujkmyVkdɵz4] UC+ ͍B6/;JS0AdBAfSATE4.f='2wua4 Zpµ}SG5LZknj*~lxyrKqv s k(t5x% 79=m᳗r7xudN'JX ^{fޓwbƉa}I)=PM؋96fQu/БmgO/!]&ce$A^e3LMX+^pG~ 3a4*.c@3j,Kc^9p׾U 6u>|ĕt+U";@B~%_j4BL:Uڌ(q)%y NY] к\''1v%6/y]LN6֠8̉^1XσRW=BiX%* ڸS||:ήrI9=~Z ewVOEzms8"zE-hipޡ}Pf{%< &=j9h˽ܥ aYTPVYJY\o,ضFcV4s$.qS[Mi>grXkdΉW TAv >x1BkFP:Sc SBM > *L*8ݣ[,OܭUm^ߟ]Ee9xjsJ8.OӯTm΢I E Vob0`QS̬=.~k$2/J٘>34( yClH4U˻PR7 6$@G,RJp]D*0^ÃR(ُx>\@܊'$ԭ oç _TUk6e7EYyLXu4z:lBY6E߀pJ[Oz [sHcm!@O| gճCbǫZt`K11Dŏk:zqJ6mNjΘ)6qQ'$Mf^L<`t&}hf2y5^VT6-J{q/׻. (zǛGɉve!QV۶Z"h 6eUl4cgRg[gʣJ>YKޅ%%9B0"mo"yζa F ;Jv5XkhWp~ZЯ +cG!A LOў{P%,y7^cR O\G@ZXZ$/r@WWxgu\_i~9VȈ}əTwi=)fx$n9liAxVHi)MJUoQyBJaZY<;vJvbt{Z\ֱAMxѹ}ua O`4N܎[W1-2M۠",|Y}dsJjN4Qc'ۨZy3PymzX hIK/9&_0>nQ5qs2]enFdH֑ir=ZIEMi=;{#EQ񤦴m$=yDh`s7S>Ic sbښFzC\9]AU9;#v3`Zi+ aIP֩tkv juNc4UuNz[Z<@A@Q] R ,tT xhǴCCR?8GT7ϕ@膶ta}YBX77 MHPfT1yqx Dx*(tt6lcVNv.7GOVC-(N|<^L?S$rImsk>ܨk4bLތ%I:mϹFw X@N֦?3I2qdY"Fy Qg4 vBqB$s6]d&]hfU߷5F yabĒk052Xg,'?[$<,޺BI|bz:{%]i k-1Dax7ߦ2Sa"M"48UUcc9)4s|2!:bqמKy\V9UeUL >{x %Nq@04d߻M(`GIJAYFcD7`ۋ;~{cpIi?N8 ']kjiTdd:FiBc_B?\$;s3r,91Y"o/ʋ5*ĕ,&? kyPUoδw\w-=i,˘^?*,jokg}\[n_x M N,X̷~SY$woOͱpa<0Ӟ|=䣵*fD$jT6^"RlEb(:0&T-:#}]8EN7rV$T(NR:<q;3LraU}|sj5u8+}{!r7ΠWx% 6b9]6ux߭Y5PD":I_T8(we62?(X uF),"޾e '[BP 8tf:tWpFc_tKd%ɾjeQZ<*hzYD&bCd)SurS.|]Ӭ,d}{HLʑM;2j;)U/%Wl xZ;6d8L3CYlڟ$1OVJOjv@~qOD-땷p+U,Hηj4j{^|eԝ>oNUI#1z1CB]lSVOiiRj*v$7U:Չ4YA$4`0D}t:pҤfsRoPl, Iv-9aҒ! rK ${.Lv͋0T~8RX C 2HTMglwhEE>Kt[&1PM"9ֵ<_V~yj9Эz+*.8gT/=8shWRzLF/Y#L/ /p4/a MLȢg@~{ e#ѱ=>+^C!+O kY9DX-1gzp41ymX JOޢi2x8LfGr\(6.z %.wn17Y}W?b`s-5(\/J}2_>B+~};$bŏ ĄD7*SQc#V T9S7w)2YWppc17omƃnߞuwie|R٬_Xm=ZwLQw*9E"vKDƁEo;M$]ӥ] $k*䖮ct]S2?AQ!e-&Do:Q-1[oAzm91 ㌟qxJX б]Cʣu0vQ#h~ߥ%'ݫϥمۓ#HWkI3)çh٤jyxO(i0Oc5TۋسiAm8!Q\o u {}Y'be)+L00#++x TḈFah*RwOVȈשA TJM{.*Ui!f}wŜޟÅi)>NÙ\s:e2'|ʞiҰHES9cLT}Rq[Wb# pu]{#֛xB}zmq|jV*cPސL#s݁ԋd5D]֑lK1XȋG eQOwK(q1,#i\5Jc/k?& Dg #~}sʶ%i]$Q`cqa V-\a2>RBk*Mg6(8 .3[ԏ">/>xdV1ezKk,x)v)롳")k5QoD[){2TžaوHԷx0~pP#ӴƄŶܨkE'&N'::"'G{"oųδ9ZO-|hty DV͠X9gx"y."n=ljf9QMzFQMc3rF y%0q\jH<',1#鏇j +*+0xB8![RF[Ҭ7> 'qVG/>o7{93/;nw9+EeU`|7beQMhPgV-짫.5/VpÊŌRװ6)Qa>ٹUP>ݪT83ĆNGm)=`@2mݔb'OȀ.at j J'!#8OS,C h IhlQ lTQjJհ2{rӤgeUͯtXrK-\u283t* id5#5.Ɇޟn^TOi]bB4_)K!#u#OZj\#Lohޔ2qPQ*PT늁kn:=G/– r?γ\KiK4}B[袿ۉ>kC%7»YшHzЏf`6O_JCw,ymk:qw&Wě,zYО붻VUfVogY9LYr2!rvi?Onow|g 1\5ΆJ3]V>}KS$D aETEu(~;LKy.!z1hR~Pkd#,5h-k lsm@ƚ\B}K9"ߏTpЗDc= #!e'Ua%쭲rن]JPpMtR[NW L"HMwQb薪~yܼt@E q?j-F42pIvJͿ^vIJ؈nI[1Q度S4IgTAaTQ+j^݊y h0m8pQɞ;7ͭ3jaF5뾣A";]^4Q+A@TaOT!pel5Ԛu;x]$%iCax!٦x]dWLy uS90] Kij{Z8$bV <9~}I[`536>[Շ1\3?Z<ypWxԐXW/X5Kda8wTg&.ʭȚ=\(k^\*q(Ieuh&aP39fԦ'VgXʖC;h+xhJ4 y,'O::v6 $kJ }Z+G䔂|D LqXVp z7I :WMykpgQRNENM c~.rID? ( W g:MZ߃/eGN'ѽIO.X`#ABF]aå=d"z[E u7?X᧤^ hȴ#*8-{OoW5"wްXj`BOnY) 'Jr2TBtJR=qˮW)K>&x1N̪:jp;E IZT^m];<>-3u k<89q;6dݍMhs!2e(5!$ˑL87y,c޶[w,eɧHR2P,"SU y-퍱vU*._ؿhA(PMp`ݾɾlo-[nřbWֆ@UeV??~d%%SnV nkH1\Z`.]5o'-'pэM/+Q="#8H V <;$apǂifᷚޕYxv| VsFY`31 +F[oV,[Lr>85z^ˤoy<[0dfJvQY~-q*4L 1#PG췏[(hlc> 3$];bHy7m7%M#u~1CnsG!*` goTJɰ/^}^qˊ%B2&^ 8Oo֧5/ev*s|p كY 2-<fzpE-k$$f' 9Y=w>X(ꍷI#yWlF^8=;Ol ZIzO%&^9 'Y;2Ce+X=[Y8"z}^7nk y]iU%l<fKw'3z,jQ"^xjWm#|Vjq f'{[S>V&Wmg<)li 3be, [ֲ׹l]HtB흾:(L(Mm[^hm7&T p^?!7hR,z}BBA.x^pUrOPx=ӰP~\˻ o2~wiV0hzɱ1t=[ޤ٣%kk!4e.g󆱾R|hY Z[w|+\[ O_-=]yp]뼿!`ZK8ecqh%{ 'F{B#r$tW C6Wb82@k${|)GCnL+ΗjpL (3P"2^^oy.U'MGnK,j<.DzDF-}xdԪ=0{vmcA -JR zٗܛ`0ZTF_Ttp~  jNmnP 4~mq?^gpGy" 8+j@ 57o@< A|?+ ='tњ߇ AE;so׫x#t 賉dć(:︭v# +]WR2]?UuhZOCP U|*F \ᴈ@JgjM>m獋)L?>W&% p~'쬐N~֬ΛO,o\eT3sjdmJ$בY}v/Za-g(iSQٰ2>KEH7ܩxxɌbš&^KbHS ,c1N6 %ϛK':L^,P01{L*7ka_ dֵ/qiܭ':mjJ`0=N6әM84yP Vn 3]w)SA&w?:S(䯺}t<؀'%t,nl s(GlfϟJ,s0' 33)%AuVFNO=hlrA?(bi.Hd6~S:4 3`vם=`5Wf%F5]VyS!|]+1 1Xw,3޴k´>& u_U;̸1fY֖$ ONRHnY'o`u7O5|ywbd5$6vÒ?Da,#dSGy^{jlck5Ė]( Of6CoN_ޙέYR|k {=I.*`/q(#rod4K[Tl^kDaͮ,hfa2UbT"P^1S|)jn$g/,BYzWGWܥ)V+9'xxBs|);.c7ə-9Vӑ8Sb@Ҁ;eg<}NTsZnVg#F!RGt;4nHASHXg,q^BŗS'>Uc0.-\`-lP'ߩ~wA]VԨqxn5ѴMjXoOb % D_&[7xV튓ec01 zjY mPY;l2YFqsTi tPNi5?Y爛"Du,=K]1|s`46+o'ϊĪ1-zh3PZ cȤ0h-XBq箆'}XRxMTP!b= "_P03Kǖ-]v[eѼ2H,9D sOk;&$%2ߟ2x%RiAvh^9jKB 9%GBDe?i|WƋ>(Fq)Ջ( yGq@fk}LhF&`iWEJ`LGF6ZemϘ;ѣ0E;G`E H~Q&bv67ۀ | F`BK<_>4@FтuxIAw&}] ! δ>ËK$O}qnL#v6[ ޫ1zxb- F^/ӕ[GZ'աa3$(\Ù9{CϜjgwl׆hisrqc)=J]L>{8K Bx22d˒!- dvii1$bKr_'&`Sm`lPrVċy`Y#Pd2.:=2wZtja4%3#7Xbr@>b!vzJzʳa \^Ugfw _\7IC"5AO%^˜z{5ͥT*Qi)0$rϔѬűo,<όsی"dtr悢FK2# 5rI|;xVʏt뢝-> q axڙTxx/o]~_5#x hOԧ{ၳUr,^Xc'ka5qNkȑ)_ h9#`_ƢBKfn[D9V5^J3ϽH}2ͭ$J}'k})G'z 'lxb'foMυlCj LxZVy-h!pğՏFgh[r`.]VW"qgOh?Ƚ{\ߞ@QA "-j|q-MD7eRjq!DFDDDQ~rm0n?\ q iN,c3Dvӽ9*Fjc%Cte}b M# ]SvE):(=^s~MN%_#S$šn2NZ$1P hŠ$L://s di穞rY")tKNw%V @CzoZMCUOvSzSXwqjK^k d+ΑԵ@as-ުr[^kBdpn5[YfP{ڙ^҅|_.b)Mu:I]lA%puh |'\1lx/g,tB3b"oh@gl ƪ 5Hso1h}W [^|ᄎ >c\aSOk)ot r# ]Q &g:btOs8T K3?[n稈n1hCPl }F}_&Ag2c9qlQ%<ȳv=]thV~UXl(wM(|>->jS:3VՎ{fBLzh`)#nf#'71*=$mS0sE rYTzz! 8] BeldO=ɭ! f&OEIQ)"Zޗ܉) lz]ITW?RJ- SFpٟ !@PpypR" 0,ʤU~Y1m Ȗ 6D *ͳV)YgDK{Xd sT|R%ɲ]9*+(L8B $x;?쯏ʳ IZ2-U[`s+o_ktXe#+ܫrJf ča=ex mt=1@Ϫok@ptJKw /ʢRWGZ(<:QzʇɌ&YDnsv1!}Il lGv$pW6}kRe 0 ] C'M B4HΊ*?g5ont\&UuSLlÖi2 8:lkARx"Ƃ8t ,?|>Ea:we \s-T։F:wb겤ñ!mE$mv+V)wwM2N܁T)2o:}6K$m7 \%;/iAQ b&:x< KOF`s:s`QJ / U me;!HysRl=bH1!q7lypF7LV$,o]/iۃ} HkײkkY,v/(qٚ`Yĺ-Xl2ڎfWp#X [n)Z)C[qq0},S9f.R圄L#?V@o)%_mn1*χ}0f&}" Z7`n0nUz8  u'f+d&ZǴ2m\\ƍcM16CRsGϗbȉ1W?=zRR y 2x6w?bEvda둟AeVWFRjOb !PPr߅ cU6@\M$]ξ⒃E+Km|t>[ Pou{)Es{ɑuȌiL3x6maA-`e @nߏEUː Jy_Z0һPR=v<6[|tj_ ȓSwdW~ūF" _w.ي@](=F8kzAkϪ;SA2KzTFfq-mH3>;V[4x{ _R2*NV߯X|$Xa!!`dI[Qq.DoO+Ꮲ7lނdf$PtL|P fPpG?u*d*U8}9L$A|髡YS%;^flLxVnbFS ##} ;40}yCOx^q!#]g p%lF9^-ꡧW8,w@FR,@/Xϛr!xs"[`BR5QXdذ_rơd3jԚUvFHϼ%-A D2X h[cPs>xa5P5ق[ D#`S@LqFP"Z8c]ױ7Rk& R yyqF\z>BѢXӜȳ Oa['ൣ#DGv=Xv -~U`bc*ŮOF@u tPuA^|g)sa|v|fXod³DžȷH!Y*>ĒEQ>LؐEz@0dZVΕO<úL~Z)tI&2.!E&7"2˦J$WYaU `'PL 2蘉|HXIAb^ *|kww'&N ԯ놖Vs(A:l<ʁ]oz\w$^IAnA4ELk^JjڣtLTu!2PcjJ YMFB}I.Ń's$9y 3 +QF@@{䇦_K?-TǺBWkJu`݄)\)na9DbMPΣ..h2mdss~Eڼ"v< 1w Lkñg0X{Ӯ O4Ǘ9Fwk0˽l@P`Ypbpo+x޸3$s(@1GS9X—)VטlrߘQl^"4ߟWƕBPHP\q~0T{*|uE>9-],鼳\ScuWG],¨v7و́ Ж=*`moxf>?6(G\TXtf[I=j|+s~1ol hu<_5jux2w\[V $B@Dj3NRm.l8V>Uҧ7i"c(Xaby!Lݘ(5>>`@ԡ3`$Clp .μ_CZ?߉1%跷]-]Ix*r_{z^$z!]94' #M=q Qs@]hV*skMyB^ йTq[Cr7푛/$9A:w~釯tߚ"xf%~RoU'qW/߱"q ;Sk85= !g@XH̦nq˾#yc+ \=ڳvY/P$JX ?@폂FK`dVSXɓ"j.\8M K|XeЗ?.CFcJCopdfj %p[l(!_p|%ظ].+ȁ{ұ=4]M=Zrf2+jB/12aD L~PR+Lr4COD.eCEæ*g\AL)$oTnVs$ŕ{ҐmN?4=c32sR/:~zA7/k 1Nlx+O[b5o['m41϶='ת;%1s|Fxw(VW6\xBYOv񕥤`ބx 2D^kB@DS0Yhe:O;mQȓriX!WTYktm[S<9{c`g7 *2]Q}6$IDN?)99Ч[}JICԳE5_W.l8Hnp;AR(һA _=Xm]j|d+N\Uxw'[62X;kg;Ta1%s^'AO-)gJpkp(ϴg -jU4/uaLaBjSsϼ{F䑺4cr e䕈9xL⪺txQ1kQ_?Ȏ\iɁ# /IK{60h,G]"\Yulh>1wlG~6 c#A=)Ȓ7OmSVLO90 MϪ%f]CSV-Q:=?(U6U83$p)ՃTPL,Lf>}/TӗV^'ϚtʲȣO$`mcNbS6g/0,W 5d)+K#2BG b,~:ɋӀD\}{887L)}7L  WB`5o KHಿ Q --Yq'MG3gy}L'^v0T5Lɣ[س.S%x6$c"$[E2׸y5*fHjFzep&kU6mZwc $@Q΍ڬ{( -g&ꍆkh[IN[*M}cwgv`_JmzQSjf>'DrWKHRV~{f5săb iY% Q`bo 3 DI8'Ma"BFpfTP]~aL 6?Zn+ %˙>mOꗾKw k 2C rC fgK1JF_ ,+9VdEؽB*|#g*"uNںlCɮYܞ9~yUSL^%%xa59qK`B3̷nwyZU3%6vrvj'Q 0JU 4{ø#)Ph. Fͼkqt}j@B d3IlOu>U]FOD#|]'id7G0iZǑx吩H @j|">_6ۨn28ĩ {SvS خA4OϽ% o!BĨfvH3j2*[GޏML_Ϥ~TE@޸NN^m I3:ܥOb4,lP }5T]grX%DFþR۔Sr Ah,밒Q*BChf)F^, $n)> AecS_f'ydϗair#[QJ3nOa0Cۤ{X\_VP{>Fs c e?or,ӔM}6Uk 4F>()i,IJ#Hmu2@Džanυ:_:OI6en;B )/i]OsPW;؋`RY:6`&?E_בFx%%L4_t XIJJh3y憨 4 ޯ;WX/ipe䛥voljbou5uj9ށ̯tu$o a:TfwLRz^^eTU ؗ$3!iw%nAΩ~9:ό7AILfشRsџnwV}y=,3耛&*y Ąk@[{!1HmU @e0x. D/Z70Q<Dz⧗@_PkOXD&=`{c bo֞8?bNٻ*ͣmfTz((ek|Hu9dUn6o'.4NqlM=˳alL57hWO#<3mSQρ05 4<ax 76^WA'?.boM)w3ґu$F:bۇE@"@y|2 @#> 9"[OWy 54fcԿ\Fvrہh1ZFIM!̜?sϴU*{`e6[P u)ግU&b셆lHOе*H茌13j\j̿NV,sUe"Gnd?#fMy2 9Y_誏FWZDŽ^/%td$W 5 vRM*ޱEdiSmQR^o# s-jsEQW.q==c,D +TN1XkFM@(:\0έ4df-/NINZ'IĒZ ts#h#B8EAP@v8(/ Ԕch"_ )c& dt[yk`7Os/c{@v3l{us+Rt"5y^D^lCmIr..h+0sysح oҥZ`QKloF&^ nk)h׍ ة I2 0tSˤqOz|YokXϴ ph$'R|0t0E;/12dL } NB&{Je|n>=X}CiytZ(4kZ7/%Jl|׈/0 x&Q5g!q7j*i}"q/tQwuOVgG`&{R,?zl+9$0$@q;2eEHOo^߸"'fs.).ʜ|pDw쑆p<7SXT(z!ZߤF0U6n6_*kږ/>Jl1{Xr!V@>/;Y Z_T%,UﯿIw+(Ivߗ\xmv(j}DYP R]Z3@~\zXB.5E]ToORE!DkRV` "Bƻr CqH =kڭWx,zR(*~(/ߊz!L'&=K 1E) )8gz'ӱl.x_PcqkYO'rFˮ|(i1ssSig/BiP+} ~I_[Quř˂ S0y@iEV}F&Ruʪ^-:O ނ,z lܲv"ty)-h_8!a]2}zv'[:/-wQ‰n${'櫐-7mRJPYEZ5 7V M{rKX f{SɶOߛQP(WCƸcFQ$yk.#׋_ 1^;1.alW67|N:c=6GYEyA\  =g+GGxB \ŋ263JzOƌltaќD2|ʎy|tmEtͅG_ϓxߞ+fO˂fdd$2d@@T]爒 `ܞ\|LWu@;ޒA7/="/~w]f2 G\w'Gmƍ]rF4i BPڈgBKMJdζUbQL놱vϧ>5(~:ѡbSv(5vjDcXurSYձft ~YZH[83ݞ SAWU;u(in"bC{Pjafs2ކ,q^t?vU9Q g~9G]2;R. +EҦB)Wyt造veQB"x)ItcBA)WuaubrzA <Ո5wM J`c@d e?4Aϣ#f@)~D0FoK"cՕiHkh'z4M៻u#p|yh"czN2cMv1*90t+Ap w}Ĩ$wRsKud x&W*zo|?$ќXdG H ļWIb~c,VS/],1Gee$/faYغrD 5^A5%oz91xșV# B_5ڟ<{i@3ӞyJ)1)hJ3t>VfƸM,0??|5^aL0DIj)Kr'nvML}xFӟRl,cf3oE] ^_=-% O̙1V+}l jY!rbEaq )_.goSЀ9^'tr6?s2N9_ ;#O]{']OӺF46qȏ`vJXkEK}sYVc#'G_@s B"pYL)HxB4CF=N0–PV 𚃫k֙}'dúU$En{L%-t ?m7ZUPu{O7_ߘ3!Lm9xsi5TZ$:L>Uo%ҷ̭~m~[z契F)nYfn]/PFy~Ra3q V3Ͷ/ h·XhEVR/@ oܵN=h: x.lrIHw̓Kbqw3WPoVɻ g>1u`EXϞvj 1aAZ $RJDAa@0lӛ|^OTu瑀 ,ESpH'}:ϙnk"`w >&Wm/SoUy7oFo6kAiūcL&D,$|2]bZi <Vk tM͆ÄFsmk7qiF޾ ȅ+XB-RB\Xgnۙ$ INoXOv|(`RjԷ:حbjk+F*$Pjk^yԣʮ]!\(z3]_:zLMNjH%Ę;RߓuUg YMC@:kY5)a|HF?TNH]#I\o^/8u.vɥefڛw`u(i8nK^0!$6X/`GڵUЧ:5NGz)-yVNQ"dP%Y.7 - !pp%Bu& gjD^ ߪ j/Ə8:f%OAZ>IⁱM|^6;## 8ҟ4fn39}vzٳŬ5t\52 -5'=*/*|OxF޷T`ueËLY-OF4 NLf~0bPigL}S)lw8:QIClU(y 6GII(wF*ߪm,:m}I^Eed2 6N5`^w}z}?`^gb^f7Poe\ #I 7c\ Y_IS*,^ IOV 5j'vvTrq io̫2`ޠ5ڝ/ {o܄쾯 K";9+.KCdXB&TwD5޻ >'pX5jp +[n@ǰwAYs^Wy!Nf麰.3VݞS!eoaq>n+nHnQI=hj(Fd*ВdZ=yg;_K5*M V8 19"iIU^KmJ6h旙bu bB(vG$C=i~[HŔdB6 -zUǍ=.dceQTRM$S$T˂YVgПX5T@%80_o&+ pe* x~1/禆cW. 40*A5=R}'Ir h. {w;Gq+"1`+`iluL_Pva}51#Pqt$2響:JCR"a<m9|(庝"#'SL5Y3 -lP(2} Cs0Jv7Ѣ$-<] &V9j,>,T tJ]F&Tn}x\f#-AE;[Qc?R/G ^J9@iwi ]iRXJv`Nw=FmQivp,hX{NךcdvbmvVܼk%\>>W~ P>cŒ+$*b4N X|vᑵ /OaߵxX +X$_/ x ycyue.a}X%seM?/v3Cq^ Pk+KR*HLJR)E)H+ V&¨eHZ$0:d;[vߊl|vK=mCn1֩pN!!n-*(N'?qai2wqD"7  LNf U-^K 5 ii"Y"\MSrQT/Z߂.&5O~KJo(2K{˰o{U[DulbI]2!weQVhņ:Th~4lmwoSNwb]`P*;;f #!aְ|4H4繫z@Z WpzMj "?Us;Bq:Yo3UjD% 5h`J8ӀH$.*hli ?v*#I<Ѱz$8pkY""\HD{A+ۇD]_H<;ܭƚ2N);#ǁVvƣ2Z4Jo-)U6/M Jy=o ^뮦_goO+Q2+ss/Õ2 8d4wPXHRb^ܞ\r6=޿,|!(a["A3m>Verv\ 9NcyR}hֱ&DC _tS;ȄN 'sZNYm_þL>0/Eˎ&}. J2( Q6{ %kꗭ"5b\t6IぅZ<6-!il/2t1^42T:2Wb6zϴ4DZyƬԴhN7v8$ѥL %lÐR~,U##pko9I>ǟo`./o}>:Ta&}*]S ESX_h5vGsoA= E-MBJh*_!%6O$1")܃Ɏ C^Ѕ ږǼaǚ'SO!ю3|'<1XxԗןP$ybuiqj{$9b*fk ~p8 N|?*Shrcd?7>G5" F `f3Z@&#F?8<1-f8䊾'H0" ~G/hBZLV ꮎyJs9 s' ,P9"ڂ7)9vo~,$ HnƣrC~Pٝ<[*MiuLO+.azۗyIYpH?Ns^u%cO&|U&}W*[0d):-y2_[ Z \ݰ&Qu< d^[.UgVxK'sS$cP"ȃ< ezi4ud)!uZuXՇ\?,^z!hr?$,. X[NFK6_gv]DҒeX/~E?Po̓A1zX*,Ȝg5B#:JVӥC c:Z!=~d3%>ciьҫ ,SS-rCyb6*͎ ]a 8t~ @y^F1m0\[lq\D+J9uת؝ѐ&l?ď)t7Ef̧x6kDJaLRc,_|gu|nr SRS"8$שGKNmY /  >0 @6i i.Zl2ׁ ; ^er+쫼M~yX;Pq?F^lAgO9NÀ6<΋J> YyPLIZ&LjOg,:ɂFd&cKOt=Mфi=l3%V9&Gz p"ϪpPC&ʗX3 Zoa{&~Wɤm^Rlu "tP{<rV-#`"WFo~Yag@Q8U;!fEۗU5& =Q yjLzO@FFob:}@ǐg+H_GA8 3ERA-5MO>x\•j-2mZ3騷:8s73uj -Ef+ɟ+wJK/ҩHp81 졗YXtĄW ~=J؁q! Q>F*w-S:>hf>H%M Һt~BNӹ'Ɇۊ_19##XH0!O3_dXR\+UrsXLɘyBuo u쳯9$9E&ˎ^ Ep (}<9۠C7Se{GL^P ]k[6Ih2)PjK剴Uά 44|.z6#D*&Bc^_į~wq "5`tJs K|tpU~ ydS?%̽{LU$2nNC0uP|bhڞTg[țǙ fG"'670=,ޖQgsbє3I9ʒ1#Grj.]ǹ0<;?I-\IZͰ^LLj9YX~Y9\"WC=U="-nL.(:Q`tp ~JS,,N$"|o:i3xO|XLz|yOf!yZ?,Owq֛z)'XYwqIyȐ[g^veDZwOy|44Ϫ[IR׶gC庩 .hLXubʒ.2vlc7 it2ë>F/ךl+-#H(qw 2y!y"$/>3!U|K{9}tG p[3$3CZ^:,4.HS (er"i1|\`:%W3fu,1=iÓVl:kXJ`8IsXJj 1jKk~ug2RWպVgftB;#kYSh2 6=vhbrXJ6?-~{M7詋| 5`m]. fMȡZ5+tAlKDp#T/2eOa_G'œI \ Hz'sIA*zLNA88Wo.]Wct4">ޜ5)AF֦^AHQg&sU.ey[HDX˷KlDW&H2Wk'乤[i̱Y/aS< a~hZfٮ.K[YDA[.8M#Gx)zɃm٬m1 f^S)[C'E{&=(=W;WMmN8_v+90[c>%9(;fvjޡۋļFp?0ۛGvS+_T|۳6ysW9"@lӰe")̀C~N]<wThķm>i+. >)5?8V[섡OiԎ `3 +ѽh_f.JS:{]$@f/J@^ῠ,;C^J}r"tZ%Z¦~ưxJct̪wۺ[|pR?TMfzE3Q>A;U<[g}g&Ti,`tIW'bn}pUi8R5cYi3ڗS+)VU8ù=XXG|Io\^^DQHS6:gW2_52M-ej`١䤈)y φKBq|4_ݼSgnd بg8t%ֳWDW1ק9qK-s o=SZGc.gvy)kDq8*/=i_;gnG͝5wRZ&[¾~ 0z]\Ծ13PnJ8 # OjP[MAX?kՆe>`wGf)?=/67 -3YAՄ]?^?_戠RfW$y̶0}%dUвՀ,]Ucsk4vSȕ@o19k~ ! j*1ҜE!gy&m`ge32S`p!%qÏWs~Un`LFFF`t4TQ,h.%I 4ȳӛK3ػ-dIcFMٍ9֣7"VCfM#!(Xf-ӗ8 7g'#cPZ,{*).C50/]n䉺{Ho [qׄZ+!4逡DR]2#}v!R (*qBA6We7[a :111BU`VK2 C@[4GaX~LOFuE!&#r YdHAVviS":Fxؑ@ 7[t,+?E60 ɄE"^.7G`*nlbYZW j'A, E}Rb#a5%Z]6NBww Py98Ql=ۗmqQK{-WҀEBJ/<>H1k恲G=/oR_ʔ|"ɐi>cIOs 7۫Ӿ.+¨(xLAD+8L)nt>5*;h}Tt¥Q>Y) )e'mfy'WU9 lewm47Ec/x!m5*\bD&FJEⲱ&޲}q 10kTk7=[&cD("\Lӡa> ٹ_/0uܹ| >ɰ >ru} gGƊj:Ŝ*3QJ>\-"mf':pIR%;P7 䜺'oNm S<'A}sT ֜a꟰e#bc|KɭU0o1#~u-]@Bo-%8 ?wiLjLŀrX)$GBQj{=R,%j}io .AX`WO>a0̣ 6D2}j#Zݠ@`>a+ΗXyi[}Iϑ gfU, #yk񠣇bΏ$e]RdΫ1Koi%"\+wW8r" UCj@g gY@Ԛbb{.4{$^?nFį Ln\.=꽰4G?Era뼋r;zgLbAwT؞^aۮ.=zHk9N)U=˳/V_2b%D65JNU._i*8S }5 ̄X tySo8wэQhC댒(sOvavpX#tO@l Ige12W0EkɆ(BG {KBϽ j6|(5,<*owyEK몳Ŋ|b;\ 즖ٵS"ZXQaA5j!YUɀ?(wF:tADE)r]ˎ*w<سPYڿBMXEmIm\WŸF]29(z '`MrMؗo/.:H%KkCl/+5&Rtns {sǒĀ?TV̌k쑡iPQB&ק)MY;j*AB:".A,|7rm` Z3O26-?9{@P)7@4iTVH+\ {6gZC n,XV˭ C/i#}U^\è#EN(w5ݽ>RW-H;׮!]ù2~O_(#í  3æ4j|H6Js仲_l-a2 V7ƚPW 3pCѓ) j)B{hd_xċ%,RzIr^nx}z|hѨi(܋Wݞ"l>|Tu}Lo}a eE2yNl-Wu.kBm<,|PEc5<~ܽ2"S~ʩR 8zsI&ek,~h-ϕnq\flv.>_UciMPX*N AT -Z|V-)^ *ص%5ojx`T :20U dKpV /Zp:IV2$i@GD{&jdcUE:"T#R|-/*u5/6_i?o&"C7sY)(Vp\<ȃE\hɞ/ ʹxpKk+.t}!r>k;*1A{l'8Vܭ|^Jo]--E1mp\xۉ:,$sśV:1kd"I6|%XMԋd_p;h8[[ Ր@nM!JykooztϑoKe4InPƇ>ƖE:B:zM礂2Q~8"wo(IŘȃ.[1p!qn0PS9̻O>d4Tx=*0f]^y4d/ ذ5+bjW*5e;vΫH]l(k&DKCh<ǩe:ͽ & >>5&1\D@^*U1ErD-3[۽ȻC22a*mC=f_wI_wǩ>RVPgzan/J]"^9#.Yc].ȚN|^ !Cz^;Nwg ֲ4]~^!N/|6$d+½?WW\Eƛ0ӆۿ3Sqq !QB]:9^k.-4t%pTR[;k 9-;:>4@}{V32;ShF93rJ>@3TA֩hw->.wj[ z??m[Bn*lݛ,@Imp]jY ɉo٬_YIZ]k%U$C/Y0~!AU>=<.dP/\ j-[ 9WN,U"CSr-Nx}VBUWGBޑ &/Μ%:s!"EIK#A SNMt۹f *{%) o+x^R㣗ưE4#|U0`4K18oh>dZ=nMW):GsJ:Ā+qً к=?}SGr˖Oc"B&aZS~/t޴&ƃhcйZoI[[O)/QHš\J !sQ\_HMtFF>o-;#KϤG7! %SIUNa60CI( S%c_1ի0[jlPxF`I㭤šj1li*-Ioߓ'ʡȹwkm2Sb5Oy"6̥ ))7_ak4P@w ̽@q+bA4ě݈]e"UXX:+i!w' L \m6@dsM< (/M22q(*~|_UF2(nKS$%@KZt:D6{'u`kF8@{փ8Aޗ>[#ݛ޵F:jqQ{)t8P͙Xj!GFF>`a~RA9LGwƕow*)c~8r{ߺpi<4TXHK3da5Qif1u{ieIewp%.p. XY5ÍڷxWO]r 1: 7J,{-]l{QXp՗giG4XivX Wǐ:A3=tn(+'bu۔+\"a䨎R+奟2P04ϵѕcZafyipNF0~|% It,_$1&hN1koճLiD戽 uFcgw Si4>[7>EVxїg?OD:@a[0s4hLº%NhD뺒Btj 9:7ۛKA,5|m悡cm| +k @j~8ϸ.jn`<#v(eyuM -BfQUO^4էa~ؾ "yԹ~jxc%$IY}%9buhknP4 XcN[㑠7O+e~h8؀4zyXY25dG ]_AyWz {1+L2#?^ 9lEpf Y%S 00y菖GJc|!h!;E0ƅ hк>*VP@SoӍ@yyx0 %&̀r dDkaﲡtO}%_rѹJa`ΫQYv+vEڻaz86bj #9ǡ{L`;9*Vu?FrtB w|)NB!(xo_Fr8׷C=Z*V6O$p-6;5_,X$J==BhZ'uy 8K0x~'TcL+9,t6 sKvˑ;i'4vhTӛwk)БUK4 .?)hg;s*Xi~ۜvJ>&e*J,g^abՏ}]H\ǒp@X1p@X T1y'i3dy m9[bmtWΎOEQv^y7\@muz>6@Jxa_-a/0`OL4 0E߽ۭ#q@\Ugd@Ta6'A @ !I3x)=->Bv4IDAgևz$0ߕ9+%&aE{S׋Nv:;uz+r<爅16=QBN =t͏*I[]f!zu}9)՛3.Jq&"XPG3_8 2<ڴ[&oU 7EG^u䨝N~ -s(yuxiaٻYUm^cH'F/<&3Ub:Лo9(TB$>$.ƠhYZj)1/brhCg99݃_ XS@\nᏭbNqd=qU9]E{ h@1! BT`f~U{Uv ռj)c3yC1`9;Bҙ4Y#WLi9;<5`赿ՈFE;{ͣ}adP=A͐lJ{w Xb>3bw%tDQb"Oҹl"”j #Gf 'U6&jL_o^ߏ:H{"E֍.5߂o<JLNњeu"ED7Fg+f28OwMx_PC[]f=(6zFB\^Ekb.f5B"7!^p?Yىs*$ X-mZu[Y_*ޜ7#| 4u!QD0=ߏY)yN<( 1?uD$:B#+wCg=Ӥ2Qidhr[tN 2+~ũa0e|d]3D),/\H((;@5$+,(Uu&HlWTN4-dR_~W(͜Ѽoa;uH3h g|Tw@hEi`ҧC󮵠a.rc RVY-iǾ;&]J2y`H+Q~>VdVϱ[)bGhZy.xcz>feZf*6Y= +KB!Y)r/] YoeۓLe(8LO2Q+5cʬ@"pD.??u}%D!GM"H pqԺ{xHs#u,LoY% " %kb ֬䆩zݚ$b8phUFlфOAݱB!ot(8s)[ "uA$z5=~U?Z/Ф@2՞eĂ~siGl)tĒ D֦kҜZ x755!oŤz[ fX}~̒}XA-Djp2i1irM$f#ptNhӪgxu"Iў?MF*z@^`FW_5Qhy 307!ϤHˏy.(?Y7Kq,:\B}W47i(V|thc  'q)I샎AxdǐPmOx[gSϷyAV,z-YQV^iXjom/O,@MO7q<e6.R$ZC} 3c@uOu Y8 [ .Y=O"u_yXysE!QM޻]lf2T%[L^<0]oz O7< 0Ū{ xr|Ä#JS<%NiiJvK NH6 Cve)4%֞8SF=?c21ֆ&Ih_{ gZ̩6ɷBt$?{d4c;jNR?ROQ =σǚ'rSJ:l$0UV=ECki`̘Nߡ3]H{IWlc=$O0J|@d[Y&q#ʔab?e,Tq8ۚIJxKV(ĉ6[qtD ̇!ݷ`g4y)$(PExANz hHo+) Ŀ8 T8!Ma]- ү0{nhXs5ח$ z@\B>Pgmm͞FÉOT %ИKgNʾBۿ},}n{*"`<hr| ?U,ͣ:S# \c)19rpjBM&Y B:D 򮻻?"OnJ˫=fvd(!\K i}{4};jz0e$=3/'@np1d@!x,)/u,N%hZRH,fƧjG܁ V.L!Sr?Te_@Gu#ح< az1-%O?*ˆ"h- `4hŰB_T 4ecX0qfF/\$v;[̄7 7zg ro,7}4f+4ioXU|;L۪ ;)mjdcDW{djp834VCB-JZe^ds3oU De[G0_A̰B*l*R΍Fu6$h9,k9&00I*L(^$As˗FPi[|"UnC*˺ G/r$?faڈcwfeR}ʇ*dQ g/1 &dp02<=l-=ͻ@dԁ܋yYMkJ? 4}/e:lNnVVQt4xCy\bh:p}+/B]+?u EKP 1a6Ƣ:O;IF8HwbԙREacCVw^adP+ nS^T,U]2'Mz r[md-$E |Zݡ/۶S6<,EHCeMdϝh bsmvܤVέ# ֮cPY~3 VD#:4S':JEe <#1L,dsK^fBC1]*c}+Xr9jSp3DeEGfA0\?=\  J^$N/žz1TG8胟 ܼIM.zqӈ1M,gԐGwC9i[Ji2ј1L'ߘg:bGgYBsGEݑ&ݵsXˎQ1.ΘϦD&Ut{l .'W󶬸3h&Vv)} Ʈ΂m1#qNd]|LJV۾ nB_lGiʫfY8+fB.7s|6Ě2riď誙NHGHi/ =hH5k2iN-Ë j䈇"/DsvVɨYsoۆǬ :ȭP5dN0aDpܿ%)Ft5`%Y0^ASMV>i#$Dpg$u M]t t?bK?bfQڦU3aHS[O Fe ]SOA.$K%լrNNf1k0nSE/Hm (OЎ b)> ur=ɔ YX0~ sXVL0OU۞.@K?5_Lx4˯w/a~4W<"a[HQsX7S?rvjiYN6toX,l% q`Oj'[n{)} g!#GaPXX C ~-39d)OfIјז=< <D/jM!Y ۫Ps9?RF7c8̉Oth^ Oя(˅sG=ccaOe ]n}\&5TG _GPBu5\^Gkt 0L]x+Sq =~ҩZYP:~[?&"h :soWB'柎|bpb2gqGb3PSEF ]DsꟊqP#~D;q.X#R| 7HH p6>~V o$ h׈v,g<;BKh1^<+Lx?9 įq1`ۘ6pBU: t/[f8'9GxA,OhNslC HȒJ_71gn~J;PnEʶn h*,]i޴_lFIGP&KXŇTM<դ\:-]2>R]'fyD4h U+Rl6: p 6OyuaO!;UH̢K1\Lj1 ,->u+j4bB*Bvo{M+󟗦+ᎏ3+ ukc>rt }KHB F#PE<ƈm[umA=O'hS[[q*#B$s+)qWU _zᤰ,^TޫzU+"hBS$DS!_kd2;H-|R<;.Ivt學*|P[k\ϲ$ h  =q7p*z_:bBY ^4c["Yv6kOѺ 1+gs+XCB D`}]#c?B(j%',7r^'6DC0X@09j[|u;@/'a/D@>|7\ zA<0i+oondk[/zmzwNT҃0,  ӧ"|;7jM"9f%Fò(ٻ`RX prp"ź cY(mb$f4Q{r9-=w9ۆ p{vP"GW A2Ai[xi\6kYlG$rg"wgЏ'?NL- :_qTW&cqny{qaҫ(lDj<6e"bd}mS~#vg듙w1D؏syiv߇ yiA$ϩ@D,?O1DA1P xKY~,ʋ.K8V=+76#D6g0U1Y):/$H1,󗻃:FJc`=.#Quplכ}Ar8ւ}ϧ 4J⨾ΰSe(.T7YUVDlIh MTzˀ 5ċ> GYJC .8]Wfd2凙ⴻ%)FH%OLക { yRBwXt/ dN:C54h+(Ӵ몾~ DuF8:3ڴtFl=wB6>6flu^g*@;goV! iTp~:q*/h-ֱ\a6Bd.i'eCΆZO\ڄF [p[c|l|YZ*c>LNټ$yo=F 4mȤE5-uHAĄzqjy@QXa">Mg|u^/I].+3T&h%"cIS[b,߇́r6FUKמ BIY wEQ'\w[OI`g^nD*&!o$*޲_k7 HEyǺ)}^4mIgEW[v3kyF\i:R?]dVO]U@:{2It~o罹799@bPF}%Z? ^(JБ*kaf̦Drb_`>C5ͩ|WdH6->Cw ؍iTVh Zt pZԴ8?zt]q XiS7K!*3T~N#Iuin~M)K<{KMS;)'?lbƱ4^-9Л|sZTXۀYq8=ىVQ={'N"huB#j8؟ >B 2bU>]ܻxЅhjdnDV>q~AO5PH8;Б 50XM&It\Mta1glR64P>;K@Ma ,/VB?Z#,OfY`pӏg'65<[B?IOszn> H _W\`8чOG6Zd z8P&;z6&i n)q#x*Y&MlY\x )o C/%W=v"""K?\+\KF 2rk1C m *[k߂G=RIT Ͷ)8?9яh{Ѱ~rt /Na-Qq3Z$hxI(l/F '( k1p@=~qlq0a';P]P%#e_;s-e^> XxaӊH6JvjYQan|bdW13B^=.(i#v+ JQ_RVq`P(}⺜i^LM)ogg 3ԠLL^*P8UI'%|ڼJnB;4׀'bֹ@Ͼ*IpF :ᚖ2aeFEVKkی ٬Qcӫ _YlA.76;Zhnn띸b؃B#ECK`׻a ¹ P-/Td􀃠0bV(f.of#ib[1{z*r*+8v86i0t͂zp_6?XO`x1tu(e*|,$>uH?UϲM\2UW VEp@r)n=Y,W6b|wOD[$3vKlj%f+R$|U8NޝnG/^Js@)1'G[Wt0m(pjrzÂ)UFxRt5q] Z{\̀,Ky/[]w]2xB07c}CKMcZfFө hsbG)'?n\kGfpC S5+` 7.Z!bRr_ґr@kD [)<(gO 'LzET05~%D:6pw/ F|{pKLRj Ъ =x/'h y2]BaCp0KM{*QVO*' f; T\Uw&K܃1}<%VUzfaMmVAaTU ֵ_JC&'6f*[Iw +*@D t  Nhmu!~vK(%O#U]"ѯjw?w]uMS=H%`; ͵@yN(uy.6M8~Bn"+iĕP-B&`ZC#!h:iEҮufsԸ + ƽbQi'0]B:޺~jfGȼ*rLP}fyNWnnvĵCm)Θ{7?i~W$S}7*}*xtYJL'ESw,(q~Fï^&²ݤpCmrV)p$_1E,c>TiٙאnYbe1y$-wwI"u.ev5}vXT[L0G8yNj;)"`HLRݎwE^*<)7χAOg;mMFV۶< Fr-A X]bdD &[(,<4pWɑ+AfDyf$Gc.T^o$љT  w q>S`ːާOcNhe5 [ֿ⩎J>ۣ M? :S#v=jq=6I|d)i0P TNWq9_u$Y"6Qq`jm f8 ~poޘο!).XcdE'V3|>imRPd*DiWh z-M,"2i=v2 VKE 3ѪTI_ҙ#]'kQ Q (C;@\c}SBe~oVyYoȸn`?l9f,+<  m{pb!0/Du9;qRjs@h]Nu!WA|sɰgB+0R2;+7g/\81H6($׷ ZNN(}?t}ֽ>}y}6""b!mB%3v OIuxPfV2ʒ\}ehE#G$P/*FDwVo<W 5$yh "zQ|MSZF*< څ F)c{50=dĉ*`ŀe2lvc\:Wމ|iN:dM>DYD`þXS-:Y ()yG:4n.`xD FԪf݀dfV۝Y1x7 RĈz*'@TZ ۨd2.G>$:jC}dM(UŴCBlz*=}^3LUIiRz8G"-84pLM{ gS=(KqU~7,aQ ۥ/:v!m3n^m`5,yDSe,h|؜Dž΀;UP-OM n; ЅAż ; MkÉ$TXu,6 4(ֵ}όAYY}ҎBq"Q<ſ=lj9^E nnZW I&pxS<ZV/&]=l 5tV-C2dLEڢx*hi@N)`ma 6atZ9Y(0pfӳΧ=Qm [u>D07葭1OFubE~KF7>l„$ φg9b!"^5کE\BDE?`B#ץӣCI{.ٽ$LzD<;:HgscgĄ䬧0>@m>'v~۾ɭud:az&5=a@ !UA䕅wE6k{ټn9!G(G(-]]I(˨9Ef*q6iu0xl>Yz>XPԔ&Q%Yga2Q %] timmy@odLpBPxzu9Ξ[JlԸ,}` " kJYv3AٲiJ3#"w ;L 34S DkqO:E],mʜ+4z:0f q5Ět't}lh[瞹P5z'lЯCc‰TY'(PbRN3NȮ@'Md}.~v Ag,\XJbʹzc! *s9,@x~K?U,w8PGQ;2Xm}0,F~=A\EdAqaDcJOhB^\{+zu@Te)k}v8[_Zs /ۮ) Mi$\=F8&^P>iʻ‡U) YLQ3'j'bjdv|@Ut 4GxRA:UiuY{>#ieaM SEAuonݭxAK#n6o.ת>^g;̣;e^N/y&/\D-rmM8{Nj.$ ΗG_GYxO8:\ k=d3Q$<2щݎ43-U.eѲ,/aMFȧH"8r>1f{D8?cĹ;[>n@꧶sHAgŤslO?.{ftk;I< rX{jy*)9:Ǡ`M~ uכZ[sF=[?a+p>8]Z̢*jXrB񿝗cFbhCVh*== @(l-|[1mL9 ÇS`)cm+pA> -RSpLK>G `dA\b^3\&-r<{;7w KZVto!_ P!^DIri-qowBSEé0X;Vbx;zU#0a+ 6uFсLÔsՖлx]ʓ_Y=@TC[35y?^0,~ MDɤ j_q\&r@ k|imN~r"jCc04jX@ۻR>t!K!YV7*H-qsq 9bv<.9@UZ@>6$~?F(Sje}'DՇkD&V ,1{ CA \G\37w%qK % _M6m2_nTG kO^rg]y9?N&ZKM)NC8~= }~w,d| cr׶;EHyy&+Q? c4\'LB,I RRn5W(.+B;xJy0jbgkOJ9!pŗ۪3E@raT un*$bcЙC$5urh2"2u+iw?+~<ݟ !\|rx(q@;= '% _fK;)'>yx ^t*02`O^7yN!P΄"eca 7PF(ہ4-h50F(eOWХHI8o;|f2mȿ`#Qe8UϥtϾ K1䮽ӻ5z VMm<&[Ojѯ7$)ՠϟL Oq}xTVJOPT-NVNр'Xwxܱ׻=w0 #F.0v2 \ql Kf v Sj5% fdJ}p&z 7]/9 7N7c5=ĘV|eU VY+$T2fLBJkhZ8ʀ L̡/KEk_*Ј bi3CX4'ch..YJDMH*tliڴޖX6Dj&-d{J?#G?q|;PKڽ$?y2 o M Yh|ruZŲ SɲJFfxxS!^JN7L= re~=R>8]WEd)ɩVngQ*:գt[F8̱ظ٫5^/vycTsO>:1FyyV|0ϧJR[LrR2!]^5[~jо ݾ}9/F ?ŰaµNX{E@5PeR9Z%&u E:o%Aa YW2DA" %lCA]_ ŏ!ljA?9q\2.Sv%8)- hwN#,3P{;a#ODku1Bo |LIce;닕؄?Kf#Yygbi-yQ051'  qd"hHZ1 $1)?Ό:Ɲ@x iV%*ܺa9Ku4:kzDBȘ%0)wc gs[T O,GIT=mhK7YӝaTb9s>z7x@Yw[4 @=gVdab#:윍J @RbOKćCZSL+e/lzNg'^fWeKjRDs9<+L"ߖ1ԜO~ =e;d05яW'%I 7LduX9٧"+?:pU@qy& s M4bgSXu̵JmdL8=dTؑ3`R(%`~Ou{Q%熛vE7_v"ȼ q?133-7"L2o $#-3@]E)Ps _"=;Ĥ'Lܩ7F=kp9 c႖._N*>&$Rx6f'ݙJk,֬͜7ʊ{V B܉9{u2*dUHO3ueh-LCCBr*8/wK01ב'+V ܗ*IڞT!(Χߙb7€̠X1U&+X [y_YqdQ~='qu)BZ$re-C7 Xud: |:žxR9e3tn/~Kt qʹ/xRqd)>g<'|y+sm0nbv=S`vPǙ[!n7wQ,;|3Gʨ4mY.1'Q B!LRQ:(s[>Us\~5m}ݝR]=Ե~[P;4"̀ͺgE,RfRkW/[N:0 G >#?|QXc O[:iW!~8UG5ܰ#!k# ӞCK>h)W.prt'::Q`-!7]> ?k3+V'IO9jh \P2.81ך8y֛UJD_6Z`us@/Ύ˷S"\W4xP^"Vo=԰dE?ab#&(f0<Q~~ť3O6B_`3οg#JvN7~PNbd{W|9&VJ^Lǣ\<nܕPyHdi!W(JH혤(z+sed ųow^M2 M>5G7hݜ]pS+b6A](]a¡ ХT d(~b>mY5{{-!/l75 ddlK`i*^";w(V(3l-vo-^8w0:o<*_g=BC, [4:yM% ok- ctBxgȀQ%)|סccxh3˨;_DҮ)dag=z(BzWbN/u+wGkF:IU'5pۊD,=qڹB~Qx-r5z9HF?ߌXи7k˟WWra~rꢎ!17>K#g%W[(,] Xm6 |DZ&SQ"+?|GPa͑g<}1>dr5٤FN6ī({?ONpIҤNM%¢ڝ39J7LgZfI`z 9`"m׶P:)$2~$& qs.4 \uo-c%ᘯ* 8r!} y\jqsUI0@)e{ےqWwyc6f10P`߸?qb. ,q܊!H[M|íh4/,5;'6F` kWRZJjE&hd6[5CH qU?7xb y!xTLU:Ǟ&&)bl  ;Dz #3I$gCVo'DY.0r1ƅp\9I (<=%e}uĪg|Xp2joXBPB|т͇W2x H|\a$*h1zL8 }׺XpD5'IYQJVRTftIsVUzLpw0=$OasSV Zjό#jfk~¨^mv Gv0#9 ͽrJhyhkԱ! z%VЅg$Rm@d[.<§aǢ^ ל6i mx beWgbx@k߰Vî岲=*OƖzB+)T,YU;SM',wBg]fܠ"y@&:WUZHDMJM!7߄b`U$۸Tu ]L |VC]&x+&Z%/ z KTR]0#99o78 eT;AECy#"%Ӟ$7l%emb.&9Kn11HU5Bi;U |H,t夿ybY6CG:W'{` nNn$#2čX0AUf.%=`&tژ?:7!+Xv Pn=fF9Zrl:5Ӗ+zܾ/߬.EW B[0͊ySRL16rHр{D齉zp7TMR%Z]STV*E%s&A} GS9rz5!D[|lܩzkY!ǷwĕlX݄ƞIgc_E~s"˓4$)c'z,`#C#U6Z?<ϝ*\j]ř51/giR Y_J;MCO$n:("BS(uD[E:,IѦ09boo_CO9eR5 W`9u^Ņ WO98Q|po@γ}g|1@gaQM,RS0)#` [tAY"{5[1EƲМ(f#!ۜ>a0NQ$wr4wv*컅N,5"c=.x6BxҿvpY6ṵT䷉[99C%D6D`)y-ege(WUiSdq"/hh|ڱ\}r1 p{À4 m،H6rჄVod5.S$[eTU4) Xŷ]Z@!T?rtRǬ|/6fwyOB3J FqY6_c97ʰ,6z_#s1cpCSsгpYRc$_DꆙPYZRz4LDGOKRQ P cW臽JX- t ~?K0s/@ WdO qiDG>FMΛ{IWx*JMA傋Pi\pc&=tK.Lvdx3+ioaO|caإqMJaa#k#O=b!+|KጪHTD{NL};(43.,,$=0{ vQ+^iW}ʸ4yՉ% U!2EZ${\#n垲N|luzs!Ɩ'ԝ.~ 5px nsLx:{e4ph :C)8M40^߱tj-qf2>^h`%q2UڣLLi'JA$z^ 4 .=]']cOtbh`GTǾt+7 &2\'f@Z i=ڜZ '$Ě UW3&Z(8^7vӍAؤ1לj"ru^/|xumF41Ksqӟȡ>~`S!)GLEY9AMD"{l8y@յnPDUyQŔ.)v\-#ǥ$SI^Mb{l貄6rܽ ג0?%-䏁@)a| r,DFB!f ^hҳ3* e٪PZVҘ?<8BSw uhG%}"pҖMʍW)X5?')rT"rjG2ڌ Uu;}نq? Ӥ@ 7slM5NTL#5 Ydjx)Rk Σ {Aa_HE[(_MIOE4(C_{K+YK2]2;(DփcvpʸO,ּ\ "8,@XnCxac}sOZl1su!궽 }v)>"wέf4m!m9Df\zEk +@Z +(>7 2/~y)QZWܯ'❃۪7ȳ;r) 6;Db2WUZU/Iu{v29EEE?0rmH^{w'{Q6,ÿC|Iq|g /-3$)AgX'+D{{1.uyU`X^t"S fHv*vb;a.NUw  ){(:^ZZ?fM i`Eo@ooonuO>Cn KA<ѶI̬DSuvL OHf |$eVLN W,5nZ݂LނFSc։Fyc؞zr;02{-Zt%z 8aSyy4ϭAgخJ-i]E+ aC8C\C:pFY+w0q sC*3;)SDcPwgԌ90.rPQ rkƋ/t&L̓?ҕoK;k|XP)?#Oѿ@+ uP.9o ׼@l 7/". 69^+{Ce2i5:]UpE8k_-Pߝ{>,R`TarvPu pR$ eyћ .Ȼs#MGE/˨,ƿ6FVuXn.9GYA@uߙ=+:f0- >v-RxDjɥ&95c9o>hp=:e[tLEAkCI#y)p+;bk\\moc$צYǶrDqԪBvb-BV-paq~ R5Y%eǑDaGPg5)Dt@ahPQ.!gw4 &N/S'͜.See lQlG%ޡ2OҿKls!#`pl̆"Lǫ'b+,)M)Z* [ʤ & Lh5;uJ_-m/yZ”9>#h'ڋj*X%R~~8a/58 In!$L.-ի%fOM9 +Mo`)]= Hix%:^TԳ.+-4xT<>8G1V%3f4zi ?lc"ZIC3@&Q `qTȏ-toL܏`-gR gbEKy)I%W'&zx0YH^"7kϒ[8u)YOP$Z],4=ю"1Z ^P2Ռ=MEٰxӶB;tPTKQ룯FҭM2$ faJD ;p C|}]c4u=+Af2j hAhD`eTo  =Rň\*0} > M{-UiRsmO^BKN)D0D|B+@ <.(XRlOp:bL/'$砌KQH/+Ԍ vbZB-R)\ >dSuQFTC abV D Ou$RREC4M."){s·D;B)(Ǻ~4: c@/lmb<;}:õtXzUT\5If÷(w:!};R?q~qBqwCiKYGǝP~z~z7a.)y1r/`NIr@с.CC}!-%amDxH> % Hg1uNK;R~R_рyAE%eӠ>GꝌ#y/ps\ fz+`\H#TȔ׽Gse Uʍ hd ^x_d 9\|NI|[ ³ٱ+'nB{Z(DA 5.< %-ZÓC&N_#/>pD! 5 wXl.l@Y<m5mGvFn׃{RQlmf>AĦh.QJ`X= -ѡ#}bf*2Tx?u=ob0hd>{thdgrYV@;ՋWW)FŖ&he^{P1Ig沷 F/ā+aJ&+4K7^<#/Q"?5QfyfUXXyAAWPmz*Z}9ae {8,*l\ZLl_ů9G01!;τ`B{+=z)Š4UZ!xu8+jg/va*miTLI.qe l68:[.Ȋ"5ȁn%[Mf!QD)Nϲ&d45f(<뱥`ڶ$wS(F O z_@fKaҌTbɬys)0+Uh` &g(~ h;/̵X\D)(YQj ⠭`2΀~Ohd 97JӺ |hmݳAXO=k'qmz;7{LuY҂;WlPDC#̒I!fIS(kEx-6ۉʯi븿)PcOIY->'u4:שcJɀT:;u;ul[Ֆkad۷ȣɰ'̇z^,v>ognBݕr{d -RqBKCa.)?Hƈh,JM|M"s-O4aA)"=;Ӫ^~ƯlV]нː4[FG=Wk[˿‚If<4 Y=ML_;J2!c}&G%\jZGJԪ々*az 㽴e1Q)k}v:K̵0wTW_8|GWlȋڕdαSWtIa ZqbSEA ܒ%0*d<D4fl3{($7WJh\ ~MG9z>ѫ>d[TDGYq8! iE>7SR>ٯ|G@ښ=gŢmNJq9YW׉f/6 [&-FωkH@9^ &T[r*r;zhߝ(sFEOS?/a֯VւG.REiJtN|wgqX6S*A,ϥBj¹{@ݠjˬ:3Qશ"()J0d! +ZT!Ls HRr1:wmFkCkjRvs'@֌6dhGjQ(7CIwU̒KjXbFD&>;?/{bz~!&GIFDhOlxqy[q|u<9nlS/1jG,fꕩu޿਩Kj9|;hifQj%K'] C %#XusEhnOTU9ze+۫a_m @:Hd4S3v}k]A0~0!V%3ż ؑ&SPg[+pS)i2x疐pe*Ul6@m uv'rˤ^nS-P;>OCYO^ g&xzB }C&]LqqI{Iu( 5|3'pb* ƞP?><~zmVdjK **ȿ.kX+&c:OFDKeytUfǎ^ɛaj3!S鱮|cqcnw7y*PO)QϥUKU0h/rIdo'?c"BH 2ym5ghSߠY; 5. 6RjBDbʭ_nD(]:$NfSliEC)m F!+ji,Ȁ^mȭ*0z6[o468xH~,sZ,T@K`e7I,BTs[g}e~ 8l n08Q^*?= ^37`ⰵ(z6 2(D(MW}Rb]|{GjKzL=gh^b Ϛn&i(6)%q$i4<n}xPt w@5/^:HfC)Q0D;~02r-3<(ɵ8|EI1i`Zj V-8򿼊m{!~FvQ\uF0bD ;fҁu$g)byn@Bu핲8_yF1_X[i = :iF7H qg.A5!jmɷ4]"C:)tP)PV V)G{V._@뷏n%973¦/Uy#'XיQCi_Tx%_,Y=ؼ}8XWwcCgFύ"5Đ|W)  ̑EyDh[a -Lf'ҤL|-dj$yfQ4ɴ yC{!ovǦ pwSPn6XN2#;G3lzA9nql=K[˰L^t`%rVpXM_qbܜѺ $;ͽZ 6MjC};P3tj;+9F+gػoN < [Jils(Xcp~&AY-ޠv_pf3g];N|:td>۪0/?"=/7f/T37JyD‹ R*!ff3Mu|&d TZjoAZcC3?3srV$A|9%"ڇ˃rٹcOiխ)%,چluU9"_71R~ ImX1xmin>}TeLB2*(]9&\e(bŭs.$]%U ~}ΤBؗXIĝ  C?sZDS ܼP}IL>I CCv~7 +TPQ*ȚDU^9!sAyfN'3O CK<8dԀg8d$C[djB`r9I Xj{Yfq.r ]jQVyٜ)38WN C,( B%>,b";OP6ccKV? _d}3$%V&e\F+:_txJ/IdC)(=OQaS W ;LMƱ*Jt 'g&S-~yh8ru˴E;(x@K9NE'%h܂͙P~+,v? 2pjxM7*_ȇ,>.rJ[9^K: *MMMOQ/`j2<VL\9tqfM]TH.4s-ሢ_}b ƈ.oIi%Հn"[HB*C<8snIA=CURrQW >0<l2/%걋Vp}ؠӌcMW}0lٻ$ +D(w%^t4N^B,jE8aߓbMln.|]W-_'_8 {]--S]%y/c9P=|N-L} `@20  װ'G Qo:C IH_3Hs$)Nq%N[L*c( 7VN7U{E@Jysj!LWh55+R5iK=b>Ee<̚$[(߿BHbz (ڨɏ▃hh'6VTS9iifmI 74E hktCukr`m$c2}zGs7ҥGO{vƹ'ͶHo3e7@R"k C$%ҩ|-rg{*"}"ߋd Zn[+B+]⠿%`f)B^0yh-K! ^.{+aV c.YMɋu״&+47Xs3E{WB#v,)QVk_ MEqdC t[A?)\4DH֯ð'}Pl٤ٳql?pUw]O.H)GE.=pWlߏy4o9i`Uv -/γh$aMv C {P C O,76 BvʖXl6pOW/NJ&$h`ex;`q*J'tomĮ8/2|XտR`_k^eʅv+Pg,h`>?U̸-ʀ<, *lw4 9]vD*#0}}kyOq~hy%k) 0 .skHiG#CM5}!WqB"k4U`)}xFE;\bY vxU)K?IOr ܤh؀7-.͗Ѭ82܁WFz=!'gGM*{$5G}-AU'M>)r9Jy&P [ oMboe?KUʶP)R]z Ehl&shs'CMuT V|,mQÜ7,R:Sgo?YsE㴕AyY+᳥ѯƧޝ(%a6 r  g* ֝+/#t[cAkdX.K5;ݴ* ?#`J{~`󩾀t˄\8@ˈ;۵FawKcy .hrt7m0\(i26*erc$+ȁ@q0'V,'%(BPm"E%Ujy ;9/ZcA|9ٜJw=fZK4jD=+qzJyCes%QYBP M.1)wm'fLKv3DYa|'cu [o` .>+IUThi˼k@ 2Sgty}D=tp2p@ @7 ! זiTws2Z,W'NRUD'9+IiQsHn,>Ti:_}h"̕輕#{1Po`EZ 5A%*A:(G~m˄dx/3øf'_m ˆf [PZk>ĻѺ3 YExhOm(F-6}2tuձܡܲ@2h#dA).~?]l=rҔao{2[Et}p(ǚŷK]{d {uբeaƕ9N[Ri7Rn)/J^9b 1N>) VajL/Xϣ3?M mzXhͬ!xS^y <*؀ ENڥRecq`oj&vl< %$p.DbLel$ |gXZT.QdjK冃jX/\tKzvacyWY/?g<=~!A-x&:Cp-dWRr 9Ǻ\5Pd4 y&<i[1DwF 'Tg>1i,&>eS8ȹmXpݬvfp[Ɵ1VG6o0 ebZ7BZ H3Kla}hOڿ0ET STeJm(K+'aڞ-S ِ`gm8fN_{は&'ύ U_mZpzg1nH5we^F/`][vh>_N@ smeXbz0/g~_H`/2 \P<eטmLtڕ$,b\<ds[S@t>e"!䤧ml@ Y0B:ta«-wOc, 3q.lU Fb,qy+TXy43I-,/"kTNUD'/ XUQ`J$~>S'-݈R%vÁD:lVdD^D S(J|NyDx)_VeIg"܊sӄ!bksrZe E$ݳkHzaA@xA7` :_]jW]l@DlIa Q'}aAh!z|R}ȶqj1H05!d PDPU}]z{/E0+EdC̘}2-H(Ic ]g/R5XRN1V5Jg&Aۈ?S2*=6%$t?LqV>iJ2 q}Oun%m666K%W5xmb@(}˄'*g۪4-㬋 ++,<_m:qe"k3Bfk-3(4ݙ8cRoC8V=][϶zz)1lK>΋vXqwHSA[ uud+Yv-^WE'ܩY0 +C~W hna`3{lS6m XKC 5)o@xYc el.pDa;X"ifZ?MQގ#uϽ1gH6WKMR1UR>UĹO>V7t+mُ,*.R lRE9 exKP?%\0?F@EX ע.;)މњsc6+y>l}01om#(rv h~D'@R4I1>_"vZ' ɼ#U \x DLͣ07N_cgʣL0ႃ,ض@ƻ*IzqIF=+ǎqÏK^mnH?U ~ߓKxNW܄Su 9o9Xck$J}dD4F) 1_%ӭ[zJTC{s0m~@ʯk[wk &u{Q91 >t/` TeK/Gf1dIst>E+I Y'ˤ/ԁeeyXO?(]N2*Mz {!37$` A62} qݑ̀N.*EYҕϦ´>O=`|%Ha໖wY@ҋ.Z!G@[V}G6.p*]HѪlzիn+9BJF&"ߘnJ2G-c#Ǿi7 9ф1ݔ64WrK:z#ݲ?$##u~kecy''S?v{')\eUFL)ߔRZwcE7 =KKv&ەK7,xyT#X[ϧ[Uk7S{9`F39h[7H Έznig@ +q7 q~˂.ql6e!S[ޠeh]k 'yCH@ުb %00 yyaom5PmmuHڲ r@\BM ~bHZd>+7+ д l]y\+ ҋl?BXi|sNًA^7hƗѡERo'X u<}m挝ѷW;xGchb=![Ҧm7{gcn{JQNsXK{8jN5;!=yn||j~~ޡcB{ 8uRhw dijXc0W%G~Bn Al`,A) Vs/+]{q%~d5GfuǃaOe GӻM> U>t#f^m.dl2B"m3e%'}&tn2 [ÆDj)hb_Pu* G-[l΍nB3@Hr,O_4oT>ư8#IbqyhWay#XLC7 X+C2tAIJNM*o LHgZ6|b˙dyiNs`&my!X^@_4̈́TѓZĸ|+uTy%(yOT_p[ ?qiKs _aNOftUTMJ99Ҟ'ẻ>o˷j.gh;'?ªѫ*94U=@bt3V.VlB5|c=r_kJTU$JHX춠y9ѠoKtiS)MUsVK..^TU%dyi@ {eY[!,ջU]SnWE}UJ dz#P$ sWquJ(HAHhz\ \U£Wt>ηuZIx$,bc;cbⳟtqk l#t:|vsg"P;MC#ܿzwdWdqTcbDWZchkYF>?Fc`E_0Ljhߴ[@i؅5b[{΢N"3x(uQ@QVK#;=g %K|K2pgsPw6[Gvy0/R`1E8.:6[u8jh$n7AYXZXw хRMGn5D%ΕT}_E[I++:ZR80y-vhOUni] UNWևQ1jNejajYӟ0H[`U1ʹt$ $đi~d.iMCk-*K5!w eTi3T]== OkEטXkY ߉㫒'6\Ԇlm->MF.YkwF -- 731`|[*clZ5Ob !Τ=6r<='tDt LW y: iVVO^GЊ̻$>ՓS:h ]{J)E2(8wѓʹBsǖ9" ΁<)|6zՀe4?‘'j` ~LNTVEonqqlٮPccRDXTNWRMp#=6|[.HR!_YWXկJK\nQJ, w qn@M7'4||`8rE>?$?9ߝ]do5mR" Kg.ܴ#\A.pL/QAŽra+_ m-'%+73<-62!5lV@gd~^}b 3:B>-ȇNڬ⠥ 7 |6PZ]3裋[(AWԣE[ V{B @1_*zmƞI5}Whfai(#Zޜc7N{EDH\?T{f,t thzfzƇVW3#`@1p<ρ.ṘiкӕKoӾB~Qh/iyVG!Q6|]0y(ܵRs[jUofQ,|Maqa>;kŒ5{G|i^ҘFJ3ՙyxNk?:ʴ,N4]uK!$ح`ƵA:_3J4J/X}t Y!-'wFI%+߇ ÍC(|J9! J~odSDlE/d/Z`f+Щ^7b.q3/\J1> AK<#$j8_c؋3jwkN|} V@/?cos$͘a|_nQ&F|礚 Z?3sh{ @~UT2 D9?I~ނNol9؀5ŬZS۪ [ח-Y>eŋ M#*H1bJȍ!NqN&)0:؞mT@I*i<%NnjI%QRА;|Wijqʤ$'DYf+6C2g<{ȥ3iOLE SHOw& BZDS|kWWL~8i[Qy;A׽39xmQBJyD/$Iֆ6͇*kyOj@ wy󑶃>|ҋ05@36\*0neI2R~4nEK/+7o.Ƈ=^)hL6s; xgGZþRUli%X&}yvYtdIۖqXӻf`UF|[,VhBAm5M8m纋勒0í#/{EV_y ?DMqvU@Ѫ#i0K7瘼 fϛ6bԱe!6u)/=>2F5KMLDt훢+ItBi@|#_L &vrrYzܟd7d5Q#N}`~.F̜BrKEpM 2 Cx]N.6T 6[-85 iN<͏=2m)mN K>qMÝ Xw(/\XOl {ޗFB k bQ0 ]Pdd3 h}Ծ_U͏Ezi1$HTkg O("y # IB^ +sC0ħo7(iwc݊c꿑tЊk N]6Dxe?\qbJj@{ߌжRs4g} M $`p"KJk|_'=ץQ yTTjnj ؊irl?LUD+!<7N&2r8m5V)ŖfKz ܅}!U A_]?yBhD-bU4u~KҟQwbveOEL)wcZM ?U` Nz8f+n ڣ|g)$a=Q{L#HVԝc>ǁl/8~%y8D beJ\ vEK_<j(hjvv4l@#(}93;aCNď#q&RN~MUL:%+,,'pE`GOQ&hcFR&.";~6R-$ȗ8 gF"*IK ;|l;hd*LMJoe6AgaUcorYRWV廿_aoU!zeQZ/N{^͆Ā5y3ަdC*+58$O@4ĴS"pTliAa@} Vi1 gn-g᝘6; >ݍIRÙ%Ppd F 8'X@Q@@V}_Hz2ZJ 5 s&3o63K@&NZ:nFT %q~Q|aKܱob_V VM*jf}"]TtU=Ȗbq~LfeaLYѻM# ]r;@j6 糩n3t!1s/nҾ3'U-W^`FJT?dIQ\hi03I7CTVr z(dTW>`uuMif0(Vee z?`{.ߏی+LʯO2τ:ب* KD}#;fH%t|֫$k+9yU/p ӓOxXX"㮗"GTO-) XUX"Bʚim~O/L6x4-@d4X,nZ|b.[:Rg[˳b@exgen:5Kboi){o;ORS%[qū)8C5 h{a1C:oI"LwJSkG&1*]~͒XtL-w#Dk?A xЇ2+/H Dr ;4~zr b UR-2 V+h #F1oj12^&mVGL.wi6Q,kpr6FGk+`u&"df~Yd{F$nL l]!sZFjYZ"] 8 703؏(u"]*(gYdG KP%ݦh(:u=!oFpm [zC=oO揵>bk%|];$AX7kڳמxoJ}%K@To"̡Tܳy08q4CdlI!wzG$W؁-9>p cSRctπ8д-~2FB|@d|MbK*KoYV8 Fݡ'Z Kn՗t~^w2Qr5才:tGD K|դ<d-"f *=^@*5 2d (]\#!%).!/-] /]k$׷oUs%su_,zp&˞=edU@:sQ0iz r|fg&wdj0[4d\ȿ8?K?1sUpHrɼHג[eoE+ۀo)E0"4gP0ϲO-gm. F~1Zx|2 !qq$q5*+cV0uI^f +@X4?dh S>Oخ|﯍_ w8$XA* aFp; D3+_8 HB`1{ee[=i9Ad7r4 +EdF휻bõqHTǡSo,jeZ' H@oHpKF!)aSSaI "0>[gu6{)/⨫s@ƪn"Z֞ NE;m 0JK^< #LQ\Yepb= JAp U+ƓN`Y6Q~K>tEX(gd*kU~/;6gtSg\0H: y({}:Y9 }(L+w]0X=G_P&?{60)]8;P,x+]E\7Ma;$:+e{9xQ5f&|MSyOׅN,3#7M!Kio uލ/Rc%1͒iNPuNPe*%4ilekw$.Pib2mCFn0/qU&E㩽*p)Am-q"(]Z-}JgQ)JƼ̰2$i1)._ǀǺ̅@y@f]μ.kK5 ₃sDeb'yH'p`r')Nmmn}Q_RMՓ@z#_8+qf|@Ltm܋GF9Gwt|1: ݶ$o Z\hz&:ow]6eۂmfo ݶo$K4jՇӪ56[ahxmx3{76_ׁW8 IjD;O/Wr ߈cOlȧ(:cr΅1{27UzGݩIA, NN=SN|A6P8g < bVvFgD> 7'҅֟m${XMבe0k2n P NR %g<#sbwJG6xK6ft#Ɏpofj A9 01iJL_@3䆡oɷ6!{c!0 kW[Z6H+ᤸ1J =h&;.8hƲ8gg9$w_ǿԛuF|s8t^*wcU ڹdg8W\ OAW5id窭J7uJ78cd=뱗ݭR\%i\ {gb 8v8!dkҥGj2kST7gw+X+Wke%j`ɪYcS+Z4C7T?c&STko3GRTJ4dQ3h)/%)TԱeY%lTZ<)fZryWsANP9#Jw+м;pr-AG=r[*^[!Veכ0P[O&.6@O]mf+hnZ^6EqreWBs?1p{7ɟO ֔fú1RyRvσ^ET;X nk:;.,#8xMr|5@ޠKJ  %]l;_ro3 H$kufS"RC9A4{M se$!5K-4)˼c@7NSgF4TR \Q|<+ h|?|{w]ϒ\m[?u]!e9 $j!)-HּIW1sۊɆͦ6f gn,#]֭WɗoLs +Eq*rTU6$TCOf?gN)T &hXTwLbEʯ/( *$,ͳm w&-TvE#K'\g#ܙpι݌&h}<,.}a^apě΅pDHG~ƉÝTp(Bfs}9^C\$,\aogDߙt Q6t熞G@̈Q>Shʐ"Jn7sa 礘Fa鿱XLw7PY4~6`~rx ,a~ΘMP~f ` w8g* 6AT@K8擫 $UnR Fhׄrj<@rF0$S HQ G_0(2FRߎ>ZT񉄲8LNOJ=t"$HY]u§_R;!; !3BEX𙒯 ڔWfȩeZd'Gc$])ʘ,2K+Lc䶟SJr1l?JpKZ|*%] DJgx_Z4<3M&%qg"$G6g5Hʠqw21ӄ tW6)† hF~ 2IWVN@3 O$Y@ ȶґgȹt`+UThɢԂUi:/U=68IRaCf^>̽cyq0KAK"Ҧ҃L:ȸBEE{>wypVaIBoεwĭR΄Ki g >raOy,Ro0d(_ﮥݓޣ\{QUސlixlZiT~FЭH&i ??Ky+˂#e~rXA!O@0aU;ш]; V>%+PLzkXlwGeV[  mA?v紏&0&,'_;B0pMD8qލ8WpBjErž56'ITrB+Ly166reٕ:(JU= ?`H l%^#Cs(FUv,+ىQ`E^ymS L]F1|Ȭ7c557WX{dCX%6GϧjDf #M%d|BM )Ob?|6_Fm 1W3@1jz])h29rkWɓE[jt|"f} ߘ[t*h7q̈aF:)@*0ՊAܚ6nOXɉFj%J:6(8sЭ&)HU1%Em"cN!Iݴ G,I*/j# $/g!տ0ΗR:;6WMGⴥ-2JmeZ<\IMBz\F$н;_h܌PLNqLGe-R< ߺSF=@K`qotu}1Y+WxxOwMEEӜU #AkȞuS3!ԘF<3&p!v ZKh)#,` ]0Nqn+nkx9qsT0' ֣ăd%S|d^1}\>͇ԁ`iFH;MG Azd2n@2}Y&(ЮW闅/r:6д >Dkc؟iˀ6p-ԝk_'ruŹ#L_0Ѵ^XWv1ݯNL5NO yKX*6Cv8&FN?F-99瘧]p득Wvq!bwԛb#4GT缔k w*x&m;EkI(e:Yh-UkqH4B $I5HF[-'*XxT怒y/i#e6edDQ, 1/~PqY-2 hLK:9Vi:+ǰ`nO&,<^~L+jYhsm3PU:M7E|`a(׺E#NMшYQH.x[棫"1݁2Tgz/k-@HhW dT;ƒ׵&U T! !{dggD{h3OTk2F /1jR ?21M)}8YfKE=ͅ"ʥ) !{l'xX1r-"R (el[ hD8W>;@Ti 0C͂C˕Z0%BV PT#MWV1=̢i,feoP!2Hn.;1k/L#R샚N"|e0!:0 KsJ_ht{hӜVZc5bPրAm4c!C [7r%;̎UmY#0(vaRwi b dXLm8MȞC/1=l1v7hņ4L*!$B^Ꮏ&6{OH9}( `^QS#u> 7RPP6͘ a,wxFjwTY,3++e$+ ͛Ecz%RʛǺaII *oyC:6#At{n*W8pVg''KwBOcǍi t~BQ3PuS oˢ!uo `r좍ԻJDJ :Yu{G{M}%1E5j77sUGg D_^-f'}4(CT&~aˍθ /еƿX+ڑE /_- Q6TNT:1|ıH]Mh@mk?=!ɓ ܳi>CKrPt^{QUaI]ݙ 76V aƞ"{ YY΋L y{.Bqyצ̗JrQ NJur  Sv2`KUYD >N%sʙRBwf $v3_rt2M~ ÎW+%34WӠp|ۤy@V9ѺpV0tY20SJݶ0MqU-TQvsb]G43ru0m}gdh1_^#ׇ*#[, PZ|>yBF!ڶmG/6xy6ᔀ!E@.q8Ma>|DžQ0ASz6z"A#ɀ7QƗ8Og V4#S$gNRc0 Dy7ƪƇb+w[cǮ /l %j M/"Y%Z5G*JS8O23E HmrO[Gp ,MW@"dGyWtS+R=8;5"T2;hg/%p0x=f{nash$]_'icOцYHt>Z D6qn_@*1/Þew'3d`>89||Pm=I+B :unr{dhG*P繋{[\ Vb(w;P! GxV|*[ΟuKEgrKQ ^pPTd :,%V|#/ڮ>4F.̡kΥNGi o;]ە> _\9^=*XGin=ط7#"g<JŻb c߰qsd=**%V]r/ aD(d@^V=YHLM,19?:5UmZe2k֒D7ռ1Z+I /hDf6**Eڷ6!& 4yJ Y~CjJg;R+4Q|@BoҐXXԴۡVs2"'yf/5 uca64Se(UYvᇨR煉;E]c1t<2VE?k+\*AkWr[J8M˜~uڨC`Q`e,mk OFP𔴃:@sGB~$=A$5sAh]oAh//eSE Ι^!'wCUY*,#ɠnxCjC)>v#ցC{A]gtHbqic3VBm4Oq{KޮLp둍`N(yTr^QnIC8!][)hǑ*fGHml`ݍYJ(]QCYA,7{]~쭀zkh}NǯeS6hNvɘ\JVPu5sGT)'n&dܞn!,3]}$5Fk" J=]M9]FL FxqNUnC`nAԸծ_/eԆ\ [ c0jȌ'e]Q8&#gkL)l .J+j2ݣH0؃ "޼\qR_D)_CdeՖ-<[tUJJ?$aB@X !$30xNs:Ў1.~˜f MnzYtU=𞬑G`bK] NOn(p-YOncC*dV}=H}KrmGT^k]s$Ȃ $ զi 9pZ:&%7,.yv*Rmd>&:3Fs#og 5^S~ςPMg8E1:NF@.LRV!&CN0읣0X\p&Dlm=OB}y8n@;+e|^xrv9 pn %y rlzPJ@+}n^?{QM5D!v۹!8Uƨ&Egփqmq &$&ȰίspGFk@ KMyS9O+iӡ%beUufݶe7 'lѳ5-yrDϩ mWmml H")0kQLӄ4- 5 eE+WD:DаF[K4͊nU S<ԸMX+QIHνMJ#SޤM ]";w1+M@̭GOiFK"}(-*Rِ='f#v!>+OM]=Crqlx SL%uqv7H.{:`#;$^DQ!Yeꋏ_|ރM{iԉ$TH. Fl%~lbC95fvتeMnJ ֖ ;l\F\@Nm@/ ?ģoԪXa ЁxNo4P=KvP_a7ڨfOy锱ݢSB2(rRANYԦ_c94W-NފQˢ't] C=?'»hP72[JUuG8EL`0nJXineaJ^=x_w Ջ]~4j-??O|hGڊcx諟*+\u\^XKEx1#\\|"U:g:͸!z*CˁsȘS%zd:o#f>@J~p~WA4aM(vsдfl1ڕ>S6Zm^+7U9\Ԙ\oy \L԰ɩl0^&'ƣ$Q6E>vȂ217Pڶv2LUȼbH\2{ޑLnic:J0YQ؄&<=u)+!iͫQ[o eMf,Qw&{4AYz`擻丂+S9Qoū9mU3Pӗtr:$sp&e0J՛ɦ<ͩɜ60y3RXi32WBjŰXui5[éΆYSDk 5vhDcY`AyM@[3샽w'2Hs$UCz[İv 5h ށZiDI tܘam2Cn'&n!`+4 C0:⯗',N _;Jr]rErq+9-2%ːI"^ɇV0ޯ])Ksm2jbn `2%sR϶}c_862Ѵ>=e o<=M$Ũ>g*q1䓄>N +a Q{@˳'1[)G_ xkRzR"-GѶRaTʛ4ˇt6<&E{84C.|wBE1GQU݄״B{ndWVg3~Jb#`uQ`d HފuzqYv(JA)O~a3MK{$ӧ(gFK~'-PpFwSO>% {rqur#V9|K OJIDe'cr$ÍYML][Yt%uatdȪE|37KG_[SIfa`}.xt5xf-;W,? !ϛe 8{2((:J3X#LoX2VK6%CO<,3vtؑW*f&$ʾ D⋌B9v,xK(uޤCs_oF|n>T4*R s>>+ۦAyNp q@"o>՚ī?[TUHɴg&rvxZw2d:]!?2H62w_d}eQD.vԑ#)uD 'X/^;p4 lԷ9qTF\1d!:RP/!yaemrk"l2G4^Eo׈^!>j|$ވ*lG) Yx' vZ0]OS938d1AyqZpnʎZmϊ ĭ-.mL iA=^tmp?ȅA ,(c6,ᓹ(j u5-Ԇ/ywls !*+hM*٬9ϡ5 Ʀ{E 9/ؒ o *L!@׉a39V#P溏@^g [rdƾ`NTDE4 ) >t(M('Ks>p?QX '첞]E`": s40)Γ5S*rX#F)ֱC:y(Rs/3;"2 ˆH`~Z"֋:+Ru7_7 [@,f=Xne¼$Y) j@<<1:x/(wUϊVJMf$&00`}.# πdǤcعQ7zEx@FUo K7\S$v+RqZn?g?"MLCAFۖȦnUA@d -YdUĬbyKHK.XSst]y~aAmHxJЇbcZAͿɎ>+ `{G"S<{&cyf<Şd:*iH_6` Ӣ<:t=S1Ӕu|pTm.l7-V^Nrh:rR?u7rN-o֕.Qʱ1[.<şș˜jؼY[ @/d-8+qLϢVP`2x)qe vPbP^zdB yBV((tLk}:{ /A@S*}l'QU7ҁom?騽ԼWʞAAj|mT},ȸh6s+&PkQ(韭)H|AXrThFwG9Ȕtb+<꟢"C8G+5Αs6,5gp%mK'eKf4GP~gGNZ8>Ҿ8|ROKoMՉI: V~e+^\4MJIagP%b?-F"I. [BP!Nm4I#VF\nB*!mYi/  {vJ[C sb=nz- BͣoQ)RҮ' +faH@>n9~M;=BM?BF@jTIMrXOU6-m^Mf"O8` [QtTLK& ia[l }3-݁ e`;ABqZblD>ƙkEFCc7;=͹zξxWf ? `6Qx6;3x)lj]w[`EsB]HU0񚙗­MQɌlnyN4 cϺ'ث/jk 1A 7<;|P"ό:'_ =ƥ.A 6eZq/߸K72=); @FXmEr9T G-PJ"x{R*\XlͣEP nk;ZaMGlnO)T&oսQu)q&f   g5I-Ci=٫wbյwu>wׯ*S|}<+pAdwk%%⌮"{CNsKʗ@K/顀>[DۃȻa0ՍY ۲f*"ytަ3`x㹷+N" ǀGFXn{_ fʍkexet<3jg1ÄPCbl̴LhǬo6]DCii'"VvƼأK:UYm:hBh`[Bw6;r)ȭj $nj\" =1֏NTLEIg%u \N4[!4OfU~0;  ҷ:q.[qR x?Urrӊmsa~6F`4Z_Yc7z4.ĥ [_6ۤJKjh5| $3j*xH<8ڧ4`g7-9Fn@~1u[9Jk&,G0)gס!9 \d$ޜ^jR+]a#&18p2IF/ =Aw/gj*ɓWtv^D;#[nZHyLȳA8HDB)r4=]@PlF*\3"lUH2`(tD*TP2lrwFN1֝xlFVcBheuX}Ur/.8X̓})ZfGl ڷηhYA8ϹYĮcmþC/]A8!*g4K雫߻UxB' tECeQ:S- V! LqЏQUqՑp^qՀQQŧg^fV\=x.|{n[NLb1xaxi%4h ЕrJ؀QXjO(u UtnyjJ_{Jdְ(!eE*Skc~c2㉯Ǩpg3sKXSةtBrY: ;eR}@P.>YL.7jHSChcڝ\FPmz2= h$hhgh k*&n׳Lݥ SrjvCM<\r6QUIOkan[83T%dpfg!J;}Jip>ŽIBWI;F-ֲX,0} )7A$ʫYĺ1X|851i21yyN'/hk-؞bzOA?MO,]kYV;ףX8ܹz3Dm2pk@/XZΆ\2˃k޵*s,vT>=j#^cn#1UpvʖAlMDJ9`췴VFe%řcyi|Z750 d9ż]S'T|} (r?,Q"˦RK]a.5O$mJ08ȃݥ72ZDP;3zӂ|B3d;uTE0vކ%9O-Bi ABbt)_uUrl X..3^11D½45<ӤUJ: A3Z MQ[ Ұjk;RJ&[)iij|u XBZ螘L`5u+Mǘ~41C@{f`$|.kpf#*toIV,T={-V7/)}/j2ؖ違%4"PcE\I@[ pYOaO޵l%D[NDE/f]+ATOb'9#hgwGs)zVU*-Y0n ~ݨ +]~61P$ZL.IɉFf찙gA3Cw$ SQeazeZB7;O SQGsS#F[8Ips"kΐ ,rΪk\Icav騼C0D 12z= r~ZI#/کmgy:a#ٙ4PR@Z-?szo3-2.-Qy#<8 [ [Q>ez\iˮG﵀=0p%A6O6'eֺA,n(EciD!ej[⏤4h 騫s=BkV䝜iBeI;5o6n : O}a Xr0+嚓! 7upA+MO]X_׎>_]2#ר.n@JF/^@fa#@rId7aU>盼_:s#Mxɍ5Z<'_$aD;}H{6Ȼ@@/v,LYkLY$ gG' Oޮp^KT˶KZh 06y>Yv>JHwh/Yb{0Td(DɹѠ}:T3[vQdU-G kNNhƘ:CnF/h/Ї4E|!jrP{~û=CowZ;,`<:Eݏë4:SvڮP5s;&9S7T"T}vIMR+(${_e9Jt튽w 9hyzy,]y{4QA#K7PP XqWϢR8޶I5vJ")g/Ci- ^il`)j Q#aoX g^opONS1 "Ž)ˬ`ZM I+X^CLֻ4{O!%`CPY;wd^OؐKUBՀ8:Y*+{ݯNqr R$c5B~Iq; kmS K;M9l梥$jr콂\8Iy:iB|A|胋 K}[1T\( `e'x@xlk¨州2\<\3ؘaNj‰\qAIe?[Ń4Z-^G}^1I,[YӍ ,qGk s+i 4嶐MRJB+0"s 2эwH-p'hV'jMJ2K"R[&{"KPեL8ċ5Sp 4ަDH|9+!+NI쿐ő0pD`PSK,2S11NmM8z`|ymfKQLڈ:!9u2=͹#6EGLhEl\4i6'6G;L߉ Ea$P|%IEr'@iF/w{p@ }6,|4U>hƗǏf?P*gG VEc0PEF]q:06jԒanFe[ƄFН}F壬\ ohvJ<|y-EHYlAXa<73(&$opgG51**$3ƺ',s#\g+R~K ],8:yGBԜyG5lUB,& Ӈ(rtH=CT^6̄@|7_濢GX񱢙 #h0}O>Uhu>je kA=Ip.c0#_@/uF=9zEQhCK翘Ln Ԟ XSL?^CEǧ5t>` d{{H=[2Q>ƎZ;K`?l_4~sڶmjʬJt-C?9+<)5bPiC#)iujFY&=dS+ (gġ7Mwn,l񐹥 s)د_C&6c-F7WE0U$C<9m~|k-WѵFs` egFeQ_[Ca_f' 9`\v |JyImN.-7QA:4o*!ӻ䗅xV6<=^BAJAuED$ikw& nT̪J$}X ~v)`u$ЊilDda{ ؠza<$ ?P*ЗW%6N0/טx*+e7M5b@ʊWJ ,zM{4C $n6TAE[i~n-%͙2hڸ)6rh2b CøS?(e?pHM$Yvo# 75{RUm&7(S 2P_|.Yj1_znr|.n%8 BFf/g.0;tPfaWO]z;2k?FXp-ܐe5rg:!ÆtV-T;E/~ *G2Fڶ5sSygtVP3IՓOہ>sK؉ 0\4]Ȣ'8,L. PTʫ YYx>wH4ёr~KȍNFДFfB#qE~Ջ:--"~, \:1 Ƨdžw:JodU!ئJNw>^QwX8{.avd@iT6tFmKٶ"sCg]h9pG'o7?xe>f]agM<4Pr0 \*2`'3ɞ*h` Dc#?6 \Xe]Nw)>6 qkc XD8:;^9̍>prv%E]1S 5F/? 4eBr%¾Wo=CkY-3]$BhU)L E!m^Eɨ"NQ!jB\ᄟsM  +8C~?Z>@W޲~I ;hapwt&潞L[qaTD߲ReZx6X>$GJ`kShTQ}3!\ qPxwq %օYg=TQ͹22?\iOsPsDؙngp`3v8/A)3CUq&M=]qi٥+,9%cu (U ETh$PY_Ixs#'fǻZds ,fݠF$FK~cӁ e;vѼD3_:}Pq1gO[ 5^h*zC5b_dS'wʚ!yt0nQ'|yK ၪuW&A=BϩdB$|v2^΁.WyЀOnݰ>,#Tڒ GoQ1ycjNKDNYJ5}c yP 5yk"e7!ɭ3BƷBNީ| bѼ߇D4-_[^j" Pl78}|osz>3B Ղoṵ~#)H LO/av0'~ǽvrqIpntaսr]+ͮ]]2W)3h]"2Nꇯ' 6~E/Ę:mAsANp5V F%!@Q ׺85&7eTQfB6\S. bA1XAנUY[Jg[2Hz| `#=8 ] ^oXJ4l-Ž2pT}>|h6kV+l̛BmJqup?)/.ޯPV @uRrVPc ~kZaDpjUGzɎt=Q8ME5 N)MWֶ5ݣZ_nM|QNqt,9y*͛39Wȼ}A)C Liuv:蝉i Ex#Hu<&lW+7ʝzubcE!:AT~L 97-8Hd0'[-P?<5ܼBhaUQF+lS]3u-%eQF背$m%MU[8&4Es}c6e߅^80¹pWncK_6lޤB9] %;\<'pr{d3ԻaJcU[&4{NfM<e/Sz%8oZCIulO HRYD[Р g@k~ZIK0 HbbE[ЅnVԶ[ & (NXhf8tp_EvŴ Փ 7-췮gB ݊jYXE`4 DaO6>Xe{½St'fIujѽXH} %;@*@zfp}+Eg`%qLI.VRRzsQͫ|Y]X(1k*Xn^M $҆zSq4s\Iqȅ@i*1`DzMJ}[ŞVȦ&C7ۂl8;hB]ߟA )H<'DNr, wCgs,'%zV!y%~Zёx9YeGH Υ?݇{e ~Ƃn ɖY$zEXrЈ ON#bM=@dž"-Qv ʲRi.4+ISIsUc)6cU Ѕ]_z_77 8 3C9SwNyQH/"QͰ|"L_ӂw _Ҹ olECԀ\p|;?Tx.ފA^J?VmX_oBq ÇAjC7 ɒۈ_kYijAzKeI5}LY R܌@J@:PYcEHi'FlofB,v$cTKjm#JCRv ؝ؖdZ)QjVh"*\0^5J,C w ·  u VIu?meRiZa`c/)lK*B-A=UYTӶQ3vEH-;Wۼ'3qTWY%oBA:L?^6Rڅ34I}A$= s8I?\ڗwgtG&E*(ޯ*-O-3B#s4/7Awt}j[֏B"3!C7z MNer#`( Dž!p9 QaSX$ύ0 #I5k BHn4=*{210;_)E$bWa@]{LksVT|kb">P"V w]1 ]ʻDЙj5EtC>=mNPYr1E#&s]IF|E ;3:Ƽ#.A<4LܷzHdzHrǠ7jcjQ$7(gFﴙ? m/5[+׋mZ V,۪g5d\\a]+xkI.s!wj||_'7¢>)Zߝ[7I@N—D*CD?~#/I/:Rh!1.JH`yO$Bo:xgA4_ݖ*AXoJKg|QZ(Weւx*m3sO{i NsTJdy?ݕ"xs$g]ſX[&B?P OkAa5ʁ^$"ISM.Ůa?rkF\u+AB\x!ǃٍ @bx9l suˡ $z58bv Z!X(lb4r_ ]'swcuPT<6uT([:{Jb%t0XεRB4eSJ›b%QF;aC (0l&+c.Of ]truJHg#)/h 4rP!xLEc)fFR=hٞ#"##uCLoQ\kFn(O#Yld16^]z'sjP^Ց228o 9­{\ܠ'0[=Ek+_.|T-+,m[d3;`|Ӂ3{2V<& d注|EeOIp(N[#U:b(69־Š9҂$g49BO"2//Bt>}HM3QGCna88nq-АvI0!*wJ5SiѠ?,#uͱ٥ ~&܂T[tʉ  n̸X/pBgЈ~ʩ8C̠ Rldۓ85e9$eWly'%֔F ]%+pjfBI;% N_瓖SS>iD'WD u 0/q{G+L݋* rՎl|oc;XuRrS^@R+1(T[BjmI['6$q@Wљ(\Y&ݙC{ێ.dW?WfTA"QCqD4Wg \,Ŋp;j[y=n5_l} UHTAP̈k uL>*(WoڎP"ͺ“Lw} ˸s#S.j!Z<ƾv}Y)E`1DDUz ,!jkL|_UkNԄF3ibV{`P^Ii#ƀa/yk\?Hv!4&#ޯnu:u]^$hpEyRw%MЈJlOpMo8̓ ‹ KMpS !1Ϝt;aCݛA1-E8.JOȳRJ^}I P(B촚lXoHUxCp u!8%^Vsǽ/Y 31k~ot6q&itTKaX|q.,۰P.NVW"_ڕa*sSuϸ!f4<O 8C2{sC3P_k=ޠӬĹtd("5"2Bxhkr"7| -w 64SY8Y8[>=G;iV%,dXƒ <AY0Y)0 Fy٦ѿrH?yKЉ:UU<1J3\Ѓ*Jp=Ҧc#_+ɦ}Rp,6zWN.#ZW36HSGY)Ǫ]`c)L2%#0/^XGeZR)+> f9s6z ]7Qw8( l6eBjznhެVOJKLSy ko1YS`\n\_b]0jHm! %@Z7'j(?Z ~4Sd|af8emB家@ȷB8) dAқ:Q7g@3V2uQeiZZHY :?QB¿hF² RbbB~<.?Sǣ.no(0 d_rNz\^bD %'8](3";/ ؆sat;BJ=띧wA>;dxI9hv7{B0E+Z?Ge!ehC*eZ/A;kc3|O_[WD`ko:vf&G:1m?hٹ'86HDܓeϒ5݀2$Kc5MP7TyIc&?BgCȌTuBOZҕWT>GP1 l6 K`5IM}R;hp F9yҩ>˒h{rj#$|sJˈTJoe'XҎbrpN7d%0~i2*u|qt?fT| VBuc[}NkL?ղR/p1tw~蕖mH`\L蔰`}'B|c]h"_=>Yлz}^ umCANq^ 5zvvy-v?CjР>ؘsݴ‹'f@ rxL/2̘'m-ъ{8}6ϙtw%')!)ahh=+F~X YQF';$8O i&Z96E޷ d?DpKNF@WٍD}xǠ_{^tQf;zYu\MLJHq4Izq jnjc,pt#4|RmyLItASg= U\_sQC|}ŹB&')wOgoL^ ڨnok#^]oapͽӉBvwxH:泤FdtA Nk22BgcDI.~/@ T|h;cW(pbm`̞Y0l2G. 8bÐGw4/99M] 7\#8zq?^YQ; 3ߑ M.Ćl.M2Q}#M-+49=Y{tӖ(]7Qj6rtR3͐_*iԗΡq/X]05d[%:l4b۠8޿GR`V~ܞ A G+8mGF…vɾyej6"3䒮#J~Bvi/u84>aq#i\ ;jg:i&8z3vE–g"bD5nQ?cK0q?IxTEkurb)%UqAa2dX7;gғQ :~?i-X ^o/̕6:Cb}A-(&cx£ǥ G!Nb.΂K EsvBVv2ZV GڨjJdgX"'j)GNr`ģMp8 !aj؂&8 T×MP@SRCfg!^1@³{B9S31Ni0Frګ);HgQv* 힒w C "{7dV<±ÛH cv꾷uOl+_h2 /5ØEPq]z٠@Wtڄ > ޶BF"J4مrq!m˓@OPDcRJScO+~X0gqL&nCСHP';K.b_FSgdٳ}@-U·.sIyB56[o+ Iz%oVҬ`>ef 韼.<")ʝb9,Jo(s%&5Rͧ8(( ltګ[N+JErpDzhkKX"d}>Mi[S9}oݪVk\]Jǝ6Ýz&ǓE6o4o[6.OY3CMT:lv߈N9BJ-0Zݓ м!@9-|)ҲI)#0#!<},9LT#q(.s颍(Hh0V6{Կ;czg5 wX"v?yI4);Qh|Ɲ>cP^yŨd _V_وa Vc>$)eA/qy!rjp0C=@tϢm;-Deͅs8y }>31)&oHӻJ0Sc475G$uJ9Q2cmt˗,q`mP^J|d؛#.] t $ }x$Qjv4Į-%jz3܎*2]t ",on oROY,64~%(wFdy+_\b N}4'`KEE j6:dTUӀwX.q^ poAo-YvY`{x($:* +ĚCtkqć]gtΪf<,V#rlF{N9pH n}cgI0L+vB15/lO0K"|6\i'LDN@|0I=ݟЎj I2&{EyqrϊM8,>'^q&a#:+:N 8ue7CȨ fzTmV^o2CgChnOdܫ5 W6$Ps3=ޘ & 4 |߬ɣ">&5xVy/ $TmY8,-pFt&bQ-Ƚ{j>e\+/󊅙_ۋ!|[I1%G5@L AR_ Np7K<FZ"+?t:-%3WpA(ȓ!8-O}`Ҫ.s^탚)NaY*."UKs8S at,Ͽ߯%&&F!' 4ɳM ˰b=PƔPBױ&gIT Y,K`]+$t"qD~WK8jWS &yw,, 6dNѫPr.%qwQtgo >茤/9tf/-K"S5i2O؀Yo#>V%v,9cpf(H}8Ѥl:uOvҢ:Ot|+I2D# +5L%ÉwQ<͛][qS^!U͊q8Hх[{|4~,Hz4TAuZ3yEbz!(1s`GwPa ,\Md+kYߠ+=.~o,  ;o\st`gi)FRNU#n9"^_M51mxXLghk@YPDE2v^I$^Yn|{A5aFM[[[O TZ@W4eZ(^V* $4Ӝ+rř(N 3 @)N2G鄛+4.pI7#zX,dS+S4=2;z;fیXa(:s |t(#ZŊhoJw6\0fO ޶.(]!gsb#B(ュR h;9Kwt{0j2:ٵe~Dt̊F>@cn=; | } ⅶEé[I=ŏvym!T#Nk}E/  8H/<Wy{4s&!ӧ@GBiG2< 1F<Q[]}j. օ[$}Qp/2M XD{-h*FMõvnB JΎeLRA\(DoC謁~T%OLQ=DЈI>\o #%s+B?`ڍQO&z;&ByOBU\)Dzo!ԓ~0b0I .Gġ ӿc#lwDrJNPZ{w?ULٴ(aٻ]"_i$">bU&ڞ_z'y:XXq2@Χ6o]AuB ZK+_b`B+@-iھ,Ua䢧)a*s[( ;x`Ά&h3(Rr-mes^uPn~/5j2jC`" 1JD9 r H^G99墔 ]x~$j@:]u/5bNhC Ki*Ih9_]Ԃtؿ|ɑkxT@E,Z'1YtQ溸.DɈhE"?Ϩ{K^^[h ftGM2%W+$@'lvQ {pԷ/|4 T׎8TcQj  쏓v!R&\z vޏ-S3`͉`y'\Iw,S]ro'ƃ<$X{^>CQ{+W$7GF>\Y(123IUiOYEiRrWh<}&9 #˸Br5ݏ=#Z (E^hr z%ijhu*ᐑh3,[-s3꒯wF,~YEތUk2±5?=5nFVb,תbnzBhBbk|5֥DC-g-uINÜ~ 0٥FrѸ=k6V])j1@6mjeaNoGrL˃31< b)]`[JwQ 2H^(@a|I7gFD9%uGU8~J02xЍ(m<_-bA!)Bc;|C=IWtrh4 *F:3ޮtҹ v>@UiQTr2C\K% ;_{n͵Ս+!Yi.cC 59B U_JQ35JG\E4,3V0Ci5fҪj<bIƛdp8 C.Y=B"CJØQg_{S sM2p+ rM$ NmTd5 oK0p~s~ iMڢ^&ϟY)a N[QOgovDyځD޿P)‰zuk8O ƨkz{0WB5t|QnqEs8~IX瀅x#ר)?0}vy.X衰ݛWMbg-_DΞiY+J!_k=4<]) (,Fjα}2@~ ^&ձ-''ïuLAg(;ai@_µXb=ac?){ î8W>/jG%Ojt[Mx֢GR3m P, ml:~˓ t]&['rSИ:d' ^$Fgrבol X9;uљGvڎ/E|-qyZU:HiKj?Ttj2!aѫfF&_1YM*Ťo0^;6q񥡮*f+zcuj"c*a+#V$6L;61z%Ҙ⎷.}uJT?sגg_Б>*]re}*FB8@UB:G&@SJkE-u=S)561̊A<4yŐ8ƫ=}٧?Ĕ5TRhp+uܑw̡( k]XBenW3j\nLdC?NS|&ecDhouȠ#3Aj˭*./"XLYbwÒ)%0h`1 W6f@/iCKsX"lilEwZ $kUX7.s_c<%(L)n {7 4,Nz4-ݩ Ӆ.M cBX Uq)AUo] Ȗ&fhy<⍞71ٿ)7gk!ʺąBƅU+bNqp;g Ӣr[0vd#2$©-Xah`E/`<3e֟lKZWg,^ڿ֝1%Ecrn^ )xbQm<{2 {hMd(σtO\h2D$..om)66c+0{RH4N +؞#5_: kκ1i(Awsю?a8}i0Z~3 : -ERdLtSs=P``=@L,.\rwU{6!D=3!DX1,B~*;= @.cw356v~3c%kSsW qn\N Y*^e؏59J.xi]e4X{9+CߜȤ}yj ךFtFڝ}x@yRJ!.n6nFd`\7{3Ձu3 ǻ;(OyښgWL‚qrbEwzZ+:f<.s%tܖz@yD<. r&\nXXPtB }ahE|`jhN*CLL!QEB!u nPU8@j!LV䲦%By1 dwW Y|c.5 #* TD9DuQ/dm+}jKѶ J|zcv('*+-ނ%gSO)fˬ-b}]W`{+ ,hߍACpO;4l983Sfl^sE(wOvj?R1PU?}Ҝ~HHAQE 0WGsQgƻkjU䭒f 2QBPx3mٓ)5_Cݿ#_i8:9x J֭|]+ XR?qPOW~7ɛOQƌ6A_?pe5R-MʆcYg02{oub1ͱ>#˫ +י8X麞p,U0GcGg !F[ "ʻ[Cq 9\{ǂ2ܿBj'> k['vK<+g5 J#V뭇\n1w#J Cdxc7fa>–iEdo{䩋kȲsX,~J;WǙαwc;~qٯt@Ѓ(ɲBq lM f[Aԗ:9N8ƨ%ʎЂtjǤuIGe+Xbs-6o8>6uoF p"B4YUuA+uٟ߸[U? JjIr~:,FL#f˛ CrfKF<`gÃ"k[7BXHAВTG!vŴZTT|.q:JDMlM[.ɤ)t!xEJTNܫ߼J _^&lGjqLx\W`$p?ƣʍ" YP*0ś$E/SID\غqC/YH@MjKI+ j@>h8G|V>Jxs9&n֝m?7Yu[ơ&cQ9I&~hGz/>p 3.{[J_3A/BSaA|ᓟS!FrٹR(Q? ^͓6#נ4ӅMś~d/rS4-DNhQO~YnGQm} ɮ8W?$ߪ 'w{tGel+*)!1ӻu-mK+X,Tk2ovry*r]} W'vlK,rc\Xygh8Es8%VS4"՜+8JVl/`4> R]+\Zcam7}b-Y?qڵʄSgvf:Ev%v@LnתPi3FiSq\+ԬysO,z"§21HssI s)wKőT'dRsPz6n!wHCqR[36<9=ADᨬ,' r EC4MB p̀{Qqd"SF[ tAPñ 73j\b2VHo5HIe #kGs( 6gآk5|:O-ǣʩ<Ùm904(rO֞c7WHv"2qH_kExk\Iٓ2&Y8 |8e$s *Oh7ŌPG CH,10#'K/-P=y͊qY^\:0 ^Vav&G<97qS! 0)&>S=6/!/wzvhʵ[6tswQ egޱ~G'b򬍓]z 4S&'ȶ葄X`Dƛ~WL|{1_m Q\I_+aȕ " `y3# ty&w':תj j 8cK ][Q[/M@FU˙ك_;4ff-=}Up î6{怞`Q@D)+DS7<~.5:501zrHkWyq,"e 8L# .Rdz|cfTKedV ]ƙZj,J`&#hLt0~(zdݱkC? P,dES3,NÂߦʉN< +źJvuՄJ]9jP~[_gaxCEM} >>Hw*kwzu4%D (lډX.bl]S';-7ݑDOm)?F YcPW_Xjtd7oc5{89ūM91 J' G3nO>hޚ 7M-ñ(Z22Z d/|-t=?F9_E ^ف@f_Qk>rev1ɳ+ڀ`{P Սa0X8] "{2<9Ɉ ]Ns@6("תZ.HA1'!G\SvxۗKVLUױ) BfO|Ri'N.!6~Mt=59K5uFvO$” xTY>yZ5K++zGJʽ8u KQS% HnK<k1r/bC >)srHI:xC͂1'OhGu9PipPAw [=u>6oWя{X9_0F-lu%g}mhؐVt=Ugw>rOr&)sMCg׹BAdCx5B ̽&lRr]jЧ>|:n!-W^> 㣁`v<ug'<Pf$|S] N DFJQ!z7jIoպfDD17w"9{jmAuxwEE {0rܡ,)BK-ޯ=z /< ql ?aѻ' Y51$WE?U",paFIyw87)RЦ;uv]9s93coYAxClxZ{-r;IiĻ tyB0Z(Ci#,;*\|Ȯ3&a _g$~vYU@띥jzl=X)h{ǭ|ԯat3tsm ɭ h>d涓ZL($7^y<ٔ7^ŸyТ&ʏcvo;;ߋcG< CɁ;iNXFt| oXGk=CaCd-GJée_œre +KPSEW.:ؿ ^vJ tc\m8NLg y0~ ^rAB)hU= tF6T@EϏvK+;5~*MĭF {ד֦ʙg5×H`X1SHFuN$!P[X2f>.t2.&_~\t,Vj4dO>ֽ#kO+߶Ov1}Kj\~H5ck;ZWw (9PDJ]%L' =>G*%uJѽ\Y梄mϑVk&>(ܜn N2Q}=n~d)afkT & K 5 ;a%xڬۡr"1Vl:22~CzڎItR.ud 0ŨM!̗Uz<'fy 1 U93Em/U'z)s 6]!b $qߍasz[Wn:h b+X)a1Ri d[I΃2kc17 "M* oׁ\RK!)xK}y ?40Qg;n@(J \йpd\¼UPIuA7 <:tp.Trwp?5۟JG?&k2kvu2U3UA7ֵmTBBco 8Ӛ{./#m1S.[@>ܖ&w@='`J4o;=3܎7pb{T1CO. C2xB,>BŝB>SP47q^#Fǟ tw6ܜut >#j)Ү=6E:ɋ5W+&3'&]n( WؠaB+<(vY%ܢ[NVk{R4 NY.#O̡"c`-_v33yxmra{c kE+"hWymu_wǹ 7H}4kiԂڍ67u~jk{A\GFH0^uPTV!xtƦc.شTgo4{wi B|^PbŽGtYqm/fJNhvY dxEmjM·nj$Lhh63tN#()DrK U#b / '~`Uԏ1腗3ذT+4's؊Y%>6C%̬@uʂw{R-GU0?GYd$|(L2 ލE;sB(xB|KY?01Qص+1uip qDJEA$tcO#uM*zf!M5T}QSLt.p Dh!n&RA5&K$G2}1:AS.>u_">d8Nm'/KB"2*itzGQ+\V?* 3icC1g 3䟯q:h)&P+n4LJgС"?oJO2@~jZֲHf~m D~*dC^!"uΒ/kTQ8Ҟ=-0B@V:/lNwrkP>zC~=@ƪ /LkK[2@'b[TYVW:%Oo]+_?2M~1]<ɝ%rvv6!1ȂJS9qvBBaݖQ[!bAH 3o*MTar'.Ob]7" -J:)}ՍeL<ʷ& UBȥ<ɧG6I7`=u+ׂuYsQߜ@ɹ5هef )q\Cem9o6LnQXw8j54`U;z{>aSSί_Eew[AT7%'AXc#Ƿ%jyV;%YZ_:eR>U]Eon7+SnJn!g EE!>SN`I̵L;sVNjli bg l6Vq"熊,H9m|Kԙ3'%t Rr"\S9Cm[!~+$8+.DlJډrֳj$ % Hz*M vpqQ 3 v {m N$S ABjLUk~G+&tVkkj`!^X+l1~l1,@ڒ$|IO#Nykp0=X#mAt&& Z33R/ŖVG~u*q.-w'?\ptEIoЧu|c· >nc[\k{-q=qK AF@HYѓv񹻗T4bI u.U_Ld2ch%>e9f% P20/#h/gk1LV괲A aAgt%ÛAR jr=JXJyc:N!:_gQ!_Hndz|T16WRvb]+|!|ualmrExQ &oPiG(4l?q} Ƿb; /ךI% Xzs]}O]K0'[)=Kj5cmN܇܎ PDTjwYZ&' nzE\R23DzJpՏ*.J5HDOvHZ)& ́~Y[ P BA W)]?e:Hr]@ 7 !.-bz  ϲ!7 4䨀=sEa%A8Ŝp0Ѯ}'{XDjֹ}w5{V6˔K`pDw R|R0pMs%nFjf-ǩ'$Ij%9ڙA%ރeG 4]v]Ke"|~{d'WyV=nȩ3SHgi,8H;1ݤPśg 鞨TKhI<1>&w[{lsYNY6˵Zz|F/A[_lp>Q7$tTݮ;#MπhLFE `]>GǨ$,Mk(⠇KdՀh#FL.T%|  +H$c!&׈̥a~k 490~e#iC FRXP-+ִ$U*uCyRɼ-U*@_{ݙ9O [wrPc/P&bS!2RYpLHٷ϶!\QtOc5"4FǒH?}kkk5 &%!3g:V$LzA3AТ OŹPzк[z٩9|V*s ę˰9~/k/^_&)}MY48 w7\rRUJ7h|?/K^Xxu|?Cu^Oʔ 4@e xτ ~-'uƭ,*5s2;{xKpfD<+CB}lT5\e$CJMوs*mĻWy̠Ͷt-*@O4KGyϴC~IGRܬBn2 fsfeUC/'ô6N.) Ef3^?h.wy`B)8$*(.cY.-CgvnX$cSW.QtbDTK#XHy\tDi\- nj~ٰ:PO {K^0u67'HDVҀwCp]I34Io@`x$ϤPp(kQ;wC);2#f6*-~ y;n2騝oLϊ‰7-0߲5\'X`c],K*Ú?fKspҥ:eg^+ R.B;L(v':7i'(/lu5^V* axg<$^:]E@*i7ICt#* .r!Ut湋wbx??SLtxGOzP9zW :Ԑ/Ra`ڂXtו\Frz3y:$ x7aNU#J'eG:c!?hs촡W5VB$'p-/Nւ,YQ(*1+{B>i$6 Bp 5N-\S l &Eډ?{܃IJ;_jKVLMz!;:.ƕ7,JJD7$b@4= 2/͌##g~ۋD{fXpā~>rV0hUC:7Q$c!MwoFr9IbhY"#?WG/4C,A#w;[{,%޸qiKSza2aː2݇}0!pI :AI/gol@ 4WB8 aX.qMF2 aG e@کByVCu)ͬ5=q& j6.:n/)a&B%bю Pym;$^f7%vT-7L+P#04&LhjR#@ )~q)\na? % t߭jf=<)La|S#qQv$؎$%j}ڥO7E@~6groԫ?ofXې2}g">/|) Ax(\|tFc[CF j3Hh6t21C)G+{QeeB*@PJe&/w"uj'$eeؗD DPv^+Fc<γ\˱џ^zd Lۘ;7䰴y=iN(@y>+ϖuFjN=Kրi.z#E:3 U\ 0;>p\mbwyˉhb EY1%;ṃh&2j!g^=fmT@̷iP+ KDYLlUÝT oDuNaF(-ӊ.$4mgGWw =3z{ܭ'/?&'k<|$/m^A ǐNLݻܥfxNE:խDG/3@B% ;!1:xeyt{\ݰ\#"WZ)p@0Y3< +"6v.WyN4eV\A,]{ PuB xKwQL@_tapf D. 1\@o i_g=;I6l_n mz\tg>T[넃C .6IY`yzO7U/Azyo c(9U*jkPqS'n 1<7mqT\J[*G\AcbVG'1vJJbeΧYyz闪V+&2hJ`C!>TLVk>Vl#ޝeqi@FڦJdpY,rhߖo|wͮ>UL.qnЕ,8%Y; i` sc(S?l7O S[KrSkquU"lr]xB@9Œ-hN&݁wn6 L$mc[6 6$FuGgzp]d)AY.=Ty|p-ѰSv]0aK&I@#ФZji&Jma]Na>6j4 {OW;2ūe“8G,<vAj҃gUiGZkd$-^ A g#aC1:9.URZ*,|;)^9 _mѐj#v屐9_~aTX UmFXz8X@I&&ؖ2?H{Nqͣs)$Z#TzҼP nP)TTw@N5\h)H?ǡ eq RkQP%Jhx8TSY?Xa9*{'";2sdwN$gIk诠Jj`q8@:Kڏ0ا"F-)+'1&;](eZDp 6:+! WAV©͚j <( U1.eC%>K7į8EAȩ[U@l\t7 IWMC~dT^'HUɠ  }WW[ 1!Wntz ,RO*EbijBca-NaY ^`éU VyC c^>&пpO0s~1К߅7eA F<]ƈ$Ȏؖ(l j62E +hp9 Tu_Nw> (?va{9Bm.on g"߿8%JRcsY`q$.KQ-/R}kP沬"8Z ,w&EmA69Kj,UKPc!B"g<8%X1yGr"ʀ[Ш~|1vnD Ը/|[HP?|oc3)``o]c>Ip+4pwƚVrlȷ*SL]#D TdJJǾ\^HX $Q(DA+7z(1ש❰eօb0 s\GF,I 8vFRj!=ŀ.rʉ35L6ƬufӬ b[O,MQC?wbm\9<P_ʁ8.* N!6Qu_-TŚLIXqC:Z^k"fWpq)f=,4opEwN_ }A]`BiA|1*u-)J6 wYCYUs ZdňՌz (vVD^#O$zE_+."RN}&XHD^ Tҭ:/>G"P0IHЂԺ4]&omJt_M!j}othkYT{řސ&a!1@f{"4T87+_1]xjTj:G#wj%=Ηyt;d-;>Yb/Ux|j͚*ﱗS 9h KVkfSNm7&bqხ<&qe&I›D5KPPoCwP(<vC~-dߚ^n!W 1ϯL Oϛ+MROtcz#@ۣˣ-E~xH2KRpYG[y|RŸi,ՓݤazkAG@⫼zs<{r LR>L1iY}صӬ<NE% vIll$D I7ϖ7 bL_-A 6jkqqD |hԆ}4YUz: ;T43.ΥsBMM>WY9筜i쌟{/a̼/%"爌  KQ0fW5Ӝd:Y{d 0,c+\V +fCjP!0%탬UBz8O=o_V_y|+6 H1֕&bcoWrD¢kMW7ï*.(܄=,x9xU[?x*1pnM=<|RP{EOF|6(ٗ >w7vr/S?N騝ǎ8ňvdHJ&l, f&Rzat2BR0r5h Ǵ s.f$yY’0zl;B*|T^# B;:o 3XN< 4LV#LŅň"&H?&ƀ߷jpĿ#P%ēi*ߛV1u nfmPcL«X8~"CVN C]X])`)0 mni24jDFc*λ$X!Z<{#Zy. pk&FY.t&WY Jh n3wV~3tS(kZh-#6n^>wIи)Flkl<ï;,e6eY sOdRJι=F8C(,3y'v zh`Cw]K SA^&AzR&'K` B>J$}Fs2`V[vջrpG{\aLtqTySa3Gj<\Z a?!nÊH+oUɁWA̩ڋx|wAvr2`҅G Y4uS_oFಽnPFP"d0{Ǣ3$-zËxSp_ a$%;A>*ޥ| (M`b?Ecz mj9njHs@# rfP<Ƙt Ge#9(IE>+FL%=\~]S.&;&wΥg|s~Iqct]fihV,iDzD0 [,\gQ|19'3H ?\N^S*M=w6LHUS7td\nDg6l* tHm\&yPήaڒ_q,NRq*3 7D{rE1p6en&`1A}mT10m傛B9ti^5nG/@f%!yҙp{|K/ wiRw~S{e`Uhv~/gxR1*K,"}sT9}Lk7AEwأaRc v/; kő) wnIcGӃ$#NBcSH9CTaE0pG<A}l!083,!%{Hx1\/΃M! haygiې"}K9R2%Ah`Tߎ})Y'mH`?V۶¢Sq0:Ix!a&t<+4QFf_Ʈ>8t#Zy ~!Ib~S ֭z{=HH0"IՎ%$)-sU^B ؂]Npf%0z5G' $0{Ɲ$|C{~˪Ss/˕4C&kxWO{vi0 렑ZJeɫ[=z@0$cs ,_O^$Y8yi^. Ig"X% >Uj a җK.)ETC#} lڪMǣLc!~[F/{yC8A"QLy|%_d"bIȝ =!hcƗ~#;q>{龷ATvC7Q-(8naQàsH4ndA5]AM9[aI̐rZÃӮ1a{zz`nä ;3Ű>!_.*0WqzGEL4Hnh"M3TUjM<qs::>ld`20p'_l&Soۙ)jYFW[IN _!&{U|}2˰ڽgQ>/-8?{%L]$^B F,˽зۢ"BQ4_ihݴ Rk6}7G'~FѾMb7|z(0 QKl9Ga*e&Jͼ)EjvÊe"#MnO%+E#+gYzx+6U.m %pZ3qxRG`k-b/nPN-.'+y.SS[l|kH>ȏ9 B4L?7|5(ƦD.iqa (0Dk]~#uZ%1r\CN\q, EgLT6 Qȩ:C` 4ixԿ"E7 SK=ZrƂ6)G t{)M[Plao`tp.9h9gIǴO{ifVȌFPuv" ~c=@ G L<>y}i7!?n}ppD)ʧPhWx(j*-b l~ s-]H\"Qe(\HlxEնkux `m5haZ=Q,Q.ҒGEPNOVRSËHelg v;g-Ѱ,-11!|ZSB!kiLF`U(o%9uw-Xg5gTW}5mP)LkcP!X9YD[+fLVqqH'r f!I[os<Eȫ'=끜RIZV4Y \ŏ J\9O DK^V؛'^dLNBBe8HYVozzqutJfqᦚ"Gu^KA:ἴ?yAF?*.0NW6gY8:=QƟׄ.K? x ʌClGgȩSnDq3dHo)b+¼R 7vtY}DZt@d(f}mLt$V,6~0{}44X5 X;D"~H^n)G̊x-)w\ UFzm|ri\NYHW y`g=#>>Uc$1B_Y;Wh`#hoҒ]&[YcXt 9b۠WWCZ 긩7.TQf\t-{YBR,Pto=T2H.j";CIlh;7r}ӝ-mwkE$Q4|ߔ))\xɱoL?ͯ"bc:%YD g$= : uoy`qq BH}o$vnO \aNzlI'Trwj?)ZB|Pez6. aGD4TD693b ϧe케 N]Qx_®PX?Jl|lvD-L/W'HN::E"ۋ[3,Hr% $0,1>jҰʫ+hL}Y! YsfT@橑T'3%a=]eCG dqO֮͊]u )? Mޖ*^Բ.I,[ MNHh$fw㒗> pB(ql'Ŕ(Ä90½5D:Ph.A LjS`ƑmW%lڣ>C(71Il L19Y!|9/&ffY${b[7,7Wo3oソ@jLfp3g] 3?icZp,FA$dlF,[rE Zz5.h,fKovhQߜ2U1VuɂTpA߾r{X~Q_P/9bU\OOV/N]9k 0.]?Ȝ#v qAm,6@q$0`GvWHۚo۵횹UP&]-ϕ#:b&HkL2E=(K3} ;)c4H9zS.%>7]2[F#7{5º٢r(Tu#uXG,({q"?)yכ2Ǹ9_i[a{5Co\kއOr@k &]( G9Z}faJv{r>[w i<6I,eX!+ϝO\BaU$\5Uv}]UnY%d݅uOWMEzi 31zAhcNzRpAFmApY"VJ!`廖F:g,3`ֽFLsF ↻Ӥ$NDXH{#;O ˗eϓu؍ !uT xɁ￧99[näٴ*9ͶCEeJAABP ~rO%-*DT=l*C,<лX묋j8 (C]89oazPV#ge eC\H(;' Hq oޅ%9=@#|3_jKdL_&TNjT`g0PȄ7w͊!֍M"^HYؔ:9 upezsW' ӘoLq!a){ųe~k-O|b4섶ۑf0#KՂ^*mOvE ie:vgeTt(Q&|>1\olLi /e2N oJu|nϽq6/} z")FcJM[:>Z;1 ǽ|YS׶m"}BCl4% Yѡ86 Y6۔Rw%|I0B/ov@y~a ]ȩa~{m{菐&_MO9?G9D}*kI"㱏)R* 8(N{5bSwqܥDſ([-:۽42Y2-; QG2%t`J\;a*ؕ@dV>4\=50 2:0DRy&U+jߪBAqXۓTnL\?B/W.YShdLAv>Sp~L, *h ܇]lu\W*"-Dbށ}ZZьb_ՄIEXWp/±c?|;|iF-/x@%‰g@/Jj(敘 ?εikV9HOYelSW ?%zg\?]VCvpڠNk0H&1oJ#"ENg:Z("LPR>= `zd\4q[k oB$ƊY2F!i1G&^0s "3$#]ѡڷǓֿ[u]srxE Q]@ Ef)VbkVeqoB$Rp~CS!?|?yaȋju"`c*YLO(y#8M 2)]EXH3"\)(j !Z;{!$xO ~2.[Pj*qN}*YcYo1X![$\"YC?v#ѿ*{#̘(DK0BUM?` :#pFp(tʿ;x4-sI"ZTLuG/MZo%tKaKtutͺ j~u4YeeH Igfex`X\++:AYt zA_ ~w@t!Mq.CC g%i%֞;Z ^[KhMǜ/'/l-jb?] QI.y"x ೙ʚgY4x"O?7&ֽS3os~g%%ZծAJ^.( G-Ç _5֐VF;$ `V;AuȲ0H/PI1\[/7{;sLHKT\)mHB(l-&b3DBM llDlU B= Qȅy#)hR)⊡:k@PTR<opKmcs5i{-j!9ù7Rz!I{6oQ#+o*f1Ӌ\Z[ 3.EԲAZΙFL"'֖!|yu[ <3j/_((,b߬R}LJgFs u)֥z`5{G2)bek5- F59rû""Cyy`K6qblFNזeGגJ6=@6o|+-ed> H\PEF(`S+rMFlG١^*5@jY(zj]/LvYw\O1&UN yFF4+H0D>)?1Wk]dc[42I/-47 6$~cAQGnu;gZJF1[Jue;(&Pگ59,Yu'oAΪsG:8X]8q+E$M()A*APs"ck\9AAs7Us|1ߏ}7See;^$%'{ԢkNHz/k7J@<ʙZz0**&P`M@nO. :үꬌg߈ PEw!6= k2G1+%[ѪsXHEDuFF$#TS/ǿ1(lԒwfoI;)p8]hxYQꖤ1C *}nɼ ; ŤbYE{0Wt9}ivftGJ^"AO}d}Ã&ߑ}ƊbIjv^J;2P+."[oFഘ;^{aq7VZhl x#4%~Z#5oOPh݌:&]y9:տ vLNi S3ˊJܐ=l”bT1ۯ5/&?BP=߰6ն3psV6A4gVc&-b pp\o-Z;_" W8F3daqQ27Яl "s V{']! Mև?&=Z|!j- %`dE\ فt\mp}E#ID"R-4( Ⱦy'ruB_1r!G2[oqAz#g.Y(w5ŐUn_P:(;#;qޡG-[A`7bŹtУy?n2w/v`H0;=5 )1K&a]% K"OEM|JP5Ul'pJͨamOt\WpP"M4lU>BC YA]ҪJ!uVx>˜X4ǥԷ~lbEؙC*e0+x *|`k{V`zT触k?pL;&h2,;ȇEOMmqJmwH_a۹ºľ0@/\Nd-!.Y#CRb=cDŽ=>C(SћWPt"ռ*R&O)=f8?:n,$1RJb9EXmd#ȯODvRLn)M-E'iP i 1%)g۪FF:GS9 3=6Yݯ1t`>F?Q`cpn;TwL*#.?!ŘVS;bnDXGݔՂgʬNT'|H磠}*yND+8+Uqd@;ˤh G^QX3&f=(6efA`yK9}?4QsNsQCjq=1zRdCk$ -~ 6K?$-v~hr6f=E$+E(`аJwH;raY:~ӥ  jLτ]Zޅ7AAiu)D]SF' :hIBZ*z3#2(h@ i F\L8wx@V)Kދ)/aYABm@2,4m Fa,;.BP 3KE 7ɩGT~~{Y~0k=$o{:>]uD7]`7a X{y_=ThJX!ʍ^m0aUvy:*C*3@UȹlbFny"wȖh+XKXSU1;>7Nqjhf-*_NᇓoiryߪU {6 B9e[_ְ5)!ad5٧d/=_:Fo  ^!\Rhi0@fK*rڊHOcvM _#BC0J(Z[;|#U-nAK%Ӏ}ؠ4Sc'w¥/8wuwݜx# -AY]Q,}6Ƹ[K(F`*J (T5Wz;ac=x?lj*, _#Rl:zrz/2!kɄ!i$I~!HΛ{}yQ歭e8Zf6!ެaւvqz |*QL?Q}1qfOb~T^laCb蝆-ǜ܎ Oz5cᑈ9[e՛(|sGO9 :KNZ)U =rPz;T0w=;'Q߹_KY:ʊтC;,Vq4:I0' E-D3gg%'?ةe9y7>tȄ?a6)"kt/b!~< 7b"T̏E (lkT[~I>٥H@6\?< j˻ ՆeqlZ$Q6"r/6!6 <3uw4 Ms)̋F_B5BK^T($On!S|atmc^m<iz? kir1{!i5W} Fi)WM;r'7-C`3fxyDDkRnPUe6uv1b)U[ s+Y+s()LU=mnB}'n0i kf vƓfX_L".A4bq {5S$+D1,G~*᨟&_ D-eD6UV|VUJ{c$>~.=#Nɩ~᱀ -˲d><؞]@pCI,/z Q#4=S6;B0)6q6Q,ȱoo C6ZcP@[c5-]FEZ#\ gK ztv].k]lA%B:^?{dRw2-Id7nW8e()! uΙnyFrB*s6딠׀^Ă pci8Amo2\19[3t種&XSxّ!*Qچ*|sEx%nu JP'(UiAN)P n!<ȕf6bZ\Ѱ^.zbBϦI,0';JΊ찁+jĎG.ot$hDvӥ\eԑe/5E+Zu7:Ί5x T\:ϸ%@(WzM)hLDY |AOVUpŃۍVl$I.:,6~gM3=miJ]$T/,LZ@P*w4vUŬdƉ/ӵX ecxrHɝ3*-Ucm;kZ zx4o30 D'\1! Le_d sBb`W +iPЕ?&= O%d4v"aeUD~:`` h@2d,Ypx-t|QkMjQd52 ey:4m&G[Űf5C3 2bv$c4L춇6A ұ> [otm)s%~$0wZ!,csW NJoE̠Y@]L$ 6S't K#c;_[#doʭJv=}GHG;h2֠>bZi!_}/ hh, m@AeUy>а$8S]P뉝 (3nZfƥc]0#$dZf9:8Kd]NYkU{1*@vy(i:UijLkW82ۄ|z>3t,gV~+N:^X ^ͯ6vy3)Ϫ2eqW2sWď-(3p W{D-W]MR+sWpVι?9#= m6-ۢ50Y~ BV1;^PhTYuRmiS,:y^lHrՁ'*dߵ8LޏK\Pʝm\ġG %Ǣv)NְEJ@H&$?Z6'L,s9?F)uv6t¢It?w"dCU";1 e["YMiV^+E XH@:8QH|2Fž0KQr{-qq*)"L5hL'c.'\) rB쩾E1b\Vnͱ~(Dʹ)Y8عDn\8axUA TBRYM4S!s%csNMo4!|f7(wJ[`*>Ѡ0i_$!.{H>3l&LCeq/Ɨkߎ,辔11"d8+ TUOqG J ڀ#&k pT'8{R7v^r.^@)QUY[ Op,ofvXi|b?U< ĔϘg h% >-6#D3c#ʉW_Q7%n! BשO3Q8%O,ān W'lרO18DSS賶jV~/y#fS "O6Rhl'Lgӝ $^>ʭ}n+L2/y\`(LW7}dC"-c+ty2hFS!\E: wڴ m{!Kdߥv.b޴cSJ[b):go/][fĤÑ;BȻ3 gC1ysݔm_H9lY3U/A5sm/ڑ?΋ܲMH>;yؼÌsuRԘ3B_ =F4\0{^ƫ_8g0D-J*,Z5Vv!PyOӻYn&Li%rJ`W%›} 6Ȟ ݇6W⎒X$28prI'<07MY1TAAI[uZx.*dGa>_xDY+\Njvc0]Z7a52Wjt M/ G ).R}Q8X48mwwбȈO6FQ%O ,p^|c4{bUdSڈS-kP0+w "*Gaи3HӬ!Y.JU^FQ#۩]JPox?`ޕ zƶеV*[hҵ&e? "䢃睞êP'Wz.L#[yT& Qu1U}6on[H~ͤkz&#dV-$VZr^A!:R@P\ʹod`˵Qakcnv0>HTxO_>BO8mo'%t:ㄽĨZߴ׈$q#B<dFgr17Ka%8N"mDDqg /cu`%S#D2(p: "C A#=wCM"qʷ-f~OKBb$+F@7 gdQ=wkT9[?^U/hI~"dm@=p]/LnDTFEW'\%amo;)mhN4r*uۤVZK ;TnRP\q25$[ػסHg?t @mAoK"yK@/T,Fic=V+kK$1l >m֘@MW:9b(clr@n ~lxnˢ>9Xr࠘C~jw.Б;`Ff)qT+Ĩ| G'0PiRΒ(x0VǃxQLn8Ű~ dRPvĈOw* Uu7>MfF+`/O&Dq!ka U ~ O_nk zǣ^_ |bA4 ;zplQB~rvDQ9E -~` ?c0-?@O!$fZ O5=`8Q2:_s cI}I aj^L[k_ nxAy`зqI';Ϳٞ3+ڜ?of°o}*4A֗`✴vQ ՙ!CgSw@"q7$q$X+s70-aS`bK?,ԅh嫁e`KCn\ÎA^(|u`4iʫFAYJkow4 ;Z@7z?U> -y:id";MsP) ̧ ͢0)hyuyUNGqI~Kt&%ueaY]F[]T>tkLA0ڭ7AdtqF>S;*hD9YgX0JaPS/{(vQz(C|q G:ٰQ߾X8H=U#`1^Y,WM<\fڴwt~Ho"k * F3o8EI[17#TGЂԀ|&ZQ3ыyZ@Q [Adا1CNFx~hB{l9v=;6~ ؙ/RZΕy2ⷂ$3Nj0P,b^v"_5uu#f cRsVܔcnts&#h]*ZD*l0sRϽ.:1,{"%eaU1'>t0uOTY8'Ah|'#  oz~Y]opVa{FgrCJ=/0<_[M>a{;Q0(QUlG]-C(VJ纃w}Y^M+SuWrtnhNnhB#SꢏoC*\/7 q5W~w5aN2CD˒-0ۀ)uX)D0V2G*0UVZMn'kF<5 T:+ v薯HFf7ԁKFӉ/ABEHu+oYI9V_U <pf(ҵ$ [6lvAz?:^S~mOLm<5"Wm|BF29p2;D^ ^{K}ޮFD.пFRKqt FA(""FV E46v.0<ߩ4hCܤ6{6kn}e Zo.XuǤ07 !AM+# kB{r"43JO :S bEtg|(؅v?GE;zNӺ̮ jE Ye*Cmze0f,{tv!#B+pVz+݌H~2[\PpT@7, ހ9l<+Xj,BhqĞmG:rlܼ?v$}_mĐ@ou{o|w6UՏ"ɉ+WEbR*Wdo3mW{##+q/t\4wg+{.+A>,Yj!viu4ܵFid4 N?QE\YC^V$m7qrq2;}in9C'q3Dyf>ro OK5K|\J}2 8;.1W>LY((";@uNg&t/"s4eb3q}ERy/r~Ecr=e`e J{LQqpL3:iIG~F7{E.dβ %ώf!)nXUoǂ^w`UzKLrca~?B4Ge^fr9𹗥+Vƈ]6vObQL!"Ɖ R){0WFNd {x-̯Կ>TB:ź=ڪvTS7%$q52?E:7-xUQ0+8ikNkRnV8'*%W<VnBnz0b,XGw PREpFQЎyySpHO,~-'| o{8K?; <єuZ"hF:a38T9YD,^s N΍\c"`#rs#n]m:;?0X  @xhvv iZ̊0%G0<~~uّcf`xzQPĪV%ᾫWO,kI%)b A..U?74@)\,@D#'6 :B2|f$Z60JY`lv d%#ےС):3#@(e4_3:ΗIJMύ~岗9Q {$?{nb-eQ\[Rw*0Ž7tbCh|I/Do4XEs2NL*eHFCV#V샅5µd]~9aP &\/:/֮'h,<Ƅ%lgycw7Am*2ie@+V·.5=kҸ$ H=ȈpnhFipfoJ5;cuN䵭vQEyK_l`C1&cj W=\Cxn$ ?f70S(@ȪBlYSdș@w[و̣vu>+Q帨DWH()M+^*&Uhw>I??nƆ.d'٠:Ɯ aÉa sC0xvlلxDI@̂T/ݯOc!1OOQ]p[E), 'L!nl{.*$( RI[m"<ݩ&9]fLRfx7]34USNm7%AUO{{Xijѧw@9։Ej_1}@Fq̺Ad- wBqv+qJ#~xi8+jeHz/WXq$|',}kPE6,З+^UYw־%޴Fԩ9 FɖB["k 7qWCx"Fzk;/q{p xaIlXFO#+TgW97X{Wi†&66+l4C.f8"J)de|%_v".PRd4X۾ S n8yޑ eʃr0-χ  ( ϼB+nvx~l$X jk-UsheB|l"ا%=^68\eDJ#6*֓ښo^| ":nD,';k0-`ch^ơ]eə|81*c"SyI6bé"SPCTJ%^ڽr5h`Xirԡ%FH%=#f)*inidTu #+>ٌz` o8]l_ ]1<-<avԉDzNn򛎼cX4oL8P0t. 8F'j!·6[υqٛV[[$}4 zDɒ1=UHO ERYҔ9=`*O =:l#کIlHZj Yռ]T .BmM*A>օItʕzSYT(ݘy<5;~S_(Ӝٞ&}]fVe+,g8;t hl]JC fk^<@ʤ^8AkӞ\nR^OuN ^h_0Im\֏PUJg!HVד5{|ݱ~o-$tZD{#VZ-9(F(+׵^2f;-@ɺ Mɻj?h%9jU|+pȥp_'nWӕNRCia%I8N>QOwe;ʑ;H'yޙQ뙝\F D9Hm!VVwg5+9/a }rhIiYho `^jDWҰ115 ra##&KO@W&>@! kAUμ3{՚]@q^vtR._DlP[-\1Jd#3 +.u4,wsR@0ΝڑRZFhD2sW&uVKeWet7~ӿ[*w~"]TY<+P;<>7V>gUX@əܼKhhʪQA~rwm%"K3)a=1IXn@]8&S) ,f:-[TF)5ZaX%AQeST~|Ĺ#ϛ*".EP)JEji҇w7+2S^:n^0\Z|%^MkHHmOvETM.$6\'f8OSI?@V\|-&g5HסefpPFe8U1Y25+Mkqw1#T%S/蟟+L܉ EZ# 91s)^³#ߑȎ)D.ȾZY9.5d{(n4HZV0 PcK O6*[%Qp_QO^~]b.ZEn>/D. :]1XRė apX;ɞt&x `*rq.Z1\JиƎ}մ,]37 J-_!nLw!8_;KFLq<Ⰹ]Z`x o?~,O5 v2#9ޜkWfڙ'86HW o!5auϨNbɔ4?nVT8͝EM1XݗbJG }9i7A-J+&$I6A}\_![7aБz[&΅?ZV [ṚR6XBa[e%[dӐPrl**iQ%);D+*rX g3y,:Ń9<}GlO4b,!qH*S_rͤIogn;v9 L^)3xAI=+҇p&kl~\~H%F@Ϩ;*V tPٟJYUe=UCۧCۇL Q~G '?Wt'A;Be䧳t4!*"j&7X\'dTjr,sO_m׺%@} r\O? F|?׳^=jo4Cv5N[ ¼ߜ@M/f- fs5(D`@9GhKo// RtO:ΧD.Ru9!=|^eE.bkloFt٤1v`W,:ye ڃ\hd1jUn1cE-"բܸ˒[]T.K? :!L^(hxCcZFNgʨ¹2`%L_WGRᜮnaz;7iYxd+Eoʨ2ɘmЄ糝|EF$gt^sECZ$.b79oE}fmR!* LOD \V-$hKAFazaDާ M(xD>h$[ޡhC]T%9=1Pr+ԨўN EE<աnH0|5/\.FMIEG,-=2t&(Ƶ$qe| +[.UpM98*CIDf톪ӒK呑xKJ %+RnLg1ܳX9)^Fqw5̮t4yBXD '-f|f99")_vRxe%qNp)ڠB׆BqZT\4M\ɈhJ G E ʢ^?-ƚᤐX3LVDYhRT/CL'~[q:?<:>[#g J3#QS$IM 1f(/"-Bpvm&8'-ڮ'^'%QUʂH ˼DV7`^Q^)JEXMGsutޡ=2{npڽX^D- Re0άgrFۭ*SʌDr[KU g>#_"U  r8uwxPe(:2RjہK9 e8/0x]XfV벝QBtj[tr@M_߈d{LŽ1mlH- '(nYy3 d09DZ],Ĉ#Y[N%FʱEXJ5_!]O g>Awg琛 /ӌ] qh5Oda]av q !?$]Mngnvt$Wl[nsp|F P0K照rUS1&!]! @"M5.Ƣy㝼B+j 2q4XjNp_ayN丷`@ z=]gٰY]w[يzJ70L^*8g ^ѬSۃ\A|ZI{2&熥C5{it PZ9 .HuKLq=kA᤭T,29K7ӿK35Gr&e7/dE.n84M-;~3uW jPTrmjv0X㰗od.?by3nhU,a(15yV*ߚ"KvwҎ+|~,YJjH%Mn?5Ag.f sm,w0}" VܜvT ҩŐtK9OhD%DZe>K|1n7 :1A1n/b #LeVߛJ-.@q}2qּiNϥϚ \kgsl`~aO Z%dq jSq%#S}X|(jxZB,nP[[X>"s9ğ\/Ij)V}!J J|C FUekq:6-RZ Vǐ*};wؾ0)C!W ͥzߒk I5'qNǯF69YII[kR s}4fA |KTxPz0' f]?^AHEG[Q (S-(W|\:+'2+۴''ovd3\A*5zLADWtL\V@AR]˹œ))e)֧0*hwm9cMU׹Gjonŝ-j95M1},;?InF7Pt&Py٦G*qY BўE}MG},-iytmr **Rr݇8&U~2ͣJ`CdjȬU1<]IHɀlS[A *`(|4fQRlzS q{p2rH(Xf7wu$5tnO8`5_l3@_rq5$ڴ÷'>H7xNg g> .!(6E0#ٔhGVztBnQm|]VKk=*ԧ;-D"G7* @Ŏ~=r{cX$eMN+ Dq>QҴdFFdOe՜ފ}SQ]O~N8K!TH* 28e`K?﷨hӭ8kz6bAɁd;"ho=+|@s,\ JGc0Xvɇ=}Y. AwvdKRCp .(zGuK?u8E'P蔡-uwqb)2Fn^%qDr4n 8G7;jY$ڟ %D.QZÇBj-Asy;W78\2ꌚ~O"~Q:Iyp+R5MDbZ@ j9MR;ŲJ?a޸H;`sYg~mWݖQ (sS.v&ڑ✁b,%A脻ėզF]eK, _9vt~g#ri{|W z dc(] hO*QϧbɘBm)ay鹉?!dT@iځ4}^!͉ޘX߸FҦӿkS1úzEХjЎ4$NLckv'\(`xߘ 8R֟k/"U`$pC:X+"eY8:ɉz3XZ'FkR7Ex: 'rJK6kQAŽ!Tr:šn7 Wx|XEP_6̲4}†_'>ܩM HPc%DNqunƍ# RE'P绰FptcbC_m\f/D6໯D/_Di_bp"+{1j3]0liJQK,Wc^!BsOn0$j7fq3%]%3o`^DuDS[&D&c6gU1p6g8yJC' ZTz*H]J|]o=6J[m;mEmܩ i*'/~X/4' ХٮLhع OX53"@#]27`3O ^&p]̥JWobx8-̚ɰ:w1E.&wv+6MqrfG%ly.[଑i(ZLeQF%'B3*Zcun)DS-Evo+$05N Sꌓ=Kgn,7ab%C1CetAB7Q^'mC;s7N5Kc膓uPf|=g|yͯ)Ng XY3` 2֕flCךbO ayG Tp.QM\3\қ*|b=\~o0}ޡ#"dp r ux{[Ѩu#΅(7VX 6Ic*/ؖg$yn7B )<1ӽz it2+yz2stlm? Y:OkPUӷ:+4 vT:z?o6VgXLJ8աbLA0:{8h(z+Pa7щ=>r"neиv^=R`_:6(.uA_F;EmȰ 'gJ(;]\IѶ51a5E4gSoG9Y{}}x';dc6Uٱڧ|#-CcT?iO'PͨB lM\R$TjGhF>/tPԧa\(~Q Ai\Jz-57x&i%O3IT<3",mi4`zsÊH?_zժޚ hVS pܼgiV?\ 3ի?X:X>P:gn~Q; pz,%tsAAᩧ /WJ I 0KeO-PC"D&6dT㜰C);-/ }T^dz<4Ӽ3N&1Cbws%ҐUj@Ó+/15g5ҀFY7Ao}" b=v!r7*dXN*܂`#t<G;c wO5 MnUzc>ȷ,['I,C|?0>T8R&rm]_?dW0TJW]rQܐe+[2E@Mc5w=\tKMZLIql,joH"/`aprnhDXSNJ Wb4~ VShmW9F9`?Jb_'ŐuCU)q[M 7jO9HlߓoFe{):28d 5YM69+S8wY]lӰ*֊͍ 6~K)ZV~srV DRۉ')#5ٺhzF%>.7v⤎-Wa[|aU6LSx[⅓ tRz{K |[@ {zaD甇u|l"7R|/رB+Ullrš,QA,kDto)Dw,׎Gc' >-jxk.&j D蜓,MεRS[OȪ S0 X road%%HDًsktu`fka;8i>?NXON1)^dʶW^'D~OU]:A"]V L&{n7piB&Dm'/`T囱z-l__FG:a(6ƿL` ėLoW}cVs ,Ei\m,IY 0+>#%O&cr MɃ^|y4&\C{:],c%ˌ+ƛJUZ_^O)OǼtxG^T+sPu fw#rNS9'/TY+_:P bX' ax74a841ogA5OŘ<"Cmb-M7RSYM5ݹ`[+`^tZNHV N:LKZt{ b!|:RAe B?Gؠއ>Ps}؀3kbKz kka~ y7 Kxtm.ML>T ObvHH}:۶ۓsX dŽj&Y>bnFm=}|P"ZH,ֆoj_k*Z6>: 3( R(jܴdi155ѼGN ^]C2+Ȩ>)~ƝD+{}A1J'XMO͍P6[O3BQB)ѣ1JK'XG*/P=FDzZx,`J6HsLU,/\ }18#sFp`Crh,iQ;8ʳ\k\m^汚$+1N;m׆a5:͒Oz >fgW%0;;50OFZfV'SH/^`Xz֯',|=˾>8-8磗Ah;e&_RZs,Zy0d E=yl2Y_һiD{SsdM3ߖ?oT5S 'O{Ŧ>`g}csf wD?#9/gS-}S̴ܬ5?Xνve|#^Z4qO}#-ա$*qT]`k8Gb5dږ%A91O 1^(61l=~Xf̫)?}>'Y28BeH̼=:GI>ĘkMlFwӒm@8RWgBhά%tM>iw_,ˇOW![0!` Km^$kCj ՜4g ¨%!Ք\̶/T_ ށe$m,^Q$EvnGS4"(1>a "%]Ϊy %\p?\h pFFCsmLR*$$8|;~#Q>$z !,ø++;"|]eK;2j&Q"-?mQ<x`fS7APY; JqtbA4mۧNk[ FUC8,;4Vx+Q s{Ҡv .\𶐚CXA{]n(k¦"/ 0_iHʦ:M!+&&Y=ϟGVRF?|IO/իB-v8U,ڡWI~T7w"WR8Zo$/:ښz5ax[u3tx'i@%(9\}}>hq,ں|(3LMhTQxh$4h A cɞ .v%y`UZ|KR\<3b7?scP3H^=zbo&"'"Xk\b1,y]X׭#&UMwr+B\?qaڏlJQbAh~}m*򗦳̀[S㑽8fƲ8_~>&K. زJ9.uVSJ' 'HLT9zeQr솰ƔhIW*?RwK#SP?yϳowcHx}";[ҭw(w#WY'(qtB m8*$.j&kGJV[b(VR0`-g`R@j*R{C$G{q@x݇`EN3Cޙ#FffG2WR ==UI2/R X;w,:F 44 kMfZ13po 7I)6 c0}Zg)P}]Cjҧ*қabLMh41(35|=H 1n%v:{}NY؈ R\q6zء-"fEF/BLzy|0Ƣs0Y-DK'7 зG1MS~e9IѸ_@ֈ䟯gq@jذTcZ76;,KzQS dQޏVa7P NV<x 6?ًcdo>F'g=ew삨tC;jf2KtŎK+LZtղ{lo5MddȺ>|}4dztX=̈́:R&EG˓d}r/OoIӥhwۘKaǸ53+xAMOi3Z[\{|n{vN X4S2Enu9ҩtҏi/ص"݇jBeMY^Va9mqCÅ{1 z 9ƗzS?TH_b:7 `Je#cVXϿ/ }:ML-q!\ =05/=FJ}Y6?\q>;0l1Bsʹ@hnxE'9.>(3AÊ9p nG#dI? Tƃ<5{폖,rH4_L*0Y~n-  qC!U+ĨjuSN#mkO,FLVHe.C43bӃ] o ފbϷY[jsWxldRlIV6ePEAxTvα{S'"9 #_%sʨeo<o߲HEtB+HS&cmk!<p ٨xYlUj(W> Ǐ_}|ns`Ż2w׌]hed|2`# ~YÂ!SLyl` uqqqGx>O[S{:2e;˼qѲY4} -`ol)A<F75e؅ 3M_V=潏n*āK(\ TP>|ױof?Xk .EiI8i)$ʤ: ɟUДY$.eTpR;o'߅Gp4L WyyʭN?i(f0=Ub?xKr7Pпp' CIN~{ sܫ Zx|G.Gz(p_HK|!S܏[M@FMٟd̍^QV&Lcb`^o?jT\bS&>MwiM+Jb?XJ]H\k5c ΄){TB0'~ {h)T.Eʂj0$纮]0 p+hcM rvIgI6kT^|Zkք >/?QPjh{&@UߒX\؉8aCf,`Gƛ62%P6}浖GqQbnWQ\M !& W B,dMźR>ѯj̝y)ُ(أ}sz=\!Uymp ɿB)l5CX3r| Aw`΁?;)i,`mB;kZ^d [5"W#͐$-#Zot(>bDAq`WI:F[7qҳZpXRGh΢<ױ|H ?Y9pgwUB K[bUjث&xy"_{ť#Q쿧Xyg ͯPy".- \R.+Ƕ#Bf۩n۽ձxECv@!Ws7~1ԩSE 7VuhӊfxG8. T[FO}'ImkXYIVxEfhE!56"p / !'֛tGYb/0›dN ^m9KИٚ|d=E2pDxC&9RSλԽIvx)9jgfVE[QMlU70#8IKYV(Z<_Ayu4%A&PmGVw:oJ%}r3TbJy$:p+=l 8h`dGzcebWi7b:hM #F:5sQ"P8 bhe}3|aGW E"$dMHY>4A@Mz~_Fa8h%qI؆sZC\74ZOhì?F ='Z| k2 |xȑ^Nj1:كc.4;H."QU1t6KCkNڒX7VɒŮ~k{)P¨JM6Evx=  ٔz2>;ޱ'n)Zy8VR?JTXUȿjU˃a GddR"PepȊ48 *%^:At [rB+ʬ9^c !٘m+iîw@5R\5%3_f3l? O%t N4|bUpvĶhRxVj\fC4.M7ԡ6_Hjj.q=ؔi0KmE)&!✨픷 ]mOQRcw@T˻l E,lpdnؕن[JNZϐa?E7;e~)`f.oDQC;i`BVף)=H99Y ~^)sqc܍G bOAeg: Kw>LToZ#M\U4~0 ]*L=Z /@4{0ew^waP4BQ6kΞ8%cՀ'%B2/^ZN[=~ >o" iG#*o>dD͘ G Le캡J&aA:X(Kn0h8?W.OCR[R*sgeH E@$SCR9%[miI e&J&e pR}3$O-G!Itv"0ӏLQ X}n^J2 }/{82>i2F>0N AڪH :ĿHsZoATp&pB[G 7!*΁)~&D3'ԧm0}-z7ޒ-v v/'a8U>#nR/ <*rnCpջ*26޲DWl,3OFGFD_tpPmB9>0իbHìt2P*L*x 5̀w 8a9)cQS?Ű#o5l "p ɴnv,/6#V.{.Uhihzǻ#cyr(v@K ګvxL!z1[7`mЃ}wOʑa1JAAey!/&04XX}bM`ay#&|(jlw9!ٻ%#VZ.u$IAU*zlEﶔ E(bV^>x xd!dOoa$lPlZINZ,8ǫ^լȫr'&Aoi蹚cK5kIgt4b7@L~7V3*mY6ycvQ7 k?ܤ$I%BG Ņ_DB̂[Xh1z~g#B5" Y|ٵO >錢< ^=d˰|g+ŷE|i0+GB4"!zw]o b8x$,3F4o1p{]\! '1@~43,W`k.fe[e? z1bѪD +bV\a"S Й3*Cz9"s^Xxo/='\Ax %p;BĞ#d- 1oFE1^1QLW!u%agħ-q:kSjCvօ;-- moˊ/{,CYr.i5jʖ0|z ATכT(5|H!bM;m u4X1Q/k^l5 ӏ+8;2&`L'SjЋpN29)Eګtaa'd$KWlX8fjXzAكdh@\QRd8\Khe5d=|*>`0lU ^[*0;W(:XeYTKyXVB=,9oht)TymY֍j=t%,MN,Y[b[\`*TѸ(E=y9}%/[zoġ<3.ԲOt; ΈM4Ao+m7#ֶPc;t5)yйI=^v%^ JQt|4UQ̀*zK i ѡ 7E1Jh-hؔX{dm0ڑ#Lzʓ?‹{%Rb2LH懦sw9K|6~"fH9Y{?E&GC~`ܽE&navpQrfjr|f]xm?)s1ceo0|+"Т3e$&韘Mey ۲ZrlyB2fI#e)2˾6zGLۤ6dx1|,|O2Qnoâ+ݯ\WXTD 6H㰨+f@>>ɍ7v Qz ߹x/W+UE|~Dy2l/5^P Ig77nD*[tiDMr Qw4"O;Zr~KT 4m?NhjTzbC]euYѝ\6gCN02an" KG_$+ov@U gmZi+cC($$Ov/gatX=Qج17(^w ?(ݻ1 #) "xBR Si;J OڙXe]x&YdQo=72gz<ݜ")e +qj>n̋H0S_mO撐@"PX>9G2ဥX$u! mgQQ%h(MqJ{3fei_-Mr:INXKLp&s^}T2NjźRN~RA8U~[?+OC׻i<Ok3k~kvOEG>߃$H E͵'i**w|<&c2ɩVdȂ nO.M <2Ͷjy-mC6Jɨnisދb`HL6!}B}8T!Z湺XݩUt\В씸>Q^RI[y!Vkb, 8C`qrYL1WkGv2 N܂ISλYpuI!o,nØ}~PEKRZacF4C!-R% tO/{҇v\7\7a{ |.P97inFIQ5r|]yTH.#h- B7F_rmb*>aFBh_ ސn%R35}mi\!Eq^5'޽<8^>rٴ u:;WnqH)Ocr>Ut^4++ 3C< Dϗ-5]OQ 扱+td;a 9c'f̄0+5OX -Jxġ* 3-rŒ*WWv'ynG5U|<.T7 2-ay5/T X_^N 7waslL ''L-B|}\к <]ܜQ^Lo,6_zQѨ,P-UDË`(~.XȱPh-6iY'pK(0vReH 7f:|IY:f擟/8E:ccS#؆!a`_Mv }(N\Dm+s3Dka>kEĺ_wx_xJX6=EҖX/Bqӧ@vMe"v9n3@d8 +6ap3E{1zqm. 4DƬN(qjN7Q:P@jZSstHs g]6Eۑesz0^ *-s2RD)1 l:vgQ~<7>gSTe<֟DR?x2rh,GsF: #%8cZ'%8Zx[OҮ0}RethB VW+![1q+٥Ramtu\7Oo$^w+tAv5's@{Qվݣ(ڰrcW=}zG_]ŦsAe؈x- #Ok:[U @|(RLO. )u?%&,Kd*}Q2o#6Bk-|y@fX]8R\eB.F9ԕr0 EW!ڢ]%A]^&%$W MtPXYu}|]2@-d 3?jךF=ØQAR0!8:w %$8l%@thgAbFob \y2߾xQ뽿*% _M7x0IUڽ$N#`j @rK^VLSh\:Ʒ+"Jd#4zS׶*Rj| ^^{-Sl Uk/]eT7y==tEeFC oaZv&t;9|)YyeZ8Vw8DVH0Hc- $JD肢_J&g5 qZ> xv40lCVQ'iەn^ɭ}jaa.gD>'cl9+k>^*hgI[09[O5 -Af=?vW9=su1_g3%aőLwKi.}Z/}E4qpͤy%20íâ@vd/Xdgzh`40V5#_XdfA\.(P(f~=mg = J@>P"~M>a4xթ{J}tu~ +rH^\mb9 CIhL#=™PXǴ6\ iF^> \͔OBc̿K=)$LZ[?)hFJ{? Z"/p@n2U>`? %-9;eXl&J #9@E=_Boi~LwN u4 U$nD8'E>^+^Cب\skڛM0 6ɔs;6#k=N1_r 5 o֜Xo쁹m|+T2kEL&>I:]yg ڕiWU{P(qoef1Ô&PY.mDi4kΝOpVz㛎ooZ~.H/l%MjD$Dv3'JUCؗ>+#N d"x>3N_'lǍlx2?xH#W-!" OVY$I*^I7cwB(mNgdJo&W(5H񮼨T*+) 2= nfG`9A$3'ƅr.?ala2wDL"t6we[T%$r*V jӴ˳thv7Jp@B3BG»; 0N-+ x$YKl;,Go6]Q=3m4sw<ٍRdp_v񾒦e< Ɵ x-])N&|~,`:k LNFtBULΔ! E:75ȵlvr;6 P/V-ae vf.,a7ϤGpcHM҄5W'0ZgEU7_OI fX obːI>8qM/bZes1hn< XcIrݒz':^=z.X|oOaJdw*c+|k:} o˵Am_AV=8RSf{ 3}ĐI`ֱZyzw\KtFݧY@;{ʦnKÏNWO0fm7܀җz[&5F=*As 40CUz /w]wݕ{yA^sJ=$%pf^̢ Zo:f=wr8-4Q263ZY?ݢLpf@EEM}'_xh(,ՔFYEG*&QXQS}&/ ·xb/Uư!t,Ct gˎzj;8UaJi#5ٴiEk{u5Х}@FGguw"Waȉ;)V-b(xX\YP5p"qtBFRVr,n"c33Xn0BmS=:]zDvuΏ vg>+c&CPagkW'[aaP8h`Z2iYbf1LGfַ.(cuPL5fvG"RwRi1ݏdDԬg/o#DX4~.Az,<} CBdv7WS*#T8DڀwN.joP_~RF&I<7_,"a' 0*A{Y. J/ubPAv.s+VJjۮw]+$V3k؀KSBY3&i>7'R0ZaYKcY#0txXy/c]DZ[^+p$=3۳Fk=& d :6wL0&IѼމ!9_bW?s pBO56?EpYFI/Lg͜AK.B[ԩf߇(}}YPn)fxT_rx^/""7;D?k#WQ܂ Ku]!D~V-;[=WA0|4Tua o#QˆRtjwD(=޼/A뭇1ڡgR)&@}KW>y΃urR5OSWVy?N,EXx[1ri=l8OVQ\U3;>8:0 .M~Q]A)vT?\|EVRiZy `7L([V`R*%Gk (JhBT{K-) Y-MI_ c`o+_d-"Ik}GD+jNyGO;.rTzTnoz^8t5Qئn%:ԥP[C|c$=wLtpCCs tԒVyy'ZNS[Z1l&ٴ~劕ǜ@e62?uvŬm'4jQCC6f9[ư\ 0E9 ./&jC 2<9z~|(3t]Fҙ,bP{1\uZWhG L=+oULe GthtWtP]*N^}26VmTRTPjg[Xd3d;oT㴂-9u 23 /Bz6}M=Mlm4T ]*LBRKz֛k N9jF:m+!bIGf\ ݓ"|CuQ}:ҝ> NUm-x~odRnsao2dKJ'e 8~C+BAIdkU)/r2C _L>94jI5bB_O#ڂxPݕk"B%@Zu.aw8Ro| :M*E6=2Z\F]/y\f߇y,z6kn/Q ^@7_FZ3`g=T1 \M?X9Iq51Sį-ݯm;oé_W~e \uU&v B{?N=w#.3v×zR<).P^!g]t-vnO1Tu XS?dڷ飷,D6O*؞D|hr@]r@N9G,kӟ/0~d ߟxfv L`5Ak.k$S"I85 !!0|f".- |B]7s5%ϲ3!q?'lQ 2nExyXo 5ܯ鵖"31+J߸j\SmmMtA/!L|tKZsx-,6g5vXMj& 1 M . Xi,Wi77лG%*sxBɤ̝e(;ZQFEZ'%3 G|gU'Psw5OY|jvZIga z5o'Zm -gԛdh)%]Xf+Ѹ+!Sl)Mi_dlߞe̝^Y{V6Zs 1ޟ*$AFuh^?Ҹ;iVT`!O;FҸJTppUk O aqQmN}{usvqJ0dkƦ8Q  zhm8+9+J[6 rt#7:!m_ZnI$Ku=ȫI;uy]V83= ==Sr^#x@qBiOM&5^grZK1[lpu  !y5C`k 4rH{m\|D'wJ9Ul4<6s(L&Gvƪ'/un(=))<\#ʒ玕xbrXzf}SxN;W0{p oБU>޴ +|4ci:i-T | <{/(މ5M2> O3 dӔe9e<]͕!P1tluՃ~˜o|C;+WYG-kߌvkxpTUzC۠}.lzZ'u pp;ukL3YoSA?K9h$x`0E# i9< bzU0_ I`ä9jz>~Ю!ǧ.kLxE*;EgUtR|7 q.Wz]BQn>͎ O]y+0"P37{PA3zZN,@ڊ'1fRAic-n~(~%l]H>3AsF[aa(}Wd%)!i0/kLp3_u!~B ޟR!x=^On#hR?V6y.k14*l1MNLk퀔PR;_pwgAx0@%,#Gi^'t#N1DCea"T֤&PؘO&ݮi7Es#^? _Rhh/jz*e8>,t<άI=UByqG}(wi^>[gaOJ.cpXq{ WXZ k^PR}L=O͗Q!Mf=OuL Ba"T2AY}9}ts_n@rACw7}|6I״\PQ8O E(-" u1;؜&o:;\H)uZ/󰙼^*WEΆNcMm{m6/wVț;Bmx{WI^Hxv8APҧS 搘*xu*ݹI@^C1={ ՝qU@&ʘZ;YB&7>keXWu k qm-ν.YN\nEʆUK99>hJp&OⳔKr~F>u=ێM,]Rf^jQ v$J}\n.o(XmEBj262~mdbvN>́/+|]ŵWַ8F,c7GWD@ICs ШFz/JJ42P8;$yxSBtrqKltʡ{_!t3' <50QCZ.R~s@AH we+Fax9Am, &#^$G|36Lg9a z(y&-8R6q4a1_lM?l HL9jcPmlw^i<\d7C!"ML[`@nR6bw !AګA*ŗOo;WÃ.aSnBw#'9-Q >)jLeIM*PfrC}v!W'B}_y#7|5ի* }_^TGe!7jZ;2O IْY?)X\JD~FOx}<X=u%}1bb};l[9N5((p(9TS)W{}UfM~`K@J($ 㺁4,4$! D<g4gm!gNlrܰ[BjMܦv|.f.aF|NؾS@ZXcԐ ~GZj*!?%wS򁛓ޯyj%A DL2\MYJ~mYzHjcﺊgƫz7I>%i$֮ YD܁KP#2όP n6&_)ΛىF }8YZj3)A1Ҽ҉L#/.~B=-0`U~Z^ Jne uJ @/ж__K]nHiO!IsE6F2*>SϸuNo!~Vo%[Ȁ'xbmF%m41Z΅55$$fgF<\1J phK -AeCAJ4IWxW UL 4֧-͂eX<DžD:(Db+STbC :̑}~2Ŕ [ obD ɯtaF:kNɔ$=k(.vS  ^|81M0m=5=|5 J_?&¹jljaG-jSV) v>3޺D&Gu;LʚpE/Ҏ_~ 5rןrF* 4B@,S9%#gwт|„ߒ/T"lg8Y[Y3)xEVr.|o׎Z#/z&4_%$c/q<+wu 7t}>1=#?G|Z?jjJ{.{-}Yw*>9y 4bj72K tPn~I1N.㼣z -*\Ƅ^g+Л鮸vr+pLu% N !Q[p:L/T.f%5x)5s!)n3ESkh ίߓR]N(.5E›g;'7l n@^Slez!9 BÖXBY^'9RqQ36.N {p$%`DVH-?ΆowݠlK)aHX>/k-\]aW7`耾#k*nˡYń6=&#luCޤU?:l{* *(C^~<cB,Ac=Q!)H`3SD(?ّ>@$:B$Xڇ1}P+]BC{:IȐ!ig߮׿7,^8,fl6!_^\C4eJ*Z)WqW`0L@|>|)qȗCx"n!) ~k6](8y7]GWц}cYx.OW7*9Z¯w%cJ`,c.GO(seڠ]Ҭ y8Z:bSۚ Toq5>L.mtݱsp IgH9GuH?]Wiz J2OI&>.y\C1 |RBm>E<Xh4`eY Pŝ{~Zѧ!P8xeA1n>I&cocje>wjj2rYmzHcm6IN{);O/鈗R0_MΙS!ǂuϚ *bBφe ''{#% aRɔVw~>$Δd"y0 RFY隠Uƾ$#:{ eYocrxUyƹzs2 `8s%HӒ}YZG3"2V7۞A>?v?Q\5zۈ,k׬`Xn8^{v;!}Oֈ@SO]q(ӠNlNuJ+qV#߃"R13b&%/e`In3VK V6sJ<D,z@-WSdȝǽX't(W+$"b{Ą5n?S61}yT6@{PjM V]@}b7h:=W~':C[z#-:‹ Q$3T daSFG;$Avj&NZ4~v (kuvCJc!xn3&L0 )鱗/?Tc,ܐ<-"'E:[)rE.kUI S!~[ 6nPKK~AEUz$zl8/Qt~֣9='cEK2v )wIlZxt'9W5gpk V<;Zn9ȦqW3DwLb}IL+Q1\eR ͤQʮž5 xO\ X_8#{' 汦Bv֜%v Ge0>^k_iMt5upu]9^aW% ݿ-cGQXͩ][P\S(LG-@h=*%ltP+%aE"bhPj3:KXGx(oh&~Lz iǐ{mZ=4D hf& kƗQ!ڱY7Oxf#yX7S䊋qc0H)LqҜ>[%y2!T& [9NpDGjVa)m?2_~/-I^V֦J9 f Áxusb Ji!|=iurNyG;SK:'h/2g7<ʿy9n-ٽ0>6_͜} C.[gё\ǻEMMOyd貗(EBZ[&$WXTGcJ-;ʻV֌ba^Q4c9 {J@`B&ۢg$O[!۔\ q44*m\Ua}<9y ǦS\e$*[;>{Bbaωij[G:E}l@6,֖D俬Q DHOG}C?Wz`Y $|‹\I|Gh $@;x|@xn:f!喅Asf=/SR`],`&, b9߽|l7΅ O:Q54FܖSYB?N[lV4`h%$&X OrN̩35\fh2H+ ]XV#~7_DR@҂r1Y[ǡOߙj9E>n{Nldǰ/n$vdJ|`=*ct]llGx#[2˅]RvRܧuxXEYNO|81t12UY)Hd ٟ.jpMkvNcI؄$t5TJ4<$$]ᶺ4XFL.4=wmfbߓ<+y@Z˄M}2Fݤػ%=,E 劅) Jȭi{6[ B)OMOPu Ż7CZdp :Wf9{~2lH3dC[R3vt$S-qkKTD%@-HN-Nn` R"C KRFC\:$`.6,z%zDh]E 6I9?=ltv0#K}즷Ùfdp}f,o^f1iEA-^iOG. e\af϶-ʳ`r&X3n2]WOp F7(эO: Ih^n~`NYVTs嘵6(aрlېF]zGj{d$C9nofO6y&1|歹:YHg6_u!婮aӬ5qq YlSɐv֏zn0\*#Ϫ7rꗆ/9|0 U*8jJ`(׫ak5b>1\E98|7,4lvGz6vM dBl۶[$JxOgV\VTo)>:@K >!wkU~/1 >kE"h+61d?d#v:4PJSaJh+14Iƃ;!d'UɜaRgq Uvdӷc~bп l(MHt;۶a-\3ӏ-VζBS݊`UÇsxGnz &lKFH^ndYMuea!dIrٵu1. ` 1;@|3Nꌄ>M&#NpXW$)swcXJ[h (앚6#tW:jG2Ĭb' ܿ 6r%\!J~uَelKQ1#՝C- U4sVGߺAQ8%0PU.Yb`TLa3=1ځL ctNeOX$*83}BYV x>rHvZ7DbwFAl^~Zi/Q `|ɞomUgC .M!p8~GAO}F%Š;4)mr0"Sߦ^p71jT ܩ"4۠h(62HUA#7e4>0)Mbeocixwٛ98c]˻#5z:YڬȭMNwlJFTS[ L, 'N i_]cTzlYR%aDÀMGA 2bC_ԜyQ np޹0Bp~:tur hTC#Zpڏ H&O {Bre7˖ ac1gwu͕^ʋ]0!ԣYZN?y 9h`o{K䂴W~8w߁`SX0{/L0^XkH*''[[GMB`Ҝ <%[2KbQ/W[ɱ蛃"9ztD#naz@bpr6ͳv1 P̔N$ 9VJbetr7 K5FĎ+〲~NGHǁR P~k$# ':r6A=. W8tUR$w c[dZߖ>ka);I߲<=X on~B߇y7o=P.ĊJI;T"(9:z}.g+7q6nK.؆a  UqwBw}Q Wwsf!jR/餘rRYWkHO:L\Y}kLDT:C[ipgL?DwЙwI8Ĺ>$2#as؄/l 6lO !|hB/0s0*0~Di ޅkSҕnCTItk?`ta88=qgAeMv 6˷7ͥЎa`Q~:oݼi}Q\]9鯞ڬ" Y^ʛg P?4@_$my!`Wέ/}.kW&H^",ENR>jroUT6ՕT 4>=kq~BSPzn rCJ.orV~x Q)[듨la`,Bq!/"#z(LmIi;@Wn]Fֿw! Q ίh'P;Z9f'5JVU_+ 8I:jqzAzQAĶ\z2 i-ȲRǂfg?~<~GgcoJ=O:5-BWJꉳ7JzSy'IY@3:b+3ֱ7'7Tۀlr $, SiI8O}ԡ\2j_PIs. ҷpf$Vlf 5]ԦݖoaصQ(RJݯ\A3mԿ螢L@:oF([NjCҕJ48vO; aƔPC!1P2+_wBD bŷPu\690cp|prƶ4z|9{8d7&B¬$_"#icL`kbK>,|%Ta)ƺm.)r!/YkސsDqfؗNd n?[1xvk%gE&2㱳{)ݜ|.Kgco4#'rQ|JQOE!P ,wr<ӔZS% ;@C\--1ws+}Rf`A +:uq?E4"0rgrkήzKԿgetMXc~?HDGd[#~(֜-j,N #Y$F4͢g@ʋm;x^i:Jnw.\p薀sw{:Ns6.eU!4*uz:ia{t7;W`LPz}fEf+Tۃ>ݣ B*: c`N@,+8Aٞ9M%˂7an15%?tio5џr.r ? \%sD 57UHK9䤄%$+ZB0=FW*”6+IXz[\2 g˧0yx qϖv(kB0mr'` \,**)cKH@ŏR 5gr+v륫>3r>ha`j"g'TEP!_VloƉqv4!\S2X 3JzU >/s0ROB@Æ^[6 cC`!k CE:j&xtR a)v:Hj{ {qaSx-l gx/ռŘK`.9 ~Dr'ZF{h;)he$; __X,ۯ`Œ<3DDL?0zzC%Lc]6c"9ZgQetGXۆ2:{"r RGW3Q0\P^ڠdX| j Ӻz71tGI.O.x#fq9PDhFE4HuDwRr2vni^E-}(6}:\=&r1+6 sp*|Rk"S\0a~80'X{r[/27a <9Ϛ7h8֘ʔ@HTHL 4|R0ɖ1hhaגxπ{×|Do4)NEĢ`_fY6\^#vy#\{Iiẻxp!oIѨwІ5_WpY&3dz^F|*?Ⱥ?nosg 9UUȎ.f,_)NNK(i&,w:d9^&؎%GZ&C^8jD_c)RR9" 40aq8D%/~,4tN(ag6w8)zTI9ب#HmKp4]ڎnU  چ,uY-]9%ߪ5%2I!0=1(!㓊͑\W^'NAUxVWQ}BMb٨+*)vϻ5ACy`m*b D']!W;!كo&4f2P</ Ll?3п |Q &T=XDH |)X`gGlkoٍ*gkD_ yoŕB_a䳊HЏU¤2Ou?[ ~o=FRs =H:ӄ-R<7PtLI$~ t;/h6Ze98w2~Ȟ3ĉbkGd'/`zuҥϕxynWoҰuM^N c`bE"Lr"^uMB \vrM~dK5vSf6u.'CZo&u-B4Kk%Ck4!Pzue WӯobomN$( 3 8@ӆshUDRjtfզj{y+[LHœB6TdwmU}x{f($M#HRt9׿kCf)W4?!δ,IwI?|(o0u'p}9Ĺ5 5jw;A؛0zz|F́[Z`޽ ږ #n+ m[r==o_P~=6yOneG6ŷz.>8c .J ֣m ֶѸ!HJcYpjH߿Q﯒DJύT[EQE[8!'$nR]އ]&Ő}ā%8ܪC, dSZQ 2KhB&"54CதzA*3'^ rtfTͺQ6M8%U6hRe?&YM" hg֌o17_p.1fn;\TgP'I`$u#nq'nEI?8EN DOƂ*4y7ۛS`S]ڶ]q,X@K8XQZ$Z`כ 1ޟ6cѴq-gPpbs)ĒQm5rUu~vίgG7+4jZGoJ، #6z0:K$N@{yrqAx:YMS} >q$t kP m' <;`9 9G& Rz\kzQ1v'5R/;Bw>\6 @w6VS*|~^af͆.%}CH&FQvlT@į?$;G:a(01hW i I-| vBtحg%݃@S5-S϶319dS)v')|pj=dT֕QI:?t$l-IPϣwd5n!?:ӊ̂yDFᆙ-!7„-c8@cɮ#Į!Q(^5mMspHd@fqd*6j/o%fƴ);2k:EokG;-B(!mO ss[9h⠽.%p64ߋv6,qE&}#g&ʼfѴ;5 bqO6À+Hl S:VUMjB4bIC&%=,F)o)$CD(Fw=R4'>¶.R6\ft6=Zf(ۇVs2z.s!g UɌcDWRܭl 9N午<19(:mGHۀq~3D堶Q#AnRII7jFE̽ #-(?ɵ2ElJ#8QbY^c<Ȼ*qЃ*~ Vf ַ_/,aHY%Q7#?r'O4DMã._~9)8?8A*d+.qͳ|HũE"E bWӢaٔg>+a)S47_'L%H#y: K?~`Y_ͽE#cT0*ݶh+ajv5UgNw:CcV+][?hB!vBɦaw+z<:L}5GRN1O@'~l;4'Bߏ*"ubcO6||/T,[}:#{?1]b@. Uթz,5A\S/4VpTJ227aE Iø1Tې;0)a#ѐu!!. #Q uh,ͷխRɱ+z+[]~~;R d$(2O)x64n㯼ē7?,EPWw;cθG0ҥPNqe~`@8[? y_F{wCc&sYaK-BCeԥymcF s|Wz5Yӹv,c],$Yn`5bC~ҋ_x AԞn$ϼ*?FNMyr&ZA &ۀH<Wvn9K@(ͯ"w6>$:!z'Qg ;ߍEOy|W ~!Kۛ_;RDk Tuznw].hZ(W(x+g\f$b.E7)\P¨>P8/q M(ڞRV(e0EgukZK?NP8'Pu.+0;A MN\&GMB;S@[mFg䈋kMsWU1u̪2b O땒q&g*|qjYȬ h2rK^J$un;s]moLנ{#an 3q?z}UNRAda #W z?x*~@_t[oSm !4?.S>0r %nY < infɶqa3aIaq('NiGrd ^M΢7<*Q F(z H}hfuVBFVU?At,kO ,+޵@njL%]گ#u yBsc2DQPWhf;ՂFru$R2a"+b6LoAn3 #*U2}Ms[Bw'lO=hwzfCSjxPa#r*j[~{}˧uXhAtAG؄{ YVe)O.jJ>< ̙0PP+gtOt2{^v)Mz' d7G3S*F #)e4s^I^fKg$x)/gt.U/PL6^6SOT!&r@|+nW=S|k 4 %~~^LHov~鼹3ew$BqYA쎜LyE9L_Sz+(-̏Vy?/C+9ɥcMd$ZI{P 2x>ZNDJ&"o:aҁF=̔ۓV*弥)p1yC"8*0h5u@D„b]dVL;N.4Zboi8~㹎B $JS(B籗lB 2Ӣ-q;d6ˍDa0kvT<>9[eIp]9<[}C/Lv\xϏ(r'po%_( Q饄/4l*mh-rst7K8S4Lt2hC WCqCdkahTv*k}X'y6vSt8  T|NƵn~l TmnI8bp6A%anS7Fn oMJZ q 嚗'0]7hiٹ;O+s}@7TzNz*Jj D^UwbhanXm&d@}Kf)j3\Z|[0%O‰D3.IP\ ~[=m@a6]FA# ۢkH< |')548ܨOX%RӨ:N!_"wfn)Gr5'C2RLO_U|ƪIE܅LG= wrC٦IݒuSO>K-ٛpv9ubj3-ZxT~2Y_4-BCK:ʹIAHhA1+Kr_:ȟ)w&{f3$,1_!͸EyQ<}1tp֦[eH}651@;jL6Y%bRxx,p[[ "75FzBM)|T/3%Xq`tبX詚'(|45յ8GκkD8yB;swel 5nI/o/G4v״ؼEInq͇SaPUI<&̵ƢkqR3N0]2X#t;BJ-FS̾* 0ԇ*"|ea'>0QZ&i$ȞRm-V7*" 'v-y5E QPgR y``8轆5WDp دӄ61Mem Z?X T<|OJԝ׋(}V-N-LG)ip벏ʍPPI :Y3>OmS g^"9}-3. O߲b4NIt1ɫ@L. &Nv@ˇ/fnHeg^QpFA>rg\4@s$FT$`&A}&7YxuTB"B%r[fAwTmFw@A|JD1))J@gȈY$ZJEN7CUuMl1-_ڭ 1v6Kzb; ՘/rZ9ݕRT I}^DA[ɥnnG..@b \+2,X2#GR`j=BePmu<Ӭ .44|.4\fYBkc^ބc|[5rLQhozZ^ZTf󵻻)).  $ l1》qT kJ+w!$BdOooY'x-+ÕxfSn#&3V}Of6J ]NCP!Bi:jwCE2 /^"at\ۂ6j'M~ ^9m/ 0QpDqלYv=-= XJИ)e4"0E Uw! /Cz!h:eHΐ%㺓)m8t9[R#zf?TK6a?BpJ1C-+6J:(Moc;t=mb#}m_) %22f&̄6ײJf Q~4DL0FyO/Ⱦt edEs#2B@TәT " xĉtW徼TTM @LSxe>I\^} GkQ_(Wo:{P簳l lɐ 윛"$nd UaΑ4HZ2dvy%Qث D7?`ni\E^ZU!({I#):}*t|5ŗ z3˄M-} 24bES,@<~Irϝ`ȅ ǻLfC?eM10/#:XrϰR}petpdɷ]CR8^ql#hHL  CC7m<we%$U v!)ҽvل5FOճx$KE3ɥV{QB𴷫Bz )m_;y&T'2QQJ,*)\zpc;G>yv 8q'(ZSPtdMe5j 0B  q5_7Gퟏ#-fThߊ24/D FB.' qrKURl k}q܊Paŧx6t k撂 U7V6R'qy*_syTJ?kȡY3D;=C?]ҿ%y:,̻Ns Ob ђdTf*$@W˫j;\q>F ^]wͧD#9+!#<(pVԁqgrlF,^ L'@uų,J$͐H-Z,B|EC_)}`[olק p 6M./AԈ &JR@[YcwF]9|ݹ 1$Z4&)%l`1D5[1O6! tG|~Pp@&2$oh_w!lh8@^:I 6|khIݨ8[2fI'Ag{bAg;Pyfn+qs7 -aΤ3j.e]Nd/Y6*1{ڍ4ᆫ-Љ]^ҽԆ 4 ۰42< eU֜#KE DžYsقkbu\| V-YvŜrs]tWV{P!Q=GA;a2?Y18VUObGL?Xc^ lu]TaYێB (q#ì~E:anw{a9]Fbx?c̞8- veԆ*qvT^?ݦD rW8hdhyUvtyf ! )- -lE <;p6.*1U{/ʸx/Uְi-3wߐæR,n>߽W>7>&_M#B$']o}^ :WllUcT^@xhwtƖRFN9-c'N|>Š? ڹ"'ɡ櫿kgI؋e^$,WlU8U>stT޶k&$NXe?OcpJ#RPH1;v9oN:L?=K;e% ~<:tİ#]ߪYf5c%B6CET^o$<|ڕ N4 k,dth$D!JFEhh}m9@/cu>\A5dR3a fD2AOhumB36_lϮ8njRxwsZT-5 ^6A5,uxmɊ\cę|VT"RJUB4;ㅬQ ~+oot?ֻ8@C/ELbs+ˆ@+ڻs&F ss+(*IX"0՗>KEeS0=h16L $5&+#ƀ<ª NʏZpyzE֕XJDًSW98 3bٍ oKfs?Y$*ӜE7dKdak%68G`#;C`G_**p *JM|ZMLjP;rRktVhj ! ojsR36T]c2ds0Ukv֓ ?n$Ѹy0&< v8hn3p Y ɮ{R^[w=Dv" >^:>=%6+pd)uqq75H6B^0 py6_GMTg)@ɸ,(82)t_gZ,M8Q7ԝH2@H']q }p"!*U,IJa &2e!ټkG WSh;ЁONY3+}SfĞCAւ§ԣҚ)=/qIRof^QnSnQ Y.eLă-_KDx*1VMz2}{; &oK$Y;P E|["3|A^W2,f_IMУZ9wNum8!Dv'FXnzn$R_1k (K ^xòe-@Z/?AmYr))IqJ/aup3v,O8Xͻ!] LC}|? |Պ@wXuO4Q㡸UNq'-+#!^~V_ҶEORn- B=>pGE#\B2_i%s42*EFx>.ao| fblx!e߳Ƙub=&?P&tT%_ZKz1!8YͤFCjRfdq׳ez/0!ICpv<  ʡHnXx*]cri`AoKtr7&)#+>.M$tl#,҆znX;F]@q>[bM[>nUo$iy )MDLeXuUF"Yŵ">FO:Le+} ܬftt K+餻ڵ%!?K_KO^JjuK@F Rv߈H\Yxw(<|m|zG)1yR]fYJےYgRhuVq\ sߖ_TKqTHe]+*FIF4|Ti-+M;.j;t)36Պ:>*?4l@$ݧˡk)UĶ y/DQuFJrЅ &|NhW%$%ڪPd/( Z2_7;DKL73Ah!*T/USk_0Omu? a_7L5n9mVNslꛬUU+y>߈'A Qw颓Ua7=Х:rނ(~(!,<*w ӪMW^=Fp"It>Կ0d>0s骇{_&U3k= S9%-b<wʯa|%=+5Nxw+^[c:q^,\%W ͶW1F_h{/pu JKw}%:wf989>.}Fd$"Gm~Ǝt_i[E+0yQ 8b Nsxe;pŖ)Q7/$8bFfa]ohZ,n`F@;~f#pG^Ǖ#BM5jK %3-@g!$<ş:t~Ym.,Xp\g*;wHՒvrv ΏTyo˧sڌ!0".Tsj# ỸX΄CƱu=M/!-dF`T}A.wˌf H 'C.9z$8vB1L!x}:$)i #q(=_)5 7jUlyAw'èF?i-_c \ĜWCFO>"g +0E;J:5k\>Nr Ij+R묦7-FĦ;근ecGiT4ؑBe@F"-dnAQTe.r,\5`a@'#\lٹ~_9L|*.5lm9o®ts/$͉?3@f5)CPDfg"<mÏN<̻4^_" Gnt Bi ~8(1?ż劶^/ڽ_lUD?)3LD4mmm x+afk8K 0% "ՔPbE(Oso{<2ʚ`w+Dxa5\Eo@L"\kRABQ ;j\ "#)m7x*_EG ٞ@ЯQPf0-&6B׾7s F'/=CmQѧg ,誟:5r:'oz8賟.ڛ"^?/\foil>>:S5jIyJS>);ƀ؅C Zh)7Ԧ`A@Ua0p)d!(YbgR,+EZx9ۿnqKƀgL!Uy;-컧u2L} \`V0K Ep ^iWT(?\gOmǘ9۬jړmA2Xw/f ˰H.%,† :%y=8CO{侟Q*{*5*;2ev)O4k8.x§;,CTV2HٍLaF`DGP Ӟ5;|2f1}Li-e Y PFu5*ș{ՊUKj6ǁH$xSezJ8N@3+fZ(_$~'s()a ) .`FH]QVX]x{VV_ Vp7zl2j?8@U[oy5_FkRhivj1h|-$lm&3WCڻ\%ET1^td`ƂL–K$pT/"x;i&,:}r y5(ID=-tiq3, =?k]0\T#f_ȳW65o))J|ft1CЅ@WA,[5< @=y^yQ ˩52K+>т,cqPcV(BOfQM䲳yp-ebH;$zuD+CfgD0W_zK2 WؕX!Kq5%'Dݥ1p.@ |N;NI (=ʾц0`7k"ѰpgʉDއNp;s Y[%Et$90%dB!"n p@9uDcDylؼBd^e@-stmұ[q(kIe׌*%"/lUO(?/=a JITYg Tm]&-ѬCFjaTQ$$X Р-FIա~+HIvmy *}n PVC=M=L{*Jjv> @8A}/b [yQ(]T#$(X8kk1&`);PJ|U@ܔ[9g]Z3+,=[a$2;])QDnm%P&d'3p7@[Gyu)kUU}| rTѣʬk #YјP$4knHA`fQ(_K1OTE)NeH87H[;vY G[-1ڙ"A$rVɜ_#뮯Wa bi3Aa.恛׫ժ?NC EJ2=2q cIɘT%}:ό 4Ž'sƀ􆷑ϲ;+)U4ř^GZWc^ү:`l瑏'^"}E\$/s;=u2@&;?zEd(c3 NL{Gcqm3Ϫ~\!jP\hQC볚ZTf ㉨&(%HT 4 (a:3'={%> 8@i &ī%1PljRn1Ί5M?_£I:zT'70t(=2"j+i0K\`5+bx :6Ihu8z.b$S?rfrdm;`ʅƯlEcT0璷紱6F=衫GD|m);T\t~I䞾ysё9l+W+2A&}|8TSDWC(Tɞ3G\QYUJ[c]}䀄Ǎ?ob4 =J}0A-]aTHwQO8/FNFSPN[9KԾ.J (ۊO$j4xNG'p@-R#4h(E@m[~V +ԏZ].֚(Оee>ZEoq: - dѨVk|oJ] _Jg_yVDM*N*ܰx4ĉ9 H (+ø' dnp'NfzYMKwU[Ya$V"_r؎s7F48M0.aŒ;k!3Hjvމܼp~%G&k8;^'h[Mae3^H=#1;HG1&!!SC?SbE{J(q73aƗ}gDx9&2hS k^7$RW~6'2Hn1s^3'ayma%ډSk z73q%68]YڍZl `++و a܌ 5 c\4S "cSv/sӽ8՗y=42DYj<:,$C@@zxj".㦶 59]q.z4[zI5 }w[wT%NP ^>5>8*uGO^<>>hxʖ MڹM+ҿ_["Mzkji.q߹~щ"A $`٨ƙVY1 1ei(ia;&ƪU},DzNTI=7Eqn!%GKjl0q@WkG)R%x<"ds}N_Lp?bgd~JCV>A8YPfI!$kȄcR,`za%-wX"]3.-I6(6']ka!ŞqGdqD(h>ȟ;d)1Reh4>2$S LuFs8 Eov`J'%G`BPZ_` .'% i0Xwu:kjrIȦ8/t`ACxSl 8o̊*Z}6]GN5 },ԗഏ'FwWQ@pH8 2+୵"G7`[eW,<*=b וI;(YfD1񰪧񭹛Q毧AՏN c$gx3[̵7a<Ăƺ}vo.#N6\G=5/Fɏa-QSrܬfRAE>ɸ-^6Jx*@ 9e2w~T'-N탯$ঌ2/ER]P*k26 w9i'Qr`A+40,Sv\{G5G3E;ZYs. `[N!fNYJ J^wK|[Vvg2SUG/G0,te;pWi S7/Vd8;ǕFc98Hmu(nVS^y${a+?|r*&([NAh y&6Ȇdс-@ο58wg0>ކ+3$lYP JNg#}kԹ#Uj;,.$~n6^>)m MwIגttoD",ޝ Oѹu:yO=%-eORFh4qITCaF1sb {[ʜc48C?ۀBU2 `eݘx޸Bf>1nR84dlJP)JoS,~վTuufJqTRΓ {(JȪ8 Ή멍i@4zưlSR@ik]>s9hp+3#g`5b}_C:)©.bUβcF w/pUODhL\Vh[W>=g "Mku<Stc:9iAGc8GC;J)y#eh"o\K\F\_ 2PƲ5qTJg_;,EɵOєk%'DnarIdrLX&#BnX fHI"+IRS#y8%"yY2'nT5TT|520\]tQRpΝaJH9,^\JU>ny);ߟ(ʝ|r%WŒ_fܼE&Q7cȘXI qN嵥!:N%bAb*7A;Y {M>V .8L0\WLx)T->6m7<=Bi9$,TO^K%ˊ]%Tt( P]y'~H)(58V0ϛQUcSnB.=(N֜!$yϲf-ӧ7쮑4vS+ۮ]k0:&taٽ3 NgK&u5`h?Wߛ)t| ozIho_=2whr&gkrD<ۉG-rbט߲[3wp5BT.wZO+1K"ݲ83MU(4tFlHNJrv<;xcnkR2#=Xt{ \(Qb0g%+׎:m %?cc7?= >|k}x%rtr |% ˄/Um߲$WokP"DP Z-Œx'7 `fL]v"]<,d|;ݬJ Iࠚ]Z2!٭91`դ~ Զ`~ʽr$sZeS n,*и\~Bߨ" BCvxQ?{Ex 6sP^e=lAQ07+yyC훽IOxmߪ- {wW0Gb!\&Swn+}CըH<@tX|P'f1RL0j:%fap8-լ wf To3}E~+X$cD?*rlc{ţr<;^KK_ ˽ m%i3!]K׽udnb#<}OiVbh9kܙ K{e#KuC{[䎂eDú\E<$~@-39HCT 䈦U*X,+ W~61㞧ݰVk{ХdM2''hojmu1 O~Ǻn9#ޤņ&2 5#h`i#O?MXr*΋SS^vfeQ|4o˂" Z2yu%wU4OWC6g&D;ïs}:i4%} \yYPPz 4Y߬a8NvL܃ǖrG;KRaBWd&pCfDFu.%,+28 :`h a{so2M)HwK_lmE| |]S]~2le`Ũ)D ɪ'3Pe@v9czm B4>d<ڟeAWA+$R]ʭ-O}7ϠX(<5T5ؔhli ~냓JO5 .AM֙4n~Cת+"vr_ƿM.btI%/,QyFl|)FeU s؄$v3#eMi{B_V}n8[0@OxbyU4xccgZb&n1b`K+M~t<g{ց.$Or7U>G}w2&l }ie JR2XC<~W,핤QMycCgxm]! ( p vɝFvrYH#?nDw.kѕ67B_2@6iwWUd#č"%&Ty+ui|ĺnQӸWp';c՛qCMkeGIm* Eaٻ%QOETbؑ#ܱ2ߓ.dJ^Pҹw?#RI{ڸ?T`J !idT?VOu(tz1?>}teַ1Sl ZrF>RR1efHB9\Kc+io[6N '…!9mnRQTYh7W@1 ~ x|5<Vƒ^4k*D957pGCf/6 E|%7IMO@qȩϨ&7֡?3n6X~eei  ceW2ñ>PlZDRBN0e]B_55^sgޯuJ#!'1d )-cLJa}y?l~TR| Y;_}A OƐQ 0Ez75yBT;,Ѻ?OtD.(Z_Uˏ}VNa)ץ`'(GmŴ"T7W Y9g`s]T%!:w|/6~X A2t_5] E*8(0j1e ^OEY5$Y :0}kJ*l3CH_}g2;vJQkpW7)ȺrYklQ>]U5>Ңxvcj?g(^hkS +vEsC %|ϊtdNcKy셅dÏXTP4F9zV8Y٣ʩ-Ho;; NbZQZ=w+-yE ֥ZnR):녿۬QpYѨl8;^GXd Xw#u틧V^iC;U @X.8d n?R7_8'O]2vR+~ w8:IIƃʔo BdN:w;w6! 6:IR帹rL b$q"D;?aFKXa*&JQ7gZXޅ]T-sS2 J֊̓0[LflVH{Yt>ĭy=AZGcY%(c Yg{~L_ XJYfxچ"ypP'?Jf@pŷ'pU&\ˊ+zsQ+a7P#ߙlG Oݻ:wAC=eHݦ=G$'80D_ϼ Mqj6]R,yUg]x¯mo-yͨ!ۇ lO mΒxgH(Npg>pF[WnXxFUcy,:[~#k.+f;p;]jCg!@v5?蘪 s[F7d2w0'fdGgktd*:=p(ITgF%}@Dp)ָl͌^ жIN\ %kf}~pӐ7tsKFTO]H&굗Q ]>ˋ[gny7W$%y*|eMJ_]t)8Ɨ-7~.VCƮAٖ-,;MlpɠeTGHHzז|ss|ϒ~ GRݵ]A/,AOHw۔-3Lzmb:GR+Ym]= n,(9[Eu/jJ5 b;uaM;rQ!(Ά,pxWWƇxE=Idg#̞ȥe+`cI( l87hG;oN%R9D;0BVnY% C'*,!Dj@h q&Ғ~W4VazWOb%<ҁS}R{n}\rd)—1-#om[wB2c+Υ#vRdRLO0E!/D{20gR:33<;!J^mIqy(;E9:V&y=_+UK4]ڃ7f4${IOM8S3}).iYȐcQeveBxԱȬaxKTi >$6Ј4$߄.V#A<Z,/2X)uVUϣdAtu]9\4*mk2:ut7KS삌bHTǯ#9ƣ:ш)mjU֞]L⤊,X5SuVv̬LI5%D-bH0p`pimwGR9-)LR}ڊͫWM?_an̔WMoPOh{uAŨ3n $nW W4*%cORx;|hZ}99DDCw(+@;ZiyHE#SYG޶`o_|S(Mo1&2SS3yUW  Ltq"gYy̖J푞'W[WgPPX 5298; PLn/>(l%$&,Jdl-=[ d^.ߟ,7kĮ-+nT~r b]_e (&b5n< BKR}׋ܭOuZ3mvFl~JmT1hn=}-I26\xYsrfzV\~:%z*! gҭkQl"jryIϰ2e ?h#.aE=>~g]tm}oX'ޛ?1.#=sqWJN$`;0#eAi>x }V” g?/Q=}"180Go(]JS7.`e<+I#-l XZ@zx \4apr`=/d㗎H/g^2mV$K3wF&BE|>a߮yYh{6B-p~ڥm}X}߽ge 2`&5?d"j,4\[H@ L[UAڄuMi؇" )qQU:^sD )6nY-\<WAPZ/Pț:$Hu0,g@Ƶ֢!{-,]m@h9cFsf}\&%,Bux@A./P1p.bu<Pg/0i&ؠvڣj?k4mL hcb8@MlBV'[5_ {,;BFX_f)w``t|G]-P[ˑ+챃No;Qt$7%i)RkGdisgG>? ty,Hw47HV Z7˹*:0w0aݷ|25y t,c7BgW)кUZ7:iwD^p e0DBTcp1 QOUGصX^gOoI:2$}w98 Y5AB+|_=I⽈a\d՜?@k` ^JnY 2GRONEwl)YbCDz yPJB^7ՎDS$38Wye4"ړ(=!AgTJw~Y~)!HBCfiS;A5v"_PRt8ɉ'Hj@]^4ibLf1} Wutj]AS3(=&eXݝ(G(~XK#vrF, ` ?]c3HQg+vf^Kي+`+z*>J"?^[a\}O+AE3dYFڑWrh}).Ŧsb'HͩA/sPhn]&!`t?1 6JCgSpBYJ%XNڨ8.J^3)HiZ%7;5JZrHX67 t+~2xy+{!H@/֙u-9lVM #Q%#K[ ,֡pffVV~bY0$i$t?Z>ǠYyqa-9zJv0i4K:A\( fLQǂᑁma~f R6KR3 =S+?tsmi=©IprwpĿ4FLSQ'@V0Ƣ[ݳ[y FPTn+fڇ4~R)q!\?赿C-|hc/Q>MfsJWO~"g$L/RN'եc.`l]<楗 mvZs\cb7o F17#%'*)Җi~]I?G~6c@lh w,W3+HR% '<4h$oX$3IC Ev@ ¿-b`ٴʆ)s^ҥaՊ(˯.nYG%mJ;K2#W$p)oVhO&L-BP.TR=ǣ>6 dk rByz`uX-q?8[4N#xe;O5l!hS\ŋه (M,ۻ5ȶrqF)5:LJEQIԉl:KvӺQܞtAMC*{ ~s"EIɽ%ՆSi|?c$¸zni~}!$j 00C6߯bkٕ?Qu3͍wȂDzjRY}T7Y䨂_,=nЀ Xeؤ/wb:J;$2'F ,iTJǚy쐻!@0pa$i 0X[!1!lj(RdQ.\OrfY?RNJH05dζ(7)㉳EYrl jI9Rc znh@W.^I?u0d9~`t6zSb^QCcL2ҳ~FS,yl2Z If77mU], 3C^섭R2S),༈$}dl~*6BDaFe s>`=/unU/⬑QM}zQ9ƒX<n$ԋ |ǯ]jnOVuojʍ4 U>)VٸMN6[=0"gi {N\tⰒz=H+kv 8ZМgoz"LK o]AڈdHPFv"&ǧZClcpqM0mRto}[VHRƒG3(k1_գf(*!j%Ƽz X/>r~HUIE,r퇢P6\e$F de]- W~m>kYDU̸ +f9R=~z\ǩ/>(c( &Mw'']a<[?ؘ(5}Sog;xа\#P@F9EIOd+G.!x7`{x{&0ĕ%`bzty ѓ[!x)瓝r3b#=Ȇx^^nNF鹅`j(b&.$X}Km;BOԒE;,L4x P#﫽ܴ` nH}{͉-.F! (sZ9I-AMq)ܹʈQ/O?ZadIv9P{^ٞ7v!͂jjO(m8cP΍S3*#[S`#u,G Ky{ԀYW[p * #Vz|Dp+w/~-#r6~s70bPBbRz{;S= {ԁ?n|g-NNG^&kirU;pz#s c"~=pIj;t3sKu~L#*>SIX JؓU, F O=_X*oȗU`$dPSSYȐe*g˅ Re_染"X$u)ph=4RxguM_žWTF(1A |Peg\ISwȻ픗fم{meJbPc/Ɇ~.5~8 :)'>rf1G1w*m!V)OA,4'`'$L~KKevic' +jxvD\ >u )xK$/ @v˜bR<=ݾYj]62|4LN$nD?p#w$v=ߔc1Ӆ%`ZT_*< QF飽~oFW1* 7kձ<|Q1~'Y˾.ϯRTyfdcA2#F$#. 5LAu#}dcۣ[-\6J1|:mS2RjQu*;5 4*W rhLeG *h]IBA"m;QxOy=m#`c*)̉q'Sq!؆RH(۵;t-QB5ۨHv:=pWTl[t40v^+c0/KAxV-J~--Tܳ#~0]/\;l`k} zy{LoT_\-~s  Yb<Ok!O#:Tn!PFl+>d{bv!'6/S7HAߦ 'OyZ;$e@4&Ud|!؝T} h^ڐĞY #t75^4:zjٵTxUs-ʥ]^8L5f@Gi%&iyg0'٠/!Ok1HwV5 U9NC7EP8̲^-0IHS ; ѿ&fYPOb}ȓu`.y/HJkN%? lT󻁩,rk[LtrI\ iҾL20ʾpa,q7C̕tlR3\9kqq2:hw=Nَs'"^F;]\2L?X0;!EfDI|ȿ\oWE?37UB#!k7vf>1topӐ4GxD-5\Ppi#@8댖ueck7j:Kn 2"I:\du;CIT߰%|qd"<&mF8Fe/ Y@\$|r2 b(ZJL%.lSS Wʝ4s2FM3zz3kl{>]S]hJp(C ,U|$2O Iͻ`FoH&qp4UשIQl;zl䱥 }]jJS}obKtxh/./"h8q0]RBUA*J ADoxѨ=KaQ Pd]7+ӵ[hG/)7Ԫլ>Ԅhx-|2mYؾʒ\q 4U1bSQ9(2mCa"K7L֏?Cرf, qeX-aIS▹*ѩ[ v,|9&LetgJ0@4{[&sq;m=%}8MiHÕ/tbm'颷 η1+&0@zמiSF¯ʵ}aJ&^BJgA8tchrެuPr>8*H:X)%zgG~-#hl;C5V59RɝS4 ecnij {@ ''dHWAf}Nځ/͊_@^f м rrLp|XȄ_iנc%y9M~'#5F¥*FaqPd}Hk % ]AEU/D7fhcC('dQL-)|dF8w8MwEP$R8ze~2ďe i N"~pKxiNu"D / # MaOsY '("OF)'tl$aĊTFa_ތUz~ד4^!6e!b 1߈imZ޾p: 4zR=Nkй13}27d3W'ڸxtv墺Y \Z\Rdʼn3L>laING!_u!pb_/`wZwJm[LBx]q2E@:Wmt.kg5{9+, 1l<[MgYg}#Z~q8Ml(JѨ 79KB}_"%r. p25΍ r1#%*WRlCܰT;S7ғa,+jR."eD@ْN#X0b==ϰOO42Q=9WvȣTAIRbAgmkx߸תie]"6@&O^PMj]S>Wx:ϙ7hmsĈa4L,Ϣ =dSMpk@H6QB0Oџv1N{]$LXG^Fxɰu)BAJ8u% Z+Yq 3nܦw10 }I<[x&E*»$I>v'rͷΊg>',}k;98/D}!Z"_ ePZR FApf+?dng><݊Rv=qt̾WLJsOlB\~g=A5 8>H _AgWZyq5D-̡9ji, m|׏1JY]I*T^ȳ 2&#VjOR˸ ΐ(w\8CCy>'eL9{D'pTjgV@02iclOG ::>a|wa@eZu#CF?7N8uhOwk#PR6!<ҭS+:y,, ~ȺFwfM< EE5L$+j+Ж4U2 SPj W|T/'-(u-J]8 $wOxjit;HLbx DtT%Eu}ugj%Ӓ~Iv6{C@v:@nU\ bRsxk=@&#+KOȆ!t!?}|ρ-³fAE:gH)EhMk)&/w?]'>3Eɻ1F+ɔ0LF8TxJBNQ{JTKϒ+0>|]6'rK'! .Io mOs>lL=3…&LH=Dor+Jlۀ,@\ J(#DTcTp@j>ڀ(vovGw0߽s}ݝbS[&|/03w GaWNGd ŅF4,>+R[b:|*B|g ݎݛD1jĒ wi+wQòEp$ڍ8ekJf-# ,y"kk߶]geKT\ &0gA%県&JWa== j7]LDidoyL|7~}m&N`p;Eq(#B T^/jvŬKɀLia߉/M0nzf t4gul̲݄J6^HZ%ntgh &\X=#߰]Qk api}c 9Zht1g$M+$}{<L#~͎ҭacJC"o„Df(]7J^ 8%*>٠ә)y͛ ->^W&ܚJDl@3~v'>X{"ſy;fVXڵ;v/}{򈾴jE+h5f|w]~d,͐<{cOm." H'2F35gAKT/#mU WJsϷ؛`I< xaDQO| 2E*ku}=^PsObA _ +FNU;rOVB˺~YeɌv?z7  c(6N ]7\y PuNǽ4-bx ]6_PC:ݠZb(~>:oi2gI E¬4pLӏzum?xI@ ܰf{VV{L "5 ]I/_YN(7!7AW@׷˽g!ׅ1?/CCܴ1OATX08a9E(z|(kڊγq(0;$\cfMML˓-p \3RwXcH4 SmZ&R#Iq@[mrQee" =/Ά50m ̙!yӇPCYtvf?a}+k*OX/%x3kfФ5>d_cY1A5$~O `LR7Un%!R ,=bhuP0n.I/(Z.aoo[ .-tK6l8d_v l9P;{$" ](&I(SUʹcO>sn X=]sq{@Ky.\0lg9M/j#R;qórP?u`)UϜcHj& aNEK\؃a1f jy o${jm'e (K9"&z-m6ȃⵐ!VAqa' HըG%o5H繲FYjӧHӲuISG˯+6; F&t!|WTHzHs*2j?͆]Sl95|ط3TpWr3_ jS,J==%˵39,l ZI﬽o*PE@r3 *fy~vlc+vuAC"ph_\`p:H5x5Y۾?n&D7\hT|hKǀ芛pt/4C~>HgtGOLmݑ/11L Z %PMjG#ӄ)42Q S[~lL _((c 㑐``D H]uiU,lcm H)[6 ΙdZy@V罙<$#D|%n8 _;yd)c֭0:%6c{T3֥Sƣ7e 6hkK=Nj\y~_ 09.Sk2m]lܟ)/7F{8BeG3=~qc*+Zpjs4$9Q#`FG:_ AY֏vx ~-n0'ZDnɘ*]D:/TOw -a3\kQimaY*}*0`TE6!CVCeY~z#iR~[Q\=!PEQWtkۍV|W e2a.0^Jk , :A^:X1#C^+*% <]a<*z ,ARf($/i! LV}~mXv y/{ Oy%SAb M"k6p\1c\WʾSyhǺ|Ә#aiyED#nG?5cmi ]w/ r΃,6ɂNehDoL(ma~#qKNIv(Ģ66'bjQDRhmYfB1|7HgDZ.RIǹnl(䨺SYh?z&{d|1Eeҷ*%\ue>yS3#~8}vB؂/TFP;Gې /b|f$ޓX/W@u4|UAnci$3hbe!'t1܆dQK6~StZo}ؘx m%UϷsa- fֱr v e|+X=;8-:g\=fĕ6ص؁GL 2rDsa*\s,BłPzMׂʹV80Z :f<{ S YU֌jz%AP]mҔOӵ:OE̗f2xUv H5mbLؽ2$t%@}+(˶.Z,IքФx\fOIZ`#X̲}xd,<#i[ NrXc~f dnD(lY@ߔGFrk90 \)㶢''9E*I T Xk^h=Hx+, eޢ?閄NVd"c0=l2fF_y^&UDv PfEV;1@\Jһ|3toSX{ :g(B#^Rʵwx 6/MBRAZ4WǘYCvSE$5J#ӛFAP:jGpD>W9Phs}%Co1ִ*NzV D˝lL jYV7}WF*GN1`-uqa4*@N3~f*1zP,|q֎oVh*٭EQ?j-fT*tN9n3LY@LFɪ>‰4FΟRhCB请~0T$Ҩo&۸Ml^D:G%X ж]0͐|hupuґD<8.6̞ 鸸H)% (ntRrl" 埘O/Σ0zP d/6U}a‘ ᚟Ca%IHSUenӤd)AT~`[qHJ%0H:K}&VEݧ+нoBNEh7/s#ʺ2>ʕuư۟oN9L@{wL u_WS'KSn2z5/Lbrw | ׎az2 [w4r5bs ye =ר&FG4=KUxcC?Lx6q|mnH췒jmԗ@aB]Ĭ‘r(v"Bj,ObG LlpGUërvbrq{t,:px ]barb|DIizUw9Y)9 y 4yǵC8,s&is},)+9wKZ*enQ8dsO8@UR>E 0ty?S 4P\E6O׏qZ5Ռ&Y&_p2-x0䋯DrO .[]X_;zag)W}͆BWaF:40aGfi=zsrF ؖ]SShPYNY]o.'mK&Ohͪ?y&zݛG75S<MXeW== @/=n &^WTp$d \wdu1S<Y1Q#bueDɜL%E_Ed8s*ґ싋|?:q:WLRN-QDiVs=zw 7&A {~FmG[Vl&J *M"ߑ-].EDn<~fΛBW|#h]$i@B$;k +#I b?-;pօQvfP~m̴tNqM4a8VpqЖΙG}Px-x-MA.ڃ>)78_+ +Bc 4\cH=_| fGQ6&{OzT,Y b0?*/e[pZՙDlFJ-> >_џ9( X6? RٔF8vO{XQ]` dd1r\uڇlKz ո+cD1.6y6!J<ѨQ=ةDG6Zߐ . E0Lve/W-o$ H-j& :&,d”x^+[4d|rA (湊ڟ^|ط~9U66;p9muR@:Xd\wi (Yxwqn{ycb/| .A|vsVoaZ^T=s^'YBoSa2GsX3585kŜOXrm)_/"<";;RJժ_5Ϥ%SIt^ {(̀Y@6"ڀ̷)σ[ \.SrLCjgK *޴_ JNo,l(e^V+g;y)ܬ}0ݮM{jӷNe:$\jc)U}F%i tN*R+Q\v;j]nQF/5"x +\OꈢBU Iԁk6Rw~J˗f U:;ԯq}*  hPOwz(HFeYX66E}-Hi׌uneѡ8:ix"5ze3-- 9b|5UaLz6Ցi;{SBVIo&d1>4`JȠv#;jeYT3+J hrU¯bw׳+4h7#E-$ goC^#M#.a,$46% "4[hw9x"?1uO=+crA/,iV/y 2%eVcՇdkZEmyZuh3jAlc6 ٜua͎SGUp[ {W]Ң(.;)x|C 瞡d$F%:c\ƟV1q$~=?D>ErZقR[hyssnXڳ5 ,xh_G |eӊ|;/wS ᬧ↏jG1=\9ƾKyv F3! VBޝ֌ɧ)ǒuHHWeIy*Sf]\yKe&D? :^e("k4qen ~y2ᇸAjwS")Rm5=}*fg{6"4'w0~2 `Zuݠ'#v7A˴ɓaZD߈Z@/_XRr0P Cg[]C'1)XbjL\V[C#؉.IYne!rH—pO6V{X$%Y(Q  N8ZsguB6ٷ@ HMA0sW+6Jn_kiٵ2ٶTcy ] jBUC5K=^哀X%ѷLxA ved[^&N?\-ӊfEt"(Wɇr XWyv**1-1H|6ќw<:TMjs[`Q ĥYM7&"^ R^Fm4_%u ezº٬GV[Z;q#a$1lE8;MTK%,,y_⼪vw,i%`NL\xit7(Qᴒ_]ȅ+Edׄ)1IP5wfG׾uN+=X}06*eJCV?I9yi9o}Et.uߎЍȝTuAt*wC^9?=Ԁt?PwNe:s]پ mU̞n`qN44q'r8FέD+ ~ȍZ֮.?KdDP!f;M~EyÚPkçў$5s KꎛD_d#cm;[Qs#"Af|93j0Kjx֞5?-_N`6XMC>s.\XW  $wDCG$ah T`Tw"k:ޡ;`#&>tQn8'/pJ bp޾m}[k s$+)i$;an7C6eȶۀmEĕ~bvy@б},~CF3+Ks $:+Лdhc~ LJGkV;iI2}R'Qǰ.vt2I,=?p޾SQA:A*;N= Ɇ֪=*v{e!hmdV9%)9XV뀾ȁp\VE.k)!h4I%{@1~H I!?й! {H7Tq3Q2># 9>&j3!~A\6zfofeG6DXNmVy8eui ^1EJ;v(1,._ /I䔹÷)m K7 T%\חhe4&]aAIb׶432;Mց|NKp=}~g`Xh{s[ ķ;<~ՙtNc_+CÕ۹]KȊ.~ ѥ !#PlgPMǯaꕵ=ŒtoOpyhF~XF;[tɣvF/}Mz d镐;I9y=ϵQ63A⫑ {w(l {ןPJ/]J%9&X1ʈTZ'sdLYDAf gMV{8; iFz fNDr8gǥqVT9GRBHMVV9 ْ~ΓDmv&d)NMRN zl-u%o8$Dh̅v,ETxqPsf -W]|k {|ӔǞglac$W15~Vk@FяJ >(q8dJPZ ׈0~;fE.+U³w(%40To"aQk?!g+?s\;y,1Ο9Oα pСߝI<Ἡ)~i J+Yk 5زip 6:qEƆT\ vp֤ڮy 8?pEcxP='nb7B!K`@ '*W.I4!?Šc/ʣk}$M$J3$[Y'Om;n;#q}}2O:QO!+^<·U}T5}`yy 0Wk&ZjY=Op g8mRZBc :}#Y_EnGe:DzO$!  `VrWC?|_j̣tdqDm钐~I{ 6Ηr/@Q\;yar!MOa} ԙĦx#^Tv t_]N'1` Pδs]GBU`dt AEsjgSf.FEI>.EwƲ&ď7][*@^Ac~B3ZC2s[JU US@quR&A}]pi>x6\ |,<>3Сo/15}h9E.4f'$KS`\e>y ~4 1dI$.J2sp ""tk\%'2 n$ 7W ','i8^껾7k;:hY^) j`Q3h3tqt61j"4CGdI Pߊ^ȟ,A3I1Z!!8<8jɜcs$=" yb$y=^vo#gA}kcj*IMq Av6U8"d\SƌZrVKVӳ*t G$@M}K c>@ >i߸^#dhrB[vnK*V)|vcXV[Dؽ (2>,{2Bܬt I1kAhkBjDNl1@`&\] 4I!^Lc9F\Q ^zv7X^۝Qc`W3Wi`z>Te8W۸욌iRx?n=rD< {։Q/)١cY+{b_h#tym ?i!* <,vC):u u+S]+ӊ !@3IhBŸiA@bmQ`X9',TVt;J;$SX4q^X][y9SW@֎˶n&c Oxc/%z/\d9~6= ۠ lZ%m7]J%d^ eVcZW3 hVLw_rϛdM<,]+'MqvǢ2W8 uC:UOW[i4w_EgEs1QcA}' ZaV"ڲmHk5;㹖 ק~%cѠ(s Q>[ҥjO ­^#`ʑ"ys8ptc{:S^MkCC(O:k%6.k5hP::_Ƞ"ccf{*hTOeyQ,0gץeo-/ՒNPIܰ6__͌wζ-*ٹ*/uj rěuOZ2*&ZO"QQy$D#w١7$ '/r;>#tA-eGG:dhI֛ȗ 6!<qJQsfƸ+֧#Z|z iA=Ovb^Sջ)ĮY5 Eㆿ?[O!Gd񲽃V>N~#ҼD0Y ҭKD+u5 ?335/>Mp^db_[nƨb04Dm`Wc +!9ۻ$wMxndpJ:{nfW@bh,vSwhgNehU~z5(NrhhRj5A(潎eL&[{'.\69odךXeġ3ҳSM&ڃ~Xt yJiSX|?ioRš.)هHkFݥ51N2z \;IX)靂h^ޟs^ :AD1g;\9O!T~]#k*N*چs''V '-Mޚ%veqެ_EE @mc!͖c"I0ڇ -J ^&|MM$ͅ0kYa3$ʫIlk2L^K9FM%1=-vJ¶pl }x`]ƐO^Oޛ¤?=IƆ⡑6&^ KEG1Ar݈花UY8S5LSك5ړtݖ{J 7(0%{E+&j;z\r};~v9k`#30+ޜ\B 7uwk@B! Ou#lN6g$,YLf̵ Z%.-Ű梍vVj⟰vDp#ꃺU 44<$E4`pNDCֵR *Mm.JY3p6K 7:DsA$h_(Bi Vq2V)4MA{vfNJz?8Y:o\JG;wOjM^% <"u(K{tfb6n  0`H.W8EN3w[Œ-)Ls51H 0M*hv.IcڙT.] `?̛<*np {Ύigu5z]qe⋈S`}C#^L'=' Ys`~0Ȳ4ԛ,\֢L˻*&GOejl5̱SE;A{.kq$'O HO]ya_` akCRy+Th:Zw}WsI dЕ;={[h3a'Yt׼4N<~>*ZGͥ; ʈFRR34fԒ>?E+P64Ϩ[RE|8^Y =GZ3VC ę7s+Ifg~ we_@$S4K^3": x`*[XmG䱸GGđKv^޼ŴMCcCk (g*}J gyD`" &I(UshpAvy}|bGЍڨ7z9?(8L??Vbo-s욚*ޢ^h ? G3pd3ꨟW(Uez7^g%_7ӡJvI'w5v2ONi)7”!g֍3%D 7Lփ;ͅyh䢹ۉv, J" ׳}ë =ׄG?K^c,Nꃊ7qk_TŽco qF^zZG<*FDNph5`:gDr%HԤC/5/}]ك||A1+={1%! `݋.Ĺ,{B- q^Hia_[&$ߚw$W/q&-@Ncȵ)=lȣ/H_s!^ }|\G9hh$K wKvfu&]uN 9Yix;#pے^ #MF`jn1@,Hrc V=:YQw zpփt<_&.|:2滕zMטoP+[PzɨyhoTb&>UQ霘`V&éNݴ~1`a[w85fYyua.bԯt4n(&+FEHΫ<Z-hd;c 7 *.%bkR䄉 00U1Ւym0Z>M\Phk_ &C^uGrU^@8= Y~i!|6'܀b|JkJ#6|_<֤0.8T屢k`3#FdE2H5лx2fc -1Kl8 y|Ww϶J ε@/\uʻi QP1+MTtZ=A:ix>Ʈ]6k}L?Pl=A>)ҋ_RfJX&Nj=C@*mUX#tݵ |gɈ|\YrJD.҉P)LodM魙H <B Ta%I `p?+/@qr_2 j,7xĉǏ0s /F ^"_Y-n(o+m ,|c3Bq艺{/]&yӺmL6d \9f4Nܓ7R&Q h[fY^>b=ML5r>_]5POMCU^moF#uY%gZx,hf[\c/!>X$.P!wP_=21JJї*-uk8\09z~ &>K]r# [!o0IezbY.߱} PSIn $G;}ց ?RCEfd'PЧBnxau](; kvBNxxp Ѯa, Pa!R6iۉLVΛ"[vAlQ' 1 l&P_CT&)Z]b.>C~1Vcֲ(mݒ:HUMX7(v4Mp\b5#o>O3bUTbYkF0Q>z2R 0Sgq$8kƕEØ#дA5cꬷ%-G U24DT?[`إ E%;[.~)3TM ?p+]~# ćGo((-3Uy7v|N bAh <=-?a>j()~ΏÓbQ\>p}}^'ni1e%;l 9ocY/AOOdfnfY ʟh- 1~SMǯジѕX:b/}+wZ``- $0*rp)F=7AW ̕ŭKwO'TtN }Fw͆Dc Y?a4##x=z-SU(i/K. &/I&lOFhpꫩԕ,9I 8=ߘ*fXN:0RS㆑)/av] {g( )ߛ‰S)-cwrSZ&5s=(l23 /?STR*} ! 8ԣD{RQ}SBj6q]t'}ƌ6,Vx{Eh#@78(6"<<54xl޾iٗ& vN%!A{vl\ӻԹ$ı\UrI#RK J&2b%ﳑlu&>.%N|lƍbg4V:)~Mcv8%7l!jm(fɖ}PbADL@T>B b7ԴU 7KnŕSHz{a> 0)\lG1CJ5orɫRLCݝ0]꡻*hc!67VO}Fg>@ϲoҩh~(q8PicuF{Pv:b76aAlAllS4uNwkR_bůvK4]buZޅJetga#Z@S; 1D=dE|YHN0ҤEQAJy0>&;ũm8З68  rQtgQOLu< --48w8_~|U+p?fǽ^yBً;Wm} F}P?ybXKqgEL);褺B%,x@Z TI.̢Cm[ȁkjK_.ym#O\6LJg\NIԧ3=۽Կm,Mu4lUIeZ7\f#>v+'7y\߇ЫJFtV@7,J# .Odp# &:E%2!e&Oߐ/D\dU^;s_ƒRVTSSD>덁X.R̆o1t7ϻIz<׃]"v $o`GFDZ:DV\0W>u{ .7RT@ p>z0`6q0ӭ6Y_ۄ^;8 }Gtgt bVIMzs<֦7&e0>+v'Fwn}%iS&KP67-B$His ϑ#L#*n /IKB$cζvPVc*iD /"t#R(S:.b1v `ve7}a7W5uZ=* Lbk۬w7TYAZf۰23怛S" W͹t3yyk8Ѣ&K*IViTQ#)ANP3[3oA,d@Hi"zm4* _"*Rop5c@{5\(q3k({aTsQPl]vCuHJEsVV;?]Hq>{$1u߫Ht7XŮ\O986$R-h=3_k9 6d9*͈ E '=u5ZZ.Ic : #T eu+0\9LMH5T[׷ƝTǡT7)G.Hfbt$zWg"^- <3('CNUsV4`pB,`! eS5 u73.1?BLP?d.,vA-ꚾ{:W5̺܀3Aڡ4#,\ e-i|O#@|nVO P?T݆Tn($lFS=]ek7_H+Ψ=H07(f'E/"L>LJML=^6)ny ADqb߳iP_,1j,q(,|-4ٓZZCO=0vCGgoq62gkv4L]Κ鍮_u^*FW+;TfFk.@@e *k[DyyyY+P irݾkyNa^ghpE c]gE^XU:㓰[ #[ጀ4*lZ9aB,ؔc"4{J s[]bG iyqKYnL^a'.<2d6}c8i:Un0ƐOz:LXA柋_IHWDȤZٚFMU0t/0[1Hmߠtwm zOj@OXBdo89}]ZeS9f@tda%JLeђ# re,lAf=!Κ+!R4K:z\ZyAs>wyzNV㷅 8D$a+3ߣxFЃژI!EF8JPaÁc~iCQBqM0+RR(Չ?Mp{x@AdnY2NvMJJ]zKz? ;C tT(aNױ‚K r8OF&/jkbOOGqR*lsېWTвU*/X]:L' 5.V$pmqVhxrpšfVrNWveuꝑJ`O7̙.>wKa /L֖/}ь,*Rjʓ*iLkwHYt>4^JAjJĞX"r9*V;$#gF#rJ8`.u{vNF ժr=5YfRKhhcUkB zJeWxXTp%RFeMyE]K!IV/~Уz 2]{C:ǝF\ LFq! - FTbz }?(#ts4K(#l1s&Q8 :OBuzJ3R~a?ŗ-0g׌1Ukyl6(A,V X?+~Pknp QLx# $6.fU%6PW#!iT,J&!ՌuOr.4ױS-=2w~G@ARw9D~ ɑ+eBDw щjXp½yf|w&OadW,=窀'πN&Y2e͌p)c'ǁŞ=2B:2v->0Op'^]$&Cb(RӁ,DhcyZdaڅ(/ݪhbC$%8sdP^jHyp޵= v&ʔ_'&aW [쇡^K*6 Zο|Rt,6`7tOOcث)}h_s5QD|+v=pGOj6] VEJ\0Qy0fqH  -W5@IW(\.:(mdno~ `4ԿYlӴ {DTKPb6Vb(c? ueU@NxyV稅ŔSMrKvWnq8 1։c0`7= >ulM\KRZAlKcúyʨO0Фm`H'i9PIs| $*#V7`%9$Э ?{Д;bb&~RhAd[?{q pH˝iVp\<."~ ܿN-O d00tBU(iN.mo! Iho~0YUEV R,8Q>2vJnrrux=)_~ʻdkV;YF!8zysM0è[SHfs0 8壧ɗ:o!Yo->wD"#j^*Հ-/pZɶ& b8$-qja gK. a%?ݺsg5+k,"PZjampփԫ1PE !l_t9? &o},&u7L/䁺lBH{eV'-^v-*n% !R Ҝ\U.S鍹7;e숫$*;ڡ=I#]jjX!ԯ[m3pսHz5YNK,^8 Ccokzsa|=.sw ˽ӐDb*)C543d?;`]93Oa66 p|pЀ1\gNg@/LTN2_ uƠw''i(;|ձe+}Vy-nQuf17~B7S4eFDTw[f_.ԝe +5w8ӺwAϙ({a qϊyR=A:M~dlUg9l^B -BHĖT]~,}IGQ0 MUn/ ?k]s}ҰO+ xlXn(3 NOI"T-㟸sYPH>[,qqx5nVR q; i3!Ò&G~B! ^dr=h>Հ4QLTlA ,[<(^%90"ŌyВ;t/%=Ҹ& 7 J"o{Tݚ /$_]mf0acظ'0\}|(= 3܀)]s8iAl@K/r}e'IU7+B|) X_w-W-fǘ4-oaӂ 1t?/LkQ3GJ ʐ.]2=[l&VRUcÐy|U9*Je*" Eڳқ:*AE37m`4h(qc)ѐu?%T,cR]lX|<Ξ}7ʛzn&sfx3>!"z$;TlR)$k|jVP9;mYzTx=;u|60~B<6o9!e1<@ jsaddvrLv RjExDA=)*E˘͕!,ih|3<9kckFM}QHV~&vdY'zސd3[6LJJę"R'7rޑ7ݙx:'뀁򘌓.g֏Fw闝 Xj)iB*@5'_I^q&(B1X2brlܼuZ-]ZBI" M}Rgj 2/;tyC=pyM=kWBmoHauNdH3zj=JaR|ʧwjdmP[NA*c)zžK柰")5R۵h@_m*0ApA?7+lb92m Õ;Mogĕ8d3@NA!Łփǚ1nҺ׳VP`+Ct]f :|kӁۊD+V@$vCLy=Nŏ@9|{Vt1ͱ/7O @>px(WsX0jT?mn8j46̵2XM5ȊWXߺTbHTIi++:@/7H#و&Y]v$T V:ZuQy KP,Z2y\֫kf_"j}Ia "6&oU"$ |ڣ$eWl&+[K!( Ldrvkp1>~)E&-`-KcQkVfbNp^e~L^(ɨ Bqb7y-%t6㭺U`z8`vL9ӊ_ &Xq+9 /z)]LDO̵@Pwe%ɺdlJ1fjVV&//S~FMzO=1vQh0U=j~Mxq_LcT0 >(r.vrcۤ8iOKJwk:.B6.1^Ȱ`/IOCsU ď߸9- }GVb+ՒkRzcVY_*%Qtx|!,kJK]MQ}FkZ; o3_Wqd?9p<ЃA!!)\&ݓ%2L>t$y/o (fzMsY`W8BI1#{Q|k7W"} а_ LÜ [h;h(b``K"9q>U!H&|\h8!l>MigWtVWFGI-vQnP!oA`JĔ7Es.f׮9W7':b ¾q:lu3B"jGZ&\LK8ZNVedH{Nҭ>Wi)Hif|Wڠ`(^PS-鱺&&y,d^H1SoUB 85seBΗ[;VR j ^|6z0 սnV룟)"*Iմ1 sVDm'lltҺWF˦Fݹ%=}C+^pφ>06'nz݅| cԲ[jQxE 00K9lWyr%6ÑD/fnˑ 1=T[X{ݮ}!LM9PDRde(`N` 8Bm8EwQv:S)pH':6 ]uNet&]@Þ>Iá)$?4t_fA`BU/^2>99])[O7zk0dՓ#:,R)3QeM:G+Rx՘=o= ̗D_N^]-;,*OԅVJSgMoFp}a)^*8~ wQ:R,2Mpp>X !PJA,vVx;MnBSJ-Gt7؋o FoBi'q0f)*6"le ɞ{[ VFwQkئLo:e8W퀪C98"ֆ-_~ Q gNڇ5]{|J9=[gDUh`Vu pEJBB_sF$iYk-_IaFk\{ZHL0{D̆7c_,Ki M"S1OQ7FX5'?Q:#p #t?ƾ_0e*y'nIqTA+m? I%T,**o$EyivE&BW ?@96;yh7g3\UE*Ea2Рrek*JJLBr#s*# hZSBxW |\L|rɟޮ3Ey#kj,Pp|E{S\tk1X3'WHNƭ ,.Jb^h"}@? M *qGAɯIqX;7K9IoO?#;h5mYi `,>'tX菏u/ x({}40ٺ& (S/> إ*0EMYQxR `ߧ @Z慂Ո[+nIP`\`T]QEL9ˢ){'. ɰYi~{<҅G5QfA*})\8SRSgOC?AiGsD+gG&G?±᮸`1˨C >Xŀs1}t.Xt97r)wy4y(8 ˶,n*쿩E`&() Z2ʡ7aߧB|C<w6GzQ~i˺" 4CK خfweர΅K@Ng2:MujmRZܝMoW8q- yՕ-`\" KRhuXX ycPbiSVElDR,s7k.ZufXsTUQDD4z= i8U5+ҀƞOXSY@R]s(~~y m[JuFyU|lVkgð(T Pf[л?Įo+0a7C΂|; 76s?vLWVU4OX\7+M%J=v s؁uHw"n˚\9?Wu.|5±%59{WV=(1fq^md%ALB ~ $3tŶ)s~62G28 Ȝa]7z|h .Y}}b+ a=2G>iw;Bb(%(l 8D@UsSq~ʸUT۪9t JwR_Pp9lN@3&q?(F?O\߻_LUjape(+ٰ+')+$4D[^i މ Ѳj揣́@o4`uX3 "A6ML|-ZqUXB栤WcG5D v{~WEڕғc#pH߾1V&G z)깕3.6GtE-JLr@wga `̸f+a`V=l, s!}/&R,aضnlt׷h=h%\k,nLu&vMTHnM3A"g)ؽHesx}R+Uliaf~d( ӦJo\}}LBxT;MSp#~wi(s`k7?_/tނɵ1ŋrɡz {\OM_Vy[&m 2~&PZ^Q{T|񃳷uFC.&E{d0&Ryrupdl K{~\|L|=I.ѿ̄V095'EÝg1 ouf Fs< 7mZ5}j950mRL uaqo*SoRiuY &_!s h; ne'? aXEh 2yWuK͖i XX~kPzRvvC1@pl`UGL,!^֭D( f8QoE jOhU8<wÔ@8 '̈́ˆ¨A"@jMd혶Őj;/{ ﷘"! h ?'b%OUE'j(`>QˈæjR%E4 $͸4zu[a1Ra1sCUm(uǡ\-ݕ8V=Ȩ kqKf|YO>+WLjIQa= !A@4ZwSbʱ"i5KrxHÌUaֹizq죨̈EK;-=rE+L_jp9UװN *8 f0|~\5 SJ-q@`;!"h pVd1ފ>MQ9ŧg6&-n:3,,@qepZp8eJ@v83Zv̂wQ7[p oC-֥g/J>>%Ĉ dЦgX< z^Pmއ&$!U§/KG̋#R'mUV]w<`5Uux*Rp9rv'S + 1z9 tedS l2`bfY',E{eϜ4PƊcO n5=%nBPD fMr.4nQ\m}u6QΩ#9PO]H \nϽ֮ \j}[:Dϑ._Ƈ {[5;{f!8}1^>N>57λTwRz$<K5{{^zڕ$zQ c1ӮP/I ']-mz ṔciyyJ-1qow[Eâ5}D_**/ZnQeO$Ǭ~y^{L%3 `Hjs<EeᝦC:e (e$hO8T~祌۟pd5*BF 69fp8w.q6c>SkgCy.0[6R{9@` }Ҍ^]A. Nem8ԣ vlRf*][ tX>"; tx Y,d/BGŸ-!a6R.n^i ٴ諒݁-LPKo[+ܯ抟qo%sNDl\~{25Z&}XPlkӼ)UXF~ռfPd1FpԗHN,q\o#rAU5v@=QҀ6(fp^Y=x<<eSQ|y9QJY[쉶I|.<4Oz9ǔ zS"? *]PF/礛{v7v2w0 FT2"JKsMw5mhI<,q'$I{A(d ٿMg:*=BṶƜZJ1+|_A/ÂĄJMdraDdIBdǻkOB{ "Eۄ^8 @4 m aPe}qk%~C^![:`S5LiVvQMFf͟'حھgx,".Y@I"ip|!~_~hGܮM,ߴB+OͿȡ;xd$ `HoMG48 +Jbx?Y8|qxf)+wK@r[(dF*u#`va p"E<43͂(&h}yb "p-dd]poG֗:ai-wE"|;?zm寵 {A@Wy0/* ȘEf줨p}VCqd5%+!L{~8&Eq+|Vu_L2Vg4*`_TzAJ:R_"~?-G J*v3H-"H(22fL`i9d캦' +?z/lIg(e%f1ua*r-eˢGK,V5Yɯ hScQxPoQx>)m܎3N2&,Pt+8K2'?Z! [?h+oawUaexkkG.wvSȠ-ú,v 0y \]b%U*5^[8w(>K 8 \ L<}a_NAi ;'.ϴd΄J`͒6ӥQ's{QCwL@^!O2<+cl=Q*f~F} g`9k{z}Oݼ9/9(٘{Ȱ0,WoW BN@:OXcȺ^_&8!+1AU@-(um+Ne̜U;|v8$ @>#p7/ɕ⡝I.IRVX)']֧2ԟP&"OrpGoM[jNlWgZ^ӝgXeT$7uLS .ժP6VWAB % <&KxχS5sop.K ՞*‰Y*jQʈGLQ!fPIj`<\[$ܼ屰#R|/4;/ah|kwQs˻VۑLƞ_l ct|j[Tŏ8bFHҥ .m.av΀L7=WCוd d#)g+X[971z9w!a%عw+cKqD*X{IRUUn ѲMwSW:qDkrhN>B8Dh)Y;u{Da;iH4 @$hKEXUSLS <$jRLy2j3`PNbb #n{g+нRٹjt zJĘ>M_o;I!CK.0>9A^Ս=ڌAmC$h9b# *Y:⧎05+z}n ҄%͍h1شqevoa``{\g)ŀqS]*Bld$j;9lؑċc]+ߎǃ V^G M{Ila}k3 U= Cу3uu  #-?* H,- iS9cz""nY썴XLk@t"ή*>-)N# i}]V@? ~PF jCU*n{0g8r,/?;/bv.<D88g-3)?D`I4B ǖ[8qtL?7,16\ ~Kp$:yLԏ# <}dCxF2Ug(g~s )*%9󺱝x-6EFKcڡsF1*Cݘb@HibFvѧ^Y'"\Ë~ͭ</3SqyNa*螰ײ7d_tqۜz - 7(|JמwTM0g$-S?kҖv#QS1~&qE ^!r T%`!VqS7߰4}< L>Tw0"'{M>6 _C+rC+|AAo]l:ԧiAЫk?)p ۓ&y#;$?o]LHBRTle}N{/A S۶3Gs4&i1ÕΜziM~dwkhF>}"ޗ@~ =E-O3WD6lQօUq@tyf@-}Х|vF/0 j];mg`q|Nd9U*!GSuxVƗV&k6?vȮ6^xʜ;l2yl8b5}1wov2Sq{20Y.i@Zl*V/Ѵ>@ST:N }b?+aX2sԫ/`TMʂ"V ' jRIwvqP }c2CW{dxLs}дbj]g +#V_eEr/t7N[İR_;Ecp_.jt&:q^LaęHo؋ 4?YcCch7;58w2OkyhMd. /hς<*+i–rhJd8a ]A1@bjrO]Ms.CJO->~CF/i=!; Է5.[8X4e7>aQLn*ZOU7i$|YY:-wLc}0 {2^w pY6UouS-2aCL.-yU?Vm!gWbcaUł;&0OreSM&l''<1xNZr3m75b,Ӣ ȨZ1;'y.)7<3ýȶ\d:%xJ}͞D8Ƥ6NYNSR2o!/*#p ąr:0ZsZ|fpz) q3Zj~ՂǵroVޙ6;p] D,b(oj~&XjJ j&bA* QR<_j@ަxpR5(O*IRg,;=֝.2ŽK8qĥXc'OHOL5|ZN Ḧ́`_7Kiˤ2-&I#f&;Nߍ4l%&.°!x+x2kv\DvbRQZY/*ZeRȫT+jg4.K Qy:P[6U-C8UJHw2n|}l r&I:^)&{x5 pFkovxoёy4 i^=dnF݈3͠$4c^sm{`3W^`weGi2Hn#4Rl|dq_=g`1v w+f+d;Vԍv|'s|>a;d;Uzj@Tlv3,@0(IEsdx- Y&b2SUN|\θL-P2Ey>6FCmRG7l}$٪}F:&rSJ#I`4&{#$|Ie?aZc-"0M.s²V AVKJ Ttաgf_UV>hkXh:DNU+Viw{]tLdNc%EmBJ2(D|*YY KP R)?ѠR 5DPn^ޘ;^ˀ*O2[L۝ރ x$af 5)7v%4<]꽀7 '*`f̧7E:V֏QV& !%7·C Ȗ܎fl/O]pv8jEѤxJ=5ĢSzJ* w^hHbvhhC P q<dUX57&dn.V1#" SlSʹh/gbuÜv-DJf0>n],-ate%tJ&>EdɧѮY#ɡUrP# :멗n.c>̣7L>׾Cdz'@s'=l 0 c9@syfV |}@nS/G뢈͐dAr~o+BS $痬d" >|\K{[KV++o0.Ցńk ]^"%PF{2wcbBA#+}/WX񗋴M̴E2nܪmƔEK)6i[KjT k #i 3^91sdx\Uu4aySk"/Kn~p&4Xn<_xfx v?7T*N*xxt`{e|6vrc0D CWTGowⷤںظ? +x%td&)gc [R]*"[< (S9]#|ŌZChG+ N&n j5U&/^{\)qH{!ϛxEA`/y)үvZ^Rh*J/QW'EPV̟Bb0nG7of9NYhX='ք$Mc!QbUP'\7DMUOZcA"d_GD48E&Q߾ʄG G0^޶Ǔ"jAl*{S mAN9CiM̶ćP@~GQb$εi`MͱI؃*+[x_h†ɐm?GU}[5{5*Wq_Vp-8f!cBcc WPjiMZu?@:_T rJ`cO[3²L6͖L:Krj4uج5o S?0^d[sT$ W؍^:b &Ni:H GA;5׭!1tq qw[퀷12tm<9g«%zf_{SH'?:[c;z#FVuVÏ"\g^z~[ }s[n .N5àPHV+K02;3aOeTe8KɀM9sظY׸Ip{Q,o?vmq6k;rV BϯSUVx% ݆YLDIYQ6WDqaBg$jΫ~G/90bdgF#F`lMvy`p]b0-_Us3~0 ;cĈͳu9 Za`[QϳJA?~Z؇u:uc|SBYz>% tǬ*{)}!?t E<~1ܠku J:AMt0,/"S^,=p4:#"NOW%G-\\3Ay&N_~2rnP pCϿp+ɋxnXPCG~0vzIϝ"qY+a._TQmEW .Nv9Uv?2A+|n1ڞ ͫ)^C ^Bהhh>VǴm&ΩW8{ ~:L+tDT(E.TH:LrõZi2Zy G1οi1Mi1NxM <|4K[4`lp=Se;zcNj $ 8ꣻ1ny[>$$rqN #;'DqH`[8ĂtV >{9{ɷxځ}툔ŜhLnN2{-wT;_wO=mD$qvʉ$C:>%JU-EC% ItY剢^l3\fL$;7P"*^T8EmFЂcP>HŐ7s.ʠ>_ɳB9 7(Y͉}>:m]hLPRXp >yBo'Z.' W?]y>|yQ)|x܄09`nW"Ga[<z lWw ;3aMUA`=^O:rq`ڋ{-qaK$Bҗ>꿕R~eUQ6mgerlv R|gGQ/:WϙDm q:H R {"+'T—ZmXZa-?n Y!/yCMQa_t]-wNPa,%0}J96 3DرvkRM`h%NJ!f[NA`[3]0D/f֞EghoO 29%=a_Fb!}LTsMxd=-&v`C)X]RXyxJG*ꆠ^QtccϮ,!TEP[jY,2PBc¨w"M{6e9̌הr i렇$8\\ ,~'oE>Ϫ<3jctM 2"W Zx/A,sC˓B8fKO6ò2 iLFMM`y?ۿ{""%AYOJsV̶aa2iU!Wi9i_AZlYxI ~Kt|`) {޶9"56wxlŮït._X<?uwp0$ofnn4)UI*7'I)M3fTxBe=V>6uWA:rdح!@M:Did22%DB\}$}rqf1 rDH' 3 PHjkA{rpX1 $EЌ֚$f@: rb0eQa ^Keg; {swq HB%[!ȕV5ɈaOp+v@HxpG`1@f|~YEٷDZ.Ev>ؔd<$R)o{9{Dso Ӱu8Z%!Wg"x}ֳ$/vW|ys7k ,L劯s5EĴzel} ^ap<3#T3p.l𣣤U[UEGlߕ]ಬH .H]FKk/X%.w?e ػ'MX$cQ߻SccI F ;E\fo=2*59ly惿Bƭ9Bɓ25&(xIEaHUXܣ!Na ĭŷ%j¢f|RZ=PEsp\,]Z _)WϼVzyS u1Q5+Ŧ F+3`!>Bwr1=aQx@]Bv>k5İ0mߪԈ|w_Y]VсWx<%G 4ÜCڊ,k6Ƃe|KRV;%TUbLi64ʻI;p[|;$ngp}\kD_NC8w\K;p;; MLZ^˥zPj Ɂu&aOn=]'/*sz/t4tkKJy24te`g[y(%e ևcKd 6>|':,e%}7;LY ’ssL e9V^\Y@Gh7wgfd<EsDr2'62yާMA0nBwMˬ6KX"IOf'I+n!TBɨB]_K9+|czK%-80XfўNGzrK7 8AD UP ZT(3bJo0`x碒Yi2ASy?4t)pE\oO(#kŊۗj%=.xiퟛj9eAF*V_Tf]:MOXh & 0c^ac'$,>~k|c٪8gB3VWV]3]&qAV2ɾ݃q/+c8QLvBϖ #kԕZRokG 1cemְfxl4 k;=wjlQ+"vwsHP}5;-isR&T0ZP$fZF:Do`w5¥"h~ $EVȥVP(=5D,r[FrTu[42v/k3Wx~q߿)驞R׊CVa} ,fF0 ~9FU;gKCdedzp& I*]GeiϤnGDП/N,/Q#zIbh= ]g?DoD~dbRM>mW@x C?xYl:zphtz۞d1ךFGVox2XwC"713Ǚ %ΐǽItCՅU5rcJ~$ewD;_cnXt2W/k`#q(|Mڊҹ '#;~k#-FItlDZhUw`{ k)lP "5|&_0L `TU_wu3ՋuOpWp/$[K^ _d? څt>4–ΒK vX c:ѨDPlL,S'cnF Ʉ|.'A [pPKIQ}% o @`< uljQVXrl1}tYc行oUPk\8RԉDjEsLcym_GqIഭخ=ƩRR%$!s'AӲZ@x'xwq?F vlɋ!E~R~|mr$vCWyWU؈W`;<8E~K%m`x̫r,錤ri8O|/tXh%7S}Gi .~֟O6Ln%nǥIEz~-1z\LeF]5Tn4! ęÖm +*^ʗb3v $|@]6zANBJn9 (]i[<dNsgےJl_ƙwfVJρ/8{"B8 ذW6:Y9rߗUJ*=Q4jcwF44B/硽 DNu-=U}+ذtV*XqV|g6 ,`^\e2K>Emepq-W3M'aZ)`tEi*垊( EH[9ݑ94:,~5_]y}Nԅ9KԢ7Hw;Qt-} =bCU 㭓bY`GIU+  vu:M Ϲ;iiY`?~/єņ̅͌ 5'[ +E 9ƣDr$#qB]zwʧϷRd+&EcBgc%|1:g6LX.[8[t³ߨGN_lLD޼ޥ 2s%ÝAxE35\#EA;XD>N-*FhV,"amKFl&n (oxZ]7L,.67SM+.;k9'L>;+v~zv׼5D4 xLˡF4F#UMZ.BNeU'I0] |x@J3vLĚ$Jp4"P`z;*zZ%?Л %]~.4h#[&N'3ln$fcbI0ixbqx=]@F:{,bbha#R? 5!6 coг rRD a:`PScǛ؝m=\̓6n:VV,)]wNoˊEw o~j~{c <]FaĈJ0{`Iϯ^@RLq>/̏NoFZ u b@.;>רl* Ԛ\ േ:!Î#؎Ԭczį|F_PXB^Rc?ШGy% {iz%.=6w?RdMD\KWqޑnX/BH^q7)J@1[?/RsfDzI:a{ҝP!8$En!{`D7i13%d> =cCSt*ھhw苭9[)_'%u2"ZXr'hlE5ePD`T8$Ʉ~ A3yHb+x ^e AcF YkM1!. ;}@ťcIGndrWbr[<)8'gATIHOKc-}g$͡q!IXW&PQ+Q%V3P?>Ðcլ #:޻Ŝ J=$n}RMb6/sTCr&, ]y{,a/d3:}S;*w0fe$.-0?ǜ?8$w|W$T`҅g SBL (6mBh_! P?J+C0P@l\DA̟t(<Q&$DgLs:M+kB{Xa;@[j 'k H#ɮC7GglZ0Ɍvj+{ <%"=`(xrA'YEL#B;E ƪ-vU+5kӉ<,)kN*Tv^'ViD9l  [aF *4w+ߦ7 x)a{(+ ]:!59S8aH+C~g6ryX5^ ҎD稄ཨ+SDo7%`ȮVsͳB`)7),a6.Hciܕ>v_6Yk1@ᒢi\ 1L#Y0 C L,"3r,dὁWqec.W`Cc:!]yg2, Jnw'Vy0` I)b;f?}ofɔb5H1rg`vea4NHY ē'q7"=."=6qTsi>ӇM̪ i ܹyzEY9X#`f8T<# ~"rpw;A xa ̽hsigL;1{oȬZ:3bt  #‘,;EE1l 4[×)W`-;HY1 20 @h-6QISPi|gn+7c?؛6xX,1=9yC.- ;VkQj K%RX$DóBT(jR'`nKKAf=NZmË=`Biu=}v 3=֜@P. ū]%NEbը >n VsS9|d7T ",lѹ鎩k5 ktwq"< P~dqK "&3'n_O?"=$䇮{g^->wdKk0b(ѳ|>Ij1Iͭ6If b-|cfb`@217 .աGQi_a`ȵ"#\eZۊSo` gt7Qf(7+2AptN9ii*ve <+H2k`H%fFp`-Qt[XOE,&͊#[PlCz>}#'[o@DjIaW ,Q?z\-HVFp `9|LStNcd-kghYIz# Vp@oGy "V,/VQrq-l^]ua:*tpj3,ΣpE a%x 43::;-q43LD|{;vdA~eg68D Q^Sxd3LW˩Ŋ"vSP\F5(P{qMW ك':"(ʅSU;>{" 'N;:C^T0nsQGgZt\ 򵷓L s%'[nfk.Wnl7To5>٨}?Rw]7)%L גwݦd7| 85\G6!/٭N\"VHeEK!p ۔<)k~a:r ~} K #3C:3c0/Ք)0+`8U hﯡx^s&0G,7֔j曆uYp|oRɒ$# l: ߸#Vk K .)^}ׂ?Pm8s]d nKU\m\Q{S{X^OQ51{0{4$T.;^|jיKD +PG뷖W+ͮ}@0jϕX>TMRjjٶb][`}'ɤ0]Hjխ`OKO-41ƹPҶLn ;sFjgC4JÌr|n2(b%P吷h̏LϊV InpFig>_kx L֌y 6MWRɇ l|Bja퍝f;l1G|EeA6JCzSz 6GDq 96&-h{pPoQ7ʠ} 4}+4$d|*L?Rg ROxn/<}8KU17GYe ]WTęnuo}yۉޝ>(+k9bW.*sg|6%6&X\l}+u †'m8y8 NRML#OonJ5DF,hO o\/%c/_$tU"_uXLE y! P,*#oHh'9^3hulB;G{{g'Q6R9sAA&.T.̩dJOESLJ =Bg5V 1c[XP4w&*oA BV58'rwk8=&姊sYpx" g:ҵ,+Q'nu3n⊙q'e6}/yE%dFsmBיvʠljyY=S#s7%Иn*lsP [$F"FYdm2+l69vti]T=Rt<Ä}.'%z*O+,Dݗ_ GN {t:!_=wss ݲWa/ ˃#|Z%ȔY SLLy C ts[1E:+ vЌX3 Ny-,-\z= b{pJUF[DkKM1L Yi:W5s:|a\ĴI ^|<ρ4YY1g}ny?JḲr4DJQn^9e<+1`BpЋZ&&8;֊̄S* ;1Dh_|*QellF<~iG\x3唤Mѡo d6( Zq'h(X/ (H>@-.=e+LCJ6ǔ'/-eBUM534B|}UqeD M'5̂_2a zo"JCXǮB@:~IհPVfT(Ȁ?`Vtkke[!)qŖ{HT+z6fǨVU곍g[x0EyG$x<]ӳEV.ckVE@nrd 0Oڊ>徏D?#T&wγ_"o')M\Ē̬mGd%B#a04Gz3^vԜ֔P> d# 6񙴃%ŒSZR;cV~d]#!G'< :STRo~K ﻲpܶI'w%2l\20p8 wxEJ ۩d1#JG:OC~ \g=k0, rQ8٨`AȢޟ@dƆSjwOz)/N ^03✻LWJ'+kCώ94nF7zi9(Xݘ幋<1!b^܆ZJtX*#p'0]9h3厐v.L#2Zf"$RZg\IzBi~F6́2 /7Ƃ v6ʼ?pYklhoѲ ^@D,mǶA#YYTlʌ1MD6 `:q\cN|TQH_.]+`J'~wB_~&Ájݡy`y1e*s!ꂢ6pn4x"3!* X =ҟj1T0=UK:m}8s&ſ_N58O@h@./~Ul8M2wF'U{#_ƜAɵggڎV1QkaYtԑ\>ƱചF\34j8QF,znQpé~R󘆤L)v6܍]2N,d"dp@:W93]LG ~(^2dƪFO63!^ `*AQvѤ@-\5j k<闶Qi=%5,0.ϭHRTOˤFwʜѕfCͭ[VE^Ɯؚ>Bvҩ;X0m _$3!Ɂ` y Lt3Kl&+y3? yRR,'$7Q}.a#PX P-[%0D_~jVsolj]^Pdu#)LEVE&چ C,;Ro ?K0z9fg-}3h]ITƴ,ɺ>EMـ|!w-^Bйyi)-u1E9ֵwէw N 4ŝsRmχL3|qN2j7֞ /#OJBN4̌9t7ȠZ+^tvR0)G5眔T^QU 6mU4Ⱥmg?r-hIŋ`E K:*"FeIH<3Q&oNF92 Wbp>LujwůC@+rd1Dm̃㬁HH#EHg]hՖtﲀ-(k\Z]Oٴ?h#Օ2DƘqKo3pǘgfYX7dhZ(>vZ@L)Yр`.d^wv8l|DP;LMUδcXkc{<+1n(|5 G53;3bM#cDuP%ca j'ώdey8'{aH#L@U@ a, P9AGXžl 4L@DȊW_} >:'$2G7F\ gYyͰ yKQznWk73 ? lfb2`%E?q Y;` AkÎ>; euYf]a?>NWZ3"-}xfjy3z;L!W;mkH謬Ȉӊ&f zB 6āM$]:]܄Lo076Da(`o6]czLUKޝN|b'%&='˟#6FY8؆d0vE0\ZAj4\F?DŮ[u=qaPǘ_476Y'k:,K#6kXy,&^T62*Q$OYH[쉝p쪦OX$`uMwd'/-^lY3i8t C3LN GHXbסDg0?ɗ#֮)874]1~U0㨃C<8/P?Ƒpg@)KS@=֊h&o$-7̇!(M_G̬0_t\ l9LOҿz[3% 16PVePj 5n(G2{D 2`7{õJQ>̠Z*>;'үNS|H|'(6p,mk,$M[.?>U^V#Km G_Bh% #>ҖgpS@NU%oz 5;b^,L(1a3rq2YMtg.%9U}q2I][9xrQD{%KSL㶐?ti<kfk7ñW׈'V˽%|!rc 1+ƑTJomf#J Ƀc'd7ƿ!ZЖ+ͪm8FF }SMW>ξ^?/\BEPײufe߶o=LcƏmlƒf-H bpF5l &b! |y"V\ˇ0/I;i\?d6H 7Ξ4Qil87}i֐Q} 2xA&L7g|X(s9lXgX»x.(>JEGSxzbVikYVn3*g;I*9Z P-mgme;0Rфx15@|=iגS56VI`671m],aq&WCJ t73ƅj(YeMzVjm6ww"z(P<'v~#l]y_RGFZ# +nc <˔0dQ]j1i! + "DI>ΥueIQ#Sv6.gM0qVHijLL hO- š:e̳(> "B>;3KeP}v6Fœ{̣{Kx.>:F9F d=>فoFdsE=h+'5b#ѧlOI!醋9 I?h3FqqG̙^Yejn^̝|GX{/k"2upI۩5iRZ >Xd3"l.k-l+x̼9{a٨(f8{F%xN{N*@rr UR#1WغvZ~lovTmr43,nK';!'dL: ;9KሩvG |ci6HW]vnG3G& 3{}opH1y] c(#8+.(0J9|وoݙ|0m_3M^;-;e-u'sr>3 n /Hx<e>Lدx0%Di;@{(JQfW^[C5AZou~)7nʺ͑ï}\,17~MڑyNn, ùMxD?CH&nI8} 0]1* 5?E+(GHimy]k\p-/**/X fxӚ:(:":@|>B4!xVzTz)KC!]aD tkegۊl*xaϱ i;]|'Ѱߍ YաDQܩ:'VrUy˓XZǣv@wPXb*~rje]rPN$;CCg`e%+eՍogƐ1ƶbf Zޑ#q_L"3F{OnTn %=xJ.F9ikPex+ڥVjo#J&p>s[<P تerJ3_+(M%aہEyNS 4s?)ႿaG'Qc+X:J|VZL#uT[U_l9wSg\QGiӔL k 0X%v؛Mj5xv~WŇ&as$!h4^X,9Wsܛڌ\]X>D ]Sh\J2 1a 8 ݉K[=!TG\BIE'qk(Mw+~Oy fcMvY83<֊8$\+'6j]Y~ {tuq}4tJku+qq2~2[Ĵ&q;sӗ95jϙոv+ ^:N|c7&w:Žc. UInS.z;HX&Zj[OkvgU";:n$H&ʗ@v8+*R?DJD_2ky3 n ׻RGQmzήT{sj @:87Kܟuoܳ; N&IJ~$A?ezQL>~DǓ&6"@P'sfoRvA:oAR jԟDLJ0|<p."_z+wh@*k;8u֩brOȫl_JnJl1 L[Ad HuIh?6С%~G *V jڃPo=85/d謇y]xK70DkPʩF,a&Kkt"CA3|x1w4c6l_ՏbJ%B`A'J! 4u!9x MƲp}4`M9p) N5*7lU(Hj4 >Rt2RK a~}ۀ[0Ve۷}@ZN*$ sAbQӾR2L9xdCL[`EyFf\bcӍu`NX$Ѭ%cBaG(J h$4C1u9.8O'i: Stokz$¸g")QxHg˗Fa{ЩzjJ(ęJc6ĘiYPQ㛠#_ڏr?ũP+ %N.[Y 4S;zsbknqӊI+\kL1;8~n͆+To˄et0\LPt`t$Q{Ki9ITO)AAzX8$u[QKװ m-]1?|S sNo[W?vb}˯FF ē@bαGz/z-ޱIo1g6\TҏT1PrMhM,8Bf_bv <_4E+.~#$c#5~.7:fƈY@378L iyuOER&Bi:({ 6=\~Oi˗ttJYvʈQؿ`MqTbFiׂ<%=lB*l#`1XF}2B_f7q389 P_jBNezO&蒕%: faf'W9D%W$7 Uߎ hg~DU`̸֊ZnxA\X I؍:U"o냂]=U0l-fqLۀM4Qf6BZ#$>WzWtO`XUgae<)9m% <ԽZ)@JYʃ&aA\uT Jh"]ϳx)`B""Aũ4L?F}'BWl/Ո2}}'Ֆ1~}0Cü۱K@X  wr`V =%G"Bݑ8Wt acr8Vf5~FD%p΃N:HcLC/{wߔi;6@x+#;hWe>NloVs[0xfpWC8-24GdNW؄aXJؚ'4:,&5o9Dy}qC_cB2t9!PII/+|`>{WxIv|sΒ? Jhq߭ⶼApDbd@:uߔ260tpD^> Z݅p6^<$c,#M7Aq֑CiK˾ XJ8~ƙWsAɚS^@on :-t#֋@| /'A Q忊o]y.~} f)]W)1pR\}c&_4 >Wv5 FE|$K&do?TK^l \SI7}@VWڠMbi[<"Ph5n,ia>A[]ؚz.k]ddV+]͚xgT~,V`B\6]}Ǟq )\dvEf l.,Ͷ9{n$t XHB~ f)ީR׋gϜ MgF-_K,`:ojfv[ְ|5Ɠ<NQ?no`Vp0kD&(na ~ka; TAs<ʴ͎O\e-8hJ|ҒZj)/U!WY"[JS+x]'UݰU_=OMlZ u E"iP1uO{NF)0U1ORTwݿw)ە&U`[6:&>PEEWk8ѥ unԗLɄ 秿g(fvv8%֓]cp=· lSǜw-JpUj{o*ZnGiUYFL |B'9dEk `;J^QQ"lSc! 6*+d<,$ՠ ;"]}5դc F" ~0 b'*~|޳^w!G )ak돩j͹ȆkR9'ܲB妿cTDgo SS*zUCz%96v7<#_ [_3)9QGR C}{jSo FGlՇ=D `h|ʝC:Px%*+U&ai24;7o9`r ɓx$u1e4@]Ը*\e)<,˪'m9A [PK jsA!(/oP#YhP~HU`aU#3v ~f;K;>yC7~zi8IgR}"L QmzB%#uz~A>5:oiKlAmzTvu&˚6jldBjI}7jn91O:@i>sDaYGv8)pԪ=#yJh)z"4Z~c 7+\_Ie{j˫ @tgn}[QD 鎫YzxqwaALxImgN`Cno(=%PMsdX .BFC;a* hRҢ#T!oH\QP<}ų*aH(Ry H"a tܲ&"=%sQxi `E6TɅW*7GIuM4H1W-6iK8t"pbՋ ..ąo3P|G-wi^`.l5/3uSc$ּ]ҢH?iT6=4i_;&%pB E;t=;F,`rJKͯ={zrsnonA!{Vo4V% wN Vf^1sM;@0U#[+0RS+'yc &xFKָ¤2GC3yHik޶ GU8m7>5/<4${jBS4woߓɼth:יUm7? *GRPNm3Dԯ]+|Pv`.novKh2O&ZޟG"Qة#,dZ#plhov}+.lW>J4X_' }5B:uͳ4uU\,vWXsغ`Ѣ ZkLr;NLfW bG~*H# 3LjsL l aWȝk*d,ĵ:ݴfXpk8A (7QbrTdokVN;ӣ[ⓙ ~N6ٸe<5"6cyͣ"tQOOFtP9Åmg_Dہ#XjT&qYa|@)i移g!)L3it9?)bC*n'rV$/ʖR駷;M%bP~{yh^D2-Ôj)K B4I]$w#CAYDJ;9f.r+7 =QE`FҐޗUGQϟ:T4x qѫWmDr D;r8@_c11AV+ƈfytn j}&LOm;fjb&'<)ʡXuChJ'Q3KZ ebGvpα R7M>ѓLx=ǜ+È/AOئ*}@CY64dW>#'͗]xI> \U+GPur1qL>1t&%'iYdcQN)CP u^9f.DkiX#d1 PTj,p ^+d6*̛pMӇs@ sȇ,aHxFvUo> hH qk31o%4MLs{̚onjn4\1z80 Q+IfspaB/fL^P!EQh': [ac'2½R[Q] 7{)6A bȾvL'T? 76Op 8/{wz!8[Ҏ~Zk<~#~1^|r4FR;3G:J9R+HJrơP3aK.O Jnѿ;gxyDW#lM'MHy ?[ vw%$kٹcRVN]j(ޝi~R=]BGԒިrVpw4A 7Տ3CYy`]w7\ 6-7_[㣔o/{_Qxy?Hƥ]r~;Cd>՜QHi6enJH͖<6,_r|@ngFiII[`#iti#+acF VN|&!}j)̕S|:Ƀg KyP%8iJ x^ 1W}Pj+CP@H/l?E%17}ʙSeJOރ),svٵnqΦ ,\ş\ѩo""3ʃ~n&p ՛K7;2HN18H|TШ~grDN0tܱptVPL-:z8E+1V^%Y*7ы A *@h426Z䎢">%Sk|.]ԏ˗BZ wT~ކ`3 »N612SjzE!IW3=B{M(]zky bIl24àX2nrQ=m*WҎ$d/?!WL LTk6vTf-ƑqzGXc&ch U嚖=knaJpSt1?~Wz>IeBa:d!-}vWW…{qqi7+Z)ˆa,hUTA$}j4uލbPH*Oא}wz5~J2B޿nҽV!m[bA`{`6Y4-8rM>ۂ8 ł>\'+*{5(oX=3^gr܎MdJ-$~L'Jr|t?`myߍ UV_j}fqC(b6Ɣ )Eu-Jdu9I\9Oɱ%}ҏvv􂚱<KNbxhM>?̿`\9 ak'QG5!M:MRmb! ;QsCﷃiw}KݻgJ_ـqR{-/<'1Sǻ1:zZy4HJG4Wi$ޏNOi -R-v D!J}[d.f{Ig4c%Q;15!dHf{s#?f\V 58+x'EzDڋK &Unώ^e9qB1O/p*l'qI#fvpU]Xxd5с'bShL>Gr>$mQxN}`wnaREĮ/^4ոcΡ%&tW~(*} uPpr<4u׶9#^9KyYP aO"^)g*mQ?%a/zzc/#Qkpݔ~&@> ͫs #O2f'EB8FF~ѐNocnl Ł+nMuP!Rk<tI KK˳)6E a: O.LI}o]2E FjfnS+cIom%z~y*S۵%:'WD#%x9aG{jw*qz)VbӦUU$ӷSoKEˈ$F~z=uE6vW_YFd6GP td+:?:0\'P]U-4b2z"]J:OUqp?IhL^FG QյĽ G@$`,K],&Խ*R60iw.+6)!~=ķ)gN5CE|j:i`11~dw!FSŐ#)Dhо?ySlMWIm|ݫՀ{rx@.ٶ:׷?*&XeT[韾ӷd3)痚:;Tm>dKH;eŴRtrfjͣzzbW̫\.&Ń!XD<9P5o ,>C, ՑO/JKբۭSk$(qZ2mԩ](R}8'-ưǥ=ڞ+f% )CCKg,G_%<֤3#MWXWڇ"ji|y#$*Hq$Ob^2* |_~hlf-s%c'K-8K G~ K!fٸIYԜb"Ȕc=Qױ@jL*)Q#mo7w~G7:g*{gFH O4۸f;QUiy)-+VdW *M.SH˽;LY_MYwA>L!ќ|O,f]N@vnc"-6wՑ0}߀ْvR=YmcL (]شPmLF&xP LyA<$&j]2D5Hbssr]s* ƔKPB%o H،~u)%mZe=;5ݔ 9Y9֚as;bf= [D^w.Xr8J=?Ƭ< ]&x35skBU?=˰dРyI6,,xfJ{\h᤺J7' B-HL(r3F(@WJkFq# ^,a9S䕝wEzO y₄Ճ [q+Ml)ÁH\ꐶ[ߦGE@8qb1;Ǜj֕l;b&I.4S:❓72?/}=KW1*Q#Zl[}uR-#4hR$@WGwڔӝ`< =/1Yql/3xŪ8G Eެm(6ƀޣ_(C$paa18P#8;bɭv7ik.O& >OJTf~2:Er\x};dسW~ !0Y 0BSd[L*tՃ~v!#s菵"/I@J%/%G.zմM=W2Ϲ&V| ذ;x,q'vھ>6 c}Vθo"S9 (TǾɭ6vn`ͺ-][ OFHu~ 2k`PPg8O$R{c`'m'`[a:0R]}9R>TǦDIǂ@Q< D}Bc`.Lx"WF*"m/L-)P+P4%L#/]khmGrJ(J>!]Fu[3lնIv n,A?2z2* >(*9<-2 zğ펆Jͬ#(!`PRA[wpJTe`xY"TxCZ!?|͒Qp=B JW{k`'T8c_6HEӊjW4T4푉DTڶE̍5Hh1ўdh3z\Zl qRVe\}|%О{1SE|]1TF둙rѳ@ nєBqv(Dsr>= ?P~_XA{M㕾!䥋ҷf9 DK3xm{T R!IYG7yNR K.W_ 5qʇ;Cs^*N-jHG{0_[-DOB!R+Z𹡝Ub :jכ[<УĢ S"D(GFekuB Jx;'}L28d]`WfUI;Bw #CNlW^RC2Xe=XLz2Oެs mbF ȳFm#Y*ɽO6yZg9û.nNUb]\W0jplHixTgo efBvr6G00pua)ܖq棡=3_H#GL̖jyf1Oh7VtƉp( ^,vng|]PF7dQ\O&S2ZmPq88޹UwxT=G6lA ay$',F)rm1&$.q)zHԛpD3 P& |^H?OxM|+3PQ{_/*(RkΩ}+eiCU\!ٗ4n^45^-jfYυRqRE\>N޲qʮHP,u&`.<@ۣcI|7$oxR+,y#!.;G̠x?a])0; 1 _)70[ON9*HH&34JzGj_Fy1i$ jR ޕ֨APA?yܴKg'e{԰`L¯z4 ‘A֋{@qY--!?ѭXJx+GP%H#K7(>gzbj0v;mHq/%P;^M[FE.Gu+{YiAyHH?D6j=_)f˘i<KalHp2hYt%}:lhJ٭xOcpoR@"bEiSOx1-lXprZ7gwGx Tde&wk46 ߤ70#==dn5:q4B=tX&!\p^@V C[va{Vz 96k+oxY#`ef@F6Ma8-K*4'YePt!%r-@{Cx )t]&tTU+={<01_^b)^]~&uwk_b*L;ه[r6A+ڊ'+ p6,?9NE402?C=J|sw$a;mLwk7SE?tD̽,җ0hM>9X!H}3%5+V$q$zJD%]WYvd`MHsސ%&L"'t="F|p%iG//j3:O ~ #!DX!pnٴ$+~&-Es=fݘ3Vދ%;V 30-D2= #C q== >7b^1w<L*Ц-zGϛ׏݀t:E#;MG|o={$H7l N*O1qB;aF>J0d84-OiQ>ye/ )FBIR jC Ə |Zӆm4]aCP*n@k6{aUR2E|7]O @W Q$,Q0f9asRhz.{`J2Hy}O3QLew;13O΅\-l,l"_t8y|4*GEUK/ e߽@jx}L(/kZ6F={w7Ξ 6 IqB[:p ?L|a |oI0~ ghjdάBuŵE!oL*9(32|2^rku3ٝ41mpXDy/0-SlrQlhw.@ &Sɨ?j-_/*WCWmm#[h `K'$\6m̵8!*GW&&8ѷzWrL{4'2 70<'e*e}$FĞJ's&{"GzK<7,YsTVWro\hgA}Zr{А'x6tREu%{튯VRZmgQv8o+L֟5&k.D~P?]$_nF_֬sr 3MEYO4Dv}G7:/lKˌIH Q+s:n/놟ݬ Ȱe7cbTCnTvc0$VTeSJ@ NR쩪ecT[2%E젓851ej |~6ݘ2_DT1IBr`S7H81SYa`!s}qӅ+K /C:\^BttAӉfN;EDH:%ǨK1[iE|3O [q^:29Х1&`aPxoB/$ h]#%UPT65(\bLKk la u^}4>|AzwgX)Ț5'C~eu3}yU˺:㟫lbFts$Z+zO?J{DHz#>&1S%.\zM.>2 }!t%zD>#z֍n0[S() σC*T8e i~U`GTl|&^;0R5$b/l5PXSGA`K(Fy7˶ ;=<Ʉ`77MNk2^}};DGDͽQBhM8^78*6mxVCsL[v2AW:4_i^i}*QlVphBߧQ{quOm[ݹ}kQIPbhb>:[5Q^O,j8ܟsYW`"MK]6ݼ9v ^wjc*#|1!3nݤLi=h`~0Fe ]/=% O50v4a n/xF{U Rwm2F8ԗ3bk,UK^*t S" b:sQB< \g@(By73:$R/Bh'8~:~U:@ ST*gjەd!PLnȂbBPޙpzZฟ^hl( 9&NZ%񫯷4M!opJ6Ckʢԡ 3<cW"U:mtߤ":Ke џo _^xyTF|h*2G%  q!r|X^M!% ߒ9H{ЉN^#}-Xb A6UR|I _=~65R1ۘd(ݼ4 M|<--x@ScZ{>aObT6֛ńXlr}&Xۼdȅe|&}ysZR|J@E 8s T@&Rc3,uh8}Fv$B6/rxgYAIC!YE=e@v;QġcŴo\Y.RnP"Z9:$=:f.E^I"ɝDzp1gKb71g$eXYVW%+h3b;T .Q(͌Y$Phtw6+ V&G!KRzbuZGi5R(蘻 *Cg H~AmK~@,~y oQư[R/HΧr8*ۃ܊D̿/t>mfVn+#UP$s":'Q (j{ p(#NBwN7 CMv o"o諩L$;p#(i.j53pչ50OU$)cKdG]k]bstŜ&qQ؎ra'.~M0j HQs^2:x2)T}Ņuys96 &NTZX o!j/* $#X|:P['; YmGU-m LVd7@ "#nWި NyGEÒq0 >֬zL{h.lmaO F\Un޳< ԈI 4kjzGv-i K1ZIi}b+@g#d?9&ar>1rgP]N+AugC0_Q{Mv %ߛys—6'd5og|]Tyy]t9oe`Nv5|Za6Y z_涝c=J*=oH>E'ݿbVbԎǃ5rg󌲖6KY]RD}#6lkb?чyr,Eu}4u(bd) qCG,#Ll.QIA\:p[BGxYG<[َxF(3Zs3bdzy~2h.TO2$$sy4M!ɖ݈O7ߞmDe>MySFu-ڞŲakSOqBdfLܭ,GkԷ0, r+1Y7 Ռ@Vpٝd::8q85#)Ya3"l d ൔAcXGW2Vׄ, U[2%܄9Le)UW~(R)% zuR} )u-w4(_72|tS]0'/IM|Htd0ԯ*CoȘчԢnuQT"^#eS_^rr^\]xgQ 9酹PB /H'M1:l*7^>{L5t!q!~zT!<*,*Z28/_3:ByO%>zGbӏ +JIjV9I [/ ,OC;'(/2_ҟ;?S; Q3b&" L$/ iF ;*ЎZAՎU#)!Z2Nz;`NmZS! Fm!LJzLBd8^K r` =5[#?+8 ?@kv%0PN{3C0!xiW?ArrLa\eᤰ1)+qʊ V7G̓UrsCx,Exf{hٚeπv8 a ZAws e3fR&Q!ǒa=,.OzFɊӲj")Typdfs7PPߦ$bʌHU1f<)$Ol>2eIC]?O L{fIC1d$:pر *AYW\]594@o2U3փ!*Z fFJ/eMH(<+Qw%C,8|1gAiD78=Ki StQ\ ~Q&T7hjX*$W,I60[˽'8'sfZU KLO:%a < մIcA}t1rz*!G: s~PdI40 ric %r_[ ;]aGc2[<_nm2e8n=aIRTSxZWO52K̞P"s!h|6@W@`]EBt:hJ IzKadHmkgLF5B$O@zr%}֊L8UWM~sTzx#Ub 7Ҽ]<ʗ\ۖ-M IƓ;|]b@4#ovGu~ׁT@$(6Rb!5ꡘdW@lMm%jyU0nfU>y7D#^$1oAzf3/"] T:gnjߘ㽢3BlwnzpiMtuqɹjm(F9F!,Îj!pу)_s #hEZAݭܪ2**)RߪhQ5LKvur>& |S~YDAҍЏk9 NB8/n6 Y,K{!cq؞5V'g%![#m[,xcO! 4E9w"3]x6xP#U ظZFrȴӬ])l ȕp=NnkV$Jo 4n)ז)'XbOqͲ#a#z:(dU`x*tLDlx>Fk'y њ8n$o{)ph堅e8mėpTN5%bj39fBgS!4S_3$S a~TR+R܍F3bsʁ$~D,(fMS>c.CƩ}tQv&ұM"L*ǖ*0|b ?*0PNݗ$lFUU[wr&(>͎g1RˎSLJFd&";'Fc 1WnbXnO aNIjO*|X}|E bdΑu'V=19uäw\aG cՀ?.0۾A{ !G g Z9VC$RP>{燄 )ižk1#MGn? V?U:XS6۬o}{3RutDLMOK!?^ 8e0j6;g*\^&CS& Cm@j0\̊z$O OXly]tJ<@ob86#Byf{$L1xT=ɰQ 1)9fe&_kXFAC[Og_J"Jyv,!6K]hhK/W#]=c"6س.~G:ڬ#ZfVڼ)$5-\rQm3M{ܫY^Ik ЦSsO]J^ǣ1'hqa(}1o(PMQUT{CmJ~ g{`+ﱕUM2a(4Opk5(B~H{s[hb[͒ˉ'&tкBhL:_nzZYWDbB#4&5)Ud8TTyp%1\`Xj&˰ș{v/{q{EE|NNK6:8K/ǐ](o:b!Zm<ٸ!=r SgqߨrK>ttFzQ_:n#zy X%:kQziZ)-Jw I}_.`H+!Ki1IFm1r,\PҪ&2mAhٴ8_X+4g=<>ckr6k&=kZa,n,GUVFBƨ.eG9ggF Ɂ !:@DGxF󸃗.i '!,oZZtfL7ˏNSs?n/9:]ndm]k"ADO0b@O4,bqbt VsI ~爪~t4; J?):d'vjlײJF6r'+t z y ~~F]iX/]$fEn;VZnqydu|NYǸL_?u06ZJ[샽"qf1fn!k,iyCj6jŞ,^?C^_hФ‘T~p=ŌWD|\!s=K s~D Xb#f>YEX9!}˔$)b.Q+DXt" .um.k*F>z'xjw&p6JR݀QZΰ{ {8 ̖Ā,=N[?|2rLXJ@ȩ>ץ|>eLƜV4{4x&DzTfLZ+sj,\H~/w^0=5"h>ምӳFbRQ|V;*¿W?̨`d{POҸG2qrA4H$̹t(2 $$z1S' XZەòM² r5qHn3Y޿9 䌄)K"?݁

iZq*v4uG|i#H!tAT9"ٵf(YJ9:Y2jZD[g~詰H|Ki#AwcSܻ]{hSK,yzΣ:$vt p<\/3B [ D* OxlP@/F`-Xk-aVi6>f+FG*l]:[A%_EmgV_4M*4ˠt]w0ĉbF_4u0#-gf\eZ9_NzQˢ"g=9 ܊(3_?_ZKK{윟k,F N{p#L,tUۀ0)bK5n:H|[0[)^* "iU>0jWNo W~]}ki=t!+h0r3vM҆?x@b2ߔe ^ٞA cޕH hAm}Fv./xȱWlە' E:(r@ۚGCO|j&S2C721+V'VZ*~.`?~6kBU"2$4ye7&/!ח>mH73#VF Z K0Č'>q!nv,|Z+T]XT?\Q6YyC*dˑNMqy7AQ)옓-/^=70Ԓ4pR"hu.hOp{x/E~ViViG1Av FIfr1#3ogT?!G;RžN&Jmڈ^˼Е&7Z ?즬^i}q:D,bX(A- 9)ոű$],X O-G9+fk{澁}H^_ +rB)>˜W94!s'u"4ixZ!&i@Eb0bPaKsl, HZB4*"tfdrfbT1sSM~_}C|2(7MtTź?W m!P EDZq΃I(:rRF_ a 6Y"Ƙ]:઩9rZÇ1#xRXx?j!4Z%zYW>8c>U2k phhF:TȅE8>eE= B[ds۟Rd۫7a΄wN߷kF?R-X8ѾܬԑW̛vg^V1/Iâ=-@%C AvuZI4 ƶٹv>Y1ye/tD:a]kjH{+JPUr@"U Cə3$IFhFS@9NtPw9[d Rf0 !:_S6LPOiiuIBtuڅd=T9(֢pQvޡ['"S)}蹜d+BNtS .a=9oDƋR1|WWG=:-ZT<V@gꕢ+>z QҺ 8ѬBF=dn=w|]+4$ O!YQp0n/Oǔ"&eB2XϏ5fqxw(57զFcĸ8fen|Q*CGdc`YdʉYLn&ﱵ V]UsOޢ0MsƢ2 gz0U::O Id'm,bFFOb~^n}֘;#g_ͪ.3>K FjPgLp\kTᆽ%4wF1B1WMc Vۓg3k޺I|ט3I=U:@N) Ī}gwR!3u5ʘU 0ELa/le5wNዜhTK_z_ tNΚ?BɺC2 俦 oԟ;,tGAVەah^ְhDa{vv2JQPʑ4-cz%ɇmND@:DSO|ZԦDaX,VR:z'[DI򚵪B?Hs.saβO@kEjxK`1˯f_"Z$ I@.kmE鼡neS7"}-O0' >›C, *YՑ5]3 Zl}VhPSxyRTkxHhKl+<++nze=UN-U(XX6Omɵz];>CA7z !npkk7T/Úʒ_ WV&ju<'o5WB*F]i#Ss4Ӡ(jAmEU2vD}moD*'X'9U$֘`]IT r2 {jck~3ȬTZqn\K--7 Lm$+5:JML/kY!m+Cch֚EI{%=շA`D5dkdǤ@RvRW"\`ļ7t#mKҿhc|/}Cr32JB?b}użc; 4BϬ*/ ` 﫺U0Xwن;Ι3sLg~&ݦdu5XľOP^1 T7LTqݤ* -"qő;s'aTj +Z-P"E$`-*U?!JB@O\~Pp;K2 $tHѩ !sۆ§3L%:߈{V>Qj,NSvg" }w!Z(=̱C.AW[)o>sXK/Eg!J c)F_yo0mgXSxhX +5B*+jv!)\spjd#%!aY f-HDP*ay˃y0-_w6isx#i<&LAa\ذ0"|9D7YSH4d| N-= *'Rfjǥ2+& m鵐of!@쭣X]ԂJ--nkV>b}>VK2 W'I ./?np Uyt'&.p*\ABIpb&ZYO'ɕY לTÌN Eˋc?7Z>B9\t}i_.SMH8at?XR}o9Q56ɞ&+D DP2B~`7zuaIٲ!3USb.|㉫Ʃr31!_12}B}p]20\9}Юc2qUk߫yw9w#I@eJ=i7tzY#m| v(/Ơ/UJ#dxpv-6vXnƴ'>y5a\S[b-mn fixAM.ŀ+5,~[`X%R-,|R_9gI#Rsg&A Sd_@9E>>XO&9E:qG~VWb=(5uT-f\ *EQsL y=.gxkYm{D'f/!P1Ÿlۮwo7 |'X+ f.5f Ak?^)r gb@l'_3j 9-q& ѪWj? Ωs}iwr 8"Li0 05NF4?xNL&3M6NwA b~uKk !aC%lza fxe>B uBPJW)CIY69SMVSgG b;KnCHvZrbeYN1R+>53PqV^ش 9 0ku{cnYgc0"ٔzHštThV9OF6g j> 0} )<+v=Ydp}D>1ڌ^[{3:D $ɩ4i;ӲCFPy9""PoR5|ݡۂ/|] y*P (JoCGͲ[kߴtS0DhZE5ÙoM# ЧhcWܝ%Ws{ Wdiz{MnLN&fEjLcŘv1;.w~Op5}حB*^܃2+{O!HJuXVoM"Z:'"M^AK>{Lª6ޔv Z؀ Wl>؝[,;I{ *kL,^zƏ=~=z3ICoȗCTNg[L,*LaCh0MkNL%[Ab} s~8´ܙ\&~QHܞUV9^C~3Q/:5ڃBGl%$b٩qK\7H.oL̢%zg˸XN ?%:EɑCmhQ|AbZGizu)m~s0@*#rGRE9p9au'T@GxVh[ݱ[yse y3Os֒*xILhB3PFzATeTc}Ydi"nJ"8m"4sdņ"$CM:ա?\׻G]tjkY?Ǹ"(O]Ɓ$!".+tBǞyb.an`6@{Veq&߉fkRuwHQfk~~XɡJ7y}ۤ}ilf%MY4ꇓXQW)(P|L R$w?_uZ+AT-A }$oIݗAU4׈a~l&[fwS+ NEa&=k͎bW`b[B ZǥZ8RWє׏wD6ը^&G BRtom0M߼Oo\t ,נ@&BʾdmN{iL G 3g g}0iΥ6B:OPU`w .N`0Pshs"m;qr""J ̟O:[e 8I])$.Ko>}Q02MhEW[B˹mžxFb>/WFQ%tC_Mbcݻ)LWwD2@Ί,IC7};x)FSRXJsxsFp@;5bҒYڰ^ჱں^UsiisYb';IH{N%fPna+?AV @hڊݯgF'iNUdy |>&=L`37i>b7Ȳx:vys|1 l@gt/|QO"G8|FL *m^a,'ӡL߃w39= _)'SGZ7I5qO XeKKU!-6^^e7ׇBk5=i#ys8$!XVD'q|*grʐٞܲ6-0( /  M2mZT(i|h1z/N;E *;0~F#哑?aD`b3IfW$.Aet3>;GVXtv=f$ PsuKyRՐ1OP,;j<ա}1[Y2EĊuBGD8El|K}HEhiʛ}_1ORdudGBTI!m2`)=_mM[JOm-ց",Z9 n`Lʥ8q^ͣǤxڙ{8Bjy`mZRimFM_:;AIȳd!̭M*U=H"V!`|AڊĠPY4 q$#d9qJv?UwF\RkF`/s9~Ө_K̏7aRͭ+޵6 rѳMI{AӀ )~F1)[)pos@tJ  \r.kNJ`.@Qge|*ҽ 4>Gk6q~o+X­/f' hAV`H5.뜉Dhdt,J!+,HqsjzrJ@O1 2,LUٷ̂hv%s jdh%Q\L=Բn(O+ta3ǵ&2 ZCHjVFbB(/}cK30~6mʴՔe@.2 âꇠO_c9V3uBq@`X-:53ntݔ1x+za;Y?Q>dšdRK7+O|YvbN>oc1gkkbv &(χ>R*X 7xV kٷc4GO`a_( 7nqa ̉e }Ʈy囷+*V$;M[|Õ)Zr3TjeJ\SzLA4*a}ƥt11LΥ+tj V2UGI"+,U珑PL+{!dim`:Rule:Kt 'bK,8m J03u,! ׷R CkJ2c7Ct=8NY x0Mu|(vbeYE>yPi|^ x%E/xE}6YgTj=ɂC@g,ݻBba݇N{^ ,; d6C3aI{@e`ڵ{щJuG*q41w()'N-MĊgvC; a <޾L0TC{d\1<4Rؔ(Ĭ_p%o؋;j80fŦa(t2Vlj1Z'c3U  €%WUJҹ6f1AQH{#QrƳn=3`7r4w:ͶkO^ 'E#jYw.}:)͝' /ᒾ"W&SF?NOI EwKo L1Ki=>lW,j{ܼ $7 +髴%XP6jZQqYBA5"ѭj 98r$ C#vzgByCΕ1mP|zՍkmy8|m^%^!g0 ZEݫf;T=aA1\2숷G$bٽGtDнl;"]}nR7V;`~EoSVҬFg/rA%ɇ@QCHQyl)[W?1Z $nZw GfK ۱W yh*+d_)RoÛE!bMiЎxFU>_k.ilĉ2qp}Jnm  P$T߻%5/M8U{ite~CI ݉a-ُ Lwuy.!kin;u=[un,7 M VPd' th%ֳR&P+cx\B#[>6Db:t-$j.OCS뢻BVZ z㚍q5'W[ LKl#NvZ%,իocCe5˻dk>riBO~vrGM;~IT.p!lo]x$(FV^ J4}{,D%-*9vDǻg^ƥUmx#h$PQ=yuǛizwh& e[MCP?I%Ky$T$ /N/l%e^9g@Bt?@bt5H!iqȰ;>{K+3 Lwjّ]m1 t =i|)@̡"Pkx1PO46J5'iM۰X&S^l2H_[h| Á砐 zj?BS?Nwn8b,_@g 3p:n["Zh;kUrbH.6[SXm V|]!9ǡMEL~pf"ssa C i @{6}>(pZt$ϣEqċ-]%c䮈Y=p]O ]da7v'| pPBg/`;]a'g 1/'ÒۤR90It>OK l&1=RՀADqW[YiN\g}\,𗡆J9@ϳ[\ߊbR߷>e$hFm#8*Þ7-g*aHデa<#I2ٸ)ކn_CՍF 0Z5Q*<@sv~|m]y cfJy-|i-hsA䓸'(γFPێ(jЖ'xkF)nxZ%^Dc5H? YWrؙuJ+[j V"8.6֢">쀔}\~_rX@6ڥ~X٢ YPR#Hg#U_6 PDDH@},LVnx9߰X(PMFcG{C[KmSk/5Y-)#=R,Fhti̪BiҼ㙵6ْ>@|+ _ɠV' ?w}6ڲÄZUhFPB+++}!DxIQunێ1 8B^IQfi ֔k^2eD~A0B{GDd)']+w"?vkun\G;蠎T۞vˬ[ZU9rk4椥QW䯴xQyGF@aԖuL9z}Ȉ@e*,b6 (4nk*7Q{m)uuCbsA(6OL@V# 5 qz8:"gݑـxo!0E0֬PO??>Y$ A"^<ZåCߎS#oɐ8!Uppq"@ mu0XkFHHc6SpS |ya1+,c=3uŅ pKuQ@k1L鎲W):ŋ3p~Bs_ %,?B6M&?M-@)^uakypYկ4~6 SIϦb|?iHK(*NVv'ՄrTshw<w0޹1%tgٲ1i&lI?*\"6 K;%dH c,D0eIzIDX &&_xP9l1:>kKni f8cUZD4Y 9 ,E0]x4 8׋GµoSpbIɾ EFꃪf!k*cm6@L*[d+NpPƛ9p C{Q%HO+SbB魀cݿʙTc@>yGZ{5e2fK#|.+ogzӕy&?Bp\UdwC-=1~Y%mو/v"`P:,&[87@zB#fZ( >8=ܶr9w6S Y5iFD¿JJFQ+<`ܦ'qDݙGF)aP̗Rz<`䖾`5$T̓z@/ej]ݲI3̱W@7. 1pJ0QWʶW"=4ee d`+Hi8UK|*$QP+ahm!KT VڷLD=fKZmM5N.#hhkD+?Gʘ&>Jtn/wޭz$x3΀|_gt/} n[*83@`7iG.|4;{nv<: v,z÷n0:!ՉJ&DXHgl06fc |W{vNMcY0*A},ףdMYN&Gy{gL- =|~it|#(W61ydسe`YX ?5 Zi}&^j;P)#dz/dgzz7E,A;ϓH }.)x5W*bnbȮ"Rs7@)=*'{/+"A __mYs4B{޼Z6g>[ճ(̫Y ۢ$ڵi7˺b 1=Jc˪<U)SmB.M &ƓcQYp/FSuI6S)Ջц?NjMݛ[kCP2#v2-Bq e"atx _WA`ă#ྷqв1SERNLO?=HJ\cey +:G/Ϗh ,lο7Yt% u_W>n%'ʹ>3j⒴x::7NꟕM]`1h@8@t`&DٲGS>%S_c`B 7.;ʮ)&mnRB};Px9Oڛvv3$1t`7称z(0󓘥wDU,XZu͜7 XA &LB~9ƚXTZQ 8amB-] A!@j;1R3O"Fq9.rn1^*לyJyKva! وif+i _Z~Y3 7~U/~aVO{l9piA=`E3$mqeAh\u \b@WyxW YOҁР4t2Mb?r"x3S[?م/OOCZNb,.s(k`fz+wC_Iqt15kO*E۱˙Ŝ*J_HS 6Q4›D9=+(oaVݖrQ#dX7SR} -=ݸ뢢_d=Rn{;-`{NچO +%9MD` P?8>I lճK)wDTG;{t3!13Vs2}y>?Z1>,9Eç¤\u9NHixuϚl"8v{; ;NGE0j4Fp_Yo5W?r4%͓4 m.-5Sž]Q4\yrsHlq;ˎͧI DIcPٺ=:1/:t閧!#|- 9h_91yFirO;[eu簒3T)s QNӱ,*؉"*&mcIԳo|_z/lC72V^ڐ8ʤv~-ij{=Pt7EwQ)Snl n C+܃[R.4?fvrfV4B pa}#z-\ SA=D }Q 3Jh Ά͂Ks1`._ O0KW ֕'ζ)f1d:;T1 2|EG"2ёd÷•@Ml@ۈEKṱذ ̆D pi ŀH Ol }H)^uʖLbL+W7n+uD){ora7NNYH|O~A쨫H'cC[lػraoɀ2m;DUrwgkF䌠"'Gi |zOeoFN/U"lю P+.yo T^Իˣ/ni<1CM^#ZO3۳? \TݕHkhf^#ag <q!aog0A9N1܀pZ?[`DX8#ljL,c\QPRs $Q4nCK#OuPw|FzƼmP%jy8 tDeoHb~;4x/oVJQ`MQ=!?SMΟ}m|MWy?YYcUJFCC\heIg1`̞>J5yS5c 7pJh*nĸJߋ%7j5xCNt֩Hᤥiiw%] G'c#߰A zgLc ݕT{,@1!}QcUϘ*?%F4ڈ= 덇q [٣wfQDMV0H!賉L@+ݿCm ؕIȩ$Ytz̗ߤ}üL'FCd> i0_q贀tdېhzCBFd"`Q:CS bı gnGBq@KBZjXTpBG M)ٴ;|c//Y>2a/V9.( B4  :]MBoyhe@]x< w`npuc+=`zGEآE߽Q ҋ>g3VVy";V:l+b[@I|rzag:iKީr` yJzG(ݭLtsh=,΋kDЉh=pvqgߥˆ߰6:9C2G؜.~ ǐ1ni/ FmF^KXB,۪9dԼBvN ^ūBYhжzXԌJR|70>fSj;soik48rP#I|.~Yh4o+$cGiV e96 ?m;:$Y$GyQÒ s֣uvWmԤ4ֹas1Ԍ{Wv\71_iFԙtspi'$te<@P7 ugA9t<}=%D9,޼`iDAz]W3dft>DZEv%Atԍ0C0~d;/3HqH yjl{ieQMl=RxkM:\TՌ44+J`skko#v<θ9fJ|5dD % SFzo:n{ ‘1iJ42-K(=qҏp:^kvd cؕK ؊ŇCk{Nj(oĿ@΍ RXABTy dخ xߤڦOweה[0/aIZDǃuz ! 'HUmUe}ۘQHO *jk7w#(CtX[&w͑ )݃E)0#t1KX&հA躀8&gF33^"ܛOag(EH909 WC߇B򟫥,Enk-5jqdDSHtK3e/f` bڇ)D,b)Cyb.cٓ"hj;Qpda"r|_e R/:Ɛ!%?o)USr--XH+\Ц >.UfC#< }K[ "Q",oBCs>;\fA% ."'SݯmCQ/%/SȮ:;M {å)k1ݰ:<Aψ9Ureʗ%PϏ6bjlE |$]J̧ea %C<L؛:?'>ōfTE!{hm-P& D&&އ/ ;NNl~:S$i6hA/xR{qjX}m}m& M536ϟVou^윍 99z[ݷZvuOvF\NVӋcYC/B9-,A'CY#=] 8c h)?#i{(G[c7XɜF[ai.iN0 밄Ws.gm 43}0O&D'F4u+"1e+~'MYG0mrE&w:< (eG.MgCaHL([ڲ7ot7)] r?g*=mZώV'HT#˾>> <=hఎ%G|ٻ} rDr6.L<]y]$lڳp0 Eji)8?R4揩]c9}~r@HoY7ऱa-_>bO>-[-Gd.`:G\~RC&DyFċU([pq7e1ϥQi!>pC1bqcTOho%Y:-zH7;%5_6b@⤹nVRɪ2)Qt#K͙B 'W ]n |8 =X:p UJ} s>j]یQש5HRpTyމON5--kq-45+Y<x Jnؗze}rG  o=;fu5H;KH^l)e# .M U_ ߵɰQE ?à6&]GՆ;Gf>H?]*k-C"1%@қ.SDReZ-9M$$.;Jn,5 MXV)9'5oKͱH*൮AiQ<%Ns%˺^昪:FTzYglɝBu2-FϕբpL-""szGj}ƸсMZx,4.qDRAA񱅆?ۥAVsbJq!O!Q*;l#ᛐBO[L)nΐw*#k-%u-gs.3'K pBGg _bL*hpSi ?‘=#,0Th{N 1{YG/e0/I!]NhۑLQc))*e/w_wHg.GKiu{ACgzlX̜7HPM .݊w>õ1}xVe3af.".M>Er)tl1R$476*y3Jfv*^B(qUB/F,ʜj>֬;ߩE}pZv|-W7;^לZ4@~iϻ^cU6~]ow*pAwP2+N5[u[Iۙi[Iy/u2so}{HjoJsN.:s2e~ҦPҠ\HLMTHmPA{j>@劂^5NU^In 毓ijy3,,y3M>W|" 3x%kDǢf;ެrИ JA7 G*"waTkL~Rzh^.B~ébc«083F@@ $DWd4AN9>Z.& D{v0 c%ek\Rp&lJlSspRI:j|(pI@Rt~M6`N%jBôΝe}ѯ\dY6 K)0váyTGLR_'\::Z `n;E#Wy]W7N˖d}GDŽ1Zu"+f ).,-+Fpl9c)Of']eȉoTw~O]ޞFcNB 0Kh}@z%UNavtsFG:n1ZH*= Yy0B6HJ-l1bWW$ T_͈j7R 6)ZEC+Q/#`UV# \>`?&Ϯ 6ZH +@N|:f$w%SŢ'N ,ZǁZ /@YN[^rQW(b*.&&h =SgY1#by0* C ѤXbv&y@ $Oʖڀ[B5$΁5ZlfRz6wcO@KUGw(;neUyo0כvcͣsZ֡4%Ew30EZ!+QF3~%Xy^o?2WT-Bnrm ,uF]F("8ŤR՗g; 7sviBAC,+D|B٬A+}InL1l„_帄{T/GDyV_N`=h^XI GYu( ,M `:6L;] c; ԮN_,G0oՔkshWrmv`C$k~!"4TH],Rwc< ?Y5dL@|Uz1iV3{l/QK\r~.MFv}601o=\Y}zJ1$M^`"*L>O赠N 3 61jiH^uyARէbg^ՍlxMb&NM褵Ox)Z* @PE+jT jVR?Hnv/⚢z[ZCf  |#, lG8؟&I8̮ jGpjԲYkd3EZM M Y,[h`)XSы>$5@ۿ/> d ri!s̵pˀ6@STr`FyK#g)?:Zr{QҁFz܍$y¦ tݡ&#\E淣 E'K& Q,8ЦzV~y{2pHh}V4 4wg*\; -<5c,,oLy e%Y3 3.VDHPJVZCѨs`v_pCp9EG{)KҶ7;6{] bhޕ.TF7}D{(Ry%emڹ%}Vo!i..9-@AUV ~7 ҥ1GM/4LzFQ9xsa 7\|Y|"tfb(B9rW͛#&K6(.`M*x^蠭z~ AD5t=^'-ѭya[g#\6*%^SHO"jwf#kƼ.qy{LNlo3{{Z `oBrNFrXB&4*|BjYe\;ٛ7bFegFWK ֧ T:-|.+ϝ ^qefͮ*0w5GmQ:q`~iur1eqf@7X^o.ؑLjPmhtVhԼ rMen){R1P]*+;2 z̉!f BG[dkTNlO+uU[9{ U7Q@ i8 oIt_4vĝœ5ǽQ?!e%mJ|I8qޕ'5\@mtQlvV/Am>5 OAN3ď`9|@9Ue+d1V Cɀp3@4f6D7"wt$%оhE@}8&1+CPPC<<&+gF?qŵd=?aGW U6L{o ؚm` vt۩JU võ{3 ĩ`Yd 'Yk-c.uj-1ݟ$o,ct4/i7,JdBi2tw1&X{N#1E#NdIaPw>41O\p&L΄$rҽOV,٪ϛbĩh ==T AL'8|)Qpnu(0Pv- t*LޱJeqfJ 9>!AE IHB Հ{bgɹ^l_dwWRTu9,\xИQ f4EݶPg5fR<0n/.or+TBKW,%ۭ]ǡ&* JziDJֽ}0Ǝ{xr`5O6;rZÎ#mLN!wP/|u6 D-G)//Xjd d %Fʼn4-CZ[1<ĹG E{@}*r6M="XE$ƭ@ qP -QMu\T<Ѧ$Dws-qIsiI4 \ ] Ym:Xsf.k"$,\^iau!e8 ~~ A)FlRםvk>?;~kH~u?1*gD 5d#-(&Э_/(d"Ơ?jMt9pFPL3#̋MS=3DAHbgي!=Svfj%MK~anN&q__F$cOX] .XIWVSw,>ux`<׹ jxqF$BNF5\(к]bDH'Si\ A%{@V17bc[TSo;y&Kp{Hq?y)%Tj^J ?PC+)VQHUs&MGZ0[#產MٲS3\&%\ғ6?49dmh]?H8BQVw(H/UϢ{Ll`f 'D3opc3q @pE7Gm++!9F cCG+ƛ2"ַD0#j4T Zˑ`+tF'8n9PnEmv:<{mdo^&#=P.:dӁ nQ fYQ|1C[O^RBT&{/Pn|N I+pLaI\5٣4 ΋v*Fz\괿gAFj@*xlsgzScox)1 ~JSjnSU՗c"Hy6pQl]p '.762 7ӊ6yx@_Sif8csyϱ1y IM@ unTFJ6xUQiEJĨzc+%lUOhy9m(Q U)W93#׎L(b@"BQf-D0iɶ?,7]~cN~j 2CCVv`XoAma|xoQQ3A)\N¨sU`n(mT=Gd SV45$J#]T#x?ӿA(8r-|~ cit][̑],2D8D-3 X=#5Uu&r౪P=Uᖞ ;Sɟ:h`}v<ԙE8ܯw9R!\Zs7 c*C\^eg37tN/|-GB0~F` 0Jp'o7s ^ f}_2h?$wڦ$繧C$,z#s;bMagAxN@CF?W_3Hmqih5̆*y'4;\o3Ks/$VdesHסߏMO_Kb/Y?wϘ}R'\=8N##rŠ.fkl i*d"] h8I7|:ʻja\V^g[-ZP§_ F8d إTl͑4ΧVV U,ݵhg#`9vISY`9yہx8\@2EW~Dw4Kw)5/Q)i)8%}LTM7 S,쯢 RӦ{IyW;eOzn}kVa{ 25v9=B)mVI_%2#4_ιn3}dIv/C;IgHߨ vIk־l(u6H9gYSxtN(Be(@)FlhM2}eOH=SAԙHUΛe|5 Ϡ"ѕT1w`ZيRt fri\4oֆv eѮKɜT ^iRĘ״d3k!Bq-eUb4>&\ B 0%&O1uLþv'}y<~`Y֢| QҦ<4ͅԉ\C5TaB"zot( h!š,x.?_cMԏ+d*wQIWJO ,n'7F_BzHDžٓHtOS0zGźS.NSKEl4[\H0E3W sf,^iI ʯ[ @dZsO!sb4NV>@[W$c;rO@\߆ َ}50`nil&y# ̍ C[i]t4zs|00S,!ٷi5g,.c(p\wmx)KHM_7y]<l8Y(0Fs=.أ42SaPz2-`k*kuE,3 / *U.qtKSELLY< L3VJ / ^7^{n;n).3 WrNZ~)Pr_8Wzkc _;4@=8|u-A*)o4?G}p'}$\tW/H`4~:`1x$L< O" DVtu1Cc ;R6_)ad{`eU1{XF(Jd6T&Wa*d2oа#Eo$SNymыH0wY;P9;lsoZR o0$:[VbO.$U’d%`2یoeNj9V`#4WbWq:-/RGi |h꾴q(v$aux1aDv/Y WDTD@H@}5:,>|] v+H#L5D BuT/u%m[=Zqv;8ur>|f6wÖ X; k-TI>w WEHuL-![-R7ML?5N>ax ?{Zdm,IXM@1Qw tuLkO($*l̝L'ԁ6`hHZi >MN^\Pf#ә8IYrPߎD?U ]= qsGA8P:y[Z@ Qk1(Nr>S2eQfSVGZnbqҫ 40HE2Y܍]~aH2y~ a<0$-K>z,$``t{ P+ULMO |sϨ`ocӫl5_SڎUq#l4|K"Eucc/ vCXDj/S5$A>u*ͤe=);h7KvU[#h/PfHm.hQNZ7oSHFp L8lmR܀KpqI}u!;ݎ¾.K* ǃ}"trapmp(b>|c/AI}Jg׋H 6 ܏; @2/z_?DXA%% T-a67-=iƩ`3xEޫ|JzXֽ6w"ķ?(8!f 7a ;xRmg |#]A${(Z2'cB5 ɫj̨oa81Btl;l*Z8 >L?*`<^s\DBB2:2Ξ„ס{%Bf5NbtR;8Yϓr0lMV=qFN^!N57'0=Np|c%g,y[? o\u\MGnCyM2ɭ>^(ľfMxH'6(/{xm*RtMHE̊~G{T BQ`HT_.Ú|*}_ f@ xZ"4*[22״ x-A.CgQmw/r="#߮WcHChz"`n?jcz11MZ9o;,+zF*q6Z,芚@ *<>PdWQJA.6J1 lS|V%qIע_ 5 1oL>_叡>mLbH4:|Ϋ,?x'P%oj9B~U̥2!Lәęml$9Me3[Фt6[uT*C)1#rVKm W@h,, x 'a͘Zu-}Q*rٕl3X9ͻ'Ani+r~Q}W9X(0u" LvKhb,C2ˮ}.( s DP1.4VTx'7>9^Ui\ _%yE+FWDxcrbv'%ҳT@tbf #4Ya%W5wȫO,CvD>?MI9־ *<:=SKj/sS68(zoϻE)jKHL. >=#mHvqNHs4l-6ʣQJPw0 Zd Iٵ\胛x!ooI.,"V*net; i *0-î*l$BeXWˈK--'CM.:ӧL6(8.bAo/d}PE@Oʘv#^w %(G="jq7 'H3AFpMCǟ3݅3/,-bD-\ݸJ9M|iP{E15nHzVe*0YYՙ[D?)Ya"U͛W>#Kv %""`[M۝o]J2[bהs IjF漓OM@ t ԑx$g(DžAgOJ~,$:/"] (WcS4EDYfeK9ga fk%(7oB=j˫p@ӌ4̍ ee1߳mWVMZ&ϝMJ^8t$:$|ASEx#}ZN+M7T170{cyq|I91ƛv C8?(I}<(EI іJz*\ w<|Z3sXCXc<Uʥ+Xk$%2/`sVgu5+^Ӟ'[5E&<=3@O1\g2S1(1y5<.O*ft# $7؃cѣ%@>ӓ/fHl{ɒ=xڼy z΂as;HP;k1oLvjt$[N卪~!1 t%M$# ߺr@3C]H$9,ۅ-%0tU +(굍͘>C_H`vPeC}9ݠݗ@B+H벼Ȕ(,8"<\Hz_h@+ϑ;Upe^Y4L %!;5If*WûS%uo1 QƲ4`3T71I𰃙u@I{_kDE@.&iZC5ı;[]vF)0.唊'/ˬgG{/fDCK@0nmI@Mdf]ѐ(e&ߔwשtѼnb?YȦn'DG+bpD¢`')L?IvLz},b(P,#  FRBA &˰>mU(U-\'07KLTUPkyaooF,jWAz7IRo r1azOd Ǿ96B+P+J莏#Se2>_l]2WBFpo"~[ز^RqJP0'(hSF:GK/F Zh巯s{]@1 p߁(WZ4+0-9L`gj@L{#7}7 gYs6<(_P_e_IQC){O!Ck&13cV/H K?5E&HDt`2.p@fO5){J@G P9 +ZcNg1ht僰f}]A0ϻoQ8%}eWz6J1\պhyEbl(qZN̿_`bC %A;},rAg-)=8Gܱtj %Lo on(0، MIKN x9e[k^N$xc?Z(b*,& Zd]CL`ZEeA*^98DFtA:}zU\[iYk9u[HRANS"qC@>N'7 -ns*uN$?"fH6ۇ#s byQY.hƻ\˴N4\^mDq-@3!+0@v[KdHzҟg]~eqT-L,HH "~o[alT@^p:^*=ZRLS VP ;DQI.d:yuY$㟫lχ?ǟLfJBثK{ 3cDL)SWsفVգGF!*Ae\6/"1A˿MR E QNsڈU#)uPxxwk㪚GJK:"!&x- a&Ւσ A?ll_=2 t|tA?S]*Yn' Z0sUH?=Uv,~vꌡk6T.Olv ;t*%D.W<ԒIѺw- #]h]/yj} - 7 !/fwlV^q_&֭FpUe4E+ws&B1AD1S ɁVsGرk̖X"JyD\\߷Yn^/RA޵0MŐU,s.Zc#8 dJexoҠK4C.@ l+OD?nPNY,~#TԱ ֧\\?XÖo/0eV AN=vJH [(&w(Ȧ$& `JP43AM$˻`N;Zv(@شc/Xm Pj>]tt_2 -&ԇIwr]1<,+Vh1IqoEdD-S$Ćrҵ˽ ]*tG#ݘY/am3b/.*k#oB"vSkGc33m6qx0tb$\#P^FK04+|Krl- e*;sW|+f2.9IjZ@TolUA$bĿZM0//f߯HX,~5oJfȰww%/-p7Ui2wrDɐ$5~ūPf3/ȄUR'3[ppa>.g'8L: R^Iz #. A',Κ֢%T`?k~@() ?A귾PCkb~"l"Oguf̣}^OuyW! Lr>S*k9`ݛrj\Msno `EMY?;IV#ŠĚp8$6><ͭWuNj1сa_n _׳l>[Ku/3 .X:Ϳ[{ݖ]K9y]1 gwO+@`#M=cXFr)17PfV~I"<*D;JbBZ W::O8)ҵQcIsSa[D쎢?GE6]$%Jҁ(5]c>[қ[caS[ދ}-bôW8{΢k~I6LM([-c2ȈihhYZ}HyO1.H]vA-zg&W4f܎Bz('q}Vigm!|i+@'z4hyZ!*%2B0y] *` riV23oS0641n/=ApF_XX1N0Ok Zd9#O00g3Mwf0XIReS$¨5g1h7p",Y8f&r|qCwnahjBOdHlF=! sEG@j8Xڎ%xv <v5??TeXz'XbS$״#VuM/ X .0,)8ʷD#Mcx@ 'M~Oxz= ]uxNJ a]d4W4U]E((뗵ߤlΦByi(v%RyƸq37&Gw|sh#~/46ͦU&SMٗ쑄r u7k}\{0eWSC[q3:"e/6ZV9בH/Mڏ! <0rycv#^;)0%) Z|wې>GK]g[0O3k>x/Y!%|e26#Dn'P8jWZʀr Jr/O h)0zا|~<ٝG#Qdž|y#5SYǟ@1uo[TJo!}^ۧ*JO8f~); W.c߆˵zx'eчK;ŴQ}]|p%J&?l|f>j €]©x/EOYFE{&IFR){nN[1ny1qRe3̾B1B.1^ b!җ/Y怅SEJ%_WEvyUs d>~\S|SXyutX\cżL6e޻ 7U;:3WG  A)>MَQMQh\*,bUWLͿu`\Z5wWj:͠8ӷ+qO9;W]@/JP,{"l5B(%#A>f;.:|2^āv\zSD݉%yMzSvG@C}HBΑә'#<vPqbcN*b)ytk Xc@ƻs|+αoA ~ٻ J e4yl)I8t(Cftw#U!YfC}?\p'V?ÝڽrKQ rY33gߕwצܑ#" ifGQJ/HvaJ?0u4T6sIK?8eR%*K%[ C"X4ћNqK=AP%ㆶnIr!p4:@i*|lpSy/ZV> gc35z)JY׉/Y |u0ټ߽t\hP³ CXy1BjʪkVn$\DOq{ӿ킔?6˙ @~r 2FDX^,d6!׾HZ է MnTV] MsYui@)2BJ@hdH0eU TBF=9g>F-GvMY0by`12jdy528SE:]gΦI XN撆Q biQn^B47O2Hq`O^$S+[%&kNEBm ͭZ5Lw: .}UPc\FPY犸G"qOL|Җ6ޕY67"݋|Ef.gᎁ_I; VR W# D}q! `D~F"ͦ +wЃ~#L6Rg*C/; t $._Xʺ 1Sam`(ZcU@n0)ZfnW?FspDajqaI&^< EqbǿuϔM4LJ:;~qF ,}m?頁ww?"u, ({1J̞]}u&^ i9kn34M6}"m`kuwYf @܀OoRQQ4y sim0"-suޢ#Gr%ɤaK+֎"?j _^XܑEW r'n_y2 [߆0J2⺉4H %?c*\m1l}PG/Ve5=\J @p;u)U[{5K+wqVIn1~_&қլMd!SԔ}y9N7:?#3 CJ*-Pc  f[7EFAҘҟa LQ  fTj2&}o\u1rMXSgiͽ[ͮ~rTLڊ$u{u??\2O*$r3nwXqw!^]S$<ȱA $ns].r icB9i}C߃;Y86yqa kRoHUK̽ 8g2˛AHEމx-t_yTX!3$IK x`LVko'YJMI!3k !G݁F갘2 7ߟS%LjJ ACj" ϼlzx*;3cN۬OA2ubWΜ\*a`qXYuH 6XVMnZ# EMEeGg~;Ϳo‚nXwUa3}T(:hc* +nD$Aה`/f,_ C/pk?^]$NI j֥41$r>.Ne4CuW$@,z/ڏH Jl7QK-*w<*Hut[T,RyqqKLv*h\;R# wyfzRFg&Y oWL2:k xljmymľmIJh_;;]l(+9K Is(n  5Ù?GL+k wH)'j k nF{7*tmŶ,:uiTe~&#;!UbPy&l˽ĸ 1?,="24{R3ٶi_}<_/\ u+|@} *ü[ 8mKbx7llE#@+2 MŲh+UPWV"A ڽzve`MOI%E;k\_ YhM>Wσk[T")'Cjc-8᪷j|B XNϐxH!Y{g=t֯H/t-ib{* ԌkijӁY4;nC5{BH 孩°"cڼ(!8ሣn%Mll@7{wwYȹ{cfۆ<բo؂OAr*&LdN@픧 SJrۮy'/J㥔AaFv[:cK|& 1''$JUm[t@۫C.yg&y[F;j$p 4eoΠL&yJ/+;O֒񂨳db/J%9ZZ"z~G!Mr?FBB ,ޅc)Ddls>kKLcTe8̥-J헣/7JYje$sAmNدQ= JGlSU 'v"GAh&T:٪|^F*[LH},& 7PJf HT#c'Nvgp!N?LIrdAQrOTCi:ž_o'<„Acg mWK_9ʹnP@C9&H݃p tY.ˢA[ʥIRYcRZ!ű@{4>m\<7qH RcxT,jgE!1m)9 za}1)gfT%FΛ}zO`n9ƕ!6 ZA qaR \kJ JV_\+ 9Ґ4Jj2E^l; NkGOѡc7-)R^KEk_- 5?c!aX0$M- Ǫ8V:_ %Iٴ@kBWC;t!V{"xno۟%}FvyЍjB=sג:h2I̺4,j'pJxp:)y = Gaox Jt(;gItIB{b"XJi>LyGT^a,}2Q|t - HKڋ@SkZ;:h:@)e}0H(Mlfi&N;tm"pd]sݼ@g:TQ7iۡIF"uMd@9oBo87.!51X&i9d.b(}Ό\g C@qic\ ^tLZJzlaWgE{V049}W񜴖nAٹfD_K ܐx/V%(U@ PJ夌$K}yu/G^)?6twjVGo>3VszLxjF`1gLG^] )NM) >pbbv&kM=XЂᴮ Kiqvҟm.f~e 9Nkk7}Z aǪ[}wH#H:0%/>u5[҄rt(L(ΤKpMI]@Aռw%;إ7ɩj߮>҂\FOUr;#Wo0-7\8Vk]sM ־=&|yL*:/,0%쪧}H^z=d/g0o\zV yw te6UPNfYHsd')@7&vʅH?T߮SN$bkt*;6GUhh{_DƝ#\4UgF)b6JqK{>&$@ty27--}^")Q.Vy{sxUj[2k _ _ZZ_ߜd˜D`ot|x0u=X ighR+r{ڕ8:mЇgM Q-:@ f7w_^WB;ƪP N&3ew INpB#/+_4=ZޮY ROnUhS,BBmj|+ 7w3 [PklΑ=݄_W ]:^> vƷ3dž:*zD$ݤG)+ P{@nCEo$% -K2~B%\_1rXؚ׍\-Dj/-s};AZY1 ;#:Pmi^]# F$ V`J/KDYwXmeRg6q{EZܾm@s~7QuoNg7g\LT$nA uU*(5/vOs_08<񄗞si!]$,x{xg{qhl|zt)w@$FS_AÔ;C[$*8 ,i%Wֈ>a(bѧatba?7T`Z{L=47:-ޑ#Z]rnaYthZ"*t@RXd;uVt+P`9+[J fcP Q"DXx5<3ם[js9ZcR#qM:I4`obΑww9[LvVh'giCVK|:1;t>m׼9{};Y]inY VKQŒJ?^q.~]fz'Us/7|F_S˖9vr7 qWmoBR nBFQxIwT^2OMlɱk 4FkOԃgw>t{JH2)Ϟs`tJmo4`W }+Pe dJKb1NJ-~AVk:坉܄g(rl!uS,E`ZpIBѶB݊}Ú+U\cMq׼2C`tK$ph(9D25_BB؊i֤ <7Z vOmz=w0URf4g䫶LѝIU~(te͍@p6G ˨"pp{d GTR"OV 73` <RNoZ".uմT7 W\tP-MswxL̿BKKAZT0P5td˷9C˵]Z>/E&7-2Q!_R!`lP3 a52Rg<>Φ|33ܤ\O#tCt)QD{Ұ;ZYLbe!V:b zI+9hޙ?q1<Ι-՛^ZBj"$UƻG:$3#?&:HX+xCS v8Nz]鴱=H&NJ*fue( 1|r ruI@?^:Εfe9aCV*O>}4aZ>Dm,] h~lXS\n0>Ѷ((A2w@Jv4N ĮmPhy<ن+\hp4ݬ 8'i'DGWw.Z \%*R6iYŖIXG(` {v$;, 􄴘ɺIlI7 #F7^)ݘ-Ձ:!){-R:.Rbt}B}:PR]ePm6"Fݵ; ׎Y}ZrZũl*թr-CE{kl'칧[% &b6kXjV~hhV[M;[41ʝ/j, 1= Rn6\g ]8pH[sl[Sqh_nd|xr3O[Uswc@$}XB 4BޤM/&+qˍDv-H:-A}jwg)M%id+e;y)Br֒Z @_Օ<ձ_EL%og?%JЯj֯t\~Vof^>݌ĵ6MK7K"p k ƅpѭԴ?:Qg2Ce?W=bt;(]I>e6yJ9l~]IzXwj,p At? ̴C[nۂ/16+3z}s8~ h7KhSo'$^e&B3iGhսوYӜ ,Ok6DAiߢ_ZI`*_:bbV绯w/}q=\oH2@O79Dmm|"X#) V=CI L`ɼ^㴽'ǿg$3 ړb_P4%B)b,A͜&%g.[oB`gm;3zўZ b*v"׳Em@IDDHS ~^}56PUNp_U,8&XLM*c K=ZMۉ\3VUw=:~C gxEޭ,7$})H؟ҙ:fSVn S:x4fRDssת-*SenKg Rƶ#.df?wD}/+4( 8=#?]KT͊5ؖHZb[qdTI0Rr,LgrY݄"*U^;FIC$ ^gX8R9KXب2st|-a&AbqCM&Tz/;}R8WQ@1.1an8Ǒ|neQw__ ٘tblD1UʂY.TlusXǗ:̎$-lSx-1?xwd/Rt Hs,F D`aA#Ni(2wSc"AڏI:^njH`ՖqQb4T7t'b 9: OG 1(A5PI /4dFLg G|a%p|>Deyb>۬ ;箞$d.:\XqDbr$@‰ ˮR H.Z5MG _|:YO!B|xko#?/PĐHD-H"N/=[;m:nwEHs b~m? { ܠ ay^/6쀣3bKY,TR1,1y{R+9,Lxmjc1Y 9?<> )k:@v385\nLf$E8y4 t,jx9?7,ZCLYLTE$4|%T%䱩!W S(+fOBβ,;ZuTCmo< 'mߢ9,.=BOeVr P2 8Xn E)v^`)F|q<*|9c)&h#jiA,qv/~ޝp(G5{J#/SevoA,ȝB`Pj+ WQM|-̣? ~F+fs8yɨz\:ե5]:+Ci,oEVdf@xk |{2?ܝI5#&iSKi\3qiTÓ:gWo /&҇%ਂ#qԁ #~ åiL>کW0DաD9y) NvJV`= Hewr1op7<0 e9d q'p/´p<@Gw!wSfә67\Ig d!Y8K=?.Y~bU0h5-%8,l6Ǘj\.s{W6KJ *hҁ _zhg{3à]Ow9\2h؊3V33t0S!  w+ I9a9>Tu4{j^&y{6WKt2JyP}beT.,H{Cffng@\7g 1x(``aw1%ŭG%G4̑K|n8$l{f5f B=-)YQ p%?3Y| ~_[xR/Db![;DVWⵋp& p4i˛FXȭ&X%-E![RWnMqay# i'RSnFk鶶=ߡ[AS6c%>;a^Js_J$d*-kPg ~nNO]{fA}°h&UJK v]&d?zr0@~RWoL(D%Md|ٍW-{I&xgcUjw[]( s)w-*X~Oj(!8Gz^zk#,X']yNL9@y^$.RWԳ/I  _/n#O }.U3LL.z9U^'<)7<ycruV1A׿?&G5ߕ'2˽?1[yE[&iWseEcw]`SX QYFW g1h>^"k!BІ!9LBmÇu0d~(2-d6\Ѷ̕[foGx΍]/ԚO=Dxjbe85o;'h5:>hC_ 9u3 `8zHA8Zhܴlݯ|'pf?ճ2D1vP(w&-8uIZy 0 a7H\&qlIo#̈́@et09?OJpȠ:vŢ:.H"SJSelsjM^2 _Qω3ںF 9-CFN[5*4TZo.ez|/ ܮaڳn;C,-h㐡Q'CPm1BxYdYV x?lugF Gz"\p2Z4Qm!ߥz^" qO\@IGr3{I#dֱm \d.c.} !w+ (Y* 6ȕ5ב>9Tcjjohj/ ;}$:߇ >秸?yK#o~wĽ[t1@YD7?N|N6'խ?sNp"ʝQpN Dv!s!qT=^``\;z)Ywm6GfݳhHG[} 5,UGh;u❎m H?3<5;\vʵXfd>eE,|9fqS#Y%O>č_ r&fNUhBĥ;q+晤 @4(]pW3A`pGCXLa7#M Z(`pvөBvXPw+ I`\[sFYmh"ʡG#)8Ylao- ?#u0k::h] (w?fbQ"fk Kck~NM}~``5V iVHO^$^AX(zN\AǕXG;DFͧԯl%=A ,V4=d-[毋ګ('h9cv7uꞢƒBu\L7`(&N:QK:4.MjtOGߔn-y)M|.- 1H\nm2IT{)NTSxքv_Ň$*&iL^#e3z3(԰Tjx#rs4Vr7; '' %+<'쳜+.4ARہ¥.Y}ni~ĂJ٢;zz\sDJW~M|,b vc1O_kov_XѳW e!{{iìS:2?ejSeЪ kyW u_@Tnugn8Sxis2ґ*,#kprq7_9+׎Gt(j`Fa2T#'vnZQY~(Rd1O'L9^)P-_xR1}ؕ#IwW"V9@qw+x"kMSHkh5-#UNuf*׻U֬KX9zӆc_Դ଎Wi@"MIi7Cū Y=M& ~ݑX 5Jw.P[<gC-19Ag Qۜ nLfrjnߧzK$*Џh:- MTLT_  g 5(="NG bD1u.ΚsȨC[M NBj6yL8* Y|$c)0qݱ2Wa/B Fq]΍a8.nrtu~3g@;Q+yɁb`-v zzGU3 TIYVK|]$<0Hz%' WkWXB خ={y 2'z՛T3B#:_<#SsQ f0 w |wTM T𳓠-"We\V;M!'a}gA5֋EkW~栟%4`HE{ `lTݘb݄=VX@FSo,Ci^ͳȘoĶ5.cpS-[SԯAG/x"(MpHnj sZEla(FB4[E Xxs;|]W]Z̴$k8W,8)S{H1ߘw M4׶D!戺&Z+sZ;[|ٓ@86 s*h JR`~%81K\(@V`@T@L[_:'YPnçY/]aL}hk[~,B~mU)T^B06Kcw€$Y?ܗ|tYP8\_r`>Gb`>uU?e,jW@]F,n_Pu] Z>&T_[Ƌ$Vfs].:V?XwM|䢮S]5jsh_YɈW/ʍ'WDUY!_c/҈j>~E6@j~g-`i`Y9XTzđ㝸Hvu8۳ǹ"h]5Tcj~2ɂ'4?Yl$?+X.b5PO/aZu0  a9I{j8,j헒^lXAI Gx̏n6e`6/ڂ * rdOd gTk+!rHzߙb1CO$eIη.ۥCIg8 V+kyƷ%A.vY?)&1 ($֭#%]aSrp2?E~a ɰ6D]!ѱME—!9;3\C+L`{,&tC*(V\:=*e Șy8VƢ_Ūv{V@ G ZF\FwP76o+3h`s$I~fO<>'g")|d eudW|U?ZH 0W縊(m:;9R ň&AJ"/V\Ẅnquh3w6Nw׀OnbB `os@%1)26or)*g%/eSp C ·ϒb׫4 X__.ij[i,\27^ĂbGw-| i嗪h@7Q}"ƅc6(i696S! arp b#ӿf(u֗bB!Gl9L)m$Ҏ]z&~NN*-@9uFGG8YPjDH]T; 'Q۶dmAS]uf6 ۯ|.6>⡬nn4VJ3YGv'ƍ'|Ú}pzMTEYٌ&3f-:MZvRً:w<(S^+)T'Ř辨$/kHʚvergpX=AԱV{nUpکM +P}/DH_ߌP\pܪiFZ$U-; _ƙhѽM3n+]lۇv)"#S/cy7oo[ZʏI9 ?ɓvP v G'(dP9eC_ 448 pw&ي-FX"{{cϨIN2A/FX>9M\s-/m/20Qʗ]\x/,O1V Aui' n )-GAUqdhx7Ĝ%^))e(9Ex]ULōw`-6pCR5kgF7Yl4Vx.#\1N>;Dݢ[>kD#vh.i:[}ѧ.kLIӖh!Z.~z7 EJ88@HUDJdwR̡̲lGl9#@ fOhH(c;wtwak,gucv?;ͥ%nZJ@?Mo9 ׮v յ5A% W ponM/C,eW}muR0dJRC#,i+%= M8Kv8#7x62:d D֤o'%FC<` ~o!o߅$aa M2hq]kytmM Qy>~lYYOWE(I cu,'U32y*;VBeenR ZG[4Nq~=?54mժϲ82?kҼpPQ%|e*!Y0 F2 cSlJ,+6O1n ]},Ç(~Mt?醑ȡ5YH L4kD Ç,$P< ĸ+xd/=UQ F: #Ri|LN8l=\3]5 &O5PIJ(wk^ *uu.i8+wKP%&`TqJd<@~nnq&ԯ\} {-h]rE}?/RkВlո fomSq/.aí]dk pUbƯI9A>X 01NpRnp^ Pꔬ뢎Vk)ȩ'}Y2ou~JۘGEcˊ4e%K_҇V|*`4B/`v=%Q,sEǔx:l1Ld ZՇwE9>8ޅ 2 pqqudrL7 jDMd@o̡i gK/t[kw S#b59rnΖpa!$Wŷ >wsPY|06qGd5B h,VZT}p0$Uue0UV+6~߿?{(yHnt3"ٳfۖ*?<3tJm v:LV[Gߍwq"81gL9(UؙEwqǦd_[:9xX|>c#nGŧȱWj[+d+K)K$m4$OJik;zDݸEL5@aabFWu/GQ2Q/tVB8l(X$,3g/@Ofo~'kRs|CC0)keS 7P7N {-Srʸr%ؕJ%˅~N5Fg4@'O!הDTߓz"(?m@+&ܮU -FQnTlj\/ uփLQ`)YjOr?OKG("\ALR {1 rYJ4ǟ~]´SU@IDzB;fRNNA6ߋS~{{7+)Fi/1yT-L͝R;Dߞ)i¤o}7٘{:'ߕ,|Hvc"0l {TdԞN.,%>*Yi(ڤm DQ6d(ⵗtcۢDd:ųpcէ[{)v/3\K^1+WЭ}y`ܜL~ego?Φw1+5 d$o϶ܝ4y, KFBwxw{/Bp|G:i==^r [qCPSX&fH. GJGzo7 X}=DN8\ˇİ:eeָK @k4x0;ٱ;s)Rl"^Xs7;uvV.ﳘ7E\|l? B {Hʹ`5osYn*;,Ϡ]"m#z<i(o)՞g0]aT C̾3ٽ%ݐHOL)&:^`t}1@=r$kح>~.*M^fw6c!CgNaL D1G'˅W:IԪ|R0 SY)^P0"~=W\`☢k |>*_$Wj_mMmҳ-z?-|l@϶`ٓr au9,ROwL]-auAo윷h^KO0!^r14nx0BOcS ޣؓ_&g}x9`UL2_lgtS hjfP;bq!Jz瘂!o Ą8liFG,雌]6lS ҭZGh5rޥ g=h>4Qs Hl>f{f=4wSZiD*i!.ZpPeQwP5Zs37U˼?T,zE'n'E'ca['&uH=.բE{v³iz*؇[d}g!Ucg{Xm?'~{ `v3La%<ځ3IIΟk{O?2F /LG1x_Ő(gjb:ֳ.^n<_"NNSv]+0뇪sO,iixX)C%yogrHߗ TJcҺʯZrSdN>eUB!p;^@*G"57 _-R1LȃMޱ&!y##}--z㩇 />+jĈߴO!8npdWZ{zw kR-t+R:9cXcv^.l_9 "8^Nŕ6b"('a6L@( !#3 )ڠe  &Z1.Nli.HbGq@;~Zk X8Y1ӘTϱ#BUx5Þ8 sknkF8M4Mc+Ckl!\cPon ,mH(4!ɮq!(6NTݑ:n=I2!wn`dp3T@?&x7q?[:M9SqL땳!CuNbMT`a(9j"?B^4F膲~8Czp_Z!W["?1T1z`~8RcB1w0ױiX"NƯ0,;+= H sEn()2*N_|ٔ`sy,2= e{љ,5AA\;Gn>Ͳ0 Ygs!5mԙ7Qn10XA)G!8iɼ'Ј]~r* oYV8-E:]}T}%B}b^@Ml3 6zC̚qt1ԏK/@Ǟt4'4Bm ͛P.{qWLL mČ2E+Gn꫆ 5:C͞9:S=s%Ҕ|k߰)"?o,(c>Ÿ3ڗ "!؊ylU"!rU1`A/Jz[Z[[ǻ@l v{X+@;AT2\u+MY%O$eO3RЦQa8\d<> Z8j^'P$5{XϯIoU6_~4d 'Zuq JLmKCU(4˙p-ZD,.?[sO?:"C y4?+3w NK`oLYh„G&e};T{陈rLlnC0#NΒ9g,R+6f(x CR( fޝX2l%}ᩊ g)lU[sj ϕ*͆/֑GFǵp,Mϱ:!=J' 쬴0@gE`OcoReh߯g yb?Reoz34$x_Wo<ݍ|~=;z6YtcL6%LCf/((8hP~Sc#M:R>Q>{ b~6 bv*SX^ģhӓI L@ήv_o"by{!T"ҷ5𹱟b dZQP1#QکRNύB٣Jc|݃ҤWOUi.:<]zt ûdsx/,&+H.ٌPr(1wѬ"^ah4s)"NX^94dPkj- 4V4F$x =ԂM Z#y3=Wx@GLBoK8dC07M~${ 1/T8s@I46h=Qc TIE6?ˎ& ,ޞyiL8(Ia|U#38/4_QS2P;!i/N6($$+@rin[7Gʵ LGgxo-#,x⶚9ê:7CQ#ewo +<th#Sh'f ܘړyM=w8!%4d88OnlghkQ `#%q(7;Nr19M{R< W;jaPs\r:HDSx/V'!z\8 z_r -v6 }ǭ{|'Dk ml҅O'I*1+K-yJ>M z}t-BAJƕw, ky ~m <^V:*ZQ?g1(𔎏;uѽMw14H$XUWKya:FS&z+#66z $;t_SZ̆ª9tVj9,yf_FZOm=lͲPp;bnM)yrဗHnW5uhCqxs8=V:eaR/~5ӹ̨KRWl;w67_J z3%ZEi!3mk9py ڶn(GU0weތd.t.fۖX1;TkAm2FY J<: J;h'3)6?mN9W8 jNyFXWEB6Ԋ[q:*iq^֋ya-wmP{}_\L|`Ҫ.AuA@ވ>G )d!8,iy`[}FD!mxȽLXNn=W;f&0U9ZNj;_ޏsm}K )GJT_HxK &\%wZu,wrSz?췐6(QޅIB4~Ȍq:88v 7j~r{/Ahi}~ Y(}gHZ0@jiQmA (%fAaG®>Jj./6}>1[H"y$ '}}{x0q 5W K bGoX(*!_0>ݎLw.UmHZ~,8Ԥfq,$n_z01 >pK&08df;^l7Y.q,_?IV$:NYE3'_#LPɲcB7cIҸaMA>^k-MM OBEa׬iMh;G%Ehr&G3tEzϋei5)"Y'dㅋwש:Œq9xLä(·БZP$]UOM!HXvdQfGl nĝD ̙{'Q(dm],f&@wL'&R#LLT#m)=WG%В s4<܍w$vq90|u^ ~!ͿÄA.Ow'&2IJ|^*96C d˨1Q>_'?>@J0tȳ\C-pUjQG@\ӟ"]sh~ZܩĞ@;w.5,ocY[6 ߯N72Rk2OTW װ`} Zdty?Ⲙ2Pz]._[yUIަ>{ prsbms藜.gM0V"%CdÐ5s") vMxpubI;ٲ^'6F+)%kڠ\:nk)gU#OE:4O)>S`wTy\U`|]-$όP[z皂ǔdQ#7;5'q0_Iod8=^sZb)IƙoCw?d<414@;5%$E8#u+C>Y"]{wpg7rVp&`;n %Ӡ5=Z>)bL +> ~ ;27Vjw5Z׳HhI,umSNp0(ŖΊ!t5B ="e4 \u]3q'y HXQJlxw sKܗUӭ7͚&(#fyMă)P0sO@mz A#Q~~ryCU5Ja;Ih_PWT(tX6= wr# y|UJfDpASw >~}v8D81eH*ugsT4;Yx>$0}lnʅ2 Z^gz/@ wگ?T݈_j5L)"3RרzdU`SO%ޖkdoOװpS $ĎlvHz_mhVA@ǽ!JSb` 9({.^(8zM7Q:0rNm=r`-^!q775ӪR)#9vw~XRA*4MHsم/a\ Վ$EbAqZX-9:Mzp˧ T;.=32F8w،P5V451z\>>UI$&}a4Z%H ›پQ !Ͽԥ$σ/>|7o/G[wxfW+WTJy >js!sGsf. u̴8`d#)Ntz0 4W8-!vk2|GyrnXnx[/a xq0sB3x,^:< (w$i^(s(J W~ :y^[3qNa#FzcЧ,c!# 'Of.7Rɕ7|V} `! #jw.Z-2xUǞcB'$)7 ݀^d7]0Y3G 16O@{B{6 +44$.JDoq\cwwBBqzpjU# l/$xja?;m"YwLh`QB%G† y="AEmF$ d!!<+ f9Nj}H{1NԤ;>C~\ f9FXJlq671P񂆬a;.lX(Z?T7~zbCwuNվl;iZY$ě+5p) s3'3i A#A扼 9b86UP+H 3%0SBGd,f.K7=}76r/JN{spwDo\#8`X(\*[5U ߇g F'?oXHOӯޛ)>~] ;g.Ok9݉QvL*޷z&OG+}tL#6@Wnu&Gtt, s҆ˇۘP_tumϠtYL[qFDj<GB!,q"Il^:Zc\T Fޔ~!|f!B+>QIÍ^=wz x!V@FOĩ~ ybo`eAsdsm>++lR &uup??U9{>I@IYW$ዳ=t<8|"r`P %9i}+BRg(q} MX? ׮p(G*=L"{iS#F=վwPPT: ];Z8WڮcR,a~%iQ kW\'*%ܬ)MpEşGe3MdUhe*P଺G8 U]:\%q AZ<_OϵJ 5r[u;;_>9H,"Qh~\eotIX658N318A~x8K=463Mǀ39`'\,S1Ƴ(t"BxYdo)^x:&^,d؃Š\> :N$ޛ qthRSZ[BH k=iͣ*yAC$A) \J@co9."JV`c~wpr=de,\m/в7~lŽ7-ͽ%/=wR: ƒ?bp%#_: fVh{6"\cm')V{':&qeac7fF#n; WmB|CbVvSⰠ,cDk\kj@d=CgڦQ)VZR"Br|f{n8pOSb Fc-4q2q ޳X1- U&72"H-qψH9qF{V+;N9˸GӚ?ӯE:_75ۛ]oLMILșK@_;,UvS[Ld|ۇeg?ma'eE|#oi>UYh^o<֌t;zNՐ&nYF0x$Zxq  5pFpZ!SBDhuS0_t4y}FO$ '!U{;Ɖ4)n_Rm H!n9G.63(W2xb{40k)-o~j1kCv9\DRiE?~3wHL9":vIe#.P]W"ugOoi\R4eقx_Xe..Y9pzI2GU4_L7Ϲ/Z6HT:)\iT ሃOtfZ3E?C+=xY28XpOEseA `qxUF.ub߳/jZd|~zoꃥьaSQʁ~k LWpTA,x:t*;X/u fjC vl2#i4a\֣ti%G4m5vgKo.!x%3ì|m&؛I<ԩjĕF9oʟ'go0M(T͗])$e*}ϼf~ pفO-E&kI_pOszS-C[ ܝZ/cg7FyUOl+,<'CNwŽ&pbSc1FM}ߢIӏuIv~}|~ѠflrT=,?'_84?rE*DR{\IѴ} ;EN Dž@T^MҀJz.@k njB3 wrlA;1A;ǝ#ж'CA;% g-%_9 pSJ4^P>^6['#D/> Z5w@"1}"qɷ6$rsKRURk@oILeDv_LtoB(+b7qIxżp/L"v@E= |[ S-r7FLwsz2  alS5U(0rvzx\mX+_d:@F4.Ѡ2LrR]Zj@rn! "ݘmCCd ŝNVP[E$P}$ʐ23?X2ϩ(_\U`i6[JFM"t<1<N} <'C<v@In4\Ҟt(׍`W;|A- ksOh&h?c}jeͱzCv%HϜr64( {7*g56*ljpAs*jSS\*UAalK0x2ݦ|^ s@Y#d cҠS`k2NJu|Br޹]iDG.UU53khV@Qvt@}傧%NC$>H(!nrr^\=EU 2 Gs2qE'M:Ńt&&b˴A~ pJEwD#$՚l"n+wRDE>>Ck:^,_x0Wb. }»Zb/"Y խQ̻<+`6./:«YCmJ(g0ڔ!C]@L :iءKT9dD6hINq &QHGs$طfkIٯƽ ~5,Re~KUe:On{YfQ}Pj[zR]ĔQYq.Ok ŊbTnz ̹&'M1v4 3'-oiZ."R΋yPݺWnfRJ^0 vɽ[pT"xkl&Q0 oapG ߈fL6),?-Hě%Oq<r kY 3sX6U^㵧d0  bnhwScAs-bMjS |e-~L )}y{c\w CTWnPAC.*IQU,\h)7XfgmKւ;rbݛwH Ozn*TOT\&)Tׁi,B,X9 IGsņ_ ZMTJҵGVKQZ vݤ4Q*і@nH-p 0ekZJz!vH'd\!c2 sj9ʇ(qxR ڣ̷f/e.åF:w[+^VXpZX\5[ٝM%-{ғFוŏCgRaDf#?8m89IP |} 0vH1s&]8yB21;bMNWنID]ۇgњ|S]{i{ !~(K~$&6rkɎn v.9R('R`Vaj!NCžbh#Yԧћy7u,_S^~BR+Z2|̆ZQqκd@.o}k{%Hi9#nNۿwBa/x)N[40c`sF(8߰|<3r@>8e&]y H2^A` 6:bM {X;H4YDoVGXެpQEQ0WBcXEQ DQ搨cT,nSN,mo8۲f"tB* 'u%{P;#usbgRH=O.yFƇ(viKs9)WđN^po`:DR&huc =,W1ifD'4O׸d'1dV>vBX~YVW 5Ǡ >xN= ]&7iDfUM!!VBK堐Cq~ZXAYR腅? p+Ŵ(Qrć` =ctS `|R41x\4 ׼6ۜU{#y|zifST,-h;F; P/~pԹ`B{ Pf(?fEG;=lOU '&-ǁcCK7\5o)ϤlDߣO|嬷FB*Y`jI[RU(4XHS$*G -H`ogx\c8iuP8nb zܯzesݽ5J򚩖0+}J''B#eO|a15` 1K}/Ƶ^TհH( "7D"J%l;5> TU.bV~dݴgcpT xv{n]T l(ƿ!1b|Ԧg/2&N62?$@Z>9҄rzv9 ^;tƻ3iT2[yDOwKflXO&pIΎ4 <8(YNW_YA8'T:.|vX'Ɂ,\ YA[7U?WFw*~3waۖ7>j:"\q?e" Pzr1tHUWEW/,پj'XZ1J p PQwiX>M6!7KmGs˸j&P(|u.}-ԯ?۽:,\ 7T;Ȣi&>3Sk@?ifv`o_)Mzg6>>rbStY71^ҘL)VDTWZ;Jps~;|VӘ?, PC:mtD \ˈI5'6hoTr=z%>2>ԙn8ޕA=uk=mJj! T3cqCB wb0$%:=uJRHe\{ΐ">g=kQZ{jlܖv6tie74_ٰJhe9I_lȅwZ<߈F fnDQq|0#d{ũ!Y-#bu}1V &Zq#ż,B!e終SW<͙,wȰ߫iJ-xx9 2DeN=G$M%>ybȿQS ) ^?B9UO>kө'2=Ж>v5C(}/sZrDn7-\1IYṮyWP./3)B5-dy ]êɅH5'E:)՛ hYPI{؀Q"X|J VQ{](!.,;oyO+)"Ars<,C~Є)a<^x'n9K&8xZOtLn@0 u14t ?.[y*َ"ۿ82g쯜b9f9"jBzC\cS_=<|@ogXU«Rk06|π0:@ig}cL-J͒16 T=tST=RՠHA{Wk?7/ƵZm siv.Y%/Wk*>{|'I4 G6' 檜oW=(iDxzg.%ֹi%6s|w|:^Neoic4&$<>65 ϟ%ve0LKRZp5UǢ1K:['2s{3̹ɇn^Lۣ8ؚc (m):O[6r2$)55"W- ϼ +(Su +UO2jHSM3IODʋTkIu`RPʹɘOwr nPx6nVZ2>&x+}3PVXZ>O*+K&2ct\=&:¡Lʧֆlq/Kvp2k{[8Lʵ+YϪ<4<$mDYVMuh=R#wɫV7?XI-Y/,Ʊ aH| O6"fK&3l]21MWu\(װAv7xȎ5 B밠̖+b-s"Lvxg DF7/TS纴Ή-ڲwHj d׈ yy ݴl'ےUQ,cR?@OR,r׋YҚG d"<ĊeVJO>Q>VZ ( N JxyX1?X6n V sh Vc?:"W7θ+vB0JN Nk= f9$;b;  ݢO4+ZOk֊h>rQvfY[!~y:)ђ8v_Zo _15nmYl[^4nMAIc&4*)pa py޴ okbL3.Fa@ C`K Zbdˆ?9@^w ˙z{E*LU_0;*w,Ŏ2yg8,-W:,6؋.?۾@Cll9_[:m;=΢U t{A,2 E,OӚ]N?AuW7g"K(b4Zߛi f5K*a OtRW-oDL1V!,}9eP*쀼|Jg5r7sH ן :DRJXXg!qN/^iV״lZ8&Փz9q'.EjLd{E⃧'g ;Vy?̡:`bu ]2$wϮjӇ$sMFI0\jr2١o/y/XY::\ɠ!6k-g!* "BKmH g r4|MQn]8d o6!MEjduM H#~^oh۸G ֐x%, ~a`{2PPn.Or$_h)39P )X%*4|Ԟ2p.D!'v:84Q-WYhaXEr1R:!cWJ൚ۗcKO&bK!ay%CCF9l_9$m3mA0jnBs& ~C(6ٸذ`z{CWjSrn6N'AS|x,빟zO==h$@HSzLcbR8T< Xa]q{w* {} ;(%S US ѽ:Ffh J8(nXÊ[csmqw@SHNg=j4<ޥA5~ӽ! P" Z21F@^A`7 'ӕP x3 6uAzm>#<˹{k[.mH[t\Eꑠ!NU5C@t%٪S RA hSPckXLw @%&|5lDȱ³6eCb 5` f [ͩ}f}f&5yBUވHK?LNH*?jOx0u`]?ũAAbv8 AA} Khٟw?~8}޶qÈsJzXЕJYР091{ܟjdڕyuTY9ΜWe..`@%f+!˱rc: oAO+փY~C;9}WJji}VҳV̅c(*PJnǏZGrz:ReҖۑ\~muvi?#4B޺t$AQFHZ&Qfʶn 5&=mqL8?vxy >\G4P4D92;\SSb$7BzskpgW }-Q}fúX0ri`.kJ 6H}E]e !ʝM?6%6 0*6lh+S|A$}2Amnb1f˜5u['-GSJy γMl+pZUHCYk#x01e|`ҺScc]\ӡ_K}q P( :Mc9cqmn:E^UŵU<.=vw+z܂CQl $6ޯjЫ\ߗF(ʏ*هR ( g'_.I;MJFC ܖHWO(֔3R=e(*cxV!]/y2i,1Y09`vc%*)yI6waovZf\9~z8z6 wxeuFxUj(&`xk =ؼ+S • ʨ.\gWR9߫ޮhS؆Gv̎ŤĂNYsޛN]0 _P3nyHV>RE51J?tp3DNg[aY{)|= X+?ET;ٔ7]uxFW%,FmW SEɅu%'? l1G钁\BqwV9lneU&Q\1Azc|Wm'7WQ>mVy/$AX072AB!?"D|MmTtd,/ JM~(voi/8zoB5m Yu?lќ)`{~l;Ucw)1bA/Τ+ 52SKլU!:L^7I-G>p\6OԸi̼jmj  *b,$7M8_Du[F . b i0Teg&0+?GǕ3@9:,Inij:GaU\D$ê MIfѻ+I o=t.)|NgvkypFG%6g!e:r5jbutAٜ ( U> sU{qN!fD˕0_U8Ɋm|) "wPQ- (yQ93liְlL)?%>+ `폒WX;킞; FO;?zr sDtqD0@[ڮ -0ۜAKwTM50heB/йE2CQSyg9u/A#'743t$>~𚬉(ٟs)Ǵ܅KA^N :HUhܴlgYNIOl2Zı(n%ߌd#q{2fduANO%ǕiBW@Ԧ9 aϟFa19CƯV^'?S@,ፋRM^irf[2D̽l c;Ŭ*C L(M[s%U ,.B҆#F>Hg1/ԸyYӫO߹0>BZ\6oe%Gx1?Z+#?狓OmT$}]~$c9+sTDvkV! 7NzhJ}"A]\ΡpSPM +>CB+qy\Glpa*7' j JΟ?koju|rϗpnCLJ0PfpI O}}*l ۴ m9-?h.suz@1F5fOC D4?D^C&9=-K 0,TQ7YʸJH+Ӭ +ɓxc*rv!B)WCQ!3 T7"ӈ,*m<3JK I"HCt[5 K=A65<@np8a15nmAqq{z rtq"?x IhIxq1q#^4.OEihe`',n [!WoWXc1`4pF87[qZ@i_j]ˬ hz[[K7pp-T(vB FOٲ [ml&aJ}뵻AGX3ABo=%];49u'\}{@ϭJsАotit#%1q['4/`/`g9RCo&8w(_JYUcٺȂB|L[kTP>V'6\D} ShI]?ē| kFϏHc ̼#J iT!1nV0D=׸c7砯{jYxL]7{5KfpAY#lDtXW֫J:QRb^ Wu} k_fW.C{QAPM9:g c6 B#>PQM16H"SkÐ+:t8) CIܼK̝;.mIGx _n@zm,7&erFvuO .J^v H~u2UIlN3tZTNYlv^ dmd^* O%iK:EV($݊;!u:}FM^CYC71\E2fb OQKdƬ>-!f`uv2b:%0#ZiAX՗Y$[ H,W=Y'aCatC/5{DĔHzdoA \@(;.Qoc1ɂix_q$2F ;f 8L\,?Z=%W_:d,Dy.vEJECՌo#i@. N\}G}̏_OteB-}.ԑfv{)_ީ0J"Gi*#7fk{[hΞwI)h5]&YW̒Jj:;\KK⯮uN9ȏƋQPN`s88}zb'Uhy%'yDiݟj+U :iE}JBW~ uHAmqOlo8xWEU֐9%ۈ [ΗsO!oۃW(FTFm-D#-2v,ոm8N 1ĢPèD?$Ec=I@=7h+.%Ax{nQ46&xy8tH*%3j9<&pa<>lϠe,O4L`jzG =(WEGewsO8<6 7З\GvI 4?T~4VBSj3fGL3Jޖ`(U"#9oWx>~<#ąbCA|<ԥǷtynNlX?>T1d VOrvI[{B+-I؝3qw%WhRN{-eZM~s1ۜUsjdv׶T X5Q F|yv|9S%F$Po|N=ɠy-مDidTv~[H}D`sk`52*~F9Dw 5BnLUߘ' ֧٠Mʦ$/ 㡱W.Nǰڜ kA˒dm@+c+ E2J" q=UAqO(,KF r@ 8v4d_K x(>"|})BiN=%ˣ-L|337.~S1ܣRhR`waKqꇚFBpD9>f&#E-dۨx`ED.˿PTvX/_EښDY#*uUKyWrq1MF1H\<@NYV4`Yf}penH@a_+{>YV^]xـ pk.XIX&?!k:FG" =g?v_㐦( 5t6{1ZL4izM3*j }L) vI x0e5"xZI#:C%@KxCAt[9h8)(`jVÂ6.aIקaQtܑiWbpLPh{a}RZ[YN>,=c60R,]p8epGM?#*>1nWmEAwCvB't;Njbd_nñ?wIgC\=B8S~S+opfYdXE~X\ԩYV=-3SAdm؇zC[9>!݉毃smbź[8 rbVi5mn`g^sϐ$NK&ABIu ;%uwp~HF:Ukak[Wh63>/5"*ƏŸTg jHE~^Pfp3Օ|2m(ػ ݘEw-+I <Ԁɰ\!q"}]>zUYH_>|$%3iESNu!CK CW lhf/0,Zҽt(Fx*2Q$H% э5[l/.c1d5j?j$~#&Rf c\ P,] A0Y+F&cA3D%@vyav1JhZ"h3}xKY{84)+WE4'eO y5RqhzPD>wD'i>_X]¿Y+  ?^-b͝{N,WF\Wd#dnb"urzQrDu pՠGifl=C悞xUr؄|Y=V͵'i[?i2)ZzkF™N4a9$U5 =h7ikۦ!r&ʥgm%#3&gb#)r{r&U}1mBfyHʾiPv]>B&8X.9ɳ>to$_ȐA}B&&~~j?R5dOG֦2T?Jۚa&W\ƣf ]B% 9w2sJv`g+:e5^+"#Un :;,v`hl!UʂW;GЕ`jZG5m {!ccՙVoRzv6/m!u-CB̏YK=D.#%-l[Tv r.ueǽ;~g~K-9aA4 &yu }o]/ImD$& fICD^=UӖrob if?s*-F0w5GVz+ Uf3.ۇAh6*E_%o޷|i[qUP8tvзA0|:S1Ty-[/43C .Uws eY5XA`HTJ7qv(GoiId~ҢF,kn}C-I V@KvUb3`RGlLRD_Zq(ly[&XyKT A O(aMԼ=.rW]StjS {#rVY|NGx*- vzVp^< $`~FyXv`V=~S"R"lz!v zD~$Fr:*ZFVڦآDr4E"=tj}F&Ь-́Lޚ'}Ӹ?Tdb2eTp4ʧITxڰ> 0Ex؊&LG7I ZTrpui~f+?V Oj*~+ahИ֮{[bPV2ڝ! 6d.^y=hyqܢP:ϯ|Q|vf}Y&f2[C,A<=vE_$ fuDKYE.::Pǣ7 2m&-Ÿ3מe7cƃ/w)ƾQ3H9Pfa \7b8~A@cz: Ʋo}KJDrBp ?ֹ s/=ȩ C緛_^M8OR+8Fҧô,Adx{&00+åYxSDCVQ |80`<-ExnXgGW$IϢʏBo]8q3c]QFn҈!w !Vz~ՙu*4Vzz4 !ѠQN!iQH=9hzz(hpR`ւ*b% [S}SR6fZ4X&twZxHk GNf$%@1l[ܳ!k:oџV-k\]/Fn¼)Y RtYN8Uⵢ4LL63k.dr20:›XiJ&>Wm,  vGê+f+̧ ?BF0%͑[4Z_EWZZ&{O7bY(k]eJD| 8u?= Ė♏m! \oSsM}pW/9+9Q&p HdPGa}}>D1d ѵ웫º]!~grFE eRkh1XGja&U B|0S՗ZV-e #2; ZYp|X>t>EEդ9 >>: NqKh즡ߍߠfCR£v >7x &J}M tMa}CVCmgGw{L$rMMV8rO >I-x8]gdUp4E(%. DP31 :"74Yfa eLG'B;\ E=r iݧշfR<Ϣ}6iMniȝIȡ^A! os'7g;* Qh\RYHHΞX'@T;KRQLwUN1B\;)RU$6.Ӳ@Ãd߅@ w iDhz5׮bTە nk:/]'?]j2g`}%0 LZDKsJ>vq4ӎςNߋs@J#P=w)c]]UMRW7JGv>,#,g㝊 //VtwQRJFDpi?=5U(%50$J"EJwԀJ_mEY/ϛR E+fߪ- hc;8lYV9h_A6|G ?'z˶b"FKURJnkɜ#Nnqd?o{U4X1 U7I\%Y#؊c4~Vmބvg;Lr+. kfƾre>6B;(䋔Z!fw7QJO%';;s?Bf:1ť i&%~[_cl252tFbrkS[,Pof BfB4*i, P\ ={4?=dTtĊhR&Y//ts-<%*D!2N^$ I\mZz~ Sf\pF\RsqIii[tE`@4zkt/O2^ꤢe||ws?"`4LrJ֏1Y:nոS+@,* !Je(kfupf€njDV+JM9~ʯ`O׎cg`X[zd4M[U`٠$Swa> l>jiO&k=Z#3DTjbjOlwņGf 4̂ 5Z'S!5fZ/,c0RS1mWw=|w U$N&?rᲮ[yrB^ϩZ:n/c@M Z巚l$8vYsb4͟ɞuq"Eqp"Ѕ;_m0O@y~(rR/ FOow=D:4^CEJ?lCEz간e`v)lvI.,MԿ5uW R{wKR~HD^C?şf-Ni anN",ڼXe 3”~7{˘f$$Wg;#G,H~R_7ʁk^}[)*`XaЇYVWzr,yA:<$ܺ j BvERC:UŵbS]h&δh+sBJ`.%Drn8HR{jI$ۅ~W촚awO 6aHB֖bM(xL m YSb'@vl1CE <-"Gr7!VT5Fx>݄ThtGJr4[Lv$~T=I0iK6 Ew! ,iC.E]f1Ό 'ἉC,W)d)FVoIɢ5Љ]T~m8vUK\d3LV>vixA ?M^kB1nbMsG9g;%3^so-dPץ#b )'u~4N˜ ~5-Y˟VC[*>9~JNKX fIZ+ڴnc#֙߻?6(:?q -g_䳅W)sT#L\1^c!WYR0$FCY"plⰧ&vw8Slb{aRp*!nS7#93Ix79rPUhA/m>\jJ{ΖU> @Y@؇@n|B*G۝ ]*ۦM;I bjdCh K5?F<+d2SX~a7Ld_HY=,=N&5HsOClE> ]x>r]_ҌDRۧ|G[@6$QU.ci ,hAf 1_f XpG|eέd8_YO}vo˭ 3 Z[ 1@B9J-z(0[ANAiZ(i[`ID_D]H^jqGm_ G2_>RE;7!{4ֻ 1ɔ' {浲{wH+G OPedΣC&b4$5Tq͜Jp[󩮚]}*`qm%rE v~P /<_^- έ S&^VqΜ}8a7-KV8 xi_BHQ,Ht2a+c Zmsjk /V,|/Ʀ!&U k=_ 朡W -VtSV]7W&>A(Ѻހ W)&1xym<ȿ7a$#2YC5b]i93?xFk8: mAjOCˠw~6ɸmz,l GP+ )g$4Kr%Gk{uE-$2 $_nחs KV@`=9yvBpdOzdޜa+R!2M\*8<mXT뭤QM|GpKC٨_>k Z"hۯ̼ leUgkZ*Ju`)lh3VPdPV_25:C&,6+aʖgc=X/cdV͍Sh$MC@uEѨ ^M\ b y("J'Ia!o8P<ݟC[:o{)p0u*bZYjM5"jmP{[ U 86J"YmE21wT@2!}kDŽXP+K^N/c-DA=o6o)v@FKmbHUnrBN Ωdq*}mI„A~.eBīv ֳ܂w p SaW6'N"&*Y(pM(XU՛dEvńq/e3k vZ-:WHweZoB$T^?[g\œnhԧKP־m aDn$wCdxFvĩ\}AZp?So%R,:j9EϤ<7X0rAsB5jYHg`m']"0R9yjd}@>Lr%/it1XJq&tIxz.4%MwZ]=HJKN7$z9Wmm||{FfxJ3ªv#տֳz%,ޭ~@K{09!+RYx0MHZρF|=ZD-DС #nsAh%׊?8O0֔Ĺ'-+ |K2/-HkX[/|ETq'A*--[H7/:p{xc$~\Q%|f[D, 6&E@ѩLY1"D)}EUa@TS]ɽ q]0m1R?ݪA8d漓J}9 egsPmU0u%v*Ql?Gbb.-CdLvQXHJe l/œk4C6}&B-7@':ð0zKT'w/6KtK-xu0bmtCY@z(_ky&-/1 @UD3Ɗ=NUaf#ꬖMD.a(jO̠>YN Y£rx5(7!*~ Ғ3J0qHmENeZOΒtϮzd;J* SIFZXU"Iт򨧂77Wn)?<(0HapZ Fli¹] ]t(3<"MXڒڏaXbրI]S\Yp͋u4B4:g})"3Od_v^~|_Пrkh׶ʠkj4:9{ N _!k? n|gVWܩcG9(ȱeW(2n6.v#*d:ϙTVkyAHRc'\X6 1@mRgwj>46b< 4j+n5guVX.}jh@)҃rI0;cD}AL2^Kq4Qe$OnTpX;&.QY1gx/| C{Ék4ֻgghN^kkUj`v49P8Y5eЖln2Af#KTHٛƛ$鰾!nZ7f ݨi7{2?- <$R߂'- 'o,~З XҎ%l8ôG )KƻoUXHٌNGhKd\j-t[5љ`=C+'xT|[/ "jqPdS>2 4aM`w }lPVM%8tƹ6vZj=]8j,:uʐ@ fa&CUf^ZNWئ7rlTr:Cz&49=됆e n]i6OG,n=15<\츮hnf)~4*q([Kά6giN},2,0C!uCͨ͒f2Bņ$s?|˖V.)4 Ì[؏6Pҕs#F1{-|P(طq.ˑeb1=OoOC*h}1 ۴}%؞t4U>û[hm:rӡ:!sv&SD vac. LTaoSW"츀tɠwx Y`0{cs3§GSpX},bvmGd;pI!"J8JtzmkiI5u` ? YHC2n FP(}ًL7 Q ݰĽ#.B?ۥn 4궾6db6pܚ}'`>I{,'OSSgZr>ȹz!:Lct #Z=` /oH֦'Ì_E߅'vG,sF?#Gj gs@Yk/['Zw 6K21g P9x 뻵Nܛ ߖwH;VT4OWD٤"'T(+0r-+瘈Z sb"1_-,#ܨIYY˚ kz띳6\yʑUCG[$:i<5 {̥33.J>$t;"a` W;aM#x-)=tP "2b}=z= <VwT9/z#eܴ@M'>}n&/ie.U#EY3Fɲ҂v$ K*`n:vtz.+2N/;Xpc6[u+H931Eؑ-"!ofi쳈O=jAR eOzgA[0+TwU閪ۆ*]6_|NZ(f\󣏓ʹ7F t_[퓤"Wb-Oc0uz_ RBifyF}Yf0b-ѢF tɦWDZf"̛8_\_A£/=1-6;|D倚Xj!1%P!7q)L%WeNMx.(zf;cB] A4ٜ[מȌ]X'GkGH . 1ۖ/jӤr)7 3˾ud!VBG~Xu4RpTYuzXwLugLWp#a]}4Vګ.("C'} ?365mtfb_7IY@^'2FKi'Qoң_%?;Mр+ 7d095d$ZTA\Uif_}#!+ wDz/TgʔrΑnf &Qt3khAMsouB ʅ_D+}IJt;YhD$6;js%y:dG=уZ^.FحR Pȹ*qt1L 6Fסw3[q"6LnƧr@Zd?T3P"FRM1Y/1_H QYOb5|)!2/Pg|kkOh;J Jxq?"yQ<5xp=l4*Ɵit"]@D|w7 g1vh;Sr$U zҰJɌm(+;H3Ҫ6N^>3XBJKJTMAHom BGJ^d(_yvv@]E"o; dيYXUG|]d Bx ͌e@ S_vk\0fNdUWB%E@I'Nm왼焘C^Czw-0K8<e -~}4z5uFX #].:,8ΓySBM#+$d>8GwGb s0JHl Lwmx\Yf<ՂXfIw2A[r@ĊOn][3G‰K=,i~VӼeδz$!jp)?:9&4F9ԅq6tKPWi%N=!̤Kyٚe0&Åת.gs fy0q dZmm,}5'GvK1 FOdXZdSRNh]2}#pYQk㢫 Go7[ƺ*iH 6::7M$  O&@k//6rk+Cy5ުBN/Rh\4 BĪ9]Zfq6wA1c.RR=u2xfJbAvb{3ƬZHKMk Yf!-*]xYqٖ5x>Ƽ@K*HG5>0!l =LZn]~&֗/Ӆ5tAh+7թooeAz٘777~uLn(3;BS)1<`ݗ۞2'])ۖ9_ `G vla.<3oO𦎳 Y^3t.KP5sE CEtq;,^ JlQ˰D*WSnt)Z![X>zhyY'} nc0"X?ĢSO$.\' 7>w{=M;1Q^j&u㿌=j(ў0aޅ-E/^ \2*1ܔS^-nkgK !V8ot0O@ӷu3 gbY|7~1T4ɥ;Yj$X__sTi \r ^A4wݠu1/c6챵a̜29brwF8 \8s&C }#K>V CdPaa8A=x 2ATo2gD-vk 1gY.FNA57LtEkOd s ]\lK5Y`$|S D!_4QX(ܒ1_6m68m{f5h/p[*=`NR9M?&ɶz4um5e1Hl|6L#GmUD!:R,{@ _˥C)"DIByX2UcQ}xf%I"vFz}D5" ,uVXl3EwdxFAmrϥR2(@F5{M>b6QsCW$IIvF\rur tZ!||ϪW% UvlPwW -2c 1%@,K+8͛-d0c/rA>X&/<-X5Htڲ+/o)liy(ov ʥ `8#2A2K{/ڐh)joh*2)b9SrHNFUM2l]4I rUD IL,júC9O:F0D7" F$[1ٟ=!oZyPb݉emDG[݆$vw@+2<i9'/bKdfI8pgT]bA{e* Bk}3ݢRN eP' ^xNs'J3[ o4C&PKnDd28!1[5; 1Rć NPMr\wn .q:u@1聝ӁU[HgCΚuiA#ŋp,ù1WQIvٹ\*HGRipšI:Y:ln\4 ,8eYc~$ HkJ HQD,ADM}?λ࠶[`) gy2?⋤pTP+:odyigm ͋7hw¬WS;q];r)+Υ2:5|g^g 9pWO%+%pKy;"!WB^#CILsi7pYtItmb7Jz$p):ڀV4zޏAaگXVBy5p/e eG'yln0K R[SS؄cB"uuA-DN(孜7h{J_ =}k {ģ0yN"\HQԱJPLo.P0lsz1 G7)*Ϝ1]xQ6}u4VEdqfct"sH Lox?@5q {l)1Z:>Q)z({Ԕrk1٢@&(%МuۭTSk7k~Q=W+~@ xlǸw`K&nhmu{`)fBGEZb숮/.Vf$]G𕫠bԕǝٗtT=}r^;Qs}y ~E6Gu~J˄dr_@17ݪ$u>a;< \5g m]/ҹȷ'eʹ)?B(a`u:,XJ'HhE ije iu^cs70Ueo)L˨N ڂEIzVbX7aԴ%ל3տ$D&f(h]Oǜ??U{Ș>O,[IַBצ缗<ߙDŽZ7П`AIٝܙ'wyQYFxŊ3~ڋy,@TWXBx PV>i'BJdL$Et/L؇0e۾GqIp<%Ѳ3DK!S;_L-Ȥ`'M7U>55u1ͮidͿrysKj+`/dRUNa$ "\t( ,HHRRIr!4<~<3tO_QE B.ZIE0>-9>7e vHٕ+\.yp0IXՐ8L~4~'f[gx8 -TCX *k,[9G@Se?~M}YV//.<8TQ#R<$;A8Y;.>h|Az-F(-rDJvG"ϙKSXUa.?ܽga1kr;OvKx(j\ (+|0nBL+/)k$sŨo/00NlPzD3%ۚw&T}oEy#rY܂x.ס݊%&hKqm!"ul ;fY]2K5>!i $>*-ƺ*ª5/2WJ353,qus2-u 9 ef诧&P5ɋI[;5Ư:E5 X5P #B_l†83.s㪱Gב{6K3";{b{>`5l/yyU@A.(ITsi7a@t$D6 ؼt*)@h)30S 14&BJ6 {ێtLJɛ"+/d# p`{l5p::F/ p$ëUi1ҭ.݉u:J`^3h9+,zJml lcf?鬗h +&\?/QM¾iO U-b?׏CYpٕ_tm%Q(q<%DR{.e nF]Y_~ޡ@\y1-e8Gdxn~HS] 6Q +qKܵ+evL EdQd"5{qǁsBXg?DbUs}@b+"i뷚mF)iš|"bU~E>Z`ḨnFTSIIdցMA06PYW4Gz NҰ54}+oЇxH Þ|:(<'(Gbgl7 Wk /Afy12UvFQZk#=MGT;+]TimAHlS6{{[dpQmL`/"nEF[G)&(ءņ4 IV]SjKxLuKLCZ6[`q''}>Gn.f $Ƕ+6䨵zwD?v\,rvL:R)8_5Ow!h3u2\" SW0v=p/R"sT@R!w>팧 5nK`Hv)~\y^0\/|ܛL $z8y)<}kJ=ܶhjbe>?QU|15V#'k`ΒF&,uT 0NI\%( 7[Q |%ZRqg k(<ag=T˼ʏ!Xd#G&4R6J$҈MTjrϟ2fc1 "wЫcǾ zN?݅`#JI9@X avf{~Rp2$F_:86 !N~_Q\5ZHDѬv8LĒ8=Ӆ!Lb2liv O*Dt.bTBeQ~%J^HxpZ 6NZ7[y.EJwb#Wu`\_v7%ͮ+tzEa&mΖyP t@/O@^DC`5uE5+2bIƛousdz"' sʊ2*] @Alj|?Ca[ɱ3i0ű\lန_fzLG`VM+_x{8Vʙ&\.4 ?!Y}X[VHVi wK-^ _')T:1m [K5(~ab`*}D%\CmP,~DDHcEX9F԰Pv|{R1 =۹|oȐ\Xod}L@ouX9ok#G dE>]=~ ⦬NӜ:5)p5"v|jQ*p=.reމyz檣Ґ1翚Or0_ Jߠu6yt_\\\3N]ZDyc ~poFZ=LaɉEIlckvT4JxzE^?´r;c:!o]G<[f`Ƈ ig̚jx}p|̸ۡ/}kۯ/[ , Ei$4S=^tjSns-o5@W&MNoEU˩"EȞTmoʎ`0 eSqv$<@l[x(I rNRP^x6Bu`|C|55ۿm:u2 '7Mb"OGMg1%LbֲmHkmGn Vک̓ŃwzfP8rȫ>ތs u6ghAH?ݦ($Dq2b }$W3f)OEyo?,R_g}WY~8p&6rx*qU͜T%F{Ol9RA{ëO4 uJ6'b)0+Q[Տ34gVr}~PGۛ<.R.Wf~+ᓯ`?Eޓk>/t(:}bٮtO)؈ʃPf„]SǶZ2jgHoYߜB6g*gUN׎8iZ`s&)'T l@o،Jή Ƽ%`Ԇ K$!r)jlPR('/2SWN7ʃdζ})5 OD¿rCdxOd3~szff nXrqxM$j>B.ȻaE"N|v}? vw7{4<)Qr V{o&U%6`| ~We7)ʷ mXC\IR].`IzN^243V==ZY d^uvv+M}A,:fb4L:٥7ӣTbg@w\9?n8ccURyl'iǃU9`@9G ט}q O 2du~:FgTSkmLe Ny-]U{<Azu< 6Cƛt)mq8n #^SkGVGnk *=S[1c+;_JExSvBJjךLIx Oc?!;d%"")ާJ?=]_GA+`x`E#G}K+z͌JGSrIڄ~ 8v盲M̭ue||X롈bw [:6!_E Y737e [ CՠѲbw)BvЂ6R&)[&jaٞ}Zֵ k' ]PtmcBPt~cw;Ÿ-?iAa)؞#M_=31$;WO\:)Ts8RB+3[xhkMrT n v|e:HISo癥i b+SN o[ӶO0>rR0RoXQ e?) uhԈ,:Cg,eBwxg*: 2g6uFۆ_&)Z<:lf!Xz(=cuf`s@6Ɔ<1O1oo*bIL4T aòi[* |6۞{|n24*`]\Q1'e!9ֆ_;jFU]Tv ?>hDz sE  ޱ}qALAjp^C&xks3츾Z؁u $G0ݜDeY:6C%;X:pG;dbPCE ;Rk3yPBn]g=6l%ݰ*-E-,xxVcUq•JSxO":{_9Y SGh(&a-HV!/5v_tM<;&m?epyX' r[ %$,!CfmлX /ħ<#TT0(mr{}" V/ ZKUukd@Ny5>98)ܸBC+W-4nR|/a= e7"t&To HzOl8G4;{2kBYargQ & sWNGL\ qfFE:fP5p儰`[-L+sMjփuݐQ>=u?(ܦ61Txn@8b3v6\gO݀v&M0GrO`{Ϧ&P.ybO\Ca#|Qs/Wz|j6HKKq+PCv." >@xa - K-ViVGTTfCx~4{xʰ֙pMJZn_r~Qwl3Hgk`έLe,aFefXJEO &bf\> I.a$o%Pz`R( ,xH'צ:gIDّxgrz Q<^9rږ$V`&rï}v`d{n(t/IIgDJ`+R(Ae#OKI":Irް7R2Ӽ;(0 .KR"S]s$i(M:ӚC#1幺paD;uoX#ܡ޶j][@Y}FhRQ' ;[ fj8* +&r̽wkZP t9D *+IGqU%k氂o]Y?YYK 5<  NMkiRzG7*폄3&q[Pm׀1Y4O+ 0^0U`{'SspRwDf(NAe0Ŵz72~OLu6_.aRؒywx,.X~`3SG?)dpAJq^v+(őĵ4JL #VӆHUdz*)"J!NC cϟ;:QY wf dx<`޲-εΒrCV\۪(p0Rk(ý!A,Z@~}8sHke1s5~"ﲙfy&L4狕˅ tpf=zс?F YE$MZZ'&6┙6^J㿠m0$7O ,UdN3Ek%P$;*.%l_ ƧG.{aMBx,nXN7SND(>2'0|K~^bZjFY IJ+&\DbADC/q~d 3l N| w7"0 $trn8(hν|s&?Rð<ZFdr~񫁌}PKEbfJW?ي0^T:C`;}e_r)S-4G`q|P)߿K"_݈מógop ׺ՠAT"i5 - tr2ww_\kPat!i)#$E;":;#Zp!Ltr'3isjd., F,كȀˤz-a” α$|ŐB?Ԝq|*o17`R,a'Udi[8Ze*8NE93:X - ˫3]cKPWPtUɘx}a#86/"yT FԶO{yh )bOM[2 ]3B\H|ʓ Ľ$}꽧<e*G: g7 t//ܲ.E23"y?CIUz14AaAVMFv ū&>v̾xnx1; 0&Vz^^VxڿۥV)`& ݯ (UF 2c stB͑&̚'6ڬ%N,ї0;vARZ<֔#*4Gd+@c;[U&u7rFmi LA!#GL1ze3-SM X[" :ݒK&^>{(/$qhB3?E}m2RTV71Vq4u;|JxTq~ՊsCaCX#ȇ^v5~Ww]ĐzO\W!87US`_\Ѓ$蚿yzK'qǞFDjukٞXo;^f FLW"Hc0$%r!:¥fӯ9PZwna|IeCg&4_'h  (-ĀX-hl1̊=7 @VZSsf^/!L&kmV1'_B:n{>#_H)9t#YD9}LR gjȾ \` k>I5/޵n@V<~nɤ)<)A&[--oBmcڥ6D5t1Q?02`xc5SN#@0qjf61&-P&/`T![TآDwX{:"%Eb<肞kg+\󑑾,C/҈J7>A]$fE B 7oxIۖD#FONYmS $lh#Z~ K]roXlƅ4pA≄ 6oޒ>eY?;PvKb_\_cc3vFr}xR+Qs:4vП xix&-y<9a#@S#-qMv?G^=}yJz"vh/ZiH3#uܽrق&ruۃWs$`םH&ίgϾj݄Y_k-NXF? ld5\EaCW|ykS>TIh;]LH[츗zD 7QCɑ+v0 OUO9ؔ[]`Vd7ڼÝWR%|ĉRUhIBQQDX@DۆZu>3Ƴ8 &pdjJõ"~m asX\WAag(rܣz߬- a''HٓȊu[b u S :4*%~6:55C'Jo!QЇ ]F\rq\4x]m-y*YJ^҇ 0h5Q%ε$z~0>0ڈZ"je]^1tbp͜3OI⚮zVru˟YV\FH9$[Jd? t}Z .(g<='@{fE^D JV:iӢ?g]Ɉ;W\ne'Z iYKau+r5ZX; bVN=RDB7e6ދ'/F69쬙r=1+vsw6 w=@3d=LbijC<Ի.+7[i$9<Ug"1QݗSDl1t]7]QMK= g&5 8ԊYlX9Y]ۥ~Mv-&|%"t/ q=~]jji!پhBl{k.ÊQ;o_XHWl%`@g3bda=e##7#-dͷ {'@:Ͷ9|G9+yKx,)DSR,mf^"L3yq8 ijFQ@vX`t:MԵxv }~7I[`qP$wX U`s'L8"qo-D\,+m$b-K?* O-e gκeB78ru8n.>Whd=SbCllBq$&H4AZx-D^A_Mγkm;Q^|'3:O2Tr 4Ӎ1!4ۼZ a5TsicE5 ,uGjGya CgW{CKG82/蓚QMhދ+@yޒ~ePpFSJEC&}iV$ZFZ<6NwMJ;,%}0%s]NTc"X)!?C!I+-6#}0i~*5=ؐ@oZeS4!=7w-c˹on ӣ,_,[v.'gI9ş> cbd@3"$H1!.zjY,%~ r<˗$3L5p'֝U0 p;Ta: ʴOpjr[H }bh 7$6$'OMci2SAa n]MB Pwb on4#8>ؿ @L՛zjW䆩94RFV;=WQ/vZVZ#9%FgЗ m[ yh&g,2snI$͊bGäpMvL&[PK4Vo,EDl9V:3* M~IdRI1Ų;?XJW;7rβLs*WOJb{#av$ `O˫_]3Ƅ 8VZ E_ŠrڒEM)h(*~pLѮyINfiH7.xK]A3αCFmo++=ۖC.r=E y;zѪ987x^eE[js!_u+Xہx_~"@P`?oܹakF傊?aW=THiK'7yɚa8yYYJq*`'+)^?B^l01S2*F.w'S, |487VZ *R(rs"O5FNPp<8g[q󳝀SZ>pG:VYPؓx MnaV-SD_Y[K]ON0L\#A"֍q|8|4RFOKcڹs96S* L6%< .8kFz ~<ze^8o幇r) FL&gꈨVYw٬=`1 X,5f\ӿ%. zGzy1AOU= J1עPUBUDBL{9aȚz=9kqx)5H{.)/bm?J?bKD+K1$ B׼QVk;Qmٹk3(˝xdySOd.xy&|XQx.S糀l'| yYa]Qe!r$ojkDױY!fuj\d KR8NџbAvt;x+n׃qMZMDw2u"M;I\QO=Aп +~qjR:qpʺ4H=4`H޵*\V*]f^>㞸CovL;UQ4b*t x|VѥdRQ ^SMҋ3 ʺ@ə?>sU(g\3`{Mr}g5E5R]`GeZЍN\2#LiH_CE#6*%  R@/ނB/w_GP2k11i윗jfLlyC1CPL.,?d2]Le,YKG-#m;tF$#>*|lWcB3'/{f'm3 (,E1ֆ0&i nEz$/3nhCQ5F&rS7IlFO"6nۼ 4[;~9}!f4[UH'gBO/;)v2 !ޛbH^E)fBQFltW0R&BO[QW|l/DqrɈN`5]L{º-&85x #$m!`ra*{0spD 7xJUyމ zP<&Sdr<Il ԎeRYr<ǎ!畋yŢ 4 [_-- ?>zBݭ^I}Җ!1V!M[z%Q,t0p磒GzkPUbPfY,ܽ6@vKW <˧[', ; dYDj<"ck:+0٪[tM]PrS MuM}E eꆑߓOf<ڑ$)!^%Vڕ y>"d–ӐնAlBܑȋؽɜͥXj.jkOolJ@-hL }̓? z0'j5Y-RyW@^|!X?9a5/$)iuB ;^Q˰3Z1RbȔXϮJz*Cʍb$HcAɭ0q\_dK3512?Ӝ˹ iZ)[a G +.Q1тEySzM2gOs0WH \Io^0[yr}lA>UbgIp9E Pb#%:ʗ);1)b.xJ2OА컜 p.x I4(gYwA5Rl.)7zhmŷWyw 8-;;#" Og7 zME8kO7rƵcbFk&5@gj mVC{%j=}]#hcpjY nY o2[1p`Ԕv""JWіy447/U%m& ;y?xxfQ T9ImԀ^n 봵ƀ&m,Ll phf1 1Ş~(.W#1t A@gܓAZN᳷0wU_&T +prۡg {qSNTW8QЄ [}FI^Na[ZF.e(S J_3/pv@QF`qN?g/ l ]fbYw %o ESK"(#HcQJ*hvg .&T)[-w(R1S^:gq7vS]vh`@JFL,L^?++'_2+ ^ pz~Hs&ǟi=d)C.i^/v-7;_1dq LHJet4eHX{cu?`] $0T]qڈ@hIbZ7_0YZk"9d% ;Н:P\ 9Ajm [N[#8ĤDmtuʁ1ڹjx$ueu*}3H(* з#櫧,!t,,ΑP $h~W)׬bE>64^fnXe֫B/Q$Ț薜5JCh,U0ܔȴ|u5_C >I[y][ `^]q^[5وYS2w`A[Olog ǀ3`R[0E k[.653JJ WܹS-O70RMbL5Vɫ9BjХW1|9_lxa> 0oOxU'(=h,>mTf$||ghc5F\ %I$dTpY̊gxG%z92*N)0խ3}1zKJ}XZhs{T!Hm7Q@}y8sTv(ܪe ޮGqZf{xlWS9ֆOQJT|鮸G(] Nav+Mn)*}[lc5ѡ/qmFs_w +FcM^u(x:PtbAVqL&51ݥ+3"#0 b1iIi h*=+*_Ӆ;_hCw}(䧐b }94f .E%s3s+c4*&sNd5 w]Gt(w ./n؜gU18e5 b@#X) ׺짚~3^<8H]sT!K -B!:Vo_`K)1bBH=8z8^8FqۃDQI_k `C5 O࣑GI{hԪL>,:@8YxR4ў{0Iroz7T\-))bM?=<<>^b-YG;q@Ҋ0i0!אi[v3Tkp`bi GON s ۫(zDFYhEi 2,dueN tJDE3-ڭZ.Sk:-m dshcB !Ahσ4ڌun3$DL-Q 0ȟJSqjf4tAJ:FëP!גAiNe-.e H3D~n@eK˷'5Dq Hw_v#$3f!ͱC':Ws=2>tQܜ~?P' >!v+E( u?Q盙fT  -9j!x~dBX ZP'D蠃aW0QSPŷG1:8\Dqte8mq5tX8>M070vm \hT͌\9wmk\цv]Mxm3n:Y΋X S3c _Ak_,jJ8kr5Lo8剧ԽAxIPtoHtkW=0pU~@>#8b`߾rG*ȮO6=N' + \On/MUdZ }}WD[+3"2 Sr6,杷ІzD+!}\lw]Pv}%i5?Զ,ٟv`+82d U}n.hBҴj1+ۚh%5n)dh\|X<4*W.yU54fTs Y챃M] ʵ gyx:$OKA-󠨐 o' [rIJI]Nq1S +q=T/Hnx9 ŌeV+/A^uJe ?*\Y5g&uFYZIJ--ҫUMܢ՘V4E$va^s1C#@[6:W)Uj*RLDE)+٭M# = $7 !M,!@/( UujVsʷͲYWΨ]{rp-W`U뽐t=Ymma甚cĢJyKA|JX>897ϴpn>Glf: Oj-@{=YU 7{ ap7F`w" FQPYbȈ ^$SmCSiwuDfv38k2'4s%Yiz')#-ӱ|UC"㜊4 YZRPq Qj!ʭ~W(oAE7c?ڴa?3-}+tӝ ѻ}Mơ9~.ąeCϬeqk:uE? *Ǐ['Q^Tk3>:T2/;8?F[cKHL_% SjEvkcYT˄aKA*PhŹ_Ҷ0DZvJ*byFq8q'QLN[&&OӁ j*e|-EMia6QP~+r1WB9h(%Hyv_ȸ(eN+[-J0"h~ q9+0nœZ!Ë6VY#J2n^ZK_A1~w3Xu9 Z9[p_[ad 6rJ=mȉ@9l"q/>>nv0Qv;AT }:;[*ԄEORrR"8w9f$5&yoYʹF&:Pqxa&؀d(-ugyA엀\Ǐ Y*X6ML5' .;#>V1[8bMqĻ'OXo; ̑^n-RJjRc@_Ћ!a_L}Ey/n-@W>պeOQU1Ya%1"q IgFpL& +l&p?08yNֈlx_IJIRguhIGcM 1jJIKE/ަә ݞRZ9UOhƒ1`Z2ghYw[(-֌!f}_ٯ@6ʤy^v <-rfL[eAP4^@>{hR y=ʞ+ c^5 PT2 2rbbTٴ|]B -zOp~o z%32#u{!&W=7;'jHU fLvuht jqtG h;0b ԽHL<:)2n-~Xx8hzD)`%B(RG&uV3g;t7`9g9?ߢ}˦-VQ\vWGy5ćskU>5"̈́Vս@M=SmTKmMoy pDQ*1N׊Vx+ :*F)%XsO؝ 5*QkJhuڦ1hx6oW#V[Nas|?^9Z $‰o0 gj0D!?ǐhTE~X$(`Q8&LiՉ%ibTHZ|Пd {e9qN֚N'^,Bo}{@P6ٚc8Aﹱ*Y Q' u4Q=ϛ,p{4#Z' ici$KgmglVh1-6^,'b C5 dpԉx}aRv{?z%iym+&YvK]Qq|(I2D1 X-Sہ)Z_k䏍7d+J;_ oc:;Oꉃq_V&ݾ+tRKB 3BRVeav;OʳwAdkJ_` v*/0sp7e>whlɧm?HI_Yz6|mo߆3S"i;x'<ދvhRJ~wš}ޡ[vD`QO6mqa֬h?eȕSƫ9{9#lOo'lТD2Pj<!oPkW k}|MG&(H̠m)nL"/xD &G#Yt􏜷)%`%RWڗtZ9oʗG;Om|a Z]XxzR'"q&Z_/S VVjVC4'('鱯8 Ǡ$79]sjB[7VaZ@Nd`5M:'S']xTç#rSG2 z46v-zK^lj $Ӈx/x[_;Edž#"0Bag +:k#ĥ̂6Tt0a~ =bM2H_3YgAV~70}(\^u#ԄAyI*\voN5 li_A)[bD*~2]5WAHD1_M ed%[TFB̄s) ̒&s%Ex LrMI%f8\[-ABXi4膏Ez9t־z4!c@GYɋBXf3ٵ*`/lKwnOZJZ8oSf204؟kA)5((xBaؠc9N|j#[%PэĬB&~ll1Vetd9PD3S鎝q T߰ a$8tsWd1]v28lzCCꌡD56$G0}0,WW&z"80<ðrC]]i"kwOsjΫČ],<{)o@^(f#ΎE8dMCv@rC&gk ŔLkB%k,׏+P r&\>ꯄoJ~Q WXc7{9= ҝޠ@[-ڼwoR4IB(PwGlwAjl) R*)3R'db49 =)DQ'^Ǚ]CXY/D2fO[o.lZihQ'A0VG_W1{5`ù ףM51Lm "^ ?;B I,퟊>2橠ֵ-'7(+ m׻|ܽ#-&0|4nKK7)^j9oNs. П;ȠOdE?+*ɣiBDDꥯ}v 8:%捡.Ӓ_ EeX-ջN" T L58WQԍ4/E }3C0G)=xD.8*.jC.S7r;7Kr>zOMG~$Y4Q Wp-LMMxCyќ35$X|N ۇvÌ5̙, T]`0KmVD[*`5~ qe94Z)euZnk}EJm ݒAs马;@raNȡ{TĀK=$:j9`#+$rj#ֺ\ 2g4LX(EE 3d3b9ԇb'v۷PZ9&>?J'?ay_ OURGJ}r/p 띧DR $+d/ьCRA[0 |މ8[8n b5Q[8vOh{Իzэ/yL)7eo MJA ߁'}eDLudf5x4oߌGK(m?$}xO'/>1N& @jjTIwM7/ƲI܃957lVݯ#x3c׉L7%znzۘ[!Stl '`5ɥ>sG =1Dz};z a9띣n1:>!y my Y-/bݦlFޥ=E'-}Uy W2-L!>b4K 4E˿ $෢k_t[Id=aZF-w+h4'-\kGA!ܵݖj ;p6.wXp=O%r =BY5>ݥ¬2>Cg_#64fCmU;fh ɚ~ ~l@8to7#zi) mT.3rG ƓB]&f S U0F=C N*_%;ZW_xP 'ٚ;ߙFr9QS8boL[XꯈU4g/&rHSb=7QꞳȦA ]N E̟d`9NX.I&B I D:]wp\DtS^e>7dT㏪}X>H!dN1\̄Y_fȌ0 smB^?!JO6AtC>sJF BVn>7ar?oC,ԯxM*n3$3@.f{q1\vl2R=И@m` ]8(%\v! !&81XK:s(`qMqu9yiZ,; G 5Xs,/LH~ P~q ˉZXT2n28jm,!1޸qMfԇ]ܒIU$qMny=Vi\k۴^U(ߗ>[p tR@ Z{qĸt78Փ_FLcLo-L<Fm4w֯=ugKn5#RUy*;5f \hB4K`xCPҙ .sLcKf{tDCb:^OUj)2xxx5b/(({A /?Dփx{uW ^h~׃8 /ku v>sZsE Ojy+|GcV']C7l00-G&E_b'SݞRLwkM Ko=`(YUi/32ŧ*$gŭUVuxOa;wykPD=-ϼ~Cw(W Q/#;]i2]IShs v4{([ [L,swHx.=4I"F~%nElƃY9&Afl;@/'W3D AԌRm}%pe[<^.ñ ?lp==ꖦB\I hĀf]rf"m^DW;`<ܛT[s/&x]-RvvK _OhHo;x9&/N9i؈bZYX{1CȞut:S>T)cֵYjas,!z3B9< rZT J8P Wt%-pv+.E$W/dTsҡ&>W]i箻RtR3Fo'&֭Rhױ:mȍ a~Hw+;<Т4o+eTsx~F EUQ\}E3M*B8@/HZ092j=BLYF5C,H \0b޿LX8 QxխQnp# ?ڃϔy@hySS&s~g=2^;M_Ђԉ9LʥٲS[1$/r#v='K! -.i,ݠd]ohl߈\H -\WqaC#]ʈm?丞]۟i4m֤`#']&jϩq )x4ߙ Ln52s(nhK"o #I@Hb(, Ns0;D,J)ԩG~P.3Y3IG8VkBg: !7 -) 'zRY k)j _逸XߠPMKioN+"w Qp끎d9ٶ %ېdYe>~LMK-Uf]|x2;sٮS{5/`oz,LJ/*&fkɒټY Dƃ)#Ipaȅf)ZrR00OK u(Iʿd:؜<c!0TK~iShڡ3FZam)iK WKDϡG(`#w_ w:VX5f5*ELd&(!e d>RzE4ݎA; [C?1e· 0za- zY^3]< d5#roM jALťјskHTc?BS:jsk)Y4Cc|T{(T'i!\$I;Ķ׹|Om 6`+a鼉/\Dڋy>:ՊTֽ=l툹;ӦέɯkL71hZoݹyeo؇471n dt%F67S.1ׁ-̮gci^zf?Oqui8轀A]snʰ4ϖ?vIrtk'9ސ^ݛccЋ@U JŞD܈Dxj;ڟ<uJ&]_Z䖴aTQI lytoXoY6K+.U2.^ uJPS w}*t<)Fr&#t3gk(C2 ! 2J RrBfug_Sw|[j4тxT+]Ad?'cR, ȄT㍷w5›c1& bf pE`[F Ρ@Ol>EDx-PqV`쎗%<Ԥquqla/CZr$b3CߓL277+B[# cDۙ`V `{=#0kPiz3 ӝzщ@bq!n$5ﯾ`ϹvClC@cOr} bp0ԩ(u7*f`A!L?`C]0p3s}PM 8zW g6;EWA^q[V:!S5.m=S>fi mɪ 1Z rS(¶q}X$0gAV{[n&vs++$0ؘ*l3C =lC ӎyѻO0Kv-FOI~!E') H40cAUNP %6AM}K^X*#d,Yr ;m@=> '3/gx#'ZG,4p'3Y -c0(wB+pf==~|V x`4{]".yFz/˲؟/G~fdVcPV6C+PjRYks\#ܖ? u .srϱ\ۨ3!7Q2ӽR6JֿRCɊ-)]\("> ln(K[7={6 }.0O d%`IUGKG'ǐ~*k! 5ԯe&'(N.< e;nν-^vQOc)\  (oW^`T/'8D~JpL 1)V 0$p_/nw&c h'5%V[Z%pF26F!kNZ QQT+)qcWRv4"[l_1.K!smމRۄl}P9_t7uM+K2zߪ4?7^ \Qs{*`?ˉjO髓"K_40Gm#90: C ppc\aJ].eqb' Sc4Er0i< cmdbl 9=Ty쬜Mm >y01`Wta'Jag(Tm2N{#֓uzFR (k] |{*Tlj) */(+#!Q$\[tHEF9KH3@")#n(.Nm qψ|;({t_PGGɟ~CPTJa"[}E($1:<:L ?@mԃ\0HcH4EX67k| k5cSh<ļP`\RR㎠zu; sJE3!O.߰W $jInhԄMhE>kNj_e]a !Yw$HV}MᑥRcDEC&Ut>yj]flR"kus㰌WAKX=ps1鲦 Rg|kGۋ|wr7~70KsݒT\^e4 '!9isYxW(= =!2 ȹ퀖6K@T&l`:CqYe{W(X%ʦw0:V]m43iqXR5F,TGbN0m_ ONtyg -<5Z|XݓOt4Gp:y8Gʬ*: rv/[MWɻWm#wG_&剶R$-f'6洳"O@Qu2-NH(iϛ̔<Z6=i8*v=^\ PN fxY,l1Sׯ{8fNAH^MMBTa&&T^D&nn;CVvN.U'#q3F|pwIEEwpgŷyQV`хRDEWKz"/67dƜruﷇ5)t~An&Oa6<@ _0S(W:Qj@6~!P^1gUogb]21XE6?⪸w.*B^`CN*Ie$C 8D#]pCȨ$}iutmt<Օe=U}f}sܰ<+|[M V[sa7BPwߖGL5d2 7@[ǐ)vV/"?wWLۓFO s[DŽ7)Xx~(ȍHISQahCMtWdm4;\_јghRWph]ϡE !t;c O*wEx]3m¸-(!5 9iTt"=HmT}1Ns#FH TRlHKo0ũ;\ 0yTR~yt oielc.^~}R)s0F6YUAtY;QĎg+NۅqYNoYjO>όd>V>.e6)ޱ*n(#8W2=KBvCttλ (6DC`Κr<2im# U)si?!@C/i<6SuQ`Qp Þps^,Ֆ1t)Hx_xXD 膬89Yn$.NdV'@Q4z*B I\~?L{!& mme% @g\8n,i\߽CL)^XPC9ؚyzR 57. }F-g՜l eٔ$3ǫqfz`~f/֦ +D0+,r L1I <l}*V*ҁNf+D4yh%JYTX73VLX!V0[0"JӍV.[y\tX|ISgJL+a4aF̍Q@(1ֽq< V9 ku HtY6+* j!<@3t7(}?*ˣ:QdI7(y T{9jwB2Y06U>,,=L|~ȵD0HfQXxyRʥȡhGǔ|4iF6oa9I |- 2C7hFˋHvgaF=>N5D01ך.BFnQ?I4֯/2y}6ŮVRi'X~or3F9ηnߎo F(|Hpyif2(+9*{x3hTXV2ȍ}/#&#nkɗ`pZ5'فfn0S_zE/`JO4X3a ˥댡p\6q㽡b .7?ˬLLw#C`c̯¢J3 ^F ~sZ[o>+oUh^ѮDW]ƨJE"ߡGn"mu0#JʺC j-9þ~8ܦ#l8B s[֭C,M$¡^().7nE֑ՍYXm ^af3FWX5/;X#+ɪX6Љ3\ ?hu]E$0鱹Dwk%ȑx4 ?foXH0LL{ QҾ!U>S3o'K_m*}v+=CNvb;NqҬk3-[%E/˒]a}Nк &EjlyLk=` >gsxWXWp*5(#~p+rآ#Sz,ctcE4nXÔM74H(agTaJ"˗g9#E Ͽb2p.R8ծv* hPQ<ȹL5cJb%1wuM0HY TH;Z*7r}e&V?<ɖ=H u5< W")uAؠOIhG捈s^EԠUIA5e~PGIª XD9؍xDPf!I#K=a!qm>v!=7|ϫ.o;]+)?nOduW0ǼB=d5ncZWtQg)]4/xc=r2(ldx:̞#h:6g' ;-e Ȏi5sN{7H#&|5wv ҹjQ|-OUP[mὖ1J Z~K@>k_L 7hRrMc>N7,$/JK$^8ڒfVc)" ІJxJnhixGԵ*CzrJMJs,cBg&4d{c]%u;i|i<hw1_yY6LÖ hj@ՋB}i67ۂ2)ݔpCk}(\:7`.ϸw],QN)='IZ-M\ @hIX}6= ._S z|7#BbH]xoK9GV$6,E# ϝ"Gp^Qa]X2jen鱮"Ul^QCaXLF 9.H zo9m:ByRg6wPnEBkVj5n{2O ^o)ZD 6JG4۞C)BЛt2lsuGBt1m ,Ԍf&/!JgP?109: EP ECJ 2j_;Fw|`čk%p'k|!^rzL/އp[\؞<[{F3.W=j 7U Z`P%)c/?ұgBРQD UkZ[$Y2Z@2/雱xt\Q6t\L".TR{r0;šmQ遑:NfUtHGq/FξޏSJsNqF? =>^H1, vt߇KTVۅ4$ NX\Z4hrc *J ]g R ^pكCpf@:lAğh?trٙýk.npFOM)bCd[pl"H ̄eۜ%۪ R4K^g4wG{XW5݊Yq ɚ.cL?648nai&nowґ΂?0ay+ q%& וo\翠>6MԔ2*Mh:+"Fq:dr!/x]*kW`yaFS?Kl9t].U/D:_z#':5MI! TUtQMIv,'oFWۑ<1a1CNš\BL|VD U̒KObE3A ~'1Φ[8;.&>,ȒaXrs@Rj^*Бqԯ- zӝC- kmwؑ˨{H|DsC{X&n;][R@ZO^^vjbԸ *VKCp$?HBiTv  QXբU6IK3(Ĉ ҽᝐp:Ar[Dp.+P?ݸAE~<=ub*[bg GUWHdBÔOLhC -pr$rN=c~jC!^{'aKh~V]qn,&>CO"6;#z|ydm͍څ@n$.ivFr:k8t~PqIȧz mz90wO%ONtͮ4*% 0x%P(`Fn*,GmwbL&@5lFH+)hp@2 1#(겒uB~`KPaM"TSk3扺VXu@%f9l O}lL5]e%i0Ot.?sW_?FҌEa~+fJ_L-ؕ_in "qEyB:RB -n! Cmp22693y_X#Y)޻Y9g\tEd7B( 'KҴWM=VO^D,d"PZd9Hè(1֮u/)KELfRg[SG/lߏ19ܼ,z#WOSzKUx}{: (1O،nEV0x5ۯBNFexK_s>@suIQooC2!5{26u -faN8[>t 2UWdL1>QPCxZr)w*0-l#qkaOdFyH" $LB;VMyO7WYX UxÓ9=\Pqc[ae& I*RDFMӬ)tW-,)8UEqJIpAH-eWëޑF1g"l&vMV H7f-Z.NMGjM:o_ڳ/=s]+jklqd~#im=:4.bd kYeib5KY8@yR H8&fzPI'sD l?+WlL0XKqJ%,~|Ǖ7)/=&%D@9Rn Mس[9-;YC=ӚM9d$)P0oJ%.*}%o&37.TgltzW\+7E-VhImm\ɗsķ+K)UoD;fndt21 ˈleՆD*5I;="~?G:Z"^cLA;AukLcc[@b{ږ06c-_cwˉF?jY_uDTa40@Y}\$V.J,'Nja`<K*p3.ޗv}} vq{@f .{^6(wEsQUݫ 0Y>:{уp1|cUc%FcNW/VV+o''p+a]H$uu~7{pN½7 9#[v#_P1e)ѱFӈߓFK6\ >B# ^%&<6*eUaa3]̓`A.cF%k?U'lPߤ]ŀ1x ۶k@0 rZQ =|K3V"H2L%+9x';)$&~5軴rKKpY}+i2 x+ׁ10"=H Wn8 G ̿`?P ӳ/@Ar%C>< Vr5X 6_c?RnY`!* st(|K+c>;ݡKl6Z_TVDGRnS#c0UԻ^7g6B-l%qI7@1)c5]@h`ڢ^ۤWӣu/P `J#d֢ow>ڰr*{X7'5AyRy>cZ!`}ʪ@Ɛae{[1qj($aV\v%1G3$D/ཬ} |qG'BMlWu4X37`El.Z]*&emkE5 /(u4l:@uȧF{vV"uӘJt#: ~32 g=@qPS$Q [P}n۳y&U^TFy"igEm6+UeړFpZ;I$45d-u2[-hǺMb}LdN 1n\жS "dj/̈AҴݛ? TW[>#\N }IkV3ps;^Ss`όL78,׉&$E[rjr15UgkɆܓV䠯w|K1TPѶd&B1a!8oYgo"_-G>#V>>S+:xtb+\Ɔ)2BS+VmQ*62o#I`w@;q08wD|Ϲp|l+h/_f !d9pD]  rIF&i9&oT"F2( }\oh1 PL-br)@L ʦ=\?n7x뾭džD&!5~Bv5leP&Hx礉q=700zsn''OxjXw`ۿ_CIWtZU4PdN8JV~ qa}[ =HK7b (nlcBEmryPJDz5̮qqqQp-S bԆȁ[c乢b{*՝pǭӍHJȾ(tyb"PyS2b{"b&(L]`KġSBa^I>*4 SO#_;O u|tV$|h;e`J聮 Zk"nѴ0X¢u\זׯ3^(EI[ 0D{ys9Oq_nݰRLZJS?Z>g9LɤLl*˵0_iMB0"X X=k=jͰ8|DI޷"/+LG-XdVlLAGڃJ5}Ѽ+P1`SDLIeLB_//{5y2m]/R1vV%>( LHPbۻD,^utf] `)ߪ~ uVF6()-mҶR~Г]Itm#݂GXlzmOٻ:b_tR9F?mJoE8~*3:hiaʹD шT\~FOTش3HЂ[݋F,E{- $0ʂo>Vz~5 Mt ȭ5'^`HDD J|t&ۡ}ɡl[TFm|O#y߰"TXپW}x bN i#l({pr-`0 \7;c\P% ,MʷYkӑLF~r{40<}VW%ҭ}֑j/g%7Chcs{D4 %j{)6^L3keǂ=yݞÂR'Tf%X(ExƮxT!ϷX*վs}`d订C "la;|m^9,vClEcY3D}5?cm?DWNU;>ǦX.,H^D }f7rpW!XK ECQk\?$ :MG,HҬ$8w z3-Gc JҌ1B7 Xa%w[14m!rVτO I/R*-*H8bo,څ$𙼄a?w_UȒzW#u߯p_k4 ՞P3`/AP猼iJ T6AFZ%Bfnу&򪚫FY09@cf|Ð58ή=W, pR7V71&w? ALfǕ̄t!&@>;ï*Da!3>@Yt_ 0Bl_It+" Nˣ`ZY $ܐwΞh$ ً?B|E𧉥"XRmbQ֠xYjA! j~?68 Bi9Zok>Vw\Ch,}{Iؿo^O{k^d"|kvSRtCbnP7/| }>FdhȒyv~63Rft||Ieھ]!aͼiPgnMPvGAOL+ޥW  лldd^4A)鞂=;ri,Q (i+7z?*A$a3QO8D}hIi?oG99%WCGm9xc3r\ӥ(2Owp3fj/}^̥~͘$ٲE0ڹKS.tB+1ieWowmBKYfquDcb]{ =(cلk:;8o<=OSG 'Ь%2$h:kRt%>P+҆?4;Rۅ%̠N*]G5ovu\ ;xv@JtG{BHÑ+ˮt;-۳F\_XG&lG*腤2 9@&9k- cͣC0zSUH.>7j^.3@;>'.R_A0O^|GZQ\ۋyRS sZ=;Xv5`z1 8͈L6هRҵW0+)j1c&ml`X"kJ)fX|8bTit $買Шevoj!,Kt?\ )4X,{uV$3!Y sz,mI+dP` ɀQ݅?MLdc7ʃBf* ]o&)򆊗oZ~rlBȶ˕!U#,A;9ᓲ)*Kq7A6 nQ Ԍ7.KnESPEԻ|.u F۫JGr[ǜyAp讳ch}( ,U۩vsR M˺L N}x#TC"ZsVx so#`t12DMgLgc9YڛV| &;gâ"ҧJJ0W/('Sk6N6TF zj[QaϣhSś͆4k77ˤXGOMr` ~ϙ0o|F 젥d,H靖;5!}zǍ,\sW)D* !Xu>  R~2Ql<SH$f5ָT au7PuBa4V"uQʧB;Z{V~|bV^xhivG`J֡{v`gkÿg@`2*m\DaS~?{;Ч1Bݽ2_;h_/E3Hc|O쳢"u{A1*u5=Ӌ~j@   -aDi!ykQdjgʸKKnx!Od:ٌZXnH. BMV9khO@KUKe^06-.yEfa0FT{;A`6Ji9q[쩺S& EtPi :ҽ2 rF{ ,ɪh:&`3aT/|*0:.q_Hڵ7= {68YlVEMH_!Kqo:m10Xb\pN'ZYHQs"dÿT+6S[eWW<`B|$x,&ĂLv;X[;uM\H,y#EZʵ\L ,Y.a9w2蕨@)Iw/>Q[L\¼F?XLD\?@(/" FM3'\* |Mk{2a5 /WE@2R qY }8d 5lEhRDZXuJ] f#1G@lNʙ,0@&p&旅ߺEKԒD5!KP$sV2x$8|'?J3 JMCl"^In=ɆB<LKq--|a pmNQ+.e{rNj2ҏ|U^8ja1UhLD= \c&N|φw|~<.ͬ ;H !³n\Ua}srdM"Z7Z۵V (ywz6QqgIOPEV&7Cꈬ?"Q\KCm{z@%4Q, -/IuHڑ}s:nI6(7}@)BC8]`lr,M<[5Vt s*c~9hSbP36< }.@% Pp%;,pܨ$簾nj ׯ!-X):VA|"^q^ / uE*TB(FDHZT M,BȻJz)*7fSMÔftYF4u IK,y`'qxFc]aԑnf"vx049 D rrsMHp&0MRco̥dzyQKc#^WL߻!K}'y"Gi$Ww^9y)+>t-1 ңZVSq#TFEkG|Ia+)B* fڻfƋ@NzSj&ӻ7M iW-]ĝ1~:۔,^FY_ĎH%xԁɾ"l8c$CV>Ѧy}[ůa&Ňw*Ϊ {{ZKǎA_4Z1_*hAP0yFЯ~ĶP۷k4Pռgz8 1ij(3Cvȸx fV$dԘCW.0.6@\g>'uvCjUl8=8, tDvʃ4m i)Ɏ؟EK*P,c #ǃQLM@Cc\OSWDXW- F""}dP eΠ :ީoX-g$,cj36!]̶%Z! p5> Ę x֝t xzgNF]f_[ʏj$ތt,y!=Ob^_IJІ!C]x䎚qkL+{)* vjشhyLCv.bS>tWyJW9j\YDabrM 8zr0>JP}`Ϗ?hde 7ꥼPL:kFbr(Y?`FXmS6s$qA`w}0,5I]/Ter>ۄpjl 1wֱnNaIkCV!1S}-`ٱ/`x*k^ڹ/+DA;& W٩IͲbePY|0lJO#fg*FQ$D4v1Hd1x1KjI[KaN^:i~[;v4RGYx 8瑒k&'R+&?.ݗfn 50-"Yc)GU1Fo7s}aQ3մ**dzTo9cC8aI qW2p)L?N(:юV:hR&0MGw60J7%{Qte |ST /|fS1<NLc(\Fͩ.#gFQv QE]._<3sAUQM^٦ ދj,eD3lNX_}"vR8a<# i d/om)ۮG ːV׹/-Qdp`~{]BTf<>x˒x5gvRf /"Se?l0mn8bV?a߉ [E;4 f^z9%=$N3/Yj{η 0:&? ɴʞECoO|Md@-/ <r/$~!OB0Y"jy_8TϹ;9p*i'.xG Tnr]?l33N|8U`C-Z? }&]D3h~R\'NoB*.rA 32)~J{pܲo&z遺Ç #p)-i_Y _ӊP:vO4 B{w9VV.ԝi?yIdeؕ.H@ ?T-m$wQ O{L“"oAz;7ͯ ֊z Phȇ"*=R'-/f~,q/1~4uYSM͸ bWMQ7ԝe>VvywѼ e. )l߽[ofG/hS43Jqb GgV(:{F$wZ;迳B0; j+WA<,E^jۂ _6rf܃2fB%UP7jcۅIU"*,م @u1yOpud A߷= ڤg#J/EDv.⑘PHj؏0o5+?볻a} 3QƑ6,LV9WFʪ <)6~tF!lT,!  '#e0)Xm!lqCIzXyKٜז^ȳ}5yR1(ĐQ5,!%Y$s4h;rtu "LG@ˮo\*o{}@J&ƌ,a05sDkQPh2ñsQvLRRBTt?p-IP(F<_JpNGv9qyr9B}Z$y}i(2p#S"9Av:2G3몹j%75,gģ=ݾ/$/g{QcP){Q)Zh_iM;`@8 FX. 8]k1RRVIwn6 qas΢.z7qQ Fn\JXbߕ_ByQe҇aLbNoX%T > RaeS ["Ɨ)@a[e['x$}f8p7J]Ϯb5R| =7#ҕVmږf軶lHI+&Oa|XiF& 7$uC_dlNK`h,?G]0wdiDyRj r c/0Ea ,§ClT!(@fO6]3mh>=AdX~\RY2 `QobEU$d-&q=YG`\rz&xPQyղ}h [^ \e>O`7p2[\WjMyk51@ǰNB:\h@{W$)ygLn[@&%( |3!ѬYm~w0 GIaswd8JBRv ,l|[IH$<`P`ĸQFG-v⡍B:jFwҺ0j|kz5T =6cTr*`I3yljMW %6F׃uE\`yarɗZPׇJqW2i|%Eq/$τ?RC>B F|+̟tgX5 $}p1g#<{wt8a!D$I#YNA{Q}djjD/2œ(9 ˼XMެr 8 nAZ<8ztliI<٫^,ju$)񿠵6xkA좁!uptJI]'!<4ߏeK0)tIO-9ʈySIo*p:↔}y,ZƉa{ьY&̷o6x?~?n1Pƺ ^â(6D,c`vEڥ3o6#颤U\/J#f{rHlq~_閒|>kאp5S~P>$.P.?ߢD:qbLfj A*Tc+1M6PPI$A"'$7haDϐwYcir:q_L!'O9P"zV2tM-)e#,)6[ \$FpzbsH#=62,{o7/׸6 yUAǢig46tǁ+.S³x?UsRJXEAQa@‎ĘO>vVu4bS: Wx"6T=NĆ[Pb*bd* )'pTͺU :gi ;|5%*XtVپS2f"ҴMm% 6i\ra|=Y"V!Дݡ]-dtO>=ϦXV_NouJޒsh_ȸU#ARש>1`?;];KB/53/gc7!IR ~gԦ땡 ^oҜ4y4-r' Fn W'&Q)_w>PJaguuWwJy^xvFu)tRXs˝h895td 4&6g蕾m @)pl(v4t6%o߃„HZhz{نzg?( צ>QF/ n#hJo;ïj`@LH`mHFaA`up{4u-,Z m烁# 1mlxjj\Vl1!p<0Z [+QJ-;*$YD3ѧF  *u),,͎*M̅2jJQ^T9!aIms49"ߦ9u^T+,\نua9bޮE<6pvp蘦 ' PBm`$qfVc꙳^SX%>ѹdVI},՝f;A|ZZs@ђɰ8;4iFJ#?u*t]p7d}#?zY x/Ҡkެ$N5K,uT``;*.^ZMcH#o/DؒzP2W] Ew@e5ΧȻT(*v@֙C;nBRҞ$(静/|b.ģ^o4 O`79Yqw>n+>{(`Мm* 0_XHib?zctЪXx&|+h$'CSL53r {:䳫gY Eu%np-ikBg->-a $G0O @DuBti\&fзkmA(58x?S|jNHO 8A(Fznٓ\5 tN_cNJLhէS>6Yv?>$Qʼ .ٛ1UT?/+OΦhI/_ v|k󞓍JVޒ"QҹR>J9qU#SLB16e/8M5<c>惂a0l=3r`}02kH(Hkkέʣe1bSu&LdqK ь ^f3#x-vu)>g>,BJk7niAG㜙Z[)COvQ~)ddJ+{Ѻeuw(YM>jeg X =ur&#Dm]y.448^V}cʛ&Rs#hR>".aJwZ c8?jؗ4>CGv,;4wAE_ygA}c -@]ZkI-ٲ.!ّ̀B :-ˊ^f1Q.g pM5,JzIV6\w)-:V*1PdP}V$R sd22@45{qNk…2aQn55ݺO!I  5YB` Թ%Q&<{OZ.0͗Z/[O2\NQպDw(l0Nt,ĄUو^x,Z_.[w?kFWHU:V4d)(o1#,|sQZu􅑊#[k60<[D%rn OVvU.vߍOӈG *Faֈ赈BO4[>D"wE}G |9|l؆k3q|5OI':||em.kLI ~ \ *jj<"[}"2FX#]n:*)Nƣ(ry5r0p|J֫ڢ-}L7(w*PxEJ#|u'@E<KaMeF!|@ X*Z%>>{ft@%'3Hw'R:hAIzݎ68y!N|TOXj1:1+V8A&ޛZ`n KL= _M*> ,-'\#q OS)sRa{ⲃV?(/=6?ͮArvb4UEŝ Cu`6;c2(]/^dB= WP~ WVkpG(cwB r&_콖P38O6OQ.eSO,iRyΩ'Vj7tA8wM6h#.n[d[J0akW,[)iSh8pz"Xy]Zi[ЊEt̩ciaH%& D5YF~5Le bj.=>TE-^< +vOL'yw7usmF,ˏFֈk,Su=Arb*†,nFҿh3bu 5 3^4*xVz9k^u{/8y hl@|jtT`1y NUF ʫsNb)Uvc;Z01hdp \Tρ2ȮK!hCؚʰ)u V!ʏDK<-.xha8!؝Fh KCY{cE<NF3䯗V0.(&d0F7s^:4))I}1jȰB(X}Üf%W*:qMk h#f&n5͠ 'y6*9Z ϻPV}}~|Lg͡r $z#::On;)v]r!El\KiMWV\7ۮ4zz|10sΤ8#x#,k: D#2A.̄[h9x?м $4 EF Uۙ$vƩj?:ję*= IWlp%]qt412]) g," K֐q26Or${Fϯ$ȝ%aqiʯ^ Piс }B#$GSk0EMy_x/7_gIy4'zZ =*т -Uw$׃m)}ԂaOЦ2bk95J Q, xne2)oje,UH,bX0hB@QGO@p^ 0Qj"^h.0óط.JJ!]m8Fr!>g$:F!Te*ŅTmr!DR?yPH.iB} x%+g6ƔLleQcWb>ݹ 񩴊Ϭq5 IlMap:$Jqا +xp^X{B>M?uTYQL2?K/6ia, !#c2j-*ZQKb{b:VeRmI4JuLPD:#jRR)ͺ=WɊNGY1XP66Qh+quQgM( $$mmʋW8PaD=$2bzT~!OvWâ?S~ .uP-nэ5s!KqI;x s[n :?NBL&cz>C+~^<#c;W"&N`)-\`9Ka{V*e<'vu6ȥMoqQיL2[\24.ݹK#sIwDmU+Z5+nڍpi-Hm|m2ҝ}UkGC5?uziޒt3-z]7]-dBb-2zH,4!FGP/tdof/xkw?C)L2Ґ.@8`]s5p@h|$mu68H8\ C/7/1`=>:I'n+U_. bIg[tq(N4qhAr7Ʃ[ k݊iB` \p+^[:=̱(3cY^ظ'#s% 0)&_+HsXf1![@kҌE{֝#oG"f'wQBw_0i)lj`|*+TE!ړ0l[v/%g>uk K1+xjf7 CT=6Im=F^"s;GbzrW'n*bʓρ1 NVHS<',"rs1)-@`3(Xk| =мnm Z9uE1Q9[0!"CvYq% '*FMrb-{2ԝ3Y6m 1 02w,[Dm}.1/`@g 30*u^j[H}3h &P;2o|Ov!ˡ{HWzT)[_*t P4 gK8}l(֊C"j!=(Kq y-d‘lUtu|C[dx~JE7j>hL5dcc0[My|׿߮nenQ3szg'2GҜe~D 'D7i ؞rV8܎VY6$_F+)M#t3 OOyGP&qkzX YڊYWr[撿H/c80H8O[KˤSSHZu#X qzX#'?ŋL](.lXu=pS.ZB:f$ґGV /"u 2Y"~4k^H͒pT|ؑfbrQ+5/⋅H%: G6if%$SMXߨ:ᨣ`N295]@l:U#N{ 6x+F0;SaZa.7A( ̠G zcI =yLʼʿ] hQc Mί4oWCRSbJLZiTVfT:ytjc=Fess Q]Цl Hk9&}cr5d'az)Wk\U)v wGŒY{ />!Bˬ}6̅E\c ~)WA4߅]IkrZ`E 9/CA 봵 Ăb۟H|N4֟(8* }{WVF_Ǻ]̾"Aڥr7}H38efE/2@-:UH#D*dŎ֒M9V!"ZEzB妭R) :}k6@DZw㨵;.PX)U7ۊ 4  |rƯ8K|mm]`|l{/wQ C8Mw0Eqֽ A˽Dϝ __fP( ^(_+t6n=+FaW 8 tX`0nG|~=]Bnaw, ,r xl>~;Nz Ju.a#1D ?j\k/ugnwԸWdrik]Ɛe:Ϝq| R]v޵5%A ,1{(RBe] w3|vL]i%j83BVu] # l˭|]ˠN Rܰ5΅ꤵJFL5rYħAڔR, LV ʰ`EJ EQ㉪;@ɦ@&;PEvOȢVVaYC )sK6ҍFֵ:l6 ?P,Ѹ^cZ5Еig1]9 F1UM_J×SEwWSPm{g*\?FH}`ǩmvR/;=u(r'GGIuJES(nV{@5hDsm`$gR6o:<u['J(HѤaZvYPDq(kYΨxi9AT鴅}:Xa~,~zFwq_\tƘt ? hi'OWT-LPYGiۧ^ xk ʦT4 ZZK(pl{b}TdGRN{fXVzVr2䦢.2iA Gř~I?Un.Z ؀+,z`nR.#af}1=ִ0B%VN( ?`ڣOAi1!Y4k?7 O%FvF,VbS⾥ Er9;o3}/ZHrII{,NVrQk0`ٯhU1OZr O vežޑg$t@As޸t2C!п/6؍[ՑyǔXٽx^u0F(t */+L {?}J†+BY }Ԛ(lTQPj v{vت)3Ƙj!o:1΂7`0idl)`5>\>LhAE@ʇIؕ6({Y `aq]RQ|^<_@5I4Iy=6 Kr S}ml=cZjꐭ8FϾ)Wv/gzt^b{9(*\tO(υM |w#numbfd1 O9I24+`tQXpW됵__I;5ANHdUm5MW=QA&0PŹ?PՖvn|&cY:0U`+â@* 蕱,~yX*1_uչ{MΉ5A}TNhH@Zʰ> MͿՠu<~!n\v_DkwY`ĘFab=X ԩ,$IZxODK5>yO*Ir_;Vjrquі޶l^|}ElDkٲ:B9\gA! utsR[#'ˣLQP4e*ĨgpeiRI rוLyCX4TF!vrC')I}]b"^ ϳige<\>9k=ڂfRڈ&B+xN]y{W.;˘($Z|ܺUV]"Jhe#[]Xݳ71#em;^M|l/],](\XJ+S@qL"\AX)dxxZͧC"آkI4-A9FUo%~gnl ϘXjݓíޅf{۳lMB(HظWajObGNHI"%0o`QmJFVfy"iw!-^<&G . C }a"tHT7hlf BEaCT.n4R2I>W=l['1#VY궍G3lcF-&ɫ^Yy@$*[COsM3ܯu5?C~+7]zc]oץ88*_SNVHwH:,d;X],U$Bxau p, I=~Y[ؑO0 '#6~+Ԕ~\.<\`xȤ#XMˤ)2ߋS4 Dq[ZOSن+"2k%+͛a! u6\X#iFVsF E@'9{ 1U,{qxqEߌTy٥H+-^t$Huـo!'M`@Dڣ;w. 蠥)I~A,0i~dQbK 27*ϱgmv5~:h<@^z}_";5.!Z/w0\+gv5i}S㸌Ev8#{*9g+Ŭ[3}LPCAGk[sw|`tQ5}X4b'4;GBf+iXLq+(lƱ[d+Xsu.58_ }&`UյP˰DuJ# lkM nLk_T ߻:Q!u Jgbn)n }=mT|.L.DHO|ć!a1|J;אZELo|:O L##9҅aq>r2<*zgk4ͺIN^3j-NAs0^Bj$beSރs!4m|(tCyĦ֑2lӭ[.ڌ oR@wY칭ui#҂.Of_O<8pV GݜH񷕂qГ]NH6r}xllΉ^OoO~.A;U"t&j3 c/"z&8|F-C`nEͬkp{S*T9C2tq!SKI azcq5׮`^+%򑿐}fG?5R,¼)Aw3[hH ~r=JA_QJwjGYH?u4)uԊvٰfpIuv* 1OͪԦPi=f>ªkEgCxfAF& =Sڋ'di @t@Q_Q R #`%c=f`=Mz[D'g .!楿zCsWzYwM-x #Vd؅Y"O Bb٨UZhZx{SI'(^ӶS7?4<ؔaM{ezch۫|7ێT?>3yps`NՁM K<}Gc>.9t\X2er`RkfT"K)Zgm 3ga=e&5BѸ˯.np T]Iv<#Bv~p5Wc۰F9p|'ښ`OAʬ-{3wD"6˕KGd2C2l5ot9+xM`'D8Gexd0yeQ>ˑ.Ǵ_ U5mGN鳴f?~hDG_/UL7Wjۅvrf#V~͆I(bw~ SF+VZ3z]*m°37` ~N 8uVyDŽԟ}X$拖SIn ̯L&vT7!{Y^bEjbۤs|8I` δ͹a1Gw^'h/QmRyw̤ŲАĮL7Iޜ:n>xnmӤb˄oWJ[&#ܲĨqA'? w GO^aGg Oj/mk=Z墠3?;ʉPϨbpbԤ> IR $NHv}m QH|U^}-ݷ`6 Eɍ"K lx\U?WU9k 7 VU#؎ld~6@Bzo·#'K8@d2s`UEQ`b| = N8ZUXv G" c%}d( ;"l1} (!!ПTX v4Qv{ ba@e z8nIXP*W4H{8ἻW`5PY:j $EUCjn0$cLW{Vfo6*o`eP.68֙;Ʉ !\TdLRtWPS!>*y]p3DADžsA6%:.u3~ñXZgp2n׀UXbg=L_~!K,;@HQ)+྆EfRK_(_Z0fb\ԕ TĖcx'vRUg0\:&4y ,"Rtc[vywD%Γ`uԨ[Hպ3 zȋp Zˆe<|]ó{CC5VGgܚ8 q5St,i`ZWvI2Oƃ-u>򴥕 ãrM0۲Ćie I2Ke[42n\9OLhkŐ6L"t68H~>ruM ~ܥ etn"=o .k|k;88јa}O2E5;V9Vqf%$"K?MvVTU8tJ]dujj,d; p9{|/`r6ld]i3rxXAZbCE)sABFي6uoRJoٓrmyB|z\V;D#<]"w`ؐ9CӺ.5 Gm=!YeStZe6}M=\hiϤKKfl3 3BODޥdJ5PCl`iU+HW"@kjT~u!ẽ;$I}&(g+~C9h\4"lm8ibP1C%fAQo9 t- #UAGAmC'ؽ1Ug5W;ٱd3\z~Lvgqۧ r ISQ:>k‰I8:Yaz*o]`r.e7=% 79nxR/bݷ;#n\CN E/i տc s6$żX2<#wh逸gĻ@uv}"JXaN^;Aq~(cs =eÓ(O:>)0mKa5[ }:|˞C;U*6vSmkb4]ZANԴB*"`=]k"E|RTrȄ :N_Sb:Z@otoѷR1tiڥe@R :Uz Mzhr ͡>4ż#jPd +bޑ;ZȌ5wq?DTNTYW)^Y *!!8Bd,`4'@xMRTP(eYˆ( l afWWf_Sy(Cė ӝjz!YmWfHD Rޅr2}~_sA&,onA8+1,nFR1sZR99D\ ܷJ?jX5~(8Isz_]G+v*穣YP/C\嵨BW Zpb}yR{ NngY~ H\Feڿ$|{.fSXP;I˜+y*g wXyEFVǼС8`WC:>5*y`XMp(be$%r췇4#w` !|]0=.'Z>UVcUN;k}mrXIW"_ 2w;t`vGC =.ݾ aL7awZme͓B1:sQ20\@PA 2b%+fAS56\!ؖiλJYM4!%ԹlP ",r•G|Y '➒]Z:.+_IQܤ3}ߎp$q1p솑?p-|WF t݅rh$}OMwH2D45SHL\]|0uƵ3U_ϘNŠ<-<T9!y(;J||#T?Vѳ8 RV((]8b%j##cl2Cbه%/eyDˤ K%fNi8()<[aYgfl[2h@qbs YEogɭjV^6gM B:rbݠ])(="wA^|3 £Y7~`oUAM C DJfeZ F@O/!`Fpc nHOāM"c(j.y2ݧ}0G\lj+ܰi[vuH6ʘ&> 1><#aQ?1ۆ[\قT㔌k{ kyj w΁4U>S$xa6g$@-^ɬ6Jt4*n \6BZZMs @14(]}!nll<N`^djzev9H@sg' (.1Pc<3"٤1sTD-t1#ɇP#,>mEx@'  rw,@ȎSX?PRŢ424J!VLz|h%SLφkB* [[58iD(nфT~=|+ai6~z`K$LD( L뤘אʖHL~q' | (t~ofx YP(qR(`zT+Ljvx fqc)*1A~kNn/} [iE挏]xvn7SGhv˖o=3JX6ޢU df^RHgVa+ylSw2Z$uL{7_=Æ7Xq 3a%Ȍe2L>*'j/@e0-⊸Avʐ`oa!Cwj6c滃V!d';D0Qx p|Т1+bidW1T󞯷pzL%y(H@A[r =aU94ҿoF^bg4fpX=u%j" <=GVeEm)crg2n_[&: m) طtMcyi<:'c;dG:Sm$BzJ'Щ{6HjoLOk*dtٲ0aWMEwK+F#aqfEC CqCǪY`<;<1A,0T_O-3KʳJJq"9\J}Cyj8it2U=mɲ8'H.WWe.ZE9o_q5%#DTh崾ݙ [k?kv\^x5K]wꙅ~ϯN oĔ[ ~40Q*jciSX[N't!nB5_)vj_\, 3Ij=hT;;7B㇆J.ЂplG56sVșQ8q֩6>BhcBF- 'nnT7l,hJn1k/7F&aX-2L*7G@@M/y&p/_5ǣHو v2NRQ q'UqrUtoUFa胢1%ÐR>7SZυpJ׫14ԩ)D $--Xh*0v&g ^HRaouiڠ00<z8Sbe \w Fh=&I '3֣vCWh岝ʯ%Ի;xd\'oOmۘܤ"kִT6TL4 8Mഃ bEj,D927c}RF 0{LHEOVy;?WI_!ayawX*g.#t ~CHEE42A|1ʝy> zf#/;&Nq0TYLw~88 ʶ9URk@= OEt]k'DcyNяwxg8 Je`-Ki8RhR.8 5 1ܜܡ`̴T(Y|z>;} |EYvM9zk',z9*Iu A<5(o<<Tn'S:$2DHfb̬h*- f.eߥQJ+2>;n$a:1~ OIwi&d017.['aĝs]s.h n4b&ٶFo >JCA0߸Um%IXcwSxɥ37՝~+ܓ^g>nJ=KŦ3r&#B;@ "SJݠd)5"zjgK,Q7_ůJ>-P/_ϷM .pFu> DQ Cqy KmMGSe>/n\^ZF`lĶgDlaשPgrd̄wHj #/+39x\JeZgL?HʕU/Q+>`K=; )mR_4L$n(Iɶ՘|ӛw~%m%OKaf))r5o(m4`䌸I Y~ ^Yz|H9hȄ.Nߧ8IBέ7 fЪAUAN?SؘwxmlkV%tǗ祉#Kyyo_h&=|gQFkҟ,` }B$ @&Lp`ӿ_?hgR݀FN"C K,mj+=U7f H_([L W+;ggK0@bJd$eTS$҆nMxHW&6c̏e۞PHv?|P1|(]~АƁ~$+{b9OXMSedp>ǁc 0ROr&a>q28Ȋ 摥j#gd>]u%"Rz>[CoXE{lhޙ0lu(62nqܦBGK͡WFԆm6~&6g`D@R,bÇqkO}p*&yHJS(>q91]Qi2p^0~f( IM +n:mTf\["5f=?~D51ВNcS/n6} ,0ܱ{سft/mDe,\p"g N w&v 7,s"{qbҳ$q_w?`*daFFXl!p`:!2 $_zУ'RȶU@?6&+ժRClzDpأ1Moi+5}'C+2lA>R>=H.PaNM]f2gЄNccæQ3iG2C]6 ҷ:/I:0 ,N5$uEۼ2YQo 5'$}p"&hYR %oW + %1\: :A"%4H ?X;y]\g# m m=NB&r1b9y#ȴTzdAc}y{M$F[@:gns=s/ 89SԡgNӫůVl* -(zgI:4#LM|]K/얢Z Чэ|b =]e^ϒ<#W}2JvJ72S_Ȭ#@C'Sv<`2 |li9쭭hw_ heoQdڠ) Ν;V9<1uKV#L]ɰ J ʋU"9 ;T+فqZk6 !\ a{$9ᜉ9A5 @ "I#' S0V_!-&\%&L 5(ʨ2)ȡN0eX{޸l9D@ӔZy]xSW8:A&Hyjʢ]՘,pQ2!n3zCw+d?(z=B^aorJ"#DְaZU0֜'oHP=)t]&Q]tNJ::Gkz\^[/q0G(t'lDJ^2RU?43x Lbax`H*Mg 0m_X=dGA^@UZ5yute0pxC;A~њ|qm8zg9lW;3;jؚ֟V=@ĒdB,ٽy{߹ySTK-t-_n# Ix.6ɤ+g#m`X=Xƾ=wV3Y!E%%쎜zSX栶HHw%*0pp6F]W`V%/}D2ʽ8E{"`إ ǘš]V64[~x15ϲr% +8E|Mԧs,G)1ldJ9 N[RiE8:J[r\DPI%z\]EQb(wӍ8+Yz1&Zm-@'>JmskSb\nIÏgIk'1nCdv,|`ߗcQҏs1Fۙ]NT3lOVbLNT@xez)hַXp,6=1٭fmNQ^bBW>+nK>*? 6xZ} 9< ;`]H*+|0!e,>0KF=)ːqr$ʉsc3 ?^hNr~EO)-$ {teNٓE}QrHn:,Q _*- ?`l!?%hb;b?Bwۊ:V\>"k"f4(O"|^ m-Ոفc5X j̧T|TQ[cD X `nAV$BpE/+U$V%"Su]-ۙ(V M!~nߜ 7k_3TszKR=t^,oNB g8t;3iZR P~F:E.H<g$dT⮂gJ2+6p&q+&b>:l2S7H׭N Nsvl t) ↵cfQS7L}rD*z>f “+ZYNa?u)O!dϾ{X&kIgGN~ hR)ʀ ?sјLAߨe1hz0ģW(?C\AjE=5,#k؏`/rV(b: SV'BՔgL稵#W~6*^eew!cC:꿸A}c>7'gK.Ifx{(ֱ,3ÀV{6vЎ^9r-+O]ȗ܉=8ùK_Q1ԞVzͼ yYD Bq)DI([\@nGTdT&ž'̄&1!A9++Z^8veno# lBxksU mVbv"ew-'g,y6]EfpqKijɧW-gaCdqz{5yT !J 5i+F~ȓLEg NTC g8z-Ϩ_\6EnlQݼ=H~o֢-g+BC^Skhgoas} xSb9 nK4۠GDAJ{^+۹b2`;٥qH *"@Ilr [%܈8㘸 2opatjX#?a!E_B{3K\k3 [þVJdtYkz핗Ɉ d4>5W^D,ِqA'eDVm5T&*9"C Yl[.p&/ae2S I0UU~ȯ X$X٫x ~]y+4QoA,#4KEvË껟KU,H9f^e҉c`8^2}*2Mf SWTSFx~dh؂s!ԊINPnd,nLA"=^rbydž! 5[b,}zM[dN*4qlˡ-ӥsO$1Cs|)ϸScBQD}Akܺ'O-g^Rb&Ϊ}1>7q6`ْF\zARIX-u۷>>!]?Zν__Wi>y"T| ˵3ոie{M7>ѢaOk_^N Y//[T"=q<s9qJah,yecVuK '/bY0jMЛֈ5ˍ>rDV), ^h9`[2ՑF=ۿѳt#xo n|GtS=#EϤ. V [I+*7w躌-n턨q!{L N-nZ~.!;l0r\ 1%,=b>xtmݿ=A3m! 4)YsY^5f6E:8]L{^rC_7;Ḭp+h;yshjJ%H~zs]eȮօp&K{k2G]6k-fw,j!S`p?7[=ݽ.Ghhw]:@@͝k#hwqy& i쾏߽YO3A GT?Fra;ປϵTiw2һ kn0+3*x*Pyw2+D3BV_ ~ ~@kbD* A4r%ԁeV!&'gZk iܴ&2/l೶A pT X{X@uiU^{Aru[3Ov-|P}<BMbfjTԡʠ5L&}ax|`*m;T_gs-ތ=\e, z犢IHKD \wzMiFQK 5fu7׌nZ]Z-LKqY,\z $ۋ 1}([V2 lf/WOxoßNudސqp *ɻsYN^]G]nr?:*'QYM{rkQ?Qgp8ecشm]qfDymo?vt'a叜ݺCjEHg*7`2歑Q<0H#lL512mq9<=%>suʧ]wCj$AOzr@@Ln:  ]ΗM6/&Uk8T\Obֆ|G#EgauO3:B_I\>5lo0'2LxWuW,Z#u($ʯjmԳ4B[yP'_m8*.]x֍9iuS8$a(pÈfu}𞳥״]:N>B!Sm9*/7/Uѥ/1W'M<lj:]|۞ vJl&&"VrʼnT1TS,He٫"J&"_8#< ;c /zA42# *^oc[JRvs-;CiLa#%YAQ!LV|h}97=zӢ)h@>%/ߓ䍛n+nuF4POͼU|ИJj_YOc#'6u1VSO\vV5]7ٺr;㎋Ԯ%' *!l)JCP8042kC˦X;Jpѷ4ZTF|j42!7\HU@MO єdD%Cnjm 9Af{Y ^;AnU5I]c0ЎP)X_E,upҘss&V!+ Jl MߒflB8 cXVr=-z Un|9ma\vmB^ \P ZphF*s$2P96mV^BкͤqQ r==ț#Ў_ QU!"fP;^hYD8f `-lʕ+@ \]̃蒶`4[MH991;t Qhz_5FKJ_;0)Ix ~oq1V(}!a HZ[]Ёqu |3Mp)Rg U\eřⱟTڧb h#H@FMI{J ԅלwo~67lEEn!wR-,l' ´Z6AWMG->:ꆕ10LKG0^j=z貤Y6njeĘ=5 Ae"J"xidVE]?HBA8z;,iмOf/-k(:EX؉2kbl^JW֬%4Į2>K5iZJ=3uW&!&^H0r e9nEg?NEZyL?%E8ݑ1"ˣf!^5x&7F?kG;̾I(HW+jr˯z J7[մ`=-Si-bkF,iL2x$1ܷi>ϑVΗؔ8^@ˇ6<א*\swfԧ6>5a{ƚ6oxrq;(ֱ9#o8^YneV(gޓb▄1K&aģN$dκ>1eCCT](8Oض>&Z>m܆7[ƿJw͡屺b'JJߖ!UOKV Drvgke8ڛg BL6h8@{_?HW&%UyԆ ^tPBTOI=( έ}S3l.qG-ÃC% ӸCwԷ(@pTne+|٤nw2AydFQEHܩDXguulhyMG5(fp`<:u8/U1c#:"{nOkW7z  g@y9h pdFFs{Okco*'rl8}>H\EVU=gnԨy;in6+g)?d|7>#'ٽ5E(NR;'f~dEK954!nW'%&b{`{ݿ-i5tu(qISbc@==8qY8,rd!3Wwhr}J}ԣԦM@XIϞ- |ж*ك_/lG!Z7KIaM [9x3{UayAo\GwS$t`NiVgUEMQFĐӲYoP1,!q? JJ''vgu2|ʠ'LŬٍb v&R9kSYs0N#(@/+<n8$ s܀2L#=/Q9? މlߪ 8Q&"#Ѵx.fjNs H8Xe QKAD9nvbM'i\L tV]NA/)ļMYvc-<5mrNTL p8J~xlvsL5S{Q0qd#9Ueh*jx9J3 YZP b:b= N(8XɛN9Y3ŰdbBuYxt%}f4`9q]P^1e?Gf$P]8h CFj79s7qm!$%@)EG.2[Ү&|KK觛uw:k|[`liZ+F%!hBB;P$w*rHt,هlH[Ƨ7-3N Ӳ:/Y& gMl7XjީJ< e*=b*nY:[4Ye3%c;^݁P_i z5ܠ]v`$&E8VBB Áe L_uצsoOMCa_o+4#W!yu)?w5q~;G`8_ O;a<6'lmIO`]("k.T5z ?RP1TBYA:k >^ -0%04P?/-dMMŲ7fv´}G)iVxih\fE}K \-~G:RWIs5yx7wڮO;CPd2H9ojCDtC( c{LM=y,o37㾯`'xyտg1%R=ԢݰɩВ_4G!olB Tc᪻5:k" $bN/AۤPUcbv+Js27YS7>fOtq_cV;> >i'VD{%[0pk.DmWZ>T7 <#Kܬ/Im'fߎ?Ӽ ,*q}MX)w-=Mh&$esfDn_)kz bdmr?x~)I9ZWv$V:X ;5w)Ǟ?ӯv8X,Mª%lZ =~^כ&IJ~,Xϊ[j z1.@?/63wZ_kWjBhvUz&^373Ӱ[yHlO>H,!{ qM&;5Jagd&A^prk^ug kXc#m7JWG}k,k Dj6#2l4/m3qPsI:,*h  2vh5c]@Y횼p $-i:ujko.C.mv G<*S߀xblQ]c|ʁ#.@s~ƍؕ;p?w:01WKܒYHvA6jTa2DA*DU䏐5rn陚c'w]Un ;%D4\lm$'ߎ7ȝ`HA+\캥nݒ*DB7#l-+ɡ4P] 8q#CWs4*;^bnnGtjg50~E<@_a}MuџBG+W}%}ĨhwP`䱺hՁ*`GXQ/{M>I]s_Y*T#(`'ǕXʋ8 -M¤"^g39∝t+`tZ4j5eWO^t2iURh0=bݫ”˪q8ғb-5E">)^ǿ%Kڜ==܆iƩ] :*0mZkƽmM)|kWet&kgҀΕނ[--g垾p1\#-]{0b[>YžHiw3uA>r~D]C'lu[F?ҷesXtBiZr^mQc伋d V\r_;] igw=ye'L:30hFC+va[? z qEr h]fEؒmd@e"L=p%N2*Ȩ#xW'g~W(}X4\D,>壒hql \}G?Nʭq2v0pΏk7^Kw`"zCtwvsb7Pߚu>_asT()o q#jvF&ɔ?|<ުM2<' 3mĆ7ׄ=Cqcqů$gdVKT8mPE?=,6fi)e|wWnWHюh]͝NZ(cĶ=GҥrNJ1r%m̡)O$b;$Xv6ᙪ95Kt?~ gDW7JcRq?@Ki{FSan5UW&sar=>\,4Þ?dZNWkh&lT=s^YztƓ UN|s$t6sCXfzҕi(׻HA߄ջ6ſ0c -X㥞5tFV%T 5t_ٞ`AD.t.zLklUwipOIA@N=ߩ Sy>K~rkp#?8mtl1XteVB^@MNdA&B`9Et[DD"SEw ?Űҕ-R`bN/hl%Ն"cZZG|c*T!,E\ZXY#9 LCH 5;8M$ %I]1X0ܸ,*PdH@\<}2$:nx!J4x,ti;e: ?Ìk9+y'*P'DyVbSRg{mROvq-_.! QEG?ַ=a) D-W0oxep<ۆ(8@~:ڼV)L؃B[Ҡn^B998)cedP39׭P9#, 5͟|y6ҡl8TS$K[`N|ɶ 3ݵ(<;f86F 9^D>v4?XdDi?u .`sͺ\M- Sgucĸ[95 vFZ2D40Ve6V ɯaI{J՝F#HU?BtgW<9gswD#6eq|{IGhΧO"-ys]QB_-Hu71j!e"mꐊ?-"u_){*Ow}3tyK]UdyRoF~~Ytˎor.\)<>[yrOo1LWz$m€VX5̼HybvBAyI;&8t$|e]і5;値n_ȅ#Qk5SڶcZ%[,GUu:0-hFGǯIW (ٰ2Ǭ "~gQ[[3%Ǔ2%$;zhjbtڈK#=f,5mŤ il*eZ\cۓ֌j!\X1L&<#ѽK&25MQL1U=*(-M:Q2(4?6ϥMVH 6o@(DfY89Jp`[q%K>y6+}0D39D6GNsԑ&~2v<\M 7edBd(m\r7O2scqLn~o:M~WGvb{xˬo_iڬxwYlp8uun-!,\ 1ޑ|gSF]C(_1YLY"E/ڑR+d\ >nYxGB ?P"@BA M}(1ڵϖ#$u.⯤lV̽{/F$XP{iدG&-@ tfO4JG..H|̣Ni65Vd Z?(gȕxAV*4hmj.;̞8D;Q aZRAPp@5oI18xie fdaT半!7ΙwNdbxq[Sg@2sJ|mpUdcI: >Zm|Ĩ3d*yKǕp._< R.@ܾ}~bzDdevnyA$/P ^;6?l =0R}}^ⳫKbG7P)Xn58mn=ClHꗎ|~@cs_"?VwJc]9 A+{_>{.W+e,C,E~g6&NЬ^WBT%W~2hkn|At0Ь(kaFֶS˴yyaw -ȷqt7}vC7)Nx2g w[2iOů%Bnā wՠⰲeqXǸe>"OV%ٖe$ܿ/AWS{xi/spo>\=h|&/;'.t*lb%FW!V!S-ߢ{Ay@~9 W弘W ,_@1XE=IBkyo65Asi0[h,H  xIg۽~;(VPw=;Nh?N A$dGɸ=R hdPN>G|@[}24W"98yц]5ڞSh}a+UDL W;$FT5aARHv/Z**r2L6FѦ9?93F"„&Ĩ><ZНN&h"N W=DH;2W,qcgM#ij$ `/(]tÅ3kN:tO: ;%+V㲝{ẃ]-S]Ua4hh+ 3gt6+T;=8^5FSڕdgD/Wծ[h7H=|.["t9F̠Cڨa$8xXbvvM,jC׻7rU=4@ q FcoiDn uG! S\^|"cn/jQ!Mۉ]_X_򷐿kv~'niR}&=o₇mcCC>91ʨ/p E~h24RvYi$ \%&rЉ0bw?n6eidʞ_aj~0[v8pzgﳊlΟt(2+.e,I'3T\(=/P):aUS4˄IHM9)1^SH1\ ANyҨgjcВ[iP xۜsz__ξ) f:/VLoysZQ@t(">C Yl=/<MpRߓd vfXHK7bԵn|hFm°|JIRB:Tˀ̒㬜I/E Ť)E-Jc8jVQz:Uu n4k>mO(ǜU%וK' mqgۆ`񖹎c@)y@ N@F߳z^%y+Қ AE'i6J`5Z`6D.T"7%Hi}:Xm/vb"[\dE &bz4sGyRYsyC /(R|;d" ȟ*`#WB=s=RZH~wPLVTuzkq6e20!dHz\)iӸ$b_\m-Z^[P?aq6pi3K,vP`fxb\K'LӚRvH=$؃߿/hInK@8{6hI@y}F|?:hxQYؚS i; )~Ed "\GPSEYѡo?ᾝ&pj(_O!ΚgvɜUό b3N̯mJg[ZrEz"ݧ<K BFhQRH{1ҽuw{%U fj"KГB3go]S <oN(MGAW:gXl")IJ h_ݪ>IJci~b&Zr/W'EZ_U*Z1L |ed]uf[skIlO>i@o3޽Ar ꀡĄCML̾K Q/Wf&XI^>mznvEPhI snjC2޳ᵒ>t'`QX]ԍ ؕ]b% .ڇ\}>]\_=T70䭍~G<sNf!z`fANs--Yz$ y׳<۞o*hDJFg:Š+9!8N 0ʹ$`gu19(C x,5Q ɩ$#u]q83P1'jVvwЪ} q TX=}Zwa1 󯚂ISeYPL,֫$ZpU𥬶)Ŗ[݉-m7gO9o%.KeP/^-4uqU0Qug5_qG;X)CAׯ216ae/("ai598CYDޝ| `=scTiF(+L٥(fzuq~١Cѳm}Jor-bst[wd?N,EhJ$$TJPvYDZ5^f4+0h66Zf6m.hJ7z>s1ԶM7Agechfs>iU 5yzخkTD6>+SwC^Pƒ8o^284k{|,bE`JVPcfQ`.Y|0 %-+4A+(ki\k5<`/w<%oSZla\!j<dm ΀JT  7 qK9ey=$>儳:Нv{1rnۑT j٤0'Erh6a%ONuP'\eJF-(u9$HcV?=W"rO&5CTN-:S GW_p8.tg ޼w+x:o)@8`긃T1=!%u\ErG=xW@٥^ 1 mmcLMm4 $c'ܽWZ:$scId 1T\ȡ[;"1 _]G:w ţƬRЇ4 G>j˱k05ޱfdh-݁ QSDzޜt'k%G[Y" x^Oa\&~L Ѷ#ˡR_bde N|٠nD(ʯ>CiG(1Kg TLK]:iD& j5p\Q~WDǁ.P}=&o0ݤfhx#z`Z? L"q S6כm_}gT$rfS2͇eM^Ti^RIR!ISճN[idl 뷕6A xS@L ͆JῈ/oK1hV `LlТGM'4osbЏ;/7c*l&VƷg(5@Wc23x.|өL ńjOё;c.`.ĔCJȢY_3tUT$] X Fd,(E5éReE97($ϋȆI .QhRHڄٳDʲ%D>(oHʒ0tq yf340R,sI5>sqpn^8WgUKNdjA98R+EĝǻZ{#ޅlЧTΎYE*_({WdḍnӔKa6vj6xq1 3͜#w˕FNXetS^e?6Ɵ˿l$%)K@~%yӎv 6l{F)nj]aG<;09}s٦.;>r$z4iA\VbZRGSc'[? ˮu[/Q< -OHQ>JX (AU&R& [# 5kqfYOhɧt؃"`Oܷ6HB"'gA[]d|fm~JSoI u|7qz:HbYF(ȓP`%xbx%{aC/1~cԁ\)r鑳e4ZK"n}Ɣ;6xK^׌tmcN!ù %p-ͷ ZIpRWL455Y\gS@xġ=\A6׍&;P R1j=G۷T4PFӟͧ .bI>g l2DƿgiM5X#sTfb~:c 0au3 Po_ٻ<±vM_fkRv>wm,Е1w+TˡMJ^ BmÐ}L:Pe]n c(UZI9!E3Rurr-ʻhO c8Bo=]{c ^ *LWjm^0UMG|DY]ya1t_'s `X '7R}L @d2k"nbQE4TA>$ ++!#kcf?4` G#TtrJ urb?;/1J3}MS>>6$FXE3kʛi:Ů~~C*LLʡNhJD?1KUn+YHQTeDpo;3GS3IA A4Jә |sf >dwOwv@3 >z;d2H}f4EutC9S[b(M$hr;$HBV$T~r!wGЪ|4dS,a~C ٶ'9wPI\I۰0TE@ M9d?ࠣ/fb oIRE/E(5JiYJy,+K}7Mpm9LDŽls=mىcQԖ|>O<eTv$ 0/:~M&%1[: dkuK24~L$&AzDMl ΂]LOk _5l 3|fHOxT0*) z/Oq'ijV 5h%<#W)Qw+ni)#;ۺ膅F+'W8r=Xg٥+I+ߖCH%v!WW'r~fg>.t>L%'l$֊*Mɓ׏,^ENsCWHۜtWN䢬Ȫ$,qvd#On X\_SQA&Sa VcjPTⲉʌ"Rl35sh XQs+n:6;8NP(tm眛 [Ax%}?gjhTRm\;+dب{LTԲLV ˋ$rz49`* 8W_vTs~(u>jҿ) nAPTyM i9 \_@xGˏg4%dY wY\ZRDyv"&Jp4FU"H[TaA="WAgVaǝuc"1-p@1@l'-4'3YŒO//FMk4aNZ$Q@ULEʅ ޙy}y 3U)>UwQ}cJ\A8Yy+@-6 C}qnL\-^ m1$1P"ڱ& 2 U`c9-M*;,\m,U8vް>~;y[QZJ}~w5om]zU, @Q Z[~6>g(7GU5sa^S`7*jqI&)LQQX_1RbСrAFmlG%o.nBeTHFVDjUdZ`]} z z^@ `C){4QC`+c_|w m˱Em{w@Z\Ӳ.G&x$jH\c,ϕ2/}Hǥ'ǷjOE^5QV Mϲ}=y'p3hXE'УꄹwJS{MĤ'E˘4x 'j2 o J?]-Kߪ^Hl !g͒CF:J3dwDfÚ!cWY:XR8fvU !Ėx9: d0\ ˋmgA)/@Zmw@cy;##N HhjǍ?A__bC.N Oŕ]V fv4+h :ϱc:8ΉzַؼtnX,{ԑXX8s/)rЬ|<%)z3fI&@juz]=r`lF RH<={A7JmSkHғ,+d$sO4A Ԛ7J.) 3;s-Ap٥`<˅}ͥ7/B5t8XEQ=w!A>7Ϙ(c=ƙjj~2.T?c@sf=;,za+jùN@C- Rˢ B{2g|=߰ ln#nwr3w HWе'JCuEWChip*1avPX\#Tfn{Nh kr^ތn8 ~>?^$  2&wkjhK5\E&zbdzgdl'a£9;?8!\霳"$t׳eT΄jkFJ%;l] `UO+ .\ k"]%쥨H!88r +D$c򸂰촖XI{m1T1dESEO\k29ѷsWk]1KSO\Sd6 &/6GLpT)6a p<<ap!N'JƩ3e^]hR k+Vz-*s}}_zHFԓq(Nnu`lq+Zmrm~uNaXD,>yv|tM;Wm"iz~ă_6Z 9]T) S}߁FgaƚW bW%}t{L%V$r3!#/LWDSI}a芓f֭2 28*-/4Ҹay~x~Vz5Nb餘؊o(L*o48-+YxN:eUБ'xaj$&<&vQy_LbVt+_;foHrcuMzn1E}O&ޡPh<Ewu5 nt=^/09B̭|J0Wb:0ơǨױ$P@l A3 EK˩vx [;4_syyzt4rw&Xi95ԥln"❵VAOZy(ػ2by0IpѼ;=\{JJa&51*Qs/mi*9kƸ)8ffba&6rc'̀:|.D`sê:v //,'*ZKpzh Z.kiBf?GaQ,,,uAK>AzDp@#Y*h(5x+AOIri.d`Qfs!2 4s/=V}2͏,cs;=_) 5Rtt00dj tgn79G08CH\gx&=xPJz.U92\fI wiB?&;| _UW5;xܨJQ;ҷ@aRq]|}M+rs;i-!ryJQ*vbh;!Sf 7t[P1(ʐm SOOfr}pyޥfͤk=qgXaNZ/#X6+`{_y/HIߕ-^xwicGެcXuTX&:5-Eˈr$~| ĄlC[z 갩`L {TηU)$djܘVP}Tw~$H(<Ƀ 5&-Wg0h 꿬;/Z|6'C.)1\ݨa-T"w @rx].?)ESg0]SrM ''NB\x9ǁaJfkyLoѸ$bw}2't_|EKtdítSR^ਐ{ˊ.\S){wdchhw6hum}uqȌxY+é)I\&roHByBV̑cnh5aF+ mwS'󅆐"Gk_+Ӎl z]QL|?d$ZS[(C01؊J5'G6f}~4 ӌbƒ)%1GS @,!\!U68Unww1yK!0z0 l4g^@E`,W}Bx\Sߒ ׻G~%']h4n?l؈u]_Z*O^i"ߥYHty9|ɯMsם_c*jN5N pܨ$uoVyHu8:D2ZSwE/ntr:z0jz"~hСFB u18N.< _ѤU=G;x1>KRQڐH"|SnnMô`uqW,hp(P ((]$T[+!b|zi~Hju2)lܶY|@L_RQV!0_YQWbV$ԹXVQ%17mXV2exBiQ UhZX ޺LO{ƄY]޾˞ 1kÁA4@?^v21.5 >bN_(A ^]%u?P0CH!M&W%p6Lx`:8-Xx10WTuMJ$DD6@'?.Nm+VcSs,1ؙ$- .םݙm:4٥uNܺX %RH_hGTw7ps}Mz/h?:U U$ƣ$Yl^M5 McGdXӶ@<iA]ceV|3t{z%}Tfyt Q*?#ݽZxy(\wP1}L<(%fn6̴q1Zq12l|FPcu>D;{/ƈx]/B?~J}w:qfcRIcDFov(l#fqnHl*E|j'0trN.#l;b)Yu0#>fB .ˠV #tlKM _Lr>sV^Y r΍- g5,Aݥ gKC7?16`v$aTo\7M@@{6p)Tk?&, GT~JڥK1ڮĨ7GH1d=&1#!O9nA0)&G)k[pd[YjEHp65z5 DɹF"0: n=:9kۈ 2 XN3gnP}'f-6]3'ex4mb0^lރA)%"R4ېAg6b iI%!kF99bVfQ >Ej<'6K\{_sT ?c4QdOC%}"܃3`2X%8*18o(JJ䬟ȱ[{4KV&$CNtj)-[ILB>|V=RV~2k$ytd#bF;d[BSk! =SoZ;YӉZP9M^Bh*/XיrG^)l4̕LȠEʁN5|'%F@ĒD1YlP`ϳQ14קAjЫ}W[)l۞Ԟ!G!>n=2xkɇ=g:3SfD /Ml874J(?'*+VEI_LWN6 E6D>ؠ_ @ƱJٷv̏lbthR/8T]yvxhqɘP81 I.Y5+{ѭ ΒY^4MQ:3Rxf"ㇶg\P.b+_Lhj j!h]~Qz=`wPȗ9%ɯ욵ǖ }ȑN4tM5Qц P.멖fg2~h1f,V|Ax9[FYg}mg,>e%玂1 =8jt6]Kn"LU݁YSdGS4o^rkgѣ6{.G[Eבlۆgp@2+91I,o#}uL〤x5 6# L+c6l:ёRFY |B g>EED\9.-ނd&L]ΰ / Ysb,xև#~OSXt?As;6͒jb*yWEWf S۽#FZwtUU>TX:#l˄ȑ =^wmiMĻnOG8n薿dW`A}On&J24j648c߱#^]b4!CDƁ!4<ؠnMz-½?L]0a2ۇ*gHIP;@ rk`+mvԘEΗHi(70H?>Jh+z.=#w^W洣24p;]P bO ϣ,n\(ʣjS$YvpExv[Gw~ -6cQ{]wn+`C`\c4 Zdu2#0"u3md]ԲGax5/2C~Ur[\;˺!˲~L<*|_9MyR!C70 >??Zߎ7r*s I>Bn# P6{гÃDXG(Vm%e7uI%{ڐHd:RV D|ad)I8sy&ݟj6Jd LE .=`=9 ()}'̦'M0`= PX؄L, ]e̍3yէ Rp`7i*sRT#ӽF<-B)ll(~qĄ{oj/H}tjʗE\_}J=vB@U͘2@̏&ȯ8\+fhXN*zE"/[)ײRh֙Cx k:T-}.xM2pv;TbsKTv<V©ӏPa4W"—~?_ǘɓl/:?~nw!t%ˤfXw\ŦB/Vz$&)D%:)Mh -b>t mԅE`wa dͣ E_(k 9[[x^͔JRVYKBk'oBu|ia+> A((QEܰt!?rnf@G]s:D 9/x)'Vp#3'GCFbMNV>3i4zJx<\jTQ/ z%rcn +xꇘGb<}Ni#H,߾\r03"gY3vwd^OSMCcKq\5nMLM\;j_l?} m}>@AJ9p.*ߘ^LÅ)WìmFH3t3c߬.2\B4> 0Uy&Iٻ927Sfnӓ̲U#Nqv]p'hߩ, ƍζ= y7(鰱ӑ:JfhuI UJ.5$-5+<`Nb^eM,oIQ vw+8N 㶬IpaSN~{yp._y/zZ;<5_tΠHO"ѣ38-J0*Vu⚟+h^H-jA矨kۃ/6H`YeӯwQx8SE~0DwKM4)4ت.@D(,um,N= `1J^jJ+~ +ҳO>f민0xnz#Q](j7lD˘`%58V~ݒ4d#%u/>_W ٙ`uq 6Q"EgY_GELn/ .?dZ&x˄:o0]#wRSU?=V^R4F8{!0nEn;k!E|4l$+ T$#y9X\`hPl/zRӳ"-W >xAUnV#P֨z #6yuN#%rY y ~rJxQ>U/7Ѥmz-\c<2Ep)er$GL[:XMUA$OWNף[9QV4°4æڊQ^샳8{Q٩5lz*E՜{l+=Ljig Xz:7օ0$۪U ܛ @gp$\XcwTOw "j ȃXݓ;ھ&G ¶z;oU>Cny GpK[ړ=䤎K%vVbodb]1_1>C0mwiı?.r^yz|]3gk0&oq\^ҊTQj]=uDp&b :unR+ϡkxJ!!dO[ O?9"Uؽh]\#`g`|1kl̀|l a,`ė\"H!J̨8lt 垓sgL z{2^C1:$+%:O k/L}ZdЄT.;x%vD6H\mc {H/1/7@ ohXtl9mBq8$/B3tj'@%vgK 5$IbgLYTi=4 ozo't%x|> DϞi34d|2p\nGO2@lhTP|,  {/[P|݋U#s_&an Ȣ;,&/ $gt)Lctyzk1/d T%Gi!΂_J\SJӵqVT'fҼ1#B^ 4ԜOBYz j(Gd)S |*ݠ" iw%VTZJ$T1u߫6 Nl==ͮG]:)KBLcbd/24R Ln\tfxMkڬw6!{Gū]D&ݿ4z>b2nS}` c?-~4G^q$G}>>|"BqzdoAOR\QP/{MXJE l}lҬWJT7qzYW|e6Lhh;w0+a cBz\ȌXe*H4_ 1cJqWn!:#ATbpbzŽ%\t8n@7VXP+?lfQ9A!-8LϬM54-7Q3Gh31U`.<[!Ov\a3*qk1T{r_tC!PY|b7>hZ)wBXܖ"j?tpH,"'3=rIg<28 MSp3X1 |S#%'pC6bk_`:?lB I4Ja~f5'VI8R@NSP71^ 'WLbw!\2d[MyhUǣBV#˴+}KOt;f}ΘHhdLitC>zj: zaёw ;#WN9ϒxҸ Ȁ;"Hm82.]mثfX+ŪVto $]JgT~VW}Sː4) 0?`؅Qr$~ '~~ <)qqMVb̮v;GSc*=Aj~O\8qΦ d0AEY*O s:"y |HxP-)`eӞןUl:,;~A&_>'nh QTzPqpȍȈ?ͺc1եWorʏ6>rXU~^^b` se@TU&~1w`}I❹*4~{020ZzR,H4?z[:MR& ŮS5f-WgYf&΄4aٸO[*s:╩VJc~bLWU[y%~~[h*s/P`A?ؖxX[lϼE3ekxҭ(^XɸN XfBU$> G1܄!VgL9> Mite>I?$ƒtYke!ޤ g]`%9^*BSe\=%[&Ԅ;9)k3ӱun ݂TH7/E7.#N/_~4(Ԯ q`Y@5Tb56[Lku2ՊM;uozs8B'#uB*hprӧ@=WSW~ W }bƜ(ORB+"brݠ[ y A3p OZ.lvӹJ0 3u;Ã+K>a{brNgZĢ^Ss@/xD0\<ߋdnj{R# 1ZHmÎ ,rV5;MasAC$A[+Gr_LEcsA2f/"c4UM9"YmP:%Cf]ZL~G߹[\5GԌ=Pi,ok a #wŸRg\u5T('b{ce?*;ftMG)?A-QʒZntf]2ž0*Lv5T  -@pJ`%5)I[}lL.Hye\I9S&C%U`8>$,むm :lDn@ZN)|-1@~lb4On<L]isJ@I*((qK#@yqh<(~fLV1,F[@6+M(ɠj/DiPduk\ꨧNrTXti1o\RQJw}DKX8[=>~`nMf(,D>^>RP܄<.Z&h=ma@)(:uoj}'(uwFUfY9w ;%0Fޢ,ny~c%S?q +1ߦ΅BsO7;w=xƍ iS>ɮR>#Sʿ 5(5PCF'(ׯIJBQd x"Eۏ,"Mwb+b2G XljT0^(N JC\2}~Q"cLӳaG-}/ITԛ9`CP4maa*<,ĵF \ AF(bۓ>U-ALI*8q.z;-/ǂz[ ZpseDw-BT pAd (7o8X1͊DcdJe;@Uy|i@[^N];؍'|viRD3|zx?V&jq#jE.4hq2۳QNZ \q*::кN ~1&/Uf. *`1nc ˮQ>`Y|{ޑΙ /nkçTL j4JTʼU~~ l=P&{ n TkE7Z:lTçFE9d$q-p7]6a;hO>f= HX[I3١ @#%CTdP7iYf>úHo=,֏nQr4=yX'V8j>V lfzvqұ]0a QVqh +*=1Ƌ+c**C~\zLjz-Te/d9>T4zcn`0&j Z@` X\-]2~੎-ʱruWeQZ,.=k ,IeI2xbsW-yj l2 cE?"I 1&j_rA`a{l.Δ2Rpi eB_Ł= [\`mݳgK%E=Om > /W~tja")98r)C];c t9}uQ;; Q`EMox[u+i%=11`xi|3H*8ޅZRvC \8wC33,`/@Sx26$wd2e#6ǕJZ9۫Im\9Ȏpƶ@z5[J֗sC/95{rObRS:] +Zї+Ҭ+1~X@,5-· 1j%pnVȻzn:UGfZS_> F>lFS.t]16=O&B<<'rF3`['Kl h*]ȏxkfC9v_AkLq `WZ\V$VQ~HT\nO:hS3ۆ=>Vf؝Q4tw!KC5UXG栒ykI :KXUs:$i/Yԋ=eE OMþlX\f}(rxj%Gj#2R0qgxcrD*AՎZyj[G?c*m=Y =ŔGɩܬmO:lțڶKgs//G٪3 uKzKG"{3L6=2 Eɒ".F E=7{){rHxجmqi&L.UIBșpp#=m^;xPšk^L6,kk/.ĒXC{s 2v <ҶS?MG pʔmpʿgF,E"W׺kONQP ʼQxc0XYDi8i ϝ >,2`7ͽn GjP߱^A˨LA j"BàC)a_D;a\1+m,^E dޛh<{BO_P ?*-b̵H x֘0Sz_cg\ @8BeծN;b@ o]VX;Ϊ |Quܸ.Q*rȵ)ɽn'(dVִ+8T =86Jmoޢbǂ/s&WvEB0L{S xʦxo Plsl#=1˖jFloKOJ Zd)vȷ?e:g0#,Z~Oyphs,ǖV0r쑵7 ʴJ#/=;QH[cXldR'bHH:G.GEv_Á5uCaܶg^[ ,/(co\t S{OaGr{foxG|]Ӎɧ:^"wOVWX*Y*|D5S`J?Ҭhw,kDy_=uo%0_6<;ߔt߀%)E.y˂]\]|KV3[`m &OZ2ϰRY3_)Cb''9`%봥N` ʃǿjf|@HJ0ԚdX3Ϗks be? pT1Z5?W:M3  IjcO>Ǧʔ%ƽFm)ZD'vu61 ˑ.:BxvEΦ )e~CxU~xc"7ͭ6}qĈh;X()mW+nwVvHEF yEg+q]Roic.\acfSO`˃ VF}ԣJۘL lnZE e 9d9{Au w2xW( CPMBɍqRdBA4aqA |d'qJB6SN$MtB2<'˃Ngn'?㈎gc)XԸcwT@K oY?pAG"ܢ t_΍pKËuHf0@jnw+:R[QnxmE;"^K7 q|do/zy~J4jrT8=ei:;3~mɣv68$,j~ŤT<xa' zAm x[ts)RlLK],Gqxead11IGXt@Xe;)s/|DY4r TxŸAYf!PN%Ѕ.)AP(`yw=Q1oH|nGDu?]{YYԾͧW B@%%z.`IJ8 Dzd/É`ЈZ,6.,5{ v*z1:6 Y 6zI(lLv-9*&`o(@2jZ+LyuVJv!jݛbfG_RiW4'X԰al&8j5vXfiY,Sc,gv k*J)3W HA5^MDe[~( `FUKˀNc Gx(&Œl)a_uxRMH7!Q Kc`evڢLmB3@9|y2RQ2( $2 n]^U;;~yZRiMٹ79VF7PB8 ;wb]2 mNyƀ!Ti6^&*ɎJXS}&;:O'5d^A4p!rCPc&;^otw"t"褛k%HU"*Z;{0Sp EJNmQVOyw:﫳}MtZnܷ >g )T;lˏM|4[jK^Uu^&+,QL[:$Ie="I֨H~ߕd'wrD(:+(KyhhryқXsA)BVnz%v*nxƕ(Vn1Vnso=\!Av C[grBb*-"!.&PpЋYViOe%tx%qk/m@.yw.m &,*?kio[ESgє>z4fb~r YrÛf jPk6fBd3+6H a}azRu, P#Nr3«'f ö5-#RQ.,ӽOeݡByT8W띯c9%x&m{waCOVĖu' oJcRUHkٖ7޷-X5bPoh 8+[SPiYEğ\SA%E>D2G7yǤh Lɽ@ج=| 5 MOJb:}YESɄ2ts'ODi1K-^CV/b1qr6#8u|&&QgwRn@> aM$cTeH;`mL}K>C,2i)x pvw>켌th o 8RZl_.q:Ry`9K3ey:9hr-ߢpO.=UzC x-=zD-.SP}LTl2Dʓlddkelؠ >0>+zz<) Eld3~ԙ/hc*:7!` Jx>!8?ӡ&TO&-1D1؞7[ !^&}q\tGj~.n? 7;~"k,^m=Bږ7n`zݖQ^-]*9aJOλ j?'**=&⅙W~#uzz9hҹt(E'yVȱ_0<ЗfKpǮDj|l1p>;x7 ZJ HʜY Q"ò2 q ({4#U[ҨYc3JKt<1$r|xs[o%=y<_@c{CkR!8rρ)D?P ^Z}ނ4Z }Rل50vfK^Q y"ǽ{}b.ۆh skާ q+k8`^>Ea"iѓ!va]UfTtNqHS-LVZF]uhf +VGmUBT^?d`Yl''ךAWP采 ]P+JD`"䉛iQeް[ٱ-yh^/3t bcgs0hVpfi8~a%[pG?jzio|lף`VǶg Mee-o9?2>ӌ O= _x/iM"ݕ.y> 04MW9fnֶLM2)*r=SJoߞ* y=k դ3{t:= ̚55P؉t?|0dkєb>؇;%3~fBR;R^E;%S0\ cf#hH[gE&HƳ@*7d#iYd;e0ey/a eT;R &Bm5 ?>L0TiMyJ/-nl!j/"Org;(?{M :pًAe# YDR+JQ ]G䮈U1_ .`ez(>o٠tf ~Y/l"j7Zh0M_T,.{Nn.KLM, (\ѹg_oE*2t_?P0n܌,quӸY 0/enʧiֆPz_r jRC"EeTb2v=ZN+Qpo=@/Bc7զ)r_tFjw&w«@ii „"\ tEOG.-aPY\fv&H9s=3cBJ~6w\G"0R䃖\|+"8*rMC,?o@iK+x FpQ%b<06?mב`dԠ]F5iy_MXgJYe<'ΧiRal|7[i( NP7Ɲw*wH[V#:VUT:K/=]ïޞsC$X_yܔC: iq`L40'8 쯲2+O%t;GOh^dp8@tˍuP m] tY'^N6*X3!Nj%b[ "Os[VFa'_:T7$89:-#w۰\̴9<z-˒j} ۬*T|iNKA^*:r yHS4e`xOV\tѿHj`?bSvK 0}Qׯn.=Su8=77͇ޣ=_a#|תR?vxȂ3_Œ<'\a$6%IQ=Jۣs? c>Ŕc3$?uC}wz-3g"&9ޒ1خgfB]NJ9҆rRZ!I;[ײ"L:ˠ:fbVۂIiu*$_Yh$EX~gpM~xw*96̝,H7/t[}(C1E7I{YMuli"/lyc1ŷg^:S@3$0'1.[vgdEDK8_wyQuR\%0UKcZgZPGVIo'AL>(wUǐSԺNrWmW|, >|JppDOOÂH <"hw(9.1 [_B$9A_(kLvT:.0y/\u (.^?qMY}!-=[ٹ?c֑[J#C"V&ዑb+U Am-ܮ&D=b"5ƶ=63A:H#` Q3 N<= BO7u!R8([0o2u܇~H>A-{SZ|*3Haf11_I#V ˃c fDCI"72qEoUлM:,RnlO%hDzBt}6nSUaP; 4l` [V1p>{N@"SN54yeަp_HqNJb} 9Pĝra;6=nΙz|%I;놘}Kt7.]ߩzgE?f$bmB6 bxJi**"5^vΡǦ a1ḰԹ):p1vl.k}sbk=]g >0Hk48``.z#(%~W\_ɨ켊#6[XfAi޼Q~qF3xȚf%8B6]1(V/ŋ^xx$eA)-L`}qMO87AjPlqN=Wvt(Qj F[q\)A.Uu<*_oB=߷~/3=f]/״PsL)1#u5yTfQTēœV&@cvgX"fR0'B@ *Q ,GSJ"Q0§g~| Pe[=U=N^ُ]E:&*ZN{Y3D hmuSlԎ3X yBR*L.N膆6m"2Ozʉ|a siNxyA!Ofq2}?ZD!\v5:S ٿ<~(y=v@B+q_O,kF'\ ~7i(\\;Kk@p}7G!waX#ҍ؂=!raƗsUW)Vl+w4IUCu yQw)Uք1O^(ghmtsR/<C]&?C+wPSe 5X-4փ` (SKC>YM&38d̹oTrpi1eX$ ]f ;vKh`i)f%-z@؎lH!bs \aZanbq[!dق=g=stJ%q|TyX+սkh㷠<\+12V}떑ul#\=^Wijo YGUsӕ>VZpA^gbZzscR,"L]Ge껧O:D, K 6Aq%5%<=E{/nBh)vjlQWoI\3G,X:doF|_$gA T!W)ɳJY{MҠ.R42@ l|x,2ѯ?L?dScc8$ kQ8฼7޸uv`\ל'7?Fޢ$ (+i=8U <=e+돧/ \)0{Fj5 e҃ϕ- $-;,&O[ ˄P 04HO6nD/7t\g5x^}GDat/}\TTar >&˸M /c t4$ X ̅p!EŒ._b~nE=cʗM˭9h@0P.F80{GOBTw%cWUHfD1u,q"+7 (8LN&%QNŒj0lgxoh"Xx_@m1C(DtdžxBZڸS+P4de7z t[5Or;Ss&* eoCmVlmC1ȨoSϞ79+AZ5ё ATRNJCk OE28Y\.|rkw?h`B[)TׇhaW3u7&AG [ Ds_m.!Y,p?I᨝oh8 ^ͧqeE $빨3>x_,"-E?h =$Td^%6w\Mbz:gCq})P\T”%Wi~BRa1NFp"8E#F|uAa/^MxЩra"-9DkpX7!Z*c2ʁI{͚vL:jފ}9fVGke% h"iѠH;BpifG5_d\'Khpx9}(to\z _D<؀E Si=@{h),92*{3W)u>s(\}idYtJVLsÜ%N!pWю#fp2tI"U=b%PJa X);"j:\CE bP`0jg W̞NXK2Uhڭ8]:6$,qPUT綣%8HDCɕsxN̆? Sx  ǭX2<($2(ZXm(8Q+gD8ϼn$[nS|#N3\Yo;j]"pmukʲ=*|3fKDupUYa*МGg`[iWc+{6hߥWcQMIDp 4aUQ$?AeBkHxYpa}~sfV |T#=WEBFqW"x|ALGs3Vm;-32t#aE,y59@vm]CL}a#Y& #hLq`k<w ;͙'>J T~9(*ʫ}awC)P,^e;m~@eaڿ,ksKRe!}m me&4SNmEmM$iWb-z@4rҀ R^&W77ؓ{QèO0.nDq{f;JKPĵ -l4EO{zX)<\wd,z|2g{r)Eg>Y RovQ'22!$H$Ng&uIܗxr9E2EO=? gw<-1KՕ+({TǮ62`\Iަ[Z.O1k>Y[ˉPD$1p%Re3Hd`{C$dT3e6*O7 |j#]Yɩ{{?ݟIә{c{ގº06b6&ܻu ~=-iKk =U+YU\뱾YO4P2l !ʍ!jlln0s0C4<ޫL5m5$l 72.;k.<1Q5,g]) \zfJZd5 1-bQb󣙉!\=#29>{${*ӢN]ܡ.Wԁ3 ."C.j?pY&|"a}!@`c 'US] Qe-)>NXykڮnh7ܗdzH,26`~(ԋb_=Anc tȾN Gf7U3ϞhD" dxޱҵ7@=yÁ CA@Y`ɦۚ"WF $ 7o_:1*j-(C).SAvS|$6 Sج]n!Ar[UHj!6J3*NV"ۼxwwOszo:2@%;"2;Ag?h=DjACW4c!)9B!6nY>[BPa+F6UPLgย{󈕨]˽oU쫿Ml ؂}x2\xcӗUKPrEhB+-(vwhYHC*-wz2ZiyrV>TR 9Ějvc []QUwv343d8X} ZQ8trI+LPU!xGQ:Y?1A4=r\8w&4ЮFvb@0)Re]|H~MԼ_D&E:+L5d31 rgs]{;ۖi>lȾix!0+yJJE|.8j3V+D"0`)c["N$EhxJ(3L@ hЎ?ԣW_ívT_HVChP fK؀"f V4mwEH-j~[aZ#+&n\F%B|X1#ѿ%Nh?E%JX2t-axF*Y32  9#S{b-WGc)M?-R@(_64;B6iX+N _YJ$:Fq}*9$c1 4Yvi% #3}]tYN+π[LՀ(cC R>+`[6(][ yKu+FH::.;]Ȑ3T K7jUxH >5V<>S47\umq)e!- -;ępq`c`rLySghtH }ċTpw3KF7n`XQMb;KÑE㒋TՄS"4Lj4}BSA' U1$R|XD>oٽ_~{'qVbQlnF *-B5ḡO#;7etf(\[ďFZƪW*>C1!=Mw{ /!F >s=56W|b{.組YuJ9IZa7<Ex*v+S]Ch;|׷uu3{;OWK/B-RHKà%.f?% ;.}HB9bmD}+vjt!nT9= +41;K'@ צF.KGs% h MקDC~Mȹ@wX|q~kICdveM<к> P]5cͫ% F #|@ R29&9%^T,kuou\ղJf\aT ^QvIf=PY#V8{'~Uchp'BPӃ<]흟ײom\ B#&&h) KfbqhIO!KdS,fnD{Q/u8#%脑 '.2Q|$h_qRGIJGs`hZtpx0SUϲFRp!uiOe3:m .Ҙ!ke:d'( \Qdp=ސ}3\h9'j4gx8Q'f&m.H۽;E[^*ܵZ5 w-zWMcF߯[#䇯LvTg]>F:s_g L^W&  hy(4I#9~3,`EEJ#OU&e4˛/`/Fv&8rAXRP! {Z6F/} dU^ۯnUh?U5`y{L`H^,^M8#.\ZzbZX2 Eêw_ s+d%>?Xq5tc.*z{4K=p,{.reJL|rs+utwLڛT30*+3!Z.aWX4f:5J} K+g-׻qS&ҙ7 QP)rnK9lZ@Iott"p-Z/+&&@?86ǠV>7k<8 𩚁 &{Vo&`;} @'& Rg";SF.^JHE)0>֒RJW)Ѥe(¿ys((= |#}84a(=df%иXa|*I,5Ø|E5 ysz.TEK?? [;ʈáѠ )ܪ&6MK-(wT\ucL.1Q/YRl0hhY[my FrDP%%U_ByN縃f0ajdF%/2pZ!_;G8 WYnϮHF-4 o8QZq͑uyhjy#~[Fu@Q^roX"ft/~,v0[`j?a7Tho۫3]:O,|aVSrF!S<\^lzoa8A@N  תXI4si+Hi><$"rޔڲ@{zIJ+d(xz zf B:b6b"a9i.W f/[W %O Կ% Ŷ*CPЪ^Цy/*Z@/cu^բVj9MawzP4jǒ }3~Y9(|4& @`Kqr=;C gٍ}D'syΜ/q2-/()#rBKN,cIO4rkǭY1-p =C=3n"?;l_R|z~WCo]=.6ꌼoƟeJdsq"=š dMZ8:`.4cUbn1sCA`M8U˺,¬xE&xXn4'넁`ʬc/. ?IC)f_F^9`i_FvO9Ԯae@7 _y @i[`삢nOMmgT &?"&`S ۹x:ϰ#h s-RH*&=HSyePHk񫻶xLOa0ѐf trx07oϟn=:a4[m]~%|q'CЎhџ6ș\ %klS&q54ـT&GJRjGg8Vfp>RQ <583bqyA~rɟPZwSL˟XPGFU*GT.0g: ,sa;iȞGhO/2[Q꛸U+Xci541 0/9U^ǡ:6ò_K,s'/|+w=\jp7b;!?sz&>2 VTTN[#No{ngEbbh&a(4P4uW.9 w8;;7EqGE1hKZ|t2KZA3޴8yhfc#,TW-<~ '}T8 Unɋ|BUJ!t%>WAlL4rO.5mynLJr=i·֡ H(_~ Y-#DX:"sR7q+`ɶKiR[RxEA ș`OJ>+?)0<$y8bclˊEPAkuf DhuQ.* ~ *"akF:J0:\p|jbsyZ2t4)/O)̦{9fy#>X>++RYL(]:ev*%w13TSdV?jxXZp*Ig5q Gl2`)w<&"qT 5WG6) Vi#onO9ըS4s39>WVeKZ aY"%7=GֺEQ}әTrWKK gZg*X r1RsفN/TwDN ؾz|V^RpHKBMIh-ZAI|zڷ !g$OI9]]@GqYԒ 8?00h@=[5:ݠ+kKf]A:I:Pho]3,)kQ2G"MW(|E?+wnĊs&Pa!M4"he%B0@֖2hxDaV"%[i&+(4M>,T5Z/4ZSh • V{P}g ).a=e\uhv~Rz0a4UG`֯Vè%f ͿCڟ W҈ͼ)9uϔU=4ŲQMp[B^|qQWN:_j.(_ #rX=P ;J^yɻ)zI_7A֌j8A i8I?q(r9LLBha7{h$&ƕZ/sG9j#{92.bJtAZyM-Z'>XaxB0*T)8<՘8of q ti3$֖+%b[8ζˡ0xmMI^nUr2& sE ǔ)qXjASY5}oaK KEr<1XTnRXPbE`s0yKYid&ЛQtVkr|Ӭʓ P^R/b<(6 C({u{(2愸u u0^˳3U.5rRޏj !l ~BehF@;K@|4Dy{2eL0 n}* ?hIdp#V5Vbև#!l0H!j_* K|9Yl:/!1V)*Z Nsɯlt^L C96Y\-u!ɍ 7֫2,qPq4DBy JS<+soT/!YJdzr0i65Y&(n.$Uޞ"BZ] @kDq<JjiqJL6f] )2 q0Q$2w6;,2ܗ}?Hj+@=ģ\;+b^ }.f5]^C[RIGbpY,U5'8A\HB [>6Й4!plJ1:LB}˩upm!XLy_H;zO鵔_Ie%"&~@ A 0lD}3 TJB rY߽i+8e$1QUQ sƔMV>1e5Fn,?/W&D[dB"O-fp`#$=PSYF+O"6Uoqٖ]asMn|#ɑs@6dRTI}5эmzXƗoāHglL .Q-<2i9 ۊRz)+. $)'ràXj#5Bo0(NǺ@I@'d>(lL{.}iCMPuzԤBcJl!^ O#HIA{FB|DaU`ra[=wC d_bgI_Iþ7{Uވ?uqu'ɐ,Ǝ 1`˿?԰>If1% 8%vG.ɶA΂qG&Ͼ"Nv%'tWrC8k2˺8my(7wk]M2kߕ%> XuIZw:ıp B0p:It!!Rb#[(m3*% Ŵi#y$~7('s`Τ`#[3 x+:} qnovZsYͪ°iA e#u;"L#?̥XRxUmAű5f -(YX 78 /7[ᓸy0G"7g#. P ADGW=<3z*cХNUI >o++!p^o?D!0hxXS~Il~8D9yJhAC:ŚFDD@p=iЂCN>=V>IO=n;Ы1Aܓ#O/^Au-J^e.:TCS[ҥASW@K͏r[&# ⅸM®,Ye8Ur /fJʽ^zVѻgϰASŬϥXC5wBj(ʿ`YhZ8yg$eG:ޜ?e|s+y7T:KDȻߜ j%tW[ Ps=S-[SZ:%YF\Mq_'~iREKoqFKRDYg)Ԧ-T3m4Ei",O|=.K7Bs1򧇢%;`$*65Lj¡.sT}^n4>cRIF4 |r3(͘t_<GjD0- $,zjTu WKsȳYoǓ,n+;1JIQ1O[wCz2$,6toVӱcC6-!~l5[欜Su hgECBiQ?93G4ʆHV| kž!WV/z5^z@+h?846sȈBʇI8UB%Za58?N$x=?Ey  bHO.sI3/JڂuHQu 8I y #4TrsgTG=2EUC e3r=z/-t%q6_SZZ1z+h3o}#`,(fqmtedJj:X)J9rSQKh R|S/1 d%[~3KzLj;nrߨ>ϧ~1]}~A&?)?T_ {9ʓwC_< P'݀]ubm^0ԀQCX & [>]Avؕnbi><7Q>9񪫦L-.#'%xrH\XRyEgBGl2k˧+s#Ͷ)}{{j`ttRv-roQ[Ry1)`C} $g? 30SW{F~^&&[N g8(+ Kބܽ_kHsj e@rk NwxJ@Zw<9ȦU;UqS-#Yh)d8 i5yZ4멞)EODʚLAPԂX,_V/z:m/#dy*g! }jzT7E!FZ,k,% &Zy  ɒ85t.G8C<ʚO\ zTf -Rj1']MHWxhvc%S%] 212^ߌ0~djg:=oO: JU({[aR$f* ݥg:C[P^h8Eec] \ KK|ږwØyTH:&|TJͷz5mO;ػF7-ZUA @1p_HfUj^2mm?NU/m]@F+KLaEy$a )a8Ƀ"ܢoUd-2GAS/5AYv|=SH)}6Bg57T?gdZB_Ut`QC3D׏ZEgpK?}|7/{s#Z`:Nm0R/ XC@"IvqJL! ջ E&'[ry8Y"WKT{3ywۋDd{ F/p^4b;R9j.!-k jj $lp*zH5Ϫa|PոoIF)Mg +(RjCP/6IiO+:wV/4Wmmo+z]Olz+bF䁉չ\1j+٠{fvh ~Le@˳m"Q)-(CvW`.)-ZCP 'eVA07lŪLSU!RȐЃ ?_?6GPzmȌA!qǤ]`ı- ay[fqtXr-:eWCYӿ1wN .Jﻋ&^Ԧ>V.Cw" еԣNqGt%ju+Gkނۇʻ[Bٟ9Z5۸sr5HqM+j'>ӭq%~jź?[Ea}9[#,2g_o YtqZ1oԬ:cO$TچJqI> QW RxBqRr2-.8y':6_`<]QK(g!Hn~)a|fhfʩp.YC}.5 r1?T!)VFFuxEx/aGp<-2 ~; %|Q~C|vO"-\ s5Ϯ暆Z: Eogƣ8ҽ{sh䵕zW;Q5׸=SS]# =}s3Q,R➻엑}_&h쬌ùKS OK$=WF$RcW<1E%!%LބY5Y=UX: %wTy3ׁ$ 'PphM;7"F^|*5NÂdU^|+"˫c݀UKHрۙxPB+yt΁'1}$(cXR[:i\(7ت;\Ȭ ^h^e-rx@1ݬYdXi0KXŘ^܆ykymO u ~S5D2c/*4,^%gvmWuOѷpWv'.Z8`(T"9S4^NB!Br[ًGmKlʑB}j8-kdg]aj.K2 /?e9´ ^ZMX.tK14^n*9(qWGv®G@t+~@&"9%&[MI1jQ&Ʈϗ}1b^wf߆\0->]1i%/DXI Yy vC/.p@CRbZ,3qCnfPh6*ΰXn>FƯo>!ܸuX[&)opŹ7fWN.+Tf sǬ]uc֍1*V?s,5?.?ytt̆H6 p~\.׿vΈc=<2&TRD)Yh|UE7`WgF;nV  賕H^$.Z ^EC aI}n3 f'T) & 4!QKnƖsbЩ)!cw!?$8K*kA7ױż25dpvt:u]ECf?vjhT.N Ik|IWV[Y_sJv\مQqT訇)]:uL⅁WY1mIJ+GA=):GS[QʟY}CLñyo `JYΈ9(f(Bb)lF[:gm#uq1IVdN{z]UАS,=eA4bx9T=﮹mp*vkiD[tTL/F  RٓY #A~)H"R6,r#;0@,ؠ^o3 gBޢZޢx>>+ZNv'4J37! 9vwVpu]{a{Nc\Aiy6nAL\~:z.zG #QPVrG % JI^)if0l"/J'\yKwRa $4 T>є(h· >@-uuW-2c=D֜`.YA7kYȂtF%D@WX|5kFX:İN::dh-I$.v0 .H"wQC`' K4j#>$#$ a\2𚠷 hlUh̓++<ݥ8'aD=߆a'  ъsxڀE)-q.߹eЮR`( q*!3܈c-rTTbO#tRXF3>8GH-;{[H:N$i.;+x:Qh[]vT3x|p` /ĩxL#O=.JpD'>;X~(dgAH]E^==OְLC\JH+TCsAao1L7upb-1ʳGwB\It*G{T$ s~7A(Ø׍~lLkжHКl](z}TxZk_gh{Pf&],7l1t+P3&`*—( +PÞ@9;9vϖvgl"E=k)4dU+w: ԥbX:_MNMu3r[?nAAVpGN`S,dލ`Q@9)%jN* 8(.aKSiCp(h"Y^aEz/(h{yg:W»SJ줚MAy:u|+sJ̹/k|<}a^r|.ok(_R\ MKd3Y%I"jq]{ cnZll ~[k-:d7IUaEϐޫHgR148C3E>\C !0D3gZYsbc 0l;P0v WC`ԩ#R^۰s8,߰2 H)MS3L(EZvV)J!42ZrO, l*\p_xR$&yh/d184IϿ2H5A>4&~H M5krjzGǝ " \l}2į|҈bH1VDʤC=~ Y-HqVZ4hl(qᒭ/XD*ȗ3XK@44Y|_>$9_-Ӵ[9tqFG?)NmN|?;vmHşHV@bZ}m;'xiiOΒ&u2]v?TD<ƮĤ匭p`!^t- 1W2T0mq7t1Z41jiUm6YKL_]_͠7:Ⱦ=@QbAzԺ:!#q:Tҩծ % W7J!;.WUk'31MY@&q:A-,q q)~, ;DGZT7qJgCTh6/f6\/L^yv>ܯTn"~2DzyJEyVO 1/L!,%o'4^7/ xK"V8oYNJix ? vс;MA ^`3ޗ j a-ܪx5D![b3)[Z 'ca k9ePauc(QbB0l@8A+ 7Čҧ_  D *~=1l[*XukMF` ʵLvւ,;/8ቂ<ܟ,^~܇cJ~G5oH SՅ ,OiD-[ӿH@|2Nkoڤ0%z,DMȤ|$lO;i"^C-EyEKB8OU|9{+h^R0YCQt{Phxp}%\QVY]X!ZhR_rohK 9ͅ^X@bRWt*U\SooϢw;ͬwl}bvC"@(ArxU>v5q.ڽ'EG}PĠ]xvl :mir-S^`Z4ZN7̯uK7>G}_[`P'Y5DTM'Dk՚`~.Th;)نtbQzqO pA5h*;@?3cЮU+xGf 5<-Үi=1eYCJy&ò>/ćGM{4Z?|>|nVy7i0>0r]b3~tԜ~4*ȋZ03lb:+Ҡq2Ih W yLЏfrz!aÙl'BQVvZorhTGG)#k=Iגj _ٸH!l/ΘOcArYrڀSˡh[O3dʜ4 lgN#z L~efڿ)fǿSs->gПHӆqSΦ@;=! }˿J)*{Ɓ55ࠣM2GqH範pl`LxkWh~(,Ј$9,1o zTf`E:TdHc9=o R,+siNא .qT͂#*)%*ՄF$+ABR#,yp4K@zy eKf`|%$ɾja~%"9BgâU:\P:2b\Tx*:D@Js}ep#LZZ5h4-d<;q&j50w.b\|.4v%G幹s1ջ1 ӻ,P" %wˠ9'k!5y@@/Q<5E2 FÔ}ôUQ{'`%$d0bhZцzdN^9NNq3Gu[?BddHZ%fϮ" T&܀%L~P/ {1`حJȽ m6Ff˰N`e]3̥ NZn!-K&`Q?-A@yr?45*8&r|Û/la q ςXhD\cߞTme؏I%~xTnŲկ!GZ-5L;,Uno2{?|Vh9 *g 'L6TKn$K*g޳-7vCm. w4Ҕ[gH|xHuEFT46ewΩʻ`} ,lt]y(^B4~]>fsҤ5F D:&UKYGUk6Wng嘎G#4$G_8A{ΗٔjkUcz +PV|j̖Q\(L(sڵ[D+Lꏣ^JiJ)$@Ku 3O#5+fK+ 6Tgۭ&]u*)w@"(3cu@R To:Gj9<qNmZ0c,Gdz, [592&Y6Rwu*7(~zK[ĐoϽ2S:@t[j6h&whLyqURҾВɋ(.u__fu ZyHI5ᥐK^+PNY.H8)sT*& wFlh`'*W ],zJ(VUcIz&mbٰ0d0a<5+Hf<Kb)! Wx#sUx R~#TZC꾓5k$ˬ}AF"/@NcgIj\"%6k3~|6 7!d%!޵T|]/]{.B DoќՖ,J2\P^^6^/5JBv^YAtXAc}SGЄ3L_tOX{gpH} ;wXO32JDJ`4k3HХ; n&ဤ H>u:nsj_VG³9XUKMZ:GUnGҽu.\6ZDn@@ ɏV;Y~,fG_ L ;P+cD8'"kja_G$9gE#e#w1'ӑlj8ge/)G{&1m8:2PFXnzؒ8[o=lU)_Lr/߮;0w6gqFMfEA6qO?7_Y*n 7FED'O}?V F/)nLNjǡgtPGhÆ<5(z}lhh8]P}UL1ӫ. qݷ Im2ڽ^yM;RMa\ ˜2u"\"0%ԾVX2 *4fNZ0G?v]#w*Y֛>C#nc%7ɉ]VMYt KC^PKeHCk,Yfw Ei+źȾ3beY]xwRG NIJ,gp0*!Ka$r5B,4{2(4X{ 1ky~fЦXhq]J#Vi(./'pE7;A:\ 0ZU~w( Sˠ. ^T=|PzmArG5Et2U,#Z}rޢZFS 9rk)flbIn58pZ>6)baٱݔhbObIfsfqIhhD6:: M|g:{K9 BU`KXc01}o9XJ.&)#eι;%]Q^#R+rP-81eAh5D-u!'XeTioe"m2qZ_Zb2*@t/C)˖f`"XcHg/ˮ@AT=o!1~ޟMyٵ ؓ_='j^=rڋi`'{ +;+ssOARz+ѩﻏwt8g>GH'?t{ f"@Iḿ yn1*FPXg3\fɋ"~s+, S2$Ĕ.( T!YEHtPEIEo4Cֆr˸\x&Mހ%a] BkmxoN2逓 ae71%y'Y^ަKs:T-2sXa}#Ǝk[W #.챱 (\8vMb:h&n @1KbB5h3e\8>E2*zvq'\}`>KFaKzr~ R)`A!T=mŐzpS_!wQZQ_[F)Qe *8-neO2cᢶY>Qj%߫qTq*?%?:*bQ{R[Wp/z&w\`1ܮz..o0U-/+BM`XdE gꌨ0 8} J- %u>ih=i1_L`"BAQjt)]x 'Rr杌$fw;`CvE&Nvxaf5܅ MV^``ɴ8kI^Ḿov7H͓jyBQS ИF+߲ٔnQ=~%Ց`5V610j8ܺb7SuK~M 7Ĭj G1!eMIdMgxHVykdYΞr`y_ctu ?,9I&MQ!Au\}AaZK\RpDqi"(,g4>}(3@Nv\+ sy\ˎ<8j@TQQ!wyp+LraaQ9sGQUVbZ6i^NZW=;7BTםLLmf0 >tw (gFH- 8r* ՠBu+S`uHfK`O32yQڒ4 f& .{S|{e 1˗WxSfܥ&֠O9Ԗz9.?Tۍ-1rH6ɍуFnQj8\?ӯ7iLBjyUGL|"6jm87*:.üdFDu1*T Ĝ=f"BҊWQ/ RA&oڟ< m%ˆʧ:=15Էc):D/hX?HeKؑ}~t}=̙;B C$%)P8xnxmi'4,.\{"bF>wUXj(lhX_t8ʍ0;YZȴL.۹q~+!բ㹉_l8U{H=dRh/dƁc9Vx>ZZBeۑnI1{ #PJOe}Z$~ -m]o y#Deu&cy'o9J[c7#3.bFϙ5CυH| ^&gwd X LTĂ{(0O "M2\d?ZDCd^CQ>F'Rl|UzNe`:Tk//RinG*~%8xcVSSrxwƣ Ɠ"']&̎1[V58U.]!hwJͦqjl[G:!x6Ԕ/{ o\,M$;!>}GU}<u>Ar{OS)oB1w Wf0ʠ_V$wdұu !ؤ}_#RZN EZqT~ם ,e(( Ve>; `\(ގvk=[4 C+Jo(һ3 : )ʪzeodGL،Z_Q0`تQ$v ҀS1TYclk{O6G*vl[?M8=i~L!1TD$IrmecrpYl]Mfy^ʩ2R'z閨\}Ȫ _6&ظSx4এT&(5vĺ?Ȇ 3mW$=<;z96Jvߞ23 r7w-h wC Jo &~ބ(kV@P,п9Q`o [m ?Ɨ9 xYPIoÄ#lmS'|tG@W@gJDO~'(n|-Vܨa K1ߌ:]4- /ZCo5qb3DFԴ-Vr $ o9c+$]5U6Vl7Rhp;jzI`aF?h ܩ%Z1?nH\m>:B+:g8Hu0~whh6D8sl9xLJ?0$k^C.R)٘ŦH˄&fu;@g-8(93o0?cp D>yA*-0Fْ!X pmjӛt_V(Y),H1֫241–t'j@$i_ Kg eiI0nц hM Yl3/Z V~@?챢Nspة-A_׹S~|Fd8TD^+kAˆ}vLǼ'GnAجGKM)t۽~([ȃ9 bҫ5Ee\k%sय ;A9cK(Qox/i&mSG[ΜqA;jn]bovoyBGM9O*<&ŲMRInFBІ7l#w޳pnEkܠ+)6Ͱc~9T ۯ9xlI5}ffuw1HZ{y*Z*i MrD. [ xhZ 2 稄aۭ~'UΜn ~[湥3p\_ "Uw\w'䛩ž=sL-fw=Rki.^Rj! *lX2{-G2\$n>>5 9ĽY@P[{J(S3duqg{ FL,K3RmSθ"VϽmɍtVLoY2R+[:}$9xR-pa.*1(i)jhq|6p 3\PG'Dޯ)Ikޥ`/߂8^s ߟW􊠗5rƬYxHܲSoӶY, E?ǂOtԢ 2jXU@ ~?Ûh'x i7 MZ q[Ű1C~R!6sXtL*?s)ukǵV-f4l8WIʻ O4)M(+s[ހ/dXŅ&A~Ѕ;OuãڐpY;(x(WbߌjcUTt{r-`ɉK1zhн>S$Kb0%nc` _R@v!sY2 Ըԉo%8BBeKR`(0زNDL*X!skgߺ9;RG#Id!5(D^{B(l/O0h6(J"Ǩt]P ߼x|}o/ *>|,6VC>X-ށ,i@p.ϗU;fm4I٫$ߏJw(V0֭J.3"az=UjIvx\Hm*J._t+{̪cI^_)zS_$Hs9pCE$#ߤK$D2Ie7oX9ʻ1ZY{R?F$>q lD5,B+`>k%-e}@;ɻ({$p"L֥xߠ} Z(nzh|?7/4U2-l+8xU6*ړKT#*<55 ݳ}*$IGp# yh nw^ߌ!bje2ZDS?uQSW!F<0S!)S$YQ9i:T;D0a\J >?~la 6L˲`XqNO.ȾZ1̃@s2$k3@$h VXh{t5Nh'"Y懭UT&$.6m GT:G{jlmk Wb~\A}@grLGȩ|K]8b״> !l%CzGՕN绬pYT-Gs9g;[F+9~iJw[`!r/䞍A1, y=۠҂Y[tn8t=Sm[]pK@H_$8[ݝQصpG6(ؒY\֥ 7ş J@- NJ`)_ޮb=o}*RP*׆9s&CO&^-go(y߼n<6}/cmmD/C\mSԢ(ZX>{9'FA5ɏ6 Gc ڼG4Ս}R 26?fkS}"))2G{neO \Pr:=T)lM#?X>0е>"c=Y"},S*>[Yߍ>}5> a"[6M{ G(/^'R8-j² KKnEߣjctی-+]kicS{K>e]v'#ad ;Bhk#j vId#r "^B,ގi[*M_vo![j;pHI{)Nj6ݔ} ȔOH; 1U hч}=|ļˎ&UMzz;zl\MhQVH2@s]8P*<E7AzG4xSɫɁo_ PIb(qkGk<zJE`Ju+nV} =4G=XhC}[[mجA!,(*(j .Hap,zŬG+% z>@ľK䪯OUNtWkŠO_q p>_ eKule -G!7  /9n@4rD Lsͦqzl-3_"ּI4q׉4PA"0|,$d VU wy5噋7P2o2Tiaiۄޑ2]x/7@G:|V#"ƿY-8;^"q]> cpFJ QU`8oa )`)*f[Hq\xQybEj([@̕zyQ~e8 o`*V$V}E: -:@YoIZA^;~Us-X$)?oJ9# v<8 aBGHbVr}{tH}a+xf,.<{:KvSwpÈqٞ 61}eBg'1 %VwRBlX7YZtQ.B,F3-$Gf̳_̮CuhrUy~C잜s8Ynry9.,rB/Bϟe}%Z[3"5`zTelAgk0 ~|Nӆ$*e4+pD,Ff[ARgfO1Ĉ#|Th`26gCK]z][ޱҏ䞈dOr4p\ZNLm1ǥD@405R0*_k\Pռ$\$a͔ ᵡ '#Yj)ϋG5A2C3-\odz,@|Ooٿkx0 IӉ+ҙg=V5Z7$uS2DO H;(SIMfShV٧h$U#h)~"N }رb_xma җ2;bs_MDnNլͶ0=I񨘎l.9.mvi%';px7moF8 ڙ'&TQ~]9OB@P_ewwJW6Z簷Q6QG bq̦-?jm;FPIv:RߎW ^ןQ\hY6Ae=xLH[e>XN=>`Pji&#\%6x޼h L uy1<`)Q]6^5@JGd^&| uvVEvc(SnF?]%7 pD_ΕZ|)xVk5EV5$;)/aժ B>Tn}6]m6(L_r5LzdڅDIRXTtWҡ4SKڕ]s973Z|i?wcՊgӻ;fRWjeg`hu1%K\r r$ b鄭5a @BS@E&`Ӕ|@-b0)u$[^;$J̪eoǫДw<~[٩`RFٔ8fLøH߅s!b}U~ :P\Z~s2_sa~LMFAd^ĩS*@搇"{mX|@mvoOQቈqdS~F!JX5l[fV$ajFZe^ IbA@+'%z(Wn:2s_Mj-3ȭaR 6j`!m}9> 8?tb8sC/* xo3/9d|KPDw !;TuG_>Ps+wMBZ9+RG4ޑ|Qibϡ0t@~3p9IX3O;3&+<&sR\7o)-;T3S P5w(tW1^JhQoOwUX1,\Y@~@\`,Mur+H0+A@*1ߺ~;ےVM1\%5oK~[mxVE,6P.:5' Δک왌YJ<>wrogX\PϤpb)2f_dSlv-u%lG zKܙ0HgC#YosaV*x:]˓ )σ7T,l>$(ZqQ:3nVnHL` t]$(䓫iRL0)v$h˨fBxd - eEqa e+h9PgJP0G`>fg?Ŕ>y3C$ Tm}lKd'*F7uiHqY#~oEB!`քX 4ကLÉCJVS`틐7n4Jrt2n崨'Ãx01ױ}O1pIw}eRLm\hlч{=Jڧ^ޚ>rb@3!&8ِيèڝei]oVAysOjO'uEL#_kbCǴ&+r%E7\׾4W5EosG_[A\ȳ>I^ .SS%NiMZdMTHbjVA'D̶U^u12J-r׈ַMšAvK2i~(P- FwcS&S=K-0d1$ ά.Ybjԝ!Zq˗01HU 2Z]RR-;V8Փz& [u~a'pKχGEǨY4h}hqM C )w iMB͉kmbf"ZW_>f5L8`.w==Rϒ^AT,!oP`V55ߵ87.q 7{ :Zw; |arس'41ma2@ }YūYOR^]BKlQ}%YGK CyY%ݶƨ,,E"rڌOxsN@5X#{"Vr1̄a\"J[d*gF+:`*+1\$2.MbU8/7E ܁$WzENu V{Y{dADCNݴ랕-ydiA^C AO{):PCcУ)b(I$F!hE(a{棔95(Ed^y7 f"/? 7nCWpD{Bp 7 CD- Lu۬7!j.6F݀4MZTӹ6GYO"Ë*" $$" "k&vnw*e@sQ5Rw\& 88biK>ޡs#0.p^i Fq̯YrF[b,uJimilf$HHϥ/T8R1A,^TpDW A ơ^Y0O!$qmm8}ڍJgV,,8M5h *k/IjVތfDd7asOLQ:j$n/ݷJW>8ΥXtʼn}^ٛhϕՑ JV[Hŷu!~Fkҽ̖1Adx,a(w(ԢsbJ\az~{N w*\s&h4?C7,A8p)OkxBb{|X"Q{P9DCvAyF?! O JPn^ _;v Ƃ_ WH]DbJ9 Ek\ũj{#\/ap\09'Z\sq=}Z(7\tc`6XW kĀ<> be*qRQ; x -8MfY]LxmJLkhք9NisRZi gEA&7Dà] j-SKWLt6 8) 7j6vy ,Y^$2?tu_mN=lR&0nY~]FL p [wMty io8 §췍~$D{ݤ*J4s/q_tvL[_`}MZ Ps$l'8яUvकQ<:u uup\gғ>:h&b"ZoWjjA ardRnL*k9x8,J)IFH#T!qWޘc6l7%34txBYצ/UTsր~ƙq,{A!&=axyqڲٕvCy}MbM6hssP7~-[}zY3=;׸>~tW#Qi~UuKECIbdO8gۥqLf=SiRd\wB!Ii݉#&%9?fVllUTy?Qp|38g Hٹ}pyň “Z.kbJ@ZSԱyO1$e"6ˋGjf->C$ ݔ"izG 9%n3m8@̄Jhn h`1#L?Ԇ!yo0S2[][2}e @c4G ME1L; g@mh@["Z*vpZ"_>=}_lf~Z5lh(P8HY5fF-)^nY"'"/Q1e 1,&/3z2S^7E3p|qwvį2JG֯*i#m^ -H!tX9/bIG\& 3 ~_#mF{ :`1Hy2d0*#Bhfw0FeE-)Ʊu6KvqZ!iV~Vešl{ܯw?"Ze(̆q <) -WڇsNB¿u"̺{HĢs\B჈oKس3V%3Q̿B'cgſ΃Sڴ]x!^'tad""%p@f} R#j RU5mN _W[I[eJ BF[/{lߐ(v<\ :*ϖMLl'z,[]tRV`@Ñx1e*VP8׸u ??əwɳ8);<|>1E݂-FwmMjg]u2X'hcg~o7T21|~E MU $ i2MA)3LgNN5CbcVTE1i"<\aň_b58t+^VzG){p`H[u`I\sv "(DwJE%#Π؎t XRrK!цuᗱ u`+e<ױ "Wnn=Zڜ Dpbc_%]s <#KSh搜cg wsu]$~]@lWwH? UO!,z2v~4$Jh JQ(H j&?sD1"9Lp)`eufs[rӅB':?)#Nk෦F4e뾹djZ4IXJ,D,ltPBg /l><7sN" V⵺Np=qٲNc8VRv.gi˅0[PFGÖKX0tĺm8euJbKypD`ydCO%~mcM;l7^٭Y:$M# HCJ>Ztuےexj8bvS:buˮzҥ*x"]#2X'`z'ȗK0mՊ1wF-U̐w,(Ͼ'0j=T)Ris .^gfNFݦ\>0pV+09Px>GSue`禺}1W&4uGLQpLNh8ZUֽ]*{8 0)3ꄝnI˱u+hn_ExpLGA[e NUi49LIc E-҉$$6iP,)Nrie$4ܮt3 g].9]g+}&g'6P7މ3 LĢ;@ő9a7ons),WV}(AROw=taF"O`Y`ȧJߓ( S߂8L&i&[ 8R/Kȁx?nݽ yt\b+3=V~>hhxb4sw]=y W<:ɞIvT߃Ԥȯ"OBO fDc)x֫de6 õiE9(.U9k-+0r:L'Zf`Gm%^:QこUC"Tj%!_~6tL[7g]!=ǩL.Ŵڎ0kĔҒTۜ^Q׳Dp ;sqA!_V'!:[Xvd'p?| =g25vMZe?]8Yle!Ne>k—InmzۭTsdpW:&CBTr.#֏1#5[.NJIEM%CLk:Fhf5arb%jׇ֯k^ba2I\G+]?z[,B9[>X3m~lԵ\VHU4 js:=E4KA=cƙn/ $4hX<9,|C%\MG%+-=!.8}i8kaM8STwE\Sln.1tLʦyJm$k;r|ԋU }-!}4ʮg{j($ο_Cچ `D^+˒ʳ ;߂_PtXhC 4o n-H+ m)b7I.85Z`i\ hVP08PfjL7P_tutGVDdl.YJMd\bn`}:bN)\a6 zxu7qJ:hAaw(\Bjv{`Fk,v<K*_1U$6~RrO}]٩sb&v ГϷr n2ZZfhFu;ND6~;ýok"jM Jeu%:Hd9) yiY @ ֐L/3ɇז_n.c2"-ñj`,"F/Ϸgzbj$kZf&WSr^%|]S1rG V٦ Hh M נ_avn֮@ jt>?Čf@^{_h+kz{ ǻdqs]kI'M2> ~9aηtLp$(4;7B vuq㢄G>*t—}$شGv?r`]HV[F뽌ya\+e"?`aQWq9{ڎhQ]VZlj9OuUɵ$;&C1+u/XзN8dk³2w.WeZoz5ЈraR{ͣIU\?D^-P|jn9Yr^C؂yؖZn>&FajVY1`,IMa$fFWyLse;8&W)\jw9w852ȿ~nEzLӍBZK[WGmDZ SІxP֫ 7>{Yt'\)h>pQ;3#6q oK_.b$z_>٨t J~]-V/;m[3T#~ 4\DȒzO`kX7 H 8?n #3%bLsVSDNAGJǼ?\|>lA0{dn=H3S8Uk,U"Jռ.iM}0l.vCQϷd{2]>=-ɎI7<ܡ ~j|GsS*R#(.+т'/Zqj o:dƄ!+s#܎}ٵb}6}܂BGc>!Nf34~ZV3ƲgR8eLK#>xEP\@s`bLqֻJT_2>G'㽍XPX~хj¡!jy.Aƃ4G20$_D043ά]XDL,n^}0/N#UM؎-HEk>^Y1a L`izQ*X43SÌA GW2훗Z'|RD&bm.z+fŞpV׎sgK%;S7•tRWG4ٞңE|<6kr_F6p :`Ovh -!t)EeEM>F8z71̪2"lz`$B{bכ $0~9E'3iI ,Yc9!_iqkB6RޤFHS}g#Z?:bL)K E/Ux 'b(c%i$rqVlp9aQIw yRcpr P6y`jmK\/w܇$7HU~ ;;}WZ$#ædPpaU>% Eh {J]O}6$AjS ":V)P=+]_]YgUn>޼6j&Aģc귢JQ8X"pǠXuZӌ䔓fJCת&v Hu!r xr(D&]KxnubHSߚf&8\Hֈ?>xsZ)iV CXA~5>+C5[vx[WJ+7vG! bIX1{ȤMjգ>)x[(ȁA.D$}9k4-)Q[Lxy&K(/ L5L-C9 ( <ʟ5cٱQ}Rgv}jn1үj|Dsر2~; [R-P6BN5^1"<<+ȟwTC^P( 458XDUX#B_#a%Y6OSB$l]慍=Ĝ9{"4kg\n!d7hH>J 37.t=껨a:1M3hς$.[wiVnifځ%$(comϸ H2hRةpj< #d;I\bR*JF*  {S7V`$ܨr1#gե;qGX/6oq@ڜLT"4uۊ[.P2  ,3N=5VqAҾ-9_⪬l<]QG]G x [_9fn~ VnNaB<`ݘkd>#Nw~8xRD.Ǽ?-=vOOolv~vr$hy>H7Yn{1ϓ/.ïZbuӧ@$(ɡ`sAc-CF9\QK3"@} #5̕V`64O"K)|oX--5}>id&wO(; gNu(u|2tIOzOLh .|vnHsX{U߇5Ldq{@X}b6UQsAd1땮#mS+D0r:KohScG;@\w5hN-xɥ})9o zC HRFp"{f֌ϓ i7Eca2K7!X {v 8 ֵ@\ŢuިK |͋*8e[(2c~11d"x)Rٵݶ&!n `5L:2c2hPA #C<El<*&\XXBfm|[&g!CФÊsןOe8UeAJ nrߣ(-bkWЃa+ݳ%jF൧%,Ray'ɉyޕŁgpLCeA䑤zjl2v!BumI{JثZkĻ~֝Ca遹5@{@61Ii=AzӁǟSA׻۷{bԪA?V^Y쏰$8 VjDx珚7r>+5׏@\;f+k<4.AQAWk{}rG[7\9i2^2sE熜&GqѤդXk:j;v, peHxo,!2(o;6;3R.UG'־T=Vl:LkPJ}zL[7a4t# G3ÀGC}{cY˼lϖim$k])!1nt wmۢw}1nI>4>HQdv#Vtߦ p6$܁z5T%Nq~.څ |d4[3K'05l <5?9(WI92gQVFr"r"tҘjRԁp($NeYM(z- IZ# H6Ւ!LDlFEMt߭qB sOܮ騎1臯FŕZug&*k1a/R0큢0uST:Smn8[̒tӖIpzv@%!(OUՙzMe@hs#jIqbt]3>q}Ztݚ y}[V1 ئ1I2F|}#*x~Fqb Ȗ*yg}8)_jCzz*JU2s-!|7*'fWԱO4Gpwvy78 {Z1_HRrhAcI:cCSB xac!\tus Tj ly&KmP+dI+sAO,B0yWH[͑.A/tTa̶K%:j;}y8$HZ4b۬o.cR76 ڱ{pQx@J0Rs#{#XgW8=ZWEy0LhQrX&4PJ@*" Z\ Jk/KCK I_)C{[>9"}A 13P%ߙuQ)2G9]E (jA߅_4W6#r* B:QB\W{g (xTnRojTsZ-0c.)s8--ȸ۩ȍ"K BANd_ఀ1pj@79*Hʲx$}rJ$of+/(|bQi>Pmev|R |T.vUND5|]M$Oȣ(dDN-aN$LE?a\ǎ+ "zxCq0PGeO1BwC~A+۫ dv*km~ '|D FdՌΑyB J-RyE>S Fnσ*r4ޫd&c9Z¶#ts)joH|(I(^B/s6g4N _(dH?]`13Wu+e$/y? @~#'dO'D{0)v ;y&ukryJ3h~ 'Ik.ꛑˬ:ɻ+MWL,eRg14l7/p5!0M Z+JTyhK`b{xs>iRZq@]Z (gxF5Ѕ%Eb#.o?ɾzC0 3ψ-.N{W>K- \Y@w)g8AUik0d+ R&)ߗӉ${ S>\Ya [6(j57j`L4 !S]pvP,1c q_'̅ 7T 59Rs}$tW4QO<.=u] 8=`/M98Xt[0ńR"7n\?a׳Ys1]&$] ~wX? ]lF:D;'-JTǠ\3\^̥ݶF̷L9#?>bąs[LdvK:-z|E"7t%oh1:aEIEO4i^]`wxGFZ拍zR)oh2.;1}(F!':ŕQvth}xF[m9)9sB zGQN)4\"sliU-alr*sĘb3se9x|j6?4:Ip׻CD_ٖ$Q%hkVʑ*R, MWMk2t/Ÿߦ,r\_yԏ$Xdrnϝ 7]XEDgFV"q[8^=$\58` jFQ7)'Vٴ{Ǜ]FhHE.ċktT!NC/~A:1+\-Ea]˕~2zUyfS3rx6/vKGB:Uܭ †2q+QH,vBhQ.^E"QMVC Du;꥖r2+=DVei=1<G^İtc%z ƶ OšHC`p6Ciu6RwΝG|@*~2@Wa3N+U.[y"t< $ge) !-50vLtaג&֠>q|r:Sjp5 (1x XgXuLsNA8\ \}xBZΨHl 5R;˯/1AZ{MTx)dy}%,eEni@չ7 i;&cMx-5Z*_Zg(e蒳/aԁ~{Э h0W %X:Gvj')D > E${Od|} ^F; u.<9C+y'krw){Ӣ11)G*M'w_iC&ALVQj%nYERHp=lkF>iy:@_ƭu?}&Rx5bbIRn?,˵Rgگ puޏ+]CUoՊ8x/ܜ%YOiEcP]D=Ø"Vm^ع>1/#gn=" Zo=nzXC@^ \SC|Y%|u([;*o`,|ݟ0TueF$,鋔BL(|iq56\xE|UFwPYAN! d5?ܞL`$0&h/3yi?HPPE<mO 8˗0?AM} EFVlF7|`Oe?{-bvp[!+."%tPL#na9ݠbʟsH!eSzOs"Q;0 9:$(W0RR[/xK5W9ܱPeIVKZ)0HK|٭f.~®'7CD}PO1AaLA)^U,6`#K%%Z:Upç+R]]2Fi f?5G!&cS?𠈓9Hr^u,zvS+c% zpag|AG^I/ i({#Ekf6$z3vr&%D ,לDrvӄM\ll}vO-j5ی0D@损mK6aFi3jF 6to׀N|܇QHKU-\zg&1)2h;ݟCjJZ>65a_p22>[#J~Yޖ*GˡS+D`$jnr)!bOΆ0v%~jkv$OyEpܗY o$s]֫/|Qv Uwf I ;w=a@[~}I,|VB+ؒ7^Q&q$W}P01ߪ>՜e٩w !]d=*;:H}KeE \HvBCvmi.١Kv!Oa-ђ-qRÕ}#>vkr +~wngs ݕA"sU=֤m]ވ4f&b*D#RTQo/ʿcdy:/puDNY`P/̘;j] e)HtQy_+w)4׃hR:GO£F6$TX9+G6_=C|l -›ᶸE3Ueʋ;q/zH~98ZwYE>M$l ȱt_iRv2ԟ;N?( h ۩ nF'^ۗZZT̲z_,牳v&cyË@| B5(^ڰvN̉4 \;㭖Uc h`k-@u,qd;ei1E>j*_-}I@ElzF7,&GOwj(b_"qF UDLhɠce!zާIߨW7đvF1JQG #nR*X&f< g̻91Sp˵%MEq} {Oђ.e0DLSnܤ/xEʙRZz*!-˾~q8#)*K9.!2_ 쬃gXy8LEr7 Hx{#vsZmؘlY;꽠Y[ Rk}5,Eقz6q=d̨.fCq&/Ix٩(QX,6ب mfRc18cż<h7xC{:+/,,& ,j9Y~DZGf25tq!!RB3ȷm<e癓iBKqvg^5_\5&\Q/½i7sEC]怴e-)R^hwCȨQJ';O(o @RJx|m|vY1TñRE9نY{MbQsypke HRrLsLt$_%qK83-U;yij (^jkܠKo~ĝd3Ρ8~7"ƈbp%/$|ICȑ2  Yw`uHIU~_x> I"e^x_ 9z{ Ud ~^ lF;I|x1LJ 6EYsvuYަ w{;g,S!Ʋ(*Qb;` {(I eWL}xh:V2`p\AlJ,L)R[pJ ̦2%`r--I q͖;aH.w[݃Dn#v(>Xߝ0J%[uz"dmMQ0MolgT量11bi+au.'h\Lx|0#-4o7J9{pp{>[yIOD!%% VUShԗ+T7B)7cfVM&U:r#0}tXb" 5#s_᪺].^9-Ϊn` (0O%Vaoa h;n2SC ́`ǩ[tENVyI6TKx (2jo({fXgJ«[@koqs7ƯD::bi6|)7XD'DλkeKOQvbrZGj4sӧ&K ^`1oV^c)BQXvԖk2 NBGud?Ӱ-'wKOKhHP> ċ~ug=Qϫ3n9v 3z2YrsqzFGc)穆tA}~sW|28=]2t ?:cAA)+.f>Up}=  0"_wcL%=i]yYLxNBs2N6T=+oJe)7leDBWaJxC{xF,&ԭ\A|Zx^ 00˻d׻a #{- IټVX6(L6H{ITpyZ/?mbD8qk-+,o7/#;,qvbK~ԫ2gR (f`%k7gh8twy;X*Oz%̥dׯw&`1֗{6*3i;hwoe]̆n9h9{ SDjSz AsO _hڅ|*!w @U_Y/ -&Ӑ 68-|)ʘqMap Y=-WQ{Jo;ZMb\YЏl1P1~6 #hV\1E 9j֒1( bYyT!-"m6I12Pd_zlD:[H[C$Yz~2+#fm+0vujs-kw2q2 zM_39v0 >Ύ}(DVkx 1au7p6g[_ NΫoJXWn(6SQM޺RiZꉃ}bm리qN[ xtm*=lOR|Rz},1p};Kxȷ7SJͪi{*}S݀ɳ:=@~9-QHdNе+xGa0b^0! eON@ X BJZ-%ݔ <0VS2[24$NϾOt[ %K_y:6~hs i@kf- 8ghLЍrӫ@WOd gIEdܮW?$;Q: 6yQ눩-n8P[_S`x3,Qg8+tOfZ+W;|5 ~z)o"8C F;X,&Edn4ux+Izh#V|`eAoH ݶ qP' B{ʉp1dISWBLXn!_]jד{3bk,:`;0XU-<%ֽˡ.~uf}(#ʦ$j)^II 0 d| $cgr)m3O -~=(F2euTh PSqKgXfsEڠ_Ț9 /oeHYS1VkQ>HoUF֯drlD0tBq͸.u L}|{6,1󸉃Yط L! *0Q8@X6FSezqGH{~hqGTۗzvݜ$ ) HL'y͑1JBHUwxll+)  ci|W.yl-|l6 #nV'<DӜ gΐif̾_WWdg_l;'6;79`1-YL dq#&фV2wkFg<'Flvމ%OH$T ="c7ӺS l*~L=L| ?Ά~ꆌP;skX̽¦a2Tp! h㷓K 4\| W+k5@@GGSvz'0茪pt֝j?gQc%1Cbx'[#;LF}'9"G7)j_XbK6;ж%GI5Psows4H-IdH9 o.:uO8`3{x*z'7SGɥxtatrxf&bm6~%Dj['6DQJ -T+Z'; x^˨_LtAPU.4٨e|n'OZF`tNY\PhP?C9uGJ嗶Qwveb^Ap?t XODg*EGd*F ο!y:جnY2G Ȉe  7J Ҍpr%vb+L9QO?\ ~ZuR (yO(:Fv3 N ½)P,gU ?D0xdp&)1Ze9o;./5v?{ꅂn]Ճ@Wqn:A\.Z4`(DynɱfGL0-Dȑ2=\].1x\iq/ l{y` ?+oc{!ʋdoC-8rP%A _݅V9B&~~&L m5ê^\UC÷5Xy'T"IDDK8a4 Jl[ԥD'"LOfS|iM`* x-B 4}]ab0ٽG9ȝ^RXG#x`ڣI5Q$̯WRHR VP{d9.ƮfVcY'\*OI`w3szQ'w!nJ, 㚉B*u}|\ 0)'cg1?@3BS\7+ k%<< GGES" YݏhŠ o2u 0{ 2Bi yA9)ؤham\ 87u*L*:s!-!OƿkK汾JkV%m:Ƚql5Hns9KCLG"lj?U ;Eua Fl ܂\eVrBX#܏R70D剺WWnh@`7^j\L{{$ͤ|:YF::˥prU8Pw`Ȣq8Dy\xꗳ9:5q*%J@]YLe5Qg%eaCxRa|B>^)F@.dedBOי~3Y@wh \Eipu8%v͟ ?x;+'g wj52W{Qu }΋I  ~l8{Pm eǑ8(-SsOCrafΨ[dOT.~n DjRg|.@ZVZ4=CP~gPUA+tREE[3wW=>c' qa=z.UzM5j;_#,k&5"#.JxZ:ħ.vߵ *ꌨ"7u7hZ$pڐr)a%톰R̯,L>nč9;9# 9cLz8}7IQס GW=i;cۻ:ؤA0ᴶ3G"=!P?4]YT/.8pWrnrOТ][^&!oۻyRǃݡ6b[^XzQzz/xoE- @Jy{QLc'Hf aMeuFg*r:TY]֧G27Ua1{uaBwh57χF4,+DD%-5*E}\gb@.[cȆt g-50glx+5NPH E "Ėp '4YZhϼn! wXKLYXI!(%1f56c} w! Ј\ $z q  2 VN J0HwʧlE/Zf\q MЍMGUFzvK&d;=%,nˋ G 5_.0S Uv-e3a.]es .FD]>\Ϲoi3qJ;3\t#`Xrۦ .[=3p+M En,R#yvPLWk\!z6BxsеV2t|,2Q" 835q$^Ƙ5\ BWz*3~$ wIT1L@6d ?A@ `_ "*H󱹮{.E !+~xk͐5x-wdckK $ᰂ%QA }֋S.%l)fEG#HgK1老{8j+CöWm!۝uQ'M?_ s#Ie+ۭƱz1M*A6I[6@sD9gFI>)^/؟+T\C;w' is3=ބ5 ~#ͯ`'&v\5/j$tV WYonU>#" ~*V3n/g"4yc] 4P1GX#J(dRFV;fΩ\.8n@]>塜^ڿΘ9AX&Uj?ý3#+V}.@6qp>>q/rxP)rsL+XyN-+3} iY,Թ b0 ~?ϰ`iN[SDϪ`1SO4!L~ ++Ieaa4J0Vb)gαL>akMlfdzs;=(<t?Sp];Vuf^߅JEzB\=T-W~-!T̂T]iutˬ42>44K0Ilt2?.snre1n֡, mwtB|,6od 輪e1~i= ]y 44P~760=IR5x,$;4b KT %skJCHߏׅ*d26 c#tYeZPLgF^R~$Vɟ{a0/pήϜ#^Ovj:603 NO*Hk+ 0?WCKRDZ;DoTe&MS8Hx  YF(Hi>)A v0mrA&!ꃗ"E=~BH p!z}( " ?N;=%zW ޺\rD{jtPw ډmY0\Ȏ-cl6qaO!~vˉuTA59aJ&Qlc@KmH)w䚜LcRq=yYbleE38Rl$oLIn&BqVX7.1.msei<,jxhY3,D-]~m;WɚŌz i$ڵ\*.2VHe ^]kL }Dw2Ұpx6&ܹn"?i5*9)#Qܻid]vϒuK8n0<m49%:(IVqP@vI*7"iYK~pg$Jy&tB?x2zMVba.kW1ւu\܃yb|7\Uo;(cLmGz -uF1=qӅqi+F]/Z";4 MTѺv-W_\$ވ[ēiȕGxT D믋875(U7xkzit>,Vzaگ;Cȼ!q\B #o+n¸4y{kZ/Tf\VpW2H''Zk$7ȃhVR- Yjؐ׾n6TzМ &L&}d8+yU<)S 9vTSz`h*Fdf}{-hm!Ifp 1u[! ֽ᪴]! E{05c`+=E+zW_{q>O $ ;$*9ᨂ h?:<"Z $/"7xd{mfެ45"Z{&ә);e^\gv].OcN,Pݡ 2`yV :?xy",6ŷ>ɩ,զENDҠN=g+S3? PT"vįh ʣ3>^~,[΀w R ?AHW1-%^k 9SdNy8G)% .:u&E@ {Sܚ~wN;`3Nb虴?-:Uhۧv=é?ԁE7&N,e/t69$fjIbb}0=7*X0"{A.l0۔_kc⾬,0l 6S邕$x9Ǿ∃/"r 8GrF|(9nqkHʒb^K>;йGv xRl#|RҦ:=#3pGnE?$Pcq"D򭳑펩+>|!2BZnRѹHw,d! [yp~yM{&x> &}Ö ] }hmiޛin-u*%$"|CS&@[R4B̟ N%` { v2q8/H'A%0)pAٿ^ZӽmSnOքJQ{`ۘ#@Pp?bQe# e3XP0-hHZhp*ѝJMlb6g}1Ug ވ2_٠Z3vT(`!&ȳij-гdNhP@U71 ?A դT6 &$DW2k^5Z`C"3z+%1R%-Noi]ϱDr[gjcT}!Gs;8 gZDʜs=L} a-9>3P{x|DWN aE6=tQх*08.+r4Y`Ar@j)e3$[AQ΁TN^.#$a* 52KB&LnMWjF2(]Ƈ>UIm_+5BvW' hm# b%RPί<7}'Gn>L w PɃ-h \|M ?ӹ'q6 ٕZ?BL6a^uA-$vQiv$(od`c7yuxٺMggR1JҌ;gaɾ#>4CgtEĪ_GxHPŬM]h=@zYOKCRS9 *J>;E0h3WmYfopY-̤v KBd=d(3vVO.&XO˒(vo^>6r ZܕE*krj31Z(zև\Bz:O.Ge~v9 m:&BU=fo#yK !\$?J4Z ݽ]9e=O#댬xY캋 &b>b~Baϡ/z4vEa=X٦ N6Kݡž"VRtWJْv!@=kn)A6KĽ F+^s2D-V;7 Ζr40]Ϥ D$Gjt@uUYUE9~חAү #rzq<:z~b0 J*}ª}$_?JOk ;CDP ]DFFX4P0 c&IiDoAֻ^mDFf0$Y|pn=]$ xLa8p,w} V$cp+|QseV[ y,_xZ6cVWJt['m]G]Nmt.\%߫>/WFM~,`J?ڼ^J놓NgÖ̈|2I0_XTjs4cZױ]zB#N{WRUĈ>6'ۀ}*&72u7߹''(2^ oH._bGYv0.Ee 2%.i8sxzCڒB2z;qRN#A7{xiD'fXM=ސLoKVwfKhSq6Ʒ7_$;Gs>NuEʄ9ιӴE\EyX@A &DzO!]{L Ϡ"C,|Ճ,e sbeCnwk;:<*!UWEϴRZU9Rc< HW>5f_Yf} $"-4pf`MUlƗ^c^8Y>9Ȥ-t |\$+ct@U%mv[FV-Pb.ʯ+MH<7^]˦- 0C!{vyc.(BdA~zrq2GT^be@ĬZMiSVq^|Xvb~U^A(ԥA,#G9'j_ƫ)*vōY͔ V5VrZ< VU(ҀM]])0_PO6=,1Nv {V?E_}A<9\lnMLY<LͣIFǦ^&N咬LZ6k0k5 a&!骍_I?J}Tj& /DdVۿR]OM! CDQ3*ġ-> xmb0Uo0|Po:`xDM;gCl1ViIk0ҡIwgeBQN?Ҷ;vȂ,+}] W}1~3Ѽz/d.|w&%j^WlmE0t,C3/4ϦpaĠM"Hn$U2KB 2>ػ:{z %yy0$>%)V$!BS{8)d%0KPtu,6,QYLoZxK{hL_1=A i Vg\.]utKMAY˝Z4喬L8" 5a%"i\ 1-,usv nss$(g=q%m }Kӡ񄹅 QH'@=|[|L>.@~g3P[GdZ1_8~0x(9>Q< 3Vο_jDXBUq@RY d*v:N=$reL4*II)>C.(l˓){nto~uDB 16amik3iQdm $J@?9Z}ۅdžol&͸c,!}죑(;\RQ yP஝͹eEɅtB~˼PMԤ=RрV"hB)F;zT"|1cyiwaB)y[ c= z%5}5Go[I ;A,>KؽzԉGl@FlvN7YhxhKzb1;a IuWD 퓬C-]84@\Co'eǸ+l̙olQL#*=ȈzHxz xmH7} q7'GY),YA7X[<-;BeSz uY *y\,Fq]7Idp9'U1 Eny#7ußC2?=o5\%z%҃dBV :q,i/`(:7d HjUiGB'0-g`힔xo9?Ѫc'Y8Ppx0 {8I9?4ɱ}BٶR]uΑF?b( 4#F@3|G6 nHVU-l35Y) B_4dxX!{\'k<7RΡ`>txJ$7nHffbT,Ch\ 5VKȄ7n'}auWG 8'Rm$c=.h yS7VjzO9_Oef\-۝c [ۄi>?tbB#G$ng];GtL"e\1#JG ba~C$|՞,!H.s`Lp,^~#1z%edݯ{dc{DՅ+h/ L$ hkTy''$f5Oq8OXM9):e uc*-fPb+)Z ;pbü 4|T&L(k (7vpO4P[{ƒʁCyG;4(k)۶|ئf@OS2ƙVx*J Ks\iNk/ s49*q1-VU giy5]xB7%j*#DO]c\VK8Fd%I IJ &aUվXݔcP7d Bʧ bk9ek:ނŀ$mHu!Uܷ@+o(G3q%j"~zg;ZB%4Um{m$ܴb4:K75 >bpQ,ȹ6E %ޯn`2`>Hߐ6gd5iRPQ-u47)yaήH*`[o02hZz_-o=7i+gE!o֭lʰϷo;)$mZ94}<2WBVJRSո(xxKZ:N$uG!'sx7LpXp947˻iguKAzq:ݰ&*+M)X6Mt?Iؔ9'=G]t-W .jIS>%`ґP["*S& .N K%NY+(u:, wG1*-HR+'b&wg05~v*Lq_Iw4WGD9U`g w,KJ߄Ryo#~N$˃ &1ESP +P+<Wj0_K̶,eTMn8BH]J1AHodoAΗ[_kRiڲk3{~B3Vd Z!B9_4wߡH.|꼃|#Ig='0@ԮHc}:H[a \+;BKq l;?H~dfu1>x|Tiz b[8Rx|$toOr<^䮿/L(z12"m)-F9FMn}6vRqz< 7Wy]a u1g`)UG@A`<ޞ[$iz[qvRGc$W+^ꚦ$X)%k,۷*SCo- o. { oO'V9M_K 73s_SsQN/ڞ,IzwΝoƞ(~@m4f|En8#Z>WāS*R L33UlN^Ȃit+d˵[M.ͺh7 rIZ~'?>]7^s,OusNa cpԭ~VM!!`fR@X2"ȆG?E@'\&Kq6ȍHsT63Y)bxUY밧n@wUi1$1@of0TH 5H6r8lK1gl)6t8#?t'fIBaɋn}G䜈0>'u-<<}1`L( sGC&`1I%l|i tFD%7 6854tD].AṼ>+Ɍ~|KG J$'ވp$fJlR=B/|;h&}A[|Ύ+}C=nb1+~lcz !N߿"[4-uA#дڔɕY?aAQȷzKZqpcM6wAN o6hM8\ 9fP)5[ɥ{fX$HAꠥdלMecF{yȫ|/=;|-{8U +cd!mYY"AiMr )}eRXE}!4q6 O"/lX >PiT@ߒ~nQVۤǍJ, VV <5d@! @<&'92 %,)$؂FZԘZU<`Ǎ6-TSU~X'Kl̗5f^a+֥͞Po)Ì7vMYc/唝 ❁vAvV椧Z ( bgNզaFl`C,*XhX|ҿnʷe줎KcZ5{&U3_ىR,,r3H"t݆9|> ,09>`%rt׫fYA)l jo-(Ps#rj)3i*C%#a\t.NMiDžP''cu!R@CV]w+t:qr{IlG@tmh̬Zr%Rs/ڋ &Cc,:DMpBNapL7npy! ,( jx`|X㘰n@#E$ZGG_LvCoK}|,QxI_Oä!|Jb4(Ԛ"&)ࠌP+Hѭ$|pY 9^ng?P7[w_nKIh.?dGZFBxٞ 5!o#ׄ 8Bs!Wxlঃїz(lra얤ƾJe;]w(@BB֞ áNW-PJuO0Շ62N /:7٤|%JD惂&6::A)Gb|ހ9\~V̈0m Y֒BoOaQL[p^xAvM}M]#))bWC- n1U/g@"`yp3S\_@TeeN.(7G[%= uT;]W\2< ECEF+3=m!q5 9}&A4&[n&؋8r MTQ \-m2vsR 2.]+ P|hnu|PCJ"Xg'84YU5ļw&J6gՕ^R?].PE)+ lHOeEߞR2t}Y8z@CZp+!eI ;YgKdnEl[LV4ɗ_p f&XoRqÌU/آ8*TYƎrb' .7|fQQ4]fِ D_gIO1h -'u&>Kh_$}¯YoMrAXv!M獉RgOW[v@ͷRɦXՋ݌pR/ 6-rg$6'{k{z}QO䯏Rڰ;F%Z֬)3RGEY~uhlf9d+E!~J_Bk.yTB!p|e.\ȅK+,}od' fcOUZe Q!*a E"L8Tj6a_O|QOƍvSFӡΏ+.#IQr d*ٺL_EjY*JMdlZD, ~BrqY*04q[ o˔)v;0)?;蜹 + |NWϴѮ cwSrp ֒y׽.|E,V[Q-S_RH%e_d*(_,1 *ewWbu*!TIq9oRf#o^Q.SjQ~޺Li`9FXgp>V9S*ρ7"S!T-CwRkhh3eUɈHDݠCN=yIS~wQsWY'1-Y;zĘ[{446д?B,j{l&6s Vj~ b p&:I*i44a,Eh{xm3,T<" EGS)Xm=)U~[K>^T^^<` 8rt*Vxϗt4= }U.KDk8򛊢'l;_ѵc2Вx"W"INH!8ӓtCtv8;.hD`Peb1&,x *eVČT7]qafM:.{Az`į:yNgHS .%lA-GXW:E,&I_Li;54M-@5JxZ5cޞՀ:E){J|dWK*-{~!K+ɦ#_ U{zW` aAi=kMSP&Y98s*noS wl{wO9Y;G\Vt gSu2 tL.,y\̆P;izb/!'jȲBBk7lpEѺIT :|,PYTYPWɍ\${⼔ _2_w5bNDp,6$4~'z)K}KQX/⑆0˜ybK_bVizFRabAU@04pȀ%sIg ġQY S h, ,RJ÷fܙpܔx>%5X+.{ 1[5j[f5Y]t5jcժ'_Vh]OH~ 9 iV%c]SKud<9e:x謞w57@~%vC&vtvJd@~k^j8isѕva,vq dEU# # VSKEOMT' Lg%'A#R0(H!#ӓRSc.x/=q#)พ/ km{{0n4 1"::by 71)I) h0Xn"eu^;[=ZT'C/"-e5qT9ߒˬR :1@UcIA! i6*aؤ#} `d$+v*D;;py{ #G]XQDY0Bs(MѢ&1M~Za AZ&ʍ1[H?k$i#*67n{.$5WΤ8bXf]XKbQxtrpfG -h_;+gP3c'&,~7 ^tC`W K[(f NMgrb.U1 `,k1S;)K枪 4wϡ[ gqq_39E-!KȝT@Z$YwB=D71D4d?*@AXY "с֟kGV?܆,f;q)[*FS'eHh68* >)U̧s0FS.~tyWlầvA3?E:(q0^T&͏71hTh"EyhᬿS.'uŒzBHbUe<o:.,  mR$UЬU{"7; I) SkTerzLKъx`î)hm󚐍YP&NT=/|l{l[Uݒ(b0vdzS%OB:L,,ѸcKa9DXB;$BS/+& wwv(}C)9'YDx{h>lcbr2<:hp󓬣r{?+.:O8}٦V$ 4G}<[1h A\ .V-!PUA0-P39qJq30 = \ٍߣKFȒ9k߀\WraRi81 1c3_QV $?8Zt>%k7E8=:Prc; 8?&1ŀAS Ȋ2m2[WnP)}MnJ"T fxįڢ1HlVUiiYh%9t%[%X3 wK(.!Ek6?yԴF28Z2{b*n+^G?F$[1dme}+Q$8%aZ`PIMĘu|&rfr&V H]h6s;±)oZ5akEq5]kr5id *.D ct#/6(fA` oȰ cq+9= 2It1Ĺ݉aEZEi"XDJb N ]63LyD3 V6\yY)pd9*KnY{%3DpaA^%>L8ac9RTXZR:,ս*l60vO:F}5d"xc֎yj4 2ynY~>07ɩ(cL0~[7 >(꧞i sAD`}&k(,9QډLn RRV[LL!#r4-K6P2{=;ь?re 4G]^:ZAN|C2'ђ+Ӿ%# ޚ{޻+Dqu vaQ6wj":̊_yXI߃30vZN@~aH?$Xʚ^NJixCYl?9u,kRd Un\E(T){xiig&mCo;n_%)<ҋe˗.v$'6fA}2%/ WWA"i"we+3usJ;= (/ar4v'o'چc˝2avndnVb^[֓:k|sSJ-n>>i.(/MLkH ⏾,\S@&fHU(^pAww3Gs{4Cڰcfxqn;Z9n?(M4FQGX\o;-i2d)CP"'qhG/F)O^q_H=RPR֏lF2vw΃B\d؆9,vL7b}Վom!2I5B].>)vdVDðj ]_F 3{IS/RfdCq<>- JT^GgV p9e}Y4#^6#v&V'p|l;e%C-ؠM e<~«U ?}<]9N館XZ^DzgC2*czVY[c߰L<ư<QZIS&56#P -TIxPB%  YF ;Q8)кo bm ϢQ`UNvr2DHYdhXhԩC#Ú?2.ϿNlos6xYrD=%Lk"R"\`. q!3Ni; Cdt9bȘ%duuF.$epqݯ|$E\\TEAɭ%Kk3t^R=Fʛd[2Nn;3Jl Q C )\$"Y~N"HKY+5GqTfj坖_WR=Wmw2[2MU@,g(kʆ;/,nEz-Q7W#/RiCq'L4?me93x_O!X\ZĮ^4@w6m[ H>ͫ/ԊAf7CH9)*Օ41B#S,U'\eЅguDﴑ7\V%ײ-'N'E)Fqʫs C$БT8>urmۉ~ez¡1t {7# qjvM-ZA;zB1YYЖEqi:͞jCT釻Wl/J( `u4WTf,8 ˍumՊ9[ &?-܍ i4Kp?D"$@iAciFr7vQ?"; &;!bJ˪47l`ADᢣ"a!h}6 , CW]P?i8=9%׭h6䚤ew 1.`$΃ƒ~C,o,g 3 Rg"XmQڋ[YZ⩂98&bvp4Pؠo06-5Ѵas!)i';Ab CǺ'"8K'`s͋{s0ʗfĜ1Ě裨ߞf,XV7q?ݱ%Ǒ1.P=4~7APlx&~rKA ?A`ؿciZq";'g]EȤ*+)fl#Y) ?şd"Pַdox%ͽ̸nX]4ȣ"isȋ@q/jJ=M\Ŝ2lt؁-4(?RlQ jc UVj#ha<5b27h#ɍt컆2ޤ8A*"{`;`tRbgN M9dODd˔hpGwdPƁ;w/ mNa zn#l(vMex[|^j]?pYǗ~sbPP9HڴǸR3lG쌲{[)SZ(sDEe f-!BM%7У)>*L?h":T;yX5>ΆQ1 . Yq[0`)^HBGǼ][0uׄ|I2",fUH&<{mimr жie+deIcMd9kޢ8CrnB}ȲYPZdT<8x%8W(I9$aX@2] ?erl7 rqxcQrY8s%H:\$TG!]TN,Җe1GA P8OhMAqNb{.Eht73VSV=WVЭ aQtZ\zOON=@NM=plh~vAr!ck\!84Lx8Cpu\cv^[lQf/L*fSS3-L`4eggrvfT [$2Y7@ءL-aHV7blorww\,E6E+bIJ>yp&cTvVxwg%eKs9 {#0slvex9&cƑj : qȃ.J^<rR[}>xQN"zuЊ&ƎغBF;/)gd.g\1< yߺu$wPg!CuN5CY^-t8V젟 oϭj|zۼs?W_ 2.k2v6ٽ:o O_-)9N#xbWexpgy;؃98/[f?jq*5BQ ('Cx6% A˱(Q=9s<86moA$q1 UWKZF?D:*s6^W8}6Ԓ$`?ǜBt:2IIP3+ft%tE@N@ ^*0n<ۊÝ& G1aGJ qOʉ=( +ӚC4pՎ[[,H.B:Hŷ"y\C?Œq&%@k8Xd@"[L`:˻v?6B#^~ QQ]=e$tV.5kRq0q?Pg*|r@`7Ȏ } B^-qPA>pYP+#6'\tc"$!-FEW%TH%h2V]' +ryv qUnA:ֳ+NVHaFn"'YO}m!Q񐒎hGeԤE*ZmHlUn(O1CWg`yac/='[q+JZli]NնoЁUNH$]UF" ݎ߱lh=;M浂 D=OQ*\QB)rt!œ5BF&=D3-dϜ YGN! +brswȖLt0Q?;F;AhZj3Q~D$rj՘STQZFZف LQo12,@V$V8dOTQ+Q>hO_NՑBl/tIO 4Y?R4t޹hJwuKz@Wr<&4| FȢ?Z\axذ!5˾*gK&ixs1K.V] {>P>5mv9Cz.4J,t{Fbɸ>` މ_'[n^Xe3I:?0x Ý_)cykhSUapj@nHm>5x#MW:BFiRve4x ?:$= aٕƛB*D d fv0R tf_N\l ECm|nacam?lb-ͦXgƨoN=~8_ekWI^Qi vQGNSK GҽN =&_V@y R?{8@1V<;lKl2ɷ簐\jZˆ_F]6הv3A@̹ua RDP>pxA{WFKZnc?Lx qĽx.@at0(W2mZ"X ` 9֚(O]: Ұ_AOOk@~iX&ણT"Y*|ۋ(4O`_1ᶚEV;7CǂARI:{_:)";Oa+_<| R\{r1FIV1(UK~2Kl/sނBhǏ_xC~~1B,_i>xB1Bȉ' ѳv YWGvf좄ߓ!!](V %܏:,Ah^4-MDlA4xR$]'hh3`Yb~OB*Tގʹmm[ 2GLl2Ԇq sO[2jrJX3RS"g_A!_xpE5|bF=2EowQDB~D~J5,,O܊ 5yhX'ab*Rn*]}n4- gfs򨾷\zLY|uɐ,_XM1m;S>tp ^[[u 0L9u]{)aV%{,~ =+D);y&+#fbY@\yՀ ?-%Mqݒv&hl$('J={ fjg"`q/?S#oҡIeDN*ݧ":$Q>_:\_eQxź=I`->S-m6_L@.<+S V5,Pd˱&wy_jPTDGZ|NY׳| 4P׽L8a{!p^~>ZӾ>Xw=^Qח?7̛3˞ʼ~̳si|Tw67*jfox~B׈ms݊kç2 T7q"7v /d( }80uݤc;LZzG|2R/c du{IX(Y̿u= p;^YRӬCoJs4AmiNmVоPkutjC|GMEl]2+\{ X\ZS7)3p@ְW7G" j$?9 ֥ ؖ%݁ދ52toRN(ρ\ ]ʇqhs骤`J{kŐI4[.&P34]MpnL:QFyݽ٥k`Mj#(½(D Fiq^A`{ONWk}@úJ{D DK3 -q-ث ̴h9ĕuKv] .g5)2Ǻ8S vFmۖIm#)z1-9fx^b%1Y\ Z%5)I}l&QsUw`蹢]tt_ٺ4O:OVhƸq{ >@I^m7DI%K,_zQG9}~LCx( Ano*ә8Bjktq"ýj;3 &Qb[IOOӶʒq{-g0td@-њk4BB׊Q8O^*L 2+{n#NzF =3.@X ;F!Qj6# Z?ywlh/bD {/ IUvT0\kh Ϊ!,Y,r-P""UP1眛`j{-d W:Tl|YYch++p}|a;m:uӉwyg]?@Ѽ0b|6 'N5*F1cdr_IWޣj$y`@L䟼ѓ'^"&vaW+@x EpCØm>nj݌]8^6_5t>,4.*ws掏WIjMeIY(w@ e& 5V/W|M+ ݯEH,'ܿS&N1Ps \xOgfh{z ;c Z}JMVTUڇ3> EPs]5G&.Snh#32nُ\7b<, ~ί@[~($ ,i3W%u6M51)֡nSԳl /YhPstIc-3d6`jds|keֿ0 [ ;^ͥA-b=7Hxud SӮ1gqH=De̿;eY¡,e:Sy2nM2pZq`9XG; 4#}ی cDz#%1)@EY,fas "]uuÙ}Ʌ^PimҘڱ3.]kHFqGx+m/_Ẽ1rp/Ld9}W>P cŗF๏N!!Z@muV9HS.Mꃳ,m)E22YK<"DAz H I)^ Z{0EJ?&x1rz}9 ^'46`TϯkD@Jjb)Ɨl.xq J aU(kT 2=hA$L%Cϻ K9V_NInhUT4QV'-# p5hPkyU0?qTUIϠqg[e i , (tgE+tS5> NOBh|E%9kε`r9]igK.&$\P׷4y#/IDd= cKX!?/{=$^0¦V"9x%ܱPfbl!LAnYm68aTScT]:ao+ H.uKl#~2O8DTi2S1(Qd];Jx ¿+`> $7Kтn`_|ی␲]N7 QI" l1Q<5y%‡A'3.35>-"TJ^#:[K:]e!7Vcexҵ@ng TX,%#u⯔z~W.*Iޮi};rs\u m;ch(x/Xͺet$̒ *E{$i났*˙{JɝGSU?nY>V8[9GN_4<˯s#XfV#ؐ)h`C\k>26S  i`"d\kwU]Km~OboXoUr4) YZ{@t7bTmWΰ)kԩK\\Kyξr K]9k9tvmE.2[2n Dn8li^ Eb +мcG,$܂xj4DÊnEXB'ޚ9b\m5qv Vf3ϯ9 aa!v WNW iijWy*. RSR0MM 7' /9MNpj DHZYîeRZp:.-֦`Y֍q@co-w٦Et-Z{P\Y-3w4*'s0D:C4`uJuk CH@@ZE1R-Pu8 ȃ%E!HDAs;bSv.P{Ft\spi3f5>dezM[Y\hN|yu|" ;$W9uOFМ3W,ma=$RjLāxNJ%9:}o,5Fm+% -t@k p__vrN) D&Rn9m&^I8\3b:nu" hHNFl$z趍a[OPA|bƸTӄUmF%c4byf@L$V[`%c۸V$1[StTܳKËr 61%r!WRnA)tsaJK j+ a6ܸ.T87VfI1f*ۥT0kuQ!%bАhyCW1#.H#`^^,kY C2h*gM\WGbD ?h+\?6>'D^1`Ԇ^D,0kcRViQ]%%eaɁ38RE_VAZÁ[Y *"e:U`fOЫ_f` gQ1<|QDZ=Olӎ&N1 v݅f.]6bl~Rp>#j J[O^ 3ĀRЀ&͝>{o_Ezl?Vbz]UжM!1b2P;k6 5U1{ Ms~o"pA[2=W Cʡ]0W*GBiNBxx&8%E* "9*0飺-D!08"G@xNy 8Ѩ$=fHaa(L`k:T G1&)!_ r'O4`3^ {uY"u2 E/e B`3TWgOq@kf/b~@ǒ+d)-A-dt TO(ht㩭;yvA lv[0絬!l6nqz6[H̃'9%|X;C%wd,1Ao+ ;嚀*h#lʁFǑ>PMX;FRU7>ָq!o5ĮDٔ5%~\Æ7@Rnѵc# 蘦_"N̡΅}0XI|C=ЭBL뻡}8g=&be:^N KAvfRkZ,aGBa/ىjum2($_}"^酓HuI1E#@dZUP)V佰vLSӭ:duƒZKCS 'arRㅮƊ"@uk =gYd1HaLb"^䛮"%cn϶K*R'HaԄyL:vvF`zH{vw\Xaor(T 7&Yb,-0}p ;ݧ6'x)fz uNP[L%$s)AW2qUJp\[^&e7V*8+X˚A̻+yaAεF6RL[;8|"` 3JAa/I0mޑ(@t\;#uUˈbآx5VKV64u`6En=㰧\~cEjE^s|Mr#`6[CKjjզrrEJnyfȵ #elEK/MQl@v,ؾ[}ݜX۰IX EݭXPA^+ĵuG 'zNZK[:ثً(|FxiC-=á`nG"6>gWi5s=KePy%$C\jP~{"?!k~\G~ =\@>$cĀᠹtF%~$:9:|`øh#$Oc>tR90LI ʿ_uʨj{L O?B!&y鵡h<X\۸w>v\`Zt=!Ca]#A~l* L7Q\+3}mig7 Bx-Oy rio@zƴ_|c-k HS6ZctJWؽ` ʉuA W)j_PF8#Q8ȕyŶ4:aXRtۙ&Fr-!<\]kPM) FTH~8}X ۸RZ$>k4WyZci.r0(e\-yAi}zX0,".Cs쉚+hjnЪ'}BvFw: Ԓ^fTgy$ԙf>'4Owu wd- 6u+Ic܂&jةwBٛ1PJ`Ekm+de@Y ˝R :"  /jmZu0 w˷O<[/-g 9щ!'6qF81%\ʒz'8cf)ܭ6-R Ƚ(9VEFu[ ҖZzB.$gXg*j,5f "ݔb=qɓ#|E )V3 /=v9^(9{[U}Fu?#4*%cɔ)x-e ^Q<*@l2rp7nG\G;ǭɂ$ Yb۰O.ad1 pC|.;uk) ]\:J瞓fnYX3j E섌ЋsUWqX\. !ң/foZHdw4- ^~EH+T3-ߖwf{ 5k7Xh $& rXLw] 2Q''I5(/F6`Z[YUen1BCʌayd.\hBvP݉0PfVyPK! bD&tgv[އڅ*>UA){ʇ N$i.?;xK~{l/l(Q@=y2c鲞ь@rH5[x%lF 8~JJK6Qr 3%5{cjyv<ԵX"S/f`,ЀX6/{\RsA`q01/.w*TXYt44]@)^)q+3pyDMkejY:mTpA̋yJEhw|?f efNr{︴06́xPBG 2T6?tCp~,I*7(T^j:o79w an~/G!ꗶ0qKhڣT X!P0PE8QWi&2ܮ2uM%(ͻA4}RB#\ЯǢ?ޠjj9hFXwO#9'EU"Ѣ4d`Zu[#N,f;?f@B, B9X=ZQ+6ޯ+*WY- %:y{G:()A6$*~dЩƁ{nc|ޭU%eWS*ܟn^cf%p~9J=my!]}Í]X9/]nw=:E8гEXӱARJqMЍ$ @ pW\$U2Ƭ I8LP*  PH3鷂CV;B"&1A9# Λcl c jSctA%BϨIG"\ݐ|C j4Nv׀e tI]Ai£f&I"J䏐O?Kk=//L.KEkVN;!/lC2"AD6s?'[>W>5Cp"$(۟#-f6^`pB.S䆤b+ӑ'T:z=کيɢ-A }^z*4}|Nhq;jwG5ձcx ܛ HM 107oӇ}&[ d|f}] Lr 56لҨS\11}i7G線 @wKƷm\HWsgJ"u#!C8л㬕/M( ҭ%\fB}LzJJP PoouBM_ggN6MBMە i+DC"&_"I4܄g%Q60. *NJY2lUOd|b*n jgp#`S襯קV4GޟrZ(&LA:P6yeVo#+p7zG,[bؔެaBޒKl\p;L C9Ŕ17iO А&?5 /ot?L alH{gwxֶtD1bcV1R\fHA[].߈(b`0dO-zɸ=i_CcS̍:!F^,W7)E g-łZXM.3!EQ y/pbBVʉix wPa0gs#B< 86z5Xz=j>S1v6U9M+$Q–vh{Uf-t# QR` ¬V6rrcM35)Nv(`ȳJ„3@ϋesb/7JV\)ʏKGKKلPC8QVo n mm|egJ cl./t_^tīp[U*'de<>I#>%MjtwK̽WZu (8)g]B1fq/݈.^^s#Ķ0-#&\KKr֨ǒl){Ҿm}RsTt -<<܃oT?q" 5މXx{q{u,t7VsAl&^u<E4oh<Ջ.!Tlqa24sC.sA>ԶV#/n)*P濥Vx3sc 4 Tx*`,W,hb%_v3y7].&DZWSQ8`zAU쮻S}_'OdW E>A6}6gLgm0Wjv_/MZqx's'%~<jZ&<$d ܟmrj 5bN %ꞜU`"i1m?Z;KVfWFNwF}go!b+H|w7Gòc*n ZeV*R"M*81S~]&'=X4hPēϥOM\MCI'&k7M%Fc)~b9b4jǛ * n%GZe؏E߶,+68ӂWwU^"&A۟snYGrXg9kYRi/E~\wDNL3܄RDKJA^(k̕_[˙/|y9dž3DFlMm q׼FY`#'l~|\ qLY@~p D-PL*51<#SUfNJ'rpXtCZͶS6l$@0vDڏۆݐQNQy]|CG~QN`V:`cUOXB!n-+)R4cvWXi:, g,H`r?%Ahij/?c+7l㷥`^tbE{6 ^Ut R {Q!Zv9h/.SxXΊ腐j!1j@b_1뉀o&}U82nz5&A 0i+q6;}@`KeHG7!Ask=Z1:u؁D4xBc`7=BF*|yjҽhBq<"e\b"QW4alC8uh\C}<Bw#nt u3la󪈽"Rxs!L˯i& E/0Un&)A +Ae] /(0,E#4 "S}ZeGQc[K/ Tl~(N.YX $u 2Gs!V7zDuvCujތ(-LQbZ +gb3navU݅LB-W" .Ks6۬PUdHwؼ껅C@ J:s&XeEW!D&ɔ: (W}LiaS15; 0v9ZZw$rdX/܁>I_ Z!2䃷_栗,!\JT|>[uMmERHA%ynӝKHƤ[$1 -X}yU p%s ۓ4oU} ؞ []jy.b-Mumxfh45 |³]HzaR_,YmS\t53H"ݐQ)hUb{" Tjxx_ru"]PMOd/QX?V'3ƃC0cy5\\p&99YjMX|Q_L-^>l4UpUR }cѺgŅJX ]MZxvmCW3ɵ[hIP[W(Q9 5P3/#䉅,Æ҆DIJ+lMay2b)!GC_dKu7ZL{yG4< Z8&b_d QR\~kf]D`Kc ŽȭeK1)J]ryv e){cƓ; wM>-M Mhq O챠VwJ5Qg)NyXLM-y-|'86-~ -!/[n =@{Ռ}t4;(Pӽt`yb'InWi4Wwoe+bؼ6qR@~O%UJ7˩vTHsn+l?vlzѼ;F")h\\rWb־!O%wvvTt6t+H4Ba?@|X,Bh7fbGܕ'wp1unCYGP̦ 2u"~gkY{GLnNAv'|q>ͭ4S;zpOw R~UwZDI7y@U xc;8=Mؤ۪~ȴ֞D+ m࿒;2щoCU)3hSy%^ VF1=D41>x#aE2i*+<٫ ȑfƴ*~3`˟QJC@H'f$k|t>Xj@$=+e:<<䷞Kgo+ rknv ?/z$ _:WZ̘gcCCM#r4п.)fU̞fy5G mm"w]#}h%JC/Wp:2aJ6˽`H.{t˾CI~3<fG%ah.!‘1Ha^_YA8S?t.H"XMyIS7' ~rz!*)WEcC%Mc'߈N]g6MGW2=_> >p!/zAK؋⣦~y$"~zv zuk04#q3]txBG/&uч)#O> y֬Nx3$! ͈pa1ˢ߲9AAzLRՌ} JY.ƨ:xa_-~5RN#tg_9* nhϿkۊ^ Ȇ {Q]QqRTgU, Kv,LqaF (SLem+`p;Ps5!$.7mvHz_D] oqRt1ڗ4ڎv>PYɂK _ N9ss<#Q#l ]hD27cY|\02d*F>>?zՑ}I'lqbX^Z-OY эyfl%I =Rۇpq6׏HL7_c{\Kwa& @OGp$\J,mcw_%懜={a 0;0Viԡh+츀+BOJAI6¥`s@M`吲Fxb6vɊ!)c?g!BS q|_("_*X\ ?*Zbs.@OOٞ=^K%j~H'( Q:</uihf*IBdזa+:a6Ȱ5Jύ Y(ӅjXKr#lJ .dvTuAH{ E6̟ͫk B^_3?sfE Hș/'҉ zt1G6 2`>чM$)'`Ͳ:[)n]t8b/0 QEK׌Aq3Z2}7W>,FP#)(eGwl^slb[QpH`n[c͟%&0 !ij9vxe-[LL._>um.xs[5yGN7/ԸZP`e_U`3iͿR$>8?5d4|j|!693q, =XP^QEqL[rsUEQ>cv TutQlZ:F! Q8VެJYc)5&$pQsjgj>7Ͷ+P+nڴZ̃Sݝ)iC,#|lLҳ}\-{$`p体Nb R[͗԰7d\?'GhSK-E_zCkb))3 򈝃0MJR<{O\] h{kN 6q9;LvLWܧ[ROn@021Z[Ֆ+^@B>k$Ko3eJqO} 8k<&Kp9BBx<ʸyĮW*~s w:݂0(u Lrfnðg\5`C qvZ9{O'3^Yգ T([ _yJWOkg֕MPxG:}5ɜ8M0g#ŌR=>S!៝TmvLL,V#gs|Dt}s4=wRqbHbQ6CuMȎ Oٻv^+I7*J2?f"5aan;F^j>evpC^)h+?L-e2ʥkx_SXs +̝tގ>!hQ:wtt:#eGG"f#wLM^؁nZy*2Edu8# eyo]iQ<ݛj"S\3BPJݵlS.IKF?k" IoF r[^zL<ŎOϕ.!J7*X_VT)6%? 7øis~yr *AuF:"l0O9I~%Bt2Nh'h#3V sTь (<$̷ŗTˮmWj ( GD]2xLJI~fJ.ksN@G{<.-Մq\A5~ ן}#E"VUUUR"a,!KPڍ=>1U)SCROn2/`ⷥ,fj4n#=ra(::Ojd#M/&I}\3LHlHN] 7w紖{vO"f{ehuwppѸ`PO}cuz}<G 2ɼA_jZ`\ص,d G Xci|eZy D9,5_VDm^CjAQCJ D\1@xC] 9`>-DU !K'Bg'j8/ ~yB&W̃;]3y11I,/R5 oi{$;C &]>= !Ƕ>~A_cf&խ1 Iy9lU%#5AuUswJΨ0\}^(e)B\`#n8::?UgLBR!Xf)r9xnܓt`90A5˃`$9"\c׀ * Jj1{ SG7^yo_H{z2 %69oer$Z#fhd  pQ=7E e2ocwkY/AГepC;"Ze#*/{^yM|N~uv@Lı$p3iI6ўWS .` y(Tbl.@ OFfq>y>/v;OHX0mM_4J=u8`(YqAd(^I뽟AK^abU!ߦW1s>Hs.&鐬vs_``;=T-6 1:B&4C},̐tlj -{rSJrm :l?&/r b0[9t3' 6 zf.U;x$QA3Q,66Ab|zR$Ԏavt01,OGHe:Wq*ER)7FI9H,ہ^WNu9teRe,.~D 2x}Yif<^/J{H+/JL[{.[)LNG"ݵ/g%a?RsRwC&;S=Fhm=*D.nGqzLYOJv)s;/Da=/FA ~ N\$[1F-V}gQRFGnLD)?7 .T%o AI8]N}Rۮ┛qAJR08# Ҏ@<)QB؄ M[2c-jB,򬮊e骨 9XR3R h}StlE0>IOwZjR3"f9}^q6PtIhj9氱VWSc!:[RHi1ҟR, 1(k;w%sr )wjX|2px$;XG5mdHԃʨ3?\ '.n T`JMJ O5wKb?V+mo}7~pq߹YŌrj`.sMT{qeI·R.$EnѩR)c#XBi.G0<o|6TקYd R"Q kغZiz 4xg7w<q6L~2U.3);R-?Grs4EIky@Ib07`γY+OoU]xr9axC2Pkv>Ja!c4+W'YmZ}x;#Eo X^"[n I}kdk"KVEL̈% /dfB8%r9I 8,siKW$}tp0|FQgbXvCu=@ (}UM&#vsf]'C`}M uv3mGH,1e)pm IAYo%]Æ/-~lN H_8IJq_ R&&YY'׫?|"E;tޟ?Prqm$w`ZtP;e!;*w 5/9 l߾6ZV:{:if'nO'Ņ3 !ǎ `֊kȏBmDUxh{g80%ST;!nF]Ibzw} 0@{O!⽺[@]z4,'7ꡕerr06O' ExaV М;Ig b;-RphD_>S@e@4! K, 8GtO*< ~i`j:3wJS z)Oe58ǏEfU:JZt>97}}FGꁮvpc1!j~]!դC!"fMp\z I!s$W2e}LʹP:6'Z˺;ͺ\QX_oo͡HwkхR|0yT6vW?DX$jHFoKL=`~WE+wA϶ƞ[&J nTi'|Lɷ+1ux7$6ƣdDXH/# 2)ɚX;j,|8Kv y;A԰ڔ~I4CsNQ[͟?fd>=Ѫ"ߚ+ }rvJ+o ^4QK鯊ؠ z3>,0*/gsoAoEW1~i3W)BgNX[bsl;'%!(@d{tGZFPˉ \pNxHѢ8"=嚥ϐ {xE:QxA␊ZW4. A1k%P|rEaK+'?O5skSprYn~]9-{cS5iy;94$x.Gk :^`A,KBd{V6]I0yKeh3G!Y3LLi[Aaﴦ Y毎:DЪ{K/vYAd=,n9\@ہ8"iPenw3)uɾPlteMmi雒a(Tj\ dl{Yڄ859Cfs>ORޫDd)S}p.n$O OO1/'D,۫ yolb~rde/)v):5r[VW<+ފ`Ex2kCTBȎSؕrX[Jw>{% u,^>TmvSY)deז1Z7'dF&!Qa ,hU5/$4&LlٌܙR;.j ^ŭQ]jGVD2j]suKݕݢʯt,JrW2VRؠSgwqy}knPNWU`"NG/蹑FSEZ(Q䶽SeB142;x[\՘Hl$V)71.>}e]?j޽HW%aw?lTUU; ZdUBEطgA/TƁ*ܣ"ɽc \?cII`&]tӑƗjL d8;?}5&CF x\^\ePͰm,Fyʊb9e8Í旽hٷFJqfJX4U 8%3lF̴, P'X˫wMWNc/:|nK <:i5oYF+F@{z.Z]= Vܽo;ћ~( KZ³y<업T%d%*}T<:!t8)cM\#LE.4իȥ{vxd2'sźA_bΓr[>,O^,:_j1d{mHtX-W{GO99u,D? zżUZ7BFt/8: VI{,ϟ>sn۬xu ]5fy;͟ 9sَe&]#ٿD ҰBǐڹg~VCЌ6 ׇ;i]rxȦºh=k+738GtZ/ *Аi6>WOz>75TWG(?&ʗ,F Y@>t$CG>џP5Im^ҴDZP+&ŬF9%ه/,\@%$%|[7"4= V@,7;Bn B, &[~҅ԝD'`+>UTkKc0PÂy-QdO2՗!;S$ ,bGQB\ֿExxyA,t _y-?EKRM, LG =x8K.Drguk[Q$vhEs,,:-Ƹ=jC  `> hHΚbD0NobPN,t<6Uså8Av{М(JSm&knr3Q::s_`3E!(hIA2̖p^^M5vg}ʰIy  - DO1=fgՐrUss:>T8tT6R&~V]W *F3Rb4vuė3uGDVPU-@ѩ σmYV>XطnǞ'˨28\ u ݲpgu`[A$b^H> ">C~fuM47=$oަ e"pBe!yGFU &#%|#|ZBܙ*lC&!EHM}}Crq腑[C z38!D|aߏ.ƴF#o~M&Y%Okd~j.=.,GhI>3K{24% uLᱝ>20(+*DCEpSEHKwjHӈBjl #/,`5u0HO9/3nhZsEnWһS>AQ |oAu_G{Df*CK#_G Apks,R0jWNP>i6yc Mo7ZEf^2}a"*K rPGxiyum^դQ Y-I#)s?5o= S~k~aq{+bϓʽJI^j=Q:5G>))Ϋ/O#7Dc7k8*{ |Ԫ+#F@[̖ۢ8Q^?(Vd;q&,'wJbޗZ1Uw&ئpNg[&[DI'HNiu [^_]`[c +]1pi8˛{U-y$Mt&4k#aY`xi-YLAT9Ppi1W>%iĆ ҝboN?)#v EKHhXaT<$${f Q9рWyڛc]C+~>Q]Xtϰrsp[^i߬hShV_W1o {5p^6TGL$hIM0@}a`Xb *S#eo3Cu<2]A%X8غㅥ.nh/0^N F~ir=BaM[!9Ld>I[ ( +uDaכ'&ĦlpBkW3sh qU֕JΪS6>/BOE8 h?`H.pjRN`;HFHdTϗk%=mO+9vư#;o *nE82ko[V}_45ؔKB,`_'P=9(Ez82Tx@4>A+V3:_'s(.&|UD@Q,-wZItq^?Z{IBsgq0;́7Ru#xZ9<|ΛDkc׮svG@lCʗ0.'OVggaW Yě&ĘWHŵ?1Xz5JLD͍Pˎ4&Vy|j$@+ziUBv*'?>N? ! tQ2:$[Uܾ ,9hІE"ªHt_ϱ[GdJQ?ϖٸ>m]"YզdtI`J jb-#|\Sl j{d6B5 T!֎/ִEfL#s=!0%u0REk$8,֡t>ETpˮQnshxo5|lyF}I&kjAXNs ?N_68!8'ܷ" ȶ?]-pECؔX(]Ql۷Q9ӱί4}ͭ r @{ OĴчPZQ]ԙ<5QT$E(qiZ֟%=ì:ĭ]h#@gxg9W1* DA$2:kv[Ddm "*V0g[bԞD#bitv>Z^5{ DYzFD3{Ϣ%6r=u#/5`RZ'޷mF1ⲵ"0j8709 BYGC 'kErf:!IX#OL\>LFs@ގZ3OZvœ)nzM'7^SC9Ze˿;Xr1cV3 9gn!E,>s?d*Eh?P Њ5T#wHQ49e@R "9s07LGүI|?\: HL,,H(_P#(wlt)`6<.-, [0Kv5[5-1+'cL̅ϖI0]Y")}WZM(|RLT>xx1T~C-Sh(x6y̬l1eӦ09aTeמ=}&ұ͈8Eۛ?A3:tQ(DE:{m!S;*P8)^cWBp>|>d9 ?uOڗ|%;)3 KU%)˗_nXiA%tvT5=>4xos$`CWr܍  Պ>ݢTyWJ~=>[ B~$ogj l`|\N_+Z8Jm;s=$Ahz94]HCQu5GtW%'ԛ(S? 1ou3b,|~zi2,b**UPDw6 i-FMo0[jK#0{{?UHTc9awҳ^jZ?G6(;`\I{I`x i'z?Q@:MP! x6V1ˌicu<įy=yzYX `0|n7a$' q3ʫrE],[d7x4JgV[ԣjNOָwީ Pe/\'rNFV~:$2o28?ܣ͍%|L|@d .584W*}ɦיߊ@sQuk,Hyhv|\M{a*YZaydtO/zJlN Ayu6Pӵv^U*41ۤNrV9y=daҮઐm*7MDG5PҮCL RںL̄AGLkɔiUJ ̴u( I- ,׉d%%+{dIYȡ4Tj#LA85'44ʤKa q',tS,s fc]^7:&LV*В0{P<ȃ"0+u甎M$rq-4m: eь)̔m(`Y ZvDnJkd{#! M8^B#Cgц&C}`䷶[*f}X swt`_ \+SeuTW'ӵr=^,[!4ql{$wB57\3aե֡VӰ&- { ^L|o'!@3߲wz )2q<֬dO[o>t:19<5WB ¨?+ I)_^sstWO~t@xGȔ+doXF&fr6/ Vߧj"J~ G@'<@)b3ED F@Z.>ol}!a#w$Ϋ(5ޏF\BSN NuxD5U:D$uŰ.D]0I;\yt^rg:1zM2gt7Y%7@l=l|-w'oE ů>WnXJht4/*__TaT,XoQbɌ9dH.M܉#^1IW":A^UI.GŬ& hPxhS4ih ;ݦ_+yI}שŲjcP6+Bv)|`!FFPjKICgCf(jv籠.*$~z8wU;'h!j2jmC~ kzqub$"KS`Lw} 8E_ V| +Am_ꈊ|!l"r@͟$\6|CK˷oM,Vwcv|l'`Y `s ;)nyTx i{Bv$Ǧf̠t=O3b\et`WG"s}5Y1pzR&Q<,iiQ1g#;B_>[ղxb]I.EcP@9=\or"!u7Q-/aOI_.!QeLq8dЬs<0lHgj*Bh숲b)Ig!C>APujYR^<tg5k(]_2Oaݢ44ZbkU%]`:6P(ӏT,g9FJy%(58k)ԌH;nʒ%w5ZktyV/.S>~S5|^os'q:C\zI]5A2dovguPtƠ u<~+8(-kt`ԭJT*\ʵ̖?˛/ [62`I7d~p;gaW"r@D'xey~\0GJx¸܆l딢Pm ~;g "E_)?FR_oD [32ڊ&f1E ;i#6c} Nnt?Q0sj;U;F|IёD,X ^uY$$b>)MW 7f`RK0!i,(wp}NneA XI5ts3+l:ڹA? tI;O';g*Fȁ 1o> +-hK|_]y'WXaLkN . `0 Sy){oYBS=] a'kGYȈ_úf"P`!H62OhJ682conɭ?ɫ;7;?]'e"R̗K?Yp}*E>svdLvyڔ B`$dv j͍ix>(ޖ ~@Q(KtTxݱL*ǔDlzΕuRU8uCc_6L頷=73 lC1YB*԰h?pJ( 7/2R|&|D#wl5g2Yh$8ݜBtY%$rEpn'#gWn|ÿ(6AcV( #M>u?aYH9L6d́g` |;DQ-0qҾ{SKqWOq͊Hj;XKútr;2^Bt.عQ2: }zV䀙sE="/S۲i4''L ɘ^]x ½;~v͗}E5]Q?޶e M5G: M(-63h'WKh\įAr& b`kI D4IL3Ft ƓCCkvOپ8ؤoFvc%RpLbFoj~Iנ &5;<r [yoMnL_+Ӕ E㇯k.cݷwhF=#X~7f\@JiЈ`iOfyg4OR_ XW?/||8"SKX^rϳ"7cGt;g@B{NڟwN D'6q9iQI畳5BmJTe/ι-uns恥H~,8p߫beU10-3\s8+#Z,ƾ.lz9_!Ԏ/]-r WܥZ }$$mI=K2| yT& UabnUr 3-;8Zu> vYaď3W*3C^̟}^ *qصq_flU!v+/k֐g9O335ךCG!baCMz~n[汰MWĻxדm}4䌌/hMȩx!InIJĜGMsa ;vhUxE.m>'ISAsaBTv\\VF¦ -ZsTaUd9OH8u*,q? @6e}k_^l\J᳧$['D1‘{xg}B4y[*WFUEr[{?|gjj[[?SK|;Gs-FNEyOgA HF]" ScAT"E6j+_)rޭǠRHYJ_sU%[P1FXNB-xyS.Hǖ\cvUA(G3/.`[ߖ4ɼ4 b|ڻy =ν>m '>Dh Ȼ$L_ߗ1aʣ_yc6*{VI YZGE3{$\XlCږ%+te4|=j*7q~7C0Ҕn{K8͟&rX@0\wL<&cDRf'>k0)_p xuQ~fщ Jn/}FYueN총.rT,'^F2VO4V)SlzVygGJD )iӗ/^&|"% \?$|0} Znn(xQl"$YAtY 9;jPYsD<0.'_"BN]󴿪X@ĂH?@`|XN]MN|m 蕬ib=]۟hĮ5[~^'_U[.OQ Twf! !.bmˆ*0Cl͋; NsDPj Ok-5~oe~Kپ^5 % DB 6BqbڞHY ũGc^ 6 Z:1{NaW,M sӳ',JeYJ9~>#1;p pw`Au:V¾̘ŭ SnsJ$m<<_‡v ԑP픻Cסf+`Έ'#3LK<`p)/y*jN>8Ir,˽ɛfSR! |`Y͢a`ټqCg8Eݠp7ͳE%J9<{GN K? Q:NuffN]IE\7zPBU<4rxְ 0pN2:++i2&]bϸE1kP&$p_BUY& y" \r@"ώ];1iL-n԰ΆQQsq $0t. >""]lss_rpL6T* dzlH\7~3>]Pr/[r`"*J  3{A+GA6Is":1p7fu#gI/}M-&=n-<%i488rC3'HsU=ݘ Qʰp}f#bxyFoCvO/eڃ/T"$;T@%C`%cMt`N$ oNl#5Y5/uT_,GOCn.XGPDɀ2[un %_\_c'zѿV}T_۵%Th8>K9g_E=mΩ(#j$=lNʓ:si/ W\B|VbdN>SLt5E%P;5ǿX5@Ya{]n0D!NwF[B:%1G$r@E[ V`MN#M]x+m %j@.mooEdvC Δ<^?/d47:3A^ '!ʽG ^*OΧ|:0s>ݣn|?j53wO@vYnwzXj$]{2{?TO `B&v@߃`IC8`Bz!ԋ46(fb/IFH'5KGkbB3?=AnЛ~}#K0n*u$y7KwE0(0^<J;K݌;Npd;՜`nUnf2/uoHn[ȫk0"ly̮6ר@Ts{ۈ yz?R G+zX]:aj} OejhCe(\W[ct#muǠSVR ("^HRخV3 m)܁:3@/ӄvNxθNҔd7i񹌒c)/22*Zv/*f AXÝKMT*z0xO56X Cr(#O&| awDo HU[E7A%-lfȰ8QHW Qu鐝B!1#H%AmzXq3ebThCK)Ʉƙ/kRH%IgGWky{T6xtJ3BG܃%V#O&"_|um~3 $c@>=Da^^`L' hpѲ*q-2'䩿Xzm\ϒ6T4t~<׵o8%M9LBAlc!Wt=Fp%ԑ׶w;Pl٬! eaY Րm×YlxQH+B#šS~ tm!H+c}7w9;}5*Q?-%.U[ +h3M,udp4 ytZvOn8)`ĵ!(h,k)(2ՇNUH۴yd~"$a"כQkˆQSú"Z5s lϘRPZ=;%1;>TFzo;$Yj?^ %#}3 ꓿nESjqObx,Y4l> '&Ĺ!GMO&k ^JlJ}ڹfAarKDL㚳kI=Plڐ u]kv*7>~YD_^#u?+}Ljŋgm3V PjW>KR]猠qŘHXDNvㇳNf 5T́Z왨?5? zC: kmb4["BT'sF*NB}k4CFyhqV@)^`Uw[v^S5;z\oo 24]"*rsZ]38@.ξ. D[[ݶ]wԩdtgg[!qv~L UƘܤ:n]¢Ǹ`Ύ\sIvY›$ڸQ$l )7'K`SUgڅ&Y<~`HTL4m"r?"=7X?p&ϪJ(ijT#Adu jꬭ8HJԗK-K{bAO Gu7ry$yz~_:?îd$`M9o;t%|YsWށ>Qv0wPQpRVVСr%e0`PaxqwK^ѹg&QDfSH5cό`.巅U0?マ?b'a_[es1mj7!WX5;hV4suaa@/|&S^ &-Ou ҍ?8$FLވv:ͣpE4u** ZxlT_=Uй[ * 4+|Ml=j Ҭrm n G^QXTMu;Xq>r~Vp-vN*q-4Ղ$dښ 3{r/<D_'#ٟ48tK@Vڄd*u0vG^"Ǘmp/˼,]`r_$ _τbP@0;}/R˼őEWKn߭V {ݿJ]ˣ2ؤkr|bbd3-]kEW&Z uݡ$5>Q (ا${n Sts|]zP |@@Hgp 0K[h {D;%PB]e0QQH zzNFbs6SUqWWF-GfMJ~͆ #_i,I`4Ih(S]uO, OLb#"7 7u֍7 X 5o>P09#:?M7Mzm٭.[('k5 ^U{ja:+ ĜpmP<ۉ^Eʑgc3r/mc7gǴxMә~ "fה40vi]=bXPviVgdàދ8,XVz}doLѭ 6S(PGDvCw~^kGm>⣣9ZJ@MSPq~R놹ȹ*{ h?; _c F(Z#Ӈ,ĺ!L{ǂ X 0anNAEO^*퀩n[.rxqbm$nΖ.15#EaNq}/,ҺMO; v &&ru"5%qr1¹J\Y )!5'%8_VM3w\m;8`*8b NM/H"#B􍽺Aҝ5[땭*^zKDͺ-HBG c5<͝R:>T/n;;>3_qTxkWҏSLc=[ѐ T0xiYf@D7-ډɠ֨6 e_!5<@ a:( 2d+ Xt7i*ꉀimp` n݊z&ICH7Eeldy/ղAmW^ÙǕO@KQFU[] zK)(0sH!?L=;gD|bqJ?k1㫙CtȺiFSȴ۳ T䑎>d}H]GQji>i&/S~ m~E-ivxn` ԰ұ@,r?2د$X,l/ܛ {ŝ]2p;2bYUkƜ ũF & bpmF&fU0Zz@Kk$՝SnkF &|3O.T[g"7.vUEvhB.P b[dzZ~ %CS=u8&}x @rٴG+i[&$W@4=E/?kT`#jqxΠOu隮@hPpve4̗ uyf)xmIFˆ*ra}C/^0]!%=^eLk;ṳ|um/x(4ʏК.H/.U I<` x[A~ 2C tYja2Cgyd`o(:_ -&!qx&Ch$qq :,'Y9pNM?M?xgZ)A7aekI~7+t:+cDj`gK2L *ar͇(h#s\D"Ԉ V,1Rӄ&6dOO#O{SU5OM)h&YAyum߀s3쀈'YLܦNε’I]0~Rm G!s[Mr t l'&/ Z 8eD2BRVw*!נ--J*%9w*t -?hJMwhg[XN5w)h_wK&#o`Egxg ^ g kmgp۹a:ۇ*<8j}×us6͇ad;X.Z>}x*X)3l_<Ѵ8FP\Jt< 9=7O 0 26[ؿgCLԲҡ<⩁g4TԐI0)`{qxOgJM'C G׆--_9)§v4`+A1!ï>7ך0p0L0\I<|\d#,mS;֑=L't;dG9i!aFn= d 4y`5+j_JXC zC2N cS,PcEe.nK3,=Pٽ")h3/).98aLR-Tm*{6ɡ2<jy 9e]p`'\R::+xey}5A܄*[nk=lB:WL,A;4\Ri]$VM,^^ S?~[ =4K##%̿v E7 )Ba^ZQbIKh=SF7tK#*N:fQMx$SϹ}= U zo/MHϠ}iKdLU]nsl&P !/G-Urb"K:TFچF@ɍ:JCrVqLE/1V#ss"@_rQid*C^ѣ"7ޫb<1_'X5KW+U<2j[=Bev9n_Tt@H;ϽLeS?Sghp9s,!F'mf`\ 7Ievs+%ܷVۥao&mH|+{L5#8Nؗ;<w9V5\M(qƇ.Wj8:S/FYjpOۚwDҙ0GE_z@b05< xnߢn&}3Oj暡H`4"+/] s-j;T92T>7)#,aBd?,v=f0 EY0v.Z3bְnpZtqM]-+z//5GH>1lDj4pw*$ĺXϾ3 $b2 x7gvP3iB y# L 9 ZkPIࣹ d) =;.){跘|톅nPu*" KX:C\E999>k-H:&Icz n4u&+#Dgr GVO2ԋ_SM9GʭU=QFO3r3dT9m Z\YBof[u<}9淨dIVus.VܯudU@Z0K8 Āvmcl /dW/ yux9;UJ5>dTM@39 1]j_fpYS7=qBB#۫7"Z,+BH.cONB$nD[ H>V*xD lA] ev 5=Ll2}^ˈh QG]ndc7E6:zG@+͛] \6SvȦm ȪOzz_7LBЭ?K~~YHפ=. J3h7i$6=\ ew< ꢾR(q"޽=El!3Ǯ=SGHk_ckc/bEiF+8/ظC`!dB0(c -8ܪ 0j?rB`1zޓBO|uE 9p{;޿}$7sQv+ʹ蹌OlU'BdjrOR}[dq l.[*pFTNU-`~sm z>8o)ҌOCo\19 ş`5*uKE[\y 'p}Z#2Bn >g2>݃Nx-@qsc#@wrњ7uzYY 8諽hePPn\Lyhp  gPCaTJ4(2Ҙo1iNrpmNVV!ݹZ"8th _;]_O%bq%ԁ;#.3h=.Jfm^Sb)*z7wEe,Rt욺"(i&\~.O㝮V,/*x)T-Á jgXE$ԹaBhhzBZVRcIMU6c;c5)?_%\9eЊΪ%;pMhUu^O(d|mSOM-L) lvC+S/=~z~=[Ͱ(-9cYn̴y> _TMs?8גdm8ܡ`OE|azk(bƃ^tc2MU*4Ux$a9w񳣇yn 'l}P|W)\4J<}P#eA#!{Ip𻵱Jؼfؚ[5D\=ᨯktyHF&Hчe@*Β:j,%#XiMUE*N}Hyy.$4EB(E*dkK6+W%M'`FbK;"mՅ+[J֤#NFy!3%n٪qmGK̜dq%B9RW_x.*_fa+ QA!*o񃧩=®H*M 8*H++/*>A xRMA@Spd`) ؆"\N&l&kfN5 "Yߪ7dv[)0(*o%_ MU~RuTCKx n+Z'oGlM>9-{2)?fWM {Tf5Ϭ> ?BmuBCTY| kŭqA#@: פmY6259`61yw{%.aqjc'դ:3rCi_y6fg DM29t`^|#e"WB|z\d8DzQ2N?j -ʗv d?#ufl vvU=QQ"]t%Z31vcMV:Aehs o25呠[^4hl%vDpVQvYbl2GVxVH" 95>!HJ-Yne)В~EDFDZ]xBA.o@4UE ĺq hެt!HaG$0%RZ$i"B _8 G(6נ4,Q 5w :auWVn5{D C~Ҁ%gRyXD F/L o(}_lb %! _d=Ks }q~&bBQ7UؚZOxU|j$06F a" D#q~N-k~6٫Ʀ9@eI״rf iېS3ѕ{`m0;^W|BÏwXJk38p .ҽ\>YJI3AWU邡\0ڿO=f<[anc]3׷ h$oB륤YJУ= DEtM>.m+T1ΒӲ&׍~xw3 {nY듂u֜.tJ5Xv:P}eVw+4ζ dֲ:8k~gu64Vng\c(q$-EQpĖ#(lO)w,6B!LFvIiZctfنcO4E=ZʸĦ{ZOIlPqxD$Z 0jY|jSf?N^TNA.avZ *PV QolJ m0(( dwor$xXeuY2bR+^UK?Dd_DuGbECWߒ23[3 b2ipkxcZ/-QD;[PئUՇ m߬lv,P)v+6Gq]mFTxƵ&m+B=#d %NICYa,0%ySQѝ6{$(p3xUK9O`s(`³'ž[:ަe@, K#y >ζAt1%ue#ޭ~e{OMphB  !{։2@?D1cVgj * 8O+ÃA%"R6|(Օ;q!=va8P~' { 59hJ}|\7 .uq4;qJ+O0L^},ie L8#~Q+hX}I1L wι$zbZn FkWw>`d2P'k:!٩{Y,Wc atWU)yzRiA1QDZ" ?7Dk+nE blh|:lr#L :qu>tHdo;´ wf4Hd&"uy |&NXywH%%`vVb.뇚kPd':'{ J(irL&y5=Ҙ/0z}^彪10\UX,#wipHa%#zZ1̌h@P)WDia17w,Q\^Ah&w;enҮYC" l8* GPq>{ROeC8uBC )s\Z$wk˔OBr\r݉pՖw{ކd1 Q^Sk!i7bQ-fA }Oϛ\ֵFu (=*&f:{arU.i;h0IONEG3z(1WyշtWyߎfruBD qqӬU{$#R[2 p|G[1>!jի}:%>@KF+Xx\BDPTc1!əDӏ:Pk2.O &?~ W?4=2t=5bJE#X)%"FCi?nRsH[֫q67? R"miw*8lkK.3N=@pAe;6:|̵ОIl.>D%@G<lo46rkh#Fe hS%zm@w:7].`Ź*2YH}Jn FX';CT/oi&oxs;eMl{YK"IE]8ûp oU\l^ :A`9 n7`9ƘM-3~cTRFmfE}Q 3 Edč֒x'nN;K7O_gQpxhOgog%BHw:6y3q0a}|%n[Zp *.|'z )q4M Yу}eo:LD{ֻ_~Q۷ oq ;d0,SQxHc>($)G s|L#̋ɣivg&فNb]9e-Adf.]dm&Efl۟:5_ȿG%BC/w-#G3@/aLz]߈L+܉W?c[{y5s:=u }ċJ֪l%gRW ŸC[|F7-B=ѐ?/`hf77tG~b[7i2 d"-xt’ 9$lYŠ=Su0Q) +Nt9U)#©'}${'@gn@c8܆=M.6 4 ]G(y o9)x'e4ێ6,9ZY5 ieϨ2X- 8l0tXЀ&i'W2hQ;BP#і,\(IŃUn\h]R( .(>yĒsy LA5 7_.Lg/^{dUzk<]]CτڥyUHTs9njdG%L3Ka?"Scm(Ha{66"9lɤM8弎#y6=UwYA-9 z0 d!g'tPt+n~.yGpkiх #WpW.g^)AtșT34ctP53UbgMSopD>'*oԯ%$rɩc -j0sfB^0r'mVK+ocꦛ$r1T`Qݟ  qیH-ӿgz/dO4Ǹ.%/p+ͯOD}XA,>@L{G8U3T;wkVyMw:̯ 1a'`57s|ԟ)mV7# ELin]u!|OjV^p(z"LNл&n}LMjź`  6SMI{84m|@IwDqG:# w'*2lګb }6*{:x,e8~0cHtyt6d۪!M ֗NvJS|#~IJEw[!jmQ;v{*cK^A0؇{B&)]ϩHnC th- 2\I8$cEяյ^K?U(P;:8/^:,'d0OE5>"H[[r 01=j ZPlsxeR6K-1 ΅_b-X>ڡ#)פtt[!&6'ܛǮnTN 1<ڢ|/}-n]5;wB| Bt P8eqc`uI ӭd/'%%,3dMQ,'o(vk$lvF%6w<3w=]:Jcuβp6 6nb#FK*0NLkA.HF: z&\UET1H(OKp_C]+홱9qƂ3-;3L(_shtx͛ZC6{KA@ 5G߮nQ9 2*ZgTrX"73`ʋKIXCPn[ nTɶ8C "B0PujwXeTCjҊvn%!\lqKryoˑEj^>G2p܀DZȬ&ldSZbSCŎ9a6!8"!:%E;.]ZJ p_sn KnT7Gy3;8J'HNzw @;,[QM< )dڰ ` WAѡ,>o@bvsEZg#OZk Wbw`X!wb_oli>F yF86?x] jӦj0T'Nj@Eib;H8b>mMm(xH)bWO$}&m;OxqQ X: 05uly%T,VV%q$纸 >g_Cyη#0*oHepqcDޚvTW45\원?.C)1.T>#+F ohj%dX\=ˇ{7k^XSY10;8fe*j2tp B99uIW(~v ~2]nD3'(<"Ŕľ( o'?]?oJvcqל&aNrp\ʟ nu\N/5jKPK!`2A%2(N5D@66F<:Mkxz#Z#XmݥuwpS+Cq{0,ؐ,-Kme/h$\8ș*,6%6 >f@Z,\g/)89e{etoz"nUlq(fn C(J^w=%,$uF`&׭:Yr}̴/-\(nGWvuIlj~+kd-{c7 /٭ޣ Bdq &SccO -=—yzd|$00$d@k|tA]r6+ȓK =ْ`ި b ]M_ekZ'Z]Záp_Ot&Q*?UMD_TPo Y"i `;j  Š$ԐW &3}e}CuaK)?pJnpَ;>57"#//f}2)]L嚮]iG2MsM\}MQ!njqb8^pk N]+Tp(oL@H GRĜ*ّ&3%J~\FajdhScVl ~DI pU5/ |g߮nvз>pecmp#v,fO9JHq{+AX5ZStO &G}ĸ H+1ydėSc̞%`ΤE2"B"MPYԩ4UjyBEKT!㝀6iDΌqUM#̵;,|$G1uVR:%F&qRV%c0NBfC$Bm^phQ<5#G eFbX䍴ycN Za V CMR!G+2_Dӻ2ASdHj̙L|ħ!`u6:iYzHB~3E=o)ʓUm%IxŖI̮_26#xJWp'N "7n\T1ksvwvb`D'$T:oTh)F1EfzUfl* !¦Q&"GAh<-~NH%6#%E DCtY8SBn7=wVHlԷ%"qŒ5Nѓk5P,#4>+Ec(c4[#8Mb/V3:փ΅kH >.a!k2`fiRDp59)Pnl~c'Tu4SdΡItRNǭ!S@]1DtݠV;`}#ǭ5h7!՗v*Dokx{}'SuřPb"1zsRf2 Vd/:PjxGb?kkS3>%>xPrp5"8~i,$A/PX.ޅ6 vZZnTE t&(k*W'B R`,?_;ll4bW[9*:n">KYM Z_4,cIdzs4®'ðEX<,0C!}q|ܯCĻ#I ^jǬPQe=38r}q0wZsPiA|A<(>QtnrI#N t0ba_|*FLctWO篺Z4?Wd &z4s۫XMڦ6҅ lfzE/ >[CnGS%I(D&p>S%4J(tj>we|D|o6IW(2榭E`m:%xWB@LYC4DkA9 4sy{o~Jw"_cZ]Y"iky.$,FeLi^6'XK N:yBٿ&~bR7A49d'xiWBۻ*D"_t+KJCk>O4bm$]ʋqz$&͔If8*O5_^InG}: k!OB~Jx|,ReasmCQaN f9!鷀峠v=5&<M +24 l+, ;'daJ?P 5*/?Є3 5[fUۤQhr%jhHۇJ)ҾlMc5 yŜd}AxyI_d#/ lV6  7E NȐE )BU;(!`l[Vީ}ԟ\ S(A{/|̯ܿrޒ1;ifcX(4_f %Aƕҙn邪|n"HVe'9Of\+圍 JC\Z&uȃքzSy{G.ladN76Q[&d[=|\.h|mSȋ|@oM &ؖTǫ+M9uTHPS%|-c8b*{͇Jַ ׏;)ߐup "'BA#bїb+ĩ9͋<#ʡԍ;K s O29x)\4wo\hj~; : qu!q/n7nRdJ~^ok>|iVStJHO _Þtw~(ZF{ BJ^N"Iu Gy/gt|ŝP"ٗNzP>ӱ7ProlT\:wxNiQ;j/8 UgM13W6]lAy(ꌺzS` "`kʦ%hK/@&7g| c$ζ _λ8-y>^|ČI^RN0uֱ}͓ m ~*V 7W#\9fY1Btyt9;7O!4 t1Ӫ d*^,DOQ-*PjoHyRUD-9sDG(Sl9@.o 4暃Fl'C82¯Cd(^!?OE/>껆`y UM̉E[#l ɘG3 TJ LRf>O6E##tH5 gRZ ~u-M4+D.^nfD&54Q̪3 YIaT$ՀbVaݸC8Dhy:0ae|S>ύb8ʮ:WaC9:<)@Dk+‘ ֈj`nAB?Kr qU2-ep}s{0UQM+bAKL>D_u^h:g9y;?_~۷vu(ÚcMy-^} n^l#HqZ9OWew(szZR%Ȥ^Ga*=x,c4ʤӹT]˃ TW`Ecn,jye'%l8h xAٳjeR)tCM-P[vEՀH-iU,m&׉\ZV,\v\ѸβdiRUVc:C YT^Wkkԭ$|< tζn_v8{IZR{D5T,YfRË/8.,u!G2 "qA2X؎ʶW- 5; ryY?*?@sfHk̗ oGcbue84MCc }^B8ETD&Xu]&?VgؤG3^odh8K/ MoUA69.`ASwmWn~ :h!U5=G޻|\v Gzͦw@DH,lAcHf[? % @;e%bfn-C?uyY[&:0>C{20wutxWq n: s%j(:WKg+,>PBƹv[ű)02ч\5ԽǽXfޒpܛy*_I)2yJQoZ"J `#.fmFMo8ͤ=AVV-a5dx_fC^/oXV0Y!ʜic?rcˊ[7A]Nh^;Uu3 nNT{ZqaA,^YT/B@g^ dbuyP$ʽͮMd 6D%[,Ny{']K lŕFLL' \5??W^&yEI9T4098$ }2.r.HKy*k]wAsX&5"+U$CTz~(ÞtRi 4lR¡rJCWzԖxI.vFߙ cH5ҍ&uQZ#кJV¢n_Pgm-'卵vXM)J)'Eu0[XzC7뷟!U&æO!75 )ѻjp Fj&Dj,9J3T_0RyMgWJ~tM 1gnSntn&Mm+d+"൦[)mR5g_To&`_%@} H41^dŻgAɳWYXE[K΃>=CD'@>>s+iYGΦQ\)e@h[)ύD}_il+/IrjK^%m.&AeK$.eD1Xgw7SǴ/Uwy*pwh=zF-oC4s5/-Mb8բjb<&{%p`6@V~^03UFR,rN&BE]j=,y%bCB&nDdۤaܒ1?QL7cME);aN `@Eb[{HkzWf q6WM(ջR6g(2lZ r=;|ih4eS&ViP 嚅N&3>B”1퇫ò)&1Ҟ9Ǜ0@-,o(APQ  ح$ ȥs)?TBۆlcA {bxlYT[!3+nc#hX[ÃD)з{ #s<;ZsJQH^;H;կb;aumh4heOJn]?oBkmKqyϳ1YG>Wa)zXpΪzddV/f&b>U B1+n+#(,59ACoZ,$'sJ t~< v9Q4-ߧVuz6mA6~O';̽kGGwXH{BE_%3t:?Ŭ-}-!J/N"JPwɚHukbӚ5af) -GT˲n3%(e(ԉ.U67Ɂn #_ !|7j;>(.X> f8T DIHCy-Fy'CW~XS #gL1};1 iutchtN,.%~bc LGTQ,XAg1\?UbB(M2')mF_*N r Pyz ~RhS=)U#?d/A OwfPr#A<'37X8H@Z4:5ħ+ ^G='6\TL7Uc2'ƐZ/ŴՓ48aث5+cn[շoA]#UOU͈vpC)ѕɠZ_ލ\Y21@G<"THq3ugoO_?B|C2AmV J@yBa69=c헿? m,g]<pnJ*wh>UD Ei\V%ַPwv2KqAo ܬ-fy#pՔ4%'f+73v#ݤ:E7j r~*;>]!m+]13mM@#VZwp)V} <Ϭjsi5_jZ?h>O|Kc":V^8YQ|(Zvyze61!i#>n>F`+o66\`;n|s3&Jڙk?Bnny]hƚ3\\.}ǘK}(ؔXks{8F^ȍoB81/ۚFsJeC6R57p2ɨl{iЙ`n B&CTA,а6y-i9TʾeU@\/VV k?J4 ;wUU "VC0Rf:_ƣLGnx2̵jsivd;K ~.?гp9\qsɺVZ5wž-rį^ ߟG\Ro5qC}f25 ȆťXI_[(S^:PU:fH^d#=֣ R,Lie_*=6h ( [isYe@ì|%?.!_`C:"ˈGY[% DYX1~ yxb6W塣>X)1TtgNX~+ #_i2%؂ B{}姌 lJ{yKJ'KӮ>)`=T:Tq M}*iɶͯp@/es!}X610.g=ŷ~?cW*=J-)3[4 ɞQKA2Wxh\Yiu]7Mc(W@u޹#\q m\֟;/rzճ{.!@\тatFa~>2J}B?KoͦLkÖuݎڇ/pX]T^K'( fBoG^wYϧv~V/ZeCy.=߉._b*2Y< j_#;&;IyF-p&.R17KuukjDN;Y]gksb-C{^j,  Y1r4F@Lk>|n ++= AySvcyϧ$T^밧i$~\c@rovxSNiKZNQk;$T1t=D"96viQ8*6zqL9+rJ6o>*1F{i98Os/l3)J!յz[G19|;LF|v5@pyW -GK%P~h/ #XܛnIB ]@6p wAZɗɵ BFF[ȳa3 .ş_ Ր1 ?'Y v%E{cXfdk 1k9{q=OxaF OFU0/A25`88,8t^yiK^6tU`/ΟlY4[ "q䜺G72C2 GBG՞ئǝ=K6O[G~1o5).@[OBU'ʤLvD& elmp^A:1Tqy&އl1Mo-#W_Z -0cM1"V F>S-}Xt#5&꼿!qf=忺̧W$S/D:xG ˡ{3пS`LF O-$V?p]lrʄpO`{7\ȤurߐɤI* :H#YFy6h{ תek,p{>-'7UIFQ]L{*/ؘZ|АIoPo$E` Lv,f}z1<^]{$BL,JNŌ<ܙ4h B,Ku4Ocv @j[']E}Us1ɛf}J6|u<7JT*ŝCe^+߷ T,#]h޴єA6S AkQ-8  6L2]d2 {&ɿ@~k~'ud_+yFEid%TSk݂}|Zl8b@ mnhl⥶}܂Ke{ٕQM:^)>4 a `Hf*r>$)ݽC)Qw8`Y.*nQ]G2ytMP j:3@7x$qw+>%s; 9Taƺ9s3>&yLfY$ԢgS$WD*u#&d)J9gS-e !y LQ_">piKNJ]8Y׍0ksxUbU)rh!Vk5zsCSUOhWmjm65`&Yjg[< zJ) %oL0yײnDntX avF\Ա0޹Vy<nl?8aه׽Ɓ /G^-%ǪZwؖƍ YbUW@ٽDoq_zNwܕc4X"ZXK|ެvQW+38F,?O:pn񄻤{v\*c(1|d'eච&¿i؜\!G& $F\_ . x= Y}sl.)˒ɢ V]0ig/&1s"KSKOqGl>&dMGN᳼G'305j@[UXm<nq\HbHttqF_j\6%VY9K/?aDnۥI <~7( C ѽ?elQ!bu Hkkqj/أ5IW:6>T#!Sf7oF.A%ee,ϔ&C&ўfޡoсU=eD(6I5ۣs1u!i±`ɿ=pȼ;Z='vUHنsB%h}GiHƬO s`$Q:[GplC̝md۾u=N s*XmMDxUc#²y,h)ÅSӁ&57(bjC'l4 : }eC`4t1| y]jC!;V[}ZnhV4$ Pw/!׆П}W*#64,-P~v^R)%Qs#ȉJ]o?%Fsox/$ cjIo;V!sĄ`D[H<<"niõɁ +\x<ʅ "!2㘈P1{]uHzlO|G⟎9b=z'ضB(<_+x$"$i{R]nN?<ڞA\P{APX2yI\ILH>:B9ۍ֍K ZL'ylfX\[Ǻ(ǯ7'jt\۪}.F`f!@L}R9Cp}O¶7g5$k\ mtI8د\,i%>AÍ:*3%65X&8[fܺ:(HđY⍁7277$it[nS<A:䏦'+]NUjx+ 7."nڳ}ٔyզ^۵fxup-o1x܅_}?&_7BKhq 2O@Ү8Lb7dZ`OVsyHuU"!!ӎk}͞Yi\ ,mc"ԥܢ!^4s\2%9m_,\W IM_xKǗ$V#ZtSCXb{7O”IOӢplnFK^vLJ)[kPJjjs^!hz'jeaDYpĿ6Y;T@Fᠱ~Ѥvɢ5E #ucE!PzJ9K!eǩnnG4t.B WT޲qtНD~Cp=In_ץUCQ?]in`i]Ŀ8w!#RhHgY;mx0Ho i$J 7u" @W]sCEˇSqA@36"c{”C0wـ̏A?wf9>:`)`B (Ÿ@Y/bGK;WBgC"|)VHU ڴ7B p-AVc2* bnZ I`4ZS 9^(Dh9"?(8l*-BFc8DU9H9$z Ua6 L)}'}r3 Hylhui5;Ee > b8H5K}t [ rT |m1 0Y>?ʼ EޏLoAX<BƇ*NY ]!^TWEZ\FKmoq^IӇܤҺ]&UTsnpa;zضhhz.01?ZGI.E)6|VN /0Rp\=m3~왻6"?@s . j!ʹE1gbRBvnXgOT+x-o:ݤע YyԽ]BO6~^VXjc4omE\wt}+A};;3JR+?(_ c=5F_a`:Đ2>iHatgfJsXKOϋ TLes>F`Mz1-?%ΕQ2(Ybz[K eV!O2Dm{S! Zhp15rdn3Ssᮯ}:,ġH][%q0MV֫? ݡGUAUFk.q rz$*OWyDMPa!fiG/t` 8K,n9bw0b1\Nf^C "d¯7Ȫc z\TM|Dh* ( Ԕ;v uH|W6u$Gn2^oZogYe&V/ tcȷ~D<5Nw0.I|j@qĽ-p}k_Qk=\'Zi6hpndRA$%jŸfF4,-cY[!ݶ g= N\tg,Xbj.QIn]97bOy6 : [O^5ֵ Lr-T#E{B‰ʹxuTѧ6Ѵqp3$6 ]I"-T9KvT-Mbp_ev?#ƽ ufT{(QME2$~WQcO,pu1uehZ|va_(L;W`>cIW]h?L:VZۃn3Vw {N؏O(lB.֎擾%ɬ l`N'h s htB]>32J|xb%&O%DH+Rg'=;A`4hCߢ~, qhЧ>_:&1hxzgNSBchn>^V,"# ir)WH y랕<=+,ABڡ}VK繍up9ĉ12 C[\[cXGViO/hu^<~Bdjи] YMx kulڋvgmi"jz喃ECu/LzF&i^kLł'|x̀jbk48x/*ٽ{*km|,z7/؊~F?qEYN]r`H/;ܼ=`‡ c'J2Lc4ԝ6sđ`9Hœ؂:*z9y#L[S!H(Ac̥V3U~?Sj![c`}h+6k 1v#!=Ů-?[Ԭ镨haMAg1)ll+3&tӴlN8uVvznUy;T9* by_B.I(}ߏf3-ZS9t VݳٸkKy]&VJ>V;hq\_6y$@ja{F CZcu.Vւ#MFW2? ]CٓT{qՄQKM8-ӵz5gM: zp09zN^C2$DM ec/=t8јO33|y=-h)92&)lID`{Z<-^Y>P^E'*(Ds 6:H he鰙iľ8~,W _㜩 % z YpkG)N ?ΔCц,u0 P&{ u:$bV 3t7Q @gVy.O~0W?7-[Q2G|WDLsO?'Liė )'>v8Aw87;WT֜;UU}c}ua׭I'ls,svkOZ ˏqm 60]4? mvF:%ƚ & ζ>aN!Š+5QpܚM+w 2V$(GRIpӛBeǭoS1U0VbZ!fZp+5Ue+O4CW]Ey)jp-0-Hf ĸtGu۲錋˿G8w 8^7oUh`oݰp kW6QkpNfdw1$_XS+YqC1c)f]D毼 )=W㲻2>,Qi^lEmavxb'&%.;³rZ΁IN%)+~rF>b٠34Gڅk̨ + ۞Aۢ%d4yQ_] ,}h6DԤ':o5s+ųvԴS x :' X,}ZU#)԰5l^}@ntwQ"`Z.۬kԭVFieoz4bՀV.|,NVt.CUI;89ҦI~HLGH=@EskAQ&IVP8+yYs΂k3Ye}?ݵ1"jª \oiҿ:{ )e'>ݖ{{U +J)"Z=06R ec'f5H]8 E44K;__۳%Kw,=zϛvU:4pϢuy=˲pS{&D3q($Iy38Y3Iߢ 6ƲXAgxd/&j2u%LgLEqd.2 |,26{Tqhޱ¹dsRLJEv@ 8&AWްICGt6:\AZm1T1U1#b=+?H}QNFͥc+e!FjZ=plbĻ~5/Ѹ-fM5C@=Fl_}dBH6]ɯ 2C ; G%z3V0I-E/$tzxa"f"N#GWHuCtQtJEDRGƞO$ƙww?a`o;N <\HB&_wCEP@cMHv" k.h)ihOf;;3LQd2@ym"'!?ڦԌXKH!Vk_g0q3GP2k(顫T#7;eO&B`۽60uww6wha:RCj#IaY_.Ssocf]”'A.Ij$M*srvL)FG$|u&*F]*x%jƏ-JO%õJ_4o]|¥R=<“~78| @LVl@J8g#Uo3/Ū;'}['߆ #.x<'Z8Wcm?7ڷ(PN\U$˴ ':ڟ(iՂȟvʞ/Wr3a(v2́C~'LGqıŒNYfbx;k= Uwa`&zq(D Pgvc6Dϐ_So=y,"7 X1yb14EvHtA2|b]X ? !pRUNJu3WM٩r02TÔF؊h,]ָ Q 9t-g5ng|*y}DlBL*QE):OȔ_[NEc hw MVh؁KxQ4W)tD&Tɹ؎(wHyw0a^GfمfqfB_}I(Ņlj3%w^ qh٣:(Ltȓ@o֭R}P‹X rUXF*0  ^n>Oe$lsK~f!Su6ESl[>(zjo-gB8OcCyONɬ |8p Ͽ"4!b^=0P,㿹!5 ُd 0G y{\Ҥs8}˾tSMj1"1mk.ւu5ag:OSU_~pM%eHgj-iTe9 ^ Zlyߕ]sl9=Q{m,{I$eswv G M ψ8-ɤtS}>[\x,ykvqBi +28s:΂\! a\̧&b6n' jJɭ}w./~dTgIYK*)B a~s;s6% ]u:K K74Hc1Qכyr$#&jLu} \S?pxqy2M>7WՌnO%f/7>(BQطb ?VT^l̩r_PtԁηzO'8f~ӊƜjk O+hLHs#ə20τCT(B&!x&ybWX#6ɗ*\vH=|Kn[jSbt[mk+[Ki5x͜=*ND]P Ϛ Taiu8Vh dVѵ-E5Gzuv2MRWlmE-R/b/mu~߁VDiDp\IGp(n `F ~0҄T$?|$ h;%_sX4x~_:<TCɊ7ۋ D!- PJm*"ĥ^yn!(9 p%׸aЈpTs<ڶr#Mxޚ9Q7D tFaU,2D]9Vo ՌPeݭ\|E-m,ٯoòkm{oBt+ El,n!۞c$/!6S^ʹ\Cy}OkFt[r`]àՇo3"&µ[g1| 'Ve(#j(kJDKs-Uec;bui񪷵A[< /Ĺej=5Q^l+8J(ѡI\B\b?͇#ه-E|!H͜0o 7Lp$"%:a4Nw1%!+ٸxdHS iw>i1Hq.MfQZ (Zfpͺd'c}xuQCF ^n{]7昋5eT 1reyy;#Xıq _@i|%P|_/U1:eՖ-t UgnlMubc"t~1!4y1yAV7[ɯ<~{r;K,$ 3u2?bDڭ.6ߓ GGR=F2?2־lBrYg`7 uwި݉;1x `휸-s]6ϢգajSw@<5 `-h< a_nPۿ1Wu&:ױoӈ$v0pK1N\QC 4b-a2 ]N2t Hu#ӺAOO׫4b+sOV~ʏIvR.FKb$[+KnR*5A zQ$-AT\CuNJ\[Vl&cZif)'هUyO%65X-,V3_IreY1S8G#z+|jDPVI/U11d 4^ynkB Jn5Y+\<\'@Q5ngmH;ٗb|Zrh5 -:qq" -śa|-(,d #ΝB0BLHVl^ w df+^ ]|xҡt ɴM&7k"@;S!|g[M糝/+-zI@-7&!xk!jNK[p{A'_3iŶy}@<%HDm)ӋvX0~![Aq~(;Dxܖbܹu&w]%Qc֨ 0`gK0Nvm]F+@jEo X Nţ\ſ﷜+ sSq"~ 0:>UE%WJĈkXW:nGQC*$V+3 10:"B]k_}Q;C̒Qu~#d$Fx-&<"UZDqzBwNXNVER gK0C{5Z`yPh)vB,"a'8#DTilo'RJ΅oAyx?47->8˨]|!5B- E毙Kzb:;j]HEwDSFYLRnhw I#WGy/ylw r&59H?<)?d!Y`1KJ-01V֙8ڜTS2gTpEC!sa&!Z@FDdt'(PQK?`8i$3b͍+)O`Y Zjs[QawULno)Udzd9c}ݮxVZ!4l qdAu8>/i0R߻B9<Γ 5v[(76S.nM͈"&-Z>AB!u6W;|Y J_*xݣG u28pƽva6Xg=?!YrFkzzV8r}OԘ^C0Ks-yZt c Y ]ZGt QF v0%աJ!uCpxKpv ^;bķJtƈZAFwB3͋- w$o=Hё/&{Qd-ӏwUI, :ȧL(i!on慴-LycaI)rW NO\;X϶.#\:8d(3HZ>080,7ݶAHZ |OCHAqZIMf=]4G<=gݝ].~>+|jh=+Ru~P/3OK ",',,mJڿP{_~q,$~2m)~-]A# TUvhY $ ѺmtKݿ?BW =D1ޓgBkFŊ$*8Me#bj>/4zlJZhwAd_wk,/A);ӼO\vazћNO>W=;K56l|gquGu A'KZnD$6>KW]3(:hRJQGhss_kPv_1d#פu)<2}Sq3oX9Ԛʿ$B`ܘJn1lPln\ΘO #m4GBA `3[k.C+ڒyˑ٦S}qKǹCqBl*#"~Pզ% H!R`MQj/QE+/{PheT{V Ѯ Dkdo6 K8i67F ߝDQZvWV W`LJ'F めmBFwM 4[;[l`V+_5cSڗXtsAP :twG/xXl:?]*fJY8[%ad`Ȳ/)D*("JRP쟅ŞDVf:xkiҊi_>>%97ru @{A%(<껽Ihcc2дhm{|/H炩~ۻPDfe[h_7;#@\9 En.}kvd"bKIrz!hр_f*^Óp(KJ

^,SY6~uO߻F5sF|Y#]>!I p."F3J9MgB%؅*Mp#'VrF@81'k: 31G6c;FqbR]-.`UF۳ E) Cᮁz+P!ؽq wڕ͟F6(sӖ25? SvMf_r(CM19Tf{ ww6-.T3S͢*ぞtJuK&s4_;1lX$rwҎH|w\q\YѤKUYj%wH29?,WA{0pԃ]xuܩ5!+HJns]ox/JSaph VWXEX lY䖧KȲ/nj"[.MQe9J`XxD9H->$CǪӣ`-81(Rz#w~_[=Tw EϦyxr ^*S m1a@xh LqKR($ ig:mÌz9\jpq\:]qsEc6dW_ hɢ镑nEB>YYt>eIhn`5SS]GZ0tfMud1L 8L^*KE+P"3 a\)BER\Lh8ޏa2#! ]c!c`MF2GKb=BÄaL7~UZn6']!2*|-9 s2pI(CxDs2^E17dXގtdp^.&TWpk /*![Hfd!_>Ώ1SM,jo_cj%XRE}rFGRi5Tl席 AT`3QcH2LRp~QLtȕoVW/Z*l%bcOP80NEl]|W) |# ;l.%+Qgц=*v_#ژxs L|9Y&`U^s7/2#슬 :4U;ptĢ{fy2))䷝ٖ42KVQƂ]lŸ3\HJK)^BpelipE@ZtI,[xFoC~~ @JYu۪[0q3]S#Il2zuLTJ.4ٱZKxۛUv "֍(W.д6U_Ass֐<+~cCf# c8}s`RXB =Nqiru3|``b)$1"sfvc Lk[~kx]m| in4JVmz L;>=/3@[#:Lj[T_^8bq~ "abQ.kC-jQx皨g "oF,>F{|Q pp \?¸Je -0j7"Z\۽Ӳ̔f*[mZJ hq)؝W7'f$3G7ڢ \+D=UNkX5%:`pV$rrhfFy$u0CǶn7K!C MX?AGGߟ=(ZnY(Va=)7h3և1/f&,PKtb/x^4*?rMV}aG>đ1[/J|SgmC8^s#'` Sg>DbPf,e iM _k\p)UW9Tm[;=(yqfLwS3^NʟkcuWQ1Cvx&U,<BkV >yz^NƃLG`^Mz2Nq?I~dpw&Q = C2l'b BKi+LQ,'vNzn/'^mPZ"5kuJYLeƀb!XG'MyJ=~$JP1`*;AE$;m1zׇ2s9dk3n0mC[S5 $Sjrnϋ2Q>-Im}BQ19ׅPtFEnn2AX$# mA>ϴPE_0KV~køGLx╅L=ܬs +C3]jS/N 5c|rΠQLЅ>:\ YO{:'IDߟ'->КzK|Q:,&^M#t2 D5K [btg5h&N7WfMmUH21n H^ٽw*N G T\9 D݉1'1Ldwq;n@-71ʃN]%P׃;M4Q%k8<̤ &.TpT;Ez׻{9u7 (+ܜXeюvv[\A؃Q[aݜ **&m%@ JNRnDFL,TBb"+ Qa?| z|/OjST !{ 6/9޵׸9V'n%AXC&P_yzI?i2kZ[=)c,u.h$.gIv¬_RS% 9 Bp̩Ҕmí%"M;l l Kû㠶=G!e%嚫wI?%M'4(پؕ\f՛'yXI"<Κ«Pm}d(UH+H0'% &}բ>>7@p4iEҽ\~~N%Q@n#jgc'aʯ}\["3?ؚ, "dj9EY|Z JƏY92WQK 5 Z_v$c۰yU]XDl`KUR0&ht(4rGR;Iee-D52$|BX͚QUB= AxJ/"4i %4QX-B ("B9)N*}&X'&N8OÛO`6l@^6\a:9?; r=\oq(Ti$}Km !%^M *zz`|x]ޝAaQ;AJsUmX,)kߘ0&C X'!HaFO!+.Kf!=8s@@yMp@Y y_.=+ӓ +^VJIa4:,X,ay?.J^<J(V ©ikL I" Ζ:v#:Jw2ErWło[[쁱B_ 7FZEi㎰`}B49;s jQOτݪdv eRo]5-p>M( +LybTxe؃s̋Ns I`5T s*a23Q3}83#Ŷuf( g-(1\S-3՞: OQ.'Fm .rx!)\VfmNQͅFʯXM jDq)J΄ʢ6RvA<1֩<1^8³}.NײS2ml5F/06q=3{FE-qPx % 4?tp.+4IУZV"EW*b,pQpTx(Z?C_b_OytpĠ !QŽ|"GMngcDзܖ:9{ZjEPɂ* 7,ل)Q:P r$8d4L൭وX(RCg`أ)Mte 2J]ٟmTxmՁugS/uvT.ac _J?S&Uo鶌Ce`{<%&s;u$?Z$ytr(6=  Y`x P^c!ЛTK}A%$ODzE C"H̲|Tl¤".THۍU33"%:džd&ui_ET at \ 65]lv8}ic5nQ+_Wv((MuVMuw;2h^-pjJr~(>5HL`Ů̲rn]f^{A1fp*d:S̓Y\ۋ64K\P2INw1 QLwiX[C/̵c&#AHpNf0D ,WCc:~&V"U Crd2#w?0fx'%ٯL8`a Dgtfuuž;NMBջRPvQ")>i}]Nʦ*\_i8jLueā D]'A5iJDnO!E//~R sUJOѳk$ ([yW{N* 6}x7ꢁ vW(62=7Ǥ,5;50C+~Ķl7Y?d;9Eq?fpF(R+aH^,,#_"F?R::˺_ȚԶ釖F@۹ $SG-Qo;[\ %Şq6r = g NfҬ؈یTh[6U|sk.l/m51-v!mتgA6.;/Kziɝ%ãp!b/BFPt?wdU87uGNTٕ3۩\3m3MhiNc̶O<1Ң=8d|" ɟŭ;ms7Qud'׏Pg/eδ.nص͉y@T&06q}g~./D\su07*`kXy65BO\:fHnL1e "=B&Zg1A`_E9z`V%L2TSଠpl T贯Me Ք^ #i"?r?,^ZW4 yXk/g&Bhht&dNj pUVrd~ENYVB&?S|g[oUQ5,fv_}pRw¶c %C1@J4>Nþwťh`!- 8Ptwȕo{}K ɉZ"Eߓu'{d&[04PY'SX_0OpSKZxg5߼;kad^EU8 U(.# 8t=*v'{z E,z Vf׷fzwD)X_ Ro]l0VA5w)Pԟݧvwt '-@ ^b,.->Mfp=)i!B&cJȐrR՞rkŚLrgZOnÇC)nhV!|%'E̟,Uk*e )׭bE?ϗP:󒞄òkT@[!WN9q_~3ҍWq7 ,7 LF޹X'@(G[DT%ݍ/$M)6L \X}dٟrx=&bϫE0b0Gqdn =fA Sue_$%{.ԱONŸI{ A_^GMhEI#fWscN~rI+ wI=JW>' ptD닃oMUXs&+×wtm If?͢g|<ꭽBì}Zq[c ;^nL& q(eq{JLrAq׀mDz5Ap.XL*xb6Kg`} @Xu;ؼ@.  B-c{%kFOIWp3~a-|USng5T=gkM+2tno ̦PFX0s,n,à(ghg̹oO3R Qw:!u4dsעR2.YXh|~"jl&l}42P.h J~qڣj>Bd<G\=ƽ[>*Mb.%M:PN+pzGX~̖{w N ._}Z N+c1d2*:TOLU"zHFa Wq}@9 Y3D.ۣ eczݥ:ǓAլtSa 6`4HVIkkUr!#5v\I3k3*hFs:Zh`* 8XA>S6wBJ-#9Uʍ@,D!xxP*.iI%1_8*vgi[5ENRl8վVԸtV5\dJ8L0k'wX}^7 GhūԸfAi*鋇+fY8-tI>+I4"bOu3uN5-` f 6ʮOk!T[tFJV,sĪ5y;g(ӇNfsHIÛsy"ˆrhf8Tv :IRMh]b0F,@X|`5>! =ADz)R/=3t ^Pi V-=HDÑ질&1P-ZXKma,x'q> NDhBPcI<{"COҠ{ʱcWy.4hEW:1ӚTn dwЦǰfKglw5e+Z)E p"5m(Jb,U`ӅG˯-0GN[/s`3Qfk3:TQg*{>G ;L{KK^.ɥԶ#4p۠.er#lM;dyIbne tpYRԕռ!c zt ?qneXlc\bX_)C{HzȭYzY": TY&oK r-ގP d&YA[l.u̖}2Mgsjٵ$ dc\K]ָ6_ x~1Zf<!8{w*_! $j*$i \-/Ch)d.>s0vX111d;J]d=|oF4 ݫEtg/J܈K.{/fmbI`WP;~۬OX{mEXo(#".[5XQZ/sdd;(FD'hp6ތ N;jS(zf.eRSTNF,sXEEvU!, GGOg} 0+=ІҰl;'z6s5顦 8 ^J2e,;7맹_F+7V5-"!wWUώ%p~ٱ.n4[I$UY A2x|s># 9f4M&.lqBv3m.?<+!lUL45K}IYh& m30&'b 5PӪK:AU[bI>>{)e}@$ r8Ҳgޱ s&n;}\;JtGR8-q˨Ujw8.ټ!բӣ$ MRVcQA FPR>L?+b=u0 ɉODK4ۥ$,W?d?hɧZͽuSDl:lLJ#$] l^?q>Ok&xa2tk yx<6ڞKjt*L ynbb6~(XNe56g,vb>p[488Mk ^$Y+o(4x0k;ErI]eXZ]dtJZK4/w` RWg0lQ22S{2oSa/q7+r<יB7ߪ#4{dY +^0Id"]ΰ{Wi貵kGPsb`'S. +qD ˙N<[ngbzT$ƈ"Tb 2;N4cO!M͉!)T L ٦Bi!!g@ߔnҶ] i2ع3W2//:TЭLcf?+A[X A,yhxoL>w JOf΂׮J9s/ESĴ+_@1ݷ.h5o2'/xSIxw(Ԑ< $5ydQ \c+ձLPB[_JL!a ӳvVGs-Tpƾ^C^IDUL .y$1SK"_[e O4hB\H}v?bMܦe"l:(CQ)CZ[swr.^U[-S&شlkFnL{#.ǙcކKBrAZMXMMo.P%߿"[EEQƊŘ<䠋ၬs%"h'LNQp2.DV HŜ.πH4bE;_5R>0y11Ӫ 3ª$chϬ@6 ]4uFL ?[kӁ dGACIxRQ@kFױt3ŞiY&/Mfsa0l&cߵNNS:)pA2hO1$dS(e aӚ$r2zhl@a_I_^xX1vBM=n98+u3г5+b†Eg&H0BmJ (hYQx*u~{uxݶza.5l7Ržʬ) g'h&6f"uc V<-<ckjCZh-\[Cl/\m_Exq`l?RqhX KՖg^{zTk {& 3W` 49db, qJ!O#Do\zu {]fV`+3^j\B̼D0S5SNMͱ1]kT+х|k1LDNT̘TiP=ەo QN.Q"B{fFThYBx^8TqPsRŃXg@eCr?$xr#O&~݈nYJyTQ?Y.y`kl%+/L+rp2=Gw7ߒa*|oE C)M/;Q? 1R[U cWzt[Zg1ϖ"z'&vw5 "ᲇEWY ';Y8SѺb2cO6MZׇEp,B鑭x0{_}$w1ˋKK\􋯈QƨBr_p~4s̬dbwK)A5"LM;~+R$9d"%v,rL,g rz-WuQA6>&/N9&+RN @zyk"R*+oo5otMW JRfYb1V)p$1 GDF)"5z甬9Nb)Kpۈ'=iq nBU )ljlC)g" $A]tH];`Cÿ"jGHGK6ĨAep O`v`5w픭x*o?L@2yT>h?(qAh$leMF}M\Z R7oxqjDxZGbquˏK .#ӥeZ4{W"fab$a)="t9 __X(50(k>HK7)f`gR2Dz =!y*[SWp|[xJlEG,xr{rߗ]Rd(ꁺꛮK(_׬//ק L_(*E/o[E7ܩݱ kOE3hؽ7oXB^ R'0g͸_`ufsYo<J6}mZJ[7݁};)p{b,mx9a%.@uliϽ\sKOy}WJ&/]ڳa?_,"oY3 b{5:ĴtIJ{b6]@kfHI6ЖҘ2_oelОڕffK' $N=clM`Ss-5M+\;'P /v,!BQWwN B /Q,"S-KRG}Ƴc=.hI:)4 Y{o$2$" 4{`P; vPӂ9)v=6插uf,Q3&ӈHxmKt=PHC7t'j [ztPSv!Z`֧B2pKr/Ps4^| z˰l++{x3Z.PCTIFe; /A.cd#ziySJ. X>ޝȗƾ'2cDIںc tK$!^ELCKSi#[6?vmi88Lgt*b3@At TA9wƜ2qsZ9Pf_D iO5VOG>U+G{Uw>;}!t|Uϻ#SEYj5T5Z,H pW7L$~u}b4}agobXzy!f1ݸ(&ɨ1Anvߪ 0IAr;[T;V|5Yo߿ohtf|s$I)Zǥ2ZAO[ `c'\c\FfY99yUZ9޿Nɂ2u!@{VJAvbS%#b5*ħ_@hb>Uahɕ C&]ܔC,=k{>|̄$B3t/^Y~F:PVѦTg)HB~"5k;όFC>aJrP}߄OIMnY8$`[4տO;z̘Bg@RU`yYNܪ [C1-yڝ'x0[e }㨁 P,/(x^66i8T?p$ $(7xLU9?qOE[bJmTBpÌt7+&gAp΀TL:MdDpDpG{\$ۊdžK2rHr:߅P7zuܷ;d hkv/&%'|A $ E[UQ\o(=`D M ?2;%Ƨ@M7ZqT&iN>TsP*.]gIԠy=×"ڀe VR=\SҀW ]J'Q1/"{@>10+QӇ_)Fr:7#ס_W4[kǥmЌ[Ta{bt9߷*$z7SE(={Pqe%dV2{I[Y6O&;ƟHżNĎ!Z@N®Ld\i:J:u 2q83ܶI gtPLe[&I=#L"\_Vl j%y* +<چlbMDY'l\¦9S(xmi# >ng ҷ'ɮ4ID."ur0﫤.u9L<|7-dE8OM76'->> {=1Y/ܫPPnn3vE"͙3<avPch:ɈW״nD֪f\4fܵNW,%ރ(`.,:d4V8&k tF.};ma=Tr):PcT%~2vO4F]lno98OvE4.jcRT4ZcQ^75T |}}=|nH:U dF!MiƢd͠i]|y5;iX'D_UBqzw лMv~7ھ"]_HnIx>#lӌe\?uyq]fnv8٤ ZS*Wb*VY)ZY[P4Q/ʖOd? n@Nl[Eξr`JT[gBVķwشpkm7*K<lF({[w5C'4OlFMR1KT>()\ysȏ+{WrhD!]aT޺'=7L*Z 3I7rɠ}q2@-ydgz9W*P0ѯ) ݰsJR7 Q&@㉫;y,xb峗wxˎIR4A]EYs;Gқ*`m"ȠOȽIpD\+i\focı].3o8!@ vV(Eא@׊1Y@SnyH[rݳ.2]f7̟.,ۘzIٯ~pTyc2P->[av )^Rk htY@ޥ!)tж;&bW8H>o7ԩ>x̗mݣ-l%1z5&1k%ؿپ.o0&h_ vׂM1&.hX@a$uD%R+Xg՜YBˌK̗E:vԦM$bV5X)eљdJ3<}C/c%H#0P n&=*R@NA`攩CMIr#TDSv4 #T;aHl%c@Ņ!ӕD +'t=B&9@@XsVZʹ1jZd\aߎD=pJ+G:TsȟSjh (@}4ya~^x;"}#3ޯFnGR֔@@ ji_KlMsn%~$.TҕSh[q )o7v)Q5[M>ʦL.@˝CP ~nB9ޡ)ͰӆѮ;դ6JH<$Me(V4S;)TT0T.TԔUce dL)K^gl3dgZ¥910?,1]/])ϘOJyÂaADv5& ިk#?s7\S8Ґ^W͘n&2&gҾ!Z``h@cEO@l2K nG.-Dj2z܌S駯V`9CMmSa*k rʽ_\UseYk`ϾEDj4LakA P>q̀D iCvxSQdw X=T2tp eZ7u|`Su؉Zj]XCwlsڐ]+ֺ`qQ!d] @@:BHpUΙ %`iE6o}ClB3rҦM%jybn^ 7yp۹{j67Ѥ˗˂( Ex>Z'CaG-lg- A0$CW 4#,'D;A@u¼z_LE#-U] $%:7 ${v|݄ϤH=b]>7Nw)F#k&G4>1$/0ZV+NXf8l3տW y,?I\[+vJe| xH/s1lSdg'Í*+`HoKK" a|O" /P[ K&\&`n͞#f>a^^/cTz?*rD<3kl$ ~ou.1lKE݋lI2,_%wBTo&_i}ʬПL\`XrԽW"{i` u-`K^+= e'w`_u~jsܵkp)~tQC߸ iïTHK<&!I"9ňߤ (ĆC\B+ŁhiYzI{smTc(dq`ZFaBk Jf)kCVA [kA]e:u}Y:KčJ:e%~uzZYWI- M#h L#$aM (9nACz~s3Mcr;s L%|kaU/(ܹL]T0]chYKHq=)@hFPN5ac|i%SJH_S|,P@ԭ̥%?7,g[&0K,2|FMrW-U(6?Mg DNT&$HH^T ][ "Q'v~ k=D&RvFsn-KLgA3#i=RMkSdD;@:˪Q , w';&~R7{p0m\~}>Ua\A2,oEa^>-U,",O C1 ]""<CAѺ*a2R/[+,&'3ŜqkSz(o7 D¸/wեSbSgҌn$O_G\[ ~aؐT!3цQ, )W@Y,_M/h4s;}N8~}mXgɠ.vvvpb^kRaR+sH?}yȃk@ZR7DD Y\ |*r!ip k)^b{_h oeQշhe2??"Q6 Κ_Ss̥\-+Jrz2j 3Ծ{jizCp2ꪋ6J8m֪\t0;'maدP3I~y0YHGAf*Bi0OmitkM#De{ a~BXwAOF8T@Djoc$fO~#$w 0 !C +%lL`,4| \*S.ڧk~EېGLuRD43>u9,']4%GUjIݼYs,/E*Q>O(~ m'**כ`TF'?" >Ibټ}Ku̠_J~UY|aj'39) -I4\]︡b܅WuyQwJqb.ڥ.t PSkoT]#5c{WeCw{Y_odnQ+jn3c"MT!&kÓzƒroqR('ЭvxV=K!m@20N%/J);$?<^W:@i:%uL3y :Ϧn\ZurM^nInl%ۦ^Cz^|6YRih`^J1Jp_|ˈ#t,<܈iByq}GeYBj`Z ٢jٕ7pǦ4`Of~{'i旕ID7!{dAjH5%GE(vsYuҌ7hxSĕYɘQ7Nb{ov*)=*@Lrh< -hϋF\Fq]FqchRJOV~n(Cew$̸v0_-G[g;3%Dz05 ȂDQ8*Z#F*.ɧ%/Cr ԙ/}ɰk=$CAZϠё760A>&&3GGzň21$ Ҟd#| O Z[ypVXڥ#M?5mB~-Kڽ6^$jR`;,P3H /60( ƿ>p+VCW'DjЎ9˪M pDo@` )O)+* Dho=f1d. $7tw}lKFnw%`IDAzZF4!EY*MMSk dpƞEG<:aRM͞JyyAcƬ(R7jEW,q6%QH&,p.E,OCЊ}4Ej aFEǟ#[X~0|ʯN ϸWf̮ _+lWW( 2PE.+®I>ǬzP=³?Ǒ3T  nYSlc|}-֩ɡ~%(eGpm1m)7XZw'p]f36FZ85Bh1V&cJoݬS&fE4ŃR{FK%ȆG =0fG̴JOH̰AZ`3 tߓv$iιcƯ ꠦgv`e<Bl 'e4m}8p<>j܄ M}xaXlG(lEJG3Z XRs]o$wfCu h6ËÃ( gE\&]n8~,zbWOĺ]e/a~zA&69^6Gs)Wj^#Aľ, 3Xnr92JlCgZN 4vOb"³嶺FeY-djgXn;W|!ܴmb/H^Z:ft pv%݋ML % Nu>Y={Dm'{aj⏇+FSMUr8r(M^ ]~3Z# Iiq[ <Q7K,(o$McE'"|~èj ˬ%le =6>!ʯ:X봋cW(wk&(*!a]`>@G/e"aYI"4?9'}DFW'>{;@`dM]0$ҙ0=iVe~oOvÖ1ގ^d=9cLku8C}%>BH.<12$3@. @nYyXhkd &7ٙETVOWks*%N@;BXI-1-!@/o..>Tpx"(Y%t_\£.9gS v>ҋb$;c|2#,y e93QnhA ߚȄ^V2Up=ADJJ]/ 4#󁀩q\&yנೝu]H0u3g{;pSow{feQ6}5rhPbq'&KQPRݎu\Xp*x:panٚ\{3lg ;i4 )ͦ!֜ ,aHT qXZq -.oOrIXA/ ӚtW'ʛqphkk4V~8| \|s4VXVR=>ow7,ygM5At olh&=!RMe50sj1u(耙HJf`:zdFvko+X$@1-NJY XM0 ҍ`h%C>k_ g/e_7 V8wqU:(:9y_.Q0=2R—ɔWϮDsH""L`?iӫjc m.y%U CIq_ƝPtII( +NSq3PSlAzZ[|EmLE@|y#1 LK=kB᢭F@^S I 90l8 Iʭ?|S-%gI(K)"߼4&"U,T[ÁK\&}LЉ2^FXE;n R&hݡй67~ߥc?bᑚ!qYa8[27!{ei],_ YD #$;E9L2q?R+ 4 : ˗R>gX8;Spq;z{G*/b"$p.wSDhlj 67WǪ`ZlOW"?j"(E5!iv@X*ȵo:E)X*+r6!+?(8Ǚ{wYU57gͲ4Mã{7\x]@;Ʈysb\jISBp>쿰_9Dh @}NKqyMؔ1٢*FD:AYR/.=X ' ;{|а#ْNEz(y C!. 3jĺiC֡rq2˜=p欜rSj[zd.H0v9'.!x ;t#~+r'(dD PCXӎ 4*h X?'o1JVӃ vX?C {JXB8z-Uh]B @R˃j _ k.۾'/n@ D4Xwk񒾑wK<3V5uTuW, Q Tp*&ZMIrʜ\+ mHLobE+Qx zhx"U=pn vBQUI*NUǴ"-=0AebTgZY.?ׁA~;T׈:Kk>SDs6RƋvxl9^+Q䉚d28&#Z`.RC #9 E8kucTbkCމ}m jxb4A'Wo<& 3!TRS>1܃ҭhnH )Q %Pn@l ͉{"x<iyvҊB^^bOT{fDG=Ŝ,w $ᚫ/GT=h>>gяI'!|`4258@oP΂ؖ2\aڌkn7r[`r 9u'?]W|{vLኔeueLZͨ=$\Fu\^w /C ^-l-%Mu'(9޾ixf/%R7qNһ`I'ſh =|,uV3= D0Pc9oc_q]m.{ۃӌOpHii`{X#{v/-:$ x\ I[j,.[y~Ls}6_F`>tHCEfc+3jj_oʓCf}UP*a kӢ\=>#mJ4](' >PRBQEt7(k/Qbgѩa /v eY"b cT}$("dhRƢF<J:\p_)M$),ʬJ$K#HʻZ^c}BPw\sk~/5y&GJbMZaoMNM)5C9ߡiv̈>0Zϟ!3n8B H0L?,X6>;]7T %>2~πA&pk$F *dG센_vX5G "6Zć E7SJ)B86nwnG$\E>cXHIEK-ʵکIΥqʲ&-C&ZSYzCnZoHFSMeOc:~){0<^"4mʤWCޫɃ4rO#"T. u\F"uv֜ +LQe3 eϠn,Zg.ψ}9f=?|/"ʯeoY% p6}Z%8xAE9v0=u`| þi9< -vFk2̟6r9;vöv1ǻc?SAs6Ż99圌N;I +1$}$zBTK_4s}C-/0,@qlQ*!ؾ.Ә;!WeIasOl/; z3ҤVW{D4QZ;CǚPE|i2&Tz 9YȕlJ2m9d~sCv.AEum+SR8bL/n+QiёE⍸"l2bR4R# zbY:~Fjء6M`)eKv Ϥ(u,kTKItѪ/}vx-s0֗R,U"{hHHS?{4&q{z"c2||fE G3DR =Q,\k;]S5='*B^ma{kb~zo>N4S0S<$KIQF6ѯYf{h}ٹxHU XuYn(Јr'=:HO{j#"(G˅g;,5[g=S΍*NV5ǁ?3X`(IC_3^f;_Či/u8 SomsTHJ&_`W ` \PzfU (2$l#Zkb'\c5?F>:{7ɥ( J6bΘm)YIqM^EjWosZ@ZW뱅i5s'c> qJjHJ,i+hV'5ebܐ/"쀟U诵 +Ft0mXn $1]kDKa7m֘VSDHS~ME9 eu_ Љ/5vt z 0Ā{+,&W5-s8oqNvٰ 2T@BjG:D-/7lh0ƣL aS?NQ #BxxOҭb *$[+neQ25?^߅BRÙnV1QP`&L(f\WJCJI.9X[]CevK\@ Tޟw{J|Q޽77DP ~6tEemķ&R^U1-vl"#2Uj%bY2N"YD*?H*Լ,YdN!Xu܊:xøc7vAE*`*LT;kj# pd2ʻ]Pf~e.Tb¬D\rLM?v%z<`W6 ]XԯM:zi<HFڴ3o_x !{{)s"!.M ~Ed*_+ HP/#)~Fb33d(JTA+'nft- -3B=!G٪s/ҘgW9^'ٵK:V9J#$b)sXiѹ"ShĦQW^M"cT4=}±Ĝ `-5DK-IQ&^Œ;aJudHbMXzǃt\^ֽfoUcƐm2#pt;g.2Aa]Ah =K\O\f)ՔNbBPY\>i-+˷ՍcL$Wva\]/pSKo@cW1s.4eӗ XR|'fQ }|TEfhk ~m5 ϗ(Ġmsgʃ0-/U 7<%X/2A)$++0.&ijbKr[d_as:?M'D ?ˈ͊ ~{WH>)N^ W9K} =g˺^QpߏK7au`ͻi6Shv>H/<)z^N$)23P oZT>(WrHjDv5k, =iv m Y\u/m]>0_$$W=f/W`ՋC(B k#\/*ZQEw1)g#qJcnR)Ś"] fE ϱCk]J'9[tI5tcAcؿR͊K ھ mJp#nV g'4B [#$2z;Co>G",Kq{&ԝv`Q}GnN-@ǚ\8J3E.wVW8y li (&xp:PToH(+N<hj/2Sd,VgyDI?e8":cfIht7n:Z#wJۏ+kM[ ;u_S]D^ӎ[*$%+-|L ' $vlhx{.8KVC<ؼɆ z|\o*0ŢԠ\jP >&.L׍ğ13;0: i+ K9~ 7;*L]nۢl;˧%#mހ,tKf-y°/122Sϐ̘v CdQ:H }x[]#q}`ET^nr/,B7Eb7X.,⃭2%:җp\ŬSUzIp.ZbnVm7*iQSh]Hx2McR!|'PAh_͜5aj 5?.orD|$ DzM] [MųNY"'6@4鍵|Y;HpsAY5&yt qICޔ(xvw}~(PRVv:1+Ǘs9=c5ɿy^~By'H&C^Ȥw9#:I,&l=&l ?*cRTIWΞЈ+`@6[&ȎJ/o)p3FB&U:!cE w8qn\Y"o(>rq֩Dhim_,fv*ɱQn7$nov?>!C_CJa4i*I◬-":at#nP${H ʺ?Z >`TɆ)>0o$[8H;SƉ h#-VxOˍA>F>JЂkTol$樂4/ǗքbƗDV|=Kg7AF|ܜ/g)k)뛾z#ᅮ['Dpu1;#8;—83^) ESNO@47nP]CV7sNHtK2f~>1"(jDɢ9h`MwXEu~YXk 6/,}eg{>Wmau(meҋ1!xa"Z;(Fh%D#h>*5nE2HBcVFeI6"6_basCfjoҲېkXu ^R n~,ԛE\#7؁sߕˋjBQn2BՐ$2!?l|I\eU +kihk&蠕rR."0Cgvl>o#wȪ+ ўˆ爋XDBɑey#֝Yk?tOd&2O= rU`ܚ ̵ ;L?|*hIQ}<=Or&vB=(Y}*^g<A  C [5֌]20c?H+1 }m(#`= _Rv l ޑWm)86qٸ_vJᱡ\IͪAR.N^?umn$5#̩쎐Ti=wh^:,È$OwH$5|d=t׿q T᛼#t C"^ dk#;mz > oGsۭWa8H_#BW=^y!uAmik%gr.Gq)GɔDW8o?[W^G\jJЩTjP}6Gi1X.k坬k;v n8Sp irUp@xKxR)VP׳,ۺTOp7n =dxxʉ-Q@GUismHI G88\d~Ǭ7DZeⳓƩ.Tg,chz3So-+WLUNPNё;݇%#?D*8.Կ~-sLg>]ryș`C>F~9g ^jlD$$ =.3W"!7Xde:)CVx9Lm=q])g/|-~nw.s: z=M*mi5H2 'z =2/sQ2b("r*-leEw9?U z+y(Q3U;~ 9 /h.xնsbؑ7[F~O{j:mX:kp&Û|  ~|C&fZwpt\r3`!%uf@3TBs!ORs̼ȫVl)/qfQR}ڋ~ȘX0IJ7BkCH۴mciduOtXA\%MGؘUVfp.jvDÜi{>d`h Wl6Tbvďǔ^9J;sMT.Y1qx> t6Gt$Yeޟ^΃aeV3p,ofǸY>#L#97|{t^>?؞)T͡R)XRp,dcbl;{~7\p :V);{B:L73 A<p`'%1<嫃WT+^@BΰghDсvGOı~`ڞhՏlA43j2P"c\ԃmQ٣E#y/L$lp3CU!*,pjW!֑.1D>DLGtА3V, NU&&1z(L¹g|ӑ)"0{lnk+::e>EnNih< ^<=ӻ)wI.LfǪwIk#x!{UH/Z<s]n&h]@h{R7rʼnkyܚd (4ЦtC HI ~DVo&J*X\])Jje0I(>h׭|6zg2 2`}G~֬~`,nT{n\)Vww$H.u2j=w7M~v>1:W\οUi-+g8\l7&O"ߍᲾwjtѐ~n|GhjڟDWVtuU'sKG UmaܸFpLDzNx>*ھ|"/M3BQ@2_)rcd#Pq&)ey&'\'sf6N[ Av 9*U-@(aT`%;)bhGKkr?`.aK""f#qz_nM"5:n1N\A.ش~CH7^ mb"daHKEإW% Pʛ=cM6hB鿖^c%./?Nғ9n "fC4 ja]d8_Iy֮qQU!F5{7#s' j#rO9 4IfBTp;E9ByfpvFMTMjm\'U3ha8Ctӻ^Y`:BoO]lAgc6nNfao$U)a:D\N1'E\DŽL&Gc>h .)iX]+G6N`II4LݥA>V{*ʺ6]Z& '%J 5tNɻPETN w6fl[1iT1Ý ;p8*.$BRG-{ 2P8z_z(hVjU<&BݑmrC',0FGRՉ U an),Hʼn⾌5 vs W\rs 3kf;L v"24o$T?# >%fGpP8 5P^mbk 0 8x^cKOd3-IC~Vz;Z~ ߼&O+D١PzƄj}&IzJ\#e8 ~VȫW ;m_{Y`rdsJ<`knmEaL F˷ }1{l$t|qQ0#PUբ5qcꜗe#yIWbKC u`LdA`#6|a-KѺwJIl }0O]RBhO[n`岸0jh-x5Gc"ёYP6/58Qw#|7л'2y`A`z?LTTStS}Բo1ze< 4WQp)VUr#= Qr!E~KZ%;O{B/so}N f^J'@QwۦQwsg;BhTA_ya.潾Ls_ze9 { H^ƹZLlRh_y_XwkYmz~ƣ%a8C}VaW.6}νGbrc0`Wm"Ht/h$ຂ&&HX];7{GD_n;ߛpw#C#9 Ƽ؛E<]xkµа]v8"ͣůިv&%+jɑ\y>L}|)~vQI sKtZ[iQo욲>}s^I^ܞy,Lv b=}P fi$x 祁z{lEנN=4f()=&]_=!sј"xD_P5Ljcfzzc;^q6o7>`@G`0?14"756;n^bs3D`"Rs:`iFB{eN@ō)`0v)wR :z:]ԅ,Q>ظYX9;Mua[Ѿ" u6>Qǚu#@zY1 Ww;w15D[.~6vwҒ7ƴ>gč]DR$vq'/.$Elb87jYЭ. &`j7.D/调r<'VIoWT5EC*o\?߆1;iL^Eo>NIhYkaGiүH<>BB0rt'0G܊#xpd$:|ld^&!ZKmawu}"XqCżK z 'yJ[r7͌a:_3Inc!{MKOdlk~ߋj+M3oFe]qĴaЊub CFt:I[i^l/YjaEK9F\-[%"qp3V\怤 K(m4VΠ~8oC>xqy,bNokdxW9$ka Ƀ<.6 3hczj- pm̩BdX׬2^>/$hZ2<#3W>ʥoUt W*l\}?c2%Xf<=q'ϖ2̫2 CQs75Xsjl0 D4 |N'|rz;}Ѩ`9孷̩"KJrA㓎^/Q2v3'm2(])GT*CL~"@WcFx}rh``tuVy-C^v鍁,Zޟ;w{ a>XRbJݶ&!J E0*f6C^#gVαMG18{[[YU|8%"yo#I*gKvHLJ eR A<D O[#ݥ1`pc_׏?rOY$e5ώE4{!;BvѯW䌶g-@ĵza\H\P* oOU!'h?=u%p8 a>6=3⟧-`\Ǥ6dx{)L@DtÔ]EÙsC#- voW! s'֗"Lzm|#DIH'DpJ]繋 pQ~Gr5!<Ϛ\{x’:l$)#@#Εꈭ>sD_/>ŒC~M-cFfh 5LL~Y$@-B4v" x/|n 358)e1(`v$V^ 3ץl ]o.m3.RwbVl;N68޹K_?(kHwJ;u+Xrk$^ ,[+nQ1\.HH k`{s&o |D i.ÿf'쉺\&rq# Ć_lkJ&1j7G?f;Ƞ$Cm%)a!@wXT xU2Y( ;F(kOMŝjhP}[;w=Xr8(@3J#Q:jDC%Cϋr2glso)g {̭ iaVzֻE,o\/8ҚKH]05?K~ H[Bx-$:&Ӊ23mJkZBj̚dbrKv8Mzo=ZgӠlŽ+A^77?e:LO{ I>JEn[&%!U8NZS@ 9U.ȑCQzg;)0{X)w,6A45} .;O٠@FdN_h˹xU22U9kGWop*΍!&$(ߺH27X.y!h{Q{ͧ:bcVgѪ>[k71QSt ipS[A)g}2DXA?y4s]qԩSUnuySX./8{JHEŜLy{}aD?dx D1"陔f?Yߊ3r8t2NUta! pw&cBHv#)@ g{88Y+=Tc5"K zܚmxC+~?'e-th 5w~IvN04Bގ0#4 _RS y^; R4Upn'΂.^P|<\h2&v|ƹNpTM&˝;H IVqT'>}6_>ԗzqACF4Wy&W9Ei Jh]s%e,y A&|B)Ae-Qf[V į"w$wdL{O܃ܜRfBydSsx<4{2SC*TZz.܇l 5 ;][x]F7?4z-sksdY?tfhr:057UXtZAV6Ӛhy;+|2ѥDۄBj6Vy ײzJK`RՈ@yIP~ #^q"G%[و.1覉 ȶbaV~d<>p$K/o-(΁g{ [yZzf/ `0\x RR sLLfK]&V"/w괆?R7"@zS/߈@i߄F-S:2?F8+fºuO2w':pJn7TU CUL0IJ}jzTT9NȩwO $Ks&7E㈎%TC.qhsAfh3)/=LS`yek+''REZӑdu]RVA.3n㎷]FK_iVa"DnfT7b4]h$Ǯ?4k67{6iAMm_Na,m2YSCM+8BiFgnXMN(:'T/O$R^HLjvïkdIՠ;T#BCJt\΅mQv+T)OAA1g2< Ո7]Ӎk5yEEWrl_Of|ç>Izt.4udMVtJ-D8 z_;ːPgQZJu$5OynTboU~rP܂w)ҽOuuBl!CFtB4Wn uAtLKv"+h?j3',Ϻsa;G[00P%j߫R9,8RF1fyݒ+7?8A>S ^<޽z?]i5VbWv2D`g+=_(:*$]ޅ$:bQP*m#6UIƮDuTb{I%u.YK&խBcEi^P^Z#Eށ4#_xj]u."(]$z7X4m0x{aڵ$d:^qUnl&F3{QR[4 >,U]^~Z\Qs3)n~ݩ^|Kc+Ifsy8ۼy[5/3Tu!dұ{uPgV=)ڗo;]V Ϸ7t7,ݿ)n;)?g hTx%zaRXޠvHp>Z<H{v + ,}\h[}KZ{E m{u{8\v| @c.#~mq}BfO1lȵɨX=Hc@B[ u&tv?&+R#Lqھ?:ޮb( :#Z'`Kh R~f8T]#e\`YXPH)#ojs 'Kmߣfk +Yi'm5fyikDpЁ骣|T^g%=i+*yL*z6 Ș\;"D|"}vR[ڞEH6$*\bAP|>˺YJmɝ>Nv71k:>o%-)n nǰghXWYk!$UŢJ5Est piqx%A< t{wSuuQ 8Ch2T Qdtz$r]n%qHgTrү:])F(C{-/V o8c$qiw%hŸAjDž,E׺ gh M(ŒpŬK^2n<L{+mtiRBjg H. E<]OHA|b{31ugc6.uM҇%[^C"ɴ`?Мl@OhЉ5ZV x CpgM(^<,g妳r5 k+JGBfC6>Owؼa!j([mjU IZw{ZY(LV^u,E(*ЏPC)+礅mxV`ˎfBE` $ny{yS0x맷KG@Wu]jnr%Õ%߻wu q b%]tpUt2 OMQ;R5(̾6A(Ny(wno4nfEm`2k9퇌iL jO͸QG; {(c].C\^w攏 hXskws|{NGU/WސJyd*=? ɫ\Ǟe-Vʯ";@mL{aUd0~Q:;nD}4>eW⿴n>d2+;̻_M? 8$TGhh܈#oJN sOl}~R p),[7hQY FG90ڋ5| ) V(3 sGY8g 8]tMQM\)qy\=k\%bd^db_#мqDS z-_֘ B3j p5@~s J- 8j,qMfD=v&qA> 0N+HSLA4J%| vx)IuG:"Ƣ;o1^6Q$0ח/[դͷJ^޽k#"sK/0,bY> ? \ӾZԗ("/il8Y䍜 #ϑ+&{,`]NW^R|5sIsVɳrpd%VyW뼙aP K9=qRLﬦ"*d$wݙ_w¨KOĖx7E8a軂mɣ *ZMmt͔ttXNdNըN h2i-!1˩\;}gJWhu(3FLK" y eX=*kR-H#['+GFZ;iH"&@O.Gm(_ݟq-XΫpdRvM i? -kPR)xJYr1E;.gM/St, ^*|@%>T&!A'7gٱX0X:P< G{ L)m]I.:hn³!4N^N>"B,#yjƟZӻNӟq"x{=g1=iI8 Xb"Wp/p"^oiiR,I@ M!2fȃ:GdB9M!nKAGj1 њ1u\ߔPRKUQft54Xp[Cuk;3H Z ;lF2(zwGj "R2 "E}XMxR-MW1wd/G1\LG_n_u{BR:kpp 5ᛨ/j}q*fFx(N|3'gpԌַTҡL]Ri8pZR.bUehL{Oc6̥5>KZ';^νO]/q4xQGr5ofפ' P-j!0Po> `1a+ORM]zV$m>hk+čI+vX^gR7x3>sr~4l;af٨ipZ(yZ"m-hc_ ]޲_y]ak^ z lOl(Gj^LbԼ46@9X"\X7oS`ߦX9I̺RXSy~FLyg@ʍF1 /+.tYo(0&J>NM L>*cltydZsXCl6ymq)&Or|WUĹR(݄Ի@sw c`LI4'Ԇ<i`ه[hʿؘU8wУ;l=JM4>0Ȁ=|z5rrbx S赘IZ>xZVEb邋WZYWgm4D#t7}yh&tC<"g*:1>MFzHhK4m0M?F#2+E%bK\&6۬_5ϓ]`V`ZrKmZ2`X# A,n+._;Rɩg+:$~Gi1Cj430OqvI}C!Q #29-Zy^i?J1@Dl;fa2!7'({5)E`"{I k뚞s`IfZ1u*eFp Q.NM}3핟2C3f,5y(G.Qǡ'C]Zo~(t69`<;+'j]4l 1" [j<88ULyso !D]끧lIf*rew:#bڙޖ#;sZl ,ΥbNw.C>M9ֵkwo͌x@B1v3mv #b#‡bb;5#kx' !tx]4x’HG=GRd@Ǯ<ǰuZDUtXnex[N ,3Rx׃?#w(_T`f:27AHcTcɣǰ. Z^vc^;M fG1w.bw.Фqs;Y xihGGzWYkB۹F/jqdrOCt W^GNG83(1)qƕB_zp,ZN1 A)d 憜{ 5ȓ@g {hR~P͍$ 6S>J` bI#ﭿ<B&`xq(s4ZЕ3ܪZ4+ œ.ցB77_JO|lj:b1Sd3]i ls@9;W7 \U_{(o)6ʎG7Jѩ:-KվELEW>Rw C=&[W_4{+07~[0?0V+[]o>rnIO.׏a?H*6cQ]#3&9tuiX_hC$-*vGV:2]^Wv{B$ otbyM(7燏,Qykx@32B`]u8M|@㩐b8j VBg`$O\N8ЀhIKPWǜXF`1$|\:&()fi+x!?R_;_D+.Zٻ8n;h)\7Bqxk^1Jkn= D]ws"ȱkRTx碻ZJִ; Es t3VNP Sz;#uWgBx|g eD0CkW;-+rKXzUcy2bR:A6$5J*|x)([۳Cy̗#ptS_w1Jr55᱉b#N!ᚔkaV\Y歐Bh8FEMݚ>hlCgқ9i9V~Ҝ(?һA8~ͭv%:"$Q/sVQd/ӈ|)]$yVPaѲz\@!k///tpߺ<ζ|S a8/#H0}%ܳ 7KXwdۍtuA]{YIma~j_qܩ[[3FjyL/ ECɄL;ـ?Nle#/Ñ?rr4.u"Q@ྡྷ%{oAAqغu*gmIohw5MpQ^(iW=Ui SO}*3Ndg G<*:A\V31iudu %(yL/~O>BHcz6.\Gc: φLa>6R3CD?(OEyv\儎J*z;2EQ e`Z2V%*_T^oͱbvG>; > ~'ex  m)@#xJtI'E|[qkC*{'KS)vQ V[% u5]HjOJQVDT9!dP^ MN3»aEnc x賹+F:œt\ [L[j$Wwo 'sL~P!Z5G{h[P ѬWn@1|i]=n=vYlNyە_`,9KZkE;-lhRd|zE=aKNiC0KZK8?ojöy-/7s%S"y&Q:0- iԼKjN+c}!3g/d@dmT(k J{#M u9/)uծ˕Ls𸃧-M"L AgK^q^o8I/>l@%2@0U懎$^0}94?g>gbuooV ڋ6=_VxWs&&d~|a- <6 77r@ M$W[` [dz"C+t&joQ[P|ɣ3ޙ{[C '\3}@\S/~|8hAT-(«u9\c^/$7hMsEfsh,r'`VO%띂vXsSJjU~wAt ?ҹ%sqX{/x+q-^/1ujds1kfwx (I0uQ00Fݤ-]DֶC_Hh6+}%EK9</W\GkgflN.IvPmv/*jn Sfh+x|l}"u.v'"@>r] <a]zB8.( %?c~ EI Υ,.Hp#"Q- $9ROw 9G:"3ۓ1z$6OSBDHάɂV$%J"',mbtuniκgYex>2M'!a4BJs۲28;ڰMdMgU{{ykOb:k!)!Qu^6.pZ=\#vGH8=5@Fu{b2fpYGՉLp_f``m= ;쫻 ?,=KNq( k1aH "]Sx |*iPc @OJ#,mϻb`s gy5 dd 5Ԧ7d)<= -3n (Ϛwfr| 3J~ #Ocg'y^S#mx ȝvJH)^KeaHh'^a|ldf;tA:Rh D.^QC1";)XkNos7#?Q@2I4<!!0@k2o`\}շ_P]4oD!0=}7yRxEA%0xaew "έ{`FbTyeBbӯaPFH[e83^Fl6A/mL3[Fe\$Ma 4js2ۄkߑ_ySSJJDc7(v{rze~sg|/QܸDD K6 )G3 -$f]DXH*;*P}C--_ JZjSKvٷۇ8g!<>{# H"R ÜPP|Ԓ0)Fej+U;y]j(E҃' ]]ZE%?|EmʾM~֏qY![QR2i>t=^-q~OmO] b XU~}qj@|pUWC'j86GHR6~"S~[ѱSsg @?J8kкFFݼ$4y-,_k(8T]`?mPy\lL==oOa*m=@oQ;8i)(cSjw QjS[GvŨM{I+_T>y07?t5$Tl=| 4+Awm]kk  t%Hgo3NH&  õJwbXY<xXj3? q|rW%յQ[d5jwq @{ݏ?(RRIݘC%tY{M)/'r6+}* lf(Ꮳ쿯È =vWdVSx3[(%뤆r]fFjakm ų. ]`+p5`m B h!sR'̪o\YL=aUwK 7Oj '^Rpuz<# dq( '*'W>kg'2)ogӔ3Xf$Lszϕ;dfnXo^,x l)~]'!NCa L^)eCnr%֮njOUcoނoFi ',O.dJŲ5XK%}鵚t򯬔U"{t>åpYˆU z*pk݉H;U<`ZؗTa@:(B׈&KݗSh)mA}Xۡq3-w=Oߠ-NI!ξKE5r{#u[]=VخBMU 1}JNL |qe1̈́+bh/6PV;4Awda@[iƎǏU- 8&Ao+r~ƵG&xG' 4`6 z~\; 1S. %rUPUA(EN]]I`:پη%&7s0$UVbC K8]Z묃wd`.:5^dBg^8_VbXNa|P-hewu**T76lR y6Mڜ!()LD/Ģx#Sv"  \ cV`HBiށgL#ڗ U9NzuEq:22U)9?VnPY5>|!E˃ͳW~wȎ|@.mi7^#Bd^E-tŖ"i|L6WDq'vo5jȡ]XmZzur". tR5P4y SwDn2ДTr>ƾt1} TN^sk~)ˆ^]=VĆ?c-=jL8f(L<ׅ.AFe,JnDވ>R]cvѥEEBb .!}Lt>W*ᘡP |Z`atFL6e TWH+.; Pod}aYF:W%ڶe(7Pfh. eZ?=Wz%D#E.{|FuFI]{X' uB؁?eIjԖwh摾Ѷ"GL;o v(pDzTw9V-v aHj# )Փ޾CIr3 LJ&gD*I*qEfJ%ǠAÏi˩Jvѵ?J 3WplزΨ/\3&[eݻ_Ru\}k}P|-WrgJAqf@6 *! IPa#_x%_&:ʸ~;ʀ+vUnN\dD|0,4c pewы ,5,J>X"bՃ\wH]<V}qsM}B# T9 .z1% <^Ry;cv.Ξ:3.VEs>UT8}He^*)a4/WT5ӊyzIoT]ҚxZRqu<ߊǑtDhs8gc=J .WidUuϯkH.QÀR7~dFhrɨbxS ߛYPB ېdrQC%>.^.΍eо `ϯOcp:J`uR\=l:c)[voP薯i D咫bt4*+[+ihjekY_gG?V<AIOrpC>%iKKJeXbY7%г-5BZT>4ZhT#MO'K^~wX2 Kŗ% ^mJU_+{]*Oz ,/3n-f[tD˛R]|Āo#0\ʸ[dz x"W kj<:bG?PڪtS;,TB-<¾62X2g$yV=qwC?Z.;"TQ<+:PGaS cuLJ {SmZmS?}$-K&<rIڹuqq y8f}\kts4F)'H{ BHg9ݬMuD '(̷Dx0IڸND~DSJX؁:_(;B_+2aՂ\tݭ GdtEl#1;=PKYz1!ɫ v|yp,;tbk?¾Ȧ7J,"2ſ1VWykV2A'}G܏@ںjt;'ܴ͠  㤄LnM?lbs yd"Iڻ=]V#(phXg4GoMc>4;2W=pw/H9d>f8X?mY:S'N9%vS얚~q2 PWe J3w9dYqT n$TK9{4Xk.qIe>  \tPNs#qa"4ܦ=W oWtIٹ;emN r) Qצ 1S}{fsVIʂA[- Fllo,BY.ׁa.5+NtQ6චVߘ8ZWK/YSlH5@>nFpDm>p|GWМFu,qeX&m$y=p4uGtSxVgD(A|F˴>b3.ǻƬ x@qf/7݀R0NS7Rd1`Io'f I:Tv[ؓ9ӏm,)UBAUWMf> Ôhv=[WZ씹Rn3lԍ֍n2yh$Zh=ZDZ분cB}Cxd/XFkvX,Y,OLh[or^1:%&^]9By$aX^(cDxWZ^6ygY!z91;Tuslc'O @8G6Y_13T~^;b@5D?bftEvhMJH;v$7S{Sv6vaVCA3J'Aqb5*-dK) -h//QMeio$M$'K^Z -Ҩ9ThRa4)EWYJv "3tu+bvX!$]}j)YK"Xk<5CU5|lpPaB6- QOb3Ź >d{d%iOjúXatI(KȽ8,CGtUaZH~\,I*)?fDNQP8!{5bi} T M1>'Mhu`u7/UUGUXUD Q)ՅG^,j=7H|Lӿm}gίy Cr`K@u)f 3 ym@gzPڰPrw͂+<=@I!DO*l6S^=g?"=[} e4_Y:xxfZmMŅc}퓐Ta.)KޯJZ*&2l$ 1sbUf^hb<PŸжK.5\ ʶ^CU%|Wk aa)eKt$my"? 0#x Ƥ^+=I ʳ {oY Y[[= vlE=vz=دAaޗ||SĆIQXOS-/,MZB0Ǖ N+6Śp_v.V"XHVg^PW\Z*B͍uYս;= zdZ{" :th6})ˠ3=US,te(){ly tTu['`2&ƫ_9RL;qSWh> -Xe O/ڽ0kzMvr9)jws%KfTOg$orrj6/`"N4ݗ/'$!C 1u]فD L=ThU׎XxyCjnEi3ΦYVkxA8u'slø`GTo 6C )ɢ@P`vSQ~a(M$]+ _@d31M!N=Ԓ38ECB˅&Vł8pij3-y=ڋ4cm澬EY1ZNG D5a'9%l3Wl* ))N'G)GSMdjl1,&ڍ5̵V/NtsAN 1"HN1Y&^Fc&W%:F-OLQ3m )ܬ\VehS4yqaf@`5|2;3 $ao* _ 3cB)UgUwWa[1 z΋; DAGv=΂8Z:h7 eZE7^^ou}ޗ%wW9X>ڏZn%$.yu-?wP>u=Oߓ̅_'˟ lI_.Tqsa!&x@Fg|*w*p:8n?}Qtus\z"9S}Al7.@"M,9e%;*i[> s8XoM+uTb=2O?8a F[|߅L eRqNFQ̿YO'rp\fSā-N-(l=*UX>(hĪ? !+pˆxq0b0=lWBXR &q,ӀzTULsn0hMdձiE &DVze}|ccf^AF=Qvlf_,$2zWq\ͥ/ SoFP*BT$-SMTvU'2z7jae;uvcxR"I_R֋ pv6x s]`]28R \vUu+̡<"(2`E07>li䴯)LW'1,6-ՔIBKC5#u(y4/)ش7*Izrʁ桟v_;T犼C!|y6bxR)gk^L+Bany%ZZYfSc~=iLQ4UZ>g@,7iOq| Rk}+@EYXP;aIU ?NMc8C!V5g8twΡFP))ۗ !yCA= #JWL+"'~I"cӧعRR7ŴD2%Zdr扶  pg|l޹M͑bs @չwl DK"[3O8d4j_@IXn2Y1G0_P# d!R6r>j"_%rE}LC5/iEP AY \<oU^`+-P܍W.A& IȘ䡥7]G_U*D>dA"pɫm'^_k7Pӥ Ef6]K8BIZNulD?2!& (5uĜn}kZM~=ٖ<}/{"pVjkKw$]  ?@戉w m GD1PU!eϧQ֓x2*'v=WS+m')Omu vF4Ab#ʊrR}P?/Uqb}Δ@0 s*bGQa-NѶxu~eo~H,Tha_DtImlVxvRS#oH]9J'Iurks*yw;N6Wa've#Ţ̰,cf KyJ:iȿnN#  P#7ϭYi4}5/A<PH w_Pda "C!{7+auc8& +&<[]BCpS'oy0S֦Tvˀ+/?&j=WLg1+ _nHcagnM v%6(E*l򿡍Pۏ϶H<Ƃeկ)FGa::SS{ލZG"K7$SfWՠ>UGt!u1zгTn ULfYP?7 ?$1t!>Cb5((]Dz|Ŗ&Hе%2a ,NNDINmW^#frIֆD[x|0GC>OJI fdfQ S]n?A=qV ÑQ*dZ}Lx':,깃cMEݞ q&wW xduf³$sm*qmYg8?Zs{O.j.cbc|m$z=GmvΊ`&,Z0,Kw(Sj47wTW|SSѫx.C~ IcJ!Oх:ȎX6}jN2!>JIٵ1/#Gjbuf{- 3! PNX^*f:zāz0.ѕQ[P)zE;sX8Y *]LJɉ,aqpRiϽC7tgP/5QǑuA.ke!Q(0P+k:~ O*cU("KIA2 22ʽg뼟Fa!)K'Rdj#"|kw0"tςi*i+k{" DBvܭoO;+LdN ) )PF׶FWhd'ٕ9<3 :ʎOH0בG:R[T O0iZ~8b"OhY*BayRTF sQ7~}tX~wnIEQ MkH??qKޝ9` [7̂zKSfr|EY* ` ?%n~@; ^e_Glqopu#*R&  @4WbKeC8ߐI5Rf08{7 Ceݡf<`)Rbg{;y-daI5>+,;C4:*֧AO@rvyN?Ls< _C[\l~#-Iiˏ$9D۴\dKHdNm}"E8$ǫٵ9[ڌ|hkK.bK١wrQ :zZc'1e/ $jb-s\AO>?5\lۆHT\&𞋐;L)7[C=Fhpu|&OB cz,I1n o5KƛG-Ϣ:*MM?_c(rcn%wDU!^$ET,jN8N+v2MXGO]na+<6 B{I@e(6ʌ e 9}Ϸ)spkN:)pn1uŔyq( OI-[djGHBaS%YD.YF A,H͡ os?3lHu89dnh|qA70\:whb4 3A޻:wR-.<`Ge@GaM>&<͌`M-γ dB[.G 8|WmḲv5᭜u,|O䃀P>x28 gǧw*xF Ӊa') ORS9_LGFӮtq|]ͪl89= ,]܋MS5/'Ȟ7$|RhF&O2m{ bHTjCpq}`gig3f.h%b_l' IGӆ 2m䇿hAy z-V-ߍ%Tekps(W=E Bw@кO6X}$b8\ C!Ք ԃNY-:h|vG`}i"E[JM "(nroKI VyF+af ZI{ZymˉA[L : T%EmR`E!P\G$شFJCxݿO,P{8 ֽHcBU lh"emWd$.}:9zaӦA 1TMFc;H5b<9;ۨC?fJI) ґH};֚ pgD~!¤ZUHk$EOVn.SVz)?/*: o 1z^=K%)ͦ}\%^KOu~jk!sALG!S=L eʈ7# uQ`rs^@}XXyfקo'ZuX7fQ25^[0ߴMLQzWLq` 2@Zu`T,+EźD z3v`:_(z6<9a!Όڶs_O%h*|֥f:k47۪e?Zh S)ih 'gֶ&6S:A`5"cՖRcNW9l'Ev˘f<9I"Ww,(DPYhWnxkuݑw l41cSA8!&hJ QgnlvU&T'NUVֱ1CLȺK@t/+]HZBs@EtAU2`׫a,pZ.X Hcy=s_("RyO7}VwA=$ To L`]ܦVC&VB? VPف5P~\=kp_Cjhsmq}Q&~I+d'1prH*eWjrbŴH.Xꃩk{v%.2^K2H[z}vͮс2H JHH:?;mo…\uD1!IAj'<}t=Ywm{{w AE62H|i7V6^դQzc.hlǓe#âX¬x `MqqGJ7*wOxW\w GCJ3G}; + hF2onLwXhpm~Q S"(.Qe:wgAR1i\i3nY]1*:h%e+*kiK{dZNVMH '=2" wLW[oz%_G6my8r]JORy6:g9.ICX,k_taU#m2Bej\W%4r94bRzr _Q$GBPECg5$xl0qHbK0nV(jMN8V@9pX@kOs$WXazE7gՌ'J͏Sr MTe"0cVX& Y#3Sb$Q7Arck\$Hs0tL ]usu"3m49q)h*I.=HLu%4Olj;U!+8)BiLr~f+{6_;R%m)|L #`IN u(!)UO{,` j h%n<Fm.6MG/+|I>~Pu+1EWF9Aar¦Š!Ot-/>~egs8Wl置*/LI<ҺI{*X8CD=KI3h˜g%rRJlv?!@] q7]eχC1N2+76xoIy3fosd/3ԙ Q0, q ” T>MM:ual1&}@}ʄJ͉H1sH} q%sD $Y zP{3R,l?+zb=ĩ=.xyZaЦœ Q7i#7ʭ a/2""FRV]n t+#Qrm˖]+Y5g ]i-錼`C;.Q76N}3Ή^1Sa[Znl;†0Jz]K &ՅX-"ybznFnbD 2: a3 φӽ&U}]ޤ{'D) 1QB%:%tfB%NghBBK~lv.7&"0֋1nyŠܠR]ZQ1HmN ,^2dݙ,A7Fmb\aaE=TRUPndϣZMpS*{vd<ǘ#i5lL eپۏ8jZeI$ ͬ"RbQ0|tS"@bQhGDTUKS1i W0vY$)yIfmgu'"W"~-yXeky;.Ͷ\Qeѽà3$C9'KҖą_mS`AW{SD)\&_7&rgPp A8NWKNH:12Gx%]N\s7e t*T_?AzߔRI:ZޚΚ3vmlvn.@, 6p/7Qk17` #v_xF۟K0QϓH&Ȍ/1d6:< gMYhX JpH\M's-z.R%Dr=lAvƅa)e#87 r` vfy6 Jn)5y}|I Y hHK#~_2d_PntV=n飕Qw˫55qD_َ,'eFpfXzhX alӮ"6ҽiyyLZftV3Swaew.%:eGq38ZzG~ZI_ˤI8''t _7L'tOv/ozeb|e-iU7$­܅\!vB ivZy.A?ThnI!ѩ LR%/Ʒ:0 7S`lk'Ꭓ1PF)ULxz }6n3ʹR ʓT8vMZxdc!n6@7N{z88I9g}Pos*gGݷDqu$wG4̖tqpD6." M< y y2UBڝQk9 q\ M G6Q¹Uqwج >*Փ&Szh߰TaԂKv~Y)6Y⮟M?谸=U+bgl֋Cgj޷(TwsKVbGGr@W9zqџvTX Lڪve 1 u|Vu9E[PspRf^#6D")i()\#<~kT/՜Mff>3%;Oh/+s0И3O=h&z(dp2OmJOY 6T&vLªIzGUx9mpmWQ6E7^daeS^&b,;ۊ~C-r$p"oGDaL-{J|7:]~iw%&ڬD]l+o m/vQ" U rDDf=D0I:֝,Y 6lݚuWDzU]2B}pݟkTr*]T*$8Lwr{'ҠDwø@TラK0,I j&Ԓދ_ݟyxS]e[\ 8:Zfv2,?!̓UySy;DR:x"x~Q]K`~Ei A: ;_x|-'&\D{)I7 v?v`q(d~#Azx#g3:m^ehH4>(]jij*!رm:ڧXK'+~bډ<%06&uz,{p6jbn" U`h#ѱE}^H'(֧}2Kqk[,h\ XTos3pw5!u'J!f~R3%Of+YmuhfuG %ëD %hF/@wpkԮ ,0aAY(IaAMZm@L0uCZ5 0pHD`R-TX.*KLL~o=h?oMaφ9xiMS#}^TH/ڣ ^Ŝb_L2佅'(5Ϟ>Xˢ [҃Ij6 }{MRvH&fFҫ(k^³z6)*%t-kM,"nJ+"s=ݽ,5m ge;k "c BP듛1OalMdsO4 _Nہ_$V^SkV~i Hw3՝ ~{6>qzSX9>äZ@nwZe%I9yBBIxfj?T+L[_CT$\i@ | #-_|]ɩ#d[E '#,63H"8v,Čfmam:8>= &Xlx1a"p>$Q:AS|9N(K[Zh'WxM(?fc.C=Yi G!:n?miS&t*d;4;7LT^)pDFr+X@ref*;) {ZiJ%w?On{u|>#)DKּ2Q+z*ŀI n<=FGV~~3 Z5hxqu;ZVÊFQ̵RxUED2xuiDnT= ~\`gDYKX5*]_b@bȃ jgz)y`\f|Fc$ǒrh ʴ{z(UzlUKb`F̦9З Z'Q=Kpn'( |!K?z&c^?Zρ~6|e3F0W3i.*z1/O5Bџ)!¾Gka(F_gpgŒě8lGoDzXp< GSDrVJ}}U@QaٸA s=l'ܽu3(UTWA-P?mQ^ltxlf6k5@4@f4lN(YIu>9b1 l`⭂_ 6x7OW.Zy1[;ZtwaRO|*? cmWvU8+h=nx ^}nm=07Cn7 l2xq QjEs94\԰:JrGHohPBClPuuWM~!kS'Uv].(MA"qEc>\ntp*3Ѣ-͔P:Rࠂqj"h|S;ʹՁ=]؞u+v.I3wu )0P?çĒ ='N0DC\k &YKE˜G"3]U{,8{ObwSq4>%+/6kKs'6("}4 bh|B,md.l|; d}< 4?AZĔ|e#G45v<ĥJN_>grU3oq7opg]sc#9L|KPuyWh"hM৆+2lŐ`qZ!(%ߥS$'7J7]̦QXE[O9> Qe V)xǕhƗ I# y kc>f3geAzΧ@0(bQSۜ(B/ ? Hj&ִrGBrV!K@ЁУ }bx)+¥vQYq d29tLͬXFDUj=j愤+wYHnzmY#W=0”=~O]wCf܅dU_%ۖ8 0-iO1Peam+fEe M1Mpk8 ^yXkBi2eHP7-hnt܌r9=˴׼I=n?8-I܆# pZR? EA5*IEV{ۘw'ocCE"&P6;FU (5&jV 5 4t#e¼#٫I;>sr! Nx 1ޕo_?<7u|c6B-6@X6 =3j*<[: \̦U }tt$[Iţ?"^ћBJT[*nztA'-W$^EcZJ7P+V8soX\x\TO߱pvȑ"t U .# h6g*ߨsX^avDz2(cD)=D֩1*)eգ>>^Xqt_89bNP jz:@YRQ@Cԯd +NdK>((ƟTh*Cb {G5[lZ_zp"7)7v_a'8X4f녹r8~][/jJ6{H5eJQ!^}, I2M"kS'MΩ*ep v}϶2H2+ԅq#j9Ui;GCu30utK(^[A E1iuNLCm%f\:@@ 6ކ/~VUtIsYoX Y?;^ݕd/o֐T㝠u 2vebJA?8/5XֵtzwoMf|A$KmsZ@V莱r%O>Bd"ݣ]kS37EOY7!4 .yBR}IѹEw4=~+\fvܘ$&тU $~˧5<7T" H#0 L{>nR6٘k~._9 GbshMν~xz`b}O]CG/& pGY^2%Qe@2#7_:L*BjSg]PbHRSm,.5;NWͼd6f-(&5 "+Kɝ$odغc?s j8;+mFյtEp#R*e{u=ChyMsi̊)~MzLwG#07A't0"yҋg]`ub[*K_qCC4MѽEugE8\T&v -*U)9Ŀf ѣpdn=VH, ,!CǞS/[S2S;0Thp\ujS?nE]q$30*xnm!P7\#jm2hZ걐~hp#k#PzhsE{yI<*\]OzL cv#!.1dAһ-rg-;̭XUзO!u>yfaܐs4;kqmM|r:uoZ&be-#ℷ@jd*?4?_h_3_NSهྐྵHo:uΈE޸'"iƆ%yec+ >3s%FJqP> #!YII8CD)hl5+t 46ĉi' 8"`qI۬z?gTu1<2ڧGU/RW3że?]5,Knee2 0۫So⬿v1My%C')L%jatu}}ax*P{I(*$*^-a\ߊg՛YsZeXe5ҺWIai&Q7Q2)DA (z ٯH̊(yߒ'nj;f ZN۶ׁ[Bm^ #96$8t3tl YmhsĩUIϚev'*1캃UvيB #ZƏ"O#?K1էPfܫo;lUuR&|O٫li${4U}P].^WhYh Q&R X+n7 6'ZgO73c,z1JJ܃`9Xm $%V.Ӷ.qAU+_zh8j{.E}%lZƒQ.X=F%d'Sveky E~j} cj(Ԍpa" 뼢0xH8OptnޅN%(]@M$8dn`_=_ :|>a&DjвT&*CO-m5 m3ғ tXJt8,$)t`$=i0zJd"IamZX"eh Pt0<Ҽvpƃ[q]wgR[uߒ֟ n 4Iא4/zbڜcGcg4a:~nqy?v8di^JikG!,:lyG7 h#QE95qFt fL7zHIFYv3ײYwIv]?,;j-{lL6d^ە G*޺SSA~]5Yq3 ]&)~ bQw;J{Y]AXe֐3BY)Zy;c}ڿt7qrdvXo6:Vu}3r$A(e0OR'/&,XBϊNS,J_\fd0ODT>'qd`a-({wV< ^N00mprىWü$7\ Q4W_:'07bß'SCеfgeH#($p~AӬ }sf> \J<՛v(&de?UzLꌆ뱘m 8ya̹M71vPaQ*y0DYIЁ^ {U Cq4DgAe5:LL]SJ5\ay!h$9fI$:m:$%@uKM{[x;FfU27.ͺzם M|?;~R|;UdјF_JkӦvg0eJNCi:վLh]=N ,ϮHuw-hϻfZRJA$) Gu\#fD|fϖ*Ձ?LW,J0UR/p dvCYjds,YyJѷT[)ZeŸ&pnmYMv|0~56㎠LmTbQ:@-pŽ `|kJE(Fq\_Dh=- XE>*) ,_V-4@[7[$Y{! v-)Vdn^4CID_2gz[/G%b>aMV%k ]"[@?gS[׵M8huߊSsq<&[&#&QܲHy}jsLy<[7O֒=nK ,sT6 z&=Í(Rs\1MGᲀ_0b!>G~ bqK]ÀV߬ VS7 ~m/eMk,sWF'L[y_f6C$KY ږ[rOJWH%1@ᰐ\VaFb-$ 'ja#\emE5L\-CgNK5DI_33{{<6Q;c=@ΦoDJ$8TY*O48#V(m f{OX:F.J.\snPSaB4u9 k1*e t$?~lв Qv\-Ճ1$ JhJ8r qcFF6 A~H`kS>tYGvsR٩ wiv \ΪYn93fOS4AFi1;mU7B|k8J`bl0u}196{Ҫ幮tL$pv$-yP[/ynՏE~N蕣ғD/O8|N%/FBC#)?!v6JkH V75 %iё6Z MpM4x-CŒ-6[Pp,Gb(;P_ OJp`+5]n4CK2γF}52(&֣ 3jPKh1_:S?fFQ[g1Q%:exۓzވv$L%U-07(3{= _!0< o`D1B~n*n`} p^5aAO"S I42 f2D{>+mXlN3W۵K4`+Ԁ"y.Dc*BF0v.C9;: cd- s4+#0ϵO@_"ZAy(FVn)RAw=@]HW -S3G,5J#;;W]\s)=iRNG(pƖ=i3R]>#rܝ- .r;33 +ҟWU@N{5S~v Z݄HZrc؜Tf6#$3]˂`NA}; 2ѯւ0(_L?&5)jc~ FԳjlٖoZ(.q8t5MբMSe+N_TdGxJQ|'eUSM*. ؗU1YIcII r-C8>JS9^X,X _ #p{'bWad.q]xArX "3w~uf#"]C^9=EG6"x YG +BΞVHUt0;Mq]q3) kɉb}+=bVn_S;ٚ]V]&{Lؘ Sg7i_O+vf9#Y kچwl^/Bf'*_!|͸>Yf՝13ۃ8"dQhVD[ w&^ ^%%oa@{ Ɗ{Xd3ۃ,ShWޏ1Sps#= >;&zDqV !Ӌ5 ;b3wi q-6zۖųb8*1:Jt'*.bP^M%_,jy@M<=ZʽgȬT`SE6 el[˞ԍNKI2P(q<؋MJIA T ˄r^E)M8z˜Aa! 1oߺQTaq'Ѝ͔+-gj*>bt5iTyۆ1wB %^|^D9 Jս(b_8"MK)꙰f%Nef$no8X_4̬)ۀN՟.W 0 oګ4آN9 L%1~|]H;>5%/6p|, HgޡzӛS;zv8-v`uFgjwe)Q {XvX/WW5\X%(K"j1^<q$VouUV(]l)u Cބ}"*ޣ. %V剚"dch\dvrhdfIQ,˄!]j="¨*a,VV4X1#yvLaPkw.Fing݉/:l`9VJ{fO}~xlIsC841}ǑψLw%a"72QxuΡn5^iW_?9޿^GF{.1tJΡw`oQy{}}({#Y1渳Q;r9;tLyby,eӶS[^8F kh8ݲޥ*L$5 8)z;]_GhCDaYx雽XRw@\DRFxY=?Ъ I EqUDc.D8 {%}992QIħrf.by!(PO#9d1)1Nt405(Ntx+P $BPW!~31i 0~v(;ʾ &rknm = FeXفWwJ,c;8 ETCIB1/Z@/cvͽuٯň`36qӓyuXܛ?А/XD߾}W]RJ/DJS:¡ݏcd$t41FAJIIɸ4 lc%8ܰ8u6ሰ}b[N=)14n3}3-$*MHO^&{mk LeABóQambz27yǤo+3rcVKڕf8k,6CW;ӱ[mК *3LZ,ǒKJUspTB;#MD*[G̺ FSfDk1 U6l>HWpmx)ځvm+&  E&3s4騜Mϐ>i H1;U(” <=n+;+NUYARHFXY!فbrwx M ~j:9[*ڰ'/㛺E<&rx>CLhg% ~RO:Z'8?@j+2 T$c Xz*bv^A+RB.1^,e K~,t~00Fēzlҹf,P[8fD6וeyE* }g(X=w[=xÇQJwz.w/U;@FuZǞFm2ȅf,5-_y B|$:ΏMmpgϫ*v$&jNl*⠒g5`0BsӭmVꛝTܖ+@FŠ\^u ̋Rf K.٧]K:H[LIpΨj#{7nkWSO*j<~O "P=X5iXY>U-f𤴙[Kavh':dVj%|~.n%MPӴ,$: g2rяTwn )z__u~qS6qpO6тȕi91,M܍_u%!TPiXjyF-~!!y>*Xɞ++%mЛ/2֝6)Ћ7MK2@M=\ch\' Y.O~z٤c:G =ߑ#dha.nlz_tO]_BuE̔b5NZDP=UMj#:f~M*/~% u\V|C#9|!۞x`LLglauSH-UZWI^ynӊh ]~ Kk\*s.GNG 9GWYZ8/og7@Jk9']k4Xt 0Fyb[oQDPӷ:{I|Ԉd}%:VFDu*i3tĉq`iXre h .?</ *K% oV{AD0*xW*M }@긅0Bq#EM঵#H9 */{Ȅ7YZбTP"eН*2:< !~<$ԩAP&?kQz6'oʎFG_/&?F"KXA2΂VbKlc~Ԭ ljN)JqrEZ('W|WRie{)~}r)1A[4Dq٢Lp_E"}BdHfc 'l8ԥUë!0럄fWe^Y?ī[P]g`>=I%f'xfCDp#a$A5ښLȸJwWٓ:O~7;RTNfϞB¡}onL첰.Rp+h[:Bu{/p%BY%2Bz]P]v $P&cafrM#8:dmƚG"~SA*< [֑"_r4܏9M&`_-y+infϹM=:] &Q:,[_oY`p킊bI/pڣ#Xő0l tj1r#:NTcKbN-hvDYcOqD-i}Xc[C^"n!~H!r&gQ,ŸO ЋL/=-; }WIUxR'swGg}K A!K\Ppe47mg,c2-pP"G.`A]"B7})`f>{ۿeܑT[y0 ZUοL61;]Nț)*{ⶻ5;TmY*z).ȣxeAKzs#JE VPJ\TfvRryx'zs Z,Kl0P ݗsz)"vjP3ݭzB˔3[،'\,NK!o>~Z0!!|-)&FݻdQʿMXЅduה E\zZy6W P^O*H'!.ǤGZ6_pQ#m6eM[ Bc@-'mgL 󵷢x)Gn[G>lJ&:"I0uaICփ0WD@s&q k0Ar+7sjSV>yc,E'6S IQ=e:iQau'ڲuCNKd\%,Iԩ~v4=4[H0QfV}0V\/aj/nZ \RɢDMC|}x}:K|=,dz9!A4'jqXo_<ƜYo C>)n';$cӟ1|$eQ&n4 & V2;uZke0yD?AyK XZNLK"!E;K7xѱZ<5Np@ƈk3_j!:AAυ Y*Z+iY6+g"?q k "b0KfJb* \@vCsvp]3OY#bk 2L-R!2 >LЕl`h ;YC4MYPj,]j->ZDsth&?ivû35)l,PHJga&:2!tBU|(܋å;Cƾv=UPr7`OKp?OI[Bk~Az It`\u*WUSVY:oؐeMuh Ni)X"m:`Eg;ʾ"ex7c'FH8[%cX%trmPlN<,{tܔ7fװeKåƝ/(S͠ܕP4ȋ~Rh1eg'=bpbELhE3HyIZz,Tg㑓}uqPM;A V '!{pDt-ꇨq3/PY߅O(͚3Vӫ{]B"AQW cLpyO&O)0!Ewk>N뭭 ֕a:wo-;RNNԞ/wfb+H@J{7K ,mKS]{O[jxP F-w,?P dZ&"&X$(/IiFV0].2Is /2v"„x Ҕ3gkENR/I?'"^חֈcbX|,,fU=N_!=9 D]~r廊Vgdvn J07u LT]}.qDx&˫" uK{sz?4؀\Pm43>cD52bkCW'R872~PasΑR7PB]f|:|ZbugRȤc5S?ݻVoJ "c;\Kmx/g0t:7Fz)nZPᙰҰ{;?`]$AXε+8`-W3 Tm2*58e#(q,v&)v9(kt~qv C`% bÔcXv0%]6+/YgV t% ?0tzL}dRG |, ]MX2VѝOI#}{lrS5}(&N(K*uovmpU,O{ěrObltr'')YK<`(@)i4n~N:̍=՘فlxp)\U=I:& (_:*T3yeP<7 ,&p~Ѩ.-uVYód凒w`E!&i:(X1úǝb͠m 5K_LD-ͅxpP¤L T/Qś.nQG4ɎT>&亘-dS(V"'#xIVF]S!Ʉ:1WS"Ƕm_N"З %hw9 ?c@nkk:3Y_@ڲKis% -۱?+'. l1>BQH00Ґ_.jmVO4ߧ5R9i 뺮&XԾp)b|0r+TG0g#2{* `(WLbcN@F scXMƜH= ,wtCU/t)}WaB,WnŪl+xYY=4%^\!z*(3$+T<{*=c2ik!1AǪ:GW>gUYT].r+WlleH\h.z+(ɥ=ƅKr\T7-ZJ2v[u#-ֵ'#3iQRMUJu&o{W Z)zr[}Mk_6Lni݋[PpW,cRMF4iF_:n;^Q}LECqf9tj eJրf?A]QË8G 5pTkm)X_~tYrdžV=yL&MXZ=$Lގ+ F̳T lx j^9A9il^\!j xcx8yNd]Dn"(Pݽ >G-+RbEjL{{c+4ר"[TФvN#r?G-#^3"j767j5$h`l!2کB2vvOM!"; V1' `CXɣ~r()4tW*<Ւ+L^8}Ϻy Bu{Q%h$TAY䧅?PmW/::n8z&GQ ^ 2q#e|a2kIMo/ob1bWu?V{!G1єo^1Y!U㱈LĴ/{)RXŤSc$*hX׆)<1n}Oh|IpEj}qݼI+S7Ļ檝m\aqpz@3|wշw0a}#_WF]}4}3|ы'9ec%27N̹N68v}걾5,W{A{=6Ik,\0rW/!QÒv` @% ՒAv>5_+"Vh0`)=N=M4A/`r/{={VgA#0V:qKNv$CF!w6vt&Ą؏)ؼS:NDA3֝mlCcZ.gʰIZ6Ɋ;$WE(ۧbXF!nԳ+p W/FyJ'2BU9ƉĹoF+ a?!}!V}1pٴY[a4)]QkO詹KK>j-T)bšD : LtbRZ9QM^pjkT,D7jg ѐPoBo~5KW0f9u6#vm؁/*VBƧ\ }>eSJJ2|~K$Jrfę&{)9ʞ&Yri@A{2O?RLMa!`laQwX\VfEt_f6vMYq&J2֘y:gKAW2d8m|״$]aPYKH"M-z)2uӲ^?{VfߏNo6쥢"V*B+=B&;MD~tEk2-] egh'\P]hY#-uQ^|%c(D-8-fV "E"&s4mV-ޥw;k.#Ќ۞9q["Vۤ6^)fn/{9Gӵ-MҸc%rzY`߲Z4cuޚXc /',͆Z]>U>8E+P@XZrR :ʕ":ּSo-̼&l涂D  iB 0NKﰈi{jaO2qAл@K#$Gs=#S0kL85AOM>vl_=lڈ'k 3 a3n5?̸z>V.t PۏPgvn\Vږ7p6YtwNR}7 t %Xz,z!B395s]_&MP-^Gǟ2)$,f;?nMb[hoioFrIҪMʆ>R֗^+wI Rf~(0c_,ibm4|I Ax'{Neb9;sHeښBEgEC/'%Pbɯ"הT`.6b\c[(r˯9g6K<] ^z\ljJ0mC>E:`:5ht4?=PӔ!'l-L>+w/$}-Kҿ/G4VMmixL֍*75zm}dX?Oݎ8B:L>pM2sR;p36{h}͋NNm0v=8zT7\Hx)* [as ^إP4Lǔ$N۶Z6Tc͠1mbA|dFa!{iu_uוqeueI8!̂X~Վ-㍱MqCRУ 3ku?ќ(H)%NaAbkg@~`uA_>(A,Vy.+T!}Di=G/|ht>EWZ^]X\ˍlKAOZj: <Im櫳c]ogζOJ:Η  ^XQoԘY[YCxV+DqC;8Aٹ 3k4>ÙK)q,k\oQ{w4z E'Zxm LXJg7 'F:wMvӥE!*jKxk?U(L(ƭ:N PngHYf:-/OeMoQFjy%.l!OrL$S1[OOrSMwRrgZJx 3w¯#W4Z`.RߖXZK3 ZYܪu's/ᓮpw dU|{! G`N@h~Joh }ҎT0ᘹǺLkۂay8~"GqLǞ%v5Pn."@fף6vᓭ-a_5bŶ0 AHA$Լ"j5bWdl;fmb-:tM5}G߁)觩W,5=(uAy'-(`LSc}9/KH(.V{0djbt쭙'p^ON?Y(_-. 9x:|!2b~A$pz{W“Mi\1cKUr*XG. VÄ>jNuٛR 0Rjl:CB]a01G(jY`C7_ֿ?f(GzױB P2FBRV2޹KCG :TB[.:\jcF- ՗ծnKR#1=H, -%LM`of>s{C=IGG0?+uamTa` k[cRo-uLf;y܉ݪj%(eHiha,| >L@Qϕ\!K-CإMC Rʡd_[ٍu{zi:/`0sVӐ?RC>k%eUjƟ.bW.KKm}[-A9F9.QkCMK+Y OĠQxYIlx޺s\Xx!8܎R8dІA 2m4s(:~*NbP`ߑNcqKrfz+]e[So1<A0Ѻ eEI 7Gr\ Q+q:+v)f>Nu@vdŋəS$'J& M& Y]mwwXm0@A=2`tZ>brDVىjkᖅB[ѐ9G~0&Ys̆5Xu۔KH1XV MO/ns ГѺ3mM8G0rUX&s200#9kn~<;{jGgﭑ^]f_/ Br& ȧ N2"*՚ ަ2V3L˨ƈqb4a{cݢ kMADf9H3؟D<{ݶY)4,t=Z/:*pk1ybǏ잫'^څ3Zy3Xsb(&lCIdRqqQ45\ZY:UWgK V{]솮7V_G% =/?>0X"#j/b@*L=.6ɋ`}IJ> ӥܤ7?cva늎vJkنO'IivvBޘDܨ2\kl ؈֬"Nc>P"Qԟ*4c,- Xs5mN0.Bj 8#LL7R!m[$K*VwkC;)\vaL؂p`ɇ`VN騘 oOjKkGnɎnX .*>GRz;PO7+O^B}c[M mCqS>!bݹ07Sv"AEn-KY%o"+2*䙺l @ 40B3g8 gW@eȿء4vFcE>: ey35LsHh.QGe!f^WoJlL&[cvKQ:)Y%_mTv[=D.j FAIM(Sh,?*H_)]1f.3.Mlmx[٥`^y+eZ .Cgv͛,".(s푅W1~8#ڎ9b3Z+鯜u~"$9H,6*;uuIwlyA[yꤊNWdv呾}}ҳl<D&/Tc;Ş+өJ Ym&{ *;jq\Bsy/4,c)D2VqۄAsT;=}wzGyɚEVc=%߷.Yp;Ѱ 8tu U]nĆ;Iwi)Hb$`1g]ԅMF/aAJNODHKc<4̪EGh_\S9 8EVTw̼o]x֨!)=r;/cg*2 &=x|%Xӭ z y[]eF@X_IY;pl|C0SɓkK_"|%j!Sn}c}/e",r!.pڋ,f| c&zPnln̚i<`!ڮuTQKG棢Ϫ績vDlBe29Q|)(*UƔ4Ǡĺ5ރ^ϻ:'8y_2|.D^Q񍪁s~cښB>zZ־iA"J<ޅby,}g-rORKAG$rBW*Ya丁E* w7ay6A]u(㋎sL.j̫PI&(q,~;[=# sZҊByBeSP'$TK')6& oK¾Ύ͎c3b@P\B'a"TR( ~0KWuvjoȋJJ!b X2ݩ^'n9D!܅sv%?S(a('R{A=-|OG:a,γ8mػ}ҭkPi}Ȏ Bֵ7YP|7+l֩`\h]~{euN?%p Χ+zt+-aH5%Dq dV$0$d2W1*)IoyHc%JV"\AH7ģٹ1hCAz~ɽbP)~P1N23tKb@!j-JTo&1 /-|Js'L!" ËG8SSépj#t^Yӊ^qI 'C3~9FpSL K"w:#Mn*Nhb zZ< p@)7'pA-\ fu͖{uks p;.;0:̻XJ~V5hѰon>rlo!w5|$N9gjܯq2E3--GVmɛi{p )}wNt~"u0tzNF]O/JDLg;T@׺'U>=/C`йHc{ž3RNxdojLzS{byirj+A3>0pXt=^Uq^̾@ mA|r܅գYls]/R[KK(jt&Y*X@F*Z]x@:5uK4֐,EV_'xyxmb%!DkW0N<S`7C??'BeaFFMoʣm3)d|M65$"C*5pyojkf 4_fZqA1]W4wK"\U˅~-~ꙍwB̘I`C6!9\E-:nt9~נU$q3^z6/)S˂ug!=AFtOW.IM$RАp=o nla,fɈߒ[7j};J1x^ Ҳc|+n}q_(S&,ci) ۛq]j:/ "&o㾊`~ \ᚡA+ %ϩ=\nģsBݕ > cE&TKvGW7; kP2~YYu%}cЏF> |yt-ó`F~(oUVoUN J&ڄ<.Q8rviQ[>K,+O@Em`0;IǥDAHA"VoA( hd9+5.aM w£vḨYu~Ebb'$)͔X-Vf֙GeOUr&nH%ݙsKkpƪtV q%P%ſu.G% ۙFO9AW|$2ir)6SE~/j6<[ޘ2a~O˃t7E1a GLc0pskub' {Vȇ LFsG@ibu%=S,ϣenP~ա8hZO>`/[eVh)Y*xzӭ (@IhTA>楷AWVIM 5%,5~ t15 U;EAz#W~%dC"dt48V 'u+ďYp8״ZJ= :ym:= -l-[zPJA=lFDtGptN഼ێWpx\}|f}J&'*&)/ɀ6 L,>ėOhl/-#kzaϠDdIl=㬋2D{uCuK lvO08 SLSxАT V/&en8C.Rj_ LX[ xr7by(lNkIj#vTTѣg>#԰9y[WYg31T6LBw]3c6 <ЍC~Y0Sg;߽{9v94إG7Y)*7%?hKğbPL5TFt7\;xa97v{2=3+X|qϿ f,ka z'r ʰ2)ZwL~u2/LsK;K~1C?K97V4>QmnFEb**8T0nnm9IMX؜Q^/ZUfKqg&&~b @{Kzl+krՈ2沷 ZR@In7@33T@{_wڄqt *$0OŠS$<CY Bد(dF8=~B^I?(OVAvӡ ;w|uGqb%lX[߯ R/Wypp>okXcͭ~?d~}Ԑ/(:..p$3&Wή38~(\'+X>nC̈mڜaKRSJd3 _5~`1^Lѐ: IdR$%#1Ė" O/~orVR% !RqjDD)F Z6.] V v m ?X]/rH fѩKMosT9a `Vpjoi4gRrHcYVK+3gW :d`ew*F.֡$^']ೝe$?9Q,f_LGB?O5mJ`-w*e\A!UQN h4w"} r{~27 بqyxi.pjj^s"{1cK$Oi\Hr@@jCOzj}5b;ӊq(m܍#,zݞH4,n@K @3#fd}Ue}CGrNvI2.wjĩ@`oC_XD)&+ R13ڟ3mm&d .5ݑ}@M^` ޑ2(D7{;WѲ -8(ܦ`hyAbWr2g\n{N?dJ:جS~}I$6 +lH PWA"=]qZQM/|S;Z :^ YmsbZ9xz-677~H=Mb=lݩ ccZ!"-XBղH7Yɽ!V-eu:sH |"2'Q aXaIm ܮ(c;R.mҙ/wmdU%q80y]D[k줢LND(&kDkgD"(!^SJ\֝/ۋ= yy'PK?D?ͽM$d (# )w7k4 z4sNk?] 21Njue!P #naQd8.'m]&iiV(cޔ>YahNB{Eڬ1^%x+c2@fj$-hr@| XK ;T^DlQr?N Yۑ Sa1iiRIuc.% -2{ˑ`ub~Ξէ)鴁9s&rq~^/8:ÑsS.;k~H*CϽ:̱j7y":QQJm+z:RBY!ֆ*7y!#d.0qwč’j^\[D̒! ||-Ʒ*.T'6W☐ ^Ys"ب9ysA:-zk,Wm$l = fC#MMdo.K?्' ?GI15\ڢGCa5\ gBq#jv45(aZg+zZve,FI`H+O%DQB ͋a6>[ Y>$ 3O7ϮZ'nClUc[g`ð20k΁QI/gJ}3PiI;p O1s sþy _Ӛh—ȷ%7] 횠 'qc_=mM5A};(0{[ -źWgz~ȊǺ(tggts3#ln:,y4Y8 J3 \7 |FՂ97$`0H7pp,Fdȷcx |Im=Ity\orUa@Buc?n\B͗!jWb/B#޶2!7Yն,n_my9w]}/EB)JEU?ېPo|ƫz[#h; .&Vج 7͕ A[OO~BE U2^68F LLGAKx$%f*Otoohۜ z:;KZjYXݭ5Lɿb3b2Jc6pRt:Tb~$h}Qp K}+$x<Ϗ ?_$Y ߱Uu d"ϹƳly5$Lh93A` w$&6-aPў! :ѡ椷{%pL"mm )֙qbɟ xBN6^:1Vsx]\t7J$V+flOdW ,n;ZxY'Ɛ9SvpTJ]b /-¿A:: I6F`$@T3|bf,9X<=ո:/}uRF=kտUm^L>lb< {F2C|CxP 6Q`Q ʟڇs}Eڷx5wY3$4\%<;fg﷯lM'5c'Vnŗb@}{N Cnߪeq42'.F~HgY&sI0B7~JN 1x-L'^rN@"jY6%u5&,w7;_Kē89_. tsY2>_ Z}ˊeSL&9x,SbP N}΅oi[mdf~sK66ˎA"Uum pG 䠯X?յ <[78|L }I@ұ}:uwɠ*TL-]VN tW@г"yшTZfiFk,ȼvՎÇʪ0[{iᕫ8շ uVXfs"Bd|)Lr9=¼ZRVBSp iH`O;>S.2$v˪:· ұ~oA>VK#@/U\;,%rŲ _'dD5BGp'aٿe=@ܽlXNjA y"vP!T|bt*_Ϫפ< Q-2Dt&/qR$4 lwb)#*L㿢Rۻ,exmIdœDm['M&m2 GkVmY]FZy¿Sh1w3(7`?d3& F/c0ljv,s;`ˏͿ6E~n;WbB>g Mwe@؉kn{?v{Sbi~d8 $͚0RdT9y>h%> 9peY?MT[qm[="NV:#ڀ q?Q~;$brCI1 &<* 1Xf8Q@k &B2 0-u>~'iIAc&J<5[5^di7۷ƌLJK&Kj[e-/T2c{.':ytMtVfc/hBl(wnyb⩖#\0 םWq|v%pNf/<ͽHJCx8,k6-"}oSuuW3yEƥT7CƋnXɛ (|ei)}.Y#XB++6iu^lZDiATҜ@ dZpmZ:ׯ7BsZY 'bmKk#8(0`DWM:%( K .'ܞ"pvv~F3CgkI\P-[ U sPZ4j b#ڽl:sGngfo/+)Iv0l ]o3M"e}?:jW]Lp`{$c]7k Ѻ_C^bdga~ˑm4=k)ISj0L ] 㞽D#|dEC5BRj\)+eIm(B9 jE/3%[SPz%Cin{[`4*5"Qfý O1i'34'Kݸ*&z[^$k0Fu6=wB斏zO"齵LWDg~ 7G&*-=R3-mC&E6#D(Cexa邳 B]gpH ߼ptlH/C= %]CH|WT/Х.@6nSfTS0zEDɃ H7ѦD\o2cc _r Bn.b5Z0rY[킂1 ~CB ςH}*nh}ם0aw$Eje1(Fpذ;ԇ}7&`I#?zbPnǑA(VCD _/HT/^A^4C2Ϙ3tOz4Sm^V}Q=de6SҔ jDΙW<赾0H ; ߍpה Ux{ K=!hwh>v88(7 fܦUN _ommkNF_Efj 煚NcS1a#LwחD|(SynqAK/V@L&#~%oНeNt "/6VKjm54kG&nѱfg^3#Qu^ JX;#I%HPaqĨEJlüԟ#&;jp@v&9lhd$g ۼ#޻ypԹ~UUjImA o ^klʐΘыJ%kE""dB)( JHYf[Ri$|GKI+hgw~ -;O78VK>z{hr<}"6@e:_/E5{͙\{1\ATxnbKRK-Q0!ԼP* 6 ~{__[8J+up;]ܚH[xl\: }:0'&6RB+Ė@U6W\\񾂍⒒tEmq<.r=<5- ˦peZˑZQ0'>.a+xⱼF9BWߩ@hj#1aν}'oAb]E= 7iE:KCrQNlz/-n, EnΪ͵Ө=SxV Ku;VDҬ#8KfZƅK.M65ikӟA1~Sgz^#ط#!fV"s^$rhiq{ ;kPQʿAl-TafɌ)|81-īqK.*čL،^v%FM@Y_A0}+~)u>%=q~Mi(jx4LV BMr ki5?/f}ck"5(`XB߁1K8i|JlAdkmkt!z' x":ND ԊA>Di'rpkzq 17,.TozEqO?qs>u=ns:yF K w8r]k &؎!38Mړ%<ފ(_m0LA(l-4qlvLRl e~d4aw,2Yv>w#g8FkKXwWxeD=ʋ_r%cOpDʫ8-*oLvjaoe>bcֿlaI<$seI?r;L&nelIQZ"BA0$&!{9pR^:qwy[k>ޒQT}q؞4>L65TQ{:[)woWkBogR۩*_ϝ윆#1$\ROkڍg*D=bf`VOp[%sJϞ%uaLB1( m q=0yx>d݁9Oi*r[Iq\ۛz3a^+`v2Y- p&Jt.=0s chci *"ww}E։t*T٥]ÝPA>ĝ!EpAl:X*9* F<(Lǃgx/fzש/1&LQ,2߹:ѐ{jt2p+NݨkoF2T }fEx5)="h Ůe.@5btF7JEr~}6 mT(:F\nDCM@AuKgް#s֞ycSMP+z7bp^!7[3uK0l 9zh-PVJ~ʔV]=Sx!<=*iN%X[m"8%;{׍CZbb%% gt!@&L;~msS$X-\3!̕9-S6)zM E&ib({꣮^w.8.b~~&g$ɷ/GR,qf*|Zu41WHKQq"5ױIӆGg3#DeU 9PSͧ^-c=H&8->Oq?~ ;o@~/T^?.8Xݢg;#7g4}O2WR&k_|"JDFL^bmqƨzEnX.1` SfЂLy9y߬) 7I1p*X`֎ g\)b=ݸ!ّa,)\Βű fc$oy-yd$f2H9ʎ }7|_Cٍّ妏<1x'nIjT+ḏ8""f]oE:.8nn4r%T0r5 zDpSnX%0Cvlv04 _;0;gʹhhtN .((G~#?XHfX:]7UݱT`hgdnX8ǐ-/҇=c>fN>ٯ%[xpoJss("X,-dWØz(Shɖ+ e 4FoB%7qNV69~Zf gycp68ڑ`"∄6ח[y . Ik間M̗z]O(d _%t\eyմ$ _j=˶l̇ fS[GK[[:}{՛`Mӓ-PAWu:jcx\'p lx*sjKtƚfk5," ;ٺWXV6|ufWd~z]Y^C?,cƻSawYGΘ~jNg-0YyP OrIOsWʕwM&Xr3 R8v.WXjN(\Ž|u}΢;sM㦉8g !CHHEw`ҵt;\ؔUޣ3[|gV$ɻ%LV}TkH,43@.22O!)(LjWpHl+BۃGq ؅xs@R1vvX3e=󲽉IP ~ 'p a^Uj<x ݽꊯ$Z$p%t7h/z <#.G]W;ei `zeZ9x{oa?'ŶD-y$X/*h~opfl럹Ha&h?p23o0Zѳ~_;2J+ꮒqh4GÂaAS/%"Ayمr\PdRA:픜HBx:RMEѦ^ۅ΂m|=#uH> bݯB]O*oj6O 9(w+-) *c7hnr3V tDJ6u7߰Fyjy5Ҷ`M\ "8C0;prb]OQI#ej hm_hq7f/]4"l+ ߡsF~BEu2 2I:boor,Hҋmx ú G+{pֶ 5w<8%.`9‘_}!V66o WͰo땪Uq'd4.ŴL^TOUFi9[y`b/%/KAz%]=6{MQ)9 RbmRarY^J'r>uY,\ B$KX+?9{|Cm} 4~&P֏s@W'8ƔZ +'zpRq]L!tމDsg ^LCCFix ;P59f>FW*f0U^|< -Thh_I99@k]o_ޥ+,,<0}J> =((&=g-(AMR,T 0M I>%UkN\M NtA{aAOI'Tp~YI5vb5ʷGO R3u1 b1MCޥqA>q>iQMq)BK? 8gC682o>vȉj2bX]BDz2wIQlh-p*tF4N`;k[+<-X|U",o"o]9+ܞǓJaÏƋK'ciEH\$\c#*m8`qP4&3?:F]F,ֿrPn;&^#Hþ14>tj%[0s, vFy=IV;H]:%Y9ro)R rJ2"\Nc3&R?ZcHBcd펱&9*6! u1[E*=r,{]K2n,K-ת X,`>,1La j8fXG*mǦEr.isenҞ`, ;1H~*I{$LwӨհ\>`M:xXV<TOrb46dG-3C_~L!`p ]5;XFWMm:H#@rr`+%>^g 6D1RUq<<+B#)+a =έک< s?o>pa(}^ >Jwf<<ٚ1:Bpw{KfJHaqw@ʪMn5B/ C+d,s :Mf:IP rtѠ"(ѳZʨo`j^Z}vP/D9b kd_)U,VmƼ9ĪᎵy/bw6TjI#<ˊ\N0͟⤯N I$;ZL66)|^Ku%,-mԞI P]ZUeq 45":INh1prA6&UEqb]Mj<\B$L$0qdp<"g$DWK5tB 3pM(|,zs#u_rmq}єy^)xGou_7Z,Igzi8d T-֯eBHVjsx.[!/c=ޅz\syVt;,3{{XڦW6O_iVޜmfzNSu[3إ?Ie?mߤ܍J93 D ۭ%De)eҶ8\ >s.9Q^L Ώ/8>ڥ6.1J + 8Y.Q0[l]Fv_:J)!I~9DՋ²%[6Ե "`:7LP4ȶuG# @N)d zҚҠIn|=[6ه [2RVxRqkAim `a Bs ':b M,Y Q.6n A "nXF zuG}Y&SUDºDUOe3S"oL\E A~*D";eNΡBl7SC>)}֚PGMF3!}w~:8=kv!4yyMqi64VM9s2Dǰm QE0R\Lt7A%Ov\6=t [Yі: 08Za7KUMxjE[ 17cgd0wcU}R d/8Ez'^p>%ޮXk8˷x&F9Yb/n#KĂ8I_haz$:8a6w8­.T;|m1o1ᎏ,E[*)JJ_~mc &2"}T=EJtÊySk!3OD,Pg,鉍6^JFA8T1toP+[N'us'iGGv=M9nmE0-5hkc>J6\4uֽ! XM^^m勖Db ϙގ1z2<'/P"ωwTD؅l;kɟD9@ mEKEX/4Hӕ yh.c#{H(ϴ|~sÌ?ٰ*oEQoo|kn,=xD{]C81f j}~㨢~!.Uo NNʪ$wW-nL26Z"mf3 /X[֮3w6LMYr9PМ?ec7Òc@,rv ɤ|{jT*JT!c1qȥ"بl~缉[5{]/)SXm›8*xbzZ:$5Җ^Mo^A0{l*S/$3U -<﹛ Q̭ߕ!|F:oXάhYת*ᒩ<(GAo`H7G[H%p7q Z)[PWQ?]7##zR-'y0 I2Y]8?/~L%_MQh3>c/&xĖﱄiEa){tLH I5崋BMQY!]Am4b(k,>G@"req&ݳ*o!q/ IfI$G|3}|.A%Rt̥Td*:[~@GaOz:kq!wyyh@+LR=Kj ظ7\!>-(G8@_e) vlaG+&o0ruŹ|`_ sM*h N{oO͆ǚ0}VOuҢ$#Nd W7F@CIO{wnj{JVz'DfuK&C5*YLUqޱI }vEKZdw}E`@ɃˡL tCiYtLvUSΡrB?u2b$18XG!oATY.v6>K-Jʴ9?y;<8v5 .nW qVM .iK\{҅7^=q3+RsaǯmBd>,Pׄ0ymؕſ \ ˉX|U[O'& +ߝH7sV8_w}ȬnNˆ zpöFďhmMvیkb˙{K6c-T&M!&"ҘE^%An^z'!vNQuX0 %$ġjd)booߨJ@U:?%!P,T^(ݛ 5Qe4F!Vbq+ſQuO<)G{qeˠ`^@J->C- . :-wJ$,M=N.G{o'9=: V22=(ǟhۈ$#-P\Qm qd&X/4OAwz.Ef#cCG Diω ̶͛[1gtF啓|no¬^ad1'j=KGs,V?Z:%1ھpE;Oe>%pZ+?uf`SGYADFG-yٛ; +Gl(\.+0 nl޻~N7|keװ.Y)3*L01L7N-=ʷ e8y8J^#pG=K <ף5V.a F?恡YU넓$@UL`Dǹ6ZˆЙ'YH#:|خE4fEo |VKտ9v+O.ɖX1E ?+?z:6DJEz:~:̀9h"gݦhѩdOb7ے;Yjql4[,*=W{C¼f$mSӈ7t-8NC?f<}3i&<|Wӎ/:Pe ^Cb&=5V>ݜ23^mq6/eB`4X)* E,/MCb.ڮ:vuI YBB3QxB2"\\$0|),%$LuB}ꝈHFkJJ= &_3gz8SwANWh'Z92HH6yδOPCUXFX1Kߪ,ɽXi!1ԝUcDpb$}  +ȟ?@ ,)54Ҍ~t ޫ8EDjL!lqc BH55j7&a X _X[CRd <.(by7aY"yS. c(H 7}S?S~Õc[8*3~Ř38 Ywi-ɋlB<<uj~/0AFW<+!%k46#E/ps_"K){TӻOwIʬ[<2 ny(t̀q]7a)/uZuyŗy5gm(C MVG^ұz jh)l,=A{Ҽfp?U g/YEeE 7m'^?EBaXzqYn^O=<@ %ЀGRb8qEg# .jPv anӭ7A;Dà>lTvMlH1F0W}Jd/b o/FYAbC%aBgoI(H0%{?U]n`Q \cնk}}O\J'* MHxxP`n@л!LI|n@-LUF&L=PI@ߧ1SYQ쬉n0o)D-wUunOլB= )TRAx8#B&"!݀I]<4꾱bp~r`\kdR77b݇:s5>hWdWZ΂Pr}=ԏx:5:{{-gɴJwY+x]NMđ0cJ Q/r:*PRC_x.֡Mr&y$Q9ʅti?4FCcbB2dۅ@! _3@dJiא+7yUIe @KϮGcFvz%Q<噖G+V<__+T"ܟL!,R/(.yD$ NMU#2`q|9@3%)0nSYl"a\ vqS+8>EJ)M1HeOOkmAExb-tPk4(K!]ܭϲs2J?g*Yvj<2xω$5.“g8oىnV4)& a屎q .ؼgv kEH` ZAAlOV9c@`;2Z0T77fix>&@Hbm,xlS '(Ez:v@'KvN,HNgAoT7Kﱰ31V+RcJ=[VG%#)&`kcrE\}1M_aʫiW] U?qW ObA4Y)N:5Wxl?Ԯ&DyBF2M6A13BYY[M|ՖR1>oqT ,:aHX2 $$*n\|xc&Hu{USyq4I.98DAEL-Wmw `8hKW. KqQ{%<Ϥz>< qR?ҟVUPU:׵މk:Cy=923>!uV{:;q4 d K!szRURﳽaZdAlZU(U9-I-OEQc=S1k P+Y:Q&M0>=<8~rz<"0gCc*ś>%Ţiw{Hہ60!( mpZKa<'ʙfê^T ]Wx5<;W)EJ_jkW5b@C=,6p0u36BY`22ŷdhr^ @Т4޳` :W_s;P=~R$;tui *| r' Y;lma[BM!gfp09Pzu/-pWIƞ*QUlt=WpL]||^PoX5Eef>2v +~ʍW6D&э;pX]" :o(d0~[GJwJIàZl6h8NSv'LHncdr m0vb'|6Oم7SD&JaÃ7]A-1ӶLGr(l> J}xcV?H9]PD*#d 礇^/`x g2sxJT;zOdrށ{8* AM-DFvlTt0roU/n#y)'E<gq >Vlj,ݿ u/&Sc150 B fdxۣ`n $$JiiW5DqB#VҥMwbBo)\hCC)9mZ/xNQ AH@P)\ތ[&m=H'^7X KO{ǐ@J1JEUq{Ba!j/6v* شu_)'X8:3?ǃ9ٶA4ʃpa/&x\iTiC-IsFG䤡Bk =G̃8DN3sT 39B]T5z a˚5VC1U}29% x.^6J%f1}$C;}Kٌ7-, 8wዔq|Hqiͺ}ZcY|y<@ oȳ{%''[!Cux Zc[C1%~:r8& bay;wnf;d[tdjʂ,˹VpYjcm3'65K4/9d/GFwڀdtD,*&濭q~h~#F=[:S3M+04h^99 D͠> >03C_st+HQRSfx\2@%ꋛ ԪSVN@P0fW21iKГo]汶]Zyyw'$l{ƨ'T y%j ib=-&Dœөl>7 ;T=g)N7ɩKN (&U-f5%c/ hB}~Gӕg;r1NOa @b>o> E>V!mU C1;Ra!dBnTp# ns<ʦ_%^ Hp AG& ~ݵ&dRO=XEGr 9(Wkd961_::KxWgɅ\ml &nN%GIuŐZLڏqs"c@izӁt$bӽlsKfCjƃG$/Zbov4x="D7n$W [mE\xL_Ѥ0X鯏YMy% "B/fG69d}Fv^B~>A/jm4$pߢ2?ZW/e<#Q:zϜ!Ğj` xx)7`{\DڣI& sѸ4#Z4e.75X^jD,ܪɕWuF`CZ(sCTE1CC^!*Jq-]9zkOgZxe.<9\e8C04˩1ssov.`gW(WׁV#x-tϐS1!œ毦|=~"3ض_4]Sm|1+B)bř `G*X~L9+JEy[YÕ)K;2XYcXTg"|>lӸp<1C/([oV.K $[3vG?.;a#/!$}oe~Ti$n ^ Wއzg^Q[eC7I[ghCc0EoAxkEwc{+u9[eQT3>1 2Y8,QL|@`˝oiLO[SL_ͰC}䪲ltyZ 57uPiDS0N4Qu?n*usUgf >1x q8Y#tHg(D#c(_?* wQ&}o n1?\ߔ V vfp"#|@ؑ >ݻkzI$bufШ ~ѵW~XsOo  ""IUW¼,p \^?,zNTJH [ wuRf1:Mr&2q]KhXPt_RhkkY0qAAY%s u@>vZ^Taftkk~N\}m'GoG&qF )Nc"tť}竓WۓxER OJ+[*+|i2BtENE9Н-FoJ!/hB&@:Sn|TrT PB }n&+!ԗ8Or2`Y 4YȲk2wK D4z_aʓC??W4:s^kTX?:d,-'$2)I{!w^e" QFDT}  !Q-hXR:I@U α<]J >|R"Is{t=}Gj1>.y 2"F~aZ>Ƞ{˒I<ŰFNdk1&02g5{'h9+NR '6XpJEo[4`Ǜڳˀ;`Ef ec-ےjw `e< {Oۻ!͜3vN>Jy/>3u?:6u5<' C0#rhC#r6e\.B+\aF:rjwG8 k˨PQGWI)^s>h0 wrMjzkwk7ﴱvTA oS⁹}GiyЖ0,jeJprNݸQh+*!ܥ}! n~*PtygS<@!Qmll1xB)(Q ? xhM1A'%^ &B rJnΘpݙBC=Y'K'{}9颉J*Ǜଭ&A5Z}V{Gt{k>$e,rG_I(HʪE(tApq9*xԭP0,e[WEk|Ej׾ϥ @dH1%Qţ]: *uxտ*ug,P<hl!$B-D'-~S}(*jvNگВYؒgsKr4'os3\f9NuɁ_sJhM)t\@[rʎvBn@_u)A_~M: w7 z!\,dg@+%j]æV4lAZxM3r Cy"Ok*b-7.o(P뚚@lXL2%'Mo6`o2H fğ75Mng+Abd!VK%?K^뽾xFuI%G]*/"Žs5Z~ }!_ڭ2t&Q{g]׋$Zg( )rbȏpUT[f:w0/ѱp_>Q$5EF^^[7@sw+_',l\G08Dv׾c %Lgԏ!twh5cj$ , nr,~LlC9Y;ܧKkhuhvz҃eM?)`0@VVs*o@llY1|-D- 6ci-"[[YWUAU Qb[u6@Weɻ]!`e ?[IY^ت T,})O _ak~mAGP_)5?tO>VM:+w 2 V]qjCSڭ+%13c!)I&*A{c>w0ީʡpDth1JD#H@ϏT 5;I "uXdv k8ޡ#!#G> ]p8=AuQe3ud-=3~mLX %ʙ7;>A+ꞓ81d,EA !f ؜:!u;Ȥ7YTEubC WIU'㴸.Zl3'~qp#YN19]tEe,GSu;t1h V6ܭA̽Gy?Y1wM*4KWpF=eu{͒OfKb&A.`ɳJQ d|+{2F"!a4'oN#ga&̧l3W̼GʖAWSщ'򴲳. &HU@wCcC~x\.#hFi3P2=nB$#'{[=J(8̺ 447Z223AsCcfõ2 M+*n} guRޤձ4N[IL:W8ktWXc {X#[Vk 0rw+|4?g*(:ZrIi$oyfḺf얱 (۹5ΈՎVŬ:&W $ oeǘd!_+|0sIx|%lRZd{Oa JHTG(-(~a%0D݇H-^94]&m8D)\U[@ƥv>,F/d46BJJ^ o" dv6vLeUMg-mI1;DVhAyax}vNI"{ P}nsgo*;Nr(/+1 *)QwjqwĐ9P۷!ҩDuD`E؆]t-p뉈~6]U )*`sh d]Vsy2/ nυo{A27# CQF<]F맚Y}vhNR3~_eqIPLvJ&GpdDCMc1~ib s#s ca `6ԧ L1Rl(UmNLW!Y>y'8BhFDu9+ ;{c ]?~x!ߞ4Ԝ~1GNWf #4Of4BW8}x4u_99r.֫hbB2dh'ԣxZ4sc ^UvsRӊ{1c*SEm}ƜLNq3z AoF"=^shvAfF{w.ܕȖVvxLK;==")(~7dcX'0Pmw_y~|{ɧFs8 b Ls k/aMQ >i6^;բYRrP c}NV(jIBe5i-QQ<^qP*PvVKO6D]-W ]V=qeMg:_{sO@x06JQ9Bv2=XshЬd=pĉ*Ut)mqkŧoJUW~Xm!+];V/Y 5MeҸmH :΀|%?"S\(ަ,*>R̎RuGI@%~Y'0:kb?yQI!ѶS3jYL7z+p0L$OBK* Y"Li7@GKK̔T>[ zY)OOӫąCO}JA3 3Q SJ(>dEF uhhRzڴsx%]®Cгpwc;df#TZ- 1#&YO >Rs7 Q!)PƁv/ф']@~U[Fϝ}B8)S>Iɂ k&?Y|-MNR!O>Ѓll@scASѤ~s0IfA{|G< ؓcM' g8<{cӚ"=x@K]nнPՂ[3NjOTGjQW=Nqd}k ʓ"!`8kǗ<&ByxhI,α*X/C@n^ Yv%N>&~PR9To43/XEt# W15f<ӱhlAwN[S[TOd\BX|Or .!Ζƈ%J3?DvT~nѝ$Y ^ѫ]aq$g*&!(/@6siPzHhz 0gdS\OGOUF^]hOv.{v|ޅQ,up:xHxW<.LiyWy$x-ddAYG)˳7EN7}60'[(d[&>R}䋟K0jV&HIEt`@BK;od%>927tIb)axjͿ DqHV䁉T.]) Bpr4RBfL f0r\ҿJNbk_}hj#eW Qgnʘ{>m&(DAbˇgCtcJAUJ 8>xFƎ(0XryѾxsJ}‰?IeXT|S7/OMrxF:hV܋ JC;|~95 y%zpj"ϋ0yXM%Hv()SN;vJCp=J~+Y/O}ex{z,c5/ $I"?eEts3woдZMzT;T9}[(#iR0r~# 4.&]ح]wH|Yq|#JMNȽ_4ġڹ : qQ^QNjFCch? E\J, ҅X-7 c&fJm_y/'|"yܳ%l0V'Cac\6Ҝ&1/Z"O6%%^r'H9WT\hm Pc"ڈ5 |)G?Bs7|d$T SZ7(Fe~:HmmwϚD0*V'ThI"9̸|9x|Qj-?8`M@2bj|՜089)SN 5ZJx:1ޯ+'(9f0-_ز\ 7kt(-:GMHXUm9_91(פe.xHKV"+F" 8Ny jKGTMj]Nt,J1I6qWD`?!kQT0$I|s PcχHq̜a[ ֐%ឱDy/ QIdL%"a.%i8OMꤧ16 {\y9#4 fSpjXRDh&^KU sUcT@]mE!oJuM?TU+=Lz*53eb0͑r3|:hѮx](b]T}QxC馭J'7jOD:wR>8Q_NEťyU.;^q4^=v~ca X\7IxڈNz&XR톏y`gVn2~5GwO;pvdg@SJju$< lx P'2T4Polt$U3 Zc[>(Ԭ {1_Pz}УI*άUA8*gv< ,NS $$c8XL>>3b|j.Di(6r4Z!hA9d8LCjP-k!fwrN0M*qD?SyFx ŇpMp먗ľc:~$=-x j5U!$ז꨻L7c2nv 81NxB^.xwCdpAFoozH=8u?3'0 T 6+v$E> 6?707}n: Zw+8i"Wh3itٜ #G3<߹+a$ΛVJrt(1:v2WC$4JpC :cDCm+`wdEG9BKB eCײlMF.|*wpU/'(Zff(7RU(,Ց9|c(k `;C1pa@'(duh6N?sVPI,;| R) kt큠fѢ7̲vtVFL|Jٺb{R~]t9M&PVݠ;|6W]@aҔjzVBjTtz4]ak9Q8Ɠ9P_ LO-S`R]~/~RL:Mu2Ug)",Q,Kx\^sInMYB^QlaceMwyI)_ VեrXrl_Wrm/Pϰ`R3ڔz륣dP\/聉# CQ'Ϊ( JHIʑldn;|Ԡ`|.DS+MTߐc|e?*ݚ`7RR;،zS;6icja]|qd2ސM$AZ Ntm'IwfRӛ &Y!̥*TC=ABcy|\hƏ H@J x`rg (ؐgRF4J,.]N4\Qb k(4z#7EP%2w"F^cd,JvE/UB-A`'>UPG$xB_΂'ӊ+-1.$0D 3 ˤf * ơR4}(>ہo6rV,Q{/:mFn;ۈ"Txa1 48m| g,͹If#rs/hR   {-ز]nvyV Md $1\l L~b9ĉ/mqkj0[c hyM3!+t֩nƦYw%UX*V[:I ׷"ĹQ &v* *ovmO# _,dG  TÝ;̒ڕkUU៊omՈx .}{y90C+δEYd^I^?L ,e$r皳ԶC PP"ib$}<[ W' CĔqhU!0zPe~ Ӯ#ԃ:|ҢqC૲&)4^4̒`ԲNx@'\$ۼPOɆ^l"-LߣRciϹ \#mY掣 A90uSl&EꪺԠK ̜ɸg45$3O8k 9!%k:vN*nm=q}Nqꡜ7iI]=}!xbl<7]q0( y"L."6dxg9!ѕsJƁ[6;n?0a U֛ТPNn Sv՛ZNbowc5!w3L4DŽ Ufۅ/|Y;? 䙝#[Qe.^\zuV9/P4*XSYby]1ǜW] ~]։%֟Qq5^KƈA{ޘ(CyP`PϳҨnu#{M_s3[̋NEf!q/bʧ&Nב  z?p.1Y(}um3'd?HUf̯3 %ݐ纪Þх 6_ꆋ'G'O,ɏwy͏8-FxbH쏡wýzʨ{/7-+!PJ A}/9[3sct'ٚMq9/*>scZDQ1 ɅCc^of0V 5ۇ$J6\eHv0:; )y801 /v=0!χUR_1fUSn=X4'POoƇ*ĽI9x\>o e>$yɶG(9O(B-+[CVz=,7}0*CF.˵ wG.\nwpjC6)E/l⨔ >ިtJh \ >gu[ḱl(AAEow&z)oQ'JvH@3!} n5@/5N?^ˏzx*Ifr?k*T*=E N|!s?]qY}˖m`ӚO 9%ބFaL +}]u-xЇvV+_ J=^B8K/_ܠGWm"'YuGke_d+sXLʖwn~'}}7n9ʖGFmb3 Zn0m̔_ 1$S^ EbѦO^)mo"uDo9n(LWWa*[qzR'HtVOP{|iZmP-g03L6yFQnZ& ȕ;x6|ag Pxyv$&%9 Zh};aEl{n`{x$[ԗl8']OUQ^h\;f\߀`oH!Q .`i?RnMin\m&=#./UWKb +/<~נפdϿ2v%gAj/e3;y!=2[ ;;W$[{ɻl7)AlҤqdzb7B2%{=OR|A\ϒ\0hvdd8-0F2hB6@F\O Ns^;(?tz/;ڍzk-I)NX0߶ȕw;f%6FڝWJfj0zQ_< vf߶9mإ.L^-jeaTLE0{hsX[#a!鼼0uәT&xo{kyW1c Z\b7%DŽ~qof8jcsd;S<申?K jU=|]^vY ;8'`jl9AopV]&.pPifx OP-(k^mW젒[\ZFZQ\kultc-31~1cߙ0̈z4>r3dB1p2i80ޑ(IBKvXWQ5ktR`E\L"Ò:'6׃,RMV${dl'UuƛKUD<`\K7ZC!˗G/&:-}n8[Axp m*C R S(]۾؇$Qwʯ+`ǠșcnbFW*,)Rd;~3Bw;^W'9ORZIx|:(cXM[酴Dބ&/ T8=ʐOaq~}2V1Vl1Jd!U(b1zM0Ͷ ##qW)="GL0c&k!Q y 8u*<͉aw}!D;ftB=96<:+'N귏0_tرf.h+nAv=_<U$_vAFn%lju$o#y?< GϾ61Yc_A1'zd>BݧQt\s0%},;S+$HռMAjZ56#ڱ)㋨ZY>Wd8}B-1$bVO_\ ''8tZ*t&N\D+ [ #wL$N"OV7;#=e JRa;S:-[=B<T Xj8L@?N:dP_ddpSgM2u$Ra2VSC%@l,S e>-FY6@ 1I:4M#]- !W˃ѠwRo~FW8R{}e~ѦtlZ( ~ r828߻ MI㵿=&3("}TSG3p-z#aWn'.ckJ~5th3m5~iE:x(G$Oѫ]x rKla,thW)ȸM7 9IpƊD/iEQ-3$ &7!!GsǑK4ԬB٪Bax/~RPX=S/deYȳsrmY`1{M_HIxX3\GPCj\ 3MQJeNUio1MgZ3f,k wT4SҭA" eT sO *^f:łPh>/p2Zlk_KZl I. yV8+M(^5!a`mmu" :*]7OlmU#aI 뜤U7:$n)%&4A/" lw$~Ouٶd-"DCeU52+c|/-zɮX=кo0ͼY|e}P {@+aV Ny{+u!.2&՟YIgnፚϥe43spP̹M[[$>*'@C"R>zX}+% Umw!Oiq j[&-w6MDB6k_7k3x\_~[!Z*c{)-lvGVCc(/I>FXU0r~%O-gB RR{y2H`&pWJ@Y Q߾wmoXʗBNoDV<蠞Ze}8FS]%ȁ^ Z{ t8@ҞqXxzdlLtu C Yy3 AX*i5'wL{`#@4?F_IC[ymʝsQPCؗQ:)nv;]˓IF/e ,".di-{:9Y 7Y>"2*$z&\6k{9j*zN~ɹc/(ݐHʢA&NxE2mg(qs EƁ >8#H X%I6EH^o\Y-Ri{jVJPZShRH%I}&$Wۗn;pD? me,2?u-]OȦ8-XHg,n^U_d0?a!oNKjgp׷1wP_R_]S&R~Ir11e+.@J9Y۱)?l6eғ9QI_Rs޺nC-[ tC_$)ͭ l n)k^kgXfۏB;wӀ-|ٽrU0?Uglv$^V~[HڊI`Vħ 7Uܴ'>XtmO{ {39ErW{| Mg6Mmtϝ:/D'AWcGLzCJ pKkPyXȘ̔=kg?)3Y],lҗ!n'a"q~mVti5KHp%F4X?-:w(,(6)j)f_8 c׶qg,;LȀ5j)`!jB m  R/8UOxz|Ynr4:8-S~?G?5%ǽ?5$&˶j9Ķ?&Tyޟ`:X!=g-%,bB[KIG=ںa+{CzMR͟\hd3e]xੈf 0 ko3abBXCȭɝӃ$z\ B:WNf&tEDOoNyvoYeNƶ}\nryTS,#W"Dv^$nz}DL!(6ʔÖt?A!:D1Q 6˟AQ` [Qܨʱ)@^Wx0+#UVسDYȆAкƕ]>PiZߋ:O@-o.?>#\t2H-3r̘iyOWC$.>ϸNSX:f r9F+` q/V4+z+x(/ }M-J@qYXdPX$pM Cہ$52PTM|Y?O펍;ؕI.9[2X`ep[ͤ 넽]h \vVqL'm#_&:JjQ*PGl7LqxP%bdS+o/}>xpN2ݚB,nӺ*K4_QbbV~ 㝬 Y =3{UOU~Sךve*4_#dt2T}K# aL4L]`b%!940Wt򪢭f 7+b^e9f:ʜBI96 r(WWk'jྂvFK2?3dzMl /lѡt܁9jg{Bvs6ȐZJscˁPۖxGI$mQwM"-9'WZiu46t;_;vj 3;(B^Oh,x`BxҘ*k:LSMWEfז}݌x:Dڜy jtEE۵2ObpT)Zmk+GK (*w;aĊ9FN&aLB; TcN]&|F-Ѭ1SjǶxQN yw*g-gh W*{m#qABTDwJO3`< łgx8X?4`\tC+`R$Sa)T" 5CZRdHufGD0pxUrcċbK~ٰ aŊ*6=g7{`Mw7xR}AE'z ͗%e1;I2ԁjH~,Սl*ѕ0 TONZT-Ҷ*gΩ׈` m$K_7ճ="F1WKxK)r5[tS !?Bվ,5|a0aZ}&:4/rq[,&@9%&".MjKbQ8V2zemG뮨 P#6_8vA?Ϛ[>͍*~SY:E1 ET0F| (K 8Ů,L&(_*ޝo"'HJQ?774~ujh  8Su&m5[;n$?tSvq0m"t[u tenB>۴{oH-T{0/9/mk>C_p>9 Y0N&< $h7Kfz~?X_?1ɖZ, S/ <^aTHШB(Tix.X{)O,@p7ЩpC$gicL@/ȠZjzhRιE8u]#b~DYZ'VyxZ }Wg?Xwp`ta qn7}{@]';yG¾uҠS?ƄUdWtڛ KZRxkczn` 1TH3,#p=B6wei=fkFc<,ZܛƎ g]B#iz<1=vfggHA݂xmwɀHΰJ9l=5l=^i<[0-{LϷk5L0W3ؔT&g{bEeaH\mSьш̧ /캻⍪bMg6&fƛLo|4Q84iZќ˷ǖі}DXwk"";QJؽfsߍ21w '0_UDI%Qhwk1;y|asbb3v*;Ue<]+pz ve%y13>JkS1 fKQšEB;PMhǀURٴ|‰tQn+*J\R P`c 0"Z5 \cLs vX̯L'%:YEOu4f]g&9ԓM)dN?=c1z˨F9H5)EӢ>9]V{8P(`w0Qwr1˿-WꌘjK \-<ӡ $#M0tڈ)%.%uDYⵦ#Ŋ7Damqy`ŷ߶E߭{9̑[$@cP|P|`!@wW/u럕>W:*ճPؗ) 嚚ڙKqP͑1u q?-$:;M_p ! 04]?ʍсە+>r3׼q*/TEG7|g6M|ިű.x_itB"*vdЛ;7 Z%`ǕokXg笪s6|Al\'I--ٟ\FzR;ꖲ׉fETelwsQWWڮW.ZN Oc2l<)nSRY[ = {6+R"oFlQFaW֝{}C@ ,~ Y$P:BjHbޱ<fKN;|'ФňϼLyk{sk| [$o?+|-m~bE25 8W7F(,6ZS:Y}+%pjR-Qܾ+kɈMO&c-[nxsgHAM}V)wk5o KyoLڕI~.ud Ov>H@6p<: : |]1L-(!X*~+1OXedwCc'|Xюk4gƧnM6}i;}gZho_%S\H^!DVbSf硕P^?*lzMޭkfhU̩r(H1ޜ9`I:Ԯp fU r|.Y \#i1kbZ>e9 *qtr؊댟]5Lj9)\j"-8V{J-541G)螣/,=u;SY1J``9zyD;"&?>b1Tm/}J V|YlsF93|móMV^JI(p"ʻ<ΖLHz{UN9z;XWvm 5@ܥZf}+I|ra7510`8Z̼̯a- [wvJ^ UQ?VɜQ_A""M&Q|m7@,>gqKaShܴUTzB,8'KIoݪyk{Zf ' WN]đ=0Gƞʬps5m@_ 7Vs$'dI _+9#enm,aOӸ kcWރJ$ OXUyp?SsQы20ʔf*qrU0BٮyZ&Nb\4.ZƸiE!ި{C%]H&` \l[ wp[/ 2Mщ߉QAņp9VP bWŎ(f~mAR&}NζԵA[+)^iR*/Y䏇)*=a샮n^r1SKe]cksڷJ)g[pQY]+z2^ 8xUz r|J.Ep25jc)(ChMHgYlfy)zSͳ0T4UCd=bTĂ2oUAqL|NӋ L^3gGdJzx`ϒEez$GXSL:Xحrvs@ Eq)UtoU!!fq)C}D{#3s gB`emJ0VuVLw#c - _0@E&W.gLk}x[\[9  qes E""g%yJ ObBCohѠȐ՘+G2#/a_l:n~6^h\l^rqlf R[WRO9GM!]ߟz_lu]v=9ݡY)ebuyWÝesQw\^Su=KNmb9 ɹar;O҆R(6vę;ou+  Geni\N+hȰ.$RM(D:L%\8lfq}<|4))mE=V͍eG WyO?=M+yAWi+R" 66? !y-wu-|tJV^Q#SP;1 t SM, kPQ6}voټA>uc1˙޽g0X YS[/v$$ur }81$gr'w}I.*S1rYҮ 2$XH?q&JR(s 0W1%:sJZ]Z=+&-ήK٠`^AZ9CE3 d"0•pL9Ck>sxPLYfJuEqry5Gm[ M5X /dx5M,Ȱ0/>^wJO[A:b]8 yhTg *[Ϙ[遫5X_}vz0o0ѠN8C59mXq$Y=lob% AkbAU^leۘ;2f}R7^) 6OE6Wo4c7\$2E:9z0 nx bsAGj)K#v1ItCW_A nbҲ,2$ΑgE1z?*}ALNy^瓪o0oinۉq%+wS ,$ӦL"fC;0`tƩ.. tomx+ \ٶ? D_&T[?%2,Trb7ik0)A,b=U"pxݣi B@M8-V)˹)z|CB0*}܈Xrp`eZ˟V;8urEZϴ<0ȣMZۃ<;Z)„\x8,A :4i1U  }OY{'w݋${bF[,ϛ hhɈX0N)-\:Mh{Q6_tw4 YItr!#:c/%v+D4 t/|?#T̝U#T M,Vh?VgW+ð!u0܄ή#4wsG_VӤI ?V˒TCM@5+kifPi~B(Hb//ҌwB0Zv{j7lv|+q \"r>^BxPcF-[fBhVqʞ "F"\I EӬTp@.TMLX4jd.$Oΐ[;īg9P!U` 2;SR[?lט{7,:(JbZ [9ăyl=k";wY|Y9 x XxGF9@HÃ9o$M~f{4EY ĕb᪩g: t9Jߞ)өiU=3DJv&CW1 4n@b,,UY`a+ ˤڌ p˸* qG].jL!r$!Kˆ6q <ys }6G.UGMo ~þa!:!ŏ%AiГ*!|woPwy~)(7OZy8ꑺwYY#|Ń9b#;8_^h6})u *\悱h`=J=u),$+߯Bw3e:xX&&i瘘Mr?,r"#Hxx|5(|²('|Ͼ+B!HǓ!"ڝl-29溡Z>5+.QҀGtwWM! .1+DJ4`,Dc;9QbMKQ~ޓteiV.qcV|ȯٞl\4r"{DBeH3u=1 ŌItrxrZ3WH*Ըj?MXa2)"b6VLϬKwlK8Y7 j{RѬt]y-H3<Io7(ax LQARg+K"r^Vc#:n>\eDd~?Q3rXoQ,EEd>^ [ #PEt]=Y̽m;",@f,WiXQquB. ;PJjdanH9"'юvfp9pǽAmGF}.(z4TPZZδ#;K9Ib7r"ڎY<;6!8:n*B4xnZzFxa$7M8wW;qlܻxljz~4۵ĸ8lךC݂ONelO₱ #s E@;D~' ^N YrgcYvޞ{P;NzհӼ|" z 5#ThsptcDCWG&dKܲobL7E#ќq훀Ru gKN;С(b'$l +:aB!@T? Ǽ`㊅UKxɅM.ԞXV5 ^뜗ٜRوwzS:f +Jq?YbIz+[s`_+pZ"qpm_K&4.$0@ @,_/ ^nݛE@K7:Ww@5sc-CvV.TyYQ#y4 a7sgޮe)Rz|ٷ:D5NsC0y1edAj_k+cw_ N\{RP]RKuڀ#j(!Jϋ]`54x-zC)2"` ޹A{ 5+/D}tV+YI%ײD+6G.F5O9_WI[3f?qgBvX54}2Vg9U JTÖ==@sB"lZU' GMGjvGLN"8/@O]J:Ba ȴ8`m`U! 9B~Y[FPs%ԅ|7 6J/dBћ&K6afG;gY#Qx>81=:C޳⳽6/I%B4hnIDhs tL9b/3ҎNHnG7=$ݟ%oN,D/,LǡXB/"7V{7 Z|ӗvR˛D$0 YcVNcP+TMexK ZX+ŗ꼞TWﰙƘ#+y>UNHIJ_GEALZ`^~,8^Ii?6.^CC`I|@ߓAQ**V#u!X =ale-8g&fP}m@Ζ`d6qr x0ո8J< 룐hv{;a~үP|G}{%k[|cgsj\1\Խd%]jvn -LpŜ7 5sC?R"rp!*ݹR-/( º*CfIҳ}m_ ^ٯx8I8|r&W$QZ΍cs}ݨhT=EQsTH9zh<2=bN?W3"ztgԸBpV8U+Wh+G{W7R& O[/~D.4S)W>+=E@I^FH{ZL3}跰]0SFq?Ac(ͪ9vLp`ոF)Md&I.cC4JBu\D-]"i` x,.h|O>3x!QsG}w;NJo>mj&da? Q5`tN^3u@J!kvZ526/rh$Jym=>ؾ"wcӓ aA#{(Iqe]9*![`틗 _/N'voVV]Ԓ0b ƆLI[0h/?f-tEZfA-|!Qm} XOӨJ.wc~Ժ"D]Xtaj7dnV_ő?hj*EdTʀKSI$fC!OBd[tEgHY]t=ۨm`z "K7Ԍq!Jz=\nx)KH[| 5 6h>ɑp-(p8nZx /zꗈpص(EǺef>suRmOۓb!Ì- NL*R*b%WXă`*ւX˶j^ Loth ^0w`P%ۑ ;z0fUWA+$7?jO䥁%FhD%NIIV*[5Iً<\"ʽcaM\u.'ٴTnU7vkDxt>P@G.`,F>~,Oģ۞H\q7@G19Ht~xMY^rF;3t\r!C˦C,Gڣ%(̞/HoH$^quKG N qAG< ~dIfҞ2y >PhVgc< soɰk*M%Fb^X%kS?T}cֺ0 M eb㛯;܋+kOB&(}0 czEdQ;e6#j@mRy0k.NjzBJ1@a9Pt1pZCt(ơG^@mM}|nv1|^ i7 b.I V3L1$mZOEzN2vŌA1BEkrp.r\S }Y`lgv=ꖑQwEaQiÎ 5-|7'(79=T;'S?XPǠ|x@=ҾEX3V=dٟ__sϳ=xAFv7';ڷ;xrK]] _ypN#Y^}Nan46 X퍪NÎa_3Kz [$/3 GҌ74 Yc\[V;+AVIS 0(ސ [1EUH\'1{kPFUFLxfx촴矷5BR[:J(گzEn_'Ǟ6YUN/8x| zAܭ 4 ן?a"ظav)ó5Qxxc fsez @o!.3#2F`t6"Wj6 dr)lpQӒ`4tPUF=,qHFAI` h 3:u(OB#ZGD LTPtRgl zG |%,^]L&hڷ <"4j~B92VU{+Q'䆗VPVLoDg+*j4ʿ$#97(SpvPSHv~=ڀQGs%j)n[D{&426hCz_xPK]!5.-Բy,$D\x0<4\{oMb&.rx_yh|v ?\n%b0 6.P 1OLnMd4f :NUf ^s.2DOKZ31і<$k"ѝ_XnK-![9|&WXrr +Edx]1&Iit#b_!zU} ?s" ݧD˝TZň@32VQN'%΄d© OoRX6LZ5]({5hjC{A(<7\Ppwky}?xHFdzܚ21Ksi ɚ婭F#r ''PE\cz؟V!P϶Eǣ60jcB,AWR(R=rg SLM ? =6%t%S̯%)a'GA 7xMiP 6fo[ZD I0tK[: _Da .qI[X\Q]|+=Nm\,A6}~I,(݂N4@m4RO}}TsI`X ̋!m#<-eKȤmLmf[o'>r}w9k&O˔I9 ۰uF> <ַqF5Ya,];IZ$ma;?h.Khe `dr{{mMpž+6]}f$L0HU i^y_ҫ6=$w9 {FӾc`ŀS)EWX-ubYEʪP`~FpH d_3^qd$s!ݴkFQpYb:%ڛ-+;dVzkۿmWB/1']qyMX-QΫ^Z \yBއha䔔{B8'76H;E}C!#MnowӿP8?fL.ҔDs_n)\OW2">j0:=r5tҸ ^rW+s_HG<$B9`?;n!ncfBĜDw$,bjODXQ?SٲK6"˵lS?Tk1$-qxGS(d;LדLffh 4l|׭b%ʾ/Q8Ub5]j̬`lҿ-Fyg@2'1lpS3Xaڴfa/h~~v%eOp!;5z#DM\r4s[DF6P/&|cFSM0RrOY2XY `|D7J Ԏ)_BBesa(Ub(.fˮ.'ogBPB4]Z8±ԭ ѦY Du~+ E35 onl!_Qh[2xS1R&vZmvRosjb7nD+h.5AZjc5{X$_*ǵU,hk(PFFBd^#LLbA.AVG8>;:mh@4C ]\F6Jɷ[I|=A_dF (xOHT//o^R/Ɋ{^pUNЄQ wǥ\d 'y͑| U6$h8VWl[\qCnF,?^2VVBJ6Wܔ19Δ78\^pcӊ. wZ}8ܰFU` GDo𜎦o1b´mq˶Nd9T0X;(4})$SoMV3rPt)rdPߐRw2 c皃c,Ǡ_I G?*iޛ!Ds0ȳ9v-ڢ&&'mXimAߒF_"2@|m_[;% ą+5\ê=iUь*:&V;'ȆYDƤaشqx^ӳB\,!c c ;mlׁ \h\=&I sH?%I^ɵ՜s7 폔lLPꂫl5%6Ktvce 'Q&U!|+[ߐ?_\(+rTlF-ʯq9VŅ`]DpC$`yP3 OaHND ZoOQD! lPVZ/C&8;_(/eWbp稴L}u#o 5aWy& "LOPTO|v ْ e|~kTclKHs[9qoJ&.<ޏ̵3qMcʲEj2mN 1z8}$RުѤήg6Y᥯]ƂoP;붵yW,'pMɋt‡rŝI.gWLj2HhÖW(GH4FV+V"ٳ^n6q5R|iP^JACM 6,2Y'Ie耨*r۝z+ɰLԯM/r13Y gr%-&z8+IeJݳ ݿLv~$GOY8YWR w`7$$RWP$O?^ eJ8΄LE:iXxj6\)M6?3Pg.Ks4w#Vm^cX82T`&& [7g0a-;Ԟ2)yk> ,wCW)@0 o+}ڪclvZfa(<(|Ɵ9nYPXat3&mR.c d54. br>=4׭(2,{㓨ېo%#&$`0gX^,V5“s88᫣&*8( g>*u8HTO&}UOQw"F-8~łOڣ33kNs– }3==saˮVw>wGfRٰM ֩s<2ktGߚL`@((xޤ^jz'E_ 3OТv,Al%A1oXcZ hUnZ4U+V?wamMt犋 bhµdCTA\?!a9i l'r7wͽiyUnq $C7yƐbe#fdJLf95!(##ӖKvgΣM9VIx/} PwꬋWARUp/fTxn,R.Yd6$#(!|/Tv+Z6m5!/WGKLbCÉZbqy!Vx*K8Gt܅jɫ$:ʨ`QiuKvTCjt X- MTh:ߏ&4*A a{BX!&4#F8\쌓5KJ&ez8VLq sf Oq_3A!c 3-ܪp'' *lĊ_w wJ A=-peyA9$*łjF_N[H(- m-r?0Um%L ?Jg I|0.R˰GOg&8T387ڍ'Fq815K7%TeRSɬa)u˓?CԌ2Rҗo܂au2$T7O}g vj4ƥL-hjIP"?0wں}6L4#?iՑLϘC w5~EGh+v2:N7E.}qS΅L|EAV/Y Le.ȵ}mVk3uc %U1@dij@Z Izߐ x5 V= >3}fr@ &dS#Ʌ&݅!zii簡CJ~䈏oZ$v\?VDؽ *{%.d|(C"Z[% [L8UM%di/p{3|@)%|#>s̯&Rr! (E}I)[<_UXdxeA0s+m`s )nlS* e9x5b^RF6 MoQ:p1FN{h9E7˵zd:z7#l֦zReXw09G6yod7<GS0s?F<^.`m0V7BvφW G#JWSB jsTa҈yL#<Yd燣/L="%ü29I UsۅH\E}FVp)sӱ¨𷞭[G=qxc: jT98L6h2$"5T~Bn6+\-=r֖tlƤݍs_Q\Xݩdg%z^ؖ}vS`0Н 7l: o7Q *B )󶚏faB5V@RxV>4Ŷ%Eiyon3PjBRw=g/μ8"E@_eaO[U=.XR:hU¥ 7*2n%iIa#$bŋnUDgNq9Wr{V2}O#.::K7Tk2> oԆdbN7<5)n4Q'STkf "!]A1$Ƃ/GlQ>yyTёyϏn:ZX.Q '_'POy<zrN l~pO"("֟'iorBJ.4Io`fnlւo> 8cjٍFi d&@13.|Ѕ9eK{m3\l]?Z<|C^Wz"c~o} ?u-ׁK( q2C7c'pAwx]PwJ:9 _Ht2n7g * z;?kYk7z,)-q P IVJoL6w~o'=crjNl[NRʺKyV+2M,L}`ɻү+C.ݓHkw4BN"v 8E}(0T4WqzGhâ8-@LUR+^n?NKm'@"dD(S䆈;&cG[eϕq"=N^o^_z1uQg,4bΠJ/Ҽ]0-!'ηA?pޠ3>jXWI` f~pv,3xcIJ>-Ԭ %iD@My0 q1R;N@}F+Ϩ:`I J%-D k+H+XqpDlТJͲ;!.Ͳ70Y\ :)F-;lkڧC9'.ؤQ=Qciﭵ^V|ТnA ;">C("7|܆#g 4$) CCict3,#>.H^HBfORb\^345bP`6BŶqќxX.˾BU9{@޶B`ƔUO ORY-~[;h*іB$b%OdkC츩(?~^+Pqn@Cd[$I8G 14w`\l?gP3X:'Hϩesbb!r;@+BeuO`2YZ\>ѷ A< j;j9U5g:Pq}>uF{ZTaCtT&(m7O²dîrIۋ2yZ|XׂwXT:sN6AXssr̉v :Ȏn"a7L"Qx=r8}FN)u7'%lox6mAYMXHXؤT;*j4V\ ]vj5b_,wk[U=Q=wCIlQNi $0@W!SO&ȷšΔR)A,ĩ] ^ZՉ{[Fs,s-ޓֱ!jDk>a˴:ST=EDܗNu\ {沁v*kc4<u~$$k"ZGmbLz--o)CE)ڏ C3jKHb0"SE{3v]#<Ȋ쓇vӘu+8C>Y]\T~XB*e]R"&' qP!9b.PQh_o2FfEm3i4dUz2a_jA.q^zF[aT~-2O{e"p!!I2WbrOG]*l* a@dCԪ .,Qy>E-^uz}FG9`jB]!pSp >TCX%Q:DeYyV☴{$!nt fCo ,#ppw:f_n&Hwٺ1_ŀtx˂̙ 5 t.9y3 (xܾs";璦do|;ARY]4 8*/\daHFZb 6`}a 27 OǾʔj2zWH$% {?&&[ZŋQY6+bv8r:X5FwrD?gkRj^3kd_{Fy\x81IRv@嫽I-xbØoGJ}6o<;]qs0wHe1BS,ܐfYV`- B>+c6Rf|Xlu{r~~"υ@|!IpO'sZfTIz% y 6L΅YSI!Xfz^PV'[/=%b_CXlC K}Qюh1yoe(orcVZ< \u̖.ѫD"`_8} ӄ~[  NQ&8 Yė m Ζ\_eli|',$e:<$?[g*K| V/'Bo~I% Eb.!SǮ5#.OLm'#ݕ1uM|ObF. 0V-~pvn)-~")^twfiϭ/ *wA ^½GQ{ƻsyG t`'8#AӍ4(, 4lyg{lՁO6^A,b=nؽ XNt;,})HUʁ.ybn󾂫%(0#dc5}$i"1з/?,H,)=ytNHɪW#1ƍI[D}-^( >#v1zS3_;D(gxM(>p )fG>>L$$w) ۽T?TRNx\vMeRhdYR4>l>"Ol-- hڨqLں,c1;<" 'Kro+[X o+K> tm2D.C_Kɵ7 G"36jF:o@4mdRG=!\dPT0&e7mr<(6tf{/j RH>]90~ĥb0E LIXmG(UTLYE9|+C 3J漾|܎A|7MHbtc4}%|LȲBFOU*dgKsj]aXvѩ0?Dkp.rpYP]xsu"_R>:kB= P1+,%cF:u˥;t>8/ɘ4gR8@BL* U`EK~";*BÕdhP^~/rנ^e0q%*Tx$s۶o%"sjkY#m}A3s!AN R(J蛘5g: ,Auh;-O:3yw dF$(긶^Pzgͺd~>&wcgn=22 Guk1zM܋r&2#z+o`tsʉuyy4Lr ;_2$342at(6,*', ~#eʥ1 #gf L"N#\A.d O׵+NY<\>V#j^m@1ޱSS/O0O:.oļci;0q,fo!0{8ACp9pI : x@佁2!rWoPa]R./,?l1T=rg٭ è` t/<_X햟&mܧc %Ϲ* |/ϼhKЄƟ51DF[p(_p}4zyb(*mN8D.EޤCI)A BmX5+G#g 엱!B+O6y?.h & i\PsJ^ZjAU__a8ҨO\KA6ZR,Wڮt1_܂Ҹ/TLDѩ@꒩N+̡(_FG;}zM҈{jA@~mATiRJ*y,Nmż7;k: ~L4Ѱܲt`q[?ڐKo&{={*R]mt%$>!:tbr<MOoadW_rס)-\~>!vzd8~ԫ+( ̰߾\q6& Pǒ;!)bG]h85 'IQ Bߧ?dY6*: |?yRPZE9b8RU% h!ߝz_$;3".1 igjQ-XeMbFZm*ƫ` Y ,Tt)3SBL( L^In7:$ZI>1 <{󯚲ޡCDHaqHV3-¥'=Am[ÿD'L@K m'j=X'/ӒzMC~+N)@TzУpEGudpIC4;TJPjAd')\D'D;աzA9J96)wASPd;+5b"իߖ9fd<9sch&xI} ,^Vt^SmZgi(Տ>)&t6|wc659A9fn4m{Z>/@Ȼw߼_D:2-8SvBY{i>Wv/ҌpD3//SrZk'v"MX2vGB_^wT ^00 :\̹֬pٿR\wc,i"w?/ @i)ޜ}f]:|`\ 5Jk BBw|*iFmI9VV⣉VL|7@=zN"TJ I\T-|XPz0&'㮫(Ay51!G傂)uX7x0vԃ#/鯧}._u\dĈqn7U"tjk уb իhG[8ypk+\xҭ2~-NΦc5lSЮv}x^w% :w^ =Sm]UW/+n+nf f#ۯN*|]y;d+YmԈdsv fvIJԯssՅ֘V,ןwٳIN>_ǐK~ǁeX5۴G"o* C_ rÍbe|ೞ !d>SCCtrv1LVZtU.{^kQ gڿi0r~Xl5JȷSI 6Ҹ?K"\a?t '绽r0z=IFI%rhvjdKU_cdZA;mӉ[6=ݙh* H Tm>ܐ <4O)<~k2 bj9=kyzɡL=)v ɸf] ,ǽyj=&\%fZaɏN؝lŮ=8>7H#t;AEleW{cqlDE[R5S12zwuf9cTL L2 2Og08]#9|+-03(=܏~%3KkC))6>ox ʒؚBiD^ygؕ\qM N@d%BÎò=8Uue+e"Dׇ?QX:0RnaJE[SM#}O?rV[4LAL\d91%3SWrALuĹҊ:ѣB{a ;[ _d<D;s@Eìw}%p?C/73p=;1hS y`lS A΍nwF1r,_lSw~Jçsuq9"+5퀭=#]AK. @^S"*oUH0ΝC5 =b mt;F1O*[}~ebz;^tr ʕ(6_?7ahMI# 8Zf@Y~F,}%ynunâViB=EWMY1_ ҁ~Ïa߃?躼bQ&~9U2 Gu0[ \^ oij\4gKS)muqcHO-|Z6&[ y bvuh@Ĺl<5XSO;-n,J@-nŃU_*GԎ#E?ѱ՚H$0p FY*aw_ǦaEy@>l^h[x۲}\PF5-7 :  F\wP ,9ɴPg"Kz4rP' r;yCxh՜gyp;~Eƛ5s.Mf7?@?\v ˊ&+"O0I68=~:~vLb2{^ezȌ"*KtOȒFAW_<7hK,(aJ@0\ 5&tI:q޶g§F_8 ^ZC+RIlr<=UK*+t!Go%9sR<#:GC|M{HK?(Wٮ4dgfMW|pޭ%}+ύ;ӊA*`bƀ_bY@d|{f}DFK.b @LT@"+nQ4!NevI_& tCȔ|ۤaY>p 7H;+b{ٹb(郓̅E=XU71dsD_+30_6ٝ3'3ŧ b뀓 A`۵<;|L<3' \ 闩> FJb[wdgcxJgr$ Йs)^uKTTRk;pm 7]l϶.h VCMƺ8^)'k'Xv'̵崷JpIDI+H"*?Rac`L~)pԮIi !F*,\5)p:N\|@eۢCNl#b/0d 0"i# ;x)r 3Jemʩg餛3@K.r%V:?gltGZ s:jV~(\Fcũ 2ˎk{tHzw}&CHz3.ɚo|'2he t']'-b;G^U NֳUe/UK48 !"H$pyf4T+~qmÇ2E!w~N*29aG5OG[}yBs>Ұa.:_N*D؂1z[6*8t\:W)kKk "))@RO @ ӏ 3/Z1NM@=ô3/2CQ,5<A)԰,_,j:o`Ǩ'>biD [n}x݁Fݜ=Zm"''35vdEr~4";+Ҡy>(8/2v)w7 1m/wѥX=ݭ];-E1N6 deDۇd#wjHzʇNjGsBɆl5ZQ@:s(T`tjP HpsmnKIb'xƢVS3IFҽܩoL€-q)!"0ֹ(WgץfT@@l%ֹNJ":46ZůM._52^ >&MxVPz&U˃^epF&z$"E>@x]g L/FeБ7F$L -x̖RX:q8[bvkr1zAօ(xt5;j`W,^ƊWݴLf3 UJ7ΐ +"utIbۜ#>p@<1k 5 tڼ#B7؅/Ί+;>*i:TXRޛϫK_\ X:vVe}\C8\[!ܳCIږn ɒ4G|H ^KwMq/[聵nRL>Dv [ X{K1Hr$!PTúUԂu場 NǺ"S%Io<4]P7!ypnzYE/5.CG_$+>Hym7lma5}A&'ì47^fTLF(fN:ßӻ(r=TƖf̴=ק*#"Z~&Mlnb0נV3#@+|aVLI/ii(FpN^c=NҫwL׬MbOcHيrN1G%epUz`( P&//*1`z0k|*ׯ)q%n͡xzjUp/cn^69G[-~@V"Z+"sZAЏԺ/Uqo2:5NTUw^e\MWI?wW0kLgSJ-AZNCJ5tM%VC\0q gy5E␈DRmt9|"q#͔ǦkW8⹫6}^*?ui !1B6,Ml9Nݺqʱ΂nCLZfAU/鏷_עQl$#fB- pț) P6y Fg*JnJt"cx# :1*θς{@З&1`̪b(@UCRć~Sw33& o` TZ 0v״Lf\o),̇ gl۞ji_F|"g1X4ei*?8L!xT}ȫ?XtINґBLғ(J3ڧd>ԣ&* Ӣ kn;n DhV$ӝ2`$.,<9 }%y6ޔEA h ii7WW w٫06 ~U⫃<"y?6/KqvrqC~C*ۡ"U3EK;?|DHԡZۺr GRy H~Km云B\Az[.nnϸlXH{2l^4[d9Q4佖mЭlHYSg-B  B#5\ET[elEnҷje5 I]~@ RA83)N+?9T#a(C .>i ;YӍ(C8\GmnUguRD5Pzf\#>"x~Q`סE?ܧg]69.g|)-2cW R{A8qsH%3B4x#ƶGT18\o2Er l3F)9`|nH mSfJpAGnn梷J{!Dg,18b_0JBf?fj=oWvVqUUTQX! 69׿vbʊڋ4H%ݳ0U/M' EKUjSap/$Vo9RY,ue+ЮkX[ j&5FA3rQzQ[$Mɺ6&%_ >1 moSĀr$7h+=\?T5:=n͌ ffF.+?b]RPgspb<!0-$)mG騟(bمt"-h[|>{|O`Z,oa=Gv aslA=J2R)S\PDIVd_ 8ԗ jތ N6{$V3I mnu֦͌uNCH{go8RX]Blym32YͦO=*8$ݘed$q'm|тl͚,e"^4. I*?&O9[DQa$"a J4! rPߑ*mg3mex'kaRE".w^BȚPhmW*ڣEYD`h4xIev},}T%JY޼PdeNYk$9@vsSeؖ8cqvJP|zcQްL!/ߖܭܜږJofY\x@A=tn6CzZ}3hG-M֒ ]ڝpH*Kk !Mc0 >]d{g.43 Y\̐]Px~x?=&?o,`ψ0M*"?2 [5L~z*_]+ ^ny!Qn]>mU<3s~T- Ѱ%tCO0yo{vm͈fJ3ƇL-@B9x$rx8䛝 /=. +`aw(& q&6_5Oo][Ș~RУBwY}EY-`$6j#WnP~ %oqNGLM8"|ގco&تO^)E}7,s ;)Y+TgYwk /kN#fMSSxKcrmD(/Vq5,bp-~?kH6ϼPv)Lc5/ڃ;#aIoJ@@\Dr/@h\RgKX~5K=gR8S1nMaEC$V}JeYZ];H% £ pls\g<tڿoJ; Pj ݒ9 H+ (A1grZd^f !Cַ 8uɞr6>@mhpff -J8=|GKëM-'c,ߥICAN1ax7w$ VWZ˻<!"_0ţZ*hF߫L1}e .5a|{T7@˜^n9ݵUN)\1"MYqQ_!<S`Mo򆝞PގCl)xŷ9:*86.^p4JK ,FD<x(5aʖWGK9H{ܬuMh"0P̂ ‘ ^T'By8[Xɐ}(MrR/p >D"_e䦻"e\LxCJ<;Y"+4C[:[نAOW }Bڐ"NN.XkDAi fv+3{K-#WQ(cxoӛŧkT3T%idIq Qn'IU@C?>.`ծm"cD iG^. Fv]n}vr (ZBw,Z#OnPV~>=q.K{"Tz=f',h۠D&8>K, ѐ|)HyxN\WuQۧǪ]s+OOE_x÷cFZFrDž~όStnm޻+mT8߹۩?jZQmꬹ@Tw'˰ot:tOǻɗh1gRgQ2K娣pƅ޿y(%ޮj !'MBq7q z[:hVÿxV䭯Pϛ*!?UMկx~EKA[ +) jbi0D,,IJL2:/ON:ds3#-qvpۦՠN6Iлѭmb]j̪&dKhLC UNC֏=g8H:8NH歟lOQ͆{udeebS.W Wt+r9 ;ue{l#-xw x z 2\ָ6 'M F R&KwE>x'zwIEdPLnBI}k6_PpQ;_8]5* ԂgRd:==@'as_= 桎o$jD ~;0.8ưMhUgSd}A(98Cz `ZKFJeu * :SIS>~mdONEhmm?g7٘Гf9[Sb38n[s 7:lv#n &ZF_Mcuwg.GY-4eG1jx;֐' Ģ/ GkM~2!QT,t\$e-a4@쏖i Fr[r:Op?*;ƘF2:() ³FI:o蛊iMo)~2" ]d m;m$D ]وE{d +Gba,Z)5v4^P(bhwrAT;E]BxX3 bhh<>W[بMͺ4dAZ 'lvy^ 4Eh̃*Ll I1D i]~_r=߭O*Cvez.eo’N<%*]xE!uD'\g.  Nb7"mݔXZEnN!E:8=`>T>Na;Cl drb5}R"3#X69P ^͔Z"|jN*/JΒ3Ja`8q\sx :<о#?e^A,fu_$tTCЌ*\@|Y-ONԋ,6WJߢ^F8XnyZ<BNV'6kcWFK\O-V/2o@u}(5?.GƴQ%ZK9oT24 c9΋g9P= {"?D''lG3l,lK-cwq 1 pl{zW3w sZqoGS'ĩ{?~0KlH8!.7iƶ_[Z[oQ#n&ۂ3p0D GȲQ5vT?)@R٨NK(Ag:Kg$}xtae}z跮aC47 I*K)sNQ`J4&$䔆 `_˸:`9e7% %ɐ'NV|mS#lҳ}&z>|.`^CEr}l" (Ds{H vݥC> yFpvftT+hPYLdh@}w ZL?Tn5"^8y8v_G=ԗ2v7܋bX(D7CgK/&.>₼ Y_Kvw[r[O K@:+|؊2a%j2kQ2ύ6l`d6h cr'@Q,ᄊݡ{l I`EJʧ.UhmЪB+uXVRlݯs𰤼N4b65C.%FkP7}&B Ϥ;8dߜEAjmtU}q4C։/o̥x d],QȰfIte&B-ԓt'QZd{D~IǚɼDŽ< G`ad-np"*sc~n~3H7'm\Fl< N_' #ue`_R*@}1ijHTWbK (|O?ZǓ󁦠A@>yҕh`gŢ7"Ed kz/B!@n$c0#&`6(1q¾Yi]L|6#=`/krHy4xR`PD>ʮ]'f4gN)A~act=d{ډCᜨ B e$Ɉ0ޖ4J+սn 吢D}0sˬ t ߢJaɦ9ҝx$Hwv/+CK*hI஧6VuXəyB(L'1}ԟ `[E/׿׺Y`܍Yy80{4-6bPwUϛ} z2E-k]7[i&f$ A{ q H2Co#?MED!b0w@ZW:a]+aͽ柁Rv錖pI]&ȢvHёe^S mpLMaA#S }%i! QILJGLk Y} ̧x AFtaLgJTj3S|WX݀')zKh3Jࡪv,z%*s[kXW:xAw}e b(ƎXލX{I,@ 8YfBh9:}N.2?us}n E-4/O+^PL H|~ FFƆ- ?V痜(+&V;gp bC rh#]DPWT6TӒhK*hu-d^{Rtg}Vz"rG_ψkZ囌 \{<. _h LG I4b<"ϓ`Bн4:o>"+ۮZFտY YuW]t; a/t}gJDi;mMs`2EؖK !K;-|.FƢ. C3{V#y(վEi<]Zӣ8p U mgZv)ST9XCoTeOԈ+$a6rE> ZFE҇so0) \eXTgb;o%L~ui ,?tbIM6ݔarFN`U?]EaIè,J\籵7o'8n3 rN QZZ$ y(n#$! <Y1?[v=xiVugfVbE>ր.KݲKqPS06`hrTӒu9~`K-!1ZEٰ) Itf libTkw1R2UZ3KGx2RՑQ8BO"*w>Z!됩QCu@#wK^ޔ7ibuEqX%g4q2*WDΩM6ojҍ:teOvQ]Oe2}I/ "Еu5"/ #MOq* D`eLTrM*Z:UV޹d]!9bese[L{Xab~eV6BZu/VFNH]wnf)D=ӘYsmo]K`9s _EJ>ی5kϢ"|~CitcR8 4'w/}ͧ+gxt S'eϺ$S15X\Yoa1B]5m` jm=͸p$,lƥSP7m 0P 訝3xV|kTcCExX"eՅ @t$s;MxZ)-Z<@[ْL=XC]AK%?fVBWUzBT@GR& BlHZ(h:.C\i)[{.H(GGR -ȁIX80sx??jO5X/j(VfPH[.PJ, L.7:<- 㙳/fD,##U UܘR %؆/,xMB= dOWhx^|).8'Ffdhk^M/ ]LUP?'c [ViJöF. 缨@a v3lJ`=OФHL &#tQw/3 Dц7[ (cަIǪ!lnD,5g'>>QY_o׋3UJU1_O6Vb[(:^>7(_:ԣٴQ߳kBq0=a)們2-}F |H΁X)  Ӳ4la"4m&:xRE^I>Pn_bfӫAf!0L~d*0H?|'ɗˮsΉRW'<6+@2# qmDO14Ɔ9c [b)Q5U\ipB+Wqw̨\%HbcbVfG,Q$}LFYB DU c !ȣ 9ΰ]YwϹ!Yo5ıA04xNءm:-=Oq\:+1| xxޕ 2SxI-{Yuq*}s$C!'27u=Yf-7ļ킬&f /IU5lnSEwP¬44GLl@:Ep{X84s^$\Q8.Lq #K.d!{_زn*& G ȲLI%(&dk9Z+$SQ ĦR1~эf pM̒(Xi+0 m9n>X$؍dv» I%kxjlCIւ[z|lxْ"C}AhՈAdviT?ZC#$b\WG ڜq);?1!_;nH[d]ϻb]ڿ֔4;ԫ\жv?4+/tjTb[u*vC<^nEC)*؆m+a V @\u;fh_dTǨ~cߣ$pM3FҚJBqf0a@U@1\e<`Ws_PŝbrGѧܸ *Fc%x|^(XiQ+pJɈK;OC,(H7HgS`T=Bl|cm,RsLfȞ8׽J cP4Ou5{f*F)"Z 0EQֲh۸W)Tl\"@7'M(-;b^PuvH!:'$ %' mXEvtDOݔڜo,F̎fr~ɮ{P~fY >\mzPId"KbQ}n[VK@| W v(_y{&ެ޻XjO{-_Y9[UJcͯ] Ӊ1RȴT2)<t;OUK̼oAd[USGRD bsGm|"u%NY+FeH?`lk NmaWJ,uXT=nj|2\(eWͷ>4}]5Ud{hWpՀspuUx>z]ΒP* ~nU^Pzڽ>-fM5aj}47$*3}c`6:͒^ ۱-ݔ%Wҩi hD ʮ:ctg?]HpOotDޛҙ9ۂzh4&DIy(@uJKpüY0j_.hq= ȣ=wc9 %7m"ϿaY~cj8dit@wm?/ZS;U5]R^eD4v).<ڑi݌F"d`IO |BUq#@YtC4t+<_ec3z?ۂʉdLQv2]z*,rACRE-6 VufHN)hz쐠eY |lҚXyX)ӉoY)@@`3ųmZ29:9M9tHcY @L(]LˆcR-CXёKtwI,kws|UQ4 zȸ,ۜjE6;8b31P6bf4ej%_›iLOENz)syK6wY[bmw5,m\E cӎ^֍?L5G3-(j.`?a;4}73z_Hħ61={bY-?ٸ?Ĭ|̽}~P}zgV>]"M7׳K=V%I.+հl;}0yȨ)9`0䫊းemu J {CKU[YP.Cx"vnwL@fTPGa&(^7ZY;9fج6YT!hw v쨁BϬWN W*ht)F۰*^vd1ρD<~Fxkeˬh/1 G([#)L,%p+39|;r+5I!~5HL+LB밁Ea|T8y .btI.%G³L(5'ǽ?Zkve &~BUM5a6sFmʊP#dmM}Zs6}ftz։ō^:]/(+4ۥ{߲X=q ?WrB&˷!Њ2TZ Ĩue?ͪ(͙`N'r?u"8N[3=!Xz6moL33SD:%/֬=1/ o C_Un7Xu*Ǘf.f9C +uqݣTkԳ&y{5+viN#o^4<}( reT8KZJMTŖW8j/)g/~z5~ ^C`G5s؋zIL%,K^^!5҂$h~EG3(rPЙWV1ԷGq}y`V$]y7g.) R0C@~_t~lsryʡ$[?d~vϩ=/-;m΄ʢ)+)Im Va˃}ݚ:BD%AE "׀Tո%tH܋@(wh7񈰘m<{5[mr:wą.=[Bbc7{kӠC.00UvSVjqn<4Ѽg G"9͘r'1821zt 2`@Qz"Xq>~̿`_1 jAQNI'`ӓUZ&@'6 -tOYnl[ ,n.Q|c|Icާ}q>GIRIyϨDj~M U q] $܂]:Ҋ":`7)2hpQ+ڽ2J6CRZJ 2Ȝ#ҹs"G^wz%O㵕w18MbpF[ZcHq"㍏=kȩ^,lODK.e,$d(տհJk;xSJѨ ٹQp ZE빒ĊabvA.&#{v4VIgɼGaֱٮh?U 1gDLtc q- ijrn,-FiUhd.^DF*tF0(^">=EH5T@2o`}bH-Q^YH 7, b DEckFN}?{jOc}l`͛]=,٣~Z8!9Uڞ)K^ OuTYC PUo 2;Po'^w^.H7$ .LJɭ&)Z0A}v D^.E,N.0kԦ04kc1 |2b؄-5=Go5m#QBp04h+K\CC" NUߖ:qqiI`- $ 9G߀b0وtN@Hҧ*~i1!gK(seLʡ kbZ/L mAWwOVʘ۴.M_/o᧊g^PpR*oUU &03Ih Hn'sP.ɬF,6DZ_1hV8opb_ G-eOe" Cw-9udLxbiu"8<­цέM`WI8X%2rzG`zYZowev7dŁk) :@DZNGqQP.裣zHe~h$5!ӆG` ]Yɨ3̆ԛM&]{ɠPݛ+{ɽΙ:C0uTlm𮦫0uiH.ĈE=x)5JQd@ ކOf*0I"T%3'RnOdGl1CsW8&gøy-5 d!"R&.m)&FE`[ľ$G;Vw& \{lI~, vШE&0d@K4.PU7((-F}]` '%HmDTf@@4l`8"wE pT6ӧv34D1s۳~G+kM[^;k]v \vV{2ػ.4|g_6@o6>86i׼g~3+ VY$*}E3a[??X63Ԏ)J}Xu7_faq^G(Vbs!</iw6N }?qmĶ[$z@K/EtV%]g,LT('@I:R ,.X*}vɸJwJͧYHyn,1 ϫ_DVڹpf,XOTZ+ ѽh`w:R~Rd\j;fV1w 5Ѯ럕 <^ꨅd5hwoM.떑@ "_64&F˓㟟uVhB?l0R=,"(/Q5 د«>pB 9 NX+ET`1$cFh9zfǷۇ̎9sf,8 UFŹD>:"cH/E$٪UrM~.zI`(l~,< =v;@q\lWl+} Q `82@MU#d?n+EAd(~,y)Ƒ _:ꂛIGȦ$s`7ɐYOj=ZɨA=AQ@B@B}IIf@cSra§=E1dw݅3ΰqι'Vm'x/,Il΁%lW-;;G$|+t{ɳ5.p+κ%٥*.`I( | *{}s+˰?P;1/Or2* f1mmd X`.RzJNbɊW} ^@gq3| 0(M)aݏ9ݵ_l }K.t(`s'KR? F B]ܰsg: Åq+;ۉaF>{>1Yґ2 V.uD؁$9Go+0NgvYE1Z~ƴk2d6;tPA]|}Vpc3"ᠫ'};ݛ_w~˩pTKZKf埥kU'\ȼU(:_$ꝖlZ˯pڒ‚BPt2)Aß(Ԯھ3↪G ꂡ]KR]uOEVg{m _ qz $/Z8np*Ч")KC !x:s\ fHәpU+vYUWog܈vWV+NN\}/T bjf ƪ&DJ,h}g2cCeR䕠AbMv&DlP"[SƟ[;-J(4Z Kn'̧(鐳f[mlN)w=h+`xF`s㷋l1$BuNX9%XTE~P<s:A3,*Dkqf B=30ʾÏKI{̧l|-. ,xwAc'Z[ {/a, 2'"ْ$@"~CWǣ fTW-eH3~9J8};f;! %S0A9_9ԗ'm4Fj4; Q_>NJ#C]nL]S2*zZ*[!dqSuLG^cre3A iU[+f}7 *"o.Z cY5[0_W7X]!y3xD(9!o澝|g̱nHX(zwr Zȫ^p{[w.׍^K i Pfը?uW+@ Q/xBZEX\%\^~ƝLVYhGRPnc;-b r:R> rTSjņfKHHN#zsTA:1X,`6+fdH=W.Uؑw?3q &!<%} ,;QS'TD xNUt=rmnW Dg/}]'p3L65`2$C1E*(:+jD m E[gݱu1Q#Z a s-,K?;(Kk8,g*_ߨPs/ \*!5yUo E(v @^$K|95n-<=$K^##*?-ϔnZ6^ +OrKp[,5C!#:NBb,uy?ݤz_n+6 _gQ7Vjxo5 Eo+ }Dͽşjәh7M5t#p;;s u be󎵙)T)J)gЭCeh bvS!>pf2:&aT]<=5$Ш BAI@]PSe?5#C){Y Mv]:֦ UALe>`}8$lc]6O+'|ئ@Ҡf9 rsPxքA[˪ 06ȡ_cO-ʓy$cF1а?[1>!oc> V3ٵG87kahChOv m@x#o"-H9X<*օ{P~s]0tE/4'N@r:Խ3F\3' :%zlT%L Y՘Lg 'Y;>lc/#2' Ap}~gb7,0grAF_KkL E<ш yrMNGpuCCGU( HTS.DN79;nþ54RJεIztd0Ϣ)LM;BneB'Uh`8 ԿĽutۀ:]Ssz<\=˩hSVY2Xh_W"irꬊ$-cSͪ,䛋lt9$C713VfU"N BSc) զBUb2ZKg=9J&0sќ4t NrZ,l*Ɠk _ ꭀ{2de!! 2PZɊ຀k )2R|L:߶+l[JuOw(TK0]`7-$('yΗzpz9*[35Q:/IOY8ע0"P2"X@3Gb4[X/~]NZ ל(,P3+:SlF<"V7u>5K?75:GNR=}[!zlS9acvNv7H/ZF rׂ`[]|4h &Ef'KEl~g(q u1j ol6Tb`3QS}Df"H/0iL*n锛uqθ$0E:RTWR˞Ĺ_2.n !% $8IJ_D8j~3v]W\n5q>YzBg7dK{E/TX/sN jb;*å; bP$cAPl,xԨx '}ȅUT*wC+R]K&Bއ>{ه HBh/׺7c‘OٙM޽1_ҺoUM r|RՅs/:.ӹ4͝d(U5Ȩ .WLP;6uysMTO{~߇ Ԩ1l/qz3> Y9)N΢LI\/0kLFgݐPЃp3ҧSo&k`j`qbPfZd*u.ۑnVlA͏-Nyo}6k r140'V~6 >&;#qztitJwXX- ڟ}jHXD ^B(iA^r$+Z'!dk N'?5!%quVl.Ggf,@@ NԮ ,0Jw^e+jDmjSE')7fk<8 *\O!౨vTF RH߭;L7AV$ғj C$747TۗZK17=K)ox1%yZZDw;s ajZ!D(bW#uNAmj~uAnK:-CATKp1t^oSj2Tiÿ Ca?y q߆bơ85BPL.9ԞjoٚEe,6-TV"Vkm< }"֌|Xᥘ'D+Y*7y/*6Q߲ZA%IzpqcDΒ}%g݅zeBw%ɲPK^ >XdR0NIDUL[5|c6'`{ϴ+-Կ [ g"FcM_E1<$ScD(.+i莰2A7xӣ$4j8l H1Jӳ>n+ [yɼvmY4qUx+a򪴘qh>Ϲr>|@{'"dD7ԓ0Nôh"C5fW-6 :'Uh`pDd\ц) ?[H 4"1Hc~ $XkoHG|&tiDjrJ UmnF҂ɊO~"dÞףV:a2лѝ1b6V4;fԒ5#H*lBՋAHX1g;jӝ:A'إz&u".FkklPE^Uꭎt4ɍN <a8IS-,pagϿk̷WvEp&. 6i5~ w\`BPY9t[p-(ũjswHb.86M>(Mã0.RY;W0ﹸS{~T觿sDE?Ǽ*V7Ԣ\VKv2?uBrBsUԂC,1{?2; (9PTX? 'kEA ҵel/3Fvܶ'-1{'6#ɺLI7PLxqǖֹYM°8rA?ɳ\:\ɬa Q+#%C| P͑A6_:vUVcs./ $5!!Ci xu+Qd5Us}U dmQ؝Meܔ)*#au @y~zsTjR $9xn(CiUV_[%..qT,j/Nl[]XWoy4mh_qv**(J)klLMuI.[S~bϾu`}->52)Z K.S\$,i' l+ b:BL^0."4m*܀#@VM5 msI<KjQ3S Eз[ذg!ͿhV+~kd+HgSM*Vxg=uxyJj܂ã4#,Le W~9FЇ6ҾQ0I>]3{J:Q!k"OdۢJȒco@+ 'p) s&NKԤIY&EI-l=KTq/oab^t;%8ٵ4opΕo%- 0z긢k, z=@S0O't2%\y9|~@F zQ)Ѽ_2UK\ZaGefmɏȯH̔'ͽiت#?@h>1&1GM!!|>=/9Ҋ#uN '߇>3r bYyP9z폲Ze}8eoEi c_Z287Wh# 6f]fdWVǍ#%QZ6V6}բ3_B [q]&,Νt]scr9yb!'/2A/י*ݐC4H)យ@6H(5=bHd gs[R}Yov]+5G$b:Ff9_liVo':ʃ&}N IΤn)5δ$ݍsB'EfkI3M_7nG ŕ|_\Jm))^~,& hƘ존wG&]#. ͨ: LUR5M;"uٌI&,C1Hm(Ht7+F֧QuD!mV'$#)c,'U~-f$ֶQX9 G|}OpNLfɕ8̡mne"q0.A6jT]n,n6o:~Z0JFFؑwnQ!n>ِ )-+‰V.$vrjopor騟-}8㋩X&u%;N?|rijpa\/":v#AnFbؚS@q<,;ɞ+)9+7|&?RtbJ^zTuz\D?hC$y>nMiev|8T{zd/>vXS?q68#Ҁ;"158XPG$bϜ2NmAlxS?$Y^ȭ,a]ܲyav5^Z]d3JݎJ߽56٤&HX%._f)4(|)t<yO@F*5ЈWL"ZXO i<M8y#Uekc6)-OcHQ@F"5'J>i%Ӽapc'*;^6V?ÝWtϗPaPMOQQYgH09e<敜 bF7ۈ%L hP^#U9}c N0q*63qopMLj I#݀#0JS%\#_/pQG'].;-JL̇ZK+ \{@~ :GٽkKaCj$L Հ3LJUdi)ǻiM!m̧Fa  Zn2?&{dv׮~BFڢ*g O}^}rn{L/M\`fsL/I~45wqkyw@د)b%Vj m]-X 2Mh4_5(N6ЙP`3Yl\`IED s5)Tޱf)aï* 7tX*2N(VWi`{'fSKx<`4Iᄆ< \LO4H%L um~MQ#ZUǰ_x&kv^SWT/1E$DD ,g8r>!q@!Py%y~Fzy\.[/r kLZA&k^Kτyq+.fF-hQ=j >mۜqXgL-+m8N\> X'?-:*vRu#f#cs/;}=lM,A'¼RvCE[[WoSf$*C})a4oZj`#(׾E*?k_)}46wnܕ40DR٩}?G|MCXjaj P.<>Ǡ^_s,2Ff\(W XCyb H\zXح%Y", @c/#͈DA)rzȟVgu(bug>w@/V_7ӻzmYH VΟ:%#uto}NX1/Kb?3=,U:Tѡ"X@52$fu{M_D; O9يծܸ-Hi[̴aL96RΜ-0g 3䎼:0Ek^7)m휢TLGĘŘ M[͔Aת :(/ Ŝ̳7`ϪAgWtpwUkЕ[ѳeR(kNi.X֭ C-Td|.pJd6ϑlQ* k32 e4Kx(9mA1JHW,CPod-,'$51Sx>+Nn wk2vFZ˫pf-qIwA,( &ձ1{þSLgH-Bب'|WEc-+e֐!'U1:aO_Vi=7AvX_+I쨔nTZa U{sjրDI^TѷoC: vݗ·Ej(BLv^JwFe$3li>( p'ʒx59FhаHp>g1 _Q@ d3i"w)\D?[^2yzؒw~}2F71 +Hw` 2@E |wpO=\_JMsPg{F 9L8WtpOzt?Nڅ$>/-{#G.C;eS>s¸1hdk?EzˈMj_mޢ=]yp}n txro]c<] &ؐbz- ߑLFG0OxHf# Vf% \:#6t^[chN߱~–d历,ϧwB=hML-xPNV֌E} \W @jbH/&h8[L[M?/*'AiuԮbKBaF TD"A+k'|FjN8.ALjonviUnoXn<Œܽz*>.bhZ=a6[mp\j.^-R#chcGqߌUsQ?Ԣ> [V 1ENDjEVJ>cGl_[yﻦ/$iu.&h7 #3My''ʌRQQe$={aӧICqXЛ(Ha+lE+8q/A,㤗z n H~;"J)aR+=VN;bm>71 I v{ tP}B(R{uVel :$z33QRJ.BF-X'r F|>! (x-OA>(ꢄSVt$UF +[;2+quh!9؈/a3u1PH~K*u4r,F}TrccG?)bs9j;pW`ܺjNz30Q*K'v[]svm WnSne 28C"Ig?'6)x~0eK)Sή:@k4$Nmt.CD~e"Ʃ U^ZN $5AWYzS5 hepHk?QnLhUvƱ}#jCM-b1YC_-f5]C aXY gq4{q}BƛXfm8:)_LqFdg9_(m0Z1?8nI{DVs^WWMB9 &VhR4cݧuW2VX}GiFhpk1`dVߵ-}hʱx+H0h #"PUEak qp!`0qlg.NOL;I\],c\5G8cC7lnj0p೪F= qg㦈J+?(+nef2@Q,)gW+}YsX1=Ĭwس #J^Wŵ;ʁprw+CXJEv%"" ~80"KOi][él軐::O$hXܔ"{¢̟1GlFSG=Av?6fKWp /$ bwH_~i L1u-f[;e` ONіl.m3jݏ~6_G~H##LDj65'aiو L? BGPvy+Uȵ $`aQj@ĺQ,7` :L7 VozEiOѢb :Ha ޓUɔԹPי/d;ekGbn#H/(92=҅>b1i323[e&ZG&b=;vav!g+UiIEsY&o9"1WW-~- E H/3ĕ|4P Ga/j}̅\F_`\#AC L9tw_ F!jeəٯɴ<-Y4P|כ'K3I?HO'"[򋯸#G2Hj nZF/x" ;GZ7Tj{0j`NV}GT;@cnۅMar(EԊCNDSnF;&?ϻ Qr_+H=&{Cʢu :.P~%5vffS䓾fTMwS³d'mVLAiҬah_u/ yqf b^jd%ň m/#h E+n[n6`yߋS"[[?9 >`nV!״YWfnm k^xV|$F6n$UtOn,ʆt`Ƞ^8%`0ۮ`ɧ]Hވu>v+ܴ@VI#Tê$N6Xww806ŽY :W-sa/ÎB~AlJ6d +'O',%~7da+SL29]dݚba}>Oȩyq.hn6^EȜ +_JbV4 sTP8n7_*!]i-x6plʊ>q qY d1IR;LaB Vѫws'׮ҫ?гQ/!h bf%݁pC/1eYx] .=sD]%# $a__T"(CYƼ;,#t RS,(i) CNyA$MH2kۇtp( (a!Vfns?G\R.K~rW*^ŗff4en.PyprJO)%4LrHNJBIR|XbP6e]t;K4߄Pw Oo-󿵰Qh**R2sV,Oҏx5N MJiԅrZ䈍ǂ{i|%~ct1yAێ@T^/cBKQ|zYIR2R:g$iX;FHA$0t>gpA'^lk<ؑD!VEBpZ'x7 7 +4_\]^#K1;sf^=:^wL)2k*M4L8L٪(s1hNό㱋v K͋86@(}hȌ(#1%X`t * LRKgslˆ˱ALFe\';]GI>)ݞ6#s"2d_ 2E 6KsM2 ,NeNby3e!\_Bx>T ibqSN_yI@BMDei ^+H=?Ée;~C`o't Iϑ_sk] &YĈQ {zcHb#wd^y9fkUO#'_`ɝBV ,$/%q&ꖐDY*# /HO4<-Y'Aa3{Eů.̜IZzU{2N Nn(!M&KO4c4ivwHXucQSWJg/q` b=bot>; kg.1|y+M`HMXojGTνqF7<~dLO1aj')Fjqjf"$=)^t? SE)ğ%pvg7"*ٓ$0 @g`K@lWRc(8d>⽛C"IR9J,ܑBwl`~)f*J F=BgMC[691I(fB]E X?N@mL-tk!r=a#9c NP}%tm˵֓i{&='w7Nh)xb=c[ yuۈɢmm(*m(t_ڟQ;k :&;;](CF;vW/6h l Z~ $~=<;f_wv>|fQ3ȶ[eG>TmwA0mXYƣ䙝Q@xjJ =1s9۶Cfd1=JE9bx( T,Vפ2sAˋa܉" v(>)} 0N4Fژq@XQ7ى@%|]&|(7_ }Jgw'aa@*j'/fPRhaͧ"r]~p4Q0NOVx:-|Y+J/ ބuM,$&9uI0C~ФwM3pw3"R9k@)0xMw8ΓyX8~q+(Ѫ:[E9VaRA)5]}e'xJJD\!i2(D܄JPdJg_JcY{IK<3xDI j40 m<$D*JʗrN#Lxvk=H$,7F٦f"BPJf,0Yw o4L]̮W-JT~8-N(!x%TWXʏ^ nB7?Nz{ &,5*,.bhv"ѥD gqy7+`,|yPi݆+ 1&[\1 ǧ hJժWs!"1ΆV+/b([Zڞ 氾ǩ:lBw},ɮJcLy2fDAEBq$ץ@LԎn32N:\o?~2$aeh2kXԙm#޴ChS-^K }b o\1m-ɧſ޸\^q~a'^+^>C ǼS@ףtYaHy~={N!:-7|{k$Oҕ0 ,/OK=ySqK폤2Aݛ~eiB(Dś>ҩYQt"CdT acϹy91~Vj"n'0P5@W{rn1-rCj+d9Q؃Vҁ wI_ENÍ{KZXZfm+w99ژ18Qo6+< aCc4N %ensao/+f5&nG[-)_O:ٌ^ꒁ .m=VכޗE1Μ(\@ aztdR.̮ޣ_7WTޑh b@P ͙ K쿍^s0΀1V-`qggG!I'(on2D~ CDk<vd`+_/h̢Ŧh! ʏrL[]<9Ob}p" )wUO󪞗pYc9/8{uxFUfSr,B,IC(%G# ۧPI-_3ߝUocQo`#Y{ccRo$lW^˟8G*,Mǵ/r hgJhB89Fբ5u,5hS(<{ɸ!i*NU/i[>MaP syxb&,m])hwewUt391xu \Oԃ;UIie^ЌW^_Q&B1sޡU~UE0(yM:#YҴEHD@B|_!MqW ue6L8)wȾzg}{KtTfBu{Rkq5)JO Mbh:[h4a݁祔=H[m]*Om:@vw8赌*1u;cd+yeWF]ʺ1-G/c,\hG+./UQN#h覨@2w[+_]>O{gk4H2^{O{hZO‡Yn`^I}Yr]ց{Qvܥ>G_Cl'jB4Ľm#_^8N܆hDp_\M5/O  tE?[f;ޜ#4`-4 yeY 2'^0͇8z_,):9m{Y?5s`Ty,oˀe݋.ah`㮂@N'b1K8XR#׀]LCLN06=!Ǒ>k~h\]76YPM5<,Yc̞`;H̾eh[jgS^ b:|lꋿ!rSк& 6Knr5cIˠu>dMLD_O rۧNѥ~U C|@j툀w DOXCmtؗ-qeIO譶ﲴkAp"Wp"j0A ɈMb{tEZɹ#e "0a5~dXN2BѠR[<Y;8ᐢ,~:܊a>3%z)f|.6tְ369yTqm6}zv- c׫uDݡ0v6 ү\MbdND E{GőT6huא?ƺ0#$^hVc/kh"RVcFrf?@6݁r)Ōz?5B[!iPDLB 4W^EdeKEƌ5qK۳ucxK7kѩja$8QQs& 5KtNA# @.yȃ{Ϩܐw{P4 d9}=:)Q6ZѾ4(!&E cSԳJ/ ?ܚ"_rR8kbWvud?SEpA<ª&;О;5r<%4  ]S>xL2f8ݭDM}anC"R!ӂ JZވ} @6OrC= ${> W=ï8D%nGG5QߌS4omu1 Jew@e\m>@ l GZx3JlQ=H<=i 8}ۘ%XLҞX<ñj: Ѵqˣn S: a6e|X6D1uW:a]VIE\u"xo(d.fTk>2}|u+@ZI`M:Es[Y#1(.?x#Tl S \CӝE}o& (Ad_'D4K&19TX\("Wx@}`h1yekbABӛ;Vl;7w߿3܅GBL'kpM*Dŏ/|1ѹ*b)/Y0il 79q[ #UO7|'j>BHĦSzVryķn-]prXAZfo4T5#`0poąsM_}G =F?Yk>T۬ .vV2:`ԧkSYܟ\x4Rv8 `_挠NM=-r(ihؖȁlWwh,Y;>âH/',b XL0aN.KFXeS>>n=N(ZaBSLvY^ğ{ӢM Ʃ^8Lfr >$`oCR쥊'; vB7ʵijI_F;DJxzՏ5N~P. 4nkxWt?,ю:m7|U!F,]BXv;ÊŴha|BJs'~l23UJzDQо1xBx#}d9^h~pU$p?Z#tֳ۫+g: ** cZ* qyL.zsYۆ(x|m)WTp%d]e iz6㗱Dv5b(A~waN`>ǞI{U}`e.xA)sh]S||b9&=aeB d@X3T8FX2G:Ovh[b4MWsDMԅz1ŁMΑ'f<+^h Aۂjܭ&q'k u[mX0G֯jM.)/㥬fzWଚP4VK?og/p`7IT FBo=7̓2K+VX:Rx} ו|iČᩖѻ+o[IKĚE-.2ԮGaǚ9m/}Y$* ԕJ$~V,h[ A!J#3,EvסQe1`TEA75ni}2-k2a, ]&cR&De*ʝwvhI.;~/бαI¾3?9>oRWL[j;*!Єs!PEP%| $˃͹%}jԼWqQU+0+G[uNJ#}}ᥤ!ϙe±Kd$vR7㌌[մIL K݆+˅M;CqcX JJ6rB3 p gAD>0.U#?Q fXd^qGG&YSPt>Iΐs(ֲ0Yz8tCes*Gb: >4WɁ!cpЉW"COR*J@^eZdʥQGuy&z~v˘#tGgseèQwz9 0Xʼnp[Kflog}#ލ/uV{K!91)]."'ߦeI:Eb!s{J^AFX)z 8*m%1~{otEP1E2eeM1fy"pT7bP̂\D^jڹAk1)eY?%VQWK ,ϟW;F?ZwT3 va@lq"ׂ)uF~wɳ[qJW-*WcnN#bϓ^#LYyB-E$*׮IE^DRlL[Y58fF(h[J%Ydit6لs1c^g ՜"s랬J/D$`Ux11+PlDSUT 3O1z=")f6TI>v󁝪(P:Fٺ55pM5}z QC>앬t?f?jlmxɗ?,֗{όy檯 ~,mxh?jg#zjYy~5cSAm۟qG%CU5yJ73Ŋm= TP]R$nTP~ $*Q$ I38q*1Krd8iq]Ab+yCmC:l~|P Kg3 cY=:^a4eKe^#?!-2aUL:Le*1P?۰k ck<Lqi$s{I4< %E@cZ3Xz,Nqts[ N~2ҢʪuSbq-̰0f5 Ɣd= bT~SvVeqY8uXPsN\3z^[ DꨕZÛsGסYPTT1H6 WAR3O{hWХIH yO~Ҳn\F*_+Cw6M&rh"!E=4KRCar:'MU٣.igeJIZؾ S,Ng3vExЮPhk?Td;°O-Ή^<8V9YlqaQ)ha'E/ZkgBOo ,x*.*Hah2C*j+Ⱥ#: > CQ`U& /8FқWln)*{ lQ5NqI:DߊE\Vðd&Qj.`XQKn$fMr٣8榋z@_bvp}VkA&|rWR7ؒLV{8ƭ4`Uy9Cہh Ͷ7k%Sʜ?=gĂA96vpFpmjdخMqJF5U 7y8NN2uYz 91 8բ$S7/aX D:|TAsEu1ڇ;یq|6",QE~5+$SAUϡ@䱍}c~XG!$!KgȬUs\(nJ$D}q Hy-!KX) \%%?Xrُ%$OuzH+ƀON'|ArWN|͟`WLP@,mCqx-v;nb3)9"|:-&-kZ33Ivojs97h%l? 0ǡv67\:f z4}b%p]ͨq^Zb#INwJk!Ǵ-HYI1CN,t4kPW&ynr^H؆ܩW!Mbc}Hv_UyNlfQf_jGdXo ;Pw:5 CDZ\x{]44@pĝBկ.xnI͙>p,YMB݃CAJ^ƫPP2|g6&+`ь dT䢵:~P6 M5jw|w)1-Dp% =3 "+sKF!(#D4EMlCai_`gz=%i jQrjv_QZ$a*26| FcQ"z gY MJxQZ`aڎko$:Ћ֗gX$qMg(FjS K9.\P:QtPunB-"&~7$&.x;D%}ܺ'.,l#yނ/ZXOEr3QuᨊOQ`ꌾl1:owƙG DB7&es?S֎n6/)p|KrWvaԱTxԶ@GL,ichs)~}#3BrjrE( dd(?^|Jes;ˀ9 ` D3;f+T*@41CvPӘo(xsaA|1Y6TP3xB::OSGr JCfEE zݐEuUO`\2nyJ|{bo~0zJb^ch z/ nN{j"`*Mm\QBT|RwcÙi> K XZ)߫~bLu 'd$:]6}2.Hp+{*}\tJp3%L7d91SJ48mp9dCyﲭaDZσ 0KNTZMI8d!vszFI=/)7pt$KW[ &5˓F'Ⱦ[[nlAe7Gtw/hF/+E%󌤆R]8LBZb7mtOO#ÈDM"Љ dJ8U82{1v@s!jE3ŠBK'N5=wҾ|t~q|$ș 7Ͻ^taED/oTyO|~NY&.WE୥W4.t^w[Ea&-p؈w4+O7mNjT+*?@ޕO^;)s|]mbe]^҂%@!oHsS:b../erk*n`8zUFAn!, lZNveq~6sNShޡuEj+eTqg\e)e;3fCv, ,ɣMHH>)ArG<_' !ޜo(W>tW~|~?늢F6KU9[}"`MU1=\Ln̈SnX&ץ>:C3t;YU+'ѣ8,*5k0wL&_kHt4͇ $O}N+%{?*fy;Չcbr:if3:7wf$ +.Ī\yE ;4Д#>/LGrƱٱeA QIrM@6 4 Ӻg̵٨qP#)rw-(7 "1I=)`, &`._p@h٥n۶@\s`(tqSa+$!+O <"!"&Ȓ:{C3W}kNuta Dn#R`N>!{\sk HSD29:' ]ZO\<ŬWEy `(;7{^irx{l877Oqh|:i4<;衂gbvFi&N9ڡ:ܳ#">/ha=d4oa1/s(ۉ< !57o-!Uuk?cY:|`4?Qp(ds L`fpO}?lWn>im&Fz0!C(KIB~ P7I!O8i {<vDdo"OZ]]Wʨ{VKKT"Ze5 fꔡPޣ,zϫoe\Gi`["Ti;VU@qՈTVl(0󷛚 >0]v^vMty\v, J:x}y&"4Q}o@W s#'TarXd%SPjG`+1^f7fƏ۞/0ʺj4]*7Ib;J>$n l"\CGB;N3UKWC߀rDjNʤ]W>mw2z*{ 4{'ntƁPY|>X:5V+^ NPLY1gv egϼL-enΜ'."Y0ߌם=.J?,=ux˄zVشfj/X#@syjMj5˶:5TC8O/g[ }0)kpLg;PVT}pj!`L;7t) CYh@xI0܌ }/緡dkc =f)^ S'm.:-CLpݤ+=A~`I.j4nS"j8ߞ']8-h_/`8k0ƌb٘zsIxFceO 0po;='s-kZzY)~WypN84+јȐxXfwRͶW㜘.lqx!m1x# 4B7/o576O! 7隶(uj3oהv~VWxT2`sRINEQ416V 6sj%;:G1:+m=FӶd`kFr $&f}&;1&iDav(v% *("u2qZ}571J]W~XG1H7H3fp_-To]< wlB*X]΢VG,9&|QtB&Cyr^;N1d2eOwTnG{Pi4Yx3u9k2~J- cRKu+6H_:mc8}x%#Ab J.'iJ?00סOPzgkǖGFi;C Oi$?VREY> tNAdE5:s0lTOXԤ)l|>(F8x9C#'oL\܈P>]$;> C/OZvk@(sc>*s_?#\ap6n%蠡KSW  +_.ξ, z)7G]h9P3mp]AfUBXCf(c &YMpӠGtv*e+IxzckGLG`Ml'Jo` b 'ҀVdA,7Kg%J~q+VPF㥳x , &cY_J0 &lӄGK`U=mKID3KD2 }9CQH~ 0ZV>iU?,(Q /uYڂ%$Kn  k2`$؊ڛ=[p4u-f$B_׹p'n$GP(Tv12u@b;C?~B͡R1BOs M_ !6g5zq_Bas):QPM.⏇A9E6 K,nb#k 'f rʴ'vs0,1杇$ݍ#s.-2%vǐNq֙]Գ9֨?X`̖,NEjʍkOw֧0`=PߥDsc@!i&LY:H?݃nSeWo/}0@[s`?p4RyZZ( ]-a`sVZQ(D̰ގ'u bD]W)j1&jENH_5eM,+.cCJX=THJ#Q0=P oxE'>N o݊\G6z -X}-BG,+OXk$ lĈ+V06/։`0UI+ſ?Kz-4$TԌA2%/Q1A_\j[UvT&hZ:`9gO;kfo Jj I@V>nhG#ݞg%&nP6z[5>v{Zoo4ճ7smFsMTJ^:? @@3OGaGyS~I˸Ӟ0GOė$h2izZ kD[,/]Ej[@|QdiLu˂1.Kx^ ?.7CӷWQu)ׁ,8h"BJf)69-)jY0Y}Uϣ/&#IymF1hNx%a >}7fI;h!+7"\R`n54ͮM}UkDPB#X·ЭP&RJ9V=m>Wwy[!R$*,-Q`Nu_p,Rs!$4n{93/OkOkCiy%"`3&d42V\mi&KjiP}'!44eކ$N^@VhXX^D'M|5UX2ӹseþۖ/cK ۋŏ`&b6v}G\Fb !}hܷE`v~ ѮvixpCt2Ok Rxs:ZcsEer|^W}#U)sXPWy߆S0 %bHNm!!ܜ"CAH#2Y`߈7Jlux][pE3+ &|4IzQӨ|!ezRӟAEmF3"{VM r|kQbgB!A4uӉ)`*Rp UxQ# =;LITw@uf&=i?`ϴ7_>0$7u76*x.LA:O ߨȄXKD+ 3bEb9";c5N6DzLVQifFDL0Ƚ=qZ/6.`ddȇ:rFgz=ebm Q%Kq 2~05!Q&b0V2j5+D0 =!6ê>PTH"![cd"30@yA_o@7D-H itY%ӏ=18 tB[o )?ӦYKdO a5]6j2tl6-D[ė}<<΋4@<>i7\ĴTy Zd̹fxGRPv|/S[49V8NKdwF nBdxY--(++, Ѷآn^1@SB|y ݧǶ zA 'ނ$ p?%Bo2A N;BH^|7*wSb|snoopͱyÜ\`.V"Dn뚎!q2m\kE\r5"&(b|pL1r˰q%Vb/dr("ڴ\FHCwBqfihh_^*bˈU.lDX ?\O0#LfNY-E)wKNUggH a yеtAf*Z.;|gKn0Q$S-4I 9*9k ӕ_nW>8sTkU`}[Z&DLxeπ2n5!t^AItoFlCCI >5ٝ.bhܵ+Jօ{Z-[ GwЏ_ .;.=x:\TGZWJD>ƖIgMUdPLQO􄛎.*h d r'O 'Blq2s 9ީ.:'!t҈)%VD G0 x7Gݞ"rUpwtƾVٙvq83;Έqm_143y !6n9Ot,bg+R%.KZSRŊ#o RpW qߪuN0=ԭʨOHtxGn0rͰqaor{ouޘ@5&1B~V*&>!m4b.I~*J$n[A7ĊT[߹eo"m'[a,z{hTS]ξebN]h?eOԕ[%f؁-"mNZ<% 5xp7}qˠs]r)[㳟J| f7 `cvKQ$~~chL IXܳȿnׅS'D%j5h~x?xbfoe!:5 0L6ӖSz_vf&#>mjьޮ䣫;~;+`kiF 7*;9 )lڻQf+Jdn\2@굢l |7ٶ@.l"boH87{mk D\I#7+5Ce;ġl#,^0DS^ zIeo(}HP H+]^D}tCǦKe?xW _Fq2,T_ZH̀,P#&E&C |:Ul Հ桴KYjmKM 磘Z1)H W/yBgNxc320 RASAP8k @ 0$5>~j W3}};&S>1AS5n!H DKpaesᰰ b0:и(b拾J&!.zͷU[=h>E }1QTNfjGpzy'Ԓu;X7ob-ᷭkPW̳doF )VOō ]"_e :-u7h?Cc[f!75*W c9>-W0V(f(:&3ճuv3Ԍ^2@{:KAO7?|= ⨔~8>nMן6 NvQH/ #b'Lg?R&E\ٸbY`]WY4ț}̓J {#O *iV?m~RJV #wBN:T̽%קA쵥T^=M{ma~կeV=Wָ=uٴ,,e<Ǿ~@3Ml:VKnXIa .T5]"7,l/$/f >uqkfݰC]o*o 8Zi'dg-O*0mOxM A5ٗ6_+wz`ЏimS&LpKR{β٭^DL`!˦ʠ^( Nn 8.]𸜠!a|iJcFR9y6Q*Ӑh!:mLG>WW iQNݑz'~Y (&Xы $~ۨ/%1K4 >s>Nv6tDR𿿰sG+nmų  : vzvUI+3=WzWI҃ ){*G&#qV ˕y/NX=Zw;idt0]QCH0cTBD1q6zODw9vd=i/Q=FR?ċ(d{WȾ9$cu|`P7Ջlk%[:rYV-G%f [x^Z۠ €/7G]|dl@q6V_eV:3@,A ru@wT ?svJcnT\\ ,dT3Зx.^r3;<eN6+0n2v=k ܸ A:v+Hݲ^g0F,cweG{򰿴p5!Sv,&A{5KN+ZG$h+N5e>tpily ơi>ye48Qb{AI#)9fi1^jэbi{ʛoG~X@ 7#Ìe@nR t~3[WX4G'!NfN#KޥϹ)Rdh J)|G4*~b~YWqq@^樫M!- {AF'xP)uk`x^"٨j0B{KP|eǚ-)3dI3CR+}atЁTFaI 1rIF[Cw'.yAfsɖO ;즃J=zt & K'B(>* 2򻥃Z/Qt3/QwTBbS$\g֓ zw:\L\:PT4Zuvlpȍc]XNN.PfQoH":wwadY+zذH ]4ќN9ωD u>@$ʺdnܽ8.D62׀cZwNꁑdTAY9RNZ3w42W^tZ#R.‹^ZzTq*E |wfP%y[ފ6g l<%WN쒾'f̙>J?Ƙ .`Q6kX CS%&-uMlɖHQLV>Ð^]FFކS4Gz j5KIsAz~y{"߸//rЗ= J|T]uwfKu1HV"U%ss悊L&}R!G!U).n×zfQ9R-*y*{*FA U:#Wtsi9e4½z$?`Ʌb* <3[nK@aSQ*vopdkhu8Vl<$p =s)vP m(<;f".5)vhΟHWIk4V1`^ :$y|Zƅx$w墶9j牍(5ՒHm 똃0W )V\^![Idz- U div ߀7Ȫ'́Kdd4ѧ)>XL^*TiEפ+xA7#NVd{:\Hذ ƌ=.#isyD% `"kQˉj`+H$?mZ6庾毧j,Xv?S~Jh)[XsjYH=9Bv=~6$ T*adFyftRէ\&y LoKo"G: ϺV n~$O~c~vDz| xinUHbKӌjY9rbߛ$lǾ[oaWz}5w@!;9/+@14k2RPiน&&"d 3=ׯb5 /:@x-/HEɏ'i &|Em'%Ano=N@OBemx4ʙQ]F1 +q1*,ɤՁH{>>4嵯>K^wGb4O*+NgrwئS.Qj, t4BNdTm6']~勼n3Hd5fQ !-v>2ٌ*^ J]ɱKy?5l7[A..-=U-8oi1?Au䠰K ɞs10(HM-vL{,;%T0gVPo6A]q*c<28MUvE a@:g$#%tq))Ў֖Q~$JgmÔȜ%eMƫ~=vl8 ɒӐKYh>nถ]*#P?r fa&Z#Vߐլ(orW7ݤqHƺ R)_KS nJ$ǣi]Wa>JEbѿE][=xiuVAr3jFoDFrlB\EPMtCo4[nS,[%ٍb'ߺ 9UIhI_j'Pbr󹜌.nuY/uv6U.!+4.z/(15Nl퀦k{/?\a_N5_Ɵezp$_(La:.27Hk8$ߺ>Z3zڤdBCMo=\SA(צ*ֽah^f)?TW:HTY/gx0u.Gf"KsΗ>$zOR<| i%_dGwPoopr;:^&D_0/LPiP5ۿu$"踢uiR*bjFbbL?͵[63urZ1 1QQ#X=A@ q,saF C ;V.Dnr985,98m_o=d{z4+AS8$/ i'zYC|g)^\|~A2W0_ה-f íT.j)~*N%y(s.j#|r#8' ~a۾bC-H{u@H:L{f?qO:ǃflb9a/G۲>;r^(f=9h5NJrX:zFGGXs;V1^&9^{!ÿQQa.ِ)]iWs}ō+Lն8y>gva*sꖺkrc- qwSyr/@L, >dlpy;!AsU;5iB5$Bv73C/912vnɲCHB7 mQ`֏Dfލ^EK$8`-=fK}o:}0fgYX}XE:r n@C1hV R\#ڂ0"i 8!)t+P UdLVVIݗV^S"hV %c1鿤4)0t~?I_`8E#r}0z>HK1rwߝ\a|UF!/Ng-fb.Xu^wy!+gm%+K6i$@ }+0'ޟu:`wyN@'ٓt)Y^m?޾.$>L1GMIVo"Cwݳ(v?D6cNvԀحD͂gR"tV3ly,5(aKLV栒ID\Ț9v`N&C|%r O"/yZXwpL3ro{(TP rl8AQc^ 9h 3UIbY(P(pd6ƖS&"넚Z<0>rv-)v%&}gZ@\{7gz+۹vHNWC[`8oM~~ˀ~X0JCt5=]Y5Ҧ ER`54MRql(h3,h3uHEc{\؎İt"ckU75\ih~ *ζq&N'KR\kcqo!xʑK~0V:Ii) ִTV _:  ja^h\dH֐& M+ }CY1',lΏS<)_JT^A# 0ssw4`yeMVp ^1;τ'}$cw\58x \°shzY% 16"eT sh4<&P MΊr_&*XBfn_dh>l=kCrbmuw;m^iTvNjMx H}3JRe-RB' ;e_H 2{p®tjKcG$җu9쉭K/*ysT_/n%%Mq^0- ʊzFQHR ^@bTQ'A|mSZ\@>Ś4Mi Aݠ9Ώ,d= e(wV'zteݼ&+sp7fλ5fT,H6:f( 7ז3j$JQc𼱯s&pޯ|ݰ`wHsh%Z:D$CR^ɋ܅H;:Kmo T(q:wa .|Is(Cɢ|ʭB[Z*b 0gU"9|6V0ބUDzZ[u-)jBzȪw8UQ\rtd_U}ԏ}ﮭdtS mIsls8U_B^Evp )UYӱ2y/_4͟ >*ǽ`%+@V:$FOb wE"{[p1 שڳ:*'j lHA ֫z,#^ՎK{%&JKLtr'^tFU⨎L b;3ZR͘ `MSp6iu]΃FV`y.`8 JfRF=GBUN0e-y7t`["-e:Cٕq{ӈ.wޖ\Ռ1nabG1Ն,/aKO6[˹nt]pbx|eչw|dza4^(.h;(1jJ;_@O,,YPܪJ K ԔK2vM!.u0L)F#5sii ΁$>Q<#œG~?7ͭƛwܳJZj+!j_]-iV DӚ,<)AU(&DZjr)u/jqPJT>1W6Wzv7 j#}ㆩqp~;) 4%pQzFP}AliWf6jy \JJ6v4*H'kaFZ˙1} 3ͅS}\mv99lqrF*!6Qy I[eKQ/&].%ȘjRGa|wMK6i{r'0d7]-h;Hn-ި:ڏ5+hI3v62=][疋%FzbTI]]a ubUaqgAu\L@8z5l7%1X`lz]S]*=P,K7A?)7 㟢$A2"Qj` 3"İ]e@A ˖DE &#ȮܒH >Ϝq{z+<&p Lel`=^/:@ =(/W!v< Oh"mUM.Ӂռl2$@#䜖- eLki6#׾j7R+ <:EVp, Oӊ0:1>yrgKPj鉆k5vt4?j.ZBJK D[WCX+1@ٟ|{=7jռS&iҦB/TwsQh#qm{%E}V6}JJƐHN0ыtM.sң (?ofEqHnF, P(C@:,< 61ezt!gゐcmh~$wEϿPWuӪR6F$*B, ?T;)W+JY^wsUMX'xqSNdՠ!go!|?=ilf'.|cX٬[GL)"h: 1l߻oz;Vg SG)Jb\u` a>T9u#vw gx9k ` IWA>;U`~m%Oa Vluy45p~ b*& m2[xd 9t7R2Ӕ%@p=ɵ3] ~'Ğ{na)asG\3(ixDJ!eA>H׼FlKbžB bZ^ mWyDD&6>\3l\Uػ1{Q{qh䃉Zc=ԋɲָ14zM]wqOn~CZ%A6+jQc_8Vu< Lw0K$=! _l7\$GybÂqXEWq+rw1"v\j֦ JlJHRFC1zv1 bT :+g ;GtxUgX p؞Ydt(/BRV:O֠Ѡ>ʓ29+/Ǝ|(q eΑ{Q/f^m% ]\lj*,P`a!nG^m>z,bX\si ?H`m݃VFA*کm {:\gl^ZЪ/k&9KpA%*h @x Թy,n5~_/U H̔/m-A )< 3-!:ԄEP.E#">\ 58ǤXs3Nn eR/4Q<|uZ>1, V 0n)e*%] (t9#`e4K,iQ|%0eZuu8=QEajQ$P%Xuv`#-M̯_X@g'|]݉/]r4G`/ iPؤI rT#B6l:ˤ 2{O1*ڂ{T[M˦:B {uŲ+Dѕɴs="N` jn`Nj+j,0 3E;F MGfT ]9xGAŮ MRfBUatVن~AV+[:`x5+sZQ2dtF ĺQRrrmQIa!movZy@ 3{E1pkidbHM;̣ oȨ_M[Ⱦzf|twg !)ȃ(6 BeMUܕ[֘*bP'! Jf7V`~nR5‘ubDPE z*>|fJp4 ZfߌKažh׋Wl,pi5X..YC7bdﭒDV3 %L 7:Vb;̓Y&7 e#R/(|T;>Ȯccv?Ck[\ m"yh9렐#@Nj dC48=>U;@w{FWW\ 4GMF偬촍.jpi?P8?4r4ۤ 0#G ߩ:Rc8b&9HwhΧgh7MY;}U E~at YUSkQ $8Y>s Piyx[1&-=}1@)~(=h׬vD8+4)}/nG<4W-`qdj(G),@Th1"T>I !\-|$O´1'o+RgzsōኰnQe}{I턝&ʬ{ ħ5ލ8M0&jy7h]Ν@<7 aڝ35_ > Z+˾T$[NHoSPbC w;@T[hX zmtС+p\c7\z!qn_anVI^;R<(lwSA?Qy.؟w;^7|`O 8 %^qۗ-sō¤ M<Z31[˲@ F;!]+MsC_Dy͡aF+ӳZ цܦ|+q RcZDoT~:5rpV;?';)8 5snuBnmPFX+4#'{CLv-y),y Htܔ% ۜ7Dt[)':iy(UajE^͏Ց&@uA=@.#]z hNe4@&RrNW)WGpFh;4.lBpSKlhQR*C9rgA8@s8o/z2O=FyeBJP~2B*]*>()ꦡn%@bb*$EFr;0e5Xm7Ak=`A@> ?@yFּh-F% l6<p`iBtDn]өr.Ehs!%5őU Gb,1RĻq@“XN իR[!~ U>e䛡5݅z"+5=,3+$UaC]IZ+#f rBV)YC4Si(+wSADX"`ʽb9 ~U5B4At98]y†Uo|N;*iVކ`U;[*ωU ~<$Z#`8%زY3 @>FɁ<ќە\ Tc⭑b`P{#|omon>rtF'l%LmtRkDlfCzUB0H5xE匜'Gx H>3 mٗ@s%\5%ۄ7c1;5L,L;DfmOtØ#Ba>\bMwp }—VNS kfT` P nQ1JJwqꇓؼk"):ڥ`ƌ0e[d{QeDWi|y!A'}̀ʁeU=r[jEŪ( {CN 6}D9(7g8%{Ea;'ahSے-@^ !o_?|̵BCޡ1Wńr ȥAHpԥ3\Bh>˔d=d (,x i;3SB\Gvi.V+Q/!Z B GqhUnnc; N[ :o |E-GX8r 1<4t 87DwۆL%"^Qk9"#~B<`)zũu`8zcwԱ"wQcC+S!,KR{}CG5}*TK17삦e!,;^2d%_`-y.!BK;!tx;hbzUǯb Kp`^Ζ 9`U{Fg%h?۽`_!A͒|G񑫃zq O^9 uO4̛Y= Ӡn_`CPHjlFRBw~mC0kϝ6p(%Ioܘ@-vUE`9L4G#u}hʒIUNaa5L٣( 㠝X(Nd9- hLЫvO (ԉ0 []m@Dl0`HIZ&oWR?SXL !0 Jֵ^ +>Fpm^cChe`ɛ۔ᛀjQbɽK.?2}C)p0y'P4LQ`nʾ鯫"#Dfd8=8t:FY^N,% bŢgv8?7O*1I} bo)TɬF2wX"šK {D [lP56PI#9GBy _jOwW/' Mߍ`ɻƂ6O&>ni,љL;zl7_DxbBQUNe;0kz)-OgӐ@p"X8݆ݝ tKcEdY~gDƃ3s9{) Τ!}281Kξ`N9=!P*= oP:yA3|C7^Jt[_͓AmlZ¯T1n*ɂLh! ZXZWeRX@(mCr7-_oG ^iCP2hFQ7'oS|G5I]s˟GY)}f@O*̖:#XW"qf82˘/ ,f{B5"l(nO!.7T>o" Bowp+ M5!t煃Ķ2tcJ0bݐ64pXe cޘw+(+~KkAK/{'O_gڦC4>QsnwSْL?~s(Y7EOGvV,R>E҈q~69quYRt"Il/ҫ؛#yV'Qqĺ-Fأ`KJ(\[U,}jrx߁NٻxomFa:Cb9\]PI2 Dv8 a:;؈Z:>Rm0]RT<Q`'9v\-bܟLŕ:P4Q٦KFH1ۋ8eԁ[_8bFʮB GSmy.MgkeK&չV[:%˖ Xu97&[;XVcP)0 5 :$w@, s4z-hQb 8q*)sg L,KlE.=jjX+כA2^GG ޛ+ 9-.&0%Evf-߆~B’Ѿ %s5a.*T܀K2-&Xּ~#PF 3O4r~4T-7Kq! 61 Ks4IwWtZWe|e{1? J◭\Xڴw 5ZpYq U{%z.@T D)i]!"đu04A,aL諦i!%rt(hV2)&8 VaFlVfs(_Osڇ1M-K*g]=zc=z[EU WwYdC2ۖ)Pa)VT1h݌c/t{gQ?]tDG2KHUz/MM[UK^ڡ^Sr#L;S_';UOg{2* ;k(?Y'&TV7 9MǬ$NI0HTbGu*`¬F} PS52]I2|~ yi+ƀOZ $~|zG )%Y~66f9(XܞiKAfIo';8qH6}8\yMޕ03;9P5ڝ5Nl~jjE[_3x͘Sm*˕k bB*>>'b]6?FHC 0n_!4Bm>})ZpG}|48Cʰsx% à AW x~~33,rw#4RvT1Znt /kA ~]nNef| G>l?HeK3|{qy\R3Px6oM`Bmj'eM0BEQ3OfvuvRL^=a {dT꥘ &kzL"wf;9Կa ?ol'?6ʱӝFň4A3[X)C1mǪUmͨ5K0;S /tEfVw$H#U(]OTwi|С~f|2K x-3 q}q]636^KKxU rI,,8Q^ߏ>Φlq*/)7~P]1y7Y[S_3q$'Img<$H^p߃BG J4ikY-͓/R5 K򡅧f&,Skjr`$vA–K&kڻ|g/'u2{0(!Ȃ M eߣ.6#Ȱp/aaNOEvLsCAfXr7*zUsP2i|.emfǮ;⁌/<.tPnn7Gwm%kX7aĹ2쵏 ,6i:\kWۇSI*Jӎ|AIYS; qJq9G+f->m8RLS%BH-!Q 8 S&ӿ!\,(;&UGڲI, k[- V3lwmQ^ 6\޲F0;ґCL~$:+iDŽ_%nQAc؜'`pthr'$k$a聛ಔTF7g*X/J=}DT|ѳyF| >ҳrڙsyrmé˶Qb&mj `寒ơJFMXWSnx`8&"Ճ!ŻOaWAɈ {2cǽxK4IeFx1Wt .ԑ˶UT`qOwcȞ擓UػGɨqUi"Oǯ ۶%6/qJ^Su(6/Z}t)5 7~Hd&D#24Wz$sdʩUqrYcE  CǺ dKK>Kw j Riۍk|!]kAtic $@ٽN@MfEJа{6@,?w gCKȨ1IY~!=J=w-C_Gwrsq~NN0U3-\˲#ʝ>"Z?1 ĄF80C5fhA kC /׭]]2|_P yΣi E?\|zF^zCrb-yz8LߺFٵs~~&`pC䥥㜺}uTR%AЦ_[x W@Fz53V< #ٛ tYBQ!4nw ]ŨK"OZ~QԒ4C5{NϾbQ@ĆXl-(pTHGQZKM1o;{3/RZ Y5uQ\{ tf<"^;Đ:HfN5Ʋ􎧚f:f]i^?$ [cIȼzB^t_jA_\4!6{M҂2%tNS˝VaOicXzaju}ZKimRtY~;m^QFW_A#&c8(0VzITiyېT~)ٖmM/Hz_zto,/qՋ1jXf@NKɗ?nJCH{4Ehv5Nu7T;n| Sէ D'8h>*%>dI/DsU4PD, ŬOƗoni L빿3Y9Ā1x{X ! dO,ނ`ؙU~C Is9gMtCtsat1t>Rfl!j-,|e"hks+uK(`2KuD2 XyO 2i`*zkiKl<&w7@= z jcD}`#t j$FD0<VP$o\]3G7g|Da+|{JrE>#Ex2*Bj#wzU버2vT)=0pbxu}%;lS%A'?M w {XGx2J&^ +!5QǮnFlx uѣkaCӿOiHşk?wq&.r .Kde| hXnLb3Bi/VeR:"]aƛkTE1W ŕ@菱bK8V 9J.'nI?%5Hg=&D"V7 ws!HStgkX^I+ )ffۿI(*8KZ%;ܞa`s"ðM~[uMuv1]ˣS8@kťNJ7ћҐ8R$/h8׊{e"8psZF YW2*IL/#"*}al@V?΃8|M}gl]XҢdВG\lNGBLhxgň`_}sbZK E }Wxs|Nyi:ҖёJL@mP1&p2VIm#TcBu% :ig(WZ^ś+¶9ι`r sHBGCǑ-(dSÓTaɣA ƓOp#BN[QlPF͉.m hܤeb026{ N[1" ^ZẎTJNQ΀3?[´FZ+Z t2 [opFP4n}ܹϰ 26W0PVr%9[akb`a5&/-v%rF͇M q@ĘNf݌ȩ ȶeC2?kd%;ӑ")r৘$E'ft5- "H+^Vd2jg,3v"ޭ ֋*s/X{Z+ue҈ôL7_o<Hv/n/{ǚj.P]mS6P S>Z'2󵧨 Y$ ѭK*s;y4XtBآIBY$XLh̒)|'mf*Ev]/8l 6=g|LP޷L=9mfyu|5qǬ*eAXoK757/zu B_ @3Мc( XC(6 C^D{v {]HɊu ;lkh2S-K\v5f?qm Wюnj:lCK6U,"!: &F'uJ(X/<s& Ury/Maڟ3hHWLUϑ.O}0=]PfThrq (/E;% n]J|OE)\?jWmb|C6M/ٓ{OxѬǝb]Z^3J:MI7L7 cylpsC ~0|X[c\5G viV M,S|8U*L|zcG ǻ"h?dwրDY$bW#cC8A !3~g' ^T>/+ERu:*50+hӜ۾dۤ_0/AEr.nOU}P}!i Vc1-Y~>3JZt΄c,GR/ɼ-XZ1؀;h$MebMr|IFy :k -mˊrd6ApCz ΛO.C>B]"tFݻ[F9T:2ńV*ck`.~v֫Dc'ǬOٟ1\{6o!jb 7^(M;Ŗ{I.g-ͯJ=',PPLrI.sxKՍԾl*&ƴ )(?"Q65") 3AakW!/cEaN$]|)P s0[[5epSԭ*$}_}?Il8;-HjN]! VS'0C V=(D@TUd`A${Ԧi1O/FUMo 4IpDE S"ɪk*3<\꩕sdlj*Xɰqyр>_0TYQc#ڥ,jGw8{!XݮJU1aue} UX l w Dܫ(N̡+K!֠ąrބ;ufV CzP>];te`4| Hoȹ^ Z8.TžGY^w,* @嫒;Adxάl\f1?ba]T58<ܬƷޑJс87A4? V[2d݆+ҕZ)S/8&ԯ+ Y+n]1;lL2ܢcϳW'4W5 K犵 $A#w:eҤEA&ofY:YJ yLTNxSFʨ-Vs\'"{;';t/QX?+BqMݪ4.j5s+vҹ,WYY7<'2TZ%'ᝤQ$ Mf UKC q߾!L>%FtamX3{K@8f5vF!g@f+Skkݣ+C=GY|ThoJQIt!6Gui^xha%.t|+[@6[@];dsnN%y/kv:h % Yr'Y2lM(559!kG8le9:Hk[ŚQlJsrEI`Ea_~::tV.:c 8D< c`^IدN426`<FMsPr_QR }ҥxBjܑm䅇EH#`{O?VCn(WvVijjܨD%8P3:'PWHվn$9A(yQy)H5O &RPqڪ鏀: գW/ȃwnFҪ]ckd@0X0 V#I[KuE8  5IZS -7; 򆻏w&rr'XRƂX&d '4B\XHƁF,mN1F4&xw#ǻ0pɁi}FOHلYbQV76uz7nMt`@;fW [-D_ 7C ^05̽}Yӳ;@N<\W88vݨ`"[<,Ek{쀦;8pքȔqd._q9jyfs/)RX?(5a =Zļڌ* xzA%j{}GC1EI }_םmb3kz0Us\/Spt,Ҍ]OaH{X Ը(/@^dT;6^?#ٴPCBcl #H@:Gsx>qvb{9\A$ ǜ j?NPC.ˎX@ a$spXqwo1x̽/Rk:u&"`&,4*Ŕ39@kNO*I5U$w޹h,!X<N^C02è\ T*0럝p A|2H9^$*MQ$ P"'q{'#}uȯ`͇i%G{FR.eVj%=EMSH{͸(t$O3nyO, ;-pVqD;7OZsC%m~G|n+UgD-|L&9=cgK#/|ZO;hD >4ۑJQH9Sw#f⹻}w!1܌R T Fh͈tt$t)FGy:&a= guTU&ԏoDB'[P5GQsphk# N$Lsebix<%‰ D{48zYW|F_E70v9ΥLWxvj6~ T_^hPv7*QNJ+ 2\ Z j ^ U io^RT(n](ZmN} ۫G9/CctR+@1UE);rhe#B  "XGX&(eo@["T9u"L<_S$ \ ZЮ7ٹh_XfukVHҌہvT>9B cG$|}EpޒrD#kzdf8EBsX~O7զ& q aڡ]ܴDZ9zTh@,ʾ&ΰಪi1@BR#nOdx-B|V֗,*Zi%=:5>n=e 'sh$(a`Aq.}yF+T+P*>q>`"3awFQ0b.y%}&{XH9&,^34_'ҫh.OQ|?0˴)0]Bv}oZ-uO}F@] "3;-U8(m/д5w鼦c̣*ȋjW@85hMrjY" ?rIV- Ʃjc!{tokQDef5צD1X95UcŃt^T$rkˇ :gX:]0z+QlʟbItCݳ9՜lr* a|˼94(gL.Yа/WܥM@E,|?ew#}%}/^KD?&NujZ;] RɾykC8 Z/@<>DaD˷oMJY85p,t{bsKYlҡ=H(< ˅#O R D MpǛXCq3M'@t!D鬄I7WF_!DyvJz(-! "CZ* :jln1mD<sl:;I͈ | XyFƓiupY r@}: QݜJfF]@=D)ypQ\A6%?̡jIroq9X[EtShgx ĉ^tH5s6}?p{M6hFj7q͞Jr6wA_VDxC?TCYn xv1HR@E212}`bVV^_:R6IVW<t?2F] "(IZX[Ry8rْvDK?h^B+orҢW5/s[%%u!Y7B6D Wa|7[56"^9ۗRgu;_݆?))p7>_eu&S/mF 3Mh юdiNg\B]Yf 2GݗP0՝o:AS3HDq "k) aLM`yHlx*&wd3L)LSDwV5Wu,ѮC3# :O3C="^ $S ^ :{y:&>%>b̥'ȩ=%jR"Gnn~ͶD0_[="+d& 'ak| §"&pgVgߝIJ2A E dWuh\ {gލj[Z|>L;9X!Vp.*j 7xHYff }mvϸf\|She\Ewpi\/B|0TBu`4 6r^Kgxbb]0֦DU[l*',+Lkcm Ļ%\6VHayCi;9I&!;= $q|'$fo ɲ:eLŖv[.˴&+}7gYԌvmm[(Ep_&>c^GV͍!my>|3m1#H<J5ozzJk^AA_*@-+C>!?FurfCe>"kt4o{v㐯Cc)•WT;7N]W5Ωp5I-)+P@Zև5ܴ W0#xU1Sć)$oc/(؟e| Ҋ M Anᓘ٢}p$A.8,gBE)S/Od~. ~55g<rNq`ԍ%ħBGe1^; _G܁`.?>suOlFl>7vA%%޳f`ubxvf2-nQyuhl[bO)TT*cG'@4͍}ٻ}y,x/[$/[$ --:)s$s@-I9^Aj>S0x2IL0|QhEj~|ǜZ"41וsJ eEKHH#`<جePk\tܕ^ \vCkk!CbvJq,!!yаv!:};3́#JV(kt("&moFG,-U(aˆ\p&URK|F\x0oy]{#0{G=F Q"gP~pmpNC(^(Fh'j'_*'xUTQY6ܥ OhfƤЁy1Do4$&plۇ:VS(F٪|Ϳi5+ES'74UuHTBAim&Stgu2fϩB,Q>qNk5fwWThJ ҡP&{yÅ_|-xP h)Fє&ZU@j[Zޛ bg _CIuP*&pjv15x9ϊ]57(NPVBsb6lee͢U Z!KZ.`^F;}Dv4nk0*k_VcfEP{Uł#b1uϰwgY4!YvCSbʋGH<W1'^`c8%-BMxw[!x8Ox.Sө.L]‘7qlS)qj_ЛcopUm4"F~;JTTn:G/j^Niؼzagml@HKG(n]*t뙭ȟZk49O6-JmJ@5_zƀ`iz,L8I[HWTPxǎ(bCX$Q{L>DW̍i;EVӼ0e54j9۶E`hߪCgAgh#F -T+A\N|>(+ $LKr.V`XTA$2}mRs79QovSH&9H=sl73{ l _SNW'mJ<˵eMƄ%=LeT=_|V '. //ti1{juA/uFةL Vyl̺s8\8voÜ6ևQ@{*IyV9#xK u UD;A[DB!4Æ[;ʊ@(Q'ϬK곕I nE$~yEF9. } ,^"Ѓj2u_Ug(veU|9'aE;trD~f%'az0Ul59DSsXA7.504vAWQuWd^B2pݦI;S5aX$rˁfGe {JN V3HY2LМ]׍ĉ"8cg61AKҖ^wz r3 ]Qg4 @DMC+`I(ɤqHIj! Ǧ*9.n'Z:UcYO@D(uqdS ^&Č?Afv97btr5X5}6Ҽ3S;! -T*^DpSR>IDB,O _۬|ʇ>+o"4X,7}g)gAH0>o*$ljk]-Q"frDVoHN,q[=ZqlKnT鴇 Nm /"lpB e&o{:N<)(RѦ1tEYxK|?zqt1?Mu=Bߛض}nDE/a!␕mv-]Ni"2ySiUG=LTY*U)G&4\PZ5̹[Y=L^Kvl:0[g,ױت`g N[|nyDkQx־l[ŷm &7,W5pw?91*['bgm`$ 㹪KF+UpY>@pr>2u#q4BB.w sp1Mg7Ը7@L[Uܨ`(Ջ'F s6.gxĞnF"x(Da>Jӿv?r:cţZA$4` ,Rd/*^ =66ŜtEy UVftqE`hu`3*̂,}_ըF]L=|F_1EfYP:̧* ? υK6XFJTwvbN=MA-t崛yDqjb,gP*jhOԃ98N#=.Er Wi1<X3r*<] .R4ǵ<^E;'D4+b~$j0M <ǷRl_XӸއ;A׬FyC}Ưylg)'α^46!lHKvڢ;$rR +7kV-zz4/@0LF# jBU]`UMva5i Mq9_Eo:c:_Q7}}dڷlT1ǖϐ\TП#fLX'p%oDVa=Y%4m\"; ݏ, g,km1MV7l%7AAhێ̖8٥x{HYghLR tcс{I1$F0΢k6,X )D-d *>/̼ Cm.5H<~I &C6rkCwd!0.)>^%J e8hvXUK5~U[ 㛙r{s$y;z-qǩ=󆂼FD_m*'{IExæ[-\T$TFwL?ufI_ >+-ތI[v\'@6O!}Rs=B)Ai u~K9#I۪{$UG㏑NoWc,G>V+zrŒ@n~N,r[,GNOxOKnqIĽ0缀y:Rۧ^|7@&|/?-z@h2+|!eL1/^AO}(C8d›FS#w)QE|@#a/@xjM-k3)%gUd[۴ސέ6̬pJNK4Xg[$qh[WpkI 1g:xߴȪa2JXYL1"e&PIH]R&!;0 :NR8(EQlR D9M{CElLN,xWY}` _*)UӤOV1pĊXY% =iid!mֽ8 :`͢zef5+| 07?&5x0vzpT֙jI5t>NجŊ VZiyJY/hHeSDeK;M!á!L+Up$KQn{k_d``)\D[Pg k1 aMI0Bgc 0rzܶ7byDb$E h5[.Nf .۷x#I/ (j1J/=cs# (ޝ6R(?V49EH(DgU4{tׯ@\40-dnm32mBu*gyV#q[%;H6@QP̚UM8oHey¢47\3e#.V0^-KUM idZDqɠ{^`KW؊3|.JPF[鵣l*C>pa:G4-b# 엒\V|5{>ti?Hˌ@dL8'Q+>_5zK7 K(9`9~R=+?Yk{t#Ms=DHZ\sIhEsux|7 `pHJ?V R乯Tgglv?g&YpZ웊:[A}S+@ljL/~KQy82 ian]]OP1c0lTlFp ɿRaxܥv^,% ȰGw#P MŋP7GQ,KPT_O25)C nhbpޔOV3ɹш^>M屋ׂ74x3ʢړ@dP#'` NY@S$N$$nZϜ>ǥ \ՕGDHTh|4E]!nf$ Åڧyob<4ؗ*ZW8p'9$޹"AdZ4`UxK_$lhD5^ɘd 㛜?: Yh%vHiM1Z9/N_@I. qV3`=\0̄9ϟLѾőbEob) Ĉl~||<%*ti#E k}}*؆ |+VeOkF;Rv QF߀2}s;WbhϼG'Ɯo>MQZƥpaHMϪ'0^ o\뛰jMσW'H8L*lP,vEGgRd&7J_2ZBS@ /}DFǐU͂''-7&&+D|@B5_Ii~EB[PJs ^R y 9)e=3 |qM$'8< A$[\.HƢ'F6O4-ge*tC ZP0'l2q:cW]JQ]bJ}Go%o9o㷺9rYUٜ=QiG2Q5ᄹJ䍬[;$1ZOci!f٠G- Zf'F`ycDWc!,QKP~^2adKPhLV,?(?v 2wedP/f}xF܇I!m%ðJ^ b Թxs4 1&f*/|DdaKƥ#aQ=9XiEwCZe n$ aZ̘N^P # uJ6o\ JfZ)|׮A$ziNѳۛýBt1Y]l+k[48J[J_*ΖysG4]qQކ bp>ǰf^} \X Dtc։Df y|`s+B.~aV5N|e"`5n`E?Ӣ-rљaTPc|MD3zn82i*OἉetnެ[{PlO޶}!,bmd"*)drbJe[ V=$ޖp]W/oFu<;DО9~= HJ1"P7~PKɰH{1d{CH&)E:[_pvJ3 SPBaf񽗋}AQY^zhi[;]SA8SPޕKz-+q:o *Tޒkߣ?+冞V}̪ ΃fп).{Is'T1}- PQSjۭ.@XEk0:wTUg95gNHȹSg4♿@*]i ԳJ7zOz Yd 3Y'<6āC%Ò8 F55hFEۆb-i4 ~O U^7?MoI-}`HR)˔WVH=;Z{_5do=2;;-U_yu 4F ٤KX(x;9)fh*UГFIkSf7>)v:/C´tW諨eK^Bq4]xT"tЃ qЎ;Ifk{ɳx dڇYb ɹI?FԦIK̢@'r YyV۶ A`- xm4KHS#,isݺ)@Z>$GE rmNvkyi?CkB0H PF(+oI<&S$jy)F#FR9wx8ZQf[?jv=ʒ {lQS+I X"|4m@sϕ-MxlHn+-IwyQ \))ܗ|wuw"ĮQP~F*JI DIWh}zG 4J}@srSVn${+c= .W@Wlfi5X `,+{=X˽[Jպ;'*ix6|Rr+ .֩VfꍼB):eZC89B[O^r2yYXZf >t~>ȝF/NpH*bCK㎟mvCVj٤kqgnsy-~/Bl3DZ/?sǨmGzFj Y Qy{tXǵU1vԓ͏;baJKu75O\]!cof5KuG=T>aj'r8uIȻ~{,b?h.)ZN$ (J]e4hvg w%nj4TN!JHO˜ؠ-({*kC1f|&p 'eZr024`T6Sb lK 4mXk6|?H8=ۮXlN|A%~sEs\%< [3E _ڸ<0%N!Ԇa 9!ea5{8jRC_R<8$E%eB73m'}2UwĽ8\tNe|VǼi~+SiMa\tnW~Xρ;WKaJh?-Lc@F+ȋ`m }5t9r"N$"w28D񖆗Qj;f>-Õ hElg6ɌkCxY<Q:_nFs^8#e3Ъ5oUY޲qT>Le=h/ZWrR?_0M~7;+óPfoJ.&S F0潕=Pd69oN 3xrYϖT*﫱뮽1zѓ2J5-Dtƾ|y;ʆ恼ܧ XfFBԕW 9l3arLtjE񥺎h_t*"2+gOU90.:?9G脨HZTZ[uк_VH hlKMۯJ`㙄}2+vp;c7`uQL]k Ren7`6CK*&Q*.gN9*RV`tf6/$&9b'ɷ{ 6.֬ gv+OwD;pl76P8]t&Ix5㹛~ֶ؉bı"m1d5F,tkA,ǘ 0 %{5U5?Uw6 NA,FN=~'y*v>ʺ2xh`|4]&{rIp)2ݻ-3zbGAc}nFԹ'PBwL! fv>eT9F:,4wG>|vy7?d(yⰌ~GJг| /'ּ=7M]*0ǡ7Ф?8mrlmYJuInBAb5N܁ڕaرx#pe\:aud~qAxwxQ~ Qހm {hFe.= Fvz4Jm ސhq(?PW7KI7SF~:21.N2W  .6ƙDZc \E=wWj{lzOg> {".JV9I Ֆ^Fß Jԁ y9p1NG"u\x1~kw<{ ؖiZLC4gctfڙId"_mtĞWO/0I2Δ={Zo2sYWlѐ_s4I,@U 6ZZp~R{l"Jw],P$a }]} 0x0aj![y ˂DK$ wƅY>oZ>Y$Va0̨* b eZtIU81P;׬$kʗzƤn#2NFTReG+K3z$qr,fZЭXqxIؓs<)Ȭ`]7k率=#fqdŒayv`4m.hTbւ< vY^[}_  00'ڸ;'bǕA{ 8Qyt($mz%cٍ¨6,bwǯ%A*8%Wէ(Z$^ >t: zpaqqHhoH5id ) r|iipe[J ҿyߟcX˖toU^+!3Եa,dɥ%r:kf@R45l3nP¢B2h",_7kKo)*. \K]Q) Rx ߈WoChdn'npE͢a͡XG"ߠLш=Cd}H wN&GlC~8q?>Rc6XRD xdW.dEZ*i3G =[AP`&lzҋJN ws _dVxRXli`KBvU$(Ld22IUx~ "ia|Ul @q[ZaOʒz۱B*1MD&͖:\F#Ϫ#P7qi,Q" ~HQ@:j2Cb̝j5iܹSPע%d-]nf*!R+ 焊O&U6s 5ҔH x@k AIAOeyK+'`,%)4Osa})RdZ,~w}v:myOt<;EYs@sq $vnv}mP :4Ь^Pl.rw ܩW%f=J:Q1elD"T+x/MY8'ť(fL?Ÿp@/sߡZB@3UM1:pXsc#v.yoGk@,$Ec#fH?JABO3:!R2~icN.`]- M4r XyOYO&ecR;}%|ڻ<rv{ ÉEQ|(m.SBtU8 Q# \B sHp^4DPCuK-  :mwg!m6 @q([6=)}3S©僩xEQ rYVtAύ |ZyA<^a:PqL( 4>= DU+9ךNJzPd&ɢ"#\U,NPkQ ㈓Yѱ"=cq{ǻ0@&{'Ϗ+%zw#)Y|1o+ǖ,8Z+/})8RM8/8zp;1t;GCTǡy`0]Ɔ^.j-9ܽ4ŕj$#xDjR9*N섭|,g+hN<\yށ<k:p/0!s¢Ι&&voZ&ǻB~/N(E]%Z7cQ(?BJǐO1B;njr,w6MM]1 .%nd'֎(UOj|fQb)ߪ%PJ+{NGh30sm-!>c>b=Lb;7|Kډ8YcS>,{ ]k Ǎ3:b)K3EcGSф>p޸Ų"ׂ~h3GvBHH-ΆD_&R8)77@n]}g^:ﵿH<6~-veWG&Cv/vſI5یO}nQPVIO98x)ݹԩ:\FweO{Xf1mɺQrTVX(Uf@G}GAO}?s1l2[>UL$N59@]׼έJ^ *__dvz4&b&kFGamF ]3\<1>,M`s+S4J ec%&Ow&J_{.#>1 QtTI5pň 0}9{_Hhx7ˈ| 2lXq zvtΖG.CkdžW;Y;$bAZE?B9fNENR`rZF“G#6$g)ٜgʏVd/NС$$\B@/dq8}ugb%(HP”6 #)7G m vBJ/\`p<]ZFa&'oÚ48ySd(m1lP*-_-&is7Dž`dXL+cb4"et5HQ3b 4JԥBS!^.s\-( xn0s;n)uN?3dN A<;3pthTƫ˦e-{]̛I|$ekxSߘGQw=/j])7^-.H\#P.8x!0I4)mj?5OPAo+8Z:v6: SLgJ:f1CiƏ*hr];rI,"R`f"(.p!yz1ѸV$((l  mee^źeB7 $mixeLmL$B3 t/wln~ckkӱɟx]L`o1{ =ý<2;̿ry"})dKI[+MC-)-2dY |'u:1 $>'RhjS%s!z8Ԓ;k-;y:Fu:Oժf`%A|tc T?)눟*עmbHSSĢW2>l8V"ip9{Q^%ow,WbCnE]#^BlBłӈԚ 6D/ 8 x 8@c겆ԼPqAo?rSFjNrR`,YF}Why@8ZׁwOZ_DM@NRA'ml' PTesϺߘw~&9`~FfolBgsu&~Q{ئ3!c[۴Auh%)XrVRjVJ;AX8Xʞv.Yd/̎KP72/̤K D[Mw5pFtB|MlKw6+{9+AĉhpUS y7d< 9VQ3tF6cںv-yh͆9vJvl)9>£0&ϗUz.Bro6h;ggH0UKqc$>g;D=J 58LjRxQ98ʥ7B‹0$x=+IUbIp\K7˙Ї., zp'7'-yi Տ&g^{Y}d++Bc_晌`P;)ȷ;Z2_v /0L1W_νR$kN eܺc:h2y8h*v('Vp Ŷzbi'||H^ j\e"'(f4۩>W=ָ4n\d7ϲwDs[r]MQV&8wTtd D$K>} vhha>>°̿sEPʾEB>7K\8)8מ-Q+}}ڽӍ-R3jt6ZԊxm` .R;?Qv#var-BC!.r, J}ϽOOg-pBײnU+ __1z 5ZKx W>bl;ݽ˺$lVQ&ۇۙ }! ^R^ f"9oaap59m'TQЏ'0q&!:f-eo}Sۛ~WI3W ұ4|pHmqrҞ&+jҚg [>]SBf!}wq$e+Ϭ%ؚUcJt|qAs=aV5w6RPlu@;|yoŞb2p?:- J3*[=- Sp h(KxIn2Я%in:-Li% t 'qaKb40 IIwd_>ov=W I$t4u*F:Gt A6+!}~= &߷gȑRC;ZIZ{6Ywo</Qѿ%SAK)]} INo"԰a+8r9L<׬a0!ډ7ʼ<@8\xt ҇=*d7 UvR1z=OsD2ĩOh( t%}m*;~*MI#@jhu!rGxV&}P i9A Bo -21Tɿ_KՈ~v3 S 2LFT11=<]P_/{ U<>NB@ENYfd|RQѣzRgXl*7s4T+ t4Ұ]Kkע_ r_B~tqOժ E겭?ԜyC:kOElfSLNҕ %&8`9_gDYƋ̴sfU?aYX""Ӭ^ڵ5|WwJyx8}P+BZ16:*o! !O$T.2 sD&Oɽ#vW5 U=U9R8*yelyچP_ߦM ;l6#M8|yfxC4rp_pq:|hFXrMh21Joo#iQa $hrPdfmʧnʹR[4#aPrPU ]1#&։(;oW#ά!?東d90kolm? kp=qޔrq{ōNqcHNxCS[Lݠճh 4V -sE/㟥/?.p:Oq]2,ǿc8pѯw6e9crסǥF0U0vZ'w'}"o{Vb dkh[~'?r4U[հRi}zO:Jgfl $ y*@僼?#(8Z8Xx`e``d[9ZjG컼iϮ(xǁfѬWU[BFjj?LcE& 9aȩ+:hsqeGe@{/3Ht-ږ{;$} CŐ,@b#cǭihJH`3?YQ%!:{btѻcY/9>`K2hZH|@R4*ɟ:U5aRDrL:"ř<)3,xfkt}-mI5\GL=Rp~ߐ j>khMMkLe[:7Vj@2[9v!h(~;Տ$Rԡ5;FِꑊoY @J 'l6֬(}lg (z$.9v(14vzlOVkb$dqNjp0V`'K9}WD&oN#NǼߧ|u% >Bc!$:VC h29z䨣U:n7U޾sMr9t81rOn+7|%A##eZ?Tʣbӛ궆oQVW!`٤l%V{$`Q5nX*W_Z"ďҪ_*JZ٥f4K VLn_b=@=&l%ImKz,:X6w宑I6Ywȅ?l@ Ź% *욙k:6HIN\vi1oR{m9gK:Z n.MI 혾~3j׍E.=m3Q|D7u%q55'Ta[ &VJtK oS}s:2A9"_WQX_APO#H *~Q&|A>] rՔ!)v P3ҏ}Tq|' 3HzP!6f_)J}RJI]fbnN[0Y}j$ DsCyKjcK&`LeN/l"ȀRRG1'FlTȼgՏd*0yя(]㑛=ol8їCwkWk(D;3C=9rYאpn`0%iCXFYDо4RE}ӟ1b)Gێ IZx8f/X$I %I;%D!I"am9U^CZ ٿWV:+.*6ose(zCQVoed]<|OZ3FRPN-UtH e3^x ,E5{,'vm8DK U#wBDNq*KZ}?_թq`IDi#Qd/HoVqԟ[BT\T(CmY#+q)M]T]NߦSp]Ц+@2:rSs tqmےI*e{4-Hb /S8}h`BLhSEZE\Wm56B[y4 #piҧXGyr\ܪE^gR[2Bui&5!@lA[~!jMֹ7ǜvq.ǢϢMeE$iz20h߾5<3ż"l-gٰ$ȡ%YrKpf S|!SVgMA#ISZB;,61g_ʸXY89Y-gf!.~ fRvtz< "^\sʑHu,D-cZ3Ͼ^ 4/+IEQz(WsU5ku$Vi[ʌDo+dLT(L\ٿt@RL~6W; 60C#č՜_nP8zvwn:r3Rg+3eYpLz y%7``>9c2~ОDnh lax׫OMrKm̔>:%4%X۪BWeKS̃PytEʻ݉SycawE{RY RroVle46DT܃!ae UjC*hqS:Sb?ߪt"'쒗E}? zBumFVcvdnyGȐL)59ఴ -.uwXd0}|44Z_W|[_ 7jjB?fwDFطt#.?c=G2x.jvӬ(tѷZ Q"'p,ь$&3wyU+():bV//y/g+KȨVP:)X1z'^cM?5iSB&aS\+C]Ynn(6tdf 5ߌTF7f.֥K@$;1(bqc\FZ-4 Thf>U 2WbݫV#̬[C/ 7T5Qd\fdx!iՋf4*h>a(tkca)15u{ȹG{.&;@_sS*C<,jb5ߝ˗]4/ˣ۩^HcEޠWS>xkaoD&x%;9-;PWiȶ66D̴LT\܇0L aJ[x[ѽkYxji*uB40K]_#oq'a!G`q!Zm3g +g +.ViVv a跶p"_(T"li;mWſݗښ6F2h3s/B |"7{H`>iyk̀!09M]笷Q48ag KԦ͉(]ς¿ڡ_z:MZь2LRv+Éُ(!/#:I? ri> ѯS3?:?blyt}'S;/x֨Y@! ?/m^ ;ţWBIaf#,i٧Ul؎5Du.mB11?t@35>KYRk_19Xꍯ\\z[z?£ 㦋 1T~]-y?| #iJseMq&^vRgc7X> ՠ|ubF$i%D;iyk%a&ݿ[] o+3}0eZ<ճ##ު.|ÛDoJ [+Cٹ_Y-nŮ_9-iڝd# C7b4/}'҉s!FKb;6aCA4H?'wz7[~ nҋ t6ԟ\.E%sa\M`M/[H pQtd ~p-Y~9wV(r eCBَvT7>oâ8^Ki<,:8OSV,΁a ViԀQp{+B^%gn!yU$Q(6-3 4` ء^P6fKKz 4W/TQ5ȴ& ?s‹"Ks2} AtMxjxaDH C<rst?qJ grE10L29THֹ-, iE:[Bpt6ӣgcԫp`Lh)u&t.1ʏ"qs#qCۺFnUWKNnӏ*f)EHQa} Pt7dH0YKNw.'aMڢ~JH Ů.A a.tسS^\^2@n9csd~nl5hsXv 1fQK(h ;Ҏji IfWq՜-۩`$" Av^Ea!8Z8V>5093ͳ7~t[M4W(w?iQً /mw)+5_ZQ;(&6}`!rA[v﹌=2& [R^'9L1Itލ&e֙3@jYCUIw[<1V]ʜqQKճv+F>uM47jjd"߬6 }M̃~/f7=~=TC;~i֮m#<9^BgsdHXXwAt1E ݱH[0<ÝS!jXSGyZT'# [SrND*v&=AU LuwjM`5{06W<}+;=`/)MgM3a⺢q€$s iYo9rT`$JJ_''>a?LNcLB6M;`OɨSx&CRБ8V0 Rx9]_9HhOn1T^#8ue|ٕUM5ٰH tkʼnX$]像I>7_L~Pb{n˝.*d=9TFf ,VRMenQ4Ţ`;[񡧏y!26fR~J%CŲ2{[+_ׄ4NH.tnyNfb3#v#솦`3㬼+t͸Hbh-X2q{ͭ0bi)ӵNXڰCqNx?zn ݣ_ri*v|?Jl@K;@FͮM ӹPJEBlWכP# JoŪ,32Jcoyx=j KvaVg?k.^TD8x xHČL^(.b u/N4xM2^=Ο8S!NhK0)oWWlW[&R e25fZrTŀ^&"H:G]1:Lp8eN]BV'4u4O&H2 #rGmj l \ c#4Wߤ| y~TRLI/SX>IFyo tg24UpE鴎1sZPKT)a©2b_sBt~ aJ=k߮$H}A7Lyd[`u@0kn?K$Epa ڙxΆ l-OʌnNTUU+ C91)q$a7kz2mfKkUZ ou5(˥drG8uc/f # o|mkceIqਗB}ie #3C|xRi/ 4I^S~t:c>4 %Gq׹ԟX Di͵ 2!9BާB#GȿE YzVWORSlqc;5I#imNʹ/-7+sAls4x+0LC 1źF6O lt^0/d>*TvL1~o՟sFK-9$|#5"ղXdNGDq_`V!/hJeP[Xz]HhYEO^{Hkd:|aP)"SI5#dWZ̧.'k$߁%0cO(`Ȗ_:V.+ |ԧW0^N(b]sK8dʭ/724`ϱ#xV ͡Cy) &*),tidƛb4-𕔀:JGP:!;6f@/\(zUk޾w vtFŏl}lOlc R T}{,^3zBZŻ SXqbj[F<ЄY`e١I;TѸ:IyXaQ+Wr直L}< pmR ?QiPe઩@\1*Ⱥ=2v<}ΜBQ#Hw$v):gg؞yV%gN 5 WVM둴}-~ >kSI9T=&0fZ׳88-QmO-(ooR/NWf7^h e1B3Ua({9GxPfAAVeVKY`(ۇQMKqLw*1mʦ"QMܰx@rF\d#Q8çݖTIq踯9NC7e's ?5rZHjoV1Z l 0>j~Z;YECH&}NP]P&KəAgY}<"$ON0^q^fX?<)Qز \%4~B'ebvM*AgMQu.d')JL쑀3eF!|!;7V$:Nz9a٭;̀Tb.5 U*?κt+k[uV!s)3 D#ᐧQxd+x~k2tCzF#$}J+TU `Ӟ+gJa[eaí3?$:&]J U=*] lkT`kWGov8G_е{4\ppԓY)հzITum һ1 N_4|B#C/rn픛}]6 QF.cE 8^ R;xz'|[iF'kM4<\ $ԓo Jw籞'THmÂ[`qmVP Q4X譸8 D8#KLLE}p'Um$wrрx퍚bOr.?a%̩w6ڼ/00!X9bx2Oނskm1Sa;8|Z Woнcm6Eg> Zߘodžōx!fȝg6 UkcE3;WN{1.u:5 |EozigRGq+yCʑ=NȌB~t2b LlZV e^[|NR)w&eL7t ,BOXVB;LZB4hওHwGe]|Qq-X2εDc$fw!P7ޗGϒry')="+&6 凜_4<:exlGX7U7v "JD VsP{c"|sm^`"j5O?I\], s[bUvI}nWK0F4`GƴC?+~fh>yA55#*@bڽ$N#˛?#Of'w&)e=Y"TNw 7< ̻҃ZUKIYY2ܯ Hu͸K2,{:F=aqbO%LE6 £,s-j"&=°z:!ZB"* *+BPPDwaq)cjHѵeɶ|`oVb!tɌRWG)3u#%X^pjsAgxW\Bou5zr"wq%wFy3Hzei6OӞzbևbĠHxܓR0^EG?/ΈRƗ,e=~4c4[D*GØ.f߷Z?$Fˬkx{ 6:p9mܧʨЁȕLGz;;>y5vwA~r)ո]YqAySkuMbAI]p>+qi85 pKoekVQ " 6Fu[Ix䄿/TVc]=k5pr7 !hw7zj 2rCa[|-=Y=j=d)d94]{&߮>Ͽ970"<ؕaЧCkDЀ" Mι@s`n:3XHa8Ԏ^5#J84U>=2fs`TX&.U`:]+m;KdLx;I\0P-ԧƙZjh=Q!)| JR<#/ ]h4 k'$oHr8foPϚ$,SA^āϲVQ_T{u2ts_ I,:ZQGL0j ٔxn)q+zFAUm&l\[?# J'l[kL.|8'JQ<`uN![+%_H(;sdEUDLͪzS 9-=X N D[(jO H{Ts@:yNu"L}?U=^@Q@ \zŵ\+^yf џ8AalcBB"JE^Ƭ mE7~8|c|a6l pWU]&Ü`GK[ÂY&L!m٪w #C upVü{ ,_A?R\uvr!9N[ -Vn!BhNٔiX5Y٤w T8}j*++хY:&帴R]0w R#_ax%.Ш>rE\.< &YNhXO?RH4'f ``1˒=ƯkBDGVq: z:ۚé$Shp?}K7N6i~&{ 1Y0B/FuR]J҆,Ѫ1pgV. -}/ӹ;Kz 칞_xrSᥘNa1Fb։UcZVM; x@& ћړOfKb^6n\ єƣ9ًۑ,„1'Y\&ߦ:w~X+QϘJ՚;V"[?+6:(Ta~' .\ VmL}va7 <0!˄I~ b~@ffls*^˷# 9bnR)@*5ixbA QjngVj>/KDo:ϩЬ("1N~v3PS/.HH%*xErلe&my;{ڑ/$V/{6+Ypx(%@ dtH!\ɩf> tb)4+J&0jҨ̓T7׮'F1 4v8uU0= Y`vK9 yxŕu?'J$Zv?W;ޣz@rjc*xĩGtrt<7'yEd m9%w#>+^`ns5bk`HQ* *W+5|(@-D5=v%ydL v0Md"v[gH/nS2 N4O~,Z6<NA !D&.hLu'oTdSfp MRC!g,8I"npB\J 556 _=Vp&,1•& JM)h(%bv޿ƊԬ!'? %үі~THּyG}*+N|jLpiHQ?l|2 ,CoVJS91~{8XJJW/ynr Io lD1itfbgvS#,"#;Hkl}OHN i1dĜLh.Z`L3io]eOȁQ!OCCV@C!$ '9UpxHjV9IH| J_bDᡇmg ,IaYl$%ـk Mh Y{ n2Yۣ4WWjttU-+(8]},I|lS$~J g ~R b+yfо  zנofTH kAB[~Q!<yZM`u>]o1M)GHXIo9<%1?:0DL]v"d!0Y+\bvVmiDam 5J~K8QYa";ٳEY=J '"d`Nz1Iɑdo,:0j/g#W2 }WOᑔt^3%Ӗ)?v [G~n࠱ ȃB߻cĀ046-gS8Cȼ|`r(BLT@w?5i].h#E^CPPikT ~1szX aH6SŗApu"[ 5*7Kbf &wq|~oǑԗw=ʟt4iex>4<8} #A(#|RøZѲDeSZhIe=ys88_b< 7rep wA5AʁW"kMMӻZvaW'm;?PY¡5-j"J*c02RY|Ou_z@UZFbK(Iݹ`pkK8DcY[7ĵ)~:E*C %3:v .$WB q8TȺmL+5ir&%5K >diww+d9^i}-x}tΥqr-b-3"ǜ}l\W;V:=BtqY%#V@[B^DX0+&k"i?nKC *~,n^ơ5wbWU_ 3L!}\UeXyNlp #M/@NcbœSÞQ)19ln =O=;9}*k*^6)x>v)3@5f6Z8_e ld2Q'xzM.aUD;E jzfO_ȨME+_Oft6ym۷N,AtU4ZBDcbpz$KFA8JbƵ_mدn8Y=畚 Uh_Mup9Hw.]o"%<`AFj̙~K|'WD \s945gmWCezpCEfX2P2DW^TMX~DhgUJ4MBv2KY2;3ho+tw=kg6$ <ȌJrf/t9.7/K:qQ2p ߲|KBX cGG2v=IX9鐰 ^76;Z~wτ?,Quڇ?HsLj3V/,Ie @l|_^ճǍ2X`<-ӆ]2 T6ٳk,Vt_ y',XsI*stNU-f8԰տ Dpl\+CtYR}_Y#|(f[;w 3Q62q'Jv%:Ӭ:a(?pEΧnG۫{O6rMoFH$&0)?ugkcJWϕ=O=:L{[O"Fe0t(I vl|͊*v}jq20R~s1fj:Xe۲ؙߩyYGBXfEyUKfODlJRpNYbZVCsYu밗NIPfj99}08`қUaSG@9˔,7xW7KvT]PuC̶J/Vd*LrKŦAI_ɹ7&Ƶ! d&`dW,Wr6 QuN܃A@3`1Ǧ9J3TԦg^%c ˷y3(7A T|ޙgg֛۟M+aojrM1;>v6VҴ1xe/HۛXOWLnLuKEiV  Š'< 7;.oxY&jm0J/MPyWǼNL3.Kʣ:u"'бa+# uxrЏy5G 54 ,214T3)Չ*e@Mr goDQ&b`cU+7GIe Bؠcb|6{6A *t/2#,>7wX̙5 _! a;IVAx9X!8n`bG%Qljv###ڐD{,SnZn7 U ǧ;"}UK4KpQ{igt(T{/xఴdSrR #:3)M@TZ;=WgR C"?5dDN?[/fv8x=Z/u[crxidEQByBO;U[ݜL MWvvDs?k9)~'2{0nRN+^4Ţl:.KD-"ߚ#Yc{~+ f~rЄ:Y$MQ7IQ+zpXJ$t6&O4lvӹ:1 fpQi6ܿBGx aQ@ :=C!CQ ݃IȗԎO]`%9'sؘST_VFmVvN&}=&;ȝiSVIU$YpERӨBjb (߈GqMk5tU=ևԖ³7%x_ }S$08# TJ27*hg7D[31Kui \G_E:H@B?5΄}c7bY+! zdwb*AܹU& dUynmQPU1(Q.kQB%9>DK|EםJ[ M)&W_[ .iMsw[[Y&u%30 KLjF G_QU s;i VLz\b +?=! 03"hEr85Uώ5N~jJ=(\S6~#ՍH=FKf4Ǫ1niL_6QB"o.`P*"V qqG6;a6%tW^֛U(b8q,4gH?8[\(3S z(Ye~P(-wygg @)&II6V K_˚*eka lZWGl9 Ss GAFP|߼l=~Q)!̏z.nXɚ/hzV8E |2OԂ$`:B@cח`t~/?ڟܼzЌج:*ߚ{*R pS)O;{NѓRor؉Ԑ].Gz^FKrhVV{'7QK"+2:2'@ªJ!&|rwDg8g;F0|\7z_Uc8lC(1^SR`)vPFg(C2u.ZíB=Çd܉IhŒGJX4bc0Stp3oa^[L\"P\Ħt'p'&Ⱦ!Vs[1?"]zP#ER:=A'mx|778JK ,M/oFs:,bGV~W7Ficm`g`@K=L$A\@Vw:s@O,U|cԛkl~܅t<^by:dMB^;`Ѱ]kݔdZ8>gm?RO50 ,InkRs7B$SU%ī͍^\H1ʏYxR ^9OEr.Au2ӞOa9w-q)Tf3ho5 g!iV^Y]9}x_d8 pJ'J3P#@ZM+$r )JN[pAR$qȩ}J;;HL~IoY?ʋsUfQdsu &2iڶ8{(֗65ߚ*ǘ͟+E1Y< = Dޑ0H.G+xsHb!&.Sa (3q:UJe,#R\H}ï F#u %ymL'&q"ظ*!zՎzl&n=iݨ[Ezg̬N TD!A'>FXXyy )&Ѥ~ε#z?E E9%2-m$F%yWP3DFkЗ#bvܬeSz>\x~rv/%+Z{f]^䟆fR7$34z}Qz*(LrW;( l~h5j=SpD+.!2t+\dJd`V2͎]?x90'6Ԫ)/' u%}FLv= PnWY hj45 9snkUD)q)JDWqj]Ϻ J1maAsq ] }w_,|\ ;xIZhl:~˼܁8T vg6zګl n TdgzIٕ;y-SV,L|88c=ٚ~-1С: X;-&xw ֩(t$d|iaʼn:(zI}d'+HԹj.<؊X6mDMq-lNjdJMV|1w+%Li>1YbTPlϓ2qߵGWE̞~XuHWFnߊ`J =!r/&J[\kR"|s/q*ೇ{cK گkVS2nM+\UMu$OhMq)G[s΄3$[%Gc"ƹS.Ťل"_4} nw` )YLq&kzY# }&5LL{,HkszW RՋjy2C@FWGѽ1.X;zyC `,NiŃ)z-2ڋ~|Uj3 b&czuOɚ:ZgD֭lÚbBݡD;Zd\V;"_4H3V$H-/E Oxo'I+PO.30D\Gep8`%d3tpl}}z[X K͸c6#ϣFȥ99QhlN+94;n%]@D9}f+p[IU*h1WfZiDb=&V(CߧLs7\5ǁgځ6/Sܞ^hDlZA o'/ Kn>fUſN{Y).~S71cʕmR9zح3mt%Bՠ@zc!˩3e-SO9$> H 8>J`'p+\D81&PqfV8]\&Ix27xJlnC(vauGAA Lʼn*Z_묁=_<u)T fAWmTWjm5"?CBτD+N 9N.D\14> d94eqB4lx4ݸʹ f9~U4o՘eKFR:<t&ssL(od&>QM7qWI\*]}9-6Iy5B6 S^$u0K#JNqָʈFvO|H^Z@b ʃN,qvtT{aq6.h;8nrw^_; .cBhG[ڑs$T9IS"#Npc%޹BE7uɏ\lWjпc,E#Ub< 0fs3 ')|UیqhH  !oj"M[4|bm*Ѕ;/V_.2a<=%fX +ŶA6/LgU(\`Mx3J1"p@a3PL=8m8|=d)'oMX\]B ' zv(`D \!}Kn@Υ*͏w:{ ިLLo5On1"<㽰J goPܴ-C16dYA3oaQ8Lɗ FA=aw{Ԃ0BqmVy{A1x\+"U|@eKAF̪4-?Mΰ((omߩ 8ښp`EQ@Mi8Fȝ+sh$)mU:J-f@#&JSK NJ>r0/oG~]{44&o2q}vK?Rk> !Lj׫@aʧl4Hʁ%Hd|IC=1Ir["u/O.'W58H<8f KBCg0׬9Ủ{*ߚ^@"GQ|>;͸.︶hЀc.A3ݞh2MUhp~U@&I_[9ϪEw,G;'RQGmmoS4L?%N7UNl#~Je"j߆ ,9hRܵD/VTNqFxQ]߆d.N۳[@^bc1 0WLD$wA *U!˗B<>,7B%HlЧ7 MqOS l ~Gz(l2{21 L՘o4Jxsu e+idbTxtjG-@Ѝ?ۏ4 (殩\ {z}/O%oӬ 6ۍe19aۏ˳sՍNn_q[ ~Dݢk-x+6 ob sF3m c32KPQ=ZFOM<܅#OT};&?j4Px(=~[٠Os5&EG_Zz1G֐oE'yriߖm^g3-5{RT3 2mR!kܕOJ#W@y*&Q).ģ⬮ܯR>vyTdw6+Sr7nシ^vU?*3j?ǡ7#4xbj0~9kW9`ELI[&d[hߊ>p}fut=qR?7IXT0 \,<[]H6H)Ru \l&%rl ^vew'C,~(U>qI3"֤j޺˖m&[!v@,9W$^R:zM3%$&)ϬnJc"OO|1_L/]B$o=fz IZӹ+P>?bQ 03z(֚D1G)ڲ9Ѱv2dkHL9c+BEψOmIrGCl3Y3KѰF0*d20aSlMP͎&BpCT5WA?J|^/j_kȆRO;vT`'VW 䝹b+/j9:AF۝U t!*7D{ĪNCI8e,9=;["lVu8ȇhSbڦ1?9<bwVƌ^*)(QmkjE c|oWepߢ38{S|K;%v@5ôPZJk?[Š@%fJ{0 Ѹǻ*){%QN6}VD< cf4 |k6WPItLJ~X}>?FfWDv._ubyND%pǗM%ʡct +hj W f1zƶDlXLre?ޢ,^]Pn.^ˠ`i~kٜ9" hH[H# id(_, 1+;_g'pxhKuH ܉*4%c啭 qj\/x_=TOHJ%=yjM.ϟHDpǹYj_Cp0@!m _7r4ս"SK]AV/? EnkuY{{KW!)K:ev<(õnW\`,R /pS~]{Vj5Y+_ Is%KYqv{:(ޒ\`G+SW$'3ʍ*ɩpQ(ܿ6x /^%XPL-EVIBwdZ1*dj!>Yw6zbјSu-o:*Z ^[LH l~4Ei5AGnP^/Mgi]j@lc;#bRK ri]@l_9T N.T]}:. 33\y'γ`Foqj0c+QπƠJ$`H9E\$]t/2?-DOE\\NT1IKT: :Iw\6M<<:%*ZAUTi׉R F$ ?RF*ӗ PF\Vgւ<Vu4L" ѴE'mOtTh:r0eoz@̠noWcz(GPҢ===gQW/PgyGh-^رF-]N/ў>>J]tٿWW֒:o ~J~"g [ \kX;q&Csku)| 5P8-yjUbzVzS2*SG8*^=Z:X' -Zp T7NРd+w%{"+<)F'ޣst. c+C;~QT_/Hq3,lZY0F\E${ ~«@U⤇T#,˛=C!L8h6 lpyNP]8v30 #lksEOKDJg]( ,aUE,n!;%jgY#t%.dL,_u5%G>^˰)0[;O+#6˿>zVŀ؟+BSKBƉ{ڌGi,굶,a\7O,逖ao$gxfTGaV?|P,Ә+`ިߪ>+9"/<䒣 ;5~)E=xXuKuG.P 8ZiP(": Fg0-n'lA&?;t6'ծ0Ϳ _Yk@}Otض;ZãA蘕|5OqHNգL=bu_sߌ'nI& <;#f3NLZO.:?q3ny(:Ha# cu C-JFᄚOw*wQW^bюQڀ VJ|O(϶fϮ;[ zqs Z9 n"qJ 2z ~CGt2)~^M +i4j*1D'>)ÖEsz?bԾGs.=6!W9[z^rmr.r]/6ЉWkb?CL_,QAwI0!q⿙N :9jF9s?PhlwI_s?; :r%Y3ps4ŸzkÌa;~dڗ2l /$TxVng2Rpi]%Qs=W#2cl0Α8*,R_^ЊBf[> "@hTC§zfH.!_Tt!9+MOCg,.m>YPZt!cDjEvq.D9(N꟰FA-A-Eڼə3ЅoĜSZdRIwˉ?IR {u7G`8OKˮ `('NPc5E뤨COW7nlaQ$mWc60 3gr?2EDrD#B^pޯX>UEtT^яw?*vb?#Fla>.FUõ8K͝9tGu2X9Ͳ5NqĈA!53 j"?p Y`xAxi_Μ6n͟¾fwrs#EIA+tE6-) bbdS!~FĽnFz7mY{Y1~&-6 L \:B-jt+q3v3fx4D+܄@x]|R[ܛ͂ҤLO*"lzR8C탹 fg7UffGH*֩Gr51?B}^)J;-mZ/5pb陮${1%'VvJ'}=n^gZu<_/Vdnw%FRoEjsL^ GƵ"ANy5v H̝pNxWeR:rmy FGPD6ؖXxM}2X,8`U h6 "yZKaxt皏4ۼukS}lx=dAx{wL*ʶE*rb,Jg8:k.Wn(1 Jy@q*_ l ֎TF[bP O}pck;g-mqԾ1&1y:B4l׋J2`#3l=yH5Pr:f@.zJbfbϩ0P7_U3"y#Z kIm1Q8_=pF*w;bUG`/`"G7Lwcy8rh~ ƴKbCenQZD! l(Lخ`=KMS` endEvaW-XuZո$HuJ! 7tf]2 6g5cIj3{EF oyī0n٤ ;o.ds&6GHaczw ܃eB5ܢ~3i~TV3~fsUwEYV'Db: l(F.`;RVCE(5.Ntj'X"~h!`^U)4E2Ogoa#_EP\G+KkfeS֣zc h@jCnb㸣ESsJⲂ N)ȯ|u4\6]ş5EȗsBc5>vH-hߓ]Ae7N1/>I؊bT\ݗvNFo,- QIݜRZjӒMPҥ˄l yС/Z ,1ZjO`Oڙ4l J>Reı"\.{ U1|87.{cerH]t |9'Ug-#w1X%`4G@~ĝXO_mr^^-Aq?A HUłmDm ?~X<0GԨ,{),MJ(@TsØq4т8, dEXHk`tTF5oV呎 [ħdn0@_ *<- 9eRR N,n AfŞ$#!rhg}Bpkh ]R7hL~DEK横7nEv)g-^J黦1Z~Oqrx/ȆguC=~n81chd!0eFݹOCǗ6 pv^̅$ 2tZCZ\?t1gHMbӳ1u_3imt֢* )<gVc Q >B3WFa/s\<~{>3~|a,}h@ LLn~@]E-3`"/p< #3),ߔXsN\Ǚ)H? *wT;dDc=_.]~aZϪL^&RV#ugxa;e3F7Rj4!u).GM빴Ic9_ѧBk2.iesV 2g7tZÅh)gd(IN_vP >M3综fmpp1  p~"p@.@] T:T:a$whx(дS3osk@]bQJ|RZ{OSZ<Mt)I`} r3 |i | |dńm+L|Ui+jt8P_fNk)OU9l $ʆ`ߦ ̹ou`d#Fe8br=R FzxNj}K<$|KH;D7dbӒi$  (`ة*XR+~B. G }[:nes鸵s{|$w$!X{tcEP9[:nF g'R=7UnAur~ <G3ʥYܾL2瓑c=j8KJkG yGLAPm/mOR*^rq:aK1Υ#%.|޸j ^iuM[Ϩd\.4Ǒ53#ڄl%ȔKDxi vͽZ˲w AM%xf} oRhz@81BxPWRwI" M|1uzmO"vKATX\WOfH2dTހ<Ϛ9ˈD=s2yU vDyj?'Dž@ګn l2B43A/Xs_bӺ/Wma )bKl`qG2>wՅ&nkMԾwB/DШ"1BI LI|PÓΥ]`v[ptAN rgnxLmtĶEtx浨I7Y;L}BZrR#p>{xBe'Կȼ}A`_8[Ri^ޤ YD1],^;[57S0RKmy**)+W´I-g+u#h`;Z> *Jj9Yij]h[GK)޺d^GTb1aZbnjNlG4|LZ$3&("f…PF 0LNog _HA`6,>#]RwǪ)MڏWIo)Ծ^PX 媾؀puص^r~Pn^AN&7+/XW*ǀ<6~fc=!8Eoڕ4:~ϤHSXꟙf[WJ}j-ظ5V8 Wwȿ@KL@`/RT: o7#LXzނ9v4Q(+_ n;A(Io݁ ٹN:ԋ+ M:H`{}tw7w07UbY$۩~Ȩ$?sXږ 4z]U)/a+8&HN drœ0q]в=Q' =pxPTA3cG#ϩ9u:a$$8a%Ouߑ)z('/)Gf7͖M Sk %YCG]њZ-khg ;A"P ?yRͻn!Шn27mbdL(wHՅM R}߁F݄>$g5dA-p;@g(D3P ]_r jnp]'4X"wtlDaf(2'b{g[p.m>nfܘ/t$K1+jn9]ZմTPQy0=  60ըqFF@ /Oޠvwfw؋[ Q7H#w, uU 6b At덼*z٫JTmhwyHӼPK*y峟 s` j7"O_$cZUADn $~H骴x8 4hgjs3ФrFIo?AׁhE+wk$N0OB߃<"Z(K5͛*ry᧽Zlͳ;rDc +GY#*?<>F[dO.zKl/76 twGNƟuGSw,|ąqjcq-\\{G) fD/[$H{B XΒ, ɠ+ZA"ŠjpYYN[s_.k.@1wO.5j%w*?gsTiUԻke.oDX'LJ> \/Bjٞ0#njG<7lHk˵YI`i3 {|:ssShI&A1jlAڂ"_0 >V^Y7CFVr=lP⋞ ڀOl&]*7Dg!1ٺ 6+O2!L;# @Qq̩q;3%Dn[&ĕ UZuw2jvߛ.ĸS$MypQ \H/#hEqz{rZ榛Ҷ#e u*bJx-"PYLX:7:42J)ަQNM^!f0]AH cv8}9xق򔦲_wŴ SX \7ן!}j;$)p?(NKW33R'C%nQ- \䫜9&lxFv3w!^gcK-L ӧ̀>ul ȳeW9C{6%(wgh2ZIi[7gvW%ݦ|{CTt.A_:2f5%ĵ,N)k"Z۹*k9+]?YV h d]V kvWlH zMDiROSS1C*5֟-x}n!, Gl(]}تv&#n,A30fI^0Ӵ TT P =ڬRDQF\5 {ᙙ C4mݥXW ^eo'92 .3V6 Y eԊ˛}D@g5Kqҹ@5Y6z5P?[dm8FU(%Zlg:Μx38cwk AS] usp {C^уgִn^f?MڽFڎq+ݛ +ҮĦW2nX -i=H=ScN) ]^Gn21_ucaCZui"bTQN"[Pw{$i g5Ш. d؃lwnGX#+4zZkD] fZK)bݰJ^taj-% MYk'% l h6xY0fHP>'Uɧ˂ ^g02ҕe@/ f#/}95l#8b)\nkaT !_B#%U.m"+\\.=J"sNaZ,ਬOXND%tE&7XB\dg>ӺXMg4,clWsft$oL(f6CņOV1M vfs9}NaӆRb{Қ5L!P )qa]tjnO뿧i)@`>ifǖTQ0GTLVNcnrQ`uFj5 oMWk+sد_ڼqfo-d:Ԯv`!(nv~GB0'ޞ}K'%%`E#|nS0l j"1ʭLyNX9 Ny~g30A|@(&v?GhĄbZf7ܠ)Oĕ>Ua}nhoҾz污~jX֠RGB< s$]0' %++c rAר?洖s. ,}[i^n;>[ojyvlX!*Ez;^1eURZJڮ q}T;dX\zxK|YL4T*,Q>|e^˱pfX꽖Myy/$/$ 3IL5^. -]x6d]eW)cf3\F[#]q;r5j쒩l3JEl{` B7\ 5"!Z(o_cPS9 5@Đ# #鐞8Q4Ɇy7 eA> [T 5>?eEW "\pUıs`65 iXl0~Ҙ:so缋Wr?]t$p -'By٩!2\tMlƦcAy6Hl8MZ<-kk|?sۛж%V|jԔ QO5X4"[X4ؓ`(M': 0 4DlC~ Sk86evI~Mܹrt57\r E{VzhP.Y^%S 6 ~4^& fwL2s,{lkt L SuZb*|f}^wߐ?J^`!|蔩ՠ~ᙑ+=\cw,/>ݳ:֕wlx0h:Ci}1*+|k3Wr]LAw0 TB*[x9 nk["0[һzz>~7b= WkKa:9DY'Tt ض@hW\Ý5Ys_shp G|&J]P l| -u?k7#IBNGWVDP Mck3-߷Ce}`܂UfV{y^vGkgZ oїk8M [G!ݭ)s%`7 3>eN#PU[PbE] Dzߋxmq RdMnpKm5 b1,ӘqIG1ڻ5,%疋osmO-jYօz%!Re4ACFi/^jËH!KզËza+o%$?-49 rdddõ`,LGV {§dr&+wM7rjnUX:@=$;.j39ty/g?$s`8PެpǺToM~=٢0D*=-_^q [GKHy<[`b.a.UptFrAV.n`9fF@I` -{B x^[2_H"ǹ n QwoF#8h߉R}<(3*@cGG^@Y _(4ZQ '*B>0o88֪QCyoK(D)&^rԟ7um[pg K{SnV:#SU!I3n/ 0'Ǧ:1M>2#JO4!_iYU* A)XN]c`goyQF26uhwyI9*C*0k%p /C6bks"PZp;&,IDthmQ#\{YQ[u憨>A +ǤI3a"CG'DC}e:N /N!` Տk:&4{~tkxP,,! ɨyi(VJ$ZA|Ȭ5I OR5B{f{h(H^l M8dz}Y<)F\&ԽMMb)[zpRqP2Z8|%3A ?۽Y譜ݡ\* $Tq8mkh1pⅤD#o #֍$?\G8D_t3_GhCj`0rjeO = hrƁA ׄ4^M8[_Nv</;NTm[B{xYyӆ.ì"T i,WJ0^vf%phQ=} 7DF7o޾o:;-H\Rv)qni0[}-J v ./T~m:L]PD,E2)(e L[- se<#:ڞ@6\Ce_٢2t6}C0s*OE5ߙ3=" e֠..C%_>(XD\AC)vӿ@m16U2ȏ-Md)Ic +QDJ.fX?hѽhUh+8%hCy B:86|P )BaݔbK9eE<%M69%<)8~MkI~*4k"9PmH"tX&P]zue^4-(m7>9DdqqlAQWOی?w+K(1䅬QGa9oM; y{1鈏>_ةfjW"J-n⛢NGD*QpY;8zd6% vY{Ю{g}6p ƺ+`R'IYc ]` I?~Z39ŹUؿ f t>d. 8R=zMb?0sÐ!ݍדӹAfi^JWʣ(lmT")ȹo`B=fmx;U^+iri6m 1;><[y'rnXfzbQ)g蓹pQ17C]/T_.LAj%qݹeaa1[ڈ*lLM K Mp}şj py6K{X:U ЎER`Ldb',86qZR1C2sTMcr6vU칧xܧ\ʶ6 ѿX@ 6 ı iTԂ/ˇ,}4OξCwC, a+oSouwN\_MtR^5t})G1bsعKR_~ƚ )BH(K.c"]P6GԷ~ 8UIY͡ sA8da1@J;LRČhmrpqY,¡_FHk⫳TSBa lo@pjuzS|3>\ A@pRٕrFQ ۽|:xսxNr+۵]\ɴ`4f֮VVØ0ZݍSjC9.?szGB =9XE4̺t0`ã!^XBúw47GtmL.Ĺ8,N$v,r]g0d=1o02cڔ)4ёGbe:Vm MFYxHbrAfVٰ0fͬT 76ޤϸмo;B F28*Akc$OL.-0ֲ,b>UWBpxyz m)]n+ٮ`F9JwrHKQ)Tbl5]nP(؃Q,?k6pF١U* *`z OYV]2ސ9U'2R:' [zK%dhWp]J!9hd,p7z\ʇW^Z;$SbhT4&ZS C= s &_lHyFhvk2Bg &k f(Mlimn|֪:cܓ3bͩ.B31 y`EUnpn 5%iiNMva>}ಶo k.MRzsIh3T}hP%)c{`rqE) ~n~ND%])GާFT|W?0OmB3NY"}qվ;CQRN~}h8Ò2 p-p?0v ev6Ws[ʽxEނ|ce+x>)K,6Ӹ7Uc 9=^6$_U_{ѵ1YA1֗$3˰%('\it jV nOOhaSW7Qcp DgW!Te4eqW>ZMMpC#S .K19.;&b[jPRFkz*wClЊ2ODjT,uƅ<1voT_HTSY>nFF#[z.Q/\)7]10h]zŒ@!o# HP4 ' 7M;ʢ"{xa:\?aEz>(<àZMET,8~} NuV4rЦcfmJ0H#~0&Αie4e4EF,y~(TȮNk4Oe8NHpu2zp#~<* r8Rٶ6W hz7&E XV_=:`^9lcs1:KZrk#v0?lp+{΍Dr TflB単?OC+ű)GxBL~keS_wEKpۅ995%'* ͕l'A~ލB\yU)Ϋx6p0)&Xl;GYYa9%"+_Ў`h/gޕk")J$KFc1y4Qx4MRpg.hAm|X'DČ֭Z5حh?1k|- )V6iïɽ>4?KJޣyqٳ:3nE5B!H?>7[tdķQnVnQ^ظFRBon=+dPǔJ\.X ZK'T'OV(|b6i 2WN6cq1b^[t? YA6+'5Z#W 9)P)_-*j:_F,E "3M^-ܽ &9v8hö'Z#fȃr']uRܣv.耊**t0Evb!sd\T&o[ XHvm 3-B)">!nT dou+3I_čr|N q:,+;#wdj3<}ϯ}qg ]H7v'$V ycxDB&íkB<_-,/ j!=5~Q |$̝ :Z >Wjw?Atw"su3iOH`ɌVD] 'YN Aމ^qBjD$ Ws [c Дi=c~?nS'k8MlP*n(0z"zZ]JOkBOP(!6PZqM͇FH4q'h͸l'e,A-M1~y[PӢ?D؝`06hctQ͞I[rGqpMv-X fh}dQ@W hB XEElkQGPS.'~)\d¶dx63ۺi  HTȃ{Oq:Z_m( Lr[+i"{&ݙۤI;W7W e8@bPV˘h&hթ=.,GI< ,d fCCh1.YYs7 Gn0uWr<[tnqM쭘mŎld 2dNe@sUڅqiG9IØDD ,G&"v&X#zmFw^T+4#n/[!-l%j1g3 bLJY2˝ʲB{-q7S v˸f|M>C#4sxr9ޮmʜ_gbmG_iPFcHpe_{R1G 0fe=yLXśh8eq{~͸)K$@n~[X3$oX}]f}L|JHHBAƄSl8.Kwgm 98{leN!l;Mmqu7@fA d>wo Kz\эIe>+{4nX~پ 4j!S wXbsL0!S.ouAd$JnTL]CEU">/ћz 'f[Lhf~KR)*ڞc_j%lf.jMDs(gu]-u>Z|?1Ʊ_pҾ7Jnqs p}3/붏y9 "ÂwŃW\*`wЀk ւ⇝!% B1쭅cqJ\4D&a`;2i0m8\ocZј<Ɍ" i~܅~ H<) Z-m3tFz4E%qɥ3j;gȣR =5(`8"VXZ5 )A Rw=nj˅$zK -oGzʝ@|rSeħ>ƗГ4UXO;^\Ef(1f˽'5\QMB !9 OZc蹮e#Z/2?=-("s/Mʦj/!ň_R d_:KC*pGLHCK yG'?t"۩`ntf>ތcL0G~4RKKΞ[%xQe&)oXnrnW3/^Q!^]ܔ( ERz8O7975gD8yV08xEG9XDwc eMOʨ0Рƃ7n1񣋳R:ս˷.t+h@}Lң_&p瑂g6Szƫ8POkdnK݉BfD0P.H|6Jsй'3M.!3]W}!z'LfwMjl˻~L-TG6 t$3tJ3ƛS`2M3{z\돲%k螀S|j(M`YA9! 3^! lwS݆?Ͱ5Ʉ2LP pfOԑ(UU#a5v?=Hpd8~R ;ʊ3=7ߒ35u/,S7C\uPί!n|ֆaIf~R?=OH++wD[nGJ3ƪ9r ;{ą?].&g'5G=K495wUoZv=㭤g3؁ e8Sت+X;6mC\ɏ<{6Oѥ~+SkQKg_~Ñ pDo ! <ŪUn^4M;)u &|uVDbVξ̄{tBtpS΀E#@uzӐ+Ud3^MƉoW.Q*x%) QC9T%K25D8 ">m_XϫǠ\sBׯ>}}NK.b!5{n>*5bMc{:1ӵRҎa@ /ś@u ?9DnhG <';RG&dlС:?(/kg I/qm*xpGTr,_ /Po(אDsɲ,iCI+M;8iEy]D8 c58QEn*KzsRpRͩ8g7s| 1g!o$3'ɀ8b;@|lTW H M5,g#w<犑[ved0&8l!)ŢtBGяNkl,xo%X.vɘ=7qͦmy9qLλ!"z5XՌ޷"Wz&twFlGxCޥgtjNIi0+9 xǚsi0bPr i! P߰;TWMz$P J t97=KkUCY ;4N wNF 6r6CtK> 9$v>K8I`0M҈}Ne+pR~7'rL $/*v0= qge~0v3`(1#"oa(C{ݟapz?N gUP\`",'-e ]c^>MĨ}i6V~0xɎ5TDK;ƹ SφFr݋KnT ;|߁|j|0yl)44 *$h_bx@Kv1S$I[ 26NXFEz؈y Lc/o.,_vYmX{C {2,ާ״o얷MHSs;63w׫~Krfǖ :b!` Eb ˄bUjAs;ѡ`^}$iG \]9B^l\dv'ioQ.)uTd藎Qh{a6&G|~@.HQ Fo;sD qIk0;WN:$sΔ؄ѹ.YhP%a.@B8x;OTjvԏEߙ-|. M"=S`/;7Șܱ!"-~57dkofx7bzACJ:/xHa s8Kq/}g-7zhh+Qw#M!ev'+H "v_U`ة'S@L{=Evʾy%9@N7Tj;J6!G{@K6Qf`};N(Ϭ- d IHZ&'Zsl2PN`rGŹ䬂I`W p/&φ"7:)~4 q@: tޡʵ߀66: e}A}S&/@6O礶d*e΀;ю RJŐT+d8\cQq,iH1}L\djXlu$ֲ/<E€]B &!̈Atq]}h{En1cr qf" CF潉DRRO-E26O$7BGPg7kVڤmOGk~/d4 Q \S=·Ҭt, 3&!6_+Tv+GdN%%hWz%HBLj%=>[ سf+&FF|=sT#up"q OЬL. MKaP/X!MplniT{S9Aj)ЋC`i_wFPp`8J2 p,,s(n)r꩞ S1YGAK$Slp gᘺObvD#`[8kJ|L_"57m(LJ"g3p BDlnX˲\e_|޾Mau%6W(z[Fp-^r.4'u]x3c:Ҕ=(]W(ܖ^h I<" L;bʭIx:,XJ(pCkwx"ԤF#X/cKd?zؕ箔sm_TY;t󈘷ma ]pSufv>|͎-k.Z3Q\74%Ÿ!)^߰vp" ;տ7N̓+6]M!ֽ5W!R|x` M- OeJ"A0 LSLq,g<}5X조M!ӎ+57dwrԊ+I+)lv0GP(٣ZZ:S =x |<]MjYPU EdEӆ8Vq8c*PO9_PO`.誒ڵ{ _g`~;j`Q;kheq"JV^1}\?"}JGӽen 9UFhu 2rK-ҫ;כLC6eClR,RF]PsJX;!4o*t^īnj+?~ A9Y?1SS^6$s$ :YG/͓S%i$ pw {OUWB-PjLlAFS`;AO񐰽k~Cq.98Ao53%'D *yåf<__ĹB獯;XLLJjX SQ+FPmrEgPØa}+*pSg~k$~F5Jv2lU:L% ~%'LW+k?w//3p\Pqma1K@s1hU FTa:l RUЍy{o?RL|10i'iw/͊{:Zu\!ȟ¼:)qJFwd]GPK4W ά5t/eR@[`D+b#r ,+h1 z@M!޻eq륽CL~x;FQb*p cRu6 z] 68!S (qfs!RVA6T̅V"lڙf t~?y$–@KN s[ߍ9|#oӥ h˙v[P٥N qCa ֠xWq8xDWcq\ܡWr[yr[^ nE'c̐Qy5I/m}j J^mo24hܸ Z3t)4f&"WU6[}ףՈxg!]:qd>JΊ)6@e4=&\pg @ @fЬp&0.u*- "JYو/h=#egכ~ M`KBi{~PtJcsc%5+@k>QLәmh >O2sBj FULOr"0+?6/F%,+JCyu#T2 GM깬Qg-1U+3`rml95|Fxm~S,Vx!{WXoϣ>c;2&{^B-e.=kr`BfX+/"(&n]Πey ¨akP/pҺ%e?in6z#!kro9etRߑMRH6vb&z}$=oozȂb/oeD#b?H츬6k!s(#ZSzX9'rrVV4a)t4W Sb[zkDBٍ̕La6'QF g(-vM}Tv*as\$ ta9u^E/Fn+1w:UG $EJ3Wɜ1"E^24isn$֍ꊊ"]Cīke)߳7HlKM5O," v9>#]I qJ-Bi1&үWH!_KnTka< !`)lW(.47,DpyX#KzJ>blaSax+쌏d{L<OMd Cz?`p \G3\⠱62Br[r%p nA֖Ri~S_ry05 pFID3~ɋI7k׊XL†| C+aScp~RmqQ|AJNIIT~ٖGV,d4`2Q <ӓ4z%yM2)Lt 2"eg;mT.];.Hhw ̀Fb><&Hz$s"̢(uë/$u/_4/jcE燁"upUky, +'Acف)( =>d ]rIrE.'mx{@1gLfJn#Ԇ)ZƑrY1jH/^tF.i,qաՍ&Ocl l2*BhL lvFFZp$i ˆ6@#+vӤL T$KZ3쒍S#xjK z/OsՍV]R;(0,!o~dh^r[:Տp0)>,&k3.!v @ TWcUnuo/XR&dJkq7s(8 >J yFEpF.eă#5kqG]'i"rЉ|M*Kp C$d"1K:Ϲ ?wZ Z, TNg?/x>O."Sy:h `޵~2F e"4|4[?Quvvb\)Փ`h2H7 LcWL HZG~OPF[Ԧ}RRm^D}Z9q!ѪÆyjhɲiu8P>(ڒO[Ǵon/-"L`v>qcpI'lj\q!(hb <OSth2y< Kfٴ>6}f\FSkd~HAz[G$47-='BɀZtEE~Dw%cD( ;8ѣYIsQP\E٨T( CrK ;w&fХ To]ۿ[ÌHxwߧW&IjoV"5GuSw'V<'tl :6C(#&};]-*{=Sש1;`#\lsp$1msy) { gC!6iht fa; <2&3mȃv^$_z`pV?pJ{l6J㋬ȴS/u&Òɇcڹ}ul T"vʪp=uAY1#P<%Tq cWZC78j[r>\j Xΰ8\$U1NXF3Z|.[\ʽ<5{ʢYXKR!g^w:X91݃[@}3J9S)B!U5G[D@9 ,sd0Rx:VW3rM !I40|%Bd7QX;E.c, !²uB)Y; #t [?x"AqfiGbڐU4CVTzn Io{jt0 .t7u䝠>х#ȟ.NsjJynVF}3bINMA*!8d8 734y\7=7Y/x:=*cQABH}Go|\oT=MLfiD~\Gi1W(u'=`Ͷ?Ů2e:sYWF~O?xF/-/B,ߎ7s?qnSM(%L'3| rZ'P#K`J`jսпkN [e #pV"aE#{t4IӔ|"wŠ4t٢pȆI̵yKnם2QEQt moɮ>2mSa[rhl \LpWuiR$ ^F۾&:887 G aDY>.=3o)I1c.Yuw+1z>RSS8-!r[ 0 qyFh߶L ʒXLшԤ*Z[򯣛䓶ʯvl~1I0[ԷWX)LbEόwn֓4SsĮM/1>-Gۭ,KOY7TP: +]\/lf$CRK9/~4$+mw&̯hU4 VR9KGGʸSP\ _Mi)[b.}۲x!yN8B !X7fE+4?M̫$pk5R9khX~èn;e` 'h0XtJ t@1օ4ױqLMb98 Ey ',|:G {E 9Ů]}^Mtv`?Bf`|W(]'V.˩F8͝KJ +EM^i[ڷ}2cs(!~>Ńf6z1%BDF`c:Q8a)R%[b 1|1*x3)Z7P12R0<3P܆/TG%{j' -lhUmVm)+nxA>S[$<*s'VwW|У` Z*P[)I?*r t'!dG(RAMߦ9;0Gz^T8j`*^9WkQekha3uZOjfӕ,kZKjɻ\ZTѱ2,[B۷&1Oip*u*0G7`>;؎:J \I[~QE?(*SFF%iC){Dgna 5fJ#pP23;Ada*lW0jй3[.-f=v@{@b1-b.ZGgOPbjcϭ1)5>|ЪGרmYlպWm3V eԸ7xZIթ=R٥ӆN#R{ɚkj~w`*Ѡ,%^I2uE|dd#u}vNIey$_$)#C=%}.*ǧqa /+}uQWQ _DjQ!ik-~ѧpU$0䶨c 磵\ c}ѭN]ij_?r^Tvg3K3^W dhi) p>jΕ֑6k,LAwP+ (g䶥rv *u].QB[F O\x?OHQt!"rۉ5j@so5~ꑧ4loJƶ{|=ģeK.E~`Wc87ߛY$YaE%jL})6f/ ~#y̵ekxy%nqz)ux;O,szGlJE4%$Aoݗ0P} Jԍ)_:( JCЋ ;5y7g ³TNCS95 /wf39p1,veܢ]=xdmmt77W8lҝjV㳨5KD.!T^²_c?.}@@Ћ"nEKQ t]u7A0-/LX|Ez::#y$;ZM͒q69e6g~8$u52=h?}ɴv#ɎqW3׎ 0#1shM|'cfM0QpTt SzI-<0 hOrNY+, c@T6֗^mZ$"`uɝ: ,>}Hp3/SJ84x6U1YC;tY:C%mXܣw;c2ˣ.jpEA +"]GRSIEpz/8hiZisamw@^]g?`AezĮ V'џ og7v,F%G\6[Tf*Խg-. N۽ Jgl$IJ*>^;A&$ ƋoH\7*9YOK*"N<:$:ҧ&## חm_3:ɓ $⥗l5@ -UL;2]}-y T]ry)?cCaqp0:tOw{bNA~ 1y٩b5dQ̭Ik?֓0h=}#4t"IC\]0cD<'}FI{4kZp21pLi܃M0$h˃]&e&)1>7Fdݔ(x :b#H6óa\}{`S&^M&4ck8Z70s6S /զv]Y S)h$ABiHϨ}RؐPp2@633Y~\}SQV@GVOxf4z8Cp Sҧ 7(Zͻk?w/H0V*|QJ)P EN 'c&ywHS"Ft0 < -֕T.prHf-00޽ 3u;{Yo=%[5;QD##s$'+ =:\\^b&ߕ? sf0RB^y/ fڔ/~Gep]҃r_^G҉Ft ?Lvx/?Paжv4T6ι7fWw^CP(وgƻpΠ Uck,t%/rux8#WiV =h~%aG~8bQY><11d_oMK &/ci{@iRUp78{y[?["ll$7Cu׃5X6&>!A-R%p2xlkmVEy`s 2kal` 8WX2J{ E&21\i#>p"!ߴ<]p{]\3)OͫnMALm2F F$>e3Dg݉}tZ ȍ!Y#}#ә{9n?xQ [T\uyB=庵P %' NQFp.>aIMjM,=**"&{gʌ9`i0BZQmqc֌ Hdw!kD-~MCؾ'ǭUӝj͎/<یYV~xHY ؼ;H ?} e蹅-YH9 y~NSU;4ك뙼#d][SbS?ގ/8`VZ GBTW\ڪ˃1h"jxQuJ|աGϊx~`"G$b_q/y=sC5}ɶ(A: Aa<q-dz|9UA:̣j)Nzj`r(Ѡ3 4-%iEs$|YѬ^9J P~\G*Z#j^hs<ɹ\R! Y&:lqJ1& `4 @_$kD~J@dt)XïQ/$jb(ePq%-7N]*O{GpΌbhljPًt0L"#{p =iF_d!NQ^ >Zm`[櫿+xOA;J;19WmE= r=)"' zʿI&jU@3L Y*g)ĄQ,BbC<:^5 q>C6 =ܛyw@|Xer{Nt)Z:$Q Ut1f/f'ؠ]&GڠM *2<KنpD|zL4y0 ־NEl[ģ|`.Ű4JlRºK[皩rzWD2ga $Z N*9uq{yѪ5aSIH1'!ZFID4?q2M*)ڭ xH-nI3)J6dq*Q}dh[GE  N نM}W;<{xwP?"'UKSLf v8eK!Ui/A7@@=MfjTpw9RMi1ΎUNyiV5 tyf({U3ʝUoK[9;bϩs,5+~yU (xDֺ2w*b߉ȡp0οmHL-']|-`AR&Lm_b% >y{.'(8^hn 92\0d[/}#&GGcT|Mx!랒 I.Gq"D3pxWLzN72%i.k7d!^f\&+d}`b@6k8^Qz =U~)ǵU#,Vh"Xp_)4; k %=;Y IN,5 hpYୟ2MV^YP-Rr!8R2mWԀa}zg-q:滥%֎ ;:#D8ϐ2 UG~l)ΰb A:\N5SJs%:=nTGL:~fp_u-'aиW<*PYB{7A5L?e(*5RHUՎdL6OqT:XBBdā[T<4]wJDJߟk# SWr/>?xB1>t2B*6[Ƒ/6ClGkC˳0@9#'D ˬEs\9 -HN}gV Ukլa"틼6COofgЀk0 æMGgDAR m~ޖ{nȷ`*P0|"пwE4hǨy7ʜ .SOXrќ=.;E8XAX*Z«=҆hs:0 ]'d0oS+Da>@A)#JQX>MNt*0c>‡m"g-;?›{qhO?YUPngޡZ{e\9 >`S W9@>{du]NQȗD8ǾZڽe[h*O T$f4e Xy'x5YY[X0'Q8|; 0&=AfhĈtцfB\Q{S~#/Ts!YY>+B"ic"&7ڥ=g Q0A'.֯61oDbD$xdx3WK _g*C0;{H(#deI ~0՝0N]eDF0 .|$a$f+bT˘8a^D"N%(~9~#<^@,:m/otqRgb EevAjܶb_1T! (Zh 2IwՁ7yЇ? ̘w`RZ!fCT#'r$ݯylV0L5LTF6BxL/>Ě\K=wrTXJ7-}9֬DR*,Ί %f߼$x]岩,4I1vFC|5mlut]Y a7'/_Dw{?s 4#D: hoDǽeΒ.DMmP{O47NX L#-2.& c](11(-U^ Ɵ,IpMW\CBWÓpJt\BhNtH^ÞP4YVi oQW˺(72c0bJPoMIM5'Yε`NtaI liC'"2~pA`HyaW $/^Ye F/̠GP7`ܒ2ݓI-p+O~`hhl(}(o5zEix8`8KkjwE]fҳjN!Y{j,"94xWfQo@`$CMm̔Sl P?HFd8:ME9~*37]ǶI2F&jjRfVsCMԭ nFA51y䙭"/- oUY}oJM i^ű%X8.U%o*O*3132NCLrĵ4+F: H;):%J`z,$FpԴ8eV╙X?jvWo|5gjЃ<XW37[6*# 5>9 T}=#WR}J;1^ՐJq[w6ǯ[#׈2k]Nq:_đ0Ԝ K^[6mӐr}0a| D*j 0]Zu~tf4`M)Iȷ0N,|PM͡ss|7؀Nd I%v,X(B_}I!5u%h}UA74EZǟTUd?AQ*Vz uVLXUiJ†| 7z*T-pW"W5q7?x5ivN񆂐;v^7q'KkQ(mP(㭮O&}Dzo{aQ8}k`wdl {28O̗IWl0 |-c4ܹymc ϕ;$J:5͑EʜhwN2~BX5DT/# $GRQ`c̵+ʬs'9_ήjq"(Ts@dwfĄGl5{M~t]{tlP1 V|,%bg3p pc<]{Q}:z\:@D1tZ V)-ѽwhH2{%2ا[H՗hPӕyЬ+WE9(xuݢSdӚ`x\v\&{Q1W隴-z|ښ-zƐiOtG,teHMy‰ӝER2Ǣ,!Ȣ&fc0g:v01zbŻ֐9u Wm'[$6+8M4 [4?izLræ Ww0T`ໄV@-iu6fz*:Xlg 9xj譝NH-W2=lAa a%KopAK)+s(B^`gr0B$pƦQ4_Il_mvǻ5 _>S_b}Z|Ƙ0jfz޺Glf2`Է]6^՘NإP԰VKܵA'awӍEΔ&ʑ߫ gFVM MM/,<2^{i|\{_+96v=HΣj풑 wx*`Gjd$z1R Y+*aWp9X#3׺x- (>ĂQQQtCt 7`SreNK?k чf/ÿR(@+5Ղ/][l6$k>ﯳ.?"1?s tgvc'K:LJ0Dc*Ra'IYWg6+ t| hQJ5}^|3H%#~v0$vkR -1* 'oIæ^_c 8{zux%~;K]0bpo ޲8t^Cvx( BT 3xݫOU4lk0^uJ1"?HB6#!I!M< `w["yP o s<eNapRuں3># 5ci6I?l'VV1.#%]OLPOEFUmX>Q3%:wKWLr1<ˆJߺ9 ~jA> F:vD3S *]/dm&n!F ɇy%l[1,$P)WHu wS}cd̉Ķx1lR*<+ţ@M :)*DnDnc==C\D .C- r= 9<[G\n~'! gZe]Y5u !pCH{k4 YLgV1˨G12ޥςbXF4}ǜWePS$k(x~8aEnhDs Ten,{"‹ɒe^G`l#>PJz:,vˉ'C`S 3vȐ j+`߬c 䴢<\_<5\1>>rdϥiuy~*hPg\|s =ŠBJ) :,_r)gӆȘ/,+1{f-`_Hʳ~AcN~oϑ1КR0tNj~7R+gpc8@RG<ץF;X6np4ԺDVϳ*l|j!i{„ŭŢ^~^3w )9I"ȫ68憸.WqD1C2˥7;1|J\ p5dUzm%t‹(ODg o}oK{khE$ P?%?KOfDגּA9 X++I fke3@xʪ^3$} 1܌n߻p+D13)p{{$-EŚ`'XM!`[ƞ{gb96h'{hٿt48_iPsJ(A*#6/#ʹsMЇ|ywʨ4}ʅ3mقI@gKy k OA 1-c`dP82s "8됤{lf<.$^h@A|Uwj(+L>C\Î'B)6W0ԏu ^T`,"x2BW8j{qأVK`ܙ? FՠPU1*2nsSg 0S2vg/M,yxE1=XlmRYq/AW Dя1!Ϋ/d;S//+c퉗)y#K8Fb~tKܶ7ω4-T9m&$LLZKB#Lj$ ¾Z]|:J,>Zq4Rj}=f_4@ɩTĀIt1ZNNÆJO B²DSPr䜰*^L.8'm(I-64R)tA[dRP9Zq51{#RkHp!1"xPe']8~*p'=qW'Yv%wm%YQyO=*i˗a^Ol9C&eYORXRi/o tTC͍\kPV!s.?I! CŊ` pS&ͧٴ/XkրrR̜wEs C(m1(gfHHE@{uW.Awh]~[٧ A{KRCƽ;ܕ WnO[Ze'Sy(iUbѕ6HJ>$ւ(S?a :- ϼ$m1g^C`Rߎ[a>kEv]O&o ; K4r2e<\2^($iC_?۵.s9zQ)։AygM*j-7)9gw}qmsֳJm/BV>kRu*X-o",3L"CjR  =+︘&䕐(Ve@ͭK2F-a#nm- :ƈFi XT mK4"#b`ى,l^OU *L܏ސ6Pw(6Ё|U 'mAnbUyjez6Yd)]u8315!'>C/]{n$uH M61Ol%.U)LOjd뙙uҡ"ϡ!!Z'mDIH466rQi:`;81tjH2lX90QqIW5Q?{͇yT?Ѱrǚo*xr-><%BO$q;HŽVܖ@Lg"[سjK#GxMu8ģ)=ԡٕBI A ^]R͙KIYd,"e :4: fНEXN1C ;3{צKh4-@"\aǏf&54{Sa {&^ nG׼[Εb¼!|Mo%_ƨ8<?C<9XUl5^;[HBφ7Xm8 1S)\ mV]wc7.:\9Ώ\<ZjV[ܐ[AtĪ_Eܩ}*4ԕ4+0'D]r#*7_+^6 Lo[S1t3m4GE$&Q;֎ɹ ddOүZ;ʕgF.tb> L&@T>:i(PAvΫ`avNzZ|TDዧ՚ymIC ;OGaiŠfZUY4VZ-(S5s&Ԙ͓)0x}Rp5,Vjÿ5[yf d?;s_Vo{;ظCC^݇T]!+]?"#ayZRhIzЛ>Ƞt8,ғ(Sҁ% 1I{[wK+k$nj=ҧ.ɠs¶Qb2 !JOɵ͡9 kG*YvzN8l rBn)'@˽)(Hiؕ$EϝѢ,DۃDȿW>~(6b.cY[`eFjXw8jִR=ҿ~sěX:/$E Qm4{ꯟOIo:_KcSl ip'`u wИ^t;D?g ݑ7NXGoԎ)^ˑisb̷ۈZV(]d"u 'SM} xhC1Ds?1 FAܳƟMjD7iʘָ*Jf_Ŵ'׉$? ƹSu5hA; zI#ROgG,@`$2ʢJLF ¦u!eߚEs(감1& 9f{0i_.ڛ%$P?,۶GR #d[8mR5cHߍx2Jې_STF%ܪƙ_zl=jOxc AmVVWfcV>).HmN&סR(wĘ daAIP|!Qj^7Cj:xq`+3T BZ~uE; Z!X5j[2jb0Ģ/ />G:i=ǽ 5MKR\/nӤoxX{9MT7T`ꢴbFIjWRX| Qx"Y DJuU1g!"ܘeqr+Ӊv{-o!85C%7h77Tzz8eX[K`=n>fNEl&J sD*r Ts`hīJʏ/&zѷ h R9M 53޳Dn{Ho οåϖ;ܜ}mtAYvEgm Xm6a*߁pzH\IK5q KnZqmKc>F OqһQ7cJ +%OX <.];µzD[Rw@JҳvB-U 4l,TIkpL;Zy?, 'Y|إ4$gaBٳ/&[;V-{1#׎і-DM/, Fڛ!gr^'xGwQ֙붐Z%MPqRrҬ:#IC+fc:67;^džS2ɤWKCZ-]ɇdo2‡m4S=,Y=;evH0X!4*^ݬBy-+کa'smPDTR=mm=kCp#ż D&K@7ߚm 0A V?:rJMˤ>ZJŕVٴZ$$*bKd턑:.˞O,qItʌ47/c kyI3ul8Z|8'ApM#J-J]eǴ&^D_aVvnzH/|sHLmV:J`n^V,; =,]Uq!eLpEĐ{`:a0y[Py/ k" (%pAhy#ơ`3ժji,0N X r22z"J5VbT-?SphBK9SݍFIзՈ^gI0Lն1,II}jnw(ЃKiM \ -\SN;' OzAL+5Q8vO)n+ F#CY`2{p fj!] 0†HvOsfN'޺5*iE\/؏okif6ីO!2l]Ϲ검D'.@ NgVK.1aa)AH;#Y@2ߺOŠ2,E.^`Ǡ47ܤ'b|Y4EؒeW:Ht2k,2DòfD{ZyZ|RLy%Dn.$^g~))y/HiXM]"8N{?Yvg5:, '+0Nq9w&ۮÊElb|fRBt$č!CnРl!$9+Z,͗m׾!9{lw*$Tm!%iڤPBR4}Zn&H b';CnO(Q֥R@1V~}`BKyQRSd&e-x,rvxQ ~MRous<&SEQ;귻|5W쾹kC]r~gj?X_hWy+l:t N:ܙ2y6p4~"[cI~fE\NlG`!RS{{`]ʟ0]J0 :OѷpN;P頢 +Q@% }>~@hJXL(h͗*+ǒl[2f0NL ~HVf%#Gp4 oC>[Ʋ2ֳܸpCkVqqV\[ds幃C_sx5Zv]yVW*Xrq&:YxY>e[V/D޵#7,XcKO#[9? M|r{\ʽwίgimϸzґj]u;p М@\L0)s eOR7LnnH:FjAf.ۍ)b0=_ᱡyZRwg/qm$7Ѻ$*&Ap5#Ώp:bדX/MMv+=Nzoƹs peF xP H2(+d sG t]'VVǫ8;Gc8+G#jRep_"eaQͳ2%jzS y|Uy^tґ[\ex~hl/6N: L@[4"tH]m9L GYd11)9O_)LߥxM2^ mKNCYo mh@~xVcWk:tTh%QV^#?$w?TTo/ .XFw)\ocdX-=!prdnde'NUϻ0z;=툹[kso"!đs^`PjީC,m6@'pO2p.lZTE2MI(iR$_>& 8̍x޵P,G-̍k=s >j2ڙs@S :n YE uit5݀ WUL5V"c<\0m#j7'";AC" s璼k"%4OHҦdgs Ɇ6g3ڳ滀`hWEu!`.[tBûg,y+ӸE_XW&iv yt55nw--,?7s3?VSE?I*Uy=@K)X 0͑6F`ٷVtae>WD% 霃5PO[HSP5ybY)!wsnS"g bHo&F{ fm˟vR`~oZpd@_kF~VL/ 5UEETc}G) X{aэXԵ ͙-(́?PAa%Dy aqo${jֈ!ܔu0elȼpHE| ʖNILt#8fO;KUgI VB;0RתA q4\Rټ0&ml!㫿^Qma._NP".EW C M12D[L:Ԉ"W|\ G UbNK~R50!`F ˀdi^W~ X8:i%qry177"4]"Q`234com t*Ie%wէުww3 vx_kcp!)YDu1R׆(K,]B,Ǻ>K8laUG􀊎H}ʍ~]i4jBﻥ8uu1}٧`x9-XsW.@0Xgd-f0a;4vh _]'l>?6603It ٚsBM#i·)[T9 G|X'[fpX[&l%DZ{EA᨞ihL k\znbЎ3&ݩUvફ37e@7U.gv\qlэd8R>l[in s."3EθlA̦W>rkU7J3QEySmPAScs"r* {q, m>T*1h l%po0s $uws; H) -Ig˂5i͇HSg=ߡBw߼ur=Dǰ`u((׶q@H@ TY^d!{̀SL#VSvmٯ2y iwt}]%O^#9V|;"d(-gWz^4tG:BGd\7H$ KvC%9ijw]1B)f SX9)q' f{rKkj5y~QC{t*AyBiDh3RCrpve"pa VtІٺSTiVj7\$mʒ]ʓ8V荵kU r]Rހ,(mi!?oYp$"+[}P (_c5T-yQE~$DYOƞ7$)N/g JC>x=}d ˈz3Bb)FC-/n`CNŗs\lGXDN⢊mYtŸmS) <.e!ٛ+i10`g!3e{phie[֢~JGICV.>h&x5M^0KJYl pwȆ +"|B|,T}dH0f 7|>WLvrjI5eeqش|/0\ m7g+n=D#40b㷱P-Q3h{ҺPnV+ANȜRǶzNM­k ܟ~v"KLld&{wtTMu]hjuƒ Z kuN(GUDzϏ ɟiQr'嗵A?x`osҗۋJ9B=t[Җ"3ʳ}<pݗh 'U\ #U&YӘǴ d_$@T^D vQC)G~Q*4fѮV]QK%Bn_0OD]%=3W F~!34u'o\͵Z"RaINL.CwMee~Z&N=bE'}VTe}Gȸ8jMpZuӁIHŇ!j0{#f%Nl5|A|g禑h]!c擝)2lW\賅3!xd@9͚x&?qMmvS v;ُiu\@P~i ǜ9<^=TA-OYٵEp&īTB[':+ĞFu2F*fngl^ _}a8,p9 }m޴+f`B,aM P6ϼւHfqH[Y3Z*j}iz^[AzA2]>~l;¼oz+ 7"*ڞKL'S ek^B5F}\UH>VwO" . >d]ƆwSѺZG5-tZHf-󇧵ȄTkjq\ZAV{qi=ӑkFMi*(T2J *T{2TVZ"W&ӗh d^5˜Ywq}vEw6V*%Y-b_RaN':WYzC7hlVΡ ~ G}Nwø`FU7=H#J *NH?}(c) _,hZ'[s BCl1kc/yo0&Ym\MnV0bWjL*ю#NvIJal|0]noNHc#̆6!믘vD>525ʡ!0Pn|bl9`o/' -7Q=Rij 9]͜ڭd2/&Z?Fc~JRZFZ v5+E]DOIsR]2 &^_t*Y \e[p?˃VHWE(!uS1f Tx7S뿍-m\MtxU𾦦GhkEDeS؂B1`,#=jvVQ] E#_=Kkr) _uCvfgS Htvܹ-]EBF[8XjTz94or< Qג3zJrZ.+]bXgY~hUȁf!CД1 Gs%e}l!yE>@ﱼс4uH{"qA[LW:"v% \e$qK('Q-VC/! S(fxGBDČHsxNKV[p]{G4VXӍ}Y< +FsǪ+lNh!0c acxu@$ XwV:Cܜ4cnX:YЍ&)Dzq &qV\k䠝vԛ7搄$ ѵ,cƲp1l}Q>'a}%֭_ʵϻ)gwg q=w9ڞ(. Z; 3=f6M9cǾB;\үD9ڂR YArGw07[cT)P:YPm ;rix" zį/;Ô2;,8=+jM#3e~c ]p-hqy$vF;C|J@b)p F8Z)2ֹ` gBV1MD)];;i25\ÐLdM{Elp64֊R73: 6u]ihd:LQTPyF H.YuxU#,Wdeq@g "{)s٨n/¼@ dK#m;NI9b@}1zҳ]dK&9SR+g,| Ak믟OnJR QYRij;3H jF r6NkF4M@RqEWzlxfR)P^#c_֜3׊^F'6-q̋w]);/bU->IֹD՝Nf׭b:jNiMK[  ˊCNԛr+`X\KwHpmNj%^LϏs'4.RbnɊE~'}Sa06*=A=+dsכJ/gdxS :cWYұ s>ӣmB&.yAC5်śmAI Xҏc`^ W2%#yHت@Ѥf )p/W2gk[&M'|i-I)Z )wo]`޼-fzl`T(AfeV@;X igǟFba;zlӾ`"5nؗ ͶnQ^j%e[5qy]\e6lqMWBH&߁)̎yʆB PM4>(=c?NnWG۷.> 7Ht:e PJz(lF"Jyrb7HSԾ?4ZldkԖЅ - Z}v`2 OiJ焱MW!e<L~}'OvP7뉙IԬwC3Q{gA\9A\k~/ݣ/* } zyVjSh>e ryy&3pTX>j{ jJ%nͿWs8x9 whJƎWevmϣZp3Nx˹ClD00oܸBX] FK$~jyPxIYZc"/|, ׹%ǺlYMi֌넮'!߀|.}{,'HkV䔐 h' Aׅj7ߵߖTj`u5@Q='>2}H ꅋqm '.`@g?^(]fGd# xDbQ=fN.n{]O}; RO@ ,+V B/y4WP $ɈY[Vl'Lrtv#22B'sLGa=1W"kT΢.̌Q#aCx_|_= LC@ B'I!qI:CUOKT-YO~V4jEJx*oOo;ؤ`~Hm(Ϗk4i(qTL = c#] Dët85n*L|%Lnflj6ctS^e?2C |S_O24@@)q/;O9[ F >︵L&G>zJiWǶTLS裔hَszfEnYU/5c~z@3H^\9~ØdL0N}9F%ae X]E N%RR/@¨" W;e|!W(T%qVljTJ;ĖQD ?g_x$o~I>%cBeE,k uAMdda9+Mu#N.\@H.|sWJA`b^ ۙ6/ ^C0WXK#2Ǩ7vAַt7׋'',ғ~\G#5l/h/oiDj٨H'C$.ߎHkc@39S榦;כ]Ƥ|KL@s"Q`m ~4 ]5\U%քsw  Tt`L~(4Tn,'H4Zu&~:IdZK0T#|U@yDT~"Pd٧ئ!^yX753#iR7c4pI:TNnvIo}"`%nkgd?Hdjc [\fhc9 {\y~"܉L.dܗg |)CāOمq z 3SاtRRhڙrgVJˑёsIK0(Y+yR67YbFb 3Sw_j)M&U?Qͽ6Ĵz'f6c}恐(Ra{F(7E!N~ MG#NDjR%V* "3්f>>^XpSq*ڑN޽j هA;q3F2aV RCf39:;qc"CyaRGISNPybG{3E~H5t[k0NFFPSzu-Ic:}c^6?_S8Ԩ: cO~12?uT4ı2xw*%'WC ˸m8_=vD6ೖȖ6aTb9Y]whJ34P#v_[:άɢ6j2υ$1DBKM +B*=FmjB*`Ykv_멳Dvf/Q3j!P«=a-10mJxsQ/@ۀ̼F+"1o'*匭o.ې0K@q{a<#"B3 c8J7#iJ{׵"F [cZݟ+v+] p^R}A~VE I#)\oNm 6w4>!`:KhkLGDU]KuɠKIleĤMm}1Np?ǵ :oձ .~.g#W^:(Ў[cFVpL{~ukcW加bUpdÐ}_(!ɂ?^<Fӂ4Ô(ohX5w3Ib\s:Y3$O0ؠ/g'g%K?B>^Dt8j1E&gO[lηq! øpJU[[GbAks7 ٷƭs`bSQj3;:<۩zrrױ'/ljJWLz8DqzR>yv|m8ݟBH܈1=S!nduLtUIoP Ƥ=\Fx!h+  1Mh#J7%h'3b Fi|-~QvgA,PS\gw~O($D}CE%TVu'nqs1n5a3jA+&T@ѱ?^[A_8"j$߉ZìJp/9"guh08̡9İ`؞8z=9~y#^m>V`[1\o^"tada<.3j-I` 8ˌx&:Gf37P1 Le?^AnSvpmn&ĻL(_َ9^g )Jg"͖\f, yt^`ã\FՅ8cJ9Q9 8Jxcz%fK!4g\bV8G^11O>96_h *#}WcF%w"Og D Œc`ݘE:7);wBZz|Q:ߟCǁOQkUEyX=%eC3A/T_h+9OnLf5BJ*B=fKDf׍qf2ص]rY(2=FS>p{(>}I!WǫE1?x,\߈}fhrϥwYj0;dFc9߱]RAmډlq63y{r4 q-c Ծ9 9/#c/ʱzrk h6obHHI0("hngФgӁ%kO VTT~#z6Qq%a\S*?@UifwLP, tqSaZDfv [J,LJR={@ҪmXW|(Qi~㋷st64kI^VeNZ*+5OA Q6u})Z-"؈z>p=VQi$!?xyU{hq֞~JL!!qo5`[9V!U_Cټ[yQu6Tc&F KhNoT> M 45MFK&5 ]q =xfaYъ̀ }qV}}(=Μ/J%kL8(1u +t3\}?NqI!V#33 b:.|5[B耑ŞMcJCKKQyQudՖi,0K8Ѽ9PàCmEݪ=U ko)0zq8r _ F)i׋ '<3|m,bk:9W Yi9 %-+8Ɏ{M)jFV>`)&U3̀4vι1?v6oܶ2.O_־<ɤ҄^SOGQ7wЋBM_ :eS!a~\«f ~&P쫜u;r;D%ӱ.tuEݽ̚.<&*cRٓ+/JB#"㡰l5*Z-GBo`C<| _>Q$7) Iб%f12Cɼ9O2!nB[j9qU 0>W\m$Սbx 1B W{{u^ UE2۴EI%^:1 A$af͵<4Z䞵Ș m+Jl݈C?_[8[W#+G@MS^/8:VG)9wÕ!~)A[X=y}^P嗠yP*zЏGC nfM},GtozrŔ D5='MۘZ*و.@ aݮ%AO@}Ind%^m|,N#"ws߼ZhZAx9ts$J)108PhQZ6[L1ѢqeYؼ\ɪÞ] +1nʳ #(')7#4,C3/w9.ZÑskt܀Jl[ү>"æeMX[ExТ\Nai D\L&Jwo\OWk>2\uG ƳԌC:du^!G39=T^;+7Qa 'X)zsw%{p3hAt}R$l* Ph視#hCÔ96VV}E4KoG3EP]c[ό> ޟ<UMyz‰Oq#Ľ|4}z%|aLR0c<$=Eڅ]6pɡ+nLծ;{wlr;^wȐ*#+'8)^*]d 1C[ӷB4¥Pe6&8l8GzxYB+Sr9~vozSog9Ti?4T_ht~Rp#P8<-Auzw?Qz3qz͎Ώ²-W0VdJ&fuRi2,iƵA5Rz[Ozi$*_Lfkv*v(/[X]Kn r[#4M%bMT3-bN8*V ?SkD7l 4*j7+$i̚ksp37I3SuuԨ߄׎Aof#;{!;X #fbRzD3u wBx3g%N[IҠ[xoJHIRcHŘ)ƲD'SO_e:O}u6n,eӚh]EuYT^($"'`;uyoYWH -"5toܫѩ-kx40+x0z%8>Lv&|l( p*+,4D%nbJ)OnyA&˫xgoEՑzVח! 1P\jep_>$,HGXpIKƃjdh#dLꇬ@ \([;]WYZ̪~s mlY}cM %_1xQ/ $#vS{Kg-vE Yp8 ee\]%&~e(xy7XG 0" ݚl;p++Q<-0 B +FQ~̣uXῐVC+ĭ,jϛL;&'*uÊaaӱOKpO/+~$ή>/,`zsm?kX~Cw[#SƲƁ`SXǛFS-}2n7kGo?ASCQ<I(/> Bǂpum鏱_+HiODTF'@~C*FMf3xJ\^C'}3k0o7"\F_wvmv>8]Rh:0XߌD3h0O(59n 7]n_*z("T}QyًL)"R@Jh2ԣU*1W Agvߪy YlDq ; ۦRǃIT5 _,m2Lxh_j0HMI ςPnD: > brʀyܜz.!ˣ%K9{C;6.3(`RlNN]}y9Წ@6 IUMOM0IY|jA1v4%K= э'ø1TvPJmptn?H*)?E[=*P080|4ܘȩ]:UMuClysz [펹\OkO] OnׁC>u?$995Ҝ(]}N/2;* e2a٬PD~(2%]2Zx`S oC, ֒Qy(NZ\A^ Jf{tZ7kk dߞ@PlJ]((ӄp;w;r@BЮV8Q^~0Ua[\x+te][#[?p k^F:g$1Z Z~:Yve)jGݲ;N KyӴk<[z{ s# @@m> ߟo}{UstUހ }@rooE Fk"Hf tQXk&hLW%8B2ۈMdۙ>rPe"W F5畧E `Pw`h@:?BsH.bvA 3q{% ӊIS5Qߺ#ڲPa_>~T?ӳCuJ-U@ w::h{ UOEEN O|1"*9k-r~)ͷ 䀲DD| %I@S,zR :p:1_cthkQNw`zyQjbԿAMv +z2c*'=CKT$r.JKUVfm\AN-pA HӃ?ۮ2ln2cje2 +,[Fb d ]SoЉGpuZ18,B:2' )yCIWv(Nsj/CM D[$+fq9e_\Bx0aZ&^Ѥס,Vuث?{e6){㉄v:&nD1킘S#+8 $žY5`}i^駋]&sUH$RDT2׀{ 1* >!'3Qߙ(eHbm]7Wxbq%f4Gj`eBD9 JavJET y\͏ͰIsQ],ͮn[N(bzpsbuxBV h0bogr c&./S8мPo_Iړq!k=Sr"1{) 25,*f<I"Mщ:N?!iXk}x]4sZ 6Pz˱$Q0pPU-K֧(Y;@m+ҍJv ;q RB=(+0j (zdIX! m\b04v-/|4O*ѴTfކ AjU1Z0X6ͣmV٧Cr 507ߢQ_yid||hMBr*xy9>]y$OÉb#1LPLRrI@t^=ѵ!~pRkfMr=ҰHr5O)[LT}q;f7B':d.75h"hB >揘.,lIpu1t?%Nς^ԁJ)]yDK2F皞Qah}A=Wٖ#ۃkcYVFcXO;(bV FEg8 Sբma ONMj#fke rժ5 !?FW%2쁱>idU|4hV}A6Ҟ:h`m_c棄*⫼KК!fj W漱IIl #S&W7QGp|`k "% P41|ؗR:C 6b:lmiWd[skEDzX$iLCkq FGmHpIǒe'bw,-;Su`8&;6q#pA8[T&7J+{ӅSs'd^ٷ[۾m H,M'f&SՀh[V7‰s`NLxK5%Ul\ %r*myj9!t/'Ab=Һ4bތdQ/q>dhEVFK E\koɖĂ=<& ȯ3^ڑ6j3 )~!L}y>2AiծFt/S@n. 0U?ܻB~Z*Iĭt|jl͖H`Ӯ flCt^$I_IB|ٓF.ep(qtޔ>9 pgxjTH**ݕ3tygς@6&pw%oɫ;k7W7oQ@ خ\Z%6Һw' bM}r|lժZez\gCE(հ̊*fnEIk=HwYmAJEڟ?͟va.!F<+L@u^s /7IkD>L߿6'-m {lZԈ$9}o 㙋A_?KH G\ǢG(uٴw:T*Y~fwwmo{Vҿ>2lj tBDtNxol9ЋyyDP໕V@=@_M btg^ S(Kjd4k?ƕ^2-GovqZJ.nF!/ҡ~=2O@ e8e!T*<Ľ(#ln`|"0oDK rs >{pH{!ev[m.+'(i8 J彥u@>v&27$΂Q~| (RZLOmrNurz~k,8.Y=#7QѸt֝<4"VvN¯^ԯdͰB)u.F@ BLM&c”݌FN+; tQahhnqjfO {@X L"uPT{3^#nDbt %Nm&o"j+y:*NW;xW5u̖$zg!uAt! .tdf݌wP2Mgr0N!nn>W|xP )h\Jlp!yܴ'%呄&(gـ9a0"np(p+0#q fda*_| }QYC2ɾ\l(l>i9Pw5ޯ>x'uDTv #ЏyY0[Ys9mPYږa ,.3)D)UW h! +@aRm)M=g θmO!t-FGl5IB9'E\,oϣTOp}V.+z&|QUI&r ᬨIΎ,*Q6?qPjޮ2F-\d?pۛxTw3Q$bCM-#M4Tє#E6!Uz k +tpM\4 2a;Xn[@#BuHE#?hx>p@"EJy;uhza՘ xU.©$\ٷIᒰұ9IJwJrHd:6&$fGcK1>] A4ʲ..`{4ac̩w7UZ6)b{r7Xal8NNS 9 gzq F`ts :b{gDT}#D /Dm;@f{)`*hՇ% Rͼܑ&o<809aK1pC`9J#ב_a_kBJbts-Ti'Qŭ{x\b7>q/y-WĩY{빊Z %jCZf6|2WBB!:V@U CxO{2 eW { ψy_jzat_OgްH9ieG5(_ţc2c]0!ֽTzk|ٞI,=0s̐&x߉v~ȄO(G pW`!S-J0#q*I,8\E6V!Ybu4)[(]Ƕ=U7)׭l^PWtIM"nWz51"9qa(Q_\w>9${<0.g~R!zM&'؀7,FOʹ[~SmtJ>6C4In'c ӠDD¸fj)weǜx-.g2 Y~^ɻI|ڳ*y? C+ǡK(.vJ\;iWm41:>$f:TXۨ ˡvJr-NI=oۓ1Lߜx[~?W"Uh_Mϩ@w&O6N>bQ'67 չ͹Pnw,t 0?K10XP9k_`Hbs6'2,]KDSݢغ*u^J=4I@ϡ=!~Gi`u5 ܔX9nG^%АmsB$1 Z&~ 7 fF*vA$5 :.Yi[ =)oQ%i;4dr9:'9a(sUNu1@*L3Z>("R(UwL^pg; V3ZO\͑5dܸo-^,q}n@a 3pC ;KN Gz7o҇ ݧ觶1!R'emj`,k^>(ybp/ٵϬ)qolh6RMHa!Χ[K_>ԱZѳnձ![%lD]iNْRJn˘;}vVbE"gH rk>ۺW'CIifF/Q[wMt dqCp< t!Eh4 s_}N&1Tvb?]C;سQT cLRGk6+(v8&(&ۊ6  `Vl(AJRLpH+d5P3Gܦ6gGzGf<ϗE2%ٷz b=h p5U"5 NpP3(%@+,(M>\tmAJ91m!j ,ޯLC"$N3wfP^o|v.Uz@^Յ}F00C%܉+SZ0%˃xpD`+seK @zfK%F[z W^JjwUS|Wȱ`lV yW̪ Gv%B$^ͩEe,"q&Yj6OaN6Y%_;ߟ4|0.5 ST4< rX;|kZi5 KOM\^W+exEu]h*˥\LE(ZK{F=rݗjo5pX"iX&sJpw4v.i .wb5VUdCS@iX2RnsA֭5Sx䌀YYECNHTDe="DM\cR<7:Ҹ~oT=R)N=u>5jB+?l2m&JJ!EB'v:?bY~k:_o+xG6J_=ϼaDC erl ͦB̉τg03X&(.9 ƽ@^kj s 5BB¡F=ˎFČ&KPXs馵~k!H =g(wΛ r$ovwTmuSX,xvIɇKBcn@lzVO >y@06Iu\T(]Sj=ҊǙT3+)^9U`5NH\R~t8钏A=*h%ftؾI?HLV!`(X44G)H*-K8,Wk]i͎Þ˷+e?u9\`f[s"7`tqA%ml Ir WnFO9Έ>C}b:dڃ   p\]ଃ? B`4a`Lwy;gJhspg 1?;g+~ GJ,E@`2p,홲uк|m|Y^cgy160Sܥ ^U z9Bq2fd#6#:ACq%|1oϽǔMn,! N#I4z͆N0=w&{ 4TS֍w4`Z6Ո/C#+fvп}y'S<yq@>zH rH5˟u=i߱oօcjvoLl yjlN,\j = hۣ7~W6FH}چ1)*OaDN% $H0Y0Ru0(ͶJihMҲydEi8yccﭰ!-nCv x$Jf9Y`%@֕Իأ r,W$΄B{S<׆i+ bY!챢 "K*fckFϲ-Sz[2.Eq#e Ay"VI׉ֹa>yt0Lvo <'NRh `Y!6^2IXLE?C8y;,{2B8-ε$q.Ɉ^wu>kq o1q(jx& y9Ǿ2㐀;+L|T1j .r\}O_#z1R)0)`mNoI6@ڧt掞ބgUAמQfJ0Iӓb`6g S%(e8igr '\PiR`E1^c:iv\?e/x#H#b]o݀= Rtc*" ϸN\59%eJ;o:.u%aKP*V%Uu*D ] R2:*/t$>'- 19ͱIK^l4):QFYqwڎ9x@#ɵ)[\Zx},k`dx{f5B"_b)O(όDz/We`lK Fas\y؀i,wHlWa5D' +Y:WYWt{!Kܗ9`KCL QD9DFmppN@t *ߤg2{A:~*fPծ $'X@M/CqF,yK? obEH%5:eC@0?X/Qҙ:(C{# ˎ/0z7&9&8Xw(*JX!:c}h$ngG?fG=£QUF>6?VkP9UUd'^ڔvdhh&͝lR2 UYkKF3e@Xݧ7¬V^%W~>|8$RP G# f'8W۲eX'N[p' mE(0JrpmޫG(T%#ʁI;="iB1v D@3(CمQ<%ZgA籅}IKjʽlPD8`3zd (K=n10>wR'r z~fSbХ!Ohf R3: H2'șTUL}lD7}j'-m\C[礕 ;8,vVC>h(y~?PS~KV8RM!_1I7CcU9lhB׬/unB{(2A$gg'Y.J3( hi3EZT=J:@Qa$m1nLUCv#QG15,F~_Gol0<4Pz4i3gor00SMAoAxd%LW=26|?_V{F/S5@;gVj{x3wXD 3B1G`7@( mg a@@R45Hy&pGqS $,]@ @^qLȢ\hBYf*#}SH";%a^],uة\ ߹s:A]Vtix5O3;>#tqZ'qņƍ*Ce6rиu5NDkSM!R 3} !t#Ъ{z]"ڬ2Xr=d..1]y[d\ng<(^|DnZԤׁu|]nl!ʭ F#in5dŷLn| 쁓׃֙.N!#"4e^&O1&"yFjAGJ¦9  26,rpU?4`cKy <LMiIkKSZQ{4e:gں<+͓=4Sy.>N1&KL"e&oT1k6qlk3̷ N P7= 8?t\5ATʕ PlÔC8ﯺOqoq6i'g7Ȃb>IKU6E:p?10Ӝx2p4Q}N)tc&dǽ\7 >ew&= 5+5+Z Zoɏ0Sy}M?p<-J^d*K"nGX8ȩ`"uqC~¯&t{ *S;ʚ6JڮXus2NEk[g?% . K273~:X66 Bװ3 7kx{ys%lM`qGZZ@S!M)FI^mU1s>  !٩ٕ$II&oSUg3MToFTVz >IBy-Ve 94Jq$1&.F ~FJ!}zW.")2dP aNr#JQ)j}FA6ɠ__hů:@a7^(׻l[{OĜڝJd8B݀>)ToC(t?X"Ռ<_PC,0p2JmNK-1` $#??&wjWmiVUqTGe1S { ,&LXM_M7qܤWϦU-|fY;1a' IScLsF9Qmz!G&N3;K%\o,Ad_Wkn:y_v||'M/Çc]p?q:vt ɷ L7b5w*[+S}S$26X,DixQOt]jFnݫaѬ;ЛTYM7wNJ&S*c%f>Nu3I큢{T^?B<գd,xD$"a  _L'جT4"HRƻ[,박<ީb)ܰBTNb;@6=uC/6rwA-|xy( ^1ʨȾk߄!\){$萨8H}PVQ&V"9_ꧼ:"۲V(g 4Ba2l2D~< *t\0 ʦuh!En3Wn `#޲,3 @7dD:)_>{?" k]h,4xsj30 :`Qǹ|+t AӤF$I_yDWRao5'}\4VPujtMHg?][jO# x.VoN\@8(Gm"&\r&mؒ3r3]3LUce޷Ii>󹺎&ע`ɧ!N ! & ~TB2 W:hyC&y# P, Ab`Z8"` {A:lK4æ9+wAs|w?D&w=iʆ, %"c Pi.{hAn F=$MpǕtȷ3ljIulz 5.U>ILO[fT=ުr< $52-ԋS%ZK^78՛0ԄL=ʒph|6Ir*R%yCE[$E3~ǻ #Q?d@;_IOWlq1H&_="yҮ]`GA7VAWWv؛y1g:_Gbvؤ A#(UOx!TXFtx`|%QFNsU)u뎽j~xT\:QMY]KiG @,=}gݒEE"*SQAbFh"fPKلޠ/]s! aU }n#`V)^Y[<[ .;t8z_N*46*s)wGK)A|ℛ] ~zB bYU5l%A4C<(h}x߃$wP6nlņ *j]#'_vR<>DLio?)đ]R~g^1(ͫLlr1 MO*4bp GU(LzOћ ߷?!@.K9nhQz:X`>1 3x0Ӎcڲ{N|n'Yll勳c@p~ǜ2(Ŏx5нrAxKSG7j5/XsEǽͬd#G" Y#z}MP90p"d@) GRez[eBwt 6_Ejnߐ'u\i(V}oo䡯+P7w M8~P0'{ GqO@\OAH H8xpKJ;?Н0O>XHog`0@iX>W5nZ=״Iq<6L D-1;1 5!:s(ߚ <,oa;$9M+B!$%QvPf3ݙP00^s~~Tp\ґK+QkGu]PUq!*N" 6$;g+k>\H CnϢWu*|L9€&1-8ɇ2Y|Iz,'G x,NȂT2>vS~j24 AVKx-d$ _(a{޾?_=fϬ3X)ur2&ȣFu}=AH7q~zD^&1?aeP|X=4'/]T`F篾L-FoTӖ'2ڼd>3țEr^A"́ү'? %]vȂ];#@. A٧-Pߴ8tkA OJn;!̑,#WW׿'zHVէ}sssYO:L-/` L-8=)e홋il~Pfi`*2H燪)6607JVQ;FՐ,"Cڢ7OX.p=|i6Y؏d)! bz sLxEUD*. jc5m*mVx=0_mCScc /ӧИG K~Z֥7hSCrz4`x6t*RRo/ɨZ{O!t2}`kf#(`Pه;0)>Α?9#\ݚ5]aT`vǤWz3kL2RI)VW"'+xJ[lfjkbmETH9S8{<3CoDx/z vL380eCCeŕYk{g? e?Wr]Y%wB{ :89u7|G_u[em "ynΎ4'.FsAB '"+, Lu9Pwȇ̬ܨej0ip|i 6azse*#OYTX7#,Z yen[ttz3`݈Kuk|z܀L B =Tĩ(ED WєY+2я:d( :s0VH C|0z^6x M 0*gm&힯2hjOь#K/슀k٥1= t֪;kp =S88nESf#d9s.n-'N znw@Uo)w5ѮBd鹚0GUXqwf2ܟSqS\ɮsZ-D 7-=8R%ippy::XY)Đm}nЊUBLT,~{BL{켬8kFӃ턐cw2f, B" #]mḊ5cϪm${m^YOe aG>y{`,ѷeu*x&>b!$ϏBF]*@V2~&[sߧ?>Ksib۫jc%p` ]1پC%o }7n TI)Oxw]77j `d'EVTR{@Į :HVeԆ'Ss>l+]ǰh)=lbGvh͙ mn>HԖ]14<g66҇Db3߰%Ro";~*&0 H>]Av_}RR& =u`Y?Vzy_e&~0 ٖDL#2/?J"߂Br"n-0 qfsNx_)ÁxZI'/D3?:h φ_|VAw3mqi}*3i`!g1!&y NW!J鼜I l̝d?cr|~$Bݒ?{[^LdiJ&?je(nHh]ĘW/K[nʟSgD|SA6 f ~Qpms  [E JASۙDlރ,tf~^:_^"Z4&=~r=(g=4N؋h`7]= {G&DRw/cOAkk*sD[GJܲtF)сSC0g!mf]IRCsrIy!7Ψ3ysw3`F? m=DP%.952O%6K3s 'pzׯ!5Upf[=@^H/ta\5:2*cev{fSyBB,f/mC6@bC _(dR;6UlI izݘ}U\;~d˿b]@$ hFOf~3Q|}U҂m zXcʍ;%崀VmN>Gmʽ!_S . ]XwY^YPkƅ=*:߯K[/mց=IJr6QK|۔"Gv>VscJzzJ,$G/KS5a'^JWãAoaL/JnIz?fn Qj:j$?glrV2&1!ހK];5* 12(._A kH.?MQaz#\?onGG)~P& -P9 ><0-fz'gJضG2(\Iܾ:k<;ڰ1=; VoMk]."!HZܜtCU\oaj H,/M'b_ģ{ FB mbfXp{qqA65)J+Xn{R+w5ӎ%&͓%U1+P飷GDjU+P U%2e[g9<|V==?yL<ܧ+s}BpjT~D"\ٔ ӫm2\#d\~L$.=,CSOҋSYoge{?@Q wLyD>~ٷg!Нɜ렘)JA\t` xc\?#4K /kEgsD.h*GʮOZ)@ CTE0!F oFF9nD)ŭPӓ; UX+SNZ}.nACPbMlNFH}JYd>TOf~)hcze;"GM$J[*Py*$myD*1̘!EYL6>{)'}х32{7bTCyozoۧ{dYV`5 %%aYp{SiM)Q=s s_1!NUn@S"./5fS&l)#$FD-I+ xxRܽMT&[fȤa1 @1lt^ߡe?]""!̳3Qqecd6-v"oZ +<^a# mHfD6箆\vPOW$9>0s>Pt~+28zNwL:#{3rXrCi,sfl<9gVzrj͵!7҂%lG滚Sw$i*9ẸA%<]N3 6n!D*#^7t8t]61jUF?[qK{G86AMzX @{mw;ojT- l-X)\9FEIL.ƫ_$([uהwL#iW%ﲪ^e%Fv|pQIE%S^X`~=Cqd @ʁ葿75ߢ- o8xz_'D;,>͏~%ޫ q-Sl_(@#Tf`f]'qlFQDK!zn+otq?kMD-O{\$:@*s(!AMEU,YXD`>nэ?7oN浴W>Q9?waOV}4ms`,oEj LTCF-Lΰe\ВGW$4UDDMjoJdӕ|а8])JcXs:&)7;VG%X )&~HiPt /A,m۴vYե,| py{y:I#eQ7gJeXlwDspB`#B?s-,+#]R16@\k`Qihg"tt!`D,(?c#-?#u&_H7)Byrŧ c?ƢsP@^K[|q%Cepr*gthZ@+`矘>=OɹDΊD nȆt kHBHe}q0iLt,y2 $T_M]5aFLs~`gC_,bs?WzjH#6e,r_O8 . ҈T$ /}R 9C% Yk>:48H.ahDegЍtLѷvy·HcDG5z|%m+D4yAr.>SvWgDb ų @&tWDxN` D:RN 7 *a~E⢚uڍBc#&Cl(!Ӡ0m4 ߔ =T:) IQt(#:_/n2N!UPQf2eXh- ߑuR 𤬥ż_1D1^Y=] 5.}'SDyΈWBH1 ȼSS 53[ECn|K ndes.!EsQd9 =B:,KδŖwMw{MP܂M?RBk B b؂Scܣ<ӥ2O.ŋw%>߳0/ }%xUvZRرni+/oÿ^l7:@]Ǽ+bl#"nաxMk_и/9cK+(+;D?}7 )D;Y^ (B3>Y:fri1;jݽUQ's 'ySD+!ZO hVB4H Mk^Q^R_sZHKLv?ܢ[YjlZ9%mU1z.トJe3b"*D SSpNziBhueҎs9oICǀSXce;`uD=vP;Lji&\$&[jIv l-f i86ܧ/< 7fޑzTy4w}`/Xl$4]?ځz8̟`nE)wǃ8 ]( c{,D9o(>|DquЌ.UP}PV%4HXݒ J*a0K}WnCvLĈR{ZB&ǔcXZǾi=飄o(g_yVzܓd7B_z*HsS@o 5۝2VKLOؽw)Ch5;_H5t[%[񻞩M~ZM[{'L9=pSȰ,%h_F]AtH6"6@44Irؚyp-FWtZ᫶s9]WA[v9j0etg$"W5S` xT}D#j^dlB[ٴA-ܘOKiƨ~3YmgXIP"%'Oq[ ;U/5Wi׫+>C-##^+R{ &NwƗvu]5)7@GXy< ;UayWCVf6>0!irF)__4"^XXE(E*)5 #NQֻm4 j;5X-4w r 1鯙 (P~ <%YIS.1pk}2sÆ^cGW)S^DC\,DCOqx0бW(i:wU]CUw:DrpV#jdCELNى5B,v?ap} ZJ &ot#E4(~Lʩ|0E8؅Ёۖ{ט9ъ F˩%w?%\[j,قAㅜۢ.BmdҊ{o 87 EX"ZǖPY`Uƒt> џKjE-cPAqV"}k,vz/LhxaIG5d<$|f'A,&!褦=g18滌pأudUun.kOO2E-Tk!liy~s%@m9ޒ@*L/NYݬ경zM DJFnb oA"K?҈J^CDJPm"0/0+>zДЫvO)vc{Fd<`혈uXlEqy ]4qbõ{jhKTzېi AZ;[ge#짾I`qcŲ^F --Wu.Y>_顉ק{IŘ:~b-s|cY3+R3Sk UiP¢ bh /Ukeͳjäl9!.I=S.SKd zS_;N~i^ a:6uGA#+7Iس3$"J/7xPW=9_84 U+؃T=kCźOeS(cZ{6'd# \YAOjy{d'6=Lsg Q#g$⢨Qt^uׂ3\& :D n$`yܻx@rFa h3' @AI+Є& ՂnII7<-84V9՞!5eѨWh&0t ~Əkagw4g_45(;K37uh TmEuiCWBh+ ɑXunKڟ q!zP +}{O5ف -K+8`MiPl6|dnRT}bO>2R?oX0PH.Ԯu[ʼn}σ!6`[]w0}jh>BFPu+>ӡ/lX<ދP}}Ej)p'ܡF7iQJՑqmlbܛITir7w3%A橕?IZôJɥ}*3#'FOX߶_6 sic?ޔ7Z1‰+%Dz^Ol|#arؕD,, d8ߗm_n[`uai4ů]dۙrʁؾ:]e$o>\*[󩁛 &}`%jS?l\,[<w#cO?!c4)P [k?aulyO Pq>z ^պwō/uNUGRF̄i7(5ljVNL褓JÑKءGXw0!(IMrA35Vp y(\~\N/0ެ-5рP6Bk N"ZoDk%71Oe^_spJ`aea"-I-9W{%cͧ,JQ߁ž9wE-q4J};,7HgFSvKW*aS%PXyipdOJG@q( j9 V-և$ TN"wYX&G!ڭB ]ק_lHh'vÚFCGJ -ofA'-I/˰n_,h`_&%n i@@VqeISA"2 &Iey`0pף eRpWdj{1JZXJ¥Ii4c8Ad2 r=@^ GT <"Foӂ}7rx0jك;S! 4xh9CmJU5fV7@-7cv3(oXؔ^YSP$smU=}}ᴚgdXM9l)U~OQeuLvm7zٷλ"#Dnth?Yڄ)MRqIv*5=#1;h(eJ NuHt߄[4msnT(ƃ 517-ay;4' kYtt̡qם[#C'`pk R YwA[>䌸Dg^h+T7P)9d:+ N;wWdsO[y(*'|{t^IO06^[Ĭ+{YʕE _ՊxeQb,A E"qeD.?_>o=;ʁHF̩[7# CeHV72 RP#CE5j{_t)J溜;: /v.%ItKG ^+Ro P=TPGz tm- ƎE֑mKITZM;\WB;ÖϹ\+7pʛ {-'YǗY/֐ e9RQ @X>{Jekx"m3=*pSG EE=G+ͳ3CO[25.-\-He Gr&Ф0üZr&m1Ch}nm;wQHfm&>V??& ++$&r4Z"/> OTQj9ǩ(^S$HmwȄm")v|GT%mŁZgQL.قoЛH\*df2 ܸ_ڿ1S p|` adV)(ىlݢA&d rK쒝\l3VFTj;fAZ( E,1;wC/JdȩL\&!CݳuA89!&/2ϧO]Fk,'"g"@/OSVލkm(]O'ԊCɣSnPSZ6}zB"Jrvīr7ywkrH4iNȁ[02ߙi IuTڿ3iO # SI# (2`_BFɜxdb͚fu: ˢ4!nF ^ 8B0&+aF@%\0B c$GOV׷%|+#:@ 9δffa7 (>BrׅUD Ii޵<󴮵|U>xI+?(5K #` N1Փi@Ah59hd {OLXGtPȂ07-se(~HJ%] O:ЃZ)UB*,Q٘$ժ6"R0ydjw4hekYCU$B&I 1oQ +4 qܮwvְ :uRCK./N;XSP򎧵qh=PU Җ矷;둘5ѕ̖Z.8@+*r?M$Ecߟ:p{E]Ƚ|U`wHetOOPu\˞)v ŖϏ#iȏHe0{=4YL+)^2L+We# n)oD }HΊN[ ea^-[Ξ>Kq{Z7a>)'E?2n$ ~j*3t0z}P,В߰@=9 !SaM(!`ZecNH*C@67,.VwϣK'{3p/BXҍN8{̠| ?5&o(G״I7;Vܨ@u~ёUV=~96 bѱYchp5LbL؉YLx2Q UeBqu1!f)siӗH9 \5s3^΄Xǁ"ammB HCåxү!.b>}G_jFvŸ׆EqHD6/|4/ce)J :19ϕٷAL\Uez}ɸuv]t-FUbyDV,Y){e{fy@ݸmc܂|vi~-e C2S#2Yċc%੥j z_l'7/ JH>_:a*1*;MI&롭=9QawW%MΈm!]QosJ']]+RbDl ΢k]=!*WhT6"  XW  X'w36\ʽB)vtjQxLd4 WKVl_X:8ҁz5YB5ø%pc~$ xrBve:@ɶ&;!<8qբ"ahxE}* v=bOHpJl~CǙa'HGT}iNָp\VL?QlbūN}Ԭ(H4c4'*tPrXנVC e 9o/.!3h*/.S'5 w[^z1\Lx?Ԉ0c2XGQ>|jtl3ALNs͞fk'D 1V>:"IBBrEѐNS6/(~D"cr><5m$F$2q>[I_//K#0D3b<1 UliZ*^o༏g*H"7n=xtHa"oSh U2{ ă3Mr!Ԃ5L9yg j-?MBq̵pJQ}y yݿ3%MihVYx2s}= QME2YNyt7V~=U\@7&Y*n [.*elDkko/w(H\ ԋd#p 1T#v +HB'&Hf]8wA/}ᘆymV0`:}.:]쉸YZ ?kXuL͏9Ӆ.S^= B.WXm-b 1 edRwy!JzleeOEf ʤ+6-K(~D6OqtHmK9 tfriϵ->"FUou`)N+M"K/H'=֓)|5UcxTD(rCTt5 I.? Je6<˼CeLqoScoI3P։ЖEʪ"r9Z:`jfFAG-HɴN!Ah[L2\(y: SaryHy{m gv'zOahaGxg-+"`Mvvgkru,^߽N%TGd31)yA -5`DQ(+ _xJ|RV!мg?+ɚhb`%R^b~N6_\|i/ۤj8Tui[$H|F{Bn*/I RC ;rFW$#O^GE%O-1^wFORFWn}-XS hX.&[5;? QM'ڱtp)oZSt~2q"w)v*B^s3 ، [>naqS%0VKG4AA$?CNM۫ h2r&_ lQ62iK$`ܻyl^88cub΢βbN{ ٴwGi#rMg|Bђ&h`Q||X!5ZA[d%پZ짴ݸ:!$sWb-Eu8"iXW,R,}"<<cb5B ecVV%fyQ:yA?'EB'غJ!{bݬv.xV~y86J0Ms`gr.yG$2v\cE%8-9?N7ᗼ&>ZY],Wy՝x%+!r>6"Q;8vF;7 fxO{` X=j_W`ƹ¯:zgQw2!5yG( 8tBAn`fy6a:M*;+1h-a^MbVVs)V^og%J8A S܍3JE"RoْL [* ݇_f8C^)5]<Kq+,t0Hz*oځHoA;}̨ IAdh+ lY( v#{q~z27?|ˬɪ0 y9IXp(ӛΦ[zl|T~NiS+vns*O {omVJˇͬ(Y0ޖjER7$Ln:q*MqU@ m?X Tj-TMZuR 7iX57=h.m<2,ssS/K ,Ug{![ Rn k $FYdc\̀}ijpi$e i5:x=m~Zd UAV6^w=Ka>;N@879 VNA qI-.&C $`)lfӥD!8boT>Łnj*z+ׄ' T2qu%˳.!68{ckFMrj5/vɑQ0ju&A[n5mhWsKwѷ6oWj'#jO_͒5kEe T_5pybn%`!(!Xx \k~c0 r[U:)hdA}<2?-<:2sMT[xb2O͐> f;d+u['Sܼ8q/: :567*S ~Uq‹8a$ZABHayDI!GP>kY[Kp"+()27k{L5,SP/RZa8"Uôo jX C5šbPQȵ9,Տ(?QV3`Av,1[7 hDz&~i4٠ҒhCsτ![,󓢀!u0kڶtP"aBE6אHk K Ce^K+.帨'MR֩wv?W^"oKwQ7a $<as3ʕQr@ƽ^P=%lG1M?=BB.]د#HlO}{@(d~+d4,+&Vڨ%Q)Hƌɫ*zÜɓ>cYψ(V HYU@Qrn;_N?`hG.Tt}Ʉrh&4!ٺ򒳸F>i۞%AOpk^WY^*Y?M ^쑏 : ̻6V){+ۭ@2ӕG)~ ,]KRPcayDR a>h2Zax}]q5@(O#KZA]IIjnxx3vd%8r13|;"~b0i`k(N1o1 S L?dOq1iPdGnno' (Maـ8"Yx(k̸ü`F!$*0. ?ٗ6-9g4Eˋ#=}d]x[1.^(z,U{b.iSt_&e5wBզt; gYjtG Ӓ,/c%Y빽5^ҤTƆaG|6 mwD0Qr!Ti!M٤fXB^.ks/aTz`)T|VUڛA\RO^V\iA}h*# 8%&{ diH`6;YiX#ߠRQ$Ǵ-@ 4%Z Ac,d\(HT!2ڬ/z㌤{^4:BQq#D}9da!GDT=0k%Oy{ eToeGԓe6/@Ώ16g R(&xLL^근*?dlAo jil_e"+2C46>ýQ{5/3+]1ut y|n@䷸ȁv;X䟲]7ϊc V3"y7b"HܸP n˥XLUWfCXA!:!u$pP ͳGֽIuV=-*Wi .Z(̌SX~/.D{#^+xC53~חS 06(;?r%Yks_>5L;C9HF6坒 cW;N$bODyaRdʸx\{Gw<8Zfo[aim?k6í'h#2Ƌrdz0! ]~s (˃frR.^H&0bGUp0 $lSFW.{BBM[;XSle>{c2/AOv1ShDZ%(H7*}0n _1՟TP.3--Mwl-}OEK`;L3oWg@VpW*˜_c ' M4[}K5m5@WѸbzIjqP9\hm+1# UJC15uF]7g2 lM֤Oů5m[0C}ND5T\Ya;{h{et[w?q4n4UN 9d=ST4$%΄b2EPbnWuPOWG{NN8/(ᆑxqO;5R<+K'*d=pQi4Mgrc-H),^H NpܘSQk-A$oB!g x␽nɇƷk@ו\\b~Psê[?Y.꬝R0gpaulD9/t=^ѱERWp\;2 ?a4:aik^Ӝs`]]}ZeչaZuCa׳T ~P'NOU(f64!(v;o i' *S,)0I8,10R ΛD)J "E\wHEKA,9ѪX[7"gx dWXW{ ZFTUS\;AI63S~ǯ/f8L:eќ^ɑ[,^(̭$%eB^}֐aӂP-[A^ ld" 3xȧ05 p{~C!J DwjY 4,7cjsqx {|*﯑";UEʦT oVpM%j64B+!u% %ڮ\Ѷ% Ɩ]8(i;0OAі{ԟ3wy會wBojU7qǸwk;dCGB> =`}y1"ءa,hs GL @ɦSLDҍrL%\RkZE Һm,i5Z>J6$xmU[?QΘپ&\6 o u"GN?I,\j BocϦY0=S&PŅ'rVi<T8NœhOFw2LYZLߧ7ls0Fء#zHX,Kɪn?I|y]3;=V<_kBnʹ@7Vj՘I*rqS40olK[<-;%+~sk+A!(JzBb* pboD%%+Nt@\@FۄE yRTz̀yt*J 24cbCC n/K'1(˃3&hR{Y౤t-4h3Э +42A$akl*+Tz߄, %)E.MjTެn݄(x=+ka#ܥ'CuOz0FFq"&hrb$x_s ny׶ʄ8N-#8?JݠZƶŷ19O1 ̋% 4X 6l6B b@&r`UT#}w[<}|$QXCfK yb**+k8E elI,%*s@5bW:BA0 pbn 0B;HMVQY*1N<)u/iL'32z" t3H.;eiCZ#;s OB L{\DO@~HL)~dh$'">T9kj+pdVeԛF8hƁB$e vp!J8kgX :d;!'ukoå*uXz+*ۜJ0%jU5 @S5 x̹!aI[F4ܓ+aܐ"0p);2jubS5;V 4`4aſ[u6Xɠy[G[$ i^ cN&d h!b8e׭:h0zf${**R.u XG5種 @Ԥ˾6HD}.>aۄL@wUC UoKWqmNjSN*ppV} 9,һZ:MA~7=̹^.2&w68'fMU#P]-('/Z(4Ti0}7"UNϒKl ?Y:JmsKBɅ <կף84;¯s:UH:ceW u&{yքJR+۪)xEnRuz@hDz2ߢΠU2|]~##b +" %n YYZ &`%I6\5<4w%>T~[d9LEXÑя j7Ch8h=dπ$G'EO5ƛ=!ne1^Ћu2זvt2O"^do *41"qlJ{[WFPū$+h{eyd  Y~UHMYgY.[|t즅Tv>|_ ċ)r0C<D^B'qʼnXNzy4>Cjlb-,n|FϽ0km~ MHi*DrEt]ߋ]nBm&{|,"6Mc=6ny/.Z&Nr eD伦^F΅/:pΣg-t-D0U۫FUѐ#e2}7~[Ki_z&'t$v½KJ~2[#y,0=^i{Nk8k] fMǪFmu&%Daɩ2G e|HI-V@X~ŸϿ `cWCI1 LSC8Lpm[MP s S4ߘھqQyzc#Js}qvNQsCɴ#$ts<5r8zE_VY+X?;77Hd_8l{JN)pq%3F8"ҷ%Aiĸ!WaXX&֍iV>qN_nʏXB"Vͱ02ؽA[AR80Rݢi3{c 飹:Rl[ՃO Ѝl:&4X6R.C:LFm?~eAV?dW@T}'dK:r tU,!؍!~stٍ  b>]ߧjL$d$={nwɎ8+BdAg@'w F]iZ6ThH4Y,Pں:YE1Tuּe03}a̒}$s c9kg`ur.1g68{w{?8ŅXw:<ҜѽcE]Aa@q]O|􃺴Ꝋ$2t|׭f笳}P5l<[Uo5-}{O'&Z o2R%]{xG* |gSVĜ鯁sgQǓE*Ĉ2hJAP@;iZoam8 ,-0=iрh-O)ȴrų/8&B +u|[\8TN˚&ٔ*3^ڭ֮HVXѹ|P- c$hm*ߥxZw0;$2IW O* XNpSO-^7As'+vJLb oiB[?TapxZNݣߢhj'd+x)n0,u ŬeLP)[8o}3\w^;Sy7E.1Up{٨.4c53-@.n9[;.nDcAC6h\9x0gN=!tRBvM Pӥ~fX Ju3"0Mlߴi&ljz-8/>_[-' O~|'i79^H[R$?5w! `˴pYx9 ,\.H$ MI%_N K:翠S {_2kgH d32w 9jlcr]&]07'FNRB-ㅢ\7n*{i yoq:X|LARM;[hYY0#P*@KB,vOۛf6܀ "Q+'1(䤥fwN7ojqY2vUk Nbg[}}ݫ9xd]7Js; fR~Ea/nw+ħgjfgM=#ʿS ϑR'7֥&CmbJyę"Y)m-`lقMmtB1R5Bve[HiF$O 0n~^?܈nzhH8Ni_5<뻎+Yl7.Qt.DZFR?MF< /-AvyUM w+֘ DŽmTqH',qs*:β/ހm20JrSp`1%!3dNx69(XQ|Ŭ+9%Ĵf@.Sd^"Ǚ&l$ܜqwY<6T=g QqIaRQ-P&]`γf 5:|#}0FuYt;GoS!U<(kILZ 'Kd>P{y2`J"| ļH:kG仱G^'ƃQ!Wodn4i-/ ( 7ya&x"nWAg42`Ȕ|M(۩uWhIDJ *1f  q)Z"٦ziu2>Of+d I3^pĄ%Tg3 ƫ 7+^Ox\Wv3biK&"7чm@wƮBqWM㽖ʾTf0\$\$b%_$88303{y|Jc*jjJ5-RU>zWÎq[HRcDfq܌0={,XV}!LÕ>AJ>PD?6|XpH@ A*=瀏3ޙj m#tHkoVn/# u=g=n3c7)wXVav>)KK5@ɷHyv3,4~*;E۪0ըm|ܨH9FK9PP/!<,4-Fr"PLÁ59/)?͎3uz9K 5ʙ9E/*Ϝ ҲTڰs˪JώbS5yX;cU2> g-y=@9罱3jx3%_*= {"g~'ΙF]Pf7"zDߢxG stp+E@]7 O2cLu}Y2` h4=;_j8IyϿUdAu=dŪy碥oEWlW6icxi[|Dlʺ` Av4y}i1i+`ղ ɰ+qHLkID@ UTsc@Cŗ$v4/i)ӱrqiðˡҳ%w؛bΚ+س#otu$ ́ 黵Y].t.w΂Gicq. o wn7ZOV[*z[(gj\MY҈l ZIPb $5ٛp4FEk[}OEtUIM'z@7zF9%|/P]XC\4& ԓS(s@9" Wzu|}OL=oܘ F Aq1ȻNZXˈ}wrrt8jYZ+&OI~NH2jd;|G z.2:* 凎@lX J*ׅL?lN@ F3y³\~}?+3c-Fv.%;F`PV~rJ]_JL}c/vPsdV8QgbpqxHw.Zɓ,rj-spOg~&rC'e^E`)x:N3eN,muRRz~b%=2^t/ʈ]RYd=9n&BPu,A@Vb$f9RHl O$88QYb<é &) [w4+wz#ྺLCNr=~i߼H!zш: T2uGMMvwz{ي/XڗAAE5ٕiLzкUp ǯ&;N O@Ҡ,-rDUcqd(syYqGp8_7D(MuNJp{.ѐ" *rg/* lQ{W"K'~{i0h7N624\j{5c-4wI}*dݕPRfqEWYH{Y[GL;*Ӟ6ńtK!T.Tt4) 7q54y5 u* kHә\bapW>l\ xA!'|_#$ōb(g#(t+ĸFG=u17Yk7\O̎3ϠCK'0*Z4+:GB cc6WES)ga` :#{\58Dz4tP/LZvOAѩ|4<-}&FN׌q"cO~iNMSH^52j\Izr`t nB,\Etם ~ Ӛ*bծ")B* unA@6m`C10ҋ4=IwGr B*+U;!l1烙hThX\dVY>/}`3N"E#<*6[[$m!FI#ks bC !<)E;sh3! 7/W"йo̻ŲDIbU >1H+˽ '+!Kpx98^YLGŽcM4Um?~;Ԫe}%>jLNE 29qv,ӭ 'iUDZR_!-HC9bB)/w&(\,s/BVncvhHJY|K!Ero3b`Ju I]c{&2bU]ԶXht'&3M0+rӪA,cJgtWcdւo.NuRE@=*~F`e-KT+c>zԁax-2qK3ljF{rZ9*ynWjDs|1)m@6{"qjqYkt(1 ̽1ͺSds>ZȠfː& ń(`u%,Jk gV+!$,EޕUGx[K<mf2>Q | o,,x&޿#5%cWWEF ,\¶ޤ gņXumF̑9cjQ6(?Xovb?R/z1@vFN1}[=0HyMxOåXDe$9Q%9;3Q{pjhHVZ*/|.{ ??Me$Xm}d/nOĶT矸:es /,ZJ =b{mm)T(7MT,eXX\]YUp$D" ]2V/$;z2[NbV*0$BPm’bgmwiDx %#Fhӡh.{MAp5`-Ӭq&%zh1o>+ ٔ,;GPj`VYHD.I`-4~0aRg\/,wSW5O!gvXrsiv"] &c/z(8J\!'jd;\4I U`!V@ofOW0bũi5SmV| >?x Mb%c+*Wi&@.^ MvzEd/"!ygBc˘{awUjQnbHԋC۬0ֶ:6]#, Y=iGz_H䚞vf#I&9k[\^wؾ0<1)l%,1Y%btpfξ䜶 UI$KPgenI L[I+F_m(}&O _=;ȭ>ge.C 81Κ 2]w /bA7ӖLu$t3w=#49tJ#[>d{vG=?40$V\yk~V|LcWʲMAo"07G)NeFrrsC+ z㼤"齓pqO[9 {F;0šRӒxB}5Z\/\ N2)lEZSL|ʓ\lGA>idWt6ȩHGp\q=&('=1RvYax ia4DhEA /B}k-"(mD [ULk=Jm7.X߃d1i'\Iv>=QΆc}u[ηk2 ] 1^#NC(c̀ŻgSM>KEʏEk;0˨@5X6{#ǽ[%JC{phDL-$$ t13^}' ϊ\EPOb|uPF emu*ELoSt Xm,o0lSjֱ,-*3ڟaƫYT\ÈT.6ݢ-NָWV]TI&پȶkE}r)Җ1y7;[?\P(7]RlŹÌ Y > O/_j͎|teНY?&ŪZU+l,ew J:nZeR ֶ2&NQVe~Wl2Q,\6@T,SףK-x(~p"5gԚ vnI`SP`:?ΟJBol\M2_@1]_RWr_{W$m}c;МDR}Hb+ _]H,]&JY9g-?df7EݟDN 0p|j0-;.mO{!3b(AX+KLܿC %))ɻ}4  Ҕx]X( G뗲k} hg}H%™rF a])ο1@{m5;(`Q>?aE1z!VUR5caEsYN\ "A0놑ؒ>.C}jabz>(qP>te^xK%# ԠRI+e4= :ǡSr֢{`ʑt~TV?*bh{[vI:vpY} Hc\C#Cޕrӡqloo2Z ׼ʥ3 GJXS8[4 1Z4>c3#6 MX=F_bH 8W؊jUtư⍐0S@a,-Pu̥w1ͬB6mX_`T,Pv\N N*[fhpf{lܶtAkR0ҰP1!҅KgfQcw_ɤP\j'I:ĭ֬$rfݪ3\㭛vOj4Y4VW/]P݇~>}|*(71Wg|?=jⲐx?[R# \F&j0#ҋ~().y$[_T4琢3D PЁx4ɰ?3 v0lbe?3UCJ*ڬ-|Vxf^) 1ܳ9#5?شQ] Es̞w(/Ʀ.ChAaw#o:S?]olxE2('\4i8lV룍!)me(|I;(to EC("!x~٧&QzXBꍀZ.-εm.ZNx_]]E{P.ԴqB3ۓ,r91$~i/Z =w~zGt/s76{ 7|7'@Z7[WP9#+J?q$TvhrWivKVgso˦ _PY{я],cW-q8X~/gU(vX< 1.D~Am*Ad2l;1<^_Ejԍw Daҧ؋J45;0/2pWf3 # /#*'2fp W6톣%h0|Y}d;/j7!ϑGp`leͬ$,z%-Y/mZ rjyiȷv9{&A$K!e5JmIqԩ/j[!}UT uQx=SL|09e\i* eG)IU-doqֹ:W_pعQ^{ecuDnBrmOX*ŨKҩ/8ĺ8/8TF"'*ӡm꠴UϚ#..MS ӧd!vdž ҏw#ISp嬵8G8F"JԎtJEa>pdcF@ve#udf:UkgtxspINո񤓒$z2w5㤢B*)\>8g~hXz--|]Iqe: x%IP{@v.E;c FEO )N3L$]]4% S 7jnR6V|k q :#,I5z%]uxu!YNO,wR$=[Hd6ʁilaa],!vspt%Lh1[%w`Μ}D 4bx*4=> l aZcaF4d.I1&I1Y0M̬=OG >4 @Ni{#9`ș+ hX"G}ܜ] {R%cSUH<դxÚd }'KluϦ]]`j)кt 2% <$#&Y.MQh[ޗ%ڍtb"ɀؒRo 1WXP֞QD!q^1n$Q[["Ecvp.vKV0ŶP}Vڣm]q'Fjx8_ķ,E+2ξ^$S=⅄2LY,1Rdv GIBC GL[? $0-ﺿP 1}''00YJͭ#L8J oéA+ E +D2㧃nlQtzQϒ $ a`Y %33n"3L|bӢ18Ktg#G< %ed4# m+yW1l5;[K~AoJ4d)cM~ʰ++XU.H[DkXךQ%*QahesDrCIg~alk0FxTOoō~ XE< `!d| 9ZXKAZ:yG/c7UHx \"Ȭ~{?[h%@(]|V BBwِ®ߣqDGԻ'P %fMT1izZFdy 2ئnC GxVdakSԒhsU$Jwش.^ lE=3d<2B?du8'IUݝW bop\n=%4xԒו "6FC!aKKIw5b#s.7ynoAJV8uO LRfdK]:#9Z$# K 'G?An1~ 5*x $r5S)TJ'6+>{T?D OmVzdVi:*vOMV@׹$I >rxu}v'e ʎW%"b^s,C5^4?>' I b,.R\xL,P ,cYAZ)pR6;{QvNIe~/ތ3^'W?g.6~:!rPMr/=6 ʏĝ͛S5c^B0A4Fin@/`|JsL~c%ŞEJi8&J$ۙ% s/Aڅes6TKۮ|͉FaLb"ӽē=p8쯕7ub3Ktɳ8DQJ3*# ?ksgBܟctc!ݡ'sIiZwesGe}1L:vO.$ڵ_dH(uҧo\'7q:%L7Z U3Gݷi;j!巕.cA)}{C!9ΒFO]ms/zQ;01G~`놕ğ%sEzc9Adp(8w>{p:;$ |Ao1n%R6qWOJ͠`<BaxRCe%dc_& u]q2^̢_/N ,^%am<:09wM,nÝ>44\WtŝA)J"m=~qe-'rTŢ *+!uz?4b^ mC޵`4A,B0q&ZK$eG vd!"Ee{7FC}bHL~M] 5(fݶ؈^KrIDbMg y{f,^.|:0֪ QZiVMF!kST?4S'wɿZ3#~7*)GEԫ޼9~B :Ýn%?۽5g+#Jev8g4VN566hZj#ԳbّK.*[?rSd0\z  )F[XE}f&\(* ,ĕ"wIUU nsǵGt5$<2X?_vF^lkٓy@̅CX~sFڊitB۔)=x;?E."T8Ct3;.OHs}lSRG< [HGlJFDAm)uczد' $o1Y~9p-gUu/"GZRNW>H'p{8>ux@r_a5r 4r-1)1l}RG #|'-3j ȗiU:ڠxw # H5CZiYgiN.+5\Fz6gsZ潧9@u3+pK(eXbO`P'ZhI[ՠIΉTDE}FbuURN VɳU\W+N<@+bCMgsygǩV[=_J.t-u3h!:3JJcWчSQ: vrU1;?(@V;X.xUC4lR!ik c2Gjn~b$ qDЕjI5h;xp7piDf(Mb(pY ;/\ҭ{l` 3֖dsw[oQ*7D;te.4B4R3B<,z=hlMzItK`_Y0p?5DBv.'Æ+ ìc' [+m\oMӭIm_Ѵ!'Ȭ4^ _Z 2Ŋkf>N5N*!|'O ,d3yq8A"^%M1|oe%ghy9>hKærVlpoKG%&[=7MG шCUWI48=TB o kIc ejQ tB;m ;g$0c6(>7z:HW B7TF-H Xcy)^<ݤ2ZOI'P_&cϝx~ ṽ N+C fYyQ3SJ(^OL k*Z=!AA ƹv/+v"]qqR '5LuUts2Lr|qǵ=1؆ȚpWNijt 0T/תw>D&@ ='|]S51nQ!%"pnyY'*BѾMz5D`K`W " c"JMa~ydhk"HgA=S^uWi /i1Iم(LCЂsJ`eV}- .?^VsV yl^͐i->Gf$L#3gGtiNGp|$\CSA+Hx)%!8YmBŗS$3C0:9 ]:Rߧ+T3taߖh LE$(Žfl?lcgagi2wϽ~: !H18+OhEKߢ#ÊݩûړܧJؿt %mqR55r( FMw g $ }S1:/6=5A~~ΙbYRJ>a=fxB *xpRP*8M{b+26 cfPuz {ծE'`XvdN$Imbupy EҵU֫-3BeqAT3}(ٳ;@ tK4F@dvHTǿع}AyPergZr}@z[,KlQA0<(pX695w1~CmvA+\aޞUo{4TzR䗕2H&kަ) ;W uE BKe448az}ĦL"dQ-_Zr@W[=C):pE"keӘ4=kMz(dMc2%IboN 3ia[svZEKƕ:"] w[V_CpPx.1%pVt_s9B>}?>TŘhLh3ֽc6sh4@;O (~Er!a9P3m0Ԅ`N "%0 .P8ܖ֦pdSi޳MJ]q^Bgʣc빜v8t :|$5paUj@Tޛ%,ٚU$HI.jFB.9o:Lϡں./ŨT*_a6iV#Pgeo&n^K pH$wHmM-~>Pҵ=m.n/ܚ1)>c0>!p~7Β y^gr#4DuZ/::m~5\xZR>t +}N s WrV 3s78W|)m[eӠ2 ?#I ]:sqz%о+*nc9;m0ڔ͊&zK"TU$݋_ÑsW\A4ҲB*PlS}rv9*3n P;8i!F=No+.n8"lzWfD8`_5Q?m\}&C' A Y.cuMK>NgT fV` }嘁53;ӽ4ݻqS0jt u8!TRoaxn)XQIcrb:MYdh2rb ni@7 E3qUIUr9R^_ Y!W=|*B7Ǟ=bf4< u8300&JDѺ/Go~zL 8v*ݲt~+skj v_t;icX_aA d z'7tEfra1M:g3~m5NAڻeu EErfH}vNRpkk`UUt±TIu82 {L)n =nj ]!\+/ %SAUK$^0+ubj$Gݶ\c7hmcKeo0(Xzm 4ɷTpXp{6QqX-O)ҧg+SsRLmi8|_ۛ+8W1d(0Ų^v^<v]|gCe{߁tt;&zg?y嫋(c=pd\bqE~?;[K-PqaSaZ_f5Du-v6 *+kzXq:mF\_Mah{lQeb>ԲolMwQ3NIljnY m77AJ#8-޹C[t7y8>-Q ILuqz ̶ v %$(&56٨w()iX*fU/$z;8}9'kX^RV0o}XSNv]l|S<3]5y%3@;PӷP;N/\X+H*#Xf)sP%LeM;>fܔ;X ~ڰaQv2okӍ|pʼR sٰ(LEp-3'N{ʙKEq }X-Yu#韰 p)z<)cbd *ǫzE$ !-uI}vCPxe @P&UX)<@ņӲP5f wMoM< vٜ*XFQ3\L4'EeKLwaDԺ-]<2@PJeT?Q]K) iFL+3NKi`S\mذs B3фt0 ?UɷJB Y4;o$ c4"m-4G%{*p<#7hE}:@<%h|^=oX~B /vh%QSؘGv&h-mCB'XM‰(85flS#VλvW;3$ DŰB@N"x8O!%8QL\p1ApȻA(?WL{cm=Õki27{vVt:s:ZucqtfH{=j!ɚN߉UϪ|Ry{%rܬPMՄ"̃SXo0{h&V򓰯a?Ď^ߦ{M8w ]p9qQp];~:t|yFC5n M.QtgV[H7#N(aIz[ pzy 3:@Yu^d{ i˿n]'# P)7|?i9W7q?<cPɊڶZՕ<䧒34i+TD`lد5ӕgf?$MRju ս{Z_+G#JJS񀮈jĬD/FBq w-)a ~߽3Sl0˗`xʨ|2qLo1AҾ =@WWXRqܹQ]:1#%-]Ӻ8XUA9P̠@0;CY-`3KCϬ\KKxwm06L 2Z/=b_(3bWFi+% o@}-3Ŷr\)FCuFZM~GΘga-l.("HUX;;>jSF8Gyd*Fk{–|p24&A J"H6ԹbZJډVu3Hhau޷9RqLt0̐l\ztW7ZFnS@rGY'a@ҿq`]A&[ݽ,@ܽyp9]tjcV,☙$^#iiAr*LʖgfĚEZ Vuo1BA5qgtqj^D_C;B?-yucElB4!d7Um k%\ea|6,Y^ZPwOa>YH䬼wѯ*Y*)W+&q&6%]7XS 6fYoK:{峄'‘XYY"ĉ|h  TceNJn8K`݃1\+.dN(lHvlutI%6r[3Q `/ uu[ڸ^IFJeEM=x)CRBT$eXXTD+BYxOCU qeSJB"RP(xW TxԪ:Ԅ|]v)e@J2E0zu{+b/csňnS{Tr.|HTC ÿIŕ~0EK/RQRGqoTMTZ&yqξ'ܙ-.׾BLs(R1_;l01Vso_1P5V2p\EjUH(rւyV챿wuD9b*ՙ̬{K.+xϳGoZ &YIa2>sV(us-kpRulEC!p/_﹓䗣ҭewR6`w*=]$=`fq$wo[x{"=CgrD;/lE5pY}Ne{!;%NG2`;&g{yO\Wq ].f<o4 q~8:y![[ZM]2 C .(Xlܑtճ7YMǠ8z7)lXVI7YV$ L\'y&[+s4L&YշG Z@qs7딅3mtԺsꌲ&0djZ&ZlLv2+loQ;5ď';CCqm"T9aю#?݊ߊ\ $c%.tY&<*N"dF Q^q鶒EG)g4Hְ5jޞAV֠_gJUJ(l˫[&Jct:5X"$BᄃAI(k_3RD]Zv5 ( {T"8On`N\#5ZT g6pǛ6Ϋܩpoe5|\&LW'2inp70EeyqM^fw{K'2,h~~=G 8b$0Mɞ^?"ё @1R7FaԃḾ=LXM}vvtɴ  bq9W#,;i;)PPH~XpH:(]_!*b0VQ.K.ʩ) ik{n^aD=$IANJSx=# M;67kDnKqњ eccXvd1:5r'>s rbNo*>>TCtsOKBZ-C+a- جbV+Y ͢PtR , ˍ)1Omap)1|LP,?Yunu*y[\񱣲,(03HlGVz4wkn@cb碑[?%cJU}/jaq#8C]6R Hu)ݨj-Xa@yƘe1\o FOyuKehs!IMںᨩiս #z D f,"}\DsrMX`/MB&!h[$CWPTy$xVɬixr^b㭗QcX`vubMp _{\F|:=n:v1=j-O>1rdfID+ZFmSb";WMHe2I"y ;!|ǽ'OQrSTn|M-2Ǎe:ߋ>bM&,"Qӝ΅ }ZvZ[/eo6z|0wG=zA "v'k+swpH+V΂vQ,`,5&rjfu$Vx%eZL ߗ19m!EݎECqVgDA щ^QJf8ԾfR1T?_?Sl!t闃\4}9"(VaΟq('&*X#3m ,硿Sχ(P |'$3+&7'%;W[ V+PQY!CڦW=^s؜TT3PeCWakj ~Q1j!*WPP#;?Y͏2[F`_ЕEiƽ,fٓ1KUs݋L%b,rGۛ vb #f6G`̶Zܥa"b^qD)(qf:jodO09欴ẕM&'">SΉꦆ b{gqoHz~PnвHTF-sz%"RGtT`3!7CU-jTŠVjk8G޽dǔNmۓ%C ˶%C.lg@#Zq4@P`pz1^` O8$؂{NŝyH8~;yK %I9reijԸ$YfS 1l Y%Fѹ3BkoҶ*Uv"7zw`>$-n9hDgjF lkW !`jP_u \Zgal2]"gb m6$=^F{&(0wVFfd䭟3Ja8ezWK .rzhJ؏l%z."E4l3Әf*vx `M⴩"8,23 !6Y- f\ފwFkeS2nt)b. Y/+55e5~]Z[~nGpXzw' VZTm]du3潟9Ys@8m0#;ܢ'ex{ O7@YR[C⠝πaòo@,Qiw}5. pGxXT*wJnDluR5Z/8ىi7U-_Zf#{e3e&|fJ;@rn#є}^ lz&bkSw崅;۷ 1u`.{Bl 6;b9|&u7ch?3L/4Fz.#{R>J&_|;ҪX'{E.O[OzB!y68CD3(0إCQM=`%0T_C[R4l(O9wLH@1W+:_BGk24 ݜH!~YYP'J~!w-ֺ*zN> (O:W%Yc ]eobZJz V4\,Y4o] [C%3.DmdI:w2j>=3Guǽ*~KcWwl3CXeewKD}wb/f~%`p~} пQe!:+9vj=,.!UON(0s^^g>_l׋$ DF> Ϸ|byas 2tS9o׊!\YR)s@…K,U6~T2NwN=0Jɋ@vW;h7fx[5 88S(]c6Yc|VDsB@"9)h&ki2Ω@~<^d?'Bs I}3` t[m9=B9 tnn&DH4QkDg| >Ƀ9ܮg靶ŭ.8 EbIpLn]l#rgS^dĠ¼wL+0)vvq z>!\ci]\A,aOi:f]PT;9ZT1Y^xcVg0 +9$tNt:RQӪz<[d6B(_I| %Kh9plӗqETɿX'6M MB|<xw])y5,'oFpZc[P_o PMlwۤ`.w=bM+`<&l15(^ь.mΧTzCt.FMJd&u?DmIT%D'[܇:OmZR Q.E ` 3 W{4@9_+0C\W|Vk Gqh {2ʬI`e!s*s.sεd&S=uqճU: M1!*v!O͕ymP(Y#W=o=ƳB,\Qpi 7EHF5I,% {3^ʓ5LUb8KW02KG0`T!yW#>CFv{}m(z 1餆rlmR@'pᖘv At}pHlUbkCi>U:Er-l;)hM_s?3'X DZ ǎJZ6/byATI^'Db(ʗxu7a;@:G=ϽBE@9YlpPPWY64Ø}Hk`uFafELT\ }p&2䠔{`Áwj,!>`_0Qhbi<=~U ۝kKis'74a| >#"%ao5{lk5Iʱ0@ܑ#7s8EPmButv( ]4(`PEvZ2y?_[i'!2 2iXtrs3dMHYaxgX81lHĂdXNJ079&1M`o.ȃX5MZW 5qotL迮7iC"gHp龕ou8r薶I[?'i7]*zrTL0{t`ŞSIt{2#]39981r8 lM!dM`tVR2?Ca1<8?&FIelfa8W'qt hHO)T,t\L W$rY3_.P%;R|]Hv 69"&K 'F->?/%?$m mk.1qF)F_/}{Ko9Ã> ~^ĥuZ]QݕJ,-$NBo (0ë0KBpo,͝j8S5Atj)əVRϪ{+~veq&r{󧾠ɷ摳p,E΍' 8¢r o%L*0cleXAX#)r YL=njTlw;uMb.FsZ3M7דA+a꽕CnU6*;AKdAd*c Wؗ›箟;jL@=(*3?`$"8.'O|řD$ץ+fTEk,?}"G4aØ]W$BYSK%+7I;o~'VgANGE:؊I O{יE]x C;2P!B%` %3QDnu&ep\Bbvr.HR/+mxڌ5F" mA"Y[گ֥Q>Rp>P_R+5yݸ6FpU~ " mu eοAMFC?r7wҶU<=L a(\ FNaq6C%-Y!Oh?p*.ky^~)dE!>ޟ  7sD7bm0qi-w;ț}o2PBܼT3*]~ʈeYiHsGc=d ܔimݗT&~P?͗(3aVr0;zU}%RK: -cT޹4>ʬp6 ]Zn&H|.9oN±cdȟ)`{io"w<#-dA<4X*q*WZC%wo;"Mޖł"{K_ɚU/c !筧/קbR'Y//W<FO0ީQŸh@Ybo 鐂롑O r&0GgYpÊo H-vO^ywT(B&@,i+U*2OY „p-._.1!ȾFA\$JmeN>Ze=L޺^r>Ӻ۞> @츥MS [L,_ URW DGrzq $9IdUXa nrg0vteVo%b.[(>5oH K!v=, y7c bّy=ݲ{ttrk6GIfj[_[Zs*f.4 "uy qF.8& rc,_roWd"ǔ:zaQlt.c4qCelnÂ^b1F]Tl-;p -3;gL*'0FfܬG nT{Y2`HP^Hm5&˨#0CBOi0@,\ YnXXH9jޤ"&M#sJUh罿:Ӈ(@QKT jǎ:(V&F:=|}UGkoh50.5WIn,ٍqY#]0h|H5HZfWx̌)`ݭ*7l;IKunuMwY'oTBUspr1,x)0ׯ{]ƖƊ4PHrq]7*%:|ATVjW?xk/{J~3ѽ zM iJUE ?:bSgحt*3mq6jpJjIHſ@P MЃ'e-%V'j"5Sz2*P1C^\NN"}} T6eDdm<@ 00Z>Or(EO}i3^4v]"r(O&:´:%T@#iU~9߻r3d׬һ+Q +=-9䔶nW? u n*ubA w7 d" oJڍdK i~1fr٩}5ܒ!{0ݫһ^G*K៴8DVo'M#Ð+=`A^"Z.oHrfE:sԙNSI6<2HHAb2\ cxV}f!j/es;R-Ǿ+½$n 9A{] }q)أ.RKC;=nus[KX q-DFjNp.+UЍk'2w:Cq}Qᛛ`t'_<2WV k$pkM &`ȍZFzRc2}Cn^1DðG2U])@N"HZC s+-І~5"va"{fq/g]rF+xc' 53>WA~;܁+K8\EmQ;q*,iPHmk)cQ{/㢡UA,@៶V<##SV+iVPs+S;.VTb'DH+ݖݺ!=ġuty$8lCQp;S8>S09'Hp+O35X-4ٴ8+_ײeJt(EtȦ;2fMrO?nO黕'ׄ3g*>a)gmgA1A>=L Ԅ4KcQSsihPe2'=U8)hvɶxqI0s H jLTl]WKǖ}q^c1N݈G㳺mf4֫D!6ξpPzr#N Zl}Z#7 2$T(k2zDa3z) >[FtxWTdz1 ^0?䑓Z:xm9+(*D8kԃ`ݡ=\<i1 # 3kvħ'L[?j,&&i=cƊFP{)dTڕ#y"r&&ƒ(k:u *6cI{' 9?!!+cD Y؇g1)tWBk|J[^}n]7o1颙葡9ۂo 234G6Qq(9}'ft;|11hhc@iwa"GCOWx…Hw2vULCniaOY/ ]SGKaYN_AL L@σJ^EJIׁWjD_rFZ)!ڲ75)U  K#5ju)?1e pi)_~UKW}ըyQ{t*&8gbROWQ$Y>}ލ<7i8iCsJz9'y !C: ;x[ͱ+tIZ8H@Nۢ"mK.Ӵ念"жSsA\R!M#Jk 0dJj쟳P4-c$pi2)`OvM(peofMlVpvO?@#첩r*ifY/gg$䃖1A46Yx_:`@<4iv9>h%ڐpBMn~60,ou`}Ɇ CKW^)`I`DUX%`ƚxC?6M@RVHtwJ/=s8Q^&W/ϹU\Z]8;e!_E d }ANB<N=c2x4MKEޅ70 JDKh淰G"Sx#. /c{X.}v#`Kx%"Pw?!48bx臒FpN,tʲrO/;O.4 YY^ y!i1WhuT9}Ao=bgY@u2A5XծfjQWǴnsUX9C n*7CV3xVx3K'L9) d껸ٜ>Ʒ$BW^0%>ӈKcBȰlܚ薏ZO0[u yBp|դLy :'Bȅ Ɵ8eR_Ou:*y9$3J5uЬc?R1@ժڼ*zNjxFk 1[ϊGG<1qCF:ݴ⃮'8ո<}| n>>y:aS0egϥ;\5iw zr-}"+$O'xxP<#MkW`BC$~0ܡ/!I(ݪ+&h̕-NN2Ls뽷^UMlm\.9aef?G4S8Ae8ڣR0vb-1N-8 _ ;+%c'>hURB#}ɑKش-l@VKPED6:DЧP 5@'au o䍸.q*l, bPv T4g*`E |1Vǐ5_{~9=)*$?0 J\E X=\Mz3LN^i0#4銹‘x /`S1GM7bfrw.J' \)'֑4 הʈ/EvD?" UҚkfz>}!',ƒ{cOY5:kdkG:&2Z_C9t&.3;{%ח#B(~$%f:v)DZlv~MW%&oY=QTǢ2D<''R2nK&pfv 誵8u}姢nf%PCN@tKxBm,3 e~H]Cty|CuH iL P ܌M(0۩A%HFdö{ Rg"Rl~MR?/ytQ17['@pLcklܿ_jm]jDlNՌCF\뉶Uj5"}O. @S#4gRFҦ:CIU0r8^gƾ;G9 $H y$.^ESm S skU"5s3v=q㟵'`c_i\Δe0a;Qn2KPNưȔZMO: Xb8"ݹ;Hؿ|xi"5, ~GLVZ!*Py)8\qi  uio4^ k ,E "!.dm˘˺}>.?= 7>ـI+BiY5CAZʁ‚=B:)Đ(1pE/Le02J!]{ jN}gfdѴ[lʅEH^.zM9c%gafC֎l;q5O`6uƝz%EG.8lEOp_rں>Y2:߄@yHhʠz%Z2xZa ȝ9d̴bum=Tuu"\0!oby1,1|z]ϓ:X]3:Q4l߼_8'}@Vk`^sr~~U[Tk`KldWcqiea' e*КJǞc q8卸S$OYr _ B{Տ4uV]F}3OJڽݝS%u._d}4SIi7PJ\m0 fE\^8TDCZnS[)A0-МU49&f:i<x#:8f=7dOB`(>Bp ާ!yDZہ-j0ݕ|6K ;I+&^HOD`jj&I՝S2WB(EE =bkX|Dž3Ey>՛b|YdC 2O.iA@n{uT=Ah,螋Ʉ@>,]h&|(0E͉g#5Hac݉ 0V^ibU2V? ]X5%<0L&S_K ؁g( [\UN%<$U{"".]MJ->kzE{d%?sl(չͻ7+e+R]L#ټ2FI@PvGa1Ytxwlhd0z\C)gw㷢((wi Nk4ZsD 4g\tH6D:+p*7ƺ"{@rqU'f zlLG&*5''@R6am&*F&CՉE7NQ 3=4# \~ݔِdP."m"WB~"IޅAv82SӪ+% dtJj(w[(iNP~g+߯?e({X&0moB<t {^Z9t &$xgBDm\dr6 ]3!JYdR:v{Љ$q2: Eݹ֘ Su bgSj|?Xv|~#DWOJ?ZuQWP8)M j}r7LUO 9zToR8%FԪWXI/.xE(Mx X e=W1t_lCr-~f$P*qlȨ GX8ք#kR`|MR!UVr<{Ks)8O}۔.qdp'r='8m+#sT0f rs*Vbuhe9ɾ*/7 98R_?%'{6E+P.ߺ9 f>Qqa ~kG<:Rٖр*z\OkQwZpi5 \6ứȢ]lzGV=3-2=W:uU}u/[/ lg{)ĮڤNWyc_|%rvXi=HQ~>+oXQaȥfEئEjK4'I5I5FRv~i/K_QڐQlTZB4u {A2[+S&~SQH Ӛ|ӔAsLA\wihIa\kslЭPIwEBOnqB|Rx3DPެr;[_,V|cLJIn*~6$9l~ZiEt͕yhFU$ti筄1u'Z^%5ALw3J ssM -xA'+v{Z@"Sil~[lf!`ݝ~l7uEzAjN2Q @BM y50 5dpR^D-(/[y+m\Rb"rye"kZ_4=L7Y.[ӑ=ꟼ ':" E G f2 ٧Ktv/i'7yS>FKjCyYN׽LJCۧnXhn?\ @ˢg\/7žZ2IQ 7 +wU+u'KR݌1{0?7^B5BC. DOl}1O'Z|.Dai,8bz- ׉RTS{f2VR>d:PU/6dpU| R ^ρKiuT(oB)i#=%]km$7$7{ϏAhˎ$#F"Wx9hZg.1$K#p  chSތiS IջSzZ\Y2X} 3SoӅ|Tj>{3qp3X.0m +DOzƕ!ܑ4l cOa?t=C]LNM> ƺ3Ss{in,a:ݔYQFl҉|wfYSZub>8t]|Uf R6]wwǂfmSh+p @=ݦW"U6mF RPΣZjUNGL :P%yx! nPj"٧`Ryq{E.,/a~3!q|F_oQ_(ctf7N5|Mx2"1zOC0X:•+-,;{W\dd/ТQ~I4u ư'gͽ@'?+/6`zbC?׆m<Tsyusa/*C54:CA$ qt/Vq9[xeqd ž_|xX xftj9q́"LFq:4x7}鿃w7ZxJhz3TEb=$5b̢ AM$mʺBv;TgMǁBz%õ1g߮P2}%hT毩Eg 29_QP)=1\5ww',A`:sָ ;ONS$Lc.IYH .O%\fy&>xy멮q rf!+R?h?7 '`y Gr(-<)%IȧD5 kp,YNnwjk{[١k2 ,;`?i-7YOZ$Ų$;Ţ+WarnF, )IN$[iZ*sז܄"Җ̌:Nz5ʒ:X1zvy6iiHф{XHZK@fqL"j٩mO#SlJ^5s!Fn| 4"I#CU:X4?Iȍ͍ 4;ՋI4.x~:X%( 2ҍ&ef{#.jZvhטj0Bsʿ%wbzio^!W_S v&Pg@.;hEPt6/W*L,m~Z>.7߃Or 8$ICJ@_eߒkCѥ!.NEr](,S:wDuX^糁пxVĽ)I24"lj=km}Bm{fm,z}qmpӧN /UIn؇֘~^Πqc-%gpKCD{<%ANrЁTW"7lŻJ)C:?;7w|tX[]#Xx o؁@NK‰Vd'xZas֟fpu0:zOF29Jԕ>12H_NJ34jNh2v^ `|4M1ch䳗.Z7VcEJI:SN&Z^*% 첶R$ĥ(9hAL|ɒ`0d V>w3t1 L@|ACze1냪Tڂ$PR l%rN/4܋2--`Uw8CMw >KтNX &\3g8+Ț+P1jp2r#tG 'LË[;‹i:hǑfn"Sۂ`(Km.gmܕ#JU%']v GRbc/p ʐdaԵC$iNa)V3$(>YAwPcͨ~sI"0Gv ]d3[߰ Q֫{t@õK JOQs(Tsomfbh '( K?P_;|M;G(34 'R2Al :/Ojl]K IbHёAy2F tf4kF>nn`ẒrJaOQ~7{EBQ%C<]d;='FoT"L׋( 2:Wkƨ7?1v๭P12}ɓE%nj3i̓Ȗqa55-?AJѝmGg2? oPZJ]ІvIl"+x}p.(m!tY.L}:=DZ QV}k'JR.a$m x{#֞= ˜FYTEVHWhJ箏Zn!*?{6U7Z-FB|qpT2!w~I y체Pt ͛T8*-W 9-O:꫉$84бVPLӒ'VvZ*Ÿ )Vs ' qGg'~/HC;\J:ft+D^XByI쁡vSk aOI`dg iZk }2&j: F+_2/YNt3fkW M=w6L,eF7~*Ŭ1_ j֧KWK% N7&9#D̸^0M 0geUg=ON9,RAtxo@F٢Rʾ)^^j)Uͫ W+}F\#]`Z2Y&WUJs|7`,j5=tdevFٟ`1#fu-AZtrG.]1lo3A]K#CStq\ٯI4}|Np@6_Jqlht{ ՄpA/:i'ȹe^Z1˛(1tԇ2C%'۷2ȁ-5F-PU1-=ĘN2[m 5wVD^|<-gl;whO[ګ# 0d'(DoL ?u /6_"9i89~C~$%o` ft>\v :w`0~alY?CM7 #`o9-0G=BC1-@G Xb^U0l#0:kɰ!(~ک]"DK~"ET'sI%BSC}!e*W A}f3x&hfJ}fNVԐhs.>A (Pђ7mP(G5 ӋpAtK=J曏nsTU9.­لh|׶4(~G~A2>#Fm;SwUQȶ [;,jw|y H<)~_8Tf1ncwtʈ/\R@e_CjϨe6 l<'kYKr03IBebe:C6p@ecRXзRA<ZJ1Y%< wz3~sSvU ߱ ID6ee+$WoŤgLTgO)0yicBP ڎ^S=A9o1v 0uzBm]R;>C֟K>\ H-)n ـzڇ\@eq O+l2izlubTrOhkqٕIB2y943֏MfMchB AB!l@` G-us9E}X7;}g uqo.d˖q)0A=z7_'#9oU說6&#7>M:!d9I#W }*̯'Mf0R#= reC4N~UwR74l똜9%JK{b 6<4wUTʗ/&sm.?==_@_0&!\-&71?s6ycSANJۥ!s${v1Wi Z.vOI-Z+u Hr 8P 壠H>pX >{ S٪o- oIe_Fuw d]wA5E%<"nY"pbUR :dၗSvD(滮~@H:&ެ#HR|!?ܝb?5Nښ3m[mӪC'5}Uw`L>ykN[B Y/66m Yiۥ_p:`m{Ş B+@"NהIF!v$f/a]y{hf&O # K'(uIeUE¡\&5e6gK$o Ȯ俺S~ÈsSo$I<3A3.f!OhL458 Ӎf7_eE<f_A:?+4s"2[)#?5׽|'68 S7^@WAOgjB¤ʐdpT2ƲzyP>R h^?wC-ӑ.Тmz8֐aǴvlxdaz9m?Ƕ'M$nI*(^!eFЯӿ;hm=.R*)YF&Q8u >(^!ңr~M)Y@Br$ErR/\GR7y2Il΂q4 MUڶ2u An]Qvm̍K${ fh[>&P *՞@ ۝8x \uWD_ T@ rT*Wb4.Ro{wbT-M¶Lus_$Qz(:!یGs~`1lVOO&Fkwå4 'mAm\cUaㇺpjWxiT6aLє"FN@͊}w9(m_w/q dXM0_NlE'ϧz)t/"A}.Ȕ8U9ffF͂0̯JX8#8V,iwl5QHq6 d %P0ߞ.lm'0nwUWa^W~2[บ'?I?uW%cIzOűe^[3eT5}cզ鏠%[ɚ--+4]w.F=CNUhw+1*!eߗ;5Mݬ^CCڑkx_bS|oOju~e6izn|W=97ֶ>SD|dSKOHTs8l"գY'[dmp硷8QOeR3,~ksQ=@m_bYʨQ(P}dHkt?H}sZ@s zҁxȡg\ydN /o0P.&:,v$@C1*Ֆ&ynyߜ(]0aпQ)Yϣ wʻk'rMxE -"a;B<局w5 s?3A)aiHr%f"]Vv";2Ͷ<=2La^|| ᖃKRkWXAG&Ez'WE(,48'㩴tƾ !* b}7<1k&_5k2TOi"*֑Zk߲WqC9𔢙dUvJOJe E\ CnG?rXiʡ(W5Y!󳵀Jj."Z Xڭuh5fVp:'1|-BcA2'N/ k;llɔu(IAҠ>(0z ABU$:3h>Yu^K+zPtA-!6;@;|\U49Dy풁k 5;+XKB/Z(^rqB%iV0^Y" (DΑ}$d%EW1~ W6Cr#m'dd$~RY 4r3۟fd/Q#OegB~yw(̋JkA R9{qq=sx1!\yCp}Qxӭ2˫foҗO::pޜ1 L\V$kH?+Oqjyw98-RKx!"!ͮ rQ”5vR۾ϧZepNWOI-Lb8"49iGF U#EN:+`$ZG#(*Q_lbY+Pou:NzIӀ^s0B)&'aXdŗ4c.I}O6y6!;3CGfU#e|nN#/$j)c8 h)[!2QЊ&kG6yᝧ`Rٜ|Wt:h XH%8Xot+%kW.a'l">]$5.ؓ4=&J|~![463gG^!Ǵy5\I-@Uk.ZuorA< e`{veF*{Fnspcu D[EՆ'#LA>r_:7ˌg4awпME6*բgb2" _F\K] 6O; f@HZwԻyJ2{U pu{p򲫆 NW}mC Bʞ!yP|߁jmu2Px9sn']3fnV"!>JD{VMQZ5jtf `xK_bۦc'YȧhqJT]ʋtVdìkD=8AAl676DlAS$LVWg )GS׶R$r-/DU4@s_WN]?z`{SR|I=#_d?ocÆ(D zD01I\3@0Ou/LERmkx+Q嗞^=oT+-j%%JAcH~eLj0?x>* m8}le»rV-YA1{anQAz]{IP-=-A\zAX蕳HHsmJq^j׼U|^Ȫ1D"Kn`b\C}KlCA25KXoP^Q,tXTFȺ Cvpւ;MƝP ×4)z=e0VO*W ͷMFaqri"rLkmbzh$Rq9>OAujCGGJDk 6Lf֤3Met#aGNSM7j C K57= J> *Na"WS&{2|F۹93KCL+谿T^jԻ Di&@-,>Xv>+cglv^6Fբh>c&W@)HCU IË(ױ_}2x6C?ddc8 3 8`zqݍPgM/z,>bhjYamFVg4h.nz6#=QuGΠI < ta5&vK'zX>PDEky>l]{2An#MZ1NF7r!+E^\H{otrX2%>A2sL`%OQ+`ÿl'Iw3(HdȀ.]yk79CMK,LC A?NjTErw 'o~$Fh}-JnUSkz0ˤ)kL hv8NcT9#SQ9itK(PJ.70M$/wئ8r?! G ڸc.`/xjvQc5CL_Ġ, M'CpM¦3 U;VOz&OAN˗;!-FL _'ZT3'"2V&\Zɵՠ cwI>~rR~RԱ #?E:C\焖FUQMq=&l¸ ScJe Ryһ|;>-INQm)TpU{4ſ‡ވrx&Um]B2jD i)unlsTU.I;]up#ڤ4$p&,# ''`)xn"y-ٮ5}/cHEU~)Snvd+ }Hr((@9 L5\PgHƭ4/0~LPApf<`2-ڇkO1Qd·iIC6 ^@~,[w#Y *X B#tI.I?활7gDq^ͪf&p7~TIMݛX&=OÆe[P%I)dP@tbr%XKJeWW#Y8s~e#}"Z7^lLϷE{ 8ŢqeFnN=jَQ Iro@,ј8Y ؔfLƛ%SO"M}\DP \9m\:?:yLlNH[N( RO+C}i0Q"j4͠vC їHPO> )5X f(Vck){Why3(OZ+mv];$V笶h+_ib72:f xdZ$x葉%w%vuoy]`2;DOz|_@ oFi܇_B>KDj8$7%^ gr/;C.p ]B_u?_VW؂5z|%JZ+#.X ~bGa v ~uj8(rOӣ'`h>]9& ߸`O/`ě> {l n{|T+7wt? SqO#[_>6g8GPZ,aPӽ[E .(}G^wVm|淨*}6Ѻ7ID17q8TZ{i9c=&Qc)GI\a[{OXo>2`:7՞+QTn-Y^#32Kda*j{&k$Q؅{}~LSBS9Ŝ#2b'[ 5ζ #0afaݼUjJ}װN#+0 ,0dIDnYB_qu?vGQCu;Oӕż_zH[wkUM=1TWܬN%~pT3UחDQںfOrz3Q%8 n:ԑjI[ .WU6d_Ob[P}AnzǗn;FŇ߰u_튻d%ǒ)]&]jZˊqx8O,ѻp]`q֫r,7_D&]w-q@/^ݳj9I@浗b[xx(ZYǂGY#uF:f[x i+Fd?ZȫO1 Ndy)A)0Ja|P . )#:EWPOD"$D:[ Qщ/QϤfA|ŖZ $VQL lTLHIl^c;eT/#э,VGS B }2(F5UUے-k]XzY{" 8~+ےK=էM&EfFY--M>0nTv?9CP*σ!d/{1܍m$ZBAQA[7l*d._mWt-1G) å+ziGA+6L$HA/>Z[YDc;Ѻ%f/qr6-9 DkIbPcAչS9P}y.FM/&cYl_n 176ߣ;Khp/]ZƗ0ڍK {y)::wmgTZ5(Wqd#njDq^BY>K ;#k|wndM+3opgPlσ^6[*)fP/hC56U 䤎~Mj=DWyMi"vXo#wH +JYP* *yxph8XBu@av> OX FSݺL?8!lj,1Ml<4x/SqHyM`(ج'|R[ Q;;h3̽~bkH'T|-!#vBPt)|EB=|# _SkbtPaа-xPfh[Y0΀nⰪ G@?,`=~"ؓK)ƏRJk7xvKӿwK5JT\йZ ʦ-l11n 5,: OnI`)~+:ٿTi) h؃d;fLHNWz4#@!xff^w1I&}-Y*,԰fGPZs7#g(%f5ȐSz]'לA==@ Prsp T(BJ~nA>~ȂʢS"k@wu ZIH:huNvz7(?_zi%o vzlоXCGJc_"E*\_A '/wm2 YWD:!R8Z1} ͪ" fWlePe=JlR@j Y&Qh1ekPHVa@R+9iya: ԓON)P1ySRH]u>g߳r}@E;u۸%:=˫ Wo|wFDLs*ψɀma*U_z@~?u/-ߺ5|.'Ng'!&2Nt9T,VE![}!U⯕"p(xx}kkeqON;%P̀R0ʂOWe (uRV FVIB ]8.dLjyp$Uճ68L:i޶kR1B`Z"C .$J8o~OhJuU&#r#tgMXZ팗˰^bug }qX'Q叽/Цse+Y;ZЭǁX?Y v{ʢ,)# ~4x3e,4%!YQآv6K 9\/E+L/hwc-16E mOk{+^9Սld]U8NN_tZpw1=A˫0>4oU<&!\M#k)ktw1=;bН,ە<-~ez3j]$ۙk,@kP:oVwZj3; rTB`ʤa"ށ TWzWs~⛧Mxv 4@N$, D^OxLBp)0\Vr?h$`&,kL"دDͥ\%йi~PϞ3jl%xZ>xѡN"l&w-Q}i,{>Smj+a̿əԆS훋)H<ٽQ2rSgo}&irwhs`en*0<(9\r`\acwD}.뜏, ɛU֮ ̯xs8ZM!Wd gGf jit@Q )kc6 *<}V'/=.U9!nmc@yKrȒr?'T)>+ݵ!y_/qupKW`X<"[Xf?7tnZ_ʉ{Ϛa+J@W~,aKh&yHH$;cl&Z>CCI,ah_<Ѽ"`I-O+0_D4TzDLv$lVPGirs5["#--|.asD29tpVbladɰ ڙZ$ wː#Jhr 93 ʦBVf2G-2տ\;{L(2-K3oʯVY"܄- rq[֍0:C4.E8< ^d4ND8P 6 n \ 9N|;NVomwDe].rFp\P `W% @u*@>7C<7a䌛_%ߝb5-swB8,O|U>֩FTf:06P39V^°WhIv'CynUS[ӤVm)xb톭]|sߔL;ȴ9.+\]Y6oU/As U|G0#lة EU~p^2@caHTGpVh  G5jɼ{t0Ly}`ؑW>4 Zdu*-v6"wj+GoqxI q&* Gze¦FfE}8eܮ,48_SxGO ʵ-㳣0BkM不XKG 6$Z N\֮n"jމgEHYM-9>dFR{)Ʉ̒V41)e BoY4yPuerrl,~~1l;X%B-()j/ttxU?Wih=Cx2QkF N<'節dFKO`X2h"B;uq%{N|b*ĺ15Il"W[X4 `"n=:D.?'\'xW&~J_Pm0"P$-ihW*u$ĨŠrX\CyGdl_XɊ1(o7^#Ddh,B tzۛUGr5R^HXHԏi7+Aυħu``~s᳠zcsI^Oo)Pt~yJdSCoq"D~PcեI\TN&Kb24@b4U{* ,;iz0hdkIe5oS]GJ)S #-tп %bf"d;[ rp횟.$/ޙ4 4KIqnq7jBYL(#_khη^s `PSZ/Mz< zUK*6&Ԯ![)Tw2S R\J /+Lkr"+_ٮ*?}(כyC [~Y pģ~#b Qگg1QW`:c} $_[KU3ŘI AFi`0]핶Z4 BPQb[KzFiۈ}ʦݤkըZ>mx5O%g;o5RyoHEN>=9SyHcVf:^5ɫar0kMkfAS3"['q=|5Aø}̧[jfE9g)!.vM MCd.Z0XLY9RMyrc~7xgx?*B=STLxEJɘ8U@4UkwWdB4Y8A_DQ(^܄-z:Vhd nn ̂T.@ Eo^f?v9e/(>m(l&Ꜽ*&e) [/Mm]]ı4 h؍⠂^3t?ځKy yP SP&,u Vz{OHUC;(o`R <0Ohs倹J&/w[|m A]ݕ&!tW|Q"~:f۟qnvzctbLY]3Ď MA@2t=,65%hi 'E97SqCcPKOmq(Q=I;qk*d@zƻ2qZe6#Ue1+.3^Urqqg71bp?H_Uj6 "\,$ε)FԂ6l`:V܏nsnQeYF\e`f̘B8,}JqEboP?$s%i7svI\\Mn(]eyr){x6i"0C)CHR:]Np̪`j8'T߈`~Wxl^u['`RqEa׈?#ƅBks4@0;R00Ўzȱ 7X'SR5'8tj=ыx8H4$"Md+[2ަ,,VQncBlb \L$g5߭\iImv`Gatc87)Pa>:~/M/ˠ s0pئ3M50qК۠9R{gAvRJ-<[w|F1R>f[ .5tŇM}P+GЌ\@Gz[Qj=#$ahFZ;삧c-{u_EH5Y:tT<؎9Кhk(зQJ5%{+C'˶b` *yߒnz cW 5Sf흷dP4"gi TaZ #%܆q@ (nNsB93Z%1p,ANE {Tht4>Q-sfz]kX:Vojݘ?9wK_Lap\SrBoXU23Ѹ6M@/ܟPLӬ6T´ B. ntnpJGWYL1C} >{i=`ZBNu/2~(ѯoYtoNa4 JXS,(L[y~*N+eH?-J"@~ZƧ"n:`2׳[£#nj P2 !{ll ^2(+!NC60 jcH*EϜ#cbQ4 mkuql3\tUDD_x.;ޙ p)of{K2*qL}*n;ˣ$"]4@Ds/%qcb \5*<ƕZmU囶k<'mU CWZv\Loڢ,K5:.*e tܥ:NdBK+ZOpWAۃ'HP;MU;FtL?<`83BAqPP|K}uv3<47>F+j!v2u2tPOoxA=4Z>CH*v` #hva72bnx,'A@3 |G-!\NLuzGb_NdŽ'4`YL$/NڢM[TR?řbp#:mB8+楪Jo#)\V'-YM!1y_P Ar7Z žܒwĽ%#+qB$ yv5bPFIEOT3 45dGYN|y!Ffٳ4 0U(wN0,a%h;h<hY!WүeL'*/:1]Mmo\:sZ 2\Xo{䩊" fZ>)TTQ n8$gwWVO!RQwj}f1]{ ECPgC۳CCBҳ| hPS6t!NSnƃbjNP>i8* i.WQSBV3BԤ࿦u;1񒚀Z>Q80L'/[O[drԼ.$, ($< zQIm$0-pg85vkԓ4#ǀ-TWJN?wDvÎӘ'3dE/s= kOK'Eq4kRM Ōsvgo(.#ރKC{eU=n\ FHć%ƿXͭH[U Ɉ拰'qc8$9@;-eT?wG~ Cf)q}%uFC!kykY@ VXe,CZ@=- ɡPpNvDV$9*FJr} ~ IBa"Kaz h>gRgҠyߜ밮=WlɦܾjxP\W/2kPRX~ԇkoUeWF>MtGkA2c`ۜ7GCPn~7k)%a ˯}yQYyX5qP-QiƗ-T5\dwݭB (吳]tj+<9TOb70ϷY0zAt -oZVDȗѪL(93pmBE7]ʞR+?La, _zBj "8-SkJV&26.үDWE-0 D&H 16`sXgCvds5K!JJq~XdeBj.LywE//% e(R YR6gF_CC?yYX15b'Qvͽ`~҇+Y%X$ DG ' Pp? :_1 31 Z(`5C  7i0?>"57=BHK$s6M3u* ; r1QL7:L*A-opQE"i)숬oX97`Y>1[lTH[&su˿H]N%Zl0FdD;N=Cs] Fy7 %ye i %zp69BXZ88 -銯k󽥝5Տw2q6'6/ Gn;<[vOYRhTs7 ׵^q?nCy`2$\aL:!,+ Fn0h)1: |=כ[pлS1|Z' e$~hMP2Mi ?Sk&AXJ5nQ"сbPP9ߡDqJk=!bשg~podڔX:Q"Wudž {㻤X)Gqj߆V87ȿr ?<[>CȨ{HI0D3c:U2PV&(tm4qH;TZzC{{F~3oіѮe_?~A4֢tysѿr72{S)*C$ix/D-i\:jdRR1iZAHlaimȃQ( ~~GIc.ܟE6%\E\JP;RkdiDa@L B\'ɹVN@VxCtZEw)3Y'-I˥Ý@eHoRHŦ p:.no:!7iG P;}!?탟 C" ;~.`ljMtY@Q+OpW{"LTzMvfD݉h'o^A}JT5~A;9{?@pIJVHlhv aZ/I2;gɸxE#5 d2b^ rJBNw}!R^lʀ1-wVUbGkO߰&olq{OKY|@) 9)~E(DN1aC̨{.$9| "D!|uR`DdοWRiE2[=%syD}8U6WN7L| ِ7{bbCƨ gq18,:v71YT\SinV?*•ML:}})i8pl!_UTS9Ƃӌ7V=jocJziz]|bv:9Pe3[?|,ׄg CQ/]]N̹,oCCK2ȧBKR}? 2gvi9;EXPNf p4/ `6W Ō\ Wg1I/Кzk8WYF;FIY'l`@EVaM͍#y?8 5~gㄹHCri٩0)1o>BtUfJ"X/t+.oU7雮_(nI 3cu瓐#@/5f"{"׳.b#k},-KkUL?BD[jF1T01?T=pһU`|a4].<)ʬZz%l82#GD!/Stji˿kcT1:Џg{xYflKC^]K:g|qיJГy-rBmГU€/]ML\,EiKim5x}Kg'=$mQdžD26q.r֡rI|1u}k31îֈS];%Ecv$1BFJ 54'dkZqh#ʌB!a[sֹ µ-Q6'f$5e3/=^#NolIߋ:`!gtE`Le{bjB<1W ~cPզHPxlJ%:O aY?́Jn*4e3ڔ"H 0S|o ba{OLក؞+FȂiW{=>{8B1Doy !C/{1{4Ir}G67X5P6%`ubkIQXu~3O̊Av"P!4߰ܺCzqZpn~ou@p[^TsAv^ݵ&͍ǼH=hl_=/rSt?%XIHfWmD'7YytDB#&}hG| 8/>x{ƺ?1&r*sxEYH͟[|Ff8DyZ^#79Öu2,s:PcRO!i _[]{R>3QGXݖl):WMZ0_53@6R?)xwMg!V%,Xqʻ{TМwIbT ƹ>kR>aңwiLG2p8j۪p ]J8kpcjlD:#[*i&Ǯ>WD$N_֘}9hJE`VB} >Ajj>%#{>Nh%)Cxo3#YڡuK ܎Qz^7rA@'A4LL7u8>2@ p[4r;$yI0jKqO9 =owȤ/[#٬>R&[IJ-ܹYIa=bۣ=6R'kN(%F ni Jx&Ćl_e4z٨EsqFSbjꋎv+p@n((LЎM 1g\x˓#{B(\`{6z!?f/Mqs9 PܕEG4,lJwxլ R"yNL{lu^N;;2{bL x%=AEX%bCqZk#i %*9mqB9N R47S.taNPU\m>w'Gdz-i:`Sp |1D 1='qsۇ~4d862Wp&((JvKf keD.fppxYs9RvmivF2#Eqt7A3v0pj8e! ޻P3\ ibNPw~vfA=:yr^h]qqyMA(6,+cYGF_V.o27.j}iʦίBO:xA=ÕmTtFL}cdk@ly=@vZ/@/5 y,nB0DBjr ]PPRhCBϷxOcLM*=0\1`}PzCXskϞ4_㖙P:aZ $Yd,Lycؑ_0nYv%e.̮BX_nB1I(ÅS0Y, ƀ<- إ 2d{*+f QAN)lـƞiBd)i $Y7`lP6odU;( Xlh'1 [wG02<'b$U4\6}+^}6 FgHra%P䛢 K~gJB 1/%%2/9g#8M1F|kqږ(&I $Kz#7K_Zxy6L}1ΩJQff0-,jIE#8@9c\OTnacqvv}Wa1Z&(HifX+]@IBR GJ7s9GCkeBhTE=+3)(2w=oC`@^.h =:YxJ DC }<Gr}Z/樂QNdl =4F\orru/E".N i}ۉ0^?1WAݙOG ڍ$>jH'4 =&4=0R *˞Ezd/ݪ]9:?$ܮ.HqĠ*-td{ \_xn;v5ذ^'fZ_/L`2-*+*%rCoHz$_iax32S$DޮkBӿ⌤@&Nm!iq[9J\CRF]26 2Ս09_N~:G<hս&D7 \uѯ &^KNy0OCj-r.>lEdxD|CO|H E{Oܧ`+ovv h˻6Byɗ6^E@ ]zN~}vP3k)Ɇr]T%Ur])sƣ't])J&Rg'GdԤi*3h;GɣE02ed[ sxk"vԃ%ȫaK14@8}$yLF<"sQM5W2}wSa10g µJmgS^ kYD7(3gcUXX H9h)cN;!)fE>=/!hې%"\(8V݌PJ{=hSYz+#gZL\ax۷ɉ^;Y*D^u]"[3wiã6Vqh2Ļ &e7$ZO UK\!N͋Q+B:@A.aT9vF!vŐ/%R0)NZ9/hr3[K7]l-VAw^;P՝f n_HXfȩH[NP!Lk'X// `9g}Sܕpƙ3߷!b~מ-I6Nf F((FQ=AHP"hw8oǸ=p"~ǩA7}bG9F ڴˈy)慁NJҞ)FC9oﲕIx$i4u-`r}Ůַk{D(hkɆS?sHT$3{^@P Csm!%*yD sڴFgӽ*ylgZbf3Ԙkyqm l)H`ҿ$_"˫ٵl# 栴Dשּׂzqdk9Zo#p)`ӶCE'DY'w:Azn}n;I(~]w̯~g.U6ᒯ`@] b<@ = ^?0Ϫ |XeIw:F졊!(i`TS.|XTX[/Eۍu%h*t>q ,넏[Q1%k,nܴ}5`Po3 s ״( όzXDl' %eFPLA a  v:?(!_wMFt{Ov i1/C]]`S5kye"vqܒg L!St=m*бV1D1x%>ψZ UZOmp"-'V[~%5_ XCx-$1TC ݜSNb!#&0H+5Q=&A#/JqO" J=3/@itbY6c9[pd Q5e [s0DEO,43’mCQf; 1a_) /'A2uw-cU8AD@I 3oL_&V_<j.H^4/\8)݉TQOYwYϵUN׆;J(bl*(!2\@ 4*{[̓`Cȷ6 lJr[4CRrPa7?R$B֮UL*5(zc#\n>;K Wn@hp60=APQA&g^>^| `m@v!y  =@mZ` fNR(;~b^2ɤ, %,-Ilvxa֐/1a½#cKL+u" e ,.[^<+⧔lziLӼt%E4Z9Gc"y襱2].(HqzH6ڐ{540/#$#rC \~:g ߔ| D t]w.Pƭ!'Ip։C"nTs]t>Q+n |e.$J7( ;δ̰yoY]4Wφ_SptZtoLjfQyzoL 40o|~:U $LÑdm۠+Ѣ{B5(fʑvܦ <{-!2i:h~I[G7D .ƹ9kٵ]yU % =6Z`Xxt Y$WpwiQ0# 4~`'3N#%ѯ [ܪ#njѽuybPlWXfwe6.e 嫀ib*LҢ0+bov$R,n[4WyGjUcaIԽcy|/ݻE IIZuI0b/0T/AhKZRv` v/Hke.C֊^^ Aݚ &.aT[vS*j42v|ۖ%g# 暣R6 aK?m^٧J't/;d:!A.Fz$h$7 U)GPߏe"hگ T.VX)G ?&oG/ Ev9eۥ#.j#:t!]{z̎yת /)&%a˪+MB#*-",*ulJnnFi01w r_j/3yb";V943i2^FC?ꦌX]q(?ӓ,p;67t<q8k7^@{߈SVc](dY笚ޚŭL`ߐ?V4{){bI@_a cLVR*($deWcӎ޾8r̯^b'=Z$74EwfƁ !m:Rʔnz7)RO']B@X'\b٬ ׍lξ'Z|(e(mW^ټ#f3{75V02P;u9i46sQrRGncNꔌqn+ؖ ;w[7y2'"6)M `E!rPY2n%4t>(T#=KIՌ>fnM!Z*:ul ?:r"ѽ&<nRzCrׇ)5"MnAfnj.7FAa)h  n2>#X+UO=i6tU%{5>V U?w5szvQxC0Q흚8ۘk =sE'a2@^ēp! ̠Czm)`SlXU%dz㽩jM +k{$ximI~x4;tRN&눒+ہh~1=٭fdA 7}+&$}#fװeR "g_R/<7E_CF֯GEJB \Cl3kFA~zt,jTfכ@k cR h 0SQ۝Rapl:2 3w>[顧sH\CI\Hޗ%Cc?4'ՠ[ߏbe/rQc~ 1E""NoBw{[\FiAب~jMPm9g? ,E-)>+4F|!E5qyhxBdlܢ7Jn$z5礜E6I#eP֨`sh[`o#fd_p6(61΅eZ=Y7f:)XHC5%078 ~BIA̜DTCTq5N Qbuf3fTFӫط- t]_BS} w;D/bY⌴nbyݘ}7rG-\L.vIeP[܊7ߣVA˯m1{ N3îіo\ H Cd ޟX-Q85dz<ydY[xl 3;+8B1DF%Mѭ+Bib ҧԥϣ0Wye#ckj`M?$[7;`F.9BSXė'T=<+5U][iTz<$5&TU&1 }겸qO; Il7߃$G8 %C/F)ǯfreDi7"ucTp|xzt*ހt44懅]!z6/u1 ?S.x3ׅsX[#F`3)S߶!}7EFLAl<}bZ 3!pc.jFh '.,(?RO9SJR{C߿U-e|BgDzHq5=;'tWcǵc'͡xO}T.ݩM%_VS~POekx:X2PȽԑ Q(f8ŷahR >KY_LwRl=Ag!Ev A84u8O&hW앏,p.%ľB>BouIbpo .2$ڮuN j xZQ$*HY2Dwi(u q}?6W鱗r[ +)0(>xאH_CA=hR< D\ǻFFb/+5tWIK'),j&sZ`91BN<)wQ5_s?FGgŽZDnvM%ăPmtr1ڋ_okgJu-|i||0|(rCSi׭jb SomQlQFn30ܴ9Tз% "g R#&M)CPsko[*^?8ӮåRG Gl|Da"k7=U7l>ri}NTF Ks̞Y*wqӧ[JYNĮ^?Ɖ9o-l*=&sQ3!f矖H{Z5{e :o^v\r߰)xȄO4/;ܙk6(ħl0'ŻPlIy@bL/M?S=$LXo<2[x2R[%~\{󘃟"6k7A5k@cҚ~z>I tuNfxΥ[ާЪ.aǥ~, aoRn'SqLZܙ:5Z`gKG)VUE=BJ؄wer?0i4S Qd9OpwD!-Y],<6y2sf?o-q{Go%S"6D }HJf1t/lCg,38{[P<&dB}"Hj96̱8@a@Sܛѵ^߾L^h]d3 ZYri=gߕ_ ˉP6($w>6|v1A@4 60!sɛ tvɾL Dn$f"arv;$9Pt!YI}qf׀A?NHn!0}\M'' O0mb^o 'Y֢o\Uk 0CZbс*+`)Dڱ>\juCgJ^}iVgpFy:ypȬId> 1hut7(t'R." 6sܢCPNW[ރecB:i-[KC;6 @Xd34}1m,;\ght %)kp>y>|H$ 9! RFK)e%OÛyy%s؇+$H55hvh7,0f!jm˗x}g=C"3и jdYT>\# ĉ%[V:GG̑2R"AgbL\rjӻ<F7% 5DRHqϒ*0 &7s=0Y++g$FrD f|;T}:p"x]P7Lq c0ah(ۂ3d>g|OOX!Yv#VO?fM>0Ppw%J눑t-SSҕ_KNŒ;qGF˨0jFcJ[~KҐ=Oՠ\V)0޻W~wxA&W2c`]+#e "Cz+wb-֧cokNZxf/8*@(\`6#ǍQufWe&) N;-vJ^0\.%v\Yi;.u=3KL7}7еBPm05̦wH{-e[ = a۩:n'_ߦ'i~0u/}]E& 3a؟-…k1-B{z.q*a:?M#u76$>ݣ;R1#ɛ@l|K_̈ract,0L"7F@ KҋaA,~*?em}/_΄RQyX.DvkLPbrG c?ei3p]󹠊'2BZ_ #ol_LAŒ/ $ W'],n>t$!m'yT0Ğ9N=q۹Q_"{d6hP384zTcDI+P|ᥑ,ȦEl Xr' r2" u78-6DZ4oP* {]֒ܪ^{pRvÍ2q&{;xjNYS|޾[y|GdJtL^v*'ny߆ndjDirsÚ)_1=ht $dm `flyT3>wϺ58^3rx6bv<|'>ɀ%U6 ˪a/ybRӨ RDŽW0@x3y$_dQ_ JD„B ETXfwIJGoĆklIR7))-,ƯξڌqTH\=_W2&Nr/k#﫥WQ3u6[*9%|~ |I.҆d٘8VHZ Pa]^P{_iSq ɿ5YEJ8$c:Bn[2EJGu.]Z礪P{:ǯJ4xZe4Hm1y~L5;=?2;݌⌅| @%O hd6z4CS:qJaa큙i S)b͂ٗ&+|+`8o^^aڡqm% "k7䇣;KTUhfb YIPns St8_BW/RW(FINܩ3ҎH%ޟA yPO;MD8nVfhq7Er0'&ž+eͩl$`MI0-1 1-ŋU-YEdCRzŎ2 !?+#ٖk%;Ac nGz̖dԉSPU8f>fUu`9]$Rs 3jdA &CDo+<[*<fW#0<9vgg@uWqB5OӁ9s[bf]܏y2|8n>w;ִl0޵T;N32JRTV4WPui%w1aBHZL~,,Gp'؏,AYB='%aϿqMӈs,f_w@ח/cjeiQ9k))) V\S>wj$lR1g@6\0VE l=a_T7:Ok=_=϶x-*f*D2܌q{?-N:9sJ벍~ ;َ,bJǛH'+~ЕUT BϯoseQ5O牂c]F8 %'67oՍ*_#bc[d4!^¨tvq'=ԡR4/9AwD! (o)f{:)8_v 1s=.1Sm)q5W7y^uAn1}PS/'?09L[-EXtH_׸$bQ@ѷFWjb=x`EnQz:N+dSԟaO6lFzh+?M8<"`\n ةj;uuLOYDݻ11><{{q$ᅢG֓w p)(RF,[CHV߳ Gwq JN8l`nuePP֏HrзO A (2z4q>U5ke bщkmwjM<5sq!A7 Q6du+\j xW#V2HSM"H1}R778vfq jbW9`Q}z`2}m[~-( =X~ؿL .AT"PY;NԻP.dP/do ~LCIL`\;N 7ceGePݛ 9UEkHCJk=^.;oaV?{- %2Ў7:fDC,^iN=n"ZHM:κ%p'G:HwB=07]lEE%vL; Y,wå>3 =GRJ+7bRڤ .*6⳷o})֟&Tk5:>}!y_w H h U96Mw[Q!3R8x&©IM*ۥZ!]Kz͎wR"B Mʏ%tZJ-P1m.QU}TZ d͘z 0&žSCa{~]Y(Uc^\PFs ھ'o1DMn]\QP8svNH%W"q;ЯxVwI_[)JB2R36+1 1:E2ڥ-l|<1V1@͒[e X/p7\[YYׅ~e 죙bVqckUB(BgPn:kh8X,]^eKQ0*#q@ݶ7E0{(@a_xwec[_3s [#.v@Hx>PnՎikÛVF.`qRL^814ѥƱVVw3Γ`(܃,E "vþi(<^RFkTmjn@n7\5 JeUļ;QDz"P/^L ~k !(SUp"vO=J CߢW1l*^byQMÜD|<+Ɗ݊*^NI9 {VAj@WxU)77E=!x=C(GH@t*O/^=μT4GS1 \E21&M87#^SMI@MaQtC췚o9?T:Nt$vkEv:t5fmR  XYDNxt. ؓcEÝ~n;k><Rӈ+l9,<01wp! jR@!z([*Pm`!jOcTI¨}>!tiڧHTWdyDdd)JE`[Ht?sOb|6oX7H-jݵ-|q[%JH-)Zxl+7ilT kܴQLG2SXśӯAw aX_BtKyr=m:Yzjϲ Ҙ-%KٓKGD9h=.pF:[jW."b:;h1ZW߽+To19#"$4WPX B-F58f,*~ǣn)FgB1i'D1?znV!?eץOIK l g 5RΕ'߸:qDr& ǸX0aNk@A CyO+):e1:Tr S\A>@(>a-RB졩- ~8BPH]`^GSʎ 5V(im=sjkWW,=Py8V\̷ّsO69\s W"W5T3s έ}'`@_9pڹơb/%z-\>+i쏽z`qEW刨meT\}Lqϝ]-=tV>sd`!wKk++PC$AG6- A rK"ݠ9Љ?er19]9U"'s/4ox_aq"-.HwJ]UxWf맗#IF7%De$e:&38u|:+p D$8F ="j1ݑ9Л*](\i2i`Vd:CSL4{:$@]`[mv* YcǂzwKoUVts^#Tǫ0jc 83%`K Vf& P7G./-.L%B $63L&? xRAbɼ{ IE>uNJe^҅PGM'" KhtJI*N+f~g$}'z2=IգXU{.U*`ꭉҏ)NӇGm-]`)s zsÇUX׋1tE) }2VpMElPç)'oU. g<%:S@Vx>tbwhMdSX#a *kafzHLޭQޱ55<, جXj&%|< |eKx*68G8W]8aeXNUEh ΊB$ Knq TW*p&c.Ϳ;W=7 ZK/)vD̆,=p7H^*ŭٔY)E:1NK""pS^ie[OBU)lRrRIײ̊-5/Tc9SW(?2q3ñ_b>6ߕB{~I*DE%\iW2Cfvs @%tL:> 75WL䏐>0!x25^^YC,5G+<` D9 :"_*Fh&58xL{ZZ Fб,:p%o!#tlv}\bKK-l/lJ{3_ݕB;+{z{d;}:Dׇg7R{y{B uTP} P̡+d&/6X9B@UMѠE1|u*{`%k})vY(V>*6rҭO>y}-Ӛ6z/DWVZ#B<(ZUS{=C1qDmlL`?v$.9Ë!: N8$E\GC96bPzi?Dx.۾) 3r9dS0H5z:%hrp# 9}\هZ8#SZf]~겒GT\ -689@2ZU v̊,&'LhM<[&e+lJb`kG&JMfcڇh4Ty^T~?)@)Z-^gwc-dabq ״x"o[sJ^6#)mwBe%lRc}qf_M.·R,uZٞOZj,J:(D^U!8BxnO-0f7`#QzV$\i@I=Ҕ*D CYaAAgr|m@UB(ң0o>RLvu~`UHF߸Tb`rp> AiСn^5>߀DTi֭Gc!@A&ԢTV 7ݤ* N~e4?P Oh8ebv /5K0ܪg|`a8 9pmpL4%#$SSL9XUԹjp)&EPWkڧc{W F`,j- 4Hd8#9}6җ#ЎWM$ }餢5lei=ڸzO?Xg:&N 7`mI4f).ST<?t:|iO (v 2 (E-l:D q:]jB+FGNO?k{xCbl` #V!LM]p%RK@3cʉ6>?la&2/Q@&c"5Q8[hF\Tm,GILx,8bq>dx4߿R1FD`rBѤ<l5+^Qx]PS  r{)Y)B=apg6L{gহSH:ʩXd>=;Vˋɣ DV$.C*ZT*%2Fm 89JfZ'ʼt@5_s.Y僪”qbTx.^^NCaאIXg+R^/PNS)0^i^èQB|H"½ZؗS:-FJǕK +n[Ec r!+U<36{m{VV~RٞvWYSzpĄ̷Mݥk.2i'X>`.5AVsFfep7)sѨʽM=a.Swʮ s4~udODSH}+cypIZκB4ciGP9Ⱦy%wnңJ%U<~ZsAhzveQHXv O~q3{ufK_W$ BlWAS+;zv mWg1džnF5]bRYms]MJc2ÊhW3h薚cCJMƹ_/S}{D(`RN vwmOZ / %TƽBs:k`lݫH. rOS:JuBЂ+mYF'90Cmq 0OھвPLj 3"mZ]~3K/8 yJc]}~w.9zqjSWwgge!)uK5M[sM0/6Mkb#'k*<B9ȴt숋&!OJj$qVV^hjDm6NՆN0эRFu)z;)}ZXW^WB! C'6 Dw/-: h]+mk6-Lt&*\u?硽\-Xclh/=3']sP5sSI51?is*X/e&΂nkCI,zЁZiJO~ N%oF&.-=T* A LЌ:R7c]5g2)CU429)k{ pR hY1z8NVF@IȈHiMmhK\3ĶHxhn{?JNrl|B <ӏq$vz8}-VPw2h+g;N`*:x+}+ 0@rhUlUa_\9Ff4i%= e $]4ѭ`e3@.$ x"Emm2U(tP'퍃?ֻgF3򃿋/e>QXwMyi ߹ՑYuz苁=.D ԚQ*J(Ԣip9{NMKAq?ilm09lcԄձ,PA?%͸#nrzDgpX 4 ׭^?ԪJv¦Җ:͂8`^7ӿ &S2zB3Iy|bW,dӪx6LoF2+Q81U]S.@ʃz&q9ˤfiʢS !ٚf(`fgFE;0Xwr]J?$癟 m5NPG16ۋ}( R\C-}Tw1 HB.{mJx85O|F~dy^f *aJ5D 4N2^p!3@t#x%[nYƶZθ!ep˞i q;5qE#]-_6³|"u}YX::Ըn%QqS$LfmkCпʤsb"8ʧnEγӄ7}/ 6S*0;u; =lo]){ #cg͡ݶko1lv 5;^ $ {ft֫f,w_ƞN›XH^&l%A9'c`";QwӼA@5ۡじ-[lDup9lq (l>DEÚ>*V00IDzϲ.7P FF~|V8MDAF=N?\{ӣi6XV3bcF 0bWݡ3.PNIp ZLFLP̎6aBQu8[f%Y7xv%,Ū3t8#S: ՛BP-^*K.|gt^} *;- 6@ -$o-ZE!qZiy[$03#]X:XpAKʠ$^L+Ш b8eF>0ϔO&ڗl-_؛nC@ |wzzDB p|UϚw~AtkP/A Dφj,-q6O?!C!7 qb5V4;+,{̖BfɻB/Q9)) zfRyo7G/3Q"c Wc3;_9x]K=&wJyBkd&"'Tu%5Gí0I(6dYIM/ fma#X3YTgtXj4.U/sn}cŻO6qhbOƋ q}D C:AinM{0{{!z)Ig}u0q !Cft NS ֙20v.CG~UNQֳ** V0Cv &ty$yBIrf4]ottsj+SSCĤyHC  # %kMl{B:i {^]gcK !$ԕI<zD>dž^NҰƶ]! qύTTVn oo][,s%v#58kh}{.y*(*ʷe&>Z /D"NZKSE#-B@apo5./+HHh#V]NVзy`ksxAk,6;?>Yj Ӵ&Ec kˌ IQR_KiuZ;vv/=Ve)=m$,uqb 6) i )VD9bH_t;?|'<>di2f/_͵h0BC!hi[F̃G&;xy7Ob/8QkA륊Sa.&p!Xe_I1QU+i$l,!\¾`֍>T^~8==%o]0Gy^ҾN4w{ yJ!i\w(CÔ H"cU`W,WːNAC6K'HF&^۸Ԙw/~0yv h/_eΌ[t5lꈥȏ~Id7yXk5;F0I\ j"v+( ) \,V`/C6h06tiyqtD ĵ `[p " `5B}]vVu^S*vWzg;TO^ө8oJLQt2DJj oo݀/TĵϬo[Z~'@g^1/G޻!woYr Pe=-Q__u`yEu)|?/0Szٻ;]@~qn (OK g%$3 ۆie !ȅy79 pR,ņ6vӖ i5mըG rq>Mai'.P2S*E,l:Y7j:H 7Qj RR߆vyzj$38mmGU}q⊑E)ڙ8"}lʹ/A$=ʡSdH׼Iro9*]ّܛ ͺtFNɾ[E'EhO.ʭl,Va @8T+'vn~ Bˏֺ5?m͖,HPo϶"Oa=c.IDhE#idFfσXIxʝ0Y (G-*{X%z"晿=]Fmk5Yn9G,9]Qͯ?Υw;ir0FaNy) I`WSvrZSnɷp8DE)|H =D0m gX V.dt"k g?#LQ+\je>1 4-B )uvBZL4[ۤ0[5Ѭ Ɛ*5ܱ#J##27T؇HusD|ռB[UH(#p-8;lk\radO0fbfcJ$ېy1$V"a4'Nh.ߋEs8mIsơ+hJ")]2eprMi14 rz o/{ 28iuս`wxM$z`$r%/%m7ONQ`rIw0IeGfJj wO$eliH98$%.';*mtz1g}ҹ u9;P8m= ɿW$<-ȫOJCo]+i2 L+ư;a8+HO]GVuN{![ %qv@=UY&d',.b?=#Y1ʲ0ʔSVҚ-?P3BU9ȹ# St¼XKrw(,ۄ ^7x9-U&J7Ip;o +Y_AM2*cTM쐏-/.c~WLڍz%+=)~TVBKGc ɐWA )YðHІyײMDih%2OH&3H`,-(=%|fH/9?WZ7e2nX줽NT-NHX_l[rYfiSFAثzݶc1P!@|fA6!MFPM$Kʀ{mcf䂲XDmMKJt|uYV{U0Y^]pԭNmGo2•@3ȐD['ʱ)hģV[ʿ{xG;K3Pf -~`K;eJ<Ũi;1 `X 3fJ[>j 8F4GV.I ܕɫD{PJS]يZg '$,DeL9s9:(&8Zj_l;"%vܛӊf7ct =be0oxe!b|tMho󫗳w'_Ŵ+ȋ9qD:]kB7 Դن{w޺!Я%1v,w)FeQdԞ9^9}bh-'ri?y?s/핑} P?:\oh&ב'el%)}>DeGz1r0)΢(Ii<!V#jفۦBY[>,'e-6<0"xx;)'xx߬Sd#'7\W21A2.NVH mЎo3{ ېsLTu/ UjIJ%0,*Z' oDH/fj\(8ìSHluLA{%YSZd8UH358ӥ,N:'jF-fBǢigZLd[jYw6wCI( ku`݋m0TςC8Wk.q ׽`./fp⑓GU pܗi)${Hz] T@=.Ɨڎ_]%@DO$U iwBZs!5 +۳Snd3ŝht'Z'b])tcyȴrae*g|ᮜYU"+?;=[_pKSـk4Ŏ0ۃlo7Ӡ3F:BwV.VjjA8T lߘ n>Ni`ve:{LH4;*s pNwu{v} *XH?,aAw: ~fÝ<ݿܖ_ضrF:4T3-Vs5tߦ%\=5,I) 3̒R[RrXՑ$2 D-X_n"ĭ]QpU2 BxME[3QfUbFd%nex6V04KsU HY U=ArzN8b=#ӊu[ |Xʱ*YC2Ӟ7_Ʀ=Ny)DJKԚ:qap?Q{x0uGop/A4G1yf[A%]бfr0JϿ<*9֡eiW?@"Gz + "9 zu}k k4%9ַM +cR09A4v]Wd'RsU}tܸ o34v43½{M#4oJÅgP*sMШgWLW;?(w(бn@Dd]ͱ5BNOԥNĶ'97zHt7:v!j"&Z)D.83Z.b/)h=(19"@ɸ!?| 5@PV1 yp)ps7x>GbZ= Jyt;*A2iթ#oψ=X_M&V5,ke=BVn& ӵk'ۆ*~UK _]ic4q*x 4bzt|S/.]Wemn0ݝ-4EȀ  it:QRM3jęP~II< VҶ/$j'=snpiAU!1_{2kES^OXN@ F ".51%ܞs C}mz:\GW6_b$797ئ~WB-Ш1UWO,+[baEQ^dU7Z! f%1q:ۛ]KwHVC椒j%ڹCKTIxds,A 4m"?6%[oǺ6OAs 7g8t-NoMj<X*&nSUîۣx%k)2q'B~ŵPqKr3^`;ԯP ,ud.Re>*Z*@ 2>K=. /m򟦬2#Mk=`n> tQpk7Ƚ\2[1K?|?^J~O̷ymk|9k@ft;+Gjj`A`l6gKM؅9N6\DlL~Nz)(لN<ZU(n#&rl k40&yƓ}?]gњq8G]sRWvʍD6:7 ϖ<^af2nyc/1πJdbJ5zksw}ӂ9Y1 _j,;S|q:a܈{'3;dJS30d*mLOWG[v(ic,{:b"BWI뜪23VJo:j@?$sgImWu {a2<{7nH{OóñC=~F_So/m316ָnRRHU 6 HskK2B%]%Dp(._~kö ݑש 8LՋD2 qH@ሗN\ N4a4UJ(3M`¨~DS }TNI1ҿVgPdfIHf.J|e˩ZktK#0ŦsPBMIh;eAgދL'V8j!}ԇR#r跢}6^C*i* #&?Zо J% ` s}4 2.tPH`b$RSʴ R4PUvu -t#֘AXuPl)ww/.hS8r0in5dMƨߞ=g $Ձdy|bJ܌͓|kzg< d:QOѪ2£mkY Ԩriwxj+Y;qͤr"F e)J:[@F\4lqeIg!0! z8ѺmADF;Z`\/?K[n!d&HXj x0=;M.%ϔG[2s!4 Y]IHszT?8w FeH&&0pUTf>l|-B|'P(SL݋3۰ڟE7+?`xỂgWF}lyxmӡZI<VU%3agǏ5J)x8`I9zU&/Y>z gH\Uk-OKή:4UU;#(w97͑ }mkKRpki71 c"j?j!݃kr ."eaj~_1uˢ f nw&՗SE3mj!Z]NA}џGáTll_N9,\LE7Bب2Q)Sܟ)`~$:L 1Z#Jov$b|uoH!?}@t=<'z/Rsl4&G2`~ (OICU%ω->ny, RZ6>B@"މQ\4YLxy,b; 5Aԯ"ů9 t(u,v va'`^ajA^?]ddlSIZ{EU--9-:z>rbRRoW-5z 2gP>j6H$=D&@Hȏufk#v%lXm~9qPِ%td_-tSx,Im.LA7`4ē\O`v)Ke2FU]{GwBȊgE>X10׍Yb;Z:ksJД8,6i$v %:6yGh7ROԎxX汒1a6v~[q8r.hEzd&4:zxl>A5 aQҘhYf֦[5BNJUrow#D(Q9⌻['_[i HCTMʤ\,fChjP)rnGVBsm R]-Bbˑa\alм"w&8YR a07+,G~Z )Liu30sw`JU݁VYU9[5ձTR"Ųu\ae Χ$!HCK~^94Qzj?JCW[[UW5l) fyDkS ⛧fveJ'㩞neFF 6 DRs};, ǗR_0+0Gnyqr%MQ>ga0U0IM|M@f=160c=]Q#\y4hp`{⦁hi2>(.mHe]0a'g+!wRǕ.? X KgK2JF@6?Q'$ _D6@yGt:]IK{56hTr%-Y3i2_"ciN{2j{-&TWֶw9T]wo @;!]c#KθiuadL~>>o4bE~p6aե]R9ZWwr6C=Y~j;CS2:TV/S[=qppF 7kVGR A d|,u暕k\C>G؊+%b[ ˆb[ ȡ]$wZFc3;U蛌j̭_Ӭ(8]Bu2 O@x[,盏sjf,Z|3ioJ u(P\kwv;] 4kB"#Mf˯gM6ω 4]O9wXQG5γ4rr3 zŠ(9Ƿ4򡪕4HwBZh@lMQ(!1'+qtSjJ=ߖHc" ܃j'&*ъ#A;Mez3O~avvxF` ;g&S J%EZjD90}B f$LExĺVzq|=t̪8X^&9LtHZe|ő Ha}!@@4r o^s((˞CNݖ@(=n7~G|j=aI%wEM iZc:s-ʲ*#p((@mA84]z6ildMci%Ն4 [6RaBcEc~Q[_/ !\H$bOn'ym 5!+QGu7T&O+RW|zmе7j4s"(A= Mk(>G 7ϝy:0@.yE6#VdP]SEp׳ GoӜ0CUlÜ,>`+|j.WM4}R3IQý`1=3hZ)J H )0JnRO[6 }3DZ7Њ[C(Y XM -gt[ƕ:O_6(<`u7ȐnCA GWp $iH:ζQc~]0>YlK3E݌.Jt ~[Z\i<G*d662WmjYB&cP/>|dRexM]c” n? fK|5*ٝwbˈ~e3SgR B(ַKoyA*0uhZ<#vܠOri+=e^|h뿌lA qag2-u䭖5yYz3IL# }J(k\2 \}DpI۞L5,w.kB.SYJ4nK _9 sIkWKy2xBb C?XEJ<Y:Y mOMQ+z9\t6^eWWK?k3Âvk%MHamE\ß]92(g^LV CFЯ5J] o)W[X67ésO@Q=r(P?g:yE:-Vq˓oa=F^FVXmٯJ|o-r\Ah64D+*L F; -N;S.Y -Ya21'*n58X4>)bƣ 3?=Y+N&"Зe#`TyM_ZWt,֎S[sd,AW~R(.8EH@͏|j\ Bk^NGR-ɛa%swXZ| (OI]_<JfQsPxCXh)k}9_CYs9ߡ]kŰKoX2s/qGhxBIR^C##Y1H1jmb࿙?@2M/?v@fVLP^3PJ˛6!'nQoԲieb'!^nasOT*nJH4sBˢ7B%Lvu:8dhvY ﲕ݃ X@sՆD@,"Cd~h4g^ b5PYL͔*lZ4œ_ݫɌSWDU;rjoɠݤk!:#aJTe{wݛ<rl}ҕe̸MDJ~\ZoԬ7k h@mS8|U7hH ]:n\wa;iD]#¯eyJзhqi&87 g&9:]w%dz7HeqOt [7#@GpH n'~*0Un .^7\K*ڮ?hjEŀ@ j]0Ct?q v&ӽ+CdPN{q|Ze mg.TU>zM>OVU`HRާNH5d2s\u˹D#Qvsmϛs2DTT_ڹL:p/"hP?~9j3d\U|gΗz23{3#6J=S2^nM&}T M+ z>u|@](^Nc]tZOH*mᛱ]s+p]]`ys_+in3zt؂hfQ+9_JcF}&{#y"/2 ۭc{ _l pPr49 4[K2Au@|hؕKdCvjr`wU&ЎbEsV\k3 ߧ<_9,ɉ͛ՁiI* ~*rJ_X1 :% C/^& `XʙCEI?j7&^^ ]ڤ}Q1 qeHj^=HepYw6X& kU]SU}cͼEP9/YIlXAŪꗓ%儣gI@%JbʪO-yrO4ܖ]1. 8~ȶϩZ$lZ ,_voP>>|\*ct R j>^tō50t 7,鯏#B<_yi]*\W + j 3G)IR=f_ vcHQ&@7hy{[O?Q'or{UB%Xݧ 1&YC95jO2caǗAMK &ܷ=^gtS.fBF QeU{"~ v;*sWBƴ1_ݞH-$^ 6woP7P)j0*_byS1Yld)~c FNq|p( Aw'"T8aߛ#S.;<<Rp :SܼYr{N׌xQB#>\ 5okpLKz/_};xh,tI}ps3܊ġY 3m{?xas-g ??ktufdW] 0-s@١7Futّ)*E,xzwG>_a0)E4 V%: USq 1WoÏ| n߯-xs\ͯ<_!m.8oSTE`<LqwlJ]%=E ubAo Vd~*b?PBO*\]$w G",b 38t\5te~F j/bDURK;P4+{k:Bs^75򻎞_э_bcqr2+w KLbegӐL%]ɴZda 2iCsBڋ4e&pH[}J&`Nɉ;iS\%WNTक़_>_ui\fOӡVOv ȚfȀ5I@lV^v"=$2(>8PsgzpQფ˜^?P6.mTa/>`\<3$ Eϯǎ(˛F2Ti4Quܒ5<&5qF芪Aɭ¨5T{8{@| ^roefi<8O'hZ:p]*ݚpln8XOp)ʻ^OSyHĺIJfzF.g[j Bс7#N +7HN960F d'oa$ן e-`}*@EW#6{/Rk뀈vƄ?NK=y{nsO6Z-w߳K$EfYXuFv'}p>P{>_VʒPRHbkCnH x(HX-Jd]z\niUmnYR˱9^y8/oXe;$0b0(ڭo%]W 9?KZXy(\H+E,?W8؃mV*ơoVAapQ.<} qtmvçyw6 qfu:y|KKnl-v]Doپt܀rLQτc(aXBys4$Q:}b`aZjכLJW0'A4nՈ7E)8(_|uw['j'.n" ߕ/ۘh7.RUnQ >E\( FcyxỌR )`8Qv+ 2Hnzu\E; GÙ{523ߦW(Eb 5Ζ? -N7.ͣntcM| Q@y_]eVo x7ќ3KRHA]wg3=o:̔k|B/P$a{lYO_Glǿb%J0?l5㮍J.H)u$(%G1${j)8M}e @ĦޟDg`T_tzq3B N5$Ry3NΛYC/Qp aXkUcEGtVMQeuwʠQNB;aŒ܏d, GE5 BYaj&n&S=Rҧ˚=91]hxxno㏰ZZ)_*qe%B+ӔT1?Ol3'djG>bEl9HG{CwWtO%GsθMv{l!yz?l^0ʘiB|ʲWMa!N5KC<,Hko붝"vjĉ Ut[љq[;e Ak26)"?7̬>Nu.SegfzĘcUj U藍g1Agb05Dq?l[>oezËy `+(́7HC3<ڎqS^]KT H`V ).!L_ktτ4 tCMM蘖!/ jg]<tLX ?v+s-.@DT;\جq^y4S.. HU="K*;R/<|z1B#q]rITb!Ë'S8q J׿Rd kt]oG/"\ B!cm rJHD)j+\FI֢te{kDTgt?'&{l8J?e 7J_8e&oE^AU*h}ʲhO5a ؓӾ\‡Bl˫43~w2_^6_ث$Td<# gUgO~$cT<̲**m-rKs!1PE_Ykzk#o`GO.EiC"%{>! {;PVPWoz%xWB.9p^uD߼ 1r&юBToGB.<t<(GU 9ϼ}q9>7RLM B62IBqc먐cS x 8=;ۏZ:c§gïm-oZ~UahcK@*7/2 (6ǗoxbvTv36HD$";W`U-1tVXuΆVy6Oa 1c!U  i.Afc8h37ޜ4ɶnH+mSZ?!p9\xzwK;TFd&@gYs ~ХP /:DS|Qiբc:½|-La'Tma(<ڎm7]/qU<2m,@7V^D%X|qWO-8wp> &~f$Jкn73YnXD-}ښuk.%9=rJQB>p,Ti]^YqNn[n? 7t+sSz*ȂuՆQ/9nQ^0~&ŵKCΦ_׈'q=׺7N߾C J6N"+⍤&d1Y͠Z>txr 7u(VciBtUU[V P`)$E& ::Mvm(h C|At{eK1ĺkBsPrPl/j14ga^ruy$bݎP)!HwiԘ\ݘ^)]dFIČН͉~<  }R9sſ*f|UEWk9}0`hD:PxR@!96n&Hf%(LIJЇ;M#CT} @զj Y[B闕 ޟ7x6zGuzAdQZi#^b: ) #<T'',nR=᪶foY봈 Ԁ//霈10(>C9_AIwASEF:hχz$F4ӑa~v`0N_1vNjUu7c/IA ;6cs4ej1 碳i ~ɂ"&+-L Œ~tx/ "yNcom*zrL@(mC[)F9/~.qbic%ܲq_}Ni} 4;:g,{O@ͭ$[:y^vL+ " 6RdR:ᾴYR {rx$*ʿv%cTb1~3.`0ЃERW[́SV2%:b&/s,㗭3qxy3P՘ɯCW&$wsR)Cz<+ Qv~:CʡCPTX!oi8eudFׇvth uiw:+sH`>[c׿ ҁ,<ϊP¿IjeA`,PiFn37T_y;Oc+\ 搷=aP`$WqRk{#M-b'7a9߁qbxW3xvUo-GGSJ&r;yu $2JQ)8X]N;O|2}2xCΊupr#D$/{hPx4O\yX3NiMC25k1+ ,/! 3 r F}|3CtZ?Q_D'X懱ȑa 7 @=GA`šY/Vj..!-iFw.jt͛"PfB*pwʈ佋k\[Fu_WZl.v!N[aS&`:u읯Zd"OYϯZ->+Dz~IZu_Я}OX<0v7BՀu= ,7llӑ 1QK˙CE!.'?lAW%"rqթHsJ$N$r49dMɵ8%,On5LqXk2EqZLԦpܱңF`;6,;I$ԭ}C 98Ѱ 9%C)FJ;Xud|7F:[}ny? KT1Y x99_Ex?o]lf1::d,+H RdeNvF/ɮJ0GJ/ly¤EVek}3jK,cC+LkQ&R6kuA QloM"&2Q7=oyUÝSVDء, H9I<|gbpn0)( 8v6H)d@|!£zotB/>rt/mşn Ќb.ecҴ[5ațdWBͶuldr_e2B `}AXUG$t^mqdչ̭b ]UnZ61n[bO_q_O@.#KaZ;""Btδ \kΗM}+^Ow|R恭E$D1d|k9w~F3 Q3})4ȧ@c`xd7m#<{qrd ,bLLt8a]f|'Ng!*=59vF.JrK RP!C!DoWTnAW ?Pg~];Cs;w`ex>ڋLfmFh<п Bv{q|:煼:f|]q?^TcXVqЈ5~`6aHT뒤k9'ITh(R̞+S[ɤ\lĬ3T`hEE.;?3@$LF9'0UFbRjsMKnw @Jʪ . GxMw񧆺謍5B f3s ܉|ّ|?.H{mÞTA5IHuj#F3U#Za E;ђE'NJrk iv-7&MS"g*cTq$@XMvh[Df/Њ {^pCa0p$弫pElqi ]D7] v4͛ߕ1Sj4tݧMVD|`wWW ^l)ΐ mXzQ{~DA)\Yʭ =qɿs AtsVt 9y$N9uP8Й#w%)} )yt{bݽzAT]JKVS0ܻ-;DU|~7H\ =2Pj.Aݰ1nO>ny@ 2R'Kdv0j9 ]E;k#%>z|n߉~MAYԸTҪq7^ɻt>(t4v,&<~/P5'.X: @ɏhPJ:%Ho1K9Rۅunɳ$VqeDI3eO% j%%(f=f0s;LVX%[pTWT@%&4mU!֕ޏE w&Dl- ݒ ; fxqe?/g;W=NCIh4; \1~yL^fXC/WmnGTԽ;;DŒ_EEdi|2~(H @C \=^I36~&]qe=D#ZQ {ϱis`il\{9'`K5ФK`AoF=۝'^ BwPE>}><k/ߩ7lg9yQg𡼯ck:]Rt*I@e 8ijq":g5!κ1Fx_Ab 9}qX*z=OYȚ!M>%$~ưCAfZ`jl%~&D8irY*4ٿvȇ7.J,2b9 YL3 m2wy4 Fܽo+?ʴOXfm+Hg*ڀO_})PC8}kGbH`wZ/ L^I[G.u7{26.s~QED-QYu;ȉ:x!~Y'ڟzIY4/(s07r6'+vUHG_.bURM֑G}=ںDIKGhExYׄ+༦7CXM ߜuם9XAYYH ~ɝ41c(d({[Z4k_ ɖ &mI^uN4⠮ꌑ?A|Mg7 W\Mnl>9"7=>nƙ':wX5SErm{@Q`'nwAU|gOcjڰe01‚; ҔJ>3m;Q{0rS1za>Ű M%Sd22ݶzJsg񵐥E.Se/exN&P0Va?]$Oi|EYp1npAJFt`MJAkNG76Tr4lMF2OeR2$k)Wk1!Im. [9|B&?}3EKMCf'.jJ$e9,Ͼ\Գ hAi[*"-DVgA޵a =퓰*Ϋƺ)k܊%RE9TTi79|Ĝ н(2? ҒKբ@':aQ\57h+͔P4+/IMn}74@qG+r%ĝ}|[xG0znH* ˒ڜ?@Zxd嬽쐁&iߺNr! i^whb ' Scy탩ݟQ YUh;*#̙܇5c3[Lg+S4+^moQf^ʦQ1n!<%_(3Q]F1!mX{Ř'GWY9Qw}۰ *J9|_8%JgM? d+h{*wl:'}@$+*4j:k"4ad3n#s@eA")0z\8d#7ug2 VkJ"yEdR!a#B{MajLgGM*c@d=GSSfT-|8HeLC zr mށoՀ:P5Uko}!*&Wг!mc]1bo[!ۼL11cdЯ PN[G1I77eR)|GHisH >`݋!v(|fM:ڶ!IGcQI3b.R .pD8] 'CO.4孏%ջU^Ϻph\cl1;$+>]<3sMuxR4EX0:Lv6슲^Upd֌=o~N.Hc!`-?rhŶ2DynP fCgZK45_9UiAEJ>!ph8_XEBk[%N8Ri_A` DnWq⦏hM@/v|Y#,*Yww$]Q ^deRy|f*Ul 5H%bm'lKu %͵wvk+@'֝}Vt1]uL#ÇSj+U?Dī0P3}Uٽ7=&RFLV~2s7Q#y&c\u^@`̯稂3Y9t=hr|g +>p&LCۭX2 OgS!,Y1ĪZ;kcH +mS |>y;C| %@4hgFz.h&0d'>f(fpbwaZ5s,t⑩|!Y;Mr"uRC|4i *ܫHN:F=פz%/(,<1ɰ’6&lsմ 5HBZyf<5$WOWlnH59Ix F܇pVd 02O@^D~H5e 8#.Z9ո-w965ɾde? m`h B,";h}OcԥddHta6OM',!]kQU%jQI#L^yAǢ,V[RÀcecWUcs T H m%r|Nd1<[5/;/>hSpTʇCWv^KdI,#Q{=+ԏF0F2QM)I8oOU1!(cOo\;%Cޚt`H1JNj2lk<9b d(;^Zsd]Ram$s璉XC/U +q1!q <4aѼP6xwu3$$DC0ig 6ؤpyƣ[!S2%,q(Ԫrt\SiyG"Ѻ ݖWA7jX° '*EC(FzmվΗ>Z/3JE̚0WURQn [16p 16'JUV@xm=  %^篾z̉Po4S£ *0,o[M*IRa'-(Z2 فWB u0CC<ә^z)_e#!g*=vNS٨QXdYZ .LTK?+T/d8p|IHWW`ļs'Hմ:|psſKȢ|w>442;'7JO1((IH`9;ЌI"7tM֊%h(n0>jc;3Ah'G7F%GmpD" ୙5m&Z<._AޜD+3kD@~B0^€E#c2.څg9W3m. MZ2l*.'A?;q#Ymxfw쿺OV; <_&auxUtn]^#vOjfZo );;o4SS T/;9,+$NΎ B v6R "㙷>5ڹMhÜDF zoX.ͭrXBZݤhEP,}J숬M!UR [4gJlD6fG+dp#ERD/NWk/Lh]u+CMbFAeiё 5KwZ:)UlP@_剑Ʉ 5_ 6c<6t:t[ZH+Lxiy+ R&~P &-7ba&Nסٸy2nI`/T#yl4{ce1N+%'f~}b _V3bkH^, o,<!(cj_t/uhk:CVxfvuWHFI;,q̕3l% jp:Qp/.HڪQ6W\?:W#Tsby~q_s"!:uxee8ADiV`,Ę KW`w6Okѵ0g650}Kus˒(,2ԫ}C.r%\^C5K MR<])mFG1vWRDM>7#%AfR]}63~rdR/2܈D!qjQJcq.MlϪnU4N^8>:d%j)[{ƿmt 2_.9d1vث~~`L%# $rBd&{.ixQOI {dހ)3QCL= M#o&(??eq}V\Jt'U6## ZD6]m! Ys b!7 {1;]u_W>#AW4zuS(.@2}xҪZ%8'n;xyZzOx~ "hIvwCvb H!0XW}Ĥ-f=5|6ڲXJ&$e;쨋ʾ /zg]?V" ]݇\(?;HWĬWTCŵV|Z||I]V#'"}İ$?-?\dXU+J7Q)&0UG;F}+܍N[ۼR*]NU_+jwcL ySܛϤS p8q-#ubр͟ui;r|L;3W!jhЍ _Ϯ@UiZg~vVfERJtp>q ޤ=/2qٚh˙N|`aMԧ_%q_Ӆ g3 5K㼧O}Pn,?" sj4?X$6+ "vyp :1P;-."R~ͻaȺp'\l-՛} 5JϩP׃XX5Ot$S4rj1PND O&V Obk#46s!4Wڛ¸=萒xU4]zY-< a^◍݉B4Jj1itllqؑj*yg&񣉃w#E;{XAj]BX)݊<>lV6Q5x௻=4ԍjn_x<[u)o$TfSzK)1ީXU;-6|[ yaLy_d#b*\FMjo}qX6mƹ4cH0Q=պ2f[G4ud0]9uGoopj \67+bڌvR)mV[i꣧́*Qh4&_ @L5<q=3BT@q}zPn<])/P]pq'XOZi$#!([gNk[Wz}:SQ/nX9x6qB{T!= C/=g7Ώp L-XcNꎣn|a#̸F+{9_q&/c_?_ ;*ls̲/c;U׉}ă9M6&a֚vڑW}7ly(2E~P|'O)^_Ew S>U:a(ԳlbwVg֕> 멡K g Zo{S "9skB&wÐk…iM5o=&ĖHޟ#u 7=QBO-~#v~Sݬdl_]@:#*C#$~ev@n ļkOS"KբFf Y`z{.[&kmR"~]ȣt_mhxQgSո0/M_>L &qUz9{k Ϭ`Ngf=&)xW/u ASpkqnިTJ+DӯC|xM)-Wy-IMS~.To.+ R@Dkb3eϼ52#R4W(?W/q=J껉l0{[*y_zvzh=z VuVcmk*{sMЬx1I5R;^ Xs.0y[ DT"ޫ;ĉ7pA[li ]Ia0$zl38F b.bNfwM_L}3KU|3[LKi1J݂2: AV8"H:g}cA0W ÈC;4obr >y1ͧZ"cA{倢`cq2mX`~օfW'a'ӬChҋҼNt ZjN9כ"$~s7'k.8P}D jVQ׭= ZoNB}[N+pbQlQ>I4sIl+6m[ I9-m(<] ~2$F3 *ס$U:xECQ-J_, /BŃ6|ϥ0EGc|+EI@&/"zoir+W!+Ӟ䆍J圛V'w1|_a>ġQ4܊JfZxnux-NHir|M>K XFJ]֒ /@/3S:`0ƨbu"8.a fĽ%dix , | 2R'R8ő/#w9{oب옞_'\n.F Uإ`26+8O7#YE{`/󻷛bw8pa,rՇk jA+l ")!6}KtuDbÎssj~㋮V3荃-O;m3!!saL:"_ ;'a#A OЃF)$ &|;7R掯#BoM'EVo/Y z%KYRlpC0p]I&Oޯ.1^E8Iܹz%z>nHaЖ+n0tB+Dztˤߦ@U^*}8OS̗[@NTvWcu<zR;Syg1 fz]zN`0roqvoE `rB ]%6aǃF R6 Cm ͞X^A؞\$e5Q?wHKb# eYGkV!i:>B@7y䯞?oYgͳC0VmI۹}}rǧ4T@[U-l&HG4Ƒmß+ϠnQOqB CjvTq|9"tpo4gOcV ~PM-'8Is;JǚAL47@EGE`'QU+5Q٦4g7"V#QHJty(;z  !<{| .ޫe Qٷmf7YCmE;GaGd> 5UƐ[6,/7*hTrq|pw\< BpnT 4!2kW|i"EUz<#rġ\jwG(4XQ>wH#sPK[S5WCa=st*'NfMznh;v(I$ ΛڲυOӺcB).R< :@m"_agRWWG׃ݹsfKߒ<4odI<Ԏ^X[< C{?.x43b@Ͳד4̽_{صw٪΁aQr^~{< *}N7{ie u iOppUvٍ#6gJ8xNI?9vW;^!ډc6 mT9P8^C%e1EO4ָב"EM@=+ Qs2jwBqͫ,,0&22?@!9$% dwjG,*EjL[scTG%O ⌚| +גI3#3I0ftq~pR觖! q9]S_~075Y DݼlVFnCub |LILpȳͽI\)WnTzZQ8%f-%إ/4b.H;S=}04"p#>JBvm3&ڜ{6 {DjLH rZ*6kI=WH N E,3 d˿ݫk!A~ιl~ }Wg)՗$Pw!gA E}ndzhu-9 oaibNYQQOkq3FG9 3,Ipl] ;A{jjz&61}uyYqRA ȫXɾnˑ&˿.[${! ?@k1B' n)&?g;cUЖ44?;4:pNb@RSS~E B,C5a]޿[%Buj i14UʺVBn&=p%^~""H~`bIܝH2q}tmI9[9kt͠k&IƉ텊XVJF.[/7p|@s*vk;G鿫+[lIԞY 4wݹ~:"Rr+~^r95azN)6/{# ]_e6^-\HD̯sW]*$'fMTPȝ~W)6$rt@0i=29\tf:JSxR(qs4Ψe,AD}5ݺG ΥCPq{fdDH _4yIlUM!L@,[ Zi]bcжՈIjp36+lԗoQ \BH ,}*"l[MdLTV')|,A cNMB$u_ JMc]̸Lxp+AȽb{6R r !p+ >hn,о[3aߍG8c\O:닭ҫZG:/'b*Bjۭ\7q[17ǁIya'7Hѫ#2!W l_D3AU&ݼ7XNĒA㠐Ei/PQ4'ǵG"}E_;`#;qP+yk~Z- 0=A8!{i#zO\@KGbqEoyc=+&=^f*Qh}SFbjړR vТ|(pZ`$n-i8rj\Dd o [$FK:S|5L$rwiɈE^+[%@*ԯ:av\p'Q t&>^㤬&Cү2Ó.-gcfV&˶8UJz,: \!ZLlH\mǸTsupYlQ y a<™>*4лvm~+CsمJMMo(W%/)KaIU:qW@_F?p_mj#m^6Ld&2v\#?gB c׸ gc+P#_G3|9yVHzp1Qb|.:h"2:Do`=4{uB$O/;95z4jrYsx] .`dKƫmBy IM銗KB g*.fٍo^n f7#Ŀ ݃hHq>/dT+ _@#. NVs&|e;-OAr17е*_Q}4Jv,fcc''Yv~9~GD~3,OSYC/&'Zt(ﵘA{)r{8P0Sї8ս)Up)#Qo+`x|sKQ;a1\9ůM+A{7q&m em`;4^n:}I+`I<3zѿu3[k ܝ_DXj?`[M1 BGjlȱ.]GNJ2rH_d V~-1XHcY]@/(;5`[c@I p=H߷-R?ϹM`KdPsDi8ΏLhHeJ Y ^I7 ${)&2N%De 瑴_ Wd:lH?6MХ򺵡VVQl<:Xg9y߁vsDnka\Q%(?6#HgJɳ?(H1C4AZ1lb'aѬa)La#e g L[c=hX=͞|l*xmJ!B\z=bZ蕭bhE;GL ɐd8cF3uا vUh<{+-OSxjºi-(Fw0qk[ܕmcB% .3j@(XUvcr~p gos=!@L>ұ$jn.6J3R#}Rq:yr\A!<^*̧h0,z±\J"o펎>agKye.\*o<-5&yD_uNl>ܾ}g1tguo~ e2䂇b;h^frQ8Sƭ{99&27<SޕEOά>|/USS7ߚ5[ZbtĐ#D?8# lp M']zRrg %s}r$v9MGjgKr 9 8GƄpo.'{]wpfG5}sk-l1ro4s~ ]#zOpsI[(|"%"LHK :4g`C7s?Q9MM;L4/$vs 6wuYn3d$ ue5u='h*6aE:`6fάC29v Gm졉E[K574ińA,zQЍ}nRWSI|3aH w1WVRSh5! s\UiA!+ޜl.Zb3NcB 6nN\5CYvv! F#d^[F<Ҧ0,@`f9aœӣP%< 7QU519>:S]R2!C6fUdj-YQ'7Ǝ뗫HE? |,~Z?Ͳ߃41|]g&ͅapyzb6Rbk+~ #*b GVXz,ܡPw3k(uG|$cjFW2'p-p(-? )r#C[34?AM0s(ZuqUk^S5 n' [6h8IVoS~|Z.[#iwg&ݢd$>6] "d4o1}{T\L.MRPUwvȜlU1KW$x}Ҝzo\:o ?#I (W5>O{_™k0P\s :%a+C~ O~{Ha"GH~#QiPϊV2TQl7\,RS\KLlFonmwa衚Pc W uz&ٸiލ3-l(7O(Ɠ}kO g/5GZ32ʊ!־' oEn&d*Q }HHr3=S8Ҝ}-Z^b&鴙S 3f= 6<jro_gۼ/Z"gɡ#>*Lsq#mկ!Qi־%Ϳ?[@OEHwa^5**@{o?cu"" aF\߲X!60Dq.IKnf'|֖7{jIH۹ZA<ɺ6g$kv}A 80GkPB@2du!ŶFxDC>Aδ8TMf 3{XS0C[ ɌkӃ[yė~%Ίm+m:_ZQu(#Nܢ6#,jGBsQ٧xfytlW&0pԒuZ R"yɑzQ%(h(t ܹ0fHuvg̺V@' dmmeGlSOjY,QzWѿeO["~is]vˑgˆ8^wOnBh@zQտ4!:|b>e!7·X^S59 OuD|x;~l烔<\@wBЅJ\ҽ5J(f0G1(U O8hEK]SWҗ$Qyz-59Ki@%Dzy06+u FY`G!6=6tcD]g3?UPVxi:H\a2$1]ĠQRhiy J5zCI^ b6*2Q4wń@7f_m7HnEA{zJ%B\FO|Nޕk7 "30$xv?2}99M;#Ht~n/#dTz4ht >۾10VQ=Et<$WUwPi^FN1V8w([XxG^5¿"w @l/>~Tsikw(2)/Nn35> ZG#i_c {&I0`0z HPìТon1ntiKq4(BÃ5veZj,g:) u}&ǠٶT$co9 #MaS H)g|9w-1.AǛ FhUܑbZ><`q͂oL'@m")qD(l͢^rh(/,@e^C)l)rTsSG5U A~VVZY];y@'@zr' QI@$Jv 2gJͪ<hS ˽'*eݰnQlS1A}d~'7}"R1'|Z+r!."At"~lze`1/CMz?NLJC+ZIDFp32N)2)ɞu x,qigxK.ApS INXuUl(ܗVoč_qTƚ #z|'>AO!bq§p})=7G|ϕeYe8VFbI:ĽgQT._P7-SzÍY]g : Dajg i8K7- )E&kLOi(+55wڎ\y׊@$sQaz;G]ֿK'H@5P n Q_޾&5ڬa9bB rگ-nV:ݰ<{!YCً-~Eyl YM?,XOÈH@8b H+c {b*2Fl'U\Ѧ Y vߦ^LjgPڢCh+v}5V)VbjKB^P0z%=/ݐjBFw2e>bDۈ?]mlR0W :,:ĉaG5Yw$<<DZU98SC[VD*0ip15FIBqUk뗻گΒl-p%]6i\:|FߞPYʣK>%u/iU߄D`3S([k:Gj,+vpu롍iFvԁMͶL7p%,z[w?+ͭ)^K,JJ$fZ:YTK^ } ۟ڴV9[ J-%}?q˭O)Ƿx-"?,ZgLxՄiIAZ(e`E*D0s,X1^^=YϾ+1pe?{YMcqٲ9W| TEuul꽘Y0;K3{&ӘqoLղ /6Fn)=ZNb sBqjӾ4E6 ~Lla8ukLwVZ=#=js#in$I3bQ"O}eS#ׄ j=v%?;&n7^0L&Fe9{BڋQepiHgPQs3 /HMfX@Rc5LI91}k?-Z3sFvaUɠ\{] G$+ lMc'AxgbiʣٽV3Tj(a6?DWZ` VVMN } Ai`,ꄐ͘p'`C@?}9U;Nt9*PGa;]D9G8r1rnxg$$"0p].dkԣL,`devF [N#I(G>|zb}[$._'"aLwD\͑%A_K,(}j/ =:1 ὖM!!tYJb*=Of9$lMvnnQn;ݱnÃ|D=j$MbGz^4o{Dٿ9(T ~E2ƺ/WedG W}L#db:Ki'pzd:2#V ڰV>2fa+M>Pe b(!ƺ&+]H;Ac/Ǝif^Qn]ojkkuRoWkǍozP ~3!i@l`CTS+.nՕE,f4M8ƎwoSu}$Wԙ]ă`[sLpu 1Wk_L%sgJs{lmP0_g춵[2H?ó=OCc h<>pgXpw%p}Lòtʼ(1_ɔKS0A61`MZ.Fbnj\_-1:,#޵Gr*AnP15 Ԉ1: EnK0b`FAlb/{loX3)upۊNg4[kr%~ӲwdEJuK%n6G]yu@ >l3zˁl~б#QNGڷ*J'ԂCԄlEU9O{w͌/<֚G_>/JqTh45rÝL \>OOa%ҒsHb[f3Z pv>^)S$"r!)*DPzb`XZ^Q_r%1o ^L䊁 kK .&EOQk^"E˭Ge+B.Y859Ckc& "v <,4S[f?e9y_@טAZe)9 =SD;=QP {nGymQ]DdZ <3Aa+kꦭkW*5Xq#|#WK1MO>-%)弊!Dߦ~p vR[ oMݼ⛹fA;I|ď:}>zZ>QTM47>,pٟ,E+CbjIo!^"BG|҄zF@x#6{[/Ǡ֩[" lt( _ml֠u>XkM82]/'~JGP b0An˙]ou" x.{m w-,Y;c}ӥuh0+,Fʑ3u4-GT50.y'H[ϔcn 9uGT:B;|C$ 3n!O/hk̉DF8psT>b,x˜Gbm}XkZT&xI5S7dkh"?աSr~/~.SFcXE4+PbM<6 lI Ze`;0P5tSء33ijmj5] 3A,z&PBĢ U)yv..CVzĝ?6 9uuBةsNa]i/ڹJΊ')B )dǒHdT]ҷF̔婅o`tE;I[,8uşuaPc 5r% IjqDA}b=[ Cv.[CBIXC~G(5{(Q߿~\ q|y-͉%?Nk~j6;7- Ԕ)bۋӠ B>|xd,q t y#Pb3 v*ΑyV!7vy[-ޙg8{Xn+& $>joa2 Iꑏ'FcOTn;؄މ[pYtz}O9N4#pֳF[3cjUF-D%YaVmۘa'pp-SOE+< R#Soq4':[ot?[dôˢ=3*t#3(&6ZۍOYD9(R|aDe<)<'WO?{L?sjmAhUvc 0I: qDk#wcI V*ݑ"-Zo!^ӽ*#`-3zyKTaY2"s6G6c#}t8񤇑cdt)[rz(=߷[IK?ߙc\j| `7CeDiÃ7|1u:τWhx[m)i o>iR"aZY%K{3RUD Q,&IZpr!2{]=`OIY>7n8$tUvLEG{b?1a9>1?98b/vނlpNM\uw/9k>46\_״~pu\HR76,_(ѷea(>ԯ`92-<*H}C-~`y}3 appb\Xz!mzZ7a_E9:uj>,78*X.z*}4ۚR[Wj⹤4XFGpYOr>m!] ,jȣ+?GחfljXGX.j<`_шd%>]Y&l~[ =>NE]q?,d 7,{`C4wB[ҫ4Ť{n[QQG .Oh MeUʷ~8vC e Bvfi=z Vb]϶̴[(M;lǡjz-E05g| #;d0yFSalҫ3{2'✰H@ў&Dq/Q/JUEŒ"#τƟu+Žİhc.VDp8TCEīLQK"tC(J.ܪSNيF4%!syEgsܙn꧲R!x/]x]`6,Ɋ^W韸*Gd_=i2ObŌzwcy"" $̭?CN9RM>ً$QU{A|Yh4&; /w%aACG\"G]Ny*㚎.>W"Mɴ]oՐAP3ː́2Iy]FDai{5C5 )ƞtK$`\2-Uo?l+G)ьK<:yA8]q_ ]ۊVX'd_ }b98D=fV50 '~淫W7 $ֺ?k5m&8ۢKJ7G@g%W:!# ҰAxvʖ4a BgMY;xLDg?[X^;gKva)l;Dw]=6 }Q~'aeVTۊ-ԋ4WIś)CXLIz Y^ykA.v['䭑*gCMA G],|gm zzju[?Eف]πh~9M>`Wi*\>2Y 2!v70%GW~aI?)xu[*3DlGRin2d$>B!ɥe$ [ᵛ6dxKkqhY[|=)(H1%gmzYO2s&[x4?̚6](:ꔼ/֎~mJw@G1& C2xKK:mWPxݣE:"F;/ۣ 'yjKO <1$Eq7TF9 `%'24A{{x/`2>xwg8]udoڀD^7,IEo\fw԰CMض'SG*Dsc*ѩ T}>7Tt>Z'; C!k99k)&v{k t)|CmU{UTb~/lj8Tw fbS>ˤe8",I'LKv#Ψ윐9E8X,<Ǜt$Zҙ J~PΥu6,ѰSR?? ܡWB{m X!V5ƨUv@LZ|&VL"Hn4kI2*%GT`ޯx·GRna]z_mڂl^NC_SxEm*Ϗv-b _O.:ۂ ;[\ )֘Gb>r8+{AM;ax+Ta 6@gzp3ܥYBg'\T,{y!`rk9Y!cv*10ѱ]d .4Nؾ&9ne(ԊVH) 伉7jSr !K1^ֿXy3Q JKzc9lW@TUJ0?k=ϦQ0-vXf6ΰ -ύ*3mF\z@MrNh:9L4QwV9|Bދ`-ǵ g49eniOL{쓚2f'wD1X%wЃ]]0ԁ"U=:XtHcڳ==75h&}堠bVOIe x(V/nv:r/ p]u>x ||zK(Z>pjcNo(U+.@Cpf, )8/|` LgR \|:ȍA F.W e.9?(lXD2;Nj)K b1[4q;ӺzGGDmLQ?f* mZm =ceAg~-:tQ1y2a4*Յ=s;_QsYr@5!Hʃt*FC:Ye{V4}`9U8=&8_qMWU1~Gf~hjG%ig|agR6k;PđR% ߣljVbPZc5;+7T95#ewk HI|u,6!&UD^5]d.GI$_aP>R} K6CRfgdWtsWf i6!HJƓ,'uұ2V0Z7LW)K{QQ~.C5^H2w#dO? NԬ0%5WזP_JM PrV* PPjKomzU~ԙܤlpQ*eev]" mM5 A8_sJBQ7罚nb+55R Di 6iy[h6 Ǟ˦=sӟ[ S(?6L^M+2|E$!k^/+%}Eَ6Xc].]],!BćXHWL7Bx\E>n.JHK"6aS- 2Mmqcv 4bY C#r۵a!*]u$9`nԟK\K05~D?Nq *e )>Em)Ux!)X \Ec4y<R˪)|T&b>w0E"0qoCŸp/{MFd$L2Jr( gD{G샅F\(c$j\;A7^P oE@a]JGY! G]Vq 7ms* 2j3o-k~UwHI/?Pnh:ܻdf!h+n<%nzDw݀]gcLkO(v7P |K =DYqJ:Rzt:/6m"G t*{)_3u/dT~h!I7/OWwlGE9Tcp!}z'D"c4AWO;Z+ܰV6]T<29o?&2X4W8\x"yȬ 0y&]<Ɠ҆'\[9G>d2~K1m$8Բ`lжCtu-;]bHCRDpU~~öz'( .L#q|UՏ_!dR\ |i],!+[P֪p\ S(Bi`]wZx5l(l8=v]ƳZ쾳g ~ u{Ǔ.3Cc&QZ'FVk,ZƧSOERk<|u2S7i޶% 0rS)OR1ɹˆ(wF Y˕mL@IϖKbV5 k}ˮJtD5oaзY14smY?3I!j|H Y6:3edeҸPW$9Ɋ"\9mFqE@:'~OUwUiʳOD)^Z_ӞMͺg+hrY `I>v3=?P'(eJ#N .vܕ({ @N]D 7/ ߽sвK@Js?duiE,VnQi=0>lqHu?Ǯh-:H)<-2T=#eV7N+}\|̞g|fQ&ٙ9zMK'mToP*͋VYNûynClhVôsݯ`d&X%ͰM:߿\GtD DewƖ/E[a[LzܫB* 3r0ЩbW>%YUZ8'+w4rUq+M7I Y.E%$~^; Ub\ .`^l-ǵ[P{bnGPD ~ ;&戻<աKӐH*-T$V@8^sv$ &viE%9̝ʑ>Ѥ&ZL,N-3LzwRC&3Ҩhzc%[Y>"Q1RIi܂t"vmfG&>z$m| /ϒv)_ذGbevϱ^u,ҵJ#9#M< qu,>AwB@ Qߋjul[`0д e9?`Yt΅'X<&yP@` 1M}{]Jwhekv?\ŝr%eV )y_Pk>_T@zglƈr Edc_&L lDӞ?ӝ+mK7Me9K(pѩnbEDɾ~2(o+^uc gѠk v"@.Lsn[xľcڵSӓ #ώXV\槣r521̆w u#S` %5m˷!p.e %/ #eA$䫘cۖ.g472<2𫽧~BM#n @y`~w,D=_%v.s&q(\9 ZQ&=/ <)D ; OsS?^:jbHQ*"QFDi±\470(G񔺤9M/ fyuwqumB,yUBSH!6CIvO 4:K88u"b9$"ŝ|} O! .fX48IԉJ>3u٩N/.?UO4bq6y{4]4Jb>!5Y:sC3SEFگ+rkؤ@Z9lZW c<:֟f4j(Zy!Âܚ]5TKwd{[[{kW%}qh\wae$v(`^: U._.^l݌MgʉciJ30͆tGWǯ'@j k7?h4b5vvﭠqW ~]YX{+'ٿswZ/9'\sӒ4Ihs:fEϪj2*u v/Nksizch4m*vsTb<:Q:oO 12.{yK8B~1|wV:ɬA6#KjlF=x7Q>({tYzgN=b=WɬM6'IILcXc=8NLGt; pxe3b j33ICJ^?~77krnń4267[p~:_,78.#lh)TՅP{*ć.͋p!wal'q VtW8Vu\2 @Eo 0!VN_9ԑwG hf|4CH@)3W|zkt޻V_zTJC`~Ul~N\\VM`nt-=NSż죵B(#, w5ŭԕ"2u$,U \]sBuJb|Zd=>C :(ЩbZ r?n-TB/'p(|_dCpgw0F^oT?FFF9z$P7Cl^ɅKGI8Cap Yԍ ֶGѱtwWB]?pABj*&\2r ոɝei# akTf7A0p-z5Q oD/%Y%ŋE\i^Xl9آZ.LNqd@ar5f]A@e2=D!Y٬< 9`X߀OF j+(uϜ5K8.t׏$ӭb^!bAN&Lf^(|nTU0APSĥP%8H\q!>iP08%dAFB}f?;Sr/&빫(x_"8})7Tx^"ޓ@ާ?7K L6zQ2;Y~r?zDk,~8dK|CLS#K=<ɧj?asDu9TSc'(̚gu5$-7~S',˝OH(Azx!tCn6Ӕ'Ě{cbYI ((.^wq]ݢpsZxny=sVv%2^K5`vJIɉV(|4(UyQ_Y4un ep=5%ōb;\I!48:A^ӏ0E(^P7 a wILǸ)*n4HKNr"x8@3\Flgp^?"V֧1]+hvSGd;/;u$! RcĮʧA$I%D(z4K'K [_TqXEΒ>%6X!p&ZUzxJr5ݱΩ!- yr[V׎@~OxHmcw!XXWBwkxs/([)ouR}L,,?~uw©_ `tHV2ۮ>4&[ֹܨHQ(~i%Otch h #meV-:OgAΙav8t~l达xߐSZ_Zȷ㜇?2Gd2s#>9A:…abnTJ ʄO $m+3&؃'‰>12HA:;&˥:ހ6-޲!7<> HJcN.|=WE9eĐ%:S}*g U(krU5 6FZ┪_fdtj! 5J9aLsL3~']}_m"Cؔei-@E)OzKf 3>eGZS9s'Gy ~ yLS Td.r)!_HT$]j9E#S~hDP -ouBM=w֊f:+x4EVzѿQz7'^l=xqpTS1(&KY81cI-p :[Cz"d1ꎮ\wR]ޠ,"3~{}&#~nDʠI}Jb!Cά8,tZ,cü~1yhwУ / yMI4L&#i!I5ɺ en⍣&RW:i'Yi҂n:eX?Bq 7&a߿7S}̋g߲V]H8^Vg?O Q/oW `or큥Qed?C遦+zFdЪ=meG30ZRvoΨfi;V":mM D<4?S}hݛكx(9Ξnenl[fZ6%H\It@veymkz3*c\j'7bB7TLb:n+KQ՗B|+)]^:9P}a>~ל?ѬM;FfQLӃ &A1Ztҳ/ϗAlF|9dه  |3$L06 =F35A v|F \<FbNFm0*3< #@ 0Ѻ*AO_ItaJUi'N.{>fM&±t)^^| 3*J@<8xtU\q5PNR{gR:ظp?䋼ۿfB'[B"ga,To|Yf,L2/ύ8VD.\fdg[&ў4דNdj[$>T7P_\ZjCmR-(XhH p_|=E14vef! 5÷ 9'pGIaz~DY5#CИXqnΥxq=Y MΕ9udLܾ5XcKLG:}JZHQF@t{Zx7gygMp(P9D3; J&qhmL`0FDam|1E:綫/DTBԝ'u ;JB"BCv`Vʗ4L3gxs&XQIjV@6I"CI7p2%tͅg\d6jV{D pKNjy(u- -(r}* ZfU/hSϦŞ)iut ʂe[s8`ZFgS\~qxT#G*ҿ "\|_|7C o Ul •c-h2VΝax C)#{Wސ'lXA1QK9]g%_t)Yl@Ae^ cnY$j-asD[o QN0ѲӸ䷊Q*CLToMk 4B- !tg akB֟EXH)A5"}%J1:I^(AMSzY+f}=!*hWΖ:c,Xh0MU W*%=iL){@*` 8 X"p>𜮔Z%ٞgL8!6qd錦!J*I=$ B̩z\!!2DӬ}˪ebBDZ)3HJP}R^!c/MuD9e ݻa!FӒ>.I'}[WTJ[-'g΢REu~uV^?J\3tӕFKo:{q*r j mmG9-gs!kD񠅞$YoNi rq}HH):A[voK5Le[]DԤ":4Zh3p@G8'e=̅}e8ʅo ܒl,cQXs1yY3#3L=Ә8b)>Fi~§UJ{%Gv*/&5NF`]pHn*0ao lQgrJRѷ|UdGPKw/=\=Kj>xMz(8YLR!oN 诩 昩T+55\xmbrH!Y>yoƎ syMX^+xF>>m&Wg?]i/M0 ]\7eVd7#U1M.OaTSUZ{܄Ķn`!=/#gE .@'XҀfi+e_4%Z &C?E"zD񱌧KV|\7;_gB̠FwBy y9)jgjVqwtn@}#\t\8CXgn:^۰ѻD~%E0@{Zi 2"}_ xdx) CC&t^6zx>>e5~ЂiH@}Ge/8`YVVѨʶa; nPIW F(2 ބW]el!=?%lϜ+!{a0U& .uJt-Ԅ`vSb߬ibA!l3f=we];aY_&X`3 itmzdbRBI!~E%8sˆgO.og3Dnm{-kq@P:fN$OeK]۳OvP~K[6}aQEFٖ?"ی{wWJU M_zBT 09kHI#\ pd35=Ug<(g2'n},Pa4GL-֘/NB|m\.aI_(k 0FL{:'T)AoE{@ӛJp=^a(Vr(uJca6Y V]ӓ(q#n3!b@^ U,IgmFп~8Ogk0öu*n٘=9~3R nY ʩQɩ* 6?`e^dYGAr64' r$a+ 3` Lp }я^%YMbmr8lxO[]ڋ{guOT8&Lt-a_2YavO lӞRՒx8`Gץ}M'$1Y"~iγI 5=WR\]I3TH+D颩1Kbϸ">(OL'll(oJktϞ{!KNwZX ]1 BP`uVMU^@ba0fJ 0ȜVVvJ)ъu^ґ()%˝p@ڄ fp,M|wU8UKƁ/ 2$-c7jGɯ}*(E]&f&nw laZ ŀg}w,{dζeb p*㙨>sєZJPÓ0`?u* FL'nÄs='c%8_8A)87 ^iFCL G,^B*#Jh}N)yҴ˃CzcC6nnh Yf-b`wDͫh?P>oP { ܇08q̹sM&óAew&73FźӃ2>C\#҄|QcE)B>.ٚ /ᵷ_M[b5r 3\ j8~w'\i,"6l~;[կqˀ^XyՀ e+1Nxx=$/"˰p+XN'kz h9\Vz>u*:oH1CZ'?R, ib2VkreO\}%?I*"ZC+ *\ K:J'L=A1?D>'%CnͯZ Vw؁~>6&3-]T՟Yţo u,(NS`lL&2L2FҬn=M9l ~30NJgD6'sRޓW{=}4ǜ%~D7e<@<2j䰙b*g8vtP.8h *%P h[uU |Wњ{f\*b$8-1e8y\f&FL!Çb<^9E.O(f'ޭlnTSB xmI"\rN{*a1D$Y{|Ed섒Bʵ޲,omCkIY{]g;o:H#MҀSb9 JoIҗ`PKi<%ayn'PuJ [zC |Ź6MO̸L𽆷,Ɓ Z0TߴM4;< FJ +uN@6[VEqlO}.e椱hʹ"7xv-G 2DD~"/Ɓ GXWčL(G.KnB$/^if M7сWjʂaOeyqU;exǔrǻ>z.\BǢc?m%q}g=n q5+'MqA>+֐UDK '$@O:0*pעs`{[}G|Ah%G-F7]baz7~/ґ:#Ϯ0k1[Dk~B #ݬnh=+6R\K Ȯl&h!'3qwQiƽ8@X!_Hl&ƧjS&\ɤcVԜ!7ܿuU.^@*,o ,}wqjPb!3eeQH3,j(  ?TbUs_&i2-!`ٕa6+[zͤ~"ӛ P󅅛|:4Շ7sKMIX\.Bljp6^,0| 0m7Bj)>?kPűFr+5ǂUp=% mijħ[S&Lr G&%ڙZDpD%y+3,RHпkR;,CHk)>zxi# h֋I]כjD eA.pTF˜Q$Wijw:-d輑u)e@'`\:AASˎK"86l;*Y,Ck[ͮ{+)>plxtuNܵulnMTX|5.! Ro$ t,*#3z}CmɷSBΤgɡg7pBpruhFHmwFq]}S3{fFj)$"#=*)d%Xsܰ2)p.O znE\/j3g,?eT8@gG0yOװ]E2j[%Nn9+լi zx]J؆h(B!xh-\QQ~q D: N}e%ߓbNNȔ͵+rU dH+wv~2"F:ChzA){'yEϩ~[75}A{ޛP>6&cɳ [W?L?%rP! &q?!n(3gD{%0w!x"`?zNwC R~`7T֕{rAYXʹ<[t!%Lᓧ!VN޴PG"R' PXRY?%qȰ!uN}p`fqL4NiMnN 9Ĩ3 gi95};GT7+.l0M?Ӌ&$"umQQTZzZart#IUnp$Νic.@SG,P4G8E֚XR?P I_D9\gå0Up % Rno (pOrN|]l`ƨEdKKelM@4MWs=$y+ȿ(D (>Y8G"⻻*׵bbougU .֟䵡0(&qi}}GkԎhȌ(Ň[;ѣXhv؋!Jw˚auG\1F*xs#0*rxh.JJ;!]Dꕿ E tO?㕕&x8M3Ҧ~7O^pc$u4KR=V_m)111R8tW;Xn*u*럨Pt]Up!aK퀦_^Z&shDo!]6:\q[$a58nœe@N`DG0$/9*-%Xm0{o£q0YXuj{SsdQoK aƥ"J, >8o@L6Ii ܻa7^ȵC}D%yz1qɅ_FN{Tac8<>`0QB M̋rDc׫6 E XzB< X%ɵ-QtXn ХچP!ߚ$Jӫls5 GBR]k؁m a#5iQ"@ϰ*A7-E<7'w5xSo6` Ɲ!~4^1/ i)ŐNq,x#Lt.lC#3i/;@:eiƦܽMvi-r/0a!'RAT]sCv&c"ơ=OE ¦^ ӯUHXJ~tD! 2 ; hx8`Ld}N,,.mVQw>9Sԭ.RD|gWԓݺmtl'Ʌ/zPQ+ON&Q04Li&Bd_Wwd&Hcrq3U{B,WMI| ?Ҹq$>rw\ U5ҫvVd4ߢqP24NNe/"?x5 3lTHƘ WA/ngnX_j7 -T#EuCn[,6/ETf953]ha02թ9%'U̥%M9:!5F+ߡhfFC.>bbBڰ+ \!!Qh9 򮈝Uhy,;f0ҊYч1t114YeL} B?!&7d7,'t 2WD%76_5aquvxws˜תu&;ևoW(V;WkŐW%So'ׇ@J1 gX0YO٭#u|lLx}nVwݳ=4̰ZFcX(%Le%+KPJ5+.G:d:WJ۫Nsq[ b-9{ro!F 倘cuQV3 ͆wRM7E:n2,/`| 8>?Idu5f|ڙ6Tt@`1/# L >>dNfqHbm] J:POnJ*'k=i vP2HG3NAc;Ϥ7w۰BN~x^E,^E@@b^4^tZ/;|6KoAd*xw%MA¦T%񓃁qND{`gLbq)cB|^HI‹A"'yr4*{rmkdQ-]YOM;6O?oK _hЉ{s S 8>;Dk=ᜓ;6X85 6ٟ YԱ> wСFDDGcv!iɜ. zΖT]Rij.ѕɼB+IP6d_XC *=m%?-x&uU]{/X*'|.r\ϾSJ߿<6#Ӫu^[O|kɞC*6|<_SUaQdcE|o@wl_J=xs;kqޞFW&bLY]pH#"\XG]PHJxy0ڦ{1@Pn"}ux`9:x)8 sCUԯ~MqQ wOIFXбAbRsP# +5(IhO$"uDhW7[*"XMvyjCIEa#fV^V%Dsߝ͆v TpAZ[Igvpr~$C7$D|njaʃZ%gujUaM*EDEy7D'Wirj%#"g23ͽH>3<ިu:$Z`KUde1hU|7"bI2CDb,]H=xGUZ5_7}{rD=[}$DڌbmM~ d ."#f8]>Pu_91@g{jREt\ާi鮗3ONardƼfח)hӾZڨ+|8N:Lw{/H JsZWae]B!$WX(6=F<ܗ,3u@>g|`ze1j3Dׁ3 ZQnϴXD Rp:MKWHH""s]m0`қF-身%Tg@ֺyqx-:j$E8f@ 2F߱=.-W0WHf%*|pLK?NqlsdT[@7p fFa=hE=4Fet9wst`#gZkeXRlshɷ] {J-J*g8I~A͌CA~HQʱX2RK&ɲ7esqˌPa6IMbu E"OBQp7&&:.}7w|.Lvyؤrt8}IRznKQFUIڰ}X j?#<+tjPwM{x3=Ejx#3NfnX8:{eR"qQ' B_Ywm Ub@QZe`nt:+2w/EʘZd_,Ù |ip$S܀LG//{lۧrdM+pX!n mN7]Vࡼ0{'{1/:* b3NBE36ǥ瘽EZ&"BPݙasNfm,>O+OS\z2ڈm8DjCz2x D=$>A{.Ff9O6/YYR exoV.?+ͨXB0Y!(MkN7Gֈpvې{(Z'䈢5 Cj]|:9aIzPB]0Xz@PfR}|JU;3fm^"*#*ZԪ_FD׀7:Ӌe/C=l^mH!!>;ƃ`Ĺ l<8 iep\EB3c9hn2puj@3<@ؾc`C1a5]9%scf\6~Hѕqı7j "ߧ2OW]mFx N`#?e֊D>1k!QDE#J->|٦n3J#ƙvrKE7KS.֤yb|qT&?3س  2+Х`γ,2G ],D18500e*=]~6?g|R:A3O0wv'n]nxTle6DOCҏ~c{_ Z>RpxW<%mmB}z~c]zfq=/6We?wlcq;"{d±^%Fy՘7{{W~ /l!p Hdu;-g&kT5 h5 wÆRQMP'x fVt~_[T_2GV'~O(աe^s @mo=7l1/D3JP86TpE2L{#+; Ǔ] W͉r2+"v1TdL]a0FWCH-^Ujȝ0dZ.w NQu{I pCaO TfMIV,gK2kFg]F9N3VI1k9"QI 1|xۂƺw١O}Τ)t<3Ya(]`y3 \z[.? =0'ufW_q "̜׌88-qʔډ=!?7`ǂ`5}QHxDNC+.> *ھzNr> ::}Vr&dCXDo?bT7T'ir!fPo_6v.d3\zwQ4ʒԲLE-Eτ{wxz`WDk8 l_P][h+Sb<0hpp?ǓONVTw68ƽX9̠5ܲΐQ|#Nk2!"9+mQ5^B"ۼ W L  a)z w|e-d |.R+њC I_RGZbҖ-[B}dFh(}Y 3%ve e-=`E&̷jTXx޿B6\;lU4`6SM]a R,d%w{ U}SHQ3!&LwD]q sbJȿH|n@4O8}AW$Q@y#t6Sc<nucyruW~0'env}W 1HHj几?kMM΂Z__̒5?]FH8a l\mGb<ҟw^yd>ӝ2-U4{ɝׯ!o~'fuGBA6)rJL˅Iĭ<Q;uQRĖp` 'wbhw6T+^rk~y{5 \yHDG`UFnK+7S6~ԸJx|7 GOKr>G;J;:CZco|.Kn>zUF=F/psfZLˉ kedA8ND^|?FYa99Ǥ%&,?-$n1h=5>Ba^L<Ijv }ܞ.lQ@G KrUu4@(1бl!v $ý̫͜oN|~+]^o]fa櫕st`y|k%Co&ه2䗎ghwNA?X6vO]Ȯ =S=Lo;d3e]P|NHþݮe/eg~Kͬ"]'jaiؕJ0#]qP/38#lQp(b№;'x+Jn/51ɰZx~dbnfhex2}o-ozS=sk'8o[l46i3H$@BU*L řimymëb;[OMŨ{3"b4 qLrΉniMhWAxi}g/15jnWBe<۳/ /1 3VQ$I^:O"׵X>=$6 IwVC]PV?qj\s~*}Li 3«|` ܞ2?k}/'ir2>S8\}0#zrOOe4:^F۟+Vz/JAl@-L/j H wF+ӻLl;R<`WXڴM-"H Zx}bjBTF7< %d-cv@LB+(}]ؚdaǾ|EcO1+/8(;j]a .<M&TK3f _6_<2vSu(-D+ǽfV[]$ĚK75?x sK-98.ȣpCEX7+(ԟ<.!A)o:Ýi<30q9Wʲ¥@7JhX)ޒpx~Gz穐 pu s3`?GXj ȥ; }- tFrTuMG<S٨le&Zd1 h[G^uCpb.O9 x Pq>R]b;P'Wd҂k3q_\l(#5K`kU|Ȧv$;Dlrf/L.dQR `hybIY'lGDڅCqe L-uٽKv@7Da,5;_q\Yk5%}"D ]hD3sg^S}m^}|;0(ܲX ?FD y[F<~FR[0i/ʞ/;@jAG^aHiYL)Wxhid6E)~ c OR<~?Q͜Չ%||:oZܔ]zn7 oVўiD⬜bW {o?,!PerW b$ê`{4JXdFU3TvO&}6X VgZij&t \ř)L7M263ǔeRb/-٘6#)+T<}$/imx&:0khɔG`3vw|=o. aٟhˁ,=0~rpV`QٱSW'3[奛; ̧{bw g%)~tlTslڈ@ &$u]J /Cx<6+a't{2ٛDg>9AO´Y.6Etdz3GT~+Qh&UQgw,c: OOXb 1q  '^k0?m@`Қ7T~qq7B#m6xFE6!`% BW:LmHcz5#k.iG/ >?HxdђX˕rl'σ Xe̚S[PG5qYOoԒqb0~+GD6w!Z~SC"\=]1XJl_=Hf$қ,WsrgҗwgǗڙ'qe3 hYMtf{1h|j:m=>h.x.&@[=ZJ,3Wj5wyXfmAq@1݇|5C}~-#lL1?qlhD셪6.NQ3-[瞓~$ _Ũ6X#(2đcu" Exـf^h8ֆ紝ɋR(5hO~9LhՊ4Ş(I}!RH:7|"8!VZ,rUx$k :[i:>9s۶]vno<u3"lЀ#9]rF&H=DqHVT w<[I=*K _5p6O0pYW{'3-MUoYlxd2AĆ񏲊$ㆪ(*s$Go}([.`1P ֭AI(?않v]/:NJ#~AɾIr=paN'"& *7 5o 5=^ap]б\|r.-gd*o1͵J)Bhi;-jyjf1˯ A!-WtѲ |b#9B40~~ }ݿ:.{5s[{JxqҴL7_uBB tT7 vm0US,V-kurw|* fig˶vkP<3}~=˗L:, 'H Ir2~ՠsE`-'X1R5^#U='c S" 7~dIu_*n#M56 XG%ף~Tưd-iig`&YX L֧ҽf>% 98PYD.6U4<#0ӭR^l'9G@M>XJ'EK8YsNc5[;+3"5udDr\E+w_=;Th 0L3l{hWDeP˨הrڹCJ(A`P;cuC`xkĖt"c7 \ +EP7=TQ ݽ-W-\ 4hN65eS׆]EiT=7^$q&乹i)c.B b8mιҭ Ju~;-^Euzvk%Ȗ& kXAѭlWOԙH5ijmG㮫7!V x/l_ V/I,u`σd~ &S i;!j~TvנgUxl%kEYsSp!=Z WԄq&p|ARY_шys"TGY~V0ٌ#FoޝF:,\e xgr[5xX/{A˾n0Lrz5WJ}b2 ֽ+OogG)֎]И t ѭ-V5*f^<84gƶGn|szx^ޫ- 滱+N > Sr1`| )]Èw?4F.jM[$퍔l:"0),('h\.DR:&Em_!c@ނ*+f#LVtVXE`XE":1N%InDʶx Q*<ىUnj΂¥( iL@U]I=Dž!y%wDdLHD_[?{HRY0aXtp,r¾K"0,P6)wYZ^!x<^߫t;-`^!B \+.$D||R.tU~iAG1Lڭn ݺ}z{ -(*"K+,SA 6"USG%[0gYnCggw䕘]*LJQ 3N)] 5= П{֋s ~I256vtTg.,kScqQh̘b9hlCzH#~~6P<*Yo۫>U`ĊpT֎ {;~K[el/.D3v_acJ}0L=dXŗn|Ki0)f8foN'E2 }SJMPNE{{,Xɏ)g)%LCWؓ0ꡒJ~ὥ_' 4B._qLޫU7bMIO"=lrr@U ] ApƯueѲ 09߫!{N+y릶<#ۏۜU(V"v>zo*OK)g8yU \-9u5h?Y'8rbTUsgID?c& > {} Y-2Ϝ#4%]Tu}1yMRm0yŒk0;PcmdljsޗR[u3_dp]T϶kND j3}]C{>cͤ)b?Қs[]<3t!i_A[om5^⸵9b!pYpYsQ1=4LbdG>w.\tSae)!(˲[|qMz˽9@;*g/~ \2X^DN#D[%M?BJR!k/2j\]'.bo! ːL5[~~"uƊۜɦ:GTE0P&錎]AUeb:@+dpIQ[Po{< ;9DjwCB_+H\;"X_:(ϭJ$+ԃOGݮW/q!eT9..L*O|so/BeeiyUut\'9+1ufCn*rPD^;w5ъX uxKK8*`?LPȀ>/\ 3TPe0>}C\9 );GTq ;)ri(GEIj8Y"-b]ܟ qnS =N^y<åȓ+lbW8O5T2t҈fҽ]VaTXl1Lcczp ~q{;:d ,Lvf4Wm=Z.qQ5"X .tqA\(d؆782\+hlȖ'B^ > /XFmB]05ne|eR^q+?|$?􋼕M])}Vyja0&[fŷ\Ɖܷ`P7zyRu>Bl~"" mοəUTN/lpLz̚q߫K_aww/Wlf(+J|NDt9pQ"|) .1 Ч& O*Ub^'5H%Lp>ʮJ:cZގ.]U]$ZnΧao<,$5_}O\[S`]G|#jck?2:5^!ZWM缆:ެE*H'*TC0 >gK]Ђ=UYFov?FFTp0ԍ\RLIo㞰˓Hl ,1|;h]WwnX0N7 Dz8rfp5#Uù0JGZCnv??1hcN|_=C*c:<ǧ^ĽH:Ƭb-&+#f''3U䘚MH؂mQ`Ж4 1~V|5o5D%C7y< D$"#! b\."j:Ł= zn[#2v ~mtCDO]O(,POM7_C/*,Xc읮/Bt6/DvÌd4CCh?NE5~y!WS:lحb`AxYD`+Z=# ؝_1kO8,RCan#ߣA#YTtP`U3?9"t Oz^{G IsAJ>D RʤLbPjex&5 BmאPA>Dxms@Xo(:@^˂Jo$?I$we̯2= Or9Gr[6glnGͮ P4yxyVA,^zU +{ht,|vGB90( ˢֺJU*Vd65/X?KW k=\[څx۔c&zq T Y3r} 5m=Fdd["v/ il#rKE w6+GxVl0VJE6}T5B R(΀hѢε7G[l4~ nO0\sb4zA3 Mmb7Z:TWv( ݼ#yG͙[)r?_^<[;O͌=+CQlRӫOJGӔ0v&L҆7d-ը*53 Ѳn\E _ V_^ʤG5=|iF\1^=x'7%B!Ꝺ!:ހ,BB/9LNriZ+- h-M^r(kQu5\e_}ނp~N4 -C`_kޭj> ȆÑ>Fe}EK䱓i/C:SRXag =- iS?>{u- L#L3 " IƏhbcHЅUg.o1MG f!mFZ~FPg5^/lQ9QҜOʽ TQ{3X.ϥ Зk_ɄU > <30:/NFuYC])%mWcHZm-CD(,KN.(2Iah+29mY0k٪O͍_@G]o{JE\ -f#i:0*SRmG+49ϻaFOdluanS$2R/tmf~Z}h2]չ^h,PQ~J[)C$Gd Y92/;]@ZM懚τ̟KmwQ F# /J-tz{* `w~µ[) #G[Z$}Gx%X{A ^\5 Gq U҃&cڭUFڲ<zͫUeKU{^5V:XӍNF#d#`9Rc]\^1jWEf=a#KN -ɕ Vm"yN˛=p#<󦟱t QQfkD`vFokűj! QKe<ס\+JU7,'jM~,]S!H;]=9+fy (R ųɜay .qZZ/tں1&Ӫ;+@u$&٭C/{! _G:Ce{ˍYyWpcVg pگ"@u3f*n6>N`a4+̻`[\O5TOF6pfAvb2sjOWEmo7tiHjNЌI#"N` M{ï8Cm|-]S9ԴˈG`AHE/֞KW:qT w1U=).J%Fؙ602ZsylH7Hs 2Mzmh }-N%ێ KDޕ-uʾ-t=8vMv_D<1hNc"^4iZ v#vv [cbvryWPD:뛦f*y}: p.mXsϿO0/*.=|aaHՉiçsɟID[>D䳨5e"{L,3iOv-~DP6.BRݥ8fڣS3rYL`qB'q I9A QTWg RVasԸ1v&$)\z\%6D~/SOu|.OoQpU*eaP3~me/nAJwTēLvkOB /%EbW{xA7Ӎ0yn09`p6 HK/UynrU-u _7 Za !Ra. f7kfa{@knIx@`p=|彠ٗO;| ڏ6}=Lm6\ wR=7DkDP[/]RI! oV'bUCNhboN;s/@ٻޭ;hO9m];dΫ:nCoO >p[<$D2V_Ob5z lg{zu8H)l@qey:z&E!B0zDp|EJaM]>e!kPī"HZfqJ RV%5 mN'uqsERq «"ńrjF/rM}bCeKbA^Y%}|G62(J~r< mxg7r (:MH&Zs#˂ c-Ǘ9ϲST+^R}n9WNJը*5v`6Es* E0R]Kp337/F&s^8@ g3,a/x-s<52jHY.償v;/"6Tt8TGPlRX({2M{W]lx Ɯd CwRm 55ΘSbKW7&K.!#E b@Kg;E"3jryc*=1JFdmg >lǺt>P)A,ԲOY]#38"i3Eo;)|:*FB{~C_N6a @ؽޮCsJa2,=5 ]Kӱ?m/JTecEW23A0~11t1Y)a6ȶBJ I 8(G8O 6GMЯN+3#h''+#Ӯn@[->2qB&Iڔvbaś{&"cMtUri8^>(aqy-o(mˏNs53TE<P=Q0[ ܉}j/s)Xґ,׌,#(X C>|?U',E%I?A,oMINe4@z^⹮ّ.FitVƜ a難şy`=4旭 FP2oG%c =LPDS:W4?%{Ƒe'J OMx`BhgxdQRjzĔi.^#K]ސ~#krQZjwټ%KjT)TdBM, ! 潿[ J"~B!;򟪪" [ŤY.+RpEJ2[8 ~h_*VL";! 0A첝ow[qӼ&ʌ֡G 4dcu 9t`:!cն NO44  Ona>oB_4Rk~8.ok/Rx6VLGX=rMfia/s̺I}{! ZP ѳ,'q%< ~zsB %{ޔrG7-VW]$^H? lѥ "Z o>O~Ť9<ͫ]J|2}L";a8, |NbfZ@ @f!#;5&:3Ԕ>< jO7u 8\`n11zU= O&VOWFrCzC?4Gb-s\>.]k x&\!XT"檩rulG|G& X#EG ZTJ'k ]{2B{ٙhrx"/ByVH^çc~ܼx9$$t}7;d WU_VBC|HBY/_?sN_2gzK;lz]IK fn4{'xcWTE=%>.뮈(/LJCvW,ZWbKΓ$soxx'Nbx<h%kuMb{k g0(8?Hnossp )Ub33mӽ] ; 4toY ⥟{pHtl,l2:nֹc8-)L  042a:썍SӶE571kr+&& >ÕD7" ,(H(nolt,% m0 qN'1mWKN@B-Agw./fMR%U\1?> OevP+boCQ23:݄pT3%;4F6C ]sjx3l fiXШl˃x $k-[5χ )0\3 $ŎOQW]rLC}vL' *ap\X@YˊиPfB>=cK#8;d@%ug.bI 2c{h`F2dP 7 A# 3f`u A:x L q_->oNv&z]6ws005ܼcїFŽt WK"ILɮ\?*Sf[uR5xn 㟞 (bC@8\9!4ٕX|Z>׽30W0<4*%`b霜):f^}LUdksy]EoEVv߱,DWX\<coRs&PMc oGݦMP6Fq(2۬Dd)$=\,J|=8DSPͥaiֆݲՏ=RB_n0)scؗe3IW̱nUaEr]Ǧ wn[_|v{dd| KЕ4[TI9)4e$h^b++FMOH+0gt;Z?+eC(X]Z‹yFcF C7>ԣa05B99B6|wEsUQ/?Q( 0izm~6Lr._ NML8, +P(vcg 4M̬bg@%z/e?Y--' s-"F6Gש0LϹf?C*AѶq)FQf=Q/,N6/= ; QJqES= E^JS4}YegoClkxmS~v'3%â!A;sۯQ1x;%Gdca.vB66%!Hu TSוfcmqBC^{<}S=Hp}0 Ϊ@,5|֬ z.6?qC=lTh6-fm:cuGZ md*;3l7'?2Ioh/–9Ur?+ODڿn9 ~YoΰyYYd&$3uCbgeg̼Z;K}Ì#|L򻕧W%5Oodl ;T'v)[KMO* C"OV=<}ӕȸtha˲Pݜ'K<*N !D.:vg<}+K(dV|ŠZڝA>.POk!05dmD|I1wiiͫEB@֨V',v_ZV7 l `n~K-C.P%g.={l}iP%uTg> wr(5a3>OŇ.PlX1i |O3T)vkҿLXSkafș%WKz)UЀ]`ޭGN[Uܩ8~Or>AXu&a x=, -Tśd(֊B ` cAP`E*MjU`h(8p CÁf\b:٘[r47r !@۷(-kzMvCMFWc4$GMTc zaft]}F ԜT*Bt; ^/:Jآ%;-nZ +EןrfiҐz_tk99[׶jOʁszc-s';f 0G:eDꖴf+Aֽ 0C,ѴjNey>axX'0(fÜJ09?B8wQpys Z;H毈7PjPNj"S5rXhQlR2Ĵ0+ $sWF@ְّj00\BKpqTg(;6Jڜ 9Ƙ#"ʺ(ɶ>⒝y޵#,;Qmf]W5 40I}h ~ 7M N aySls[jxk `=EVb=nOݏl**׈V`)cAs*ӊ_,m Pk1E$p$`FU,lNh h̎6|ց(AY}:y'V˗~n\zj^xh@\F aTRp"72f$5'#'j5Dһ wv)hFm]s!b9Th`c;@5Mb}_vwt-^K >[N'Y9#x><5Tq=k)Ψ>7Vs$?b8Y6T=5 y@V^o)_RO`uǤN{⌆iVH)*J69k Xp H~9E7F5krؒ{e/8hBY!*IcAdYm0C;rL'%h q(P*VKOx:m#ኟ:Kh֏HêğOOJJEf|uebmӚX+L# 7H25`IhY{Ð\񶤠.ymk6/ʣ7VBuZĹj03…}tRd-z(É c:G;h$Y!xqjv}2~5>OP.DJQ|sA1hG픩m_O*񃥉;_uл!־J;r Lq5b3qe>$dSC)ŕ:!  Kr)wPHO_Ex꜆f!g] ƊB1XD-/X Cqe5ѵR - \P%~5)jSQlgyɚYE8Q;ʹSn]r6ÉP3]g;Fֻ( 8(+ j&1X3a3۬j!,:ѵ% A::[Дat5SۅN.JJܺ; "lNg.^\򀅻ѳ qfю~^RV,TYm;;t/ B0@L=M c^97ڝ-1y\K*uhxE/V+^2hpC3+S R=/u'e1 Mm(kJwFMxSR~*)W) [-zuY霬M٭#1 ]X{uX$Svnr1wЄSFuMxGR{=2Ev}RmYč!=zYѥ*4]ҒťzҐk\]&_P;R퉞ͥHAS)VX6G:.qa}v.󬜪IPSRM~_-Yt;r9sv1 |ڬ mL#><(ƴBT2Z &$wD8<>bL/w8)M Vnxw_O :Ƹ<.\iAD)%O'PʔDꬼMlGY`a"]]QEC|;ydwf%k?+4^JUQ#FWAJ#-Q9#[DiS3?\71sHW=3KUYߚ1ֵ!@Rp GβyݔLMA\$-1V0Fj˜’)mm5vcpWrޮv x9.˽vZ7bPW'ˉ#`}&+Q1`;yq/$jfu}¦vcJ,N%:+SXVGH,0 ,\IΙ^HD:yҫNO |: j^>DGTp4~̕8E(-D} -vLJq>tz/XJ3^3 w:=ewêk#p:,)]9U1mʼJ5ʩe`7Ai_Ԕ3_j QpAB ]Z9h~_/B ;;-"x0doAї&RpB"d9֫im`kn,RDP׷Ndhc"MpǠVг6[O2oX֡ȟ3W=&&#:vPw{G8zdussԨh9$ԗ$N).(<{!zkpݕBm궥'+nּ~r!P4uYFdm27ª*CPS'b aB'mUZPEdIv%&^ >IpԞJd4D/~'eJJ4M:}Qtlt @`)^޶'[eܽf_(YU':$46s>J?9Q^^57s$ bvx9Wc6 }Ns{|?"mkE9VʟKT" i\0O2MQl@= lL8,W̉lb2.rSfs+p w\}0nO3p9㵰q&$=&&["ߪ^yxH>jA0<.w:sU * + vz5Y _1bXW*Fdڱa.%C/率SvF29*/wCFH[dT2Dk1 e嗈nY]ţޘct8{&Z/I8y0=A>F,DmUhe HqDSo',5Xx@n`- 萴!=ͮ z ͞y|rP5x;*ͅUЋ4%T0K_~g93K6"R(T}6tQiFt熥`of?Ge 7BNtᘧq+V63TؐfqK%=[jPtT"L\-y[j+vNd]gͦ3$.l$<9Qa 񾈩7tH0w{ 5Ax2g@I3 a\2隴 71cnEU(-屿*QԞ[wD"5 ]ΗVvG|7 1Pj_u,1-o{y39aȔu<=vx^A:[Y'D"M#e;X?>7 ~3k0,ŷdܖ'lU΄.+EE +TFh\T-qMeveޅ81A^g-6/!Q/eϓ{e(VVZ&&g>%wHmz.ݢ.BE"[0ßD b^<^[`cwB n'PA9OXu78w^nѱk,t4P "TqC^Õ[\MmO1o=%Bʧ+=d M~0MqupɑT`^ӺLqL /w^~ yۧ_ec2 Ngm%5`"@1}'X)?gt3Ȣau=d*dS&iN 1&wH.!{)Vki,g$6(x/|Q}}1FN{],FtoeQCdXzKq[y6iy"D)H@Xd$guG7y7`{07#ytFV-m3-.g )4SkVodWMvHx>HAĤ$yK8tk.;LP@(uK&t>|Y=QԂCgG'*rjJ]3 mLgS+h7q+%τ~j0tniǷ[鎬Qy_<G3:8SZ[MjhP-6bְ j5Krƅ͊a]JS¸%|?]C ?z& Hk=6"cy"Ztj)o^8ܴMo{xx *VU']bEڮ#?]$`ñKun`iRwGE@OL|ׂcMOLe7{2:9م'pZI0.E{1ȸy:LSu-lîa@$SF &7~Tt^Du*Rcֽ~9>R}{@8٥STdLÊa4<`'U#OG[O[Hc"7r,ZzV#宨cja»~)sf;o{)ǂ:pFŬ эͿlSQu&ckPRX,Z,?PHa:~OeRhCڂ!khv[m35C]¨.UJw!)*/!d*Sk[bg=yp eHƟ|, s;B>cBWM5pV\nf[2Q%QQ7:3yL@7|Y|hP,^ ѓNWj,ta[47yb8U+$8#&(ҞmY0LD/v@<,7H{مnOKY) >_ 6+\Q{W/Mt^Rֿ{ja iu{0AKKO~eϧu={SSmH$ʓ*ѫ+e[F`#!O18yNן`٧GkB+PL(nݙ~]3Fz- w!m$R2I"da4rq9QWh@r1th`3HAZUl@_ze7CaOwjiK/"SQi͎ʔ+ki}~r+g|jJgqŋ ׊*KĶd^Y:0`:/Ka/aL:fO<<߳0[KسM&ٳp% tn*_ƜgY≕{hOq7}ʤ2]I. oXZl&/=eEtI` :#2ᖴ(VL./򴧭@AK{ zvlG0Y\X~5Jp)ok뺴8(}@3ĩF5-ucW=!\*?_y-6 WA]%Fb4\ApPѫ蹹Z}s&xSrc 0$/M'd`Ӓlw^1̉׮UՖyG4$oPP?M#5\Oy0 $k(,Sc@}jf;`ao2M#E%,^z: g|IXot%zq#/>ER%$}4IGj?Ӷ(b*KA~%4]k~=j7Fg\VfCcy)x1q76`Vs`+3~mue]!nWJj$MBk1ŜN63= ){KtojMط:sF%r @tWϊONoj[9sIa6DE3 /2D{y& Da3uQ!+1B` {RB'@:+qHgyڳ4ʳ 7x(?d_f;F2Ta‰(ePE_,lz,\H?v˜{w=cC IWhQ#c_[K-~\4q>?ܛ_R!U֬^D n>+C}G /AT{3L4~ GǪО>%˙w/ѵsOBrr?|/t [_s<8K@q1da .%JE`1$,U@X|frU Hzl̞th16swW#sBi3E.]KY;~EY% /{.}siXP}%i A_s= vbKF UO vXӅV||au_&9Q>W!v{4A.QPpoxX-D)ؒær])M|*̙ا#&ɐ S2 ,XJɍt9TS>*n(7~1BSA{2SeyvS0!A{|ykH:CeB5 w>W7N9R9:2v wD 0.u+b^]6(&R/Yg4,ua8%;@&Sa:BK"G})<(.(_/ A*l7ggKSWՃ: SKl]]Zڎ}5oK̖_أevpWmkœ1@?gs?<_}|bݐ#;I%;bPxN0SCY=^59V@"INa P :g8r(LtKo2Mok#DklX eĻpϾ`'lQ}*zɦ S3g4NlI@$,35iО_ۈư2}ɉƤ_zQI:xT)|&`p*q&]Eii2Į= L#"=% ~s'^} `܋o?ijҒTl ::F2+[/sRy+)$82L|itQ#Zaܾ;f1B-x"2)wZ!CE>qDvcl?1a40#RyW׏ +W%7NPH)(RZ׻vQނ,EH/#|\Vlj 3 .t@㌣[%0DcKbVvSG8t-&&JU;'Ϧx>OeeZ#/]&E.ezqh`ӻf ?ʼ" uQ ;q)3 NTG [ݞ# / e6T%Jaf~ 31̔}/I(:EB<.r!i F 1 VЯ4֠O 8RdnN(>vt#!i`Mr3RgBӫhNm5I%ڹHC=_(E lZ}ߵMd+QG1[PuFOe  ]\)l~OTsO=zu$j3 "K; ;bć3v7m+Bٍ̜"ˡ#!xſayǮ.s㹹}JǴT1ߦOx_]@+zk4(m̮QzY>ey~Oֽ4+2:jh_b]c`7܁ݺRi #'(;>UoNȳ7l HA)3-_5@G`+dgwj|=4׬SrXê H,Om/KiMd6hI~r*X7 fN74:m&V8@zE93ԬcGMz/.Afr,4J3/5W9Z-)L6 ?\TVq0> فoޖ]-XDtc ۄiiTTmJuZ;K͍lD]r}$^ l2ZWvKfWJ=m/G9*g<8uw煤=LCD~850*ڬ5iC@}ZqE٪'xO+A[oND;^c=T;UJ{vxB534}|1kKue>|?Hl`ˌ)|\K4:*gXF ?ϨMgHa'I$Q*v0U]sk?B1o?j[N Hl(,$gN E''R%[9{ܿ){jCeC */PK|J8ƻADQH^xEjJi4ln0t|vm cq١Dd3!1fDM֤X-Cx)=\z:а ̨<|h\T~(wlrDLh 66r3vj\Þ|d]@.;%d1 ltTu!>fĽcU~AjW&f휿y@UbRjPValMhYƎU poG')TMov=x䕚ζo*̶'# A:-dޘj'CH;ÚѕJoSE4`bI}T,J]5¤3NbP"籱Rrv$bkZn!T1@!F:Fo"Nf!Vu6ϭҜc}})Z0iMڱpa~?s5f8hC=,#fi9? S8VR9᳘@ݍH$Qw%5\|q[wªA$JrܰqRIU}}ޣadWCR>8z+g' 5[=!&i=f?IBBHI1Յ7es΋3J-<>Qb8t&\ Rˇ"REtgDJ6㹱7ǣp;H/Y*<*Bb:1+?4B)Ƽ.gZW2~o^J|XE詙ڞI(N@3$%p7r_0*4Vٶ=dfXIGsD ?h k%~PW`@=FB^@z?{9YPG+10*j \ bWWb|6~#I뼩,{@*CFa#ǮiBpƭXL&ݕG(5ch lM@XP2؂ŦL/?-14ٛjO@rvt8kG_>)Z)z |yahd{Lam((l% ^ KUn `˖!yb :ϊՔIrHK= ĨZ5l0غ%:wi{`qW"-]Q$3(e+t8\ bwUފAS0oeV'&_3XGn.o¼>@K H3ef\&$S,U m;Ifa.oJ~ Y##c7Iw\RRu|Eq杊B\PKN *TD}κM_LsgQWp2a (='?#jq')3ِ|iϛ"5ڛ s?jw "rE bA+0}BAY <Ɂ!T~?^s~hci+mH%_HrnRbsϻ씬@J&$e&{6~+fa ºgT7a QɭZ38>Xq0Yx Crwy3(5ks˘%eL, NVÍgTECQ)zMJV1( TA`, n1 ׳ !ċlǏ msh#%:#/L{$xg\,_ ͆EὗUaZxؤrL!QE0\<;_| ϱDɔ#StLB% -cR),d BASX[,Y=&(O.b+7O,vjEw!dq=ZH}xkڊ vP82R260$=~Ŵ}5e#2>uHJ!7sPAY@W244 W}][^gRW@|',GrFr\}(Sx(ͽ6HSq$CʗF (i`k >H%|pM.Mֵp_-XfھV9|m`w[8SܕNg9oͣƱq3;rS|djXnֵ)&s4jGa2!:ul"46" k2;jDI\ƪDh<Ƴ uy|AM#pă(3tS+MPI]/Ք{n?sY'UL~<(njq jZ`&gYDAGԀ2eNFqij?R] Eu8-ֺ$0' Ws.jMwӃ#VhBo_9& gd'9\$:0NmD nsm0;-/\C @:wIRY˖.qւ- u$‚3ͨE8Juv{gr ŕjEg 9ޫ:L[Mz9X@hs{bRuo8y}f mMd:-Dju4ER+c(N݃0{=@"=)a44+*LO7~ȑD9F-Ezù47Fp:ek^.)69j[n 2l] }MCYH@d, ғo^K'C+JI)#c᝵7~;cx-J]EZˎB~o^$Wz19*$W˅iam#)VLp@U{dZ<wOi6$Bޘ5u4Zte,8t.kEO){_)8=d]}nQĽ+zff*̳Nk>o审WX#HC*sdj"ܨm?_gjTith®h:lNE t+7B/7؍|\`Α ٸ ^ ޯvnWESI؎鴽icn+߁W#x7,_cw^׭y%MdoP)nfU)X,Q>c5p#w:{J @0ġSUO0ae/U !>6;bR8E#a6O$fs,A{R 0u;lh>V=8Cܠ(Ts𣓀G-pԱ*Ϝ {`X)8u 2eC. ࢇ_RB=.`^E3OVdH/ ,vD˻'~畢xp5H\p%rAbDLi}DGK_rr6K7gi-He'5)dxĥj$܈ l 6ť Դ+ơw?()H{ )uËR<) m"R`%LuXf)?&o) [ߴBrOB|G55"__DB.s`N>_bM2D߁,*#Uܸ^6hPb̈́!xwaK`Ӊ."MpC[OHu!\)wD?) 4x̄W>Ypx!Jr\nm2ǨZŻ*Ֆ!^ZNd:83'L'wPC7a]l lۚ{YBpypI\_\,-z-Piƌ}ۼYI?+6-V }ܮ+cBNz zZ:;L9au0֚<,:s.@m~*q+%挚e7;}NVlw}\qtG^C[vl?hg)K.xA1j< 6^..fG.|rdQ${*W_=1riZYAZ-(%PB,,7IВ ۛF.;eO֠ d)KN 4ue4mΘ&`khQa; 9gUJe_.4,e}WV]A-A4+Fu**̟{0 ApB]lB 9~C_]R{ _`'™/'fP^п& ӗCJvx ]Ք@BИNWw"'_]a2[W*Ma*VKN:[kAO` {^YWSLc'?u# OU9wm:=I s@$¦XK]x]#(!Cm:Bk #`n{q'yMT6ydߣ5[lq+6tA|kWds3*GD0 P%vsS#oW? 4|:\,*حyHU[B2³Tr?9%&7Cs  Sz n|$ܖ|g;7K@:hodŞGqdbEr_Vn )A'-m9vh4$udpANA*\ujҲ>Sxr19 KC%WOl'*TGJ>,eF)@j'qkXGZ@TM+>9"E`LvY&QLu !&d+@#]Q|#V9-;([ôijj (x#nl㽘fn\-:SxQ;υQOྎ9)BW4ڶiGC՘ 4))M:4ĩAXyPEY&ju_xYJ@~•|ƼJNNTfY _ҕi kU؉V4.:3@ zW[˫uZarE[ԓw>28 D;=#4"rO+ &bVttIX;v=Cm0GA5U~J+]Ūu*32yZ@ dԀjmy/ڗ3=ȟz:J9>~Oj$'(T.UhwXS>t[{bzPj{OSSkd;_i+ABu(' p`Vcm3!eWH8FRpKRҍ-_1zӷBD|f5XI.j>C8%7TGWp)F% aKv?wrDĭ,gFb@~(ѣsaF׮MMN/cfcWC{e?lUlJmgXN2PHHz$3-SV6o2CZ@D $o4F;e6{qY٤/]xQ//W*ל9}=xZ7+Xg ޝCW)?-xU xvxȇg*{Z&|Tn/ҧuwBIaG=)oj}x:6-]rtz0Vϟa{ ?hŧ //c+,@s%e5fT6&ʡ.b-y6V~{AzR}vIc%ru2KiZL1OܲvLbK\{nM1nAL9)?^6Koq_hHR:-Na?ccnFpIW^vJhh$#Ya-@K5ptH(2x=x?暛|FN&Z<7Yg1z"\_T y=,Z`FL#  gRn-2; OIB'4qp_F`6UE%< 54=6RtTʛ*k"e~rD_OX*˜-Ɂ3ߺ(T <^kk{\sVȽo#5>o ]-k|苲ͣx!;xwDcS!,K5gUx0K>-:ݙ;kKXײ9H֋v"BUu^YЩl#~e1gUY{#'"~NN[BXZYa!#Ş^V1a3YW?oձTg|J @S VT;F7qI2)R*e{c:ΌCbkuLfC7?YBBc7Hd~6髺jj:AnX)~f|/h4'vc5(0bexBiۈ+;璳^37z5+2㣖<o>h&јS7Lmإ1Oa҃tx::CEhԡ=:ʅ6 iYƺzי!]9kR%DaEH6sbl]N2班Nu P7[ f8=ޞծ 3ݬgF^O rx/1&O큉L9ŢsꙆZxJj ٽPf(R$M 5dvXԓdm(\mhx5lP־5l.o >@{%:wp̀V&҉7a8hЍݎxz(=Fr7nn\\x,̨GgbA%gdG}~ EPHC LeswlCFaнh:<` dDl XXytI٢MD7NNCVG1(I s?By"Nqf d8,S>+V?';ef\,.dV?$t5?N :ZJ gǝ-$MxK#il˥AMѳ[Ӱ},qZw6oAu^(QrM\r=Ƽ׌Y|Law䄃ImV밾 =1Xy}us{2Ȥ^pNDJ>Zwz}< `Y]@fv:V)@ͨ}ouaBMk%sp)&[X-o%-It~T x*!i&y#) 4΋_V-BUƗԆ ! t㐹V/V@2 =fp!]fa 26#ԟv#1Rj^:<01FM$} ;4eBvb/G@5J!#saWÂ,t|f $XTYƪZQ}u_4"Q;FR̉֗iq ^y.0,£kFe$ˡ;пޖSwgE"Ձ|]!fO|<V(|0}zP35L&ߘВwq\NqEve ^VF񊩗$bTi.]y%3F(N ULOdD%޻ӽ Q-剼 eFw1؅O%Gƌv52&:;Lƺi,Me\R y3WSv MF2zG8FQCITO9OISԢuaiZm`b»ZuC "Ͻ+-ǤYC#}54eTX&PGW72ڍS*!kvthnV% =+Tw宰͠RhRSҷBFjXrpF]0u 7\#Gk׊7sEzRuI0ϟ>תcJz-p{H:x,Tt3*TZ(@u/=?{8L }.ĒҤhy"!~}To+tԙԏn%bD'߬lBV5{Uaōz`O걁ozjq M[f0)g @ु^ΩI*n۝_nk1["!;zNsly_5MV3i'xOozڤpb߃i`}S%S;_/ՊP #w3V `P1B`t;?aR}2U=5o3KMcκ޷Q ]0MW.PС -ThN]'n(+/r&MNd}z.@D{6lG0<.Vhn9~5׺g4G8 .<&!x}rHݚw+m ㅣ2aˬBC/p L/ݧNgv; ڈvn)MK߀\YJH3Lx?8QWIݾJ1Ծn-".`Kgm!vnJeB{%zZc>]q4`l器nXmlcV`昪VQ$a .#(bPl4< O}^5n˸s0oSwե4$4GqsvP 9@mi?YcE>0$@ edAډ()eMP̱ lm!Z"f9X- jUuK ݯ0i7Wbw mAa(۪mOLr}}#%iNa.kݻth2X`rѴIX i\DL(Ρة`+ݙ,;)!)o̼ۣި[>s-0!a.rCug\~^+'Ϲ@5A1x1LC sBnF0`_rݎ> ,6 0o:^%mpJNݲ*gKJ d)Ղ<=<NUϵU4Qf'nJ9f`[wp *#pQ!"-,N!df?;wdY2󦈳$X=t{9%p4KzHwѲneBpQ}o{ XF!|i]KgO48pKX% O#VPD 1lZ_y`0`; 2ϫm.щh55aqe858Vu~BٜLNۃhr@GA1^PW7·Sp~^?P$=lQͰA7ӮPfiC,dX1"ScJ򌊶bCߛ4@99ղ'mk@[ v=666ۜ^Y]ɱ=95ִA '0,JdĻ}l>×̅\C$w# Aξ*r\97ݗ{ox]\*}I#f{I*<\[fzP&Yu[-etT*>\%(_mqpy195*7daM@h"ԡZ᱔4Nf88z"<\m!-'3_jH+eѻz肧`9;a@=d009OQ րgx%,#c92!iݐ? `i*MiW& V̫HB@\!DB[M/`9Ynh&h~G ul*uA7{wڢr9Dl:!s/b}\ jEoG 9촜7?A)0~tu1çLM~uz eKZd@ԫ/ jB ;dx@1.6H΍kDZY 8L8?etǟp xKۡ鹽$eV6f:#`pu('II%y%һ^4G]aR-:V{y:T蟫+QqAC7ۡ [T!y ԿP G1b:e1m!]]ш'cs/lܤcƬ%aNsmcQ5 vq:Moy9*7e?M"Jɰ,hhS?ۅ ҟau6e'`TURrǪʪy@ڱ)dK6oX(6|X#w\I_Dqe(nt2Xewa$zi#uN')Mài:E1Њ#HyT @Tphꑮ <(&oaCX&ojD8g`\9/i.{1a<Hp#5Gr`h笵k3YQWt:F# :BGNzh{!ȇV5Ēc*pg,*¬(n=0[I8U/F7 oh nzB~*Wq+,O$Pq᳍Qytw?w&PUlXQPob=O7DoX,гH;wgZX(҅c<1h^fXaEy Gm% ov{:29pVaE{Dgx7!6AoRJNr\ND zJ|xW8o\&e4>8}V _|b"[}H>ܑVZ U6ŵi\Џd1!dОj#cE>9>܏\"Q7M;,G-޷@ ?c@oeMŌI?!,L33(CRۈdylx;@:EӃ MgRm;O{a}t(G}vxֹ8/F [  $9rT7 gg=RJ8⠇;Q >abc8 MCUH#\=#b׭T(;ZxaLD1X=E70G=|N:Godf5C^/-y y;>~Ya<(2~l5T4t|7wsG^/eY+NG<YcXXL j:j-A”% r!4AtzTHb?MT睋aWw'*ьӷ}%? oxS-z=Wn.p2\Tx*Ű~[QLXekѸE{*(s8a3do^3n[~Z'ʔ2DNLVnL%%Z=\#p.,ZPN"@N \Ic~g+0 ^_`Jz*v bwD<$v,8:qn+Vw ~xˬ @< E* TAYgnT½iByηMF;շG>9A B9a&ť?坂cR? id/6 :-WMv/zPjd/w(nPZWI ױJm.d) etv=<\<$zI+zb d]vȟS&1avlXYGYZ3;bLSy\S{ oI#c5/JX7I53$QɾsG#Nq9Vi_O* r7B ?5N츉c8PّؾUعH&fhqvQDr&ӧ$y/I=V[s6em*_ڼZ Rp0yqj=WSY;XLd`/"ɘ%xm+X۩<8bc߅Oz^KAҜ`\Jٌew*O?gPa[dp-pacW9yђm~HRԈƗBX/Zts0sj.^eK0bqiagI0ȵɍƿ';b07&,D+.<<|(n9"bX&]bKͫM }C^2NmUOޭU4{<=:N@:aנ4:3ÃQ*^ NMHǓG3׊?Ik_ _a;x53WG^}L7%+5dGޛVadJ*-Ӝf <"3|ծTO7qܗu)d? qySy&* q ۻMK-%K?t\\S~olPMu"9cM곝w*_n5"1ōqmls`#+L4|ՠ'OeaC`g)tA9íc4˞Ű R&'n[AoQ™):qdJVGil=d]0?DW22. @fZAK{HFNO+^2'z[,\SA\b-a񙯵.H| -T^PU3e&hbb-g`)r,%ɵ4=O!q_xձra 0e% .!Y'u\὎BSI:0 xڏ!aM!P ˵c]w?6;O E=q #J0zgZ$QM* _[8uPcPA8/8|P-OI`w#?*B{RgN1_߱_]W-NV=\2 JHܣd_k;- ˇEnw쟒\hs"㥤;8|/O} zg0#\x%Ӻdr(4'!cBcfH! )E^$UBcC|w0IHʉùODQ7ieSSw8s&8H ,i2{HݘB{ 2HI:sYx`nowXf+'~OLj8J}cd#?<@>Tly4 2»ARJD,|Ld()t^LR}xU M$?R]jr)I , m [X|V8VsL!?A U^섩Lϯ) I[wRjګfRW+(n ń2VA535woWa;jTC 8aZU+^6a|,XYhTA>O*b#A$)?b2YtJpY.[]QϢjIlFҸOFKD|zj" w`n4@Np&NIGk YOɧ-3ĩ8'vW뎓[&;4kN- 9bVe{*DV44MitCf7AcV]{fc1xJZK28Y$4e¯W>ܴ'B~yz̍SlEЭ >΢ }DBA:]@g ^H*Mh1+$xɐ>5GD#rC԰ss/y-vP5_2Ran.В{׋«8s2^o9|UWoX6_<ž̊#Ի$k <{/Bd`#[IR닎v6#5da]X%l~rjf=2WX|MQ &:WA zi=1湐&%И +KT3Ŋ ֲ||+qhw-O[O ?D|@vrykW|%^i2pHUʤbE&;j ,WI߷7\$ɿߙ*lqe"_[bVx\J@d..BwS '~dA A㠽|)m-)ٸ]fs4ڇRŦѴ{Nji5U&Hh}=aifVVĄ%}܉gz)6|'“r9h}oCmi]l{ó۷BMY5 ]ьe%bmeA>L =3 ;>zyA 1t*VxLN;ًL\VE=~ C=&.X%77lM< v:I PAS CݲO8(9̳,R^$VR_aBp3wH-+6/7ǦîQyU[%W'g~&j%=)*|!Pˋ>8 ]qr2aWե1]~ZٖwwHOŸ5;֦.TbҮPa.t _ڬt/{B=>3QWpd{l@3ų+`&vPukkY_* ߣhPVNsR$d戠梄fߍJ\ B8K;Wl^;v\\NT(ۋ [n;e_&^T# m- wV@"|7a 6 "l|۬Q!y#FЎ$2H筰wjs: UbČwpJKofO^5}j&jό=!p ,kKVv'Aenގ?GB`G.e A1gT;AQ;;8tf.N[,[})@;*ſ H鍯fb"Z H8]Fp`]95lwXppS\|` ?0~sQ]V'噰'Dj\`hnc:aEFS. DL X< Z.%-%*~fYڴ2x)&JI+Epu6 E&_+SnGOiee_гMB{ROOf SZ| )ywj0=bAxA.(!3f7Puӳ)?׉R8څ[ؗ[$'[o֭J֊]N-C+֨z ]("BWME?p ɨ ^2e6ڋ,A{[iȅd㮛N"QPH+紙կlK'>gum{Fv~#*" st{ŀҾ@Gv8ryuJ\nݗlPYTm`( &7Tv͈hyߧV=-_Uܯ8F\꟭>0/ʫ4~˕H漲|0 {LǾ'p1%y EN ɴe$>2^IH)nӮdw+JnU#sL!vůJÑL.6euj1k&>lECŎc2( 6igZ.{,vÉBvC J93B=,! ݔ0e\y[N[W 8%yF8Q4O?Nޖ{<ͶB^/cQ@M߬=}wTyg"hzaBI%2 j7T yLyYJ觧^f*|S4r_pSf,_3/S٫AXQ73"+|x,0JJ^ ˠ cQxEY)aNns4E2$HcPtߡ`XDR/hWC<.{gWi5}ɨ-E` ёz }g gadw5W+'4.sFz- B lGaQ?w֖ x{Ϩ, ,]@"H@.Lۥ^48zʉapsj {ҕ p{=ŒufGe{k][X²f4?g^nF6xHa^q |nNpfd$Z?#er [ˁRw?_dc؂9bO+W!SĊeO$2Ԁy ,S)*r|,k Es],]{uϳTwLx*9!emvQ(T03!646wčka{C̭R Ex\؟VԲ8(JyR ;ͪb:躟Dc{eNKx7pyA e>/)NLb^<u"wm z6>{vHeV+Sh;I{x`T*66>(]m}kf)7@Jzp_M&vZ'#x~)8U1/Sܤ tQY7 dV 'XǬ E.p6Rq^!4&2JAI $Ãe9$o$6GRbԱ~&sC8Gp<ޒB0 NA<6KXp. &>emzu>t_iZ>*9T?` D\\P;2Z2iAp~`hMuxa#êRŐ {\XhM zSx-dXL@` >fZңj[lj/ /]S%A;;xognBPz*p%Աfl֕{%uZ~fK/Ef?[%|Ld$zS:;70в8%U>dKteuy]>Fc~`󐉟ག qdxOKnf;޲cfy1D `p))EՆ&1c +_ۈpqّVb!:z"8h4 Ķ$*׵T{mSАaV>ऴG%FP)#2SbJ#Cw_ t#p6%ڃmӯ~]EAqȱ$چGt/!K *-JtY)-eLy0\_J?){Xn.`["P3O7 tcKha.I*r(tr~Ք̳:\(Ng[O|7܆bJ =Cӈ\[z |i96͇l x؀&"ױk$"Q͠4e:^ '~V^Ҿ~-\ }?* w8C,1<=G~ɭ~͓F?T QΕm aq~%\j{#5&D}p(/pgf!£kԿ2")&HBTq&me/;"7*^i KxY2|vrl7&_^@8v=LFƵ\Xa)Bbx 䮅4 Y~Xj3@Z:Ej^HǗh> 'Ls0+4TǠS5⭦wxEը5ypv-FK9 E髀"ō4ɰ< A-:\s@zAO\Ow). h6t*$n?qx6.FV@'q@5?CYp-B ]I6/|y!:gT-SoO!bf ||UFǥ'1n id7[k,s1#[KI|s^|j0txJ$ZD{;ŖCb%~YcnoQ!uCv_{V9 C"'s t1KbU*} zB̯8 m]upQ;3Zbы%Y++R?zf oP{Y3Pן*XGr&xpmya\I0*f>LOL"]:i^ȴѢFE*,z "KFkjEk\5(#¬fZ4 9v( $e j/i}Q#5T|ӀW,u+caB M$ .h`¢cOF](V;]7v1 irrj 6's'*cOΰ)illp ~Bn8ݜcڏ _r|9D~'7aXb7$PƧ}pv6曯&^:6s;#k`eYGa1[Fx,D#M`GkgjΔ;%πFC' u E Gjg= ظx4 X3}p2\Jd;%Z D%@ݍ׎a8FO2ex>P; mBhEP[bplY퐢&mQ/\G! EWCz ;+gџ#0,flSʤq k!HQUʥ{VzsYyP+U^Cϰ d{ht]$Rʒ&T8KRF-iᖅkqk8<&#wo%_4s$:(hR19m-P_Z;5gK* MdR~҃;G]%Srޣ5#V G)ztbcBdPD[ime[cOO'Ծ$-zҖ&j UnKdy޹~]'266*<,|0,"E_rd$_T;a6auMDZ[@~Z2X$@Pm wX afK늡վ_9cYE +S0ݏmyY ±q1u/e1qDi tʠJܩ,-}<#-w_f 9Mv!|(,A0%?D(Xls&ƽecĄ.$TrN_" KvY}`FS MѨ47|SdQf)>oj5L2ZᎠi|>QGJ̕+p7ۣ)UKlyV,&j4@yQUh^a]AZ|x JRGVVċoX^NjW653;#n<46x1; Jj; "H7.qd-=(Fx~m%MVp  _G& 4°wBxOH |ѹ}hX ysm_ 1 ꎄSEnNK^Ry|@w Js)4p -D;I@koBaz. kQ4=,d'/] 5C4qJe[a|4XܕU juչ j3- U^t2!*Ŗa]~^Jr ~79Rd'aNrnʑ( Oѩ{V2bE.=2Ԟ1w&!$4x,jy%Z8\FD<5Cnm=c{:cI|$S`N U@h$H{meu kph;=A'^QNkf?SQ'PJ C|P1R,Ski!Ϡ/b֛[q5L[+Udpa6ت1]FL=9#Yk%qDJ/ ) j /j.1`1fL~JG%A_weaGgqt0-.ttںN*, (X6ERP ֝ qĚ;w'K#\_Od#fv2TcNŽXcVTh.gh+zi->21&HtA@WZRj,j*z_&V`e0E+W- 3*ʸZ<ondkE~ꆻA5-4܎sdC=N@5ah Q'xE \\Ю:VECɚˬ!*kw?2'_v T;V3˧aM\zb wBי Η~#[o5\DbL{^RC=Mnt|\>ֽ~̒ڗ"u).,fj=â/'&>Wjnj,Rk?ǂ3~𯯙Y=gNLbHYT+yMLf$)Kp{,\ <ɣu@!!d)Ts';* Ε} y!\]xXTvGn>9OwV~AFy:/?Ց:Z/]XvOn h(y!7uhQ}$$qָ}?a6c?qvWn~QWMP}>"n]D1c@'z{fAƟ &ou7x8_]dyzf,ĎBzMO'Xwμ'%*Gl4b3P൙ n`nT"^RO5XZDrjHPE2/6]avr5o*n]sڛQRPS)87'aYU;I2ꈪq\SPR&"e.nGhMy]jjkQam h/$wDnyVq[t幠5c0{ 4dHZ$Q٭MS 5%!'}nߊ";>Cn -Xefշ/ԾL6%,Ew@X1.6>]yw:hlk^/NŞ[%S'T^>Ez;^,?Bk6 uu@=UG 9O)`N# Zd(+.m"i$Q54C0hi"6|3AŠZi]@"LI{މ~{hbYLjd<!Q+6MbSm湺 qp gkrGUHSs7?nԽ˿|MrAiKrY$wFt&G3HuxVɃgt8AEтu]~zKLi$ )>M脦Txybz%t&eNtR\9 tzj D#掭 Xm 9ŷƶ?-66W{=hՕ4`+Q2ܖ&V/C, +.>=V4~znuqcdA-DS{ڔmt~.P)9W!u_KP6C 궲]_ipFl?crdp5W=/uZ~H[8ȧiF8_ǕTw|ݎӲG<{%c%v2g'GJ0r3f,ց}&~6;X >yҳ˄7d)gP"Gi ۓc| IK~:qMu3` ħr`2˰:b'\u:Z_EEd ETY$B+$YeP(V2H2"E,j~BA2?7iIPR{:T_K"ӻ/uٵ£GYBC3N94k?J WhV?UitS(#0YxԵURtN 2ZDt@1!0Apῒ+ݶhJSBjZfz<)W"qjDPD0e :b@]cВyā_TlTE,IH2hѯ:E~f9^ ?Lg6Grcs6uԟ߄q$]s_-$N[X}j NH 3;wܐmUX5dzsa T>R:sLU ս*-LẄ́ }'vvӯ.̎g`~D40h1H:bx}@$a@H}a- rY\Ρ,DF ~a8IwmUemZ$irI=Yh\)ѴaQ4|4]p.~O> +r9Ff4=eȡFª2)ZvGl khc§?FAh/ވ e([Qoy+4VN ? *0\5p0,( o;e!3! +gd gy-gWni=QMv7[Z@3lj)WTe.IaO3afT]dIK(^c-1ַuAK}t*NěJ}A& _% EqM Ш+֣J*fђ8w4s=(1L1r b) X POǣ8B *~w$es"zW&[Xl'җj*?Lf[6bYS.Wm:S:E~ 6v0{ow,ʼny޳i;vn.T{d m;WQ3' (O x(S 9 _7iKЏ/Xޝ;nDa! <23 ->/V@v C)c&nùNxR5sD0Jw`Dk$V&1uN$w*(nX$b{Lq3[G-I2;2|wEj-^9ͬmb JsE?ZAex8lV#k<=Dȹoڰ,x>FNP3%0oALh#;s-!!7{Ȱ"ykBֈbگ]&Y1vtO-/}%F  ,=̞R~PXfFCzf[Gw@e?~ocE F)?jrҽXtIO 0}{؁EuKzߧ>'T'aepqE[~,Ʃ?л]l/^7JonkX[uV 'ܻa:|U1%,i%dx0b } t=dpei`΅H1sϱ6m嶐exB4)Sҽ8ݓmq?93ɏG"eǐ0#׺U0.C pVknA#VswFUD kJY]$Ny: "G>Y|K!V!@}y'WNesY'|Eӭ]@4eSE 5^/AqVhҪ{:ndi(N6kA\{%`%1H6(`,ubuvrDt-U/mfTQ8Q[zZ7+ ( iqrFK0o ΈIwx8(=mZH8xGF[j]b^ Q78;G萎*{B љ@pZ? DS_WDn`){!_$dZ? ;f`VSaM{kj˯~H@~P%(PPNĬeW"6.i]b)ʫ Ll+ eg¬BM8`wd`ט꧘3BwAB` o$\)wֱ,EQo-·AկbѺK.sSss98mnhno{p[{ݱIyAL(HաBOƟ+6޾AqG/m1xtM o0f4ȡC AzGP('DE{\Eak[cx2X4[;Lf .=2yw_Ц\GVhjMŹI A([|rcbpJP"/0&k]IrNf U-y*K{K 4bm|#W!hAZ=dYdm..lK f xxNL?6eVl .L&l0 չ5)mx 1\KX&z96seM!!d _I7XaSf}ܻH^\>Tu{b8g3e)Fi{ې /1vʫ0Xs6Vq,1'mUb7~=do7oPbߠvyb'}֛q4ݏ*r5@x2r<:*_Fpmff'†q~ޔWLCgJ$&S!XzɈ|!'`՜ډ\|Lb[pX`YLa}԰L>Hja kdSsTdk6uUk.Tgl &)X Oyt&E]lBء2=Xq\uגL2{|d#Lp?7Ec7Fb&in&,sHge>ѣ;"?$)z8ejޥ,{x4U1xfKYq|36^.\&svitey2tqu3NePE"lB󾀘h@oBdba+6ORY/9S K;[}g l o]6Ap.P`HVWH@Y%+(+p/][D&}3?Ĩ%\@ҋm}=z\7f}% 7[9A1k,V13Z ctvep-ok hߟsPM~[UR~0Pb<ҮĎ~FjfO/|kCPE]zŦL,Zq"K N /l-ˌdק)͂2)=Ao8Վ|}ՄX{jgOz, U/s3C/c3xEƷ4أWɡ÷,FX(LBI(ZN' +ʺH0i (iQn+b +9+=vmK : !pH9kǏvI =BD'F*“T/kIl{B8LG/3%KUyމ FSәUl H ie_[*S3%u s.Ǭ6ŗC8pC\f KB8gܱDh 3D;ؾn Vd .9v8cP7&J#$&l)IFDJZX}@ˈ>ߏSǤ{Ӆd0u.e^]ѹB\(l'WwJd' 9:/WKv{pw'8Thu/ơ-XjVe Fe<7 _&S-2y@E?ye]Z#=Wo'cNs]!~l%X!PQ QZNM \f <XK$_F}7}2TJkp壙iYg1KȌSg&j4-#LQ)41[kQ^Cw pWმqxAeᝰҋڸ/QE!d &fdkqMCu\7#, o¹Ksn3>,T p*-Z+pg:pƐu8{BGQ[:lђL_Ss ZId񶟏[I@ڂ: ]5`u}g_(^7Z1  q4ͨ&#  ?  "h2=`rU>wa* ٫6&󻔋r(R2%:@mA^uf̒}K=۽͊ W7o6OcS uJ|ޥj~:}dAo픪Eۈc4A$zѩRӵ {/1 ŋD jOS4QϯqeUG'3PwW2'/ʰA-Bz&#_*Ysu"BQ>~c*U Vd]PW?`]#Q<]VӋjApa6o*cp Fp2o"&jmoP#Sģ25zOM2ǵDD]*>gT*8oH&YY5vwj6qn5DeuG#51ݴG;Fޅ >Sb F0ӗP77zsFɯ "yn4CT#SzPf6K슮7g."AɨjTI+ bUcB2}pghdGU|C8)QC;~qCEHK?+F]: ;ok33i%=OC8rWA<^+J' aqI,ё5rl;s##DEq!?u(#6Հ1(/jڳ{M(ً9]HiE sBu>H1V"f!Sk4" D>E]>~5W{)]ˢZy:y{ CWsҤrh̿t Ei5w'U Iڸ'9}'`Ei-`uiчIw*oE|o`S=l'z9FreiK^1Q,S+\ _)6l}ؚlf' k <;&&t>l! ̵>c`]d/p]HٰP `oS7o[I{:ϝIOoãWM[UXx9o3YR#MtBkZb1&])Pgnb0?#-'3aanG0})t2F(N{?Y?dK#sdK.lwWRsAa;Q,‹!:WG-H}2bI^Nx8 ) >vxOz09Wwuf0U'Aw[t.yRHP><y1R:PD:K%i !@-Fv/!c~]f舮׎QK&aL {f> 4UKaIpr1 ]?~(k)?+o D"d0 %8Iȓvhn^Qs(k 4?ex}zBq@#"dkx#_Gg.ğr`h0sa맔IF#sjTpV]R~r"ZH8w[qmptL/uu 1sJ@&\x$p"C?$w!yW ثsC$U%U|:'KܽuMpxMmiVu~QBHOU0sۊAoQj`˻pkZYcн Q~Ъ; #qFv\'\BQQ HؘFcSg_b_եuG];xI!lV?oi|x_h&3+:=Ӡ&]DKvTPq:gVPUQZcG+-Z&{FC$'Fy D)(^9"VV"/:f0xxϳ=n->Ŭjji,R0^#2sm6ظA@WlACAfG\'o*7`qOc}PeaueT;րК|ڟux۝"Ĕ44e4C'}vO7TFLS|/&')`ΚWMĬyXH mb:>' 6W!>'Yjo>>_~d(˝5}|έȢ;oWF Jv }q:uO1smЈK&1*ZťzYCj}z R~P, uPq*(FGdC4f1o pȴCHǗQ ʟy&&t_a a*BN> dDpl !m&؇Ԃfv] 1uvF{ml>'lG67g7z[a[ I9|LNNCT-Ԥb(i,nxiKqdh)}yI s+UxGbxhBҔtQD>V ~hY%6HsVƵ'\zb0#'VLsN gN \>c^De `$&`Dʂ5j}'1|֢sx½Ը" 5%;.5^]􂐐ri2jϹV–Sh 41DU:ZywE on.uP#x 9&cLؤC? oƲR$p"qjRQ#BvԹ&PTxLJS;,/DS Ԩq{.ۤh"bCk 2gmw|/ksU_$~]4 nYAYDR[ <…BtQsUm^|j_3ahZ~:jXH?<̗ e;Y%\ZzG}ɿ癣IL[DU, <~,r#p "#C"'@+N=X|AG4F/x:;IP]*ϖQ3^G5 8̔:sb }"}7oϱc}TBa-լ8}Pnv&0lQ1jӘ VmgGiI S,b oC9=J:Or5@0#X6S0kR8 IX;냡"-O#UAㅊkd̫ASmKv9]ر3dPÆ ^nSڨ+s5QvnVW~ΏqN l ?&lJQ)V eOi*T!9>:lU§6){+JI.D7FS‘ZW]<8?7OgpL& l!U0^ ۦPeB58@ҬWw}~y4xߘiY_rxw2=D'_3+rPg—LQ!ikاULXV肿k #Sc!k=SV{5/MAq'puCW[C,'GЌ@GSFΩJ痤^~lɞ[ h6H1~L?ʿ3w,'exn-u RK 9ylNn"~K@,KEMSs&Jh˹~4૚Nj,lߵ^k.]~Ds { ׄ]~h ؓ7 o1 "FOƁ> ָVʛk*IBe[ G_;iy9E <208, {VؚZ#G o=&Sb`06jŗ{Ow{}DtTwBRpI7kX0,Y-:Wu zq %2]6Ǫ=R!LW)q) ^t PD^(8lcX!ӂ[mlO t8W~\ɘar*Jr`3\ȏLUL#XpJp=]mc{d5 pkyKa`Tغ0K ڃ8 14׬69Pi5L^"8h_ &7hdNBh"W|v?;&ubhͤ^/D9QoMu--7j ;N gW˺KZzzU'{h_Z/'']$=[_+L>MRcޞ~#1NmƎ>Zǂ\ńעE4>@n/6ѱdBcbLnq7 AfryςXyɢ23W}X{c^I$dX ؔuRSig>J0=5x Y J?NE~2]~5#orG1GkO "݉$*ǝz_1EZQJWG& @qv7nzEXE: kY5#k*I?#KFS,& /<μnw`ۈFRh@A_]W1U#z`A8)dx$2)͐q^JMM}KFͰ4 :)ˊ0! b)N |@=4V ôN~V*Z&2=q=4]wcek c*&` Z %JGH:Kӹ}Sc-ӊ~˵ۼvvZ a8HwRBpx2(L:2ёmBƚI4-na4ӫYC~UWhڱ0P;ZeL 퐛&i> ޱVܳ8rʣOdPG)bZ my0׉13^alr{5W=22m%LSUGl As-?!G^}t 7ce$P~cfAՄ7a(:M'җ$ٔE5IL~]#js  0: ^]e<{zd&f>{>)8=lΪiՙ\.*F˹^ *4G|L;vq_} xr[ëC*#x\'"O\$"`qhݏQxյ4:RwWKG^F[%5φydpL-};FOV*sG(cجp >yx #Rо2ܘޠykkg 3^8GFWVV a:k&e#{;D mh=jƝ_B9h3όûE,,2Fk{%?1UsM-~R.4%v wh0wxfzJS7 Ķ5B We$ee M@%an\%JM:6_8qiTDK@(4絞́"t>aT <WN\2a]Ȅ*P)5,Bem"kp'R(tr~,C]\KTyqF (bCtDU -(; m]t/Az rpxp)z0G& cWh`="().4†AҖ3WPcdfȻ9X\>Ed!f(xbPnF m7%(,7+mKl1q:/nhΪZ+J @̰"f6JP턖&NLG lTF,̩!J (AK.؇ ֢Dhpȹ.UeF NbzGnfq&D|CbZ3 GP;*bSV.B}[l/ַ o΅yh55tR/LzSal'osӐ.Tm:vGrh1)l!B]c@i:`~F7r)gw9v`^Q~>hL+d77T;0G̡Ki<=6늯vnHۑ2W~lp*3$zJv<V(?ΐ-_^邔ryopFE.RogKZlGH*E"% #t= ?jq<syhoM5-bkZ G \ >9 'oO ztGC*w۱@K2#fO;yw-Ĉ;'a"EU~. v^TѱC?s CBܮX'8 +آ^ՔŝtJK:lei+Ɉse$ x֖nA@/ Bw=3S4 ciQnkfFh55l;K}WPTzEQ*?7-97W>-|\ I4IGT>y;'5`2'ج*ǚRU\ m[laU S$(C{8 |w&k}T귝s6ݲ"hj&Ch^uInf2T`;$/$~łޯїXLJEBΥEeipsB)cpWYML}MwMBTw>"de$Vyb70EEܠZggŀ'E}Qox GE|S__yE%Qrũ~RRx)[;6u!#t kc7qEG"=D Hnۅ[b"Tn Kj9kOwC"դKmKza.륽!*E]SNjQq+`@!"vg!}Tzrּ̳FGq`h8t]h-)+[/Q߳'/5U}'< Hrs.g)FSAqE{xh{87WZ>s|FP0W!AY8h)v 8)gm`CLisVPr;<j Wh‘. K-ڎ=HE Od> Cy~r4i)Ly%R4wcYXDK/ 1V(6Z8ul06eOCQKf/IpTN W]{ǒ3GjhåN̉Ү@ OO{&Sڜ?!픏&u벤`,+/Fw{um X\wȝ*NR{|?`Yix~tZȖt%C2Nu] ,XIZkOP 9NTwYÜH~ e7P f@CPO=gx=`%7 yMDSR^fz{φ?&EƳyɫTb?n#N8Z  ʽ[ A9Р鿋L֮u">i3C$3ToH;b.\q[׻]ȀzԶ%T\fbi%WG΅RTR`em;2n2|QPzlKE_6g@5Uinf1؆gWNY{\.m"AlzIv!IOn34\/s`|h=ރx|l Uyqzfh퓖F/$ w#:*Ia^ aI;aj. SKYu^+l\i,ʢzTwo CT!lA*X8-/i%Q4a?3L(;:W:X[wT,2 ibHB82Sݨ:R 9ԇU8ÉH y*w)ag]F5lו(36ul|yHTrPoj9xъ~HaEe9G,Ј^[:zs-Lg,㈊աBZ +~vH>+Qḙ+}ٯ, lP珡̃"Q'熇mgYύ7< I*t"J?ʣH_(,TH [SS3Ubyaްl)^m*P(ܔXN1*eBqX@V hDKD3N(AH0rs9c˜6Қ H)Iq>oy#іe۱/q`]/=9ܫveocYU Xb7Nҁ1l/f]5p'JT fT0d/C?2K:{O:0aAzR^j;{zxتex)gRD<,V8}q Po+OMI0k!u)-]s/q:Z5oE0Sϰ77UzcMT,*b(-Pz ڒ42 Vpapd7v1OqM~SDڻSAyb"r&?3!v& (R0AGNMjloTF'&$~2PR`JN$DYŊQ@GUfԪV Hmߎ!Yn+R;Q*)|3LSz!Lq/z ")I{T~s;{m+XzV3cðy: Yb2t¯#^#7ΰgl>M z8]\qޝ %6Vi;G:&?B+"wQ96!orB{F+ux=@ic:iPDbB$-/cR D@ՃYIED&^_"k ?z.H`<0G!ӻE'*`d*S'84!!otvI- e_Zc5=zpFltr3iF1p.[{#s;bL_0A.Y5aM"k›ӎZv3Ю PT'6CХy@~?5Z\~걤2H.%_A/ɏQm{XtWmmN}?I1ėsG6`(a;_#vX C Wee}!m@ 5T7)R& 7lTs%S R<#g"ٵՓD/dvt&-SJlH.^Y=bѦZbfD*)73Q $ Gr#vtSi4kGm~ ll}N>=):#_q,g0X> 2mm!QT*&cS;;LSx>XEOY|j}G8kD1_V0 tj':QzT)-*ΕaTIrI> %8'ge3W y,~N;ί (2mǕ*79"2i6h aaQu+ b9 jڣr L6>3D͋oJ KL!LzPt>":c_I!He%z߅xkinb?oUqvPE,rJ) AF!Si>8vg^E}BH(SBQOTF+ Gb{-a r(}G)P rS$[ gB 'q=YHI"?.]'py<Őf4I?UsOtF;O컫im;2"-tF=Ѱܛ´LӏΧ¤fVqq] =}K.^*akIl)!'doɕ@L<ؚOAŖ5db{`|.ej[O7vЯ8DSaM($;ST]dS옙[ңH=PPzJ1oih[PR)NjV[F ,5_X57e-x, i- e>mI,0UATr>h*9u [B Y$Qs븥Eݞz@eUKF~b.I,Xs够v:lYn}H@BCRBR0-~:gB2?+KMwS-HH6K,F']VRSlw`;i3jrqX0Cw }Ir#'xdcS0No[W#!C[V`TD.2N1V1csa0ty 79ߗv&}}kܥ!Ty'Dh S'@w"MV(p KPג+;K"+Cs ibˮj8sj!Oi{oŒF ɍHYɿxC|]J˖lPQ {J1b:rr 6`'˝`,_ ?E׊G(GՌ@a˪h?]~ZZQA} cΑ< &6(l~%> ɸjhڏMޛXT]уCTS\Zp|]B{)OԟG_gߵSsK ݎpifTQ4ەן%}͋fDd/3%9in(#Lh|Vh,'Bqm1ybSRatݙFRd@$ABQ`єe:>{ 1RʓšALoCLd"KiEjWFXvuc\?l4ҡg}~(+MDUH{NbTj' M&o+ԛpEkoQXr'ꒅv}x fbP3x0nyPff7;>Q0/p 0"RUǻ'5Y_'RQSEj5ܫm;JC }_]DƉ$W~Uik1ժ ^},lAeJ_##l+Lp=`!dRIܷwv8-N.$Px%%m!TE<G}VԩX{eƚ 8Y1CV?`NͿ6ds@+Ѷ}1>q,f8@ v:53&AvЙf hWw`=|IbKZvxT|IS{Y_,˃#Xhɔ^pXJ)+d+98LB'q:Z)LT52澻*~?Լͫa!ˡ iV j%;Q Ejԫ)nN:']h m{uCKkGdu 8F@O% Y9vG;9W-'fp~ cBz2l)Yؕd \|Y޾-'LaNg7~!/34h;Н!*z!(>Ch?eUa[+ʐ/s?6k!SfOʕL:ߍ@QHyxdKxNMŷx}Rߠ/Ț5!~!*y_ b{()bxN B:( )TZ?WoHz)Eh3xr$Ogv@o^Py2S N4T|oE Rx]\cku rX fei Qrkerx/)h H;%\52.<k#Z;Haj,ʔj5]@A΅[:^SidC?DJ12j'}˜t`2@sbR z4+ efjz׸3x_QH7= ~.ٜ)SUAAVt1&ۈݯ5X#x ^gv-jH}~N'4ZFJu3ΡFV8ڹ7Lj:;2b~}D:,uhdn , +BCH 򃵭5Pw:2%(,m! d^e!uBcA+oXh{&!Aw zދկR+V U: 5iU>/}e%E0]h\qVxy"ozOf.KHf8khĄrJ+T&;?O5{T@E'>MJ؋$4TMKyy3Qs5ӄ '^S$b,OaszLȁQ;W&,FWX=j2?8+TJ+dB۞Qo? Kt'!t9|ڒ jޔ5۟z*josY Ѡ $3x'Kцgj%м=xp%! i4yrrGiՄr92oVDvY @ptXv:9:vږrS*}av,Y(]:QM\ρm(TGCM`? Fe$O98w}le4mlT-JWFԉܺGG4vCAF΁'yfd6>u!;-J~R#Y4}iCV%^m Ȼf5[|h$5M祃IV(<~}^ v uqg+g(2/ՔFǫ9:n lOU ćeGiЖx1yE{+&[5*f"o6h@t}A0+&HQO -qM*n%qc`Z a:2BGL3խU)HV'9w 5uBX}Z&MMO?@ B(4d/QxMI0 3y-r-GH[,X8fO Yu7I]wWU oؠ#OݿZ嵑4K'5'aY5$ B_#Tf/,G KUeRW .$na#.sThIʊ{8IM%SOD!(_AVc `!9li *le [J×e@0hr "bj&X0 ۺ]BO~=4fYs(4iE_>K`O-!O|<N~F]&^7 ymGpvv5Ja@:?ʆ6ӠvSKaޜ#B]1zx0xdkے>QT }w,V"ӪMaWx*"|cnjc)kGwm& [>mqC>틎?:  (KWHg2E$ 'H|aLUϕtoLlw7W&"etl&Evǹf#I#8v"/fj3(govNCIUA<0Y*1_"33DWi=s B!T27|{8+xal`)\p]4lsTj= Br#r[ɜL7<0,ZWDy ]5$,[uw-7I$"_ٸJ÷3&3c+ L[0fAm%3jRΣంhZF ,[Ϭe-EU`2>tSza;!x!{M7&N/= )'ሀv~bpz5k]ÿ/?Ͷ=O8ڜd*5$hT2AX!.Zq[`/=W`J ()yjqjElpu`>azOLv )@ q>OpaƓ{YΞVOT 8( W28p[f{]۰!h&H{K!iT gS )e3F aπ^FKLYDZ떒'l' 6/[D$nm juT@+'N^ W+y)ϰm,75snD*t skևymWwȻ˧Q1c_MVyYhpr֥'zw)ZgH1,4sq[ %pF*OK sVlB6aỸF>` !Q#_vrY|3(2ȉ[hsQ!t7ׅhQ!5vEv Ԧw&[0"h@b{0<;kqL M;XCK/݊.L_n(ut +%7"u$B"`Wbh7ʯ<`wYwyiJg2~= pUe?髝MwRZf5Uvw"Z7HR7Br0p)Zfes_zx׃Fj81ScǪP]C vR(F bH/vʷ|e*>%e3/!<4" 'OW^,jhgP8{9i9yYf#Qwdߟ|P/V!RB#Yd7+&Y@;h &WBl47DžV?.T'w78PFoh({hUπTʈX%~n?]ܪQsi3K4DhŊrˤco+G4 sqq†UZCjɱhj*[$,|UazI!c猁Zyl7kEU 0$/Dk(;S 'w 2d;GY}JX'aXd;';B(.HTaJjqJ`{Rkf}DE8Х%  0` cD>fZI mW`'߭O 5(FF._.]r{]`a3sX,OB@Yb7fmaW~ @Z-nuwȀoh eQ|3t-):<ŪZqMȑ{0ݶ-|鍶}n:{ע4}p# .roHy2]'8Ym BoU] ?2ףp5ǐ#F/3;Nܐ@hاxpO\2QƧ 8 z@w*P@Hݕ\_Ս,9쇏>#}ϊv_X@H.ylXD:L~G*hІ%$#a;p,ߣ퀲usV u"3Ų=[Dص8ШRx5e !"GZ8Lo-SVZO3vN,y:ʯvG?{SbM7{*;lܻ;S:\FǜJO`\ Ü&COĶn;ZB=rY*_"8ζ(P\ ?~"9k۞M-+8~ՙIl!mƧi#'a8jŚہ- 3ehL̑zj[谯o C,KDԇ;2>g*tL!˪@vC6 pܙ0;MA< %|SهfPyG"_V1uǘrON&fAY>hD&pOkcUYo2Vau^|L/ѓmf:Fvp{ iΠb#*{@kdqJuW?F9hAfOS$≃e|"}hDf846ڵ }q:)4ND(TCԻ5zm1Y)I,~GU\E_=0bԤטܜ_ Y4:?o}Xa2HOmJm#f̢&m}:=iSPwc(S$Z\#@>^'҆uMirH4aVaFvMK[G>|nprws Ög_،?le4jS;"\M@xB,n//ij U=! ߨ >(8/(Lѕ2:n{ϐZ8"UMZ\4g)H>=! 횄Vź_.jA'43~ Hj_IyGmʉ!c?FeFG&AD\&T5V _m1J#NcG,bŁ_ac[|fW$|]D{' u9E݁Nb pP Aq0\iHz5s?Piah׋.9zN 7B,z}l~='82(h%HiOL9"Ǖ[2F{INf{--X1."Xp:hks {!Y-[w ,VcqS4TUҌǕPh">B9g9W ME LE4٣/{h񦇠ɅQJlb1b-0~ QPl"}‹dO/jX=4! nN/ַ*mP?ZH8!ťҞn+n-a9.`0ZCH  =K )9 'z\=,l%U5\spTi74vVZOZ tzIҕǏeٗxFXy]yzײRԝ76;ؔ!OA=|m(9Õa#"{ YcY%'xx|50?FǚH65OnX%X+ boB:Bӭo7.|z) D0fe}'`Y/=d*VaI=[|V=FH78u!\Z;@OuZ3@oS"t:`B^,ÃNĚYpW&Graɚ/q^4ةʤmne֛i(}D9Ip<;JG7*΁/teB8{ ^DStV +C{&#zC/߱:w1g_"ʔt% ϒVkBJo=4X$N(*G n)q9P*4c8V|o8z qG Tk* ϒ64sLg4[m =_&=@o"/Án:hX+|3 Y}ypF)"G s - -SyHW*  tQQtlcښPTۄe&0ɛiGl*.! _$ pz#@Y1ݵ^ƿR늸 | RQBc udNK&⎂ c <;;y([ 5>TQ?FtXcOw&T%aI{µL݊'I"iBMSh҉ 'Ar"p}˜ƾ`reK-{%8W4f{IMVpx+`ZX+ @J z{HtQtӡd,Ppv{i4x5}ȳք% pC zA1orYVp5ltˁK}kr%t&7g$u/uA|v\]8bVz+r zC#Oth1M6ijw3hEDEٝi`9-xhN~AMn7#n_\2[\ (u}9ꕓ.6g;Y=Yw5%8G_߈ğ'SϚq1s^D:H#x[Pu?yDH鎼_͟[=3ПbW¦tL|ް-/Dʿ lj25\r' >H@tW=Eq%^̬bpj"oJ?u+~'*]s#e6=C2=9w4hZ sXr/yBOdB! Џ-ڐgn0JҫsSf%*{1+r ^|~Wε !ԧ,<2ʗ~RHCt5Q+]OF3 Lm`;nԚpu;Yʄvʜ=.ӟdEWf>o l[i\2b33#^ĎEz@DWAw#iL-F{L97ڛyS& `2sɴ)%l[JEq\6r;ȾHu qkO3` RNJ8pK-/-(Pf["+57a,/zYmZ5pY~ Y#P$Nv pDwȘ%LƠ4e 35QYfWhťŗ"imzf^]˻zЪB0Üby2Ƃf'H&I'gQr8*`sQ3?ٶ_;MB}_B9c-^#B,9`9mSEk ՅRNf' #k; ErXj*EëIC6ʝ<@.T[p^?\@-#uqRWV""N4.^_;4v;ХE wuHYxyo(WD56.G22a1Gc<ՍʎI7sliG9ƂBѺk(ޡd|yvPe ,71MmS1$ĝs7/"t {B`>*Cx{$ϗsMFK&{;܌4#1;aݰ mn(p@k MCmg;W` MZB7| U&7`~m/GkVf!3>epv劂>j8_0 vCHZæg*~pEଔ'yJN"/L)ޯ W]|jPY.)cla(3]mtM -՗$D.i?\?jC= +!EF KI *ΪUf~os5L'H9ֶM9~⋜8C [ñȜ̲eqa Kq.mSg*8G"&+e.!4F"@(G#,6r`"f=m$b}*p'U҆E!t1F[;cnH$dOA @-k+qI q/ߛ[ۃ2=IM۝sT.9~TP( Xn]M&k5se'{I!)n'v{W&w0DR >z=ٞKey'L$|)osЬ8{~̈x3_q̅<6?'0&@Z]Ի`fGLIhCGzt(m&i(`ԍpGh2uob{+V(.LLٴ` sې昕GPp}DpFlVZJ*u:z|!ҫ_]_,TQ#*&Gv<)v)"L3caj`; B'.Dw)%jPF/T_.34m%Ïchgט ئK#5E+:zO57C\x$dIuU?1E6ﻟy%q >qI@2nMHLIyv8Ƒ QC4Qכ*~ }+fl7ZYAI>r$t6G+ P)Zosg?¥MZ="hAl@/.VOT,F}̨ Y&vvuހ _Y`$h-xtd2&&F6 'rٻBG䇼2^0jW@/@FܰNz)QYm'fS/~TA0VH:,_& D1j~JN^ ^#K8s]g{8uFH{O'?| qe ے^Ɏmj&S}*|wo>!4 Ik@4va^Ì{#pz6p\I&!Xpͯ9G )~y@qLiyz 3@_NsQo '{ &2k:jn3Q!̘(bFHÛB<,i@j 4mv1CX">OD$^>2BƌٽNiW-# ̣ʉp#Yu]am R@F ߭i4\5$aP}P䯴 afP!x+ mpJ?7swquJ'| B ݊SezYM@@=)^OVRH',#q/FMmf F.8B)'川f~Ei̥'U3Qy5(5scڥ|='ʎ6>pm.!{r YFr߷FyhEQH e**d?7bmjWxn08Ǭ\Zzw۪^iaZUXq'`9N0;aw);Ӂ+X w#Am?NWOsZS'JJ9Ϲ5U;:EAʲ4W-Mz4%D1}kDϷZg{#.|CA˜̱20 {ē}!#q>ORGM w.;q\zr޶RRSuƸt-d|ƶHN6{s >%hA], ϯsvMDxTuw7 5e*&4^C&q{_Iy[t M* /*V9p=քlޠf&(%X <.ȍ)uw>{@3{Z蓹 4fiqŻ-'\Cd.ܦi<^Bj )0r LfT́ʏ//1@tli?^e6߸U>%z**.FM=]jYuJڿ_m 'S79X!&}(@ށ̂]#^}ܐ5fHŖzRuZ[$lѐZ_ZAj2ČփPf?ƀ3(womȿ{Ym$Fa]ϧQof$:gg/S} nT lY?OL~R(فooEd73R[ $z;`+trW t=a H /DW~v}64\_4!N ;P%jCwNawEȱ#Jxa K)]F~t>p5Č͝sbu. P }fOd!oX5D"UaMm1\9bx>HԲ ǂ㊜kb;<DK@T&Pⳑ2mLZi\Iiz =;Ρ!$U 94،/&Q806օbqNud*4.qIhAHyQfUHfhR/|0;yYA 4 2Zw#s,D,Suo.G7~l1̂DOnNn )G2B\&/ESVy`fMBqO'jpH)UDS*3G%&s1d䨓tl@h*t9DՋUX\g],ЇQW%F~zVRZOc%W1LQd$.2tzl!r'L%͂ 6p]2q#^FОGEtwld΃Q[.*gH+U~:: 5GdZXd Q68B8q)gk"ބ=O$ ~m5*thmȣ-xWٯ42b!G::l4^a{,MnLd%"CB?Mh%G :cuI8~zKjf YK!J¸Id Zs/) %Mf,N4ӌltY"{YᶨڹlH AQLyOa4GXںqIT]!%dPve _BcRELV^:Z1kkddxYlh"\^yH WFE!<1]u,%~ebXN*|o$))Op-azQ]qھZ*DY\-?/( Ld[RN@2X]dcRf)Veɢwse463ˡ5fJ>$v?*lYcU 4CJ/cxL 2jb6ZlE ϢpCMc`SHatKq^9,!2J/pa>Z|Wbo@3%23Vc=Gi Ȼ ˬwcy>|w)Ά2{ O}@p):7ĭ1;p 7Fm?P2x#?!&]+Շc%@&_)T  $훿=:(wIV\'$Ƅq2&# c mǹe= L VrK#'PpB 󢵆^b닜qvpbyjT @;iOqď1W_r=砺^T $rڅ0l> ޖU:? pY>Tńl[3@Xi{x2d)LupB+Q5blݛ][ 3RzP%aafڌطGF?[Lxs[!@.&-2|\8KRvmC?FX}aǖm;ϝKX=4v2葊-hBs|<'BE_89*eWp4u3, Ť#?Έ1 D3a.]#R\VGH009cHIkqU$s(GP?+Vĸh0DX(\ݞ؍ڍH& UPF̂O47j.Z9ߤܨ!A_h4G'$8$q}ҬudIy42):ـ׌V UFÂX؞AdXn>Er3GA&ndؑl, .xq#> uW16Ȗu@kWĴwxɝi2VW8h,fT"X# !T @{dXY)$ H bD^S0{غ^gP<`xcrҡ-aPu=7ߺ\O^$e%kW j8iEZ>1z> 9Y*$0j xHI CڞK}q^36H聙Q{9_RF縂@C (N[{Ra"LpȤ2,A/gaڽV$gWx_v|QJ AڋR]m-. 3 s"@C>ёTv/1.9hQMtD 9Oh|N+ve{"([g@TX7g*3+@oL& %xA-InN*J#g!4/)rѧkڇ"Du֑ѣRM9"2Dn&F8<퐥2?m攔|,4ֶoC=e qA^ij }cy'CCzJyUvX qW[o~+F>G*UYY{4c&m4TSB_Z LӚ:WBEC-6D=` B' K$i_;Yr ı>lDHI] ho?p)o`+ck[r0sdS $dhT 5c3]k[+LK3c{xb.- f P'v |m1OMVg5EݝVG+q2h{g'Y^"&ōc *6ʭ،$:y#Amh8}>N2@S=E6sfj >"i:O]Ywja?Nv<8%'&ᲂӟJ{ hpȚLүpYPkMr&mrIٌD+7<1,:1ĀKfzP90=RR x]:j]b61Fhoj[n2Q:QTppIVCSO\!W|t>v84gV=_$2JsEmO2{3w[ud'gdӨH5^2#RbO{XLT.ClzDK}o܉տ.1yRU\BϽf 9_xfs[`[O)Q4Ի3u݅U#tWC)B2QeΙ"]\]wl23+Gy<+֧42wSwrkb 4iL%$8KlTlBaQQؙf~Z"-$ɮ\E$h'퉣D.Th#4 q@rmQڌ2]Y%l$&)hHv2eQB7&x$.Kפ٢>6vJ G"=?k*onQ\^w:Evm>V6GZMN}d~/&@y?ԽTSX8@~Dﵪ tkd"1S+IJd`ahk#za K$S=UӐOUA=ߠv̮Du鎦do|px3MT1 >ѧ[!*j"Vuy GU[_RCk~J+; *zO s(^s[ji <[6 W,GeM(":u9Ċ1ST:Θުo{g0uiw}P[VD~ ăZuFwn|<#Wz! PơCN"g$d>Qh;xӨFMDo-U#hng e.imJ.t^7h͂U h⑑lUT,rt5`:3L{bY8nR7o٨rLsx( z4gDS/gFI )sdXˌ%LF UIѬh5P lؚ%$"_tc@83/;x'q$bVkuӞwKE,laۚzwӥY}YFu)dx [ڧx+.GwrH=4;$wOamqgv5!Ʈ6Eo8#fiIjVc;oXڕ Kn'CY@8iMO!OVM=l.'bh0J;[-s_m"@sKkseֹq` i-k#P˧X ~&\P&#Y`J( a˔ _%[{nMBR D!|0<lѪ4!T|ڮ.D{VZ_+Q/S;j4|!0pɀ8|ie%$0ZIckȟS=ߣ;ggPzV޼೾_|=|BwC{2%_?:OVF^h B+Oj9h%V*6]A~=rGR9e$ZQA ﳰΈ!#k.I&l`~FVFҺ M`}"#L%TK,4iz[Y:֓GI->S,ay|jL}Qꮗ#xt__VBQMa4+@fk 8Zt4y+]=CEٯ;?sO$bŬs&eÜ0_*{c"/S՞E;aSv7Gm(/, V041T } mPWADӊa"4 k}Mo(^6'Uh ].$:у"0Z4oqG1e ₴n'g7 {3ӫkdzi7Dwh{^ zYP=@^̥mMH45+BdUqeeA fݳΰ/Bg ,ې"Jj|'6.*noQx"`]p4ev ڴ{pӺG rt?yx1ϰ }(CCV.k)0x_Q2Dme p8GO=QE4]}&1U+wtBzK)8c"IlxA; =fԋ~=E)5)oV6և8O0= %ɥ(1DQnf&*4lR|fjBsÇqZ$Q7 3) 0Qrq5MUR>K׆e;E֐V%&w#SO(04X9)%8xMC94X4t z#@e8fhZZZ.F<{:~È`mBk븀k,NKar#2.!|Hg!2PO!*v?sgS9L>%*Z"lg!vR -`o2dz&MWwvKe{尜A GV!=|'=3VE8V;{;#Ag0~+2QB9h m jfNq\{)y7?Njga+PU!'HV,,LHj;"PRRgtZ:UH1X ur@_ԢGQ~m TT%^B] =FGAY׆$KC~ hGqB+Ɂl<#\m2jIB*Df>"3O؅ o?2 Sёv7Mq|$ x`u͍Gk={<_e=؋q#'Ii 7o5B݄.n?GgC!`u\YH8=WVKWssiDV֤k0V,LU*|jK62Ѯ]``>1̽dUc獷o^k:U;XmB(=w HKftdXOHP0"Y!F:c.aG"7 ,s2h^Qu#ϟ?43.0ךHtƧHKx0 ?jx- =RSG H~kʃ|4A8fu ssϯgCbËp<JUL9D=H %n{Vǖ2~by/Y;Xm{Pg%!i)NKo~Ͳw[*ISi"g^/ )QxEɃ$-Gԥ0[8f(?#nlDc|4f;nlұY$UPL֝0kA9uƎ^BQfbӞT\'L"`?#m|)rܺ82~꩸T^XlmW-s4gR$IeU.8>M0#=ny(1w~*۩- Hda/՚'om$N7l~d>=`wUߐ/ZȬLuG4{}ɱ㦥CMJdAl/o_`?zԥ Wި jyƎP$(wNP\y뼨.}͹>Ps[!L 3GĻdWnSD| 荷<|c" :.qrd[eBRhGn$k#Q<`εȪEɛo2HuN˂J:Ɉs JH`PHcq]ɟx٫ a Ӵ#zu6N#FҊ·\iT=AH]r'ThgؚDe+ }By['GmW4@J#t>iѿj:}cNj Y$j:t@9B \4L~9R f@%FH jhbi+&)j JLVOUQ cnU+Oɨ7 %`,{+#1˚I6 ð {b\X/n/MjpK{7Yֿ(ؽ@?#}~m7͕vuyV{uG-r*cz]WԒGL}M*Vh淵ݎUZh^>[L]IL ůfUوWraQgOR2rF ?GMW˜ l=:zl"7E‰1w#g NLKkup|O?SBE gz\m̓ ^M]9F U#pVڪHDAA6-RFDúP6}D-p*ZaAD ,HW^ *ug"AvQz3Fs?D j G ;Pscao! 1Qֽz}pig+W63QN^sef۲%r|8z:"ŗÖgmCol7 ץW"`/IN +8V[ D 19]t&{| h{zdGf+3(Y6鵇EaRPYLG__١ c˚PG}mv$!,ZimؙOo7U!v;Ib)$&\I OY+OG#^-mf%UvP\`8Y5y]A]9LqTU0\3W8Ԇ nġq=R#h0f.IK+VBn}2| M"ŢO]r$YXLl625IbHM;Ozῆ'?TbYQQV<> hM3˴Wg* MUݾczs ?zy@*֜ri";Txu6Xn<Α0}1Sr~4LgFxV@ٍUy<֔F);XMIhUKkW%ELۗSs e6ѦFgUSI= \M! mP3&0f//.K,E͸XoArV7C)W%,g*ov D*1)Zawx)%`=* `,Ћ.:ScS^d&lKf ۶kDtSgL)wQHҐgC|ONƣPii*Eiخ|pCw{\Ng+% tfm!)0gn8c5լq]o JgRكu1@+?s/gSwdذEtVPr7 Ǧs -**5S 7ɈLKpxN65ܕLb/a lXHᓧ ` ?n=Sϛ pg$ AZ"0x+Ԩ|jx$Mҩ &?e[@ 7V73PT*,4*թneeܢPϮv"nf߽}ae42Ochz ibKvނyV:ւދZz 7o)Gtkn7'2^$GM;X6XrxL Gvr<N4Zj(EIb _ !h`8xаX[|zn#%ÐGPrwLv0y1,3"{0QH]"o?Ҭ\ZG8ykB||ޭ]${P=kAE e6uRMٛn>lz?{1J<"Ff4Lo7H.8Gdus砗`ͧlBMv^89Q7hwގ WG$Xyh'sa5M!eUCCӀ .LX%H{ ]86m"prlUG )^A*ud!N T͇`P-ˀ% =-_gz4].>bC մAg2/N,X~bUS?mKSipLj"Tn/m5~E2 Dխއ/au"J Bk#ҠPY`ݙ#ǰ PNYܔRs#&@n L=-G*;#urRB-!VLǐ!pFnʚE 4g~4D Xu(*{lT@],Hk0*jn bWTS1u$MfVK[*5^`#ʹR#Q^ET[-a\ҫ5}vהY& :Ǯ&`Lv!6{zfk.CXQ|mh-Sh/AD(Đs@)y8*m$F`{ +:fpQ+ߎ8TI#sŌHF1]۰۱ 1$׉EBuCBLV, 7kYLC2 `=rڰ╞mO""ԷQ'p{5=Pj=[ 4l'*pAtBd;n!z5(l4i\oW8JH*taHb_c -%4)e!R(ۀ#R/圄xWXh^mug{wOzA8&LhCo z8IvUS, (LWw ~ X wiI Q 1gJyr%~. j`l EPΆ_?bMU {9EX+%͏y#n'lpv&PTvv7{gE"kXeTvx;옮Xr|97Byn`|3{E\D'3zI;C1'YVWN ,Z7@;g0a!+|4vPs9յ]L-Y*_%UGYQrIv[4rvhۖͥo!̻ԥTC]4`lVLih?/)C>3W Sj |&vpwsN ~ G9<=Fh :$ʹQn o}gfs p Jk3T̑/UҎFr'/j;XiAIA#+b@ `P8kǀL+MAlH4B] *g{[uߏz)(v 813b..&ڙ[rBN5Z ~);oxoL5Q*-a_͋ ٶ9,lA=5_9zǹcL[Erp4RoTM{+l-ֆȾX$MJsSMPO!iN /:qf@1yIⴙIp9 yWq^f)sј6aUn?g쀻}D?Hln3! yNG>"THFuOIژ,Oξ^3]PI{pJ'~2ar~1Pϓ|EġW>,4Zg9F4^ oY@(mzlJJW4,{1H+ѨG# 7D`l@|p(GƏzP˾"fs63&녟|LRWT^5#L%he̿a!5"`|Kl(\HGЏHIXpw zjֲ=M%3B;""DxMZʼnS5:J=-M$9\X*KfΨy 贚mlSv-O &̀zxr[rf #ڒ$,Eh9Lg,?4Y,i?}DW׼ [/I4Hm[0{{A0^`^\CKv1gV8CܧxM,:$okT~DTAyEykxlY|BD"kq&pwJ;D-~VBl yBzVu܋RA6ߩ `s)X  *?DhUJ*Hh״vpt|11͒ͼOQMN*TG샨uqRW[Dw,F%w_&9<"U|loT{0Oz67AL=Oh57ܼzU7G!npէw&Co-GݣoV7,HlzreF:wqNб>ỷ>#t ==W_eD(ObR B{<,C /)*.]a 1vcϲ@; u!TBg0.ֹ-ڶ]O,h|>() TPbaf<1u}÷X΄;pK򧫺@Mx͜*0X 8z:[EC6OV|0FݱT;KqI7 )`?gc%$=5FT܆]1|dlhLjJ}qyZֆp@5>sbf^5(}ǃ1"/?\l1r#ZDO;\u "X b8}SL̼5;1V{3-l'oՄGQmu֡3xe`if4R-t{G1ib]85n+Pa%HJq||eih;ix2-wW@1HtC_0ΦBRYyUK3:bt&q!wj; eTƓ C`:esgA;7-LXi 01;xvgR|4^~!-; \J5=ŀ2E%>C-4k&w?6ZS,Ed|$4).H.뒄c 4lt`$Ry6Hj5ag^xUC싒W1nyݣ}Drp7B90wkuIQŜWWB Vr.K3V ֬! 7;it3k3q܅ T ۮ)z?COKVgāޠHsbd|D V]]t6y.X腳PTVWhѧ*-0^2p+Vcl`lM ʻu-aH>C  Mrq oxRy&Sl9ABYe>`KI%@)JխR2>jشWLΰ l3Þ|XVDesss1_꼁yi *>"͋&M̌k ȏHB3Y!Ї{S`Z \dsOd: iR$޲[1gM ޢ ]u\p‹.)P˱᳛LJs>$ Z_DH3. LqSea*TFz~:K<Ɠ!' a%>yE3Z.?q =8ר f*pxF،yO[8,^8gfJp}NmS,KfqP* ,%TCל 4ƍS}!d4 MkV0 #5 5vQ$cd]= `BOc vfF{UZZ i~<%D:8̾@bb]Π:vIX/Rq]%X[Uc0^~~B2_?P L- +sR[Q-a'k6ڤ7!Kdƾ!Jx,E;ҩ9b#'HGՠW i4(/9Tw.tIM]2?;osR=a3|׮I^|K+V&bbR|3# {SѩzLCz7_ nm&T}^IitA}Pcx&qtަ a),2g);W#u@o=ИťL七KB{PyC9#aPRP|tE=U7zsYT7ECȽon l{Qm8$j=k52wMIt$eiZ#R]}y8b˧X@yrI!BB ";-%8fwgI|rR>0=VF2+»; J j>2kK*Ht g\/ z#,deOoId- D᎓ĹI|t}̻q&>O :~TYnS MM':& 6l"1ҨT1K-&U=@ik]/kķ|IvR5 $KF::ǙrkDjb[]x9HGcA"hǜd7&]Zӗ(jf@ U!v(?=x^cl5 eV׽qi2eǔmDezϪzBk"z=w `$!Зs4R]/kj=ܣTj;+&z+S1v4NC|FQ )j!@CSlզ"k*C`heB-#g&3K&YwS+tk&{)AGjzL!(n}aQ>ec~v)WL#k$NPz+`ےΠV"4xe+F;A)St P d*7\k&6d$,WlcAv73J{7*)Y9&g %ajkUV^&]aỹ 9 "0M4 aM!u;02+:H)RM]ٰXmΓ]3p=ܬ+New|-|9-l;XnG4sT3Q 5s$Lv`*.C [m+$Yf`Z5cunz Hd`U95T18;JAjR#QShs_G)В{)xs>9Q Jx=fH:չIMod tLO`ܝ &35-@_׳aLYۈ֟CƱfj нazfDxX 5+L.3L8%o!#761}/TSJU*뒞mݦ>&ރVR>`}5;k2C(:DʢWv$#'`Fi[ 9 0s-VZ$<@:V-hq!n$uE& K`ka .=Čq K 7WZ:`Rǝ}l"AD!TEKۑ=*ʹ@MQ~'mr 6hl]2V]dմPda*\탑}IrZ>QpTȄmG|* \v/GUO^{= nE M[HS:'X|Ǿ+CX\, MCt0>t;(lv0`$"^.l[l,9AF;?& yB{o`-!!?Hܱ%%^۪C㍽Eq ׏l~gF!CHDxt`@y(|A+ o*}iyQo҉t?ys0?>>1A.DMh`܌  t dۭ%Qjtu1o]^mOxK`=&)fcY%^S]gE&ҳv]vUAid{'ǣ "?(.On~^$C9\2*Wq 66=Etݩ1=V/*.Ƿ%=Ahs#|sb(Rju)dӎFs0x5)pV6K>(J\gۨ{Fz*w0#I,txGtָ,Ԉ*Ml1{@*q]<^9G40| nwT#!XA2[+Y;=V~S^R`^^7% w3k I5.AjAOx.-<`'ٵ.4Tp#+7@f(k; e4.l7v|03mHS1{u'Q-.tV9tJOɥt8$}o#56C_1RK- cPr.{k Vbh.y pշ"vq\jY1-#^pӊ3Ǧ>_z}NL<&ШZ1?U,ձ ceo jy?i]6(8%,8kFKԨ`,YcX#2P}N>~ټ3UֶI-a˖>%> . VoD TBq!+S} )ӄP 8ǽGKu"77L[|Iu<*.P?Ben&?k\w1R[ _ hW;8TS"8I Gs.R夵N{;kQMU,ԛaԻ&yPi|ųwZw}0%&o 7t ƲzQ$ҭOsE+q$*"#GŁlJ~`KT+ PXZ2*FpG/4֍"cN^`>Eѓi;;EsD[_$  m̬j$F%=jf&̚(jpz{mk; ]U89f\}F{ Q$j5ӹ9~b^4!F=튉ù*sA+D'XiK|JwJ, R0FjO0$ SB >1v׽%(u!0b?N'D%aҙد\ t0-ᇃ2ȅ&ZnM$Gi|ŧbqW$r(*,3C S x,WY[ZXnT= z]n5W^-Pb 7j@=ܭЏpHS^(*3mVDΨ]ɲcH͕gfQo1!BQ)qm BJŸS!1gK@,suDJY  ՚J +*I@=`@tFǨCBj{&UGYǦ;"@%!{kal`iP_LdG. $AAƿQ;E;&$/8O N)ZvvL! .hg x?|ZG[>I,^T"XSƲ>-{OtbexTJ vUddcrAUsQ7B jK9 _",cN?)ֹ,o/:M_!(T&LJ'J;t*` 'H{aC2S[(Q`ۤɶZ(zb3VӪ]੾zK+`-I -rGl+Qxf| \|zn<#Ű iL!KYpdkV_-X4G dz%. LEyGh^tGtZܤkP0iJE ?#/Qɲds%d;hu%Uܪ+7Q1 'š;2'Jx1`4HE9 ըp2᣼|WG1؂@S8~BR@?eۿ`dAX17~"\`qJI\<Ն4 ( 6հ?ml dc>Cߓ;S\aV/&n`%k - D`U-OXaפy=Ʉ Si /U1* N,CsIFcEşI2h3xu9b9g#NsWTҥ4,a[є|;w;Fk6\yLY (QMUnژA௒.%ˇQ)#6G1ݦՕp =+g3Tw,'^X+6\A5.G;(7Q+ ugf7Zslrm0/1B2g٭d;!},_I-=_y>7$??R 2f'=Ƅnu NQ7 ՜HσʟuJS^Ɩ">.^3UFuϓmگAEapvF}44乘f_z\fF`)"RWzƪ6w=v6t.Qzma[  }^ݑ>Ux>J$me(-hit#d\ 䐬}4Y:,Mpf2$0HojFDb.qi\- DpO*5T)< _r3聤+X,]W&M;:4~\r nl &"s҈Q0YQ7TҜ:2x`[XZt&&N_H3ݴi7Vukv˗r,2t2yO2븀P[άd }lf^\=-ke3`f=rQw"枸@gf| U(x1*&ŋ2.9s崊u}I*(tQkjEcА-4x4_࿵۰@{5)75*or*dH=r"lbR`RN "0YrݟQ0cťhZ7OJ3C=bz{@XJ_6_E%5Fw h&r @t )Tzz @>O0l`?"xïp&Đ A^wIh0¼ Bki5 :POﲞ >ԍ xHH/  % /3QS(zXn V:߇k3|0.1ǪX<\)ˣ0UA->9]{*jD6=qRpn\M JioW"sqr7[mmsrsEn\ RѮ=6|MuMҏc 9'Cf$MU3-5ޯ86RHR*gs "i{'9;M47uؚEIw:&CoksWɲlnl\$fHu1:(:{{J-Q%J[V)L|M"Ywhr063Jb"ʉ ^ǻlG0J%.c NOqLxSdo%Ժ~B R7QdEzeVPM~(Sٕ69܈jkn.Rs,Ģ hzJ92@,=yv%cC,gyv6s)ڙF$rhapH0D(֏xi8N|9I Î$C3Sc23.ީR-eR$V^TtR6y\AV'vJnp蠟ea3>Rh^SCnTm9ko^ {`qɊ.m`~%(T1Z33A/#"47}'%3&pҠa8'gj0iA^J티tЋ8L)aZCh|_/qӠ,!hP3 b&$Hֽ.ِ8na/5)K9sРcyuH&@r?i]TulT=LATndEyQ5*@?$D*S.~vN%NŀcS{Z`һMQGx6d>k/X3ju}~-jvc@pBm d,>.aR#cʝOa E{ *J \(cRHC8}bw?ԏ`&$+4臞.m,=n('^>>ɔxm OMuP)kj 1X}RX画hD9_K%>Ζeq<`? +6"6h&Dy-M|FTF8f `ڛ"ʨT{k *-sCYi$43V#K~'{‰M2^I}"#{ߢ_͜|>g[2 K>|ID6kck~#݋co4rON2PP0(p[#2ΆrgJkzvc?ES"K z`UoCD";?Z0[g*4G|=diDPA#3L+ۚQ,{y 5'X*+r`h9"PݵorXNڅ~6*t~!XPh9a`f=;}۩?Kq_b_Ak^"ץ\ z^ ò>]gvs9vo-ͷ1\E^ j$s_.0_Q'@refh$:W`FaF C)|URs-|Ӹ G>|=t^<{Ql9[* [-}lVe1fG7aM F hO|Xj'I1Rmzi`7\Aӻ>_7"'#kDl^$dᗳ(8e`L ϮQp6o|yinnq<զǛL 6q".`Gz>Yb>4Yr"̳źR/#hƊv5j9h9+=-0Gi }l䯆9o~h41(l#^Tw%dh45ȕkQ_'QAXh'}Uf=& ^Scn dh1tixJ.7Q >ǫM$ow x ]KUSc-}zy[sYxC{RL)*n!ث埼;F:Y BMq j;l BOR$*q; Tuӝ²ߔJHڪ',AA1112핌O/"jZB)[9 _>+p0$emj@i W ts6:91a0_o7 }@W3Ztmȫ7ˌ!}JI7fX5|OO&4xL'>mQTSb o`Gf{ȇ(깸A"vJbp:Ϯb3Z=o{ Ky CkJ|qB|ZeY-NUre3N8|q2!";D)ҍ}سT;Qft^9kH]UqNO5A3+ծӛт]6x4y="oD6:bJL^7H:w+#戰s8qw)`>O6a:`aK)x@mu$b4޵a|YSY# U) И6>'6߾z;;QQCƗ@Aϟl?:O _A%ΔO} U^Go{v',ѢyO7e, lhU|xjMk{z+{3$OUηәk"`U=Fd韭x8vQ$u]G ˥Peɀւǚ Ht.͋g'z5} QęTo91I]4bB*f&!|㱭@庐ش{Jx^F45"ݮz0G d2 02X2G.J1ELoq* Y[gd?]^HZha4{1*rkIV&'8ݲ%N@yB+rۿNx,  J'K.=ٽ;&$;,.8f xà$SɺTDUuZŧi^EC2WH9Q/MOB:0O_>[yIӺ~jU)xaCE"[oY5>feT>} 3.N)،Hta~O?$F;-SݳLte*Lu܁r8XG#wx^U'yC0;3L3>[UP^6IʜʤCJy1!Z.$_PcB+VuPօ:WLq#RқI =ʑƑPM#'DҰptw6t1Vn* "vV}}%Вѥz!D |o@M0~ 3Q/N;)G#} .܏n[nǘՁu!W}X1S.;O\c^FyfORFa?ybAa߼j`t߇L [lӤr]=7~@>r>r?hZqRBd$>tF}g)D `ntES6u#\62|UM@>/g]&/ )o g*s6pwA(Zݠ3_r2\i΋WcûBA jP¨ZŨ:Ҥʃ%EEY9ה>׿$>qe[jUxw4sTӄE./8OHy:FQ 26gS o/|JxcFZ_Nt0Xm)vp7kBzn 契w(LS'UO[Vܗ. #orjOf$ߵt8UFQIv}I3p-jS T^m6H44[ڃcDS~WkiŎ/ݕp?KZsqhľftnI|3MÊt֙xrXB YgK{\*e31xqY>5^(K/0M2to;S3ӭeR@1..ݣAw[xwsNWӇЋ։5|;[/Du ,Da2eoE |Φ_s#YOG(rMBuxăFhE8a8>|Dη{Ҋ{p,Hh%¥CM BX '<hY}QD OrL 'b呭 $isWD)"35p ݰ0jZ`\ z."DG?` f[moͥ7Yv|UF^,3* #6v"h6A {GMYj:9HE{ ihw=i X.Uͣ#u ąng(UGWP Qc-!?e󱫛OR/$Du<{ޚʠR G 5B]6s^͂.[鱕wrһ %þAEANvDhvFH{YUPYyu0=LZ֬ĵk+:$h&szT$ 9Bj)RM+OGЩCx-- jz;Нiayqi,vs7b_իWהCWhXy_<ML\U7fS6[% <~UB)-g)S?=>aHoxFlG∜k&Q;^*e)|6*w ?0꜊g⑯/4vpS@+ja^ؽRj) 4оu%,5AqHj 6P FV$ԍ3ֵSyu[`c0ԅbu&EOSVG#7N*N,O^YZ%80CZ[sVw[l.!C/ 4".NL- 26"c4Üi!K|p yRT-+E[YjbofzT`GYĚv=صr *)BŌܵ&;Xޗ􄵁P!n>R}̇(amdUc :},|b!vt3OvJ9RWA@iK2˻)|N^^^M=s3ܯV.ZUAھfK[~ҀF̃{?֖|D.dV7Za<,LA q; v6Wo4p[+?x%Wxw*.KPl,X4:W% r M^hFZ7IprJwņqgs5ok6UJGk2`kHMۿ_V+ ÛQ;Qrxf :QR0>bȚ%Trʛ=,|O929\K[;կ;S њ7zA(!ɞ*4E&IF YN7̣ӘP#Hf$jX]{RaEJ`{8xv5Bq{/QޕW},`yLDrYq G~(s'f]0֨qBQ=g$@@, kujUG( Αܻ&`][YlƀCIZ~?VeV/w_Y_]^o_ŵB})3L]rV$lj'IZBqinlb&L}fq|fm5INj8Xu1Ld22BZ?Z:AٹtmaQQSF0W#vo lb Z%" ;Oi!e $^x* u09]}ܱoض5ל?li$!LH3C$^j \[-3;f:W4 "J(l#214Yo*w|Q0 5Nmf(SL(Iq8rTt\P4K Z9pbZ"q0TTH F귒gG4e] LuOh jǾW䥘UN{ JO8y7ҧH|: ' 丮;:fpl*}1.j>p@h2|>KpaI>Sb=@34UK߁^JH+314Fo]- /Xo6fLypm/jGc,N+!t}Vr K߈(>jO!W{l-2Jҙg-X?ҥ`FfG(*D@5/JiƗ&خWQ+6Fj.+J+:8!$e-b)н˵~W]ŮƬdޒ(߹ 8 GOilHtIk4ADM PTg{ =$ʖu5$7+9&/)o`_a\S˪TB2IƘ+S%S/}]Jm5jDRwZrwd|ay:EC0 36O$% "Wi#RM5zJ7!wuxO_cI-f6~V6dd-1FjE`9YCl]*2r Hg[Y$̵4@h/?ZxޮQ[#PjRv[_eeH^[N#V6 =)y T'tim?5.dAFE{ȐP~¼{WB'*Gj>Zd$U9DћM6`P!'s.$4f(qA$Qk_tcEaJC}UTFMZ~%l'i]nG֜Fr?y#ܘ(%[bdxE '@*OI uv~")QU=_Aw7k$Ϋ.:1)E&?aaOw!^KO;k3x޿iCl ~'w>hHS-oc#,NO:/).N j&wrc>|P A[Nwbuժ`w4@$4$%.ԸoQk}tH M5:c .1݅L R,͓3+T‹żsk>s'J6"?>0^ժ`U84SXQDeh^~*{D?fFJcTT>n]7)PWix3@m : a IK"JWc9X-el&gO,usGBs1g<Ƀ΁BgVS3c4V~—2h /ۼt叱3`I3{)}|Kc kq59Ge{l9هU xS>@Fü&hZB)^YNmt(Q/W K!zl@3igD'"HX%:˜8(Qyl.}ͺ>ſ2A("Aa-~ D|*&QhzWBʍם!<tjve|xrcʐ޵AL/C`+YRVdb9 L!Dqn:e&g{0ōBG-x>j磷R*1#;ݜy1}ՙ3&Td^^ hVgKdg:AǍV[:{ \qɎNG/Sk|@/5=dWTWsw);U4Ӥ(wU qäk֝q7Bˤ^+ ۆoޕ0蹫y"d Y߉ ;enw!"l!@SQM>Lotz[P&Kh}=V B:҃i'5Wx\8t\Xin͏XPii ocVq8pT DO?!fsIxq&:>]Neuu0t;FMo=%~whLcu#􋂌4dԌx!hjmgŕM1vFRLWPD&vƧo|PoS+l<(/Xnu>-C|bޫ΢1})+ 4cF)kWC(WRb[bd%2Od4CTAEneM&EF/2IfxUREEM^V:k$ݹf?Uy\ou >rKmp+&BRMGITVޏZV)Ekr{TXwԒz7WML5A1"׉*F0c<_Pe:$x|5fh ٹrV-(p3]z?# UD!)!m.-B_n=b5ufis[ O1œ+!fB 7Nqy9in@uBGOb|32i$ɄcyxafcTM] 5׈?[Tc'ޣr 3"ѽ4:#KP&'Oڛ2y?G?Y$(~(oDߎϥ DR/MEK#R;wR6Hn>rTԨucάvd-tV???jRH Z=ڐ!%~|}(Ckm"Pk 3s:{h w@ҥ!ů𐞒Af@>w `5P 㸘5\w~/dċ'u88-kynJȝJ/Ss\07 ݥ?[H2Y$ssKRJ˒J/|70viĖL PwoAhLD{x 1x2}$t6Y+;=S g,x ?DLm?׈JŌDj[# !!WŲ/]t3<x#6sDTgZn<2`_:AqVun]ˢqD`up*q4[0OYZ}.d?ΖPqnģݧy_*Gxq@eY%y3AMzؙ4%=!ٽ;CP'9`(0A/Ʉxh~!谍=SWԌLI}]ŭOe$>bYvE{fsĶeaP-4!4?vAkNMʿZIYJ@͟uh}Du>RQtG+KVkIV>3& )l (< RƇev=3s,ͩ>pgxtm_R]mFWjPP6muQmql5᠊3 =7Dy8<|;b?HNNJ5?:_kL3zg3M6xpn#L30PA˘q=W1/cl.RҊS1.?aޕAY{MXĿA gd5Zv@?Us=q ދ Z/`&XrzzRf?r3>[3ymﲁ>8M,I񞞹r93hEC\POe_J:7n~LUH7* dg8I߬2A}Lzb:3PJumc%=4s"l#hF2fG x8bщSY:^ZOTv9=PRb3GU޹ZK[1v1Üfr1whSgw'R#i\@=/Rh-x<޼#3%ySoJlF#h[X дd%т<[Bknܳ>yBGҼ} /PAHݨ,3hzr)͔ߙJj!^Ws4f_@m$d7iaxǛl@ǼYi}7 aߊwHƋy|Kv&Zޥ8"wQԅA Vt/>q]̲>y;A KZPg;tyP{o*,Tvrf%2彍uTCۏk`6sE੩cOEIkv{0c+e,R M̘QKIv (wVM,BlNĈ 㵜40{3[eP3;'G5c2 Bp؎ Eq#/- `8SsrH@U. 583AvF~!ԂDB^( ip EZ/iB%GӑF _-K1 !u^lҧm #,r}(ٷ&/#2Än6=HPJ|&B[ΠX %9" sJ@'vRۛgByN*B#j"'ka{/*+@ e]jh/1nq5_E3O w 3s{Px%^{䅑)5w9.ы R=LN]Kɧ2ZD9#jJ!iÛm2cL;NLG;kP(c_VQ܂+ `k_8Jp5$zg@;$Ԗ y2*xRh:K  Y[ZVno1r*K֌- 欭0Wyޜ{ض7{ D O-ui@*+5qBe_H`BίgXsyJ;Tx .#j%p]{)Hg㩎G}N&¯X?ݡąh^*\5&1d-IxDJi5E*>mE"j2bLζ1W"Pial9e[PlR'oL8ڗ@Zql}_"1B?3VD,#NKRgYeȎ\At'rޞ-sR)R]oBpc⺃Ncv2\u`dkE[p8X EU:&[6I pQ;4bHޭ#u$.i~nq{w˴3lݩmU#lqT I9< ! nTsTNZ~jxN;2Gle }a 6ETW{NuX]`ʦDfXx5j F<+u=EeRj;Mӿ*aUNs}e@}@WHH J ;<#{[^YW GX'FZ>ylRs@LxvYoF 1܆*3&ެn'FersMQE! P~'?ٴV)dvi)'+ fNOgp.$AY |s '~ͽgmjH!~O4JUU)j^:ওU{~N"T6Ѭ*@le[_O?HGW01f,͓ a3X NJݪez͡2B y.f"_y}2ɂٌL.-0PQ[ iOAE;/#cǪnb8:̤-3mצgGZt#ƏQǽ-:3"˖ %Tbis2-0!]E:qP7h ֿlC|By#xe~9 6d/_2ķ4#tKib35.̀|eej+?}_zibʮ")z/1icQҿuܚ>E#*_eB}mWMX[V]Tspac8]v19U ^٫ܐ$8?QgW Tl[1$t+hth]X_A#@ X 9 T%ń$qlcit\o3Il8nUktvԫCa:l7öz &0W\X.^~ɳ(*.a'd ' 5;wȱO3rgAP͝ _qXoZ6- Z,9[@0뵐m~EYU i/E猾A u~ȔdT9Ǡ БJ܊)*~ˢYm3hմE O2; 7+of^ybgu`6  +o KNIHJ:ݚ|_ 1(J9z!ⴞ=tqa=h|gϛ)TMDQښ\T?,vjb?{hR{(\mɕu{i@p} [lUKs0?l Z18c*o,QJ}Y74A@ؾ9un-|P^R8UPnSK6r~k=XIaJ.j-oN .˵mTHuo>.ģKC\S-Rת#Oxbi,bB=? ߏ.lANv-LTW7%VIGSzC sMX%S!A8Q(_{( VBtōdj@ȥ8VAqk{ br:A ERJ~ȶ}wMJߑlj`6BSRrHZ@S7%AX+C-d⾳ FL]Y_HjBi&2Cr(t~*6(b'{:4Z ^ʉwX$JTo=$XQ'P*|cZV ЭB#% r3)R ;_VqCR8ꙛcv[% ѯdJ*ksw+X LJSu1 8gMs->IL<G 썀=cPdAct4:FCQ;ƂQ֮{nxQ{5T ]1:lx$9')0|}?M-6 r[ɦl \ԋY־heFCpWx15C>ԞJ?LqD}qWHq> P; J2-d8xX`nl[++ku^WzٯWxfBB|LT3iMh9Dp 31}ܤH]v;зA'46``|D&U~׹0ֿBɕw$)sGD@cs˧/9hNH4޵5>"wmťrA`3.@7 _1x-ja (%߃-yUԲe#+tͦ:v 1hp1K娉hhoۨۗW͔4ǿ+&}T7 /h5 C7:cFG?U{'dhhKM9tvƧ*mWD:z?0NYFFRa+/~w;Dy  {1ϣ„%ƴ!P^d !!MvkzZ8X [H!Jgp_2ǖ?orR#ҷY!0(ph8^bUj>Lmm U L LҵڮCN1{<),?9d`xP6J!K?qbH[j,˼gay}Be_k3Oe@1JGq&~Y:C f|[4-!'$6@3¨f=L{0"MIXwoYyH?-o>h#qyWCB~bQ8DÚG/lOy1aX5[[/` !N($eR22dܱVT2#!@6qAYd#!!ʛjH%GvpzyLtj#mY׺F79мV'y뿉'd,YցD8jk]e2boʧ2b<,ΐC Yӊmg*6@@Rl0ͪj (0R 1S#C`k*D>N류+|a$RyVy~.ƭ&]kW%/q9I*.I@I۵0rGvY$BfM\rR.efyٜ=e^>52ܽȠA%xDbhM ]6<7~v>'BECf;$1D7~uC'] ޻ nՓKj{0{ g@'Se>?E A,-:M֞ǵlTſtQ.DjbJէe3&@nMh />ȓi<)eY}ozԃgn^pc$ (G$QSRA$9`g3lKx9*8;NC.rXa}/ÑE"׹uYWQTE,uFk'LV6”2Nƕ_u:&u1^x椈Z XmA~wooRZej&Qn`/Kx1Hz$< %#DdDX.U>Z+ >U#Uz984ΘRdMh( # 3@ݴA$3 Łe'I=yIlQ$!u@f9x&ͦi y6FƘ EI' Ѹli2) )#?vkvx *U r ʗ= 8vJE7qB?OG/64l5@nS@2Up'XJ`Z܂`d#XXE%&*`#2ƫ^弚! 7Q~І+d]Gy9c G~qP Mș] HߵeAt } {vggJc_dIHx|Iy)hL١yddMcik*d?r{UU~.N QIX ^}>hPwF=wnϳֿGJh;5 Mx}u6ꇹ+{a+K4ǯy]@Y 8g3o3ADi bQhGC=)Xj,G_onC Wo at[㭑pb@ҿG;ZDZA0@1 <֦'֗8|GxHꧮ ٘CˆnƬ^6ՁQSܻ (XSMLczkj|Ƨ0.eE`5-,ޕb"-؎Ɂ p NGh"1nY&(hO{gkR#s~OG^ʇiHygvI-ǒfXj*]"3LhZbh3UΚlKhX$ ?K>+g4ٵc1U=K1Ȟes[\A,O.)[V=ҨG~ By /l8,&j`V̗Il~iY/S BeM"ZՓ4MŖIȩwpVo׽ה ɍl-4Ni,MOJ:طjtXY)|d򃾀;z8f.\ӛLޑ3zMHa # ~@^($SkV!L;7zœz@و]5M-6{47qȽ.<$ rE4}PΪA9?J I,I=8LF~W-h~'96s31Wc.DDf{kDmj" 7NF ض(>S b>;E|8$SM*TCf]PXD@h}H/ٚ00p w[EKVp{wT?eas2_BeR<8_U@ έ!n^+CV&M#=I7 G.r0:rb?L{(qXd/ .2W DSC!BMۆjob2tfd^QٝϬӫMMcc&=30t̷j U[!s}#51޻6jل0>U8UF8YoY ~̩ױ1h쥒IR9l\po|[_ы| kdoNkQf>,qB+ujy#;@U ݧ 0~X~S;kC'4PN$bDU2L kq't!x!v F2]A>9b 5/tGAlT /\/_~:dӂtkK[swMfwDv IK5v`z'Ӕ(W#҈XeJ(T7 4yV~ǪB:<9*E=xٷr3W߅ epmS AB% @||s o=˅NjHMZ,#M'M3]˿!N߄tT޳u6\51W$YtL48|ogO򫮵}be-uRt0=KJ0(8Q1 iӄ3^66ᛉhsQA_GPqL9>ǿwQ ~!AQēߧR^O8)#m!S=KpxߗQO44$ U 4 89T)8Nw$sB+㍯^ގlBiC֮>|-Kѩ΢!& 5ԡk6ӫQ) x:qL|1JKz2OL=|AbbTIӊlw"?8>D|Sy/#YтF?ON5(k 4G(NRʤ\= 434#Bfh(۴ SJqX73Gpz_MKY\!RD%` &~g o_B/wx%$n_R2Aqw`"lF(BK&B,Woٮܚ[s/73Z-E5>@4[/_~lv8oL9:?L(GhJcע=+vk \(C'FŘ"XԠ!ì.xoTq1S`̶94LVVb\m[8% %ǝE-n:Lx/q"u}yPr&U-P`xю(5ȏ{?a>Rb& Kh,@A6s)`pvւ8yjO=X hbdT נKە:1 yfCg~rXGHbm}Z\NGdRRBSKJ&R1 *K'YcC-[*P ;դ5Q}ӥ,/z:$)goUfpw GGO`lN4 4Kw~q.[s}://u}.ދ+M!)4?C-A!, Qل6CoymD/n.37"C w#gf>- |l{ڗ|5ƧNw*`\rհMn{ d7홙Nܐ ݑ_>>&GhkM!2s: :|-ɫ9pE/qdVB^ݺeM)$vnt½Whƛ3`ŸZ${Rֽ4$ÆyB$/+:^Sx*~&.kd[Gce&aH#O#Wkɨîzصar7-ݫ'D-9ގJ :K~:h8ےA܄ټ*$TI^Wc&]qaWvs9'x3wN./_Ig# adz{YS" LOͦVzf|^<9ɜDxPД5;,T9gjom(Ir*"\2'B; THhi颙AS6VZKќjy4~nE YאqOb/fi1rng'hzv%Hٺbdhx=olXԍg2{!WfN?<*+y%ŷi9`0B)9݌ }Qwqs23rJdHm$΅ ]xj&Bc]8V0J ]&ɽ9l#إC1ORX`=E wXZUs(Ԋ}w GyK\^ ݉Zt~2U\Ѡ>Um>LD>ʪv1BasdAj,ߑM̐8~?&(?4 sQǃ`8'BYwArV0yԷ~~^+ j)%_EC K^}9T%,vU}& !'=˶?%0I~A 7E^FdsC>*E/y:)rC5 BeaBdj ׽&7k-URGYzdC&5T"7/2)z+OtDe6[S$i27g ,knFmZ]o]\_s4Ϸ&/.ܱ r01[ծw7[4sYTL& R2",e [U_!~5sLWJso3q@\9p:wf1 6<|/ulJPRKq1a.v5/ŊNͱ3%֎99ϺdXok5_x͇_a?|! mn\gL}u$ݣ8++FIbc&TFJL+w t:3WDȢg^l]mG\˵s;L/щ1oLTNo,_įxJ~l ԆZI0=/M-\(ZK۬o9{%Lr6ԿVbZ~Ј4nWɣ>' A:L3'#&AEB,Ù1h("PN|IO|L=ٶڭeV@2K:e uY e9b'S끬+)0@^G6oNB!9rOP/Y7m=7cSg*r&I/+7|+Cwؤ(>F=pݒ,ޗґFo逷jCi}ira>\^IB?x#=/' :Y&{ 8'ٯ`O1k AvKᨯ*沼 6Hp~EnFL'_2XJ5H/wh[w{(NÙL a`~zEr O"$Uw8an`d;xWU;q!TBYc-,,ISҹ`q_`!l]J !Uv J"^, oUZi-ad(KXLk;O6K`ws8oJw" ( 6>cn:*0+Ҟe#6,F%@7LbJ]R@7N7zymq[VOd'#Q}a1Nڎgh=H^]LKB8qãVzRWe] 6S.;ӵŠ=CqJm-4D5eq鵖8li&7*yV"}TMF6Z{' fN;?:6:M6/g`Zyj is`\B`9tM NۚZ 湑v08 9;ζ>lZhSs:2hwb rSTD!j|Pv0c;au0Rtr!eڸH'++Ț LdrSeYHH ĉB3$-iH/2WJK`?ԂrJ=r&3^Vv/~wtul[u"@j*(6Ee&tCW<3؏A[fk.gG2E4jI/[Pz7A溢:{|Lquc0J|8{ѧOWjLbR&)4JI+$my=)gSW1"-`; su#f8&=ScgAUQt7 r vrȺ66w8m&ۨ= AjX#/% {aYaY cЬ"Nu30PDңpnQc1*:Q&F}zI9 p~(t/7>OLe7dxC]8A*J񦇋i@4s7.V XPX <;^;~-[u :${aF r+"i&IyniF%8*z` [j,AhǍ.=uS> S̪qb9Tf$\ ~B>!жY*+(|v O.lP\c hJAL\&2.+Qc|Ҍ( _p1:|Jܔpދ#pu[OBs|j!詨i ᫗ﴙK*rH! <8W_ U;ZlZ4V% :H~F@9-,ݭqamU-AMٔ?LDtB4~mex^yE޴R=?;嗏?O9M_zsE%ue 9ե.՗⺶*M,i%m@{Ŧ&a1Wk3ȆA&EYg'E%Y604Li4tL-Cԡ7uܩ {zBg3)0U?/h5 ()iin}G q q,~>ae!ÔH3peDlpPKC}NyWeJܢ$ 擉:Z!^뇾|*H&T?~KGʬ0tL;w Qnpw!\n$i\wthcꏲnYKri~@(9f~S0\x8S^dL&U?~ i}Wc7nTƎuD0+'4b~$T*jjjZ Jޥͦ XF{QT^G<b%'CmpAMP ?I+n]o"7BT{3CXCLzF${,huzT]}̽nqRC\ZҴɎk .| f v\" dF=Ê=56y uU/ԇ@qp_W_ ٻ:Rb𥄾pWGs)/ B%{7Ƣq!3ޚHe?PϿʽH gLң%|Ҥ@˸uJ瘇v}nGm9buRSgkEJ I`6,<-Z ПMY?Tv>QH~h{PTqd\:ivxutxXvSCi@Ø}3*9m(xfąnbc`Yd*P75׋9\sjb*б%\ҷ_6 B"pYW2yu/koEq/.z?ہZA&G|@a2aӵ›GYZ &ᲀkxFjٜoCie51 5ka$&A*12K)mFj 8l-_ydF׆؏m ]U\Tom"+ _;(WQ#LG!pkB_VU< :B?Bޞ/3Xxt eKb>{5cݲ)W $Y(Ìm00BFkݷ^Dr+3//RJ,u룙f6h; } ۃa+)wQA;@+9hML!w-'Αtd[7j^td3j& bR e#*[f=kŠF ]Tx?gjMdd.ʼn۵gFaVc,ʚU:ZβnÊ@H+XKaC kl+O?#axvУGo=i CC.$o ʳ*mK7WwL.7B%hyٚZԎ龲 (J4N$H\CTMav!FބD{ %r=a;]P$ҡ˙|ULE `c-N-L//67xeS$Y&kVhVu0r/W(QiN#VHGdϝKaJKgvfd1#In8&~Dj`)W2o\^EhԸW,ц`Э/JAsϛ &lV~v8>G);!vF9Rq?O鐭FnxE=Es9QNMJ@9l`NUJLc(gyaDC`9Ll ,'q(~ST:Ạ̈.k^:$H?}<̤|4ڋu5=>MeK:xu,Gmfb:EPoo,|sCUcV'A>8C'U$<~~ } j@SP:& b>9 J|ʣ]ݶWd99qvZ~]#~޽ % gK&L!уlɹY>zP`׹*1>v!=ay4FE<+v7.ÕNWNomzV48zWüX>%~ޛ~KlVaKGB,ga>.!ŶݠOa {]l8TNxJ-6R3p#$DslEBpfY)cH|]=%$i?%MRj4)vxR AyPC"Z/@t^ߪl*o^&"]+S|l,&;T:єZ 'R6sBƁDAwcN(n2@(?x5gxJr6mP3>kuK@,A%xn:e| HySCE![ "u:{`ه sc鶍06W.fosl/3ZIL><57򇨀§Aokc͈kﵮtR1U 4q%M`pȘ >Ϫ?E·@Jx*_#O$FvNt1B\gҲ\(T+xcs7i8-=Aôղ _|{욄&4Q! J^KQ ^c ;Ll(&9K1/;ܖ FyN"2E8폻gwmOUi`ӽW2Gzs { - Xsc$(e3d/bVҮ|hUTOXlǓCzFXJL4dc _d?ǧ@grhUr Mh2m)BpMt)1&/Ĵ e$X>[&W`.5ߙ@ Z){,jlR^D;|V)ݱC#4ůޥ $.ej;h0-M~lAȾMw}5 |"PFPQ~$D\5uRčoae7ـo=%q3A. pˌXɦ!f-ڍ;)&)$:ʰ0Mύ:-]̣\Tz@Q1VEXcUHB5Vc "##9?0HC:͍,{]5%?]U㚇J 1uWev | -)x|_هQ2@C3Nsuf{CN( #͇/!Gͮ êݫrQhxo760;r}Z{ _wds}zmj ^pЩNDYz`ǙX^jlkwG\+21"GE,/xU|c z5gqMDi5󢪓esJn "mPu*MB{tҲ2O} `DKKnyvFU°MnQF8~wlq' {Eﺡf\1 *LO"3x?Odq+4KL7hDmc)C NJ/$UY<=X"'pG=s/];4y,L˦6Njl}uIi=ov=891'I֗|p1e14} %SQZnPGNKH'mcwٵb6,r,k>qwMMAyq5v2r|E|Ts~!IC7Rߤ7dF+>sі*xGqɜQN{> sPeMBF*f?T}Ul'p})]0 ݉Sk(leUSNzp)mrzҽگ!2EqS~t36-]-!T\(Z2X+ Uf:d̹݌Q3g_68w{Wm)3Ș.'JuG{{ւuHҙT+t׏^zQp}NXg<>{@*S=)%KmMeK<7Qso@8gsϧqcKס{Kuu麕|7 ˻^2#pqxe\"R %%wXk=QxRGя8I1ֽrAz@Ia@#r/VTbz NWXr%k}&Ww摺BCaA~[#tNvG}:8q6\b0D&!=Z)pʖ"QhoP 6!N*rE8} ʛ/LTgB~ںTypy_={xm\ qkst~$"]籯 .s(7QزhKi~u2NZ[w9J;p4Dſ$)3u9gbԜ%ф$e@w:4^ZJ_Ăit3 /[8hTѺ9F?Ce p*P4} I.:1ԽvS97%~n,&xN˩6 ,;mLbf5Mo<9&S:bQO //nCoc ޢRyx;eI 0 aY0HEPGgEO, PWd0]?27Kx@ ZrWf -G~YM#w=jPM~$"a1!gCTT;_.hݠwi6Ҩ8a%ƄbFDŽR߂NwC\:ci񼄂eXvn8 L.L6pDm6W0HZLt]{ɞ́LWdK#Ys8x4m]mSϑa͝/(̗ܺI^7tbo#@Au=4*O^&1$lj;(i>ȭݣ-P?a'l5|] fXd(^d'VW?e1ȔFh_d7L lg=7~7Y1#3_/xDJ(toF'+MMw$pڄGVqi}ǵ˓݄.*;YfuH{t  [uDLׇ{`uDiU9N7KGRpAH+*YZJnl"m >PvېVwqժomw*\%cP @óOxцL*#ֆl\e6#V}F*-+܆~ȸUZz>/eskRW ZȬ#>D Hy(gk?⅘|t_rI"h/RHdyŸ_JI`%F!M58wx$T֞w"_'8} c|~Jx~0ጘ]s ~Kidi#)&~Ϩ> [ߛ"=!5.Ix 7>6,S<5R;j/ϾS/tcX$ jYp@ W;@ 9Bz=Ğ Nୃ&cI_2)? R⍢oSH/Y$߄s8)fE aW ]ښ$&ZB2=qQ*_@ Hrn = s 4&xX앧I۩* C)q"kMmAuNΜܨʌ5;ĨË @A<Ľa?J{7`p闗wd\Ihxe o**zRmX\oE";\KZW)/Ǯ/-xDSԘ3Qpxatd Z.! хK'mIJ+*w;%x=qT5Xg [+=ʜ|g Hw<~P8N[jkJU|u\H7ş4m<*Rj7d+s[B]k=ЊW> 3c2hN gDkxlڠ'25Ǫ&!B'-Ivv4w jae0Gkhǝ$tj IM-F$6]I ߰ooK/b^Քo=K\M! UV} 7~wȫ=ª[ m۹.tXWaC ]zNZ."$[RMQ3@bki:7QDM=KGA!|5##LR.zs^P$Z%RO*8Q-+Gch;w+A9cAS]wYbxNt؏]PCdn@2J7A@# +A ?CUvK `eGL~kdzS2ug࢛pA<O"Pncr')u[xyb/902ݵ%Y% ʪ09,;lҗsL*\l`v z,GAZvѯa'7_+Lhi⻾=}+0Ѣ3#yWX2Dk$mi5O; [XXQد!v~4y98cMKQv+aښ_@Tm&c²X(?pٹۀ@?PѨOȨ!~Dl&A]`n[c8*~xc50SeݘNe-*Pr*g κ[A}p ~gd(,I9w-:]>s5Iۨx_GGy[3tÆr7{B2t=)I~5=ˀz\ [Bgua0`y tI2Ho!v/'8/tF򮭑ge<_軒\|ۣQ~.hX hNN!뇓xLybc ݯgDm>wPMke;XVtB{oEi>_Q]k-?ʄܩu{N'dV_LQ@c @62 p3{Ɣ z[Z+i5Mr%'pJVѓ|ɞG[< lx䊀rk8-:ZL}.L ]̛^b=J,h|6NQhp"~0Ti+I槁@]8whUT|Ώ"[(!fǘƒS*yYy-<$qD͸jݥP>` o"l a)aiOƤv~>J]F-s!Nފol蜽>{O]aJz vcXJ[Wa5 gkAl\.T#]V%>,7̬Jq*$Mx-ċE|LLlJ5_~(EN-FC/t:[+S7C|, FX"yRP{ZT~R=w12HdV$X<17xg#hw}o`YQzG6GFj%3]B񶈠bi.^F8z zZ^> $~d2 UدMgz8Lb*AO|J3'_%{Cg#+BYa\1N|:: I!ukc%ݨ$g K Rn OII>%Qmv%)0UMM!@9^YV,ȓ([qf X.F_hC snr_`Vr+ˋV @ _Z뻩nʼxޔނ2߫#UC8!·:+!cr:%Kǰ-5LǚP0壿#ÁkEƁ*p7O(A Ncv|뽗Yn8ï? ݐ:gZTpb%MH85"jE<^R"7]7`e<(WQ~vp!^IȞDm3oeV\+ܕ>&Smk)aX/g ZkjbWd%GaSM# A|8v&{G#"G`-S1× Y  Td>97<(S-+AlufdWN(5TVSxV5g3v,3um6N|@@zlE m6KO>*&Gq Dy +- KQI@ \U~h#^6K *`.E@Y0dPҷoxB:Bkw_=K}8<,uy0/F\KW%AŸdjs̼j[n9펉[zg\ AЈoc~LUr>guoƜ[Ӷ zgġ>Aimo_Yf?{0# 3hHnlo۹@Gy\[фƴ0h$\?l?8_ 1%aLv6(NFc=E Q:Iwzah@=3/nYR<'ಥy%(VKR5*ZuEwِ5LpYgQQQŽ XWZm9Ojy?՟05n-,_hql;ٞi ;p=;D9oMsi`[zwJL=DL9GXM+~Z@)R] +4?|萩+xX%$_ϧzm6fBH)Z1s3wE+׋KbrO2ju/{s@aS`c+/8s-Pn_nji8{$߫"LZ$PSO2Lû||EJǛ|}`|yo/]BDH0^5ojx>Gw&4oѻW;clM"hA&7RS\&blC46tPo 7~Rzcs%IuQ ݳ(p~%mmyױAH|6t4 "tr[Қ7k-lcBD!Xdt-f>pyF`Mlo}(b\/_F 7 ‡CZU_[7*^Vm #)I 4+Qbf2DNuHB詠eNN,,LhJhefdI[+Z0~IzU0{Z1A?v䡊#ˈSKPS$詉_@L$HwjX ֔}J/ZÆ2#9&W tiSÞ`G`4jk֪Kx˺%!Q 8B B݃d δF'4ld46 m eH=~"ע{jM:˿_ſ" TZIPSBWF9ZK4D O{,֤.%HCGѝ&mL59Z)JB‚W4S@89-86$x{lmDk}>E4i&DT" P5W$K_X¾62)Rxy8wDI;j9y`n+GR< =fD&υ|gt7=dH7׎ўG*;\$fm\U˻l 5Zq>x0_ν4oLnN?^7$w]ʻ|H7vT HDF p'Z5R#_ q)@?(F_cr*9PK4X_cW7MBpޞ:`oӠkRJvX3"1{)*eܘ3ף(hA] A);,ɳ֠fqM/`y6ߍɵ5:m1wgՙ56:@2GkƠf;Y6ahKFbh x 41cE#I[I=IXSխcNWaSKk'\|d1T2%8$D[ښ~_NC'oY d"x2f"UBf1hu[qk4)ӯ6n @Q'ptFCNNdHIO#o2f" [_zˢ T O"TD\_ ԞD>VALep4V ;t_se{0-A4j#vNC;Uw~P%r^ *ڶi":脤?@ W|K2J¡GRu) qsr8]+ wD$YPR3y*˘"GkV=uAlF&`OȚF6 W+;d s #EE8GD+_x$HYGRUި=Zn9G;.|5?lL#`0 {K42Z@M8[M%!)yLu]'$جHa !]&0l&O|w,ep}zKҊcyzζFcuZ Ec',*Q^4MrbbOћ'(Q9;0rM؃5ucqgMPL="݋RTME/z;;.XV!۞wPϛ5EI5łL1BU CW_f)d^he@rw8XhA$ 1!# )~ge5&V-b&4Pe 8[ NȆBϡ{1 ~8_j86`J+[=ù 5P~'Lg-ـE(5Nou1\tH3Shw[`Kp +Ǫ+X[ׄ7Duߦrq_>6qb|L"l.k9IY Mn 6k,XIn+uDɡʿ[u%~9/mІ(2ڒYV갊zB] ?٤#^7X厂wzך4"}d&P[P7ga_Fࢭ`bJn+QV<ċ#k H!Q^Seq]EnP4s ØI.5F|I!|è?M`%NyQG=ogc2*8>!$1tCB6; }ғ}Ʌ+މɍ6c;Dt'冺h*M'@\6RݧU8Uuи<ْvrt|/1d?F9| @3Sy9{ZY4DmF'M9WP=&ug~fja%$76<'/ Aud9(AyQٲ}hCE EzWɈn#pZys4UH0G!В_d nQ,1fHo &[T.ɍ"se\ b/t `GԘ[xm zGqYHb5ʳD^޳^ QD>XĪ]:QT p*-gԸг*.aٷcQi.N ۍ#Wu䖳1'}ޣ'%fDaK}gU?G@cO 9H>Z_ꕠ70q1(K$F 2lJR[!=M*w~|nH>Usdg`}F#c?bkSb;Ц$gP``Z8F*_L'rTռ|VwD3Uno~:ʉvA9ӯъb/%\`uU̺3=˩CyD2[*];{as$rf&lCxFb.*] dwQ}.mt;m^zL,'  KVcaD>:6-U&ˊw}Rhq&dT7lxGAɁ8u㋾T0vKy2OA${}^থd;S5*r*V\]Xa'Gp'9bo =Ǿ 7e# B E&׿5Z UZ#If"*H]MΨ~=ڼd/T!fchc5K.aݼs@er*d#5FY Iv/Ƙ\ZNl 1T5a땬SAcP׫`hfXY:E#>8Tkf$;6 iJ5H\?dK84(Qz?/X:yO1etp-e]~h+&X$#1MJ.%[DE-eHT3P9!)mI!w4r|mi3]Ϸ,,\MX$@} k י侃E$fcSG\ kf8D%Q1Y~)3>MyNzs PӚg RF/f(#-ʰ06KY*$nik &[D!~:Xo%VoI?^Y}XBȌ?2wn\ 9Y"_lL”e+s; XBNCˢRI@'oxL(8]̜;f.7/{S1W\B-"M|6tKL1A?QCîNy>JuU Gk*&4s ܾJc&:8L0:YFYhX4C*kv5dž*_}1x؄8\Άϑ_Y:&cj?.dA2{Iu6w8S-FSdhO_;yG (FĹ<+ #(|#7V#lm  5'_+!^`%7 6O#I♣PKwZi)h9g*&'~o,9 j*U [3Gx<(a<فHQ¡kzH'ZNk"q#8zRfO 㶼>4Ϗ-i7_ -w'b=qAnYPxw!L!ȆqCmڨ!5<8e|!#z>҅r y~M$*򃇛e::"lAtT|R *|g$_X,w4"3ADNn%GbW,&pK"a>QΓ$[aÚ_3}H65ٜ 0Ҕ/yǜ㄃)L^.wĘ' 1;Lk&*]^)!I> 5;u.R:n~ T^Ks0@Ytf[z$?QԦKWE/B*=Gmȗ3UŽ&=<71 /SCZt eDv\I>}%u L>,8 FTe]8wG>ؑ Gq5 / 3smV8 `ghշ$CXC&g6~NQ.҄60dBM͒1mVT ngN#($GYoY)M˳[5 AA}R!Og óI { I^ ;(PkqOT mux/VK[_u:'K\C;[W@8Eħ ~zᅝ'zBiFV Gc"iP;!.rw9JW(+ xdue dd Q_sgZzNcK(3V$A&g)|4<7=ɌAi5m ,PQ.JhQy-&ǩd,`rX J[aA LېW ll*#1$e adT̺^2dȖ1"mK^uHmtT N:[(olt'iҧk嘁1u7DsGة`Â8֬[ %Wۊԓs;UX=,`6fyAKi{5( H.?o`FƄb>C^-Vf<b!|RMEz6 DžѤOi|kc7e "l&mx(k:eإ|8A=/:nԓ?uetCP[(8-),dث.>V~4d8\QQ7S`r$KM-{ՏBXdR:O2E_Sl8lR* 17ˎ'9  pӸX/@U~꯷z΢,U%pwQXUKQ62M%_"cl YD9x =-zw9*l&7uN !ܖ U:-a#+Elm)'yFR>XX5]&y)®AodoOO$dܛd6_ NlpCk(ݥ(;~J '9)U87$1ѱ1FꙦA0+C]&M+zU&H3 ;#iWo_My[Rq%cH? Ωo'"A!ԑ9>}0A! Zs?I tXB*J(E( )F$y^^:]JJe> $R2K?6ΟȻM vy އuM5PH8GOrH(!߂ޒ.GHb 3 'pwf\}iNr4`%"g YZВp vܗOא2{b!@asUƗ(9Y!CWzk=w _PF.ŭu1f(*E0ŏIPz ^to !Mf-P㺦 ,-^?(r*>N2rhE`hb$Fcs=QBZAYk+f;l6f%g꠴(tFC?اo &f֧l "c= ܦv~H3y,_UM2;iѷͮS)o[uct.(ŵ@>uD]myM8[ߔbs;!FkCy@:Y\bڈޓ  3H:cza#8P|$&. d%mُr s3*5Zi J]</3׮R33YJ]9VmyS6xm6垣%7ܥ LlarImM>y=T< 7n>ۊ&s$>`}JR$zA\z'^{@ߨ4VV/3D)GBHqVtB`~.\Ld6qN:`q&S萊\yI]<*F뎯+ ztc#nx&AmXucA&ΦzQ#Kge!\ B4=?w%CS}Abzmlyׯwaw$U=D#MFOy Eb]rU0?ll_%31nՏԟ1̌f1@0sݼ9$XCd8,Vzr伋yuӶI2ʋxV{T/ q 8ĝo#-#栶]o++IS3OVZ8)յ:e89LGeBtNgp%V{q /k;]#4 L})<5-q [)/L L  oxyj?h+{m*Y<mFl t@zץ!.|8G8> Lvi1j⻥NdZLjD~5ɐ8h[T֟lW?OMnk'f6?f{*[Ai&?~-HIޓQ=?XOw'JdTz2#V0oǴP ,-C☺tuzsF#0h9~AK4U~3<ȱѢ尳VcjI[6 EHCh8P(rR]n@a-p/gfʉn{EP#DWOmN-u'aքKYzMo{,Kd[hN63:ю#?o8 !N0hEs]k{|6$@'?SKK%`KYy/_ANWOe]EΛЎnOC% M6fsOay%Ko4e`ٰ0wt[X2|:5M)i H l;RZD<-l%T  >?s'wzCi9 xg 9>h?": ~'#,i hLc0tǘ=pVu/^[M>¾&Xn?C ]n No >Gi䬰C^[>dN͗Eh˚Z3Rݜ|Tg[u@8aak #0}A0u+ #wؔ*yX1oYy vl+m\(Bi< =}]ҚA[t쫂]lMc.ru6P8Bv`d{WfJrSgof+;:WG=&®YVKCI NOtGʬLCpm@b3eɘ#Ҏ2xYͿjkNt3%mTY;2p-o-b)/{ $$SҮ_huE0|8[2byJZ V_J}?%E>)kzqd*{˅V{B]ʡ^'F-h4SO/)\mq5dkzFֆUdjn`b" VzܕW2.%TEBqX˶A S6o=VBuQA8F2GpyY`26?_^{(mP|@_Vٗaą؊_u'뛴 |Ҝ? fŸGC[H>=y7.w܁}sUk¥@sÕ@mkBsx _Րĉ}7p,ݞ -;T ?(~SJ,HLߡ "U/:~vK%, s~-Bg4J3t@ʹOfhqr-S`5GC6k9 k-¨aqUmI_5R2jBKG0rε Foκfr+t|Zf w~sZݠK;sJ(`lZW$߬~Nh ӠPV眶yor|;(1kYM']',k|.]I qTi:\^OD곋/t2^7F H\_UT챲 vs Uup@'>(ց`էz⇌KnL-3oF嫄 <+= ˜nKm6AޕdXK 5L-p7HY?4'h -_xM<@΂yF=g%N26Ӻ?y:g92i?QGi$1rߐ 6HZF{ޠi0AF66~b!CCG 4VW`qL9‚qG,1uXv Ov`a{KыrdS/d 9b1fݏ(ot1>WO^]1)R?Jj$'wOsq(rPV;{NV7Xabzp۴39gޡ̚fZ/ޤjLhZ!~`R V7C*t=.?Qd?Dó`!Tժ6HTˣ=ϗc8*W^#aD@~ӈÜRjf+}š0ѦH.vVLA W=k-򳿶K0*w)0S16V̠^D^1" Ⱥ'/+[A8{Q>t,[pSk1|n[͓#Z r0KB,Ľ'#Q64Ӄ+u64xa\btĂ:)ɹP=^;FB[?)R#y>!12Y(ٻ"d͉| Lr X?#򉔸WFq&RE2 kQu\l ,ƀwK^9(yneW F6@Ё4_*ޛvNbeyM !eyNe$/|$ IK P7E$n-gZhm0Ez.k< G0rZ]Г<~#7ʺĔ V`|S;/Y{8 @o0ɮӐZ Ӧ=IG:q06p`Z;電#=vАR\$FN>8Ĵ6z'uW;e#/+D9˩אrGDd(za( %/9s}:9&^>n(Ae%XVzrzդq!<1L[#/qE] &H2z½W4|fGb)aKWjaCȶ)6*{L3g.HP[lR<!uO+'s4،M׾05MiqT1W+ K #+qCl1QO^z%}{FE.5񹝑E:̭SZ9fAE̙r_DQ$&J4nd =u`+C!+b*E4*\B fb$ !ΩE/M[0\&Nٸ4j%{D?l1sI(}j4>rFJ H8Raca.mxR'gm]iJ? _!(KTFway 1>e>0! t *g#0kt7"$=S9{)(Ͳ7r(ikTr@,TrFw N]\fLCFU^_,jng-%TF\hrTFR3K|'z)n\ ڣíMW]U׻7~XtN曈&_ѲK$P21W;ARd^"L!s^&σgUh}w*]߁5nP9t6qe0&VA.eq ޿8% il^d6Ö43,ܛ$,y3n]MTcU|A[3zpY]@Zj~[]O;. Ij\M h9AL&0򧹬z~ /̱l\՞sWZRYɲ hw鶶Ō/hؒâc; eHfU><K+/ɡ4Ӭrx} 4Z8M@X5ͦr4${I{{n@!@MMCDu>#6fK_&5dyAfVNΟu~Hx<\}Ϥ0-R GI4,WKuf™2W)Zc#nc'CoP0򍎰EQp=QK,xVPmA|X[b.vfǘHx+@,'i25q?w!<@DĶ Jq }}B1)On_M .M4v/3c)$X؋N+2H14&rZe5|c9'p>n E@Fۻ iމj^_8 J$s>`J&`ΰ-n\Ѯ7FgCrԞ~J2KRѠv}g&0OCcbR p| .X(/#H&#I)$xE6'iQ;!&0%N[Nɭ œ2 j׉dG3Ǿ :Fbuloeyq1ihb9ΩfXxұ *)פm7sk&T|#%(~m#T@hWI/ǚd_F c:K+e}P 0{ә/>cTLT/+ V\Gol"s%N"p@8ŗ@&39ZUyO(dk(8Ce: ̸邱ݷ탟_b2)rdL_8H;|p--M94As[qҼaU`FprH9B8NԤ,(&8/g*h.|x㝵^8& c6x,^=*ž28ɮ*hz2{8SRP\+dGsV9 -MTe} [ǚW3'ā`0egI){U{{ RۭyBU dОH.j^WPѺ>ItR4i"z4m|d&6t_fmi@;yl4L8bgND3=0΀:n@/+rut[L,Kyd"@_b7l?uM Yd.vCϻ7`$U8P)P>%O@)G18e!;QiÑ5ndԷYr#mNӦEV]W"ܷ-P@5 s#6/ 1)&6qT_$}̅tRjU4|)aGz<733)rI?wpԴO#?mN-I,6oN.^ۏGx!cM#+r"Нj诩^Kv+ie`=CjT?YZ n.a4.B>"9)]j1002<0`pfA~̀2a V]P|=^(u]CC4 9{%Ť^ѺU8iz'생5FMmkm)I8l07FimMⱓH4A|54sӔ(eg% xI҇PV_ߣ#m,f[^n:S[%SҨ\֙к ss : e0'kHpi)֭!' Oak|ldc;:c\V) Nj7}#9J#]RwF4׎HWx$n/ *Z4ԧ (w1&vh!q@*4W'f;"gUHZ@٭B"uޙgi_pVSzq0j5BJ!B{z᭤ /&E:~5B)3txZ#:;Y< >XXA5QLK>6u_u[CY ,<ԥ/[Z(fMx:-}@q%+M jp9N{PP(1}N$wg+ ?@x)`T[09JSEFpRU̹ój4(d@W 2wu(VFm( { Vܲ@ZȰŶ5MUD1(`@H89(jv|/f`P#fɦGg<2u\94`Rկ9@ô:0tM+C䰏>4jXrM~Z?vßnt B[?RR+Cqhbu}rN9 & F;"m@ h 3k*73ϮxpJUZTM_r 8 c"qF-<_*-;#gNz_\곰}y£y<tyk"vtI8}ʹ0>k b}[^ϧYYXw岝Zl )l}_;@HzP﷢5%nI:I^`š63Bck/4AmjC7ݠjܒ,[j=aL8VRV 2 7M.l²H'HڝK@DoL=&ǿcP R7A J$Va.hJa9l%<Ԥ7QURDyVhxw!*>|bc>cVm9`-[F||)>}5Y7 zLaP{tn&Wyi*^W増bz$$ѩ3>KD؅v5(0>~plVt Qe `_Вh?RgLB(L *J$(w,9IZKR5ew w8^ +,l.?7v!(O 5kL$z[,1f1<֟:|v/ϨJX}jٜ: 3)Nʌ oRݟUxD<}yO.Kaׄ)Gv>drJLh|!n@nC 0b2SP͖ok!\oeF%ȼaY[ jF4?@*M0o1@hz#DUl͂!9ZcpPWzvIE|f1MӚAUB~b-8a4[Kdʤ^sP|xQKcfb@NΠΰ*3wƻ5ٮD9n-ڡ(8(iy2S[Rzdn who`$ .I-NAF$c~q8)>Q@ƏX;)p"^8#x*A2;ud݅KFdg fs*MhF!mɌ9DOz-o 3CگNl@s2"K˰y{'x'wÝ?ҡ<&vQ+( z>*|6'fqDbӃ=йvFXqc;uJpAL;mZ {+"H7+#$A kƅ+(RApQ!&7_4E7K6iأ ,9@/CRIݢgja4" xUTx%K*G+c%\MU+x4:3wulfSI_\"2juKwP:m2mOX\4#|4##ɱme9VӉ,+r)H\kܕNB6Wнv{런J6̼xD5A )R.i)=[.z? Kj0UG1/`t5b9f*)THKgz+huO*[S $dkCMQ |( 7ŜxQxY5b#`j1 JƔxPD|w T [ya6m;%#dNW6~2mi"$hwd` +Bf)%?{ُ(;ö9x-|5" KCd=̃gAqjҟQ =8 1.MN c  uP|= `a6kgs @k瞧 ~'h)C: ',wX!q_Z.PGLF,#5+[D%̜ t@d`j޺u%q΄@ RW88Xx4Uq;f8Q <#aYWdܱZfXXUQOS^G4yf&%oDke!4_?Be .#Z*B0lJAݥlz;&>"3]0;,g.1)+0K"y s]A2x(KCOR^VְyryW߉8hQnHnn3CT-#{?Eh2cΗ!H{_T}"dۨTK#n+KVh{g<:}o 9.H;љ't'g$Wа|e`.#[4w:ׅmXfE \Lٯͪ+RR4i3RPWyoK AԱ{]>T < #^s[e)70UTO)wu:Ok=jp}yP-y~33DSQ*2E SsAܰ vA.)^).A|ܝuULWxw Ҷ°F݊e "h|:%8z[UC0bI"Q66w~c @wF&aȣRG1} / x3S5`UP#r݋>.r@ޘPGcӗ4[%Ab:&2h w-GX6rw,b(Y$ }߫;ׄ%<@A2'b+V P}8('HMR%@;*]|Fs|ڛm:?jݖs;U G-ł$םJ^FmM7QX,{ pq,^?ߚkVi)ڷWu w6OVX& %,u-8e gC@  _M OoA$XGP?s~ ^ mZ;K$0MhcK6Mi#.KKfdfʛ*4 촾ɔd{]eK<Y~ ;Q!_7[Ojΐ$@psZl>ɜl&s?_1[Ƞ@Di=5d7fPע.Fme;(p:=|7 ;0= d̍_[Y^p]&2s ş2GsYCh%=}|r 퐑-ޚe 6?Cۍߊ'=U}UHv۴|D:\mBI;|w<,kMb4I֪f]?6ر埇/-)D }ے+L%pUD;Bϴ#4.#/HK'6:jLpv[XAr"E <"'46$ L>Y}m̓`SK#]w<Ȱ(kgid$cNK̼{ dەaԋisB(؊2evNOEn@,4b {$5|n] g[sRph6Q9'lYުAt?*?S80"~D9uKZ 0Ʒ|簳M"|y}뗾4`,n ǟo^ o?isNuj 9sЕCϜ"J u ! ,_ycEQJU@>4{J #X VyED7i Pimr/,38([MrIxrS{EE-ţݻj䪊܃dO[ ymeC<Ӂk>>BP.e+YYr j% ?avl)B.*3[cJWE 'j;R@ ,y?٠cls|\#2Z s[m2۲p>yN,#@*8H p"4н0]c\ rozG(P@ۦ$c&v0 al?ݡ2P3P/i$ᅿZŞޫ $60Cv ^/n`G?FSe} '2vusJߎ V4ho#(}ZU?B,ώX"֍Xzc@uǚ IUlS76r`;fzjM)%CG :愻g' J],f%yj,.%'ZM*ErF!D3 _7Iߪ/2`#۶iv~Ik8¹d`9͎Ȯm>ѩޭ#ppR[Tk7?̮Y+8OR)WH.Hd cU+KH8pOj*'I/U2C1@Bk,emJ:5en[߸PbZ5e%~J"qЉ╠K/S{,-@ N<4/!^ҦI7C3m(W`Yu~CYӹh)j>U 1YtK6(&uO}=N#~ђWߡsؾY6щ8{`$?7A f (Ƣ=ݻ0ЗUi[ܰῸ;. 9/iΏ2f]-eAF,׵n_Xzxֽ&}7sL_IbFhuXN/=y"y<[vŀ/N-ED%u1P7%z z%(xs(FX>#]~*FZ>s zFˡ;疂Ǽ&0A(l^ \JY1j|~D?df'ĵQxVflmCc.Ŧ}<3A#=Z$Q)L%~6| TZ&w:RP'3ND6yp/$1!~/#t`s)Ea6]i:p}̩B% ܅h$9YCoREd§Η/o$qדĐ]p`V)l(u믓T/S^H oJv.gB]V5/x7 >L \5*M+c~.f$%SJr䜏4$Uκ9DiLSʱ+KhD=3wjj5olo!Y`y@LDQcprTbȣE2Hz(6WipJQD XA>*PuvE'>NZFH]m|@$Rz~_CǪ\ް*ہ2`M ix欇ą؇?D܊Q}N T!+1){$c,Bt5ABKmŘR!Ւ>G'uȚYv}q"jqKr71oYko m,݀#uw4T= HtpV،f9=Un}Y l%lVo2aQ'KtWIֱg]/CIRD& ִK\lجƵ`zBGDL+^ڳ$^ +1^[Ymܓ-k^`p5O-/ɑIhߨ r4k}z,E8wHHQ}ۥV1.lȶ1(D=kc1ۅ@1aʴCӿ5 Fz8"S'+?KF2@|q _Xp=ܜG\/6ʼn8gPDZBS$a>ӵyS  qUlq1rrjDCۙX6iZj, Q,Ew9xH(׌mgMzh.CJ"C'/fRzxd8izfP?#)2qD7M zJܘG>yeU}ޖ 9ڈgOK'~nFk+pqF,.i+Or 'Uň$t鼰-4-e_3BL(OcCRZ! F |"Zޙ౞tn>mۋ<({PR#HRnÕ=𠐪IeК0x;Vצ+kfzXh4$ܖ@S-].2pRY=w7/1 @VW\`".h$Jlm j1R\?63ꍟ'sW+-#AC`leY+(˹3)}!z4.NB,X*Bz%(vKunqz.{Q[!m^*^,-(xgf2yY;y[lOǦ( &`Bԍ&ZeWx߇]b/+SQR,r}]1U'K]3,g3{fHZe`yk[b3 i`90Xk9Ƭ >8뢏-P!92̳+W6]MgLbgʂpN_1=|:فvXz*NJJiݘ7ԷP!ti_ :G(E`Ԅvn9ظw"д碟.|öQU3;{ T8yp>qAmh0E-heb;*" 3a~d/ODRglVj cpߓv,`{y)[d{qC˂vW)iY:P~?sCMD{a"Z/`|-/`eP WZF2G{>8/e^lҌzLbJ!R,wȬjdMen7G? tzK{8? -*dyW^ [X\E9pΚsk]y-A6s?vA9fiO Ɣ.D67رoi6UZȾni!;G ]!Ruq37?yzgbL3آR #Pσo1 DUn~Xw񪢠 // SZ?BK 'vg1xh=k^6x~{.zb:Í-tm$vpNIV5RSp(~nymϑߔTlgM?$!(T]x"A#[\ TLf=%B79e. j N^^*3Zig!dPq,gf@f35eFG iRKq9q)ϓ[Yk$.-YsUa'tRZB,PϲUW07ҒH(G=-XvHBhiGIMYe#[@#WPk$j[35k,.<̖1Y^4v#w|vacT};f X߉(^i&yZXSPy1E&\Ak |{9+?Zr;hº=绕`Q:H 3&b !oѱCrϹO׷=vT˲0}jl!-0?zE$Z!< *4a%N R7hB[Njqa:# IċK^P[|XKQ}PB's|џXz! .n`C(W4 ?B,ԠIĎ6[>iR(-ɊEeԈղ"J9" Z )p0B5cM '8;YjͮKj [F ğvEJAS@4ب+ڬ 1q[wiУVcdzO@guK/XvoeM":C3 p8#@5{P-FQ;~"R2 vJoqz4n `9we.J]pMv [WYoڍ~qHVT,a d9[ax*Ue3U}"yXZ̻m K:3b:HKGi;^^onu"O${Ɔy㶕3!.` 09ݎYP,ވt'._t7 VoqxD-ʿԗa=ɋnLn0M"rM OEdmk1l\d&J*|sAp&r:E0 GmO&#L,$ʦlf'o!Df6O@e?B>A.ANe:} ^^*$jiq8B^@{{{`mS6/򣺡RH}k.Xۉ$T"7\bRH={O^ Y~/dk|ұ0 @z[*RgטgzJ 4A {Q?HMgѷ$r}@&QaBU ̍Mク(a^#e[bruT,z&jK@8K+^}R_ i.b|ciJՆ~.k#ɬdU#3E;' @#LDgãLƊw3+!|%s%ߑz] Ra_'ٗ笮5b |uXGq+3O"ymfh{G9z4j !KJRhǣoH-Im<_8 2+t]]awKgjK~4;àYM`>t-d6LAm*sqVwUuTK~:>@s-҄,jB7ĆgPkKZ<6Ou\+Ç- o5|NH&Qh-2F4Y:}w[z1[ k0klaDF j[/f 7 iIy$:LDf)ˡ$YQ߻vQ*D-hK|R4И/{_u{'I[wXOmf# ?ުg< -z^qhTp#/OMK-pMw h5oKLVMdŊC=$..$񅔣r.1 ьQ@G,nWJO8r4PTJuc /]X'Jr;oK[&ӭ t}9`~gXT?wbjƒr!c$8DR]sf8!mg|WHm9y)!F} *o߾eNݾ^'nsx;LY@V^TKլ%Nl,䴵K-/*IzW_M^м\No(v4ម{Y,⎚I] oSa ѵp @3ް&Es33O>N=O(a]SV9튼j9jG lkG0e4V~9ƶ~`j'jغwe.XjW`yY=ר=d@˱yfeV!fDbt(;XV8*[88b,Vԏ)q\J ,9x/ I.•Fט zp.Kl\Ue80u<޹5nڽ vVH4CNuWyܘSp#Xُ-s5BP-Rvݞ؈Mz킕)/ ek2 K UZv!ZK[/ՙT ALE?Uֱ\`/S4y.@[9'JFe=*wts#w-|Z8x,-~vMa{nnEޤb=c+DtjHGX \W$ ?6m }%)l"'PL(Ic^bץ0ɸǙ;PMccͭ`-ح@;<DQT3ה*6;$x i}Z"Nj}UY)N(/[ Rn, =,U:m^jW}jc"[_x>Hnx#=d>2`(jk3G-o$j[MchWz57T= \U=,~ǩB.*T }6t@b^|R9A"icid-IXQ7]c EqGS[;\0r+Zn|{zX\gbaCk ,|A`am6dH#W r6E@oejv0]jtn?%&B\xR8{FxoF-@^^01t8ѫfTρ'W~<gߝC^E¨/>GXQ_Xdk!FG ʣżSMx.I,Dp5,cnhvY L\fY{[In51^SS.gHѤTJ.J-!: T!6%h=GgfɆJ>$щ8fz%c2@DAtk"kbEtn VqُǻH +Sx\4̛P9euGjpKW:r~z63Ҹ6ȩU2 F&^󱓓}.5&yf:{NI>Oxuc ɜ,  ]_tQπ&/1H=ժarLU>Xg R^;9 LJ9] YĻ^8a^Z:w9n`lmP7cy/~ {ol0">My5oGE8RFtj~% UxriAxILDd2r֛?ےuZ_VѾ4zgWwAܓ*m:? !A` QZ,6;`Rھ}Bgjfy@yPfݥ!]YfERćJd##7n]]$X46mlX&RMb9feцj$/W,Dιψ)}v"8&:7 _ "yS c đK)8c3DͿ{ >L+/1wmZ )]MOYsdvDpD]'EW/u݋XÇ B?RK|[cu'tJ(D8эy_i??V WF[A{OUn]fEب]pڝ)3-[~2i$5\=k+}G};?6;@w_*,G3޺b{"(*Qr5»L#_P{JqjŬdBPϏoĮ Ҡ\3}J൰MR_>N 0mS+34Rb]@;ㆎ£X'v)soP3?Z13 nZ/R`p[-n e_\J3WsIWS4>N;ȀW `ps[˄?vNt[L#(lj;hb7!Ӿh4? )(f/r =#@Xevʠ`>LPE9U, ~VPg+O+MeqR}H/WΥ`]2; .ꊈS.,~`RL d?JE N ;^yr4dUqßnV]XvXAnvo'T˨b֗V#[Uhc+8mSƍuʙr>WiL.wq[b_OX$uia0ooTb< @ܿ.A`H{ĝm|=SYpn>0 5(Bah%߼Ҭ̚~۬נ#< U;lpIǻ}J]~pPj?wء C&p_/PݴFLmI,̡&>lڤ#N>fVu ow>~AM )RͮiT 2w%e/: Y)кxlb=J {_^W,:TKW!Z`%\.uz׳U2%ke;, ް 1*syag@mQ I0| Ic:ǯ9L?F榾S9Z-\?-,J>. <|?a/# [o_O4>JdbhCgڡJ1Xo+SC\OU`f1)(f{)X>3Kˊ-E5i.j_/Y[ZZF&f+Y\Za,zc$`F003хj'"J{ 1V@'"V>*n&55F#^##7%◲d]ڍʹLtW{ ԓS5#ZQCj\g"\-0XR:RXlrKr<@ 7ȂR#yen$8=d1MVV;-Cϧ[aݜ_vI1)^Rş*@lk;sL'mJy)4hUb+=%d Xz3m-lOlSYC lGk@kao*D鎌/[52 |xT Y;:_t$$/]vcq/nQ4a/6[U?̤aM JrS{kui_p]0N#5lZ,6ٽqJm b6j' 6j@@N11T\bxMgbGTJ 珚2"{jyDDh , cw&lN/>Wg Zx:32uqz,0^Ǐz^!xTsЋ{` =5ΤZFR'ma`CZ}w_P&\iʍ#E 0Y$N$B72\jgv)kR gzk,w|{(}T biHHkd,4=L$c+ӽ\8wIب1$C*<oM:m%4AS+ g9<`^`@-d|V$X;>HnTИ p8AxUu~+G^I\{{flFAwݪ/y*f9^TM^{pj?(byz"ׂ]0ûeӹWw4w&6>GX5X]ضKje0k ]X|֚"rpkMFf(poUr<$'H!ycTj ȩ3JF4X!#2`ڨ}$#3m*or_SNxŊ~9%22m(E Ia m8T:f9"š5Ny5jo 1&.ьvdbL9*x;RUH02) $c~,\woΰّ_WyOtpr7} i}O+Jڤʥi(ԅ_l30l+bHxUfzԇڭ K^m 83./gͶ>~ȹq?B̈C9DX*/Ǿc ܱm4g&&tc.g>'n][ \ufkFǡ%yGbG>9ҎqurxQ"Tx73e8HLz@sj_`|i(U[0?\sЪ8R)67rMJʝ;YXӬ1=:6!?1>QWGAH0Mn*/% )~M`Y`R}u;O?%6GWb+j'V]#_?ŶٍE4b>|ՃG7uLZ<0Hd#j|G 3 BNG֨ j~<KIiuԭL|0@O7eu~a5vs/-2s̃VT^~G-&/+ 3ϋA#f4DC&ȇF3,ê wՁ!QS=MtLMA".4u.ݱrp"B~ic׊ծԉGjrlq^Fi;ރ΢ ǿ3}Up> aWJј ,j*PA8yq 7ѣ)MK4.M AgWu}\2!ho`D LddmI*xA,[4[D>HQqo# A~9JL&xx&]6 ">۝g4@@Oi 6bwӐ!澔'mJV[-Gb:Y>@uu-q7M,U&QYިN~vcJ*~ZmMV2 =!A_PhaEWB͞_?C[,F812-?z'AԳnrB'mPm\@W6G4!N#ݍ#əbg禥-~Q Fa\IUb)=?*OKf>ƣ|rI5$$wy2(, (<>,0@GVRy&vux1|ܧF3[f1byn`]h0yfCȝ xVC^gP*p;ڌ6al!r$Za,8^wՋ´;oCorXAX/}uU:}D0{LWbwvI/@(.,<(fTyF[mXe]pn7猏眤U+%bIZ#K%e*j+bY1|"k=S| %9dMBR'Zj )h6^ \@?oDJ!ϢiT}ZsHKL56sc}9"m$iWj9G]GUaC]Iˣ֝UGaIKK@ ܌*  @zQܚE L8 +ϰ*2ߥ 4ש%m.N,׼2skǓ 0yg1"RIA GhK2"Ms5 |E7R7/ю}Oe"_ŕPGeI7)`-m8b7ߟ~)!AX9x[|/!m&sT@F\[I7@P9P0n+' p;\]j ݎ) qe)6lYؚͶIIFk/?Bkvn,7ȫ/\m_IVc@z㫲IEI`pߜRFNe`%KKG$PE1榵c:u jY7)[<kHのC3k!)r# ȿw;*n p8YOvRHH3/Pا߶Pdt_Hި$Y|+'xP%X~EΕjWa$C: pO䍣TX3y,hWq JXXܤHyJ_7e 7EkesRvE>wcPp `Xcc&|Fu M,wvb)*a=C\/ =)F#SoJZK 0+S{ʍ>N@#|[q-g1O;/_&BC64m*0%1Á$\s)x`ij@۴յCs/:xDuz #|bYV0 Hoaߨ׉D.m6>|[WB5 :/oo#c|^.nӌK&2<6-yn}pIι ]6&"Z$+5OrA"v:˔tK{0IwDevnc){C6XB4>CUp%ڟ@T f93/-2}v;3q4m'%ͰF3.\P G5&f˔EvɁ9)GyƏ 7k0:DY&ia$!Z=ej#]-"R=ūSoum,yh` KΣ@yL ~+v.lņӮc~hF{db#WD8ݍD"x[yJG;?y0䷡ _3b8։YUׅn;@-wJwޓ唤2K..]ј5PPx'Yp`?}cԖil?$lmEfO@@uw\=^ߠ:o1TlËCǴ\[o7ϓ^t`HA( Lyb (8آE.[a18QBz;@\8kLʐb&7Os};uCֻlW})f,4(_f1ٔ˓_;\8sٕ+3 ԯȏ8d({z96^$0Tk?9z):xS-Op8!i0fn |2F0]<߱Շ.~ȋPS{ʇ;nyH x.32]4ܼə}w̉5x lniItta X@qCkr`#qx=]߮'0o<T]$b2k?H~+b8ðc:OX_bVRXp{wWO{Ц@va\׎ }U9<'4iz Wn<)E9~JGl?f)hV E]jX}f9w#&?D%Wx _ =z7+W]xOv@dkhAUe l2߈XfuSN~r*e;/[_ {Ue垸tZXp>5PN4c%0c p.ۺ׌koկĚϐ~ JaDH-,P:XѶX 4޾<ʧ02n0Sč R8j-+=w)ç>5 %eyYַ% /,{c6mwy Y~lREU4~幎ii6 ʹ€d" $fΕ[T%oTؖC%Y0~=fvd6oӹ1;alPxQP=.\.H=A-)[w8xx4ѵ[2}S,m_?RN<>_{"O;iJTj,*jH;XtX3`g?D{zZMѝMe6aH?[{5Tv 'r}%'Z@ &`Q?D8$a<^PqT2VZ4c]jCB1qE6u(WߕC;-wxLuv-cI2[ӣTHO "D'Ӥ_W8Ybلo@Pw>"( ԝ\ix(Rz3M4NAȘ-KU }oLG}=x#FSkQsf<6*~wV|?<׿\?#Gp/1F̀Pm?ðg<=]  I J4Ybv'I'rbiK'G+B@a;*Wbn%Z!aF%ǯ7ۦ Ua1 Bzќ~/B8m" &_VkUDp+vЎY?hٔɼ;6l'P}n]gԘH$b"-`2k1%#fyCjH;p@(>l88[ ֽ֩bFTKK3ǼCE,ggeL9{YMCD B <)\Lf$J+wuq,#d_:;*ӫT9;WA1AGRmKBZ?IIg!]_sk^%Cr4Hȫn/VD'.A=!7㷊OLcvf=,pw}${bṴֳ#C8 FK\X: f> ffV/_DЎOe(pqx@p'K h*\]tFS3bt=[\ 00>H+$u2Vye׎10%A~=hH{[>DKuc\iǣNlTB^>3y?[#Lv&O\jŒb䵴"5ܣ?.0O‹ c3&J TIDh^sFW K p)\0_3ӍNNlCk@1Ү=~P' ZB݋)D5ڨ"Jٷw꙱W\mvKƠSfNsEH'qDiJ ;(&B4ȇ`Tj< Ek0l64ьM0XwQnyd(+QFo2<Ѯ7wd>XMUITy&DhCp,unoK} %7}P4*$f@*<{3(Z  ^Q,:PJp&>}*i$3ξ'<4BS<v>AI0Δ3Rj<,lwĜr99.)2{Lw}!<:GAF~x_Lc4]@^`e1(EEp&l'#v$JxJsR_ {hNJ`ृt]/1g)5B^b2(,ص\]:w~B0HxuZ`hΠ$.)vU9!7i_k$7V>n KC8MofjO2=tܩK9~=tgP:PFU_"uzx-o:sS)oiU+\aP:oFTjzex +9>jv_$:zSV+*VL* I'R*-c9,YNAi+3[vi/1y;ɛQkv/<82,CQn%XiXaL AǸ |荶 eI;^!Svrf*[~\Aٔ%Hy :+I= yܗߝy2N,PymTO"p-__7*RT&Ĭ[88{*2is9\wM:7W&(tt!hRkÂ:Mf؄(n酥бnto?X#2c4 ً]3h:|/V jt$o+O]Cz=j9-"rfdWSkhuQwM[CA5|؞_7ѨdbL6h:9Fs KtvSO1k/Å{JE@׶KSY(;)hhKC.'S4E#1 ֩׾:?eA/~Q\~=4kg#-P]DJG|Z{W-zʩTvv&E?xPQalP~xR6,kw~v6(cq7ӚDMBM8a-m0-cØ/Oj& ᝽hnqج/n˂GL g=jG-;jktR@ k6lJL[n@$3v⮃< Lj=K)LsRsWkE) M8 Q* )ĶP1 HES;hV &,006͇Z1ͶAL^qhVFԪaA0Sg-P'!NQxc.u/.E)CgM ݛ\Q*uo\еս:uUOOp m%1=3ǝGT3_Te ө`˕$Iܖ8Z%B!3џAoEe{yE܄Ms9NOG$4x-;$M g]>~w@\bB6W^qGy`?t!݀V/S`4c|\qOМT%<ln HLB[\&fhqKj(]m[;Eq1Lx58 /fN0vGѓY̒3fZ,0myt\jɒ'숇~ JSLnV6(0[wEqRab |LPA/WUV=ti,-4{Hle,RjZ4wtݒ2zYb@ߕ!l.U $giuqonќ'ndlKyj(Ja8`7UQx1a KTIbc@u8!Ym0sPR3qӼd5wS4]ǣp镗aZ#dd;8(j^#1 !-d@$RcI`?4S/5_ o3- ȿu)ӟ^\mv.p Ϝf2>zԌ/v uT%;&i2x-H;oWpL{ XiV1muO :2kk1|uR>C~ ]ϑ~`@[᜞qI5WAmNdME0_ ge |!+Agr 8݁$:y=~ ;9SoHLSL4ynkA:Tގ@c>1wD?`&c#1 FK$~JW{*]/RhYxsc5N걷̸btjL/6 8 ˸^`;L}K%&Py,Xa=@2 mˑǕQ|V?YI}wܷG )$: )>;,4יE)}b[6Q&ae2gF^PEoϑ_c;`!{2a /g``=^ҿX\Z ŮD69:- sf*JH:LL%.`֡Z2.2`2NdPQk'N>$41f##+  A0pIÀ9qRb49μ3U DBVOu%ro P!q81^hBDS0ٹfNȑ~RrmaŠ\cx'f؜L}Z6p˨:ppԼ]ZgX9PIN80Zg\ "|aTDŽL 'ݨ`Q]1+R=y36@حtj14rcZ6K_9ݏi~c%:8p(P<ApvO1+[nI0,]l(ͦ3pHřgW'v-<~1e5J^~Jɉ,dcMEkf6SxIpT;ܔv"~a2M0E$e+ ugP85oG\s2joJ :{lT*X7}d쩵MOg94 NjUi+u+S f\,l&")/5G( XZ1ěVO苟U1"&ZAZkS]7o8Nf.9Y1a> "Y]N{| .ԃ|]9Fx0`̓8E9x׫ xswMq$ '{h>ႵAְ7D BtlXL2xpM;vّ:g=;xfv0i^%7WT<2JnP> 2& +d_箭c{CZ鿥'OVGu鐭w<3ɇ#(ѴxG=I2Z?>Zkr U:PEΔZHz6=Z ?Cq{t@6riU Ow1hwƁ#(l]Ѭ-(g55vUV>WE&j|КPzޞwf̬C (NjsE GY(dt~ىm}) 7 <8R=\]u N?CwnKv}'KHVD oZXf^72 i+RpVm>JqֆC}svn?Ɲe{FIy #DwK֥ 5v9}]pR[윛,(HK٣MHsOwxxu9R7HJ fpח0WUEYFU ԙLBa Qpg *K[AӡsP_كSV~Di ^ ͐P)K$ɵؑ*Re>_6u}V+rrVtt nkjQ*wX.,珛D`4h|duHj${ -'3r`wߍcV+]rK] @lV:ԓPm?x#oOTAA*פIs-H,L[7esxM"^8"$s@QWz6S@,GK~SLEMMd]TmȘaAq)7A7r!t-Z`R @2nѪ#&".%)cfl73*lvs1,RsfI?w5G#rKq`P3mk=)cC3onLY" gZ1'IJjT -_*v:һOe8OQK}❰g\uHU!Ӈ[R֎w&2!: ùDe6^]<U>>"KN/?L%ED 9P1i(hZ%O$n&||' bš@$OJ?;K GiK:dv_c).b$Nh!/{~AM;uCcŜܷ`h7fj?HB,@CB+?nRQ,,y~ Rp:R5<9(C6~0"(ג)5k5َa`QDγWaA 4bOآbYvqNr9XYt/b$# s+C=8|0~+ݰE.Nv)  _x }UF%V;b/S%uK)cƌ$wNbkEҷlx :Lt橁h >ox"vpvlyJd8.Gܛd], 1Cnqɘuhk1j[(^&O%%x Hۣ:!_LYO<@p]y:-\O פn^ϑdQwsN@4#ވ|Kd2|Ĺ] M-td@句mUCY =lE\Wif3 sPҲ$/ca,>4\a@nX`K7\;#8/wKx̿ay霊bZʲU` r wIf7%z+06M/I0OSJPK$>]X19M Δ/6鱼VOMaQs/tG[Uä sԭ-J#qM3\^OVH@<$YAGbު,|vQvNW%@V0+t8]WiLA`CJOl]ө4 b?B<6~?ܯ$~㰦 F?f;LxT.¨ j|Xг3yxt ڎh;u~x3WU}n>=iHhMhBu?-E KtN+m(ͽ!"e}Oz#~b*°{ik?JGj'2/ys]{SDe>ųX351X^ED#'>+C68wo:XZJ#E)t-nS w/U5 '4c SklƠc_+nh t`xH _VgSsDoVsKt(7^|%(#xKsWxyX h!(#UT?hM&]-oӗ$$bYs DWR@`u1yV$ƌs\kw))JcBNx<C:34![%uyRc7o*ya? /[߸uQ$I&t"+{Zc|֓Ջ- 1֢@?.r6-HaY4~+<؜b K t Z)YYaMZCa@Щuq2שJl:b ڎT&PlՀJ i~+d}ykԻ TUpki)# r}nIZBy]VWbĤwLb7bK[V `Ϡ3]whc-25TyTٕ_z>7C!rR,.U"^Gr m0-?lgY֎Q'I}{4荻9J3?Փi# gS rwE:q|"sƟFe0ҏ ҆C9H`0V]x2@*2AYBۋfh!cA5h<2쎍K#38ǧz"in=ƽ1WɜRX{R %>[ze5i"޺9-`#$T0\Mmg-݄ RTRj䑰'AzaE3 c ><3S#QUGF qY鱅RinDB6\!ҶPR^`so8S ^IeZ1v81%ft/aA7۬\V STm?J}>/A&6Ŗ>XJU˴?w"IJ>.lvCpOs hԟ4 8hV:qK t-_뵖O7$8xB#, Q5\:6 2V? ;-$I֠qSZR%o`D> qCͽyJy?<ܵ->> :׻&3}I7wc|=O%.4H@<іa*{-hQd|8ˊQLx0TKqNֈ+k(egTHZ[+c+Ww`rީ1(KZӛǮ)0T"7No,:I|q++ٵjٱ}o"  لcܳdQD+HED<WsRJrc CfH_n*" 8+dqL+9@dT(u&GiKw2;c "x%J^ߖnԞ Zݚھokbw46q :DhjJ*V8>NHNաTW=>iY=P*JD_Kꮉյ%1/=O9Y?]㈢a cNן |b&cNH˲i)eVgioᒜ7"GwZkiG:}#7zt6X?~Eйj 4JɬO> ,3lߏ\g3WHѽ2x?(u[4_s0r<m?mȿE。 {lJ%F" ·EDتUQ0])H(gyFV}޻ je4Y N]1bĻ+29ca/ȘyLwڎJ6k XI2>>;p$w4`L&7?1Vv@!t0o徂tRiZ@ 4˼o lR.5Rp;/i ۰kgd\臲cs f`}5ͯnF>Kߒ7^Ѯ8NtZp̲WXtNQ)푪!L6a=Q[4xӎ A0 N Y^1:,<^{Q ȝ. t!Yr3?Atr>qgv:iA䴵9m !B@-W$$7"jʔ|MgΫJghN)Y2ZRr> ! $qT{p۔JtJr][qr`D' +R !jO}H6-&̍VH~Q*&D\& {++$y CUh dcuħ6!$*BLoK"`3Q&MɅk8~2@OH^%x'KLТ&i7~]յntM2 &p^_@g64 h!v=٤.,Bk^fg4Zk3qD$B|$02DKrI4 f =#,FwO8ܘdxԣR:3lBTG^7$JAȌ0?8EnC‡~IM)^&y4q5;7$wPF`H% Peل9mpm) *X Ue[#>ś劵r.$>pVv#zGєpTRd.EZt5!}-A2V參 ~is('auub 5U3us)i_}Ά|ufp=Ax6G@N_)|k$wnrL0nqh,'rf࢖cZnZ'y3;P i<2[]]u@b BL9~RZI D`'tu6}s^h[-."c#`YUoL툼O)̽H67fNC"{,;6iFd^kퟺ -Mp0rYd]>d78#TFϷߘnƒTzm?>+Hy0<tHgѹ tS("ci"Jw`(G3O*_~L [\MCE!s1$k.@ֽ&߶Ui :!#J!4+QS.`9xϔSLq*g8Mi0X45J7Z\'f||5 /#in"~-SAWl @U]!v%"!|Fl_3Yysto-elu2C׶0%gIhtY;Kxp0>ɉ9?¬a97ZkO雺] h:镝m9p |b и%P~A  E+Qm0j+=R{UumؑWsHBk({d&e<ӎg(kսf^˻P;J 'QsEy+h2r,5( %l+)b`2YuqL+Q}ijC&PNc/2*҅Z`BWFu);m'}HX BK+.`<БD:KsUSgխB7reY8{ӷ;!N/!/r '#<-w{doٖSG׵?~DDZ$E)cc^]8c5`“< 3q5raU7 ~CDVBb3CLXB+E,P9Gg)+#R$YYp #-GPљ'0S(y6cn E6+ؠ1G R(gUU@VgQk3n2Po$1cV/%1s{a*mX*?N9 9[68PE /JE&Zx4leY%N?# !F2%{Fyb{$b >=.:*wn۪xh^իD([4Rnr31e}E*0W6GҭE Ͷ(ހJsvT fzn&![$_Z,'Dx{6 "HV88 { CbLsŦ%%R@-Sכ_@]K?kdXv&Ym"S; xL;^N`WtZ<\N}z(eIe&D ?;3!cW.t'lX:d(al'=+D~lbAFEhDܥh96 F`9ZV.r_)n@9Eer(Z5]ŪCv׎2qf%$`NR4c')9%.Ѿ<+vn}  KhdXxX3hKԑ5)~_5\hmq c[;41en8?o7NOν)!~pԢ-Sk\tI;\d1YRCwQ[YM2mϷt(K /?~Ԅ~{bRwڍݳ?9z2|lXAZx0|Mś]},(*(rnjCɁa[bǴDp23ߺ&4;)ܧua Va γ|"UT*Ӑv"4 RvC&<'V `&$I'szvj>N@ Pizʝ14u2%qYdNz/ ĖbC-MmX7Ȩ+£6S!P\(C7];x=8kٙ7Mygs4^av:j'z-Q*]οB 43X >WZWLnQŠyz.dOv:e~aXTu|zlNmI r"Wɢ G=ld./AᴿHӳ0DŽz`̞Sȼ8N%=Q21C{\^N3/sy2b~"]JF't場n)RJ@7bԐWsoP8䨳["ҁӉ2 VHuxQ" l#Kd &ԉNW1-!}֯#P7;j=mCWjϠXzLDe#A #H);voN$N.3$:RT+߁!oXwr/7^ )%`*ҿ H{.6:I{(^ب_pd ݺK,g:B?'Bߐx5LjV]eus?fcі|ׂoɝ9Z®`͕yeQXٳ&=V3GG-%{QHӦteR2!T\w5}~&$^e952}>yܲ\^+莪ZAqxY]I.O nᑜp4  ptUa ЄB^T}_BOŚpڧn MxxCvۇ9Neja &:KuvC,a,䒗N#lmx!P/f9_g{{a .Jf;$ky7`Ĺc6چ lCp/6jXzqv_e`f(~hI߬_Bnͩi>gQ0 yk 㦄)Fy*晉 kp9V* i"Xfnh(fXِדM{"4TYʁ4B(T_ߺǏsw@a-aznq; @VB|x[wJUML0orުѺ(e%]@zsM+J21Ugsme: x%A«,T:6 v Ӻ̬lf5s6@WYT+B驠M[+˩.Aι >o|H0m+ OUUX۠Sspef9#4a5v&数|@ؕI2̍OsЭP~[͔XK*8 ӄ?Bn(Љчz6"H,+D^cZu ܂4!IJQHbz_^r+bn47i}P^l˯E~Em~l//Q`{VOZ}"N PaE>s׳J04Ir>#~/K/?W`h3WK\=+vO:}LQOTtMk:.ySJ԰p10xMUytFq7/k⊧uͫЬfJm?{ģ4܆QKS!GgQ)Ʋ?DJT5b!FPI0U=u9r}|n\(fUx?/boL4cbQٰrwZSntR߯,m<@D}D- )"ν;ޮ@ϿhĒgc ^wnp& EeMl% .l`7s=|7;f ,ؽBz_ F0^AZ߿i.̲)11(kӐT[)=ۚ鴣mnfSeWu{iyuDf"g61c6F>%zMY$$Tc%?-ތxޑee̅<{~NV 𥆸~Idniyʼ {Y.Wuc,%[y̒K,(; V- ;o+BPo0ַ/aT (tj=rQ DWt-`dp rP[g+I|&hBs|J-s۱y eֿ+-%=qޝ E #m5[)+ܼ+"Gscۀ_~%޷ȧش;aXoHS4ҌN%DI7by2#!|Y (31o%p?Yu^Hր-cĄȷy4rԨF;;c|Cߦ UOOՆ<>,tDDz*iAiJ@k^V,ϴ!Ŵ' m6j%Kf6s!hn3JNnvzS Q2`8YR-y}kI<݆zL4+5] %7#5􍮰M󋙽;8\`$jcHi$<hlF@F y}>xEE!Cq5[A~~ qV/]+Aem"`A{)&n,7@S3nýq 8rgL0.=vʣʼnR~|֣CU#n6TʦcfFp5k? X4y@]"z(l[ADP;j%ZcZ0gU|h=$e8=e=qq3!0X:(&"s̛UsuH FkH@BP`"Ďw}m# *. >G7ʮ"T|`alWi-ihIO 5?>>YfQ"̈ HA r\?az%,E\^H3kd6ko1Qr)@b}\-ђ)žvYOQۈy;q8qZA7Fr[+.ur^E YJ8h(i6;-1\C @-wvg7OM\ +C5Xxr 5x7&]aǤ Ö0(PkmjcSڈK Eo|ØȀgū?zZtgg'N NX .ɖ :Rv-jڛ ӌN\aҝKbgqR_)‰Ȼ)I;e k eGW(mTsEo v|~ۖ 0a:z1c2eҭ#8Ĩ=apj3g|}~ rFL8VcVf]QcCunN0\xҴg4<̥qY31k i XnC< ֺG%׀t2n{ [2rFpD:Z}K-|L=e߅MpZOmeYh[0 !o:̠VD~[+exCW)`$% Qw礍KcKY7MEmIʻ553ŇdD쬅֋>d:" ƝIMUFb#kho9B~c*uLzUp^-5_eOk+'|8F;0"ߠɟGG'B~qWb%SK˂ѶPR+h퀣G`I q,lrnH[n2VUsyݱszZcd dn;8_}Ä,jms~i>6Dw4D-u]U  J۸Rܸ}8 x_W/QJ/WX5M`I)jF&ʛUT)F2m}[|g 0%)B=dMQ܍|N6AkՀ-|o1av&Z fb/^ES2չlPn?tM u1Jq-1xZ=3LDڥs&)4_]`4>ZYIcbL3\=k9Hb ,nj=SKCss/IdeBw3ؙOω<{DgA2gw 9zXQfZtxzڱTS9,l $5o0+q2N ʨzo!} s]Aۋ; uqk#XbU+aթq1ሇmOOgnѝx c(Y*FC c"ĮDj|'S6FJ)r^O}*9 j`0\d2vCt'E0R!UR"u7Iɧyg՟+2khWK';t2 ^b2.s1%*) n2V3aF[ssH͸]! 27viTn7:B'N4a:Պ)0ʰD>yPmLuFt.(ddsY&AoӀ$*S8NA+Lb)]L!6ۉ/f5ȺvtM!_aSKiPs+qs&S+ϓ",OA6`p'7A BX`~8}yš%ب=~ >޹üRgB¸NݖW3oJmg)llvGX 7{9hȁ ۋEѺL|xRdbQKt#ð4c;QJвܒ9=h5+9ݦU0:>Os (}Hk~.G]QUi:H\G2#MjhaZ2JjA=LiRߛXUjc% }~ah _hyա=bIJH//4eђyz4W Nlc/j>9o>Tk:nXJ?cڱzCjf&,d`fdS $QKZX1=h |eX$2{i٭TY[Lpn[QT7ZzilHLXlQba¤LhRtf2*(zW6 H=sm5m2jb6˩eixJoXVrrB /u8X;_Y^-~@SEnڽVob9&q g^g_ט/HV8z! #KB\<2(.XǴ}L-=E-ZÛQ;'ϖ'/k>GChr3[):zBs~dMq1ۏ#o-yQ; Os,o7s3gfIItD3Wdܑl @`XQ:3zzTӖo"@,3fz+"2?ןL_+0SDR}V_*&W$ua 9*z=YIZmqHrЛ }9!J|k?,L_SC?'9Þ@5VMddT%K}LK"%귕5:v BAS]è[B"wPRD0A}N4PjyРa0-H#b!od:vtz@Nbɿ[}wF!3=$s*BX:C6'}Cc2TUd>ѰC)766?|QX;.rg׻krMF%/ڂԪZHEZ"tŪ=dT=GXX1?PϖCS ޠ#?U2%Ь۹iMϫBDFX%zwC0Vv= cG7M_'bkPǧk玹G."-Zn+Cb8 p'ptVA8MJ ~sFd2FIwھcQWko䣸ߪo^)5`EZY (=u旇4P5.>8leJLI`jzZf~~:*"L?a]q,]5>+LGeP;v,6_إa,:ֽ!l5dyim߸0{se.d}Sv$(AQWw](Y]'3>GcqbX)Te5(jP|7eEnN31֟ AV` ^dnV7n ]-!Ii##xE:!t@w)ܠ=͉mjKA%ݬkDA}vQjFLjXNnTcѐ`zoF$0OAOU쯉xn 1XtrV^" UX͟<\ٟ|C|GRƇ!FߧF:޼\O,)xh_Nl\p0HxӠ4Nh)+yZsv S2*DoiwjjANzt`fR-Cս2j Zٗ?a Muή1۞q1AgRIG/$Cmq} !7)gᫌ/x͝:@6t K2M^&%/8*a;5[|d. ñmI HNaamQŞ_ V#ֶp x ^U`*5(""o5UaN>~3`Q(ۿB~ $~1sUdhQN)rtbp@6:FyCp%^EfnaWї S"FJJ2Qͭ_iQJOhN,d'N%a'AQ$,]o;Z6 ]{gbޯFrFRJ&~YO13I d[edqwܺRݖy=m5Uu.ТMFnqnQ]Az c}D[ 8<4d9>MT@+s6\:-443֕ jlϜT_BPw &^L>kKWZΝ3wZtV*?ҁM]Ġ9'tT{OtŠ;Βbg0nF`T,"3PO Y+4%a[W_<-G51> *-%9r. k@XJx̵ao=W1_6Öe]碨o$"FC'x:%kT}wCtK?L'x#MֹCkIi>ჩ*i^ WP,3`qXXQlD ndݜ嫃tRy I{}JuD)H#IKj\yj_ضun:Y@kn/fEyOyClv* ySr_9BŒf&h dž٦Ѝmek5N)J7OxSʯ&rZjy+(h)rX2kkR|&3% `ř[*||q$6 mFrhtՖaTVf0{(D>rF$?ޘl]f\wbN\zwǙmuXdw{'g 3u_E1WNcT48{҃#Ԣn"-H" mkE{rbFCIc,nx.o* Bz@N`ϕSҔ{lDoZ4}XAC~ϼ9Zv[[*@18Xעutߤ4R<#@54cVeoUe4f!PJkUhİT!V9 dMiEinFk[qpMzA3|AmwE`_+US)`0lHeS:7?yYV *KMOMk#{B']#Ȓ_i/& |Udf}T,rǛGí%OZr& @E.W^%GF`J n$q ";hs4zgId4$p5[ږ*mH@HjU L8pPؽ0i a`lk|;0b[qt6IԽ Kȋc di$9e3ε݇`=={5)c7*wOLTOlPR0RQame\G2Hyrv.un AC)64q|}l>ĻkQ0j^HB9&"º bt%;bZ}=М\YErce33{OOoiۜ. Kryʯ. Sy>/>,b1Uʢ%x ^WU).PY3DD^ ԏ}_nm>^6" [4Q){9>E=_~= eMpKE1h&C Ig7U0^URIݨi/6QSv NUkx>J-jU|\ %/(x>"SJ[H!A %a% )p4b;-.*Z޸q ?{- bsund$*YԈFM8N™i`E17)0Sٞ3 3ˬ ҳ/$:A"rD͙A0:<5IZ(JN$6A.X/>';HNi4<".Gп4eŚQqZ٬SS~ؖzyIEQbtPmG/߬#,֥S'u'+@JeNzhN"~rsBEpHU`1aGIr/FSPk ~3RK"k]s9΃u0Lp+Qrfr@B Mqc,.|C8=rUVsoᖫdr /]$9X G؁`1vwl)~W`oLjr$ԹǓ@_ o,gt1FBM}[Oz;ZdV5ȢU/f|3-rܼ}Գ%2cRҎ RiMWZ]P"ڨUIq8+9mۛ.p#f-ڨVNmptw bbXMWiRF)Jkl&VߡKB@% |R Pa#Xc"}w>,0ÇdQF Gg¾8jVá2%- b.)f8Q)@ܣT嘽fk`TV_a9)$C\t7 +\ a[;?ojw.p(ZxrYWZp_sG^l`hz XCiN) sߝ8ј@cbc͉lG]fZhN_T@TM\Nܿ?Lb, T#ekrH̯BN$50*iC m!zT)otedoI˻f I~,%:y&oZdt;`$ۚeY5r"X1aekRy~ \Oh7٤9AyvCE9YjNY!w &;W9#IRf)J^rl7Ӏ\,*uG6]y Ø=4YL,N_ZtL:<ႛ9o6H}ckm0a`'؈cDfnf$ j Z#[dp^[K@xUŅYag o4kR L0]}-*,^o '3oKKgѵaZ'!o}QL܁$g}ZɱKO>B%2ǭ>.g}Н6 J"`8^b?{@ZvW_^ ?鼐7lU9|X sɉzw&0$$k(RZP:`C_qcΛw  < ⽌ Cw֜9|Y' =ېZk+u2Y+g4;&v;ޛX&aD^֟t-WGvǯx :!D#obglģ_ Z _viu|;N.닝x -A!U4)@?f~@M'Pu#E;L"H7w+"n%e`ʑT%75ʀa:NPZX:^_?Ñ}&8~bct8؉Póݪ2HHb-l8I)f@7NPhyq[F m4霗ͲdHl(Z Ѫ{bnC< iE~M6%2(ܐ5|i] F1wZ/>md 7}" 4)k7N^^s ø0}~l8.Ř܃yjHg6Z[4йo*4bj##Id|v;-+ JK<xP񧛶jT#.`0\$o9֧s5# &o庳!ѼB"XN'!OH~`dzAW}$2,NXCNUFū$:8lj3t䑀MNq 8r)7YMI|BOnm+XS]$XiK:Yw %t3at#˃jk$&BNw Oi4gD#ͺ"s~r;_EDU$Lv9P,&5[tٕ Hz,4jwD`bPi Bz/xx}Px xa'lLkHW eHJ8UJ@ "%<[n^\ܯ SjP)yM ~O.. I@>"o :vA%HDWɤn4XUx8kg@?XnF4f)Lb'ʃƱLo/8L;7#orý"1(o $Shv=b3T~&5 =Z`‘aSx,~ekh 1{C=P5~yU(g5Ø51S `Pzퟥٹ~ %#Vs]$65xnqF?{;AT+ liJ1 ѳNyE ]WKhF:>/ҺKUy;0RFug VOqR )'Je0G1.vdN;evP20Rw7)ixҗBQ)}`9/!Gr &1=mDŁÑ_%({94BhvC}q8z"u=ّ .)_&o'}OI2pFĕiAivZ텯n=S;haRLBYEz=`h4M.y+xRbSި7x2$tu) TD^\uθ4SEKtokU?+]>>q#-=-'P?gII] t0Qm3hLyBgE_Y2Cu!ͼyZ%κEyE"-ym%^ٕ;BTYnsŤĂPLs3(W̼T[P%)9paZH6!̰>SN,*ӎj_@KRA0NqvML*; 7F5~x-jzygA ]끸rd)8l8D=R[(A_bA>C*SBoO fJETm輡2)kׯ?lB}xm/#X%^;j+9+yd8xR=._5 \{jTЏBGX0>(.6To^o?%7S4,ڊh6p~%L ,<]}N}vLe5.!ޅԧMIa4(,s%n/9~^Ydaؘ|"|j1! | ϟOk(Dx,Cʷ%:lL@ka{K.UB/Z4v#a] :I0x2): ̥SΔS/_`bJdVZ|Tq]t`sFpuUsl81+i0@,x^Ȑ+=uW ͻrl.l^Io[jYiтt䑇E{yz 8%, 6/.@|@V28>:  @ƯI9SmJ?AllF>yzmooTrr׆UK0yk@&*ӭ[6|ݨK< 6(ogØYڌb%Ъ5AhZ=PtD0|2SFÎ9DR2 | >&ɼ5hBE*|_ 2/`Vx&iLh5+dp{~-0Q :H(K.޹i K͊yҬ<mXJ͓U}NGS^4kO}ԥ<~ˬuD v}NO ]w*vD*qeztlbRܻh5/+Y6joXF SG"DѺv'~rrL4v̲cr+b74?؞,Pj g29꿂k#Fc074}>m)a)`w_oƭϐvz?0Z]W(c{7McWO/LUQ9I=J e {;,R:nZfWxzJWX񙇝r/Lm\.Nq>61&j$DQ rsZ1: (Tso*C[.b?5`~Ǎ+$&|k} ZT(ݱ] RdN{{Fd@]0p_ru$LI1'C?ӱ\(kIr| %m*۹Ej.ETzp)UA.z(C,mwr8l&Eb4!bL/eRTePGlwqw%juzJ<؄LX9\UzP_Iă)f7r-~׫rpUbJ湢:t]ejfq3YcxcHs9`vvC.6׻O@F~yd%gQTQ3<f`N5F#|IwLrN}!Q8gDt5t);UtsNJ밤br{P݀+s:=,ϓw^0j.ʽat+QD"ؐF5&Zt UTB7 6.:]O$H6mQ("׃C҆BLB%MskwL [ާC:5j;0V"Nd3,>ٜB%qdbN1K5{#(z$rTk]o&nh,@ `@2X>H(]#7nf 8h Ja FTۈ3ǧxt{ΗDEJmf#|M!>H S8k1W5K~fP(x?3_dYD,Ѣ@{RT|@xaY`͈ZkKpSRa#/"ab7S\x5O YPJa'(_s쌤o0SCdrZUr:];*|WoAO<=mK&4D[:MF&Μ~o3^mʮM s{eA9 ~8r87:(frW68'|m(+ ΅':dwtg)-fAv*os^kiJ( iƤ]3'%*ƒ%PWP\W=kdfY ]*'>#2ь<B"Yii[$A[4=݀4`3z6PM,`B Sy_xުYx8(&+q\C-P5uu9 >aԯc}[Fߍq`i52IQ"2Su<rQĖuiI F aQSPPj֝n=4'+DےӯeJ:;qyh˓$Q 11kgLEZv"[=)hg(OR^Ɂ ~A^0`8fVҺn2Ԥ\o{rɵ{TOiG L[j,FWF_O'COX.|.dvRc}uE:PTyDoc=;LB 4zkCx߳ ]4(kZ6tpfJU}iX݂~2.V~D)*R*FB_;#P^1 p_0r9t%b4'+Vr۩L^r0zEY? ٳ&UTфx'=9z'J-+#Dbc~SeYGc5`!oJcj!m6 ,(wuKe7[((Xmbܾ44u}\&vXڠoގBs"PC\:*$NitOOB3h^;#`BuʇQ66N=macH8Ű{ `y71<כl 72XB}-XVEV!.ҋZT016ྩ6 hZzR1Eh՜4 Qi  MSh*]q% [4~ 5s~o8m ,\*mk]vu|ȅ,!錨V@h#h%3شu e(`*QdZ!yW6x'9@2yS \T1kNXó}˰-Zr̼+Z `\]x>Ej4ju3Yv8+LDZ#[FC}ΪlI ޜրv2iAFC.ig~ۨefJlwFG]~=۟#$ɘl%e;gzx8]C\K%bNi>F3EF]c`=|!׸g@LTC Eo$f\+ ۷Q#U=_\k;֢ܰ 4.ݟ3^ZM/LJ-/7ѿ>rdGᚂX{gwq[\E Į267yo0+bܫˀ}+F,]fx`+w05m~ՒS&qŐ_tr IzyK.1[?RHa ?ZE,n& SV7ZMJ[~?J.`Tf|kt+.x"րO?șs&?C=Ne'GC~V^⎅*t5T c;pYo$2R@)Үln)^`jLicNaԅxmW, .HA BWW;:$ oflgc[=%*cSZL_3SVɸ sqũ l ٛ gKalB$ ? Q~aP[LVy1J˪ެ%Q|uRO=yƋBsoFﺃL=$O- +:t2xMKYջ:hpA`u8;.g gR̉]Nm'ts C8vxrيXz6IyNRͧ&$dv2 O!@̊/ _G/ vhOX*P}( ٌ`Oz&`艱A{ɸU (PC+]B~j+&P!###>H673soted# Ĥ\vr^B QGS_G @ j4wef3&TO}7@xoA ikQĖ .ċ!-N^BW'{ce>k>q =95j!AbLq`LxƞOHpIusl+31^fqyH Xhq;.3mz:/= vL-%lH#?yX-8 kmx&ɿ᪇.aZ/)i_G!&6.tbȐFe}}86j!T_,fDWJ?JXa*bE;\=="jrRz~[+j,>EF#SK|=M /<"cF!#C56m2:"`NفJmgp4l ʔcU߁[[Pd䡰F|'F+ %CBHfm/.9#T3kN-L?3_<0"SbZ&'5U(B-0?+Gn4M©u!c:O,hZH 0 5/9l AԟAt2@bTX.O0 =.F\`=;/a=C.xO~fwS#X`Yǝ/b<-"cI'^|S F6Ro<&+R%y?_Wrߍ\Zuڃtʻ9>#M"400$Bx&YM]h}diZ7b!J!.Ec--z/Itn}Ւ@ƾP]~<ܜq@½p@0Y}M=C[n~y?is ˶eO(k]fz,u vEv\B>m|.!fT9dkP$$ |I9hcm?EO($!M—~Y[woz^9bɑq" 4ԗ 09Ƙy*f+ΆH`H2ա0 F0 yhj5&[dm2*r -|e ;>< 0IVM5T_C\Ľ/2xv#Օ -S Mz rmXo|jp u݀ ` [p *J\্.Ea+"r»l >HdU:Lآlnk~֖wڿqIyq_%/r؊Q+aX UFYp$cHC@}FÖ 6`'#,DۚjmR??<8o+b0 -y,խ3oۨ)^}52wT ;26]C\v[hsl`*h_9Ġxy 2[Ă@ rr?9W,lY\_q3I!'aGN+g+)g6?+kDQWֲ&.gRM],òP)ᙀ[՞繧ϡ0}:( WY7^e7XaCaK5tҿ0H|dUÎLkE3)21ƕŒ+ &>EeCj4Y(n7 O.iZb"T2[ !<}zxns]MFm\IY4YQ*: ͊@oޫaSy-bcBDrs;Êr-t%8'1.*wʳn*M Dý=Q}dd4zk9[LC~화-2hՀE([0 '#Bi`E\ԫ7̙^/: 5N]Ac|ct\2e5)ԭX92X˒`~/a0u땂`d;&}wd7@lC郞o@%w7<>Nmatw?ΰk!R y;",kg2!IFzR*ӗNFTIZEHiDf_ih~TK!>MRD75ĢR MkV!PGYn+mZFEh$5@92sceoPuC׏=-k2lklF4Qa 5%zX)_ @,r?(qޖ?co LA>iJ{C˱=7I>ෟ :=)XgCaPSo+Zۚ#&xRF;} >M&l]bI&IdʍT \ן8EOGJ>6NOX9;!^t \ sV͂&Yc,ԻT߆JS#ǺF1Tb"h4+_ru\j!`i0&!Ƚ?-ѷ.~?2B/=$_jg!Y'Pr@m, _3 +cO.j4dBo<:xȭ=c˱?SJRS@ll1+$S4$IVβ|fL]-"u50.E`itCzN83{'$ie~H~/,*Wv=D2BNE"=FP[>tZ(}1J,%p_}QcVeϿD= +=YڈYru?vn"PXC(SŒqLڑInGw\2I~30I^#fX13аogE7$YfX Z [< Aբ8܈ K%Nui6%TC(|[bSB|XhYؤuqIJ!QAf.7  \R qNXnK5`L2X'. uSMyFg߁/ SI2P,przDjV[6-^ZC93)CJCգ;>YJ2zwT i n_Qx}WK蠎@~&ջ/6\[L[N0*8a0QF1#6l<ruڬUpBNwFRJ'Q RM-x<ĻJZ8'c|H׈~{yPL#.؈o!(;l&0W*ER97ƙv oRt`r&ȑ\: !yS},Iy(ầ75$qT o{gΌH#Ab?hIIY՛ďWA3/tx\TOGλv[d}Su #fthv' eum}X?S)XuJmc$&6Nה~jzx.>#Fն6VXO@#) Mf.. M\i}W{"Ld܎bn BHa>(=§dcG ,*wK;y\i52g o20Oj|ʁ'3㈐S_@觍Wo9- O,ボۿUa@-s@_%Nru#4õIXAW+h;i,723 gvh>&Ң&i5NO-Y~K3iIǃ}ӽOC9zGOQlh?; ]Z)0McN(>SU#gRR" -Nih꼄,eVEj6eJm|NV¦Ռ>Ԝ]d/ç]Jsj0E)F3tbqGe4}=R2L؁;]F ~Nle @SmA'TZOwS9sT݇Hmo(Ljz[C%OHꡝ젿\[ A=.-^\YeрvWH4:EŲգKYX.u-rD~cL؝(sf{-#G0S{Sd.ۅ^mThlGltH+h(6Qb+:A9y+M_`q$M/KЗT4.C,18U=m꣞GެK +iZyzD75*mCݲ`:\bW$>25X.0}Q/Y*@%͛Lvk~G}"H\t<#% [(QUHLB[̈́.sj* ry zֽnJsC0%ei:UiqJ\[f8s^0^[J$}eu:e({ϨAWhvRp=C?;KY\:Ve[4Gy óm{^epG^~ x6Htt'ekqȑ&s[d_S /U<'ć],J EAl;@_ BKtפ/kǡp 7 -24? Mt|;hJ $l3^JVt@K;23>+.nnQ^Ιɳ7 *:'2Lu-@c\6+ayY3d-0XT:XN\)>ȟ61ԢP[EuɆKEvwdnUp [*z[ezȦ}6C*͇-R9oiBB8xFAKo/쿓_bpQ{Kk0:vYIB[҇΋r_-d|w] LZOcy~ l͙Ϫ?~;&M#^=X0m:i,L_p:8FsF ;iIc)ݷK[`76Il!7ڕ.Ü`: "8>qZOkakQT\ܱ45>Y5hX*oyX|x;6Fq5<ڱ>ta"qUZ3'Y~w2Vш/ȳ|^WX`O[|CZxt3qH&hQCJHؚf&YWϋ3͛:!Y*# yG>Cf۷,?h.,˞@U.Vub\*%q 9aQ\V[[İiI 7&C"U_l2`V,Nv{3>]2Lzi8p)7hydHԲ)}K u.8a?]d7UL㜽Ny[A~aOJًRh/OTlE~oVECÅ0F/KL}ʩMm&NݝCvB ss>cp2r%Q(m46^JI<MKޗI4}γb*:b۴>o ~'@U>%rzK謸ց2 >K_P& $fT L0'@(5/epWjJ?\A3yucE@eS7wk0 x_$bE(1x#0nPN(9|?L?C^ XUdӫ1km>6#!Yo!tB=TU)x끥B~k\iF#bN^3qݽ2ܾA).š ZøNZȆ-;ouV4m_mNBk0I<@`i Pl n;CyLo|1w:pM|^]g$Ʋz>dG&i_Q}kyܓ!8^ ȓ@5|i'^t5] Veп$J0 lü6&0Iqk\^Ĺ=! +2)ZK(kCj3g!5 GZmkrWs!KҗL)?IG1BmViic1@k{6dO7HSt$CREm_;۲ش_)Zɤ[ĨX43K\U'i<v` 3\(Ђ51u0US^}gҖ.6dR0@yc;U@3{#c5]sf`Qp2bdb>^sz H#eQR?Lu,G`IJJœr=Áj DH$ ۢhcj 7,μ5B $n4a84y6j$[ fv4eIܪNTSR*Q,EeXp,%\u.T꟱(e?C֊ub:.Jdlrtʣg ݴ9ĕTXe2ǎ|0H%hZMWTҹ4*xt>(VdƭJJ*+o!BQOq><[ȒunTio3M YR7FZg@} u=㖴 e3вA*1~BX.ԆD,aAG*xCpʛ ( F;-yu,Hو j{c0ZZ"Դ/vzob]D'GH/k \u/hM<q'矗 ⡭xɎd7 Lt'_f"pa zVӀJ1 #+2Mc8;C%}07}U]4ZGuxM/lҾ6GmDRZx:G=f̷. :5Ԥ2#,g(#rI|vyԷu_EeGoq8-}b~ꔍ@TYsKL)a#vDy=XL@D Mw8m&gMm#zam[8{&=0k:! DqkP7x|D%wCcx _!5LN|2|R;C:QΓ xzCb4 Pp!?p?+.K +zR}e301Fhr7P~,=%4!h7 >W*;.C~yP⿚g0L t/v%\;XW>=8 M&U;FXK \'ag$lGng=[j CY {0T2󙛵ixtkhxDRD5 ASc=*ex^c" /EFh] kn= JdhGXat 5[9țAK{ N6!s3|%R IM\8Mfi"*γ~fCph˷cZti/Aig4XO8 Tq \xB'e"\qᵦxYfK$=;Q)ZEg  S W7[CܟL0Zn? 8WSsMW#]J<>#ڬ 6C UܭҦǜnTI` _q`Y@6`9E=#?e]^q`󊍉_hO Sa1hf(')#Q_VBĬA_Ns`fnW|(?'- ][_,TчgMMiw&f$) KJDӖyO;N3'|YH+2^ w0J[>~wݮ+.:c=A|iW1!}ЬhUnr~csZICj,Bz=\tF7{7S/ť\4:kf:KiN׎kdf i.j'"Ή{#ߞQ h([dPFV'h 7l4NZ.Q+MSر5Kje<>*9wN☤%ѥc*οřήW;l]4>*6\9ʟe-D(a5 ByHWc n./,e,y€0P?LMxtٕn*n1$lo5ѻkrFޭ|=6.N  &1y(U{jiSE1p)`L%sY&w3D#"x:H'lc"qe8w=Xho$+/2y  &Be|MF,;M!D{6(kI KGU3|!7uZ0TOMV ;i߁h2r| `U3zfA3MY >7s*rh~$ _}|,\RS?]Qo8q4(x :VY:糀]fP _xxUbtWpWQ*i垷p#.w'Cp8pyi;jG'aMiQ @ ޣ&%%i=KX1?nte EhAdi4 t LoCO;7c@O#N_. +}T:ܢeNɧ''|P. fIq ODK[B@]z74T4j梄kbr";ccDdd;Jv(G,^R㉕h0/nTxBhfTغo*}|(A$y0?)cFӄEsրDڄ[Rǧ!t>Qj kժl,4I-Dj[> ݕoa[ C~SxlR?۫K%:1MZY^Z00eXy78>ypM5w1[U9hBx҅G@w[t_`!77Y y*ysyt_U7ɯSZEG}Tp=?ˮW KڨI8O$L~b C[3K8,Ԙa#ulW snM 5ZyV8ʁ1)sUe_[Fg8܉EAALdч/5NB̝&Ҵ'tw%/t]].t8:%ˮ$99Y\ u7\G\(Bt#~]gcc"q 'L PjOdcɈ4B_U`b65L)nKa&)QU9XmEת7ʊN`P7 cWckz% X7SXB8).%>:k_RpaAuҾ[B"3Ma/ 6jp7?P^ugŹIAr x ˻.Rq|Џ\1&u1E/zDZ@}Gx^ A%VξAD~ zںu*x]ØFv+եYcj ]] ™ky2qk ڷxgmAc8SqI!5xp"qXyL3;wcg4DG*r^Y,uִ7Tٟ p2ME =S@nou*h:Sk?KVC.(.YJT0~n CwLVwGY1fz '| KΓkUtaͯ[ݥ%t4UzN&"y#{4@O`Dm";(֪q3%{"Њ5+ǒ8b3(^ #e✬0Yp6f:szr!g{JcD5ٸ=r]HٔO\t]~djƋ?q#ky Uk#/vkA;% ccXěcWihߢ=Wyuf lnh {N' e1Th&4mkգ*18:}Lobx^^GRrEFB(=<.&4nXc/g3԰ gz2z|?f SW@ Աj J?ᗚ;vPOIw|Yڿ uPSw$ފ 3-I<3wJTt BN6$ewI㥚ʡ)RI 2{Od̑, y(\ÂvYPǦÇt/HVߘalB iTxZK"1eEKR&+a2RʨtHcSg3I?ӿɆJdA=՚8L3C!{ j}6Nu u7q^eU$e(SAUV"JDm]hMĕsJƱɶl2ľ)P$}Y=3$^!zN1l!p3΂p[4tN| 'Ghא$6ߌF# D6@c.N !JtEK;'Mq/:Ra?nZ q\U?nrܺKіv>WFj*CwT@_,DgƷ=^>&ju/s=7DENhK.|>-CR=d*"!g/LBeTp;{z-ɦn/#Q41OktR]yɅ>x|wuڿ ,lɮ=DdLNF7~@漏yMQ\Fe( M"@h*)'#¥4릧>g7LߞR;jh942a9w0kz3v1boq~2RؚtP b%sYtKbh>es |Y;]Xc `+̱9y \ĥ%AMDH'9gqSP ȼ!!k9Japcc} &>#4 DBR`<8Oe2*#YEJ {kœެ VR#1M)t:G\ r+a-Yvi@FsN\G[mq}ƨ`8AU3ExsըC֩nZf- &^2[ |oE/0ʮ>Z24 ޕڈU/S #lliY~ ])QP)vծ㺑Kڙo>o/h2EGk!gQd{݌Ĕ9$\TwpQ)'fXhVz7RlmZy 8g3^?vg !#H GmJO \Y_ 9nRM~^ eHUM4}*,&t.k=v0IjTť5#ҬX#cҋk~NMq$3y4'ؑIn/Qt!en$4$'q#3!jd{YWx ~" BzmyVeɑdUcS.FG쁧8SpXUxwU{ >R7XAu$(4 eXz;|e6m@G<PRYNx?fo N]F,~AěCĕY\P@ 7x F]c dF)NQ%XtOCս+2MܽeF'-r"[I3B}M:I˔Gg(o\@˨Ux_v$RafW06FB &2YzJQ8f .CS&cԁ ,J,1B-\Tؔh967C%?"G]e-G%iWͺO'7 OAǹ"ˡDU[G$>˻rA tE&:OȦodI] ټ s֮ZW@Uج :t9 t<;\<~xblmlB@ZlCO5p|w-wr)S9<3EeR-HW w',"hI./ՄgY,jې ͸t[Uere$o|onuΠqPx]Q? -((!-}:IOU:|2no>Wb dO7ecՌHDH# N4^;K\@w`$\,DZՓx= ΂90Xo < φlL`o],^ϡy:=05gPXY78 DDIk: T Z6nB9j(s^'Ay(~7=4x3jp⑇5-}>,KnzJ#Qz. 0(I U:m Of UۄNqb7wV6h<0<э79D"768/yxtK +E7%$Y;MKlaV)F┄Wr*gEp1hd/T/G:"U0|IʓJ6rnr/}yen}gf-k)u\A fƢCxu0S@bQ LG!mt7ˆ+xSUJw2"DMt?ѱM?,\ǭ=Y<,bc]R u I94-iҋC&8qbHIon@#TB=+y츟c3QϏ $-z3P K -\0"q+&{7Z;SfD?Vpo%U!jWv&HDd-^n6T<-A,"iO'N/˩,sĤ}\Hmqa^ԉ@8pNc.C:S-RzKƇd{Q'~gz'路j܄]T > DݻDͼȳVXZWrPA.g(B#5ƴW*|ISku `6lܮAUps8Ê_64LQ^B"X &݉v;Cy|{mdX#,Bq՗MqK L#5@[6"%>3+ 1ֶ,ڹ[r"b'I/얻~"錛dO;lRm/ 'R+ 666w21`5ZQa0Dv?h7*TLj:ϻ,2pbƴorF]Wdކ#0Af["Dؤ F$zsQJLcnWXb8KHNIZx{#o*hz"ޛTYs (\eY b3;NAxv* 7UuSVInbG ăslLkhŁ< !VT<0əWN,2E#&IH-/EHϳjY&Hu*uHDd$ἐ1?\.vBܒDK BԨUpDz ˌx7$ԗeZh>mi*` pA ‘e|Gݔj= f"Leѱw1Y_۪>< jPsuGDݞp댐maX`QS>9O܋8gfJ#mdkTjϠHԠ'D[LQ9"ÎK[<3UեOpMYn$ 3-$t]PZi!Mq(mUc93Ƽ $3˨uo1C+K՞"!uBS^HP/v ^7%!hPť0;pC9t0ƱY 0#USoyʕYx=|y6,niC懓Dibڼt/)Li#/oq(~|j^vNa;Nqf;ʋ%["a$'飏? )A ҊFZ; Qv_#ttGW !_/ i|mwdbع|KRmk\ ̭2\9$@E B۸tDCUc[yGq8dh\gŧj]-; `Z 4{E|}_X]#)?5gI-ϰGٚ_1ꆱ n ]0=3 1)#}iFy5>GΆX;,ͬ뛝40QԋB&⫼HȻνPQ=~M J]ȇaFHFŚdKAkpO)X}24g{Z`\}% 9` P\o_l0e吳4C{ @s_k"|u =[O뺥IDMAoS;,gaVu9=~=ƟIgutiC+J ~³PЛ,}+'y5/<L%Kݣ__ហU`q*{9&}5|G% tD V%BƼW cE1%p:+>KH]11vUDO4&gTJmUw&9jBYZ"MaMr#W+*e$QhEoa&UN; ` !ՂtټXˈHp;d3 zIƍXGg}Tߢ_+< ~.mDKE kjDd[KɖI/~< ik' zgSH%=0Ə)u~ʑ9; ꉝeִ1=\G!H[J`uf7aemc^M:o*]#]ᜩ]\h]Ch/Vq])`so'V&)U!VH+Zk)3Q ; v"(=/èzo#j:^Q(7JuU s4C/o67z\eݸfHm|_ x sANjTԸtvFTjV1,=8QA ;E%>Ѵm]hO {g>ץ'k4"kFlDZ*ɷi2獳=; ՑڽƼ]}tځ YTW?s*tJmgD&ṳ T4Le]#7N: 0Պ׋)1Jޮ;=/hg>}# 7Q!;h8~Hg%%$jAx߈?;d R*Z߃7e kL5P7ؿ;gM]O Z]?4E^Pj{Py~ e@0bt^ns'xiS}~/ްe2NPZ ϫ#~.1Ó-wТ-XdiHN"+er<5W%KX|_ X]fNmDƿ`O,oZV+,^ { j^#J|J /ިb(_8g%\^tzSa[ðz_sv5nVa 'ф+Lu>P\;_xJ$Ygwv9[^*s\Oj $;~>*#R;C9s'9/^rCN] 𙶠YBjsd,*A䎆e[ML;'du&%x gTq0"OXw|5ssq3&fO8xd# FUI܇%> d>uao_*CƗz(WDaцl5T0WOrXOKh.EƏ9ow-3G7 8=Ij^(q*./?E#/A)¤f(BNӇ eI -r3jM` ue2mA;g"}A}L8ͯ !hЪ<3E;豱x].}1c.p>~y'@o8+s0fD[?A|c7c5cV86:LX%ĦO?(.x"%T/Ydùj6 F0PBMHe*daˌX=M>aV2NQW®=&RHOoyjɧ1)2w-hxpt<$EB83k_IBg$rr)Omwi ߍHh$}Byy EYa c:^ɵ:5'6~d %NƲ#ҚU͈mD k>Y0Z 6Ë;IIZ˼йM'b'7A d2Rjc;rn8"4u %zwu`ųPn|uh:ӣ%BNҤ,eSÏPJ/MijԹ<UQdc_ ƥ(dZʪE}4f9ҞDșنw,|iQuf6vЛ Y] o۹+Ԡ Umg,vUI*d`gay`{J\wSjĎBN$J\ʴh؛53ˤv'O0axrg@% #='rA5;d!qc>/1%@YY9ywQ؟. D*_\O48+r&L$HI9T:9V]]RrNA6` "grF9cuc3) R#)Yz[9E%ߟ_)${_=!-$tsN=x|Ar2|NGo31{)2b{}aaWW^㷝hQPF1zT Бz=˳j(SyFh97+an{+QxOm,L4FRC 2nY nj;bZChn{%cu[;Iٔҿ(P:U⛟j^VjS.A$M d{,<d-9W<|2+Oe'VƼd^u#U>1V{"q}t.S@ÉF\*iBzfMp؏wn>pEN3-McC8q0k2d)imM. s6W~}'%FDq"*B˵ ?Ad@s@0\g&KYh3xGb 6ݢJ{sY$0l/ܼ|"SbՍ5: [i7\*kM#mJ^DMdOfX'4KwtLo)p>X75J 'BBR61?vDΐ#klqSPT>^zmr;BwŻ}>t/5hKH&N_ 8Yr0EG Y/x.:SeY(vPћ!4D0~ }i`ogoK+I: e[ycE}>eK´MeD4̂[כCϪ};"eL'{_vXg361z# ylh< [DCE cFf6 C6v;C8ú 5EtЈaջIdm-xa} I5LjpJү]r|+ d2ҿ x;"Pk߈At<*( ¨?~÷ -F %-BQ綄5NN\]uVaQ-MW袦gH.tȳ̔5*Kln P!þ}xv.mSȘ/ljFMT-$$7(Zb;_0*,pGf lg+z({SbUWͥ :^[6k8U>߾VF涗D BnAa\WKV>0ڬ{ ?H&It==ҾЈ_z&/ 'ՊF]@ ~"]"l8MbibWZxemݗuǐt~(CGؼ߀.ڗ'5_"7:$}6JܣJF)Vp۠h9Dm](*F:ot$ FPɥ:]JMɆ$GBlXM&jaQyso3ئt)AGiLphn8iZH8!JMßA {J7~A೚y{, yn[So mNaRW-]uƠJ (7Yp6l>P[ <BJFWt Ue N``_|56H@?2-ZQ ΤHA7/͠/QC|pc!ÈX\znZg + * ^};ܷ[Enof R[/(6|?Έ0*/A &J0m]PLC1l⻔N LRB 8^)(BGdMaII ٶVh_zػP FdK.5*#5xmq4X[7Qr10y1(q`iPKM!ae"s0}vKzvX@\OT axA{ف떶P ( L)^` (.zUWɍC7C[Gluїm|kC!=g ˸#~LdE6wߋ 0TJC٣N6=Ut4u]ތzjB}U2Ş5WjbXH5F ~(H~*}zC(QUX-* gC͘_aڧU U0|,ϳ7wb̀M:,Y@.ʽSALѷJ#3|K@hڔYG'B`u#hŔI$בGO-#]ߧuTWM+Eixʈ.|1.r-=0OM+ƠfT#VAGa2gyI,dr݌ܩiU)Co:- fPIM_7qûyX:!*@Tڝkk7|cݦRY%G<ߍ!nռڲkF䮆(T 9!8.q^2lP7-dJ zn"ОfNը)epCDto}!n-`N>I{ deθ{]Qh պ&dUs 6$tń t[ڑwV_K0CA  nxq.d NC+V3E2vPyqNFіܖnܔ2⛪yDkΈ:f; 3ZY>ЈvB Y:m .{j tWXֺ2|d ڦ:u̲N#Ь}¦%j([/U-Kq"rȽ4+d=`' Eٌg&@@#vgWmPԅl#SiJ~JFh!s;0b˺c2J6"$Ic%^΀w}ϙ~({ԂKE.LVIi:n9Ps6'gvډPՏgﲝ-?E)ypi[`h][4V**O" 9% ^æE E$ fzܹb>)c9uX.B2{wC_l$,'t3,$+Vtמh邆#7}U^č`,k MsRVS r9HG:D?lKD*SQ@ܾ1PW0-mnGnB}wu* cQnrw!(Qv t?k ;,xGq6 :on,Dr!% )kJa|$) {Jc9E_vɂcfWG,ojp,7.n#a7~M茈5YI h{q@tPצ&2Z1)+$Hg `fE0 1 +3yq3Q/b9\d#8hK,B}∑˘r@#̬QID~d螹njAyQ !v& :ZDO6ɼ {:Ej:w_ƌͫ=zD .}ٍ"8?6{\/N|vgLd:nG؅&7z\S~1zKh!]mq8Eso &Y$Qn!A=T/DAxHɊĀIgW~2E߅`wKiqSs;@rp4uR.qb`Ƈ8j%7lDnZ! (H0^i%şLqU'Њ-5"[qUi70b4Y %ˡsDD>#ʨuїa=܀h[TP_Eu.mĹOQRy.{̊avr)0뜾ƈ􃄆 ^Nj^5i@FlNI'l\ OKrU;ג $\MJF~,?<(瀃[h0`-*I\3 E})Lfa D&CUՂ3cL6oW_Zrzv#oC_ݳFx*XHQ?s3Fn?+9C5fǦc,XŒ( Ń*jUti5U 3zK742Vd((Fw8jna4]U)wg$$ .-DݓzVavyku?L"h_sе v"<;"LjQCL{ @ e^/|};M{UK"xx5D83IYЄnZm«J%QwR{Vf"_g,ڀ&ͣM ^:EǹZUJ7jmH 2IYn}^fR;+rx)x\qe95Gẋ8@ef8oG΂MmewDC%]kG!f/ `S[?tҵ5 fU.2k*VF :!2 -;B\gCU)ɍB\'|PD9h.{vTҫ(\Yk,YŹc5tf]v<94L73*^Ov~hf?PέQldJVzA>vji6/i,,$>? [Q\ V Iݦ;Ԙ}=+vפ>֐ƱFas Иw~+~-W/ /.n| 'i(:wNFx7H/^ *K=⨺lo`4bsu]YCca:Ƽ"1 R8n07f!<Я$9t&T]VӔVA\@" g4089kf;"xy:@i0h}+X;z֚'h[a㯗DavZͫ7-h"uxR7}h~)ZGV.ugOD{K-_K6~.&sH#x%@tbiEç*"n@6X>er/uĸ21SH=H3 7L`5GDS*r_qQ2v*!~Ns1N\v;`R%ړ'qcG۳J)||ZK0n_T¥ RP"d4v= z| ;t̀JFA+wⅉ2*v:XM}(f_F/wbVty˸C F%!%}Ω+LmzrpC6Ȝ?ϗ rR$g6WS?Xy@r>ZiEQDT_X{3\U-`cs󧕈s 3+`nJUi# fqBݣGeJ.f,Y3.xe"ʑpY4ԛ\YqerEIǕXjW%B/L̩Ù!bgZi,"zZѽٶ:V8J~*’cP|X6@Iz_F]epSk=/S*ZZR9X~%Ihڠ₽G=xޑFNs?x: s|f%kcXD K ^rQmPݠH꯷;3(ҩ mE\ h (g`?2e ͟yeXBzOj[-zgϏiL.c_Ĥݬ5W22R;D?$CVavmMH> ?&(⏦H\S\"HKe9ÈoQBQ6زTLlES>)B A1,W9s]O*-Cﭱ`ـ!TC8A8t- %ҝlrbۋY}1dб;>dT ?{_!"cB}sj8n\e-q<nǴpv&&̳qmAU2XDvRFEG(Zk @5A4Բᐲ\E'i=z\>tAU?S3&//b;-dc/@=Z8t{&V:u^DiY8H#-U ^CO÷c캔cC7QL,898x*?I,H-oQ q9IpB6 hNOD I^g"oűVT9ݣ(=qvheGHu1h jbwh V&tbzѯ٦sEt=P|R nW⛖&Z}U_̙` #L6\[hNE$?Z>ΠYVe\g9mqtf /\tZMP 2Gtͩ~l]`RQKS3kfQxl v~O7M#|`Yo݂E]$ 0N ۑ%ӃR.U]G>8ЅR72vsO*/1:Aҷ+j3{pm Pjb+: n6\ S >+s*,~HZlGIU9{ [ʠ_ʒf7diaߓ* Gj;,[vG {$$MZ-r#J?L}enOk)8 m/&Jj//tc궉`bK<bu㕰D⃒!O{ǥ_T 6 'SH.*t팭>JC(Ƞ4-x \6kylK :}?p%js'1? |dwTDzn?} ҕ4&Ey4tLMUJonaӊ CfxY}V 8`M rK#?CF =֐xvUjQiSn=hv>8C>!k"8Mzd%'Oi5jQ} 4,vWtE>-,Q<&&KZ`t<0],$dS5`g\1~ κ[nc|SO/"I2c1[Ht0%*6ק!Cs OgehdB;uf5B4œ`y_ vĐa2FL: dw1Rb. J/nuX" +[h>R盠ތPN|,JCe8icsg #*8{B.-b`!P2X .?@HnP% @t$Ls?m?uЫ-W RGC?[_f]_`T8w( MA ߜ -6jILk PRMMҖϲ{xg40>UPPwowEOlwzX,ƤFe˿Wd V}ԥ 9ӗz8PT bj ORTa4:prY`8ˆC~7'J*+2qf+xP#}`[\k\x}8V$W0ߔ1z,E]aLC{ "8cgGF#_{L*qR|Ȯ, C!'X3)+wGϞov1;JT=a%|P1C;W Gn:m֎d"N,mQnKQhyY;įsR"`K9ßWjC9 b@|-lKך,؈PZ'fʔ1"^xƿz/8x9 Trp."SARٵ&`ZXmOȶ{S{γ]ŠJ۶Cp"86M4%jN< "|LZ₽|ݓi|>3un]0SA篆?@i"zr~j4P8Y6>tzluC-dCU1>O=FkQ}knQ-A)^Y֡ J~Js ܝM# KRš5%h;i|LZٟ* Gy,#5s6%^'< i{"SAC]Z_AT<昍ҏK]G#D=lh gčg! Dm[DZޙa% o},B|D(RzCJ3z'sEyFu6)JTh*3)mSb.xH` ׄoBHxUV& [5BNrQyj@]Zz8:Wq$c"@=-8z@z.7"&^d/U#jgk#+S~5$n٦E 54Dڴ_'Ws3b׹Ji.~@sp%1. . Kd>#4  X?<{O(|L7+rH Z!~RW/\"IeI0R$w4svEslw];$AzޭZTJ Gӓ%Stm‹bkT{(J$ͬu $C0םZ>dhvZgOK3ͣ劧zjzׯ8ʸG.$.D5#]OCa!*cw<^֯MW[ LCdA1H_`{=]2Й_rl_rh3Yv1>P.ISE<f5{a\RS p)sx%e՝iiaqK KZ :,{k1 3ە0 '4gUb|H].UP[nr RDgZq,ey$N\ݱ` !5 ۔NVbI`|߁/B]|ps  V1im"rsߜ&C"6EsV \huVeqe#|XXOG+*s`i"%vϼ5yB͐\ݥ7ɋ( P6yQt" .f i)-|\:!tJ񛿺[񾐞{Nr.gY>4Yf%=@#Qf(/{GBӊ,H>,YIV܋CaLx4&oF}P̙0~a8۴5SIUQŞĐf:D I":I9pSԚ':n %LW<PhU-^v=rD"1~GY~l(xMBd%B]He,7&3ޓƠGYb[#·οolhZzVS7ޙa,Pc>̬_,ZO֎"7񆽫yUڑj< 6=bXfQI`}PWsg-2(U0Gƞc>1bGfH2r4h\I#&?L)o)ne' ܢrTI׹+Q^ﲚ6B|I^1DOdJn]$Fu}k韪m Cu`vͻ/V}{U.kEeS 2C(^ D5#v&^w3;L@Vt)/KK4<@z I-ht&R/#y#?г&r'x4na_;a+\"=*4ǂ0ZMZmV%y񳱍qjѻOd14;ì~ZV{$D&b9K4j F/tig9M-w3ꋓ ;I0 jBg |bzʎkIo%ٰY{hӄBT06ݎ% &Os-+fĚ( K,22>lj%"s}PttjtE6 3(J9|xF Aq8&!p?bQ;iy-֤`*CjCy}$#{c$fܨb s%> 1~a4ւmۑ}}_s)ﹹ/yU"8G>cԀav *uNJw|Xī~eB,8=U.=Ô_ggX=vq?~ pM̔){Wi~l!+ӉM4Rpj>9Ҽ|Zzym+t&vY݄!{w1t|L-SuR(+ʬ>G;{OI8p2\H>'/{LCk') K,$&ֹ }/.ur(w#Zo_:+TF U)*2I`!v_! ZVVBf̪vlrf ( %>DZ<G 6n2j ʯns}_I 4|݊qErEZϬI/0*dycІE.(!zjފ,v_[oՠaTM8ɣl yok<#X` 8DBdaَLq~Bjg]wG(C?0ء]ސ ,Lcg9p3`q_ 2 [i=fDMk|{aAp AIrqZ jDULc~s[s_=AW7L<ʶ˔A$jM$/^y &*+J4kc 1W"D5sM0TLv<`mͩvw̹B(7eD+B2~b/xXዶ9W#@Yoo ;pO]<yU#'Y5-CKz£-AZKZmr@UC2kd͈[i^H(lw Om#:ȏ?aۯtEedpnCɪJ EM۞spE-I%\IoC߫9P<[aAAA=Rt-o"Έx<Г(K3uxe&‚\fT=w!΍vm\Wp~._?DK8#.q0pĤ0o&,@g{@HVKi\T:QQ^rWo ߇^Ȣ{^ ?BkZَw"6Ʈ7~\~͗<$ĹwA :#g*r+-FS}ԶОVѢ8>Ks( LR:hWw+!M3;.j7|ns8 = J8 sAt=kZR41()ޗ"j}Y٢:Ok^Οg0=<\CO -iwVw(+'#^U\y 9.[6;,eaQ)E RݟZLv Dtl&a.\|گ%F+i8<|\E<ZH7._qס°y[gEn[`FqT3$;q|/v<6- DHmpϱX,- DCZbI6y c'ٕ_0 A8o%cYhLb}(Ĝ ٭m1g |]/ϋM1 y"MQg (]9|ҝZ-JiΑF,'^䞀HW/Q(]lV`7`G8C{N=* 2J nf7fswӤ(Vt v$+a Ul/{H3a0WO3w %2G >Ȇp2$!MȚzKuW!SfcK"L_Vls>8\M[9M{2ݘK /9:5vr<>M Tz,v3r&ݘ \ԷϛY.|&9y艋LYIŜL׭ vtրK¸b5vgknt"~ rxY|LK{.ZڽnG?o*ڿSIdRu",` 'HydETYcwC$ȁC)V t?4^BLIʒhE fC`dlSͷE]GsGKUB+ʻ9XrI};ĠbG7ru:)VM1jN:нUh'bFi2hԳ$wLvתAr]puI:mk8 hU;('@Kv`S/?I2d{̖!G^N;PNWOCAOMШ}ܫ =w,j|u5<8|&F䶍 L6 E3)-VDkUh !i ~HlRPrMmt^`&;'eUr*h!Մ.&n̉R"F6+Uk'o.xJ& #/dhȻmC;n ?I=Rү/2Fu=\"*Riw389+atkNk6yC= 伳4~gCݗ'CT |r<ʃ}I[NoJp6<0΄sū}Ẓ~Wo|udjJ}+P$ %!bh! ,XQ}G 84tqƬ)m_@cv@4$e΁ݙm?w&h>P(& 5 >C Yv5O@xd̶ivh"vV UPJk8'sH;CmITNmvXdG 9M2UM!a ~MiT/Ɉc3CA2yƐ!\%6!cu -\,A_g@ܼ92͕k,wm%<_g,Thջ.a pA v2\l/&O %c|H"bz;q1 tPJ%/NrTY2Z11>[1cg֓!YBpBzv+Ṽ:g]ZW/'0ye&$Г`T$e\Y"eC7h:zX1!:S@H c}TMG؇pQr]Oޣ$%UiČ}Q[g̈́K`J)RcŬ?9| eH <Փ2ÀŊF 5#0 Ok] H0,ͳS>`nT*ϕoK]f cPU;_;D/0ݻľ"8>d=5~x719aZlf݃&Q;b>}YEumZ`?rcyri8o>1" p5VY£@{E1¹끬zߥ*Hkׄ(twY27 asIYMɘO~ N:1gjoYG qw:0 a.{( 0ۇtI=~:ɓ> $KUL,@T\XmHdwFL i:K9:||94['nl9tܩĢk{DԪ+# %y> Kp\]rPR+Gd:T%Rnz*M-adE)o.f DEI8jdPrg3y4E)$R\45OOBIL>6+1!mk${o9 E UJZvp ݆{ca \.` 5]On's(㸷Yʁ%i2tEɈSsPE5~ذc+YLk+ֶ#> W6]cEȹ/_:~!ܑ :ar\k6&] @G4h} mx{Y7>B#0H^.">49Vp}E^;Sis7$\@νù0;Xap7+ /R!7з TDK]:W'jĺ5 wHy7GǽcN]CM)9B =`AnxYX.\951uOZKq$0쥫u|zH5^FԨ)Ji4|Ǒ2,fBd@ǙJ xe#_޹88^8yyXcnnmUF>b]DArQ !/6>A~?g fvgI\c */$M>nO?)N B&qNJ;!SCﵭMRFSו#vgb}V8 X1xCfJ6`5yf"w|z1-:4gH_eSu(G;naSr ŃvWNY{ N IZkT1 ?삡fĈaLL#a[\ΈPcvք%:. g]{ iWϪ˼cjI#(=MA,QwɑSGfh4^PijK{t5kݕϚLWy}R'|c@N S=(QU FѪRcPCx(pPCPD&V}Jk@+Roc/lm7I ýH]6 qs5|oJE~y9ϿS~ /s_t|L'`_p?WlPmkA#^$d m L'3فpKT ر/࢕#W%8-N/'~Ғ9q.t>״zAt8ls4Y JiňG|Bő'}j(Ο7`8;)\]bwpvߋvp$a],hVg0qm歩AIUMn3& N45*iOFUǏX48@S&[!a%(­>a ͹Ulu@ l1 t2an\ Sg6#d+;Ms0|Z//VoĐlE$7ds~N~w( Hm$$.]~خ"VN/Ǐ9?5mrV!{e}3JBv1}vT[&E7Q (>n?ldϗ6UFѰwBXL޸ gT{ČQ hT`^ HcSD [>\N OV3K#ȕe%^C4zص>;o1($Z++΅b 0SH5ԘGx\1_>U-<ἆ" /EJkqѼRsi5| >NBZ!sf8u$P/JቨFh]O@T&>|*~t%nQP57K_6k,z`O(R'#odm "}fg "Y@ͫZBQ0l, e}ܰ;c̦p&nZ*eEZ6;Y#k;&i9ysFA _bH%(V{wDbY;،%!mNd:K{zj+V&=7PAfFQX0W!CJ{A0(aG AM,({ٱII3_W<"*\ޚ:HHptCdY$\46 q)Kh#~ЂN_ssY==57 V9u~6荝Y~2Dgq[Ʀ( baN( gs Czto].h>/}A1h>DŽQ!+@PX&b~!5:"2P %ZGZd#7Y}\^$a9%P0^>C6`G'{, [Ǘy《:{zܙ ƸiyE!Edx&_, 6Z1 >TͷԭTZ,郼D]e ?<&+qk gB}К.Yegg>'{Tj:BfaM"HK 3=D7t`k Uǂ*xA<ۆ `ђ8bb IoA(9 ܻpfޣLи, \|XI(~P4\np!5hF{lnX"[Kmc hk 7%6K-\ł8)7sW :ba{ؖX"21/"&S-?bmI2z\({O6@6B^UH?s$yRYh-LUrP1kyk N~>4]G[( ° U׬.⿢ٜMG54KEfӲRaAteFjHC%U8N10%=|A/]b( %p l'!P0:01xH,ѬH1bL% s!W'Gb\s (~3̰'JKsmV[սlP*Y:zesqհ-Pl:IPIEm7 sҥ w^Z.dHm]P31KmTH| [o"U1 i4輓EK?|"C~jKphJ[r?ulnsy ԬP3Isv9aC7VSG g|\BB=^17VR9> K@D :Yꦊ+ULWH23${ E,Es=Co^!Ji^j20J.2\ڣ/+k34~Nh?&`^r+ ۈ-Ķy*o(ŵNnZocԞ7m*,c2jroI1{痡v+F>'짭\cZAst8Ⱦ@/tC3~mUD D @+*}|!dC@Ѻ}0+Q^2Sگ |Fx'l &Jaq"1@ZlNBTi4Wb' XW';mqQD`" NfFŠp[|OcvFEE<e >7{njwqKxXGeaŹ̄<>uPGD>;T(60{$YwG̕kC\Lx$ӛ }B޳3 h*܂41dJk lh:9{UK9JrGf?TYxqk(RKMъY8 cM>`m"7%goE2|1Gl q:5_r|S[{3/OMͼY[?LN?Hl0 B<\w}IsGJ25|Md >*{<0 sd6@~z.=KA .x# :|M62A'#8 >w O[,6A״{znIp n A}Q%Pr;Т9=(MHVH2 p75\⮠vX3gT Iy* G ̀A!D!V^H0Xɓ`_&4\P|vRQku'VdPաp\_ơ AP?+=~ox36E='3'qݔ糝kƆԪ3!Fqv~?)XϜ+J[pѤq'-Ea _>8FUs-y:=iоW0Ϣ`_wS,Cp}wr ?4Ӗwҟ&d+ZR6ʽ'Q: )(2(h mTXdޤ"t5\*s#σ,aHhuqUӏkObe7SL+$d=_'[dʪJ[]\JWŕg>m%r ?GSdJʞMVY9S/!GX"9“#E c篐7Ʌ}u G}.%JTMԨ(5acKECæHOxlwb8}.O*f=azHRGţ-w&'%/.g5-q*wUkh JE?ve|t2_N,s >91>s^BY\B&NpY[hH?tY3X>$Ǟ;j4/!?WY%<鼜 :C5 =B e"cg^xy\GZmӧ\G._yw7Ko@aIiNT#I.ȕҜpf"ꇲ!{^n`~g~UNX:ƍΓmƈ"#<:MLORI䂚嚎;:C՟k>@6^Ajj50Dp&N6xRQRWS`uVrKdeѐ0 s${7tK?IdnJHU&v(>TḦn1U`;޹8b/AmB]VaѝuIq`oA…γrT:exyƮ,uœު.Yhwq] f,bPd 2Lϲ(y#jRFKplb\*NS Y2*{<1P!FuN*뤫mꖬZRve R"_>R֣>JGqPn{S*oG1T\M[?"d̾Ԉ,/!Y៣![}%TA7J=(I1sU v{\8N.m.&uTd.kaTG/x '%%˿ 3:RϤ$ vRWo b˘2 ξw %PCvq$wVrG4Kj/X՟ eiҩJE㝫²2ьiY#)6 8 gղ : 5ZP]h6\a@ DX߉m3f֢T&;6*b`|0OQ3<6Xr"9}C0X'md871l sv]oNʞl# wzLh!NѸ*{z <t11at{#fisC P0ZA^6 TR|HD:#B%rzFk5_;bZX_=ksK=:48D?n ؚHg ׵T{Ӣ(}ظW3VIK5Q^Ӕ U{8~xgUӞ$Wy5J+%~'t Z-jC"X|2Qfp].F|=d)IjHɲ}om<]>3D\&PsL]{ h65mlK{*+:%JS\ ݕŃj\sbȻՔj2m;-}1q9En{E[,^k> wIRwU얛nB&7%0m1'W֪.-]8ɪz zTY*oܝn\@/ebP,%RO PkYw 2.g*`"n5 J"5J8 :аP#QvS'AS> }hdAȂpaP.ɞ7Fa 09I臘w̪CV?DK%uj۞A=b۔F3T ~jgR]Ql;hOTU__)k_?09񊉬V'P`g DHZ) A}p+ {~/RxZU xDiŞb>U2[J3+31~{ĉMBLQ3_gB£ !'4Jl)[1oE oSW!'#ȇ4uk 43xVl%{W@$,94X`9"ᒝL瞈 W"Pt6OHx&@bp\ћbXnOJؗ1Mw <L֜vSbN|%wy{#J IvP!eLyibp;UΠ{?j*oK=u&wU&QU4ų*~,4tj1Jiw;,]9[Sq"5@HblVO֑P4^ܲm)[S͗lMFyO|pO OR2—sNݎ-rYu ȥ_*y[ 9mKe\ݝkkElbi  ꛁtH6zVQ5!8CC+#V#Xm KGV[73+4c8v mr@IV6;A$V<2+ "ށ v{\X3kh)KisYfSo#}~xJ7|3៭Ծ4(_P &䯮7FCgaބ{=D&FA:jyϒ5iJD|84 !%nW_(U*Ğz@nk5_/- HğX~ N9p9*+a81;` \.գ<|U2w5]Nj{ ߏ:?pV2'տj/ 'rOQp;7\ Hm\Y br레iV*+,qJ\C_ h6@ט:2zճ+WEN b)t3玅U1zߛXҲ UiU҄Z0M= f BcbL $%a8Sj1,z\.He9-.:Aw2OsV_٘u0F ,q$x\7]y5ik7f \0h%̌Or< ay61>aYva JCyE[#дs./N\H+^jwfĜ'4'l.<#\ed _4}X>&F?" x8Hm@pPe%6>o}fL% s:Cb/'|3VWp$O+ G_VU zd f B")[<lЕܮx脉M@׹d5¼)Fp.i>eqz6~0_a/^yiLV_b6?siZH¥)ѓ$d7'=:.VnR>c;T%4Pi:-dChO0B} ;uDE=s&eԝ=)ZKAb0=xEHb|ݨBEg ]Rm) Av2JZexGw ׉ k(.;Ze*"'F^Q{+)}ro< beU@S7&ln-M+>hXW\bgO) 78懻)âF{@Eύ7,GFߞ0^ y⣮^USD"xb)sAV?xt>ݵ^v4g8A qގ9<Ną5nVa{O&?G !|yw:󜵡lGC o5 [r.,A~ m]`d*MJO97GQ\Gi)ag^6.w/\v7G J]F8E~и (˗g~zԵ9`ieU+FvR`(X:?Z;I9wѣzMDtԘ#wRJ,<\ p=%/K9Eõ,9}1liR'e[h9GPBz[i5?p2F n{/4g% LFd4UgHVPd !ٯMcgR\LjiI>!Vξy'a=yG4}>,)i4Z}J EB+9;T^9 ]>6IԻ;(@*t8eM*[?'Eppv2}!NuԵѝ:N4ct][34ҵ_:c%Wz <_I5Ti4jU~^s )"qH_~6Txe*J$񞙲+Ν ̥*n]5%lm'NXXk'B$#1{R?tW.:PCr2І.7Nc\R^\!5,a']H<cL-` *$ v9! YVyu@Po>ۋ|=8 !֪hj6;v-HP!z( pu.E,eەF?M` g4&2/QH(!jU=^9v-^,x3:qvEYI.nGtz.z7 DtRKGilVD!'lY!#?M^O?C%]v 03jpT:w bI>NM7ݢrݱ|L GR%o;E. G qs=u[D֚ }mͺy#KujBfNqU?>][ZBJ РS;Ovի*#Q"^ppqC}3z[o2 C BAmE[xZ; +IժVr0Rnmӌ\]i dgje#m>~!h)-@_kV/YjG"}ƌiώqc;iDv[knD6x8S.TT.kAvwj{?$,ⱈD }s6\'ZTe$,\(G DG5賥FzVI`nB [!z$2>ff,j:zپaRslTKnli!^_mi9<W!JD"*O#-PQXaY|犸G7bΔ\`;# s(<)u,^PypzB+=-L̡@M-]A Y<yU"[@j2΂/ot%hs!{r ;rbPvaзtu?`.ԧ,5,9~HM#i&l$w)ZwnNwrd1m,#1jTepu,:,oA@lgbR'""@$՗qc^^B?<_Mn_/6mj1;r csw9~q}V2'61ƹ܈}&4L^6hq&Z~wbr݉PBnƨ$QO>h!)9vQcZ[q3e.czor6̀7V4D0H4+,ZD[2̵Fu"Ss&8FPѿ+,$3mUk*Vc,}e#[$Wd, GoEO=1@MvT8p1'?1*{>4ZFb'w'vSNQ Xs =EN#WxntV9P8M|W';G bUub}~ЖYNu3?_ny/JL;Z/I1dz%m$GaQp<+~s6OSPXJ|A;ZEg @{LW”mf:UB4K3ÝzQŔ'gtOd>cmCa{d'GHʶ(ۤp"$)(YB a#- ڦЗeOJHS$ғ;h@p׭)o͗d T'pq/=pU] 2@c=\1[Mcw N 'F`t-RX7{#B}lU )DǻDy]$ cجV31HT 0uhw >i]0 {-8p4$du4u=P+3t% J #;ܹy+w wy.%N瑞 X,~/ՠrJ>*ms X ?d ;8>J }в;mK)B?˃Kތdz j܎:J''L>{#xV&t<;{zDPp6dLCLW|ۇԮUeՇΖP6]SwB~n + cJ8Q]HpzVY WIa_؇alTB"p*ܱȮ'uUqOc%hpH&uҊ{sL {NVc4S_=Q;8`By\Vr`]Gѓ7fv9Gپ2 Y )NCTx9mQ禺Gl.P̺э53^ZG5kSGF^'` =1u; t~'h&w)tE#tR3&k=t⇑Ԝɿk,e72I %ޑ[j/p 63=͆[5Q6U7VRVΧB7&A{ nkRtFӒ,KQS3$>-%җ-d<8!€2]FN *,ҭHUvGRf Qi= kEduĄ΁KYGW4mfJ\a\c1\Juc*ITocKn r Y.Xb)N_>Fi֖߱VQj5tdv_i>j\lݧ., B{Gd0@ʋ8 H^4 ΅h&tGIXޅ߯;C͋SUfY UL8X$kj7zTC]ūMߧY()HrQ#~P. vH@ LMYjhX??޶iI@ENibJoTt讧Ҟ ?e]V e VĒ?Ի:M]VTȷc `nt~uE =RX8[3г&=$Z-1{Q%,WMR, nVWC`"Gq>8GബjZ졗X"%j=z h $H.\m m)*0԰ xP1Jr^I==X4p]f/-K٦K =-F nvfrt@yp1N#}66bwӟ'TcB O8_meBh7fcN%SB-MY'ZVW 6xUvQs bFa)*6r jV"S<"ZODChsyA5{̤!]zd}5B^6pu&O>?r44;˱47vڶl8MqA |Uҏ|U2Ղҷ gg׋V8Q+Y@Sd ^ϷQB2jP  #]- WB'/h'~?(f;t9|vmglي21-uq\$5i)4.\/vAov>nW;=G5BSTvӠ|+3 ۪&x瑩^0BK ,j 2?ZS\܎6|AP^x))z D2'oB}1PKg(k%k,gJ2.RzI{5X^n¹Q|kXyDq Ij3)"SU:smE prQHdS}a*;լ.?&DJ'*!fKXeH'[YSʍν3QrK sO3{%Ǵ.Do[m.աt;"TP{TpwHUo{SB B횢ZJ) ¤x==rF³n1TAphJ8(#ɐ'31҇iA(x% TEj47*Oњ%[,6yr^`Ivha򢌃VJ+V\i @S;;W;c_@{ &chJշg| QlZ`%d|4%xۓ4Y+R]|\9v9R('[RICvwӧAÂE7}Pf)^)FU=r:)E.AcN^MDʥ krՎpڥhJQfz)'j6#gcGƴ{2t96ںTjD~sw{h9g0K4IwiH6e-B|ǜ[wJ䁮XfArN8o]pi +Y( y`Pυ#ըz]BVHX*υ0^븕߻N(d< ]WÜpW c =m#MCϓ:潾WaTp?TM|6ؔƕz^(71+ 6\igA>/}:M Pm-̎B:K`$x]=?K=znqc4X”&#Pt$>:mVS[Qj(A¾yk"(Z&|]\Ӹze NKn%>?=j_R\fQFki &WB hNZa24{^\uIK[kݟHs/<.ûzTT۫s+lU<9e4i"F~-r3J $&4T1cO[,-_-d3eh>Ō]g , Sfx{ % NQfRa/'=[WFMZ0|zطgɴe%:́Yg g΁27uJ6|ɪ_W\01I`CtMvUPjOo`T]{\`7}22&y֦EclݡhnCYAެˆS&>ov a 2՛LX6;*6 ۡ@ouvKlܐ4j 6JK.XՕ_O2kG 7WԘF}+v8ob+'-R#ʐݼ5Kڮ<94&CsE qQB ܓ ؘD_,R Q;ע7H\,gZs- \<?m*|1:xu]wnaV {Qj nlYۈ /Y)iVj(m+IfJ T`g0hse8o;Pڗd&ɞIN<3QO'N 2yvDK^p=~H|&pqe-lTn{'+GQ.w~"]-` `.Ȫ"}?jxH>i`_w,-_r|Y)b<jJB*kgVۅe1XП-nu$Cnp8FuBIR.Ҭv0K>T=O꾘Όb¶N}2/uo903n&-D315:t f7z!dqߦME Ip%g(d51`dp8%j~EE*CWCMg樻{p_Jk4b+{ښ3pGmō+o;M ^kU}4v_/z.WW`*R8߅\X\]3cHM T{10/ʬ@S>{{ۖ#be6/s!mhlwnBFMm>(#D:͕O UD̖_ظѐ exB`M/x-2S3wYK1փNIEdƓ7ֿZMƦr}׿L8>͚D tV0,>h-Yy#`{6 ڟˑ;MW կ1veJb۲ *[#<7 ) gܱ~RwWrb}iDϴSNcܽ;MxIpbC;.H4C `7x{ZCg`"z|L z-2Dmђ)0WI`w-+5`n'Ab1>PC`Gҝa/b\c,䍏 *0Se_#5SVk l̰ZrݿẌLTV[vU}Oyaeei٤{>𫧊ZMԨf1;IgQN-:n  @$i#((u3SNrChL*U/w.^dr,He IieѸ2hWRo Uc3d6]}s_mm̵o" w7aWO67b'邏 [ 쳉D6_h/_B77m mb G41ŔDCѓ#9w\ݦؙWR?=w4:D$9ج_t੩')j}ctl̦xAnju{s̩Dib=c*-Q~7oz~"34SF-=oJ[IRx]N=FhCܮ"" ?,R)Tg̼թ\2d"S wWyKQόM9L}AM0+ _]-C_ѫbKt9u1n̙[|X ritODFyiqmWpj'΍%ѰZDף8 c~頠y [jAJ~ba}yiǾ EӪ^ 1wQQ'ԥű dLKWC/q1ǸOAK 91eAAg*{˵UmO=;ʟZMYzeA=9JiBڶDV.' B#p#S&gJgsoF*#z^Tr1=V+וd? O/@&`ٸv&çlZRaS@p>;@ee̲R/hTiUeStjVVV틏9՟A])W*{,7ʞ\$~!_㒚IcUH`eL>Av|R31nXFhDHoYr͓|T6D 1GƎGHX nq~*we\^bji(%.`ǤM`40a" lH2XgS~!GS;DtmbtR ;5Ș|u|@!tnª:0+M|\} Sj&7vOxّ" q3jz)kZ-)㫳p+C t`Λ) ;myRާӧ-gO{+P{XikAQ9@K{xY\yvJuѸȄrO*3ٳ7z/ZKQ1yr:q>+č/4fOPmwj bVٍАu.e&\0'Ch''ŤWn -u ; jAPoxw2ўE.Z8X<.bM6)<!w4bHN<&4oxnVn>G 'GE_`nk|;+Q3FjR izP_ʝaMndNH%+p`N^Y3944Vk6r/ EMN\%=5϶o[qIGh?\%ju;iu*ζpt_PJ?9@%@jk#ԀLjiیƷQ.##? gZfdoMF*={jj@v0FLɀp[uIY9ōag9j6($OuNlEG I$G2$Uc-9[lHo'5aSbGL^"5=8`m\RFvןVj9wM%Q z(.YVR#d"$gRvD24_hrF8UPԕlz ߽|V /X 5T;\3WX^^Ȧm4-FZ,;|eO7[ l9ڟ9 $Bௗ4 cwԬ,;d^^~Y8)1si I/ګ(nxzBrHG[5Y)[WX_kB6s&1W$S cNʂp @%r#gq݇F7)s&=B-6l2P~S) O9s0n%C( yu>Fi6NqGY{/-F71F2r fR3: $֮ L޳8:YR/D+N3|k|_z7AÛ/sC˝EWăqd*[',"󄓵e}M4p,;VC KO觤*Oo d4C!TڨOQe+ڲ̉68sD`}6uȑ˂9%*r_J1j浸b~|4 -WKBÑ'cdQrMsK1'GgoJ?~G^X>{~Sjy@MobTlt-e6.~sNhc"qa͜8ԯ!cMj.*#ԝsio7sH^߈{H<i|.P 7&eY4dXlr:~؅/79 mzBe‰762:)̽sC*4vɌM${4)|Nۉ̯m;f:S4i9)hR@Mo/Vޖؽ꡸z%"QY9!$M{"zhIDNi(7C8O;3#4ᇵ`MԾH͂Akd ??C5܎hrH1˴Q-"J$6g9e:u~N&hQ-|1 6 {'UAMɲt!.7VPԼW,K.;&bi3zKa7r1KͤѤ(t}x@h #čYE1n-p#L@gѷ&זfX#8q.fi)6ǘ}m91a_ dB~48++ve;U?ImmVr9xdInPy3FyITUP_ H,"ia$q.; GB,#VɥXp_㤎y;XS_qj9/ Z3^Zc}TҚq']u 1Q{O4=B?+f vi y:9p)T9aV\dj`H/ghwLsf/}l*c:[bzG'k'[~- %F:_' n$)Fx7:Bu՘o-M JF7F:B>QuĔX1x%,ãa @ at,+Ƨ,iT;x@4tsqV&aQ_:&(Jj4a꭪n1m +|G?c%,Jtodžr^bˬŕٺ]o5F94dY7hn=Zԣ(@=C<`ؠ3nVLap 2q)xR:@԰Eb) _x])vq%J>sѱh9_g"u TM3%\1ՁL\+bzGQp,KSCZUXl魏&@-nhOEiLҮxfOgB Eu?)j<=HGosApHٛ1-+NM6}δXS4H ^v鐓IgrX{ hƱ̹7a}VY-0ACŽ/nrV5N:JizVWEa܇h>K7emwU#Q;[n'm#)KӥL^:V].p:!Go31&|}(&dmj2ƒsڐ܈GMlxa]aF`Iq1em9ėH>~+|TiN @3*m#Z:hZ~"@2سqEY'# [On|$"* \'(|P2؉TX !XY1Il(Z`Ѐskr~fʂfK{tr@U'Z񊡿ֽ;nHXV*9 H))sGVVbxJWQ'D,W^?lY%Ia93Ʌ 2?WvaߓV7yaLlӏ}Om <\hHcVSMq>C=VmSh#Ju'|7uo:6N4%wc7WFd Q'YEGR}!WkmRL4 6zl TЫa`#%bHzsO Y.39@- ,X-J^bvE]:XnY' -(pY>_#P8(RuL9CPW{Cڶ41nT "=҈yX1v)ļ(4 5Kþuz+ˆ"cnR9:\sӇlÏ$S,A' š:#d= M<;{E U=~QkdgaeZ$-~ ִ6? Z*^z.X}dʈgM`𣃑cuuj@`~kIMq roQ|~Nk#b!uңvԢѠuF|F'}T4z'D9A=U2! \"5t)uinjLJݿƾ{]Ly5#%g|gZ 7<$ CIu H8\bFKM;Vc?ʇ]7g<6?rюF/[.=uˑFPc(j0;@}@Dڑݠ<-C,5IO~q/n[Ya LCNqI{&4ș^U"Vi|DO#~ԣ.-h%3As?^{Mp{@Z@`yhN[xT}7O %o5n(;[;Ho"zM2\RI\Gq8v}k(ӠI{в>!ۧZAua.O@Ƶ]s+X,`وuԬugj*VΓA7ޡ^ɡӀ(R>RC~ b * &$S81PԳ;xsZ9HEA^)Q'vASՕ%@BFJotpvdMj1p#cVS‡qpJh $ږF@-4&d}zr&9+?A2RVO4z[Gk>U?ݥ< <OnR3+sM`@LXL,Ŝ6x vBFLM\hiQmd>޴u'?FHf)l OVd=цgH3oHJo_qXET~pmQ 1f',0a6A֘mH>׌slT(DN8QУK(DL:lfʱEH}LcE!kϑ\ȌK/R¹FjFT[j.^?*!#idO-&8=[gQCk{n`I&wf4`82 |q_U(\Zl^(a[*~>KGc'*Mib9 kѹHOH8luZ=4YƄ$a!M>-@~4]7Cx_-8aөó`ף?áC!Z2U?y-BygH4 =xC\GƠӥ^*SDMmJ9 };kT.b؈E}Qicf^7Mh v#FhN YV4ObUQb Cš5#aH:k_ɹsIakã&`ryw=EOLa+XD|+s9~%㈚/ ..a=(s?\FXk77ڥ/o!RI7fuwFSbYN n,% ~uzW=żiúyHͽ=y;blYbdfA4~t_z$kļ\ðD_<7ghY.Fαl6t{-C3e${%WII &cD׻jO3)B>˖vkD<1j0mL0_©nkPٴlQZlkZr_!}28=x.{~oi9s("x+!^ IMʽDBݳ2qgvh' y-rDU+ޮ"ToʧZq _^ЪTT6s5Lr  ¦ WC9WЙTxh}}Zԥͻq?` 4g,Vf<%$Qe?0TO40/W^c1ZMe[51A+8DΣ5ɤtէXҡi%+y#=}!)ϱ LynoK*)ĕ)'X>SZ z-"Cu2葡@r04pueFPh#HZ AkzGW^K=!;Fqe/zArßwyؕ -:@LP>8L >G4]t`Tk$;@hQԁU-4tAfN4ٯ ݞZ2hC;ER餀B@W͑i: [Et)tgsrYJ/xƲa]mn e p^/1j!26BlWKNWMۺU\fLHM,UËqv+ 񪋀Sz&n7<QbD>)'mK3j'luGhu;g)yڀi)ǬfT^/T U܈$W x5}ďM~)ʷYGNw^L\gKx5\G<؉+\(~#))VjtlEcڥ$۷d*F[|%@E𖘨su>N@e,KM7`M!h֚`MDVE TsgT1jU})I5lkhb[Y߉\L ˡh%0zO6ki+%{qai5έ,۱t 3Y"Qɬ̳M6%(rc1c$\WvǮlx#,.,ι' z7"e^dF6#uϩDwrǗVU`ӏm)E]o2ELe)ݽ+>쎲ԓON_!'A3Ef._]O0bU*}-%<{ɻ͢x]Ny] MJ%rmrB'њy}#d&Jk}@UsQ+iyRR-8J*iM-`F`͸kvabd6--A̩NvP!5-#}_Ky x5{3 RJ0iUJKkFC PMDY^lU5@:d\;:sРu6#znDQRI*n6_v(`/\v\2Bk;Y,S7ApbJJLB 8p :&8[EI*C:@Uh-ÒѶҞ<$ebLz?zgAqS)FrLGPTS4f.lۡɰ 'Tٹ8(.?I:ŻV6>dtw &:ISaL&2`Ӑ)iX5+u_G\$Q:"5L$#6tV982) UsMV?܌>@\lyjrn-[^ٙRЮy,/䞁zeڽ%\Sr8C>S^HhӣqsuK Q9zgs,*qfO=k15+|/0`.[z?.TfSX!U722F#=?Yq1ڵIWe7O!E26M6Ӆ)UVO fY-6_*+\9,e-ԝV[Q3> 2T5Zt9p72Ͽ~("4]K3‰pwXw I=^{c8b2iwB訋%pEr+Z(QD*= =b7L*&4[+!ˬ2.I?T*DΊT ZkBV7X%aKEbh`Dq^㚪c48oR[j޽Ro/ylQG-6aX~T.Sq!eg?@ /&4ҡ$0뭟{iuKIt3,I yQE"Bۄ#!Vrd2Y)j"yoVa?S@_%^MC ܷ[T;xXktt1@&:Z ߄K+#)}a0(tC: y5/R_mrgWOٻ;.AAS ̅ӴKs,/gI~䴟^{H>Yv\oMx`ԝ;U/J$H;?m][1a[5  v3݇0e/;h9wqDETP5DIpa8Jp;a*\%A\;Ak\3hto,AQzC…B 7 =B#s*-~!Nt7kkcƀcVkٯ൧;ck HhD\)Dcfs`b\pgxk|r@g;IeFj.c$x.G 99 Eu,ґ&őQah.uK!EplF1ܔ w^Edu ̟`>]ۇ'pbL(/#7 ~sܒ/{}brЬ@xVeJ(c5쉬-h=>c tC鑝gje"ժȩ7BZВ=kWr&8k|J&t'^α@:O&8]1MB$3!TZOn^Ljk`HBy3ȏ^۬p*]t}v"4n{Jb; <,,XVWĖ NWk (G`2GPŹ;?lpn$ ""8FkzG1 rv?â Уh;ȭKΩyuD|bv Q/H`^Sr\s.)yZG(;V$RICzV RBӮl t#O8gеkLc#U9/27m80Vïx&2_Vb]COD1cZR*֮|V$'0*,>n*\*d(~}~f04ӣ(Fͳ祚T\B+k^mNO:$3PBw(e"CĨ1¯Bn] txTB${o Vn-8z LN/V15 7}y&S@Ghl8Q?ADuXQIwCZur_YTu_=#nL#ͻG]72%e(6>0V{wtTܚ6Y`^cТϢc[Jdʖhl2WOL7e:-z/wBQJorչP-뿰I4k'=ǛJGSwx7{l =i,#zJ,:Ca0/sS$Y*^?b059wɠu:iFg%s>Ƅsl#G/jH,>|b/Τq  1LWYӖ ,_}5L"fWs\?˿S_=Zj8 AOufߒA4j n(ƛSF~4(v<ΰtXY67-N2f}P>aLt-`׋15(?8)6'[(X u!jÀR;8[A'sGgK Ǽk`[^}3 *yx0`JwF$~o֧{4 s]~-HX':- ?)DM_\h7f<! Pp ȼ<Īə7H >;m͟_r!O7iNHUer#dp}pQ{q2Bg5cӡBvevNb=+kxmxci\DPT`*eym̆i74,JawyeX#3 D{=cnw(zZQ:зA1>j`i^vXDnw$7%r٘h>[lO~wW>1(2~;RT@g;H󋤾nZ8P`|8w=)q-ʳe"'$D͑z΅65Hą^3~5*"WEÓ|V8,?(E -4e`*vMn[ᜁ': B%Qzy}i6o5pe{avew "N h]t gk;t<͒_72"D4̶^?3{4A\W Y 8[)kϩ(?#f_$Ҳ,<:|‰*9rJ_1ϮpB>>-,!9ztf63H4X1yx+}Yk+|5rJe˜#UOpiǨ>TR$|dn$$oB{ĕ܏Y](L'"JN޴ţ>sa$u r'+8w2AH1C6y ' eSXK+uS 5EE_L1u3itK ,pL" \LAJArm5'rS.bJO\R:9i,zˮb뽜[s2._2sV:^a`t_K- iO07wªyW $R|J;+82gtD%RMW>Z K=1+2.Dr/E惬~L!h᪘€V}\otFx)F4bw^ )kݛ¾ +̱VǞy:sV"(lTxg#1ت՚zC:P]1u}m_ĜYkG֡!p6HvAۉxrt2 ?ČcM\ NFo0Qm(K "`:,\?GVhP xB*>Uk~y{i.;"R63DFY

Jz4A5׹\yM"o+Iy=qCsE{C(q#aԁgs[s.* :+lSĨl֥Pm(, ON=^OvD~ȍ'UGovR l-M "6ϼNd)3K5HfD@i~'c-W nEZŚ"oTm; R=7]Cw#*ȋ&brTRpt5w?.f0:J>49s$xz$[%ա@;Z ?(a$0Ԇ!؋iq (a0?BL|9'ͭ$rh,B->{d  k/pҧhΆ}fE/S`5T䶣{OƗQ>xH}6aIVx$$K N"ERJѨ~!ySCg9>\q}t^jp!خ}ʁ &Ź2KLԸmuZ=k̖HۿqB"p,X{(;6l{phA{g샰Ch;{ERfy A]p1ɺ!Inp}k0gi :L_yj`c<MwrO'_. RM+? CF~$ AsQVIFͯGgɋY O2|M{lpV)JH[&] A8n ëNo99?+j=8·ER9ùW$=Ч|ƽLȊN$6>S`&I?mb:xY9bb)XA\\ʏ,0)# L䟬\2CyhYYځ{[d"+>I{Y`4J Y9@U-Ó&Muߖoqw\b_XDCɸ/Hn \Ys4MFyW?yz~ioO+z*NNiƀjlk&1OOIqkc݁4jJNuS jshyuj{+rKL8&m8@I8pynj"܁ ,ؘG7ʭΒظE,z :`UvAu;S[YYA}*ڔ3?fL,-I9 BK;~kE +\o1do| K-^h&뿅!%BE33S%þ| 9994*|@=i{rZB˵%\:./??c(΍fz]Z|I[  aiqZU!FJ(\57Fi6PBSWm0Dm(%oNG jVJ6B:vS9怄Y>Z']<OժORbIn0X}`Ŭ ' ]F[1u8 \Hp]@&tU_"U$IjuFxH|ϏlR%>`jC kg:Ց{'Us\ur ;ZYox.SN0+T^TI5tG$9N0)ڈU+pom obؕx?<B^C%1O2=FRIW(, ޯHώ! E/"}JMC)F闲k-#lcO^:;䕥%~eZ[&IoBf}׎检V !WzQ 1 Ψ*\ INacڂ~k.t]4rV҅@rL!/T&MRd>\$UJ4I=>\r\3^#xU"D~`t{O ^),VCXfLUf|̾Y#H%p w0̊~f.QV7#]c"=bDÀօx< ەwc$;w?IZ-6x*[c. ʓA"oWPP iҲ4 y+np?P LճZ<?\38?+σޔ)Rڍn`$tD%?ȹ/W;` N0 &p0:aLJf~ZLx0EAVhd}goIxJWAxBy/ŕ2 goG'k8\BPU{O焦J‹+f2$:CYRƿ87pn]l@tFeʵDъ:U!R6N{ka-鶹lSm*1f17 \grWvN65!F( ]% U?YS>)=Gbo}}>Y_ ?p]X0""Q9"G"*(=KoȷZ+ ݬׇqg;-r¹*n&5lǩ/LRQ~u ۯ&3Y/_P.J̡C|ңKd|ցj.Ϝ+Hxf1S`.}MlAh=WT/"̱-o1.貜j+N:|nw"Dƌi@Rwǜ2nC/*]TF؍*X/cZe9ҕZ5ԲW?tE\mUc,a|H|jj1CAaVͪ CDyrbkrq?za+POW:(XqpF?WÏWVP\}Đl?JpvqVҶZy_u4-R"xQG.~1*!dFNg.C]pݠ}ëE)A_~koo:4aA5kE5UIo] fI8juFH9S§'hH(xl5>mB~E25 NB(քYQZ@/j]tI~79` orqLa4薬Npo̖k!w>.ʢ%ئC#">\@Ы>?t|>^ R x:^h;SYܖlȽdxb_2,}Z{2͖M ;'2J Z#K07DžCoobŮQ}Q zQy2Nr5DOk<`EQ_͒`0ݚʅҷN7ɫ H@9&lrE&M@JyCe+|k q@ro68!6Wc9vfqEI!JoM$]%H9I9/2ʮYZ؂sx Z܆2~g;}N_U\Wh%u ʒq-zL|:Cߩz |Z*Uo|PdVb={&3-3 S%.aOۖQۖS)ߢ. {H QD=qGhsRM*Rm"fIn;; s/4e!6Ǔ:?KQPcrΙS Y *ʸ_ҹnCfcgX*ʚ1gcm`Y%hl0 2 {zZ57$8G!f !cuen$[w2J VCl 1tM}wDo+$Q ToZj"JrZL(qZ2YP>W `ojm,J a')+J^qv|e""nFWznƚ8fs8)AB0[_Nv.Z >CP&A x7WUmIj [hfYFQqPDUӗ/WYKh<`ʸL?Ho%H-j'^wQo 5w7Li]Q9*j*i׆PLBkPrc#M=+3\X9W5w~ԟQKϡM)|B9n;7 gLQJw橅Ok05|#q?nf54)VcI; &7j_UӱIY,Qe 2vlo~4=ovaEtA$csmqjQ䤍BԲܾx-^$2=PJL5m/~Ion7./$XUyZGk}9p0 `|vqven@;gXW{ϥgpG^y0Xxm̱bs:9Zge)Yãg+{nu!o{V#i+Fδ?C.)_gy챍DE(I#lFCf OH/=cZ-I"[ZӲal@! ɁɉV)Ҟ$P|xIBV9~g`]Bi:dDV~tk6.W= iJeYc)Spmg=LD$bèVyR{'^gd`jv6?iv 9Qdt$1HkiFj/IIm 3:fw#V$.=}mMخc7X6ҕNYMw3}a-Yp=w*%!K"9CVЭ4V$ `$`JdZں@pƷSѼ!VY#j"j T$"ުx@C $ k2/V%Bd~i"r.R>34j3D^Tz7]9 Lcҋn6c9ϴJY+v v.QFП DLn|q\hfV.效2 0H)T8/ j(D#*ڈKN:ػeYUˈC?n Lm~mQ0 % VmUk: Y'۾j`JIÔ9ln4F~vƤ^ _B{A=U|,X"@`Iڬn #n·q@o[rt L'{Kjn:p\,`|~-gt:+]|{*y?eEΝ*(O*?B+.xsLk&y:=LCQMjTRIyƇg7H쌁~Vi(%{aw_@a2 X$qΎ+ZG->떩h H"%OZ>N+@'ju)V?yrܙ/~ m 0m#\rw ,]'k].*fOiS7hT ܆o%!UgLJ~%ݹß'A)PK5dxMQT #$@}Z,2zH7YRDJsN$:qv Pzñ % H,LWqH?mIQ>l2cw%*rY^]i?d̗17l3svCeg ³ ˎV:ck/h>Ubd )6xB'3F0_Ě^;TbhqYq -Rԗ[ WkN/죯&ȇ4齫"Ȧ@A]K/JyZ%*XCv8kQ582 7d"p Ѹ>&8morqi^[YB!Jfɳ5zf//u!Yc}dqZ(CyyQZ-y^:Mn8_n_8`0FIA|KBΙz\nFui[cR]c!?PC<+iZ1Q:qPиmb=.6 E$z8/H'X/kC  w895~ Jt|HUʼVFڊ&K΢9J\J;^%Sl- +m3R ֆrIB#WR8Rع/ 4(;0}Bj+@Eh\}ĝ^NaհڀgdƏduPP^f9/F,&͒0|󞻔'~>3ʉ=^D򹋻끖˥բaoaG!#q!ĨYDGS4Hݑ٢`7t_Ε?Kv_(u$N=s,nKpפ@ϚWċ#s ynz +`WΎ>P^vP hV,27ô.yyLER4CޗS"ɪyPURN|oO+H_xA:wkcߚ؍' HqyÃY)8@%χv'*l꼷2# 84. it(+[rd"׈1iKc wCG#j}>(|泒Gh;18g: ã԰‚W& OPM'f eZ??! Y?D+Ĺzez`lf9 I p=$f(JD0(kWKXs}[; MLXi㴦aއ%$zF 2(4땒Z * Ms[ȋ9 Bkt؍X,g RQs0Krlc-܇jqòE.0eZ- ̅?6OQ(_O%y9f*ʔ}_uX7d|2K[]ʢ/"s~w`(H 2Sv0ǚ-&bvT,Ɓ7`fgl[P`#:YFP@2NjX^zu W3--c؈`k^jQ6mH >GҞ\0}\.lE4J%?T&sFI;;!i'%;DӦwI+JBl,Y=GW/?ۺpYrƺQ%;Bݏ.jVSjFkV`gLfl7 9RC+HmuDzZ h:6wߛ8Iir qA*hCc3-璯Wi!;^)lbNJp+ާTvBk!q}dVAmsE9Ù;2xr̦Q(>e@]~T^*]g#71bFEx8|Ane;>t#==ٔ8QgTa[TW cf[$4"zdoX !\H4u~c<0*;vT.0F}_޾:'k@YCh#P Qǂ $]O=k͝U%6B͕'XHG c) ˎ!w%^Ud#Z)~qDmj&Zc^QJ/-B~jGϣuK:sHG`ڴ";Z d+ ϵG. 4OgP2/ z e+X^g<4AS$bZN؈Ԅq֥Z,ji8tR?j.D\Zu6eɖVX]T(;Ε㣠4'^#彿 D톫>~3,`U&t+gDcS6Ś Q&x{rݢnnARFTGp2`'=K_bqZ3E pK !_?fae-s'iA=ނ[AuHj[ qbZʫ+A<} # " x>k*xߖ`VUB0gDBcA*S"~ /ݨ/E9o.T8~>+ߟS|Aܳ+&:vEǶ*MuuV'BA˷DW9lԑ?_o_ iHm>X@~ OIw^s/sQ N+RM& Hw~dq[meikVQd_%F!$WQYR3 5Nʊݥl4Bňřl-q2cb{ _''w1V JMwr?u,"0E,rl%z+s30]Ki yGKqp  =[S6ܛɣKtU Xهp%;QK"ؓ.k`&`f:hηfV"5Ț>ξkT TX{ШSzL-҉wj)N!u}RrU$0ltH4[3=F_SrY C?iVx0EK`*Kq[z z S* ە_uOT_eCm.pKZãl̓@dSYNPZ>@b(fr9W wp4,J* ZR Z%:3h _0.&*a|Q>VLlCBA5^?;L`SIu]g9ޤ%*gs_ \bq8p>Wgx :ZO{+̾sF1iD~/Dk>cGRR> .6IɨA>EPBoN;jṈJ`|V[r&L)9֎aǮnȅTRB738hE9,>Z$l vVXHG]d0ijE4̞=f Aeoqm쾺gDcxأ%1c09=f'Ƃy p EZi]p'ķ{p/^ Xou n LGkv6Г9I_כ s]hrP:JIxC]s?AnkUWXT=йQoe8|,收ů$L5KW5 @Q'z>TLa h}>y5X3M= ӗ nlg|Jpe뿢M ̊AK:ѡò (nw2V\iB^!a 5i~Hؑzr:nQd[IG0=< H_Gؠ07&I<`9aȠ<FFN|vq/R/H, Ez=5a8ptҟTd_)F Fuk7fχ X!""[N`^Hx&Q_-\QGLO9^;Ǝ$qosC[禬Nw*b4`$wrt {0Zױz;|Yhϩq".DWͻ.fTǪ;iEPNab?q;J3e xS"# 8js~/Kl<e;>8+!+#z룆nq.왖 ܐ~ۧzF/Ko0YS:,Q+o폥mMIravG7"KH2gطp$9 a.˦Ȫt tRo xFѨ%l5:J+KsСר_]dKrbOMɽUWG%N/yC],9x(Zk?lsf 4ĥJwm 4aVkUk{n(!lM"ɻ`b4,M nZ@ \| 1yk |N7S>W7,&!f’fbW׀H8GEi%*ddaS1dD)__ʔ(BD"+,j*0ܦlmϰ;*c 5Iyz G^ {Z+hT}?#1 ByZ(f|ΗZ&4Z\<l}9ۺ"Yˆ7-0YCu!УdF?'B󖎴9t5@2߅2< LJ8އ4«NTAڤS\5S1T֗ s{mdZ.G 003jWJ,t3^ngՋQuv̊ndˁ`.'vr[K\RbShK"?&3LПhzڱ6cD tr$l+nt,B˾%+BٚPVV{WOg[̑ Vy5K6w<FvaC^${.Ukjkx2?K/-_R8sKFg{Zہ"h䖍?7J6,RdH ~̎G lb-%^m=v>?sTipe^,$ỲÚSsQSa$sa*t*G,Y[U8e ktNv"B1T,XG ?)Mݧe`nZ4m^ޑnyfvhJ.!(Q54W+F(f!#Ϯzp'7Ι =~;U|ғCGzin @0좱8f=u ,2̵[57F&lZ%eTxQ&'!q5:<"1(ҪRA$r%M4,\$m >n0>X@N ,CMTKIf/R3X\Kz2ӖwY[}Fk6IW|u-Dư[PLdTIE.D诫YIVtҁj2!qXaJ o9>CkvדBG>,HݝdJMJoޓ63w+Wē'd}on$P:$5Gh?1aor$%0 m:t܁l3df9hj?Zϑc-jT5ͅдYYo:uU'L ||G#bkBw=[ Uo.yf`>1N=M {#HmA`;ϐ\6eS²2d9e*g|ǭ2+Ę\?V`[,^k/J%9u~#sB8[svݨH6PZ%6C7yDZ `h9U,YQVyO*#]e='ps7=C-HU~Ph~ɺ|&62Dhh纃?A&n]f)]i }@'0ni?J SJ`6iY*yoIJ^Pd/Um 'ɻ=!AT-WM{/I;|[~#oa /R,IAGLIP8*w{T9C,u]쬀[{9 -@1̸O Ҷynݯlg-P Ͷh}lro"jSyI2;Z &};=BO`nf 1g"6/g1>cNAo/09oi0lѴhZ`&8 ̙FV=BoUg'b msKGhzIWRC&Ǩ|$ҐEIg2\OFh3 U2<<+=H1M*c>Jl.d3,7ӈJwj|xjr7?k:laC$f7'(Ʒ)>f v$S#|ʄWE~)EU׻Nh+4{lzX`~:EFZҎL9B{ӽXw4>sK$ZYJdNNҲա^-]FX`W6׋ F ͝y k Q.ݛ;f!(?O@ZtFbiՌI| 4|ۄ| }KCFz>AW է́-Ћ|_(Ǜ\:,h'eXVYsE,)abPc{'{c=y%x][ [k|?8C.qOs(=WpC~iB hD\n: P|RHyuxWjpx<G'بARM3#5a@?9&uUΒ FB7SkWR3!^IZ),޶]>ƺ7qp/a;-u$/1_,NϤH2~&5N?y^1@sߋ Kgcp7a7g0(i;mo0'A]{NSYh5T/+<{x,]<`xo;̿٭Y8iɀkJ{f6nL$'Sԥ-kDs\>[<vLœdQ aDG#M٭|#~e8bP_C^& blNԮ!u!<D$/N*/Mn/U~2,kwOyU}V1- }.TDu; OSw&|Co}ːamC"Nl ;HA[v \P ~Rz5䓂hlɇ CA5ނٖz:aB'f ;#U+R.,wF5˯ &dN3#n^4!29'Br!r8P N(B'©5ݞm,S:7 +RA|bc]7:(KaT/($Xq(w"ڎ-w|f7*M7)CI/TnM <7Y8A鑽< OôTxlp4`PnO;{@[+7*_NNIL\z> Cm7,$ ɗy9]Ў0KV;Rp7P?;D.Ceǀ{ 0`u7%. ߲ld=B"gUwWh L99rw70):T rDz F3@̿pl?/3/iI{.=3o Pɒ n&`Y7@6pX1^9/D$ܛ =?Y2\GhRkˆd:ϊFϣ ^'At9 5eq) I,T𡣧ڮx⪶ㄕP1d=ޑx<j.(oQuV2cԢ>c` s=+ 9ZFCzD ^÷i[ɪ~w.b``@ϥ4<3eT-JVO(Zd  fAPؑ?9壗-7e_7Y>  qC-HofiB+5ష&u"QiRy/Bl ݒ'`@bE*k#AP(e=\3PjL?-l(FwXrf´$n)3+?iBÎU%0:$H[Gwr]=kIe*4DmeО?/c'޸b %zN8?i(,Nr% ø24zY F5x=>":́ofOK*\m: 8%3Aw[' )$W0B'R;WG4ueX@_0r-\0~ $:RӇR(r+HdYEŲ bS"AW?L&AzXNYHZBbաs!hpa#ɵRiX*r- ,f@m(.0 I)j+e.qfIѼs=t ttUsĽ2oiD'F&EKօ#N-AttRAÔ*_5ԧ?5Oo c}WTʱB [ +4k`\YVwDQ yjgy)}~L&rd?<` >x5 N"L _j/ncaMapFcl*{ l0m c] iPѵza]?3LTѴ@Qs/3v}.čՕ2RtmeQL c*B3-2:$oYw\c.5gdpp\\p$ܝ\(g _NztmwU[WH/V_F+ß>d5p߼F nϽۤ{LG8+卵{f#@P\+[\FL|>' =J؍Z=Yk~^އ+51gQѝ1JqG(cZ%[H 8Yق\!ZPJدvs#äAIZQZLj32P&> T\hߐ'E~'.2xT4F~gN$R"g{mZ$Dg}J![;GGN8z&H~ج+W&$75dCCyqL-y+Ơ>:%Oԭ ^b\edL&! Y>)Κ&UUD}2ݜ keׯR!|~m(!Ca%4W|r{0@F/8UCd"o1u6_[{,!QE8؉?0>GsLw𵅘V e}.yC+>+7q2uIK (_t6A֡&İТO*[՜Px6gDދvhKQ|zm;jJ)p 񕈟j 5uT-\"1rvmՋ}Aں"U7nW_؃tR5r@%+R.oKXp R.0?UtX5uU]4)01ݯ.hLᏲ-]^SI#G$E|9 9:.fKf>7Gp80ɵ ۲2!lۊdJ-ch" ރR *!R`nRF{,kTr*]:4Gk`bd^KBWWI[hW6H \'(Y`ĹRC 'vQ۳ܜG7q]8je 39VAƷgNY-yJ?5Jx$cOYoK:Ҿb̜S1x LQ (e-kL#_XhJzdp)6w4 lK~;<H)"#bh<.ERfvM7cJ=F?#)`;S@E͠ *V@/]~(RBۛNGH;H'Βt..Zi~9qwH3j(ֳ$OsR\A<39 eȍ&UwFCmraHC'x|7nM8fz$qd\ ⁏ͩDw^p,w a1Gm^w!_-f.fl_r gߋ.Zlsŵl\jKI_k>g;]9Fl>څOC PĜp{^%c 0ҌZi(Aq\֮]Y /Qxiط(N?Z)ʘ~U%YGטB}~G^nOKgi1v^9n Uv3^`hnK d'֓"YT8'QCv8Uaϣ$_Esv"p5x\k<»ĠJ.OvEkiqvVѬFJHP&`( tNY#f5ĠC$+~ޔ=Z^2_A,i]DW EfPtI)\lI2H%3AuE#5MK*E%ƜtS`*"["G\5@~j*p* DŽ<"dܰoejuw+q;ߐtEs*Ӑ+R^khA~rTf`VY`<lZ۴,xSgse(?o'0.kQMQ|ob |>c%@`^)MƦI)osu c{Hw^Aeӎ<|wYoaM[/Ж 8j;kp+.0)-Nc&#Ѝ+:↑ LFϠm# mrWe "îOM'ڛ0=H.&eJb#J=LS===a1GCq0[p<\!cd dQ;(Iޮ#Dׯ6үa1IRI\;i7K-e|>OܾvC-%:T'V 7NjUe~ARR_E=ot͕C#EF-9dnCK_RÌq/+8uk^a J&vW在Őuһ{#2.E_tg µ/NWlajnY†Zokѧvo)eL6Jѽl.{xsԤ8)պ83QN'ќ+dn^&x꽯FQox̞+ ۷@mNN6C+o: t& t܆9aҨ; 3'5W Ϝ`n3r >A5Rjޭ=H쀁bӨ(^P|~bBw=u2g[@5RԯRՁՉqoR,@1P[ޭ$O:@Ŗ+ z4#TDhU_ Ue^ڍP |-ZR=U0 yۘ=QiX%_6Ki~<ڭD,Yte>- me=,hSqq KٓWtEO<_9 g(ҽYz̜Bฮq[۬hu a}׺\"X_N z7;>5€&ׄA5iN[n1aʉ,Y?9$i* ?؋ޙ# SoJl͚6~ /Uwf`)ؽkf(?}1Bqs}.ϗ8ʜL#jT`(u*Oa>mYʟկy{Ƨ"ן 󟆜5w^⧤ꤙ7=³F0Q,@D#o| lRG6f]r94zӘ8[|W[5f mX8 -LʬSBr71͸`?e =kTVm1i#(>'Mkì)o j 7F=d*FڍЏN*iJkc+ળ>b5G:@?wMUwܨ i cĶ7\0Qk*+l8te~k?\u@}FΖpu1Wq6rTp)};6b #Ut–fG }IKR^w&N|<=8Щ]*֖+m+m#D*#bXBJhFW3BTT௲wE Ҏ5c>I۷)d,3n*=c< QQR)YR=T՟ؖb,+|92z^s6|$;4<+{~>YjDF'L{*|J]L4nokyGFm΄n7]Q'j>K4V5s4Tf-m̾ фZ*#b8oe^ԃ D4G_Nw&n s7FDoJ_$ⶦVC 3z/o{VԐr"\kp|JG%@,vԀ=f+M=VFjM=s+@LMR[jKUɶƺެ헎P"QqT{k--WS10 {*F{jiU_c&OS˩5"z)熘cPZ9A_r'>KT7 %'N-7]RP$942!۸շ݅-ͤԞCEBrţt;~ T)6D螙|@ pnJV ? eCtSe»rabR̵/ *C} q5M?z5o9/~F#cbhv#nԙ}X9Oke5k"SW'WAb, L]K>`9}j`FNv0Hie[?|An4aaa !#:"-xsLewA!t$aWRxCF)).ã=_e5Ny O83TR8KV(eQJsE O34F_3Ě8je *qXW ߖ?Q#ٞk+lU"+:jsA5#Ԏ)e ġ{IXd;0X/6Us E쀈܋2ܨqQoww0:F!u+OCF `ߌ!ձ^vVM$e ER8%\Jބ8N$Zׁщ숌tXH@rvDc 4ZUlnݚh|A8w̪hdhf4?M ߡ̽r*]xƁblKBFZ n#Vs,u ϡ=%.1N,Sv&9՟Ύemsf#g=Qm-oHTF TDn?t&`.΋\k+{=a{`29zDSzG3▾^OZZ MKթ,%ulH JdQ-ۏ?6;)(- Ubap,x5`iCbZ2PtR;{Y}qU@‰jhޙē!x}]p<ut& ,?jP|(IPR  ,W:V)EY3V_ „- Oy@,3s1 laHg$wY s7Hfۜ=p.1+ ϻ2,Fwg t2$\=.5+g6=ħyBDǨګ?^%!h٩#FtIROO_`!lTQẃ|J =l빛juk6'kVd ܝS;υq¤cL;GMon%"|Bд+GW= 8VTܓޚ+[Q>(\)Nd#CC(ޏ.S[(}rvPr=i4|m¤3+&0j(%*Y\ O9hȶS20q?=oΘp'},o<|F>ŀeB;L3V9:3vIh?P2ow^V(,բ=NuO-Ji "92 OAZWUy~{U:Fi3v_cv(-)˘W'GuEї,M| ? W} .Ȕ$) ?t.Y6`0,[ō#~)VS݀6<, vf Z~4,\IsE fivw Z^wJ ACTn_ 2ڪ2q_7[agbxRNT&wm>߿ ]nT(\BTXf0\9_c*D3c*lb:VS(ݮerQk$BΤ]tD~Nl ƀ[lT(-Dfdc 6p2Wˇˇ_H5 +4ӮY Cc54 hyY:,18o"MWW뿿42CιvIn>aOgy5]r#0Qqe2Гas).uҧp\%ܘrխ.gj9}io =]ZqGԙ:?Pl%;<]7 +R"BWE>щvz=m҉3e(!m=Zmu¤6 dހ#ciŷ~NW\]d!KuFyBLi_6ݠ09`?P~%#e\ϼBHޕ'15bH! `<Ǹʳy a[HA-Sq.W{z|Rby?_H7 4Dv$Eo%y<{^uP~yg \q꿷^bN`V}M)DqPh B3_;*CW~ 7+}p1a.'aWX鳎6 Oj_mcURGB\6upFMIlq$w9Q~y.97EA-CD&D`[}w;r*IzUdv,S>}RU%_^Oy?e۹>#<_$XENTY|3D $P1%]Fyq1>hOvUkĿ!Vs}|G:)8hX@$G @uwm"baLg%f9YQNbc-P8nUb?otIa%WrW-R LI<%JC1nIs[q|٫z?=0YS ýhh?JxŒuѹ4$*,PK콵܎/}6y?J0Bv${g䱞9toi~ITP7BA!K>R {ZKN/0a/9OlpBMԦre{GPܘv~B%ZB+p^ .@\Ya= ]o R}EcԠu="1lP9?kA^$66Vp\ˮMֆ2"Z.1I Of +hxEtt`ې$V8Sۉ>9ϱ#@Fxg>sY̏I݆$A3"p#. #tu$ZA*Ovg8: XS͌!spOw`ZT쭝Pd$0 25Hf '썀.x.qDR!t g`.|y0|,F֓?3s-'#w!O>/gO7@TE2%)$Ѝw#?j?Jcـ%z5T?usCGnإIGxmd P= nD UocZ(Ͷr_ʦm c%g8YSBI`yҔf*׀%8%}m$oѮ<1F6:'Ƭ?|=SZ*z-0`"ף^qu} kNm'o7q u3z%ɾ!P Iа՚WNAZn}r*:u׉Hߊשʏ;1w1%:K߸' H:O Vq7:sL*4z{JڭBNW{:xF”<&p ##9.z3NXQ'wCHZd<d_z:Ǻq8+qөQE軖XE[("=Ş@XHIGQœG9+xLWR?G$R},+1ٹЙx4ؖCOwӍ& mg0S&C~BRm۩pG7zpFٍ;:8%{?Is=3e#0lzgtwah#76o3|!ͅw}xE.ն h~IgbTۚn(VΪmA./^;Gvho *[B+&?5wo[x@•VZmcm`c3^m%ضgLJD3p&)yW8822䨼E cQh)lYH H3-ޓuId*K—WD]bpUGrh˚;HE,4*!&hxkz9Ц=m?2O Z(Dn3l,&#A5T|X(F*9# Aq 8 q_-!R? }&k#;'FEkyˍo+/- ;e`sggX|cւ14Of6pA9g!CGQʢ{N c›tFn2 Vw@'y+y=%9c(69X9[6!`̥8G!aʰ0}8Jr4=W,UX Mvمb8^agٖ6j ז ?~!'UZ"9\EM߱8 cdxcTDnXYlV"V,y$'Iö@ٿ)Ͱ66'8S %M_MѢ~&lscbgL@s$cTs_Eԫp-*6q|` ENl]H~T-Q\2H3%XWJ/.{"{m)grvC9F{[ɛn7ᛤ#:w`zFoDSrcG^5(irFzDF҇J.Ej"6dBPNZY4ŸFj$n;ŸA譴`]0bN{G ~A T8‚Кn< Smx?&o9׀QCw3̳b;AsDdBNB߂ּ639%Ca!HD-p6oBK8'&-M MSڒҭcy5K:Cp*+k *ꎑ.j~Oeֹ~ƸL|e)JUdn&=55  i|jR?5N;jb5 d;onYE/Siu{ٚ1*D2[1T\}+ʇE&r܇Σ/ JZm!+fTfc'c#B^th gJ/9GMywIb0enF\.Pw΋9 KJ=ϴ#+ΊϚڽ 5Eo)eN('Oy@x d`Bdw-ب2|S=\hUCΊBs.]#M꜃m7ޮW7vr&я%F<=g@=V]Q~(032YX_#,DtA, Iq }ůԘaI2D)tE ۻqxg'c~@K yM-rQ4 bk c{>5.G:̢%k&UZ v:5̏"KJd=llƮ59VgvUWy"MXK3AAhk5ج~].Db(-C˒4u@|anSnu~7!Q4n}O)rO?^,X7]Rzi&(L&bQgNom}*#Q1QH^J{õn̵\؁&qҗm0dok\pqO %RNu0nERa?e|21Nh{ qn  Bq}8Ǹ1%x+tnC6KGJF`('6;#h@]Ed'*^G8ć,э^\0qK~5=Nv"ø>_5DzꃸMo+M(&1Q8aԁ^͢ܡ(K\DgAe۟@G`#5HK,إɤXh}>tħ_Pu_f( l\bfT`7|ʩH {a恏+7^r13yXiTUr.UfZ+['cF#|-ߴ&I$GM^iFWL[QeBdyr6D"#CLBd Tyso:5є*,dhzs#̪xEڠ!nUd_wlX49yȁr3 \mŷ!U&l[^K|Sx c:3,UҫU'68"iaR=q>wLoI v:(Yv YX4CHGL=QռuYA`lW%oa\;^4,zd*zEu(j:ƨ0B"=*-%Ji5㳣YC`wG(=(lô]/vv]_)c-pv ,llۭ[Du!Ylp< kFg+{}jzLБ,7`~B0Jv\0yt]yNf*18}N>p m]oH?V.HOa,Φ/i_uV% n*NJ)2rU^ݻY+,>."ԩ#+5zC _F.srz!u UVLT 3j *v΀m+X궜sj웮m/:3s *,;s͸Ys),u)3iQrN;kX9dA݇~I%\1( !ΗH'BZ/ZQ4Yb<@M.UDY7'ɞr$ԙ7E$eb4TEc?>r]̢|YX54a+̍*Jr \5n9R[gttafvc{ڵGN m WS(4p-,Qd!hϛrxM\?H|zE+\XO2/n/UöTOtDKh;iJrx}5猢ӠH->x0neѼ`C{(r 45F)aM-0ɓ^XU$ jTe4:w"b Ya)!UXf&wlR,1ƮY[j.VYmv=(.=Lms& sHgqDU ;հ]6yCLR\<"jS=EC/ʍQ/͍*4`-=vRC{? W/p|i"׷ vvFdEA[`YI2,CEb2K6gSn̐p,lY|-JAM ;;Mk`I2 {qP olpQo-aX8NA`̉\GoƱ⥝7bikx}2~ &a v ˮOj 0HWN$j+> +ĭP<}}$xsI C>nG*6!+X^ABU[;}VX㘀St>lnԤgEݖCĂ4 :2>=dł$9p Z3QJvrl7ط C73ojX$uszr%tTMe;9Wٟs:).W%rS1ݫk&m uKPQ<&@GǦI<V6`tWGoޢ:]I'=WF*J2diS8s;oFa+T ?};4z9aM>d\ua\Gjb"{$,2r<>.-Rn a?\"I)nlj0EKbHLv׭Mй&X%aZ̧|G|s!/ma9`W_mM/H>ִ-Fζ4ak${v$R0+uR%hGeu H6W̦d9@qT*.3s'ҁ`EĜukêt燜;m` +dz7ˬSt6wH/Dy1MÈiv$ܴ)5QqBp_]%tŽgm]J!CӂZ=KΖI:؀*֫gy(l}C+4] (q:`I栊[$>)Tӿ\GD/RrDK\fKk|a|gKi (@EK[2"st﫷{l{D!N(J+M[F_n/@DfX'_5}CNSsQ=3$W^ ۃǭEz@KNtkn+ `OZev}llR}T8ByT䔈0eSMY;|"y$`&,Nd4DvǩuJZ$E:#P`n; a_COi?h8Res(~V%q P y+KGvYf . p ubRE!֫ͣ21inڥh` x6<.n$,o4 J Jx1ïM⸛֓h֥&gxQܹ~ %kE>4Na j0],C80GC}Nv=q=rS812> l:xXx: hP`5cMtOoKՇ~+qn3 ^#eCWJtt1K=Pr=|: %QDxV/fա_%KYWVtNXu*K 2чGbUaa_σxsI2֥VB$xKea͹+Me+q̾` Z֧XTȑP-aB$]9t5HVϋxP`l[MƢن]m79 rKRlbdϧ+l'ȍ&Mn9p{,e&*=:lpd ]\'"RXLc:U)-߮$LD)S$ީM>JUʥX:tWZBX2 ?m˼_czb v Mk?=W-AStS^-]@h~3g-Y?k]e\  @,I^'yOP_ ìa ǥԹ5Iˀ XqvmVt@{C8$ \ʚ5\Q㾊zR0*h ,Hkֽs9Y)kmp%`E#C)7rJTuE QGo_eRB%]Ym}287a{ $#?G9p^5`kio~V͍Ul3FQ㦎:=4^)^iC#R %¥Wk?td=} !GϯToo 3ZY ViLi6>)V c |c -R?:CEEW@3%YuP<]66@&sA9cy5*n܈߯=sa>=d]Up?kΊTXyҺ!U;ʋm*P:,n?5:N:#zm|!ؖhe `%]lX ln"5 ?(@BrI, @ܧ𝾧;/@Uΐ'F"Oq]ƽK;i֪x3DoLM1 @ӕG/,RXH.Ily!?If,85+07&0s7V"r-=4Kch4 p, BK·0vzSUzC),?VxՀ9c?誚]@ޚl- _ ʵ IP[ԙƩcW\CIɐgϮ~IP074c 0k סqsN ie`2 :%A T(k$:˺48y`}Ě?'Ǟ-E@at JM9NohGhJqͯ`pբz=Ҟ8ۗ)~[D.TvObmcC!,d =GA -0|=sϾTtX*2sFXiR4^v3Ký[/I2mkn1i +eTBLy @%ޥfSDvgXQb)vI@[s2{z2-g-ĎRmZP#[iy|9\R׊_BݔY\_ 4T$(b#xP#˟6Jݲh4 GR)b\ 'gDK#q,k0 w9^XhT_ zp]C&+MR.8] ߰BAnW$$/8ńlPrN~"Yg] ?X/ސ1zus)"4!@х~Uxο mL7D&`phS-T7Ӄ֓y6y7$ #^)pUo5~W=P*) 3V%KqżNA }lL np}jmPXU&,rYޕObyQWڔ^/l=7Xd kWa8cH"=<^;z[}@ |Ext\ ց3WZ) \UxB/S/\ K'(>;7>.es~ ft9Z<#ffoڭZ;q+b{JHAiLzEho`\)w MGs!ePXɟT0. >_l'$nt:߾5[q.DwAݟESa.vr:g(=6![RC" I^=i5='у|? B^0ꏕ{ Zb?%^ '^H S}62Xÿ|xM~۪578RY7C fWREaAF93ʡ>Tߧʖ7gܩ/<38'5XmfB08GPCGSA1&'Y5鲓-MWQ$[ 7<:g-qr5|mcrQW?f'kUHQicR m}I^5G7 jGVCp5jΣ|-{o i)ۊOH"kO &|C,@d yrxC. &\$Xia&5lE趽ѱ {a>s]lBS*W7EitzsĄGS%Tx 7#YPJɨX+&@eiP.Z /0yeB z1C^ak[ ҋ_abo4?QW9@d#Ձfc4f:Eղ߱-έLt?% >ԽseR~'TRE5U>o(wL Jx`{qbhWs,}QL +c >rR&VanAL3.<%2"!k4 _`bVHB6;.py5rUBaCus0#8: #LZFEȖ:6OU`Cۻ[#V{)hDrUG+-˺TFPhn5j݋LY*\d/z $̼j@F0{E ˒WRHb;`z=(PF@n8^*%i rjF?5Y6MŌQ3e`CHV޿[ eix0SQӠ.t>^܇L|p\ai+5UIj$a9~Vu{ |  _V[FxXϱg6"@TV3#'iA)Gs2;`=)8&/]p@w:Ho5 K;#F'6:Cx"DG{/FQ fs,>KW|FK= G7 \%3Mv"` ;D/RE0F*=Uga\ƕh~y"ě6A9Fl3''k wH!q/~n갈T:7)V^ 2]uz٩,xdhu0ĖS Z0HU/SMO+tcOm:m07o%x ;V@)whmS=5Xkް`fIҋd_ƥS|7-[ۜ(N9ݸ~RB>FTM9o_7t %5ψ 9)-MGژ$ FPnMA|V)9:8!k2 [H:E%0BThaK%KߪDp^ǸOnv{%!f*IAnOۥفi7G 0$+_<' `Zao%4p 6ֱqNzF?叶,#R:2u'.&Üdh7 ǙyN4)$0] BW5[ܭR^q*Pig5N]U\4j8Zr<C\{y3Ww5Akw )pIad8Z3&-v l"EY,$^B>]FZ{]Y!DwbY3y|&_Iw^O曖;8Y| إY?ʜH G%^*ql* *NF[rdBۤĕ‡ABomg`rI9 g2 &ql/Kw:_͝#&՝LN?%/5#_+Ss[_<ͧzf]_mB"CvM^T@\0AvVYn}k SA_"zI|s7 #GBG fEHfi:J3{dLZu}2-E;UUdSP#9}BFMf$4{RrpfŔf32g QBtNH)qLT,ST'9muk9//kyNo}91F_`eh J 9RڒQ^^U mڲ'NQ(X %[" @D,֍yDn^NY+Oy_P'qm.NںCì1NU`óg!۩ѿE c8M-*{̪_U0QH(#dDNi=՘mVJcMǏ `O-?m-mz?ɩm9\|eB,bJGƖTaWࡍԠqX,@r!mɩz7N^n@JePޑ<Ttz:9> RtNWZNAWEs%LX!(bA/B@LZOtJm?N~/auXp{VyEYt&)N2nßۤy:Tcħ"Pϑ"ShE BE 4p/}T$ŮGcH\MςJJ;5K9%i߉NSlMxkCu'Fp)ja=[x2tNSV{> l_E,/PI. .'4 o,QpGME%9e!Tr-Bc m8$J2[:7u=_m>Ɇ7?EY&eDNj>1PhQpG]׿Na,j~&K89l$Q5 {a0V> ,j&{u8Wq0i焘87 kYc;Ϩԑ\'fY6Z&nUxUpYuՐ5f ofo{*hȏ<;wSPe-Ty8Bu$?NWЦ>oMe$^}ږKFs K{#yqW`lpNbI(NL<^D W8[K_yv%͏Lւ};&"y8u)*ž8Kkܝ:Eـ/{AKzARƽ-eDSSDӞnI`FQZ>+]6zY\OA%}><;gADÄ?=&p{Y܌}O[FbWq_Ǧu5z/f-8L"pD7ҝq݉4;?Q&^t)#?P kRZp^VBҰ,ǎwaF/:q`Q$;f0ޔF$%s<֭qau+יs_!Y(/JӛJjedx ˫wz0=5G/)g?_AÌC5۰$Ֆ" 35]AG_i?xfL έh?1!/)'h- nm/꾑Wy?Q(-z H MD-=eO2ൊb###nTo=aF7OX $N8" 5a A๗ <ru?.{7kzL/Wr"r dxUk&t.UVӦuѷƐ[F]w6ż(DsIUqܑD;=/Fh4S{.L<д)U"/TqK(C)ɬ@6$#wP'(]! ./44lTU$VŲ] ZUur D ;I,:隔(u" ,T/dC``hY7'lXmA E\N˥W7]uQwۉ[@UU (5\~q*#9DMHR [b[ *7/|mdY92T; 1XT-s1_hzBE[ 3+xvUl L6E$a-˼w(D2UdDR~U-2^AT9@QCEeLnpǒ~%AGk5Xi=JW.Wwl97uOcj<:P\زu+#1R¬'We*pu?nz7(8cu.7q+|9/uFl2Mxez]W%}.%4뉆מw%gCc޼x0#^ۊ} RkdN gֿyjg,dK3IV>% U[ȞUCI~U12hhNsˆ"ij3X~+'+IKg )!m7{ͫ$owNxLjڱv(}DwxLPwB)$tęh-|:۔0Iu9,;m&z@IMdwz| vS:e?5X ?Ⴝs=tj`«.C¸*o?pc{Fa/Q=[iPyeZ0k‘|Rфͅ[xAgwSs"9lOV+98r Eey eaj$AUp}h_ħ5у[/rKOfw ҞaZz ƱJYp8b)o!ך-C7[1휞RƼKM V ID?p G,mEVof7VY2t"ӏFdlɝ35 4}=٭Puh t`2ܵ.ZFIK:BN@NNd=d~_y+wttn@?BrZ){K:k)iu/AyI?4׻}WMfL5m破tz5m鶣ڸ$qcĥZ nXѩ6]:-6mIy1!_ l)=olcAK[C?.v79ya\ }'t$+ۡzo`+Q+XeV얢wTŢJ@1zMa Zm2OaԛlIN>܍Nq'X` 57fxyE7ȟlNwDWSa!M,YſӸN.Xڂ eh]/[M.׸ Llb[u27wsuAˡx ة=訆oM5:VUf\N8i%3$aR#])Hg3,ltM0Ϥt˲7$2> +?/B_stTͧN$ijd~fiM-a-bT{6q7<:JW>L9Q$u"WFdJ|(Ѹ:NO̻o@FFNuW|Nbn"qBIY N*Yio+BciCxPuVG2KK3nLP5tU9Kȱ;M9$25P%qD!9N`S7 8}ckŴO#|xuG`edLVֻJ~~T]Ǩ.V˟<$CKΏ+1rѸu7߻_7ؔ=21C3A40_]6!w:~k<}CC̟ؾ'!r_ZNYrķir;u fC1ޣ1CAYYS%t*c'Gfߊȋ"׃(T4cڲb|tO;)vt#|F_ٽ!>/Ӧƭ ]k㟙@ sfoҶi5h~yz#%_vꓔ呄mnnutwLVR l_Cyscu9w3{xFG\(b>Y)ʢifH5G9d9 Or:`i+jO8Q1CYƻPvo*²#`0ƒ9A"s9AIkAzYh鮨W7{QDW#Fj[r'!76,#;=kqIU틑O'/e~xM#]mTr@csH~FjBV y$g%êNZl4?2xzZL@36 7(7zz:C@[3IVԖ מXם"6!}~P(Vr/О¶]\13q[ABf)o_O]_p1Z\uW0ŗvDz)@\R~/"/ JEnIq?GYnUQItN<\V{ *$I۪Nr f-+92bi~w9^?р S aPΝ'C]bcNE ɩm8tE#Z{Ж*˸Yڝk 4I&Bf;*V7_(CU3Pm >mx8AW4m9FJcs;0Dh[O=p4S2x\#* x wFὄr/s ^s2m\r~Oy mݡD2/)Ԥ,jHrd{K.+#dIaxĭ.z5VXnfLϽhKb_!73Ҳ/ ȑ=SXo9;uk*v]ٔ4J쟏#<dҙA,$ |À4#4؇2MY# S fEbqk=DVXifu( 7A쎵UH]u JPzO%"LwNh.V /XVcrQ /)R<ǐe 㘱 )_ba6X-}l]oAً3q]KP4'.<עArߌaOHȽ1-ϢDzYFրmSjvWwm-#\sDQoLK f8M-=JՂdC?tl,t9!]*D%'UJhLQ2H%@b i$y&FdK o۔t'L:b4+Kri]*FN鄄O8 aޞD5k}5g0;O`NvVocIs@Bpp$H\_9z2433`i~ WA;lKcC5u.{Y>\)߂W /<` a,ʞ_`uhm M>UΜU:xY/%F#upqD@'p@)ᕳ"_C<0q`'k؛G2E !1 jGx6j>%/M_?2%]3E`\CC ܃9\8,Al\%e'u娵Yрe@1v^yǼ&D' `jj=@s ]>!TĨbanch(88TK² =;o%=A3ldujP<^KΡt5.( myWN2 lYGyb@mQ [8\ ܎<-R@0Y_@'l4 XytDqxQᴛD\=v&?D&mof<7 [ؽd-`aev?/ɳ f73 dmKw㢞pIHl.]Tz4!d.$;~XT$t 8"<̄[ԤA厶-Q4d ~ozA ;H|n ,oømmSa~f'险'δu+(ǥ iދ{^k 2=* XQM~ks Wyz!*ڐZg0!_=Jk};OV,,4V0U^~z!{ƒNdӈhհ֧܆=Ű*s6adU#Xxv *161ਐon6;qR`YcW_$+KUFXmj]  R0v1jiݴ t|\׌Ǵhp͈e\3_W+' 2J0k s)dC# ݨbesXȔy)9q)ًmK `᠍]NcjM@h>0i`G}銺>Wbm}!a(`<ٽ?.@ɣY/^.ɐZiH` 4R`mrO^ڠL|#J1d;F6~9Ŗ2ɚPCa]^s{b0S%B7lWAspV: ݴKŏv'B 7+00)Ԟ]i3yT:ɫ 46#ss7*@\ٳD?3D4Ct+ݏ<42ִ-k^"WvrFmtlӾR59 Dr[Pa2x 0'"tbZtrOlhUX0l']d񔔸PZ-u# _tuPQϸWUïg0j&PIe[HS (wH]Ⱦ6ƵikLy+_?{UVMP݌~m.*4uzʩ0 ~-0r?4lE$H>@I2EI4=/U 4տԚo85M3 @ ۪/L'hln㬐p-_TXl]ŹMt+ K}~REͨSB1,QX_#%{>=kk :|f$hۓ|n~78RHQ҉vE8X h'!m ߖeECVS3v(:o I¥ݦ>ݴ|xbbb(1UN8 #I] å"}K^ zz1sM>T AV"P8Vڒz"W3Th]A|ݱy^vm{ՖVM* VUL>wtV 2}rtz`ml иŊM %H7ܳlU碗NxpkyX&,چ JPISxb1}HUM->uAJ}cͶW`|bY60[ԈHlK@!YntsnO<nA~$L7CcϵCɌ kk_&~GNZPĨ CӽƾfbL1,R?Oͮ}9?W_Tfu;SfȓW).#άAZMDuLeg)r,ac::]?&}R"O9:{lf/)7"'ŷj[(~4&g @ݺvUV^R?SedoFnܢAh'Ãi`x:oSi)u<Pi.<ɐb9$t=XZ郏,l,KE4): L-cz:|89ߩɧ k>t>8k2W|/!mbt9UZ)pS+ DEQе3FδMB3Z͵i.IhF |sF6CLf]F>B"Ws*`~-%e;~V)Q*6 i#6]')7B2A*<0>AϜ/:>s|z XgdXZHۍ Nֽ5/PZUI8ց;*)W*'4ECč5=K7bKK0\^{|,u2̢*- X756嵺&0>qn^&(WpJP HD8ByP*yH`7?HCpjiY|{m&LH4MIS賰-tB$^nETRzMi[GN&ѕrP(5xKu><?S;3I`%f +zc>]\GNq0Oف(m }_)"KH{ƱθgE֔,kD,̸|.:d>'%S){SIlw7׌wF[~-WlOMylh$Oc UXWJ" @Ê^t8HAg)~*nݟG0odN!+/ԁln#]T}1mCY<8,KYLEap\iٰ2'. 60 sb"Xy.8!Z5R+} ̨xFF[CReJ i< R!ijߕvWO|.M*g׫ŞC!lI5!egKj b0{Z2O˗H߅iHAYX6@O :O/}iՠ4!0L^JLq^GM:sI`2EȠp{|5d(< ߶1bZT,=OX>Sϰjcc$R)P x d ռFy(CV7ֈA5ƒ*0MqFϔ5ۂ̍_x DԤ7 u> t@v,Rm5x&OE+>h 1k35ȴj9(>ƒ!C@ ;`%A*SEA%4 [v#KFJ}cŧk2{`@64Ƕs/.(ǃZMK-2X溜nΨpT }ج<`y)0 fl&us 6|@M&{C.=h/:kσF6گ֕U qWa$Hp/w ik˷ǡ::>L|(/cBXW5S*N}UP]ҡG-+| S(wX:L˥:[2*MPcK?Q0m]~HJD#\,T'̇5//76&c[lQpwŗ bV<;:%ႛ-iLցzgc̊ǹdi\R\Bv+ ,ģy45b e< !qAGOiz!Y$'g&nq`wl2Htm % ۡiuTڡ %IͨhapQo,9Q 3q⚼vV}z*NR+e;'h\k:3@z`Qggpb?Eݫ:e)vJ5G!37cMZffpX3&k"@NdO..&|WBS O)/TlܹOXWDt]1`bA p]b&qpZ\7\~b=m-ԏ_|t7Ew-.k!.GpS0n,U,%5 o}f !zݛ[S+A*իTY~k|* &|kx#nT’&]AQA%Ħ_|+gQ A񭍐? hERBKmtfmBRa'騐0,OFgB4.>::VYڢqa8yCEy Z#򅆘N;`@ܩVd[2ZQD5fuFߦA;%"rp`=Il&tGvnGrb|=GdHW_N2>~8l&DPg8 /PJ?>I*ns]XlrՁwe>i҂BRly5GP'_FZF$w[+ FP=;uca<84 hs`9[Uy5C}ky,r;,"6";JU{ L{DƋ.Fb뷛kB@QFs[5Bfn!҄ߪoFxq ̈_X=okB¿} ],]F%RC\7%Vė{}NʀT(e[VNUkƀ:;k?%6ĎflkQ ܋ f2X_G/}j$J Z"AW c7#P7a$xt5&>-s kDqꍵn"ھ'4zYp49F!C_4Ho6qKGjpq,_&y4 %l(3L#C~P-x?;Jɶ^QJiQ5ZMTԤgsqHIwK&9-3* *aLʬɱVENM7vGha=PŶ v՚ #a4飛9zO-g+q 7@XyTwϒs'p=eGxf3%Eoۇ$YPwӅMM^jBqs ʩj Y fhg'.X8m0'4g-7fp߸ƜrdpȒ=oΞRb/TRjpmo`z8c+Z!!>L{7]m<,_^~FdSﳟiUE2ʏm̄_MˉƅW4DNB cXK!cϑ@i+ 6Wږ= Sk)Sޜr2#Kt`]~]XUުoũ}y3Ӡ>b:i] "f+댅<D[Dm}bT@}chE'^нk8 Yfߵ>O=Z?oĴ0HJ!\بxHbol-E*0 L{i^Ec7*_TgR,M55Ey_gh9:# JҾ <0;;wqdTG@X {]6޽xî8.9x#dZYps0 `cg$P&`!VwUr{.M;a0ws߭GV5Ix@G۴߮}c>)cW1?Wʪ|hk{wxL_˂&[Lry 4ǧ0acbPXNQ BRCYs?j5p~L?A/%3HҬV\(D cLBzS('DxFxr^S ٮ\5bǶSw t!zhvg9Vxf!\)+f 0`~s熍*Lu|4<>KvW{8EFKF:;;:S?kPD_χ@ Pi1E0P9c.dzXyV>r7QHR;IJ yD=g 5Ge9Q"Q Z2Zʈ+/C)7[Xy#AVri 3[r}/&(Ea.Y~\dJ%]FWZY+f8aj ޹ I.ߺfm3v7g̯Z 9J{ȀpOr] ٚ@Rw߰ܩ1rXaK}|P^s-k Csdek퍦GB0M~ᥔ0|SWd`1zg! ߥ]Zqڵ+DƼGl1aq ۖ!NE|&Qذ}bVU]WD]* p1j.+@e0R9F̫K-?<,?R t3THKЄ5 ?vPLyD0V권oV!s;0:'C`d/|i#[Zhy!}d^/ ]MzE"`>d??yUAɰ,*_N&NP~g f:*̱&Iu9ӦP~vB>zdv70^BGqV>5ἨS~8061eq`#(,F*xV+T1>uH`&A>O s NK#19NZS^7`h]>bsT'>9\fate%Vin, 1[#wI܍)Ew0 Y?~·MjtqgC=fĤjWvT4+,b,=G֖N*=-CpYkNu%Vj}Yg5Q;Lڜ5i"ڋA Ji R2Iy3QƵ٧>"pmحزcTASrI;xU|-3[ԐwP ش $vjCAwnY(xd!PQ SY^*MeZNJ!ZѾ[;C7f~=5<]vޟ< &+ u, s W%,bB݄{l^9m!JJ1G`E{p5WWeCcZwr,M0YT:Zӥ#vSI `˛+[ON6| չa3aL5dwsl'BI{^aڙ.TAolc9:f@Ι:-7[.?lR ۳++R2ێfڅWG!`c,q֌z481Na&Nu^}iǪgNWe;ӣxDCYyMA57p T8KU-ʗ.&O ~Pp"JL:/va=.x[g0-z]e9HQ;lQ^KzZH5M'^*sGuȸedgkV&ث>,C ^fكTgsq0=Tieim%I0 TF\tJ̇ş5Œ (t kB2kxR#~D, f3IxW;DmnOd]V 4%a7Za(4=qGQ<Բ?}(!|<]#[IYK} `D26eՏ7nm{O#X KHsVOp+V3)jlEs X2v jrF 1^!>i NeFk?jkZgx\܂hD JBvZGuD;0q9w{xbMb-Y j~5BG~-0D*9䑾WiͼXȣF:SEqH;!LĔ|"/<+tQidq`y0{})q61Ƨ(u }+kGTLlW/:\Y 1")M{v|ITaFb7eI_n8ċ-F8-,:=嬬xQ[R_h%&߿[w7͜x5iG i&ɵJ#!7jW-;TC ]z(="^i5/CC:!C7G(ܬ={HW机?'/y4z=K;#pmMgGQR:6ڪԑ窕UAK ~lB ${N~ G%[:3I V.WI.6{ K!Ok`Y]_wre |;Il_n.T,}yo]"ݵ1/dL ~G|3"T2ƒo֟5ʲe.ܱ)H>{>S]p z|JaOkUaDf;O!ԏ@\]Jf\d6ˠ+! Zv3#HAM|z_t@G[ߗeު:h cDK r9衳=[HSRVq :TktZR@U(bW*Zz`Q7炫 ^X1 v U[r^$VDasIdry=zB( 5թΗ3} C7Y54 &AdVz78Av_/ҭLaYGG ^jXO3?PD^LXw0(}Uˣ[Ǫr,o%dRbazH'r(?USBN0bNV(.F_ )6eY C z d2!J-L顐,~y !89*zN:oDolZn^gsԆs Cw2qJX-7UD&s5!_t92ƽV~菴 8uXJ^I=DK<{wYT;ȨG&#k{hETE&,w޽m hsS _{O)%0ʊ`:a%S%{s^.L@E5̴cl 2h{lzQas }&YK[ Huн۸CީuYʕ,TϞ3}Q:D2P %tuS׈@'J~5 KVyzP;}dZhOQFaFI0@DI Ӄ3H_~T8fZ!Q/wEΔbήV# 9&6DAl+Nj6sVٚ$\7vc<;-Vaȟꞝɞнሮ) {?y{]Nц/ϤC8TS7.v1,s(:v4*bw.($ Db K*;021إQ0zi*w#Xn[ZRl$ܛ$Fz_t|E(ظK·Е±$P./$uX_OUN~ Au`%0hvj>T5'?^}S`M/N]QR!}MwsWdf&L|x'-, HcEf¤&um\]E"5Jņe'kۦ= wG,{J܊t'?6Lp;yPDR5Y@EQhH&!oWP'wmBqA Cc@x_ݖ22:7ʶO$/$(72QrļM<CSl83Uݬbr]}}rc o^ROذ\ۣM}ejKw_%uD|Y&">' j'LHUB}C) CZb"tn v[Y %PAz|;fRB鈩tSu*BϑsDsU7vx&a\+ h:%X؋n5]ǧ0chSOzqoBKfcWsaʕtrWzco홰ܻ.Egjj%*9#gC=p<ӝs7U^qZˬr=ݮsPsFۖ9v>BW#3! $NVZ =ЫM9ZӪbcГ,trD7 j2s,_DD]w^%h8S) [swL쳫/XcA߹C^pQZk}BQNrtǹxS1̮F< vUzlRVHԾV};7k~Nʂ? r !*|M?T].{'AKE"3eh~T Wu;LWwles]i q1ih7%0 is^Q a2w37'Ϳ5ckcn-3gVJ/N ȟq~av7eZGJ<恍\Be%S(3s_7>,v&O€)Qt53z p6 =lpxTĪFwy"D7qbKiKI` b~LO x'y1-&wIDg+[ט6\9;vv,: iW)mX;؋&\Rpfzg.|ۮkgrVm{1hWp:nc^nM\]he0~A59Q K}9D)'AIPa$+IDݘ\d^wD[LU 4Y>8AeN> 5#u\ЗvyN#% Lɣ[ZSjSO#AY`LӧwԽt8nN)Pfuo\w*M`mUgXsƣ_*`LJ+"^]\pQhfL{W enMẔ+Mց}Ucy .JՌv56(9\X p(O0 (Y8Q 3ZS0CͅzUzw0, %`֏~k2$揬",sE_OT{)VMIMtq)7cP jW}17:2WDh4,JB-H,@N0&5L m a鞷MG6>ٴ^:\h rs-iǘ`Y_ ,ockHHPp4SmE~p&${M`JCBΨ 4wHd 3)W)}Gty\qX;*ISgZ_&/G֝(F%֡ /Mʕdgʆx 0Wca^5,4bӱàxKeÜӴO1>#S-j(PBw[k'G: UyFG"=pyiT,Òʵh-ǎ$wT[DH .z vz=EiO|zBG%XCr1W"e\"^m:bE @mq'ۑ͡J^#og^c%<: ]A{MkMkW;Kl .B7MUլ8B֍#)<3`E;I,Q79:$7Ep>26x&E8⏟KP 8@ƹF1BgٌkY$2;zB _yi hrpDA*1\5gd#AF!uM7\_cؾe, 鱰Wv-(VMIԚ}k!RxdQv RWb$Pml+|(n {ʬPj9u341$5@=/') jax9Iȯ^hjdHCVQ%TS{s%g) q -'w?ң$_ ,Т#֔Lǽ7~Ψ_ˋz5kBW4T8#My\mh/ks9R۟ YMO뀥莦H] G);dwҧ(_x* $%DrK} `1f 邧S G6؂7ز($ CY}@:_L<(rI6gIPw3Ii\HWU^(j -/1Α4a-Jt]bڠ7Zx AmV/Ww$i5 "̶qǠ+)s:AV9_ˡ^@#R.YSez*d"#qػBU#Ga%._CxNwMBGeWd q-G@"-rvx.[ zS2nFݛ'%rsgUˢ ?|^U姯(p[tFTs[aAMh贲4wf$#K ?,!Y3BMf-Cؙt8qW;1BF ǩ8nV?3{!l`p( B]_sVLL2.V7~49uV(Qt rYb A50@U.꿝ê=:W=*qc=](}ӆg!?pvڎaGm:eqA;I,b9t ~1*co>9a tc3%l8+[ЂX9lx/7P,\})J Fm>N/v~)rPx-%]V(HJjM(f쭲ؑ.-s EU`e}N!f\A1F$1Uf-Y9q_ AhNɖV㲆eًDhq;2/G;*^YKۺڔ&K7# tkGWqM ƈ-B1i9+⍵7[$A]bd>oufr(ߠ=KF2  _q˄lx7AhR Vlm]OJچǻHue+Qme,1yƺft;I*IEмwpK|=4pOПl)S^_'\ORW~{LϛާjJx1 pS@>5cEwN+<6tq<>warq3kCvq_^%pD۵}<7blTD;_⣩{ȬA3}87/ @%;d3e/n-5U[BLIǨ=!1X 5g$b(im%rr/XTg/Ďv-HqM = Ƣ[5dԖ{ hWMVȾ_׾*vڎ_=Bpp(iUoXᣠhxѶFZɼ%δG+*zA yP`XK1ܨވAfmVW 8 y\ؕ brl mϳH<͉܂͊7ko (K#y,)"UGQwѯϸ{5YC_~KItqv<|0{޹V4 {߶y=OTq[L2|,ϲ還inveqas<7&1P|O;,euzI[A5;׏>"۱ v1\% zBeq^t t!yvT6&GqA.zk "_?yy #W+2ctz<)BA] q`$Nmx3rwq>& }zztz/~ʢS(S |T^DM=-]ѧI4/Q_uwnw,hDB\@0lrH]I%RAayq9c @-L{"بSM1Hh<MeAPCC*dˠ(6ӁY<޹DI'Vd*,RE[1Y[x~Y fK+FOHcsL:ykC]`ڶe:Uv$"8ୠk^,$}c) Q~N!b|!CoTooR gK%S@dhAkЗD>s+IM̙yC-$M̀ܜoFAK/.L:IV& K [O+ek7̢MJG枞ז,;qIl},1Y"4D9 K9bmlϧ'eaCL=75PxlIcV5 GB'vRv|3ޝÁiGۉYB{IvJ~q(vpmQeeCw#R 1aGXzXIQ=3YO&p5heR7?[y=J橰1C6ZR('H0F##prt2 [)no!Ԍ߃!A(8;6k0CN=P<6:V8a:zG%ف;9VXeS\t碑Rٓa4DmFۊg 4a={n#86\k+}uP><8痪!&N6*G$5u%N)^ _2Ʉc\{t!hK?V%(ԅ92x9a`viwDH6ݯCV^iv oc;{ ᛷӕn4R6 n,ڬi=yrjs>[јcݾEjk%oZR8O_wu9s*dRvP`WraHu%@@9TWj`았޲u,Y@~Rdh&VlY5N:jҲ㜰-11)£‘#}E 7E+w UP$sYhPʞLqT=>fnxN*59^Uoɠ>!v-pi|u*4Z5xfؽ?pLX oTD(8(5e'bu"]fsFZuYaWt<>V.Y EaY9[bsuueZW- a~lF T#jM"l_":;rhߪ FX)2䁝M\|6M'F9EzefbDi1zM=΀ =lP0R2c`7x*^<>_y?旈*>"mHA@t`D@@}/؋r8ײSQ\vq )- {Nz _`3AψfGtb7Km~pst `~ n}uk3QS1FveH%^Ls85l1;UlcI*zIHLGl7'˞<@(tÞmByסUgG!diܙDD3vc/u^2cCj┭MhTC wOv=H[_N|/=U1FV b/%(LH.kL $~$}%)#U\}-(2ě \g-yb8;n+`WK ٻw!_v֐Dyq\=I0uHx>{n["}yYghX%oVNțn&58SSUK'J툁H{x3#q6K{]cmI:S=\X%E 2伯eЛ([yNYDoZcGbFN'e.fޫԔ0NI+i{x*3zy42#Fg[G2‚jT` _ٚc e[X +q)Ѥ>@g_b甜Ӕ]/g'29=7L?XdChDErb=j)XbkUi C14Ku{7:>P';Q x֑]~Vωuesׁ6jtՠW.)Eh D yɥ%y\p@u}K\*L7+ȌOO'ѶՒ(_3WqΖm K7طכ1`HR1)P8{VԂ3H_OxRWJ0vg!K.!v FףJ oi A,Hw6軔zȍu!P~쪀>[t@3et>A&q4Yԥ,!&TT%&O{@)nsj'&mEyd}xy*Mװv{@Thcpgc|`t cxkL=4 aG3=/-;@ܾdV<5أ&e:WDJ/<х+hjM]),T 0Գ ɺx\+6'/,&҂S*xҰ{gը [7$𩮾D=KH W8,MMj{Au30z/KxAD K ={-H +!s>_Y/ &IF^Lu5w3!s[(drS5רw[MJyXaOPW Q,^S\t`5di=xKd-X_< 3KtS#SK|pcBp Dr68#$ εG',hL -6b+%T_+:2wTM4 {Ag]5l3V7}J)kM%mB<hc! j/B7 T#X;dTq1ȫ$}ΟDHF  ]o҅ Z|su\ P ,p>Nz -kts !)ߚAH0*KH_`P|^Ri9xJq&h(^R>h:S{Lwv]XA%DEۣc;!t1"Skny.×oJQ8(sے\RmeJg܌ϽM3yg2n6ke.Hr ͲEhMrA:|z|p<;esƧ =&Әu>q.Zȓ' AZRr!;ߵ,_Vtu97͡eh +WlwD;7<-UuOh$K’$bv l)n8 `1;ߺgyCBJ\iq_%Mt~ as]drCU_T\Ya_izv>''@?+QLX??Cf&|\mB)qp#RD*ҚQge26{U\JEZ4 ?rv*L:X&@]ų}83lI,,񳦯c*k)01+{@]:zͱXi!¬i܏nyŢșV@~nh/ڒ&I8F$1 ' yU] m`\+]d1Bt~Nh8)yym0:m kcVٿ~i R~uX,Od;Z,{Ne/OAi;'*>/X2dj\Ii|},)S)StکYH Ȓ]9X0u;DlgO>LtY'dq_Uh6/k+~&>9 Mm@F#7 Hdu|6!O'R5i+ kI(0(8@Rf{CM QXUYSŞl1_(d}Nq *]uS.8S =>g{nWvu5Ts1][NogFƢd{U##)gsMQf/9|E>wunbpKnV7:&w2F&罩9'}OlgV1dj́a!pw%0qFT**"6=[%z3-%AK_G08ȬVmF:$"[Gp;K}@򃳼B:|դ<ڊLHnd xR.%ZK-ƛ7@egKBH6_WJ;V|jisBB=w:@">8H9IL I(p'lj'd(Rvô}7T %!2E8cT.7B%֟9T] 4yÙ~GcMZ@ֈO6s.&*evCnҐ Ha*Z ^$6o䢪BE_DܭBGCPyL򹱚"\wz#In<7jӏ(\x_N1^y6C;/l11:,W78c1zpNc~KjaSRɥ|Z6ua+.DZczON{'V4D*ziKUW0˂"k  a2#FV`4z(\q&{dDFv4י`(sҳ߰لQ ~F*.Q! DAO!mmƫ /b┥UNY9Ub,s'$4*y 9lN&їzC}02"=B1#pp*VD@˩XO=DZ>7BBBR33 Z>5iGu~1g%S76 A#vHo}'J5(28hfk0}:ԣ*v,=a,r{@Un+٠2OaWQ9@C]/!DqBfK.*,>hҳJl!fygQcXߒmwT<_@Jr k$-cvDUCSiE &XX~CF<4ʎ5-i4hfb8a;:"}TM}F1ޘ:]؍)PJ"c*&GC@㷇tU }^^h[@OGdi.j|^bAyP 71]\'" t dH&a983꿢M J/ vQ ${oỐF3WȂrܛ7+vGl:.|[mD4?R~3\{__OJ'Ѩhy@L>Jig<0%ǪUwZ;خ)d8sKy@X]{*x 贆p8I&j9 V:2#G"|$ՃgQ}#RS u8;R6^>u{gn}_ ®$W8!*t(+L93O4<$t,&!ˌHQ'ɫ*ZoB -ӫo>9vH{RԖ_`0rkv\Xmk*RK YC~ -7Z*DP* 7.̷Ӥ2[28+ltِ b0bbd)6RU)+%NS״s FGtjrJ=HeUQD/N’l^T[G'_++R^(O298آ m|n΀ӏ~S} >O.X'?DB`[x;j d I`qi `T*t3BZt6!'Br342sj!V#c'ɐ2߰!Q}œ1֧,Aˍڑl uvSc`ؿ('}.G,HUòjGO>s[h` )n`"? PݟVi.䃟*GgpIԵ̇cܢ=O~W[A0JەOe)u&EJnb>Iz egFpxgK Yl <e9׹q쫻DEDK `7q,Q&vQ ZBcN>债KP,B/i厫-U]o "aI b{՘n (IC7 ^qRXiL_s p&4߁Ye i`RTՀvY~5gjxC=;n b$ ?tѪZj7{ʶ!8dS%}ԳR}4c'sjx{#dvưm_@C>ZbukirJr/9jM&W'=r/rC#erdöfۣnw4-0+mXD=d @ U4u@P_ږp n3v?QfYT~=#'\yV6`^W#EZr%/ϐHOCC;j;Ef?Do9DD!bv.!'+=yUl\EbW,Z:"i`wZiaBDpakePG=4D{A8A$З2 mw׌^L)$C c [( Ξjqˎlօ|m;y{' '{s9Yo_UlyN" 43ěFp.8Z`iBJp ? R 6 (C ]T^u@4Sgc4yN570{W dg_Plq $ !n"sňVC^6҅fbdS].{6,߅pV5o{}X%J !v Ii5!~~I STsrgk.>vj,J\0_& Wmg j˰|[.Hefa&psn>Z ZqgY&͹v33TVap4FM#}ꦢJ]q1DjO1pen>1Z~t!л^YkXj 1>sG0I̊J2ZʻLcFݏ}0V伞pHUfkrU`~b-.{9tPӜ9\saX/S$ǧ" MG7r< "=gNv!Qwē d_2nqIzx!)'Z1/2Has~3b[$uc4!3nv˸M'+6ǩ=NaX55Z뢑% *"V Ak,ʴS/17GХ׍Y7̝ёՄ]E&Ņ>#d޶1cϩi_oU}8as4ߵ92nǯQ$F8Qx*@Pgu$h@9Ev]u*/7nR"t{R?^Yat5ϻ'f Iem}BNmB[=n[S4x w{i"@f! gF"u! \ wcp#1vQH14ZEԾrb#g_;%TA1w<:<)nq4OOV{ɼ^v$^"[*c]6,̲^o8iڈ8ۤT6DU$ ;/QYit}/cy~/c%S+Ͷug}@JqiďoY7-:ea%%Zx#l{e&T=sޙL/QL9 #Aӷ߷19iU9][al8S։=IO@0 | pլ\x5@ӉFT<12>~ܕti@`۬Ș@ %N FxOc&?~ HKH}EHS3eRo]vlV|R hrJqU%mH܃'ףjl_o,3Fɒr)6f_T *0{kAxUg9-]vP' t|\5(S0Ouް0ak2vwb #D`SJ~~uFffBi:p\h=}_2e'w*n-Ԍ 7̗٥U0yBbUS#)3OOo6LB~KA4L PUH0b[ɴP1V>)mBk, .sK,0<֮Og5,=Sjz{`V@fOQV ߲{dBk X+z~"`u.ʝ||2ߪZ,4u"nGGNku?ĸ/jIfcB!WP/8*ISlR{(ݑt֋ś b::ڌ(Jfp;e<}>6W44&#F:+]K)<?9n6rMH5suYvk ފ_; {'L?Kp$;4O<8vP̷O af(^rϵcֻ5EV5±2e+&`rzgVG2&3`] !dٍOIęnGb[w (bQ”42P*N=j@QI=Cv\_3ukpul ?E!OВj,qM)Y)ٺyޔʰ6H1П^t'<;H;)(2ҵBQeB}we0M,dG@|s? @p4*lp? n;HW@,ܐ)5Y$JmK: SvlXSvg=EActԝ)Tx?t͈0*sg7_dXk7HA>gͧ~Kq]X8^c|Jcu1F,Z3hp:MME *d|g)m7~}Oz2#X%hͮY9Ym6o7bQr='?93 \džC_2B\NhϗA)T_H5S2;k{t_h @[2/'sn 5XoiO <Y̰J;';8۷#99((ql3€~TC}F=J Ɇ>683I!en!k:H遠C-eWGir ,ltWE:&"izO֬ ܥL.Sdi) we6PEM-24ߟŊPhTЯK]b߹w5iLusb'?;q1;ڒո7g]S8/9v9077Bߓ=Nv;i(Էn D9G8j`CL596z˾DqJ}'7Հ˘&k;("j`xdXeqUD-0CCNEa8O,! g2-g7-(، (^'Qm 34 Džo:o\i ת´+g`A+:sX'Q)gೲ|b: 2!?ض0~A7 7^/odO#kyרdECb ƸvuD $2Ja J`؃`ӏٮ~=3~mEUΘXˀ{5.RӆZć2n>>HkJwL>Hگ1y l~A>J𞺖D`dpApXJ'x497V?ZwgLDί'LS~E"|~IedD|$KS4H51*L[C+^M,5)ywgOJj#T FXq! `*פeE.ȅVdP#&[ CFCA_qy2ˆ6x:j YJyj4EVUH7G'সxM#wܸ!􌳹v9y(5~S ԉױ/yrb5OAWC 镩iSJ3VMesT`FOM}婒 تpx>f=FDI_j;bCy)=| BSGԾX'`n2d}/K#uN֬t3h.7h]9Z'vF)YZKHeI󃷼nwF>6ͧQY&:j煤EJ85a![뒾tyIjK*mbO1N˸<{\j=L{i{yBssuFw ο"?e 'W4 E']⬓6n~ފu` 7'5s)3 aױd;1Nսd)hqP| LdZ IN#=ԓPnP6*XqJ}9@촍;7:c3[5#Ghc٬30 =@&!WY?Ibt"\z X3޶Czp3,kjn2]٣Xi=i\:p*VLJ rxX* ?`Se Xز лfa^k/LxHhԫX9TH !=z.EW[Ja*4伍;8L '$ FeJR=|5MH6` `7" 2>'T9nۈYHR}OY^/J vNno R36/粄ڐ)׷tY^ seIĈ F2*f%jZ8`f4DRYB܈-KMSl/SqT}݄OCzxs+y[ |L{ S BZ|3S\{7ɭE|TVz}7.Kк5mK$6i1* "TaKuogHwbLJj@E RB ΃E-"տ&lɸ :%AUvxp[tbʼn~(Gn+B4ͲF~t=cɚ? x=X{7&W 6⭨'ZH@짤fՊN/1QC.zNľȟhK"t] q+1dyn[XutdƳiv3;n%ʴ4.X/ZdVr$v51ms5]x/;9]fMTu0+YǞF^OBC2V{jԄh$:]qR%u Ƅ^_R9&ЌyY@0O4M  e4J dfÜE#φj3dP`f͘*X=VNG@$HbFw˞H-ƭpU'\=,WIr(I}/zz QlM-i8рfjCu~K$J37Cs &>pO";QIs= ,PI- ĥ/q5^N?16!ͥT.ضaf z("LR !7A}Q\bm1`t ^Ci#3|v*Wd渘+kyZT,x*Ɣց dҖ|+4mCu(g$- >,h}=6&%Xe,p h<<Õb^Y5x~\U[ 0OXVs C,(:HPiGKyL1Fg +ކxf~.YQ1@ZOꔁ$n{H$ ir#ur䜲]傱 V9K5J^vFTڀR\ pc\dǍ0G+u)MD"|*Py<Qw=;v#5G14z.'*LrmϢ %ZWgm^3·PKne'jcҷw<$r@cYoz*:882qiVv]$uaQL# Pb8!.B1.!PTl{ؕ~{TR*`U-ӱ {t{%9ǦHĽӬ3Sq()os/D\_oA_A8n[\7aHM7l.Uh`NJCCн0qwD4ݽ:_Uzn9p ;_PWU\'}'#t%@g)l|<2 Tccw(T9Ԉ;V!Z_8`?T+׶!3rե$8MHz':A7_1)P{$*֗Vl-*K".' gEdq IiN Ohu̦c/J7sHV9͕a'laa7gm%KTBOΩ["gWk %siMz.mϯ$i?@&=z;wІ&s :L\~~3n@6| $ȃ^VCYKS`=kX+NG3GFC,>x %"> '+}?GQtyY%^, 4j< +![S\7bqz:؋~-Bc=EYuxnU#Nl>on9Da(e]'s[ (26D*Sewfj?|_#tw]ȲB_\;~7kfܣrqaؚ9Ҋ>LG-,ZU8>fPn京^:Bz:J?S( //B tTu׉k7)ڢP[A+WM;?7%s[hhC$9Ќ~^"Cxt(Ƅ9Mh;dPe&) KWVAw?a|mn4=ԊU7;}nВ4)o4P Ca\ӸO",r?-}qʮja@8k<Y 1 -O?cd*l z851([e·yӥgjСP U(%TJdRj :kz1rcR LfP6Cl*sbC D\(ل)E2#tSa\~)8Tm ݊̔#B]KN ]&p+1ڣ:V|F% Sh--MAIdJp ݱ8aт|셏E_Co4ޛwLs#,9o>SmA)T*Jv|tgD@=$X,L/Z?W澤} 7;\rޝߖ|ܢoUی-\Ӑ*$~&ՠj8ݽ Z |8f :ޝ3+Uv?0aUA?Y+}04lo6mCtcT:iӜ(7 d53w!Ƙ&lU6s B F \ȉ! q)^:[?ֿ1m j&h:K)i__Comp_~~އ Ǭl %?bw9'5xQ m eiM\uKU7< ^Ĵhxx~wC̄s j?bn)mT@m2K30A!He%zC`F8KM(>H&_sf iEA^ pLA3щo7.fNMMZ]/nFZB TZ@Q|W*A+ŔժO#WH]J/O,4P:НhO,IF +JG:EmER,,diEOq~7f)n]5/|9G֒2K l~om~*kpz[6La%:yM2=P Mo d(Mm)'ck-ooYR1S |n:Z)41-x/_[cͯY LCEDKnN t1R2C]XasMn#.6Nn( f"8^"|c|ܣ M:⇃(wb ObΦ6ZԙBF,5Yb՜%՝Vv8-2eBslvŝR_$86J ,D cV>Gpn^Í!uP{l |(ggYGbt$"Zj *:z_qpkx_5LO6taM624qzbg~@YXV_vv=[Y,rZ$t+ 2g Vg>4bIMZș $Ȳw2D"arJWP ɭ5? ?\v#ȆS` Bthw+RsoZ85 :c۬4@iAU:{>j`̀ڍ1~E`.N(9>L0@Aj4ӍǤy\v"w8[!zL<:5̣`Fu_#7ɵFч(*`.L+U`)+YsglZ:'SGy1-$zs -5Cܨ uz\>ZK8YK[{ގ + r偞Zm4I, v:)ȟC!JijFT%p[>֐59JOMA A\E` ZB0פ 13h!* տYy@'fMeT~5OI[J,)aM~? oݥC=%)@A#B ,hhEDk#ym{ulO\<ƭfoT:t6ڞryI3tPGhճC^jS :&'Yf-s8)=:%xC99qUnYǀ]^ L*W1 TntwGG44q.-}ʀBVحqQp.C6tr HΉqmҴR+$UKOκ b?К8ID:~[ZC$B=ȼ LM`Coܮ;6cdkTϧtaWtnq|P|>W`E 0qn ?##tAyY 4=hůWץ I~ܪR'ѱcYU4-\{GОWe&krDHI+8;Hd y seHy?w{RUANlhAx7!9Ūna}J*3Oa 9R\A` GȝjwvaH߰_PV-ßx;k> qAdPi9pe}` IA~Y폖1o+)jgvz.bCE-`/?R`۳~k4 eTFRrVIU'XY4PV Ѻ1TeJ@}C ɖT6页:vww3S; šm=A-{s 6CJCg$߉=`XťJ̞Zc 0WXO'mHڑ1M h)G [mВ5!1X')4eN ~_+y4Ъ1= c: ~"ffuu&h#TBt(OfGJ>YCEdZ$ȶ~L\ 4Exa.o $:v x_3T,n賍a`\Up6bL zDNA1XY|"8kEh1(apgT5jS`ރ/U;$00,\z]vh8^Zm:HJVFQİI!givCm ]g &O+9 : lM<F9B">˘zy?!D!5P@B9̔].5]bhcNtK4A2=bۍzi0z*"]}@1k{[<"GNzz:̷ h%0svexP+x϶@XVFzؗ\e$JWOK/@[2y/bI74ѳLe wNw|%y$qqw#}|vNTWU6ZǙ˝rwnQ m磵:h/5ݎ &t?>)f`QEqb[`\! !=C:qAxtg]4ƣN8c9:OmJ|r*$Oz%PJA 4fklogv\x擧RDy1M rƍ9fzFn0 GF=$-htWR"s5TI/Su3#z x6.Pq/AN쵟 #Ipb<&~w<:0r\^՝:iFAP(4Jץ8ڇ5ou1(5axv'ɕ@lkud} v_I8y|n+^Dé Q1rayw^;72ZǞ}dU(ZLY(h$7:KC#EQ!GX?aa9gKˡzA+ &:aOkSZf^@? 3)Op5Qbp.2z$Lӧp᳷FVЉ*kT׃Z$fxa?E,v6}dd mlȻ´*{Q>,WۏEM=L?K.rD'8+g,T<-O/?_d~J@ u)=7ij&X>V*re"@:Ĩٯe5SmQs*>Ʉ5"@Eq HC)s߮bIiF$<*Daaa9[)H-e#ѮA!]H3O"]B, jw". sO* ZR~bq6!m0!>3o I7).YֹHJfIB8Xh gKԆZM>pjآ<(k<.KZ>;#i$]Fmbg1TXbaQF#Ko&'YnǠaϫc+}g8? B3~ >",HqdG7"cZ1qs5_s6l^Ͱ?gEe̚9EKa%V0\uШz'.걦â"~0"c-\7: WWJ阢}`jVN+,pQeCwսN x}X6'aM0k vGC$+{RwG0c=l G˃O׸б()Swݕ;p1>ї[.oVhRk;s}%s;dؿq(b7Rw0/Y*Nŋ!rDZL.ưQ)\M2h)M/^ԴvA ̻Fp+ul\6RWfOAn14.JM@Wq#(6tO%\X9K4c-6J+EuzL؄\`3f#:r2@brHQ3cbR^-Z42ʽ ) 얉2',A> -?h: Xg'<21HO(*sτX Mc+h<X8'4fD4t*ߟkdUy.GA 6bwFJ.xhuG+sg 6E$<,O,h'9vo g_QjZBixџ3W'n SY(JCqق%1/Ƚq=Ty |]RˍdUCјRY/q4$ ';w|~^hЂz","v<teYe=?U:kmp\+cp1֤gVJʇGh;tϢ_OP%&gѼb08YU&!93A6Ǭ[iL]-17G'cp*e\/9K ja2ykTf#S  ik*{8sӟ5W"FIb-PCaӠ#򫬼^ >uFL4&|T,`X"7'pX9n}sn-ogqoW~D%q=En<遫.^\.`ͷRP9\_P%Ac LK-z]O9Q[ b㼊/[4y>phTʐ B+L>c>K!M &e*WQab#2ck ަś1*G-!|qh,Pv'Nهw ?OWe%nrdnoH[g>8sD6KuDWSߙH7٬NdX]NƷbO.-]yBuЂmeRmrُգ5*d0Fr7R'-$:t0a#9M}zU*UtROntnQ vEo>F J g I+6 Aш6!2@MwU{Vz\DyqbYn}y2n_VI}cWjۛZ -wn"KSʯ~ºH9 衘H^=7S*UVKs7u~^EM ˋ:x ۄ7a !)GK趫) JӋYdQu@>-7tD+$# ǁR4uӻ5|un} ~ǔW$/1[,AȴE^ |d=f„ r؎kONDIҙd oy#&@|D[o% W{WrL/ h!Z8[#3ҧH8'o":ŀ9H-"'DMa;͋iҊ0+'gIpbp@KaO eؤ>WB>M10 %1/f>ŐlާSԦk% Y-x"TqW1#]Ge /.f;^XJCs eE͠ǟ84VdKI kgߔup@R θ68%vI~n TE">lv٩2p ]{ RP1` dtPa7p5B83l*4LrFKO& cl%z72[Yd Zi&R1M-AG+]qS\q*Ъ#t Wt;k?93@]Ѓ7Y'lXeSۗǑ* vTV~]ƫD|cw-)1y,Zh"ӎ=c@Gq~CXZfMO"<U Hɧ}(`y힨2, Qe84WeЬn(;+^߅1*Lx xzl6=@ZWN6ziE$p#H9}; v9~ 8 ׸~7JnMnČ0ҍKs %YԠQtJ[n>Ir/gg.bot9Lt1.4Dl:h^6n[~{,k{+>7-V1@'4=|yJ0*1ivw*!QSV*CB:c-~6[sh=tx[T.miVR$,sΎYc2.ģxЃQxV$PbӒxI|bF6꧜jj`0%Yj̾97ciodjuIכֿk7m;3%ysuC7߸}lv16W yP/U MYӦ\T~2.c(e:u]AverjxzK!Aó!<Lٽ҄`P cecgYJ7B_gbiڳwQ忷i^z7^p߈ \NL&gɐ)>E19hp]㼏<,QA˲萌aƆ{;`6Myb?ق{e6|NO(\2+Q.vGdFRR?I,=ѣMGGI[|pAGZۧƣ%ª'.#<˞֏ktqN+!-Aiw n",},Q|;#sbOk,ߔK>{".1W#yT@N2{t~';CtT۔5Ab]E Q+*zw$VOIGrp( 4|MvsaVDh%&OUu?#S%窄 0pXՄ]~Dޙ6tvx+ *$F}_~Ji8Z4q XՠJЌ,CiV 8RKG&.+{PՔq)኎FT'=PoDqSlYֵoRX39dXB}PnsH-ڣ[3t;cGm)eWin?OEU.G^iok}>]pg<Fj"dΓ@ I|:b=Pqbe2 Kɰ' ]"q_lfgoP6K±Y*iwPܞ=K[f:97[ۻJRxc(kvaBTh4O7. +Wa{)7*Ŏ*} u],'cͅxu#4 1F.pD눳>#_t+KϮSn`7tDdRLϽ~h =gr d:%Xuj}|LF`faVu`'9$JHuQLOKŒS:E1w%IqSt T%doHf$3 G<6 R< }Gd4n͑3Q nzф<$2Mn`_='ow|m ;זAFk2% 4`$K">:$q',& S8\G3[ZUM]Q=Cj~">r|k>$7 L/ޏ 2miK (e\k ?(F1g߲tl;y_Wv^E3_s&܀(M3CIƶSo4 @ ,C#LҎAtQb4z~zi!-{켚V~F-1> ʦktD6:̰.]9>}mF%iT늘GbG^ !XO٨o>%ZoCZf'Sj/; U><5-(v]z4bNDӏtp̈́_F?@- rM7uтbk[~b6Nyym{G*'3[}VDzvU-9ߖe1/LZW /8tJp`Bm1);«x(i>T4ov #2 ٹPxk$yJ-Gpf>YFIu௯^=N,$> N [oL'evF714fURI}!bH^>+W56zŽo9o)TT5 Zh-D]#r9^2azDŏ}>jyȝDZa]$ ƶr([(ǮDƈN\/e"IiGSY9kOUd[ggaL?B vJiRvfǍcCמ&qi&]ar1ӤԈT,AI)E ~+#j%h ,>X#MTA;"7{:|ɩ6s Q7( 9:R\D?ڡ.+Fi6M(Bf\4žH=+n*zHoޕ &<8b5[p.cWĔ.tY ̶/mߕ$K̻.2FY]׿HW{x);꽪aM+U~I1 \HB2 8Rf˕n=E{>=η(oڐMoTLα L*_x]qfu_IE5T G]l'cj.Ѫٚi(,5?Gxn2ګ[)E`Bşc54g.>k]S]7J\%vh˶o6[I'jj,Pme ~"'R>d!׾ zƷzD|魘V,~IeQIH4t*oJW.}_( TŒs ?-4^/ WiV6Іkn@ON"DO*Ҿ3#4Gr77 *T#50ރc2QC8都G}pDcPIb4ĜLJoV"1EF ZɁȔ:>kܾ 1/ TWfӛGm%Mko]oy,BI mRT2$9 o);Ql94yHMdvqB&ٟ OiqXův ^$HOk7lN>NT1bdMfej= >:`~b@6Bx4Avͮ4S}j\!ǚfІ=<)}^lvԍ3}&s6~dŪ=¿'7tW XfЪ'.Ҧ& '\jp}NU0.Yn7'pӕ{.2@tsrI6S%i [GT*.3gd D;{01tX_)b^{]7(c@3ƚ2G#١ KNlB9/|.IT} g>(w(6J3M6h^’rQٵCO tSYKt߯rt|0ES!)ُDvtnڮ[BS7ϷAa5`lg'TJuiYvdqf>߰2q@:FRםӰ̩QF`J8zPG> GtIO'o6pI$De3 )U\SfW HXYQ!ecKnSIeC],Y3S1즿V|JZFL!h?ޞp9Oؗ8)[D ك~@PiUDu;m+jA3w@33ή@/sUsW$Ճ?dȇy;+}ۇ "9(qu>U ]FxCVu3*xʈʻ}-ŶAvb:C (\=LRn=N*E@2'FDys$Ms =2wH)C[(&2cs~izG*2VgUHi"$q2 >t yvD1Fa>~P[2a+pv f !'(1W:[d@;~׮|0O>f,{#G7 iєwuȻB! MVϺߙxa"Il<:&JP °Qs$lP,q0\}k~\ ҫKlWO,11nO;Y;goZYo& 2N&4[ؓtgŞ0< y*Gԃ@N}-NSKKFcX\|چ퉳.kV6g&j\i2%Of;.j'V|֖ mwi8ea;k#ޏ7Hq,^뇩:f[R~vVμ.Ў\ޏVSqpu'i'k.} YI^w!LS~?Ăُ`暔!~~)j *#٬0UI`3@6 Yn'դ6kJ {,I$ozNX^/[{B->gY Z.P`3QP$}J,rÆn*"+݌y֏Tհg]bdB?o%OkZi||4]Gi߻8r'P*5 W01n[yu?aqʞ:DPF2ufa5+=:Qgr.iMm/dg' ݰ| h4_=փŰ# wD{k,C*9@裱}_ `l j1La5E95nBi!y 3 .S3\ez@G+9Ij' &;؂rruǝZ. tWFf`S,\_w!"d ( ب|9fP }<R'TX=QR!nݩ~zkOM[ak)GSřG $g"yE_/tFA i@s aU<㾑e+Ԯȴ3]a@rL+)У! 0f />L<6 ' Jvr̗Dg?U<\vd8(P<2o"e7: #3a+̎& nQ;Uvwݪ}Q!U[)8osjV^l,f$R*dڦkhGK ȫʡj?M6I*^qy}DYpQ^ճ1s[!*-<ߡ'>M)E*PQx K>J떂iAb |qYuB]YnujʮJ8+eFbӗ4RI`; g th \슢f}UVBnz,5}|olɊ49Z/[%| І*QK=L/vP[)A-/?;bn[D HΝf3Mz$3*YrJzc/KgK/vኵm6Tۅ>Lν!_sU`djtG {FWSӉ0/~ Z'TïO3<}lĤc[~Ku9@Bv :=* ["C 1kRi8F>o17q_6r5}%#qX39Q l*M^rLl@*ǁ$x_A_AϚop\*J]aPXpqFEN˶]. |0:Hzj{h(XMqWrvDu|κ.ɍf+h(1$Lzfi$  2WlkpUd!X+nX"zȀ߿:iQ1Ҋ*S@-5i#@)Stm-ELނ6FW ۟I,a ^_>C< ek9܍(Cۨ{l ס#,ih~9 uĭ-?g'aB18QKRdΨ GQ9&}{)ª5s,krѦȽx[y0光/耵]7 D@5&I=sbkNAx clvK%w#b]c?/[ m.\nKМ{ [HA\W0a2p8n\8W xOMj`^xuiBr 21L%Ņ{] mq^jev:j}'Esj4*6IQxy'-w=Z\sB~b2lŒi)yftي5 Dj~@"*ٙu{D/4Gbp]Vʏ nP~ rpFphclvqEa^{.Yq;kh@S; ÄXYƗY;?eV Èh*?B;:X,zam*dKJen% /l! 2h%.Lm~ͣi(wM;Oae !Š8'x*z?t=qj)t9nouG= V&sSt viB<< 죸ē~è}%Y~DZ~\HW\$DH9f` 3Ki!` Q/9OIJ.6ܘ OmDc0b|dޡ2|y4YNn)){b}FN^%8xg`8_髬`v߃@b<%ȘNMR>Mы UT6qT¥m(4\_iSDA3YRPjDf=+PztEGRkBl0܍q :{s'9Ma?+@;:AVCVj/jtAz$k'ojIy,8`zG +>ׁ0v5 k9Zum$mOZf*(:KQ Ҋ [19P~Py_lJF@ hk=Vꪳ-hϼ/M}?#ߖ;PW? omvझPҦd}T(%׳YLgGrWNߜ*Кwt~w:MaZj{dMHfJ9R#4} Q0%ZX yb^WZ8z)uu}a׺6T1\rLycA0 GԳ͌ Im98N] R_n}*")!٬6EdgMd4`= ;+NlVg(ydaXXg`%kwRN/a.ݬ33v{Cm\Lezzt}ܢ qS$.4Il oX"`~Y273!~LY*˝aMh`W"r0']EuV9qw;~ 7pҮyq!ZƵÍ7 1+L5`DC <˓Jt)^R]tr<<(U ,nK4|j"-,DZdWdc16j{ơV7S*)$CJGٷ+ݓArPՈnZQwMW]ՋJ5Sώ_*oɚQwzq_1?XU@*9ak͐6#ϝ8nYF{-:nh:F4Lht9Ot^E|4&^3׾?@2~]>!_u;B?՚NXGtԢ.(t ys*TI~C1r#&c%YcE?H`ZJ^ѳ(}9{Somd)^=qtM(pqEbFQ%;\8m]/^C_)֘z7Oy+:؃6~sᩂH8gV/LktVnKa.ZD@X]%1+(SEw3b2ڰ9ؐWaHrgגYDVg9j/C .U;&'}$ZaYJIʰ!0)#D9;U"d}ͪ|کD*),Y#u$Je pKGvdc x\Uggî,/3^bC wBfJ0ajN_G-RC~+;@_){$mlpgL79K4?A i%,cwmW>|~&+,MƋ;#MD6`1DaPCXD1?077Ͽq➺ZA9mHHk*TLj"ώu" QY akXkZb'("=['H+3dňpX ,Ot{jlrrv%&۞Wqe;F<!Ю qhwv`h(hE3+8;eHb>t&MSahx$>#NBLo6r/!ɿi!?u7_,VP׈as;okJV|eo 4u+^uBE(J}{3`*ܝvd( z=DçzݶEmdBHyo:4=jƫifӽrR1F q_UjO:?bKGM`.I2S(=yTXoӯMc"{-T<DgwOgM}NSMr(i9WfvmLY8T&s b ^N_Y!>9$[h~()A.O0T"WKT/CI֝)O6}c'_8D"=2>v}D_#ax :=u( ŶcO2 o\g_K159 U `]yFɷy7f+Z/%|l~a] ίrGWݬO>IS6Ť#C *W)8l$Τ΁F:W ,ױl$G[QpV[I WG9R.yj-5r|PjP5,"130DBl :e>za=H vqgѰNcSѻMN'ps9 4b>6nխ09AFSn2eAOi N!udb޵1d@ƕM0bSj d(%@L U1?ޮ"YjyuuA>2 9=~RY?,@/gZR -sE3aH'@!L@(dmm H;02hD,BCf]qj<9W xk+%8*0z}A<6&[>X;.K7DS5Uoj`ZQzfD_]j¦$&xF[Hv*(^ݠ⛧|le áWgӊ!@X{ 6eW"OcTMSNsp p}g[CPrlMZPfxC# R굓-bb.ܚ@Ŧ/MO /$\˾#⛳L_;b!M*`3( vxIuL  -VP`j}{Y!#>Ma͝g`s8R6Q t52 Rb0vЫ&(G7/ř9(#l7xV~i3C;mR LdpiP.&9g:R[[߹ ;E{n9OwijK}5Qu6 YEKLܺh`_yM<0Zn:(qpxI 4v#GGuwQi,BI|cڕ@1܋\52ņ2`4 zX2`hq. iRˋ]ԕ)ȖG2?NY,TԞ=Eo ,ۓ#Fl;՟Q& 4_DfΗ? j֏+)E9#(_ym"v&F KAՔ2ysH9Mo¥&X&&/28*¤qM;!&܀jęQݗB1Xm]h [1hR)P'S a-S9'R8Ɖfb*Pjz-V@}. i2^|hTsPD(iLJ@Q)h]xZXijW_qG7."^&f 忴gyuDؒD!c%S ݦ mi\(mT"en}훡}顡@;]H>m(*)ѢW{IcssFPPΞZiɟ+[-uXϲ(eo=$xq)ªxhsQQ^8#NS:2ƛ)&\-#WI@WI'#8uϖVVk/alĐ-{,!ПQ}c>jYdSzfPB[!O0 +a|֞qCQ4OIf%; kp!677PΙ+zǜG3|,VJDdT674ckc]  u51VA-A:C`E=yuXvεtD~ʬxjld9hk q^|1ܟc@{ەsrZJNuGgb͊ c:Jj !\q.5 oXF[\RW‰0\;;Kk=q7/q&2C)^k<˼_1 tXuSNC(4̜x=~_1oFCFFaX#ڮ*G]4jNVFtIuH[]:QM94춿L@cJ06a[Lɓ?LbkFTB !G\ptGQ5Hl:@$ Ix)v?fWl6rhYsMAVG0;kF:ekHg@&7.a.a^9k+ QwC™W)u:pM}ĆJ&ncftpZЏa񚸤i'>eM; ݄ )ifȍRwgt~y<[{TBPga.Pkieq>!/JVr(W@Rطnm۟*[ldغX,cKA#2k6瞳H^(nc@5#Do>)H:Q͠keui'o?@1n FQ[Z(5>$oK=Wu W㮴5'#cLqmyK3=YS SpZ p2GeE洦{Qbo L)'^sנNBQN֦597S6j$ /?vw/u6=h`T:Ffnf9.k1~nzj]#lM=ҋfP} 1brK1m\-^`_/WNuc qzXW5ER xE+6'ϫ:?LF*tH V-`G'1, Nq^"w´:O~6k[o.RWQ_r;csu]('J#46\aOArtH==GWEO1GH!v#û[*TH*keO8l#=3v/lhP)oFuhՄJ~5ixl&w?2I,tS/aYG?P2Ќ ң̱O;~nLfqZrQТZ7GSN_{r(<)RHqj{uh ՞XtuŜ?4'`48*tHbYHeBpL–qUr G8quCcbP_Ԣ~;]U6%r6zytR6Y`QÆ@ lkOHUrۀi׫?NJM5s :oauo7Lvsorʑ&;$Snv گ(9I5Smq*;[c0qvbbJ1= 'J}[5Wɬ vɎ[yE&4:wp:%r?qu5B_zG[_`w%u^.TC7`# tB 6،s@ Qpux 9 uޗY-Hz"ۧ`DI EdrK :/lU%px[]v(r[(D6뫄x1,g #wy?v䁄_S@\$U[. Q^;~!Di*t p O }Zf|}Iku-9?<+Ǐ] ]Rkmt6#e-X@9{3l^k9<7:nKhT壪߻Q 0:IdQV#,{'8LXL{|A..E|<6rXb%j(#,߯/ciXW j[A؟#"y'Go2͒<{J&f0nINv>q6@^A.lmP*| rDԫ?oK!GÄI05t180<'ke #hC;u#aw:@*ͬ^ԅM_‚C?l7%fl\``}r)1EQj&?nH?w]7AwsYqxcr7$"P^/1Bz}b,ث_)eO3e=x笱RCT!ޫk*#^-&\t 잫E`ش^"?HH+S|Gբql%w}V\ܶ+#Q;*dmK;*TJ,_j\l@QC%6׻#>lS.{py>&.<Ӿ-OM)Kb)k< ܵl4|)P E3`ݐجXݵrs0ZT*we^!Af"M"D5IAIݣʣnd>!B:cxD嶰:5''ɮH*cdR>2Կ^;HԺH\G`ϐ]7!2/^-6 U*}*BJF+Fwe[+ֆɾvjJd=AW>,o8H}d2AS~AeF 2 \%-sakLxG5?fE.Y@UJ/"~o); G_˒cQj|-Eqv+!^ԍU?=?d4GIѦO$ acΝ1%(1i Ե KP(JKl`:Kbۼ";"Q¡P@RʕYN;T}+@zbT77VWIpXI/YY!TB~.㦸`JMԌ4& \`͢ף<f,aNc.mr&"c ymC0%uoGAi LX'k`#jYrt'|夊͘PSW-{y1*'W;#abcU(e>S~]̵=`:dg wu "̫9̸a}]3Q/Y~}37`\6a`4# t@zqroKN{a!AUDQbq78^b"2&h"+ÈE:PJS6it8btjl,MLx"|{v m"ODrrgHBփ2- 4z92*ƙkYI4B2HL\)8GR3Ƒ> 1Y06 $Xx!4H\HM/Oϙs^~iv=,LJ0iVi+))^\.CLo AVP0UZʴЦCm9u+OK>wfW6աUGy5wW5L8'ghK750Gu5R3e3< L_첤@I!,H輆ls2!e:a)tNQER7 ̉u3bcuh߻4d2oz=fHTqoCW`Zu zY*B0sV ?5ap0L2hS[G_j ghR -64 qwc;>i:N&إV_8MG;g֥m+DzseKH9q>I-cvzٶ5;FQ"7T,{9 BWt6GCeoE,csV2|nw\=ĄO秧r?QgؔyZzkX.*H(~ٹ=(3%'Cij anFHAD2nr%~YnI&/Z̻6t(7+ m2g7Q9't3IZ{_9ېWtAɝC-ەz/Ņ&sZ6c Ll?=nGH2;%8*zHߐ05/+GzT[k$Zdeiv`ey2FQS☽-"\gt^A ɏRyo0Rsx5%cEQrְ8"E3s /98.O}UE)0P˻ ~'r q|++EfFgp~bwҢ."Sx:3H-Z~h+:\MρԳ,u7 ID553KoS@VK]mZ]^=/Plܔ'bD1.NɍZeX/FTB'sY{\CXƋҺU+)(<Pdrorޅ١Zi,BH@c,t sVhٽNkňW4ܱ#U4~Q aK5R # U$2#d2WYSikgfzj Vmɬ'd g9U՝q>{ߺ읾a]+RkPj\dRz!j%A)KAQ [lro jN#nհo|G9|c)&`ߤ.gNy~LFS2aJtoXfhw bG6E/Spfcclluw\֔A%e>XԂf8{,.Z(qvV^߽@'Θc2h;E8핅_SģGW?oɬt3 jfbXx<| `_?8/iH>BȮ|x?Zc7 t%vYBU8L1KxEC G-l밀F 8$rFR٧LGjjh*|E2MR^Y/o9L qAZbфl]4$P6a5*2}$Ͳ)ˢw*{5*8̔~?fI)a:PЧʭÈV)r;۴ p1CT:ޟg ZTb3d\Ʉc@V"o9|MQL߶ #u7毷I1_S~L@ArQc qg␮R żB̯-p>^d"֔ߖjV{5ԭ'a$,WQ@ozufC;L8׮oXF 2A O"|䱪ˉ>Ƚ#$7 ~4 }Id5BI*&w9γQոiMd,Oɶ~Ӟ^yo^ޏIӫ*XtGq/!u|w5%S\iDnGTOK+f`DVfVBN.b@ 0>ƉQWy^W#d| `:] zAc# :NJB+ĒsB17$tGCtڳ0y*eeOe3rT!B2:'x5cA" S=L~N_B'$pO3 L |OLǼo!r`+]]ǚװvyFhL|Όm cq-O-A+נ3`f|lËҹĀG # 6LJu[I=ϥYT0FV۠-F*`J^WNe= nlWg+pa0YHF2CHA4ε0&롭RAבzQ1)fN^o|17DPIqTi[t<( jW3Zjx㲄YVV{)]t{e,,S#wZy8(^ VEɃʵ4؁FwFm^UM%Gki_\0eKDP"f ymyNE!jd.!J)^CfZ < ^"۵aku 8J;}~wsWTIQ7~%N P2";&Z.XafE Qu.s7^BJ"׈Ob+~I.<H#3η%(T)O `ehs "@6Wh4N*Vx!)rDW5ˬ7J'(aƍo',V%𭙆x`/PrGB,?h,Y,ni{j]b#0FqO7.ˉ- j c:/y؈.}5> <75F qr׉h5jAԬCsp6@*n؀5-@NLiڙ@+I/?Ok-aPa/uN$d xjD`XUǧCH!R7KYPE,mJQ2Pxe>?,Z8AyRMho ⽳z];T#y)dCI?iBqu3%W_I'O f0zs{=oPjwV 7WFU].УFK@h"V)ulĴԇ}>i}HǎDVZ{A*B݌`9CE2dr+6fP=Bh%[,/?=n 5>#.<̙?1M6u ex4fbE>6[OWL9Y VWJQr%r͖\k}G um$(қ+fV!ngf,%TB+.1itYtxÁyϟkF~]An*;9HxO*n%\Wn7FI [94wr8pPʐR>Sia3x\ 7Xp |G9 ٘U>W|ܟ c(?F߬oxHbem1[^#uCKxZ°~i\2vEr^ J⢹n3Amt;JAC'*\owr9TcO%&o-j1L3Bz u娥k{ ؖS b_:"1aGo6:+T&T,DX-<mGєM2Ն:e?-ӄѕah6@->5 tel ].ȗK"pG:{5=)ݨN土2<ҕJU{5ssfZ><wiv[~fOKk|Um l)MSm 6.tB8jy]^e{NIs;{kڐՆ(Bͤd@c!+!l9dtvwkqaGvbBE$s=%OL]gIkWVޙ Z½[Nc%Yxa@rFX%{,dE[y5RMo2Un/;cL}Jj1kܺIvt\m'36+wG@2Oe^1LeJ$_Ab~leyM}e<7SBK]9=3>3u%C3HχK#ŤbF[{<3Dj6TUpwrK7^{k+;z{ͻ~V{.aPSv 0\[FX> KBvكebPyu(u4Y9I.S -o^IyM@@,1=k:eOǨ32}͓9#pk-QNqhKT*j +2N{a65X^ Qydw jj4+UbuZLГgf:pίB4wX pK 6+rO}L׵Hǘ, CSB} w.E@3§+ox OB},UZ)9@EV# Tzb$ٷ{v/ ܝW7fKi Y?Nj e!3k/VǎkF1}ʦ Ok;Xœ췦&eȌ O+RewXLp& jVšo8*ū8U_&a(`˜t 0kAW",(և~"}AAfR̷7= x@ J,)O? /VZG9+n +=BqG@hᝤd:[θRz^G6$ r_(6yVE9r x(:M%6vd.ʯ+QD2c<YۓSaT1CZ?XOL=|<*La4`.V!cYe} GK%JXONf)M =S&Q&Z$њS-bZю7 mR:"=P'n׶ iU#Tl7<$# ɪ*Y3+!W H /HnC_K\a\̗32Bf+-ɛBe=ƛ֣P#]R}^'By(9#(pW6 ֪1H,CH5ы DjD M|[?TCƏmǭ<@% WjK&keQOaG39Mg֊X!3>5f f; AE4+U/ E.p'Af,(+Oд)4p=hzRdm.R]W'&Zo, X]r5B2՜VP 5)m{Q+ҲĞG5U3")+&K}JdUSֆhG/w2U6wʘ YUs}Yti6ȩh0&YGqBų/.مXjzY-GJyX(_b VVSej>zD;|Ħj¿xs{w1rR0Jcj!ǵ@Q`4xNT)_(0x{*V_pNb$.{u@7$P8Vmi r"+ph:Sc9:D81yAɺVt L?KR-a<Ǚf8iQI<?ȸ%,"9tu;MD$+G rR 1CX dg^&؁qL+b C{L]3Fߐ3ҭqpI;UoSPE݉,G%@g;3J Plu60L-Z?jFG{ 4/SG/}B"#Mܹ؎M}$R;"wG`3 p8([N8 4#':?ϩ!€#g.±|4ZaӈFs1Fɐ`iۧNEZ6-.d&Ղ DY$+/q#g`ZA3Ft[bz'j,12|h8|3dG&8Y( k6y;pm_GzĴWZ7^i=ީr:ڟݵ6G'z5͕6>KX\[BO5O-!*;|~Oԍ"wβH&+U}\u()fju6E$qnczT!a4%[&,GoHgP Ao$ItV dٺ,&%ja %MgBh{+ ,oIA)-<&'|貃di K^5Rks|GWu*:[R\ [$["y?jQݠIW&adBp>qt%Bjd,M?vű 5]%fPA{@F4Hj%jk+'c8yjPY5y_n=U0). Ex+v,?S !ƈ7A>*R{Bi3Dy)r0ɷsN~2G%nD FC t"R/E}Yg`fòfE p{$nWf_^ǐZH.`']vA1wegزʿpd8LAOB =Jĕ*r! n_pbw|ᖳ쮡\⃞da$b'H^:br~S &OESyniu{u̟D?&-@Ⱥh}:S|܃;!oCHs>R^@8!8H5B^{z#cJ7hoEm">웞Fy*iե\=D~h}HޟrJ^'T{mOEwJi`Ʃcݮ6j:f&( 4rxOG(f~.c:aѦCQԌx.4IU9@ėٍ])@^y ` cUP+=(=J\k|օa{Nn\X>^R|fbHh{"֞9cy ΂8Hl<J;e¦5l@N6akt^Dz15pR#31`2'nƬT-by= v Ew2*7ʲ1^N5n(;34>B>sY)-AUY,!!9H:,E`|{X-{{&ylI !]iYp\T0m%R6wunQ `NB-1 &|a^*@96e6W{ΨYSv@~2 7v8Sl2퇎! Zy n"-"l(7 izLؓ! qhe :mڤ n$,ʳd> [+:7]/WSí3$%HYŋPM_2Xl^Dq6hq!-`W88|I\`ٶkW.܌-بM);Sd|WԡI|K_CoWpeޱ$?:,R_HC@muts*/>Z%{KAgrs T*VS!+{?A.SU䘽ӣ.|RQ8wfR͓-[Tmw9Iy`s>bj})"*JH>!;rf4 AZܦeVt;F`΃5L|Ʊi -͆l#@81`elެp?-K5tm& ݶ6o 8BXgqe-kmir4g,EHImXW`=)å~Ws,}@(5Pf"#WIODr} nW+h){nn%!"T\E׏AѣڦzkBUqm4䝽l z.NYs83$it=H{UZ6zBL$ >eJI\q\?䈰 [ʿ0+#F@r\ִ`}/M_?:_',Q$/_Pd]">≢h/؄eFi~5x -tfEi>"_b/i͵^g6*C8[vʚ꼡Z @[wH`e 񴑃(:c4 OfL_VusXmeY* "\7r r&}ޙ{ ("ubN#XY/.=8[,0߰IeM~v;jEFI֐^ٰ8w@$Yؑh=Uܖ\yX@[lilztP+ex!x @:iI!g`] A<{ m eN͉8^q!RytE&fnīt. JhޯД۳qOZ >$ƊGO1cY5a6%d-|Wr 5w*zXW U6;D~;.!~mR9 461Se/^'9h> zk^oqg4\>>lÛU0Cu| z^$H7m 5n Fc㰘I#[osngG+4P8?7u4+Dtmb!DV#Iu-WMPy4b,"')j&Pi镆s z1J؃Zg(>6Qe¹V&]W!w _Q . 06ѱ;RۚdcK|#}TEd;{U͋s9Nxel@OԶG HڨM2MK厇 T/IKz./ GavS[^C9dؠ=}\GԹⱯKs~+,T_V~ A 0auw7!6c ?H]]1zυDR+h+(!}Ev}UΌW NcoEM!R_94[!HnyYZoRӕT2E$YaQVKUub`רWCWT84LhCJ78c zCA _oDﻯ _f9;x1nEy< @2 Иw|*+`>"ER"Juwylh*_@a,QtQBPCJi3!+! Ɇ| $ mxyC i e_x ?-5|Vc|c(FL֥5`Ciej`|=: ԲPzP39j[Ŗ99Y=󣞓U*ϭ9TGs&CTTRm}f2~F~I{\d΍N45M~f^*ú4< DW-Cml,6i ׯQ_+&,&fi(ft|*aEX]䪗*$MX0rldԎ& N:a:fnX)nf:@21&-2/?\uXW5$_o" ;3EuU'z>{b3?-I]愜 0]ʤ ^ NrB :?uホ}5:}JW;K\-E/C,.{V(3CBD Ζݘ2&N*X2LpTO-j=]3v_kaW-;k %Yh;D7jg (jE$&xfSGvbZ"YxւQ<3q.bgfeDJr$Ɉ>Y=70EHuV}n+!aʝ%Dڂ$>Ģ׿Kw1XȵKj :69o$kM@BSx6fB\&F-el xB$WU\\ǷHPםlC6r1| bǎzo9M)>S_pi2m2w6nZġzLR\& Xy|'=匝YHa{۫ǎRջMXNl8"Mf#ZA4)}C?hm%:Y@Wn18Xb[44;zr`m<$dyhss8#cD>&ǭ< ,y_uA͏aR[Z{5> Kvzyy%?\z%v࿋HH+m,M6~%\0{腌8MJJ,3AuWD܂g+O0.\G-ZWmKV}0DhO74;jyT)%M3*PJdG$,ԗV^!['@E|p~s " |< QD19%ELv+q N b,_+n#TNqQft̗֋;8I"2i v0˫[;,o㲭:Sspǂ2HtWw 5[Kcc|$/}[:?nq_pm Ղ"hc;Ě"-ȶ,1+YJ=?`X% eJNΓi X!DlRo3i>אCAQ\dmc"a=.&|Ak&8JU$L}1F9!R63Y>ZO&֩ /%J/ݞVSbwѭ~>j07a"K5zV@:C^g~NIX\~6h碆MDA `UZoA,>(늮S+=/`zE=ګybWͅV~"df t_ʌCK=P1.G"NgTۨ`4E Z9rxu?Cz? qEOmH?kR Wϖ& Ό~MCr tA<>sqI@2(OuVe_P/2s [/Ƞމ5N qa!--xgML_m3Kbe);We[_Z 8!O>MֶOK`xzY^-%jm!ѳ(U[Ecn&`d)\凅hhT~IM=(8}NJތ2h,>VMlsҎ'/Sb_fq.DoJJeDn;Vzc8kV5fs[ٍ;8lщXՔBL woCȎKw ۲ME+Ɏ )YhfOJB#K56&8X  &g[OZR\Qc^/+/ 8r{ =^0Ktfl6jQ"1#!*aFݼ G|8( %,M'wgPjZ'ؿc  9.$z=t߁*{@h<(mBN͡lqRq#KMؐU1⌳j;\.agJ|4R%?<[]o^\zBv}Ǯݨ`y ي@m]u^m؀:{WA7vZ[^ ѣ5̺u~]e9562JŞ=Mv'BZi~C,[)f,VHCoP&4ٕ2q! ]b3b4x7 /E_=ANkQ ZoDB˼%= Hos:88, R;d)a'<\'$Zؾ3I?H|)8͇hI ە>]m˭U|[!ʧ}|] 6~0v@ШO͋z꯫f?# カxnF8{n]Q8-ɭXҤy펹i=঴BD)Nך߭z<^YZ%O 8 lMgg #!ƈ@brdf'Xaꝼ N:mwNa}REh]WiKƑv_in5*xY>|+seF\^̩&uJDZsˑb|*WG,N戡H%B_hm"TXiI4R9ǚ SJTX}GZ.Ʊ_9ǻ$Ifb"!9,U|IihKeIP-V{Xe)Yki"`uօ "`{-W;HMMKP& Qerm|pxbC*YWߝ[w fܘ18VĞ727wZæA|9q4iW➾"͂tVTށRpMikFc H[ x7pM ~>9Yo_9ˌZB^եWȋJz3⚏S@G|B51x8ג*WJHU-1X.s+{}\40b<-x(DXЪekJY\! 7uLԱlh=גkL3[Zɵ_w*>R6/ xxc!zIu4eY|x?lC6xUyr5h\#@Z&ܵfOG zf'f3)p 1Xlw*  .5bq4ZM_+ :_N< }?pCAc ʫ` (HYߧ ^\L;lŰ@$jie|!(HW݇iU({"0"@s- .,"BmvdTa<9؅wS|΢\۱^3m K4\lQ2ykID@pM=;<#w\ ֨7.5+*$>' R${#6v0XV+#建` @jq_x޺t&h EnE€~B%0n RÔmED/8&<˞tz3.I&'w+ڒ|_5QqO}d_4n *mf^>ho9dAS9|]i6Gp2L3򖰹ay^*ae7O2g|V {'KŚ׉4<+<`н.lEz}ĥxsK" gZ}Y1葴R_ Z͇h}Lj'T z.WܼRPO$\09mӑenM(Yj+\]-RϜB2g \-h/pXL``w 7/HN -ˆws@qPN܈Zwũ lr2fOrHf}I9|oҩlv%ܙ{EZĻLN>1RJe ,?i9j-;ť zK̨ \/Arpuo87{a[JycЗD}O768D"n.ד3.2P 3mןh9lڎ֩ =.vl;蔱HٮHoj\__O6sC)<㑭|:"% ,ϻ6 atf6.saEL{՝e|v_ߵ"zY*' vA4P2{R+r(9Rƪ\&7_R1dSNa6J:Hqwk[1/VYuŭHS}SgaۛO^\a`2Fp!9xR"F1ш8߶Ons"Z-<ľŢ)ў>rxn#Zx6^= 7G/ܬ-ORa 7fv7]l~*(bD;u>n *yϿe*xI0~Dtأ'nci)L(1&dXGN/1? !jUUȰat¼OO_,7 \Lvc %T|sWRrco,s6Մx4U +3S(E%&̸Rv=+VzϜ@ wY`KY YÙqp ӂ纜4!Yx0hq0{|X51"9կ!bCCN_ iJɧgVΞgpLly[֔g:S\v0\+ߧf7n>4kCm&zȿPLMe_WF.mO6 j1a *=<ЊSst3x^b+?OyԄ^7YK:Rà,FTp#|b4,7ԫ Jc:UdE޶3jwVѴ̆"v,njL'5Lx\\T]ЙL͎KsBACLo :/:4B^=9 A-R*惏򾂙]Tf~f16ZzF:1 Pzko)m@pE]@"z`rCe@/(bO9\q_g^>qae`wq|F @lMJHzg\/PU[H8\w=eiorog⃇35.7Gj4$dus3bW/~WOj#]O?  P>'NEʥ^EӴ&"$jUHlh<ҩ]g\@JӿH%%i] 'IqCLT7٭G 2}SH>h mJ_^Z(8-68(hi6Pk0sd=h 5~H%B.j^k8f}J,'H@q tūʄНI3C+e6G 9nJ}u'AFrG%PMKա~[{ۨwt+=̝|k\$IÝYbs} $7*:C$lnG̕F!MU&iQ̚ChAuKz!GMB9,4j R0_FΛQ̈́l]Y:$X }<&Z[:]KTt)p3~¦΄ U.rɱDC/a%"Otv.OrdC<"1>a'Omuv%Mt2"#澵lz*܋G:b ௛U42WŮ[2pAM ]YsH`hYji9F|Vq.ۣߩܝ~Wt!A{4"AYvUpOA lG:5 8vxOo- \2b M黦fE"3;V%t03c 6|< <FwD}aV42C/vD}p ]qJW%."WX"j%-RNg֪6x [$r/]V @Bi}܏۸k5k:=%,Mg} G~bޘ2N {L-2a||f"2!9OOqJV $nStwS1;Ҁ6 o#!{_Zf+QB!i! 5Ӗ\/1s̸p,{ y}stVQ\6\gk5gPdWciђRYb9.d0%3d0Tz7R/ ckH{4[$_$I'|ȽW4 $b7ha+>F>M:0,fٰ3n 2|6s ѮZR+>nDl 6|~`jsJ.S7(G  F]Ռ6U YFE(i_Tx~/!& B^ݲsRI @\R^Bq0yno,n뱢6 ?Հs#L%mόŽ&9%]8Ts<@۵.<`㞐pHksJ,a_z3Mu[ >d~!)$TGZ=@fi8*UMCtP禆鍾:qTC{4).l nx6<Rmov2b˯ (K/C} ' I!!\GF`qD]*lY8N<<&RB)¡YOkEwti.03 E퍧!7T˴JgjA@WD^I+qupjEw+p)yxs kJm& s-6g2DW>վͥ 7]$xI5፰ y|I0[6 =>]il䄉-ŲcMYo.E93H55FAˈ3Zݷm{'G8D$sXƝ *[dNs8sk;@(!v 6|9PJ6^RUUTa!P\A0ԵpCޢHK:$*,"^MJ*evٔ53Ph07w2/Ֆj^)!Y /2w0P8;"kFr' z [V2w#\iݠ7~H@'z@DeoU_NvQI݇9bUTIFRƟSkPzZwx]ڨ@Ig.Ok W=v$"Q=Mܟ+P H}A' bMiM`*k.8@m 6;,³Qs_L o'EeAroo%;`f~G ňH)o'd3k(296{\.JZG 9뱱xqW8/G3c6p|5E.'8@>AS֋2dƙ=({{VQP6{ajPg&}Yio}nMbmmQN D< Mai65G%}相vcrތi/BvPMm3q!Hn%[L;r9/:)"8p~?CZכ-*/ƎԴ:Гc(yDrc'ȶ~-}H({=m81Nzf)wЗ '&n[ᱬw)oC' [1'n5 OsL`l+6 ݏcSJS%o EZb*dpyڵ yTO/Rx±gUc ,p -O̧j5C7VF_|leizDav%S? tY(y;^Qa A|I@W^Efu2T07?zM?&穫y]ﮢ}2c0=ͪ|* ZG[[vyƠЗdP6>`!xiHRn@,{T3Ee8c1޸Q O71y?၄}rZxevV8ٵ1P+ VDUz1MT_~KIN;6|%B*9S"]ԴV[s@f^m`0[9h.a惰FIk}jE,mH;<>Xm1/cI;UR9d2B SLTEU)mh.11DOw;'f}T߭MM=1QP#T{L15̽M}Z\۫~EQLd1ùJV(l kO@ W;4q葮pطVO=;>p2=銟S %u=Ͻk%k R+*`*,yyؤg愫M`cU||~BL9? 6=<,@ρauMkvk; {I2#2PyQvmP3R ^NBp3T4ߠK~kUh)ٿEgJGO=a*rRSu_]hVN0j>'x_tNJh30i\v֭ѾFk<C_;r8Ex`vx/fHR%j:xM 8ƫ2s37*_rc>>)~QX\-(A C C4휦gPmmB{ԐH,ʵzXZ"q W|]n5Ϫ6}*GeHe~ tQ ~>q̣`[Gƾn6Pk4 QE$KFQ 8V~N/ _ LPkU!=P>‹Qm֓[oVh>MBf79ڊ*(_M<(%- ^!JHMU\]}h'ۥLQƘOS&J j4R9ݐ䷋`M5 & {̏pf`Y(^1c" ##ənXYfb=\`P(* xm9Y $+5BF8bNfFDVdIok 1;C@Mx5t9r.N+!< zGq C\`U֞ԍq(\덼{Ȩ0"A u bc9,;Jxn5)vpG`=zd^U'Bq1,Ȅ*ba-! Xrfk/fZ3HF N1wfYPaßM:Zf01up6>z>t~ZɅ=Y1#pϭ;0x5n"IK8g5 T+A; r^̦dvhE,-̇Azy,M|M MyLlc̎h{qC\X̬Me]KcY1c0 oKQX$K|EAWaۀ" ʬǓ!\v84z :\e1ǝXXiOH`Bge-'8}Cg _Ӹw*طsVrFs`cgru4e!*b7}P?uCZyVjn C1ymzAgEIC,W!3(F+euwQ2v< ,lx$8|0 ;EZBP$BP`,-382O_HV]Oy>2DM$-b*M@,(D愶~CWGߙiַjeUȇ&gn"*0HRͥtYԑb)]_8Bqq+CdUVCl4Ct\w\Ϯ:~fžvzuԋ7_ųgr mXQ5q [m l9 =ɺ4;}X/Y~HS&6ynNIL~mӥ~[_Gxv0)*|á$kyWS]Nr2 ׎R磋ma-!ߵ6pLK`r3~5/ݴ5팉oq̒kc-9y=BjoZu8ߏf0Z 0{ k {g_VDoю^nGz v PR2G;dJ\T/V E%"49QwIڒi` hTcp6/X>L\gԹX9LcKo"["'2DfŰ [R=-^ <S)r"qA4?Tf*M OtXW`QN0,cM&d?XTЩ߽>r$eAE +-E{w0X[Pɣqn _4cvz`z5DTߨ _IRP*Z˟@D)DZk}[_ z$`i=C^#H^6T}ѫ B wRobR,i弍&m&9мCגFl_FjjwY$t(@xdh)Ku)Mk뜒ə3LGj|Pō`3 ^A}w)>_7cBq\6U'_P^ꑓNE?K5 oHSs{N 6 8;h&{wf dJ$4vT ^nwq;(" cĊ8 ܣ{W]<!j@iOyxRш2L;^́$ ג{63|mE$-|)֢] Asw.A!5ia9?nűi5w=awvr5BbN#ZkwYM&*DO )$4m0֧0"A$|Ibhc *ydDU,t}dEg7k,cq[R!Io᷏Vu!",?U:PD$K{mt.FttvYRLH^*,G :um7x96u{ n<ߕ,>$cgIuVb&U-Պ .@!7jV>>J~6QLO *>o(rVHWmG a1;`rG;i$A/cll8(#{q{ZGO@FEnVl`hEcF~2iZ&%Ia!4^*L#ύx%9TnW CNua l2=. +Svv}k #r|6L2.iV&ºE)8В~^6#yfwoќ/Nb4Ae6e:g+F; A\5[ae<ٕ—r8dnĕ%gN2O8lr(mZL^&),(F5F1E,mfQ0_X utimK31]8y1=f>!%* t.<"ԬAp)?/)l5$]$D`7 Yk0+j3ӡ QOK=D,$.E+@L1UW͆NH|YwKya "z$eD޲i,|W׹9!}nz8wn % Un;-e;c[Bche&vKRf5n LDNZG329SJ7Ʊujiizrs6O"E6}N:{Mf F˝1Tj/Dk{NiDOy{NJͫ cH-VŠ<8K #Wv,uWi T*rpS2󞋉 ̭w^_ >&1+'0r }WxKhN(<ޏ^J ָ{6n2y[׮=t9LvRfm_S:yf=( 0*KS!}E#tx<(5;zV;!a'; ,) hH}v&y)%y U,_ b~KdLs8uS_fix`*U^P\?gya8ٶ8č}Oʌ3mt/؜рP1zlP2$?h E8EH0݃n`:g׮^P,Lm0a9+vph|gR+Jt1'"6ln0|##[_tl7H摡zIpl]T~OF~09?X!4V-Clko^t2Yp|ڀ")u[xIGDeV.{(( l"'ۭimBԲ 9i93H~Y:~hmI>JɖdpgP&ںX,li.Jj%/n~APKvU47%P- qG{`@n~GT? \9t~ Vp gGB9q4Rm!-"A=n(I?,+9O/_coV'w5Ud !5!(A&HpYÍᓊhJ;[+*F f yS>-p5. 18n.7Jdzؾx1\5?v=l 8py6m|X[{6f5g^ؘDr[V4;]QB#10h̬O|?Dюr8@裓^mm&%l۸+ oֻ6Y[&8#d9?X QUDޕ{{\3^o6buۣr4ULeFS*]v",* ~]RƟ᠏?e(g5IDe?|6XĵL%#aۧv[Bg؀qSDy6wélu$ʻuH>mRhꡲSFFfs4Y()nFx ׽*ʟ-p WQ`]{K[6/ƩCꇒ9gaGǮ-5Z-R[wl=IXR3hn4pER@ {<*FkJ<ͦ!{˿|΋cX/z[y vXq@&(A#@ w6߼{E0\KAt7,CIkXAxAPsHNj::1+~B9z{Pҋ-PʺcFsK&bKZdbϞ\+”8 o͎mG!pȝY`i ;N,>C{B{k#2;DF~uB`(3=6h=zXI..|CQ;,r,('>G^"BC1 ZB܀k ~kfe`۬xn|B~%`\ `>eD}-7v953O+VF4]zr6ZP`]06ARҕNnH'~Cm&F=|-#sD~Oθ7CzYHA=꜔{Ԛ6bH'(Ģ][>>Qpj:8tM!EX>.}fjOs#7Mǿ׌{o1U" 4' RQ9fhRf9J7;rfm3ZL([ 1oRt֤tNԞpȤD4;言3*C?TO=6h|gRNs?W*̹THEeL!:=C47+y#{Z/$S[jaF 3`tTFi|΂C5Fn= vR4 g#Bz.q@xv=AqgkO*OlJR Ȕ@اCgUTp,`Nk,#j'Fb~68%yDs>?r--)ЭbO\3݊4Ҝ.?5Ǽ9&HDH/;]cV@TFH5.94,?SC|Fv> HűN;_\UΉeIWa!> ND@biA lavJ)<}Z(ٗVeUBAlWFlOڹ (DEMywk[&)&(r)]E;9 KED.m&=͙h3bxZ>dxSC:V/y*@ L: e(Pgҡs[qQ3 FGaRtFGòvB#ffQRRĽ2K("\>&;jJ=*)'?DiGzr+)g>9; slOQܼ%7CSdBI}j#/q6]raniÕs]Vc^UQBA״-mT?DQ}ԡfA1q_J%U%Va9Q1\൙Q)jLfb/}{OYW٨tp8fwˮ8jnI/@YoiH-C"%.Q'r!Ȗ`0Z hoT%eZ87aZ54 Wwe^ w28槯oScvg&Vɯ1^ -ƨʉsZT4v8fFi Cu:@܎J!{Bxg\s"Ams A/C_Z ysӁo:ǚdYi^[$')Xa~#~7@4i6! [ngҘjh;M! Dcf*Q4أlPִ^RLe[9 #ѭ#h`j=2nF7U5al4 zwidvc+!(#wR* JNV\v"Vq1GRyy02mc)-QT|Ҁ <R!Bd)[T+L5r&`:8 XNۉw*!~DtxGY%6lW'?֣8v1ŗ:-<pOCZa5䨌!э:a]ahG`M:BD`}M+6Q;s=?'pi %TpWYU{[ѽʻo8}!{wcd̬JQaQv8$+KQO牗y!k.hsJ˭ַP?g,vϞ*:jFǙ D_eҚ&DX0Xd겪P!&a>!fuNs\l،Ap&5>Gv.|c R0j($+ q1Ppk Qzث0Y=ߎXz6M_(0EU;FМ>a큰砲O۸ɛ>kiR:+ph.,K{Nj%E3xhOmäADwo8tS,fuM }_v R-U)]w[tqd JNEDwCC 鯼#[sn"в^7[ 8NYVw$\F,jٔS L6lW$x1Um=3B 66]8r|[y~-=ƭ,Imp/vXڛ *eh1:8ԦOTP;(pxY80B6@LENTI*8ixICXɿҭPOs}y)q_ 'vG[r¯3a> sˎ⨆tsчbGX+#qb=mF߮ѫYlvt0ۧYM7 V0 a0r19"]DwAD[, 'A{sOe5[9S#"#DTnLOC'^E~މ }̰_ p[! m6[Q?X wK!i^O!vL?eXD;1QN"RNXY}ܔJؔѻ2^-fsm?A'r"y=>Ҝ|2 ]WߺC琊cDCw`8vg>T3bGG*iTqiEAQɪvsyFo>u08uGL<K+nh#(Hƞp3u ǟ~LN>bm+@f9:_N8eODq}y)>Ƥk8U Fvhkck(us Ş+n.)$G |v>ar5f l6E8|%7hhCH$ Lw`y]ˊ42*s&,TT0kpҨtGEC_;DBEq;>8g/GC,4Trr9J2>* @Nڀ/EX/0 OЂ#w =]aۼ# C ?d!2#@+wi10Xba nf3?Hex'x2G"rQh'.o G^ͮ!%\mIS/qucE¬IRlntoUyRҢϖfUlxl#գeI-)(6 5- ӱ4,fǶeXA)Ȋa 4Y,J%Qkl\1y=_M;!u v }. |_e K;S0ȍ pږPm8y|PrBh1|Wxy~?:`:U&4=匆{c#c1d}{i -rkv`rtw!4g}+͟3v.A~uK/^4i--Zc9!%n. 8AG|96K|Όљ>?_NtEO<y%ڑ \PP &*d]J(=:OJ*{sBuIGlYōn*!,m"|_uX|AUOܞЯz.N <*6AȃB4H)$ܛ 28\M#Ru}z*6ᙂ x"̌y]s9l«9 gP߃^lxJҤOa%:"ʙ $Yjg9VY*SLEiGݚ a\{2aVZX-C.ܥd/ nZ(/*!Q%+|T}DMɂm+p؃8 Yl\r\>{I;e<AQ6(_@z6N"s"9p^2]2v+B_S-S>)c܇N8TIf$sxH療 ;2WGT&v VRMїl_پ~,| H^F`&=8$lcs#XK0B!ZxXFNXh^_*7FD_N0 _)JK{`-w V҇PV#8"K Ă0$Tc6g-rBQ*RcAmH|6E| iuG`̍x3 })^o|hNM~|edzƚݥ2x63bvAB"srB uA/m^ʌ(& :^B9AyfrbHF2Ѳw6='?!1Ci$5m,i l0⏭Zg92^TxDCx-=* ԘʇdgI'~;K (R!Q_Q Lort{ݜk1}B[rr$h=⣴wb z/ڳ  }椷昿b)8KE|ewzoͬTMYk|ʙ8΄84Ch.#lS,h =+E$Fb:>sWSqOY _g'ݍCJrD௃>+?q2+7De>RuA(yWSW?^Ϳ(s9Ò|j-W6mF7'ZC wH:t&}t6uJ<&d!ǓǤlآO{05wk2zs^Hg-VoP,PּLA9#P|{NLJ5{۰|f2:]\ yl? K8n9d&rݒ LoQ6S9|RMkwȅ'=#s`+<n7^>%Bx i.cwbCLe *֟G]{9/QjCֹɼmj$}G HH٥p̆vL`hjdK+* ʸtV(ʝC-qӈi(vnMmPS8dw$:@H[o@{ N?:1+ A/X@S> !37ZF[prEݻɞ\\`)O~{ClvkD7KX/Q:o+s7 ɠn뒍\;t]Uj+j4G꣖MnY@껡,}5aM<7MV!| XzTw T9³[tHpwSUz4^_ ͤ[K4rYSm@#cԢ0~t/nXrZ7 e"#>F%)׈[qAw0ՎLȌ[]dEETQ'82I RVt=DVv\n$j_`nsR}/3Ĭ<[ӲtGTUyg$ !7̃TH*'igTRl#wkWՂbb}~y ܪK X'#CMG>@:ʤ/%ࠫw!\3~*-n B1EECZt{LV=g2>ri r.0_*F!!vz.,&/L$UϬoaScH4ӑa46E]}X7)H:Jgh$CԲt x'DL0 ~ϭXzB9ԭ{#(zOf;Crp MA<-L׌yb*3T]KGX"e@Q,O7dx*ÿk듒(a%O6?Yw*2@њץsFЅc>z3PYFKŤt x5\ ,"LȒfUtOŨK 3n]얉[-O;yS55IKCuUiF5 GegqT1 eWo'Yh٩6v}8-,C >/i_/>+.O4SցoXDy(0c|7<]z4"'}V0 ud0͡,6WąV8q=&϶v\l ڲ@ 3hYG.,'4 sFu6ݿ[/7PeH&)T_eXf5!ߧ[:+u6x~=POJFsuܸ$Jq*$1q9,HKSawRh-e4 o,;7Mh89Ma#FПtpƯ ᜥ%G3s}2>ÅܞxއA}f.u# t)N /Vgn_ۃW=a(QJaMeNW  lKOwNڀ#St Wkf;!41I=e$aw~Â=7@S$(RNdIV䛄I{ wfY2iL Te8wz]v[ں́.uP`=XZk&u?ZЫ#8HOy<,'ҩ㻙JcdrMO2,3HBE;}+ hҼx'I-CdzFl}UG܄@ #S-1 o){@YKCpwnMUKhDk@ح*!Oval'9say]a\,s y:g+Fw}X|)6{,7Ur, ,:f/ 3TԐtIOK\O$%r6fȻE q;yio>u{3(9OXLнfA:6s Wflh;555^p Bw V=/O g<\:67z0G~w ?ل [U.Of(M  =DU6A8LlK -{~N2;ue $!@#_[c'*^ b(bkA"|]>fX";~2VVh&b_g(.h̹gzF-oGɠsSl?B7G,l3~"? kuP؛ n,ָifchv @ /-RYanԋNth7i环j#S#~-'=lÉ_Y˸fggi"VxJvjc'#j=l-_tB"j\JuqքKV+Pd[yg4@"K!!9W<_Hب+?$"EYU(-qZJ@ac?`qO?!; ] *)su捊 ^ͥbFaSƐ5xJJ }"d_ʠߑWU'$ZƋSэ r|#zvKjg+sꝳsۂ:ȥS*' Ep;Ne!H .4a;CWeNJ4_\1`s(C"F -QiR]D~աrUڗXEI4Ī64o~|'P܅_?pDV#7ӥ  D&ÞK߫Tux:%0KQ[?-:aWQq<Hsa0Z- f# <@=@+i[kh_8NS .GWtR^忚Tjp̪;a4߂+mx(2(8p oAo+@w l/G߽i^{i~i;K8JdaB8*^-%~9즮ZV<ߟ D6dK «jfRJ;}G C6WU!^oU9@Ϲd3:~+7]-ӭ9MV*jb;9EN ظ]&b%ٍZ1v,kuRl# Ę.^jrwFD\BqAٲ3 bb:\m`$2ghodևP"I;^ 9ln$0]Uz;¥뒱wBTLLO_.E\_n北_0oR'0np"N< (yvNqOﵷ'1y(OzG?v:-l&Mpc5`S\Kb}d5``(ɸOU2?p2]/ Dnc/[=0V,(bvڳP k'`,vL_՗9nY r#m>JyY4^=Xbݔ%E1rL: ⚡^K!։@'*WM;q|´0)ܒwB/E:fjC6X`' .2ս>o1qV^YlIjq3@Ib)_W~ͤf^"WVL]E&6fu{hD"V oƒx}rzk`3)$.z\njэMU10V0d:zDQ:WX&Em#h?J,hH !®;6+ei9>O#.?)d'cg2lB;m|M<p>8]m烣AY`m_>pMee6' Ŷ˗FcJYTu%u3-]2Y6P S¿uR趎DCtX~,snS˄M&ĮmI D$>SޑdCxѼk"q}ϫ?;[ࡊ(KIڢ{h'4mf)Q=7_]\mޞx:M6! ξ-Û36"ƅ&_=ɄlJء6#kRNK2C".OεUr;|wT`Ǭ(xS=iŪ -UDn|Rܗ}m9e uwMٮPw]XX VtF"QN=z畞 WHs9=qνq嵘 V< x;ۦĺyt?C`31驪փ3⩃)ؕxeiT)tOX=jir}au0vCP̅/bhLFf1Wj..K@#Q j4 m50B(M\1Q)Ga.bd]^9%5-o7*7ZI2,rȖ&(@yۤOogO` 1/'aj>xqUw ~=n9,6 '31(w~X 1C%2oN(JT"/K4ҩ^ [`_L ^SlAg~ݪ'QrAK4#1P3 hݶ .4,_Ka9XghwRB7RT9x Bfs!? _^ (P>Q*}8"'ݘKI&q橱6`P[AJ|f9'w9KsBϞ}h+$*KZ c^h/h)שuL#‹zEjv;rBM :~Pp;/? ,K ZۆbKt COS7SڟKl>1-0#K1f, -K!”46{\ jg8EI9I3DͿV̯Ny0oqtmz\DT}" :€{3nC5`f h׫Ř/=HicB rFB>FD캓 P&U$QR%?Qf,}N{+%*F2E/pS#Ts 'f'ԀX?Dډ%N!FZDMT@:f0{aI/px˅6x7;64!ݍ2KuvcڨYҗ I_9\vF_;lڱg3x W=7gfD#̛&w QE-+*!A— yBH0pwmem(ǁV-s5_7;ٖzN!gɝV5yvkEˤ$X)r,OCy+84 WAf:zt6lS M>آlu8f۵''!O1vںT45<0m3fNܙ}@( ~UBVSf=Ps ɗ7Gh@5ZY0upI"8Q:\iAX\U@h\ua),5wX=)% wEZ% K56{Sf/-1ob@SZĪƄeaZVFd1XC랚ib;> y 0$4~O<9mN1l{V:dorѲc)9R3CED3^}HBW?b( BLf @CQa0'EN fjڬLK۸HlPrBoG5{Ś_v9Og$ Օ9Ӥ!Vgk8y ݖz{mP+:*7!˷#}YB2R_7}|{=l/ vVљ&хܛ$~QvB0u1,0|Rl @\@O x2` Lb%z%Pԣ=g@VSOp{kn;|)3,ۡni?fy⎚{K``F&- # <IϿVg`ABu:'Қt .H 2<ίji>dS=0.Xt%zJ/몃/j^>TMvU+SQw8`8a?VG>x7(dA))+iⱹ{а+Dn~@ޤbꔆSw[0D)y+k!( <"ﴞϯ{?:QFo̙Wa.`m]e) /pyI}"5Lgc'fxK:4U(6TDl,ۙU SOךpG{|Z ʬe¸K"|ܐfo |Ս,fU^ N:fo#Ub[2˞&roF Nf͢K3Ѓv{ǂ^(2>Pv|-/ %W^ R'F0麽dRNeO?IO 'ZU [Zo^K}'m nh_喟oX6Ƃ%a; f4V4UPgbXN\s3J{ + wV=F HIcfs~sw}{MXM +h300J.cJ^Xn}{{ZGmk)AY$ __ysh]_CXF1F #rGDV?'ua%b@D9=X2BYI8I摿Hw0e(eCn܎3&)иh-sJuDh4Ǚ~-G*Ǘ 0f$R}FD> U7ݗHXJ!Y2zOpKxwNW!kw:Tq#eAJ_)$س~S\(zܝ5%C5Eb+9[UL䒏#^Dz鰖#>#E6\6)^&A՝%hvs'UXzRZߪg9ru OlhLe b<)LA>s>ssW~!lLRzw PTtU*@PuTri dT`L%?'D֙NagBhZtǨ+469iӪ=7joxA$ Rۓɥ~@S"fgb 8| +NF~VG2Va|40!w%xWQTEс?0ʯxBh}H='Z`Sc zN1HtFwi̥) }9#;e ߰>  O,fٰdF92xy >>ۥ8-(ˑl_M٥ 呸oT:_XJQPy$u{ [N7>SŠӏwn]'YH'=hs(_ #i>`1 C_1ty4{\q#5 crOt&ϣ)lBІR724][Dbo%MڏS61.K'}Q.Du򆐚}^3\_6`<Z]X0XՇldB+&m' DM;m$7r^'!p0^gs`)3zi0)Y-"= /49(P P9漶gf$- Ȱ#}|BFK~ueIs#=* N=FDBHVC &afG"6Y K{ X}6ީG!o;oAp NWkDVUΓ@:f4fBk/Dq~/S4P eͿG(17ָΛXw_f q*fԒ1V/3v-fO*ɫy&\YyIzWjS~D X"pM9+pzۅ&R =jtI?XaMΔ+>o|Y-9e 2&5?ج~]dV]qa(w*6%vͲhFijtF7m\K+؎%1_SH7`4- ~ߜb6hoV >9̪0̶Z6.144S~ CgޱZv^Fhԁ:^f]O3%x㶄@y}":;:=Ǘ5\Մs†Rn&g@uG@h"=K(w1?#1 RST-xM2C UYm%_xh:Ag~ek \2ҳ? (y93бCtrewZhDA |u =l<Ϭ2/'Q#dETihXˀY˩ߛϨ9AɴBe&l#HϢL()ܧ|7?@H>YFm?N %sYª1[>>Ζl,3P B1l7C>ح<D"[,h&vat:ds@"'QsH{u)8TlU, 9bS:? o N^4ttQ'_i']3st}S뫆5a!9^fER+=F%S Pe\&Oh2HIPE2`Mg$!*bt*0 .r9R@Yc+MrG=$Q[Kpigڌy9?ճNEq͇R+%:i/7'0PGK=;/΂^ekϧv]f@tl:;~dDq0t,>|F" 1+@D7aoBv;u1d&U@^y!meXwᲂxD k{Nq4iTq1@\(]"<e[|Lk-S׃--3NyWN@Ĝ7u"Lr<j$u3!J<%J@: vY3T8+w@};(: g=>bMF|Iq.}CV(x06'Ƭ+MG8fA0xzL%8Q.ˤt7%]W.)W0\ 8n4^W:@ܩeE3؄4LI ==Y .JЩN@hli5id=R W@Rdeu}"U54?kqD|V`Y2ڵ]c%\I# *dwEC@Wc[8E<٣b* %%' i2&49 k)mRvpfCѽjeتu}1.[ˊ^'_ݕIlaWL߀k6m(0(X $)Vb.=]\}ڡBx4)EK *DPj_ѫ IS/zYZ&|m$B4W9+v3+YԻo; `"Pt6&ekRRB:gboU(=}l4q_6>Fʗ[s/lXQ͚ͱި( q~K s#~~n6i(vv]Ԑ6>໭=U΃SYߺXc'AZOw 5L/i~Kx+(N[P"~pZlm1z~Rꐫ՞ST ! .Fh0ΗlWEs$@,gNf{9O3z5zh"~j'`Kt'n QOUwwB~WF :/(V = fbcU9A Csپpл P>jߠ+&Ǥ9HvĞoȦ](#>@T}Z3Pl+F+ݞa=d%F1T!#cOXq} ҔS=Ğngx3J3 sIRtya^kԶ\9~Js({fۀc,O#{awն9恀G<"Jݥ&H+FFHU> Rm?m@eiS存^O{.}'m643d_!0D {64峼X F~![} Y0GDuWotYyӴAA3.dkŞ09%џ3m=ލp ?OBJs Jovѕs&1)V)b}c<W+3: }KPBGW<;gMI6 3uĢfmdZz465*KEw`!ArzrՃWvdKaWsʜFvrmy u<[شBFIi/f'By}ښgk;΢bUM2g]U8a2v([kW.;mA06 X*T؋]k g S"d_I[78R3ߨC:8.S ӹ aHPwwfLH3&I0-f[sjWrEL|[ilյ!auvRI s1ߠDR5O"m)`G  n=$Ʃŀ XłJ1g`t! cFlT8b).̉l! Tc/$~[:3=UE`[NHƽ^/,Z :yʇGCښht" HeTA"/ B{ g= *nܞk5ZHց.6n2-pRң{H+LD#ˮr$-sN= _xlL4>nX@S5Q@'?!7"˂P v׮k-NZO;Rܣ)r-C%|r3gy c}[=P]!=]Y4{- '}k}ZG`C^!7֘,IO]Qu I]Oz*t%0x܏)EIvM|j:K63%PךX[#J-Q넕.Λ 3  ^3@N=GWw'l]^/'t][9N$RXPR<vV](bAd"&c#s4 ;߮m3.Z贎/ƨ%ˏTirJo eZ]_j`RSpڕsB0z,.$(>Xܟ,.hG4t n-0W_P)Q!* ԃ76ނstYkx'G[(•D7ʙ>h$Da]6bi1H(WC TLo@RԐ ߑK2r5MzÌIh򿷱w+a<]2P tM4%< X*ϰr$m24FhBZ>!.dӛ2;l =N1pB3qAkrw6Gr.w %Y l2EK f 3$ XkbBQvnd =(0g|;M9L[F< sj1$n)ӣbPk7/xs G!lqEF궁(4yI"z3p666c}%mj:"KB)G,rՕy ,7I[}FmO~4 &iHd0G}kI4[Wj,I LlK_5 w3""db.2nL#2eEP qh.x({XX 6rMT1v9[yj u;e` -X,i8…|gԎN|Ϝ3X{R[]M~_fT"OY)m}jlxBD0@H #o>MoR7epfѫ0 UJ1A%VB\;P]#s޼I..+b'M툹f UgQ3Dٿ"} [;Q_O>0)5shU ZI ,뎬X H{25=e̍)8G(mO7ŜiYN׿Jë!OU[Lx 0(u;H0g*ҬaG V] ~em|mO% ,_'drB9,, 鐥*8-m''5H hY]aIM*Ab ;!DF*m 펓%vD84nZ <Wc&';^=Δp񡇋p>Z\C< ={Hg'#NSm:^ F2{X rڹ*K T[ņn>I&jۡgx$BPǑfROP>G?NZaḈal`T=Bb6e9@MS,hUt0N}]1 A.xyQm OlS~6րF 0]U3K..m~=۴dނ%>GkI/KsIɪ%.ߡBC~(MXjCF ?<N c'^^FOM tM;Z ﳆ[9ܨ8%55s1\԰iR}@0hL%+{?OsyĮ1 5Y7­6RG~A~':pܦ H4U YQdINv3kJ 3 ; rf&k#t3ᾐ) yۃ9|'#_"oa|2-;*"{PGpwVd>d *5>!(XTsوiv6f&cExx҈ G*|#s?p9 ɤ_ q>)ÒQ;6mmú?@zǘٶUx:zp[>Cmg'd)_T !=+=Yb5|ɐz\#T˒B rS!1bfԳ-.Ki!& gGު`΍\IsJۊF ?O+^:OWBVЋД5l9 )ۜAgXJ9%1"~539N7}~W3UɖۄhܮCgŊރZWܚB>vw WAu$8R@_A=r/ e(JH43(iK])ʹ s3lFdscJSq .)%lȏe1vM:ep=2MZ;0͞7 }JӴ};e~ȸL^hwLDP# q:DwXHI |ԩ͒+=(I$:ޑ1v~ŢA !xk Qkf^ץLp\{jH{ ;NcM]jtЏD7w5$0=;"`.m wQqb~9)S{=E 7M &yhκ`޹ƕ\Կ6 hn* ]}&w.SH: 1-S:;{@9}3.v3 P/0$2:7H}n\шWj !Ht5HYOԌHȋ#>uJ/Lp|t  ͍!0-w%\KEtr?V!`עwsrD.HPKH[Bnګ BVHY>JfM@,h=w~O‘~wJ)YB!&Lˮ٪v*M' (b3Td$w/`FaOU  JP-N]RiDuvGE&#t;kd3#"&KE+CMhtQz~yDo OSγEVDm76 d?Wpy+x`u@gIMCvLlk IoUY5btoٲЎ-xE  嚞JA {G- ,Bg.`/}0RUgGwrBQs/l*Vș@?~(vajy:)޸~i,ԮuϲA{ΉF'lKYTE9ukJ em,W"y1lja5 }#[[]{{:c=T>2`AEC)A;  G_^PIte1J!1_UB>'m:\@$Ee O̱< 0ҡR ;m5AE!Ǒ(!-/tƄ3{nZD]o@IlT^?}vGX)adDAaMji>oBx AHJcܦ@/Բ--pBG(1ODGI]A]YP}R-6dmʧe~ ]KR= M4E@(:ǭ{ig%/1G6,_1=S~ao/OiE֙hpNlYŗ6q2S%C*>BRN67U)$TcBǪ5|K!gm(Of~S:Mhgw&qlTڂVd\G*|"G ܼM##e~kƒx2tќkqA;aN+sN4\AY"D;$nDHWO&Q.frX\LY7sҝ;vhOGU:T n/Yr0`o2.n2OH2(D$tqG/ 륎B$NhfkJ9XZLуs- Ա]d``޸ eڣ1nXп ,'T<w-KkLW^mG AM/Lc(r\1b'ݥ7 dvQ-0'СG=^:\kt;gmRF%6d\yg#,xK84~-vӂmW HIDc#@$Eڤ]W1*T ~jX5yp dNv"f%vHvNR (أ/eOrgI Dϊۮ FnȃhF_"dX6bWs{JPLJ)g:b*iߌ/eN^|ShW \Ọe ZȚȱ٧̮:O@8|lEc  !+%9gċP(j"=qT @:^^ܞ Y)j=d$TT>κW -q J0tv`6VGNCUj:z휁v;V\\zW3-b%f<|EO8@ě~ΟA:zO].)#2:@ZOT oū7>3:kޥ73~ h7 "@Z1&N\Hvwed֙@oY鲴Q vSVki@ Vk-ҍKN:E[e @7 "׎B4]L26j7A1K{&YV`:|C KLgEJV]d9di7Ѓs#[ Ѻۥh m)F53vzq~1.#"RؾJzD{0՚6`~|qt5̌rxJ7- cI Svt֛n뭖?0 Ú:L8M`X{lƔHa< eQo~nVhZmʖ-=YTmD#VrT|HnFjޏz@XzgN#l܈vϙydpś 屷 <[LH}ju+Pi+:Wv-M +Oٻ{PSRb#:pV_Lٙ2INEp)20m|J-\">w{ N'm0l ~WYcEQ|'~W3F䊤q}~ ?w"l1CLX#'}exvGF+bGu8+w1Ԍx`[?E顧ķʍѵv7UڰY%rt6YY$4/E%vg9SL.JUbM=Ĕ];pú^vܑ=e7iml&97iPDlI }e7NE4Ҭ<|<Ů%yF!F* #K <Jdu7gs#I6pYU 0'&I/ PבLXpϏ|Nn9HI7_1 Zh|2;W"/YW"LH.n*+WiN6gH!$>*A7HZ` iӭ;o$ƥ@2^ dSkt*Z}G诿5Q *V!E>WbYI kwL~EMQ]+("ܸ-H픲}|iܱHb xh8w~]2ɗԹ1193L:yJ@DhݦWT<䘮 YZS`i`Zj&:s_knh.%#0\E>qIl=H;:X_s-mL{貅e݆_+ FM-bf]'/QDmM^5z-5ɹ'O>Y"ͰTOB<nVQH C[U+CmEMpe\Au#v:HfS0s8yđp(;,Gn} Q)p6]l.ɴX*DSQXuWۼZ.t3`xS ɢYd]<-L3ivq4#)oɾ?;^>*@OMGgY{s@ "[ Kbgll$ {='ȢxYu[gذҏ.'Wƍ3a-%š3:Ƞ4q `tK ɵfk^O2fw9{ AxW{lU I* BX]'`'@mp"Qhn5Rێ9Ы _<(EsYNP˹ r6GYh wr'ޞ~z)"pQj(μ6kklþH1ڎ%G۸XkGg-U !=VWE{muDtZTji)v.U&i256jυ@R ~ vx q...ͱp]X(ia_٣$ԃoEJ8 `譁>5BVMڛdʽ82zJok1L_6,;嶶mm-\C!R`"l.`ҫX M̈́_a/DsI>Lan ۦŹY!El_M D|zY+ oMM #8S3 k+B250y+_,9x~{ݰ~UQ62GM Qӎ֪B (@OE^=ɗ~wt\JX>L X2u!as(k{`~ncIS.CvaC,: SD/JGjjhk/fyg2y܅ v% W8 wyf-G=Bs8$&;:_UdV^{ eʠOŹ0Z O(TN\18GUzI,̚ZOŗvs_p%YN٢uJ- %>S"֞n"fꇯ >h\.kX aH,!V:(qH#-5p3BӇYTR㤇i6STǗݽɝ(×ASOm玶OӝEDp%&T ± 1*cC0*=g{%T{ ~ǵ_!S#!'ݥeK_i6aY ;lA`Hzfpmso#Οӻ_C0aF7/)UR6h㟠:Szvb=gmrj7l!9' e} [Pת1/L%5aድ;jS:t;}©%Sw C >Ǥ̚}U%cs*Vb>0f/T\c=8 IgL"M=cn<۹`i~'/@Kr_ wiׇ}L']1ևRkZmdGF%TvMQt-1W05TKPBʴAE zsys؛i9 ˆlHQaxl6~QKW(7e:Mb>l0#=JPp!F4wҏh@8{d#ކ4l^XpP`!)ߔV;bqCe-:Z{yE,)hӌ >7l_]!Mph/NPnٌl}8ᣬ5V#bupڵF}Z )!:hOKNXѽpʰ,S!Yd$mWK;{ɗm;zˏ!> 4n_v!,͕}.~*EP,hGo㮇*sSE2 T%xּu3k,8+!FT`fsz)tɀFBE߈}e+haHŤAkƠ/RD  hxt%;OhZ:i8J8٣}p`- aS_At+,lOhEyRݮe kN>iJMz hHe荿j+̛"sC[JFj>M5y}vdHM jHtAJGm̃&o CT&혺ͯnb ^~lbGf@#MpY/P*Y[pX)+ZUa?!Ov)%.7TCyNn2xiS`]ywb`"jy*,0-}pc}O:[Rm'a#|,z9z4~x)hkS%96ۭ4S0V_^m:!I/Cv{pMZf(7`%#Us){.$u#$5ϯٕN[WMh߀ #ɋ\r1 d Vs{s2 ʌzx @guXϋvT Fn\Ycpq~*G|24=M!{_Y.= 3ZM+n-p*BWqʗ@ÍCfW!281Y $ ۯ 8~7:4VG:"Cf58}<T|\  㠜;T ؊$(P^^K/'e\4΀d)ӽ qi~Ţh)(AwCwMN]v[ӄ| ?|yQEQl:|&)` DK59(ds~ZKXƅpB zRҶ${u8vR؍c刭4ʮ ܌qNBB:% hgPHL*8x4I+#ZN{ϒ]o2PnGF\D+{;o %C1(cr=}=i-^6d;^?r$uv@}5 |%:!]A,hߛ񓏇;s->dQ PnmN \J;_U;@Y!;KbW 㑧V ; _r6||Y4܋7>!ɏU]䶩B,F'tI? \8|k!g/Ng/8r5%Oʃ;j[S)VBxG np\YkD;9 2tw5fz*04 0KK7`V.b!lX{QuȫJjo4GƗJ,QDP ˧$Iw4B;"N9ڝaXMxV߱R?(rjӪt[_^^eQc6r۽^ #`i%TŧZ Eum*-H9]^Թkcګ33ER͒OEH)/2~YLV+/8`Qxn~1ߊؐC_)z+ҸPV)Rp`dpFU &)w90ߘf?S"mLl>09S>bpU7#"a NAc"*$G.5Yut!Xg:Y$@ݓ2wƱIB0Fc-sU|$8Q O sܻ,ENAt&7y [𒒟h0h+i%Vb 9\)CRϹuPk0ACC1ADǃ;V`W`juprM,40mpxSKpZ $b3IE Ut;yCqgrїD̡ġ}xPMXNsqBx6uD% L?f pV;%}ΚƗ=O{Zl"޶&T( )3tATgyn4 ]Twoff4)]GeUq=v1kG7tOMܵ>3.1 ŘKkp%H UW:a7/gJiJDd!3o(U Лfd6ē_c[e*:nq$؊5R[Ҏ2cy0}K'll̪rb+3ea3*dՌ }ɢgd@;H:Ξ[1:?׍,$IY.ՄF _>(@4;; gI9;r14kiv+cZYTjo&N H Iy1 EKBciy'DŽA+Ο5LZ_%Gf˔|wL}`w xmdd :4/2dCl8zo5Ĝq:9<^[k['uu%K6ڰaB7aU 8imO՘f9R<G~56<"gz^S5M-8H.KBoN-dv\gkd-Ԥ+Km}XG|5[+%9c_(,]x䪈~;=C 6Y~qqQe{oFQ-tB*z߁KE83+D> [?|05<2-]MZGH+O m6 m"1*UY#R7< K9:ۅ6|Co@A毒+I1~#cp!Bp# Ok' XJp=Vi{Iɨb|Z)*Ņ@~Կb8<4n@7^ }G[Q\ ?۵vqTvdn!"ÀH&`͠+:D[ƒ5ID#%y> <UHf@Z:L)n”}_MˤdĤsfDfuw[U>F.@:J͖2:3J(BBUϞf YDD$E ja s~HOLthTF:S诵zZS*uH0@lczfqIы@ҵNi|x'5䃯>i x] 5:KE%A@lݦ-vBQ|[ RFtF0FFGZf[>Q/UDtSz`2ꎧdZl̃۫*E ޒs *l2gR!."L]F\:>+u@fxgZU3@0҆5$wAځ *$d [Zx'W!GY0VGz?p綎>K&a0ETnu0MEk폫"]k)jɝdEv ~ `C߳oOdB{gtșY;nP\]mϠ!`ۀg-Uʮ+E+XL9?z=*ĥ[z}[kC8dTa5<523l?Wo?tޛ7qjb*IREP ə7>f)6<]>dq][Sw 0l:<B{Q$奙JD<۬`"#{!NF%F";?:u)o!QVʨm*?C^eg jm+uԼWci?xݎܫ'b>Z<ǔ9| f j[r4KQ\xޜui|a%olccsi1#9'/G`,;h }ȡ_n l5EK(r7E|v-w"U3FgmSk ,HJZtD0auyJKHnĈŤa/6:RJc !tLi~sG4U}G)3lۍCL,UIݨ>FpX˯Sx4kL _z-Tj؁:}JC 4B|"0y.vr4z D㢲y>.֫F; /NL<S4wS-KOn9j{E:e߼dT* (rlQ&1[֙U?D*g6=-?tbu|5{xZ5@iNe(тQ?a嬩Ah8Jfi$"݁dbU *?/uhPjBòW \8FI`(}QAhfТ74[ζ|HԾnM@3S -svݓT~ .@T#}'?Dh_WĖy3bxwTc5\q >- u jŷlq1 =3Z ]Zo#[B脐wCf߻Lssbꯐty`MÝna RcwUT)ŕڳmR+%EV kӒħ@:?jm~ߡWYbUib & :$!fdۏvpє7ƽpl9ؖ5XUp61z:GJQCEZȀTi߾n*8wj{vwm34KwCp#QtWSrIa/.i\zlOV! S Rg+3I?HCXp~ ';c\ߢ"sK''щqŽllGTy&Ǝ޷Uە1w8eӄm ;-v,H۳Yחй:c Z_fѻ |az\~$/)aU!4S#Xm+yJ Ïثo3Q}n tлDԸXQ@p`ͮ l,!ƕJؒ:5%j<4YZA"&Ї6n mלEEXhƙ)D_EgyC@mg/Y  EZ$2!#q$anK1F{%Z/Xޡ ~.3CY}Z)[~08 ><)Y@?y~! !!K4@CC gj[ttr}ĔImWF 3zϕ~Bm^Hz>"oJ!D:̱`QV )2sY9k$^~'3z+Žd֏J8+󽪶"IkmBi"_-ApzVvjҥoM J ⎈\AȀ”ZD8uRziV1=g$nϑIJ".\̇|9NN^i3&$pH& =kk &=AIwA>ܨѦ,ç&q>|l#eju4ē+}(}JhXͿ0(=^xoG*D8BF"p'8{;6'23YasQoPxGnzk7 :]D󲋺K 2p^kX 00Q?Ha0=v!B"'gꐁZEND@gwyoL%eMjR7TMv)+)YpL[]Z~DC:Q Tz1IWr=~D|a#0϶*s{ Px0Otq 4D8ޮ~P70`޷s8(${AW#%.P>Y~9 wSKPĿjjKc6EAa%cՙGnl`ql"Y{im:6$`ދKSk`bM|c k9Y<%z`lfGmd>4I|0@YTaB)Fxt[{({)Z1R 1)AHfטּ $ cJ=V^ÀYZ #Jyd8OX^SY/Ni\J\>@iw2?:e~>ǣc9Xgә  bmSŀls>~FDEXDrf#̓ nH>؍>nCfQ]1eHZP$ܻC㗞ٳm "}a"ߨz3TpmyIsR.c@NKZm!@</9G+I5,a;q5P7IpxEk03sݟ|bR ᬼ~$p; @!z{6T9M;h)@p>Ek&: !B4h%J'Z ƣBtSfk`G4N-yeDJٓIiBn&ӎW Y5{ܜ;yל؆u>fdB{@g"l1{0K{҈ 0"Y #Tqa1 Jhip/}AT b!B{׃A05LhADK 7' l:Ƶk%h 2b.mTqHu\ryNqF& %ue?#K> |چqx } <ƪBOI)U}=kW]BN.n0d1YC`"opz2.Pg<+M0ANb(!wp^Z2'+N$48߀`BxVGo0= :CyAZU){,A`Xzu <)L.-N`pN*rEy.dbW/&v$ER\…>c6s7u>VC5pXRO9q(kp< jUZ4d['UĢ\Nk4( : vd2 {;pHI5^u_O$̀fТq;Z3@\0NfS Xl8s*.d<,3}|.Oqūtk)@) ZiBP!TtyxOA/%ևM}|K؊{twSa;ij )Kph* 8c <lL.8`5xR?ɼ a[1Y&Z#]gKb/X;;d~Nu=SyK+6"n_F/_ vx17] nǽ7AĶ^ 1+I$`20WJ "f!fwlԌ3.=o4ӭ+#I3Wߤɖ|V>g|/08@K$C0wȣ`~|>lkJLVÎ^bx /8q-ˆ 4y!EKq=7C<NjW rBTuDYz9l+=?PP@W[9ѡje{;stbܞZ q8NyZ,Ntci'㔭`z>؆и&D^N+:'emQ`v 3muWXQK <Z)0͝p7d֊Y)~~#n1|u_3 _~$+~W<݄sw# pӅHt#Mt6N-pS=t_d:3dZ5CMURIAXZL֋;=DY/#-<|)ECft_?6fi j>mlrdmΓ-J!G)9(FNq'N/*Z?Z0ZqSv+Q,BƆzQݜG6L RN;wR!gab"7`׀փhI۪v^mDl~)BCp- =dya2OWȻ 8CD_0v=D(!+.+/ޠj3R){:1N[qԄ]K=.x2 lw3Ht&JfF7 Tx\ʼMT.Fuϯ Ih- tvu^V4iY(x+\a%=B $(ON5ShaF[bux:fXW-_i 1O Z#Μ Bܹ_i͋8Cв) /޴>@v#k>@;7VX\OTymrig;p)}be їV>tsGPgLJ|3w1QjfMNEɊZdH'j hw!=cn_L?s 4'637tf:٪` S?} oNp#9zQntH\ =wYh#ީ@іD(F2RhE>nYUN NI֠iGB\RBُ4:_#c*MUVnV_ qd-Ρ"E$ m.ٰ*gcj׬p`;ury]ȶciz ׵2mljDUFr-jjm+Kx=Y/R~;dI%Us4z7{ @:qPā.r ʴçBUā3gL5+ZEc=>0p$55N)#[47&LzuK:_u0%&y"pLjS}G=nmTdS&'RMQ|8,]֠{ 21[В;jP"OCWUaSB^yWi0krSOUs?˂ZiN*`0_J旭19HU;#-O;lm/)Jk4;s"i"]hAvef 1y34*9R[UI9֍ep\f5'}H ֱJ/.Ђj7 z`ol7ٝ)N;Q7Vz F+8dxvQrJ{g#VF9d9kj,vܥxUHX~=+=+W(#}~bvq%fmkEJ^-2cm%qՐ9Ov"/F%cD/n#G}T} l=U\lE*((UIGlkiJc ]kʝY bΪ_YR߹:!8-* BzǒaxR}XZeqѽG&*jJ[ (Տvj/|x(;hO` \ C"O%T̮x`݊۞0BDP7b9Tؼ1KLà@Kŕ-MN$xuKJ}Cs@TO;"y0ق?Bvz c^v./#p.>F}'rٲG:DwKԀ#h>f:komq AKAk4YK+[1"Фz)pu&G1PP1t@8ͨ}6 u0݄{ > 4{ a|Hʑu<w_1#J *xH?pGPd ޒbsk5ڌjh`B]{8c~Nf"R˞Ie~t.Ҏ;o55JP㏋g 22i? y^j۲AUHœY+&"}8\R,Zn8㐸I 7{~I6[B֚]ˈ@KMmtCjcn\>M@6h ߈!:@Lٹ h4wࡿ"۳DbnBa(-do1͘Ϲn4c7;~$ ]dx&` +KEwR븚emaIY@+Rs`xݥCϚp]@DR>0 O8m{ 0!gvid笌N$|0e?b-4>C6x>=";p(9Yup}^BlʨQT& L9ጡs}S6J]8/-sO:gyb\\u1Ac2s䢶$L(}o1k(1v֓􄟕>m0#tCu _NT5K27f6Bc=ƛk"%]\ќzziBRw財,E|1(FjV[ y`ٵ7CPE/?F(ӎ)egΆ?ÀO.VN@zsbPU4\`Iל@wW(z Rr11qo@b/g[ 8CzvsJt@}!x >ą՚JoĔ͍-MRuyRQT&#lR2 ~I@uߏ?m\D7ɬ$^^ţ< o<؄NyK aF({Ͽq@WMh@lbu{A;|qHcF?h'?|ͬs;^jјj.^yz=BN_|atGq*/[y@k *5j % 9Ew¢te$$)c8.s̎}Ky=}Px>$1N^J E.0-Ia|QbƯ5PpeNKB)甏kT%-HtErXa- AvXTOh'NKO`:hn/T1c odžѧB-~NQmf=]ƃV(V̾J~\^6$U a%!UoH&DNMo-֖D0z-٢Doת +96i㿯iOp٭-,hrHU[p 2R\ZJ\. 5*8}`pل}$d`'{>p,Kc2 VT\RDaCa7ƣ;otRA'( |* Ddzb7[mukьV ~j9X*+7`)]0tW.1c5 ?|9 cgiERAPw*Vk Sde_lߺ\zIۨ,ˊ҇U q"î:I5 RD^ei;UMn hPRidž7TT34@34o5TKXTM}=V-lTrIW]"1uas 32pQ ғ[ӯnaX8zIhp ` figK7@C YHe&K,aPVht.o U,=^ Zn7KA(y"wM=ʄIeĢh}b`.t \TNf8fW<4NerF-cM e9ppQ3?v1.#h߳:s7rO^D7 |0_+ ;jwgRx >C1$;:7i^vtd Ƿ] ~qĵWP}vma֨.JחP?!})rU7LWˡu^l5 Ps`.L$<_5ILuitPN9dIP\XS65B7L}Z^Fu(ٻwy e}ouJlB虖2TEfD5<~fN-DUje:pMK}-z䯠ϮFjidqbhl K߭j; Tۺe3 )fD M:h!okEb. )8FKR)-ٸ ՊEk_eStDU)}1c_e bjb6 #a+ggbF"V`Z%:kw#U MnxMrc (gh,+TV3''@nθN%a@v)׶jwGZyLueL]˪!ӹQ1E]u.@T"gLCz&Ck'Egc>4\bF~ОQqg %h6; {0j@> ;s(ڒFvHE% aehoBN?CLJ-M+qjZv!Q3C !r͘~“~ޙ"Sc4Ld<0<$_KƬd(^ Er IL}0FEDVù%,aݸkQ-A Zl\ }"!y3Qe P]PjHḅ̆xXXl.@cc*Yi%65Lk;@-h')̢TQ^;0ˬdaƗ v`x z鱞fľQdlT0k`pE g~[o3P ' У[=Oi> C~%MsxA+|k*%rV$UX$f0q0iJ V8?LC6PAv?GZ& ჍJ1tSX.)2ԌV~Իu9{.e !e\?Dz<`W(n?fwy&4MH@R-zrk=ba, ?reX}lު\315G$xĂAQ2;F*.a}؉vmv$9Q"kN?<⹼`^&\I/:0MnoO/IKǰӹrhʾϺƟ` ͸^d.p ;Pwۢf;i@ywWRl%elٯiwEH:\'N2lݧg]JE]@㽊/]U4a[* ?[Kɫ85gLr}@,v7Hc(Dt3r#׀dZ{n-waMr'Q:rYW/dYRK2sMy[*i^0ěY$ $|o]H+ >Xf[4v,AO8͌J<2J4o Н3 v͹7N#6NfMx*suf!\Of"I|[?ε_5[ݾuL}.L1=O6ضnY].ϼwXfأn.{}R9z$imUyD!W8~u!:k& !=5%u0sVwz 4BDt؉3Kwpi6ysa-h PD߽p? st,v;s#ɉdٌU^Mg:5P4xqaچb=-s$VG= @{C4R,CuYgSCRuw@~M bK xaE.qӯ_E˨Ew U9G$@sKIp4zs'$m"[ z={pXk,yBB:!L;xn@ѾpX1&Jtg Hkju,sRYK qRL2~ɢ!"8I-i~,4L*9GFy~+5bds #ȥY*%B~52'ܟpX/70NmBgq$fݸM0NZ%I(ݞ]U4aNWPz ܀t螇L1ҌuoJ0# _*uXSL l~9ڙ Z*:w3E[GnW-k+ k՘ `*y+OȄ]ehctQ ( /sTh!U,Oژ')4R4`+=R|cy4GR)]<_B b1va H8_Z45d|"õ]|PNى<u63f/~ݻ 2rP՞#%jMɣe4`i id;kSЦprՇi{+1 h{Jq0<"Kyq8ܲIg,n+/$ u㮙VPZ0g۔0[36vڼ2BrL$nߣ(W8YU$|q',ñ˹pN` 55Ԩ $::}7H\`8Ax&O h+ LOTo04&*WGʸhC:?&;< .l[U  GJM'1a)s3U*IDTp7xxزax%0]3X:h/ r\5m̥ > 7RaD)z\Hw/EWsRPS,Sd*P C"0Ƃ)7*[=3_b [U_>k'2}~Q Q}9JD-HRL[I<2uQ:3 g^6;u  ? _cN ̋=QEڵq+*[c8jV'.bZʃ$K#cF^"J !Wht6BG+f^ADc8 I"UUA4 n'jIߡ]]VN hkw Y)/ҖY'|㒔Q#Ky/q\'RbWɒ\橓JD~g1M2ps!K" 8]bݒ!DȍMNk缁p>pP.ZvHM.|C!a!ppZsF%V#6m༶t%HoPY>rn֨jQ׀x`l7idfJ̲ ˲;&_j!/c<Ho[i4 )dںGOAo8#&0< L&hW5!6g d<^mYa>6(TX#8ī=4P=̝9:>41 JZ_o(Pu!oIK:EC+E2Ծ `V/m>e .wcUtS8PuNjLoU#كd \S{rބExW~_;_GB#^K i #̽b?̀CENf!5bƲnhb ԃjOn΁95*h fڐxܺ?*$ԙ|X82+Ͽ !f!=] yl/nYz;zY]Ue?`| M tKxUcKݽN],QsIK2S Bx Jgy06$:@ ]g@B41Tr]MTtZ@P&=TxO?xFzB6^ W+K,ʻh*#p+v]frݨo $5VzNVsN2@t{D^!2dloD~J)9%bSarG̶w55~fI%+֝",z%렼ϱL#!S+V[tHhxSuV\M;@Q$3(U!{i +!CxQRf:o߃> ` R/J@~tg_=+`qZ>-,:6#b|Lɖȋ眥(9`5%b.d:T]* 3G4(Pp4JjKl)pR ]FY6+6f`1' [ve9jUդaş4ܰ2[Fn( G SE=X7ɚ?cbԩի \i,ÚWJVq2PAЮ^זhs+yb݋v}GuRz =w&g )9rLjC sAQ6l|]߀<'->`u$kUk,Sr?,چjK1ra_>>\4ELBJp6V]>,pj-}8{"d<8 ٗ?3)W ?Pnx78Fo~Lgoؚ@o6y7֡obvkwZFJwa>BH#n-ZH;Hhƅb=S$+%8JWFf6)㾯>5>j~oO {N"ZpEO"4a:wrZC" bMsȇq@nA횭Ho˚Nl]Ďie='wf+P~7D'+{ci5ڎv.O_p*,+qb0@9=Z5Zq=r hz} 8eԒw/LA`!پpUb/rGTIWa%e0Z#$ ݣHFضwQՐ Sb9ppvez V)Ap>Nc ]W4IxSC88[tp/EN_Ww?i\r{] LTn$XvoYq[L~r)o~]Hܨ{ձi/y':4s65WnKv\H0:?c8EG 2Mvxp(wEz/mq `ZfUiQy>tA\Fxb0aUp0mk" UPfv(TQcGq1(ɟZHcQln[,[\qyʶbxuLW*g BQ>7 <9pĖSw=be WJ(9\WhW$IAU NxұR86oA݆.+prh[aZtI z {P MՖա?NށOp lL)6{}4aLgiKVm?hQ@ȽLY񂲋ssτgf[]jAeJI\rS̤<)FB:[..gP;0<)'5l$NHaE4}R&ߡl4Ol8>8`ϡTmF3m]ǟ+\|, ~wa0cCJ]^0a0,åv&bokZ% A:_#K4ﻎ 3l[wLۣz],p޾y۲䧀}#YF37Ȅ!\b!T_XwR y&VPqf( \G !h[?}>YUӡFVg|:ǺQl.7H1e[UI1G܀/_U&CĶCsa{*L  ܬ7F _5:Q.9ː{)2Z 8ź7 ˴^O 끻ܱT-[7|]ج~a L)FMiC#T= e#"1f+esomd/QRCֻK>$oOH;f#4̼/L 'P @J&`4}2ى\ 0H-dXPW޵oSE}Щm$/[Z:[}Q`xyUg+T$*S.u>Qq4*{{ 6n۠7a]1 eŎHR5 4鏋iK%s|DCԹW9ڃ* &Pg8<\OH%@v|.dhΔ?zTѾΤq'L57{ -8*P= :G7C1^B̮a[h7==>>Dbebb")]ЁI/U;琦Odae3t};LlDRh.ɤdd/J}[z{7[{ݻGK ޲^PPяfAPŪ7c%Hޡ5[Z.H}le" Pss|Ӱl`tv~Oݼ=iv.`5t{ M X5%Ljw?6$pAFWžE~ʯfwa`Ijg`wlP%|0NtoL)$th},`$<69b*8[WljaOzڢYA"< %RRn)8wfԂYf\$vI&]M6X:e*Lj­ڎ[x*xDKYաl٭*42JLQL. +:=5ON]$ ׄ@afSM ʀBeƈ3SMFqg`'ͦP 1ix nGJk/ F{]).LssIEǙ];eloF!Zϝ::q*QoȎ D)<n8qx紟+~ ADr[$RWAv{&F]Jٱ dŭΡic5t8DAWk4G@'\zOOI. M@\݇T(~97+ͼ膣YJ|{0N;{>Td%"Ϯ_TK+^vQ7 ,S&>*$k h2-Y5$faPĹUkb#]3jMT=50d0\i[p -+%9Wv 84=1,#V듳4Iz8r}ut,)=y5&{,S IXoh =w G2 7UD5HpC޸)Uj:"7IK ^7~DFF]V^?p͎;Ea^+,mR6Y[bP+3C#BeYcq#p!޼ f,@֔vLb:uqLU|ZGFRwZ7r)6#߷vE*% E,&"qFWTM64kE$d`W1Ox,5xRT]ڵRB GkuDYTY'<882^mUgXj+դMHuQW ,RK:O(C/BaHr,Lj7M9^~ عfO@FS&;+UyX;m.]2]M81x {JDo痾OpִC3|+w" 59f :-*a_pWxIPc<_(P\4~87Z.oP$%őې5G{;Am1{%͵iC4 o@$;JKU/~l$xd_*d?B*.`BKnYov[_yr{8;zieWh-d\@4X%UHZ G1aRb?u;"mlqoR1O!oj+5"5 tPNӏDz-AY.QkC`4F!Hǯb}\ڑiKiPGbT٣t3  FxG>RU`۹Ԭ}. $={JIw"gfmCVduJBd815d(K7ώN|҇3_1% Y~@6:&tVq@lbaWy\箨j4~㖑'_Ht*Jhėr)pf~I1,Yt_3}6]̍Gѫf(9Xv@@ʷ ~]8@fyǐu9Îje];F_V Sz,?"νPya- wL9Q1-ϣiQ޶ 'jFPaQo ω' Y5o`'_T\8,21u*6#hr ^U=61k cD!2|!=% (KOgIW- Fn@[AO|+s8Q1X}MHT}?L a~rp..=qPZIqZ}+ll K+pLS]9TF5zp^ [{f˚?OQrgD$P#S bA۳Βڣk$:p8*.='ԶMNT*pRmm/ 'q`SǨE>gM,H Y aR/t׺'2km '},e:+1$4@͔jjSGq2b/{ݝ/X'Xc@6CޯpL< $\k2 !qPFO_\Mհ/yAVU>ծrLC4+(E{faqByf3'\ JnRꗿMlRzt݁,C| 4IGRrUir*He3IM`|@{R]Eއ-I2۷bniK]"}hZ˓/vYiz87[X|[i^T> Fwg+*@[Do|\E WZe1HJ IZ.^{+tAq{=(ZƂf-xi$RQ M8mT/CĉDpjz[/#VW'rj7jjr::@Z*fPt)ȡ>_J[b8IejkO2RbO^NʬfEfp\j5rYHj 9R#v ZQ%46,ChW %F6W7Q[:`D %&xc#=VE;O*s :یڑXlUq o߰=QWJ S2>go$p(& Wٓ"gh{W`.)b!wvN>a<;a{ڧ>Cn`=nOuTگtl֨B m{ {we87w[oM`,5y. %tch0Xn!ӊ  ^QV)f|ۖ-_sRCC-3B坓}6=sJmlUbEe)GnX~xMUR!-rx ak~U!^q䪁swEu6Y!Voꖧ}ZR0@}~4Oմk7d= ᲤNP{d9//xV/e; fdmifIsJ1Dp|,͜ NBd{S{bA0~䄢י|\ʅk!5WrUve#@ԘWLZAwʼh$@+6ȑ+wS\oN!~7pNV|' NJ+UHp1bcЌj_W05 ZwzMfM%B#&68?D+dfXMS9e "x8$;>|;J# (ĩ`E޹R.wK;oRf8N=4tosᅷ 66q~ erh5jZȎ/5_yEhG98RpF޸+ "Y2'=bhWWDLQ'ס$`I%?cn =H;GB7-"R* 3 Um,r? -q\(T qVr/䊱9,#i!+R#ϬZtᆳ@te:?ètIDGvw}&XQm0|X/ք\s X TS+{ƞZu~gic';y~%7nlԋfDH ԰g}E^XV$Ja\֓0%T;B'l}R-=e߁_%ԢHp^fm@c@RwTk# ϊ T|}j;jv8VidzjDUbJa+]ƩO'Av'߷l[&vHLegu/#?fwÖIK8,n(pq'XZiNr]6+i:pֿ_-aڈ%| 2)qoG7g%ֈP]%q]$I5Cz j)I~Kc{=[j?R1 +}lxB;@ċ`mf_|0 ph2Ŷ([! O*090tU|EBJS<*z4LX vI]%h[n~SuEJ\J;A͕p_Mْ쥊 `_1] 3V{1ii5)Muw"auUIgmS&lkqG}6p׵T(qcQ`]\kJVOEn62Dj/K!7G׃dg㔽_ Tǻ@l9C)8.5\~V4`?*8Ji '%3w5$}fwFKq1b0K=_ap63~}HaT Se'bIphXШl%Ү#Ra+ϓ{`Q!^LC6O+#T:ՒLoA^نT0"dh<֌\?` Cjk~m$~{a' Ǝf<1W[)}*=kDcBs0$ l՗jΖe4qnajn߰DŽ<JT  ^ U E ,+Uo.KPlwIpXK?H22rpS_[ ? ,A5&R V-/IXD;r>!<.3U h曖CҗJ^%%VlvP^9-(f8*1מ3]q%,OѰ¡uRJ1c>_9W:zR6V?wXE~ߟ/9j+"(7|ky'L>CHPeGݐ] y'Vj>.UBcKSYBHZ%}BP6{7^Wm\6b[eZ6h\9 U-g)}쥈ILQǫN_#}!D Ny!Nzd Z:i̵ɺ;̮MW5ij|;I{k%RD@5{YT1/ҙp8i׶ ]'P 긶ɉJ*- ҥd'1.@*ذP"Y9`IپjV'"̽;TYM?u -[fއ֝jFhs ~~䙥5N6ƴb bO.uf~M. 6XoOĂ_^ _z2@JILcp}sxdo*[ 9EOCI k٥g8a#O'Tl߭NafN:H1F*LƗ|S I8SN' h&j=NJ $y6q5|yЏa^SiCYg =Vjҿګ<7VVdp)`UbvFd"ժ'xu## A|!Q\3̨FW~|#̹fc8fǚ4m@{OI,"k~bS(ף-=xDCGUwe7,t -0 2f#>m*CO?Cl3ꏨKj2 ̭h;Q.KS1%Vi TDnԕM]IPx(2G5J9TqՍcp6c-]aj*w1 :VJ ^(akY|1}t']26τp`ҡkOudo um';7V]}}q5RAu<­c$9E9rCʝݤa-e5@^Xxj'rR|=M@ux(ٍ>A@Y)N6r/R^AjdT/\o )r y/!ןFeU7BO:9s~ dF{ϊF2#Q:㦫@C[ uwuRY?~;%rlFO\m{/.Ffc8} IRXlv6BP8}>Z: ޭW5sDYfO||cwW0e~Q"S5L`@t.zRSL7GM2Q} Q%~"Gy/lNle¬WS>D^岊 R"a@q- 5?P&*[[+ա%b*[yKh ؔo/Cj,vՠڑ_O*]JI87jj=RO>0n!ӴA7{ߕ?-t'Żg11Uxe]V(&JX$'4àdQgebe#M(dAz}{ gG.Z k3!IkߎJg~Հ-Wfy1ӷT4"Z&XLRCr[.K8%\Zq[e!GΞtLӔ#,0􊪭?k?ĵuaKAA:!a? ݝYfl72*UM_ g֪c00d$9+x+™]5~gP\,ha0o)?3;0!3uEڕ#)raS6E .ы:3h:~Iqqm*V 挥dEmĕuEu|~"n'QsimCv2 ?BX첾H_8yjcEI&ۣa~*NcKãi;X S^=-‰H4J:h 8C-3}y'~B9EC1a\,'76VGd@&YkL.z)?{Q2u^!hy!-;] : JXۮCĚBd)y7bFh vk6 =z) j]'A'i‰p>64uie ̤.VVJYjq8dY$| Z'& ˵!gT > aòo{&5ųY̡##aIJu[m^7OyXowu`hٳ(xevK(^]Goyݝc9È(n' 7o+3ۯ[0S ti^^AHB`̸x{]g?X/]K'=QX+uiW2#M3ٴ-.d obv*#P167)~=:H9ޔ7@Y??-nTCheksSwy+ߊ$H`1rl^F]9]P1F}U+ D?D()mD@Ͻf߰٢h|.bS*N\ op|WӚГF=Nqdԝf,8zmomPMRJAn "s/_7lhteWk٨KM2rǂN(!{nbˏv~zE9?0[*Н!)/(XvPw<L{;GDN!H(kO_ y7[k}{}X3..TfzWڻߵi^Ѩ/ckE;YYKK2Ǟ4=ԀQG*y~&H95* O8ˆNq,7^qfB$keG(vC.C0A"=?lԯdI@sy3 .תġsZ*'#d61 {S0 '$+'QI-yUKV7H|o;nj0Uo;)1=4Uԑp$Ld lMJau#D~/yM!E"ۗ٥WLەHCz'Au@/;1 vH(J"zs/`Eݸ ,r$up]st؁ bPq'*)j4tc.9nƹ%G 1u-0VYf5 b Ōg/2ED:w=ʱ$m 9kɍe5wk: JZu+xyŠ/b:7+BAiDϰuVwP1X:N5,zy[.?f1vN"9e'E0Pom NaSaeҏahݰ4W Cmah^(W;d_ Wk.%ʹ_bO{ 5*"_\3Z5|h;t\_Z,07T!.Iʟ]Fc\B [+R58`2|k]f_5BP-|K"q)%@ω=lO[wc/6Цf^ 'sAV@/n(*%_ T . ,Ms'K2A54 dr奲Tsu"tTRwT H`]43_ ! NZe" 3c/!*vVzjbm8;ly3ec^oͰƉBf)"JyJV} vlО%$3m5Lx)K% |UA ?rAk,y+4EcӂŽ@!Zҧ}")! #/6LV_x H]fSz ɟ $Yyү[u˝k48a,f^>kf%F#D{cjxݠl$ef3@{9{7*"g^mo 6Z#CO\2= YFķژjH&[ KBc :lD?VWRp&MT EE=N`SlrujB|:+5\Seޒd rX@r V +FÕL*>_RO< %}H8&ZkE/Ra [XA@'Tvo69NyB"!ES.OFTL/`| z NqBn"Ш,̦闅c*8v s>)p # z̵rzi˶&s٥xHAY򌎆l*AȫkuP4wUO̖9-1-و,-8B܋ A}fֳMWU{ *ӠlBO!9Ϲk0EoB!|hW{l@ Ј#/;ᒞ , |oj+nZfҏ0B9;g&űUmIz1nht-tI%uuֶ4Y7`CR!ChI(諣@bht3n2D8}VGs B4q헪Avzb7?..))GiKb聭t?@y#DֵUN@GTo*!%;*k%y֣k8:yC>%DOϟd)["3s)OaVO'TXkoA24_anbv #WA@}fϛ& f#Me(7b~#ݩoo?bS’`;%/Kus=Im|_%uR-"ƿպ b ]BXx68$dz.C=Ӂ~ 6~^fzDos4r!ϰPŐg睌yex-,c\>ÃJ5wqb BQ"ؘPׄDekl(A?4=~j  Az=0c2[5$g !PX"Q\_$u>^n҉E;j\x^lBMzXnHHY'δeU1@J( ]Susx`$2 Q8VQ cu (:IZљ0݂|tl&^j`PՙɲGH j}i=DK;cIӢa_t6Mibu׋0yT.x t\Ӱs^Sr:'40'˵bf6y t595S~P jS73Ҫ|38[0lz3 01'D|E~{f6iIT떎q7 ;׵Ma_9{˰-WP{>l N5V{ 6(Fi&Jo'$sk9ğퟙAQ]*M*[RG~UeWʼ9|kFYM=(=dX:s\84E}iHwTOG E1bْG"z/4-Ng'fh~vLļ-вɩT{xtC/F6^P'w;;NqiZAmcFa;ջc(.Q8qC/Zr$w4iqSJX]܇%jɫDKHt /$V8J8]>OK67\Pw.59-IJEO'h&߿^!}], ( E# uۨ.ds#?92o}Ḷ uxjL+wZNHt.humLү 7uZO Ox6w+T "N*gOb?}c}kP<(dExEY&Em]9CUeBn%G8/sΎMxY]iܦJѦ9R/y2$h%~{0A-]L:;'GNPY:nGKbl b'U2"vp:}L])6<8C 6ڵ&>Mn-c0e39$J0 [zN]ZU$/ +n̷(oQn.ǵ nե4}Ogr4qI/g896VPP'AՖG6 Ն~l8K^Mȕ='zS.mRm~N[:d=4~&tлIKhޣ>58NPZLǥgp=-]k+rad\ x*>W )_^siqKֆAJk| .iik ;)KP<(Cu>;FG#8_7q^BD:9--&`kN~DaPwK;6BƊ=tgYPەDzs#>u:|s^U&6糸Ng4ϚzYh3=YYsV2N31m&hM JnkwUCI~䋃5O(ⒼA7Cs(Ten4X }kènj.Ĩ Y-soz| WQApjm>͏V6jh=|}gBZ*.!MŎ:(Mb7)C{rxlSh#Z"@r^Ksɔ1(E +n]%[ށ+ZB#= nkF4-^SFR],~Z$N ֊n}:[E\V}}uÌg 8oȎeL)T-> BsbacfV +JH:>jyi)yh ^OWz '%!}1RP*I""@ c:#0{*<`ZnGX4dUO&f[8LϬ:.8AwNY[w;lGA2 Skn^dE$e;mڽ!pWݯi"gR5[jj- 6dqy5@Sگ4ǭۙP.HR 3Ud`i'(nm\ >ew.-߾4&P! Li@ Q7CΙJ0kfFle%;Q:X]e]Kx/28Ä-l1nbim'y TM Kcv].+]DhR5и)V3?.;p:b`hl[FEJ ,Rv 4H,nWł&[{N9bRMY'oP^ \jy'0tu 6hRlй@pa 9Q @kG q3tc~wBZkmυcEaA7rz+7̵ao"#ԟڀ@\)Z~qF6×v"h#X`-1mV P"7Z9'd^94=o;n73xOIf7+CsڒUC"`"D(?Q) EE9[5TNtzzٌ)?6Ĭ# ZEG-t]/\H7(kG>@}A(0(lsȤ,7k4L ) oԵ_#{D*%yLy&#Vazfawz'*<7-F'@ݡŽz\Oy[PK2'* oz7g(-$Qa<8 Oʁ4X-xtW&MC<[XE|DzGh|/+԰]1=G-kK;y̅$zo8>EQj'4‡S{~ib#%Cs!6`AV WJ :j1S_{m΀XEk50,:1Tԍඃ`,nsf`Ҿb(1>KtpRN]fm#ܦq -Ҷ[#5ĝM/{'`)`%%ȑpdT81×9gǧ yp_AH24b'x8[(Q 3#qp,(<5 A{E?k1J=e0:/P -kFYK6=X-2ApH4-GIs:i*Ζc wL= >- j)UcbIseN(lUO+>P0ĖM" I1MC]@Cw%Į[,#'/Y0ۮӓȃpKe %E%wXTMB&mx3M۰uWMPX,Z2s59R~zU(ʶa2r&(J٩z09Me: |WvNJ>cf.34-“ee7V)z-@ve(I#IRΤO-4 RUYbə1om| `6yC ԧI)Q*ydgqkOdAQkCM8ND֠VDoD5E-k| H]E:)x^CɧjoO Oxs|,+a|J1GM9ap@^f>"E>δ뉬>[AcmȂVjgj cm5{֨(};[||@*bKاR훤bJqHU['g8/B$Y33 ?G;t1wq&"1z 0V*.I NJ=3x0A3з]O8?e`MKf?XS %tA55ʍd 8Cwt@AzPa *J[.#{$}`] DHO`(HP]DWtS$y7%o>vF{t1BelE@Q[Sm|&b͠дnb#}MMy_ke>Yk.SѝdKRC9.}`@FOŭP=b\}XDRNs⫎-buuT&`p+3Kq#x6^jWxf"-NӘ=d ‡ѝܟ޸7oAGU pNB:8=S,+]f!2iU.ڡ!W-ϢwZ]m*"~ydǯ">#8άLo]ˈYUNTd `T}UU<7"2dC%.DY|>oVUbD#Adj4ӷR"1b&KWQ[؈f'N?R| M}]&9TC [gI.z7-QZA9̡1U/gA]NuL 1K]23 z;mҮLPL IH_'ӥ u">"ooHQ^L/uXY+`Jlq䶤S')+RZ< YIٵVoA.X5|Q|Ō@l/P]źf)1Z9c32,qi HT+'`O\ºⶢbNM`Uk<1m\.ű~ŒYIXm(Tœ'_1TPxP;"5գ^ɐKkD<-te 5Q!86M&|HT \DE (0aQ_R aVZw-AMJS[ňufzho=&"< ͘;N7$NQwo+37F56ߋč|M4Y&$*_JkL%VK{$)pR&a.U2 *jqc?9TФnEI>emeEsOTySl*$Va$($ gLDM*N|.O,Qug M'1.-X@΅5C?^#ʰiX%1󽢲mֻkר˽k@bAgv?zNa=(TtpmM}*N4Ν62P)7lWkkN"<=H 3㗶-Cvw%s%śO1 8:uh<ݕ`iIiYʚ)~ v4KhR;k?'}!nv9:@ biD|pm+O;,ӽ -0[7SY \b}=e9qςzV$gϗkȕ*˳5o[~HO:ԕl؝δPQ-D~6eh it ˻)1Q 0"Ha-mǶJ22N(t#Lp,JӉXNG,vR8U|Qd/SҊ i5^Wtsv3=B0_F(Qy]V,풹4FƎk,JeB;K6qRMYuG̛%k1qE{Ճ Yh8V{/y.-k4 ml]Q1]h1&Y7~S.;H-͵ ] oG?E|iU%26i4s]H"}3+جޔMdX녘^=ݰj"l8U4nIKw벳`@kCFe'ktfَ } vAJZJէaߎX~/YyEi/v(ЂQFixH62UZf׭ 4lk,P k5*3|yɪSIɲz\Qǜ0I' Mwr0F M<|;Gxa¥GN֠/ qPWzp$ŋ%d T\Snح\OŸ&bZasqEȽEl0qap;hn$g߯uVpL5E#r݁]s?/3薞f'7fMtN)wM:!ýҫ~rP7Gk˶Whwu\R6dF&[sW0&s;?t10|L뷦PyL=,F1W=?bqS?-nΑVܞ.g[%$F`  XS¾fF"#$| }{{O ]kejc8 q(%D#@Ϯfn jb-߮|׬IvXx3&]7\W^?!V/^-!ذ],Tw',31}z@%H} eL}FI>m@<[z=ogL I!!2X^$Fݫ,478%C1&j`@ $%XԈu]vqcQ^,H猔1˚( ڤe5F2%^c4XsgE[@nߕ\yɟLl|큚അtyTsv ;8&= >)4^{sqOG R m;;å-] f*%gQ;?N hV Ea9ei4 :?ܭ}/h3-bF<ܕTkuplZAq 1jP7uq'WKGRurp_Ci$X^oZ9$߲*1i-E#0w.=y* ]%W$=딞MڊGˏɡoa:ĝa0bMHLB޵?-ekUjL~ kMD;QG>]b}xf8䞤D*b,HHVˎmJ{y۲Ò&}gY^4;dDݮNKkT؀^2? ^FƜO~ϒn҅>>Z-7+۲K!.;$xym#S4a}J*(?ͨyqvme[ 6eZTQ }[vGTlbCLcq8+k?&Vl@BCh]ȥGK`x~a,=MH`"mUj¦hr* ӃC:Z)խ J05ZKChuqv h我sM.ɱڴ!qa` ѻ*b[{J%y'#I2}C{kN2ΙAՁp@ \Q &!nfȍHn^4'>t<_q7@.`U5k RˀľOPtspesW@gFy©81Ie~ل#̅D:.ٸi'<e࿓*3W$;)AAxmܧ8+ySr]9 $83—\KX=v۱o\,q,TWt "QKb7SgO:ݴ\vVAwRe !"9b|OE:G[B(-=G)Pls2J7ch4HB07`UA#70~Ô s0Zk? t_=O7(s*q^X aqr9<.Ȕ qcuj;F^JӔPcȀO K8AP XIӏV=P_he⅄Mˈ{'ҪI'5͝{=02v__jAQ= MG2ģ$ 5*+g_JlWrAc &2UJ V} #{:`@sO좚Z3ku6u94կ2 1k4(6 6?*oy0w<(%Њa~;J `j*#_'qaxLGCT OՎ>9><76,S{k)P_ qwE|3j[=tc(qNЬa) &R}f(=gJCm] B9>],R 6UMM)LP|dRN%C=W@|'sȦTTbTPY^?b^d>3c0)kU5{@C;C&x| \][F!큄^פϖpIDF32M{_&mS!(]BP1 YpQ10'4!v񊺠eNL"a CѧyrT`D 5f.лbiXNF!߼m`qZ ٹ1-"l #e薐> ,)S u H 2 VÕb&L,g!M#0<7Yڐ4%c/d!oi/hsx1Iυb s#F#Ng)ܜSKte2@!3&vSWK"D*A-GW 1G}mL֠!hc/+-0DCOU%07)ze1\ #!jKj,C@FmwCx܏Axܨu65ȇh :O}W_x k/ GI\N#5ì>ؒX1\ !uH0V[ܠ.N) NS , v.N/ՙJw2gB$9OΥt _: $*OjE CWeڒWZZ/H7#29):+?ms82~9/Rͯ]U})sI@5NVw6zJ>۞V"9H*OȵԷ70ǝNͼ$nU^sB^vL9x;zL,r8C 8 [v!$Je Jkc1?KUʼnغ-:"r 0).:G^PnXn~[2kϙW#3ޟъ+j~->7a)̱f&9,a;TƤY@LOVng6:g}_|~Utq`Fw^P̷K_iV5s8ܗ0ͬ3YհԣryTYT|ElRL_x~/A݇rΫq ,0MvC##EFT}뮗]ٶ p/+N*@7s'wi.1Cj˞ 4}XlZNJI"C-ٵ3kR YTzI(y4iQzl)s3Ӄ՘\np4bTV^Mz\i 1+L^DD0n4;fWwtCM17z6 'NIIbg+.%j e1X bs@XkV @@t,lu&Df;ǖ 2R` ~쟣J/Dk)p S3j$h x;MQI.;SERz^s\ {Y5b.@ >6wY ZlocCVɐ=<)Hzom0+T> ]r}B @w\%& F}Jf!nr4Tr~n >8="{EYKu z}B6HszC 8bD\C7AHvIVExӁ0nY9 dX@H ;QsAPYf@l&d1gҸs< )lAΕ}\#3O4g#LؐóE] q*n{Dv/d _CS4R_ٝ$# ~:jüd@aSIj<3;#Qd4zo4Seb_"B2bR1GJOգq}x;ҫ._clH!E[x#SOl] [svZ1B7C=}u&;"9NηܵtI%jO #Ljvca')ռ˂\{1I^:5/{P9TfmoeTG69lkYf r$9II$ nxNtϊBJtS O!PM Ij_*h;Dn^{HFYTV/`8(1 jg iۇa*%6Ly} LADV`~++6ZR%<g:"^D[ gt{Tu uUcLi{lJNL]qDP*vӸ !FiWA1flZ҈6Zu:IfCźPZ #_n]\se)t<ٶCڧrk.6GkU˧la${/˯1C'?v@R-Y˻): җǟv79U=%8 ݊WO#,rIeI4";|cѠ.TԘhG. g4/Uit. R׮$!?V.F ݖ5%8dS]Y[ ZA2KM6ҙ[e<MMucOA"/.|רWY4݃ډIxܿ\+i 2[#2qF lTمvA9\x eK9rNնB>+u Y+`gJ)_ܠYX9E z+oNg(MJfqk-eEf4# %%za97t7cO8 iք(S$,q`6~&mj.㐣M߁iO cq+g2`2b1ӄ-~TȆn8ռW2ɚksJִyշ%J0,E͚'R1@?ҍAԤGdRZ7\ &A-x^oXq-; Bx޽Sa><ȝ6 u7 jR#}v& ݾt_%8ssCVl'},O~+r):=k2v'pڌ \˕B}΂KHC&#tcΝ n;͜YM7>W:f j7սGboj=M($d]EBet "9/!2$K񓂁 *# !A8LJ)(5IilcXS!d>r{KuqIU49öIWA_(ՁV(lsM+J`Zng.GAyꩣ1w6Zҵ,HviۊE;~{~MULqS&W 7vgj{_TƇU*~ jY[ %2*Ukv9c.o&%\KUw73ڬ;1vtz$GW{$TFᖡ(Us^\=N+wuHy&je%LTPWPjްջLܺտ+Ϝ(:AO([f1ڢVF^j7_32d=IJ4y9I@TTkbEoғ)[ ̫~nzWb_ YMIHލVr@M!@+ֵWCn29AsSe@GSUʠoTD|'M~IQvdq7ZDGdTwYc*eRmޗd>0%TVXjѬ.!qMsM_zkhU7&=.ȑe?Iґ{x @Gk?9Fْvl4:>Vr@?|ګq >WVY8f@}hsvtߜOj BK1109?cO.9(C h*[@̃Q@zx'? "7uG @:u L ߾8+PhV-+LÄ/;Eh Է7һ4E 8H#rLiNR*kBn{^w1-J-g$ONź;n,Vl"+~Q)iFY]^.d߫cԦ2"Y}c)M9_G9(' y3dK;E+|1#t$dZL]a+#ڊ?{*g5hS"x&T-ȍ׮;8&MΐcDWKm\i)Uΐkb:bqOL՚#9):j?^ OLl {Kr[Ŝ Byӳ4Hy4IoQV։ZNbBvpOznv/uŰFG|S}$DeD:?vHhc2kLv8&]e',`hTDѹ ѵ{-l~tN]9W+1_DYmIH:+=VIugv>SyO\Ǹ &` FI4^{eF֙DA6Lr1ѡ[>Kc&׾,^,Ӈrwnɸ o|@@I (.bVThi1 ѳ=)q5; YtДx[6T,73K/} ǃGh4~lH`EF,4H.ufi TpVխZҡk#2 (JLc犛p{:[ew'>>#i^o=;F4zЁZ+r4m+_{'1}L6w&e* -NÛNGTi9:q'`";@,~;Gq8ry,ч_f lk=E,StRu|;J"IAq&6GkW;'*Yι{q!M TyTy!E{#ūcǩAzí`d/$uupO]¤+ S楱f6% [cJ|zhOe]l_sk^VDԖtRxR+c|e`b ʢ'"+07`"DE-8eGKߡb>gbeA'5\K.=4~OɌmZ>T]~r_}7RcCE @嚟5 W}(<{J 7W^ ~[*@+%H~_1J$rÕC}`>{ 8(9.8Bnڋk.ϟa?9 0NsmS_&/&.מ#E4~lh;{oal"s"mw)قJ휷D1rR^s"x<Ҹ_Kp_l9>=Cs }(>n.U Mrs|RD?p+A@J+7X 4}dy%&\8$`pdKPl튄ԁFUzM줔揁O]RKrT);;f`{F!QͅRu`f<>dW ѱvv  oTat\ PA.+$)C$>5t*YL l~Ucjo#1mFDH9o\':3ËW66"&shu3?Ҟj/C&,w %,X"'SB.yet#>nt%D˽*vڒO2Dj1 +w[*Y\n =|z\/)'q>mV.A[ =z_dlRnAᕢGN߸ob\-O1\CH-;ӡODӄ?ųR=ϞuM9\'a)YXP12. mEҬ9g4`RG[ؗ9pЎ{a-m7Rd*7s|i߃vj-|?~osDז!kUIޝ9e.Re:Zo&-um =5l_;g.yn% R.v&:6W&jh 42|z"ˮ0$XWZ XמNc E[%: }5l>B6ВAQ -3>[JHZgcPxUE7zn{ϔ+|_%h&#T>`XR»nr.Pkr j7h prANӦK*C{QjAxL<.y%&'SD [dLAţv0*'߸dm\Aio:; @Az EYXZ^K%2grq=p 5,K"rFaF(2z:W9 EЮCңJn؍= EƷKpV~F& /} ~t2ӻp!^&sJ͑n82p%"PDu#9 mM$xKij:|n+Gc_Δt{z__R^'9Z-whxqWF_~JH#ZĔ$|6U4 ֥a@]0ѿK}i]?`!$E}$PpF!wSn%!f.ezR!Hp)70bBLS0fAW+qFw PxeACȒDn!jxs/&B ,uͺPnj_ue!T Sޫ)k@M-OOg~s!$q=0yh#4nJWN꼹 WPпL$ZH!,"O8dI~v>&s QKSfYhX3xEc_>dZY%p&:إ*/v|P_2EX\8Q :[A7蠅[doT7.z0œGd`2VϏD"MZb?70 l5uT5Rn"m׌mX٬,gXuMdWcZ'TEu.sI4VWF BCyn74B|$xIj5pLѴ̉.b';^Z{Ƌ:fUa¥^ފ;ajQg@V'/9H}:a2?6MgPQ 0yZzU 5jmi$}:\@rw"GʊL_ lJW+%p&Ϛsw؇۵[-7۽ALyq: Z_I/@@H)>` f}SRSDoK"t n^yb gˈU؇hzGȴݲ<s>\vDFbczsrٛO[! @1Z+x{TX#.㒭6ң~̄MiͰ9^g͑lo8sտ%R_h'7ƊP`\hf%2rJw +X;/RFp2uUpKS0C,0M (Ƿ!>4wgIIԽ&IAS:nf#IX+}(V΍*9vňBc).~ WvBC{\%ض 83!U`Tj F7t "yyE29ye ƞn[x  %p\G)_ ltItznJx{GQb`I#bkI ^~߬k ~QKBjuˤ2]PḆHO//9"(c ,cq+SNGg@q@q+x.;1e_mTaH轔&3y0 :nN8;–Hkz^\℻\Vx1Fj40 gnW{.@<( ,p0;~8#-0]l/f)㼉ջ9b>_4WT<@s|$yQ?}ؾp E*=w.aq~_1Hlpgt-\R>vs-@!mxSiEU Lgv?(u,E'` ;G.^=h+~63 gcҤIDSMgw-K@-E+OH(&7ڀ|oiUMwhigsRh e ^Mo.$ZO 1FOA\BVQyURU04 CSnOy2}JŸ%Sr-cC-hakn,^x8Sl;1ȿJL0OgN?"Y/\3Nx'͖w&gREnY"|/>mR5+{VhVX**uPYnT Fyc:rCNX(\Qm3i 6a(+t YRCJ{ rд2li- pSi(MwƆ1k`%=H.·q`j*GZ7&'픙!wg`$u?_C%>nofiRܞFøZPs+6Txzڪ~,.R eS.S5y6(gnį` $ZDu([1lJ &Mh8"Di.I쨅/okkzT@wb2-$Oh^&VX2%IY%ȠQ:,u2`{咏Ѿ|]r gHtSD]]ylas9]H.P"Rڞ|6"КABB ! ,^ og0DY;ڸW}-@Q'̍B=ba8Zkl c_;8KZmF* y^sm"8?sIZZVyM{æ gTM̵_ 3MKpM$4"Ui1AQGOۨSy9~/s Lv*yqo}bR+cť:^L7#gJNe)A͌#IwAd3Ԫ@OjD # ;nܽ38y08$wݗL\+ߢס܇/i0 @'!'*]d }wk(Vlk? qRz9VfB^%X^w^L7`8#!#c5ėL>ڂkSs42.r<ј O)(: 7aB__|D8a hi'=(63^QKB.9wt&H] 1'T f*(a v2"<<^{xeW^`c{6g. ]^F;4!pGd,T ~ MlF_ah"yFM.z%tk(Xbfn@|4X.kE A40KlN46lj ]q䊆q%IU=33/4se{{􈀦iIYAPx:?t 7@`qWg%$s;ü7ifs^ܻ lmd9.+ad WHהpq{.D9衊} sorw 8^i#p]lNR ).r {k*{'Yڃ}aot0aX+',љ Ѩbc(վa6an@yU`*˻~X=6w Tr] #Nh;XC y\őo$ٖp2 ̾,MT^~tqH 3pi&.p"gs {n#+?nғRIe@.7cw3C.lDxv8=x74[,bnT褮JèXz0Q'ˮޫD/x.JdOU⽴DOܿ|>-g{v > o-V|_вueBlįⷾ"JcF#R6np}=r>Ϥ=uV9*뮿՗s J׎'S?p֞Z>at tعi uP=CKŝT{SJ= aU/!7.slW#'15b7m) JL.ԴK:Bxe}IjK쌃RNP ֬eG|Y(ynbW|jRVtaĠa8SU'8 ! EVP%숷:DxK!*M˥wL</ԩ Q5Bp!lU-82zp8ECT rt'ͯtj .}6+cV~m(YsC LcfK$]9qXPzaX򫭋ژV)W8 ˙tVUTΛ2$(pI%b$eyn50-FϩDtkR|r%/e(#eHUz> 8]JI7|UKF^ 參R8/Xkf$MDސSԄZ8v5yUh SY)o.Fbz?ק^g|9M|KlpZ|B.yka1B} v N1pjGjB/W(Es*.8'7LAUw`I|P.- Ynq̢8&jG#ʀ ;ZC;2$+v/`"ik>!nnúFEZvs~J )/+(_@SM2nAA[p qmsXNa&1ˢ$]WGn~u!X#mNP:Q$ׯ̇T {[^-2R))L3H8sYO||X Ev'Lv=!ȟhe(΃t{QI!3A8Y #n(C3Ǎϓ-('Լ|)b5Fێ8L*;TzQ_k-hSnem¨ʘR9+|Z1 祵כ4jA/PU-C1UuIz$x|wnT5\4;ng䈍vhQYZMu1M3cZ@W}qhZ_rl{6nql/d28<ߠsh\ξqUg4Eezzf>R]fv9jPN buKt +T6K(4h8?ҹtʶn!y{^-I?t%a.?ZA{Y(5$"3R=cxI=L9_/#6u7N<BV$1YI./t;{,dLŴjeHf$(Qj]7+9n(.>+KP/CO^W-0HRw!9/Q#!:wϗ>0U@੉|;;M#Y͊6˲ݐXrQ`ܸ4]`klqaYGDxyuQ-iqKoxB0Gir'/>1 (" h %N\a,2KQ[C8)IMKXk~@@`O_Y!),*qQ+9$FbJ:MOKD( qBM簗Vc7si3@Irۉ Y/{ Ȝ)~ܳrЏx%/g{'? Is !2@P3j*|+x̰\^& ӻip[V-iԑ6@ˍ%aPx"2wFLlS"E \FO=uN_NJp7p/d)'dU#U71>jڱ(BiOUYxfe#R{D[qۢ5480~Vc\5;evh`ޕ[ +eiȳ5?~2*}?Xh?DNzHj&˳،-=YF &9{vہ5M"Tc"{d[t DD!ۖ,ڨ4,YsڎwiXK %d k.813--nD,iay΄=QWˈ*d$sb*"]IzCw! 52*2z/CB_(>'X9-rnx{hl""p)tqvR KBn9:=;pfrgmN|L过w))}xЮ[[4ϭxIS;ǪbCdɨ|T|;azU@pۼR"dƎw}o"u_KH0jJdL=Gna\Cj߆·sC+xL=}^v[vܦQL x#UPdWB>WҩF)JK8e;&cZH2-HеaiPmaD{k_e.>uW"@8|{,(l<i{}uʴoOz]"eo]!az@*HPt$cSMX`foYT'ϙAhZ(iڀCІr]6\cNfT = ܫNNn< k:m J4cH  j l{Q';mtxĿި`CDώ{7M|RZ-]<٨H9(aguq7ZΩ,?%zzMxxX6;賸l:\(bv|yA@ٕ;$o vOޗ#ݝ]JDωkv"1b $PS$x@drh٥YΏ ͛] {X ;tpͤr}61@ִU:;vӆH~,%-V/&M6G̀ˉY3*t9>}T8tY" Y q˥r/o$I |!KQ ){=X׼0u1At}rR Q+5/][?kղ_~Nf % RĶ[HdjD4E xV8>*JAmɁXNUTu#N_R WWödV@C;nN/o[<9GVI䲦T}#'!Կ; 9|iҧ,ļ6nIX wa.u&`˚@$]2+(h17"ݭIV2^K~ g/U%, j.N%[HYatߛ8O" Mטvai(eX,*J4λiCu) ']G^:Rb/Vk`:쇲 ²]M"CYg-Je#e,< > 2GJ%)}Ye}ZnX;Q&~L</6,L1Fx0p.д wX[4qi`bf/e>͖} qwJlp1Նmp곃j1f5f?: 6HLKȍ+E%{GYJ5":U_]|DpܬL_ZR?|&d ca ~edR[N&P@螵&4ϒubm tfq&`9Y(&y4Pwp(ooA 27cE$^ӑ^@:VHw~Caܙ$u[>b v5"sSjh۰Ts;PyU߽ cAu }hdagp{U>Z 4vީt4gd7fBpu4g+BV)ѥp4sFcZcg*ɸ'@Uiů4&aX-!6^,1С_trvRwR^_j$Yh^kk6_(naVTOZ].?:2Θo/7FKY[6X'-n[9hL,T?;N /BuzN:2NwXC% :U? !cy{3\/j'q">˼E새CL m_II-P b|>N?(Ͱ<7Q(I9eUgn>+DNӲɃk:=,/#UK֏pP*jP2%Jxm/^ "ks|^pTm!]au`Ef˟6wa5YT 3s)B/u.ݚ}3ul'JB@:=!i),a>CVe0݂ZGRS][*nA< ]a9Ɣ`'\eH$nC[ /tGC)tڳSd *於Q@vQ>LO9jjI {ufd0}Bo?N58#a>p&2-5F̛$`ɯnȍ=V,Dl D ^:ܫZ0x 6R~Ff°GytOuK|ꈞjQ~ MCw [WF8Ɖ.<G !!At"?#}έP߲~dYyS02] 'vF[;RA:cnA}N`&p*qΑ*EG1<<J&or9VGY ]1dlg2mYC:l|2eS>^mGr÷Ҩ[ xEWq[i LYB 뫢•ئUpk{Q'M VjVwLF=&^asPA#tc^pV ?ROOfM*poiec~!~ /{H2"Qy'vfuVx"e¥5]ǡd.8;BP/\dHiLIfI;5#h|/7;ߎK~ 2Q?jBdTt . 1@_a2ZD͘!<B Nx-}=߆vO6JM{*V÷.`)jP{5q5Au8_+v8&Y_c&<5p230$u2 "m")bf2vR&>ՆFS~ 9]^Iڷg8e`w%)V6х[EC ݴFAE4̖QKXx0Z! >`}Su߷qM ~R$b.}b1,C9^Ҿ@CHcC,`3`_۽Nk$"Yz`[ObEtq@@,ӽ?}Nb?rREN}Fl)Ij6D]OjU?YEܹAU:1ٌf*C T,wN"Ґ*YiJNEm'.VOM9X;`KŷMyq@%:ppA*W=UqǴ (s 8Э٩E D?!)eO =kmf4CVwo骋;2Q?t &_7/hnHhe[ɚI_?榫/<qki[ <UxYHJ KS;lv#czpNFbHnXs (8Nx$'t;b> dwwh%ϓvք4*!0oxgqU`_BԽ"!GbvKN_]h$G=k딑gL_Cw'ЋԜ\'JgXe3ȰloȖ*M+M~$zo,3j;ܽ1z'ſSoPT%G td}@DcVIB݇ $M;eF؇y'ǐGz/FAu]/*/ض x l1ǚ(qR2hH {BنW?قݽlOTј3dH۵~dPl1_+Ȣ@Xz(<.jHqsqM~QZZ)%K8IiZ[.McLrҸqXJsi<>.b"~bZ WԨF`a:/`o{q d[LzUSmIW4(/v~e,_X6WȂ.s.im2 /9}E&[]}oQa ΓOMZRAeRMWhu0kn[7bIJզ/ﺍcgt/;( ;Sl[F#/5]@[&.&E:eCwQfKکCS!6,_56c~pb%*e[: qB%NWd{SNEw L[!f]TR1KJGdU?4(@Wp%I3 J9 HLK >0g#y#_6N 7!C‹Y$kZO9lEbՇ>zg-ׁMyb<9F/ aO;7Ob句IP0OZ)V]+3\7ggiWvZQ,)Ákq T=I[Gw@^{]aWe)'koݧK&tkd_ q%a].[&Df`M)X[^L qgmYb71߅Y[G"nK:'T@d.A)S0 C8,tm;I^6:H.0>.)h^ތ.eܣ6Bi'ʒZ<1:}NVIz-u3ؗ!v--WUCDѭI SLką# z 00xiY~yޅ0+0>Pŏbɞ5c=RP! t bypG2aYfH6|[,=HQ; LHѲt=!}u-^. ཅU֡گi3VQ0RQU[*LoL%d A'ε-[Eh;?bktP,"?Cftؽ틵đ85Հ[^dnpo'ɴB 5'ӏv'*'0-[>(Wu{[HfGN^͝.3v BqvnwZ1&>lʩknr @ _:1`203 81{tvC5tDo bpwL,#;k?F{@"MocGǭ8W_ώк"tHAOYa8⌇P'nJb|F`_gebeʣ)+_cxi,E|ˢ1E )o=,ֈka֐Sr2Y 5NYaJhܮn&43*Ae2YtLczm|ͬAWkh ȗ h>iE"ܴl^o\j|y.Y2O^Q'܂fenUG`V> UC4םzU@/h4*wxhA'i钕aU'9R.%ܱO+k~&6ȇgBc8E\lc8%Ȩ'8adŁ9$häq٠7}sA#N\s+Rޟ*2iʑVX5LLȫ#qDj=WН =ͦ'`ъ72 ,6; R'K{[~]PcRr -*άrTn.f"\D^_t-&OYύ5-Z'!猲~lrE9R <қn zBGW[ 3* tr/9| b9UgQ1k컓t W7aGs+XmWK3?P4CEŢƦ~A(N<"@d|x&˱n'К2260$تV'NIp~Z2$ȢO7cd(+Ή yRWň3ΕI_D@O 0X|pc$rщH4]2T=~#pRdi}C0n#, n&tR$=mn7KJlz7`p9zOI#߼%;xqiFz%*dwy|O:T,BY xN~,j+X|Zёkݙ #&R?*:vA@r$_X@݁Pe&vSx IC"4-GA  ;^lH.Clc'2:{#&&>yPr޸PiRͯ)({k- ݊catVr7{T`.J7ܐd"lBiOWo\l/$ eWض~ij+YO')1BVjaJ@Z r7nX~A\2,ơ8BۭMJnLxVQ-.\I zTXX} ,CAULF tqrSij4s=Axݟ_M; `#jWYpO: =yHH[[_}1HN8;I0GCUԇ͕r)]ػo'K$/h֖SIu<7@JmFQV))n Lf ׏Oܡ^U~P\"+1㧫8m' Vzr[OtOiN7pho8@`\.푺iߣ1l] LF|1~PEE) (dR3cex򘇦r_(-VkJ4e\]gN z쇾@jz@I\L0!p:!-.,Hthe"MыSSlG^pJwvt*CC v_mltz ȋe&>^Nq"o(髦晨;g=z*$rI]-yXK'[7c:<ǼwD^EŇ7|uO֢s) >y(l F ;^nNu{Ȗv@>r isҲaw';#~AӯDj'b_3'Zh+l쓱Nk%*?FM*.}?|ٵ0(uzg:QR=Ioq'mՁbW)ؓ X$=K+61u.MAā_ yD*"vI3{үq[aU5<*||SV6@A?jzN9 lA揤wS|_)vfW:*kR\-0/#n]`NkP~)tIC?QaZ *Jtnߣi3iI[g%C  ]US*,z`dΫ*>>63NNbN̅4T`bW1u^i$u?lRi㱂L=CG,gE7fw)Z+(r'ǝTWvˆ@IӢEu HLG)YPVe,cbdzwlE m%Yev%s -? Ep F&_svM764V=3Vۖ4aPobl WFev}YKi8DN]CF(־6~wIj2\?FxWwm ^Z48]yQMՄܪIPMB_|zj|%5x7]v-Gyy@0.>!R絩r]C=dz,)F]^iRŌgVHpPYt.]HLDq9H~X }v vٛ]99jj[2I'm?aw3 7ۢ^ty)C"ݭ+ "2>5fW/Db*U eQ. #j2;J>D{:Öm턠%}˕|; B6`a?9ʵ.n\ Y9؇- I/ D9/yGUWy; z27nHͷ;FC_qĿePRa\QHV%fUDqs^'/@/ zB&Ȇz# &xrפEh⛉cm.`X蔏'E&>`9?+~dU]. %u1s#R ";A&E;ʶLߗQ`'!(E;F_a%LcG!qj_ŪA";KG[$+p<'I*ћãA:^OB[y|9~ ȩߓ3᥇_:9WruTF&Q1ar&Uw|Eڥ5&p:l3O~SPpFvD|erY̘ B%Oq>rK-3N gv@=doܧJ|@ 4F\˿1ŭKt2_Xi&-ᩗ)\M~|+:PXuun}VE>iX0vY)3*=?Id6NAK~oF0Ujrk=)F ' mOEۀ8HM^W%apZ0-^ǰe4sv]ٵi+t*V(Ք>3ӪxepI>O kc&Bk/O^-v)HqzβNJko8kl@r:d1sKFi}y5GC݈Gi2t)%"׏C}T0Yv} E |>}.zz&f#Βs#Y3H>V%>ݿ-ʃ@d`׻zvtH_L?0"Agо ;TD&%;rIwF9M}Զ iЄQ lgAZ#p"|[>r JYX3P|9zq_Uob3lynt'`0,KM\HsIu73W{#D N+WJ%)]$BR+ Gr"2o?_,ylIy}THM9lG+=1qs2VjйtQ;t𳎊Ej)@ ?/><d!e#Jf\u#'߯~guA,XNFfM@p-8F )%/ eHt\ ^Θ<~ ]@e `[[*W  ~3$)_[? iڐiO`ϬvI ${S+j<;Z)uujN@q/%Qo=g wxQpCȯ-f\&eJ_ +MyG=]l-va7 wЈdhaH|nB_} [l kr]+<蚙ʸ"YL*4 <&45*ޑ.Lz./fpo>zc!=eigDˇcնpI0lyz`w4/r ][ ,Wݏd7縪40M=THC<1\[\dv˅hўh֣CD8~NZn@-ᎺxtR{"NxHh&IaIڜ f|&q}]ٳAgE^uu[6-*yu7S 1°tY1k6WLGWp,k,,Z3B <t]Sջ#b}tn;n<=8?/˸qiИ P4Kv_!FOڐ-H.np:"gݓԼFk?Ug Uv|S@gVЃ_{CxmB#N-ΩkXZ2 (qe1q+H]A}{onG_ MFMM.͎GES ثڠuж 7"n1Mn,(+> Y1Z_S`)kPj$΍+#*syPω!R~<O RD ;GTdSrY(=뮪[L_4t QC/ |9JۻoWejҋ0ݫ#>04#*l3necָeGmCC"欸τ"˰*ie#ne r( .U!񔘔 ΆG!0tnʧs`ֳ 25REܺBnS뵒Z+J9btK T3%]I(1&\zƽi4h^V -`ܳ"Z*?/ kcchyd tHĚPNu|ھms&hXsݣWee,_t)Qqq<*F;bZA_.qARc@@}I[Nxlj]; TGYcNz^}:G:?YTC*_0ܩ_#`@zok< K3WlՕT34:j<-/{ϛ9DsRkg=nF۔-^SKNuTI%u;Hh6*2Yw5c. #;Bz#|;qM'<يEDS:}Wa^zC5"^ӵ7P;!ZXli!)֋~{48ʳyoF%KhU&Asy @R,{\O󛽈$kuf$BaAp-klW[L5Ϫ1^!=(V'5ǽugMHaCy}Y6"J7];*N:O S{ 'ڸḆFm_k}'wl;>T i`Wn%"(YP+˕lƒ+o>LMLc@NmʦBT-#|^tПY},xwH3DC]8U:ڂT4k4_%ekh8z;b-͒[*S`釻chGid6*MP܉"X9:ͨ9h<2Mi#6'}<\B/**Dwl6NõRƎ+}b;Ĉcz׻xP@gǽn<y?>d7"csԗܨ]ޟ %)X$.mj2!%z䰝϶0aW{g#̗kG@!.lwĕgoŜLN%Dk"oS)Vu2Ͷ'B2Z0P3#+]S`t t.׵X"c^NV@p7PxfXIKOG)'edKZi7YRaL6>0TfǓ?xxgh:/,G ;PW% U 'PX%~SGV]gw$XseU^^(ą8 N&Z"c&krPax-if/y:qHE̶O =J HT䡯n2moOHDc'łf ?Ɛ7J r屶%$x7 YGߕ0D{/D'gO)kqŹr#a9@ Xՠ0Ǩ!ޒ`A0Y?flEq~DRg: H{yA!qB7G"eγM]Ўc<)(+Er  ԯa,CRqjtѵGRrPU+r7ٓ#x> qFVqw'bQۧ~W:SɫUf_+CH~` 9ifcE`CfP-¦0iVN!~?^=+Y:8J>v f`hMf;h3ku ƃ/o d$Je[FnmO.0<{&O `tPjC.vGIx.9hI 6XH L~l%vG\t0IsK2K*7'AN=-$0Í'ZjЏc ȩS&|oQUϻ3E|rMuSbOLS;2EǠ&U/ew(YPܙ5߄#.E\WJyhiJ`lp EatY_$f YQ9fL |c>5p}UjBXUacoxI*>]?b)?FV-ԵL69^nn=)Ta|4@ &.ZSe v=l-W)|~@F.:-̩tE/&#6 [שpDeSNrփ`Od(3%" Ar[n"N eV HfCOՀ+1+lbaBǿWH~h:O65ouh9PiFot?[fJKK]D0Uؗv^+&:=\`^kFYF̣bUeI"ɛ6oN1:Z ,*Z7NdP9BgI3\$t2r{`xORl@>OD#[` 0˖ڝ"(X1*'2Tg֜f~EZEcI~ S(41̅ $dĕp +Dž?aNWm4{XOxJ x_D.>HRthؖ pm}+xL'; JprzA@p]* tI eA>xy{n2I**%/.HݬLmo>qc% ST$QWiR**y^ 5WI.‘! d_L7h[Z~i+˟Er gVFG7lDqG+;QC*sG, SS=zjZ4Nڤ?Rh#'3sWig'#"״7K4#5$Nts4]JvOw5.1W 2\X(E$6j'ʛSN59T?|sO] Y͔ja-zy3YD-a YZ03/`VnXqHӬ>·N{͎ ,3\s^cjE/>"Ү qL:vfhbz({KK.kMiW=ZInY=kH6΋<yqn}~WF"RL(gjötGN&k7`)5h`}<&!Gdh>x ɕከ•BSQ,&TJ?=TO?ƺ1qRB [#tnԐnYbSawװj\Vؼބ Vѝi*4egJz9 y{fbi1hvA1 i;bfbKaxae[VڍZzPߚǨ㽠o.2?ry8\"c0K?6WRH| V:[aB<>s# (-ةO1,aj:)aY%>tvȵ/ _-ۆӰv>)mk6D[>.bD97C1$!yxz*=޹.L[*qDb [rJw=d85fPh*PoTyXSp]._&Ґ 77ڋm wX5cۤC5ElKy$2x(Jۅe\:!j/*b5Ψs̀C3s8?B,)ϾHdUxs8'bIגl5=BcVꕦꄊ`ET6Ҿ ˯9 H39q|;ݵdB.~)L",m:d+;@~L^[8XͿP'͵%R@~46]Gm2I] h]M!|A;G>4+bƱ.] Qogh"/ Q~~NOJV曗lݡ9Zjx4Rqy4̺D 3`3OG-GQ|6ӁP4 ~ǔ;שGm|"X/@S(;R:aˋV\ݿxOXB* 貱dd-]354*l;Y E6%LYRœJ;nj/ P޷ M,/E龫(ˣrxv8H>"[WJMf0t}߃Ca]1s P_a kd3詐p +Nt> ;Iꊛס T3ֿnҟ#zoZHHV0^:bkTGDxln ~s5UVHr1 J5q, It;9CCCV\:ZC<LPv> JB@S _־*Ѵ)!3Bn(i1V#o_\̕scE&[lL u>x(Ӷ;-s=;k5':1﫾_QlfC"NG={y8t' MWƄ`X @}a^S|*sf }e* ;T֙~F̆ %,wt m3aܧ)Ad\w7nG}fe> g+Ps3w!PR2`=ŠWFe $Hr% \ ̧ Gud/QBy/X  5lhJG<<[KVGD]U(B&Paf_VZ͗uOνTl,0$~FAe7Sna 4ʕ!CL*"Q덐!F"8ttVM}$]BoZ5C[@z_CȐ,b$-rXʪOE?ZmHq8*=y:ΕB;^1{7-SNR4~ղ6**sFK/-`޼xBwהּ^kj4mZ2\B!Hpem(Pqo+rMTWQnp4crg. pntRB$o(؞JĤFY j0"uU#l_EyçBig{(tSzhv3iJZY+ܑve/cL-oh'⯂ZZEd)0!e1$7a侅@r}(7I{ΛxI5cg/]̬$<*ۿU &"x'\hiu;7B `zmlt= 1)rM[,\s-[c3,[e&$5oǝ䈵go5B05{DRy. N?\]*tRҌm`TUw)XNx\$ @јm_&'DptmoMWG,-t/x\so ܶ~fm`׽t! aB1NOQb7d1ksZ[+P٨bXy(q(U0IFnarmR9 "phOn^%MsvO9{R]tk"ɩ{@ ,K?wѾa,.̻Am0"zQIrሮ qz?w!JGV'FQ}hq= 3$*fCs>z<[WxA lrwNn>[3a0FRO_N0=;qXd yMϘ,rrh`v=^ăHfx(_RIEOY\t@2gkkdmrn.htuw.%**{ȱm+B *ؓAU|Y1zi-VRѓ$ :cFѽtTNA {p"- > <!EV{gݝpFx1 V:ñBp}h.eR 0 s"-Z NJm?w=5UqܹPOr*[T7|BXH/(D}8Q#.Xb:8O$Q1!CpZL;΋Bd{Ah^ВoU7Mc'Yr&lɪRe"1_L6l~oYPRH?'BZ;^c%84?rM2 ;EK{5Enmc.+Ώȉ&B =0-ؼyVUj[Ī(UC>yC766b|+'R}ko ՞(ϯ>ySJc=f0!^X'[y+Gwl}dfLF& :S8D{ 8=ԔƧb71]8H5@@0q?5klrlTKհQ<̈́ȂMMÅ~0tkUqr b?籵ˠ&EnsLOxhb@'`<ګOxӘKJ(җs4 G΄?6؎}Hij!(֯ Pt;T?U8n5V²2#!%(Pa/,Lp K I1-\nMSVw k/ Hja"*.Ȧ/=(Xj02(~yars5ÊS2Q `B赅}Jo~b^0&oy&Սa.6s ku*(\MCln1Ptu]qo<jU4{XqYA*k~>B3=4 NBIDLxg{EXdS_ ؽ^sXpjtˠhvWEà$X_ 0zb(B]/;nga@lWyA7[ɩd>~6z|NrHG9ʬbB:g,[-p 4?!4d#o8<YU* ;<.bTIlMOgD#hmgTeX\nwJGz2.b Knkȣ;9[e;UmXt i*ǎ\eQh?n^sР:~(g%(A|hK u(wAr[?]apsfĜ ^s={ԯp|t*"J9;5oMGso{; me(B x'>u*\ӄkEק+?)3٧B+/;yGr6]Z7yN~3;0 b86i!l(iI'ʂV7BW'm3ůϿ8Ka\ܳq:m!bޣIIFp۔ү`+ڊSNC䐋x//qu;IJDȬY^J~R? t5: iw)>,-GWUoX'{tG%*;! xt\x9GhY@w3+eHYw1F' NoOx~ g@HQHkxQMX1t@q?'9M]S0w#ܢz9 545)_Tep37{kMr { }J:/:?8l>VXOAe)`"uP?+3LdJ`r0 9%C[4`.TV#:)8EhFM0mgO@Wܚ1oW" U{85OOƒ4?N sy7 " cÁ7x-ӿ۾s1P a3;[(m|bYd)ՂL+c R? 1O3ftX웞f A/?&jq?.@}`'T6h]nRI.[pIX J1|r>49=2r2=`HE`l'7ԉP[~4's]9ƶπ_&J.:;B3Nd7h;K6ͽ~#ΩItX v姧h˛FQD4v_ïԡ6@Wj=?PtlSfv5dfIU 1 % (#6 !.VډSDg jSPwWٟ} Lɲ;K}ENas Wd+thJMjɡcY4:z46ʼnbB?b׺ZHoD.k2nݷq2=\" ҀEdZ3c50Bnwu7 QoI?mg0?{25`ߜ5k_&r۹@k\""KN+מۜ.6Ռ?Ҳ\a,0e8% ߃G8}誂f. QTH@JWy3 iA1q} /@`irQv 63}l$6[pRȌ`;SRbu$in0{!rMU\dNm(qZa()QْNbrDA~ Z^PL"Sv<%ُJr<Ĭ|| sl QfP~% *ݔ^JoOe薎+#C] ?6$ Ӹ (妞{ſCOPeO^z3z*9ky -y1Ib`J8eoW)Lڵѓl:w!KPlCp=28|7aѷZ?yo`3hı AizæW5R"|$H~5fl,b ZѬd ?W(I7SJ]7܂jΜߔ~aNA# Q8IaviNv!^S-˺^-o.:EBeYL{Cf.iorסkз6ק0,$V/.`wsѝs\.ͅ iIex{_Fė4[pl%{w-&I9( |e#>;أa%_ʃX8ڠhHu>\w#ΩR00nZ*fZErOϬ6(d~ޡV=X(-@j樉 0TIJ/#jLf!Qh;W=&_;ɛ#|6h&UcÐA{ |ҷ^S05;.-~n=1_z>36S{w{zJ#^h]yq"pM;f;`t24v6n/"q7uЗ4[Xc |Y5saCRqł H)Hh7 iб݀W;n0dHش:B' {;rD EDH!Ѻ2,- c-~h,GMjX_x Td9 nWt6Y`q1T?18ݸD7?`e}x蟠.#g BaL.as7:~d k5+MJ3lrkQTKTG- j#; LYp/u힄~0wQpL$vkj߫,u ŠUMuސöOؕ\Pun^483Yyki nET%_A3`_=Ղ46 vy~_s{*u֔!Gn43ިƯAfIRF=_WA^!5/ RX$)ae(6}?"?$.z ){[DeF HԮE[Qy*,bEQO97J1!)Fr$Ļ kmfwV-$w4Esq؝QD#;M"&Msc5 5Ay{fS9 Jo%Qz] x CL?[Vu R?8Q%)QͧuתFa];T$df=J4N++ROEYdèԤDNGCmӠ'HA&5cD’gn=٨r2`>jr o4a0C\O/3T+eBr^=.hP"[ݵQu9$bMGS#>*?CD,9jToӉM/|7R,C*hMTVCVuG0Ω0++q#wr eQU_@H51Me A&&(-(rJsdbjI=l|הvb ul](qۉ[C_Z; _+(Rdjf5hHO3J>@c2ZRԞ!QLe+dhyX&8T\3=Ps|̉ubA*ـv` zXDu^4H($xh{֐c=p\DY#O 01j*i ^c1oJ] 2FMsmcgDf_~PSNhTq=` i`o]n`qt4 8<̴=6`bdDnPYPVFEX upKWwpfR6γjb5Tc[Rj>1ǢR@ [Ptt:6߻!N@Z6ɀ^]}"ޒv˟e  PvR]~^X7{24\4ysm7Zǒ]C/֯RS3*$y%HM|a iq>dΞK\Tyt,@%BVsE6O=twYZ71IqKL `z#o+3rŧc Gu7Cy_(Z7n@YԪ}jAH5Җ[wCyB SH6b󍯐8^|r. U&pڎ7zH>Xow @DR ˢ/u}2.?!S wX;a ,cT֖c9X1f>4 P3Gxb`,hPά͉A=B;^lQ /*4Njw[aWcQ(wp\瞐sV_8[CW#ƣ44"~#&^PoK`E^O1`6=Q٪Šf`RRP|vf sL7o'k:Ni jq< *U׼OjMy $BEOjǴ+@6Om( r|<{NExc2@j5CG7罎7=>+X3|7Bgb-J'Nך;Q4ثo|9|/ZZ)sC`$3}ܑ#qBUJ{LB^iJdU wXW?so `fRm~ hZXw)J4nxyc-d֦XwM2#h6!1trE9'4s15 7IlT< iiX ﵃Qq(?z]B-SQZP,omB0Ldy3:N{ZٶkV7%E{rj69yGUoZp G?_ nӜd} | 2D؁TBIїգ{ٛ/*b\W}!a,i=EFցv}YXJx] I!m>)߿$b88̲7Z,l^!D"J >kj1|~$ |D`@(.m~q݊ІdK@f?+c*nkx⽅.C x fduVȨEҶmp߼ mm\ƾ|:X/'uV&Xe%47!Bʄs&s}CȜ4Q#I/. !VUi&(Ǩ.@l<{\.a18n3On\g/8ճm0񿮥,yP9,K[@/mԞ՟KQF쀛˛g` l\:Ly+CR | dtaׇs> pzM" oL[L[eؐc-]bC9fft{2ժivNꮨ, M'÷6="4#ÕTFbKj|nPQOV AdP['r!V ykL l%U~toz|pHp`src-*_cӴ~= .;ͻLLoaZ:ZmzŖwzN.][eԿKJPJы;FΓ3]*ZQM,n r3 fcGnR78+[uY] tX2܍Aȋ9IغleŲ%Nw,]5'I\4="F8va\É$狇}Z/r&"1 ت0 (rZO6|{rG w߽ CkJqE{s_XŜm{([.3<#VZO22XWrjy-f-Ȑ{^i$c[)?s?7LD`$۠xӲ {v~Dx}7P 5ݬ=nj3[U`Ia&PO"Q~ =wSw-,1_!޿6zlt̡+Ŵ*ͣE"kkдDnֳ,\N:|cxweW(,[7"uM 2mX $3Ǎv Ge__esQ9!{O~ ΂FjpȸAt9%cM] =r (1؋!ܟY!nNwr\n9lA,Yhܾurg5oy::ezQ1?D7.vOPG?Еc5w)_rqsk^亂5llK+@$^oc%ė7z7%6L` gfњ\EjfBK"Ha7Ao tg[CTNȈ|~-jƧ^P*tYq !Q~ kNM_ƞ98H\`a8g~zȚr5o,l0X cN3Qn:0S@%/7~V4f"j$ Os^.nԬʀ,b&00*jGʑjɻ 8O,J-;\_Z:|8P*+(Kha֍|;%5u4Ӕ֡72֫JhTw]1A}YAT煢DO >_y|%k}ĉ[]./J-X]S;5uKf֍*#J +8Su 7ۿgזgyqLŖ)rOSQxP Ki6@< lvܤhVӂ̤u(uJ z T ^M01&)M' pE*;Cqk,خ뿘Ο怏W+stT /:_"oZj|[&1@ ;]Rk2̀-Vx7*Q:(_4HҎnȥH>=EuU6RQ\s*K_=|jHJ *$NY& k 3]- reqH0I4n-J&&CLFZSh=: "Pnb/{clG[iʎ}پo&kLa;ډL! 7$^%Mܞ!/]dUe OdB^Mx Nvh:T(#֜(mGf$nme^Hev2O̗xtwyш p%`C)ǏdxyWSiFxzU7vPB,i1|nkDww)ࣹm"ڈ͏:̍H@")O\K%A:}@*+k=@%БhNDKB3Q<2G2!PߺCؾ2yb,`UZs)M,5ܕ}v\#'HLUx=A5{vX?{٦TAua`y..sʀ*0*婣⿭LWQ1g ɔ/K1S!N Ӧ{ux ٜ7Oַ"L*Ġl-0j+S g} AX]# Ps6k%{j#.zd|O,zFQKoiBguNJ(Xl ~': st"~ [ÌfIOK?l63w_F+s\!wuI;"ޔy.Ac];ɧ\j犱-t.S XP[/y]d:: ƐT!q,<[ PX?ę|x)]XTf s㏿΀{!d68'AL {7ּ*#AL\gٌCyMQݴ[RW(0->Vn(;ƐahZٳ_ 1YЩUeCsCpѫBb P,+ QwFU ! :tjPuk #y[iݝy­"KQ-CZ@oP6+J|bQikNmtR3̀wqt3X:fPj突ˆ;<mjR6e6ʾ@<U~$ G8=qjMEz;w/m-ǀՠ%.(o"qÀ JȢ(tX܄>Є}j)KEc_4rZk4-@̳4Ȍ2bXR`nCO_^<&"o[@"ĪGR>dvv~];!g sQsqYvx I< wkQhTc*$]t]= PbQ{Fn::/nq]XMIᇬ4Ь2^=U{0q`n[1C2,) ЀC۸\S+)[76k.6w੤rhJMŧŬu94[ SxTU`6SWys?{Il ~ }QJقBgrEM'SB-YC4]X@ci dyJ>4&,h_NtCG}rCc: t~ ][=T2ԖD쮒$+{ce^r^Gs:"< \ToGyx/6_iW7Mrgt(C&PYQGtvqqvDΰRXK{4t%iVR*F8*U_VQoE<ϴ W+#!8LTPJ|\V \8ˮ'Ϊ8C}u<EK}JR)m6p_qڇnst5:ǛtPPE&eEj1߀Y(+r݉/ކ1b"MxMrQxڼ$#Gv$dfh2,:H-43Ҷߞbh|?'7( '\Ñ\sf?U:MDz,ch)EnOlT?[͓"z@&m*~y|go h6Kfq,߶d`8b:/ WLI%pu%O%(po Hc2QYbLYn@*\hK'l,ueL-k9#ީ {t-cǕ$)@X3߁H,a{ ,e5.@旿A4ʣ_~tt[ 5+۪hI@ Z7$NAW42e 065J6lj]Orx*ʩZ\"vH3bhx慵gܰ^o54#ƛQ1Z>̺ʏ5>.h"*V:}"&_#YT[,/JJ $,P|k~+R$p.2fbJ,@zxgYTk^"z)T u eW%qk0-lN "j|^䣱xl%zE`}@|AW̟wyGHl:^fO"T/Pe:'lN8tCEpSx[JqJU-W#aj*w,L*v&䅢B '>v^%30:{a1! ^YqyG*U{_ QqYBQ8 {dK$m"r)I0[{Q q:nW.g2|E~u\Ye忐AP\p8hsbwP,LQg& t w:*J2,߾כ Ը1=IuZ$Oa$8Q>NڠpHN ›#~ p@p^,UV254 p^k၌;z,}A2ԝ#á>o&K"4' 6k3UɜLf!u67ܠH #{ٱ,Trr%֨V/hYNe_BԘp::MŻVV'U 8v}4y3* .Yg S S ZB"ט jcnَRk\ȡ(rN` O\%∍ڴimUV\ cR:8 ເsƏ7%)o7%9 r1g i s9[5t{ iZ x0pbq|u4C|tsgK@Nj^yCFyJ-Xin{ dz{uFsEF(wMvg1M(_.FIqKJf6T4= Nϧ:{?C_1Ta[e4D;ե-V6Xˤs]Va[+<PN Cj|gY"`х7!c[.ܴа씓մ/7|R-[9hך{J``tΉ*-%V0`c.֏_eeJEpL ,Lcife`'oVol0 k*x;<Qᕈ6g&L)~sdߓx{D褂1 Ƒ ᬴V9E!h^cE:|ym"Gj*G_1C9v$ 2 JVzBxI[[~M4+VsqʉSR#yfXS`"I UE}*~K (rmr0]jrC7=yD wrjݘ[COH3iodt' [ ЇE`enh\%a1iU9xe@#Wwvђ*]XMɩeښ/C~M6](LdՓ|4$|{#r+t</&" uaVNv$iB ;;ttX&x@-&SDU7i ).@Et5훫4q̬X4uo cp)y)*ys|嗱^Ofv^ӁDG?A+R(1}ałeN=Yfj3jɅyBj(?*n#]ӲRV&V8UIz2Vb'(EidlV80s۴7d-NH @V<ⳍ2 KX q[-Gszx _9}q0`&Ci2'(HW4q'Qx`Q\%3dd{4*^B}t$VFu3+MHXxx$;u {,lOGQ~if@K3,׈߯pULF1vchbuUh6( Mgѯ(L+HZ.Gv|1V( ]21aD8q#-hN^z!ЏDjD*]q,šE;vGAeyq繅i G({Q ]'u:Ya&6ZX]GcIH6|iJ_Gl𓁼  iF'C\o}FrI[Qb;l࢓$I{tpzP8ǭ԰߀ׯ+L2U-F[ ڗTիK ! 9CH *XYi$U rzƜf~$.AAP*x^LwjQt{Rr鎻OHP椼,g6mMFF_Q)I[ͧVU)`5GS  _:UӼ%$E?~`(ΓmEpx15\<)r=¯Tq/[/uP52"oWEq ;H'# ?2Ѧk눸Y{iIFI&? X}L>ǽS#\z0?x^>P} A ^I~F.2Zvid((=;)Ce2ôϢ}&6b*C!RoIy?JyTӚl'R(cvs oBg |ϑ]s~~= l#` j ";ўm+0ͧG t 2/<@69^̽qb|oۉ~njnl9RK)2GNǩ!!283Qd -Oc"gK<5]o``qL{1CIw@Z}r@e|pUA'M"*]lzs4 iIsɭ2? \Bdn02N|朗N"o: ݘtjg] ~fDA|n2,/\40.\3{1 ö7Iw,cC[+ e#2Ufp#!A j(+󺷕lS#i] }5U_b^N0 S`颡g=X߾"EdN(2 gP7ry&AGySV d$_L9VIK!-BDL*,)m=䉑ƅkFS?Y?3tu ܒ* vt4TFӡ>ov7f C@a"# _chgHu?zI׹W.}A8< Ik%FSK` !$=ADŠ^Y1UJ]koqu 4uQRbeA6нqH蜧K'eT6`3IQaR}>\ZWR=^-VA 5r-w)VZwDctd 땩9gM}]'^vL- -?OʞqcIR|#h֬jE@r;2 Ꙃz~ H8 1f5kohxtIUwm)W_XP2ݬhu)Kd˥a>j25%a@n%@ţHGPy#8#dHwsF=zN]3VŁTيi/UIj4YNl"r%ˡ|hS R#@K?;ZUޯT)3 AVt-H[Zwud'2`'eV8hɄV+|蔐5\3'gRgD-sR83<,Xs-!OF˓C3JZۛ_l 6<@2< S7>7ݨ?.s.Èsf 3TNBRu8\ "ګެhۏꝅ=մ-(z!{E:L?=|t~+ZjPYL9M)$NyUls.u?b8rr!($ $ `|RnCg+%f;$/8"y?aO]5ɣFd% wb7 - Kz-gEjLtqqa3NƕЈfRshvs].S6(EϥwyrCGHF^q4lω SųO Kze[3*e6D uH?Z_>yd4iV_HDVYav;Эe2QLbN 2$w/.\=?O<5'޶)G; y-MOD x|# &[e=3z^,ZǛOdh_*t3b@2!\QduCRVM[ |(r ,0Jbϣגp+PRV(yaV4Z3!J C*PR5J24.NuFyIbϹ;ad"5[HzFjNTbIBy$uR|v"'v.7.>X3՞eV;Qĝ-kp<D(K+ZKQ>:@Aj1P[RDuO.1:V(ϞL#{mf\R(@#gjK\)7y2b%YH.J OL~PhpE,_i^8│Fzn]a0ܢ~w jǥEڌhש&9ikdF.s"PS#?O񞤪 G߿Ƿ3,0#?1H2tW&W[: j[VK}(w-:]pN=ox>IvW8FgkA}k5(h0B%^=p;`AiLbħyEkBd!9Ե86+fP*,sF6ګ?Q%}qp{@Tb~X,/;N -{,8#Qpz_qL +xMDCw#رFT+PsPU/Nܔ9,G҅,Asy1XG{ ֱZLDd2#[?$&<9qCwdNƉc,w fWE:^} ʕCbgc_yW4<37y(d\E;e|(}b41ҁ:$osM$3pBm8^mFRP!fRSё K9DSwa7㪷Ss4 {]wtu*Z9OSF[1|yCcZ[]j6@"],Ƅ:fXUʒ,Z/Y'r3=?e_nG*OԾ¼+6$aJƼUV.R'nHWcUDzνMSx"'=L!a9+=ZsޝBq[S`Fvwن ~Xչ i[.<.;y<ЦD~.dZ_Su*\J6-k*Y(' ]n)< ۖﶽEa(CVMlJj{oyN܄K]J\pфWoByi@)F~F@ }4iHN؈PIE U0(Mʟ %+r=*|hN"lqj䗹l){4Tߜk |O̜s KUw {Q>*/qdە.y'O Z+նOW)óQcDAz>hй2!EoseE?+I^xvmk26oś0JqPsϱUW&r⿴&*:pA^M߼ خNJ Y; \57K2xY@6bziYXΤ} c 8-KM CP+u[xؙ<y]d-22g"t_w6r塪:6{ eu< 40Tw  60=vrSkB2dO }"lNU'Hu:9O[ɬykg_,͵VbK$Rɂ,Ż%{lQ6~,4;;pQ4XtQݜΨʕ%IdB"`Q1+JV$gi_0+]a'EOM D2-0@8m3Vغ;Vޟ8m[2M>&[C⚚da2,O  Xu-Ws#1]ArD2H~GvWӇ¯xpYn4 רߙ4J; }Lf6}` ε"-$XHA6\0NgƩ'K~IGa|a9%*{Wcl'r;W[ºXKAz#+)5a7Qp4oxvsz{BC` 7&Q ^ kFPYu&7@PV!o=ӛtYŤoqMw#ikPc'MOpl)uy8cpҊI1IړG=h~뭯l $f(0^i*EFSzf Ukh{HU—~)1%$q׎e۟XO?`Ќ)*I[=ac ^nT fY  9_0!wjrW)`5|d_|"i)iq#s7އj!Z&fpzc_Ƽ)2 28yfGkT:'k=z{ KZrSl (O4kfC 5DEȴX%Mulc$bb-j( @AN| 5~i2'C&՛K-"f(7Z7Kɞ$=,MnpIwI~`\!5\Djچ/PÑ3"ͨ4Qfy 3qӒhy"*P{=?PжzXҎx1h]FqV#{#zFbq̏e/1\9Yμmgb|+C6,6Sqb<+:֎Ø }Cدzxg}w6E~Ʃ0UdofQMg]`J@=mKfb=sɐoXJ_9E]A|tE҆HϜ'DjfOai̹vd;v.?vve'Mڿ@d 7_/dbJ[.Ӏ=~ܗoXvn o6֤3(m%%:GOxw?I[J*Gv(*2PV8u .n"NRlRFj6}  G%F@l^}n"TOz77:):e~Y3, (%#q/@}}PDDMˎ {,1AΪrDE>kx^HUŋSX;QXD]rԗ7Q" VBd(o/; GUg'nKeTڇYo3?2Oip_LyaIa+_q2 XE*Ѽ˟ q ~ҷz#xfǦ7!Y94^dMMXjD`5DSZr=aLVpzM`U85z`ęc=KF/VmX>?[S^EatZcYA_ ̚t1mC(Py I!Cx;z)?!TX,Yo!+'K0`凿<:Mp=nk ARb>pp*`&Opu[=C&=x>6GĽ)1 Aj5UVcrI*ML{kurR\VLQg21p;쳫 0?[['="6彷2qy$ ՖoJZ/tP_.VCmP= 1n_iJiY;YsZS ҹd` ߯󕳂+'ނY4+/t f("~'^yr,Iyu{c[2F-E,"|I Uy~@̄mʍ2j;10$ݴl}x*%h2ٚ { kfI֏r|. ((kIg-;s;e_"ʏ;z6cz{xv_d^mPڃW*80M #nhcVW|Kqz):ElߧS)Y(U?ʙ,wHk1s:Wp{HYݨkdQ _30$m2 |ܼI:9 ȝ㓗bh^#Hv<>CNi¼pF,oO"+Zt!r~[b{8I8ěBsk)iCWJ,,P;^̹썦ƻCoǙ4FAtg]Z*)җƃS 9l8]x2MݻݸGnR1~Z,~Y$o+ [{>PڤKP.tIcMQnߒG:䕻;O?(>>ҡvDr0=2I3hܢCuC=2-0YP#u_2q'=VB!^q|qe6 SJ>þ-9BMZXTHNjYӬl: >w9BgX`gNL\!F`!L/Kib(ʻ#}V^S/k uQ!jbG¹V-'̛R)t$A[Ί!oV)_օ{mzTX.Nה清BD0ܿ,YuR9 OVYJ,iJYc*NhE3s{E˃('J>]BR%0ITׂa-MFIXY iw/&Lkb=k bX44ĩ邟JizyE>o8Is㥉6ERIuuZt>5z~1|W̚JcaIT/qT%&V>zM:]z(q(ռfWGK2fةiHxQk# \WEF֗Oɵ`W{*xqyZ>P|u [}VbKlqT@ID?D\B `*݉hQ.7}sR 2 g* 06P51&+|ٯ-Vm蠲Ӫԛ37e1mCAuѪk ܵG˓ r.u>-`u..I@}8AFgSH6hcum~%Xk1)[>. ɦ7/m:LeONGFjigha$||޻-e+3,Khƿ7/*%`COLJr`۴t) Yvn镬D4bBti@G'-fVYd BqydZYcrטЇw\L<L_."P:uP+8A*-bp -?I{6ٵ%dG ,B]UҹC#9ȹq}^q kVrг ͋f?iC> ߡ(Lf :lߘ.JQц~+K.>N>Fb0]O8 u:aLgګ}с7~i?kϤ]fuzZKu IH.YBV{p鲾mW h@OǀKtcn ԍպ\ss. =n= UN|uk*Ba=عXC߽{{vByh2@&mO9y ˆy~G;'e (X@popdpVtw.g$4zg/of=}٤7mX<+RMNVNJn8/=qh$8z#>f4b*}C7Ghri~v5,2-ĺQ. ^Y)SlT=80;ynٻ 7?j cmCыضcD;(CuKoK&$ߣN6{)ca=|*Fn@-y !jvEtȎbOgeq(.śwa(v$EP[Y823ߡM*C'^¯Tyf>]m)F\`T`E'?,Oo鍛NEd2 Y i8, '\3\`k_T毻/u mЁaXF[Eo5+bk0.% ɞTTW5zA {!3a2YllS,+> eo+ au#L5jn\W ,Lc]ư}NVKy1ǹA:`<)JUTR檅{%^ m3@T3qHj  Bnip4хN_+$năg6K4+/=yM< n!V}~?Zݕ =x5 ت%px)dd``Ki{7|<{}V9dʖ/EWoS/A9 5^"J%jUtM\0S80NsFʦjDP߽%WhHs$WFBI'7RXf8$]"b8m"%D]>[bNYܮGyg iFۨv o4}0d'K6g ŲABSL1WyK`6ө{z<tuЬBxj+y$.fY 0O(;VaqajNdPYM=fs"<$M?o h]DP!5ẏQx%ԭ:f.&Tײg$Wnr΢)vG۽p X#4Oj$lۙ EMs@6ْEZA\? {loY*N'O&tbWR0ݝwm)dxW o2]$I/L XWF'8}iSOno+>ϝyWK-9|&ڋeDcv 92:k@iY<ʨ7[E,ҭɁcQHjZ>.`79ፔ\Q:O`*?9:z)he{Pmmޡ{*,#/9g"ƥ%l%ӸҚde0E)"e Cr m\d:I3` 1pIUqDmc^]j6EFx69 j5UyvR^3y`/${ʗJfg/ h 84tu4-9(z`'ST^Y}^4p^5/OIb0lK#xgr8T&8⺣L:h9AѾ 79MZ6AaeӔ [8ךszy 1FO:-lj ЯD 2m'.OeB2_h?f zǣ${5"f j ]J~YOhRDnٵ9mG]"Q{ +F2&MvםfʮMwc$'JB>]h48yزt̴SJ# 0}^X˅6Z~r549 !(د( L$SNPpDŽ}t4L-ԕWyC^Ovہ1gsD %s-ַrcE֛ڇ@zm;A#v3"K[ e VAsPl&93sïпa#|N [c"6zLӰ3hn5|14ȋh D\tR"H^ [] ᗭKN\o0`@d¢!p4wנtR{H@Je}Y ֘I^If׬; @bfDEQx !Oc :_LBdĘ]ő#ތK;\hU>61 Z="!^>pn'uUnEn=;!ʽ @[~lec*WB(v Zd @dHR" ;hо'-+syVVEui'ԙٟ6P9X,q*yM=s# yD t FoswngBqf,xScVRn]a2s ^Ӂ俶mf 7[h%;wy|L2OENC^>E 6'cpt RᛴfaW-hί p)ȓ!n9]&( fKJϒk }݉t )>?ċ6ںDPUa'% lܸI?ۧ41tk-M2cSuҰ1Uw]VANyp(w jݳ!#9z;hfdO|VA[s!D~V++\QIsARUi~ PzgH݉F9/*4<߷?ڟd6J "ŗhS}}{XTfseXϏ)6?μ#T-|m;,zcEBq;{"[F@_yqN̙e <>hKͺ p[d,L1y.5pL |"U_:LiuV07WU=&sQ lw`7y\0WAh+/%ntԚ;LR[~Yuc1(+#fMPܶtWJx ۙ Ar"tFГק7.GoqR0 ̃JBZHTHLPZ`Q'[R#Z|WXi=iZj4v>߰.˩}k YLd}m\5(y `D\r#V@GVDž9e(0FW[|z5!K{,k>b&.="YvG%MLyXȫq9BJ%b!cy{ $0 _דsTNwg>eTlҀ?u}u/H's([}S 5Q&?Y 1mKȫAES~-%OGU-_tYyg!CRc>7;Q)롽1g'],n *kĶ8hD r*k# `O l@#飮HLx0GI!)'|J:dB(EgghIg8cqy*^U.!_lh=w%OpֽX$nHCе^r?$MG6dLl~TÒp@".W˫>Dn4,]҄z[JL=?ƶT[>yb ӭV!B5``]3a+ݫi!Sv"VN7`ŒSO.@̿(`2r٨~M %8T`a'0q q{ UFfSTٕV˒V-*aT>Mʋ*L}U+^v%],Ğ};Ғod$M}]4 6\486am2a^$K%Uȇ֙0aLQOJ/Gn`G.2:e: ϕxPI&}"Zۑ=Y|'?2.M AUɎGF!ЂSۑN{1l$P( >`@MvzD)߲[6붊;jK}+JCFr)>LuETQ}? 87#~y8;ݯPLqr}OϯGCZRmI{/XD3`#0ޥ`CUOnP!* `I aB wj M*.&j.G JSvuƦtϜi;[n/ᎵpD}NX4& ffY*t kBGH F _-2/9>m+˛ݷkpBaH$pKθ .r1聯.uoix( J>E ~ 4YKfkt CpQ9տ.3>HVq`2vjG8[*P'$': a3nr2<<47 (9n_j9/ P??W{Nڗۯmm]5/9A&j v_~nnѥ 1֬I%Eum"2as  *ŃTM@mc֗n7鬼UhK57fp V+:b!AZ gSm׌ G dM[8S|1#  /(i1 hk{vp]tt]a}flu c;:ir,CSHBq T]C0kE[0a2GVCQ '6w7e5 h]QEҌ/UsP{u]Zo ۼrB˝FFdYL g(4±fr) h#[LȀىU?BTM=k726`^ϚdlSS[fz'zړ(˦f1<~#4ٵBrzH^:xl#lsZE*sBx5{KҕjJ@ȯ{6J}=RPz^5/1QPFJў]KسI\b舅c$q^jzٻTsVM[ax}Y;թ?[|RqBURQVu(p^q^XH''>Η$C{'QwbWk<Pk Y6YHi!In,rqn;x ؼ Aᠡ WW9UEϴ ^ɳղsb(<Gә:2֋ QCRySԗNS.fP)oSo76Aa/akCb43aPagD3~ơlvL lKhNjxa dtU(͢o4]a{Z3SԣM+!k8֌#Kb_ɹҼ(ӊhmW]_ Tꍫ$Zu.w(\&v}9Cc/>L$^w9gB22Dk뫞J!>L7kp"Jd,P(*߸{g$ȝ 18''f-ʂLz-䊼)hz*S]kXqPoq'E  C/RkΗz=0M-"ÃF]w}w#P*L }i[Ah9ny3޻e)Hv 軵wK[c'gێ)h!1ݢ6_v')nXNAN_3'kM?N14/S𯛊sVv)pz o3z9̴mIqj2yԁIA_5BՕmYscغj+{O.OZB|i6~^n: (=!M`~?ؙCtPِ9M*tobd8B4ڭz)āI>B3hr\m[U4oT~ Բ&V#[Fŏզ~N*`:dLJƩoy m,atjiaT51BX ItoPFo( ob#2O9/#PӠkXTl8LU!Wǘqi1 balP6L\p}Z=]j^Q! 3=VG 1v)w'F`SIŸ O Y#k90W?lx@(X&4<5zz0qlQț$4#zͭ^e-΁-jp!˶xE21\3WjT1+lMEV*2'30[MpŰ504$ )#$-9K8ޙ} dX#wx} ?XDs015YSyz%7x[ִ?tV {6 }1: Ya(«~Ujj>UkwUg`p,' Xjf$u31O:9}dpP c Xb'E;ŲTID;6F g?JS|!sZԼA^nm9 ux9!B.̫ ]{O"j֬՝3ČE2lV$q|ΜiQGз@ԩ0^Z6]^ ӸTYRsoA_9?wӳ0$ hMq3$'ak-"bhgtۻ zn҉ay k%$/<"Ш/PIq`!TKsveب/׸˧D iTqay5Gqfp:/A[ȺF!&yydT̙(cd ?MI>5TvۓeNRh1Jk['{NAFT~?(3 ycl&Vm ݃Qi^G:AߠF.|Vs' l7P]UCJD&;&|fruyd&d/繜hڋ(GIFSBȠ"7NяX#9aYAa@:wʣQL>ףp#+ag¤"S|Cj@`jy9;#YA8Ձy{_ (:92HF5YtpXs-V}" }ȟDz]ёXzH~mҢ*靻IFm!gxVD_8$ IT={ ⍍')NX嶋 1$C Ȩd Yf2ioznwոs |싫"J7^R!S] ,&| wȹ( U(PużBCG\VJOxqꌖbL?>nZ6u?wÌZR@61ѷ-㚇YCԞ\z-蟅p_X뵷S,Ͱmѻo8#,np`:Ï0)!m+G O7~ ǝslPτf٬փ* |CϸM9 dj[Ngx,;LqԆ%v9qmRS1j g3"Y3"$Ŀm|D[ӷ( _4adh$4ݾS{qITήPˠChɉ*/`;c՘yR+P҂>wo*^L*Gp]22.1LP&n<U(~YzW+zjSȜU2tJ:R2,>BEַ(IK,fx*=4Z7 brWuǕ_<>rx&`d7k~`S)y:)]?6\Ko;9kre0 8e8~Z6KשNq٘# O^Q$ig۬=/=Ly{嵱xm!{QaL/nhoo1RQ$uE\̅6(y{%BJʄALWg"4uM8H𬄈`9+҈wWJ3硴=&p`b:.'֊^L/iG/L2|wDۿkW;~3x\>%p9RɠZS5mi ֔3ԐK-i}45xvX -&Ls{,!hP!Mz~(Us-ygyb 2[X=SvKi:P7-󊊜Zup]H[Q_KVZ9 6{$~)fQ<C^P:zoOʤ^P:L˧\d"Х+fs⟈˛1X$%W0e.p' fqGk([WT mvJ9MG}MÚaK˶0}s8 a@/$ Ɨq Bsm6nڧ*:P t8iMn"21\:_ 1Yg#جw+-WHsn;8Tr@}I}LMDeG{(jL6svHK1viՐ!pOeQ3vIgGP(n$'Wm"@K0Og<eKcEtVB߬5<*Y'L1%OzRq!M_ud\io>=P*BtC48.U1OSQP^NX:`^Rb@Ap|6Ot[C:0I|SSfMB& ;^M#ch&XM!*Amy>qM '-Abc3G̮}'#Y CO |KϚr6mW*W0b2;Bma(Z# Y Ag&.v$FG.EMрOZt/UT;#Y+ }必}Nh5m\i0=٤V؁+'&z5EqЖ"$)w͞PFv=93 He=3 H9 T!EpqHKu2ƥdgQYυ<}x}Yn7S;XB//z'PIy>%TiSfdG.Hm^)q9\̭۠x鋀+3tmy )V5.$WhX'V)GPKge_د+rd: k3EṮ4fږ#^<iQB|z~;ܒ)l+|g`澞)jشeTzc(52^Tdj7܁2(*|l4#J ., وLS΍c+GN=>њCLY[,eK<W56of!&8O,D’m^ZycY*+h1D Qu&e=g^Tx , 4;$J&KhɾJ/ ֹ/N_̽*C  z+cdW @v _Tnhp! gZ=qxU]Sjo0 hdJZ'a\Ǭái <Pj[B Lm=*CMse:2ce(E&"UOb ~7!]e@Z)d}0d T[jydӽb2 %ʷ. )|^sEt:Bf=COv둜PI[[EG͗+H䋰S~66;c.?"1&? )Vy#=u$|5ZW>~psQ62v8F84]A;@V祎ݴ5T _#kVQΧR0$d6+P;ֿEtsREl`'\6/6y;ܱovXC {ЩZƣLg2d¾B)\’.$SM8o5'Q~WP(s6.w K kHF>e`=jւ1bȰ]-g^V@&.9MU'͋ޜ&9N:8\qh8@[ia)-X;RϏ)uE} ;z,)=lͲ2c"kZ06ځN`-J`$;6娖 jRϧKDp4E G4) 0&.7ߌ|m*w\߰t_^e]V5B5՘Lع27bW8U&]}0M&N2+?q[9֠]!– ]M~SC_S}DxcZ P'-Qyx =5'Lr]/h 3%$Z! 1v hF$[_i-77^ƒy`{Ҿb[&ьnڙ/QC2(/[k6b)PuCg矻S$`(ܐUfoz.9g; c Vn6/[3, b~P*Z8N+=s\(4޵X +\QUcպzMXs+y`-^~CO,? -7J2È my}W W#sGOX\ &\hO@hk tei[mVJ75_ē/fˋWQW ;F D@KAۯ;~.@jg?^@E*PFR53Q;B?b[6lhQ Q+:FVZw%=`ji ^Y"kZUOq<%U"ƒpR |]ud@h$x/ڮ4bbL{>8Og{'#Dgc+=ioB?jBQEu蟈 gݟ8wE5_{{h J\SݷhcŽu/-aaCdL-/C+S4c᜵0%%D3'&] K$>Oe:txB u`0=yZ7tλuo@Fiă{9(<xS7Zoc>(]Azpu\۶WL6309蝀QbiOC7Q:2k=eh!;CGfnvaf<.UZ?~.<:&w$SiL[XLT5@ي ¡l,P@4cm~G!5yhL @2UҶѯ uN[3 ,'BDzѕ.G=>m:.Wnsez>a@8;'U0Ia wo 8W~KRP[ӡ}ɓ%|9j^YRm im641YmHhz/ؔyKupE$t%v˕+Xs~^nWtf¡ZQ! wa{'9?/#EN ֑d3/[A(*a +~, =:p<[oVJvKV =PgBR-V}ff{UMfFt<-~m!r:2K.r?UíّrU[l+v\3aZЙȱ =Ss" SD,P/[]䵌Z hlV*x8X;F(,9|!Ԁoqt5#˹BNhZ h|!QG{ ,&AZ]Bgo݃~<_xHrMV#̌ٙ˳5GC]puK;.ȡ=ѹwC4ȻKAifD2X=%M2סșQp rq ?Ծ+fl$wЈx7|paanL= G4-"E$pٚ5YqόSp{Dq$us5J"k{gPViOq-\m* Ȯ=0]{C][(:D&gA>!wrh/7r_cPpm'tiG4[o*Jv;B/VC2ѩ̹-;,9o`Vc7 amd'(jf^(KNW1)QWUÆYhkP~N,vEQb e o,xV7HRʑͨ L0!ՓCdcLJFIY9 Ea+ƪ V,ΉVarqqODvR{|ē AEwҊwĘ»ڿ?r v;a>kÏߘ+*7c' ,`D9=YËdQlI ȺyC8^cg*梣"ۊ [76G)ij!_GMRZL6rp*!.Bc'KyjPX91=nfhASCXpKx'++~׋"ܿڡ*m*$pׂ |2͎Dߡv,G*OZ QJȏLc,a"Om2<U1 l ֒Qť`I/\hcu*(psݷ^PǶcN;RΔAn i/7HG/B)Z\Nw5<ԁ7bFր~`Ȥ֠ޝu#x2ra`^;B.<S4@Zy\Z Qv]#gkBR.r{!-dzskׅD! s9@Od5_$'1y)l݀e ՑTF`wC䊿!$v!4* OϞmj]D4j!4)rE\ ;!P W X᧽HI6)P)-D_ h+kx߄ndY!YM.7y.. V^sy96ڶA/Eڮ)WckتN4zk8j=|Ϭ-NE1&[4&_֛qO:DN:Uz_VXhMu>4f>' D"$K)5uS#[`D}hBDmr0_Ķzq2-R/!Z&,FoF5aб>Ymlqߓfd4ބ{ޙDH@H63UfrVw. `]f?-2zx-HXX"q&FT8# $XoЍ CYLKc4Xp?aMfXÞ7۪~UQYƌw+k>Ձ_pjS&!L,Bn-K=]m+ LYfFeIO h:AWkhv"k2Mܦ(/,{e xw4'3anxk:y;Ѷ110jж xv8os5Yޚs]k8]Lw[I["%j.b#nK%̙P]>j]/RFgvOxwj#짒r of~oEY, VI*\fwSFn&^WҶҨ@2!2%1P\?|}gj^L~[* Y9Y\%3yx=;re656@pddA5sZr2悧ZEH#6V1OgFᒻH;^i-){RWޢ\p:djnm/nPU4>qSg]1])=uDUίw5cfp@g1!{Žd h)G j.<_>YќuV؀sO);vYzfu܎bhuFrƒ|d,: HfUVAKnenG6f{W23ɣ6KYe=Um'5>CgE0٤sEk*L,ۜ,> ΍ѫ:Jy1rK2|%܈f483H/~x83,=cL͊I:B(f47Zn0؛5JS'oX]"adY*bjYVGV XQ)g- B~z Yrͯ*sb S~WJ* 6P/_V=\Z>?k),B@,Gz BW.CQ ŋOD1Weng"u92 \nҷ]%h7SRm0R=t2!(D{ LFgnxƥ0XUfd Z*z:}IӄK4*9ݺgNRTJ]sh9Pu2$Ejn243nM ҷA6jȍؽA 11%Y=xݕdž.|W%^ h-ߜ+\/B GFcm1o< vɾLl{ɶ4ldΙh23-PWFJ b5I6ə,Jܬm /hDML$xۣMϐZ4Y]!9ڛ+Ti jIcD&aV]d#XβZxXA& N+[:YEHX"s?f<}a=fl&A9F|QynT)M8O5̊>SڎfBS Jt'.E4]ȚcXx71쨜i9;> HŏP{ ˉ0(ѰH>{=,JIʙ d\usgJqX"T 0 z(- $#=-w8I=j0p Ri5-} ,g?s; h"wW4HR GܲǍ)5Ēv6̣쑥™&sa; vamlc3 W#8QeeޣUwM䭴7nXuz)QԤS*ߛhA Z=E.ݝB9!>?"`;+NFu}',}E_7<@:e٩& =@Jd`{#l!I0+pZcCTLȭnE⊹{_sS7:8j|N#C^tHy8l…/CV'[oĝY]h|"lFY=jDodZMuYd'PJи'U+$'#crL?sL.LNp?f i/w/v3iGA)FNeR7,[rp_o#D2j rNh2j+YCS`, n^d {\E{ϪǀZ5;ĸ9L!I@P?_rR2I2/B^\WwQ$9zHeT^$jBl7X\URQR{36UY)n%Sh[_Ma"(d5ж7@ 6z3<2]3qat˃^ؐAJ.鞻D!B{h[H㿙j$rN]:?l ~. Sȳun#;2ɝ&g-<NjK߸UbgeĶ՚S8$fPYs&voAR蚲{~89o qEq!&BuAm$&z€Y 4c @z $ǚ>(X=IAVս ͿةdkȟcBX/Q^ˬѴob\;cF³aߪm nM\b~1kvof =Z gy'u [#8J%dmBb@Xܬ6R:;(㌪"ڵw|+;Q5 9|O,&n( ("m@>HXϵG^B¡)}"׻Z.D-N7[i'Z3Gu h>2d3**UNUt3p`ZLbKc B0B9p{4KZp YWNmE  whC '%e8eA(ן@ń% 9jBG1:[#)@>1&cx>8(T~`/&\[w<+qj<%[n!sȊ{"@C-y rfH`UmG/K ?_m {b*cys~fFHLoJjy3RnɬI AӎQG;h<+#dO &M%哂PtFz"z]1Ne5`Gzҫ<44㈖t|A1a2np]*|krmVɆ{;P|Dc?gB`]/yVTP34Kȓ*\^mHo |0n0ڈ|`f*veU=Iy2+ݳ|^1c`CfIRgcI5-o67n#עzʼnهR΅_zg"0d0 3K;,20mtqjGE?¼R~Lr]G̲D%*QkLnG:}>̵BaY2W8M8onj eIх-4j"ZIeL?=is*~9l3qq }h*TRK^<  {9Ω>^zc.I@Vn}KȌ@Br5`C VxɄE! 7Q߰&Qv c IlEL5#u-E)2, *vɱԖDIJDa IzFKffl/C{.M!00Gة=sO.˾>r`0 kyfe2Y(*fy-a,lv\f-{~Hikbc3!v6iyN {%ìuMBh4mJ\ÖX?2gE0Ōbvb(Q=FIg ; ɓbj3j=I`^C>38T.ne:PK>/j36ݼ2ur4P]:u`&dflwn)y`%g潲c; P۞'Q8ͣ'~Vuզzᒨix?7ʭA բ4=\HF8/[,! Fuh7L֤ /OdkV!!Џ0ԫT*$"O)>LE<1%Oo]@!_qvlN\ g|%ELNq gA$Rkyr "培Ks̟uVFfFL?ԐS{Q,TDٴsG /x:UQ̔_ N< QdvU3( %uWRjC4k{pqūN"l!EM)Ny͔\j]`[N[Nf6V2qvbQTuӛͻ }xO&uTl' QP6B$ddVbo`$ۉ"m`;k S>hf v8[EIJ0>8}3ӃN e(*o OX"6^s^qܥ 6m Z1Gd:hGzR̊圂QFTF؛2EY]=Ҥ}B #Y@ R!Щkh8Pտ`Uu n,%5%r ~WYMq*.`a$"c2b_a^jW:)e\rYh(pCek_ E9'Ao´扭~Tw-GQ*.d}Tuf|$!b{f=!RkbZ*cgY[f\f@4sT ־mnG5^T%VJ4{! ,ef%<N ]' @,kл% [DvER)ݥ&)|MzgZPTa?\uhNs!. I}!/{J=J(-c~J9t<ζ n"zatK=ڌx;dYn v3SmAVR,,0@rHw%rP)$c(鷙gH[IS͛{5iXb)|>ݚ 6xI+d ui͵ܠr/#E[JY&Tdʼn xɩ1cvXJ΍Ġ˳P~5(0E.>OC:G*Pmx,<)]EfWTda~zfp=,r}1N6oY&Ant*jg?t-նu\ĵ$.ϵ4tԟI~XB3}f'Ȉ\!%ű^HzdKzQSm{3? Dv:)ȁM7dq1ε5KBRt֔Rq2v@Vh7ˤY(*m07 g_pdk ?f#G+/~x(:FF`_h\cΠJV>-tzƭ>YXMݥU=yM`Sa904S^'LJ>UnrOKmGˀ\L' !m9) GŠ<~F2rQ<"gKuuN e|Ykn\?_|C"aJ/jN28goװEa]@wm-mt[BI=N! cծT‘e, \w~^ɇrs4)8K?ԓ0Dߨ4vֻ\M[utX6 -хNwFeGgktnӐeGDw?BQp:+!5QHvE0#U'E^0O]u3'o)Ǎa.SSq~jC GnIG[x\wlfJ"%2N[?q^'*#5%Td5n&7@^陯R3m>RUJ*v8>Y3r&QT!3r^T~I1XttwG+b^<+:_}G>ܩU_sp{ nXwc bS4#MO$H/Âj3=;\RN'j*xH*Ue9AH'{ f+*h8_JnV $ U9K9L@e16Bx?ϹY=K֫ Pyp ej4k9=x/5жBw/)>zQ؞Rށa1/JS+YoJq7DUŔQ6ḥ\B0x ~?)C*Įn=+@lzi/!wz5X25g`rC >Rr(sϭ|8ҫ/ngC3C=TmU#TwݺԸHi+gA[3[?P8y[I2tлZyn 2-'ٝpVkd[50ީNN[r[Nϱ}"Gۢɵ X2 oGaѰڴSSc,^|9mً3^+*ic1*ϥ]C,2oc#ÂHiRym[:uq`_ XR l@{.6sQElF B(: vZTymTNG鳃Z{v#vxAr;OWQpe(u[(RM6g*A S] 0ľɿ,$eGP,bZRV0N[߈+$SQ?Ch>N-n\HC.]7ErTc5(غ׼0ZX"6 ߘscT^*f=nm6sB1`ǔ͖  ,+ru.[5-m~ J1-ԈeP,˟{i{َ@HJ՞A2r(z[1ѵ'6Ycu Mbc]<)LIBgf$,n"^(ocrX#([u%7ʁ| T/Ɯ>dXddfܹsv.]픬6;d}3vӫs31Fu[tV+e u XeXlƋEԟz-uZ*-ǔ{_GgZZ&s`yNj`<Ol,G%f㳋l6,"A"89ݙZ`V|t/z'J[<ӢuzST*"< T^p/DŽ EiC6o&` DױbʮLq{N4]?fWz'cҏ En xU)Sa (P8q(쩕JOsXj~ )sxeHCcǫJM`&k䭉51܅NԞ \]J[)op%zPN|91zC QO6٣i(xNp m2ݑ&xs,Eh_JL1RjK1W5X⠘\jV`\  !ۚg2{v 5R1g"Y|v1JGu G%d]C²9S*)w][:" \x6W&d geaP(b$jKaHzP$ PFbݻ``V)tߥv29K%m|S7 oڕ0S f9fNWѦnh b6SʰOXO|d翪گ'EBZhƘzV]X\^({gC+jẆn:DB5iF6_Kq^aM,V8$E͑/IPJނmg /̉+4~W[0p^u mL l15 e Luϑxq` ZmȪzfqPCt^9wx1p:\sƗan3|+=ƌۦeѸMɎ9etwܻ 0 ?OQ t,Ýff2oiOX⏋p ðTb (\9ŪeQcL^~'Uг l Xᴂ8}DUQ8~aӯi37LPݤb7|L`4Y;~N~'8@LfMG➛523} z!tg5 )՚ ;eВ}έau,JIj58Pe_I(yyFcK^w;tkNX4 WˤᝤN D$ae.K쮿 }Yϱ0Y(^~9i!CGL(FN9ک {wYQ+%NSbӘ/j㉖Qedfr$z\!A/]M܊Cz:=eݲݠCUm=rˡ&@~Թ&wX DA]D|p $|R +bbS-Tf|/!.ɤ aJ8.+ 6EldP'e "n6:c\fI嵩T u;OT(g PXαc:OFgVljl-kHx$2|/N8d[UR)*h *'5-3Od8%R(f/ySER어m"Aϟh$ \wɝ0CN-bK,{oנ׭ȃY.VhNr>r’a_' m?stQ o\6KT{<?< :̗18 g)8~ *(dʧԖ ֙0K- 2Hx]@&9I6 n;mQt]Gl/d{.+Nf(%:yRBqODlW/u#Ή.D&mi L 44,Y{iŶWy@ *+f P$s a'He 8LhJqw葵@N >@'͡ZBk Gwj`&*"9zwe^'6lY'QPVÚM5}]@DR/bdߴ <{׆{1kk~SG]GuVq;+cq5|gQk .G(E{;ZJA@JLuX>ٕ;S:V] @ZW׿OEΛ\C %m+ (;͇0Լr4^{ז+cwE$:`[匣7;Z[Dמrn0GT2\E?z`m 8,bɲ"}gog"$UF j:-v҄V}AYq_=84fx?Ś9H* zZ @aGY (9.<ŋ!6Eˮ񏁐tdV@i0r +9CKP_Vs7@w藏\h6JE,l9 HH$΁i5FKmqy]5X8Kx\,p'BZTXVK ,NXӄe;bN"7eL"N'7f4lY gX%'U-oS` r_XƳeTdc:"^F&]O^vw gD۷tf z@l%֙fJsD.aAIiw6) 8;IB9kCrp6xw;DU9ws㉽R29G`'K!Y.Xz}â?4]CNѩ) XE I36ieZl=(=]Lap0QGHwK<kb>Hr@031jWxFP+% NwI .SUJ5>}w!ox:5Tstg<|Es$~ܵ^KJS@Ʉ*tz_7JpD:\.D@ui6.)U 4; Vw8xKc=R7R6;Ž}=zkqIEvG`CL;, EͱybQ/ę711eVTL_JФ1E'h% +Y` #\~190)mt£kȺ[ [oA*tb NN*5^6Yx˰3y+`@ȸ{?G)q\W(Tm;CJXa(y;SQ6; 3a 7QœϏ97I7'_Tgt+êS7=fbbL[_䅴{v4j05)DqMe _@_az ʃZb*z Qq0 fsE :nm6p@:L/GS<Y[饼g>߻5c{z6+GkP7N y.3 <;T L$#*~:Lߴ jNß[' F!;n8˖pҡΞVɓ.nMEIZga1xfJ >7/]4ga z]WL99+Hv4#`Xiv2ڽǛn(ePE|9(Nz 3mu_O;MfQ"Bʪ5k9b9l_>&6'/[\te9GI> >-$ϥ+d;3Ȼ]iP1;*"[Ɩ9>Jh wӨI(Bt'DS[ZBq$ 9t-ENOȷXNIj MucWoj+OɱyY$O-kC]]l(APy ])-@x,%5l{> 3szX6ϓ]2h,ХW|}%{T5`?κv* S*jzi!Y R@CSVkd]5B(;vvqTlʟ`ݩ>M\6&|p5PXF6MvRz0 'eU ] +Ba.*ZfGa?٤tNuW\h2e˳Ac J6wE| 79pS.,{wudy E2~X]쀈L`֧mPo^\O.k-V~hCzȟ4ƘqoL$9rH})MR?9%V ƽϹ.z_| P Իս]ff? V1Z&tHҳ)=ownt2Tm{o]-]5}_[]P_ɆP(JVUz_u8X%ty+0*m3 WQ8%|߼v8hx>6z/{* lmB7v[bq936Y)qܬc57Obb4K!j<_ogxD6i ZB)9'|$ g_ZZ; 9ƪlw]@x8:(܊yp=ZX@XJDe 1PxHo>lU`pn:uokp*T*H E{yId,īX{U`'$! '8rCžcXNy_H3y0/wg.xުc0{-zJO,q ž ú`WlFde%x lsrEL,ͫ,۝KVqw %"yPF\[*Y";ΡU_'%t#礯uUh&ʥ%jq>;?+/fU-8 t\AaD PH%)3rpW e~11<|cݢ'I?_g+ h)!X/sMZ}sccCW&Hl0u?qoC+X>]3z"CxyF!=9hg8AȁrQe1$? kՌ7zIg":Ny:G jaŃFAmH %]wE߻Cv~Ϗd4j9ɢ.0Xtaˤ!&mʇ0~-J4cAT%1G8'Uڛ  H> >Sz7L[K! kΠxhyGAASr*H2"h=μxgNLVqGDƙBɃBt |T\^jy_Pho SYO'}$.qg8X)@$ܜ &J1~LlDhcK?JjOHKf$ʭ~qomUqpoTh=u5CU:FWGefǪ rn<;V,<,83 y2)O?'ȻJ'jŲT |?f)^OXƢGY#U4(c!v5$Q@ĪIl$am~}ʞU+XAI":{xr61J,mqYKv6m"A`?w.P^DF&؛n B&@_@ m:cp0S;{7[L% ƁXCp@N`xU&Ƭ9 I̧%_qOѮ-IH:J{ j9sJƄA _2?'o/ Gm8tê]&s!DP@} w2'w,ձz?lQ(O!],uód YvrƬ V _2,ТP h#)=*\[ [hY5RfG r3Dp<4ơ86\oma~LUTxC\.&W !{5Dt 'j]$yvs[qXZtL1qMfOE狤!e/ -ˈ>+[\ؑwK&bwLbEe@ќ1xyfy(XU8λRߩP'a Hu?;hёN`-z88JGqL:p0-ҫB7Nx4GslωUUmQC^}bjVzDLOBTiD)rWp; ( gap$ڹPZ?fbK%yYʸWWv%:r5W|&\kٮfٌp CP' ex8E@s.]n܏Nc.2{إن={o{9g"ڂ O` Ee,}\tB**;h? ܈>`qJKދf l";&ĀCru]9-9TǽZ&?" K.<LN / xvJHx*bvJXIV-S)Ps:)S<:gG빦wXލJAz~2¤}qk-gY(Ozmֈ`/˹`pUzSJ!_YƋJ, 7C)j9R0HͷvJt렃_N|Dk A HBad>\zNhr J:fEdmbD 0:Er"5M^:ӌASy3%&_^ K|#b1FeZøL? aȤ}L+\BOp)Xg8nןps[X\?L1/ [2/]dUz M ˲%2D;Sw Uk3 pdsk XʄFg7djmS> a%$;z% _8,l=w!:j&K)#"u*58MgCaGfQ$Fr {~As9RU-2hؘnʱEa&F2REFx0a}uWv^OE]@'[PMU#'&o1wÀ+(=&׮ڭEm"F'sYZ yn>ci7Qy@K=2 c` աB1Cݫ";޼ dQrjxuNmAnS.L,ސICE]V yƑ ӷ<Τ+vEʊiŸq 7<4V\ysvJѐ0F!0Je#XfrITN PqRe h2RSy]р?~_C^ˬpu"o;+?1^ *o~l/)#H%\AT[+ JrjН)auLwr1V܆k훖*Qrm90'c#õ$;e*a n!"b,tqX]ΐ;g4k4Su[=ooUo`b4 >2>4kK,+F8M!nknl80a'#z6RnŁh>9;e 먵^koi 6I;2sͺ!#p^\2A|N.R^,Wvv/Mމ\?/6Ab$$+aiOw# 4|$}v= 4(kVEaaWU:tmN`ikK6 \N ɒT A#斯ԡ ͞8ϰI I vo_(0*UN# \c/W7攢9>tWjwL$?`|ѝr(}7ln'`:6Rp Ijĉ#Ɵ'dykA@yB$ 2{Nmz /wEΠ1vFۦZK)c\RSd$Z־'QߠJ-N>h [(30L _@` !VkTDV6@+U&@&c7Y$sEio+]'g3`IezFLDsX;PuGZXpE$.)Ǭitɼт(*a~OKd YmQVZ*zsIf@ f^ Ն? Yy) v5x)}Dmxڨ(n;vMIuU0ll[J y \aRDiR;5V&j49[`gJ_GE)fj6>4oĎmގFi= 8Io+G4-ãɆhpjUL0^BY;s/t+!@k%S0)ߋF_FOa ]O! N=ksB qx:XL7@WQ._)v!I>j?oknmv*D"|ܚ1<Hr"_w~yd넋ߺCGWٿG0Ϯ%snx~OAeq[psX5:o!<B(T<֣&[Lh{=`B뻘<  IxJ+5aF4FvscKfK*h%g0+jvex藩7 2>S1VwI{P co_x6GP) 9!nsyF9sz89>ـ  krE-|{;s_C#߬Jeߴ-&U+^ÎYD%ݧorf&pv Q8Xt+YYB@tD{aʤ>FQ64ڗS+ebޖ$nLVOښ ǃY-t{bngҤݾ-[~b^SMƾ.Ƃ~AlcQ]%d%16qpl4Y1a^ΉUTZjRᮜZ9 jo8׾g(|RJz }9ڂv.֛YK/J,g7&=xd/t >ϦYeM?c+z&۷!^$d[YdFRNIaOhT'5KR) bJRMI&'ILAy A?{v}W:U]ط} w pF]Fa3N$奔++g$A&l/?AO1MP.p/?rreIo_xhwm{:Cdb_UW1j[byM& Q *UTXP<–'ïX t۔\0_7ok1Ը RljW %UνTwlS[9 [Eřuƒ ÞoaSmd+mYDh&k]^aw(JxKt6R+9 ^Hr#<у75 &=ӓcZe'5œ#"6jc_J@*4M'OK|B%h=e!!I3 f >`quZ((evUatCdI}N|I$?.:IL]%9m< S/I*L컅kePp^%+fc5$Q:i]jy8ά*8fcgBCv#OeΖgIRHuvAm^ "=^{GbswXmEO]==Vϙyo)vb^vyf$5VSzWyF6N>L@p^QtK%֚rqbEA֡&["5&f+AБfm fےS1G2$,kx@;y$>eny[xHV`oRFh/qHʈ!U~|4XUcԻ RM8O\8,\e8h$SRɞv\&GA};6_23M~:]dͫZP}cT 5'ągHih*qL\fѨW &>f2xi,T!w{lC)-;&)ՂW)5tc?>3= QQF~tob x~V8TZpLr/c[!ieNue.oNSCp0ۓ@S@0'M? K@i*Zz$g8OwYj${BvCrvQ|mNC̲W:ew3BLb NuTEd jCmמ9}'V Eң*OOpt6 $l@VsOCf7oweK|rX$2;F\-4gƒ_X{}SU”nRLchrK2F{D턐"K?-FoV2RipQsשj>TJ|Q .t@>؆i/ο,FdS,Tk3(:HٽDisPΔ̈~>`?f1]=֬e-Z[f״7nCm]&Jb\ p=/d0S(>eX9H@:Kuge{cQ 6k [=zX~n L'0drpCoa쏠F$3ĝa=D6Nm (`L%C4dZT(d.&.֣’ u !,Wf IF">l-w3f\ ֜MMt䓮C^KN]\#;ngCTF_!DVlIpm9owm5HNN >49Lt@iܫQF7RpeKо߀,(\?ME .5.=i})MYj*Ni0D'"n)|N,</534\FW݈Cl Y4<Zڷ`]N.L Si= UОU$ {Y9wgFGպ-} ؎Rtlc$l?7qǣ,#H_[SQhs3Y{Iݜbگň/Ny\ExppQPy{g0[쀉 ~QDi4k򇡞#_Bp̫~RG]/_*[ր97{B&cfHS&̓y$7v3=]OFq1t%Uʦv챈\suK"+4[6~hDej)5`J2N.4*`g pEMxgzWV/g߂2xg( qOW*t+^dԅi<3P4 q7'ZiRmR^ʶUFFPeF-%(eoaQI,|;,}.gwEoS  Gحǎ&DJeFb#|KӚ{>i#/D(T0 %YX|-6 +x8gT[+)~%CF+6a|XX<64y#75!9[''; !)Q6:̂?Rаezq]:nKL  {/-G|aA|xhAϐ^*^4YO6: [&<Ojql0ߑ1rj=s r4ֶfV6Sw'x tt3R~i1RXbnXь@LİnTK&?@MW")w?}hH8ZPs5/)"дZP'cV拀 -G3!nGU5[ydE."H.\S+pUs7BtOw0p?Vɇ *7oTu^]D O)@#Ih c^’!, 1Cb?ܗ7l !tOoc4>MM9F?^+@V%LH&F :Xhg.SE ukRN>Z_^ۜ֋XLP9QQ0M̂ rI[ӆME/u=4^v{bbw6f?RDi)5-FcbvjlNhBO50*UNӇ8QCsHY=a7?]^Y; '1&k/ :L@QAe;n^LW3\'ש>AtlU|~NN,";=O6Y<\0 $ krvhշ1C biqxGIǨ,21/1Fq?硷}Ȫ£'U:xmQ*CR)y8*! ߜ/^^6Fys!YuhvT yE%vmာȎ aEB`Fmb Ѐν3]~׿1\̏tbm0FQF?T0(J@IA c0H,3$2Ncbs?C6aDk6x45ͥe;X4~4"cAH~P/x:BVVR09 ;"nt}M̼b=ūa)yހ uzȭu wJ<E@K*vM|;Ǖݞ$|V5X!)eV60AU,>e袢~nnLȄc,jτG>)韆7BGݖNWp~El''%k^dGkffTr>|Ȝ*zC-|F= HxDV0W_ 9 =$M0dLy L{F9:] uHtFCX-Gxs ptjAkfbզGd6G.FsA$5jTހNjr,%㾾q0#WFY BTGQi K%2t|rkpX| n]e9I!2{s!~9%z&ELi[et<1}h,8YN#[_TS(!owD=ƇʈNEdԸжm[S7` -,ҷ^dp)*ɺv(Yyv6X}Ny'HCgA3mhY=P?Cd3>NjJك%~C b`Hh]+ p߮gM}+wnۗ*4>>XT ͷT.܁JJerWK!a?F9-Z\QwaZۯz ?p pGZk"#[c][J&zo]ܟI0'^`v,<2 !m(kz4Lvܙ>ˋ+Q%ia.,+LgPji 4 ) Jh6^rF4-|1eZ3x=q8lϏq|Z+pqZ?6l\-';-2MjYSZEsI8Y:>R?DES?a3ڌ}/9Lnr!w=ѽCUAv#P%ܷhTSa%~tkVc*ٝ~032=Q I؇sj*հޡ|3cߩ |*SEjJciR3O7cuUmY:C#<`~|Ko;rFq$%/ɵoMV}>ꌽw\%a0⦰X>\bqr:; &ӴR6ksdX3"%&INo c,w΢8RCݏy8zvY#0LqOVcd YY[J:59jQ#34181tϟvZd1|B^3"eEOpw5Λ9iDboCh,a(Y]< kcf1}"XZ BNܯE7Yҍq LwVI|sUT0S;]%0L) @Rqc"'Nx w\q㉫ $F{C -W۞ju`pqWP%d5Gq"5:_,X`ȆW+hD84ۄ.@F JâO>_fhd Țv٬Ӂhy{Gs0N%yKl9]//J)y^8zQRAw&mzڐ?Db +{ ӹsr#|fݡ7S6Q`:{8%^*|I{EǼ.y[a If"%JwtwKbNq9373V=ToPuPzhF#*R( (MH`|m`)[-=rnEuyaCW#X zA!sầJ*|%(i޺"[jŜٽWHݶ0+aM;lBY_V&C gvx #"kF"B= r5R@Pm1>:zhPQ~ĻF5uA/[0˞W qc_B) 8M}݉_y=@/qԲ0Xk>vJJIEgcs 1qtC7P&m1Vnj)1ۛq{4 eNU+hDټT{XE*0jYG "A^Zoccw#HX+; _ f9^oB+7Gmb@[94"W|+qA4! pN2s178)d;yp(yk<]ED6BY$eaaz MaT~P9-vnD3 e&{霴ڔ+Ӌ0 *Rٚߪ LkTMdZYl'uсEwŨp "\[ǪP^, 0D.YZE@}½5hp##g~dCjBݪ8ecl\IM;G`iaY%7䢏%^Ֆu sSd hDUIxIw21Lx'yDjSKV*`LASqmSg6zv!JьVT3[$6գK41ҐnU?b7Sgݵ>s|ƙOJklm% V2Ith kV=5$L0KJ_'FVkGӜJ}~sg.i@m?'L3w!<3"Tpa73xAнУՅy T-IRwCpdAw1T& 1!\qth"xqmذ%N٦6ﲜ,Ggsx`T1͐D>bKĮŽ}g,KVeXGKcP,1P*,pPnQ[h[N,&ZB%s YI m4/IAf6f]]Ӻƫi8K?vSuYİց1wvDbmpߤ6s㗾\"TuhTF-(Fem8N \~)a2ȸaqP 2]\H,↨ɖܴ'g7^ilٵ*~>0hr(y?~ff+bL_w~֢1}vt.{p"&9h6Cų+bλ&2wkt*E?,{־d<Ղuò1,H8!;`xɱ7|\zRu:Est1N׃܏\vo-5mޏƨfw{-U1:%nSpۙؿO$դ7Hb=B/#4]73ZT~2CjrIv3rv"iH>e8kH[efdȦa4'В6ٚucW|q@j+ e[~՚o7WK-O؊?TS,^x rUvF ekdj,t3O5t+8TQ>;)PqhlmRP&$[/#gR]Q=|ie\=hB|14Le DԴU@CTg?bZr8o^m,]hq3.4HѢ"Ӟ~+7C SBDWQaF·<*mkMngsLVZT]50z)BZ]Okb^r{ q{ J1μ0m'NKˣ^ޭ3 $ںC[w"hм`L=FǘV.5,Bޓuo vSaх)gy'Xgqz›to+fn}GV dϙVhyl89):̷y/N;=idz\F% K7hq*6ʦ~=<}ud 1w?QBmZ0H \M# 5 m5 r.<\{HA0F"mŶ!(Fxb$u͍Bw\EWDC'ǖ~?[]CN}Uj|sx>ה跴[Vn( OӪbͤlNA*ݏX"%O8sW.6V( 5xS[!F,*?jkrTi!0(H~7xH1jA"O֥qC|qR=X,3(x:85/;`hO*~bKO^ 2Pd7A$((@##wDu$ l6\prA x"Nx*h2H{Knp MX ~e;[z\7@oiv1 Uux=!tBH7EY :B,ur @YlvZOh;璫TuGf AykKAY|=)#+Wi0Aw_.?!6#g*k^?gnH]&X>}u@;󂸁]jXM;rhfu_coJe5zYjƉZ'yPE?PRΉsvrB~&d$$zNՕmܚZ~(B.$>ħ^oؕpm0[w %mN(E Ob-GT~6:М#;w}>l2#kAdKHK^8+MĞ& wL+|nr }Y!*wd'Cj8a%̊Mvv -?*'Ōwē2*Q> /VW "BT›*H3$|j#9Y8Wp ×?&~XaHA6, >Gc:g )c7Sl kͱe{X"TtFF;;Fqde"#"[T[ ԏV-0U0hj$`I6(6&sllȃCe/F=>_;i8!o2TA s@׻.WDg{BX[GUUj(gڕvL S+C?rabQUaL$7w,=gYA5.2DžiaG\($=b?e'BW O!x=F] ' x}Xզ(?X!M\Lch!5j1jY417HlJb%='O =,9;T{ $@]o(V|nױY8W1BCwpCy`|p#Rm][nT߯j!n=˅0U?~aɘdf@/`?Ruc.q+"]Dr̒X褛{fMF9bv0?o,)uτQΛY; w/?є}Q{`CB۠ڦ5:|_:U*V8gf1ϭB+0lX02Lw*D!bÏcf}ߝia{OTF?\.>Ў|G跓"hՍOp\Ktpe"ONXxKC jrc⤥)p8.b>G &Z8bƽT&$4Ŵϖ<Ey{;K.fKd:_g[e~1u$ER=˹HUi_9و3t݃W VVnJ)dt*J\5QӁ(xh,Y@ѯ jyFvh6RæWѺEֶIU[_o \eX(cX<:=gf2|n\mđ]UޠՑK:&=.$1#'l!2A2 (YGQ9-a3 $Rs%Pa!?#Ü]SWλs` ;!XN^eD*_VoFE-"> Rѩ],ЃX,GdK,r\lI%FH~BN߫2[ $[6N|x(6IY41y| m^[}x(w~"WC% p"˖r\e\o3{gYݙtd bFC$eo% Z|zy0<>ZeCS8&I҉Y[,nضGb͒S;se:tKMYAI%`EoP3k:܃| ȑGq,ΰ&Iatq Tv]˷&[_h.m3Gp3἖q9G#[~y~%%!n6(́CȅSMYQǼ.gx@UԬ[}djد`F~˙pk^~y]^– xsỠ\9W{ŢT#f/ݵEZJMQWe1r#b:`-sA?ϮvWd2/vx@FD^"L=RFl Pݰ1gd0=: T ުdcA]pywP &t`VNwO0%;UOtٸϙ"WXA:敂mP0p]FȌIJOF@+qV}gd}u껁ah=7w_-! Ŏ7Zh uMyN\6 j!joV]9/s:EYjM\y'}ڿpo[%vt&n 6^_|HTlU/[Ql"eWkYw~ɛ&׸+fhc S^%7C_m:M ~ަqV+/iKi)'@ISZ8na+XJ  ՐzP廘sD CDB!:e묎gDt(C 0~<GKG1OJV%`n0hBT><zmLz>,${Lb?!€%ލ[0U::BYŚ_ݎJlKEx5I7!?&F֝kܖ#AOW]ְͤJJ+I.‰<OTwͼh˶wbjh0eXK/ϛl ~ynn%mΉ#YR *6>-2s3*]|} זO\^ގp^%>5R|Lv_S@0r aOW0%'GtkTlq&R%{%X^ މan DE2dObȴ/6+= V~A:,' RDߙEwQyEjrF#C5߮X[90(-q$stT?jMKNa;l[iHd埻dޑ銍>*=9"$`9Q+{%M +@@R\7vOTܸs_=]zFݓK"%G 4 31 ev+xKk̭R~QAB6>=T` g7E}H]VC\(oCH7h |$(U'κaa ERU Ճd#g,x +zG!e]Q˞ΐtŭtuٜyW9)gZuP߈H5c¾K=dJqޟe$m.3}i"*wKZ`nԊ@;lWZ;Q8a RCv(Vf5.gudoK˷8>GG/,;N^؋v@#6E[/kk[D7G9'3AW.;mʡMD&XjDLU̧WG hމaJ%.R=zQKS 4_H~~}ar'v}F σ8F,EWm%Ie?/ԥ,(bsR@vk${S(#s jl" a Vh~rThFBP}Q2I%y-pCģr1c?,g\P_0Ctf)y<f%> ظYdyCp늇ugzMoJM)m/!Kk^:JF7+"XV @hGaÍ k(úzU{+ %h;s Zk/2Վw'ߔ9X-Đ˿Uus2I_Q 8ÅȰmyڶ19MPѸ!Dw_Us !ؗi!.)\|d{RftϦő kSS7PW@;SYjC.S>@B,u/;+S4&{^e >U;YӘ]U=*_i1 W1lj%!ԍm&?"<'͋o'Hd&V!X{ 2&*؄J Ƕ60u 4]ܢ`TzzG,1c @'(dU#Ê):] qԭ0іb~A˴pR4Y_`mUq1UrF BrvmMDZ1x8ao~m\tuLsk@ݦwha+O{ZhVW44KeJ>BPc!rOAnR! kre=>{NmRM/ 8͍qp=dh Lx܊G?U###ޫ,M x̮O7{U£-ʳɉL yIAsMtr RuMC;Z!_ +UX{ɗ{uxǤ<90 2 U{^ kJsKb7]Ҏ5 O~hvu2cURڊ͐x+hDeٰ#-^yd-Sp>fs|5BXDnDJ*gA2,;Ѧ+V(6t.C.\< Dlog2'™[lN\KzYܵ5#Q2 ж쬖}[G- URi}KLU-1wJCt~?y҂0ْXrMnhEIy Fĸm`勮B[אָK&vt6? #7x#ܛJG<>["CO-Vis gt/EX/Z`_ic8uio;TaA]+-6+t$k-4?bJuPnGMB;>ȞdB5PT'w.7թ'/ }D؂>nD&°3jy%Փ$cB¯2BuDR^[N(EɡvgY]OdN xѯ7(by xb7@R&X]cNcBgRD~T2/4ͩ m Q֒"Q(`z[?]R)v 6k۴}jT y$@:=  쑫Q8o,{m'ru6=̏tΛJ1C'`$ELAzLvRё˾GK a bog~[H_Q t#^1*y22vԱ;D07]g= NwCje.\`*+A'6t:x]P,Z(2 BprEKTNdځ)nj[b:[zdD4;]C2٣FqJΨxuW/}\cY=0ɾe }hwQUCJiU"q3.W7@ƌ:uZG n)ctܱۛRnTd7 >@{=40Xf/vxa.#({^7zxpǦ/ί-7udU%hj _NFWbSܢs<m%1O0t.jxqlZxQψ=+| tM5dEv1q†p[_SMiQSUմ({AV(AIBb?-X؂'Kw-xC׼4x;>NJz{sk(Z].w0+0]Sӷ\Y_fJ[*dgi/*l=2^irPPc7Aц9LXA)ƳS*\jPM3lcMݢрCyU슺ZEhT31I]fWp7IBKkX~r7hӌ?.tz)O:U9:B!݂ďmw[`qa@w+5WgD/\J3g$Q1 j.&AQBJ54 |U"Ώg^ "y}lmcH\Jo}eJZ5,'(u Ff_ʩ\H|hUJ8I. =W{v:3VgMi+;/jWir{}w\ Af&d;iZSdgH7p"=fQƤTr͌w:9}8?2"AI4~!XTȪѓGXJMoHjK0\,>!n̈&K|q gs~j72:9ˑWrn=IQO ӼWO8 *PsqMjJ'EOw˾Bēl*Lb`x^W A+epĄ .J9a$uM ė9 B>#Ӄ7yaAP;!*G([IEH{?]U=I^rζ(EXo+ksEtmNwfGyUȤX>_ގUR$JZgϕI`_WTɔI]bثw<ϗ@p;'9pLBkGD_G$_nJ>Dbe* 8ӬmR 3a~LW/p^(x{kkehHD+zQ Jє3\ ^=DuM)/7y:tVI]+(dD(Kv"9Es4cZV>~D`|m[R{t+QBfu>ZyM #Cv \aF::lMX˭XO6 c&>6 ɗVf6C\“|Tb\:`G|O#6QgC3iYJY,<- >=mBCVRߞ!â-'5h!3:Ί! % q60:_ԷF%VÁ`XXi_UQHqAc3jֆ{mЊa48Pu?-7s\M??3֫hzDFs"{B_7)_HSSGb9ʰ{N0GwaA#c[Yo 8h3!Di]_󁳉gyL{7{*4YTgf$N.,%:xTTk [^:cti4y(7bGӑmZ͌UY o;~eWSz[+d$nK7b$BS ̗A:A1R2-zIXgXnC!bMFMIO,0AuT,h}[z W `>f5 +(VaH3]n#v}EKo%7iГ)b If %$G}R!_Xp4;!ld"ǹ<`ˉZM95oT}eu(+-D+gF s$^]wnO..MI1qKCr:SHom2mNfyV-/Kw xo,!(wGU~̆ [qoW*I[1u=.\LP/KK8prn)ZT1V''A|ÁsVT5~PX#*^MO@^>$)ͥ OG)Q ˔P_q.pa)]G"PgO1m̘G2S0ƹ-i$b5'7"`7`C& D3E .ײir;{EWnҸ%ɄziXbA1Jua+ P=.?;\v?1F'uǬk*EP~, G$#jZVY~DX/K.!*ۘ?\ڑgٸW}3>|e:T-X4hWTio"9a Lo7D2TsW݅9UlюnA*n@o$% /IX%o*1 Un4ռѹwMi I `P`e):J~P5#XQſܭ/  h LF闆"PLۺLdZlCqumOTB[txЋY[{6ȁw,NҌO2Vn<'qcH}֮$Tq_ XC?y0gG',;e8_κ/[N{:\'8ȞFTZf} t_x`ΡB9Z~Ul%%`sȬۈu@޳Ρ'Zk|Omj`rm/O=[]] qv2rKtmzv)XHg'[[SgABnsM}ØX %>Ŗe訙ÊFi"sXi9ɣim {I%6UiSFz*Pbb b y6]@ܬ\D G|^qϧA\"Ց!/Dw&kԼ{;x ey崏ґKU'%`F}#CHsv&fC#a]/BOkT+$7wf\YgbR~Km,iw`V2% DNxtZr9KNXt/J"2~ԕr/~)cIS#6Fo HɜL%$lKvG눗YI"ͣbbVdyEcZxWz|&jjлJdh+EQu#z[l(lv9ػ_UVב̻E[hzC"PdT}X*NlNPhj(2B`ۧD?.6eS7ykJv.a9 sqw e6ۦ0TK`c/5n)E;$loN߻6p]tG½L԰⊓r (/frPIMf.vX/˲vytQ+>)aq=(2 j-ThAO*x^wEG+}\v#}g1v-AUB2谈Ψq*|,%G.B^V"K&kjNM![|KKY|>r^7>J%8/ոb}Ks">sB]vtԷ dF!^fa"Y7IH@4V/RTTP >}ޓb vBN&qD#va|7E;]hˌԠ33)ܡ%e̚Z?UqKi4$T? {XՍ=HWhqK~x P3O'SN6w~MYZ7be$ *൝+@PIdWK¦!WI\:aA27fn;'}EO)!)R2ѝ$|VtҼsњҗ^!䮏QPRSbό`w GߦgZC7Z# j(icvȫ7RE-mBxgf^pgElOʇA26,p|eIʊN[E&ca6DY|A[e\TTnȾSo TiSj'\_#iu u(O&3D],qaHRn<%[&?ܻ61N`úQH8hsmюۚy1tWjρV UHSQ{E:TEYh>g* HYR۩a/х$#2^爸⳵Jd>t@m v?H aKJ:!%Rͳ(m>|\^~*D%w҉^b[xc"9Ju/޼ 0n25Ӯ/LM)*ܾk-\.W ?N6E)qlEܠ]FӝMNi=J5X)+ƒr Q[݀O i+|:R}? 'fDrF),orRmM&$ꏹb<RUI"#oS|fa CA~vR upkcq2B@ͷ]!i@s'CNs1Z)(ȅnf&EdK| NRpW"R=><_< G-{Y>j[&~Xo@T*r kc>hM7Ec%9bN$QlRQ4JJ2G4t!ViY%zؖΧ:Y=[ ֆcuO᭯sд$'iO6]lڈOb0ڍV!@h t8{2 YOMy,Q2nA A4/2?։'ˈMPAf׹*)vG2)l0.BI7r- Wg5 eth6pdG]#0`Jz8a0K@/p7HNL{lIxWeˋDb `9#S! *v@>Zo\hHj"f ?:JB 6o¢cYO(Ҝ@W{ -ĸ"ϲ ;!;{G2ny;60JRx3&sy`h??͑'λ{y=$-2 =E)@m Y{}4l&%>p_ j#Ol;d( :ZBWa9@,GJU.[=s.Bt;#,5MύD!s_RbU]!PГw.Y q^FU7`XA%% * d7&وAiS<^7ꃯ.Y)yqB[9\A`ujTW5'Qk#o7Z01Leɏ.= ) ,+s%y)\iA$<~8wݵtS=4g/m*/KjM*Rat 쨝 67KsP{=|=Wzr亠`{Cm_^^SWIq ΄Y!02 ,"Hڏ{(:FTZx0ԅHjQڱ\ JSn^yՅ惣r8zozrT13otP04BU[ {RHǀDU~jt2.eJg/tC+e# r}i|kBFӬk EVEZIOZeOE@2)^/NXqY l>נ@JD~1fsME**sA%>ɕE 7R~_Ⱥ˿fQ k7>c )i~W=98s!Ӧ.l֨dё~9Y]%,wJV()-܊.\_ϺT9UoEm M!JVS`/O5P`g^ѨB7L޵&eC`3v?DN#W7%!9(Nhe:B&1#A[wmⱵH 4o d$y90TjLN9aV!L,likT:iCc%W>`z$pxj[{evR/G UIam:/Nov9wu)[@Cy'L <*dn) TVN݂RX=f; \}~l%Nؓ J뒳xux6,ųHE,į= ݽPQe@-+B_c7Ws+D:P>@ T~mqd9q[lbgdv멦A+΋D͔l&M<;2#uKZwF'MS\oɔvtC='E)}^s3N]76a G包?QT< /Z|rBB'w gWEdxEǺE4y8 ogs5ZyAߢy lod-]G?UmIC|0ks;^y5qn`u_#9肔Q"Y˾Z'qPVT jCcYU'~YZ7r1m ĿO'?,\ލ $9hPׄӎt׳ӒfG7Go$t5K^b!7[O1M.ľ~O«[i:O5#⟕3W@~.8ś I@qWn!k_t>3QGY$5ooui0_]S}`R:A Zo/jpPrix)$E$}^ P+k BYAbbldݧ.XN|6ΐ:6!/@t ELˬHu};쬘=JoE9pǿoљj(KO6Y eLxy#_K5oWms;)U#=N=bOPS05T(j򮰕!WU"RRG8HvTnV\x>Ǭm5Z'?F]NA\q\9FPD01Wck/Za&‡=Iìwr9Y(B`L0Lƀx5$YPbC2`ٍ6zd,ձXCq (QO{!26D|JJ&[ȑ'Q;M61,.%cfꙬJpH *":S̖DԊ|"v{9e7IyfH9t4yzmc>WR6c\^P$hD AF>bR8T*҉smREH__";f?^MXC2<:F snSP8XT8Qg ?sm{QA2K^2}&PE-Q|$SFN񋄭G?ҞZt ,q7-ɇ' RW 9F;*LLEw ģ&gಔWĢDj?>)j5 ^Wf#$\j'7r DBKNj?hb#AvJ\zpHzU;<\G@)h#w(謊IHEꊆ=~hUnZCԅ>w^+kv_P|n&z-vpH e/MsW *[2K#gH\3PNf'p4;VEfnMݴra.j@#ScQ-b} ? um؆`J{H=F"NZ>i8e#?Ea|pxQ\HL3Lf(I$7G){fGL9򓢧?M!1O8;8 .'kzU n2:s3aVs!Y Įrt=^V̠mRw׺X^cr#Cɘ |sƘ G|,-DzK} e^@3q/K53@Z܉bP?6e+b] }<\#W_*^Y1'~.bx3S,)|:fr>QE;4'㖐zJ<}g~(K88(,?YxsE(eF/,1YBYujZv+ˇPixPb/}pИ'/Lmr[o83_z|$PlPIo: "~f+NАeOOښG3{;}W<9 <y4V_qvrZ~.eG,Wxw$ZH7JVB,ReW) Z>{,@[46 U yDEC s2L6aԦmc^̤L| u 2)rsZT?5Ր͊&Nä˓x F- ["Rɾ]. &V+ ${?nك A gAa?45`X-۠.6˝wroJknC .tMH|IRlhA 3NslU%ˊy8_Fk}0us$|F7SΓ zr-+@D04`+f&Ŀھc YYĉ)mںߎ^0apmtۋsTbݽg/)$ĪΒGBv42",ԅx6,/Ct*z̒r)ͬRf@Fr*ܢw;ڹVW{Eٿ@(# q|vp-M#/^U#0VdI|hڍ2yc*!1Kճl3 }_@C`5,8&ioa>A`4L SPxjk(?5Ӓ $a7kIא kTjIs0bj/[Qfh0kgNiWY~?ig%3QAHdu=bQ9FɪcHz8^8WچS_Ke."m Q< \V4,AaUa"X/YBh:gAcpw$1(K OqCғ~Ϲb4{BA˞ YԣW2xH5Qݿ IէUT x_U+ *϶zx}ez8Hu 4&6Oq3ǒf [bݜWeCf no+: lÉt-G,wSH1;Ɗ*X++P?8Aj6CK2Or0dmci f2aBJ ٠jV0h&R "8v(7;4$Uj i]H`SeNG5fаyk\RԏW0w|~d4I+A?^< Fz⻣ժ}b9Q<6Y ݳgIn}|mJC-^nk¾?%H Hm12,i. 9'ȏGFQkpH_dQd0XgJ<$+a(- Eqp%8?kS1(4 n~DYt $P Tn? BLYG-;ɛd 3e\ ܮ$zaJv>f=u8[F@WFs=p#pn|Daepni"jX:eZb4),}BPD$EqzPܭ-Cݒ)6$8qacQFXHRy"'^6ձ9Jֹ:qIaMdIwK@ij7ߏջf׊ lY=7+3aRvULg&;ࣕ5G_)TɄ b ~l(~INJ!JFË6oiK*ue[o`0k0S=T&2qq UF.7 cJxD[_i6Vr6+”8cLD sh:osڛ$iTƗY#2g\.li oI8B;*y>|YHKM%ayRk4M1xOpeVx#Ӷ 7Tиǃݘë}|~ojCX2[%P]"k(u?ղS@m]D<'tDQC96@6:uYuG@ݬx*9u(NF=a$ w^٭6߱8V_DPR'Ŋ}"NgE47h1_Ӳ7CֹQσ[3µ@Gn9@%zOoWǁٞ'L0STumWB0#v8Y7>&t8+8\Bsč.@TDCEk>$l]%tX}/iˣbO6ahY^~lE\'zWҠ4FwBQLea:3;|qk)H]D% M5ی>!ַS17jףjU4}Na\e70Qq@,tDyU4 R+et+(6kV_AI;`%_AY4?BQm2*^~jPSV1ܜ,^90f2QOn[1>"/=Z$9i/Cj-`@7eQP3rfp|x.^:Vj 7q 0آa|⦻,@I[aC`(MB]Uݤ:2x#jX$\})8@Dy+x~Yš6FgAѢՒ髰^ Kevj39A8ݶi HJsrD(Fk\q!/vK’LN$F) nA;xe^n:;:}J%= c{5fX3K 9Ī ^ӵEUrG6RN +Y2o^l39)- #gҁ2Q= =^&tx]4?UӔцn,a;M)\J Žљpf=YHa-N8uYN (tF?R_$om~9b{@'c[X%FO oEZ>TBd$Z˪ 'tcͤ_ò :w'@c! P)k3,Yx524a e 0h'`kEsQ>wgX <HɫvDvSJ®е{[+iN%lV8dwlcC3dfɨD@0w]dQM?cnLɚusqAb_s2CՏZ|@[݈#<ߓ-4lr"Bn"k(ҳ(*N7$!CX'} 3-icۺC.þz _rrmRr⦜d.,MSo~\>:/M8j m,&!ܖYM0VtI\cPfm/K&t?^Eיti y֟;) ~d2(L/]ӛCדYf-/*U[ W$y=ӹZt+a: {mWev6&R.b2ltH^3\IykW%>1>D${(?+X7RvRgٟQ L- ǟ׈$RJZ:>%iK,v\sT$;V$;O+VM V VC;z~)?dRSV(k$X'vsJTD/na6‰5r,.֞"&x0G"KU(yjB!$ѿ, ,<9\5\W+ \Ey#M%*"+MH|tF 2!olEbrxC)ob@8Ym/Ulx̘D!ko{([{ZNfϯ_0ïOWfvl0 lvp>6nWAUNЭQ Μ8W%gn>}ȼ7PCZ<; ϋ"%+L,c\-cϢsy^y?Ql 6# ;U+RońaaeO7 ,SS8k>i}LDF %wݤhZJn)u[Sf9l _hv~8zuܶ$ԟ8X\n-4uѕy]ԟJXe=؝ P[Wyf6T AI'{ewki2&sh&~#9T4S_2N().b\k]D%Y4+- 3(s^3L1p(*En9SU7C @l`hPTVGR5P5 -~1Rl'^%Z Z:Irf'4F ƀm1H[cĨ`ʸÿۯznWsv0]Y,47Qa7N'UO^JU"]Bm*}+Y٨jnmёd"Au3Kgfk={O.YE*2~ qg>`u!v5+ް n|pҜ~&:>-I5c]dsC\< a3#Ƒ#VJ©/|KuZ{3"C1¯A 0GyzEH#Y %n%j0WsZKNaQj-*%l=JIGA` D+gEba4Y$SvQ " q/A^jf 2to|M\?2Ssݙ(K1Cf,aH[N1B \hx*O:XS/HJnnLdXȣz_PmU[mt2Q(-9cRM(pS߽s/EfCs؛谱}N5HB-51t~~A;p8 xM6e2F߭%Ke z5'n j}xZ=WlČ-jt0d8X *vrf.?*rV=Ǖ w\ʷ$F&_~+pR [!D|e&Ε1N9S%Cʶ nUk\W:lF-ȭksu>XqaK}!0fGoZ2,)6 ,qc]v032kFTWϺ=D4=4MNBC@VhC ,Q̔hT CP{ QuS>hGztv-Bm`4*o< #6yճ[lWY90m,W>о9_tπ7/Z|ư3ˌZ"HPB=+%`*B )G5O"Z;]t17 6ύ1==K$a [H¦ᰒl):*_ ݅v;4ko*5gO!mQ/(nV$La+ֶBOץц/bIK{i_Y%G]3vLL}ÃN#AIfGcқkQ +/D!*1:O;vZYY}p=@m4\=z>Yr`Cu(TF6/*$-cML={C> a V1ᝌR6PMpŦݾP땓ms#:>>E^H/گR.#qezF'ccDUƔd$;e {N4O[IԂJ?"zOnkid)d/k\EE14O=V'߈mwNA^Mx7kAU}K&ˢ ZF}ߏij]#];8k3=WCRXwg%z9l 99.C/"(O=>`sqZv Ч010d2пtVPI1>k ))gÔ/LZ;c8O$>JB$"T!|7@e Qw8(/5_^ ]bi$)?7䊌y#`Q֦II ob,Ԟy_GH>mwzr( uU r;c-a*Rډ&F.{fջJbZ7e;Ie%uprd_8UO(=AϬ,O w+Z}d [5sREJɭJV]6$B]ZbdC82,;]< yn(l/]uS[D:,ڟy?ȋ=--D(aa`3||)M嫎"%58\=NUTX[1!d86kÅDtRO/r18Clz r !g}|qQO9Z{ۆ9cq"xo}^IkOY?'ktq!բZ" R:0B {_Md嚢:!*scwɐC u=:ujT8e*!kRC3jm8vHSBņQ9jWMsI^6v͈0[$2zgͳ| @4^I&#k`}b Lq#e8H]"dJ͑o "p̰%VW~f}b%@bH#w$˴!bpRǰmfyϐ.mX,R%7/@wlX__|>ɍG]a<4~"l) &M E=$}Pf@ و'+{!u6eO&O%YO6z%B 1CyOd hu^hy{y;ΦEZHSnZL:h5$ ҙF@jIZ%;C}uτӢx(W"S{oD9yŖ]/!*Sb~&XSE~(׋^;"\`ZHG0cn7>%e1Fuk"G!ms Od}{Kȟמ&<3wMPnGAݟOYWHgJn( }硯!lZЃpk]w^5bz nD#M/S"~4+ $PZ}uy@Y|^y+o@uy]m Ek,$ | ׅmWMi<;UfwjCfaEkdzN x7aEhҤ7R8.s[o#x2T(CGEqfBe{9qW?DZu$i(LZ^<6v@`wn A͵VPLjaLƇxvajUr%n4Fp$D8qڎe>03d4Лٷ&_sq&tꏸmnyၲj T# Iԭp$[a@vL 6nAQp3 K+:ZW'ߛZ[2m:CMMn j10,0EmJzf`j;>wIAљc}m`{Q#?2Wa SԺ!/Mb/UBOf,Sb) !ՠIgh,7hB332Iƭ)fNZGx;i69{rd_ Û~z+5`pLc&F뜕:V8׶m\}6[$Mg1D*:igs P?EY. L0+S !]ǒ4GA#,.)99 ʣ-F԰Ċ۲ofb) ZłxCDI,= KFSN#5) E1N(7msȱ8IuØ;^ zMXYht|\ϧSQ\soڡSJmrDyRxUw-3U} ҧnxFM$_#^/Y:9-=g vl|FuАc0_I\JD$џ]s2ܢSe#6FCXDXșp,R8q6b>;#bmƮ\^}]@(gxk) N3lG`^:~NLJgvѴ D_ҾuxrDr>7kc q,u =8b~Pʉ #v3 =:o(WIfu  @ʉidpF Up.`zI0l!c\k8޽1uoijE)yפw J?DGD7VwZݪ"7bF썻oH|:pEf2 WEeAǟZj_]{N{)޿jF[e1*OM n'vvs`U7ϧ|9]f}D9t~@D-=9jt#i.Z".~ Na՛e/D=*0ATrtuN z/C$|7a{6H9i~blEּ #~[;xBWhz%E2/;ilbVLh2F6K8̬a5Y~߯~cK o\m˫2na:r65zW_7VoZ!%*  LOU"/F,4 G6&B 4îάNMOj}jk3-IRWf 0[ŲY;<``kсn}L@&A:[!v8G$O8NW*?5HM J`΅m=/$F^YXzZYbi9qHMZ9H8 '`oGG-9661iԑ+O&0 [8v| [bfhds4TW$G萱7 uٱC0^04ܤ(r>ŏsFqn~v#?[Aº̸Y̫^e !{`rK/wi&0V@a`D [KCڼcV](ld$zR[ZE Ň"\j`y \N2ogՙ]:gTks+o,NZb,8},^2n[[O_O)^;qa%uL{)E$p=X-?mVKv$h&wSzRTO/`#Ef}FQ~MUTm,P ^xzHJbSBu*(geCh#WƝfTks F,-qMzQb\PMbU_7q21%%dnSuTFG n%yD܌Ar6֙㪄8u>%c4;JVbg/rVlO<cBvQ0DF_Sb^ !`BT+RNJ@?t=9"bhpot*_&O8>F:ԤΨE7 jyvwCГG"챩 =x{\{@4d%/Dkhn ٔ7kd9l J/4<-$j"IpUu1I<·vJd %_&B?W0VX$XT`9=^~G&ʁ K_flÔiPb/)}cW(^UٖXoX#-jz{4o%_'O ibq{$uf1`$WkJ DGT|5믾 UH_ڱlE7gTϹ^G(J461 (\|zlGv@9w}d= 6l<0;Uxn&%k*Y Q/C<< z"Q"b4KZl#!g_9$n^Q) tޛL}U]g@̉++#$ ?Ek1B\6XfQn^M\dt=)"|"6:_ 0=piLD? XT1}ENA]cN1A8K,Qp.oWbt2U\wx&ap}>ػXoF4+)#=?={2qqŔ2{!;EC[>2{}g b1Q jƑ$~38tpR(~!>9%%`CHK?3CГQ" ϳlv|DR'd*l|@۟^fF/Pe΅&5qeYnqG!\KF#U-MOa*&Y NqAP:>!ݛct%޹ٛ(/dwDZ$9]gA7 NDJ*s,UYu5upFc~|[)l#8O,wi:,CccD 0Q~FVNĵ?fBgVoxgl SUxG]o+Hg&r}ēTs_G:*:Fl_Y뜄?yՍj6BWJ0 L+$PoUs0!]e>ObHW&P12]s6AsqZmU%Jc4[V*'¡EvcF .*u>wlFHG /$؞Ϸq;VFL$H=I}sކ\a,*JJ>;U}Ū=3۔+LAA`CD1Jl]%Ūlfsf+5Lj b0Ս]KB՛bTu3iLCɷñ1m0qDCHKܫ3úyuY6./OT59Fw+ t=ѻ68fE_ྴlEp*7Gd]DrjmM|7x,T<,HX=Y8 Xч1!w6čZs ̙яqI'ޗF8jiG!\+ cZx|tN~'|tuxw0G# 22-O0}z0қm>zUc5!VX\3m@>,xO{@ Sy5="xh0lQ9}k6v_mPI3`d;Ie kѸ=^:XdmP6[*YcY'SryK-ka&Vۧ1y Z)C\aJ/^4ERI>yƭx[9B,8?= @A$U0! Lg}M'K|`^Qm2w/[u?UX9ؖ!7AFO<|-q|Xo`Ah(VR_r-"9! =:((=rWK.!4}Jߣx}vI֪ V3(|Oj,Q3ܝp7]nkԬLbkPA؋)E .7-I;[ږt%4LaX'#!DŞx}_n@$ŔgK`P7*>Ű7)5O fc[2$Ͳݻ AodVV NJ}<밠!t3  k U)8C~Fy0:z-TXՅ1Txlc9scL)]D#1g.=)ȇc[a] rH4`Ve I(LJaj%feC-:XK;dEi8 .'DظQUr $e.jDC^ugQzGݵ%`.6sIӦus^ʈ}1}El R%3[ (2ۉk.WWü^ MjҲ{(e&yo2c~qT`7` >+]w-ZŰ'UOkB*8xTٰ5nX,̢%?筿}d*KalEPnw9 Vș/f;1 k>g2jts@GkLL W co5k0|u VE)el$TZ)b塕%-Hi,B9ܯǶk͡zր{.=]QK%2t=^KMCf;GsWvD5p38$):tj,) AX9 \5s@iiμ6cB|jaխ)Ġpa;1fH_+( x"zXIPI*.JI;WP *Z?o-zWr !,vRܗ\7k3&&G/v#f:mr/ޥn9pkkO kJ^Z91jp@%imԬ jp}ŜK2ZO>I}b/!ז +tWKnliCǎ5.g|]LLBG%.ι8f^O^*-o̵3hG˃?6)9S|zyOK>lx@5$(*8'qFx&zo9a/m96F( -:vd"2~X+]f}p|eos/騃 3M{JI=?}j)۶Y}l+սMAW* ωMA{8-xO&ݙfc4*JG/z D^Qn+@u\DP\g7- ;_ Ghtty>9+QEwPpԈ*%IЯoc\m<&{; j],nq+tq!%AZK8@({P "A\N:LPqVO6--gdCWPIz%babTm@5l8Q 1CQh4\VG St]z--l}iځ֋0 7|Y'E" EX(4gEv/0x+5٧e #\1] a ט>7;D naɱ$ k^8}~:w׊>W/=1/-9pLmƨ,kzY`8ny@(WA<ӟ;+hOjsPZ*@<.'<cMI:bF5 4c-'A_IDZ+`LCI>~#gct'š%SrBЎjG1 z$s{Ѳ7g@;wjU=ˎ_c̟HduA%חtUyI2+bt)'. ;_|ӚdYb%ԺKh;7z??yʹ%>IMP~o~;\gC7zݕ9@Xۤtjm^D BnÁd4% m'_6DM aX;|[Tߢ5JRˀ/=b?&Ad֜>rz]elUl c6LQu6mWNSN dB+I^؆?XK`'M=6%W|NayZۥZl1d=W-0+W3mn9a!.s4u`NdZIR VЕ.#:n$1ma[pφ%/uy ͫ=[Aj5"3mm3VŷCuiBGcO *n neOW,RYCNueSVD$ odm3(?s~{t un;ZsWS ]ϖy-ϫ=\‰K;B2M 2ȿYB{<_o1{Ie1N4.nll\"= "\Hi[a3ӵt+F\ \{etD( J-;$Y@-|70V Wh4PbbraURݿnⵅS%!箐X'^?VG S @7 B+%J N|_y[YW_28YY'+ci|tlUCYԷ~j(:}~Q4zBӞ?fv'c%`-h}78imHyqq$XEN {Ty0DGzv(CKkIƱ7{vEk9 --q" x0|JNI'DNL˄ֳvS6t"Ub$'֍ljzHa2X׃b#=ZT?OD)w/VX;`g*bLAwɰŧ@Zl6frY&IsطF;J [_mU5[ؔ/0PJe~TRW( ;R6 N[wQ0mŭFk 'չEjjIdW{.>=@8g㓩3*gԱk.VY[Cdf*&ᳺXfr&_p1]kP#G>*Vّ3P~=+UwAΛYL7V@K1Ѵzrr'vJ;^~WDZj࣎8Q iS"o@:q#yl~~Ҹ~e~Г]&:֙U g=_&R&Y?PcRWuohZ #xbS2J!.îgoR9^h) 1wWM ʧG'qw8 @.HLhdFY Y xb}2VmpMb՗uxX-wlބ0{I(ٍ?~E0բuAM3vUz={8_`͊ RR'z͓fur3d&mlߩO" l߫Z}LCf3f3X`!WZKlPsf^wsbQF;ة>Rĺ;:e4>%vz8X׺1"k#gҠȖ6V (f.T磏.ΆVn͋Ίٰ L#R.r|j%Q=ljob |wYe[  ,Ej_*}Ճ>~3ę:Df + 0a u  @{wGъqyh]PQtD & &>@_Psz]m!zS ڥsT>+ۤWD]jQy:; 4Ƶi;v;M&08\$B@NN L |a)kM-ˌ^"nkLxOl'0oR)P+1CmWJD6iٖ߉)Mq/+nA saeW;ǍLW/c_u8 A Bi^Z p[T]O'`HM N (t1L:8^aFZ^OxQ8O_Tw0,`i S.r>B},5m(79:Ϟl꨹|~TqD]ekBN=(^D4g,|rL$f *À`QU߬/mVD{"q6\LEWOthj G>Q沰67zuL2  ̈́4*ȟt~]Ưʋy7oe~"_1@M-胙Kג~z\f~΍P^u@:5GC3^]6VGra?=@esچ~ܥ6η|\LAa[ZBzA_N=}쓪{LEX͢2f^8~\Fc gfJv%mW(b v X1{qT,3o o_KB },!T(+S$i>W;O?k>Kbtfv&f\ %|̆cfK0DQ0+)&+tS\wBV=e;೛.W+r!2Gb pMW} 4TA74s叛ɓ&D]1Lez`\e9Y~jE&/(mFyc]!dXeх3KZ95Me߸603HՏ: lg@m(TRضͼ,*nlݐi NmY)jQ*vVvnmޛ(g s-%r**slZP!Z) & ܛ0a< @ S=9]C2WFq saEA!Bӿ"iX?v\1vJ3fEh,Ht{6R80Ft^~Om*Y$TVkMwHDO6a .^]-&.Z$ 1oֈqT "P9bsH֒o7c*fTsN5CpMQ̚3?}8W Z܆C}ß?gd䃮R@ a&Gw~yu fCm 4yͻPNfb6nǛu$ Rɺ'|V-?Bc)0|u5VK+ {ZPUqNOUQ hPivLy`ʃv>AWTMTqӚ&O—\RVW~/1't׭bccA8hrW! FH8b]uGxvF:w+9 4:MWB  21+sj6ȧԩ5"nQ6bHK*?&~WO9o'_8"! 6"pAǩK@hD_hd{i>V:IuĐ=|YU|DL"ߒ:T1ی?̾Jn #;\:p#fD@XQl.xVxol=s\W4h< tz~>Xfݽ0̲~̆FFt\~[cyO;5?R)>z7ץ=*zvτ*nǐS7ED68-y#]Ï}[8TMH^H )~2JP,O#$hd+dt>%7X L#;1!>hڅB# +U?\ p6e]FPhe{IPo/m5_u`s< }S?j΋dˈרbQcD)7fP4}GUd|hZ)*$R׹ǡڡ];#߹B 3P"ըDH9U$s4:T,(^.}=6)k2))!,dr11:X@NǪ?U%M^:{Oc)74;X{TU %spϵiݨF5$`_e d6W? idGI'g :}gB9Ϭ.  Ob޽*{.w^X [ D E /\ Trs+ىQABj 9kDd! qs@E$Ac^;~SK8FVy\ډ/MhyN >aĔ^ AMk/<v~7ZkfJA pb0]oO$sg/ fXDn0 (t~^q4fԝWXt_65ᙉf)F^ 56bSDɐWj\᪊R2mS#fE0z@Ht"RD)`Dkx#%sGHM\->+Fop[I/iQ'bǩdaM>. JyPǾChiVFEqo_?13,[]Q:T?P!SMd JOJR1pTMQC^ᖯk2wJ4BEvkN=ذce8HW= +!HHvP8d)e)L2|~Y< `LL*:63,zDe B(u: "/}0T -(^93Őԃ$a.QRδ+'!E mmN#njAE,E,s+mR:b9LPI j؂D{hv\#$)FnKH6ԼY]H}d|E4Ҡ@r+ON[彪nǕhH{OzY}`JCWuu rcd#,OlHϝ.Me&kZAѸ徸vnt`8%cf-=g57Pcu@z8ԎU;\gYT;9T޶tw6!> %vxP#V.N]WO< ˤjM\upZ 51&>D147wgiOpQL9ƚz'WZ딞mI 0svŅd+0$RB#Q|Qqk|:nȄpL#|_ 5KP+`gFnDt'ͬ!B\Brrpߛk>UD#6SSoŨӳ i,*$CpBe;Pf%N~YC ui:fl$DwXM 0> vȡO+VSkQM%-ptk2ʟTsaR-L%."Yz2b߭0Gge&u%…Si^1\qoe~) "|e8V,rl`SϥGnF~zXQ#D.O[ fB+TRթ=C5E[23gU86՜ML?(&:c-z`kMCn ѭS]k?<6g_kf?s;Gp_YS2Weۡhhpn@Y|w?Cjlsne$_w.Sma1çdž7L =MspFyl, .ە{Q\SV b@~qzA$ieDr%3Sдu#,p+0u!Q>J:Pi3YNCMŀf$ué7"ݘ<| )-tjGyũ#'w̞ E)a(gFdǒe-?ΙT9Hb|awCF${N팊 nxfs&v d1qHlXHQ؛lAok֠[7ʺٗuf?oreἾ4DEFm8:!apK+.3dpE7sp/9X^Lآ6H9Zڷ>(){Ol Wi1c5)4aOfwB6v֝9s2BDs 6[o&ͭ'_]c~R-/'?[[~ mŅyE"[rGPI=!UbUWr>0U P{GM/>me|9GԴ^ܱ9w0l\H?6s+K#ELzZOA/'uˍӦdN #BtȦUC Mls^Ȍ%r_* h7Oþ x LN+Z{]'ELdu?cH/.W#,,8mɔD'n \GT$/]c0j 1SniٺM5Ize&;_.c{nw?a(JK߁v^T֣̃}gnqN"": =`{Nғh[ȷ>co!Fv&?ﶣ!J7/:u'J Al ؔSIFj6ٜtӃEb>@=LRZMu=HVυl#xFGMqpBx3E(<=>6YW Y"(jB-2 +([poq"k#^}קDZikLwsSTcuRHUZ`П`sO.D#44fH"̊>T*f_)&$鉤 %>g4KB1n Dy`29 Ɗ=27\̻^޷DJK[/u}!nzbBN_RȂ`1ğUf'iI5YVZ|Ϲ{O?#a\5b)J%]M [ͥis(,ީ<.Žgl>Ъ`B VvRw;ǧ[d\-ofoft cﭽ$G(12Q$ /<iN_p$H\FVxnv,I1|R>{pZkD]l;29ZJcy;|OJ ]RoܱBթ eJ>)P2j!_Ho Ta&3zb݂2j SK\۪ݮY>ؠrY%Ekxmެ x *?WW,)g::R~vOfp8/ecw-OE3~Bu#يXl9EUmEU+7Qz\!YlQ܇v/ ֪墵zM?\yݴ^[s=[aHR8=>wUP&Wrqɀw~ ׋A+@%H9v;s6s"[Q99MSc;@>VU96"үjZq09zh2H⁗pbU^$19&Zm4Ly9(<{ 7Ӯ. a[ lU&$h恟>nem="RS=!Jqhvc|EDwLnvI˴ƝRo-G0@¢ƶxƾ1ag/8]Ic!;X#CG{3 -k2ek5ݲqtH}꨿" e, ?Ɖ:8D8LHڍuk_gA?sqWyrƻ0~]%MDBf{9EG_e$GۘD<.rǜ{M#QEcbsvNm!lMϮxNZݘާ `y[冭l{$x챗z`35T?Γ;~Տ5AG0 ۭA&BAwZ]QDUQ W]1q6nw= ]7]ZV5p@<R “+S:~Nuѱ ɢy[ \bfCn Hۢ[ݴ!\GnfOL>n{o+^F_>وli6[ͰҞU7::"Dޣ&2+ -:+ 3l"Gr'RMjP60A"H6A uFmOJp" l0Ɂ&v!F}lTot'd3pjU#yhN<䇐՜fBd]x1==ihw1Rs O3cCL*rʵSij*`Mah+41ι`;W ^5i;mS*: K_#μ}iJz*Tߑw5Tcj#q= u{I_lpT;ZJmœ6Qg N,!5k0Dӛ' R&vD^_S?u\`uÞ]IC@^d(ӊ e,߿XAS>0U6Gs>kQx# -':k vH܅4\VB?oΡOƕ'o0#b RJxk? -~%_ɧQIFX{v %:=SHIp3V|yVYH>#va#)k]0c~-Ǚ6Ko7'F9Dz_X mX7B_3OCw{/4\D, Җ[fRK:)u'yT{q-iyRrkn'|*I$׮N%rG0: RH>ox_h2Mc}Y;މ9"_kz1U\SqS%aXwFt3.ʽiҚcMmh(7w-`?kdԙ=h~7Hq-j_(i}-q@rt] BA])}y2ƻɬuaZ9KIrjɩSZ IG 2#;//UG0ؑ+5_!'t0nRD)xɿ\֕ ߴI?QJaL[ -W )h %щaMyHHIJ6ݳE< 5#qRe+M&"uLGΈYtj''!a NS1%n&cqA }c0\MCj{30PYv{,t i٦. 7bυNȚn&J5RioG%GbO S*R_وO>l>='utʔQWs_u+dD[' ;$&w&WZs8>/rĘ&*B!M9>$,vˍIЁ^V%Ofef.$X)Ó"]EB )N݆ռ/eaQ}b tJȆ3c`+`MoY"1;f؏a6\j]"D<`k%*ַ~-0Jn&+8۹kŕ>?F| /{,)+ǎÍy#C͐dQqGPΡ;ZYw%0ja~)$MFl8aH (O<:!{NVe5sB,A쾝M^`5Ŀ A ѩB HLΘ%Vca.#{pd}* (_.>a0zˏ:f1oT{d5XWYɌԅ`(K7Dީ# >$Q>;JRJP2*w2Ix l@ժmC3MpDߚ;^Ci!9dZ_7 sBDgD۱E>.{k2l͉#!1aC8JL &6 dhHvM{{*5G}CBCemKI'J%K8a;нB7.$iGABn_-( }3/Ub+X/]&\G0GLgoJ=LSSuv_58N.u&Vra0H_Va;A5K\U,.Jf'vѪvVvjo.9hn}R&YevJYpd!]_Ä~a X`=<6X !l0ՔX%Ro+]%ƬFK*L!όXuoNE^"=GajGkVpxzr=%U( ^[\OE;M&aXS>wo*41),kX+Uԑ޵ 8?֮عN-TH"IQ#3~hxvi1ɅbZદ_jD[˔ >{OMh+& XMxFȃΥџtRs#Ϣ(ļicbQK'JU]._OCZ\ %$4Dh;L3YEas (7Dj)hp}SէrLJxm-@J9-;@Z 'uz`+XY?1 ߭PaRfx-``:Hrh^} iz{I͞x >LgN3/G[)ɕ- 7rCDK$<Va h[[f" שZx,9m*lYӎx ;fʆŇLGl'Z6VQ Kea0 ]1~]nə_i䠵7 ևﻥ[OOb*DܥxpC\YWr,C8upe# k(}wa"07LSUw- n($$;7(UNߟK',w 81#`& ^E"Ms :F2`&w%7B#JuNjg2[7v}LzBzŶ':Yxa$#9p{!@> ,iŨ.6 ]"?Y׳i`j|*&^?[q)̜oO$R,1#)H,!x/ρ#rcF֯FQQ+Vg*1d bWB.q%!~B=&\X{4;5|*Z> 0_k=!\w"I5bI0:;ѣK~4?*jQFV*GLm2t)7pY(s#B=-'wW_ aKB!MgN9rď&%Ma]81͠ mFwC;;g|kyftHuɚ?8~uC?!iTk=Nc] MJ_; p{h$1/+| _q"#c89V8 f1yfd{Вe9J ?9ccTW3kdYNÆY1`*56pC1  m rG+;.i83p=JГq92sn *-e؛~UXڳ ,r[*zB]}gOc?!y܆gڢ4Юy@^06twer+b#/^2cZ* lJ _L `Y*;F [Xb*î׍3MH2tM$:&0sߌTPrmINJ{ڹ Mdrj7N]ܫW_E:ӺqPf CDF?t?DMP~$V:KE;h6Dd|g /'_>*_ )jc%a̐*wO lH16B"GlVdGQ?{Xn%ʜ;a{RxY'̶R0WqY#ɷg9L2b\PewY#XؼZPT3 ]\iZɌt(DF A,=]QCϥLn/#j|7qp8od钣*Y gơP{d)=LRt}zsd>JqWjI1=@/1}W"]'p]<-̶H\D m)]M1ƁjKcݻ97`J Z'AdK) d.`H[6 ݄2m%b1uZ?=~ۇ>IP VMs1{_uMZiv)_X)~˪W}h!3gi==BP4 jf6$SE(= /YU){Sn_ ]4RQT:^X[럚"LlΡC\BQuuHȪ]-kxA+&:h9l]9RcgNkXVM9l+rf㒞nx=..{ s@G'틭QIo6aٰ] Ew/UhFrp\YOe.c6KdnϪTw>dJ6yf66Q3eoUwm2&n.opdN|C-(щE~'JRq۲OFO yi!N:r7)tdjfɻr <⣯~qѢ70rSaArU{+kkRPk`'e=Vnv[ggpV`>}e"y3'!Vi?et0dU6#6HO'V/ަ>u pF>}P_1X ;.42;7/ae}r{A2yL org ; ,qM;b@{~@PIFK4@16VW 2^ܺKN'@lQ\P,Ha3J"@ }EAVR9(gEHbX!МLt9|i>~agt$SP'ly| I {U\CոBnX+Jmz|ҿ?ى{2~w.jr |JiC3ŖQ6gJ<, ϵBeNVN:s5OT")\ms!6A=D?-TWVWv,g>\}m2ӓR:mPtL;" ~bV JS.M"w(6k:z@eT΢](0ޜWs Zw*k@E>3#(eb Ko+JsRNId0Doy/ *њd#U Lkg>84D̚KU&r\zbqa%) ЊRXKa"4XJ!L۽s%ߴ&RzjxqmL?7l0jAJ@Ť7[n-[ FDJ[yk=?^ KGf@ x}b&@" |{>R#uliꚻvy$T7H^bwC8l>NDPWdQ_˴MQNo6mK~Ky[`) J"z198rqs\`v'iit0&%[шsLj):66o8)͖d'xN^sV~&,w.$ɭ Ǝ@}پe$JI`6'~[̐vt+z<8χEM!/%j.lvs1 ^c,[;#G[š9 p[IVpeT>3Q8 f?a{UUd/%6p[(E8$ Eans*s<qA}Λ6L;h1$hpw`2B ?-]NVP 1P]`u9—C4:M(x-(ez;hO6ɛM|$ 2p\TUa03f 4>, ~p$Sl\^]k<-%JoTщE~`s" ˷y[8 u akt{ߏn זff^k1۩ Mea"0a]kߠ`2{}' 9r@tD4p|27˽cB=JC5qihQM~%"UN(RaCl7 ^Bʻui_ӌ8O f؞Ye 0T&AS,yp綮GU2ɉ)|d-Mo 7t hN.iwmm437z ->slq)shlv+" ͢d)!M`~I8Ae{fᰀ=dN\AS4STKVGgaJjN\0ͧz~ar_x!i+!'pi;95t|dm3NvBsu3A 9o|k5 6y mṭm$Nd!a4[poS$6lω4Arӏed(謋׭<I-9\nxR̃^ŧBa̞Z>^cȚWqLo^I%3܀"DGNM]w ]hX#fqyRa]rl|o&9ҥq#y7h3ڸ2-4L@N`i.* tX5q5=?(yq* e N+{KкR-SB kUlp8W<& < Bf@1QCKឳ ݁3C'>BN%+op_;F?֎J@h7H%6!++HrdP7`ĪP'p4rhPfS%z)v1maN7, j]un=jP|yaj5,FeV_jyjL=J|.tf^Ux ,lO)̩A5x}.-S"ǿmDkTS k 0CZ$tk! -rAĠ=r]1rW'pEU$.v r9|Ş^jM JN/*Ï@~lfDDl `R̫gq`ͱ0ʀ JVs0m7w &rLVMXf ker ]-O?e6#g! ))akiգ-7|koU7Oj+~RK!aH?Ψz_b+g2oAm@FUgz͕Omp+g}x@aR˓3 d Ja6-UYiTAw`2wbq\ř!f.Ps9Cg Ӧv$<1H#}xُ"6N,+>GmA)3 P,v6@7q`ʅVpָ|)+b.vwuMyK΅v RfvUU6 W 2C2PD:do v i7?MIb.g|h  mvnwUt=<$m}ބF*`Gf(pKX؄9Y/u4rkr Rx*!EQ_6ḷeҫ餏$I]GN7mؤgY-gk.`2o&̧P agz8~CPiz2âӣ" ,6DS!n̋NMA;1Vi`%cwpZN%E%7]3f-Xn0& #^W99q2KUnaՂ{\onp؅ g#ʎhXb`H"vġ:>0E1@ l3AB%sjEXndJ͈pbk,Gy~ W8u MqA5zAPS$e7sŽ=_Za#֢ ïغ *JpdB`;vدo.T @WIDbV0$&5pRh[A`#j6,iTG4$ul wݺNX}0 {_cMnBc?)mFѶ Q@o2DWJH!+a5WƎBЏ}E&qP TULTըtpsIl"Õ:p.vZ,JV'o$s9C*9wL492X^A_^|ia<CB}%>F(;GK>+]ajL晫o@Z Mc @/ZLU&3K^YuU?#P$ FSIk̲Z^! >4#cxy@/v\.C*zKێ8lVVn]`3Y~7ll-)ˣlR[)r $v sF9dWsNM&T# \ʣT>Ј=xU#`oFGG|u%yWdDZE{_)ZӦk!')ּHj6i+Ԡ"Ew5nU-dW̷vv[S,֋9 \f;-17H0;n7Ͷa x!O02{ dl̫O,^ߴWIm`b[wc0fCx4X*(]?B$!@?=d7_۴7?5 Ґ:,u3|Atoa` 4EoKߏd۝6R @˳rJl`nW]6/ kP!y9ǪJbHP{ ?kw׫.:( cYمh@5OX.³%ȹ(j$?I4%>c#qRQP, Y捸U_e(V :Iٽ7>+QFn,N):v;jg=dإWf־c)˭"LܰX7Va@ss5c{*1;oQuԘpo"7tX>+3 " n5\ψi?G ˜v#)%e:7M=YKY%X0bԒRgbWz`PFJD(WbM GkHBQW<񫸰 (l޵]OTDgd(`˗75 ֮ Cη HE TXoW ;p{HDDn f9$8ۨo9]tܮ)Vu_3V Yc#D3{Jg#.R*(.yeHP$1>Op8H]`fM&;0ri@~hl*9(uD~ RNZ|ɂRG'emC% 9Xj]7*)O,5X˥G1E Z<+,_T`9p -R%F.ޝ RzfmC`L4^1-nD6XQ[6WS>Z RmNC|_[bO]$rßcUF_|c[ å kϛ-?An+[Gcd)wuq0I0T= Z&`"'r:)ہ /;T#''L^|vLghR6[mF H޼xUFX>2t-F<<p!aTj}1tgn}[m7?kcEAT (_I:b~- [r]3}t3~uFYh"hLЭ>\LKJ4=<.F/G;q(;[AXW[kBUٝMʧ۲'GAb"f @d>obrsu6j%H vXfkv}D9fCd؅M+F_5 ֩|$ c"fbx3~[hjy!4A"SҸ%GǀU.1|t7.MQ󎢛jC +kc7|XD TJcU%?Y*kO#K!YH$ESOt(Jlj1w"A3c~dlno5rh'P'}uMl>9.o(z+rW n`Ji$1 Jr+KWh-d˂&f΋9XʲqE{"۟:/nVMoFX+YĖl+:(`AD󻗝(U]0N»"<;;*N:ǂgoM ',6گycr$--\.%;zzJ?OC/\#>XDJɢQx, R5S.EuB䱦?,e%̅hŒr"e8t^F4:CO91XU&.dࣸZN c~0Md<3TJZ//RC:#bN$Qou y_2Mī {Q br" 6@KREn$C(8Ci<;)+PJ*  Bw}.$Ji\Zww~ن}$_wBDyVfSlnJT(GA?7RofhLvҧFeU:HlP=dd*@$]50+m`*>SG Up})A~iIx wJ7}Ϩ.;UM掟h>V}E p+z\±t^Q'F X/=CoJzΟDEXpp}߹k6&P̥B3` s팖1ܣHGbOuxJ>y֣4J-[FcC1x^>\epþhየ-!=ВmCyqD1 F읟֕ ZOty2it԰câTKA$ꏏ1``⁵oo{RRVQG0 ֿо֜. '~C*ב@ [JY9rrC&_/ܣ XLQߣMNI׹vWieA}ٝa-EtEX_0kdx@Įxf*~f쀗hfCfg1h|3`dJ0r'0@(Ӿ~#gvrNXb"-"JZ6C* 铦'g#biYSezMUb!-L~c(OeDA\d?mDQ5}flE+0sQ~Ɍ`h tt0bzw6 6'ݾ܋ZFW1$ /QF \Xa3_zܛ$߫r\3ⶴ"jr ~?u7Wes(IkNe|ϸ9l(/AKie s[/v!$OW@^a:qgܪ 3=ׁ0rc ɿ FZStT7=,GmOE#f"KM[AQG!&~p3y{!ހƤ / YvN}IyL&yzWS>=G-!뀗Xfh֑.=E.ZqHHE͟>!l ?UA.R юWGd:%']%ȷ€w,h`Yz'c%[p=K7/ ne \ggׄ3Ů"à JD|q)mr 瘬qKZ;,_[U/}J 2Uו;LoQ{dQɽLJl - 3ԙN1Q/; ; CF.u{  Veypi ш uE0%0tMȽʚ2%'a7p8⢵S\OKebER3yw5Qw* ̶AE[f*=]К&A@ PŸ () ;зZyОy0bDwBm\= hbLI`J$?;|:T~⢖su'nC2m/Fn{.?P;w k^0NnE.f~\KN ^0|&,gt)5VzP#CU3H'QF[-}iZC$<<ֆ֫'xo^eǵhG|>9|Zg딱Nm%Ti֎:v½~w` 0 ,lMn0c@^?2fqv]5E~NmϵXUaJD3R?EV_(z3C'*|:zI4 thVkM1>}*Svx}oQ2nߓQcA'_Q$EDR6qL*F'wfkG{0TEMG'Sl?tVjCl&XeoTO eۓ9??7X>y{0xwG7oN/d՗}>rfQ=uץySNt19}( DH4C_ʴD|~2'&ښK}_)M H.#uy)ҏ 2j[Vc0- ܀է7 7ˈ+x)`Xzz>?6?ΏstyT&ձ}>:k98YGnkTYO& ,[n(|+bdŒtذ~^nY0!d3a)fA>tO]n Vvyе㞴`-d]䧞 pC=e6B֓۴TO, :Ye]6>Q>UBc=37 ^ٮ2QBĈ֤\i.[n,K9@ΐBEid$Ϩ˅"Ѓ Elr^+dVeѪ/@W%VK59\:y2a$ns"1c ]oy#3>{A\RdŞ` ~5J*_WFBa$?[5 rq );Nq@8^=\}G kaƟWsqZs Zԕ `!ڐa4fJU[6swK7&+ !5ot.\ 8 Vuzl| KSQR꾪PS lv:ރ {wFSHIznt>6OX|YkW@nJݣgs]rϑ_pkeX D$0\(BXH#M3ac8:V}#FP%x)F'x|DCx k4_jƔD$컒}~I㖠A{ٹJ{UvnE(Z@g+^k2-X:#'Sf,ϴvBX5`z[ lޗn~m7JE&6Es?R)Zs\/zFs,(@fZ@|# ({S^_ מ @jPbF^z'}y]AӯaoKPf;˶IgcHߓMVdGT辶y2BPHa<Ds WH` ׊k֯Ƞ쏳HIXHfoRdUwYwR0;A~4/F{ 7$7My; sc V\iNX[itU>H<G6 wO^ur|2Eob!_cHPiK@ bUHW5?U|ۡneh>ZdD$*=kՇ & 4YQ4hzW v bjR*[xU3BK'Qz`+<>6)<ZAT$V`sx7HT.MK%~*71cG |1D~}RXRݝ4u7U8B"!+V&24d5-)J7X sHdC9kn=и)t(w/C)cJMI 'j5 x.?]W?|q->)3\1H@ZV 0C C.y'i]Co R.}7]E1mGW1Xly%GVno݇?sZ8`Ma/[ 5Hm-wG.5,>)]A7\IL.1F&Ci PGx|c D1F &{2b,ot i7 M[8Eim0}+  e0{ܘڞ(Ħg98 {H}7ȏc>MX ĪH5j@֍m'1XYZJ >s dՕqh%3;d"-4P2gI*:Ud' t VscD+b7\9,۝p+UYOh=Q_ ŠZLm#gj^ ,Bͤ!eԭ2uLXySWyd(ͻ^ZesȒϊE20NR{"[S*49fS/?lh|*kTtU %2ݘc|@?)hyg0SNY{hJ նk%R6)DP>ẕѓOt^h݂8V60Q)K_=rofĢ$HE4Rh,jJ#2q"ol:9;ML-K ʖp=*\UŘjS$ $+:۹oK/x I2ʮ;w\KCpq<_5 }S@Ml9>C }צO:EfWXHL YMP#JQC/P$EB_ Q1I:2'Tfʂ8X:G6cI͒#FCfZ,xUdho&?QޟN1*$IK*Ak"ggWT-P) "J?蔡䩦"aU6<|[z)HOrLY#N(y"Y1ŃO@h~E"Rpy]&ܛβ- кU R;KWIW磻>>94Bb 'S~H(!dyocmBPOD^Z86 ^H6{BɈ+5pQ:7+m4{ :GM kNҮCJ]Tu5;O[i֧w wBA/ɴW!lbQ,G|ꍩ1ʱv+c`Βnz=d)&\ďč!]i8O/6/Wg4JA;!hѩA?Iûzy~Dg=c 7BQzSK۹x vA|9 "32ŝ8*z=\}fCuoy:1RRR̷b<ܩI^`b5$샒!a5USJԬEWJa)M:!ۤ,~G6QPEhgG\UKF@)M;P*zX 4pqDQ toE@ 1`JCU~7Lf}2~儇2X{Vjr:F#R -Qcȅ)sT9 RV<ΉD괣vDՂk!4giG12>|;~SiHE1HG?qܢ, Y{)4lMC;̋`y* egDj!3GϜ#+'R`gׇ7WIBĿ6ܮ2d?* y-E@YW% )Sq@EZH|Jp%xs7n5oS#l8 uIA "nٶ2 J[ϫudKnYq)A q9ym W%Q8HI_=H"UlM J'zjIϡ6&غ3<W#|: w Eأ0DT_+ C8y|z:^[!pdW>ӓc,ҋE' #%2mSզ@e8eQ9Ri"M[ 0DX`i7HΚ|=P%.l;`%I'9_3kS@X8kgl aGl2w>JL$U Qmi}( Fk*bXrܒLxuoݔO Pgj^41r_d - 3qj)"ϸ ɉ*ɣo\Ja wwrbY%CUt^c.=NhEB,1]e[ݝfw#20~@︩O6 DRq+0ݹ_1\>b:Q|T\* AsEse ރH۰h0IJS>01"TP:g8t07J_S )MuͪÉGg 'ZRw-&̡z4|".Skb!?v- #5.Z+dԙx18=. =d$0?L7J N>qÊFγ&ݰiJ%,<d . !V3PԬK.N\>%ЎUکQ K/蝏7A8 Pm6b)ngJ7CK;#!F\LU 6]U~Rrt͢P}H>A[{֠J`sMōNm!9eJ. QE*ȭvAyJ*oyZHGd"He/ox<,Jn0 UUkDJv@_L:"0m|@[7o妴|pJ;+cF8KCZKFƴ]L4>=TQʠV:WkױܽdU6l@;@mqԮC~iNxi5zF:gδ[svaA_O~Hztga'HۿFLhAW%" S80^T⅑􉠼@2,E`q.Af{CC砓:rKG,W3Iǧ>Kxo} 9'buɦs!uĜ^+*GNCK7 ߺLuR{>}3pǿEk2HH.ַL%z$L9c2F 9Cܼ ՋA?wW֎MUO2oAiP`J^pH|%h#(fӕNhҐڡҵ{͋N)e.f =Qc2c8NBVAGRQ؈se\5tT%L>+LT2YY5pWh)8Tp=OAv#T٘h}t`rO7K{{oz4N. 1rZ_=4Wqu"5MĂgYZ7d u8-c5'ѥߥ5@P;''gUћ-arNʽ]R+|o7tY{&~,Od8$b0TPHȈ;/~ou=wU9_3!vQZR㐈KccwS9p].U;S KʠVE^5MTÞXXOSx$K0vTgpJGrj[Kipk2Jw9fVgZyݵof`l2~[3(DZۧ\N @Re!ʩ̊YPFV>{dAtFuDgܾ*Y;{eשls+ሂS1>0| 'trPڞ40laT@񼢫*~dj8 Ǟ[T b[>h#`"P'M6Vp&{A%Yv-'tc_,ٝrps.x )\×0D)g#;~rR oapGYZyQq@c†IV[`Pa]m̂bx0IfI=}n ,]/WB^R(T)= ̿}*8t(+v~(Ika ]ȷUaV=FO9vu:o3,T0 SrSWjx^}Qt6JnIer!.{z4N75jzK%vW]d{Uvˎ 8n'cp>rߙY/{|<,X>Sr;W5Vp윷x'ŋFmڛж D/ -JTWJ6Nte:ԇf̲|P UdNW7Z&)6j_ҕ-۞U#]'+i?&ehO3@n5/Y4ᨽy5Y ~;c.Z+RnF PxdM ;8 أW+qQw}@1% ;PbI8 S#mFZTFxˋHaEԞhZpt28P, e'>^Ekr'yMg"#,0OJr'=oC;X o 玿0i$# a$ci/7߉Y :"s{z_$NfBĀM M ZӶר ܎; V"iT%;ܢvTI3R]ىuFIOG/{gw!I IYSzE"DUzvs v4Tm;j/cYXR })xIP`ڵ ktyz(yw#CPgs*,_^&!{ry)f gJa:}6G6bybS^^xGgW}qlyǡSE,Î_GMNdbq{7ٿ5Z>TS)Fp]kRsILy~wXۭ@Fi< t.Txʩ6uQ1@=XD/ D9 \E-8y/~ @1 5K<#|l5{ߞrb#$x$v Y]K)3O({mo\0H)ʯبUҤsQOa;)kEeNW,1&NR|4u;!K&3D2 %m?q)V3:UaB4iwԤ^#xIe*ICLdc L[ (4w1F FGĚeV.ن-J nlhf$ UR$TKkNPH$~؇Q0L OFIVuht%sd |iG;n n072SG¼~a\` &|ҊÇ!Ę߼ks.9'bU!ETN4X }aq?VH)12!;XԟjJhJnH2LXM`XL轲&Ji;r(XϿ>V%Osr%Cm7]q2q]oͽl.\Q/(a1BǎDXLZbg+ ߏh1*@lmN0/EiT.y<(_JvsC/MQ:pVb5WVE9)kI??m` __DEl/Y2[y:wP̪JP$ʔX'h_] jG JrWbb'93$9u.f ;t):0M u')?KYg}悞$9G`-϶yq3+fe=ʓހv-_8KsX`wԼ0Ň3K IߌbZP؍[O$e N.E,;W-}Ǒ:mĐG 4*Niˌ!fjohH pnRC-*swˑnys/ٞ ":nQEN>z^KlŃ1bPJb`BgN;tŠ2j°5* 1~ǞK[&!y;\3y*OyfX+:=A((U c]$ G_7 JyT-3U Ebf uT\ *T; Fĝ[|6_ctU]$Xm|C97TW(h6}) TN[I0q0 O5rPWVNXӻ!3aUX;ߪy,ADJtJLEU=ċr1@d I*L1".B֦q{%=([pSqv*XK22e}ĝͧ˲0ۣ;]~~JY#व)P¿ٴcV -{}^@]A6PTO Q =cZrgC9$KF,@ <?qĽj^mGh9 FfWfF.mK 4 e4:I '!!}Z0d ACn8VHfYdtI^Su0V<.N9Ėu50ƍ2~hR~~6S-*kQB^曠@\bkZh5炀 PZu?hi9Nfu Ҳ⚔uۋ=`4#?ҋ'+ +FOEݯyPNqas{þ.|D9]rdBәnD \V O)8 HJk& Zf3x<b!i{:IFӑ\*"&̇)$:Q}h&iXgw_Z͇k'hJJĉԜȗ8$r9ݘû4j<=4u ]Vx?AR@w(]u ?9DQV c&ku~F[2g9 c6 ȒRq >bDϵ6=xuUp齪Yb}7} l (i1z'IJ]^&+K Z& y^Jf y_rK,G54%`X&v lLuY~xI!ǘ;:@2  .{-/" ^ җťƌiWΗ@<IR)Et뭤Er~CQN.ȷkW JD൮ fc^]sIe㩏E fXE0UW"p+o3'S y=N YYJ sAS!3R"~7Q ]ͶYcH/Z krYw%LY}y=y|휂O[|Td/ c5=".:{cf z-hԆ]YJ:"Rmpy)nj+KPNu&;ј"D$ T~\$Dj;1G/ nYm+솲p8!>4/3/ޤ`)۫`<IV؀p&lpiPS40$7SW2))!ZNWg~:"tr~̈&bMZx!I4l F;&9a?}Íޠb"Ym_b;=R2q<,1FzξF·iՆ&ոTpKݿY5x b()o&g4->!3 2laI]λ=rY&N`"ym0ep7ce3kИ;^MZ!j924NreUIU}HQG~@Z&㶌Z*@8H<=FTڝ=kQy~U$[h=,u'|-PoN7۝PҌEgl?:٫ySxPPr,)Iǘ;*cWv=ɿnR6$G!$џ [#mgJ:5\gz ^\xU=,ft|F͐a2bR(%xV.ٯx@\EGRH<<Ϩ6c]E2El?(4銊}gbKF4kZ20Ϭt~ʩy> EtUQsWc0_dF"_dSPϔ%qͥC8ͬnWF|C8iS!Y~ސߖی$KhxK3/TV}q'8c$vrN!^4t U8YJcgoΎVo])@򖹝X vXir}R;LЭRGނ,_8H:U Q`/pi@~%Szݪi^H$G]#1zi ~(F:,ێR^Z+K^4n~ZI݇1+˳=^1ҤtڰT,,x)>s j~cψu%uwPRK0&~ :.39zEbbK8&M*K 8CZ.1!F^ou-LX+ʙ-4^]/OtJv=4؞]e)E:V6xWiK^/m0kMi5XK*zeG: dJ7B"Sux$̵,r!kwʲOq$@f1m-VEi-l-dQo+,= Tz;SX}yE'ï#VVIqjwWm来w3gw L+enD)[N^<1F1i 4|K_ ?2,Z*FkI_$'/9;\>丵soEmo=LΒ_EV~ i39pπˊ큏R-z/Af>"T:9<1]?yLĘXlyL,x+W6h?6?ݭ޲R* fioͻ̉\VJ" 8nY5AUC)ш4hxՖjeL-mR&!zyD+z]`kn+d+7(rUxH0bz\,(Q6OMTѥEe ,C>btw]~zމ͔MJqX"ǰgQ/ اx%`p\W{ঌj;+΀_8HZEyeqZG -+U_I&>y gs^V^ Lo{66`Uݳ Hܣ|MϜ~@_qCUKw/4-MG>ީXR, 2}x?!i/8d䆶u/c#\"6J:-0P:|Kܵ9OOJ+[UA= &6`IفH=v:0"1ɝ4,^UZrj%{YP$=%XOWb^T#oHoypժҭ-F=OwX{L N@wO=#>Ƽ@}Т{8ЁNiz yHpFfzx*gf]=(%q7ծʋ*%9]ܳL/3Rī :jmXE7Gc *)dfFs݅PبU{W=mS (AZ7/q%DkAݴw8:':u$({& 7w!}_ P=a I'K7RS{JﻬglOdưD\@pk;=׿9S,EUdBxG2}?FlC*p8YjⳠo.dww`UZ?>˘'%](+L[P =q:mc쉝֎mH[\EO&DCcD +e~,r *pl-T7 ,3MTD\mEw ԨRM:4';e$nƠ]o<蕸Emr|+`uS `7F#, sYRQCrH3"ɀd= `g{tQ#p~|y`dT' jX~XqJƔ}>%PZ$W!eQмiɂ+ƭMטު)VJK^nmerZLSU]>rpN 4:9͵3N=O(~О74=ل^@'mLWQB-*j^]| 41UGYUz쪬\+'=W"X ^9j)9*#CbUqK쏬z(n]U>E4&̫QG ŬHރ"ɔǜ8.YauY"X@9mvQ ͷzZq[Yx$dN\uzW*q.רDƈ\zjBdR,)YA e__o]!? ĔYK%mq&_y9~D_FϪ. btÒpB:>] DPOSVG@ EZQBm󖍘ɠ@4VS.s֞KJDf-֒/^(a FQVhxhf#COepSZboց)K5TrCx>'b:@`E%XB6MY(EIvc ܩiLHdu/їx-tr('ϑrWwoz:YC9<1DRjl|ېn,_0&j*/#֯ UM쭎,LE ̧٭w_l:;ZhW1B`aVxbfīt P\/e6sTxl9[K[VA-{7,wz4c]% u^59&?ͧ.i='BG}5X-v_/;ȉKdeI2- ӺhF.DҢ'h20\#dBk cyg 3Bg99*GtSHgjA4[u<c^fuAA?Bn\I"|󋁅IMssm\sT 'x_)V!U>;eBeG3G|_uh4wB+LQ뛋txL*x$4|Y]5Dژ2fc8F|,wnd%QmMCrE1%Ic*5 ۔}:1F)ϖs_.6e@ Y?o,vo#?!N9)N9*W+}uX>e(wB35J:BoP,.Sr2-IٰO?S,Æ v߿3ҼYCR_Țh۶>OcgUXUnWD֬/. Rm~?"GAlr5P;iz.Wr,4D>zxc&`+0TgV\@}$dbl%w8cڳ?M>fpzlxwwՋS]G ;÷H_CMeZ 6g~s}sas/8C|MyXA;Y\˫XA M Z~]$us{9f;?SHo63ItJCm߼^y^kRKk 2t'HeN'"hP*S,Rk djv{~ݝ"LvS(J."ޠ9DW|Z(I!fr,/JbIOt.GEc)YYdCk蟍`7XicsE;ΜP;IkBR1xmZ;ϵn66$Ӯ7JT 4B'{l2ή]f(2+0n3`'E<1醾#.~5i{")hG q/Z* ľ[h?[Ș-mAe RdvFbi*+LA7m~/I/fdɸE,0ޘWR xƼ5mE/p3-,Q-@v+']l"{=f?RʀEq7Uu2NjU{Oͩ55 +s;;Qvڜ).EWQM"WK{f~(@J-3F\D"~Ea;Z +U4Z ܗb-Jhw{Vm0]UmjF?(8ЁzɇJ H~a <7Ġ/%ECjw7IU[pX]cQLue] "u? @VF)R$Y^NǪ9N4~.rma}U/p߈@DГQmb-O%D %~$h:kr"b|vqͽ]N*QxP,=s9W-NXVt[.@6rtd)k={\Yr%\Xt2<է״_<ԁt83;: 0r$s.]ӾՎn0'E!8wv[w,C}KT ^{^f];o-\a{zۏMbD=Lbݚ`V﹤A^ r :(/A `=i-=3kG iIzVo +ݦY~ʝu+49rRw-~=X+Dɧ0cwa킠.i u$÷)e"i4~'YW_d|7_ħPNEa|\3Ű~l?0{Pob GyJq uc9Q05:L hP {7pt_NW-kE^Ac2|T ]M= n<`s2ߌ!>.ZOuST3ژ)׫,wkg+P Zh~`&kCܠ4IG2Fz<=[I3$BRkg HcG;ǞtGR6q: 緎*'Dӥ"x7Qޞ*68nXx7?ȣ[U&Kdmz4)&b&w'ɿ@Y!%A2g9bO-ŀ.}l4OC(yT9l%ˆk#&'|ժ. p"Ӷ<쌵Ğ2']|R|S@qL.n G&lU2,T:b7D>$ˮB5v~LT]V_dpP榳4: ~aa=xA ~JDRGWT>"4r :rṟ˲ ;HY 7QԘVmg-s!vHJ]Aɬsc9y4<`)>UM ~ F̯w <煦Ïi:t`z-aŽPف M}\8eWOuwUNlWAY= bfQ[% lgI.q<E.Fxuv k !rLJ܄9Za8懼O) b`35E @)DD@?TrYX^^엓4lML~`,e|7osD({Z"JyWG:(uG0{R$S/..?SBwܖc"ҡ;ԩe(Yw^)^&vҩΞ7\2]_>mTf6 Q+p}τ±i'L[4[Æyl u%Ӏhy 7]O˞w"as"Ĵ6fr# XsSzDx"ؓ+hjk\!yd<2P`Q~MZ`yxָrNw.M/8P_+85CrH)Xb;.~R?ܢIBCp o7D:D⊟+ &槇^Hu傣mZ//,/b*7ժ]Ikq,D|leqNo+ b g*#W_b (KqF^[e .tz6qHn:9 Tb\Qvקw5Xk.KoDb=!+,Djq9t0ɡ756fƦێGPWYo=t]E_3tq. 2L<4{ɘ Ogà ̟#Y\uSp'DV\"-$ 3҆Ec< loܪ+eQ f_H@e\i>^{w)n@&حp2r \ٜXXY~ԃ-[}˹~d-b7 Kc̲g#HDAfKTZ=VЂwe.k7\Zڞ@`$uȌC@ČufFn }]էOSwg1U-2sf :nC¾ƨ]⛷F.&7>-p,1կ^9bV>VI "G@>e#beNΝ(Gڶp2al%0%hJ<>2QV_ǽ$R3̓h}.9#\6h0T;(bE:-f#6/²%6~5lXBܵ6HzڣIZ#YkζObFf/m5(G*W,2pdB#ՂAXdu 2VAO$#%4&{!q9˵Hi/dVKucc kڤ5Ba_PZ]Dj^&]_͢eUP]fy9ARv;eL[99 :D##cߵ42FL48AZ4")tō2g%x,''i*(%MI_ȇ b VC:`S:h>Pqsm`rB#o< `ZZQu|\8j`EI&$:IIܗ]a@X,⸏l)=5Mg;xyy$[ņ#t-3)@ j Ǘ#ڪv9=l8ʩhE^х2*?O>-Q@;RWK6Wcǜ(S)} 322i8Iм$0Am*}$.?HOG,nY/[!p/`C]Nak^87d4o~wCj E ,+E1פ!ј#-0(+LV+}a&".^.%datiX$|p'\J7<,gh@ !mNGd,*t'^ξ-f M/̕\QzWu,\i8q ym뛷#2ri+Ijgo-d,3Z%6TSބdN7&ؽi$u}m`flH)\&9+ c r~aAc4Sz~ͬq6L U1@mԓ˪@M!_DZ:t}EAggP%;\c^ew4i/oy<˩eRhz]o"Y c+M?l?D_t;< M@=D/DIfB3 џ̹GcXƋ-v>婇^L$h?mb쯢RN9ZK|dF?H} U>A t7RRcfCD r\g.Q4Cg׋D `~;|C6i@U $;FG'h^"U6}y؞3꩝yl9`n qz} s`y@/]c@ M ]#2cm-׷M.- r@`N3#r8)z+{Z m̙fu!}a߷֥\'aP1OLm*,'aWuwF ,U]95FDݹ._dHWnЬrb*xt^ Pͅ6Z1Ke+DBQ /QC/βںk ugq猨wviMQ~ɵW;DVc2mR|vyax[jJu+9OLgᛚ~Þ4b%5z+Ĕuo^DW9~ώz%(: hDGaH-S5ʟOPnВ!8JZ`Ӂw&2XlBmo=V4]G.MW|pM*f[}Sw[NOt댵1D^#l[tC4+ IV<,yң\[.79zEME$7tz Č-Po3CVc(hA OsnOL h;C8Bd*X(˱>ìg9:N*1D8nQky^p{zwt0kg#gD\]ʴ6DgDfPv2%(xi.~lD-mIۉVuU q,~R*_9 .cQ'SL_1E` fmB׼c·Z_#,CR c_2M1Mҍ2\~M]YŬd 9M(z[ 5qz\lw{C"86?G]9k6btW>km_W6;M+LrC\?{(cibK6f\8b?hR!ONFqJ}GsŒ}hwl.gug;!-]ٱ Aِ%d@PeǮ0jRɜzh?~38+jpG'mR][0:IŠ@Mix=BZT6Qe j];EAO(d2A_KkHn<%8OԱP(*JOz;pOoУ:CRY^)"'MmuCsx`>RSNjfio٧AӺ15}I.n:mp1_?镢%cìzJ@gwnh WnaA|&ޢ|9Rn_%Pba^PθLJ[VLFIyX-nf;k1bv&Ƶ>>saۨ% :FjC9Aʫ{ A}jOW g 5~F6XeWcԕN'Kq[X#qVa<= 7`g^aYka0)n aXp ^|w t.Q0G5`gsR-jtLLc#hL]?.zBepᕕL8hD66 eÈlH`|-xC`m9f ra#BDtdV.SU'`px 2'n0M"R\ɍ$,^>HXfʮoH5M{vx i\tGc*9?NJC8H*rl6X<yq?jMY -yZ5{%x.Pc]iQf[Y=Jzses8y/p`eeTZa&N㡩q]}?#yQו}&\S[F]"+#)Φvq.*HCy)iL+,;Dzx%$?oc3#G(m> ҴPezfJ'˜go]Ғ).B̽k]cў=:*hHkJ[tW/k[ {zt[yxMS5˛v𣛁Q,ZU 8+3uHVIl#|E 34.;c 4w~GrD YF>4@c%5X @ g76Rf]tIhI>, P#AIqhH0'ѓ_z]URxC!B[t}<;߉?g`0̨dթKU [<'vZ DMGȎ R"{%=&i3^B 9 '6T:,){ _ ܀D[\2>3Y H*g ſS 7mBW`=&؆ H0>n~My0v/U{p0%yydի{U|k\ַH~ń9;*0N.;z_~ uDqs  .0gUǁDr8Z";T6 ,5 B#=lK7CJs;qEզ2ow(.+G/"0arrWm6l3;0ȅ| \[?en &="oTk'z֥{*Q$ -ā:x|i<\vTHNgP~Ғ -W ~Ŀ(DEWohN;eL2#a{$И.PJ~RN"! ⦜Q'Y,#Ԓ>2h @.Cevo8*s2m;&c}*fh"t-}gIhل^J0Ĵ2PvX3=8jSfjSd5xE! <ǎ!c9;\%J~b@^/1t%!4JHqWws)Ib0CÞ]U9# 73rǗfBN򎷑sqH”.L9«<isWjNd%\ 55\7i{0ЃC%.+"u?ƈV3-Q8ҙRF3:Ÿnvp1(]Jű~{9ff-l|\C Eqƚ;#0fm.z(!Fuk9EG;S2zS.;0,v6 ŀAԅL5jbݴL6ͺYKr"8뷖Y9S.3 쩳ÎRVK-8nhdY#1'Ph[yEǹlBg[)ekb^>)UM0g[!v&|W?69id8NT!?B!.xe]3&wf>ȰԔwqpJM M{#Qt8J_Qbb.()hJ$`J\!GwM;[g58hL,]U'D jމ|7hx³+]en6AwYE-$e#BYny]gjk~Qz6C1 %3Z(b1TxoWy!UzH``De(U"7H؂71FnӍ^":ȐZ?< K"9\6v "H/&\@' 1xJӎDZޘZm-?Gic;gL]vЕ^M(4ۅ␛^E2 7a LjA<^JD&jшZ2'5 [r;([Xop!_+ r>J8sZֺj!\4U3Ϳ:Po2/Æg먍uBO%椳VYapyUipW%Qv3Cl,WL^AgnI$ҝ1"$ % DZiZ6XdK|2(ѥ õY4j..2w\Z1ї-7Iesk^]G21"[saƄFܱ&S c4 U&Z!]m'5~zEk㑃ZP>J1tn/TRo)U)˻ޯˆ *"-inAxF$xd%%a&xBR3!%L" Q4HfHVT)VJcn|n|S1(i =TQaL^]7W0͇A#eP臃4 eL[v`]^$鉃ܜ>(\_ AۅELLuK(3$v RZw/{wH<{3EYGNei55lؿ}ntcTIpIԚk ~-pD,掦PP&*DnU Ʀ^ T:B~VPpWq2 +Kp*fW.V&(|rxC-A=.w+} :D`f9 TFqዖ!Jn$l Ʃ aΙe4`wQYED³`> (25Y-*N3@͒+t~+DZs3vr0U$&('V9_J$iG3 Z&=%$DHjQjTSOCY?O4)-vŹoyc(%1`1F~0[_GUq ',HACp<| 0@!%eٯ|UϘ_ڼbV0C )l OͯLNmyMD+z:ncIi΂?>TR+= -SQAQ0t~{zD+E]0+ dJ1eaXO/uSG 6̘GmLǶOM%@džvbJ=(R?qZ-N9w > }fwl2M&fC'3ZgQG!a?ЩsaVÙήeS[2Զ2;Y@j9N2$PlCcoRUX$3إ0U^xǗOB|Pns2w$ LcJ>E O` ;An4YqE) L  ɩՠ!XO^(z>f%+z72iOx}If? ݞȫE=253k& VֹMgenª:G9>~6C:As>BP4l\Cޱϩi֯Mfi.ҮamnJ&8ԯvWP>m nIm/ @;:nqM][f"OB |b';lic*Bq-Lͧ-f<ߌ%ɓwk$k_⮼,~$oNW9qV0GF^cS8.Lʨ/Ukdb[Ni>Geܗ$+ɖ] b/왱>` /e2M !|%=)%b<T> m;HvءNͭ[7/2N\I>^$3ϣ>/} gT_kg6&|.ȕ轝*X <}͇!DU&\v3h7&=1pvi'{wahu* 8\~-\(tڥtCd)ow&ys1dO2cP"Q|5> OӁ`dV;^<0{8@&l%xO3P .KxoZD nF_srKk 3* ? v ?h<(~NY"aRZ :.E_ ;d0.e}]i5{ x6|yOqU9hj\oy p'p !<& #p8WqBg_[i?U^xk4Ì+2FQlU_#X{q}phPhao iwRj4qn] &~JN+G~6X"VjC럶|Ešy*m¯9eKbώG͓ k c"dϰDW~7+Pz7Hm~PkHT:A̙)Uw@`fdz 6ŗYz䜠4MBkO y1 D}`i]v}K@^{^ :ꇶoJ.pԟ#._srn!#pT$;>sG4b^ڿRs4 D;I3LV< ?푪D TD04o{5Ƭ/mmwTN> DTʆa+aN܄1[$@k"ޔg #'j&siV4 lRsT֓^k}eBp̄6pcX0NFva}T+<kC}Z\AܣP"nsӼZB0J&in+sF IxGؤwIشXdڵu3MW68i0f' X1N[7`J 4h@ :7'-te>v̌L<MxF2Qb"[~NyBRkbE*qwU#"T&fZA KTbBk 4L4 P׵2soUD]h1^')FvgЫBwmjn[L]yZ<`]5KO`76eFD;pl *' s_>㑪MC~i!(vG:ШV(+3tAC,iГ!Cq'Q-VѶCQPQ7@6tJ5Nh !30a}ZLU\j*:ay{g>x\>tnN (Yt-1T=t&(ڏ,i6yeP/ zsBn!\)E ! {w/S}{9;)Io>^mJK2'g,rIINX `RxQ@yoS>=h39!{C+i]V%+˝Xbep :TDNrQMCtdZ}B#Z̨HDn)@i@٪vb zK/$-e%f f=-5Zh'iCoh'#*d9  aGhZ =ԤPtFI@2Mzy@+0B< ҧBv+r^Iif=ɏOc^7Ӓ{ |3l>Z-%/L_ȧrP lLwBS>j-zid} I%z;@0:|!i|TFmV;`|X%!/ bm8 ߇-k 'GڜC]ÿ d|;tgRx X6jةh,;kqll{;(B`g.^}rKK^fZYbwlf*%4Q1a h"?Ew<#څ,C gEsss^T.MRhUH-aH-!wQr??^6ZZr^ ><4c#x&F/[Ge_-34P-Vx+tEّ{%2und7p=sUqEwZU/yY=-uPx\U@4<bwH>E#Ȋ_] =>8.AK=M5>yEVwp{jF>!Lq띎(KI C pF{v6= 's9&vR'g_8_mIۡE.D2R<)8!An-JBp oYIu:u^ օ|1f{7LҠ cקP|z'iY؂&FH=JGE41S uxJ]iK pEȞJq*HG5v\.J5dw)М'Ѭשзnn. NY!P@D*ЏCgPhcGxau{4Y?aC7W|r:.jKK0b ؿ5{>=\/{:<edr obBLSY8HI#oPcI0-8ZY|&'3:UBX)eqLFE .*vlșLQdfڳtb_iWLE[c 7R%S@v 9IZg'wAz /XD]jd;f+,u1yry(~Y}CWYyg$? 4%r{(&4mذmչ@?C9B\4ޒET%ӳ5F$F6Y؜́N} jpQrQѬ&l$?|&ҋ/^>(bIxnt?^ 7dmBz&z}7!t ^-^~֧s2Sku0C-:F6"`1ⱋAkE! MWaٜ0 yjݘhX4:A/+d־2yT>R&r_uKL5 '-w;qi"mcZ6(MQr-e*I55cbD&67EpPm.BY0&{YzD?[l#m(I.@#\f40 ;‰="L)@]<Ѽ䪩tlb0:Ǒd-9so]T,};r7NvQ'oH<6R 0l#P{{3`vsT?P=0V;w2ѳ .PJ;I"+uC{'M`NtOh*˼GϨğ؉,'ěV]l; LF]EIO3?s׹zdq pŏhhɯb)zi؅:@OEuTJ f(bŠ-bKet ⢷Ǿ>."4?{U[0!,[id@^*;EV̨dI!E@2S>d$e?/݊2 wRIrfTj[o-ЗfĠ2NJQP787 Hs^*yfmWQvA |\ɑe:Ihr*/:GU:Ei sF䱞vEcL6|04gsWx](sȢ "ǎǯd4ц r q1pge6UN!. PuEg42qDt|PdI;jLC%yG3vh)_wXsh>§Rvp 駜d7u >^M+J$oPr@n`:ۢf}5bjjˆh0d"%D^vSf$*Ȝ}2QtA{^Y20>~;nBƻdxr0r% KLd]]oN$ zc8vJU5̸`#>KQ1w2NfK+wmI'.JNEU>^qbOe 4ToAg pmUh7]EMaM䔠8!N΃tHAҧFL ܊EwnnT7ah+r2;g]#+cۭ%as"$cD_A& J*'3V&Jw IYQe .בi'3*4Th>1le+7Z2 lK+76nF qGIIl'hNb؟Fc\Qot&h$O-ޙU S y_{2˩+ !P kR:WP`Y?WV[TyΡEAkS%>M)hOX{W luC&X4 |⼌vRy K[>AE첛8-Wzb39r9G/Xr>Fi[X Z&U8X[Ce|OHI9oM0aL.DduWB3PC![[z0p)h]E?㏱K")/T<-z1Hdi+RVNEfUe?y韯TKz ='Zq/*0*dL6Erm_,z }t3Nxv_T;{s!B"ڹ 7zn-ҫCa0_dOO`!_(._pW{Aa:tXVCʙe=0rEs'eјoˢ _s5kW1+|h &m-McةSJdBJxf% o&/3 4?jB%/$'oEI >ަx\rCCxu^VA.=W}=s(x8es4w&۔_ yT(F5q͓iێ;dO xVblK)|v^r GntuF`bL6!yrSsڎ>P[ۃd}Kj׺ W` M)mH].pG4Hv.-(nBoùgB-%wN =}KAj)ƶAj).|6Jܳ*fdTa+@[S+|f}.oW}dzA宻Mƍxg0h?<xiAwoqeA=)Cp(SU;0L5 8:ړ!oWW.:O)HXģ } HK7G,mc_1Sh0gAz(|%jwކ f&nG]7!SFnk_Z. ?Kn}9K7Nv.?WMrR5 j~c jEf-B̀HzW:=(3L\ CjGMU8zV,ruW"F& 9O(ԯB0U<. EECbMu\ EDM-7HXJ]A8e߾^a(cUȶժaL6,aucl2Ql 9\ȺVq"?y*5AX}$^KK9|ϴ$,|`Ҁ>L3^hbo4 2ٹb$TqI9wڝ$uK)9:Kv<` =pC)щz*ք(pLq ylfzO{A4 U䳕/LRpsz D9y8H5coA.S*5v.siYe(vBexBlsmo BD_C4+ Lzc"OAtDzB4@)5(fRkg:ыQGV WWXJȌDϘ^Mx>r ֐WC 8Bo:үmS NpRC3S FcP-C4ۂkho>{\ %oJ %-[UZ/P ҭ:N{t n/ Geq w22W Q7_:3"ۡKȻO%hoZ@>AtNG3È@ Hר+ D| %Zzõpw.ZfS@/8ʳu.%6`ۗDq[v;}$S0adUϑHKM&-a0egtܕ * 3tm^k gwWYȮtpY~NBOQhK/'L |`/OjͰ$Yk'_Eڲ!Oœ@:τ_TLg8Lۮ{5?N'yby{,d =698oɄe&$irιAVV\PgsI3x?376O";aQ2m$d}f"^ťEd)ӫc*hYJcEeʖλ ?Ieƪ)nPLڐ,b0kc buOM@R)z*=S*Zh\o%.t;0Zgd.ŏa-W,"atZUDwQQ ī{Sގ0ew'gT hE/=SSO'o[5pdEꩶWqy-̏+MpeuM4GFrmrq^1qAAHEBe8RV]2f$Q*kݽ!ڟX ]l 6[mi=dMA2[[l+9 uax‰DȊm*& 4}]ý zb!Li_m거ZyC)E"M*lXHr3}wHJzeuVl){. \k1ݻL mpE9iArvb`ZS8Ogjf"SO ڟJֺ>h9񄂋@}moQhB evg$rY;.=Qq^TWwaI+g艵&PAh$"灆"֞D`l$>FĩmcNrBMXTf!)@k@n=G'hqp Jnt.snp܀uX]((EL (,ΐgf k|rA& lQqW %[8B;] t׾`(m%ƏVph@FSp FUzSW*X1p*~A9%Ŷvn^OgΚ#$uG¨K֐E1?߄"o?+|2=VR k`] >t5q56\yp_W=XIu3ȧտN4vhDBQrmpc%+.;yg6RJ ^HV*_X Wعs~{-CbQmxn{LqM,95>mrN0n_pún˾vmз u܅\P )sePO.`lZwQ^|e}7L8iPM? ﳇׯ1epz( C[d-uTaX%$mP\ 2NX@W=CjowC-ůɆ4\C^j%ބCax~:t*2P-1Nu ˾@rC@ 0_z+OB>MI?SFhGej_ k)R|rHhdPhІRP!0+"xJ0f6Օ9W( %|K49!S1igحb{ʺ 9%# "|tfIX3x(Wu_bl,ܺ}xJ;; j=̬9Y)c.B/gfǤ:|a( CCzo=HIu^iPr15N=Z%ٟ3hc>g !-u B~Amm#ח#N^Tnγ*ҪtCvH{q3 ެsPz@#퀔=?h.M7fv=/3wx- <%V IlI$6;g9Q~sOŲ9Lȟ[䔊|) d:I4]X<-B~GU(_ _P  ײA4ZŚ-^j@“MZ4}pcnK^{=Gf%`"F2Ghc/r[vTm12{WkBQ]tnaH!\2t>qDLsbVs~@st`y)?`L6{>)y? =o^e+d&=Zg\{r1ݩS 7b]SBD8vXJ[@B6a ĆAE/zq{lg^5U`{y B[2ej&|(0PhM: ; R ^R\i?}If M96ȵU9u=߿W /ۑT|Bv3}sK$@y4T =MӃ Xσ+^{>rLw=p DW_L/2AT;H%߿p) H+Vmjip|t+QJ7酃/#^ͽF;%^ɢ՜4-.!,d˱ Z̾i;P:a<(x},NOKn3}΍ZT+B=4Z`%Qô|+.vlLD$tr0]| ZyRؠ|m<`U%pacLdu&6@\jgSQnD0u^cy(Lc"#I&F}t.LA wrL7NW@#V=#ȕ(I'N Yjeʬr1Q]^o Z0EzCAwN¼<^y?&S-tYHYb ڳ6#,qdT/\X0hlF}$x4&U0;/%4Xe[."_Od;G n Mȟ [5}Yǡ`)[y!7+$]0Xr "gۅ[ 2ʏjh3jbi{lpɒҍ72| V/8dy8,O⋗ P-lLu ]jr*\}-HMB1sfƌyUc1%CYvjЪǑXLr@gW>Q_.NnyCJ;k곜!3ʕ!f;Mvq6C^5ү6;e00o{I#*ۓ8Џ'_(~.Wۡ:Kخm<25k"kg-yJ<\%lͺ %]P[հ!+&,:P):^2ǐg}e3$%KoIAsIpI͘31 Ԯ/ۥ!}뉓gƃ-;^.ѻ$%|.G3>{6&嬆E|B_or0OE=HcN/:dP}" ?*FAW;( GA>4#G&+vc9Y2qCoXXE)Y^:q- &3lH&hBNDѬuaCtBzLd:xbHx|xւOr U:Y|fبS`g nTTo&ʹ8b-b>'A:.77qɔ];yy UOwYv% W&M*u``|N']ټyLOU鎊0{sƠE1#W_Q6%; [OIJcJ@gXp@e~:3JBYVx*Xk4M9=:58 CvNV^I"; 9:IjaFys(wJdi`vS^8̳=)'?KpֺM6M!lB(R?g+ { ;7- 4E4g3X ZF1^?(IzJvdH#G14yg .u:եۯZ`C8iZKU"y=AȤPFCrqkі!AYz~=0wwQ%@績y4vXì^sS8O{멷E]Ѵ`4< _aF$9ό~T>Fk0iX~QѱHʶ0n{}S*tߩMr ^;v⟯.ۓwAh*>0⌤(m+?v ˅E KVukz)sHYo*6,}A kf*{/ ?626SHW <+S@ 0Q{/^5'pvW5UԃUpsB\L{Yc?Fz>^%2-OHa;3}Jdm#eo~}Adn?η*3: ՌTZ%3_^i!D'tK>o>W|e,Q"rAةbL`|XcGR>q3F0H!᷂|ζ=Ms=N2yZ)He0 /9NOՆ]%Qt y"Q c:Y pp*>д𙘶Ch|{m3q3 :=[kr9

#_"!hjn<8 &=J8YtAfӴ:,/X5TF9~ݬSwOMVne +84Wi¤0T7^'lrF7d#;Ҳ8]2~*XUt!Gr]nJЃ}fM!ly|pfj?"< M AmĬ/Z\( 4uE-oc5PV0Tc:\u;7/>5>r|. :&Ciʥ%oֆQ H P#.":&f9Gh&t#_JiӐYHs4-jAm =)偶 .ݎoPy&͙,紹B̦4fa`Q$f}E@{7SJ^"P勇nnjo-~%'`Ԛ!Dݛ lTfuJݯlL7@n#d27N0q}E|%wcZCg"pSNV3yXYLj+Z2zUkWW;^DR&&g #E4h%bpo3S?c$`|-؉n{ΓcAKkG\Jp@{r;Z㼳rRKPP)~ LyKRoי/TW8w<r&)p0Q_\ -7btT؆KC{g'1 $<D/ ⑉2q'cK9,}4.Aj|򭁌ƩȬRo9^oK'7LFTuZ} 7\q 0(pN~QUtn_kY,U$;zꣂEŜ]!헀V6:Tk4;E* 1 M}A)A4Ѭ?! 8g¨j|Eؐl8Y-,jI&@ަ^eV($2yɺ,7Ls @ٕfV?;XH#Ќ*tyr?P i[=;HVLp3 VJFgЏq;(m(}~Ci 4ӳnBqkjA(SНE-?$ #Zohw``T07"f fZvL~ְ9:WIX+qUaU\7>Θ[UTf -i5&),,CQ>p]3*2x,q5V. rٓ%MPH͌R4eRTs6?"d+'}s:7}T ٨<9.j7ɯ IcRN/튤[ /9(Mmk~.,[!@KBޑam!vXG4.x<f C`=.v;Ʉ֫ akѷ~}&v_MoB6[un@hF]=)^,ۯӤ;r\aS wwűXb}kYRjp^/äمB+eY5XsM3cUl7SR @Z4 )'Ӈ}8qO9}cR~fʩI3wAGKGN3LJe"3kr&KM2Ďƃ .wvW&I\q<{95dߘySb>-n 3={G)̠D~"̱Hf"Us*wLhbsž8=yR.z 0́%&N```_ Taǎ#“w"&,dQee>dIFUڠ98l$nȪBz8QgUKX1JU巹9f*r[Dn~7@%T1^3g Nh?PB:(jl,cά0q7-5FfSSK )=')keĸxH|g"t"$+oO~߾N.N>qN]-MUHO9¶m׹ >4;?~cO{žCw;3 ^@7ojAԷ1yꀹyؠɬaa $틈 x $;e5TIި٤mF3'l.TG% {-Y_w#NV\.Ln/Ȥ;/@10#X-Z_&Hs+=,: h>ڂCGPn: jѬ]_sC`:D;vJ/@20Z"M3a# yXK4v{&`ZA Fd@i&HQFp1G~Wk[VhS+敇֊!eҵrƓ<PAŢ'V^S"#%/bꨲ.ߞj'x9t s*\rmj^oO XsVrRfe9mHTKC.dӍrnlه͍1cH)Kv[CxlN偑%nܫv78HsMڡ6L>& &naǦl/K_L_[։ˏQ! &Իl@G6-Z{6yq9 V&&orF,Q\(IWJ4P摽>\SDѡDF3h6H_5mGĸro5 qĵָ7d\wdiTNWBv)eشsX*%Ďg>E9J*;Ɔvsf@W!8ce]umNA@UGP(+ ;@)FT3mrry,UDԻܟ ŵY%_"ŭVuXj8Oo;GP$3E{9Ǖ۾qW؅ 4h\i=!'#ed9ޣpv\/ (`9޷[jZT͕f3ہ~XmgaſY~ ˜ՙɈ,>}sn{0H!Uח:5I~Fy y̍\kHzr&>J8ypfn@vkz8"w_y6rgvq|C>Zm8ğwn\)hxڛ&, ]LɅKTQ I x`ǭ5>^wwd3.VG6R}PM^և~R{MǚǨ›qS`_к'K6v8./9CNuf3hx q`"&? ,m=9}pgФ_Wk6ScUt~ƾhxGLШ;[SW6 (atέ-?0`@:i $@B (l`rkV\<}xF/9h"JCN|/ΫYf N4R][KD*Ϻ,ÑK:qZ %B$2ز9PHMP@&EvqꟚ4:~MQj4W0Ôt DNu˾Љvfvp6[`_ uPmSDrbzyXsDX=TlJڳΝINsigwi0V]Wܛ`br2v^U'(*BbL%iA1jTQQ+,볅`?+w06VʃjD88|dv*Waqo_;/tk^{<]~ #p4\&5xM%A-y2'y+mD֌7;rfŚ#јp1SXSt"3Ks1٬nauVCvRd)^W=> qEYfv_4`3giSI)MЄQ4ºV.w"$jiWv .M8iu@uݮӕnN!I/e·i<ݘk]`+:2՟kۀ"P Zȓ%R 9% `A<2jn qyG,9@8/&<Ήbm[ylUqzlǬ{.Ftm@e,oصm6x ѻ^FSaAr}} ٩{ZW83GW H)%&&;whn&=?kGu? ieZZ1+-G= 峺e<>35ȜY cM~@__Ag%zhj*8> iDJiE/&}e0FX&XH9D xkUqȪQ T?e7Wi|;.}6\7w%teCބ5|PL=WyPXuNf WJR`sCLo]>$hȎ׌` V7J{Ho0]  `]3I4ˮxmK~r2U3r1z+wGQ^힞'y*|?뉈Uq5AcŔ1"$|D𚩸 Dam,ր^f :PvO eXW3u2SiW)VPRRVjĈm(#jO6YpkE {“aO.&ύn_3Lr}@4.o]Zh$aKԲb_ĢQ@>2I@Xh~ i@E'ތ/MI7B|a 3//4pgC IҺzݿE1n$^k=|8](C$>OҨɈ&qMB,f|nj-jUȲt1?,RWk 3t`;7yo/l%T*ڱPDf\vҲ+q6l(f,~B'Z#Et4hHܷ$DaS cJ1P(ʌm廴} 0Z9!hienKH Gֿͱ{t\90Q]Mm(Pźևcvwid*|")$ӏ:O ;A>#A@ \]Wa+kAv1 ,4 bSYt2cWgxq%e*hغMVSu PS>2h|$[X@ < Y6#!j t ZR+,Rf( Yк|H{>w֦e<8IWJ,_o>㧱9#^v)C(txboa.1Gmώ]`B-@cҢ OJ;/`C~leR$[JoMG;Ô9j HҎF57G:{7u&]q,{3阯 =c=P-M-6Bˑ d-*/R pZPBEp|@]\ƻt-^ l<{+Qh+ԊNDdc^ KN}&:: ԌiNT+vg&:=ͽ>=yEC:&̏q-cFQW "eb|mLZr)9Ul !ܛx)E+Ɖ-MF]Vk6]|)D[P*owmT?][ P[lރuI-io샒E p&7a#\w7hCVeYJW:aT"rpbjUĕb0&!V_J2kQp\/ԡ˜LU/T~b>`K'I|@c;9O떒x3 ~2Rߒ}LKșUخ- 踎r" ;>UtHp7ApJáVne퀽g`ZGlj}yfl1% CiPhdg"UJbC5z mE"lTL*k>j8rv?3_V#; pLs2A+\4(AD_^TB%gIG[kMxPFxQډ?)8w\yBH4Ш$|\қ>|Uvh6Y϶.7n#4}H@= 63%/MfyOIOd$CȚ*4C?g8\рr$-IBlFh~hR%4ԦePu>"v{V",# !`.ϿaB^sWH,z^3Ju ˎ%/(%lNX gw( RP<Ȁ.~2 qt>ETԈQ3PKB= ;a-!v /RX+08Q1ꚸg]@8TZJBT)i0džknGL <)AħkIA9դcAZ W|a藕4m|G$irUh3Β>%K Lg3ǕډBA F5]w~;kOU$ҫu@mv+a:)J[ri 7D7G'HNo"a=@,{|:i1H ?6Xն 2ҠrE_D #?x> gzaH;o$|CPpj8 FXL^Oj^ K S;N"7QيKMT}IX휷V"1\+ FdF8ie/1 +oFGl^~G{{ þc*%jM6qS'8+JJ2GE˂ZKo9v`>[SNRS^Z :qbAnE3zq1.9brUYV[^NH|;YF\idI߰*}3v 9s!gF/Hz:F3GĖ%syskT汩OC 4=uLo&߲ºD_ Z~CpKuzY/X;c}ʀ).ݝkCޡ)e!PԞ)=NԩŽB^Nnk2d1a24I<+-E=ăy`jORi'qMfT1]b1Rj%Lw8^Fatm2zPT D)f;eM؅>#+_ 7?|FX쯻[Œ,dǶ{T6dQoSí/n,C-:+yY֘mq.tG"` o]P[i"C |ex'̥WY<[S C^8p9 "%jVSC\Ҳ }ԇqk_̾ޙS"|% DrիFWBŅ~O{ ,o: bT좘 2ɞ&Oz@y+u8{¨SYohnRp8m/rmpWckꖟm]Xa_%oEA\lȵc,IOn-hb0AG/"]Ԁ\6q9aMDlh@P,K…sⷥ+%^E2Ee*I6Yt,¼^Uv,'zy)?E\iR[hGzEL0_B&P9~A3Mp8/6VQ$fS@'Dow)!Р}nZ! {Ph+c,KEyFk]) 6!%o{b|^,y\2qcӑ= H xߛGZMT ]io2r9<0sf.KHWq4=475a{jf Tݕ+*dJi^@B|H\Mwټ\`[%x]E,J*iPcT;GYmVH\zj>e_2g4yN-}c=Y413eXiR?@4/" eޅYxw4|C*{zc aJ{+Cil͉'C,! 1L}ƀ6.t9MnBKl?BT0o>4 qg*A0l/ W:-fx,hoX2Nc:HO `V߉l/g vVƴH +9 uDM_1IM.zWZ t]r❝!(lzF`Wv*[bճ{!Yۖ:ڑ{\C@^R#; UݜiQnf=#¬ C㖃Ǵg/í{㝇ei3GMDa@ atpf `)}CЈlHo4 #N#]l5׻Cwщc2hY6cxCX$nU#U'Sʱmŀ{:;7uv{d~K8%! Kdu$p;Ŷ%5ƄKMU_ /v1pqbdQI^i}XzgC|܏0HiX>6P{< @eV{IMz~Xml8#!r#6jLEid.D1!69ISmTkh冩> R3P-^T\u_Vw4)~ $P"QX9exiܖyXӽ>IqF­ن GK8HulrAV_zŅq8/9S" /5z^hqw5*}ܒw:6YS'}oˏQ[ hiVݑ1ƞjS$'rS'z$.k<{" )f"\pabhR]R[QkNC]{=?< | \䕈}8n^`ODhm07"~&hGiOC×$Ke.;hwY"M8m2|Fi(|1L9@˨$zD!b< @NE *K71k>>q[ {&\mh8\%)&W]oPA-ab̢ Pr i5ܲ}*q5+Ed;Qt42dm04d!FFђw*r}_i J]&SZ>}?mQ#UȢR]kkuNS PP~xe֐dŇH' %7LѪE *;Cu .ƶ:%pO p,aie[S)tZ<+< |słgD&_x!HXݣ>nC2nG[W5Ƶ8 מ2ݟDӕ4 ܬ.ItC"Pnb,oq#ov_=H:oŎi5_6p fR29$mfHIrW!2 a ۬RƠ` wp̠ Ḃ`O}!?F5LˍyQI-z^0j R OGlg.ngwHv\N0c !G3Q/-[2F6:FYg`x~n_@!gJE)_Ŷ6.TN>D)}/&0 O I(Y$7J1_dadÊs/.y,UdY1–cS2pXo*R&#F d\"ŌLUk{:K2y4ns>PG2Jb߲r gTōwׅ۲;|3QzG_x/NdN ,t!x.NtȾ dɖ@@v!'a.YdH(LoCiiT.ˀod|4!s~lCSz;83q+ ʡ\9_֍ٌBե<>gU")4#ۤI7Fk\V/\n =juq}R f2< .}ew@֣*HAa rI1'_)Pwoqv{+~rq3"mO >JV6m r3[:|FIyW#}KxV@^`l=JQ&(ּ!K51Ex i7K߅rx#߷&n8(8 EwXhˡd(mT{tYbpl߾)*'BVylZMi'cO>AGҶw0\GuyJ;kb 8R nsf 0+UnK}Ij\x]U754cu+C w7d~mI)x{!0ӣCIJ`!0yƌ(]k?z6/nMu݄݅HH[#gO@u 5ODđ GufȊ ԥS_ܴ*W18}\}}|Z.88bBϯy2*F6̩(yx)6o:߿!ZΙ}K["ZtTdm5<}uc t:Jӵ{ˆ;S\cvk6^!"\eCO$J -3BFD.֙G8UB9` ~4r-L83LR_hrY@;”`WӂX)伙ΥτClS] dQǀŸq)34(,5Hr,ClQ }{4TD>?Oth'E4.!4'PY\ :p3oup@?-Vab[+h"k <ԍ}5EU>^&=&K^d#䕡00yUlPʆQȏW~amR]⤠ـqiUw\Q%8Z951E"2@,gTZ̄S"i,XC cy/=ms KpxиT߈DnhS63I[' Uztt6UM;) n K*jIܒCʿIG1GA’>?8Kes7q'B,xF'If!IEgWb;ژĄJSlZ%̆GtYˀse='3#u0hT@;#(PI?4pL f;Ao"C_ģY$C<^{M`c| p,x$>]+*۲Mhpg^7UMs=j|a|>DA怟 PQ{ouvd'lZ90a%IR e[66l%N@tX7 _Jcԡ A~Ѷ FX"Z!a鸌 Dy$5=mVGx`JBkx;9?\^9yǻ#+K'!?"E)*3a.;W:K쯘X-eRICEpD6Gݏ&%6O"bzvMq\OHRQɓl9T{OD~In$o)?d&(TnNx?r1ڲ=nH*B!z~. ]5($%k[`ܮա}[ޤ2wqNūLϐ||B%1:u oQBcg۞i^q XCLj;˞fZ!-\>i"*5 0gzNZM7!M-y~M ,Z,""Z,Y|1:Rg!)ټ'U!:X#SLL"_i`u IxOҨ;R/M0EAZ&L}ޠ X'[HM J ܌dŦF5q kc>O*we"fQ_뾍)i.z8xsDW`X(D0-I,ъd[[Ԛ6"f[zٙmT(c = 5T~~XO:^zeE=W%ۻjeBFTJW%!d3ũ)yqȚ]W*2z9jde$NZ%=iT$];wB Aq4t-B_!^!6 ם]w>.6F4ney)6K[3EB,zG  tijkz1v/[r;|ʷ3ҔOi~wwغà{ƺNԔl6{_C`B_M6,w7Vd_i[ⵘoj8_{ K /ޠ4|6qX&0P36 js~6lrmE# Jy&1aDM11*#vCSo--K "<'}O ԝ *&xpmyssAY+$B*O MzޫᣔO0Qx3uD V]lWF زCmcoOީWkD|8eI!9K~xӄv.g|!\mY 'f?֩NrEH5<)8WXaX2;<h"'zh{(7T %T0|'9iFk=c3!4[IUd'#冲`< 1߆kf&y<-/&6LXf%xeks9~Iuܣh8Qe!vv Ռώ.[5b< [L V֢Y`0$MEk̮Κ~sv/_``V]^Ќu|k^ ^!y8Tpt PXF99H-ԡm@na|z]պď0oȣR>O[uku PglaW %vVQY0#@ϕd NUfq#hmš6n29W/nmñ񣤖MHqrfWwrO}1]|ãq~1jgqI ?>PPpQbЖmC$QOx=Rq5添bT3`ź]>@fQв=IYh=]9;4w|PSqҖDĞ3VNέ[a:ݟ|!A+2dC5\>'pt4}p񆙔w+XzɊ+ ,4gA$`TgY ?'qn#O[=P\PpT 9 w]nתȍWVkGDXsثy %HoK:&BFD|aq~( UаU <޳nOU L ڼu.&в2R#`z7+\EY,(w/&q=W44OhP߀+pt Ac Ȕ۲8nUx|Sǵ6Dc/V&ɿ \#(\=-9{2 &$gܾ,:><z$D\D1 Lg3ۆ罈UF{xy$amvE|ehlw'NWG`kT8UE=&yد2WUw~h}WBx\!YOzgSx^ ˶Lܗ%;t/u?Ok9U4cTz5[Ё99Jm.4-ÄD3FUnIT*rշfx 2}AlJ o %C)+JDͥŝ8n>a+k$..x_^V3;k`_NRLE75\؛ޯ#<~?[N0FՐl@.ir aX $]Iau.68 OOwϳprxOmlr QԳuŞŨ;;֝"ĐaV/cOxPtۥdm CJMs -)SBR]%xچgQhg"뛬sE*Aw`r\^Lx;MgD<$@dfz'ݷD0$MZͲ肃 Oux^@rMFHtS (zk8]F#6X}&b;;Z(O= |=2&؎4iq)Fmw5PeK/^Nϵ/pAo-@,d喬7X5fxe@=SmP5ja#'ǽWb)~ZOI^] Z|]]!ڌ}%': eʗq t#ڮ-1QjQtcﺉ?$/檳`n| GUV^|+2 LҟrN.0L;|ڗO(KlB"|niV\ky T;YⲜL4/n=sLdU]NR/)(*rvsQkm BE : x;{o܈na21c;R:#Ԕԧ_[>=O uрgp2 Xk!i}ĉ -&d7!xed_Qo ?ynݷ^qw>t<?޻H:SeJWGgApS@̵(P}ZHr/^;K4p쟨WjF;+j5!OĢ\O0I9%R?J k1G{JZT^6js (}B:Ƃ ֟yoMЩ;%TTHc2!%ʌYNk]6>Hr6.\5:0)Z涁Ε)4 2;=˛x:M==IgmyvjvMFm VACebRX=ńIZV%(’A}$wy3w[SDe :@xɐ a|/4B{׺bkP3?v~ 7`bdA- Roq$DO\%a6;i?ae#ULg XPCKHo҆W)mS6O8i$DFFLi/VžNA@bKTo_q3, !\ G}N} Y0y3y+@@kl\zDzRT=kA96S|!8ѳ’zƥYg Lgp$4v FUsxqwԉR8j|73Ҙl긷Fƚ|rEQA 6 ]/d|[+:OOj줱2 /muZ8j"bK|hp݉C.%\k)p0Ro aeфpHseMU , ŋk=MkSodF=?./:AtVZa'Kh^n, 4sj#@$e {K,NJuI͕,n$ڼkw8QX2#j{TbjprEKymkWNOtYξrMo`wnM+usR5y|||^%Wr lUˏ#yߊ:вoQhqQ}rM/_b 9k1 ȟz=p\ax%"?R~ǰMJqA?F ){=e-x*~R'eS1+~]:9r0JᢲO[ӮsY!\_tO!ofCWBW`[qgghEK|5?jNl+ʇW*b >$ZD{ *uLށ`ϊƻ&Gqf/uD-uYq|Nz# 5삣muHXvns3u*BkZ^_"b_4'撄ϣm[TTXmXa![n+3~89_`uBZt,󷗕+x :> ESlta.Cdu`'$NML݂TRpD'vԔ`u&ir)w{T!z͖XU/&kSa6zKLs73 Y$pa]u6#WC2?WiA"-Ȳ#l)sĽɺd% x,@M`6~bϤUl{(S-RŲHlb$('+:puČx⊯Ye1AF"|9Fx.vY_tΨ`0glT"♌r1h7;qu ֌- ^$T8eQwkvHAG3T .mQʵ{89_SѼm3Y[Zſ8^H] YyʽelIL(RUpvkR@9ޜ'X!DYߚł>ѣ[[܎a]`N8;1?gk1ȱ;^ΨIfS7w|غ@8rr<)XJ.^э2u_]&~Jf|ȣ(.{_ %TDR8Vk y)1i{ޚȔ?#Myu7:xq QbTQ9usN m?kOCpaY$]=+rxC(rږU,4D/T\ml,"r6O,Er5O`ֺ՝Z#ۿ,L+P㖊&gl` e6!tgHI ǤѳsP1.R퍉w\ fgj0,:͂@+6dJSZB*ʍ]Msį1#Q1wJ,h ɍÇ,˸5 c!: ,Z.%]wˊJ5㠫\o9 {jz/zIZKU7..snJڄ-"|К T0S)_)UE'Cb^N?)*5a!Nc(Ds>gC@pS Ў1hoڦ` Spϝ=+b6wzV]\B҆4ob{tkH[J{4Ҵtg)[:_#izxm**DlJ{BC@lwC_ ̹_!asߌc/u3]lu8`>! &r|aJ =1p5UDRHeB :Rj4k:Ձc,/8I`NL7rS@^p?Z=:D@VHvkI{ěї (iUS{8ęU J'ĉ Ve7N.$(b Ԥ*_4`0QBP!ϙd>L0tv^gQ)x^go+xd@$:awΩLiuɋ6 94_U#z' ]&-^i gV.&fsϣkLͧ5]mH+{pܳcUd τ ÂlIaJ# &b+R.L !FroY# 68=GJn]i CVrBF ]K q?Jţ"GK (y69FҐMrIbʿ"Xpczg[jܿn{=]@o,9Υ${ԊAGhDYנ{&j[)xl΅ǓH)&if(Qz!KZSclR *@ډ\ܻL[?uݧ"äBĔJ +Hw՜U] 穮w(nx=Žqn)T从~3ur+=vp8un90]ȡ8? /Dwq(VW]r+f3If|~LA\uew/&h1U@Ae"Uh)"bdV= ^O",4Ik\ |(QƯ̫n+1puz*H {8.OګppbjzN"HTzZjz9(~nÊ&DR!խf>б``ON0|CLFF_+gc.% izK,*փ{r`!Ƒ^dˋ@aVSuU|H$d3~_|mؗGQGs前jAUS͛Yw…xQE(/:8.C~*HHrad]֋sgrЋ|I q*!l+!>M¢*m:=1֨P9 +zujLĥ,&3ަ]еo];XcW}L*FCIgnc%vF@nM&EˍA)c$p STz̖s(#ĜE%S,<TԆcbL,8Q,tnDiY4=a Qg M)|.HE8=ض׎sȁCġ4J9?Auep/VYW*MڗԻZM C:TrU-5%WD]Yp i1 pb.:>0h?$"Y>p0v鞠>W&͋ ^nDB|',PDlRo^AP 5^MԒvq('R,-9PDFHÞAȋSrX83%"r;!5 Obd&Fb' ͂cӷ̈́ePY\|сKvN9Dw :rŽ>lo?CrN-w -;_.;`m!=؄8huh0gNdgrh)3Σ# !||:1̿璇ANڹ'نQ=HXf$zVӏ5iȱqсHt_|x`W!R AAAjt2wk2% lBwis;`5k5vOJmNǓ5Ҟ2ho ¿4,̈́I1 8ONG`@;"]ŵ Fcf~gbQ\9}k,SuEoj+! ++wl,+6:1@V-!* iڻSaxeDTWHCf (cyToFr㋖~PlF0";WwFԅWpN[H\ yڶeh4/MLǗB-7o+ +wm6ft`E a1 Ǭ`.ﺑ VyK.28 o)9v; WN0S b|kSKN=c*E;4mU Bc'Q]^{Ӽ_JRQZARͥ;>Z"#|?|]VPeWwTJ+a{oևxS跴C[N)9L 7Eo0S7n 9Lܪ?򂥓QNSLc)1՚ċٛsUΠa*wWqV,"`Hyer2<ܑקa@p̳b̙:QmlW_cgn{QB_cFf"!>ƍ'c<[耇w#3bJ]O;(Bʪ]ȍ;Ŕ!5@^YpP:2q2GdQ-7qYxJv"V7|ӧ`tc8Жv8\yՈR)j p%wwq Ƚ6O])C8C2ˊ5,"Vhek֫?am7*]}{+*)/`(!_ M&bY&b>SάJc_|^hrd\OGێ>rȳsiO5],\q9MIB-%]^xy18J LIo ى=\;e&M/C)6:U^Z~ 9gp:܈׍VcE?eޓ5Jь,*%:\kubs7)9#E:a"JsvPZ;pϼshʉ"ca(MZʕ͸BxOm|9w/$ c;Hx rJHħ${."/i%@|B2u:,3nBVg?8ELnR\>MlZ5\$G?)l- L*}' *Jg!;Uc27A ~&U[`gWT黓2bU'^j]( ;vnXo]njl eSvNe0R*6_8 S$a+%%_@W'[ [Oٵ~2ܹ$lF.^J>KTTد3=?>4e3&0 ֝fq,կz^Xon a6 t*vئxLn6 G Sbs.$M=p,3zӰ 6ks߽^[GEx+Ê֥F2 \Tp) cd́IA}Z=tUj"OHkD32bJ7j gԨ&#D :dٍkHThK`GCDE&4nK)(>x:Z`4G`ci8OT XJ&(qfp1Ն!ͶksUݙӉT1\wÅ$]v̇=CVŤ'kGĐ1zQ1;ȶWنjdrVPx/ק&삋WD;|%"dسl)/)Mʠ@ d 3|g<^-Pw`ןYD Y+Q^W}Ij.wgGqO9p%T ]{ݺ<*df mίkgXI!j(8PLMYeQ0&,2p/Rz,sqwg"+!O&)'v4X57M%pM),DU:6N(z l(ӽ5*?G/Kd!X&5%HW!| .wkZ!ή] {1&&`*T iޓQ܇ MVx W+x/߾ߟyn΋W*Pvv̓n~Rix䁃CY,.M7:X ϞK DןP`v|Mh`ƊsڙӅN3_qNT&CKd4'Y#9ȁ_^!o\Wxg}UFD{ȧH1V٤z%3|=ɎcoGFFO,O%%~pKVmO,8&ΰZVDsk`qǾ ϡwI1V%gHR6|jSS b)7ݝQ' 1xړԠox":l_y>5gcm_]XнٺLWu{{z 3";lJr cse={s]OOmmc[K\#|]6T2{3ZϘ0/.~Ez3'Ujܞwhoka7`Pk:ƶ|aa^4.2u35'Kw{`ӻ,1i>:Ct~#21:`g,S)՗ ˭w@2ap=A09LQ!뵁W4;IH*DN0D#+اQ.L%.,+9ڬNvZ7J_MUlK8kxD@{h/42|:\`!CKU s$ JP{#?鮆EZ_2Uc1&Y~deW+4 7G,hժ36Di޽ vʈ$|.mSzϲLXDȸ_`@aJ`b03Chw{?v[=ΊwD؆ե_DVTh?)J?˜(JuCݏ3 ʳJ~K=M``)wߣ+m:r8gJ<~R4ƥgE49/*Ҙ $$RF2)yK<@tIpIN\Ӈqu;ZXNT%T.Dq;Cx PFdZ,L6hg[UUFɮnE2"^g}3LkO/j`4YL_2%p`zxyBYjrjY;,,ljD͢@`"\:ԙMcvj`4NtV)8b|m0Edc9I@ߚwǺhhLTMh'OHԻAlr~klnmjL4 (?=\lnك7K/ ,I a)7t$0?EX|}-OCds(;W!;0h Ū|Ͱ"t }p$|VN7ݳO,;~i?_6.ꙑ0X_#A,D 5t^snm}_I@EDΔ8e@nG|o$f8ED`."[X&Ea,-O&Sޢ/(aIpET݆qP[hf`Qrr;-zFٻ.9=R$b$j*%ҽ#zh<@_[n8-xBw ?K-{͘B{8 &9E\fl6&->Ƽk*ѵQ_鍑q0;l'#n%Dt1q`N̿rK?%.m [օ'ݬDg8 ڏg[Pooly">7i mb?e&m/ qI)]7s=v[d%k1u:Dz7Ӊ a(WwVd=skќ)s70%ܻfxrh)s d(KmV쉅Q>5 "o^Yh"?%ŠíB#g35[l䩈-D@AHrKJ/<,$nb,sWA~lf갹>'[l^OP֙M32`1XQ"O;C\ $ox}Ҽ9@anIiT]/Yv {ٮlS[6BWzS)`_\_v+.x@S-lW:H[vt_p?bf\{T`Y.lΔV̝}GLUAky{>?>kD62S&IڏF¤]"}%B]L!_(RÆܨݝ JSD)YIcn&9]X]nr_aU]|ȏvc̘@ۘ)>>F+N8  a?@D`?s}~V!j}@Í.y@-Rͻq#>X4  W'Ϗ%%p{SI?1otu%[~yj`+ob-p1>"2I'? *\O}p ˙vŝ"SƓzhOςIV;hV~jyKa7mǫjv~QLԽb.d Pt=MhAk(* P^Qb]nX֏pJ4.~bwQ sȥPO|6zf$"R:x& uLCɱWR@Cn'`EUẂ"ߘjVh Rna[(PB:,7|tz%֫6khhIooudt]9̏8tWD\\3CjP8pvzI7938)HJeٗwM'uԣв&]A,s%xMzC SpE߿QL0f{A+QNCwS`}#(-l/ފP \8>/O^Q}p"VNN@Rs3N4`8tP]:#ե6v-:w𛕤*'zހ|BFn2PCmvI:'|9Xu`j&2 ,qg\beZ-wO(Q".WckAG~P p>EQp DG5^p*9m\N~1|c+퐰5h&I8a0=k}njITϊ0u1R ruWkyg "8fƂqUbOY-"h>΢#$AL4魿EԷ/m¬<`}ARl ڜֵ\hDF2ZRSxey5Y1[oܶPÄmJR#\ )Rhv>xуbå"F z7PDW)T>Ilxsf I"`EW^(n`YN K($fsWW¾u}8IDĻlJ[ީV/;Rpzq-sYr"dtCn!h؞'Q:B.,E܈Vn6˂vN<4nrp)~ؐBނP[<9ivWQVw&ٟPAZa_}Rlqkdp`@/1sAgmlEFg]}<9-׬x me1E+GvoGNq bK=S]TO7?@Y[(X 1܆Gco,#(T6릳?o887a [4ϝwV FI='M|/Ѳ`mNR̼ˍP!δ5~3ɫWdHdVu:& g59*bq|͌YVbLV \wYh^SDRF][t1%SABxȴgj5\1t݂ cn15+K0ezQTeN4R </ty1p.ᙗ`b'h}I W]HqVրu/S:AaTQ|<% ǟj]5/8e!^ w["WobFBs<$7\h8d62o8>pe:g3%5I ;~f^v HR!JƻC_Nn=m|yt^^N]Gtə4+6lR,yY\M%w9aߨ N^ˁs 7 h<:usjU9as H1Zɜ2À[4bS6tCFҦ(6u'R?27嘶Xı޲жzޞE MZj,O"6uQ@q0 by!`bgvd:e/CTҝW1!;(ȚFT5d )>0m4&Bvyr2D|8z];O_w-־PSm6S6lqOh:sTuSӹvfYL^srVIӓhƠsC>5Y#?erPA9-_~; fLo>F bǕ}om q7Oq 2&o Ft4*LEԘНۧwD Sk#ie ?i&kt]L:8h <r€u-p;U0V,a<1Se? rJr #4\ WPlfܨ܅U˻a6IwٳC. !vn%H \?8\,̾Z][?]TFiJiHrK%BdQ)1 HY[6}-*4KFzՠWS* 3J>)Q>IL@kZS\2Ȏ(D9Z5_Crfw_ g w}oX*wWbױz 5L=p{^Cu1k ?kĎ#q6e26Ȧ76eЙ# #jf66"%!fwbs@# ywxz)<[$ 8|*c=]l[16wU:%lU`%Y^~ )h΅y>3YOuMM 1!dA7F AO*mU"W>ԓBrjkJE2u0ZfƬ(G$. _ oH>CŤ/=l*\Ϲ>m)y>`޺\"UiT .j n30b|s#|6m9Bl 2ɟP`u:<66Izg.4YY$%{~g `m$}qǏ@1w܀$swV[g\"ZFi3Fh_R߅O>R:e1Gn9=e9޽R; ,B@h0ehh~[ٿ #LZbDT4t 5kRD {g1ަhَ5 U :&8}d%ȬbL2o$4.FV?WV"eR9־$.z|P cCt&vo|//%n4y.$R4U bkr:tw,Sekm ^jdNhMc2eLT`2ϬeX9Lfxь#Fz\S**/| QfRl}Ǹy~T[]UTWGiJO?Sz3nw 6,K'{$)H0<өoѬtəd By.irNxhǜ[>[Kg' 0E~\w<\Ig!̀8sL|4UM<*i *qޝљKJ;4^SoMq+>DKf@¿aHEśYhZw+r ~`:t쪽ŷ(~#|ǠUj Ϙrd#G70 A"1E`+a󁳩N C /L)tq9uiLD~sMr`n.bB)p* hKMW=$el^ ]lօ%J{FQuIGiC?ǯymE,lkm/怿.yEY)gIHAeG3OA:RБH$F"*?ʕe?J a@4[ >y6`Ѩs r `bJX]Rq/T0R=ʣOhz:tQ⺒M!Wɦ?tMef@`H5ޓ磯inOCrZ;)iGQmNǒ>KusF}:r)7׵+> $Jtd%ɺFRxld` ^c4l6'%37tb;2,h7-Tl֬D-65NDX˷Ӄ<%u5fUxR;Ppa섛NE;lS.!myVZ1KC˜M&(bO~ h!-@t UEgDHs7y"3R μHvY03t]95IIAvF[/*|%q5˗^|{tOAxдLKDuM-sEi T>腆J{X?({2edvk3I8.ʼa:PM 3Ѫ"coT59N٩.yQa7C]|R H,%=5 Ui 7v-sV^4?./_9A'ۑ0eZDZT/t]5# 7X,^Si㫔>?0ݹ9NfN/~j):nNo;\mA>c`ǧ@e ?ݑ%\aQ9 >jE3VcTQ;-n!QC*;%h-}iW!ׇ9wJ#Z kOukt]]nvY@+5OzrInX([:|Qp|R)wMhx]k YŔQH)uV:\|)wq: szXk=̒vjqA~3]Lccaܨ-o4nL*א^+oj߷(sxdhIƙ\"-e+1Ie]Kׇ(V);(e)Zhٽy8 ud t8B7ѻ)zՠ,.vbڬ|.G#}6#=8H]ՠzp$~J6WuWY/[:0$2FX,ǥukjc VĆʻvTO_ExĖWRwNh7ۤ^hZ)$sF`, k" [cnLߧ.4E6s!F0brL&F4 p[Rz&-aa^u5f`9倊l9~{r.;lpG:ᢰ4U%V)z 4;wzT<0:cLla-]WӒ26*Zv+"=hⳖ;ڶv[ة _i'xR uޜ-dKA,|WJ/*I/r$'Xm"%|<} _p=+}&K# >ròm9!7B7A ؏}p =~ȡ;&8 Ly0hlEWLqЮ<d* +\'Rn; ;3^/hd`0h6.>F};b0^~I1bQ`9`31zPSؒ+|}k8M'l*grMoRSF}dOіq%S,Smi:`ɉgYq5z/Ņn鹾lA*ttÄii$qVwug^B D߃}aS= K Mq4K%~| i@ߨSΠOsN;H',DO{bV<Oybݷpi(T+P1]7:lwc>"%ef'Óv|X@FţC"8̦{.JB*<ޯ-/uR`6z(+ E\qo4u-V0oZ:vnMߙ(b[iǜgq$p`.*r~=-+3?C;;)nD-*ĞF Ä5M6P'j}Tq1^hZ3objaMsTg{S(9ZySh &Zf  K !r ЊŐ:= ҈Jsq!Btb8 XkRsȧG^?hk/5! ү ^RFJ<@喺ZXyW5b-HZMFkj/1cc&Kh'$ZOp\PPK'VuNnښ@6~-]q׿ l`ApnѮgn{^Wdcp݀rϷ+'lَHM'6[寲u7*}J\t=STmb:"e\ C'5C*fZl~ [F&Ĉ&h)kuuڟp6ܥ9==F`FyB~eI牛f9=6osdN|{)]dFyxm,Ћ bFwZZS<+n8n\~S34ϓuhC1x3@(b`^1m.pcw^#ՀL;BlJzjIcSbvw;bc_?Hjzx4&QЛ8M>J4vEPU0K .`Ek{.;2fw0Cjw; RrIgbUa<ٍݎ.Z \\v8Jšj;.$䃓L`bP\*}~hUTWX^G5 ֦+"^@|~sˡ" 2 zQ mfvD$-g% joA(4d3c%@~:fשk'vJѯG$/Ì$F;vݟLm [v\duF7@U>#pzB9t&243f>pp A}M J#"翖 ښc~N NLjH8&8lc/7G8OJe&-̢VJͧҖ.Oxnbɽ%@sVTlVbǮ1'vH4bVw3 ˺* 33Q #퉞z8ma٘Lj67]\%lh{X-JcP2m+S`!|6%ӝLq}4#r|2 zġf8.&Vxȏ4wq,Ga}L'U!²zFMzc(l|ܺs떏̥;zwR:qoPA2ҭO%8۲kȐs[*] WEك@8p _ЦI5@Ƭhb8jؗ#e ^(=VRjr{Bj(Pd,onI,-%W<[Db}=R[j4236VN3Pirj ~ϴ]y˝Jka׻B-&RA,iqX;p;P?$$1UrIb?Ood x4z‣aP;-uUԩ oǻ-a-*F]=`f\CMM.n885$ cT\c~(ڞ rvX :( :4پHHavW@dc7W`YErb CҞFtNqD(%gf#pS$3s0IX#da@%8RjF&PK]=fD[_fd!aѡL6%E?Fh''IlRPKy$ 7t^% õ1^>t]A~A3".b}Iq CQHPY3}6TȥĤivM>{=~U>)ҀRr8xQܶ8UfTfY λPDzf}c0 'G0Ex hCSx7isQ"5W`\[,ѫ= Ŝw"doi}霗`d%9DXWgÿ8^>*6iR -W3Rmu ̸s' &3!KWGo=o8o&[">+PamAnaWܻpzJ)Su|Jٲ|>>a Ɓkgq((yntCOʰ&R0L.ёR7C ޡ~IvѲ.ܴQY >p aBs!.Y@E$1E,Yb@ctLq;m͎QsQ2OBRx&"GxZnBp9XZ=t-TPe)Pl. _,![(x,C^ɧK}&Olv +8r?^[k,,?VvQQ F"YwWT<~GKm[|m6R`yyrp#z7ROwC B+H}859GھzYm!`{qߏ}dC5+ b"]x q#)&+t2NT)c'70+QRk(4' pl/42cFoW [kP|PI)pBaLP?&%ӵ lMPg}"l!L{M0f{ӥXC4mt~1Z۟,y m="lRE Z3\Ͱp関)Ts۳$N\/ 3ɠM&uY!c<HH:i5AT h::ț)vBkT}#Iz804cevAGyFDhK!MpW8 sOQxvk7!ď4q=fSbPNXf,Z*ewBbH- Y%8LB{G3qN#~I:i}LrMeSF t2ܕ{X&ᦍpÔ[qd& ?k+C! YHI%/4/w< p|%p;>͆ eHML5:ي[ 6ȱ?_6m@q[5(᎝76\q3rOI\䤃ٺ 6KjM?MY ,4˼꣣ s_4 Ō(oJo mPΒ#jM1qOExn:AV#6zZEB rA\xe#s*:W:o6q镃mW԰|g5g#gYyl:bX Blr A$od%D~P W Z\g S,$49(SB? ^XKǹg bQ!ì09Q7O#:GzNKغ^>z"vX7ELwRF[k-$˝oܸt7LhedCvĬvQn\ZF 7yqY"j^ˈS%s·r'i{Op*Maa-qΞEe/\ʧYvD*♫ۓ|!hBy|8î'GEگ"D4D F4ظDv,tS\UhANx/k?b;kE>a#lM-o!ccZN9kKBJeb)g%4vj!m#ݚQ$RiXw0 mke lG(F80Ӧ;E\mOuqUE'2,{wӆ% Eg %5LMRУ-5@ROpf4NLE´ a)`O6J_n i n4 V0|wn'{+?ix'nE JA# YԒzye/(d] u8{`xMo(΅oͣ ".# oeK~,d@[b& ea>+ws)b仓 TVIw֝MlPrX_df(q/u67R4@ER {ةoEj{z7Y*e3Meu֑pM'7* yl{ YNEOė6}=xta78D%\Vyݯ ytg (}͞uxQ\=XW{a'"Lv 6 +16;j0tX|Tw:'Ϊf\A&LuSf8zB,{{\ k"ÂuR?}(0Zf yzf[> ItAdVBo挵f9{GEW?8 xjQ+g2RHڣrAa5pҙHay+lBGݛuII6;,o(Gu05 o~>jQ`ԉf 3(ֿc -dc2w34]q;(Bq3~`< G&M0c֠3χ6WT(S.9lhd5\]|EpڽCxFZ6%4AzZzeŝ1܏q`}`&*CCSfK|7d7lQ,TwH^ M^rHn?\kjE+fNfQaley\Z`Tw 7'8sL^jLIќamMoY๲]TvQg7CD hxCV8p%$ q½TJ3=PÄ֌ѥyƶq a͓uZac1ܬ>8KKv b 2n-&&|9f# g--L%Gk6{G (:3/fx) W cco6hB{)|EX׍,U{ WaRvf I7C(K1CWV^T=;m ގ =r$,XA/>pbB)RFi-bA]g?\ tB!7ET ߊ#޺Z3I9vVkb߂A9N'*m&  GN˹yn7Cb>9~ O-߆[UwP=, ]7{lPo ̍z\W-Ns,pv*h<)kjDRrm]QUlFRn-&^%\@'d^%U! %h+Nj^I vkY$1pM=; 9kY VJӚ>wM&JIr<q.x[+^j<͛Ca *@O|!0ُ+{Ws ^mzCai=cJ*PDo9یg։4ier9)$WoOy܇w#H=͑V{ c*N~az{I YXZdD(̣ ʙ< {󬧛ɝ2r+Y3)4OChf,(?n*|iDB"7)+Xϙv? )iݜ,,:р?p8v*i n. }縧 $`x~@[ <&:E94W1 ^^dFCef:MabDF9pr a;jF^v UX2D%XGD“y\:Ƞx+Ү6GQf!̥KqCAb':>tiIـ\ h=(/]/zA w+$dY ?YcFjt?R&~?8QmOL+/lS[FRql( 4T5弽2KT)$B(zmf'h&@؊9O{>b4w3P1]K#tnH%' 1VS^̔-cbz>Տdd9Cߚl-7vC-"Ii I,2 ^)"ps ʇQ7MQ}pF|uםL6B>pQ*lA8,UBֽُ"+~,T~J,{;b#|/% 1?eH]wIqבn;* kIm=ed8Wc~ސ4+G2E !J+`GEU4k8س*z,-1Ϋ[J4 ^Cӈwo %XXJ?} vϞ(c>FG^7|?s4Xc1͕_*3 Ltu{,0kHR!fb0CGRS RsHQ9{L]׮OeO}n nlG>OYdyS :Mq[G]Rt骨X"p zhK8h TT}mauUT2b^ %b"?8=w~wƷSAx©eH#%;6Ay,e򮞏s!6_SKسr7O9B=TG68 mԖH}`RgvsρSgiuf?J;o:& Q :t=mi +xi;X>.+tUt)Ej;d֨_mn72?[w\)*tCuS@vB5a./҉Cx>M9 ;j˼J|>qfQ֊y2[w;W۠l`lO'qw/-XӫÎR|) cIWBOKWgK'+k=a^8G?ò>O]oDe ^:\&ie x'db)l+m Ot$ -LR >ڽyBnv;GcыDNF28oY t䡪x<$Y]J2] n;\tDOx7 𨓜 nMaAt(\3#Â+cs81UvW6Ot\jz2U0oRYBmJʹɌH4$1hsc&j0F ϮX? [\!X"e'[XH+*s'õ{mG3%¤]m#1Ð.;n!.8J!Ah)Ma-ĺ u~b]?с7BD؅F.ʣnoLmvIgj*{i9 k+yxR,9F1F6ט%w%0Xl,}pHXxs1Pߑy5G7ǘ:::l9& jt$S5soFDl3 DTLųSؿGPzXW{x1*_-Wũ_f2t`iv2 k&#/LNy tw[Z ?%"ٓYqWԭ%ui͒ 1!%\ްT0AeM:ZO+aR`1]cmn4 sx1<Z iT d ŹOboM4.4j %oPU? W";Wq&Z8bwgpo-͝$/=#цf+14xWWn n*= Y2}ꍻ͐^`.a'<2_ ,`E6qzQUJO) ڢɩfPcEGUP羱Sc;DU"{~ E% #@u~v$WS,Cb$Jhqiqݼc(MWQI,s>dX=('|C'&k,C d5M8KX0ۉ S/UcHSp! rgi8JP-{d98rO`6^upTH,>l]2jӎTtD0<gxi=Y/DlmlST4#Bn#l(]2mm/A ]cr# g,;O +\؞[ҙ-1G\S7s\8;;>6!'Ep} ufURۡs^%mE{_W~;HI4U{?W715ؔU,໦{A TȨ⻹ۈ=J w YR~&,uڗՍWu =VBscO(`n36%Tp$|Z]&qN/BtjE߉eU ;oG aՌW]Pȵ '|%}`Us~ >6Ox0噟s3]ԙq0<*QΏ6*oӐ!O&h,B'~ye}[{AD" YAtvv88uULL~|TzX lpn˥lzzW#/yWDOfcHSwm-K3\0s&蜶>3Ofb(41GІ;X:m쉫S H:=K{ɲaT1aOWGZYvzuyȎ#Rl'p'xb^/ՌQvP4z>E0s\bit"jP2U~W "Jo06:#SW.p\xYx2 Qxʵ&o* åۜz-W`c +%yV](r;o"sz#6&Tm&5"3T8sS-u,'yUS395H,0냡˧\  {A>MsdEN YqLkij|&WPrYeK?S3 NbHi1\`ЭJFԘvw8%yX|EP,ɍ}+sʲ4wO:9oQ.hv',4u?LWLL4ߒ{6rs!Zv* a̋@$] KjҩXJ=9'ޗ-J;'*g5[ArgYa .-hy*}]>BHu)ԧRun+#+X2*a:{;=xG􀃫![#Բ0U_V\-g}:VXdLP8X`UZG &۫H*CdǬt2 -9Ġ:'ڧőQf +N;B$vj@ڦ#pW-Tcè"2 F^@-m\#ZzZ1JUG(Gܘ5r5`|0) Ajo!i!%ب'FC(etp ʔ b̌7f p @C&}ŌяBkK% Kg=[M'N^Em_,*E7KKS/MMJ16$&^Қ}M󋏈wI1.ʍMm<Ȣ)$^xμź'&1E֊LTP%U2V,zC+J4h53W~3cw8L)`C_lWRLuT& ŎϜX$Ri!V3,1 9O8~3S,x/t8ӄeE`άD>Ec<J;EKbA5~zeF-C PDmT Q'\c(lďGр/&]a!HO5ӣky~3تLfZc$9'܄~XGi! x- %d*0HUTG~}0DU1T^%8&({r=<ׂ'l%ͳmE^ܰo4&-b]G@] Xw1;wcSpћ軇 LzgعE8G2 >FD-d( U]&樗=V< K4u-ה1ACfw΂nl 72ҕk|<-W*@9!=}-qWjdO$4Dw3boam R}:)%SH_P0mBAO4jcvp1r({9\ Ntzv;Vs2bOICQhzM> ®jς mšLq-DϬţߡRJ9WF?mԃV\wiV6&Nd >([{走,#~ƥQޚ rEsCP\) aQ&3n,\ϴ q2ճҼ/<#D-c( !%0bh'ݽcfSv{ ?|h` LvW-?W6q8{6-{dKhc<҃k1Nhc(ZUGqFvld*w"8H+Ō|FT1s@FIIAj1-CL9#YgY-ii4 U5\#Lstq͔v/]'2SSWrHM׫)ayZoЀܽ|KgJ %êV{RxM'HoS&ӣKg%ˤхN62njT#JmVTQ_Ռ$!ye\S~B`/.#ɋgDZD(/S. C(]Wm269XSBBCJ}*CaZk@qd1|wwM#5E a!*&v#ƂWFh)Z}ųoJ1vo ^lY,YRC;*Ue^>1.49pc*X5vrH8̡~r Aƍ-TU t${aoBE0iBUo]% ~F算ûwLu Po{|1= *f=,Z@r8} ,kOYki7#{Daz"np~{E\LV'8U@COJJBAjJ[_a 8G.g2w֞:I`9=dC}տ#.JFi!|Vu[)U;XFZFBtmp힔9+q·)VA5RX_׮M+4^do2+KǓ Hш @ڰsW ULs[Au-J*A\6澧~#(q~E/rú~4ϕ~0sXqlP`Yǥ&Zj4EH V]쥆Lw'MWu"O|\"8RvΦ:7V|:%lZM5ePXHz!MWUJd㺢-O~yf+,OLq9b?e!8{wW!JC x}GA7^|}9J-GȕIJ??R'F@[FG&Rƴf`m {iqabPRnma5&٬?s1/׹p9MStgSFt^g4[í?/IMVFF53V&xNƗY|kN$/sa vU x4Nc 1Fz#p <7۴ YT'ŚmM#o`״L ˰H!)Q$4ĪSةn捃*Z[L%VК$CyG=?ΐ HEW|W`g*}&ǿ z |E> \A#y_1J qH#rEm&h c9v7z!F;Nq%mw_8O2dtlw*0j!U'54* B6{,m{ޡ/J89 F Ln4Z^Z&0$$G9!6L}]IR|Kar(^ۑɭ0KBkR<_;&tO0w0F%\ڊ0O%|8vr,i"R t$3~i lrtk-^QhLIo;XEsɹ @|uOpZJp\5PPh%WHgCuw!n̻__ъᝥ4ѐX+#r,cmBT!b|݋"ּf%biL|=vF RLkܙf 8)W?I5u}R)~=>]њ+ `x7d,F4?\&akD0DTq98!G,}1]TiN\\2N 6VY d"V9  ]iWb3ٗ0~6xc0]үƅݠ2!K46eo.,0B~((4SqGZѯ9u,sL[ l@s$c 슼jL<9P0,֡!nD\2I6a.^ɑ#~Lɴk~Λ[3$!j4dAY7))R|'LR9uVh\-_E |ML8:ށȆ෺[ں7B NQwPUvTJB+^S^P˰@2=QBa(j^W-gg:R%ωgM R2&Kry }")?ǩRIH^HFܢ.$j2j$"hоhSVei')!G=1wĉw3ZߑzKl"mkUKVuږ%7R~yc gȅflf ̨ik|tX.7z1P@+55b3EHl @ND F^geU [~Ψz<%_h c2/[O+C FLеG>YAӇ`y4z 4 @0d5%˰ت_5ɫ#xa'(e89 /ywJZEKWˁlQ??$ܢupSto4ĂGiq9.Dű9vW 8e"d?{gye`G>Crev%L|Qx핤?1(B;d_uyXf\sQ{*ݔc d1r_vȵ%dEUzqRf:[[V X^qG^sIb ѭdnX#"־p,E?fϤy aw[%!>r@_/o/뱳dJtmz3w{Z%mu0IniM\|[r.tT@0pseSWXs3=zo l 4D2beMPrk,*ggAm#uv@N҄PQa @C0Ǫt]#QIsӮvl@Z;+-B3ySuJjw|ڽ# 1T[UPGNq +-V*zTbh -;:LwMmJXU<|>'bWoz(dMY>]H/2N_ֆ4xB{qmY#rjx2tP W;Qq7'Nv]lBr4${P|'Vmٯzf_Sm1NQAB0LIKI[, enI8eXgcf49bw"jlbSOjn_3nC ʥ%ɊFgiar88cwZvL*C4!. ]Pt}pQ,FuK{yl8܁8J<'J"{ m֕Jro&5 J#8 g@4&G,Xh.E儨bMŎDP}~F"6j٠'˦tF=LįޣWcm`@U&:TʢgXHwbyb 1wn/#Ɣ^ 5bdܨ,Sz K\X? LJ2c%*} PG5l/q UIPC'Lb=JoANp0Kr.Js>u9wć/RF ۃ=gf!2=O`5dG'Vr;v4UMfm˞wd/+g"`?,3d0N_^K WmTws ۠߀g^Kh!ϐZU]|j@L3>WFo1\"ks j61.? U._ #Bڳ?.Y|g_BHVYd>_Z2Е@o8AbeېW&utR0yF(2\@ R,:Vh/0;1y{K8[`L1ٗxo*Wah-?YdBg.VE'b%a)(wf\D u3"a1-˸h-,ST}B [vFPj> #bY+6GzjfZj18'j@%d* 5eG;C u#VL?E G- B`zDyHp((0/t_ނd]JZ4\vǪCᷛP7QAc2n\d mxDROBkB`Mxť.- ȹ!YBNv]n&e0vhݸqG/z:< psXX[()bilꊜt6Qs(QV?Lso[ѧ>$] @!hzֈ Hz wܠq,}hf-T30yi5X4zB;qE9>"KVU{0&W}*SŞA^)u`|Gc qmrD8Z?HHN.f6JgZZDN.P=*Df ڡ:}2]1ίѣ^-W`'LlTicA܁(%RI[s&] +|} EKCJlmW-V] @9y9z,TD#NL `D6э>pL0sݺS)RaS6f}5Il=Fou{V"rz :2iʝaM8E*:2eqWc.E\6Ix4`sP1%N3-3C :5T[*=r`͑i!a岁0ip0 Uˎ%P{CDwPNMPhJ61xXc#<Y't촥Kh~JroDoO/!?ߍDBo ̔W`Q*;C#FD!:_ ḭ1 _FTjs^AZYa:t+\'ٷi8_} Qfxg$ ئp.3"oe5d-ZUvੈ(xrcKAW^` +hIh.uIr}?aV[{#rFDTcXƅ%mlaW x)٭!9_ +)̱ljKV"[إ q+&IH7_"㯐[aTDJ!SA5@ISo(c&pV-1  d ʵ h;%mtNL$&L`) Ṳ5~R"#QkT^-"Ilm:ʯtϱz)O=X]% )~+Cs Q]&,F~/5X0GsXw>Xk"ym#@}+)1h{6hxg4/TBIpk6^A?>~Ոbu@R p F/oW!VdEtJjOӆkOо#hA#|aJ.Y~CÀ;!f8MI&OV)}QTV`̲o!nF"l0WM$*7|9G:&ͻoAN㧤w>&wtagÍNeF_NLj6-N̯izLƢpXQmw}-6O._Wf75y eTpL ?bieVs \s Yfg!Vr PZ4MLtbΤ)z_# eqyE[0'#4!-JAo68fautBw#UbHʸa#yfv NPԼAI YXfYeնa# 4G 9gq 9newIߑWIQ=ۗgnTzN G~̴T+G`_Zgjm~ȅ˲bۙEU,oO wٽ<ʔYoh1MQO.=o717Z7{$qCYrTEG6sIUFzj<"[E ńZwlt7z[|5uHbe$:"8^3n'::.sCZ 2[U7±Qh  nis/3d]QAzZg Y/fr!wQb39bj/-B6#x[|񳪻~sͱkłpl]+c6^[rkwWJ|a\oW| ' cqJ>,3+?zѠ۽' [lf`{& (BVq>tݙ2kӴc1}N_pЇ=(-*,d^#Cq5N<߄=.t@"xrjw/Rv-d34Hw࿽~jvgh':R>"~&烉q{K>^DsUNG—bc[{Π1 lKL1م`uǟ8M|a 0tbDFHHu7x#Xʜ;ֺ+W%/?rHZ<M ~T<*3vCA }cWZu$2VGN<XFax}Þ[+{øSaZw 25$[, сUSn!`>Gy$5Yb+TyCVK?6 iݜhi-,hoL#gQP'78C-A` Į[GCɄ˴ ^jS5 4"i6? $OI0 7o7 l lƟ0ڌZ_IUbEMVnV0$PG~v6Y_-ƽY~^fw4uM&Y%A̧/7Ȑ@1eH1&]aCEܮw[ y8nzu&^kSqB>lQSb_[V:oR%Т1cKoNDIVvBr%T[=rj qVQU3 /5U!ڗwދ#dQGj47>|3}y9Mj- 裁mL7xBcZ.W3MT-0eg޲^}O?"\# w͘M8\1H ˈX1AqCJ腧0q7"2&\'qna!EB.ewc}ž"  ٙC cv2L|h(06gx?2v`tm zPToHJsA5i[^YyX]=🦹\VG!a U #u<-ԑb!-hm/2FL3ك$vH=iB>RtWQ.Fi *Pk;oZx_muIVɇ\G}F5#W2ǡOHJ"k`W'8BvҼF5 0JaFιN%nxpY,:Tb<Ѭ*N4K{p#'1v"?Xqs2 S'1YE)fA;N3p_" JP 2^rl,2<&ZD<@My^DZS/Tf@vYs2涢%Ahq, jum I4VnBx ߳TP.`_o@¯g.,憺KbTJM>1 zfGܰK‡2M |cbYb<ʧĞ8Nj,P|v[w`br观V~mQ`5 EnY{8D U)^PTxL:&b틅^m]5vVNmT L [1 FЩ/2+$ c˺%i6'P"B챍JvrgOHfq:'Fy;BѮu$ 3Doqy+H0#dZVKٕ:fu"(]BmgZ<CzjW[Z?uhN<[e DBwH:(p.qs Zzd1<}.LF՟ eD<` \-{q:A؎SEC彧E 9^ʍ&HJ]~*՜OS27QGo/ʖ^^ݾO.ɴBDiX{aS^v?w;`smJCKq|#X&I>`vKdUޕOl/ :]/*ya߂.fp9D%:z{1f~xn^wKLRѪƌ? ^[u1=gQ&96DѧhfsbX?FDsxW&}=.Qܪfa02 蹐߀OmH_ y]oY V T&Kgn{$ߑb; ;TuO8!"qe df AR~J~/vUi0=R.ܴ҃稘>;C/Ftm1_JAqN P( {a$[Aį..,Bei|T\ `'a`>`jMts|l ThR .|ףm DA#AπeΊ!dj9Fh%E,L)7pr7ΈD9A!E+Y=:"]^WI6!>H< 4{m]s&me^_V< ² to !CzD,3:;ʇ!iALYn|&0=~nTboO$)bKI?3:]KM'f.~ @ڹ_xVužCەYq$4]I#hU.mҩ~uM;l,CmN ۘI m~@sB g1VuEJ$loBPbb?-_3͆x6c`2Ydڳ|jT`RYD[צ9svp~DqQG3`$#|1~ MApFi13TjQ")a7@+II"9 GH6t,ā=E[[QHVѕTBFi?'rMAl-Dws軐w3?B'JiI)`GZ Fݱ6\L[}M&#YiV`s1)>~ti|>0oPHfʀ70VlRC~֝r"A%x(=)3xlm|JXjiBVKߧ%#}`~ҁ_)S.]:oxS6/`{e lEd vAýBqXe|cdUCuUwUfMbۙIɎϬ}<íZy 7] ;pa]NogBao~z|\ x#xʊzcU3[1>Tuid~%7 2`\#~=k[XE0E#K>ӬZ9ɐ?rȀ'D~``fAgF4]Xrйd5hd;qԯ0pY33"q]NWm\&,wpxXfodH a@RgRP:aKM;<(@@W')[YB }U>M 1$Iu&Oo ;DR[ ߟRL}M ^wI2IG^(>B1Gå 6G8~A.3t+ 1J ݥt%oF}o#qaɎdwv҆M0ƒK-+?rS'P xBh&had}1o}Q&tptgj$O&n2<ٺJ)'ړ=hdU*1K`&@ RB,hOuZ#7 "k%Q$ٶP- ~S-]g */d.صS/2&ca~5'2d# 9~U[_UnuW:w+BlYxuN>7H5^Luki6BKeWMH#&J'FV֗HdǁLm0)' 5[Zaz:&މrjq\A#_[~K z3MZ'~ cs=mQz!V{ љXzޯ!< {mDG Q+hjMH{HcʋI vaN$yS6Ŝv7wB{g([-{<9sNCQVz|rw&L0j%Wusu8\7џn~9e&bFҐi&SyPm9]!BrgeU#i{P@ t΁mpX<:f*C a˧p*3HF P q46hЫ ;ӳ+U/\zfS*4*i f;B?af7Lu[XgFZ^ Xr^@IhsE&G̎P2f2f^&l!&D5JB[U5{eϒ=n -Jy/Mo9EcjZi!VzXqQVJ3J ;zImܮ_:*kHa#h+Jw!bEYSmI$]#Scx-\Z&^I!hPr͈jU|9!'"\?df=h>A#87`MB#_fT xPcN8wRqBEۑ.Ri$zoPqS|(GYR SAq M^|_$X8q@w‰l!~ Ә{D/VV[Zk1 :y x F6u^MO4(@%_.SSJXhC%wŦ3>H~=ޗuWA"fv~C_kG.6I9@z-9)6Pv\f3whXVS`J Uμxa~:NE2*?{ֿχs_|lBc#}aú?!J:X7d;@1KfsŭNd2iۄ۹c[Ճ E&Y.6zQy R(VuWвԱ5\-Έ;wR.hխxQ8lA&UF +?O+}fȑH&m m x&)w T(H9̀_/J[@72٬"4uɏ2E|!jy(y0da_\pMF2y)GhG@Gs0![PS_@`t|GB\j!U{sgtV9zv7I2RQsg@\LPk%3'D hUf 4ӎJIplL|wTp3%թ~@#ylĽ2cdMEku~i9PZZʧmb,%Yk|^S.9a <n|Gi~d|[o_>WVS Ift-yNDqi_Z$D,tՒǞ1#.~VLh% An INgւK_Qэ"(bБIQ&D{L!X{i^`$cODT/&˂-q1+*bKGTU]kijnC"gB f~umao/6xy2i\{jYg/F^$ F)Y8{t[o?7]eJ< =GOKDL'=5 egw/`f\#`PdMjS Y}{oSMJ!kq4t}| Kͬ $ %eǸ!>'*y]4 u19Jo!-7s}@:6pDwOBAVNLHވlf>DBS뼓-(ʀ 뛉)ػ6~K*{վܡ?9Bb/+d1Fa.iz܃GG䙝|ݬt#~MJMPՊ&X:c*=8 cbB@X.`pl'y5?ZRk DŽ$?!|C3ću>;ηpLÅ-#\MFY&.m?9GB?2:7Rv~KԜ*AxP.fA/!NMoB㙂oݸGOTI ЫzŭW* ƀF_H_—{q./x0*N^U[`G<$*^5),ku0pX/J]ѫbd"pȓXJm@# aG-@@K\Yk 4H2uXKg5Dv=s+t&#%OASchQ&"7rhX~{ }@hd[@;r9YMM:`;,}c= ȳOU'|-╲O_ foԉΤX(P540o"gu0a7Z DTsĹ|'>d%LqtO&k^9aeo$9p;g=3e«+~̨Rq>CZZ+Cbu;gˈar5Ap; a$aOyK Ʋ# `9:匠̓w=:oRluh> f"<,r uW/v.8Pgy\e@{Myn4L:P݅g#yc-u[B2{xAmQxÐָ4Hߎ Mţ7Ho+!=CLC t˛)hZk=G,[LJo0ѱ%q!гz WGOeڜku˥@+IཇuĶ[l''Y(t^gG8?ⰺ'zr3Dbs!}H ~Qx 9/ -L_)|Tv ?g(`шϘpь鴲&8O1 OgXdQU[dx ]h!T7<"?HQ mj{G 2_|I ah@:Ԇe$$K4T4I $6+V5*k3Th:˯y$*wWi8@H~c[1C|}E;3pcotqjyZ u L!81Vo"hO3HVs1S.5UX-:($JH g,*ў!w٩@Pp:te/Ec?o1d6t8/ZKkh{1t_CXryZoי\6zJ&pW]2,U&[kbK40C9ēJFw{X;X§&n'/k5O+ѥt-gi=̙\J@i =_WDB?޹BMeB}Ԟ$<B3eQyyVo>Yt( ۘ<}NF璫ur^2ꟈ}]g=4D9-} cU_G'oU&0YGD ilh,s6?}SEŖ*K}7O0oO.[NNΞ5!D-RxÑ dK.i̞n3u(ќO$|^@iwʃCAP/nL/k[c6EqQaL̏hN w(jSŷ&tyGvh_AweI)WԪ`dDf}"8eS`t~񜎣sp]]WLUmRkӬibjmf#$Q/s6AC:a^ tZ]0 ks63 )-#CT0AMJJwpXT/reڰ(DخWZ%{-ZXl@ N_m'mm?ϽF?d֧ 9ߓ=DQMj]п%`D ~َ}cL࿲>Tߞqhv r:"(-P ;RSSҏO3(\CX&vz|NNTiJR}d2t_-k&l:8.0хjDM333ufƦ$惹(PR?2荰FF(AZn}Sl?dPCfmЖ.{cF؊5%>O_DBah )\~Vx\ te@*K?~iBڐhU0V;HTTIߣ@*J2WZ0x|=b ͹Mk{K`>#R zK آK+RԺ"^/*w[I.١KɑK/IƲ׾l KPok"6:]W _Vd)kYE}.iG ?=|xϵ篟UO k./Daf%}eBP6 r@moGL\s}qC'/gơѼgyZLG芖i+X21/Y |lpMgmvåIp*+.7igԊSMTޣ@̝+K4sf*A~!5D,! _K(t­7!h7ѻ̋Y./J(!:OJyŽ:ku1q)>j+I=0}}r]T;Z:Ȥ%JAd̺lLM_'S?<[0mNwRO8 Pa8BWڄfֱY1hv-U04Fy}" ҞbK ay5wh 'ܞܬwHxTEZmZlv39zcE,/ ͳa_%}F'cOidR* >okr6$WfϏeD#[%F<5%zۧQfvp5!kJ}(U'0} ^mdbhE'Ϋl)_x(efEk %pgUK;/toX ^*;l۝_F3AW>! Ⱦb&#[b?lnG[[?;IKOtEϥvZa]`N"ݧ=Br/Hx㿯=P;Dݮkӯ1߀DtǫcZ#> ٘p/3+J;D&1 /;"Pz9у);2znk,&o/?b@M I/mۿ CIyKѐ%Va9DںChTg.<ۙ;'huNuϠ fz΢zj sm?t0ԽfQ!d,1@8NjV+\؋ݒr48`PC˼;̟@lҿS)"2:_: ArdӍ%,C54Us: Xezt0u)! :uTw6Q\ _lsSHČ F ק IvaJŢ.s%ʾy%vX.$}w>9WX #h<:!재jc~;[!R@)$ wRL@{S>d, &B_UGjřaҋrB7h"~O <ڑ=pw2,YNzy0}/O5VIآ v.cJ,y ȚDtҍjÍ=x*L"E4MYۻ""f n)YoHU_}SB.ٞsz猏b65nHŚ&/ܧ_{K[E):.%Y~,X6mxr}Px+04NDPg3RVKsa$7BYKrutn7B,Ў.Om+ =Hf I˫~8SoeJ}iɺj #ϰ++7׈ʈ%w{f@vV%ٟ>ۊ> ˵C;mL ٵ{=MGl3.&HQH9l%^6z|j.BwNI;lZ{,(S 2!|HY|FyjU˃ ӎ'IvlZb4\y] 5PwjC~c>ӗZcW_wFC[))0hxɒ& wxDJEwQEzS[!nm9w{Nt?]AonI6n-53eiVx#ǗY gN tiײ3UoQձg3Yp8&9|t 0ےC ϔTe Y&*l)l3M`vs{ogirdU}aUofdE6J'Ѝ&0YU+95l. ےۼ _7\!|;d[o,gPLXKAGpy FYd#TΌ avx /Ϧ&mϸ$.X͖cM5Y_`dy0"y7 yۜ7xc}3?GOމJI`4jc*Ffs9@g$͍%OaK,G. +YoIpFHn Mg^ɲfv;l˜UC!C$W*YZcE%pΔ *xzH8@2R-}AiFKu肕H\u_K58[.H튕քRZC,:~ͼ(R$_<6Wgm7`u!l6DHL&b ӊn3OpfzGVe*Wr}XFs%*6't7#7/uxk*&WÖ&ۜ4 ҳ+fSB]!#S}\n]RZH\3$?dDZ Ǣ;ltѵMIOM߹ 'ZrmvG,OA36b]cڟ,Y~`P:_hڧJgջ!@DF!G|]6aĀ/5R{j2RH^#R@BPI-ċoX15vJM~(Ʀr1 ßcF^ ((=e:pG1/`U|}a}F`j(CX[>B@PeI !T?`0 [-K <@c#ƾZ9E6HjǃOQd , q;/g/ QQpi PDZĩAJj?ɦ1-Xa郭ɘ8/YCgOw|SԇvϒhFʼGDv&v=vQg8s\utL-酢nf.,B<.U 2fH.NWra@&.\-,ZqH&`5ʀWz0~ZƓ ; ތRjE  d( #Yt̺ݳ zG%V}B=0yF8c±hū)|Qᠡ S珯#tyJ6 2ŗA`Ne&cўО#мOͅJ'9?4j~%i۰wB1gpFUZ j]ӽ+>#hl&_-)Nܝɾ&%BeQg?dMVIVK aw+Sz-O4u7ѥ%:)zxx2/i9f1;22 AK Qq0@M;\_WWi 0?#!HgUefA[#ǵ. UR/\փ;[fɪFr\3gȝW"HIbƁXM.ٺt6dGR. L|'[rDaXi ki&7|zcg9|R#˷PCt8;H z 1uJF{pR^XVeC*2RɞeIxy[t"GzK#b$RʟqZ ʃf棃__D(2fPB,P*0j *Y c~ [?Vjԙ)7I/nS50% ztfacD+ <赙9BL=4f3+ȋq>QGL0Mu;X2M {c%3ax(E)E⤓Ռ0{3CSy%,q+٬/!1s!ȇj")E:,_a ye_a< w*WCڏ̪eel[\mr SąԸ_rEfm-DR26/*FS8V^ѽ ^8Sefks,$̘Rp6&Pehu+ ٘1g8iw n)_ (pcm{G":W!#9бR9FK#\ OjE#R)'A*ry`/N~Ft&ɓwgUJ^l `E_Ej14fˀA"OiZ"`$/ mfzS QЃ0(?N|YW/iŞ/I}K ` 1wn д>&ɉi)BS0cOۄH%n֝Vob$&䯒چ2ӣ8IKT'nW79أfbXG2%UU1[@FQ8JC!ϝ%dn }=+!17>AuԛRS)C[g'2jJᖾUɓ EY-'>m2&5{;dӔDtBk?qM[=' /Ί,r?5-Jޤ~facЈfaćx3?S3_gCRY[D [ /|gsq/d?RfsMާnLm}gtb;n>irt0{[!cEbocaxCwʤeZ_Z?F[3FqQm*{(jVX'lM([[zs]+%Og&l"RG:!A֒.2>_"NX'Ƭxw\I!Ρ^: Ο 1,4lbZ'ҿҴ3]hTCJnZ%xuv\aW !eeF,cE!R]ՈAFr6, 9}ŇD kB]$-HcY0'{Kq(J1~p.= > 0|i]al8?PJ\4{4Ο<%q'Mgshu{{g4Y,D˗3hLrb*TWv :qB?04C^(mlưvF u[15vV -"ZqgnkbnE? 1lWŎ!J8'][iZiV'|<^ק\H(lz|7mMJ8Еvw.CEl:K3 f" ȘW)K6^5^y/}v4-AQε]uDj; "KN抭m?yxSQ\P0E/&h8_SS+ǙBt2>Կ9`=|n>Vtݑ !A? 6ȅ>]_`C Kl3M#ria{^O}Ԛcz%EaGHA6a/5b*m]΃b\jɦ:ݎ;Ų5)l]=;C&iʘR} DӿIoߡA˅ 8rwM7/b-~*Nj]z5zSsٍK 3ͯz(t ˠh0UXk3Hjf=^Ve+" 6N# }ap5IYM[(w3r)*uϥJvy`f19= JF8}*umhnb+s:I )?P$|Lj*{$NQc=$^KrYw#Gh[S`-}4f3<~W{xv Ϭ7zO7 < Ƚ5授|őm\uƺkٲRa#QW%Hj`9ౙfܦ2C_.)>w0 A CYs-~nr {_ѿt=ˀH6mJ+~}4 yA6=|RaSۀ~v4[' bDO o:bp#{I1dȦ5y"y']4X0O!7]D_dC )q "܏yZlkqks< @M?ˤ?y47Av@h [/pIƫ2-1onjа&{}#/PZ6C2k՞çpP/2X5!iHAwbE&4QNP{f~P|3/:pO.= _n ƖW@"bxrBb1:+ Ww~`፪WsUjRo֙vo"!"9J[(9i] k9Q`~sw[s橚tJcrz@7`zNWRK#I:q) rȰhG<]>ӊG`9h܀\_؎z ĹJ7 OmԆn #$78BtKxF OϠ]huyjO3LX_5!#$@橱soNhcFLƸ! ,K~\ $H6/|[j@Xzp Sֺ3h U0L#)zI?f3AKgAU_s _lqr?A꒍hmEq+KalHt=nZfԕ<s^NֿiQu*CՏۙGLȟq,r8OlλgR(BGAg}7= 馐K yKLkc"Elju[Å',tVkV}Fv(Kd[-m|{cr~Z/% AB5 4ކR|؇%~"ֺ\ՋrصWˈ<4x`FZOq*a$5;7yP<.?K˼fj0N%0G(>A\ rBǎ3Y^H"5Pit9ǵqnzu4Qߵa-x#U}ؾ3jv*Ag6ᖈB-}}SR5,}h،]囘#Hxe8ӥ(yx4u{Yhvm:Ӈc7{)gy/U6&Ű t;̇ӐWGyKH| !PSL`(ˆWբL|S.Ȱ}7 ]WȦ7FIG iĬ)q t&au;p rº%Ԭ):t:3Ps_#;)*@uZ&Ű{O}3D %wMviU>ֹ[![1dKyq 'ݑ7Loy`z7 dM;# ȄLiYK\,jcRo*]E\vʶEi$)QA E#06z~3կ]eYv钨t+R1 ee(}Zi ggm 8bK }GAe30Y>cy9:2Ə\OIJCd3CtTPg`vn{='̓ hhV[VϰJ{-5~?yo[(K %pue/Jm̲Cciz:[$G +|zԚe!XҌU9 2.Th:G ){u/1blW*X_73np<^r=eԠeyCtaEяvpz:+̓6mUI |*^>'(YuG G-iYX3oį#|1}1yDӖãyCODƄh'SX Tp2IƘZarWS:KJ ow^9UW0QmwVlí&sg)$1a&#y{OKH?FQER`'iƢ SWF]7uDjKWa? nҭoqqs&MRU CS?߹*} }a <@ETwW)iN}ԻŌp㩉u.U`{GO`R{V !M }Apہ18dxx OiqN/=r%O˿eo6UaqJ,:`S|Z/zg]3yY{ vB؄v:megB9*VB-12] p?hRWzy΋ =ofyQYѝ$J---8hm†lgq '0ͩX'3M'y5_eh8ii0#pЋ r Ţz~}nY2)mt]#Wna! `:39 ^<_LKڦ,15q &YHh$EMQ J!3N\" v0b@ g *OsCW,j ^ ףo^#^̐j dAԴq~Gm=2n=?\E{넉2eȃR[XLzW ۆ-̇eizIKЩn'Bʇ oO]-f.B&.6fM| x3@EɆ9{._nI1DWlh[eڜsQ17*fmd_\_"kwxUc xN=@=ԙν"ov9Fa-JZk'1__$'Vo/DFOΖX+J] `H-ōpoq[tj`5ɾQ(bA#;TH\sLLpses;_NoG큡s[nǻ 8˟] w!cRꘐMϬ}9#<qVǂ397R,,$/\kǑ+h8$̌3S.1 x4xR kq[ E8Rz]dgՎ4 X#Irޥ9qk 98 t˄&rl/i7QpiM4iUvL 4?Ȯɝ9.3wET[M3e <$q;8OP\2k_b}儎=&~ /WwaõPrF@3WCA[$Vcaq<".A)PVс$&Ct?QVu>X:FI>+Č=9JS8bN>={ּХͭs E+yoK0Oc`P 檴bCc*^սhD9 Sœ;%G&*\Pue#tr"JgXl뼗Vx;ktUW#f/{i"K As98vKۍƣE~'5hv١X瑞UˋDžUW-sX'#NkVNpf0dduc)jHR(MH|?mex,om&NYx>&QL΂C[-=v8*?y#_y!jַF94;$A4&\}))RUة1~1'=_|Cl s&Sc"gغq;a;ߪM,W2΁2oSY>Y."}JT^=ȗbEe.<_nrۥ|U84ꀸoOX,*pE}[z(E5[I2;paoscz|-]>R18Ћv} bb@ Q;&誝dO0SZxFϞ9.2Vfv :t֧y'._;\BNSB$i9~d6o9/sN33krreZmvȨ'6NSJ@YSK:F>SC-j_8gJ6{H2 )6ͪc Xùف[IT g BPhV FkS։z^铏>薴JDd84=H$<{xC=a(2vF|o]?}?`$Ȫ` dj߸hX&7.(\첞ѕ98{WGD;嵯 5.Y.*vt UcC4%3)H'>!S 1;^NomhQ1') %d;ih(Tv c8L(u)"R ,ӳ[v@'vzdYXĭ8l;:?.Hf K/  9wZ/ޟ|dq zo#T B>Zޝb28S%LOT71I0h\}al(Ձ6!ç.LAp'q?4#{Zz $O+GM5pNeISr QvDpN ΝPMH1WGb7t+ pV DX1틄z X/Oz#F)zBuPNWVl6M_evfc&'C$7TቂqKͭN;iˈLNˑZAB㜖\JxBBxQR4<{Yi@l썲 `̴l{3Bx$H/Dr8>̪b>/Y7*d~5㭻5i5bW v$}s!7\^].@#Ԍ H-g0pnj3A/6WEF? v2w<Ճoz#Joq~3I ƈ` *qxa QP+]}-{szag;K H J:]ڸC5۵Y#RP(Um0i{jɡLQ0In"(>4!z;e1"fI᪎ŘqA bZ:p  s97W (F ɶ \ eLpn? #/q#b`),1EO_n)<@^Rz7M˩~ߞ R̿hϝmlDW 8LeLsӾ\P Jۙ?5%''ٟftCVSCSN2>ӂQwi񠹨@.KH} ] dٷrY>7 11%ܱ[hy9"hLHzMIg2T vy܁mͩ)=賈k97L邭$X箣ۘnA/Aݶ k3QX7Dn'rHnK0Joá32k ~=#PйϦ}=#IMhfl5ڡjUG˾ґEW2! (Ja 8tZ`pir?4ΐta"+6g `x'9|_~ yT(Y7k(K{`K =>vX[&nj@6!q&HU]3FMpBpo,`#D㴧~F QTn_]%]vu\ 15#2^,$ggü;(JjjnWt,ʀQ*Ɂ| ;4HTlH+[=!`ύI(&yR"kQr%ᔐܦFe푄߂iI/iKLBk'(߫2 qno~2Y F]d[K u 53W=T~=11B;Ɉ(%Ga^eퟧg]Uu9o@82jP<8޷Yr /T32b0;rD?1QHZ87ѽY<6&NJ곪ic>MViOM[ ҘA(M2^ WM3H]"Pݢܰ:N81 O]ȡ*w$7}x(G?A.qiV~fAܩw뀝["%LUBkqRE7j35)|45U; D89#)괳] h> e;vbz\Ŕs8]GzfT->Vǟ,k}LX(G,dwS+gyR4.Z-Oh;;FSx7 dB5q/a'W#oe ϧ6RA@1L&VNyW_; !| 1@`yሑtQJ.lk?I?,>IUNȐo:ܤiB ^_ՎKaj<ɛ0&¨ lЗf)FF ڭUO 촼/ x&oB=$شeFe؛>6Oe ^jyZV-j3~|;xR@b%C=$Y|I͈A4uM$ y {uQNJQӚb7: ~V%Ϊ]ȝ̅`YFП"{0iJ3#lC1D #m %!)A,H[z'ϣo2 ykR; <[ Pds!NFf5zڢ5&PCa+!7BvC˲՗1vˊe+^QQ2 &Yb*y;%l IF@L 0$ؓ?|gᨥߖ.% ;{⯎Y \҂O(لOL:i?o[f_{yK7"Rxj)k ~Z ?L##9VO-!k5ܖr V04*>lV48*/i9|Ɵ3>x2"gO$p* JLneW_YwBc6 숧-1 Ϣ317x;L`=JL:P o-θCEL_j4Lḋ!S94n &XxweM-#J*_:VrOh¡}Uxx$,qjm6 ~f0hbZMZbS"+!&úlc@'E ώ^y}!,-sQ+(;VǀRŔ[ պn.j/. 4+(fQAkQJq͊VaM׉.뼱g n^8/lbF 5jHhi yvSt4wK;0!@`'$NxY]ͳ8P]+u:NJ/p1Xcכع*^10L_ ~!qR%(9;wY˴Q>Vr(^iDe~|̎2yd!aSJkAC8*{6v|#>ÜD2ST)K?,.{+ꇗLsy)jz_YkvWpkVZ̥x:VMzC?& T*5[Py*Yw`[E}8ҴvZ>\C"k`L:9=;07X\Ŷ8Qy㍿;{mEU_̡^/V *<)UY!j1~Rq y=p]uJH=z }?zƤrӯd- :X=/go?V8x1u)8Q> MW lo47վI#EjYawq>$b:z%d&QeO(MEݡEXnQp@][C{`#BqK8sjM3O3<\nѹ˓PS+aۆ΢*YOfU @s4qg u^{ĘCo+WF"r*B ΏoVkIp;tGԉ4E' =ȡtpZ?ۡ@ev}5C{n0>A1+cO;] \ѰSq&-A:u3=DžO4]bRCgdžy^!Wf?«Xc#7[{PĿk)Ⱥl?jh pMvVwo ־Ԝ#PJںߚE q⫞ʟ1r@:(>nWtAa=Op!{XhFRVܣeFJzc -d&t-QP^nJ({RУw0)ܒCAyML;~w|Nhˮ"=`Q'Q|L&jQ嗌6 v :]59H-8pȏk=׷n)PWi-v6(+LmzMcGA?TG (o22nG|wY+\ڵ;q*Y YBy@U줨UMnY%u;Dзn&pơּ=Dx_L_vߚU`g:b!GB۟ `$zA W $VlD*zM5gmїJer!A7ʹH#HzSL㸹 A9KɅ[&v+Tuf(bl; wxÝABXJE.zK&#% fOΐ-'+< #+jt`zQL\+o 8V2i"3k&H%?׊qGŗwHJ|G *4 q9U) UQZQhuӈ9$O̥_FLTʮ,B|Rh$eIv.}#A Kǎ:K*rm*!ݑ# RLʆV[O $Ks/+# 36^Smx.T6{3$a$;-DUg&P=)HD$Xj9%LUR `ɤjOxJVXU[ٱ+ީ,md{e{Hkp0Nf>CN~ -qu+`-CR|>`zӼKJR)( r8G)-Z3+\+b+(JMbٳ7`bqҢɋ9,SD+5(D|'X6?Qq I"K'{sR$9v5`B@m3KNu՗1nFmZJ-9sJl'Q"uǖK"ӳ:|{%U'4BЯ(;h"0xˊ]q^ٕjbʏgX)YŖy;C=\Dk3Z!tNl | t8hoSꀎxUkW_I&z, 11"+tt{;[ugxY>{BlkoLBxS9ʹI@\;TvXtskNum ی%~x$ֵU&JeEΉT:Z$K`Xz=u_fVijiEro͹<.s~O/-m3 >AZ1(ra`$R5[gS!sC0{v rg}-r&XgY~H乱|1W#2 ${IvEr /2ΕHsj L֣mE䦏u+ڑ4;HZ{n=֖֒d :"w*Vb¯;}@Q,biWИ%3,t!V 7.WkOZ|J\m]OYyPU TLb'޾Ψ0]j̺y3'ji>dmݯU6~cU`݊ѿ"mfX?*l;8hgmqpyCCD**m<59jL&__] t懣>SƾwaAE>^;04*;E*Z3 4Ttzܖt=/hZU[y2r>˥jC m) k+<@ Ď&}-ރ,3S[d]4S 5aGXztڏIҬk $8п CL.C4Cۏ괰qכ)M!BD-@dL٬׀|&4GLRTEEP;eY‹De4:_Ӂٔ7ace/'D8@nxAH5^`WxwˋS8G,k%+8yB]ATy]2g?MD }-m)|f谥Zt;WNDKhF)dz$ݹ;6Қ-~镔'yNe6fI ՙpbv0?ނE;n;3r j5&oO64s`Cc&2b< faJ`2 mi I]m.oji}OsrlXk-K"nkdUk!n)ދ/A &ϰ4-K1N:jtg<;7*1<[94UBjSr{M%] S)pxum91iw[u[o?=EMsZ &DTb*˖>cR[Rv=\8͚]B=i*7Q :ô%Өv32;O`6(!xМo/'@G_45Bٚ]xjQ֍ ,jM%MŭgKԊ󠊍Ks aiu pvtg saU qDL^x 13d%]r"v1tŝoSഅ6#eiBApv@*LnH(~ z34fSߚ$rbJ4vxN+_ pf*j޾UDN?X됟;zߓ-RbtMRoD?JT7gb]Z0|p6͠y*#/zcrck8hcSIS?}4Y 51tꈭgP#M4a@0 gh~&Q0W@C8Y6pIT|Qxw{Ó@ɾEN;7f5ӟ/ ]GR--U'ף݌+AuVZfNXr$`סg0;)eLޒ/LNТozh϶ŏg"D[qfQSK bƊxqVxUkk'2qB b) !ji\ᑖT=2THPuulSn]2CUͿ `c^oוh.`rtvn)jx~9!\-<ުa2 >9)a,.{By(:y9;U^BMVTҟʹJ[DS%@CY|1T/ DQT D$ [dEƒ%I>i\ȷ4qS)3r ׹ʻnTPЅVVJ c9tm}KLXq}} ާ}4U4?IX7 id`S@}|2Wzd'Zs&L9w(3&-􌌁qsR8ބ:a֧g_ id>H[r}T:J:WLѣ!ف] GO_cш@MRNwLB4>23Lͬ鰂d^:=sә5{ 4ZYdc!aI]i\#;m\grPPu% mE ( QΞW(y>|Egb{® 5FpnetoRJd'mORٚ06GL=zs\eܥ+ 'ʪx$L,sZMaPP ,"~&I Ru̗! -ABzPи04/F6'kz\rh;"H)(c`[m`ȩP~3lODG:4,VQ&AccH}Lr5", _IkQ(g'\ł/9q%iKHC멐k;N`a:CQSΤ7, ,SN1ՙUQF W},wi 0 #}Jf` F`Z$hj<ɉ)V"[G{-੔5NTys4)Tfɷ)k3ix2SLULuGC0na׫maݲI5(~ݝA1[u`&/uQ_ootƘ O`3 LɥBWfFMĶK?zJLxP] 3tJ9^]hlOU.?IU+*o /:FL j(}YjZRg` qrD:3mA }{`/{ԫ*xEUNrؿͪc>pp %H*qWQpWSiQfrq,ĝ"qbXq*5fdoS|GN3*a-MUp9wUnȀoJjjl$gvգτ6#xNB l O K}6X%J`;^.z]P_h U5 4Du)XbSmB-LjU'R= %Ư(NC ЖfʶI:f;]Cqc+e 12?yB? 8˔L*nGŊgZyrӶ9tv98UYH2U_k4lY)?sAH%DC} W#oa1=sD5ْA>SѵCkn1#}$fgX;Z8;AUe7(-f}3Vh7 Ogݦj3vb!Ǝ9K%ZcB9"WtXAP XLS-Al'/Si 8Z^gl12\^OeSR#W5%5k9v*Uˎt[ZM+3%Pe=/DNF| 6Cœ[CKu Khx]4hWؒGM9EXw̫{r?y$Pm7L:vo9X7gB2V{1\+@| ͂9~j~cD~@־ 2P%cI{FkaCk>3K;L$ڠsѿ:0qnP+79>[u/OGÒVƂ=4`s} Y" 1WHqpf5ٯj{ L"t8՝"(gC7, ӆ}Ւž&u9['Eb0g=rGu- }".E;v)s.$pGX/۸eVΧ%HKW$);i$#H07pߌtRF# 3lC(CL 8ۧM8^<%N'A/cWyPBu}`<*RltcYtGg.=|o ^';0@5t븄Jnz۸ϟb> H]͠sE$&6O'j8!{ЇɶO脴ãb$?gOW:3t5Ʌ۶]%'\ۨ7[mDG{zw}24 SHY޳;*vf'Hz6I)vL=z36^]b]Vֺ2?e2ӼT|HmKZЉCHO<⊁-D5`ƺ.ZuzRg)re|kUz̨`gPO$%FzQmN.~N Q͘NkTP*A\rB؊do:Zd9넀ѝFi;IΓ?D55xçNlJ5~yga!ʀ՚]$>C K16o3w ~\(ۖH?Z#Ddrlh0EON+{w1yxDDdweY3O#:}CJ1pNeu&Dȗscf#!g/Zl~+K騛͗UM=(k, N!$6a-kDHI~'YSDFcɏ묊&TU6C[F^y] ঳@i3hFl]8%IbΣ0GQ '>";+L4Ҁ9ܬ^1͏+7['hƲTJ`Y ϩ8te,S-(j<Zﱢ2Q{ 5| iB Gtj)(%&Y(_ Vց^@P<<]+)b] cC:_' Cʍ#;ms5g$Op(>[7azy2 ;ڰ: 0d=ơ RBS~Fpt|_ r+90S#Iʎ"">y``Yk6=zg!Dycg w,w sGqOaKT Dܓ^V |I$Kx'ŽoNM 74id}5V”ŀOAЇS { Ip$dK!0]WrVW͜أl7J5] mYۼmewt: `Y$t4*i_TJYTEp\c[]*︷ů.)kUl'/2 2"pL[; Gjsכ hAbsG>rQ88&e"&ցT] VXk4؆8=S"U-\mbF4!T{v \k*1RNKh˾Rz{^t,r η];tscc2ZA1NQZI vr^S)+9lmƢ{}ӤUT٨?3  0͠뙣a吾܊1}J߭{L{tװ$Jb { Vw ziu~E (rlL]8w?X*3fi{*F5?n3*, ' ݈B Qy.ZtR]xaΡU1LވE;q{EE`arw/ώssvG[ MH~iP>2Oz1z3#Ξ0>Rp=֑6~8ڠmH)'xBƚSpIMd߃:awh|Ll~^r1iHP*y Xλ\1.i]nexD~$ p8cX;]C$/vdF`kj"&!wFqRB]=*|SG2Tt$ˀC 1HCzus!2H3xdD{?DK]31*9 Gf9HV9)Yʈ^&UIMy/YIÍH@[Qxe]jM dfh;D0.)A&vϕBTdu]MK0ҀL WMxbی$HV1_֨ * `) ׹S;EG.{1!~ e{z vjV쒚`|W wl;DA<<| >1V 7;N0*ۣlM:103v`pzc͕i'lF0y֭ gqnEyd{0y ڃOզ]"OpV׺X7Å'ؚ/fXԂ]7w5pE?S מW+oLz揾A㜑!ii졦6a\J *8F a*B2튷ܓ ߖߥ 'noѓiȼ_#!otiY"KjTLWt8*͖i }NfAe=סsa_#af@''kNnB<~FW <{#O3%0sRC0/z694YC+q y9j\bcfsX'T6<0dřP̣fO38 P}!g)IhH)ʏ|jIqv*[94u4梃 1'-fX~e#ދq3$x}b `ѡ@e'EhH!MGSR=h  ~k}lwIG2wV cn4zY".2wp3&Oc.`dBVu ;}!sX826`Ӧ٩XG ٮgD3 pecttAxSQ=vQy0 đa'`|"ǼAZ!R;D zPf;:6P57"r:e%Ci}gE(RbQV<1Y!Y2Y1a0ltUNn[p$C:f33GZ }aM!P!c7$rG;'$!\^`^XMDٽ\1#3~ xO-&E ?AU*˿hb7k"XMY,Eb22skƌR v-,4ݯ)Y}y~R}Zǔ#n d+\P.AjvO+ьz>r31>m 331C5pK=FǗNdevN/uwTn$G̴e$y^D7IF]Na>^;#ygdh|pHH<-Y8_GjJ&]" #NuLӟjN)=1.5~Sl'?S~l+U{Ht ~\SQo rƁ!f׌kAVz9켪lȞr{re<Bs@nCլT 4iSP-#Zl}Q[’}L5a mnN#?xEDgZ Υ/R$7x uo>imW?- g`6B\Г4YiUhc-+|lÃ|>sOE0vf _c")e3o|=Q"cX07{U(Qig!ҋ:,8jmu~"w~ 8d{c&2C;<2qWnyqXDuܗ樼Xt`&k;pt]oh 3(i ؕWG+Bd\+%[u]51/AWm5{4*?<;KH V[H]5!Xo_6%wrm1lZWp&ȴTIi\FEq᭫2MlHGLnV9ynWu :S`aPt1 ]hörRe?By etT?y!71GKrǴf Ks#5&1U~~҄fOLs:2_hkyAj<ԗٜ3TA wQp`l6uw[`s(?SC˄c` mOSgYc^e=ʼnY&tf6bm'Y)!IS]׾GMzǥ@AfZm7nG=S&`mMan+3ռ}nsq=yӾvfB *[h'e hMxen!hCC)\{Yqw4]}0N θ5×8v_rQ6m2\/!O: dYCHe+T!o@8_0|߰u^{?}~Kg-.XLi#۬wڬ ("P#2qayZ1^VIJV'Ѐ ՞ԞwZ keh%HشKPC1tF$kodƙ²&o.?HBzg>+um­㚁12%;N{|hAU(O4xn4Qf+ﻲLzuFyXՔ({Qƌ'pDb)ΘE Kv23A%ߍy2ˮ?8XEOFL9ܡrR1Û dqL %g6Pq-$KB!=W7ZZ P)۬uDya,SDc1,N(VJ_a܎ lvvm(Tfǁ'-rCb n+-oRԀ,Hzf,,OHĠ| @PF~|)6vK z x*1N|3]E 3ϝhUvKxRtJC :-:bv P8DLY 8}ZGZ!Up.H5u)7N~3Cm!VdrGodC"[Ɖ{sV'/hC`"YDoR>ߥMisp 0xe.cЄ:4$%Y~k6J+m^Tq:$2 @hծg9n]bf1މXv.Θ@o!ؿ"+j=y?8lQvo(*{Np G3/%hZ;eկEPd c#9cPΗ"׿oDJI1TN;غ6"[ug:;AJ2]*#)( {Y]Nסw !3ט":=k;^*1룕Mwh+rt~$Z6CNA;-b bߐ(>9K*C X/3싥`Tq$-źH2ЭZd h} + ZɮTb O:>m}=Y[|hbO#QB03spv.̬$E B2}qAߗGn8NJk TV6HE z Ћ۔԰ ע@8Tt?wKy pY Z M|- H)nhBHxwԌd )jDsbyaCM"6 %*ݸvgR UpzmN+W `M79]{ m# dـ+s ç-pR$ӝ|w9/*]a(rxs)9jԹɎ`,4| La%VNՐ=}{R.Nm#h݆61Ҧu9ۢ"݊ cw*xD{ng9KٱyϹKs^2u.d+%ዼk 0sw@Ǩ]+M%nCrkP7e "=,0;$9?Wa t_P`nȚVKjAK&z.:r%-Çۺx k]nW鬂/o·6?g_HKuz]pPәIԚe`w0ck'^rk]֊ENÁYi y5go{i.C $~3oͧ@ jU/UJ{ׁXM⦼ ɚ&:r.q-ܨX[|8/h_ENLN!b쿡q"~75lpؚW$VOOzLR49F ϋ'7z&Z@3eO4BNNO]{p:G 5ハ0:4<;_%pǧ+Is쉈CcK%=;eMaA ; -o}ni>f #alR$aIE" 5c0 עQ.H@ lk""ţD^4d[)MSaҵ+^[z;h,bL>ӑ duY NPs. :L2&Uo Uy48P_{uyO0 IӈɃ2?P+)-ϡHLn])cTm"L> zm-c`a#0 "@zUVn'υ8@uk˰2K Y}@;H !Јhet1I–zvܞ_M0c?VE1]:@%،!$sZhK;b}GOlcbW6!I_:4آx?ghMzE 7c-sŧkGE~DW۩9[{?^1FIʏ5{se+p炛."^[è3?܋ʙS ߆-pa+{]mIUQԈlǨR%y34.G X\9ٳ%&Ԅ a&А 2hC m9H$ȿWY,۝ q,c7hZidί(*u%@=fD֚QA% n0qh7&S7y*ul,3G|o_m(:X )]CDQݠs~HM$emp۝9Yl @4v0vp3=LV&o[e9v~Ⱄt :Ś2nmG(8 f͘r,V]3^;e/4gZt7 ea=(+4(_/ͽ$9 \cw^Hz_LFfoE O# 僖PpOp^2zoE7V~ʳգiuY%J)άz9%LQJ[dF"@=-P>yqjRֆ: +ISy󼽇&qj&![{BS!j0m77Ua6TșJx0$d@d#kB6Zr`{3,Y@!\Q u[g V赵E%z0QN?״2Qzc:xC ο/]I ؎RfvZ`|<<דrW(?8 vh>Zt^MiV V짡}&U[(Img 4=-+V]YkmÝf2etԼ(p;qϞDO瞭u̽ V*WV%o/$7+ Gp|HvAv&o1M,F':k$#3O_%#R f{d8y9!c`RY~Iv<.b e*&M?JgdTɘOXHl<nyrMIi->ϮGC"ZV:'˲3(fyAP*ŗL:AY hۏa V;hr1\A 򧖢|rٳsEphNa U@ I~`})P+!n+ -!}:/aq#_4f_EV[ Fk3,Swj Edl23Pn8d9+XbyZ~#@-r#&<:T\59]SA "$$Cb=5 l=bYCg>, *r;2RǼK S¢>^Hߋ-2;Zcƭ(%ԣ╁S pW#=XR6ĎTc7HàF@,ЗĺA#Gk14, gca`|l8R&>r]K_Ц \DB.eEH[ls<6\%.8bD'Jl'14H(@Z+9U3E]kTO=yB3 ]m;g_fvE8Vܞ֮#/AfNt'a*õ>8 $D"&*j f`ֻnl X]ВYObAaS4~L!hiAT'R$%})<{o=gPHVx"9޽OSE@AYFpiW v)Jl6?vhIp%ݹ짼}#}Bfƛ̡m X#=Pku3Af5+0-Dҗ̉})(@qeM8m>1n&΂gۊ EC`lr# ] 3u)ZsG'n I#k}1mB8ů{]}MFgRR:Q!Lgm7Dk.(!yQ%+Tl5tNHVkG8xI_޾M/}a.vYW&T N1MG>G"|;TێJ=6g΁2I |hI>'!|7p$? 7|Y$A­r'E[ .Hܡͤvx]C O/ A2|ז\KNS 4k :5e%Z ^Zm*\;!yUw~uȕioRK `L2ρvn(׬llCeXİ$% ^>5BK:%aje>:je󧹻q(7Y blS]Lg_sbxn>>qӦۥ ѱ.s')a:ԚJt7]?ֺ0.(=!Tf=&qmtZ^qSsMJ*ZHhM`u?KhbZ`C1M?rc;-ک V9O- 6[~ʝ(0u}[% -W5;!BO-}}/_Y$}҃X AB #-R* rų3ژJrQm:]ja"gR);1570UFfF >j ڄ)J<ڭXÁ;ӫۢ":0>F4́3uC?o2룹\Mmx+Mf؀(X[fwt{J^̶;7rIGv kAolA.g^Q1 ΨhMELg6)f zR0F o!)Zai~A{{CZA_S.q g5Vi=X@c7l}q@?IC8bw2psl#ެPwp2 5Y$k-A9 vw 0Rϴ@u1a%+D\0P&:W/iV cJjvGH(RXŷrA1B?Qta7x[%r0j^$e,l 4?CuoTG/\r +kKc9w&6cDu`'߭R&x 0&ڌbJ[J:One1vV.^eK[b-I$%|u~aA|cGWnMK&΢rLSSBM9  Wj$9+3zsdS4Ko="hCl^80:p A>}q;yA LnwoXVcɖ с_ύU3yLzAw=&۩C=` b~@oU>+Q}p>$GذWa!c䔫}/PW\idvԂb܅Hę 70:lN q!U**$Ӯ`GӞL(+gpW൤~2o5 `޾7752[F<66t8''nsA!.1~`MjnMz!a= ,ϲYwntLp+x`{GE-q/%w[mX'%4쿟M˾-hZ*Gi{B+0cJN< P^AS`g B jy/XSB‰&k tKUT jF6,G|Ou|2j<_8`{7#M- Ҡ]q`$j9MlhtbLn5YyVX m Ul4~ÌdGłv<\cgHK"WJV:= m#5/p`O`*)QbŲz9XS4z ֌'-@Oos y4i1PB/`6 U^ +4h4K;-TXH`ZH*H.p@C$dNG"9d o2`=o)  S'IVϿ+WEG+dSS_?Ae.qA#fmQ` ðk'p3b>Ҽt4\pQo,$Il`]6ySÑh`wt0RPeNn.zd iţ*A)CiG!OZbif**zOV>BK1x\2RnBC yldH9Z ,2kA$_/Ιг@Pil7Ѕ>FJVT+DpiVD -̬^i+6>lbY3jP0yV4[_f*Hu167>]O ܸhj[ o [c`)ޤ 1LEH[V&1zh E:f,+۸RR(U낗[b)  䙐b>rmkɝcͫ{(x?pxu^CjVZUYDm*l{BU@Xܞr@Thn0fWgۢ+N =fio'N34؈]9Ev.g\^- gn 1VPȖ)ACWQ#qψڥ뛪'|*[hl|ZPOtd K~E}`ZT׬{i[(UAs?Fd}:WVe| ьATk'I+KewwC]%*ˉZ61"_҈.ys]sD,!r$G˰¦0 w2w(2']q}`2+"N4+8!n-AV/YW7qAN`gν{|(wG[mkI*A'q-Vٍ.2U=Rkul[)/ yWL3f{H쭉3>Yj?A.ɢMZ7?;NJd}o~{ |;IvJjUJ Sl ^ui5#w )\qqS#TaBAPx?MʼZOy.vZڵ|ljd DOc8=snxuix@!nUo V"vw4M $^xCg!=l?hTڰlpp+y ڴx/Cd_r1!G—zΣj"mm3JyJ>Y%tn9C^ʀBGuJ޼I ^M9E{ƳK W\q_@ɼ$miH7DjIuB͆vfp()o 2T)iEҗaD\Ideq۬380og/!4n6zgGK22eRvJ>XO 6+SaSGXOnQӂQ20 Ө6e%[@stwp"f@2 +sϼJ|XF8A9ρՊR`ّ,XDJ& G Hب0_:צ<a>Hn/;JGCtatI> ɰSwht"3>CKc&z5Z4&hKʥ*E4D@{:}]vc]kzn@tnFVZ@iEm1&qR8Kޓe,DlV [U3@9dV7mk B?g|̓Cmn+-?y[PX CzD0#=Xadc2l䑶:3b{v!tu6c:E1V5>P0" A[ũ"n"" 20Um Q:&z2Kh>}; !q hzBC Ǖ *AK2Ӎ2#G7Kb8íh 8lRh?MBDOV184)9 , Ϝ(ҵM>Dd{jCBUI:s6b3ػZk(9 z/:aßg>]x9Аpg3gKȈXl5A.e6%;oI=qn$/L SœmB(̬1)OPv޽)&IϛmyI%lfD;MbdP$?Yr>-a"Tq{=knN2Sh̘I# ܗ2;?rGWϘWHϣ[hg7]f>*"zMU%dz!(PM?`(0Ҫ8JTk; ug-"Op!6!X ʎ=>!#rb!PH@u 8W` Gsm0 gԉjpb=i# qWe GQYa=:Vh߱ 芊&Y=(#R&zNġerXe8.~F`Vv"`J lo~;$yM䘤lWtb2c k8qC<ʝCz'{T+&zkk@)@EE Y S9Uq" nC68ߧTlԫL Uz/~4\j z0C >m@::jr }ɥ<*ܒ}%^fIo{cz|{^0 =.C3\" =TSZmgbqW¾]cJtA+sPOX'YOKAݟU`a-#yDi׼.Ҋ&xOq4a2s"00mʘc1X8odecqrMV_ֵ=w[4 wP0}eL PJXVN:j:Bdј@k}oB;Ҙ.ECc ਡn"D8Ǒݲ۰rc`Y `:A9ą[A.ڶMď>*/<^zzn> ɐJ4ZWB~O~(]`} ļ#L}VfVY9ʋ`"bkLʟoqyjWG˶Y/fO|㦘%!2b4+Qv:zaut_bCXǏY"nV4=sډ|nSmͺC)#@3sOkFܣqqZnݕS)J~E_ۏJ8*7SwؒX. `9S|f5O͔],ҕ,%U7Mu~Mx͘m5 {#N漶T&we%O>s`^Yݾ4WS /EO)N#N>>@ +c~3%ڶʗY`}G1kxfQTPZ8(*@|g=C a#I2,^e1S6cu ېR)ƈz*w1j?g=$C)u'Meۉa5ۗfkcP>HlF;^`?ĕ(&,+iO O0q)-83O_XV ]Zx; h-гb\ ޤu3uh;oDHDS;Vhk෸qȨivYC+/51v;МUNP Z/lK8w3u&3K+ekBb'⫝^ ;{A=z' ʰs3sŋuV%yZ.뢛`Ѯ颎줸J|2bϼZȿ Bke-+Dlu"ӂ dQKHS|BU^}Ѵ p38e8r_\Z̄|mY7^e d突Ijf `w[Jᴃ>Ť{\aM 2O:Ӣ3bײh:6!jP7%cAqpcf@I#_ XuP]f8u @#VI"35BlۦN8_h%i yTK`"w.IhM|XՋ@R|;Z} '7PT|[DrSJpѰ7k3ccN@U+wɛ$i % ojS꭭\D"w.Fkbd`q5T7DpuC3FˈU]5:귝"PPٷ/'w`o8:P%YΏIOA!=+4 T-PoΙirHJNskeqhD=Ҍ;DP1ֺ&/MڰǠyuH0Y==/{j)hb;}?g-yN82%g׎. W.F*e96C7:0 m!Р9[Z$ȵ L((l}BZ=W*^%XC3U0T{lRná>]σc_C{{{a"[~WL.؛yBa`;V|"&$|db5:iGtN ʔsSgXwCѻ(gaNr¿츓)֕P8$R56w{/R<Ux;Ti}f]r3f5wsmGY8px L5Ur2|n:8JYPeS3\S$ڗ)5;S v(jsĀaKKi*B5X2E&cgt7T~0jO@DU_+:)9[߈i>aAws 1Xdq[#`[mY32 >&P 20&MOG!\52EU',wS#L, PwF! ɣ$\HC+&eYs$*²ggo+!~~@RXF][HoyE?Nlrhs_m6Aj’ۙf my#ð_w07-Cnv 6XDqOô3H/ӌG[NDE}]T>\Fz+\,TF7*G@hx6B<wOmfb,IwXnHhj߽kZÝd\!Z+ZcSBWC9:B⟗Tf?i̺E8 zJtm}F[X G"{r l:V(ˣhL ]d!:# x`,fcguܑ}‾b_Isrb?#{X?cJGn=7|8ow?i (ǒ.֌uaLsSsuNN^++?^IIj4:1t}5Κv8fg5{osdWtӗHϪ0x1|,]ht":(UiI=@RZKnlFxi{~% 9ґ8 Snpj.Rwve)%ǯeY8uO?|AKqŤ ^Bt:fDwzf}|HNWĕwO-__?P9ɚßQTdZ~Xo#ם2~a6$CB8;byw$6wpoKĔNj3NUgZšņ꒱^"yBUSĒ>k N̽X@puS%b~Rl Y^V&ՔJSTE$`(Z+Z"^K]iSWOywM12Su4zMȻ^P,Wp6h8=,MUOs8 Iv'aO,Jͼe]0d][6rѱ߫O}e]+V?%TɃ-_b>X+ɏlQaFt&H3K,.u *x@- -%WVEnvufcuo:vK`ϤOt|xt'F IР9!BmsvsȔJFߛmN7]D2=7;Wtw>b0Xafa/YgǑ*x5lZ#U-\w7O%ޖ ّs0N&fH2݀CGr8jXSEɼ@mȠ{^QIĴ[~*0_{'O_+bB@݃VnD _$car,koU:6% nI57bpީeyu Wԝ]5wLJPr,YWtv6WwN]پ:rMQ)8Rzi\e8Urv.bSwDvG8%Czf }{d^nY5R̉E-4xcHa6Y_{-IGt0զ̤çPxi|ypVs鹨DN#71FOQvC402R](k9N@vLZ'B㖙Lvf7Ok/n5dsV[+6:p}Gf 5]s=1WG嫷Im)"CvOā*V- 욠~E:4*Wj.5[DaDRx4XMxzޠc$ zdɇ8I|D2gkPFı)3Z~G&ꓧ,\=y}{mbyހxkrasKTxMo~%`l:$Y0W_?BS0bw̽ANE]l%soyocͧjwaS^+_|ݘyD#G(WW#OjG v|hI;})hFR.?]C!FfuvB gWAVB>B s`F$eNd(=T ?"F=5OTBzCՓإ@u|Xiᓪ5b2aG^Nr; >R*ESV0g *E~[1lшp\-G-2t@\0Nbw'a'Hb5tztR>$_q#Pg1ԯNzE/5#TQUTU |Qg\{>OEDn4gY;i"7x&WSǵ F,(I˫" g9i~7u`EH!n.N#V@:g'&Mmݨ_^Q/B،mQ6V-6÷#C/rz5nx&~ej.g9[X֔OCqRD[l]zQ<ȟRгᒾmL]u}&o16*5s \8';+Xz?4E ^8{葠;q'sܴc~<˄"h1nGفDi^(17bY;!b6?0Hs Pxf=&wI(W gPpA\م5yY];i++D@&UWDZuJoOEhfS`Oʂ=.oVX rBFɤ;yNO0c</̗g"zЄe!l ERvq„5h>C&UOk٤w o>!_%zۥ,,-[8JzEN'i5 Fr4׿ G?Tq뚟nAI<$?B±S/!1;fujv\i{1hS˳Q>޴cﱯHe@>ZJcOo$`QE3M`ҳWۘIeQt~8b@6KF:ltk>%0tk7Hѥ IDgp2'!3^Hu1ϰ6Lv=.QW؄:%qB/)r&׎]:rKt_wI]yw)I-މ.A(і鹴P8HA=9o7t2Z(|٬+'^շ{07J:ez\S$wXg8Ϡ3&N[|Ƌl;$dՒY*]̬aqǸX|ڠP|BǮI53#̜ Kk^0¦\H/*tq!,ꡛV #lg'Qru'Bbl%ϔv82e#>J|}gm>BM"T4+8uk.ǼFiV-[^Խ;6>ӯbEY [4n݃ŏnO@CU.k 5W}Fd5M;TvIkZ4czKؙ}Uж}5:I؍ƭ j3?f ^+cFhTFBp_ZVxm9"P=<|t Nٟ5'|kb>y&0sFS9Yr?&^):hC[va*vb,;JxOFԲX6Q)T+,;݅ 'V0XҖVnb=-QAMY4 pMEYsn`â;=P:2 57WJ )vXGJ?>N[smgpm;g=@Wq2Wr8= \*.s򧢚7=&|-ZLJpXSƧf# E{CU`/v?8Vݒ ܤ56q v}BMslFtQ˪br-q!47?/@:KIϷ 畎|ԇsJYPT2):g%IfOXP(34թ3\te b]I`Hq%r<0gԻ=4͑[Dм>kq"%OY]4GɃwKItUi xHT.(ּVi y#P;_1zz9 3Y؊7c(׾Q 59v:m.qaFLAUtOc! gEUH-ɬ-'қʊYq%pV +TpL%U + m4+]LAi8EQLcb XCzh& ^CQh(bTNlv~Gw .J~pݥ8'CQ/cS֠gIHs"JO#"-_ȟrG" ( "ZQMdWۼMn BZBφc"|Ir+L6&u!Bv!\~GoN#!}[ 6kbakܷ6b[[coFҔ0&ìb:c( '!V7]q;?,\ScX(;중W}I0}vn,ps{e#Wf xP`?'mY÷}OwB4Q(v/QZ\9+[ɂ`e(:L2 TQ^u ﬕ͉isfUWƨNt<⊱E[7߯,¶CBW >w+TlI>Lq4+'S͝=?S'Xv*6d׍9i-Bl)CaVa`x pɰ0l(t> TKRJ?OBo8F_oumm٨`yw ,im& GK6Y4Kl]ݎ?DHl:xCW$>I9 YҿħCd)/ ׃yLSwDوcȨDzrY=KZ<1GfBsJB [aB 3pk9AVTKv>uqr}wpr^hAXN$ :\afN?z֡Qמ?aM+Tc_ h PZzX^7>%B+n9B.oǸJEejthw.5 `S; |dkCֹrdZZSeu^M{~%VJ WW1c/yk,aIf:xsꂨs_4(r& C6] 2|bbQ+eav:a>J(>LSKϑm4X*av j#vA@Dob+FV6hYUit';ER qqw -o+ \(]c?;V\.Bfѱ]5XՋN~2F gνGY8vSj8hd PЀ!:Mq9fN%:-}ZHmACZFqsnh* $fq%H$ v!k߲UCED I$S}38kиeփwbn]TfIp@L)Ibhdbۣc/'$#,[;!$B=Y`$%m5q@nvOOlc mMKg%倝vpߪk]ȩaWSƨA@n JoMo+p*IhE^-^73 Oջ':&W$A7"? Kʽ#CK! CrMս-qcﶻ$8M1i4xP }gcZ7 3x9F45 #&D/`ݾEJh.9^ 97Ö(xSv"iW h“~=}$I=)tA}󑣠myRb'֌u;9#KNO>,P㎟֛ D,tCe0}rM[$p#DtWU )x7'7nuDSK@*Ct7'sk kgE@oa IL%mӣtz=t ȅ ǣ7bZG,-"zsr~Vx+%7g= ?EBgdch*-sdNG?Ҙ d9\*lR|FWEJ^ jdEw0–3F_KǢCi@xܹ TTx\D&q ŋ%}m#$E\`(dLS9!w‹wǟd" ѼRRxd/-k^4N;aX&nH㓟<—%Qdt.3'P>xۧ3.7| {=G;KT`tgxKP'zr9%۞:l(_iImױ\-9yu\qR 5W^ '1W^ ˋ} g W<_L} r*>^t(cVu4h_UiYj@/\!gCS~I<Nq)*jۺ?*.5ҮvQJf XU?s׼ZlTd J0M9Hn_/ s67򥻒AaVkVRF2wW٭&e*a'e{<=Y cѓ4ӚC).$^;b٘OHLPwvIcqӜ{L=/SX@af3b_b[8.QH$Ylj h֦SҊ'É;?O$$8V] .f&^*:`=u Oƚp#{ѣgT._פ6Q$喙YIbM{[YWҠFBY$;BgQ c:X6]fPо?EꞼzw4pMAkjPg%3Zi$C$-ZϪ[]!Pe MMs #o*g:wT '&̏zV@1\83eFif\Ib)rB WX#i%,ѬߊfFQ)L)&Vx[X'x!-ѪʬrY~a^!>xj,q:[ !&GhTݙS.Ԕ_?RvLF! TByQELPe.NjYH25]Fd X-7aJί7,23%k94tl:1R`lȡ > ~7ShԐlzaDI`ݠk=A~*=<#ĉ\I Mb3z=  dQ &G be#І&ĎWTwԝ)u-|;FQ򯼪w"$}*bЯg'n`H.RV%'/W''zG6FlWMJj@Ejma|VF srp $j) tLYieYk׭2Ӄ <dd?g~ =I c>$% hnuT 6޹VϱOpS^'k#&'=-;<+V,i5AA=UsZ {+6AQL$R-'k'FSKN sT: '1bEII¤642== oN3;_:MLo 0ukLM~p̰!A>{0_e!jwD o`a3Ց6d'8Dt=>KQ,i/TZ؞J7* d>$探#[U+RN*VJ\,j z"^[ZW︟.T`G7H{`b1O2=gyLCjiş&)S@s5|{{P$^>[+`$rLgqviP-_nL5M`,D~"9MãBT Cn#ըe~Bkr@x|>I](Q@:<\A6n!4t*ގMlz-]cmߕT!F" s}n΅ p2PrEJuY|;yңv{AЮWVnL_-*;(Η:[ȝLטPtxrqLCrϾ?ZywT9T?!\CSqyGy 4Tg"R8;D%:ږ1n$OWI2Y +U'a^Z+d%|]*|'3;"LWٖ,;`e:Z Szr6stM۫ 2 l^tY7E^v"IqHFشf$zy|3919w6ic3nQ-BgiVIү*u8q$\b#Ҹl(6߄q#5K;{ +<>f^KE3/#U;-EE:|Ig(7e%5$)R A#0'Z>׳ĉ+:O(KtaJV ?s>$.a.[{R+7&L 2G?2 Bӟ6KN}v%Smb)BﺳQ}U*6TS_I's r-d$a+kLR ,deh~ x2u"*P,Y0 ~xXIv {`kEao.u#쿣R8t(4˚!*#{#:jDP3cy|BK4ӵ%o:c'jOzϺ+ 1B8yve>yCk"/߽ἨXyBe{;UrZf_fX,~IymQ~A\ੁ'+גD3KuDY 2CF﨩V0o .~ڹJ3y'i0&A ֖v4yJ,Y&ۤ' AJTǽ36?}Շ )q7@WkuR' g1"& Y%~5/H꙳ H{.?;'@'et p,p Dl#f]xNuM`ԃ;2D]:K6R ]JKVb(^09ӡ@NWRs~iEb4.i[:gx\i4wYz7+MB*;ܴMCQa}>a0OB|KS=n^ZQ[03}:i4yf{M`f6>"\+4Wq,N8LM8`ODKPꢧî\I*Z|G$?!iYm&6מ6GNqj1M^^ҩ5 {a|-d8 =p`[,<>,Ǜ+/}OMqy)G[%s);L#)qZ&9#z0s<\R tm83 ˯o)/E@# MzIu#Z̡͜Bųǵt7<ȉ;/#m-h$> `DEaS޴- c{c]݃Kq'Eg| E.VtM;OY7hc jǜ+)q*'}77n01/w*M)!Xo&2T.C[f!@2.x{D hI 82LI6՛!]GN( :ZB0k]iY-T{H>;elqy)q-هi3h 9hGpJHa #HП8f{/J_63So ӹ@Xg쫨uG^ETޯ8M!&cU*\ E*ڮ0  x1J3wT)^c:{GYV]6P9]SIIR>3~hrh2s&}Y=]fȖo \0;~{HHUz"zcwˬIQr ,!Z&7ZmeCޫCO@jT: sP%ĮXr]!Lhw4ܥr&k)s`[?~L;U@d26M0:.$L_ϬͥԀ%⸞9T(XC@2{q89#2]@H` 0&ytVsVjDl}q-#R$wHәA|$.kIgDѕD[ ))( :gs۬?p5hNTd3sdڴti߶}Zk^*Yekc)1,3~Z6}|{Әdn@+'MB5툶¼ 6Q=g8/P˯J IvYp#.SBZ 1ᗵ),/gw68D;Şn15кo60YCnYY3Fn#"6,}T ROYlz @6IDu>MԞܡmWrAPm?mU:+L9wq*Qq)&H-<4oQzHAMq>6llRM^ecq@^| r1Ǣv%&]S4`ܯL%09t}Ӈz=Y{ ]Nզ$ƬUTo}JpE1͜v\1rfVˊ4X3\WIu r^< zΏC=}|C5}ٱMW٦i/:6v΂5i2a=pYBү.)Eآp ,h[D֓Nϛ~t.UdlI9RR ܆B]">D< f^A-d,PM,ǘK(^,ƇnؙkZ B?h]#OL]䘲͵xv/gh!U!ne=FD2NDêqum0֪ŢV܇B g6A  P T͗PIloʼ}n%bhm 2oJ̤+ ~$7fSgSpMD?w4=Tߖ œ wpvn/Xr-+M6kuJ#nkᷚ/@e%<,Ỷf[#=[fx@:]/ ֕d :܏,W \pٕ$jX%_ ¿P6q1E]6U /&H U=8:.2FHDb(sdz^z_hpX,юDPj :et{yhbL}qEe?Dpa$QDAJ2Vc=J͎[Qgԟ(M-_i*I0sX' w@\"E9Hf׶]@jy-0'2M2~$n 5D <yX~6Lhc1>Fɱ@JIx7JEͫIxkfі{m70 &77uU: :Cul %$~,ig4%2 JzZJj6 R!b73<G>̃GDW͏ -w'on{o ޯ>8sg+A]wP,}-~ǵXz"[ aӮ=sh;VTiZn—@,1 (tUW?g WNy;uo LXs v-PɶP.(iMc?4L:!h(0x-fqPWA*s?p݉aeL^FL"q0i8% (x7' Ja O=@VyE%+^&j]]Q[x*$8#4>ʪ#Q`R*_8~̦ﴙ?W A\3v!7q#5;lU* u]Rs.5ΓES@qWT?|KB(cjgn^ªʦydžt_Uu채:8y>lsR$G/R 4 |9nȟYpB:s8GZǿф/Ax ^&{ﲐ=zg/}:b(踪|iC MJӥ@peP 'K#>L&M,B`g`*j"WS6x ){u,puۧGֿo?5k|9~b8()-zB_K H)w#yF%Tt^Q*N. @Sy,:yY>벻msO?e8?$)J0:.bH#1``PsaA9Wr(k::^LTXQ3c1fQ|g3x|˵ ~Bm&|glit[fL*JE=$:1;YmJ40 V7JCGTL}:kj8 lsbH\T1nL'RxpU^ApPX 3XZ+`w[,;N)3A(A&,~)Rж-GZZ$w^lwg=vFu;쌇eYhy}S=8?~(czP | LvN`:͕W! Ď+L?p8>U0JxƇ!yzvc_iddh:답%<\R֞o\!v7bW3B;:iͻw=ܲJ`y h-]ws ؋k(i7yr. ƌ$wk}jak6Q.cn^.FxE0mlmvAf0Z408B%DhH*"v Xy˩&?,Yѣ94tr+[W;Q\7˰bgkd A[{0(?-YoYj%S>J$v΋uhJ5 ͥC,xdX Z̀;Cc! KƉmp`<e\।P%d@KyHyyz=ٙ۽Y @jhvf g2;ECU@DZpJF[@K5^;A0'| Mȴ =2 >*˒PсA y+þa!n aNُf5CGOZv$<,Mzθ5"Mg<䩏CFvo]}; V?`k&{,y|LO32/N`.1J)LQvN19S]_9f/l((+ߧ9/F:v&`L{Uz'-]^>PIp0[6(X;z\f=k'ݔ]"ؒ>67*_+g9ݴzydUYf)Go6efՒWcWAzU*!ǃxUߴH%c|I^x2GXv'@X,MAAniyF*6F[hb]fh&S\wrwȿO|(rR팇sƢYqxn!4PVƦ4mF=VGz\nEͬJ6z&[/A3WSo@ 6B0]F@E%{i W\Oaܦɢ+n P~VxSc.Se!zW,QK-+&\7ߨR-Z`@u,oI&(~#KwF9:`;=5Zn2:%%"vi סix`n„/DGh aBQμo7n䝩f/24& =_8J8|Չ1'HPq:uٟ/&Ueow:_WcwEΛIn)1k1]w6cЉɧR{q x~ɛ[ͫ$Ѱw 2-Z\ّݖ~Z) ț&\`-AeBAP)*NRWd)hOCt˦w*4o ;ɜyG&}NG dl0فeB^, RxT;DWZN G !Y?Bђ"rlQUpK|f%AQ}^;! P.lHh%!A+E6 WrN,BG_v4tl$13:r90! :Ѓk|ٱXUM8x[N7ukX* 1,74.Jcm!l]&~׹VO@F0+~]o~ҳu_ mb|oj jmM#}Zx4^XK|C[LlY} LpELUgOqAiUo_=4N7NVEfm+3*VIP:bv4񻙶`hWEB`ܛYH!ت%6 LU'CA}Iq;`"oq64 ('$4 {@eS͛NԗF0Ϊi5D`J<9Wo;L"_B& JHAm6%'KϤ:-Y44PIvwuҭ[460ȻĒI`1#s7 (^fH&NhNZ *!. J#4-= l_ gJ{(ڳ`*Î/Ԫ88"t|~%Y(7G奸S`tQz,Aݻ"Y 쀿A(ԻTg[+w5^)w I3 -ͲDc fJAtentXle|цdž CZ) >۽q$_񏝖SwyglbWiW!f4tl]s?yΨy7ns$ *^f`?[\?#s|jm\_koSxDھ(Y|e Dۡp$픾`9l(|A :6K5Sr#{Y(Hғ_'R;^o}J>D,_ͷ]5#|{3a{L<""8TC,Vc|C5RB_6cӔ$9 +gb>rMĢ:xӳ+ h[Cz /jDGg昷MA쫀t3mCNlkcUu'l(vS[OWDJ-Ӕ{~ѵ1ix- 뫢>IbVb QM0l$!PD޷x1I/FruͣhKb|e ā%Rmn  nSb.0A~Ji1N4X3j8УQk$Xbw;zP!%#} GwM>x_LJw2F]$)-gF''i04>|`YQybmUS%-A7ih;R]kv9\%Xus48|?UO]~*S@(tt |.;\]8[Uzgd^ӌe8n:B |1j۵h릧Z ¢BnѽCvʘ>>-E.b8Z)/X)VNO %dX~Š}-DX@_ـTGnl l7=; rs+wʝRŰe0E߮v{iG 8M XD⳷,KDh45}턪芚1sIcr1\K%p]%׬?X1~gx4=\I9Uv_F=uWj$f#.L c5n X$oj`m/׌,+Tl(XX"k'$Y=B{˄%}ܣl ts)o) `4+Le0&Dj'?2|]=bCC۲`:mq5_Xޡ!V]XDuIVxj4+䉆0 l:_lğpe~BV'5bW_bi]2nE}S}٨Ó,&bOw]i ϸcc-/M Fa8q'y]F/RΨ!nz6e˰HDSk][@K2DYwj(%!("ihtep,<["fiGz8woskW V_)cN.,ڒj8QĴLl>il/tqlpJ 0hY]"f7K[\ +A Sj#" { mf2iɕ$q1 :BXkm Tv 3ުj|&ꪍU#R!F6OOY8NDϡ><*5VM&d)m) ׉@R~'\vp:aSdAnCd򠅑TAa{'~ D~.,E*N˰ eL^"M?Ў/t'BX:O*-9v0XAʡiv}z+? 平J30"d>~r|G^ᣃh{k,Q;T;=)>CYo*W:}F,&>9 y@n t?,07$S9s^?rt8?@M2 &/ruiQV֢u@aPd]yS:"NiHݮqvn+׉ ͠?X;4 ψ_(˓ݞlV-Q$^@G_|uokծ! UQ|_rlNrCm "_9nu`'BWAljh.Qya b+,(:~ tcwޘR'lه,x&ܯN@ߕ5R*e*Lgcg",4D XKҳdm 6 ̩ӈ:tN1 X3Y"A2p'бP1 >=I>'p rJ$B~:U9 {8 `R7]0)4.yIXAGǕ~\/m*BT צ"ޚwI4<~B< { ,mJ~PU'cmų۠fmD:IlXS?9dD415.H "SFWQPB'%ڇ$?b鴺ښM@A\iNa($@c%tL1z`'9ER(( KOOtaEwm/ulLN]uF(O7VW7:h(.:k a~Fƙ07]3 :1QgRϮ6vKAVt^O~u^3gOy=ðb8σ@BKRceHpq!qn}F|;S!'5?njJr)˶ѧh ͥߎ ۀ%!&QxiޛCCP<E1lk״Pm&5Cp"n͛OR1TZ()'O;G^rIVs3f`VY~NxZҲq1BĹN_/ cj2%̂D:=6+=OjDdFN\eڡub}}ׄJxCSc+&]bW!}òL2]Gzo~@:1Q⪎#ixPڠ7&TOf%1{v.T=J:#p*:7!8LV>2Dd: ۙɗZvѯN?8 ^7/A,}$Y_-dNeXxi u0j,=Á70藎\#P8 #y;㘷@h /Y2L2=HnK|O#Vdmh\MVwkْ8)JNRJfTC/?1eoNSuCߪ|G*oz4X3Ȝ.9+^toZl^nѦEo.U=*`D1Q <$$Q{,h \[onb|Ok3q2Q6' _:\a8G%FbHu\)6A2{Urn*& ?Ofp2DtЭdzG%L׀U` =a h Պ]sH,v.ufMߒJ&,prˁĽB@xY)I&=p^<YSmE |_9Uڷh7XB8RނFŋտ1F%(8 ml9/̙਱n>N$4e-8lRv4 ߻ap@|8(6SʸNGh0.ãi0EJtV`ܚzZ\j K5ҳ;ᚺ+\6 C T)`&̺Q*eQ r0|uP_ĕv*A61$Ll)lx|/%h:@I:aU<]I# yYMBchiLfG`^"*hpԛ@5}Pl2TB9,3l4ܤxp3+`ADAav`I1vk wבmwDKk6-$wRzXz:cG8)UmL߼{Z̪O%s{4~`+QQ .[n9YO܍ 9tWBPLP[",fzP֛׬݃yߺa;F\Hӧ(99%s^L *k3MFL O˃V͐$]Jc깆i:2C:0YtХWCH n`w8USĔyBcڠb r1۞qc} T0'v;e̓e= Ev)S+空0 I:A_D*K v*Z %X3, H/@ Z@p()Ea=~*#|R ;S$5մU9b+OYOK R.5 o><8E3b{duxJ:/[pj%O-PU& -(()2qS2uircGr3|# }7B($?6dp_tˆ*}zLM ةK_kM `Yo&e"Sc4͈KW:>X_8 o&XW+c2~7mb[<^Qr֍VZaT ]+SSF,5\Ny#,KΡ9ɚq:o[ '~cgz}"3#q*dmksyQ;"JuO guԺ}8 C9ԕT ?MEJ6&fTt Ii@\dPrNqG=N̯)jZpv r-iK(_TҚل zp6Gn15ڼ "װk{+'e)%F K@cfIgݼJQN߫Tfyl>[\" vh5c v7Pj m56~i|!f`EOJŗ3~̙'~/E hV歃OmR:}U +Fk_j(iTDO!t;k'Ѐ7m'疃Hīh~eG%r-yJk;ҫ; g3@m PA鳂/I)#-1>s"&3?^$A5oYa ZR"r3/ׂlcܔ7k Ll g?u%K6CzkW/[yrUKT<`@omHxwcDX253驺ǶEe%_rKHpzsj}a9_ +]07t[^0uQϒiYi .8%JG4 ,09GN*y੷V𧽅GDPztgGd+_^l&g$tOIO Zpl%f6)Ӡ 1͠CwbYZaɆ&.l)XM{VF]45P} R$* kFR˕p^_KNN(`eiYun==d[YY}V~PtTvNdo\3`%t<n4y[r5ucuwaMVLJv,8eh])`/% 1'a+$/l=Rz\\bn]*dr T vMv@!S62|,fSժ' q4߰Avv'!Q"j76~M$\ΰõе.{z HI{' 3dHgi: hߣP 8θK 2쯴a%_Ъ|'hDPC)Qi*oo{/B_*QP/^.h~X|Ƅ9w'ȧO~wFhqQqv3!GrjڢĿƊT7ؓ&LmVݱ-u||H>s`bv XlP`pfxH=!硾0XUUb7C7]P?IT FG8 t2{g"[8Wwr2|_Fu7S8&ds2D+}>AU6Hfy7P7lҭ⫝h0r 0~rJ#Pt,;{y_jGP^ Tj!Pb0IGU"VY1G"mcT4!=LBۼm+|uLuU#D_l7j7_"X:;=nDEvͻiߵ$yvQY6`\ԀU Zʷk0gS=T" jWt.)=(h¢3ݚ)7t)Z}n1Ț> Ȫ[gZNk6sc#a3b!wSdXI :vջ!H#U5۩ou:;77X r Q53:঄A7m^:ʣvyJ?Q%8wޤtڱ*>xrWƾ^ĝH(QV덝a {dA o.iRwʅM@sނi4PO r67UkZ7 xN0S $)R7rA8<^5 E:#N̕Qoazvh N*Z}g*SaV?݂D ٽtQm2wܥ:O2~oE Z]GWPm3 {`YϿ)fN/8锘 _;Hwwxo+A*0&P,\/.:m$99gl#ڵ{4R̲Kilŭ+f]5ϯ h-hR 5Rm2MKp,Ԩq#''Y5&w>ĩe~J,ӣM KīCGq q9W֢|ƫPSo?gw'jznZ& r m ɗS#Ӱ}e֝h+]` Jή2bUfX!ؙp5Q.Ėtl{dxVAl@p[ ythWZ"9o9]4)6`).Y6J|ޱ \5$H}*p#[uT$v"-7<^7 3VqNG>Tb\˾Y-UñS16Uʙ uyG}|ߓq:}IGs2!N9LNJ4 !5$q } 5خu O\ ~@!WEkOZ. t7|gXsHq!iciϮmuXI քxҀu+[w(Q Ӱ|5`%wq&azG7f0?mibS\ʡ? g=w?..*ҿ5=5LZ(0?.w~M *MljKUP`RS{C>0cJ6ɝqRjp;$©S26uKng_2&T:K?qL陇#cؾB_sUWeHGSfg9X7Q;& F"M˄ͱzBfq)`>dxիiGM/µ #cg7jb%[Cmpb sÊTz/h1,S=ђ>vWqn2v&p}`Q篌kԶCV SΗGmVeJGona8":eՋmJ.t(ov6`x7XZ4cKT)V 6_ i;%oѾuHzӚ5 _W$+>静 FL,2"4E]X4]ΦW93PB@I+5Qϖ{)7#+q5fLVhls5tMH!͇S], zJ_S {U?0=$ʻȱ^DcL njN|}Lnm +GmqRI[As/9G?wOBջ5~|2GǴY뻲EUj}:*;)d X":]=wWJrpK `.,[ngccrg]*x`jkՍ$7yjr/v-lv)N?@I(bzϿ$%U<\0KfSѭIL)-G~~i}a2_pǟޠYK=!Ֆ>Ԑ{՛("|3 rm'5`]5U5i%vbUz|:0ιkq;Wac !)w癩;ej|LdL0W0%#Z$fM >N)铤S1 j!.l2GHw pBK6XWɔd˲]Yؒ>:5 -dbnfUx__mPT8ޜg|&`:k*m.]E7쵄16(X̺*Cx}~QGE q7]+[Qغw]WwId)41;/е*iG0z@/QIS=?dyM& Y@Z_OCn}u-|F*.M^^ljCJ-ޯ) O 'n?I\dxL-K ߏlPVPzO?#0r< XQIgeb w{q0# (l-߶o!Xw\2v+dAqݫ[y/j2=Q׉]!Skx_*+/$o"plCSսr2 gl =;u˱*I#L~Cpl$ٷdzu[^F  A8W, nۙ$6?_Zz^*-zu GzZH|܂GR&9*Wׇ7RY)t&FGw!v20TRR pnf$wK,=%I&0ji]#U^.1(ii9ƕgbٝPMkDye3{vxh/EBIO/ky s!/ ӱK9 r:ZHxq4o"SdC}ֆ(x QF )`J$`Mad5S^54`zmQAVX&+Nmnc5䐦6yB $G;ۓ8^( :eծt m^ Xt0 ʿJj,@Eqr_CJBT7>)N ]D{,D R഍8ĀDw>!pĒt_* ~ԅņS" 1<.A>'] Lِ5q; 4UUH~=E{9㈓d> `Z i9~S16VQS<¸^<|[A`DCG`TK57 96cB]uC|0Kss;CE MoGCp,ޟɘpXdbB߰Idؙ[4fZVIϐw <;WXQ#(K~ \PXjjj=7Z۩\ܣʵz߄t ׷}z&f HH}DZa#G"t\6;9A!O#^èPma| @slj* 85Qt:Ȏ6e'Ja]A ,ǺXI) T\6Yi^鬔B ,7++sGd^ޯ#tP[zh ҇pzfNl:%x9f‰4tٟVUI3Z BTZX/9b;Y\NiD3^l,Z*/ɢzgb- j5-hVnȟ_㮆6%j%Xy#Թf-(!=It~,a)Xca(pDA1}pVe^v$ zYsPQ= #fnkpz$UQCF)~ALit+s9y';8b6vmw Ato]P~QV(_K}P/Jts+5\>f@I˷%M3uÍEJyF:xj`e:<i#T 򡊅ϜCY +Zjac$ܧ@^yCa/@#._)O v|AqF^ną\\VPb+{Msp>Y04^}Y*lijَA$*d 6 !=itNiiLY*4q[0T64@f q5L\"c^LG|Dj2_B{z`}l btt:5_+ǟ1RzAνd} ✚{E9spk"G %Ux0@ԕ7׷o0l5R!0b'Wpu<$:抟3ݝ+|_Qa^D.UUeowbR=p`7<ՀvV*Wd%2z`Fd["rvԏ:r9D_~+;ziy:cU@c N3sX=jb9#lh-.Rq`xHZ m.@ahNW_ohO8e_dp j6g%N}b,@3p,OH!TÛ<2)G%HDwJԅ' o36n@*Бjob-Mu.J|Gu̕QJ /vƷ?B-I@Rzlc  VIp0e4w,)#s v@U@Ygw4x{jgnC`?qEݹ&gs^j{b +3&=?')7'xR#3M6.+?dՀҺFO61ZtMm8|"`l^3Ad{(,{Uc//9;_ch<ސ;0w:sF?񍸛E,01;خ*y{4 4:)1>; ypep,O֮ ^Yֲ K9cSgCis8Kijqv6igAf2bpC ]zJ0.0L\xN, s;F7SDRmsz7m)* ġZOÇa3$b%/jfzA1PwLe ky1ND9D; %|1eaˤ'[_K G |11OGoqHч47`ÙF˕ gʉ{4턚qmzhxC՜ wvGW?-& "͈SOU9xk">6}ٮQٌd 㦈>̟g0PW@w $0,"Gka$ yf1"B7` 4UJrsš`di$;N»mc .Z(īʬ)Tc~s)nk\賆l~#(2&/UMnf\ijw7Yr&/OM]QJacj:*qKvKLCV&AQ/P $p*,1_= mak9:f eם5RzXmܿ+xo-vҦ>H&ZG?MeͲ.s?!3ɖUz`tUXB](ߺ@and|Uܸ{H^ޙSMhãTN,ɺj2 XKRw\!M5Xܼp(w{JߩY|RyޢmDAJ#v 4&f_ taG*a(%a,UA7*l#G1vMz׸}f!ĝАqP Զ'WsdMot(Y0w][{Ug,P58Λ魥mbBԐ)gQ[:V%Ff# |F3?Q,>*Ӊ,>3hEJoPoZ@x ތ17ꠗ.izP–o2m6ޯiry!>-otv$PR6>'QhQ*)>od*1A﹙P.`k J[?-!4 !lEIGՊulU5>ZRtj;v 7~JF!|m8"N% E>i1O s e Oy % "('z͹#/5Jc^w t^'peXӈUE|p.-*HQ1w$o[<uzyP;Жg7)d"Yf*0/JeQש_h3d(q@Ctx1^2[yQlf{;7Ȗ-m* f,)߫J>AlO;4g(˩lnMHo8lCfhrϋ縻f;٢&3{Jrh&@ʥIYLz𱴯&=?^o@Q,OBU"ޕ;Wtt@*iai8IĹ{!$X;g8ߵDDIN{rKN:ڹUBb;S\D`;ZgZ;/kLUsp:n3x|ix,Ч|JɹKp, |+O͑uI.Rkr  9yÛ叓QfQ6ࡨLQ{RJtS"GN̷D]r3ď}]\V0_v[VݎQ?-1EA1ў:{2Ι >:9m\v7(mM+AN/² :PhcA$yo|Vre @-MŷǴ gA,A뛱6XW (I} =mB`;(}8ܸknƙ5>dH7I 5ndZ'Z] ǘ jm0uӃ<bv9O{Ԕ`cKc)8'{LabYm0cuw(˃`aӇ1 U]i׎ W84JQX OcH=Kb]mc 0=w>թwRj Y=F3҂iH \o I SV|}̯6HJ M7e,{w*[O 0A("2c[<*+طypLrΤemp!9.NsPW:K?؋8/gE+Noedh)`6&@RO=TdBش4ɋ0+n)  !HKf;ۼ#T^5[>'~7DaS'*|M/xbO ^_f Wrɔ[NY*YqJrD`U\( v܊ѿ"Add̍-0qݞ塪:K^tKg*,C8C dxv844]5uk ޥl,n}d*8c.MTo7/$R{S|-cY0vzn$$zWIs+'`]+9h;_pGb}>Ӹ}TFEbKTo6'FxeIu_|Bq!7675,EwL1-L"k! _OlޘH.繊y^әAN-JZ+SksB/5_Z,?Byg4)[l.<_ă#d^*jK 669e}i`>4N߈ mf)7Ns#ѭOۇ|$:Nyvja#+V,шNvٕ7+~wEs}*<="x./_OkgP8qVa.ve 0aFeyR9y ;Eў?*e"~Wi0Z>-tkD/40~[뛀rD1>2(D!si t$lfBY;4icNTI"g߬ V*h.-U_F˫.Ң$Y;%VC# fI̿^wp{e+Jz+9pik|#<~,zk:/ϑ''!Nj}piqON4KEֺVkUtuVHb*(w*#g%'P Efۃ/koS<ݬ4 $)%#!rL]~-`j$be~C1tF^qA=(7Ø@/69lct'n)d3QaկB*/"s~1;AJi!9 )A?*;V%[\C|^3* ̨htDܡÓUjluV6 ~, aR>u@3^LJ/@pDyƇ5 )/'M "U=Ylek*[AJ8VԬ. UO؛k\@%N֟3N0c/NQ^t]R2U|rT[L3b؇Qm{q>d# զyЊuWf0C`8&e9̼Z6xu3vZj3R]FLoݑ@ɶ*寳~liЁiuIzx,e F|ܭ0ڲSy,]F$X!_gn@,Azg-lierE7VVEl4)GM0`o8&[WIcKO6XND!5Q^,mU#e!WoG+)"N;1HsݸSuѳ9 m FkI֦>a>eZ}fDÚ\ 1 >;q 89ÔzK Pb8x۽k#=%COl1j̥WoVϧ H5uK4Uٶ8q 񶜕i:4͛]Ƀy+FF[5,!%C3{M3YAp~37D[7?^0$0 SdX1Bx';¸Fw{cP$x\p_" !vI#6 1w11D3RnP}Vw*e wC?.$A Q6 -k=H =]y9bo(@ӷ6:fzZ7#8 E' ?Q2=P$Ѥ 6m} M_@iH%~ FR":1h:IÊJ׬KP-YqiF#vLo0R,rXUDƺJO!q{ Yؽ2|M$2E>i3/-,BMև9Xv,w4t"f;؞kXZCrYo?iZɿ9-Te_@@NkJ2dXokӡIfgbDz3Ë!{r!S. #礐[ X)1_f|5H읫&j)>390<yMySJ Cg0rv^Bh/)Џ,U?Ӳ7)٫ >b!|>RutY2ՖPrt /`7G~ ~UUDµt#^xĘO8*r|V CW1d9&i@2Y.BlO?WQƈ;Tfc ~%?Oh~(]Lu+FEK*'&74|(> L~D`I5,:8cZ% g4|kR 7Lʸ) H鶈WF>.fZ?e.odZ̬fߦ^Z{[: C @~?L`1=G6oU؄o$@I4oSR4"SE-QsP>7'!T=ĉEG,RN:%_>O&Dʳ-1J73G gU!fLrr-fĵ} Nmx #6Hª#;\\fAJbI d&VleHZMr5O0`rL \:ci]^:Us% :e$`g/8Nɻ8fXLt pzbL wFon˧Ô2fq[v¯VYۅJ{,ה>k)P,M|8[_ovw<}N> `aIX'*9B_Ӗk.WdkVP#=Z;pɘS + ޠKH`Lo0*4zn+0HK0P9Y9Q۸mHEԘ@Nmɡ8wspya}Y&i'b -C!YXO2PIyxۥմdY #KW1}wC^f]"9V+0>6\J=9t0тLgIC.i 4z;*wtJEYmَB2@ DK~ nVܹ(Nd_?wkL==:V<ܛ c>mR[9)&.=߆xzCͤ*K&#n,h^ʛIL0|uק6r˘nx<*5t!չ> ܅`;, "jd9Uy?[Ɠ,B`*+'JZvBl@k1t{CIj1U{GB^S~">]Tp~(`s#,%dC\E&Z) 5= YFZ))M")&# O8[@i*l&>$r-P])Q4w[F$uoy&RUpoFjDgrtˬHy6KldO &|Q3rRqUU+0~J̸ s8EՒrfe-wo_8, .y{HO0 qb Zo]]쟭dk"y[Fd^Lzb8[o2gQÕ.,H{]$Zø·9;M^OԆ b'd`Qw;v̀!)2[lm$ Lw'm(&R^B>tW+HY^gX 1ƭ~q,ǢWh.?M;XTwɖI 4xόwL l$&kO2,/ SJV.V{{Wy.8'5!(HC(6ىoݷ qr`1Ep|U99{`IxF7eZ`́Sz I+ 5 *M_FE1fvz=z6%0n_d-M|5/1"hKo#;=P6Mݝe#GN:L'ݭ&h SIiQ b6+9mk"{WsY:_ q ;yo[^ 4S|0 .YU؂`כ*PY\cUQL3 ^t@Q030=U=U>8WThN@#';Ǻ^B!#G(E]Ջ Zⱍ>9i Y.G;d ş5-jIN&Z*ٲJ ZSr0DP7M1@Bn~}q&ݑTRʡxDW7 iM˞6^Z,1q:]%xNϘR/PYes 7yg10&d73$s ˤp\tDep]*{YqpܕJ>ルr"u (/br?CGH"۽yh+sH,*3ַSFȗ{)p:/5I~@nÖbwSGEOZmԫ,D<}S>6b -G(ui5ax[D.SsBJ!ު@SC2J.5*ctĆSvp{'<8c㩢۱'b964̊F-z x>h$İNJdAH݄CZ۱ g*g-`AO#ծ=Ҁ hen4Cػj(Q=47)PVYJeY?|k܆-vWK9"2(v9^֣[|PkCylB=UR$ cUe0gd}zTF=+|/j[JvW.a/%D^hNd9,$[)j> -=&s vƈPKOgO(U-QgEKU/уOWC ?qW{O{:&七e ؒg}!YUC^E|ME!;ۧdUbXw# i\$qݠkP@V00^\?DMN$=9l\n} 3z\_o !QF.qwr>߬c!fEtZ2$si>~BDj!"GTfwhQd]:pOj7pH uNyZ8mS G:sAp0{ H P>bPf /Al%j{!mg|áR`x#J0 oMJם,B]ت v ;ރ nyhoض;PWipcS!OP&4״~IMɋfp6 SP{6Hi|(3\k8 ^0ʹ!f ]ԛf*·3ioݑr@:,^oFeCOݴl5;uRحd+S5\>(όa7ڮEM"6 v\PwaSǎ_NI 6Wu8xJ_2Q%[@C$3TbqŦ/mER5ǁQ"؍s0] %.BAsﶤ@5bX,n֞]6Qz:H&WH B0 ߧ̧/V!ggn;ĪTz۟(Nu-q0a:)Afl=Omy}jb0}w NNQ@LI3Vtfm)sToj&᝛p;kxOM;dy\76>Ahx'KwKLȫ.:#6N)0 Ld^SNo?nԟye<9Lhv369nqށ+StMAW^ʀi;h"kX >nZ,rg]IfI~"NqKwFIHZ凶Y9󐱧fˮA{9$DsBNѡ`{DǐcFDL;b fPA4MqBù<&l{5ƺ)nWA~+}f[q$;>~Caeb8[J?]+CxB2#8o5႒1\Q[&gXh l@ĸ eB 1r1aA%]Ҩ͜1 x =&pC;fX?3`}ɫ7vd\*bBg.rReGCٜI'n)o )pJ@;3I B"KSOax.O0]^ &IsT/.YO[詙vACA3cܐgQOdx Xo-tu>|g:y܌!CZ&ǥoG;cC{$ & Dtkc i6wQh.Y3'G$Yx[W$'QkXp`TdWYs=gY|Kf n~I|%@LHpG$[|֡F㨲X*':Fp)mdvz*/gY0滲+ SwGr dbw{_m[E-8h<fjN˶Ʀ@lר*v`{+!J]屶cx{eeE/)ϦrDgy?hݶ;lށce P_ApkPio-秭< 8/e@CY 脿(<8xg:*9pmaGWQ̌W-hg*L#5f`K+(q":{7/NA!Ҏy_,*MqM-?⎁x7Dy8ĊU:X#e]-3(ߌ.0!H0N؝YeE {!0o\OYn^s8̄4z#Kyq':ьڳE9EP8` "%[b6رkkIkqi^l/ '1b-Ϋž{mjQ-7i}P^h(|nE5Ik1YmD^T):&"͈MWy˹ w.OB 0Q߹"c?Ѵs72qvHb0\Mi`t@թ.EF="f CxR*xg1Q E]!9Y!H"mI>ODr9G^cII-বms޿Zpٌ"硋~*Hce[,L֟ Κ9o4oWҧj8[f7`ojg`fPKI#,} Ҷl@@:I jhZH| <ZutpOn347ӘtdYmL="*acBNdXJ"vQg$*VO sܕs7jppj3降\bˆۢ/(o'(?ts{֜?&ٓ#g=e;E?ÅX\t̜24"%){; UݏSYb\D&P1(,̝&P ~`vQ+k)m*/sVzw sF]`U H ;}{Jd#[^ɑrr׊ EŁ!gz q;Գ`5A!0Yma|CL]bfӔG!g=ARV¶1Ba`}/|~8uCeaBp>LwFBmY>mfo(KzߛpXzO`(kwoXDƉƗhGcŲM\0r\v;"ƾ`W.XfaX)+&OA&#!mϧYj2 s-HA\dF".ݓo xĞ[Kť۴UOeaXk$kBvY4T. ζH s`@ZĀYE|,eUe9(\O[kz׿IaGCwkblEC~:{Îl7Zz\afp/o/ҼGZ)pbP|I)H?Cʏr# h}L1tΠzCGް]/p3 rKч5I=yNP%iÏ. bM[M-1cf4}[xuH<C/[ )yѓ6ћ`ƍ.iaGRObVZn"T[˕jj@Pq~s)VIC8'+Ҩ^Vb@=|qYi9y 1F;LJ,hy6x ! *dKٴZBh8qzMBɆ')g  ec6{rrebBczJ.EPbSҦtr豪 M'I0'2"܆FR:BcI&mqhP \zV\#LI Cp;XK `LMh GY-٭KwMˎi:%0= Jz!e O)E%3=҅wPYJ,}W8=L9F껟o}ؓ֕Q XAsO /uNKbruģ~djAy{Ej_~\4ݹXYHeiChu'(_>_}< Yzn5fMD[BBDd3Z> `uJT"{ׁn@H)BYd~qE~䣲ucm,pn0mKh 2_^~Q>A*9Y'$?00Bh+Z&j?I>E,wBB$M/ۺ >gz($LEDůR(+\.;DU"t1",_/XةnH/1hѼAm.SO'_Q ߭;e [Y64k;z'V4PH{1_^~٪+3Q`N2 pև twY&_.aPaom ڪ/"4nD׹~Y4FEVar~đLɹ{h?ךmg_Z8ZfmRqSXёaeʼ9^יiƳYu ? IeeIaOWa`^u߈%#Iuj5)G(H< ˷@L"Y/BBx*us1IҗHDfA$ lSbܕb'_9gs-/5F A(xg7 ^ r2)¾Cr\.!t\=/@?4ȁv/˴SB526|ns][$O~YU6K䁛ŗf @26v%s8<^4+ )DrX;/.[`6-R M6To$uD繞u nuP+:EƬu,iJV> )bW: '*苡tQW&u/7u 5~H,7 E 9ă\Ǝ}m;Yh4*O ExBvv1Pk.)CeA:ڴu*&_NdYgdҊ4BtB+m6{3,fãx)h2]C@[U|[7,dJc# N! å2iSF? ȦE*,u11|p9 6HMW[z- 5CE)5:D)$N1UK~s\}[{9n J$I_7Ǝ1%? '&!鷃sV'hp1| ) Nvg{^bAKT8lBc^``c8^vqހ\?ĨQErw[FD[= ]ompMDV+LLM%גa+ JÐ3%?OR!G Ub #z  K+eKN̽2%/aȊ쌸ðdy0 P*N" LJ&-CZ^bJ=ʡWw Q["|m$pֆқb4< y'dQ~9{2\ vB cC!ڜ$aMpҙԕZ jg/BvN-R(L5i[0˳9,*mD6@M>Cqתڵ_;2ݼ^jgjj.Vz{)6VP%i퇣V%sm& low?xYfc}F~Or%^n;~/-'̋y'EE6S$gJL#BfҼ V\] xJѫy w="Ƽ2CV W˼"z?XYUG6nǺ55N x+MX|no#Tϧ qN\k_'Kl&-VSN G&67iݵj?]V2 ] f,|حђ]Mjg.[YI͚pvߊpOΈ'QGpzgT}=nu]uFky%]yj'hIȸyY4"bFF&9KR20ЩHE&R1Hr#uBn[#5<`į`O̢ ?L G(x[)*z~MZ2$)'|X;aƕg̰r#γ 4,>K= Z隥վO8ݤPƥ5c|+&$34x'Eca9 ,E5>fPP^*G )mpF4v)ȰYfcWhQHUr\sK79mg~c%RWB "ʂUpÑI$ҠFc85`S*n+_r\[H7^4ZznrNNëm`:kO }Q6[*`@mQ@9gD l/N:Ijʸ=PP ذ 9?PyEHP{":4bՁUnc.2jϠnx{ur8̴iHC1n4mUl}#42[+c&!|U9g o%% !_0⽣uL( 2$(ag4ͻzkxvq=؁ *˺ӰO9?@gRUHʱl{T^L6{f$9h{$5P1ad=rcƟϚ,@sN~߄bupu~9,+P*{= 5T%p][|?q0f[dIs?I;ShRӠދ+ 3cA)T-5+2e>3TW|ᡲ?zu^(y.c߽ M)誮PLGԚf=%Eߴ\yhҖvho`)ݝtYv" 38Ǎ8RfyDT' 4;6<?:ҎW]&㾅*vѾf;6ramD3k2ٞꔨa45EO~;zsA@!i=wt)8}yp!nS 5|U/[#4x٩:VU Cv;^ /^gnqL< c@$\nbE*Hxw{b) DWxai~ę3{?ٷIoeMs-rdTwxO=AK?˦SeTo|KqMGMpoΌi/wM%ͰJ Nn;`3H:U_N̂D^n`ߧY$|<02MQrk8 ŝFn=RZy'BŷLZ%qc 'eSc/|R{ЗREx$ c>}k.$9}#oϿ%KD!~"UJiiٰdiK#H]pN xHIncs!ol̜qB?(;.ζɈG>H? >lO$o?b%}7hKܯO-1O-r QeJi,{׭z-O6x_F)zA8^znj^}c\Iķ+kj_V$B< 18na *ZASl߆!v qB8vuY͙gvӆS恊v94ٻ+EqSSs!x%bVĞzT Ɵ!mt6i26RXDHۏ5nX+POzԅ&q3rrw`7X>Y/y:0_K{v5?DڇkU$FU&ABI$G~, KXHL{p%s*Blْ ?/#ă7Jwx_>Gt9< X? bR>_0YP:dGm7诹_>zvGT렕9B3K!R6EZfbD7Ccm)ƋUu>)ͮYH x|Aވp艷I4C@ʐ&kq,VKp !2.T*&5Ȩ{G4%K A=ݻ( A-YaWuŀ2ܜ螒}>&o. QVGs cX-JcypH8塳U}_yd- ͩ9ыw﹜U8qX,n$EDYlw H~œ̒2 D¢f&!K>sӅ$q=m jR@*(nA_,Z~HMU/` @$ Zyh7~!F.&( ?!w rXƊm!]y:|d8-1,<:?n>_"nXlga]ZQkdBM.# ݊b뜭&hi[ϔu*M;[0t7qc <cK"y1M^_8<9EKL6޳Aᇧ0Z:p _adi$3[n yrCQy&d#Ѭ#_mKr{.WWu8m~ L㢯޽ʗʡؗu"7 HRTxk'Ea۶gƹ{VIw 1?2{kTߜo8YSGawaxF0E^KN"u:%;aF-~b1#@)^X>pIv؋;_#?!٢i;!%YGzY1@ЅM.xp#Ƀ)Bo_쎕wmde>W+RzY&_>9T^Ph-3ԋ"{}'W>H0 {c#q40|#3wd"t]λ*w^m.V=6a-L88͂GHTM8u_\D{K6#8}{٘na c"@c #m 3LGt6FUɗP,7mU^QdUd|^V依Oq.j:WVJIJ1*H +ȍA0)xs@Dž./F<27k2>UMq]߮0( 3xKVac[18֝uCzg[̼(gѧbv'9KOn6u`RnRb@GYYd/W۝յ4YOnL$$%NtS#jNwf`b1YPaH-&F$%GpN1dWPy:)xc~L]*{v#c `W f6刯&:qܧ[ȭs31o{"McfyÍ4zaٌ~]bna*^]8`N`AFOB@LcɒDH5Wjk8-elP#g.Q %I6BI1AߣkR$/u&5^]2#~ݒ{|XhR,9C4J)=LoOtz%Zl+3M4pq(j9#Ȁ|HUB;zԟ ,j _/R*u;oFz^`1eJb qSgzzb>~ץuZmc瘰SX8B*CVWXp2pD܈T4$WD)qM~纜FSͻ"Xطͷ_uQO V=m]1Vʐd u`+tz[]B//+Ƚc&Efbm9y{LUl9[sOj^Ub@W5"ϏnɏxlIUDbꡀ6$\FI7 $bgj(͝+UtN֟7=w!띘h#,SWrŝe#Ef?h>g4%A?hv|5B=~Ff4RvZxt%(4xl*& ;Ǯ42T:Rd8~bvog :8,6MjP=;!NQA=anA7b YtFC (')ї]@s+@hR'%˴"PƏ6ܮ 4!Z%XPs,X!}uRv -%KZ7+1ϔ ʴf'OF"C7oe>a&O~0m7U[ep{6U7V-UnW.LHʭ1=fx E_s,hfYaC(H-Rk=hVYwjex=fIW9'ѕ:nrkӮtQDDC斢iz{tK|DoL?f(M< ֨x : R^rCGqyd[&L(gmS$7c4 C*v^Iis=6 ;Bgy˶#kca}pj;TץcwWaVZLlNC㣁߰os[*hx]iJP W~g{yWz^Pq(`ָ*rH h|#Vax*DrU;nM+^jw6x:=,*Ȣhp/#/YAi麌6O; {n[Ih)jGb$Q AE+j7H?aI1P9iTA.5lVotp mὀSd評!%FeӋxL]Cu-R{b$6`)#R7z[08G25;.N*R ‘/F( QVqs4JmĽu_r}scI;Z։hVʫw?.d18"P q| u)۠ɥϫ\4hV*borH}<%\ԮYTvs2j))beRk__ؖ؍آG\LRoHneK,l"Q{cDV["r2[6,hI6b Q,!WӞoc/ ^F,M:G;Aoh$s64} ڑwHnͽ!驱T+W zPU p,-KIz ۛw#.>Oѕ 5~}1/4QD&>^xzee+:)q_±⃡orxoZ"$R vu7~m2OD$ D}]R0q[hFCw+M@:eA/嵹{voMMTcG.Rh9'H>R4gby tčdQ.6)bB!J:uni0>,9-' <˃__ bS4,UFWuwUe]U7gOJK3vM{MQD\ ۚX5kBȅMǦDJYlږ T=oW*.JybcdUk;/=Dٶ 6(H sK^N;}?m3[LЮ@I[Mau o1{*tB8h(Ӭtb H%Bz(#A/5i2j]]f.L+ۄ.Ad)ԏ ;B%Geҹ!3yA oω6r&1'SY' \ҹG n-%o5xuWJ3iu7XWÃ놏KoFq}`Νs]n,k Wƃ^yMn=[33. u϶DG+mwW|u5F~Q 5kNг7&:TYiA O8ZGY $m'o &)-_J]kcF9aPmܭ0Sy!W^ ~8ц)nqӰMy %V=W=d7(8"J=Q߈]yA*,]K98v5IE6쒵Z8큤:G]vzs◉RHٿu\4Z7}_X8+S%B$j7Ķ"FD&HwAx܂oȳsl@nBx\/g]:Qnum0`JB?<:LKLEcQ0# ̥J! 0;XըT fi9Zk1>UF bii9vgOK=D8A`:*:VTZU\}rH)oqsavΌ)f4㜖 h/FpA0R D#V[p,Mcϯς;|G%V{֪L8G h@K9-iϦ*̱!Z2AZ*$Xe̬#a-"LFZb` e/p5!ct}L~D<rN;dw[ULUۭ$aFy5,/B& I~?![a v$;y2(O̧#Ug{&GwW3ی=7DB&aM c(g4&r̓GOb<ш*H3fGݗU2k|]厦$/XVpS&w4bZOOi{ *=n+M`Zj0e@u$d*Ѕ2zSLD PiNPϜE.z,QA[-O- Yn\$W᷸ZZu} ]n17yY౎pٳJ:=%Wv\K0xlKE_-KfgVicʚ#qpGYb`5 ZUM։)@R(I)1z7#{3U~SsDuv\N :w?׫q>`Q8;PuvGcs+U@W^[7)ǢuY68('}}!Lmk,7&3~i?#).xd/+oh\<w]l )(ΝHI1 GOMAE-4@Jrl(^L)n|W@#)Vy.sx׈~S/-V@r*ZlݺZez j[2a? |{*SȮ%AAx-+]^.jV[؁S14,~<4ӗm㱏L3U͇."2"ҋҤB@<Ȏry'iS=uDD;XA &U8a$! IPT- /ղ{6\*a,* &g/C{Xh.8r䊫g5457rHf3Vl05_LA('ęD7hEi5x5e#$ZZo | Lyt ԣ׹{.}r [Es; 0(XN.Iځ:MuvVŌjTMjRE:1(`2*ؘxORc`SP ϤL'{& TSB_ ]~)W%e!'f Ρ'3kb%ewJ/Mt 䇞1 #ĎvfԂDoZ-ne&xdu$!I HN=nhi[4~g̑ @t0U1Q!|8(=6>(y HeiϦst_&ntM@’W R0Ae!8jLʱZ3H|@?ۗ4Or9e@=-6B%VPHՇ67@6MmP6- T?伨V "oq.-Kjf[2A0 LpF]5rOۢ+dUå٭[x$I]3spNuGF .\K9LS6Ae뵱.9"K7n _Q.'>4 ע8AIXP`)g3P3!UE} ӟQ &D5 JfOmŠȂ³KRIa JDMamqMs;^C/f43KjJU~SbpRkv]GHR7Vw?zBA.{ۢT:O])#1=&96Hp*GB5Va[ 'Ʀ^zDe%u@o"P$ϊQ<2K<5%h_v3 u>.>td+Bu+':xX_3y\LfPZ{ksOH=IdWsAKcESyXžs}PPv~ٔH8b*0X*LxgF\ W̧0Cp/5𮓌c/^ʦPGwޟqs{2GIЕr7x(o> :&ΓQ~&51p|?1/,lJ<99ZL[!dMxڳ- GCA3BA}?__L%q`#MrMɬ,{[P v.KBFu׍QK cŴ@A@|Df1xP0'y$;@@=ݩSܯWZ!BpAi>c1jbc;whEZT{j8&01urfetէFct{&[-X~^Pj:։J!uc@a4Q6,io?4-ȶS]ᒥ %b.yN崋f{pMN11M?EԸ\A <7DUa;%$3Oj5A\ţ- 9O>qtkoGRAxYel]k"*34 gX4op e!xa8 ɣ*&6,tP"#*ApgC|UQ}>l҇֙gʉ2;]a3JkM1o$k 3k!`ۢvmDI;y;m6}\ӫ#⠰ yn 񷀽HbBtpzj ]^f5#i0teЭ:Fm>e\Rbf[e.K3Y+bJ~di`1>*s˘ Eq-vtPX. J.`$ǜ?A3|d,4S+4Į9MX/Hi_ ;WnӇH^ ?Un3#G mQ ܵp|1/{&l%qeْ"g*+n/C`K&Xn?2rRg؁9~Ew|$֑ p;7(/Ӄg4stt[3mcSu@J um}Abk?pDxD~fѨJ/bO] No8o}0lPw2KY7J( S,R&) py?OH / /bl( ڪMY!o÷!^,;<3ِ}&_ '?R״Tin{X$MDl+Vo{oeey JBnh`Vd O>?3eyb]gp\og.8$ـN,I&ZtmR%bɬV*~1ՊP9(nz$Fv]SW0Sj "뙧U^WX %7RB {H@~Bvm X%Иj0IC #.?r#^ɚS!GO}\nėˢY E5$'(qX{? _3hek|&GifVkF)1'lZy9?۵ѹ˝WI~,߱@S].YVFE92 w[8CYވ8A\.<"A/SsykM%#K?`5Im9- R :d7OBg1WTkqoNeaBm,v~nTtR*?׭oTL&-LP,=Tv3RQ[5xu"atٲA% m~.:6?"&ܕBZ/ӬU7l-ϘF9I [Pfr?, _(T&՟7jNc9Eצ (Ԡ܄tqSGvF *uWLDv'|n)Z>d4.*d"`pȂ!ul3f2*)x"r_@jW42,"hUY*I0 EuΔ,>C5b })Sޥ"RD6Tctw160$~%9ڏk-$?|&61(Kp+-pos,J[ډ")u"bx-d|-d.HJ H>no)qZk2b9/>h ,s/X1ԋ}bnU9|)T."7d(~b$ @#ou3XX-[QmuH:\3B B?1%L|cٍy1`Cc@sa,\<Ւ%s~ބ6o$ݶec Wqٱmg^e=A ^|1WΣmeܠUX7=߾w+YZy@ Sh6ń3Q)}x[a~LoS@Gݪ&Y8~x[A79q> 5 D/y~5r]FFv! S0*iLuࠁξ遹__#SJ,@ݪ_닟Djai\T` ûs\.[+݆hOC4,Ru>z6VJ\ۇ!%ވlbsKp/Nk;|eMz 8B?xOcǢKdls\XjQC+_.x,̞qts_/SJ4ԛcJ{DwO>2p0*.PRn:ԟ6u!Fie[} nOeuDg=:G74-:y[݂%"'s*g\qsy^-2b<៹)y8TxtZz brYȿ7!Q:!z1H~O 7mȼйx-4_6W;Njyͪ(ÒoUQL_LR5 S)ɺ#{$}4 !T)JR,+fA"2o:m&x<cnO 'I%¡&1zi]Uʧ5Ż1+=/[fo/t( hFZaAQk:)CIjU(rX7q4p1 Jղ!3'iS%{-ZfT#{#\AF'8ṙh͸k=z*Y`#܁J@&.EAS1@ M#cxE\Ž$>?g`-kѢDqB>%ƋmX4JaT5!a{ #DK2s߲dEOJЅs?jsǶC`3eLGX$]]'ƿn?uM?I4;8xeLKs O(B 1׶!b& 僁MC}E ~jOIޯ~qxIưC{Ջ.ĜϢ: G#:/m%w* De=iju-XseLzs2oW&WJ9S{ɰf=ywʞ,q/Eq3_Ȏڜ0ʛ<~=yq&ؾQ®9R\Gz W}EI *acտ =_^(He~*x&/!R)QWPe7D`gvWr5xJb:lؼNcsYۊJZ>B!"c6&j"O*ňԎR~6C*nJ# d«5=0"9.R2^(E3bmzqKR;UPȏKCƻ:d#[l ? ݤo8Kԙ ۬aXhvuAef:\q+*?5:kmGmP*\WfK>G;ɲE(9J!Z/djp}&2m0;S,ҷWlCp@>ˮ>AeLXk'گkM2v]@Mf.d4^?ϳV$X%E 0C@KHXBn&:jZ g-7IΟ6y*R;`A5Ag)G. QІ4 ۚ}hpXW^z)wѸ/\8pvwwg5DHh_V8 w9eaLK1c{F<%n&4FK4WGW|9Wa*`P>UןQo7{c.IS٣) DS]O@^_zbE*"%V^c'Y-wF$wfNtu(]dPBٯu:ʇ/TMenPlԡ(lYS :f(܄++U}]zTJf>=cOkeWN *zvvSBrZ(WI-h3qIRܡJ)*1ɂwOfit?„iĭYDTjY-THǙ&xogH}Vf8v7ʱ#vV15'j^'(BBRkM L:5 x ЅJkybA1fdϠ4xuH,0MVeD/*;F?4Syk8k@C`WєSDnG8o)i aٛEΑKEG%ϸ @3T`kޥ?c $Q8$b(*0%I9JG^C^4y5 5 _;{5qk?/]Ԡ'k# W&u \=H$d3z?/)#D g5'/B,D:&P9'c"qP]i<9ѲEݞR" ZlfyA8{ |2 c8 t@<5DPF4{5CS)`@\l=20 -C -nEbq梆$|nC$䊔-]4}"SԽ:T\]L;4[ 獢5mM]uߚ:AT؞ft+Zx"K"A bpքG.+z8x8D#X%MakAkP=y"gYGCelv0ncoKWwUgzZ`9lU7EUA;Z ޠsM7d8^>ư_h gsa§jWgp넝ֿp~S_" VεKz'QwX7BR3<5ר#s.׳դ O0)t{L}xhhTKF+Cuf-~QSIg% ׶=fsd^Ӭ]wgS5I+АDnZ š}`3$ NV(벋YCZe]L3D.[1De)-WQ̖b'qlJ#,GELg\ʪ!E+U9<,]NhjBr!H~18=vZfr:DFh\4nvcՍiآێ˝*` :ݧ!ne sL9f;qO0+*`s߲ mѷ,ɀ =DϷ'W}X (–\HL'hvΕS}~YZna܈ӻr)P s̬#7՛Kh겯,HP_0U]t8dGy#P̶YB!OѢna=4_y0r›n-g7N6ٜTBSU{7&IyA2ŕX*۲yXF(hmr+[.Nl{XYRyH*+SN pU.k/Eųʋ;b7hdp{/*Qj\rl;&޹Q qGx*:B3 0Y]4{'jee{b"YHuI{b҄^Cmz}kK,@Ж1@ _>aҏNI|ӕ1 Y(L*[`$"šor =LYPqmC֗Mzm[3.̨78/k^,e5>noTwindG/I5@^?ݠƆ=@3A5e7hr ]F,S 4RQԣ'z}!Nr$5v+Qʅ,B!yVH]mð_Kj TXtF[E?ޏuR +^*!eQϘ]~zlZtlIO([Nmؙ1I7Тss-݇!Ոa7 _"/D4Um  1GLڔXW>e&=)MP gu:InhfJˁ 5!.Dw&SytaCbJK$4Q-kER^ v-!'7GU1풂vbD|Pjx8X^xQ7# Hd{Xf_@@mk4a7gO{DjsNV _Z4SΝp"rX^/B8Cޠf;fq2v|Z*P\r$F#z+/S]d-qE~ёtyyV{/ Qdd!No"5p?(bߡА]ƈH,uü@ȵWs"HD-KvoJB$OIEGDi%ʠ>k`S-c6[KWGn:bQbS CഃXyPk!؞ot" *OѺOa opoê$vѽALV֬n!VwΠ9ܘen/ѫ!H ,BJeH6-ӻhB/F=sP=/Ln̓5h~CR[19U+!5dksZm2CP2ޟA&'PIq&1p|pg}Nnq)TO`%$,|9 U7,2¾cec 0 Y j n[㑙 džZp39=9`|2r3CDIڱD2&PQT7 li@EXJ(kj%V"-73:t"z?Fr RG5WmILㅀPcsfZE]t{ʞ#9(5C.%7U>c@olζy1)^*`pb4Yq9eA7*ݸ#ēK-8]5$&7yΟ<ʄ _un$J3BCkKnsKu=uqOE0  [NS ?fՓKBԣPDb72HQbȦڬBw2]`xFy+!H2P7?hAYclwHpkmb cc"tFNUOx#D] SLh,^$ԞOC.e?fc͵3'x(g'Л@70c4Q8n j= d6} 'ۆ o( *;!x0\H\O%P%R,M|pmF[g0Q6_nyD=oK#)GC 8@7])<1:5m4K!o^1zj7p#VE1sLNȚk'.msX|2Da(_|!]m?DnVpl!]o`hPo-Tt}StGD q()_Zy&kK`rFB㏿1 6UԎ o ư* f.חtN8#ƾRCQe >+gt= kWv]˟}+(ӊOPk%gd'1Ӓ?ǎfV3v#Y+voǐ!!V VGhjƒ_YZcHH3X*ޭq"P}PXN"o^U7>Ybg 72kbj0  1>"_V(q}aQ|H=]8%*x@̾4"@/9D 洟32"~0mޑK WaȴLӝwr۝^(p`.$Q~rP%gFrܾUҨluĵ<x l(o۠8ejDQ{|ok`- s+oy߉|1G=ֶHQ_EIGufpJuT}``m}vPnL3Pv` t6 ą"Q״j𡻷§k&$cUu;M.?Cb;f-21{wgB 5Q_N0MV!=[w6A(MwpXU:xPqT/n6i]VQ1=Z6-0F =T>m2AW).gku:"g?bvqrlp2tONvV?T'rx/'=w7\+B \OzUZ=h^"+" Ӝ/:&+o8_i=+k=7+S̐6orٹr4^hF.%uG`fxsBWz&TSfW d0>rO߂հxhLPib]\sڋ(n8C O)GGFGЌ<щ"l< fdT RC4XWI7нrԣ7%"uUpd S}lNcatθyLLv%6W̠lf9(LaB?a+SkP,qEUG ?;n9U_|>eX [>%@*՚oheMMzddavɧRoBZCA_ǩl>0rlιT+d&_A2jӤ=?.Y-9467t>Lm97)BLlb..QVt7؎6K&~量e2P*jy>lګ6fN}Sm_rLa7 xXi0L~4oIm'+#C-`3H YكQ̆uAXG-Ew O.$G_!& fF_㊰U"')ê@)w c:׆,}cx#:+u&>p8)0 ={Јy}9v4J`TfBHFDd[r'aʃCpW! \)I:M x<hJwQh/Wj \bxJT!B';W^0 Ym\^ .=Ǩ ʇ(H:ZU0q}<`ѧyq!G㶪}$aπ%m" NAo{vo[u//m*Ih0.ٵH522{{q HO]NףT#.z"˓8e¾N9 h\31w abZ r3]f07O{^C,c >C4>u6+4{|8xhvh@\.Re*lG 1r{ [%X,2ok[ZƏyVꊿfm 28XQ)k9Y[ hbkw9ш{oRE06Kh(gs5ݔNI`rXb{(~LJ fA;~@^DsE;-//!g(prrjԋCs).Pjrqӌ$(s\ A޾ v!8'%YM ~?)h{et Aҹ+(x8lS& !L; +lnP4*&6* hQ7 ";=7~Q̮f S]!ƾ[0f.Ge$o5ksP ۞ i>yw N(Y8JuSYoEVj3k*usvQb1P7 QPGP|Z*޼{=@-dd&D@>+#D,t!6=, R{@MHܩڜ'l% uSE}@N{PX}Ep"wJ%qݽ%'n./dQ'?H`sqS3.vؗ\[6pB2r L<.4nw gb8\xZd"(A7Fx"d".~`Lж s1w4 |}>Xv}"li=MfӈXQLћu' 8;,tꮸ8_tJcgu P~" \$ Ny<~`]1MV jsu-+u9WeGlɣ刻&ߜQgd.\J J7"UY,8pjЃ٭DqU߄C q<.`Ӈ Mՙ+hRAAVT\qr-8qtUmא^4ƀTD٢} t{3Q@#8ZHݼ Y6[jΑcteu@rc=u%o] ܝ;e*b5B8hiTCT㹺[IfJXv1-?-HyUR Rm$}z@G3zwx-#\8vdGwwAb|(fdb0t/WcћZ'`؎𶁁xTz/ؒJo@f¤vkȿʅ)}>A"ʴZ`Lӊ^N=aiRFnR'no|BpjR=]ǙP6(]sgP_YdAHQOx8ʸJL*JI]rm{"МRa%uՆiw=qs> b]: 833.Tktv҂XNmU`DpvSj +5J 7UKw PE5 _T1$$!JP+0$Bh`uqpr$Y5Lx!d83UY,uHt)_TȄT\} >HBPD48_ו߿Pqa\") \ԔLt'bm䊸Ta?P{ {*[9ntrPgtE`WtYb6F)#I6 ; 1Z,9ٴ#*dXfne\W XQ$7u.2DeA$USio.ueH0p2q6W)'e(0O^SC*|Qwj' H>bf*SI99y'ЉakW˒v\,>~DW:_5wz2VٗSl?˸"g!8EbO . pI l?WYՐ 57R(5|ުu^d"(ST &"\ Ə8R%IڈEc&~倆Ll<=5HA|iQ8ro (2i"4hVо@Ј؅[g72ae{}}]_3g^8]#wQb2NڥZ(aqCd~XڂaGY2)|yTYOx-aJ68aFn'j\#?#eui5e0qRr!.7Z(F%H0.[\Y~pxF548I@T\E+1Y,~}MղrZ<]cQtg6юAWU hCDd^<G YRAʷ'1FGJj3XXRJzn~^=_?]iNύب{-|*@n$*@ x$g;vc;oQ}_)6 6F3Y_B<o& j~c .5@D_ٜ1)Y)qk3y)7hފSpgx'&ICob+OOC8,{@,݅yieȠ|J? .eˌa2o6|/ 9,(,ozOy=7$mk!7#bLK+w!l^eHqe~`rAߊ-ELbC)5L ^n3&fQ o Ps]#ȖX]D,m/. Q5uROy$;<vlF1LIbemX)E$- |kj'q4[ʜaJ-H =Q 8H򋎆;O;G2:鞀W4CTu$d td8uBt~Ygn%Khߊ2xUPŤ) 2cKhM\ `@{Ҍ*Y|}SX{,dIR8KL(V2RN؜{/v}f0(޹+z!^ٶ o˲ »yψQEq#!Ym|f xSW* !"ˉhR){P 0Ekղ]E a픡<ǏZ}ozAK{/1G0S_gc{UNe.h3&w&`yl!VXMG[Q?x|cEMn`F?1sq1)LԶALUV4cvD ~)+ڴi"Ґ _~ o r_zt1s܅!>mAac>7wIف"B]ɉ^WԂecfۈcWisEC=}ڣ!HiutEQ%Z+,fuQL!ћk߽"BNB[(9UW"VZ%Zy 3XAjHގۄkWlFqv+t*t3Jz24G=nWS?;zbFk91tFJ_ahd60tJ B_lLƩ}|a{fH>Xf/GNDY)M'~̜-l㐸@46gmꇵC-.cB#n] =>xd*M<%̳xمh{(rbYKǻllpNǴHq:-^&փOMaGbYsYeBU2bϦ W5QAHx9;$I&_;Z/hAb 0`ɠ]O<ߊ^~0FX o>XG6Eht[x`CA䴡PjL#we//f]_5P=eݚ7_.eSP7SwjP!(4~uk@H7`Qϒ3YX&-R P77VP91$$~z WJ@l.4Nk%L"K l$/e_q&FFk_cy_!qTvpPͤ@́_Bv ǿQ _Ds8Dz^ nat9NnX,`^І1Y qGIr،CvW _QS6bEZ^RfT.0R  |B$4!IRJAv9K8.J<( ]7[4mb❾iW.0m'E0>)WQD<~v"oOW^1Y H1^wAhwtJՖ n_t݉*$%ltkv]ĩ蠾Eֵ9[6! \m1`$:wFlM2  ~֞cp\sybpx/'Ʒ%`>jˊ՚\X tX9{ % 9rƇ^¤h]ߗlp):"АC3*IKa),>ܥPE ǟՊsI@GRC1d$C;_x;x%&MTxCbkeW#%(= a v XH_W $u qQ\IJcda̚cj^sрun(F/xh풆a41i{.J]cerƀiyo;f@2 *€SQȃ&(UUy3臫tov;AAw8|RA=9_p 2' [L6C'AK;Rc@hh/` |_ka7ZAU"G6lr<"B#D׽/]ٹ}1 P +uJwJ;y8z)yw59,k5 :\z(D_ OVWER*Rz[zm* 7fi 'StCK ܆RS}Uf\,d~7%{6c<_se& $MW:lXweKbKdQޯRGԩbBRh$#UGgoNMЎ(to8FKWעn-#cSoۇ!ZiZE!F6Y =0bV=vVBt)o a"2}|vFhjj`yOq$|JkoAz3<0hֲ~ƌ iMLYOuSܡ}fJ؁fZBw.Ebo! 2kK205+  3qp-YwY)1f`snLDMhj6,bʠ[X*}\[UfJYЪ"R1pm0ѿ8Gt"[.Y9^:_(/HpuD"rx'>T}ML0j:G_iE BWFd1~~wol%Bz m{bc@ALU=y:[ז[)xWͻ6eJ#)D2yr>Sϸ+]a-]+ 滣?r39W6/UV蕏q2*mӃ*[sLٷE^)Ԙѷ=i/@]ȥ`s΢%U U tYYIWC[Ĵ#5BEj>N;sW**HAPj< {pT Ԇ :D$hЖ+QlVT4w5<ߪ9 JDӺgB֓{8J3lgy 7lh )S (sO</wĦI^^95Օ鳌?a.$iKIh7v3mۅ(69ᨋ0YC׊%]ɶ`KeO4ͤKs7j09tygO4M͠*@< X5zمA[95"}]Ι kۓOA*!;~GQleլ%Gy)ByB[֓q2 Qw6⥑YZ"?Wօ|㋕hyݞ&awD/+w6@PCv'gk4BK޾FOTA),K?]Ț㼡u[0 ~*r*8LuM-D"(CkDAe_PIN:0: P?aBaaj#O4 \Dvbrl/qvXySwZ00 5 CD^WLȴak9lfLC/QNdh%p5m{R)B[s ԍl,T%xYsΝ5']2iYY"?CǪX+ rӧܱh{?!-Eހlx[2e}')|p(.n?KC]գF`GOmf>͵+ %7ϼT XG#YD^gЀxBsezjI2[iWwo n{KQ2U׊Bs0+Tpdq=j`'׳UՂvDdǾE/l2.hCD:D6taĂwkҭĕ+߰~ec \=j9`6pP/ p zG 5ܯ|%Xtwb?:ƠBUd5,ꧦb{ 7eAC m!SXT+s.OtS+WQ\|کRat˔/XH7"HGGnZH1 ܬX 5C^򷭦Aj'O +GPm#xJ'y]qSq03XxQd_1 "66N=y@-TYmXySf="^Jvu!u# N[h8ǢKMe${O, pz~;58dĒQCyDԑq:  >"+uFk,%uxׇ}BZ [qfqDuE\cHЛpU>N iQIm.IXUldk%C=/ܯ@#,|ۘ{OȄh8]ZArGeCl²5MM֌B!:`&&E; 5$lFnKc!?m*gT9&[ySqs̍M{ù[P5bL rD "Lqsb'>&3s_b>^,gW @OKv6_.u&<@vG}=y\/ x]X2>% %bxaf-TеMsiuƈw䫖ӽu6f2LУ#@n&Xy{Rˈ^ mZS&`Rk&&؞4RvńߚI V| 1ev|Ѽѩ}=9 J0<9_sϢ*R1qV.񪼊p J{pVpqC׉UIbϻj D!XQ|\7b!Bl`jGx}I8AJy/xWFÅwh.?:m#WaB{?m }2eHTT ,wӪD Y,3+#5 Q( |yjO_MـOPgGF7e Dƪ ЏךuriJ"ƥ*p1IA,-PUI\]z!Ǥ1/H<ȅO p [Е 6~[Vkܜ8xb$t8+6 f+TIr:nx[$8nn)̐kRα}gIcAxC܁g~dgK΍<Ҩ$s:+9JY+֓f& N+}a 6*r.{THᛕ2]dShp<\KOX-[^\ ()5w=HRX:^j'R Nɣ=)`8-ggj̨QPN!\P~|1_t +r3Cٔ{*]ƣQPȔ>{\({Ϭ/[8G:e]_G~Y5q0ѥOR7}6o73# 6NvP2}Q#mJovv>b5?#ҙXJq'=%N.s!zLH 0T5e7J~M#XX"UZB\텯_ϊ?;`{Z.קڏ>?$=yS5}Q sHdsk'>̔=u!a55y\ǧ5;5 ĥ|*/r A7M}wĆx^H?l?Þ d-t`FV"{ءa6Km9KZ<}t||i"{oOhȖ,Ko D[C>$N츛9 xD "g4\;zF.%]3\Z |^hܕ5i>BBٞ9'Ѷ1&Bl2'wdaAV!L0cݴXH4X[qB_|NB E D*hSg%b^GņP򧬷p䤜'^sVҾ\RY%MYe\79c~hDlJ%!=JE-(ma jd_f?}wAZs|5}{TDD^[HZhR4\/֮=,=0yr廁&pMk(WE/691R} _,N9ظ}Y±EF )iyWL8iuVIoOr$+ 1cfs{uKj׹9*zmߐD.qTNpj{tcݵpn"sr"$$KeyM#_5>sl߃.$hٓpo!/Vce/1Q$;]\meƴL@~6N.f2__EM\`ZT|>h^C$'?; ;|E5!s_/-ek9tV'yK*|>,oܮUoRr2)f{RvykW > QJ>Ufuf@8 *!pBP_1ܥnQݣ'!x3.K NRNfaͫX݄(V:&d}R% mq \hCYuhܺt׌>_;< mnjf r&){!:cu'cXP8Էh mR\)Ǧ&^ >iʕ8nD6GiuMFp4L63jKqG3B_$4 n9rjW5-;鼰\H>:K8-g+՟w0O1dnĹٝx*5kUc^@*n#۴oSLh. VX8Nx) KsY[׳R}zqp>,}ANS9o3NWD68~O3po)@ܘ`az6AY[n?[(_n GY1Z4OYs!/jQ0]`ZS)t0%gXJ%y3G[}eG/g㚲vJԓ/ DEp36"O&>uBcߚ|{p|k=ϡZlp7z=+~f;˱|5,#Q!R0̘`j[ވ$^׍(*zC& b" m4ˣp3.O#/7w=%Th iRQ3N.ƔA W~I_P;0?)8ߝ!ƺ^  ?~x#$69 ut d&!/0D@y+ϼ;,aP01ozaU qW6m:5cN)Nժ?|/K R']W67XeS ;_Tv=_eWs\H_xID-\+y]58V9orEYY?Q^,QCCSyxeRdw\&?1ŽĮ)Qk1N//ޤ<^K7_ԙ[Df㌹Ln (m۶"Nj]Wf\0)|юT& TGr!jH&{}^*2r w}Rc\Sի|\=tL!"'Dߚ_НX(rZ @5u\?ߙ ہU$]d;` |x7jEH"3D ݙAmxӎ羪5ג3ا<9}9@`W8[mK}'gս e*?-E+Ub 1-IxaWmJ- ?"S4螁tz!MsG[ Oy1yg)&WAm倸.u%+k:+'2;Pa&RQt@kQ+tĵdY|ؓhoŃO 밝1fiEEd}\Xgrcc*>ݼ~n\R DKj_2 1"3\!Aa+'dzՑ*o8>fbJ-Oڕ5rl?E.'Sg}BcWM;8칭)N{3/삹&Ů!$"hPkVf7xX7qbcc+TU,;e9NWPyؼq龧>z ^ak)\ernŨDhh(UR5+G͆ŀ [G9bS(ޮ@UӪv6v~({j'%Ui Z1{l`lj[O2?$]#;Fq0Fu&– -KI^XV*#ގV'#ۄmG~/f^@f '|Z> K4<(})j8V]j=q ۨڱ2-SQC1Q]گ瓡pCG7x #rf#`Hg:br# w[TūEy!C-r\Xy[S[Ħڲ XEeKd(U[Ly'6M) Y JQAj2?PSϲd|vu3lgxIVC[Ly3J,͋+pl58jӾ"#^ aC,bǫɕ2We4othJY$( ڊY # }69 5] AFSusgRnXڃ\ \l-cn4;45苡XɁv8vbҹb cKzFۥVw,;Rw1܅;ч"TfF_{M@*SjBodzrBc >YrK{du\H̊9C*ؠ&t߂c_~"ĸpy cu<'@rl^AߢG*ӄzw~s 3mkόU"rbvN<PpP=]^-, ~6%#ͦP9z)VWMa2`8Iئ4YOg V6!6 l<)9ÐB_XȰ:wʆ`1x0 \6|AYZV'D0f, tܙ4lASJZB0Jtqn1z}mZΙ33_CP4P܂J%dgGU1+=<#T^^&7Dhw& ѯ@FM_[@N݈}mb`pz07'FMc ՃKlMP.~$lOP\P-7\e4dhqc3>@"]W~"Ƿ4r鶓/"g. IoE83T(5;3Lw&D^2Mo7㢷d H>k&Q3{ wޔt]t$c!ƊG[2?OkYF|~&_0&Sl-l`0si0R'FKe3u(aPO0z7fs)^*0 ]j:}19ՠ7A ){3,vkJB2G 11-؁.O2{Tn)viG+n"Po'{JFj7{059kއ!/ynVDOaMt7?͇~jWΓN]ܿJ4H泗/P/(SX BOohL M,wH.xl2<.Gb/? #Qq "ǁJ~Ja>Ϋ%0pU^R,Ş{w$Ny-4ҏHHƋE>aƼB5VM W ~nZd=wv{99n6f ԣE!u;8$֟0D.*pF)%9ܹD=HK"ziT)/砭pΦUgٳs-&E#V3}رhNFk~ket(6t2޸d͆aU?Z -bjiqBV^/QAczR l2yR5֥7?o`TtNׯ]S`ǚUY xgГ2Eypz0\wz$c=R?= MHU;s`r N-CpLw"ޝ z` ,!DmV(T.*YCը Ä_'ỉ,mek A#Ȭ n-LAPyj?H.C\a =QkUehxQӬ8HhwFRKǽg҆*Ŏ>2<UBYH "3Ҝm%VXaIU 90j^+ 5(akjP>[-p@k18 Z%Kidz2Ǿa+6 D0츓VIap]7Xv>ĢH1n^)Rv7RDo_;2 8^p:3gDAX"f6f) iO< jfxr"?U<0dcexC -cB L £Ϣ;g+̮Ȓa]6/ 3}L~aʾaLJi{7Œph:LP hc~#YV+[8q ϼ'3)fJպ$F"0 4ﲘ3Õ S`Ēh|qƀ^t{ͩYFԐ,#D6u[[`-|D$Aufaszx_4{zf˅sH=UC ~bs)!(s֑Tw7!&8 3yX-R<@Wg̓LCҼ'gqaq=pÞXDٔnuY~,`)- &W<0[׵vRNi!#S %"<3 0գi0gEŹ]aYbVs~ab}"p1>ef#r;giO,¤!4J ,KaOLvPX!jz/kD'JD ؁1Jz[,1١r ̢}>WT"v-%AY"$BEhv%IaOLbu[[\߉T O>jEv6/H6͸G%YܘP7$eJ+`.J1s]" !9CeVYQGHc!U<$"bh%xG<;ah1ڰ+"8HAs8S5R yW[$6c}_NY  ;mX32yeҺj ,q,?쇩J8YAFN6Ҝ*C*"'s˯RƝ^l]#^/W kIbT1gz{.j2꺃#%[Vܴd'/M#BAUS`*xU;$;! 1k[<68h~~F|kJ^+I=xm${1h%b i I0&ӀdzPJU D5Z9BS[%桇ⴻ {fөV8U}_IB ov}ٵ4h{ÿ%S$?Wܰ&a80rMF:X>.Nc&9QX+r5.)Zm)8׍ϬMz͢E ND3 ]U[LRf"5M|LJ̍Єx҂ e懾=eLE<l@Oh)t|R*#k(I'lvEU.uǑ0mη7ۉaQ4)[H#mj~B L:JQih ~ȥT+vyYPq>-āɾ4)QlSudB1D.K'rAFযChra4v'03AN5o;Z+(m7\WmIU:mx648 'Vg:9">Ex{W:?~~&]3SS= `L~>oa_%$4UmXRV |R(}f[(6SZNj)@#{M)ZHR? 6NP;1re3CLa)H$hmX1<|zA !mٳEP ȿ(G6ø&5[) uWc1S BI -^(^[@oXRVMMﱟc+8?w&,xo2 0eV/,rEW<zr>UAvUrkrog|] D 2&uxOpm5|0+L\H"O Yp ghF >¡ l)G1]:=eʹXa?i:#*4KUO̦?ǖr\̾I0ƚg82Pơq?9?r5QvN$8m唁7S 2NlX1l;e>G6HATr$y,y# _r-4ߜ)+y:& H0M[dqJicԧ )k{A!g6;?Œ/zĤ5ᮾiYb 'M VT؄_@P8g,Z_ot~?:<8*Vc% RAX0no68 7 )TF\ێEqpl9[T/^d>$=Zv(2I?z ߮8(3rKe2o^ Iԝʸ$@a'7!;lm ;sUD8:rG?I9h<+ևWP4qKϦ32]vz 78Oke-Q趋 ~?:VSImmq̏~\8FfLB' Lj* YG2.. Ct7LP2 d/*^rbmM @Gv u2nE>a#"2}7]GWC,Gܛ 518`)KʈF<%oUl"X|c|Af峼?jvN7Pt,gP:~_]Cc7,YVwż\+Ph\+,b@LNTARo%'1q)atB 5lhNӫ67&r3}Rnք ,~S|q hi]qpf>Ǯ뷩;9#-C͡zot~]t / `"՝[!e6iC &4[~2) ZU4Wɵ]OJ?>K|-%~{ XEU.wIƲV3uоs]D,Mi=rte4̷Zt-E|vs|؄PV$ߪ`* #"ҙ*9V? 4/iPWe-\U։jH#U &i%X1Dw"E٫*c r iT Hp/QPzB(NDqsmݘV[-_)d'ɛO:tA2o!yӂ9j0'j'jѿiu237ꩩҩ lQ< kfT02Q)FM%iaSm01NEaVהXS_u'SPZ8J2vD,Vա_ 5nx5GDvk Yٻ_0jsp7;QD3쯕l'o)jHT'giUۢ g-؏tI? 6bIXCw3hr=^]:nZ~nC!3aD6r[83mh/H 棴XNڗ*\8dT c]\Yꛔ͵"=9 ?N3|0Bv W?6" *Esǯ-( ~0k6#E zش}|-el`W}(F ]|.XZ\?:޵1;Ѭ|fHCK$  U$7??7ٖOA׈qq a/PЧ[r_觾,(HYM#*G P@D|L;iAPî7e ڳ#!ɯI*mgy7_o~WtL|_;N1|җ灄S$">2ݥ/.Y9SFRVDcD,;(U(gg',rMlѻf($mp;r4P3}XF>Kw])+!&ov~F$=$5eR)J 09Aqc6oҟp@-F~w8%)Mvk 1TnAj?6H(_OlybR՜j1x,}C{0_1 05wWAmF@2jؑNsC4!6Fhr!ibq^d\Nb!2UңHOK2ʿ}u5^ˊFx'4zT# mZq>HiEf|tR̬ JaO~x^X7"yP&"ZnZQ-NVB5Ͳ!oi`Ql+#jNH(kj3v\|,Ǿ[1*֤62d¢7AAE&۔ Pd@(UxMJWZU|xDzf~MQSuJĈ)D ra;[ꘂ@VR k0@Tt5q a}.03F>U 7yiNiGLWO,$M" gڟ:E𔹾0O}⌡JGpÞUǡ@TM)nnFz-WtkbwDE;W*7ښxQ0QפidNjtsqRèSBsuu˽{[nQ7?@ub<;D t(/ď,)\dwpy@mQä\lD=P[$QU/>yo.$=yGiX \(i{~q~3vg6e`ԹXp)y/ft P-\)^bt.&sx~f2͆+ҝħըIјI[ܝ K>kdH? J+o{wl@].V9_Wc">-JMN3yˆb:fgdG凮jsB5)g \+om}tn|‹zĮe~"4(^?E)BʼnؒuxyuwY!fC铬ard/dx! NE/']Ch"Vr41 uS4p?0OҠYC/0 v712@0tv@_pWMcϿ b5 a.@jCGZѤK8-[F" _>F%׽>#g_+ʺd;qyάX0C}S. ZYWzQ bm ,$wÚ<ԺCsp6έ8-kkJJ<69LzIl45Xz^&X8E] JiKÛɅף$1ayWa.%ZW`5.24u}{נL>'#{A:?y.9"[i ZL)IQK{$O1jW% wHs1xh[(`N57xkj^F'$|]h@[ BoOftrsM!P8eU#tE+{[ fSqbA?pCrTRp$"?0^6KKMd!(Ӑ%\Jёl2 jB?tg mҊ/kPo :MڃY4F#Yh^f+"|f9Tz>^ 1_zOMAУYJ4%`.9)xZ%z陳̂>L[JB?Z-*y/oodKuPik&f+5i{M 09%W$CN@Dd7 " /u}Zm0yYeP 8uw5:8/)%ܺɕ48wf-AJ:V1*n K-}PN5]u(4V/ #W5A)]$c|Z2loP[.d}I]-2r6.h ə?frmibP#n2~[N[H-IO}_ſVr67J -K| DQk&n""?N+IQh~qa5흯p'%ߙr5=@!S۾vS,Q0H/ȎP0C*.f5%!@qxm_2vF:d\w`JaeHDE݊xlپ>1LT6\4%pq.Y>68r:MCMqӤ,^Hbg|u{-=]Ns*< R: Zú+[^Bt`yJln=]ʧ2 ܎7rY̪C&eRtD =} YL+0[Y5C ^@@Pr0NDb,*@PmBܸGoR~1D<̀Kb{G%Lu)(iC(9XYԕg ۔=L:4X%6d &2߻ܢA0ڻsS%|_3]ӻ1۟@Z%W+)2Zv+)/-Od9t}$^w ݳ)cg`l?e-e}kros P@*R1pkB"($O?>OoP&rtB{bX[ܺ|g\L r-eGw!,"sX}1'8U0? E#E~.N4l-&jyt6.zk)bG͠@p땑La-H:yJ7t5}ST;Sf[Tw7Q.ΧCWjc~hnŘQ{s5[LޥMxQSIW-, Ɣ3/kw wN ˊ1hò$ZvZ}; ~@Yq*0th5SJ#wM=".WFb4IJRNA8A^_!LPJ :R,Ect^Nfsg'SCnkӎȹ(db6/ܶr;:en_s&WD8c.2Pi "^7|\&cꑾ $'-94bDM[`ņ Q3V1xSCa& J˲}xTKȄA7b}D(Mydp|^od#HvY=蘘Ha^X*:DŽ{z⮘kU/} 4D?[^7/3(m۱GSZL$yܘIa4%kBMh tՒ'83qO Cg_yKb$,/+ꦴU^|$ &6-Ia򚌹^b!'7?rw^ϐO9"k&\-5EY~_*܈czu Qedga +~q}v<9vYeXRN4 `O{AimQ[==7UM n$pg)K%3{5n6w*1_A yдL("&p;xWx9&V{`%b&r%F:QV'F ^@=.e"6Czm uYFSAQ)ЧTFaɷ0fY ۬Rbp3p&7j.՝nrp-W& ǬU>ŏ\ڽVsoؽh/Htz~밮*kP:Ӭסצ`0xUvEROo#<5t[x]]h!M(3>%q{}KMem]xJ.jqv:ܥeI-{ )#=9a[2|Ed4{" eƤgVTjG(GnkT[b9a0SYpM&g*$wLD0YϺb6V()PZp{>wgƐ$ XCzJXQhM?X jh-:=9=Bo N]{4^LT>%q;)Nx$]/Ⱥ5"[ČhM9e08pit~q=q%Xm@<;r5fIiH戙:t7tgJkl>ROW@@dtVM @×LX+3o܏U4;9%۫# ҇{ Ai.cܸU)@9U̇j=sz3yn>YWN/emDn\ʭaqJ) XY[3k`V$ FG?vkϞn1Y%6!g-]W8qGRO7Ġ8{<'QR` agqnf2obx$U>]V{PXp$O|vDkX^7s>}\Tœ8ݟ`޼4_ߨ~#7)YFӞ (k܋3.q{K C}$H.sri".)|AgL9@M%3<{ PQ3r-!sH^p>TVA*>%V)A)4TMX0/^Tވ/жo@ Կw|2*Z!!^nal\3B6>d7oL:8 (k&/:jP̌0Ǔ3>GKi? KA?|ķX2rE46s$ĒqQ9%*ǧj)@݁lqbը3OI{mX{IY0` ֒<%+$'+VB'0*߆hrL&sČ.NP4h |(؝8`zd`0=ЋqI lfƋ zV W ID?:F6\Lh[.wF UF|5a5e͊ f}1;0}&BNX܄"8M"LC-Q%h4v9iz!f&1gyH7T@u≭acX>0*K_?ڨ_~ '0N v)I7{vaOjD%yӰIN۴9q!{-!_ \ +>aaiN; dX0/ЄUkǕ xTۖn ,HJ.Wi;9=E:˹sZ BXlc_ U: GU8(2ʘv'?3ɛx¸t :K Vxⱈf-xœQ8}Y\IpL~[64!;YR cKh0 ؅""Kb+9p.4ch-*tvʉU{ǙbNqP]>~VO:=a{!^mLhmA"uhlU7Z6QwSI> VS0YRpGiy)~~93[kh;vHo;mw^j?E0͟'Eq0LLR,"ꋘRzKP@%GqSlYep.X,7l0+/(wݎ}$D %a c ~q*C]aTU {od;cݼЦBKˊ]o|U2я4}=PSʲΠLD/L9JE=+NB_W'ecDD{y~p-K!\X{\sub'']&m<)?CBgji 4ȅO)R0blˆ3a'dkX-6nэ6~C7ކce}/C_kc%Ts @0*ܧ3$v`0Kr= 'ywLVN~-vҟb} ~=>xQecR*ٙenȢ$@tu]2s>[^u'MzƵӷUpՒy,O_ot*yUV>**mQ4|\s%~ƌD4VV{Ş}/]ŭmofkH/XΒlrLg/hNI /e=0!(ѰF+(|m5TwgJ|hks}.C)x,WM7UPa -}w\&B"1p 6l21j0PSYе7 n;dۋfL6Ry]NIz (9oo]1=b d _h<B'f?ZF;S ߲yden]bx4ǿdE%u,9-|zM~xq%rٜdx{P+[Mя,>,kc/t0M-X'ðA]ܠWuD-CK DOS_Ptꌚ޸l⻚w~Qxcĸ_.J$ŷo$3֚Q̔ VS BQPx/% 5LPY/[ ?&&2_.>|0~s30K:yB_I0 r+VʯV.{wvf۟t\,999F,dWjH#Lĥ-if|!O6;U_^<i\oxZwd%YEI@uԻc=Zo\\uBUdsP1UbW*qmC՟%(Q#n(;m)p0`ED&^qsc! n2By\P %]w6ӾUxf34fWE^F`"zUec-59 $h>xS;)\3 C4B'6\!*ҌF2KMb5~pqNFGMK@ͰGꬭQY 0O XqktPѺ&e@LOro~K=KɶF Uwq?'Ϯ%)y4P4.̍5g<; =y*LQbyjCW,1y=NzvVNf}P%$ u"1fêd׳y~ff($$Zb׌;xM+D~顬 V('FmpG > /v^Đ RmsH-kzxѩ %qd 'I=N:̈́޺2$I"GC9֊Y)-R,ip'rNqEg_}^7, eZV_ns1@624Nf2Y* 6\s9q N@LcQ"^Ѽ쐉,牖"s͞"p&<(O9nui*bS̖?ϑϡ5!ME %-.Ra@㧂h_]D+oFF|農*V^Z /WZ s 7=-a% KN_IEYt}8 |u 3X4Nw\d|I, ʊ1anW ;h^l[V]6 󧡴Ctp̕$TN:mж|hޖ(i}[V ^Mx=I>ZIg NnKB,p+fmݪ;ϝ_2$RKEW 1#8ik!r#wF6?U{e1o2!'І@TK 8.){c}%Qϫvvф_Eb`AayMU n+t-{a^ zU=6L d ngSW7 k/U558J)cL&Vjgy^ K}yaBMs[ RwSKD(eʄkbZo#ܓVO ! }W'uS"3?+HT{$h]Ɛ!N(0c'4naA$p9!Gdㆻ))n- ۳wmpW}AvRKgܣ/s\r`5oȎ-F.2ʟ:ewje3q(gxAk*9M|JOS7@W/  6]_9ϚF͛6@{2IqZ7}yY8Gvq1'(Z+RզB@m֌ws]^95 *J<Ŕla ْ _OWG"Ϛo|gr+%,:r휗x݃+n0=O[X󸎬[tim~ v1Ǽ7܄xآSe#51/c kx~?0Tw_ɦzGP2J؊k wk[ CLNfjio;K -2UpyEnjX$tRGs-~-J[Pق2R-9Z3.(wbuBRo_2 | 9f煏hB+\g#>W*{ h\h<M;pmU!Vj[аQ8P`"-oR}'VuF kKwAՋtOx|3_;-;Tg]Ն +4r)5ZPTW\%cRiR2^oR6LF-oCe 2T(SW>pS?$j;d2M;KP#\u~HI-eZ%p.6&ea#^KOtDNpұF.ΣJ=25'@Qw{zQx I??#X֑/>31UD@VP|):j|wVN"Wd[` :.68_8_0eOcP)ܱ ;fr|K2YMt a( k֨r@=d~J)6R;9KZ>٣t* }g T@]yYBk"]~d8X#.@5 Z‹ )CXt'8]X#XyB 7Z#5zJvh oV;Og9 BA˲NErkrGÎB֛e~Cj:`&f'v+ C*M(%kvӖի"! ~7B },j]Qbo01G'8ɱ߈S'3bfU^ J7.Pj%ԟZ屄t}A)Pm:H3i:sTSu{jr{\@%e_|M L..̂{{$j:d;X{mRwOp;(B,G=ePw;4R3Y7YQ%r섓A6{f#dNYyΐLtj-Ho;5K ɹ],q'F\t]#jyJfmVGtxÎ 1F&,:]i+(3ɆtqΰQ>"mCr3'KWmks_LfݮG'ƥ-& 9ch1ѯ0bz^ >T!!uBՐz8Vc4j;z/qVUd@<]yf:=/,P9V,Ap@;{Thx^X'&^F6q&µ.pwT#*hQvXF:b9m_lTlCv hk7M\O߉:~\]!V(s9l3!]252 j)VEg?5oJ,W<;/?gzb+ w./6#߹/K:Xlq)iQ_F:.@1/vQV-ǕCX俖:\m V0'r9d{r@ךv;kW7RE*u|936 B"S( 0Y3mqih0~mDC .ehn!6O /4]!b,:eY=6?kĄ ~.-Y6z ?*eKqx ,3+z79Q LʼnKɨݜgs ?) {(zK ÛE5T_@&> $x"Ԅ 蟏868Ը`!r/*uƥVHYYڿa>e Ws)46 I'cn1GXG ˎ݂u*Ҝ PPuՈVXsJ#Ƒ\ĢADIRU4kOgq>#^xT81h,{~ݻvbP<>obpUUysWnN$&Bʗ̶BWh"WW怨_kH-EYlfgt{Ӹ䨔0r6#ĸO &ĥ /v\1G.!5kA_0 \hT9"욲Z%ɕE1"2 w)'UYˆYOkڞIa~,XzyfWJկi_dʹpo0̉Z2N`(X%ՋraAEaP;H^+?uDG":sbն%[h{\syȈ;/sgH[:*?| S,m@tQ ^v E/Gkr&;ιeXncHJ1o?` F-A: CrtGhu#)74ec%Jm7wyPgq 'a=pYMf\1Vf"ؕvDSQ"H Z'pQU]7^Z0OLǸU {y\ 0=^ܸ;b$Asxpp7xHUb).k\I#%BB2u#mMգM hͫfv%ט<ػhV@ǰ*ޙڜ0z2~g&n #csJs\>6gh 1A@LZsx@"O޼=hu*e@HFAoTâ7UhЇ9c$!qE n2M~϶MoY:zna1 )5-s)^Ot@hdۃ$Q3ǃtANC&has˕LGRB/s3fn/ahCS9 =>Ƒ(fӺXE9!!Rh2c<ӷvNCv_Ƕ*'tU"kklq'jpҽ,QTW(Ɗe]l>;e~}sG0 TWK@4Q p:>39 B|co}35Ix|My^^5T#@șR1>Y4)jiK1 >j|u$Qb (H/omWN_tgEebYR.'SU+Gt?e`mfd9EY~ӑJH)ȿq@LX ￙}?"m'n-' \@Hyy"3SsDr+t^Dݴ.0[Y4瞆rC|ڱrtj2(#@{=!"141Krŭ8\eV>x Ku'v/vp;7Ē`FA#RGO2^U4Ks7n֒'/SL5V^z\BȱSSP7 4;/60g^&oxhPv8\4Z ¹DdApXvR6WއN]Hʎ/M׭Uo$@z}sZ8).Cp'rsl*W^fSw֭6A[p gt]= K: G%.^U(Jt3ltǠ )_;+]k}Lon_Oj.F* A7'а?͟51;e3^eCX̃p#ASeH}UwTL]hSD: ?@cޗ􅡚u 1$Zh 3pPn2`42K{qjkvq1NdX[; gu]UJ Ȍ=cG⁲L%VeְܯS#J?w2olyO ƸΔ2Q|SP,CQ`;5 FTi*GdY)t0Xr8\0!u?ae=)ܝ'р=ƻ )5F\UV- YΊ8O75y9#}}D }_ـeL5>җӬ6ՒyUq)}26$WY^bi!eN*S(p ޯm?TA6 "9B.T؀WXo[Urc:e觩`BK%pQgjnbe !e"vS"XCȔn~4F|NcͤYBv!'A\3ND[A]ɿ2<0yOd/e(4nՏbnlN U#>8ҟܒ7VRiN-F[KXW |Z/zZ3dX$dN_Wt2)Q[Yw~,$2OIV:"/Dk;$"#֣|I[il&I1lS@>2ק eLѲ엔G+ݕ808:D42b1ko)z)e6WXpMs'*ܞ1-x{:y$֤ Q: SK y]MO{W'0ݍvW5ǂ֞$4|re2*fa!C_tSc.&k ڄwLdz4M[<v`23Q9m@Of᰻$ #4WE2PAKjX  U/%:߱ԭF;!UoۋE%^&q},QtE?1y)Rjb&ȯ]&ۑ(|jTm;؃ f"h)660vrQyp \}rMwh.I}r[e.Tţ$o~Q=UAU!9!8v |.߄]O*ݶۘ {Z1vHEJ=?< 걨He#ږ[ȩ`/hTukTɵ[8;!d'ٰ m]ipŇve%'̳`neAS7q2Ī4 5M~M<Њ] "6:\4d򈃱ݢo)^_9ͽp;--T$̓ml;kD BfJ ס3 Ny/, R̈e +bfB٘4$&6:\wmP-1sW=C}'"*֩`]hzmE@}˯w £MeuO Z y^A=M,[?zQ#OS N."ra6F^6){W޲޾ `s T0L˄&r1 '݋^2Z֟q"j}EJD(69[R!^x{FTf1/X҃푴L_KWWVL R$IQ|spT(cu Zf?{3k#ȁR9Vp #$}|MYk5bsm`5EH-rB`)[ KOgUx Mz{N?3wN4 pNxހ#I):{+W LCaio QY x96>~3vR_sϪd?܁.:eA[ٚmn}QT#izih!! ɚ֘cz'XPZ<9^WE4}@q?I#ӴB ҅ 1 ?k@5xeͱZ\SV?l/VH˰9jZy.s͕VAI+F"m-~GYs+xMB?usR-Ҹ{C 26<2]]e]A{ZZ$49 XUMmZ!u]aΪi8}|:28E-(>O';hUnߺڝW򺢁F0 bxOP8@L(_ʈ6Ŭگ vRk7ǙS)LcOi9evS5Rܳ=c_B}}oz+R\Qp h@:4{LB/\ dc!ʃƼ?K/ ˪<},F$=.#><`~tfV(v&]9rP/~d5ފ zF~K횤 *NJ :g;=9ǠMVۢ!NhL0sfV>d3n ۨ ~H:^qioQo&ʎdc{"/!u•J 2HW$~K9ҚpG nY-]aY1(_+n4-17&'Nm#Pqe}Ya99U&[ w\a|Z2  gfS:3vsvذj)V@.[Հq: M]#)z D,8,~M_6Q#_J/'P%\&|2~ snM RC2IV5@[q }ÙfM6P߃oEMHƍw{ZA aQ3S@qXmn[QO8EQ?gdj&ϲPތu^fZv}^CJ=im6u==j r~l96'09Aj;1qC nye˽Cܑ/DHECZZ|5~Y ELyAt1bU3TF%Q:D5m)yDTczz z& e7d-?1~(Af _gלt20&h Kˀ|LF `3$a-@lLc+2:^~{ԅ5>M$$:%J呝 %ꩈѲ4(:f8?C ͲI>65L Z nڵ>lVD|\rπ;3wCH93eOA ϟIA,.>DXY=$5d1xPy+aOd I6>%L /"#9E!eؑs!ȬLjadGVkȒ3ż;eeMr'z`هMy󺩨c/% d7%? .n"ev%hKJ ­v_a4 UEvg0keoZ?i難4'>z)vCD?Y//M>|bYn_í%Ӵ 6U5m.LEY9\ڙj|L;Ҫ qC%Ég%([~:`'se;]PAxNp'0^7uw3&P2d蔗,m Os7+v{"ǬT?8T!΅::Q蛜ED8%"sxΐwm"5)"k?v+,{%7F+/ /)~߄RP}%8Q @DBjGxF9'~ )nOFl]7l|ɐѾz3u5Kn~Qm&+x#lCJ̍=Zݧ 5\#eOMP[j:F#(lp {RuZOEEHj N]2zD?ʟB:~Ljq-Y`"u *e_Y^f+ aU>Y'\I*.nz>`WdaZ 4΁4=@ͣ6 ?$}hل>~ ,#Tpah.w=F<~0w%UwI^ ;9y)|Y% }1t3bjXK5\_XP WF`'Q?`XKWB@'ou[f|8CQ!Vؿ\C\1_6j cׇLËv>Ký3}X#|H1u3 M@Vg2M&H`U @1kopV(=(@>IJ_F&u'Q~c} _f5WC@ӵzQ tA$ʕbTYu2\?NQN}]hr*0)u/b`ơpKp,y5A=|F;~Xxke&fp:V qݾx7B|W١EH-+Z6(jO@gl=Z̨FyC|8l<~ղ5_,B)UKmBZ_Lw^ 3k^r.2E<dxםN%w ¥)muԸt3,fL{KmEM_C:5NۦO;e:`5&Ȣg`lxfb䨬 1|p6r[0"dtc/j֯&3iuS@}nghS`{i۷ } WYW8^t*:yg[b8dGU&[Wu1廒o{,kk:o ׮>s"KA]Fn}a߮.QHkd54 sﴨKf#U8jV_ _M;#g2%eQS3jCiijK?dt1F-ZI={78|D_C,k~*θa}'H9q+Ӝ`Xlm1Ipձj4j{ ^wz&}GẤ9?zAIvx`6Θ./ 0 n%ެ4BX(K1g!VO|U c"MSɛ/ijLg?ʳ;lw&Fi`B f i˽6Gܞ$ypxq \Q~']nLD$vfZ!N *UyYޮLB+p-G``G 7i0h `?+3ãץ,w^hNdtbS? a'̮_a?L"AA.R,Eljdp/]G[:T'ion[\9ۡT@&_Negc!;Єĵb݉Zd=y>0oJTϺW(%tq(yWPϷROѫq52iLCcmš XOc:΄~TJNkJ1bd^69ߖW/k>d2c녷U8WxjAQg ޚ9̞YN2 !zFCuhNv]b9(BKmd?4[tCM`cTb`\biL^,ӴZ%H'`/lZR"LDK#iUK3w\Y/~ZhtK &_-(!>oں6p̋hųε[UxPTePĘY 7:P {{By>7[WTH>g\|QU|0A[[Cѷ:K]0?ςT&lU,*u`[cqFAҋScXL!q!|鷼:քdBg&[+lA?q5U:r|}8B+o`eFnW ,H`M8!:On$3PN1@Ht5T!-F,ay4\,a-h}"0M9an(гb14 愕O:OeUA]("qҧtk1߁kt?m&xB`y{au>dTWY/ؾ*=B2*܃ƿT98C9plZ8$쿊% 1ogTQ{輳bOqu|im֗}*U /BDܖR~ʈ2TJ84X!TIM%Mh?b XWCZlG?Y 4rMqQ P8Y!}4_8=@pVh~QhjB9/m=ЛЌ Rijgc<\FtQR?Q-bY1]x)hk*`.[!{“=GXeS)zx{[ [Xz6y&j Ϟ!Įx= t96 Mh[xOZG%_Lа3FYެ1G8sdF}A<>5ॳ$=`E#~h* -a aC='kESaBtf$JmӄA9>BT*BIA CH~ *ql9:b[<Cji_ _u_D$ : V?sz=o6r? ->2%WDŠRiVt ivxgi4hH }ѹ{Q΅8rZ0fh]Ň7z,aۋ[vNo鱥, Ko0]Ϭ;YΛ硼lo$-SMKyɽ)zy*H36sY̅ki&t53~vcG\nGèljK$$7珌vh'5* C~=!zWeAw/ RZ={Ƶ-D*^pgPD|}et|p;lx@aHjb۾L \@RQ>yr1~lZ.91QO~%pckn3Os;={m,D!Ns73bd=" |I HՇ|9{-VY 9zj<*)5 h꜁5CR`HjbY$1dzfL:F1a<7Aa9廴,l$] Q'N~1Ecph*97Ps=˄@r{S0wxGȄTHLLXd@sS&KrsD籍+co@ zJ jJ cWm -s=a5Q\_C+xS £n i9L4AE4 },iAh.#>Q܇-"'a] RwM*fH3Si'5 Z ISq[ }5KhZN5FX5ET71d,4ޭ㔑I8WR5S ?/V[W푳G+rm'1.h :i-O+^Ϸ,(K%tzHB_oItNܐ9|Zqۭ1r44LN]bɴ=vΏlLMY0 ?MV@??€m^("B6V-2"#Ci`v6cafl$ea!WC{ϒ()^h l)=:G?Xn.^[B 5=%S3YVuJ3oh7TBA@d_Fc@GB9.;0,xqjvIe!J'աskRWǑu!Uw[xi5H'ȱ[Z@ K}xjo4z:}ӧ5ik.֖/JE1ax=ؔXdᑞٖ?9t9%{7.?FFZ6z& @\ Vm;yɅifJ'|HAO&Uqʖ(x'0}.DB]:v$oкXëS3XY^&uT {"DJLt\o%ubHBn@،>-=p][TDr[ۉ:&._Ze'f񉃢2jUaB!'/$].T ; D")宷hN· G ES?SGy%)'Im'-JCPՇFh &|8ZHXqujD4LCcfgn.w *ٝPkMgނS %p{LxD2%܍ Y宠ׇZ=B|oc)ʫM1%ORݏ+']֬BRO:xET.{ XpTtm۪Xv?khصT 5Ʊ$/MXV}MOﺪMul7krMMT×Zx9#HQd'og] |:%foj9\Q.rq*hyQ $ aߡb[:bz^ &ޙ)#YT3)͢Wq)>c%E1GRl#y'+0)Q}el|If8SLʚrG:*pu~ԡr~}v@0 Ѳk9&ع0(y*hAl/ `{8<-K I\nxH ؞/;\BH=#+,JYnX0 [uu)V8h fP*yU-ZKI0I?D3]GT$B[2I 4nu3 f3xPü5%x- b(ѥDrab0 O;{&XmV{rj2MA9C18'M11 s d;(nꤶ^gjw^6WtIyd3fLL׹JnR\>e@> [DQ15,G7-<5W^gSJebA|zf(IvJ:9:y޴iܣh͝ Oc8e?Sdy8%sd$'ZMf1{=j׻(:_8˟RDGAD8xyRe_'ﵾitH4LE?3H/>Ne(.7*-<0WgvYJ_=%z33а(mza| b*nS:x|QS@ƈ0R>l:2ƶs]ҪtP~aWVAWJ+@142\j_a_ʳX3Q:oMM5v+BT= 5Ba rn}}֡;ohj w;Wk~G&8_ ]!JԼa2􃳟-k?Dث_3 @Ad`S͈s_oh*JD:JT^)Is AjmRۡ2JxٖF›J6V` hM!!{SJeædLDnl=b& K&KjwU  -i+ts#?X@;j?ZvζDNq, Xbz[oA}|F?=!{7WDtNw ^x+6Y{0r.%e!腄hIs= pF앟/g Aɨ2^wlQ~-/%R]^~ID-lO5hͫ{-vY6^ - _"{]>\m@__ȩJehNU/nKbAָ ,:X'Z$/0ݪHBrH_P2>Sɩm~3<$q9+xam]} Lnz兣^iA* 8-vm8CzTq!Ӓ'39%qN"~J ΄0>pyBjoB?g B) j 0Z7rh4s 0Pm MQ`DYoD7Iu璑u~_”?Um2 ^F@{1`.ca2N(}8vcBo޷@iG6p66O&nɘ7猲XY* #';JNUuqt$&=K {Nk `]<=%w$/O{o2#hZG^f"Z˃AFTE0,c϶gtV׸ľ^jX,yuf xMu54maa$E5$C[D7 b\a/7@@(WwZY&Yh;gP,3ŝu G5~dcc4s=z$45@3,-M9]d{<\[5KxÃ3~Y/}>Z&mZJFn%doFmi"s`1B͐C8)e#>;tFZ 65*^`ε2DŽ(d!>ٲJzK[VeM*Q=(0\G VF]oWnj,MP"~~ur}"Etp+I#OG>tQdH"UA aJ4xV=cs׏eDuHP7:Nt4w _{ekrj^0aL}/<_o/ Q}%EČO{WsvmL֝[T[_]FE%mˣm4CTQ[ձg<x 4$(Id޾R@+V~7Tztm_SGK}R2Gx4+)'X0_NQiO-asS@|mjO P3&oڕkszK!yp6Z*UG!Yٍ(*CC? ;Ǽ ZC#3^}wxp%N4eqh[kK1H ufrn.4X]MW݈cVʲ%`l(POW;~HXfG9M>md޺-V0ҿ|=( Ę2xx-ݥ([SauxlRRqfAQ!и׌x]QY[K^^jEA H* 0&axfڣ,+iF0Ocʁ<ϐ:Y̩/k`1dE܁Ri;t!AԨL|Oz 7ZG#?'RelOKC'4E'}§] })hg9MZ1~rsq5A!?zfW pܩ+©Ӣ̿sf$g)LZ,#o\ơr{{?^CPMkۅ РQ.$W` S8Bla(9sqt@K7 V?Kopn}˛2GO]#ɻ-E|.ΝJxb5MBY0o$^AHMut`ѢEj {,]s߀J燝XfQVh'XKԟwDs犔Nz5>ä]ʬ{ cSmr+D*W.٥ ϴ#?.~ Nӕ̤{i+ Snn#d43?+. ^2n%mK.Fʄp..g5 =kS/X vdfdQt#YryS$[Xɣ#QT Ej)Tr֟%ő{ ,ƆiTFO,)[e˝ˮypq5Z?x:#C%1DʩfC+yZ }2ct y ҡ QetMPm˴~(@]FJ(592=fRg Gr^;oͷaAFI6A8g PK[ @yz/82g?ޙP*lϿ>)ѓFrS`HǽcAff7-Ij.5BHKPm$n{4VFCI.oƘ~Қ:@\=Mۛd+? 2$?EAebQز;hڵ[f ({s/wR \W<[-ʱ&=O*YD:6ֈsxlC#%GQLA:"=1'K)S+C򟮏+]0 M#eȜĀo|h38Gf&-qQ~kJ_&w]Q/H/j|v~fFY^QUl/l!C 4#ߦB{hZb7$uV)cRYnWEZY*|UK]NCu꿑":TQ4& 7“S.Tkm8ۮ P,|*dh /Jƞc.h!e͜ F^3V ɀ0ѽRÞb*uT/! cyK >ɹ5KD?焛Fl~f=fB5yÁ^{}jǸtٸa[3glJ$"΀fEZ]"zoGAQq4Yk"OtVC` $N3t&xh:Uң3_X闔- xXV{[{]iqa1cԖ=]R]:g ɲEs}O݆Z|! Y9NI^AZآB8yHcUӟF(EY*p[ ;UҬďSyy[٧S}S :Aցo!!J};z Xny4CBJ4Q[:Tq t9ڎLn.ո6v!nnd'iKރET\Q^p5avnf.) ^-iCB츾A'#fL?1UTi(}M~9(4 :fSY28RuwȏjSA\5+ngdұ> J(`Š!" f)\9z Epc#}Zb.w#͑HLLWag}Cw-[fbsO$.$%ѽ5峨ᆎ/@9AX`,*sLB@k;5'Ps#ѨJ Ce},Kne% rߤ\1Gy{ ՈPU,VCZNENM0@艨2Ԇ,leΈdd/?OLc!8e779DbpR=Gk<)bLZ}@c`içfez] ! o?$ 4mn03 <:No9#ejH si Z@;YлşЇ4 e|ktL4MA\rb2_'0ara:?sp^ӊeg{ 4ǿhPoN ߾WD4n{G;1uh+TЈɯINC J=[Mn]YC*l]Y. n*,0#QR(F0ƒעJ5)<1«y@P%[f,D }\[[_4)")nl^A_ r!st/VgW4.h9%ffE QRP|BlL;5BM ?.V 2Fou*?G;%ip*gÂP|f6c )ۤoHOYCѱ oJ?qzTOZ;6=嚞`z "RH"$|m(Kv[M0T]|@A' 8uAEA8|r_Q*츷l'I6>:/{ٖ /GvO%ZN wRbҞWezm̃ӂ%ؘq޼cS/彬(ey4xPEy6`5ȸ,odʧ_Sa`djk}R;xZox#_/Ǟ[ vOZz/qDpVN;@6:o C+65]1)tej;B+pC~K=OLk,G||[RP?o532!,}s9w?ϖs.mΤi/ ~kQnJ~F^$<ʦϦ')N@u59i[U,B򀌹@ >fdق1C;0C@ܐs<{tA\ǥ2h3b}J8@Qէ͚&Z(Vۓ(Zr_& mS" edg21953WNk9]nec~1t 3t.Y{}QV{l]\#×Ru<;Fc+%ʣ4ֿz-s~yT|s?vmrk}%NLNg.87LȬugT6'>"(Ι J:nM83^9>"KӷAJJKjYW-nY݋LTIr'aLPPQ5{ @Ghy?"gPf}6OWP{v_9oA,,ra?$V&G⵩zqx\WQm)H}tBzresSDG7r&ItAG*L^ۗ0ھjwb! >=89V0lü77s9p~E!c-)HA%2!bA#QrO+L}/ 0lj%mkbQ99|8Del[:c'/T?F%GBJ9HOiO~l2{qd -F^p}To/b,y1E ="c1U 4w8c[BLbNo#3Sd=l޻%gXg!'/8з! &K6ޅ5m%j!GS$6B1a$@ĐѫI_38-xsԆ(tLzf[5 .`i@r\ Q;s/3ׁd<FP︿h FЦ 4ׇ~<87niY7'ag a^Ja,]Ro!~;IS-,/XXV{:*QXmtW1//"¬$~؁E#oKr_0EQ fqcH权!zzGr<;ZzujlΐWvX 3t`x MTmSИ8}Qԇ4hNyprhPucLWCmIev_-y=C#Jd#˜^q^8䌬S"@0sy_nva77}v\=ӓQi3/a:?ȡ W٩(w0.l>)T$."n{.Rx0cr$Ҁ6U:ŒqxL_x0w@ J=A/%;/b:T7g#_®{fMswt0^ ,x 5&$ҋ!Ӳ?Ҏ>f."n&زHsax YL ?pќ3SD!yPoVG>=xmV\hbr[c83ef ((|-dCpLk7:|V9sʞ *[AnbFXkc~WX}nabfJma}35źBa~{}'p, 8 W:,#mݔa$8'8$̔ jO1,~^\g ۏQe/b?-Aa@Jzʝ@lAef*Z\!1|UCUNjɜ/22$P֜B^pMM 33t9b++x|lcBöܻl f9?Rç9C'GHp0fӐi'6oelfkO^]=+Uv9PN]4f6t8+sUHର5  H:1Ջ#u 4=WwOq‘&Ċ/Ȩ7hlJ8M!԰/6LAI:0_4z,_m͍J\A^c ғTMi\àᑪ̂<_܄Aǡ3o͂w_oK/f fATIHZ{nCT%Clj20{/^ɴҘɼ (:zb>(]ǽaRpwjH^ל-TaƲBΉ<͋+WF Rqˡ(w+\|&&AG6AzRd 911jKw=Tjn"?.:6JJXj"E|,\d9j: eSP[v%31:galϝ!31(Q:!f3`ÑPmgd'#=[h^%Iݖ:"M3R  .>[<Yz_вY^qnh4)Ͳ?6bX&`S'EC鿻+ot|4I.z$p/V1@rlدް &/N%Yb}QWY%H;{E$,v`6[p{'1Jj 8DycL sٜ>.$g>ņ{gH7̢I}6L4UXxsl"Q5NŗDL7j1ZOE]ݚ"yԪ^씖rק 4A*k!VsB L%~.ǁ>eEa:]Wv 8~!^e骲g1)(H2_IH;XM}ݽK纥.,D""*I^<;=SONAtGsNs=*<_.odKZ 4a9SYEISM"^d(PrAOv+Rԇ!jn)LO؜Չe.(ivUQ݊gZ*t䍫R?qƾ"ܐ{c@>,'h[1&"o@pEY􆃫+8A^u#`lv j^R;Mݝ]1Pzhh\g}HTh;DQy$)>VĴY*GxvehU&Tu9;4c1ӤNjl9+k -_PZɚ@J"8/,^=Wl$g.%%NώnD8zaoM1kDN1_V~C'|ih/ ۿaIbʘȓn y4SgePu;fgL pA)M\V܇9zlM)Ahm_r4O>Z'=ĘtgL +=%[OeP^^_9z7gNmG5{-9!L^l vB #dʹ@1~tbug&G }^+ԧTCjz+ScVes(49\凃?]G(E{AqX<6Xq2 I<Ћ~ %O[w>*!:O냦N/ݩ.{ ٧Izpy5hDs0o/k/2hs)c\ cz*j:D_*EP~x=%fQd@:@#:- ҁr7>zTʡswD4O=/FCp,6t 3+YXl&q"/ ş,Si[~]<_g"q:R^CNAKg >n^`hoykg;%Z juC܃МsZ?W՝WDVdV^P ~5jB?ft,y`u\&- J%Br  >i!VV7&K)tGdd Y fq1;1GWwg6mA`@вBo]´A%kK,Ὸ!߼mmH'Mٖ:wVݐŐ';ncDڵq[3ջRlh?GA~ȫU5zbIE4>O9ZtecHrߨlόvkKj܁17yvoٸ%s0֘V6q4h܃do4m >v]2r*Cs[Bs@ڝQlb\*Z_𥽈88N}e -kݷ\bK_(p;BobiU/jAޫ[ȏҦ@}U5F&c;5?[Db9V,Wm qbkcu(%]o:_-32I+q đ|foRQ9zw#({x)C .@`EK `̚QD~x  {!Ρq*~Cq&%.I֞  w](^ vAȳ|~a Tm=f,Y-BH܎D4{uBSO"ds9e5EF6EB hBPBYHT>JV:ƉׅRt\泪bDѝx5kj lh^|VاwJ#CRUJ#BNAkx.$q+".z⟻BV8L}H'|O}VJMջ{cy#ejAW.8l/]WCjbT\js Z`oY=szʩG]@Vѷ^=aq!K'(r&" :p_S112"/}Ӣ@!2)Eqh\J Ƃ)dJ輲,jܡ7G`EcI6۩0*(j=|2>tzDڲg1bB3EPsh!7}|4thYI*ʔ!%)E q?aI1 CϿBY|d-64sX3Tu'H{ G!eMkfO؅;[/I_ "qk =)$. il72'wi]@S L5Ao.ƃf(/(@; }d7dmM8uč ?rY?vKR%Υ"R%pnoMv$|] "vYdM@}Jl52䫘Bw7~K=BUguZI2l/Iq%t$|y6Bz2f?7BSݴ3Gd?:efBVfpd;6T M[:欂M0Wjov L2! -Yd O4ӢCQXjʚA=Vx\\2l =PԸF^5!͏'ea^d*f%(*C ˴]2b W@B7Gb߰!{`xL6-CEzXqdrЅ*h4kDo `~b)L1y(,D2vjUZ;ߥQ,N;a)PjN_o_b˭Ӭ$MT2oKv \6~* .v#nѻcBnIdؐa-:z#M7nKUu%5T˲U kkWPlj yg"GOmȤ׷@K`mKj2u& ubO@=@PjvH4=LkߗbU6)z3@]ʊ#2+Lw|1䍩lt\P/fʦV -ljyJ<޳M- o* jEȉ9jG50mSct#<~K]1G  չ Ӊ;W]oBj 3cB㴓HzuxO}my)7 ij~v`Z&-1<T:@V窥Ƴ5lc`&s -niS 4|ni4vϣ{C42i䇰z^2JI+гt5-tuV)M@͋>לZ"v~4tZqPN;:ږu~\@B7kZS+b#!݃%N'=SkE!~Pe>TM./f`Sc0D^y¡n&=(\ :l#"s_e]HX#ޢ}F=|/?i|=jƂ!q[Hf}1}PG&&.4)N5 {9mk^~I u>chܮ/"m21ܓܷT:qSpΪ~1xpIdP'FtQ4BHy/TˢM\ Q[=ibΔHʹjzAa/VK huݸsd//4QqvʑlZW#TUāU'3~!e&p?{o`ҦSŁߔUd JN?keHw1SשӔcQɟ._StlK%yKF}lyO;v% iX'_BsYwz{nBM+Cl'pVh }(\0UB Ɖ;K7ܨ>YIl| Wt 4ZsTOE,zZglA193] nP?SɠcO/y䂔qq&lAh`BRBr5.8a󯊖orRA"נ_Vg}5x ⌚{ {Hu'o,%I_6Y =ߡ˩''b9z),|eNFץTJuS;/c6yľ D[ 7Qp=T$.9]#a wh68qٚ_ VRKd98"Ȉ/~g6A!T@^P'l\K5L@G{0*OvN\͌ҜˤwOF L3]vc$enx|p5XB6ۭ_y =ޓy|%^蚹5|& o\yW Z{ CkW'ipuR+)7~ {Aq7QvBKaD|{pRฮ/K\ /]_k⦶,[ W4crEw:8&΃.v{.]0߁0e</@t`#ZnRC[][DAK(rlJ2Ϗ߀搜ZqުcY-.>Ùgm\ 0lJ1{4*eӈAD&8'_wL^qKO&>K&% :oC&gq |`fAlg. )LgܟV" ?T*rȞl7bTFΜ땢Hoӫ| s$P=LB;Wpn-E1ک54mFkG^n=N6c屈ʄSމ#Ϫ^ӚC}[2%>?VQ: ʩo7LPzVybWm??zK:,bj[O'W9yы+%#$?>H^J6h|~!^d5x@\Gך˻oF(%m6}q䧗i4fB] 1tl3׏p\yӠEőH[:+x> .,fVíy;ۚ T܉ҍeTC?gD2|q&;LϪCTSH`H~:9<Lg ݓ7 /8@3"Ǡ~WjNP 62ݗ9%I䏦P_^T,m 80YS֮7!Ҥ ?}Wq )(].45z2P}o^uzt ]*1|4SiI% 씈o- uPa$:u=L"y&2`+ˇy*q}b]65KV|a)bm{vSиZ+amR @q_Fitxko=SQ4L 5b4 V:-—zVQx= {SتU[ ӿP{Q vPg{f/u*2^YJ@u3" ]8-(%&c I)J0[w_u!W"%f3US;4Qg~̀ብp!̉Ybi`)K9n=lpg@j 6h7xAe[~2FR\gRf݊tF{_q\ćHu=V]<yR01u_?@ ^޹լ͓҃U#wV"j)nfZs],,D tYlo[( ?ʮK P@n#rK}yAKMȍf/͊mޯ~_Mu9=j6 E?zz]0*Ww;+'oo=j B^M[͵䐪gQgVs0*GsЃsI)c{3,9'r 7Z-$2?x~9ʲ%_k XNy5ݹnBss(OMվ͒G _"N?6RqNwzB7z)dfO+.T?%Jo\4cIqo,BGS ~cl"o ~W*ň0(3+֝@9uMS_tDz̰Gj& dn0VLPfxl k. LlGM1]M(ӨD&s˲I"%$69ڹSȮtsvk6;ƇBݟFZъGʠBFs?9I!"C:7!\!qMw=Ml#ft.C_Xq@*XcVE)^4A2 ~1B 3|؟3,^>ce=R'ԀPR:zmLd-mA=OJ-oՠq2<&B qed/.? i`vW**6g:Qʤ<7rK۬uxܛy/rԉ)7g|R frإ'B X" I\rAq$^+{Tv|q,'Ji05b4?qp}`O gM lQ\A3v=v7a8lGNQ>f T@]bNm6$N+c8'-x[[d.%ycIY4zMbʯËM._k}!Mep&jPrp(2Ęd/aAzkYRM崄&̵LEam 7NG8z6۸ܑ??84bRF|: rN]KSs@'/e%~MBJ9fDauXqf8ɻҁ]AaρO' ۢ힫.i2"`ph Õ# )a$ ']8Ew*Q*uNJT8~fO(+V11 XnbꎿS$O]#:WөP[e-B ëŝeZzC2M/6㑭;B$KY4MaWEJ(`:]uc6K7HEZRɼ`'Dq8=3K~6p?Z"e?:{ j0Զa{V&!H5L@ѐ^VDhG|I^GJj59~8 IG܁Y [MA-`.uBkGI*R(pnI A:rR~Y~iO uY /}xy֜Vre<ܱ*1= e&Lұz(] Q6ŴnE2HUWEֺR>ҧj⪽ȸµD|%P|xX==wbK;aQc3'={DqȨ2mK>4;qLmqUFĤffGc]8s'=_ DWCD ?T2,OfRHA#bA.6ycpԉnoxroC77_hVz "W 2qw U[b0azy4>gm??iEuN6{W }LhCo/~s_Gef QMsN5(X"+]lonc,٣yAhgX^rP[v0vՙYI]GOgߎ)m[NWot2[*)hho>#o liW/PYR {+p/~T(X 2Ix,AbQLXȽ 2Dt֠AIPV!V"0NAdR)"6N=;ǚy"WӍҐ] z5'Ƌ9 p%KB "Vk50R΂Hwb2! TozGOYxަ~>Wj0'NTZi\.<jՓz݊a .}!ˌy9ٹKmftWהpwQY{Ѷ $gB]=ZԻVīP >||ml>I`y / ^jERw8?Bb- PϷR3 Ln#j]TF:]::nQ[6hM4K}ewەNT]Q;R]~Q!h[g PhU8R ?PŗY"AdjѻIbLs gOy)V#j.=%6mu-M'a9BEd/|I;*D.>T}eY9[ qQUFq2 pC;ʘ꧐%4dOpI|X\ߣ_ TA8VxfsT^LZZNZ}J M};/5ɃZC 9󰪇aljd_Rb+)`*SVgcGh) 3Jv[B> @gC+qWgBV, "xN>|v^U͙daH4]a ,m`ސ)m@0Y*D |gm/b^"֫Vc!Lf>1Tb@g=N p攺,,Iah$ͼpX2?U&z$1 )$!ˆ}֍`%tRwyN8P~>#Kk;-1|tܦE֏,t~GryuLy7JcT$ɚH/lj6ޒGRѦ~ZJ)>E?>޽wGYqn<.0b疆Ză:%1^Sr6S5wRx=kŒ5 )=$SC5ƮyOIndq=DnRԙ3tWf(TVa-̄Kߘ7բvmVTw\wcF_ȇ[avpZA!gJKz3A J~鳙4\.tH+&uRV=dYMyз"; %:2آ5YYDl$zDJέ7UE] ,pB_K԰i@&#"\^y)L|e)'|?KhdٮƜ[$}w Pܼ2(p5I[f ]L"H 0b ~icjљ=*rشƽ)[% LZ0})urYCF2oq"O} yߨJ yWr1x$@4-*`&>'9\-,4VO Œ!&8jL⡵B&jbi43 .'pvIlYnbKđZWr ӝ<eC.q#(,9͌{"rHPPN|T ?jOH$sR]V[%6Ah &+q&u坊iV"eY]rc1/&.혟\Nr*txd. tqb YXЦM=0LF!`nlK I9sG b]*2T92_PB"^ϔ&0Jcyv۬4&[y6]8\􆰌ZVg/Ĺ%J넽0w>DaP+h&Zq@ٽm$+Fd\;5{cUܶ(ÎJ(=>}4y%xG$P^O%5ܱ9X\  :©E!0 5  $ luͩzח8dcql{;&j(1a y ]7W?TdSZ?y}&pDz.]t|mq=ӹmj 8#[mߥ=o !d7!6e} 5p5V}""4 "+ז܊qܢLVKzn4V3F^x TKt1,+b ixUЀ)~ -,<@:nL[{ZLamHy:5Y ZTÁ{Xc Aּ|Kx%&fӉ0 _7ߌ>$ ]#q~ڹ\d(1TVq~ݜſ2Vz/6X)V2>|y&_\LT˫KoLVbYc~ ^QdNX_Z`ª*r$pcRU5Oјf>֣npǥJ쪋GX/^KC PSzFI9F-{2A( ^ ?GfPfmۧ?+5qؘb}ݢrВȠd)gNTVgN'IrI4B4.hM$(M RO~p >b虦s jr:CPQ/+gįҦ!-5dZV>o۔Èmr豀Z?s^3ՐUB4c'g(VQ+vv5DzK#N!;}4Q;˂.3fcZ$0;kWjpr:d>Y^ʩ*-\JJ3 ڦsLkSa+ lK IhU)doأ#G)J7>Xμa oVa1W}N$+6r#>!N8>CKoJEk-G~c`œﱭE/v$ڠ?ѝ-&M0A3y&CIFhd0Wh S,4p =9L͋,9ZH z07u,NY} ïʉ4}Po,Dbxazq0kd3 }7  -`X|s` ҽi}N\3$]4;ȢuO-p`$ E]g/ߪ塱\٩:H9^&VZIʜAz;:K0PJH~D[D {2%RVҼB8B>2`1W.oS? ldhTr }<yfs(BauZ>}.n6vSzQD{ Fz9$6̀d˪< E 8P`ΐmE6:g/D/$̤Ar f6>i<=9,'@g\W1eu붃1+7NMiY]]rl"LE)BS_!":+fM7CcՃqYJF)fhC#l]/Y.žfѼzD9Vtmv/T" @[Y1T<- HwݿGТVWہ{4jY 8Z`Oӏ!,С=wуb5C7G2,tN*_^\i_ׇNl@ZbڝN B{XW$KՃTZyד VP/5'gcJ8':͢JΡvZ>~ty{+Zmi!~G}SsE_WBKWl6i3!#A,s3)0_.{ݚ+6 ٶ( >h_3O /m|Chy1#9:@6ÇJaPGP' qL]@ኌRe\#]Rtr3>t-)ɝj~'\2z +ٓ ]J252Դ(4#$pJgI{χ4"UDX#1+CȞvgvFqu :1W9$XK Fq9v8uFZȓGuo+K1xbY̌A~k$?;$7xJpwl/sUDM^͕8U s)HZ#ɯW͵۞!Yrk(%"Mz0g`+]$FkǮC]40DqYÈ5 dbMs~* {V%4~FԱq]-4eFVTJץʬ.̽i'mQ(sVqq x(iqtw`a[k% +}L,\$1F58DQ'\IͶNQ\l8И,J=[D^*ׄ&KoCWYR*ig=黍ٸ2pZQyX\*+aLeq2+lZt뛂6F~eMY.* ^}baXy_,ނ9FvPSborF/%YW7䅘i5f1+otN#B eceWBYtɄ_h5G36}`Z%߸#!dtp^TćIyr&:+hmfThiYDbgKݮ)si~Xק` &#iwTQYV)uN(ɽH+TnI=jT_d8Į:O(]ZX2~M]YXɀ׍ ǂR|bq)Zr@%BnEMj1bӚZ]H;pPB9~ϱ1l1ged'2[1ªX96J/ydUF<мW%:^=/Vo-Ԋ[>?B z msB6wp։R;ldàU] 2Zz'5`$@d~ru&ف,RW2!A5҄| _\֘:]2|B-`8b5]_H4.QNC/ ڞkwRBcE<Os]c(aKkI@yydgk(am'?<ǓԷ^j R[,t. V՛6BWAXexjC`g.(BKÙUhq rTT1_:(IE'3 Q䢴eq;VMjJRըTQ19Xȼ6:k?;\EmMR(3-f$xWNJ<9ߠ%LbfJ9inS=MtF%&}|$oH}IոwdFzK6+[9FY8O8?O'&Yki`Z7ШakҸ-t"(6K*!@SKS5IGg}1FոuWj-@xd!;G:&vI3XC9(9HAjq{e@RPWTJ®xŠt  f`lD}D|C~r t!0$oyS튚}MC:1k3 ؏=U6, BJ8ֹv`nGг8L(#QzVYڨ(LD5dnA&fa{PS9tw/\*p0S.x!1 }XdCGdckl5۱톪Ą=Xr/G˜@5€ե(blcc]bzQg\aϕ=X7d_]@78lPsF̿Ne n!G>|/~" *~4QsWR0"_Knx tO"(sa)p_hmJ h$tʍG|@e@n ?)2L ;D_WukbnHFkiZ ؎c9n{3HA+DHdg h*Y W4NUh9mq&#cYwFOh7R6oo+{GS; U2&+ȄuvD> ѩ@YgY|MBHtzWf kljFXjYmw`L(-ztӯz/ Q Y?9to7Ԇ`RAGK"15u,AǞjdpW3C1aH 5i0rF:C;d  3;ň D:r`XҀ{P0?hg8Y,rȪ*WoɕgH5vILnO L_@bHgUY\ k-y(1XB|i 5kv2Ƿ5?G/f2 |mNUg[#>|r +ɿc=dS rsyJ%iW=lI!TvNOȡWHnMR4'4!MfX9h?Qڸ#5,D*JKe(b-Ӣ}l? _Ws[0:z1klӈ'ad!Ā+> Ζb;3P=:zNx/vbֱgNbJ r%f6˸|>10߬Y%EU+⹲pThܳ R^yfoq f׵&ohOi g,@]FaCj5Ϝ윕ENB,]etsԡ ,߭I٪4A!ʨހRd,h p.q=7zaI*7I!0,'F[8s4s<>" -0 cqf~ />,ॱ,=7T$6-"\iTa/M+3;2­:@ _yY"㹥WO jF0ѧ b+X xt$E)!9o=ጘⶺ} \p@H3-pr$./^5JJ]j 31݅y 6;Ye"CIL"*`c5 ͖ik^ڭkAIMj֋y~-Jd g)HP6Ī,şMUsm>lC.QU F $lZq[n#^ ;0핍C1{]HL2Էm-ZGE,Pzgh1V4Ь '~otש6{h2{[DфSZw#=쎣0XD3)*vwuKS!_q̒.*]nd+ ZӅo~[yT1Nj DAO?'xdwA{wB4VXmwOq(!.ԍ?u6ZlkӁKEukzn?&)o ='uW)cEuԟhԝ'97}_G|es߸#va&[OHhdOy'N~?T8rt &ժ]mB&v _*, k aF $jG ?DeTRށ3tkJ D3=6j=lZ{qYN]/n~KƓ&:NBq )I7^-R3ai^yiC CFꂵ2жQԮ}1Ag"mG$\)j/HR$p =σ"̤ pPKeBn_Bb\xhOHXkC%H>26l*H- {ŅsV Cx)ni[pml@,2HU.f6Cv3춬L6]~WTlݥJ`B^;Z_Ӑll^{F Z\8 +TX,< p ):*ע5G9WGq5:I$w)ޅ!0P_r:L#aaњҪ<@X?,W.e Dhvy%%"~Wɾ=Xuʒ#6 88k@ t:kfk>x6H+^9# +J%wdX 9Qkю-5:슠Zy+B1hDpmA!uƺȱ"tTD󬓙],q~PM,P> |ݦ<킐7=􎯺\Y I9anοcv$2|;%yUꞎ^@XOܯiYKb1Oy]_1c%n:dGP^[.0-tIGԠ"5<Þ=2ƍuo " ,}zW^cízs&Zkr"R!LEF@%+ bIR/OYuҊmjsu<_S0jUԉ1-擃 '&,Iir%č,^ϝAy [g@5lG7TdЙL0JƢ枲]H'0׵ ҽ Jgkf vz$ȕNTLf ѭ.FוY6[QF!c(RfLskĖYPΫA7s[P90N8R@)[̱S3)o#C'A= Scj-l$ך$ 1Z?LP>gnEtiHu,\яRl&or}^9iw{)/„S Qmad 'O@HܑXGpzEFW_e#, M[pJPKIzPcDS %4>ɨ]N6Kd TIc P}@m"<-8c8^<- @Î*1Gݞk:1t{PM}ϖCц綸Z8УS ]j^xXjp݉R{:4 qRu:q1's]΄#=Z0OaSu-wI3MY%o oEx$hl;RC4T>G^V vpd'-嶀M8QYB=C>Z81}.)h5)C^Tax8u^[!tA!FIxakYˋfoˊE=u:P7o%e xH.8 ůQ3LUndR|u_LYe`:a`Y0#SZpĊat^vሿhML:eӚݥթ(QT爼 lĊ+DzI%R IvsCL8k13ZY /FePGCDxgTІhY.)zh${+fH|8b%daA-/}E\J:U >D `b`T_sSW 4Zc np;4L7'b"#}z]UE|&KFLST5ZQ*|J2]p` mʠN@d}  ͭa]mdFs6Z}ЛZIuZ[4=}-rGzT~tOklЪv14G8ğtVLYC]Pn6pbrДҁ@!ӯ}q1=6؅=NA-(iarJ"2l$+HT ؒΒS&$:P}RUJS%ӗ<Ƶ0m7aiѯ_h|N%=vybԈD.EnL.l4nR@ 5-l^=we(ULZLd@Ս kOt0l{w +2[h+ Ubv^q<.2H'p''Idt@@SX7Z0G+&):|@[[ \^a VnW}^3 e+&ǿͭo, c4-X(d]"k!Y7RkpSU")T񚓗`` M#&a+[B~F W\㪞5n0tlfㄌ?؟,kZDrǗYǸ^mk*+ן#?}s{XX)ƍIݤt iه/p%}w(]RֹI9 K6 ʂDT;O7#lB+%*N׍ԥrYhPHݞ| ="yF @Kax_lȸ螠ffI $_iBa*6L9l{` v0 ;S5Ө\Cyx?(GD^{L5ap[J(`ly+eϯ㍙ybD8YmnDYwy=>+ŖkU2}#DuJew:Q\:sdB,dCVakuJ iaCP LuRo;`ep0[+Igt^(*rDS|8RnXKsPpzrTp9%L.'=I^MT$*򰴀K|M+0tr64zROE$FIL"WD j l)rl)zq`Bɓ,P(Zo8D  GDWvzH]XyZ=7Jؾ`feț> ԡػ+ c,j4O )%ӟr,ﲾ'Th:Y#ӮV4FjG d*q;ĩWo+`+LR~"Kjy %$ e&}7M_A))y >?pm\t0m3ӯ^J_>>]_^gp-/X@?ePamZ'srf8Z*"ߛ6M"e@d/S)D6rͽw&+ԦsnC*s CrʨB._5+S?!GgM&RF+fwd ?,G dHQCl.G}eafjQ5] j?֔vX]-JM8-WiV2V ]vI`߳ 3|qOƣ!r7&gyƛBwLdd:=1ABD+c;:R축%u nn$]V%j3}xTȣ2_,Me= @mZ3Gz}P%%7>hWk)r3tTڄx uZߘ8ӧ tMICM"1F1F_~gJ kS>`ӷ2ʼn Oq \(d34G.h)f$oGcH~a# 3Kb G-S< ЗTWZV MC <ĶxaʁGx xK3pߪRhD>msXT7x2qc'TP?$5rIqv}*ˬTql1fO1tiU}f7mh@}}z>~1{LayY7f`6ZčR;[F5ͩMPS:_`kXX&z!XW|}zZaMnCFX㐛;HpK0緧Eu$$uTdJ-H} 28"rkͦJiX EEp@" -L9fYX -WxeyVQQ4MzkߔM;509([]3{w lʴB =g ?Q2gWeՆМd[O2I98[2C-=Y&FmvOJiRdޕ HWEKЮz.yv-3J%*)P%O,)2%< Ar[s!,l+H1;مX]oo!'0Kg4"k@FTntS$=Xv8>n;Q9 0L`~Af l @M m?c*KCbN?6h/xWu${M[c #ʶ97N#"[SNAxYf M#"x?##6-qd@jYcFs!(9E'yA=e$*AhNBurbb{_k1Q%aj$w{$9kfj0~{)i=xMڙmM8/*qخb+:Or2SMv ʄ7'0GvYu @a!2C_ӚɜAJXJQ"ktd㴟 >zs6EΰsT=XB;̕aMrVf:큆}~%$ռK˃ >1[ tQ(OL '΍>΁.Hvŀ L'8.HHo0AzLjטWK0] [UR1mr`|-򽟻RhJ|~ZFiA:aOQ>჌үZX+#}Dѭ`d`W鄋 ^2a-~:˅(Ȏ^}BV<s,H,#ZGGQЫtB҅+by&|!;&;&I0f| PKӧ>D/BP[s;.24XK,B wF)/1 j6,ӧ*PQVȳ*].%aCu Nj'Փ\}lxLCC1t%VAu>0\gw\LԏO3}+C[Ѯi,yJ>^wEdn=/gVfAd/ae#~8)֯"~STw``]e_Vn,mL7$`wQHwcnڲ$9Qh8HM$ sS' F>"DsK8{M1":.еX*|> .6%̉摭R~wk?9AŘ31 *q毞Eފ5B-b(rt=#D-69Gg1>ךi%06Xk~U\mQ~9,3,f:J(M{8lW|fU'J]Dzu;D~X9/WrVק&KǤp o '9s:j\2 ڳi9 <)t\;Yu2٪5nX70O 획(pmɾ9PYWH7d8;EU 64ѻYfC?78.Kj_#mzm#[{/ڡ~{mfѱ? +̳Q,Ác~=Wwtak-'O;;SzCSE@T@2VzH*3x{YaMn01:|~O:ᨃ iSO .2U榠О5EJъi YC؛Tf6P/&){o:!c%wɡM:ndP}1 *i?*O#qNYl)R1:j*xMnbѧw~=T tѨף^!YC608!p]l>ΚCc)9kdzEcO!]]aϫʑ聕)IDmq2"k:XԼ]{+{Md^gymwY3hW١$(4]X I nP~$֕%u[*ϕho++΃i2YN}ΤWxfGNB\ [/8l @M[n#{~&|g+h_;JuB Me5%9"7ӆx~ !I}"++Fas}_ 4Ǩ %~ '' iz vWR}A΀WѽM'&5vxz;I墨 xEu,^}e"g,',I~bMJhRfǜ|a(Q'~H>E#H |)X>T\z%v9+Yg\dۚ2?":hBԌ\]ܹ3V\aĽtzvjNJG_!|ƺTA~zX\3kPjMسEЫHĄ}[]vcgPyo'A q`R/f2Xq_[[_]vԷ_*,NU.Ȃ(y+]L8W@}hrc, Nm~`,Mqg Wz|cb~.Wgӯb.dr`xf*=A_gQD,yw8X*NQSS#L%C˓Kr&7<@> y.&ECUjVSĿI #.A8w85~Duli^S+E'ѐPe$K[Hw*{e$^4VL!HG .m>5GܗivD8gU#z߱4Iu#&d!WwjaJ5[`S]]3Ǻ$0uU[ vg~Gz7iuvp$!QTↈi<$4 Z1Hce 5[sd_ `q5]tq:VF! +x2v3e2DvSW( zd?x<4lDbT=࿅iΑc0LIEg/&]pΟ T Y9|antkA9331GYEjwȡX*liOScs+C+g|.&(Pz$^VGXެw YL&› !Ϻ{y<1ctL NvBM?2[Ix8T-n,z ڼ4|*c;5]Lj% @@.l{Sö)^mT m(=6=׽,Q;F?di0oH"RG3_zKZӱk~w6aF05V2=ZU31{?,&,DuNlp;<fL8U1+ Ȍjq){(jau ` H)N%w7RT# YDzt#iQDK j1[FPԓ T`إ VW9nw%+.`_0L_H]c%3=AJ<|9 09w?aP/vqz>ãgҸ"ƿ{HOandؕheJ*$?NZ'uN=ru%e -ʙ$ 'e>֑{{.qnTQͣXUIŎ{5`S䔥|5Lb:9]q,h q ⬍kuϻSez !'i_ V9:Iؠ?vlQN֧EƘl=J{!26Wה 4EӓGYQy<6)dC-@nHYFKHI Ag-H'm|%.j+Tw)/܃c@>kYM=z@GcT*߽w?sH@8R8T:'}C-Cp D;pf`NDfX\oZx~hXb<=UQKt;b d~ĀѶQQx82b9c7d y? ai9 mhH xz5̥D(}6k3$(h+A|qU x ˋ-;`ׅi iƖ4\8wՂ#o#q+)/OZ*Fni'X44*׋$ibAqphϩ 4X _05WNʬK˦[;'ٷ(1ۡ%|7)qo>IZ uD7HGxjVǫF)JT˦&bErUHT1AX@smQ5NA1H$r)*v|UrGkꍚCG0!3+a[#U~ °n mEЊr Ux]d٢sx. ¼Y=VM6S-l$'&P@pq@5}b~~^;񸷯Cn3tQ;֍HcK gSRGmm~kcnh-@v.H/mG}VBjLгC)0Ay=#_''F>"Y㨷+-8t3o<"p1޷KfwNU  = OԻD" QE\%5"\ȯȘ]DԤ .NXz r53]tͮG.?Kʡ аe"OɠZ_é?ÔT0%SCkŮV(nɔ>(.B(;UK&iߝLS : X2sn,n@րFsV݂ UV* 2TQ8'|IƻRu{0 J%4椯!8[:ᛳ%ogA8?E(ZTZ]ew{G>`ĄO=%8.GV~RmKZُͪmp(hs[Ŗ.ogfőv5qh+m>c\d˒{TD(LIUs:M~^@ExiU J^ Jl3Yߎ0׼Cx%?#?Ҩ7KZg"U2Fùto ;v3A7󊔨zܥnU|K6J͓%T)O{6%yGE7 -AU[~ GUk2M y쓼kOkYʸ~ G \LjJGH >a Z-8p(ybI[˻nBp6s }45p3+5 Y"ăj YAƅA5;xjH |)"&U)r9P0$C$B T2n{M9kzAH*^IgZ40cGoCAG EQ@t.̰7]^IC$fTQyvM5,]hh_"<7xsuZi 8&+$O DCD=ƣ"u`BGT *-%i^|4FӬӲ?@gm4Z.DNl~ Pj>TC֛ m%rz ]qa(`{+v9[!8gI+כwG+ܹMN}jnt<kA1YrNX'@ (T^ǿ^8s_>o:WHehWߚ6&d έ”ޜ*5!B<`nuW )e:& 6crp+V{xce\tM!*WA-U6ĪW)} k~ nF-~vˋ,+ipy%2[>a)mJ1!|֛*(a xi $fuˊFZ(i0OT{_,#I!hqRkP50JJ]x.(H'̅ $ jor"͆)`NUz(v%V3~j])ߝQ.$l~2CyW*_Y N6WG#YKyD̤;fBcܒâ :ESW *,.]j,6k?!*t2ZEZ#GP='oő[ , px4dh<;gR ]U8rQc^bu26ɰ T*KDtt'զCJ82EL@?B;kA;TY8Qر&rIdHpRuz!0“p9EV"*8kI/UAq>Fs4R9>3OtnIn c9n#hj)T pߝĵb[BmOʖ:9*B/Gs !MF ZzklÛc1hEװ˿G ]0Y"qX@2WP}-,.i䪞+]J UW;""apy[A"xu䊁 ?PAʖnŁoPg KhqVZЪ9 Ώ3c8-r]l Rn5hCQon5k\^s}3yQ s4OMXr5|Iq%uj >:K:ea9yםu &V{ʼn-Ӕ@ץC*P-:N5Shx\XJ}/VztvScm J>ɨsnؚ?z9E= E;mId)T5@Z$KJl#LݴM#k89`cO^k挿,ᣎb$F& +$>{ '3C㱁8ThL 0\S߯\C-4u.Yw!tT(/͊1I+5,%7$L0O*Ӛ6hVO'ϫ\dKJ6DRAmm 9e(y XYdx>Cxeqm%U(R|8;&Q g?r X2|ɉ2uw]8=x``ؘ^} m8**;]ӡqj/Q~ԲX^(>i:eeBRR FѰfv I>a>7 HWL'ߋtFGJǂBIө>L! ;q0}JVQXǟ=2T=0JhMKbTǮUh: #h*3['Z}fϻh(']h sS % FCuj( j]B7ۋ?fV]&uwO͇ޢ-G-7<=\+0*ͭP1νr@&I\`oFfj$|}Yz@ei_n&͘+n6G)(`DTYN댮,VK$vIX|>-Ew+WG,xa_/J4Erc ߍ܏塉ךZ\teI8ߌ!ڸ ZH;MIJEg@oR$ݖ 8~ÕXfqNS)4( I{I%ꌋ31/GKy0 t|ѥ !cP@my}.Af(ޫ:-'oq؎*ٕO,^ KF>8Tϵ='}k̪!u{Q:!py3B&3ksHSÈU}<_XFkb2~Ed ٺ&hVTPj MkΎRU uTk'dMM_lyr5Lu`^c“iJָ݊Mib@Pԝpo՚b >ٸXp&Ĵ> ;i%#%jd=+=şQwHgbעRP.pKpl\pf]blPa,6)?z \X_|/'rQRg J_:'HJ6 Hv0˻ %sb=j![~k;;7ͷg]\g4ʽo &ͥ.+kf8Q`C[^YyХk# 'mD&RהyNl`K:8F]h=o 䩽 eߺl̀ˁUєZΒdٳJ[R^ctfs G!e+ `.NO^;K}ʝάXz{jlۣ!a_bTrUa`v/yL1\|j_Q9]'+l1IB&:C5˜%{ܔ)ŘedDF#xi`kuٳ=,N>D}]f#%w=ayt/X\ni<H)nM!ϝp@SՊ/nŤO0Kx~qT PUJi]E Ϸ*I($ݫvlWP3C*_hUP=YDfgTxs4+]5oZڞ~y_޵ QA\}Au4od @&;FcAju.it[Ld~bIR: OU])B93J& /G.>OڭE"06 jX/.ܯa..{,>Oz'N/ȗ`H]7V>܎ccies'*cv.^w4S%hxܑ"sc 7#EשUT4N`,oYbFuӻyה>8 vGƱKAC=1- XFi>DIƆP]@>Wpcr+ю; -|I7BDFi8U1{,ۼE 3St`_.OwF *m ?/NN+M\yۘ JeV8Hq2=T]堺豖l?ւ%<0 Vq'`bHmJ7B&tgPV_hIgGǑ/]҅@awo6|3y&(zc LLJnŨ]|8hY\I\Vcjx([+nIA_*y8H3Pt kUJaP= l,`?# hsO[O 2.k.Ef6e}p!\.oaijcc)3/I^.sFqB@sY?``~9+i^`.="HCoU+xp{yڰ)89^pסQdF1r|X65s?`T6.F-[5 A~| 1JQ-Oq6,;\*ӷޗP;өIctH^q4&nz[<9uRT˴7uՂNվwZAWo|1Ď:AMcc?7=Ta:,G bX9k.@愔Xxyd[mO. "Q2 k;ֆ5.K$}xkp5v_}êBm7a]ɉ={Ej5DCG9'Gqz\}K؉d#*6c ~ Of~3ʣ$? 1oi^ŹmBulCU\wݽ>)\/1]@~T T!3^zFX:2G0,>7J牶NkcѺ73 Kرl\ ]Bթd BCkVQz?ԧ4x%ZH0_&Ɇ´3u1.!#Zddff- F>_y~< ?W4G({nV &}IZy^7OD|x2B+Gygn'ulYGH\ݺ_)ZU]m%)Rz)\IK۱=%v4'M*@YعmOOW;!4Et2eui^gh|KZ1!ViR1)g f##㉈oKko(t"I<#;zhe_sq y?&|:0ha;n iD>IJ.7cb@ #XuD6hz}Oda V҉x)#y&E.>%Nkj-@ϪrЭV ?(rlYa83yVF>b{6EO݁8gJHјJJM6HE<` Mض"}YQu6K4x,2_&u'w[eOg-.)+i'g1{U*i|=4#]Ҁcy5Kƹ:p~"NJaZdRf [~ׇB9H,0 X9jJnKlm;=x SErI#I+Zo(l۝FW'7Gt_L tOG{Dխ$L`(E U1eNV%aeYE.,#^U@>DhAE̪rC ō>ุ O{#YSvpzB@CC;:ع`=vP󓛇ncW4W ݳp/^l=o{(jDJ 2B'Amɖ,scME-\Vaz&iBg,&rg ћWp{Tnu-l3>b|+<7a6;=a;`@]ڇl, (<{"M'0#1Q6>h=!ۜI`mOhH\oM%:6YBo͔]fx{;Mw/EϗxҋT99 WŲF'P='=fum, q OZ~^ȒZ!НuҿXn7KYuWKe㌙\dgE}U,!*-Iԙ:mG) {X&ZWQDz25ۤދbd5 V~c ~ x#k[lX. +|؂2ĒO^Q 8 ב5򤗙W:&:<RM<:heyw鎹+5=p?z cmn|Hӛ0J oǐ9ϟ S7Tȅ<)Ul"pZXvN?L׋u̴qJ`_}{2Q!l,h kh0ÈTV7H],?Ġdq5.2r+ȬFtmʘ* >BH q].[ބӧ_&)3_tғFnu,!DCX'qOyMdʦ *a?4sq6ؠ3/!^Q#'IGGq-o8XɈR M9V˓ʏVYaL9n5LAcR,{@@tWH- Cݸ0NMQ7eiseH=OtH*'<']H+:{p lNï ){gC[졨\ǖ5@ꔯMvnG>}H7H|L1dn)ia2Y7΀IL2xDubDUy7(Ova#ܣVbʕs~:sRŸTЯD@^:YS۬%Y8HYZ0;1{Jtʳu`:UKGBL{6*PAo`SK-ń۪@x1\msa!8VNf^Qp1F(Pլ+,?ZK}3 2?{\A7C@$/[j;*JXё:h0Gu (j57n0}nj51Vi}ajn~I1ZdLkPifs +*̒zgG7`$pR9bolA ӒxV Tvn~f:a"̭?<=:FA'f>vȿͺ xvڂ[ h<1u;WYu"{ϯA'Ok1TB= Pj\Jƣ~Sr@_J7hC8ړA'YcjSH+Z.k,=)dݬw{"6܍-`o% iN*]Kcc.3X$ņkܢUf2!dzea.Ca}!fh4l{5gPA$.T:Yxx /$|IV+;y0sjG$*nH.ٻWKa<<*)?kWr?Ǟ2JNwK2_Ώƃ9Dʩp^W -I䐭hjqx %_$*|N <u t ΰ=oI>iC]lGnN \f.sNSu5\yF8G 5f.@oD`m$sw}N@smÐ]:tK] fE1.N5){2+!6+<^*ei`8|u{  ⋊Y{ oݢPrEҁR)q5Qemˌ&MH$}4@|ۛZ#S> TD8xbBa`ڞˤ\-}_DHkyǨłPcz^ͨL,^_9tbHQfytKO(̘6ǭi7Լۧ-Y)D@$Iv,y-u$״)@5OSmxu1 P-*^딘RBgIu2k$  j^͉y& 6I7:ۍʻHVǽyS¢ܹ]J8y1@|JXX?}DڕIMY cL<>ƱZ)?}5(̆QKp^6+*oARYHgU>PCq ٫V: @+LS2t*O;P`),H: Zٺ^ t]iJXяm Q+Xx+xo Kk؃3W 3*]%.Q:FMz95E@+4>LshI0AV WS^Upl!ODaT&gDsjfmh47DBN)bS! 4;LڇJ%,: da+-sNzXUL}5HUG"( t>2LuȖ$L9#{MW<o \DZǴj\XD] 8R9S @{kVc+t'ji?vx&Q/o34|EΠjExt{w;u`ɵqݿF Q gwaSQH+}gpr[\U@_*oaR k>I qO0,_:.YLdaT,l3V ]lԳS *XLwQr}#CpDگ(̘^YB`yBׅ0w@ _aP<LrI{@zւFN |{fI^K$]qm;ƨg1n^+8,+_4KW[W-["s:=7dk+G5ao{|/`Y?u"4|Zd*pكX,( S=}}Ь-s^.K#B*3Yn !d᩠-}OۜtZȈN83acJ *k2*}]!,rԦOFkӐNESrAC)*j7'4#j0Kwloԋj|^Yцy $5Xw<1]A䁇exl+S%5o<'ޭNG^iv:՛^H'ОAp 6k'Q39!'ڄS;nf׉mnlɭ {WY {tT#OQ0btE^bݻSy8ta\EGI\#'UfLp4ƳOjFHbKұ@|wFq#s܆z?WQ턘?bvٲ>a8JQYҺw/t[8k *1`i@ Gsa^3[.I@B0UH$[@sNs}ldܩ+x/vh,Q2 @+Fqwzmza:)L:E/&P׋"+ՅbЀ_%*£UN(}t,l?bhUOUEQx,d̲q]H1^0fyE&Ba2C3ףq mե&y\bm9Z1Ih[[jLbWٱmT `\x~]tR4(UٜT[8iε2pPafAU՝~щ`8aNl{kT=㆛< 񇅴DW^t;",2Ae&&X xaFfs/M2`خ~Er h2 q*&,9sE_рTܣS%Ae1 gF d1U=w^5QXWW  >>*8Y2x6`^'L(^D_a6j92Q; 3_I~Y$ջmgtx6g2E5F''sO†*vkXs8wQFKd K(h-$ @\9f$3#_)QLjR?88rڵ0 D-'xN%Js9S/kv! hw'_ek_%)ŭ|J/W]ӕLfzZ|x/C# }>IEZtEh>Ylu&7bU6lM=\ 03k9,* vWj&T:cssÏ q:RUAL W:']e,{C&xo>yA0Adyn΅){3dO:9.QN{ X%] qb@r!HDm$߫Dֺy=U4dR9ҙ,ƲoAU4Ә qotAckIF1[40;*T_V%CC)8Mn$"ۿ\}P+!dt ",xNUg#I]2v  P-:)*ǘ3o.L'{!-k4Sd$jM|_:ٚUt5@+ ֙%9gvDb*/Չ4cPo^XC.ٕ fGtyKӹ&-ا]nERVf`]e[*4UptqY 2>-"JrgVuʕ_ɪdz+ PrN]]?5Ī{ w{ ӰPɤ>A&hJr{?RvƟaՈ8-@91;7_`ϻ6u5Tqq-pz TcpÊ!.J@@ܹ[\d2{Z>Lm%t8v᤻rZܵXC8e=:ޢb~) sR5 l8ȢE?m\T:pbpb<-ӃUg+9=] [292ǑPWT=r AD qSv(1N?O+K hJ.BCW&>F#7h؅킆S n)d;D/LRGV(DᙠI V%fռ͙J\mi,e\G$G+9,@G@do_M7/C8QZ*r/@E1Ue>K, V%s çaFuPߘl!?4;erNeޖcTa]ʖcJC -d44X+QՓl 4,\0WuWdh~>w?%9V/}cNMj*J5٬%Hu\mfɎ]^ D4uigv-Xv;Bu ; j)Na\ͨ +սĞrlsؤD:ѓ#rX:}: @:s֓43yܗ<@ wEydpXsy9qڏߵ? 3_ )-*LņbDUǏ Xb灶W'_ɩ!= {#9[1>dSvRf.J/ AJ=iP|>ʝ~ľ\.ՠXv!ucq~jTeBķ~k rvH4Ic|Xeo>Y֢!ZR)EERKqakݒ OXB~Q/6S+f a7f&I*vUvcwPpUU|Td*ZD44k_CQJ|&'5g4k@"95G@Ti G{!Enl9#1'[=͂RB*iEB"XP/-pϞDž-M5k]-4bv0, }&4^vfܱѾ/Iĝddz8pP#@sERI'ul6׉b֞= p}Xef h0DUXOwz g3@Ʒ|AZD~P_cdFfFh x"okx"yCÄ%(<lTRA{(Cf8qG32r5OW%! 3bˢc+1+1J2AwvDU%l :>!^ݡ_5tVڠw+Y Gcs[ϓ *Atd|u8pOOUwIٶtr }Bk|^r0ֆjGnޕKu=;t(81>Y T ٤ka9(nqh] ~~ 7EH8D읔9H;kF]L!XSOTf'gvm\oieNi/[Z%&l$>ȿ\)iI%)'ְMQKaaœi̻VUGBqw\y5jc2”nv>~b IaXao92Fjja΄,:06.|OP08s/*ز qUEFim:iH='OXME?{ؾ>SxX}x 3|pU,.&2,t|6zKQO=J __[ORɑdkm1>5{8=[_UQćKҔ(Db 'zG#bٮ8{C Fա3.'Ԁ؏IO]qln ]% TFy=C9`%rʼnd\a8$o!% 'EW(jsz@Ơ &:)Ȧ:;ݥ&]S緩GnlS\R)1b4g7ep@w9Y{H`׼윇#O8X_*/4g_`@NeHR}D CF)QI 9zno[_k*}D׃s=u$.K d%etPL`rgSeqAt_$ a"򙜽:>Gqo 0-6S'+XCJ-@ rT%K2b&n#, c,"MC7UC:(Xϵ~Pg<,O 9I,3X4[^FٞK7S]J"ZM>p8kr cX\t>ʆgjwqU5sEF u6]ICg`Y1WQo,X9=8pmʥ{3|aFQ[d;>(ݢ Gϣ]^R+jڴu77 V_JE/GvVҾ[R uW&O1*r5wϤ‰YiC.leC$TBe,ҝR1P ǣE7EQA\%$5T4TvlM(޹0Y?jYЍpT u+1bDdGOc";C3ts@-LM$9oϦZ09\J꽨=+ v}|:ߒ&D_vFjv n\P ,S2]G .sd]gD)InaI5@Z/>$r 0Ic񸣪"L6E_ڂ駻Ю8翕URsڼa0AEթ)IU{F'Q!bVqmMxQ_3LUCN \|kIT,;Gǁ+ ϳ9l}acJvI9NV0*GO3JdDWY`F>5BuއKAt߆,-g5 G˲YgT&{vm0c`ĘZOn᠎CXI,-Or#Poyg:%C?9\^<ܺEbܩD*e\L>"ܧ*hAmP$nϓiOW&j @Gcz(z=C Rm 6K6@"mjYmCa'[cA|pH= =~B>9ԳN߶؝cFgb'eD`@*PoG(;Pҵ'001%8{y>5KW7px '?qY_p.# !̆`\:ˢ 2y4#;|[Bu|Fo29syrsʊ D @nzc0s"wl%\Ooͮ ZӴy&#07 ܋ekfyϩJ=Y#xϩ"4]&ĘGzϟF(<;KT*i% Q.n9EjcǍ W#io㔯|,ɭ?|!'e߽6X""fKF Iz\x;w)hM+l@]A#Qz֨V~jGXv@*rd|<zzm{Q?"9-LSZyAǺIt<톈4ފ89ZBO>UW{)gST *P/?tQ#ܥ{YB iHpdeMeg{B-D]̍~=qN$l8a؆r4XCXFIU;˥N!6ȟ<7OZ(QTMý ^~it:*gFYB>C{2E*,㩀 r{Ds22ScA{ʫ3sgNNVhp,g+z76Q/,A~K"4Ԕ'oH9ޡ߂f^*MBT,ַσ?jj2C#E3q֜j#!J!4 V*sX3Ӝ~;CMY-7RdL/{!ՙcŇUk21sn\X4S*f x 2n mdkg*\wJUgo(^+nU%WЙ[:p4Ǡ3hBRef2f/GByA;QɖT\3(֭ v=VBF&YJndGKbd2 Jil\?q&c%xe}Zm";;mЮ/4?8|| tf9 ٘VDdeOz$Ffl4Y!ٿ$&FW}0 _ّpta>wW {Jݏ CE )0:0Fh^k8_mh Oc}; T-@b%32>ObTrV0 V=|/|$4kErddْ b8L n-Vh6xm?xH\ub md?+kER=TfK̡4 ,+ue!r-/7/yZ*7ygt1 D*̍ܯVh@>7ԽeɒQ\W2,5 o#/"GčYn74杻 Z0vk` @b8l44_{G,C^Q3TxYp#V׋Vyy39v_ ƚWS-<-jnJFdtcue3q-&(cyiF`gW?-Om,sCi4I:&IĨiqEW(C7d!Zzt7;A̳ m;xkK=3o AA=ns;hGɩ.2=L? -+h~h~+h>=:S4)x5a5$rR9<ǀ2.qV+2#'c<pA<#/qB՜BMXM@@U,D`π~n-Yp(  gM fjQ$c =5N$6OQLITLi>xhc}KbC;"}׳bq.YL]G0tO4:f~dMNE4w ߺ?JʽϧERf_C)2@jNMS( nYosfD@ SW$v8AM\>AOܾb"zjO:MX<|qƴb7"U8Z#D5vX 0?]~ eZ>Θk64jL HWNiJgPj569èlV8Tu1<4V> UXA0B^bp_@>s+ض[b|E@'JXXr0L˫DaUBBWDrq@ik CǴ?_捫2=Y$$4262`ilJtWZ5xnWKtcqneANQ2QLaOo w3 '%S$(i~__:[` ڔirx?7;=dW7 _oY^s5J$pR9zviVj+& tI@ݓEh\|C㷘8/{\+,- ?$<Z=T όĨ_y,"O1C/&y7UB..Q#jwB<1W֢K%"It㖵2`sqr90)Ywqu/}&3Xh;NvEO$~?Ԟ:bM\vǻ>}i?Ƥ6$ -gMB=IIK}* Vm$܅Γu3d+ȰbCʂMIad<:epe ASɣVlW86(a<&Kh/Yle;-]Y%##uŒ "([WrS. KH ',XA>&~3Qt'#jذg/n/F-m Z˭{prD,@R `uZ6c@ɏdnHsv+3r t ,s(.ǹ8s>F9Wбp_]tiBQ7Z)mV@Y0k:̅@qH<mm, _?mWU+tT*{^v(o4LB"EE.g"G6ү* %* L.NJ{M=xi` /5֝0@svԅ*Cq[Wi[İ+梸}1A>tMcdf.*mo"3%j-4]TE$/{;̦P8iy>sAjzcXK-m|a2/i#?$GcˉxXfQdFye #Wa~/?GvohtVKTS"_l&"=駎$0.W*o*]UFcE>X2#^ -_,xϭOҧ,-c. SI9NuŴɾzuq@U=f^@{" IzKpnJvf[F(HKa'pe~&9\BD{H1qX ׮bI/:} R8HJU!@CslB?eXvר%ii_ q(ۢ;>o16ՇeD-VO# kcdD(ayMTqaUWJexq')+ (t+%$h_\x + u,r9ܜf4ۢpDya n:[Xk~#$%ԒY)QL떎VQ.ʒrJ۞?,=s$ATG$…~-^%/w/[_Ĝ2S Sٷ*V#(Q]d*g,A*pN) (tя?t2") g#Xfsd" ZĘB|uZߊ/~G cx_%El9FB-ҋ/M^؈7ST,ҋQd j3S4*~jgkw*D 'l`s=TJt Iq$ra뾮`zx'J< ၑ oe(qCtxЖEnaL#VD p$ XE*H*J]uu&[ryKa3sϿ_NYHv YF_ Q k4 q Cn/u/ڢv_] DSY9^oϠ`:h6:Jh e+Jm/GXx^ Jlޥ4Z<ӎ1,ZP'{ nƚGŒq%TB%nj4$mo핲ě5x3Lr?M8e@YЕxtڲjlQp{g=$qFN)$htǿLĉar'qxN[} n`a"h &(g!']A0*#7ͽ 6TosDu?^4_"dRУ>µ:7  #;h)?"*[\F܅͌KXo{ls%ێIMoUʟhTg=j7k-LQI-A]vCZYN!: bE6@nO )a߈|F*jО %N%V c. R2s! 9U7ܼ R$k3qxE;dfi7U?cw"r !R p Sw4ZFh$ (21%糇2f0.m6]0Hs0gX3w)-d9DekiLIrxr.Rښ>j[s*v:w& B1b XuQ*bjhzGuwv hT5q{b۠PO/nS}$F+^-vt\!AB GzICxb!}A'N9( wzxdf'=qm{ysnyL21pKM>+CQw'xi7}yB뙶mffZYDsQ X*c3ñṕ&0o_x~C3~f*N+NAѪWT"-~ocFJ`@<0"u}lCߣ Ƶ ǺtBS,T. ][UL}=rime]Qj-nK4H9{K7Ni[S` ^aG`\=e_^[oIyc= nqYNJB<-N7ʇ}[ }mCPZnzPgGg)gEX["|{ωW>%ėRZ2OB':fK뺘KˤGR^=Cnd.ݕF8/ 9I9qG܈]OX6A@Ƅ 5Ô-;nuш-x<0sCe6t S\]ygIDɤƝ *"Iyv;%4vkEB23/d_~JMnt)߯y_e=]k.U-0*Go%pʷybJv$;T7HjvUHx ;v4x/]Wmxz/^Mꧠ֘CB(%pr=g'|Rlyh~2qs4ѣ7wE#]XsFh*/h!j5 m&ÌJh% ⹾E̓G /ϳLESwrBt{h("Φ[X *]LL,sRTv 0$"DO2?H\*yS >scI k>$vڜ==Gw R€_`~R=(QTBl{o<0>w>촋=`v< kS*8|G{9?wք@VrPHŮ!8JGΨFXia_tEb U{m\<)f8>Yu_'0.YiUNF|.*(;!N"V[Ҹ^ 57Cx =ĝ9=>LJ]gSe9¦K`p˃sʝheΙ9f)j[pFF(E/ p&6z{[tMͤ7O`#~Qs8qE i!\kպl΋ύG]ɁYʽYwcCRK ܥ4zR2>-xPO3$.vGC{{2?M, 9SaL~V_HVz&8ݣ^,y #w&c10Ɔ\veѱtԏ0(`.FUᲟyBK ʾb)VavujԖS]YP9lA(ܼ7D<{%\ ;t"~a0ў"@ޏ:sι퉱T$XфZX,DRu&W=,Ks.!֛+Nc4cC8y?Zteȧe=hpEң ;8]D{rl֭woy-n.uEyվ6H$n4jPr森?}~=߰ZͦRPDfH>\K%/9uP'9VAU9ڼmlFWCoC{D%₼/ dU޾7kC$^{rh'lmW4A}XhT)R/{]LdzԝY@Jzm Ju jX1Rh6-; %U#0}뾇! E}\p؜[a9Ѹ@L~'l]J( TkWi[෺phmAY{ #Y8v"ޛXRO/gW'W>7ZrﶿdzD<bFUYTX( J0qBn.#&-&tw@zsp Uge1ɪ17{dʁt(BGL T%}؟#p : ޵S%j/EIgK >ubn__F>[=Z e!9GI9< / t)er˻x/Oi]sU ($;I)&%8y%ծRQ Q[>p mY5yG|>< z%t*Jp Xz%T ]l 0GGN[ѓ7-b/ubV1rp݇%Oh/,fKNгݣ=X,Δ9rTl%&LE까3l#6gؽlh"zia$" dv ݛ @'!sD9;P*uZ+Rv^n5f;ǚK7O+wk!Ϳ5N23łSqw N͏3VUS`o~*ē$ݱŸw%\?yӾC=pi~+ȾB\=͋5dVGmhj eÉ33t!&vE ({(f>%cQ[)T@%T'q5_xɼHw{iM {vw%` BGwIZ#$v=, OFGq=.!Q%S5Nfg:pәML*xH~Y6[XL Ec]ܟٞT^D0UlH $.72zY:njhIhM-1C];jK+]M\T7;0,M+% q][u$:EB[4xʜ-P91bF:<8࡞rYE$F" 1=#֥jLrp3_0CYÓfUed#-}pP :|5J‚FZY;f (]Ҵ35 ;W:NR^S _TΘAxRӖwψCmK !&<щ2ExVe jd;h5{!~F8?H\~}!$_t~eV1FntǨu0ku9t˲t;0IBo Q8gk\(NH !m:^]T:dg[*IW϶X{f18|OAH$=PŰolH(Qnhpec]L0&rcNc o|@$1<.͈!^mT 81mP2J| %}`~PE8 Idbiix"vnn;v&M"o-D8uXfR=,f$8]TsaMMAL*&kxz;> ד" 8(Fc,Nae$$9iŀNe%kx~B'x8oyBB5ٴ`ɚʒ?uTtM(_!HJ)JZ䄼^3G:dܡQcK4A&8+ S,R[ʪD7j#Hm?Iǿֲލ_}lA1͐7࠼-P僌zA(:݈%K"K-U+re3bfRAt+S=GO2sqhD445(\j1(1aZbIr$Aݧڠ,]^tr3 NömCuDa:ۣ /07͑e!LJT0 FLD*$']gZzJ932w܊K*>Q#,賿3BC}SzU'J]159ZG=\ޠnDssdvP*z.z->oϸx#,@mc{0①Stu4 xzMoERDZ[<^a60r2}|sS\|^9OD\ߩJ$ PRy3yE,u&vtG<9/fɨYL%ӾdZBML=ߧ/"IDY󿀍Gٳm{c4IGN\JV:q"~d$P)R(ly%Ԥy@hYŏ*\Ѕ3˃rMŊֽH/v h(*XUCO`3&Gd`9)vM)j#$%v|p[Uϥ=W~K͍HP6 2Sxw,U#2@oSw~o6"%N*זʥN08w-ATUbCo JGNQ!K&P72= sSɨw,%Nƥ2+v<\A?~SdNPܰ_tq"itT~K 8{wGMzR$ 2J>< |غ8?a$2ٸ(iI:`w x!v-Xގ6c!F Zσ\ȦvWHSYH*L O+[LM'k*x ë2ؗ!òe|*(Mbh!2UHӳqI:cMhLj*9lv۩@Mng#]ZC~guUW| \=2Ym9RF)el0K:*AD2fxpPPN[Cmf /> ׇATbiy0^P-˧nmṥ >Tkf8hxcN/1咫= D(G\2T݄ ~r(CF4bA\J<XKgMd7؆);Yjmg :.o"8F;~ {;Ftܴ/d64ƁLaH2{Wj~S>q>qQG^W<js<©u0wz]>=ǯj3kZy>$QZXKx/kd;C@lCxw=*&Fƃ~^3ЊeV)xPclzl϶W&'_6))0AiE Yz|=C{p+cJkRE: x1{^8wx}oEwsm%虖qH7R7+HXku;sC5{pgIcgکֳQe=<,d}=-"<ˑ%꼎+T;T>|G 3sNp@w;fQ6#NHI8^w , X X4;,s֊"d5j*Dh?~Uq`/@N͛7h W?׏ ML_U_( /$==~6мA2o  NhH1Rx0j; Gz;L2ԌLM<l]XY^z?:׾OAEqAErT1Ǿ]scb=< 㪄s=Ntu'{ }?2>]&NWfU:ۺhKX^`ezӯ±)Nq&L7='?8OIt7[Xy6֝"Il?]HPN^ȇvNw]bTC`."cK}~̧a3ɰl-df CY(ЏRA7-~Gi@ŝo" wy[rh*M.pgj78BQu+?^lEe.F> ^rQLh׭1ᣤ;ڡҬt*yuZ@u#3(u(Cqxv1T9Nh-$j %)ԎpP&䞕7,d;!zd- )@< Ǚ\4\55";;y7j,;'_Z dh]т8q&47FC~ژw!q8;hq+,ӏ52 ITglP&zuҡ_'dԜ<pS`p viߝ[[ȳ$=HB#Zh CMl?G/{ ȿWC~FMXu+,z@Iw@h'&q)l!r q*V46cHI|;p{H{vQ -9CU o6JW۽ +DMh7Idf'~8¨,) 3,֗[הit,V̪+Tto ,N=͘cIk&ՍH%-ޓ}bG'G#ddpދVU~dSix)Vj Y8݃Àj0Ф! O , |y"?q~z.H+|#io@I/LEޭih0{!ȩBT=Y6Bmx.|%r(nd#=>(qu^D|.Թ"aPb+Lћ݁s$qȳ-@.=:DgҶykm_`=)=wCq0Ð'XN#5l2~f')'i*&Cu}KkaŐ"[Y,ߣ<~0 f#RU!bpSi#BxMGJ"CP$ڠV̦Yd#(*Nmrg;A7M%2!EF踦/8K"ýT"`K)/mT3%SG0_[}IrṸ7*}}{"h~?"J 0<JL֩Td/jG[ ,mq&@*uo9WpqCH! ̦*'6UOOu雈7Sxzr}pZʊQc C335ԗw33`l-z+juNӶp}5΢f%O kQ2G=B{̼]G]~+D'sc{~ w6\78Ǩ76^T>ZP"Vdo`8JYj EN5d?Ȅ"Y,V_߃V!n, q@QrFV>p\+ $ Jķ>g6Cy8LVnzm̾X 5+Pa }$N2w~"0i \CBUQPS ×y{3M% 0smO3MrǑv+9. PYkú Xҝ ZyL:o2nX g\AVꛓm "}I$_3w{IV'۩q"b-,)h{ox!^4&C/snݣ-0ƨKH~P3 sJ#-nō0/O@5>?<-+W6}:} &$q"5,(< Ho5E .S",Ȅ9\?8ӐydW%kgV0d/Ysx,?AݫZP6tc3D ʳR3Pģ|=>QF95ۤ%޶|\Z81bu$QNM7}w>DYK%js*4 $1֢7G!Dѵia.Ajޝ-;-U  ;v3=&:>+ےJ0[k$lbF* IF㮃-g?uh: |[x|Tӑv#\>@v>M\I--.}sF1#ף)}rtM.fŦ])B#XXIDK<ˌE!e#/TˆVlHN6TK ,|t; , i}IHX< ʆZ)[DDvXz<=ZlrCp4YSũvH: O]BGX'4pBT?)®J 0=+iUsX+ٗLi G6VH&}ymS#"E_/8jWFI wԿr1|ϑE`S[kg/3' #dJ;֑9qH{xd☞BRڑM8ŮAPw?<,ڍY({f5j[nRfT'ѥW)uUH)`Gsss.~c]}?5+CϏ|;&jVvxGj#փYA|N~9ƨK F{g{I7?} 2`vSWuM53o>shu{>T*rV2CAѵ9(PIP"@IQ~@w1>$!S.ǬuQ[0~H-.s<Լ5JEdɷ&rnay?tMJk(%e.ia59L𒩫O8J97}]+v`Ή2.o.:g}gUDF <}h_{n0Ukd:Þ%<@X2{|hQط=.n U 6 '48md+gpN^ %: EE7q~JR' k<`C%g3o=?}M4]0J7v/Iq>588群s<Ţ5ob %iP\؇HXT% [E.$}Fig -?Rh-͖)6GqLjj`m[(Op@}DȘ KMڹE| "AvV+Wmp^PB< h]q;)pl6HT^M5L͵#2d nkI"^{+E"C.3*,f,KĔX %[i36V/K({SX*2 l#vke-G&xjMvİ%FmLg9 3օJ+9vh1! 6 >6VV?"JH]EV'Dn+9 DQyIWg;޷sifB)R#Z}뛡5x̵o>3&7 '6kL3:߽ě:_PYC\t -u=;:7i{֣Ƌ"+5 I+PНymsQ<`Hg5J R}mM(.&LaftMFX(ɐ1zb~GG$U uKU([KP8+foKVZl ThM}4!v4W$=|2c:Z)$,)1ţ'p)5oQ扢%)h&/J@cƎ^ 3{껊Y'{8e Qr.6 gt@eQ#]$jzODX_C?/V/%u]2IէX!OoEc=Nd(0StSB7Is6'ګ3=Kn&S׮\WOǪf{KU'wN}j 3ergND'`gM!'EDaÎ<WI5XgOgnj7v.Fzf`/Eyit+AVB0a _HDATу͆z:hch<񈠒 ܕ͂$) wD)M*0i[Un󐣣}CS~}Rm7T;|'f.Mɒko&PVff,=g6 '8z] k䋹 W~.NM RI䙔@#"sOEk+5` jXbH>|%c 'Fbg vuo IS|`{u͜sDgp)xհFntrL{`4&dZ%Oi+I O"BKP{f+%[G;.+ dhuO5;*M9#쓁Q`hS׼4;OZͭ3 W@a 72)ȤE6Ž-=@Mq_&vROE ^ڠ;xk* 1/Ky9Grҙ?8B̢Z^Wy|]KDc/A >6SLԙ+^,~&VSFj͂{Nvـ1t`UƳ!PY \iĨ8,~^EQs%09P.ҲeAN4]Gb&m)* q %;J**\f>u-a-%Wx%? ruEUSck A#6I^e18%3jh5A$P WKDI\G~ח_y,*^՝~),a:4w 1w*avLkInXm6ma5NjwMo]+s"3A>WDtÞXT 59E}½>s2_41ipM#D70R]Xs#{)ae} @~"BU$Ӊ89a4fcd}(㠈XrLob  m8onBQ'MŽb墴l mY=T~j(he])܌!6h> faHq|^&ؠs ODVY31׎eNC)l[$Q8KX,68du]MF:eb OO>+9K%I CO^/+tt_oFsz 7S svf'eU.:vDηQ~VbwПpy0J.响1L$[3hȮc?q@0^RKi˛ͼ-˸*LMTnGWaGpw҇|h äݚI)צBuJc&:9;v7/>/A~~Pڎp;l̍u-:60)l_|V]kJJ}x 9؛P ̃g*sv,6ߟEiڱU'digzajR|6 Y_P~92ft=QPi!'OQenğF(i;Yɑ$Zʮ#) F=x\@mF[`9m%^\6voĩt'l:%ƈǗ#fƅa@,o;گ I_+ɩbCrDhNCE\_~.!>e1U{Z)ԹKbN`;QťyGII7#r􈓞4xߏ T7p"U_?k;J=bU_v]0D0(MH8Cn|*JН)pslq Y0`@=4 j4aJ]UfJ J*&÷#ETx *JރGj(! Io`[χߌv?*ZAHCFiģ/Xq5vՠ]2Jg;<1y_tt; 3=24)7F4 7v;KdI_ ψir ?SD1s\E0Gx'C7Q.~ܝO27(?gmk3 sFXvd c,bGS+7AmOD,~0\J˛*>{R s4Y{q1P[7۱0=,;ⲸaƹsΚ"A @?y^`K:zc0W'}r&u<[$P(yJ0!T|8'wާ5ik'>F슢6n5r0Έ+K3EhsWˏxsEKX$\ =rmDSJ=.Cd7{v0Tb@gL |R;yX%UT.GRò96]Q[%%#{O+mm/.f9Eժbޟ}G]FXn+ &[H ,hl^DkȳZ;O 8b]t|. tqTF|S3c`K&]38;,U;̝[nv"B(ktW⏆~hP))kx6 o(ٹS5hazFyT.҂/ ,qo) P^܁lZJӭ&nӭ&6uÇ%YQ7!v_P7^ݳ/)k:Eȯr{ڒ{1IgwĬ\QRx{a#+cNa Rj^ʞn74yi5~ ]< @ˁI0[d:.suD%=J|7ҬG t%ȞO!4Tq~b PH}vm8XBG-M1$4]s.%woFO <k&O6'6AR\n ny&[Ö ùm v]u<5"fthcY%0'zϠL2@LEۊIb%S i D"6r4ê'ŗq$'گqY%R Op786y$O곸)Bc~Y'>iCyä́X%'^rW|*h>G %P4Lu!s80A¥Ò't7fO?.5*?r'7X2>_-6K}t%OT kpfɊ.7\4VcDG6{j?荥0q8${C$]^(2xӑqxD6 ѳ* ?:| !c{^j4][ :yP+@AQ7IQʮ2 $_$ [}9 o[7+dctL!OǠ;ħۤaf8kb,9حu~T`h=aUeGV?kͯ(S?L{4տJWlj]yt0:%Ni9&B<3IʲRbfrs0Y@=˓>9T1䘡WͰHg\P./ReߙXs1Zq 9oc kp;g,6Hf1MXA8r@9˵ȁ&p8֞U0N5={ip4Ede+Mؐ8fğA,i0g՛sIE\Jku+VݺNZ {CK j@elI3'S1./+K/4JLVv\|lP${2?"6%^[@?~ŋ/+awCKwPPj[\'Sc=Q >16R)Qoc=ʲX>$@Le[_I1dƘ% (=zc#{1w@;qD_#1RATYٕ[Yec)AnhI> 7yYzT+@A b݆FԟqB]-mF5t~-J< 2kG_!UgVf'&y<϶}BFZNUSyA_l]u}RwI N^\nѝ r'{ s䋳k*FQڨ̽:mڗ^! O'6*hlziNBnnBPLSneRchDXM؁_6՞@䷗J>ӧloǟ_3@UWi7`fl|0\GPu+OYtDS^P{i:QGoeQ6 _ XeRs6,lz ]rKS /#+Ùvyp4׽ͳ4 *׮:]S(ExcO"6+yr=wWRŤ)#u,靖&U ) % rHGTDЕ?N V}^N aYFye@?a"AC5i0p/\[߼!CyA{"@(БDPh90Д~?(IsSoQçj2}70\0VVdS汊ְ]Lc ‰?uAԂ0A zwMosXLxsY{FAvfCM9\{*"DxWqZ=j#.iGVw~(#J⿠3U~#B =ZSJݴBB3~mfNbp7NʛE htV;8RX 19wپpQiZ֭J BY0b ׽;!ѣ@>ȅn 9;`Hhl:f{4bd(&GD8mԦvT77 :0iiQSBfqSEt&<2y ;ωrp:]F;㍳JC@0r )y]"yH ä?@ٰq s++G $=6b6E5ȚUbji7*Fu~3d1BC=2ʙ'0P"#`M+o4BbAU=;u +BYW&&Xlc[MT37E1Ϳ޸8݂qw:fz? ĉo0&8"Z4&4 W`WрDSD 7̄`e2(OT"fvôR{ywێ"p H@}{N;>[(XE/#AB e+E4D_eL[d2ЇlkLlUx^ފV҉C`I=Odn`cK-e*azxO2x[4NsJuy dE}te8S)s3J:Ey؅@ў|;~iAo: Gx3>`Q%oJ/Ҵ͸e n+y)\~S;8FYHլVʗ7tv~m3Sڻq#|N9+7iE -TEF +.u3d$*oYK3!bjm%'hȢLuV)gB8 Eme~knm:43!-Vd fh6/{$EPK7gt[[]J3t #cjQofڕT_<l IVIg&$yַ7In¾;FƀH3P%rs&dx!1H%lD?jlҬǖ|,0ɮ0nV6sHd&( ѝ]3:8bv$HXZx@4bdr7y9Lᅉ%_UXP="N~~R*VZO |2\xlsjKP%s@駹h6)^uOt<~N_Fvf?z\X=y$ eSK#;ڬcJ"BrMsYRQaZU=w̓B累Q4@wVAsjUMvMN<9rN<ԀNWϳYE|i(CxdɸǰC_R0ǹ~3O:*>1?8#w9JMJ-GGZ kazALv,Rˠ!j#u?Q#e䚊V7c/̋ WX5⨕ *Tc׋5]q DªZ+SH9p>GA|>P50]01 ;~>庉G5bewSjuWT~$9JKͻN=u-C.LLɷCH(O5lvao o3\m"Q3 sCj䕧M m Nyse&'0dӠCO<Kd` XUjyqT,5 m#L,mޥab2,F{|dBh5ਅ2LWSmNeҰUMd]Rg6>G#άS N8+c+{JG M=Prߺ^VRXJXЕCKXG5%<жEJ16-l1E%򕔇΂7=oJ)KxOuhY>|ފ'Lak>B]ۊz4$((6"qJU˲0J[u?]f= W&]Sl9-AFg< W#xL9ؔ-Wg1/f@&♙(?IJ A3&P^9ۅ,j,|y+4͋:l!° 5h) Ո]FU50GZ$Z#~ܡ*2۱7R:Q1.hySP e6@n,#fYe/J" bFx7yaĉF8EK`GFHn4l?]3A*"q90z$MƟ\[O6^/4,Ǹ_qeCpI՞2V}_jN&{- v$?t2&y'wB gUL2mԅ<ƒ?n8o`)xAsyO_ז"l&[_Z[+vdQ{^ u]A%Ĺ>/utJeؼ 3;*71"xh(\b ֡8=x:ӽ!,⿍D];:ֻ4gxu4WU 2ڔFk/|mC}v>AX `P]{W~,q55[hCDʫ 9v3PsPv-ѥ(&pp2sOw,T^v}:XDz2#a+-?|m\3:]mVH_%5A:8 @JYkbO1[;NX-=^e EџHGۚzev\m۝^a- C`[֍"jUN {RA suhλ4"=FA_@q9aT1du9KdL73R ZѼ}lx`)vc::'\yZ;Nldvj!inO*[|Л9.4qrr\tzXd;BOOzjS5{\6nl |Ppwz;2ēS c|zSt":=Pʶn?J"v"ϟ|$ {ſ$B}xm?@Z8:գ~Y 'D,7:VbY ޽ĉ|&ΔI^XZ h1>{S#Z`pZ](ZL 0 oU-Sݻp"W(q l*WmiԙޕѦ$y%#R$aJo1f09c1eQָRj8 xZ}ڔf$gޱFeJ1aX9blzVc!'Mdl1O .Q6ACX hDI kvؼ,uN%a)miSp˪v9K~B+B*]p2Xȍ8#{Ν*UgˆK<9Zc ߢ%B^rH; {*iS/Kp3̝̖n3W˽>%ދfI׿ct\%Wo8Џ41U 'OC-[c݌TVuiI*×{`jG)N؋¶d1lz캆ZOM`д?鿯>]*x@f%˻IxRWU^wB_pҕ%C]SPh$~s7NY+t2ۓߠOH}Jә u_6qs/^NFZc^׺nƕC! qJ=PmT`4jYNOף7 `/͗K7m@}Qa9YB'Xԧû掵SÌx{j0{va{#D8!8%c4LG'!|Ӆx5OmO#; .2{*S0x<+ E塐?b IegQm9SޑȖOrĺCC8"`(qkH#a*e8wP] pqM].ʬl1h#j̕C]z-i[,䒲C 3MJN3$lז0\0$V:JƊ*@_3Y|G9k"5ד%(@8fT6t~sIm;T#`"u?2Ip\9 ?k5ն%\s =W }:V:y]^.4zG6nv{,ة2$8[M,EE݀2wYeSo!UMXUkxn7 gqޓ \'J(G8Ȭr49U#8̘#CW|@ǁO+[:0h7-;HpqbJ}¦ 3S 5Q|c^D5Z@w"G!jrOΎ~64 ^+܎ [%2=oBO dk`^BŗZ\3U?:}[. zHm/GӾNke& %;)F!mbnm?a#Q1yĘLLQQuJ-DMo|GK^rcG]H[D5b4ސ$1$iXޫ}t?Vkc^%:uM!jr*0Hx vMr'iOzsoM’%Oh2䷀qVM<ŐC+rPL 9};efvt)`:!̨tppGgVkMED<(w\~hцҢs\r܅{[35odPR ½9Iy"ԩ8D Rz XyP*0E%KFqɗ*K _T d(%Y:sU:!cpY0nclFJq ^4#q_NvFFMAOۮ'vh}>I#Ҳ٥ NgT8fwuu 򹔩/}l;qg]ɹ,g$$A j>-fr`滏RSƍH{MDDZ+RIw(*3%=ƌd %,7 #-?<=+<(Ⱥ^@5P|ڻ썼ӈr4_iܿ~(Rnw>S-PYY)>+Q+;Ӽ/DʤA $o5uTi!4vJ:z/ZˤH hV T5 ]ºBKr̅aM3-VV=ũ9tu+ E]1ז/ޕ.G%ܯQɲr DfjVsVBP:WsJ ծdy3CֹCTÚh)~rM4,'S+kG+ف6շbݵwR>D)Y^2!Ut),dlcs \^WkmdyJXr͍65XHjxLbsXEvԣEch7;}^a`̶EZCTP!c{]rf" gr6*#ux:v1]LS jNMDҶKO_ mڪ7):dawg ؔbH,@z>AnwhW^î Y"ޤ; pENTMU bmƥh/#^;nq\[r7=^& |E/n7ResT/ pPstw}oE?2:mI͋8 G0/HG3bvAۧHpj&afTHzW=Oy]j!YX[C-x jE<*"*_ƅ -kj6XN&%mc}DP sj',B>i}Ή"i5Yw;|//\ZTEH)ya.?ۢqnWɪ 1FL%Nndp#;sRqa^g!sJ.JOQOŞ7ASp\ mTO!r3~r|Ԅ\/HmCUq y:i%Ї@CVU#8SM썺Q!%e'oo)sr!V:*" S6 U*p^UfC4ȷ'7Tx%E- =-ງ2?wAqMb봛iַ-]Z|n4Ռ7X1?2 sXYuџBJ%U}.N.|Vpk,|Œ;"zX殺Q|xl.?̙G"s-T% Bd.֖8-oCۀn厤Uy?AFII¿(w5ILJZ*%c*s` 羦y9! !nd*_HR)նq{YG+Il[7SwV4?J^ T~oQM6 RV{D:̑<3ՈtpXL:+G{`]"ř?p>+͋yrhku Sj#/fİ>/29XRWoiʽ"rr3]D})F;㏷x`x{Ǣaj2t?7\C$GB{]P]THlS[H-^$b,h^-Q9To o@]R`Nk@`Z`q<ɗ)XTPͣ)Q6Owe5.iU64co0o-H .9T(/>94`9 Y淔&k,Kk \FpzUVaH9"6ts*)|#[sjb3Q@O:mP v0tRYHYPԵX'MU-?/+7aP лڔ=fh E:1zn@4LH{_D EE *>uN,UU~}څ1iR̒J)H,9%jv¸kr3@g7XM׻4LUPw)6̠H Eă?JtصL93٣wkW;@4 C10Q}̕A~ov9$6&H#/OoumsR[@}TbϢ?'jm̬{# M'e/Q`#q6Dkv2^dG2N$Z[^9M7Xob0j xfbih\Y5Hh&A.IP#^}ixK擟1,fR٨7E-63o-Fu+K*8 I[y='iCv Ao'kq#P3{Yvч2yx~+UԢc0N1c>n%EK.l S΅sho,PPbE6M}]P_AaMV?T2n{d2ܧW}2Yodaك-_ߓj|įKBoóRE]nf&gYv$r;/>f/ʼ=HmrX$烃y'w&\N#Ivƭ)į/SR?Ly랁n7USI L|p,Ɵ%r#]r|x;I>GAOjiO .JjW~?޵TAc]BZ&[Z}E8Kc2\+nhcQ2MLnD7{M9S(72*W @mWjưa  ,\T^%YTSBޡY bF <$v;rן>Yor7p+w\Cҏn8w|{{J nm5 *wS36V* 2: M٨Zqc7_QX8dH f/Sf (;DnYAkG}I_bq껽ݐ_pS6>ưHꭀu-8u`~ˉsǻcKH`1713~|hC7/R@u`Rw{a<}!ؾ_Qm#᣽:[tO$/VA'^\#`,"-"IJM% V:rW=+)>?uu {[֟Q_b}JD흓cSΡ8d]z Rm׽?*{nG,j]npӒg?a-˦ZH($=`•{RPBw`>Q3dzWaVMPX7GhL'>&Z1 G ]f^ f`ɆQ\A3s,s{JA\۟S##?lDN_f25k8Fݯ^az"kUmٞb~:Rmq0`E˙IQ{$.qJXPtDǪ<~]&L΍=Z_e1mg )e6{(0D?*r?P5af 0prCTy۫-]")LTeɝd@ͨ>]EpʩMA+-a[Y)j X>j7?aƥd`gOT\ٽg ?_ÈȜ@^>?̺lv皎*9IbslV߈pR ?lAJ +ɹo@eW/_X;vxS哵TA xR Oi3ގ\5]}Eozhl69vs.(jrU}_& D sP?89@,R*T_t5wT^W#JkR=Y} W0#U>:<]$V@P7$UYEWu}X(&L3k#=/衺c<@3x >a3$@@ld". j9 H3>Cj~>8G!kXشs%n}M qqcydV0}kM]s4W9:5Z| 솧)פH;^d<^>]ɐ?/ՏVruq[lTR,echMۛ qtz־S6-IP&UV랃iFbѷ~Jyӏ-HM/D6ϡks,B7d ^WAρ,QLaKA$' w*U-ւ#ֱhS)!Q(*ΰ~Uw՝`-SS9Os*$?"mcr6Fm-L9f~?xƙi; bjEH6'ߝ(v}:Gn/ouP)s T ^04GC33k;\ _g +>t)ΜɕS+gAT&0FOW?%q`!GI;u'{fxɿ%DFJHP<ߞP:C|)bD),53"[XC(-8 |~2?OlR쁫J' \}?Qh9 >d˿ԽvzX;EOSrD-na4jm/K3WvNwJޡlS_Ï@~r[G2(F|]Ӆ>Ɍů&)η;&Ñnt.#@p`rB©7Vem<~C*Y{SPOo>-ZяB<9]]}A] R ^YwA>?#SMe;Ci Ыz_T_$,.K=RHcɢ;eiʀ?8@`4LvDD0F kbAet5&'aJ>Go i>-7^tҔe/yE;z|ifbUA.! 0]m2ǤI?'/ľ(RV\pFC~quIq7g O` 1W@)M4JS]|ڱ ܃ 2%бruw.:+MsǑ:*WFSb:tַS9RwfaE6>Dco +|^Y[j:opB4eINWpǽ5@YW:1͛hLcD!/]H53?eӯIO.i@u\XY6%FϽ^DW*VJV]2&O҈Ύa0<8qN.{Q %~//ddu$o08\n|Gc?*p/$[') R^;oԓ2.tIЙ:)!Þkvl=]W;2Ik(@NG"W3od#nk\ o q-,I耐 א\26CN)voH 7"-m V3[*۽}{H>N52~Jdy:'vek;ׄ'{1̫{W}w%Huɹ<ŭnRfN*\- 4OVVL|Ĺ %~Z<ΪG&ZJ gC[EX`J苃X3pсt\rLz:BXMĢM$rV5?٠VE1U9fl|5hȷsKv1Ϳ!5Ln`+ Q?3|Ms2I(?er,=IC!iz bLê_w׋!y",g~cG)z6;ZZÓ;o/q~NY"}ƊuDcg= cNqRz_3x0],emJyq)L57I\(! r^ ]G: 4,{>2rZڞ`Pd;0U20a_GQ,ˑȱ)ER\b {4UFF$;UJOjPOt l{Kd,=bZë5׺y~a$W;写.=r8'?3鹤ПZ(=-Tt/ǐ_TM*a%k^ʟ[P=#zP{+͢FOr^?u/wUv ڂR6n1LkZֳ2tRX$bp 7"H,/@"v+X 1qv "=\ 7`AN͂ek=[WmDna15F-!4p;\e`7b -|kx7<Mrf. 7^Xʻe8@w,Y,M{K _y_7},VuQWlJaFrOºedrc?NssJkKܥ^.LOE9zqpH~01RE, ^My4Y\|8:_'S5Q&(-Z3rbuF;WFNh$)El![V"k-J8ڣbvfx'[}19:CVfzz%r)4H^ӘLm d#i֭pl"bXτVz2k{ Y ysߤU eZ6T]AؼǬB&:axdAT'/4CDqa!ЦcpmYICly=ZB)i)Q" 'ZaS67^qG33*hm iʃ"ݖ"=i?y nG=v8#<{WxBxCgJ1 nx-^-|V\2Ilhd3xலt`Ke0I:C.SFCF1a Dx4"[dyuLT8GRsJWȜrTiZVd6sp&P4i{w 7))s1UՇ^k{@ՃK+ (r_ɧ_ڥ"`4g8(g<BX:ih#+K$Oi$94{ aFBUg um'C ȳ{4BdV NX;FoS}<ºT^ul]$ea0Gj{\+ޖv NK֕e_P-\&_t2J0= :Ң$$7%Њ"Xg[^ܓH;bϟ?~/T.I}1n u%WNmM#H;Jlc'sg(]Jkq&j& 6;"}-˲ /J Aݎ_a?^م0vQµLPz*iJNio:]4}Frވ3٭\RED,dhv* a 7FDځ֭>o K P9=Oa0X& "2ЌY~8W܌oC| po_f_}# 7ǀ34>4ohdUɝij똩#1ҢYϨW*OפgwL,=ԣ'F?_+[Y֤jɺ3ѥ.E.*W8mS ]p%[uec*1::h~X3K+&)jV$NwijV 3nԡhM?M-W|9F ڕZ@_ \0]YA<-i⹞+:4 qs}VS7іjg%~8XJVq=W\~{Y>OY k26T TO1:CW-!?>ޒјMMG'f}?}[|fY H?볈M! Pk7DZm$vbO94\(G,2.Wq/fBLƾ1QaG ~2𞟋ʷY,o 8-#0mw(("ϖ ʰ9!m@ėtj^N(=KlPڞ:N>m_6Sr}M%耑`ψ_B0( 4FψSQS@"Fxv2VjY,' sܓ0?HZR)#*5>zS6dw/8kmAr*;{JK>jx2o) ]B(!)l͢%먪 7[ puܭ[*;߷n|H\C$D_I=GsgVItn4y܆RGg\(6krkZ Ӭ/Y,G?)v;Fi/>xo\UrN[tT="{1 :rxCeH"&iHDsa0Ĵ. $ $Ű|iE{5ҷi C|)aezl'^L0[ődvM9fyvL8 9zQ 5{1UUJ 7 .oAA )9sWmE]Y3pGsMOÊjw`m%"d~*zBPXn`&M“#㵿lyYBK_WAw/OyW!8q:d]\~7Z~"Ԥ}岄(kt%1ZI8wb@R&;57r'1U?,ߡ͌)W{>O&ԩk-d6:JmNjrT-mvE:wp[.#xqhsL~:@vR,ג7ͅX\xn -(|Bu=AZE~kdnVλS>~Ń\m.իqUWڏpר9 B/l.m'\Cq]FJ{-`|J|R j<=߱Y#R+;č4 m^"'Ё+PiۋO-W֤H,Y,r#E,Tr%5%vaF$,bs:ÅG>ZdA4rL.f' {G!Yhv:nu8nBx1P2)db BhK.c9e"?NP&6jzrfy%1tџ*_sTRI|W\XQ0O?G[JSy" e@+D2hփ9*E,Y[<۹Ż|XD3}QJ t7rOaUOju4z%?9pb fo{1kaaΙY6q;9m Eȭߙ=oߒިj%෺C-ԓ'oebEaLz.1#ssZE&W_gUB{ZS~ `6anHx"NrA]ė`4Ot5IJÒ\TReMC@!3lng}ZBE}^$8O槝: f;ؑ@ͼDdqj0#Hi=wZX&`mX-7_tȞntW /lOn)6(jYzo2=y>55GH2cD?Wv~LTѴp}'?Idv@LlMD="ΡV>Vj[,ˆU^SF96hѫk%((k1n8.8O#p"T{A?{j5HH9){aW 7۶ǚI_@|fyM@׏&Uhq[afl&1Δ*OlaZ"2T s^nGidr¿ 6%|gN;R }FKDt~/m?z&{#l[fZ?g+)fmNr<.\y |X๢tK)̃a3vyIwgSF C>y{(OϜ+W#"g!bS}```GJR&ݟ!2^Tߘ{y+5h7sxͭ%fAG?>Euxn҄BZb;~ > 4;>X1\N%,.dĿߑd^ H:lRzS^QE! tK 68;)_M+X%cRV5 ^BB1f$s2Qa8T.e.f< %^&k ]5?/ޞ97ى9K"%G_N&UPU2R]bFl[^?B+bǐ&_9Sd>{҉i'0 RŶ͊OO2x GJPhU%Ӂcá}2NwZ&^Lу +6w;Y:0.RKjt [N1chqEs0R',1! :ϑځݧ_mRhj #)KH?A"΅G&^84J]7RYv a|bp5sp|O"@@$kǼlrs#pOQK(+Qge Ng]ʘH {@.?mF2?dOz͢$`ʅmT7'ta^yG#3Uf#d-$:{ݒ1odA̫ K4 EasH< L|h ƛB i%1`ȩNǾ<k2Ml8>+mߢW4$S}FN-uV0v-s0kx|O&2QEQg6$^,b-<ݩ+6[Άd}!fΆwj1##8!*%S82JąM8%d ّHyx/F曟zt# %ǝvǨ= e -\ry,aѫ J.z;\CC:)z FO m~c_i&0kTh2Uwzab4a ZmA/Sn>&ĭf2P.AnR4hzpw1eow!EֺDžMy))B9+ ]P^*&m{t=Po3}o "D*O *n H'oρEΘR27}#u<,aMN#+mNG`mp(=s8Hj$SӬpZd&܀;3ǟLdž:W.ODȐ(vʺBD~$/ @HNk\΍Zm&&SvHn%aE>$r&d]1a~Ѻ)$ <^pv(nhDH\@RXXgd !Qj`4}-$ПToQ"Fz@nXf3"j8/k }Z1ꦿLv D rɪ|mXL\3BM_8]!+ο:}W w|obxH.c>0T F+T~,wg/e" AS ZRy~8ɒ>vvA;Z7)oъݣSV־^8ӭ(AG5R[tykG<F:9ch`|h L &LpNBr։ aM.̇4˙|ŕ ЄsZv*&UBHX'Laj>PgƽFw T7W= 2J;#,eqRt56k~W6>Uzs/k lcAѾڥJ: $j--e|T?a!I!(ݤ&&ymMQeJ5Έl@ F (w E-YuPjiQ8bN!tlДGk%8^2cyк XIEfR/RD8`2lRUkvϕ=NɻY6kfX/ql džv|gњB`P^ST;|94{x-4m\S"y( D䯈j.oYwdl;shBRԼr !02TI~7uɦN()-NneZdn}Gñb xT;E^t\pճ.D| صx!U7>ٱsg5y0+-b Ʉ~D4љ^AnjP$e@"Xw>uKetVvPL:kf&e10"{&z@dzLm18߮pmLJOX& 6 ,>>~&6j3[̸*0SCPF|ʯiOQ?P}43)93 3Y8)2v-qhv0f@{Ĕ俭=d/Jwn, r!TeSQ,X;A@ xo)Gl_.5tjh6.JMlBP(2 hxZ,W0YiM誌@-aWT ѧfbPXv)Lc8Xv\S]י 0 R{F]l{LDzB(9 "qAWeVѶiaLe:x-ޔ)ep>{'W Q^g(V, ;՟XS5ڸ/~+Eβƙqw7Wz% G=H˅z~(_0fA^jiqQ^"{:\mq!Z`쫣 '#T*œzU᫶A"lGAfA*HacvDKuaaWPzݾt?ρGWar_KQJ6d~ZB<h/)4ZF޼&fU4 1Ƹ%&~5$?xT߾sX1Z 1 kt=9rJ}X,iQxO 9Dmi@Lf\$$6(Ms^1odJ~dQTTW ΀/V3B wIVp7Lݯ}bg,FjszxHifăߎqEt>]o-F8E7}іU٤Gb³4 $ 9bC]-5RHGZΝD+C*$n?}+Hd!Y) \qrWc!'=1X R$H7=%l\ڝ]i/HR mnr{ h?J,0\zTwEOdIi_bkI#Sx= IkyII9Iog7 9 )dQ= (-" YOO8p ΧuYDxd~%m8xh29'Du2Ta Xf|io)J1a: G(qEm!bk,6435%9:)En7ݯcM,(?/|䈴}ޅ4b$ .hjOMu-<ǵcFC?M)6\#\)`$n΂XS$V=5SiP?vLCO85#wT=ڭ{v&MJ[E*pa&k[5U(EUpZwE\͛3~Q` =o)f4 Je=kS@_]Pt})CWRVu26X=*F;ʼn An]9wGC܉ςZO3w=g(ӫ?@~~!<b==^QGUJYs^'偞E" eFo!xflPqV{WItpXO1}yq{L#֯ľ cȫ"e-|LgƾR/(;?Eh‹[ -R'"]T sԭ ?buoB?2o+kIrnK %̢jXҦ4/ATxTc(32}B# +ћp҂p UIgՐiQ_x%ayZ;- +mR,"H2 z cQ!C,t@p$% I;]p``-o=4Od5CZd8̴w ] :{Fme TT>DasAy@\ I!IYJ ==pS/賌X-.:%.k"7a-{+e 7Vo .iύ|vt^h~b١ay4NQ0ct:QEs1eD4-\T1'ڥ#nu*ᐕ93K.jC; d`aՍRCXֲ,9AGې8дQvɑ< "[{?DJ }3V]XRׄnBR|ǒbR F$)FI~*xG,v+bL>bX0Td,L72`<]AA dsY5†1Xxm{`"l~َqc갉F&hjѡJ Q\\ FI[IΫ0]GQzj~+$S 勇}p8x1>)q:Fj.!yGwW>yz{$s&#Q?tWIZhכ[ڐB8PiE|TzD@r.Պ NKI0erO? CP6؞-5-6W&&\o8 ơ:EwC*. *~BI\pg#= krY&qn a?*w[?!辑<&,`zx:G gKt@y-8SijW -Le7$^˛ .D#ƾy(>TZkhp㰊L/'\'d]@~ςhgzmFMU)nv o`rooamqYqT_jTENP#]#_m0diYIxC HIcy\*2ȍUM^(L gG'~ M Dd{*77)~(.2eݭ f2CO~ry',;~ Ryhq@![M"J++{c*Y+Á-FMU6Hֆt7. mD)7}].NF"p֤o sb,SB R-NYsОd@>GvFJvW63;C0!uAV(o+ B=KW)A!®nm/NĥC)q6d?((Vxym)OJLESg .tiXQcn~z~ɵgX\\ ssG;q},1b;IPBWJ$N%^8tZ*vQ\]IO/V{mfDJ^5~!kuqP)fr3{E0> .Gٳ&>aИ׈sh^Z"p^!WD_a E#v8 5@/A2iLTGwi`Z {5AT9] ^*iitQd?8ѧ+Ip(]RXZ5mɺ>yxc6WwHq?4\H, kj*lUt\v%Kɫjwo2CL0TD#"tE4S ש=tqCҢTD깶NA+.eۓF[7˥Jpq:om0gy'b#@ W^p~qW!<ą[yxH7p4a;MJՠ1oVbƌ_v jD~ī$NdO:pjOETd@MQnqzBʨ]_%1G0I&5 'rgqItenCEvk_sۓr'@j]',Q3~[Ђ 2;]|2Pa~m8B0HdXoN]x =v[ :|J\ yئ;RX:7TlWaR<| eUoH =,c0X>8z&O~UgL6v)S6D> afQS 8(~jK"cQc1_ ZY`X0Yo\!bjXж='4dr;5ZNonb!SCJ'mwI[[xo>;6͓ ;U*T7@')JGIІy›MO,'O|̬g'am#옣1Az/^cB%2o^e=xw9.]bLb+Rtጲ$D'Іb~ t&Jxb#Ȏgǧ&@2)Rf"Džͣ[bjX?8VTq_<*{1E/qLf:HbU 0*Ɯ77e ΃ى}]}<"{ptF#ՓG)ɓZN; )NsaA{'Cm5;65B$Deñ-\1wL"|hyk A1clPXe VȆe7U ch [[! %>{җ'b&v7 }6` YEлY<@GA(D. GĊ:>OzZ8^W>\ŧ\')@']1Nk _82E)nXbhT6peSgY)=SK Pό$+-S >GUw:-x/u7=H9O&+9'H1lVT`' ?1 诽I?k7$Te8y~IQ@ pusr,P͔,aol?؟~! ׉:92z:iݻߒ_+nn&C 4C 8%͒5-46".-:o<@-!-tEث4uFb=cV^U_Or gn4Wy&ݶm5EZ5 [sX>ՂFյ>+_Y3}Nxkv݅9tæӶ抿;8&1} ]; mr6Jdl$E*jlVeD bMp60|0}l}3f4xq!-Kf#@ΔE$T&((O6 /*Fb%u>dG1EWK3fP[[ҟy Xޔ#-_3uyҟͽVb #[X#wKnAt+ &0X'S:d9W,bB-_ g^ {iP>fDs#t3{/r=ruW'Fi7WtKw i}3A`VK%EEM$U2=.INqO(n.UO`q2t@-BUs~- 䦦Q`=I_zQ.dVW;}_MYQ hJU*sߏN䡶oueDJ G]E<_vOVnÿ('3%zQ!]\R kqbL񓳝 gHejb# ͡ZBHN;<'m0Eyvni{d [I쓚'^k;KɞQڋ aM{S1DqK*+ M%dgt}{Cv@Eeu! -Uf>P,t@_op8sDŽ=k uƝ:<~nߐ e @e&2uDy| k %af\alCQS P9w[oJ ²zqeW,AVCO"+¬# WւFBBmLVTS28@l2Pf7*蔻G7 ޞ֩Ȥ4ϣ_H${V^o9wPT.a]xFYZ xcyL`.W. /AaruQnI<%V/lCAm+|W"jr{)@ Emյ10JfT&YF0p6ioi,׿Nui;'$!f?C;ڊ+>]?Οnfb;h^皿T(Y)xh&EpBҢ9KPG'Y_wF)Y?%NE%x w@ɻzqPx{Ŧa7ʩ~m8Jb%.-Q{^HnFx" )0#̲%^=3ӵy3$7VWZڙL SZ8$Oq@1#m 6͌0Ϧ×9PFyVؔ*; S 4Q9U OVML84g?I}d@kHlOuhm3Mu?W;>AJk#p?9A8~ DS]Zn"{>lYu 3RAUG%9~zbL3siMP1I7/ DWr.WX~3;˧U!ěXwZd&wݳ)T yw _P#.߫v(JYgAN[}*A?@]j]Xrk"I2VG̢T:|TzvӈhٌţοUaeg^+4nΕImtJs`hk=~ÒJF:Jtu$$|N%i Br> nKV\J(˂2R+9߸=jx{!KdvRxݓ tWBP-tWFh Uw8Ɏ, 5[DՏeac۠B1p~tNS/eH LVn/ GsRHixM01_.d7u6RqfS PA PvbhT8Jn/콸J18EN&Tg*o+ ֎ x0IZ0 ͘8RWzmQfc߉a֞'ȈIj~bt1e.^wlHޖzK:f){x])[H^d.n) !#1XM YbK 瓮.@ VqN࠶էmB@cT> k#9-BL"bF&@hmaB6i%;u{v5K]4lnrsfwf3c_֐M8Na>g|e1ӂs{ BƆB殹! uB&EN{\~˘|x|~bْ8EĜMXĤ*{6JW%'Z) 0s|9O|$+*e - [5 J? \\?ݝcѭa{@/*]{F NuΘbݿqn)'Ƅ|)ʴ@_`L!)AZ~n׬h< e#A]`n -=@HtJ8IX7U惽OD`n30pSNg@?oaDܦU,kJeǸ0 f)Œ Gx4>G6bA\JNb O1X)A9ð#ȥB~h)͕5{R5bRn~ [,3@fqIeɲ? W*p?DR\`ɻC|W6'7:²iYo)O?ӌrqԞDIaKu{n5nN>u,[h Ξ0lqp&R܀" Whm +ąժiWf}ֿoDa3O8pإ:׃z)vAC390hA0 GM`u.rCzDP,EY@NEB:Xuah#Ă zř %x/tLyVoL;,^ƐV=7x잘]?pukgv%-A.W6*f8٦ :Ԫn)EzTлQ ynu :5mvcǀ?)&N^]DWT5#Rt#S==Re~ݱ,Fc<1f3e> 0 m4Uc CZZ晧Nuk߃[D*5Ȅ2|Ʋ.Zzd%o9":7*5ke&=Q)"h}J`I(SLۀS> :̜, @v)Ta x&+滧(6ـ=7F]Y\@C©~=3X੏Jqj=mOF!9U1e>Y{f 6[4WSPS\x4WjhRJ HÂb뾈.&/ě3/i[OCOo KuX4f汭w#٦n%C8>X0؂:^;k^;)fأ_Xf0"qyߋ<vb_ ͒rbw`?LzBWdgy:iɊ_Bd7wvKBgw-^4mtqaz!,7Su.]MĢH*83$wՃPEi8|iOìd@v+,#OndeA팶gI? 44v,?tʺRJQ%WYQgptū`2 0zHxji2'ӎvc7MP]4tox۽4R}SݰLp(;bt =,;"mz* \R})$gޫv'lAiFks{_!H&t$wPMl"roR ;"H95Inݦ1Ǯ:.Ա#`U*imV u2Z %$h\46Q QblY] Ї*];UM"g6 'X1/q00^:m"NPVȠc|}GY՝w)HR.;j* x33;@`RVը4Q; w z8(^Ieou-ΰ]}Sshv|p~t@F~w֒FD8D|c)tգZjd i@M\8axԂ"ʤw[.'XAQ- Qt[2؛ıZ Z'#G .A2 Ӆ-7X6M?̅ňM$|qTzzT$+)U mY*pb|ǠQWZG%8 |j SO]һ*K(䓾8C2j򖩞@3bE#6G2畺ubLj,X`wzb=h.y;"!_zȂFvHmn) F:*L3C%\L:$bK#f!2*EKIY%9R"SP+MJ##?Mj~0U!>aNk]0q]T6k[w,:g(ֆ&!Wi_*g<+;uW=^j){DʰL&k%= :BX҉XAL?mk{UI2تr:,|(#/h𿙲M3ln+n~gƄø.K.76m-I|EcvhWIiE&ӳ%^:hbNJ"jŁc|DUt^9 2tBSHD` I)':QFh?#zo72d+Y0;Gִ%Ka}x%TaL&Y(4ܣ _6=3`@i1ٓ@9)Ka<'?`Cki_G R2"EUٷJI<>7`q<#i EYqVOySHpxic_wƴ;)"2m+PIZ1ed f!DxwT?&~ރ+%R9 IjaQCo{}i]Ӈ Gkw%n|8&^" 8\o$> "hz.GoH!kT-@U3I rFOK ^頲H^B>9^ļCbv' Q>{Ć10l(bBUppBd.>uq3@˰8"| #+Jj,""0eM4]կAgPy~T"nYMr?sܼe'x\fI+fzUH&E[MVFْ4i\FgJIՓ^t"4bCp,nRTa}kt,bFgwTŀOs90 `^a<5,i}qA6ѱCJXTE)Qc\[# t= P~hN&zP5KO bE ƱP[ņеb7\CF.>)wǙ<*+f80Ul͸O! k>Rv]$A:\sk|(W8od%RgC*9i b'cb/K&ӂ|x2<|bc p%GͫZ8-EX7cʤN)јBUM-ک"ވeDfDm >JJҗQGlC ҫEN3>Q,Y>fٻU6k Liy<D#r)xm*5X.N8H G!2pRCYL l+W·7갺[Zh1a 3K-xbŝ6"Z%j`ųf}HŐG ]s'5/aMs>%~/L0\+|B~ l^. թk^D ~Q%83bӁOE=En8v>>yH0[ҷf&]qNx /d193FlxQe+tk"$+|~pF'".m_A9z$y ZzѶ@Vnߦ-ZPg"o" }")&h\0ԀCNVXepsH1g˜$L*}REZ]vZ]l)V^-4zן%OlH2 ,7>G?Z<ʆ lR]74ro /ÜI}{k+_Ty͚ 2}5))hcM}Sh{4Рm0grEorȂz_$2Mݲ7 MSKq{`+jz 1L$m's<զbx`EƎ]tEdȗ Ń|Za~uu"0+B7ܧ6$I:o^|Bҫ´LQq5. :K?P ~g^:vr#+M*qv?B2/eRcE}q{*uD\-L٣>y PwfR)~_<ftEa.ɟқgIv{s8TRA|iroAUr]!2?9ī/o!J]cʘ-Ks$6V0;泚KYP(فD?lf8XO;0[zK"qߜl}e:s=86=!CUM|iJxs=_/~դ/$_un  kWx DiI:+?"ZU2}QkzZ)0m%Ǹ='+W> I$D0[»QsNv,LHvY˙FTO-[_:^fUlKj0B`r?bLufo}*$`E&ܿe/yVqKzZ俱9nWCk\ki:%@Vv>Qa<`ۥ$sZB ?  ]9Ps!h\M1{]jy92ĈҒ<ގH$_ DF:&ch./PNOs}{aRzzhvR-U\?Z?H]Rl J R+IXηl˨cB<аV|AUX9{z7aƟ~j/di}E@5ch~(N&m XNT'm21#m1BLSh8Cs׮dy`mcg-~دmLn 32^"ooXۻ_YK|OFIW>#q5]~K`!)duPi>R 0$ 3^[ ΙL@呁W3J\d۾!h1 l:O-r7W8RqW+}[f٧/,u^g dY8""Rm mC}0"_U/紈S|7H❙ foJܘ#,<,ZFAH]T7O(\hiz<" }8q6`ދ3wXt¼-0L؊F1nIkFbh%FDzGI[T֯Gw|+ tе:U%%kےeq a=ە̸v_<ڈIȨw9]ۿ , t<;iE4MGΝHtprkuj:?,xJ"p@k- "xiE>"so83t:cs1Ʃbז ϫCk CoDsM>J5oϏU:)l},Jad!=J\C!Rc튊3oߝILx4RwO ÈL˾HGڸ%fu8aꝚO@)q"έ\K撩!ŗ"H3E-?ZL;9^r`j[7mD0,N\evGAT2dR~I?܂PӼP]lK3-vހ7d3?Fᜮ'c%XeYS`<Kŗ&җ8S_y {"URq0v?Ek9W"Af@sI/*9l>ΫNb3FS9iGoWZEu ?}ZJ%# >鎐ǧ\P1D&J FU_͒%3^ E`k!iq˙yGj|mBr` RbTMmBKu0  H 'G%塵`@oX9bs_oC)'Li`~uY+{He' 8G2Ȍļwh7z8Z/zg|yo luW2^~8vguͲ;lmX et '.~as,I#O&78HxDxf9FcЮ8UN9l|':M'᜴h̰[c( %: `6o`!ԎI1cV횓,Uyx ⏽vjsdjߓa&b؍:"WsZ*0n.PY;ey $ޡ*Q;ǫb!uБ m,uMQ~, 8CP1:H-լ자nM\B1$7rnTgz]f *)c-q }65?TWR<1(IfB3!Fo۽Q"Em攽- %G +X77E$@W: +)y%Da BONoe_5(O:"M0A9><춣-v;p *RxkJOM:b ۏD93o\w6.=3jK 6CZ\ Br {WE0k8O<>jv ę93l/ӽd;Z vQۣ;Yhԥ>[i({_"I-MVSeAFy|jw9z ~͉6-rn[on%c$a$]ue\&0}˜2ft/*aaKL$Fѯ,R8wg\wD.B M`́=j೻mߕ-}">~VJevyY5/OX5"(u0zk duKMP (qp7) lzDžiMdiNj{=bWR?[[ BrvnkMxfoTk tp&/Vt%Bř#MGAd#t&:>جbo~FXl/Ѐ0MU<=h/xQ'p ~#VcJ@0*g։K ۠ Qо86ՎFx.i~pW}1181aN)Lސ3\?X?ܺ WsX}24 ؆?x ?[NU1SQUSb$ӻ<^V~90|p0]3$ŃRb 0>!cSFmãWEKFepP0t7?d oZټ~F?:R0+cZg/^`ǎ_O !(iBlCgԜԔk#j/ \U+m0Vt=SZjf7$%E?79QQ1b;uyO U"QfjYR&Dh%8k`萴yBlꝆz=Hp4W}VʼKY=[ \z>B{m F|u_rW%,*о%KhHG:Z<9Ѐ# N*tsTd FE舋[䡬8 IcA9Qm̎K|Ηy%YM(W},*:?9Y olj Kx! o~Y{2aپ/EMWRI@GI.4%"4D% htE%g&'5MυS19Sv!O}<*W=& wYcvR`6wB(,ah5э+4c\>w6,lYQ<^>U#L=Ggs %-rBi]ʅX**$f"'a6PWU,G[L”=VGWW$i90B>βtm't7pfP'z7qU8fo-ju;}hOW=' 8Q_@NtjNlD| C9{= d&Li"RFeru,mΑOL1.W c.=LxFԾ v n*d?<ƜKģᶫR]Ga~pnh%k,o&| 2C_<^lAi:/(J|}Yr?C/8!'W}7`90. U-f XLU>cowcaD:;yDF57K8AHzۜMykzumj_.6#HZa(koһf|4_\6{kZBG )\ʶl?mUl[Y;덃i΋qWLag+z2*# XpgrjWe- If7vn@E79x)o99`yG7)]v-xp]eIvDA^YEY3ʪ+ nTi+d# p:Cɿي7a_V`0pjVdаx L.AGBQ, r^ỪC1麏1jZ羧S8NP $f_/ڿ{uCBP_ Q0-?ͧUfA"xě`.aZXfl5]e ?Rl/I}Fz/CrQe4'jW2@q!F+h(P`'K观%ʲ'9&tL)XA}LM8D7~u?톄wH k3 <|Mi}̎h͖GsbD8Joqy]Hc\ TD𝮲LԮDfdVȚ p*ܴE8%gͬ‹Xc ݌ؐMmSh'][RZ>#+֯&"w@t}"m#U{=vuA"("M.VN*Xm1g4d]=Z#3^e>h&50{xҖEo%B#eotG7޼GxvVQ{-vv+mtYY0(D)[^WvXqr- ՔXI3Z; w/&, jSpUc]BEoz9sCZ\gc~YfSbTԚuL}8j[Sr>0#,j+٣ug(_%cHq5\)mB̸#z`p)E1tkg}R ?`S~ \1h廞Haڄi-Ҟt[GUW `xC'`& {? s9o%3bT]޹m K`2xjyDPqMBfZԋBҗ7h xQ Á)}EM3ɰ+`(m4'JOU1 h!BƟDHshqh G郎H`=~W6ƍO߉/Mܐt=BHLT[= .;%IZ2}Vj8yYU&뮃z@K6WVWߎvw*;\#A@[Ko&Π')cjKPveo-ݏ1ovn$w=@ |R "s-Gm8Yc 1/rCt1 Y  .A S3:[jXI 3|BHnș0>\@rhwz#81l>>MLk$~tp/ vŅn=W**;p%>5PS=YhY3<4@ /}_|p_@$*O~n?(H?(5t:;6>ؙb[  vF8i@=@W T: ;DcpfɣCW~֍*lY$t%9p*3Spv(.N>DM[wtGj/I2 ejȣFo=#+AGgqo6(9yҩD9Z9һ9?קu/otǏ(խ#|Y,K2 3L"ض%6 `vRؼsIM?oVY+)0 I個wgȻ\Cn2fQp!c!'.' I;|Xd( ESQ,h1;-Hhس \,i3WzT ޟ!̃|Qg_H%y v7ýZ0pIږϿ9ڃ)5: ཀྵKU=k<б׉_wa! '{8Y@ vpuMmy#smH&yD,-'\@%?=(yF&'z:׃~:G+IAi@%sn tc#g_{ fڽ{tB<$9^EfϼUVO=:[H'UJd3YX^bG&vm<^k'ziJ͐b (n7 ʹVD߉aK"?œAr)RgŌ5U܉(C+.526MYgiYK.{<Q/.u0ZHx)%c'? MG2XD+¾f%ƹA² o6BEMS^l,?I(_OYE (~Ǐ?=tm\ҾrQD_߱~}̦;Br4fe_=̼}5Ѽr{, D$(};cݨMBAbjk*NrT9HÅQnt)1v )uglC6ۼX7FG#J0o速V2JFF#㱬B(@$lnhw$dHj¥-3ي*]9=b b/ésW唜9 F53 RLkJW)MYn$M"v"*ӁZf0!Bssm(9a1ZgAq#AD_;זj1iؕ {N﨤vw)>.bQⒺM)|g Un]9*PjiϢk7Qzc٫oheύ bA6y4r}HYXAm`t5pRV[M72&a#}"$}!=k tObد&Lg Jf%4dC% m{yU񖮢 _4D'ԞοZV.4HbUus5&i nG[T5 @S$!a\q\w WvzRE; "wrv^P#g!NEhcj+ 7H+:Q8iC ˊ,R1Dq9x޲3o/Bd`\d'm\; f ηRU.j6.`Ո]py0(B^oȒv&<+J;Oκbg^(&3^ ~p%\E]JFꝶ`5r{%f&*BR#KSpPN!=A56]az¯<+Eo>NɊfR`|N9ItS3Cig!{YhM ^EbLתS%,b.w}emQkkzJxo}x~a ['\:?~A@ 6SAM޸m)`[ E1z㼬$B`3T@LΗU\ѽЪʕv U?8)L *!v! En0 uGfOS*%+֥>3 _DY>{y[MDƱ6T]M1²1@2@eQH= 8wFQ4e/=r/\(U8j+{Fh-lny ,J i4&9)MZ4j@$|u VDP*cwƢZ >;y $d urRs`MeJё'3NyPjx;&߷EMn(&%J^yUq bw 귛pH%GXY3W: r,j ^7$} SZ6 Ot[w5T,n o>w|z->I^}I;oP)R rZ.ǃ5ímXml*MϢKW/e97aK02fTth Jv:y?kå60 )9=!w1 >/"K])!a"Y̵JqWR? Ø+.8!j97额!Oaw::IѳD+O>`&e[si#՟x~LIe{F- _l[n+q: #vI{b"ضq2(Q/Ku?P֜ Fqr;kky,K4" bs=R X Ce>P{@']eN~"@< TlU2[TR+ˤlH۠'^?Dv_/CNzYν:c;-yƑk'ӥWyeJS ̱X~xD8|@^+kS?pP\ I:&9˺y_p*։iL zܮ UXxSktә#uEأB|8~>D@̥Ȑ0.#?b?Ga 5+,)WB9p̀ eᮎzRme-)e6ϞWr8$"̆հNźPX'̧i & ^*ݨ^Wody|CS 脠R+5wGjp0A7n0EV}qN4yq0Gփ?h+Mr͞g& ?`WO$bZlw1?F-ow[bÇ8; w]v"`"*9n 5bNLB?W1f֫3Jʴ-88>a],`~׌9qmypY4?EPTzKS].%cY԰FaΰtIR羆*]ŷe@tvCQ8޻i0*ᅝ6TVry? 6_O_<LQ67MĹz,(UNqIOپ05 YM,k"鈇ZsבR7ty/MqaObhQ]F¬T;x|Y~К +{֒9n4fU3v,Jd?ِ߫XUz'zd<w[m n[]gkc8q2Q9) :iq zƥpOeqxrc$^qeɂxUEσa|sYF :~LAv3{X,Y8k ~^𵺩t=Z  +5itCzOxmLֵMqd PWtx+ a Rbl]1! A߲T\AkPAN}EzZ9]t @ټyQ$^3|.[߭UdIA)2p`L!;'H?9.~+bC.O2օԑ].Uõy~1(#4.M} OɶoX @~g29(AKa:G rMHX:[:] 3|-Գ#P{\G} נ9&I0 @WO݇T I^@|u=âFxO#asbJv#J2[Q@ =9fHwƧrrkCb{REzKL i|Z~~hKV)N˞pfb4Hّ%O4 Ӆ{BXx\:&=_Vz\>l< ߟy!; f`Xe!qt]%/pcGo^wj;吉U:9gՊZg)67ʥ$_b};WZ2BkoC| PS1`13 u`ER7Oq3z_NGԲzD+ CIadϙ}vъ3wr}uS _E^pʅco&{+W$0l; u@/l rp۩1|P*  bEիoo祙7JpjG}T1X=9”TA.,(amI"rapWyZ%],r5p͓琨zSQ;QT7D^b^L7Bܙf\咦̺jʡ;B^>2ƒ7?2o T[w/dM8Щ+-ώvlpIt{ ohrO3ha\:X$eZmϨ#nL~%הV'(@+IJ2PI$ 2ŬXcXZRFy3>R8y'D^ c̈́kꔄKbl4Q[e/V_*@WS̻c>aǮYR-o㨄(N,TibDsEτ2F+>~}Z@O/TV`;u)'#UEZ|"EWUؘe4](p-.xHk2v߸{I`$#5y(1U=/{P i|vR$ 56=|2`-CR̦ɢ_CJo׋" 6Eߥ] i%(-`?a$?|C\PTn]$`jy $.в0(xLc3觏>*4T?)$u0aSn1i7 hQG#OBLQLGGTvi P?z.VGcmqy.]JwwҠ\>N2B2MbInhxkQ [Vi-l2iJ- ;QK}bm'anL^͔E[9v5Vr\.-ޚj2IB2{8F?wHPO*uxmKyMjX'd30˨JEs86~,>?fVҶ٦VA {O{P#)Nt +~5NUCy/͌˨xL2`8T `W<l >>UӎNq(q+nnujv1R(<ֹUe{^%sw-PTgo g>,aS+a={&77?xnLi嫱 :`޾.=)QehoJxX`JY%KXEc\;{R0-tGŢ، ޝN#wp#zpXv><rT, ,6_&n&}JEIpye:џ6|TF>2#824=GRfL qse$ 1y0| (I sF a7Wc@8*22#|Ì9LwE&qn:iJs/@wS"@fug)fQ@(=k>MM6b :Bu:O7fENnpw[&'!99]/IC-*#zDjjm$Չr!+e)}wH}eus|iaQcu.S+ª#8^pO12ƾ*俚\ry&Rm(e{TUՂѴuH=GMWgufEuFhyJ!~܇,1bϸYG'^g3;vL"8\)I|HgƝ#; ։Ph59(gXݡ!H9QOb߆fn|t|+'Z)`ݕƩC-D7أ ޚ+mxthJA vnŽRDB]PR?:$Ff7*cے7o!pa8  aWaUA qRʉ~)5O]tg/ajPA*bT4O.X:yR ÖtԮBtx38LXCxrXAtDۚ=RkBmbMĸaK);9 "@mWӗD6=Jx6z+˸+li#1£ZJ"fl:AAiOAQ &h^Qbb¹Xva41]:'u>⸴m)Zcܤ\ŀe-O̒H{qc5oY ֖2J#?PqcUե.)c'~J.5^F3/q(9^5Ez| 3.D8_Ͼ3Cnϕ_ %F6XϡVNG)g4+8ł/XYFdLw(8Cw>0w]c<Kf)RWYz3KAos˲gmcL@AUKd12=(z:)GuԊa%"@TS8;?>pg KE×%eB4#.Cy8CfU`#QHt#}>+U}YDq}9-!&nOWpl,~͜+ }8?|.&Rei"b9bSi|JE8Hv챂݋th&iʯ~x^nCTȗxfS5d;I :M 6d &SءL)RsrYxor$5ݎΠ:UhJB"&9'7nG8d \k)a,ATA󴘳4BaDH845kk6p/N1L"$da2k%.v,Qpk2qU d~>YvX+ʦfg XN"< aqFq H8M 9F58nPw'_.۝IyB; Ь %wm,3 $6C*Aҝm7Gzマ7$<6 r]vѡKt,aOXȿB ; ѮÚAe272뇂Iߋ1Ye(nt73 $(f=3 1g7PN~o+ E`l]]@$Q rDwy(^5w;8e{Q "*֑DTnZJ*bٍ4s~b=_$vryA'aM/{" rAcTʈ~hW]ηDXsp+[QsJ5N/h<+ך] ,PpOL4aeЀYQgETCp> :l\5K¥7R_2I%? WH^#}M*2v+B{#>>ȬhΧHWghPgyEٕ@M$\k#dos5~סACw3{3ag "|W#`C4F*q 2 RK+?rK_g녉'VrC1WJNwpajQG*̪L|H^4*&CG j]Ј*1Ibj*Aֵŗ]mG;6=Go2`9/HE!)IS(~ߣ8‡/p|c}9&'P&>թ8lRWHw͞ãg*4rt1 w]XCǮi.BXH׏D h?4#yM.ô~qOo7.paY֜qe1jv= o}C)/X)U)"x{PVh4=\cP\wqE*Ug)l^/1r[SD v:+C9lЧd--H)'ӆ 9ً=jBU}|sP?h>fQ_Po;=QEi)5 YOtL6?+8_Xu{Su!j~h;droMg-E.`^JkN*IM^Rb"SYwg+z̀6Uj'|n30xgtUF^g.>'Pf`fȏT"e`eܭ W/b,^01+yV;wz݆Khw5Q/5E$ 7Гf}V)j)"*7NȂ萐Vm15}cw8p)LE+p.C^OK1.` Vhez(Et|װ|y(0T5fܱE=vI ̘ßK65G~+A$+2ho޴jJ{awu3t:ι(ZPE}te qȞ8SwcP#_œ G]ՒQU8P%R y;?_H.&fd=4?x 6PitrR˗\Ndt9{5DW9WoXlWހ7]m^ &X-r$*GŦQs\$bah"@amͥ|F26J׬Z.4 zC0]Z#mRՙ9Ya|4 ?V {@װ*'t|CFOݖlL =93]3_U6L{`"u**D&KE2^h]붯! 4lMBE oxSKbyiDBn9 U!r[wnt K9)%^Fa91ĦE X{%^*jN/@nzyBv]Awu%X'; w8D>MEn=O4>+%OnLW~\줣juR$4[ ny$.aU:riw dj4BQju l"]xc,ƻHD"29ۋ<8F"\tVVud0P"멕 0ClOz Q0 yjLݵ)5Afkk»'^UzθM>cI1x[kvOÞ?}"z5d64 xeQ; hPߑb\^iŵڅib\%9'$k& _&1ZA`I%F#9ٵA9!f'p'x"⺠m C ܡ=\_ kܵ4[wQ7?@gOlO1g''DM# ;/#/&m5$%.lBD3brY&M]9^G/ޒT%#)L9 T 2J19t*|~\H8_ N:ncʠ\d޾-ej> |`hRgPUgEїWCۧ\dc<KXVӧ=b,*Xpl¢Ҷnfqe>Pt'Z[d\vg/6D"?ZW7yk8 2F5=.ثNAb[Xj,ow)?3ޜhɉ'? G `Y'b]2u6X߄*]@dƓ2OڰdHc`ݔP7 `4-ۅ^^jcaC2D 2y:kBܒK $V֡#2r Ԡ%?SdF %H~3H "m 귮(s `*) Y;ѝAKz L|&qt`}B a ;^S+(s6Wo%~אl/qiӣQ*O6ZD0]U?+xȐCxykoo4Ey^;q )Pzo-|U@o8B;JPDb^$)ƭ…h=Qҵs DkYnՍgdmGiPf\lwmsF0UNxf_.rL[aG[7%Y mJq!էX $mIWbO5Z="]9p eH>9QEƃ:61 ޝsGD-Tq1B ^q_^mqW}$c Ǟy/g⡢2Mγ{aJھݣq塚bu'ziUR$nV3Dފ.Odr.َ+l~7sy57\LSHgZ֤ XucZ[rPR5LҐ4.ǖ*>1= Y\_9C|4n6glɡ>v ^CZDIR XMTeg@aP(à4 hig(@aYp4>ldl~l!0vn$J6% FE1\ZXZVurIr:(Vm+K/|@W`jI>1pPDdJHt cժUxck=(5x)Ӄ)Ek:p :tj9xVI*˻7/1(72LҒ(aFЎ-+) <ܢMZ{sb]|L00lׇ bwYoВlIo-sI 9F5\!j4J6۽B!M}-Q,Rg ćVe48`: fܢپ<9Ēչg.&ګ2Sکdi pc*$0Ӱ;sYh[t}פǡWc3Wrx[Kg "^')WI֟'np;HF(\hs[Pq\IM/xBontکLGԖ!x*"9^H27]g`|j핃~[ՎIAyLOcR39/x7,ꑇ?vq*AN{K17P絃e3P`t Fn?ȌfGZT]2UE`,#)-%f KL8}GwG.vDy_joS|Y-<7eK>(| ciikz0uvd#B1 _k6PcF 7/9S\7k>lgoKS$y>Iԇ^M.˼Z@n-,LMGU-ۘY(Qmx: -e!xPlbա^ nasbeㆲ:ǪAܭc`iFmV#00&"#tSAb21i'*£l aKubM#oX6$_X2 YeOU<&Pp\^KR(ƴXk$ $itrr~#;G,eիN-דOI Ǔ r=UMNIrt󅮠Z.'<3}"wk\E %9mt<'KHΦI7+(ӇKS)O 6g'5)wضmӺUS]RjޥBPIjf(ϘŚ|?AR솮T ๿Xف "gPN<(tδȜYrEs6OG$c sVV254ˑv.|U-RTҐJm\cl8؎1Uwc27%,OpK5I7&ŀZǾ 647q/F d)a+U6kcT@)'ʝ?c_*ꗝTf* ZfR?qcn+G9{j$E-T-@ V'P+Xc eP$/A:efΥ+G/.` R}SPp ~:49)yY$ZgX4۟:`TLu8-D+_00ˊXrI̔'z~GGMj I59eS;nP/w278΀bIQ{C_iǦl7}Þ7Z|dDM G+=/fAPDa(M9AQOREWE}w+?6\[FQ)w Jѱ1#$N8/7+Vοxfhlo֨ΩDgGJ$Zھ:S&!4;`2fhR^(@*+S,-g0k1Wm/j jȨh+Df% !5 =f=,0V3ϱvD]UG>,6&uP{ \Wy\Rn*SDXژޅtMh((/g?JUSc ۡ9 qYb'1P^Ip$:Ͽ] tQޡT?Fs4bnoM{nު'2F|a4}-Y}b2-$}C}q}@ $P֊J+} ?;GМU ~LBS~58emnô.AH Mxe[knPy(X%ΔO;hyOhLux\WCgﭓS!8pcmT=çT|K"8$7ΫӆFn5]zAn1k߿@hCu:VbRcY@0`/s]qV?뉀hY}xн>85[ jʏ. H͵:!DbMIJǙyrU%ZKvT૏Tƪno"d$Mq'?Z/=EggP%];H>JH0n hl-ٿ jWߩ8BZ'uI$v i0U ?eSj8]!l[dD䗺I&fZj7Z!/qblz~o pψ)dn:0V|5뜑=\|C6ݯ0Ԝ‹/*kۯ`sP8k$^0n(Z@*~Y[HTgQh>I^04T|dY_f.RZGrP>C CC0FkhpL.(Keƛ?I9RUP1i3G 9ń4%w 'u(ؖ+?*~B-Yrhګ[JvEwhs )VQPd+$0C=%5l2!kԔBg h\m Sq"xTZUOV ܕ{evS%kcb8g*3ٴ4=k'3meN׿m3eBFs1Te)v&R35yl$#$v0=칩O\psSisaN};06Ɵ ̕Y0CuwJp[9$N6fޘeGQ{H\+n2DTHa s" nܛ~S&nr4to,ৈsolV^X`5Lp5zez}(ӰߎhH'(s|>*5n`IqD=h'ZPTA [Tc;:9ju Po_p+AL-ΥliDP}#0޳ *dCEFGsxbIfux 30f.òf;E t%-wRk; mPiW򾵜=TԷ$3:tYH;,5QS(me!o[( B&I`# PuMc&g5:9dVUQJyg) \ Cm08ޤ0oJ4rGOGI1 ͦ'cǭmaUA0a_/3*x_`~ Fz:  gh[X#̽JM}va6-;q~xE+z/ s+ȸzqr^:aXbJQ,^P nF o5i7N"m@z$@rK±h 7E9: bm@E^cن4QJ ')l@nvʘ-!r-@ Ҟoz@: Kg_5z*IyQUfzW R=>;^=Z%uܦB>>3#c1\?L;شYofuUwm Kb'!i qn^KfXvKA6ә b ~$HQI?pףwj>ؚ):l9~I^9K]`Q 'DH:0lvr^u͐ne"g*c} /pY` -ȱ wo'>ly}Ad_ prMU}ԾyLM57V!.RE"6Yel7E _'NQ\]W̩I!\HN-&pse[W.," { gmC>p=uY<|%SfvǮca,ly 56]Dץuԛ75։ybr[Y9@˒X9  [ji q3spT??*q-!M"&Gԣ9Sma= R֥m`HGE캓a_kTޞ!.OBxⳖl2 C9kz{=ѿ(),,JZHW5N?ޮf)+C۬7P09)<^(DYlLҾN*+~ir*a! SхM]W /|NJƒ}󼐐lb;VIaZ)Mӳ\}qg(xjIњw ldLK6E]8O9Ǖ2l(8u_,\fı ?qY -Aqj13!-iB2-@%!sقA&o}:pmEJuv4b<eHŋϝhE-حhe. b*V <fteĂ:~/7ZF @pЀj(q-J=H/,PUu &S').bDLFl'v6'8g#j/?E@ ]`p',;DMG9q?+ua @tScNT)XxtX 6П @j!F2 u~㇁uLo%uFP@Jb^:,Xn6x,EӛHl|b-kxUYT>l=Pbu2lbWM@ :&T#ḅaƹ,9CLp920_iJAH_[j@ pҘ -VK@s;,юFXe%]{u+ׁ҉%~ʎ{ΐ[ikډHy{ʭL]>LPҏ󺵥z 'qS7_b*W#Fu]*닇] ? JL|}{Lӵ7F$7p ċ3DD79ra$MZCIw9%GasdRƍO'192`*rxy p.s%7 stD*>^(*2H'9#,ȺD r8b5 chu}b]aV$l@4~?ȟТeЉ O+;pgA}f(Ub9_"; zE٦ҪwJf)L^p;(5ٗip"P㵧Hk vҳbѱ{?0h $*,̀0Ҟ"҂"k.|L`i}yo9cV"uѨo34]uzfo׭D?A8JHlRNzY#|`㝅\ NBFX"2-D4zyJjMDϘAuf!֐"'Ox3H˛I ĶQM-658&vx SrtD^6MWIۚ+ C>|=yP3%PJ=:ud2AXa}[>| PZ͕xylx[{9:oe* }Dh-ѫw8li>qnMvK_QkFB@?tc(8,cFdߣ̱PUqpcĭ谟:0 LwRzgII V[`;<\T dpw;d*]Z,}7JSG&'/J2j[&C}:C? @m\k'B(m#ƦLNԪ8/P ʈ(eAmu~c[ 1ZP ۋoZoJ@ϧ}?¬Ĩ YqshX/L8s-d+H'<[,ylIA͏(FAt$l9:0a/XΈgY0s&DeXc+'ԥ?^#P3u|h@ |O`IqZRH1$Cq*Kή-lYM\WW$!| ?0%]/b9|kP-Ⳇ &յۻШW 1cWMo?P?vltבyzm&٭4/STM‹1^+eaKWBԂ|~!luj}g+чoOŸ&go8 P&Y$7ShF#Wd⊂9W. n|zv n %»ܱIzH~^j,bO>NvH٘,";x6!\sy5E^{y=R֟.tTI?MQ:ᦑ0LȑPW")(wO5s;\nC"ŕjSi`B-% m*R\Ghv".̅))Zgڶȧ_ffvZ!)sqPqǭ~aPf!ҨQB4xR'xv%;ky[W4[R;I&gHy E;ID&FxaPCL,39zxh{4ٳr([uh9Q.hn7ѡĬ͸}GME]{|{4|n_延u>< 1(a=v&g&*?3ni'a6w094UqZ(6lk^8z[c?> (,]FTڭ|m"2\<6ưG= 9Do:F[MSޓM˺Iy "T̈3-uT]Rm:eljL:4Tǜ ZJ>-"KZҍRUY~ĕ x3%-%su^c:=-Nl)%TKLzC >ax-< ze ػ%יUM,~OJjB0#›Ǔ==[U)H{iiװ/qQc#O,Ō\_tW$g ;>l!)Zf i3Gy^m{ f1sx[Eڝ,1,~k[ 'o}5%>Fa0P j&#az9Ndm&4y-Co rFއ:aYj'{۔ 1l*#kcdfzDx;.?/گYG'x9| 2j>o%Q m)ĥD^ڝJܛdL'X˛=LPB'%ZX!\\r-W6YAf"'ɉg%sLv#+Ko Aw+7evWgcts\x`XY;@x'{X`__sh }wH|</vԿ7"̌A('^W"E+0P>~d86#UXR^ DnRfOp9t =ODfXKCaQf=T2]+g=8?BnO= F`KØ 4] LuY׭7(hs<63h_p 0~D)JpK/sᶛk,&2‘Qjm7uy ap a̲k!-cӹ` ڐwM`6sOy0ALǕb֑o^/&dzLI/ow7~h6 5d)m3|vp)gګ<~: DIFYLy<iͣ{ G$%dժC _ɉ'h%J#^: VwE~d Bw. )*y3˼0I81%;탾'|7h;`в 犫м2=5Ed $kWqV(771 ]& #"e1q}O`b}]!ͬY/`$ ep]G!e*θD@Mf9qv0z }T.⃰`{(i3.NG3-U {b{ճ ~Uq6|9M#yE>-27nF Ysau[ES3BQ?f3VcvN(:-`Ǝ! %HG4k6>씦84)Z/'22$@f7XZp UJd^RB\*cCvǙ<]b[2^{eJ]CC:]7:sMkch[OLH䱃3M6W쬂ˤOҟ/l϶p*DdbΪj !y T&ClOK'jל-F!h$o#mP7Q^M$5p'h8zu~1&*9"^$;SN$A 2t[g:a)-'HR#+Jg+.]nqJi hoԨty]U)KTGЬ+$Jr#wZ4+-mюuᭁ1Tݝc '~(]cq,sI3c7ZmOQ<6'@ݾRet!WEK Um :!D 3G`~סC^^n2RC VH]Y7s[T e2p~usw{iIf<CCkr/Q'RX !Ni*l\$8b!xT)Kr FTJR&U(#%x VɜfvBwWI__Fd,Pĭ\*(c`0HWO}n 9zbl+df2pa.%fl )HΕisC]Y>m׹jEP I1@˫?Bw&f^v0Q&fKoQ;e2M=9å5syCE92T^Bt ˲syrҀ:zPTu9K*tyR˯ LkmGeit!7 xtМ `R.XZ0$O虾iQ6 *a9Mj2T+kMYy9 )lҋ[vǰ-xܑ߯L5ig OxƮm(24[ÃhMin ^%A b f)y"rӿlp">9j?ivq13Y:)d!4)@4~kO8E@9aTO-}jTUf~T8XJSilE)M#OR "c6CY*^-,>e!+ޗ^l ZˏCjծ}ܦPa _ g*2:'W)\1bA&7Ze?Sx6A.*v.~Nڎ:I*^X0;(9\_ym6B7qմHQ_!kfdӧn>1ͤvLv/|iG6ЕV;Β/-{M 4v*dNLDеS+3q߃<ٺ:*蝚z0/X:.4QϔM^6e_:7/̮ V-d0&/iչ䒅QsgɃkyJ{d ̲lnTמ!=J5ܿf'%RXo"TX.#Z WC¨leb(:=s>̈A& v ރ8\G_ie6ƺUii 69Ͱ_Z<4a#BԩizXU1q^O=2ql~u/4!Ey\"4EL9g{[`EUZ{֗}8C"aJ7Bwi(Wq=qo~qcm;ʻ`,eiL ǤSC/1m{wAB=Q:MYP\Q߀/5\q/+n*8O7oY%!hէ݅6V(.}ŀEдs (P\οPSI116/]fwR~,cHhozN5$eXIX6C{*]pusDqF5V)Vmmroֆ­ Mje7 -ف#9QѪI'㩟`>.xBo J_CC̮}H}-e~Eȣ c77XJ0>M/gicgy"O:7 Qt+vqDyFj7s&F$/a7co?u`C-gĤAMuSj!#&^]m9܉Iѩ=EGֽ3CwBE,aEO3,zex g44* Ɋљ22N{Zrq+CM>I}4\TkPJF`|2Q-k¸ 6374̟1;3[~ۂ2^z@nu}$NzBo`$oY  W6q zoKy0G(~V߮34FX#ӗٍ9E=[R@e+Ը5cf/{E#^f]ȍJ CARGi;1#^- }{ JU-ڙr6;8K+Ew&`<3G6;Gq'Kah}8Ĥ0ƣFi"ᣈ1ej9``E*ft=*埗(ҊDXa9Iq{* 5Ű5K04&Ýg;wrhG92.p}b}2 >0}2@,':3%(GL ӳ8#|km-TU&=ٝU_ q! ȈKF!kJq\Т٧F/7QBYq9Ew{_ulj eߥS߿H]ON9S3YH4ݏ^´#BF#z`.DŽ̇߹eQ$Aەzp_NDKO<~X"F|Lv`܍| rxAMyLS+)ii1F^O{py^W٢uM9 yLT&2tя҆J|°U蠆a/Ѧf&f w41=<K&tX e0Mι]" ~|+R?[x6R~*xpCuB!ֵxߠ?gjXx-Ip8+y׳ljR?oQťHpV06fw0F}_ʹ3 Z!@&  ʈ,q˳z&)#ʿ0ȫPs%ڦB|Pڸ '|Kfg .z?4`7ޘ]F pQn5bJ`=y!{畭 ҆p9Ne`V% MyߓB] 9r凃fNRSI6c@ӓb( 1=[H.Κ`tAxLRu>6Cs""<ŮWT;Rqy}RnjR/:^^vtŕtA9uStD7`I^)';j\yR`lX+8#H~]l Z%7Yɢ5TO$9˲esGM`"Ean8E+'q>o{ w\ow~t"(zfsZBe77cx1 ml}/$c`e-wm:u*"$WiG,-2HghCTPX5Vy3LYYaeE2#He]=0}?lN}Oؚ2ߨ,*.gz8 S)" ]\9u6eU4<*d+u6)YXjԬ!F#'ͤRd%5.2! +!k% T˒`gyܮ)XPN;~ή^4s#pL瘭j~?.M=nOXlmYk5rh|U*7UrF5apZgCjiWg1.VG:&sYfn]WKO%ҊK;ԲaW#b'KCPZ9|I}Ӈ~ZhL]Q@еmDbVbB_11T 4}4 dcz ;bsOΈIYoD>2q|wC:y K* ,FfUnyq /E#woy"0!Sdg) ?<XW2\dqT7vbv36[6SaAMPĉ΋JYyH/չrtzſQ܉]Gl |.{|Ұ!TQ\cbY[foOVvo`aq?|( ~;OciL?HHa.lAљHXg󬛪*%ɼFnTọu︮'^$fq3,T?JMALsrY.i=%%e8&P) WJ[2&)osөAG: )}ˡϥ}Jf:IT)rq#!(N['p+B>!@dG'5"|( Pcm}קՀ]ؐ `!Y{8U7h j0ۢcV}tm(BedppgFس$>1?WPO1U!.a!9 ǣ[Z5TkAF3Sv!I3spd~AC2e;eߘ]>%S&1:l 3ɣ/iěF;,wdg }[~oA&UAPx WRqL&X?=K0=}TR|t\<+\ǻD&tI ;RYJM'*mRlΠh+nfiHsQ^@)|'|vXjU6PClg&ZQ/ '^`w&_a^afcJ!:2FɎI0gύ^/My EȔccѪH,)C0Qch1^^(FS֎7Ϫ SKhlOo R逈Lͩ< [ȉxF1|}P E7؃ykbp d;=Ģa+fvb+do T>( Z i~;:or>[3T3ӧ}@X ¦jU4a?tj 4i>bvArcS87-~iw}ȰOa>UQߥ LkkX[} ;TmQZv,"Q:a:-ub_ $]nrƢSؤaf޲hlUi^bd:D]`oxW.u(x'qtʉ6V;OʀH?gB[%njzNn7u9. _Xmܓ_[ [VjkR$h/;$|QejS%(4RO/i5ԅNC`0Ͷv}d!:YX829ʈNy9~Za5mnB/.O֥aTqgR5-[L?>x8 -C`E.EBaK*%IN.Rwx _t6,_fȼ9}u|Ox*x#t H+i#q?B~ CMǵ(ĵIJ;us|'A y\`,Oi,C35::'LސvUj{=SxG-:^CPƝC 'aⲶ26cOE^wQV1.xtgcP3L3Wtwb_S|s>t$ÔYW\'H]}U>dtD̤2n#CGx(?s櫕ΠT-mi!AlT:CXd76XEb<YLZɱ4p/?ιba*W Fz`^q)'ܹ'4$B,59*TV4uMIc x7$W%ۗqx$14X~-P3'B~JЛnuOxږ"l5zPH ދG/Ρ5^x"@jGc:`濮[ `_D,V|#6hFM΍=?4n&pT+7X]׸_.@F9.[-rf- J2Q*%q\܀!m] irDBg*O1_ x[ 8!'Ldy c6fYַ&)ȺDV٬ՊmBl_1+΍ dzTT2WVP>Z<@I檁9b n>VjG, d:u,\L zHR4a:Ǹ objklkABqDYRV4hS۠AL'E|ս4sGi08;۾S"ma/( jy^13K!ZY+]A7]Nv(tf5S[m=S_(sAZ_zp ¿i1V | zヿ 2lyg wRw!&e-/DDȄdHAR"-8GaX ˮUL"JDJ/a6> #,/{àﯜ*"& : m=>lAt^]lAB@<_)"~GkĉfU(6 xto/8IGZz!y}2^JsMPtiqMECǰ1qfK 5.,.Y-z:0O8rPIU(z+̈́M g٬䣒\)]?yDt~P9҅wY*DDdP2}24^41o7yAQCLIY⥚u0F|~>'%%%_V]zjAo4q]'sEąjMeRkqz6!n10d6Uj= CkȢEm_Rm2L_;rL, {(n ;a[#Dr"'Mιc!0hAfsyƊ`I 6j4 =UoO>Sri1N ,]TvHYNv /*r!,ЎUSj:ڐ+ggֵeeu;3ɷF1wi~/P;[6|3a6p#DԚ&yS|> Om7b>S```(;Yگ%wK"D! E.|EV]`ȯcJKQ&awu%v7#+4a}IiDyr+\o]^g@i/R %NM_"Y\7j,@mMotʼnՈ*Ll-t&9jϧ9ʢ{Ge3 8p[LYݳeM 2.rBfs/T;b8V~G -VRۇ G03k8 |YJh*I(D)3IG!2yA9+'1 ; )}U"-&IkUd2D^̯a@:gm0Xo ?CE;HB`Ӟ\p_!pͧW{峻 Xhb Uq11P}]U2AՐC@_wΒkQ qZ)]NW?PKG>gu|h.A*'S_d@=b^;w,N*.t@Н\sGZ3:W mPux/dHV5ZmѼⓇWm5[m?j< ЎX?'$&>WPLGz#S̹p][0COxz}O~ae ͊#j_4cߵZ\F]Vc6Ssv0:vt+mj"!]I+BJ]z"I Q OjQJ|ae{7/3ywo(i<&я.+5Z|Q h5*m̌XyDot9Ie;GrVjb@#@rehivKUr܅ ffA֚àٞ nFUhHEk|ږ3y<4o<*9$p8c<<@ GG1 NOEWR h\>N{ Mt4?ד *%ӀjQ\n[tC5ԎWTg"CyO@#̀q2D}虒.d6.F?!H4*ȪJ ބ/:nA18Ч7x|p @Kʹ̿Vtʔjo|od;,À2YFWʴ":qċ;KK9$oW8n6P "Y=] n`loge6րvj󹪏<.rJ5э Л(sZ D.Zypr|e/rP儋.EBZɄ`_RX栄LTt|LG!b$Ccq߭؜O;Z?4J`Ƽ-h?M6żeeRr<4mY٢rw؄F-70mx0y`IoT{jNݰE"z՛nOy }Cx8G.Qzd1)|hrTV`my՞v3/:k]vD 9@@ORgvKjm*{Hwe]jYlFYۊ"bS>tbvGv +G\07;::Gэ~@}jc'$JIFgZ=9oǶמDP Tw]ܛ'*gl94[ ]T3;ˌy{d@lB# jVyWA]DB.-$[_a}[5 Ģ/ 4O"9Xn nx˼N weNϸߡ X\_r3C1`"Xsf8YX c(ȷAm;m'?VTTwOn]6Jعʟ/[Zpwfmfoh4rD> .kx^!̯8FfF!H6 ~#`kE/M'Cf^l7gnjEr! 5~Kl_yI ol>2)NCg6BKˏ?L/^:> ] Ҧ#߽NHϜ ,ۦ[op_aK 0=C|c0y>-X_$6ȳTK)hp2=.,Ug T3~gi^vd4Mov znyMQ^Xs4 ?}ex#W^U6b^U%25v1ɔ~d`vk.yU 7e֕*N‰ѐ$Gm~lSLZ/)MW(ƐeN3+"O@yˀp$%Ptܑ Tz^dm<#ze%f yd:8J t3Kq|om(Л=ng#hq[4 R~v>b(V0 mq67S|n` %qw4ɌckiYeN_.sq0ХK)2jcW»<Β=?Ҥ8vaƋdX\fScT֘xPjS\Rqx l7!-oNE?J0br^.; ;?[E +h2m}TWAj%"$3VGJ=HG0)nò EEA2&`Hz}Ws@#D) D:MR~CON،ͨey2V/E_6Sk&˷p:ʐGx|⚌膲|!DH5*GՉ\Y?<@C`:_smǴ ]G;E~L)*dn%a<#1,GxW.tSMz8y=Xؘ>h./qŻ\"P +f·f0<$QAGe+`E"LȇGbjen=<0?)i+=HBhCjE#kv})E/<s͖}Jt#Q<>; NHLX?4v c9wY v;:T;jHuOxzbc]SݬNTUB8jWE8TstM&32i`,VGxz|C[v;в /m;`EIhn3#n+FAl< L*k[h K0iCh&(!{nݗT+a/5eZB=Ss98Hf녂e4Y ??@-xZM<}!Cδ¦q&n =PzW1blH'ާӿa' D4lgbn ䷓}0[|KEӧgۋ|o$(,AQ_dWAfa/)w.%1܊tUsirQ$H$u0+a/Pl{;.&>b]0QDoD0nBQLP,ud W +-DFIbdQ SاH h/V ԯw@SkᙎxK+R^ ߿]",!}w BP &&̳^5)=LSCMM |7u"d&\Qg^Q.!$lӈroE=LWQ<@K(mf!?'b{@Q1Tk N?"Õ!nj߄a|y0[Emwޏ' ,d$Q#N߹XzB:%JyRΙVKt]TAdw/~V!L BP'o/q ؄2]ԵD'k7R4KwcX=f㣛EU~0,!5rt4)4zo(?!nm{ [iO.āw0tOڈz%բr\ֺ!G{̱\T? 6ưv]oYUg vn^uG~#>HD0@Sv $0,8ٽ la7-~*$pk+󀹜 %ɝ䐿_PBH8PlI5GՉbI6`]*K;Q'kZ ] S)K!ЃX;ecVq+_2AG@Cl5"kd|Ɔ?BWf|1iI۷DKWe<-3V* ޭz@- Tl9ȑ"d4Ŷy"ЗUX  _,Li%^w9Cl?nmcC&ܥ N[&m\i :\$Ux3g}E _HKv N\) C \can"jn~E@U3c !-Jg~Xq|y|)U.[?:9nnƃih嗙vfD삛;cSSԏ QËQ2y\az~_xcI pF\#)Fkf+sZk z/ y^y!ʤY891=5][>FwbIՃWF#F)!I+ǡ@b54hq >A=0g'^N]L "&s gof'H)F֕wG}J)N _8 atvmRnt=WҌ\rҧάf1BH'/⿅E qM˒O WL$q:) b_ Uσ0nd܉ ʅn@<8_yrӄ8'2GC$6#z\y\=B!jw`KvPb2AűBSr|v 3R&a?c/c[GvM]D?`0DF0 яYT D_(GXmC nzgP6|N zA\z6|'&9ٷ(k|85G8C"jrY:BF>`C~}F8ϐzgESU*Y]7S #&ӶԵT}8cS7sf_sq[%,/ C(0˷&mtjoÕBTnUp_twG; ?"Ԃ9bt\,*Ojྤ>{4zg(akۃAli:LAw CwU`]oM{D#-yy2 %cN?ݏB>pn/;S%JtMX1}wJ٤S ~3!\qGftEGGD+ҶΏ9$&0kueYd+5]ٿvZt0MK̤`2nNJ@C>${g~s7΢:Iò7TG9~qPd݂΂-vv:`ermXnmAqV\Bq]j$,s#yӔ>0!T'FitdY^2rgK>B-OR s*FO Z$/ꭦEH DjZc?˨'_Ϣ<>ݰW#o}&$m72-cB+lI%{)aL^%8)P!5g(úPnf.+x]1g%cE$};s4> ;!3 fgM$*~I6BTR-.4DY */LfFG+(Ò9W3BηbP(/t4"N5 c[ +1Z|܏n7L~L*KU%>f8G\=7=o>w4gKAYR}/n.֓&_M+u-Ɠp|r4wצA&Lerr\u]ԏ"NxKq(.?dMaqp/ ܌⬵S u F!b4zݠko֨; nϭdt=rMύ7z>fd6. ͝R[x:"/q`q*0!M8z{RNGuA;J=$#1_Ws0$&ӉiG2OJEV?Rt7_ӀQ"eI5Tr%+(՟2=#vSw1A؄- >Vr^H%"Vjes8ǁlEx܎ʹT@ct0~ʄ1$ۺzXMRd؆MP^քDEZh(S}1S}4RR̍sZ۞ $/l :dũ- f{jg֢RcM)ufպڣ\Sk).;|\&Q馌1ka%:&4H%buPrx N(hf ڭ`|$}h DD7] G(\+-tO5鱾31-!!!wq1ܯ뢌:K_! a@dsd5\$p lnd벚QI3ߧY*&E-a L^>j=3\_wJyS^UCCLawj!(fڶ8)fW՚&߼ȀC?6]Z,[ᐼpϷJ*B▼IA)Sq^9鎪JE_ i`xz@{XS*٦*]IpO?8bK`4 XvW~wZ?'-liƴh$iydL U+wLj]4J 4Y|K+ =G,}3:r3,bR(mꚴ, DaEw7 quSI%j I;k q(cDD&EN j*^m5w 7%V_AcqĘ% =fˉ83yaz[CS% m fJce5 mQs9na[Lk(lʻSÁAlF,{9 als;),[{L}ԗt|-Xwk'!\U;N}+:ј/C!D5RWzh C5$}Ne8j0 Gf I{ԫ&}S-:~i*ǡ`TWLN~ Eph;D_>c[o?9?:wُ?z.]ӾxT %Гj+ˑ!rZY^ ڪg~&_&s6;, Q[@z2Kbh{cחGX7ZYTކ2lq}vV :jVfGtU|j&.*e?}h%~07|3NP:+NM?I*G-:٩({ 3tB5fB}}8Qg8B!u{$wxmQ @8"4 8@JQn] ?9PjN?0 *< :NVa6IO,Sȣ:'I7$WW2i@A+zEC~5RhTMΓ~&P/S897.#r_$cs^Bp)VMz0ׂ] K:!UuA7)qĻ_>m*Q侢,pfO8Î$`"fxSPvTZ~uhL$؅p:G5Zqsޢa$9¢Kkbmj*FIXWQo"L ^x[LRwTIdf")Fx@\xo U'cPŨkC * q"8ɺ e |h*OWWl@bPяyΑ8wT)Yf(r'{EV)zIGf?a_[+RyIٺx>+Q!z^+wU%r?`Q&2Z7d\. ;B d6m]|x@ښ9+dG;~>!~H,DW7Oy:II6YXf'^v@b+P8hN D\تTHTJ?HlQimփxIR@@Y K|n\3{jρb'+AOIpguϠL*K !VBzG]h]gQ,eIbنIcg`h@5 :tw`ưY6G{S@ [W"S8͂"s\oxJ7jkO/XV^dV H~j rTHaձʷn-GhN+5M]hLvA_P~LaڊֺgnS$oX  meMgI Q6%0bYP@ 5ȄMU  &h8fmEgRǓ81.TF(fpI Vo4x; !Z-TŌݶxG$א{I[ ~Y)E:#EQtDG+: oT*|t@OG\n20re Xue}7dLg1^Fok߅QF+f2m6 MA|(} hh 控)zx?BXs}y`p7N7?k!D<) ɁGfY\I-dwW̄7$ /AOq'DqU_XlFĆ]bq rS}WCz7wwBv8?;LU&Ҷ]h,lr(S.Hv?5bS숌){M$?5hi2Zrm+P)rއ|o:=w\N9q9Yˍ/ڋht.qghmqÂY'U4x!Uq0aXy1dIjSoOobǴ `M I}!JVhBH{RL<]!Z;! :txא7H咐s2 5A0S@] d%S& N P 4=Xʐ3c +u!Ȼ%{K^ K,(%th?Do n.*w1Լ~K7QLA*l+Xd_QES2_({\9 Z;1}Z * MS6Sɱ;E?XzntEG֓i!>ras;mr? +yinhiV"böd{N6%Wy;<'?u\'{e%̚AfIV&^ 'jQFs9#,=( N׃v at {TFSnf)Ljgo]%$2aV|! R#PĊ_+LXAG.e9z65sR K aY}9C"m2Ov fEh^F(D?M] 6`*uǎUPP}l"M)TAa,VwhȌv{},D. l5-9@?mXi\^̻#AQ;Ewe /&7CFLmQwBf=s^a+uDٮ3瓫]lV*k͜&@I6} 3N yF"6˦ac*-`Ԑ^Ƨi~W͗p\S&jE o~*u|wps= 83Url9<҆l~5Ftͺ~k6+dHveNgUt~yJ` ]LP+E MG1{v&BAh l"r?$ajT֑p?_~!R!&NlOO&$Ax<{ "?p.x&뙉U;nIrOifڱ/ϮQ!y/c1gobP~X Y29U()Z9O} .ѻKA;h .ai )_Z*%'\qfQɵ= .:)4RbFl֪u棰ϊ@1r!vze$n, MEF,$y S>V΅GhĢ"=zE@YJ[UlTf{uۨg7UHyg%UT<3C>1EmfhXv(&<9'Sӑx`^kϦfi7QF}l{g^:qStp@h'+giijV*rA7~sP6gҢ@'՚MS*ǚ uHjPhxct}_%XM]+?֣Аљ@284iԌZ?I%u+sR'ũ1b#*%RDtx=fp>3G(Brg9W?5W$Z:.C[GGj8 I}9坕[ ANN U,;"S|x̴ ع!oDTPU`Sb! yQ$; m7O;WoZ07*z\?>(EL~5c%yd`o6!N;d+wa,%?=L.`"Nʢ"V1 @t6"zwV[7( dmq5n ͑( tŞ:Y_ڠ1 u&ds˼eU"~)a 4ZZkZQNzLah,; nePjF$aؖ+rĮSdD2uIGKQl*jzz3LV;BkLwͣ,{ 6)Q蝘a`l@Bm8 yoi$5'\1eu̝/-'/q pFW/y8/sm`.47)貴+%eҀn'ĆsM!Qɲ1=C zA5ܽm g^٨OHI:ݲ*.A%@CJ]!wo{~3aLқ"\zZl+raڏ?7 *lsmyF'#u{۴JQf蟾smdX> .8dɓ AZ!` ۆD\1=-7_2i%1?-o <9h'~N>YM'!6j~؞ؗTlU8[w!?DDVڇt@l;m$C~~efĠ,.#ɪIӊ &qQyd\H={=#93Q?!JMfnEwO cS"Ŭ`ưYr}Y&F$f ͲM󚊜vҿoYeNh܋h9 Wng;%9JHiZ:Iݒ%AT*L6Xr lӔDƕ%PBգl+Bs2:aK6և3{y4DN'`ne`s"-UCftuL^8{ՆYRwSwLqJ0ʐvNNbBHu^_Kxƪh'\i@֞r8g#NY|:<)0 s|G`>1Lǜt-K2Z?\|:.K}"FJ_o`7MyyJʝJ A~8+"%+w~:8+6?k^ip+Ih Bv}(ބ@B ş C#ed>Od.n=OpDX$EcgB vkhIA/^$Cbu*2<ǣ67hwuz jLj2bk(g WsՂ[ f/Q;"_+XSi 5e/Bk~i[{žJƟyczcA")O#$U$U#@5u@;ro|pEx,Bv93mT}7nW6^ƽ>e3ƔID^L#Ӱ/=X2 WwvЉϙXu<֦'KdahrDZ>\ A W)_z49&|QΡ(_+}]^VkJ*$4]g^>fl4r 9e}ݩFZ"ӄbG}Ռh0(+M'9pǍRqˁ'ۚ8vؙQ%-_l0? u+Xf㪥|ѥO~]]zWa$~/s\D_YdtGE) )p-GB7cﶚXLjأox/v~Ob|s'UtPv/0\xfmN:u* ҠcrG-52hYߞd۫ פ8Tq9cPp:&Hv52jdS;X+QN >|X*u_*r0XhZ+;> vxM7$- ma' <ޑ%&O&㳁:>OACB^*K%uts]NuOzyjĺNUW#h4SU"XN17qS@b2g(3Le0stZLĿ#)<;p* tw&L9Xh6W+#+ m?6d7/NExÛ'u)tS$N~W;nګjhx)IGr-qdt|FtiQ<,C/:/;i;7"~zH&VhUϱ-ַYUYQ_O~᫄Ҟyg2lnZnnmM/7Ѯ ST`0KaB-HfxV]3][#BԔ?_"3gx)6p`lM?㡧#ڬ7u䑇VE f! Qs1FBR~Ez2|)+5JeOT@rfn3 ~hNj0Қq|-n.,B߮&o_!>f1Gqmxo EgCf]>, )6V"W7ײQFk5T*KJ,wWQ|Ti9wab;}YEq$+%:"(ZV]z3Y#j+oo1~U0.ml+Y0c6Eu B^ {z{;2H@L>i !p\f#ﭑ>ֻ{Dr",զY-ђ"7]odKDQ('aaؠ~R'RȎNzf^:A]d]7ZюΞA y|Ѱ8-0p6^9t6\ BxUHVtv&RjFKhn$Fԣ_@J36-XѦ;СPI+hAS#mѺ1f+.kc{6  ә/~ԍuҕ(jV=|V!$ &T>jɞvȚw_*'7˓<"8 J3T ԒϮ\j9-)-ALCY4PD猰%7-y=X8M(BwDVb\gJ.\C ̠%ՉżE7_ھ>v }DwsdAXBHN/VcPpa3aG>>$'R}$je]"^:V/_"E s(#V#3ez vvw몒\ |Jэɝ FoxaQB W*AWb7Y}7GHdQy/"v_79<Ȑ?0 7M 9t.͆gP{ӛB *' 6hv2u9Rss[T-vV ox?ܟ sbx?(г&`a!'EI os_[U,F҉jsYfLnޚ:SV1*Rdwr\,Q7s?81SRfRU1siI@@"r>f&f$KdgҴ-U9q"W-t}Td3 v9{Td] )ɾ/lP\ EQH~5B[1d}k{XuyA:`ښX`1հ !0RfA-1G xîXBO6*e0x3%}xs0p(غSIs?\\/z(gE4+ ԬsT])[,rjע5lLЮ2 7s`BڠozH>VVR{u^0&';+Ȏ%[?a3AnOw؎IdO-EmfGkP"\5r:KKg]yHIK2j[ p^`Fh:j3dͳ)v8qXaz1TP6ORH2Z?4φ:L_Jh:Oɳƺ4О7oM9<6QM3y!b!*5G,SEsO|O%0{?VUa^kVg>W ]zIuƷ@ ]Pgn7Uj oa87ʷ%,߽iם51vʏiӷi1Z-9SH!BЖ-(|3Laka]w8V ?]m(ǃ_DҠ8W3m)_j'cf"hp%W, sA'qUZ BG""%oKA(>U6ɴ9SFfEpߠ^}$g4XL}폾/>H9h\^ܹ p0mvA<&@ Ǐ5.kZOBk8^D?gKda4k>;Su^*fMXjQx,7 G6;'xh9*,,p;h̝I3qFzGw3:2iFbP"#Kb WHް*S+|j hWYuL*,ǀ"Y̝ "O#c7Y?4{4 t*1#Q@p'qr\ioU""(jKHI2Ot2eM?s^SySuyrQX9/)mb~vx_IYaL *z0 fBfeck>g.ے0K;;(iUk{ NxVӮc1zDHio]JC,7, Q|;٦Sn{"톏cPn,G #iL7̑=' 'ɯtQݪ>cm=ڠHML"lhBW Eii a:M\,6㊍кxoѺ u65|U;Q>oV},{FQuWg %  /f%MYc qN#ϝ\_N.=3| ս+pw HI.0C=I";KV'hFEc12W9_}ZR lŮŚET7+$G/i 'FI,,XBy,HPy}dPIqo< MRRNsd 9HSBj"{Utv,Ynu 2 ]Ob E#FggcxGeG`ICyv+$ȶƍ?*&_d o?NSϲsjR\mmF1}?D|wA2w8`׷5tjX}ۍ@4ɿqޕI|();opwgo٠YY[z?x!CM좖| [;ݟ˼q>dl@!v(眂 ] 0M(tiԤQu!LDV܂Yӌ ΂oqXW+f<|!hռ[-(?v>w/04%ȺkG`<~kxa LE+ %0(ʇ,Hz%\31Ke@a͌C- GJt=Q{q7)w+)|,Z.?Gz;m`yVQx1ս'f@*/#n0rǢ9' w[%_GeqC+]ټakq;@s.@֫L<UiQLf›>$ϒ0=~u $ٝ|fy/,%9QYߊ3c֬~ޫ=G5PuFs>ְPFv ˀ= dwԺg,Whܩ;)0TKe>$R1M%>[b;Ti}.(FթAz jRfqߴ frl8GY{.q bZ9,<$*"A$yE. J@!Sh4zI-EYD|gzU "4" t?;Y߳WR0461MVCkb$%Ǚt6۰1W+{ e#JrNVc%W7WjX[/{IEZMt]oHESIa K()auo5ٖ)MJzsN棴K06=*-x%Uo ՐޙTcd\J}(7k7H-gՌNOI\"]z@ CvR ?'28بkoS 4c8S B<Ӫ&|^6ʱjί2JGAͽ`>!\]M%kyO|G,-2LWe  s _zGb>RBIPC\/!d7a}PȹZX{dV쎋?QʥN)3caO.3_},ŗH>G* r:[n&g[qiO; a+O($NjQu&ZN}p$ф|&$d=jQlfz.'P$-}=Cnr:qGCK "`+ȁ GxmT:^fC0?EǁōQ1]їhHt%(GnSGe.(ixN639q/1J #o/Qՠ۱ٓ0/`@O(QS(-y=`O2Q?w?OjEK~HJ!顕D X$ %xME-,{.֮+l02H.RCh}Ҹ=d Dɇũawhk<#mM5WTc7 ] gayդsK lAՑ_!•N7m)K΀طYb-Gd/dهРgYŌ>{Û&umD'W1j.s]+懘R/%I>hk07\˲N@~ɟNFZz 5KkbӖ\‹zeɹa?i*yX"gR\]hA&Gjy+V4*d*e}Q;YWMVfhv0+$2Zm<j"zPYKйw-YՏ+1i 9?J'd 6+9n?D fp kqT?u2ӵI{~Zqz~ E۾*e9K̊Ïfeo"'ݡ fUw@V/Q1aeZhay[#hOSp2U5%0xy49c48BEj:DeaO: i+L>?ޟ\7u2nZW=cOw K}"M ⹟s.e6师3Ϛ\hd,Ry w%܍?_w.uG޶<n(^rwA?Ze)ݲޮ~AkeRdX~c _;hJ}!%j_pHd68MPn?R+([ Ϣ'QߪZ4nwS")5/nIb *q+Ost,[ 7] D,LY/.ۯ0сP;҈fvq} ܛI<wF}t:'NiC杛254۹V3]!sfP"7!)ڢeR"Λͳ.uwy/z?b<ׄNfnNQgd}t} K C g?> ɲ1OCL ? Kڏ-:/,]ؙ NT%(Fmr(sd jNbt66b2Wp\ PI3iM>j[]0b(o2ҤG4hXjMZbRt Ǡ DH@^ cQ^M,M=a0Gxwce93G++ } zoM :ϑYN\\$@E+S?Q̃kzٽS\P5C(W@_$E}`u qir'9*O2WӿGàގ_PZB`A? =FJ1HpQ-R}JCx:'S''7Q׷(a:޾(|(biqPϑ=-G^"jf.R~R ǺW ]KOc?0I0f)v8$ zDI~0|AB\3H>f2@Ȕ8W0aokߛHpdfnԌ7%7OGuq&ׂ{~MÑ^u,*6G\XtF[n#0AďQ!vQٶ+Sk߮&{=Eh5ؽl|Ԓ o?MCW^rݞыVX *xsvm"h/ jesSD1DVwW`{}cxΆ=aS va&a2/6&j+j-R v l׻@xhOꨪpV *@NXFYmyHY'RI5X!qH:]x9-87z9ߡb33LH~܎ n;3 b{ړO-3(ǗL\3p0Vzmf!k4LUS;#AoG|28iR4y^ƊM;j^:039p{=|yU3, yVi+&]ps_O֒mM` %8 $KVxǛ4ty-YGN7W75`BKJVtKsAE,{&.ΦMDD"؊'ד7)%Mbȣ=6磪'Z$NC敃SeF`ʾx/gNj(yeLڹI6z7(]3j-LF iR؈beD΀.hnLzY/b6*ѳGNY8QGHe2B)z_^ 0HJw6V򅘍]>x^J [y#$7JN6HV]{wmYnRڥzZ )S➀0B9 ѩ GMFOYr^;Xs~ K*Rݕ"0 1De/|XBŠ&{NLSKOojpu\ERrŬ$ qdISZ>j &KwR`"#SV#v$10y3omaNѦ80c^%9kTK͵`"Y _8\Y1d&F |(Add1Mk19RH^G8-FrLJzg=Ma::zwDk˺$V IVmEB-PNٵP̆Kk]ϗDKt D1t`$,l蝰a& |"kR,2!MnbvժyOE^t1 戠SGIf7E׽ZCGS: mf Ջ@ȍ!l)T7_اVMtR\ =nԙ*A \\| p>偒>gd~(A|v@C .+d $*߭7b' C P^Crq; Âeݝfvƒ+ e>t܋W<;U#V^3hDfcc"1dHZ-)d8?GȶgM1{Tk.W1s&9b*%bN=UE||]f0l3MʫW̑j;,g "9$;H -O@f(rN8~Up%hOH"Ǜ˯m,F̳#"~8ԫl- ^vMܐڱk[pԉ46|}v?gKs: z_W$Th/ 'GD@3In(٬CYf1ԄUq }L~F^&rk7;I aCHIѡ""eMI{ŤnNy((JvKYLTt~Z~hmۤ[T?% A?z(k= 9[AYgQA2Gx6tj䐕n2%2NBr:N p4'ьN bR>WK0QVvs3WjF2Lέet:g\v`z1^'q vױ0Mhm1%P norDrl4xd=ڱ! cn_3MyGM!&<_`^ <G iתc  :̲<6dX!OVr[YH?}ήbqWuxdꕶXdη6&lQX]$ٽ$U5[~sߊ'z.g12[@LYK&dLg2]4<](mE ם5|E@Z/I~nl"J?qM$>ܳ;58x^2frӦGild<愑@aO>9,Tx)0CjIkh46ܾsuަX<7eԟCgI-8;>S[+zN᧧jsTLX$4,C򒇯4~) :+9sq/ȅwOdrjh%A]ĈYVፋ"0=a; 0UBR*\f;:g.-Xu].$ǷW߃Px& m},A][ gYaKR4ӭA⓴wiA{ Iۏ3ۛX~P~xfF>droSQ"='?2ac3tK.2͋)[8B7ܷNU-F1r oDZȲA:yn 1&`Q.LNE8S%|Yn3̮0]3e_xMLX>~J?a寈^iJUpl}5[jϷwGKWY TÙHSݏeOEůi 1 gLXa]꫔x$®u-*bP^ۧx'VQgQ);Y`? pӐ㠊"Fk24eT9r+mFz=~Az5!6<{6cv嵮he0FvU(` Rnnت52eHo<~[u9 ,'ʯ{»S8픊2s@ ?*  60\Ja2doj~^l`Gڲ[ [IB;@h.349Z(ٿZ{+iBsu*2߽ҕiNێLmMG 7(@k)_@}u 37 Cv0b}IvNWE ZW4ћ1y͹I(ye Rۦ ]ׯpyB GL1ܹ#"'/r qJDYi;Dt{5s\rV_fSYB\IM~=w놝4 d۠P6'/Ey㌘V:6RĘ_L>dfV̈>ΠxK:.Z Z s9D>U̫P`5DumWyu3e9]1AL]7_Py^[fĴ*ף9gNgr2EX&[|d4wF=P!ۙV94bv |$x` ҃G )Wu1؍(n·,o ~]Gu2sP iah # ްE$Gk3TJ.OF^6hB5HV 5%Emk~;]G f@յ.kK=Es5 g2HOb غwzoHdԭUIhy2'B-FRA\/2 Qٳ Mb`vƭh{5:u <,s}L:?lX p h3DIM&!Si)7f pGXћ-$b*6^VZ°Cj-ի{鏐 bOB\~-k~iK=er+p9RϖDͮ?k{|`u :=EsK]Dzw#9JYnW( eSԷdg z'Ԝ}^첣 ֍!Nӕ X`b!O{ Ҫ&7cژ:5ⁱvR{X!0ua$n6۪@q+H!| nW՜?L0؃?z5Y*]s̋3ƒv$wO=yڅcYWWvCŕЉo,I"4lKhCKá]O٩b.bv~ 3OYSA%QH(XXxrR&^Pc'q`W'iށ?pXa%H? 1tʁdY0eբy4p{ş/ų~ Cxc$&"??9n a20#cQ<98>PIs4v ©f#|+|N{r v?=/o|Gsqkog(Uxy޿0aöӯ: ,`IGZ'ah ^jӔ4lywEeQa@v-xQOHLUZ]e&8_?oQ.쿮5…:ܢ? ++`wpA4Cv氕`.YF|𗨏n Mh䙄c[)8"/9VS80j,eV, ZD3~߶F>ՒW,'ՙ-Ի|ɴZ*c}nCZX^Y8R'M!\F39]m1κ,ht-I*P.TR^&JmLnR\:Z?D✖: .A: vW,6]͎;C.Zs6bd*t]Vܡ{}۽[pe|rzgc85Rp7{!4*&-M:ЋwMTNBY2,ELvxTFߊ4fkbk X~_@ssj En&4<&dzP#yg0zI?$hZњ5r[HūBlMRCXwh#614ףhG=쇈{o$j`lIwz{C/PcC`*{iؚ~#`lo! çu^z [bEzPb)oBuۑI}8'3e Ms^ =ȉkG,\y.M~i(NRyྭ#AyIHnhFghV.lfmEΜr=?չu7RaCiY,]c _9eNsezM_m:b:ͫ[Cs +e8çLQIJc N#LM5oшD"4E3494/ʯKe7++~pL.yvl\qU\,HIFFmlW?_Aa-*>)~BSDfUHXH`K U-W<~LEu2@{gK?`(-m話vu3Y[*]h  INP|-wn햔R1&":]ʣ7#t3pekeQ-[Ahs4sr8o95bۡ{1-t'nS'rCIa%XǚɆi͗hX@sLhKBb~^vS8-LrEcCe*][Dϼp 䒏"*e9&tYWk6p9 ajpt-ϞI2a6'#2'p!h < T]Zzu12| 4=d OZAZcUʆG4Rp&fyV5LKwn_9w3l娳Cԏ8^/}%_a{M0g"?%lo/v.ٚ{%nڳ݉2WthЀ Aؾ8 CJ`3Qb/fb64bxTb5Ϣ .*-HYk0B C,aC8Ix(xjK_v +ϧ:{?tVUWs^lTEp|B{L[8XFʮS+r_ iz$pBU|uritz/=ךrod*VDj%]u?[b%T%GfE8a!ItĮeɸOiIeiL0K s_.$ΚW' Uw%Կ'.Cة|"wNCsh9Wyξ'{=X9{yMJ|c.Os6K:4 )Q\-X4G*.aҭ(h ogeA8U>å)`L85q&ʏz`}Km$xn-HSx{)?"ƲU-GyfԒSL {jZ|q@ʴ*hԼc<(@#̙6Ё,tyw} ݭo,t C_ZuzL*4 @;.f>/(B6lˠ}yHX6&ڇOiDJNt>d9(ۗ&^ıe@rJRFjfYkM 5dJ(8:/|FǁVB  vB{~M1hHPmit@B<ݗ:,Yg!x׹=y9ٽ57)vK,z[ _'7U$1-&Uтij`D(vǻpp  ft$o3Dp PE:NrIQ2n4}3:`Sp'-ˢiXd~cz"1jh9.Jm`bae[͕Sifluj6fq~[!h?,RۢJ0(1dl' _,/[ 4C:}nLlN!A1.{G W|4~2ۡV@->9MeM%vosJOl+3`T=Ɇ@ /҅U>;G.CMRIb]"4wh4/`<L@eҒ~ԧW'nDnxD3HUZ;Z6xtsbyqbM4D #΁6 ۲Gɍ~zJbf$QB=5=-K`XBj3\ɼƅc= A%G[yNǖ>9ز|3a1Oϱ]hɣefՌ2P5g3~^U*xzc,ؑMJ\]gwDH +)gu8B64\b5aC u1(S 6 y;%rz/K!ѦWΰ9EI`GˉoV훚*4Ku**|t~oD`䊔K*sӴe@Ʊ̭!uA~VL%i KjNLiB̜pfR J<|a6 (& -G͡l!ԙmt$ɕ6;;D ܲJsai>%겒Þ*m@?P%f J ؼC ;7lHzݻ Yȋ\W]I]F8uVVMS`n(y;x(f) dfԄ%7J8 :L_$]t ]+VukLS>v , Q<0;j|# O m߭{iWJ{ K,V j:eX0Hލ?+ddҚ{O,HKa}(INٹH}^-KSfKtK2.F%tYF{k}sMAP_=[[> R8"_3%^\i6,fv`'_ש9~m0>uc*.cXÙzD^b9餰P~s@"P|3L{4g8VY5$^ctOvY/je<3rBDc<q*FED s*4p2=YTt2Z[ 5I_|5lߐoq$WD5wD;HR T:B o0jI> _ Q%}*#gPɞvcZM<:$߬n*-/Aq'uTt?t[j.}z,^{t>@S]Ӭ1Q\@dRaKdtnSܝ)ㅟLeY'2\4w=nY'top®h# db@4 R ~kJuMK*ZB)'g} 6Xkp(ׅiK]$r??Rhm//$31)b:٩]&HJfʼ7H^N5 cǁ*PXH|73:dMocpg:0zOVXuWK3l$҄nTb^ ;z:uol}{+9!r+֠0⯄)T~MUIV6*)]1'KA?*a{~Èx9Ϻ\:^.ҕJ ݛ\ +^q'~> G-&~߾ aO9= XSw̤C%x j{p{V]`/_͂/C8*1&DՌ =՝z3tP4~˴+RF\j˯hfEЩUũk&Ǐ&7"fYO-|HQyq*ZbCPd3:Z`.[46Wn4F>%ŧG{5z̔% 'qhR}ɰc@ǵ |Tk)E)_p^, ryLQBP"Q1S%b|J;'a@vyx !YO_9lx̓zu f/1-)@ix#oR&j~|TI^gr rĦ$v9(y#q9˞F҃di&PLN7 )?E4هFsRV2﮹tL^hV,VĚ!h"{0fC/HAUE (&-Ieq25o[Q[uV/pxcbfbp%4!Xǃ(~kRU$2,[Ep ZM&| ojVs4,.X>YsGH@vW,]Sj\S:4.&[뉟?fh_CLL߅GbQ>n%Wa' l<}A_S>Zo@h@?R0r&tb cvjf]iOO05ҨoڬzY+-\ߖ۷9Og%2JA멂vˢkgl%Y[elfF~U$x5jZJlbm+z@xL0@>M 8yև[[e)Z;!]plr8 rTt¯cOd.J[0 k󈥯\M :7Ye̚*PXUH`y&zg:9HKcKyЍTO4*F=v@%I[Ǧl")i b =+>WΨv<^K7Kiv(^lþuTu.@҇_b<Ϡ/FFqϻOGqX@/()WB3[ב-ȝZ&ڥ33PߔԹE1_ a? W'&C#G ] *\oWo߀* 9]֪Suvsl\+G-RRgG%>i9>'֚ʌ;`%䄪lp/ ;PM=aa3A1ԓ5>#qq|D!+H|ny[C#%L|_6 h=w+-i*Krn˚8BJNg'Q'bNNΑz~I;+u镂ޚDů,cdi]Ϧ@~.W mTa ٦o h)6a5m*sU: w?npˋbZ.!<\Ŝ&qi3Ljqy\ؓleW*S;q٠Xr/;)+꽫gWsYaͻswͬD ΀F"Z6iwwȏK0:s2ɑe ;iܡ6OQ wKI۾IWK*eM)=JXIsh9a(4?qɬm@ Floz:r D\ܸ$mSdU=t\/_($]wE5}|g.;=KtJ t3;T[pl866oQ.v]D&{jb.,d' 9NxA*=uGaQelJ#GWswHћcL7jFwš.H_eqZxA|s\oU$Smk.d*ׁ cp/JDcCHS⣜,NbF͜!^ C{ftyA54vn ~xoXЯ #!ӡlT Z=CwCKP h@9m^iMn?XxI{^FMt.HʍE5qWAeHZ!``@7X ϐ-:u`Yd_,Pjt沗]hzh"oK:"[K~d-dE>/0OEWlF%}\d~eW<VnLlH$9%ܮHl&T3 r{/EGeu^U:F(UMe~,y`@@~GO6Kn%_^6PA#y1vvUDrB~reW!z *wلZ.,7the ҆ '+J:l*1 hjгSUQDSZŸli.Y-PUkxYX0%-b IIquDc69Dw&l~fg S S q!*2%r3$AYa؏v&zs>$! bd\3T.4?d g[o}@O)}mH @J >LYp#%b楽h- yqC}i |5I8R$J5sM&z[S^`lCQ [lʏM4yLaܰ>C ނ(26tZ/şW&DCUDJV|p^:-I 4 z77\p*gbItCk$@J׊t=mfgL z{sn%j'Й&)p[H@i<-XT+5jdKG'!A,-mG0)e_sUc?IRLG[-| (? UNO4^a拲cx㢮yV#(V6OL,"/`S|̠lN#I*OK7rcĉ3;x< )Is֒(pȯ~'؇N(VQj]P&3ә'VBkM3)(Z`չMXqXSeʪ0RONPų 匜l=o͚ؗi!nݖAw^IDzbMzb[-֛%J˯8_ʡ?npL}bMkg_߭aN <+ p:(Q= i7$EpVsʐ5}^?m߈F Jsd-&G9voIVϩSj9,CT"^g.wZigȂSg iv$@!'=vK m$oײqfy⻞i-+,L;]rL>^/&M~E~HuQ>֣C ]C @?z {bsC0B EOn@&8uM|S6o>y%`;xt?XuJӫ]Fu2߽{Э6i~t^*)^&0EjU3b]X98AW},Q56cZi%&!.)(d,<"jn*aK28ΪƳPK]mtcʰL|/7ۥ[ĿF,M'0ܲul-0mxVyLÔ ?0eH>I9kq $'A)2}ّALX.bȰ]Hjԁu8=C;ɧ6Qǁ=N+zv70@E ~OgPss;Jܧcau4)1NRH! 1/ Z5P (tJ\KeVvGRK-w2GШQA/;oCī(O Cl` Y*Ԣn, O=qN +K'g!9>H;W8*ׇϭ#R>TĘL&e~#⋃i'mD"L 5ktZj S&?(S, CBP%Ib'vtK^bY¬@O`1 Tf:=%"6k<@>^#b )1iYػi+Z{D̓~^}roakV-rCzMlKzXn'y)* 70)O}@=xH4ɺ6wL2[pJcx=wG*ۘ(kѺ0. E!S-b2f.X$@gRH tS*@UV#Q%_; 廉DAz\(e lO Bj=.]?XXevcp!gJVM$:xH鼮Zd$׿VT!Vjct!Uz[sPYu%yNgy A>6%1ɚ\H*1clëOQ*>ٴ} ۊ=&Nck,$;I-W Es-B6[u9ަ9k$oE*0q0 oM䠥v0G!jxƀU = 9NGC76~.]ql)ʲhej)c(;R`9?A,:/L(X`7L$TwnG( jwj>2n ە`t3h`.GJ-&(0zYXшZ'%D=P`JBH<ˤA AKN )e;\CMKī+QaAFHcWˈd޲cQgE jty*ay-wb: %7̄:פ=3+U!rב8p쐟{ `x)W ݴf\<O+ M)%ts+'?^%elS%_Ev F9 h*t]P:<ƉEh%zM9!oK{ꮒ}Ybn7Ɉ^q'e|(I sEM;ߒA&G-By͡3Y'z}!}3fV @WYIp bpgM&})Sx*U3u[IDۋ l!xM:fckTa7so:Q%*iE-|J t £:"JZ,QN^9r[1G"9[luM5R86Ěԍ78uLqGƛͤ^6UFi8upNpf:l-=wT3{%r/byN?5,zGWw<"-OnH:Ǣ{-PI= J㥈%@{R;%K{l[?ݕőE@nzzJ@1|EXLSJ+1[J%yelvVEY/!(ا>=ldO!Gkt#|)=g$ XHk^4LTӵ DJ?g{KR@ eqtY"̈́-ESё\{O,L .opn~3O}1=9TIDͯ~W?,HF?f-m\vL̫Ws;JmKsnT[A.Y9kh0Dw zZFa][kYTʼ@3lZ[rydz>D++(SmNɳ_9< PE?k/h93g[\Oz-Mtpw{A?AqxZ@<+ʭ>5wIeH굂wxӲ86l?6fR_ɺGT k-ebcy8M{ͅu }ل~bfµ*%,@^Ϲ<{/`A{/q,޲|-.V\Ԟ2"9 {3T@0"r z y^JnUu D+l0k.cHAJD!_AL_IjioBCi?u3o),jBV9jp(#Mf``=mFpGfC^ 5E_aq/-HZjHSq*'|:먇%Lǹ9-D~|T ѓSsDgMQjKMڵi@9CSM+KVأT)k$GJ+N޹QI+9_^͊{tˋ̭6uZ;hٜf/}§BC^ТO\׺4gzY'ﬠ8^/Ʌ-~qP)^Q_&n]o$XaBY߿N`0D!կrL+Zk;'.q} 5J`keGV[" LoK"9M*'NP(jUT13F.Ot`860ӏ6n^݁sEyq?'+E9֚i+Fhs *~hDIJ(ZG2;O?W<@ֹ, ;&% g.빺PLF 7$+yfԏ:*!ğOWpӯhC4x:K9#a7 )S UM*h&sԐvtW+0a4CQ4N'@1]L/J|u'B r4z.NErUrllxϽxמfAu^tw}T%7PUzGR8.~H8ʪ6>;A m|0!w2wFũ$ERxns1&۬1 * |f .w#<=1dP^9VKȺLGh7 t62ּQ Gɜ-#qgn*L4W@6MMI$C$V^k) "2ʇv\x!;xpB)5fi[R iv ZPjbVQbFܜ=alÀH oqyKt6]?[~SҴDmi,@Y7<=(Dg O$.=g_A? gVnVqnytɹ5Ȟ/K0Q(G 5[K?O]})}J,/|O&ҿ&{YL+׊n"stCE&ԋca(ɪZ)' & }ug_hYGq7 QR ԫ rMs겋#Z"x%:mQWmg^@h3 !@!~ zoS68A: h ZĎ xn\omkɡ}a$&M^ާDwڐ x"3?c(g ˮ?mcG(mj^{!YV#LNMЕS.R$pxy ƌ-mREJrQdf(R|jٓLcj7klStifiYׇ_ EGzpq{t&wʒY#)ߪ/cSkp 퍈:k'ixoB&`S`)}i53?Nc{:Y"-fikI jfO%f7-nO:d`ď\/`E؍< 7[c rW18ZD^U!s+f "[@s `& Lz;gBh/o,5h;ʩ2U8Ygor)'^y+k$YDPEJ9UPmPN>-:M!3TyZfdkz=P4,Ps\1ڛhX¿:Kv˽juiL,KB@eVX+( SZ gA*߰ "OlRx^VaC<99Kg"1?4UOx DeSѭABɭΤKk8M5͠]sԅFgb+ ;${DҼ߉T#7ϒlZJNAq\n,r%QYqrJr$Ssi+ppZȺq􌧡=0XShVh51P< 7,*q[㑈_ȩ X0%~t͒D7D힕@28UiHvP qhU6"?Z>2G3(#5>򹘄nq; "ҙeYt;; hi|`OEB9A,UHT} kTifI $4@оSw]It 0J8>CkcU$2?﷪\r]1@nϋҷ>_y ]lexq dPA,PRr'KWCy=fװSi}Xe作κƺ6,rZ^>y^~…hNNY+-$f+Օ_הTʈv,LOyseE$?Z ~1jLX3DRWSʩr{pƤDס,qTjN-3УDV[hH^hM^L2iĴjd0L .xIAӃa^JC^`{5N8V w=D*>S`C!X 0*.ň \EUIw ] 5UOC#1p܄ F'jJB ȅп3FHu[Fs(HQ)ƹmF10)b7A Q?q(2#9ߛ;!,Yq|9f惟)ʴT9m: n^OA'OXn+#䓥rʣV,v d_ hFu\=wj o1ǃQI'lGhpӥ3;y@Ue=5He/݆ Jj}I*mnE' $S$:n(-aC]"zМqlt+ 8oToSvs'^5֮9(4=t X"C}>h1~dg֮epZ1?`L83NYJOJƼf꜓c%3 /ix,w> ,!z O䞹iA.w%5K@'cϿYh؝˲jN6IBFqC 5hZ@JsE*}dOЦƮkAwVyA hkƟ9ܿG Rk Aph:-&sjQ<~b sap9q (Gt:N+w ~\3&HØlLmDC2I1xe nr3b-Uةr7\o ?rC,=783 _Dz4cB<36Wuź˷{c)4|y~ZJ7 J# [A#s 79$tSF<\XszEi +ަ}E)54WS{N)5%zڟWT6W-KΝlאȝ&dݦxT"(n^tHy ?"C2<7~` g/ffu4myXyiP5sH0羑M*"}z̏,綽=5{J'ƐǟQ m-@Eo\Qi|BSN-a#c {>j#)pvWCjsOS}f:<^K .p8"2]kTa9&0h0^wdeC5p(͗20qǢK\Ȍ4an5M*=t(rCu'[dH@ʷu(:T(C$Ejǚ %ڏ!X@䬍5ǻ04yuѢ Ɂ BhrGJ(,~[exՄ)EN}Bͩҙ#ߌ|=:BS #SC晑8{x 6>/~m \,xj&cЩ|p/DI=jߖHpI # 9%!$(͇.n%zD@3yݿ_:@XG y/X)"W;+  HMI` !;.7RLE08W%cy@aigb7]pRGT #ۓ#DΥEn[`LevQ S|.P SojNwtIqD}d1c lHο>y~y=)NAdy^n4Ӄ@s(_ μQ!O*rl`ٿ-B۵I ڶެF%(8"O7+:<'nW5(!a:LM2(I݅puGT *xDG-=@M@#heZAP`pQ:FOxo[^5ܟ}!hÆ:|>|)歵<-^8٠ W cq`&ps-D1oX_9~dg#Wpl. F&ˤR'lmQIM$紺gOKP{m?D;/љdbH$mT<vqF/tRQtno8:U6j܋}n—`K:f[ `+zzX aq^s>= ,y8|c-9mXh~Uc93p8F}^uU^#(r$μHE(V:x%uE~ءmk0-* 16:0 lJ[oM^K;} Кu2%IiAn.,3dN?:ɚ]l KlY/ ~ߓ{mD o V+5EL7"7'YMҺix"8G EKfqƴ#֢3NYMG \JD$IB.+5L|$#opMyh'S `,JWOUeospmmFDsjBt9C; 3oat//P4`(JaAڂKف9+OW\bɓDˮ<.ЪكyR] 0x5h*Nu.~`J3,^.I/j΃sۺvMFjOϞUa+Kp&H 67kSZ^ut݅"mBqךBm-?Q&2:6 Qqv^ˈ#MCGhҀ0&x֣<$`ag:ɅUϸbFj^1-$bU [)ClYbûl4+rPjf4Q/v a{v^ú2IQʰS9^vj}F%l_e7 Ĵ 9)>GSS\=y)v1#:x/&Np4q괎: ΖTBR``PwD1g 2\ȯwb1pdX4<]FGǬ*Gc, Y@ICUFvOH̉' n"̥qM_I^SeVC=XC_zj@= ɰ}X=1Ǻ` 3Éj/a{gaBF1 C`;fܭ]@B6D̉'@mȮ'B1@S߻$1ES88FG)nPPݳȄMhwxt"%+5kw"kVbA\֭}j`py'"٦JFStBcR|ʍ JM;|>C?m*윅x # ̕3Yn{UM/͡,ZzQlDTޜ^/ D݂ecbȗ?c_d(E9ѓERyYXQry%TYDr\Mg+-uN?ZK H"Bbjitp/2tA}c?#l(ijUN4U6MzsznT{1gPVW&tJ济{7-Hg6z{_\6 q0Za#~,z~tL#;*9eC ;_SM*_~$[ad<]T9+5l~uQHG&G|QgZ6[Ez_<>K${ Y:#^ڀ+w4B\5L>&r%Co\lOY\fļ;?kbZvvzOŷ_K^02 bT^قYx\Cw1ո?ծMý^qqiotI}0 l^m irٜHUC1T`:mh9K0mF37?"iP%mYYC'6 Mu\"F2%t)#cDg=gnC0jK(זlهzV2@00 ՠ5Wt] ̛hTDF0C!OBEW%_^,Xg` д&+6>Vƻ3hVVcᾹƗnփ\g7 eYwX*WE/$tQ*5"i0xn,U0:Ȑ 0TXcО>zO-s\2M͊wʫϽ q(iRe[L"_5ԥ`k 4Kg(P2}"R˿I,T FRt' Oᴹ~vm{gF`Qg18@3su%OuUX1qXy%l13+oO24oh5/L$_e^ .dQ ̞_A"V~'V*f]'bѺ>'[!AM؊DAj$q+Z$= ld[2WxXtdLFXjpsK.*Eԙ6b$T(oDlk2̕j7rUŎ}<40 ϤLUzz5U`bI՚)0T0TÕR$6ztg Tf5DZ[p?э^-^p)P)-ŘKmiKO{}j_!X90rׯbZ_2FgɭAjQ >-&\j/K-1[+@d{.$}ﺋXcb˫H5_t{" wirqօO9#r|hTR[kJҕ;Yx 9]2^IZIW]!tOReޢ"`㝱,58u?SZjމxUJ)D[M:v; /Yi6 6uvYbC.m;N^qCE) `kEcPPcso'v׃A D/q=PO=ճ!WrN@=>s><۬+b؃g7/ ۳iz1?Kckֳ.8N6 MwEX (jУ V\h^B-cX4)ٵCI(F:djSºM] )I E5fv7̼)4nz`mW]s A3!echMn:y^MLTB}&(tY埓NpT-} 8SZ 6bcF&- +.  9#&_#|ul+% WS<4R8`S*G J%l۠Ee5z-WedwJᦎѕK4 Ӹ: {f[+T:d`Z;]{zT*?F`h{KeRWr9?!n|2OMau0L~` d=? q4 ;B=mdW߷n6'g)kIEZ<И^۝Z+%\ a7ELu6P4jfEXR&)VkՊt?):bhTO(*BVnx%ѽwCMFΞ-FXn܉Ggc՘6 J(3SP>lO7.f3hvK#%b/ht%u T|ۅn@ seFJ/Ep.9E[! ?` 8d2JgKHń]Hle&Jdt +ۏH@șJ^#q4;LuᒱM vGɜ Am_eJ#NIvA ~G)#_2{=k9wB\1M$Cwof$_j'.)ݫ_! Bc'x/OPvh{M%kn8mtU(M3*?Y }.3:-=zA+oڣ3zle,>zRE=%9"rw:GJ+{kN@&V'fJe";GnTVʹq+#c--o@Qޥ%}odۿ>L7eC 5骗d8 .vX:T&Ͽ8=dS-`If8sŜjDWAv19P !Eݟ_x`᜾1zkZä X*"Pds rJE>/c Y)M{8 jԼpt!G3TL=XH`(\L>B_0@ [JmWޮjϐPbM9N<)-p!a Z&rPώ]6vWi&?$l[N{ql9 Ełl<]Y{O-.lRu}PИ} b8vښ^ыK?`q=mvhқ:kޚΝn:&L}!kKݛw9 nV>m7Ɓ0%1i(3tU X Q!G4\#T*NRcLrBBDoطy;aǥ6b()~1/[!޽6P 9=*@`!cۓ]?Vy n&(`x3Ũ'$^[P ?mASH :eBB@+~NCmTg \\ߪLzQ) h\e_#PA'm[îr*$(m2߽fA[Δ;H[}#Zd0ڮn9"Aqrtb/P:f ! 8;1LBq}8QrkßA؇Gi\hNP+t>=GQaB \z%Xě~ZBԊF f\J&c|PhنV 顇ȉG}C9əhT)Mq .5ܤvOji+8ڰ5ⵜw֭&P w755CbL_J@T) o1H&e ;L#lT'n0q(F]xn\5 X;>H~uߚ0T Ucanh#>BXJ}XR kFQ"$ɘ𲷙1дaTĂT6\[!"HYip YBnIhI0{ec}V ]6M)wlF|v/]qPb&]8İdV{Ā#lUAtcbGksbf{j5݋x,w׃5 OwU@%t:1,me0ljU.8/$OF́C(EHkBNX[$4ITSִ>^ˎ BRy.b -ȮSEKOK*pq*#yvR&u g}$ WM3ړM E*F,nVh:jrNM}Q]]"ّl(&FN gNNUI) c!3)zOi<3:4J$bMԡ4W̯lqMގDh^ᙩL(zAALcr1S!D'{러_@iUI蜁(RRuϼ͡pA!)^FϏB>N͛cɃΕ1l1c:'M''j@ƗbDY=N!#z8NmYx#[u9nl?زhl `gj͖?lKlv*q`3浣srp#iYF%inY }+*H{YWȾ{祿Kƽ(SePzG9;r-fq8-:. ;Ԯ>޵a$6`X*#Pp9%hQ)}x_9(?66)h{ Ĥ@z^Cb|[İg֨5y-J/-.W7pm:0dB+ĿSGva* +K pGم'W|%[?}*21BG1)㑈{j:umb63`jgM ,).+۽{(ϭՈd^7[%&pPC gwA3OPIpJuXœ+Ij]HcxؠDU6*`<.'EYP0Y0'#t2Ί}*ުo$pO:;V_{nw^Xs 4ZRWX 6F/5kꋟ{iɦ[K!vFJT!5t͎}8J];>Ǹ BLLKnj@*u/РU.s³ nr8huQk ݧ#4 kx G]x^_GOVc2<|ɨ \^$eY / q!N;QL =S%bl;qOi*;O[ Ԙ#Pl㉟,%o2\=Y.5|d̆n=<_v=O{4 ? Ksm+BjU !Q9kYj?fF(٦-J, dmI3N;y*bVgH`mZ-Uz4.O*U1K-Mv3s Ol Sl \ylh.E [, O<)4^ϿU (ifB P)Quᣔv4YF'Mzs 8^DmǡR_yftie/nkIXrnuje=%M,ho3B0RlOYF+UHCpp |ZSp9"znMdsYcrbu;;>' 2( ]OU)hb럋9 Jfc)q6>_ݔ%,:@G!iwp*î`iq0'A]K a`&@QW$?el%ѮK6^/2/4`:́GUs6)K`{^bj,ݽN3x'PWvf'i5w[0MY #]).l б|Ed> H, C?=VqYFNdw1ΰ1c {Yί<SNңM"tQuΙ `T&z*`E:Ծԍu tyScVkE_+E,~NXCG M.1ۇvҙd :6i+1mW>"Ɵ>m- qla :uF{:= 50KiI(kTQE{P5 H^d0gzg 8yRwh5;OڱonH:linl3"ғ"-| 3k= <Q/ϟ4ٚfw̸i@LNHhֶSYeE;&0r]^OEx;܍+/9,G .Wψ T7؃礖~*I¶=sSSUsFH$.-5=.gh uę1 LN`hYٚ^ 1k U^9O=ǡ?vQcߩe3MgR ޟԮ пӦ' fZfXE'HwZ-'nTt)=`:X]ge&0/Œ="*D-}3ׅ(!>J% teWY*{?l g&]UaqJL#[^yśs_Og#>b]n^ĉ$,,> %HA>ʣ6j¤xF=뺖.9kwRV5)RIÛ=PPV鍟~i^t}1"$E) c;/}ǹ!O;A.ـ?)L 4cYU͉0U;l;À49L"Dd,5Cǵ}.%цG[ hA^>3Z\k5 3z2(~BHD_b  DkjcO\}_rtfN>>m(`a57tEQiBw&D853Ȧo,lShy$;/^$@>JeE~3T1j ^n0x{^|3 iszK2p<-Bs-7C^6ג(^?“tb}ϫZr1hfk *ZEE8m} ]Ye~tω9rUaM-eF8Q}Ǔbc6$MyBv%P49veoc > 6g^O4|7rkW;`u:Oxom$ץ|!)ר3 ߎMni A T֬j[MDZ9r/+Rll+4E_N{IlX*w"f$iTr0v`;SAy`L~,tQz+DF:D&`XSeҰzޙ%6*) uasKj |n1-fK:%y/~w'0'%5. C<k whyf#]( dR@T߅nuko[kUod7 S*Rco=5S.L.q f*"U;QT ")N\g6&<^D =qnQ(k!ř֜#s`5%Jz4G^Q&u޲E^Ge5WAG̙1*QCZ@A;@O_IvCv!5xS6Wֳ𖡌MekUF=ٻ-Oĭ5uHAV [Јfr)"QWEjClW?6Z{fMvbNsGb/1 ks C~u]H`d8g<W4( qGy-0]9V}5.INv5Zj Mag ݪoyҦk[EX8R7ApBG Ip$n3If\LrӣyuU7UAxHvw;ho3jycj*j{Lm`7oF~n3g 3j\vANju@Bp*2aɁқL0ѧuAGa򰹵փ2Jŝvlج Co3~J! Wh9@pB&#yJT \IlWmZ9{<9xA~=dir"{]dQ hQzK?aAv|T;K;C R5si1SJ{syԅ0/[ҔJJC>z|\|_Í#wOS+o5050" |H! Tpr{CؼxYՓqa/m u.Zx$՚,UgVC9m7Pz&֥EKAIeÔr /mj[A`<s _;֪mDrˎ}NT=(>R~h~aݮ f"D?Dzԩg5 Q)fZdQ5& 8JƦr%ivbU-<|a}q'.I߶ʒ4?ephiRe1#墝:C9o<' %.z['3U1>4 nTzMq֍`frFXyGI;vY u.iϊ!/"Y%*7nsa6Y+FLX`,L,a)e/9TT 尹=&s\35|mYo8A.#t1h P L [$@1*;Dd5Rޫoݹid b0e^=]gъ"-^_JJ+,Nz%"*#/Z2򴍩%4SRY߅AP3JZ&ky; :2Eq͞A$Qic |ۋFl:ܠ*Ђ}K/>Fu[oFց{&+K JlÔScjr=?iϙ]`y@c&ISdcT┅%$KvD:G{ݖcF ^R^0VBb"ƊmDfէ'=G4@P3ۜbğ$=xA0Jt%EsDU'2I؋BorO2ryr*ĥ`Ra`Us75m$ ,;Oc.3TdhKj"WQNRE¬kl$**t wO9OY ! ܞu ( iUC)rZy. văaweh Q n"hߜԑ-Xa-JV QpٯTjBU,@ [:YFҒ>YbJ{} /Qr;# ɘY!Bmℕ1.AZڒ՛ G5GN6Ilƍ[V^/VGЀl@krFsrk8m`f}r"-?5GTg@jJ;: 7e,gGBa3Xn=*iK$la]:c`S9֓)}vÝ 5rQ5E l.>[ ֊{!IQ?OzO>*-.1jSHQ| <һ@ӨMv\3SRט Ğ Ğ%!T;aHM~<,H"U P]u?Yq9O]냺l}mnB9zvW17?J˹lzԷܜ1-+ۣcx*7k%*MD c2wh%îUĥ-3vy( vFeM~ c jY09k^ KW7ۃCM$8#6O݉xW,S-Lp\dZ-Xۥ(A f$@8DԚAja]bM<&^ _;ʦ5T4H:RI^M/"9+tQht!_8ZR{9ޞu֪%nY^3>_ޚUKEP+Bvi (z#|hRG8 WUWb/3!j䶎WW$Bﺯv1jㆃY1yW -b]c6g٣, : Udv6I գZjRcFc:>$]>1W WqMk5]RO' HәNrZ.4a<?Fk|w&h3ݶ~ע!؎۳ct9}XM|C$\BX)VZ0=>;-I]&jVW\*ly7R) U;":,fD`80rs_>Ym>0J1 cyFUZ0J\!A${Utm :4tm+9'.ԑe'Q- Ȱٲw<]#_IMǗ4Öֱќ2t")έऴIB?|O9zXʹ8Ƕ]ޤeXهcKo l>|Oz):c(5j.aɒ\ĪpYjM}o۩Cӆ>k5?Nb7{cfCcAasĢ4p{GP<82vh舘@B Pv8Nز4 .7|Q<,2F'ݕ;~N~pRD fS-ZmKФ7(:ώciWσN]pbǁ8(&?Ew&Xig8P(Euݳ̫ H:$I"k3vJmE^ηsfMY0cp8،Ma0h̴ xm[/$42^Mb @g )2dOxgr\x2+NoB[/635._@o,huaИ s &ތaGXEYrߋ9c]p5IJ~ٟ?,x 40}]$yV2{(j[_$H&bϳ١اMlSǜPB4+OX%"QJ?exT؉Ok=Q$!YPeH .JAuϸݮF *]bMpsjLD`sHJ׼9?5㲐~a]7% ?Ri:w 8o/l zoqzO;p"бt_~7N7K;pcr a_u)^d &J;oion*ì);{0/֜IUXpl-Oc v"-igqEAxb8EArsg]~b`/k!܇"ȼyD rc.hS]b2_„s]]I|# RY8W?KTc&|rP.qZA~Nex``D 8&w<WN`(҂N>o0?mFD ɨ ǘL~dn&aULsik6j ,n:5]&XIilS3AYw MaRhQD $Tৠ^XEЭZr4Ж)~u SdXXN>cЉO%voEWҬ)jH{PU 3 &8R+x m1gqR*M $/IT 2ŻxqgHxgi@=҅I,M;LOaaVIem({vk(Gk:w<=By%YPO~rHDowq:=zYroRE$)3<$_veyu9ݮ0w 2ccKAk:$:~5YЫ L~z1r`P^f`"őʹ$]3EL=x:*68י1$}MeudgG.@Mg˞|. #ȧu~vu=e!5u-PJ)5<..w CAPnqrԟf = `gq8F'#vu:MKMAWV?)xAi=6bqژ*RBdE"q-)7赲H~'1:Mr +wCZ=˛UbHI@֓_qom-~FrŒa=ҴޔX$'JThAޙ:SMB,K %3!5݁nmL~vf7 4tb_zza]8s-u=`!Um2z=HTd z DP֖9eE[EU芜0dzLU:LvX_8kCf)Eu $X{T pZgT+A[`wU6=kt[J<-@AϘgtʳ4K[~T ك`y5D|P&xw`^0MS[ Yv=~~BJ Hw%@1?US1|VnIoQrН[Sg >@骙ǪŒJ33++ҳ)Y؃4sgf&mEYQ@5rr?>+8E/gJcF`%Q U}q{q|J߯rO!*5nk?Z /Tu۰~H3@_K-2!*Tbe(upB{c}erj S8!.Ѕr7rR0@)}|XhǿS{ t0uq ;U?QԮT$l$٦ـhˍ;[=bHi:8W#BuYg'ۉ?`Jޕ^/ =ݯ4 GM.Il:m2oMkIU{~7gA)D{*64,u¡wpFb✘bG3Uw)D O+nC&qDFy،/GE;I~")\K94Ϸ8q#I0v[TV Un,bC 2^(Z )7i@WuyQw #`0Y٪jyͽJ2f'LD"T4.ܧ%Bp٦qK<ktϭ,f-hi[Йև +7t>Kr+D<G$KSk.:ɠӎ`a'lᖕiG4~_'IQoY/Kq#zD/ z/!T^hrؔ灻tk:l~I1jaPTqF%8jcz]7 b=&'ln"aqCh5l< rXS ko[_u3.a\z!gY֬/D=}D=Vch =ېDWnw0VjgC'۫lq K,`OR<Щ4sY$K1z>VG^tG0<gPDMP80nΎuh-yzݚݎ H)0vqD!g7W7XFozxywuO5}ԪЧ) _%A;/5OOC.#Ϛ>Id05EDR( K9J;v%X{6rt\3>j@Pu0W|ȌMC@c+V;CS~^.1jAդBG nb 6݁XI pe[b(}F( $-(})'rxo#vy %X0l5]a>kZDjT4оu.$<LuWsr(ad-X%!7 V˯aPg}66[e!]ܛhO iOmZLjM Xuڞkmad@¤!w+6Q@O-JiAWˌ§Х&ɬ|L6Fvf~OR>ng*.l& llzw\ᒵ%9c餩V%B_eGPT6\2b%,ϊl0 1eՀ S@c,G0( )/9'cݛpxDT1vh|X7^E*om[NfGRR+=`^VpTm[KY)̚x/\+"~ܙZ${lA" :G XbӥH/| nq.xƪ0ogPI/Wiڵ U=ȳiڏ[ϤZA'p>Mͮ U kX o?6c(={jScHLhW5]=[UK!Zlt.\ 9Fx]'Kzd!N7,3ʕ>O1vc ]'XM|@,WԋN\݅awtըXтd@>1s/U IiMH'䝕Ll1NٛƩ >ۢ@LL:7qIߨ>ZmNʛEr*khӖ[<0pS>8.kyp z Y5U r -:neQc w[ `_PSG[:,z[nc_'\eCH`Wk*F[y\1[20y(ӯ*bVk:~g#  @;ջFBctU{|9fQ+ɌtV*C~r ŵu O~dyeCP甉;: |]l?̌zhniYW$W":e-JEyBO7.tm7#ɎgrpNq}V>@'}R:4cns1$QML=<8zTZgAI1UTb3h+`*I3a:l!cP}7/G8'?|z6e* t49kp KD!O^M!/Ԅ# 9zG@F"}q|,=iTcMFO”AZs+S]uK ,< >bQPjĵ^$bJF&<9B-UweO)9ttp*gſ3@OoһH".G2K#;ߨT?{U.[Ud ޜDԿpX:@Uã #DwdӬIXB#7\J*=3E޹КS?TNc"CpVj[ZH[oDT<ĉ/ܤ^,"% C ݘuTp5uZ9pG' ^،ܝdCIP\a'НO./(qq]9-- )] VGF.+AFx] ,[vV~ڲo`5<H = _sHj'lB KsfUB&+NK#10F~r{Q1N*`$sqی=#i^^u=>͉? oqv`T6X&jS=Jך)@o[W@BG4Zr&U?0I*OY#yH߄O5+ϫpm*,֤ܶ3C]SuWX]S+T d_o7 B{a)C|۝ptmDj|7B ¶|1`t˾%p>|J%vLf0^od2ʵ85Tlg~1x7VY$C vAЂ6+5GqfҦ.FUK~3IY w/QY KK#Muwnz~`㎔d曮/;\"zûd-xd3v JR cIt!?"NvtnQ,)KlHyWİF!]"РRqkO֒v0$Y)VZK?pVMm_e7CoDaZދG%fqw-bܯRLdFj ޑ"}X 4/-׀6qk8;(8Q~_x"qtd9lL.r|qJկaXjL?H $/SmWaaڱk"Ctw}W3 2β;F|׌тT;C֏dYH 1 GO%TR;?K҄BPPT>ǽox#k UGq C+VymTЅf6o A"]+ym{Rsj⸪ 57aFz̡Uql^dS\p{'$Ԧ^~=~5w΢JjmN")s&Ucjnu9Zjoaꑴ*^KQ_21|Mb8-2^\U{QP(͌@GMp.;3wO{ "5VD}FjX91ƣ93vO,<8;MFsKe0Ddܛ쌈B`9EKczQOc,;T&6 c.d%-HTҋq``P/nRGcA&q$ݵb?G2@>th/ޙOohuW+4Taak-|ޞ7BhfP [+[7,f$[S);pt fc91NG{d`;ip%|iEpo̕_4..2P:;k`a)u'vNz >-A0I"qp?dҺ rpH[3]qTeƒ) VH'?-~iލO[0^W6 ƃ }INkpe3ZgOxJ.7A_:We6ՙvTg:;pk$EhlürOm!; ٠IiK֑ YYꥬ%Rs2cOJxht6жlӻP<)5 RO42:4ˠ47wGlZl,2#Yj!a %t?nuPBna^o9n]_[`W9u̘mj-2]󄸹VL-(EoD-$!8Gb:ι>3X7*/Rrdq\=y;ŽW P&",  !lr f^9z0C4V(pIhҤ\m|ᠡWs g f#Xĸb]1cf1-15U;I`yeWnpf3; &vk\XLTv}[c0ڪ'{͋3\ bnsvfc^u6-W(Z]0=.Va!*x: [)>u"uD>%Q`;K2:GG`ֳI/5 MIa%Rjw5sGL%cI d@]Y-9EjZk1M ۰( [x0rEKWQ|K^TTՐKU ˥ILUH`f}wc5= Sɧ_c/xwe}(p(xU"HMrYCp<;I7Q6L8UugJ*ٽ7 ˜DDhYifJu  ReY+Ĵa>&Q`&ŴS|1x^Azs6IfiBGu\dXܥ C)3d ZPc=$>}D3ʗus-$Q^⢛Sv.F}.4z^&A*\Y}CLQʈWT=`#|dYתo0 }V'_jgDԐIre=YxBCgZn~DJHjz&xȠ`N{'/uhLyXz$p +³eO/.17vRmk+4gKiӿbBȤH 5?aR@<_f/r|ά8cACAᅇ yN=3<[{hQZu2@zqR+[21SFlYx RENt@7QF!2D kԸ R hieks^GfVj &pS8!3(ȷ <(f)(E>t`}]~vك(} |va :iTMA5u%b;S02tͱ"ᎌ>:2 ?ӷb\IB,%9g[r+rb]_ͨF .tBR%h'F?e ָ֖݅nǼR`/G= 臗ޝ:5 dľ~;Dqn."şu@qEBܟ|lC@V3mQ0Qu1x=[Q^iZJlA]ZSKvz̅UVt嵨cBNԅffB.1&7[b,it[:\]^:#2:`O hӟͤ"r/XmɇDVt.\ȂD 9R٢bPnuo#}$fiyrk dlu=Ԕ ݊/u77*qZ;8gv7פesפ~wr<5t66:5f҄Lh*} |:@`h2š;9ӝHۘͪrV7/+G%'I%pk-&3#jWxzZzK{,`c@efDAuuڭ<AO9161k{Rr+X+ ԓIt~E3%T¶HTL>tsp+`&\TSFx\*}Ә(5ҘPJ7pЎ^xn^_q=g4tq vPP'1;Yk\ .NXGJ bU/Wz'{kԆI=/I .? ۼ9_mvdPs-k!{71 qi/g*sW qWNqjlv1/ ,p4qTobw[I>:vZK=f=#ķJ@wTF F/v[ǐ0im<3ݗaM۠)1b8rV&,M]KU:Gr΁p''ϨlX AlJjpљ[l;GE`o-:ߚN!*)cW96d9x[zMQGDh Y% ٖ)Da٘?Iʄ dtYe̋QU Bj&]$- |Foڕ ^"1r$m|^4dWRe~trW?`7D۫\/E`] "$f9!GjX].]5b UOǏzVQI{f#kmG'CWc aDFwh|OԔZޖSW$HdK &^,jp#T#?Œ^8nѐ7~:= QaT3_xQmlQ4+ZA|6M ;AW@ 0It}2.\hpAmڎf#e:~& #$l1t+#&e1)6Ij ~?4 #MY޸QKi(g;S$6P7_bs6J5|Ml၀/S3`67qE 5D] 13/m׶:C;K#R`g;KE,^FSG혀O'u|Il$T';Ν.=а8[.¡PmLb[A)kTMW!,dnZT`HPJRM1A Q21J&ıY'3 Bڮwy%B=є(ĺH!t:)旰ng i5S6u8Rֿ'$jcM4{\7~h#H'Lmh0ܞy_#:#qGA]^S֜6~ DAyc?TN md-?K?.-2_Ǩݮg& #Fi+{yM›RyτouQߨ&y7ecA; ŸŞj&S)bzYɍFO }qCr$ŒZIkן鳞* ek/L&EdÒ QL/蕕cճ\.fZLfp pKGs+aPhFK~nMQNr]\m +/M=Xj#{D$7d -mGQDrm*ۊVALׂ'7qC6%nדvκt! 2Ő~»hFq%ow$NO@^n)$`{T푚 [8RpE-| , ٞu)D}{3`Pk^4,keJb"sV:q$ZQÎiIP.kխ. L|GPZ_^4So$Td _OJW~33bSeKe`EkDO@)]X`)JS2˗rj8D]jfҧr_3^;$&#f3+DNLfm|׎ATncaCxtb{'.7>P kT:C)CY?exA:M E8 dW򵕽7:-g7'0/ثC )xWG'_>Ӣ2(Q:d[q%H jD0zOmOŢC} {ECrHI(|ޟΆZE1y|*?P K0Lv%b$jwݷVrHߊ?mE!tAUۘYK2(J.8m J!5Er&T0̤I ή"7%m6t!<^|bn㞽zϡHkGLsq\&kly-Yf38TܡQIOgWy~"c%$x='lE`wӟ[1b>n{^ &\w[2Li,iYbkJ̠UTy1ױ ~JZ/\t;<5HNo8/MiV5 _eCJ9E7#J |W GkQm&3S8h g$W["{a2wsuZtt<ĉϮ%|L²z:BQJPa%fr+E?^Q3ܼ,+9 ] g?lR0;B|F0'ai Dyzsoj!#f١zEDwfmd7(!-ók%.ԉ<VIH+7"hVQLu)"S^$)" 6 ˥Ty0 Jy>\})p^mgV5P@ftBK (Gm}$h dxSoGsz%Z:_\:ӌ9 Kaȍiz Lj.>M+}nY~; |*iJ-&>E>a_I e&-xo7Z4eNaxi Wk:sSE!E=z]6bWʫ/q"FL^v#/<4S3Xz n4*/Av[ Ԃu׹M(LsTUqlF_:x*"8Ur& GP~۾\=Y k/9?y/i!ϊ>9) MA}lH:#'(n/;1<ֶ ZVQY)3Cxx$SyoM1_/"FCCk6'"9}Il\]ybq6"~cc zl G&0:A5l_㍘[@}q̢h6'lڷ #TcJ-ԐGŊj@ G[;h`Cc=1dN@jz|[Mx _ɴ}EQnV#x/sr&^J!+ѿ+G,R ^rT!M~)1w?EUhu@v4jxC9:(p)m|G3+_[S3 c.-Α0doa/ (J}Kj,{!')-6-4ug_y 1ʣtrϝv*12of9Ვ}ǪW~e`r86|ot: e`oY)RNr,eGT{/0׷㲣YPrDN=x(q u2a M >'%X["K~'G,ǏسtKUW4?w(mvrv|x![FXpuǴQ B`.r$HÇݮ;< 9-eV3 Pˉ1M#˃DiUp;j״fqX VzIxZV*iaպߋgʀJjeb`56}wDh+ -_RV19$WD$9;y|-۲j”+qCV  +.!ftKhWp9\MO!xMQ3TH6K;Rd q{4=YO4xFOi@K@6ht&I Rp@;!S_NJr@W%W$/cE5D]V@-ueÊ)>GψxOI݆*A95O0uj ʗ3Xn<_m~3 3@Ҷ+~LZj3%Z@׹GKP盤%2 ^uN5Fv-v%aQ HDA JEd }Uӊ<5}jĠD2 B?!DecUjnKÝE_;.Ioё|9Im/kj5ɔȫDfx4*uhtݰ']y~Sۆs0Xԣc6%0ʒA32FSYbV;sS?9460gU1u`_v:!H4OD)$%AbO+ygᡫs U!8r5['2^*.D*tʜ)b sH!rh#šTH@ ֜qJ?۾[h#dz:~9ǩ6QAʉ+P}9܎bA2krAM׭˱v ;Q=z%W=QŬ';_0kvuP.(_e-5ױroVHM!9uo$G*0%+q-ܬ-1fL ?xȞ c=u1K!ng3A b ; ĝ>p軌Q2EvI$bo6%JDn@Xz&҃7U%3Q6)s̶_ 4YN_ fgïG!}7i:Ly;omIlEzPtB)T?MA a+F%R)j93BEv V,KW5Wt!#&-4N4qszH^<h2W zYCV!8GNb]Z{+uIN[ZZ XF !Bϲj e n9`?HINkuhxϝwǃ&`-,'Bg ڳV}Y<]@jvl`vS٥akb䶌ZH:އ^l$Ѥx?͜!WBh Ȥl 95(z27S\}1/˷aq_= ~*q<7+{K㝥1ˀW)?C^?bOT¿8oF?p 3w_dF֭66Irɾq}1KLeH f|-m1$~>7vd'[}jܽHON1YHRWY~W3!ޘݠNk @ec߷~@3~sh7 4f"Z(Ӕ3cDycD\7GVf b#f7tƂ `)_|-RLLʯ%eV51O)wRWhz'~*ٰU^g"I 1?N )R*%99"tqZCs,i#ϴsnr:( Մ^%({!/+JlN4𑌽t=>؍y9 814k@"lZ ,06G?,{vm KrՀ)}@^k20lt {Vqhxµ7U1``c券*E":;*CϾ䧫xJJ"ߺ>}p@st!x %]oԧ nt{Rx;hp[Gd^Qe")謃`B;n=fBze{ JL!2@$֞wZpď!KAxAgHDOpL"s.ܭ ٨F]S&i0?cM3S>W)֮)4S6dE((8[V{~PJ &}4 Ћ=uZWϡH ܻ+XQ2o*E):3!YΌX=0'p=KQ]Ty(|G",eT\>3-BҴY.4AZgA(R! -s2^K$Q3b6zm}+&@_c92@{gzpBT+j-s<2M@p83|,:׫ێ&4) <*aW&صe*ttqߓˡ't##u\ҝmi]/u<|3Q@m`uqY@͆$"vMբfzGl& n0ipcxDݱ@OIUJ1q*r+Bߌ"\zlSi犗s-#43Vsd >Zk]Aw:܎aFKY.$ ,md]p䐵@Z5)Gkua]N<#A\}jf~9c?lIy{>&~oR=[ gvCIVJ ot_$?-9t%7)y{셍m$DEeUNOn3#vG36mIҖhs< Y.f,2x:/ t_1*?nA;K:熝MJ[2Tgi;߆DzPXGo .FӜ/4ʖ`n32p}'t'a#% ќSWQWvP@rc\!׾w$m?aqfxl ^Zyخ{)^G"vص@5>S2/t=ʴFC?qMWsR 9s&K).NM=)#M۠EuKՠS+1*qTEˠ@[_?+xV{h2 w[ pى'`*m9bXp#x`/ׯo_ּNMh~Nt3&^5o=KA*:q $|sޠ]+D5A4\S+BA(O0nuz; QEQ`ʹUzWu>՘I0'/)\ȶk[w"0o;⟳NB /OYr]%Vlڣ^Vwo9&PR$9jOiNL|ήSi$4P>5[bK}A*z0}n$kF#t՗H!$\eq9&?)ډT*=*-]̤eKOݣ!4P3c/R?g$>S-  ņLU?hs D\SȚ>AҝS-yA߬V#&/b8Ϧ"+ ,Q~ۤv&0\AB{gja4rC,f0q&ĚZrjMfJQןXt.qG|OX531GI>i4Ժ`QCub!H"}\I_9I S?.:jA Y8!Si~'EC}"Ie qtj#P"q4ء#[p׻>|Hz`ʺGE?cxCn7Zgl.+yC#MscUt{y07#ְ @?gr0d`ӵ ,VZ~}IR!?p?JeidC:%? ֶf1|:->BJ[,ǃKΠ r,ѿ1 4FYF{&*{vY,H^zC悧!}?G Ұ0 ³jxP}&q{bկ[t$a>;pR.G3;4qqwړܧFWP΋ X)ce0=ys3Ui[#E ^aR]mE@Yd;eky>25)gPtm& j@!eFkKRu] ctIz5B_OCwi,w*׈ٻyj L¬ T|a"8ږU+[;gq;%8S00PVUn/r~5N܁Lz`cAșzL1'cjT{(ًPA#,GtOIl7<4kݻƁaPȠ')@vO4<k%t45aؼnm~pg[ã5K햖6.8Z/k ȎSV^cjWG.+zj,QA?Hw$( L'ss\9 m(.V2¯~kl xf E5gs=Z 0ʴ#c1G5DP/YE+u~Z>"ư!Tp8&2E>bG1 GZ}CjsR^%y8sM::n/)nz%`𶡑XG&xG[ RTRO4ѤW_2͞JƔ953 XюAGR:lEz[ TH?hD 2'$y:Z@>ND[;vVf<5y0a%F*~RD<DMwY8u V5|r|O/|~5XB>dhUgr+KQNd^N7DOK56ZvRG>kS BG Sм X3L!XSG8A;Ht>5М;peC nZUdVo:k=>dK=({Sgei%ʠYl u-mfv9i>nErO6$wl@LnUJ6^~+OΚJzEZ~(~" j&5\4=Z(GA bGhתZ;KGaD"ھ/:A7bQ2xΈ̮(?Vg+Dr$ S? 8w˧ l?ZE@SZ,p:uB)"K&cEGm]|0Ьq2]6z@/7R-%/iYBV)U ǁ%#&&įg9L!Q]ٛOJ` "gsmN]3` .z\!?qʔ$ŽoC)e%)>}򌉣"i.,07 of)?fY.7_yKx5 I .`B7%cW-B ,fُ=ycei5(a+224s;&Xq(U5~|; s"`Wi bA@| RG8d Xy]P/z uLw5Wm{*:Q5] ?Φ^>j}I uhBzA_B+ ns 0+Vy,W,ALj4gWɰ+>Kb V`w[WN|I?m -*em6D+n8ڀm3U蘢@P5²qp)Y $3t FoiQdqIʜz,cg$OP&T8a! ^zZ1U1hYfji'9c0;Bd8ri Yf2΢;N˸> =TQܻMa+P"| H"Ҹۇ ٺ\Q[I ofT rWx}l+QqM+ ͒*aNvJ/s(B-QK #nt/+c;NFOop*&TBJV ~8JPzމ fw]d7AA|}}|KAj؍AZ C,k!48p,6wH 3_l:r%b&? wog#EPo؏g&[yw'-6[D ?̌FD**C&Ut0&\-`ޱj8~PtSAN@PS/<\꾭DW8ASxL_gN((WA"sL!{uy&i&gq'sR}qrd(~GUtVߚZRJB W8bϷ)Azu_F˻n ,x 1MJ0. 1^۝=#焏^ p c]"2,?;D4KS`\rx8VߡaS+练673#zFB8G@,vHfxsGUE.{J:r!lvQDceO0l몌"tpK5W@7 x3|7L? ۼx3ڹX 9CM 7bmԞWJ [ү/tzdkׅ#Ш4T߃i.uk.ۉ f&FɌ|g)EkDVK_P{"W_ZMOE OU>!{t%EAp&SInHjhǪca|mWc^l@6: e qq͡b@?s~]t!j}V>m7Fh6 X40o0cm/3.rfę}t>KoȖx*)~o|+YqPם6O |TfE:uDXQXcŎiC Щ'-_p2 <FbK*p5!;4Tv,c?hX[U^ [{}Gs^{,QJyȝk e !Sn 72w=ŋUWm U^Be4޹>ކzj$r]j0_? fgC;򐧎8Itutb>S{.?(b?Kw/w[8Hi:\]^=+lWYY,wƦv%*p"ޜ!Fbm6۾<2c5j}I$\1 ғS W2Hk\ȫ2D9ۓBm; { UW_v<0$Jw>( N,hb%g7XB1bÿ>G; S=9Dؖ|Gw!N_Ǥ{9u{}Ǖt؞%XKٽ<_Plr)HveXS/pڹXB*\H_D|H۟ LAQ)IW~̬oy{A|nyS.9s~i p>r7(T\A2Ĥ:ٵA<7k} o4t+wlP&-)>w_8eѳh`+I:Lp ~.^ 6$(MK{76L/:`AT|O괘]v#O|b"}c}C1]6~qp"u4A0R+8S[ \)j|4Y`r>(kWR*Ⅽ@$2bҩy +TȅW8B+"Q8Yl[Q] -Ȭtj^LSTZw Vcyy K%I>i5p-rE[loE"#Bt-OGRcM``x%`H#L<%L8"AMb+ g).Tנe߿v hSƂWӫ %d]y!Her++JZAVX,1SUK= tH'p , =)P`׭&HJl_l%o+,/a#i[ ww]wk 7t:ڼ`Lps,1VGk( ّ:++_ ڌ:Kv/[ݣ7imK;'셚o(_m6`ӿ_M0" 52.) M8<7p/SPGy4.cV0u|)!1LA\Q:?ohW%5[~pH_3M:b d݈jsK@Pl Ĺ244c ri ۥcmjUwtna=ҠzRN8HR5+E{M=0B ^>\mNgu~+suV?M쌴yhe^)CKzJb ]rژ8GM{N".-ʒʮ qZ;!ߤNY-E9cH<(9wGH>ގ2091]Ӌӕp+x7N z;}+fgб $& ߳>E[R^ R+RSõkġ.Z=4-yJ8j#Ң9=MO~˭gb1Лi!`.m9Qgj~6؃Ĉch*ܮD;砡#5Jc0-6Hi?Tك+jj`#;RX_iOU= K*-K?ӿvwt]p0xq@>)ICffq`> S|MqE9\ <٭:޶3tuʻtx{XP#YG2vyRG=XE!|Qc w:0(\=Q$.D:?? oI[PgP4J`i/q!X"|@Rhl}渨nWK/),VxzI-CҨNJ&:>TμJ+ovmk ɉM./"[*m-ݡ,bPq۬LMULdsgP%EUϼ[;cY xE4 ?%tUrd;v`}1cnzen5(=4FHZ`S+@x!-\OEӣUS3I[B3]ӥ4Hm$*֔lX|iIdMRcý\kgV^$# Hd30hZʙ Gr2C:$IE7}z%3'9Ò~@G(YtXPZCR zANjV$/w6co6!xJC,}YZ(xq>R; '%3\W~ N*܎`G9+#q~<~TC>MU% C})^zu ,"'.cG~,es`wE\d͉\x\FNFޝP  MO<'!-3tybo2}bB]4" pf?@C,) 74];=& cߟtR ^ W_f>tlIP Z* 'P;wfxn9C1[_XW%xf 6#fSHy<+*MS%[-h2z%p0pb(}FZhQeiDݒ9| "cJCPM5jb"!PX{@ݹUrLcex ݔ&`}J񧔟ղS TIzm< cύY'?PR?-0DCƨ3CΉ|tp'}蒦p&[\洏 EjCU0*k-b͚'(3N , 6'mЏد"(!htE74hnU8a0f ^o(,oXF#2Urz\^okWϛ=25pVKS5dvc~Lafpq!1ݐN ڔ)SL]A V(fKKRD>Wzb WgLU cw!hYڊAh x"]ǽE/  |͓}gc>,J&b>u1034ޓ-N"97qeyYs(W1In~GE\5hDD6Gn>@D :j"h|ob,1$"4ެbw%o܏ /ee=X9,V /`u?W]pĒn6ZˮV$?^V@s=IGXW3*,h0jCItˋg=[Z(%aH˜g\6ÖS aV]5CSP==>x*&O]w!frI4Fc, =쬓;q` F()G8?(1,NnrSͱ-soڝm9 :e-t@Ux5#0;7]ξ00_+DґVLy(1x8]1 !8B*1`iXBr EqU=WcKmYܗePC^3UjejܿG!( 79YU%hxTkphp\NjL{g=H#l}MϳՃ,ڄ~=8 ǹHrwZw֟H|hybQg8)ҵ3UXOnWYLu\km̽_@u+lEum^m&Eq.*jin5J$@tHbKMjE J*Ejtk/[XαZ|':7>28"턈W4{W-&9..\9=P.겲󻧢S=.#| *| ~Auɒ ʃK&݊˽oQu;/>)$v`W! JenY2䬎SXM?eC5WyKvV }oLë>1ձQ6| <2HA;_3>bw`IܷP]U"YwٱSlfaS4u$p3:=I4s:D= Qx-ԃmj͸U2ֺ\u[Њ 8;U|'6`_GP3&7sozVy!ia̰Ξ-ޣFpC5D]zt4^Q<{?:Z(s}|\ C߾4ؔs/il\(k`B3,m&. Cve' >|oH1S 5+sq!&VrC*J?= `@Й neyKDhp\EN0 ~3V;$~Eߩ r<' P"/+@'ADb'*5D.@+O͔+QO%|#âΩLʢ;4-UeO`'"w)=3j!&os̩*0fupd(oOxMmjb$-Y,"IH1smzAt;?My:<1ak@;;$*?zT UE7R2 j&c[F9*{vݔSB*IM5|)nEw.Ѹ Ǚ.{J>O?W4a9EwFA yIV4-E6㥳*+,F7lL%-".$g o5v@ >_#i\b2F~@YEo.q`njMD)M(d_`܃zѿ w[t̍kߐ@c<̂iOEM|߁9P2i%؅뺓 =X5 xjMs[PO eo50OUr??l ݐ< 2`6 KSM`xGPbOT X q.urKRG,9 %onL,揸j)1r:=/ll-W4PcDU!(6r\/T/UZ WT:ҵ. љ[UPK "T6e?Hx[4"C};-`IѢPnFXnr=PҲ[=v!r)]WrO X=QpkX {R.{`p`j1qP4A`k%ǟJҀGstDtn,G"5/Ε\,N]y{͓Ƞ 4Əv\8@[F%me_+Ĺd9d'-FvRȦ=/anV 67=;'C Ӄe |Sع' }y].Yx,8ݥ̣V"?غYʗB =L\y: u\$s*t#'*^ʂė+*,qX: >~\"TF{ G>qA ǾV?!ʣ5%@|%SKA7s4j*!Ŵ)5c~eX4_N&,g k;(gȂc0/HdN=;+ODj.'O*_o2Z қѳ$6|n& %f4 :65p TΦץQv.wsʧ=lf9}n͛sSޏXҲ #WvȊw`松Y^? 6]z=? ggL6" k U H Vxʚ _5_ftm~_[F~Mf+a@LL|40+'L+%}+5o?ձ y*L.є}%/{9)x#]lw6S<ԙGѶ@(QʖM~ct/*;g~ blY#bSdQe=H8 ⶰJ~)Jj#nu tr=W TO++"Z*R0q&s OCc%?^=8NFck )^n_4kV=阕8`1< &N /Ap*e/@>:wտ׎ה2;qxx->ęrc}pNYhh)Q 9kZw kN'1)ULҀw7G6w&H '0-0#~}rƥmλg!ٕQmg̰!A:mcoUO{G 6, q*]ڣ}b囆^XϾIXX_6=Y9 5bjzʩ;m bcBђZ uE=Nٯ-r}Oe'% 'A'-{QZ&C$K~'ۖ$MX&DEjHp8a*I 3I` F3ȹTCcD<8sk95O. &&Uz|%B] < h*5Cq,F@qEzPx` kIOfkҊcw 9P`lkN@3?mMqB0QWݾ u*d@N"*\NyWƎP+EdM  9X F̓ԓCg=E{w)F)#k%!xe~^*5=_@ . Untk _襉MISe Fm?}VD!&Ⱥ qlQ"ǫ&&l01~8(_VlZF]"ui^^g@3k2FZ 5Z_ ZԊŕ]7uiB2ю,?2 ]0l AMzY6-Bމ!FZ[̀pP1Wʞ 1c{#G݀Nd ?(ѸOwA6;lϨ|ω:/$ s*.1^aIw1NM^q+WKO2ؤE:\8{l:7[ڝ:d0z]7}v&rD(V0I9r+}ɌczooPPTa2toxU$9WYp GkWժ 5~j<ܚ9s#߼ѡ3Q}Vv Rai3ήHoih ; 5Knl·r&m`Q&#mPp9[kӴpr)t GjV,P529uCz,B v3s$.l=E'9\2/U V#lo,fe.LrN\{ )U'aLd%:r@v oD}v?abέԲ 5a6*C6K*ˢܑ,AE&<^Hu*$/G mt̼M+'HALvxA66u2T2m_-ל;K8Gٝg19%Q2E?΂!_Si7o5 Sls46(T#&KC~lIt*">f>߄8!Y =^^,ƌW h0<6 |[N#xI; ݈U<> 䕓`0$鱱ƫ[~(窱S1T*ϞhRsr`V[6ߥ)bhP6nB[\RvY P\džNZo(:3PѩC:K#\ʂcVז(Υ tU9_J'& [@ˌ ^DfDﲲxM3N++*Aa呲Zę¬6lި ?"vq)Ͱl()$_}8gJ~PPߐa8-]n^g"jtVrhYFa98U;>\ݱ &0qD񄇗6Ĺ7:I_WdN,2[Vds9ۘe=\F!h-I4r/y[iMHůag[^"敜HVx!sdQy7kHゎK:$҂(V݄, $oLzxv5lU1f{{|> cʢIi9N3]{ Fjܥ.sjLzfAA^+؇_RQbEHw۝gH-~Π1mtB`\DžQ(jiѤ$[9 ^vNN`!ae J&u@:Tah2I.E1n%!h'\ 6.LUn=} ZUoō FntZ+U~K!+mVaßXGLImzXf;ں 8;tA}8gXiđ!r[>+Uۯ_A7}geDY|0AMC q_=/SiHn[o}XI[;$ [7{~{iU]usǞG3 OzZ.bmyp(5dWRT$yP@I'JocJbCX Do^vᬔ=Ms J|'ChV?S I]BHu*lѰgz-b< U>G,SgV$9=kʻSJ[g͍zH|n~[l7kJ 0D F UIeз9D"X+<54be(ّ% =6rd^Qiu{6au+$zg yva󙑛&^U1C3bg  %d-0~nhEN禀?㔑s+[>n9*Jx +FNdOfʨj^Tнk–4pcru Q+ q}4mȵKpRST*9"?X|.灊Uj5A ?bHGGcGq#SfBDTbzcEd}4@ơq mH`2a*g@JiXy*Wr9'ݺ)!FЪ#71_W5 (iQ>:{iev"\o&lI<7h5։^8yqFjuy.'֒n*X~,(C[@n n@:kiw-e?IBI\З!uN/ *WH|L杻)(&ݘAmfZJ<㢑G"r'zL)Zh-X{'F%Bdr}+4L')7G<Ѹ9RnyQSb(mok/eӊoWE2,M?z9kn-I˼4w`0:ut#q`Y]m#sw_pY>C\ SQ8ey=*bM0iS*pyC t |Zɤ 8CQ[Cn&.oPVu2)[_Y!ߗY 睺ƄvitC}/Z՛p/taa&No˖6d}[+d T.F)1Ļԥp'ׂh5=02Qg^PqCoc5%47}cR1wz|Y)?yS$+2Kk Ҙŧ f;~%ЎEAU169k&]e28= @TY )z\:qS(=w:ԯ,9lPSʵV`Ν@ v`? n5rpZT37D > 䧨S&ΑXBCCdhJn. m"mhi%XL 'o^ `f;!Wy쀱· &G'$aL]F'05zg{@ N@&ԟ<7qr8bTq&nUEslQrigs{gc!<>K;$XpCu!L47Δԛ:m'y\Lˣ4`XAzyW}ឃ<w'2'RkFѥpOj^5~s;fwLix/U>.>(DRH]lNk5eIQ;9xEVGT&A/a<$,\cF冺k-'}tR{ DŽ`htM{{)TiTw')$R%,f(ԗ?o0x3[*vaZVLkV\`Mi-|8|PsYy@ږriM]wNbCb^W mzC33г_g:yr"u?su} 5fa} g'z\9B)ہgz>>5 04b$d :p/ӀcGH .*c ܫ$ErhȘ(sZ8ˀ\,zVx9oXPa0 NL{-hAqp$'Lr0S0pmη̧{4-j_xxRl^"F3mboK\໾~mw~MGN *ld#~cZdsx\n oW:-^ǕSpX|]U0wavf SS5\9oJAXw/Cr ׼}^lc!܋\.[.}jRH}Ѓs;9c29q]=CM!r~21Rʢ:> rysqm*K|\M0t.ܛ k曭gXl?aP:&H3΄^݅z߁Gw&FM{PqQ2)FSX7#tj̶q-yr]N™5u_wANsq> <5Kgdg&Cs<&{էvM 5<΢;h1 \ݡ!er+WIth .SazߠIG^U NtE͏S"tr*漲x+9ĂȉYuT5lޝ!1ѩpGW:2n͌ixb[[<+XzLҲA;ׇUEbc 9G<yP ##rF@_*fVpxRi~11([Is)!z,5 7kd;q% d iA׉KYS (.ɦÙN3|Y&ojr 3 {K _ Arܮ#Z}wKq0DdN~ cB|ơ /aI] nMw4 }Øl1HS> j8u 9pˡsD.]srIgj 7ׂOmdj( jBrY<?wu#WLf|!փ͇M/FߝwRB:Lv%NC tX3/oH߁EI5PsYz: ,P@e6wB9k^8Ϯ{1Zv kIomA|i/.5FZ{,g}F"ti>N ÛnuѰ xjHbdT,y5cZ3\O>G {̕b%A<"1D> ]Lb4q{oRH>./ RɌl~ǵf b{B0Mo%I'kݍ3R/t&FN9,ilb!6&8ɘG'um5&gp  1%2A;aH  XRu~F/J@{X8ȜY6m_=@[9[@`-+-g˘PVMVL )lV.0tK"Dn3)9/`N NGFHiTP(<R/zQo4YOkí|:ԝm6rzd_RD] %KC'׿SneYDm)ݗsrQWtއ6 r:o͡Ww*y*VQ(ĽZs0Fyi{P)Ng)qzyir3 r.YIDMk^EIRrׁ ):$\/v?|O=;oB#f|qJJzocӭqYҋ Ƙh[guTqЃ8o#0,+ba1B]w/KƢ\7e*W2) s7++U]*`Jbcobآh\on980*pNfzWo̗[)v6>'ZpK3løoW֙ݎmtnaO罾Oz~0UVjnWg›WtlkG쩇!BI9*qy ?u|jG?(r\_@`GI~ (NtE0KoYeaլ_Ƨ*@BhfY 4gvޒKͶ-:1OcFNc8ufh7N%} wœ[urĢi16rM+`C+;ssQO(P{ L>xf-tihQEnI`\lƸ*fH[pI&nFf3<Ζ~0)ADwEIѳǤS-j@7+)əh>^0ׯ]rd Y8@eA?a} !kEJ4BolJyz\\e#Ƙ;uPoaUq",nLz&b].Iu_*&Qq"p&01FJK@H]t4a>¡(oaq bp]ooof,ysv'4jW]Wko F+2ʙ*WӜRm/?ĵ!ϑ?䴓8aƼyJ^ h"`cs7U:f8'lˈGA(RVߣ$GmufŇxՀO҈=C bŚ,ZxC)\AQàߛЅRLſ,yFgO^6jmɼ"Q{N ^wbn {AֆIʩś? n9&&'a=6c.sjX4އ.&N@>NSzJ{%>Zs>c^S"/W)2(xNA%k@Һ<ף2,֡\/ˬ-ªie$lx:*v2 1D.g`7؝1>&r^ l]"=H4OĿ4[L7Bt~"ƶ5#͝_ID|R >Us{q[ߺX"5-~VbiGcvڴ1.L~KKC=ODrVLNDW-AoX5lk-bΠO~_^HlSuyfd38nked|? }z6Q`5 Gp#AR`@]lkr )\T4_IPXOyACl9cM>dAÖ8}U/b[z%^?G_zƶTJMWN0:YRq#ՖQN y_ A9}4O3L0MT<2=F{no]hr#'E.҅eĿ_cY3y?$~JWgeL;HFV~QdgTq/WW i=.0Xs}nŌ10db!|Ց!ksνw"W0H8Pţ"eq?B/)fBK n`Ӷvk=Xl0t=˫s6-KLe&B { oj]VF3V3zHG>C*pÐJPky|vo%&$yC(%0%+CڰQIvi߁{'o>2-(ecZgh^* " 4W# ' j OLe/9dl^,qٍ4SsKY3 ?1oCk3옾Ɏ:C|ȟ?&tE(G$U$#Woo'4 =Jk/йm&KxTI~4J"{q$D !";SSGw94EUX]]ly ԅ*A&\ KlXO28|^Xqے$ᚸY$[v pe2SK4ɍ+JONhl`H>5LC:{yL}W&p,vBR_'7OMeLϦqƀ{'D\(MT%Aqq^4 ?rE)ŃۍI2!χ;\$ Ts ܎Y{7MOPU˝R|@5GR*5yf~Kb>18٥Y.EY2~ۨEF ?i9n+RdeTY~KpJ@ɭ0]fdy*#z 9DڸAƨfs2l4/ KC? LA QN$(@)-hq)6E2 Ϫ2EWzUPy1ssWFf)=4 Q[Aiv5vbp;O]< ePpgyJ_G= >P32L%= "ECIX.0o֨?OL5Bq-{.έɣ)8~˄.]dØ"' #SQ8*NcNB7~Qt=x9 , y즽dwV D`&*zP:ӷU*?n?3 ҢS|E,+і7כ@%7TeL m`\E`|* }l_jinrZ6q3C3ZmR w`xH| 5Y@ݦYDm7zr&I/ɇ֓ݺK. |H<1GwՃf&#A2sC)CweK@SoEȩ)v- 8>&mWA6q)1%yW6dbc%Fŋ8"E_ܠ#'Nܬ.Bx%!Wu՘9}`:f>o8:5L(}­<{~n ^x=ck ŋ#l+xu:x~𜚔7,_atMP 4VG@γVƵXb#4t:ҟ`IOPN!S+p6&r%m0+ ,3Yj (fJ6d|t,HdR6bNeyІt_ &k!'tA(zs~DvHu7*Jw6,Tvbu#Dr)Ҽ5f[tFl[DLO@%C_(vAz'-G,"U$(iER8֨O'Kt [\uqƔ^xgyt}XQ7hC⬂O.U`=JyK;AId$O1|Ocz<:IFcC)۱QUTE47qrO@H W WdY-3xO6):*_ݛbeiˣ@I)\X"w; `$dr5b5>ϻb#ǫDZ@FE̊p1UD&ueT@,(=1 m0Q #V.p/y ʲXsjv,f`B0 'Rdr}x&#L!_ u[gZQ5:*@x#)nI}xi{R\TOe(Tr6WJRLƶk;(?A5Ν6a+:'TƭI 6b+UˤQG4g{@@QF{|f}G@4[>z fMfq v0*4J(c׮|j]N0(&GekO1y,sWGFù5ק@CZ$7/':"ՕN}9(KhE>9\ݶlA}OHbN5_ MIDܰB@e?ogIg&ߡ_B}-3}m䲑ԑ05ޯ A86|^T"ڪkŲRyehzCnY>{ZA͑3|dnkN#nt.\1r8v4th#ኤElnGS[ ]MI3nd^=^j]KP_Mi;MWWfs`H8%G޴K(,(Ǧps W,:ZY[e8h `' 6$QW]N*ݣiPw 7 x 9KIP_ >B Io싘?Es>sdQ qS-퉋QqBJNy*~DdM߬hn @zV5UOfhqp< !Ԍܹvw,HvDmIt>6p)7 k@pYl8`6+:X\T5^O|CZ;&q`wZEXyO} J`M\grg|2dO'9y3UmF(gޯ~K?\krwf1FVYI+$I;gac2KAƢJc;U6dpKdZh@yh4}6Gb)ɬ}IK T.udS#]{uS=91MFIE kY|45j;= >-^=󩤂 ؚ*m~G!bLjϲז`l^}^ Rt2K1t"gO2) &h`7y= H.9+TU~&UWžG+-tjs1c7Ah( "#B^-WB5Ym͜@󍯓|I2f?2/j #yQ\cj+GlǃPi ZARCP{hm;_M/c[jSإ?6d-iR9qhZ6m>10:~]\XL2dhS&} "o?`!Mz/_4]] aSa3כǯ @)jA1wU/b.q*~!!\?NO"X kDrNgَQn] Ztoi}9#>,#ИA^L-Fh=@}(~p(nQP 5Z3QC zM]嵃Oy6)Rl-EWd|'#6)KoTR'nszOJ?@m=GB K$(pw,S:X:*c"Rց:˞} +?o=Vs` S[^&?UA2-elXT%y6]-byʨ=>QlI#0{iPCy=[Ueqq}ۜ13x-~nv6j$hup6l/ 2f':"410_GT~_Q"C{83 mW)9P+:~85vkOG:y KT_3>h)17) gӢ1E"/]aqM^H]᫦"HdToi]eEYmG M17!ԅψ}nQjݙø&jD%ZL]L7lٻm钌pU/^3f==_"Whf\ffRq0؃sA >Tޙ ѪO*UgxjE~jE's0^+S "ZF}ߘ!k]0•As[0g0c5|Z>N]5>|bl{Rݭ QiZ9p!xcn|{8P\{OED댔`󂠃{kWj>:lGjLuɉkf1Ǡ7G#MJ/l DeSY^tscD$1+9~ 4$ HQzD=?4QhJkU 4"68q%$7]reGuvn\̤= -jX[l(5BU'A)}X48 #W*+mN9\-ږJOWjY--1~Y.1#TL)2Q}Y0ؚzE5e ǹ ZE>_fY:"ÝѸ,nĵjܖGr-#0WSԌ nZzGeN.(ܒ}=`:zaQ>u1yvrʕl.[{Vu-dX|P~Ŝ焭E&~,KoD8DWsu\DV<"ECRV䛔p %ޕ~iXP7NҎ XlŠf.k4zu~i{6@ʸz6Kѧ,b7b~,iz#K>q]"ȼwhP{7 Hir*`(#[`C^ 2o7\WO2Ĕos+%J6 Z Ž4-MA@Y[ I8}U)|矿g(!;v 93jkGN(F95 VŻK \;t]E ^a+L4p?5z`i$`Kr5H#ŋ߀ J^Eb倹(GauIɉ18)qA|LNe x =_`?&Pp|s_ȳ5< Y4aJ%F6^ DE^Jp$bD6}iRysN'8XHj'԰@lZ)\8p$(y|I ikBNZd121fC"qtN .,d"\Qj`"4\Uq<*ZKUϏ^</dXeW1%2ReX^{[p{j][,H!5N 2: Lz] y{<&QqA AWkSE| }톢>I4{)$z6D 2+4Z56FSLo*p:Whs1]GXz?=]4ˊ1hb6[:<Ud /&ct!}nܡX/dC5kL&l?I/:Ƕ&.% !WDֿ C~SC5|:BA(ܳpP67PQ>oMoW$H>\(cBd]_.3%2e8J4^z|SA֪3"}Pd=|򍅂e(R8‡1!E9ao~fC)Hw]0|IC@fگO;2XLVkul+ZYPzAPr]~>M9voѝytC#8J U{۷=؞-uvNqZޅ]9#@ɐ6,-o4s xt`͓ZrH^|TJJm1Uo3(U-{OE!DW5(V)n:Lso՞CLPR+贓7w,g%핼K4:QPkxՏ,$UeC_ ]A̵By,([켐=x YzۊBܵza Sf5<%.2(bm܀趽-q"`'$xC!/DVl~gn9EJRdѕb5;MYf Ex;6])0׾0,ҹ3:ߋ{ʟN/puJ-Ak ⚾լ#$a R{H8ok+c.^WS; W m aRq]i(>1L|Bܚ%Sn uU,[8?ǚ?:GZK1'IGB Yݧċ)$=c Jjy5"W~z5.o~qԾe5YX`w+M%2S7Swki3=kJ^2/"Ed|FЎ6qfv x ~EPA<&kM!aVK+130Jv"#_탰4#$9|=:OIR 'ƩXFQtX"aG{(7l|K6>_mF,/95(j N^D?fq8ԱQ 8[}s83lƠp!Ud"QcMӅ:Fp8W ^IH8 Iwb{I PzueLxXT4_OZ:q3Ð7~ S!ft3#0NR~YC% ȁp+hZ@0Lra{i 1Л2i{Y$<||z-͑x_'-1ӋmzM U~h(][Nh;m *$vi 'f~/*1 -9GY˥(CCN¯K,;yqkP#hMʮc P5s6ׁj7" v+׊BgkZLNyſSLC}NC!Ol[T?{'A\e Ųwq Q["O(12- uqV"O,oIi4wCZM16ey %5+qe@Wt| AG t䀷 ` $E3+:(ΦҖ"Bl롋_YQ1Z;&kisD*N&xOԈ2xN+#SZJɍ>S=Fxb׃zd/}%0G¼t߶ri!@sKFv4b N_*4ឰ5fp{^:8iѼ1=<'kfùu}Ѵl\/^4G`ǿnci-VR_VV[ۋ;TEi5STtbOŻ*K uS7ɷ&)P<6L[mgI0 `<,^}VcU>"dI4BnuCBl1H2G]ㄌ0 >@=,'&Tq>HY՚P+4nj H 30[ S{:K,'c a}~z<`q~/J@h a wCuR4݅eF1a Jt#)ؓ57SvSt݅겠̧}d)29*%`8ȯV Ul0d.fh7+O0+|&fY}QDNC2Y;Ō!#9~}0zaƠM>GmliٜM8N7h5:2v`l( ~ 9H7SՒ;i6GP|R^2<00Pjߐ/\Ľ7c˕>kMpϽh筩B8q-Q|#!&PwߜM@0 oP|}v[ZK5)7?AZz"ǐcs=6VQ^0N?Or݁C.KJm[aм"@Ee6h"u(/Mz[ߪ~#'HpEߍ=7& [AKGu?au ? [%c M,K{D?vu c7 YTsQ*R(͞{':TJ8Q,L'_rD$U5[&HJ턉Y~bF/"EYkYhF%*2VR{hD!~ chSsٲqkhG j[լ9H"OԐ7?S+}Nsbeh$- p8i56ġ&'z:Yqd1+o F~Ր"NRz { {_ >Yz'=a2j؆ T /)Z~Tsd" ̑%Yzg#S8.(@Roͅ]d_&;xӉBBlJvG/~q)ԜAEMsc]Jl @`JJNl 9(a؃Q1P%UmRƓ]{3Zh͹7P s VxF_C"2 rV&5H3#j8UD w/Q즊z%b5u+4wZ6z!@bGeU9*V5$JC\ی5loES>p#`K(5rUZC9DAAB2퇞I?vgL-+vGR>#Jf6-k8Un8D4#v8-lثi$,!+[$\W .OX7ȩaݫyV *XP4c1+l TH6Y1%]PbdO5Přd2ж|k%ըYM@pJsqIdxA$JX_ T iK8$0vY(rn!ѓ)tNZhPQܴ rX\dŸE$\bJnĔ, LB_}L-+U&&sqCL[Ruad[j0q SoQ,M&WDcpC_O@A Uip9-Σz;D& 7x< ?VL`K Eаr|003Έy#\g@t bf`iU-ܠ '26΍l}maҟy0rYec .fMY)W"O+K}dn8DTMd|eIG|2#SY`:wzGU~= 8\n_Gak9)K\5G5:K;Υxd7plt<4'F}u;B+$4ިJReymh(>3-ˏǡ([nʯý1譒 +k ytq".mf#}~5MtdS9F~phٚ'O 6#>D nτw r1z]Mq((Lմ=#3+r\!w Jz4R6!肰͜*Ő.c;vQOI.53s[<ͺQ8IBٶBGl+*Xx/WpIxX.D1) ꭹ'Ǖ0<>~tJ걻r//rT^FJ,-9R됵(W7/debF s gi:\ BϗۗTC|gK\ N;E";L-b'6:˺RP%`,2q0ֆO[ln LF&-">tj !HDIeS$ $r {GZ{\dPXK(#jE]\p]4#}@Ɲ a#XG`:)%brଢ଼^VҪc`U'] p !w҉>5KG"`~;asOcNj ']9LS1⼷-excа6Gl.Hq0P,ZU^|}RX:4!QĴHx%m&P;$t[jw'2H)xtl]MhtKֈPhHE@A栂hco-Sk_Tqa$o5n@mza2'+* Sbc*F/kj9]?I5= ^BUnXof9#PS;ڃa=]޵ ]t7-˂fMް {nΠ4u[:)h>JW!!rT32hN# NY {x( a$XrϕFL/d* ^fd<>Ê$,DʠX)M(p=iafN#\(v_Űj=g1L=C"!!hJ/0\vs',LYd Fٷ 3WqT[OR'l)ynowY~6ppauc]^Uv~4=iDgR㝇Θ 0hd$^) 0MbA;pS5[m\S4 g`:miͅU=5E;nJK :HHb856X=pt<3! Q0~sJ_>yovrWU % &lC>}VM[W?߿rY\=fXX%zUV2F2hZFwXLjgK3SZҙ4Y?:G!=†Ng~-0? }~ecy/~)dmo w@ݚ+՟ϋCg԰Kqß!rM`IMى}.ֶ) t*V̑/HkNz::ӊp/O s o_ߖȇ$9E5+@E!JRkayH:n(P#*àƌ]>~<pE}eS+_~>y4zv6C8?Џ`[:cY4:͈R2} HX??ّ"#r*cjvu^=1l \Jd5$,V(xf r3w*eBt,y4)Wad,&ՙݘ1-}u#C.}Q1n1RL#9Bd2|+bT]cҘCef'%"9:sl+%D;}$xr#:%kԷ`|{a{Z絿|lLrb58=Wu#w'VQ?\S"vRTעVyT-|Q* +\p^Z9Hi5L?/^C'`޴Ktש'j^"^W&lw]g%#`N )(_$<"@{,~Rg_G活T>Ûm`J4٭B*71^ACP S~B}:tx>B&0ʦFai{N HƂhpAhM /6+ \h*sFXd <Lyh49TԱAPqx,0& }H-21u^b n^Gz@K}۷avHM~#&gѹj W 1-A=6jM %;jy= 7 sN'Nor+Q bb*, @f.xfl; ݉/8XrpmP̊pz6r\̕rZm-G%#řT c0Etf)%Sѐֈ( JN~f~O;zՈ'kzbEG>x5VoR)@E4I1_cÉ IԛOrzQaK3` vh܆BQ< BUbb_5A$.g:5Z\S &K;t|vy5g!~U-p knF6fَuY-8=Ha qt(J+UAP:qs3Q8wӓݎF6ۺN;vݴT63 k K<6.-HD+?hj "Gc:g3P׋J+'0搈7;o#ZgU,11q j႐|:!^F~.Ϧ 0TGj4oKG,}$Է#B qy_}5դI"1Pb6Esy3vcdf Y,\| $e\AeoQ!~sz.V^,)z.ո[4pޡ" 5S]޵Cp=T+6Rqz)JҲ \=d>ԺM>A@I)wD+ 79 !I닀f E>fzJ]O!H '-I(͓_z>bVQEfB;'yn^C]X:IDҼܒlinG=H۾Ax)fL8cMoVF`%xx OνwVx6Xyx_\Jw,NxtcE08|ݓxΧyAu=QUTF* 1vyviȀHEh{52WE-\A%OUE1~Y_I ኎xуx^6n4U}L4}_%z__FS<62N"TS!-k7Z26}.f f<rۙ6;eC TȴP K:x{ qjQ(kMRA^C^NnL.t8]X7}Bo&jo{9A6,+\Dɓy G˯ZjU_S]ZЖQpXYŖRO,mޞØ'deZyK@ xH?ț4RŨf :%k)~yq>x [$SKѢ) ]yAnCEp_?xĹWTcO㟥a!M|k`yE#*bIl?emu*$+(2\)z g|./yWkO- Y2`K?U=.UH7ϑiv8g8m:~孒-2o3`t8]ѕ^E4v[m==)'y'g-Bqt5l{L,I+VE-deK;Md`M" L * OCw"T\Q9] Z cKi;uɗGhWۍT\fzĿs3)` ;[Ҫ( ԬA)*4s^,!MuvasQ p\:G쐾aצOY߉Bs8h -~H2*;t''Ǯ|vu!(SN*"uP 8y}Ba.Ĺ4z3afaijhu ~rjb1K|PA asYPkm;uJk W@ ixG3C7B=|XЉ(}E#$/%^lW@i7>Nq8+a^\uD^T(c¢cji(H"=ବtcOH@VU})wO no_6_ S3/=rXc~!~ȣ|OUFSpCk\:/D81mqG{g:mȽ%!N3ӔTr>HWdrߵ1]ʧ< ncx%B-H:\<" SOCIl$j&(o2OuF/2"s(rٻH=42;fYiiz:I--֧pJ,JX=SyG ڀ#죓Iݬ-= ȹe\0Z/h9$ї`45~^2'Rc5_h̓/ƒa#ēWFi%0$:g< _-DP3 ~UwzP}`˭`K>e=Ak,8hork@L]6}oa MP}r#G 9U%2gM7u˕KHƺJ+ޞv i#[\]CE qbjwX|8& FR 1y[D-L3./ *`MO Wsj.'*!ڰdf`qn&}VP^V{aʚrol`Zgȸ㗝a߹Eѩ>3f$R/YPSl2 zV/ى DάgA[&2E?#X/vvB]*\S,56ǹ ׸+*K0!<Psio0 Cr|\K٬NӒ~;6ǖbUO)p^XQ /Sۻ?@ϲ4eHxl31농E'O4艮 D6bNb/S <|vLd;3hcbm&T?H1#޳3N38ӭEy3tQRt}OeAV&& FwtSjdj)2g8^qD t-˳ z|\M͂UE_3K. xV".2 SL .ⴰa9 X&`[[B{)G\zLT,M{oy^$BAbzjŭ“*!_諘)pלKxgʝu{`%] sB'T5fӼgEKa: Gʧ}0-5l? v-ɛuB|)3ua*ܙW-DoӐ;CzBA 1f^0Hk< ~yK5CaVB*HR0_gP ,9Ү1=iy ͛B\v/#˨x,JV꧄8vHWl<9`iZ` M2^^ St0]kPZWߐ":S]%j]\q|-A M{ns$LZz/2T)PL-r5VF48dçkr~J(ZKmṟu Ss#U|lLޘ#ROPs,ɇ/K!x/g+[iO^d5DTڭQ;wC +3*ʘ-"nqd*JJŝ҈p&srfЙ {5-0Hc'dՊW1[:MguNAmԊ+R&=`FZTױ/s,A 5 u5G|~g1&1RuoQY+>zڜˠÆZJ iyl}rg=ؑ&$Lķ/$]P5X鋦frh. /g<^)SR4f㘥߾n@E9=.Ŀ!OX_ês>V!^h05UG_ 鲪Zأ8rڸnf X{25nmbXD!}8nEzl/jЩP|D} _܏i?bF}(O䆕zۧ^}j[JS`9a 4DYWnJRWZ⺵X tBU+iWU 4*nv,x ɜ~0ԏ :LO (WXD fͮK@6˓*yy%Kֆ>x-*ŠD>DՖZO8]tbCB1V*kd+^7°«l,Q؏V3;:_s#k(!'O%3uXu} ڸ cy1џEy+BS,gEWty8C{<Ĥ8(aD1w@*AkvsYo)&ڮziJvP2):Ց@Lb*!) C[f@YC^֮e4rd}\!#`\}ͨx5gI Cd Cy ?}xm{ץS]$408Vnv=uZ5Ǿr9eIì56yԥ>rc)lP6N4PhEMqĜvz0iRvX|YUO!^uK2af`CMNWDl@H*gGhG-v֢`9TD#۫I:IɳO&'!U尺scn&LŬSWVӯh1 AATh$')nYw`Ks1ՄY~#2-[[_3YQ}o1;V璹{vK5ȓnC2ekl9ΥddpV[ T3qMH^]jn8kpy# ۣ{&UivH1ˇ=.W&k^¢}q:MW8GA6xv-C)ZCҷn ?3wи%!i/OhD%c#a)i仳 tz1Hd\)ƣV7@N $(_舀n>5ͩ[|B:)3:?/ s-b4V\6)2a7biT嗖ؚεg&vGwp.l@{ʇH!v|CY /5(UkӜF=EVj8Rb4vS5+=fà0r uC ˫fcḲ9MԲ5v d 2{o8ZfO#T%@x"Uglƀ,ХZK s׷(T$;v~| ^'MzNƈNF&j`sDj8/d۔dZ$&d  nX[?+SmC-@Up ߉3J&tVs&9)r4)"FΟvkUNİ.Gz49HDd / -xԭ'^_~@T 2!T{.J6̧IfM\= Tm^&@n0`֐%[%Qߊ!?&7/߿m\F0 h6KikHՓd2]'(wT  vD.R@n2Ef#2LZI=$XV1f}\i g5o|w D IX)"[8n7_$U@e^h<ѳ\p䳯K7jq_lg4\SϢt UλhK23b3|Ɣ !cYRGen@fTp2A c0,Z g/w^nKQҘ3؎IZ@doDM:@WpK+<CWxLL7Zn#wE*4d<9z ;M;MHCI.Q?OJӜ,o)|q+* y\ڪ{Dǥǩ4Vs|1$%4}7AUlw~~XQG㚠]տJ犳* 4ӍgFImSdPK.YI *6AK6B3{3f_|or[֢ec0°`8EآvC|<i/PhMP=!1N:$I:v4YHf5AR -E `6Lƥ+MA~᳄WTݡf$gZf Lid2-.{z6$c?@H3O6WI*FRc\yo"S.^Md&0$0hSH⑑dkWOlċ`A'!N;Sg":h`S,lBXmt8n4"&Y_L6d {M|6N7 vǨen~JZ;H({\ek {<-VTa'~FhFL}UP@0jubLJ@s5NgAz#h5t'bK]na*JH3`&Pu/! 1B,er-oMÇmdWuCshmO+`4 x9<|O$NOF 3(!  (+Q)'( c77eJT%o[T4>\3=57͛Z4RT&D:ٜ'ɨI8f vF ݈z+(zP$-Kv+Sy; iǽ/-` m/ 8Q+?v3n; !T/xŢm0,7? :+Gʹ&RD=;tfzg@w=d8awn$b\s0h|t_~= "&Н̚MN[T(C>AwB<|ۅ 0*Bϴ^U>u`7'iVM-Oz3/ԇ*ST-Jjf~dц23DǪ#%.vPkQ)_ TPR%eG'{Ȱ)76&}.*ᐃ;*u&)EЊ4={I&旇(]AKLNRӾI9I.Ty)8\SGSƓc\ݛS"DdxփB|-JAtW0Ykw*w{PP!w @AV-aMbt( [09ld>L@؀cfbŽ@ Y$Oq@R'W0HsGIqKAc ak,N^Ū  zy&lCq1ʔeAA E$~n{@8M{o%W&eU6i.aw^H:I 慱2$ہRDŽq\v\.T7CE#exBX ݇f%WmDqӎTcrzN>ov?IUi5I+xHOμɟ֙ty {<Y*]DiփkAոs?iX\P&-{U@J[mlqZψ5Ʒ/_$*eAZZi^ Yh-v𶗨Շ-gGi!ޙ.ו "`58R4͈ WCag s]JFs|jRdAHBFeߺHEx;]xicdTX|09u7xS M UJW`Ba9c[:Fgf/a\VO. *u7&Ք?BȘ Ei82026]TTl&:/n/=4-Kch4({<ȎK*qbx;:-S/W^X_4oU (LdMߢD?NBg@Mx:}~|L< k;f1o%oHCp*@N_K ` {ɧ'.+,M L%!]#fhp68 ަt8ju,f A z*yb]>BFPpA ~i=6cvd>@!M7o7X,N % >6G p4+s'Ya-?NQsQ;7{X])6GttKK_Y5?D%Xj+`ľ aDI%߭ĕ*Pu'B }\E̷;+[K7yKM* շ` zhk3yk>rjxkŽKV&TfzAH9c{xR [d T󅣐; 23Hnu5dj 5AR7b1^ 7%-U^W!ebW ^O&jz,r:Vn1Ƃ"v 7*p^BV/o[g,.o)=gǏr2.r+L7"G{ޥlwa?%*bF}Hx/S[j,DCcpS.kq}QG5ngR0xT4zgj{fϚaIj`<^4?F.oN;&HVp>H"M'Эf3^+}_ ИȀl,{ʯ:U9ZUV:\=Vx '>M:xJqeqo!+kj??Ř|z w;_F%X4հ5뿇~$+ pU<䓺UZ gxoe>BemP;S qMC7ۼ/,_'/7a4YbK9 @C4hdjC-ya\¯uC_΅KZGp׸#OzfEӍBgIOf#`v'Ą!1=Ry 4NhpMS!: As8!O%E%T2%v#ՠ촐j䀤w[zo-U]D8t h*WoF xAG\kTMMA!qH"`)}:5 j`W0ǢPZO2W;d$OYG0! ?8qZ11b }Ad t WpK#'L[WLfJrvuU ^_uu̠v:(;=.XTSeKP8Ջ.RV[a|mʠSDqngJ0yN&e*4*MS>[VVқqhZ 8Z|Y Z$rBemY -܊k;GF$2}Lȁ1 [YEFQ#Ҹ+ܺlKB7Zԏ_ka-6R(i Kjk/7HETUnf®ب3%L:4h.ނ'J2ZwN>AU pn/Ya|;d 8.6`]/O]F"G,Nиv *Xk/Gʾ2LR=%h&+H##3O`C3*&:` BI*.ʼn&XMC]pڞr\"E61)>$o,0trDqCӷ4ݔL•3Zgt磅Vb s+ɨuF OS}h~t8$'clqNPM 3?], Hq[{R)4Uœ-Y5 h &i"U"߾5nrlzwTP7g4UpyXoD )_dǂrfQuTy5_cn굟'6DA^#z:.E ya䨥H~JT3h]|=В5n|zߔ6@ 0AiPx0?olu#),}˪$>fL%jLK;nFb>*f*OpҞNLHmaww-l,O쯼⻻#LQ-DFEy&@k' cI"/㞤Tr_`1;"/ ;?-᱌I24XՂ~4*(LY~5bpQHa_N|a=yX'4 ͱ\>4< :H*Z̘= 37NˀU0rU |N =gi^l%2 L޶rF u81|G6ndJ?躱tGfN?” wFhԞ2nncg60Sfo͢׾y$P8I+G W t֕\xk(EЉfd]~ǣ>bd2Cw 7 {HObch¾.jb:T%S@P$8ԂOQGRj"yQ(Xj{2 ԜSy,P٨sfiT!ؽʬ.'*~25;ncXv&lK':vjK~O {,B@ڳυPj?n)SSv'^ԕO&X  BC j\Ĥ#jk)Tx%DQp(LgD!j⠌AtU?' &WB4|Y;88M,_4_O}9g HY y&DTTʕ/u3y?k PTr y'wԑ}Ъ1D1׳(s([͜zsΫ}Y45qVB o,JۭttK)l7z4h7g !E6'쳰8"p-v(ᙌP{B/}뇼}6%(=(<Ɵ i1(mTZ.Kync*%^vt (a%\I1:Է&B5r<%r| wz'6ޢ}|(j O1巘x_fJF^*VUVfε'Z/#?VusN̢ -v VI,Kls߽|?P.Ͳ"B' _/edy#Ób}8J9f%k(-,[>(1 SDF a[Υ:+*FS{Q7 Z7iq4GY_Ѻ3hN0A`Fr8,FMF1Opdcm6>kϺ!@Lȶz}&6@HbwU-5L`w~Cw;!q,d (BXwZ?3`xW [i|h-a㽹FX$#A^-齚7+s0 etVae{A&԰u1&!/d7|ޜF9E-U㱛yH{]{E8b8Sք|a;t.TDVى_?''G'3oKG!2}[AWxAt%|cT/4z.?4[O5ZقX+ԯE:Y4.1E }(&,[['ӆJKL9P|cea, ^ ޔ BSw8Iϔk7[MLEi\_0'(*VW\?q*8P +CwC2=?Ќ /}Ou*uI6jq:L`օ) /"Ȟh/2uh䡤:'7h-sg)PVGh4M#I8}d_ :b>P4c yO5zA8]{łNi0/ҨNM]?\CH)ԀRc47[6X:긭tB1;mn^%!WrPInMX؄R4A59Vd6<=2U"_עyэQkx )INa\Ox=23ؑ x=UU(Ca%} !A)=4rhM["Աr0ZGR^KV< 2FSXD$Z_b>I3EN^ӯ`֐G(JA+.@/(VNIU\rbץ4w?6 O=lF< i!IuK"N+p咦G jmIgs5@j/#8Ye b#49+dr>N"bcAPmZUl9r; iw5B}$=MKɸ#ߍGҿU,6Mf%Nsbaw"5 CxXcǽkC:% }CX]d54 T\oOWzS,N<6޷k*PǞ[tI@z0P𝜅";j,W: +6SmjӲ?#a]"CUܼM7kq3|2)nb[6 6!E{ݗ9' -;!;?4K.T6U y)}I9?+rvF]YD 6ߚr5ߡl]zvlH\'zShJAPU|!W#f<(mrc!- R)&a)kIt -^L+u_\z Fɢh!W}:^3`R+[b3(xc-%պx;_ ^!ڤKH*2.H.L[Xz%2l9N,b*gZSVDimbD4&"(9꽾ᚌX##{p>fm|;RI p=(Ym~ᵱFRDEgTv=L4TE4\ý/謚sɳlQխ+]eϾU$n$ пʜJ˹2pF ҫN&X!V8cxeW4= O! %R!p|ub~}Ѫ]~,q*Z"EVu.:19ӧ2b|\ pYRYk{>s2- ĭXxxM9Dcv7XSړt۴>Ee7FoiOUۢ/s˶5 j\(N?TzN#3|ņ׸21͟-P$d&XlN(GS?d)k29Wރ|c qߪmYWnR3J8AׅU\G;JutY U(FOɷ rğ{"| W!IVʭe:i!(OuYYlyc8]bM{Svz%^_\jnVY,x󉜊Y;]1܇B |ePp "W\/%> ;Bn[^'o7mtV_V0䂣m~Hcr ㅠPXjH8#|i_$-94RTrpֵ u`!U4,@gARI;(d"25_x9iUW. +n)DO H|SݏG3Ҕ;}Ym:A! JG\]1?0-5A!o_xQ?͒xPsQbwqtuU5{X̚`9P|l I=;B2v+;@.ݿŠ骷Q^ձ}wE<~Zw^pQ@mo>dfV6+X+O.хĎ@LcIzGBmZXt99zKU[l|zQDd3`5)c BKURT@1`9:q%&$v)=`t CDkDW WsHX(_a匿s"z}k1Y뵞݈T#c1U( %n[v>Qsۗ&֍~CZĻI̾3Y)eKϋ|Qpo<0cF.&0C(.H Pd2Haj|Ky_^@BּP X- | ܅{QoI^ f]1ґl:fQ'kaxGzr,[PCMv:gos)hq|t5ʃ݇vD+~ۊ`ctV^'_ ./_G( K*BX,u f݂Fps꾡k?wȭq@D6 bM~aĦM6QvΪv>u2Ζ\&ďHM'#yRB8v4fcI4%ͤL]v0#*.g4T8怵EJY`ӺIw(MF]DP<+է@A/T'=c 97Yɱ tewFpeก5i9* (' tNHƄY'w@N+'؏G>8iV@mo#7^ rR;x>XGՑߎ;{ȸ˔eIBKN wy~f "_ynU wBk#%+s5ɰKD#"XŪ"!Ş~>7)le&oU^VY6ɸVD%(j̈#K `gvhtJ_G[2B=o2kt$P.N\=W0b%<̋ UPĽ0IvCgŇǷD|Ik7 w_4/l*"A6+N5R!&cCv/2U}V>LvS,#Z%}ɒu4Ý8 5e~h_f"w/#( ['keYz"V*)OY7'yL єd*N4;!6ZpZ`d\:IWei:^PF>S,.w+P 5[ޒ1iq:rFONT͗9 T8d&}ޥc>kOF[{w:4΂k]?;lo /wOaUw`II>ARLwgA]iٰ@)0E V?Sn-p3۱ΦLm'Lc_v&Dqhy _͖AfS$imͪ[IM<}Rx#]w Yqea>d2?4gִħPWBB%rh) ^W8Ld/|ۨmڕlxD:iM12Y0p꺸`kC/#W:=V>b7Doh1$.@0q!bih8GiŴ(ȯ}Dݢ<9~ѩ|$9I":%keLU{<7^DҨXMyØenXʪ9 14#\N✩$p7ځ 2̓v:lKCx Tڅ%F$F&{fRE& HN~b:'$,irm]oMSq|(x0Gq+> d2aDIsVLŅdZKi_Y3U<U,Ȼ3 _HDF<)Nק4\Ӆ=VʴDW|ƂJp(t¯똵{A~i؂4K&'8%_&Ǵ(G5S_npR> Aaq_z1I&1ÒIdKd/u!>nMI>v_ӕ`oZ.NF!ɚS+!9Ȗ =bVեfNJyOvk; emsvSn-$qAEE^.t0A:;Q^#CzRs^M=#<-lͱ_ׄӚqAz(#06PL/-{)[]5pֶBu>M R~dI SOd.U{:\LobAOvUƙ&x?ha ';RКBnAsW9!@w~14hx")BNUN2 wcN+ jK=fUBҍ_ hw<>d$VEkVsO1U"OugF\>&<6 Q=ljY?8P͎ͽz?GzQU`ܵDEd@pʦFux_.rrqb&e٭hf{Kt1TV~OȫV?=)ľԬ2q/6-GnpIHˬf͋r~e4޴G4Њ?k\-w?!j\i//1Y..'"$A8 9BE!~Lg@AUҖolqNLi8sSxEG -j0H+% Ӷwun-3EJWL=#ݾJ}ī7CL<]K{\#?'Qʓt;nm`,!.xs"QU^4 SƟj<>jWV& rwPH6y~f#-U(P9K>rWM,8`)Xf'G}EgH*m:hW{Ӵ٩}#uLboЦ\4A{X>L߃f] ~tgדGv_aVe:EN09a@^ .K/H}d~]9VUqX){8ӘM>ZMus $1OuI2O,!Jq‘RstG. ?z|Ќ?0mqr clĂb:Xa{ :*}T 2n<Nos}'}W ʰ]24-sݑŷ|uí"Mju!MZvXQ 0KβF12AEADVG#ЏlNo5X#6{JBT C7j;2VnZހ˿$be ʼwÒ `NZDֆA8ZsCVba} ³ u$("Oj弌.!aG놀GK&)am\v2^9e,єۊpRXP8θvg}Qu8ë9$8/if&`h .*>"ۯ\v࿟@Q U )%(\"yed5dyD@oFC10Ow.R|1BFXI!%Sh_q٩{i$<\qK0#T-dv:.ӽHNP7־3ޡuc*FAו4@F3۵dP c ҰmfmTOOOZ Hq Gzޖƺ t&18y;kJBpY_3Ѥdd>{hn~ZGUr'BHJLn9r&CyR`VHBT*VK!a!$.Ukf`> ( Y~;ENX\ףjntVFZ*Z\X*s`"űݍi8{b7lB+g5;"M2 _Л0ONQ^/{Q1O gkg5NJ|~z [L4]~nf9w%ho(Y'Ȁ;c*'aon%\x K2-&^]4Nۥpu!6o|ڌ  A f;LӂW F2xfÒsTpWkA+$q&@;,(,UA[W0ƽ1ebs{Cm@BҔWd[%̴g>c2$|;\=Мci9W5=>+iVUV G7|wܩC~X׌+dJi1=5$_L#G*sM¥$$5P7t!;`? ̠fUXzVq1gTEhM'9={,|G&; 6yHBQCT _3ɠ;Zkw=I3WwڧEY~F5" IJ ?-3M%fzplqt4s;:z2Nzj{fl&'Iaqs;8lh!b6vׯa,p E; !uHOͪUcII{R('hJG-IE\*zF(%{]U1:(woQ6ҙ9.r9ވ&5׎љSuMaX$s(StGgVfdӲIiZR0/ #}&k[!$X%%d R_fǢSc:~ǰC!w ` \$ޭcǖ zAB r[P#qCExx.O.}[Tqp,'V{(,'xSNZ ZOA[̝y2 5͡'4hI*R~ d mo9vz4$YdR3Rۜ5}+i-ɨT$5ero> X(^w`g왣2ORH8Ve,sò )>%`qMK`<О*z[C_m[[+mɟT 煌>듚5;)feJ| (j@?ČQrs9ޓL 0WM>hrgUQ)on.&B{>.yrc{wU9 *VmݍJV*fչFD 05i+|;+6 \?q.L ?+cakgY44;56uٷk 쁺wIֹ5M\&5'{1eH_G89Fg[ C} r1)5S͙S8|g*ja)rkmVC8Zyaām呸Iy3%~y=Hm1H]|۽8POzXI?LE GV&uKTb&rEM(Z#)DHOg{sZm/5+s?H;[$i)2=s̽;3 2߀߫'.*h<3R¸\myy68}/:е̉9%v@岫{iX1~#/Vvoo9­ezx3 ɞ R:ZoݛhoԆNJ_t 8LFBͣ.zМS%y,w:_-v؁p\H@ON) ZFe/#'Bx=XYY@Ӳ$Jf>v#[3Tv6ozݺ[nG!\JUݝ3yeom,w E+%-WU4Ԋn){#}.2 )&jsd4#o+@%ehB;YNOY9P(,e1Z]vM5äsfF1( ݬU.m; lB}1}N䄥aҞX zp*7'ϽzI;4pak(b~|ZBsKft}PF;u4 FŹkqP7z0 oqD˫˭Ǖ41&5V w^cP =-m-0 *r0.s3Χ#Q>CL%q>1?}k mc=WZBxţ4"sXt-GhF;>bH8Mp+W AF?\,-Vqmf3j-Sou#wjrJRR|:RŲ I~k(kvr2D2ϥD%CWbj{#a>}U:YT!^*?wR}#Ay=rRm~N Ή)w;P)6RPt~!¨ WZC3?WҦLA(ڽ=#8,ڡ;7'o4ReWjƽߌdT:E?dɵO^kߕPTI`p+WJw+=I{c ]zSͬ4\#[QX}};f],_z̋"2U95UMGq+Pq+*O`?L %G]Ә, b)Vkd.C_OU%XzT{YJtץ!ۥ@.5^]농>pһo i{"Y?c]s`)X YS҃wqK< b!߯/&nِh-ǟN]C㻱@ܶSlm58i#qb/95ahC˾v:A(z4IlP} 8Igzȹ-Aeu,[M!>*zGǛmVFNDO\-RW<[p;MzUIgnʃJ^vyk# t9+kkglJԫ)TsG׍@YQa/Z(ܳzoAfig%@+Nd׿V@#"֦OU(_ zvW/^SonΛ-zgKuHI IYg]IBQǗQg#|O;Jk| k4B35 TQDn3$ f<ח 1hKqgs[Բ JgfXP?YHFkxg :?AlJ$צ5 ̥'UoI#SZ >:<> [ -LjB uV\ϘCR79 @Z6t g7DWMKłvCTN^שeqۏ.+Z7aTp1i2=eKm)/z.b< NБhH?q*,oqr&fx+c榞|*+>? RzT/,Ah<@$asjۢzӪ\\{zk]L(y"1>QJg's'O 1D*hP#5z;ߠvaDogabΥ87gXXe+29#3&WZ'6$ f=o-`EMj'`~F[;|fOF$2%n*C+DxDM>`><ws !maJM߃{4fMfd nYe5Eng!:^.}y Stх"u%LV5$O7C\‘P9%9u%ʃ\;CZAI@%*|`3LkwN-0:e2;|jB%?n$g +ٿGhx_jg͂)q97KR a;[lȳ:وAU9~"a8ʖaP~k0!/~%jj=Y먲)c Gp(xx[iNmGulT7Jƴ|l # $"L /nQ=e#5˥AL^\p40<C&Dn f'#'ԚIQ\׭WEf;mxGllE֪PfڷKPEq\Nn}ʣ8ˏV HΏoTrEDc;&V>6nZZkuryHgoIJ<; M4+J ,G}GW=QYDt C]D`vpcލ99!i`Chc*L3OO:OlffQ\^v"#s | qBGpeۥf1&\xi{Kѽ'VóT#"o7Ƭ3G{1)`1~-mzI3%BXgh2W Gx<<,J }p3O;(zcФ;aGU-y ӓ-w$ע W;)ԚOUGIL7kҗ pP8r{[WݳNYt\&Q^ :<;P=;/>TZjBjUW)aEjOcTQ?|[x>Bbo y o w{զ+ryD'tY)IWXі _zGz[{hS%Gd,c8~.hkm@ΩT9 Se zSwR^r~ ׫4 +ќGp$qʍhatuX/X`߉>x1Xc"~pۥFbP o:z %vLö\Sd4Y_XIy]oH+=2釀@ebQ TY89'1i@VcgR9צFm #e#ߣG *WB4ci?`DA5q>홊 iXgIϽ0{F6v:EePBs ʨھovjԛS+]or|WU6z֛@PkMIdQuK7 wF N46a8:bC@u@:19ZD-*5/{ uB@B+ ޿?bȑ1Jx<%To h;IԷxnx%3e ٙQFP4OR™n<|ۡRuF>29}'#YQdLμhbas߈J`I5zՇ>ђf+iM![T8dc+_NE'Ҭ$ r=c?U#Xgt F=n T<֕>X,"GZ٠֗ V6({]RO^{Xߓ7*++36,'#*_..+ & w&fi'WRw}0a:Aff+8aZfbzm؜\Vu۳ɕt >a8~#,K>@~|`}$ Ѹċce^H0gN#wnZ)P2ܕ2Xl<_aV5߃3|7$32q7,Xeu>ejSq7bu)=^þ+A"Hdoo@GlZ/@ 12%2B?y2O61#>d-Jw'OK/U+J'LRAL?ƺ'>m6 rsc>x/*+\睰&zTAX7~h7~7k*]&]i&Kai2tDŠ_kMdIwyܽcpQQauv 1?6CoIQqt<շES] qu覂:adk<#ȺĸyΒFh!#Hd?/\y5ES96JȢ  P1RG&,ӗ//{h͐Mƅɵa }Iz20˯,Fh,h[vBAV m5&U[sa~ryg^N50GD$՝KG_A+~??jhqo_1uY"wm_*2Ca_3K@bkfa*5Rҵ7ve !Zr/]1FCRmO!rT@>2q̜$,^nH>v?o+1)OoyȺ Gz"OCfo_W} r1ars٠}${3sGlPKA#kVНޛy_'񆆎ϐ*{1 >]`NxF0WD78;.~F$hn&04KsM:K2~L=qXx g[Pq3߯1NjH_q|֊@|qFt+＀| A8k8Z5s-e3f,GKW ogvv.Ҏ% Z*O]_,,ě 2=X|UX;_(7xݤ5a}L"9FSt㊇Ɣt@1^SeAwUH4Z/cTu '4~gimB g6x4_l*UZB+^,Hs;.vfU{3k.qS8XGZ]6,4+q:m&v}`vl[lp*.:3^E5ϗ?P5m Lv[s`痆Tsݍ3y2s=@FϠMiG#;^3Gfzqױuz5ƩG p{$F0v> 2%C.qay\ ( w u\ j' q[{i4}]qnFFc2U)UJ:+dnyn*_ ZQ"ޢ15=Q*,xxYu:x[B1JWAhe2lbh0+FJMW?*/gN={:4}La!4/p%y 0rȘClZ >OODۆg|=eF75:+sd )H::8MÓ_tkQx|zJY,11=s=#:sU./g7*dQc[.g4?b6JZOڙm[LOۛTF.7VK-vYw,A5o sVJ-{ZᐘEQ12JNR|TÃN}^ :5]*q92:"4>i_-8Rۀ|5e{@J Tq>хփMf!s-XڭjtHr݀"?چ:X86Ĕe|e=[}vT`I q )]xB"(8Wp܄rؑ\'#Ud eH@>N,+q8t2>FC7RfƹC+(ukq `VI@*ms$VDi7R V|TV;))4u͓铣k=y8ԷI5e 1'wPZm ռ#9Yf`iI񊿰x:TNm26Sk+GFW@0~5fS7Sz|XG!W2-V,"nDN-^ZU*h:磥T29 I33#WT4 ^ڨ0BƺPas =LN3Յ͸5t[t:y5L#FtE*wp ^%v`&G~Wy/9 XXW}/͏$G }hZ.,MŇ`PhI@=LU+/OQ̜q1qV6hA{A 2lCG.e=qʘߵ0@iO!F=P J$&  ؑ?8VNSx jӍŸtS.Qf3tJuW\pޞx`-$>lV>&UYHc @ʐ2^af\&{a>@PXcX)_-0dQ# i̼ ;9 :*k~WÎ;9iE7{x~9Wʖ5[7 9!zIf(D|1x7OT[)cE{҈", Yȧzk5v-6qrYȐfZEXP\LV܌ 5>$]4Gy!9B*?FuRN/:=]S%}vP/SY4pT_'L!K]Y&m"ε9fk+r _z}^MӴCzMj]gF"ltګdq~r;xs 0i@pkO%qo{1N!1uISҒmhu$8;   ٺڥDI-f:`;Vh F@,p%ݚݐNmȝ}a(@R vQ{ÃxP /"'oSsSq,!ɁQ(@%m'ʘ7lnr;#?Vn#5GBNoKy+;P\!@]6Ѫ7o= 5 egCzf4lvdǞ/d n|)b=>W-|(" (cG4m2EG] }߆_gKkes>K#d@KTe=l5o/>ſ*xT"TfiݳF P$QN,n ?&Pjm[Zt5H~a:Y02h KB.=zAt/6D0d5$;G(q eXcBȊ>]%<0 R ]1A;$Gw>>m^D U׶S#02aqmq"²0_!(o9ܨW#?xYMLHUB) \4G3D*KJ q6"Pl O mow>E;P.B 穗2E\T~ۃ+.7hRrCeG 72'3ײJ(Z* ؼLߵK+a1[sud!^>^/EkVQ_[S7F CAD6R噥e5nU6` lq MXNњ($ p/+:aT*<Gap (\TP6hE"! 57iTuZ%+ӳQG 8dsitm%LLAx39{}f(c\ i`Gփ/W3YU=)"q^!tfQ"{ZA #fDӷ@xq 65A<hG]aƇsZYv Rv6O@K^xg ja_&uhw0vwK:fa t20Y!@ƠiKǯ8iċd&.{FKhaHR%b@=]~E_Z ϕI`(-g [{D4^x.9z3LP>`X;a+e &d8/dѨXǏmZ@W r$'켮~i :jT#ϩp#1JnƼMܐ]ѱk3k LؔV%1Z'2\V*g<Ї4+syF;hw{FjJI"DSH*-?DŎ#Fl7Zwܶ@q9F@Ⱦ[c8ɩӘ=gÆ`].UyYeg̬ B2> M ݪ)E]}L8nBsus@ߐ*ߡ۞4W qB-\hb'VF3m= KD'5C8$/w?[aKV|Xp]P G,>l(ff¹ J}.BըDC>(ĺmBNT5p˰0V&!CٸcA /Nb o)Vfjq mZ`©Fe1, @+7vKvps12H,4v~{dabΠ63&&RNJh6VO$r-D?F{ ^u y>ږ\\& ?hŰEڏ `VTyX=z:Hp'B{l1SVHZDAHjyCSٗwҳqfJ"2_8.chuە|iF%PZu-WlJ!ʫuΑC,/pv$[ٖ;IzVlLt.6y}Gbnj-|\=>*)>}5Uz Qaع7Pd-{ 9XJ͙f va$49MfH\i\Dx~Zb0dJjV\,xDeBG,rQ|m"dRo"ޡ08c*5Օ**X>sn^QhM4+Ӊvslֱn@V>s0C)~u HwW-9N)sRI zJdCdG]Joo,x'p&,"2s.v4 fz)θ}29! L6Oo:_pk`c"Xx?|pdAGӠVjEC#\U~gڄ_"2Wb1(KFFx|g!f0QD {:L=I2cj^>&> BRhhEω!9.Q_e.8]O&!qA*GzΎXF6[ w+4?̓VTSҡ1v#e㧪h[x~EV;i[&}n': joe75kO>ɮpc*#xÅӳn+0g46lO" i`ܹ BRanbfj 6AqZNQlNOHYu/gQ{p&G&-LqDuAsO9̙sdtWKYIM;(Aʙ>@u-?x`kpŚ\WmEhǶf/$=øG2`1vc0 &vtc;FNZd {iub'"jEA Nr$NGv顎yJ\wYZ)'T tW n[{*ғKDv G3y*1si09"HRD^ؗ65ntZ6EM`sP4O?{)0T5 We@0Ѓӟaޫջy%"$Xp쮴 rq1C#FYQ1,F[>Ĺ.#׏k!?HOtC`@-8/>6Z0$V_¥/p<Iepnz &Y/cѾ cTFPaT2RT_cxM}5xF{ڏ! X@hymt/0YKPؤ=y*lz`jǸ acmgC&[{*$`+k$[18@X,KOq@{mbI1](9~JP{g X6x:ɂ7 ci5z1\״4:RR޵x|FY`ڥIy":cD Nm&mج9PsX"^WOBޔ[w¡y[ P Wƒ˂ ]-I~ =vSU1 2wuW"o:N4]|a|>G7!@#5(ӑ# 7|tDD oBxpvy_`W;ռWrh[" RSF>k˪RA%9k@y >l &~r,sTC)lSdWlßFZ"'ZZ5;=M]u}&m.%.4٭ ۢhǔ?`^`7үk( 2}dm+ a3+oHX}'ڭm9.XЀ}:e3L#tnJjy.z]W;jdJf.>Ͽ5/iKv͐/N={>|) ?kN%5F*)At?W Y~[>[S=ҴE# `bNwhJV j*R J%j cYݾrG( ds ٢Q` ei=73yXyPn=0ٹ_CEF[f{+B!hD9R`q7ȚXܜODDMס0`,\˓3tOψ^gx)V@t#J%(&Ճ| @NEϊE]rwG󟪾Sr|fҡ@4 с;{s+|4T jjԮ'+,_1-8ܖ5jk 极r]uc$7)!5MqPXLƩ:*yTPOodk [6)wEI.ct#jTByv j&T_Dx#;bi lQPSCl{0.!aGL6>!q.pV-MVMmqzE)'&ZxBWGyL|EL>EoEm9'6c=lf-P hV [-צxl҇Ya_#!%Vk~t!0`l$ 0bLPHKF%qaܚT&,1M<]s9TAS]FC)蔶WȑVtXƊA`:Z 4Clx֖Mi[/f۸ : *PS# }ܟ3D?ڗ\kTC h+7=! x~Tp2Xg弄/Cqh|>SFZRaG/Hf@T#w!E<=X ˕3x;pY LgUoVW0 q!5/ر^]x, F KBzՂHK8:6G@(a/ebR>leY>r[!vlJ<["$arV|?h>QhQ Mٞ!to,{h|J,vmNN< ihɣ4E_`εa{} jߗpeQ0rg3ɜnJܟ}ŋ\n!06#1)جg,)}z$-`r9{JYEi.ev48sf#V4ݮZnpݣ:\Kߥ^=YϏj8*:y`wr@7-sqec1uiQTO|6AL< kI&/glz|A[ 3SA>̭nR5b{Gp byO^<Mu̵I*B-? qiuIwr7?PT$Xsv|(-t뀣3w=0ߎ<rƚuN+>?fr!ݳ "j¸a^RgPh+%~?f0J)NDLԳ4 G+'7fx(m vz0W uvZR 27 =G࿉!IvVZt?DGۃcc 2vU'rn.Iif.g#jc͒Eb:Zl^1  *mnW&JҺvr!UhQ@JL%t+t_?}$DK!uT/=n\qpט1`PLQ(EI&T]H'Y36JSY30 VuʠXXN$d}pr 6L$g7.  vV%{ێc+s#t mPP I{u=LqpVB7b/9ԀTh9c9^#TJit%8+TZ{T]9 w7X@cnv1ו ,ÿbQ<8Ӯ+}%EE_`Ep7\mۂ.REk[$eS3` 㘢ܘJ6f<թgmœ#^+]xlĦ*Kjy_~(^LIen$v[$_a|mts,B=1f` Z&o_B?IlO*J w3mh1JS}aJ?m5~ N< Ʀ('BCDy x6O{C8DFOv#Cl{4%jŦ-k{#q4T }ZINxs:> 8 ?O$F=VT[ց ޒIܳp^M? 44PWm;A.kŠAa#B8pKS>+@r󠒶 ѬJyebj QdSb/ ,p ~gI僮~fՎcXUt}jzMl}NQQ ݚF(фU_(H.hEޘ=\ Tn,KI\0Bj_q-B&.TRJ>ذ!tTm#* *y$㩶&W Puxn5c922ӎ式76fWAmvk/*졬X*RU|H $xGvaЫA'ybNG>${ގSqcG]YrjV9Fב~"g+"4Q5w+ep]%5 '*Mk!JkYzwHGjVzUYzvއ>ӄ2 S"Z%}w%nA*>I6-Ry;E?s ڄILI`q'i`LR(5Fp@lḇDŽW֜LN39=L 3l zֵ={0֗+"D ڐ!M` &ʖ(e -Z354, t! WٻF%X Hmː?3L)FG=żF~w ([*)9 dc mK( ab3IC5J[孋-;1O~]n}F@"rkmHIzO(b u|x4 mݛiJP\R?a&@T: $Ê$em^"Uo\Y͈Z-y2t z mUcXv8Y4;"FX4qs 0A1#fSN FJ*j^" H_5͵|wƲ!Rp|xs0Id8ERnJ݊*-S#c.-.co 11^Z>θ(Kͼಬ"k5W/=?+\DYLgU&I[<\}h~FD=y .'hWiϊ`*x+#{lolͬ+N!tWSo=/I[IKPD#^iMq7ºhžOXLAe'<f!{ЂOF&=UzMBV98?)1E].j@ `iǟr= :c3MvN!A6 @^~44xm_h QV%Ci7]+ȝj|;HoإsoPe͂ʠAj>ڼ܈mI֠NgX\l奞t#/ ǫDZYrpq@`:cdZ} :"ߑGΗDwO{ɣ{)G*8*Hz$Lf;w b3y{'ž[C`+! f8{PQWqIS2LEU4{,`WHRe*`c5%5׭ A9x >qNh+?ҁ~cˢ'Ǯ:m\,NMXC-SFľ3`$d&)m͇4:a?\$5 G`AiaGG#; -I \n70xq՘K0j<(~rCh娕R჏Z&?1ߧl#-uˤU4 \~U.5}[6gȪ\rbcR, Qn03^y,hNQD!@bx$3K5P)pA[l:/o1Ɠ)!n{&,jk8HH guuZx5?w`ssH!TP }tzLPPI|8GY<{rәSWeƋзH| \wq;_[6tĪ 1Ktlg)vEn"yj vrT /$_6 ].r^C : JP!V~JZL(t4{|+;tXd]x03f!>\., Oź΁$,+K)gU4&},M䢅^BUO. SO)$3M9Rz_au6'490NSx] TO|oRժ pLehېa'v8g}fWՔ ' 0JXuQ:k_?,8tG|lڷ Wpv64yLqR|9rT00Y:sA`p*5I)YgoaUOm`ͣ!B><)fI:1}tO)HH?Q#Kvc;$k/Tvz= ~K|ܘYUi6Fm5TAtGPM֝[6`ǗRTCוlvյ}4}#AU1 F$_McaLM.P_ zkT$k{p2*I~DЗ LHi\|5$(Rq秢OjWfЉ9}og{ zߨeޑ@'`9(VVȩnG2wnO79#4DZB NJg|$%7[IiPCumbmM ]'GKek \{}{}#።Tҭ=*<uRԜNΩH<8CU^`:>Fڗ6) QGQ (ZW͂*dQrlhY= Kb<,+spW&D9vYbX\DnԡH(P6#t4K'fPcT\PM咓{I!(MP1g:cEj}쭗Vz2(= xYcS{Vmqb -~,C9Z!TEewǚ\gh~5R9.'AڦDl1:0-_vf1;J7{/L}^c<+lf]1c}*J̚Fwtí5 083sOd^@bwSem˯6^kf Twj"V|l:]MxۚTPP~hv_SC޾Ưì/JIũ $F0S!DLO Pr[ލq. 8N]ur-]=),t-FDASWUu(nUZ4ĩضuEg:);jJ_BꞽM_+Ot C"0vX9 .i^N< a> s[5'y@Ne;O:N ie"֒8VT}hΏbM%5q2,3T~{T`;.ϦCY^!+6l_.UNvhutO"BL%݈+ٔھWii-/$Zogj`C?J$ 99H?P*/vm5ŹDA7Gc2Bg(Fp~1QZ8`[Rj^P}6>r<|-{29sW&v'wSlT>1qo|=+u$qo)2g&p#Ѵm<5&@"s[v%RKLmvF UQrh5Ŕ4\&|19/HOf(cʧ1 a.G]A+G];,^ԩ@3kD2-UI_U;@kB*Eu 0WgFzI|6&ڸkǠE ' 4rgr<%ff1 h#CtP3lBs)5P`$ݐFEB?QV-0s ujK㞛akpëuʯx3JuZRtkH˵ U@3=Yk%q%Y\컭quڊ}3k5Bor2e,aR=AΥ3;.-&.?9/X2Ӝfm^eX˼5R>() I_^y؇MާE=~޵ %CV4xg.]n>&sQG7S ~ULV_/ IΈE Mu etW(L4*;۠t@BI9ݴw2͗p֌3Z ϟH,w\AFG~lJ;SLӴh{'n=z {$T!bG\J'V_;_$ Cƭ?x#F/I3H &jG7f-/(.9XYH 0T/{chzg"qTlJ$^߈N h;C9lXV ]~.ђ}ʏ\kkAOɖ`'gUt;JYR1ha-CWMʽBM'W(;?e3ݢÖ? ,<Mhй+旔넪$H!]f9K&:0/>jo׀IM />p&.&x6;vN+65-Wf͛(RayHF]5fIߊ-~;<Z(sbq:gC3 V5fCD,9Dc4tQ٨imܼr28Ŷ ~Wï Ψ wFT7N(Ļy݁Cp,V6վ3ahits=cV3O4Ey*)hA^4.op'CDd3FGRUqA6)uQ@&1qn@lRfԼ(*>cuH!,EgA r 7]qͿс KlkR@HKH[F`n(^7U@+1俼_HK[A~+a_lƩbDO!ffYt<3kfdhWgR}AܫVh-ҾJ_26d醧 p @p#` * v+=;`Z%>H]ƭzV,8"N ja' h%ОďW[+'ޗ ]*Տy{dU'{wssgk\VBd d*į|؃ʒxrU9Eqtuw&KuRu?+thFaBj0|=^O8w{+@,]psJ,m /kNyX]ӝ3vY"Y$#[C!.q J -q")てj8j. XI_B\B "@=|}>ncB"v$77+"M_rKi:Uk*X&bͼiKT}M,GR wʊSJ+X<MZΰ | h길oZ7{hK%_8Ycs.s`~pq::;%TȈ`ԎF,J= Hq쎩:91n1 1[T>; «ƈDu{eAYvac@;҅$Y/p]cΣno*Qo%Ho 7IPJop~M0_zU7d:I_|_P,Ab!6Qc #+&1JHJlIy4X)'&PVm2Q234 녯&*r@lIX6lde=O@sb'c f`&k=@v6\hr.xz#oxw jX?y|4{hnY_l_3b`l)jdzwH@hnF^S3p-S=>[sa-+u[kVLbҮFN:&KD#j>Jf.Yf RxP *0AVTIDirvFH ;̐MְFB9_x&'OfVb!/ƛZ%V?ֹt&ɍCzL)K&+F7ҰJk-Ι3ډ =mҡIugTjTct{6(HImBJ-|~] 5?9>P<0B ؏iCU7$h(߇WZ;!I\W9b@H1߫P?r24[Qq9PtvPu*wiǹ_RwFl)낇wByz04J)wA ê_(DsOD T_UQg.qp͇rEVx/ DK30tCԗ/e'H_kV'YOh"A5`Q#Epa1>W W??N g!a-1ؒ Z|2튷LS_X?y6!V{/,}sVgE1x4f᫣Q RS@X&(dW&Q!UŲuW{0h$[Lg4~u>U*Ay''JI8IƯʭЀs5΋F^l՜t#C c ψXx+RLiCqyC*}QP9ջЮqǵ+|m.="J8/S ÓǩZ+F ;4$U8 v";^)CUמT3Lf|X~pm;Q6Dί&'+,oξet=ʍ\2ޞ}X'FʼniQoZv (W;2>Zp$n n ^I>!f?^c4egZPvDpEB+43 '*cj$5&?96뀳R& Z2 LCV{:0PN%jM)#+8D̄\3k 5-Bp@?J)ȊKnk|4FwosocQ-q{S~('dzRCRԅmM.''ݑeΜa"(~ g5+/I 6e22W'F,YH(#B9)j$[=D='؇wur) GCU`L*-7"ub]QȮԈo}w!clA o|}0k);P] BJj?^Us:}iyķ}MJ'Цh٭ROQ OHnȻhCVl -1\  1JFz@[.Ԕu'I.݋\O"htnF|}~W%,VYwbـUJgjֈs#Kl8Ylt!9x<1]TZLCIkH3bE(Ejav,tR|2Hf[+ zb/&B@ p/2/rgb K(q(`u޼L=XsJ)<7 IpC|1c|a-|Q_ZGuYX\MB׵ iXy).dʫ$&NCpeN~Z8`u‹΂bX<֏E:hb:ϧ"0opT]^oT|=fH^m87BS< `d"ZD?[KŪY~}nmwk:*X;+{Иcs?K%V[؏)$a;j{蒝-=v@g_iډ&AƑe=ބZmۍ.Vffs8ck)jǶ`烱>v\?/7j I;VLe .')P(lbZO*D 3$5L(P]wf{s]ͭh6)c z_tC8:c-?} u%{Z|RLޱ}I7QQi5l6aZ hK)pC=|F-t@=L]ilsN+H6j]j[p 2)0W#Ne}"Hx肻RO]oW y-a17Ʉ[I<ҥ"D( K&8?e]ϴVRG[7wpsnGAHOU?T~`cXX`?kcǞp`NIuwqTW5tU詫aw7bֿjˋTM{O@"i4%'Z_.4p`~Ly;CgZy];e8>" rGhS6#P(wݍ}5u{TWwhO8|N9Rե=ѪHH OfumZQT%kbw *m#8v/5X@NpYxlxm$B)&f8UrmZ"$F \l:[&0qCvpդ f2߲ߣ+b(L/% 4-p| "c_7&{\BW5u+Or[qu28qg7M:HܴJ%ճa/d: lI:bT~ចB f<(H쪑2>+^1ҏ<VuXHA0?o=,Ԥ(gL4`,>co^=_'Dїɧ Og_IcqD۾fLj3uE mgj!LG Äeu%`*с? 8a؋dj)1B() y܁d!Avk/{ɢa #%OkוX`CAU>"CS 9:lؾ0bfFٝKa PE2Bcž˄. :M³il"Ba.4z\-ӷ ``+gwS|WZ<d @w3"#rfxXghȵ|6(azN%8nk}W O)"THn !~8b)U"PEbZp)o@d K6[@0r!J xJ^Fa n. :(Y)Za̾ S<:rT}[ *R$\v T\((:T=oK0*3Ew{;57Zlޙ6]'Ѥ8s!_mn'w"^g4w"nǝ*%+t$ui@@!'[LAJP 9?IhCy=WW4 ͞0E1@H[Z4w1,Dd>Z@S)X+BZnJՒ,DW "yͬoN:h *=̄¢x4ɍ #ޟפIY}^cLbR1ܢqQʙX8$ô\b48[*6V-I)/b%@Bz?cK80QY(ƮAݾZ1/"Vi^Zu1G(nc6%y:"+n}za6"ꁀ=QΆg֧h#cqK_Y)x.fMَ၏.r1ȠT.4" m"?,3nQu a`zF9\o{Rʫvu_gHd̏z8;9|HɑwU=p +-Y8=Ռ_PNV'cyu }qzU=2x7TE0,]iKpǸy@[MȱZ d!V*_n[e:ēKLX͸0^0#<8JB:IDEeu{ 8O0y0 SE~[!s'eW]2i4{W~ VPNӔLjᠽ -`$\0pz)=6%@A 7c 奓\`K q?0ͫ]lK #f0t:B1?J'P"gJHi!r#c5̲';g@NFT.d}BI9A;&-@s9wio0> l*itGY4Hˠ|aGih>2v6ټm9u +m(Sdʡ UdY:@oԎ-hNc1ڀû|j}PJsbﮂDw?#~ 8(52T h &AV-dӄ*3cчMxi3[S(=zԚ&SCP XMaq7%nsqK{|v˦~a::̺s-I׍m8zj|;<șe3S4QZ\$YߙAL1@ PtX݊!#Rm% , @1}vi <ƚS`iYwDXN[rZ"@.tq\j~gj:|%1.{/bN%Y.{den|'2q)؊!3#.p2zugtƑ&x˵?=t#xL $NY.\x1NjUXPveOA9XF )IѓJK|@aME`%v.6#,KMV6pm"}/8ۼSmlg8Yx2MɗDTkW 7djGLGOFˆn_ vV/h4K+hAB4 رȉOI|{$ f+Sze:> b9z@1A<6)ۀa~r[OΏC|clT Wsd@z>t3>jRf7n'yv>WZ*%H.ַ@/%tS2'9XQMv* jgD $T_?&"Ԍ;<+E2ߑ\gQ>ދ*j+jenX4͏$9Xx2\΄6haOy/r_zRnF9)NZ}J5 'QҡWf7nqFWvx #+bh0}\NHZ:D ɵ͋DX6N&)ɐTu]+O5ORz#G,Q&to0BYDȨ50 ٦ΝD'k CK.NqBcKO/0MJ9(2#r%Bw3ʢxj|玲 U@7)S:.r+|5FHu2U=̮-JWߠV*8-\kizqR9 I)$ *+TO9s[6Jx?0h\[e0/)3^\1wVpjDEoJӷC`Jgv۷u%0PEa䁕qnvuϮIL\FB=Qcq0e^ X?c'rShK o: w_|ԿUpRj6:uhT"* & ZX=$$ ˎwaHI5 OU3B$yb5Z|_χnǶ ~T~ ]a(_z&&AkL@:ޛ\Jĸ .dB 6[D:%AF(,>PP~UzM"TrDY vIa_nizuggXio(bIJ4^:!͐MTBJ.;nk Y&xٵ)kNcrpuY #|} uI&F A"6ӇH/8 uLӞuʚM^wk6DߪF4TPFٷ;^z3ե/@d[wgke'D$m۹$L`P869P+%kOh뻌o`~3۔ekhvpZ? S$Ko y[:ђ>=-!ʇ]6kCޣ}E+xV [/w=*BmKO3|ш_"&%1mdsA IpN-x aƝ ^1qZ>0Y+ٳtUhĆVF-Xl]%<3^P>̦10IxCiz|ph*J) VFΣ)p7fu7UrP3 H$F2%aU]|:e )@ <3\`bb>ٱQ5V PR63oO UpVE3VRثz8aB-gO8ȣ0| /c[<$hMgBf\a-͏6S.SslOu!bgjb㉄{ShL[bUleϹ$wW>4 o;Üu=%v6V$'5{ևݲv.[9C9f?!=vik7Q+_ 6گ)-}i љd'f:)[ZHNx.}+ͮBgtI!ww$09\Wեx9ד]g16':+Jt߱~HYPZ76 : AK\Cm-TZJLSb\4F!Ճ|'j8Nǰc| s=+:Y)nک']5^.yUh3< X)ۚ' 6ԫ{4KA̳M'06$lQi[ElgXoF)R^ά1@?dz%B7|7F%k< /$O7( x˺*(QuV9=ɤ0չ8g~V kI];(Ex,^ͳl P=[$F7Y 0 [7J2OFēh!)N1Ast7WEm1d*|?voMs@3LzpR# 1wQbmc7O4~%Nd3hـ$3 5m> mAHvi2Ď3 .9zR!,,l$SYe W1fТ( zÙ6T$g;ȹ k!<+B/cDȢf=T&#Š[ :A`5->GDso BCI .w8^p`զ#"f޳Izh*6N%"G$Nl^8 HU9 |﹈pMݨ^:u 5y:bĪ8!l(,00t~Pź:e|ˣfO96a#<6Bȱ o530DlUUz1#Ͷ'V\L6 `Or=h wzm{)B`{cè* #"0ftl:&|&a(rj['pz*FGrx Gr[Z6=~=[q()6(zLjHX>KR^&CGlGPgoLY-WoR~yP$/]_B~1aVjϨ$#P+̬iu`h^RŮÐŇRQ ;É3t&KAmJ,o @37Aot ]v PKXA q1O:j]IA{$D֖溉BsG=*9ˋ/KW{0[oDFUp% \Z~?F*80*LZi&pe"+\ILg8 -mvHr ` |Sܾ?AmᴦgYvH BGQd,Қ*8B .T&VV Vd>;ьt"u b)W. D6( y%ґy:80vl3Q N+Rܖ#(Ga %NH^8SʍKcJD84lA.g` uMn09OvC+Y»^!'7]LMoc4c l*!_"ߛܛƯfFIIsE.. \|P4B!dT|,66aiATXKq?P޸΋aEs``dS@sE-nb|pZDWVF-Ȃƽn;OwemnBAna^ATk=[/~T$5g BZ;@50j ,; ȏ>O*(vע72.g젉ŒZjmPyQHk3(@ytx}N`QεD}2 6quA^CY_lC$QŮs':f|kWwq41EZV4ϖVۻ=hcz[M /5n58%ҶX{ټDdrGRC`2Q b^2FHTa+xhq7թ.w+4G|J(P?HS U6tP-g~3/扙8˦/[4Lg"}XUnJ"ϻܞ><1R%u+4{Wr$s/{9,Պ=Ξ4N=tR-86Uf! Đzk |$VqJczUCo{ac:?+ ^a=Ut' 7 M$= J7>bKzd%NN+\f?ʹX3 L T`·3O^[!S$,4iCbZ{tdUo1FPÙH)0As$\X1;y8?|" zYMȥtTո]|51Zcѷz̚1bM }N׾ lۓ~@̗n0ͲzU򏧭,9"8Viʇ!/ڐkh# /kh3xe!*Зs}]Q97?_K^7F,ifZ*rOF'YU_"d6;&4^fS!m(l "Vű;9x0 i4L5|56gu,*2!AG6Ⱦ7F{i>q#۬wtP%Zxy`~1T0**qbZMK{Sf 5 tv:`#ň#h/O^I0:MKLlӰl 3*L]J ͋Α{kѤ}>*)bPqtVh`gmkyw`!VVNIUk ^SU zdYr_ldX^&ӡJ6y eSjNV%nU`1Ec:_1jIg`뉯C{adoVi-Cckޣ@< t0)Kao ?7:]TZ2 eSVk<K:cR[I!ÄmU꿨XZ5-#JR7$I _"DJU?㱫7xjvyW|g:Ow#M y$Lu Y{[D[I?crx*vC:\Ǥbb>@zOevCEk Y9Z ~hjmB {I}H(cn<3UtL ]GisqיthBA)!0uKQWCUwl-@+ٞNPoLT Ufhu|ھC ]IZ YX~,]nysoO;ЫXa||:^89QYP'IݘDzE?3fshol3FrD`X5\3dGl7 P\ݿ7\\CGa2Z)mq>kϜ3#x]~@UVO\\\v^"Bp/цd1JIʬD66A8 Ab&iD^ bt# Ц-wL `oϽx!:W:1g#P}ҫtTeJY3ti[ӃxGKϝh(W+ׅw$Dk$C\Qy9\OX,DEzf߇e;)vq(E(|; hFE,n9}H+`W K(}͵7f]G'IpJ0h9-Rh\q_qeP0d|RSŬ8ڞ7'lPE;l+2wg%u_wcH6oDZe1 |@2-:cѿt^ > ޯ AfdI,h"%/njКU^&pY$r$`u\x,k8*EhWe$\3ԕb [{2>-!kBpK8%R14 gF^ ӆ{&eg+M^Q2Q":7۬KkW7pj3dH-*y3)G";(g>**uGoM;n7PKWCjg50nUͧ]Uo+ 1{=|[G= s>\Ё< -d?rg;ag]lCY&qs= o"F4ңc`kF &ۣ ?Wq?Q&cuMtq'2( \t=gPg0:j&bVtW:*CZe:Mz4>\Lfp^GlXσ}0YD^:6eE;p[ }!P/84Mtx ? H$ Ϧ LrUm)v )PJĮTa]f5Yx&"ҠZ?A>6^ rnx*1:ʄ5ǜkU/[4HEiwc0Pm.˜ULͤXS?78|LK,-ϔŐ1y@OV.[O Y׼GO3j y/ 1ST$dT@C]49Ke:Bl0eSb}k~#! a$lPZ .:qr9 ɀ;~:Bߗ]A( Ƶ\X5矲&a&i_?`؁8nXG>b fَ)v_r:*>=$$ovFxJOc\C` 9HyCXL c]*=HT{wfL\wE7T߀0kÊ?-f5OYS7S,ɎwO \k4Uy5zt kr2<2Ն[3Hy*P\2NMزe=֕;ocި)5^f&./"% [7}Ȗ)T3*OgZjb Tc\@E&5oc- l`Q$ ހ(9133qo4 +z' *:v7J%$/,- #=a͝RBJ_F)A;\{rq#V,v ԭng.gY([$ } u{6ۘx-g7K*Հ}rC(kH1x?4-|R5]{j= 9 I{RmqvqQg h؅`=nY`Af88d`K0={IiOi4дTªfj?KbQW1?e{ 'H&{[bCLQ>6z螦0tKm5"6=C5ϥyR!&TnQqq܊j  Y ˒HIP\ZN67QмѩR)qۆ \[X'ͧ쉕h/]8R~\+ٳITt9_RԱ1gPPciwb"g5+-ԝj<3Ms8^ lI vU4er{d1O FQP_m3Z;F26d>7l8)(.n%|S0z fxJlQ,1P]Jx,eƪhUZ5eSbLb N^\-k[~0a7 /Z.с(5'yD3l6p#NЇ[g+՛3YktOCJaPK-qy!qW*kd7Dm{(C]37!R/μGVOy\*rg Sc ݂…. F!{J`+q]w\m?Pl\r2+kQ뽖 pؼ" ۸S ${'AhkwC״M)PhFI|_8*kaU}9W1*bCUl^wꚩF=HvVol,JvERyX8%–QLn, ]D_`- 9L)Ds5;9"L6}WCq7D Q4|"_5kwx>zGxj&W0Q&t a`t ToFۤ̚T`I_)6FL\5뱈H3% *2i+Wv1KsQsp$&ao>ghe9Hν뽭 \QR&s,Wyv2>lcCtZf[Zs+S:&$A<_vt;:\f  ޘ_DH)Lʟf {&rlBZr&.,fR2 b;2&ߌgec!u5&ӡE?f;6zȸ߫UK4H8Z:[άͿ ` e!>]YmԞ\tsnAP9ѣ5;SZ4~Uƀawx5H]TW2yq~nGoC !K)r}qIP9(O^* ЫQvyǸVE\S.%ƨ}4F?rn=]i@tmWYI?6=ltj;\Op1$VOgj-]3on>XS_(jql~wcpRkP=r>K6ؠhJ9O~ 䃤Y>y+b8ޣd/l4(2C4FLX\h_5 ?k"U.JJѢN>| 4J2nBB{*HmR AB}۵sS:à '>>_dZO|“W:%:UOrk~$`n$;C?vz_h&ÅV}CjUjd1˪( :҂j_F%8eC).ȼ1:DՙWS J9(M[/uш_~Ԩ^q>M6B&;\#4h/e,4H<)Hl p>@NDz腹qOf㴑V(˕-L},XC57ى-jD"nPxrNBK1cl+^e`U\QݾM? 9꒮gl3tfsW_PiGk3`zL @yvxϭI N%CQG0'`ω|DGF)Kzd-Q. wdt+Tg 񍩶oTslZf悛P¶84}&9kT0fh@ A-ᎤUz%鬑Ju{xA-2h:?6{9lI:ܔsi8^+~y)z+hRa"儽!e8P qq% H}l|V],"Qw}po| iN6G%vmUpRU"A-P vqjkJJd Nm4B񠂠Kfk.}l¬ Z]?pҬC⢡[1ZUu)/+8iWS?>= ˞$*׋b܊D,N P_@ơ>4v>Ϯo lٗ[1+dõ#.Z%KTþ$tJq׉GZw JMoڦƚT0rx_X͖?bERD+]>6BG(7Cި{b]&sN N\hյLb:۔掶NEWEJZR< gG1t:$hJqL1,[f<BAo/VNDڰ^OP[t0D{/ ]K[w,rxKn)le&|NzLr3iƅb{r~n.rK(\R. KUۉe7%&"s쑗>BQGezM(7#MSBdXF×a"fjΘօof`rlfw0uD}bZZ@k1yJ8|8D q,z f j7qObXd-KƩ>v94b/=m1.C¿nݢRxeq#USs*J|4eMͻYũ!,Y{o;jlE󕊐m;!2S5g{>ݢͰٚMM (}Abm 6)x)l~ VI쥄2UhIE>\-̎9S47%GC-ش1 cHk^Z] .tPTv0U_VHT,S#<:pYQq=_<&מ?2eza1Gj +PpPx0,?^gcv=d.䠝D̏QRah ]ihOz]>=%\8ܨX~r0EGo{c5?&LrwJ`.7l#z^t+GUEٔ P~jK{uEG$JQ0 N-}AD wQGEP18>r/ޙ?脌8TPILJa` HYbQ:Oi@EG=AW I; BӭF<ӐM P5x jйHK} aSA[jhF QsGqj$6,^E_X[ Yn)WIۤw/<4gh+T$0kNZu f〔SYC5&"BʣPa̶ Y2!i)K3r}l^7t(Aϊ"/z9W'Nw҂ۦқYz`VڀaQ 9Q:O Ÿr+Ba]ZEtgJ,z0 ?JHa"qk \Դ9~c8TPskW`8YFpWj<4cfzCG]BZ7J SЖE?nQ H?]dtUŌGS5]?)[IP̚7)ӈo}V$|"XGib|y ϶4µl^XIV1@gQe&sLonhfո.D%;~"*0Yԡ)b܏f69L%C0E$B'z/z<,ڥbVpX hz%ѽĢ[/.m'ᄹokߵ) f5TˤTMVm gU9}Jh# -w1#*@جjLs0^YRЎi(Ľjn#ZLR 0&&B%OX<_o*!6_עFpğ3i':\h 'GuL{Wxk8H{x'u,#QtFDEqC Ǧ$2 RЈ\P# L%=N;巸mSݭ/ @|5WW*:@/6Y $l2 |Q r&T n%Ek,]evlA*7 >⿓/Ը`m0ZL+3bQ= ,%A qy'd# 77sdy?)[qG{T?1q-]_WrS ! GU.Bଞv|Ԍ\ Jz R6WkKp <:,1^|,Hw aM"/jƤ̎V.b|;{@dÇ]ξGCைy?}9htxLWq,ݫ紾d'$1OX(HɈZ ɋ2 ??4Ȼ+GOz]lFl Bp .\%HHwQlIڦݠY'[?gkK] %GenTO}Q.${L`e`öfaj'|b%R쨼D<+ ȔNRsBHC22żNRy 9r]'0DOq4`gt9c,1 ݰɠ6&$㶏~c84LF@DG,0Z:l]ۏ YbQBn [2d!=8X15S՗Xy)ټUGۭ|LyCwÆYِߟ#)OehJ6/}(t3 o0ވݐ%zY? _8!;EEL{]nÿgEj#gcُs$Ÿ6 4څ*H+2i[F~ubMYG,,?A4&ѭo14ƑZhÖ>19Vn?šTQE[f@ܘV@[Z`#3h1G&ձZWh*QV٦՟ rU>W}`m>hq#CEG}Zacݴ[,1:g@k>i+ f"5 ӸkJtӺngmGpJn.휃^H[%iƅ Dض*w2a2%P}^k9 Fugz/֟]E_l]IAhS-O6v5,'DMF> 2JksMWN\Zq/Mi*nܩt|_ЯruSxv/ TD^Օg<2i`nG<kGǸc%?ǭ;Wa$PS,@ PT]:spQ4Bj}K k1غ(x Z[:"YeAMK8Ul۸Ⰲ K ',x]:)ϧ*[Ph+cSs2k6 ݳ㡳Vj Eu+e ^6c.m@;TN72Y&*VV3v۴2˜Xkxk&8źoA}-D#h}_n (.+(`2o9ޓa%be ! ]Ď~oDe["HcιgXt7FBp>o.^4k:&xbՆĽIV @~ܪw ~·i^a`j|z->] EaْU}c#DpyDZL$a,oZpo8%k{Ϧ_2>:2`ÃP<ߨv&~W +Ŧ h鄪^*Ք ]fa[>HEƚe C7"P/T]FeHgQ. 8L|_Ӷ@CTSa !k)يɢG&kb .!(dėM+:OMH8j/GhSjkP@b=!l)y/<e  2>d$eCn pf#8eX M[>~&/^$:UORhNqSZFo~v"a dr˗[$-Xoe|9tz/ a9[j#؁[K.*K[XKJ ԥb RV.IkD@;ݗZF]OkFY^'O8ze3j}w6\ #Dߊlij2c ģ6R<7]Uy hGO]xUPw.IA 7D?ٶ]rrpSR»h^[vKp Upbu6lu@j.m'{ɒ:pK,t]7s4l˖Jȑ %rϨ߰>d+ s6-Ĝ@\wvQl@)xL.poyBj>Li;{=r]-$q\RoӠ' 8Vp_G}þA d/Mc~FA$Max1BH/F5vCł Vu.Mݳ<[A2\˦o@" h6>NZzMƗB ǷIdT] <' s#E)q> \ٳ.]N/1MtvnS?/ D:*:_~-OXc8[8?}yW!Ui?x+i ;Y@̏r R*q3ʈ,7Ԑ-79 X}Afz遏fp*|56x% ,sbR&~rez=rB*Nv6 ?]LAбPe'J2rEl %YaT ܲYߴmr,A-'-[ q|D,/Sj=ji:4UNͰ`g0x8j!FbگXL_ 8I~VZ)%=\&Us?|^Si7dùNtMp ӃbYDhː>9㛞N@&rͫ*VnOxU䵧kQP[iATjRt0H{8Ѻkn.КU!۟-)#pxCCA^X sW/5ߪulʀ#%7(&77)ǝA{ `4O̎AYt?epoppk/F7"")\^݈O}%.-RqN9Ev>m ">q1̕g~S\9Zoc3ѶӮ෠]C(3x#̄H=6f4k7Ag>&n +;u(ecF>@+4x[fZVy|qM=E.}>$ǩ-B"eV?0TAː!X[Xyoo,QYLrŻ՗zo1Q-Sjc/}`Ԇ4N |쀎k݂r!MO8l%ix>dw-Y7YnrKrL82VO0g,H|#Ɣ ۨlOTR݊#@YP `vE閉R6Z5iPsE*U$/>EVyf_C mQ)<S1c-Vk㱕JmWzJzC[Cdԯ=u%RGنe88]+W0 Z n9z(3q3޾2Tgip?$t!E3b'&''Q& &cu.jI-*pg{n˨vTon돳[;Mm+^A#EfU!ʓQ3qڂ2ՅVKɣ%R!-{ke6Q#c(>rz_9riQR/T> טeUu4Grq";xIk^{='"$x^xzF'n0XzeǗ|uO`tAA[ Aݏ@ _@D:' tm  V@Rh4qøEM똍hA5ujnӼUc Š2txE| QFd/`7aUq/9*sč?K^05*m\ pߵc HYhU]i]k f":~pˇ,%) p1th5S+qAܦƮdOK&ͫ3 X٠:UCdǫbu1$t.#ICjMOuZG@}*&n>H 2öT :O\Z=E2ʉUWR\T/ [j@P[ 7^S%W {L_sALaK=jyKA>%/d] .V.@p*pZ?=^nQ]X!(K-];3H C=6z dy=GSq-H: (.tQ *I̕*ڪV|[M _YFky("/—aH_'=NG^V0㙲M $&s0rƌn΅jo `cr8}; E$Cw:*aJ(}]?,o/nrhva 6?}l$;lu.ħ*^TZ+9C !pz4Ϟ>P!Rj@TAK hDTke qȈ'Čdh7iX-\T 51gϘS)\D|W)bSr, wIe^D%jQhןBi܁ ;gSJKN4Cg:ISpiXe\I-d6qyN1/{_ qkl)`T)~@ny4ƐzBa¿qh'ܷݵNdt c+c۠SB4R,|j^xd OIR_v`C^JbowM fn}Iəi^!?pȇzf94"YA}1l H R mtMC|-X-̏76o,vMrSi`a-0y| kJ9KvdyFJѤ[6,/+n2֨/#(u_(BRʛd'p8 ݛ{Vt.w 5.օ.!ĕp9U!7 ɍ"gdנ4zXw €iզHjHJ,R+ihEh=оiבvspQiY7 } qt^tGvL79l6a֬sYh5|F18L7~inoR]QRR,x9>|WfΠ ]L#gw%hE6b$u+|h)XO( ;Dz[.?g"QIըɧTVϪ,p/ꦦ4:R9fNCiˮpCTLYx>3͏w\'n=Ep}QI{>p?"[?go>3i\ⰰ=JjIb|Ynw10֬lͿl+_fo]  twדc[;=;Vhă8_ؼJ|h`NWP&4~DyWS VBASi%wPNWQ@F *"^6hD%p|c=Xvpĸ0c5ya1 r8݈=C?Vs_SfoC2p@qkSª1ۧ`IOdk)+nzvq╞i8x0TMRͅ+^b@762򣬸Lr2;p},f;[ Q}xA@hQgi+>4^( {r:B'73F'SF\ޜ\ڀ w!*j{!o~_~+ޓj-PcϯU?-#Ɛ"0 m8EHVlL!ݤ:u:rB'=FJI䔄/ĉ.r&szIٺ2=hrھ0gCsnUdz!Rge,c[gؓ( #?%G}$Mw~Bvje;FS t_CZgƤ#t{,{IS}3 (74Yu<( ~/,=AKԉE'f4ǾVX A?%~s ӮnUf 0ԱMF_ATVL&r򆂶eԐ1E49ZWS8$01;*6$ ]]FdoBF{|hٿW9|{d\ѝoRS$֦ࢊR231}9 FE4ip}1~j1gx\)5o`35d\E-~V}$}_4;؎Zc>$\ڶ'w &Gj`Z0s=\LDP=|jF\B>+}w,2~0@U$$0c4 6(ՃAX<A,MX㰩B EU2TbS}wM7B4jCS|+n&q-Lyov!'Yg}gjGIL@]'ba@}N}pvbO{?췧s /X>78-)Zmj=]z3џ?S~B| d V,Yj%ӓ yAs8'ojD8#,8o{( e_[+M\ΧuVΒ D\3=6vmD@Kқ)a+C2-<8<ߐX n_KR'2^ȫC|r@%ө|SI9Yl( ^`A! dbnҧ3#g{ wDp1c8_9۠vy@r¾)UWDj"ͧ}N~0|M Vn8l1_ oE~{I*Om_}pjO7+PԨѦP[4rۚ4&jZ†V(vwgaZAħF>rt%M~E: 䒼VF{jVМa2~""HOڴI(s1/YzuuwDzn!J#֭d-9qPBŭס3֊9mJQh#ӅeB _C'kXMy~h@sƚ;P md+H̲@{_E#|? 2FW{D)]kq't.]Qq]C3c'ua~š1*p-ų|$d*p;rfja.n<l3B5~y̩b ;=;L`FՉ*j=[h/k`0rwWSpˣYN qcw-1di(U Iov K Ups;J.9ǁv6Nǒ( \H]ܑ&jxK`tf2Y+\Sǟ6* h൪NAጶSK,bKD;î<,@Rv_2u?U0ih 'ǁ}F0RT e۱$ڻ$fOcu#,mm"@Oyb M%;֛7+:ӯ&0`\v%Ҷ|FWspAhW&Dp"y ~$9F/, leȸ-.xzb"cNGwmie@#^ R[0B3RpJy3M ³(RI\ҕZ0;h΄1jo9^߿w:+l97($Ŷ7o8PaDQ]@e| ;/6+[2$u(t3F̷zH'ŀl-P0($D?H9I?u|Avx.ytn/pM&s+ FYlfj7|V@xN}f{Bol $;^:@Tˮ_ˀqA|*+sQ(d[":JO S51/BQ\* /y2Jx^ijbX6$sWSQV~FYG{bWԒ4!68gNequ">=_]8)38Yڶzy? n[*[jBy%JKܖr&#mM!8K?0!?|qz. on,ȠѺL&a!oGTSm~zaRP!zyC/LqTP)B ZIW$g#(iW|'`H,1J[(s?R$ֻU=keORZ!Л&xA&ŔL#T .atmJ$?K6n۞O*LO3jW 3&VG"n/ ? U'7,%mW-/Mg*ڠHڄŊE^͗{&&?<ݮ_}j,lq'm-+ſe(@xLfd2e@8Ы`hqfOh-?ev'[|Gŋٓӱ#w6r|$+\!"a~։6B#A]<TP iؿuE`lWY;>ED?_QP\$4ZR}zUO)LO*qV͉,x3edG41klsNe/ꏜ1eSm :ɔ2<..iBCၞ LԸFP4o0dgTгg(!10uʥ"Jraz~Z',F(Ro׌Ԓ׾jMK1UZ\n,׷tb`/zwoYhFctی&ç؁v[˦$۹hAzD>-CUYYRҡoKɟu$S;:Rwzn-wCO1=?u*!ah>~DA4< ݒ$W.* _:>Jx9K,s5iU(@I\# `2 59X$5fT̻@ѨX}Jm9q|g6{،J)%lUCH;ꂋW}fPԆ4r6< >=\Ѿ vpNGOV:aq,bM9 2>NMn?yhjJa wZV;9KV45TNhQ:85ʮe6mZ(mm8h3mOګ?&VAƞ8Ij s[ァ-]n k/#8B ]#2t 8B)O OiBt}f0iAشg>3*V-{ "d,$x]j+sw=K.<&;؈v8ˈC1TisEfPW_V(='z Hl6O8bSB*%qh#S9S#zTc㽿!25ԀFYuUЭJzC [.i-YECcXŹ>zn-gDg,&߷@ Im[.EyQ9]2w.OpUZ{_Y`a;CۼJ=# u˜l_7۝Ȼ\F?r]HqL ʰÀB09~-[F6ki ULSO4C1*p>/cjeнjyѥHx@(HY۠1B1]uLK#(!M 0% J\L`c&q%O`Ê5YN t$NTET}}u;y hkȂ 668veIQױ[$pDR=<|Log.7p-M;U,pZ71>u5ejzy)p2GSA D|?t#Օġ1GM6v fk*yڕ82,Yt!׃;9㫣cZNyd"82_:9ZWKA$X/(>/ܥɇ:XV`ƒ$ڳسd'Q2{!nV#'6= ';^{ۘƀj`.V__>_MbNJ}JTN'V4MZonP_dnX\|vMBmPZ[CL6r?NVL4%=RJ07E] ݢb| X~Ekr#Ȓe^&@g_oz1 P.lQ,ՃBSE.jK]I>y3V-pE}FaVSF$Eg2t2b|L{ VC3 bˈ0lB@yP*iLZ}c+(,@ǸdP0t@m2A/d[Ǽdb|p +Ц fZ{#)}Vی?`k(~tdaO0*1.ST3G-3VF$j"[܋_ϊzk3Ĺ}LQ(SXvxbO" vcQ`>4,ä2\Ə&o0(,iܦ=XX_눦ŀ+AE?hV'2JC1!Ȃ }NP͜h\*"ZROkc^iw h&m>(TǻX^y8r#klum8_{Xl23 $=’ҵcZE^Al3H]֡-\Hpv+Ə{{b^sTn_Z1/1p "Ԇc|Bh3 ;Yu:t˅Q}ٷt07˓z%z?+߅7F?c+%’nB]= _Ae˯ܑ?ňT=&Tf:HW#N]=oc!@Sra+S.*s K soCt3D D%d p O}j뇇K{ @?9fow:'ck,0*)\8fOcNCM}!G/I۬}tMR?P=;y7WQgbЀwD#}1Pٜ e`!S&)ϦI;(.2&@"-s|UX Rυ%v!H/ Mn4:PTk]ԡ8lpyc5F;{k1J'vV,)0G2+.绥frU}WWxurael2~R8Z;{d?O7p"}2&vj3Bv?{M<}od!$ O6[U9:MxiUyLED6\2g>z'e٩p:k01ҵͷr*ot/մ8\QbDA:d 󃽂[G"?J}#|/Mk_8{*]nv'kbKp,m\ ͂iz]/[%F_uVY=c5 ^愔ӫy_N>XC SBL#[SF[ 4cdąm(N ]%Fň^Թ&1eЄ\NG!R2ɐ$m t>:ܻ$>/'J0/ajdI~.D~ve$|s̀lZ?!=H/ef}Ⱥ7NP#sBfPS7OH^̾[@ݨYC9AߙM8D B,[fT82n|j 8׾q DuHMy CnVES)jW.>,m)Hɘ;p&hJ ^D~^ bfY +-]p({g+C&CXDD"Ұv&|c{8$5;X@bCrfiդbx>idWzC[\o)Aw9Ii&~eߞhEqowSA5{ Z2ICƝRZPr^I||Y`m!%Q;G2F$"[UZ"$|"ACuIaČR?d'aLq4ԋnXb@nXWy `J5”F?&G}%`,ώ* \1M3(&%+<Fł0[ L+UY-Đ~ 8یCw΀K ȍQva0>hek9Wz) xzh4=]ÉceGdSFϡAp]1><<7C<졅3/aqt~Vk#b7?!1 υ43Ce&!"`3 X>GZ7*xˍz'f%/{3 elݬ_)kvzp>x6evԹ3 #t=ZM'a}njU1Q"Y!7[`SμV7́/L, P{5_9L#YoMBtF)(+nF@jS {ha$3T&? CӤ{EVcJs`+q/d@ q;!VtR,Q"V8R=vDKkJ⪓7^T~U3fȈ,7ɛ,c4&_2iE Pc} S๯p۹,U_U 4DJ5 h M=m;y=MH,s /oUSD+^o+%#SNŔQVͳM/X]z+oi;񣍘V\v,Z 8BQ`Vp E(AceU#a%/}N Fu:!'_lypV]5尾pO+/,]s=)&EI$n1h4Ⱦ{">P,8`ÀfC7lӜ*N; UϿpp)ݻy-6ivV|vq]ggp7` W`6ms9wa9Gˢq sK7fHѹ0 ?8w5AskCV7P)GS@!8!jq3ﴔU~D-b-ۊcÍ$yVX,[G1)7;LN@mi/t+rtʟW)*ގGo݁VQo"LpY^Ѷ"ҍO"iλˠmUH*=_&+*ckV00b~/c}՜D'slMe3ȔzLlu?kLG\xS[WFkZ/[XҔ'24oH :YFTOqu]EUEH2jj 7_"P}s2Duܼ?hh󳩠tn ]UA1(ҁbQ~G!qJƛht|0b9Ykqx75{$²vE/} AaYuj*bMcwu&< |x 5x{Н6CD-İ^zT䯽(GVʗM_FC]钬/8,rл5qvid<@:vϋ3d.ӷaH5cQt%JK_FM@CjK|&8xm^v@s^}6`0f:e_r^ 0*JV#,i6#rY#ƽ1wN~ ol4H=0\-z}}ry"Ԉ'ѡ/N I7xp [W;ȕ*t 0.Y]S$օ>ӱs۔L(;"2MqwMZMCp@ "ss[,d0gTGureʶY4 p5n511O@^b걖>?sAWJdp'VjR!l;$I%.*~5oY mW:Y?q};o$vcT1'/\%jX5TH-Qh-9;dp6(&~W9UQnl!V ElZn-p-]AJ~O;'5<3@ʕX֔PsZŕ(&uM5^(mnQL)4Md 6^6HS Phҥ_aQF"@?ǹ>y*Qp+1T݌49e9.f;ߎeH^4b9O'ӌJ%&HFH ~6G $M??%?^ _ A s.8cNhPocg:Am=CFlǞ'I1sR* s}x%H-^I9c]+v%ߦ5$ɂIh`"i]|Q`? sXJ'`pjf3}&:6h%eEsP)]LE*d6hcLh"+&1$߾Q.bP$cGbn Y(Y-w^+_R"% "S  cx'6͊zvsB8hV0T̨3]\Y=r/|IW4=&],ēv&a) :cx6eS!w,Hh}`Rt 3,Auʇ%4~n%Xc6)^| Q,{DŽ.f[6c~ۥ.(%j rORKZT۪Vh-:WYqƻQͱf'ĀlM(T{@`g"qzzd9։a8 4~%iMڛiA#{J'؁|\դ\|&閃 j.* L$B%eLyAc#,ճm/u>fo@"9Mދ4g:%]OGSW}ZC;8ZQE ( \PK$߭sJ g` ?[Z}ؙ~C<)0>Pd0̵p7 M}>嶺x3v X>D*F9Q RSnџE&bZw'8L9_Y$V\t} dOX+j>u4UKFBGd\ZQ]~ Ϭf '3SF S{G%CZ@r¨mG'b 67B9Z8}aS̪Q^j2 i\)t/zU9X; sd騷1lMuT&nR8'NʃC=~ .)X9ߦki>#!71@TLAݪBcI] !}w\x#zG_^N I ip3c{ґ/}~yԏO7ݲM\1j'ߠL>LBH+hrw\sb}<9^]rj)%HxwuZ)% 3{% 3t3"yLGvapy˔R>{Ob陵M5WH_IYVs,ʩZ{[Up̀Ѩx[S/_oc CPӈ[s N>V2xRn6dQ*Pw,JA5= BHKHwN3WZzGn+~GoYZۊo:fLaU!X] :p% !YrWbM~ A }jخ8k𝻢q8g 5\ R,$k[7 H#-jP/k`z׮+^E#MPΙR,'ݜ9ӌF^VB8B~߬_`H=Ap?_Ml%8U9 k :!;hgM}8Z̗Bśitٔ7-v-w^uh;oc#\Nt &wcҲ Wdᅟ>Wipܲx|B|myU!_(RO c,7.)^8LXa[00aj_RPO~~;]Q~Vz[]z. ~’|t<&ڞ=7#]vQwW\ݎZ?~R"$;7ǯ\Ϲku]KHqvLb+&(%aoh'`xYHl.EkWǻjk>=p1ٔ]̀1x/pϟoUE{\xA(a{'q]gy }ZaUG}(^Fd (bn7{Bb7We_eK-42,^;QE"?3a~Mt]TL &W}d6v]HK{c=nkf?#:.U5hfן'6m1d^!q|ӂat~>}19Y\;3f"S'BD`~?b eЇ{oB~ hkp)4h3uP*zN֓erbr3 tN>뒆,Kn'#Kq:)i ~3]dƑ1^yw;(",-u;-qIaݰNy>f l}48t{6vKT$5n̼#E:wTz!X(֛ΊM`N {C?zjVl,S5Q~ Vذ+4/5KUAQA {p'钗0[ - -ADdywA#uGQZE;2t;m2_"3ke%Ho"'Dl//<y]m4Xž̟kںW PAh<*^ ݼΡuiz3,A,oXʮH}nDzZQNj |YA̓<)L~e}-L&cf RqR{[\%Oe~.flN^BV&VgT!YX+6*=vד[mlsܻ>U ɨҾMHs?KzAM&QavgHL)H\5^25(Ao0)h}D02{ݓgw6]2eþ\X\X)!rT yaPc|!?c?o^N,vhlJ IL ,&E~4NPUC5O)3NE1O]J;o=QH5S)XȞww2Tfŭކnڡw&3']ZokQU+ .m&?R!L_\TPrAaJv 1BV|MhCJI6=תDG/QUIYzʘ&R!gE;ğZ龺゚}zdm(N'Pݭ?V|{bʘcȊxïZ|cos<*9#E܍ESX]z,0w[hs9|7 DzPV@ j2P_@չdl^ oYUD;;ϥ*mUeέz)#]{ߥa|grc+R5 -ѭ- v?I;.1\h'Fbhl~6y U.Qy"fjs/T*5i±r[paB/w4ܪ {]A6c Z2b㽋yrvO_`KޒBB}}glSQL2Br8 +Lm<wHP9LzP{y 0FI5~7c#p8v#q8V +JW+@ԏ?T I;@Q3ܹ*k{b +枔S@j\QJ*Z 1{;՚3a"^v֓wppP#J,c.;!k:eoܟ8X9Nb[@,ݍE@\Oڳj2-5ZzM[|Ah700FA~`GZEjJaΗV x۞+N%Ix[2С$2Dh}+3=mq݈AJ,mgB;@I%&7U@a`{5;XR:slS2{Jva`+w]8r(W @Q w$Ycd4]8:߀d E X8 w]iZh~!>ZeI~AL4|$!oQ7.1V%#q ĭ kZnHӂ8%Vގ'M;ʇ*7Vî4$TXP;FGW9߹lBlos9-i\Sx!eHL[ te Ewܲ8iT  ى]PPveE;wGIEӕ*ZʎݿaE(.Ϫ(Q6Ho0ײm<~ #qJ3~DSbOU:ULEPHDˏ|mX}f/V$ǎ]HW-+T'=w6,C%Ys52Sۃ &(("8Vg[C2Ow% s3kz4=!~݀Z%UBA-aڙ5*!˯9L@՞e5]vP^: ̇|09M<7#ek&-_l%<&Щ|]m)&L2zl!p EeCA ճr/m/0s8H +56.d1sʆxqöҮ U`e ׅGC׀RzIwS(]HnȒрvFJ:<ȋ-1T;rs VG˳{,?7У*.5k,r|UpQ|ln~-ϿiU(6Bl=I=J/n/~N֝l;wa;"e$Ў;B h>][$f5Xϱsp2r < ߴn{Q~AH^`L}H̽e(Zq?&wT|ʁ<-Jj-Z5#OlJcxҲ`J>X7ϞbIr@afCYS@O^2RpH0b$?P%"gqRQ*AuCh pӌ9֦ AZSF'WB8ehwIxt3m^/`m?)H5 {]7c'[+ ÔG:"W׽b.R$y>ՄM_t{Gzg|W ׻l5(oU[g_ؾτa __Mn0%FZAq)Uq7IdCO=9+TwHإjͭ>vN_,qc]V^/`:HĞOEU}KկdpTIO(]-Uc)Ѵ׌D,bv#mt1 5a*e_ $;_8ϲL/9.KN9 (W~{k锗1up1 BN'Gșj5F L)Y-y->k$j K#ɲizs"XJi)<{75>_ީ)Ji*;{-;o@e+;ZuC>h7 Lyܖ.u[)j4 }!e!P:Lw8ĔnZiޭaI?$zLʆR2"X{VpTC-MO̯jU&PX+.~`B;$PF 8eU PLe}\ do78ؠ4'Xċ;eA}_-U<<$׹Yϧ7(iL(s]a.3pį&5\-i?8Z'Ü##x8yU?.OAg3̓1W)aHWϙF׳ܔd7t'VؗLF`sռ}[Ek_b=+jcs9$S,vy7K%XS;ũIޫsb:"PahB)-ϿɩЛz΂5@;t8;\/Q1gXm` gpUWPo=%cg{ƬWkԑ=oWkrRKCs~8L7ZJLRt%j;fe2[(ي,BU'FcҮ3QpHn(xPMc &ifLgz8&omHGgGBћ# \4OQ!1.rYU7J@/%3\DvaG/YqoTG$_7Ӆ`,4VWef%Y|Y򒟋NS*1U@Yh3nuV󣎴nL:. ߨw4ޑprF<̫'L ^Ǚ_tH4$gl.&X"/fYi%l6OϨI;`Qge6P+*!K>*}7v9{u;'3"Euy&먗p30{PoU6^)" q]7[Bƚ$ٚt0ou]$<8>b6~u2Nj,6+-)`FKY_QZ&ӗ{ Z_/׸>y_W>̈aP^qqwpd P殇ښľ H&ޜ$cWH~Z"%=l[DG%* qq~J0kߓ3:w`-R^TLIV"8oXb:E(dҫL9(gOjؗoq#Ԑ}8 't.&vwa F7jSlun"!B'Tw1vr)eHƜb.b9?~Myd% f?, /9~1,@ e5o<1Dž^6{Lt0¡ :'SPYrxb 9<뎅Ӵ@{x]*8#]tL4cjIˤ}GrKhm?vt؃~,I2f) + Ll^獮0/2RH`XX*/\~m2'M*i<8¸+HdE&OA5k%*x{] v?ckr`X'9޷p_.AAm[S4ch u{K+_l(ݥdFVػOa]hΎ:50][į%gh.o6fEd^Oў`HMK !UxW'Q%sPY a(ܱeݖHRoe硁xB`ZG5xE&Qn>Akl޹܄.SJo8Uܣ^bsTfxxFM. HsgM M~ o{,Hj4CUk~%pC|4P*0sd:X a9.qj"mpUr#3B/iT-Cઌh$i7W En*Y E! qR>}`yEBTHcqV9WJhP6.IϹQ8_ Uvx'h`Qc봓zXn__Mٖm r&G],! ̺m{)2-Z[=w2[[Zq ɑ̹Ч.ݽ{dC'uZeV \9Oy$kqhAt1.^Ƕ̗vņKԎ Zgx_nuQ;ɳ@sg<m0rHs7>h;0Q:~̏/V.ͬT+N֓d~NcŖ)õVd60eiReBf'ᨖm>e@rE\*]A}iz\}丆Jr{0 \⫏ >VYI/薀Xc $a$56t3i2 ՚p[1Rb^SȦ:_]uʮͯ0.\.!dS3vSE6]Fa]@sQTW_f>E?p0$$&cDeD=ˤ"fPڞ񀣉1CO!"ٔv'_9 0qNm!P#qv:R!O fhe(e|5VZ>qhO*RL#~ FKR}V϶3{25xȐd!Tn''{{g ݚڸU9ia;pv[(Le=3'c'܋"rh.IiuoR 4ܭzy@O d/7dY~Wןs[B n8{LZdtgW慔f78@m]ih\E1[_yGmv^x]ߒgw@H+{yZXwx@x~݊@T'Pt%t~Vc0s1{Gmқ؄Q bRB)aTyTbwe+f,5/٭8-~X@vV҆ Y,2oʒiؓN3ʊQ7CXUG3bhV!u]@ gs7׍;?S&z ww9ZsKm2'VgXG ժkwtһ!]ޯywϷ;Cg>-A u_`H߆Cqy0k4X[/_*v/5ĺ}VNF@89w$o^5%(2@w5Fz.>+bo1#lUCI4Bݱ`^r݋&юEPl>cA 1!U]p܇Bzdud2vP.ChLܑ=lvT8UAXDv_by>D78yÌq)gB3[[2й*!Յg9Jq>z TE&pY"3 {,d ń+"Kװ5~(Ե'mg?f?46Cp 50VW*tIG^(')u;{*:s=!1q&g3w0רfdwcםےWdvH]Hʲ~38R`l0h_<:J@⇑^F6ʄdE.fq4"cJpd 8HC+)%s8В }xSh|92o58gط8EziLXOj_hcQ8:X6dz<)5ɺ |pAשEa@:6|5s(t?K9t]7o6-뮊k$Td_-_mmNⱣ~^ !?)bϟ9>jhA:3g0.Ƀ݁<qG"ǒmD*N> r?&7Hi) 8B̎Qr)Hz߄$mc.KO9hE㺴ψ8wOj Xڢk9dH!~3Eٚ59z40"(cUvT~)*Gñ# qF !Lp0hAqDu JQa9`QAM΂8xet 8wV!çjxԎm f 8dCB2zSYuf&jk cMS\C.ײZ;/pe,Z3^v Ej@Ew&H໇ @sǏJ3٦%'wI5r;ŏ*q8[ڄ D\+AGLz֡@Ы !MDE^"@EĽf){<*5$ot&.i᭤r.#%<²#M7*><9{$ h"fǬF4 "]+ !2xhM~HZJ. 奏-V8\lO{eX\j!IQYLW Vx`r7mu(?WM%<1E3Ҵ2709$yݲ_hiru6de*EɽxyR_qxFPW={t`79VKeSKWUjj QpaQ(Hή'Q-@|">Wpy gO!dϤ+n03w%Z3yoS#56hIqFI;&ٿ5Fev71m'd%7D UQ4ٟdbs1hc jѿ֛֞Cv '.xbT\v L)cO 1*RN]᎕ z*+Ux6 .x F9`2058ɘӭ^ ZI@Ky)<*½ɬqv}uJ1MC5\Zi݋(``뚦3z&;Vd8@hYl.Q%Z29_"Ux ;H5%ʧyݓKlR}Z]ߊÛ$c8Q#~w}:)h>_۵jXaLiۧ{*(  WL4R͙ٲCePʏEF~~Cra0g{7_JP+l NuGmKn/RGww޻J|Cp/5hWi15i WvI%jƳ|P2:"e!FZϴ$v:r997GJe+߭h+;9i zM/~~yHⷳcSIXO`# 9 Ւ`NTh*w SU΄4L[ f g<d̽Ʈ (fl#c{ic}{yyckc:4&$K\ˆ1]b:?(?1 \B2ip{A5A2-pT.8i" q$YX'ʔV'$B+ )̙rj :r[BD*G(?[Հ ք߱{$P.zV v=).3)Z+vjHk~P0<>-nm{8<7-䚸J$& gS0 *Tbs޽ą<(Љ˭#DJv>zdĊ;1B2{ N_&+㍟ڕ7FA?sӪ'Ny0qԷ9cc}W?C.e'&BY^Фo4Uթ-I/Drgfnq GQySkeVXD5*a($TPAXLM? I!7g[PAȕ.*kpӞ1.ĿJUU\qS_`EM. .{n[V }:ڷ5Ba2 NnsdL[S(/cvfq矯:P_6=_NĎKD).W*iWz6 Q3e{) F!Uz.VYƻQp@b\oݭ/ZGU" *qTXf{%̸z7Mc걗! S9CqQBDJ6:4PN_íξsMBb]Yn|1&us[4&gVŽ%?N3An/R/6\?68oyϘWfϙszNO:"]d HW/Լt!6)reũ}xJ^iØ99vӬ@Ahj`̃gl4/䣹ƺh&u=%hgp{#H,8ww0 b Cx2dhsAt*jW8JW2jw<}z8lʆA︓*> ST V)Ŝfɻ6xb%||dfLQ0dj90qb=S_֜!%o9 ۸f%~EqȬܙB]XNcI)Hmx>zPΫfc_~q[IH$s5@[kҬy,4YU)>rKzN1gr0I-YU+Drqz븾:Jyb|:U;,cIvr`;7xj):[`nt`D}+1sBUk/t#Jb5DAݴ)Tp 9EàV v-EPJE6` 7UcnozCO` 9k|  ƖE:eKbǭBM(7)`)q~Q Jxh^ 4O \> .wo)PcC!ٸ=$ܥf.?EnT`0ʧ9Ǡ-܉LNEC]gETk-i&͠Z.*'ݛS&k&-3.Қ 5v Yz&U+)qC@#D@sdD=߈rzUIZft?]nt7q8rqe%y06F,RYBې8Vcƹ(~\0npZ칍W\SX~kj͑,Sh-Y+' :>k{7ax'BG/Ya?k1X3mmU#p&Y攸ps=[B'ŜWlgSub\s=$GQ] ڠ'U#M k HQk+qзO}u|n3q2M"K&Hwp;HPd6@MR [^peAs4\ö:H2/R3BMCSROyK>!\UjUcz =`9 ,{cTQgkيŘQ;9 ?4q_"jEWU6sz Kq2Hjڳ9 =o}048&܉Γ?ILA^ dּMܷӺ)rg.teλlSCh0fM{H4y"CN(m\^W P>EMڽdVb֯~,#čL&q bTYŢc:ջZ0bjW{UES/>0 wt;A=¿?pGՔv2E %}}͕u{R6 B؈22vz TsM7!"΀*ff؂\в$",QIN,a̰p༂a]`:XH Cp('Z^i?3(hKFDjPR;DFEYȔT^h Tzs=1~Z S{((IooxY,ܾ ii09:R|~tv.۱:jrT@~H Yb`${5J`אRҞZ(M.klHB A0/ e%^+SF8.s7^wl|}}8S\WM#{a ,.?lkr0\]aI\pǫZs:7tw/NӍ? ${i2)r$*(w{. WXuVaI?vͫW1Alcke_`Կ<{b^w*a$*y,'}RX|JSSIf]NUęOI^IJxKc+*c:sX&Ԑ_vQD6x77q vl~ ǿTQ&  mߨ'G7Y5.?PI醃(m%dB`=i+`//B,R,@ ojɳAj=d%< HXy*(ZtMZjF_^; W яIwEIEoژOdRI>( v8/l2+CJX]IrGO{Cvh baCZ6XrjɄC̛Γcw":)F:]-mW|`~%⚹  $C@&C#D0MlVEK28')pjGNKB̞DZ UQ7M;G48-fi{9i20հhSJ5\ /I%1Mnq\ UokO8Y0'V 1eT"BP4SosS8!1P;N.><J0u"r s5:A0vMɒ~K4į'] koިJ"ًjGm{.x 4ihNuWV.6T/>W^75E@Ym@W҉P{~o{!Y_~YJI֋aJj$39cU,T" ;r1wBwg= = |k+a΢׭)(flT\C4c\cB :bS[BGF R^B"\BLwCj&:W亗>C6h9M+)6PD{{M'~hGQo4ˬşP(c.__!-{JQ\2' B`!;&5C݌ 1FML0|=ug0T"oQd-ﲴB YDMmr~RFeE070QQl@$@@ 5 FA(X4ԩ͝iZT .**boJ鼎YG.z*RREܫ}:#55Gf`v3U릣 {?ZUt=։4Xd|c\4(um:jIbzH:|`.lݢЅR}`cDXuCQ{pa YXtZJ¹i3˱ljC"ݰE%ᅃy&A@lL>7{vۋh9TbL5ɢ#A9?`)JD/GpFXx G䑹*| _T# %mX2V93^Ş nOC:@D2T4z+,&xF{I,;wjL'ycd*= QW#" n(j-;4g* 8eGY_&vkN:7TǠ]Џp1^z'ѫ&M)t)6x6"DP)t#{V%:7<`ؽ9b<.M#dQ;D+ "\ K#$.HԿJڝ :3tUZ铄NcswS[6%e8F}ޥF|ꔔש|z@8qI }}8 D?`zفi kn#ƾɊNZS햅>9޲JU`cͣWnK=cV`sAOEP&1;FƎ:p\ټqoK[?#ګ++46",M=d(5Ta9*.RNOoVoEI&'_:>#=hD]sӼ}:6_5v&l24f +U'J;+'83iO/ /^hc<credcuYu}<ӱn }dKtG+;B/*H}M..\g-umYv+Sn][K8rOM-2X G;*0(trX%sfCz;e .عB9U]M 40~ $=m}GAC8cZ6swgV[Q-J~p,n^+7^I/;Ib!S>yBX6ݘN/<5Np_EӍII5|`<H#vF߭qAjW3,`؋_ֵ`otتԦ0'nU$6қ ɐb޽zjԣzM^DǀX9oy~lqC8Q۱%)6Nl@ʶ~3՘|gDM7ºe3W[Vg`Ϣ!nF8,: wd´n*bf*3$:~xG=s #M:2g<Yr\kl>~iM^Ÿyb9:e< u CL0X?#,*-78?6[>2Y9AQ9X  '|J#g;[]Wc[v`Iv](8_6OaG13`xOqqrKVKPxkK"C>)'N/ 0 Y2PT׸6 ./߭B-:Ny8 d:Dؓn!ܽvrq^pc6WR@)a.+GZACI[< `t}-@ ;;B֟Q9P>- GW'uX ҄ӭ?pywUߍ cWB/RxHFgAE]؄;,,. ^CSxF0[h:r|~A_Owm8=xA)޲|CJe*t @ǷC"~1b`.EE [qWiB=_+,NhF S2_c$*N55U6\C65+<\kUn9OaB`S5;M > 3:KڭH7|oJ=lal]c63+/ ^;^ Wvc^gq)\D^Kb SG/NܷWY!$b%n6}tr!*,gɖ]bH'vVټZtӌӋ0,AjؖN?tV]GiHH6GQ^H5GG#7fnUp/D xa:~`',ES9Md\rJn'hf1&\_|ڭ P+iԪG (,c j\G&=.lcX;#%ڪ ՙ3 ʖ9aA~ f׽"7"nLjWRd%oohcoxHVuEx kެQK* x{Z=HjAmFjψ1 )i`0(й?]L'fϭ{lQgWl9ϼM&GWԌV[cO -Jl El̟^6V}dhD\j!Q[l8]wax=f15q笊1*䈥JK :W#ζ3TT$:0|J(zKc| ;5 շͳh\%1# LFA\j^\\NfϬvx{IucJNRȄwMmf8RJL:Hǩ Vhi/ B;^%ɻC P ڟj2tpJNOu&9v~QTDɎ3ո%q4,gJyx'q <#Dx}7KZoY>1Yk_cdYWiX?x ]N:W/N":<'={ֽ~KiCv^K*RM5T{`}}م U$}b]|DɕӧhjJ@S`d v׎QM'WdA"2sWJ81oH<MtD̜ .JT[:1V=\STg0[(jG22?W9hWBTkcTmzk3^ |7ׁkʖ32ənܲ|z ]χ1yKC96!cɘ]T#A*Mq/ƺrx x4d<Β0ԃN但ΰJY8xRjsʟ4nSDcQNCfdW\<:tPIoh_@ iG&/i%Wt-|wlf`-1ؼf1u21婳w*޼Sz j14rN @` 6Bbs #tbTB멶]HԌDaί:x‚%uӬ2W|/مeXT@lh633F.+ܓ&7J;8l^G3#NBKE<\Sbk@mDKvԒş=E>[&X`; Y!Eџ *JN%Xɚ4B-hS)YJܡ/s<W,6;d_[M) sFv"CfgHr w>^i?S~75 \cR-Qಎ#%bhH?y} [ l)OCJ '67{{pIyf,%.֞y@@Ǿ=qM Ǩ1`.Ӿ6 ߹&X=6^y[_RwjH4֯M [#˟$ *SsPz(+uK B}=1V^%d!򺮩aPfjn6NT$j>1V5Lx'`ŁK6AKE;\Et"QmOQv xb[ep- +hNzLi_jasT[Q@W,Yy݈,HXil>O*|Q7g%%1>$w4o+H{|'E߮hopDe܌wF1)^~Js'Dzt*.J'J%l>z}2^W2<3Q2y}M*rqwTݻU54b&QܺaV; Î2Ly&{~_龒|dgRD[s!VX_^R+~'RaR\@rx( eK-'ķ53âG*~CAӴKiөgTÒFR U@*HN'1@nw6) *:Zn< ӋT}|P='p\a>b:X!d;ѬM2-ꈯ 4aMf75a i]hՆgԡx=i7JQl@-}kRJw+kxWwj"Hq05ϚּJS÷ӸLz\,Z:~l=P GV|Z7;An9i"6pM_B-@ǂ銮8ϰ]6e|yx-cduy^x|RcR?"e8 hNV+xZtt, )Uґ'|9A*: F dq*4J}q&%|*{G W-kcjvsVł7M䀊6~]`w틇As>QN] !J.1{6Ϭygfn׆䱶U{Da7?NʠIiN˴k /+'اVy iq-LM.Dji΢w&LHezNt6Ԅq!I&gfu1>&-dS-;!VHW5I ]D9I{p(^Էtq_7B͇MDcy>dCe2M +6+pn:fB##iY!$-*i Cp'. ǾjQAErGmTR {}Q&?chd|\ckd vi/էI~~p˶]SI4>{#l.8xQ-1ihItN\F9@uD4A14cu=>_a5r? B^Meg<~kpRʢWrKSQL o-5~L4FA ]X[jGO~"hSvE9O=+U9opwJ5>$B{;umM1d wGtS>6Tl"/<\o>+i듽jDEjvT) IM -M?Ns& YwSM?{ n/) a(r ctw/(1ь|;M>j,9V+\=o`iijFP?N3Vϣ"(U1!lj5t8Izԛ8SxhHROX/q)l-R'(hr䣱j\ê)C6lD}f9P!js!rzص"n36YFD4SY.g*_.cw]˅-䕅^7e+؄wְA>PIPMn{ W׃Bw[b&ԕψE,CRnmT֭ʠ״l^GR)-#V[<#P+VmpRZ i^|/y`\DyHJçf^0Қй~$\* @Yi4 I_ΫbRVs$̢-|a|eժ5T҄JfmZcC9YZrG2dwv-gE6[tj_\AE檅[駤EQe.s ʀ8uaˈV4$ӸOCy*4>LӂW)=ACr; x~1$d>N3m6єxSfrcWv$eTTTf.T~ -γ|7{`7M)#MchuDG@:רdPA]G]0ڥ 5(lw,p$.i ?RfoL<@xa#@tkot֮#{ u(H&pvEb3V AoSe͕?!@ K{I}AIu ?6W267@1@E~ݞ(*Ad^2iaӤԛwQC9d_Tyq1ӊ% T;,y#+C ImJ\1:@ʔ CMuf4co4/(7O|w{U'UQꢈw/BŔ]?;f>A]+sӞVj9\f>Z-ٍor)GցnCli|VRle/APZDΧ%@ @ͦRK#BSV4,l% 뫊ȡH2JR5gp>cK5'hzKGWO4j*+8GףOFUI;M;ݤhD 3'-?;eq4,W ˂7>~wf.S̎ 8x?<5SU ;wo_xxDs21k/r:sld3>7+ d'j=Ewrqb-1ׄքHC#*I5|4[ꮑERx!Ka\f{2iZ,6/ƭ,gKCjdtWIxxQvlC5ݻBh.lުtnD2^ywa Ƌh"4A9|4 Do:8IJw5sŊ2ak_O2$T@&es A>3rXZp郴Yd&:x<-<֌햁ZˣٽΏaHrB%#Ջ֘1|0$ZYm(~ʮGӸK._r8.MI> 76L[CEYBV\0[&= cޯϘgϖ_ $LĎsGc͖yX]vUVH#8DaDWGc gdEۙ=}pJ+nBQ*SC8}͞Ēy:YԎya+zoQE(XYd?a}Ě(ˆۂݝDB!v@<]1(+DJWk<w XIӣT/oq`[K D}.r\)O3 MHk9[/<=NXD+022KF!**䠟XK^HLIu{+BqS]? +^Glԑ(({yuG3,ar{PLG `y#@/ )JNHHݓ9i08 t7)T)7\qlm/ &2s|7'fDLDetS'7-Bm7eEeyʅuC)❫$\d蝡Q=_w!*pU"m)0M4I4i C`^F(5Ȱ_]ms]"}-UhqӶ[V`LBM' hg2+ՇpQ'#U0hڶ2T_$H ( j(ٝ{)pjTLUVZ r n%૪dٷPyYE- !Yku\<*Og9a%Ǜʓ]m9LSYKvEJ.k9b@]/Z簼R&k6 ly!s?a[xI~KXٱj̪>Ᶎ^wD9w mq\@vc\bﱮCe}* .kjRJO/@DՎ !15,k Y玔Lrz>FѧGSb./_]_pKdØcTӺ3^\.6pyĤxh/k{ycl~Af2"bZ% PK9#-~ ipkÜ @Ә|޺9r2`zƹfd;mg=& DGrN?' y9)7=ؓBy %9_b`R"a);9"'| Vu\o!sh6?<$ lQ-Mf(4)GQ{ 'ZJ 2`9Bw 2āTn"c^]T A.XZ|x0#,/M}ecL>< $Ό`9/vpܜ $ql! O&tc6iU4|'}0[S*iyBUzx'bIkJ OH: Z2|E鼗:s>$N-h}Mo̍ߎ$VC}>;zsNGt=wȖ`T4*MpO\40{NZQi~#gEc.L|R[N 5?Z+| [?HKQs͟K4D%4mF"NX *(2~l~6v;(;4S'<2H+)7`os۬fUŢx76QҰҘ nN量cLHW8ӌB'c5^3B| p<+=l@!xnbKJaO$!VS3b4GL8Q /GD褑DS5&?LUPIm]A%#=NH"c+%at\ A{jw7d>A[XUi,cɏC$(įVeK ڭFgE"]j <:OgTg͢ \+K *Q ߚi5Ҝ`xkQ;qXmϡi1Htұ_ *ߛU}+a58p& M᷽+PHM'@p fKY5U[A_GP{Jd*Z+ hu77-̐ |,ON7] nA% #%#GCboAfYNhWm>YCFZجvuc?HSY X%k Vz /)zZ`6(@~=}'Z;ԉ/jXPM^bZJv)X w{/ԍZ q1GHH*PWxA{ CY~}}7 v~Ԧ;bhvKc^]"BJE^;J5&:d;gV1_rnۢxJ_}mXVd'o+' TaՍX2r` o@\K-E}L9mLv2tB2E0m #xT#]ÊI.Җ'-.ܙ749YY0x eXB*o6;b[oȆCfº3Tzsyy{VhM tʋ~ gsTsqZPqⳃmM>rU.Pj5?<'01G4%R.lᅴƛp0˜?A.0$ ʱ%;OXdpNK:tB2VEhMVƭQV_Λ{ѪLHXT)m1S}t}lNh}]99 Ǫp1ME8ȵ \RZ P =6RS KCF;WTC?&4Ҩldb& dIe]w$fφ"JW9~.[DX%~N?N 5cGI%(EIDX R1"̅ҵΩ_m,붰[пBIFu6%Nf(ҙ>#x-,\cZ F{TS wtT= N *K7l h{5[.-HG8+ >,D|e5 e@)gb.„Ճ%z/璢BMbEb/oP!GG$I7bcJ.f*iry CG!V{ e{1qY#R4&=[o+-׊TיAqGu*#?";L%נVJp|-&(-l,ؖr%X-Qpbwb ߉l*r.-dRq;h !o)|0e^bN\.GW눞&`$EvT\Ӌ)C  . #]͏mg ^8 lNanv0itiOZjASh.ȮՋ 2p[4T|axCs s$k!8=M$5Lk}=(r,^>fB*ښ;yəFʲm9HRA pGeE{²-oV xVٷ/s6[3Ɩhw[YYt|y27|t ^|YcDZTmЭCfrq6BgYs=+%63)`<쓼 qT xر5[X7n<# Eȴ+NJ2 pHg*ϤB]0ـ6f%%ƶs̨ZfP uZ`*"*Tv:>j"0|g]+h?5JzQiKTZ5-CM9 k!.߷mh3Gp~~Hqؼs*~K5תq0Iαu]eWHÓ@>Z)v *n!)$oނbG#UuEsX|ֶ@a]aBi1_;YxrJhtN!;F:gɥ=F+&N<.XBP=cI!]ה@O8TY#ɘ{P㍇ i?VAEdHѩq؈՟%Tk@|c|q{* QQ# -gkDy?JgK Te mnKq#H{C uH 繺b]tyeWwc_-%нBue1T ~O<8$,@`kq/CyMyA5>|hfY \cj\4ۂv,LGoe@tK6uVwC#'oXS`T%Ww^.*yXL{Fp2AX Sh,bnUWuGẽ',:\_19UKRˍ}2 ^&1nb2o: aJk؝#ױ,X xx6};t~,;Uufe, ޥ b=r$ vr4MiOD:ל/_^`,&"C3%[D jfve˺* 2tf\v0F_k,#送D+T=Qz>goN.HBm$E$,QC4[K=o%X1w%( 9jw?Swn 9V\1a#qy.v e!B?={?^*1bgN;L7HӬ>/h* V!&j*B"2 ?~ul w|Ib2V i J8BpPLx\6 ۓSiz0J'Y&ˣh<M P7Fht g1T.0/g*tcjrI݊g9~..zΞ0l5#PDX. ̃`}zs#Om>hg|nDԨ`.QAp_8[.4=,S3jV'PLKA3$M|c M^%aP,sDt>O"$O(ݨ|SO! ;Y&ܐ6{qI\LI>!'*G "n/ v}Mت9_@c-_:2mX9cT?;rm&ib!-q1!ԂW{i7 +G:yVa]b7jT^:l2X썊pb?]hT W>V(ynfWs;a~(6e6[)@ܽ]dsYPV^P"X$:Kaxo=W$!@%`rTK{DN}ﱆP&>U[b$%WXpҮ+6v7m]J'Gn: <bcVupeu)^2Z 6 Ʀ5 d1cj~$72m䲦](a^oSp6yug.R1RPljO#DCk+`w/ݕ7"Lc"5OB L&k!Ӛ夵lZCq)/&Lh{3"+i#ſz n-YP2IA}9[kJM'BV*.zڨֵpX<} 2?'p{Xkx!l{$zr:L'*4[vF2l;>oҽl'0}*&GdDc_5f(Lػijż#bPNlk\b!D5zl|RVLyN+ۮOX# }Avw-QNAU Bi52DҌG3YL^=܇oX$2gh#={&8ɫ^(5,Á݉R3o<S'*1~ G0SfhБ:$Veь&z)EҠХa>qD,*[NV195W͂TC}lˎ'#R` _4c.8Q݀ vK eaR$S?ah0s\ _m1,0B7z$Ms4ʔʃο;Ð %+o^xca\9*C b6W@ :A4-rT˽wRBlVAAoIك,S/Ƒ?`OΞQi!,*9],H=c3flKnbfX| =ޚk wUgFBo`8ȮnYwa :WcLチ[gF!"(;{;[ۋV̹)cd'@@lTߜC0_8&L ;}wRU[35. IChO ES>ݯA1Rko7?rѵr¼.C2]2`oaJ$&5Y"?H[I<8QA+ΌPF[/h4p$ļQd897tmФn|ŽL 7'U3*8$ڵY$iRm9JgGomNavwV^, zCfq,"GӌuGE}뜺UuDaf+JKq~7 qx*+SB:! B86\WuWfd8u1s ĔrEH Z}isr%KIVK+≆YyP |ග,ߝjB*B_ƓUx,CbȏV=IaG&:^?h2 ~Klz2k c]C}#e+˰хTQ':?1I,iCm&G8~,Ax_be4"q!\1X1URm,*.l)@2Ɯn97` 4vhMB(0RΧZxT~n 'uGk%FpὋ)3XB&n :QN>NTV=?^3 :AI!9B`WN}: YA?eN0nV{&ryHz06}? )Jޖb8K7Vbay{ e*@{J3Rs,u5''Mvx>Y|-:2a ,Ph}1➷)yt0qWo>+2) c(2/4s(Z=)N0/"}&) E!ALqK1zfO(L̞8J'W/T0sdp-46x;K`bVf/##&5vňo?}2>0,J~Tz'C+y &:LwC\|/ѨvndFoyIy-LAY{OviueX߷rd3%ppQ鐧]NAǡ '_U 9$f 5$sFGvs$^e2SrcJOdIR|3A瓝 329r LxOji|b,s267.'jE` 9kns㼂 5% dLLKFD zRc︙I9*_ORPJ‰kVRMaH Ys?F @9i&XB@p./n3ӑI%Κ"g&QQCf6p%oG:5b,zM$~HmV4+"҄[&^=7:`Gq\(rVt8˼{ϥHsxa^6#T#v7@<@dlK߂VZW7V|_=^ۉgpfbT4)coBR2A:^}&ס8e{ pb[sKzmVe;^ wN,('V~ŨW!3MdReeW+cY.l}ݠ},uM#&{8GWJU=>I!B21ٟü!ds;7ZΨ-3A} g-zv93Am uCp8+}< iP̝|kƧ$ Ώω%3m4MQmx|Y=%ҫ6n ;anf7`V˔gW}5Y{:jW;,bi2rb7c#XHl9&\4< 0F@ĉeK_!$QE8'w"?6%n@-Ȥ.t>M;Tk6ʃWQɄnn <$`G-  E%B$ j{s%ɤu2Op8$ /@V3vP|2baa{@ OUsD3~\WKIeV%ƔH4]nۦgdD3ZM5M z܂ !Tfsv;eKAp5{KwiqSYt|֋N^bb[+t[퓞n Bk ׄ-?) ]"Gaç fAփ/jLFOB0\Kc[6ޯ Z`4! sAV`LjOU̠3:kK21pSaQHqHYTnzAė]̛o2 ?"ÀYp=bc1G3᱌Ԣ-@VޮC͐]vX'r!0o3H]Kռ9Kqo<64 :uPWn4@%+j[rB6[ffvN-%ժnq]]KďY:`9^:euAd3-trTEWyD0 #wg#r8x@A.4S췆,Nb~ ;؟v8r"T߿H0>HMjC8k\_ NuPsnmlgoIwAuWvdRXs_Pzբjmi2h'wF_H$cGz0hFg68С /\W/)w&:MJ8f32B$j ǝ,k(AQ%Xf(o2 Cka+(@Ԫ  `ktoVԟ^$LSVge[܄߆F V0z` {a]=+z3djaiJw *LҫM-x#ů<Y `Qd,XnRL1VjOf^|Wﰺ\ p(/H ù[h /^$^ćN*&"z"ٯP.snvi8uэܞes*w2ҳPAwUAuGh=~=`>S/ngpڰ͹kRj)ځvjhqhB逛͙>$z:lBζS*0_+_2BiСJe$O*r]$L3FE쒁{ry.5ԱvR,A@34aT'6npOm}JTކpy`]>3nt8QŲ=40[d\_ZE.spÞɺ{ݷw#craN {7xMR^ ,qfxڑdНǸҕeh#`:o:~`_O̖ ꩳcju^:I*)ApXD\:/Ub0&UShvt&Og}, (UV /bE ݪ" +jCX'VaZ!]ڒpN̾ -u14G ja{ݑ.Ld}!+;\`-> u^|N".C ;` Y1EhE0 L`[d]OtxaXo@OՔIBdȯY2f`5haYb H)aºDYW~ǀ <3ܨokLcf^gXx:.ci uxT|(d,ۀr5r2eRD~5 $II{Ë.w&{)yUʖ {'ieb[V['Aeyyx?HXB5YS BSަx?a0!J;}NAѴO%H8z&w{Nx \Xr/ZЬՀ2j4U8"&ɴXCqN6Ӳx>Io 1JTObI`JGfpLʹIu*:A>$f*^/rP2s"**TďᙰC7JZ?o< 75$\xo݉HYp̖0q8m< /Oa cyEU6wiyym˰dJpD:{*M1A[9ӜKcf\9g< ⟚pTȚ)!7#u-t CZ b 9fp0"&3b@vW4V7oҺIyrIv4o>jJ[iW)ݲ&s sE F% c̶yt}5F0ւ1:ws)@3 *|:wDkb Fl.bbܾN3F$FŶ:@s 6+t #֚kWK ,#3) mJ];>DmXO{W(Wm'GmA%kG4ˌ$,sR} |A[z:s x]Hȏ' %BSD UO mDh<,ؿ3YMB y 3UʒE;d!?: ^T$VJLKܨR#PW&D-Dpc|̔e;H @u'vptBm` fqCi"~ 8[Na![PmcJjl< Vwf]n\Fla3"c=}§ZVaL'Ѫc:6:Qڈ8F$1| J{VsW\R0][SGѰ_dJ[9e0*ß?jmμ (|;Sw(CƄzwWdcY3;cUL-[8H1נxH-ű4F_'0¦s">g_\uIC `CÐ~+>yػS=eH]qWw9>K{r!"E>N=I4ŭ>?Kfʦiht͓.;gNLnݛyY:F8tH >o%6|P`Յ [wvSErb[2lCY$O (oh.n|="SL;Cvj|:΀c: bKmQrCIrBS6C5DF2pC  n'ÜoX4Ƽ Y{ xŽ5 =5:=tEFeeycOo$p ƻ#;,- ]Lr#&[*5 OQ;$Р]{F=gŽeeK*|mgRǵ 2k F Q.;WY-667=of4k?_|MP[jw:chb rcjOdDd =V[&;Yь/p"VQ_ P ֧5ɞQi5ݫQLN6 sHUMR;%Ug]r:qeetWzA8 `!+Q8tv}őmЗT}>bWf@tić/ zqIkjlZC&a#`%( ȳvU _&c " =mrLɒ!εC+]4@tvr:5A kU] i6{﯆-X GK,q()x.ɔRd/izΞiHF '5~t6`bqIs~lm|@TX;]^kJ,r>n*eMD(JxiWL;5jL%F AC))i:ZŎ'~k1p!nA( a`H8w"0٭+JWgJ%1TdDZ>e!.)V7}(0$zDxJPׁ#WͨOE`"lo;`HJT&%rF_ 427Gy9Ey9mxx'_i\˰ LQlVr\юZccdЂ2B3K8JjfLRQG[ uI_ҁXGD2M3. b[vo{f`6nē־!㬧]l*ʄAd}!Fz_#XZeRC,@ DID+(mQ_W&0w@:j֜NlsPrq,ntaNf38pCuNoi 1{-dUv0OC ]^z,~θ=.H+=L1[Dm߽F*R,)t姯H>lUZ$ 'Y R= ;v0v!#t6Wy (٢K۬U-R'l7<ӝVZ##jAD aClV/qo_RtOu`fQbV$DHȵ6H@N.C[;u3,D$Q7=nxerK<,F5}wzIнߖXMȸ!o2OGl?=9Kb܁E#gz3ٺ]^)ގ@Jv-`zXNmx~Qƅ|pzc2<#e|#'#J 8kѣs{? WSZ6q-yG6K[KKլ ].?Ff'p]~ .P!sr^4X}:8.vM&@޵gq\gV etP$9iCEx̖UCi6GhϘ~`rte7*\tƛ&h* tmHz1}Cvgԧdn-b_i:#3~Sflj54s2jW{P9R1܃&2%xBDXT9b P+ URۚfkŐR?LDY0[w GU 7[#7[k`3.t:L]ѡȽҰNӹkQɋ uh7"!//uZIr= *YwXǁǏ.Y>JX ݳ94Dw`юO ~G:ͩVUi4\';z žox+tT* [!CFA1KSIܛ6d{vS$˽),7iM]OEmENY" wŶOfu4ivIv|śzv_] j~Rz~rX8cKrs?^NT68N8dGIB${~6g=׺c2' 1Jّ@[J꠆40OPRy{`k&$B}+֒h7 )CǡLzbziD%: fk&h]E(&J4hrjkW*ԫUTh.m븜 kC=n]+aOݝ/ՃJieE&o8_w\!^zcVv@Q"flW`]$*`8Jqxkldl. bBF/ l{&N9@ix@Fڶ GBPӃKY@N?Y\D@rvGX`}0x}`,[.҅,)A~갴|aBQ8Н@,4(CeoΤ\ۆ-E)504t+3g1 ;f; D/UM #WXsPy'u |$rjp#]Noػ(:װ ĸ#BqQk%B20w`1D˄q:%<$qmS1G.Z~:")i [ mHxܗ4;H|@3Hs_ tj^R+>:5\$hۨPJ742*,)bZRc:{7(0KS5ȝ}erHsp: е3ߦIRL8Ƭ'j !)ѡY:9Kb^ӋmpZͿfqt{X@>1̗L頊FWIX)kw;zǤHVXPbR'D閙Kk )@t]Ŷ!kO7ޠ*f1gC ߠ͌3!w 0'DOU^,S,VVaO0 b_kx\ 5hĆ(>Nf?/ΞQ[Y;TQP|s1ӍHoqtN<̕"RwV !apkC94(Z5p*5HOEw&+=S <zZ/ 1dzB `I"uh, :~)-z 2r%F (9c7yC|XYϊF6 ^f@{ވ3G g2zGԴO tId$W_a=2ڳ`N0oDBcM`J )unq^ϛcP岙+'h٘S1瀠D7y>;IaF(jɘed&j/dlRLiCf<Ƌ0EQ@O]TNw3%L F+$D45T7UvS?czW$o:ܦ z˒K񚛨BrY+)V @D݉|eX縀q^n7i1au8ͽ).k<4hho8,@B(n1Jtz)16qm!qU~t_^ oFأKp  9g31ݵT:sdV<9gmuC~-@5Y^9_mӊA9.!tDyk|рefEEKaGFtz갑$' _sLA6`-+qaJV޿UD3he':ҵݾ|*g$/)O-@2<0t O-ϧ+侜Q < Λ4B!cH_N""5l }RցLNMkB0Kz_ U> dEJv;xHv!683} wk$'K ɇHl$n恄\?ZRLƴFL5Wƍ4#A^. FpJ=/ 0IG-0/Qy3։+X"%r3Ms\kX2=*@˟ _ytPV8K{]Z^ms&d?uO$!J{ >l})c= wh78* ͑g3hJ% /JPӊ(bM X;hoc.@8a _"1dXŻY"Fϗo5 BHz,=X: ~:^QmGU4aXm>M&qߢxxLU&!.@٤ĉThbwFbLm/k-ECMˋ>Cľehp,43t+ޡyٱ9ԧI|^ChGB+c|q?7x 'dH^dr L%c ͗5R+lE@NstR(]@LB<:  Gԃ_Qc#xU۸;$3eQ?_=0̄2JڗIsۍ0%QF=B])0.2DsoCn81`Xaqyw۴(쵈=XI2L’y{g`1*m\O8$ԦX!{lU]JY+d~}Cfp"fk*Cֲr&9/saЄZ$tK2aRz8 $Xmp;C8u[Qot&jL:H^ !{ 5V :ǸlO1XF1&w|p!e^XfX`5w9߱6 Fda6e:w22v]K7bA(ya݄Y躨(A6Zuc 5'V.i3OstUCN'͚ȶr4pm Gm@˩a-@b3cY!~zɖ~PNTDl W*]M%@uD:5EU$x69.Ey-"O24T3Abj^ɐ_S,ʁhD.>?_}!D7iwF 9.5M#B9,2WNeVfe;<1AlgMc)\'$*lDOjjPN}Th$R+)lxOֲx s_R1PZnv}Y/jYD [/LaY=k;anx񙶈C4a 55 R@wg…g:N VĶbsi2(+1 y˻puUӉ+ )H;+kIt$D~Qqeȟc-e+hX~lh_#Bnu/MhAF!N}}"ā5$>FEI^i_lJߔV% @B?H:R$]̲"Z!N0Osu1Jꎂ|afqd3PFRK_L D"~K<6<X0iJf9{:-Y1O?wcc I,_5+JfnQ[ USm((T7Y|7POiryY9wV縤?"r# +f|Z`2l-_ԁKz'x2-#6"LLb(ybQVo>fI=d}? :+ƀSAmru8uVC=C WhWkj2d4l}˵`\P b+oҵ kw?+b#YW<,i=$M:7Mʑ6y:盪ql~m5P!ްXT*7sfpgoow{Hop/4?x dž$0+i\xkm۷ODc| 2L4'vYSIO/!z0m\Lb|Nf'Y ?[2'iaQ8M>6%(<zaӅV_YЎ;r$[VH7ɈPT!!JN f5nxe{̪&*"b"lhNVg9 V%^u(.޾Jǚé~Qo1 Ehh}vI)#I?@Un]j5EU. AaX,dOI#nnDtai d ]*`#^G~,^,$z}–$%<ā%LdS,]aFĠiUDߏN|E09ֈ?a2JDTqOG?\+~#rs -4)ݫݭH1ͱ4cԷ-\TE Z͟"< y  oHXN$K=!\>=1^&5֧ 0#?u=\!aK5ޠۃ$Z'Uˮ/^~wtdl!pɋ|ӷ9I4?McK;|Slk>zylʷtI(iB EZIi\ 7P6ٌ?I5lXR/ѵ8rD$f[ iŲJVS0"hj02AFG3 Ln8P)hɼ8j;RuQ:'y޼iBd?VbY; C:k%ee`*wd~O~-#UD jx t*l'9`5?2qEc}G0lMx t^"ofoi{Wr9ԙCD\7E2M|3 &GgH"Bԁ0>LISA$H(M1zh?ϐY겍{*.X gA7$ibg .t^ |2?KDKgH={.qY# 6t U?#oy>]J Rps.H 찰U{2Ǽ$2S vw d2řL]ܺ)Ncoh{L[;Npɟ+h !V6)IZ{>!QM@{S mR-9ׅ\FPK4]E9;W3iqb*V(T7E?,5zeI eeMoG[̈́ As-Ktv [Mj3#.WBa}dx`XlV Tu,&LBP2j_PS4혬;ڰcg. tBbs9Nd }l+`wK$27O6<gA}LcGLɓ{#wՅO U`&Q{i7 -m LZ C'*#5~j ,*U!-nr?R⦦]$sV䁡q֛P -EñPZG{|>s|t@)YE$/8lF(1y]sȃ1E{}A6sijӸ cZKXp!ݶP9")CE 0d ID;´ e;;]noӸ{fM8H26g'YOcnYtG!Py7s> jq(\#ɿ$븪Z;Opa1 >/>w͗ܰKF.>^;K}+>IH‚2B ^SƷA\ٜmYQ**g\ 㔞b& m+ORWWWstul0箽G?>lN<:k D6̃ԔNHqE{Cj٧Uda,uϐ" ARC3>wDv?#NE K_R^s?z9l~;]}\&H~1D#&L-w뽼}o&O ax^y V/;Gd0kHPDtW>*Я0PXnWG t\wԹ)c*jM:nR,s}ZiM+p8B79CERdK a/cmoTŪY8{@x#l:;4pk4cg{yvB|`%:vbfQd&s+ЄgэMnڳ.)*P2^56MgVF,P{ʋYTų!^IS-zI⌯uH,W UL |#puጹ#d8Q {]8VuC~6g !Jlܟ0!}ZzL%;߯iԖ zc(>lW-Ajt7Mӕ:3TPo1!jf|1چ7BT)0a2as,ws*L~nLPAN{c|>y(`AO߶|ۘ!"D\AF?V6̓3Wߓ';Wv1jYYbXEZiSB4 9)X)3oŹB:p'}+^sTF:UT,G.dr.ՙxv0ԕq%@)O>U)JɆS#"?l%@ #P)H+g6hF~- 4_GNNN[͕4 DGkg,@(Zr2k?Ʋ=Ѯ%F`7{"Z\|Ǫ ꖼb"_j1׹E+z*_7:ܥlymτ'yM }z ӑe& ̢25 kw^zs"55^6=:|%jt ʊL )9Vr{IcyՕ!s, Y$4}QmEaU!vh\MKM40sVv 5f^զWreIɡ}_kAfG=Q8>W ,0kR %3ZgV)Re7T |QΟ9CQ7ϰ͗e!&~Y.PɯRf4 ),|3ϱQ䶾FMj ٳJݖ1VVL8~lHɢf|n++3߉mL1l53AuX@+ /Xi  yp,U {FL xGي Ku7›~ ǖL/%qqb'c#RB;Hwd_d@'q*I3nૄ+{cM/ێ 珅2uPppR2}<4 !OqB'ypإ*Zw:kTNP$AThAX-s+R ȴVQb稜}CkYo7dBl3:o™ 2'n|Ìvu" $uF¦yed&Pl`v4넪})u/fD);EU&=AHd%T+&j".~'q]/wTsM§ zy t&G!F+fTRN_U qv\2B?7I1x{{ GYԬ<4Gw88EU4UíteƉi!)$ꀵFYcLcc9ďx4en XyrK)6}Y2HV2IL!y2UvW\_ӋAu_$1~-n;\uJ5/vEgЅ_?l$mhgbƑ_lھ#qOwE,E_=[f Ƒf3Dp[¡}hc=Kt x:W`coY|sݦ]"x|8|Zj|겍ݾ= ?p izbܛW `;ȽCLR @_I|3{):9^E}AB'K }Ǻt碑i^ݠr$6tEXDo%e|tAqgKplXx7uֻ#[1~&-Z},"8&nE3 "/H"3Fh p-G<.[~;CAB(i 5@"@@+aji~G֧tvMuWO6˫*U]kވD;daK<픧/p"[XGŎXl EDNKgƿ c| YT+nwWI3c)kbiI*gJg4 z ~Y/,s%5~-:g@1I! ǽfw>qJyF|YR>Us!C8~#H|2i&"MDNBz#]E_-nC~>HK_N{:gWwjږl月ġF20!QO9euYv[%-uXJg!'}.al kJa"TL[ 3s `Bj#E!K6!jA> !LWPoi7V r4Qx!Vg5, H0Y.Py m&Gt~![Ljb#cp})|O`'H [ FD{ƣ* y~4s8أ_-hg#oU6p"v?Zcs(d633#kFo+ 퀸YpkI:Yx u|z\ ,2s9 ŀ>JbNP uZ1Z=ͧkt}wf  P;Ю7I4x} {~Skv )@Y %_>*RD%I*&Y%)~Bd]:sfP E`q=7@P9bt%e,Ϩ:,ќp{}CDM-N"ΉJ & J=}l$ !y13:js!:l"2U 7(0q}W yozOc,S}kVъN COeOTioEAASDJP&KCOk2 V;V(dZp)ux4 sG'!1_ jܧv/P0N7T2!.t_ c P'촛I2$S ?rYPeXiۙW4`S݆^A3Feކ Ҍ}+'dcBP@2+r>?Uk݃T=n(a'"n'- `-By;,5!FH=y_ל)$E:2y1&>EpZ>r0aN}%O+[9(TИY h(s}:˞4=u [mL,ދG, ذ*xm*4K7lǰ񘗾Ⴇo/: N.6 "D> ,@6QU+?a7OF@[]J&Afx& ubgrF)[7Hh̬O{+-Kh]}l} Ɩuڬ:B?VAu쪤b~gmje8TgnOee2ڍ@ˆG6V Myc,=2p rVt#e+׶s7 H'\e<(#+`mtBvٶr"áC39[N$'uBU+G+v5Ф'Z<-26>!DݬTMr 3BݓQ06Վ *2`e2܂hR8Ҕ(aОg,ɐ) wJt5fJY(vOF~+ Ǣ 8ozm7`{N;+Ֆo#KlCCx o~d xb {×psv@JC6,g}ԝ.jh#_&[t3&9$6dg3pQ-7#Z\ '9tr@J^C7W7m }FN)Ph߱}̽g >YUΥcN;^qĨWZv٨XS+.)/ )7 kWpsbn;#B5֡>mZؐ6Ku\Zp֌Ivߴ4pjVQ9iSppӢTjo/}輊H#kvU(xv+!??IdzLsڠYE`jϢ8kcXBp%v_ݾ^|%PJ> T4dSΙr$}1Wyg*~TElxm zA$I(x'3=/Zi7]"(I;.ُ<9CEZ< q(!*l] YU|='H# @VTN{(a i3i4]2XJ_#`J\hsڙ33CV)z8Vs*,<}}?0je.<#+jSd">~7m>57GRdF9 #FdzVсVPY Yf14Qjx[y!n |hwnP<]O G'fx#"|śAgžcG$lkĤθG}bEcs%>? -R5JggHc\@M JZ#/8"s_`cFjmgu]O[/Iإ.TNP)K0O OpGJW&CuJ! *"I@xsk=/4dWiHzlTq5LMR~,9;Vx2{˂JӞ 4?C;8b;b Ep] V9JxZfþ94}Z^0܄U;7^Yr&'lRs&Ptp!7 >ncVx&C?4qA󡣖aG,"UcqIa" w'/$trFR fu)bfa7:eᨤ k u*9bW#wԝ>/=aYCA^Zo3sJN9(Q?+!3jn*YaJS2-z(4}X`_۠n~ &* #Vzan!nyұ0K+ԍ\䓩[s G|/7\~l -lv9c mvWD 6X{#/e܇`a2P"jbSHۅPIHhqaA+0aO؂$41eL}  ZGh/=/ %w]*^E5M'7<Ɋx۳÷ŨQ\DxP#J-\(oY5sx2`׊Isl.j}RTuXڥsg9G݂HCy;2R 0)Âp錢e+|-pmo I(l[PXAEe]f²8e20R92U+6u7 5LlIdEuwOi6.HKҽ%f`NjȾ M{6X hW_,A,~ܓ+iFSL"A/{.FYD27S5m MS~{nj{CGdlezL);a8d],+,KчUs#m%ӸYKFWM.>O}v(ٰ64Xce{Mm5EC(.IcE.-ENa~LBҔE"X$ۊZM֎vGhqp#Vh&r+Iw:yֻN,D%yozK9Scֆ^|pvA'szMRc# IAÎߖij- 5x[)"YuW^Rf -Wdo@l ;*L/0L |IK:R>qr%Ul O,7y,sqD&{ù&(η6(Lm,ofX@sN&j>0ӣQ9P]['[(A8ʏ}ddG7kZt.hl,W"ap-:OY"brgZU b7k\PBQXfEqtOR+2v7ʹCP08L(ߗ0QQBy74Eus4BPe=jÒuQV3JKθ}R `oӊA^^q:hK!<$eMϸn0Jo<`=:飥k8z 6]|f᝷o.nAL+U5\ɧ B v[GO,d3 AV]Y>{O#hBx1p:vH+J5#Ckb-szwL 4&syFPS|#-c=;آ&WUwR k|G (M̾8qdY#tm$(Mfnցl,2c/ҷ\8b)oG{WCU3jd0CrV|b*3nnuXjwT2>ݗ;xVu8XB_ºpd4ßDN#;̯rTxF1yÝP^^0, շ7ʔIw;[A\4`Ws.3f4uGBE|^䴇9+ BU[Ýe@[TSl)V~:!O\`|Fp ]`?N-mluX/ɖc 'r (#1nWw5FR)6) PAu%Spza̢qۗȼЀdҌ\xαzӶmQ_f}ɮ׸h s`rUxԂe\?4➝ +GJU7*;v~$!RߗV wh6E3`5:z7^lmEk}KgÜߎNDk ݪT|?9 K  ޕi.>lNâSvS;(?ZII_rEQl7٩kA,*&K}]f¤OkM #nQt$jyj8:TdƝ2qLj&{T?Yf :8'!ĩ&[ F0>sClڽ`0)o"MP<_YT}\$ZBϾ^cޓSF]tܵ\jsฦ9^>>^/c&ָdΗ7r|Ϫ4(li q|84ثzlh]^sY3,*V/9fRJ K':_^@m* sj@uenހi7yoi1 O5xP'ovݭ-i\1g?nͦ臻~EDdHE!>o}kD-&9lȬ/ *pIϨ ]2Mf cz7#^0^І;oS@M-~adPcGK)m)c{F;>-RY#= ˇ\ߺ3BE_Kig_((:oXq2,b a-nˮk8ڎߺڦK~zY~JL,@Q' _H{z{ iVo=='sÊX]'ΰŌg` /ɰDpY'(5!y.mxSSjjAnniAVIdտw.?J &S5$ȿE/gi{FK2N )=# ;a* 1X\r%a oM$M?.#&.R8lt.4,^ 6s >Z/"{IMG=w׺V+jqɔUxwFqOlL{@ 5aRz2{U߂k X-iEɷ%| 4qM+on(6˼i^ =+3 3n\,܌",Ҕc2'^? f1u1B:e6I\/XXaBotym+;/?cCDM]v.EւMug oMD tFAY(!{P 'lMR<}'ni/\|2]E#Tk3V6B]*\|v2r\Jv#,.a XE# FIb yVɭ<֛Xlqr-~n MJX3'tT.a[KUNB[i"kPxeƝ ]kB/+ NxDH [Sc\? ebʏBSCV b㴜;'Ugyo@ߝ"[.]nOnBj 5n,M6&w +^}Sru+MQm$ZY }\kM`6; ݟ-hpG?fQ$JaI5/V>i\N5E(0 Wt/ȃe(bd?O#yxb ೖ_LVŢ :4??NPrwWw̖cm:GRP0+UАZ|* @!#Qt-܌8VR4mURdxgLƷҴ .S^*GAȧP" @N{p|d<ID_5&rn?@]d+s?"vtrm^4}y+ uC# "P(J[*]UF\v |+T #D2`R} 8SȒݓJE'}Ȁgv0ӌ{u3g\:7$zɉU4*Xg"ךz!ŠcX`@}M2*}V;ꐰ="jbɒ ymu!Q GE~Gŏ8~A]롎 JBF=Ol#&q:sII9}Bg}Bc YO P]1g.m߭<{릱Y7f'iuCa''?D%Dos|mnX耹/ξQC]^g!zDtFZ;I5IYީp|3.tJ ŏ9'N W}x;0yj { W":N2%tfH,d e"'j-ı ܛ)(EF 3Mwy5~ג[ig:]F_A*Y=|Wn%Pd__@y?r_ҝ~vB61QNfA; ̩Rp&pX퀅sی hc LeD&<׺:<e;P];Zaz52ȗ5 <!_uATLM⹒ =tXn%J\lLmJ'4 5)/%h%+w'P.nɦNbCTv,f̆s-Z&GCn' AS/Ar5abxf&_|Uŧ7Uxv I6 ˨YswwYktBTZ+ڴQ4.:c` DGԷrg]ZA y_$LAHfCg1̃fm(/+Vie;6v S7\'kRZ's߶ݙ@c|`F$f3 Z?O3e,rbn_ƬM`$ X/SYqrQK64ɰ%*ˣ[ٚԺq Nidy88g1-֨thURiV 6D+z)Wvk* ?])<(g7OTi6`x3@bNP~?Ae]G_4*p>%e2]lч1Žini?6==aOywݡ;ƒy@dd"VQf 1   N\ ҸRmIq&]HO#eR@|K+/GjvAnRcl<_ok t8Q ^׈CȾuZÇu-bzۨ]6\CWHaPMo̷*Ӳ=|n(ǁ dޖ$uQ7)riH gU=9^\S(x0c&AX]mH8M|,z~k#y>zLZgq&tSvEk\s2onXRGg|X ͙TL݊YZsǤ"U)~<$tXbmCj﷙xL'Ζ `e$uLp>[Xҗe^,q[cZ="*Ҁ|m#:ڋR6W< bjs:N+w[x=[D!ݮumrҧ+F9y/IÿKl |9O2wa H7svQ!Jfǹ-7IuQ#2 e| =~r-%b`49i*Vhɶc>~[L5cW8ֻgӠg?Yr-YOpPS6ewNZʢQƩv[>c|b(D;Ogړ%5;r46Igz ,w++c ^= _Mz]E5,::X줶~).Rۋ6z?Q熁K_Qnlz^[s9l7iV"fj5iƱ\t1K=t{^ȮZ_F vs66_P6YXEfYLO&XSԣ K]X\NZ&0b]-?Fr{8W&nyn>RV< pu[=v;.qu*ӬڅXQ72Ra% Y X]r~ zy[ |=U+d-ҀMUCEٔHe*ybtѸQJMGx]qD|*uCd<,Pf?x ԆaQJK9@NuM= Q`PzP1V>Z'^ Gnj8[3 ^!V$2 )'Ton-W+5[p)xzͰ tWr/3T 475-ь[kpȍ?ln#"jʯ.1޳jeF}ǨQ&R5tUO\q;0Y1!;򥝼PD|u䍸iD1n'?^u'-y*R~hp{u4JR۪J/1@6̠$#p]/qlvʕ {-jx:r{3>HN-+`x!ᩬsS>b=vcSljWns4sעLk[5DFX#ӊOGbALl.|$:He2ktm,Gq;W9pf5#]@9@f ˟+wxi!7:l VLrUU=2+m1'a[HxgGRRy&ye=Tc>I .p |Tz2p<|:y2} 'Pқ:ʇ$a񂹕>H NF! 3Ao2SIsuO]/L1]pO8Tm1X ?\޺90M҄?d[ /F輆֜ߚLDo]__$eb*>Ŕj\fR`awΗE҂@@KG 4~ڶNVق}[Ɛ6< JyXxj bT⥈}p^!;׃"NS5S#[_U6#sP' n@;cL,] ;YT߳%'Ħ32 /~Wˆ.WLy]s`m0WցBgWHD/S%O+Y4)! я3Q3x_w$ZW4FhpfTǚ5bpc9xO +&`H#Nds$ v< l>n3_ħkJo5r>w<O2 &aGؘɠ͎ 冟7;7QVTs 1?jV D&x^&7DjMZ?l۠ z.e~}EZFҎxNSc iPEߓ_L#M3B< ?ɵA%BIpALWԢ m:!㡯s)m/ׅVFqxZ_ tϘ.6N*$6~p+>,_Bmv , nPZF+ ȇ[Ԫq7 6sKpͤVY49.xwy*:c\z5fqLFBԠoI#, kVWq+u|]&}L)] _LmﶇGlR.H"۹RGI3jjHBsəǠM2ZL憎3b\\nSׁA_qBΩYňbfBn2lHO IgU*`MEПGj9v * EνD& ܳМJ]AMlhGT=\FsZ iټL@ﯲ,/ cs,tcauM~{]fdaغpV&Q3RbAJ*\5JŮRBm`sW]H.hhQq ޲.FsѼc0f-k~_a0Qh$]Mty8IYg*B{tP?R,7&MZO$$^#,؎q PZ+ S+j+V.|h0\w!H [(h7 1&aٛnfWIAzO#-q+-u/?ԈXS鋶 zw쏋H !wR,p"e54hvKt۳˫pHc!1E&km|ƛ: /o5!ڶ$sb"ό/|}X ttR+40^e=h4?J#O+Ԕ2ObNԴ0#?{FUj; d>>ZU!xnVOAkŅ2F*,-3[b7X{"r5PFL^N?AXogD5j\PHS4*f/}K1e_uD6t* 7?i}>Ӡv $npf|SᴒaF9X_9daFG[s7@ސ䍎#!Y 5i QYNGwgBqgCX+H [F?qYDREPܯɟ/ƳGkIbN8rqVy/;zyo!ߗ?fuLP;k|d/`67',F'Y+]eԇ;-4%?YGz*@n:Hj⁀_hݒx. 4ג|hQ쬀rPEaEI`׻cĺF(K.KS\E~,xD2լrҾe^]CtjElkRj.8PEߘagX"[;2C rY: [> ?kj_"S("{W?}:R%捼ZzC*لVus ·>I0d]:S2cBWCd}FjL^EAw/k$weZ|?"p˶z:Y*Ś-abSElɏpPJ*sٵpq:nJX>6ɅdY1w? "xY<;3)W{6 q++|i[c !LKl] !(Z80 e ~΂מg۲7"r 6SE?{$}4pMh}"pn ӫ۠&u63e… L~,/Z#mp]L6B|SH*7/3Roݺ~93jP[T vu'hzVoR G'h3z _hG! |$o?"Zݳx]{M4^ء/qp9NRȟ gXuTOڛ9b7֍r&2N߁{.zg& 1EyŚ8 z q`5u:9,m5U%{tk^ܼU@ cGx+NYSQEنp'R>3u: 6c /6V-ZҀJQ_I,ʇI[Zɖ@jS8IJiNM ON ح4 p-x IM?2nX/TSjk^+Z+8RE7y|Ȩm'(}7dc+wJ1\:ƾ_ wrv -΋7d-7\8YD~45|ףױDSM`RY a,/fI:گ u}e8lHUridփ|]8sO-l,!W64UG)Pi, ia-k6k cc{?Gr FUlPosl'[ UE]y}N@bZj(+d-Ȥ9o[KwZ1fΠ!'661:dM 2<ʮD_nW5`aK嚡q)*Pxx8`C|Io>MXs> sS'!ߌX;6< IhKUOXh'+|ST-.hh 򔅾DD ,#[k91BHB"# mtdf><֞Ha(/<V4j$Co`:q^M7- E"D̺o$QG<:NOD-8K2cL?Wq{`&_[g"*&OkQZu$i$k};ʹ>[yr Ƚ+؆Brq1a` =KQG4oz38G.MyŦ`R1\6+au8E;.ZS9f0%46^#9`콊2+ZNnӂ˦C Sیoˇjwkpۖ8+ק" F yP*g3uzHVd1kvlgo۩& V|_Dd1ʥPL9@b"w|ޙ?Dk[5ɱwSE' 1>9Oke0d *@1tc䜶e?Ω#hq8bV75'V+wi/_i_HW yl,?147t ۷p}[e_BH\BjA#Dd}U g{E:([\Aʽ]Lw- W.ړDfbIy?X"ܨ,$/Nbf=HOy 39v:Yw9Gz nԵeqq㠏n0"])|Bz5tL ѳERt|>ў`14s@ԘU(_ J9;RuH| ѫ2%]VEh@GSHq8% _}5iK {bsҳԡN y.%,8Pk(:2ogY*;޹-yb^6mB9}&B7z~A"ҵ19+z: ;~32/p'$J[/D3X=dFi bcGt4Y|8vQOet5m7Ý35q+*!$y7A~#8*%oqsX$uPz>$lS|+aq Bڿ_xAM_8`ҌJZL]OX% يfzٟ#XFC?|2 { n/R~3QzǨ q{iF\m"a$ v2=2HOBӷB!7,";INžwrr[t;Lt&9'P$f13'иXI\|# [ η[Ol,Vy}X N Ҽx]`lpqZV=qfWE\z´7ҋ>'#lWk$1Eg +[l3rڒ:(;,o7U Xf}uv82+F9Ƭ4 Uf/Kl xQzU0:߈'*ma.ГX]lȑ(bQ6YYg%ul((>5 aή`ț$pjqU8qӧGȓq],D D1m.k0O?a 0oPtcp5ޮ@BbiHY]h$Ŷ[F=mV?StSRGm1vg%dBo\k߯pYկOd5Ec<ƃEf/P@CE>\-"ѠU㾬aP8Y܁thzalWf{b=fW3w_NruUkfl ?Q.A# LmOgn!~e)Vp7ռMOkYj 옻{aq֍,ې|TpVCh߽MzU49gX~@45/ѧA%1 HԚK_'2xQv?KTdtggD/hi[䅳ip];uZI=XYr;w"i2d7+w(:+AV}9NK{ fG6%Ie]5I5Ӳc qjv~-o_ouQPgezzdoBp+EӼR!6[$KuVaec\`My3 t0AM>N"':5blC ;Ŝmޤ6B<+)]$ qۖh?<8nݽ@8.絃(ԀDc6榭F]hT`O-w#(ƍVB*{(iay7"~ZB ,ކQk:6f ptj5IӁrF"Jؖcnݏ)X jc"f#d';mfg֐e%;ɠ< z':σ.lkVD |ArA ߍW Eb}="NT TI~Űli[u8Pb?_8(Z6w/F| ׿Hͬj]-job{r <*'| W@N$N^rMqrk&NΌG TfXGyTR Z/hR/ŋ;m>{r5Ca @dƒĢ:QMz9+m7P(}_+gD/7O3Ql+_1/`8!OK 3 =#@n:N\Gl,#)BxȦ^:O !LAg_p<&Ke5O{e;3ID`C0ٺᇫ,񐢌[Q+Esw$Pj܉^a* :Fw c_ -g~fEHw~*vw㿨SefsLN֙-۝n`BsU:BOfέv +3/1-N1PzCcǷPViؑJS]> n  (FnMg| _KCϠm1Xt v /ߥ@p \Jm֫$R6<҇CJl>Ůϵ(*vTq0-3\4<{~\'NU3쐆 ОS<' QnjVgEzqf H~CJAi854E!+Lԓ5ih8xj1]r7RNx'!:d}hAB*#{4`]훞/BקyJz9x][&CI[.i@^xܸ! Xї9|xN&ΌQ`#c%Hʖ?`\`G ё+\%8QuI5^@d6KD{ÿVTc:Ӡ)"/V1>)tNnb(=WSc踦^K6md?ۣPʾI\(Ybq͖&?'BmeS *4p .GB7~0qvI^$ -ܡxt^d$CGӀǨIr6L >G3e>.°Lt$-٣aӯбC;}6k{X7Qݔ'T랐 1׺~hSDN)"r Etݬ r6y)k:-Ƹ+m\V')G! dg+h#aͼ"ѝʑ jNcUe7~}*a쇱jŀ84ywٷ(/C=5OIѴu羜T J^n5Ja o ٯB䡬fm1kk٤6Kb' GE-G“7/>Zs75 wZ`Ժm.~ BSle ~jQ9tDtxڶ3Tf5 j97Em^J^츿Res+Oie(<dvEOK0,py#hQʳ>w{Pߦ#feE&-{{2H-3!i#94Oz:jǬBw3]}ni <ڪ%#ėB!T-%MɈKP5;vћ|bN_,ۿUPڛh׌DQW/ ׉A9&)b|ɤ}W̓R.k݆8*#-wq:"\&:( XuTD)T8nQ)ao`ܑƳqn0r0)gω0x`_uN5\_1p O#5l%8'e=a"t_6>{[D|kʧzWdB2#SCkQ5>7咅%$ [)O( ?3{ R:qJk>ju-nLϛ`%|3p3^{:Qbe <]1`==ٓyPgA̺(A׊݀[Z]dE"Ο Y86O "ku B>+IΆT񖰬a_ !eX~; L;\DY K8qͅ4ᥨ`T4Q,Tk'1YIQHwhʽm-sbA-GDec|?I^44& rOMk:7Oj.͎;580Ee`^*lRaUOF7rۃ7tO s68w$pc6[!B#СĎr/Y]K%,F5tLMU`mJ/J+ nWReQFPv p9ġoKhņK6S񴮉Mr%]z$oϑ? I x{3|?>DD8Ȝ5io\n |'b*{oҕ]} Ǡto_vtfpMb4m=&/~PEң$)\#~OGR1F0ca2̹Lz@?ˣzI7tnat+@Y]bg#?趔\k*M hNqiMqS-_9bfXawnZow.5u<:o4L܅Ak zJs3ھrX6{->*mՄ!-7,0 -v7+X!a]s>uzp,8Z)V_'2!S>c`plGmފ rG@5iz:IqxcN\uݸpT/ǏwƧ cmI9Wl&5g=7J6H zA,d{opӘgfCp /M2Y&8&ۛYd8&>[ĜX7 H[ gxWѻX:@Tc heuPZ*ǁwoA4щ>#v)ĥ ēOq/[soԱzC_B(YbjQp5C B,pk G?{ʝߢҷ_yÛpX5t^, e$f_zo]Yst6wY}E|ruIB>sk4E\OM.G+i6gp%΄ _AVX^o$ўA%'ھykQV`vqcEP8͓2wkV6>8R`k!͋m5`ɗq%`8bv73('^@ҀReue$3F X fXrݫCF,fـN J,Nʣc1yEFh@`yr P6"8zlt(b)vvqYn7[B7Z+wJ_Q~_owgnUB??'wV[Nro6{v:k[RQ7DZZ4)M"P֭uëJzmK /nk 0*O\C%_K[n#y{g69NK*rsn]T^8B#$"xgc=ZBgC_K)V"qNgn')<0eUNKj|wkJ? /ĿK~; ࣦgkR|FX`ߓ VlMvOLL(TH"߄_dW~xfMNe^GS#Y[eqDvӶLtQ+3Sn!f٦gk7 <MމkkY;dMtd@YhI8hc"#Z+fuQL틣 (Hqy5FyxXxsGRvO7_߿Sh{[|8Lz@#Ŀ&:1hJn۽O2y,qN4`'v]H|p `+bΓR$g呉q94#+#l~dF B\IRdlYvm(6IF9*mIXn[IXMkY}/ϴqnÝHɤjiE@LɧL??[eT{ʼn`=T|V;e5Ogqy-台k-*a?Xvp!4ƺ1F,JUM+GG'8/X9SӆHd ;L.#^f /6B1.Yd^w-ʣHIQPg:mklSSH)r`=;7;G_KnMWp211%S-6!Lر(%:[RZuCSZ%nCCuW=RTN-, "lXq\5D<8-2ޒ@FE[T6J2(X qjvRK( ѱD>V̇.Q$}˲NmSmAR3ui *bDHi,TVy[tqCpycp_J?1Xz18r&bR3Вթ1CEY Ւfۗ+#10nJQ<3X@S+JW3()yIyhR$yb>bdҮ*kٗj [g0Qp*(ט't8ۂWd2~D4)T~l,S;ȊҨ>F ~9"L-|b`*߂%JK|翦u'jȸھ(>T9[(c]QX+*˗|V# zJYA` v'a12 ;X7oj-vH~'{:PT͎i;|I;4TvI"- |g15tPXN(e `H%ɱCv׬,f ޸=9X!ᅤZ賈b& ?iq7C<>v;FDh [ ]?E톋ͨW Dĉ8mīb?\:n^ 4JBA3w/YDYw~ë}L} \Xh1C:AF5O$为)#sԢA&-x\7OaV% xUOWD!<-/xu~bZpz2d> v 0Q=* mbv;22էb6uߕCBTzCh d"_vs1n""L#dX+ڸQ!/6+ytV;UηtI?#HpB!SmT=4RQ<2DBڀjUa x&L-1 ʛ9FquF:]<8r.8]dȜﴼ?Y4\3[oϕ'4XqZ%/7zLO~5;9P.t4S,~ 9f(|Vhҋj>wh,m7 f9^.rQ.P o 4CLLrԘJtxf)2_QRW~Q+ĉEHrOާ0so$[j8wظd/ ȃ_ Wb@]yA [اa+7嵧3Ton ,3\,>(mMb ASDu5tRhFbΣFpJJV]` 9 yH'Lk4ro FF*ðzN`*BFIG_f(3 0.g3b2qq$1QEW_ˮӥ/ \Ƕ1u}t>dG3U<<`ROV&hr^98p9?{9\- XN?St%kOqz]2T,80#m*=4^J⦆%yI2oNSS+8tl1"Ws(G1T.qc,QpAB/U^Qd΁ؾ]{G26~fAE3&BZ>t5m+撛 !І&j]plS[]ozZ6UszpC~339N\9\Ñ4eU)6~%&£XF<>:vg΅y,7 +`'g;=Kg[+9ʟl{ǶcX:a)ғ< :٨+pX"CL wBXzoW6` ߟMݤ!"X|x5QaZNXra{@9gdhxݗxdmށXP5#-YG|h܊ҥ]I`+Ò^%VqjR1`6kI6l?ЂvT$Ke=ߣg_6o[:Jc|nUc3*:0)3k#4V']u=C,ny6PA)B4ѬR(|'5̞4CRJQtbGty]f&5_ 39uDd8dhg8'D/ozTfw=Q*h($y5 ~S1}A6Xi`DT3.1Ƚec( YLf`/Y/0Gжi%qIy(ŭ5w vx6 ,9O%sΧ#-кږg9/_{2\O4CJ.i6ݤXߗ^6l7adz H@^¿efG'j] 'ظ_OtaVy6R#g#C}$Vуp)UNno4I(EAiy42368Q@g fpbN+l2=;z秊 }^&az#XA&;@5}Wȅ vSڱM["oS"<>'ړ/m8\en{4MsW4S JhTl~ ?wwR٫ a T {{#HY4)^XdT7 T V-l>9#Jp88Eon!>GCPlofʭ%]~DDwcMh4CC5I֥! D8RgҼ`3d @ N~@uk"R5^ \JBNhHxmwr]If+%bB`pB0d fFxƤ%lD6FS?F8n{Hj i$(૖l, t0Ī_I@Pk?mז Pl^t<Ʌ%TT&t!pz;wyU ! U&.weȼZEq8W2& uS/SSyi+!fhXf1axZOk95řc_)?tBzӐ`++Y571w9ywE<sǘ:\ z w"[z'ݢU dmql|jYlE;S.mt%gM5(1mh(c5TH_(~@Nu&}@ /gCӁ+NUfmq':v>1ЁD,aŠ(ž$'0>~^y97*}$wFƭo yYpݸӥD#俅g0sU1c˭pET;WR݃~j kyZcq-׆5h@&vE`V^|ϬH<.\Px=)iJ{~6+gJ4Cr *A|G^O[JXyw.2YfL ?vn\tSO&\bi z瑹ҚȆ13DaSē#s$0 &Jt{aZc˜ZdF3mEYݦtN kHko8BMBk}W5p`bSp 5`/E,SUk*f>ri/5oԨ5a_(__8Pc@j@h@_cMN@ &qB#WUuπᆹ jX)Usʩp_̀6~kW G+ )8t|y9LݨqZc^i׮`驜ήKprBv7ȭv|`ƙr>gzmVur^f:#wكހ(ap0N6UJ|F2];=7FSi9zDퟤKA^;h(N1.OY886&Q,G><!Vǿ̇R Fi>#gK{B=K5>26F8o20ri(nksű< O\Hդ1qgVB'!/grxOz6p}j/U3&'hA?x4?DF~+uuvDԦ 8$ڲ[;)^!f  3`}4%.k.ZtFʀ h!U :"ߣ8md'U:^$}\Ú|\gWu)'<4 j>^88e~Hr5I]L젋]H,+E9Z+N+xulXKEZ݀c['MsYj$eYAÕ);SfȬS/G>9?V׮>0h |(b#c?vx\3ނ+[DVydL۩Jhn3+)^OX#\nRn ۜyFRnO,zFzB~c0|>dyPXQ!pBBT=Z/ (q=?D!Q^ 8WVHʔѕ']Z*Xu_8`4UԅBQ3=MK3 f4T~{@[ޝhG~S=36ޓS`.v`Վ{"LYFa<^w11ɧۼTԶX ku (¿1{LJn&ޞ/| g2c`J CaLJvUa*Dz+đeUtDםϭA ȟ;,O&+KO`jΦ5ljLQL;0BAYpc,1e=>"~2L+u.A$U裣p>m8(A 6B?"]/w-x.۽"D'Jɢ>U6y}]^tVoGpJԯ@UN"ܵAKZ|_SEF`?o?2ӻ c¥$e7pR{>p qCןZ@8rKU :~(AdtIIռl5i,-h}̕D4 V R'ݗ7tD~Cz̬`FZT-7a!eUZuRٚY^\a{^]^X˼ee{&':/<@oDSoR~ UwKacȨ[P<} 2՛yS17k1BCsݘW,'>YԦL{ |e rG VPA#'U/' R4x6nЃ~ySi7Nn'o>^r1Dn'V?~+">37Kl6>ض1(,Zl{z^AYm@w|+4;zh9̜" 7~Q^)̡ƮgA}pxXHHm7:HXjÀ9})v;чby1g%#j_ɈH֖o1`nwMIxpuæRn:S$Q%t}V$NaojiAMIƅ~ΪCI}M7(t:3 TX4|@wMnfnNQZhj1]!|1ʥKRGyemRwbb)2>jrQeuz :5?A+KX^ab!Xq]5¥#=ljWri~69@D>ӢDڲv9΂{ki?s@)?K^\!DN N D7tkRm! %tfD*ܦyO7 ݻ2\<[Ĩ7|W8Cm|oy5sJ|NJGx9%cMCcwt:%.6LR<"M{8.|`|+aA;DK7C=L:njzHljfeQ*tؐ \MK$蘁7';[U`J7.y_U#e9ωvz?ū8)) C-1;Ul9Q_Ir[x4 7hOtc΢-SIH$Vy lo@IQ.c~NBqODX?Z:Q$9[ò^s1طIt#G8ve!pcؠOQCv%,w]<xqY"%J0{݊UQ^nm ­Fc2ε.-_sN4ߙeN#sSk "aߞ\TgEM 'y߭wzxse׈3c\=#R;:(pj5)0JtKׇoRxNmwѰ:hE[ddNq4h$PAJMYdp,M|䑿 ŏtR(j. yi%ᓽ!2yfFxhUh^ֲ;*|Q%žTSLos>fVe;7#0LU"~iqet) s,k@2 WT䯀ܟH˻SQCW>4+-0&}0m"#Q@BSzD@m|2Q=g-j/t^[.;7c*O33$̇%(w4r#0@%V)]m7 p#ElKS_sG_5#~V7\. U'shzdߡ`ʤK<'1`Q7Ic|0wn/k;X~k&cn.%A(_r+Tz/YF2y,Tƚ >E)Ԝr(ldcSiDdhƥtK"˫}?`nK~YRKCL>a^NGzc}gBf!d4Y3!%\ώY8kMu8Pڢ+OxZ5G%wYIuPC܅|A@zQmybJڪ_1gΙe߄aCk.(]Qxzi 6Y HC^;BIRhH,'Q~}m6Pr!!aFtkU]+,~LՔʇZ*a%94zѣ7b:QǤ/0+fз^ˇ4%D7P}ŖJ c}Q0ČSTSx݌2w7Ԡk-D; bg4Aٻ8ëFi%DK@I&ZOx}2'I!2.;1M={H'^=CH dwm@!0 DIoE{)nL襒m3^T;T>Y&m#\ekKfҼ7A?Т`/'k##tiM :|fsmX}<8*g9p{^7Bțo<juBwĖCq_!0d)ca%.U18Uk bc`#G,W_h݂=(' fIc^>AO?=T AW}LtT*yO!i.j gbj[~ _\M{ɲ1E T-a&zJ7W{`ɇw{{ 6ѭ"Xt: t2 *U)yH xPEjI鷊ci~̈f1ELPND̳'ʀ$)wbΩb%ɢ8+hj{ }C,L_/X> ٸف-^!Tc&Y{|ϝ' ; GGS{t? 1;nrr^D]~t(+Ϊ \ m/Jw{Vty@3=7IBa3Iibش^G+ G7!2*L;)piTA<`ৱ[V-_%wg1Nx f SZ`Wk/~}glp6F*0rȐ =k˂ص'(nRTmt=9D9'Phب;(v 2ʷś.8[<²ZmMR.p@>i FX2\\KVj?8 G җ4e; _j7..=~b=:#)kDjVc"*6+a!FQ3ZT]Wj,/G%eoivxUߞ{,uՙ1fIQӣ Z;9vL>)vhEy6o,_iy '<&ӈ/j{ˊ$hor$gj~o̭}h],4MhO Ր?ݜZB ͺR|,PKYdEyx߫(~㠺vR&,۝' !v> pDt [{?v L?˟=kY =p]|HDHse}271 aX=*PEor17OWUaN!:bJ vQ '.(kϚIjk(f017+ ֬!h7NcH6yaUn+[&SL=(0/?* 2'K*AC9Rll2;byrO ]Is}+vGk^.غ.%b~Ļ/T!Gk*lIX^*F:\qR>>=1֎2͙I1Mm]_0>3TUԙi/\^z6:IF]WV޶l.6}50fuŀ#DZ5PL?2@D9Y ;>oNyiXeBB̌.utSvz,J%M|]^ꧥr#$v8 h9 }ÿo"kΩŅ,kF'JP/:>+8f}HI=BZ,&rM kƣs"<"]7b GlBNF_堢Ly\(cE|d,%R)`)bSuB=H~pN9ajpƧEhrq:EɺA4}إ.A=5m+9}BPn$qG7aXlk܌zjhRgJH`8Q~8U=?iLAIE@v>6?=TbdO-{sgcx OeNpJ>7T먳xV5܂D'3֧\?_Ԯ\ZesM1P\EK5#}f!Ķq7Wmٟ7>qEP; $ڵz6IjEM=gi?zM´Bi}`=wYޠݾEn`SG2;%cVJ^Oq20YE&jc9lVOPn"027cPF5}n1VKhT.@3 Rhzz3Q0qQ? cHbI_ڬs33Dj>")Gk3X$OTY-lyF96Ab`Hbǝ=#j;.^Y%eڊn(swDb zd5^tʭ%ضfN][6ʃVTLƪ^>񑔽v?@e +0Y7ҩ\a NG>[&gY~ə#Ȩ܊]~Ɏ"-'+ǷK+{RuU ߡ&be,vM5;g NHYKTc+U\h ~wBr^Yd!ow#!*[W_Ze`zVd*uJ17/Wy D ʎe]XڄUnS">/(!8W U#3؂\HYgSπ\)!niy9,HwřQ#txiUT !y.Ǎ#.# >^µQaZ4_G̫@b?sfB _D`ݐZ;7M 9@wphdWS< ?Ud;$kzS 49%ǔ+PVR2ca ~I O?[A TkYDPQbw 0lr8ȟv:̎S W1$Ay4!+\0 Cs?rm|> @] &xsK?F(ﴩ`0vE'Di;s *3U~.ŋ o55a!P q74x)s۷"c[/<*毢( /{'y$7g}J%[$(n܃Hhk4[->+Q^{76^<$keӋuCca,x #E ւ n'c̚/mܳ,L{kYP RCH.-VW[:xֽ.]YW*?:CimܕQ:ϰSϸ(tybWSRΞ)a:K֫WUdTU|fZtMڷS?LC%`^ę60UJ*}XTNPœ!nqKyTH'jiތj+$z'uTNYn2rRjKbz,Sx>e($R);ݹKX cD)BNb 0A[!s-qNPTk]I..ta8 aΚjR1 y? b9q?:K $,]S>&.,*曢dXη|q*c (>Ț=#{FI+:>iOR d6dۀblYp-#˯̨anm':>0Lp{71`8YC'bqGe<=|5h+fbء.4TduCW>Î}J"]wYrP4oL3s*L.a7[sW`+A zJH0zwP? Lgjn׆ր.c'~^-Fg"n[lJDו'HF4w|tX+ &;~;;hm4m{K`&QRv{WXB4?0`:ǜ}}EIl8uY9TO\^48!41)U~6U` Y&+*qs(C^Kh\{w'#HG{bkmf@;cv$Tvu*Xc7ݱ/)բĜƃކW2G{ ?7R*!^M v#u'u,$dr|Zm]Z&@Fc:u|})RˌgBJu{%$4 ` 2=n~Pc vK{ۢ^|Ã@-nY e2I>D70HKFd%^d7zCܴ6'f!VOGfqݧV*\,7@XX7PCl%lolfAmRJMO{_B!~O-Ѡ"VKϦCؤj^kB!`M?`68uV8MvRG_ E`q\ (1lS֥ޖa봥]чxzY@H6?eN(RQLH3= ٥q$C^C%6mߦ#a+|̣GY'p kdd+]u$h ,h ;& 1 {zR^hKr9>1,#YFBվQ j0 D?iz0p >e}[j[U.6D㪎 ٢!ܑ)Owu#íXѢL揌~SemB?L1(Їը}\'|ln ǏKtk! AVѬɿ&ls1AHY&K5VٌEUbbOKJςc1ú~P4z Dsޙ=E`(AfRR2(G^@+Xt9 :40 (&Gg&sn,?yTeVŜhdt37R!ݤu2TH颛O˼eumY-=( %j%0"#~3-߇Vd-8v {&a. Ӛ :A 4**, Bĵ`B 8= 8|TbJI2SAO<}|YE(A:,˧R4gwbsHQF ?vSB2mq[0y挥~i4-K(;)KۜsBP5JRkcS~s3mFk:zhmT nPOHO=R@گ+D1}C,Sl򵉁uf GR$?Ngk$##@༯V$/xxK՚_=1ROy3),>L@UTvԱt;T{&3,kbg9.c MGI5ڦ-۽ɯY8)چn})O (MЫm i!%Zp* q-=D$JVWfe>}X@O* iK j5 Oby5=ftMYSjˋVS{m %ԥv @2ۥJ)~]۞vM(ę,ss1;ڶ|Nc 7E{D\hP5iiRxpY-{8œ?>׏F;th{ݝ獄+~k&;9Euh!b!㓀$B5+;:=N$yf6dHmG\wR}9J`pӸdaL %ު ٻIhl)cj~|hA2yvK/l.0R/|֙S騅0̾QǦ9[NhU!W% C-8ō]XߐV)347Q*,];mG}cC?^ иt ˈ1P l|xGxe$*(uY0dH{QCCF`iM@=-/nY0Ղx.^]?/^9^q?D;!z#mG=yd]FFW CXhQNXǹPed8m!bZi7 WcU2bjj)QZ"OU~5%w87L©m| W`ޫodKFshloV&+zl~5Ht·pf=[PL8i_rMC2c*425%/$rv*<0=ٌ'j{&4A2½cOdC"Y8~~2t#K 7I|qRpE |x=O/IRwZVa \阁G;xHHO%*@ĹRX4aA Tk)BQl\W"w |Q@fu1JtWZwt]&@ ڏHK䏅[E^2`J׫N7ϝ8ܑu o6d=O\yc -Ҍ4QS3Ǚj+T ژAmj*$ ԦjS?6+36Bw&5`Qe q=W'M-sTsOS_XEaKGʢR5H^t&auGѓ|73S:ߡܷsrHWS|gAu){0@Cc yXiKfԲ,cl~'×vi CK'['m9g휭/WP>МP$ŘFM!\kcE=Whó!tEy8̩N3p6#2!3ɏKO, 0LY~-zcvK ={ `_K͙ޔaG3rX}\jymϢdL*ٕ1~O_s$˩܉ WEz6WP+,D#@$揗Tx3ڎҒ;A2Sy}C@=;eiO)w&dޯL"5LwY2H*(mq]M Ӯ({ $}KJ˒?V`D/Bu__\Gz!˙Fy Hb.b1X<OGa'!3A ^7tH~?f 3oː\&kNW:~ABVu"5}-?w F2E?umo/,zj;C XI&Pe/lҋ|T3#.|1/QRri ͟ᤳF *GJP3`OwtM^g˜wN]r)큵!fPE!#HTVZ h61/<%uv,${$sւd5Ye.R%8}5K$ NWV8AѪ^IxZ\t8hsR"C BBVd}97BrUs1PEnzg`q^nT>nN2wUgTJߴklҤMNݠ8`[Q 5QNCjըLd#2v& m|uqZ޷q$318HZEi9 ^H5h?!!j:\u`_ߕS@Oq A{|/9R63إOE=cX90Ihؿ=-JUU ̫Œ@I[rbcKq ܖ՗ )WKo#Ӯtc^~-9֔'EιkP{pWrgoY lz](ҭ=!&,^gǽn9+&b5:M~2|!/W!o"O$$v ;Gg;$i2΅ Lda.I\<~<"QЕ.ŻY%LTi_zr'itrHQKj'}= ج-^tqόhxS~{ N^F6֙ nzXZH#N7+՚EYaˡ5#P3lbp<{Dc0֝0G0ϡ2(U2z}6wk!!]p7h'CMohs| bމy=Z8>!l|)M5!K/\_Ll4!H,@vͩkEmF'TNIA;uVoM$sG 9$}Mw%O >!v-=[W)W-+F]o$P=ItwK%?l@U$K9)J(xocLJ*4+أSfD jZ` j hΓyLDTmb5>{G\{Ê bI[e{,G`:R `GLJͧ-5 3M$!p]\ΨPBFmH`EIilr?}=ا+BŸ>* 60/ApEFFLSٶPSa"׾3a]Ag]ibVe0>~T}%Y^X, `9Bu]mfŎpP{uR$ Pbty_S\µb&}  rʘxh%]ʙʷPZl/p_A]_n:^BQ4խtK)eD4𓽝٢yqA_Loh2] 'U\X Z*T\P'Q:rALQa:^W8|>Ҵ,ұ${qė<6ϣIރ Q!/#O["S q17J\?/9gB?:h6,odt:;X{ҩEM^Q͍X|%.f3JRԝ^tCvgλ'8ģRD8E GtneI8QK|B./g- IYoDCۂ&FiW-T"5_C(7ArCVa[Tu䃥2>7du,T(w&Q w2|R8dpP9fhЎڸt _HZ"y6و*@Y^Z 0˝@zqC :}+AInׄͨ*j v|G{9e]}Ŋ $&Ӊ8>Vu_LxD.Xp&00Z4+.ӄysh$`]C*I7!d!5_%76%uP@p'C*~щ0/&%҇WNP3йtf6D=~oAVM*L0ʩ5#[ uEổ~j.P=X"l{J `M GJcqD(ۗ AApfs!}XTR5@ e>&2&Nc03xdַ3pĞL. @iEJ%LAnzo]jkexe {$1R's;R6ڮeb \vGDw[G`cl] |^x/u-xݝNG Λt?; :;2go0l e]O{431a֨;{RrZ~[ŴwJɐ}6:p7ZEeIל`z ӢR.y}4IKr[PA-igV(B6C@_:طٞA k CXt9q'*Hd9C'*#~< 0%ssr%ƎFHs> 1.U&>W~"\ly. =btJKŬ ^e΂S52{!N)銺DhxE7Lif&A/fK>eI)ĚWh]Pza"|[;"mnÇgb2Cҙ0dTfS (󛜌7E&Xn볊yg-e&! q,(wr\kM^CE\B@S-#tu lj4Z6rHm> .hK=h)rUJNi}:qC._dޤKw QK(ƞvnҮ#e|f}`q,ļ+;wzn_-(=<'*ߎx+$L!hTĈBxJȊf A<ȏ3^f#G?״`&zN5$V (SxSv}rj0SVٟϩ|1d՘AeY=]{s 53uSGmpCtWAloh{ JBSݓ+_n8{ pW)䃛 kLw^gt>)졦)o%Lӓ15'+r*ѝFhr4Mt>qxa@Ҁ o%Z[4͇G'ltF\:WIVlX'Ғ/S5#lT~(|/2>JSCT8@S -PAaNRݓ;:=>%ldH>i$L̗\M4㿣E }:88'cQD#u<7֭p7ATү3׾2ELxKFp}@0WQvf.rYDrPV\ qNsNxF~sóJ.\ MAX؈71~Xv"[݀V1T} N |jn'n]k}̿6;^L9wd{F7g'~;=gIlX#>Ny{8әlPFjlx>2q~GOnVˉ RM !Adr0WՄ__W^y Ǒ:=Ou\׵K◓ݶW4ճatSמ"7lw[n:.9p,^JE4W1r^tF.@zZO?0\7ɋ)(Jcpe}C .iVH u3_AR:֨GO'48.:|]lr,o#pQO6H]Yq/>O ͆q-I2yUMD&/Kw&r2R?|wvT9(1 wI+/ :穟~0e)ggei>KԴmt0* lB=tϼM_˒5WC "mQ$E *l>|@0;U Vs2 $qa-`QzF2ChSZƁ*5E}՛39X068zܫ;ewK |JrN C֤|!Fkɵ|6J٪ܥDu/Dh4ϥ#EV4*xuQ+tQ|Sv ~ {AFr|={nH">.15@\* 3 \GaX/a^C- ?aegHri54} Y$s7zv5bȽ2?3~;E.N՗k@TAcSX*+ḾSЦ}\d2 oK ܠW(V|,IYٯiD%.z^d(vCo_vi˲&jq_rpgΕk*zdqޘ~Ng>s6>T_ƍ󸣝U^)3>s%+YR&)> -FAt\Gcb`FqqYQlnҬԶ`UZOC=?=*΁ /%kjD^ŝn1:/M?~CPGw`1ky ͉FA7nk ?IM68š jK%{bQjMK̪ІѲS`d?]y*q;^G +-< \(vΩZODUzE rʶ+@ȃ7>xDhgS΁'dyx~H݇ FbA~g_Q ~א0tDma QB*GչAO$ 8FhgOΞw2g)q`qB^-ocJ"7ajS^'"\bf]q0YEKԸA c $cbBG#vIHd48Fi!XYF/OڵE e*HExY)|}6%Kx2U?#ހxT;H6QKfNMnڮ/\vJY#;_p*"VցLA=#)eWf"&+AY&p22؏,~$_l??fZyp0~/*XsVp3A;gF jy5>$T%w|Ëm|nJ|Ʈ5yW“?YefC#H3a=‘F*c⏁`#bgЙmeAd;wf%:Vv~eCww}]c~h>Aa۲_SC\7!YjoHsaF[]'}w=i}QHazb!\EI;6*D!@0`.+jEל[s 莰[V'*ɥOXvku WVguyGԽ0ݮiz 1¬ϛWe` xK%ؘ(\@^|z(3^Žp>4-Z=7X?nw>&n]\c;S=[Ozp%Q*ZsvGÄH|nTBX)NH-a$r_G[@bj}] *g`Jې5=Do=gѠXƷ]+ +^VI?j5sـHi#|ʮa5 vHb շ l~(ǂssR"G[QՌ.S`Ғȑ׊.JIG&ңBnVzPvrQt,2߯)F}\Olo" ic"Uƾ#~ZԋƷ)(H|Ư&T'1K,z>j4Bs㨘^ Նdv 'ɛ˸ͥ=S2Q$߀Lᣱ[; /Sճ5!SJ.c.P!f`{ !VC"ꗸG'HM)˶7a0b?4_vbI 3]#h1,~gh؟5qM~1Ǧz$ ۀ)`RJ/eb}vOs#jd7z Jqy„ea N~ʠ"[d&>N#,b;{Cy;gv])WjV-d{-Wt:(޼c4`InĹqYo^|U*ӓ͸o_6Xg |\&ASq5 d2wZ4tԕZgDd MzX ynϬ86˳ĩs¨snBA[WpJ׎_zjP\fш+Qg:?|VĂ n5붓怌NOⴽi!0zp"6zA[@rH2+Tͪ(@l =~n&n5i%>WWR19kU%qK/Yh$ q.t^ YmJn ?e:9sǸVԔ)}!QWSnf#9|JL=ɤ.b+@~fY<|L9+@IɌKkuAWs7&4fG%9մ]283@pKN퍌F# HLr>꾭 T==@FZ1V‚ʑ &FU)(=K96eMU;Ł=nJ+%7 *@yF^K_s`S.Co))Mg;_Ȁft>j5 76ܼѬ(ƚK]A2ǻ؍~Q|j=aMTkjt wdE : $RLp%)^L-샅7<т`8 6\Zx/^׀)gC)ksȋ9W7^ mHq @Se('eԨU^F1sw8Ai͝J>HuQ|׈L`@r?^iu((颅BLx {c#~=WQq` ݯi~f) AʼRR)1qʀ,%g,$JXn>xT]v2R,iBOGR팟HəT"i\x)O]MXAwM[àunE Dc OD7Q,2QUb[)Lj83yBɯ~vnK/m! 9: 1bٜ'D0Jgmz<*^B}{Zn> >&Ƣi:TDz5*+QwStDX&E~r~Ħp}Y{0Qp[G~0 Q6`TÏB5PcWMzE?)꼆h,hY >r+;K3mZfq렌DP͛ ^.iGǢ.0|IB_JPC=yU7"6"݉[C`h^1DrgWja̒{^EOq\JF 95R os01R Ec;0rjluNPEudOùuz%2eRȪNk0 -F+a#Nl6_m.TuX@>Bی(\XB N7*%}anDdY|wg@aP2jO2HPE4yN2^clF'95O8JDjj–i̻c#${I";ꓺɫR(\ vS⠴lBhBʞxOc!y354ݓb{n/#ײ=Mm/^ti'eN7 0f^/5QIIȐ*W(B =Sw5=kĤWnNMyYNf%8 q-@.;al&xXg"nfG˟*e؃ ;E;#3V@'e{FGO#6R(\^{X}+UTZ d m7 3cYi J4}'!=G5A aw;,Zy80޸=V|IOoF" ǾPcqY-^'MK )RJДWv=|x# ./V>c\9KvTt`'\B 6fJ+Rl)?`@V!<9\bl=7lE:$=&ѓVT\hdMJ"\vo t+2 ];+F.O]80PS7'ߏNV&gW|{Vm .A;O,[=~[@ V6z`*nz˝=3sPGCh@1|nt4Y>A0y":`#D_4:}0fz/:MaV*=2z*V#<2 \,h蔄J*`; ~8s .M -ơT )+ ǝUH|&?[ȀUǑк~'CDfd͇Bc"(w.hV2"% kZ+U9P9nI@zyOB I"XdD%ҩV#z iF,E-qhn}߻n(.dh-Ġu"H%i$> yZPO;*81d4γY?w ƪ!/ypW8(^'!ܯڥFVɣ=JaȉjmC^~v~x>J:5Sp!lc^Lc,LNox.Q1_XdԀ?͞=%!rjӐ}+Hf2^;VOp29U"/㼑Q#(͸&w숐E1š:ZĬg dN eZ^eI6'K"VGABu+;{l_phxVL[nz #kzjPMֳ4xAe g5M#oe #ZI4Uc8'1jz$k1M"jR*'f&ZBq;s^trp#./XI#;Z溨H)yO/䘃cci))* Аe`o(&>$a;Aw,!@y\Ӆ|طDE}@3([I^Wy"Q?ʰP : REQDH(Uy{[:lC)亮:F ҈j) ZSq'̫C5޻\*Gsu> }ƕJl3Yǚ ,HP@[Gz/d`%#b`s`Ԁ7,!c;h`%9C2f}dΈi+DYE2ɍ4mpsLa4ag]ْ9Mߥm*J/VkO,},H0{@S\/Ga+>dXE?Vi#JJMC4رfwH#or_*&G\W&AE=Y3)MrGgv&>u.sl({xtmW{UQͱAΤIz]Y?vCwwR/-JPѥ(-LR oq(9Hf\D_QөB<҉**Ѐ\>5tj'D%['ʬrf' < ^{B\QBI?lӗZk)i srg\Һ,F4 2@bbb-i:: ӂCnѥ1O:&RYK/r m77/ƒEbǿeoq6{wc$214 Hz͓s]5߄Ξ#{Q!q(tAh\6KpǮB"&hwڳA(6 R!o[JwoO<&Q{# _ޮ+ډ!٤.kSa5T- d֚7IT 4-˺oeE#GSD F5VU<7!a?aCwv4nz@'^?p7ɒg|Ȓ?c ;lVH'8[(QafW*JԛᕻܿpV[>W#BYzRXu-guA:U[ N5Ƒ{H/8.=|# J4F=&v^- d#m=f: ZM`L]ꙁdAFP覡z1nWn%Min524\UHkDVۍ)jyiyleh3ߖ? SN0Q+nlglh2*?Z@bLch&$7+ӹꭏ"H2]M֭o5nGjQNʼn;`k>Mq~,cIӱ!I*2|BAPU)1ZbK [~݊rcf6P5% ):#9X"mۄ?x{~_ac1ZDI1"Av|zg=-[%pnvک30TISKsUCcܣTJpGx{'>=+̚y>kx1D? KJq&G;ҥdvd͉i\ÀMՠb|FV0I7 06et/b~$NI\Td;w3^\=[:'f(zgGȾzuf`d|s.`jD"%nJLH(i:Cc 蜨͟M.Ѩzzc{!7Sal  aLd0QM?fVe{iB^k{*9^LfodG3p2vHa;N2D?G'6;SAn֛Z[Ԃz_<0mZ"~*+`Kd&R~^ V0Y\q3ɴQw 7o"MztEFz3uP= ICu!Z($ ٲ%D2c=6h6%&#?ZXbcnuA+$đ(8K8J]4'n\*z M4tGvs~ |8.zaޝ~p>׽fYIpdy]Ow(R="zܯ{Zz?yNKӒe/҃Nɼp|B*nA-%a1;Q`)FMVb8_䦅}T _|ch .H{S`ܳ6AuS&zǵ@Ih9k؛@Fdz8uBz+|+B~(Ga=|Ql}ԲLA#=V›wG!"l =xŧg. Xm 2,_1H~a##J~u9*sE}I u4]9پV_H LOjzuPƼr(p+Wc9wͳA!BM[$6LB 9|3tKSک\.1-e*V G,o藔4>AxdQ3i E8cĕ)׵H~jnO8`MEonQi)FsH8HuvYV#L(L1eE1Ұi GPQ]_X/+3 caqlTy5c)S`Q[H>tcsz?U_.9JoZա{ǬD1rW[7| ϶eB+#I LaNGjKŖ"{vX^h6eT g(w0LC94}܁tۗ$/7zoGQsf#|ڀA,SeQr6%ҧ_XDQ<;͓DT _,@'A>(u|}˳̮2˜T _0W$݂pӡ@ͮ$eYx֯DdzJ1}N>ԘuNiHZ@8ZY|%"Ws"( ~$&Ɣ0!B?˭z(>FS냅I|F7gmWadȍ̑#Bz4 JIfyR&UC\M_& (e|mbbIU T!Ŏ23bwm_vYT2:<=1fyx}X%$N H~GR@tZeA#Hx4Mgi^ ]VOU_{{MUҸADtOṖ<(kE:Ѡ2@CFDr61@B5D8K9{i6y{OVbM<짡Sf5<?y K= N`L؂IKWQspG:$LKBr&Yi;Ի00"3N 0h?-Bf/3s$so6sщ!WX yӽDW3NʧSb[YHf= 㤫@$uH2EWD /w3/GuMfD\S?x9'iU?K4Nb0B6@[痚}SM$|עu$ŲJ{6d-^95wà׏Ew'9*&U>TW[?uSSP0Ǚz(N\>åDM)[NӱSm,(.0mɂP 8Uq($q)P8,)ЍHՁ[(9O4mSp{ѡ VHv\tTZG;;CRcYo]^8L tgaDhPH.ʑ|)D61}ԅAA-S%ɠ;马$$SP$Aۦ9j<풀ix+su 9Uc#N: ?E`S,L\O~*?l?ic[ m[CoxA~w=©έ#f;KŊ: Yu5r'[-iKFyӵB.wN+g` -PQ o2Or~b3@|}81 9E!,b4@zRӟLJ`XõXkSt]t܎"ak[HM4@֎'MaoP22]rʖZcǯQS,X/%}G^/#Zju1AU0;}?TM[GVOnwWsFMtAf.F%XXXB+rMp;WJi%4&zrz׋nzDXoMAG'4:hޓjlvgq_x<* <|.J$0:,u<@ DwY> ~Sޥ~dS6Ѫ̉Y{ɖtDD1f/Q3rX()y͏h˺&eZlcBb> g8Q܈Һi,aPWW7dFmM;31~ɵ3͔E"kGeq΃P Nv[ryEMՆpTL9P݀}U%99@\|kVNٞY5 |wS$6'Dp_rf}ҹcL⫭z+u=tL7ɚ2`P)Z|hT ed Ld*SD(926c_y" N-pl`zxm=yRHcHuɦun3 {dA>;zHCwڃ"@&rW]%(W@(2d|x%n fIq.zXEty2P),b{3: 2{$*ZClIeN5n(^fVdw׶G| v%'7ߜH2`X 1J>ASø56gqd sl?0#ݏtl!O"eGS YaIv"~Sv6̡Lj^4G$ί^>%dZcfA1&e ,W!H[K LtgH;#]q.Jc_467<kT/&%ҦRYCz̚u?J'c(zYPODQX /'"E2ΡCxf.Ձw]e? G=C~:v9!+ 46uwxd QIa/z? 1a`YI2b")g}Hwpf&߹oQc llD)ί|O!V缺N=Ԅr펉i9WߤBV 1Ȕ` DҮH' # ](f}Q,1:jt'F \TK dT +򼔮1E֧u>"'L+N^l_L5' 茈K\F HUnދ93lLoQ˱j Fw14S .>UWu]^VD& 鮆 Ӝ;"vW4?C)w7zbH5<Sj1 c%S?9gkmGGbId J޲iZ#O% ІJ*/~%Mvn`.ObR^ޗ;# U=\/2wӠqyvS(x4$ncAcHB>| MZ:4FKlv8st:7R\V68יQgDM^U.ynmaM# VL1+A0t'DKǾ zPCR&qrur{$ݔtaڸs>s&g[U3oyoM;gJB~$RBk+.uaṄ@Z`q+a{0>"|5kÅ>5-+hmyiuh,Dme1559X_P9&ceΘ6-=EA <YPFaNts^AeIg@DBz*qс?(}'6Ҍ @ۚgFM;46j?z}"y2mO(W/յ=gGzzZP8Wʈ3M +jvY FN(uT@cb.sɠ$U'|c̓ DaY -P&j"K N,5L 53}e}^-jUNniywtF58+ΪomW/ ,06Owy)+6FY{Uph$t *D\RZ٥ڶ阰qTO꤇Mc@ta}9X&IG-ÎSѢ/re8DXV~,OkGbr^kC*'YP#W`O7E!x x9+yPAQ+qN5 C69yKLR4T%ܩTBֺVa T՝O@|2o+ڢA˩x^ګf>EwMHK~F hyGKYB-pHq <)0ڦinQr^gc~:a ZduHzl \ Nb.|){VтSKKK(+_e[+-3JBH#{1oWݡoeT'$W|eHy̜ƎL2FpgoW&XL];w`JtɫUx\Cu^O;#ihvou ^H",MW>/qiW}&GCr_9]q v>4/uG`ʀuʼ6:BQ(ڧ եYrs?l 6XU`G':Vkzqr!" NeJ Y] X>m{q00Sɢ?Ol,ȮtzaTuLf15H&BS#D"7UnwWB  )(`$œtf? ]/T2gp, =U\4?=N]eψ̞BA6ACD%3brX #:,:ZVؘW V qbL6 >~H+D[1)밧36j|ǯavrU+pл #γ>tJTM>[xRDQ M$I>k*s-T ϝ60r9(8uF셠͘gq2A7F>qE@~p_ɨf¡H;O @ 0LU?0Y[+Yyr뵦$Ҿ{ D*YoUגjîHl S[g8g:Qd}7H}y,ඨ+e~)2qGKw~iji p_O:x5;ƺ'qYJ0:–a'(| N_rdR`ӁȓJfm0VuѐO܄0Ac2/sсPF 7/ȼ-I1er =$Wa_*= <+O4;`,2E[G5@Cb8%kY+ >bUWe$G~9g}jiS dnķSN̪Sthqvz:E.6Z"g:{(˞6 #0ӱ=aԴ`SiaLM׎u 2ׁ8<&+ z$쾁nr:#:Μ{Cnow΂"m!;RNecnӎ^!Akv#H 1R//[.k O1?K~N|Ru&Z#:#gQi㚷d>M9w+W.Mk[{5hC'yggp]XaJ2n7D,.wi֠#72>&Ve]0Wp=C8x,'/)w`a3~6&8ůVYBfNl,YނS(\w|Kj ecL+ͥ} =.&_WKI(%lýߦJ̦uV FQ'$'5Y+,z+5,1ɸIZaN:Z{!)R<;p_z=s1CtYG\ܾPyqaC-RAN<0eޚ'3(rұ0T^WWnՖT_2s[ofL ,TR:})k;E\ =ph +Mtjwtl0AL\8KmMqC!.rByƹ ~7ҿfxozԼbr&wƤzJFR:Zk?9U)Hs]/R Six+"Wgk|ߍ'm }FtZZx܌.{#*AUl ݲ៕c`clm !Y;rTM7 Je d-uθjÐ)|+gGg7%L]0z z|L4cЇ2f^3e1FDzT?W#qIWհi32ęP5Eݚ]BLآDlY='SIzs)13W mDI,F3[GVu Wu6]͂O![7V:L?+]\O 'b N֡nT{?C-&UA!މуͷ ճ,`l8ի`٧BDmRdgt:I%HA)HՌgT2u1;3mz97X\K7H(( # W;.R_zPwJ%^6gEL{@U͹@2ZGñ(oOq ,#{Ӟ/^MZsJipf%;yYTF).UDZ9)$bYJg^c/4EF,E[ں,ytyb؜[J UaTGnd[WF7 4QȞMc- XEbˬnqqA?̗*a@_㰷죋l@qZJ/5#T,QZ}O7z30Xqr]0&KܴHm*脐m/T:'.\L_(+ /qY`k}*#Q֌Hu;Sd:̗e4xKzV^?Li`;k8Q`j9\'IVOn}E\XiIJo2cj uG.a;kVMhh~,u\~q5GپJAO1xw OKb=R41yC*1Ĺ1+b,ƟßuMːVje0{ 3 /| :nݵV>Q!0mqf냔X@Ԑ uN?l7:<>Ѭ;%6_lӝ!&(ORMeNr?-;@Pi 8F& hvX~ nBX%m 8vc)Op"fl~$.ۮBYS7ZF:޿7'<JB )6g/Hub }a>.YNm(ߙͫ@("V0]˺}ucsbP}&sw'f*Oln\PIíw~@ûrz̼͸U#R3p;4+ L6DBS_=Vs|+ݽG-QM=Ds#"WW?SH]"r쪾TR/8 v]18*6g[o;^@ ^)8^;uو2<?w8+Al1ig!bCt [U3>K :յFk!a%ICm9w#ZvEƲtSp ZC$`J!nwT% ֻA*w͂ S*Ѯ8(H/|E4 s^NW:ŸǍ`_qE85z,gqIE)>QF_A^Dp0OGSHK t \sD4u:]!xԖx@gf31X^5RBqjш/ػ/v[9 &:f)5!! nB1vE@5@Hʄ%uR='}[zLWIPnG *SXщ\0z/:]՝F+5w urjuP6-u岟 '3m$呲\gs)x$:ňX v*"^J<Y]¶:z_f2hp˥t,3(1scT!Fz(#8ĴG7VFȤW=]$K[ΧHi񚈄En?ۊ?KJ*u,ǃ`k 3ClF9_QCRA#D^ z/sَ2oRE2_{P#yr[DV9PQaͭqˈ@j_~{f*~iazU3ԫ 1iжY6,\DK_%V/e3s#N!Y^9Y?Q)[}|\gj,2$nfհ'bFFu+%ʚ_%R2,g%ܕωd5 h:$LO\MX1ModN'30ZkU/ֵp<yO&3;Dck(*?k>k N<yHiкի/n1[9%ʤlP{= 3rDՌ%{0smYܰ_}t!aJ*ef|7w% # rI$OnjXZ[0E7lq5uau@; h eLD#X$8I!j`d:?#|z U3-+YV^BJ܋ &L( E{|^=0@w'a|)Я{4ۙ8q4~D9fC 8`!i%gwD6"MD|qJ+L[e^-m%CѻS?( B` 8=6C0Z;lz+0Ɋ!gufG?U_P_B^D⏆F&]A~xgYFW(_% ݯF1sATΛ1  LXzB8P`z^NlH~J#Y:NiQ.V ̈4鉎ܕ͓#2a C>C,92Dwrpleic#5@*DՆOjs]}?d!U;{ael&Uj*">9G2YZ1Qe4Rlef)yɧsQdR$c-}[ ( 5ög;d&'5l\OvleE脂I[['s1\(=9xGdJ8t'fdN̆f}|HbTk88.ygsePLga¿ &qoթG{2oo ]4VIĎ3B :ٶq`Yw@ZFEBX+$' BmMSXq2$.8Q߈p΃'u~ӎl`[d_A@)TI:bϬD/_ZgpJ:$Jݬxm%0~𪲘S`T7vv9Ը%$$'S6CkEIp)u<24{ynyac%r$2/@X?9 rӊ{)Z$0Ma7k" 8re["Jr`?BnQ͚7(l,z 87,wR?3SsPfUŋZ2Þي)M֔&joim/4~8 ŚX\ rp7Lƞ,L?< n2,|&1cWS9 ǍRHU!Rܘ;0f-葉*Bpjg`LjSeZ䜩. `AsE{3Uc*4?NZSKұ0l qҤW,Q(W+[Gjy$L*$bgsBZ UFι鼹drbFКn_Y{ "ȧ'O6e(GŒupC˃/Yp+d Y&y4l[DB&B`ۚM1o_ođdS|@ҵ9tm1&5FϜMf A3 au>b6SEgG$pkOj|z3&s x0u2'dg?iDp~pGqVvlO!)\G%y)1^qAwˮ"{y!< JA5i:T['8Wi\$LˀFw20:f>RSO&/$oLJԗ k❳tn@6M 225F630 a/1:ۜ >z|;O$*:6k\ )D]Wz9 { 3X遌SHW_c4ydlxwO%q"G brwc7ssaY@;{ Hbm~ zn;X_CTA&vk‘x,t2p2+9u ;R]ǰ&}ё?˼=m)5Ѱ@MENl`N޽1+zqNemW:S<[+BQC%@ >xȀluXH́.;,3RóOK+ 䮰WTk@hB?‹ p VRGG,х #h\|uc|BQ-oyղ>a>]uY zL})mFƒb6L-Pdqf[<|Xgh03 ŝZBX\f쮆B;kNEjb֗[Peͥ ,uIw(oԆg=zm؎BcAS%`a{͹܂q^[g"^Myo1&Rdo$EE==M"EjPOZ/Y1N X&zO3T*LEN=S'w݅c݇m\W %`Cę]h9;9|<ʪoy6`tCeݱt:\.(}p=/9ܩ(3q{Xf0@-ϕKb?u&N $T;ڕpMp\L n)>k*F2I#d#$`ϬE`M ,$'F˽7od'2x4W¢_=HFZ̿UX3D>E$QI,Ax PV!Z@ @1%͗Fui|iAm-b6c`nQj_wZDKW7Gw{?@bό:Pup6cs>U$,oC9g@mJw>::f=@PxF,;ϭ:՚~ުq?d_ۺeyzݎ)4<|Bzv bcg՝Ld w}d6t[|dX7AMxhSʹT.v(ً!#S-UhpJHd_{#=c|vc& yQL9dfpRKnmcwo™´`'EJ|sN0"?*W@4AB^s7D"wOZbvYWd%a X +7};yUI]AO8$g;BB_%[#E`7p,Q:Mrc?6ڏJgdn; Y_H3 `4v֨8Px2,)x7z4瓷0y s< Zbfiɇ #ƛHakNJWMU l^hb6F]TǗ6ČY+F`8'uj \4)^vؐ'da_偻s& (\,D*JN75!0$ L .|D"g%vbGNB8*IÄ]i9HPjx Y0` 0&jdHWy XSN X5v.# IH$$ɯzUefjXw(6L|q ;YuNS̃\ԬYqX v^Wfkyv*xH/٭/<֟V"d)F+?fuT߼;slQg!ؑ)(a0uMG!T-JQ&MEn "?UzU' C$B*jŭ bȉ^{Nu{?<2aQ;뼻 2nH߽~L5677ީ>ք+Wntym=l:3|tI@N#3v L=0 sXc-,9P!?*A# K[u7%ߗet\.d+-݊US'v K(5_ uGlvei$RR0'_uH68@W -qHWnQ2zhhbB?p 7 _7L-)WB$D5w)'Ð\69V,[?_uS(C ,S.WzjLP1e_1“9}q_,_*N6@?yX{,1.'dP*2^y+J{'8y`N]ٷD5 WE:v"]\uq݇z>nÄW>Ҭ[eiu-$/ykWEӡT#e e=m>%ᒊ'&a ֞h3_D\$|g TWQ lNYq%X hr *A%iȦ%B 籥ra7DId5qlyn E~oR.E}Qmڡn&z) gWw^PJr\ۭQ8p]1/c nñFZhJؘHtxsKP;G?$@"վkS#\!fScbm9nY#DZ7A& ެVFuSpL$!& Bm/͌ l:+U9O> p-ά!ʞ2`;mcaO)7p?_H%r\zB{F|絠w@0%<l›CB??sw.ߪ `Үr8XidlfM0`vpU7YB8QDL73w, 3x7N pk^ۻ%yfVi76U_ҚZ=͉; +y ȟ*ۜ hmv^h`2$asZF_r~-36kJfY&[>&7[C|NWfkZA헗2]=Y_yKvOB8,ԈJy[7y)5d rnfq(jqlK B3h@XU@L3(-3 2 /ݡg6 qޗpqYcψ Lm{`~P-BG3ZBM *(gKx?ߎ,tn.6Ol K E|w{+I<ܳ h?,֟R\juz:iz/Hl>;VBVE= H-[ -p@mxQЩFݬҒ~DZz&)zt?azBjjм(_9v ۽gBw?uAw%&HSp ?fhug7Mvv]{Q=m ]48/tMݽ6\lBH5003 Ad?͡4F+@h( )hV~@? Uj ԅ Xb-w$"Rnx(OE|_ -@?RO^l'*&b=/tU޻ _}<ނ̧\g#w2mի.uS5",*]whH4=v;7dO½Gsq]崤/nCXE$9_f$z+Q&,\>$nwXaOIlV='Yal7v!;MXX-%=U4L齋@<$ͣoXE7j|ߊCd'eXj#b{͸Ԉgh< +H͓2"| ar$> :n!ބuM0[Ulw q:>ى>%#9f'Y/ʍNGiir5_h0k(JԵu<p %ZOIoWC5 D-c#S,% Pm[^gz\74"sֶ>g]nY :*{Qشf>K;]rЙ`CZ`֤ j}DTt~e 8v dQJXqz7 3nǩi;zmə=Ct>o&bgYݔƷPl_|0}e*T 6_ A?};q5@` #&S3\IohY'$[ZJ$ؙB3a,b=Y`A.oJ>rװ=/*YEZ h/lw :yNi&Y 0ݔ?>Րmf73+鬈kٻlCHϏ;ozFfw ̃ mirʺq {.RzT jdkQ.,NZ !7RHMXd~L%D ݱ~mi_ӃovJY=fm%FC֒2SdĻŭLby{^pq/}᧬H >mH`$3ABw.cQu,0h% ן@=_ <3}:ˌ$PpRB5P-\7 1wE_NsuAI2,ONSlysҀxy(|5`ev'x< }YB"Ϻ1,r5U"Uhj1DN2zFNg) ~bK0|P7"%vwm.Y;zQj =+L/Ўhsg`t'HDxQ"RVh˴pR":;J4 lIN- b#LT->YG N#Z9Uƈ]\sgb 7ۃ/;]>`NeBJٚ^ܚL}]^`3QP>ԓۖ\9ɔCE|pF4>Ev Qǚ U 2*U 6?A/&'g|C$A-j֟5jkirumzr݈?#g$NJh7dm#|sf*QeQ|C ύBL [xbQ>%0Y;Xr6|\FX* |qB {Y6P4&}8MUm ͉FMeͷ'Zy : /q.-q4u 245lB~]qQP+~ׂO&%kssԽTI;o-0wǟh67 +Sxl84Qx54KvH9Lsn};Yo(,QnY+]j< \?/`G{)J8ʄ2=XVC\p 4c>yOԑX(r+gW[t;mJI#}$ &0qV2(Z=57)?|nGYA^Q,  ogŵx  tN0Juxus9#Ғ z@6WZ-FDp`,MԿHj쐹ˁ/gT&b2e(}EV5yU(Q&u8Ct/6,ioȀm0;1{7qnX7xj6oiuj[*ÁR@[oPDh{YL`aTyG. w '*Rfu#0B('xe'Uo2"ٿA7ί,ֳӈEW{=T,/O>d[u0?rϞ|o l\).e]52[,O#P >ܯQCKgK-WfZ]^UVnnRM&'`ւN>Lofޗ_:9/3 (Wp|L(9nކ}}Z䱝puiY)'}]z:QKʩ2q"F4q>{NxTʨC=[x ̡{CMƻZZܸ*r*Xò B]4JE ;̬CIZT/aр[kCN;Kr+Dp*2(ēz. $4zlH%Eu 8{c԰R&i|WC(ieN>¬܁ Ԗ*Iti& _>f!JZZ?rI}I6~\hv CG DX:C<~LtUG͜L}R ꣰kT.`4+Ȑ|;mQa)'⋪7z;&hgd{3BWr? e2~TnmTofq6 2 TκHwJq[|7aB+քʮA+֭8Ԣ{ՉXyZs}ҠC bay$& 4 +ܞngDj9ix`"^qgh6PIݮ-SUopxzφ}Zg0L5`꛾DrRk+nW6#~OZ"H<'{-Nm8Ir֯_]"#͹hŹDf+Z9̳Z_\qBXJ'9ao4*Fx6HP(ڒ7k"EwԷ,-{f[}ظaR'B |hb(er/++~wK_IbQLp -]C("3k^)!Q Ѣob)gdEXf.`ugh|br{ Ю Gu{3#xQX"M/׬Is.zjs藞'Ҟ)f Ȟ 9\')LؽDwSWn}z,N}`AT,qU5eH+6 )G>Sj3<ۦێWiA|i\:pg6Z;avJq=`)fZ}GtyL:қ;m]6N0i4+pB"RA ڊkl`J'G\H)>#7ݢm5#`ItQLSw+Ԩ2o+WT-[yA&6K ^9~ SfLKF(B|س<&ܪ f 6A!9Ӹ}&p Ͽok8TzSv}GJD%Q"N[i^ߖe B}h>䡸}JޠНhVP TU'8̰VS< ՄG@4JA:\,q-H H_ntjyu$@` zOt UUr."Ofr<u^o(%2}C bO;h}Q؝ChcY36ѵ_ǽ+ M>\]T=&Wcoiȴ,@V:@C? ,s,'&pjO$.Ͱ(@WSD*DEo";!"'rX8$HP 8o 0)\%m *F<#W1r'Ox%74A*4`W [ʫIo/AZxuh吙)PwVzKDb*lFy`l)ZDZ=ν0o p]>PRDгx/e%a1a{&XZ!&,CO6K|)=4HU1Ak;T58v)gnqn1J,u8Wz}Mnĸ{b51.LYcwK?T/&q)[Ԫ'nu,zR8H4uYN?х x_^-9p0_CZGR2tVBKn N.i6B9fjY_M7V)Sܹ“;}*΍n*HNM ]tn:P{83m7Ae(-Y.؞!0\@:ƣky}D h8ubOI UmF\A#c, 3~.m!~ ^)6.cgcXcsrMk _V6k `ջx9qzn]"! ?^W@/DV'o1M`(ϹP|^}ɑWfK ܈HĒrw ~$DJO 0' ርKiLҕ(VO1ԗ땃 Q#纘$v0*xh(e{'vBE۾^k*ߦƊAߒՂ(N7CVe(@oujϜ60^^> S^hqSRaNO!`2hs.l\m_˗i8ѦBǕ+,T-"06\N$2"!fu\NX-Y><*Mݷgm7OGݒ#@@<ѹV+fln9?4^uuvvғ/IA4%%W];>H4Lqc"W.D{ωN.g, [`:ڨX.*.7=jW^Al~zU#z+`NM4<c+խe X*yC2A +z\qg@j#4^¾rQW}!y5U掂Z[G "e ֶ: >T'kn6SAt?ěNkBzOѐ ѮVXZ?2#DxN~&XG˨V2Ix[Ҋ͕&{ܘK2:z [<B쇨.lnzJxvi066/,K6 ˓sLm l8bѣPQ.hU[1=ZYȅWi/ )C ,)STtmXGL[LFYj >3tvGjE1QuLdt> Ze#)H"|P lM57ف_`M0-.q^EBT]OU 2?1tnx ٪|+HvꓹsRJ;Q7Tha{?i&wLW?FDCie}W_o 3՜{>uubfÚv /ŅWJ?E?̆`pI$yL U2PHZf0*hlrt,oϛh%Lxꕼ} :ED-;9E<R)Wq;i! $ThWr*dm[g]j،fUXy:>ų( amW Db67}Sߣ=P0;3NQE*z֌]6 [pM};9{_38zײR](\>;ᰇ˄*Tp"V^V]ǰP cja~v-9D`eN1j/NYD~Fe)t@* W.Iй"ęlF-^YIG ?BWjvq5gsEƿ`2!fgw2S$RoHH-2ITM7hZĿ c?Dk*r,@2y+Uڼ1>+UUr;,i@qݝw G=}7$Z/0X6,.GRJ@Le+(F9"js@qR068u+,g8Ä6gaxtenJ7wo\UPVRGo$o>P8xythێJJ}E5 -)+7%;bK ~!h-M #|%^rXUtaO7 T0BV'Sh{r%q1>?V#(.HzڎO[ɟTue"NYIR`k?a/P{KDBSymk%)A١36RūSZ(EK%iv :F'x0t0H ͎f LpJ}' gW'sHb !"hH CzD[&u[jDiʡOxz-`g>E7W$2jݗ&z6>HKNCed$d<>y7ɸ+@b-}Z"00_l!W9:,11(6gnJ }I7Lzyb)(Iˠ<&c8 NB$Τ{yz=%5@(HP_Gt:E_ETAۆ/x <6PBnNK8( OgOcvvN|v)јъRWh>DB¶̧m5Ew:6\True,Ƭ̆#%ow@QwHdldiw& 6X'5T__`+5e3r.^ k]_j@\s`5y`^C#Ȓc 3euQ9:V?ԟ8|{ aVH  et?jY7;S ;̏۝7tq*79_etMa(%#6eȅ]31\f+ГU#Vmw&L `uLk)E( Zb%,ԌF5]}ɍ='3/%3=u8"*77 *ůald֍',qɀ)AU8"H#+8=11SKC%xBJ4Ï}xKd,acQ\P%. VOГ+|ȓd 3&cKsO!zmS`ea%InvP|!&^;`{l\TĀ] ⷒ=ܠYi]2g^9&LIs/vgx!~ 䎌0%J H,u.9WOPPWMtyiLEbZ\-Uce?_^ч?l(K|M V!&Xqچ TsJAYz6[V7 nF\\U*C5Hv뭿sƪhH Uy9ځg$ңS`Sk t?_b6`/vNP*[]*#ɍkt#rj4F; |Ӽ }C0pY- EV̇ h8NgF=qsb:96m.Uh^=!sJkϙ#s eDsƼ.p5K&=҅[~Z,Acf 385N7iT'%(_3,,\a:b =0*T%ej7qk&)yrSbg"q2@j\Yh[F22kSnѾ)ad_#4ηoe+6-㬨l#2 8M7D4u}X $YZ~r]Nv Pyp6$Ffz& d5O"g5O+5  o U!T^iTÃrs1l7z x-gZn]&5Zw,z=q(h?qJTO(M&JZ8-U6{xbwꃣYu1&zyU.>AX8$z^ҀAi'{f^(Lm7׸`p.'tyI[m^sM?zoWsfg º* gbVc`{v*vO }:gv8 +ϫ3tR('ϨLkROLXFp(5 L:%ltBQVf8Me"|@5CQ(і-C,1ciY&v4O푏gXv C&5yມ^͖Hs pnJ69#.u)$K3YcJBbBHTГMrA(4XOj[;pl0Jp(BO\:6s K6^FwZ:y'W'Fr4%Bp3b2x Z&iK׊# {*2ָ@TSp$afx7=f5 |@Zv_2^z|olEnY0mkPŒjL"ىnx$q(jlu 88k2jj>^$$Wi߱f@H5= Pw9Ҧ7=@®4s^uY*?SxR=r1b1_EՀbǠǣʍ/;2BB9~U&T"!w iiW7 Aqev*\`[ EO'yq}Sr^rr GO9||NM독%bXm&yX|aqb LGNX{=5 cԀ }{ݸ 5_`ltxh"@i8^^\HX#((-8?ȇNVIrnّrZVcjT؝ƥAX3F2SbOlV,ًړ#WPS^y'E5 ohdQh{\'V" c: ޗA?' 6?+ͩĝCH2!.W{N^I$c.("݌&z^@"߹\j|*uKxޣZ r[ }d uqJDmn7G&pniɇ[ss:iK<Y[lJ Z]D4n+THlXy`1$ɴ#GH^:Jm'VʌA?r6qs֒#C&4Uv}s$ѠxsX%ġUvvbܦŠDU­a""h`v(!Ib`4FR lP8+̸IGCta=܈IQ/[swpc 4Q1ɢו"5l$`tKI5Oh 'Bק)|m> QfU>{_1MA1,Mi)^xL."TY?(zVB_s~LYy50l/" :l袬N. laHNt ڭ߭9 ) S)IԼ& D:wy<06Z]3_g 3=GcwxW-Jj\z4Ԑ>jbUWU._8`Jxj 1)*\Ԃc}fE2G~d@%ʞi 'NE~a95 mlJK;9vhֺ̔g䥜 mÇ _ UOlN16kkc'h*WzB5j[#ZXb"WsJa7#NgxMGě_^%v5No9dcQi>] $Ɛ矚c^].@ ș}ʥAB⑜`Tn8OMzX\=e8k ãܪrį:BץƍBIhv Rzz[d+DTk 1=kVҚJ7so>]BgRu;jwUͳCPsLiBd .3o> cz2G` /u&nUPDPSom}BƉxB xVwzά:k@oIpqDCHs,v;tO؝iӄ6}<%i> et^Pw`wFن;RНYy!%& e%T{Ԇ풍?O ج`Ʉ&4FD/yD iSbo~|TT"- ڢ:|h%m /JC&Q"#5E|P0_r 솲(Šm^ eM?Vjd}Pz;i 3H$LY'  +>.| zH3cCQv>sZFd끆47„[ʠy5hQqsJK4(J A) @+;k?gqaR`4w\ekА^;#%oF}DE&selh-nPS4p\v/<]/Ʀ;ˉCDЋ)'5N~^8|^ ǟA(V<̯V1XW-tb(f+g((瓐E4,DJv9p! W3 ~"&ҼL <zďC:il}g&FN[]W¾x̦<]@*B',vuc3B)"[Glhs l V#9Q0`^Zh ]{z. Ezshd6 5`bSX4a~dY- {>RT;hD]utf# jKiwxE)˯*!K./AW@"3/]AJ#Ň Fqv2Zck>/@hpY 0hI#.Fۂ jK5߇@dඵ8J?t7 JEnL*Ƿf2s޹@0v[Ҏ2CsMtˣ|qҧj_^V= 3bІ͂;Tv 6- ut7C4 KY2\}u g *"p?˷HU&L_ DoFW9/[nwK(qm+KZ :=4ZbZTht!D7<Nd,8;գK9"&[2#mcO:0T6L.+oY&Jqٙa XHS='4R@Il#kiEM0oGqq]#:ȁUr~˗?p|坺O2ˬC9nɬj~Jf`V\Yp?ն~+,iƟN:cDGR/c L|pK0))08xVŕ5DFXDl9[e̬}O).'S{>IМ|k,66?t׉uժswdWᒷvn6j-lR@)}_^϶@ Cۂ-vugA)iy0TIJ=&ۂ=ʐh {C_/"#DR\LA4)5CEAweD u#妣C2mNvzߜWRgcVƒ`U(Ս VKr V%e܏gBXxd11ri>k%OZM?odL976[*b`ܻ l1]|2fB<*to38Td<) ƍnb̩׆\+GaMP/pkIΐ78M.",p&3' C q{m\)Sa6HK&J:%-1}E;HH.RxcC; ?uʘ栗|'>+X`U;W}lEl]ԓm.[8 yaq(o[|d|@TE3Xӌ6B@`j'Af )o:u/YhqjP]5c \{$`Ƙٶ-bw Zx[u$VdgSi $ 4L<=9Pd> \QP9Xǃُ7+fu 6M!?t2q,u[#T)u= (N"{b' !-Pv3S|9 ·>=z5ʹIvDf[aH,/ ,vbdNW̠~c$S06uWxoI$tE",`F-ȍMl ֙]b~UB(˕;瘹=ptLiPҵKZ>|Y4// }mv8)f05V59\Y@Œe$+;bF<ʉú.=Wu/X uڪ͕ ~J+8 }.^3Lʒ#L 9?>xCRN>GTB=AvmS9qt 9x+ዉzhi,0Ykæ]tSRlBS GTR2fI} LZC5(15VѪC~٥y?ެ 3Q7ό#|8ZAyK zGzOo-6G ,PG_܈dsg0m+3ɮP:&yIt Eyo̻r~ڶo-,`~:ԤqPi L-2Dݷ_kt NBRhIoٛ3qdd;`y3w<֠آPFD4l40DHY>~d}$ܘJ6p+vu-pE_Rzpp\ՄnH?؁rhrE kB;Dł5^^-?6X{8BԬ>dd*qp[ cḢ=\6#8‡UêfOJx$}:cxZ0$Z a dÄw@e[1Ҷe.Trvt#KѶ5E+g$[)uSU8[z|ar"xkf\]Qz+%O[F\is-#'2GZ`_fƻk4 א#>!U'zR'%6zY+ Sbqb'Vx-Lߊ,<Ųˠ7]р,xԇP[<53jgj7}}JA5 ;b eL8)!>#(|" SF`S1C/k4@\NsvFò|' N-}ѐY=.<l9,L;- Q"n `+~plDiKoL痟Rlteg,ꤠdKՙZv[fWn>xF3Rm5~Htoj w +Zv=]oNQ͌.u|Gc|| O' c泌%ג ~p@}29bt÷Hݯ2b,z,Y{\PfpYSŠu[_vƅ#as4Nl'K+ (iA _xTda*#=`P$OHzA^ugAҡBd&Yah%[oWt c.`DHm \0w7 !Yg-֑_ qʡ _a_hrvַy%H_ ՔM,pXž%=95n+q""9Z.jkeDI (ZZ6ZȪl}7 n{1a^ ;b\F*Pk̟m;TV׀Y ׆Pb!!^Klg<ٍ@C2kͻ9d\QiFUZcĐ(r-n/9sy~K]~%>7CC /,Rs( GY5WO'-T&]|KgFsdOhB9S?Fp-cxƞُNd&籂) ALlXlJ)(޲m,xe3sK!Bd,0ˠk@"Ԕ .Sg G;”9L Pw$8*՚m{5s"4rUV8,B1]cX!? P\olZ Pe%_UWxnna?3;µ[H2 qu҄OU,;67yq)c+r\ǩH;beM#z@LT_ZW.q=F6!` y{`.c26+fg:rLF2 p+&aw Tw@@C jY6(9[i;Үm@ 1J@otYW@ bMO,YA@*?yy,.O`jNBF[S/k>J$`Qi,QUnڝM8$d$?2.mJ~٪<'c h5tKzzE;D#z{!)O^ƊC/W|ނD_ŵ$L5[AN";V'@L͊v)yg_yNftؽoK300yGfEE? yL)S[U 4b"j6(IjdIm,²QL\nJ[B35!W<9Z+"6=h$* @D.9gY zw&`}Q`:S N8=!2mY8DigW#C~]%"bQ9o>sd186VRYfYЦEnҀ+ Ֆ[wE/ xCt[wcM)z$0kt3;Z,+?A%?T~7hv(VMQ힄A&J8SLP̐X(&!RE^Y&bCt_uق]ς'[}WT,sp&n+!npv۫$A^&tl&X F 'GZ 1T$q40@(^h }r_v] V`=hl< +cJI3PҜin0 nrL;g6BpMB  #[=8q!kFX\LӅq ta4@oW'P|3;]ED85rKwnsKySqVmRA> c9Q! 1=?&NSFe"O}Aכ6YPnf/_"Syp"/h%]* Ny佝Ȅ@Pij@xc0ZƧ[ێ3M+cqP#gHEbmubDJ4q wzKf0_Mٷ+XED`GSWvU;g4Mc[^V@ iI>† AU0[%yS,0̑ل0{lֻed*YOJ.`v5^L8>CRB"C`N$禄fk,8(Dߡ/r9ُnKT.ו$<Iͯ_zR c" FN)%}hT ӷR0ڣ*c5XHDx%&m^ra*{X,h$G7_Sq'V!ZNh3Y3"QK9xIxZ[d4d\_ 30WXTQhpF 6_<3ji0hc&ŭ<9iy9(ilXi@K(.PUϳI»2*dqL64 n@lJRxI#d{Z% C3ڔ:fF^>W34 WyܸU5H⃞八kjbѳJwg2`u$S7 aN@qk*7:}R?23+(:v\u&ms;h1`0 փ]A%?J-o=Cm:vP#U6訄nKTbKMi2IILX~-D;,?`0N w(' -SҡљRqt1L%4)(MM0VĿ, Z\A/q5L|{?d3|CI!L^A~ž*gCB^8/ɼP=&Lb$r~8 jMbk2ؙ63\KX3o[kjuWh(ا)G+/cRnW"%bLW+[=%P9Mt\ձv>[}6v>̭:gtғ|z拻 !>e_[ZĦI={1E<]#<'~Ҭu*pmo3f>`r[Zi!]t/Y,3O1jM\{SVSOYW* ˉoF Z/n @6S]Go"]Q10n&Ao{*5=Ɲr*1GHkg|/^@M߂8 2.p fa 1Y[NbR[UmWKH.3[o94P-.i?ʁeRlKUqGj$Ӑ۵ZealK02M`qsٻ gv^ -YԊ[ =]\2{c m&-N%1^Yb:duQ:_cRj7$-.lF)u2WU5pfQ:,tgA|Zr#ݶʊb~u;"\;}0 CL`#pH+5yH#j`luichV_S S)T3.v}.UbI:ÔGR]S8zVc ПaȓFυ"c'xzڥilOƯCxoh6TYRj:J^cdmq^VX( $^fёm=3!^qDW"78XQٕ2;Ǩl0z3 m1~V9bq4BY2׸w¢)su &K^Tc"D`^\.P;<$zLhOR ©vSa6%rr ^ 9k 5ilm &41@" $bNrۤ2qfwV0]Fh(AԖ 2 RA |^T{HҷVI&RLٕ$I"?m/aٲ}lv"z21 Ym"-9eOmCCU'K-Sc >{;qnAU,(LOp^PBKp9|kaNn^zn?(j]׉SۢlXd>'/A>D*N?'YvNb&uenS1a!{Q/|0oQ(=TW)v<pK!?m |P9_gx,sM`RWf@7i8,lRiRJcL?η*`-4w_c[sG5jDIbI |Ȳ+H,u([?<jOHW.T5ݯS0„w2M *`N!(U(%lr9Xu~mVZ?>udsЉξjuf@0լ|kA{;4ph SxbT7ZeG@Ъ7܂*3MAvooPM - Fݠf 9Hr (M 2,EFXyClMAw CscX&jPK95>![E@M@~ScƮ~Qς_oQ]as_IEW\2xk[mID!6SZF2[|<,q RXOvdY_&j-hʌM۳q:[{XD" ˂V1iFwiwR;UH yKL`ϐ*IJ@ؔ!ݰ;& $HFqj..nJPa_c"$|P&$P Ѓ*9ԡ3):ǭϵb;8&Ȳyb+WW[P( ~ih8J*@g.RUs2O->ާZo!Mo^{.3:>k7ۯAXE"DO7YCJ kÝ%1 0QTc"|GtݻH?p*QIH*`[0j%KfH#jo]|z=azEM538^jxMoR%c6Z{~,fvc`ܩ~Mͮ=,$g'xws`8uKΔwq"M]"'Ɏ LMmz po!Ϭ?yԿ) {d6#d͊r8:SiЏb(КI";م'-s]$E9=uD~ j=x )j7rr``*K7Q>X3]`R4xR5섒*&0FIHo%ud0c@A;pC lrs.#xR!Rbg;70' fNA-tuVn@q ./  жAg8 |̛m9fNRRo5N\eRqG5?rEc9"9QGdK'ަ[f P2O#HӄUGy|SC=cLtЕ3Yݠ^Qm8D)E;8p17-fz]JwUe bE\v*n_ ՙ2iH 0 ;%-8a̯s`ނB/Y>O:xH= #Ϟx Y~wMG$P &:v)7k MΚ\t"'==Eiz \W)\5nIÀv,7i0kvs!N\thgeCCT|y7$]?L*2. +m*eWrX_z6fY{LqȊl/(Stn*yrdw\Jk_Vtw#>hQB]YU?QC̙`C`"_$=v]k,HOދj6TTh!2UtrY&`KdҠ.xdNtMja*ƭE?A{^bgC&] Xzxz+=iR t`c=ӷngʆƺl&)6sr@5CI$Q(ի<Կ;lDyM'ϙwP W،GAD1ha#YD8hO%rNdcEBJ孜;eJ|5" ldB?7'"|B{Eo vaЪZo 0;s"6Bd0p ao U[/+jҕ2eL]c#h,VPM"}w}>}PEh5Gy<~~_{ yWSW[%R}z#ЃkJa ys rD?" ;Z,K$uwtg}eH~'ǎK T@ǹE0Ěwk"DV Cg ݀jJ[Il~n-ϛK;שL!tw[56pU!簄{ #V7Wy@F a~GjTQ|B$xvM: ~h5Z8 JxGR=I' 2C;#s68TD'U%2R+$=qFG㖫iEzr{K|3X<38b l5Pe |A/P eM̝4S R dzSv>P`GcrK,{zlXȕiӫ&` Z7D(`XT4I6V-0'U*T9OY-tKƟc 䞠yѠT{ˢ bj5O9&-4h %ܓv8KT87*zn:RfȶV\BG|2̧lk -0Sд9r\f{~^bey!/%\%g%ز (_CcPqǽ\cIђڶTW.š%}uN Vnr4<K_zɋ4 3Jg0۪`pH?{Hu-sN\60ɞo~I9'ilu)+Xj-y{*e:ìكJ)#y p"G$+^n.k|> J/Lբ)EX^!n=&f:/, Wizf:6a N-@:>|Y倛pW8~lMyم 8y?s!xmUqe8Uzpxg> թ,2V=7ɔ =*E5Ɗ迈p B*NN0G$Te!/}qtwtY2nXq`z"Oz-M[zhŶ'6t$߁oޖJ]ݬ) \K#q77ܨE&fn1Vn!kXgCJkcDai-lTЃgaNUqM|.Zyelg63") 5s.P!̩S}0-i#6[C֦x!d*#GyW-ek+l- o| ua򎓑~< Xla-=Mo$AfH#=̻|, I T5I,3oÀQ~]zlX/,]}}J +ԁ| C7 'DlEaFn 7|҈a?&auN#vTUDfS|Ed6сpDkhXIfq%Js6Gںs$RÒZ|j/G"vy "F*oJ$  ԐX%Gj `t) .6Q.=ӇH35(fszJQb{.pMk&B+'` >|$rt ;m$ְp 8#h!@C_I!xFl :*?a[=43E s^ ۀj|OH|d )lىLoTM<"0]WcN.85үոPWhwTen "J)}xB<߱wJ,0h)*)`$Xy/r5)CJ2d捎|tj.y-*zF*p1=ÜGT?Hd3VMu;i>(Ge|r9f܂\q7>*ZrCqKt>Vy4ESM#siXX0Ҷ P78N::IN_2TT(pKJVٽA-HwY˥dɁŵMoK-9$* 4'*x" f1ɻ#wC,o+ՙBgTͲǕ fYZbX--_ɡ.6UA_@qThM8Ѥ}aSCHF|J68i3 wWW([!W99zړK6THI\!Ό'ԑcu%隇 }fO>ϕ}#&1cz,f4J̨?is!L$bĤڌFK|%H4#/fM&X?I|11 * {g)l7ݏ5k<(B:78|X!؍qE!Npb#I͙|)hw{zfPczPE+@GMiC{f{#9ZC.Xwf+<=Sk"*LRRH}M>Z -!'v @}qJD&[l9~wFe m%]TR 6dpKR@wW|umy+N 2ȩVِ樍g)k}Մ%M.OV *s\jG)=J.OZ人h;vJ9-)jLfQS('O!Q2Q\]!on,FҶ ѕy~yc$jmCbCa2pǀڊ"JhQz濐-6=>@fۈ.VzܭU҂,pw1`r te?h|invy-D1TC~|=vv^T[ʾ.V圽٦~~lc5Sо_=Iw@x,3F>c?߳¨)iidR&Kx?nnөvs24Q],ml@9y@Y,#dX$d;Ps?z:Ȥ-h I J> ֮l*-a@._H xF8ͼ,4ć/ +.e:,x!‹$(PEu9|H3[6H o .#[l\ A X\K=yzt_耈R(Yfm7b+vIe<+C?:E3_gc2`\5*Jt[M]1$Ap$5c hhtЧET$f`EA֫hI.R])riXƙWbCq_ \b4'&zuXj5@ tzeFӧ!Up9+m z-dbt^R ̹cXTہ9Y_#FTHյTaW鋏hrQ,-|&=M; s Eyd !fa޴yZ@#Aztx^A}[ภERcKx} đpöL ?U x-C?Qp04-p$R]svÉ6qbK;$&$LJad!/^Tj!n 5ӛKc]#g"QN*%ɓy.I |JlTlwY]lF\%dy,/lqjňwiEC]l~ù6euH+)=e:Y!V0D*/l4j_FqbaD0ܝp6''R$,g ǕVBۏ F=tcy*EXM)_ QVN)@( 0὇X*—`24*VIMD|rB}F4k~b|{rxPSӭ6CT|nԲ&M" "H/"AeäyA(ODZ< <ߚ;\Ncy-2cwv<7|߱P&5k|'Sւ5ў]ㆳLhRIaU\d $rnb\)ZsHuO,W.beh΍T* 8e~F׭@ pGa-PG%73j&:8"#*ŗfW ec֫oTSBI+McC}%rr#iobY^Μ~"|zpP6[#1njQw6Y)zH?0dWN8t$tݣ0Xu.3Y[‘J?8Ʀ"P~5pfvXxju֭6`.뗖4| ˹Rr!1tUH]c?X,]ʽK6͐в Pi j)XaYp,B;IVe;7ҭ_.Ͽ -iT?I*tٺ7[ FӷKXu/+by#pRf!\ >&lX\QMf'7C*Мi?YNBFo a6;U~ -Ƶ`>VkgJN'KoG̸Y'Lov~Luz@ >rEV}ԅ5H r`V[c%ŷ+mn ViD9N5ܟT͎|Jgҩ4`xȁйomUK  {2@\eJbV gE=:k@}J ¯. !}T|S-z+Aj'T$DQo +%ǬcÔwhfQ O%pD w%>Q='JIfOn!)NEzw0m lXfi˜c~r%`HCjK ? 8CUgV7]N`hG8CXfHhl$URz}N8Ǖ9,#z3anhw¹S=:]j'؀x;5qMLӻ@j!L7dNB]cE({k捭U0% AR4CZIyymnSG;:Ga#ڹK|o"|-[$X=^$pcRixӖ^x!ʄE|k]J,Y<mdACh~LZV{JU!.Aq. D=O'OTyeB3>w/%ԓiePTܕP0lgf ɑ^ie\L#SypDIYg7ix Ϋ)|m}7Rl/~=UUASQepT ?ɒ{|#q:Zm C<*`Gj4黺| >2H62IB5jʋJ G %͆"SU,Sicg9*]$t+ &X\cgo6MQkD{MIIv1%^ %׉_s̴ .f*[IR _ [>=I$wp.#sGg$. >m Wj{ǕQa,iQ]DpI=2$P{JZ5~5F$=JBI03P`9s{[զƃZn~!*pfh-צPiIk0oˀlʿF3#vKO]XokQ؀B\NS ιr C Ѿ'"Kx0\+𷹘]G\t T{ed~Fԭ1^zN z|q|9htqc]&h-ߵ΅ʥo+U.,\%n'2/XK9Xox%Z ; NG>) It d0e&m3!U,D&7 p$ҫ_Z%f=$¬ oW;Jb BKH!v,| ٳ3$Ҳ WB׹ QAKGl=DYŎT7LGx? LP]r HjF!\l$bNə3H ov_# YDn8}r50stdjpC)Vigqv} ^8J/<W婢iVil/$`HO[=KFX5UF\+jZ(BAWZ߭ xS + ĄeMN-?GКZFk#dAe:FuaX' !bxnbQEcI f)_hp˻Pbuv lkAMJr?n5 @xCb"c[ Yeata}(hYkU o7Rk&CSblLI~ Rݡ7ǿ?7M¢͔0rTE&Ʌk>w=AMe[~u:9V=XT2DL~3&lU+ C~Zݸ**klw2iaF 0͹A%@6: dߘL`s ;1jq) 52ˉ3g( !ysE35JւI!Tl: ѵ!T[vjԓzh֖cƟge :kU`ٓ6T⛑CvBoom:'eщj9̧),3DcTQ5^FR@G4S#$$ J3}}l=Uw796xgˁij^!JKlSƷhY^2࠳O능KB ltr>ژn1rhd 5I9c*[# t:?I`g Ye~iWeHyӘЙ뇽!;DȈu_|p[Zb 8(ZT&V(~WTh] &RH{4ùo pzu㵻&4~S3geF*#1T]xs%ֶCl=,'Y` AweGSاi[-JF)!SɂN$4bskkezG8NjF f*[VsbL?ڠ\`gӇޒOUeNAt&h78oy sAōdk%,eÀ6't|l%E@F.Ҿ9 W#.fn0Uge!S%R*iu8LF7j&ryoE#GOaesJ3ܑTvo85Y hO\ ߴv%Ýjwj7xYxBo5=GaBYy²+ӥ̕2C)!6]t:rC!6R*9(8J9vξsZhUGo[oFe/3w_pΒMvC㚴OļOF_?2X!'M# :~pW1'|;rHK0H_ڜO&e}֔ԙRtNMIyWRN5|޽5fڢIb&-m桮/V~&VlnxE4;nl@{uGS}fn;PG6K=#/ݧ42nQ>:Q-ʸ꼭+[ajD:E~Smn(ktQzH"1$`6^Q<jԮFe:wqEۊO GCE,% #/.ݑBg}_-"Y< Hy1Ϙ;T>X>l^ ڋ?9fw0 u1]bIq2cac^Gfo>!Š%7ܰF)]TY"U knqb]Wsz1WU=6HLH5/*kƇ'cT׍5_VbQG5>r8Sx7.y M-ν0JOj}T4ĵ(' x6Kۣ!X`uG@섙ЫgL\)w bW G@B 8±qbB̾^8l٥Q!-tFm 0 %yѲ3 鿝WO=,̣o(4qk{ûf@K*j_9MO+3-r{r50W=&rRڄKD*3y<?[|\+\cz]i  fǑE B{TZӖqWTrUERm^%&;\ig w\bs!%0jS]!5&%A.> (vcN x<'N5:J01o4Zݥ 1&"XnʧA^g,<ˎ3?j"ѵjaP'Cp]q%)L쇢(:u皭|DFԡd5<^m§7WHbՁ b3cL=*?=Md#B٢m8miDw!%ȴ$x2ͮhCTw ˍ k]8}MЌwv8r'U(ad1fmv~w#KFVpY[:6;x&!?xǫ,/G"9n\q b)+,c!g? kQQ-dgM x3=O=vٹ%bϽ"ν9<7P ` HșE{(jc~h&B9K|JPT ;6ȠLYQX颭MC\ VٞrJ.`B o#ڔ$5_U(3*ys[gUċb(Eoh &y1@vy*g,p]??LyG5gjA8\VH81Dd:*l(ӏ2籈.^h+y8UL:i6;]>RCYZp~[x*(LBGG%*ڷNS"HŬ:T~VLuyM#8uMTD?^cOOKx&`J Y=ctنd*[aUWmO%W#6l Fwʣė*;hN҉D\j~7YW}/ F@4Ps?[wLd\+M9ӎι \1L,vRx N6.}] C?ndX@t֡vtm6?oHwA Z*d C S)&~CΫ#U)w7_3"QxM>0 %hu&/*dD|UX QclxƪʧB\ .>a-8gX۱0Kdl|Oj&T.&nWZ%&h fd%#8ez}3X\^=eM2nxI,FLV7 pv*уcϼW %W^gR m枕kXy%x 1ABl0D4'* f0Üژ9>Bw Fq#ʤ׮UAD}vS6S-b7-^'l)p+)zrzG鷩hUOc 5zT;yvblӀ?9\!obTqN"/1AK3:{A _ i$./d9T*"sx}͒ <3Y~G! (q剂l N9Vn]!f'xPNg2ΜY*l!߾~ذ1ud{Le1U*OuB6𩦕zT#@)cp霭$M$|C-!x7eCLyk/Lr0 q!vbx;FSC"A<~cZEDE7`稅MF&[3 iI?c0MqGͦHAy,\i =Jj Fsl9v413<*[8q/++9$;؃M..1 I,uAֲGϔ4GL2A[Ǣ= 0J'-7{&E7>1860cг ڭB}W NlnO/٣9NËYaե>c&NeFn&31dqC4^+-d mamZd{UppJܦܕ*Qm/5Bc6I|Z;*'LfSq[ WzgS'Dp_}WZ(Ɋ;x\i5<ڻw7Gdc֕c:Oa>`oFKck WB$q]#D4k"`>ϐriZ3T~|N/J7$S 5 ô,sDs`Z.؅, d*Qo;L\į>9?8B_O;k49֙j1SE1*Wd1PKfRP{2@=nݻ>6 Xk:/jS1QvgΩ~\ k 0ؑl',z%PIM &f}-y%Ӫ6F Jnz#PlAaLƈkr1 ԬؖE1_{{e'%Y.$TǾI8<(ik8AD(e:op IʹQ#vD%$vkc:TL yw4y%?Wzk/H\'&Ba߼%tMh߫߃!П4Y[.gg%]A[ 4[؞&ڏKm0j<a .DZ/\\*ڒh喜gO>3k"),64+!NYD}?+@&<|PdJ 8@ S9zaYMSh" A72x *'lo!W#mMV oijAw{GB7' ^RTaS#ZVJIHGߣAp6}T6|oX1uݱq5ZB>;)YBP:PWhiB#wy${KMTӷ/H9&3" dJp"yr ɲ n _oݬzx"T8U5d`^hNذC Ղ냽@%-ݞUF s qJ/Le~Pӑ+Zu^-d_AJaV&ÙG8Jb)!i1<=_GR^3xt`}/haf6 i@˖R`syz9eӓAd$흓qHX@U2= |)1uno_>p :Ltp't*`S2L*{1CvЈm]JOW6Br&{`d-Xc^9ڧׄ4! )wދX3W3"69˓0o&NCAY#dNU9IuΎ /Z*RaBێJA`(ȉRFR 'ngH|aNn%ja2+ , A֕p~m.(Rn ͊X`aܳIz̦X0HGD}QD'`5|% -uK|L#46}g?T g|c;A& h-% V;%BOOO<6KDwTWuX7-\G XOlx,7mGF( Gv-#d wܶ=g@|`Ӟ;U V:"RNv 1`p_wq0L77"-=H{$ZH͒ Cµᱠ?5Њ|lQMU1X\#NZ?#u},˧4Mޅtre|cI \uf(Ra!ֲ &q2 uM/6Bm(a߳$gt.r޼}IA|!CYf䧌\R1|8hl@`QB5R hrߏ+v)5 `$@5bY&!0Ry_y)ҡXSKy.+ͅ3w;B ^5njfJk :J@kZhLWqlӿW R(|3TNfPc~29bsd{wJc/VQ%j O];Ũm+=0"޳XBڶxDrC隋}LBW}W8A(5iŏņ笢jv(jxsRo{I.qQGZS/lUbyM_(akS:,?P}Wy4cYG'oKǁbfvJ*#;i} ?#  opP@KA@@b`\D wHwy3U]A~<ޜCO&ir- _ŏ]HwD{ ^E/׫r*~\Bs%GnfCt݊i-G|2J@ۯFZSCIBmɺZ ua5RdIa.:S@2糱 g$LL׳b 94yᦈ@-m]1;O 6m6B1 D\Pu S-q` AKQ4 )('s D1Ze*pnWi65iMkP.c:'ݽNY Q\e`3#QuA߻Ls2KKqW'@OB|tLSy"h0s0xg9GQ{ڂoROu4PS!a5fza@ٺF-D.)t3.䛠 C瓧"" 9YN|PqaxCBT+$zX!ۻ4GrܛlcaC_X }%8 WNɾqTo.S7I÷ W:X;%̼ٔtPz ^ZFu -nk67w 9E%04?RZ ~UsLcZBx$̷})Dڜ@| [e9BY%V$ܔ6|%rǫ M+AxGv|3wʼ惨)5zӉҼBl(+;S4`^arZ+VVQn= Y#Tq*y^e247H+Z7=g;O#Wi35VN~ŅvǸ(AoԸ6eZa]}s}ވV!ranJ-g+>Gv1>R@VLO\ob-kktL V%kWs5O- 4R.Sigk w8h^_ưuq߸O"HMTLȡ2.QI.ofL:zHNf U=a+ʜU\*8]'YpSM{,̸LE"2XIԬQEWU2 M7jGύS([7WՔ'o(6F9y1-0 TZV?4lx}]5;}lnRR : aXSSG|`TH,/2aR`I%X&q5#AbR‚l1N+5AގzYbGZy l/$\aN8/ny%{T`񰦋^ FleC4IXP!d?rDⲹ=˶qLXqaƯTF陶'w"\mlCX_qX3t][&WW;m4f]7aԸġJ8hʱ)?. 'CroT2OfwOjWw׎շ -Y%H o&wwI0SFjZ2\dmjj>rNfB*zA˝c3UU.5<(m^3̹M\Kag%cXJg`2j2LA{5W`ͅ2 Cڦ{p\,GM\EJiIDB _B3[uu4~%{-&c_t8b|{GCɮ,6XIl?X\ ev f Pd0 -oq= u}yCk}04RE*ymk+FV5f>M V5N2z%eHʐ`E G=Q_q='H|~Gl| FWO^]'id}CfFj޾OlI0+m$TJ~KSONpd5Qj_/;{K (B@%ihofẍ́v<^§ߝhLQ$xg#%1!;S;/@AN]f;$aUkmC8M͞LgWQ cTs^NFmRy_w䲚rV[(If H۟誗4r+ 0y嚨[lhp⢂pqJ)e= z+Gx[e+Q볤0tGɌ} G!㋙lwf>[sF:chVZ'Nвٿ,/}}G)Е.Ҥw` C\rO&zx_rt $^aٿߣHDFp@C^|~2I.>의03?Bwv_0eoN3z xCU%Ud: {b]:] ('^^bQg>K;}` 1h@5<.髀cW'll\e31ga] OyoIKI7Y*W#Yh8~Pmi |@ s<(YM$!/4ȵ-09׹)oC㷟14Cs{p8V^U:?}0*Å#wEzzM|t5])NFxwUҋ!XOE"_Z.њ pr)60o(T(]>ծ?^ÓhuaZ"÷B\YZ:X qS_ zj9X'{ Nڄ2bԗ8*ILi׉p4+YO`8b91My$Q^+꡻0+3LdpY]_o!c6ΰ&X w3)\eRL[gKCWz .2AJQ!θ*BbؿQ&@73g*ָ!0[=`DfQchWC#3 F+7l%?o\^gSKĝN?>.zMUwFY]y5ԔH^-NgEr>3ւ zҿTgRJnm=LRê<ѰDQ؉R0]PΝ)ҿꍶcܷ TTʎ^4ʆ4R))9]&fiSKNq^7ڽm鎥5x40MZjD-T}ÚbAuHa$7*&9 I]?NNB_P~=%zlZzLB -25m8AMluq72< c}%5eo&):C(AaI+ڨ2疇\n'Ub2}adDVpIbvⶼKחcq1wLܬL_'3! ɿΎ0 A cy蔃i6hb v(ڍaݭ-kmB]sݶ%@.3 gnBU Uj{RF"[%qw]Ue'YEQVv{@/M^,c(#n,}96~Yp 6i([G̍5;_JdԬvwS m}r.z>vܴj7u~+#"-'jq۝c~M9V{K&5ˈiکW`Wkĝ ܔlQhh\ qݏDC`t~~W "w[S[;@,[-W@Z4\G;  ~2؏o*#\^d;ǔ".뱨e1PL N86sbm0r.uk`4Șl IG@(d/3~hؠ?{lwn6K͌ς{oo6O/{2 )Q}:H`zxhz+}?|+}a T3U!O.(,^ս?L6-7JS],@78gK?!:NK p 'v1زdE|N7E}ФBH&Hqdt4J53KIsZհ9 Wć:|d#RpVN#%J'|Tgs *2 sCwL{+`/x镐qG+VuV˦eqg4,{63k)o%|AﹲjF?+J}f+t lI `JM צRw+xȔve𧻓d}2³̯";Ch ֟z)&h׮NREks^)FƎ~\*c`mB>J,Ѝ`S?,>v+1~1 *4ZM ^AbG,l2gBk=\&|.jBP <)|OEhO{yH.猾&,/@mtru/i}0o|':JS'85/Ҁ Eb-nG]K/I>Qk"5c{'*2&>ϭeEZ}jx+Z˷5/*_!-[m`GpɘФ}y<%b+A&|M54pbyH"S/HRTj -rI`4?M/oW^襘ǑzkGfh}D㉠M7zqp// D~3Bip  or7R AMޤ'=]b1ZӜ ^)ɖԪGS >-xg\(xGu!מV~:bW[`B`֖-Lu+sDWd 8̤LO%GP*f BEu-WUΰix>~&UbɽTN?a؍bKY՘e%ZH"Ef-=993+}paz8 <b^SPza׏8,$XW '^ҕB5ugC~D Fay[wI.Ϩ-5 c;xPƄw傗TO`⸋η tbXC@=JR$ర:pCL`!cw|iep3E^I›TZ ޞ%V~)q%*8?]]V8&¶S$F*k(ܢȝ䔽4 } ū8)xv hn`1~NبX1#U/nh`@F:#6یJsW}&nukE2sSr ߶<PaM9P0qF ڂe0|l#~޹hWM:tᐭ=2:1jg) MӅҨ8 2,NE&+Ob`<)vzۭ(:i|'=E"U~+׳P-=P7]˭9yvjқ{ӵqڹ麐l{JO\"{ a8TY۬̕P v ߆T5(hŧƪvC̒#Λtգ~} Ђ"DB h94 dm$x~;B[C)l(NWD-NM1KzMGwͿ. 6V!'irleVn[Awktǹl(yAmEgO8?Lhq?}v" F3tG|9Ɍ_j3!:$Ilq+xx͉>}uSCrxɠ)u TlgAbOD˔Fa/ӣVY%[|кBfbRXo@cХڭ]Z <MQwxAJ*LDimƠ2 Gnh-V#ÈZpU/B9_# Sp WDŽVyc J-o 5`ྲҼv;ޮ.LRƑ>6c>5mZlYy_56Iյ)XT%hGy/XQס6q`?`.$Iib Mh.R0X-vkʘc]"ظӘٗLn0k`4g'e0a5y)z4Ui]K;PӀ幈GemX P:- 8{ߗeY꿮Oڲo)"쉜0zԢ|nH,-@*3|Yvqfe,pKB9+WDz'ߖ`4;;[c5KtRʸ-תU3V5TV #{\E|_&BBLM]ǚ:mgxW$-T,@w4'km?,dSRx[|3tsBb]vk]Ԯډ<{%Ĥf8n%2 $qW=;Yˠd)\],ի晑޻ P'i19pȹ&Cl춮ܹ' Z7¯Sy֛x7Fz?kFZւy(Z0 g]ه|gaڊ0-4ЙWQ qDG0G{Û-LЙgבHr[XFz]8=s4,áuƹD+b+ҝy$ˬ6%K0Ġ ުHEscwTTp=mS?rm1i-2@g"= .&Y-Gm}/@Mmwm?%6Oܿs mR$|N2p> }u/=w sPjW_+=sS8$<OoR#^PLP:Iʁ` Vc&G{čKtW-#-~..Gu6miZ\u4>$]dj-;8aZѿUI@ht@7zC.OB5=Nr덲ϒg%fS̔XI$LB, XМ{ŲBiڒ'[q[l~.\J\ZR Ke^YHCAOwEbj5]L}{Wq~kFV'ŽPsJUk:jzY:LBTTWI[nh{F\Hadv-ۛhMҿI.3,-cpQYb{CȰ.J*< ,w lnTk)TwD<>zycJί4z${ۚ2xcOɬ} 5@ :j*Qp|/Bn$ Zq쓥%('v"Qx6c &xBX3 2`u*ޛ4>Ir8oڧn xAldž*&T7F*}{`# (.b1a/<-C$Ëgܤ۞˻qXPTbB7ƕFʴ\->HCv|@qfV᜾*Jwhq%ѼUtX CEr u~^HCY;"V袢\ bp/bc*܃Nx;mJ3Hw~#5T!'ý+0: E/0o"~D<V=xO[_(xܣ~׶_~T!Srg=zѤBXPv-@k|i,3lni)^]3DdW&$-qr+qDEta7`j SM6bfMyB*J،30e\1;^y̾o)K|v}5INƫ }*1w 4e1[pS˒rThG}`P0M @]ciZLjIs˸NVa=NNpB=ZL@ε@'T*7e+kvsva185l*P*ƮKO}̩ {\K vȚjVŠBNY8b WPi$\Ex`6H߰~)v^i Z^f{Xi$VL #_awLmv`l )'n0S0lc8o 7Vր,<|fJ L?j }_X+(IRcnj5 tg&UG#S0WE3V{BZF}Ba!?vfZ,4 _]IQ8+"ÈVZCZ_+E~CQw|EѨ{[\ &tS8 hD PL<"ozd%o{G U%J@۾e˨|\m=IYS:gC`غdH'Uŏg;(^ uU;WKY!Y'GnC2B\r2[Ig\~%hAhn ]I"K̈%ua+LɓiF5&wm&p3<0{H}g*Q!-:YX OV2 6$ۺˇ(+%}3l6{,=[8/zhbeQp!3iKX:rpP9Y("Dy-[5c+~@97Rلk枪M)@;+#`Vg+,wyB`~X\A%=0pYjwi}Q5o3X#^[DUjS'7Iqm֨߾drsW桖uEYKb}2yxw OiZPSa ̖+|ELcSNΣsy-w;bvgRk,?!( Sz_%@M Οkgs#FTvć)ɀ\{IY.#d'J|LQ,#i@4*/~br|:Fǜ󜇻+Z{Z/q N3Zx zWˌ WB6@^PC̺V.: F.uAU f6ʡp @m[+6B0%*VsXV zƔ*2YکCi[pzua)tE9"v$\Ԏݳ/)CG"|[gNJ~~FYB wv Ah;ptN9X<TjeKaRh h+Mݽ'%y85XSTH, X 4+f# <1]@<.UjN%L:]3+AR@2 LB+߰k'$-ѝv&`GwtTӓmٻPaD9:Y(( dP ѥN\"_Zp:Ɵ$8u p+@"%=3|_䊀N7Q 'mFRWX8㎘MúL,O1XAcҌ[ЫƁX4>N%H/I AT&D-I@CU:![7UɟxK~jv$S V<B$Ud0_zFSq<RZ6R>NYPL`J-ս/QG36^U8" 3agO,'[ vf*gg6g }(/:d4}JwFW=Y@AR-N$_bM1Ai;} rrI okݟY&>Uv/艓b7%p\vL2;I.KR2I1vI*PSߜZM$FTk迷T܃}^{D) sgCbDP0855SNЫw!_f/0D"a#tz?EU;i Br"vBʑeBjto^DGkM=^}9mf53d6 cjOR<3rϯ H܁Ғ{w#:gy=81VwMR[-ͻ*mS>Hv)S>*czh/*0ɉ5Oj@\-JA*:B]鮕 ,+{:(f"ٶOmlKm|ok7ZQeaKb UJX|no ) RWXF ;`&VI}%n7(i== Өu. $JY(UTI<yW= N+3Hg㹱1]ՙkH7ʚb1], Ulj1ET- >RA+LԺiЙ~E*N{.cvB c8|Eޛߗ}}BrfgBϼR9%5]ī m\[ʪ(ބwJ.|I/Iz$z~TyF/QFB7br{kr9#wB hubOy+ё}6V & y;hڰ0 |gk(DE6sp?ySiK$>$ne2 Aޤ7MhxhGC,0:z%wuͅ T?0ro *|=z =Г@ӽKv?R7 +LD|6|5T]BKF=XNK6{\0NHϢe,K!xYES#H'5 oLc 7b-gۯ'y 3 ] R3j0^\QvHbIޕ05.ĸ7'hƆuUaFG07e5S/=dj)'cH>G7SZ R Ay>4ڗ5vlbut]J`P[m{0LBBzkKP!(Yc& tx!ܠê:*E;yh m9S3Jɟ#՜:' ڲ\'ح{襮m(hS/[37d+(-K:Iz#ޏ?B\Dcmn,3$,==EICنJGYJ<} `BaJ^ga7BHtOElvQ" dܯҒYRa2Q8 1iTHtñt_PQ#7sszgkN :,ݕ4hH^"Etc;z2I}ps2Oxc}󾤖Mc廌jңhňc<(MK0S|=UzͤlEj5$%dN]Ğ6"]BT'9"G&5)m%=HB/Vv-t<9}䀬/I&Fg ,bF׾ŁfwKPc"aXeCS٥e7 HًJ탬Kd <rgc"du¨ cA&̬;Qbg>ݓiL dY}Si"&mc02JQGnf1TcEot._FuahlEWVؐmb͡4?5tovڬ'W_ G  Cm \.T\X|[ۀoIt^|<&,еe6 |q9i1Bd\Qvo{p}νvD?{W01m %U9;8<ʊ ]JcI͹6Qmcvd7l͂6? )ؑ\Y !ŒfHDGw+`ړSGWM89jjSF{Y+ hAf\a? \V~\ݮ# Inyblct $$`%t+OQV77/`WL/}5_p68VeτJ02jkgvC*mΓNZ=] ^!M&2r !td"dpы*@ѓ&u ^LҀ^Ti7 ",G}݋C;6#f8iJOyJWJ-R'|źNGdd'Ҙ;($,+N/tZ"/!UghPN#d1:*88*mViK\TAQKz 4 1= *'x[Pꡃ̮'ϑ`+Рۘu-NVtBr s7IARc!(M6El/9f/\mx̊Ә7qW4HĴ =uB?fRv9gk$7=&=q$r;ww~* X}ċ)*5W$4g>GKQ:1,FxM cFvYzkd=cѨO[}tP`FGfߜ㶡@":7P"ɷS{@t?S)˘z_rls0u:Durof< {Qa){P/ytsi lr 73qU)lA#7)no*)eev0NJHUEyY)#X 1z~mT}rZ- `ٌU-YM$YRS@zSyk8_(>( %썑H}@ #mX)}3ݙv)?`÷Siζ'VՇz0)eoГN|k/GGOIs`dKFk6f3LOѿ'Z4/;`wM,֨ǾN\Rɳ/.K㧀j(~&SO-zŲ 71<l*=aާ.'`ɘ؇@UL[qV )Rس"v7kU]lװ 0rL aЎ 9 7rLmsryo<&5or'Um]fSB#5j7r> $djW94,.U1-^-dLQC<' ,#_$OԗgQpayѠࣳ;7Mc7E]N,mvBz\?Xݶ SERϥ\lS3GnBBη'io `Pdk9G|2`3*X0k'Ub ^|G}Za?ԍ؅E5@9-vDŽr٦LJz'ٿ< u?$^vČ45XGJe{}!̬ JUnnhh?Á!p涱E~-J3Y ŽX1@./3{ˌb/IՋP=퉄ۣjeZ_oC0]&>(YQzemSu_p`Ө\Z|^T~uD{ @;?*(_N5 +rQ)dN^UASV[e1)"k^M2lXlMλDmrǥMY~f@ ŘC.?2PXpxd Tz24[.Ew$sfh(4S i t63^oY:cD@`d7~D g%:T.3UA 3)]Lf@fiY"OQCl",/@cIr)#pd e w< ; o *0 ISJY]ӀcD$YZw@b_K̠*I9ЪAWL; ZH}3Exx_"@p8 fL^>&HD{X+y[)5Иϋj+UtUaS91 uÙSrj<1@)!.pJY})wZ = * 5-cou[iӍ}\P>4Gs hs`-TjaQЉ4o7-'.m`?RSH!hSRg f5dDg>pH(_-a_@B\68?9=;m`wᘳ= Dp=~$=InB,-LB"{l?>ϋĐ̛vWF]#ܹ!|F'8ckLb?Y\ rEzCŝ,G ӳә,[3&Rjv\;\BZRqHeRѩfJ%" LN9k[m@ |_BB?: wL NWi0n[v7'![0{ܣBma^+}{/.qo  CN 8VW[( 0Պ)z7Xᮼȕ!~rLtHNcs amsØK)<Uq36䮺9icӫ3/@5#Y0iǤ:hoV;&7@Pl]×1Y6>OD{BUiݯ,F9g"/ CoAbnutl P6 9MI";[htٽ=x]ARdRbMLBԦ8YPH}5 MnA7Ur0sI.G 8- .(O#٣g{ōk[ hu,oKiajti ;BYd4zr3O˲'t#5+"o/Y)e{B&_]AfEX|8E ?eFzʮ~)nxcDcCafJ8sp #eVDO0Y=Q7 lv e:Vv!MNвK2^v{o- 2bm;Ǥ'11fbjۮl_CY$TٸF9+. L4rqך)Nl;m#+ F)j#{5;IT z+o_$z0Vӻ3?;U4}rB!)YܦzMIqaG(DcJs,LڭStB;`{]f,nRD~b]dO$56 nqY PB32^Ƶj ji3l~{_`hasfG:;:z/1A "\\, k|_l Q~ViX>t ZAH Pn8{U8?هXp#dӃ߄W|A16kKzr,N׌3p8gհ+opjJJM&zП"b9ud%r{K^mH6QgӋQ$7:=K FDMK jt*ѱ:TnkYm!Ce F<5],Nc 0<}E-`X87Wx~j7SQ{|}`K1IYBl|I4Hh{Fmq>Ƣfm#Z8#cj=W:Վ'~^%~^7g.`g*zUXLQ# ԰]E8—TtcSS*iczŃoŏ\ Ł:bVNOIHSEwC>% "k2/2""aSS(n /n\=J%A"9\/N.>rDV6OsCS}0$;4,H)V9[4gw37R N~%t*J/JF7$"`* 󭇫r~K0,h5o+-" KR]}hHXIgt;Oq*aȕzOvnC3YN^ё/z/FuV`g!ۻNZ"]#DTg4aT*һɖC`|"odaGk=D|AxUaVŃoiPc<?K/D@oIr4Ju!4ᜨ7\ԃ+oEKHJR/$>`g kBߌ/텠_(؛ewF+0#΃c&hp>&B!}.~Rl[:|~({znmoM~Y/Ƅ}w'XoTqdfvGoG5gLeRޒen1٠bۚ>It.J⒴&reVvb>̍_"YH2V L*0@=PѾxaZ! !AvX1#XV'g*2(Z&s$7a!B1m袋Gj$Hsǡc[ocf kY5?ؤQ! Vx4:iw/T:T^WWvv95HuƆJmG)="ل@~6*QMyYSgƶj.o)O[Q +sp";u-sg$` AeKCYH ݧsCh7(#@Ԧt7H,Fu|5N8\_Yj36cIC8U+]^f z;f{zH dZ J*K+(D4NBؕlePUh8?ߧa![_ XNܴk(ЮEXd?':Ur{!fbԍ5s$Œƒ17۲IF( x %ޤ>-^N$ٞs{ v ysb=ɪ39>5gq7zK~z߽[aj:a\2N\7\`Ǣ3,XgkGΒޮ?uN?S%) 2\tK8#2"96_T`tMrP@ޞ-ń:lhGˀg1@b =~ NN;b[ ;8u_oSEНvKƩ$ֳ/(#a_*-e䗖L sE0[.brD5^DzY^Cx_& G\% :0 K5><84Puz}5=j*[#|˟džKUWt¼Bt'@0$,iFf=qN6&M&[3}ˤfY*+g?SPKVe7! ɹ7æs@t:'@BVW1٠j^gUWJX"#5Va> wK+z< 4߸hvj4r Rڈ%ÅSA{~2M" zj$پs^C?!u#4qq[cS!eDxYO|1ٙ@";/2]xA̺SU ʟ! XկMi^/A3*()(I6(FĖ<4}BW}SXA &0|;}#ewKGqPh'<Ѓet׉'nPp샦ky4t"1t]BN/׬ m4/# _El>A/NJvY{o1.Ib_ `|^QA¡@j/%C4S2Ys} gE;јdNqLR֓ԈЦEPuvH X^*}P^ ojby3V֡t#D Ɨ[f!"_֔/w@}S~HY@]V8{_2/Wx3JlJv"ʳ|Ǜ:fiJ [Z]S<<xW9*5|  ]-S r0%xKH;1Ya%GNoVyc2Ap4jaǾ+Qы5 IJ FN)(CN Ej@uFNM-x=$5BL =lpcX32 椨VnF~]_UOfָiz2Z)IE:JJB?l&´ol ҭ!Zȧِ4 ^6,P!:.A|h{?)%[PEv!=8ǻz,meu ON(+KkzAY-P0Wl$$1^״8 .}F%Vxnp.I4jgU< NsGҍXfYR"@ vjT9/2Hv_rS$D=V;UԞ.hݚS7n,j>,ư+X/GN C OeU (ℕcta ?6 x boK [S\vW3;kݛWJ˻C#5m' D3Ulr'?ӾP H(SkOK5 uGXF)ϭW@r{RIh/gR2joջ]y_CRz,%]d"{Ԯ#R A=؋q?WPC:{5X|K}&T\P7N!(U8Y;uN@nwztɅvJ]Z㓉U!T~<7 PhfV=u6x'8u^ L4&`*<{kLڋ[a+x:T 8TPajz%`ksw?vb1uU| P[3^l8նs 9b,g >&vUvrCdAjW<֩:a{BIn3%K.VQwSe{{Ec^Fhhf qc@ L̖`֧Htgw9}fl;%%N$OfMv(!y$<#q.1n/ҤpltWaI 4%lqKƐ8ǘ?¯ƒo cr9m.0Ё J>p+mmH.fnD&M&&w(@43E}eb4+j!lRh;4>t%dF r_#qkGBd  .&%t'p{nGzi{w @BSܽ vq(StW!YqgQC ׁ]]ۑlQ>mzۜ8t/ @1UCW#fOr6Fl8XZziNv_QORnEC$1K֋:ۃ_o ֍,F!\9t?1G{a΋]Cg>gq}]0S򈱬 >/]s5j#ٕ sBmh`<;ìȕo T/ؤ5l&0A`uKm'CYΒ A֥(\kMԠ?-\l[%=ׅ%){L=VV޷k`8{H1 n*{ITa0panNP<K\[ qVuq7ɻbڊB4@no 8Q< ^9:iRTв Czս8ږ-u_4%-vWV:y_8bkj 75{im1EPΐ -C$;Tғj|#>G`YbþvOwwES}&RhEqX7̆1$i/(9ܡS$F8% vfXo*gq'V!Jbru|\12$֤2`6QZD| <J*5c"jQѰ n@,l:Ev.`ǭQ(V%k >C\԰% Û`#r[ѵ׈wp9;kg^J\M_~Kk.e8%,q]r(2Bߨy-;F E1',;!asY=yapTԬV[Bg`WlZ{x0_rd= -2 :\OM?C4BVu`F[“5=V~Wxsd77H%5 (Lm>A\ 6ƶpXY͇OS[b/‹<2C$9ܞ+%,wr)JlAdUNx0Q zVtۗ˶'kuGY+cUlu7Sv&X78q~v }^I+řLJԐwwx.P%.ڧgu H5w` k7ȥ% ʋkv03,MQ> ^ JK[A_o^'LB SRRl ҟx YaơSV"ǒ *-1i=6PkN?) :yA}~\ã~~F ,HăE G۪Ͳ. IRF ˫z ҥb2Y4ʑl!yJ^K^ԍ"d#PMn 3 wpD$Ba#4Bc xj "ej.TKwMsQ-빹~qj yQx.BF&|V:K&e"mS37Ag](.4&C}R !c{]"V".NFm+{yEHX3YQ(뒀y#ߪwW#8'shPUN:>J:,f6e'D߃'tؑ-xM~<&LnM}|fe(NкF]wЀWi~1E8髇v*͇Dl09Q|]_J5OV1V~d9dVžW#e/cF XM嘮LH W-<ғð4G+澊ʽ #Ӏ˾,=bN@KXZY 8}^92tv;+۾2,`8k\v]YJ}om?IW𢆐\娎ec<#B wS!MifF!%?o뛲|M9-L7n7B"L D3lcY2I$$kcC[UFSPA@gNˑ!(I8֪ ]觤W* %KL堩E>w52ɒ=JLaxh.?UeJ2f*1ZvOg~A0˜(`$h-{*{'9e&$ We*afB"Pѵs?+!n0EVjN' SLJ'iR,jV* H46+Ě~=I8D`=+sȄtY:!HRqQZco͙Ig[ Bg(wTuKc*7oqCq&+ ][&;qhVih<,?k/%_B ˍD)0߸YܣQ[FY>`YbL>ULj>^'"_~'6ܯKZBwFH22qWFCHIj-yCu[\Ι ˉP00'&^,c`AGj6Q$Ŋ["q&Su6jw=4S`n2& eV[M $ vl$yRaGhCp1Qc01Fׇjb ߈[OћUԈ @[j 4d&*Ùݐ@1m&wPN3‰I_+v6RणQ~ \0ΰyet16ʳ͊-K Y'D9E|Sd{r*oR.c%b}DcD~ڠ]72}D>~WҫieV Gqq;; ̚7 /1F_S(ib)Kմ1LWxj-i]QATtE{RpySbg* OK Ua jLb[\XPUVq̛9uaÎCkź[+1Սo^ }q^ ]0T#'<8pT]S NCf?mβ6'i.]@CUMvnGd-?x,dVeMKnX"}|d6O{A t*ш+MD5hAeU>YMp7r2y%5>2qQ:vؔ;**H^Uh5ǜ] ܚ5#muP%ҩFe7@Tz=5`}k|8hqizN(}2C¥ H 73{ej[J{ǣj*lӳ)=;wkºK4٦L=Qa fS䦞/0oE?!1 W]_ex|4A1w*2}rE}_R\O͵/l ~CP6Dq!KW;tk(ߜQg\G6<29ak,b,{):Mcj w^v`RK}ඵmϔs3o)%2!Qqg(4Z67;F4"HSơed3͇ (/1jWRյ[̧c|pL4{FVoDSX]b T =1fՊ́%[ƿ!I/LD>8e~RAVomմOPӄnDS5"!ҽN⫭1 we_J ]޾ͅnt?2&gU֕_PAq[4ם&#h+\ܘ䍄p$h$ +v5߷ݴro}"Xm~U+{C/sUy6 y@> :(YNz7L^3Yb%ɰdtp}3=ѳ 1x 8 К/5*8@>amlkˋ >4&D}uҳI\ަ ~m=LGiKV L~^**~i̍½uZ<9<FgǑF u@2Jg3Q=h@ ظqo )=\(#s) o33L1`TOC71LM{OV ^g,:3DYJ"lVLg{Z_^ūfNT^ڱV fZ[<CD&<t )<2߂Ady\iƢKvmv9hR8' y OTCfâ+bs_xmdWȮ4Zx؅&;̩k˻[{%\K(vpjlh_7UkKrYwk'6}$Fwn=ig\ϝ2Q]K˙~nFYas^ڠ{#>ņo6Ab·fG; = V$ث%鼾0qȆ1K)05&׷*T Ǽ5cpۈSQY4ejsQ:q\d'kYB t yU܀e33naz?2n&8*́w'wCbkĔqៗ.rWkR}mQC0ACZOV rԃ:.z*U$BXoZ1uiKJŻs%X_Un0(o8F]C$Q3HX%>VUN.ڸ9s*;잾K[{:*Fk,{^%z0odCLzT5*}|;Mg?j\/Vry48F<ʨY"lbDZa,ke_㳔<0; 5̓  L'rR;BݡBE tI@~sp^ O_5D",}MT;9/^0ǩ49;T ˮK(s7t @bpj/JEr_s[ hƙvzx#ǣ,χ1 v>!^ }. &t%15eMwURs󕼵t#sz{$×eWK讙 o+#`mɱmZ{)!$p4ֶuhK:S׌cr{[ (Iٛ71]OAܖƃ1I\qP0CerHMl&ݖt?dUm\dR'K!ׇS*xҤfGo4V!!lcP$g =s2@M=?i .4-q\[2E8ow{^^)ll":u >; 9d DzrJ: sFGig0tKYd0׀{>Ѣo X 6V5rX#.x=%@h*l!r(dw! nHS3@X3ᡨ>EEwƝ{pM?*d((5 OTяwBC}zao:3S>/)kݼ!s!Vsa=eXGfƛ_׎pbfsGSP81ibE,myBf-*,>dhz:3FkBLJ,\ ^Pڅɖ-|=BgοxSLq:3 FԬL[F*1S'ـ bՕ~t:Sɟj“ 2C0'w\NM+0)HB7?慸Lun)vv;n?OvCmT{?;21\GM9V]pc -TLɍR}MuFu3xrk)(t)hZqJx!ȡQtz3ߔ2QxPS2*X棉k-P3PE0/i1w91#H;x$v_6ص+GBuҘ蝂n&;pO:OvCYSUAsV QН_f1U}Oݧ."@obhƊoy[hy,Nޑݜ+;s#1vbxY$ϼ[F˲M hn">e[Pl밢\ӗ!;WUHFΆq(M=L7-GtE]Ry"|w?8Bs#Uj"TO߫w-G@#.j  ZZ'vUφbpcҵ6Bq^(ĴH%"$HT>R34䱤٨Fgo9~mι|4[x7 +6EI+ O z~h/1SLIbf~_c2ζZ($ɓ\1jz+T -0tS5.r(80Iz~Hp@;p`\S#{,h5u7>Px@?hq1^Nahg3y`6䶬>mqژS*95zv75Y~{m^'j;<$ o?ޥ!&_@H*H=v&2 UMy+,Vn-P:)x92_z T }~y9&߉?2V3S<9k/ϾIupc \ %7HYe< FvC.3v=`2Q rrY.hY>$3+KE8%TIhcE0jG(b0golazgo;^iJLE&Y?VcnKLv.&ipxn>|Ki75QNz4(>P40IR+DI ]Cyrh:yT_ܗ_[^ mdb#ĉiLɡBveq7 ^5ϵع _:1 Z]o%D'鮎,}t>C-A z A޺a0УrOѠȅ7!6oXfG}DmeE%.6#CN0a!-3cf2xHohIsu[V&=M({4J9[ky>Z>x|!q뱈-]:s%FukΓpJGW?16B ]8-A񈛫w'4hޚl槵m9ɪMe 9K7v)xFs }j0Um"?ie mO=oi/e5bkky Y}*D*o0ndDпҮdEF4M։ʆV1'>pk@ߕpͬWX)4Utkrb0v(g%O:﵎g3<sfgJ=B^Ke4hD?n*h} OǴ> ՍLƌ,Җ*3S_1K-B/ZbZ;*i J/ Ҁ^$.9~j7ɱ*a|K4 w↨boEG2V.>,} 0wPZ콃*ZbPDC-2;vE #\l:X]=RqݷN/16‰vǸWYS4E^ۖ({+>p,k1 a[!Ht|UԀl[}/l$bp'4VodfаW@9s(4;0/L: 8zq"ws5ɛZy]gh_)mtL@g8uZRI?2[@="Hpa]EyS{S)m3[8`rd_W}:;k6_?vkDk:=vB*U1[nGF;\SB S7:뵷 RsB*]`ک9Y^+{@'jISZTeEǜO[ؒ#Et‹Iz0!#Ju޵AT՞96cE46e˳".R)a!BJyllyyyf ^Zc'¿irCag ' |i4:٢,.P5 p83~`xQy >&f3`U 0 90UקЩ]fU|t.^ vW A(uO 6 DCk'8qg$ۄtc =\Xa2=14|T~zbyyYW v5x~iq۟zG+RS8HrH5+?}$PJjmQA}~hx=#'י 顛 )S`՞31NE—K>Z'$x28w-,SzѭjјК6e 19׍4m3d7͉yLG5y;@*LQ<3S)xd`w)Iz$=mpYʶ@T>k $F/\C\yghp7ϙsb=$߅ lP ·B Ζ^>H Ѕ|8l`sWC0k,d^Dr'ΐz'EIsG.V Qrv}{b" ~<<Ew>[iAj^/0T`OWq9"akG'rN{Э!Þ=EŕeI;(jB2$$Du%+Y坜? ݔo(VlEnj{vƮU o|RUemGCzS:@BxKM^%(+!-WSt2"+vQHK=iEo]Zlf?{p# `Olh|\Puﻻ7 #5#K>wDzq悿]f̜ڲȏ_ҁ+%5xLt m@m Խ.Sꠈ[7D'$"%\ug׶ʝ~HTByFͭY$"?j] ^G7L㍽49 2ސho羡\$9owYy.ω`{!_b.%)\3+h@L=! ݍG1#@A68YCUaOcwIP*#3B]ɞbFr9?Z:kCrS(~]ý[ nTxV1T 6%bCϱ˶uALռMn q岗ґ,A\3Vh/[>=k~Qgt;!/c"<7 {yn&Qh#@NШbf8I NE37҇^a_־V ,Fħ@Klu.̓=ZgI>ߔ4 wMq[ BᾂSuQLh,7T.铏kTX7B)0b'}6m-zEBǵqh6"@~Ej HBjm)Bx%1128mf WuVYe!oV|773yNϽB{xUʙ4<5yGƴ+57N#@TY;]Ldup!mbl0Dm.w\pMG0þp7>"!1yX\KBNWAT,{t!!*[]yP)H4&#ZAJ#0%C~~ +w2$]5N Pf|Qj(ư7!Ou*/"ӾM1*b{vp7U^ no[!DEuYH12.7m] }+,;uW Q#*=g P╨mR[$&$ub̵)N@f3Ki%W!!\LH# 3x`5h:ncvx+[7P@5".rx&&M6<zMj =ZzMeA,bF`m82[K2Y|~[j/ y, }5/ʤ@Ƭ}SߛFD<GkOa,A'օ?75wN2WI zUYbydCoTs˸q%yԲ?JʃT;[LB6?7`Wm,KK_G[<.BjwFmbGÉ0b:Pp#` -~ɦKG ÒG|jHI8p-pYec3@mVI8K)(X jRn1x3^?x4炛}ylBVβ,v% $",)Y4m5BAheW?mѻ5'Y~쁤0TtLgh?ԣhJtaɛʀ[q[Y"̎ #ŤQ3V[0D< Q#"]dN:⦼[vvjL/M>((^>L4(7p&6d XTm"F2c; k}UhM6x[r5k0+?ms[׈]:R&omLx,'`ɦfH|װ]慩TW&vwBw lInFscpU$HʇיX$9Ǣ "Tϡ߿ƥΠ'T*@W868uY#=UFḒQq?y.b%8mu^Y;Е| '%rÎ{G^9l,R6>$<KZsj AWsPFV ;v%rfoz4%|@l:|`*; uF T]g0ҶW[ܤh͙|C^NH;v^ fIzľ3E wD,>h_t zh5yd}TE^6Mb)Wc/Q݄VU4P%h|zvYGcMrO/(Ϳ$icʁ {Ī_>W@zewR&BmH +!q5OU@ |Xݔޢ'Y~{ϊQ"Lq1ȲJ[Rr8zhV5M; liFGa9ԏ4cҍ9r|=sgO d"N:!<3[jl@Wq+l'e^*G}`ҮYy|+[ׅ?_tJÛa@%^jyB L͓+g%pu1QLlm"!DZ?0o,Y zwZr gNQMȇX|;FjR˵/^~rk.`Rԥko^ELGfOU qZ/9dJ|GhW62Q^MvS@5mu-O;j(/Α43X9Ic.vͲ5.E|SʝF0}䱼}TJtfVLjƓD|pVh-I *{`e]|a$ -l_!'4i3/ȑs[I:hk&c)BpK-4-d\>Cà$7ŒUk>32 _VE=P+GqT2> k&u9^kiF4@-ISo*آwlY5DKث@qÕc5yMM:yA{AcA 2GFIMV`] >2mA> F1i7@2=E.erG%ģRU&aұ"ޥh U>T c(xk0ɲrȶ&(mw*俍*mGa?0ZEqBï# f $M4~]LiNlBryLyXi\WزVbc'I]un@Xݢ|M(H\W;;vv k-mcJ42*0x B^2bq4N$&mVmKR12?#Ed!_5xG"ޓ/a++cDD^Dڜ^_' b>QyqN|ǖO+δ:2!ftjsG#$FI;vW->,tňJ/G#6!HtS-}~4|KHёfIa8=أVT6# Fbܪs$]~ɯcܴ'ٞOM|1< U~RE#1Z_,@s ߶ SH9![pJژCfDCPf~ya%)i_|Am7i݇ELpJŀ~Pr-oyƝyo`81b"K<<ܣxQ^fO e2: Hߖ"M9 J;r0i1\2m}(+nŐo˵jwB,z!͛ qm,Ϳ=&Hs/Qf-+#cY-Q.O.$DV~0C ,Tlzt_k~79bf7h :<ٍt ?jCKyvҿ F &h|倫sn(MeO|bлJΚ.h~UPWC&Lką @4|ŕڴh@"5.M"GBfykcDޤ(Y .9ƽlޜ J%zb}T-0@}2hcHC9aKpܵƃ"{;P{q$ .\l8%'̡pkB9k֥ߊUC;X FjY\,C bJ׃ %"!L&^1ѭ$vItKqB/Yo%>oipOHVw~@eQ*$4up-Ӝ;WT0W4t u0Qr|(ޚSI}ɯۮ Y]li,ylJT2Kzv~WI%Hxv Z9{Rt'itNcsBÓ "@لܥeyh2cyV Mț]̃Uq15hLIIIeZbi軮zo6:6\{{'Db-iΥasdXyZc*-☀z."p 4~£YDXFCX$%V,Eg`1xLB=7w"܃ٲf5p|M e1Z˿)+VGMϬшʞ6 TD+CP2?&h)Aw4HtMDe&Av,]}y@ 𥂇dZ-ɃJR#[G_% d$f>'xHEWR]F7PD`{Ig]#CRj#b>P4*\1^L;A :[}ȗ!(hQZVpPc_!krDds!ʍdW" ~g؍/ {$0s', G[D8 HKm?Bz#:D a=>G'si\ V,|F~Lç1%5Cvlܲ(@m.@UC(x|Kv'W0PWMwm8?Zx {TI\_Ӊ{!z_6uM!0ULK#:i]>7sĿEǕFMM#,\% :˺GV8<&U,eDTdLsB+W1JH8QX*B]`dq wH\7`IzDŅBk╴/ 3lGyKVPuՔrbíqhykˡr F%\$=;Qs6QǸ;\=^4#0dtL6B ^sFw,^afkJU,3PҞu ??F;xqv9zH8:Ƣx = g!k$=S~qM)808v_)><Rt|É";;kOSuEtS^f(׫(ũy>Ḅ`HB㲢RLy7?+ zl\1,[qV̍yzS*誎cA&-@, *"S17FƘiӶvL208᏿ڃ"(}0[(["J.*VQ <( 𹹶: ǟTj! 488ƈG1m+:Ju)ouy펣m5Kߴ0^W%!k6"g&΂\Y+rg9tI4jF-Ql/R"TL ؏HhZoi psTj |a2?/-YOOZ%i}A sIU<. [CpHCGw|C;CvOvX9&T#YB"Ro(_M`]x&Fðpm+"ԓ{ cxR~@AڬVu1Pņ||jJ1F-F:< Ɋr5oƸ Zj8Bl'~3qpgddžmo{+P"eyP?B@dT.fM!jz>af$PV+])Hk3hhIfI[ସotVn8C?A0ge\2~+A ]֑?yWlYP; P\Z|o)+'DQ(ԸƖi(sMt~9)<36 [Z8eRc<{VbMX _),?E[uLZ" ֵԭ2ճ О?gJkτdTlUֺįD,GqlqX6qfTvŊɲ$3=kb#%lQ`;WЅ+: R?!w%o a%aZeC4ނlfDz>T+oa B,VY4[ `6-~Qq,w dZ>B0v(/ J8S5߼YvA CoA,o__ $]jDwb!cv\5 }­XHr-c}b SHGŬˍň5ML.NO$\WA"5y^,cE0^nOV(4BAk}L'H)SCb: ĨVJs~3l]}>FpW2)(yDO^JmSo|Ӻ.D>Ƈ@Zd|z$5n7>Л`%|*lpUG"&{;m5YWcݒ/ y]X8.}o~YÊk漗"8)hH8WqDnqju>𼃄2G;EsE(JěE}.t@ѕg>R;(2F"^5`PŞ G cnsB/). -;1ZR~oDZ[A\=wK8X _1W,lQ@`Gr]GLe-/UJ0c"XZ& E]aye* bj+wl +Ouu,#نŮmdsEf2J _Hڨ{Mif A* D+4F#@~w(xhBlxRT"{p܌!]ڄT yC xYzcc@! -F텰X>!M#U 6fżZA=]:nUA]_ A.{aAl7Amc(A:v.?``=>. | na+$~C۵!vܓ(Q%(XpP6+M)hr, W!A<ic5_`v#_Fh\">,\} 7S M7?4+mJ8>`eɈQp1iR45Qow[NWUky1D5{+ڠb<;_iWG!㰰}%bU늣j9&-3:zARMuJd"FI Dy $ 1eF@ cX5Su .Kqworx=¿nHZ_#XJIiAv+$_[`2?49It HJ_ ~|3@?au3UnW,RAu7Lh8lTiy+ؗ7lTaF.}ۙ3VAR! 07`dC/3] .6݊,~Q2YI_izƟEARһͰPnÅ߅bUᾥ$M^\XX6v>>;1j ^"-9bdk8p[RQܗP`om7D+}HWIXo9@a` 0 i.{NtNΐpBj G5e e*JN "GD@f $Nl%x5̹Q|` Ʀ+-A19*5ڜ#3vъ?ϼ N= !+_Tr^m/pįF6guSZ2`aqi|;gy-:f!/֨. $M.XB=ȳ bO"kySE޾$zՕ 3muAXƈ2Fꬬ ١tawEUW0 ic kIt6`5dH@t$W"sҰi&A8}}v .17|_`ZAwu2w啧0|V L_f@DRfMLc;fB+W_V M"m^RP\}V2#֑31mlE?v]`-HD[D-2zt%īTنksK`|=W]-}dEߓ)GGGe~7Fl]Δz:"LD9!yc 0.J4k[ UVdh<P6Yww?d2B\g_d ?bvTc*o7rܙ|3CTY\XBB/[6C@Gtlj/ UYG;EʯN V-Za&yߓl,:>&)K"Ҳ)~H1fmU lH11l60bl!%Ͽ"+ILs"5>0op@J񕐙gـᐛRMk[9#&{ ¿xZ3+%HM ۹TF綥4>‡uSۓ;?vYkߣ?)> n,z)aBkFU}`M,oҎ8xPGwEt(4`LpF#,yO Le03*b` GbHT;zp-XG$M r!Xn;`Б6MYF˚NǕSkEС롄\8bղR|K9ƩɝŽpH{Q%>ecڹ>x7t:Y:;1tV &[33l.\?8m0c$3!67Gt-Sz0nt|ew]L&-a܅(͊E0=pyN@WA`ds&@F{ [M%tvM99ct4#A?PNEuuCjIiaB?C 9J,+f~[p{rY9ZJdX]%L1ϨҦ׺QMQHl;r᥏ p2)g;-Mh'B02>y8tYʏ6q&GMZG1,XJf~ ]KcyuFә1_PGkI꿏 k@״e7(Ap' MP;ww`zҖnHw ήh:S̍j !C>WXFE= (2`Mo/RY-_81{g8GohQ-#0Clix+A\'%bU9Mӎkk)} Vȷ)%ʋ斴W {>'l~?:kBMGNhwK0KW)f&a `47SniV &J1μ Wh,79VۙCU\`Uawctm\ F!h*Va걆"ΦTLU6oO'pA}03&`26D/wjCGTK`5>_M*؍k_N0/KSfM)Y6ň=R=m#HL&E0sӤd';C: 0;wIahN.6<5td  uͮ$ZpAOv4IuK:оnFxvp \zZ#%Cz(o}Tħ"/:P=Y68~#'=}` 3C%/}M;ݦ#ҾU>{-oEA\!eiQxY{] ׊dy:7B/PyzAU=^v  ~N I1}vfEL4 qbDem57i5Zv58-t'՞L|(VRyF@;O^O ِYe3 2Jt@tŠ(?ni+UE [cOQULR˛g1B3!&*Rk54)3ϟ( f#G`2+:сm@/e[_.H*و؅zmdSxJ2V@Tں^M $kI0ܔa|Qe﹬xҩM,n]ǶX9;L=e9kox;cLxGJ!`3AzU|\RaF4OΒ~vfğʪ8%bQ;AzUv"vݖҿ@!=,#ȳJY,&xK_95eVRq=fxhQg")d:xtƸdJvmGua"-l0  ᚂ+k"-ĐFf Gָ{ A 93;-lk?gA_[U",T7>>-gjfV. ?5oV T#2Qv:/_z3gwd')c?ȒU)E *X9`ndw[f+zh.lDrEEj:7*3=>?T{cHh)f[ g.Ȅ߼﮵pf Dء` #n}53TzŮZGσo3t9*0|@:\d9[K䥂]q8ƫX7o-4l՜2w'lh3]eqtc(|p;7Y$F`;j${/`qeA<𹡔>\ڰěW0k8RBb[,D"#ef$-jվ1'Sӄρ"(Sq{(Iiq1K_q2>tT;AM85ޖQ#5nW].R̓³2 'm}Jov~GX>o3QX y nf E~hqSep .AiwgXZK YrNRV=nEllF+{=^?y7wCq̏3uX5Ԙw,%9gi<EJ RꗚE8c‰sڼ繽C`^/wS_,r_Tg1Pd~:tI_ě XWWDȤZQVDha@34W#mw@e7?=R|m5y^OtM1G( V #GC$++x-1Y>DdZ`o槂&oe )JI\Ӽ"=\|\i:ӕŬ>c PE%OgȥDF!`C=Gx kQQ9,/Dz%`dAy*H>r6d aCL325me,{RJ_Q#|nx]jkx}8,[,D!xa!1gQ<#+vD`sIMGӒd06 s<`ZRySLvʱ8/1۩wegƊ]P :`e@~Tf ȸwh2AtX`ZC/U :4o " ȄwNe5(7ztL@Oؙ3n\5}[R ;Sekc "Ly yC2/[Lr(Ke쳈$)Ѻ }&h2h8Fc4W|&m*%ʹ^)0{q \R^}͚-4s浊ސ|?M7q 6N(^^*ufz'⩤nlTyׅȮp)I72Zq$CLs'|IA@EQn$!.vO+C2SIlJu}PkE>l!}G 䓠όZk %@hm ,k1Fl3GQM HΆĎSK?hL<%)G\n\ۣ\̝`D"-Hl"BM2%ţp ~r-jEp6C|]F=eM+A| b <  TPoo#PIARw˿v?'o/_;WzYk5H\НMKsyّyR{8ωDVrvm)I,7\^I t l rMd1j&1B]rpJLi x㫵.3sCGawx܍m <qWڦ)s/b"?lEDn5x8FI?/Υ.uH~LUU c%٧odZ[/2tghpa?yYzYynswz @νOW̼]61VMtڕ?R݆mCǜځD=Ng@ָRcWeg">h4:#90hz7(|ƫl/q}Ӯ`X18Ēp]fLwX\k *_?_ %M=Y $t:P]:oo3_Ԋʒ#gH (ea|XR&q֖P/~Gcb{y+<}I|~g&Url*,2"^~ƶ{UŠ+1b'74h>g+uL,,a<ӜPTw*R_7POT*'Y^D>dS`+7;j `kR:sZW1bUP1T!pe#!1Cx=\S3@>Zw+gd!P F sⳙ)}^/#'d1hC$na(i V=VR ?V|B e[N(nB KW`18EX{m~(4_L8ǛGp[N_cli-2K$Ӵ]0c0rfs>@pk݆֞,;ƏY_Yν%+,3iUO V@7=3%#eC#"tZJXB+}XGD (Y P OG.l~3J=wQvނCk}Ïkq&M^> S||?eI~(r"I-ƳF9G0&edy?QގКKU]Hޠ(sh(c쨖^Y_??( Ơ!m1B̼6|*88^HXLa*bxYɋ`sB":.>Y2u3Q6;E.D8&?BzQ^a{򀁗0b3D pk,.y}938*'_t뀣^D(| ok:jXWtĠlEd>_3I>}qݻD"f?C=Β[GYy;,#CZɞ.oDbr4vٔy &(OI1a.]FLR&~jѾ?;hNcȏU$Q!7rBCK仕/f^ t*D(\|ͮ D("p*JO~XFCb=nbO@bzTԆV礞MKNw.Wv**P@,(nm>9S-9˥_o>4˪Ƽ(>1`P@͗낗YcAQ+ul!=s6-Q9 'Dĭr gp"V'@}"7Qhȉ3ʕ?/#+093x~>d,ᐊX]%;#/clȥ)>$U˄❽P Gv}V*{ SiNғȐ 5|1(_2lQ:Ç6Wb͌._~+)e_Dg&\^sՔ 4C6Ђ"H~}Ŭ[5,p^)O%UPÝEUN9Kw}vNxg"RdioVLn/R`sۭ [\ʔJtEѢ*T [D{=Q@R+tR($|,|] ^>;R!;#,$!ZY1 %wtk%z*&H_!$zN*IJvp5HN ]ii0819oJ E h*_s?ʯcj/'V- o͙!v9h<%J~¯6,խlG"43Lّ_fN뭚6-h40Eo). G/4GI^ i3ÑN| hN´qj #h 4=$$c7|"J $͋t3',wS3N_!ZR4aƲUҎJuv|gJ*;'. 'RПYhwkN+5~A̛#ي\ jhX>h?t?=ә)=S 'Ȃ0s5 "jGh$/ _WsHW-KKAkK)ruIdTeNKr9>fmJ@:LzH\wpBO;$Du]lNQkYCBbf7hBtoKa*7<~!{G cֻDAeB4>YJeݨ   qӇ~WZkD0{* Ŋ9_RMgd_i$ϬqNN}^yy{9#,k$^A=Li FpĄe3ۯ23^)oD٢r5LTRsIi`Z̊kT6uvPlq2I}^H{?⩽Q3MOP:soR1`(k)Ɲ xqptn ⠨xIw3U^$LԯI'j:ܡytX]/iiփm02_a,oeVO3(.pyGSh#l2 8< Y6MӺgʱ_ aCNΩ9yTC ?ρ1 |RjRBƸBZsFZ}L^MӉ[OeGb}?5w]xDAI?T4!ǧ5R*%%죣]*1:}A2?yZ VOa-.Uʵǜ`%"٫(a ۠*7v-Nsh )VJ-#$1c=`C/gضPaTӋ6ZJ pDڽx@+r۪8h1@ K`UeD`µK'-F-@ۚRMĭ0=.B1z!ӌ#=T|T)oA3KEC_YA.VMQHV4q獎RYP#l.36KkIX0oL!8,D&٘ByR(J1d#nx?f^1 BXp5%" _F2X&IvGm啫-c0"[@ۡbkIbSnχ|1!Rv9p"(L7M.3kv6c8p o2gnn:785׳V k }JP8V"Gs#qagT`B)j'%=m0}v"+ϠgnJB;MP0WX `MSˆBDsL:Z'o88a{ Mmz |>LL0}lpj_U^cAMx7u5a(2&=CEʻ_^xD,: x@ڌ@i\\C(4ю`8Tk~Hw[HO;[IܿsC!i_Ok;u6U\>1v@-$h@5|X3zyj'CbX@N)fD2: Y$,+\VIqH.֎{_0ZDf=RY/Mٺ݇HNmkՙ֠‚\#ۑ% /w3iQQ~/!ԋ݁]3i/y2n^fZ%tYkޅŅLTRW?״T#%RYzR!w!J7(k֘^ۈltFY1V y:[+`(OJZMŁlkR|že?;dКP1?+F}9tz[0F~ڲMBSt?/T.6XSz(=iS"^zUUu?[ԣe_>9Ae#OSX~ݥAFkhBb#pMRZ#lDƸ^cF(Ne`\mpXnz&mf\*SڗxX*8=Xr|de1YiNi,frxd7WbQa b_J@NTN Jѱp z&PK ӧ~bMp4ГV`*"C>&R5Yiu=s-;u _ܼ{ G2ѓn>/NtMaR`[cst 8s̷dUF$wKAiq gFSO8Pܼ(%iCz$I ǨlÃ'iPǁ3"v6OEBz[jՎ8OqnJCRE)2IW~߂/,>wn3Ru`KQt!_O H]?Z~F+|ĮY LlPgU[ ęB\\XGUy/g?CvH?>lOC}AY"R[+Rd\+i٣jkBt'{NXS>RF5YˈΥ!:OA+tpiUx#8*m8~$R :5 zGuP|f/~cr u CAns;1~[,"DeJܬ :#~0Ēdo' b[%녲iBT#ذ<͜ޅJ$6s|QݍHZo\3N[BQӳح[65ļѬz~B<UaQق"glļ>WC.;aG9`PA_fO##6 ɚ'ߚG͸;?⇎+~pot-)ڦGTWs hü^55W_Iy#AHqR1QFcWhaJ,v)#gZIeXo* <^|;hKյX(P8u F]`GdS vF+:6_zk̸u5Ώo ۳ 4qkŻxBaf FX!;|[65bL 䒽A璧mbvsȃK,ZL1%^frv:&wkLW^IVjj]kr7]kԯj5!S ( PNfy;)+\xsB-#1o \"`A)5IJxwksNo=Tu_=#O~y^-K Qېh?ݽ͙;8HH&`k[G#!+y'NyhB^z/DOL;gȀRtM[-\of.Ls{3Sll䜽m)c[vZM5-_!S( By t3~D­j0|Wð9󬨚 _ʼVtgH@TV(zU|Q|'>xmamrAOg^n= U th/l u֗ss6>]aJ\G椖#ga*|Efcʙ@}BYYXǩ`UA@d^髯IX͋.:lF`ɓ/@J1š=+/8y: \WY MM8cVST0MF=dHof@ \hZj5h׳1X4 C`z+ ܖzigujPѽ@wqa]eG%Tѧ/xN%'ïGUXS 1쇁a1⎑z%b(dyTe6g>`kaRo'ywū߃Hur 8ԏS7jC?dysEktTӰN&eDO滵*h N,Y&?:d ß&d$HD"~9E:'<聾# aXX" l'< @cfI5[MRy~6M}0 74)qd /-ެ]!ݠ*̵J ##^oxH2paBa!1=g4-@RicL V&)v|~n2HQǼQJ"@ڨEbLO#X/8yށs,C8bYgn*@*iĞU%"/pwc(: R.(жYD!3T5mED}(vg`a̓noFb(BK) g;nwUQò4M|)\&U'&ˮ*9$'z~#̼P>&=\QY}/'OGUw'_0:~F"g[ @xXJ~UUǫ:6N۔%,]IpH] .W\\'BSKĦ1kku?p*A`G" z5锋"2X"["=}p˾GOv?5 A^_- 5$,E@\ ƥ?uX_๨9~'!@jm1cb'<e@v("MՋi mo< 0Ҫ~ {iX'ZG|ksiסՎ[yO+tܰ ?e9@%44p& w΢P0$Yɲ@T2OE-]8KO WJd5:"$0,Pg2lļ"3#/ /M3Kd6Z&pTϭN4-AfrYH=9$/0 sO Ըe2XGzȢv%$0{Fd;b[ZG^í"H!E_m[} [-빀Ų'SQ-#kPi$F]_VH RLr0KIXk {l.WL_1]LDgSf.Kco.8>CND5;0 BP`a7f'Kܮ\;3ݿ2zd,ǼTYP]PJl' 贗 iU4)チl_t~U)4) zPs ,&1="*n$PM݉t/+p )`e:Vن>3 !a[Yu_ASiꭜ7x 9m J[\>'ŋX2=6Qm4|)/oa_ItvQbu1xQyF+eԅ|6jA;r8W/>߭z DkY>F'j`cbK'u}yQ,U_k'Dc6{Gd{φJw0 FtO.uplLO9R~ *ke<Fb88p2ƖEc,Ďi"Y+O_dgĞ]Q+3_Bb-GcE"+m BU=Xtdw֌jz7hltPC>s OトD7$qO]l:dMPѩ >ʈ`Ejrɢ`H(v4@Wt}G)q݈vүekߥbnƢg ~lz4 me޺ж:?4{?0~(~/Ļ\me-dB:A/}LT# $iHzby`>qVhh gmHn[Gi*RP#?Yڒ]6e=:ĒjL"u2֕~1@{3Go=D"bĽtdjw<|$*{vR{L9ZqF!|\w~>q^BR5Ɲm$70QM͝nI>beK&R6΂ʖF 4fU]c9 *Uglf}.,#gI%^btZ7WM"Ц[^#h@mKҁ-B-:V:̞K)B!JVUCkNvtE n%NHZ|i 'ߑHg5NcGԙEk/ 3HcJDRxxr=O)C";R)2TI絴\HP WYCHVC\hGөU|YrQ2oO-9ℵN"*p~iP3A/D@ҬEMX2  Mp&7j܉ߤm6lt2;6{sHYk\q_(=FSB11\O0Da4սK<[z{x[8߀g<35}e1'kp% pC ~{g+dd`(fkmŸGE]11 իeZ`Qp8sMJ$Iǟ^l6&XT=ҵ7#RS=`G sёNӝo꘲Dn= (~.j3 2kvÂ<ü%36)l~'䊛Oq&s*~B)ΝgZo6yG%[ yxR6M[tC- Rf}xWW֯1\v游/azdv*lCHG¤kY=#fQ՛ݐ'R碩j:pMQUڍ"@dY~ JTK%7sAw r_E:OOz03mт\ƒ+lcx>lcOXN%Q__" g P_&%Ah'D8"lWZɻC־q H3m鴸y2eYTog PXJWYғTFyKpA.D+ !ʬD܎fjGQ$Cg4^jZЭJ𺩜m4mƊF渦o)2%8fD?7N/hLza|;iz FK}QF]QTKell=o@I@Y N9p LTXGgj!v1ml;)+)`9rcu\eC1pnfQN⌏tVَ%M$߻"8)UX'޹竺_0TGڬN7ybRn/( D$C)P`ԟH!kQA` wCECavYǙoh>Yrn>s_3 )"[>o$'%#gd)VU<@|hvܰ-wL}xvjPo͖T*i[H'iv?fqx61LT%2>>l)1&ZF=d-޸쩦0C_ 9\^Q:<7Y_|;1NИٟӪ`l HTӭ 8^u~RU ٹ}jsH4'EC%f8i|gPng٧'2HY[ưA \Za{l2C7-_V_=2M01z@\W_l7";; oZ\6d%3<=u(紗{ $w+畛0_<'7M7}4U@[W367tO2zhgw)u5U8PTB|lԾTŏ`挜+{zo`A6H?mfWe%eR,VUXSZHE(LvSL [坪uO=5 &˗a`&7D#pN sL<j cŨ Oʸ!g9ddbZ]YfsKV(+T)\Rh w:{i3x?{B3(/ţ?DeUD@:wNFMVFYc2/3V~t6%sjӫro quQe*]y_@>|j2v`_k58tK7 x]mk԰Ch%RY ɚAA:8WR9^(7rG>!4i_JM'^ai| &˽tZ}P b|psLC֍m|#L~!j O<\YyXn*T@ȗHF%B17^)]+1QJ+N7ob`#Y̳Km2ܯ :SY`r&8oVc0q$gU_m:> ׇtc0\ުM:-!}yr>r0ZF bAXU;_iv79导c96YDw} fR7$z)z|&A®keucXѹs\l ڊj5',#tO%r)j:Y>tpm#댅6ZvYtAb%IAxr8)FMXGUQCEn+\Խ{k (w.s+ᖯc4}7|qQ+Q0)hW`&l#9=Ddgy+d[c:4D/M2@růrzsԓoS V{vJ $o?:0)mZ9:t],(n`07 !tQ'oqע/cNfJ7cOwӗʮ-2Xy:ew6sM sscqP*/+3AW +p')mVM־ʞ"/  >𪃽L_aK߰ǃXppmZF Y+k~LV&QXs{@QkَT2YwG"Ӿ@ Tt,1Ռ/vRql̩w k]З\%7AzMhz >FPS4= >-8~ y>2:ڵ50ulnAЙ(s#rEjOUDKJre;IXkZצu2@tJM7>9üdmڂyn<Ԍ'$çg ( j1k4UC~c*sKטCx,j,EPBW8;H%b/G0Oy]L6Oc\BrK&ہL^.q,ZA)À C:d:ⲉ2l΂ ̝bsQNYti^Bm|Vk16ǜxJg~ʙeS]@Y~{&n˘yIoRDC| +J8it~m#֞Jl]C4ټ3`vP!Vȷh2v;"5n]@#COtc y)q7c]{I'.d"؄R z<a%4)dBo`~d-6n]k\?i!YdKQ5 'c:`~qYTu`s֡Ƥ( y+7 m%O%><Gϱ.w&<Zю/3@LuG&ܻZE1ԡReO8e(%QƭCoRӳ,0)/۵Zt#CfL#*__* ݃eXq{]e`~w%vu}2d @oP*+@-~ $7<‘@ #&-jb|mXӺ]@&4ʰEFhz ǼVmi&`]7{g 0$.Y2I) :kI0.oNlRwْm-;7+VBѥ?LY5#ti`RMu,e1ioL QCc1/S:Dbx%zOB6OM +WH"`ͭ`mLũI&:e8N\ӟRb[0d %ݐʪ̂LjGקQťK>q?m<2D<\2EO}YfuQ?Y޼!Z}$HHlW늸*J Fá JH/I֨pq{^|WmOPU0\O['fw`^|FPчwƨ ^m3^%.]1;E6 N]mւ zϞ6Q#w>+6!NZ4/R{ `V؃ex $ aHeT^eLMkM19`$c* SdiG`OG.=0*'Ov-׏-϶͒OSN)?t84Gro6mۉ&ےEk\7ɰA@4VhΥݧae>[r,:9ICih]:Wqv@֧Grg`?彖$(Kw-jȠy7 sZNøbRu~EtFGfU-1{+tZ , Dp2n5Lc6aWmC^Y(\؅e?)ҨzGN.".4eCpupXrZ*3E;a.?ͧP $Jld 70Iی^N q&G~Eo}3K: .O9 f~?$ȼz;+T=yR1{KjTҧ }k+{#Cg #[#nQ JXY&3 U+<I7UYg,u$K|wYK)äҀQ}NDik5,@y`Nl/NpSZ/~ c ,:gb|*jftrXs9h wbXchEm䉾TGZ ;*.CKU-tkVOkL2zt='wv6g'y0/`$-5*"Z3jdLT/"՝wHݟvddXxHfY6A)SxzPLC%ձxMQ-b$1 s{1J_@I\?\4x5nyJi/qm(:s uJj °i>0=TnFtae4b45isZ<*;oKmϯq \yxĞ)ٞ4{ys7R^UH~eiAT3D%zhFrye;Ȱf,{a&/PDnک5E;mWD3o hiϾs7YcLX]9#fK!1V`.%2NB?'f/cj?hpl=O)qiG]&a*)<Ά}6B0NXUQ6ROa`Gyt;.$/yrep9Wv}iz9Y"PGjJ)]8U_RpzPzg X+0EtXNDX٢D[6E$ipw$m6`mvGlەp؂̛ :4a4ё9\X৳#\CzxD~ k,)AH")7=nK6砕SgF*ۘ^sSZۓ̴SS|ސ!HUXFH4R/(rGFϪSM1*uVR5R=mn'/ǣ(9b",2 cs%q6/:Yr~'"v>8*Kfi"8Bҕ-?i4.֠8Gm9g3gcJ0E yFϽ4t 'rxdϮ68釀4웙A8Sa=Ƶա %ZJ9SƷ?tu}{iA=7Hq8,Y*Gx@vՎ|ٮ ҹu.ѠB}-ł.B\֋OSo#bO?3{D{H.ٖZ&WEm!J:r-D,`$yO_N9eVEk):bzMhu8*OxRRo[ #ғ*e)jg,83(5tl8c4`4R#>\;"{6dr{SGO>wsPpQ70`;Ֆ RaұгKA'!囱f?VvWp}Ue>L! YC:*rg2 n^y` H`&2nnT <E r âHfP&;ԾLp,y,=c7e/GW_ɰm|^gV?g 'i%D^I_kpUqBIn ChB)-}+dХ16 t6KL2Q:Q*$zfKM:sRT4'&B݉ {+9.2>% dqgTJogԈo3Om>ӔmV(>Iq3ÁcKn@W`o$v}(oqMY(PNVoe'DgԶ ܋cu &fcbfP.|,h?գZd6dN .rxKݐנ CC|Hp&5`3wnPhQ Gyj{Ҝ>B\*޼w{*DY7H[(L׌fu̢wo1U\~K?>{FO9߇W9B)sɆږ~6tT=_!sTڲ< %ػ,(lfU5OHTLEtj8^rxf;|ʟ}s=Cf)Dk;r$<ɐD]^rV㄂U&_f cEeqg1AS̐iYm\LVR$V45eJ;O\+]d-M X&.Rx-3g)Z@ Vq~ ^ }iut&zb0a $*/'h9iS':sV_^v!&tl^q5'%3 -c-I}#Aw {V1[-=Դ!ZpT)W#1xZqt7_(\/IKݐR/Okb$ѯ.,y}G _}$Ƒb:$Js-N` J,gûJlB4Qu/lH!Qߎj1'1/~p $X|r(N"umOR0Z! MԿ(8d. m8{e:t. vnH?j =`jE<؝W;;wWZ#Ќ>-?aCAQ9,"Nja;^AYy>G,;s'FTXiG|d24G7M)muF-O_8*tUN.Cr|ƤPgU m )$ImE|tG6yx8M$K8f??3-xq#[LB7!eno's ly3@ʦ-~y)Ml oit#`VK;pxC{[m}"2Lz.|nx&.q7،[ϗB߱Ԅ8ʔ)z'0r;دI0&~qGA-khTx72t4 %iН~Qp,s & ۬oBmKzqLmqS+0|!t%s4ck7$\ɪmFјƋiM0# Z'/`Cn!ŢΫEDk T=9-ok28ՠXbc:[ IuKB2t㻙BOD2zk S:D!F^k;C,&J%)i-s6'O%h/zmI"|g-$iN:XցWor`_T'z;a$#N' l1\CCX7k8])ҹ(1Z!y GQ%=qPyq4ɽ  ΂dAR;6b0l "mC-MjF*Bw&#l,FAjPENv/m)7%&l2KȰ~Oª u<$2vW\Z?0Gi֢̍Ձwއ[ɩGS8g* ݵXc5[JǦu'!vP8JOlf)GEr•Ё(,}nxdmjUfjCfG6_N^9/e(C ;VCTL4ܩ5"O87A1/҄rƒ%Y\۽w]~F@8,:bG|@6fAS}y㟐13 ÷=+?gHwb2hG|1DQ1! <ڊ?HZqoOyۈܷZ3}$:z,jh X=6N8|6`LJLK@`>|Tis|kn[h%FUO Ш5 W&b99kVW Ey HG݅ȝ{<r`? r'4i.fabl4p6e4=?y ' =' SfX4\H=CU,VT蓨֠|߭ PL6 kxZۋi6>hmmx^dQj{|sqrKRGAd:-nƀmTX]XJ}@:$Lg=S{n\@ə:N/| 3 P\[Nqr( &ԟ8w"^1<6ٿZ6*J>aSjA,<qRCio@Tv ޖJK 4e$a| ߷W%c\?gM":X-Ѿf5N $KF,C,"K)jkc\Κ ;%$pwDr~2wA3>_߇/KN ˖g L o'ip^|sN{'H֦c3:8-jc픽,017穥H1`dPk =<e0WSph{*蛐!O_@[ EQ#.$AӺ±X}5s+^׈'ڮ:6-dDBR2?A2AS?lWg%:N UB6!u8-[M]w[f!Fe$%&X3!FQD Xd.OTgXq;b՚J_گxL VKqc2 Fǀ}Qu%˟fn[>W믉}Dl$;-f4&Zy:?[ZI/4&X,GfV.#]ǭV/}L@= jI o h9~|kep ?"P1G;w(֑ TK% y"anh=KLu ;RRȊuk:BN{n:}YEa -<'c$ߢ "ZrWd,tO0ĸGt$xe-;+_؊!87mrp62Wz:ˊ&'Knl ۉ4qM u7j .y6$P (j3>EyquLFuUIo~q]OA3*'i0Q&'Na)VI|4 $3Y~*4 Y e>t4oM,0L7}$1l@prXΐ\s@8-W=IJ*eB|V1};Hh}KޔTA:\fژA&!KtrOn.OqN_Q`fjZT\{^J[UI&'rg:w2G`f$6DPx%9@s2ILD`3 z^?}[zW la{LZS Sz _"G!cS $HVҴ],xzbXQEV-vQV$A M.>`kdEb5vuhݜnت54B/d8cTRQr tY[E9L {; gkWՓ]FD`];T4q! & [F~`OڄBVw؎g[LO|- F."k4"l5O,%ZԱ C\5ߧ:[B 3ޑkP8deKZ٬n*DDXn9a+(-M9'! d1BAI8?D;ij>%N`E;?`/ ox]fCS8s^Ál]~(-$ ,=5ےv :[8Mmt4Nxh*?ӊ=ZǪp*s#gqǰCEn҂VDZvOo5 "Օ +#w \k&(p "װ\g`G-Ey/inupyL?pXmEZ[irv^Φ/zDAyTpeιRn+Z>%!T>60?D5⚀5v{ նa(؁-|P#a=9/ϲ6ۛM;K! 99/qY h@G?\vmq^xiJ9?Vl*uЀ2mqT~zzM6WCZl7E<=kO.;@ۋR/#YEW1U0zp`j(b]=-#Y@2p`V l?4>I[|Lf-moz~7Fc͟ihnxnH%^/CImQG|:EWRQn%%Q 쵏D@"/FܨU=HP^M~ zV[w"$KUzй%A1G)`@RSeC-g{##m3Z@"yUTOi4ω"6Pc>)\п 5ٔ9xrC0VSӫl~j?c5EdΈ'T [MoH}_Lh-BF0q}l[zu8Қ Kk`Jfѣo'6]fCZd:PݢWI8vQQԍgnI6U= 4_#S;F߾ MIÉ{Au2&m3n}H?K, Nd3_i>F."bR03,i;<ɴ*)͂}mov8`Cqv"t Z˾ ݼb 6At"h`samwZZdI?aO ^5V(tXṣS:lӴt+U,dC*AT0PUXV[n[Lə?(ŋNʓx!r&F#AEiuGùw\V46/*RšQRS헾+9{/^ Cضge,lxvX~; vX่/}%?d1iabeAZyXFwB2av1LyE9QP .a6yh7لb Awޚaf y{fFYf 4u*J~<&˃z#^zQKQ?1Z#&\)}#Oٰ>||иvAIK6_HJGe4֒oOa"@%[9bTerf{Qp-ȇzVm< ~_^%y19>|R~_} Jѭ5;5d9[:xB -Q9^b Okd$zaTۜDߜЌRt"ۂF亴_c6Lr9,#eri]\ _D(-aq}gjEc@V3(ۓoGpK"H)O >|de dm1~Ӛ^{(g1AL/NINay`+/[ce]\jXFhe+V+&`Ix"G7H: רQHDksT]5 ]E\9V[5!*NRPb34ƅF^8:WN8!Vt!؊|".`BRׅ(ʄ! .r|6*qdNr1J#X4*4YVdW0"6X+`49 W@dN\`csWJœg𒽇7 AWgFhK(n+?H>!oe\"= ,lKxg깬 9\c@CWI=?}"vn (6$D FRo2tB M\rK*wUK9B%=w蚈a=xV `EpzI]?ծixnYvyv{* !?'8YBf+c.I lzh–4bTo`%ȱwEmE3M]t-=+?g$c1xX8,!2O>o5|p_XJڳ8ُ;gK D52UogQmXOf~2J9+< K⏃/N }%s4_ОeldCV]B#O ~6k|?ꉲ@r*(cvsBfO>A}D2]).U0>o;gЭI*Q`)Nq*.Kc>όί3Zn=[m۟hN U cϖ3WO@0hEUKїXJ͂g.k8xa^l@ ,uJ#" r[=`2IϚLWFi@?^lv8o > ѡ&G]+oU.cI3uu` [qy^6ڥe(pd;yˈ'赸:1ïv?i9Kȑ)sg2p9'51Q2V~!w :y4#-JמQ [M1Yn x_9 P c5wiir@ &p͛N#\lͳnNm3 Eo|>o[WIGavђjfz^'2C7LZ a0zzƛv@0ϿxFJ{8^w;EF XcbUa9 0 Z.Lm%!X`szFϧ%*Cu܀}Hw )O'"Zx$g~t!n]{]t;'c϶K-4geQO}`%&n:$Yr-֦}(nQ-4?k;{:N{.ԽYLQOH싇p"^S"ǠB1}}J"r|t{y$y"jj0.N}^ Ci)*PEj4X*>Úf2N* f2XGY)b }F$b\W3a,H0~. z&яJuƩ7w.Q-@ԣU}AXX[_L{l=d 5ؤOeC` 1yLo,R,CjJh=g6|kR@(P, nX|_8W!;_2ЅMf^SB| W\ŮՉ:g: a0Ep)áZњvX8o+.a=atչ`+dމEESܕ /`$fy{1nj[gD\D_%z$8D ߯_iAc|Bb󀛿Z5޹'u]%Z:YۍI*T)+#-7~3~42ĿP^,/'#^-ұz˒ߚ+)aCV]4o ӥ?y3's  *-?bmͻs( wZgW6CaseIt8\a Dx+431a 31Y{oݸ;: Ӑr Y:!U ps4oPAGlFvJ6ޱH *(O50TF|pSۜF"T31bX!T`@YC`:~鳒)> d5-!=aOOG|lC`|yфGO0ぃAwr$fl)_ipz=5U-]7ώ 4݌޽k? IfNj]B]M}DԦy'3 B;Q!D%2ƺHfyȦV {ښ7MLAAGo2 䜺rbe˽ ' *J_u~F |)iqR9"jPnI<*Mi+C+~ Nj&ʌY0qUXQ2V*YA-EjW΄TQuO :>/nW.O+{N92!pYj(z.\B&pss9e! }+5{ qUQ =WT^:7z7XFY`w6?RMG4K7Ən}1q̼FQx%POؔ5W'2z8!G/ݵ鸡OoJK!6TQ=5A)r[Ӑ{՝.HLӳn- AcݼRSK5HVT!oh}X=Lkc:¦Uۿu]!suǎEbH t'嶂p3XD^jl\d;T K3޷3zkϮ— @$~P 9wots(Py^_ ep-i c/0|dxk72K"Dy:Ûk|ȧ LW 6̓CU&!~HqJi%$MOY ޳j){0xέqѤ%m킒Ʉԁ53/#K;R0]18ol@CT+" -~OeINR}5Ah10dj=N {|9Tó6AkYfR0,#L(*#lk OÝу EgٶCGAw&H,1in 6>R xUzѷqw_P:U:;0;;j'E<{"/*7o 2+`yy%G+w%Du*bdDhK1XhGGE% <"&o;DYK_sɶ5#?҂'uAz+bbs|qQ/o ^ Ǟ`kn3 O46h"ną%0f#G7DGuQ|A-YgY,P-(L/r<)jIny5WxS-u+-mlml@%ǂ7OAphq"(sl48.jl^dN`9.uPs*'^- A#*/k>3˿ Ia[7؟jUGnHKӘW<CK<5sbZȋ4z%3*R8{6%p*Y7EI0whH48n7Ip^˨1ܑKUDv3|m Fς7|g1M}RөE?]E2Y~q,nU$o@K ı/V8>xo7r~Ѐ'[OlnF:RjCBؑF+*\ͣ @|(5@ N=i{ <ٵ&Syf~V:` ?bş3'" mb ui;cﯱwD6^}'ָϲ욞1)]蔻恩X=׀X?ۭO?x&VUX"$n9,? buw/oً|/;ަv.)mdzD|wV!т6/Q?DCXJb61U[VHMQ gpO+ ̻X2J7)-D(zuǢ E+J]e:Fw+-0k5Tke"? Iw_+3N maLh3/bx$2w-=78_2W?9OkDAKޚ7A`(Ū_/@vOmu{xDDvFA@&#-wAHH9Ä=Pjln:S [N!@i VJ'crQ&@;6K WZN7>3@ on6MnO70JOnY5ҝY?/TdbYZ1֣7eLFB뺎C1K+{](>^gVQꆱ(vE3m5kR*y R篡o bC"JSQ@ai3Oa-.TPVN*Q;uY䱻;066XT֜F{q *a]ހn |'Bՠ5+a 81ڄcʡ2ΞͶ欟uzLo+ ۇhoopCn!̛nTdx(zn2z7ߢi73K6V4Fnm(X'jcP\ap`Z:3 M^GmåJ]%cÛ| z p)d〙Nd k}jȺ^t{"P&JR4YXc{;[ȖLXuM&S%.,QUQ\;-SE!M,kBɕ:jF**AnMPFc߼v( +!oW-ÒRF 1Vwcs}4 y#J(j©b ;8%+Q,T*?)c!!l"nU#V);@hAP;s"Վ@~6*n$nt]ðJqf4k^t*؈h*@0(j^%!H'&f` ,=FMXO,T"x.FͶ7g9R*`k D>8VO"<`c,8eXA$v`·*K} {iAoP/-Dc[ꔰ9?~.7sɕb6"o%l􈘫5M3d[?r%E5|˕9>uvƋ4d\`: vFqR{B. b';nf+ONÎF/f\%~Ԉʍ::Y\(NjaSWCƴԈPjU|S!tI*jK2/~VnpkFWcww^W>A KSnkElP!C#f,3Ng6~{sJ* &Qmٖsӫ[f;R_'yk?W[sJp"&V_6 C &c EWFEj}~Z3p fX;ê;pB1_a׉)b_>pmJdn {y/jqA }:A~$CCp?S&wɑ{m{Ԅei4; T-G^ߖkt0ʀl#%!lRZ "{/"!`J]I7pLvW1Ek_318\0LveCDapy}KTEŜ2n{}[|bXh5!ZmǠ`T g#Ӱئ}s!IX2h.l8i}}jU%כDX|ȴKt[M@M*#Z~x7Q,ċV[@})9o%ZYǞ0jWnc,) M &Թ}7͏r s~=x?9c3̄&ńA#Y5܍67փ֕:9h~.cyrDXhLEVi89ꈪT64hCTqubV7,E -# 6Waba@$f+輏,F[$%8q3'j;%ggQeOD.>7ث-rLxGL;ze8 ~@!y/2pQ$ Hf/g8ޯ}  + *\RYQ~PerO4WTIv RZ 47 l V~8|cVعtwӓ~ QG{se! Zbq]PBxd-J?`N26__W83@^ qz2O+2XU)1R|e/ݒp6O!oXEq_=,NI2"8CiGR8Vj ۆmKi0E, ;U Uvˌyo:&Z(32!7ɋ/Ct0W%b_ Y!:nBk^߄.Ǐ?]@lT,YbE|`w鼬 AAz B|Quj8IT.4^WS[RX4<*Ku<] 4 >o"U&?ld*t+;tTi#y}oPmI_T:?7ڝ"'PbphRW@OCq+qc9A> gO qoe#Ņ&; [Y[&N.ɱ0bzzM̤@&~Zom60F3(3.DDpHF=B!mjbB_䅈=neiKm8ygkl0AU}ަ)=H8 &@O!QxB?oH'd+ GKg{%0[hB bC5r2(x%>/)aĝE\^y_sS ~jpXxebrB]0y`,:A˖&-s&ei9R+Z}x b3A pK~?1;' LijHRL!e~^ޮ MSTοhx&UXu-R@78t[|@*K-4;6.X׷ǧXñ8@{7ʜڔ_pjn OIT7s2xS<8̬ X{t^K49 B! []X)׺>4V7aFe^?v j)QCfЄ,,.!,ߟMתMf@E*0DU]=vV/8UK~'{g<'.W":m1ơdtwe^Ba1fѵ@xaHRexPswO+*?HbXZ!l2A=iÐʚgVC)TFؑ &燭l\*&)MQXLFC݋ QݤaU7 e&}`}M˜Q0K.lbI$bKL/£ߐk79*%2#v70IU2W =xKPk[*X4Þ;K&@5WJag)#Qge4䐃A2^!zQFBLYp2!h% AgX}F;ǠBF$jgV[ǺT݈ Wǘ+;T+r4k(D7?4/%ϻˠ{#hu@Œ,L,dLxV#!|;&R6U#7+LIU( |1!Dn覣Z'1wCEK|]Э#S|)i ùČjosRF HoSiPW\YhKI*gڥxޫq*Y۳6_.dvAj@0&~iWdLe~$fr rN㾓5\7.9K!?7!@4\Ǚ( zZ\mF_1I$uT!ݽjs|GcL{ *m_ݖ3!ל`]j!Rqk!7|NW r&!VDU6UE^@\P{s4.GE^/ p]\O\Hy R'(r/y˔:3)ZihV!(R$&QC+Mv~q=] 0)lVQ!U摣mi,l(ta&w>f(6ЛвqV Iӹjkp \}i8^clO0f3/>Fp[PKLswA_a, }hZ?}"Q ۬T1SsOͮdTNr3{=-l \U7LhoDKX 4oV"e<#c(7!Y^aQqD̠C M `;oV(MzcDLW *wc ]4&ms5~f6wltV%aǙn(rKL!CcIoaϘ)V|'c3 AJ[J13am{ܙy$Le_ 8FXeP44Q4nXOk,}Dl w4Mj[o̫>9At3|D03Ef>q=/tXXV E]$Ik=Zi TgG,8ӢaWN bcioH~:稙k2q͋IJDąL 38)U"Ol=TVmPD5e+z7MQ* .N*2 Ż? бA 3@2j)SٚA/z.K>̗5μZP*3H(?ˉ,<X&יKϙ@TMPTW1"6 {ƂT6r\uXPn 6CK26^4kVvIڱJHLF:6Dv*Z: ac4O=Eh@,`NUf3 2БfhqDQ % k@ Kc T+8@i{s&f] v-4G6T2@^i!?2gsw~p~ϴ؎ 7F 5̼aLdS{5=ZR7C4P1G2auu!V//y8b(>Vsioyn$!fH~*N`~$-<^oLy g]%Fhψxʛ+ҔCC:/iƦy)+$h1u@']Ũt5Zj&^n#XAE % ǽ.`k ێI황%j:)jR#AmKTEP{*%gnIُq$Y+8"5EDT:=?lf.bkoe5R]R>o' z?ѡ8zL+B*zh6Vp-b1uc%o 8$R'K0wOq10YmX5(u!(d-J~lp;h² :B\-rE6Yq)ړqk:+Y+%."GyUO}1c[SEn#+c-9&G:BNbY B^zد(mo!Kmh<J$%yoVn262vؕ5l~Bu| /L<`ӕH`}Vhչ6dhE`m!O[慒 o8rq[LFRHI %C]>S5)ÈGGC=$Ll:Uu C#U>h2!wE{?9 ]TlB9ht@^7K bh?4+#~l3.<_m_ )"(dj6 v]~kL[d6{N6VYJwQj,~NG$;s7ڰJ.SOd}IS&1P=@$(i'9)/XM߷iS8ٲedZ bl-|sǖzܹ_Ww{?TAގ*Bae-9Ots5B} W3{dS`^L6z7TZEY\c ETeP%[M @בA֧_|#Y:hۍjk iТ!nGOlsϖqCW}`T*LMj .Wmt%6g&~G^Ĺ~VϟcU,,~~mڐб^̌U|TT.y*M]8I՗D@a՗H 9F:pUd+׏Xb:3{i䶱ȥ1ƜϤKOb~y1TjT6Yr!~\ {̖5XjXDdώjxO?WLc&nο>{UZg_7X=\tTp.Tq83L!C8[J&H A^1AT I6l"-5 2ĝq!XTc%;/ΰ>waRZT?8Ju)lA Z&6?f_) ۰7 s ^yB;d/L뼐I HDCip:) Q; ,?[CAFv/u0ţI__,Wx' rj4nM=e^7b%(ͧ(:2~gm]tD8E\Ï&ÄCJ'{hz!6goS[Rtc"dD&=w]X5V-7 -8Dc H]_n`GX{ aZÑhf>_bǿw&mIk+RJ< ȉ=yC6֔73e?9lqC<΀LǮn*`I3=Cg̓~AWؤ-./-UNYG񮂨YzaJn&xӰ=Wx{)-P@vb)`pȼ9 lS|ٖ@6)CcH 8TӍcF6=d>Gc|AyÓ%J zV)Il qNB˽EWmФ}o?§BAo_𞥅P]kD\lchLS U~ncaѡjxU#?2 32Ԏx >D_D2qGLUvg@2̨wgn nhҹS +FAgĮ.8 :5Vlϳ2j8tCãv+0q:v dbnk[k6ZY!f}ǔnzQoPv}Or LK\k>bt蚥moռ ~Rf4;RaM(ޫK4f,+τjl_S \:b 8N#ÎlZFぃ"d#=4QE ([xT\_|%'ѭ<؍j6CSma\S+?H[7 lV?KM $4g6#Zn=8 !`H&y fwOqޝ;0\: WbSE^Z&>69!trɂ?T3u*'@Ab91zUȰK)>O:RPj.35cfV&P#;Ŋ?!5p3b_+z5wO0X zu:Xg*XIU`>lcw޸xXW}ioȓpp^zh3jq)o$}H6;* S`܌-!­5! mɠܷ6EHs?Ck{#{Mp-.~xJ0IXu&AzI>P#@撧;V$0d"Yؾ)1]%i?Fn0ɼ+z&q])է&tY{v0X-ClrY"#8H1ctg0 |<$$gT |%@^jLv^X˻.̤1!/})v|4v[?O( 2z Mg;ç䢪>bEtaPd<5&ݰdNuFAGU,Wm o3)BWo-du;ZdoWh*T W2^r ~r0-KK~9)a ;aEңӎT 59ux,^x"FvΖuf5P. PlX5hz쟚p?Sf4{F7nM>l[J(!_^I> S7rkC)Hp(wɆ]ji= 2K,4r۴5[dG; ?M55Wc#8%?ȂŲ7#؎gR` M5Mau]w d4Q~?:):6i;BTI}G2akC%cTC@gV +Cf5؍q)>Z<[X ;l0+K]|g$c;[bU8! z=pI1\o4t6r5TLj.Z+`?vHZmy?^v~ ["wՉuE Z*f(6D6`^ (RƺB{ q~T9n McܴҐQ\6gc/l-dvl(_H &-aQuj4ىqNu@*&>~/xDr:ӫ\x,'xmU̿u y7wذe\v˓4Kvj>V(/}[t ?⺦cx-OY!Yg6>I wdڠ?F\= 3-dj^Kyj]nb4ah2+L> =ҹf{Onwj=soķluBiA1A95(96!̈P&NAdQ o+2/4&+N6W?, z+):VpNUc$C:K:Ӥ 1=. 47i+#6z;g2:6i`p"p Kk`-|t?9V2E+ q:vt io< Wp57Q'V#GRN>M^yx^I}L*5g՛ :T@߻d:^n bso4HQ`WSdoQX:ē:pIV0]pPA焿:- 3y PD~ !EF-{+|G2){ZeNE`2h3#1ۛ*փP˜1NԸw߳a }C&iw{P|6OӧRĿwI>OUg :]-0|R%E/e3x ~nXWSGQ%dكm݉`+nWT/w ; ؃sܐxDX#ltWƖv Z̩k/ r2D?NQQ-̈*RwWym ;my!R)QNtoF \cſ@r0#_$|pAP1ZF*0|RVJHz3.ҧ F^"6!4 F%T"VLYqx9b(b5ò={SIiۄ]$/sin%yk=#87q7D,ى$d- jG~|n$/ҿtyJXj= &#%S\ f:嶃+Y~a~I/'TX|;yc5dL|ՐZUaPnȆqVkM2 i3MIVk5D)'246zV5UGI Dj*E*9ou+ z}  ,9m;N|S덦3:o]0UP;8HO;"0gؗK0X0 ؜˾r-ttx(M΁nz7O[6BW ,jv $G9h~k-n%[{EXΕ^kDZ \?B^EI~o vbFӰ袨sII; h:qQF^㇌ڸe JԶR BjVf+% (j=gN1WA4{K8ғY}߂4MmR"S<1:A@zW7;f6/!Tp&BI9)Ntѿg,f\5+%(PNvoruM$-:T`(\7zb?hE^ăv qߛy#QGNŠՁ^wefG%1\ՈlB+$u}voh{G@ʒ8P>Z"/'q7PvPj;pFu}mTka$o ɤ92w@ @cxR ; <6{Ÿ7%})cU0@vYḏxZ);ЦsnqFQN$eZ𺦈`E׬>I 8+H0a[M6_48e?!{]=,|_J5Z%8W L1\\d̎nHxVT25 n-ˁ=@юBݳvEG{բ&é!1Cd#I^Y JO1ܟZ'Ug)`BODL"2Geā8!~|=?%@&"494 'x#sGaciJEyVLߩX ˸4$b1u7orgS">z;r`1nJgךD%"T_mH9Nِ|#kՂ -n cr3B ylc-j96qe<]XpEo7@75HVTJR*T5HmY)7ԇK9gl19򧾝GuŨ=8iwM p3kF6Cos3LH:/ 7ͻvt(S].)OnٶFf@lFBKZ⺑zm$KT5z?e 1ejI]oy| \hq@̼KO}Ĵ{muWtFx\٠eɉQ(' Gʼna oc!#w+g8T,M܄`zo_Կʡ(嬅h׽,?/)o78ND7gD6!y40> lj jdF-B"T7 Ȕ\OSweTYʎ%2!0bݮ/~둔| / U -oik㋍PAM)Yz#@ٷqT|8`ئ X]nYxᣇ9 ܆WCk %Jke5n EUyh_CR_ma'2Vֶi~<X*Ѧpst0Yc#gx~" CrFM %)ӑX{.(t,>TP%csh JWR3yZ 9dvm82uhr9?<7̛ȗ%<=iG t K#(W*&-7\L% Fo ji@ Zb$.~d 8ׄ^CTKjvm<$ZɴSh@MƺHG _ѝ.?_ɝz?\vW+oHGQ)d~ n o* ')kTqϊ)cc;ĂK1:fB@7nLZ̬iF^@+JD?V'"WE@/FR| >Aܫ )jƬIn]aLA j{7b%F .UM;Tdiwޕ(@N &quad %{7✕N3 "хI*0t3JDL7I/fّYV,n|bH]ň#=oodLVrBv^ѻ EaעG˻I-pՔ&z$E$_ C= !b}z3 "'RK;.cђ[/ WLdRՄlbWk;FK^B X˞~>[6vE,Mdg_͝N&E)HTxVB0 ;=fC¹@k8uã@Yo :"&:&i jj ߿"|[dCzIeDjģs/Fu`$,Ǎ.A_GI=(=:^uK髃uPo< %/l%z#B~?׃!z hj&'S&,V 'ĽibKb V"%,O\UOYPw"7*R)$L-Ȟ=hQѬ}.Gx*_l PpohکUi y`^*kUl`˪v "|AesCleku6'pYyT>gdd؜Ƃ{_. ~fp',.C^&2u9N4YfɢSbSjM- T"$ÏŬzڝG u5UIp{-$׾Ma69rD]bRZp^I3; \ -uU@n/ZNNbg16Dvghxrp˜GZ#I IV9BmgMh00}e')?/NVk3KCАvtqne"}@/&yAgeN T!>#C]̀7Q6aWQ#¤oʩf(' jj,w:%lүʥ--?T~.g#ZEt]"*q5?SBї{-)[!.4_ r 50ef5mw*+bJ\9Kv;$cvLR*Z{֪*ovhĝ]U$B.Y)*{}R7)BQGgo'6;'kc>[Zs]=GKEͮbpCZ$bj;񉮐U2[NVxHfk,$dA2\ys>:|7 3# k JH-A`"mֳY)F`sq&!f߇]H4]%6BqI/ApЦ1H-h QOMrV?-:@,Ɵ C{7]uYd{pdAX<υ5JI6WɆ̮x%a c%R-%  +.:;hX#4[a'qBKqbuG`W*'R2P?̍۸pj8\r幵jlvuѝixQ7e8%È9|L"H C?@ cFxd A{1mrO r.}87O@w7^O*t m?Q"ϱ97c:- ͉C>1bq g &H"5 |NlʴT'2hŢ[m Ll.x] h3oD~٪!b&&>Ed֪-`U}K¬Bhob8$nɄbKpS6c8`7׷mwԮy8wҾȕeA}xMqow%~ճЄ@Z~!kG.94sfLa4L5Q$v" zjܷi^44'5*/ӈĦl?[Ḣ؟䎿D6 3d\CL7Zi.| =mZU5}P1'R庮I !7ڱ\;&tNnǕ*&ߡ=nRxxI Y- lLx6JxӸT#loe)Ƭ]X@htnHx!p e I<ܹ/x) ZPI%FdnBȶ u{<I4)1}5KdDzTfh3g{P6 `%K$ dS\Q懧7<+N-bb/% l/ Y loZ-<}fW$i\P8mJAF Sdnn]G؝wT)0q,aeQ_#L>ȥS#|0 -$.Ϡm|T:$o"U@aBUC jv?=Ǻ~OZxZd_ dgsQx5O_))S\$~e |PdffXfbOSmq>SYx;|[+Y$$&Q {2u0Jpe1?PفFcCGBڗs'5Bjy~+tLVÈh rn# J}$:պ&ܽ xXnF^pG3B\^NV !Mn_߭lVhT=,r*Oh%Fr>ӕ@=v:憔+YwTé@>mc$ФYਐ}{dbK/^=4zQȊn͞H!N!{;@}'*q@uaO)r: 0ӆvWyѴhgDɕn?D 9_O#[DDۙ +?7ZMB-VCy!LB4ͨA|E7f(]tikH{?mx}שTxhk5S7NePR|&S!C+pafh(iµspHeҹUЦhQ]pWԆ̍7u O<U'!q~ize+D ftZq[zSBq90 A*klMÃԦιyAE WJh4o󖞈-BILk9 T3ί8/ `.X+=':cZ+7C)Çrp4VFnxړL,g`^xB*oYm}!xG2,gQv&}12GS@`ClR/g(Y3˓N/|hL1s^)㡔MmuS,[|vP󖸘]*|ry[[9; Z[(K<42GXǕķS@È'CZ9ؾtl Ï4c8 (nl@l9k# H@9^){mo}~Ӆ8jXɄ%ص=* OEsTݬNdBShn?u*y]Lí-3e 7}&wSg+7M/|3)0hgǕXN꯱U 釢5í+_XrP)g œ`n fv@򃱌"z]%b|)ҬrQȨ)WWXnvCjjme1iX'G@Uq^|gP)>"3ǡ3I؛Zx0A_wzF< ڜ#[5iaJ  (8mlhW(FjZɨǝ'g]\^PI-FAxLk^"j׎d1/Qxß|rQ3nrVW(Y^T-YI1yPhѸpy&*_gA-p(deWY0P4BB曔ޛ<!-g(l[ғ7soؿ*9oܥutƋ= t*RZt!ǂ:BTUe,>”ck-yPChv6Ge %+ lKSHBX'ి}>; hx6g7h/C Z6;(~b9\1Vsܣ[Ya\зLbѰj؇|'> F /դhQ.:B1oe-f軌wBenR۝MM:|S9 y^CGYhaYS'Tg1q1cȡv̡& 4Kd/Cv0m6ZXS[JyDJ9Jl*]v{8 Ӽ*qa$xBߡqX3 8P2_ĐWM%ٯљLnO/<![&~c`]4bҍu1&eę*-yU6m:(e!1r5(|ѦNɘB+#);dXHhЃr%AV1 p%g 'yށRatMm,qdLntQI0 %KP5(i͠G mGtl="pC229wPqKQEΓJ{Y9o-l3Vt_A'R߰Zh"3Tx=Q$E _%A ɋ_>p/.@F)rp{DC :&KĖdwh0\g&$Edi뺳;N/ ^]~iW㸺]a.b¾dB6.Ds<2@=eb7W&ZGR rÛQOFW*힘I%%h(֏/᧚jաG"?IXyzElkp]ѿj.QdZl nF*ZqHQ 7[F( X# g^8S*GaEЫ?i$:ʾNT-"N b¶ x9Y $:aDnW-Uw@i4pg=@B@Ȃ"yoGB !9ד`]FIY , a_@6Қ,YbeQ!;JŻ#BND%K4/ ˿`\3舼pPx'͈q {{imΞٝ6^i owU+ .\@v<^z1^^gJ9vKo7G)/Eٟ1f.̌f^4w 6-/Y‡ղ<|#'Qt9},$6.UrS7P:%@`m_&4fU?äˮ\e[&ϗLivL@؃,05$B_N"*y9QBLZ [m$)A8?}t0 2̌bZxxxʯѩvR/˺֢owx dN0fKɸ6xX2@v[[O9KfnaX@U;$4s7r̨"05kcyp'BVK2ƮoۦEA`D1V4;} ;@Ql 7'҇9pcHzr@g'L/.fwz;RrMK#>=ldgYib`ܶ~r™ 1$.Bʥ=~/]@}pgMgӹyph#z6⹚,jjѱ)[&֔?w`*r/gANo$"̭Pa_X2&.J`#=kf0sU҄mHNi*J8u vF H@>t뤼CW1$Ǜ?S R߼DdMl롾OE 0M} 7*2o35&6 Kz {)=S^pIT@,syG!ml-嘏QN \6܎:{dl߶,顣Y=a63~smq?O&~^G$[ecED~B_E1H9zʲ킩4" tMF +v%*kRkw! @lDTJǫ7 +y*E4MlmfE%4aC!`\NC .zKhq4 .>%k ~훦GIb^_/-8P5sd^Iv{;8frdIvyɩ@CQ ׶򎝎O@P?r.q*sHJN'A Xm+G{d!Ɂj|&,3}޷,$)ʲ_#"*ty|[9o@cҞkrM]0ڪRv1^.{,ZQ< Eqӝ@) ,_1ޟv2/^ZԓisNa2sY MҞŪ ]cOkOzTeKԭktT,z~|SbՐho $ijɾU,$qO)8 oIfŗZUЙ‡TJhlYN*9Ŵ2 ;k= G?Te qș2\!m ղ[&&wUJBƚXlVhGPQՁ{ "nhW*gK/9 ;g,R'Gil_r]Ie(أ JІN1 X.[r-* חӊaߚŊO 7[$~WpGcBXCjt'{ģ@cFcg[c ><;rTq%Z W3grTY!(6fEψ&MAA3'K YHBKԻhR $o#rc ѩW9 93WBUgfonʨt4I^‡BLѝJJ9{dvw(oHU8 `&wM@b{AicVicS'4TfcX[ŋ5\9jGbE:EW~x9&IeƔ~QB60 S -{h N™"y6)D;_D}T挕/ME&\Yh52lSFlg wzC^aMcg$d%v46KNjlc2D8kKu@N2\5Bq%[U02ZBp`VP9[|EWbdz`Ŕ{{z6.H.-Rl10m.8 Ѫ!|&72!Xh'ȋ2okLq˜2Z2,ݒrOq(7V(x6qGYd5NӧWGBЈhOniYQtbCe+Zo^e*hq&4էbggp.4g<L6d5Ñra$ Z:U_3Jڻ#HSHJ<4#CfԢ*3ZKX cyg}PzToHdm=S(d9NYf3Gf'.&&ASMSpbs S%+URPmĊA(FA4GnD*iNޜ ]sw g9{R:v%\IJKXp͒7d y-ﷃR[:<@6-;<,|P6"%S:|Rp8E JJFj_' kI}Z. L@@<ʮ'>'`UCQž=HNMрTkCT_pR*&>, :yR_8܈7P+_m¤k@XE-Í`Ttۊ K9 lQw %ה|oCܔ rhz4VjF4^B!' UcΉx@ .FLCK8xEEq䂲0,xAs~\9ݽps/=ș}(,RN(gGT.fJ& ծ,Zyq0*%R#E!ϋ*JrIZ:HmqfeI;JdL0va=r.4ldװV~םَhAPXťg$n1[61IHfnOpo=bDx^fcu6ߩ!M3cE`pI'5pf$d= %{ Z\X5pGhqYIM!YRp#~QaIgf1=?bȡ|mRk;Pƃ9ʉM-F ǶLTs0pW^ WWϭj}l@&_:NzK']A#0lܷQȰ>GtJ(!k'r5Ȩ6kNdꑢo mj;jzcM3Dt >Q6_r;t=U~h%ǔ 4yW򄄋on.5 l낱c*m9cuFCeĶk1XJ bz==y9QKϽp G#UTү[<1+Z8G@2ڬm vp 'w8j"1qxH=7`#pC5TN$I.=:R^0j- ^l樒˻C@'%A9QPOGMi91.g=s3`Lѐk<҂`$̟ ݤQWOFOhՃB +`U-Qz>Oz5!}F)۸)RPV =gN#S3+Ő^@eii;u1{'k3\m. tb%<U>HW@A#=^Px'<]Ji.F 5*'J Q>y_5C+rg($l;x?T\#7k83moB.1#v?*0x^ KfμQͻַh\5eYbeǼb\ D!\9l>GU"w=ŜĶXs6HUZT dw ԄO\}\N+k1>Š8m󿜬+P[GI5ȉ@ {W ~S1>\M#ΪW!n.bc";\pkH0MJ L@4J*rnutS+ڬc.e¥mtx{)DhV߹Gu!(./b*jfN%D{+INKyoa<n^fhN pQ*hɤeg=8gXhG< Xxzq43|9(Ay_aZt^%o0-raF΂/0h;[XZ>P0 (8s*߹|#8+=fxx m&.< N3ݿA2'UŎî8Lrl՗y7 [kT V(?#=r*&QkDqjK8峆KI#lG'^`vN}T)yXU/%D~XQTȹ50NܺA0?@G[@Z)1#LMnIxCn&$ZqCۻng8'(ںǚ+EGoᾁVAٟ> 7N&t9I' K\MJZQ )IΓ'd\ /u>4|7qwKiw6V/f7=_-f޴b00 Ӕ*-JP$,GjkYK(MkYI`^\ـtU܋27z)zHוT+t4URT )^짯xy}5kݓ~NZa H1)ų ӄ7F<:ڽuɧ jqΗE| u5[(Љ`Pf|8y }_9nIi+$ȹ9T$Ƅ ;Wq RE1 Uu6[; c෿Y tl]uЯ2dp@nhkj?٠Ӣ{R@:ZmS4޸=eǦuH}+{!Vjk񍡘]G︬gIUZmvU@Sߚ ~ƿ 8F3IOK@X PihW9 Ϟ9S XoxyN%ԯڵd '!v)w8Dwh@@pZD.Z"~L܍Xtf`Kp  a*zoާs'Me&$2 Alk3w@ݟ 6_r C8behD*rSn$(6rMP 6\Ϳ1FM_6AVHu}ʆ0>VAs^VGsJ+0 {Dw'MXO|T'I ~}6Il볉^wIΕȞX[0&ubI1\!an-(X|Ag\\dCA[9K>>b/d V|m p@`^M1Vdv6.0 s0ħXO W\D։u>\8T P5'`dº>J&JYQ.o9OءDܴpdvPU˩3pnռVN-'55 uۥvh\'}H{oHml&V-5N l: kOP$/o{rk2A"Ld(6w;V/.1t66֋1J@2~ q\R'b0KU\.eV?E`U{vi}C"@EYS0=";i5ǚb籏O&,@Poq(]ي%䭡\DVieME 0̾ez#L.TE7Q0ZΌ`1_P7\feů*h VnB71>_-gÕ|I3q$4fvNratV IܹS(Awю0A nϿpv4rDŒ7u4#ŷ2:ڠ> b:7N} z^( d{)&>QD2#QwjJw)&`4xD[fxD^ slzp{[)z1=u0n R? ҩS9Cv f,G&; _=g`jy~ѻ.$Q/.3 ܶS3hBNÜumSP,E)&*n$?q8Uk ZR3pszOX][^"MӐN@\;\D!KE7;I4nhb8ǻ-t8GlvkoI,|c~; `)ƃڴ'OZ;c,D*YJh96Դs6a”yZ/*1Dr8v7UjdjCПm`wC2T :O\9>741y$yߒ5 B^/٫ڳ4wc~ϺJc[Qa 3b9G^;$>KʄeWշӍUqdzGavB7SaxSu 34kH E‚6vRSfgo% K6#]gU =]ܜG' .[HI[撋%۴caPv#GJ;_01ycμgV:⧧3ŴTs2@@TlVou-#²ni i%4R~C$Mtv>M֕fAXV2@车/`}|FbMVĘ~N:v8mW L}d\6 ̝(Gxo2cr(G΂à=*(P(=Pcߚ@nefv>yRo>5OOWml75 5 wAȑYr~7(r0Lm%P3YgI#)a3\?B0ppzIbbLB<Hr}YZБB/2@՛"f"Y-ZH 02ۅgÌ(')=Ğ`"G "ǵ9iqͶòl֏B3z#`A$S.W9*hbZb#gZJdɀLtUh+Z "- J~U7Faiđ*Z3˲* ήQn턕$6"fyDLmM;| `:0(} Co|8hфۙaQr80Fw)E)J+9uG!dv +_I XPO oü*"%B/W } d23J/R Y%U~@t8e2Q9OXkRj-H-;93v_"rF_oU31NDa,@- 'Tsn@wld ccnc /Zֈ,kR4dgZqMί̼\4'#Pri(m- ,%:XluXp;oSdtN+kI%erԔ uMbzfs7@,c$=ӻ_F&N,{`pjf#FY%0ۦ2Kr4Er o]w O%IF4ާVCbKw bRߩиv3njv (a ǝ]iӧh'-<`UPHvW{폚d'6*Đ-/?>XWF硪>Q]Ony/knv)ُdWQN):iKQIh IV\ =_JJiND}gD\ E,M+n\R 1ƴyJ^|A~}4~N -h G!:jsK 3J1i%$a@5D.!y^Sg})%@Cpwd 7\הsb>Le8d/"-̈yP9&rpD/ pCDR/k W2󝝁 7nqwk᪫7,b"P@N* `?,SP3(+hyy0Ψ;fUyU.`ɻ3wK G-S;#&>p͸B^O>;ś{č],ZlzcL%'wsW dfҒmƈW-' 7P,÷jHvii)m>Potor=K};+z}/x7`p{^(ө58$ .YXPoQh9j=gBiLH\)dډCaZxXaR; .bl Vy9 g7Kuu`U>,MwuS S \JKfPz]ĬrhUԥ |-lxv.Voՠ7:Rw11LbJXJtu妱LEqJc2cQaF oA[^mWsǪ3b)V5f`W W"0+u*-Q^Ϧ|oL$"\K8e@~n}nl}FB/l/҅^ID-ʹ#uCn~=CdeUm}D~lxTau 2d 5֌:~2N: P'tXno_x^:&>O Tc Ư]5io-}_ EU!Pw~KF/x a9Y&k6a"6D9.P+eDQқ RtJ:5^^ ك.HGt{c^sAGP%Ә@Kt<00мX\U"וIٮI`/?bIՀN;dĭAyBRYɘ/C[ q$7ĕBC^d+& ZPbg5js7Yo%2_gf@$D4ckIóu%daGs.d%VRs"g%P\N E缺W[Ux@ho=IM}qr-B][m/2PP>#4X`D/t5X:ԉh'4po-–#QU'\Sm5Fj/-ImdoS\o+<#45Ag2 wŀQ $;/ĴĎFgx6hf4即 R,#FՄG]g7FN\PXozj.+y 3s>G$({M~";U-`®SK(.t{W\^AM¾5ʇ^-~]4"~8dzuB uS!NqP[h]RV)6Ϯ(FU)30 wL9 ^3r 8i)Zϳtzvg6 Dj"}W`=b"n -N,Uxn{ٗ콺1|ecB;:Yu/fNm3l\v5+HuZrbx&7=Xd K[؆%Rt~ >ck^P]vi(+YE%Rs'h"T1;pl ?cë^!vzu. 5} 9{dGuX(P@ V16F*$DTK(;#ГzGԳ˱o#^eBzk~D[KsN,7D՘+$W,!Qŝro{Qx3쪧K1yz2 `z/،uJs9.mDFcF(~g H5y@:2B4ncQN>fAэַ#{UDHX_Cz$uFQ9 (AB"Af'C;;< T~<(\ ϻ[Q $ִXGD IsUkji~H Y?9By\ʰCP뎀_eX1J#I@oi;_6^ڼF: FUu@/{<ύp@>^f{ j' i!T/ɼmȳ0WvpXyy%\iWS$DmiN&bh 2liL05qt_:|avK1fj0WKgM;vT .spRsw##g&-CJ;v{RRiDETbr#+}P[HC1f#˙ٮ`} ztF6܀EGK0 zžg.f1CB#VY ͬ6c*ο1ө߬ pn(V46;rᢚ~5빣0_ʯh+Yv4j4h8(*ܖg}18⌳?Յ$}`GO?uMoxz,uOӜjVpnK5(v 7x$r*ms^@ṢV7ŌWzm?[K1BJ1>ŎtKtұ#K 1@bv1ב8΋3p]̹=f1u}q}љ Ei pCUYB]u.V ύ_T1Ra|ae^~ O|5+8ӁrOY0]y;~-IXj{T* Cw[n>c:6:Dl"m\F@&tBZj832l{r|u]nפϦER R^Be%[vxZ#~pȥvBCX]  0p8:s4*UHbf=9,IW_Gh4ݕ"q^VꞩWd+G5Z'"33,ܩ:&ܝ۽Sf lP_LY9O,{A`;XDHƟc? D"dD[KdU`^0 \kQ%q=;ƋAL.#9h'阡v<`@Sgj7ӘvAxme4r/jԚLYudRa4_kU0ó>!AV)t:k:.ѸgA2Ǯ. =QCe8 I+"лbZf 0i5~Nx$:V{xx[tȫl㻂X>?oiw/iO40Ց> @G6~YVnL6q.bl`9u&zNID{л8F~ LV5R2~/ /o01U 7&5ˌK.Vv|5J7k毅v#j?{w tY6Ff)$-1YWrJv+J`[He7E$m4 "Q"M :7+[-s ēTK]ztOӄ%Ӫ3BvNlMgcir?nrM82cTy]3i64#MɀC;CWs*2WBS&K`4=;Z5‡[׏xIlC:lMwj~"=bnG@qXjS2$F֣`; ޣ_ا,9tzοXܧAQ\l)ع4?MULB'ۢ^󝼤ơ##R/o{rg RqdcT#7[7{f>R Mǽ|[{Gwo]+gC5I)BģƮZ[.֯$>}P N`RMSuzjdG8z.ȩ45-7"@o2%wy 9>fǼIf$-$39R~%.X\BKr:c# 2306  )*L&L`͉#cmъ/K cZc F] >|޻箝M oM#k0ۿK_'CZbŁ@ fM9PYk6,irٙJa  &=;͛s7z!"amNz;&ǻY*Rq^S2n,Q!(^` y*7'S7(I =EA.d Ý ^MzQyo3d!ęv   喺D&^?pϜO?/tW%87AzN4GfenS¶Ag= [F1Pu_܊f"MN%_9 `q7@%"JU3ViPހݒd5ć.AT635z_A0I@ \B.:H8 мmؚ-!}:{jK:kR,HT$P(& UK&@lJ[3\y^QsR70Hn8G1=A Mr#C%>JgnJxL;}&r&zzi"& '~e:d<(K\8 ;cC>ؑ`@PZ۽=區/Ԏ_' ~hx?A ZCˬO`$qx*|ն %Gty4oP1sʎI  !Xr+O#JW25CnY@5' @ar_BשVYhC

6d*dt0v̒YiյlK GmTcxG$\ȀluǘaP5jU4S \'-Q >+|+'Qv4Wh5_KkOe y3K}41@1X̏k킚(5gm`M)>R f ZkW?@TcQry럢kε$Tm/q=ÒUG/K"m<1#)0nu[@$)߮ULtjKmȪ;?Э1=O$̬A-h\˺}^TXzr=DQHe9Т0LWE hF t!1b2Or)>'S. 8LguLVg|23 @dD]'ddii4ElhgBWL=2E% SOpWA@'BJ,iA|UFȇpelXt:Kd~aIY K%fm. $9#κs$Y#POְ lKJVu[?Ӽ+ӑu[fB>HX g;NjMۏOC"^{)X?^=r{1lDIQ^@ń3~Zޘv@+SL~DCdװ͍_7c'Z:wiTbAۃbnBYFm̤bxB 3|`tmdo>Tx_OE/\rvMby}i*) =݃|{#j5ԆTJ9ѭ+T m^ yJfK*.iQ$93fJ,xyR o# w;Zbt3okH f;m*5tVvHC`ʋX T oܺxGل.0Y7tG%bހ`203Q,lnAjZmw\p1U\3Z3 *loٞ˺I&%| ׷]o]ʶNې{FԢĭϣͺ],82>K" Y[5 s/E5o׎0[r07eӗK[knFX8 Cѥ"7sT09hlMU]Z,=UC> ~)1`ԁV4gbyAЬd99_5$0ߔšiMfqsΔʖƏo= y- W(Mka5..[ g"9 v* @" 3AڧSyw!L0ې>ƙ̬k:qUIpޔDgλ0JϜhcO ^>wWȄPڰwjE$ N/&k {F}!p.y/~)52}Fdv(nC+ 5qARxyy.OU)\:@c>nqبNK:LV쭚J’OS`C)2v0sHE˳j`]kt%ȃ8R#|oNK: Z0gr_X#:giOәCۤ8N{+-xW !/i.?}5沮-% 3$?*n# x\b5}TdLˇ/P|@ޚ^$42k?.GXU7Vw9(8n5,,DUЌj譵\A{K'}\X д$㟕~{`oo2ׇLFT=I|!3xוr&LI8sx3~ꆮ$t"H= xU*ocxDu4Edw>:$4g 5R֓dc\!(\|S§`m84Pd>h f}~(~k2C'8Zj3r#F2&ݢ9Q/}yێB**ZxPFEU.M-65}F$"[K/T2\ XpNQXcMrbg&2#굘;hM=@ʹE^>5o`fnvEhp |sBǷ?~Qл+(} `iPe ,_\*_FVmOGc n(hDg _8ۯcSX3:B+jtw՗E@p`ayA <޲URV~l Q, HnZTԤpu;f)c/Ȅi>|Ⱦ ߆X@:z.mRNP2SQWC[ RUNغ{Os>2f4@H t]Y`5.Xw {vrQ|"Ok>kL!+8>t[Kαj]cQSJn+Lva9#X T)_/Ro032_ytJM5zQ0ffkzWԸ`/: [V`Q]Ct!vY2C+HH9shE+)XF|uMJ"p>|O `W XcXs&-v*7;uB= c= Ȱ1=@9wrk$Bad.NtžS=6tݶ Ί^03+_jb6= 75WآYX4 VpJ~J0i ٍ]j -#f; bTVW![O`%8 \F71%F|.aΜLq .ļ017``RlЎv 8?M݋ƙhLؠkz֐/ma.i<l`jȥ S@?vDC>lⲓ)ۇ;K>$e;BqS8U[!eAv,JᵢxͲ L UXFX~Vx)3]腺{!C.q $p}_462}5B. w7JHĵ0 `Vp "*8y-![P37cdlZL4 8hΒ `fvC]x.#_w8:vYVvIreFRN^Nb$n-@^#)x P6YYz,4#| Kznk:j'v"⎫DAy":|oh(t.Y޿9#,6f t(b :sȲԔe]8>U\AN%(C<-7kIxL^I? [R=cH9 Y#N#C+zp~vKFbtUX)(s4o`z-FF>l^7OW< P*U޳Y"#m&פ]&/myP +!LIO{N֩ykVM:6m[?:n$::ZՃ ëS%7zq~ /JixKˤt2I$=x[z^(߻d .7Or7DTJuvy,I7 8m)[Tvq&eHfjoUDټ RT@M|Ul4bf2LIi[&BQwv=Gcni/<ū.|8gU~kVe0=ڮ Xr"j_ + H0zlasm/p3ԃ\L>݊ [hZM3E~g v'q \tUrq0oEb&Az#i SS ͫ$1ݝCN+\ndl m oO7bzpA8MD5_%O= 2hYe%PlmB:X%qږ?gˉYǗ"<7-F=|FrѤ0`ȷ|g Rou g(D92;-Cn]^?iT%+ThDL7Wie]J][1mSr4&f>{ r`ӼPdwdѵaWx~e96L*%L U*ٛ; |Wm|` ϒ&8"LDӘIڊ~Igu"DӃDw[frIs4]~_/ӬX:tdAiBZW ܿ83 SK~CV˒ wQ{j NV%d;I m[Rl:<\;QOվpt2b?$;]ư+q Iz<%O굩 =!$|{Fwa˹u(K=kg (;KԵS\2zZZ]D]h^e*ܭ{T$rKZaæPd/OP9zVפ2_i0mmI| >hDrp (K@Y!uˆKXva$ѿ:U`I(DhޜeQc_ -/=)jk"{:%ի>9錽L 휮$?e✭ Qo/VJ,* nI(a ]ʅ;Y\ZqoSf1k7e١} !x7E&]V~d'á iuW6'7 Tf??ɖlp!r_֪O}cL^\L54qUVq__ HmqmJ$aBPXcג}z,9ϳRt;sj3dE|Mvp*rJDs [Hb~0DЦu sM:]ZZWy l&<#>*1)zS«4.AvbRى"48=(Ee&8vr:O]fDV4䒎i ke:geA*L !O=8fwP :DY^O T#5-Y1졎\о.hRO!ΰuX,&@T+zk4L Rq%L\,L|wBϐO*d^"hӕ{Qm"bL~9C_=6Qrio??vTq*b]W(f'0wPBe@UIߚK}pf-Iaj$ᚵ$OW9q{4sF譩*ʢO3_Rys̽A!fT`qd5l[iWv I4QWQ-/QVvO|9e}.CI E_ PYO_H}8|CJ<#g@ OWd)H]_P;hrni(& ;HJHEpGɪlȎ \-DGBu\jQZR%RH,0pc?M(Gk%W]1"Tq2+N< l#퇞Q|eC;:\[VNm {{b봳£&51b,+ Q` SnxwS jI#mBs-]E;t&+, 0M6hRuE4"c(.,*-?fGґt&6 ()WIfNRoUq=ˀM۰DR*]lOH@[4B41/D1K3ϙ#3cb鸠]yy H*)ӷ`x`;&l2ǜ= o {X͵%{w^]Wť. Vd=y\Dv Q>t9 .sM$n`E!hGկщ%QsZ齽 w;Q ֺfˎh V/[Ti?/cU32q+sPv{\ڬJdVGHF8twdABϣ[@k*:THrxm(E \#FLjJy*; '\:D#y"J,1]~ҖFlvU亗; d)b _<_4 c2Nʞ5Z" LosN/DUqZ8JZ\!-I܂q8c8 m#7\ж[Ujc 7B'D[("bC=px=ꓱZ,F%'UJԴDl+f囈Э=~GsK"c'(=Ny,!j컾)1G Aa+qǼmSMAȨP; LrIBm0 h=jg l)jZ'9rW__\,Zqp\6䊈Xy_'\f쑁):s/m 3XyYFpOtJ>3@Hz`@EUoMAw^i ~&tIJ: 5+sSZD-Υ>/DkdMv"%eMIԱgJ7 + t~ ;I= "^>R, 55ix1ԥٵ1+3)$YWp2rĩ hC&Jơc4SaYw0 Cv9Q$c`2]{k ,%}\/K% Gz7TŊăއ魰5_OVW][=-릜-ÊEV"]^;qJgu*({uu57'Ap {Toq'Y6ΏHu }Ͳ'gf'/S(};`d!^yd"*2"ayǴfyMh|f!&˰  .'=+pܷ{ᅧ ]N4jD{LuGŒ[h?ןD,ofef&S[_EnFߟÿ!f :H4ra" @@k6s[rs߮a\`Β+~>V*:WSaJ/zë[qqX_IOV-M%M)#[&mWPe"r4i5IEY# AMa%.DamHq^qqG.  RWnC9%g&ffVi?MX:y0,Jsx%T#H7G0Z6ڙ/v=t3 Q]L ON'T7KFq@Et/볓P@ֱ]` Jr/-פE#j3H?gX8Tяi64EESQj5?&?N~lWL0,lyiqBRq&~mjld?uM:*4MwgooL֤>mc+ӥѴe24QOԀ#aLJ'&ㄪ\QNd,DU?2dcKGNf4 VS}Q0 *'gBR [lW%E@^y׵GȪR>.;$S\t5ǡb~ _'d2*I\y&כS˹V<A] K•xzhm6_Z}i%74SkgR-rO?:{-lJGueIB3s>Y?r5[iiJI>SgȦx0/ՙ™ |t :ssVg +ǹ4Z\X~[jîvDH+ŗ:u`fx+qh R*օwKˢp >CwNqwM҅˔ `jg^Eu *)fIJ)-\$Y*@ʥYEW $5ԲQܲq~8 9i &ӝLB5'R.GOckwd2WALaF SE3|oue2up9r kJOdVȾؾ, ZL En x ֘24 @ ]Q:[9Bg6BxD:=-kCJ(B1=XվXayd NAeӮBEwl&Lvgɳ%4OE@mF KX/ bWRVIWBԍ'76?v#X8F6;6"Ϫ`ˀzU p~žKN8X|WVQ~V|A8{Yi"%}# yЀj}iFבhMS4{1XޖHm+XI_2d8_XkfW.#//q!>ro#Aq)l)$y{ŷŰ7iuZ6>6Q&i*vY5MZ%e/<:*8Ϧ΁X? p:ѭm#1Mk6G7 5|zs$ˢ}# ŨIqXD_qiDy>P0+&+.k+)1S@W8&JI(* O̷Βa8w(|DՔ9Y< T*`4E H:ԢR,FTU%V諪ύ5oof\C2P&,coR̘q6oHr>mL֟@],x_սP#RC}#xW ĎQi% 9Ve /|:kIFqa+k-\A-b"4P(K%6CtF @$A@t9upw^ᗛ l(0-Λd'ոEWscŚ@_ZrXRBܻF~^@ʷ`:)j12U.JΕ[!m(4z[ Uf5LQ@Hv r@C|HКG][Z d9":92{ў `-A()#n<0;XxŨKe`JCwp<%ى%W.{ `ZxdFwi3_򱆮 Ÿ>am+_ysy:ỲTMd)+>140GXBIk+W r5W:-4_pܦk},$_kJޑgVb{R.b,jbƉDM2o0lr33طRO;a>RQa'`xWpBɓzH<ހǫQ&t)Gt+>XR%"LƤ"%Ke]_J*Ot`wb'[~ɯCOW7Nmgᜍga|_.hq|C~ @MŋO0嶜sV ) KQ*>u D" C<P3n*|.^nݩvΨH|2[@++i :M)'…^>"iBoLi1D=.UH p &y\t>hhq:8#yXbh7Xn +@(oEG}P^!SҚ2ۻv{$onUZ",U5T'k|P1zz2URUW, N! ;e/ $ua2]\,fLogfֶ=\olwv&:Y_KZWF!;5я{iF*K4/7/VZnSlv~t;|s;ҰN>n-!]0x5'j:n}`T<זgdnv#U˚x)<6% ] t^3˿eGxLy/1KZ҈wD[Vzh֓xcx¯4?kK_M'zm;M^>JN\R0,n@M OIo%=I绢FغGluFZPu[gǜ*ICGkpeGIŵT 3n0LWꐋ i @!efl4J_bQ"K43s~}8E > #x+U T-|jcdnFD7tE*q'ۏ̿wk>h/uC2ǡY % 8# hec0?*4ѿW>sviLMIE3 w)S^.}?)r(a/VH y ^bf`eY&.ȝ+Alr3sQWi\f_Aa5g!VLxYtI=!׳dmgAeր|)Zƴ߿5JԖL*ׄhQ@0|nʨF0 caQU¼Bo26'4R+oq; ӯ5Ēh ۗYiʹ;]͎Iǡ­|4 [`VBQ_Q# Wg`IQCvU@ٸ86|k.R\-%"n}Bw W=몇L;<%=[uHl7# jREa-|}2Nt/Mh9%~ BNuK4 X7㥋J21^YMki6+!U!|8> [Tah8DyvΜ'37ukLYJKCP]i'a?ӿ x :ci*sn5YmKdISO7ǫzљ9e9>}o #I뷄aȊw'M[]/Q tŐc᧶NLw0 2sZ3Ft }',eh8LWǪv=Y5jbMiOvvyx|7W2\n'z1h촒/󇺋 $w/u`;GEƨ+݃]L2p\+FHއ/@̳}3x \Vܣ(1t=M9}7p2AuQlU3:XMV"=d3MYޞhPXt4$n\xYRC 4D$o$^.WBE:)3ڈ/j/GTI:̚)|c5B*&_2ghE8n$K~kPDklJJ s-jz_KhrH˔fEai)03UsLq:Ar4O‚UgϱYDs}10u޾p8˫<]Tub)N W4rГ|>K`R27FK|w݊,F5]^;T9@{^}O5Sϯu$7=u)g]Ê ֆO@Uaܑhrr^;WԈoƼyJ'|s޾>bì,F:@(L+x.*j T~`#b{-1P /GmTWQ;N;s:5LԮ^SvxH][r=33p%pU0{a졂${cKnƑ>+d\qp{X "zv;8c с _r"lz!Zil3zCjD (4.t ? D?IXDYi.EA۹yѣGK-{?WG `)1ed#֜'s ^{Hb5/Gd[ kʌlEA&o09 6xJ<` "xjHY=<]n)ZZPܴ; N/ `+em5 Z%Bި5x13dXlG-*!QmtcW;DW,P? =S.^QaEޗOf~dټȞm,wIX܈FnFg4#NÅ51e"\s-s@9Mb@db/l&ѕKG}@]g璒c#_g$!`|`n@ w aȠQ=:RTT(\L+y3d=p6w60"9Z>LJg㤼0GwЬP'x4E?ScVa񥧚^z|@3mw ez5۠ۮXф %]ya5ńWӟF\:%dWfьtT7Y!l3vF9tOsV&&קU|x9IKeEDWZ#F+NIs? <3oxr H(L gUSXgO5wv&i2yp >>LMaG,߀5W7<0]1鳖[yཧMRо7U!a_IgK˪%Uf%0Apql|s㿰YLtbhO`IOJ> m@JϚ 4GHůmc'47?*2 ܂ԿdH)ƜEe0]P(Pƈ~{|gqP_K--:_{ijDOx'(7,=K fСo.F0K(sr"'{]I`әLm=ǀkN42C,@}%򅶃T9C A7U>->^N-x0%zM 4/3{S5"1yy$BP>x^NV7kC(7?`bhekr¬KV2[5F?'sRg ;iE0~R!wI xJ iWht"FŇTVǭT2RɌf~w;o.NَxG'Ўճ˦' odWx'Zw,UrePn;jfPTlt0i2; 1*bGWhHûP$= 8rÑ'Ihr= xN*)p:<2&b&/D<:U\C!TƯ9+C*\{iX#cl;[ng8)oGff= &X MڟM&H)s_m"0*ԈfpCgyaS"~L4[S|ʁ}Io':aʇu)j˾0e׻k 7J=ۼs\ZwٿDΗQJ{:x.DwDeF߽S)k H:ri,ua^wq2c7ژ wA{"APqp*мrAcc=$I$= K^Y^MH""u)cl ™Ety:?IT.'؃u> \niQ8cTUԫ: 2Q3}L~>):A3l(>nk:e*9CJǁSB_N֕ۂ97I^mڅxp@U;=@\"V JK&6}Ť9~A Aӫ T/㩈^qF> lh!ww{>i]@v+EN}Bsg"bckQ旍ϑ$L®NlW׻_1pN oJȤvy䬞JWg7CWNG.kwro/D X<֮6N-EU_c "!@N';DQ+GEqH,),펬Dw(A\7`Cڣ4m)G鯄G^Ca12:N+uYOx"ޮګ("SuKx|@Y"LJ5IDOm" Ql:l̦lƌw{Js.{1:i֮Ȍ|O{2Ps7lbeJ:2Br!UjffI$/r{7GxD*gxC_]ƖK<ꍂ/,X{NN(h!T[Ёl[*@;}wDrGiG g,1epL ] Uc=֏lvĘeHO&: v:iFoԬnfh %0yn]4rMP]5(ҸE8)ꃄЂGCuI]TClMh"<tĴb  FkL Tѯ,c\'O"JXNz"5ܺ<+O{\fm֘Y ylF]7|_#Gy79NRw+[F>g"nc/ B^1~c fyҽ#0g1(k ?.ߍdƞh eUVw!pZ#m-HMK_I?9ȿ?$VgޣD|$mA.Kfң#Lm| Yo;g9iI(ٽ8h@_}7}]}Ec%%&O[4sY$u;` yGS ,wzKޱ͎zZz륎hʌ|wg2H`ˮ /JM ,͋zE4pT0(7L#1g'~Ke๥A3CW8 =`K ƯSr׭ /N e ^68(j+3;Ѻ >+i'7H6/9덳tRHY/8[NP]j%7*'T8A)YasΎҧݿa,}bhz.,k >,"N01#T&9j+u;xClLJ fQ&fGoiUX% 0:5DQ?ݜ:Md`\5`Z,zc],ѡ!CC7H0ckpz›_*0y]!o}y҄̒ `^t@"Uf/~?>%.ob޼ޠ oCnN3 | iC aPX_X!HsH]nF m+5УuKǼ[tCh䄈u*2a{!;MV<' 'P˓Z\3>Ac0) 8Yhd#HcCpn=&LeItpY5*~,ZPF̋;1e՗w2R=_/2͚N@anNh"~Y(-ceOK]/VғJi싙$-Sz%;#lz9K<+|?lJ!StٯT>"٨pwg->$vv+zB2-7|"EұASqr̸IQǖ1O (%L~:u5:ؓ-eemA$۞վqTJQ#T'ۼ[!I*18诵XeуShW~UB etZ)yȞU42$?0uxЉݻLq_4ri`K03jM56GEou~}F1oBC1yw]!;fCane'IWxlrːGJR i9G+/U@CcF b^7,b)\ ,f_t/*<'{hтy\m譱GV$Ǩgɲ$&uJ P68RQ١ɍ9N5Iomu7r.I,kĜ[٨A ~'y-*^cv QTQ7U"fƳuΔ˒ĭ{;3 >~0.%vwӨތW'1 %bT1fw2| UK0%@2LJG"A\Z^*plz ƨXRG̫*nʎE6'K"'/}~y#+ŐR j8wIeOrg1R+QNoe6hׇ:/ B=}aܝ$eƞGN0gUNA_j=ہh* &(;1\pKU6yĐa"Ny6(~ ѶؤRgFTC\<+OIjDJfH5 YY>R `I' /2RQ""6 .0'c(48xVjs,ʚiӪӸc@/҂5z,MșOzD m*ܷ{ksÕ6[IWҗzzgm]faܝŖDDqEeDz [DCu'/.F0SvYkfI]ZYⳬqU+V֚y0ia?JzP"/jNGB9D_oh# p@V6vV̙;Z8F? lcScGK6vRΊojՊQ#و+nRhHVQh|PȲFw3ӽiiW] TSHu'POvmhKɞY+_H g;%DP VL:PUB%ӄ"+[&'HoIyJHw?--# 'oǰ/uiәj!1\vn2(9MdZb0He>4*fp„`<9})QomL9SiF}h Dj}̬ vҌ}@R/GBְn0OjEh UMj{h 끒STZl2GG&rӫʉϫ{jc¯ͤ BL(E*1FRׅ-7 H^C@(@ShpOR|z}5~jI$!6+YUCQsv<JElONG;gɕ#p(+;zɬa7VZ̼2y34Xf[P$c`ο܅ u G\Y^Ow(`E:IwF@s5g^]?! |:Ջݼs!C|dlqArtn8k :}/@OwFYLEs|GoT-])|/?càs;?=;8N>9FcRlwLWraܼ0ƶJL@r&z|@Ԍ>*Qv%U`U4IPR N \ѱf7-iJ_.Llfv1 %HrL"V05q?3[ nB 19,=*@X+އW) vT}t( k@#lûu?Y'ȅaWDX"ëV4j1ZΏFТMe~K”JFcGÚhg[׽1ʢ$k]jKh v&rq'GHI9AN}g K}qVxP%fOrni`ZB9̫'`FaQ&@Tji9yt O\#+zڣE mpJ:?9V5J1d`+m !B‹UTUDw-E3 {jL6,VL~߮6iiq<]C@_΢3cUm"Sz1f׿So,j,J#?ph8vjLkZwN fxܵ>"aQkG"Am—vK>h*M& I!?'igO8.>Q "?%an; uMہ݃YZ^Gf m6bp-"{V%x:(msU`}8q*eAFAEf$YpSA`ŊR:L3m̔ժ-@/[*ᓮ%LJ-={ V!\@f2Ѧ[ NT2Q\0^; V|B.5f~k|Tʴp GȎ68wv;K J[C]/I4d'tR,#t˸Ky|)zV&T|Gn*ه *YJ lulWD&E!| I 4D;W˪g rc !ƪhtވBFb5ڠWMu#<(#+gekNC\vwm8\:Idd՞ʗ+=Oi΢N), 9Ak!mƞ 7d`$T5/Csoo 0r9͒MhkM̻df σ_K92H[D05t}_|*v*R`H8֤TH *NHZ% f 8DN",>O\;җ{ .FnS*թƂXuDemietʿ1Z_*1 &N)o|9ICX7c7PY4W}K<TټŤߍYo $բ<q5}HqdOha:gD2]%XˊL}ČW}NX_1A((ǘ/] !B yMmܷF#R܎Vr,ln2QpXP{k-<)~4"BO$e*7 ^s:hPk ZvB\ yu͜ 3hV zI Wy*$;>$T7HiY T2tҢN^'tz-7'Z5 0<N%GyoWA7L 1'ܹf7~udY$9{Gm7%N$m; Y^v i.ĞƯRe+u',GRxP섦&,w&2)jJӱzH0/K2^v䀻&*D'%~.la 3 AxY"Ϸ`1H Eps29cQ򴲡Ԙ[rSzw} BE)G,ɼKd5GhicM/D2m\`޾zM5ֹ=dGyRݛ0٘R Tb|r0JlwLa˖<![%pLVg²i3̕Z9(E&g< Fix`/9_Q+[}tJ Ж#9.mҴ^`S**|͇dL1ݛ|GyDuHL%}įESfr`0!\s `iJNQE4Yѵ B Ϩmh[A]:k \*Qg*RnY_N-Rj}60Hx~v:#9 >/PZXx}x{gF~@.Z.DaTabT.Y32ܲeHa.ӳP@:wSw+}kR@%[*ui v7w?nwKs͋ ?lT+Gֆޣ\Qp|rX݉ғHp>x_֣ A#1iB Ua0VWqgk0'GɆwKF('|AzrG, ?*eMZ [l9XH楬srtj.ZU=8n+5N WIg6S2!S#m!EkL`@cUwq:; L%L%)G{InDxCM*a^I$8 ?!D1k#U |9"MB֓J5YO StaQ)WgP{Vh ٪)wbL׃IYOD ]dU/@Y> O1VHGn[T a})^%3W;xRt.dWdh*LǪg4"4 BJt]$Xv1q"]IȮ!S-xrd$;q7k c4ݮ9tʴZdze6bn1ٙT"T08{LhSێ"$Eyx`x2# 4(h , /3_9OZ]#nJ?j+P%̔wa{dDe·Pc/;b db8ReZn wi K(0"u֎Y`<@K5%<ηah8.Jj=?lʺLGXz/]),>dN&Z3ʻ`UHڔ"pL| dK.'>+NQ׳b[ϧk ;D=m̺o=ޑ )// fĸ8G3?-o"V^JTx=;x+M}aH A@Aey(%f$9b3&+݄Ֆ(2z9j+= E6M`BE4>CӸŽꠓjϩR"_i3Ucˎ!#d-Tl-R5}^.e9a:<@} >WCYdQA3$+ԝFy=[Xk藮0N=bTrz]sS{5`_yHpKv`*h>-ehp9h׽svgL(}T|8}O_fse2bR vLȲ`RM_cMvP'j-: D`a&O؏ƿiTL哃 ڢ kXrJ+L}Pv(0qW[-*^o@}G~<4F5b,AWDT*x%qSXJ~?>.#trEy ~h ADopScls\\mxұ+EVt< @ã8[ 513fF@|ڽ&T>H3L,I tпNͣ3F rӊঃ㌪W!Ӟ!Ug%aٕ9ޫi3λI c:ьnRFή%$g#W'O|[' =.ݕUPA %?~W_:Se %Ib  .6 _1V8m+i6n a5կ^BN.}~9̬:/ *:Z MLJE{qx{X)( 0 eU:ct&A "rpiB ,Nv)$ir2tn51JexNYӢC-jܹmf=PJr|Fn槦O7p1uN{m c;}XC蘵Xm<8K t.e"|Rڞ< Op ~[쎍Ifkj`tH"$w)ظ_A%xoYr "TIP;4} &DHJ{4}Wxԫ!M#O?o@yk 6 ? B]eZxb<~vPj$5KlL li┸k\,BR2C>IOix-DIR@al&+5 nĴ'GOs!m)=]r+~'|?BˑE7C3BFf O#EͶi=jGSTD@+ZaNisAT5h=⯾^ 1rPoLXپ ꀎNBiŅǔAl8v`8kuڃA`xj3k(aPm nd/d(F׾ @ͥ'9f;Qe`C>M4u&LR^?kŒ85 ){: qi-FeM\3R$ZEwJV]#UAI %g&ex9X}@fB4q_~U"Ŏ%R/rI~a 5:e3I /y)i@?_K9I6cQCAqE9zzks"n )kY%M!P}l[vk״!C>rV!hu~*Do8uڃplD8^[8-a_ NR,NkJ\h7S$yi$ۧa)\?+fkF:ɹf6iU&6TQ(J~ZdJHѦ$~QұjQ^]һrҊWoS.2`*'_k‹:c,k^j#!@FVS7 >B.᪄syCo^(FюG ? .EFFSji[c1 2O%ܩ=71`vtuRU-ҥщXS|U_mP3D s Ue-dnzp WN4Pm=B=r!*B?"̏LxD#J'Y{#X"{fTΟ\H#Ϭ7lVAqh!2u{"RHc5l@#m\tWfPh͛x" ,9ڜGX󹧏ImBxZOd4_I]pc\N"7e0QUpM,LuZ'Į2I#hh?\#@3e/KWht c(Td^}_0ج(숔᪙Ƚف# veE=MYWLesrO!73[N:c(0̎r˜4||dkLɫ ~OxO {> A' *6?LO WwWm>yA3cֱ6쬐;zQ0zcEz ]~ #:VS 4h[`?1z箥x^fgeg1^/i"Db1^t*yYn2xF:eS<ԵFDEշm/p3(!}` gyEM(`2zǾ*6ajYcR'3DSGφw (;*I+©>G%v0e $/에2ӺI+4+ cpBZC:HzUR'Ud+^KOݜ |EfOk ["*!G8GէE,2OK~)^_t;hbu7)9y|Eފv5, AWqpwPA[0@bA.}L1P8?򭖨S |q^> O2;8T^wyS|]2s"j፱pivLBPI"O#yB!4i9wIHI)Cs|E'r#S3 nA6(&  C3SNZ.o\=B^INpx@  fS1J|YL'rsY`ƇiCG01j/ 8B8ko$ M-3F0ð).7?$u l G*ç!N0i#G+ 9;~^-8_XIV_dv[pz}Rs,G;>aT;b1@PQ ghS9DSߟË.®cbt h4ߚVUvBV^"ܺDң)6rb](@%Nb?#@5:ugςc Q; 4Z=^x3t-}b[(%  %E

$HO*s/՚#UbNh(ޞD5I;jA:LQ:{qPp~±wr)vUHPUCԡrzF}Muа-D%֍znX=mxb%R(Y_ajB3(iaʜ 9%%-u#XNO@eő#lH=׷c$kr(iE:UPjf\<.Uu`+* LpP~vxZ33 {} ,b)(=: Ҫ# Swe:vWwR-YBɁyKCخթQ*m'(a=Qb.D7Ӣhtq FN a(f%;c ˝ЉN.RudP(mB[s&(,3¼ЗAD;e{_h}\N@7ZZ+ᲆ*b "7aÇg~/%}ᄊ^}}q`b¼gv&b.͌JCReغt`~//{G8@Q/4y|yXWz&7iߛ45pL IšH_Rhm9V37@UFe3o4g= r6}\LpV% Ԃ1d!1\=$̦d=.KespЛ& ^mű*8ged 9@,}gOG' BSLC m\پ\?2akVȰyPO;?ыEtC`<(='P"Cu*]~F:Qk t K~KABM8^ \Q?Ҹtj4]پ /5ѽ<羛M{xw[>oz%~C(r}"5= ̧%ѽ#!+n@5!7^`&Ž3'Λ/HuHCQ ҦK/ԧL6G31PnTN"Cin#GP o$ NG&R|b^=pc]>`#Sjj k XOͮoqK[㨟.U_| ndEO@/%[wtˡ nKqR$ȣĺ`41U?X#h+GmhTnkJRbV ZVB/S28/D'R ÒXڷpRn9(hu`Y۪꤉*vFdq{ Bubtύ֫Ư Q ,,k"Ph:P򣔿s)^CClJ3H:VǏTxivw)/;J 4.VOi"k~kg-DZkP- ucsD;HLJh~fUѷci$ܵ+spΉ oF!92_tLѳV_ +phr#iX!jEz@& -r%.𵯡g?$X,JL@\{Iڮ R L+]P\f{QZN_-n7}ʄE'/F^ 7`HKg^ڕ #v4QCE2и87x[?'b_LLΑazb= Տf%9`?Ѡ8KS9w%3rLY*X}Y F4fF)ήà`)-`X x=}/%^M~+AJ!78@E+Ϥs2f`Z32dʉ;$u\9dӾV `{C&2 ?#`*אc ae{(v7IEcv~'yݎL*7yyqG͂ ECBwoDʷH#7b-=\\C fG.zV`96Otn%Af_fE8t0?61#13rrπޤhx-y0:Xkk86UDR N*n1m5 Ԡ\ ,Mm=-jh{xZ!`7!Engdo&.Ce>,ujCzdd}+|YWdVޘ8!~ޛtC(kJ5H[^nMW ߄3O8Ma!z${1՝9W6KYnN*ĨЀPxW$ؐ5MVIH37Ll4(M}ۭ-2[>󡮑 d.Fd  XcMN2ʒ&PUQ[N JByhCuEDXwbƙƜ:}Srl1dN8~-*b{Doe - Tg܏h(pvp#U)Lj7>բpT 餏m%oӞs _WOj)ʯ!'0n_<x~1b7z~ǘa޷$jVHtt|sƩ|.\AsJR&.LrQ,/ʹnTӌt^-d%=OoaV 6%``$\w6RV! j8 u<-O)A,@UxQeB}VI"34!ޗ{u#G*%ºΐ)4]'NB0wzU0:)+Țw/yF~bЀ=t-ղEC-Y&!b-Q=CARTEmɴ Fg3ΤDz\u kaϦ.&3̕)ҵtݏ$]QMY(אw .ʯ BժQ/^_Hm*~GT\9ƬG(w}s2L,evlz3eaܟ݊Sg׻#: BexHe4xCo&gkvuORCD;22BHpt;o1A:_VJԎwPjlI:a8#eĆZ a%Q2@'K?iڮ%Ki{l ~ᔿ{yU.epۅѶAJ>WpĔGUB tw7{;vdy!ݗȕ$ʹHUT:I]ju3 6 =+^b`EfM>2*J ]2<r? 4U3 |q^Š:VmcY>()ߎYԜ[ sԕ.C.p=#tD[Uċ)},[8e1hPx!|95j_!c+I±-qNNQO"ZhU !bA-jNnk +y6ehcDP ("O偼"4Xt)Q"i)({6S-ol+Sd%S*&#[oܡ͎dR/lYo*d/׋6Ći?S\ XrԬpRxH[Wn]X4+PBnJ{ƌ&!o|$x99z|a?`Q"ǎ9sEV 4ir furk%:?w-ԚQ$ uj)3 nRT^>L 7sFe6IgwUL 7V~&ZS0Yކj|GYf"r8116HT0q_> 7#]sų$܄o(+{>,u77N!w#(U ԧ|Tj ~\B_E9`M2]%ǵ%ɝKys9WյPO;vr$i.uQ+R؛_CKm /T%wAThū}vA/o#2W٬taǒXv2+3)4 ) G:>^=2 @%bHHMYRЁҾ^}m;HĂ(ִ}Nhz Aou,odp,ÊdW?Z6V}8_'C涄6rZ oHg&z0GQ5Kr(OMgt!'bgShMO 7FnAֽHݟZ Ծ5"'__XSkowؑ:fXَ:Ko(k=y@I_;ūk̋t J}hrްݓŶ퐷C+l{, 8{u ~ג-x2^7%+X^)מ 60Ygj+Ra-8 i7,"De9M6 P6:)UUFn'-bV6w(R{Nbۮ8Ե^%M4w`?QVz]"l.We? leU`ZP_f\f=2^2+Yܼn/:=؁Bş:׫%\E7ͭlkJ,/;PMaD ?ɼu|m3UICrUe[؂m]w|mF3$A:7QƊ\17!s4n ,kY혇sNv4|-CŴ͆|7ؽP٥Mm#^YO&6d )daq0I' & bGFI K[S߃_'<@ $+Pc&Q:[' C8C,7ho&⢲pN&t6MJv_Rq2.5ق6t[/C=6 C)['ff2Re/f#nXf)  J1Ah1UZ[< B\P_DSNU2o^#\e%I/,Vz9Ir )Uzk-7dl8,wK_;n65ST65nS,}DGo q͒cChCw ;g4y7 [W3)٬t,Y̲&ӴwGL3*@@oj"Tbq0mj%n 5 okm ^LT7?ЭH5T6.#trUOڢ/@hCc +5_~~V%WT"4#ۣ8iF.*Xe=nX4eqvyHɴh-7};MRt_FKR .j;kУkAR[_^cJy|/Hv܈ ̱M̩cƣcFnFJ<4W5U3'7LNjaK+l:vhd#Uɚq%;OE39T gJ#d1 !nø=_ I=GMrc?.f*+9 \$;`& RՉޱS`Cn +i!ni1;\3{^Y@HɦmW͗hn(ĵ43{>g\% nViBܹV=}#sKQb/>h:2 Q$5)eUw3-Hmrg g:okp3@㸀LTn {X)؅=kuUUOKi3AG)=Jo (̟iy*/ #:6a[vu[K{|(s'23W+E05zJJ:"4z "wepzbɷuFVtQ ׭xtϹTnpE?I-ǕԤ8*n_,inШXbN-mm ֩"?0"Hӹ)p&9H{Q؄B/QHbʠn0#&9,)VyRD*WO+',Psʖڭ55yъqꌊ Su5;Y'\^*9(=PG=Xeelë*ەxajAvTt]\_P '~=^mMjΤz~-A*qa[L26Ѻ]ZEcӮ[\#X=GdsqVM}?zW;`t:uCIܔ(MMJ(δ]I~ʂYL~e[1PزBɵH':l'ȟuSJSc_ jScy o#Ͽxs0,1U }rÄ޶0]}LG7 ^&(WÛH:U٧a}ŰqaߡVbJ/V)?(=YHu,M^~ɘ][yZI,."t];z{7Ѻ~F8_7R5B3l췒lʗTԵWUlؠ)HK-_ili2 D>ʩp?kCp483*UGN2d"*^ 46í{С_nSun+X_θ^3a f[ ǪɛeN A*qmܬ8,u \{V1\VIU.sz({g^ΏDƕK#o NcX:,% at/B]_҆k]uuofqw u n5p|D&#Sz "&M*~{ϥoߜc^EB0Mptj2 gjҌahBrP1A{s9A<'R(0(y,#oz핾&8K:$a~W欳L|}qE ^dgԮoC]U *^"g탪d{:@/U?8g}s=5EBsܐba*8v/joj 齽Eۣ8ώWE2ʧ #wjkaAY# ]K?"rӥ0Z/J/w=Ɵ9@= 46'x$)_VF(6yMg(G%f`Φ޸CIN#.i 9WUCj?|A L!SJlUp2Y,0( oK6eX-f-S1 ۊ VL6Ut5#wO-6<7|+T^ "w_ܛE`Lv l5zKτyqOI ޸tø3ds)d$=ڻFw&Bb\A%R:VH.[s]~?-&%Jٲa{69%OۛUhfi6q%y-RiPAƗ})Lb@DX%%DٹQ#3ᦩ{ <:%/PjOһ;N~ND(E~ ۣfw[-vLxMF,̄0œfŖPQ}S**ˢfzƻ}CufqL _ KTP' ;OiYB/NL#8`sא AE衬}%x.SW8L: vnjյh= KTb`3n$cn0k^0}>RuylNW!9xtt!i/׈$Ԗy >ew<^9Z-=lm1&߆AV$<G=&%Wg3QRS/ fAJWF9ԫ+gxHY)62w?Cl—(XKvwIZP;ⲷIMXg"@: lıC\QjYa"y #dJ%{x;Ddpf^3IOՃb&Ux?zJwThY N}Pqx1p3xxfd+.YSHU`6$Q5<R 抮n$O_o E("ΜrEbd}g`{16E^jͼ/ʱņ21}V|PFqBC0 Fg;F6Hq%U?`T7_(~%r{kٌJ~`[6J/@J$T@mʑ),+>'NϹ^)hbP.;hxk`UL\րXD ^2;.00U15;҃}){K򎩺[1Slcps>]I dWu$.>i ׇҒ1=ғۊN LAVO/W~U%z˜\-*ٛ3s&laؙYpn>:Gr>[c}˞ NofyM }0רD{̬7.yd_{dvTNCVGe )PBsWIHtyy"5~h`P, llRPzǢ7?V(3"'lGLɡ[wSIP&Zˀ~YS"y WV͛,ڹL֙ O*2>=ȵE =.Y U*>`Yx N`")D,F/HDr!b,*X$+D G-YG_+.*Ɯdyl(nk!9f2s?X)e WҘ_ޫB8ar0mZaav:M JZ%CGbO>SFJ8A_>dޤP2 {W 2F8rkRWpenL>|9~ifNI^¡!߯&z4OD /4b̅τD諐zkJ|H #8YMAt[y/#)L#΅y\TDrQőUbIUekhO:a0|6I#S;J6: };VIZ ]-ad˹o?ǿ,NUPlhLIK(v3.1@:ȉGشF"-Gi' 2n%- ?3'IHٽ\(xlFݥY'8=XVDͨR Ɂbw)U%\JR Ð:>\]9R$v螩W^(6̵$oX/^LfoO) W1x] D a ( OS# FmPaB=cKU8[Z]qycdh|:U5P1J>HWoYg { [oӖu})m"E[W-R'H)9fK 4ήN@Y.0fݗHSIyܘ` (}-= &뾃_}Aw;XFuB`L%cELM6|?NRJ6B/%|}:?â0+~T[(Ty_.uyok8KWQ2<5'#2ZV&;ꉞo[Zr(c#8Z M,&<ϷʠmLn#sW#);OQ^g4 zpxNI3Hcؿn(~F|! ?O.:C?$>}(7M c6um+!R>w[1/ f*xċ[蹐>/d"?|ⴲ3m%iKN^Dȳ <:]n3;Y6k{r;X:SA`I$p羶,HO;1}eբ\/Jn/eP[3?nFLqɡ*{Q >-Η,tp4s6FcʑxHLd`_`d kga}͢(>xҶ JRk38{GRw0^αtɬ`t0OJwq <T226.R03 ًNA3=Թ6yp)}m+,c >:3'if._! }yvnKQl P`['N]-m*hm2NuZhhE/fkƯv zYj<]b=,QKK'YS 2 HdgaǬHD_Ip)c}+х=>Dždtÿ%i)Ve6N8 f@߸q $~O+xm'cZO+1nMi"s^O:NRB 1mă7)sWY+۸ $|B5{'MdvȞ6i\x zGא5 ^d^@oG`7MVE)GOVXIMg6vIc -nW+{N2nGBF:OȭlE?~QDѨF&jer ho!Y$ǂm jN)67KX0۞CwJ1jHN'j"c}*,5&J?I=My-‰5c.B@ *&"h2:cn0F7k <9 ,9 u!%kk-qwK%G;VFǔ`>}i (b9_WK= wS{UwԞjďnq&pB^UN9 ۶ž{Î/I@ (C|L3a~Ζ[☛l%Q{ PDMDap2URx[;GyAtXcٔ@nsN6Sd0f:/gxࠗgZ"ɽ V+ՄmlsgQn^fxZpNzlK }Kxu]g*5чu߂E~|J21,>v @i%>p3rvHgC;[X&,]`wZp-Q#T1Z  Sdݖͤwҵҽm-N;Z=Pp[e_-߈Zqx`%FOHX)K|XEӷCZ+t SCer=7 [s5_; uBhʳ6;%mU]Pi8+s2Ðph2q w7;6[q;?*8B\'Jm& ]\~L`~ܛ3/o(V_U޽\gbhrd C|p|G֦X_OQ g#[g|g F`e t& !vx{șy8 ]*NFT/ ۏjU溈J3Bone j_hk1ggd-+Ⱥ3_YKvhΥZ2#rȇ/Q(?ѳ`ZTTT u7WaBK77s*m/ltZ 8dn /\ڳ)H3A!ՐcWv$@9ke\| T9S9X-ЃwIo hR[q(E*.zŖ(JO-m]'t:2xW;}'Ezx>K#&kV [ay7NTRmw=ao}iŠeÜ2V"H"EC~{U"*D(egڵ zK)Κ$2`47"cIZXMDV GnE$/b&٫(A2*8ڸ6\ gtb~;܊'0w\er 8#<-DZEw1=Ph*YWԾse[W `}LC~M RѠƙh!>N5dc ,rI8]Wo瀧ڿjO hGQ bQ2G\lJ ?_ID'3~QP ReÙ8٩̤>XU I'5nKmO.`a])k %Yxn`?gewmOͶA!ZvɞJ%k/9`N%|(T,PZqW]nõ(z \[bTMkR'rG"]'W%189]f2F#k* g :\m$_nxZп\h=~C櫋GQO9RXD:^wIuR^9_ ңڱۅ:׵߱jȝ|H϶2{庱v!2Xӫ. u|"C`jr\wri0Ѣ]HDoC^k9_6Nh5CY xګXk^<pu M?tV=`DIsNak0`zh: oL2{iM0P 16jZLkOZ^u:UœgbJ ` }WS`]ĵr4ږ&NҬs[!ҹ43|JW Vu/!­bI`*| n$J^~:n@^"DIGUMu2F(|W66 :;Wh:BA) XAd,{|cBVqwBE}3g}o%w\К>Cdrw:P |{dF.f)V1Gg;} O_\3V&|Qg9-dDjE&JBTZ+\gBҾ!< tB0 7梻r:&}jN3nchߩ E+)#H[ROm__`1336tj랏nZVe<Y?fF0y"VhI>NvKK5b^u_<h15pؕ5(({Pu>h^ ~D%#V]rvJ3`Ys<8w$wB*)KRaW:*P3vճ6CeSp7h jmsyl8!yjiL{>$&2IX5vV9݃bnMACCh|8ϳ4*6eee,Kl57gnhj6E?" & ˪6ʒbZg;q=2ĔW*R@}^j:;$5[dp4_4#z;lq}Bz-ş8U%,r?Vu9LXǠ7$tM턤nh B%L<Rox\Ο <_YPWo̵d3:UXw(Yv1` j^9 AjW6/Ͷr.z"tN9s?(3sPruMG9ھiX2%GΕ\B)8^GL9\ c_tt{Ԥ<ÔA:&20lTXSOژAG*4B'يTB9~0}ɾYsLFt#nc`FlܦC|a(6áF?,(g}Q<`)|!q6q6=JQ{1HMA=:7 xy!pC)`D!A(AxfZE n⟎0UwW\UyvenW~GQ~-pV{#,2F> CdWTu㰺K@vKzh}%m#(&y珚j-`J85O>N(s)yra2˺UF\obM5w8|z? YػE5iQֱf/P\ŵRm!L"JRf&w·đ8`TAP}(jGjUdۦqOt lH]'4-xl##+|UsL @$ d>Q7~>ϭ %֗[V>;nqHg n, wN~8kyM:(~12A B7p y$44!`Eza {tS%`8H:v) 9Y#LYwnpM܎Wtg_*C_,{~C}(|'f0bf"Z9qw7ڟ$-UQ Ŗ u%2{˖ap͡R%WoxU[a~F Ǧ=r`=A$l |0GNi<rЕW)e*O y\rd3ƷTtDŽ'SJE(%B?r,zN/[Xw6jp&>®`gW[1԰rku_1-xpzM,ێޔ'QیYhTt' s!RU]G" UkO!)y~uPbffdp Ѥ Q"rWIߓK(2S "uU'1Ni\뭃(V]֒uzu8!W+⟭aq`jDS+W0p™^K|Ν^:8 G ]}@w(X192n+l J6-z˜f XsJ1^8P F.0S&4IruZdy ^5](CWGDKR4_Q6X?Ԯ&FdK Q 9O` fuDN9n}[TsNY(5IN+6d`Zvpg:e$(`?WV@ݭۡa&̛c`7Sh] 맗œ"i3KCkNZOY9l1#QhH NC̥~Gvb):a:xNXv3">d]mM2ȍY#hMi$S|ʹ}ˢvEVadOW_> [viGx?$n֞Oaȶ$iIF\9ֆrnUYZ+ zW;'}sGβ,\qր*N_-*,7Kg6n d`*|MG92h ?O5TƱ]7l2Ee)su𣲘O)3,!;9簰4~y$!Ga:T^N,6ֹsܼ+7MA%2wN2JWr_Qc͂5J<2z6ϊELKVQ9U|e#$Dv*.mDZ°vT0߈ϱ̮J HG{Q5R+V+{„'S.Ϟn1"p=?\.ΞՃў԰h,``gwAߥvOiRUN!m汄%w&z4 mLΛm+H\;旣2EW`Ϝψ/ 3slT] 0U*bA_ab?s}6tݐߗŖ躞<{eݏ/NŵNQs sY ;wqpM5kK!FR$/76&2@U3+?! E҃ pp/?LGKdq2ыJA97-}]a8+?~ŷF N69֤լ mm_ՠEŧ-IUzqj`+e@zev5wz\.UEfȮA)jੁX] .$83Z# hhrrF kMǻR8Xj, }tWcT`%3Z@Я{87(sMZ%ϣNOhL-Sqn <"ta5=!*<jWkS7Phx+&m\0ru$QP(&N2е4 .gqwzgɘCN0.Г=DJsL8,wJ P] |GYBtdq*d?`f 1#=Մ-p#l#G4/4hd83nd;}!.A6P$P +?-(sqiMđ#Z`m1%b^Ø Oz6N-7|PElU1|U=dN3ju|_/9c8,?+Lp5i~Tdj` 9}+k^4e⚟֋GAoZY6w5kɮʅ< 2\zho9MO[K"9:`'YEMr~ J_+ % ~',KKVpD ɟ?>@_Vv,:z/x5 }?>EC I/(|0. }Dˠ( 8м>i%뵻Ga;f f.Obkh7>mZÿYxc Q{b6 WL)*ڽXR|am䛕'.r|XO7ݑ~b@τtysC ESQ1 AO>I:[w %0=L&?bFHez9^ZPӥ*&ӑ)բvg%F|sEDR}#!E:B( | }ؼ] ;]@E[9 LCXb)0 [/A_C 9'_&6Z>qhG~=Ϝ'-WiTpQ m-?VdaLi4˝[F*CZ)2_Mn+gC є=zv")XQ. XƖAq`=K /w?t )dB^:x3O==4\<M]J~uq87h>FB'd&v{sthL2xu#gǝD06g2#lBd0K<,3Ur!k56S*Ւe˸cVnBs_^H[n@\@Fc_w!JϐT&M"E3@ .d?m7>1Zy GV 7:e݄ n*2V[Oa3w/<܎JZ?&\Vp ^6ЀW/ Cw|R+߽jܢ@d.fNK4L$k:R\t8~f53=̷4_uz6Lskou Ip%↢ŃJ9D WR6 vܚ5R`fidK^5!+|N?z)"9.&SYYF?2+c -[p\0 Ma>^`nM莚F q1:>׾D-w0׈sų AD(>{Uux "I<6O?1T7Z~Njxo5upa&qJwWp?ծ?  S*sэ$/-pxmN ZZtPˆ9&Ѝ z`bT]z~aWG)G`5jͬgwM6:1o˱eO1[`kpR&ʣzfl\wn63# Yqz5RS`kcy4>w@ٰZ԰qXtl(vN2S<.Zj@!BZGE1uN(쁡KVR`\AoCDU] p([Rw?TZ]aЂ boܫN4UNZ'ޕF'W_ǤfRFVRBhe1]/#j[ސH0P\fL~G:hݎԸx1@Ҧ8%B0 {ˤ5?pFZacnM@JvHQ̩<궩inףIcnK_)CHqie\i۽q)tۘМaQb1~d$CC@yET8'oCr&-UU$ŗ̟}f =jep=}cV.-b 6&p3PYYی|'+[`TwXH|{XT"eNN3pwd@FԖ"*ģ.mMJtV_ KCdub c>K?v^ra걚BPd{zˊerwB'tRcec';"IGHsnFQk6M"Ceq.+`q>JY ?n`BtΒ g=UDKi9wIc Q>St-՗fy8..svGpb t:p! }łbɒN#ʙ596وмOd07HK(4"r#v5J̍Ŧm۹ņ[̋b[zOww~fm "<,v}GN|Am cML%ȯ7.j*) K P:Td/~ ֳ\@8;ˋNjM炷H]TstyjƲ-J5E6ev+Ukߴ(1Ҧ)ȜZYK|9"Magdj>+:\u-:5&ZS"?611餆vSG:wk@@]!ܰO2PϾIsAH p5x}JV#iNO r$*>HvcREm0 +k.acYBQsxT!$)DD_""f?8.!Kjbs}c(nv&2Y2-o[D &K0K-=h˲/Zz;;K7RrX4e)rJzr8Z2_:I]7;\K7b0(">z,7M~k*چװו[:6+?R]dN^Guj\teM4dx?)^b/ /'/PRNGr77rEkgAR35# QsM,ΨJ@q8r y Bv(0Ϊʻq!&ޛcf.&uُ& P@:l؊#*5Bvp1u`kx"K05kȝVcA][+|6rvZ//36)PWD], DUa Gjϒsן2gQGɟNOZF )Ħ<8Y? -j}y̎؆p%_M]-R~#g"{FMѹ,@4aFnrRsaO6C78kQ?*N5a EJ^r2{kހdn{$r+Q.o$9r9'4X5FWy.f૏2  b^#ts)@3P{'ugǫ¹@]W\ڍ+5eM;K1‡׺!wIHpp).KmRE@nr1(#C,)sJA}* >A^7pwz%=K59E!jJM <. #Y#3m5[Vyb?;NB=C)k88R'ݕ%IN5 =/!>n]r uw] vD$:Q=u45̅tx))8T}h{+yvq-SN;Aƅ|ODvrI r.ʋ/ ż2:g‘m ,-3jEԭfaoRʵ~ lN% d]t]繛CW)5Q 뎜 6Dw'@Ucp*'L}66c'+_}vA.gzŖ"%V'TAlCC^JFpߧg#c%i9+x,OdUe6+OS?kKU$27ì2V萺l4*b_7G2Ed0(,㈀ǰ,<|@Z"W# Dae\#lLuz\i)f^fތn7t˘i!OÙ Ո@Cmvѡ&YO>ZIrao XLydvDLh/suF d EⒻ)[_f6(1 \U˵k `,@I&GkސU~~PkP¦~."w~<[z4׀< T6&sS:_!ܙ7D&Qqc!ec/PQGR⨹X- Srх-09FkzXpؑʯ9Q5"_(44%.EU\Y}ۚ0 }ms£8a+,;Z`"FP .~U]bzT7{nq! Hf8n [ii jxZⵅzJSQ[xi3L5s+GA3c`Nns9-=9j<]s`Qub\Ṳ^KmA L gj@KCTW5 va - N/r71n5(8[[prVHB{ȋ l yZǞfMV&OA|N7fE>@`%~M(V5aЛig mc!#f' 8$rywG}wݦ[$(Ա+I4kꁩ'+nXzp|5+lnSVҁ6reWdzY^ju2TsO]ueNrVjKCN jji O6eH;ÆvOHX.(`1!Kua5NҲgEnS#+;мz(TЬq`EUQb,xӒr<ǸiHx6 wώcz1$qKf%Y BDʟg;݀_ؼ8Jx;DKp_ȫ&7'2* .p@|^t0C@>*@kX#KT&%}K~TjI}x s͖?i{s.En[Jj%'~LX`S&t&/cV2v%|2# -(\@B ?3(åe1·edE 4Y +41[.!Wa[(m3 `^e49:S_ut""@[4!NVCrh[o IuqAs{.K@Oo`Tѥ&gaDV l| c:5b&)3Э_5'^qJ@QuYG`$;aW禍-pvy vG_uys[_d( f F*4ZmI&צ <[>l+;x4`!y͋dw+d, 4Rll쥇ʆlh3%=i#Bk!& wL(f4E@1Nй))+! r4sutQV;J;ܴڊ>(.1ҕ#Ŗ6諴# ,!GtX@Z~&ކ:aB@0@ Ѕ*RWj*U;vىw-tXbV3Ku`YbSsU(C=b'x|(P*T[ xϬOK̠c_UP_@@$8lv\9ԕ/v m&u1}nt7o U@$#Q>>8tKDDB nyl%x0~#^/"tFke/{q TJWM F=1$4pzE49҅_UsO$L䇳'Ld],"$w> .iz4`,H)fsýkJ %`Jx~s MIԀ`9GkecR;IcT&Gd% `C݁2x-p(V8T̀bv^[u⤐H؊8= ?hգvi k2-%A[DYiYsvH<wfdѺ uυuֺr)eӠ}葏>9vqqݥZ{ueC?oĕ=_p]]Btz*D7BH"rGX7q#1 30wGl8c8ҊT-&PX o$IE : `6yd'WF+I'paॄ'#J%v˜{`i/Dp ^7Q<[^BaWpS(AKO4^K\WY U Y1kJrPxT;yъb3gʆ>(巙!V(F,fz 2dpN vi12 x9\ʥQS4$*=Nƹ֒l̶ N/3t[6*V[ҭ.#5#@m S ~&LAޏdPXSj}y\Z2 Щs8w>3QCdO:f(wzXL I>$"1:p/n7"G0A寜+Ǻ#PoD͙ w^)ל4M>}0hOa{W .tdJϽwݸ{M"o328UQS }V֧Z#e@HlRBD_lk,}s6QX&A-Jl"Ui_8 LJ/ dk7^hw龜$J7̸?<}ACLJ\G@&sntpt' } 8*1 c%rN]9.z(lDRW5iq搧d`5>SX ֗wjCVkqαT$Iqp/vNu4'8C-=HJ ":UfI]a2 `k re9g|Ex|ANȐx Džvի͙I wjsL)!iܜn,#vZut@;-K'8Si"X %H0c^.ijϿ~_LEe>w%ZZ|\Bp6:vGƀ~A(w3 m%)ʱ)q5{ӟ΂n(*Ibl{ju2a.sj:QZibX]^8fpfN8XWa؝9g_B]cw r_Av6J}qQ @hkI.MI.,^90E O5 Nfy\O3{QgαC_bevHWBYJkqlX2hK=s(d 63Hjȴ-We'EB̷;H&tC>Т2pO@5Y ׃׍It2y *O4JDS|WX NYŇz=BvVaSoWE} e;D$7{³L/ Sqcz[wg3YS<5n =ses4\7DU?Iڨ pW!8a& Yebԅo6D c|6YXu0 7CL- *X:Vf 8Fu ѴW9T(ہ#s |$ީyv@[OU_,p"De#ZS"oȱFcA,ޛ䓼]{r=lGe6Dn%SeՓZ8Y n4y{y0^mB2ϫS L쑫%^vPSS~S2t$B!VnîZ٩?7_gOfTX1Frsb _{p'ٙ( bpT6ZȤqn+SS}czւ_s_F`B9D zҮ%lrꌮ(MS= v5)06XsKUs>=&'(>4DYDbrs @ BPz.{Dl#IR`yB)u܌ΖX0k=EWmzO yv /vtHTcUlkd۶`:~s3([`}"")Y\F"Z+aZ'›iQ%Z+,RQb-_0>R4I?N(<P*098&m.>,Roa4NƮ\)fd!\߁5G)&FoT>x^IM 7}fxU# "n77p[:iM%sU|cOv|z&YXG/UO45= 崵~k|ujK ->:Kr(]b`%kVWāx|4h&[z<,m[M~cĆ {`p&EִT#31)q\F qL5EA7kzl7;a ܘ{{ T mlT3llE;4gkP-⽳%&p5*!6;3XԃZM P2mǂ|ސ KIrVvhA!|Y:|)>L5Ӵb륬*'9L# Ftjz YŶM1:$(Zw \4:O #pŭVʮ{ʬ}ӆ㺪Z\ݱ$)|#h.[egM +TFgy滓Jc:&2Utb?ڜdEW^ԺuD)0(8Ə&_%r 'NA8 IOOO2ɽV2g9 踲b/ 9]dkGLlRMI# owoxZ.$}!HNKFE*Hv?O%^г 0H}ͳ4U@okvuC?+^sU+5ŅvwO=> y9aib\Y`@\9mF,]'燈R~ZAeک#95.x-#ZS ,[e}KɁ>(CMv]:N5*.3)6.6{n  H[D>^x׽C'm.cͥԫ`eϠy'j<)ՇpWfJa{=ʰ[57W&#WC8CaOAV݂W6Hs?Lb] Qi8Oʫ i'صԆ-͑(j66ǣ Qd1"7A30O"AEy񉅱s3tLd@cޅۢ5>܇ЙPd_MX,M/c}Dٳ(2xp1$zpmG(v#e5SJ?ڋ$?s|BMbkFt's8 ;S6,L O0#fC_dI" ^ 0fŬ*,#giX뽦ccS>DPR\}]䋏I .\wJ'=o=Om^EQ"!HT(Y@-5S|!W);GR/Ap`G's[d5a C_Bמ_3i8kuXQxwZ7󝗎B 5%k|{߽:NdN៶?e<~u\З(@WRXcx,Sib19ij/ġ_[z:pcb|T" £"=Pm!~(m aOd<6UXQʂ\v/,&]#v;rk[2RH!4۾ޣRdYɔ[}9͆3W H[XO\R9b2 JXO q,5y +ӤNsٛk@^=?nXTCfpzj[]/ CԭPuCSJz-[s*Y!7n ?1"UX3I1s)NiK&筞 gm]k=*G"YWx#⅙ZbdW2)GĶ/қF-}yG@'X*F(y@8o7/”t:xPE͐WN VGz߂3h·{bҷ`N`UW2kX)xŎKH}oQHU58tTglLCm6ajd6!.3N3oYzC VϹ7aĐѼ@1O:3ïNg>e7c]dޣOםI\ @.hhڇW hf"e4-)ٓߑܵ_ɤ-`o5d(Ѣ ba{:F(eCOX$"czMTodxj1d\?BCbXd?vMUM@lQ =ݐҕI阮U$lEmpc// d>/  ˀ,-߲7+.scv?|${BJ`)FVOJ\l_lyOZt;3f2͂^%SE0e>_Aj~V2#ln] 3sR2a1^/n\{zWtx;3=碳e)[:6OHj%vhq]]{7DWۛS`CvWt!vAhkV^pF(cd;0* Q-'ZFat3(Yf_+6T{B;\+bl;n{PO>85d3}.<;1ČwNZ)`N‘̗x³k>%ULa A$&6njg.lFKc9K;pH´8d%x[gP9TBמbY <#5Rb8QpNBiu #TDأ3A7EY3o6vh)k@7|B,1wE2Ix.|QjMnA|n6' `_\F-ץ+PM!;U^gX/dZu@C2xi'3ܦ姎YGdqMN6@L!,w؀F=2%le>| -7c$ᮙf˰viGMgÚ: A {nf֔ Uˏ׎hc{ia l\;U7g܌6ǐ{1ax/]-xll72'dMc2>|qCp}ؠdNt62^_c}Rv·n9#>04Nk =sU&/n'Y2٘F(y-(0Ή= %_gACw"Chϟћx$g^f)LӜФo7$ً{RB\)0h/ڃ֓/UiET/)Dzhr!H^r=x˝!*%kflwCWc6$s9kAZG"H:i&"VIl o $;EO 7;$qmHWw!{cQm".B i>ޢ B78+n#lNQ9q 1a[du~`MD4[,=%/{,y {NOC?DŽ[WH~BR10N Ȭ@'.Y(Vǫ{ň *Y3tB%O:,}8&52dNG;r5u􈨇fGxM~TH]0 {GV#y2(8t9.q$t<㷼=,1*=A26UT7N)gpV~ʼn%"8Wv^(Y;a|FV tG>N#vl^jp¡R(PK?)U\Rf[ ]îˢ֩=F0GsqÒOalA1Nd+%NQƶUE|ýT!9f5qȦѰut1F5(a}f0K$=U|cwNR{MA5([Ķ~e2oqDq^Gbygc 1Q:{%ޗIbJ E#oa*a< [G`!1/L>xc"=2xu1;pIKضŕ]i&[@2yos`ll.2do*1k#C[F5U+Sq3'ס DΙKfwld:#TWAKދd힣ٕd;s0SM$ yH+TA//6AIRK r:ldCm ]pʭmnT!Mq"OHzT 5缉ѭ \0U J<#, r"rfѡO'Jf]O:I{1чlKب3s:2ٺSK@5v2ք?VRT~M.%=oJ:{V da"CmF-t_ Q2g_xq _|FB!>h !e(oƧPK':,;òxX0"F.ġ$C<ɖĒ` zN'`ڝC7E&  %ⅨmZgE}wcef;,!ݰ4=v'*f"FhnC5jZ5A@T)k+`k'.ݨ@=v6ѓ$3)#7}#&ƯO9e;(Az'B&%S6,x/M%?@V>(i(즰JH PdM V;Ɣ14EIQ_“ijjda"aOpwhLhC7ܛu dp%s:~m5LM*1oKgү[Y`/{eT粒s _QjG!hgT/!#f:A Ok-~'%!hO&~BLucb)E~Bx& L*3,]UL{gL|ϧ"0(R.JX9'oa #ysf|ζ]I;Rm-"# Xh9xET7I|XDn-r|| sSu)\ѽ o x*-l K3"Hv=J]D v'j; t[%"¨'\;ae,H4%;dyK^Ulm)|lkC~*a_<&uz/jr)_oZEOMd็/ k3˰ Pޒϙx0Aͭ[<_B%YR8V XPkO:pٜ\ 2=Ou\&>v]@~ d i|C"| 5zƃiY<\P:8kż b,7*0ks rCT\ .2 ee yϋ b"s"sʗY*ي ?E#$1Z#=ULW{GtO/?[A"d$v%ܛT oB#C\ 'PfUv컁V4Ʈ߿df9prch\t[ EG$ٸ8B,ìgO;zR(uLA8ȷ>5˭f}O1l " ¤Ky~clj̺#H.ygL' (rVVx6;5y';5H9oS1%pҀ [Ɣ?xSdJ(X!}hW4Ca8(I8wt2z!rj4ʞTUQbCt.:pinGq LԀ 6ݦѭqETTU蜋PKscn?D1dߚ#6@[T> m٘#+|}jmJTe9H^>$2j :nmQ f{$@fMHY#7{S ,g{SF~m1 <UNὰ W-MPfAY"`8InNWa q 3 Ou4J%l_7yt45ejKhȭ|2VU ԬVz7ߘU 9~zBol!ɇQ#~&C/|Ql YKHtFfCj׈ܼ1֎*hBY1Wk(CToUGWou$ '9X_$mrS"&[f1JG5[J9~rCM-Hjک#WR\h>ZN󘰒pm~o#%iԔ(窳RkE:=pf|B[<$`ټ|5Ԑ0쯗+py7z$"_#*٠FsP a$Iz}2K2 NUp}OY5]Q=gxpea82o p8mov 'd52)R cQ{h+Eb{ݓ8wua O?ixްeG"a|VR}ŗ#ͻrUђ3^ #c\dб[l$uФct,;K1f8pCHEӈ:[n{?$]GYIߓCev4;,$#@pGkYẃ:rHLůxzڃ: zeMMy0AQ IЉBTb2А(lG@@lA1E% gE/ 7#3o]өp. r{H=m줗9 fC@D97@LBk}FR{j6r/ˊarW.= Tņ el(])|[#XVQWbL&@=ǟ)Yj)ŏCʨ -"rt!%ws狠dʕqn0}Uҹp&PhЦkh+5gUe)TI*:ECTqEb<`YK0эDl*[R#iڛV&d˔+6;Z%z)ss9p'0?vu>-bCa5?zj匐:#5eB%+ nDRMo>'JU7NNƇq"[Sb%ހR XqU;QޥPC"42חpВR)~! h>3 )j̯LӸ:3xn|M[vgd6EFGEbՎkK ɤn؁J6yTdrDBx?$¸BRڂY_q@L"J{zp\Ml03L!$a4J؜-x4uΌ6 HVYԨ6*7@':40yEf"iRjBۊ_/k- oH:, ތkR 02# }E!ϵN]o|)'oyg01g ߘi9M؂d K,|(vRDF^KڼDgHЀ)!(ۥ`VX^܂8,,|͞a\ͦ8Z.8]j|ѭ{ ry"ձq[4=Y("&] \H'5kxeӓ|^pNR.dߤsB\S]s*v>4!y|܉m*Nxn\kG%ys/m\ xE /ˍ޿`'ƃ9c'Y@Byj`wrX?mʃtb#I*- xvQ*rcc%3Y]{Aתi.0i }~X_}ڨնIi7\t[;:cta&-P㠣Z9`]tpP1}.6rDׄ,S₻.yơbj;f&Ls|iLn`J5מ8?OjkJ[ 3#JYmH'_]B -d0p14cnh$!Bn s3NOu>MSyd%e]GYU/Z'v;;5 .OGXI@l brY &9Ay{r2 yqX1_EG39ZNSf )A;8s5bk|qo Q/ʈbTqm.=:vp\dp SmƅQȕ&։;,˿Q"_OFWՓ@`պ7g~ ݕ]nM?.ٙV[, ɵ9ڒÆ=gÆޕ!"DյRXlLlO[42ogǗ,{i.S5٧R՛ &&LY1l:3ܼzycW ^&mCXqJ$R{rOgw0P},NJ[<T~^1df%L~ک f޷ /!6lkӄ1gɛ"Px'5䩀1&G({=hXBn(᧨pÀ0)) Qs.s{ Xqs)`?T䉹2dgjS(+2j<3 7z.pM} ᦐDP-݉C_9cNJ 3 m=]{]K{Cp61zpWF2SµjLĆw?,q,] a3Uܳ rN5HeL)vaX>7\i[g ޿>њo |ݾ ޣI\X2+;~2RɚxijЎ XcמҎc,)8S 'uJl= !w165\x_K~].82)z2XooKtUq9O:ຈ2d<1 &dMT ?'*k~(ȡʁgA+zyBeϫ~3,wC1\[D;e-6RG~^hhfiaQUhr0]# YY ''Zhvm^bȨ@ڜ* d.:%R&szTZ~=N9z j: COqR6pq_ @W5M@i5;[1@I;&^c  #)'9-R:=okyø;:<4hl.'$]N GXeѪ_Sq-!TVDIuHTVXI5,l`^;^v #3D \q's e1F54ŏkw%2,5/MG7Ո>Vޛv|˦L"wzg bydʌWM$b+YS j=wK=O'W_z_ ?P#\o,i@LA["B*Qúf!/bK]p̰B1< M&`5j,=0)m7 /ǻ9w2V9/dD~g-${VCp=[^W:@:ȸ6\H=, BR2I*4Zcb͕ZjP0o섡}XL f'Ix:T:`f JKxdW(i%*ÚxlCT%Ŗ% +ƻ1eIaPF^^rY0LA^ /I2CWrXיPŊN2wu@18]ٚn%EE+15o݂pb ίOS (b*/fcP5p6H«xC~y{RM04Z-}F*AN~7մjlXpa²vW~,!n-P X^$T)w~ *mILȶ3Fl8NΚqoyN U ΉB{u| 1RFmÑȃ/V>.U v-ic<^ (D8@AUF"q)pn}{*i[ B$a)e3bU+끤RXj逸Td]bԩHI Tm[X{ ̢37eø*((m [(Ke:2d<9:;Yl7u6-TlD7^Qo&?%LNJh}~4+$h{ŀ^V и6 S6yAtr]řZ{)Nu4G*a"Ӭ5&APp۩% @ޖS˾jy)Ϧ54h:IBF|z\%Ɤ6d~Xj3cS3޵AlI=٠¯d[Y\ٰF0rB$9bjc+(Tt]$B'hԵFa@ F%Jƙ42CT%J6rm)b1]k},,\-&cnp/7c{cc;E2-d`* m 88PYA~x:~ߺY}V1.e6nb:+zIQ%k\U[KcttQcMft(39X Ъ]?zN!%@0-t\콽a c[#y끲"=] tVx"9}TTDW=Hyanje꾓*o2oBk$*ݹ85H0eMCF\۶(F3m~Ѭ02Jp+(NU@'tjJ܉wAʬVوZ\ck804Zc*U`u.pk wV517q-2uavh>wzpwg ɭ2*s"4>2!{a+}L~Z>a#+w>C]k&Rޙ$l57 ɽϢ;jLǵY Hiuo=$xx3 0 Bt]zV !Lgb]g}baLґ8SSd1Fnk/N)k_F×~ =[ E-&Sf'|=Te*,=ZjFdHHS3މ1;IQR'+;7$ v;3/XO6֭`ZP^/ %tX aWM܇gzݫ{sLFa2xT+9%3/I0˛e4~oU\a⾨31Kgnk[ćVYN *m h?n`{XΔ lr:Xͷ8咪*wPŖb>rK/*϶bGꋦ~.$Ϟ 8e/T:g%/'ޮN8iSjQt sV@yK@uZik4 r5ftORRP88nH?_ŋNhli(j]fyV8c%%nVkohԵH.u`*i^>`3ee?OήnD8OMH?IGGˮb(m1\#ҡ˱fkVfulG5Yn]кGc!RxQsk7;w*h'$:DBdI0.lH| Ph8Y+;0&DJU$W}A^lAue(*Yo쟥ylHw7ӮRsO6j8}==w^DVydJf(' 5(.KVuj5b~UſÃ&aj4] o;׀j]I3*B|[QBw N&7<Zktw0bi0a$JB,)2Ɇf3H=M=4L \)Mzgqr֗tRv#ic C$YI}|d*P*|1,~*;ͶEȪ/|d8Z]ek?zG'g\ 9 ѻl?eәmeN'bOH)~ $iUH'1]զ/y,sdxppAixƩ)Qa+\giLusT6OlPD-cߦ.硃"i׹ĨG+|i C#[pǻ5Ҟ[L(:]|ONeIPk1_>mC˗U5G-`҆]là \K>ڧY8BȰm0B{ޱA&;%K9^kƂu}vn1D!:9٪ĀĐ" v˯RfwIVגF?rw,nL:$9MO(v>/5܃ \%rԓY~J,)[,ODu CΜVjWM=*;ݕsJH&}K;3~+2ȓba'^44*"FKXc ̶n$5}mY55"bxˏ+F A|;hXLk^Z ߉mbp֙(1)5\qpMwF7 dh,n73'huf(pB/̻ʾRZV?qYP2 M+ b, [-cVw[t3c,JeJF9sׂK{IUm7$5hr3fWH9qNuzl- Lnn.J巗 nm)S?hi{K)HmjG|Shm4$tov2^`~ɼ:|bȕdgxAX#c LXUȮ`"_ޱAa$, Vo V3%_ApicYn93gQT:ɕʼN(٥)Af?H*o[bgL'j(QcCGAx 2v ۽MQ-^:]xYG|*r,t7RB@@<`dםT|rc`aaO7 ߊg8ve6|RM [:1QUa"ƙ uH+E%\DUu)=?ޠIW|wXi"b72wkd*5x?g-kW :@,b#ZQUkB% iiF-;A(_s{dE˵gA&pޤ/e{~K~vt?NPq| {4UD' l!fiJbCNW hp}U -abĽS_ӫo@f",#4.2O?`޺O 0EdC l4mjXA{kW#ׁU!tyThr4/ە*Jz}/A`W⧨P+*9M%0%ޤ2P3:kAtI>?ُ!ҰjW@V;)?4$$JxfmA @Sc UJʯ[Lzڍ.wc(< 'c'L~q'=[n}j5kS휝 x ̷tN[ ﶏMGHOk+'QՑ+ kG_A5R݁sP[ hXR@ɫGK)`xOhf*T!#h#F~lgwP01e|RVv|äw9vOw;@J h8G%tk$([ɂ4@& Iz 0qgwHxpHX{K$TZm(aYţ1Rd{ۯB"|{I |m]|.uVʻڬgvO}F\Snf:?D$mβ@Y9u֦UGDW[]! {i&- 1pQAxEqhwĮ1,ۖc ~ ٭!m,m;@6d(gC=;!%dtvK^|p&=mfʈ#.-;GXv ;AҪ4, *^8=eSͿN|o rdx[#OZb7.Ex /[>ߥMrizSQW;)F1.3B1v|O$=/ 8F9d9RdXv6U?.pXOIH)P䍠pN% n`t%jy(*yhAL) ծ:X]3ٯڐ}CԌ[q_zyۋhUȦTʽO'nJdA1sNՉSNAK&/e}kiZochPLH; l;[Pp& h:k{]ruII]o7Ui2glfKCV+gs 7yi :G0ln #',W-́9F7W464 @ Ld^sϖڸt.fIs9X?J#Tf^>Fg/crOt*';VZT0`˧}maC+ )Bo;VslnjmECY a5ǍǪL|EqyIi~Q$bSo%4-m%&JhjB EnX,|i[\f|{`j E>SökoNXi-V)`wBnb} {:(4﨩s0*@RN7Z|!~7(th6|mU\nQJt3`r,w\҂ƸPAqǁ!JUP|)zt xCUv1CKnInֿ&[ef GRP+{i5ز䕎`vXSQRT6A\ V)TדES'tdQ?^SL$cp,rwW0,_ݕ(c_U9KCQ'~v8|FXRphQKĘ٪ mj7sB h`OK -Fml7Bnã7y/aĶ zW̉U'ӸAF6/黕1ɪB}upSnȄfg;Osj~v&,d8(T$Yקk2WW&^۫C9-5`,ݸ`axYHә.1IjP6 jCHcB"gD[ te>"'{(yU1ZE [8'2TK1dy壛7(k$3OQ\>q*LӄKU^$4E-?Ĥ8Ȅ)& h{'CXbUjqf̴茟m y)ZB$kp$1: SY~(`2RW髀w ҭڣݶeh@^@?_:z`Ҝ Lvժ`69(%(%յ~jBzvbWIE呏}/9q727JZ%|rZB(MgYˢ1S|%_U{EjVLa%PyqBӎzן,."7hw:nٯ\DŽ4d!ٞ[di 97_fִX"krkk$VBW֫E3p9u-/&99uwB)x(ul^tA2̖ZDFTۊnOڦ1ј7$2} {Tn&!hzhhTljՓl:<#ReֽMSDx;73~zn 4 !c׻U恚sH3t0`*#rmJ0LO{5 7{- 9fQRH ]EUu4 D:a+QDcݸ9&0ofbSpc8M2ִjだ3hn&>>63rUëX}!$|!:_sdENB qߞM~)kAg: ׵/rӃ-Bv!1l@<<&Ӣ VdXs2`õ[8Kfm!Feq{ SB٫4BW?M7o2TZ'B 6;!s޺4m14;^srI} WB8~э=~OW`f^pܜ$h 9xX:[L v /uhg %}` Km!DAL8Dҷ%9piso'3 P$}|s˭W C񳋅D=f4jP `f4PoG*lw@w{dJt_нֲ6xDt_9u'fn !"/'X-Eu5ik*)L&E]TLziQ],("aӶf@Ob-3 ;ϳ_#C-DM1naZaS~)?ńk1+> tz}CMGen@ZpbƋscepkAX$~˿d'ʷϿ[JU D-|f9i$Vۤ;B؅7;g6D{ ;Hir:A"r^#48|-\du潣t%Cj?y*3-W '˭W҈ Wxh,M@ݏ2Kv.;J7^s}U,v]ž..Οcv*г3d0; qFbaY RM?E^Ε)8*7χư"tN)g!#?Q\9d j#o/ksxz! Zn"ړv2ee58E5U3ֹ4"ZgfÕ1Q%ۦI׶V>4ԆEl_s6N/㢡+L80_'4L#TG%1'kj8{[4 dߜ8*ҪS31߰[|,r;}71a|g @wBѶjZ7-39 ;!֓"`QEKAE8>~ {p*OO%Hx㓃> t19mJiʤPCP DK4miWq2[׀őE%X ӽ^;p.c6 IvKǯ&aqԚ1mF!hl|ʨh^ܷhïA  L|v1pἒtY_m^zh@5!Q#qܛ JS9{SQW)`n.푋5e3m(߾܄JƵ'D7k\Csʢ=9&.ʣ,]PAiTtuw@x;NDfLbi7!4F,&޶}W8f1V2CBQ7j+tJdVҸ[~ Z7.u.4kE=h_OKصN*om,JQx x!n!`괸z |^YRcI; zgyo*v:Lu6^.'?A dM,m."4IA.^|Epx!}GnAj!#giK%ֿˢi dj@f29Zj|CiAOЖ~)$N0G\JLᵆ&DJE &X$3LP'y!Zxs]y qJC4i6#$ѧSp6%Ұc\ >.2".f8VQ}\55by@:PW^:b[°YsT!he<{(`ֈ$!k`i=)E?M[JHG& +le-C~7hk~O a''Q_]B/漮&|ll] #'J|Qz)6A"2sq,bQ]-󋣥Z84'' %.|E+72CƵ&Go^7D5D(_g!)G4J_<+`S Tؒ86&ܚ l(~c~h qfEEZF5#so@=fW*1Cj ԋSIN@s&|Bb+-g^qUAہQd7 ԳjDYn槕w5$s^ܺI1Uqb<_ h_ j_ '5u˼ڲ4 %c+) Stdw%bbq -7s S˶К^GZ䨴8֢[*]UwFDۜFx)8* wً嬘cDogSj,WGLDw%PA,Y[G^*n00ѱ3kr7 %Z]e j`̶ Opk27eBI^Q*;VDe0(<#uH1` {k~Ak rdĞTOhOs'+^s2KɳmTDrҸ(5 O}H 0tI("ߓ W̌Bw|pj7$dqI#Zx$M 5V} ay0/Z2SnĢjt$z! ̰.0/H`t6Fgg7]l9n9 ^5% ۉ[~-_ +ɩQ=/󲊊yAWQV?պ7b,3bCV|HcA {ll_vË'‡IJ^@]#Q` ?~adc7au"v5-S /fc0BvueT .JOfS;4HXVxTlݰ/0f"lۋ4a' nًa::2HUz.ݎ"cJZw nc9wWVhR||X}1s$ a«1Rִ6c G5:roe,oPKAӟAbT !_", Z#My q7NxDfW̶%z9 )rJ43iJ3n0O8㲓7$>A(V'V(5w!VWVdzóa#3ͽ{#r¾աb0_x/Y9p'Uӽ0ΊC{㫢zUCZWh#@ߩ1#cɂuv.e A6`Q5O gh<('Qq~a*{v'WÿLߘF?Mdj;r}TX[`'54fomaR!1Q}ˠΆL*,l3wծc9R T3-`s868b$@ðԅ4zQkeB939҅Ac[z)sؽ} :^#+0cVގog V3ΌEsjNYS<ŻszI ~FQϺb<:O ]&g䶗Fʡ-T7~xPN&UR6EIDN8hZ ̧*FuAEH_WټqַG|KMebRDDaEm,da4q RN펡NfZo;}&;#9%*G8*5oz>c8DLQJFE$t_n3-f= cbTUJYfmoV3DRUQoFjvS-ۘE.5~%ʫ9,֔p[MSc{WNpЊFH&sa mf^N̯rN}e).O`SR67iYZ>Z qZ21i? ڌJ*َ/N/)'$Z6nͭ-ugۂmR/n/>Yj̶,0P[9 lI*aG_(Y@%Y~ ̥ug϶F`6J: 0ؽ&wwjZ~G e sqξoX$;$TnMtu'Q-nr~Dg!-TMpGzT}$YXwp5nYCd~Ֆq4 2#`r.*tqf.V-*~9m-p 2D4+ |wQ}x?&͖Z F #}a?k#1 ֢cZ7ˈM0U;M5V35Ɇ8<65r!KN7P~!0<eJ;j۸󼏗\DZ^`OU,s 8AFWCz|5Mps gKvjYK]UVm9dJDĻ}YfW$7~cL([ep현\zTxToD:k}[1Tw4j??Ũ%pAdC04YKfRPxЙM>_VISD/NƁ! \`p!!u θ88SIOǨ[>yew YZ>.D 46Enk߉p(39|v;0Z&@䚮Mu(MM ,_60+ܜnOlV?ʂouH_>˷sٹbYP2_>Q:6oW҅1j å /c:W#ᖔqޏ4VBaCH]g|iRcGJjsۿYaswޠSC'cX9*ɞSG-#v_#v T0:~KxC8z~m=Φ<2QnSz:Sܑ^iQdk}x;b  IP#}@(-s]R&ȘF5sItT$? [P'װ2ݩs'pʘplX8%-HB]zqHj P))>NdZ$vq(<T/u?и 6s|̃ Iu~-_;r˅Gk!=En&o m 1,)z]Jjnz(Qw7&!r[J8.elx\ S"EIB+FBjfė,=X*Us<$0 uk%kc|j>o aUTg9X=wn47`H ˏ]siJ3rsA!Wĵt ʺ B0;D>\† bt=uy`/H2d}A;+@Kk3n.菷luOY36BWK7ɔcQKaILYF =fG $A8r*Ւ>q֎Qvh3_w6r>b]Zɐ1pq!9Χȣp4zRL$8T/\|<Ymy,h #r#9pl4= _Lkm1:M'^<@ "̩SBqYKI[\>ػf| RHt#o3*#2]w} My\RwUzW'NR MA47# ԯ@;hVfvvc˜ 9u_60w|ehLopZyp] K W\B٠ƣxE?ÆM]Q)H{s7h91xfw`o ͫ hFe}s##ϵ+_/j2SBħ*؅a|~U7h˞"[ÇHtZ5CJ貉_I@nDŽS ʲÕJ^DhKJ%F H@WC߂DM&i\8>Z4!򡍤!%w-U-T‹­"DS~m1KTaF@| [6X!1@RBap]{JK/RV1 ?;ظjI{WJ#@KOgAm653v{bQC)j'%{HGQNS F$ K\4) W?J?6DZ NTB:-lMֺ|n;VW[7j5FCcZ$2!u #$lxiǮZxYiP^DVۅѵ垰*vӝÝSruC5J)}n< .ِ!bo=ԥ|P B,Ilx3'S KN0?Xs{ K@>"6JaO-B6m]<ұq!a)Mn qϴGr,7al.|C6 \P J؛4uV>Q'8^5 D%1#WlH"UMHRc"vߕis|ƘF0괫b)ꈞ0-~PE7iIs"S{T M%)[4ѵ؃9c-n w㳢4@f {rB'ۆ5w" * LpyƦegT¨ wE}1<@?WY6~0vI+鱣 b(,mŌ2 *e:q:}vަW#Db)\@b1{_Ƥ7}%/RwQ W~ eIl(ZbO*H1>fr;d @kZ9i"06͇)<@&~wuHnRŠr~h2!sKi6Xb;2g9cl'[0pH;p"UtOG."CR2 j}WLk[|̌dzyygN.w BFʊpW@V H{E{-/gEPվ ]KUњ<?o`vB-HIՕf_U:Y߹c*dCO/FvluJo.]H7_R1՚ιnNi[́w̃|T:"6o8.JLPXwd3|{L)7^1iijݽ] icLsW0tLȾ "Q71^, /7m1:fWgraLP\.B+WI)ߏ%(IQK>߫NH@4bO`H7,xLsO2%VB-U!bfܫ*5!L9<$~ Gh(z\>l)nI bmZ?KD*pX3e69RG^R)0yql4x`PiԼSq!_dc~va|Gρ`Y?E]5h6T![AR7qQ-O=.ڊżO+HBߔ̲e FUPP@n _HC+ fe}Ąs|PM[:mH$4!I iW\x4fR}E8Qj w*!1calHRV/Ӊ-.11`~̆ N])4 Lh9j~MA H4(Qd޲شh`+)(y˽,kA9Tz*5cF^ɴ:6 "r,gNGUx(@6%[fMa]jj|]an<:;SGӥO|`͵ޞCijU PJU %D-W30dRiY0sz^ '\xVq 5TZB=h NKGk!]VEW},daa>g?S~{Ś_A Ov Ў#}Y5l ˴ "Q *_{.` R,0`^}p/lhțf?-C G{I aɖBe`V,j I9a҆Q͏3=!k-d]4!l{xfå\L'i iyTrۿ=OF6v2%)FQPt7,c6A9]nR[Sb9TVUÛ%9a2+(Y EO'U* TYikoT&^*'m\|5WSV?:kOs˟?c$(s4d5| 8I9:ú$*n ({U'-Vř nl"%GI6 =NO G16cĬ@'UQ_Gn70jp%X5\*d׳ '&؁R!suT o5SCdXW$* l"^u s$p,x05ǯs1y!:m9"~ m9alA[ W_ٓH c۴d%>l*O@mO vy!{!s[3J ?p|%ԏ űPeo~WRZXw敍`W.*9qu(ja^=i-$0hyR1 w,~5i&V|IE0Cup۩j`XN9VJN=J[_/;y/R;업ᅌ/6v(MQ_m(gUl?CYWԵ+c4ȝxz.38OvSb9=ONMq,q`/1.Bz Pq`|(j)Sh^aBՑMS+pdlp-rEI" ø[[ ȭkBxaOJ+snf<uEGa\mo19I T"mGqkE]Z7 ")r~6dIiA d<R =ln:n(_*^_GuFE 4 tM ,dTAf_V_ X+aɒ'(vom,Zhc4k^4J֮_؜NO "q&}8\Y2{M),cw 58V#iHDftxFQ{7hm~ FpS/$1d%Q>##X-b'f(ZH?%|wu9Xm}d=R՛V- dF,Kɢ#U'[\݃! &Gf#&/忿W9|ӕ D%$4E_xaK؎.R[\y n]V(, @@)|~WO.cO@RúNjx]LQ~WzͲDMllOWހCk!Z&+k"dlqdϙn+-{ϨX 梎 ٴF \-7١@|)iLķɋus#&GGﻰtb譢>o8Bt sD"h ˪z 虮MeWJqXL*' La:A$5H/|*BxBUג=Er "a\.A-Jƣ[#Ǎ| _kx1_Vr .q X wɿad%m+!oܝk01 9i72"111;'M :hji5=:ojY.0x`MIR뮒^X߂cai Q}8gv P R!3x^驏O> Θ"rPy4WQ,09@G'x@0ܻ)eo3@CM˭͈۟M$^;I;DP+mGmJ?c 1(Z~\a+'!l+2a5T(be^p)eYg/;fOh#}3HTW^~Y3q zL?I{j^>Rj*|MM(X--9d;玽~:=vc[]AŽ"|"e-'PewUSi/t|2$B6(k-M{Lhxț(FqЁ9p9֙yGpvoi[^hڽ | tOƁ Ux5@XX+`\Pv1!ovٰ1nPNRc:kC}ϕPk*3~uF ܦQ,5hǜ2S* ưŐP g` |sIR/^6xʝ~ x//7yxE{ \əv^G45Bs鄺ArN 0_͵B} Z ]Lwו 2oRKgZ\IFuug_w4;|*]͞{Jsđ`õE mi_9yq|~/n@} r[fU2|H?!Xtm@oE[sHfd8NMVDtYn{Е:83e}07,L愴'q$% zLlmMzDeqWU>z^v]Axt_]7 iggP95O ]%O(aaۤr @^|`F!P;RANzWÒCHvG .ķJ00MEk)' rm uAoŮ^)HgFvhN?~e 0>='d*li='NEO6l种9nC%$q$x )  eٰ`j*{(dx;xVu(oӞ֡bY8llo!ഽ9-*l|IW5|H[ZĠ8iKwi ]_Ղ%YMC7Rp -%{QuCm֐MG 3m&{ "oW:#4/>Sm@w-XfRf=9p#y?5ſy2 |e-MS4L=kO'mІa/ł&H/=] D|a>\灪`MWףq;zU?C7yj.K/aBN8' SEhƅi(gBk + cU<x6bmG4f:TdkB' ͯ0nyܞ)l 'BYݑUР"kWv 5{;IZrd?ζ,G~;Rcgj9<cC"MyhRn‡p[ ޤhP PYZbr=՟7h6-ތ|HI3jhoUVCW ֆ7I;T!%tFea=CaD&20:/')S?[9~Hi`!OJQv'CT/a?tDHj6֍>w|!x! ^oh%0T}߭ivpyR۱BQZҌ⭏Xq{4Ce\ܙOD+QD@b9,k0K?!&m(W^vR98S@~S7uo{$7)kt"%O!ST8# l]Q׽+,\tikOЧ@ӮG@g>TPd?)M.G7`'hW6h52)=Bፐ6՞;]$sQ0vEt< 1/+JDtLx< (Ecd2BrMuołLJy3kG0vb_t>@'EKՍ^Mw-^Nt d ,@w2 wROg~L2w%V[پ5CkbCN0NJ/YV>[6)hsW>F5*>(|P354wtLU"Z!Q$fRHF$pWRj}hR9jVnN0V'-naZn`O6%gXbbd5X"9m`;va[@.{)gP"^CpA)j4s;?&F6q0=]C\| "_^?:M.sq͊vu;%W ڍZW 1л@ϣFfԎƃr܏3YTX23q\Jj!蘣.`576jM¬|D0kin) :!呝Rߪ F+ A*-lRwLey7!K q|,92LUX xNcX{r:a)aSGI ߭"GKz3pgRB E-Ƅyy4ƺfE&4ͭąZMO0V1AjTj}Q y=<\ ir}J9hwt̚ifՀT4]k|RY/tRM+Xb?qf܍`,躯UgJ "z >cZ${8"93Y"'9$ReSmTNMbOXlkZ"@fiZI-^MIWjGMͭݺ̆!jns!TS FЊ_S6|0c!hf 'J\{یqVܝոMA4s@q(E\z4{̀PD-zz cM\Kyw&w8frz3>rܸ_y ‰nXa߮Qa%Sڹ@oSQŌӚFֵф C|߸Dr]Gs|M@M7 LQx_&oMBS*%ӑ(;xƏӶbSV `>sŤYNHg:#\u1L#uw>Ip@6 SIge*1걚\?S[+ jpP"~nt1HiI>_S! $Ӗ Lu`QhIU @[Et(y9Ӳ" A,iH'^t- (W+ ;⟇BHɅiMcP[G4qX\W7Wi&ڈA'0݇2{ŵ!Bp8R[P9 `tAFpcҫzNYPAb<ߑqgLᢞʼnrjh2%_b57=U&kXLUMjR-f$BZ3g BzQ&1@=VYܡZ (w&+E4FuMcC} dwsYTYJ`ok4>nԒ_֒UJZ)~m*ͮ1R ucӗaNi[JI],1APEtcON&2脌AI_5/P@a?ovCi4E,d ۳'Ê]DuҜzU´3nRɩ`xgN5ȅn@e$}7' "b(vm8TiңSě`Aba!<6l~K#:> !$?Zv/zw^[ Z`*<'qfcŌ1Dެ`GEH:b90ffzՓDmjH/\ÿ*5]IUF%B>ks; U&ZU$/HË79b*#Tm !\Ҽ޽J$7_'L4:̳e꾓[E7wιT)Տ"\w!9$G] R%N`NEL3=evYk"RiʈXc,'+'Al&8 {_ǁ{ IC4-&ҫ3>>4>|~9l&>_xA}twQjyz^e:E$ wX--.d3g?2:3Cxx]y>0uf{͢jJ˚b_h($MoyprgW󎄨o_),L|?c\YLRё($t~ukW{ts}_ɔ,$=^1E@!e'}e`%sIyVgꍣ ǿtM[^ z{Dx5<7V8-#e=E~`g22TAV5w{,MKmP,x% ]tIPP;sqɺ t~\!.UwR05KZ0\aAx[U%f<Ј ^3,®7d ,*o-z I co"xFWZ-j;R>xZ-[{9JNQ7# ZJ\T53o5;ßGVB۫8O6"1T+$@,22!P?l-bn>SpG`*_4}%"@|oG!·#Q_k O!_b,,1/jnnUYѬ4Im޿6`;r-\ԁ%Qֶx$htX[xh,(CmP>$6!|~=b{)6[RX8+,tX )w Z9͖V> y!s}M{&Q= Jӳ%P|yS«vJWZoND/F )bLؕ 7eYh3焗Whq4M xq_iYاĘ@ل xaa dSeO,]Pt%ag.ЍU,ٷa.Bvt4Gވ:Ub3{MO~@QpC@dNҨD Ak6˓ig.jd9ge nvr:*VWw b"p3E;/5V#ބA8LYBxS`GT _aYkdOnz|UdvٛppydC. =0t<͆~T>#C]]d4z&2ؖ bjtHXD{l347" RN 50 q2UzH|`F\I;?`T eni558Q}$*r:acw uGN}k8}N]"|n55juZ)Mvfݥ(it7 {šNvt`~?0eo BWE,G#fsv8}sWK}%-ImPB0ZCh Yx~g|8njң!LF.Zfa~⾍;%$H͸I!/8T%r;= :}?*M$ȑhq'69@3ߴt{ $ц?c_Kz)/V#M]Zl9ܷ6f}GYc4v݉3c¶F)M W^NSϖ D'{b3I##3"$f.=@>Y؊c# :lM-; w,(AFx09TtKeÓ+jctLs'cVr}U%;kB1b gDi{J?|op+L\waC%eRLI'"`(뻚}q MA dZFrBj,wIL*ɦV2:MgvEh]Ka cFo _v.xd^t}iqD[<Ȓ{tDڻTQeC w6!NE9BBnDjS~ SU`0 s^)lI>hK g\h(yƮSmGDAް`𐽃s$\:|&ֆsb T3xr^0NN2&)y;p)R3 ۱( а=aX=;\N"diѕO'5t*~"{dkSj{IQeBVR f̲V!5r&&:Du*F>: iنfP[ũS59lKuFqf e`>5/;$1(_Jpe !ӫnI'گA#(9~]8꓁$,QiˤVJZww^%A*U׆\7]nvf@@m)/ |3VR2'z_97;v,UFYo0P85^P) eYgux VO[._A2ahk"-+(T4nXpnW-O/]_~*5.EY k)@(WKJe)>&$PaTIZ5?:Ӻ,m 8Nm -Y+8tEw$%Dh7"ܽ6'=n)1vf82_窫Q෧_/h\)k  Y|< Vl͈]#)"u!Ȫu49EmH.o„0y( ( kOth[mOL2rc/v*T,v,~fy]kPqƴ+-LC0f{f ܌G A;~䤍pfCdAvopU1mH++/%-scn,fWqknS*ǒ ?pz.~%nhܗY﫪=ٻ}] _(O,秞\2llb6Jk{5X:!3SvХUFr=x~G0RE `cM9뱘4×X CyHXh_Q[J[c"ʫ_XO¼uι}ye|~IoH<1VPIgET0)dE(D]/k\+<+fP܎_;7*<2:) e'+oW2vk~PnsGcEwݓBU 0H\2(jOĒ+xv3p>W7zg M1[NAQ:Qxg5RBQx~erQ֔l!`"NzPJU-ʴk([zH"2WI[E9=i!wwQf‘ASlErk2OMtvTv/<H_?d#5T&9gzvhDSNs(j F!Rl-H˸ 5ݍ0-v~.ɱgiQm`퀕=)exЭG+O}ReN$+E$d9>EJ$?D{+2b-*MrvpxEf6\۬[<2q~%M` ?eS)HY.+sϷ;~)SȅkOӊXDkgaBo=Vj'S^0h:KD/L?`A#ޛA$Ni`r{M Sɂu_g6a)~VF.ݱ#ng|Uĥӡ$~BǩyD qP;'&B]N`M08fSSMPsޝXr̜~vk'Ȭ4Z_\&~DvXQBrO?L0QM2>DsRD.&^Bͷow#3|&l\4{jN+j` wۉ:RLG^ƁUBby40{|dbC].`#0ѥvPw68;rY^H@W_×03bdWFڐŔ9>9i AFy?u.42Va#OblEp.;Thi^}(5?x:]'h58n9?E]hhaPi߰^aXem۱dA`5Z–i'>T?<^6 ){ã2a#zDq"(fмb!; R\(7S9c8GI@O@xHD 3LB[GBӋtApQ`s_?LlZ<]#&+IcSp,nO0G'anÏ."*1ޞ;!RXu^f1pS\^]c 0}q? [#ns],ZLz^9,o%?i>UF"s|{>-AzJRQO|?al3|.1Uk+W.J2MLjoi><E$)uū5|9[FK{ܛ?+ZuCk:6l|s!_NQ+:Lx2;/z׹^G(+[94ucg kf]L^;T0̦u{%8 v%pDoIDR: xwГ:FEWȤϽTm~5R"n11؛臾X+6B-1d% Y/sz>܄W$Ć-?DL6x|"wr{ -LhBϾ[;{=!Lc5CSvXrFO# B8ڬHRQz,[?I:R =/uyH!bg<=s(x kT-*WG)u0j ѨB!; P(R(sAN'UyE @\SX@wkfj2U `셔~/>v)ZV5q3۲vNkS@ ePt1)$E :ބ&iި"n':n,Dfڶ' W8HȭA,MŃk*my5epzV׀ kw1m?W9-?{>=p$h U +/Fl[=d 6 `@L%zܝ⺭^Y+ٖQpB1&?V2H-@ Kal c@K:KTh|m Q ՚Bn[HXK鶳6 +C{W/}TpCnƎ&0%$+;SvS*NJ a,CNs]xm|8}񴂅E}$0gXǴ=g=<2UN:4%I{Qi墐seF^vOO"sKbw)wۚ_ba]W ߬AU|oBG /+Hoܶ-H']U'lyPƄ o8۔~Axo!'=Ʈ:7H<8C:ovTEdl6gÙktYJtU{Jk"b_?Q85DWBƖm*ju uh GO:9NAkٴ؈%Mܝ#:zcGӽ`+Hr7a$ԇ&wtrqHڨ.,aQf[kkoV˿Li!a44 |R >P8yM;eI!?-.l}V+Gs [s]^z*Ӟ^i{#kUMy|]-R6f(MV qGB)]?h "-:VxgTׇz_, a]"_bΏ2Ԟ&^ [U7:/H[ϵ`K#bp%~D?ļ?{ l"o UCcwLa(q&KCjIգp%_Pzń;J'?wP0u, F {ԔY>¡8K@B PhN&lMN®ȇ>nN/ +ר|3AA7ǑoRF" ]LZ%U;S*>Ce +@+_i'[$;g iO)sv mEΘf(s /=nCJxPASw/ixuGh/1@c\naok‹$Ehg*}iUZf4}LUiAy#i(m4֥XkHd %BX/u)Ϫ'<|thKOW$GH=.v }YH|LISt.FkZpWϼ[('kkp{/R @|*yniw9_۱-4|hՍTqq,"%F  -cl 6Q#p_)b;X?pΏ1eI){{_MؘN_zd@ntf魯mjXxqSe@[NM Dڥay6`: Dro7zLtOVÇ6 :5j/661za{]TAI= Jwi|0-%_"j\`Y!PA:5Ahh{?ii0di:. ٕTZr.Ԣ5e೓~TaY/ \>Ҏ`wpCj?GPvH1ڔơy`W&9Z1A nn| { P[m-$4ցU&\¹LTNpMVmE#&~*߆ͩynod-C9Xnl^fu@l~{MN CH.EHz+l%7!0x%M?"VJz'6'0AQޥy36F`oUtd< .+k4l{qW.Gٔk@cH rnj["}_߽ԨmVTm=u%TJ:4y[S3+!LDwrȀmaJhY Z]p#R <*f_͊r_w]vbsW--wn !.5He<%f%󴥆3)%辚|ݗ'^Ձ&O,psF"a1!NR{8*>![!wr+U]ʍ}D7Ni6dZ5KXJSI˭3ՊY`n5-Zusn< SP^Z-*1diMz?@c3G朧T H8}t:~rhW9&Ji6e"b* =TKB#~}\.</Dr4 LL1 $oT;D3$ ^`(Q3(m\oe{KMnLaVzCަ^Z/HM\/+ 6֧M}oJw( Ѿ@` y:k5g ,?) 1=#|܍`LL*SoPVƖ)z#Wۊ]$. ޯBkX Zǚ8Oq$v@;8Aڌڝ4ձNy1i̙I &Vj)C 0^79ǒ?N?#=,"*3Od3K6a1Ɇe&(&K3A޳3wbFTc`J&cIK0$Cs7jߣT!2P!uqApN"cO0>Ja(C@ȈeˤteŮ3inm}WE`umIwwpMM\^7RT%]p-1vp߇i iEdp@nkwMQOVz\&Iͧ׏bU7ؐᓞv\gx&![67NpV81Տcƒf>P%vD &q=6!|P\-w'Ff\:s#:I>M)|-o8"0D~$R zhWl;LNf`Ln4{6=9{h"xx#"_ok}ײq ){JY)5V11YJJCDkxi$Y3W7!LPVݤգ/N(Å1_s3]uqbM_`q;0#N _y*$.Ju&Ɲ#f 3F6\I3!B_gzXS 9-f ã>Mn?0cHuY'!J%<_DM NЅٙ@zVzP>H҅BIxA@jo)^AO[M.1|UVS_uTf~ t_5Ku,Tcq1uM],sy{AM빿|Z ?TۻD\vb͋4MJ.!E:b=`*dx.#j{\ j4-`6M ^tf0 T__RUÎb:Gj`5u ΡtOAK3Y)J"ya%;i( TT-t D3$Aʣ亰Lub1Hޣw:,aI 0(0>)ْכ5mxs &t?2,()8WT|txaSR9//ڽNF]uūыY ީl{e[k[qfzS9M:_6skuy,aMqnb]DI7Ĝv2~p4v *AJ 7Lq[`'`:yFBV] SO`~D#_][\p?<ϺLNMܫm~ZU3\m3MƧ!_ zY:J;b~{چ"HoJ msנ?']]PZob3sWh!BbRH/dX2 p m6HX 1 j(cz6<}'wCN[nAr6sd҈f 0NWrӅ5툤-+c8 yPTպA+3|Fu 鋻{Z#opckB5vGPŽ}4~5'"&"yRoTO}^g}#nID` N/JH[.)’3is+ |_3o].j4z=U*0~ʏjHĻs}^si)wrO`5$!If A>C Q(~Zoԙ8vb$Tq{Tq >Qn(z.) |q1i6wgyr\$6Sn4 xڌ9nϚd{"#DOFdx-of7#'o3[juS9YrX}YFpaVMT,y=YķY# 0ry rNC(a'4 }s)Xeoć2~D^mʠ ^EJ ?^6W7h!GfqcÍ=;. lw#-Sdvk'!9Vn \U+:.6 и|~";=ꃰ Y-{nL"rart[+TmFE8Ҷn2Y3bKgZe B@Tb\;oz6!A[GJV/$U4Lgo/^U nYxJ)&"k`xjh@QhQP{ܢVQ:Y-8. h8i4F;a{~Uo%2) T{ڲOefk`$mG@LBS{TXI9xb#.XĂW„4%{gO9QNylC\s(Hh"!*w#J`Nt^ݢݣ5SLhKz)b?N)y X6+o>C#v" %-dh0IԀ͵65'[]Dz7le(IJ~3Xy%:\;ۡw*O5=#R.^N :QU6!~&IZJR˶R$.U;\ӴkMi*m*B3*8i_լ'LsBչ) fqM.x[7MNT&~CU07n\FXV9n Zľ;>8HI$'@6o*U穸D<&B#|`#eQ6x:)<;aӊƟGp[>+p L5'eWu vۥ0Gw e3(Ha-gDHgWS' QzIڈ Od7{9=5DjduvÜv H)fQ7IԳBF/j?x|j*vgm|04A:JRk ^dӍ>E(RS2RŕtDWbNxr4b*RA*37u}k<Dg)d~ v7o5iYR/bXuiKM`%FMD5oKBP*M㭲脚ɦ_ʼu-ѥ}#Cf uoɼ4=s| %1X:6pzEV`Ql5_J2]3N%SE~P.נ]Y9NPr&qYL 1G54jVV:R +L \Uvrt 8*!Jm/I,2QMq_IG3F/Z06=Lu~}%aW= 2 -@I:h~jF^W`/5YB8 < 65&3ӗdJƺszzB3~{X+ )ns:!F(2*ȿPҙfǵÁ{n7} ,`=y SRKaʀ+oaqBYYF$1fk_zBZ|7*{ 2ȳ,m F݆=gؽQM U|RѬkPϬ w 0bcŴ, sӣSM)?ܟv\fǶ8Rrx XɺtC'g>J`1̸rB`7`%ߜ>.nC PUܙލ(:ڗ*à/W"9 O5-sۚ6TRSSeFKiARt%؝ɬrikIǴ^w#m=]t }ARzD(/ ܈\o[\x/HhY=t貰ï%jt l!IK_oU5;*E,o)w:5¸҂_p3k*ȟ4B&ϵHe"S:IbQ Yfb . 55=]7d2Rp6kpt E`*)zd.8Q(_/j\,ɕALɫI+B\"񻸲/bIoD*+qm:Zw j;)QT yYr]S&- P\HNS}%962=2ƿPZ8| P:ȥr)W|`8<1k=H PT2jkvxjj2Zdq&|\&Qfr/YɦW ?~&Bu4ުbq\l~R||3t)7ClGp%AK,qtZ|+R;_ҕjSL|wE̜ƥ"g!9 ==uOKiM@b6HMhB#T>_mǪ#}W<+g$Brӯ*Nzm:k8jՏntq!=#4%F S_UcR*zWQM_^ wt8ʛB1ftWnt:9v[I2C^ۃB 3R9mykPu\t(+!CDx".4 (Tb y"{"4}5PTYwIBzflBxE_ٱ%MK?iW,$u [%tūx9Rol˷ԣ{GUq1g:)ӟٶB`1M!6QGU ,c%. r4؜uzڟpV"-drI%Zk;gi B 6b_uVV X}pyOe dZ"w#AMA+ZpxyzZ,׺FM2e?!}6DʫWZ gQӇ̣-M&W|r˅7c&+Sf?EVsAb Z̷#J-}KA<MmݰdY/G+=]Q}LU5k1io⦰sVx@`h>O(P0c()%CBtt%LV S*}ɌރIq_x?QUITŁR,ۈt/OugkGh{)*0N193i+'\YL:Y ⋘r'* s Ill/z|\{FhM§Pƒԅz=8+%ZBȼoR +[ ^]pA}i b %l!Kî|lS6"wŕA낪#*$u[j\Ň/AY2Ssrj8D@67 ,]pFUPwa\UIT(^#2FbIi1aT):dޑ+GsUP#om_e]7qD/ 7DJ>zw'Stޗ[*d|/<鼍͜ضOs׏ *[.kf!CA04Z0y)2'X O5(*`d;22geV2ª;Ş6<ǒz̳ObgWNZ2ZR/ݏd($!_ Șm3žԆ*Tz̊TZGn>d#mEbb-fG%+I8$ Sպo1$Ω#%ϯ)81-5D\q06 .A\ߝ\QJӜB@4Nl&I?N_uc&oTUbP,t'^QOeYK%I:밥ޣj!eCYJCcVO0mBF] X q-+T3anZ} v= C]`D:W/Jxb|vpԓ:xn/a\nN?8 >_%b;ɏԺ\`AJ3 !>y ~ HRX~h_>3oL)gP{BypEϪF%`x:IܦiqxYS, ~ 5]\7 xMDzI9[wYD'%@vĞ2F:WAs:J vև_2W=>~EAÛNu:V W ,o|yqZ&"T;n8zRw8\W]UI}UdȍދGt}4z!!Iʣ/;[, ʦSRSu4JȎ oDiD;QDu⟦I'ba[,0QJ7B2J)kW s^Q3er2+s2F_* T_&]ȥw4k"guVǕAmݻy؋.%:|9Ӯ=+j:{r`ZO2{|Qܞ:0|sT/^نWfܧl-qAmٓo=GIi+l)\:]>pD"p䎏G+MK PeY,jž yuuKХc?4NQ㝽+RkУa)cS|"ame]͖P! VYjL]#&ZϨ;\*{DkYݜcvd䓐< o~藎cy*ޗp5S! e)'ry=;Ξ.g l)oM%%pQZG{9PZ(_/a^c OW9{M~D)&BaN5n .0!5J T9GX<$[)!&w&w 3qYN(hw!V.KC:08Sb*+9 ]&6a$j R5묫?l Y /`! U||pm7Z]Fڢte O(}j5G{4PG˺0%`I^14\FϻBF1/LGxqz^ۊ?bA |󖟅,<\k%&M{E*<p.>>-25.-FM\wVQ37:@6$WlԽsǘ2]Yx>M }WeI+ IcyhP#QKs4|iU͊`lyŰUV}eI؊B[]eS0 K0vIz2^hTߪcH;&jof>9 SEK+姵Y+0E1PVDc5ssP˓b(oHrSjm >VyrGH(ΐsl*[ăqv/ 9goySl|-mSqVmK? f/72sz4_ n3n/$-9~dBP{ @>{IK_.xr_DP,c4/ "~{P+5/a3Z׉ & &޼puBA_V#=#s"sbh7*-LRL8!G[hsgRWu:Yb^ճl]R@^J YV/aY_njTkxDZM՗ yS.MW>J̅nR%7ƕm&9) >zϽ ˫oI֍IVu.~*WJ0IpL@/x/gUbx/<; vPza;|7Yv'g[}K "KT$f4U'Npア0HJA)cԭ٣̿ [?;,Y\;#%PVs@ c)4˙|m=<]؜m[%"j%࢚ 7݅27en03Yp*72u[-5) ."RI81-ykP& "(s/Vw!ok:ޠL9sߑ\z @m5\qږ>)l$\eY=s+J"FQn,)'>\{3W+Yet+$[Řk'3ʔkis=2ᘁ6t}ʿU,CH'? vN/H?p/jhR7 һ$Wwɚki<(̂#!gAږ\!l8+7E`9zjH}e{b4[tBGpxrHXH:"{q",[zѵZ.FhFk[Rhe90z~b^?7vFC-/jkŕٝTH%7rir7*<6CBL܆QS}H%h1X+RSծ0D_Xn%;I4?kLr6zegI5-Vow<#}f$z)ѮeV-_;{)k(m^͙?gpyS!>{,Kn(x 0?UYT+i)ƃpg[VCĐth?J=É)tg}(J-1rRNgpb,K5MihW@\db|, H(Ad‘F`3#]ʜK}=;Q ],s\HHRL1 q)Qa ̻w}BF K6#AHT'!KЏJYr}M0rxZҶ䈲}hx\msj##k֥:hzl% )'7ŀYdYw+=09SYϖC129aLAqdJR,F4k#xuKe`(=v/bCN1+7Ly湸m>! ޶w#a >6_: O"mc> 3:oZnn./1 j^L Tsf*ުkAŜ?SDB7CicJMHUX>uNz&3w4~ wUF KQJʘ`Y?JN\o7qKBF!bQoF<%/g%)Lz<)l8eǍym*fwe)1v[BbS LUyN&{Pkyx)yôMp՗5+ $ G/kH7Q̞{eǿlfax4uHND qFD.YӍ#Sso` ~oIկ$۲Xä3^"@iD &u0ft{f\]+z&^Na-xx~3J[T$|U{)c[F62?Qׂa;^9LNfRyu}=`3 vx2/Xv$`V:Kh`i:Ebh1Cgjg޷E%De0hL`VU%yaZ{p3ɱ O=mabΙc&e$xB2w_J(UB3//0nZ9`nhI8Qh?eMU7%B{;Nv@f^IUݬʂL5%@K8Y,) A@ڔܶ^o=(9@N8^kC,ޟd-y F$R6?=Mڣ\Կpc#C% KX g 5i[ArOKytH㪕WߕA1\|O4^U[bɐD0AK}tx?%om|V?Nm=]brhEpS@=#aIK d$k~.#&{gܴ!-28 _Z܍!h>|Ij9U$~R۲# F:F NjNI0\4 g0I"V>P;}*_V%X DŧɚR>ebaY#lC a63JR@JqEv_8A$ZXޑ}t8 *>_ɗIIS~8 @{y]9y>iԅGLbUdk%Rxze2uN֒!hDȾcF<9'Y&xKMCi)՟'2og1`ƁduWRl Ht==5}ԝ\ǧȉ?F/k8 !N!jCM*W۴,BmqRO`$٥r ?_xŧce$JܔN򝘈#Cƽ4"?}V*M&Ů)Sv?dBpJm 9%"t5){$tf3KAؿdgp<+ `]9SF"-A\ Ɔv=rO|*jygJ g+׎U5+J 0%hOTfV),ZcN[$5WWd$W@*ڎ\̚MI,Th?;88<ڿzv ~BKA"+*xEZH̺hР%3sdII^V\uXn _4pw*w=l?a/Sfc&nfmKq@YnJqI Y폓m1V;g'[Ok{&~yIiÝ @8\NF W0c\P6M:peqgR doFT-:s'x\R-Vc|Eݏe02鼤jG<4.J#mbӆąJwcVM̙Z׍G+ ۱=3p~OY3! *NO{d!B_! +\Wlbo\>8WseupG}Y)&8/H.+/̟(o,Q;ˡ"{ҳGJ\ 8.r~JZU/"y575>,+qҍJ3ˢ Y9"J>Np}UoO j[%$vk{nq fX 1:x[ם f剏-V F ~6ΞNm 7h7R5:Ѓ-C-8"O'"`8rP[r0 l[:RƴINޟ@l2^ j ;QaTOsnfFMuzGѝRT;d z:a=kӸ2cVeηwYD`2y};Z?P-ϽF).,d,ui , ۄI1z鉪Y,L6TZ0^+دXz2"i7L>h\cTZi,=%Hz鲀껒(\:qW)l6ccLV.i*Ztvnl'P/+R.e(2~ݑ*n3HyÍJ}+ŸE#橮*ޠv1J Vok:CRpq[mz!ś NAպ,appy !,Qg 6cR0I-$E`Tiso(c}S\RK9(q~)iy8jZ/nD wȒ)BړxCcm GaS_rnL9o'F"\ђDH丟!j[⢱]X䨛$lG#~?*ׅRSTfXZ TO5wGvPw1p3\__&Y60鐒+Sž51i`R~ˏ6Kx`u\DpmDd,sxmMŠ6^JP҂CP=o vMi+C_gA|WUfٖw,c]Rqxic^dh>kZ&HT>96A&r1hqT&N_ujrrJ\c^Xgjfamļt-\,{f!"^1+H"2WCr(79,s25y^-#>OOwv8iE_Y9& 4uf5h01vtq4Y!rAɈ$jy[L,-*;}LC= ~Y2R 2T充ϙ#d#r9drN]{U),An&,o xeAnݼ63/ڝ~;&R$+E19.: đl{zwDk#͍ݱ-"_.Hum*'.DWlDu+8oi|;\[wzU"orη$x֎ETxmnfV9i G9P 5Ӡ6Y؋]A/e1A D*H\VqAO3=٤HDuYW9YP>a `=Rp2+& 4".t@wBC=ɔ32/!8;8G"j}/ `O_e(ُl^fWPzM~"])aQzF jG}ə*Jdʨ$EZ`Q4Ӈc6)\mp?/jK?H;4媇{m5De7`x!uGqI B\Lu3S{0qgtw_M{fOO(5+w69>-UReYcj7<.BT+iE%b @U JW  'o8*$2v>]|*dsCEov P,~ĀG?̖W3|h+]|t_{XOGvym0h S9bWw fr!Ӽ}䷽&z$J.4a) :8E2툦<LyXKfD\J/ GdpNGfX+D,#q+ƎY͕I?DEGu#DžXOPQosşAY%Fhp0))UYJ| S[D]w[a1+NЮ`vݼtO7_ZR>,it:pPP񼶈bhTm>WzgV+ ゥ4QU2V.atBQ?ߪ+`Py*IAhw+}Eg`#kpHjX+abZv:ua1@e N}7 UZv@p6kr:%?P?N\،G2 h@?Z^UNQ疲o,x$,2mT(z?5 c !wZj^?<n6Eص?*w=\*):wJW*!:P@T쁸VrwW,jq8F4nd> O):6'Rc CIͼR||$Y(JM}`ix8SM5T7$sBJԣ؂ d돵,q`t`>Kd;9}K.0hC>{Rns< V{}Ng8^N(82 QoFt2jƐRXh{ aF?2-)Y RzI~hze~ST2Qu"7bmgiZTGiTIG$NijNqpԄ1OzFE:5PaV혟uLWPKoYcѣ6G,BD6Km h,PC:Vv#7YyecqT5l^k~D?$-v&- R-ؓ8Éloqe( *@k@IGq 2V?=H]!I({6rĉg]AK#OWps;9:Deexiez?:lָ9yuĹѱMĊH fלNP#p\,3zwUhXq8^KLo(3( MiWs59o| :Gltn@ޱ>f o/vv1H]OFRmo+yBǞN k ?֛CAܧ*'B[6?XqOz⨝0Ը./el&?͕jرcfNXKF;-9h]CsM1Z8_ޯh΢8:% HC:e~d vV< WeoAT_˟TZ`FLӯ8d&-]/ i P8}TOj*ni:eջnm/G{@/JP&pD1/Q뤄Ӣ $ C#M(qd!3I)ZĝXxJs1 ' Ta]41qw].]eX,=jw߻n$Adte|a%0.үpҺ<@Y֣q_5 ]#d{ x! \Aúx%6K=F??񉠒DLX_4/*|aD$קԑMuWaBdB-n.0'51FA1ǒR ɡR<8To0[i !dBG|eŨQa=ˊZ7۵31'@X"' w8 -B'1'(q!Z`1|ڌz4k2J# 0BZ*E);Z38pHӅ{w~#"ZY33(MMo` uKpoˌ2I'dʖ3qpU#0wxay$o 8iӜ#Np4:ߥ?+CXq/|?.c}{4>PڙR2({Ab`Qs134G6&)} ЂoEn88T[T9{8#55 /J73ϟ4zẏ=k@dXaETqh'arI>]E9$ =Cf5O"YV[<lx}i3SBsb#/ڭwA3-i?$vYL[PhO4*yX\+[%>kj30:L;s}OL[n꤭ rjc,xO:!Ƥw 0FCWDaȦl_eg&EPb'0Ś?u`43崗`evW*Cg΀f]<T8(ioۚ.Iƛ'J<7P`6T(C:/Z>י}*$' f*ЫvKLi @Myם$s;;4A[4Plq9$$ , EOY5ygٴօA&O*cuHERbߏyo;>c'16,{N'W;/cb[ID#BZ Hy1N{K`6$hvL3- &U<6pc 03l[6S@Bsn@(R(7`_Uy "xT`گ畕Q̱TE(Ju< `j}Zl-{Nixkt sLLT7/yR+Ϋ,s1e{}^f%?/H; esYK}tT<{`}"(XOUml7ov}=rv/Y0Y%z u:W@m !#^h#f-mY"˂ d ܩάBptCɓ;'Q >kVv|R/(9d]f|^ E'`oNQ h"QEBL%N|6>bw#]ϱzI}azH6`X mTHr TL7wspx~ E |$z7x]yFpj'ނ߸\A!w5L;0ߵ;oDDzyŔخ#! ++vq93Bz-է](Rӹ oIȓk]p5X/ihm7>"w@ vD0p4k[JdWhtܼ&S7 6vRtЍC>2P/[ 7O"!%$i*Bć.FH9zM~^2Z pې'a(^c?3j#dw WL{)!YMsBYnoPe50LdO-S͏ȒOމ0'Uw/:kߩ' 1(n9 QT%`Zҿ+/g+)6.!z_p6 o'(i ,_hyNAǣR(g))rK\`nFc [\o5:}vBwDiQC3y2P/:- r?6;;`!xp s 1/vIϔ &FHgdИ^.Q{sШxV /p4=Og7D^9&c=?욟CIXP{O42 ՔI\*3mE{׃QLe&%YBP3 Ih15h=U!ɳrǷhx1BVCT²P' uds\>dwkuJ55Sћ^rE/XDN+|Qas?r8= f7Q2 )ȇQO!Hd7  6K}x*DžAWtv1;`>hfODHIez}'D*pNH/O%2L kߨ}? )/zN؍WU]ЕhUhL4޲ Sz -'CPͶ>of\Íp^BGzHl; ”_X0[;/,Y{;3"x%/^:zO}yiN希xkv3͡f^Ӳgxv!B s>sbĮ$uruR~|d=a*m5gEkQUV(y&e;_"ӵK!fYN8P׀gaHI߶|a+WUxl7ފ4{ݗivwzke*xLsdrZ]LC= l;L[]lj-\HP7L=#jǨx{u@҅(aHњ#L)׬b%?67G:뉵:}8h@"+wP.4 Kc]0 %~_U"%Rqx @tOp_Qدpen}~Ee6v^Mhe$|;Tf-w9Kb?2ni)ObRJV J zf*{g=bK޹e`w04*8;k JEd?3;r k%x#PXof͞|'M +MD6W c8 @4mŚv5u?fXe*o-֌Gǔp)1KRMm.6 .U駚 Sы%Lf,@u Y!_.{-{êihDa ~w[;pRR,#~߷$/iǖ ԩzϘ%Rd >l /gVOX6ITqP5ͣ[\Zg-!Ҫ(J]MY5H![ŨwBz.}?! .Q:׌=BWJX@!@5E;WwjyJV!65Tfv1P$jZ;XR>~ hnrZOQ ɺ9*@{=,B'.>#+ YFgR}wfܿ~OE{IXcBS<=a9Mݱw>MG#soYh+SR*xҽ X<$L "hoC)ļ 9NwS08%2aw(hop5xU9G}6'}w *ʞHҌXYayͷ6z BxV瞇uARf:vNoNCwճVV+A<ښjW;Cޓ4OVf,2n.r\5b7ԡ'bъҔQGQ/ņ5cW,x;5'okG ,f΃WF_ Ǹ6Sebv?+7CUGpj: p.li@GO9X,cNOB7?!V9:Gy4b5Ek}^7^U1F$Z<"Xu9îfSCy݌}<] }|岛}pjP7:rooky(ObR£ȥ0:Cm͜pqpxZ%Z'1o\;)܎^4`ɷW6]` ?l8!fRIlAT>'Q>6Zċpm#"1ɝqqtUXj`4g8@'| )ͅVU<~Iar-Q;m!b4 o@6Vaa L?Acce2<;ojP$e"Y"]iyKBf5ښY+Z^ҍeE}Ҽ{z${2޵K3c5dܰ$l mU9gJ͆@'ѵ ibz$'Hy2=Fdf+"0/jkns.W7He C1 Y[wՔY?0Np)Re fU9Ala \Z|EY`*zf^cd=2/G$$qoC`Z~-o1Gu;Lhؾ$ҳ-aah< 16 ˪FV;z< Jq!FoצA\*'>h:FA[£ b"%٨> ό/'H&aCD?2 Z&8A 0Kh6\<ΊU!!|pڦє+& I{h:(}Nb?Ĩ!1p}jf;s 9<PS a/WIo,m18ŁyQ15>Pk(ql|Ju\~Bݗ+tWUlr90oM݉cc؊=teQ跦6WDqX n) c@ ]Ĩ̆$Fa@}1~*o;oP`eNjA&05d1s&ahtguX.sx^◁eu"HЫ|l;P6 s(t& `_-3'Gi*Fc3^#2+@9K\G S ds$%}3'(+]sYB7$6IDʔLTߟ&Q>He,c/bWBuvo)_iĵ!_V65,Cקc:vjCYAA4xY:HZ3z]PP}\Fw.9INłUg'*:> hLL}G1em{5 '/LJ(v\fД&RKgEw? /}Cʢ9$]d+4$PpT&L6ܣ]gQ)&sYYO-Qo^08ު&3 C4?L!$rޱ,&2O a4 v+n(YrNPG 5v{f ܞ}ãdOjqzȻ0Ziy rNi|6Y,a:KҐf2,kڹ=DaK.gaf{aHR^I-ЃݬkӞK745r 22 ͮU#XݤLړJA9G9}MIr#;ADS%) G+z X BaKo#u2]~kl17Xp jT>(5(Q8:q7XG.$e`PO]<|qť+js'2B4+oiX?Ccw nG2;osu!/XQo[H4{;.'we Q㽅'dUo)~zE6P< w88 fcm *JPM.C,L.ڠp4kH2Ӑ`(/&J_10At-z5摥^ɷ@sYgN)vwt@v^bW VF!k.lӻ’mKe$N~#¯fz%]SΊJάj=*JUx}IO̓'C ^.5ծ?פ9+IqɗvȠ`JtZseH?b乄@$Hvmg^eZO]l.i=b@9 )֢\$ȔL ]mRpRi4QhbcpOo @ϚiQ[l~ݶ霳E-R= mq)xHQ7τVˡWH9S C@,KHifA}G;"*מJfͳq\k3wZzeGz381ɣNp @?MD#uu;Vy-⒆Pi((߮Se:oess)BY%6bCdJ۪2CJ,='/ L%x"bcDsh|Glm2칷<Ӣ"G.yTLo\{0fe}k6"_w1 INTQƉja?r;ч߂S'M8Nڪ}Mp3T3RU s"ۼhύS5 /*0L"0*kk|7`HGSE+8|;jf["DP}@ &GWl)8=H *kb]{y2 K+Hǐ;N%]u~J-I :Y!*j)3-p>rA1 Fܿio;i/4 %q׺[ eg4:ruWT.xbӥ 0d}yu2p=/2G}OG#[iB䵋?-\E,A `VIxg.4^4-&32{# u.;N8h1^&bZqs! SU7 ٱCٙ[Y\oG_h@֐se_o왵X|YH&pG( C9fN(VtrFJ;ܬ@LmM(`Bŭ`]KS<3=bB z+ ëS dʖƪM8/aRR0B2Gy(hsLM&sE5( "%Ǟ/DG.P\hY4h/ 3\3S-N]OQ!g5 #A`R{+-v!^[‚ ^C6) i"?uttmCH@ aq{%g| T܋ᴝJ1Znzlh>rX@ e[>-"-OlX"FxM=)fRHԯ,{7)(&}y`̚5;{=JaTڱE 8_t:/CϛMJ۾ꈐ?]~/d=P~TCe$~>id}Po6|+f1Cn蔢k,yֹ&Q&?JҲ gRT(E8&܏:i( bJ< w~, [P:|x:t/ފGFr ju&5λ A}$6قXFpIg'[0/ 5{f=(ɄיS>z@ɸƢ<*NgOwI̺Ҟ\^r 6exVF~X!]i(D^/ʢܩ&V^OtOPee|!d!9trXl \4nh~BHj:7qk߶Ud=`9LDv+ ?cfW*ZXOK4o(A +vQ3&Ukb9(;z`ui: (= K2qCOT*Ulo+P2>>aYڨKY pPl-Y,DSF(éx>b}5t>ɺgjm+˅DrP|rF-vi2T_# SRXp]X-ඈUpQ£Ⴜ'!A‚hxG-_J:Gj*߫/-IYJCKs6ЋygGM4M:[P-#wb;Wh/q?Ì.;x?/0c\#%;Uه;3q@@.k%m`F9^HTCLN¦?5' 9{R]$TU u֣Ya2Σ@Lf& H afAuԂV \uN9Xi![ ڨ߭^8s[,::]Kyb6֓f-k3Ӣ F~|".ݝO!8A,Z}1T&KZ%*jq 3^} D) #V7M{ÎC2&;QGĭ/5_u-joi?(pA WVTzZeLoa6(w]2}#qيxZNpT$T =5Z~W-e= ֘ ^bzDޔa{ 1lw2U^$ugyG=}wߪ461]ޚ j8x (j;H.:Liv}-2RLW.ficf~@&C5&T68o4պWO"I:NXcɈE7VP9:e]QK쟃ok8ȨP1 TPIEAFs9&;q G>oj=!q B<3uZ S_vMmTaz%/ :i["#N6pL\J@rvIv8EcJ{, j]4؂ylrKjc.tyEMn=Tk`?KqB(y9~d[g9_}PDsc$4BW_#t_*ҝӽ%  ~jILE)M߳S|@8C+w//Y5.S!CoM!:b̖#Nd"A${S w% 'bӈ<#C38 xLUh{G J@A-xDZώGcG]!uϫ:Ԏd൓RF+b?WԴ 4s!;Nq>'"%z)mk,kJ?,W%ycΛ+#3wWL{}HǢiDr;EOe pg0 I@bQ~H]*m.Go9U aHSSX iTEY%3v&.BW,Bn9 p`!FMJhl }=6lL@6q(ZJ c?$l~8b[`|c:zZI >[%;f -`)?$ۗzl*U"黇qw ^+lERwZ-M75Kj6oTTc6ɻ8j7:(+1vE41o-n+w[c [`R%1ˌZjG7&uުB5(Q,3qaU"XE ݆xgyTa𶇆<\.pY GkߩCӱBߺq}+X솷Sp;@} :Fˑ32FsxjxR"B_][$hw4w!*qH5-gC f֚P%dzq"r+`U@-)XOs(rEP>T{>!$\c $C۝Hg ĢQh^[@70g2jM,2i;@nXA35XM^>=RQ;r+r<`Ҹ3Xџ6޶ݽo-cF+UMiH2RAoƎB[+zT W n%PEs>$/\u72ٌ^O/_ yVCQ./ɵĤ:OqQzœbs_V"3/U)Oq]xLD}\Rؙ_zLεmYVɶ;\:Vڨ[e'&<}[=曙'[kΖn@S = RyjlIv>Zܰ(CՈAѢWÿud=Zcp-3_tQjLNMOe듿hPLEp4WG Ѹ@ߚd,ծ~_$8v.`-߆j6 h>9hd\O)?1pxg:):ʒ6>-uې·&6Y.>aAo(S wٶ D3W?1a\3odQٵFM &"Ykz0tUR\޼7A>Mc:Mop}Q8mRւݽcLKT.~Uy|9[?Od2j1R+/(y)AhD1]%7nIrj\1.1 `8b7MSB-v$toU9)b>5CD_=F0Ζ/lZt:$2Y,]zjHQ2L!]Rӧn5쬄 @ҖJt;g[#nyxᔪKxZ[=0Sl2=j_'G۩AJL1bYQ:9{>z"XYɴ~wn> >O m ǡ Dל"{M^Q@WGZ8D/D>/3^V^rq=]Hݍpr$p%('R|\GԢW t`*%z4EfyhlEZr 밃tUbM^Lhto=&QS ljz &a/=`(P@R>2!'dF2K7A pK.{ wC3g$]|GDs2VL\L5Unl^~oPڮKQʛZ-c򅶞tMD-OvYQ;3y%7*={vƕ!EQH`!=%}!߽#mU1|WL-dKay"x^,œh@)hܠR@?*!d~W-KboGY\ o\ [ÓLL5Aa<+bnn e&B7ՙW"?(s$I4+VL@g`,gnbdDA)L~_IK( ߨ:ԂSq #q0틸᤾]Q 4o,;z7#)HC¶ݑ5Mb{@"‹A]~AhuɄlSb^`w^Pn!2JTewfsL+Wc{UdXÖd@5TS-E!ps ؤ\S94W=3&nT*%իN)u~ow|_7+oUVVz|s1 GC< CJO+^qP&‡[2*MYݮ^Οa7(fb׶՜b\I9զܕtRwlڑ6~. nle'DMߔ8txβBzv„8Τ z2+"ig37 % @4d5-m(X.E;|]%IRsAdGzzc4WK0rw'Rk<1KH)b{9M y#F3ɍQc(ް b8։q~:F ̥E/E'_DYV*F4"Ӟ__G$6&|pv\Z++3VH5OZ!ioM.0"._^Њ2 aCId|;RZ;G_:8j{p_ \» 2o o@{v#>s]S!SFk)h`6j80ގM%Nj5AsA\qw?މɹ.(Mb?n p {̃tڠU6&/7:d_*ETXa>as'\>mPogMwdt#ڕIEP$-}3) iZ '`3<(KPTvi3Xe\L-fB!x#HǬ˩"plP.^R@KAiԷ3jtoA "=mXok3-y`ɼ(z!3!;{]AV![ a쩖"yyWrB(eTHp:Ƶ&JA$#: ;5f_-M>0 Ds"2W'׷@WzhX+C6W&A v^JnyZOǿկOw`ϷyIݽ3{=3m}j2G!Joyf$vLgp+ U\zL*wfYg/O{. \e/j=ٱL Al/*??0! w7bVҚ/尨58Ǜ0y( h?rL5 bB%%>RfbT}_Po0]֮¼9%v( q7ܽ"o8 #gő(Aրܤ*lGqv~K (Eu~'QT3Eh? j*3iHmI1!xv _ )QNLo'iC#*)2Y[{ê`zwҶa)Dٙ: *E$Fpl߫QQnJK*GO'#X,^ &%vҟM n AtGK' |۪{X\^tU0:i{) _S߅΀4=$>e4 +?=&yxemxʆc[t:\Aœy)I%9M rhVjaAݲDcҨ6TɏI_7OV$8<g5 .=̛y3hHyrۇoa.VzA{LKh!왫\ :"$> }.TJHAq|s.ߗ'ٕ8khU⚀bziZc8C RR!LESz&:2#nUֻd6T$-:= nn< wPs+Tka.-ʵ᭳tH iyS \fFM۹U$}k:RmDڏV7b򿖄g#4BΫ:\-Tr(1&+ ꉄK~=SP-~,uL? IIstīgx6;- eꙄ񇡪;BSm^|_blܿ V@2_l1vTK[4O$ʄcGerkoo|s|ލrIſy B@P5ߑgEJBE>xjr+l|近Ay3 ʐED/qZ ]YoVeSնQ 8sq8 &u*L,j/0jpSrBajD4l,{BT"Xf֗m;؛(p`367`3@@Cl]ǰ<|| Mk+WW'L"eC/TAnM[kkǦ/cc]Czaլ6N?DY*n'UFDc۷ߟXTR-z2;8DZUEy$ĶhDM,L7N5YYa>:Z$G ˅-ss  aN&: 99 fjA7PTD8Z|xϮ.y-,Gי?P}#ϵWrfѣ<ˏG 5.]"bB!Eq]=xWwa/Ps$y_(3cj Ts]0|+ C{cr!rå ,+?c@nQMp-s@Xֵm se-}3Mj:a} 6$&jD{+ENtO.i}g-@=Z+?x7qZvRjz[> yE04O8:1~hAK,\!qj#ս}sV8 вMPC+z> ߛ@篱/ `;V,I>=%^+xجR 6~')VqOP|oǜHO.enw(  ~0$\:tHfne? KT cXRFbxdPWfV<M1}H=x34u> uRA-YB<Ҟ?pԝt7\ZeJJ& VBMע˾ȵ}rg'iLAX+Zdz(5LZ}|.yTNk"Q{)_b3j%&75]Z{]Df[5olXlM.&@-A̡/h>) jkynpDkTTJO`h]oXݩRoKpkv&^Vq{Qfa" : Z:4Z3ׇוCon|d2H*7qTy E eU V[?>$Izrgn"5oK~Ѻ%԰]7%3}bVV7c׼?2_,UcVͳ6sdxZFo(gU1`cqM{ v\JN-l 4!*p _B0= Uׯkv]/B1l|v dSv|{-h`"eds 5sTd$S63uqذ>֤HzΘˮ!;B>8D3&k7}ʴ+H푚=v YߗCu姡NŽ<E9%H)/ 7^s %8oᝦɏ yk⧷H BcwU?ǷB@i/|I"o0̻"G(N6#xGvhҴj\wj Bm'5Ńom6Ia- !Yl*PW}ڐc4{~jY7}v~ Wa2G.j zɝn'C/LrՑtqwΫ|.^bΟb`3'78K)o7T3l zR`ogBY%@rO(5PU%YDot6֠-[IHQ'Vݸq2ЇwI]8 ѥIfM-:޾j)i%x[D7y A:#1~[O9:FikykgI1LFg$5gTU.^9xUy;0 \_ef/rQ߱w] xey;jyJG6x(>X8"JKdqcgAp#PƜF!IT34-Gc{G$)I! 4,R "@ ka+*ڱ=6!T>9umQM]ԥ}-yw` K1mVqAX4. hr}!G..C*pֽ'*Pg6'O!NE{;$1Amo≬s+&{^o $}R\kxim5žE2uV![wĿQvweE%:;CD@WdP(if Z*Vi. H笤 h@/2i|L@C& 'c2O|qVE Z/nz7HLn*X 42~RW>y%HA)2jXQ%k+NOmW}<pz ϡ$1@ :H ?"-bܓf_̀r*EKF^:L.O0JJ&gnW, u܆G )w 3CB(x3;TBLjʼ ^DyI0dw6.]R".Ƿ5\ yop H ϚO-*Y}^vVj n8^ rjqFZy@$PL ڒAެUFx4!Ku>~RZpiYGzzϝ$"+ Cal@&Lb9~kC=6 'ݦ2[+d`B oafaY+^#dz+uW^0ymqq;MF:)h'IŰs{yuԁD~ vjRvS8r-I ccl;ѻ<z+Q*J^hC1'8Rso,ט)KR{J:=7Fq.kW41Ѭ{#@J,w,K 9*7g[f0w%DtcxGD&\0)fʄ'!I~)9иo"ϊ 5#L  W -F8x CHw&9\hi~sLᇿh%&NKMXU},GTE!%__D-ISdlx%k%PG; "Qvd[)~O "b5ZTH r#U״ zEE '-8Q`khR-_%(|YE6Hq Ŕ:OṬۛQl$>oN `nOwG!R{{T8 F8Tׄ?!5m ]ʒ ~M(9#VҜ+eЛht 152OӠ?ܘX3"o_roDJ44jAM@(O|4 4rZw˔gft8ݧ4|2G0!dFV^3V5Ow #t-'\/ S2 0?D-sK=f2 G%R"PTC-]K a슉a#wb/yvJ%z0y|p1((9.ϸ`KNx5w1TCR vp&pa鼖ܷ!8:/2x/el;GCk}"؞C! c6.0b n5a`RG # m6'hel~9RUل_h//jtaED273wyStڜ}S؃NK&~:Kq*7K%z]lCu[n(8 PX.j=-OSm՞=P UC&Cj,|wDV[4|7 ;&Nl ޔ-[6/&jVkn?[8Pp/)I:<+}w87TdnD =:{$o8*g;,s/Y/[w;@Aczn [Ib!.k `jI=vXkIRsePjSZgVUxeESx)RĽ߄xv όR@^K 8@W-6 ۲JA2_".jdž/t6Xm_l׿戮93u1v/8)Q2';FğFZp)ae 5M{%P v=o f:]4[z?9UVd޵b_=+;zl7:M5^|i/LiȀBF:J;Z73-t5|A~vЖi&j lƂ}pbؾ]f1De:E/4\h}=BIZ1wtn=k&8=N~,Ww@IW1Q@.#Ro{9ËYk1X`OB+C qzu l؞|("葵?R}g\ Bgmsh-Jub8 Z23My SZ/<2}p?37?ѡiرj$^XRkCvl AoUkxkwNhͻ Na.̓O錳S|V' A f ̏z1 \lt| ,T"½\\%_o]\e Iu.>mlڰ狯ƀ﷕dnѲ?y8#SPab>jε;DD@jنI/**%I%ױWt2h,є"[&o`3"T1[450q]WwƖU>l1x(luR.XId=LiQ(_PүyH p])0KOD1!A⏖aד$k+*i4g!.!źqNV^B*T7K KdCM;DdWerB]6h,"J '8ƸЮukIJ?z^*;v+M,oM Gbn8wj%`hI1D(ci'$"ZkTm}d{G܏b#"@arKE!Ȯ[BkALu#wsy/\mcՁbr DzD̻2^_9'!š EmP6Ip^±贆 A{2Fj8U0mF$M'|)pS{brËğ]WR6AUGǺ'1q&:FibݦF0bvY WRJqϲ O_tRk(+ չi2I*")PRw4$jLj1sqX%('t\xZ'",3mX`8}[TEW+G|i{_1e}LMҕ.%{fS-SwFrQNW  ̮חQxrVxP;^Lcl3򱖵B"m@J}얽Y*wLr8Ż;r>m8Ni˲-&f0Fێ]XowaJq SJF@i_ٜ+ yjɎ%(DR SVTR«bEh4sFv/fF׉ }' 3~x~; ,w<[.8^bs=^|)*\ts4pQT}xT{qQ¡ϔ_|v2ځE wg|f! RH&@͏M<aOFyf>M 1ԭZD^۴3Эd}nѮ-A32BI/6PK?Uo[ժ"bͻ@]] uR?( g"bk9/I?ޑq B(k1દ 4YnGUY'*D5˩-{?p$F%n+QGF~ `f73sE&iO&~.FJ(Ӷs }$!0E ϓJhf"- ׇ}uF E?X6>bl)~r'bi]|dfwxײ{1#Р:;@WMa Z:I(kUݿQ ?j "6ť &N `k$yCF$FH4&OlCVI2'l_LPnE|z;@2l'BSBsxL;j 0pjY9Ÿ*2LuiY|%tkCrtBsDrvJl#w)jgq˩Hȣrw? T#.-S,S'd{ \Mç9`ÉHZ}!aCj@)IH"'>b^qw!*xBRjh(~e.YF:k %eok.-iDӺGQȽ*侻u \XDD;%Lɿ31\kpm*!ɭnC@(.$|- o`kDƧ 3%a X۴ĉ*HQ: =rp.zOxDP1(LC7D}kDC=A]=Anͦ68pIOҴ$7WnLrXw``{Be)7N=!)@B?K9ICbhM c0)[κVܨt1h),`7)x8-%Jnp3Z3@$R=T$+JSL[l }ߴd!u]\ zFv N>Pp& ^:-Ȇ *i{g|WBiʪ]w xc9p0; > -M"1 >Fs1j^P ݧ $`ު䣑)~]Y0;^ `IBrEy%-vӒZM !^h&8 /FiԽƽ'aT:zf Αȿ`f^#B[06 R'9ԖjXt&ԂJ6Ge_~ޢoɔC#ypXԚ>mcS#ti[I{cNj'mE?}6'ZJYg4 R{&۱S r&W sR=sћ_p502@;&k9M%Hy養[NPGB ۨr{d͝w&,6s%ʎ B, s~lӓg!qlby ?_][sF=ooA`Yjm6RaF4IP0F+*8À@a__da]՗,݃QP$-A!Cu:붡؝aF7_1lj]SN\;߂̵)"ʾCPxoJ;pt=!ƌm6x3mNjgp>f,Z !B;}$Lh0ìx4d}Hё# #SenD6x}MQcZJr :7!d >+J&kh%zLN8ݷJX,Eά9#$7-E7j+t)N~!x2IUƺ FM2hVK}]-.mPI'S` ni:4KDiNJ$w Od\%ʶ6!(6'S N_naq*f4lX նGl7{@Vl[T; l= 3k݂8sӘ{:9=^ [eM(dRG6 o~u3͏g[`b\9 xaBVFu'^8K.:#m+Qq@mIJ1im%#IAn[d BuwXc-Ϩm %RX1ҪhQ[(91)yIQJdw |fӉ.=2W $Eփ/;u@㲇/s3n)0 U!lr@ƁMErgw4c~h[n1w^nXCqcͮLaly?-=}لw3vu-$؊QfcJ(kKĥ1f[J^_̅z!ʻ1zhk"%prfazvE`(۱܌`4mD'K;_*o>h`J;? RT~37ǚ:"/\}HF^] ׈=L *E|lv.yT,$0U-b2\?O]URN^CYD(;JI^1ѶrR՟NHp290{ե@²Il o%Ő}yg$KD+Aef)D=C|xmT Ćf $ <;NaK/uE.K ZY`i0q,O&7DM)0WSBǼ^gص' @f*I6:^26!\`< K! ww+a6i^ޡF7y9B<IFbfQ@6nݼrs@5Ѕf69$ lGo6puYxLf:m2&&卨\2ɷJe5]`[(o@xƬEյ==vǷ}LI^cMCh»*?nR4/e;<-M\Y"SǨ {&+|~I[y_fL*gnZ+ C;q ;:6#*M6a-d6Wޖk4Jd_[Ӯ7siE`4Z"cSg(Z_Gz>M0GZ(v'WpjJ5}өpXK,=pMbaiynT#쵵wͅeXYȨIZ⍜9:_q;,sZ۶-mmfS6yA1_jd4>eoyB7q=8BV$Nd~OKClqf ,{ ͻ)ËM =Ψ^H}\_.{K%/\#xtbxpb>HC*5_ˬ"L,KL^۽H>c[?+=Y4wTMӇTM1  GgeIvd[^h<9tyuNP|TKޜ^!CstցxP8VvX胔ɖ+\R6iNQBgцX@\ï?1 j=W\֯/n3n챨9ӣW hu>r-ZEܑy\8SM;+}Y{\%|nr>(<4 fj'C`' +ҷü%8؄8 P 󛞯@큣/B}k~cPQ:Q$BTvܭֽ MuN?A\KzCg\x:=]rC8{U=6BN} tus/%Ro@zоL:34>fDI|׀'$aς3E_qC2z&q-BG3 Ύ_21w/A,7-Թa%;/DT&ؾdz:`ŷha_.oAN8 )9W@0~& -&,BM8؍+|e&q[^*m??UKBbҎ4^4>γ53ax?(X:L"`$,aqC<twSni-Mn6?* +#09TIXP\zI\_+Z>v y7MZ~l:Ee9GЩx=(\Uz 1IPvݣDׯmHq-⽮}.DLsL$Y&42rW a9UI2x]>EHhsN^"PS'D+ߧ mPnGO*9RQkªp`R'CC?U/a=/?/B'Р*;E !opê,ZcDC/;siZ +W,ˎyN^$'D:NddS.h ^Q:] "+1G&a)ڷhwR2ew8#2Q xQ*fv1{:* @>|B}};q[*AK/vsTeBY;'L֣uśj,d 3fd9uh5 {jZ qX3gs ,8Q>ai ǎ({Zkf>["|؎3ȎlM>tRiLԡRxfppα̛`;bR f6"O| 9 . Y&/#nBS˃(S;m[׺&d`ق3?%Y z] atgf6֣}$rG FL~gv6JC*@’zl70""F[X o݊2| ],cgI~v#b Z¼ťA3ySivS2ABKE.*Ot&ˢY)SȢi>uXm$nYY5rhGI)[:!3|"dqհWka?BIni g $f1Ip/LHS>~n}jOp{,s'B?oZV8:o0}&#k,^8QW 2пP< dK3=# P7ȹ(˺o'0@K .y;; ~ D%IW:݃>@?-Jz P2?_lVx0%8z&ﱕ=X)0m;9X\O"T{QNpM> )9Ή8]{30|||$9I ^=(bS{b=\W!t|$bT d V?ꬂExX=ݯDĒ,J,C{|BrT?M뭾!*HY j@> DdM y40cƛ6#+1z>nq"Ą1uSZmgFw O3\8j5;k oW0̴r=q`C Pܺҿ]Ҕ.(~UJ{ ?m`(ޕ5Z`@/殁 8n0@H=RG@.ɶ+(gENDIS8#wJTL9I7xQSU%;2$p!jD#m ݽ{Ρ\4:ꑼa:G=xF1۠<ľI({l =TGHcRgm ]:IC:c'r+[$Mp ṫRUvU+/bŇDD5!*oRտ6[D^uCX M C p}iO)xh'c3 7ֱkpc㑽 %O?:~qO6$l*.mfj3irt "o2kO)Z Cld+i|Ӻ]+$E"qٙu;_?EYi LӲ},N%۫A[w7TqGAJ_YNW.>m0m`x{DREvqE-%OsG!2i\3(usڦ_o8zWղ"ѽ/";`\&4ZW{U6%YY-7=<VZ*=ǜ.bVwk+hYA)8WF ;~\C㎼D6T,Rf*k"ǘk8ҁGGlh"Suǹx֔I/ ^ \4Ja 3xd(Vp]l-D8 8ĭM-Th*߅v5RQ=  s+8q'Tf焗7t? n(Oip.+C>]Tn/?]@jq埡Ӝ#3tB=L؃,HEn[{ TA4v?`\Q7)hca)`G*ȣ^JDzL䣈DOMBxlA4uVZO &8Jnmk  ,4$=QȈg)"|OKuNi ¹O VHŔS kGA.7ep'r)4|s.q+}XA OMOw#3 ObܦiwyvWhy0ߢ.;TݚT1>e2KNט'; 9ք ?нgyk^(.WX+VLXxD~h[WNn btF`a9҅@EnUcPq?.6- %]b+, lM#7$NYe'ԭE5kt{U'02s:մKr- `!c/ ÑԘ j'&\ns?B~cդ"QٴxfSyTCuR~I2TuCm9jUC&פ`;qzb2dQ  `0-HD*qLm`1YP0^{_D.<n`~N k NHK[1JUYrWb6YΊbmYr&ndp嚇GZ h(\CTf뼩٥ PA4 p,@9_T&cs763E9ۙp9FPwIxtm“.hDJ@xrv^Y9H}Ed7NYI>Lr;DZJ2KhWNxsr84 ;Cg+_no }a*"drU}LNp$j>3 a~"~3^K~/Jb~ adz=KM&-; 9(e7S^R`i*O(RQX׀4A T }_lk$,!wѓˌX"6Jy,jY;򙿧9zƙ)+ӥ&&C#Lt40W_YwQO33p8Mv\_k E @gw36ʠ=p w(\ _(+;4RM-Z>lƗ^;]sί ߤJ߫A$dD04)M1 8.%O$ܤUogaGi싉HEyOXsڬWRPLnsFĊl4.kr' ljdI QVF lFf-kz:;웭x=e)?A4 1Sfʧ ,ٳzF ##0x!6 XQ@4 I;*vSкin34OOwxj2cjAaTTb4BVktXY;ƫzPԵI< Qz7qm F&U.Q"w-T  yqg3nքl%{ݐɡ4zD˝P(b`cshqjERU<hLp2 7 eL>"մeB[^8 d 3@6I:4 bK-Hwjޕ'1r/=IO;Ow\m-xRΪ>Vn`ԏ_e.""l]y[Z};:=&;E).肊:|Oj;)Ƨ[n]$i({VFqp &lXJcnStvLfY Үn#m̒|%oJm;+Kͻ0MJb 3?/ěc`M] A(wxrzS>q*o|fTqu+DQf,Mn('=܂Ȩ/>12, ez R/|rF޽y_ ^SH‡k}JA7"ɶbrK8 y*hBb~ϔHLhfI`/-Jz6VX!3`8~&-5kuSOEh[MeXkeUZ=3TO0k7)~Sxt<`o,r=e_!r YP;ßg7MzbXA$.k@]꿫*"lJ;:hxMUrBg gHV^GTb e;Oy!(Ww_$ sFp> 3YTabSikkK9o5_xC ٖjkbg&n_zKzѣ\9o%vM 1BuSƫZv0o p 1i(up-(ɃwS=Үa;Wq?sFOpl#33׶65qwV5>W$"!CB\C"_:-6 '%A=>B݊#2lx1^XKZO8ab9)# ݎ)T"?R \6'{p=H7䏄5lY־ aT]ueFceh2#"g_0H(}_*M fQlxn{Lde1k5#d?{|Js=J?@ՑyZtT c#k;VxYa(ʢO_-o[mjsZ4Dc8m;t~4},֖i^Ɏb@u6B0ػb@.)OܧA3kmZvmuT 7Cֲ/>kDۂ=Q /|!;k\mjn97`qqbJTlkA;S1",WB</`{6T@M{!A,Gɕl}.9)v"No鈤M;l̷2j4 ne64i†g\@7@[FSlŻ,.T%* 僈 }dkGzGOob +ןu1ps!>Dc2~y?|?ER\9HeH<NỦJWAUFjR;nC^ UH<4 X{C1F\W0F`8Hӭ+J"2`ʇZ`F$fY ;Mr=@RT8>NfvW[fi aAGDIfV`\sy^.YnX($cI]Aп>/|FV,`5Wή\044 2&GՓ h^_ﯢ#6 ybO"aC1{!r"E2nYA(;N&]m:-HmACN`N(o rQNvyF[71'[0c0Y_=XY "Iw9h_ [`ΎSQs+C.-|I &XfeuAzg9*MY-m9)/>$.gr}rߏgJ{k{,!KnKOK >2ܑ1oæ%vzM0`82/ēotG; o8P#Us P7‘tsp#8 &ѩ [b ļ &.PYLrPyC-Cz9ahR\ݢ]J)i x|ٺzlN e(. X7qNEv|%UWW( ۗyZlxrq'V L]Ua,$X lv0PJ?c9X@@8 nеɢ?FKS2#f2Aԭ3̎,xh Y\wUSH\ sZGBxm}io\7C ĥl+&Fz5$ ~__IRfDmj-7Va~~Yݑk[ojly?R'/ă#(*/g#.?r_x1 K[8dsF f6%)rO!E\H u{5^N u%b?(F6 KNQb1TҋmkF{atfwƅa{wM,Wk= S 2%#K"+"l Fl ʖ5?4Z XWT6|` JY;5V:#vɝg&lo1әZ!ͮ6ʡbh06:~B{addaRICG-c"-t*!ϧ*IcmЦSJ909]tVB-`8q{Q9ۛRwR|!NQ=C ELjm$󌤙g50o)hnU0 7-!x|#V^Zoz6yhj$;( t\ő1Z-E\t; r-6ƱJhNI[;G<)2QPOb WlR@g edMUXW0HyӝH0oQh"wIV˲}>%rǩv1KdUϛ;4vB?*MyM6;91H$f"O"4i5)8l8\j|+Ob?][ĴUG^22K^X"(HoE8Lj$?;u^+Y4¨irj1[XIqaɽ+.A׶>]s{Uf [WKڙV(};M\Q!-z|{P #&y6ɦ(cu+b#'γDφߡqM"yIMm?M.<#bn7f}z,qmiebVd[ҫ((X#Ψ#HO0ē;&}A a4+DWt'tU57mvn L__,ዢ.{MLFw3i ~ū@u)A}JQQHYH%*z'\2w+Ș ,2KkNfM&;8Q=I4=wxBċ{Ȝ3^}$혛ـӴ|tsm eg- K=ðMP, Iq`,t 8`Ԗy * 5?;8V⚰")h\^o"fp+W(0'u *YSo9dR؛q:~$M)z"ny:xTMp?VVv{ bIEMPvLM NFůjams) _p1mrA}ٶ]PW$6@g^zv CSu{j ί|YNZrz3:ϣ*037hܞͺWUo7,Ki5Iz YH1J- OJVȈ97#, zo$?uq/pMl/Q3!0s)ܢ$lS:,gv'cnA[`P3fId0Hϡ^mM}0u{J]L:S2w3Q7G^Jj7/!D\"$O™Ԣ 2zvZGoK!{VS$c)aҸUG@rH qE&ŭwˆՑ?Ď GMdq0_҆Ỉ{ 5O5Cȇg}`f//]uswx>=㋸ oMD4\_vc\1a:7U֗BkqJJg 9a) 2X3G6̯sA<_G+dzeɬ\lc}[kZ{־*PkYU:OK]wۻ-֗{RWk}PIC`-)˲fk=Ǟf1,neWWQ"ή&S҃NUm!FZ*yԘ=G={بlO4¿j;}p ,%U9s$5: ~*cܩʚ8]Y$X"p, L+'1^D| q{K*H"_ :K6hbם> c,YYrށw3 ƧJ4ze$6X#amŹe(Qu@DRB}olXh+z>HK0l$gXq{ejN!3r|sֿ*yk*qxR r&6 .d#K[~ BŝEf%Eg Xp@Oh]7t$(lM#]얆2{2qA1Xmx6_f~p4S}#>Ŗ{% _$8.г?);`>r6_8+>5] H+]w҄G:wX {?+MJ2-L_uz`y(: 8Ǔ ߽w!k8mSKbYb?@iK = qyUc0>9 :֑i<.±TaŹ8Ւ0\_|;IJ=um,'NO@+龜 @%z8Nk"$<8#t:Ⱥvk)>#gP#ٮ(ڒN1v8׌h7C/sxܖ˲}`K1''R Lw, .樦$+5)MH@S'WNj6ߍ[ݏ^j⢴_&C<& kǁd"j_19GHFrJ"ivd0eަ=# G'j@opsrDΏ^a)tt Z+r68B4h zCկVP5ި5XBD^3Y]쓦"L鮏9~|Y_^rjn_m  SE[Щ=zUf*ގpBoLv(7@1FjOIзG,2M9>.GlrLԀ޸>׀f.ÆX./ XBW]B)oԂLO*K0~i ,'ğm|}w(cYD-7Xqva -ʊe{tLEX6#(pẠ.ipAWdv@SUHv_ny7P= Dgo^]:@ԇܵnyR݃7-\1aѽI Ӳ`&}gqUTy~YrFiLROnV̉>1eVhZׇ>'oipѮjANqTfBK:q&QXY&qVPQk1kh;M۔TN+! 5Ƴ\۫V [0BCt:-1騈@kNI5~ )`ZVwt%]HkLY!'#*pj/6Tx~6?"g>>&*]L@0pibR8E Fph~ń!kHdJaӐrkgZEΫwC1޵.Z8aaFKFDem=r&{Ŧ5zdOIˁ}{$4$6 d yD] yQMUͳֳ֧?Vq0ˇ%2 /\;rr:S(jUH7^}Pn}UP@xz,`_)LiJeqejd䜰V*ɫ !u[a]8y0:ϐg,mtWsXA˹`6. /9Wa}oElV 9/W2',R{Aƅ%?XTޅGyeZ0HYPu%F%aRGGyh94TRtB?x's$ߗޙ|!E-0 Ǽ. $`^yGף>|m$`#KK=К/ ծ'( #Ȝ4OmdGJ2L\b63+T5$ ŽT%UAISlc.r@5m+6)Uclk.s,a=)0d"!'ύ| ғYV-q6|1#^Q] ,B=21& eN!YNl{i60 a8U"Wpp61M'eslU#<<ֹ"iryLX7J6ĝ:qΫYWý)6{D~ڬV鷒H-LݫjVGfE̕l跃VO)suxJcx$%,0 `rx.Ҙ$0MI$rYW{qv ?T &,r[u|':58;$ZǼR!)O㟊L{!dCkb!Ͳ-kD.,("/p`m0LĐLp/e/i{JeN@pƞu]C)G" u x#Ӎ都c,,~;'6'Tm$BwiN%٤X'P#:\!}7 0~Z' HPϋi7{_yJpCfΉa ԆN$c-ͦ=VPy?r7bS\Y=a3<oV^7;~ 7ZFv68)ʼnle.<:s A,u @We.xch& 4nB_4bDzηtZ4pi8X?K&6mBQu`3pj*Cj Ąߖ$z47ga k_!/eqiY`[$¢>kw=D-I20 p'ߑVMv4SZѶ\2>r%7H'^O9'/ceH:v9Ҭ/Ѧe[8rQ<쮙WX}VBxCb^[XfM#|F^~$>KS|{;[d&DY  44]Gl.|)説SP%Hh-W@Erry=2Gkp۬] ^8};fv ±Z _|%UIEw4|Ѧ.%`g͡3&/,(6_]Q=vi%;ezi3/4|pR<;uehWpaܩH*ƨ ~΀?u^>'|Չh$3ekHqIq֨/ڪ:ܙ}|shGcA@T9p_FuP C69!2ӎ{$o}F+ZC7JmQ-K7qq0&ZjHwm-Mjl>rGwSO|KHϝCʌ/uP_ڮa+EcbC)FZ7 'Cz j-%' E,o+}lWŁ1`@0j VQua^[ ]2Lb+S7zv6v2:u^ەUߡj1Kɿ+ W݁rAXmGitnՀklZ<=K*l R6d/k{FIs8cs@ʟ4p_@9r. *rŘov$vo" 7&抈63Jt-=z`eq]Z5O SXLa2MHM/cٛXWe~p&>,Oj8$+pY# L$KAb;G' B]Tr.wb}EЗ }xaB W} ^UnXuUOz>ϿZ0ɲѵ띣uS$tRЁv6'ۙ`3W#j<;? nYs:.o߉ulZ0veaOh@5.#2f@-; :/*f%\s1/;⒱3/)RĚ+ u` h?y㲭z,[Jcɘy̑ TokL{zdh֍ \qN1?:Nb4WmBc׶ Q֌pY`fzX% O^5{Lg^Dmq<V3O4E?{J0~6ĘC?=wQ?>u ϝ>X&NԳ/5i@~k^u`e+3Ny|7{+_S^S !MWS+f5gi}U1Vd|a !}N7G,ޗ04Nd.eV9sSvP?FؽXķ<ܒ _C,Q8]π [Ӏ:l߅n{|٭N|ᘱ(ꯃ|42ZWd qn`r& 9m$(x?["L_W,9^Y&`= >SE HKvX ݱ4׈8!\@VH@&[gz6E׊2'bdg Y>F#Gݟ{~9La;Ky@QT@IȣPsa 1/;͉_`.#-'- =8۔KOs0 XQ@ٍii?d9]5܂=L7Ea>n{=g2\pӇ2AX !sES#w 8jFw4 ˜IikRØ*Ho&ҏ^ܢ@w#jV&ŝ7dFb.7 y(1cN. -U03Gn h؇R>jPaHUxJ8JO+<{7;߄}VÝԋ2N2qy]~&z{°F5MPLqK +.%haPsHn>^J'N*e;E:{_ 1Twooi7ກ.qńB/Qyq^w'*M耦D)q\&IYCpx/x~Q?0d3"+ ]xWya5lSmni6åd*JyB=y{:|1Mƿ#XD1Ij2GT J4C+'u;Kr?,F;ڵQ(\ ~|fͧJC",~ \NDBD}rkbXr Z˵[ 8eb ^HC\yCl HS7[G1ARl Q9M]8< Ts V^߸J[Ny,OtKe(%Ѩo{ 62?Ĵc 2h3}B_R՛{1@Ok30g' h(_"o>|2UxŽl| b| 8yhٳrk~5mMڊk۷pQָP,ܟIhJDyo&rgj Ҫ>tD ^>ơXp> P 7Ե3Zu9'iPY)H!wjtbENC=a|V븠%(3rK;W@EYSG=ѐ󘎱T| BMTܥvDkK+Tu4{JD2v7b6QccB*2"es_%2 6F Za $>D{ Gzz< &].'%BFjNd&(bxDX7(*r]"3^ǕpTe7S]RX]M`J).GA)?蓪`Yie%Nc:zoU(RAzp4 섄$9p1=ys< Ų<I@%ӕ["ûmUٹ—_I 9"4bGi GZ*C Շw$vr;ʙmU(;%AfLAVu \o&\œb+ (XeY46 C)/Rz*=DuT'yq))EIm-jgIr"Et0vzLCXZ{HՒ%Hu61[;{lp9l~ Kf\-{Fɉ zD ,#le‡fl~45OIϐyvP*!o$ P_,Е桤3U2P""P$L4`rZ=Hoz*F4[mXDٯ^|T|$GS(61r_- a[Qީ1O(i R$6qw 'S=3aj:jR~|>ϙ2keh eC0BJ`]gߛy*([ݳJV3cRL#._ȠI>4=*ڊr\zfcyS1 _nq}9c ,f4 3,zPxdV鵠QJRS?{Xm1*#&PD>-\M#WhV3zwÔ6p~?0 ۫;+ڀk飏| 0kD W>a"ZeA«0gTG@:ug6M}w@|vΜ7PRSE^?o5~)Xˎ.dwq#'D!r>"S~o4E^2BYY]PzP3])ĹiY$Iee]NXZ<V*™fBXsYw1?$ ik} }{/e) NzI8S6gzR&2֞>ZcR1Ya?e<,Q VN?\$)o@"D7MA7 q .#pywrWIaNqte{AYyKee<jg„,}믋LDŽW('JDW헼$)_Ieg VR?͜NLDM2HֺQWiǶPɹMIgx peu a!wř\1`i';0,$\}`GXHiSG] *,pjLϕ#3&]qjcīId[G` 1 1j$0U9zz^G~ek7ӊvC4 J#}{5 {tg!bh!:YUfη׬g޲FTW^wh [ęM(P~sA.Rĉ]_Y:Av^OqaR wֳX-kF/ Z#E&AUoT}[zz[S PjfaR X\]KSCZ&_]-fT+SloB0~Wt`U_rq`zX~w ;!^PLA^,\%d|˺6CţuXZt"[hOWޣ*Kbʻt%@D78h?rZ͐[1i,Y +%#ZJ1fHd8 yl#B؊ښp@ tG NSq0)/Vonlceoks>ɧUlHzlӅ[3|l* ^J>|-4uɝ!ѲH?~y[EIm%H_h| o٬ _TB7aT$+) ʊ <*vd __+/X4}Xk %%ЭRo_\eߙvo.4w>pr~vlT9y,ɘj3ܑJN5R 68^Md!G#D66. eΣ7l Lԁ{x '+ʀTq@}݀ 6M yW{$/Q7sHep yTm(IfH!nWXUO 5*WP jZ'e>Ľ`:3-^s,+׳JX[b7e4g]B"=)~_GӸ(R$,@ga0QR=|\Fdd))U)͂A^&fχ1~zF]Qp% `kWjS+*GoG:Np^9؞(BȕszfSE>Ew=f F>h' ',VP<0@5My#>ymh*tɈh:_lUOXnVCW ɔh=ʼUB ܚDIՃo[];b]kL L&eQ#n(9 S6L$S>i;|`,ʝ$1nY-چ(N0D˻-22C[iICtw@DÆE%jf|s8-p$tȁOWVt*vSu?"yz*nDg ՝bt5:z ESjBI[:>}nfNdR]םib6<=~E&sQI,R;a$Cιʆli 3lj{p3%." mdO@6^)Cav1fͺ?)ZZ N +WoAcw# ܵcRVewNYg$ 3>[czQI7ix;ݜA2~yT@{FV: x);PQkA7W?r Z R? TrO9zNz%jKH{Y8l 7rwkrxT1^ 3JdV:4O#<}7t$ $碤 Қ.QT"Wg"%x}')װ -J!!Dk>F˛wdXLPu?mOR}?J>(0mVʿ,V Vr) A/gwGŽK:9:PmqXY#msj\T'Vm45yf$d6dw~#݋rir4f(33n۸F0j >Eʠaśؗ3oj Ml+0A1uM]~S7zYрr'rZa!j~#9 6:Xe1W**A4>LR jHNrz\NImf_e\;(_K:Du֚Imf:ePDjԟPA0 d˘Z-WX M\]T}xp?hgtg#T3y~3#+;VRTSz %1[ʋ/i=ÈvZdȝ\ѕtI*'C8|Zpjߏ^Eq-<1`ϣ:Ec2'62/ %J]p׆7ZTBnfco_3*IĤ>p!{ȱş2޺$HtY݁Hq]m$McŃ = <;Is6: Ԇ 1jhPGVY. EGMvgXSKXoDqT߰WB%'NQOnR>n&g!9N N*e G=E)/}-V9)._#Cf85,A<72Ak%[Q3! IBs H,N͉ʻbjDz Gu\Uth]9i2$um ׾ϟ{ԉ&XTBS]`Yaۊ{>jN~jjʛX. %seY)-qs/iQh+hM|Sc͎D#D?a-@ےK8L,X`݉rBK{3+WCa&QkH,2L܉@zv+r5#=K}+BJuU.'3AD4#w^1~/ޤKzBR8:ij&fVLǭwLũa3`6wVɠ-'WTꬭl 꽘+Iٞ <|,ynFC[G)Ls(W$۵&63u2,j9 GCfJ-.=CL԰RN6&;JSvrA{5GNMCHA‡`:1i={jGq/ }?IC})a:ZZ9X-CDbTǝSyH?#L.*2Ycg91LrHu:4JQt #1WV:A}j=nbۀ?*'h=\˜vQ_Cz-q\/zH3!E?1sjNkIU2H$\vWP1 k7I ;pЗ$P5цyXK|r@{-U2ue,Oޏ1|>ם^6~ c>ktiM3:3wjdjLu[[scAz? vNӡi1S}<<#([}SsG8o.I58 O{=xWz}PfS#)D8t)` W v _ 6'$BMWJRbcĚQSqd KO]o~6 9BnV^x7A32(!cXh#9MQp9"lKd^]lq`uNL  'aEJ͛}6i- P βu-Jk{yىL<{GDӜ[Rdl}:z` [[Z^̔J,Q`ߨï̀Ǻ3oy;N?eiEǜm,^bž?|ta2_;UL7`6VxMCJ)L٨:^!AmکN[ 4fh}'g0̿J&wܵ@#ҜP 4_*L:o_qz]JO TB! 6fv$+"qGȤ} eaͯnu Pr4IufUK2 -^A})0 jĆ(iDKb*%c3[^g Eك Xe3?~\'@J/LtJ";LjR:KENyDIPkF7/I,w;遀lWhr#џ S#YPE':FɟlLz' c993zH#vWCHiZ鳍(YI |v̟uSm&% qR$AN_BAZL&đt tp~3n@#@Wef#j \=hUuĞ7׍%#`C2]>hYR~2Ub6¹u_*s$|}Mf\G(юJBVȱiu\|YnO' g`?WIbPD!U\sGPUP]IS*@h 8o5643*/OODĒanAqCj]6ximb^_9Y|. 1Kj պp"2T1.So.ܱO2Q)BXu=sjçYmG(N5z4sE&♋\酾V>jOqKK9Go-L.iRۈnŲܾ{ L 1+*D43-dKGF?H{tgp(F asP r@ÿQ$ &*COdDY%8i3vn0a7e C8B1f Yg:=kV&ZI:{md)M#BU֝xM/嬧 xWԎl&^)"DSmYfg1vA9qFOkKA< OQOFtjQQTh)O.*ɶiD~ur:,=Y<% -B0܀ S3FDfJwr/RO#_ʔZvFẂί 24Z֥".4oS:|UA9lz9f.oO7kқ /0$\hUeT-PKT; PF36Z7˚gOYN/,b5BUФ _mPKeG͝MJ9 $= 7SxUd(d -t'TL,)J{aG~Y%*fT+zC.H@H6cBZڃШ:UaQ9a$ᔏ Ay*^x\Hzq+!#*gX-'ݰcJ=kM""7IGliS!9($f&eJ8 :0#4hoQ*L=v1p :SisƝ[%=YN-B詫EGt` AhӦ#QQo:jP9l|L; ]gCbkUyXc/Xx=MiQ rYvxJlrC:ңCn S6`[op~1L6\>eavQ1 A1 `/~ ~bi8T:;ٿݒ$ϒD#"i47Zp?PQ|L&Zܖ)(uVT O-{m0vjcuI܉tblh2CRg~^,Й]NrF0ʣWO::(e i~\GC #ݟ>#2rIkyx7J%9c*Ls4jZ)sFwĂ$\r{@ɝ lcI#fGMCrSb+?hg#Sa=Vaߚ>zvBӕA-(ao8Jcs*Ʉ;WBY/paK0):+ >7{FJߡY {dk5oo)2{QPhqM- s3EJ x"Xļ%ٱw@^XF'D͓@!3Ϋ 焓CNɇC]gbPcdz<ڽ)-76Zq97&蝥oMF51 +Tg ,_a=tr,֑K޴½ixTM(-Rwe*%✲rTJ28/]{%ܝ.6M }?\S&y`-J*59zM<;1[K^0;=}mš<0zvacL+y@u_Uh^pR S-Op\㷾_5fvL%u%3b7} ڳ/bLzdZBi2IuJjSub rᬶjʶ!Qa=-o׷e"i֋]w-=Z TM VڰZ~~۠SΐtauW ~}x!m(A `$bXw3܌K$l|ܕt<wA=u:zEtz. vh6JҢ(D?Yk]3"OK 3g?(Rզ(Ґ[z8Pr{Rh LFO"AlMM!9$|ٰeRYr'7jjW0ĚBB[c:@Gd;T08a,gY\qIk)jGmabނ'S'9nx9*-WG{fz< Qpi-R&$e;ۂ90RMK?g󒬙qɿq zVbdENo f p/M Ih$YC0T[:ţX'ͷM`wG0)+e-``TL(v<_{)nK6_JjDkǖ5bxWt|Er LO77$J̸:Vq]ЎuېmR;ލ5(Ud/E" (vE,Ȟ goYgl紧 R9.£id<"3HϺ {fY-\YnX VfL.Ԭ^:bӼi|Q:(sBX3*Qihe>@6/k1ȍ@?$%vI= nɄ06_ulho {EpZ":t*!ڕd! {L+Q >x=RV@Jc2\F_JZ?r20wc/i,!ϙDCh4Fa y*gQC5إyhϕ3t`ChZ",kbׯ'Lx_(T2R{y)( c̱DJM(eD~ک~Lf[^ٶ%w ?(@YxJlJ{aN+0ROV@Z& Ϲot}2eEL"+Pttu@{z5( AݯV(|kT"tzk*;Vw&dT:􁿽 Y"T9dMgD oDz@>H>ÌY ӒLa)27_W%H~wV_\ p_*LTTf} %eAҧ{UA{L"j۬w-(1 G`Q9qpѲK @%2zϩA)(5nj"@~zhѵ7%C)9DiZ~h|hj!FZ,!(X ۼSْj&>Q+ĈvFa+)We.X "@iyщD:czBf_gP3wmR?%Xr<|/jf?\!@TY\2bIwMKyt `f/GGg^VЉZ/~"!׿+TIwn1as aݻ9EʝqԲwEz⯊GD;ewOaj+qBI},n?jfED+=t"MyCVVa"¦͕Y4$ϵ{Sܸ4*+p˲X&^xpT36 TsL@Qr]y[#zRM13ViwюN,'r ;6/4  \.M4w&צi 2a҅cNGAbkD#wNUДhcP}sL 1ꆁyku7cU5xWmׂt]o8H4 d+633/``W6T˦zz3s1{m"͟}#GSbgckZS WԚᴳ8$*EZCSsnÕ doУevB 0cW5%PuΎe'#%ǰA˖9dtQ L,J:,pPV) !rqXAό9yEHHM= LוI]/2zҸoHǤ.O1mx{A>5*N%)%#d/C4Trx\5؉)/#{+Oaul\)†z\g&rF]D8mg!5/gWܞzC{ǰ=%nBgsgTrt.SYDbHh=i7HPT"@C恅N ʄ~nG9 W%xf%2(o7s Gɮ=Uߤl xb @K :8vق= '(21n= 똑4mvs5H.7ȑ&8“z$>~j=~o[~4&Ur_cJP᧐p79KPH5\}>G嘫/Y SGմ#T# _~]}:b ~xKp(=9FcBq/F2a늋 }ZW"Um@W, (050S~]|v?rn[*Ҩ&ȭK׍L~> ]^yѪŕE7|@y;_rnLF+ǎHdmGON-̉ Cz(is%i,;< =~)r<SbO(w KaKu\9$ER/er?:{"8]gK].5'}VVu*̶zU9,Ovѻ: dEr1#TS2({8(1i,t>erFT%Ѐ{:$$}eZoriyguovv"#|E(h^F .t"\)S{gpNykH@{ S\ @wSHѓIbI.m6f:AZZ#gu$z|L]ṕcT^Y~f\qS! I}D*X[ᬟ\ւȔ~7e!d:X!I?iBvT;wo"4{fY_tX vފKE1ѽhr@o ŀ&,mG:.|Ɨ%e!)GmkzVnFU5&#;W5LC9}x#rWfp3\ ʅY6XN=HS-CKU#n5ѩϥ..*`L"fk31x`Wa/&r1j$,d0b:bgF9CZ ֈ|e#h#еp5\Ğ@1iJٽnf9TƵꝑ(bC 'YINBe^h&@%61dk籡s]fϡ',-+2 'RPyP\32ҷ)|z:J{A@hyX)US)=F+,A2)7}EvB9NpQ:aDK\hRAUodv}[`PrbMS%t._h0r`# ρ {9Le*R㟂~;NmY6Y,k6FQB-wÙUPwSoű/vɃR1vgYNt=\Db".m̿'J}OF"b@,WH 3fǬo7>Fuz5bW ]CeX?pS>FEZjl T5)y~ŒR`6ZE Zݩ'y޲"æ}n:"fϠE~IwS?["joidQ[[pDOnnufAxlh] !-' źdyhЎHHJT;FIϲe4hI߲BR"t#@Uܥ+g- ?c+oJPR7 Z!T\<°P׌meU!4$/b0a ~^և1Uj`z:8Y,5k8/:D= }Ŧ׳X :y&Iǝb'e͆u4>Y +԰3agݚ9aqƱv,Bqxij[eC>M k 1h ?qn4vNF*‰\SbtfC [%k#w8fw& :POQ]@ ø|MSP͝ 譄T+UIwDYdZp^+?=#ɓcR(#EL7%!JI}\q7iGCat]x($K_Pg;_k} yq;c Q~B0I-it:&|N3;톹荱_ɭ#Kv$pw2U辤ZRYʝxA6oI]I1$ 93Jȫ R1^kNN߿CƓ͕T\t_!7|[NX.2a  .VCѹv{b3ڲ2PC ]X%&i) ɵ^}T py -W!'׭%!XLtX$|K aW27c:!^l58ӣc3X>چ6/Z_Ԍ^Tygd.gvd&*'bĮB׾2ބCmC ߚTtO2Mcy2i\; sm+8KVb . O6:`Q'2@ :bG+K9i-dzr!8 J\3y&RV 7@ƍy˪aq( WBs0oC/ i>U:9S.Js&gV}=7ȴ{Q8)yc@yzr[U} ;ԴrVC|1 ^!{ԕ[zU4L٧e [?'d.W : S=H3{,-͇=i@ɛ|X9v&Zܽ2KE.@go_txMm)di+^ [´4++FlNHYF[]:I"D=)Ypm`c !'i= +lbF@(P17;x랄|\OUO^'u"| l >mnEMI6$IA~7>j .aŔyXQL!9ȥ&W7:nE!ڠM&SYtX߮$ )+Fzs&zy_ \ xɐ_\IU]𩰓687u1뽰 I?9]EL׻\+iPذ40Pt#Ub}8i'ӂFx~w3~^K@7kλh $hL2i>E'WSk{z|ȿfw֮JTLfӧ?r *s/L"0UeWMgơÍ'#v! S e\hߎ5IՂ_(F0twGġo݂V Kԅ< >{~a9 H3_S@` ْɠ&7&yee{}{bRom!,#+/yP:IPICv(!lDh\7ùq̟Ї҄Ӫ"`& jaQ芍 zOZ 6h&pf DaϤzVjIKa['P$_tq]HP+>3Je[2}USphPQfxz]jgVzS BUwC+*n_T(M|ٟOQ?5"sg-=MB@LjF;E4ϋ:`va4Hɪ[qP *\D-%ws"͍nz%X$]B N9*w7yOpm"pr;pȨ_~*R{5ѥnlcdyϊ-/E$AQD#bJu?O-,@ɏ_I÷OB{dӷ_Ne#C9Lw?SkUcs=5H,RI8@]`{}qkr^4e 6Ӕ0:|6 (ϰYhwƶEFUF< \Rы.0X t?ow$Z*`"rh_ɹ큕+ Cٟ2zSȄ?L)9 -YL[ xR1m/h u8kyR@4c^ӟGDB^3)};1Gl|&aKu}oKØAAb ])#ħRuL,tm˩ Mq=i ۗfT2R%lfD*$g>խ5\ Fܗi'+8|{=x{hOkY~}.:RTa(pq7卾l! 6C. b̅_.s'6ktQwy^~l;tl̔ f:}Wx|Nxkuj-/vg HpeJ{'/!.t#BQjz%sW:`pO*LۦnF3.s78ݜQ ?J%597bu/`LwKxS#t&),AY0W!a!Pb¨` Pq1{j\C}}O/SfMx.NaNhO\-l'󱌇KE4I}U|w} `F!#Q\mbiRVf}8  gjh#r7Q}s>=q;) 4oa4ַicujГwG LOC z.$y#L$P#..:5Z! fŤm7fTviHPx/ -]"PHaŒ> !Nj7l: UrqMwí-,X[v>7[qnqdLׅ$y$D<7{cauIJSۉo A3:DS=]bd\mb1 `':6Ubxxx(]%!:Ń3ISe0g 1}cşW@,tz#5?Ճo*\ۂ 1c(@ /R2U%Cd[VR1M]M{ˇ./FGbv#9զ$GW 1)3mrk =`$Ě; XH|7-@bsY؍qH)JOCD$EckX3TW!ePkSr(:.:bKqMba]%Vʅ\ .k*G4?nm2)Ux ,$!PUıD$I"yMe_0*^ĠXH4  $YDh\3pѫ>۞@+g0uUnԲX &Y)4/n 7+pcSْ";Q{$hWȉ:KDŚTmj+g+*O}Y@WۓaFsa@` 'y[4;vC V-fdV{q!d؄xHr_`3jw6$ M1ڞS\cZD~OswJo0^ l qPx<- zS ޯy": @GwnZŽ* ꠙ`X"ʡ0Ԧ0c`3qU/!Aлc&í~Bh)ƏOxyaM4~ȨY6Ljndg?h;FU930$ ק %燘߾Dk(.O5 XNLPۂЃ:TyOqLv[c^[rx=QaM12oI}< )dlJEY֌C~Jw')!63/"Z(LnTA_R(+!r*ogXjZMVB@r,5SϩfyhaswQ׏ܯL±d^K^ Mѯ c0QF. kT6*dIH;@ N~P;˲3(< +=}ώJ`=Y\lBϤ D|̋^9q?N>ԟ伺Ld Vm,?'઺EJv$0XQk3A$蘫FyyikX*1Z qAuX1ka3ƽ.ZO:@sPhDpJHQ* IUz*JӚ0VFkMP"k_ٕ}PqhѾY#W_2+pNc]+^"dѣ[B'ё-iN-nMyPkh2-XO9G.V ˫g=#N^ q%>f?a7Padt/v{/a5Rݕ L.iK4B|3GAch-JX3hEl# H@(z &rø)|,ck΂ @mWz+ᔹ919 B'3OE\ Y>upmsT=0')Q+ʃngS=}"Q ͱQY&n.#UrԌ |/ސ+\>sL<7KDep4Phzh_e}IxMBt\gQ0 o5l W/Z2-y&b4Ͷʛ U77˾(ICsDeA(' G0C7&9Z ݱ.84LgeSeo7c*4&IS*(h*3^M 1iڌ ZEjQ57k6 \Xk.W1i1X7^XBj1U*ZhIĀG,E;fLh>d447[ Ϯnļ~徘jPh7/_<nYJA /ýT0ȼV5IzVѿȺ@ sO5X>6[(@h= a@E^S؏`\Q ,uT_=t&=E=gbmLYlARݲiŐwq9. (G){۠24w॑3}WV8;BrDCcb< 3&ZqG@ hگ4bmONJ.Fa 6-W!Tf @icC5n hQ)BW %IQXJ@1XOCQZGCj0=p\8-q 8Sk5A_: $:xQ@kErZ V~7^h#*5ΓgBb_/E$*1I&^'v %tŘ-;YD -Zp#w]E;Τ(DZ$jO[;UU<6|H|VQ*xM**Ayʄ~2'~p+aMɑLP#RV +_Nhtb=g3New;W2lb@0t8SշԟOyf6P_o4~KEDY>#阓eeY(&^wl "|-R-d[GWpʡJm `lA"#Xvp ոlb$+g<⌊'cAo6a[plMO`AD ?Ȅ\*&xFEҭ{AzY>cIZX(86֦$4KW%EuR^icH{Tv``ɂ;nI>8T91O A;x 63Wh>3,=ZST4a%R<%taPE$dL Јn5m 5pE&xqV|?x!RÐeg# ?FVBWZ+Upa*.[UpNu,хvxF ؘ@Ahi']x-t\ ;yR ڴpIZըdI_ѐkD+_6|oħ~#3)nH^~CB'5m߼B3(FU Y]##GVzo Y,C3cYrx*b%٤0Gkk2b|nP/ZJ\>`q6M\2oWY5pv7a۹_p-åA2rcfS ^%SɻB7(Z{Ԣt}G|A\SڻǴ\{ ^՝fyXiCR'!yՆ豚N*KWpAwrدVt2K]&4j +$t/w FK jN!pC]`g{:NR(UO}FwU?Apif_^4b+Ժ ɭ }M6<'E{Cp؝ZL7]POj_ /x:5O1ћkkgW=5-[]U/}fUO ĢSE_u ~N_)V~../}.*4_m$:~bR Q:8~R-i Elϙ>xU/ޑdm,i a)2;Gmy#&FS=i#aK9AuG7tc8RIA}B2a\Luc FQ*Ҭ&&K]yܞ73rfoް~~0KَHFqj٣ J G)4aw$QPAapMe) vp;8%scinY"# }(,*GH` 7J3PÈlfRGYCR$A/j-hI˺QN{U.gf@R,JIxFSvաkfGngT[ Rz,HɁ8oϪQBu:vt!w0ls=~N54T8_jR7 Aw*z˞ ‡p|yqCꙄE}[birU=J=,Gj}H}F: /1,_5z2vKyѣR-#0,!}-g I ԾNc5i1 eE,.BZhɅ.\IT1 Va~3`!S%;U^A8`JcML/ YRTn߃Cٸ =mz[y:|\PlU *Zbi_0jomzOߊkZmk}D: SR=&]/jӿ152D[h:{9Wūyw]v)rBt8L<l8-oSL2V+\ǪĪ9 E"e OY냊tĽ Y2kɇHX`%vj/Œkzyr*fIGU#q.;B@t`KEヿN ǴPOScf^C#X$,MgqO2W=ZMo7EKbty)gH/oz._dWp֧E$sv6a2|qEgC=?~ϰIhًqP?H&m+4%۴ ibWZR:Y V'JRkmpz_f6]w-Tc<Kh5)(eϧQ?Yyllw3({ELRgͷ\Գցħod.= 2& ccm =[R4s=ѵ9,fcmBSS)= J+6PIZSTd 3o FsXxG>^|/'lC_Fno;bb2gh0y\Jq6>T@2!zIv׫JD[29њFeaم,FmT9|6+b m",@DhV WMf 5ܬj9ҍ3|4P%0[9=)=+u= dO xdJe"Ŕ`4=D;jxdZ-QŒ`@״,wsn ̓?=p1,Dt*ZS}ƧL]?() n`\W%CmlwbNN-E8O:'Vf2enw*?OYP 7KT{r39\8' y~VPL;{lhA‹V9&ظSkH.9 ^f|e<)Mt&D忶s)5ۯ #'[}{\SdV-E[Cd%w'2dgd^m\.V'`iݯpw]PV6:ʍ`..z"x~E%4{eՎg<`ǖVfygOzr&Y v  Z`Ē(dz`h>c9$6kMbMSQЭRgD ɇ)o\7[6D!^ ^NV}l4+:VL柵5?266L3Ȉ_%- #xdyL7IS KZ Jp4"i^DVddM:WU<{EU,\ Y`iÊ_Y-gMI9z+$ޔd(sfN)(]FT>9]0)Nq"^m!x>r{Ս5(N>*krQתrHb|OuRw@<5ms}Ƴڕɀ0몧ZVqSPVrR2Z^(`ŀɕ%x?(:ixLZ}ذ a鏽V^A¾1(pFz]4uN VC|"^rڤgy}:Ȋ9dў(+6cVϼ QںNqpIP9`40H^u{]*A8,Ճ_GeTc]EII@09NxoJoRDiᵌhVz%ӌ*0=s! 15HhfD܃VTGo(#ǭ{-r=/Px[=N;xJy:ެo8Vٽyt~φ܊\.:nyXs] ][aωPypr{cPLųjӚq/m9yf-ձVe .| ~ ND/`64"l$eyjC6Ig8$@"jFOvSM\>:"c7rw(Zi֡r Kd{ڏɇ!PF!س>e3-h|ݻtn8}}Hf``=i!`4ƟRgkIޯu"CQ m2ޯoN<%pxl~gW0 3ˎHK( ?DiG@m3 0rPV?6283-2| iz 'b2ߍ:o3U>8$MLEZ>"U4EbRetb@N #V{WBރLX w5upb$RxPszzO \Jl1oaHȺuo[S7"ZW|?PA53?rF^zDw4KarY OY`${Y"SH3٘7(ޔk AȮG5H( m}IqMo oc-Ɛ28S D4'=Xd 6Ɛ8mw N͡ȰkAc"Ȣa5H#d;Fф:(H?L'3C =WQ)gqڐkh+\P<7<EwK(lwqn}bWx]H2q Y.S|UyAZMQ] [RSOrswH2Ƽ-#AMu=7oTL) h!ިabC&|hvl,Jago0;m𸁑Y .L@aϻV!傾SG6.f&߱WU fCё'OE92fxf =RDv'0/hÓ{='[,4kQ1 L47["N[˔fslrv]{!T҂PCۉB-+;OU`0rkڣĐٷ| pw1ԝŋID^ZdC(D'M kmO }\8<8$>Mf۞dʡ` $$d%mݜ Vof1nD뗅+}n .u|"ڟlJb[{pb1MN@[N ctkrNoq=Mj`Gb>T@z綵03Oђ$Hr.حqT.RB1Q/Uǝ}BTSNo#{븸']hW*8-/sRTj2 !6$r@=|[l7ak1꩜폮'&9 hޙvqVb>Z^ }wn}wc(kt + 槢i$L'l&{̬'1.#3 UAJM~IkMłyN} w 'rtu"<@=,9 REٕʝzc)Cn ?cĕ__@.0gVw6 ͔a^2}S@rlvF^u&7fuoˠjxLYa_xnQkLUbEE&1s3  =bJ/t` 뷜'Sj3 &QPnxр1M)l{>=C4ĺCh4)_8ǩTcRI-I8'Ӹzm=f~@c $Z߈"*rX|[b¤o쇧zرD6bgC'B-7y{z1NRB3ko/ ~iqGAxa7rUzp|V+P8ϊ!osI:[UH qym%l%^3&Yt0eKP$]> Gr¸f7xhq6SK.C'EZ?PQ{˂|׸kiz)ǰbc-H "v̂ FIϥS*NAnwA#~d}כsjaPD4OLqGDuc'Qt Ɣj65gtlCTZ@؊|_s;th'HQOeqe3c#m /JõQRigEւlo3'5 eu33^'L[%7dHe@cx C ر9Sϳiz ԓD}J Ǝ cUk簹QVg|=yPpO="tX' ʝݛtM8WFOċW' սaxu҆Ct8k̄d{[< Pin!u YČ fj4P#ҨNQ?HGu>uI+@U$U'hkcK[АklBٕ '$ٱ p:-4y2Jf3 z̫[42;~3<2 *d~>ےCc?A yIb pJ1@!/ -LjHCQGp=l.b u;11 Pr鯗A\Vi#Q CN/,#k|Knc*,֦CnX[59gD33 uL(z d,ܽ5h* swsŵ5MMgHLFUobe@5y aj6A;,m80(Nmy)KY+G٪{`=U._ڡ8(m$_Υו,GiTe=TVg}KC^\UUw 9P9qoZ4L"vUfXhz)aX,@b:i/\1Di֦?~(g㈙{*ɬ1T0 /{'Bū1̐FXTY!D쳆ސk[NMTgm ǡ5WRx D03.3QPvN旼5IlUY{'E:zA )ؓbE76^[c~7B1 MJoR 7Z9Jz[Q$n.a5lFBY< j_"Q_JS%R /s6F'(N{qy!W}JF`y^O#DgRBHt]T'6/ R(P)p4khdIZQ |C@0x肱 R3VoFK-G.jb9a馿Uf0q9u&i#طW :pʓd?cgPV` F@7NVAVx%KY#ZKOݫblq_鹇]3UUaxQ};sp*YgiO^ә-hh "*)([iM )OaIuθECǍRq݅|,Kr|ey͆oW|ζm\m$ڮ^_ٲkRΩHX>ByX<=f]k?&p>AkRCưF YM4@5t|[rrSz #[+mT~0J 3s!ݒ-}}wf!,P)љXwQIrڀ~W`0weUjM_ãI%[5 X[u)5shBr֭Wϻ9X1&!l5M'G,nԝs֧-kFhHqX˧\}%mdg s&~jN=˟hkf"5JXscЉof!CȈSCCÛzރŃzhI;3NnI2ˑpUS0ӗcRˈ~NX4lDCgN*mX!dէ 78E6jDQ$iisU|9?9r<( iO2 .l84UCr3rkGCFkL2$#?byKf 9R@ԫ;hL :ؑd⡭QnПu8jr6] VFt鈗GlAC4_rwxitoܼ:sܩıoA"Z[V fصH{(u9Q@FI|[r NUMAZCI_31M_ʎ֡a,^#S-f$fڹml)HQ/.6'&k=MMF&W庈[VfPou,DJm!\sE`JW9V? J= xź R4V414T (jW1g@tkPKI& 7yAy?BSr-8wUw l pl,p7baoȜb]ɢ#9*~W֙Jg^}dUWYc!fn5ЁKah:|zg~2ډW<pADJ.t/vn7 '&_pK]-#5ݤU;۲M&.AXUՌg"׳0pM}wN!|b0e F#z81 uI}uŢ(GQޞٝi.vVVy ar6_'濷p`>_j;9e6hjH枣;e.ƨAHYHe* ~"f)=)7y.(AL= :XhHJ˫i1_Zc< k[$R=jnmWvgi\HILN8 ;*?$esդkL3 Ru8Yi&21G6Q@^*M8tJqde -fH&?QLMl7p>]Kly^V%Ӹsʐ)5 P_A*%Nth&% ziEtґl `jPL](9]Ricu1~VR %LJW+[f:3/:0‡@{)GyX,yEYLpe5dpoIJ% ^ @-f:39ۖ9))O oΆ\|C]9ĩx/` #br[.m>ђ A_2M!veZ -l@%%3TPnl)J@TTeJI,8Ng.í;%+!'ɂR#v&H]P".Ǟ_Mrk0||CpqLi ,k^7;ޓ`HIe Wgd3D%+K%ݙBg.#ݒr,v Q79 A FSVGM^€M O5M+#ȱ!~BW .^&uc{>&H; =)6Vڸޡ!~AB%o`umGT0Hًގy@@22W4OB P{"΅ސd+5p#00tkNA6!fJucelP@U|oxEZ;J6PBC>ܠ һ> XXWRꏫQ$8f"i۾35AC!fiݕaov*"cg6D3L`=vM"p۫c&jڠF2bλ}sh G7YE8|'"q E\0bzW͐wQNp-t̒wQF*чlϞ\VEm$8L(= TTK2{ξu?bΎ1׊ӕvA]YZ TW—BvKt?t|Qcҿd|z#ϯڶ{M< ~D9O>Hƃ&v0(̦uKg#Ҡd-1) 譠&n!_75<ˍ >r:\ymA4u@4ђO3하9L(r %O TGHacd1E+I)!qaɷIbN4j_xcGlJ$[[ޞٝ@ucR[,τVTNf* nHZ*`5U3x(-g(oCsfʍȚf6hc1MĻc,i ebbA"n)BYA弫1pg@xnv7e1Fh{IZrHЯ$8 !ީS˳ۓ/]3~\X@~Y %Xem%"3df?K&D+,J@ZZOR<\(k95O| k?U>\ql$ ,Bb.ۜ79h1mRPͫd߳V*RxiM _A#{ "Q"&afNDgw>5(Ω*P09BDըwi#ȗ8!UUv&Ҟ#4Jcs Uĉaۃc%&ӿߙ1Y1L%ԶEՏgYM=usۃ ZmR _ qGiES~vC螜C9c&H/O*{)Tڗd՟\D:jRe(%K9P$렓d]pYPM>]j1re֡y}_6죧8μpShKL^Rxֶ`Ѣbs5X6:rW7Mױ[ֆ93v.S,&'I|ȕӏ(чIYY/g؎OY(mOg#4=\#~6xٚ7{Tgmw_i(>|eOU f,P3s/+ږ딂u?[hfm- [R-o>%9Xx4 I^ByWQ@cDR8Ժ'fO$AND NSEn۳:ifLY p"ud"c9q %tľv^y/ɖs.9z=-⺥}tHKwe%vm.tUQ"qI0ױxox6Y/D)2Wٔ3:.YzF&}fr9;,NI LEjZCJ(1;ǦpẎqK0!eb MTv:{t=29Nt펞!/v%+ ̉v"(-$JlMIb37[Sl׻r .5ioƵ9*p(E`׀P‘R 9'8p[P# l^z|,4nv'>7%f&#s~IsP*63V\tHGN?GQ&~4ąn#*CGfq/=o͸٥9u\;Oz*bNqeۡq2 ڶP a+?M'R]PE9ѹkT.V1, qs?8Bpmi-6Z3XtTۃGpOptz~枻9M̖aï&٩VyOؕ,uIv̙a%/Յ7)ߧ%JT &C=KQUsCMƮ"(mWxDɓ!u$oV(ëx}% t+!t&vjH=vB(TfZ*f? ݐh7BQ~R)\\,NAIQoggLMk HAG9ji,4F]aPEzv2@)'`fT:0s>DaA#hGW"i ۪㈕gi"z],"J7K'w4b(魗_rP\il4R e1R%\ >4f2)z?N`~"2 {3!v^(X&e²QoAMnbȼٝvzE z!/2٩1 [Fkb Oa%d7"Ǐov{ooGz/u'%j M<L HN}~yo`6^^Nׅy0,T-MdƢKX=(>ݷ\gp)h69mjx lOLmmÿAta8.=ޟjr ǒUԿ]cJ>+6yROAUDo'Eh0hO 9d R$׏2i Y;(>K0ҋ^>eZp9}lV{]8e>>le67jT\'G:-ƧBa< Ij74!$$+95tc"!a=\, @mW]+Y]kKg?iaђ$!^0_Xcߨs#ov;5zu{ad=n^xjw4"PֲRڿ2X㵨|j{! ayߕV\&+j ?x֓Xdq*ͫWub|q ȇ1Ͻhvr$ rɇ,H-L,QS}Ҳ3?’i c dshϤԯ|+wP_bX+I]ȽVAd6%CZR(~F'ǟ#YJlA6oEgB$na= M+&>7]OjHu_IzY.@I'2jg;?ЙCK`2LNGd!yIGR,=,fVbLO0|41'yݦ* \20S{1}~q[# g/i򱫮 @{V@.1u !#B\Q ZU4AiZ&4DB،aS=$C GxV{&6_ fr^}&2ޣ9d!\NeJǮnI M; rP3Ȝֲ>ۦL9_Q1RUL, /h2m&Iex}f-OmFbEV |6j=}Y5g'~֛aPp1v(X ?cyN-@\pnHz-{L+dD6,(rȮv?Zv[UH8#8A@^y1HD?? dAL~ ?HA~zSE 6rM'2ve{O{1KOǠ/V[nJxmV xAt|hsB.3就K,dwmnK>׼,;s-vGmU7 /n'_U(&g5&w~Zn$TDH(u $<#s$kŇ'dRϬ{z1sD=q>{-jznl= I, eyp㠛n.#ThgpݜT, vlcϪwϧ8^$z{`nug0MtB<Ɂd;T Dj8"'/xަYqRV8y{ R-YdJӄ|l9phgVl8_g*zN6@x ‰mo "sL-Nm Q!^n8{DCI X]\P9" `eoRNWM=찚wI\x/ؘ&ZLW2B}KM;AHb&+՜Cۉ?^Ma+ OBZa&M?Œh((_dā$6^OU.ӪӸ.]R[A +vaa ٞh]X4?h #rD?5-RzCp:bɉ7Pqq&Q s]Cr E5AFt 7zF4$Ea~]I7'(HWA8I_M'l;<7X/"pw{*4r] ۣa2r"G+5hi"7>#2\sUЌ;>ò6!A=i ?*Q=@LX[E`Egg~O8C1 >y/iiFï#KhwAB$7 ֥{u>M,'(Pfq(K|}:)޺ d nRqv̜꜠ÛQβ.q͸LD?06աD}Qf"s*7v\̨VVis5PÄTXIzeC-ì~l 9b:K;#8eMj`WwA'j8vi0P.JDS6&ZUЍG@1<:옄%;BZ֓+@: &|`u[g93mٟRم?Fdrr ]#ӕ`Y N~gE}Urc MgIXF1>Zs:rrc "@2wä,Fϕmsz&|/,zۢRk+i~.cGuo!wpbvSw$ه)EpID$/b%VZIݿpNY]vt29/lDt;$-a FPIƩl!f6a4Bd.J3RW+g\Dfwl(ጣDX_cTOf2Gi2ZK@iH oTG,9 L\C^Ǚ2kӇyLJ[JQ8+,+GvuE9ؔt0G!U׽RCh5tTg5 ->3эgPW+z|&X `{e+ Ww(58l?>mW:fƥJvAΟE_Bd)sY ewwnUuu-vCA[1b^+}Ҷd\_Ceb:HuS]#^9v^\ u/<4 6nr6^ljf@}aJ$N6OC\lʚڭk3 vtW6TcW.hf/of&z60/Ğ<*#ȸn2fɈPg6IoAZ: h{eZEŵ$d"x8!(epkOW_\akH,a *=NvE([)[uVn^,~LJ7)gDȚgY(qۀ󴁬QCW+.Է`VCghk:o̾hG,lyҲjfa\8S`R#VxTa$ ugVs's{eXP )d %dIsD2%rZ0r ArB-|֧8ECVjXɔ7);}K62/j /T}a%MPNԪo8au[# '&cSr*MߙRq֧l 1G #fwu5h%N+YtCY­!`e\r$ha&hYWB,‚6w+79"sI>iAiYp{]Nb2a⡗.^JϺRJGzҵfNh}8cALLvQ1DLnQ65岊N]zM&X 4f9 ]|& WuY^}@D`xTcz#3 Յ&⃌C{mMfy#Uߙ#Bw|4, k]O 2=F{5NX6P) )h:I,eyrrK4{2=5䵏4RT<*wRŹntW=q Gt[n.CUQ}9AӞU~|z)"?Ck5)l.6 zyWB|1hԐx> EC'&ƏxZ hqdfxߦJ UwhC:E<QY+~*ӆ9W4 2DN|v &Zee~[BS vE~ЊBkJ&S8GH]Lc͋y\]!}Z'ۦTh(MJ*b,O!Qjd2&!h}H^lXZLDCϛuoD8"6;9A1\P9I,'Fqv@Z?5HmC6~'yH*QBr{'V?2nNmG)= l J ՇG!)vii㠢!$A_o.p!~œ_Ux mW ] ljK\)5 p[5Y_}m6]a=!2ZA7Ҽ3BM[uK39roIIFrlL 3.OM3rBЈ5rTֱ$к sDJ-\.*%@VS`r"K.b=z(ROHz;G녽#~\cʟmI7lfKokJٍ 4'؜R1>̜+eҟ Y*<JW&~KHv/Y1(*p .r-!Brߎ.S؅u*')@ KmpK293J̦BkF Ԑ|?7ȆX !Ud2iX9&I#s4axaU>҅Ϩi6nX3knZ-S,0Q̥hi F̉%+:\:DBHB[@oϤf%QV0bBO7F*css$tš{%+P2yF&x -(U*#-ETm5?Tv>™tz^HԾ.+:~뀋Λc_g6:bhA柬Qi5moKЗ*^,zD~YI)6* iKdѦ?D!; 8\l4C̙Jl(YG\ʋ:K HkF0v/¼EK8'"yO.KV`7C%\YJ2iȊK/` bpc= B)JQ/2Rv>< ՌTB1XQ}iHnn9Ī[&' &<v)F?ߙ (Og^5u5SS[+_[@R7BiAW틩R87;<v$6Zx3R nKb&M-V~KFHo2̂HЎsC9zIh+lY_VVoSyaAU몋U-enSF6\Iu: Y0DZlHƎXն8 w;Ё߸ܙ- ֡}W=Y2X07 HQ 7't`;5<һcymderлR>VYPנqt<4 ~c5#"礌HXH<(˩rLώ\O{7klGL5?!}ym.?lBPq킯V~ONlb@2R;a#(^'Eo]v} sCˀQӊ]f9v U#M xlbdH UlR:wrA1q Ј_/4ކ*l9}33 e/K'(RIѷg+[@X^X,&:h|W\<޾f C"0Re>ۦP0}:00ޒ6)^n!}NmZ,=]E'/צO 49긲Ȁ?3 .f#:_ЮiRȵXeb ޕnIGڸZ[^@ƨ=uXg8ʑ t޷2qK;ɕ; rڋaz"(;QcNIIaw[m 7$t;(~|jE9o))(]oF앁;cVQf)sb8]Jehn TSq{Q%:w*ˌdJˀbOi&es+eeT`EN ub[2sE2%!hy'Lxpw\K3ow`V8Osd `Ck1<A8 *bɳvC|KL[,.l%bϡw'VPwn4_ru98cSdlHVQ&SL.6#SCh$j>zt&):L9Ua.;q _ i0yO.<:W,I\D8/^&xw3 θH"#140[ȭ2uA19mKT&o(qҫ#yXY,H5H1jbuǷfaAK8 Nrr:ܖnAѓKQ1+>Zg6Y#lFLM *=CG=IƳCny^\d t"g'"tdFq}Os ]LW3dc[-q f &'h^Wg2IŭXvq9̕1\@|c&YfZ姎֫.[=ֻ"-@e]sC6w⦨xƓGMHJ7e6.l{7Է6!u%[`FӓL;d`y"~tuTeſlWlE6o&]}u˧8wk jBO)=DQRF!)|?~;7RnN Hzd PC{z% oR']K_8~\Hيul6Ä1l@Z$~6)yQ{v븂oyjz<NQnEveA.*VdCa!д\x{VWs>|aVsf">z:d $3=8C(փ ݵSHNuKA~.2cߐgAv9Pk^|Wr)͟聱+ = =ukqd9~ݸB! oTđ>:z^#3_f0}nZgnV5 dK/){ wmp+#م#wִFp*)ߕ;dUBe_u m:"~N-ksi-hC_ Q/,w~lT@5k2.uҜuϴMyͪe׫w F ^gcB Uwu ѕػ@׈I͜/j_fua#2pHa-)B@Q5Y6MQ@(yi܆(:&c,~Cm _}le<硒KEuJP|Y)$Hx#{s^ q=m"i9(_Ool{wI U1f'a"w;V0m${͓80Yvp֒ЇO5nZ~?ABĮhzzKۆAD-y:x߄&]Kj4(#$FOB`͞dYBnRf/#&p9e\(pI590>,f8)#FIXm'LPGH=s+!6rL_P_w7Vi62/v*nhtz[ALdG=(&5/+_&ñU)j|_O-WDn y`'W;z.^smJOK?"#a gԎ; 9@gcaj|E…I`qa ژY>{ N꘢SAߕӾnxY:׵4R'?oUDAP.Y}MkK,ٚ ys`&*E"?bz$bѝԁ nt91EM]_Οjݧ)G4ł۔#nti mv6WU0\\0_7 k©>na)hÁ Y`**0r5 s"AxFc5* N'g.Je&`X H$hWW=MBw/[@N%"ckg34pW|`,ËoSUuKT?B|ec,y$x0hu&[Cx(cZ`܌P"kh!8R/h2M+^c[g"h=p^55{”nL_GɌs߇LjIj .r{$ ]T }ߙC-"Цc/!1%Uޡ I4 Đ64.UZásC+53Hطw=CLF1kR^\`PVP(,+;PKs5q{hY$G>24!n93uCnCQS۫ I݀܎Ç9,D_]Θ[jC9ʪRV6}j!Egۥh܂/0lb? UW@8m[^A2=>&kX*&`w-lM?Kͻ;.k!.Ioj@zOhv$GX˔l-9x~Z wKtGE2/쾇C@=yu]]fg*yk=2咛Cy*X=J!cJ=2yhl#G?51$&&稰aGiˢc2D̫FI<NIl FgƘQ2!Gj(a#<ۻ<Ġ+M%Eq);'%[^_#f]" Ky|g6Nj }H/Yt xrt~W5xJ򪷖nZ5 *RQO2x e ]Ĕ|i!AW t<-juM\ Vk{L-EP)9`K3Oy?ho9UI0'Z2u]pbRΓ8O\YL*a:URZoT줗BU0OX5/d(2ph`l{PvG;}IFnꀄYn4h,Cz ~Ccmr鯩CC&yW<שplIo_,)|$` `yG Dž% )MWt*%y&93yL(8&3dն'65 NKY#5pXU_o/@GvTMlR4 Jp&פqEh47#bֻ`reX!\jub>Kqr؞1̜.P)K3bwj B;ae&]!xMU-Df7rz=5@i1J pH04m2)cJg33D3T^ʷ3B}&t82L*ċr,Шv>D6,Մsù~9dkQB_Ұ?ܣrN ;U.*l=Ƙt疽T_iLQI-M,0Y#s!}2ٴo8#oVӼ7X%{F7̪Nvano7Qb* b bz iœo #ɿ%ײU%s kG -N`zIC~O vM\jc ꗂ>nf_`0d1ƽғ~誊RQc'5-11eZdj"99Yinr4pGT4ʹyxFqsm'[ +1*cPdaZօ~ʡKS x;((6+Bqs\ -_y7ތ˾.iS3,И"E ܥ\ᙂ b4LK<@dq39́.xÝs.\x!xC2m2.ڧ5?N?>?ֆ7Dnr;eCn,I0}ڤ[3?G: JI9Z11\WWP=<>$@7ҁ637z֐gT4ZZMsˤݤpv,$.cB:_;QaB)5]$;l68/.V)2c )6jeviRCw^Ջ.vD3\i %R,Fű{,06cc!^Y=` B'x< lws?[OyY9,{I!B~zԤ?oc5tspMz{@4YW]ovuvhI:yQw To & ŧ=t*Lw~X9 9Y(Vω{VѠ̯LDJ+r!fk \:)=E2nVYml a;Dm. 1Ƞ:&.Sb'@D/94 ? lgbx9>:U_cw\DpnƜEErbI{z,q=*/U%x]y'!,2#lMWཁZƾPZ`έ0ԅ)E CM[R d'2ʒi۪X0[Pʌ+L8!Kr=lX§ˮ܉ lBx`#Oz̉ޅQW2MXRD~܅fyݯɴ_]f&>`> dÖer%J6%1~LRC<]SptɼKZAA": VۢpZ+}WZpU= q!NՈfS^` _U斻 ΉN㻅 HL)[OdEhVdG-fi./Jn# #@H2SlԱQC7(4PF{p(n=jXk~а]( VB 1J,3cSYbAuQON16DLcFnn4+sxϮ%yaǟvWCV|U)>3F/O̫7"92hxvWݏ寷KEðP[h`݅swi}^%SՋyuS5p}3[PX~V=: 2}m_2cx') }𒞩q^x80!z!$!'4 ?5:~c#]$z=.:-u*y}: lq {e!`gk~"m_X S͖O҄zwЕN94t=ÊV}=+l=!z"g'Ќ~) `N0yRa"Eʢ󂧭-yiKWbu}9^`ErWk:}Ys5hXݪW)^<)Y,'LVU"0}:r(ml'#oOD7^ ]roUIՐ6Qf#Q(\6,oC>^;96^ڻyN֥-u\~f`uᬬ<;Wz= GjlbG@gkW3'R&niDo9 Nc+{{c3r(`'OKd;{+'u@3 ! ɸG[qW86̻Κ7Fh"tm34RVe7keKSwAv,^BVY6eŬwJeA΃d=fr-MRXTPS&JZ߼-B38Jl,q)Zc*͠ P ~iEhu-_aiU;O,"ƶ9&/@\Mt44t藀>N+fDw(&8j)(o?BN]~d-q,0aM/ 8 Fk #70vX"saւռl(ň3?8#tIȁs'*ERP"q.puJfkWj?ƨiC9]k=|$g@}sZ LJJvR]B8k8QrRg|^$cwyla[(5]:4Pn{@I\Z `+rTV]mGaMZ~JHS ѥj,qmUٛW %$\ȕ jٗf;ZH=T%wKt-GDF9duzr}}eu .Y7сu3x2)6<qJzO] |1w ғOKXq]Ge:~9须KZ6d) %t$Z i>> f]$ \H@oy.afM]Ps9=֭DB{jr\Jp8¶5۲ 4굇-e\bީ*|$BYO^E(eK>V ÌV.qh]9b/2V"EGjЏ`H` >yJ$Ԛ;ف@na9iM'aN$EAEyBlx:e##ʼn.Mev}VV{./ڃ̥Bю5M%"Iǁ$g[t|4@.Ȗφ)Ͽ}UvJc9Sax8~&Şu@kb|i8`>ah_R'=*UM@wRANDy^m?PDTJ#:.U `7|0)d]/8ߑ׮ a9}IY]:'snWM"9֢e /|ˍViLFڄ%^VmrCB ѹ}0Cʁ0 v,vK-B7Kzwfr3PZnf^/qĴy?j~U:I'`t5⬊v<&G`'(5MNu{gȘ;iQv@~AzH 721\5G[k X2P'̵BtfaqB:jTKzOt\_ 0enWcȌlMm*Kb|hyK<9j:]")Rȃ aiR#}}Y:*$4GEaW kbgf+-,L9u > r\Yn^]e`ί(LgJă#,=c\{]:Ye\a vqֳFq6 gFQ&$A`{S탾ѡ? qLlSa=,a kpb;"̈́f? Ab0B g\40!gCj qP|gB8=KsvbP5u{M2Z孋[Rt[МWLK<!;!.9vKY(kVÐ#k ^'AM2di[-r6 $v}puӡ82K-0'!s90og J V|&Ͻظn`#j='պz ~E[U:7h }Ch4T᷊o+ AfYF)xftK'_= hh2@!Y|Lk|;/cd{Y푑Z'@ɱĦy;ޟ0GeM&IǪE#̍&vL2h5ggch4)k2ۡM -2'TyLPvAdG ZN 3+F`pBBǜZˣ[Zk<{DwsN:Ue5U8F5.@"l56_,wIAM֮%ETC&ӆZXbQIVp^._LU 3qFYLP.89J<\4CH­#,on-lЀ HwޔM {!RM YbB&jp²9Elk2GDA"9ewx2%d>j}[,>ي6Ahe8A͋ů^1t"m鈛R˖_qMu\ EQljT]5X$[8o[v}A/ײft#ȄNձ嫻|6-?8[8f݉N o1h\ثTk cuB,;,F_ *g*C81 Xqf;-~}LWCG!Dd:l2= gKldW~1h<&ME39A`r e|lOiJB0R 1'IF)NUߌ`MvB"4'FYH\({NŵU>9F:*Im <ؙjdhJSX)X I P?G߰ Z! v';O<$|#C葵E c.o~pzxEzTΌYEэ[j;'4|\2W ^g<#$cylRfr`@K/ 4JN\ܽ2.lI>y#v'ŽC1ksgΟ24ݏ-7ܰhjbf`Sp$n8Ͱ"kٞ-eO s&Лd-:g!]SPgANh>j3`5̡X+V .]1EepɧtF>l18lcBWHԉiQ3>_BYA]"2rG1VGMy蒙.e$'P8;Qg1ԭ6Kۍ>E?!MFv{U GUPa^P?tl7*:|v@4xAρH?!rV@NH'ɟsDʪtX2A ; P #G?R86QXgc5l6_@Ru&& {JH#<| v'*j *MI $x=\vw+mkMӮpۛ9mtA6WkOv+Mtk,@]Fj/t!O@,1'_ C/ @|ຑf4O?UL|8` :fEgN_\uTjnvr]K\ڠLj/"^iFI2G!wמx7ZC͂+o,G |7%4*E{kEà5 Ú\1(W57J6K&5qPu.@)J_i>Aݦ8c B2SW]-GjM+?{h]i0vY} nTFTgh(,gWe/~~uY-z T&ZoQAB3+xJ4*GYFAq6=#N}ZmmUĺipu`sɌƯJ(bdqs2RZ/bˊO%8m؅"+=3˕ͲR,Ꙕ]=yEGVG;q8F-5uj/=g uyqԅr`$X -d!,$ ݦNVFC4+7TS[DNA} 0u) .71XZybIm=QF&D-ۅ9u%GV0纑p@Q.$$)p{V*xNc9&R3'2&Ŧ$ sӒ[ hGDp pAeeL4}IӸ4XO2VgRBjdiV]W/993pu@Q ^+]wA̒蚫ގƢ-@"Xuׁ^2A̠?63y:*֨_xlf i.) Ad1Rh?@&bŨi5ebdqu2x>:g6JM45ޝNќ8qSo;wÇEg'6F8^nbY>ӅF(5b|jl<ʹn .Ny[jgk;IeVH}A~!WAwМ!3Ε^R88%|Ic_v&JV""&ظ wbKpQ@P͌Fo;uiP&ayW~SSXNP69r -&TNvJyȝ6=;ޕ1t?&eAǀEOIEpK=D2UPVPtDA7l9O5m&?"pZG ? -1L*{`X-dLhx8yZe(AER->Q|zp~{U*G\di7̀ xնO\Fj0+ FwGt&C;wm5Uwa5!`jr4R3'WA: ,E.a.{Wfs[fkIqmd|rGi TFMmߨCVV^jwcG`AՄEۋ-l{@:<,d([퇠9ȃ)uOLLߴq@ ڌyRUqLٺ ۧBqGEÏc4TGOČaŻRJ2 7D8b-*})OC!{/ʛox3 {c}n rRzDOrR72y{~ w$]+@5WH23q:؀W,iWsk<ŅM 9Nк`{|φ~y?ކMr. ځZ^џZ9yXNJz|idOBb!= mSB֢(>\» s4M 5qiظ\+õYvob4EE)^ޡLVvEc{F"+s6m(u,F&宻VjҨ>"3 6HUu,99[w?W׎:UTp}Rx ]9BOV9 TQ׃|hѿY+UgGm9'.\-tm :loN9Qd ٳMyBq:qg`H<8*S,"\'335+=28. r!mp)Rb:1^T>^h 4-h2hpa?iEmi'%!Gč[DvZ_WJ݆B]wѲcGIű [X:CW`}=\S֊1؍Eq<׷ZU v(+Z1p6FIcʫ-*q•R^n4>73jml,bC*4`!l,2:}at6REq{!I7ӕ  5hU=Z™( ̤-BO0sj/hBo<2We VT6j w͎`V>Cljziiv]qE5g= Fh7ܩS ސ7%tad% )8J_h|$3_΢0NX"_)>pz USUqolV =Rp yJ<۴Ok&xYUj\des]1m _Yzq/ɗw\ƷCƞx -!_P2jGC !eU*K= jJ H>d@L}\;p_xx)Gn\峈#  :XPd' 3 ǂTIՙe;HjdI#rp i U\O-{.S x%߬c^$CRyQK˹Pɢ-T _s&;F>" m8tAIsRb9Z(G aRlUA>xn@-ٻoW7*)QZ/%3 3r MtwQ"qL_wgdt6>BMS qr5STpۗSra9V݋UuXƨ _@wlΑs2'L˗a95m-IoI#/e?Uo >c1+a_~~o)D-/d*3* T4{t!ZOcÞb.ە ($? Tw{.xkxW+9| eY4ke͊E}w^6DTNj@9Emǝ#&yd27]A536g{ukhuHU c%#embeKS2S |2%ns97#PH˨w;/swruNn$!Q SNB.Imj^XG/G1+RyEcFH~B͢M;l}}sӕ 變łĶ^"\Ћ褩2xD>d|!{:*a k;ZٜPvmee0y[]ƺ|ba>sVzW9uBq٘@LRz13PZ z"9H P:r [錄1d7+[aBj*MO6j1m,F(RZKW=?z0O3z"NĜ-L'A0yj…k$LX2Z9@SA1}mDZfMPl9{Mi#$:ꧾVfkI̔qmc}fz+yntM<2Ķo"lsACJv>`M1TmxZIV .>P];=+sY1F NiX%Z=ľ_[hmSU!bF7YpE@}ǟ/oגE@(5jJϹ"Eq?-}q&DzCoI=PGMvnQjnx\G>iŮK'Xݣ}tG>d\dZF~S(}?)T]ho/Т)+SH[os=P5u"i+̺CXueO߫"QϘ4,СJt%dp3|6o峿#s*=q*'?Z,_#$+0_}xGs8~ !%5ǰ|p~ [ǭ= 6lӇkpA(@ˉnX=NN^_W "r~Ga<;I؏x;tgW͜n =bL]ݒ5*.Th֐Ԍs0d >d`"K!b $4"9K;8<տܷX'~ruqVQdhYZz ;RIg|WG =-lT%Ƃ7I͖'bA|'^4_>"%!jd/yiGsOC;C\? yIG"@Lq4`ދ\ܛ ʹD Br(#M*#KO=A(kTMgP?3[] `UouF?w3y. u+A*Gr"Rlɀw-'Vls 80Ȕ]O˝nj;k<qa 0U%H>Afag'4CA!ZmFx=Ns(0#BaBq\lZpuJc15hAhؠkKK"]r;Wi@)II%x1%0ץ] H/$bym^b^;DÄx0=B{qGfWO$ Md%2\zZiDa5?=+Fq_\bG2BD>f&RR0M̝=-B.@&F/ }UK٭8`}6?ufs`'6/ C&";Sk-(m3/,ڨOmʤj7mEgo9Ln.YYyR~ަD) =eߵyz|P!38uHt uX@vLg)>/II1dV쪫Ʌ1t>RB%-2WUr{'&R8x=\r{sE =cZON;4)lʃ2>b3 ϯ-n6Ax>2C.8TPչuWI^ %r L3֧n?C!VY0 F`**S}c3)Y+ bXMtw{R@o_-%~?+A"C]4ô_uZ0I[21f EG/y9}-{V~M^ƴ3OHWߡKYDƔaHið˅gd&^IA TOʬ#bnDrO>*f hFJ32n"6_X#6h^r17=+ 9{rm$ʨs[2\{bpieա\YH-k-IN"f b.Y/68kAt12qO(8+:V)KIU͟ϣHC>2uVPt= Z s/˟Nf-αJYNN֖J)GL&@ԯ`[O9ؑWASM _KB."hoLXk.s&DTڬk!+(|H%!CRҭR M߶8j;j=[ߦ[^d֍65RF)hn:Z;hqE=Wrny$us&@>lw^GyUժJn9zpi4p84342 xE; ŰMjbyl!iG|0cRN,!kds }oZoLC.8Dflғ3UB#vPDDk(X9%!RoZWG 'vq俴& ٣ZAyFœ2?Ekv7i?u@Dc-.sHVӿa}6I,UL(uSYKFzrTC\]W| X`wP.8Q1$O֫== |r@ 004''xllh|J SkP Z y7 "fՇkAӤ9~~ Բ02 Vt%9g S֎NTZo6ٷڀ1% m'U䥕1rkc$s>lwPm~p?EeF7`x 7֛K{O>Ք9Iw*567QOMk=yfk2&Ci6FH 1uÙ1By 1p1uF-$]*u_ZmDz.uGyDi>?P{I*h9 wPw(9Wz.=`c]EYQ%lǮwpʈK!W@>\Iښ]*&B$e!iLz T(Y* }:\咁V8?9?k-FB*杢o -?hi3ۿgDA (&ȹaGxi`6utEw#xV ]L~ӯ)8{,^ eNSfGDNzkbbSt l[ej]-Sh*k\9׍qg붃'u[5A 4u1"o0qXC.Gs=puM+ĬI<'a{@9M(_g:&JIFi'8~LA:Z.(wa.pUL9l!8f|o]0@q+:)JA&yj2Eς_;?B0 @HQ`tc©'ʲ0n>μ 55ݴ+0[G5Wgl$i%Y&Jw6 G+ dIwbK^یoEq#;QUyZ4J`+Q{0[n^.i$"C|^ScUL2JW+b =I3=Nnޜ3l$9hvF87lzRХVD6% ;&yf+e[I!?0SMY mJ|}\keJ>G13#UI@X$I)'u (&,NaL}=}* ޫtfKeEg25ٴyueԲRkAUmeŲ{`©|/f1cG,E Q^ gƅ-ЊX7#k ./Kf#&,&ͬ_|ȈO*QXQը NTx]gF$hskg6BN y0NL`0.ID~?TɅ{Yt484dx {݉"rqs@Cz}\7@g]), _RkPcSOB2I&C(A\pZ׽܄Sh,o˘y6 k7mƧ[1´Az<:G97܀ڧ@ A Q29s')dYQ<*(•dnWoze1yfkc@y?f./e>؞16J#ZfӺyt ݿ6oTcCm[ +3n4^w@WKNut!7o]N5ջYAdW>t %W_lw]S-]+GbX> s서=DNkYwM>'W-xBYY(w{te}K"[f; ;=G髟71^nJNÍggxB9lLMFgb5w`Db9c2o b[K ѐ\f~Ef>o=Dp18<{T[^Q)d7I,:hGzm\#ms~,=%g'$"2嬘ɨo3uвE'6Ԫ[KX!?il iAčOsD//+!m}kE޲ ~C]V,*&a1гAp]g&8ozxŵI> 4mS,/py^p6d{hmRO! *'\1#i1ft-1\:,8A_q &,Ub+% DN(M5' r*f@F'@@)H$7|+\ yBWMEe"3TPgsAf>(*ڂSe \SgJ(*[j&5Tų{!>xfw Toפ#u|oOHBV=nC&X[&ffxd2VvlˏÿW6‡Q:n)w1UrqAk4Z@>.r=uJ 3d p^2I T릯&\GILa-Y8 }^8)g_g௙(TO6 C;+xzDl0'>.ZfZ:Ngإo#Ɩqm@= /b͹ssɴ o*؜h`F=i7g.D ԖOe(T/Aխn t9?#_↱DeE՚]4 Nb[ipXu!fK΁J!G_f2Ll#ICVdp\\8:<ݞGe@Wb|x#If}ERU8ImY>z*0c?Im828XhoGI]T\ =˝h4úe\͍AfyMS5 (-~yr @׀<#ŅZO͉|{kM+|Fqt^/lԜx{CCTp+U+OCr%0˝lfɺ2!:I? 7"0]ßE,&+nV5qb+LPq?.}( ^UrWDBve|UZCnE'|:f2 ТLtx2V홰j?^Σւf#FJFItV,3|qKOn;DT*,%t<8i!U#//Prqvd{YAUL˼ A-p}^jP>x XNlZ~0"ѽ0uȺKgOЕ$QyM)PXYoB!^;U=>/Uwʗzll1b\C KB 5.B4IG"5c!PUHd6lCmg*L7%z=yV,GXVi#-UT\?D> s ] 5|7pWHk>Z(SI{0Y|Y` *"Oڥ,Hwphm )I&1_[DlfgLk jeq9G"(nʇeV_LBf^ M2CRRe1mNr H^ku3 W6DB≳}/SwuTYJ{ѣܱЎ(\gwAXm;YN?NXiT,oMf%M>_>NNr ?ncuޯLRIR?MY w! m1\4=̻D:d]^ta߆.U!TPG ]o LV^3eD~f#MlE+R*꽉7xC(+o09*Ҏ-w;=œ7[UvMhxwEk̓#Ej& y$|!)W3JBRkS|&džA@t+~&"DR [ʙ2w*psjNY鸞 !BDAL\05Q` ؗc`L`}L!c5:?t Q#K\B nΠ[@F@Tb7 y-iy3FoeW%-套E0N1("+s\c^5Dj\vK`:O .Q]x!v`}27?9R CYiN Uـ6fP{#rŗ53`v;N|jy{Q t0+< >ZCf.`3!$~~=_5Vdtd6u)bjP@h&J3$sobWb D 8w3GG - c?8婶PBY  n&슜v\rJw@!c9+NԘ" P77oSnøxu rus(W߽m+HmC6"C n$lKA4xAKpF9,7Ǥ{gìDRb1/VUd}}@@?N`d.Ȝu[Dr)%-rt.MpQ%ZsْlxN&T͉zMXkو^MnQoݧ6-5>@~2n{v*TuQ:iGv:XQxNEfHˤ[ 6<7}],4YÕћ-.2JY1`a@c65I_+vpٜ}|TX%4+j-7Q7󁞧 '0Ta%['80Mm!0\c.De퍔P UcI\NØʹ_GTӶȇu>KL>:ۉL,yf24!'*#H <'ȧfhI.dk^ou; ; 9C RnaFBvks2r>mk!ń̹YGTI:֜k ⪠sWQ§|j3N).]V|oN.o5Q@]$Ea̎axM"e`Թ%fTk o$gVO\_Fѽ}6 C HdjQNieKjwʣ R*ԡA>YT?5:S\$:fn@G 7UהwAj Xq?Eϵ{ܐOW_~KBC>_ [fQ(DBRvHZ` zz-A2*5ԔjXd ֞L,眒g6ݥ_ pXZYwFoHu ;Ag8Pqrkힺcw#v[-fq)mk>Ú;E-j!ħgYQP#=Hx'(Ji ^mo;X8%'KZM-ZNrָ)WxÇ>pBV떂@p:bI(b/|VIpB22-7$aN9_,. fvߊq:ؕ Õ {Q5Ӹ uφ #o]`fț͂ p}WBs\Q)S9c:,^,^&WWݽD%cjY~ӓgMeq&x(nuaWǂ\1zVAs3tEe||9?Hg'O5'Al'|Jl>3(T L±]T>rD F>4U:&- օHeYZiSKF`D1ƂihQ`4?_o> 紜g$SV㸻ڍȧv9`>; -ؓJ,Őqad(ж Y;B>7~0%T4#pD*r6j>ƟC5o Hd* $01(Nþ{lǵBbsB &֋mo\+ˀ)=7 ~ǟXi~€([ße ؜ )@ϥ $^CXHFVnQSβ5RPwWnMkL:70'qD@׀=*&rXǕ^T硱8=4f,N ;Iny"}_\U (Zuo5+Y\=X%3?L] Iu c>c`! 6:8{ 25 G%ە5Ga@;0`K-iu"agoteD| ,s*u{o 7<*leOFeH& ~,蕰6\W ߯r- E +6̪5HkDuE|%H= $+Wڞ\y!I^ 9a.~" ֭9b^Tq7w_?گ$V6 Pf\42ڢ{P>C^Q).,N" =ýE6q` /1E *r;t- -l_~^NÕ]9xC5tZөu7yM>7?:pH2t@X-P⿪.A pJ]tP&kr\RW~[de Tmf 3*Kh?|z+ * Sw2(m b\xfN G;>mINo&.#B΋:or#Tn   ˺*R-R遲JavE?7z5Z*6fyl)L2Nk)g"9h0͟?L?WS|I5kJ,΂^& D|1,3 S#KXs!.WCt#nw}\~# [ /BJM-Z`З ǓQw+P?fs-Y)*b:j)|l?VF09 ,_cizJȑ-_Dį pNYv*%!V,S! CK)7PNV8Q+Fq̋gapcPR zxJK$g1\7 Pa}Sgj4yP n=[-ڰ|z/~ \Rj1T:u(7(*a'|ک yR8.b05nՓײ52?87$v6QvTL(4~Ҵ( Ἒqh 2& %TDSHVA,@\6Ҙ7oMYta%pIFS /|܍f`K 6xBx"ԃ(lq,=3#44a|atx$vDhiPXt~]G3>qS<y@m[Ŗ xg]trAmun-U=-H+nTO]ۂaT^^2RznPv:[w$M ˹`Nm?z~f*e (7p-yMx'sˆK_ }u $-J:-fkv6gS<.8<9 j%wݎ0_3?|P,cBr @ (T_:xpP\?[@{l^CjAqH$cjfFꌰ,P*w291j@`zw%6<涇n-҂:"qL=XEϘ"8G 6_/)`ϦlRp0!OA=Cj;\[a튨p-%_| / _6Tnc? 3YY؛\q%ͱ󌶖wʕ>Q.kq ^۔sY&"xEɻcy'R6!UnγtH8 'ɫ 6@݂**~Ep e!FBkѺ ux:I Ÿ^Ch)rԸUgtY&XCV/+<6 RԊCy[KtǍ[ѪBgСZ "4D#7+Z1CD#tx?I~.BF:bD~m%~)>A!Tb!1T|XEʺx\ fETkC6hx=?[x=C摴|f}GйrI[|A{-%g;&[*LD#uHp̓8$Ssr^qP/BsZbHI^4g~Zjl`5 763]aN ճZ̜w#-tC$uLuZ֫3#t9eF,8ρ^5wBy_KsТk^Sja%5lQ-4kAg>'K;ocdmhGpa\q$T+ADj}.w{' r ꛥ7&u-aH\zP|pARCt2tTohj"R| X0Օ3ϠԼ89׳'m0h6&i!!,[jfPaIsOQL:Itߣ]XP: `L+=VD>Rʽ_J&YN9ʹV5oUףAqoJ\(EA5+al>dNsJ'[MN%)`S;} s! "~c# y(+e t m5%ȢAPf0*oth8E3zI 6җ _Kw7b8_^<LKel kI//hzy?HL~'ekRrWOە胯U58Dn >3_Jgr:w _ɸAK/@3oBʼ:ʿTJPDeP /P o#1k@“@2֝m{nI&ͼ^Q%*C"T\=kft3(5aS/o/5^4 rC| TGHIQ3e͉K;rƇ|ou s+zg ZϢ ~[}.fTѾ)~kzQS$K&'j yNh?  :⊾=_Mh_r F#Fe"81/5S f,`Ø\9HS95#v'0mO}wY,^T /irbQ :t;?+Trͥ;!<ֵy^EAwX{}-PP+t!AM hBc?l`B)>]4*Hix,$ef4W@N}qw- ƚ$R00[+|;x V߾*YTAD$ -kInO61eq.$5wj}$XGVsC=+u/KZ4dZW/]Lh4(`|BŸu|G52>UDt}@kJsȇ8-r4喗K)lzYQT?j4˟H[8>-r VcTᴋC؏ڗv5ҋ2>V:nxUd ]t/h_??$w \񆐛 7kY1l-ͶvB9ÛN~6{ m%}@0W`XtOV}fz+DTEœX%j`QHt6YY=D1I:8OSz BIf"9O' E, a [MY~] mɓjfo%}v;^30:]V"$)QPHO0-5j MA7"BN_$TMDNqnMR'OeU *zSckQ5D@.fD5M; f^Q^pub ɗŔͳݖ_d?].wYtϖ9iv;DZ2V= G/ӊQ%y9z]1B;;0$dJ!K3 ):S+j2tws(t"AN6'͞,G@kS]Hf|2QM6ݓ"$XL<Zv 쇩_,2[Ͷ u"͗mV}} }vj/uF`˞Ԗq_q[m4c xzA^"dTr@a4SvxI;hȣtc~HfUxz=npWlij{m#C@Fo׈+Wb5"zl7zU(qydiJ;<Љ S GIj'T)vy2;Z:^Z+,u@zpXP edty`F^HJ0M?飧 QWH rri;Z8Q؋bl>R˷ R(_]ҳ])J8]svZ \bߒqBhY"aPE ٨W=zxg1f+]ͯk7aU¯}c+D9ldR\ܻ&hUچuXr;xW;y-p|hBȕGuyr>j>r'Í=&?^-CK\y膝=O;LE(ri~J&} alMG' 3u^v~b/%GUEΠUbZوC0,wED`MKsĎ -_pD^XQG4^?Y/o Ӎ * 'e; ꏯCuV7­u;dU4P)Nz3YՖsN["n4K8N¦4iͩRؙ-&Gbe y5M½sVIEVBq}% Oտ"4UckFZ,%dK?I:{I,^6reVsx#bX-AZ "̌`vҞ\:_V<fIW;DQR %Zmjt.qSJE%Bӂ}v[Tq_ NЛ@"`tHuO7VmAȋjfK:#*g!KRJR39|sl}YxkWQzwt$:d=Ծ4:\Gx_@%S]D'^]A)zP+1DZkXIWx5 r%3H{WƝQk|Ჱ]Mx 'tDz՘}zUN/ JcyWst_L>cBg `QKuzrד; o`m&`X2P*0vS+H+NJ}}MΟ ".`,84*beDP8eA16Ք|6g/=ǩ tE5=aPNpY  1i~*}MX<5^W ^ccoBf\74l¡+A\Eco2~΋'DтVa1^ ߋڋ+AL+)S:@~ݻ r+ &EQFyYj*iY1#5m+@PWd4FU;}w|\[M >>c^ ֨+0hZ_&!MG${B\=Cp^dtuI^}w9ũgk`{ VיRgik{tӻ:0!`nxug,WQY@~>rỊ",Er`$xL!1n>d' &T|a n ] $t EzIp昕ҀB*{i29GU٠0>szK#wP˸ F <wv0U#'LLj6.;ho%֡p-hr f44ojy'/ >,/s?MFKi %[, D GdP-Ej;W8hn9_+lK~HD n: sT˼rRJ<nA~TDkO{ ihd^Oxmq5Ӆ-4Aik7{z Ffm'*V !yBE hq~bQ"ҨkS{;VQvn% bwڊgEOg;ƏP ZO#E))3cw6=eַ[ؚ5) xNÓglK}IdHĽPN"D_,'ծ`5V>o=lCS4UktH*Z7"ّXtΣ5F?/&2tX^бbČ`$O"V/|6=2(1&ѽ/LKf"LG0b[n~]B/KmfS=)5m-MI \zN0 I>Ng}_k}G#}m fTj{&Fj6 1MAOe6Q5ƥj|Jl<t߰N6i ?_*iQsH0ۃEש#hzr5~`Uoم 3fSLX ҌZOWȖ\]帔 b%F?^4a@.y5^s*zc/}?)\g<_h;@g29mn279@%A[CuFj;g|5oa.g 7"X랉'K=MHڻ )1@rj6C p~ 3A7ZlXqQfoaNC` 9d}zmCsFS`qJ,MJGf2rQ(0NաXCY[s?s: \BK2lEs<$ r]ꯠgj7Rh5h !4Tq. 5dexspU6S!|erQ!L5KkGӗ x,jfU[I'1{ܙzgڡDM!F +콕lRcuyQT)Kzѷ: 96x=Sfk׵̥M~;ĤcA%>E{c$3HKΝ"o)~*Y{\u4{2-7Isz ktB:n2ޘY9̏zkef*ٯU^]/e- ,"Vl+n'+$+Y$l'lKh(P 54'6/պ֜a]TS"zHK"Z NdaqotHf87}a>gn4g[+ۄ"'kb/lEme3KIFE;*- c~2 H{#9wI:DF(5!742ęTwoX \ ~a )V@a,_Swn@F Nf]'73y PוOq4UB.6@/OzEy,p!Lffo+0HgZ>DZ).=dˌ9646m DH s}P#J i+Gkov>^R CzȸZ4Xd᥀y3ARVNU<I9[6=͙@5qP F}}+BeˈL\̇NˏH'Q.INa 3_[%_a۫=iCpd LRVئv0{;(!#5DQ~nf%8UeM~N0HaBG>{MsjRg(:f1 ߽Ӽ}rĸzYN~|#]4u#דqq|h<ܚYݏGe,Ugjfz&K5\|ێ̀Nnʻ̓8/N|=P_eF A2&թ+ڊ'_d>O! F H`Nt0F%Bc?fWu  -jP[mW]։j*r1{ۭ\ yIث<8I~.iJi~j:ݐZnM؅׏5(X u/7 :T+d Q~G)8hx3A;)cH פ7wD}4ʶ*_"coX3H:X-r<{%o!cdA,8N ˹  oϡddy*[؟rC}٧2Jeǫ{VW"ن crKf ڠC/}è}\,%Yc,m~r={9լke/%Σ-ta^>W7η4ȪR)g>Te~[\[9%(Q 1U׳z֭Vh +^fa|bFKC tp ^ǖ DI~M:jr]nTx$$:dD@Vd: eb5KԺS宺Z, UJ;AόY<4W((tÔ na` %mzᏃHc ENsvWӯ@Vr +n };MSf F"0]ߩ`X?g ͆cu]FQ 4|[3n)Un"xM/_x[G+XUaLK /+ad>IG09[( `f AT|_n0ۙ w/kg( G:LJ=|/fʏe%(gL)jl/V<Ʒ`%6K2n}1 xcP,fS>;j%/Oto;;qML$`i/S RZ38T~V$?1Da2L]τDo&o\ <({4BjPp@qݫoOz%S>H pם <Ԩ;y'SuG *N~Fɻ!v1#cgY' !!bg8\jhѮ35#;]َg9j^i .g7RfZ.:ac)/fy '2ǣQ$$樵&xlcG1H,CŜB¯g*7%ջK\DJ(v(,׽jlϸJ5Th1u7ԙ`qv 5[c}t㈴6~OHIF!f{Æ2zKaCWl8_{nfl\Ó?M,=w"0pwvX[Z}I=C =N8kh2c|Sʾ1b.&حYLkct} du-4B uJs}Ci]d\oы|Sq:q{_c&˝] HJujsE"O6'O@oD$j|÷7sg:ZTN( _EFFfg!LR;$=rKS$k-MҌ ֿkal=H@S'9j)#Cܬ *0@[kFt0sc?RV}[vPC+uyH~*8Zĭֆw#>nκ<*.~sdHuF*;>8%x5p ]lpFC[ZA9 A4%N|C~} 1%BbqG-"g)gP5uszY -;ѵW4k椉ܥq@ <[EAȅտ4sB9F%Fڞ&pZU5+W \j3u'ZML}i zXhIl@HlP:U03AZMA Ь eUe=m"gæ7٧EbɈUz%'mLPd^ LǧM;lB>+į)G8}0Oeph .&<JB|VPI[v]'06,Ͻc ol0'e!i 4jNVIѺE`'E"<+'-<&e3KKQ=u'υlZo=E3h1ý dNkWiceQacr,#Yet:s<]\VBy8b3uWKo3/1*+@;ѕ`V}2x#oh> (2Ρ*V [MQ #dŠN)hLnϩvKU/$)Eq#h/9? h_@Ag}1\mEn wHIAKON.-)P+Ǫ62~2/h{8+%]֚bq0N4ۥL'~Ms 4j~0RKa ΂exxҕrca!4S@s5 2j6hYʟht7]~mL3T@!Ŝٹ@bQWqAJչ`dn𫫻'4`WѯӪI}FbW<ƀe;3̟ 3R50.ܺu+WU~ $4 MFsHۚ>k={M>eKHOoȇE'aH"!sz&ic ٯ dq6ץ|EB4DR}@BXkӷ-=DVPXKSQHe۔~⸅{Br`6/#eDW,kB;m8E`&` d}f9'? UYĊVxUO+$m@sNUKrOc0crp'K$^>KE/o9xnQƇSyb|XY)^$<w̥@4i?i'?H0_4wT>Je&?hӱ}Mb 뿮 Pר~bB-K=Ij{l-b5ut]W_ns4],̶Kݪu<#bZ ̒IpO"f ^ݘMmid[gЖΝ@pJQT]6%߆ [ѦsȑT!){7f#9 HCn,͹= (c{i C G,+WJ0@\TY#)̝p,{J14<k?ʋC'3{SKj_XoN}\>-yF&sd {OЩhz޼ӉJ3YdFpo1ykzՎ(&J G)OBeL`O@D#>WڻY)?6CvDqȝM8&5!(l&(n֪ø"C7.{%н /i ]E,^E-WF92-W~od=~D[)U1FO^" A(oqpOqYA雴; YAVؓFDV,qG0ۊ8ͲE!O0Q  >&T@\+)o} Λ|0h !9\K>,2 'WNSbXJres7υ՟(?!HbW#AJ^;E{_[k{Lc‘^Y@ 6W۷kI̋@bl9`D.y}0i cgI T}a%h|"'trM5-xyy⦠R>"C0A L:i~hqoaMbyK@=ľq\,чW)%뛿8:zw>gͥ;}P'bk:}mt۸uQh&xT\05/ @C5atϯ!(Q7[(%!al7L`GuAl4@Zjі{'Z{q(2%:%ԥ׿ ͧTFqD>Ȅj ?So5O~(,0~/Z\}9sñS%ߖUƙ;꺡 ͟p\[+7e[Bn 0JuKCFA{C06 0ͫ=3A\UDa~nh6iS[o8ȑ,кL["Js J}!QTm~V-^~(u<- #6vGZa1"gQ@'X?yP ,' 0E'-lkbI Hܑ{r j"1T^:"CX _N +QYWX%\:zXxrd}*y~gD*Y(sNy; ,N5`y#ʵx9#q9Fh6$;C̼<ܖ;}P'HuȖ3Uĕ̕ʸMr"Z|u6:J0Oύ2gd[օV*Q6Ȕٿzq<'BYdգ~%/3r&c:>ZHH!FNSM} #W )%qx*M\ G0/(NZsNg]-o)5.8"% =s)U"E\Њxbd7[0r^ufWZBlW>=.g@zBh`a7!+\n`҇:@$@2=yyfbALju0դ ?4QNp/X^"xNƵhIw'|QL<T~b6'{]J]B&ĥ#mV,>rC'J\`gZI}Z5S=fhkc. dch4 " {W6-C_{cp.)#׊7~Mςw) .U,%8{(#יA$25]HC}̜kn7""UàbY5_n[~_ Y߫߀|pAD$Lzj6P` h\ϳy֭@?Oep1LEz'^QIY48 M;4!'̐)ILM @Q($&ZpFmo5g!jjlj$EVܮ |AgT.w"=Fzts,nԡ 3PPӆ'g{0!k`,ʝy&_ꖵ4J;l~I zJ={KB'%&R.N8u\(6N̅ к-D_7z5_BX=2zӥql;߅W4ӥ8b5Xo)&lS.6!nB0Qpc ̕1X4sZ_xg^ ړLd bAl`%]EYO%)zg}hUuVeh㏳\$OycgdŁU-,{4YKH }8WG+2ÚX&G:` ۷Ԥj\Ac7,nn*(Ǻϥ+JrE_TVg?/LjLjzd# jQMU0գWWdo]&܊rBX8Ҏk?^4y"]hd9_[u["96#cW#-%ҏĞ'fŔ,ZVk2yr)k+K:(H?M<0cZ]_%T’vrWBɡiC$v>#ԛ&ؐDW`&TN:?"3~ӽl( /deΖi.'I \gK]?#HgKCTJn3J [nM$+N'9`d'4‡򇫣ɓ%Z]ΑՔ՘qF%+ :TH|<!i4b{)(Y3mx HVT= 9R'*=hVYKmY>ͨ2۳yQAPI|i<o$fFHca qԜlLsWm^MbG]V%dzB2jw0e)l9Db l~l$yR60{V\ Yl{瀔/Pa{.GҎ"E) eH&+0yM9s+\d{T  f;q[Wk!&buTcJSes#>iQKJn0Ib'3Qc=KA'?$Vp"ʧo&h˖+9(g1JQ]vg ckud|kS-eב8E޷f‚i!.f5XB@SR(}><t"oWd->M fv ͻoڏS»]c@Z;1;T_1*rloƑ0W)ؕ?vb^p"8S_[!g~"%426<~0wd=icnJW٢ LJ&+x᥹zQV1ƐSye%ёn6fh9CBc@r5OL..-E]re1&DE'j[LĊZo*xO%7rf*;N";1o~(㖿{g-J]KˈF;79HsPiDQqB{emHe^d!O;ip^"/M";).R\[OyV5eNEp9$IôXځhRVeiiΈA#Z@Irnh0.{ ^̆M&'5P:Mt3Fq45G;snb0MgSİ^\`8l_^2 8&jGUutށZXq{QI֛.mBU^bn(esSiRte%l-(boHj 7PϤZyb4f/j ~/paD7×<% dr⾶[.Np[4Ud W?"Ō[6Z ]Td27m-Vg8nGfxE eU^r_9@ 42~HZ+h4Fph;OԴ!rmzeQx'F N" P95K;JPqYn"I^p6`+m9YE0Gqn*:nNON:~'y$=!xv[ۍ;{.=t_, ҈1\Oc"evFqOQɏˋڞ H!ykcZF~`DtYCJ7?$At 7ۡ6]H\fPe8nf( e/:&GYס(.d/ 7z Q~ ]tэO{"쾞mH[ rS(ϙRD[.Y6")-x1+b]09@:Etk܄&u+7h$yq2âqƭ:jxΰxP3DܵҠ=Fy3G>6@r}Ia "h,:,gth*ɴr \VoS1;GmcD5ޏ\:_Odq2iX}?2bQ{R̍C \$ȱG'BUcR-%" d i-Ty:/3o R\lnyL(e60]pT.[| m|i!n( P=G":ɎQGTLHb`S[",q=i;$ Zd*浥m|& 3d 0yuU3Wkxʿ![f(Im?˦y]~m|~e@>I.DPBB"rjdO' ݨ5Ԋ 8 .}¬T4wv1lPgYAթ88XDoavbq Č=,%ݧPϯD-GPL@4k%āK;ώؼ0,1ڼ<"_1D&gV\ `]{#N͒ObmJ5*Qaލدo-2 ZY]S%zBGmf( D HCUGQL0Wz<Ŧ`ryJxʢCyʋֻq`, 8ݶα)]{6P؄bGzmd^W~d6P&sD-t^R_c~(o5hk2EX".U +k5if u8[Q5UIxu8 ݃.5_3[7Q*K򷲰]Y`&:Z !dZƣ439A{M` ZLO\z]B#`0N7!8MĹnČ.KiSuJFK^zsQ+;aA k!agkxDۅaXZFqتcRO+̊zy԰T68b3ƥwT:G8@z (#2i)dzzӛ"cq(ha #4 9/%{Qq)KWڌ>?7Ӱj.f85 Ckc]e<$NZϔ*'x&.(}Z[wBTA3Hc+Dt Z6Q9`@4~n58 |]931kj+T~K5^&~4N2 ͳNݓ 2U&ͣį# ,[g[<,Ҝ[SU? 9vy[ګJ^ *'h4_޾n䕨#u'Y$ݾ5>{,Xp4&J3QL(OvE!`˅Y}I9 cBQySlRJAPJet:%|>:Y}V$`|ų<]AcdO+{|]9t.,ӮG5<!>}&jvX{[Y\oq>LȚHEwuMwS-9l(<}$P`>+L N;G#JB\Z u>IRͩT`d B|ov)Y/s }j!R_9.V.{uѾ)UDzjSQw0:|_ӊzB`jsӅvb^YkZ'} %ig'=`n'nD76<əU<|>'C-u06p6@ cOW*iy~֐YG'DJS;z3ՆNCjy+t#Aot[]N-G{Ụ(YQlƬ1 o?n29tGd)Pk䓓sC JIjTQuKL8p!YÂ<%Vk5gc-:,=fر!ح$rrMHWĀ/:w$G ;XhM9Y&\{T\YNV&- _=6O_x).Ti4|- k%QVW8N> $ S"a::R$ k~ Y8\䒗Q-2c&UFqhݣ P`:QnipٿhV_bL&F3(Kc'ChȤSLi^NVSo&4dPb-T֎|a}$4U\5Q1$ ( ʽ :v]ֵ@W 5!OI1U֮+S%dWI@oE"<2 K y+QÑ́1y( d>Otg6$&/d."XW3 ѐA/'U- T="F6_Qɩ6UCfh+m 9sWꘔ?CHN]'S|9k0T0\eAo꠩'ϕCZ4N&~3yM wQ]oy1IPUA7W7Iyٗ9`6B@CX3AmNS PlN(ܵk 7o#OHx#CC+uV 7I%}V-Zr&J.houfoEt%b])?0UfMu[; 8tf:#T8yhQ!g inU:QB08SVAduSV%F<' Qh/ hq"SiL"#L_[${.V^@Vz,W"?ch'4Mb /Qc-fr'8 `>ah`8~= -[`Q)NXk{)l$'rSǷ}D Fa𒀨Ο {)"Nhj`SH2 ?;`&C6!Bwi'~@a!XOq@˥3;&J$mXΈvM`J`OK G:gҝ1CJ4o,X0ޱDf>/{dGHxZ AAih9 ?CW0,خ@JO܎ eUM5R Nƃ#IQ6a<" Ay]t ڭXU7h%:U_ kŚd4YPS蝊vDa}SF>G1+&$m.zSgQBZKLmkG6_t[Cz%!M Fkg H? O ǕRl_ \{7/ar$}Oڇ Z=#'2}^9eYgaJEɅ.焢VPC8g> 2T1  /(%l)PY,iz]e~#P%`wߡ0r7%`0鸽pKԲs})Is6Ot*ِoei[^aH IPӸd* lHe{{2dܼu"`2ٝꗊL3B5"z+Q~xmVC`V UZ2HكG( hpt!}~]$'r,?`17ptGm$ 5!-0V9Yh&m;JsC`ZZu~QT;{Rzs$3#ȿQ~>:Yej Lؽ h$E( ?nYV_wjf)Ӄ'ש +.7.EW !}q nSZzaBO:D ZK & s$jPˉV6QmWiWÍwz!fOҲ )~,̾G{#X{zgHB6]]QmiSq&]`UHFypH[_SW,3s4Çvyշ)rYZͻ>"4מm&jq 咜\eH:B6_!H|z[ɋ`Xyv PE>fipw:#XcbC. HY\?w!zC'fjG1ba79WeUc hȰ+*m@Rϼ*_#A@g>߅RA䓑R}6Gpxr tO{A1Dj?ekDQFcsHd D0ۂ`c^2K?˵oܬ 犚\*{|NBbuPS8>=ftsRD*N6P4h/C8,fh ~7KDLvY-O@i&|͕XAʦ;3n)!J?GKuPrtڏ$ž9Re0!ӵ*;$Y` &<hQN/G#\p\erX (ˡJGZ)ͪh-_:M&L9$.5`Hd{n\W\ RaStn*p+)ndnTe^y:+HH6]Ө,"#Cӄ*~-MXsVvth+$WFL}R8.凶K&tp(YytM֤ /2"69)yM醽?Tņó`/zE8!iJ+ŃJƏk26tޘ/ѫMrd&4ucdĴ a8Edf^x9hϵ4 ѽd{4`$c9TIO~p||+칆+]/FϮO$ۘ|rd<)L'iMr4:;j

{9m@W ]:w(QqWfT[art.C\z/s\ 6)>z y~W>ުO8-J>[ 슰bo7'l #1ț|IwY,?y %tA`$ՠ[|z(n~ء(ٳjM䎋C,8Lb> dlXs#Ч$(6*V0{g@Yѕx6a(J#SBJY0F*2TS/ ge= q ʝky!4V7Q jMM \ɷ[k^^aSXkUtҞb2.5OS$=[\Ū j $$]F3nM| k;Z2Kvl|%t75/J91ІL bzE2Ym&{\ w![)Dp7bW7}m\ed3372o:RhTM{.Ig$] c ' Ҕv}B\7=u4>Ϥb 6*bSh#?gU֙cnF-67 ~i2]ѻ#S (#9'V식.;  jnI@k=B Iq05ޥ+@U1c)br)5ShN{\J+N@?ԸwόF2c[uoH6w`LՌQEk&"tml:ӁoACE ; >j}hrG@3$%;ONɁZCʃV6lI,DcX6jBt^ŴHJ^ i7 ^qG)|4DŽEFydeʀE  M]t9I+),׺lJ-[zl2wSAZd!JQ5χ[+qGw¡)J Q~ɹ; ô,Lˆ;(ŅSLFKF"C#<}K6HO(yGbtDl*yK죂nnhk &ӥ2+6NeQ-$8VBMV㚷cbۤT<]T&Rʸ5FIvT" sw̱uTHtb)paT6t+g&֓) %-/fo=Y`ڒIg 2,Uu)%f?Spg&Kd:Wpghc'Q.Y P ѹyS1*b9òs4z``8ǑHJ% sie`ZC5 ԬtMփk$ Tgx Yޡeds50Yq"l$ddZH]K 8"SH~8ZDr(/~8+B@y\ +x,޷h7Fl-gX: jM\lp97]k,@Bw`{=s AY'}`Q%G룪9Lݫvk?2Cڥ {dgY@܍Ct]vCcFWwp ͟z[3r=x +W#N3#57&Y$pC.m~rO䞫Nl_Cjn*[m5˙ٰ҈io̸Ъ.H3{M4E}z,KBg5I.é%ꞅ*KPQv-z#tOX=]c% z$4 JiQd W%Onh!ب=8]]n*i`# 8Jms9~!BH~nJ=#_2 i޹({ bXۭϝ0;wmRZi@nS&z7 z1jiwr{u"]9W'(|v5J΋_R;ڥ$-"I.̠_BZE?YI DNkñR1vm1,pJ\%+$,}^9{4BR0N*e?gDUbq4汘vffac ;_ϥfh36UBvVLS~/R*DTY5cZǡϒE_,n=$ƑD7=>T )(>yG 8H)=JY+83G7VX6݈U<F͘ {y7N'n{ؑ~ze:8y4ZkPgjcY3bytӐgn(S!gkahդabs5{" )41mbϤ ȗj>kduhh(duMbM'g87<ƚ !J-&I+-6z=Ic8Ք3SQ8j)`:Ќ筁$5yvp( ҄^jKP^z^Ix0v\ve~kW_{E:T h*O71$)3efžc9KۇO9ZO*Fqy7Ps2Nܧ 7F: ~?o\u>64 A\U+ X[h-e1`۳$)]m^q9q_8r_uiFu.,pmwZN!?bSΈ 07ur6-^eF?+2y]Rٰ߷*6 _}/Dʿv (&RQM 0๨7^8HQt5{E4[ #{yÀH媂?t#6 g^ػ0@j Y(,+:I'թiW4ԠM|E]) KӖt/%h HfݔߊN71u'eWt˜(;Q [2O=/f2VZ~dm-y/_ɰY矅Gpп ,s$Ntv4P"Fgˍz7&-!-iքE$kwpePn`Ǥ d/f}l>OS27Wha%a֐& ~,d.a VMam0C3nh[ ,t,=S 0h>5נەWK}>lܻ.sV3[Dtn?0r8!a d({)*m_)/Sş8R 0p[) N#"˾ʧhe^eHdgtk&PRMǕ/A= ig#?8jzv_wD6Z6%>[bXџ;pgV/z5EѺ1럼X8eyzA78}d=]f<=tCɫ}YF،hdǁr)e4k$f_RQR-De8'T`G1^qZ8 @A:_ZIe HN;{||VC ɷvّ{$Xx?,Ƞv; 6vE>$jo5}RʉD=`Ϊ*a ;myAbd\՞"d#:t˂Ki(~G hv[)9O= Sci9yUѽHb~߭~QnDr|hl6%pAEԴB0۞qg8:il6m?g w\8BW "B#g ﬡ(wQn63-:*o"6&U~;݅0IzMQVav@U&Vw+nx`|-A?Cs:eqK\ ߒv\ܰz: SqT+.^DGP_kBxrmd+ƫ8FBac$-mk_NV#*`kj׳|+Qe]2 wN,nհ TOU-[%.d7OFuaxUe ֨kJvў-U ҉nGN sBlq#A/D2Ćb<^>LyT779V嵝@ԤpA ž6CID[O + gh~o]+9i9ԀQ%s)&n6jԸJx. 332%7j0=yg h~&b-&c50k) @lr<Bd:x*h0!G' !P$q-?ʲ<"av>[ߑo.U@%P:!"_. |*v(`dp4*0=XU-%  l _uL8x\& ` kzw+f9Ԉ ]vm9k?Z`ЬY͖OH^!czO̦|/3!ftjd_\Y9Lt)Qqϖ]ѿBt4FD 0_d%tnjBniq%(B_Z, yeL@ZRC!SiD&ź0R {иPY<}ME@s;W 1@S'h5֐roNKUP:\17 (=,8Ls?x@*`UGeE= F49w$J*T9I'@HK]@4>x<~(؏ULJڿp~AEVۄ//JZ=}9|b5ӌUfAZXYvTӦܓput abm2 KS[wDIU ,G)s Fs@+˒_YR7!GX\"IRW`]f5R䪐u;K!5n*,b +U 5 0:NrNF8d6wB ֐c_rGi,*bO?` ,߳{HCוؔnHz ;s]%)}VTQ5U^0,ڍCW>u*1SOqL{p6oHi&]\oauHD~w,}Iܭd#rktnu]aB^z `UP3OS>FXQ|FqXzͨ.Q[}j \k|߁٣KUk=x. Y3AxMR2F53+`_RSb?Fp"l3 l*G|6/{`EkKQ'6INDthEdxo'U5A޻otuCF}ݧ4s|^IuaUP~D5Uܫ.)Fcr/%ɍ*TmI͎Y/OC/5ݭB|Q(1w̰+] t@'Ԓz7'?ׄ}#MZ/C&p[,;(DvJ8~\0]. DϖxTtZF8zzL Wh,5(D/o`DE!*Ka6e2A1)P<};.H#i(v6Gj CUjmQ&%bV$9olR#03#a5OXiuȠ +bccHc4CAmA0>Cg~t.`"7}Y7*qz,9љ+v@c?SK4'@`w&#vG`?9䬣ݐĬ?aQ't*Shɩ] 6O"Dɣ/JkwrQcی'77Pm@`-Qa g9.B.#sw[)D!P/Yȳr:!aZP IWр[paG7!uIZR›8 KY CNi\mM,p٥G`\"'@$E#UmIl5t՝Z!~Rm ;ße WY"3lgOAWؿӀГg^~7uNks(^4 ΩX $IJTA+B^Rv/GZZo>ug?,@9 jql݉zɋy!FT[xY2mIu_  &*FF;7CrBw%УPz3RK-D,+]p >'hD:Qv@6-QxQ*xZc[>ρw (yǟI Э So߇Q+X3&r4aDRn~1v1rvnzv|8P2ăˇg}#ki G!vpNu-w#f p`Ao(l9aCbxY MIy&6"EI٤䛱~lQ3Թu1Chmh >[v #еFI.\]HġpHe;ZuCPÜH cZu\8 drc|VXTmj72ImLm?3ץW?Ob2N6/GK>gMa;ww\p71e9Mi6L-K 1tW3(1,vI^j41 yDdOvgϿ3OhT-;|2vfFM/${Ž w!jRieBvьӇ>dGeb%C@@GF1U[kv#vl;YҨi7 j8DjɿEHhkdx*O&We $2g4{3MS/lJà0]ה6!f+⸩-r4h.4,OoqzH!Ε#"9/_Hڢci,?!lptc<]6mpmǒAUWJ޸wnS 7&p"& b^d) T{b pTw~ 3Q A>?+4/]w%{[$ L>a?kڔ6Vnz\I\>j> ن+Ϛ6)0r@6gvhMt7mUP乻 T2ͫmo]l]BMLɛb9&Zo'M< +ɶ4[lSz/2_RE{#ꃭ~}LNj )g-<  *0qR-YSW%;.y[9{[]QH߷:ӟ%^M^YE}l6ig=O}G!5M*DA]ƹ^]z䉠(>p8~%Wsz]zʰI)B{nco~[o\k& Sy[fk}$C#Njv6D]qff*;J `Ps':W Ω zjNksM41%9LCx PCRqThOno;L9Q^*Fא3=w^@Ȩ`>fEZ` O^NA="UƳl {+Do;G$,6VTW ռzdU,|Ê (}Z$ŒiIo7  1C`blP78$MI2o?P n 8=zZرb00:Eh,LR׼SA7, $AL,j7b/hi%:h*2O@̯if*{o{ f]i^|jJ4L~ߐO0'\=`ozV&ho0Bk>S#z_-j :O5gK1'r|ۭLM3\SYNIt1:.u{4IYhHֻ ;/uʲ+wFKei}/BbL>1T7Fb6{WIhΕAn8Î)7bqn0-Ą Qo Rԣ C5=H5!2>zVt|aAPFItڣ#ճb'^ æzC*YR^PxȠ-a`|+' vK]Mem[̿?bA-Ty/hXuW/pL-٪CB{3 ˺ W_M|-u!X5Pd+[]v F APM@(Y  }/v}*#䎧h kaz.}c?!./[pglYm8^ u(Flts$wi}N|aa"95X4%p%\LԛͤyOHZutMF>{3iz,d@״bjF~IvTy'^ܽo*ܨ 0}W;Ew۴o-rfZty W;դꤐ7%B,O#7=N1m_bllr)!ݔǖ T.ՎzSQ r: :JjU AĜMЗ&s[qod5HFcv$^YNޠqN.~t򚿻7{bj )CX% ){gC6qY0n&|}"tЪ+'?B'.K'`퀂/ͨ[σLCGքIGE9q,:.AI~?TDFHpә PE( VROvwd$]as3M;b E.տ97`)5l[(Nn_W^Jă>)[FmY~zA;$Ve;UΞ^ۗupw p`BPX.aa瀕SÂ#LGq>`(&Lj^ExӓˍH; w(u e(vdr5E#/PSƿA,$:k+(g~ _%_1n<ˮyCWrw)#r[@р0 z@mSs8r=9xcwh*2fGp!)xn)mWz}<'sۅVԗ̺gK],(@<|[=)'蝷ӄĔd_R3L`esFWK\tӥ'~tK KouƷftOU]m1-wv2 ZAk`1zF h3,ȰMJiJa0Ҭ('⠧[moE Eub U7~wdd.=NPޕ4Ihň71Q-i [ǒeW57j F'Oi]#e4NVcN ~3X܃y[0bf[ ="v$B,kR+ھL.*jgC7ջ$qT9䁊ec, *hG)˧JoGWbC5~3뾊@ <#C٥=T;\w sP9ѩ[c"L2 SAswWRǯ3/)A+y!`Jז)b#T]- тB>N _L")>~E-%tF0ʏmUu3VpMا0`m;w,;4 Gs02B/SOC8ϑGX2?] ZQ@ؖh|+Nhı+F6 NRXNi* KZF`?i08 x,a!N0kx,K"BBʜBl&))Yw<Ocgy{]'a*^c]E]4i'@fc,V.=B)Usjpm}sf[rj*#H OEdTI,oG܅Z.zXtO[ŏ(+7d|\**QTFwjE[+[͉_D<~첌&AnƱB)ʬpS/ǘ H1jkϞ%zu: (g@ׅn&̀h0ڌzlu4^zJߞ.Om+QB]K^[leO1Ka]fH4pTvM{47XĒ%Lm$bqў*ȞM7r3EfkvLR()Kb5z-k2J8D e[;sˊ I)p+w*!9r[V]UD,gL&Y|V꣨|iajsM݄Äp-LJ2e+RvпzR=L{UpaxHfNJ`pB8tB{vjZ_¹X茀:q)(Nq~K[9`V8K*2WJI]P/$կ ,;ZޭYyR_NGTܜd+VF3FPNⲠ$Md..P 2M{1,oɅ 뀾 &-be6dFfw6cf1ҥqnڼT';5qq.κ 2jϕ0&P99sΓ(o9-`@qM>2A1vś&}iBaء,_3 t)"n)/Z 7q[ɔظ'Y`O?^3`$D4透ےb!.T]YlmKHhqɊ[>p{W)YNHl}t \'&Sx*R:1N.8y\)+I$ @X؆ ;U U~驕lo4_AwiEpVIۓ&`a?IYr3ՊbM=[òisLUYm?C&|%WU3W®,(mmKՕ-~V3*TLQeȱڃ3_ZHނ& ?GHr"tal=!D:4,@\|Z#\<ՉԈ^-51zp\Y V&!)*aE_D?U9)+wQc JitlnUciF9BaCQ3:pjd`k_a]/:_Bd``-g#>ו*'Bg rBÈ$ٗϕ1Z29ޢ>|7DMN}$5G$:w\7k73 *@BDv_RH/n+tXdPeU!ڔL)-#\X>B4HmkٰW*u%jfSCnfvS퍴 Gi~PU,`}~תԎ@u b:y_*3*Դq詊 E!,jf~J8;DVulM 8115'+&IFpU ڣ᷸y?gǰWSߝW̮?_ ˠU`8rŷ'sqbX d_zO  ]CĠq*09dir2@Rm-mG]xndJ#>FG=%]¥)XB&01JJ#8E0OTX ^OZ2$:ꇅXrlK!6e:o eQ29< R}Dxfd' '8])mKĚo`3f~W[ nfI檏87=YLhN3/MyDd\RUeL-vRk<99w4Sɗۉ~C=&E~@60Gv^/ x+O\(p. %($|& |c+‹_j;ף6lڡ].QG-4Е_T sPyҷ;%/e~J3*D 0f,L&0Kͷ|po5TNiX )JHۍR.lY$E@MoL3)!Q!D<jB|qCE`cFNؿG7P\v> |ړ0Blg[+>hf.3P"@p|?xgiݧCѼE:+|ލq3Y֥ښF[fEp) {KΨ :οtDu戸 =-yEx,G=8 % AYKڱ%ME_cIKSn0^c^cE2s%\q5#U\zuGb͑H 磃NX /Aٛ~bYp3y`jҌlj&7kyֻ)|,3ŴHg+Ftۙk>3f@EgpצH{ PS,%?Y0s$jYݯGcM@JzL,Kt+gB1u&l\?͠i^[ىׯ%X2/#+ J=lƞ3m XkDfr潋M)!bσQ<hrp0zL,#G$Jw֫ѯl._{LY: I5n /`"QRfjgSG[Pն^,DrA7cO5lj!}ު?W0c S9 (~UU[6g7dL9Ά @A׍ZH-CoxY#+ҖDhOY'!K/ ڨرCsB%?FG@- @'>)v!|krYX+1A#YV|7̹18?0̥]ܓ.VǾ-Ẑ oX%Ym:{@ZC=A?qǨ$,gcuLR%}ŴȨ][(8OH' C 5xkСxr;cg<+{f?\mh8QN$GӍӌm9J/Q%3&_H9s JjD4 Sυ&W(6q\C:x4r㍖~Pl5 G$>!`.…STGK&'x]|lUWey!M5m- iN|D{ŘXZq7iW6/I*[U4%{U!k80)xYUX_m/1\B((sT1h9.Zz)CՈn_>4`ˁF 6.wSe ݭ3ejoT7C&H.pm+.y"b9Z!oŽmοL״pz 8w'^92o¿K^NBi(lXKKC51=wͬ>)^6<`Ap *KT+,MXmOk՚s" ĺhDښ^MY%vig$| މ(sn}K n>zX!&a,aL-gyӓoVWX;cPĪ+, y0>31vЫU sg9XFXڍ9PIѶھFk {0I;U}Bj\fYHԨM>d $_IJ? >OxL˞Z)DC |aO^KZR^[%DFں&CS()6Z]/gT/.0-Sm&o?-oC9]}a)B=#2mqԆ:ݩAg k6TXܽ(K'^+<9mto=g"~ YbQUŬtS9KG]e>uQbAfNcKl׼-9¥Ij-e]NH|dA{1PďXN uكRހ]f4Vh-Ux|NWǦؓZƌo+䶝>Px9vo ߓ_Q&L"nY€yHcodNu)|AECJPEl\hxCʇ~WTJ͟ݜwz C{ ~HĠic2vҴy9_޵Σ5켔Ğ Q]mYj/OI{zV!7ECh7j'=p2 0pzl^h*t{Ϫ\IDѰzK\npMPV{[<9Y ߠS-42`\ۥEn'bqa ^B(I)^Ň/z[F%#1c##mwp p_tgVDx޸( ͯξ+-dNRg^n$7nǯ6Aa[yU0T]z2c7% ޫE[|lp)2 =I Du%B*vrpAlo:6dN 4bǠ!h׷uOS m1GiK/$0jKit]Uw" 7*:#r۩Kiކ4"qj Jʨ-vɅ#c`E O1X~?9ᑕth'yZr;YS>/;#~qֈ!.E_ɐ3DPSRRїb({ rW(*w8yf#;ٙWv"H85Vbxi4xrHD2 U}fι8d͟o iz]ΚD R:>Q2y8SAw}} gF?gJZ)\QU}M˓gV@xAw2)ne&uh!r Z1n=[Atj7o5zA4Uⳝ O:L@φKNn 8,FJ˫lu*ŋ.9t~LMml,x=N`d]@ 6·{x-+$1f׽] ^+,n*r6&˝2o|I Y^2]_b`;=!樈fOኼRp7F;ltiHD$2(uYUDCxv+JEBQ ,BL\f0FGq ib&O9:RSyeI?di=C-Zsz)cK?|\u$Au6W #yaIc_ԃff󷰑MWUއ5 ,n s`*KY>F0B ROrU%bBwbeɥ)7n}$k93"-O H:O[wp[nʱ5& @-bbh>:3(}y@${toǏm=y޵ RX GAd>;ĐG l:L!hd"אKQk?\R4_3XЫz[ _o4R[‚֢[Kv>\lizeu J8z^*iu-N=M4wN0I!hJ1b%$j_߼B&ZH6ÒEr xQrqUZڼ^6m+^F;%y;}hؐ>L ,([J>sAE"Tv] \$$P,}dD P(&T"r|E[3;j SB늌ߝ.uHm(dasuA7Kę"- >?ɚt_l6&XB}YfgzE`,z>Bn`zvP`1N*S)<ۀ(9F)7Vb3\7#uAj&zQdxEL1Ub`옟̝6j vuҧj,|w*Z$'+Mr'ʵ\k)cUБsSl Usĕ@&l3 -.Gl)CRnpÐEGwcQ3Зmv0]1Z($UCB[ڦQ+K9{3b J8TK0ۃӺoDny40k_DhiqS gTn*:ޖB( ]F(z^W8bv ;jpO~O,/YyjveOەב Y`q!g~2:cyY1= DPi'!+X&_s5U5w]%l?~y Z#Lc"V^cƷBH-b2l+taz8QIeXDV\Ih1 0z0 Ngv\LOx6i&ݖMM$H+lH\wT5TT\K5hMrKT>F>(E.mDAU?kϡqS7 Z~S;ueʎ=KeHZƏDƨn=+-C `<ljX {_:[0'дaSfCq_Tt"X`~c;>‚/Q O"Lxc9GK69F 4$"Vʬ?sc4=ac ۋ)cȊt/RgjPAK]'|*;IΎi+UBv[C^ _/YҋA]6ۍ{tTikD̻}IH7xɉ~{ * ٝPCgd^'%}DJ[Kȕ.K6>z2$JI3vc. 8amͷR0э:$>ˏ ΀:K*oL-[P#cWz>T9OE@dHڽW-N_d5P $ L*;QR<O} 4G3{SۼT|ex#(OUEMf% *NDOw]* Bqz&{*Z<¾b#6[㦞츼*-9jSdz,~H?ZIqʨiY:B6L~qInQp@a/ &&BMoyk(q)މT*mB,&0QM,iCqL5ځ謷K:Pof6x2Q*]&fA@1KwGF2ۤ[uL8F ֺdwׯ=y^+i\ ZW#8SctSA )95I~xlѻBD4($ d>2py1z xiEUTPTH>d9${t;`Bf.4ysH9KS@5˛(Q}JѧEQ)w)}re wA{2u7QZx6(scV_=L;Vք$Qo>?A3Xz>inJ{UUk@3p)f&vG'/cE@Glw >~;$NL^1Th}9_HƯY*ncJp,WSY4?X6ɖ4j%i/F[ˀ9 `<5|S5muqysr/"/^C(ܺK7aѼNhP"h"x\VdDM:G@֮qZWx҆U~PpD_a8-xl(#{,zgKF`NX.ZYJdTb?Uy" Y\R %ŚF K$Auy.V;;,s0=e$eJğW=pc{*ϵ.n;-*+8oituñFEOWa6<Ѩ."A- A +>2`ܕ-NvY;Uځǜu L;_ڔÐ 9)<1rITxdW|-۾=XW8*?\>`XT7+?Wgzk"6 V (]'&>j#{G-g>]LaԂz 7B`L4#&W:`+GY0.?\m<:M 5e3"뚉2a$;R&`w$? _71PďIVʣ,DL(]% ,TZ@XYLG\4ީ\q61/aMŝw$hzw"H1ijwˁHA, b7[YɢD>r&Zrj ՘ 1 M3V.7c̯3 d4T ?bh=f0}[8sb#u &nT:k#qƱ!يo7 D@p!گo'y)IR6,jGbiP \]&d̉a(!FKb$9Eȴh昨p_j&hD/0JaWת/P@ҡ[5Q6Si6Z;r2ZVᎻ.j8e4x)¼ rĸ >4uvǾ[3^d[Pn<ȋWgFx? Dy1&q) R09:9Koellw<TWQՁ}z^V Z:IwmK&(m=]qk<򮲪2.S6g' {r]\|j%(–+Y|Hoim~>orm.RY,,n ő(Y;'pZAVRt]l$Qї(2|β I?qicY#)Ő  <xNlkbH W\lM Z'jM+dV3E#hA>pPl &􃄁u2õ+5`|* b+ Le8XqJivLsÏY27hW7 9(b\? 6ՁQ|z N(KŔ (D:ԩh-6Hn"aei\QKT'a8;ӊ'fQ44gӦVEVX6JP.xEX| \dž1)uY&Q`*C3 Aftao~B=9h.yu5o,,FFLŸC4790r5օYfˇ$I~:\M+.)،@["!ᙚT!?n楫DWǃ+@'MU?הi=ԑHfk=Mŕ}or ]&#8W?:Op"Rh(Buf廊 a9Lt #'oN]/B+tRRFLZ}ć̓^2AHtSӥO HgLkC_߆iA9PJ6bzڂJP`;"9Kvb!ɱzg:vGn%!Յi26ntph"$1Зq2SF%T`HkobJq&6;Y7E{66t=OerI2e#=GE^IS"*$ؖ,D֧Gi##dE)FPEM,L:ku>H2Yh~_9y-B 6?^m*, !!6-v2i~ &Lb+,|14τ>tYpg؀aր;E=lF<[`f8).M뼟a ph` 6Xxl>+hEbuiQssȏt^m08Pg0"?| H9vÈLo7ݧKFZC|Te`RN1T4D"Z g5ފA &p vzKCˁ&]7g.dXN5`ʎ8X0^ƼqzIEFN$An1(Ei5Qirz6l*u":Idcz35Xz`'; (>`֊ƢҨ:t+^d'.OO(gC%:5b;(nHشrҫs" ?wCYa56Ǚtp\yk}߾o.׈ (Dzsx,s4k[A&w(s[n@ k<+Ie>6O ݲ(5,R2" ?EQNCY %A1u_#ǽ$snpM/'9~]deAa[%)Hn"$!q2mۘ>KX$7-5+KM QP3 H'MMLx`AJ*75I QW8K}D-|nhcn\BZ|%ܔr6!du/'[|PI"$#DwZ!nBmm %Ru$@1DLE2Mt8:X-[tf2d|w;f$No`Gηc2o:z bRS-ToJQsDJҏlEj[$4,0() k{;ex"Y=tH PLuIfԈ! !Lw+KCJ LoݢL+7RVSbchwFAH~a$X锻vsZUe\qMwXV\@QSZ6PtKr̽ BAQ}m \e§)S;NUsȕH/:k8?>d5jIE>ѭ"8Nߪ6ץ>^uv=H}%),.;44`讛UOEviiOEN_X+1Gg }t]4:|Ų b.䔌B% ck`I'| еPֳAzat=MG5,3-Ζn``_hTs$- s fmetxa W!frVھ&$!k:gðeۆp ;;XRd\;>A d@fAMՙT$EI1Opt)3 ;D~8˥+FfZWL` p!`QG YZ]VS{7HHySsLؾܯ>tc m:G Jg}{COV|Jpb n%s [^Л+?ʑΛ2 `pɇhXp~yi޿ؒܗ̀B#yykT,YeUk `5Gw|d;KhK#(>d5 q\v} ʡFNU5 yHw)0InDUꉩͪlmC]\`-v" } ɶ_0oT* W'bTh'3Or1ߺʇ$" Lv:cҹޝ*X}l'K$dV2bJug$_T iW ++kERfr,(mW:ǰ8G'dOא5R>+DC#Yt6NR4sgԾEK9{9QB IAfAkQ-l 7ՠ_ħR*˃:}H>&}-D[6:׍S}c.AYOmn L"f(f#'+)j)ȨlT\߳S$zgG$p{J*u?0.@)C;sj5aJZhKglre 8`4$|9D. Ӽm|M [sio2Nz¥A> w6:]`$Cr1n䮠H*5j";š{@+>z0g%a> o!'#zCXz~T%_.' G)!&,Q6w7rsQwatX^V&uTH؉2ULػ>75~` (JCjE1_j3^_ l󆾈$; Mi W` @y]qG)O FCdFN$%6xK x{sװT`^Тv(^z8D)V.@;>zR6~"g蹊$bwm7lĿjHϮmu).ըl+œbH߁C.Gڎ[y*gM_ I9:̪kiTV~,w+yp5'F%|' .:MΑd&w9ZTi@0&|T3D:^=8cס2(lj-OOo%ud@d+M+cنAr5H΅;)?W*(uyGiZavv BXtJJd#1 pNCgOΩy߼Nz 'a 'qgl;(2-(;eV@Yq|y#1/0 p 2R'\=HEHQLdNX:*=,Ɗ̩Lm9n,f_FCuc}ŔkxS>;pVpexYr/`(.O%66L^X C960yABF$.vaLhP[b{|>DQ! r%0 Vgn(52+F 8}-;+46ȕ#xk'K(; Q%ʡR$/::_O$u~JV<謻_Lc!̈[66)%b}@OBuKxJ55պsCa?A)AtbMԳc ?SO]9=2EY."oGG?m> j;sXِYb6O@ uۦ^+nKwuNI+g54_l(l^ Ȱ )=jR.4-? w6tgR9V?f6k' hlRԸ Qm,{8fsإ_B^{U\ I-8" |z% @/qO )9BJm\]݃-F 6(Z C ^חǀ牊2Ljg~7|, Bg&!'mvA&>Y[0帍X.Ca'q{4-edϒnF*>׆W= Jtbj7:ɵ_W9f>D][LO hÖ֋TѪ)p=It,<Wm3-ޣ_Us/(]IKy?[n^qF FO vԦB=rh2:Ut%,82bhP3lA9_XV`a*fx)K?o.锲ӫ2 лqn}`&4ʛN#v =!VѽzM5 >7r=ӜszbV{pC( Yu ?櫐:OIc 3 rŒ^1 9˳68Ytd07 RNȎҞ֑j路!QC WLUڋG}qԭ 1؉+WF)#[6_*̨[#^ƙ"_V\ڿxͤqgF$zOszLMAv=ca0b0,`-)#I>B:)츨~S~ҋ =Vʴw|14%I g͋6 'as^ΎCP==WV\F87)RH8=BnK1p< S-A ~z$^7rwW|_~k"% 3pSz&\͒/KſF EEٵ\ pۈn/;eMp,琐W$@,it$+/629[xq;zVԇ#ަDUnXNeoz;c^r-^fvv%QLzOx]6g[3^o:ray2ͽ4%fq Z zJ嫗3blVllķTC:LtQ ʌm25R_ajrN11Mc)f}iMV٧* Y7ɑJqfl Y0|&ׇ p.R7)VGlP7s@-iL􌎓2xyV$)m*O ,L` }X 7w;frByYo핀+t遥:Jx?تZ_`d&c.JJA9Qf+lw8StI_a6b91>KBBjQ,5,UtYZ"5g>7 baccWC}}S G ee!9L jٯ)6 HtpQk yߓ6ӠR_c|Dg8m%˷B>QLk`ɺzEBBȶf60wԘAq52Bx#& _zkO,︛yK<"B[H# L*mLWH8BHm:)U sh194^s)֣mQO԰{N| %2%σI=n/q kv8M$c$`H=VW,Fdʾ 0|dT))eId@N0[ܐdȞ"f8Yk'}&Mr8N>S…NBqe5㩺'!=,[4"HSӄ_0h+HL>kɃHPI^!L|ii=]f㽻4cP+(Cj&]N􂄭XZň=kry>[-Jc9H#iҏRvT'UQ;q/;~XA:!\8hMUO'Jyh2Ʀ `aV ^^s  bZ%!t!\+ JυT!lq`DpvZ(+CRYe/5&J5ٜLá;C]70:?[0BS:R!-"dF+GPS+>oVVI؂L!Z +fsm1Ƣ>EB96je|SQ;rӅ/H="UCeNI!X2@#s'/C/?PQ"8A\뤙Y=>[!EXيMN!epGVb_a:E)v,[#3,?14}oK|Iu#T@D8{̹պJX%Ԇ~(9ňL#pW@~. ~t2VdEh E žPA,smWS0IWRT6>—Q)Qqlp-ukYhAx^%trW=%XظQ/a'}1гh͔5(\9\jSCO3$%&_}95OCTT : ,}URh,vIZ'uFgu~Wu}GF<1AyP""3S^N$|LWM|两txFַD 5<bh" nF I/*k7׎q8].g{6*#NCt+']|ݵ`ڟ$<Km( mk>5\yDS.B!s Z_SԓXeMHze۩/|Nr@@d-~q*qJSY-(Fj>ϻ~c!~QԱgLz TT}rG ;ksEN55"d!?.5 NtF#l0y?M,cúnOYDfW}X;3F(9/DPiar nnag*U݉"Dܠmnˬ&~.d ]VgWXȅJk+[b 81c67iiCHBV~x}yB_, SyU1!s5l&P9muVj$wUN& (#'PJ Enpj_A_x<؍N K =̤I(/zr<=`&EuNn}yM0{/1NJۮV<AF8=E)$cQFE00h Տ,@Ș35Hœ֔>q?lgqٳLoS@{0W"6}U )!S8q%XƎFݶʅ^Vxx-`HqW:@]O^HjV<{+l76iQ0|bLf!ٌHЫ$ğR]:$c^tV3>b-' !Xtkұ! eQ!Ik61#\c!_kZ cXqΞ)? >o_B=6u 1SE9rcET|zHE%`]G=KC5S`_H|!Sə'l%ڑr[q+y!>> 5Lr.aq0|2  o(3]Dx\Mm\(145:P%y#64~6S쑅 /$x;`~Ҟ(\GS'fK؟ W1f@^s܁bZߔu>"`7mMz׭ @R E/R[GL?R "Bw^R6>"xq?2Nryk lTyvVy#hM@5:>Mn J1uY{4GW y Rin&{ߨ'3Kk9I:#jX1CAIos5l +y}ԚpVi%K#A"BRV+3`4:f o`X%F^T2/5 A`܂xw14_wf'zˑt:$CJO7 gFb|S*ieNJJ3[M|-JT6#j> !d[aʲSokUP_z(wg`5:f$?& &2 &@;&!iEܷCcQ5HH1^3)4;cP2:dzZ O3 Gu)ۼ;=hz<ԗR ZFרpJx\ޥ1 l$mP"y7-VL_Tѣg(w'*ZJql`AY/Z6KB$z^JjՐ3гʞDd%L1U!QJ[ w#c0Bī 0f#i+wkcbfRPPDhW,"Ylj;ԑ[^^SsRFXlki"5(x=4 T' t- '3Ʒv˵@Q3b%-K_nQKQ qthGbN]yɖ]`QʹsƧ8uhZli2I@oL`lnF<`!S%\ur&u=U70O,d]f'GŚ%(\h=Jg%ȳ45h / :rNdžT/S up|B[J&F.(_%{>[tqtjdž-}R@LMŻDzNqc11YfrF+ r6תn|%koh[yY#{bҋ"@ 0trA>.XXqJOT^Y3|3 п#j_ |L'hlL끘 8#Ig%SbVT3 ^ Y^e R{a{?̀)A 8x*\T`yB>[Y_G ؍ T~7-RhZ(7z깢薴Ȣ"iz8U?#+ES'"ҙd (ͮmġ&RvW[PPUwz[N^ojx2~uӹ0ߦPǹ=Opc%깊SCeZDAHy}n(!XiU$) xA,L,jQRFdS6^{"oeYiq"w w̏BuUR7A$L%N r)znzhc|?Zº@2{c^M֤_y(U^(ENZ+ۄ}KF7zo;{"_L B'!SvȇW#cԽg})G:ecy:Ǹ ; j;ݣ,_+pcȝ5gꀗDϩd^y]wY|!pw7fO#!؃}iO2|%aPh.|e I3y&*v?0 \"@4I  ,(p`kr @Ӿ{'fd}p[r^!DMEM-BreOT4ޝG'Inu&՞Z B%Q\$"l~AX7nV?PASgXS3c>jVz[ uvFR&.ԈvJ\*1 [T/}bG/"1uvjT":ŭ_؛dqA:ΡW -W~;)ǿ14 BEN]o.llyC^O(|U$8(09\>GuCH>4|^vh%-1TQCy]:ݑ/t#lIQX]Sn7$rLcl= xW]S-/5[#_X\_9;n4&>i9RLȖFSwH@즖6 IZuw{RZHfXYc뇸\:P/'ʉ;fxA=8|Ul9߽\EћhF!6C/s!oAˏH[#bԌGr* g*b[7@͓ACĦSc CqJtvGށFE`&g؉6NSx+hZ~n 6'0C[#*=M,HEn a\yFsSwS*ftO+QƊKxaG[Ift0lފ`95R]OC:f$IE,TĐe]UOOoj̍E KigLx}.II؅\ZIRe`E' f95o.[K^>9%@RÂfjE xbp-AMj*([ {nBbdk+w k ^y*Ưm)b Lsq߻Q~\)EHXvTsf3*y2qWkp,,oy ߯&T`, V!a<%QX/'I2E,7>˴&Ko^Eyb¡.fdjg2Nw]QyG1soddh| 5V+j&~wc[rav >,jYt|Qm;\t[5GN荼g&m~T)"6"ݺU1Ye reHWCX?*>C)LBBl,jzU:bX1 Eg좌l-9{Rv qv-Jd_Vȥt:<($ T5 !&ցY$;'x/- =h{B5]Ű9vE>E57=Ϲf߻0\QXMSl\}΄KH|W@vvUZm&Tk88C6 ?U BJ2Sڍ!k*_3w0)X?p&rVQ3Uϥ%$ҍ|YHI,XR{qKx(|, ^ȲPj=r4%F<r"䴍 ]Rk'xn4g!ۼΦUH4bQ|‡5hH=>$׺#'U`_~eQ~mf9RrZH'~ЖQ˹,t.v)n $.}f!ǟ|ٻɜ=ơ,R O4kӞٮ[inKاwlnJcM`M~Y @І4NGs)tbU1?NOyЬo{e\7(Oӕh"~b W-nYѮiʦ8`l,SZ7U|24)Y`pRE!rGwN޶_@LtITᲔK$|/=Rg6 xYb <Re>Ԅ!XSh~_ `o>3a#ynB6,9PI/}d5ڞ~]RG p_1T#kUKʻŧ68UJ@̊* 0Ss)ٳ%&DO'rN텔B F`UGI sah@5M%Y@E|Ll\vٳpPLQK<è\lbKY%5ج |:P=EJՊIwJ{s# +>z[@ov7Y䝝lu<ܨe܂(2ic|F~nD. p@`R ri1D Es$&&|J6%4?b CKIfȊ }Ɩ"$Fi/(SNq%KeܳI^z,QjW!~KnU`]O*Y˭Z]CGN̈">MQ@:dnn2 4kɈ@#KP`\ uY.NpO@gJ|ųdk5 m-W]usGhwrP(Tk[< |,Hе H1袷8û)t޸mx_%JqM=YKr}&Ng߲D`&TLg; ?=P- ">|1&[jgH]Vjmu"}cTC>l:.T%""˹jԉp<* uCYq*f֛",8/wLC)3v>/vyx {ɌT/RwVtlqrxŕѲϢuʇ< 9h"2o/_l&ǝM!W{.)1.r[t4,_O`t OoL$8M_Xg6w잯fƚJ>C@(.5T ![,Clgiؘf {Yǫw= zD}ˡ{$q+ *\쩦1rJG~@n\o ߓgt\[r,V|/FD8/EDZ \ECWBrQešC ,KUSN<,fU2Oǐ}\2%0@S Y[ߛQd<8T죱BMA%eBB9XdaA1OA6hTXVji;Y[]q$:¸my3Y&"?ܔ˜ &N7s]} wP"l^6 NE!W4ˏŞZ#~71YӍyX^Ԟ>ɢBæ5 _ DT9k8nYлʟp+/GP5L(i\H$EC+=IP%uF)Ib,]LZ#"ey!<^lUcTqgһ讐 Mu P/?O#bk̟ۊ\v6zI6%V2rڱČ6)M)|B*H2{?Z&>~*_xl玃9$jE$epT !"m\M=xtA2Y%}e3/<琁 OF?7$TNdrǛn e̊Ýsm?,"$x Em2qDLAx&F/3 S+ᏋD҂.r cB nJ槛iVpsUg$OO:GsU9K +#QOkjںB  "8V&-ݛ{j?)HF|7 UuU߯@WVIq$PUp(Ce]#w|3Tޏ܌p'NSOeΣU]/*f;.o!wbz\o:l8"a6T)s6&ڰ<e~EIC,Ae^ ~G$AYq)4XlxT*~&EMkX,v [ IZ cY T5aǵ O-g8b ɹ/zu'~}6zZfMK댜HAҲj%ȕ~ z[DvpA=򒧋$P?#񄬧HK$El7)h#+Y<wПL&z n 1a.ƻ8>销(J)~Hܮ/׌T+J9O;7q<`è;6]bl5/go|;މ[]*vP&o@(Qr1 mJՃU>&!W#, h?!kn_%yV" [Ztd ^ǒrxg$ <-E^$B릊31GGNs<wS͇Udgf3vio| nBCmiw7菇A|KT:W7ٹˣYz؟e0$[#Itctt}5o%9vv vCA=;tV6P眯n!J?&I=%_-# $zٞk0v1 h!<^S\JL9j/:kKe(UF]h%Ls2 o\g&A27u8dKZ׀3.qOdv`G^C1q|>=d&9(3gV.]_Vr;@=lX8oT^~yɀhtaE?"_|uo326:?֏0j[JH,g 0WTiTʛbP] Z[p@,p@ޙzMN:ԕ,m u/'=-;Sz9ž!t]+I9&7=Ϗ.I-d9͚>"ܐhmgdҎ,{@<[M)gLV mWbXpeKTpVRZHvO[t e:?~^Lys=ZNбWo @im\/y^ZzMw_=s^@jKtbD-Hz9 -ǴrnKq:Fh4ͯѽ8Z@a:M z86.&E8x8=U(ȏa+ER.iօ*6ӎVrzjֲV. ~uD,9JZZ\NG1OW3[ YZbf&(sua33V#85̃?XN\v%iTZ ?OMAW_$2XLM7ٮ/O[Ub=g<:&|΍hWºPů$l3V憓JltKfneGw5ӁxvrGeڈ#T^#*Ѕb!7ۅQծ12%&'|R+jj$|] 5ptzu` &mP8 e:V#8v=ݝAwU<>Xb1mQ!Y=\^9R |̍Wog=xpGo8zDrL&*Sp7&P_Jpu#kJ\ A$i}) j%8Ӏ *"!:=?bAaWԥ7_ Z %| sv@}7ʫ|zETi)k(&{2*Qݍ6Ƴe]qY-%DBl0]oSзC Nt47صs>b O&ߛenvW#oCz2Ԅ+.0rԔUy5iVNT}u󊚛IWz@D5zk%pZK%ۡT8D Uc")HI$KoeYL.wʭ[T[ 5=7%2[iGuG%|&Syaw\\˹ pa[|+(~p̪qH(YAX?ӷяӤtRGs(`I'[8Y) ?!cr4 r#D]x`k9uP6Uf(C\e}L#ֽ̦3gCqneS-L3;g|C=Sk}&$Ÿ6x :[3 cf PUOD)KY C-HX{lA8u=K7$1us~T*/&([QUDəYQ/>6ӥ̣_ eaeF|GCϨEޝi:}TJz3mS@;W]i-p80 \Jܾ9ۛe$|).²&mOZJ)B3awx0rNL$7ߊWJ˯c%'j]g::m*3l٘ [VS6+w,Ua>3(B>Iޥf\ -f~N|޻1¢U ;CbwnB;[˔4!'(q5 :j\lp+:.\`U@S)p$_0OfzD6" ``B[_ew܃B2uo8LCq.dw?_U%)#hw\E!mȡEY *|bG&V}H64&AS_^ s O>;c_W"Z[>MąZ$$wx*ڍ\ok:َ 7 i͍1h\,^k8<2x^;d=K=$P.oסc(囒iVQws2ϑcXs6ΠV6GKCk +mI@A2΁kQ!oCy.`f>, Wa3_yY XD%(i)~\˷o:a:k0gB}"-B{pXH&| pm6l։JH}>vGJOpmHS+Vj;^`H62&kz?-Mց Yzj|qSi}uD~?{%vD]v*1*Ey"#M%]Nۚ@ƫUR gJEiӂ+j]iPӫH1lظq_ qteɀ g]0MUEBy! rQ!(C&O@pzVԬDe&Hrù |Tu\ͼʬоe*x^$8YA&=Nͱu4V*`ϾivOky~-nK%M/cB㿊 Hbᨅp1:$VbAvQk0&LE ;<QN%]G 4gŗ$ M1:'+}~gaEaUo#@w H/ ՍZFc!zJ 7~! Ga@+a9JDt-im$B&(j:w;.;LmdyZ3pC섃,Q(PLAFg7R}}6e?? 3F[>1"-*yS1^f[AHhx)쮭;&bAp%ē.])DDٱoI* @~vpQAN8*bo(_#SpdmGbp`O-:Y/'[nil"uQHGܑN85zxwH'Dꡤkt7H#7%Cz;[+ۢ<օ"iN=| w'S$=|-{nsS8UΡ.q4$.5F`WoriMdOSX @eٗ"xfAQ^ha ^GAF[f]HB{pc^/AFN$p+²Ib3HE^ԅtkRݛɇػqvKvCpZ B,")=xfbl;h+;=$}감Bpi#>TzxxsAQB==rf #.7>դJgs{`Iݼ*+:rZ wRe&3Sz8t'jmر&Ójy>04`|Q~aвk8^ąadΒڜ/mkN; _nH5]YH*eX\L;ahMv@+9 m;qn[HaU.^Bl֣!+}Wb-n2 bfeN\lTOA6K]%JnC|';?θA "%kYMdUL g3O!SjZ9{I͉!$a-< ؼb6IvP܉Mcj~14յ7>FԾhfJ(`ՋDL p!|3czA}I q`譔T3? ~ŧ,}u Hd 4d'+ XKC=,d@EzΥoQ䆘th.ɷ$%eC+]dt #V?TbUQ=d9dKAݥGKL ݎQokSk>GLӺ/Vjr|1E'fFߒ$Uj3TrxrHƒ=g3_ɔ;?%!n`Ի%;oڋJx籈9LR&Ww4F 5G/>Aj $M &1t@ô^w\4X&~= +=1lV( VSb1*` T^zu!9 GU’#e9 Ȗ^qfTv򢃺Kx(V%ZR :ZP d[}} PsyUQh_Z&qDϨe d@D)e ӊ:e3꡾'-)K]Yp)[~{>kΐ/g4Ƨ:99WEA>0I n Cuum6YK4qF(Yyv6=U$\U ,j,Q[#RKrhl.Tb'I lK_vhUtYlIGo,!bި l'){7ܴ=&o'BBֵ\+% ~lR%Ƭ:[}bAsϲ'G+I{]2̑Q 0D I*Ngqf(t9zhlCqɔʿo m;%Rcr*HC u&,$-C|ӡ7iYlX ^vcxQPso7jjlݡ  +B{>| BS2}^hP]rx\`p#}J%U8$;2-ÂŐNOo/ õzI eȒxK\_%>;oy Gsw{Xj;8cncg-K_^|T*jTWcݑ3sضoՐ;@ȠGߔqՙ?Fica?-#*ANK|F}:CoXEi(yEE=u Xu,`qV5ilπ. o~קRc]e 8%1]:.ŷz0(-~L2))ܝCm> -੡S +EQ#&kgS]Y3* Wjb(KGA;ΐX]*@E 9+ɥlEBlv&f]tios#X({ 4DI6LC J])bqC,ĺ.J_bT^<|DdiX9"+pʅb2muK^c]YB T yifH%8b+tғwK+!a7\^p]'dp\ ޱ-qONz>p'=hiYFzE 3wZ =QMFLS+%o|Û[ ̰s/Fl&C$0`38K6 AsEOBnsن  cVjtl- ÁK-LfOVGv&&+Ķ3JUx_TqE+NB'#?ˠtJ_x_aC l#quqgۯ̌UtMԉ ́Nc#`tx'GsKm dd75C"ad̵%o0fØlUAמ#[[X+Ƚφfq.5i%&g*0ͱ7D$2\O@ZV.sVC5 ܀Y3u9XbE\d=B qgv[w_U/5(k igCssQtc莲&~Ww$oe@JR(2sMj>(G(>R'V-FzAtƙM&7w͐pmLap+N&G" UķEu{59*ԓ$3kz$4$9. H%9'o|:)S~TXV jCB R^61bɖ/s?,A;LM\Q HlĀ`9m{B `]K)mrHK*!+u|بj ^ZQGQ.jnM߀HB\pGg =zR#NҒ?r 8y*k *MYt a&3"!+xlMPړ:3R2wK@(% Mb! PtIzUIdh;3Gců0|.  0IJ2t2oØ5;zC!Ab{C X!낵LmnW& hE9@@܆JCcz`{Az,{)EOJq9cB]FalLѲ&"HGGdҗCF;~Yh*,/Yጞuˠǻ`s]oń8e6W$~P0Y9|UmUJ"0XM=RR~6&B#2gG :U{+ڽQ~^.Nk0xCGrUZPjػR1~5;N=dT8#db_[ @wH"O>|v9a e`|ژ *DUY6K#6.}hVO\W,e1SS=VIs決TDz?@?Uao7@PnwfKh]=HyɇNcե   06ns.L9ǸX(EFra|x]6Vα8RG_c(2r*m*8s%]dԵ!Vz+y|klǴӟм%TK]ۛ%{B%r5!aBHBXDSKL)F@pd=ݝ7 B7KGz'p%]Pܶ6y9=\1Fhު<Î˳ .:/n ft?XWӎ,-a\w%<ؙU^[af #B/L~!x_0rva߿1Mv#98QA's~@WTg_Gf@\Aόpte1[OGq/}F` Z*<ɾqA'Vnu~ws&I/ec*@]|5F؞,%8_v7J[$ b)h+Cy>Wn6: 1c#,>gߚCtॲ<dJ;7ˏDbz,"7vA1Fw >Wk]ժqitv]MO_Ъ\G,%4_g-n"g6O&JĿ2qulA{3s}~,ͩJoys{ríEr`ٰ4ɰ *Ɇ) >=;;T-<^p].HS.nj]N3-b7A}m bI qUV`1QQ6AE(/@oС!q"]\h\ZB\3L ȡSb P$k>Rv5K;w!Ni^T; : ݖfPlHh:;SoBpFDE\eJ̥"^y8\l2n!V<갌=CQ1f?:s, &nDp׭ڝbZF~ϻʑ E0UW<*fD};U oBYWKdhym@-[d&9 %3> 25r_M$ G/ɕٿ}ϖ;[؊8>]B\lˤ#JM3 aA !Цۮ66-1j얄~tzS!F|C7zݹPdg^}Tv]Ty7ڭ]kPw:69 #*(ǷD̮9MBecB2h {0r]:y s:td ӨGvǂ$Tv;NKº=axLΚ?ghξ0QW-OԸ.*_9&nt'Ͳ3PV7dyWO4?nmnkMyY~h.Pn9%1 /adX$eG XgcW@RpɆYKj^"!C.}o%T Bavm+6:vv8t.>;'*m#-K֡FsϜFE?S` 'o[ MtT}vzœA#)7N jV{V Zb06@3uJ 2PrؗۚF=bx9Fn5L2iSm|u r h,6n[CU88+^tPvG9_!$:j?;шࢽ]zQϙ:@.͏UƮȩbVR0}g3e;d{ݹO[Az[PWzp%sc쬷mK"=]zEZy!:{6gH. J:BDl&_Q4^C& wO\" 5&bQcxv /a>STׯouE{4Embvwz r~ȱR*Rs6 ^N~9V< 'a1 80߭j_{xX {TsØI&֧hUdlP*F)=U@pxp0C#v ,#8#@ݙٵ?{i֎ҩow<'/N22~.NXL:_XZG 濿&5*T:<\ Cd// ΓVRn1Kkd x?)B\ *, p/'v3 c`H/Qx^jcF qqwP*`ʔwݝ7W OxyBy!<XGgg`sT uڬ#PAlP#mN@]X`![Iُ_ IDu>҆Gܮz6Q໓3y,$Ԫ+y6?m*+T_$n5kOޓ~t+\)c*,#ۂ v"1xb'G _Uu$/ $gTAߴҡvDNCF) 2NZM9g"uXg C䝍&|VFΝQ|sIdB#^Pք^ba`t alRT<"md-un{6;*4 A@i B/B 1٥Tʑxݪ=dx桥^$f|-ă{ cA`pA #m[q(CS`{| #Vn)z'W;FτJns\evQjk9w/DpSM![jTK6-2 qx7*P?0yQ|uR 8>X_⼥JLyz8"o9o(L[B]u&д "sݳclV[ׁӑerG;h磊2Bb:Qk "*`d50$w-p`NN,YO@v*Og3LմR W}3|vc9cQ$\>y2 ex(Nh/nt4Fٱ/kq7iaq?tU_Ieh_VHX7ZODkYuum m+/k.B_мb<@8Y׀p AVwW!,~`,Z 慼8Er'䨢y8A|H-jcV) Qչj$TSs=3T=M:Y^j 0=nj79Ӻ0r`X Od›r5.qH uC{XH oָiJIaJ|^;Um樊*膸^VZʻk^Jfx qtyq^cΎ5E`$3Wel)4>E>e41 "M3ҀA.^h߃4@E-%< c=YJxÛt0 gki~$6NSf6:r3nٱ߻khjL'Q *X˘IhKwC y :.7P-D]M`<[gX(EAh/B;R-ևn`Vѻ,=]ll|CY%,q*}M٧DRos; 1R3vl Th*kWפdGa4v*.n32&c RMdnl^qv=UxXimiGʂ&"zDM^)Ӽٔi7?LP9EyR*p7T_q×zZzJA&K+54۳`oT!*V}H0S6mwA!̼4Zҫ 4֛WY*d٦%:A3tK톖K7MZ.)9C.KV!!)B/ՃHU1& N>Z_֓oLK<ݩRlB* Մ[0݇lǧV!|vĴJD9\d9WGtWS xLj>rD/]őҒ(NQ#i/U$D"qg%6\݄x!a`iPkA/'BCVnscaB~rʸ`Ji }9Gf[v(b> ZO9->n1ܟG)HL/`Tgr#i.V]*$B1[b.86E5{Km^WydE,^*V`m.(pTxvqp/Xˆ: ݵLRcziI s` ֚OU| [׏m%s"7$mn&Ÿ́ab0::[Cw 3WJB7; 0_Q=N:#s$Xke _#mkא8|9d.$p:!e] 51y͠1fOE tvKb}] 0q=`lHqhV5^6Jj>EҒp1=(xIW%xlJQzW^bYiNƬx ařSE{RVےv4m0e`У, :'wO!>3Lf1%qX'KQγ^/.d8{=2#Kza7w\=6L)⚺3T&)=gXMvWtokTOTxR1l_idЁ".Y9z}0CoC }̄G$ U$͍k8]1Pњcw;6BhpXܩ)ِ|_CaEdf玛_է:Ϲ_o՘|U3.5.( g?0X[m2 (:Lj~Ӳ"v,+7Wz +r( 㫓󌧙1o/pAt @?F>`}T=+&Sq#,MX$2mK`+BD @[jG_p?o+ vgPfC6 vu|m +Dmp$ I=+.r ',yXlQ8g -gQfV9ieo8X!<8WY(UhN?Z#+m~Щ=(0ʐнM榺GOۯl(:PF+=x7plh|]{h<*"#BSB$[C_N%P^/F&_lb5xGB.%qk6DyNx>dPY[l8K%K%C;DΈޝmG'4tc\VhV 5vk\>NiSq):ϱ NHM࿰<`gpþӧWqE$ H3IW!x~&nhs\d\ VaMTr1V^6b7e9ڨ_aU L,z=j,=+m"oz#A2iڔT̟:KmzTj_82fu[qY8x[rYbǠ);mH\Ց݀DļkFs|i+;BNg$t;m&Xdy"BX1I^\i TF.raћnto]<*^$U/K^H_-[uXdǠ_ҲZQcj[' Oua79ˊhޔ% Nn˗Dɓ'MF~50=ǵ(Mqʳ#39Bu_';PN ` ׃O;ŹF)QHEtԫC nfewqEv* u'^h*Fa-et Z A φTWtrEa/4c0D;>P3Z q3, PAO-Nu,*Sb(P>}ݠvsOc9V=-Llh;W Wvd^EXQ]W֤~xڙ{:;:<ӹ Q]AV@;;^EV?kn*Ԩ^y EL$-[(F:{ β#$NyHׇ 4<0E%?ĕ4W Io4+{%%"*6&K!<.+ϸ0ƛC 8Xw-O^op%mU/ly{f㱻$6\9. x9]j-,+@qҾHAl:UlZnW?x%|ΐ0cy3磊\ 7v+*e LmyǾDJ^>JDb k5"C׹kZ$Ϫ,7iA y0<şs.ҞF z˙2 r}+­AF&,Sy4<7^Q!ʀdgwG1lߙ+.|L azE>yܽ{3v/0K^ ]EyC?Qf1[|~Q_qr7l*=GϪ1("1,>ROϡl( E#zr 7)-c)]r/aVWM[/uTvp!B6=MvQD᯾Z.'gTmD |kF~XBՅZxsVrpBu 6iOĄ8ˊt?X%\ 3@>zd2kZhw0UqeR]+ 3ֿjźRn~tD7F5=$3-5ʅ;5XQm{t^7 0=M .TM_#pQs[QxWt\Y/LnN@(p_̿i:mGg>_n@~vjԊ/ᷰ9_W/\Ct;iH)YB'Mxq6 U&9|b S?瞻 [ L8cS2IX@slWt&h#p>ujQg$u-d,o#k;CFg|/bD'1+f9|r>gmmo[u Tqg#Qj4GAS&;O3xi|g z[@/Ol Xl"H9}?7TI)VL __q|1}aIWm!_S%E%rE\sA֥7W.!AGȓ82 gX=0~Dv3@ z+g\H}n(C,]UM#aJ S1sC*DK3h0* Gǎ`uvH+m2mg밈GP)VN:+E"/du~e""Ʋ>]ӶAOQ$p{)Au6fFbwfiisg#'U*x4˭Mo 8 oE"A4#qh=$0ܾ8$GPzbc2$4f~V}5g*h~@͜M^%[5Nٟ@VvBMac:qba1c%׽,M-]m%N@uCآGCy?~x |ySퟶKQ.TbgɻI$Ik;hPyCz$K:@%X%/h Hu\VqXE]R mMsJ3co3?o2eM$J2 i3CT7%4`ojy;d[gM`vɛCz 15 =Y5 B7}hu9*)W>@XcM˸%O$c"995|\QZq01*>d A~- ifnjc\t>g;ZvX;H" G{fglڛLFѨY_<#ɴjNZ#lK,Bzѹ`盜[{Б2mU54Ώ94F }}aS=?bRh u&v%H 2rtUy3o}՛.,{jEq^56+\UR~\S' tg($O,?0'ns60qkzIi?P}n{%mp58"MuCԶ6U6&\r*@w3[Azn΀l%%w%^>Z5X'D2) n1М=Y][͚u6.7 [\xKѣ=C s۩ a?kid}ѳs N[˰иGhYa^vkMޛ[ὃyOuٞؗaaDpSn.jӖk 6w>*okCyٕP)^4.m|&Q4(X#]CId\Fׅ _$ic 2uhdh_v̝5Q"\G@ ?$+x;Ni 㝿w2]j\nxK5M 0Z3?NXy.5)Ɔ [ʼ v mRZ OzjD$8^#rF 96C˽b",RL3 |Jp;g$6dCh\m]:1] E8SZu(H!Tcb%Q-YQq5%S0l ћүHR3$WNaCH"1yYAgIRC1L]_A6ݝcPi;[*TC`ř>|xs@vp5UbU=`lR$l1-UzT TTtQ{%&]$瀥+d>&k\XH$o/2wK ~Dzof> = { k$| מ F+SH_ 1sohт1M[,IP-Q=~S*k_91zߢFhFk׊O~zKB!1ϳ[8cHÙ?Zd;xuT G^.@QO7r*mh*ʭALU1CueA(G-%vWRIIeZ"Ht/0wa@< 2-~:7D#vymO4}IZHe1)(8\g-|~ fB0_n~\1r5yNcUI;ݕϼ><Ԏ*IoxPXG!YM'iNH/@#(W r 1/EyFU%,`b1W6StEzmU,gb3?qJqw\u??ڐ!Ctq'Dn'b@'wK,(>lA1!~&2NJqS _,RWP.QzZ=dڬ>KF9% %-N| PsJ!5`qTEU<)5u2oݝ z^-Q ,vwq21̸-gfv_8F-%ZXV>x+#lUegTbjnݗ>b V#3c@a^yMa4ߴFʘFfkf'Y G+?i(!{2Gw9[|wN4SɰP.\# "j2wPIҎ<{zIr)utm90_zS*;L0I9tTpo<=+XT)"Vv4_$uro !,i%-o6Npl%!SN&xjҠ~[:] sA'گZn]V@Mw IxZ93d43 FNZGZxHKzLKOar>yT8fĂE/mSlˋK JY"TA4,-6/;d`TŶ@&x~>y,9Y .amCԴ% ~=PGt,GR-ghҦf=vu66WS_4.^S$:cV6XjiG~G o0ݹ=B,F~S˥cnn [cJIiҸROK{ JY_aXT5/'U `nCXp i*.^h(R2°F)s-sԔ@6[oK۽ aZǁN"}iszu<1si2njha \QFWv(c4rw, t;%G[vQ Юςd]ka ;GlYOJnC W-Yg9d  W P 1*Ԧ/ν; h/VBߜРBeGZygO|9M] 6BZȤ|mu|7+|JÄj .j7ubI^̝XS/PC'L4S*؝/mz/x&zzٯzN^fzB kpdȄ3ɚa^I<-Z)1fxy ࿽g-A5 Xa)Iؼ{d-W"ޑKn{dtik"7@vEkm y <Һd{'X_Z`]?.}sfX:L7n%6:gRED{Fd( ~0G ǽ`'?j9}-H=ts_I9sj{߮ "uS>uVUTǏ5-Y>\p&0XHx]{ΖX oU%Q#+C:F~ :Kb E݁K5Jp"oeٗjG _8뗊?u>- 7RaZm5VyID&J7V~XH/A\#Xƥt:=S tJ PMU  J}yJwׄrFß=ml {ϻ֚QRp'cT4O$%-ǵMQ5$8*⑩.U/4+Enя"FPqu_7Kz){7ocQ|FEzޙ"F&Y%F3f_=7l#l҅QX MȮᨤ'n &[ŰW" ֒\‘ e .\G+ă̳xH$#;Nc ORbpRǯE06F67q;~#"襮Naqd _e7R5m:V 'qG;|f v`(D98<,Eg¹X7Tdn%q.GKKU^!8t1Podxl p''3.jQ nqCBNBQ~&0vC<86YoÝFqH4~GդF_W>uwe筑P3gE"X@6J!qk]F!LKMRy6?3UHX r#YPYː\k`U)M2nc,fI50Rw> -I&Q8{[+܌\8x_Y)N:'ٸyXRr].(JRS0e%i@fOv#厼LgC==5Ј4Cè)j0>::F2@jMW$'6k_37A.L6=-~3jCpt{!m~=.vRV!bb!)*%yRXHTRX"$c`m00|6W*ؿO-S2M[.ei8IGqʮ|T Ξ{Cت}3]{mXvS!aT1[w0)# x`=R-l ˡb oMɐ['#!al9R~r,]B? |bʙeNjbMNJωPP껰̼OQz\WE9zc|xU WvW&!,;ݤ1R|VA]hU%r۬}dEz&,w3 $3F!wE(e u»ⷖpĶ-l@<. [:uaMXHGŮ!iV Ia{ [Tߗ/ScK}Tk2ȣ04W&_T*0yx/4^-Hd0Yj0{:J[^ q@OwQO7nIy;bsI4Η i`)~n g=;ͻz(E! )@dR _hb֩ΒkS;G&]V﵂r1ķI %8v?h*L7vagEHw։m[n.tЯ as9C4@_\OJh*:+*-h`^llzRxrɬ=vk*!%ilGXIqD\gӮ)9_~W0;?ȊY]6@bfC0]=D(m^-Х+ kC7NӁe~z3ަE "0G,&>0AgqDØ7[*Fa$dI}DqU {  np~q٪1; {*b 2֘cvUˀq40h}3{d[sbwu(z\Ǝ 䮑Sԅs媭:EM΄".Mvl:E #{໚gvW_\\T-2W.kF*\jf?>XFeQ)f =W>A2p5 Q@Rxp+&w.I |H _OIAԑzfCC{q鹙L%8qUmf`)ٮe>v F6~\ެ9fEbii_B3KҦ|uP!Q9SaC"4UtOL288|zÕ~x?Wb/ A>B_^?*AYXiyL.Lq5j] ]B0w7ɾh5d;Pmz'w90a($!F>k%"1][Re{9==J2`BüaPMN[y#`*S$!&Z͏_=K8kRiFj)Y$TflfK?<_@:6y?P]vRc+UM, 0.ʼ9*e7SR>sZmiUt {y7x?XPo3@?{Əp~yLٔ.V3(_Rh+[A #aDDg[KjH`LIR)kCxJ-9r_bz5cC1vX$Ǟz 1`G"gB+Y^Hgd xnǛbpO.F1j޴.l:x"3 DuHf:5-=/Dn{Skg(qdޮ۟s ۆ aD MUv+?&2)x? /k頼M=C ?D1 s{M%BKNO: ]@2nrJs<‰Y[_ҨJjn0)>/W3Zyt!5< D(ۭo3Z\v^b_V }c wfGtW^諢f$0:)v'HKJCp݋?ug{5OLn }ϗqnu׈E Bujrqq^̂3Ag~4C /bS A~(mîԡ|$ cE2dYQЏ#j7穭[yD7aeFDڶ,K0 ,[!1ol^?/2P^xn*JuދFHmK l;- [6B' ڸ?(gkX!u+H^pˎx-d ,ЌB) 9H2_3~<\.^r&tTWiM/Cn&b[&-Yv<|vk>弌w0ND WMVtHb*L[ jH>NQsn='<!T|cه,VMb+u*vj8z I>jK}?1)@R'Afl_Um>I`t9r*AZ9e)# /yn+vQs_&IfK,ڤͨìZ$a /# R,TvBPc3s6]DϮݟ=8(evz.NڷV(yY%; XĹnf "`lXk|)6"pxmK}.L~(BsL@6iofSRh_ND;EUs>U6<]wmDD#?P@fЧ{]~:"'vBOFieVN.3UR au~D+mx+M0:0u'CdhFY3C-A򰬄l͜(a:5/r9/M>9B9CR2oBL_I_zvg>UhulH' oSن̆E1d"^ubzߔ>B^cbx z>&bBSணi! ޞ)K[Gt '&?qӊ%9 H;!ۈ|NAMX .o,F#s m :=AS|#(]ɣL bt°*]-y`MzttěR&6ǧt2 fdhXf 24>0 ~s~0jz4e,T!Y7h]/u]HH|t< xӸ{6='+%Ua 9pzgwS~DZԛ4k旯g: G"$6N^xapZsE_L!y;K/,bs[:R;wӤI4jG`sOZŊWH\y- Ɏ@T׍nBf,(-m,I0 5ךYR(|T$pHIg4>c-Fmu5 0緷y&8$KD\/'h1܀3h=wWlA`oduD;+nQ+56˜ /1~z[2vxw2Y7:K+ ([X_Hfr~<sTt[9!u*FLSjS ucE=@lDm :q(ʋԧ$'7 QjilKB^5B&P@ܜ=?V -WTk/fbƫzh]:4x1Uך`qW,7e^K JEQ7 MzV;zrX.X}V"]nfk@ qQAv_A3t $lꃠxfȹJ2p\^mAQh9jUPܯ(F_O'(0j)y@Jd溸,oG~,-fo\x&A t Ǐ"eNbSD+!0=4CCp!6`m\*,F3&2qRʒ_"sNjkL.8.Rx}^efOE;D\ye|:F)D>.{o1SRn7YEDdkbo!OD ?d]Ɇ*%#9y{W%YFO%+P(A&MpVO$E?-o/o!;"r qxiwRVd/W;5d6AC\$9uK'b'W[54AqرT@qDɠ2rѕPgc{:„s|#FD* kNRh⶝uYonvTRĞXHK7:32e}W۔\$V %쒴1\N%""DGPtt>%vAPt=ฉ+-f5x.A\Hs0<s&lT+`ݰmHY!s&q"f\UQVy1<8\RZK&mL=D,)UAd)D~MO$ R_DV9vo8՞Tql;Ql)*;Ȁæϑ7Bl+]$1v yűxjխ -6$a9\,ڸyK{*XT9J-B&J#Gפ |nWY oѓ.vmeru+ ֌YDdd\ǂE|<V[sZ码[Jb`eO$M}Bu֖R:Kǿf I[Ey`;P\EeXvfQu6fu =vA\gCK͜>?Դ޼:XGvcz=myeJڇl !p띜:&,E,d{Ol| xKcE>X;dM`Apf6HBeېqX&cv~Gg }͜R9A:(w-[!:[=BƏu[9?2od3ơx&s %^wO/11ATn$w^J*g8J W{ x ;D %[~u}9&Av(6b]t嫍SA@L5+ҩ~l<=Y2GJ O%HwPmVza# oUw=G &HX* Gf$\ >GJm^ nSG:%dIcbPeZ!hkGN p* Zz^=-p@f41J^G!FXBDck" t 4iw%zZ1mVcWϧs(|zOhN4p[߶ !^-AԅN$Fpt/ta G׏_,=Ⱦ% FX=OqTr5㉱xo<t~=A{aWKO4$6x3S80:f5t\ k8%b ;Կߵ`%mһb@+ɖI+\4"aQz!g$pcAZ;չmm5"{j%}floK1A$: BN[mdfbIOxj? v^U>t̍xq'phDžާA r)wjS ;uKvژOݞzXn! SwVǟP'1 |x{ 脺SSQWQ)ɛl}dzL<#}s]|I3̆n6b4P;8D-$ GP/c4 6Y;#`Ȗ+ <: 7;xO7dmRSp|TAРr l?&Xf-1 Lͨ=PkvGwBi- drOQSҠ@lpyKJc*+ŃX`9?^ӕЂJ-Jh2tNmAS('g63I?y#}a&N?3Pؤ<.[on\(l|c]'4}aPdKyILEtn 04l[B䓵e ,VX*.@ KisAp[ ɓxHW^9l%zkH:GܕUV<1Ѻms1Gӣ~k/'p-I8ބcQmG=FS'K4])ĺjϩqP]9$=֨P]L!EwL8bQp+ "wEĵ0VI5*/ci^ ø1y<>ЇEq?ސ-Oۧh"!)턫C,t)NHLGNbSy3RVc6L>Y&ԪS8*(,]jh0RŎr^Ml|ن $EfҠy|.;;JHA]Nf7hcc[-o/\B4]ߗCcij?.DbV+T{vM<#Ct3I} 뇬CWQMtd{|@;)G߱S]*$jQꨘ?X LΔ#Gu/'f<S,î9sVPj[*$%C(8-v^Uq`,ٛ8NZH:/"y$"#}/Ξ?)9Um~UytE2L'Ɇ7.Bd%0&% e}\,qag4{ fT"܀$wY} j5i@rP7p~~0Aw:a}[J4䐸D^.B΁K= &,Lo j ep,h[xmqD"tɊn.2B*$6xOwANw2B8q/e$m^ Lf3:۪ nϚ*XNz奱'}AEa)뗂%[rH"FHsu^7Jng:yo~|ՕY~{KeGnh8^ VJ9GFЏ3YAuZ۫ 1T'!ZCri哤W6:m(hɿFU۱(]0sBK]S!8nFWE[:޻59ɼd&$‰ {I#>jʆȠGXϓ#%J i_N,bשV1N^/ WW=`tbe`)w{&͝Bϩb;"&Ko,i$~zj)pr d@faΆo%1Pl3֞ܲ,'ǰQ㲃-h^RuCxoY!"ߚc({5dn}i5w%`6Es1ukL- J=HqIX}R0NX(CktM$f1Ug^oоEԲ#Gsno;wK3"Q@RrB@;±q9uxPV'K0[wǞmc$f-cRnF|Z⪠Ky|ɏ!1O6rvD5BOG8YSco*_ES6Jm}24[MKBۖ Nܸ At胙\?dvukmwn\\*ORdp"PJhIa:KLC~\mY} ~|o0s%m3j*H-_Zun5]:"eLV[&yc(`\U8zA`,}ܽD7><5t5'wg0ēZLF4J e{kj9swQ,ቊ'6˨%dYكfݧ^2A]Oiu:O=gkW ,$g"䚎?ŷ^^IW9p3Gz>v^)%:%jOe4t{M__ȳ ;:=ߡ2;c*uXpΚ2̰>D\o ᶝ?0IL5c% kd l3JL7zҵ M+XMzKr  RĶ/ A g3΅IG^AM;.$;H $C.ع&Opa(vџֿVClm.2ICwbZ 7+0cCA?Yꌒݗ7+d sR̶|!l <\58;bǟ]lss>a"v5gc왙-_0Efp{+yz! [~6/_FOCd}skz٥$PЌe [:k*l|F8ύ"QH sayUA$[Ȑn3D$> -Ě[7NFEM&yF3c Mza~ 4rlEopE67񐵊uINj)eQgZ"KH)AڍEKtg)WV rse5i0'7SE䘻͗҇?UO9tt+*djDP~!4ABqW}ԗ1=/])(F*& Qͳfqt? dl/a5/p u.k֐D"2; jSئzeYp E9 E_GRA )0CMx؀VypV7ەaқ 4mHӟd=EKMj -B:.j)6_ 4Hs$ˣM 2!h `[}tt3 J#!"zltr{[Gۇ ,=H7_.*:rk;Ob05>Ĩכa$ÁJH~UUt٢㆕= Bɹ[r$;)"$ʼi'? 1]U`=g.l{G7.k``ebgZl!>z"a*nTKϪ(RT՗t w 5YD#}jD,LS5o8Yl %\|^{66@*_U9ypC7/a&E챚S2ۭcA^o pCWu$qnƒ9!# r*bAےAo^j>T{(@ϯi L[].{ |5:Qp"MGy}8'rɘqsl}!m#nhNIpoW&Sv<إ!l2j)rO^6ˊgv%ƖGXOwpHuz6!ی'/_v2 oKh"72Cj{0]Z\]IL#$ΰ6υ s1?\d";'ﹽ\hs- }8 h<ZE K ZgUY8cD+Ukb/ă`n~5c~7;`&\ЧT_x_|+?;NVU.ه6 ޟrO\4;\=}`E{óF(#*KhGj;X%(jnɔrE:\x)3 70F)ˮF(\vo:9s,#j֧eC3zHKa(>5LD$TU” @bƂ6pN&=(DF,|`A|% so1 Q8sS *&c" 2o^'txJ4Bd>#v[遤40x /t\`x3jѫ7 , T/z E'lުS!rUs~ ehi|=oaD JvEHGQI#I W{'ĮshOYO4zY.V.W烸=>{_}ĤsNp C/~OwQk٪ Qt@[Bԯ3סHH*ANL@=̯AZ-c!ϗwB wKaW9⫰Ԧ?7Yj nI'+͔nA\\} љ8+ 2*׫mYO ^ncO7+UNſHvÜMS8UXn^fƼUc0F(Dj:UT;.^u'c ^,ctp[/*c:lV;0x+:AkY Nod@~E)A$~ Sdk +P>,(d` 6&dA1t^5%U$>~UO׻ZFs!٫ #ĽTp] KH? o\`6[]>Caa֦ĜתtlL:v%lDSq|mܐҀ@QAh* ջ=u,4/\( T̹;Gt9QO<$B{lr񱎯ğH )v#6>;}/ARE_?mQ %gxņdGǥ57x<#YF1߈ yv;/cIlj󽧥֎pt Y>]e? g3P2ʔL [m";`b⭛ 87Uk2YREwGA<̂I֖n1] +pqW"~MGtPҎT5 Ĺ^;9v tDjr6 dSYyѨ浐$73[ TX2{]C #J7g|Bsof\4K0՝]#9q ^jjS !a<cڀuo-D ǪhN<-Scfo<%, Jd'4 O'涅ݧ ny6`^&6ZמyEAvfu;&'__,vk-#QF \"o$P=)mjH}mWJwy;BaDpEHC3Q}|Y4L$| wW/!N×[L;?fBe#p_w :׫{3(PMɘp9a tӂ o_ApOkG}ɨMTN#(ll_^:[N xE#mEݏ¹wS.`E6 c!+!C0rgEZߝnz0 "E{~vH>}&]%ZICs)n-U~$ ө4n1rgHP:78״b;8ǀٳ\sN6o_dk2]hVTvEGx%>Od>]$\ִ"#3%ϗbmmks}\cK{a8_G9^ pLEPS%$n'_ץn[3/AgւLz/"Hk^~&h1(fd)U~[kYU.6Us:VJNkTZ^00O5y[h ;!1_mn.6VFwWi}Y^peĨ>h[(xD{ YBrCK.fqyx>$!+r]^ yC~COE-Vjppְ'yξ\v>>8{ }rj~e?}KaFd◙)j %[>l%cb TPҠuN >?-Kڃ7p4z}g_YsZ+ϰ)J]0[}!xY=V~ą~e9{k vؚRu{eBםŶO A4ΦhMZh-c~v

}*P:ky'Xt}!bf wVݪh'YhEJ N+;IFqLj k_JݟLg]8KpAzM Q.˫gvh8ɇC@#BA3*کLuKcOk=߭_ W?r+.jbVӶظ8NّmVFR^-F<ZEu+ q9)\d%=BUh1‘= Hh׉5" }b[KLeC>?Y܂x-4G d~;>nH^߇7 YNeDLj=-RVLr.\#sL.YJUXZM3OuD"}+H@80#:˗r].<-tCݛ1A5 u!zᑩ{la7+isG+Waj/)iJ-]g>T'G*t,H䠾hS5?뵜8553T;m %aB^6TC we-l b_aN yBC\n.S6B3EP$>D^=AXj|m\@u=g>AD1ˮv&0^#NBUө#􄖟e->>yrdb4TxmsMRjYA?":5Lm,E:|9q Z'CcO 9ZJ-4)VBTipw0gz'T~rܣxW=պ5o5n w Q"i@9>ܖ5vOq ᪿyS%\ Q6g] }f 2p-B :53ӑ GN}S) qSP++LYjK)t~j0>]` MRy?*s>iB:R$Ծ7hp] KƔ<NߩGPx>f`P,#!ujO˼(}!x/|b7bLՐZ"2dIϙRv/d45K"ׄb $EG첣R#iM%Q{^8_тaJO&) -.'<ⵤ<1m|Àx'hLGzŦk&A$4qJ= Łc8MqfSiPcvA67y>(N} 92 ԶoE knZN*7z{dbL!umӾ4Ɂ7 mx l Hp]ڂ"ڦI 1Y5͔04tFRnlZ( E2i: smBT/%vA%PLz/w*_Pcj:Uu|PTO)5_"U>-j0Ĝ}2w`٢PU"(MW4++~=wj tgc-Ntfnǘ%N1S1z\U~K{@9js2ѣ[D7-Q\BiR!Rh3,sErb)NzuH`7j RN>KV0w|gj# w?#]kbC bHWt Έkq"9&dʁomr5*5VVF}A;Ő Gŷ-~1s:Z1!:C5 P:*"Kl )F ArY[>ѫ䞊V)nΙ4r2{3Fuw*# ؽ3N3Ftc'TAO{}8/LeGGDm>iʎ*o(ѭNB&i(/yb˪tuC-Z`D=Kq +($$la֬L9s!X/i>tA w^B% 8|=-(eh/ PEnevS94]'u$ y`H\{ÈM0Y {Xֹ[SQڣT*Iy6p1-Ro\7a\TOM>w<5SDrΕ%3‸~:|-vyFpKr\]vTSQA //*p>=XCu u W\/nokJD{z@Tna-q1m^}֖]Q+U3~$-6|bàH‚D_jD현ڬI˶ƤnѨ4, iC/WYI`?{3N-xmr3]!ϿpRVc U*i#/c+OϠNimC0Li.ץ󧁡*mv)p4_\ȼIXF;E+qQ_g',@afji u}z.F!µɯ۬$/ʌV<،՘Jy;$׮q?XQ͍o|ĩ>??֘o҂:C< c=Hlu$6u鷐o6˯] > \)dMf%G ;G( #3pʋ öGlNāvgg2Ȳ s 뮚d'NQک} "[l /9MQZ*˅ h'GjcgNs]uq,ғ"yBVعmR RJ\}L?yy&\۪C@\9ՙs%vR.C ޔo'w^ ޒ?˂m "#o>ֆrb_JXK%s"ExWk} QI[b|,(6מB]'*2vigݡ)bJVی]:w^Utz#v-3v[T[-ԟ†SF0 .nҲM_2t&NyI&$e$ب[k.K4=hvlAfhIjY@'t|5T@U+U ciSs5 X$C/ V_-D^gS?z_Al1,x9“a؇i^̨M2؋$h'[LIo;'|=x-xfn3 `W>Gnx3G&i0G7lIjG5^C5nQJ3mNJz3E[źݞ[MwW",0|.^ ҰfBJ,GV=h\P*㵄MRL5$Af>rT!"IM)nYSX]py<Ⱦ4V\z=Jwot03OAT{LIK\y8uQ6AˤPݏ({ũ5$/l-n@$۸oE jITwW}["M}w*] w*;oG.u|.ק)|qM'BS4"Uf"آ@ba҂K_+;"ХpǦ`-FKȮX/[ BC3LS|scB_*Y#uD Թ0[M)l4H[IQ"wPӌǺ,:Mj>_\Q+u~_09XVL aPna{}}+d=\e۪X%]u)5x*/ՍJx8vGҥDla3 I^o%Vz+e"1r^$L26<AG#qcv5㎆f_PV縳/rZgwuUMaTu7 eWO:CBHR@o7q5\pc=Elp6ќݜ8 9x v03 g7Mmj8 peF/ssGyƹ9 *xɣBRN;F/ɚ Wi3,"ZdF@,b% { O]#g -C#N8Vܙ#G)kAjiv3CJ(Z-A@bY0]x ]Cr入;͘1Eqxt*,Qllդr!X t P$^wͮM4.jrE.W<Ăiƈ[\?Ae,Dgbpy]B8P9nM0وHxQgB]j~Fu")C3 z /8Q@4`,lo5Ɗz-5v}3/bŗOV/OJ˕~3">37( b yͼi M=v0`sf"mӝiˁTb֯"Na4aݧIBX{XceT˭lP>d󭲟 #EY;.^u*@J'9yO% ?q.x:Lh9:K7@yGS1&YVòJ4Zja$-Hq#r փ]QQKƱ_ͳBW ;h..%w$ J٠b2kNiyR9TMJ[Y;S< M`cd~enN"/TIU98`_yB:Yv§E5ZtF4{tWBj}W +-_ؔu^(i OqW );:}I9[7L=5qL>!4^*BrʺIW4zT.|C m: ױ`E%=O$qO}3/-9`f 3 MzwU^=*r8;3ݼàbfk-M.#^j?|Q=@_ mtb? U-޳,@+ )p{#UtwiF1ld]WFξM?0JǴ'KzhSgK-q2x9Հ#D@Zn1 ٘gb32)S0c¢5ySg,Jۄvܠ~b{n$ގ|aC1պ_© 0Tt:BE;ѱsK5*JuAʫƒ@VPa*or5:G\;P)ҤDC)LBsѮ/N_ bhzB`QQP2jfʥ;&=VoQ^+،IRLO=c˛ttK_Nd/wm~>DLs 9s)HQё7U|3^2[S<ÿPӱ(6p ?TGD&XdBQ8c/oSPE98.t*\@'3I2ՓD `#~cҙidqY}/y#pP)&>u]Mze?BVޜҲ9xְL+@rfXF?9RQh[^l羗.k)0!R}Jv:da tGS܊VN,Z}tm5XmUCF'Me\鼄GbOnui0lӕE(@J9V`>%]h_C !{v/הt]-ŷ7qjP\+/]Fv4/P AЎ&G͇ I^YAWx$l}A{Lf v ts!IMo}y,.qR|AfCJ!zD״&.7ĦLf۝'x)Ge>v+O`w-\D˔FC*ҩ) E?錀eՒqMsLl kFPA˓&︢(^,*\;yU##! zph/uY7oe5a;L;Faz⿘gc>qlȚ%1Po4nTǃbO`gH]=&ܰ.+IhZbzJlo%ChxN xS|˰i*&s=s%5m"9FqK9lX־! Z' πUXKtW.6aIs$f+:P|8}~KY)?p}̅llzU|LD܈ t52#VMMIrYPO s_mYw%PdPzzQ([Eҩ~ҕȲO&UbQ`^dcߧ`7|Ʉ<R9cUh m !2ێ|X\km1S[eYe#M]>'I%0ss`C "Zǖle+dk̹烇$qNiKS-ߘ{q Yk< *;v?tK+ ;Td؈)/niGiG_k(S`7C}mŌs\}q mƹ&Pⅼ04uv `K`oA^y]adytvGV *Rm%"kC𪢇ca6[R]MAdʄ,0L?(p3[?셛rrCthp+Ywi, Hڶ&6^ Qp7+9 .S.A~-acIP[6ݾd3evX4䠹ߦ;3VI0-͛{[?6SQs j4ԏ!w `A }fvFVSvfPx-RFOǻ0obKf2b+%zfJߵ}fn=6j0L9_GQ2@8ᗒMxjYk3|i(d ~Z#&;*~ux%z1ͳy"a1$ӻϮ/)kF#zH`Ud )4ʴc+kPW<4DOYc)ɘmnUʀԁ7f< ŌI8&sso_>S({TWJTal ) oIl9<=QY{R' h=֩%w,:];J{"_#\X+r^yQBM'V0I]K%x2N!ab|3X:} cR> olΰQ#n-qce8.@>.[YRPٜ(;?V7tT6:1ʘ2KR0`DUtr"`oeF_`Bqcepj $AsXzx%tzMX~vn !2(iAOٮ$LL8D6fV+$x^ y2I&;z\CETu]);20Zx|i'A"7mLS:Ju8}Ż Ms-%fQCmS/G~Hg[2Ư;wJe'`uDVl4^1>\<2Oswz>[(ZjeԌ3Ӣ #CocJ{x9uBIV2qOhGr(o]MdMZKklZbsA*R}Y0Ɋei/&B'!Nb_N6Aϭd b=n_]`--rin!"V/HtbLrcp0<𝋍0GZJcU7Up]l:1L"ĥ}Y6^Qfiw9hʍG(ԗ|/ 5 ~ǝ #vı'߼/[f0R^&thP\e}_W'2~}̣=Қo:TNs8'}!(3kD͗ m Ç uDn1Zhzw${noG rG%2`sexVe^ս:u&~N@6hI:`: "l-gW| CE8hWC%#b;]AUmWfEr(?0(U$Esp0aRӨ!6,5LpjC^ثOyzD& gy#W0BʒSx; 7xۡʼݩnX) F B~@%LwZVD%[˳RXp*HD?I\R~'2؎nZx HN*?m3 “ &cÑM_޺eDiij_4nq2[<3/9ALсZe]29ed%9Vn5's)ox(KoEfl}A|3#ڶ#=NCX^ʤBNSe7p{w)V g{mY"SVdlt |5G!S) =ܛf2Nq ~4&Qs.E[bo KN, N{q<1 }fyrU׍%Z0ق̱%껙x Q@'btLorXx;!2jTiJ%N\K APwBgSE'(g|Z1/:ˣ-3 CIzMi[(xٖ4MLdmT>'[QD*}r@ FR)׻p>Z$5]fs-Fj,{Ay3Ƶߙgzd}KB9Nl,Q Yx^R(5i~[>tDn"@c(p^ӑL4 [ǕlmM\N.KR_6L0x4+"0quk<F&]w7EYh3 0)V k@@J&_ظsGBYj{A::8b.yP̻eΞ3&ܓG&RH-J:O%WFl;NW_V&>14iz{yН@z 2:`B}瓎9m2 <{ÑF=W,+9+'zn[KkJC{^葹l!KD.E;~Hv~9VZ-c)}3P2H+e գ@0*dG76c}e^m~FciULj0={ʆovVxa- [Y".Hh/BK.R HNX&Bqt)Ӓv JSfu*uVt©w1QŷU/+:XF Qa~ktz)lo^nF'~I#>6x9TN,'oM>a3(2sUel a{ >R_}j=֮Cx㝤:D)EX5A?{bD a&8Bb*RADYe>(g5)[Kۥ殷a8Gz޺塧&h9kZZl-XLb-7au!խWX'ͿI*R-=^l9;>~Yq&~+Ynrw(J) #u#5BfR|.,c:Ȅn[m5y 7kT\}#h] V:U*l[/sqdUěx ⱝπapT؟a%DƉc'W)X,%7z͉W/M>>Q4$olja!Sɵ{"rU?#4}}Y& NU۶jOT'(% <!K$otV su$˵ f6 Ǒp%ژ(=&ڞpMmC82ohDk*mC|$TqxĘdۢh孼 z Ikw\++i}7bܝ˒>]tZ˧\ϘLdI_s@|.}P¯b>%p0<>dp^+|qo|w H3&KR4?HݓPT'#]XwIs> ƭr3FŤFEmhHT~˜I."KE1RQ$eaƣ?Xݿu0ӸbBt6/]Fp=i{\LS !uP ~ 4t.0r@:AbMnFHAõ@S0xdECRKh)}VdX$е/^5%փAϦBH*#d]zh`Pğx񐧜6.Q7W`]㥣~lb#H\ᥢIHiOzS~pPX$꒑=jyzf>|mhQB\ w4!6NT%,]Jl$eIpTޫ,5]Ut+Ya^ QbUnwtο- zL|5ߟ@ԭ8nkxI[R9pV8c`F z+dwR>cc3Qd%ZHG@X]{>%E:+T~2J ~N7* ?s'Q#-5k!60+Bf(ր"!8# rC.$gCwF|vo 70`ڔ Wz60VUrv%9I(;H2?D-A6@p0UB`sߓ#]?7cƷB~'C?@z˄)s>w=C4vE+`?-ro1^*$t%ө ¼TeTj>t\K:L(ݔ }m 5rnJؘ `e7 «K2tlv˻@TsXc. FJkJf1b-<JqWK/.|pI.qlʼ"Irr3}y/لv̊1nԛCPNKA&@ܓ#.R.ӫDR!!^Wp#ÿg^8.d ;<9P~MCK?.0bJ 򧷬"V82:ޟ%cjɝ?@ p%mMkrd}b0r C|ǴjWG9_ ۨɁƖ2d!}" ' ge$6*78PyM awT_n4}:+L*p]_j}f{_gCqM@$Q/Mݭ - !a98d맣@ \B<`?Nhy*Wecrp*J#A41|-nr(Sv"ܷ9aM#PItq$b9(L9Ku`L? \O|K86bo0gArNJ~S E^CVL&0uNm= lkk`Uc^3&"S^s}A߽gd"Le.:uMg0βeXoQce5DB [7 ځ\k$W?CO+TmE΢9/ZpQ:Cz:ɓfhRx^k DMOsyh(`C~(^8FR8"]M߳eяEsV#Xv=ja7hsGϵ8@--C{_}l?lƳcsk f7^7jOx%$Vsig=yǐ 4''HO*+B<7t[2wJ(/T802PNaLOxu=Dcy* a#`x45I6Xk<7ôQĞ8!9{uO͓u4B@bՊ"L"׸G!,%Ҭ oK%=c$ep}YЪo8SߴA y)1!|ya =ﮫ 漛Ξ_>}|2Ye8~i^Η!HQCG ΍u[. _=iCl9M%k4n!e6,@JDlVř43t ,oDŘN6O*ϵ1-v %{tB!tnԎ)ÞL1ӔSR" [F2?)>]bwN͎i=9t8# 0ޘ Npcy$U1xl06d9^Uį|lK |K1"ձafpUV΂xE7P~0?BA؈O#^oĪBY3z-*u~W]}sܕl89YdRp3UAYw_b|a'-xAF#x+7|jQ5 ip ?=% FBp읽TQGX2Eשּׁ.a sv؟7⍟*QkyL̤Kpb)lF) /˘&cEm?1AG5Bg%MEUz!@-Q$NV:,z5}IVtɨ D}ivW?TR rsHJ-vߠi^lRBOHxlzḦ́;-}Whzp~+ByBZXx\l ȡڤzO͗%mVF!Qs"l*CZi9M'gKLNr1aAV%KXSG1=LWY֒jI׸Mo -MI_t06t0ކ:K@CQ LX''#?( Gwef_%03w89+?\KQ$2-knelފ[gr^AëJ"F]ŋLAdpHO1PGS"/KެTGŢ`# f3SUZ;S)_TBxJ᧙0J )"ȟ==/3GOʯ<'WPωU3`=ȟ2: qtĿ`ؕN׀StMvx| F3Dt*">e Bxuc>]Jfb? w3D҂-8|;Զ9ԓ#>QR"MW ])S\HqaHOA4hLA2_]OZFU0t!e.ۻ6N8 )+Z}Մ+V@TC/9Z<3UNp>RgKթڴ tp߉? F=Pw;7i4N]?h*veQcc &aE3za fͪQ 70( ukЅc,\ !8FF_`U_D뤁^,tGBX$Y ]PP~ ^~VlU  H|yo{}ɏIEi9d-= ki˿݊.\rhDf,VdB uX8J;UYScX&1nZKMA#G;%&N8)A#Y^mn}+xErNqXM!oa/)TMU4Mo'֦zxBg8&Gdq~C9{ItNKS7m{(sq?X(8DD ϼ .ax $/z@EZ,lt~2oblw<4#2o~;.Btj<栙Oar2F"fHN.nl|IN®aVbȱLCD0P\mY~Cc < OުmS:-|CR2 A[P]" :C §ʠ!_%;}_mHn(Z~Uj)"~ڻZZ\cmǔL0.@]gaݚ='3^p!`vj6M0z?W`i pS@-즋|O7ۊObA d()*ƹXd(p]fd: qU Um:5^ ڪGry75QdJ"=*:^ҕ@0ÙkxUY?"; ~=+ޘђ$9Dn[;-]U"IOJ+.E/vQKyV6>`7v8|LHL)wᆉDfW !&v䴛ȷ#16|zU1,0@ 1ė"XJz-\$G}C\΂AAU}9+qI S{O?Vm֦ V]ȘdiDOx3$tۃHJ)c!H5O~Ρ U vLkD jc_J,!B~91Ipe] ~bDƋiOC.n>KΠg\i(8'ߡ1xtֻuh&Wa}G}Wy׿C\"lʢA/*Y@Hv^kQA# r٠l\TBiEԋ/@he,~frnS<cA]7E@,4zOU0mxIHdĴ|U߄g\@Z`NwSΧ( ]Jx!`f ; |~PRICxmyCpQ뢇#ұ}@t+ }sv&'g8Hj7׬ix`U(. ϯ^G[bz~npD57d,PHfpC8ç:)4!*ƋFm"sݢInձ5>lmqoO]Ǔ<%?IRTkN,C'P|'yP*6̺|5Osj)nf0=og˷ =@[Iذk ZsaR=%|SH8G 0; 4 Ĭ@E?ԟ>2)uFaexq?~ 61/FV}7o|87q为k̚:Q;'oMvXҦC|?Rv6n/ 8to9@ӥ'lyK#P".|uY{ /fuP. %(ScD*t1Xuw\C)<K%(S|`k8vЅS+lAKRj-jNīזHk8uP89X`[_oOIk˞U0t?"u{p Y˟؟qG&HWVV(]Xu`93*sI18쨼ՠ ri:ͳ  H*! N5DtJ!iv X\BA28NV;M  }ss׶=iz Cؕq[,~YC2>@ >8 9`w36̥0VMEEEgEw+/ajB7np?[",tP-urJٸ'3;h-T!D a'G@e!wȤ_w?*C Kx~z8dde.=މh`t5^&UjSÏYmh%B|. =/q=Ó }7_q;VIgb`3Ԗi|{s+bV\i%)c-䥋,i>y Ao>Qtip> qR,d=l0R^Jޢj㩜 gnxE!I¬bK]<\-A~v?3J9m{<# V&xEE&t\霶Y5;@FړDIWG!+ɜGS5Y{U^mRApSHV~3[ ^A#tܻ臢2&}NefsL+j"A}e IWϴ$.Ϸ㳗3̬Ct/:=)N7v U[xf{[\B_،_ObPu'Z+VW@H80qe}JȤSJ>ܮk+e ؎9 f6,fn"? ״l&̶p`OuY|MJӨDrZ2(-]LJ[6a|-D9M pɈb`Qc5Wc+­E҂1UCgOIb`>DϽ}A ME/s4Vz/lYF7PiiFi`4)ةb TDuEyDi#NF+bf8\1 [<&] v2;hd) nR9*_Cф(yrC' ,Ou&ELg:w]5,:8W pl^jV7(Ά5G!8+2ͪCCٝV(o?yaK+K򎺙+7Ly|>*Hjy:m?`0  ؇ftiQY\Ы|Ma7>A~޿橙7cZՐ2ɏ5CF*:abxOݳGQ+EACy oS=2RUyB|-&)az=:2-vɳ{cFE1V296Ho@S*AJ@׼i #}(AC7S9TlH,&X7aeIso(cQԱ+<;x z >~"n{Ab]w6ijiDa5Qv|>;0S-1C!eGb+$h<Z*gɁ|112>0I`+\_nP w VyETnV'U,GVKF77޾}O 4c>kEVa`m>5>_/Xcg *𡯔 Rˋ <Ӊr^"9?.붴 4[I*Z}J0zHb)RH T'LtcOāEK)C@%ĽI8XEF |&gYH rөr˪U2DUHsp( w"F`GN=!\udnT6GEGQ i 95h޻9WSzrüQYbe -|yd yº+܊ Ց9'@YO@sk U>,U…OvXIb 6jX8)6= _ϟQ#\d$Q݉xWL%#4wY魡>T1~Y|K&ՃobdGܼ3TOHQMjj%nEJ6% A ?Yby{cȄ-; krJ]EZi'8Dz7|BnƱlSwh3{L(p״I~^mhl8h@jUYuolY~r;`Y+֞G"x4Vrϟ2at_"mhr!zb3D@EDBWH17SCZ;=f0hBH6{H־7$DG4P fPX<5@u(i\4-aա4k[4 L-Gt*`0HH :EyuuȁXP M嚒k etױ (Mgt Yó4e )?"ܾM>Jj7L!?F=>~T{%i6τs%a@"o}:{R$Jo5#8-jjSx#lQ0'5aED>9! zd&0"k ICZmzC"0\⾡fML)m?0 XpsHD¹VX,qXQ=~!S@tQ=>J&Rך`uI 2lY3VRh4.Z$jjޮS[1<24 |BVEz#sbS4F)ީ9^yv|ģX϶^EViȄ[&v#j~ Y}^g SsT8^R&PD ⅦsP{F5f U[֭܍8 .FÃigVS*и@ꇘA;3 io_@3VW?}`৑+xLrT[EsVPc;"h I+A6U t(ώa ~ܒed5|l>˟ЬlPBUYgbO0 45-pWL_ԥ yF3?^ k>$QsgkJ8Fm8%#*Bba~s&Қ[{jg C OOV %/7mo]@f:@>JAP~*KblGꨍͱpGSPE\\4D7'eKTj70Jz'm؈"DCqła &k3vE UKZHʳ|tD(8>f. qȩ$i?!ERaHifS垲7ӼFmgIA`4R+,nڴǐd&6.Z|_qwק.nj|*b421x},A o 6̗Sx|vٞ21/r1 wVDZp=;],zi(~ZVԸZmշtWE`*zNw|?yxc /&|$Q#yNܓ[-?Зzn(y~XͻTKEU? *,lNZVTz!TL$5{=)c//Y9 mp fbqFr־q<ѷ&V*3`zƜ& ɤ( p: LN $Cc2ݾw6,H!iQh\(6 i2n/Sv&`tCX+C+TQe5['ƃ,Ơ;x"s,| buÂ[L,ɐtkfD8vi~5wH "k;e 8cZҸAAzmqs-lǟt~%Ʒ+o{_>(Xga6~aAh 9+  iS\L> {E/w4(.] 35pPkՖ"^5͠=$S3jSII)<e~j#$0FL.b/i'rB 9Y?Pr [A?O"/XE&o3_=L SE4Y%b"iԌ&:~VU]ssKm춳yϔzؑ"P7r\f8g O%Pƛ3T8pe@]a#Ɓ`=0}[/R/?.~ސafDIqx+ȄXe[?ٗB(~pfn۴k;~w4=\6NÊ%,Jj`@\wCy?,NM}V6GWv7ڊ꼈/#;L XPJ}ΰ\CWl=2MǗxRׇ`$ a=~F]ȝO$DVϊ?zFIMH/k|KrH99Q&"jrnrD>G>cPSTUsš%f,{rs1;mtۆ[ qB_s+J1V !gQJ rh_nfՌ@QA0l@fF??þuHm?r;3ߟh%G Jض)p֡XCշߚa%]%XEx-& !o28ݓ>20dۿ w,JGK"/)/gAxd_( Exyx?EzΊr|C@EޓKdh [Q},CnC'z=bݘ"1C_[&M3Xbw"8& esӴ564[G!G@:E*:t V gϦO0jV+~b{WHvA/M^ / ;Q)l/VaHge8z"W3G[&GZYBHJ}=vFqrm=#mw.[Y|Hi07}kB]{9_OegETii{9^)DEb\*6Cx>VJ9{h0Gc0Af]&ya m4VkH i$ + :A52JE33E M-71")Da_ o V)Δrà`OI3C,EG}g) Y7&Izo)Ƈ9EVZHj,zZ5Gwԫ"Uet¤k9OΊ4CrYr1(9~ȗa KUJ=3- R2oT-W_]]e&4X]0IT/>0g KցUe5hn*V& bZ٘M-(UM AcoM=cr8$QI>2(7Q-AT*/nS;NF;ΗlHq,=,ZGߴx}F0tzUVɧ>D:[~w>/A {PI˜X[Zv5"`xbj#VV<'X]M)| Jǒ؇Sq,Uʍ@`,NwQN`2a<2(FE:v(' > ~ΡR@&T7R+u}jV ?PGVEo#<_Jaٕ*0Od(K7b [owx.;o^~ve6\<@՚sK*ΗM>  !!eRCڃܰ5S1#TŠED|罫`S1N+έ/,B=ُ܊2~,X *gi5@ }T3hveUqJgQ.hy{lRF)3њRBW{,o3~0t.=`=/xj#]*r!tY-(?ؑFte'c0ln }fp3fl~N+;&GZS^ԑs lkDL(Wb&~E]%)u>Q%gM5TΧ4HLה 3e1DQغvd;_JO!f*deP/]I`L>Sw~+v|ŀ8忼K m:Eq؏ n.M.a#WN&":ֶZؽҳomdvm6Z,DhoN+ amhmbQg/Yd==Rҟ4E</Bْ7_H=)>8]..'xK_TԖ;=|<PEs'X7t}qT>7h+P2@+O= paz!M\1ix5L y18tMIc'vײ!RRBva/|e %zqF'cev}p%o8-T9=gn1~^j^.7tߙEo d'W_,s ē_%b4itvdo|MQ$4E$wydm 8u*K7ߵ+.0 6-bk()(HEE#u(rhͮ(ykCZ,bWŨq܆&FcFAjZPO6|E5݂j8Ap俤FnpG jQg~FE=oAޣ2 YK53#LD S֫ lMK'3Þ6W6==c-;G0KÛ,Vn1DLQWC{ޏgKѹf}`7VXW>0Åm=.}V0Xlb]<}q㭶o03kg-l'(X,BY%/'29۝Lbjf2vOG? 7!@V{rA%F谅iq=E\6`o@0qHQSԧ %nUBǨdU^2|yC:MQELo^q7(=̬@ɼ\&@㎌x8h|`܉^]Z%ƐJo.Jn'Ql}H9fF*4r x 涀)AW *!@V 4mN6%l͚OjL77޽Bvhd;Q,kviuǰK/lor}nwYzDx#r(ӎU:$&\]W2I(;d'd RUmH?HV֘`8d٨߷nYVS$EJ2_sIAC eHԃ@adVp215b]$%R s9cN6QDjj"1QnwN4d +7Lۿ>qQxLnӋ# UB)LK37xJ9ShY~<#nغxx+'$ؿƈIcz40Ϻ6+\grAJE2aȿpV 숯3L9hx _%2\T\__T+} $,'lR$1AVe$gYD r0Bl6 {07ko=zG .۶ze>ru}q6?|sYjU*:WLzqexum_ӮnN*8X'r-N(oJrt}V!ێskB'ecw6s&;|voxU?k SE Aoh6B /K1!uli1!%D F/hT0zn< ΋ӾF/壁;B$f@As"b Lq.bpԗrY\jB֮YZGy22,ȏ=KK(_ƽ KMEy?v0ǘp!i~)C"O'.HF*x8£nKrt˯0^lOIHD`xbۘ7wbC^.l**" fRfNVI =Q]gU!j!k^}OjX/Z%B )AL!3jJۮ|(Pnb}LbJwexR-GRsدp ͋4߃2:K |aS8#`@ʋZ !X_UCִ{jN̅럽mU%<8Y^CV0,$O`QuHIY!jSE $dҾۗBeJ }ݼXeLރ3itmkWo J,m1+/L n9((myQ*t(&bb:]Ä,FKmS8+ÇH{z-/OTF ׄ"y{/t smUiGޖT XO^L0I3ьQS0!#[T%}澨.\Qƚʠ=\ϥٲJC4&D^G 9v z- 53LfbrgH~]> ͹TO>c.PgE @(%1jj8|D8EC-]bʥ%G#(B:4Yeuiإ"}ǁ?:hSP 7Щ1typ5-Wi@\8NVȁ[ &E/!  Xs8',r.FwZfّAj^!D ~suÔȮ꠫`Lg;͙ G:ZԲ R]SaFLsOc|$l pݦsr@$RfWfȽO=unf}Ӣ@'Kq%K wLH|@@cQ`':.ԭIgIjt,J[y&}$j9K6)" A4Ur٣Ej޿ȣ\N%~o@j,D`ڝMEvD1AM`0s60]R;{zjRFHB\dP̀T44?}[G#$wc}LMNyːUop P)@zupPwͲI<})ә i\DEtS&Nl+oER)ryOt5wym&)_SOu~E76S_XRrGƮuŴ21m^ɘzI0]om0`^cG WTM\! 7ӭ9Ɔ cn$cNp=ט B_vռ3Ú2;?-ͨM>bT}וB哰@&W*>nN8,Ԑy: nfѩQw4fN03|o-*eYRjAކ`UJ'u9W8H3TԌ c0)i驇j#[ţ0#;aʛ4ɔ`i2n0慈z`I(c09_~^P(L=$@3Ax[4'rLˣB/­ xCOsTٕ VY(OXn)]$7hy5wuE,LԒ?޼9e4!&ꆏ>"&!;g=1}t!OàK_~qmx&? i-C~e?ڪ7sl^yn% i'FܕdI;)N>ܸr _dٲbCx&;wۄBGM2ݱyB7 @t_XܫB;foIxIX/N?O'b7̀r(概ԏ)jS(Ay\E;H^HIHQ:LNc; 3{j}|_M/= T&ƸÙ;Fϑƅv*> =a$}S(P+[MײnS|`=FRfU38()!6Sht&!_D]od˩7oŞ4j4>5 9 x aZz[ToHjg#}`Cԁ~hL3WI /<`:(dKO;t*8.v&}3S "a<#\q Ȑ;O)ɲB0Uj*#Q^2Aν;>].v\]ZGW -""S*pT0u(;xzsF8D.e|&K.u7/;Dޱʈ[snXՈm_S=W>XuPC̬uvAHWt2x`hm1AL"{އИBF)ځ73tux؅2 %bp1Z3!p߂V/boMOL>fn,tѶ)q RuVdT0 519|&Z%` 1St:5B \^lϤc i^4c'r2{Q_0hC wJwP.+!.ŎxhikѭωrdvXHsMCeTJcJ[þfp!_A؋Ee쾽s g+ed)cʤ";lEӈ^Pl 5H wb 1D9>V{5P$ " m\[=F-GUm8&L_hXKT;ݮ%TLQYAl{=@CI>&fǴr;§ m)9l+ R-S]Slf;'ɈJil6 ;?co<OOԯ'$F*N2M1UJswŃZ$7ƻ":تsqFQxNYxO9f青jwjYYH* o؜zX,sfΖ; t[~G`/g6Kj'#Ym{}9"kX;ur^ֲPZܴD-mXO;0b \jzݩ"U#rȰE+%hoπ& hK37ϾlCwfv}J[.O7[FLeѯm8MTb%1Swr3`M9pS42CxôWoх%6qUJ,QOv6t3P!>e<ǛTЗD3T ֤yv^O]w*טa;>t608{7x7.waaP:2v@Z1_ps`s4KTU.zEz-U{v{ڒ`B6|ms̝ [t>p@}>l)zXF>҂-jQa2d'Y+o{;#X7]LnsYTrˆiy6Jpf G42NIeF,ІYE8fx].\qMQۨʶ'rZQ"!f0!h ,Ep H% #93q s'k;֢'<,Iڌâ|\ gڈ[`2`\2Ã4e(ZoB!H8՚r2& ۨtvwNz#-惹vP9ݓQՅ|DLx{)c[߹ !EޜN P͜,gnm [#ٗ+FC6k`1=n[I ?G/T/$'Ȱ14AQx2sTikۨ"Cb[[1S9D <(p|_ UWhvd]#{?[Vlhf~1׀'8kp[&:׋ d*UAظռ. =axqDTdJPQ[f2/ =Twb5\EP`sJucI׏^!GXg8F;&ns0!-!Y~pXc!( o۶ޓTI >#{&M)\4`A ڇ]Z7;uJ9Z(4h Q v/\jY F3P5UmA Ub~Z6XSWD3ğ_̲fhT@pelH.” Z| OY,1740HP29WmLZ{^64qO01p\SYc5pߖ/ns++YAtMdSb/uTS(~HLDZ ߊ'q,L8Eb 02a,42CG3{xNA4l eS-Xb'XI&}V ۇc"rKڹHLF2wZoh܀I΢s%\]j?vJ=p/k,b$Hw_="Z1 >ۘrl]K4t)c&fl85W 0K6i vsMO@ư'ekDΊwoY[piU%2 1U3Ձ@3 ^zZӸJx:XjN a{614Bs[/+'e'\y 2@ӕ񟄌bi B>̫=0*2XpvAbCt:2;JKV<_oq\ckC,QE|a^Q#S:OFQ'{n%OpcҰ]eh41^Lπ+3:J#%oQSh&Q U,Q~YŤ<"X#/p; JφDy3in*HLenzȞ26-HzDڜ »922+φBO7>uF;ݛgcef=t$` Jd.6R-t*;m~MbHٴFXЖ\gڜg/$WVA apOy{2tbul<^ۍ?$y&b濤mBT6,tU6ju8pq8w8I0>h:AwgfB+Y5.3 bp*r**[؅fjhz9ۄ͓Nx Rǚ#DD=< b& axBIܙioДhй3*}AL1@r_M,èjAsoV΀Wl.*KqvE\KFʡK^ 5 l^b2 o@A|uä<)~za!*0˓qUۯ ^j(w#dj@;{SiջSX#jQI_YD>*C$Ff--ZBVGe4dIqxdqO% eS05$ƃسD"o6n` # MۏZn FՏ2Weztsey`ԇ`bOS!X/?(i%K-l!HR񚭆&>> $ B Y f:{㣖źK +oI QS룥9Y.1t7ȝoRc.$s~ g_M%?,/7v7Pz o܆b1mYI IPxEЦc4V6 QNH_(8Y+}'ר5[d3ouQ]YAwѳS1eb ܢcn1~ >{(90˳0_ XQBiiۗgN<ӐY-.>ƃGf٥H^ JSr&@U_F F,vހ6RiBȎG FuWuIB96/T\7>2%v%L</'8\ƈ/2;@ _O1lY;ᄆYG(P :V"Q1=.8ZL5Q Q-\ڷ:Ae/Qzϱ +;j߃0N^O_ O:U o:66c:gۍU>&muvXO0Ծ/|@'c4hEYiK<\B]ή~\yM4{I_91@MXVM ,"hAV@ 3`wX6"v(9|=ߟءr&޲7%bΥ: J_HJ[..+\aIb$rܿ`)wU,?Ģ0/iMT-S>>D" 1 pS_H-QO^C0FZBOUa|tQUaw~ҬesHIWIOzXx:麕#c+RD( w<7'3xHzOD ڪ~@!\E ƨ>Pczt+4+(>>ƢȒHaf08rҞˮQ< mx\O=tpuw4$mLDF=g4WXGI-&e`48a?z{Fl+{H>j9D$!qVDPT͒}n`//@&[}@FR_p.oZr8p4h{ۆ=3gGT=<$WBbV &-\Ov̍XQi/7*S5EehH6CƍؿmirtΌEՂ؝]پ0Če$G,$zqel؋i`01T0%e)=eq;$.LNˀ0Q(5?ԑ$217gz fYB3 dk*! F#Ro+ӎ~-CCnT*Pf BKǴsjX@AӬbe|)p}>\P݇Ytw9X srrڳ*ݚYkOwGȂ]mgQpȨ [;PH?A钪q0r]ӨZm& PxR k6L\zQrǖ,gJrQ;oLYn;&oY>JmֳSbaFqsl-K#eHpٟNF[fl1BgA.X !!c2cuЉKL";x?cV( ?& v^ޣ !`K)!mmOMDO}!eό?83X Z ^o@ɼ'OU.n#pD )ҝ-*[j..X m\GkUc3!}fm<D ] }_V UJ bdjGtuXb þ=iVޣ>>XڥDgV ES+/'Q+4dɸC Þl6"yGԕִ+e \d=-igjlU]u2?,ħbPg}">wlKw4A}T/> qy΋i{,w*HQ}Hge.d4oiLxu&Xɕr(q  r7ЅC9,o.[/(&8(*m5y~JHW!Ȳ|CϱH&AG[Y'N<$B5CpM]UTc,f-D+|ʱ3f/&<IK@;1wk )B:4(2tO<{Q {˱5Tmi\l6gV^1dk荛Y>X=#|ә. (P q ܤ-L։y٬!G'7Nn&ܸڽ, e\YD4|nw%GT{17QyXőR5S+V4cN  :[Oc\dd:|S؏=.$W(]:"KG ?.SYwc ^!]Kk68j K0P] a:k¹Ky^prT|DQ2-C d#@֒`zxK߫p=-fg8P¼nP=3_"ěcK$s+h hCUcS 8Thd33݄aRJs#eեK" Kd%^[q$Î׼>i.`'!(QiU z! "X[v\.vom]OkF mK<;@$QZ-V1xه֤DD1]襩׀憟ֻ: @$$.EYյWP0GSvXӄ'MaNO1﬚Lkִ?/!׊'}pqIJzb >'O\NJ,d#PVǀ.5G]ͅĜL^jVĴJŸJד H{7n]i ϑY\k©abP"T_JY1ͦ,*nmu_ew~CoYsq0j?vWs(sߏ*z@Ь<7łbuܮI9ʾ""!EɑF( y5ˎt>õkJeyzě$ SLw'MƖ񝯤YTZ/-P1Ql)i7^xrŌekg.d}4 I4Jlx!Q5J HFPLJnA4)rA >Yջur]!"xAzWf!QtbpP&`IhL7+ eRm,p*,{emόq)nƒV|p2T1 :4$)>"45QmTt㟟o3lv Hu/BcSFY F–vDQ7M9lpFK5n!e+ i:1}r<4giQż=<9)HиοV<l8xR($̱, 4\c~M`E R&et4ߘ⩊]ls-|&ew!*2W?!30rN'ܯlu R A&M4\]M|IGjHJ .+?^kfk&fh[(0JWb !#0cԶK#Omǰ b!Gk~#qYޘgYn(PXֿe  F `mG׀JC3nٟHdL@T{8F/5còcG=  sv F^*wʽ.|oP}x-8ک~  po.>> \@m]cMcma.=A켊%n]HMAU~|BcL$lkqsAH>WiLW+u9 x6B+`hc$S3cYɰiVۊ}IeT(XƸ`0r9^% T{~V)q#Pc Q:C{b A.xy3Gd\.0 #%4 o:#2 ;+'"'E$vcQn$T't}*Jy G3RHwamH~ q{eqJ96m3b9"7m̳ASRy 曪\ Z6bT#]`l F;㔫ԓ{8^jtrS}mФȃJ>颅M2( M(qD;cܠ0nʾg-g6M s$.c ƹ-(DD"-G;_TO";wuB٪ >j#sϾE4VzJ(@r%K. c?U7?]`t Y4 >^yա$.~NmEQb^aMN,7#a#T (@?@]Z03D _‹ZGmv]"w8L>tsNhjvBj O5}M BvIy0BqX[od{YB DM` a/4;E@4jם-5NٯZ8;xsJYHU * dәVjL =X'VOdפ"|"^H7~DE'POZ/8&U,F)0UwV%D-Yj3l>UoVD]Mq'+@^lp1vX.%6_D<&Rle\i,vdX\Za a25YHviǜ3[oG05+~IkQA=݇2a-~Rg2fWެ  iFW0۵ OM.Igi'RYS<<nj\q|=e+މNM5D iaq 8\FC.J9^ *'!|%dKg"@] ,>cѝ # СHiؖodӍqkׁP[t&KzRnʵ6'X w@OqEX6r"(p>cLD\f,=shmŰ~L3~'UꌍF[m RהBjGoFgՊrܷ-#׺2Uj p#rޛܬIǐ-D3E0TuOT]C]=cpbsC%_cK#g X0*oCbziB )Of,HiZqC{;Gs )j]@`nT3 hz:^1"ɱ)aYB4XSL>p^7X ^+0ͼK*u[O"f@?fqCs,dT$>/y/mH@8јDwM=/J 2=ߔQZCusy=ǜv&̡X!!! F~\W $(eP :z2dY+.m2\|a'MWlvVv V(5㴍qZ5" G_X٨DGP"fƔe;35Ψ>F9ޯZ6oTb~Ld`!s2O?+, EAhߒKe#I^?AGa8Tc@뷣k.-z(bp>-j+a]c=$mLՒd=jQY YgKL;[dV|H/pg "wocY O/LOj BflT;VW`zdeZvĔĸr4V7E?HD/fDK4V4٩8e#ʤވ!y e#+Z2/etAM)lXyD.Kʹ-I-t]vgrFF֥i,3''l-w!zQ.m 46x/2$>ԲӤWLɳ}~\aq)Ɩ7V@xlB7?BnFMd xD>XRĎf&uVczZO.NeMKJ_ XRß}eCT liō١6'Y!OQ-a~~4MIA~p (<~.Hk΋%ۇM]u*Ms3xxWFc0TNeDzHN n=)toO4=*{_l0C]84a`M`uFzngMDb,tb% Xԫ"`fͽ/j 4vݒÐ4Jvޯ%* >wekRO'\kR:jI?t(& H?s>VH#;=?^퉾AFS'SC:v Pl ,nKd3ő͖LJR0g b^ y|5eթa,J **2=/'I'[@=˶4'2 ;ᣩ\*!Ӈ91?5ЁX !ʍoO !uqYz)\2{X~Րx%r>`=l@aTG^?@/);Yy۟6g3=l?/lk NZ8[h-J'[|X^^L$fu!qk`l!|!RR"ZHTBh.cʼnrE4nd[3:`"#ğ!$0wNӠ?%KcOE`"8B§|'k9غkhO\#Á<.!3<ΌGB[1xfZ-}j UQ!JҲыW9Rpc?imbiP/$2]d'{EdUF#=}DDz3$h);7y̓ekio_~XR'0]bUT5#=$iIiGJ!eJ4AP حu8΅zf.)B%ޟk_9.ΪyH+KM7su';2+R^QtLEL0/n5t^ZQx\T@#w GAZcۊ5+!؆3nR) xHxହTsUOϪ:%G3d|D׺ Ywl}VulN{Q^$6J"屗 >L5yKO3$"cv% ́G;89sk7UkیUXд쟏}Y;鈂?`ۮ8lf8hx+an1PldvdD-_66\1X[,m'zg5bA)^ɖM3>reUIJQ/r+0aH,8܏\z0ـu" phrLl2Y`&NH;YFÍ#OU9(Zv}0˦͉1m^~Ak(HnN]EnwH5[n5|EАI%K"wq6QB̅=@8Zu>>-a!cv*BXܐݜLV!"٤u'iI}ˆ)Q 7] TwwBbFxeS]eT0{OG>H:VC;xYNs&+{f_iPFڣ&MHfZ/YDu \KuW۟]%qv:61BQ*om* 4 ٴ?2H5pc'D<:[~+Il;MknC@fFW*;VvO?iN,X0ͅ1uj (bn3"1ǭUo&l*D"z(zn#>~-I<;>,m!R}jOs+oI?w1zIdU&VR^sҮlq2 m+73 /A_ە5  Ũ}0k4IP2ʀs :HMjd?Y^׻푯 .|?$CTu113EC`Ar (aL\BS_(-%Fs"Q UդƎǑZORp34dR?;ìƒV4J%n4~DWZ V?/i6)S;<_K2wc8n tć AT,n&)UH tR%Y:s5@ܚELm o/kˀ5g'{OG˺Wfm.DRQӅ'}30 SYD|'XejCqAL'ڬ|'>b}U@{b C"5ZBB.Zڟ2Żµ]>l&$T!~[7˷i{hGN* D&ٙ"1'AlZ3i}}r_)Kg>-w%) y'N;ΤE$7D*~KjLk.iZj%#f&;~q*=H.޵OQ8{u>`ʏvԣFŊ2az9fRiÊzue`";}$6կt 16 tsx95ha֕o<1,̭Ьrq>IRFTih]HҒB2FSeLwfPfejVQlxSzjvBݬ6bZE q^%u0{P{r(s||]5?3\_Хz[vq>y씃BD[5Nq(9^zl?K(|wjXqJp6Җr-2VGEـ9j YGBv͡P$1SZEz׆?-Q.' mT.i0~U{m%Eyr;(٨SLʬ䍈"8"y.M!AS66fˑlڵnfHؼ!EiOTS]:gʣ^y| R~dEJKjǏ:6Maf7Ɔ @ 69K)ky͞efulK8'X^Xar bS s5D cԸ5"P2-Di @wZxdLgaxn6 Hxd}e C>h]F`~~Z+-)/o1)x ń\NDtL(1%`idu?zGkпH݇5AC8VO#xow]F p៏?*q{o=_{K1YpTا;NkڦW@RE&*OWx+ѐI-z5-s Xwl}VR446g s=U˭΍ }VBtR3C^.eof u0dmqc5Or|@~ʴ4f6 xE(BDr!| n]I{vw tゾ>S >x8bɬ9'%|<%REPVTbj[. yw!?ITFs, Fܴ>!5#N\ hqwwt+Q\'waiV$r/QI@ O7uT=H%K+I*`xZ 3Y$1ߊg 1dGnɴ 8 |BX+1PM8ɋaUs.,&LK\^d$^i3%V]x=?FIe'T7̶A}P k{82m//*Bz^an Y]ꄉͽ`y,'r9eA`8D]YTa\>2ksrhY3'ȹ1%")#%TiƖO [h%Las:7o^mt.dy{vcYp4x08D Qi Ʃl d3\ *?\`Z/ư>З؞r]3ŞC!CDdcÖ4ZFQ<%3zqWB<(w3YT4RBkiQMEMʏ[1g4}̺碊!@RuD1'ol)P2cۊVKA]v $0ugkdI>$>4((`u}K)EPzVfDAvkU=̛8ML=0^r]p+KOubL =U߻}!Lz!ّFTNGp^T4`y ,\kb6b7A40CV3O`k@؎dا3wM]r&4.1ttNKVZ7HiL#݄o0wW?-rqxbqe8ҀN6xZ'7ږC>K@ܶI<S1WLwۧ\ढ़ܜ+J66-@%KPGT!\}g ՛>/JֳyþZu ꬽĠZjy3϶.USɵ\!PKj:  #*Kq+F Fy ޕjt>P]xCKo!.`Yf#%KI[&~)om͗W/rh, {5Ĵ%.37-q&ηy $ser%ψdƬnS=`UD28TVf}gțͥO~fb&Lk΀|-ˢlC|T( \EBZs&|m*R5\v환`&@RnCG람+"HJ|S*͊[{fG3 nҐb&YXvq6>[ E\Diɸw2kØCՕSc)I7e18fȢUO︗\}j~Zn,n\♏0lK\ aQ͒Y&#^E2 7nuXw߇x&)\@ġ8)g]Wp'晼%tAD~a),ɥ7F("&?;{Dw'xʮ^+[Jyk׮!FqoIjyu־C?䍄oZ9k_jR`IԴaE'S׽[-[ :K^EPBn,B8pӔI/i.sjqsʳH=2m UXWS(p8k{0{ !@E]`Gw co}z}5$[з |=8?/\~e\oy 3/7LM}0L~_Bp{k3itjSL: RXcm)| n ;ԻKՐ8B8>EtMޤ)J o" <Y+i3:M=q݃=Hmi C驰=" @t2ND23d`%' EG$LWԊ,ЈS9=4-HX-}_I5淢bnl kռdU&R L wĉW}y~aB {#47&fgs0FuIl- &V򴬻}(I*3-Z`<3bJrNUGkŧP"A, ڍqJ五ӧTh6 =5S8()i'kؚ¾X|&X.ًq؎i~cY j)C@|J~c?09ܗ|RAi}5r1'zI#?kL0 'p5x(QjfFN=~ȟ`8`ҕ3Tu=0p0`!Rj}ov,xTH* )k+>܍6\iqI#KB9O歑 <}G &{_DZ"gS=ȯ|i0U]%S$^%<ğ< 'Z69KXY}aИplzm5OcoaaWO^H+uUD'J ξy ѕ&ϏR'F`~ۊ} t;28klQċ0_} \#L. Kmnr퓥!s1ZE0kÑzɆ cu@FHo8rl'z6gBm$r^~|c#j\e蛺*^{wP@Ⱦ%BI*p4̾`{JÔm|SiLqr$[+p&-|д55$P3`FakIIGЕNIھ~~c<􁳟 \EN!ܪ~:nbѻ{ E &i=tYUrly NĴp8=F~;fO* RR"h#' b*i0/YsnA.YMG]u|Ʌ8༎`4MZ:?9F<6eV"D~c,ŭb %nv}7 _TG"aɟ5L ԣwY<]mVr~;R@ O M MǸ B);DtfqZaKvwK]W?}@iϡӒ8'_ /REoqRBnAn q4[W^ +/ eVט%OdJȺS 156ZVX8GAxSl|EqlRk/Jm걗|Jgk+ d1kg޾} u><>-}_..P4ӈwU" uo()fCW@Pq_XNӸxK01-coOtWPZPi1"O)+#l7]D{B1fT"tyKn}8m#kuwabgr2<#\v= bhG,%֗i"v- i|&A[@qHݰǚ+rs~-*_zp.Y'Ux*3 =FCMsj<z1_X,$-(2 ޸'H'O0?:!GQU?ؔ=D&hg-<;zPyIaUryQ39J36?n{If ߛSX`^ \̌=*7`CKh' -ag:N%Z[fpNjZ2Cl$?<[T}G?ou7g}۶Uڱdؽh^5dI(^[52Љ6T~|Qx3; 5g5}2}EޚsӰ2P胱 nviXSbϩ-vX\r45&shF{"vY}Ύ/Ly;sN^;eqˇPjYz#w]桂+2x8^Y dJ0nVVINY82Kd0M72ܑH#A}Sg}9`rZO @qr7܂VXEtrw1q:颜oA{dkD m4LeH=6  \U~1`䇰EfmmV-ctsI(}Jpm0ӬX@s}Twj(0|]b2Q64f $MҺL>I+ݔA2_ f]qs:Z\!]4 Hj0^`pC$RW[{qa~3GI_.Q96޿@HF(nuP6#o*UI*w@Z9μRY XƓV sb_&fkjM$9}(9b*ۍ't_C՟C.[/ſ)^  3S5cو $QF:lHD4aƀC~)q|}bќ5%\vĤAى 6k(>eOTВ`² %.:DT "h-c;AbY wkddM0ch簀2yiuL8* za`*R79oOQd+Ž50f<7P8OW/q໳rP n啩/SOÉ;WnI|1E ݶ}^<1 Edsnq9Yh@ϣtw_3ls&.By}\!TG\?ܸ h3Ȃ ccO?['A W/%ӉR'nU~(ZBU7nBĵy:<Êl`6c3_ (u'ѹ ٰʜtRw5==xJ-E4} Ax *m-@۰z ƪ@ \JFU|cɚR ϐ:2]t& uV輯l.{B5tN\î /vM?ز8 +CypAutv~02`:05LƘW6KS_:ChO懵cN<pӪw݆QXs)6Nd^Đe|?y\xD nU2^^Y1`EkJu^\ S\AݳhGtx-W:wËw6R@ݼ%^ ːj G [9jl%F ڼeG6o㸚 4#e1m$pRf_eY40$7qDZFq;k?Jg.])iXdM,Z n&BhV*4xNg?PI̙;jI!X6 q01?'dWAU8c,Fہ6RMvQJs4՞8B눶TR`XTOtD8C>Pp%aRN8knB#?Q]!(rWn֡ >vg"Crbʕ#XcWk2:#bNE&8i@>V>08+kދv[1(ŚvhȺSAO[CnwXpfoť;ԡ-b`.VEsNױ 8u?L9,q Ezd`N޳Vyjb-^Q .G^@~sU\?Їp6oAXxAV,}g6ݐ8F3HTY͘ =c'{^(#0o}kC_al6dzs KaVX6qc!EcoTfL-@Z-S "lʵj23 Ӝ#rTe^ s@v2 !84_(WpbѽO ` IB*jйBpeh@ӓ@4#=/jֽsуŹF(9D0Gg6ЍΣnnMZ7CCF>#(x:s=Ɔغd*uin42[؜giKE{.HRY͉HaPa9u2I_0M@IpeHM#p,dsϒ"`ԥysi'bD&v= BOϐ+& :,**e^k4r&ky"/jKCx /T)'w Ɏ:bT|~ˠYxDW~YS;y,8R֋_i܀&Mpy75tUS;rwY`$oݝ /vQ\feHx |;BO+{-?Rq wy*RXKA TT902(w\rr 7MQ=s!B.2>v _'vNw4YM*[ksBGY>wNjeYӰ}P <$ŏmQJ%goY@`=غ&nK1/Ӗz` ðί[?Ԇ߾‡$zxjf@a++,V-\KA`̪1rNA!A@9_]X.Cs,0 ʜzkqax-n sV%x.kŮ)dEmd]sZȩ9a7I L%3􁑱a6m_ATJq=o<ۼ/} [s6S˃I6-UH-E.:o#PLzreK{ܻsRSb}rG]#tgӵks#3Lh8ƚ{ji2 Eb"3}/2]ϮX|rv+՗_딀$rXo}Qm U_H]Ei1P-3#\\꣋IԸ3qxY svxӀqmgW_G;hI#:xG>Pb wdHEnnV@FMNwK6#|>bo뼀h$kYA,QEFը)~TSڧtU_p9)cзl6RV 6~E9Jx1 ֧DjFM=}BCyꌥ09]е52oWr>DzCH,#yZ<=X)J%Tu_|DX`gjr)-dAi'M}*%Z7/QnRjO]G6o(@p~k mΘ S-.4宱#ԫj\TN[Iۨp'tTI)0"&Lq >NlR}ײibFBd(O+34{с_0dpk(yf|+HDQ\/'i;@mT#YC+9sr-yrax^{'djlNO[T|d!8[Q8ץF POy[q謀n2MUEcrtDK]5Nd !lIR(32{u*GyL,GtГuLܩ^Lb}޲ m iY%nDr@ fHe>wuDnqde{|+=Zmr4`hZ-mrr呃U$'BXQkE>hPBMʩ޺gөPZ IZ.FOGd`xW(Y ASraSmKk_,.Ϭmd\K9̐i:ߗ1SyڍطXͰP0PY=2ey z|B:*=icK4a"oo9cٯX\E^woxf"h-fa˚YHߢQ.&}Wz)w\7aX*Jpo]W o%0ܱouա-q$<[wGeD pEbz). 6HDLTC}mMs e[j:F@vԽKm{NX"SrP/| S@%O6]Z胲7 U/i]CERi\JkrbO' /%MKfw6Ξe}RسصczjҦ f+2iܡ-k3SB/5H|e9ir> ^B<Q#bF/> x nN.~C2_}cp+׈8K~y.+(:=:}܍(Jbcs*"<*4ٯwEP]\V'7ky\!|-x^bC̩1EkT(?t߹qX})Wث׷ǍR ^w-WU5d%]u;wH#T<]$Lg*IWePpM&Eô}w凿 _ujm1%LKiεkRV7AiA6rAhKt}Nt;٣!E]0d~A ckYtPnBZ:ѕ)i#(fdusJ5yG-i#lĬS-\řNk=,$h)ü~C1>)e1.,lٍF5Ag#8P hAU퀇(Dw_G,/v=J*?EH-"'fE~nsb@4>z?Ig[yߠs)Y. 'ڻ1ciӵ|l4#X qR>v;p?++[B.H%2+pKZZVD$(~ؼ 7D:.bw^۔!3] .WEtEkxgl6ðNڔг(e-5I3b3)n*^5I/xA?N ;D͏wrQaM&_ed {&``ѫ8$Gډ_^<eFM2W?39| ~s7+ {C3g ֔5C?c%ǭE$qu!i?..xK1XI~nb Ma%YJ a/m;3Z5k Fd߰ECЯ!\ć IwRQ*4'% }cSWicS쟇:cO QvwG4i#ub0QĹ iib!n]ujc|PD'r:KzF&Of^Msx.XWR5C ZQLSٞ̓ppWCu 5#0`"瞓<M}P3HYG͢<𶆺`VD (ỏC|c fSkðuEXk8\ʟKrVa[W5g PԦ庖D,q5H0 U3/ r>x(2yS >WZ:rD"ێz>IfI*9d%>LiKbp:Q ܵؓLMΆl6@$/JM}ș:;+R>*J.rp N/&Nȣ$4>W'~c%0N$rO<[G;# 9¡7nEZǭ.sسvT&EӷEs67Z@0.,*w 7ь7O%M5V {R!I9]A\تtxdۚ%8IԄCyBv~ d'ыW aRhN[(# ]`!]ZS漬"[͔⓽"Bs7i7A^{*b_1 OT ,H$䗳A+tܘݳj "iA> 22M-d38AϧŐj\Ll;py^.~NN!2zм u#Hg@f6z@fAX!Vh7= ,;Vtw-!1y)Ҫ3O#9CTь9ig {Y_w9{)UgX0jk8ސ%q#A?uM'sqX/ sǑ~Ԗ_"24qX;!yMEc &PqG嚉Jc-ka4ȜNEy. +.՜|xH16Vv(sM +d`hVPEkv8YsQJFe\,H#=1)#! qͲ*n:3_2&cхC p_$t0s6N#|ﲥłikwC@DMa`ruUdRW]]lbwDQHck?s~I'@7`RW_h׼o+1pH5~:?ljlojE[vD$$}ȣUUpLЕl0 ĸW͚3ʶ >Sn#fBmqc| fO'e@eX~>R v(-zy&(۠6 7#kgvH} 9g1P^q3j:#'Q,ʿè+tMlsIAJo! 6 ۚJ3y'jƲX(W^ VR{yu^\ l+n#b_m~Ads>C#eN)GY3̩W>ثNɚ ʉKt|) T #/+/53o# /]|_=նMk۴@j-vܞjw!q籽,}d0-~Ӌ9(,Yase_ ZSn#gvb dE?+Qug!!S=`ط-|ڤL7vL;b*s8W;c$8(# .3RuV Us׋q8К)MêN~&^p[2 \DFPv o% aOog QCG5ܳ$Ӫ]_F*ϋf)8.u %=$92tU|(]邦14v1"sO^y)$"C|~%vCX*['yidݾM;G8}&γҘBdO0#h|Nnش 8^l^O24Rӓ3Ae{lZrkK7졳{#f@׵@'oy3$c7BLv# 6~P3! Hq[nMUx.tU%K1_g]'n7 JH#t*-=;('#L꾜?99OcNxO x/lO~s$~ s80i)YBkA4Fq463Y#oP~%Q;ᒚ~SB$7fGZ4DηYMkjoAEyQ Z/W79>51>}aSM!PC-`tQ%#Ec, %L ڿwWXQ3z7$3(; z4XY_~ݑPv#919tFOB%ӛĢ?,UGLM|ƝPVYn${f`ؤ֦h4'0b c-2KZ9R%/`]YG4VKgd}=@)N^j qzQED,حcAF`h'@X2Euw79@ ~z 耡Q?u|2Cglj%ae2IJ0C \ -SL&|Va\ڻ:gpR#[? ]R-hDf?MqΞ tڳ 9lh%sΣ}ᜆa>X,.q zA¬U_Zz`z82T}en'+*`ΤdQ ) Iz (Qa_0F2cn?Yvе)ǻűsv ΧKyv] NlGQ`gMْ6h>Y=&t Tz&~('v +=$4)oY{oxoVyk >OAڜJ܂oE?c0KYe%PtxtkΦOԙeqA!dw|9?'ƨ}v]d.ϥBxBx)Xju^8;Pz~?]{'kow䎰S(ca?G#Dӎ4\ WM SEZCţ ;kuXTV?uBGpO>CeJ|r_tߎӅr`5T/.a{E)wiDH-J Zf .{UN5G䦿pEFJ$3GM+p}$f]@\&BݪLj"7 TfUO|,M04aqʸ}lPt)n9dQ taksYUw0,lFKN~akc);*PhEMĞ:#Z~rC0^oCNc-$RJ=(/o) &Ы,Ql{> sJ\lZΆ L'62*T+;l* sv2+09Z?qC6ct#fEr[`𙬎NuRqW:>98uj%2u RE]jaf;%nu)E@mQY/Jg֞92x +Yh'wpPq_pmWFIl>x|>Jཉ!|/8_:+\> 7J'i Su L;I&=N[_Zqκ2|[Zuс軀`:iZúˠ_|Q~>kyꃓefhF"ot+Dcy׭d"Wwg"f7/9?\bBߤR=` Qg[ ]đ q%{K!&]Ljˡ*{sX딃%`.m\zq0:+klX]3ao v˲IiŰ BFfaVg1$r(,YtYl lzM'ʸJOAC|VDx( ,&XkCэ M[ $Hs,,\(Cߋ^^yOX |ey8ܨO^%e]޻ݾ͓7[a8N}ù$5/v2;,ko8,xPTEnS[|:{HqjtVU!tRq$si+2!ZN7Sh{&>*['$5˄&"1x-?@ 끀 }z$Y rdSY#1>t]ït ,PU^%hҽ=L ?wq50[ =scKD 4m=/`U|ZqekenPR廬XucBC v4Biȋhydpt aU]$ 矀jCHe,^Ҍ=Q畄*Sl xJ(w&e YcoI AtEjF8@)?vB=%U1DQp[c<Ц>ſD]<Jf= }Cp&!ݘޟa:n ]@%>jth OkŤjz~ вpplhK·B9X6" HWzn@i$FsTӴI'F!'s ppSO(syC 0c `95&" 4ӭ;.$6QAkCY TuLhr}dZcYC㫤r-<6~)ف9C#W."9eHQ X!uj/6%/zlyI/Zm 9W27]!Wi^o {>(Տ)貴sL ~]JOD'=,@0mS=C;/$!]䱸ZX <u6*t5fْAY x!z:I \ARtΟ7ˆMQ"੼9[0)] `jFNz7]q(b!5C5ؖLcٴ.BQ8\<0x>0ӷ1{_)&\TGö- /J`/HԎ[R,e|;:lD//5H0NMzZamzD'1+Lig48exNa-i n {k"*$ GoM$F~<Ѧ8g2 N:JX^Y[ֱ%'\%W1h?-W\Q!A cڝ{@KHM7ݯBq\Ex)6m9=@c>?Z /eq3:$'r4{K@߶؟яϧ_T(`݁FBڝަ"Vʴqu7E954-cT+=l ?] h3TE_ƴ0A])r"2nuqmf?A!W\MO }i CHQ`Lvy[q(G G7&$C8N 29z҇Q2"%CVE6Z3HXہгSZ?(Ǖ[ET 0pzQՍ:I/` 쇇T8X1go9Xy>,#皢(Ў;ӎiR栽 Iw&ߋll %Aûdp(h6-k~9t<o +|>ku'"Zۗ U33L4y8-a8 4YEo//ِC̟!n/gM89 w <1<0FaP aWm6qMB~-}Ov^a_;-JmǬOV G_dbνE# Ib@4tFU^yʎS׸[ϚLI=21W$,1C9f{ T{q%zOe 68UJ'hx+_Q/ۍSbPv 3uɒ=G%  8TBpyΡb.%cPkO{sYЪ/Uqo!G`|³>C|dMr t#I.poDr I'MJxL/`%F%Z[JI. OrtG,޳Of4$"%'!-^RH!EJ~fCbMTaON(ΧlcTVoڠm=&KRR3UG~ri\>\HҒpV|=,\S.B5lC0W|zQ4Ҍw·w*~k\]4 iU}q}zr #jDLVqwe!`RGG֮V;82&nQ{pQX]GhK~23"7O2s!c$+[k oS,߼tYm""ۼ d42=%_Ö^AH8MsXlͮg:!dx%{sT#o XS/a@A1%ohj&7GZre@Oexs8/P%cyqa2.χ˛F.9s\f2@I?]i$p>dbO*PI$6{;wGkV5 '5$"}N>O2ةDHv]i*]cCYA23+2dۋߠz6㒬;@61zv-KYXڱ-DHܗU@0 D `I__[BETFvZl$ܟ[Z-A/S%,B4oqrd,K }ĥsH#2MjdP̕G= Z%1 `󁫨ܦbt\UXtty ԒA1>xvVKgCfJEX1ugM B?_rg83_Y }ڀu;f'5Уs6GqVTzo S֔DC[KEm/ƥ7Rˮ86 @f*igLRjeRlzpYl%r/?` DlHxz-*3l̢'>l=Wvs3X{GNpxe28Κt-2 +F #/n2\[7*CD-|pYgttsvs]4{q^cB$&O d,(pH@v C2iY_Kd&a:"&Dk *2Se)»[շI? `Hv#vȽ ݪ-C@V"?ޚwEŁf AꢆIMAkViQl-acoc=9uOU %1RΣ[b{l5l6b]hCyv ^jս#Uߘ܆qv(ifePj9SG~O ܩ +C30Zf-8%̑W\\<[$%Xu% Z?U$^a{>qN qg&GaTQ~fRjݸOͰ-.gޛfsK^uf1.ys;|,e/' mBF,]j#}ԫOѐNhP+JrMsXZ/,s~@4zm`_2``LXJa"7 PYp*R_=+2[|C*]] #k}"9jF@et.] 8%CI'X OPޒO"OB~,ieaP_]$KLF|'-=k; BJu; K2- KIi#&"uWF/YoW~ziF4)_8tV1q0ـx.M.B› u{0WZ78:MᘽsrJчZF_ָ;CˮqI/=PG ~Rڶp-HPڏ og,eg<+Aedq_WnܼƲkwcb%/6`6:&^1e s ƮO4зy/@(FQŅzA*řM(c_ɿ=o>#1h\)^gST7\<<2ӰoӸPFwjxi -'BHawo)͗Elp' r@6ـ8UE1Q2}sNvn:꟣8u{eY)-늟4(u仕Г׬ [azlf飛G3B+v..|D>QcN\RRXίrY9q( >x@غtH5`IL1ƣCPRy&L8=*{n[,p)`u0d6gX?fwd=tGS8Y򎚬8ҡ'αNwCl`~Te[DS9[Ex_=KƳmFkT?LCtƷ?"h-WeEF7CPR)q"OpE!$5 lي3g1wz@0vM$)%Ϧ"e0| Y͂xc;\IVGC G˵k@?EC[OhSyC٨P"p¶ R\JcfN$s(z@2$meBF>? J9*N=r}+@+MC%6nQ[3o zGuoxZ_Yx)?1XuC%~0 .bW37>Iy)v2w@_Y.:bCf/#fB[~R1jee ; |9 soB-GmRucĹS|RW:4ą?нn7+xŬ @.l U/bTC憎`{b{RN z0X|P^馸JCEc/<3u[b(:$h9ɑF±dyͤp"{arR-'iy}:?x55EZC%RˆT@C#k G3%F9Qrc`΁ZyGU:6 ۚG ~= ј^EM@.Zp`O oYXf F{Cy~P~ 9iW {2lQ}ס*!_FU> \Ɯ꧲[(1JZvzTS+4hm xPtH.v&N94Kzʩ2|7h_YYvM^Tf+(a'#2g1dGG [E2"jxʿ6tS1p|w=tCEƟ"l,%C`q?NaD={B4X xoI`f>˚@UQcw `; @Yk$Bz p*4V걱 4 tG{,8i*-}sL~c^ΊUQ8Ro2&oӑF8*~:z_벫)g[h]Y _@SVqAjMņԋ|?'jG,R/$̊e R+SV~(s@ tl}u$=UR9-~,f#!7%H$8M 9pY@?\Y /~ż{ǒfx 5  Lx̫UP?|nS}(ѴbO/3X|]"`\uo/jმ]@Ρ9%HQ] T7w!rݬ OhGf M g"|t Etz]XYKF0$*A|𡏼OvozQ2;pz2; o)bQ%.O-'" D PDVXb?Yc@j9Z|2|- =Q_f6Ώ[ϬMה p?Px c͋[ɹ}ێjW!f6rm)4 {o:ĥV-egW7έeXiݟʗ&e $.L"+v]uiBA)q}@eIdOke_ Z4C!c *{>)<$D꓍gWaoP!5r/MjKMBE e P] _h\8@BH:1‹UuKVlU¯CyE?L!1n/ܳM'{BEirdq5Q;eB?0Nwy(iw)[-߲]m{颹X3X'{;`  Q!o Z*',. ,[v\nP1+JtGB>^7\:7x˫ +&BkDݲF+qz(DK9} g1%s?[XVz$Ƿ ,c5 %$:;jYF܏8$:xeӋ̏N^]F@8.7F`FTJea#fȶ7 .7h([{ΆX[NYu_!3ܮ;@rGDcF68`Daͼ9i'+XaZD$r"gxS&}Ť?SqD&.U\tAOhmZvàUr/[Ae,ĶA-D52 uU98!fώ?5I^CWa\?_P|>$r@zgBf\ -'FꭕQHH['Ν"eV>V-1 {XB/og˚ŏBx-*꭫1^W n f};e`'k oT{HBQtBS@ nVAJ,b%AGR{Ρp0%6}*N6AgկepuHK>Cguld+[؆-m)Sr+6}ȝ&GZgB,6t,/*k-.V}Wj3?ʦ\q@]ffOwT$j=KNŚ$.A$!Zc]2ۤ$FdZP*L95aaF."==^Z_)W@9:\[r|ؿ@k6r2Gci5ږo*D> ̨ln.AHbڴwҖ@,P}ֲVw_o*^6^#IABs4:5z>oa/jAJX9E]r9A@_k<(qh0cτHRdQ-ќX+ﻻN7;a  b;] c{?`\PZj"*Pnu4zmnS f$ו(u5£ AM ٙZvůTE\&B|N-N̈l>fJb~cT5SiTvq `T㛙#48NuJ8y{K(&g,ʘm] Ӯ u@gA]`5 7ɭzt`}G(&JvtF>3Df0>6H{sxtRJ0Xy6LJFp =alP 867t[>Pl}Tx(MN '"a2M $h7JʠzKN(=T-_a?- VΫ$[X 8_H8JnվeS7abET82.Ȍpg]Ix#ɚ|e屩 #ASȐЖ{mE0.oӌ glwfހm- ~%q \$.@&5)G/9='b0rlHݺf.p}rrMh5SYRwA p7LG֓m@+hى`iz p7b *2<)sdy.ӱQ%pyU54i>,=OLG]aH3嫰&rjp5l-}, _q!2j&kߺ@{1 eǬ O[<-IMݯL *[f!3z'J,jXss>tO.6X~wű%I&W.LaNddz[?'.ݔqCQWtܻV`~Xس9 5cM.hۺXl:Qex.&mt=+ϘÁ? VWs>ѹ'92rt@i{Snn=Q.9V'<@֋I6`*p/|Ber9+yv9t1Vʪ=)~C:ڣ^\Χ0vbRt.<|=A!e\sGzf*Db+ˁ_4x5A 037{]:Ch{oj*vrF BUo?BjYR_#**t8.$=XqAia^],-$b} XHmKqMZ )NU1jf'o2Ax^86h&]輋iS:+戍F"&xIQUw}jgDV1_IdA?;ulH$c{ӡ ҕ[HUD7cE]ʜ97ēYsslSɫxTY3<7n#&bvgF<% #/nɚ)Y#[`nՔmyX U lrZ[Փ7Hy9C:`Y0bJ5'qw^Vk42OVjyt9uD Cx !I` ?SS~O&cfz-oDq[>w)y?dlZ-K홦7sv65sbgYp"[&fe/c+#ඊsZ fWBDQ @ZTwZP&![1e|wZNri7\kDk֨DAa6K%3`z>NtQz. mQYES׸V6nTL =ބ>~)aJ E$VTNߑD#<.B&vƴ}75׾N@.]bgM^s;Xl$GـC(`S{7Qr`ocn ,T1h%! Ԯ5A}3//WMD@r c۳` (:SX95T6 o1.ijh`?86h4ʢh_)]5fid49xo$Ek@hiأ,H0BA<0 YV+l$i <ƞaŎ"uLU ?4P{ݽG{o(5*Be-LNOxw* J8%)6]--7d6T7jsP텖$Y9;}׭eu77Û~V{o.DRӐmQ߉ӡbY*N$Y (!U/ NH+:'-7.[_jc@=i7d-FW}מ{@ЏrwGs{q'$FZk8 VFjZŨ/'փO y>gM>G1R2iȢGhKٶ50呒.Q&-x=zhYg;qka,0_$햂f\ߙOl$x0ĺhM{7턮=j(cH_pxRmqRk gXN2ijُHʮp hGHB 率UK22I \E=톺.CKE]RYwP s=텗%4Y-03BC,V[) gh?A _ר? >`TkLˤ$^ZAh,+l'ﬗ'ZpRW%\vAޞC7" z餭RW,H"VJu p#KNεd^uJzSs*ϵw7QcIu'WרlU eapB%$/fi#VyW%Hd_K-w~2+WZl! U:Zoc1 -1RU39]Bm!2Z`MtdOMr?I:Ts5*"P 눱ҬVu Ó׬N Uc7rk<8Ϻp6-dBwy׀e@ԏ.QK6j TU4|!r@U.𡨽4<vrJIz MܩSh(ג8kb)g X΢X^QNas߿}ػeoPZ Tx-{QXy 8_"ۡYbW1o|Cv"قƭ KLk2wҎ )Mz~ ~f7 E<`]4$y, Femwfj'7w{HQ́NnCEZfRKC V 2jIcd'WKT XI@Jo&t;]u6$np  ɁGE!5&s䣜^ͧGZ9CE-߷W5 0fknK#W "}' $OFQ'uԠgh7^XZ3Aop*wtt$fPơzJ}8SR ߭ FsF{$&]fvɹú|0ܫ_WX =6 b4$6e5d&CZ(mtf?7Z~٠&Is[c?^_H}YqSa,n#[:H2G3fSA( mTY'4`4*QD xط{z/pbS}nj}|ɭ0+G}SyQ@Zi;2_ym%g7a7*Av~qbZOA@[ 3 t'OIb1b(%OM~]Ȭ$k-=NE݂G[^ r{_U2"BqRw;÷ul%4ߴX ƛ倲' q2Qi!@\f7y!9`zlB SᭇZ4rk$o$}W|*^bOwR U;< nbE3H^qTTW%`hZE8[i?knu~޽~.LNӝh. J&*s^M~i^j4trZ%KLYD&)*i%īO[@]hX8F3LnPMޗLMXQf`';P,dÿ9>d`ɸ@n*p9/)ZJlt0CVs{%N2 78N/wEZmNEcISw@=a]~O@pX+;Ss3,GgL{Ce`W<|I0b^Rt2%@KEC v&hm*V"ս ʚ9#b֌R2[ m v廩8 NxR 2˪v MqTֳ<) һ_\ZNHkon)vdhz'O$_,2)~_^q{ 㙶ә2c\<8Ly^5x.}9|P~ &1 ˦qO<QqaY2o&!d+5' 2t׹&RbM?: /촦1c$r}SDX iW] Wrw9Ȏ T8v*PN4g_%4ǬA6ރLuGx|8? (5pL V陭{B'y,(K9hlTK/sf'l-:)(!<™ cu%"KۜXWϑ {hCsf_d9߯1\7- Ҥ]{gč{5<Ϩ4-Ӝ3"X~ RY:K+!~zCB&HrWLqucj_OF&ZhjCkʲv$&V!4 6&N(R汁$;n+Ռ_n?0f/1r'CAc£|VY}vNdnHhN5ouҠ9$Zg(%d1>:ܡɖ;d#z&!ruβac(r~*;׺/Ҵ)2K~-Hfbxvki=6܇BhD0pVka}" MmW.=y{x/OTAB+Dw^O锂N&"ĖvJh RӮҭKoI$+x#wl yӌl/lV$G뚺25v/Y~)N,k vD: [6l)(^N{Ч^S|=}!q(2F6DcÕ2I4dY:%uȎ+f G\|}̊f@d ( Sͯ`o;ҡQUOe$`4 gQm3h1GF*ĘGȹ6>h{l ;n gJ?jA3 Sb]\s/mx lsSRsi'Al^r`:DDfބhUJ&޴+2}?rHnLI ϸ[Ztf=0]2NDl΋LIL}vR:fHO.\.VjZ [:jnv~]S;Pjt̉nqVϒ,u iG@ZX ՛7]ygT; zWEDsd]~:6.&X60;}&e|aj a_qiLhDnX9[LZ? @ [O{.1UhɄG -8q2y_dPjzٻ2uV Mѳ8Pm N('N"dmh'ݦ1cxe)l+Ǜ&.T)#h)f_əbh =nw4-jiB #,suñ3XJڇ7w@NXʰ?֡DY܈mHt*꒴mPQ )-TjNL*:_@K/J.s7ߏ> r*updënj|4oJUgɸfq/qmT sfU g h9uܻ#$yIt75@WPK{F5ےsѴtԭ(!>]4s\$a? ÈwZJXբLpVf֍z3gJDlyʚG??c<.>xsN0³]_FzַLzبOY-d x9C}Y,z9Hf= 8fNWiNd-1OKTǶj-k>9R{{|`\YH7֧ I?EF9 Y<[..AF7jZofL*0=wמZCx^^=5m>]ꙧI伃굒ICM l@1Z:)H.|H&Ϭ+[a',xK9$fcbR_Ŭ: Tw%mWB5%Du)WĀ ÍA x POk <* ƙf4LXQvÃ1dWb-9 8w7V@F,5 S3t1 ?(M^zA10ȅ?xiбKbʉx[bI5ߕ3V4dn].HfpxxY4؈5pnJ#8a(`kK߂UpVj&,-@b ^hmۋǢ7RR}mfKU@ڍTZ:Òv|X$D+`)8"6)ǰVЬHvPӁ=y*;q/GLߡNˇ¹ћ$zGvOΉ7 Tl֫gUObݓ#Lo'oU 5LWs'U My|4Ry&>G :׎ŏ߫"?m}N|*HW V(Hg^a('Fk9NAP Ri;0\?f27=[ saԭ[.Lj'Դ #d#Ѐˍt3߯ )+0^$HX!/B!iԍLa.5k%G9 3c'< aY!k0l7}|wQ4Mle#6P.2v:̓DcnЧZa'ȜӠ)x^ L_k@gh<3~*?Zyi]PlD /@Qs*ڙ̣vHE|VF^j=3XU5L{¿Q/ɾF뙷Пaiog1]z4w'-Hr'R[ۺxXV$]XZ:h?ZvGQ55<$QxMn6$}ۦ걚@8. $~Qd /D"^/ U{LB`C/%+*gr[w/ْ̿~6=,T-y~rȏ#? v: AJP+0=;?,r~ϩ̖TT7 ZtW+񻭹HD3@Xڴxhw&$7m.)NJc@G'-ng]f-v Ư#JJS|h z6Y_zmKxym-sի8$Q}u%޸ڮ-EA ^lM\큄 P[TĖAN/pKٚʐ㕵C`4ʴ63Nu!KbRཀ_GaD=ʺhIme3WLx6N#N#RՓ[O HyG!DăPHvF7(F弗ցi{j6{w#lX{~GZhAH/`؃keOWg|6T16H|.Pn9GBFCI-2* Xw 0s`XЩ57wfcPQ{M>F(خ0>{ 倊5H QA+E\ˌc!Fv^4Ujf}*Vs)89Ry3G/]]剁λWs*6_&[s_ uZHM <'zd%UhQCG{KWͭ5\7)6klߛ8 Q/gкlNnX.Ų/k |Zy3%uW<5ʤ0Yq{[#&r_kGT16PNSyN Z'.`sEE\I#Js X)j*euhqX"3_zˣiKqmḣZC׸Юn񛒫Un>g] m 9hG\27$g&1{~qTuZn1IE֊ 0.F\hX[MtR[fu}c'j+ o1fYLF3IZۢ'ۄl%~Nc/F⨾լ2"ү0(!g5=Qx2 Ζ2Qzi)  +sn#KŽЏWt|ƨģ8ݿ?(e$Tuc2nκ(Ru5JP*fJ,CY v^ )s? Oh^"ca!pWJzR(I79.7 ah̘[- @ٝ\V2@WE &+5,nЋ!wTQn(2>~%_PC4Dg{qb?Wp$kȷj` ì:_'] d{mޯW|'Gٗ07y?Efsu:nزeτt~Hˊ-$J]/O-%J&ޖA̍/w)LK~GI#A!eUstATy/m%4΂?doFEa:[8&?"O% D:=vqV#@E*nN&΂*+L{C:߆wg~%h>"cn&QMTbdҸ-KW<, #Pr:PN$%$s#3AcfH)ٍ(DGf[L\r;3_r&ip"I{ b>@O-ɥ79tP,w!]˯F33Dkw}s g)I 0 %P)_VD =l9*uG/{#NNؿܺX_.;M,buM%v$X}DڡUY3?Ң@&$SVCH<tTb Ċ(Wo*Qj9״.n g4fnS+I'n?r' LƤnC;˵E_íJ%_^ \?4 #!#z}ˣ2(+ L-y1R0<8 udPko>y).`I𓒂Ke4ITV &5u*܍h)\H\-<bG^ئz"x2"73 ]za|"WSI~UB`cq09ǠDi#^+C\X0Kf'<IcCēʱvŊ~v1PkJ,yHS@:M eHgP³:m"c3r"KPdqV:skakTg%# Zavjpa_ |6PNgqY47Ej,Ϊчw&nRsMAiKZA&?3tpnv^A?$Nd{?mFmxy 6)#e >XGfjC>F!,6١Wڭf5s9*VY-;(0uףjq=X- [M2{Ìyma]a헎1I\} `RZG4 YO۳56s/ Sqh!ײ vEMs5볡eL7X<_NYcP4AFK?~%!BTnj5T\rV&+`bwS0&àTJyo_T0}~s؀&iX/Ǐbבzăz/CP3p&*_%&Fi|gMz~+d'"0 58.аt8DAz֕iu(G+9!xW'˜^NZ:8t\t![0@۴~~ZW̟(,[7iJCLY}~7=z]^8cZt%nht.l*xhoS*Bǫ2-9ƟQd꤮+s%hZW~a"{K0ߊ)_j&,MNAr(A7 yTHȯ4P_{]dx(N[ x4 rf4 !xi@4nnֽ}M"b{DŽl!|DX*6^}4@cוD7|AF.&UE(Lz?2\T" Z旤m;xd&.#avDUՈA 28-BTtq[M.FÒ]-?IMY)w}yC,mC]㡤 _]|5ۻXWD. *U7ɃL]aI T:Sѫ/ jo>u0i}yʵ-$b!hlE*"I8{3ß>#61FhW v[[hIѝ Ĵ➍՚*7d IA:!wz M# |y17QhYIQ*THRFXfS qlW&U0hqJTC2"œ YTU#f3}p gNEr >-=BGT_o[9߉AL|5aLv5WNfP` I)!"`~4bv]* nH`lG7 B2pr>]eᐖ4K"!7*]o,:~\7#zE'U5x{Ɇqu#DWc ]*¼CYpQP|RXcVduqCP05BQ !3a_[(zB^KZUX|r * ,:$F[`gwgUUY㰐N1*aR 8ed/T  @.B1ڊ.1*|o{…W>8]9j 3Sp% jҍɿ@ŠR @ZkNUPjv;ͣ?{)P}x(0Z8 ZZWqCCCG GoXIhKiqĪdTӀ5@f@(.hBo.#0M6begBfZ(B(XszIwx;g1( .R-[!/n.uy vbԏꖎnq~Kp0s(3,ΆHռ!j88?LTǯ_8 }W.J'݋8]؉JlgD 7mYv/*ՂsP,-y.:wv2Z:Wj(w'եX4P6iW85wHwd&* O~8ި|ԉ;s`v&nJ_8*NSZ^a0Di20f;F{3qsLE:pZ/p@_*˔$ڙ~5, vEx+8*ǂVeģc99MҊ$ʊo! "x~yqG~lk~% ހ9Z=٦P}*S1EqV@:S_M"Bsp]+(fO2T )Xq q/'~ܺo6ݎb\ENA8|^WQ*/[=1,;nW~vmu}Ab9[ ޔ a#?mt#@%U<S&ㆢaz{ 㩼Gf bt[,X;fIĒeZh&->6vt/ZvQ*f>G}z3s*X3* Pƕ?D63f$.;,%yraBb_#9t(KE\8#Q\dZf{TY>=`FUW>U40V EFtOemp! @>J YoE%zzK}Ϟ6e›΋@_]A"9Gp B*Aa* F칫?|:DU؟[3&q0L %EZ[F&h69>3lb<!*99^]?8rxgS-9K뇐<+#鸐HhFh8L +g"Pt篠#H"PÓ.d-jFͣ҃55)̼o (B-2Һb}Hnz&O#x\K&GEʎ]$)+3j#:G%HdC߰gu_'0/[&)u\KxfU|7"`6A! pPZPOgL>,ϯ2Uy-: 8(8&,9-̙8N0S1; C%jkW<5Єn` Ru:_ƵBm|AM}z#-(=0fN+i(Dzd0].Ыzyϯ}oVk?[]XcHcD Msߩ[J<CR4_yaW^lIjh捵0( 7]3_i$Cyg…*aU) 1a $>L,YаgiL֜ic/k_VTB| 2U#.|'p~%(r&m$#6!F/`R^j6_ѕƬ#o{9` YȚXBysoT.FBg-7M={x$tGgk2bP3ѬL<(8P)ȇu:Q>5%s֓ص]qjsR֭GۜNT`y RZI`_]#&w-gBt{Jx豟d gCт۴- B봣$[,逸CPKX6qa;&l(hb;ӕ9%D|1(eCRJdB}S2r'wP õYc]3؆/_?%J*1Fn|UJ} o&y_\WrR[JzYuRf}sfaUp`GD*-;*_\;d0.gg Gtm!41ezd hq]ZXdf-wmFvHEW}KrC@8CfcV??椉ɠNcEoXyyL؀7(E_o5UYxN'TUZhGxЀgqsLo[֝OE.eCEKR1:Sߣz@ofHTbLx՚8R?W>MoW] Hr痼4rnjMsh"o7'0`I~zmn,;ۂLmXSx 4 H \<@Pd",N&jRߍ i<,-kaiHn\Mk(`H!b^ü>OWLxMM6 Ăt_3OQ*W9wūuŐT#&5FѴo[7HN) Cv|T7ɤTe\A/EwטAl#qkpc++ ij( IT0Z= :qOα/ڟPy8>#nΚFJ _@Lk"|^37LE|wPCa~?a1E|=07lJN,q9kE7,QdjwI}w83:׸n>L ~S$Q!4 YA"|]2\׹p^@ o!֙9I٩. T4_x ^-AeQaKM7 —I1°}PzaCOQQ#5J;IEG>7[%PwQ/muH/d4U*pqա4f`kV~-F?gOԨwa ]Rʮ,SK#{cw53fymNBNFruRj_V79h#h6e>X^GZ|>}gJH?oXʐݺ])k:^U*2B"N*h|2v/׃&jbL^7P_9 6Y7X)o.ѦªJX* H5u:7c²ESr$Ԋd s_' inɫT+h1wB0)|2'Is.+å~YEw,dSmQ}<   +gޖNSL:l@=X^t_ڑA'܅pdNmbS Vwy|jOlԝBA[8nJy{ zu5t.t8)ma.0 m7MŶgl\8Q,f<(v;h~tF' -K?.1u+-ytZ㓋NN#V%"ЍDY)4H+!)dEm_F.Y_Izx2S$.zD^H^)Q6_\O,0QY5N'3pmJ% |Q\v`p)Ç8CV%Dp}qF^ޏMm˷#}cQRzV@ sj$nAnhC5xzzwh9`"nClQWbD=(?خ3ݳM@~n5ߵ-?—~:Um7Af4*M\h E|= $BG.~~O*mbT'n(Kl§pQ[ +o 0<+<\e} _BI ]Y C dK -Ij&-:" ma 5/ _ZYso) QSS@ Rkl(ˆ͠ +b_Zf4¤CCmypĀM5F&m(po- [󊸕@,1d(aAW;#^^KX& fк3=3 ʾ{$ -v" [FS۶tm+_~>GPreRF*r[ Seԇpdd ^O[ǸHq3nCWn1еxcA~bwфpy'Mm?iZN[} 7eE6֣1 X+C>$͋n0WG\bf_Hm'|MYPd%I7-ׅd[h]KSJT1lV-(r /Z3AK{ LT,x2*d^k|5@a?~>Bze_0ֱ&~Ɛ`~$Z/>, W8_:J%#It9Fq-(G@$]h(9-ay˻|3IC^3_fRŖxڀg*KZޙR&ѬfEG!iK՘ Vx;Z߇&q ò@<`shpi>2s43ʼ}>sSheBeC j_ZDEn²$#ߙ(Y nྒ*) "819Bvha(xHϠWSjojË3Z-N?Ӥ1OpE1Ȟ#G ;nonM\^ĥ/W42+u!OWs,8zLܭnǖg^ϗvZZ{PY;$ELJ"~?O9,ռrk ^nZ׋y$(D?IO?ֹϤ9ܚ7%(hPK>V$~- 1+Sƹ7Pѽ "YnQng~  x2(0_m`Z80|09NC[eGL1\b4h 8)plXO$jaou8]Aϋ.PIxӚGI,<,RojQ "Ip(3Exq|B.oR?Uk7t mk1FՐfXQ Vxd+(L,Ca{o&+?(>at븰Z]AVg_7;Pxl}+ LҸ8)(Rs8}NNBpvԄ)8soqQHxI8fgV&h9}Ҥ7CP஻6(g bմѠ^VJ?J=aScқ2=/; TK$\Y$%yel#MA'@ 'Hf{ЬxNMߠ 7ȃˏܟX)9s/&j]LBiZJ X~m[fWa8*P̵aj,HI2Ig+M##@' {vܽiլ;eߌDn3''< 6JLc,濥6-uze݄#}'8Kwy!8){CK04XI0B8lY l/}@q:#Z*H6??ʓ[5^5O)(iI `iqz}pNKkԕW8X͉x[2D<&9rH /:dPiuHIi}`+.Ú#CI;7E:M$NzeV̿!ݖ=޽~)A@>w vN-0ڷcMFkni ԩ?f@B[ >c'n7A~D' n'msjS/ō6z^T;uz]jeϮFŢ.hzBqI?%z=h0w\mCV(!r[aEςhuF-|R z%sVl&tZvֈ>=$ nf[WjGci'Lǚ0Z2Z͉N!Z^s]aypݓ VTkK _CCGzRx}lr7k8#9: 3IltE3AOCCb GFm&kopς#ÈQ?/n :ћr/dy ֘ Z9^X{12y=oڦnq 6T^HUc8`8Bq k.[-KVϱNT9Ш>98X -R1ˆm% + C?j>="b,Mfo1jpߪU3O ih߻Nj@LeL}q)5H JAi$-aqy`LCydfb4#HGɐqi: R+}Ȋ/B|~(̤k #5cx}̆ FOuHu@b9Y v=Umg{BՉÕ )ӨS:ai+U%Y1nFu@8vۿY[icڱR!ȒZf7ffXRjIhoWٵ}S zct`ϸ>u8 bן+l_ӛH^ue"u9C곾.?ϫ=-aҥJJ\a.7m O].rO,C0w>a}2f!a **r<--_G" ,l(;a 3ھjԁ kX5iHb栂]Jv0KK1{Yt} +l=,a1a>u r>0 Rp!}-O'zm?mAA d26pI :dR%O37^TӷxWB{T2U b'k}cURJE*)3Q:1 tC>_H6Pp>u70k4}z4HϷ0<\sOupzI#0I.7NWtiV1aѺfY,4UWJ'z/#btҵ`}l?bRZB;\Yhʫv ifu.@09},g>tܷ~/oZ8` ̏iz[g&66yHzʖ246`Z~+9Iۍ~T)ryq\ཹrftv*24|/gHXH=V:2CD\zr-LV$BmqF?F!u@2>>S4Kw/B=b`djG̨>j*`r7t_m|)-D"~͘ߞ:x=>z;O,;"Y] ܍zl1v2 p.*-k?ϗcB+ n|3v!x1vW¨$Y4kHmadm ct'Er æoS W˲tW,}1W}>dy-zXye}Ex&d `Ip  u/.ayUii1A?FEV[괡t%:xɸro.D]ƷZϯ [#jlLFBcZX6mCOdSqjx!! { nj[tB{I95XF9,Hx0DR<XMAyZ٘DӬéw\"v.fP'B c{J5Mr~%j2FyTHE4&I,'Uz{٬o˼[Å^EZr3BadCz\^)$uwF`P6lWqMQPAI@8 Ϲ&av l"=їȖIh+EmVY0/qX-} b`RP[U)OYWL{3Zkgny"vqcFUq?s#(sy.G?r5:hG%^e|MPE SMvֺxql]4;o}N47fYgy]@ G)2qJ?Aן:LwO'3nr+T %^vOq ~8 )WfْH'j諵zւF@(B*E Z1N\p-fWlcٽ7neߒ . @ ;Ȩ[/ dڀV(<%C?_"ڪf}*= Gl=}:[5[k7 Q -;g%ҥzbۑj3R-|wӃ +pr3LtH~UW/pQ3dVɶF:Hr"E$ jz獒B B٬Zhf2~(JtY1!W$w+I7ş 9.Y;oipCf$V\I@b$4ž0byBJ]mL-) VL*:҃e'noCkBEP8? sIv8N N O?OR0q-#7Lp)c9(EvA`Frk[nU ѫމ}kJV\AaB<39p{/\/6kO9}=Y$L眳Xh2@hʌgd.|"9 3"iwfVŷ%]8؃9,섊Zx׀ǡO;'`?g[n~q dwJPRk,&-OfeghN/SXU$s%i렿r!NM(6y|"=x?7>IژN{%Mŵ7)KWN)*~vקcJ<}`hpZVnKWᖓH͝r[#f%>JudB-;G{s=e⑏){9ѥ1V@?a  ~Ujee z*Bkw|b[A<'b<=.0G"y->RpQ m5KHCC\K|@ū(|}h) hzKzm/ bMҌUչG7}Fx@SUXmAlj/;ɬj|E!guMuR -Z8݌V9ۛu<12Ys A\̷A4Ʋ(粸 %OrqQ tm,vz|l3 |J$H@4!~Ev"J56q٠ E 5vAc주:v%ah//dBu}r}Kj%3~P &h XLFܶ(棯kt>"?gH?W{-^o7wcAZ%8k4Y }i=g0,|RLS*"Ļ|y2*wMXiw~Nτ]!ĤQ?v(Gik4ǭ.؍bc`~ %O0'k6GdcL#D7bmT_9aD*hVUn;XmY|` 5瑎E݆Zܭ,blK@F4Di l{ $1|>+w}0K:712Q"kMGn̵2ƈwE*59c.$ua WP[*(jhܵ&R~yp@^yxȓL7P1The IXQ=s.ZTEtH8'=8ԕ]]&%mĉ?<%20u&봧]Z@8 pKuosV~ \7ø(e5tn7 Z3 (-jŃ/U* ~La2E7FpIc=_| 8J (Zw PF25Q;+3xMt.oMa G9q^ͥ\~>"L/s*аDab [LS?/kD_7[1`b^J,V"јO$y BqΣPS3UU<3{Gߜ]ܭ)\ћ75Wd^_v+b@ME>fhF!D# #|/9]_o۪SҵCϭU>T,U'B@fR=q>{SNXͿh ~S<%2*ڰGUo)ɲ-V6QAB]^_[DljɌR'bؙ.'d*=%OkmV>IYt%X\?b#qzn`*\ ۿ҃[߯dA7[_N пLO92{/ VIk=iQ]b57߱}4f7c+K4~GLo Ϛq|&Í +%69gBM8Ul#|ʓʭsXM*{8<O>8DJZ9P3;rK_G>ȽS0%}P Wbo|κ.Z_t`W'T`˲D,D&I𡿧wFjGUpN| BY&K\(w>.((򹔺XL wA{ÇxdsKbTY4a6-"FjU ^*tXvg2F}4Fq%^Ћ!`-YP3'*"4l_0=pVe:ܿVDS~ Z{ w=Mu=q/|M?Ewo9Nx 䶿MQe˿ց2=߂UHhE.KY@iz1FUc&g;)W~5ex5/q]wY돨&ߵl*h]n44MGTc~{QM5Ek%狕igSE >Yfɷ) ݤ]+GnUGJvS̿$SH8$,튒Y ajмLj~VV'a|+lOp{HrCeMˈ(xXo]+$*6c(l؉?D$<e;~/'4oL :wnO1iR&0Sw|/%`bAln,`k԰*Z$ohP5y{l:XByd9cVt H\ 5 wq(*v[\Zd 5)2}I^T,!w*NΠF#ŏy\ak"]h4mLV(Q&j0yNOy5|nz=Z@dDjY~ +ATQq${(R" '/#0EE#<_F(*%khF<69I2)T2<@vpݗ0^sQ,VۣxM}5!f&c"IF[dWe!`0 Gi,""0/IڔC9cjs+17vK/WW6nIOj` tgWWd}z#I&+ p̤AMYqD#zШ}C|_a1eXN9YkUc*8]SzLPƅG ؜*cq 2+HN)& D~d\:. HBUk*jdR@Ѓރu%^U S =Ȍd9S%(4eۺC?h\5)=j]P|yiRT6sd4=2ȴ}trIpd|[}w+/ɮT7Kt06mo/Ki)0-k(q.r; ֨CvMSW&&s<_89[/tbǂ-,Ѱtm/ Eb ', P %ߗUM:ܘ|m' uwhDn=I[;PLCăy<ǧdZ'rchʻD|N'" %-Ki-(VI/5?<6hՏ,=]zS =vnjst KNd^'uԞ[ .{xު@L8f('u%6hh)S3!O,h&F} G@^(Z.yyt *@z6 S'=!)/>{Saᴖ¤ݴ]lvP1 SBfVn󚦯̰ :gZ> ktM!;?Zh(1rej׾ܒ }BvHjaݬa֬B̧ ߬(]*6Ϸ գxq8.5 uZjdݔe\M](k8ג7 C7 VȆVT9NG''Xw8&8§07;uNjWQ$rKzW"9GVƎ2ghUcGXt/3uU{r<eYNDTT ?g,c_Qeߴ(S,cm e}*b)52Exȕq (P`XWnNYWg*Ԋ8'rN 2΂F{;uD _///W^ٓ3<ٟhz0:39YJ]ʫ)lSLώO1qP6!=l7ru(oHd tY`&4aIvi_w*5jN#Rx~E#E1%y>uc(,;[Z_yuy0 k(qSb;P/&ȲK^r֩h[lY ^%UӄNdEY\ ecq>C<ïZAj(T&"m,RdER yaZ: 6NL+ej wBNdekv88C9m.h_{$*fzd)d&50׿&06^"!⫑h߅Qw*[7jS~kG5\1a˒opk%Rbo'EKPuE:1&F qϳB.Ӌ_ B;mSD*L/KHo.vV#cpYr 'g蹐4B}3T9^P]Y 1N#?0F"8tI4P%3Bqu]^T3zRo8o&3 )%"O 0"dLpy;UU rN~kD<3[hvj 8{2 i"I2jv3݋`RwUNp,%xj%"S' |.ҌXإjʊ s%l^:E֣YRtx06B+އ^ɰ0G[>0mrkJOv-(% })_L;_2|3\"ͬ'ۛb6s]p C}3Vt9-JKxk(Z |ZUk3>Lv$U'8g k(l8JgҲך2\yX iH={uC#d-촼55Scl1*Ln@'p!IkT ws*E[JR]1J"8daȑ(NbXas|to.|]ܣ$h_ iMlSvX`šWPv5:>JIk(3ne:ő\/+\g龟)}뢹XNmp]- b_7UzUT)EJ5񫏿o  sۻ$,v Ӈ"5bCa @0JiW9p/*.r[POߣ~:3_V'}8*aub1KÓ}WdU؉Ng f>Wp̴Gw.4Z}ž[8rjϧa 84!T}Th`L.@X}ڨlm>G-`k]E5B[z룗d1Ex2] Aqw 3X$|_v?갅7 NqYީPa9mealOx+ƽ.[P,8YRuߡM{%Ut1܅YC|[Ja[i& $_ܢ#wd3HӚuzhUb7!aSSK O'{X.dU_[ t!䌨ҪĄ!, ԥb9rٓ=e+ՎoYNnȭ儩5r}~Rs3E=MV/R9=z9qG/|Mõ[4V xI{gɁٕ`>BƎ;.dd2-[r+$%{:Y,+jgXS9'RP"LsrvbK.T?- 94 v,%M(V$ki呧t*Mcv&JTD~zM90?DX'HPu,e!3 &cҫ_a㬯UU js!Ņ)Z 1BhmuiACU]&|Xg4jhg>צK""AqC HmvUn |ܻc_A`\(:KɁ: q@RUq[ـ88o@f碧4):*ܜ (f_ajg2J[Dum9ݙX뺷sU70#H- bF$ V!WفTlŹDnwQP'PQ4NkΙᒍ.j3ie9hp7>PG&Q ӓUBNTz0A+D5b0*_WyDxϚyR"~^!x8;ō K<BtG~:1M iMOm}Z4w+ֵB'RԮCٷa+5) C4b=5 ߢ;*X>-c)Gv[oQl^3n*JB3Lr󉯹%~/IsA~XYc7%gȪ=f!eck$آӪL>uZ5L'5Vą!^(^G7$u4d6| ҳ9\+ipA>څ7y]r2m)=hM{_RYD*ݼYaIs1a]Y $Mw"&XXݰ@rxpXb[|gu+=GS$ҭ-o:k=T9D`y1/g[!sm+DF:פ-r=i Nf3&TwB?˩ncq~/zG bC˨Uu9FY(J  ozH1[%:jɻ^oh7_5\̜ tj!hsBQҳ\< 5{Ku|3lD'] q1o-lKD?։RRH|AVikE/Bܲ*:W؁F !.ѨZ0Sj94o,)ŵc2*9<b*5^oK{?Xkl?t[7_gHD9zUzxXoju[?.װv>|o=\@Ft4/ך`Y{sO_԰X) xb[  q >vD.O&FjUbWM #yb8 96^;H ,(jfq~M4 `ͮ8HdSZ&cE3 ؝LPtP{ϽT^Fr6oXG#+;9,bz%vyH.zh<dPi)Tq#"B]84^)_0}o'M_r?=5D=p)8Bt\a#Z36jf;w4YZ0)K,Do(R[7^zώ4Ka{ ͖ƷcĞ'4Ll:^='y]9o9ȃ~N}gM sgH<$/0f*q_PfAA樼6uJ*_Y 7.RK^_GL7p]c=]/mV jBm:qPZ`yi9،9(P!m/х(WM^ϠK_M%MYγN$t(Cb3.p[Gɧ&6_MWiŹotJЖ,kLGz+s RȌ\ձ.6R*_2۞AC}E:$eR+4# .꣰F&^\ߓ܃ 8@'`_[0{=p\2ƵF v6X<ǧ9/v< & (KGs^5 Fϱ zOވN=Ú9=E[D/50|b0&H0e"Mς`UfG\U Usյ@-ЏaG~ KT\,ĢD܄ b8`ŕi ps9f*}v(A}芬ēDĞ!,r"t;L0~=~(8Zݰ>.mY\.P,6kv[]kkJ>Z`- o=.uc{_RG~ǰ lIJI IzM'%ȑ[nnPv$cZmU8ʔ &cčl*X1Q }O GgE#T[0b.Ol'Xmx\V;vzU= gTL=nY}@"q[xه&DK1A(!;wn᠇FmPd qDl#d:'r8{4enQ)Nj68Z9Xm49JOV6y&ȐO}{uB ώİm[!i: 1E+鏷q]ЄLzJR$niy|&'(k!cYm%<>O4"֝ϳ$S4]b}$!R1бd(W\&iu뛏|v̄$G50Qc5l$:~r"g=G"l;n&@uQf'}z;Ph jY\N_U-8/rKi+XU_r*ܗ ڀ4aHhJ4maMsؾycdL+Q- 09Q=z.UUEy 9lۖx;`Tu^d^C +fR.wb#Kx{H 6f(H:8M"K; /9)P:Lг(V$=ӆoH輻l#Yqyh 7>qfr$Gt"8EW{WP<5J$7|I .I`Xw.htO"H1R^5IP#o'ޞ%nxo0&WAܑmm]8{,B=ߧhL x Ug] LIw`9A2DtX/kk,W+tMysF ;`yQ"xym92Qj֤>YwB:WZ]3Ng= ѥ^0-WI9om6GqNcOO`'>$$o_9m o"yQ I^CLiR88;qc3r,Uq/BIz C 뀽{g4Ux.lXo2Y/KE{9+P509T C^c=T|e{sxPMJRZ''Q&a `K[a=*Pto7QeS6y~},i+U,ia,0 c#(ݫ1Pzi"r^AO۵\rUW5C<х4HT!VtB.aoanPVg#0SY5ou[0ۓf) Tg1&_NK˾R~ޥE d4R͊.JsO6ۉ^C6ъ𮏼x[g1z>]>^lJoRl>?BprbJTp0 ~q] y'F 9p|fQʤhUj{0θ3{WGA]>|+%cCRYoҽ,VXl{xĢOU/(+md~w=n޻+]2b,Sߣ<ѣZhDܫQ;[\\,:"cDy۱<j6?*4ivM$0a I{\ 稃o*쁱ҵ 0f.""IZ)y!_оNș"ߜnaq7|%:̮TΕbG\s_ x5,郋RPpx B^DW]rR.UaLiÚ^Ia[z L"d ɍe\1)@XuOҢȱyG\p!,_B\ȊEUP.Q:j1A\hNj^{:5[% O1AIbC}\R2vX'ᓃiXIv;"X*jNyn&ȇ.8SW)UxmF\m$wB/,ň3^NZPOhZ$6ũ:84m٘喧,T}Ë l@tNI;c<8G1~YyrpMjG`"u_[?7z[O7+T?Qm.N[ D9w|GtMS/ZdS^!ـS7ϴ`ZJӚJqs[+o\WO6[h1$T ǚ0ۍEބrq~%\1CD\yp h$xKw]٘rm@! #&6~&n׿$ #5ۆU#ѩQvWв< g`Ξ7Wy^< ~~J$>j0 NHF@dڂ hL\<J Պ ,7 m=i|w YĀAWi@SnPL2nӵ-Q_em8.KXbbe@vtUwf)" ـkfkmC';S{HW& >OJ#Hޚ1X݌S`&*>~Y4h^ByUø =zJ 8n?- OGP+oul]px[=sj % KԢ7x?Y`Xcs5/inum1*&C$ dpAAf`HK3tlm&\XFE5ȿOЪGkJ뜭rbrTuuAJKHj>RdfEJެbSdKEâRJt-6/`_/}x<:לISMj![G5b6 (w16Ro5[ap^_jC_%0q -+$9BN <=c[1|([|A!\Zgw-V#AO w<09бVS/ncԂrԎü\M<9x7 k%s[΂~ rFW9zP7z>S:5@]erޖ1;_; fݽ78 Oɝ~K8kwiӚĘˆj@bHX2`d .Gfx,+9koG܈խC=dL߱GO;Yi@ho n=h#S"’!0vhLB.gi|O1"b_,trLm]pY1; o[-v8|;bwdDE. &p!PQlI\ [ҖlgN8@L%8( ^iNe$(@N |W G#ETaFz;lNÂ>2] RMׁnYNC7v=LPv#`̓[DRp jS$נr5'Vs"F7d(Wڷ<%c`0}MtȳQX|C, wEiL.K4\O.,0 FrҸbXȟ}LfRraa^Lᨥ_2CT/\$H#l(xb-޺xwbˢ0n\bj*9)D;&ASg2[~5{އ|žIwxdQP~r4aGWt3{lj6 ;=Japz7FBǶ9tO..)%XEC/խZf':oO߿hg2)-:[ͦzFPj,s]QiïK}Q>kLAo /\(FPhC_]@NUcŹ ;boэيӓ-N7=Mv )/O0HPƎ")DnˊgXx?JDxO(^H*L|Qw1u檘\O~kR> :vY{vP{-4RX VHrآ[j_l[^4x}WL ¬j[]+4<,YjCGL3gǍȻ&uVЭUVrpŘB0RAܒ7 T5e FTk[i KCz@Txʏf൯mԢP pt>ҳL[#j Z0pS~¾/7ڶ(+MABPp[(pcZ.N*gBqHԁ. Q' Ir<$z7NHsJOVJD$(b0 k%kZ-FSZFg !FW&NV}8|5wZ\~Yr@ __%[Gl! uk 'qSnpEV`{&jKr''` 3?ؼ+ilL AeILD T]Ҍ^!V\ǻk,RĶagaWxüBNc|J&~0Ŧ9|8pW\lG؏3GPcrC8_ȣ Y/ ĸs+*>g85e"JBv+G&& sdB(x%DŽXB%i6¹T9R =]Oep7&~(g={"=c=Ǚ)%8j3ݴDH崶VྡUb$1:rÕnbHȱكQh{n.NrzJ4q?,-b.Q?{> ˡ;U?`q6ϳ.z_76qR6-^; L¶ׯQʩ9YBJ!G~S[,1?AΑV yO}^^p@<η)cb5 /ޢg dB( UK&)RE- @Rr767fNT2nqM/"[u6ȁ!hEr~9Bq!vO76q#yvUU̳ᨗݍJC1 ~+BbYحXM :իvԟ\vd]C{D~/|EM}q1,k Wnru8$-cӄWeaL7Wl9T յ{_xNپX[ wJәTe!I!8yPL, (< y[$_#ȰB<4Vx"zej!oԒa*yk(@ԋ/v nA  x?74mZrwV [m~Pv -rILB6u&oȳj$]_E]0ns ge/Dcoe`P+i"B;q"Z|[6* ;8d'Aul4ASM@X<Ih:5@ӫP~VZpv9eyLn[ >^Læt`:2~u㣧Z4q0dh xMz3S* Y956)BVe$@!F5x #߹/F\kܯlDYV)41=s Kɖ}-3\Ŀ yإ[(0寂xH܈h/C$,RWpī+5aKS r٩=39J=2vlOʉ*txEHWC)SP]U?JC;n\&АŤx}a be;Qj')ߨ{2."lZ`@ȭh[GɄHPkG|jPWKa$uRu0R:FL,ǝ?,7׃c2SWs8q8y㫰9\īݣ?HJF$˟I40.0DXfVLU-8Bcr5+plN>NjY10wR2LƤzW 7G$䪪IQ -*N9߫d3ttsדGWnRs(֌7yNJAhLq FPd=#d:|a4&*gPyx]I Gm v]PL 涊G+9<bW ("0?1CLy@L8G DkhۯRY^{Zk🽺)C S݈=zW+|So;.nX|Kȇ(bժ7=hh &J-KBRv p>f\ఈs@v"i/{iFTp}?׹ 6Vş?J3]KaHg\9oٳEH{oMvvl:1}0LaNDReI}Y_+ys%`Nx*XߣXYXR5|D;r#|[JIg=FT" `G}:" qʂi׿gY-3!ҖdU_֬W 5ֵR959գO^U(tkVe L<ҳ&$*uևj2MC`'9O2%cd%1dXBA@4 m7;S>tSIȼ[˛$g0.Fyϯ'$$BMvc3Ԑ1 m o*SyhKO 1<ȽsVsNHґ1KgfbN{Xf&kMqҽ?2kIwv=s: .jf`d=./5?CAyZvlF`v` 5E/bN7]3{zJcrø(ΘT鬺U\OU!ESA gjjdrְ1;hs`qBI2'-zk֨2U'<#eõ81\E2LuM4VE n i6˛;JIC߫P \!Z驠6RlWnLzL8NBQ͉F:m!8J<[oY@.;UxVCPy ˿KpmWj-^M3Nt Ғ04rf軚L*١ b[-MTK3c<I;"RR[kQvxs+\?UaL$NiZLPB択ͭ$ZX&0֢ʧ3Tk/lpT_+obE%D#G㳍2Myy(Yv6FoBV Su|J)XBl(~ek0@{2`e˻j2"dvs3md1q7c33n T'P҂nGxmQD4`̪qg&̶z)Iobj$fnHEцh (̂,5|0BJLկ},DYQƞ`//'0D9iuvP%F] 8PlqrC*}chg#@-f}9T oCLw ̅R<)7AQ;vSy,UVvENBx:wDFYTxRc"Fpwt#?!j#῅T`0S'S}=~<ܝW5.(@^>!аS 4˰?=>}qD&PĠ(go:5; OִhQ@ T@iU~-i];>_<#&#XjG|g+N(UL6ܽ 0Ý=l9R~s{6} =_e`%RfV{~JskM+OQwJeL,}1@#~j\'|#'L%Y_@^\iU]覄phddvPL)h?LEqRSAJE m zf zR==,~<sc c f&jt(MZηkg5+%{ P7 Dp|.v(6OM#FR|/ zM@xY^f9ȇRdk-yE1PcpM/ޔxڏWCfNzpU,~WȻ =I5 _*Mn 20.Ko3wDWxSlN&sSmo`lwj5QhZDd$[Qm,%C=y_E,_@uEB=Q]<ȷCSzP#xp`[$$J$0S 624)aL}AV:}}i isS-Gz/UA}pʷګζ0s9> DOzs[ӡjBjYEC)Ko+aÊw3 ˏGN~?bxBW.g{wstoo xSZ`!ԱxbP'=Mj(iY.;ή7L(āJkֳg:DIrU3s 1'Ω?(:TFLTԉM!Sg.j,\;kۯlMi>uX8;1+ҳG\TY$AuЙ.͍M BGXR{qboBC:1ƫ#:Fg]6>Kq95؍r]ZMk&E5^;fQ|=>h2 $b+Z18egfȩ8m:{(,_`шBWmAG5@ïPU>'ZuyLq>O{]M9 ytMpj8MKNb55XYxҏ{b  }IZ 쳴Z2oR'^|' Bؽ;ch[ՠ4XQ6s#.${f9hx[r+];AM<_V ?_ɚC6F;7*ȄkgtVE =^'JqŌ̾F"a;hΟRBCL OV2€^fv 6ƌ5Ht8̖`Jqnj!| jH0u7"I =7ifmW4G$T2lM/Ej=׆ڻZSQduy*8j\r"qtǺ!铃 YbLM}Pj-J.LlA:xF$Vs>6&No;쁻%oItK7G?G)3Cc<裡X(7Z*Qlh#ár bE2"_S׷MDNy1:ǔv<vُsBphԘ=ey2Y .92ߥϱzn3ilbJ9Q?O,WylQq4NvB f~E [W&F{:.Y/,{Mlɯ5P{wk{rDv1a1F\ه=ƃ>I ļ;āZ8{j"_`# R}"f{HΥQ/SJcKm5 QGro}=4cm@IDLu괟nFd}09tPe%alA!CeJ^ _I;2Ƚ<&ǨC*yCjXy1!!RaWyq,DڟędD]ժ!W2?g5IyևoPwJ4}11,y%irxfy(9N@dzwՉ!xT*]u+·+6al򤡈cG⾿,[=[.9!ɀ`S⍥QkG0\'T/z'Na2x9=V q{;{os?~s_jծGҰZL=Q?`Y4F-B8C((-+ϟ4l Wjc bpX=U::ITGl8K]zx-(H?A1 vA~X;A^hP6n|Y[ pMu{Ty?69ɀ$4fT]8.sGx%6RBw9UnCdw[TrIH:2jvRt`XND2mL*k& !e+V'qP+m2qng:1@Aoj[Uܑ*z+tQP~#{<5csb"]0+cE-v.@3OQ q7&4Ŀ]("x1D.W;>sZw8|@S)AK| FvGiqA~swQ=&W)av9iYf0hq^v8|-`E+tը&<<)yVmBu"L0OIMw}o(ND]#xъoX>]8^g%&8z'*tެ}~-&CYR=dkԐH^13"fNF}T߳zxvŗKu3h*CP,:)yBC\hҦhoK{PdiJp#C@}fF?R\FL5<}<`q^Y3]|y%KFa\!,PCZU]ɉg%=- }PHpkY;j&h<XrP(0J8HB典*Phtf4AF iEfߘ. 3a#9iv&˶]n7Je5 ۃ7AcU|r o&[LZ.E]W?|\J̡ 'D J5+wT_mp g4cZ:ʖpF;˪3o띍0GǸDi:ÁUqjdvcj+!5*;Т(>FYdéIqE$|Ҝ-$ȁ[+@T ,9Ҵ͛뎳COBOjQ.m/b=*>_TJz}+X۰ &ײU'J@9IjuY鶙9Cc:}ԴYTuPohP5OP׹oM{z9_e$7 C Ҹ8)Bȗm+;D-s{l JP;Z#P=`rh:Bj_6_] mCu)yL͞ILǒPSfdǾԇ!Sv.3YmYoms..$-R*)ı{*|ӵ˥Xܔ7w1u]y?`xW`L2rb|M}s"6OptQ%"8C heCOb d" wmk{_ʶ䢠erZWS0SD:!"# laN+'Nx,͐OG*E4M/tZ?GB}Eձ<%cH#em_vJ mGGu9<~SZԄmO֟ |;0PC8 ;u'S|#@J&'|?.bS:)pEwbbԟ qRӸ^<7:reLQ2AxL!3G꿩87&%hPqğgC)& M?p~F_ꛄD=umm$`^["{ ywڻc4uAXy Xhb>Wwɍ< w(}% }SS#;M"؆pok+kVd]oHH0LNxHu[1 >ମPHp+\aw]UVCu,ْS ڒ_n *\Ý2m u^ЦJᣀ^ qD}+Hc2:JPh"#}|$ב17v_R96-G{[4ɀXW!x\߹9)<={oh4?3(բScuH}Y1!fn,{fc>IL4W`E30yN.=M6^$&p_a,^VJ-C'G3*UKo)t%@XXBeS;5։IC}Ԁ IYӗW0ɢ@ |R_QȤyR ? TTTꔥC!uodx;E;^ZAՙ6{ \lh_?; |uK@p)۴Jʄ3p6Zib".'\x@Hg,u J4'BvblceB.ә&\EБ'zq5Ԃ"Rք_GY#cy׳$`6SI.A>zYy4պsZ]Q|]>ړ "`8['eƼ-W$(ֱ4dMI,4/yٙ$/wf6t:Xc3)D$E\)4#+U ՠqbǎ&,tM՝vp+F+3U/8xfRGʱV79rE]MW1Ep3P*8 ;H:  ngGSE%v4c H|D5z{PҷMe"DȆoz[Z_wT}PޘP3&91vj}b* ;@=x8:%i@`IK<|M5e Dsx8<{:7 TV,Urlkvqc<7[p9|Af\z{>w7_b]~6(M+*C*7ď ~vtK e;dTN 0׵.omyߍj2Qo:s#^ NoEzWQ1`h5^a8Mx ) eb7YqO&+2?N '12,H}38n^lcw p;Tוn]مwq zj]TY ls; ;gRYl jWryYȺ;΄OTCK>.,X?K!F]CeoQ./-Gj|k, Cp_-3l4l^ YƼPv.7ldIg~ꑨ#ZKbp:M0G+xTzi׽`IWwmb0AY7:0T)`Ƥ͎M̕]`Bמu8,d+ 1Ż[JC;}>L| )eX^77:Dym1Pt2nDYu1)G ̎nhiYC o4N8u5sa$o10,kX|׵ ŲqzXc.xWC49F^<ŝ`[F௅7թd"I7HKF٨mY&*ì j򊕋Od8+|ك}|r9OUrt~H=2{m{B/*DP*@: ӛՓd&g97_քC=f#iacY lJ}Bph&& c1K:3oAۃj.0kyMMvvk)r>N8y}Vm v;0UzUʲx2sA$׵YtL~ߋ0$zc| j[bX09VWk,P{?(2 5T LʔIuyH3Hj@+w8_;I~ywЉ?;c#K,H"<(nZO-z)v^ue0A*u|ͻوcHHݗ1?D\Vgs7'KtY1__F~VΨn=ݩ|vR j[pePsƊ;]n3܂tgozy򒌍;daV012\<'ۓR7M}a˘^_0>6@݌ "KéA$&5#Q}̸`0"AxEe;*rJZHً=϶ J.0 ~lM63*uu5R_S ۃj԰9aH-RG6b4UC#]"M۞r봚E/#@ϦV3:eM*w\޲H0Ѓ8Љ}ri*a+r#L3':Z40r3uito^N4W?' l&%a>/hRꂏM>-$SI`A~,@ L1~o=)߃Ǜmslu?jK 7(P|^RHJ!(0REŲLkf6 -"/OEqpXI?^)7Hg~j/ՓGB%0@j (Ĕ[~GĽ t|'YlC=d/g04P(3jVp8X"/YSB; Y ({X3Ccĺ=c,N 4Hh3嵍v5Rȷ "p A₈ )>:g1\n.pHxp E5fsw2M=,^skžI*AirWѠ>ɇp5CC{%97fke@]˫KmLӵc=&DJǚS#݁ RA䣄 '1Ur\G,1,< w8'Ҡ,>h:v&h*¹yf ܄/+kZvz/ R;PjVrCmQsH$ࣁzGo#].u WLiwP1 "[}$`d>h,s+@r I[Lbdt+dp}l dg|F~'Zn?fXwK@)dcB4GҀ10b'LC88AehWdRT2 i@`kHD{-` •U끰*cù TXO[H"2T3zs呃1?e|aX-Oҕ0MGѴn$IlrJzy s (KFgp.}hm!FFc-Q ÀO]% fҴLRVˈmBhO҆@[8)TysomU)%*>`Sؒa n@Nu,Q&듋4GJU!RӔkzۧf>w.qW$@ }\\45S)qM0(L51GyQ]l$&V|gتE &$U7V;З;KcN!Ⱦ^ K4c*߷$#utjW*lN#c$'7'Oj5%5v*Db&W@؁owq)I],RFx^[.lù:*x T~\ֻ쮋Jv{B.2"_ds5ӭHRًa ^q:nЃi~\c쾵c͠"o S2uTC:#Q([(^Ϙ٥vpM]ʃ1Bor=g\7.& ZW|ԁ*"Ϸ5',n SjHׯ~mg>ge E 菉CpeG9^ΓU6ԟgQw̽3suSj%XKpGQ\/YW]Cfc4J9^[鼷r&הJ(=?ظO$E;dszkS0M~#~Rtu6nJf'$?͍0 tE)'2_,Arۚ,HY\ _7#>u]HśKQ}sshsFi⣕X#l4Ҿ+hfԪޭQ1QoClRAbÀwN4jA:> \m+6>XCٽpbER{}]C2rL?i.b;\AX_\ڍ`jhcR/M6yUñop6 +e@ƃ~U5.1kj12%yodGPxbW 2EHzJ(:P0#[hp݁ nر<1ĺp] `1u/~[yQjݡ6L:s=ttYmӄrjxT΁!n N+) A6m@EO:-nM wjZ a.\ПQ/؇Aus/bׄP8w~N|>AI$[ k3l7d^Ĝo5!8+"f_-BiF;)"(-k%b;WII/L'xF+H&Rƶٲ3`/5)lZ Y]Y؜xkP6»9 QZZcJ+= y25E_;Pp-Żø SQj3E@[A8\[cEAyFPAdyf BJ$˛@϶ zl]]Ww}3!0NUb@xU϶} E՚yHGֺm`DߨantG|Qį‰㥼9lv$ e[bkoV\5G1)tn͐xLKnBMנqk"$,}Am<URel-vwւgSl#0蒿Y_ԑ-_I+~nkZAg1#4R/Ec\$Nb^>~^)6.rG/CGIZ9;@kd%/~\:Ќ2!7'5N/'3@mݹ|ټSeMp=y]%oJӰKKA!_n\$S?d/voQ2 fa6 kcREiԻ_9GUcoZ \s.iRɭG|X0;V೻)N{E${$e#LDT]uT"4|G A }@ǡ%c^7Mo7l x;*6:(|@#.4&bEhTg٘h\͍d߃1w,|u'[fz"51{rX1?{{] |!ܢ:vЮRoYCfaZ|N-;בҐjR|ؙc!72aɭ FLkх慨sXJW0uBlw= XGvq*aZ[o2 «Zkuط/ qkhe2)El@3>a rmfN2Cm\=>?B,^Ĝyݨpl+0Aeج=/?`)R@#ʲnX#oožjz;ڇeL#-$9HTjnm$Wc<[̧pVsƫ0vq* J +Qs=f&իaKYSJ(!ZDҠ_aɥN, CAyp<.4A~ ]Ƥā)N(WԌAFxGݛ|TpprԻB WN7   La x;H c+ .kEE=?Ejcd2 H]FH߳#&}:+UX ݒٺ5|m4u]\BC*(z9 adp?+7F*P TbdFha9~7ea:WEAe~3*=*g#I"(+?V0P8+C9|^^j ^x{߰VM@v1ѻPa9`ΡRKn[<~| k Z!kU귱r0!l8#2$JڮЃ=]v^dƘ~X /Vp\JvETш[JiW@ ,Y|jނޝFnL;3Lnms6,1_3KIaՌ)o=Sޅ>rU>ig\.n{kVՄXײ9K85f[Pf6"O݉ ζ{zFv{\re=6-"Y{ʽz=U }3 nO 0f%.noVʰP0#owL[kz2ٵy&P6#]nۺ ]ESe7!ҽ 3(Pi@VyZ; 8ODJCLo-7(IV9"N5Y u\s#܃cv*#lEmqK9w-˗;?fKeCß8`q3 fX>g 0/ ^`-`ˁ8Fh!_?d]75ԚX_橠m4dvi|TYh}]aF՝t P4ҳ?34%kL.,$`m^</rc,ZHX9OS!VO}8+.&'`{>AxPmZuJג^ocgGKQܖhod'n~EP y*}+phȱSA!cTlMq )d0O33!]J7GaӒF۸*}zc5ЦIfU2-S15 NU2M|'b8xak3uA`u_K@C7fr*F4"dq_Qex5Q򻉷ʚ $].ٚwB <;5Bk;7E)AvDto @KcHXԒ^6o`wyx8=(h;ގ5CE6Kq95*^kRGf/,iܤFlC;ÿ>;/ǶmY4sV)W3GZ.6x"H`ԭ7#j9YEV_Dz»XDG}e&MН1S'rw{u?󊽒蒥SI˷S-9 ={•}lG`mc$[1&fT97km=it4Ͻk<-{Va(0=+_𱪥|0Qp6U]e!m`)YDӑB 1P% +H9/ю;3vG !>rosѰP^NatʶM>6 &FҎ{2vSu>&|YǥL`ұVLߍB8\>F6g1Cx+C9Mٮ 4T'YŶJg9XBˎ2w\~7Ol3;)S*zPdK^ /1t-P~QoaR9T{']% :;lL:exbKtw<ţm@|㺦$erhAc405 rFqxH_νaڬQ9 $j=l$!/i]_DgS5Ty䏥o"vMh``=8`7 cw@5a*$ PUcbyOrg[wb{_w]qg[|$zX.Toż^] Z`GW s#Sdm"2R(%gK?!#Pp]V_ {deU3 åܦ`Mv;,CP኎g9xLƻ !D_z?|ż_-eG[GTW8ʵs"'jx רI^N^iIr"q.giClD>7g2@!Sβ*,E[+UEݚhs^;}Wӌh h3+;,Gm1`uۻ|3xAE AL{wjm.T?UfX2lhI +_9d3@l!\J`钐i-^v3ҷkN1|= pJ`(^z_!֓>yJ )bo1=b 0#3Wȇk$kK/a]9Z]"m|KPJw?^ld\riaԏE/*eilrkn|DJ*~}K9 G,]Ar9F-?IRTq;8hO/;=:2.aonZohD鵗%:KuBVF=1J;} sp/sƮݔi:polNq  b_\uYoxY0F 2;Hߏ1[}AsoZŬX_`KյFi/mg^߅aUNȜQȏC— QHϭABp,ʰƨ_q=fpOrS ) %!hp ֲ1#"']˥[D )htR!>lG08cArBhka]InZ92h ך-%MƟ#.zJ͠ ;(q`=xa kN&4zn 'խ $1 l Dߗ5OzS)v~8ٱOҜͨ'}2$"i3rV'hѳ8ޟDRڮ#KeePZbz:vDIfx=%8`;bƋaQ   k5)^nM͠L2"QQNk$e4=zCr.6aKyնو#A5\ǵY [yyn:R?IիZ* ϭ#P~C00\RT%vGIp]G7'=.eޛ}(#oH$ ySgqݝkJTY-՜8\y/!YqB_~v6Ц4\ `z3XN*yP:[̆KX-1(wOF:BU-v!wƨ<8@:;^a6bu%Zx͇,P*\{ zpy=9Zb]g\yp;Bn7bXӝUO+2C)Mhbi0@};]kNW:>B~f*@'z7I2<ۇ h452XVBmΓwd"(pPt]>2_֯@δCT)P, LD}}9˩ j$7ʮx )Q&ɳYNRt=zwL'?) [9pS Ya*Hz3#w×4'p o!eN<'2(.aK4([9E6IWYxE/qB$v .UBQqoTXzId rI qb֣H:g\}oًIO6S*7~Mx.Oʵ8x*'KYS²uŚ*_éBGw50ݧxp9mE!FJ` 9J7hZ-~_pi$?oׂXz#"+Œ4%o_D'PlE7MvO%b`U!DnGyߥĥ" b$]Ϻxe4źP$4&QlQ (Wjc짂Nlw]n0denMqSl''e7u!big;1h5EMZ_n۲QrNcs!(n/+mJ<"yzp╿~Uxar+p;b$^j;Cnsq^U2B"~_7shKx_q?X<%ؗN{v>ֲɶĵ ģ*H~E3vet<@-sXlbM6VbnimDҥ+7Z,svĨVpeҢ,]:n `N5N'㔾U`fQNl!jONvv1^d3_ gI^0f2U>K/FwںV({x-C$/6}}&L/܂NyW@Ur C;;$Esn+8c.6 dL?n3 M)\K`tm%=eN";s;LA I 4컬 g\j=!3^76b v $!yow0@E3@IG2YRވ;[DdץTzƴΊ{r!$Ɣ̣@vЍgC Eۼ +j)xX5QtH:caj7C|=GL$:M{(9SWeЈX q 4ؗ|R:n=7oc76$.DWv R['csijl^pm̚$K7Un[Ic=ț}}Plh((ޖeHf a~dkj&F5xG79+il#;6(s; A{ _f>\`6"; vI.A@Mq%3 93`\0IK ]yesWKBb2Pp\٧0̓k7x!Q)w TlUf6mũ|mV3־{att0|Jj{=se{ܶ5t?\ - ֩al>^ڛ֋(ƃ4 !J2t%>^倗 .mB:JOeC)J͏찗o,cNjMnA>YJ1z8n>h79FQ*<|q!/? tUg|j0L) fȭO|\AT'-JB ɐd8XV:fG"qՐWWK#y ڮWvrk3G]N%矊Bk=FũXμ27:#s{骓5Ўa<^|OQ^3+ɳAjՙ#5߰`N=}q6p唃r=i|5Y0դ9bN( x]dR^tܼZw-ya*ϗ/>iDT),ކä16݋qwde8[&LMsfr$~+q^e纎 ~w Wz\Nw?y+*6<6mު}䁔0اhRtJmGIt ІzhܡsҰ/;@Ś`9N_|]Pq$7H aYF}*y!*O;ŧǺA p=∺),>Vh"K9Y(گvTe.sy4޵ tseisZ0G=*:CLtp eg7;WU S?(oTPzT A#F+H8D/d4$JU<+iEԇGlgJ Q|Rퟁ!A|džl\P@yT%' RycQPoSei+njyd3W'c)v\[?xKATA{C*ɱ-Ϛ`A.ad*&š\n,|F_`gv9O#nEBNv <ΙRN|HFVZ&w*4 t8s->1N6iMAak7^y׃J^ZdހjҠV \vСQPF7 1vѸ+ ll-hݻiT~2̎STOÃ?{щ{NIE4X D PuJN2ItyTy&V_X ?8x7,Mq o4a "ٿh[3B&  ?:ÉDԨEFjШ]9|ξC"BXHS4P&#g`w !V#.u\s<0,=۽Am<+~!'yYo+I|i=έQrt%;jEP%qZHMSӮ<CB↥\u"nyp3ƫ,X(T<@Gx {և̕mb_ Jo g?0NfE]zmOc,ÇTpUVNr]6;KЋ(~DlqE ]A =2ҺÔ #C";V R 696$p^qe Uu @rXOfdРLl=ښ1ix#fm/y|] ᥔc)[C*|ݬ(?D $[Uʭ23Z4 "kge0k3dZPOp5Y2$SwCSԾ-LVҳ-@߂2$t9G6+pŷO}_Zj"5WA7?7'o9@_7蕑PR' Adͥ^gU;1(tVic7H„F%R ,! ceT[" |'%BZ_1v3V4[?jgPbfB`bQӊ,Qf2XHcϡ)l'кS$1eޘ6ʅ!r~N,(لDoinŏ #uLČ_*0 ! g;u[z2sGPqu! Wnԫt%mu oy"/.&ovby . Ҩ6 +@K5##]I޶FGUsa~qRc@>X\{UqUspqnNL ̋Ō3eNT2iSwxU9Ӱ#-ĻP]gw)ObԼ]"Eكc[<x{ۢ\* |bj:&1Kamv[ז1^> Zy " ;h=M{0u=JOS9 R)&*q>c<Ct܎¶T/eo`Wuρ۟/ 9f7;z~M,c JJ!xN%b^q*qBWT@i碚ǩz|pm_:m=ojQ,kP].f߹?^+o䐯ˬb. SWX4 ðV 3y'Of^Yb&O-ڤ-kIVR~WcqcLOKŝɭ2#Gy]f@ขv_@]60Bm7si_F19B'#zBcڋ O65M`f"=XdB%lAvE[=#\AHB3J4' ()XLqvb`utj鑠.)Έ<NjvX|S4o9c]߾- QQkHIJ2ɞ$>F'VwC5RJHCvB1(%KxmWm+"inG]ڞ2uŮSHOȎL`ǶzzG*a׫J܅˵Mk[+IPp1,%#-ZF5PM֝> zϊ ZE,@ni1jIN.݋KGWu{4XtiReKD_J7N\x%vWR2]Ex9LG-B}e(L /~_W]@7V2 ?D^$㝃 [:OijQCG.Wb6EFD~epNqCo,27?ͦuvY+I͛f/u[Iz.T/#/w n:FDZFc1!ɕt 9UPՊRaRB{ -V> DZyص*#}`9Ftv'JZ[at4{**/:d-@+,o(ՀlNo^%b'*Xk,ԃ蕩;.Qԋ7\Дu&!8aF vmq%C*OiUvϚ68 u7̋29枠UEG)"qJ!ĿY/ ?Pى9*okKmF ,ǍDլjQzylZG{T#{mWƳ. j\c/qYWtTi\-rFK—wrִh*΃KAoA`fQ2ڌФԞF-[@ #=(!lz.%һr}lOagDe)nC5X>O.=xC"Q|b/tRHa qr# 5Ev"muagug#=8E"݀MC) .P/[FM·p47O: /GĞi@LU(l{]aRP!gg|+,kcdnB?]Oo/`ȡLOGA[ڟ@-?'xuJZS|YBީ#?Ir(Jq^(mH`9R\cO#EK]w7kGA4}mdS0MLѯ>#EB5izeг!7]oC+ s`${n-mVԴ:)WѽCqy3H0rHn[RKEbA&|-b׌:Nc,ȻD}=d(]q#ssgS։;'1l'oL=щӦɒR}.-&"@:Kԯbjnm⍗'i o{Zn \~EH߰X\:VO5>Х/QϮlOLuZ}/ӎ>䏢Z)jt:D|NT22`YV2 ijl˔#6|707C 3f rF9^Vmk~ DA]~c;=x~~>N*q]ZP9o\A<s*han0 )rF)g+ńA' J$^ĺcj[`DHtI`U!M䚂O]p=y]}0jsW=,"cK]SSдay+6+X`\~6H ^[hϗ:^!d(oԗabŷ HrULa)Cѯ?۵Sz1R?Ħ]_=Ash9Kv?.5T0jָ%~=pᖟ6Pi7j<+ ?vm'LfNFYkk%2'ZژSk6s:BԆ偶No#z 0!>ˬa_C^fV2zaoN~;VΗ(PO։:Ϫ_VOPO[*P` 𷚘b=K&=H!rQVWb(#x>Bb7#Z7EhWPK50R&\n Y 1T5P$  쬮eѶ-VZ nI7Oxj9)wF;F%Q%i6{]`!EªTp~g%4&@ziH޶]clT1eK *3k*>̀%(*VrS뵥z†Ѳ_fKjK5tEWoٸa-ݣ44,GaI mwPXέvJ8 ӌGO^eYL MoCZh52/N潗>K7^8rSs\0ъp^:Z,<ǣwx>޹ e;Lmj*_6! {;ebnxsvM_!`֕Aac t?I&{DM':$,՗>'xx! {EHa&PAs S,xBNZv"ȵ9]@[f|!FOukã}Ih)8-^-iroe45])aМ3Exo84%(sA#0[ɦ~77+L9H~%D 3.3 eSŭx>u։SGͽP/ͯQ-jA=I|ҽ;/E`D1K bdZgSr6nC=7UCOrQ#)NI&]kvCO0$9g֮_6-6%W~|L/M @9 f2+ؼٲީQRQzo<"isP0$)mR-y{21:5%;_C 2WÏW3 &/4,VQ%ʸj&zWBآpGN,s(crwʨTsnAI!l&E5 Ҹw% S{Bm B!zI.hkxyȘB&Y(6 : 2w)Ѽs;YvW\gm؁ 5!KH#wڌ3D"I\F"4PoC,6=Q';TNfJL!7k|8k^)I$$ їbHw`I~6BʂR^J 6Dxa^v01\}_ J␟_51mعv=)h&YS'kF5_9k?8j6>?VbӎE1ku#̶?%r|(ȳS5۫bpG̽jT*5ZasI7񤓌NGЄ>]BO0^0^G[̗IJ:"\2Dl!HhT۶2Y6GcSȿ]ӭq&`]\x1RrEm`K RJVbA}6n}R$ mI勴g)R[_h@B=) nP@/QA^ݤZҘ?ư2NRUѿ./*]5Ǩb邮':Q0=]#eR+U謽DMMvhB ud(z\Zːz/Nw%cfZpjk@L{OŲm#h^U]lH [뇪^OS~,wJw9 %J5@o F诖u.#0pNܝuYRPvhP s.KYx':׷j?"㼧ܒ•1IweJpi}} pJ1)3n\-߱0V>~0<o'e -w"A )8KSּȚzEȾ}>ʭ8 2+_ynpxR2)0Z4(ݧ坨O KK_Sz6j@RS{M>h]gV \ƴ>M=}Ol~͈XU m)Fz~u)Uѧq_* ۂ#܋GuZjhy/aj~T@(_QCN@&~(!ǵI/B6C ,(,[iW|ms[19'5+3.c\,:t> }r&6&zO#n$>1@Cr ""'(&?Yg K(䤤E J߳7Scϭh`X 4Z$Te3f_Q!aOd}ǪZkou 9Fg}]=dIƂ&Hߕ2g3ò͐]հ7! 8ZIam7Gx pV%RpAT/q]n:($t!HgC#qi} [Aiow7Qy|8>B[x L݃.x{ksOK-?iPKW@!uaÍlq i%t`CaL><_CeA H켍8ltEnLjЪNE2(FroJ듅BHC12LI \+ $_f@e.(83YWty_ B5:92 . "m I(BPcS9X g7C [Ppw|= CӽXqe~!adtn2)30l[Y)Dnξu~4p_71A.LI m3kV,V@+QҬOMH0<ـ3LFoDq<2!.051ݗddqK$b)'hn({hRQŞ`y4Y1E 4q=/-~8"Q;$5rI8 z]o,|)fOSl]05P5ySތUEMT Z>(AmcOhXp!tVf7%it! ]Z |T@g GP6 *6:KkNQȦ!St\RVTTV Ѥ0AGrV'u<3U b,+ߧal?z5Gۺn Hm~1kR{ü/2<襁B fe4&'лy<͔2 ϯl9#o̗;}-}8/sCS8(J]_P-ј]Z0Z瞒0kOaYt6*, mPgKZ- "kU4Gpd63ʼn~;}ci) -FNѳ.%HK T:z⭇}3b5XM^xn`;mxv7t߮H{4[M[#0lY:x厞A-N"+u+1>g>F3Xz~ܹ]ѤY[K\zD75P %\G+7A+_%Sn]K3U:\x=H6ARINz,|LZ,[ DW6OK߸o> $04Vo+i6X3u@ {l ]=dCAr#v^(V-4' CrCµ 拌GQ3=1TD*?y!1§ppRΪ;8_ks֕;+ imfv\M?/*c^OƋҕ۩iDN٪akAQo ~~-SOųƩ\1:UCRXpW'oHOQ=6@t/ߧdӞRŦ#Zˢw!h8V՟, + &r4U'5]O6z* npJBrCMU$:/\h;<ݓʗ F|JR-n*޺vPQN=B^ۥPŋ.;f9fT%f0›-Vn!k@=/ؐO0),|d] \IF7 xLT}@ZcɏIC9fqË~q tQtWZh m7\7C M DxaR"'A0IeF\(g~h"g8 _ rQ%΃޻>J^쁛puϔ.Y6ت1Ba!N'8a'?-q6ؙ~c<*;raˁ&K!{%Ex|d٦͗Kܑ_#-!hNL}M 0w[j'Q=HޏՖ_ځG#xTvR|^~xPDViρfn<=R@%$vҋhBWWq0:$(~ 0 4xa24$Ўn U@ޡ$~"޿m $w`v̑F>׫DirJ0xq^'}5 M59(oOj 2Y=,s!kFMw\=4+"-,+8ulC:ްS2m۵ٽd!r}*2(Uu?c6/r[=g}v-^5M'l#ۄ cMEշ; [1Es0~E'iqZ[Xl?pY"ֿWMR-`)c :J05&"aw`7 + 5EJ܍ ]TaÈ,u_H=qdh.q DkYOxn];X,iY,[b:r-J" 3X{g7|7+-m3N카H&p喻se*AMܶp\?w!u?oAXu-[e9ޮ]-L?HY"9cgPݦ{AP>4u +kc6*Ou} 5S$0YIGY<"PE~*Z)R m 9Uc^g\VyBQ!- !ONY>n,9 *-%<~qt'rReL8mD#]u"7Ҥl+c r"oO\͒)UMh/vG>ǴŨrN^Lձx+^{AkC(6qWǵ۹[A_zSAIFO_R˝J6(/鰴tb1 f8>v) q0\D<YB[zl{ ւ]Ԧcp7Mڱd$)[v.';|8ܐ/|[#]E<' NvVJm*J$bpgNV[G+o{х$%f4 J¯U<%!CL) $reISvJcFGQqeCg?Z(&kq s<""s1ba0 qL6?t*QgJD U^| ܁x&48q"uFl1?zR؄x$ tB(T᎝u𹛷0FŻ3Im{5Cgvmz*M{uF mګnAeۼ#/xJ,^jvC^%j@x@+P VIֹ_ṃ3*e to.z~ =8N P{pbͪ%P`$0'0RQp=REb3mwh mʱ}36)Ĵ!cо| ï_0"Rl$s ca&RHԘdd< ZU?4ѲK)^R5GUCѫzj&Ru%"6%6wiq<,eCgƺU<]t]jQ–-0"bUD[:8?("77k@ 1S!TT!kӯ] [MК)1<&w>R#pZW]]4jl]&|83  $0t@lA {v2L#OwVe6hTֱz*>F6Mqs JVfD3]ۼG#^b̤;i[ L]c5 Zo,:|Y FT1'V7FXkW:N#0Q)g&wdiқA_ 'gp(&Vv/EUD_lfdSҥ dLC#;k{ĊLE`s ִN1bq~b`VI1#2}S{YS/G9ywook3b?n־Od{YFȫjHDX Dq& Ҳqf(ΑαvPemv=I7IF„mnsW}]e[-JC N1;+IAS) wk#fRE-WPu4 .-~2UeqpSvpi\f.#ǶI[|or _ zf=*vKdTeCǁ@S\`GTudꨝ5xHQg?|)+ӻ;qJRX 7w|-t=(8Nts_<^c3JP'h9ǭ#HT+͙+#=ld*) /%k04wSxs󲽣ZRO2V m fXi"A{&[TRP4ze8 $`HpF0'9:Ty (paBq,¿, a[6TS^߀AIxX {u-pg ;-JK9hr(3] WըxJQ}v!̘0`ބh6[^:L~ѵ/5V3VH'p>N4.^U^{dv=wxm@@ęS3qYjӥ1C7em.^o: 载/cuJĒɶD±An 2`-$6}OI2iYP4>"qnzVإHRqL=bQQQCpMD?eq-pziX!u#&Fv܄VD%kPog].2dGsǟbGy,T-vİ6  X%ˬQrkQ"1 ϹJf-[٢pSc/Ohj{qafi{ ݴ~ @p8:Dxd2bV~Xw~9[Ԣ_)@4 `xD ^y i)̍ kH[F fv'DE1FT$4 Hn#K(Z5F\q,T$ 3WzK)G(n{&y nu }KiGw){%;] 2'H{Ǘpۭ٣a `]5MFFpS;co ea%]XRŜyiWN!׍qMQ':T/jm=W1s3!cG,"'{dJ!]Ɖv$HZtׁ?:䌅;OpPrtM1 kv\1t3W!JBVòv_gR˳<"/xu;i7bS'y:dw$cV{Tw{Pn땮'}&R{|RZ7_ dA+43uæ57WC9x[#7亃C{|Qn$KO [P-/D}&+ݗx/u/{!<_`3ڦH~;ٵi3ha#DɿLcZg0OGܿfFISgvFREe|&J?H2nwmF Qh2<I}+,gS*^I͌/$'VRz-Iiz宦'9Itp/'5,+2]j1J 2biPGvq= {AC!T9-ў Fy0EnLgpXϜhB]CyE!wQ_YkVZj|! m^hTߘ/BAH'KقRqu-$`~RKyym'z*TɢUi&gk0sD [ 64߈#~̈TQqa $6Χ>zdBz)G^+9}[ThKdOuM{}ʑ_]#$Mz^Qq/Aݕc~tc}`s@0hT79*9)C^keąq'_{)g"]/{I^$Rߖo(sʝ Dje :fVͤǩCO?OyW^42eIN=eV6Ȯ A)pP~9\숧xώ2n9*КBК_pEih~3]J/*Ka:g0z>Njt⾬Mnp|FE$I؎;48=; k͞1 \Zmfǒ.2Uo'?<%x{v2:(:n!ǎv# ubs6wuQ9V21(#?5;p{C\0Uj*u8J{7&33~_.SVNUS筗wVյp iYL(~w{#yѻb=S a~tc3MgN=/Rz.Tm[*t @/t$!2]$g1ߘx/Z=k;R h+{V>1_TBe]=w LP~ 5:# y(X,g{0>&˧uPQȺ{{V,@}{ZMW~%WQq FĹ  Nl] "VГ=@4"5Ϊ\H(}hh܌seRYG_mD2%Dα[eux!< L^(U XeԀ]4=h3~gwV3PXnY$2SU+\^Y -ΫGū W󦍅k:(Nld?f{(E? μE /eU4MۡxSt͓oȯiH% ualVnx!0*R|O:D#Ae|Ҁ<ɾ|Aۚ}Az/B/^(_Tb$ \D&)ګo/3 :#s>!5 u< dVMYTH[@RcJy^dO)zoݥ"hߦ=vwwGZWZ3V qGIgád*GF꤭'EߓI5O%lMuPI/cm76#Gv)U? nl}U}]^lLvmфnc P"'~-Pp+ uEFjep:P?_f\|+gʹ87-}3XnyO{"p}N]Wy \2IYNF5H\ABL;C6+i嗽J HAJ 4oB5qZrF hW jdiA –v{5$ߐ߶Q1ڱ_P,f*/K]ot<hg`?Z FnF+{-hvܘٺE=̋t=0 8G<\'RgJj٠ӬӓPQ&_'Oje~ntV?}YNR䥹ubQxO2p%_.Ւ9 o彺lghLfNc*T4}(uU;ł芸)-~] ZB9FW2.RZPK`p".T%$߮n%8D>f_`yb5Ңò,LQN<n*dtv83*?$p iiiu#~{Ze6_E۸8KMTw"^䠔btϒ4Q5xDյO9P*K!H\J3u~iG64I֟v9 \Fnx=vؗ)6*xbo| N#ZDKcIʁvp (\"d寄йE u}XmCGSj^8ktE(ٜJiGioR *^AO[nsYzg1㜹ELG`y%R2Q56ݵ0UvجDsѯчf@9`~s:^ 'W$}}v`HƂ!-Tv_gX|]Jy 5sHE(xo`}|31󜖨s 9h4ɏYvsdv ո+SkW)ZS$n}j8U/e3LP%b9J]RPLpD.Nz|c(I;=wCv2fb|#i…ZB;&АI8;~u1#iY>j;=:0t4f.pWM ~G}&H'(1rL8R^{&CkvδaNEId7b4-Mid` ugf%f]9&],އ wMOCm:83@ ۇκO\6"CAs6ke"Er*~J f_{To,rHi'R.וTyicxα w/|},ƌ=Pk8hkZ_l3NbjFlj +4X 1- T^2?:+:a,Z݉G,Zbb3 dmauUZnD[C[nҨ2ߧIQ[/^uhgXp'C$ĝEQ=}w02N yEAh\0{h8C 0AVawhq4@ssrT.czkGiWhfZ %a)]:g-1N^?jUCH%+N@ol~&yKaiҜ9;mӻy!9'P3x_.FXc:Oyq>и(LEOޑf'jW]mp\r%,n/|l|dtowQg-ʐ_ DZV!.3o>bot%OWl}³+./x[{8V7xGoW2B.7fyv??oۤ,yee-UI(36ǒ2ҼE !1CIǾ vOC#=X0K4 :lRsn^ۆ W9HSeKt!8/ >s: tzk ?b`%ҝkxJHX{ޕB]¯Uv/(ENtD=`MdN=yLoO'ENcy_(U"AsUZVq˫+*.uIoԞ5/ VJ yPtvhz۟j{Y4|q`$ ]-xgE< H ^F}zo];Kw n:kt$4+>Txs]+1jWMds]ؖ/g7e1!XþUBIK&7i-ݻ*4ge\ ̅ _}3AVbf S0RW@Єn\vw&.]yyVrt

66Sfܛ?I;ϲlv t|UIGYf']ܯŹ(I*$hU3H+D^hd4❘ Q8[+_a4P1=Yüɭdw>"QI:uFW[ C=U 36 =lޭn7V-%=P^.jlVBP)cW/]֌%G1!QBNefD !1fVhh#D4"N'e/%V G q|؆c= nnYpM;pTBy6!AIe #R'f64>ѕ ,:hw{rPh@X٥t?bR"uS(=pQdp[}!6ͫ43Lۘ|sWww8;g(b?:vJH!^tG<`^\ . Ļ[2jOA ޲dw* )\(&V]j'Jd,g&2K/8O#Sqm~ 3\O}biӨlˤYbݧqknԇZ6%1D9-R`@;0kᄊ?V>Z({NJqxMҌՊ1čҾ̨e^0a ke,^FuUv-Ж7>7Y?jJJnjsհ:"gŃ]g.VaFh > Gq)]Q}+2NpˤGLwGnd^t&eYu3R1o 2g8hf >3ʱ;'&j0^ Sc6S"Ya!m,ٛɫk?-kִJ|YWq1 -^*+_X_%Z-[.ٯ=Ҫ~7yN~qVX_aZwA)tAs‚[9;^P=32Rփ]3Su?wYJu.ҟW:&RL(Lsµ jGoTVVROJDAOg1+# ^ߍnH#r2Y|؅Z5X^Ta?a(qx1m6ueQtqѿ8ƕ!WkfL xmQ$u?p.3ec.hŽX`YqI{I퇰ކ16>h$pF1s.L_4,D%k)'zb.ioCI8zxC3 Jh8E!,4B4/Ħ%ʓ?wR&$ěn?t!@[ʷ,ab}Z4bå8]#T㽷H..'}7y{"A7YOڈq2xŻy=TjV{_F>ݬ'|qD),2A޽%gPVv#zAc/Wx04~r~h2o|u!54ܥb,EʠpSqn lOU> )`_X emΤ+T"ܮjzk{]z#=-c=!%/TF{hGag'RiTQcWn]ECx:rnx3M">/0x KƒB2Ŷ'VKl"Sa\n Z,B~yϝql p+ԗF%TιX,|`֕: )!ʵ% 6zchh mihŌy沖a[[#[]д*~[+9Dc,U.)B}5aJ>tbzx}$78#Ð3b$ 9frVvj-F! 4s;v8XP;T4= ٲEHF~r^bDYIboR NQ+d>#e1 j>}{+ zlb 4hH+qlwꚢhbbuW헗"kܲY K,F_3t}H}NF}\xQSs1$}&ZTࢷ>1Skf3'\3` HksT J<K^tQ]˽;Bd1$LR~g9E/BĒ*ؑxy7xB4W=fF4Bc^d0az0ͲvCO-}Vi娻 T$)8ꯡ/ w%E2rҠd0g|$N@|#np4(GӿQH/HGƆ/ĔH(ҁO*,;,<*#AmkD[V# BL"]tgysq%}k3IkVW  &b'9vq|=P-lP8TL{Fo:7V+Le:D2馳L8\|\ƶ6qw`)v2e eWӼg $%p!xQ=n6Y?ڵU@0cv˂GܟDLz4$~_ F~y; @4iD[czu'U~:mVU q K5͵SܗjcJ2e'jxdx;R*u}HKCDq]>%p*TfH2a7hr'v[08XoMZ]Ŷ'jmWPBO}|xH3PeЪ"jeJ,X% Xļ<^2Kzq*V@P*uKa{ʡ M:~O>) LYNVB&C j,S_,s|[~HU\J)(Za04l#'RXF_qtH35Y㩕?S^p'A3KO}<#E %AIV S=L@iNhKY][j~3Iܬc)4r9?b1~s`-Ҵ2gjėru4o!=weg͆ -J9saA@~K"eʐߌ͒Gn;X MTAfM9A%Ri%UxHFUyb.a"cLne)['&8N p#3ZtN=;Yb|Xf=;gX}s}[JH# -,λejԽKd%NNv&|e_\ČU? 0>h*;*4ůծGN)2IeƮbx mE_LvRlP>;$MSNirU:tuo^} ѕ%-fؿ,= Hd; ^}UyT@A]"iy,W0~Hʒ *uox2(۸@0}yl1vBfh:r?srnWH fUeƗjJ6eJ.ۍ5Hwkk{6xm]do`j+~uSoqsqYpc;^@4`8~&^ [2r:WcGWoO2s7]xauXiC{ WXv*ZlChHM*a4dIp-|"ٔv7l]Hgd % cO5ctNLyuF/ŝ啘ܦLniwF)t02%ý۸F­Uh@?i6@c.R"ϑG+sƮ]i6qsp~R4cbNOĬVY9BΔZPS>ܹ{L~ߏ^F$nE[7Tb]:?|`[r}q6Ć~Zy;=boÓA紫0ʼn-'HSCݷ5qphNFht,3O-jtGc J"ALȣ+@ג:,/=ҍI;-"9^w9.oтe)W#6 ScZĎ [ 6 i$~q6[-v[h9[u=l:6Q LZզ&܉e:=nw&zt/RW.=Z̢X- [RFJ5+aܜk;P!<5p&5ۼtώl`ԍo/9=~g7GIQ~st5g &9,BpcF[?w#!o*ԧZ%'$\Nǖ509[g]X?}<༒VP؊<'_֞:ӻ3PϚy,jbٕ O2v8en# ?6'٭E& %te1} K%hX0z"Q)?9|5pw`y"WdXEWf虘 b Z0؅D ,'P9aJ ZD V4Ƅ`TS)}>gY-(LߖnGK~p:q'tg,#,&͛8cIq:-xqQH oMH2BT8I[Fs|A:c3P̉9{? CO!RϷ}+n+5?6^ks  ]Q*k92{ ,ORtwb⥫ NvG-.ɠ6=hz؎ia&l(sRۻ;*⩡= JO3RB70b h}Ȃ<]EFW)+ս BڰTUUAl YsY}oo.NtΡ="?.nVsrcxﮚVU.\Ӽm+ѧ^l?=P 9IX%[;#얐&E%-D~PƬYсL?~3WEYftœlJyjRigAUh_e.tZ 쬲ef@2+W2z5ΒKU*Kyvo=$x^R@݄6#%aẇ޽!͡8MkVr2üN*N,GMz<XL(8T X1InO17}T:g~,ntck o9"ڇ@J:D\ОvgFe%]Q5Xqimp9B `4ޫJEP??!.`XPp+eGoB$ >V=&jy}Y* !@cy7Gذn;N6#kT(Hj|~k*є:C'Fل ۊonk݀EOjg0(h( r;{O!: `d-J@oY82Ls9MRM ԝZ_^4'%=]!,UZYk!aa63NP3WcA,e>P|p$uؐo<YPٟ;봖NjUo"?հ a֋zE(.F~GsD?@vD청t\u8EC9VECzdu1W/zbOG M`l9UeQhGRcݞzh]$HvG^:i;?A}'׿.ɝ$d5)Wyg5N/&D;4Z IW4}F\Sl,|mvʷ+e;uvz5G Ss[8kxZٚ%KM ,B$e"Pw׼= qy,iu8x Ɗъ_dٌ-"^slKHMO}y֤I $AF?JiCZ-V tYC[~F.\kJ>y~Z*,%H #(+9HA+H?l#If麘&t#""xS*m*m4(՗co)%S,Zʠq?ed1ȹH^uɝV;:"W/&F( 4PXr`  ulKGG~A8,ϭ)CAuc3y'**U\p< -e aZڏRuSh[g^JyBJ*UTZԏL@0@M/n_q7UN!wzXozT[z|2yƾW o%d8bf51"zʏb+vJbWfӂ^!9Ϳ }o0$34d,.8&gR,ª4+e5oQC`xA%OzfS؁ZRGR~ ]> W٣}+ֻE#颧y[;?"1Ρ _q'"/ "|ֵ0B9oAn '~ZTRψ,'܌R" tOԾ=eyMqyS>mKOP6z/L6:RΑ> Y9BpXj95@zaWb.o{&:y+/@NtFÏxTRZfeuRdu*P$#s"~ $l8YZ~$H,kJz/=Jf1Թ"H0J&(.j~ \GcU$~WX_SŖ(<LbMseF~Iw3Y"c}k˘S0w1<&v{?J#Z% :"˷N2:'@^C1)zˮnQiCw%Ō@F؍1GT`"+ 0jVQқ bt&?/&-P̖) ߍʏ nۿae ЁgVR^4Yaӿs|hd{Lh[36)|(xzE<\8 )Dc#9eqֽ13L|Zڸrł8l9σiRJ ^l׋#l> uh njGA(s@yRԼ9ne'ΫX+m,'[S ]Y Jm8DZ)Q(M~@4SA~嵙0C&k.2'! Bn ɚ03~G-Go:'u^Ж䞱f-% /w5ۯߔ}ۡȄ{蚶Zhg*B+`4z5! ktf%C? -"fLūgon.,ٍbGcE&kf~AOAQ.3!zT6o{tۭ~PZr=J?/C* 5}&Z ug;V{ ~ՓT'|' EA4ic}t" {@݇~Us(؂;;}M ҁU%층s۔NRs+:V"k3Ӧڹdu+8k+q>ߑc?s,U> Q=W*Ń`GDI5{8×VpL;tⱱgaJ!#p^Lݮpo#̾OXXJȗD[9ωۈsSח8}0)Brֽw0e}8!Okͺ3+mM ԡ-\щuu+f-p}A/ "[lJq\v{lWk}69ZQ6N8i:0F@^|Z$j oR)4Z6H]8/A:nӒɓ&%: {au_[@ XbgXUΟ2! o[#v-P$KĖ{WOuX,d{0B >`5,P?:@w.۪֖Q4 լo4>PhJÚ- _{.uʏo!rBC(1Y-j[#Y? jڒ+'1i@0*Iߛe4.T^٢p5$v]ʑ3e3[K P~rD @oXR4? K 8]NHfIG Y25͜b7T$*M:Lf@QyB~8NB)Izv-;s./{7?-"eSa`ĥQdUtra .9?W`XѲ/ >*qYυhFzXk'r#ʽ,1jFf;6g'38] IE8=\OrUjgZu[$sE.m( ]MTw,ҴĩPF;:6#,1-r}դXsx7<bTȈzT&"ZK O`:w`~.74ueJisj:p\-xKu~?H2 "|ƠGd2}'Ib8X]]Fԥ'WvE(>N8:]=*6se3|{/g朾 |tW8L_ѽXYA/*_;hd\1m9/1E~qƟE;N!e8 b@_2%T* "Z$͊Ӏbx[Ƭcx~~xA/lG DrC9i'g'L-W#ż,^ l$gV xl8P6ȥ`[D7;U >48)[4l50 `- WcVn%5s?P'`kiݬ{A%oN^FZϙȊi.[爝R[jЙ͑ϒ'Swզ`?;l@Tyx\Y`Bp78#T(pRj3\ήz54"P+o|E WA-3oN^MܹwcN#mZ/F36RҢqaP!ۿډuh0 &=daa_w"R+FL8Ct߉-\ei\ #k( h8櫶QqҀي0UpF@ƭ{\,F c8IO-dvیENaWc}N]]C]h.>?ʼn~ D¥[ (Ը;Α{b R|SIvM֩c ?k.骲 *k`-U:f p&#d~2gĜ&{H#QGa`9N<7 1\,UI1% -'6Cj)_a=>TLqPw1ߗ=@0ݾ'=U)n,9h>zE똓*dTqهTV*%}T:]^MWiPRd$p{K[OUX1\'/ӖCQ!y Hu]8jm9p-"t,c n%jdDZ ])]~D<3=)UCɍG5r3cɱ`mѵS罅&Uq B Cڱ8MvZA=r"B (hFR~:  WV=ù1)gy~o=WHo@?^mոaoY-k}v?9%Gg̥R 2-K> &HtU$T$)9._dQ-bރu՟aL!HBx(ÐҦ\6%:u:}*' u?\aQu w>1[a4qc:{0"Gjtj+ )@ax"Qσ w'ӑ,56]rԱ~6Oiҷ[Jۀ% U7n0V9/q"./A֍Gu TTLUT6~1w)ʴ86TreޮZRE{d>r8>bPGw;2rܐpR3x0icWi6hk6˅@P_&M)2`G N"~fI]JH%xARf ntиv2q56fu4m0Cٕtqbˢނ!ND'c'Ec`v{ hs/f~5 vawsÈjz[H bE+SX0Oϵ02>6R+J ҜX6B0Y\HN!B*[4YQ %\u8'~l s$\%"zg{_M'Q*/!]8nz` ΝCNZc}S= 4v@5[t5p$'{_z^6}E\E4>%e zn2A0 ;Fkp-eV|&'4n^.3P(HzDZ [53ƒuhBz2%ƥMBۼpYl> 0wh=_ˮd)ǝ,_L-Զkc!5k)fUW$kqk΂5Ĝ=h ZkrL'u^舘UͭYDpIW(q3q1}F߅4c To/;;x]<vXb" W!MTs!s ٌ븫'DmRu//UYJKK4zu%G5g \'y;YpX[g:dz%c4Qv%?(jc]XVK@w3u{e??YWO)%/PV!$p)wΗ~8l:w,UYmlЧ7u. Lk-:B{)VOKn,8Vc3ZKU-O4T͐:h8‹۸oxt>puYJ/5*䵱Q燝^MaB`(jExF挤 P(96y_KM㬻߷? %̘T.lN]ol9G=]D&%!֓ɟnbtb"U@}F::+Λa_5iƒ&-ǯ/{j)q}KL [XA^Yx +KJQ>T Sx|~7h8CX݈J>}qy@`[f}|t徸hv@6$;83D2</݈#U6IK'Fz`-*K!<s {<%ʈߝ2*7uJ`9j0ۗ/ !҂L,EאD>p^R{!ف1,6Da$Wq]3֬ʶ%ERśjfޞpyU)TPw% +v.1Oڥ$"؆ܑbr WY|H3J~PTgL2^:_?_6@ |!=<`]cdc$>HV*dktM .此m8TChC{) _g-OӴlTvKUi ⵩ 5KA=b~c{-AIbmt#yQ誐9Z#l!]gn<[ 3hc$fm[n<ڔ.h'zn{7Jy[C"٠,fsvZr:}@Ӏf[SaM/,39&2X6^n`R˪٘lSCž+_ ςoB8'G gMAC>b,w pf?Z?Ҭ#0(-WCgHӔQ +ytd%@Woħ._o D&J&s](Za8sۅ_:MZzFB >yb/ :}2q;Kx%W6*,FHP+ћ= wLI{04My|74REOd˷9kqhf{F92 %?H %ޞM7K̥ _ 6D& cb{G#[q?O\6?55 IEқ@Ru斾y<\ ]G:9YJ^LF -Wga<}צ*]< 2zZ̙RGL"muE#[ 0XJ\ 6RUm93 b5}q AGzL(II"%IC9O{iVHzkf* 72TU1T`(oA⾁W~wku⿾X=_bHmw=\BŝN?(RI~|pRв2J's ں-OZ={hH薔4 $.'f+c- Tam`kw]PA2ta/(uzr ]gi#XQ#]&pMNP|:k70MvV\: B׍u3=\e1z*U( nUC @B{H嫮14\O 2kc#K;?@-RbjS8nj7ARv(8 PW1-t~DT[̈́P0J{BetT LpT*24 0W YWy=NF%vr=$Ew"-D: фsK4fL $(dw/8Hn-(eAm!*>xr,F ΘyDz^@ 7\i{9-b/8b ko J(\U>%-c>Ȕv˄Y?uK`x d² 8.rHӒslD%}3NdžڻS{DQ¥PЮh<0ã뉓@^&`&3 gZ<}u!ub{j(S[_CӤqu!$e=Jl=Fvh%"@i^ (,J I^<`1# $KNhax5Y(AĔ jaAsscb81n`Fβ:V"uК5*FvojHQ{yiвwg~W3eDtM:(h6D?7*e Vy-{r]S4z M#l*c*&xWCȞjo[XjaA:Fb`'z0)/k5idwM9dg!X#5"[WHഛzF f@ִ7@JI顮'iLj`^SxҊ8 }I.P|jAL#TY o\>,WH;!K?CԦUu U'< }Hd2(zTUc}M]6ei_ƮIsn H D~(e|$NCo;M!fzn;%, ߌv{/Tos1G2kMr.:C0@#j JP0$=[(+Qn8fCAMtDbC$oÒٖ2&[D W\kQLeT^VA]Ktc"(eHߘh#¬&Rrд VZ]"ӌ_f?%b %̈́kE7#RR5"<ߨK_ ԛ'xMu۷ܥ<fpcC nլ]&#Mq#B $0x+x9MF'/ rV<{\GT*ޫ1[ƙoAFPב\z.u~sQoI=V 8{L c \r}HRcģ"os:}2Fr`cƧz8M7} ^i!bcnhLQVia2 t9f*fJ.&6>I*}:t <3)i!hN%*o6faz.?73d) @Oh&w:O[^`NK Յ0Z?y}8Q b4*{{ҲMni Rc~C ru>kDE YP3dbUnzz-qI /9{ *_RWvaX|& 0Tr^Mh/*j=g<HIѷZqNmyRYyɟ$ f|Y z߹jn ˴Cu $qhiw$Xt2 ר:>"F(V-Thx^Ex/`FcaL AU a鵚7{3m|q^*%_N_DJfd e@Dَ:$pL`hb%fִAE+Tn>4"*EI0 vʬ9rL[5ު"tFGgc^4+ݑ%r%4:%И AD"b)ۨ~_GGlLݤT;!Pi` LVh <&qV|-5uaB!xsR1(sUq\HŞJh;Ӊq?~'2Ԑ6af{OTTgKA׸`+{ nx۠I<3f~F,BP@V._u9ejm &Γ ł\CI[!ζ/Lǣ|-Ҭ1SN̺"HD7 y+/Ii?Q>| R FK|j'蝄'j_Yi5qh&}Z#|gN/HYz~߇,rD:]x 1i)xۉXXE,qkW>7de bL2fz.^i [(Kݝv% q P [ X' mh )7Q Qw9V:z﷍]z~RQNf{GI7^7%:4g w#YuɱHLJ5}zMV$*}R)Psv`ER z vVcA;~4`,VYOSJIZ7}~!;- (CɌo'2PAi(2waeÈrhs/͋Zpg^( 2#6r/% S3p$7cC!};\CCTU1;NQcG.O(8mB2X|96 g mSFm.RQ׆OpFN4osrvvRUnںzaaՙpǗUL 0R @]!6az2'X; ,6j4qbKW2 S:-`gJ[24LkC3"\|fDx _&2u ͡"t$:7 9rG8K ?w$u(U>`p蝃͚O|-O n'agk{C6(HP@1LkP?/-dAO6!dix}B2;lKRWc_fgc%ZބBѕ|NۭD70ʫڲGи~0qJyߝfOUPTGs1;] ]`cAZcX6 yBCNd@q&Л0܄ZD泔q0Rh M0e۲_oqCob/x~`D]4±=BsI/x9d@g 3?O*lRҰcؙnh 84o VeuDQԄN nVL~1G71|,J}z hx')׹^Dv[>[x¨ޤ|ajR m*~'# wEy%J4Ǩ.˕C5%N 8@6`1dl [,7@Xy!ZG[mآpN4 #哨IYގUBTYl5gϬ! @@r~;Ǔ÷$D!Ǐ0 JO1QYOye&<: ւ֭[Od ZCJ?gйMVOՋ!ԶNKvǗu*3 RFk9ۦ;HYΪݠyVգr nN/y-̞_qFNh(b_o qz6( # )GG'Fد|c`Gr, /- տPb.XW[z+yΛEUU T~%M: )?}×2)ЉuEæ}T]= gP] uf}Y63T`>7ي+-KkY=,]CIhH-"^&Mh"i$=lq d! F2{F .I =*[@8e kk|B꯭oA_Q۳)V _HlUOme7,gC3?h5g뼥 6ryGV65QIR 5a58E~| `>#D֏_v]4y<u;muQI jȯ"ti*|mS3{u{$sȡ+Yn6~i@< [p]'5%ܬXk].#,3„C:Ga; k qpP6bdȧΌ`.jY&O\rLHc#B{W}Iꊞ'sV(ZWX\c/BY+X:eA|0NE *(MۘB+ҍ]Ps3K!Ȍy.笈J|^ڄX-XJ~&^ [.OU L53 lc )+RS(Q4ܫ|:d*G49h@+}B[] fb:oH);4ݓhYk *Dr0 WRMY:+&Wۛ*i /y(ٱϖ'NʮHXE3@,>)O$:J\nSf? fg]]MF끱&-8@~<,.|HZ/p"NT|&o OJ||dE*M4u8~?f#FSp~{.+b'?یFdqf_hQW_+@h -HLXi[%#>p|z$7=+xcAdWТֆfAG/?m_.s;B C>'}zVbhI -(%_OV..MRobTT|wdBwG٠AZLF5ۺsO $NB@Lʌ.Pnf~pZP,&or7GĠ'*W}N7Zblct+-:}m m !UH;9`{9"Myғ4#_ئy‰m3],q-@:X`iHF*]N/c{Yu_̱Ź*UŢV_KT/.t?; 3jqxt\@c7]1'P}"MVdQUq?I4WG0U$PRa^oMo;<ұQ2zaV}|l4 :;S4A $z,8BWbT!_*ƩNG|m_ 161pfԢwJXnrβK}V&IXԲꢹ3,2t`<#eӅڒ({2UL$ i zgU.hgo^БڮnYb&ViLBsUURx0rSpkꥱ.f]R~d kW0Ue{91QQEcH2pGh59zc#Kl?=^gZ7(ɤ"RA:|YOߴSI7  CZӹ\SiòPD[zao|zWōߘ *7(%Id/E ?eRXyH.ojKˣ}9ڿSqA=X C 0@7ctDHvC|Ta,%&i:%&2K(fCb5t^=A٥l?-2JJ9q- N,.K,݆ ݭiҝ.K_hX 0 T A9L~lFʱRd[5bn [ ǒ^?tcqQ/ F 4>0ͨ𲖯֘~l[*./N4NF&7dYڱwׁ#m$2m)aDz/)B¡_3\!KLvRZ/Iq!8E&?._TQ@\Lj}t9jl8[G@‘FlPw|GmXP$ =z Z=C U=hZt43vNkN{j#E.~Φ!]8qd “ud@$Z6|gY7g `GG:m~  U t1 +JKp_ 5tmQϞY5 %];DPا:ή;+r֟]0ucƱa_zˆBlǿa߃>مf^}ۚF/퉜q~4_%g8/ yrny?Uj}S S~=aPE ۃ. UӮwZ9e! B>7sme$vQ m3&e "_i .im3 ?zv7Ypg0MH3!t='ۍyt(HZR|n0HW?w47FG>oU evě%smevD"dڽzƱاTQuoN`1f8Z.Nt z7UT$7_.xڮ~K`U~e$,k"q ?3?H P02nRRh(J ݿCvh(=Q!9L=.v̀`f98h+D?fF7;)h*ZBU͖ob&@m;ځRckvͷ5/4ԓ0+|SL?&c >fqk81:4g0n 1pCeUݝ;2N"la?UJWaSKDHXc>dL 9P0~$ESȬW>q'[uL3M1s㗡لB_a}5@Nű'%Ey 7 k[w=2r&(] wwP;3c½7VF*0chrݔ50qq|K9b#%(C2QHt.;0D"'FyuAdu#tD/ l*1Ë - 22'ٺ*'MVy볜x*Q71_E; ?)F+P#>?s|yCpŸx`' ? [ MGCzMݲqa-pM4w8\L7ZZ߽JQcVJV嬛l#s緐T5w'xpw>D?Ls:+JgחOcD5f޶+&y>|N`YApw؍'~`ɚA<69㩸B[wK[MgWaV l9Uues?/=֦UUl-cel%OgcpP+1HQG(4JPY+f;䷽$i~Pst w)gJH إj2&*JҪϣ ~I9r>5u? l*2.1*/xIm1-Χx0N)+k<|#yw03zI ,LFnCmmWsᚌQjI+2RƐ3ghK3˙R`У?/^< _- ȝq# ::ԂC30SFŖ8u:L[ 4$:eC"Y])rVVoƐvK途ǐA2卵Cjhn)==:)}Y`Œ*K#Ea C MkM0+1qs:EUM0І@TKSN{x[o)蓗7tS I#Epbj#zJW>|4׬2 CMz/ >FuS2@`ruMEOqMpg61C Mg2|֥k>8T!+E+<8ߵ&(=љP3yBp8d^b$|/Iao8"Rry ^rFfsfϔ“*y`$P+h_t=HPyɘtQdfU੶|4FKJ 8?[k9Ǭb^J^ RZx_#eꜻR |_c* .--ArO"]>c(R"XdճFl81$5b)DgaHs ʷa2?aUNtGAѶIpЗ /zZqLjԶ_J`ƔSXךoST!6 ݴRqMҝ'byrtydyH<%Q섓:Y6B4sʞEl^y a^gK=U]?Tu(igrƐZ)XJ_vhsW˂.O2&e\\gT/ύtAq6+4(zHǢi^;቟ bl[$1Q!GQЂP6& =0C+zF2vrQgNPWg 4z,r ۝"t,*˱,6<++>W?Xan&dq"=}Y'n (垊4GP"č:LVNA)al |4 0^Ii:3q@P>l͌ .>cu~ /V4^S/] N!p|mU#Iԏ3-k| ߬IE ůr-[{V4 ``}g-|Ң! ۼŋENO{ 2 J+:C=Vp"g;a+/foT/Dt$M?rI dTA8ز80*X(;ad"#%B7l)֏[vNE"Ska؅%=G)PM6-yBs|-c(:L)oa;4eJȑg( D(0~ʰ€<Z9 "~ ߒ1JEU;1=OHh K~r7C0`V\`wq咶aQi2Sdq518%=B|?qS:h֝PE y9U!u1. T/E}$n09׽HUA0IGl*XǾλ Idܢ dT:$}Rz>@M|G;xƢ?c">ǐ˖7 C={Cou@#^@H 䋝4Q6]W\DBV*rʾ8!#6&_V*ybsÿ:)rY5T= x[ұS Z=)dpMVR_^^V-pB@szk)WU({_q0t nΡ&GUR # xOAw-W|tN:^#g$>[3Mu!I;Yӿ1 = %uև4@š?KʜqgbCC xS@n1pixrl>Gdc&2z;rԗ5^s,|swA 6Q_4ټls) wBv'w2L; h."\^ՍKdt#IamZp'v|V-[x]x؄-)ǯxf̶|)Dc pb{_ܓ}OqK1" K0U?}X? DXcSta6_s#y.I~b gsE.r.0&c}黡BU=^vDa}0|>?+a4~uPcC> U4vƖK٥ @!cXOBzsTP{1'|T$6~"O5)F/N'78s*} 8ȱUj,wT4 nY$qfB5+Mys5E>gA'9\}솊wp] 9)n`~N*hYCSǀ}kR62_N7ĘwnwvN#m<;1ul7.k٫~ӛk\v١_WkPYcIE CX*w6jK5:20[I+ RdvKZr`m;+0/Pж~bbSdYbwn}ʤM['u= _CΚ l#;!?Gst.a5D^jSp z5Kf^dÊYHTdhKumF?i-5' &K/'zyM~,Oe׊ f )""4rҙՈ,I= p/k5v xܦ?+"L @qv;M&x&< 3r (!px? R=[y]?}n@uLop";-hCR1_&U Ժׯթ^]PD~K4 ILatM ( ?&,&˛hSqn-G\2U,C<ud_j(s 6 {U[4}myt*} #1F_Ї4cbjRNŜ3?NNtļj G[Y;<^jU/'xnS#A['y Jc3{5SGDA V)5lv/_SK}7Sά"fv \C2e*Z6*Xl [>j7y[a]k-a]f2L᜔pSN/XA, 8;^ԮоHQWhEqq7'SQ킸qH۶<шo@RǦ;Wj %{s@Ab^1}wokztuNaLTY+ ϷR.~]uvV7!fXU'bh=b/H(~'* γ|l0r??y LBy[69ov>'gv*|FV S,xW3Pm]e7wYaQUϞy <#DKb`X% ÷Wz{osSAӀs_D e$tKUZ[ Rh1>zވu]td,٫= y?xG8{bm%0&z:AiS&UG)*$?2c$dBdgqp(m]c䞩,(^'*F('SbZ2nIB\uFjEiD5OF⨋O_ƚ9RoTa2{Y>yR,]8GRRPHksķzo[o[s>?3b&#APx-&a DW;A8}0ϴ><>'Q/9 zZ;Zy}oL$ƫSeV%aCMXDsj' bQ8qT&ô(J}4hhb2J -f8IsWrsF`{s2ٞXo'=uFZ9΁h|/ciIqH!oӻ}M 7ӧy%zڄ˩I2/bOݝw[*GVǺU~n `q8 /gZZJ=Ec^Ա+,E<%axl`|}2ЭJPM- .]P>^sF2[=ȅ> X,e\l,K K>uR>MrD>4b7@ሸtmRJ/,h_p;ݳ0y@q!_y7=^fv\FrA2uKdFm~Z`Em]V0[ܲ%exGxDh @Yzr50a+&`2R/s3z2;@M);f]mv,A:?gK/|{,btR6L&?Mu ?Q>wSr&-ՏT! .1\ŀןuCI !._m%OQQ փ̎cPGH1KtifIWIV.#ͨw'v/-ꎯ0BNJiN_ڝV+h6B|A?1MKSdRx||@*sqi! 0KS='䴘e]J0Q{bQtb/O|RjBG y|}-A,Ag m<,*^ v'G\PAȕPq~eKաSg>$>KQȑg`Gpg˵T|ךe.!KPh ,HWMt(یA7q@& *n+&^͇܄A S8F'f V͋a֗ EDpvt(4.3>5;gtMn$Y]?]> SxPǬ`^\b.<@)"mcF7O>, Zb0"rjOO |{L_Qdy0Fym07n?Cy=0\%RH-# ;y7pnl杳HaޗA(t/[eXW4Š&AK`}W#0 14v}ٹKtUcRT`MBY!!h%65B8&9SRFv.uX%M]jX=r?ևI'vv8\.*B 'ppns$e}O&XIˢ1nb4Dg谺FXzk] a͏F7y=tͩ`GLl^_ބ$V\C1T ;۲xe$+Gtp?CU 9^| Fr XLNb2vmZIa $0#}+>f8FeO@ H8&2GEgxzMwW}M^S\[aoHDԽW|/CBkoskEaVt1 4&aFƗҚquo VJ[ @MOW,;dkxfƔ輧/"Htqd>ZFKbώ腘MF>Ye3_p*dDB> 4FNڑww-FXm'y'TīhXl0ҷp%*ՖP;d ?M緭=<0++2vj( 7ovK"~cO=s5jRUEj9pš-Mk,Ui*'?x.ٞ[>ը33|T1ftk0M%$dH<"ě?K t9cuE|牬unP[4LMXưQ)qHC0)Cs"b}L:qw%RZ!yxAI(#PxۀryJݣ[Z&Qwiŗn! M^JR)5TMfs%3p!Z5i=uHޱ*P\hjr+Tf<ۡO0M35-2Ƅq/#̸l.2yo)uBefBAFJF)_|Fh'e 1wi QVYI8جi%G$*`!pBK:,i]'x;]L*Lկ yz}! Y4ge&4eؼէ1A)U69l*TK8od1De12Ȏr{ƌED"1ݡYyE}u0]t:s-Jc# hp4I[ͦQW :~-kM6E3y'93W&}׊^4?Df2lHKtfI7-=@)1lQH hR!J*aS/.{Z9,I%,int?pZҖɵtV~Q@%ŵ遲؅s),xf-VJ AC'dd.zߩse?bʝΞ%՗;\Ր. b}Kr]6}qVWA6ºY\a f35,[h"E5!#\kѩ̠#Ԍ^ b6p4x[?g7TGaIopnw+6VB^^}A?F3^fk*>c3*8=mEPR뾑R(;l-n"&q{s@F}`qLGI{w .YNū{* Yse/2P'of=VOLgYƛ=L#ݿaY J0խ\FmmljAsg}=eI:/Q19zJ*JD[EfS}SOc[Oj|NK8|W9w-|?]+Zg󸡫ո4Z^eN JcPH#$_v\Zn;q “4W8XBT =KgZRJEFsm9%`fFSX}m-e|ۀ•Zl~Ʋ'4/D FX5[72}>RT/ӱT.Α =θH;KЕ2q 3҄1'8{3}o:^R6G eut e™+9;.bkZh9knO)Q֟C7V;Kf"ZOm aDZ{YU$V L4 3f-#cP\el/S3}"Akjb?D.JB{)6).J4E>PY; K:,Vu+>gnYz"LU#(^TE5^܈S"RX\GⓀyT"ܻʓvHyԟ$J+f~^Z[O}ݝZ4,DЕָN9X'kkgT+Dt6l龜}1gr NSڙ}0 G`F4ʕ4v*ko#3MQtBOLl.G2baA 62"wG`ZN9%W{Sp|)6`vاWJP"x+Pff=)A̠GCXh/[c>݌F@}E횩|1i?E T(uedv!( :(s?O*ĵQ*ڒ>`hUE&Ndxp'EI7m 8:gMe5D^;$$ ~ ൝ų_D^e$I27tX# Q+2ƭ .a2%ZB^?:lm-5*'9rU;GTO_ 11Mt8R1a$kScҕDP4_"װQXE kIh듲r`SP 0 :J;1|m+KPQrMoIT6_Ȅ[|߻nDg(rdZ# ^;,Gޞ9sJHNӜń} [.㤴4Y&HHhz"qx%I "͕!TF_Dhɭ3uNW18{Z>CZKmp>b!;o~7 YKڄoyE层D!EKf"Q=t?FIXcDFKGlU4o jN]CY5\9|+?XېcS&H"~Z jM_!Y;vUI( 7nH!V7.,o:j`bYPqg \%?Mc`04 -ϢՑY! Ųan HWޘB27z$O@$FMD7>6cϴ_Ѹg)@|b3ٽ) q>?\L+E;biKe0;6XT;PDv{rYZ٧BxKpL&02D?e*`49d.Ep75Qb3oq;@X0EEZkEЪᔜ _F"a3;WN{I g-b-v}dv.Ia\8ٛ$cH kwվhW*76p.NC7Ӫ:0&GU.elo-kx,8;d};VJSyK?1e70 pm+ Lk垠LY[nUYbRdY]3QK?Zr0hW-QK)x~4bRi/j5+Jk$]LV;l2;20tϺ!zקGn{XKS$2CAa"`^f C@D>60Eݢ53x!]βr9v@4p!ȃ:~ji( ba Lr&"}٧}WƅzNeyv98cD%d Y{@_+< ӥ򹷪9[wLvK{0-o\BƶUO9"kO /`]G 9Y>R] Xad ~@ EdC\E: (՟?$. Dі]`= ~|{-F\ 0.QS mPe_ g=<el#sjx? ӽך E|h,GhC=sucz2G~0pRo[H ~NfGLʚ SX XWr-9!YL>:}T #ms뽭Wsp$LtCUɠ0MsGonjy_!Om|;Eh1z5 ـGA kwLԾ2ЃPpʋ22z*2{4$H)2]Z4z~D?VkWK8RiqB34i}u뱔 SB)kz`A$x2)]7kk2`RDv)D-ecUM9DQ!% c!I 1}RJ/ƈA=ZWOģ8̰K4 몳,UH<՞Ru.z$xh{(a H`{M <,_f" po- j-~%# O!+NB&Dʜ<LGIC%F5e&ښ}2'Pߎ9;1lhT$a~@"3z_ZpB<]Pv)JijVqjfL}4[ ^T6 KZ< gFY;kž:lG-)hdH |EdQ1 .iVp/N8! 7.drK_ eA=$Y5̪oD?@q&8kiBD$η1?Sg謰C')Ex'K/TIh{诐UmXȼ gS9S߱0JJzދ[,37.'`3)3^#jCzs:+؋Owj  ph4(55 }1N(C;wEc>PA1=>h%<u<~79&b9΀K2tTMt ?G_eNOw)=mFݴG1vrC[;,JGNBP9{Vqv [ V̇hEJ%P}]$+sd/F&E靈l}PRԓ@pN3KYF. yM wdR\`K; kyy܍y7x2,7YJ'= aG` <u(>RS;yY\0a1 (MM,JȂ3PN*qґ&7i5 jI?2}fJ3X'a >Sfv )F¾;7>bS( 2.pߩ3`"Ql %u2vo%g Neo3LEfT+@T. 8mQ-::/N~ ۨ{SMArޯdO#\e΅׳/ @Ys8v@{( -0<}(}Wiuvޔ\oU0y(fDk{WgASp/yZ7%'y#,?'?Q8pQ2ލuGOE0t\>UQDZfLSF3,R}i'aJVwyAK[SM52=k:n(1́_}rRObPbƲ>n#`(BX4T'^.n %5 FJ\0v >Layi̐kF6HRL@Upz"6v ̅?G5*ޞ$\Ä㋎4npJ9lg k 1^r UhРAR7b)ҐgLwz]LaX*}?t{h#w7kaNmnިBV yR4-b1%ln0!;rMaV݄R{S 6}Hne=gw 9ޥߦ3w"pRdxFko&oAεǽqSr3Ԛlg*v@-J MLօ˭s$&5_SqqtJwAghQ;71uؽNIs?0?7tΞt|KbnCoD$җJ{t8|\?kUw8uEM ǎz {j<] c'ewt . Nz0rpYK]GTp8Ng2t NgdF/q{O7YlS$'NHC+Km1K$zE&XaC?[(GPNРK6(~i}Qʫ<. v&=FO Nr}kv6^k ø(Gy҄Gȡ=l7- !ixDxH\:8$ Et OT) N_'Top$z/CHYK/ hUym؞)[Δm P沋ʺ?P:JD2xh1n7vЉNOAx01Y)&6 ]9R dWȴޭ BF%:ߘi._m'o,K^hsXklQwaC :ʲIClkmUxm_ T+@@H ť_-dƸ⋖!!J= CVz PK}U8qukV!t?ކD$K=j.)zԈ_k6w~|Z`Sߪ?PQBoO\զ U~zQ2ɹ(}n(&>ɸl2_V ?j'KQU"+ 2C8M޵ D&&E*c:tbz%)^z Epf5-0PwQ!1_L3/f*dhū m|!!#zbk0\z Xˆf id)e}(+o1ID%uciQL];7N`et_e\v6@TQz+zV*ÁƺgMt,WZto3mBU Ԫ*TEe5ftr `%Z-#(ͤ bgo4z6 @jF>?% 4ޤTH84¾'ԓ;*$ё2&'-AnK{k#3ɺoGc,kݮk F LIܮ5vgʫ/Q]~ ˘L#@8r h m0Ӕ$hz>~(/Q8TcFce@vzxo̟gfe%@woUA M΢b`ڀȥXT4zL]E%YO0s c ӎuB;n}f$Җ` f=m!8*pOuC=l *-=z= (2 ЕJJ ױ C +Yrmi.̩l N*Ӹwp` 0@[Ki^¼ʦYu$UdbQfvVUMк3B _P+^]D~.ݝea4Gj kʉKIXK^,֚O$NEI짦${=KM"#bPó~{"o5sEC9~$Jya! _Oٓhpy@w|[!&k?[:a9aEnLQi̘ٻ&0aO1jvdI։GiRIHO'/*S}0qˀ3 XS4ʩLFcIr"dٜrB -- ƅ0r;b x6c<\PEפ* Quȟ|-_9 \А<5F2Hztz~M^jm@_x1 9̛rgPbiQ} gʏ?)6=pvf9g9[J4F&D#]%{U *?~G/VcM6'РGMe6i- ʃP]heѭII~ F;S2(|A%ZTx `\ԴcwduRS¬}͗U262//Ϩޘ+&wxHEJ4 KkLvE,&AĜ;mJ S۬ )A:]0.iSQ`FA^5PrC9akφo$rς`7l8QwqwTipNItV2^xTslߧmdTHlӕU~c'gTy5x'&~' 9L<~:>:-{6ڣ^,r芧pV<| yF 'œuI{R\; r5[g'=;ah;6 36fD3S;U-2$3mTTLi]LZU h%Rފ}h30{RͻCLc/~NUU$h.P~yUtzUH_IL>9Mrsw¥2qI/8+U'Z=Dh/-aN|{Tu}>^*p:Pw@ \E15G@ZZV0ǠN3F4RBřhĄvv80Ȁidh{q& ʿtȴ1sڻ/KM.zfYqkSiSed]lsG(G""V i{8y>m8+ɀ6!v[+ɀT:Oa!qƋ=C ҏEScd{+6;q°[e= ؽ-}o}Z #6тFӪjh>p@՗a;%(y J\F&h_'M!b%) ,UOqB~F \42r0Cj+/'t4bm''/p&0_3XDrYseVK?* 1ND:-8Xp>3IYqmh1J7#vp8w ] &:Fs/p-uUPD r/bnjꎅq4k>)$qƌ#X'? myKGu(M2@+m/G`=F2gRBCsd(-;Cs~\S+/G#Y~R vEH^X8> إ]0D :xx|wͫ!5DnC \VcW[ϜڦpQ6H@ ٰ3N7o[4^ݣ@!E '<_Rxeɟbzp-&2eAϚMR V(K/olFΆ 規Ժ*Ӱ~'w̼=y"zK±^R½rqs'pKu 'L+酥>U2Æ> كhʜr D~x{'7抷?وkw ֍7m~:=%ɦ}<* B!jy2G; hm]._=R vT}锇HczKWdtMѠOXӧPX藉Id(Ϩ# 5}3 IZE^ۢ4HjҋF~zqPmfop&(uג 66'=1}bsђl' i$7cJzVsk'+BkC|(&a{|0`me5_^/$4}]?nv*}pUȷ\C]qsd{2E}4 =Ǻ.O!(FQoolv3:KbA_n:kq'/fAsݔ8Lv!2raѮZ}/ 0@GIy1W*} ۪%h0Png^3}΁kDSuT&)E0J>EgY"7"˪XQ̼녭˭ 0LL&gVgliBe2/xȑm̥Iw^E%oEeѷ`:!h8il\$8g,l3i9b  u?;)~&5X տ$VV>.3@K'?w@#җī TiH q)38?Q Uhߎk~6F!=(PW20*b#HIItem ;N0Z.7"IQ<;c4L %pLVHh]iMcg;fβ^Vɘн1jD(GwbZ^e B&韪S]&ţ]Q㐀8#&mJ>s˝%''C6a<>g ?K5P|:^լo WK*O @m4#}or]X",PdY;3ȡb>EV?}ɋ%xB/ +]o7t]Ue}+2fm(F=*N ˆHIbSM%xkӏcԪGk% b2>w?! )dBJQsu|EBkYb1se#7""+BvŢ(Z JpLơF=M-upV|Zb}rZ%I$6ck֥]p=ۈ^ 61S dh 0*Թs(SJE~T5N@b=IMCX+` 06*u'?RZ43T4{HTiB`i&w$!~pf;kTyseZl-0+;>Ю5flR^e-!goKP0wU<7^5wjqt CBh{(KKl?)duu pz6mNha|+a|ge BUHRO_^ym2c&@j)Uqh"­I>Y{G(ԧX紥KF2z (,< s\o06Bw81jN={JPϾ|N1iNK2 *ەM Um %cpb ӷ ӐzL0#T"-TP35u7U3քgZ)#k;KzBmI236?*ϰx17:eWVa4Ntx 'aBfٕ Wa^`w3Qv q|&ݹ7(:mEHuŴkx2i$J*]ph@;﹍nG{gOov",`]9xF[oE0iި[b;1h{@l@DzhdXxXCw 6ZoܮޫO Eo^ Տa>Z38pnΛKL.88ZnN b#j8mqm̾#\nF֪WlݵLo`-_1';J0gjqm;Cm"!-n87#W3'x4Un=-0t(aҢ;J;7c?Y!h^bz (4S4ۓi)95p[<FQEfU_(z8Ũi(QM~\J^*lNlILtVf[ Hجu$O}& 9*/Ύ+5gs0TN_QȽ5<cдĮ41TS|P*CIˏi$bj5s֌.9CKra*6 C) ӽRG=^a3dpDѲIζC62J&/*|{nbO[ \"DuJcj:|]$yEV~b\YaRMRmV8_G(YuLף]K;9\ciTgհܫ^?6 OY-|r:Ah& !Wnu$|:5c̟OD#¹waM,}*RXs-xdx+ՏiXu^0 ܢ͚:݄6€"p-9ρ()~ }7,WD<OQS縄(_n%9{m>I f\f&#)'dc95U_[N8eEv `bl?}ƥ¨z $>"p(w(gԗȸJkpwB?DҚ[A9܋hbނ БKnuT-iEr^<4"Iىc? fI"ڧm f9KS{W=̵4LC`NL it#t_+o?-1kl%U9dm-:{ġ0yϾ'JU *{wyytckNo@il!O$Xt+kpܯ!ul '{jH V2׳7sIUY&Aa@YdC':Nd!< qI{_gB9Y5(֣h/k\]<+hKc`G!yTt}1y>}6]>1Q914A\)|TJsB<{V&^r`_Ք,z q)Ȭ.I膵Gn+ ޅ&2 .Ppí]Ǘ%Lljr m3=XJ4˟ҸL&2:}\+Du3mQ!H`2ȚvݭQ!Ge-o]DXimQMk+ P2b=Ι&D92(ׂPuIL2„hca`gmqϷҕty"8'A& $ ː!XXzHC˄_?IXrͬO¡e2١B2tBH}Fpjro~SS6FTaXk-vZ97퍹+WD^ 嵮$\ C81Zq yĻH ɮ(>\6q>m4a\ WwSI}eM}$N 41иl)U,ˍeM>1o[>>߾ʥ^)5J9B /@]i([xBJ|̭*Uf? *N>P^[*ʒ z3MlQV"*DF;VGv%oR5x_ z#P+HE/@3kcx4dt{XU%X).H%U_(ΓXLF/:1hZpzhvPVrS!rWj?<}ÆCt4e*L*-)9!v|ijlXEɉ)[vQZ9a:0E`q,fř[p)NA9+6MU Ga_$'Gw F-IQQ1rxFs̟V &+FD?Q~t5A, Ox"5:"YR*|j">]3BV,ڷY8Wɕp.Pf69 #gNjsw-ta`HTq` .l*fԙ/y1\OlĎykӺ-5pxUwP7f<@i]&܎ jPݢd'G/χK=R 6UN3`pEEҳb(IQ#*EPUK9/ 憟 ؙoWmRXb5sڳ_KmU0}gH ϝۍدVy-)]T܋!|XB.J 5CAҹUdbflmo8wD7LC AGk~wWTc@mPLno߼D^9\Dvj=:X6;&/?Xv|Ϋ laX @Ns)!5BoZǛ xk9Kf#?+NQ?x8^EgB FCJ%~9rW=,XWЧgUYInn5#[E_4vąAzMGd̂;&bc$gx״-5w`ήF3E<_s'ߖmB;A3GLoV$83E%(LkwU$̧8dkh\+x' Ϻ &V(al]+ X6=[P/cM먦7i|̹҃0ӭ݄ V(\Yo}~).*OI8h`̆"rb`H{% wb/+&:/iqL-?SBI$l8I~.G-YU}W˒?]MwDq ўO85$xyܼqor} ž5LBdwEq42J/3B?r:tf;(Zu6"eeG?g6>66byO^7,Y[}]': K򙆾yz!XWk;P<%ID*̕W_^s&oMދOb"38]{.,DSA~M6k)!` ,俉%\ $FT}@/Ee|V|aa-7Ix9(-x ͋"CA_!ʞL84#h퓶4P(TO.9EWo8]%7?P~>Y#."O=roX~}c|<~%+Dټs+Y}/L&^_!4?Y#Ua G5+z?(#ŽC>|9.3ëB8gQ`l t˃z  L4һqu2$o&)&_ssU 2ESl%\(?^o} -'2fh^2uf]s jX@3>s 5h~a[*J@ʩ 0LF{'Wo1B\z?(x@0;h}z%z *3+cT4ld?Fw5`7s}Rcn u)@Լ5&*NÂY25n5Nl#V5 Kgi.FZ +:ÊgO T_^>-$9AazFC726S`]Ox}@,>sƼwқyNht"hxI!-TqR4d Hϒ㐷1A  ĻKaym,ƙ>#".͐ĤKF3t3uZ=`q=B3Ru#,4B" Ql !;HTK= b>s T9M?u,_DӪ>齁P]>c|8m<רha~GN *P dI %j-|NS+g9ԑ݂8 2Œ UtQ&K .T4m" huā a{Zn bi1A(Hyޠx@+keP5t"AkX:G6֯׊fڸMǫ#xL.Bs,"u^$ S ^6F9rG6|ƅfFyAdE] ̊UѰRaCS HImB3"J3i&St(~V0H݈iCA܉+yKt 1Hn|RC HnL@@hּ1흱i%SWPz]VJv}5f1$T!:eo:pi׌GE.)q!,q=:]J g6ǀǕWt_؏qL]zwRu@M VfsP6Xw%:T$Uaaiܒ+ow_FʾL#X8i*)q($®XE/ )p2d"!"#ba 7lP.};1;$a_!2C{~\n cR"O!v{kUMg@?LJ.d&3 {x׻:Cv)(' ]鶠H~D  h>c vy,P`›D7@%%IЈa گ\mRI&Kcǻ ݈9m!X\wIG !NNxD@0݆5D۔,q?#2~c uLw2{;Bn臌_2 s7~ʷa@ܵM6?s~ywr./uWTfsx'X_ zLuw!QHo1wIv&:쿴kD8̋OHJ8~9vku nPNX8gZnܩD#h( k< r&hߟd1H~. &$vF\ r@QdqlD>Z}/E3e}>e47 Ѕ=0pI"}T]Ů$Ho5D *ˇi\m^~kEy2`7F?a6Dph։;)''E,E3d[y7 4r:E+H%´$qdPT,(:*{t.EBrA*ڈA7O 4a΢^albU+ŭH,J nNI=ό+t%x5[XXizLb[ρk1!GE{OPLm.ѤDOD`1ֹV0&98޿`{G ɾH)*G`top jU{005#}kڬ+ b= Ѕ0SI H`+-k-#NNT `(.du r A`8%W 죰2f*\Xp 8?N h ۮb,qA+*Pk,% &v *Ys VYxp sipS2?C[RG*d ,Qh=`X>68h$%,PLEΖCa;dzo(zLV6e;ycm_-eGl#Y"Zm`/+%_$,:_smahV fS H"g?N~@Hrq}bRP8zQu+as9WۃruMbɫx|E:gdrp) Rb12ys̱) JvOj ΟQN0³rб`UR;6,j爼a*}6OSv۱`M8#|YCSY0[fYqq{ܭjdK m4q.:,D5'lh\-ؾY y>%3a$W z@!iy22UXp׾Y{+L`s)K3àn|'%ӻаJ aR~<G:@&Y|{`O'CGq)j{-DVL S[>B_T@z7$rNyma:YˠyDl ں"XS"ρl@(''SEC<)pnllkࢢ[!bա"Wm)CVt56VK(C4Z4%t5$µB~=b)A-FhVbS@Ȳ 忊NBٵuy1}F^^8 8iĵ-@)|8ЮjdUҔ@u24s"@$QثdSQz1ihPVSŀ$ה*dzVj ǂ!DS6ǖ]RkΟj3W;9I7`E֘#:X܊e9m0ƴl_{ep0Ds- XDpw"yI 0d kjDu:$7:^yCuOx5rݪvw$(,ԋsT-M 6t?LM~mgN+7GUy2MV.LT=|s^Ngѱb4J׿h] ΎV)]GJ SKaWՌCil?<&Eǒp2DǸTg[{s`[K?2*/Z7((ٛyb:Al= A7*BY̤Y )o⟤ʇ!:kQz5C_-uWwlֹ%C- H6NkD&pJg•IwF=nM?[#?].iN\xFAŪ',#w08P8;q@4Iѹ3*;j#ݝ//refXM2SO ܿk%=i܏jO6+RŽzƺLVd;}|μ;'Ec W׶ u9dl@-]0~m{+2 #`)H>waF1GZ~Iº3vOj]ڸY͓rӟog,=; _Z-(pd[fd*] P҉ av]s>&#@Y0[#dy=,n.jėw RhG IV;i.Blf "K`pd9d:6D*!R ]Bq|\Xzm9raܘh-s5ė\~T(?5J!Wv`iTb]8pvVD],LU; 744{}i 5r knETytFD8?& ʈObVC(ѧjۙС<.Z-rI*+Ã&INtu89e39?oёIAU'wF'1!~jKujD Ê CC,kSn(n/Om1 !¢%{s />D7^)dm-l&[ 0bmLqyhFгr 5 af|68͗![&JLU3jh?&>e-zJޱ,vڃC0Agwo0lpBUb CnQf.<>量iV9g,hLX\F"3#hyk^b\Oac*{Jk! 2vh_d r0oJ]8c" O$߇O*2g˗ğ@o+T-C\LRg߁S:!C(ן0eΣoƼqHG{Zt~$K) CAdMT ϵ0J(W#_&8rFy{lDF6Ůo_dl(7m֢)!zra ܅H&"=į-G4WͅaRKσ{bǚ'C"B:V'Cw {A ŘR3<.jh9 L;KUy4#KHLj zc#\/GV˨lv ͖ms{S3fd "J"@O\.xy BAڭ+ ҅A̯g: 7oJ<̫2`=e5RY7_oJ8V ;Cƽnց3U۫]WvSMz##>47܋m,wkrE;%X"?W/qbֲW`v9ňT`Qm.= ;o[4E޾QXT!mEER*g:>B}E -4gJ-gyahn6;±QVpZ5oP|l, t ˿vLj/(1Qeq4g!#v wȦ}2߯Yu%))0ަ6kpG9$Q<bvWqgI=Vgq;U*PH95$Xza>ނK-A+RpťלRatҟ6 -_l`_\vͯEރ#lg$zu vL} 1ELuyt >9|⭽>P.9~O:3pvR=6!1,7OX$sE)wcA }(C9( Ț1yCdI~QχQ0X{Z&mTM4|h~e=ghUz:wbK>IVe\ă&z\|`p8GOc@Hsg)™İ[ޗzN@t?+8}C>u8*Џ]ZZ}Mk;4tJL<<"z9m)+2T"*$%>/hP2_F4EA''zg۩2FI%}Y'2,I8KBj2Fҍ՛Mk8vo? Z-ԆT9Ml^4K)ÓBqu_) ~4ZR'HMIXZ: zSUpѐR1OȌ<"pNK5kv2 /nZ94Z@mV `?pR"6ܻHsX>*u :7sز "L+GIB&2ӟyde٢Y$AR0wvͽ>ik5j%ZaKWM_Dom''1F+4a *WzU$ գN!Ǎ -o[ܔqm|+@ `,=o**7d LiJ@EyeN,ã%CXq ~iSzj(MzG(njM"_omoVHZ"/Je 4쟉z@Bc#y],9±r7Aj `$ W7zL˨hcaGr y$:vP;7鬃|ݚ~m׭p ~|X (>Ro1K~œpF8X-5cK_ H:1ȈxSK /FX,Y6J$5>5ش։K:XCV-̱v K.~\(ϲ!kuj_& b_?/x* Z*D`Y옸:b'ͪ3mne1x8 }pNj!a&k|aE}FCNFj3jSͽ=NPE =S>SCbo=%Ds(AC^-Fv nPݳmaW|e%H ֓вC0= C>ūYyӿ-!aR,k짦Yk̼E~*)o~J8s$%[ĸXm58ZrOu͜#O| ?Ւ|{M&ߛˮfX*/F/!>*MJidKlVt&}T?0t̞ds?GB y"Dvzƻy7O̸!Y2oEDފM/TXs)QM2v.d VZ<`̛/; <<_w0 ! ҡWZ4w./;gs _!P󃬏3qj?)t URe<"a`DRf zeB7օS$OIx{ Q4 nsK6 WS|<,Cm>}0UuCBvu߻tzǾzN:bT~H\~RmV L:"ր"Wڴl/ߐe8md4 eDĹħfo\s!C[d(N 5_5(uR?2@7*] $bԜe3V`k -_ -"@c>szی^ @Ffu Q 62d?HIPӡK#V@oMh3_K.tR+rb˒@h!ρِ:)RF.ec~0NQ房4X^P7v1Sp$\sZn'3ҵ`M}g ;)W E-#zYGl1;XC_\9P0'⥛㌜J+-PAmυўoYO7%Lʼn h; )NxX$[4 XS [Yɜ  l߃-[N SģHo,p;L f8))PB5˜>Z7v8́˜SYSR!d4p&M,QA1V}D+LKv+PڨWL8x'ghQ|aO^olGOGh2J37fNx0Q.C r& i9׬αd(jCBAu,cFÉ. CqVUz5^.N#G=u&A*ݱe,hl0 >(p։rJ8s/-ON&\dI 9&<_!ض^W炧£3ZKa--[լsSab J*zk׶w{{%dmA; }$}?1.w1S@7|Vm,Rd˂'g1vonmZh[ԉAku~DHcH&^9Fmţ.=;q&W}IF%wBY*¬ݨ%BjϦxC×<#Pz7UG3[Nn{h/zrIw򞰇~E9=K1xb)̺OF0EsZ.Q*lu{VfE<)0_F4XyB(Yux+W;ܷ| 9௡X?u7 ~ֽRS,Ͷ-# M\һ8(t%JGXbHh`jAWt&K ( ͐iOIQd5K&"s &cf!S#y~zo "a#wL-!$$L5l=v5 6gڛLR:%/YC-Yu;T ƅrC5S蹩0 6'$dxq ܢ:kf#ѴtOIcLS2W$7iRK@߾#%fnoMT$kV ea$ǝHߩ*}ٮ?J8će٘[E,Tx+H8LI`dn4dxy꫎qQs=Ae=+ BZH lusxQ 9-Sj Ze?f ' RV sALhS// \\oz@;%9=00y+!]Cܳ1gr>UT]4O`#Z(ؘCH7MhKOk| 4u,0[R~>!qd-2=6BH7} PhSOG{l ݎ + {^|֨']tР6 x5p%.0xFu'?FKq^c'b-Yl^'1NtVD ۟=Sd4*5ҏo_ޞ|%Dqc9 S;RG1ʼu~.! 'Hq!۱ ļw!&ULfFC!&Q4z趐wv/+Ѵ*=Cޣpk e5Tk c(s%K%0SPM/bM+y~U91kqOmfᗚZu^c[6  M$K38xZ{`jjg7A+Ǘ*e~TiT| j8 7ސ+ #٢>RN"΍=®63(>MQgK=yޅW=A,Uز*md*>[Z1Vl8)zI>lyKAHKpCn&3-CDt9?`Ҍn8 Y&՛Gz|J'}~+1rc;q'y=n^q Èz|a-JBq i-.'d#F2ucM | Nޓ+մ)GjbAK|Bǖ (+'7#"d62u@vٻg~1 c/9`XsJ )"PIqМ&MX%iiDM߬i]0͏_>34.ǯNF9ͱΧv:A#a(:GΛ|t/-]BeJU#LmB*"m@Nm)ҙR&?GW4`/*T u`kU^@4XVXY3ř AH?g]o$sy?iXAϋl>o>ҫ}Am;iqi^) D8Zjvi O W`菂3l\ޘ~%I8a)ڬ0KmAwR_#V>yZ^i^\8JmXE:)z lc5ڣxQn RݝbM7,&AK61ƢqWCUrIZ$i3$&֝]$g[DOD+N7AD".@Qw'CR>& ?PHct#*, ڴ]O\l?7tHT,=.Zo˽7?2ͬNTUpy 6D}[2Y(# $jl3 94D GTsߙHI%:%X\rd"UfCcQCnrd'.K|K@xN_t[VBkt&ʫpG{MF" & JٱV XLPa 07^Bv?|Ϥ\'-U6cZ'yRC ]'Wxױd=oVrkE~b\ .aŶE_r6K+Ϲ.B_Wq hi7:%e+)-I$\wLP+G+>4˾SNt&_FtIb\׈&Ia,Vpd@bmA+j5kH Ckqj&W zq3-ƅ@8hgsa'<dONxCTL7ba~B28& .&r( "k H*.mJ}nJS!G~>z h4F,VۊЄO$̌62^$fJ6u6+~@TMچEZRHo{|Fp1DHJd!nxk6*q:NT9, ߾`+ 7V|%({j>^R&f?k-U Z>-pXWNgbh_nl⺵<:2 ͛axQs 74DMFNf2"Q"i!1[^VӚzZ ż(ZUO%ua!| dI4H@Oz mj6:LPܨu|$zD/$\yrm9l8[F#uj Ӭscv`gl7" K5֕7K؀Qn &0᳝omœY&ݫ]4Yt|\JUrE? VgpñJŬG=gw9r|T\˾JU׏]1LBLz o"ӽ:\}qe[(J1F at@rKS%,Q67 >Wr_u%NxkC[͆H5lhN9#!δHD?Ƣ X =ځ9P4 RSDɆ*=,](EovY] 997} RH æ4?/tK؆SX k"0 G)6uu`ʪa`8/Q^N86}ɵeBu YH jEsI1챾} 5&Cն2a富f1,>-Sspdy[t=LBjzbF݇_Fd&Qa+Sq $2pUO?ƗotUqZÑRa9q@ıQ_ײ-]UE VAnC;vJc?b^\)26A<4z e@ڐs8~D%lVgm&uz&g/zM^w]MBBˀR!!`#)ڐ\K2:h.觨g _T71GSc &D!0BYFnBaF_rG"ZN b@ZS&YjUwk $\C6씚R堸C9sVX^! ^"' Ч t ]؟LwߞS2I,eU_~_5Z=c?KYNdeyt]K\*f,+NLAx'A&;HU">"ɶ:7L^\n`⻓ pkq mbtR%)Wr߄1~ 월P@KSږO]|u TŮ xT⚎ J'ϗjkbw#Cc{Jyvi:.">3E!JLUPCh ;yI[CbղmvY^Y"p+UǒNd fr]=s,BN"B DΥ} ^j@lȢ )e(Hӏ+jUw1'|ook@\[) P SȺIn*G=`1"(>;4p1<Х*_{7ys5^ |Oj۳ z AT^}֎2o o`\x]ąT ;x#:E_"A˜H-#zJn;NO8z\`]ݿݛ^] ' O +Zc#)| ta-|/#Bja[l7h*ãOetS6>iN)tY2.!huzr%Tl)rUNdS /OoޱM1-PûI@0 >0 ǸP #|6q̈́6q*]'#3+Kxm#*1#-~ kAǎ.dZm[ƗWcዐV=BUF2jFR?. eZX魚Ýr2ec]e`DoiXuӀU:VT.Vw/!˃F/ý=> $s_R;{Rlt ؁lm`zUնC }(Ie Ma~F4;] nhb_@Ufz5,CG#EiU2W:-kے측M@k,~˜Ƴ/0LOÇl!,JP;\Ӡ +fRcM*O@NKnxF ꄮyBYAlPnb`\8/ , tqP-xscvsW1lgs{0(B4Gnl)'*kK0w3AoV|ݢ'|-=BA|Xb՟.pICR\à9 Kؖp9wsowy8a<s۫b ,;Gc)@ױ10]bOۏ{~{Ԅ-a~7۔OWR L=rw+ƪ% m[VA ] $!`) lCz5p:&IJ'D.k&AP)<όr!}}F{<8Z}K{)2f/E7tegڷh<lNHU"7435w&1IbɳF~~EE('W2 Y-B?v27|;gWaƺT3Q{:ljZ 8Z l]O['&&[?֙- `rG,+iz]3^gel&8oCBo uȊIoQ[n&z;$-(;ʭ`?sO\j*&"b"ʡynPr (l_cv)Yp`ƺ@:"< BsTY42 f{[flxMlT0 *7UʮWƇXI WG]ju׮8.%mzʜ [Ra󊲘?S}QWcr _p@S/sg:l{ i9xpW>r'VXiK zN[z?emfGᎥ$P= +lmu1Esb,ݟx٘㾮/L8 tnwTP##BO=nJ,3+5Yj[*sCdNQŪ'yPLAkb-rMKY\ty4'vMTO@HiZ, ;iy. G}v܌1wU"|xQ4zڑTެhYF(u XUj:HT `pH o1khvƹ‹ևT 6N%Lp +/2\\\D/@@0=l &miW\Ӵ%366,c>H_~!=Syzljȩ`gtP&k(&?#X!]Rr5% $]gl'A2;nRK62ʠ3 UuS 6@f|iYVt+P-iIV~Ұ f:|s>9}ĺ=TjW Uy/T%K-ܩBi7h"QqފMm'hx|לkC%i2g@[;r#lC#/\-o\/Bw,HN5'p/ bdFuvL% Ȭןd 91+/LoT/E:÷;psgc:5|9.r1fNoHFE֕bӑ}Ԙ$o6)X^w0q./9$D2Z7.)eY4 y-8]#1SSgɌ:$@jnec{ [?/ Pg":W% +n65Յ)q2p!&&oSyvڸӺJOĨxv@̻ѷXxA/=TL,?X64Kf>xnr m2 C$ZɊ-oy hI]$k@/~`1gh[ʇr]Kő6耓, qȹ&I~]WX׎ixTzpՂT :gLMi" /ӝv%_H a ;v/o~@ FLo,o%]zԜDeyn9(@"O?m'{8 h;H:hI'`6"@Scus%0B-(I{۳p /"4˂k= ܖݥu [uTmOX@ie7&UC:ov=y!,tEB;JO?t%R;iŢB/?G6{OVoZu24rnMgNvEd DCܻERm$;9xeBVB)@YG%ar2ya{Hvw65M*OoWފA+rb0lS{L I9sd\-xMH.p `HW%%PhȁboXPt\^n)%bJqt<؟oD ?i17a}IS a!.uQD_(paꯖ<$4֢>Jң~2(R@k:b^! !5Pk+kh}5Մ'}l[QKvY=$˲BQ+ʾbIQ-__"̕-3h4zpa̱ gzãr|w*5ǀDUib9hU/2A&ޢMw <;YdnqJ/#v|3t Ѕr1]quz7)An~K2 P͗콂 a})WR@"H!S 03(gsj&ީrJ8+6ۉ[~=F,W<W T',,_z}@B/UH7c$$[cM)7$yIoUz;4 QDR]'n( yg,[S4MOq͠VRhU,#rD8`D !^NxEpC*Ip°jm^?qiސ ̝|o8A:p h^Y]sӂ_lxQLut*|ˉ[{ӺLR 5#TZ~15U7{S'W0ld#{ ۥ>vBnׄqzs< /eL_mS[9=KWbIL o;]L~܎ &$Zm4)yn =Uݜ4̳Q܀_ؘ㰬#rķXxbç= *01E1ˣ|)leBUA=KƩUp%+HuV U wSf .oJg׫p)S!l~ t[/uq-{d&n̟'.厪1zM&|,՞z˔ઈ';.16RB)XMQ ~VT2襤N&*G!k3ݻgdɒ9^5m4$T5HŠ1E녝<(A:~SױDJgX9dt]iL}%A| ",h9w*n.$$;jNM]oOA6zgT_JbGSrEAU a <ƾT0H֝+dh ?4U.Ҧ)c~lrr@kkW.L "kc'!v$L㣄n@s S9]ZT6)5 A؟Gz>rʑw %fp'žU\U2`6lO]dO[5}騒\3?meGZ8.%%I;B=3)>{A[s'o.:aaExcO݄|e gzg0FdڢٙH3Q`e_&;V<Ҙ5VXv[Uoa",v%fa9\vfc092JPb9K=zL'Cm]3R)^_iЁ (c6u@K vx@*|yٳPpSP(2TWgvAl IJ1jđJ\Gx"Vip0#^;]%Y|U|:J!z*pK' δgƌk9fr&iYIW.'֘v&Yqڠ1W9% 0&Sđ|) K r<ip"]ovuFuo0k]#~ͭt+`b(,MFaU@KJ~( Q?54G"B_e?Fo"[KicƐVΰ Z( fuz 8kE #$[CZu3?jwcCzO {b\{ }Ӕ\7Vu\!mu;))k~U/ s0hg >vV8^Wfa`!*7uSW"{y"jӢx z`1-^s^e{"x{KyuhX!Ik{93[opV-?bXGQ貐|\)"ɼ`HO{0肸c2X=MN?O&QoAKfvєs/˨2h$زnӌ/q045Wxn-_?c\$ gVN5j73pݦ{N 3&4 1!k;Ka_@9pk<捻tgPy9-pQ ?|ԯ 83dYl"xNL<9&ƃO}%xbL.'ܿ˪\/&/(*sqKBArp%A+rE"cF#`CVkqϯ={+ɵ`GE gGȝ"Q f3wEpWU$b]{2$SᨷB)\mc=loQX:":P @t:eyNצ4Px:r$j@LIcwԃ#a]){='1DSJXy.ri4$pg9ک+:-= s0v{ooRFppo+t5{]_V]lPP{|.y̖RQe7/A r}&)"~F$s6wAhm"k뉌"T^d A4&cFiM`@Yw_>8ƥ/ٯ~F&ҕb6co'b`w$V+ޅ#*9@'߬3 mBNūΦ1Gw9a|tKKgٞf}!I3S蓿On>'mq皴`ZA{?I[p 6{a|ҹ8avv)%OeuGXe,2m^|]U+I׭ʷ='$rRߣa?=(h\qX QTʑy& =%?4\ -E +)ʇD#x34v\aDl3Mzn]-Q)8+D5UVfU& M.ݞ^燦Փk-,9x][1tOIXI+6(Yi;Zc=˯W,-5:PSC{ k2IE ńX%H׏ 鬢ޮi)ZO[94oC@T168 2k7ז^ !eiԚ\Z?,u۹9Fx$Yg6Eoy\ xX>6pN(s~a@%0q$N*qBS%+ct n"|6#% w=g3>uj5_J+>AefYqFSX#CfeV)ҠRKb/t_A)#C:3Aq7*X"nl?_"_sLPK҈h$k+&ϝ^: n*?FY: e sؗc6өr'AH:#{Q`ɧoY.!>K\U1G{(+$A TԞell nd鋋g޶~3UMGP\}-[P(. / FG':פE],>+KV"mAr0}p|Dy"ˬ0' 0zUx596WӶX;[m4v7 YڲmTr]SV dFc`A$Ha*w^#ٯϫ\Ps'nGzfQj6tg2s6|R|;|Ma^91T|(Sy8$>^SYt4xr{{\UdϤ̶fQqJ~SiT@]s R&IV6d9ȭҜ T~3d4o=tk#\/H.z6EKa{10Uyu\vىⲒӒ0 T,NlvJLkNLS Eh/)7nBYՒ[^FM~R/1U'b3:=Sry3Q8*~b>&S3]\Sl;Q~Lk() Onr/2*gu]X["Gv~(^WC>It>hٸ&e-B8ӏme L)~2Y h 4I$~FPlu MUr}Dʙ+j,P'S!P"ԉ"1kkxhht܆XqIŏݙJk6?B0dTU _GZ* Dn<-[_L9JEHHJC%^-xKXK~j@ >|m0U |10[l vEM+SM\ lipD풦>&X]l,b Wd3FB+A{YU PQfl~d`p ԢGXQ=sGO%;Ix~}VG@)zAxox^OpJ,_S6In$ɊYrLg]Td #7qW@`CYps8ԴIO2"T$k"2.T 0Px,+Cv@95gb3m(J+j\?x.8xZ!CK9hZxOn>Qm^I#M*_&+U]>nxƷ(A |"#Sz Nohf3l/j=tDw6Κ}J ^"F8STʹe]={H^p. a+iϊ}]d N`<&$i Gύ(WTggIqo7_, D_^0gNEfTN4h xǺL5v]Q;yѠ"70I(@gѮ7T†ox߻%61|95X)섚܂_ 319UEf6]@˶eْax"pk`YOd# \S.w*cHGlv:?nkëڡ zBLk]x@Sf9{f߱Z/n@\:Gdi.":O_b5Yɾ^w@QO ,Mem>FpbQ)ܙs8PMt&v\XOT.]Tnb(p[S]>]HMY>Kk`Ї‰@=1TEިݶ~蛄A͕3;->>׏4<7%NQ;TǧSe$ ӡLdR6F>6Cv"T5}DBBB0$:zf)j}yCG.EKrłMqyL"U 6[y*g;L/;yti2܍WW"kw5+K% d\jRqCr<Kv%[ 9"o8[QzC-+s$K+rN ۉ"I_th$ )e_Oݩ}%Q S:H6bMwˡ ,h;D&XH0S:|c{Q\Q/\dY\UO|/(äJ~E2Hog|!{}`,(J#U>fdzY|lD nm`ޫc o0K{),bվAzXfKs~s-M-D$yJ3m.ZĉsYȌBQEM*H9%M.EZ]r y_\> cil7x|ȃBswd~u,wzyV*:ڦy&qRq^Ysa ̸&\?"7MrdOHj}>I"" |PUlRj(wu&u!Q0t5"T:f.1)R:lHr qRNofIBm0 ̫u*`T c| xWSжk6M?*=u~JH7t4LY٤bb\|H64O K?ijN 6?GV /Z'o=0 z:<Oϥ:Cq%-|1%D y?f VcljY˻c' #.SO^C[P4XZ2|%(H_\E~0ںkx|!!!O8C94U]oh1>]/$c,h%iM*!!J#yˇ~giDRgyp75f%r늺Q]~@+b,*Ik5PCdKR 5sQg(%}q¶j euT!FZf4\yo{OA1XYI[mS6x[\t"ޜ>+>̆;["Q1ӐqFr`䱳, rtAOGO3GL߽`>uʔf) AF7J.жJ iXQos|ƼǢ pyڰh΁ 5S6)wIҌOVR>mҫe{ Y%\NLuq4PI pGk&6XϿqȩNdj|0bhA`h.&5~AX"u0rݼ]wg Y{FnCê_SEA=wD7lve%R-ZR#fzk>D^j|=|ѿ:Dda UŔmҿ"͌2^Dޅy@O bM} kz.]EuOz.!9@3"*r01/$+VyXCW=^j,bBt(}v9`NJ t=BhڀgU>-X+m0a[؇g$VQgVVXihX'>Ky'Ɗ3Y)N̨/耀 \J2f(r'⥅; $Ѯ˒.ŃDŒr/ 5V~G|-Ζs4 |W^Ț4.J rX+ʋ{Mk嶷1&qI&j=v/hɤN8VWu.uzgV22~;I ;H~WfJ8sՆe6?(i." y llՒ@E_k}zl\4 nôQi _k`y*| (p;w^۴pf:k Vc[K8J ҠZmWV2H<%$JjJ?_h ޓ -Tˀ^0 (q!UˆYL8/ }XRf, >ˮc>Dv)Ȩ\Htm+W΂i<#ʬ Ԭa@r>qNxY2nxh#vف^)kiS h/Stn58W gq (D͘x` N^|-<H>g^c^`Y%V`#"V%6)]YY4K.`xX hbE9P9kL+ k2 pWÁ 6TA˛ʵ\_,;KDm4 Z3ݲr-PXڃҞ rEM%3`[ D*7=@pfXGyIiO|桙bB9bٚ$_%NPxC"1ӫ-㉲`F·ҳ~mREnl.Sehg(F*+л>&ޮY uP^Y[L7t+/v]Ӈjm2bW}v./ kӚJrh.YSP|Ԉh-Ar{mӈei2l 0_@}YRP"@yA| Nկe޾tك0z@r mi\UO0x.pE.c&6)u9|e^2ꩱnaPh#LaR5jRcx_EF/0$zu8}މn A+h1 o廚r78<rP ։NymFD\{{/HDG7 [J$c*>"J _--./HKOnW>Q<-67ET0B,E=^2`n?ڋ=+}S(yXh>pk4 RAEzK2SB ŕ`w.嵭gdjڄ2h}J!c,UIL,D$$s-x0\ uؿf(&sϿUܼ`  WDzhpȮ^SKOUv䮳S#\O*fQܝ^ȭ5poflR3E"J6\Y*\lܬҐN:@\7f${s]xI\z},3X]nL.@~v N`J0K{;4ػˮ/V?cst8ƌ.VWZKaHyMLHy6ÀwпSϩRi5grR1>4Ѣ&6J#SШơOh'a(۸y RNZ j3g##9j/*wNcO*k:+1O`!h7VԛY+=sKkPSGN6os>$ !zǀm`!80˱D`9Js JݑRl\JYEyyrUHi?Z֙CzuG&yB|{e6oM%ܚU"YR֦/V^Jҧ7Q7 M88nLE8ԀmcfȢ9Iڙɦf3g!)l!]z$keb씈BfD0dxbfcKGv͝a}]w^Uy8SK\@*l%%F`'8=VR%૯,j۾\2\cwo`ҽ7Co_b)tLQZCA 9ʜ̑",lkX=_n0ăp +'.\Nm!QO=L٤E퐯 2zP05a1(5I"jVRR%lh0SE'B=u]I{ܫߥO 5d<~X{y_:MpL5ѥ䡝 c{p օբTBCKDF+NXR;[|&Cֻ7qq#9lϰu3W5h*&#]6CfG@m+X: nt>ސɒ y#ǐ}f*Xm-jTٜk7clYao<є0(W]I)PN c'[ry^*:M\^:ץç=_[O=$ NNʇ"羉K>MM>C4 gٲ[1jq_,|Xh3(J<1wb,|)rlG4Y^uçp%7 G(iekUŽIc^-H90\y%1Aw$Y<.%8_ʽ]VNXVXCM$g8,[1> R!2pBD } Hw=`˲&U˃RT  cjwpAەd5*ޝeur^㖪x-)g |`C[㠛#uƉq):+pO줞(_]GK<&Z )}z۟kw0eWʖe|-: W҅{RsSQܡX[B+ryң_y L+Cut$w&P"˜400q _&-{h#~Kf ҲWa'OZDdM܂T6O]/5=uRcth<;윃v1l9pTlOP:o}NJܸv.وً h&M¿t}Ycȶ\jl Ui3ՒI 83Q,q}J Λvp)h<2w0|ݞ.qq)}5t HP_^L# oQL:Kj?ȲA8$R7tqNf5" B#_C|߽*ɴ] pdA?IkL.!(QJ]Z lOD(M^r8yLv\i1.PkyG#2^2Eӝy5x7@Xɔ493Qj(gvV%͘VxaPDz~qݳg(c HeɔW%KϞMoa0dn|9 B,4"/=܀`"OBoH-p9ؾS Nj__mI\@m(bu:$^p8?/ڂrM~ g DBhU_|M|~r9έ:`BpB z> =A=Fwf+sL.|dh0]z;"4_9?J,{C;W}s=BXM`EXo5owc' :̡1g;v%ukkphlW&l?Tkgi|X#7Q"|&,p3[FDk0_|_ťD#i8sQɪlVb<o>Z2.{u(? ?֣@|MѐP! ݐC.1Xn<[j@+TypIfБ2\>I{%.9se&ɾJȹaLcd0:_%6ĭ! r.&+7M2> l/6ձ>ʢdBfM$ 8p n3B] .j bc@e_zZ#^ R"bmw~ =N0PIɊ ZS+il$n71Z>Ya:>i)7!tKn+LcшPs.I͙AT5h8}o%PWNOz*Y[bAҢOq4b9E!](q)4}31z[wBe85†2b{ٝ'&$T')J{fNe)1C!I贝T'g7y ۇ=.< DHYH_ k>Ռ]$斴Wò< d EddaL`q7Lgy%ꙛHy,*)ҎBb .Նv F5aZ'_kasEg/Ir bCdhh:=ima*t{]绂۠L` ŦB(76CM>g8O ,ݦ:7Ga5 B\s?(:ݳA9 @N&fo PH3MQT}7V[~P1"W3TNX+xpMoO 哚q#c"A;ũ2_=CjǸio~{ V?Z_.$+l6b a,X\'WUaqBGdk$G6xGJSGjmF.qL{%]GqkL;cvQq3d…ڍe* 7^aжx6bzz%5Ue OA =Z]ZLUU A\AHƏ Ws,6y HKter2fLmWF}}:54Fإ쳩4Ea:\P-hܭCF83֋KaD>X)c45Ч݆ēhe2{Bv MAsHv=Lw%+{ 0_9@XrN8r'}D`sy ֦=)%h~>fhVҨkGN| U![<-rW}Qְz>C$;9~vYfяv;QPk( %DwQq#gτR?=mvNO냳].s_buVWB;Wl.I;}Od&w0SŇ"Ԑ}޼\v b{yYW?Ŧ3ojekA˧[@eNoWx.EKS2'Cϯ ?l. Ϭ]NDGB 8lzp(yٱIA,dP3yBhz3*/O]=w_KlW_z B&sCVė19iK [yݷtNSߪN"0݀oM'x΢(/aHu^TࡂC:fԎVxvtB@Z׏T|_i:?&=r4!ihepVvG G#Fi@geѓ I.1pħ7k=VQB&/Ŀ[?r(EưppP^UvTf Pj6>gzVf ^塚M3Kg.bAv?&>x:(_Dhgc莓@ p߄>y>x GZy54^̳8kWf9F] ww:Z'|.Q[:͊J!4Sbae t}!ꡊօYjÆT`\$pwyGTmԝv Y۲@RP&,q>$v}8R9SH 1)~{viN_&hu< N+A Tb{*L#}sY%_s_h~qAN3?rAN1ʌ7ܸ+U,n?4 MAs-igzQ#}½\ڊ_>sC0/ϐJ1 ꣠V[biVXۗ V =ڽ& uu2ZtJ5 ZgHjdrwj?[+}XSV-瞷RYQ`L7@5F*vu#O$mxVZYf*{$@͆V*]+O+Yͪ$Rd5y5-|ףpא!Rm[)iPg`IpGw 5 Q@L)U6ٹFvN}IUv?j6ijxk_?,BeMEҏȫڈ pWv҂Ouc֍ 8o)Q9wjcoirL s]PP?jwzylodݐKgXi0F <8sYv8_*`GISBAxYva/gíKبɯA bâ4zV\JRjKbӢƚY} aWSŔQLCt^qq¯#T>s3o4i9  _G4qK΍mRc~+^gمr |qsZ(a=NnhfL J'eEdy0Bq%`<b'g'T[rkL2ŭ ϐ(if,@&W\€[uo#1U=$&G\$<@ugV.LFIql#M4sRa-:r#K:YS.֟x"/H2෿Ou c "ꨰ,3Dwri J_Ͻ/{(`m%^wZDL8Ȧ7,ۖ'/D(cuOB(6ɄT/%J!,G X!gJ-0eG\?d&暹egJJĥVmι-vBZnZkb.0v6d2S ~1y~A0=*ML,Jn\ϐ# W5ěZWHr.X0J T s5weӐ{bg6˟pJ]`Roˌu$w).kh8FHM)ڳŋyh6c %D@祀*9&Eel51t6\Ovs^:W슳UEKj 9.U3P]w)wd eDhf崨۟ d9 GVnܪJjt3LaI$"H7ר;)IsZ z<XE7ŕ>we)QK 0uHIYREmT!MpQŚ%4hH?x; 'vs"ͺ%4>ǃ0l_ yʶJŇʔJ\lg7r9j)Tt{W[dP)̩8} !3w8_b|q2pBPaA$.lnPo=$1W~x)x:^`n7չg7r-e΢N"EQz$M!}2#~y7ЫſQ8L>ld,IىiUZxdcHwbc<Tz`0*kO*vXmAF%5u&{ /ˊy`I|48Pq?^X)HFYY|Э&zhdTDza '@k]9kߑο `@װTbGą.VAGCp)úN.dr'F j4뼠e5[LO2\|X?L83Pjp=|`.^G.Ź{ɪ7im$g\p~96*FpPoJ@ ^!M!1< !KQlopq3! ,7 8-EaC'v |#gF +&]FeAWTL}ײ"J*맜Lf]/c|o|1D3گgv]A{ LbQ*ġS+1hr**4Bm'dpUw&~v'%rUS's8Elo,$ }O(Q)+8yxdcxk9 Ѱ*`jNTKv0 h%{Ȅsč_yZu|_Dp}n+uq"IMV([窰u bͤ1=)6hwT'c 5ݬ"H_p"F6w.%oٞϭ#_̻E aҡm-ʍƳ$S/Q:ǸSAx'iô7J!WT07\ѥ/Azf.rU;ct]>f5,\j,Gk PF2EE uzK I!<ҡ>,, % N\Ҧ2FI|yvM^G[|9 )kYxgJBaOq@3ރt 4!foU~Et zi)i{L!#Xvl6W[U7"(O9bŠ P"yFTAa=)s."/`xAuV%&& ǮPEԜ(*,m<w!~b3/Nb'oT91̿R|;"lv%S$:Mxpl%ӌ w[o#SFtlM, <7I*|tbb~ _0Q|b&W $8Eस7/8qjշ14ˊd]Qiꔶhƒyux +4p(rhkC *П,fjM3'a.x\n/&s S˵c~bN<.uRғ66uVQ~i3-n6Td+3 噦m7T_ќ7!a㖘O-mgof)Ze6}bo%D+?r)' &6=wz6{ &=7 D#.WߌL ۪CDүKjZ=aA.w ]r`>oji2eFO4_Ez~ӳT*Oܤ\%&2D3!$1]Ad @\IdU:i/ovR0x|X=)]\X>ZRЊO11bSQ'[ХT&mL!4Hm=}><| S#WkNOsoK$7@Bk38YB1F!7?2HuJ:+). E@AUFRxͱ *5` VPjk@d/v'o?Vaa\tU#f>'Sm8,e!z- 3Ժ} -lj܋TmB<ݥH `5y>pLԙΪc*tz}8;)zxӫAR9GGoW#ĕ|eQ6"ldUQ4f Ԡ<`gl24{Jhqq##kشeE5bjypΐi٧}Wu/`o A/uhM](sr>f쇘&ddsqՁgwќ 㠻ZB3%۠ W)p/9QMnhCy=EKł}0͋ RsjS?ڹD a`ޙc+ޘ 59|3v'`cvhXOS/ ?yc2!w~W[3:WٓB٫5{EߡO֍% `[azI OsaoPh2u|ȴ_C( PO2ܛo^_"eF+ӏ̞NDQSCܫL2qgle{"+wqhd 5Hp٦Dp <ݘ0:|op%bݛ0j-K;TdK .(Hz47rrfPvn/ Zxbˌ}D?C}V-z7.n$QH$ʜɪm0ۇ%6a R޵5)2hzj,-|>ANn4jkTG7'PGރEG{]lZ1 y(luSxD'KiVM|'r1R蔆_I 4ZEYZϱk:0~f=5>J (>ySQFͺVZ{N*-W: :N|c6`f^Gꢱk׮asջl !P01Sip[\ (}Ǒ1`}q:?~3 z(%iY :0qRٳvkq2b4Qh}ڥk  ^>;k۴ ߿Ѓk5G/CZgUʩ S$\z^w&2IHD/B^Xe[U6}GRʙšDoVU;Ӱ /I4,Xfѷurn@RA!9  .3ٹ3_ cqO㗨gogG O&rRpn8 ڗ҆ Gydo{uwdO`06C,M /fR1b0|&`^P/}aDD[90':U I3xZ;0wo΢IXwO b^+.n%HqTm@(pv$ rWI(u+Q4)LXX?HK f#G~ȢwɮhuAWoRáF?_M.qԲj]_5QjR-TA4iy:q` pE5/X .ƧBeM/?Y?4zkIe4nOUcm(:UK (u zLS>>V0v N# CL, ʎJVxCsZWd=I4Cz9 rUk5?ز:$1GSxY݌EFQhOE՟BckhZu"m%aʪZ]e8~ŋʲL|IVmdRi}>$tn;TXя-2Fhd4.t"*ܵ-1_L6D6"%p T}8n)ΓjȆ?7 ko4X y^#: 3y~94.lvZ}]TP!;anL]\mJ Њ(EiЭ BtE ξeYXt"r6&®ؕ }M|k |4[twD`s1NZkbW0" M7S͍'NV^\zCh XvP3ƧڻKac:KA= JY5D8Ze2jŐTc d,LxOkE7 AșA5!yDw@$% *`ns ջ )ňXCrX$BkS/sn[spp"[Hk8vȘpIpSQ}r^$Kb?Jun D*L8qfiH`~Dccc0<_eKsN-uB?[˳J"sBfLQdžd`|,|3 WKwĥS< ZmC_&)GxR۾Li[dy'BK1uZk\D1 ." _*}ޭzMBYlB[S!7 q{g|ŻVWspեn8m򸢋#V 3/ ;#4ں7FZJuH''<zWƩWM5k_FCeB}$\>aA͑Xg2_xe`3T94"QʼnO6{ ,)\>0԰6Y`RمH òW{#{wd_؊G1 ~R$L'Xt\KDg2ֶg'}]SpYZ[r8ps]Z0/Y{F2 N~K˻BKKC>:b]wi[|}HmԢR>|'W!w=3@.Vs1ijldȉ$^4'Q>zPjo(~F)պp3Ĝd9啘rZ)yZ/[8+=箣/€]b] F Nحg:&8ADIZ-vm05טvKOW.3o ʺ.5=vI#OJl5J;?/R4F(\p^`CsNK5p^[́<{[NO&b0le £kG A4G[N⅘Yx9e{7@)oF[܁ѱ|funG a_s|*]K끎:U9#R>ަI3Pt$?g}#*1WZ ek;l7<8[wb|H9)q+vq@5ٳ׋`n}t#&se[+ls ?N&` 5w+OR:`} 7C6FyWr=iy¨G{5r"U(C+[W0]tܸ]$tt"HY%Yb@ХYN疭Ę nL}ʁw8 ]rrT:P_^W} 8bԔ*M&t=[;vɤ\:WOԖ!@Rz;tZ|z8t"؝zt r/XKXnla1vDnk 6op ̩#DP?`LxIGV몮Tt5qAgԔQP7PlݽSI5PK`y]cnVpPok*̀zsO jt}JLE,? x!Zo2P/ #@ Oow;!Nj8gh}eO F̹P0-3Oc]ZD'f,]6*V @6=`@,o~4s 3/o䔀Qqwq"iX.2Z1C!󣫝8F^,lrkP?]3@2x]'RKTa-4dzE (foA&z^K0-R7TOk{YMj9m\OU`>y7>i QYW]QʯLʢbhxw-['!8_w۴_{~WdsW>sh='#g]Yy@cۡn :K]񘢳e8Su qdW@]xiex NV2kOu.DFq[Ks1dDbݯԻsćw$_`ECXy$I3]1Y4r'5J2v$a3@F-8C6"e4 MՐ\1wx,XG Q}Z_2!yhRt J)~dL=za.&F7aYAŢr*=?vu:1 EX_[Xr5_kgY~ hCj<ۂ)cICi2Wxfi V K?clݭ K<*?F v=u9rt(1׌z鸏i}vjĐAk:PPViǎtՍ^R"YJ>tW7n2㙮%A_H{Zs`|P`5C,3J .qa 9},*j'C-=\djWg@7(YGnKp*Brq_\J}"o*y^ M3YWjs\x6|N]{G~!UYP>y8q)e_.b/d~Miqpu*P# 0/r;[4aJT.Z*UCKonctgxѯ61ւT"ߜrur =~WPFw?$VWWMqѨt 0=+229('T;&(^nJ^ SLOק"4a龰 fe.}$mמ{u}=-y[{w%Hwi@R *ܠVW@fye}B8R_B3򆈩Q%=4 's~sNeBE#SN7mξXWgRŨa adV4r!1Z.KIH^[AԵUj"هZ b6'{ N)i"h`.l9|p^i5Wrb{ <۲Ⰿ^uZ|OhwIU;?5"-9\frjbI0wMɗ̹OM#m+_)&{B$  UߔtѬoBlɋ [E>LRi}L{>h?x}Fde(݌ފ d䬣!{NH^E~-Rd:s"IF5xYy6OQD83'4}Q_zQܾb'm)~ݵ1xe_ lMc^3jV&yq<A'c#٥7P3/ULCt Ș/$`Pd.a"?^zb{*TvDlTk /j >djqh~d1wbPG n 1%6-9ӻ9/Oa|Md%rW"٦ srZg@%q(ZX~ ZS>=dO֕M.9.8_ k=re23&r16Kq.>j.{$қU #t 'Rͪ!#TŚݥ,~DLἙ䓇Wu ^m蛞O{M`[D|5a!t懴N=a 3 $$Ϩchm tOmveXqFgЁuwg? IJH9Icx@WYk &uҬ?pVZv *IS_PNV6k4l@ҕ̐NW=J":6ńfRءP1ӈp[[^̹_7~EѵԕF2k:UzO;W#, JyE*pRr4>PE¯|A{$FYN%~mB?&Nxd/$hȦ̳ "ukNXE[z?ϞiNWAfN><%3te)#/{e>C!UϤ+ѕ)^N'F"J^:MpE !(Qg(lI)\y# tV0D %ϲ 8a[6U{m#q{{ՎJXGE`OƧLs5.Rn\b:˼`NP_i|0 gCV(w~< φ U 5Ts.ABQˀf>;gaO홖8PF^+! VfG)@$$BUH~9& /4KOh. _>t7zx4y1OD4ͣțڊ͜12YlzE7yA\|DžZJY) q9A9p;#NYoMx?*-TVfSC2y5]=e i@^-%dtCNܔJKbHp9A[=T.uMb[KIPj C\.&atSC8iDI[HGGձu4nd2VUbd\SYK#9Өt/y^B0O,<4qVId?͜YٝhƔ[Vvr yZ)@ w6-hx6q(R=|F1M3ͫb5b̦8(L34edyLxrUa ?הIRhwW;w+Nmp*e5{ ZCA?\o6σF\0C/u+ex5yrr"j<|oRըcCFN3]+3pYNKlM@djGoA$j5ѯM$1(x&E [(Lޅ/K'DߞNZꗀoJ:#P+5-Y\uPlͨ7kLmC_yN]&g*)44WZڵob/fjQ75LR/DbY_+OC?P&cb;cLh;^׻ ﷏RE#ȡW.` î먆QՊmAA7ZJ]I6tYfOnf}'$k_y^Dx2w(lw3R [ggVn4zESҔ&r,i4IAiT3ai3>a BfE 00"V e \Y(:Ucp`$>1ۿ@_3ދXR~^;}&},9a\1Ieyyl"[]MbBiypm7xg`M%W:U8 gl1nFQWߵhYZ;&Y& ¢RDraѭ|c ?RuZE_*3Pr(7UvC@^է j[\΋IBU]x7CH/|2t0&>hPDsYQ+sXޝ7fax'sxp(~*噈dIɳH*w.QJZZP΋:%@YL{BiK!lkEDZv_-MHfa{ț]|b2})%Y-/gәb%X;Awzהy}hr "ܥd(T\ƾޚ$,=meIƥܗA:($eQfB 5H}M6S ƋsZs+eg[O0,|D)M]& ֺOn%.d uE1?c4cy4oD0vbbHi+|O{˜4h#NOgJ@_,˲xrs"d_$ϞHA8' *Mtj>pҕ>0XClGy >.ĩ+-ʑiU ykDyKTF- &T-AfΘV+oS׳,i ҷ< *v|Iq^xmo>C=ߓ'RDMA‡aGF ]qXeh\pT)c sbdlBh֐> `y P as<sO*+îV|8zOt(' ϋ,K?@` \tCت[V(J?38AjZzR0ݯ@U{[O'mMP֕q46-9BK,LtـT6JK&b_6 .B\1I v/] a/fY\ 5[BߧbATe ( bc&,H",?+{IY##(,c;r)L36ڙ Kݔ~oݳ)%lT:zIŀY~Ԭxc4';)h/pCcY]|c-]giߴB>qrX<5nQY+C$P,w, xg"V d~s/bĶܥ\U؃jZ.O 7>'i_GDK' paGE}:PM"ӥӎd Sڼ12QF[)8@ }:&ߊ{M$]亠h^S1aXڶm CJn4̈́xROM *$qȪfՋUs]l^)SsvtLx5mn?bl۫eE凍dh~:jZ*ocg{ayk).qM{a|}'fڽ֊_.b+mjʆb%{5Cvt?(a V=S}ja`c 5O+fJ䩢h zzX%9\Џǫ :а <(}-{3"+dHEHf rJ- U08|B+G'&D?~=􁠊X 9^xi 7NطLH!0d:u lWq8p#j޻ذY8Zr{AБtvžȾVH%Fx/GQ+΢)R%EhXaIP#e  8!~ aIX~^hĤBs`"ɫLZLVYx\0cδIX Iĥ88ȴK\T/ Ok"2.6t1Xhcԃ#]w:d==N7w p'rS%s&>{ƲefJ^0^?D𶹕xXʓ^u\2cQ(9ұ% kU4OV4uE:iH\ ˭ \vk$ںJ)phn7iwn/ "P^֙QVF>Jp"\bs60hq{n4=!ʿ"rz5w<?9(kd@7-%1Hesxa| 綹.PSIsn1Dž]}(oCw@xEo\mDP<}XAٖ?UK7)aҸɺti@I/},-,Md /Grfb?v+5ЫN!IԌ{ɬ+E.Nv+w*-']Qwu}Щc[$I wÕ-G Q&N2o [YD]dߒ˖Qb,W|;i3XTy|n9"U{Fq}Ŷpy]u[mݗ DT!ڣdm0woZ|3JJu#U:62q 2fݻ.<ՒM4?*F /\ANU^hzcYNJCz }ۻ*A_k5(HSçE#c8槮p0wavհfqgdXhS]e/4ŘР5'. fR\A VSFcH `ک!_IӚӢΟ& >݃3lLY!qT\ TS8(;ݗpQ,GZ F:<% `X7(A"]׏> Qh7vyV[ ДMe~9j0d`(pZ4-Jxc0OWJ{\Dz(e"CDY,}CjȂobwe$8(JbP#xqS:]=4Z6kQh%gkSqJ{Gʃ$! "o(m٭=.jms]aQ {t/xE\A }[i$Ʒ͡P@x3 Lf Z rWPz)"H31LPa%AzRi so?@*W)v߉|$$t7ɷϬ7kRʪh_{ŔipYZT]{ )y3t)Kq&O&P<,Z1A;YC#?~&ʃ-%5HiBPDnSI)_f9J;觔=0G+j i7?!TlxS$H7r?vL|QmV 錏t3j 㲮FLg|z ~"HRU~$?a{Eբ]02^ՉHŎX<$1HHrtؒ1ֳ>2&8ANVYkxqE(+|G:36+aL'':q%hЊ8xt~ Ps|5~ J[V)Gs 0F]lV] 7䠽` )Q:؍",Ae^ xLـ43Yc`&ƎuhQb9kžbg>n-yU|,WODnp+7sJ-h$I5&EQ)E%X PUPb3Lpj'5}YvDn ]AD8`=H?$h4`Dt! RgʬHBf:j@P]̣Q}p o~Y*1hĻk [1UW@աzɊ$ SR*- hDX|4->in:sv59/̴S)D'v|`ϑDj KA O/}~i@g*S顤fgOGm{}:ә**uqXeP]UC0<ɉ MCƻkn\Ņp4͸/*`zGKbNT,'ܭ7E˕@[9 J"AˏaeqP#'J`mz(0RU۬TO7'փ|- ŋ&oKlUr[ޥ$3zV}Ho^8QzX;1r.dQȁݧ@.cHݕTn%T!!U#*ҹ6.8 9?kj7}E<CGG,ƭIxK$2qXw=L`MW@պո箓ڌj} ɲҨXXrft *fc ]'KM'5'Cs 6Ui60UTȎYtxxٱlVh~~c$ÖxuI:`A PɨF.71n۾;!>eK 'O!U= 8A$S? w TV"Z H.A=6",$cFn^8ADnA7}h!䑼}DԻRD Y>e rpԐS$O.fHgivDQĠU ͸4H zkwC#{%4V.?jSe]_qCBy^j"E]Cehw^爦U`߬1^T~/}=Lk%T ^X,Ɣ6sL#u2pgG]hIm1p=R"gH&IlzMD~6 +Tov3&Mvd=fpEۏj,ɂ/>k]$_`*Z'!e M0yoFY?\7]77Z*|| ~.pH\r&@%']P?#T$r~w?HeɠmL60k)׃mI"o# Tj (gST0:lBS%-Y29( F)fx';hJj6e3ӌ/ &^=L}gFJ7EN4dċF,P6k#Ӥ):"ᩎV>~ ܺH*J`_1'DB#M S@n2Wf'0q9aDA.t8pP|֠j-g B_mS1R_Y[\ql-2XCbhDղpr4b׋I<(@eWk(2\=3,Ct yD )w<`U#V4$#tl )zr]@`-E\1ODeYbKÌBvKlg!,^fr1;폨<ᒀΉMr6$!r +ºXH"]/w e0="$O /Jqnd&Cn\kƒVo8v|;(f!'0=r`tk(ƳPst-b|iq(a#5-ט~E o*%F 8N^ڌU=zFf14I'v)'>rhTCtџY:{+6|AG-yY@rSh{o[g?݋-lZl<[Y]"{+Ď.:$*v] S t׭X*^DrۼI $޺l֋*ΌwQkr, Dt>vHx@l&-+;htD{EiQg_Kve'n MlsKxif " y.2mC*wO\/!d)(y7ɺ [0Ce+1jD'N D[I*vM9ssR>@}x2qܵJa` wW3]v`|>8.+:řaݔ[$o$7Jt i rN ]jPb;qQ9UAy"@Q͟@:A &'/Qfݰ3-jˍYsUNJbrYbPfW쵛7)&?icprp gґꬎ4]# $8AT^ . y +% qyee> +:d4 !,l,eb7q%,4G]Awz4 ̚[ ZHO6F۰/q0?/GjEyrUoALV~k҄s]ϡTxx5)8E>hCxgW2srEK j9"Ь_V}&x(}u%Fij 3ly;)HB& "%]ۛ,ۇCۇ2 & N4Gv" هcVg+g[;""Ox0W<`CJE!ӗ1FxgU(X}w+е ߠ/e|O@W>U)xӄ_T,Tm5ƛ E3D'ZII5Dphzv.]ڍŅ\8أ=o&__"d*w20׎qDHQKMJ4c(/`kl,{Jaz&(o&u9N+ɏŇCaSXA^3ZubJGo"̺a(P; x\Lљз[) | FZbagtb:WN-!!DC[FݷgP4Ju %՗uԊqr>B{RFE;oи*՘ڡ)O.3ڜ92ͤCYل4`6NmAyA]]sJJ nLN19E^?bmXiJN#`P?V+],uZ^L M(>3D:_=0ZS<줈z,!c S0eD VOAcBǧc*0L˵X\ 5Hsę2 uגS#OM āE1tƸ>ީK:c!oxDM^UN\% d/m{"M5Cl0J͵a *LF"œʕKtMK\৴Hlpق- Fh^K. IVXVLU]O|A:c$"}B.ڠ5QCGAwP&uX[@s@cON{3j.ZpM{Điv 8k$9RXc |k`jLD4_OmNmX%'C^2A|@>a<۲S^ܟjʠXpFS8+Sow~$oeSGwS ʗ"Gɏ:x>yW'7$h_); Pu;,NuSd'μefdYav_f|{fI^ˣ]xs`k,?6I'y5 !1nL!EzGc>'KZ)n\o8=cHWVAZv6-u_` 5.~%sMD\Y؋UHe>?io5qT '_7!rJ+IǢ9cZ Cm}"M!<$6~>^KϠM2T[l1y Y&H!Ł#6A^|07<[[Z|Ly{miiyaaÒs?KPjקʨE͂ Κs-uIvIcoV]bVR|jXC=zDEn"c΃_E<hTQdm,QgT=)<b'RgYQ``c jL n ~c.J PJ/Ecw!f& Ѻ!7d!QL UQU-T}FRpi{b36gŭ̐Md(~4HH >wx6S}mMmI*o_^*n} J\rRƠ4-z?򢤚h]Xvˤ3AXrT/DMS/y4>\uha1¼ټ.ԞâT%].=S ^K8CIH `}@h{y)H0qefM+k! 7=dys>>#0+ a8lT^˗$(6MQwT%>ޚ+bl09ml<D241=hךС5W|0p[P3kK.yvR=v@҄qAD}g0U=$݄Ӭzrע".$u*uM?dm1:-|e~*3&V)XAyq65wyp,rwa$y%D꡾ʵk(@9z88l-'8sKNP^!hje N" bk;_>԰zpOwxr\bƉ0CI)[Y&Dͳ[AU70G=ʱ m8;8& SvBvChQCKB$9r%kZ~GMbb:ʢ*}"u}<}Q%߈ lf\ lRɶNZ]hp,+dGϥg "፭^,^ v\S 1q(STN}a+i:F n\ @cCZh)W ҡL /cRWH1WQ2PB?+ :2&qO/ T)>Oh'R$hTpI|uKvʩ(N>ܝ~b<ۭ* ?_ bLhfdʭ_ -Ea%oxo U,N\_=J6،hLbXdյTC_ Vj3/ᄷfWyfCWAmSpM<\a1dyBB~pE,5M 9&c߄vSτ]sӤh[Cf1bҬVX*ӥqaďC>h4U:Gؚt>f#6"eI haN~א!n\z鷳t&8ExCX3uT/gcE[vE3osi Gp5V΅ j*awg׼u jNG,ueFAͩ2㯐1~P剧hf.*CR~X M#j$Tfd/[O> Y~Ez}To ܜbrպ]8 GY2<]Z)E +Wv~f|]{jcXѬ8 z2)pvNe}qC }\ԩ_K]z/y_Cb48yijVd.5I3؟Z@_Ӄ2 &b@*HG-%[G֧L!q(E0rJ&$͚Q`c߉A"X2k)d蘧CƕP[ePDɖ(,Y=?ɯz qW-(9W14^l,k2Ebp)r<޴|<5 9[A!b04Ef!@<{]h8'?xcth">dG; ilw Wpo)+ѺU356q:0!b/+jAP X5/}d:U M닭G ;n~~ )Gض=cA[V@vR4kKnbPPc!OR2|Rz'?I*LGt'ܢ( $%J:}JJAf:*8+^[C dbdf>B{dxg66m}Ө0lp3 y$I'jJ=~ ]^ @8h<œJLq*+ɫmC!7pH~Q1xmgEڞ\(6 :.iDW$zB&[[RוN9…Wrװ[eYK8~k(:2[n[$= gZy)LQxۀ\C)|m }B:О_:lfM.gOaG|C5A(}pq j9/bmx\L}0 .k<&36| ǮAtߵJӌ첀jgsGub1C@I yT ݼՍ 7'+,zB*q˚׍"R\ֿi; iHۗ%ЩJ||r/}FX\8!yv'S^v2hU%:'W6ZL5i9֡qK\Eٖ`%OtӢ+M4e껮C]>elOÉeAw.T-1;\C{7 uM;Lv[!8xܪ)IK`U5'g=*cfHT!v{ݦi)Kԭhg}U$;y&~)\n5Vkhc_p(;ߨ wͣ>D~hYuf 8U} t&<*O?5d)]kRP:cF?p/s% 왤_ $yiiGܨT8LeVh-c?Ў ]?qsTNr+@,] ƾ1NᮃML;q?[:d^$34rEǬ1ag!Uaa$uO"pzlq-JSWOkZqZ\ęD' ՙ8_VtV+G10N,~w舊I'$`׭_5>J8>5ZVL}5M!jr'^Nae?V &5 +!-{gҹ4赱:Ĺ2tq͒|$y6֒QEHDq0ΩC[g|^՝;otR|g/M*r-Ix,X4PSw|:]6֠[' ^Bhr{SG,Kđt ޶vE?GYmCa ԪɈ^zf=y''!ٕ-G0Xu{DzÅ'ivI~i'%_]̅%*I߉Z\vj2 C_UIad6P8mŝ -h y521qj8|w<aש3 90|9Ď/Xu +ݹ,Q {N[ j$67$uuL]jl)Z V뱇mY=*꜡5JXv##@̪Jj|f4P ė\mЂ-YQ(zh4\t[| P`.de ;V4UDžrϘ)Cɟ+Gf z_aӟ~Au @FmB"!W}T̥܋ȧ>yUBu8 JjzTWhErÇx|> lN .n/-:r060ݏ(Wi KFfK4:Vh[ⰽG{B6,ԉypm !q<(WNܔ'ASG /$fM&'hXE:/j~|me. p•'B$舲32vc lH*eBq{hdܜĻ+eLŇMtf_e#"nއs"C~lj6>]@ ;qz9lm^-H*84QˑւMYߕ!e;8aMd0 F֨M[|XMχT,jz"6\^S*_x.SkfݚR/A"In%ѻyC_@=jUf'cRd9+~L%䭘!YPΣWv]]m=i1N-Z/pPRܓn_ⰹINޖ M ̲Q$_f"[y7dm_‰8gO͉PaÔ9Z|}T_ ÷FloY15seT'`9 @)e٥x'=jF(M0Y'E:##Szz޳w2T~-~W % v=9z-1  hL[}N=5iX)H0rEnX٠qd&[R깉Ӝ ɷ[/?ʻ)sAgI6L7(,8AaS~}ze_Ø3gf x*+lWg%g4s; Js_F_3\ .*h-f$wyXpȓ }.Iͱw xd*񛑹CEU31nF[.h~5?ySM6Q RҤ=\WS KVLV g,#IȱсS78K8X6 tq/s@}ef^:r~j81)q{M ReEw?-"ST3Lm0F8n~=!A<z(B%~M @PjG"P/:cz6O kVk25K]I_3WV%MUOu`S@QgR]̥ȋ-"%LyN5#52٥OU6v2Eu,jb薾cZnvgBŽ9 Fѹ#!EӍ\)p#{S?刉F[{X/&:+Ң?P7yۘjv j4-x&/γK 'M_0C?4jǘc3&_l|jZiD{0g4DC0CBXzxyt |= ǡ n7L;1H_&ұnK;Xpɀ5XRga@.sǤ=uCQ!/aۭv$.z=oQL}5K?g!'m9mZ$;_($ )Bz&l#޵*a a0G|!uuB"Ќ-j5/TDtƻ83FkNtQq Rxa4wŸrB9/ve^Lr30Pq(T2H@zݨM^G# А9>rb6HB[ho@'mvڍ\ [[ !H"*h "A_VW+9}٫Fyl>+lO+"pJt qn-G\bI6gϢJ7=䖋tX#Nz"|-MM+_A*g.xxYJ&}=Ξo#x;Aq&J3/3 TUXIۭ_2" i*SMѤHe4F]u-ovERYǚ/@[8hA۳%O5 j׼F/bNr/נfQn3bZ&Ả ʇjk@\G6iڽdņ! nodM兤3]O%35Ġ٫i>ɶ)?8'Mq 5m`N[p98Q JnX'zyg ,Fo36)w*[{Pqx62EO9>1!2Ӎ=I ލ8SdCˎ5e,Eݬc7lC$ uPM1]d S#2MubWH>Cw903xmFQ/ۃ>юwyu*E<B崐RB@?yjD΁#.)J> f0wkRQ 4|*%1 E@+pFh][5#je[a4iXo\"dlEFG.Dq-<Hv.ݼ)0'W{5ʟ>]TJoA ip{UzmP,B~5-dq.( YV6`DY}U[n-[XAyi {: ჵ^@3*h-^j[Ia_0 RiA]yc 8dQq_ )$w1eۀ\{SWՍ"鲠t4/P{/m(į09WEr/nq ) ]n79+vT#{ /0ZGO4uM-/s`u#xVO.HC* os_3&x[szwa,:n(]fА>$~<(·B*}R"=.CNГ,ƌcģMg|T/ihR=$>Ak +5EG{q J/^Stʞ&loI"nQ{JYS1^0Y EguCY6Ak.{$6mvN9߀m٧SpB׉O2f󰓷~i'0a?|J@~db;$B *(~Jjd))1b{*',cZ[JdvC;aQ^BttiuԘDvUX6lsQ~ 6|G0?/f4SiC`C YT:I_xHa#l;G*I<Hѵ`CYs--BF&D`|ۧjK[o]? }Trˮ| o?attqJw"vu,O _!-Ӈ{^;;rda͉U ^4p/tC;.Qms*AQ53"O: UDyT44Lˍˆ`,{':ډ%g&ZjF]$5!ʆȢ$7 t(bdY ^0!  ȿV:!nNƯ(Q* Y~{!4?,'ԇ-@O벚@6V 2Д)Iͦv꫋7d)&aHaPc:Ӎ=8Ю kS|ZKGNU ̮oI7tl|8٧ET>Wr!9>NS(Tӄ;cWخ͙li1jzO;il2I6cym*P"ZCK'Il"N&ϙUTiRS4z{C"^|U?6{IksA-v1nc o|Y{铊Z Ť$ eK~\JW=y#[qWY#tJV.y庯=(&Kz/ÇɪNuzcuǒ[SH&,\Ͳ!/p[B;P.RG޺N! }3ѰtSAډi 5-Oxr|H}IVɻ 4#&)]Ցk}LNUV$AHћLhL^ E3>BK#>$3s7;Sע YKs"LxK[^v;#5 F 4g.xoŽ d Fւ? 3uip֮Z(tޙo.M@fDͭ/sdio#*0ۨ؞FJe;ޏ~^ZW°"K1y\ַV|&9MCݖRuCQ(T1c_֞_BfX SQdJy:7wY. 0Q^Z\L;+{*@}E4 Ü0:"?ex,ؼeC\쀻؁N/(xB" ߻ ' e*4Q큎j iv)̢]z E_V13?N}( s%6c&<;NÇM2 mTIܱqiKk^5@R~o>!/#מ_\pA,2 ` xO`!;+"A}"Robgγ6j &KE'dx [ս]O 08'I'+a;\t18'iWo{}a׌ Vl1y>łp]MRݒ _9V"Iܐ ~ѲH] R$Wfqد.S/jTFMܟWQ7SS,V(wU:\9 .(JA pXqRɮ't?QEУyaEueǏQV6xo |땔'%VRs6&( ʢ5nS]7nF.?\';,r\l ZGaqP-1drP @1aMALJܵJLV] Z8Fız3cGiIeGb -~l3>Xw qkqɝA.:!(hu 0Tҥr|L=|5gO&} "!S@ ۧR*}#gzO6R)P9Ȕ1EL9ub_YX >}|s$;x4oɋuo~*!.ɣ,c!C(-;eKu!z.u@6$pg|V% H%z \ظzpn]L+$Tz7D PS1_ //,k`tw`dhZh5@o6+x[SsG%__ 8XT/B䟟bw-V,C+/#1+V-II?I6ti8|~ [ rj 1xsl 9lϪ/n\X3]8lV7q2:cj`$~n| ]-ۦ 3l}Z |`FP7N3'-ӫ= F ExNy?sroG{nj:ƲTe.,rKU:v(tI1\A=>ȼaemQ1$sݙ7WW_E}R9CѰұ-y<G:JTyJkd%OPib|S=وGKZHο9EV*(UA/3s⍶Ԭƚ4w%[ZFP@6)j%zڊ@v c&! Bo0uB^UXՠPMBq1ߦkkyZXʖ(RIUGBowLtu ]g6ͣfA&g6m g~d|'X0h)Aͼ y~})o;w|[iXHA+1jO~dk+f 駥:lsԥ/^ɺ}:H #RHsw(fգБ_E97}= O)*rqXofny*~5j*2egˑhYG=LauH$VvNjA`߰3E׭Y"7|x6QOҔ.fdv^l{(`:+XE߁&gʖ1I2и-*| ePENLxM鰩80.Yw ;s"٬EP3 䵡s[ADqQ;_[Y^\,Ɂ42bɨ,5 KQd-iux~DRJF P`k͂(Bj##7UTZW+&} >\ eQЖ:zٌu@ndD,^MIFXfN @I+U($Ѧ1Fe rxlDC]:z85/dƁΏa AU73.@Z1dpxT1;2 oFvFrS>zTa@ !6_7/_NJ 'fC7n VQk +s6ỸY)4 IA zuH(HțMRPclyu 8\ˣѠj*0FڽT[{ 3xD娝u/ȷI v#(f')G+sR&4af$ |%F ?I}&E2CU ՟5f{kn`m,XHfV'M.Yg'Y2v5ωcnv5:]y0@p 0&q5*(]J||?NE]W MAyx]qR?\h^P.=0 +Ɏi=kYo]T75"+rbt+>Hpx3--!;ݶ#rnK2Lpc}7~ w1ւTzD }Lc=%`19?$%EģybD۬kUEV"ha{nU0cU/N]h'1'K48I7>xE8ŀXaҌۆӾ {"fڝWYTo!#Z 'v]FtQXG'5b#NS-?h.3&vȝ3S,<d0(.xxRp"Uf̎S|֦)Ժҹ!`]KY߀ñΐSgVc(= )F/Y.9mkm-WC1{mlS{݋? mMcT,e|0IGJdX^Y@" ޘ?z| wܯcTm PozL9bϋ7k:cG3u]qEIL_ \,I͝F;}y`%"u {CBa9H1esƕ4s*!!$^6}ۄ#G{5<=Ry{i $Ht#@p3>?^rE. V*a|- rX${ElgߠX2 Ja<ٔ7/#V(u^zuZ%d-ǝӝ/q0ϫ)EL5Q@!4b$y1':O94=) sQ- ,'#*E䁛ƹ#2Rq!7xmQW2DUdT ` k)=X{BguuɇZ5f?‰&\17N -7(9"_V#`( ZAA ӂOAXm*t2oe?KiN1`ȁj?ͽY,7ah;iYoʊ0mB/@^W+t=o|L/DV/OQ|*iYbDMUхBOͧ`$ќߑr)&vByկVbo&jk&Ӥ"S(˔ِ Ԍj|0'7/s,NɁ]bZdʑoAmܓH#d FF=DؕOuDZ˦xuz -W9xY~`:![bHr4bd0W—4xԍ&:惟/~HY9iFB K%9snɊakweL`Wɡ|ArH筗a?&((!ib:ysS=EPG67("_C%ݟ 9sp{ eR!Z4cb?KIץ/-9V\_{'ZCG Lɓ2P0$Kr[/ci]r}'m%HozhNwmW9dKqEWt(aH@6\R w`l!sw+9  bG:g mb֯!7{ߍ' dENk "Q1TԙE.>G i䶇 B!8_] sv/.nSzԧ`y &bK,GF@FWvarEXb)l(C&&|x7f_v2_.F Gf2hs3H,p'R5Y3a.(gΣVpH||Q_ 7C~Ƽy$1F02X.0XlFo: 9J|ӮE˶Ӹ=6 '`#0zߍy}pKzl Qび W\/ڇ;}/5@[&ԫ숆7MZ+Uf\|g hw0ܱס̀*-jB.TCkXG "镠"&L𴟽q_JĒ)Z~?#brQ|EDR+W1 .}YCCѩka*3/Z\݌gY!pp̋h{= <|!"z1{#&@Pͧ Ճ gu12jC ԷIQȇD\zNS=%v3 i }{<9HnY_wHlr>ww NYiYƿ@yCiwe|еBxrVSZau'Î.h@#(0Xo]0?3]W3z3w̪27I"RԽNxBh_6+EGR x[]O|< zzYcSvbgAm&nb`Nf6>) ְBCL{$08 gT2Lew4xtjs 4 y5w?D/q5:}r`^Fn?"T4Y% 2)_3 _8Ao ȗYn@FW[F q]r7vо,%#;3i'Ƭb@!^O n$0,G\H{*4D#z]Ĕ l#›]ŇPt0e!V0r1bjG-,d5bBԓL݅KZ׫ M6a$!7p*N 4VPRb-_JTϝnsiϓ9*S%:raQʗ4=3 h3n@h%* ;~iЧ?jEKh&k7.)]mnY4,;{|7.[2^K>(SU㰂P nABJ2@D=4j>`&Ze \\ jmXٚA0iRRk2J9mER-l{JPDhXC gyk_ 7XK$Ku萖LKl~zaКS(F a|.Y١< u兮G#+u*0tZ~WZ-~"yЎI xQZr8[0 +$ݯtm Bq%$DAȸ(4|A&y\bxo5ӑމ3=k<4;fL!X:~` к J.`x xE|rvM&S4?vU6'\,հ>}d SbI)ؼq'65KTçK0}Y\ȚW!B1_z1yq:i;E<94C=;dc< + @ D֜NᵄIJbEm.K'*MZ7Hi[9: hld(l5#@gc}8RG!xNP9RQO剀"I]Se`_'hY,%pG~¹(Dh"'!y͢OL[*6:*;!j4ej<{UN. W }`v|Z9֢)_E}2Vl)F:h75(-ڽt&4l )Z;*@lb/$?x$M _+.c+l`L`ļTU&^Px(HaY1%0Ms< 3 &7 E0MD;I Q.L)$fرa ZiwS 3|A9WWQJ3 .'b# R2!֚ssA'eP.)̼ۄ*?r\R$H^o=,.2’VDlkE8Vu#7!\oN! ʣOӖ׭ÈpX愺bdXwڄCDkVQK d ƫ V pٯڨ$]k$o);&/(upvxiMӿ!8dsfKR 6fN|g>Zpق-/'oZk^7AaJŇֹy mU4mAhSQ;x VT$a:*7z`9lm Q}MT7[1=xSC̄w ~x|9N +haN^: op*$Dq;r6-S{Vpӫ>_}DuOs5VZRe T#W&)-SHnר% +oi {;7Ofoov.t|0 {l.0WX.sWBOPỹ]zs'nNnAGVIJ7ȹ Ik?jrw+a' >Xyt`G. Id10A6lH{]:(NN}E}kmkW&.e&E_VرM ?W逪zJѮjNQt+*LZKX?|`$,X׹cRN™.XmȚ.UW296EPG_.HS'm6*DEț1Xk] .9mAg|G-Yl=<3:mfHäCʗb8Odi@p~G)n^ɉCsTۑ<\dGg)՗K8 &Y[0m$VG*,ZyK D^ctz$έL{hQp%!`4Ū𦉏"p.FmWwJsfln T71W;q˖O^JdMq" (8Q=D]KsvehD‘K_ֲ0 3&IbUSn| n 5sya*T3<L iJ.!:B"BZH$bRnEypuqn/c7ƥ\zs| +)b, ԩ\ƀ%F2=BWip"aȪADNFgdX}h*oha=pFՕ)`_ݲiPU\Y<+lQ-V)QfkP 6e'+"иb~(O-Qqv2DΒ](JеHRqn<̊P*+ vW zrBO QO:-EcIⶵHGa`xgI8v q0GO4Z;-_(zUYLBv :SJSfƘ=r@JmvKK.<A81d 0| 55h 1[,nќڗ5jDg"]rލ{OM^/h,|3{e;H Uʑ\]͍LkY%S2T{H}fr're1%SUWEV k݈zO^ΌPa*R'2'h8n@uA#*BИA8ϒ?FըB*2R>e&[TttXE'飁%j9h8f˜Jw_X|_lC דhP{(7L-k٦4D-fQV|{l i^o@GE~l@]-u&ܿ{ !˗rmD(/¨"n`{A|v1-$X zB[ 'flͱX\XmgT|&$8ւKXHV$gL1SN߻yeZ @Af)N?yr{dмo zkŚ`P}_,T$">NW6}Z =6 Np|7_Z8vfqTk/Q&0=Zu]^w-ؗHڣٙ٥σg~80<0K$zKlbzAhHUHEj8G;KI pm3}VQTadlϸ5 ռO{ UDrg oVKl#O}ӿ/r$p :X4eEv'@Us0%%͞-16^ 4 D# 5|0uRķ,"r7Bj#fU- +9UVc^)n5|q,JiP[޴ƣި[{ |6Ǝxo-P@^p6D0~^/\RRCK}2[_S[~Eщ=/w@_+.oܐ߆ab;U^oUa5Iyi3 9$B9rQ 5ku߷jo.FSazr8H+.+y&?:.X/:k(Im^1#]ϖ[$ǪWr<Z )AJ TX0]r|;tEE iT%_3;7*G1 :)݉=1`LJM§Z9h e9gP~KJQ,$BBq`h\ʍm*܀V-Pc%l&rMi`};2A后V`ĺa.M_G =WJWR_~}1gZ,XqRlye OH!xCBrH{J;& RVp)H,Gc)Mw@1Aa5NtO?~R ZA _(pI|~ZKۦphyQȂh #]89"oЧx g4zeQ .L>![DWtP|2BT$A Ug4ExqUUB"%#KBN PI(lvfsnnQ6 ](x YT>[xAzeȖxsk$}`#A+`!Gq9:7!]@Gʗc/]L.nSI Nq;YCDa"̈ $@wa~p@P |sr,Z_AAȾ a#RFjA<ϨT6WUEZ𸴨|f$e9r0KcHv=OdߺE]fToaH ݣ ,<0F`aW?c +6zdo!&FyjBk[H@C+ȊF5䲁[gyл4ĺ-d !D4rZ uxaVJrudo` =ƶdYe XYw],Cոӓ*ᰓզx9E@v߻TB3WH!D4DbL;xȫhMwx/1 xwwo8lfj ?%(i\}]5b@NSnʶSR $Yy aNI6(M] Ա 9d*Gp ~P{Oh=HZ^< ~ݎ'W8mSҟkF-m,聐[hW3 į.Z[LAv ',k{lg˧JLpSqӡ6#z][{ҢorxJL-*}x廓}j%}>y}EzCkVN$5$@ݙvneȌRs?#Nl _;Mۗ*z,@m{ 6ԢA1[0?|P΂Aj0&71@zXAU~3VœҤ)oWkվY8y5g^:.N|%$:5 *YUZe yev@娓J9ŘfDΙS*E ]OJܛferE=ٌiYΟb1 c1u\LiXIJ) #i`,%Hf?x*M\IKP6a $|ߕ!k]xP^Ye(P`RD)9#9e0{YWc77J[Y>i x p.E1ӃT=w>ԭ jKOxtSoH);ŝIl$hPo_>CZMG9U׫".I"_;a#ԭj@!r,T5|/.ki&bg-s$Ȏw]:P[Zq6ū6⦩Mav J]㴭iJ sئGQ"+eGJݎ ZRFncceaDM 2QR RRM OIْyX? 8q0Shi-?Xiacnc흻R'lwZȖYFXrɝ5/hx1mHl7 hك);v9j87&a_vhkhWHElMSm#=! orӾAPZGAoi(  ~;y.y}Mf?Lf-nR,[򃲶dA}$v}NaSQs+Epq!VDѻ\P4T|La6OYU|`2O2ԣ=vE7ڍEa w]ar%cuf_ Vv.jpiϋG$\aȱCq%qiK֫{ > jvuA#3 ?3%46|*~|5|[99~jtFxךq o ,R4D$LlgBj{vu{T^@Z5Slݷ"rQdq [?a؄17۵۷䜛ǰ :W},+ Epw?o.Ј:hO2Ā !`@/zH -~LDC:_6\A=vV &~)RI;VTrfmh)#cȒTqO||Hu^Sa-»oLP_m-5K5N{fͮ:v= #ݕ{a,4=+ךg+IqVrB$ Z))emEo )wyeMwoPJ} ݙĚ@eB/*"yeLA-}wA04;I]1XópQ2z0f~k94/Db&n- ѳ3# 6cEj[FHL{ܩ쩡ǫg#FǀQGSszzOɡcyZICnzӽ{m癹@Xk`^? P6K*' pyτ~)+ qVXw] s&wq(FU%jzfmWVHicM6@ؕX̂3J;Q~^v뒘wr5$EqY12|ȀЉL;$-pEC43Knf-F(rb B)Bx2UpʼnKðEV}#ˡYKSN lE ay"CraY cTRxG5`.zm0bjYZ] x:TC+O  RxۆU4Sm&g$><އ|~o\iRˮM _HŸ3'i-ئ-DI2'Uiײ+|v7N0}9G{R 2{X9RBb tm40ycB() 8Ĕ]-hY< (1N"'!L lʇ3#pPTk !hM%ل5 Nǻ_D sr!1!gl^swqE8-Q@! ˰P ӆ5#+*J#!'#z%u2οRZHJoüF3`Ʊ';{ڍ8bE񯑃rk~Yk/4ˇUrKq}L3Mgf9B)阳GQ@]tOjM95A_$Ґ3rVS)l\LtI$>|_=hde&ANʺzf$:!q?k.G- [o2Y^o|p<ڼ!< $~[tXWM-񟲟DDC E΍P-o@v2>`o`X[U~֢ j` zD !;~[K,[{/TW,WOGyeU"FyHi̕rM&5_Z(ԧA2᦭%syܼGI ƹ^%v-Y> @I)l0aj>/)z19FK}76ק,j0__΢ wP;9=PN@"$xIs"FP%! 4|IU\:c~>ۈmd'P ~WM;oы0SHהsPZ/R JՈ#pO ~ V4/L<]jKnFtY0\5?T;}E[&=  Did+2֝N69=q_IMr G񳆋x?R[ Is$j0p'!s:sR@< vV#'rfaճhsKϏPi`clBCp@YMi!Ya$%WI+"La_p*'ս쓱.^ow?.b 7xF#PPj"1Tq!jQgdHqRF,UdH 7}7q4Or(';6}22={9)}~c;;gMimS%gBLv06*|?Ǚ6Qʙ{u7 ޏ"wZpQEƾDMUoAU\8a}hPN%ota 0p[-sA0,Z>#'giOu}*~[8yT%0pӫWIͧ)K((mp\, ȴTgLrU]E#t]e.t%gZnŒz㹑V&cP=+z (cs Kо+]@f) "vp) J$f䕴;3bgw6Ma*+g 5Z׏lylMSV>YtYV4Hmi8OAEA?jmpOiҕrJJBHsJ`]ÄήJKrC7nΔՅĻrAL~XT\[`?+rR54LC> P$yӍj4~Kv[X?#}:IZj2ku:Ժ9ЂF?yJO/SHf)! *RLxSw2N ];y9 F$Ck`WiaN4dW몊'8yϖa$ZScnaoSh!5FE:tDPsa0;4YV8oQun O^%i@$z.x,b(Q@oͧ R2ILAFG8<YcG.aXD[ 1&LH]R0ƕgT3B|:=sTxpru!ى |ñon_?!)rHYJ~ ^wVjHHGg*RyopQk7!m!<8r1<$X+NX<1ҽ(k:CdwY:2WX/Ѝ+sr3G6n+g63o,CI;NO hv}7VZذ[JtDd8/XX<_ z>p0y62=(%Vi@]WP_ewތ_41Tmc`>q-}%S6.uD-pYzWE s>eR S%/tb|lnb3%(4Ѕ(kI^Gmpc "Rئ?ڶGӧ Y/\2vi1,A]诟G\( ۍy#z)L-M5~#CG2Kݧj7PBr(?4T.lΆ9O :u4ΝIəQ]11}G$&O4S"}EA$FTG!$'QpD׭%B$I qATi=2<:#dbW,63450fl Z٤RBCGFL?z}5&h{de,P|_SS4Q-X^6Cz]>5x+m{b8JƙӃ%\pF7i׷Tjj\`D;S JiLʓ4:py8}.p쎕m(ֻܿ[(EނH3PؾYu ?iqNx!$@vG8;y/ެ W[ZԷwx*nV\Fs8Oij>%85.%zpTXVN#Çylp$5ykĢ&8 {ƃ V~YuK:G&ʪU<&W&֙{}lAE뱲}u| s1*k) C]n\aN AWK}OdvLVnmh &Õ:H~1-.U8$RjzҚFMk_KhZg %a'f̢BM)xJof8D]2/Ϫʗ OGB+ŇiN&;Hܤf6ϙͦ1z+9L$ qn|ϧ*݋26BWx+~jN~ z&\ͧ mRa}t__}@D0MmZBo KkG)U5 6ȊUMIQ^udN" 6[ Zn$Ԛ,яb ;j2>ezcջ߾" dSvWOC&&lx&',?۞oQLjOUf&*ƍk5=mvŠȟ,QKgFVkgǁӸkHPQڄ,d%ˬk࿽?h7_[Bk(i[Y _)'N_dDRC~:Gr7b3lPx&ӘЪi.v6pFwvwKmŒ'VgGie>e)}C$W/!2{u!`'נk,ŷ ڗg* (Τd;7D)r/\60DY2{;|=*#t6qn:Q-838 }C.Ydd B1wB2HKI#7+!N''Nwy;%%ңٴGp{R8wl+/Sȵ($@}d XFeQ$^|MYYkSpat?-7C!y1ЌƘ$ O>F ,=s!VNyCHV$}$jO%E %61q>=z8as4\Z /sꀯ C('!у5SljAI{3&J/1\[2D3|q 㐧!b3 v\G̳PtzQ oҺk; -z/" T j1-t`'lxPfowI(XJ7r+p/I['Lͤ @jp-XkBؒ0a/ɓ%?/L3Wʁ8.nD8B:UJi&\L6;c͒H.]憻eReY͢Ee2S}5+*r!4a2̇S|mDs}$ZŽ5z+Ӿ qx-h_ܞb 2Tmk[u#rϵ9|$|5v 2̕S; [$)O|].`Ӂ:BF?0v}Ғ62f?>zMTB[ H At@ 9q;_]~?N3lq'l7(WNVz\=$;:jDЃ唶%h=W '>H "!.Xٕ% B)<15o՝Y~Ebl ^ڢ+oI~Mv(5?,T4ddߊ ~`0HJ,)$c+CjzuXق1RR&-, E'j#٨>bK z3l;lJ)B^\O!G aY^Y3:wpMS uY/=_H_p,U;t4~HWK54JQep>SZEC <΅3Noގky$^n?1S9A|8w@n{g?D8yP~;Sp:{+0h{قn:b;-%zBSX)y PiC[ZXi%q:SQ$ma>k7~3Ԗ_mhңtF_DvsM5aAJ4&3yK$&L>Լ l&B3O͊Z%6jТj1E*=J:8PVs(+ J鍠Βcz Rl\0LqG|_V;vk!;X)Q_ c_(1!hpcO6ڳA(UuFVѬ/mcBu]-檅ű _ g'qzoZlQ5UIg529~=BQܮ-Uxʇk im_$yG@WzgQq|2r)q zhAqol 5 O efvqmęOvpׅD T dZ1df>+C&_+6Q.l:YW%{[htaО<DZrp㫥.XZS W.*o.|Y>hw9*I2Ӯ sWS'v̍Z~Wтh>CPO1kfGWhU PUXyRHޟJ a oD>4sjj/]y-jim,6\ұ">\Ti9gBBuĵEe&%a֟߷:xe5KYR|Spii1c2:|cko] L~5/j0P{%$+{`j]P7F ?no+Uj b3\;QCfƒHW^XTBQ~gCK) EV{:{ho}|7A$nxl*.L).\)1:u U#`F 3TA6SSJӀn{Q(揧J)[}!$*-:[q_V'}E7 c$<]- =JiT70Va~Xښ:ѝƥ*RauIIr؈ Ȋ  G>g[YVƉG37,X5dH`eGU3z](0VUQq c0iYn|"<jؓ|0P]<4^7&uNf p𱺌LC\Q Hgo*Z,d=$nk ֲ{w=x &p OP!I L>fv,`VsZE2 \LA]c鵤zg` jƌ~$րV+ifLђmQ0.y}_ox;PhSϠ F9yo2za#Jq%/2G'![BjOqKXM5|~s*fɾ6U/bz}=c ""=[VN'8O{|ZvGi|Z]xWjf>wr-`4Yql$of́VhRŪͰ_U&4عF"M.}V'Tio"RE4˿E'F/ P*lB*~5I2Qu/巏L  cLIVEV++uEw~NvSÏ8XD|%0pD]A8[ x(u^ p(51{X87t" (vJ\&yr խBSl3jNi8TOgm<5j=Ųˬ9Q_K,m\-bH MHs V6fM~4'>'SIx ~ma/遒/``y)DA@C&5=2tS}I+/|G_2u$ق!;*SAصC18VO%<:G;g{]o3Z -MOwtXFs+7%qFXD2,XR$Gxa<lwޅc6&Mݜ5T{+/x yjԀݲ/mYqj}3<_:Qtl+a;OK]|\Ah!l[?c6*Dh@C)Tɗl},Sj0juqw-H>E27ӎu>Lҿ4s!{h)H7ԠdR?3xї4j pgEh\_%Kv 戓JFCň=A1KaP4lX_}\yO !)O:6&k^ {4E [CkFf䀹 qk#J/7.  q`.fd6,p:;p8oxJ{q3V{:jb.xW̡K@W"qNS.蒢N_^q:h$b,+v!y9{n[VeK~kkt(-r8*t#Гe-X/خDI[NjPQ\_ %k 4RmJw95{ 肒qXALSY7s&c+Ţ:f7nS`" 1_| hCX͔R#t0MO5E"A#1!fDO;Jј&isEv`jti>?qgaO$x4&bt |nC-QUY*0QGFQLGpӸ/Se-!-I8w~~FFs>XUg46q?QFF f0I"v3nC-VsM)T͜ϧbf2ffq(d.Bp]m`=z- sYQpT0\n95ja~+elS ɍ^aHafF I)Tb휲5Ţ5Q_,NM Pus͹H/zTc@ q>\i:736h:')@8㎪[(3@}g钃A['˜`EVA$O}4IQi &+t!U—4oKh̪Wlq0OFl9E1N=xR9 |@ `< XпJA B. V76Юo=6'3kL_zIYY%=RI"(b.x'C9V(RgvM^W !1pyT⡿mx3#6$B,ntvU͹8CgCFvqC 953Gՠ&9\1 մ'6{A͌,Ll' ZQ oJ8FA\zG?E Hgw$5H;/&c;GLyb~*iac'{#au y$OVv_(pc0͉4͖tk2M=(B nI'Y*JW8VXhaY>ӍO+ӻ6F"W¡6NO z@:,;ki GW0j)a-/`_ԊݧsS ;uy)X&򞪼q4F!GҾMlfm 9fbliϏWa+/eNO|*_c̴sg J3pkБӮ7׊.I_[F> {66{IR#oT#@-ԻSP:sV~|0@כ2e"'-*05H"C_gP6;۱@6 q57VB#^f qȈI`}rCZ }_ ;tIYHKXfxYH?XT ?񊸸vN%J,f+84O}Y᫭(TzO2հljbhjDvqro<>ߌXqbös{fJh!!YxǜT"@ z/7IeE%=\;7û翴BۍHL`GPn6ҙ? y732%!̽A!v!qP653@em7VB3󨭦33OttZzѷ %ϓ ШҦcc([Հzf i*kgjaK7!q]ٙθ:7zۗLy&C22.j1^ xα*:a\ |G=*i$X4`k0F0y&x8D.ڴ6ŝ1eTG;+%Aw5i8w/(Ã?Ɠ/"K-{|g&J\7_;b*⾀`5RgM:RRE [ o:\.=MUʋ_L OzQZvSO7z&zFD&Eܧr|)v3 &lj%n\Z="4zDmŅ/x 0x1|#^( tрW^,qn/Dh<1bqw/0Ma-oz jZu#32էqb YIڞ\K]󀿸A3yDai ʔ`wDgXtJNgbOvŞ͆uyt6</*9~k%/?6MREmKeYHT ;gȕ8zW5$Mí>Vu0by#̮2d7\Ԯ[Ny-@=OL?nkQϼ;-0-]!:E޾|mU^s78%)uc Q?ڠ@+->9+_$/B,`ҥb nQ/p#g|MNwJݖf}f^U7a}yd.%PIؙؤIS,Mh;q4'B$^^dϧQyK"h,@c@[U^D.@"/%5nH%Ft \uԸ]p#wk4ťUI~8SܸN>w5Һx|O>!8pQ`cߔ ͡J 1I/F ).b d]Xٺ6,@Ⱦ'VLu[xF%)pdFHXi~@/ :XƄ^:L2fNQn# O,dZ^uva3 4/ Rq؀'85 E=TxV\}A"\ؒ9/!mڰ'j@RI^.uLWķ=T}>t(s6Tq)e=rc]#||\嘌zvHmR^ J$ᅣH5 AEVY: M:JYIS3DKf"b bgy9`T2r!D2DU›wըM5Cc+:zAIV#T$r7p(.+'O13<`w :Wl6Ѵ ػ|3 `133`nGZ;H0!(p;'v07)E5 #|KzpBw02:2>T])JYuDB0>kJJ41hS>ꜝ)29۽>u8[AxtnF Of!I+ UMjGR9!NBp̣Lv1dPB4!]U!5 un輫p|~Lz49f\#S~yLi2 W#[cI+$u:/u*3pT$~Ɯ@N Yǃ]j|B{kKd_'ɉVf!)FJ~C-8* )"9wX<(pUCjפoa=?1P/-i}A+t+1Bk AT+/b)TNmOd. UPҴkQvGKoXe{&DoF;): N6ɵĔ#*GSn[$4"Aat $dS1 8q\ %]F1e&,Yp|BC"̦kkDɰ ]&;:}aj0FFV՜@%1gsi~G[ 29w2C'αnmRI5}SRI2HY#^(2,62Ung)~%ogKUmfJSB;:4f=)ȅ`2ɺ~αaLjEi&&ljkęM&4ǜw%˖SQmy ^@i0v#b{.R wٹ5NFZƃϺoKIz*llL% 5n;z->UN E?Lƒ F *8Eh(b@{`L/(sdL}0-c % $SGgf(7Cڕ-3(IOJY?R?{2 ܦ5EX8_selFےpG/[' _Ӈ`i.u\2=ody{=,"])m3̘9bof#E0c(6v[YX?&A&Q2¢~mufx 9; 5}g{z450 n4[SU5q|qؠ9ƛz*s2G]Io$\8qLs1t+@%w g ]*θR [ya0w{D"Tzߟ6˨=Dc[ѭBྱ?@g8^P7!˴r7MaC gy'ZrQ-ǧ|Nvk4I{ M_"@n&Jh3I|I.xǗ!Eoݟ59'1-c[#z̊#f X ci?FFK߳; x!%j\:ՍwuOދ(;-ASΙݿE&@'ʍ7twY,Ӆ/Of#ر OT.u T-o:y?[v*`\V-mv\Lٶ=Y 9Ư#kV^8=Q5f0 "7=0#S끥=/cN&FZ;8 q,Pڰr;|\T gǞ5th&yyQ|KB% Wgl?_0uF@R8"JH:CSEب"&0  @ \Ȑz# ~% %:{p#Z3 Ӂ8ZbRp?Gx.yYVg.yBㇱE`z>|@IAC#PmJ8{{# =R ji}nVWTѶ\pTvz2< rf*[5rcn;"M،?]cqQg% e&w6j*;&FsoAu2qB\V1 k.yE}|;c%V DVm BM%\g&~*%8r{@G"zU&idSw4V ؍UiiÁHj2[(0׾L=RMg!pW#0:{6oMϠba2Y W\(ML,8<:5FFV^9>5- -uTo ,WC4Os+Quawf"sv"Nmro$#ߑqSWE?\ mBYs׊аlzu\.$brձ.xB#:\v;fuvQZQo0ͣ0G7Ө$Ty!k)36tZȡCTIWs$CI"abݞdg4ԍg#mtQ<l2*}7_ So`yD˺X]i{Jv9yr#peapz4e8_'0i_[[ -2+IY4>{*,:F++FJw/pԛ@(=<fDzԭ3n8H^fQi*Gʶ֐"y#IX4件طf#ol?yNJC[Q9jPgEMLݹ·>F)X)4_ rºg%] j)Og v=F{ Вc諲hmÜx&T&qhC7Y9aJ"Lgt4"SJ)JF~-M]ZX=b0c-@ ]֠j!eW^8apIQ$j;ؚՍ.\ 栖fLnfh@rf?CfHfW~cPM凢 >L\eMm;? \[I o=Opw}:Eo A>-+֘n9Mej>ws>e!q tJ '&{$SM[=ʮHص(nRxxqݸyҝ̻~Ml׺Wv0Ԩ-q 8{ԅߚ.mZT+~g tgG7BcN$d}F89J|>t=/{[+V A:8GSGOsίwXr(g7ʋR~d5OseX3eܒM;SnI#jIM7O1+TfQu>[Q¡!Wu>Y!6_x֊H$ͨ0>=Wds.I$ωͷeCfVf}2 :U`a#\Lx7A?WT|&fš]iԀT5n1оY+_4bqBͨKO:mv|LGAޱSP\c(ژD헮nԛv-N;m;::UIG3i{9huz]"جdt#'N5M>Xxf5FP4iD҅- C}hˁhfGѺߊ :hbV@!%L"]>MuGfE*ƀ )uܲ]]X!0—8J3 c*4S9]_hm-;K+>p\hsdthݠMrܮ񪹞u_#$@( Z]ͻpu$Aשq CD"!ݵ5QFr' H!!%82ЙytƛaE'Y!?!5ie?qkQ$hp4^N+٧Oyo:G[H>Ns72 q )pB\Α/ n<8 HO xVjԵr$%a)_׏{@}U,1`:$$?F1r 19)Vϒ|;ªVT0}feY[x|&Ry$<Ct=q_J^Ζͣ ۀnT\ip(m)鴜xbืl )owxs ڸ9-ł\WT/?um0qlk$ ,׎<;Ӱ(+IpEYeJX[]tvd6WUm v-tm"KJ P} Zw;OQ!ngފ\`,̻8f* T pt4\QM uZD7Oňwԥdm @6SҰ1h9o嶞2e{9@hnèLpyq5j¹|cU==ͥr rL[E擖-ca+#aHRNFʝD3lZgEQ}IF|# P`iQ} }eQVgk v2v?J O 5`v0lᔌ EXu[ C(لU⣖~ajUk!XIEB/н&cULM3+7~!mBns9J 5PYx.됊⧴E:ňsJgH."mzO$c)Q(mT< Ocߔ4k0-d&qAdGK<b<ѓiP v"GuB5bYF_FVD1/^$.P.qݤBgA#:Z( ws`y*=Dal(9I/qW#Jbw"]!7?/ɻ?GDi%zvx)~/MxZD"ɳP)rd ^Q00A[y+1ЀU ;a//!E״;۷sa'ya !cIPq[܍v}͛:/ţPdh_bxF{_&KA% ;'=) ;5m/44*[} A 㘽jBЊ?1tY]^{@s$Sj$rHY(г=|t1N#] ;[ $x؜CXȠ曠:\)rzlVIzRGFpfjjTXIKrKLdESlŵ>ii@ R{_0(~@iS>GM̏`j2 l?q |PHk:ˇ Ƥ܏5Q+$;Jro& G$bJ@'mbڮQ꙽Aٖ}*w,X)/Xz wA_:zPSf˱ҳzJwը$i$VHG_}]YP^ C_t={^&u۲apw9 &-o[hjrm ӉeGIR wQȜJa9 W7yp +یMk8uXx=7{~{scZgVx_l #y rQ+78ԟ|0 *pK^h[0[3K^/g,ԧlbWCuŭo0qjN36zdIvorH{vbN|;mC R.b-V33D;2OpA} {\>KcQF||i)>C5f( (?5< TSzwKٮSp>}&@VđǐmmۦK@z^Ei眃b>3.^X@ 2ݫ0YG< ⇎[FtKy1Vu5p"$o,~F233~9|xΐl;XOOZ4igRIZ"=7NBcHLH xy;y [x45'TF1잵AlhoL{%^L7Z>1 z`Y*A$,fTI3`@\xFJ(j– 2tihS@]#@[ǟW$ _V޴ܕmUv _`ȆC}dShOVHiS$m챩YJ+Z(HsƂ\zYKo^Y"W=F)I۟sX@YـQSTɠ2=~Ɲ8Zw2-3ڻ)TF )5$u/{Gȟj(n#7Z6#&A~Rx*eP_#q3,ϖ4dc7[< uLݐ?7KJUSm~Y 0p8M@^*ow_^'t{1o\k\>׷** 3؄͇mĴ`j3aef") yw@sDqMX60tP\Y'=M"LHp2M69nrʘ-:# uH)H>IĂP3DG憡 ^?z:'r\GKZq[x \s⿜VUDP1?(hǼiwT@8Nsw#t]5NO)\"mo]j>O~ 8fם~E?io|yPwGM U<ٝ%F 8S4 R< +7Gx I^3GW͡oigUv?HU\dy'XQqb˽mC+}]wes"ҏ2"~}Iq;CvDOGz%ԳTzq=ij[FU\(/ kGek~& D_J<,3NPW,9waL'o)Y3-k~Nd(hX(qP>3Go N{/FdvIdC;X!9}"0T5}TնvrKS_w/X&1z"͉kt)R'sw&D \ )njp ]9^#s3'u @Ng{ɢp~$?&RzX}8ZaUG{**0JL6 կQ 2|' u5Gr.ˉ(f:a~UqߓhfObXM_8FM߬ K釾Bq;ɽO}5z! $Z|Sgt[2a* HY=KŻwx6;\78!kO2J"U`?kÙ^9qlLl 6}֫0((ʩ'\U:(õvƝgזq0 >4ݠ^\Ɩ)@Hpkb 3k+I)]P)j]@ ] Y{'޵R<]`M3(5zCj4]2@-K o$ M$%ts()J=M`y͍3PB"y ^~5x-\Krcd~| A`b "-?%/ɟڧ]^+PcVFi#c/CoYw;OiX%$Eoa^ >!lk拰1z{K|sK -5-}3kk;6R[@5Î"3~*!J*cS,^BUJDHjNȿz 1t '_1|Hr0:Y4%Ψ Ry@7/(OM[`>.˧|xE:ҙ;Ha[8M{ݓJb5gi9L2ÕJN΂^zT RΨКu<_GIm/wgj+RF˟6iƸ{5a|y€?[WF]+62fv9 “uf|M@%2{|OvY ɒ E݄D=H,J=/J07I9ȡz1ACuۘ@VO'qT<2%R4Q<gF`8~ZK"+bW:O`e^V!|/4ވ*ypG;̥!MK;{I:Iҙ8P5,ʍGQ4P8')3T<6s?H*kSC`'(gO=@z >h}0˧?f6 Gh׼wPwcI׻/wLKVQ8L!=&fC|X~p\Ŋ~ PC6qc)W ƪ@J(t%v,gvMț[}zxd'?`!H#yWX'rD)oSb=@Lc!ǔ.,NhEGrt9q^0=xa癱^oڰv3t{26M#^ka^|D&뱣U2Y1u~itĕL6(|.T.'717XhC#Z\<ٝؾ7) -l|ELdj>h^Wb4D6>8 t01iWw Yǽtg9L4mgrUjt %DR"nswgnh"FF+ p_B;s^7 Kd0˶޳9i=T6n@x0=ػl G2_Q"IC;jϺAVm/ˢS\/B}/tYhn;\7۲(.{Y+Q21*jMr(loukj?e'jrQ4vՀ,Z%@9V, WcP +_Ml}xe D1 +Agǚ8(&(abZ4V> W%bBl4lr1k ݽSs ˊ,/oLz€հF W!~d%c=h({uj>Yޥ[`lVߪ :I'f RǸ0t|j6Wgwe/{\!Dz缙r8,7C،C+SƉpՀX6^D*ꮔ?/pNn:>\?Ϥ!أ8:vwӳS:6Y[O\ 7"]<>EԜK΀qnX0 * ׈<܋iʻ5L~;HS@HIs(кߎ`3o.`ǽ,[j|A"@b,GF1߻ *A &dK DOsOJ2 ଴C+'V*O-.BZ컲Xj$rHI"M*5EDtAS@|u%E*)C6-[êͧSF탸 n µ~5iWVo/^RJMd(nP>6?WxUD C͎T3=X=]gY8E~LOT_c6;n>y=YPr(jok:"Gs2 p|dZ7O鮆X@ua&@:)}?[4_ŝ0'?哴Y1H?ߡ!o ZꞑUbޠ.29' ,3mղ+V0KyhI9tw5gF˽"ij爮7RN8wn%pk ^Q|;ҵ%%,nw4v!#B2$D KUW:6RӀqRn f~`K&6g= 7S`4$I~MON|P :d ri;BI+V; d!Bqd1c tP{`?ut\M;p3Py l?D| -B^H-vY'H쎜zyԠ\t*\K|< Vq,<:}J2QGPwIP~ j'";5Q q^.x~/ZN7pE?/|l82>:6 s;)H1aȟ;=R~'X0;5 AuqoUYj^lyʬF\_S&j6wn‹6hTÊ|QZ~]"gu1EG_[u&S1iD,YNG7*H:ZN/;pRw3_BEA8Ľp]}2ipO,S:1g,>E.aq^8x58$1\ IG&Z 0 S.{̌g}/O8d(?")[,ݱ-t G+}lnAW1=>߹ua1BQ9ܔJ QA,*b9>ja>Mj'&/"; 0~b~B% T}CN{{g!e~Δ?MmM<8Ziw=ǍNQijWr i,m; U,vy!G?;6'CTxϟUJ.o"cD-R.M-r ~æE/jUcv/u]q$9P<@LtJ lq,42Fi{8{q"gp4Ӑ5q̛%*fPn?Mɴ93y%lV [E13&#:-',˂9P*{r Uc.J§(? |3JPޗwoT6qKi9:SW7: #8e@)oS^ݍbguH-s Gs&$,"/6܏pӧX <5Ա73M=_F)GXe L9a (7Ct`}h}8Ǧd "~x-)Y&]>adذk![JĞB.äj$eB7Ӷ#ZqT}B<'f+Rh5K\@ zM24;x=K [Kz-6z R)@KTQxI .rQ'f:v5>lΚ#zjTΥ z!&&cý[a;*G ?OP*̓ZM WvEuyIӸ`HuqUԭpTM%؉ZŬ&uHQ܄}*hAAr0|–"Z)40q\$k*z A4n+ONT[8XUAtcHǟ/Ԁr &5h7=Wʧ+*mt86IQ.ҏwqjr&Jۻ^=E=:ccb CG@*K/H0oC&?\=䇐#N))Aڍ~LU`(UI 20N l*7BdW<IV;$@."`敿VSB#aCIIWs˷ݙ$ACa>٥:Iz~PtDH?K\͠!Zt'xOB~@k }FIeܕ-ڂs W*n5A3]0荌?f"0R\A*UӤ` 4kF1SObpK핉e9ҬWjs8d9nV||c#1y y2*ҡS#o21|lц; OZp04$635y"2B=L ft=g#nl돫*딧Ɔ]|IZ rm2ND$]o59L'Y&UYDk1ׄN be(sH5EXғ-`rYAJ=޸cp )5.^rGŸ%$TqiO)bP/iAP.7bĔ6MͶzw}gw%{Dɤ_: (ѻKb"pൣ92m|4'TҜ;Iq"碕 :=J mn˧p`bQ>ZPmS.E nMt7Ob5R}hOS!1Z|u$ե~?\SNì@(hRLq [E%[(kZ3ś)ш¯i5ǂPZLծ.z vt@oӃ9ţce՛O+:)Eq)2 sq1x38߬ſ+9. _mDȅOZ "DyQ>U&a@IJ0kk9Qcǿ)}s*8Gkk`H3||(;AР`*<Ǫ95txh^`U e.+ց`@cy Wb\OaK;hT02C*RWY UWU V9ݥ=&92Ą惎UTb@I\޴fZjCkzs5JNȘ=:^\id<+ۃvZ0LtQz0g 䚊>G{4WU}*;y/I; H+bXvSax >u4wuN,<"o; L`-B(dRF8Eu.UMCf]Pu^3?^~5p$S>jbZ!i9~Hk)_\߂Iƶ:p'&3ŢI 0LT97N #?5GIb}_C[-P,HjLH^\hf#Iy킵\f4f,_)ْdKS|k0ip0PO.oуZPFP۩g|C-V$'Q7zȟ%XDPwz kU os'΃C+YvsC{je7^QBn%ΓccBd]B:\Zy.s?+G.P&O$ҳAc-w SI/![dʺ`]v>m;rݞEEL|gFbw pU0 4 !~!1LDmTX̕=ȉ [P㱤E7P.vsf?@']?T(:.fNGbX8(x?b$#o3d`ۺ}@Kuy ?kWKFyܫ~5r TWE::,F;DjBz/PȻ&+z'2X#tWLцdžީ'M Jj40\o& mzJ;oFWӬ}"HqI9 Lua5Ajc-^NRrDEk&j#o;:>V h?D aTzUxaaܨ M_+vkJ 75-7+܃Ma氕B')3J ZW4x\[*cz(鳢ĭh /fY3xbo*͜9N,qFzZ RyEN7PxҬvbпT3,9Uɱ #޸d$uU};bc\9`ưz{f@, =gF;5FE A҂nLp:ŊKi\TZ-/s۝&.yzQc#c 17PQDcʆ n CJc%FHcƩ_WiP=̺~1C}ʎn>C kD]J(%n~%D4?{UjQh9vuj"Dh׉y 8[:I8O&ȐO @evgWo}E(}17[6ė}z{y[i = =/2@V)40bY! $W$-?\A;44rzҴd;66NilvsB7αE'zg F.c^I'ʆϿ^zzE<9Y7YLl;d +{)쒗s͗HZ|Սr@s& UO6am ԓ1}Zlg v4ݵ]" vFϔ~WC-QәHdvz&rVn3xx 1vG_SAxg&e4+P|sAnABl< RpHqh)] #DW=\~ t`h?%oT3`Gy/%vyيdIxy_%5 vk/Y=G U^]&k<W 84AS7|5$ Ă4ʟ+wE,CG>.@]=Rvx ~Ut|F>bVkZbǍkcjLdXӄm`XD`.UUx:|Y1K澑rL/}ԇ.h ?Go,I]t!N5ăz_(M[@U{Rw A\r|  kd^8oWSV ~.L"]:`Qc/ҼKT=o'[SYaˏ=5tkJxQI)hIz^`zZ0ԌJs-չHq X,,5GEK@Rf`Ƨ2U2>[%ZosSMZUJ8 lJ̹6 }Agb-r؄>Fڛ ~*Չ|7/:e&$#^[H6ڹCL@՗?އwK QD!a#紨^fl3b$PNXHW^4_-i*#zQ* n APsI}s?%MH?SlDX4g׬B|xg&eL. 1Xr޽!kq}KP<`Ɛ"s-o^d%CNS}I@h-0n gM.,.d{'9| ޽sKݍ9G5 ;X6QXi<>lZXȒ^QsyO{g+Svq->찱RPlqvia-5u'}_ݷIgAdQE B# #W T;݉/,M0(X׭oe\VȠMK~3SērP㤘';x1bȀ ̼oaQ}:mɠEwcvmPC)GAEFد+”3bZΰq/wZgM9{FLAYxuo4Z4gS={K_ϺYO=%Vhcq蒗JQ/pN8r#.)v"{iC׻&f>uT&N3xI^!i]!>WyԻ7#-J4reaeb]5z;8!騇3H9ߜUKbyؗ HՂ }4>u0t؞&'B BͨY * ўn?^el ϐ|p7`':>*!j(ǫLn?A;Ib8CfkHH?͂Hax_`#lf)stSGf0yM1e| u)L`ȳP[3-P8 E wK=*̃H"JNvkdQJNԌ8//׻#˔(G`;W |°E4LW)e@E*VK\Ẍq||0q8U ;%Yh6;:Jh!AE%ՕE*yUqG{w'spF KmEߧj8֢%`@㸝(1iAO q;^lR ᨪM?$DYeMg9YȦx>8-|SLF"G/75a %y0ڠϨf}6q8@^yN{B`*q|deҁ7ΧxsP> (񌍅DݧVÔ=RUY~!\!͘ߡo)r=x*sz~sV#E-{u:06SA*hdF7˶vN}(!ܩ>0= J? ڛ+Θ4 U8h锶]z*ͥ*[~]͓1ΫJrBS\䝾$0;S c&kT";wҡAmTŐS5Bk5L# L(&1S Ox)ʓ4|y@:3J9ϲ.PB5[Fv@i|.櫥)x8"q'GϢ+XVM2[)Ȑn"_{.J;*WqHSHfo!tk n4Cn5[d!V)ߴeAG}b]}fŤIup-2q;EP޳ 3+4*)˳,aÓs";鏫*ʟiVxm/mUeU|=iQSTw.xˬt1(p0V}앗1ny~c=]pKC5aDU ±8o ]s W-E2I;,J7oDCck[|z[g=% R1]gD=#qd1owϱLJv~[i2^7ĉePt1l]Ƨ-jeh6VqIMG3qQ.H -9_"}ȘU9XBEEjjj6S% +{#,~F6x1#Hn"3]A7:U3\Fgdomdvf!pmj$ІCʓuT]'#6GNzuya5|c 4,]/Gp{װށrM*9>_Xot8P/ 6L1{ȗr?MbeOxpA}C6iYSG Rqm(n B>lEҨ*},_^fqh-T3| rėy,mw-rOy#U3rLuЄdZԠKmݸ! Ѧedq}Xќ\ $nkĒkĴ@M< .Ży:GSSa: ZOdss [k ru .lBeYvP5\O&o!K"*sR0Cwc>1_hZFhw} Bf(0]kA˰|9 yrfNʡ6jjyA7=ḠT]`ж2.\:dK9m< 0GwBQL;:G8WcDz2ب\ŮLvvWH$Z"O( T7@L?kI<˿g'Đ#SmSRdDvg}p{D0jZd<=3;oٚOiP >QK阒7 _ $<ݯ(HXOqn,/I(Bex@l$vqB54e%HDr^qMyRm.s6W!p׳.*]ǽ?'FSӠv0wNZ:՜ 1k,Y{T[Ct" +%R_%*1#v>KKϩ¾zBi Qm'b*oC8j85+InܬDC6d <3j<`$fxYfNM$RE_̈dryi$nҲQBЫ[AV*G?Gsb8HTV[N06˺~L;.=9aPk =1Ql=1iklj6vd?|pVV~0cBL)WV5 ;5޾_VčZJhJo4MP/!tty*@b̚ec]+SH2^@Y^מfZԅCcWih + ^K%^>ɸn*hչvʭ_ Ih;OyA6llWtjl4,Tɵ$ƶh~qtn-[)V<yc7ZW@HD,(gʉ[&k  ϿFBNM)EmO e\qse]򃥜gz0G(Wz[FKˉ%lj' g`K-FCXFݴ7k89݌K]:v^Rqo#;*ٴC r]]6D(WAG臭pk" `Qwޔ4r ܽ!üV?-/$.d 4e ZO1-Gu8 ܞ'm%ʜ^ ݫJupDlgo!4> =&ѕZ7(i!#,w+SXNMVc[fAjvJ[(,>4ʵ݄4e.5U1ÔJ ? 0I >|B j..xN=2[n\&_L$n7(3#8PH|h!TZm鋝h[n3r$>|š?{xP82^?q򲛂k mL&iERW l3Ofu*I5 1d[7R6,ewKma/<kcP Ԉvh,JWGUmUi+|҈J:o,gg& pCGhJ Mc4yOu")Ɏ rtlDr;XxQa;IOjWIj Bc}珐%, 1&S]TQ,=.01a m/tvHfwine*㴷@Hs[%XkQgMF۠x/BComkSuILjv7njM=% <=W3nc;A8at~ Szƻy4qR=ܾ۰\RmVAq<Ԁ/Q8~lgc(7jYp/(=Rz#F[=L8Iqe{,X;!V*WG=٨K$Q7N.OhP!x2AA)[ʇQi랜i)DY+(@ו-oX:s4`BBZ}v $0,79U*Jg/|YM?r:lgvmP_v=쿟|% CR):HC݌avNDNo'ѽeNIS,'Ѿa\l+"ݵϾ?cm6_()UmQ+g`M$!^cHo4j`ǁ"In<Ѭě}zK~p<ށp!5eO̒]_{=1#Ɨ?o &SvjM \GCC;=+Ѧy=VmcI=Lprm걦$i EZ]qj|s\q K,2]`=iv#^znX@9q42THM|@ڱ#Mw~P're$:Hʴseȕ-S1F\sy ^0X <9i CXE"ctk7}`RO2,+bE䑐|(Z_Nkw26ws 6hϣԼ@8ɼ}~n2Q0V=q 9X=f6{bu%_lM,52@=9@r#8R3nby]a Բ}c]E]28m)d猑U(U Hd%2>FjNYAsBݤt r IY `FlbHE%U<2Ր8W!z5c!`{pi'1vARjc8Fy%fH͟L@ƀ])YT)eڒt3 vkdawXҹz0RA.SQRa0=(u`47̝aյLt³ ʣ5~(t͔5Ff#ۗ2J.G'jx C 8Ο^씅C.`^A{dT:_cޡ,j#bX^#f-e0S@Bm7E΃#_tOxuzh{# uβm姆@@\ޖ,=ױ? k/w0.kxhga?rN8b%W4s5$@7WǢ@?g//^ƥKe_R UG^:yȹW1:m\#caY ;%{|W0ѩFNq bnhCȒP ʘ"'"ROc/٪*O9w:0*n51 x!,f"x꓈: 6t7;_/@KhӇZK="4G[dDCA2ÊBdIk QCH4OTX<$L3lzE0|VR]~CDUt5^EP!b/vq* Zg\ nO;SD`<0={_:'lQORLF}TUK ]N-$C$I2ޑ/#xfgՈ8-z *K;J8_A E(g>e oGV|օUDZH5͉V z(FGnj(SwB%r Y\@E/q6_#w,§+WѐV %ޮЗlDlb6-/WX/|:G@CB-vpw_7>Z*!i\{rƼqacc@b6_Xn0ÆTB-m-Lˢ7]ж:U!]%Sl5Jtb*7$x744Hv f4<:pC~ m)EBe_Zf$dc@z#Vg?0Hs6;4s^J7%E {q[ rأR`^r~?^CdI^E u\REZM &yÏI]; L&ױ/g;Q='<Q/L J-.ƅ^@/l=wzn2OZڭXvG-u֠H;Ƹ,2L-0_4A'xJ _Dώ:'HTK֧Yѫ5.\Ţ00%0R>SQln:ׅ|c*_wA lZ>ilkrҮ Ń,) p'p!Ώar}k{ +L֐tSIj~PˀfFV[&B eL M\cw|cy)Lw'g{d/땔 նWacK>ian*eVtbWrdž6jUy!(O2'mnV]l>nsh-F  [lya+( % Edf.װ?TbelRۂ>Ze_8BYgd 9w0iJ~Z"o);鸽Н0.eVN(o @;DgB!`CRY:V2+DǽF"':UܙrId-6>4f1&nso>kfbYA!Z! g+.zc?|YNe_h 'TEPM^)-Ƨ ?܅ =A^u&ƹG2|kR6JH"ʵZ3sXm\_ y:=*oJ˩>p6^QK 6mK}FN6݂%sBĴޫ Yt-R N*{ 0S? S<)vB* I3#XOkxꇍD e4%XiEٚ鞓%Yw~I@;XK/rCUZk{tE-_ Ȅ#RD)Nr/jL\5Jf#/"w%"ҥL ȑHؠ o~vfc.+yj>~N$Fr\yCQ!q \ɶj3v2 ZL,*VmY6I7kHRs0F'raOz]׬O Օw[#lQ%>O`x@c%Cŭ l"M5N_Xޑ~#{ 0`#U/ όGL@oML)a+:yO 9WXTLB)}) j7uc;QJïi$m"45d|}|if2UV3DDwCݾ a<{Un%#jēt6HEq4C2`2M+B.~m. eJ}$rn=k-sj R4Brzq3 ⩙zC?}-e"a$wP\zC!/LSdu+"Emv]SQ ފrWb4jCX\i/ܕ#Y)(2ܷ|NnZD%b_Z=Njվs Oֻu88I_c/%SLzNƔs )Kv^V{&jR f+?pI.Z‡O[=㬋YoasyY'P;xZTȗRy9~zbx˫51RBs}VqMHgS'HNDXGsęd x#Jo\+@C-R., ;cq" 9| !:3=Z`°8A/Lۚbpcf̀KX#ArC_gّ'xoJul1 u{$hR,CY'ɌYM6׌,E\"iGjElbs96Ee|v$L݀Q .E.""QD"_Veǀ,1u V;)KxqpšDE؏/G~fWp9s+A/FPk}r笄}Dmkk/7/w QLf畊yN +v`r=V`|0 0}.zmO-wRK9:WNVSfW|+Z @5i0 8MDBWElNA4@u ( GBw Bq\a\PzY̕7]PG8XmM3EJXNٌ̒'f+ROe03#=Ϧ-?=%O_n }!")H.'sK ngFW4\RgD|S"\{KmagŮ6N֎ #/GK]Pg:#?F|Q B I꾓ݍ"HQFGܨP Sʽ^ߏ9 sc N? `d+}[؇q U5mNe JTLSrsMJfrd)2ۻlo+}mIgLW ۾$%躡t;+Py ^E@ie0B)TضBuRm)5z ZVA&0Y+PAڐځ/CslӚ ZxUz9`!jw3N ؞#1@9!C&h/ݠW^MSiˡ}j2dvEKu'=q9oK[<8^7TT~o;a?N"5eJNE%@FoJplX]I[-:)?eK$S)`ubLelixnU`O69('!־'%8<* oQt\ꏼ~"^8gWA՟;bXxeۀ&jF3w!,&sJkW3e]t IO֕1d#& /ٚgk{VܔDpؑWBvaYl00 RHEN VNWHb hRmMTfo&6ЂuDn7ߘ9OD*\19KdA*|L W}"s17tU@n.. &Tԏ"~ƅ^?B|DwϲZy`(MҷYXs; O:Fu/sϒGWi?ȨbC "zG%sBɚ;K帪/4]RJ[6&B$xFRF]f13ܑS Ĩ޹o&T y ĜuXaWm-¥+EyӞe`mSZ8TXNM :ͷbrp܂QA_Ȩ]hN 0u!W!EgXm>q0h_hS tW)0׏ې|r pe@{5 CQ}BlZKۅʥqÐ%8k^laV:CVy jehbOlw4I>X!5P7tsm!gkaW4[(!;fEL(&`< HW1,%・,eu|!&ь7(F*< '[g fmW(pUc;/vQ<ٔc^ l=[ɹ^N1Hg#`}|~~+}c.2k30R9ZڱI>LF$Dh)fF$O.w.kʿM)+/2[߰NA>VIt5fB 0_&xPRQ[4wpv9+:;H|̓6UQg&L'Y ؽ)cUʞz,3/3ZN#z¾L> 5IM9}Hi$"G}peX M%LWTWa% MpG=sa3cIے@`*cA?Uv5G#z sH*@OTӿ铃H@,J <'_u:psےZC/WR!ÅKZ`|cX=oY}}),t։Ee֚VspJܦ [/l< tYV-v攮%;ssrpm(`6P,WG_z)XrsIq(K uִ;̿U8x4b0sƌ-P%-kK ?XD.l# }]yn ci[kw 5yP,xyAQ J#0'ÂqBؼӶ 3>6b3hpi'F{Ϡ >)`?<6OMiG?|!wbxJ +軬 讅`vǵMƤ 8~.}΍2L!!PkP>nU&K uo|òduk?r<nY9ZHD+edp9.P<(ڎpsb5w1jS chmؤh|Fi-C&J!\C$)/wה=)]WO}-%96Γ?"[MAe5?v`!BrC}]׌5ԭXhwdYwuH} Qa8'̿p^ g>/Zퟹt;3b-;VQ@"jfiE P=dSϙ46 n'LoaİH^v@ # db`D{09"X0ZfУKSeTxY_؅]owyBJ6RUNI醃fM1bx}__sB˜6 4yw?&F>Q Q -@fO~>\&T/ڍJNHESǹXs4b- 1:{ͯl,USS@< #>}hڣ_$Ww֫d1Hx%bJ]Y0mWAh斬$ӝ?+b KI0Y}z(Iu惠%7RRi1@ qz~cx(謭<`NA}֐S/E yʅP/gg@_bMmzJAiB"ޗ >pi=a0H~J|O2;j~ўY(Vs4c$P#ll0(p< %D)Qu8L j uFDyNkTInm!T:)hGxrJ7 Ġlui"$xƗH~VXX՛lrõ! '4kylsM`_C$,ՙ8_U.[hAxEc7_X|mxm($`AjP Q?CkG 9VoȎw˛bKG@oʃ=\To Ɋ ʅB]u9,քjwzo^# LӍu ܊*L]{n8Z\x3#\ zuק}]?/zV{?I* + ?}Yg*&6fL"QT[֚NTɁI0Kcqmq hO{ Ul: :h8*&Ŏ֪A &J׬|N0`&7Т^̀( A X?< 4l]6+3j~EjB# $3Ef(3#!_ق6sĝ9y6 Glg!Ȋ1v9stn$CtZӼ=E]yb:r`6cGOc2yM`%XΒ ? +ҿW=[ i  |.3IlK9c 6ЭV/fW>2=fDC6&W G4WԨ89]+,INv?;K}ISl@ GCdi4" I$@} 5,ܮa|?O3evXv*րxԟض>1 ;\Ro3 |"۸#tY(JTLa-&M\z_SmEx#u?հwyhPelOKal:ĺN#|J$v]k1oqaW(bؤ!%x/]BL%,dP8cO? >L[ܩtZRj)y2.}.[WpC-[8e+_^I$As5HEѸc m +bX 7>}XIFCOFKeY)Td :tmNɵڑT"^@ZT@p(ƕq_bƋV'յucqu.1 kur:f6 ,h0.Vo=*p)u|q+#=`ֻ0Z[ec)C&>M; zbӥ]J`KNYL@ 9U.`EduqV{Qj׮^*ΰB Rȥ%?S 逌~`YWm5=s^0r^ ӡ8lb&}P'^Xpm]$$'P^sSci`GT"xaxzujx̕.r:C|/[w$.SzyzTF"XIU@RDR1fĭ=H'^0S>B7fTڂRHkԇcAF+ sИ'~%V{rf4ycѿv>O|dUW-Up; d eZ%O++}ү5kjHX 'a cT[xF^"DxhC| s(^H`޳;MbB |^"RfgXNN mCޅ`+]'hLOunhi쒑K8"i> daۇzeMnقg$}gpìEs !.Ng3FzWՏB֥kN @.ES2Cy2*{opoT* =vMAghAwDHW bMY[D˲F n!պENtWzrL3[R$Y 8tG֟ Y:röeNaY}V [āt>܂_Օ=ϭDQ "jVo2ܕf,cJ՛K=hf>QTK߅#f4D5Ag)sef"ѝȌҸj;3s7^OJ)mO;<ܴS d>fNnJq O޹Fn-O(GL^x. 0ŷr8Zyc6sQSNND?P Z}u)I6 L>v\7} ۡODYj#|}Xx>L4pq?]_QbGFg4NHYo&a~?NcDDS_ #A%m#0:=s3c $|R ^]u,g]8TxcDnc ܪdQ~em J_HNt > }a1λ"2zO "D)-Wc(Wl倩>v-Ҍf% ^*Պ-ohՌ76TˆT [\\;B#j>ܯ#hʣg_ |7+Cw(pr:JLdW{ʞTHo VOVOo'}tт "vg_ӯV ՙL@ޮ՗/Ta#WN^}\/(buicYC4{~Z[Pp_cRyGdp]+o*/okȻF;TeReйJ%!x^/2xX6>;gu̓u7M?{`uc@jb ׏Ȝ9jisSyMDZ͡>7hmulSi0 [R͞kK/j p%_˨ϕeJyWYx"K6!;bFl^ 3 9d)H P8;G՘ag.@$Y=[Ay"HՎ={|^BVKkO_*/^82^F>]c4ҌO.A\n+<f9@u$P'c{"[v<#SaSt|5F˺.,~|޻i&~=pڒ1   ]u캋]OF *xD2_BvLgpAn'#7 FhDo>@<әTJ 7l"rg?wc!2_r'ŗ{y0*k~}='==a׈uQHwΓU) ҅*AU7$S9!jUX6˻pPAucI&4Tw ^5 Q1X*v4Ø vםȅ4=jY3=G d9FJGeAwj މ!Uq%OO2"~ڳmx3ɁA%.5(WZ8wǙ%ZË-<H7"%ʢ!=jNR$?'s`+y77dgx{Qwԇ?f"?&iߋJMQϱMMQ3'/9wϣc| J ŀK_G]H0`#3C]S@єWR2}-չ4"&+0 HIwTPlqf̠qtۏRx[OwlV'97Fa{4؀0lC`L6֐.ߩ.3B 0d8&FJ[6 RCKVv]fO#ѩhf6yXrzI{Ey45~QV;,S&?st\H=+al#ޜg '3nF\{)62{V0\\diAcsG|`MJ L( )"(|ǘLy|C]4oqՅ;J[E2;deJ ,,u~K QI{WG~F+lqGJA66\>,'m CrrI}wFѵVSj6?}${p]GvE- w^.AݔKYRV-z31#8K),7acҠJ_6@4}QmA/ {m\݄NsҪ|Y9ԲIE`5C0pk^& YM;x!ń}W^EE%2vHB(h!jӝ<[#4#Q }_#3&64>|aLZfASk/_>Ǵr.(^Љ Ltn:jD Ao!R`Bёl?*'cj…Og5ɤ7QBbCYNm'Ey/RdWuQOW2NJKM s9N2ӎH`eRۿucwI3? ^+Κ $Jë0ݼyq%XƸԳ׭)vX;t#Ώ4p cEm/EcQ3L=Lt(M>EoوeQӺR희_/;ȻTkUG}’ՄLߟ;q+t<ox [35 o5wrWb dpnYѼ<9ɾOu0`T%H^Dq WԷ^2nsMJrQUQx'T>ЀFp^nE|B.čO.1Y30Tfo"&.=l5*{V՟z,7F o'PҮc ;6/g2(6pvˡ`3&[4u8B|*+,LX=U|FRcinH}*1l\H4+^z y#c5-Gq69h _2lI4S ϒ Q5bbql BX@*w(rJC9ʩsǽ08ںJ BH[Um|UBN7g߮k\{SC2 ^5AHwv 5y-j 6>:^(D-hN;ees_#Ma T:dn!c*:mԣ*MBb;/|83 m+I?n&k<.@<< Y:WC4=P5&&֋w^vZ'{m8GJ0 RAk;eK>svQ%.2A p<:b'|ה(y32L]| ocAwrx{vDj IIW€ 8p'k1 :$0zvrGr\ry]eQHN=P.h8rulCs @"Wi>Y'Wg vZlꨳV·];\ܴY Eő{tGF%ب=w%=՟ez3%JHeyAk>KGMr)pFS2Poh,p;Xv2*bօ>) AXyCqA[q<0ZA2rj[T4Kif9, ߎAe06;c 1z(TΒ$ KS%m$Z#l YJkv$#tbjPzKjU])*v1fpZ!5>E;ى9)~v֣4gҮ뎑I 4-'3 B/(swf,@k-w:ap̪:+JK#IG\ѹ Mf /c[wGX_O n3"Jf--Q7ȷDS`+cώjuE~D٥=<( kttE! |4/K2Y)  ;(B%CS6c/73QO#q[4&v/Ͷ41Se}d5 *Smtx M( atrq0V_hFySe57P~ Uui*PV$z8"d a:]\\D:>4X!zrwAFDkz NKK.$I+y4뇻H/(4Bc[A_U1{#WjIWo@ҤƧ<Ѧ16 Af!A1:ywKjKi/swd*ZmrCxXԒż(匇8&'$/,>^t8(= ܨ@۴,PvػaTuY1x{$0#cxMO5j, ߒH Kzއ" 14JRK}+9\o*)kk[vXfz#ٷ:OM걅6uANΧI ˏ ǵ&YS'[JsM"=WܜnZ(!0Ё)H5/v1&7W7?VYZ4=QƉn_ՎVw_T߁ Ouڳ&TS/3PvT'}5p¿4CIU4-ZT) @“.&nO1e ǰlSscOe f eN\E7T7lGS}\-gMZ8sfT0yOY5A'3u;nQ'ѱ}EKXt$W#Bh1r+*$/K8@ï /yau[Իae="Ouڿ4ntnOwq홪(8!?T#Z UW8 ۔ϩzzy.թJ~Jy~)kQ&XZy"VXkY%_]Yp^ *f)m o9caL,uF~LV;Ol rSCh_e8 [Bo^\@ɼn1sK7j)B4;$h{exd* f'e'sB2 `bQtZyf+S G0M=r[N3,bՉޞɰZsI5*(RC!=#3wHD؞*;IMV,v/IH;T>&jDe.U&'V"V켸L$o`u9Ͳluwg}Ӗ6B \9 Ƃk"q0н{m3gꌾB\Gu&tޭlUL5^`u;q-E^TEt?WL>ͩTV{=25E:[T^5Uf59u2s%)JʘJyʻ>B12MqQp Ͻ?1'$fA7wwu{n;Sb2F+)2t+;-@s/X奄Ph *}Mءv1fMO[~Z"xf~6{\n;qTWvf:-(bPNgX)}""wBqKߩ:to8ЙQ9ðj 2_D}65A,{},(֙Secaj'̆I0&&W^S9UgXĩ#>4̮D U<L<$n eZFO?0DRv@hcr#_PnVt EfBA#͋0ha106 x+Νk. <-hbLQJ5am2-&YpNV )D UL⁡ 0Wzu[,WeztS58VI2E淶 bKT컬<3D▘+UiW N;ҏHEIvzyK1ZIVg,\8o'ħ4nM#4VZ| C R[ӎwF1}+o9kLEڵp]MĮƘAӶxGn1yGovlV?וU֛?ƀr8ƹţ΃~T4K,(U49`9&al]DɑS4^(Y  @A~ Aeh,}30]&7;>Ay ω7U-UW@yDJ4Ȼ?K+NߌƁHOzvC Q .rּfMx wH*RăCֿ)l̕Vҳ e#2U ou0A.kg a2k#6,(W1Z ;a/}w{2$--Fsy_ ,M8h&No 7 +|m_{$j"m,Po׵.9t"tXIq@uk.-H]k3X'zܦ nO ~V  )AѽP+fꗢ 3sM3~E$P7L9{=n@<a#ld$n*:. G/y/kgnW5P({nʹ.Mg=AײDzc-%iZA+ъ(itTq~f (%"Cw*:+!_PcЄ%'KeuJzMW-7*E>r}$?kxOqCu4RmHIl̩R4":x<9(_ra"+p }PTed^oJawiTO˭j7+j0M+:u;jJW"AQ }r&A93؊ | Б Nx6)+dvr]fS~ΰg^ya0S*nɖ7ˆbM o\H>ɉq844`@2jN]3aAOn\L C(taPu /J!F@(#/t[v] ~1$Ea |\^=ۙ:@0lހxmWBPd7+s|8|wc ۭبc],X5?p{@ؠڂf%~ßG?MR`!bbVɼ <҆*49H\݉_ aG(QWE0PzDPO "|tYOoh gm_ ?-8q /h]Y"=3Sa&ޠv<(Bx-`!Rndj2SEhb87~w%k6sspl~zBX5HoRm颬0wgf|J/Lp܍QFg3^] QH dq-өȋ_hM2<>nC,TK/1\0OAVONn83ѸYmk%ӯ}+AtBG)>Y|[v)O֖ ocNmd Tf`0uRV͵HLx޺"2w]qv//:.BE8(лg`g!}EM~x`5|7&]WPe1yT&R qO=؉rͷ8orxJ[ͨ*fоcETWBHoNBҕ-L b+(h;" Q)x g?;Z+%ėP*@4mpے5TPmmtz2?ّL,(iN-ڠy YK蹤F%~~?ͻ<\$13i-⥌y)hw0Z2T'+ej[IAMhb[ }#"d#-fK#ǾK3MW/2m.:PC1 TO[F(R(Z5Es³-÷ե(͂iIR^vm!&NwmbE][Id+JªG ң9?w4M藫/l'4@ڡwZgЫZ{ġѝTW'PUvm5: I쓸G甊n312VET ӌ<Ԍӈnj Tl}MEcg&Sխ(HAjdr!7^+tBʁ^=)" #\՝i58440#KUrx&9Em[?;<=QLs,eFU xy |} 籀@̔Tն䩣g&jSCi/:Dq6M_e0CyNxתFC29aeŬ~@A/Vw-X$*c,IWj`T"R8EP ^"TGkI5\Ӄ|AF_QǓqo1 ?gx<?ī78H!dN-SԜ˃Df6#-xzg.*YQS=^1f Z{CJH n |f)2m.׫؜ӳ>&m4-5GWMӝƎ)pbO¼EӃBsaSbr` v> tq2BL; Q_ ic.e,sLEv JҎ0b+tb+=R AErwo3!O3{^9 :5r/Ҙu~*'dNETHFwxŪk[b7$ 33P xn,`C|{#"7UG3]};KawE>5ݱ*܁P}C7(-Aմ8|FM'HO!wYߏ w_TVLRW xH=.<#=ۋNED2mMHkywU^#4ZYl"΢9,c嫏SCwOF,4&GO\;u׽yl:g}珎U ]LjvZe,zvTq>uEo).ŠUKIkJJN[$XiO5 jZ襮ǷE+͌!h-aSZ~g2tYcRCΜﶍ$vt5L$:g#hL\c*>kX j %dl"o(xEׄRvߺ @-G*X2T+eSJ5e@,*ז'9ď.0260 z*#1'לs}kĞBĀ"Ty!XJ(wFjEP-11k53$S@7bGdimډ=&MqSsp[xK^~ٽ}žt;|2& *zrZ[{rNQy>-dRKD'tՇP9 hݴ, RVROrk5 X ]CEE,T?1% qEՙb2 I`" iۦ}zg^aێ]# 2;X{d ~;jHx9hGL>`n9ebL?O˔%B[ˎmibK0n6Ni'\XeIzc*r{HMaYםbl쵎{tI6)W'\=#گpD -٭ ywZ,F92|LR2GfffcֵN(Ơ,HId\4)zqi@wY`^X:gz-2Z4>Q[|rM[80o|E1+A܀ʰZ"Nm>LokAc,IHFޱ~^;vjkj:K s@/4c,ឹ4`'h\TYycIDǟ< 3YX,ꋨ[Z,Z*0wސ8]kgFϝK ?"- xf >ԼY~Uͣ qNWR]OvaKH*A_z82ھI1_-̙cH@*6'M.atv*Hk .xk3}zڅSD֩!>~QgePrLQͰ%3{:ljSnܜtWZ2+\{:B`Nn{3S-m"V~ӽbH`( `9z07PsLUW`'+u.A%.tTO 5Ofȍ0} ϧXB:5NtS2ѯå"^C$hJ'}NśsΌ7PZP`d.CXPz,Flו{Riɮiǔ.D7. 6wIv}F~ }Ye8l;r8IP⍓%&ΥnT[PGuzNOJB, DֹI5 WdlcGvrFAgrB_k,j~-ڴY(`ݽ=>9NqxENtDvսy vf= OTUh!}āyD;0O|`9Vl).zzq\콲:@)u5rg0ֽc;(ށ;?HQMHi w 4%a Ц*+֢Z :xEpf<@ q>h q0)Մ*0rhO5SB"Rcrpαy ZJ!47w1I/I֍a3qAmXT$_#_tN&r%}"\/;GR5+Gv/ fgu4$w?UN<6L[hJob -0-Sa+ٙ WK{T\!H93%xYJWHŲLc ZT24 I]N̪b'O{b`YG҆l>bRv.jT n&񔷟NE Jyž`tOoW"ȁƘo`% W%<2.<O:G??qcJ;^ݣ!,<d88ߕw0J}4qÔ<1ˆ68r^QG-JTcT#(ׂy?TzB3*!P-ygv4C͏Ztءo|%`cMɾEYo, :sW_z-Ay!<(#p-0ϙ=pe- ނI wedlĘ/*cOf>@WGߣo' /|;sh}]|x@k,ٺ))(АN@0 ZF_)_({*{'}nwLCo`=r<cuY09ZPeݤ[_ rЦBr s3N6#xH U(4k!VC 'X*u]V23i|>⤩(i_fn>iܧKïc*/e<:(0\G ߍٔ6xQMjc!̖a u|L"Ajx7錑rQ4ZQ/$\ȇ.z B7̍w)x1 fjk %M†7l%ťjZ t(njS^5F+ FԙvjwaD}[1t^.`ܤa٧J'p#^I:{Ue wKNQWݙ붢Za?IyNtزEO<ٌ|oDncL+.{q珉.Uav DC).qx]izg@IʌWI0HGȰ?h',:a#c9># H FZH,>~Nug;G;׻=*iv_4z&m 7r'+\Vp'&VFf7ޗrW^.vf,%Nᐚ\zPkA=vL` f.n}ϜRd^'`|Au˱tSFr|2l5)nD3ۑgH# M\Pqv6l8} R%[Ur#b2%}vÙ>sqo_;l4U_B8}1?Ϲ82o"n'AԷg _j;F=;@lGƶSm \  sd`Qhs4 x=)0vWw)+BGuKi5x[(Y^ZHYw+|I2qdL{h4'Cyl*v*_ihm9uesJm/Yg/0\F J߮N݁=`8&2 Q&`[lXS cay,m֒xuO~1CbvJ鶑*T02Z. B5 D^(Z,}_bblK`θZرglVo yS@CpoQrZ\Im\4> z6z94F3l+pZffAܗt {VB 'RXmPdK'W.EXv+%#H:l6XF >gNYu_N(N\x>bJD2&oÚ̏w8m(,1~jyrgGm`.`ҚEegJY9VIH@e:5_DFOդ)E uk0yo*SNpR+4ncXMQ_÷XSɖ zL'o~?ƭmkqHӮpj]n{ [ f+OMD5#a #}- gtdL8zEg,]V>qL1pJGl(z${4g! y]`bz‡q"bt<W >NE0vAԏ jTQlΦd kbKQFT"Ey/u+~ld"E)Mty kqZBC>ql̳h"ڴ7$=. &aԉ#Z{lz,!7Q0ɢbr ''\cbam[4l_&Oi&$YXە;<++eY1J|a껑TFg|gWզ}^!2Rb6J ' GӬbFgt3ll0Sj Cc\lz*b K֠RȚײ:`tEcBh~ca6-l45q :ʲ\ CUv}jTq:@WW#ȸHo~"E2\!ƃ͈_ظ uSm3 nVT_շ`)|Qjo1B'6Z "0ʽ$4.+0yȅУ-TP6(8&eLGe9nTҴLC)D|NF䱫_+>.Ov+)V AyNd3l= >I8'HvD79[fItޜ|(*DNzB)??'cEL+X),<{.O+ۤ(yh6n,s0 ):]Hk 8J\-bߴ]BuR?C+xqbYKX0qiډ =-f(XK>4¯?ڷmcJש6Z5/kb+ ҷ)i }{o$TGH(  ]}`;"̼z19W5!67y2V!"ubX#ۇ'H#YLń+hNW(!7?;l>ڝ1 H(K9,JbˤfiTTKLLx |u'-Bx7įBᢸMR",r$4=gTޜo0JLp0B s+]Nc;!>&"=ӹЩO%+>b]4VE?SLxv~|ю^{*ȢCp׾=k'^rfQU^\nmtC}ء-EԼ?l"2ͫ$ӽdFl4-av~!rкa!'# pLH8wїy?{yf"Ց,7pc2#D"T.h F֛6 3+Z*A`Hg]%ꞺW0\Si^<";:y po :*iW@$Sϙ׈Ȥ'&4l;Žx}dK/x[9fi4ʼnzB"<7XrnH[-VNûqI\+jޣ]y8I<#<"y9\DiԲ5+C5ږNQhq?O&ypDExK@J0LMx?ȣ cI;)M~yc?}aiAX,t5yi?t3z3wO u;Ǹfѩds?K)H| /{h9-OnN!x1$sn2̢5YO}gM)(fklz!XU0hWJpb-{vXvZ >U:Y SPRQ֯ʰۃ Vi 5vH]TG]EZߜ< yĽXW"-h3K5'3v>RGwнIPꀗ!5jiyek+Hb 78&hZnbŬxp@z@H#^Ej##qϸc A+O @ :O ?܎ Ǯ2+cwtr]%_%6qrfR7 f-U_ЅCAZjG[pnNFVxܧQnɦoB#G._$JrhjU&٪ל־+5qyKM`"88 8&,_Ɍ8M5-RܾJ)Xx{m^?f\6!L&wʮ 0⁹)6IQĠ~]1e6I4٤4})Ra3r:I6O/EP=R#fz;Sv/fIkbӝTb=2R䳢vC\1-=if^3A y9_BmApsihv6?Z,-f#hb_ BHly'U|HqcbURS,=,9w_5iZ1='p! 7@h{Rvs5y5K}|WPdpK6 HT;]g/>з4j(2K H1@ݪD -*P]YCvUQ0{>DD>^(BP_.٧4YݧDM(=RHU9b46ahC4ζH8Yј M'ضHJ ,o>V8ܓz3v=d Jﱵܾ4&e+@A:6rnǏ>I_5@(̪qTƫޓ_[ 0\Wgn@;º QsqBB޲AM3=!ºiBSIP}/=IxN3 RBYʐc 2s4va !#M9˒l*Ǔ3bvJh>eD@HcftU]ų.%y%\d]zgF0tnO܏f܇`2mHf:HoF~f;bCo]]LxX%Ŀr (h>ʲ <%BZ˓Y@=2 \f|nS==FAbotE㫗iR7c8ex9!, 7&I4d̏%PBqecwA%VcB-4ah]]c CVRwGfbw}c%Kkq|ԫl-,(s9J)r (;)kLd%ɓ.t pY m_(au΃SBIX}V%c(aS:`?̙ 8S< ɳfcM,ah<:]`y tL\Q2. N/ _8nW|i@ȵic~MZ GKp_(zZvˡ`3Oj r)^7񧒋I/u6:xJsG G7onXvER0һ0$ xQ=-uQh52g22]0|nL]ېn!< B-=w$ r:lĽ885 f̓d*@V꘢u4\'9?_Vg\ɼ,)i%wńԕytHCw1l %Yl☩41( R;x.hV=%&Hʪwþ+dNxE^"Xj{0G3 l^ d:$MX |K2RqJ>%YmЃ羖!.xϻm&9k4`/.C_(xt7pй @˞@*!C#XNqAHY x(E/Ryo b;LzxCWQG#EAՆ0eOU&+ ޢ}].eQ|$k/zrEsH6h p1 +iԴd5$rĥ(p;wK+}N0Puſc{[4r!zRCr4"c%Ջ5e'UsV{}1LIcRLf#?NT ˊK_b)mO_ +2ZW1MVef\MN%zuKcVbb_O4=IT1kq?I#t9ҭ4tfղ4d?6ED/rA FՄ"`ܴZnr {% bd^,ASF=ƻ7 P7-1:i7!9 K1N@K?WWhxoH?S~jליtmR|M;I?_nxJjgxO*En+):"QX(|6EIM4rF0ROweEuٽ+_%>$7` |Ζld@6,~$A\a gůF;ѽ}>۫oⱒsϺ$bdpu,k A8j{Pbq~AW;=Xym,ջHT'][+Zf5_-L*.6/6̊Am [G748F*#9@yKcT)79K=U'՝9 PsoҶ@J)h_IFM1*#XuU8ȵ4/)FMe .n' c][˪+66&ozST-yT,IXon.- 8\>0;ezF]s&)2⾐GL,gPD-!ԕyc^~= J M#d;]ƽrl%H;"*2,ܔ7| QzT5}ᴂȚuJTãSan(IŶ8p.Z5]8 5n%`#(*:T(FO_,-oY zfGGMjtgs3G CҞh "/Yuˀ܈zΛ06s) XyPQCHDzڏ|z(񇿦 ~*s-:l x3:مB_' 5wTGR1^;@:u.d?N<;oBp$uaq=3DYQAtL)կ-Ǧp6mc*P_9IϟHN;HR&u[q7:Vھe^>-t2^(K"zݮeٗI޿1˕'*wQP4rI[ɰBeVO^DEaȞ<@w&[bgscS1<56!\!יoM-D,z߯*a6y(Ng;&XD ( qGQuug>LY 1c` 20ᗔ=[]ǚ/u@k8}-RFJ2.s[폄%1Xcߨ$:_z}ޟ[ UڈS^|ĺv4-drie͝^Vi!lll) K*r &$=~Α$:[s~Ɍܡ9j vp1#k6vQD>O4}>b_`riȅ!ҲS%wf"FOMR\)9* d^bWP9z@iE*%ƲՍբp 'ٯR%Q+> DU!,HVtֲdIk1hD1ru&E4^W&#qlm EbRx!^!a[ԌCLFEo{d0Ki$CwFiCq|*[QiJġ r)!Oqt5ퟠPU}'זQkS}k{4\)8BAŧ|[9tN!iѬU-QkvM1wJCrckWDbPQ~@M4 ;6畗Mqo:H.m׾i@#0nՠ~ʏ'@)c5[XG:l݀% Ȁ?㟶Lڲkʙ}FcxM$HcEqF?_O@@HG^!RK5JN*Ky`c(Rq ֗S3o/UoLC#XM4#-PI@%er.oGU#bB/MtoIF'4VRDΧSBf?[& (FV1kl&&V|Wރgh0"f*4xSrW ; |'7زa+& 1+*6L8XGc5çR+|ߚ lrԫbgQn8uAƟa}ˏL>(Nc|$=닯"/Zh"X.Cl& ;2U8 qzwdkI$7=! umXaiI}ST=Qbepֵ޽ o]R jTBsYs8rLL@C{\ {%@Mo>cޝ>(]7L9e)KҘL3ρ3䆸3)<^8.\sZQ}Dmݢ$^AJj5,<;Q !^R1Yb/->y#ֱFP`϶ufRP751oT,#Ucx ~48HHU!^z%CQ$,9^ΛnW b<8tjA4 Pt~{j\kqDiưcY^4Os猌GkJ9uSd3 ϟ,H4I ΕiVJ6ۄ cE&zA )tL6^u5^:S$~"C|-VbՒɚB?%J jww҅Yi9j[@~Zfp{!P2dԅ|e_sky{99CMkyH\V3 Ҹ{Vz@n@[[7%&)D;Rm iaVwU T4; Ԛ5ӃoMhVnT8"5jzWoFG Զ0w~$IJwzŋ2XrQ[8IhiWѲfo(Swde.9tFձÊquknS0pT:bx` 5e뮯 'y(xWt9UDV=i\y!J^ Bi )PR%s !S+f:6`f3\=Z&PCR-ZM`&UBA3-okV5Q,K^<ƙ<Ħ Q:3UJX)k68ܧcnޗ (X<__avăuEcnt8 /Y4Frq< xqc=r'yATl >Qx12ݣ+C>c>`Lr?[i^AUe32duan;3bDwϨ\%ԻU޿~څpX[SEtR|VE5LiȆe> 3 uNO߈ʎQk|"ҿmI%X!o}~Kӕ_v&!(:^'Gu_(vCi3M}p]736o1&g6]Ze/ק@n#0sAIk @+QS&c^g[N:ʗg46x ܔvi6Z{Z[ä.#ƩKe$-i0Cub $>9Q[u4T2Qeq?-/#5Nݾ:saڷGK" Lc @+ NIkʙ=֘b7L'dG3e- nPQ (` Y.iϒdDf;##FfuIB\s~ߟf9M龿J8Ӌޫ]嫺6Bt7p"W쩁;=ɩ@gi별 _B)/4,I47_(n$X쁰8PZ  ΙOy‚f@ ?6h+'ac]Vq;HppE]Nވkw&76 ?]/*H޾5ps TVV;y-;T=Mr nL`gٯε)Sc  iuDzH tT#Hgfh.GMQťo/fT0e#QZIad̃YQît.[Y啖6UԐR]NhJ2I1 [$kzfeNmXxU>D&^$Ǧ{ ZI]&PQ@(O[P2Z SO=] ȍ۬DHBߝ]Z8kH@. l }8;K,UhؤPJ2)O q!GR8ޱrB dNjJkI K;LsƭuPYu#0LC t-P]včiX$i?϶0Y٤YWi$/8lbDa/KtRiɍj +g%]Z3_0g0TE/!O1;k^ Ĝ 'puTdS&ڄ 3A绻Y5HXl9B_3b&*p g?]EtxwC@6 KVsݕ2_B>#kJK2Y⚌(w%}/cy|QK<һjG-Nicv7JȒ|ؠy9lQ 7[b)o:cjwӗY;ߐY%Z%h!ڋpOhL۝^P> `l%T?E6R)d dV7/M"]9WYp&~Qf}H= tDݢtlgg#ۓytt1bh*!;c:sTnޑ; 66B{gf֧ {S`^%E35yljܘ\ȑnrnx>2Xo0a*^=%qo(z+~$"J@..;wmS}jm4AͯU =x/+Ϭ5GK^2T9IdG;KZ5%a8"i&.̢bZO6` %\gYcAipv⒭KdU .cZCX:\:7ZڎNRҰ+ޥ )SPEtVeb3?iTi5G[~ JIK]pΚ98UγF=SdeI({OnG_QT#,$ ~vlJƌF{ˁTUx܀-FO:zb.nS'h3Ð O'uGdzh,@F5~'#^2 mvntmN~g.bR.)L]7[]#䏢(8WsUNuob,P%:E>DK 9"lhvxwfzGb\Cyo.Θ"}yv3yH]QO5J _RjeW6|kS*U6e^'f{0SަqjHqm~J|/G.CŧO<`lsN _5ph! =1N{ gGS޽UMN\꿯GO\Q}˓ɑt?*رK^`٩޸Ya rUend;-)_ܖ,9☮Pů>q u63QcZ4/~jmE8yCT֑ .V,A8ban.pw'AթC'/PgF|(ΈX':vRS\SJ{3͛ưn&H%X P)2=[:ca8a$yVYv @l!'\:rDXR…MX)H"}GE8V߇"9mȸp8W O2_ۮƸ5R+8t25>4Eq7SHyf&xw/o1EYp$DT*g}slO8[r<_J(n?yA׍#4IwS~>MF~MS K'fTQX4 394"9gxrb| `1DGrtk\nJ9f(EYy ŌqȻsW6KjXu 6 qo~K&MR %+ wKkEr#r FRޓrl-˱U9#MaL(|:ݾ9 Myg5/ "njJܰRd9eMDchGfSwhTO?6d~H?H)~ܙ⎨BixH`b$jo]̣y_9h?Gl-j.0>τU+4c k-o,罇m(,ɹsN&R^q1 N<+)>cc&z-eCE ̲un_=1z>৒_J_، ۧ0A>k<:*l' ^M`Sl|ShLXV]!1u1q;톱.o} F$?Bn*?1 m3K͖ ֪ި\I7%9i-7i8-€;AbjsM+BY u 9jS-{/$gfl,K7~7(x<uʼ zqŞھQ^-Vf |=XDz[1Т7\t.vA7M3mSU e<ڰ: 35ﲨ9:S̄7C|f&mPK S$E !rhj[py?p г7- ճ Y,c)eoGvnKKۦ ui u{Dތ/8wD̹$&9&S ևimnQCRx؄ޞxC=v[whlE D/I%P -߁Wz{+!oA?U٨kM3o7itW@5L3حywI `oYo7vG *IozDerq\۶C, *:;8zP/(W$q< ؈|Dybz@4!j 넑ÃD"B/BcհG~}Pe8ULoG9U,T%oE#Q!lD'V7qEpš؀Z@zBCQ ?[sctenINbgl(M5a.xb&W<zI-qc@wAA'xH5JkDfn4Mq莻7{o`Dp4֊Z;-m[`uX;d]aշz!d0l!=:x皂no13߳͞/uh7AVXb7,r҅Oځ<*Q cqYvEQK`lBܪy?k5Xؾ#w  F@p4JH?s/aG O"cƑYlfmJSo!4 کMA.?Vc{?g:0+Ω -W٨u';gs!*念4ZXRءh\f}ִCy"Cϲ1+/L0ғ^7Lo}O*XnYxWH,kϨǾ+b@%!5[;ϰyH;tmC&#ِugEdz% Mo1C,גֹ'\] |yaUZ'~E$Xcoϻ-hm,XnJڒ_H&[-F)EB[ lUIhirc ag92rQWXݟ1!*@x>%@v('f+F՝ Kܸ|nY7!? YiyyAT#dSOz F4KDU}Q?ʁNPx848@ &|*_&ģ |AS`j @9`HR=gBpԿyJjyW5:Iyص?WJ ,I#әmBqq㯐v)ti;B%5qBk(rTGSh"8|J3Xp9[Ül4>P T *hBuxA'yZ=\+ X"jLhQx1dKo;u΄d86z#2x|e3qMqUb&֏5:OFjeWV9JI4d(=_J,Y.5,kukΩ|2@$n{WYoqP-zLX52 0 (J| :;OFQo}V߇eV錐\9 f7ּhacRyG磴"!4+:Qwiq@QԪf@[KxeJ`5;`4ر+ GY}BojͶg6P =3Fqn!oduQ։A}b8uӜ^lU%|d@%$Km_0tCw1w#fr;?1k۲˱WW{s?크Lݡփ(W :';ûCC`"}D`yՖL*ru%֓\ ktzǔ~{A܋h% )bZ1׿uږ瑳[ =& '`5͈U2SQ9]v:s⁲ʩ9np"LZ2Op=Үj |`Y5]3!Livў *H,ekGsf .RKXCsդNDؘ֗8,,HG Cpȥ;sm?{!ǧ4L> fN@ %rYB(qا^Gs0]R@-T/G9Q1]'1:8d'Rs9JXhU-^ m/A+wUx~ }VyDxS@>b/CÔG zA/ӋYVfw0/EI}q0m0>KSkRPqz88v݉C=<wU"I1-)r H̓:fI٪څ KlYw'e>Zr7(:-MFy& b18vWc<Ά%5"]|m$yrT.:#q4q-9Q#|fUG``^JSL\EuAږ£RCnU;X=smĚ\(W\eFq`Cpe%Kwt;5E&ai=4m]Ɔ[\PuIVӒUAj/i12X0Ǿ֡@wQlrM?$wWDWwFʂ@  @(潡MkBO''H i*xѝZ/4 lC[n>k YvzJ:1\0l#XWђN$Z޴T*.;M E1A/J<$vIuO8%]N)#=tccR\xF2 #0e ua!x"Uu7a'UJ /wS0`MrLJ⏱O3l0"SL d~ 1 uq7ט$  Q>ڸ0W?m,  UPhrozL1}=h 9jmQΐWX@1s '`3N) &mɿ@a5Sj5`m%k؈?ݳ'%']qH8{:A9KE|[!~3}ټVE?;̏L-=i*^E B (x3σ+!#qG Ch>xO#ES%}/-',$ȍi6T_taW:{+5[~iМʞ3X@OH&f f FbANE8' f'tcupvu/E5t? z0KԭD%F(@~<>#AL@Ag 4GbZleq3:iYD)3ihH^:h32q:\."9URQwlu'z )M@),2Z @NYFuԀonm_ܞ|(<)˧i j^{i߿< F H7#xʵœy"]qs`O9{Fឮ0҅P j>&pɗ!Tv]R5Ip믏t&2t/YT2_zlU5o\=6ԲlrS0xXx3_&1]Մ &,pjSOPotWiDtApǨyq)X [[W)Y,"ȶ}H)E;;f0C8Ԕ&]t{zҫ(Wc8~eqۗ)Ip}Įj Cb䞡Zw36%ːl3ă]ru2@l 5e|rssa7R%Gl}-zXc!A} ,m(\!HLxF5i';?kJ [Q#'0DSMbmu ]![2:0W>ޝ nG 3uDi. ;%3*yh_6#٠?p[I>:Fe ,Y,#^o/=YOO#K n!zؠC,}YM=EP_ֽq,NMltǀj:f3˜<2@Q!5ΝZ8:-8b #ie|i3li/8t/[1ELnotn2 k ɋm͖7C-/vtDތyE Wak\l rd2S3b\OD&5VSO"y[ȨUk-qӵUXQ* |-CRN}1 `Hݧ$p4hꥢ5 |N7^3q ],KmsSVCӂ.K nHU,ݹ tVb8LEͪm< AF%P:8l."cJ ,VF"pCvjBqYDm4_f;8EmӾH}}ol >.֚TԞw~*2"5W]:˰@ßXpFHXl>-PV<,'y7S*[m]+ ]N8-7\}uo0e %}[@ z]OS "+Ѻ}b1.T~t~~v `$#"="OPĻY4eM!-Ef0_lnk j#6~, UzEDؚpdLȷ>-z)\ʋP0lr#U#x?Mo i>Ea;B/iNcJ_y3m, KdJ n6S<ږ'ky`r+r9$ Yn nAZv$?'qޤLizd`܅^[+ׇ-d1|1BҾWEiwjkM#K~N6wjs=W DX]6J2Hk̓:;hAyWPKz g1 nٗ(,/-0M^Qq疉"Y([h 4#}[/GCdbkUa?pP|oA ~RWEg-dN]*Z(os?_ %Jg4ݼˣAK in ~LQ#^y7_%aɾ6s% ǥ%93]YU4S‚r\9O93]px̵#/iw/B\^XƎѓ})p6' \ڎ@B>&x? WA-Z`mK)^c/[81w̷HH|EG-e?z.-co;wSzA)SP_v>P!?'\~]\O!.XOTd39SPfFpX6b\$"&/N((\UMIzs}9*9ւ^%v;bbzД 4nM0;Yh;{1ѣz]ںF֍eh1ϞxBG 鷉?xYR -K@?-Hg>P!N~_|\oEɸ1)xc=Hұ[~QjBոC;(kq lA>9 Ht=M.pŖogՠPm6kp}:ҺfDH {szur'-f뛂vkcHJ F{a]U/nx12pq!T[_(S 4\pօ ޙFL^LL.AZ]abqVMTfАq -$56Bol;M=cǃ_2H>8iȔLrN5gWGGߦt)~qF&Kз1"+3=Д)Zo!gA_3c<E 8)o݌Keҋ ,d]xk~lrN'm1η_o 披_UN wh+ 1 PTݏUX!%@H`webL}0S>ѧl6捕x+)"!1(Y :"0XרTf/-g(M$͖}PQ HL_aW1%3J2SzP%*~?嚐^4j%9(DN_A[Yay9('z߰z'=$AsԀAM> F:/+FUG_JTnX5=@i kK9}}G\6=M䘲','DFX70L%4׌.hƕs+V|?yXJ-0E2fWjdZ'V0TEHq)"sIr0Mh{"+>㷴^x_r7?+x EbH ̈ }zT0^BMKh< g V%N#\O;}Wi3[rr2GSa' 96|nXm~`#Rk^#@3ᐡ0@)j8{r%EGXYw4l^Tq;IQcW!H4 yoLU2&O |}-<x|F}i1+}֏ 'P^֞τ2 Aq7LOT'Quc0r M˫$/lP/|֨Zw.VސTkG^)mj~We9$(&q1/AATQQLv +)FIpLt'Ol޹ PLwjv#^O Ym)84zxCH9pf(kH~ ,s\"a:ˡ¢h<*'q^~!6u܃e_8Ra-01ݮ  C\t![fɕ(.vռ[G,I WFO  3/Iyaꭙ|7r% o\`kDPE;-&d `l CU"U;7QwD7hFk5sQNM}f;qy0ZnO9L@iPgra tbXa <7(E)8?f$$f)ސcCth$_Oa0~|gI%lp sXk r$ʌ2=3X~7\/8}?浂-aL: }L"rIg6ILxhStA:hF=\> l=ƾ7!꘡bzWV{A|~)x0 'G&OA¦]8 Ns[ /kƀ&i!,l2A ]2C-D*E%HQ@۽!B5ccdH* Zؙ. ύ͈Ē|W#~\|vqW;`~ԫ*#P/-õ yŇFS! '2.8M͚ y"*=_}\,eWsld}5ze-P=Bq.,;Pxy XRi\X AR]q&)OVpV{ASxa4z/Yi>oJ!z2 NEfwm/H PnNwݶ &c^1V7}?ھڍ52B%;qQ=7 6dz!*̏6 !T\⬄ ֪Bʬ*a[?<A߆*6ow{O$m"BV(;q!_MJqލ;UЦ—193c/3]o<~Fb*TuؘܹpOA[͛fcgKۄE[JS;ђ}:( f7 L A X O)<;,Cphy- R-V) =Y"83eأ8<'hm`b&Vʯ:!VۋDžrspAggLMq+Xy"̥Ec{y@gk Hn`R6j̰A`j9+x>ߗL -S)Mw2}"4 ݖUvxaml6b)Kc>`VS l ZJˇCx-S"-M[;Gq}3n^L uhEh(JZgd-N?_x{H-ZQa?ei2Ml(C!nϒxile9 z<9u-kb) !-{-7ޑ\S*W@3K0Z0h!HR~'z G~A'mZ@1[8hHsq% 8[L!W-!@ML,Iζy@xw$ qF2ªs] ~71 0,}R*l@1XPV؃+~AW 鋌5x5 oROIcbc'q z?hI@g޾9 dsٞ*qz =o9С̥Ydʄ|&lnSFëQz-#u;QC/yRANV\le3'Y^I;U6M`˄ɂΘn WkPX9*`*4Pр6m ׳`iKhhmp)z+wǾE@CvxB+!լA/´9L!pkAO|.j;${ ubxNXsR|؝e UL+Vm&k9q1CC.N 5L Z3TG52v8Gn( gR$ElJ'.OWƬ#faviFҕ<ʊF,q SHQVokեR!$l;O-pմ#77äD!D>n^pEzF5U8UtQ=4k8f҃eҍ^&32U ޴IIƨt~RixQ$s$x%ş$@^p y ׃'QCAe*$χ ٖօc7m4;R 햟Y^,~cRIjo3׾"tDNdh}_Xc@ i_v!qf7<1 |ſ$P`٘Y'T pa%Ew"'Wi[}K7*2m)|qS}A6 0ƵՁ/( Mdurh$L]ۍ=k'sa N ;DZytbvbjO)5GZ$v;A>jW/E+f"h+qYQ {M}I uL "j"V[((JaxTe+.2HCxj8Tc89bIzl {͗M$1|~Xkhd_rV׿A/k֦dž`->j@gG9~Q,/MZB-ܴq }5(VR7pHYuRV2@Y+\4"ȮwR{vLGW˂'a$^i8B<1T!7(0mIs4 Y#3|T8 Hz$C}dSt/;貤c?jwjLV q )yxt_:f @+sMyds`L&G<$-D 0`>^rƬj^bƳ<Ȱ0nYnk-\%~u &AL7c<}a#ʉSC8qG+AW/s=+.3e. X'k:Nnyzxi4.:RPcoq['= x|DFnX'Q'?NU[q⫐fn:) QOT&tâݘA݇c< =Fԝ@ H;R9)%O em<3p Q\iVdpby@OIbG:k2vcĴ2Fxۓ4Aᄕ2|E32a@&!r]hXε^%8sB>0S(VV(SaOgmjtO9c})5 ݲ %pxIkHMc\ n7g[/v?X_1NI$M>I:>2`iVVF^Dr3 sH.2}^=i8;hc$Rz kcb W0eAw9z3Yrbd{Yt"l Ylˇj-l6豙2/ &*Kd]}F&W4s} |cwcdې]'Gߏ` +Wi?RF4ٵԅ jbޠUo ŏ}z G1}GDTHfÔ`Mᥜl5j#(l1?+Z"ݷSL.֜41 ׉s'EC.E.\D XPhbi<"'v+ nuQaF95ux]!q+W1"c-Cԗ77:7o{lc„'#JK*G+J0I9(:~#eTݥU l=`%v W19wV7F^V M%fcPI5>S/w.B!j|m,u4[f]L9 ->Jzg TPrz)Csؽ$ Xޮ)+IɫTF𙄴}?Y(`e5 ] e2?‹ *yg]$ޭ,_wQ+#8#s]08r4av~uw|9^nđCv urbr0D$]2uf ʆ[=Khy{ڹQ,k'ZV !M!Ob!(KBb'imjɰ߬/s$2f/^>3t |ay g?k,ccǺ'|I\-k k7A*$q4wɲRY2O'abңvuCuTcagkƽ* |]oyI (O|fRu7pGVqr_zb0]Zpzɦk־nV$/ޱ*wwM^\DWl|P7*:L١+n6fX;9'kT$` ~̴(#lз. ݥOV{,P킱_ DzWm@=&@KȔDv.vytA6m: `q}U+("Ftc_F7E1&iaM 1UKu߉2BTOбGxib k D69Z)M@\j:u3Zn.5Zp&_1x4N4W2fc8D;BR:A^e !XF"TțVcMt]7{^蔩Z64]e˦- 4r<7sͥ(1d} l!!Bu`轼M4˴a5ooM z(0Q@$dd %+S6HpqŖGw>U :Pfՠ>O?n{T_Oxٶk- hTZKo$fr'[DhyzLGVwnk]`otE{kKRcyz_|+PZj09 :X4ꩼTcI"q>,s5O.J^o/v F%̖F Y a#[ITH)1^oSɖXo6a!_좡=%eKL hke5bag'< ڒ;Q LR=u#Pe;NxՒ.j-:iKd̡ѕp'Zʵb82n< ώ$;f>23Px@xBBou^`j+-G+(*cm_k χ aU*7QV'ZgZؾARToMǎs:uij;C$:;9t$ Ƣ^Δm}XTꀪiĽe;<[>',ܛn'ZSmTsKbj?A, ַ~Z,D<=B;,oG~dwy# LQT1C*j"#8$؄e*cCy$ۼ2,!`2y.(Od:safTS0![ԕkuEh铲 FeKe(F{!tb#ged`0"ŕ )1:[I0ۍ|u5C|K#p!rc 6lʹ`r0J4j^4Eo[ݹZXڲ\lR)x7Q^zZ1/G^2;s22~-Ɩ]jpTm^&]sY6Ajc˩B ܤ,dݵe'bo`7%eI3cHL0vHFG}Md257-T蹠"MnĮgw='Y$^q}vF~l`9S;O9P #gOTkA}q9 +kzͫW㭨>a N8=UK%K-N:přirue0TmdlA-|y&XwCHއ&9ɁIɑ~{eMD#%;:yܐ Wa0TBcO$I {Pk#Ԡ5"M *4iFO\5 OoGnCn2FB?2E<0'n}^~@P6 CծD1_@">{PLWAoG\ed j؈Bʲfq TC&Eh*\m}1Wbgu~L3.1kǩz=0ic| TH[o_WJmX 3(~*42 CbR40AxvyƘ_Y*q:0+~n.b&j_ &n^Hl3ʛ␅0(f#m>Gv^]nAR=Jry<#<:-¸s)'3B'xfYr7#Gފ&b8S(=+۬ɷb_Ј9e%.2EV{~sYWtGUo8=Ώb9'YV&:H6)Ws%r%Kf reZY(\1'\Pc݀Њe&T){S3R87kS};Z"CB.K{8Js_fq8)i]}L jE$wj&XIrHW:.Deg1UBo_}&˰..+0΢DM+SH &1?YAFcJM|ϾNEfAsP\L|79ʱ)% or7M:\ϰT7*ӴLB}P :F} qo2@ӗ[mm*3ۍ;]^Q)xn6lmULV%,hlsK۲ 0Enzt&!fƌ(x@QH)侀h%C=%lj 5x#9`d,yfh -#)@ֺz @3g1uCV, KyvT537me9 NIDy+vI0B/B+< X25 Oޡiah剑/R[Yi\.Ck|qTD2႟`y#,B φN>4ڇ)AS<.]'&^Jί"t(v)SGfdL^L& ;@r>Iy}eH>pB6Ԍ Dͻb2!xP{̬w FGvl3[Z/{z91g<`W{Ѽkڪ"FEfL?i w<c_)VB;*_|j=+}/d!PPz)Z9ֆn',Y=C<Ч$G|t"{n$y-C7eKap>y3v"(e l*R*)X)j u6Ri{ŧݾT4G$\6{mPXꎤ*~o,([_0jrZ(t,uLxL~!O| <dwrl!Lf1;((2Y[61I(N+okpWyy$˻\fR&9g)IBV9/! O^}xeeHaAh4IZQ LO|[M$$WCKw6 Mކ ?:{5E^u[[a $^X[Bn'លZ޴#̹sew a'%`pV"U|-PFh5~AqR%`'8D `kdpmh':lfTg&&FIkJ >tkPs0f;!/l)i'ma b۽o܌=˥wp ѬD'K~.ZA2k80.v8S3:@-._`viY,gq?qfnK )M3s$_\LLxeM  cy2;!t3W'o+=9*yT",iE\cO\ h7]|/..hPC;b^h 9}Aaك~M_{q UNt)BI[4)]7|px̾hi~7bkW<78|r 8'BYGL f+YW(=g/go:L/L+@eQSo xZ0׺wFlI Ɏ%]# 0_M~sau:ʂOKR kQ"3EBՁ:sу"W_Mjz 7,?t /; k7_.+> pGs' ;P߄ ]-y xA ynMS%@I-"Ӵ;tlu(n a0nYpҤuӴ3I9E0RHF\Ay.L9֜9|}ȞtS`HeR4 j[D2]xW(8p{>Ӌ\; RNN š8 F[xxCG mvgO%r5l.,k(1IAet0@wQ (q=?x=%Wu}!&:oW"О1gcvi҅ tmSK0}}fZ.O HB&Ô(,pwƄ8G@(фgԽh> )qQ̕֍(_puT/!X2j`\ e08499"rJXj^}3Tg:z%գõup" 2@1Nzf:HYUao*[;#Lpq;nPaF2J+f`ERaė~i<w$.&Q}]+Մ}~55&,ౚV\|^mLWqy<-K͂D/L^0'PΥUq>:љ%„٠ràui≋@NCxO ]WYXǽu!l X<01i_>}e)+0Zɚ]Vg/nxpn~QƱ7DBG^_ޠVdxF\i'JJBb3.CU5qP;`ɝ 4̅)m*xyuh R,Q(+_P JwzhTA8#D*D7 ˰ Zd}-2Iޤː0|o`k|  {?n`5詄JlR,ZݕߠtD[?xmć'̙ɤc5 R-Xz:[VmŋIՓdRe;H$/RY??o[IR(⇫ch~g< AD`-?5 tI`+Ss{JsKrCIvNzN_OLPg>T}WsuZ g,]KN|f6R,{ltxa23đxX#mB8,aGRW⪷*p*4lrX;,)*P;7FM)5|[ Pz3 :# tKXA۱3GvO#y&Co].@X<&1J5Ar]BKe/Cm\#橔kNNgAaG= C:͌u/Yx!ek#&ܟ:\Hl-w:.[4QW,R:=8-HwkA lyUgfHvJsbQ%M{>COHϻ}0ԒĴg rr fJjTřK?.Uٟct,ni=؛LKs崓cf&H}#}U|aG( !Kd݆ ȁ>'D`g1:~N1kiqT%,m>W0̊3#)z=84׆u8sւfïO[4=~MFKD>ʥx!q}nj &?rd~jdQ%Һ9ϕw֮xğ@,kt=Va eT bm]neUeL\L/Ǻ 7ް]^3/&:X]j^ Xy52RF_\1tpgѧFx 5a;y(2[2/{S-|(u׿6}LEF0y襍F2"~CtCf`hBռz#|^)bۡΖGgig@:sN{.Tw#i%rGof uuXR)}(̤Oh1("Xv4Ncϛsݡs@Fj$~<+y|X 1§-d`WUe*n#%&߫zAb^sX94,Nl;*[s'eE2u&>&6A@*8NUU² r:BEOk0 P E=/LqSn:O7{NKޏõ`/j9bI.jG2n]^׷Tn} |?J \|s 6`(7:Yɪן8/75#Ԫ9ʑXxA1k+9;G2=mmv6@*/}1R}k?ݲnꚉm0TM GӻxCL6Vq 6Jv.Z[b 5=V3q2-X-Qp!3|a)M#WuHO@-3V邞1$ʮ~fL)CRc08 Muxh-TGtiNXb0?4E"pHX TYڅy]r=7h boUtߍ `~A%.̤N@4mw"ejE ě;$d]vʴ@z`Eg)N_g6: Y|`yY,қ\JļXxx*F˥$d8%GdcY6B"TWSoD3 md67BፌE-fXO' r_+v126$b&wɏ䵉|!r-Gb+O_y[Idl0<&/l- zGzNֆ @^t1A j;b?Jt)d[gٲf좌)f Bu`,ϩg'yUrB47C~l&[0nF ͋rs:F*F+\Q1{.56B3y2kPvc#}6#Hѓe-|Q bON!Y'̺ MEdN-]NNxI>媇=U#$%y (2pHȸ.+5lp N?e^U3D @*j_ұg*:i 4apȥ#?Z~05TUr,s ,,?'Xo'tNgmؾd4啉X?_^}( Z؅2ʡ{ZO\YׁX+a&UIqYmst(JШ ]4Jɟ´?A-ZC?mnn<嵥M.Ez|SXZ.:Wg7!!Ejo1S[2ogg7d+qGPCk|h-CE v_q5m,vKyScHYNwap0)0;tk ˑGUT 'n6gnAb2Ѫ!zn@[?"5&"*VR*;흝6 XlMR/6%w f/-2'0tp' jEP\Az4QKCam+$|+}Fw_*TsLv=w56T]Vw+"Td$~o}&eU ;NC:HAd38_$D-gs02Cmty^>.I2^,}yGc/ vRՌ`S}Mmw`Zغ0峞wΨKpڙdl;`,3׷&k{uY3] [(02?,B;ldZʮHoRe`駯Nn#1'uf0XP}~ = 4~[gQ9ۖv!b8Oz&%B1*R \>ɱUHF ɮnSPMt{mI3AaŨM-̩r/c˴*GS^|Ҍ\Xs5Xh0H*Tzש#t=h !ͭR7yG~&3D{lyJHHKFl{\,}s[h [n:*VF$= 9P};Y x W*oO3j3MiqkLPA|%3^j$0vYH B]E2D:6^a76W)Rht54G5*rSJ :^-벚ƒmgl]_A$oUc.Ei59h(q#R|(oJTl@ !>շ/6w[i"Ww&#Lq+[󖇊6{7Mb&r4p6b?X ., eSh~\3;EYv؋'XY%$o2)o~ZwsXUB>h4G@ixX ξ͡$ yrz_hܗrerI2EGoM2`{UraXڤʶkqS݇mjgl@??sap={@g`s0IsI$xg5+3XB8,";6hEUvQWyό:X_aWT )E >Џa3>Di`}kN4UКA>lމ֧`,lYUoeyX1+(yp/6|%gIQdT(lVZ$@ضV7P;pGŃM %ъdA-5&>n Ep>uw/*D%mF~goMIS'hgTjCBaw<# XF;'?3捾Z،SYʌ#mb?t|٬:BMQx cAr.?8# A \Kjb%ugZ+dĀZ~!`ntPY[JVa&dd&yVVZyvbZpGʠ$Eef w|ȷ5?] | :WDm{L鰆n֢W,)Q(fDBAaB,PJ>nAEx(B!lHD,zKS0 ۏ?|zAA&_E]v-IPz."& U;EVt20yF^>*^2T_iSJH6r1&I5ȨR{`RC;/γ5WBm#!k`~; ]Qүd)@ RPg@l,q2>fwskMIVvѩCy PωJ7*=iBkʤec9}(xe[ =IJ3wv#{= k?PrJiTP9!@u1u0amARY3+ƒ9 KHwmn5EVܓ#&k1E6){U=#C3KqඈսH1C!!!'WZ_w\BxU5"hrŃx3r9~I$ZU/jOc\< ' l8Da"476;\ݽ:Ku # y /( ij&`tҿAއ9/ךǸ^.3=(\M`()clnt^xMØBiZ$:nz֚f[랦!,Lf-"#"Lo+BO03` nӟSo/ I0~x̵rc0_VYP fr?W~ 7#9-ݴ& kEk ӥS C;[rlNXX f}C<=ESCHFɖ:HeWJ@C!)Ac%FK5'kNhIh'ް&9*Xxf8ϊԌan mFGChɯ&z{sIIi8d}G遈mHjOӵ^fy'<|yᏠ|(;hy3T'ǩnZ"Em!Ֆ<#}䪹YʍbIPIX.8Sym]*_,OO?i:vf;-њ!{ip Es+'#Xy]}1||WɆ5vPFYLPbퟢNX~2?L^V,}lf #䅘/r%lS+M=;{/C%kc]ˀnK\. "V~p?6b VKo#&jL@rk&Ez]E[\D25Qg {Q]8Tf@p%~\s$!82]R&"/A}1LN.τQeŽ43Qf6$y]yI69,*gICmn]WQT{7k:5xe-Kx9P:+6<;))Cv2(n{}eyO#Z7"o.h'궗^mp,þ_0.&/ŜJ̩RX6YET\?L/u zjʶ &&ޫg LD/ZqyArBD5ZbJjGùxI v?bk+3&+S}Wtn4mH*ZR :ݒ #Q>v3:'I[G@gz-(\h3skb_7vphXV4"{GD38lCUg؉{Ė zaWwHu:(4ג0ʢoe_.hS(Lda")l^ OF(S6(rrր~v'vP#$1B)#V0fN1M;}M=63 ,壪c(Z X8x2 ՐǬF>ߕf,vGhvzW5 뒦S_'ToR=܍;qA\P<]a7.J*.DPš PUڍckvZ%mDU\^PxO6g!#nQq %,hl < Dz%~#73w v% hY'#R|ˆϤt'~Ş& dgL m1g@ 9tovU{ͫ~ eu빁A҅V%bzkvDk=#%ͤpP9i6dB( h?7-"9(I}@pdk Q!:` qtb"P Ot N(s\0u .lmy.B:d)TR!3Fڗ{}{\1 =!:(A&$ [j`)PK2FtuR/Mi3Y-q\q#4"J[;m\Ĥ?rjr{kRy4X?Ps %]. sU%mZ:@Bat_RE{ħ˭bfV`CN^IHXK"ijiuB-ɉJTu^ DO> "WdCCvaž-˫Y:+l$TJ)+۟*5/.h=F0JYF? -,̃(=  A]! )'6bq j|B&]g?5C旖 wMJ}cy%<16W) xΒC\i~|*tR 3e6N ~BqR/$'-n䒓^et:~uH-肢:fNJ!U;`I/I0oj] 4[%gbyl1D3PśYd_\mZjj @zY"c(MNO+)TuvV 'H>iP Y.6l DLL#mM¢$CFPH *NoZ$sLd @@jSX5IX@PxAh"l<(B[VºFxz/l8ƠYϊ3$*vz#ɦjؒPۛ2<𛇴jq4HL7~yƾ7Coޕ_[L2G_I>bFnD~ɟP;{C!UUFL8٨pJB2JqJ >о%ǝZeǗxMՍfEuux|d< t1rf^:W b#`5(TZ/d֦G@X] O|qc*ɣ_^doҥLN Y,ߊkQȭI_Xje"ơW4i] Nk M֎CzSmuΗO2ݔgjD+O #| l~+.|KqGju!!\ҋncw`} ^v_/z<zyU .K >ː廑+R}b wZ%S1)h* 9FG.EU,pY($?!C#]!ѢEI$X5&_pvV$ګ~"f;AlMǁ'= ls|2yPX!gAږgt5RVY=vmW9ڒyU3'h%V=>jAA``?ǭy:*zimے͚c>_1?^0úSN1]9؎8==4b-ӸԬce.3mIL^! y"q$v6mCz{y"o~Z:wEI7R/t{<]֖3~xB') #I U0K;o+6Haߍ;õ瑦Q'poiŰ7q6c7pJ3yY>C_n}MH=ʣggyKy9 :\-rGkKX's>UK<(u[m+ P:b) w6L3i)WC" 7|E+"۽]doMo0_=3i?x{337,qf$$oQ(H[yy$O(lG%&3KqAĎ8GM=Qإp!9]M?{R'UNɂ˟̑YLcy,_Y%K\V$ zAX#;'䗛kɬW3ɳ%˄ mem#%.*AL7Yr Ɣ`Te$*O>"% @P&<.w4c[[ Pu;?>QUo^ _3[ؾ]BYz_"T7UV;>kA@Cz&;-~N,. u#2jj'W#bNJ%II]fp6*s͚aюNe ~+/-k)(&&``HhyB dٲ7vZ{*<\h$0< N`ٜ|"=9S)k}= ixKu+A"#!vî\gR א_둒Cyy-~Σ,2INtZ_@z܀~x<%e7<UMp׊  -cR]4PyP̑cLaC1w]pXz=a=\Di%CryKwF=2*_W*%3=Fjb}g9DjàVNc}%Qm<)«ŤBZ }gxE/Pd8 2^:ui/Zڠpb vi0u.˴^*u2Ts< 9@7,+*UD,LOc։s]B$2R&__FKOLIĎ/K6!L`OeTT_7k`,MӹmCzLc8[cH6oEÈo]5ۄ{_\N :n-øO"O2N]c)0uw-.i'NX$$vo1TkGZ } b5;ɐ!=R}y77s O++$a γܼ|w3%@F+}lq)>#eLEn7ĩ77ɚZNkT|P s=caĒ J?cMiWr<M`7s$!x^}xM2lRq\ǚ~_DeF7) WC{θ܆(v#Ұo"!AD6iw_}qs״$( rqI B*IhKAt8Жɼi߶DuW>>\k'gL_T@|2dIP"CS톹7zEV(MjB/o+/o 7XqfNl}\n#256,)V>#+f1nj>FeƜXUTTMx tWaoԮ7=Lp>{+$WVH|)E߃7Sxކy]? AϽ $9𓸆-;=茝8Xc'kD^W`8p(?>EsKEHgkHCM,v\k<Wv͑ݒPx#eL0N$6. \>4Ar (xT8.5 m+ s÷! 60&휠j{=l){TY¢>T;bmtχXWEiB] tn =$NVAe~gPDk:bEahPV=Y+T&jj8 ^f53ֻ8_lj#u1KY1H-MB[bU gCKQF̌jaNltv; &  =7:(KObHϹ=LM8M:1axUvY!\r@"N`C|砹6-,vY1<Խ)X4Iy Q4f4ɳv[+h .foG*/I%%V`8bEp|2BG)5V]r05k=ޖ)> #mPS0Atf R?=Ȧ (&&FW%ۮHm4}1z?G"h0?^fՀ爒bY~iT8jݺAU;?մvy!{+&*u̜?lc6@P=d0i+~ꕒ&.ovh>܇LR< Dxb)ǛaW UG'6AZY&8J*tF%0aC_ gQp$: @ف(x%` $_iTևɲ+ B8Wv{}gl^/ţr6=@+l$8%AFV;\ƒ]0džNKj |3g*tبZD{wF `e ݒVgⷼ "N0_$װݷٝ-㼘I=rlb!i<k;L^.*e@44MXҦ*Yjq+{"%;#d-Ēm,Om;2UEbuu 57žrU5u 09`×/6R@WeL8"1,U֐}@`׵-?Fv=g}5;O&f˹;mR2}4$%B^m`S%Bō "u巔3%'@*fH81(W˨b ֭^zuF"%K@c/UO6Szz[6dY+wЙ?3 HUD:IS rX~R&fU; y KO{-R,vkw4A v'&8M :SH.ӆbԷ^j 浺c4-M gGLK㲉jZ9*'*ń!|L%"P  C\1(}^~:|7?VB$enl")  bS%H^Y]Y ^,?=ֽ=Tc i첻m55tQF>q.׆B%A8F F&.7x~Xb] .A~6L`;^49Xپj#IiF [13DsxUzc3-:EGM ]GŨLtv#"񾙍Zj6zL!+_O#y4:>[Ք!iX,o=S6jL2C,]E 1hC!F ./}@_㸘HZ|XwZRyl)x/ԁ8ɻ`:E 5y^JLs6pgW ?1i\j^SM8)Ѭ/#|$ܪytYNw^*Ё&ӣ+̈́"f (Z\G; ]g/{-(8ʰ~kUobb/: E oadXl?P^ E]r5PkOՃʄ0:](h!_K N y`Ttvfg]ICG@_yD)A }C}540]r־Ɉ݂1S}uwuYGv#SwR"si[`nAT@KgN$o34 D2K59mfUhHmk~OeX-qu, X˔>:HЂB5TM.dӊTVӞ48&'p;<ݱW[raO1W8OWHV`m.&' CxDk'~9d{Thr7߉3g+Wr[U'du-[6߄$C̡ٻ8H?>"sU{C-|׼t3߽8[ /pSN&LGR.fozܗUKCz^|R$٦n+.T#yFߨza`!&>3&n02؅kexD\ApO7$C*"W$^=WB3`>v_|d?*uNӣY]k*󆯭'Y S.:21r+ &qU| W“e e|YOS$pz[R_k*Դ%BJ`T^Wɖ;nXUV۷2I %|ޓ'BҒmضG!+#A/ ?u3?m 5|g2`Eml/-Րc…Ξyd[x5]i/0v9Mv_o +x?6# !; w ш{\quej?qs46_ ̙%| <I[VB;ZY0_`ވB߮^L8g:%<`FrM:0A| P*@F$h 4tŅ|oY;gŊa,ͽPxOԪUiya9XDD&yQQB㔳fkTۈW;[u[->Y w]#Ob@:,֙~q8:Ǻ؇;D|$+/etg8 oA? ǀTy".a V#POSB 0Zz8}2vddXK85$"[\<l$JMYSMW?QD(k釞u#2X׵zl5 J̌տk@DHx=.)X6(2-c:8)4݂5f7X.u҈(&)G8A"86ݙtBnMcc.l^tHDi#M8X_Zo:Qeܛg%]үE=A>("?fR]nLO:n_D84(zɠڲFP VOp,w{WRMuS=)I\P^[a5,:a9C#lGƮ17W74sљ'`)VDL~n@u7bn]+P.tݍ룦i8|Co,ɼXTd]>j@!3ߣ]8^ʥaTR@G<UV&? nz)h"/]3E<2h*Z8-Z6 ,MD,:Pcy8YyCڸ?#>j>|ťˬHha7HSTͳ6:0~rTqk<̜ hN)KF-@/ʹ ddY1c0/ѠY7όPuԙվK~<Y5vx 3tBeXq؀A'0M*M$,>cEhgt eBd@.3Kɤ.5~M7gVz *(Q@}/N?Q ٘bSBI4z~acaq>z4z]E&ƾfbuj}D6g!yĕFq :뎭WX@n B@x~$h\-d®WeY$ds{F0PPm)+2ECu\3eB|O fXhK6yyLJ4m9[guG~ Xjjfmns뗪ap橾1MS=S^2gϲ^qRš#KؙZPY@L}l;s_*~LQ-'QI>^.iLLɄ%n$:=2 RA#XN\ gÇL\勎azGPUHފϚ'9u|)˺k*̀&CBuٙ Tֿu]&L^)'kc'|,\/g䟓P7mUn g~Q+>mލFf\lpXy"kDZ#yǞÏL,%uWD2n9hA$*_Wo%J""0?}Y` $\"#bU 'N,i7{y@PlukYwl b/)ϊiq8,x̫4w"4zo*U+#&A_sZMF}qp_T5$>/`KX愆Us8+ Av&jdfu^ʊM=% eU{63_M{F=ݎVғuЋ+ L.80DV[tOccنI(-Kw!c`GREl"!@/H2޷ F(xCFm[xedanS^ڴ}I8ﭦ.w? 8^̱}l bj3 j/ă2wo:ǿ2a&*OJƌO6f#m(ݐ|<:>3yDOE!bFHO20-,6>4Guċs뭄}(9eP+氋#:GOdgbg5IX-@(hSS )+ ]FDq'e_NZ7{×{{ )zvbR|MȿӜ?ȎyU`LVݷ^:p'6\HNzpӈÇmMO]ڢ{$v-uq l#8,LNپX %hW&}V+\zMx8Ԩ>i="/[ hxH]xQ -^XPC( xm! B1xؽ8SF/ś0\20Ύq0\]I*kbl9_1j{ T.4Ans5:įWOK_듬ǥt{¢01~ZA4B%y@u>j8"W9:eɦ,NBVuX Ƶ_JѤ%@ d7.<+&gOK"nSxEl׷NМ`u4][j-y| 7  ^ȘKp)@-O(LȘN+s TgXK&TM_ԣ*O|40 VRӓC5OW"hs ;EW'@6aJP k5~?'|\R3)8I KԑvgMh&*>.16M*zN; aAD2Wm~+Wh-S>}Vdc%e}^^72#g/Ju3pd*Z;F\[o㹉]S%Kh6b: ]qGʭͷҿX+SɚKUF(^.w8A%P|AKC>G&#EQXՏ^)eztR7N+7i ĔK.e٧!HDfBaSCiٲJ%^pBDKE}Y/9eUf{3JO>o[ 2ɣ  mad̛-Y}rk:VJ hЍㅚ%#`^Rcw1WIKR[)S{o"S^0@YyzDYezh\Ցw )M Qw݋D=A@oI]]8]H_ӆ[Uj ³K"kmRR ,EԐ`: ? 2W"WPǡ\x1Ω7qwԎThЩNhXA\=V_AGi]BS1T%91LN? $ !*(t5PT.ȵY7cC ~ 7 Ki_,cao+nk>ȒTv'y_"p\6F'#z74֤ ~ISQA趧IP3=3#R\V̶ݞ/(*KؒbV:p[L<A #TXzzUtA&tJ*S^iS>u}re82O)RMx{w+85[Ty{ dip+">fP.KoIx"^)nb/v)#? FQc/Q(㗍7A-<~٘jn>;5Ts39F66Cсm!߅%["ɺr5YA7Ti8g3 _ Q/|PXHVeH~܁##?c[L?M)Rw݉aaX:h؁{#m}:v[~ e[rqKTAP|Z!H`y ʧe<n_ $9g6VL45aM%W栠j#qǽBD=Lf!Z;7`Ab &q#~ Z3hB%n^kCFdvwU㲸a*IF:Nt ƛ=@OzExZ[`ngSxB[9cp׍#|j_(C'̃B57.ݸ];gKz8,[%33 p܆Q,}e;|6ԔoӌnzZv)#vOnGK;AZeg0|sė'n\lwB˼\vliרّFC+otR{+R<77ml^AﶲmU!LKtxKK=Rr8|a)N;{Mc=lIOǏم\_t W95XwEbMQDѳ(w|9b:ChT]/:QMG"]m0Qvhiat141(e>jx^"R݂ꭔtv+EtOߍo qv`Cq0SGĉG_3ox z}"uGY{I>;Ga"el=Z)mz/dt#͵P`c$3h+?ݪV2P W>AB=\֩ ` ˓Ǿn 3Az /C2 Xl& c΍];Vh|xyC jL"d?'Nu=ŢYbh˫콡鍸/C0Jhe)Ulc=|r8dF`\{48CYBy"kH:јW"όY/u$2D2 F!.H +g=N<69pA&tz 1TkkA+-ƸI<ߚ;]>wL}KvޔX$Ͽ%kW+®JEt9jȂ{,|7k a|$ߧh~yV90J/RO*Jh 3)RuXhv]|p )3& . Y{:p<AZsƊ q%J~RSq3~+4@Nk)7͚g$vAvl5wD\B0=/R P>9iūT<> CJƂc4X,p{֙9;P-cǢ&jQ\gN'}\ϼYwQj?X@1W. dzӅҰRn w_*yc>nU-o0yԵsTOP [wO12@抭>3 d  …=+daoE6K?DU5'1Or@gJ쒛m`қ66}࣠&?CTU2iu $6AM<\1prW.@c\Iz753A>2gP*`ꈊmO`JAN,ז[l[1 v>y i)ryArW9N#rg{[J ^2٥MOqsYk)FJ ?vȺG{K]l$Pr,p^ŝ<1Ƚ]?jhjRGKdOIK.s)QI-^ziJXabUwv1꾹 Ru`3/n\a]*7zZWDJWs|r6qk$^䢟xev5o-<~(Y 4:ԑ1}8ҁװ:y i#uL룝.O#ZMl{ݻ}xb_PuO iWǻd(xmDs978^ sKn#?تy M ;4VahxtEcA,Uf % ܼ7:i(?v/Yp80ֆJ  ilrRv 8.|nKd<&6KI@L!^iqyNGAv`F*?`0魜ƳnƖRf~bյ!zk}^<Ƞwydav+0UPrlَ7pY7D"+Dp]}f>;w]ٻ3^r^:ɳ׃xٝ&!Ki":~ 80q|Lڶ G0u!Le0aӞ:t1YtwAt1 &c=.`ߣ%HqE,>t92^(}NC3L*u[f\uxC?ٿkk"KC2ĕUͮfz V(~>X<$=xQh?~K[m㻠|6%^rK%PMus6*[xK_Q:2+!XY,I',<,և;JصQ4S!<)Xw#h63=*~ O]> =p= 7vPK_.&:p!%~ջ̬A 6҆PI c a?3w3F 㢇Bчu8BG% nhnLvN|t 3T -iނ( Yy)EjqRbm|'>$ i]M[~ #2j MuA71Q`4*k߉o[[^\|ݸ3 рoqsjEC7A)?`-' $Skp[{gSu7T"W=~(W5$hG;3d"`N,T VW_*;# _h撲ΗGb_#L ^-PH?3φmR*='yB@N:)?vTpaה&Bn#HE V #Fw7ɾc=q10"\{]GُQz5LZ"@mw͟"rSAOdQ87"0 θ/uAtTPoam ({o}ZOmwZ{7WjEh!6! p%ǾhQ* ?!\'tӬS[.BUy9)RDB3t$b\4AhdM:>׳ ZV"Q:% 53Fq,8fF01m:\&f=A=#U&<4lX؟l0'6(urVm(XT{ -K&NĹe@H@XV[5%  &دD5Y͛4HyN@>fwoY_zWviH9ueGXh%~̆B'yfBLu(?S_\SHؐ1%`l}*\g;ܡEg%t{SC@Ȁ\Ń)k{ŀRx 4W2A>&؆2R`+ ;n$k8ZN3|ߛ57d!h&QذO 0o8Gn#_3~:4d匀Ry$uw4ZdBF ~l"tq}$ʸ}tܣ:7x pJK0Z^lVjd53\^=r-e9-}'FaWT 8bքtB+ʓhSpmU8 bd@9F0ۿZ;/<ÐD!8{,S0Ub|^ϗN r`[Q"A;2ٹ8Kwcl뻂C7=߅?}78_M^G;6PGF)΋ n!1\uAQKX}:+-j{x_5 "E0@少NYz7tNpO7Bs q#ۦQ=8` Ajr`θo$ O+T'!N/a@n21@W~jҚ),VK)uqCJ_g W8 ,0RZo!EVY߱vi,H )zB_cKIlOa)0ZV㏪]K:Lx/SEޙ5Y毄q ۠R~cl3mT1AHh=53?z F֓wUr=%嘜P't]Ό3x$M6PR-=nBeda_!yn d?$4NC`mw^[5B5&8XE[G_y؁0-++0 Rn?,of|`%(c)d+ZD˂JStWbQ}7lCa›gh1hZ5<3/@l\tm(*μAB+:Np,Wc%MYt/l IܾrTAsBsV^K);vDO^GJ._c+r0ɝa}=f-c $_V1wꍳbeP*uĞ{y^\j5ZֽӪU`u+73VOUtcFN:3'\pss-BPŽgeyFc8kTjfVrxb`vڕO0&f2ar`PoخT"Z}PB WZ2`{zH7<2Lӿ܇ɨjlZ۩ H,ߴ'[GM"癌5EʂTH5RJ-[]N93R -z|tj%&cNO~Hb%;j5a_xܭ~Ԝ'8tC%LYyY=f5+δVd'5Jeoe3kO2%LV7l˕i$2!Q)TIhOeLY!M۽ uX׾zڥI3{"ιN1|%MoW "Mpk?GrKfuڟbH+j l~K+^#itJ0!,LEu  ; :F/Q="`*J:zF*GESy!zk:|Ss*`ǎ&9 Gult& -n jH2@!\9) N80b`N8=M,HdfneQFSi`^`"-A.WAZ:Zì00ly} ^/4i >+ /ҧ~+V܈ř .':O8rF+xI7a|}D3okQE["4Sd3Oh<$J]hyCD kX^[Cj234[?i):-u,e.T:?6h5J"O&q"T.y׶_3j;S&5rMP5 w.{>՞;?Gnp #+ߕk鲸=WJv0bj aź\aZ+Wlu`nvƻƔ.T 3E$Q$Iu&u+H<2Og\7G]݀,l _\ClɈRLg$$UL{7(vTAϿiL J$wAC̏$jGVgJSI65 F՜y$[ߺAS:3z'PE/f+r(}jHHgIxB86QL*nO;h]mrXX;%qGzi<Ÿȃ7s UN2dY~&ZP sx'@WW0Hd-/jǽ%;ID_2^&?'.AX.`tGp>$:5MZ4ɣI5ٙV6~#Aa0%%PX!)WߘErPʬoˏm<$pŋj+n!\ޮ9άܾy,*,gg>!PW DIZ,?/Ii~r#9+k sߜe!a#vfh 5j|MCs|pPL3m"\Zp˂sY@E5mf`/N}|OZ>қylӼ:BI m|һi6¥|Ԯdd$dW*p,VG`F,[)UL YkRV dv]"m*`G%r N{+ߴNL" 9qKlR{2@y= eфdFrVM|nί.E$ &%G4X\?k@S37>_A6ɩ=C.sZ*L5g_^}IuE{ !_^ L9U{qWi )/ӌU!}) 2tZ{f~ӭM˗N(zRb Aw^pi]{mb)Q~:ޖ J7;esr[*g~p(rl!:TCyOA>0æ /JM'Z|VߦjXtBGjb5TZ|&0hy-0;ŰPGLMH3;UCv|qp#N#gP[4M)*CI$%ffq086QIhûL G$\tToSm$%̽}x Am.${z ;2lH2__ԛC45{8;h`'V攬#ulˇ~FPn^ lwl5<7Au"mr$PqG)j'Sy},@/\&~@ ~LϧK2xpOT.dmaԀ$RwH iC 4q?z`\]1Kp5KM-ԡ& "&9H,o5T |0Ϡ8 آfme2KjFa5E.ojŕn:0TBR/gihxqY';QR)Sݴd:Cq FQ)9TPt'7l\?Bt?~ߏDl β0Sb|1+$UsHS#u: ulv!膰}j|C}[.) @ϣp-d$T ȶڊXK 2!ɕf&N2x D:e^A ?8Z,o_o)l┵SUacȯsqvig[PtUwq UxJ7uh>t9+fB!O5SWv+s6SNY4# .*^< 0?RU+J̨%!by;BoD5&U 'Z# (PHE\55YzK{j {衕&1Vh7%NcR 2A)nWyMǞ_ogzǪ՛"`m ȉ ˘ =f k,f2韸x Ȏ}ƞ"=GLd`6Ԫs݁*1eV+zP.{^נ@-uLRL2_!@7~ap '`m`&^S35TmK5Xc| nxx2Eol)@P ~- _{K:Y'fM)}?2ˏls%+Q?~9PiA: DXUw.TT]'UYV+{&Nm$O'1HH;-ӍŚo~> ]V˰OA2zwל򔬼qA* S<'b\66\-ʽrݭX(8<+l}I'1+ 55Ul!+ڛ% y֝~ {'J1'ɦ7bb8)yc9k %#$~_ !W9˂v5`^<=Q N_Zd'GP+\mlN傚¶*;k@v46n'zik$.EZ%}:"UtvzPI l j8W2x(G6dVHF )BZ =&',ϻ0xp׬Ьq R9$Kdv4ja'[١ASaWbgeyoL]`r76OޠDΰ7Ҷ7Qxls5s_KK|ͭ9 %Ye7X[%gŀ0Hͭ_Cvݜ29 o4W y H?&tSCqnlRu~`3rꄂpa< FZUM!8ZoUlE+T2Ԃ^7F7q&{[q$ <@*^4'W]9?cvYϲC#4ǵPHAi8 5`ZHmj[_m *ڋd^QUE\fBhީWU:-2gXsPcLa;. oH̙B4[[B0] !PQM@(G<( :h?kچ nI3r^_RdWޟiq5pחuSpwÚg<F!, x1Aԯл~ZF؃ Й1;[@3m2{ɒTUNZ1G2SoDa(+v(#kB ǹI4Oތ%puR 0`JO36vd~!,rQnXioƃ<3dkIP uXIw6f9;v>=L{zp;ykn k Z xz꒺#^Z^-VY [*ŝ`CyCˈFg3Xz`zM BK؟l1_>ƠuwDx FwzvJ91)O.otO7%sZQ e8qr̺TS1f mYsL\gW$V6KԠ3nJ0HT]B^D}%A˨ʱ+Z?2hjnI57d0Yτ@œNsɚ|QgG_JTZ&aGhxCoߢ[ҡ!1q5%zέ{#*WGLL y`2/_{^|K0yDcvq0u }g8_;èF .y7Z.`gvw]%L-uܾ]Os)\Qޣ]GX.&_\ȃ@SGӘp c w=?ԑ 9j#tX_T6Uq # AxDͮyKK(s9'L4-z0v\Qi": GeET%SCfQ m|̙2 mD/B3"І/"Q@  ֑N2lONK@=Zy£jiATYdT͝E87kx\P"7W"eۘKたz4aR:EPUhDU=Ӈ&24T4"JQXb.,Yo[EȮV6de{vjwuBhbVlADa];o[*܁"`H;SKJ;$2 3Ҍ5;Oρa':֩/[e{P 48T2_<#ɴt^bOy5jU8˝ O+jZD F1TOP=e.,9EuE^ 0 ZlH%7`7P:p2ÍvMtGdY.nF`\k2'rPHqYb#;lЄF8aWo;TrjA(GBǵ?VbdF=0RdIЏsI_'(TCJx)v@+tT{^Ow7Sk 1Ѯ"7;3)̶W9%nN#! M);_~K^JϚ+j&%b s֑BX͈mأ3AlԺJ4ljMa-D$` HꓘYbOMQ˙Eh'lM* #Au7,  p.g ;͊>mENܐcS+O ~4OpoPbx)R{ga^-Gi5Xe[JиD]F Nu5ƭ6/0*۰2MGA" ɘ֭&^l-|.t08}L! v$ɖ뫆$/R]?z]e>g(p?k3qׅۨTwo. wl/xB%ÉʈdҜP'`=m,ƿ^v9rX&cR̅^eU4Ҝ`X7 &QȲ=uo_d’^WUba_!Nv5eZGB?B* !u!7lecSGGP~Ttf0+lހʬk9[S$l;L@XTXIw׋ց^?B=\.B0Ɍh]#HmeՂfז+n kPz)r@$e^ !RMćX-ظ{c+kp`ߞ;}{SfN0<4}]SwDZarVG}z<;=kdhN~1{N`]K=Q]y}nltO-;+[:eUa-!TXaTʁ"{Y"N؈\Q _Uy>S幂Ot-rLUS)d̺N?ҟ_zx<0dC4mC6U@۩Iy'=^H y&^d&~O9SbюnlJ}^9xXf%y)X`Dο B WDN9=jkKC]К轺[BUcɌ[1 .n87vz;uNNȜuH9K؀\5"?0XHxڭ>HXIcm}͏5(CN /V@`l s)ڴ"&NNSg-`(ުكU|gsG("#q$g(Y5qE.^ rJ,l1Kr;LxWf/f#NŽ(hbZr#BQ;(rq|I$*3V:ʏXzASɌ5b8]R7-[Lcy[j&-Yu@Gg5 d]D>;v(Egc)v3.TEvʁx#-%0V-b_j-fRڤ*\ Pz05uN>  scc )!Z"/uw9ƁJM Q؍#P/ܰMZ?9Re?ƛycIzΤWK23-]ˊMgf|6JېVوnĵifV]rnN05X٧rq|2=)/OJ~OCo^c4i?VN}4!6W j^<8ajXwT*۹m#ϡ٧ھ 6NZtb4U 5˃ӑ؞Rrg"`۱0iҨpቶ0R%G'kc3G%^C<`Nw'?. /1)0XxHQ%ØFz1v MRX m^ޣF^CT~wµU !4h78AA8%ׯ5wަ bDđ5`y~υ'nY솅]ڒ[7MD+k.c FC 0,PZ l/q6j UQO.숰Pm?>hӚZڇ׽, _Ng,؇Bw|1 F јIbgKN_ krd<4$|zy[C‚?8 e#Zmiįĕ2=A ԮOw7/>M l| ~*-0|=Þ뱐sj5.40(rrUjx/'&,>SZf͜ "'y3tS+M1{Z]dI :&-%Y {&jHu6'@ *n8jPGr;⼲ +'Ө)(A s@xܳȟ)l!YXrvNz_Mzm.@$ŹRshN܃>9` ?n X.kɚMawi$H:[T&mZ#f4׉Ypx+c $5q(u1y@f_q{ɬXV՝IV}} -̸%^K7;$zx|.qH4u,p2W`*gݧdf_;oF2 *&O3v m{uI7ӂ0 Ĥ O[&jr;.F=+ihT([{nU~]iEB\\ H[R9Xmu#j~ۺgD 7hk@\le/E\H ZOszӪ3 1aTъ,JkSEeH\m]]ZP6LDDžFS0$? x(G/qXbslT~\UFccj vPdً ? wDC43 PX=O\/gydf(4b@6 1dh/AGa\ e, m$YaSy]20\5BG>< [ι3;6J 2uPo2xXŖC]+ܯ^]УQ65{'۶[2+ië}xwрQb `YБz! ,cIFh5F*)I˒-bQ,eĻ]?: L7p"L*qJN#l ֜|pm}X_RT<Xx|K_mmU6.{MБ`sE-Mzg !?Wy7K*d݂eZѵ07}p|@]&#zѿ<_)I_b/*41M a|9}fX |RR$f 3oxXmx8nTp+p}| W~[Ui 4AgRvSz)OMtlY{š,|T] $9UDT4Oͳ+ \XI3hdLjDbtɹq). i!> Q P/l0<$1L, m5J{3wm|a?V9]kZ6ԮX%}*pJNԕ/}6CDT 5Y,JO:n|&,^{ȗ#wR,/Iʌ\xT&:aadO߭]ڒ>R30*JPk4=S4)ͳ[ &ɴ5m-ֈՎq CVeIItl5K ɷ,-hMB:n$$):ٶCD PB4N?;^d('S]Rrs8 _Gy⻘qSĒj!#3x(es3- E拊Ϩ16bEfz]1C]FƑ6gD`Fg!ptgy_gew_.>aFћ,{NiѤChV+0/&Խ,x&NF3JKU~;f.r>+J$Zp2U55 m9GҧI,h/Ӆ7NzձgŇ5z|i}[AZ0wp6=2)tU+zS*oϑ_ Ybޗ,OMYssU7呣3/E??AO"T! ݠk)_ۮ*QE}҃Nmpi7M?ΐVJiR"zA${[?(](>^kD!h;(g3fN|0gڷ1BX ɝyVV"r,k&ifSk p ;}8ڴ%p3wKE()MI" ҅&l%osN+DN T ͶnmFB8VUn!qT:?Z .%*SW@ y#{WMX"d[Rq砄ED$0[x)k K{KY 4(تHT`6(@{DչY S;T5Wy R( 4:?L||nuPJq|R>ŘආnEAHf"R^cΆDzץ.APc|DC#&Hs}fl@cP6Wqs+`A۾L];8>!WK(E%@e,`Fi,U4n%d2%S,)T +DJH; h.S4Ӭ$+};>VG/w)BLG6ݿty% aQ'Z4Df6x`'S\#a}9`F/ξ)nR>#bҖl Z9PL;t/MnlClS-1nAɭI6FЦZ/_A*O = *8) Jxk6 FR: ON6' @ t[`Ð%iH}?_gIH}7@h6üwc;.L"N{Fmr '0i2^VAhJv6hELO#4m|9{47k6FmH:]RBE>+ѿB^iW:},`tMRe}"o-/&-5r_z!.=\n;},iAau$J@9 KK>Σ@Uo 4Q *a׷Ŭa]~8@O.\0t0/ 0Jݽ/ ߕ&\3g]3{%()Z\аNq>Z\2Nfc~y! D7w4 ~ `,$o&>E;H9ԛM3a;pg5c](4?Xڌ}]qī{vvPjCڞ6}Ys dlϧz|,Mhb?I?^S*fi7@0,QRC[YLcϣ!B}!G1 5H 'IOrbLa%N"RP0#lUH획IsɸŮ~glQ.]iz\N<\Д:EU4;br1ѿz+ GIdCy{h"[lfptB;/B3eOyN^>! ЋPۅj!u5RU4{QpfWIHaЯ-?b;$ee)C V+[Z4oF *iZcPwA>ײRF 70c$0]g>φ$ ̘osa{SAJˬ2u|((ʢM%wnNȭ; 2kp+F3P+5&Z2A :H_-9@z4Q؝oNY/u;E]n.j@Wě@~kcZUQ:!9/ٗg5ܖbbYL ]T~Cp<{n2AeP )&6}:Ո$@Enҹz~Yu?sYMv sF=T8"dĵiC[i_*^WR@pN7\vf#ct{\%.pQEщaFTlO A.mC)\:2d#^1 _Ix EZ&V/=#^NZ& M(k]!e$[%pkw ^0|9D& ^+뫚G7 ^;QO' t {O}hL'38.gMkz2Yڰ{1E/vr͞lt>*APv 5+_$CyW)e!< RT2~Ks#sʆhN4o{|E(ݘz K`tV㙹 e*.l͗;Uyy-&`rkRs2dD m$>& d)y]r۽l<^8s0w7]U n n <%RٖaFr|ᨔs iqp¯ѿ!`18LO] eX D0~WmBit9R>%l(['Ϟ2.pi<ӵ䘝dm6imĽa}Ə'/ғC/Ac'%ݿG8Aو_&y)ܓ~p1;rdkD毅)="LC+kLyd%;-(|&Od}GcH>]GDIbUu.s5&XX֖BһX ^/V n,鐴RĖIP('Jd}w||Bb>f jB37F r1lO!{NC! dӰs.o 4e,PFZɾk֖˩i-;:C^R?&[F QPnFm5,~npTFc+_ϊA Ι>-ά>Rdz*UGwb:47PЀsim㱈Vɛ~:y6-Dv`$jsfW-L@ v yb1V>YiO:ܤ )5p=l`Nn>ŐDR NPjLsUD>Z1- Fˀ%w4$II{N'zuYkZq™J!L'q2p gD?4nA85`*Ni8FB>p+9#(9P,@l! L-TSdPX;HdXm՘E./IrTUxfo]47܋5ttq]J%ky[Ƌ2$~;ѡ;M7q*_sf)b= XᦲٲD)YuxQޟ ͂ЁWw&"@rL[>c [$ȗG@)_[j'0x:yqɽHr&Ȩ\p <+لGq/;%i F+ECWԡ{>XiH/lg2gѹ" J+ zY"ovAKO7?.MsUUUloR͂:, _,ʗTԸ4ou?(MY9KVPD2ntQN16J0J Wrdre|jsyx{S,DHx_lN8IfN_$A厁XdsjC" +*Z؍u)EAۜ.y ="̂Q'j5 8xwq->zÞk)/՟~޺.`vA;m0'9-8.v0]Ŧ[yZ\r m+?φ<q-_,f+R-U\MM]@dO˫zK_<=yjy {cxTTK\$}o_ERr d[xhDz,s.tOtJDU`W%Z}.*uM*6l*kgC%Y~7njԿH)7wtt`(ʲfy$y{Vd4?swYp;R 3# Ŭ]y MA* 9} ݦ~Z @z6b?8I"ENL~dh?d>*~WNvOXu4g0}jJ!-QR.p]~⇤T5==Zڒ 0OѵY*V R}vOٺmJLeUFO r|HyjF(t–6b _Hq]/<a8I(q',zK)C}܄Q`IS wB_N0's|-є-P]( q {ĞDyWsJJf$ZClt}͎Ipl*:aᙚ} ^1>͡v|V0k%t}p l__Ϫ!P- f6Qa:G(00-}n0\cZHM>O !Y~Ym=|>GFY$qy ^ B|׹jOC=W_2&5+iyNgֳC.shh?hAs6Ur␫!SZʄi.ٳW^NY'ЃEbMe[ cr &$G’z/~)k8}/e8@bQvĽGݽ狡@2xDb#1vg*yN{]Tଫx$Ce]b1- .ï6 g12d(ҹ?"=ُ80<ȹ'9_hwcλ{RxX,F> `䧘+g^Oh; J$k!p)me3ARC 1ZL)(r8joy7[ckې{n^(69ً 1yH'\Aνp3(}Nqrz Ow 1t8_mFJU=u\6S/E`[J >wk#g_016ʢjb9:ePKo9~zeh&*ɦZь>7s ;3:N`rܜSm,M:W%FA $f`9.F 6YBV{~;%93$1_yJE+GN3hѤ׷)|g!~`Sns"fU? ~6}&3=5#JK 5{v4%H%{5w bF wъ'vq8'mCl"m"&Yk'NCaጂ418ĝޚ\vܒ <5è)Hߧ(Ȣ4'wp#CU#p Z\LӃanUc3 А!1az+VC\qىT{}kXo}Qˏ@?#hN'=Vܒ⤐=KH˸ˇ ;˟)]X,Z<cgƋY1}|mEwpquRbvCi4Gp/VَMܬ" VQH=$ȏ+eyc:l'0*2n1,α56Lf>߃8Me4l9ЫP@ d2".23.MMh Î<^VmrL"Gd3F`ڭa%Y2o0`bc%[jn7n%b.s&uv;Owexe _)rt?-GLV)A^sXbV;a48`̴3^)CW[ƋQϚZ5ԬC#;kgk>!Ĺ""[B{=?f 4Y/)Nro1bDs?÷nįF3‹3hmP+gMoӐCH3X}_mGUoLğk{SvyxJWB:]||d8Hr& |J):יG2o*G8N5`Da>rz⬜0`J&ORE{mF*4N}#R,:~,bۑR8w-`s1 iF83Br%O}IAMmF?JȨ߀ E*<xv )Ռ>~,ȳF#f"Q0<: !+ lAzƼrW P 6)$lΥġbD+ᳵ#@4VM0m?f> #+/fҵ,~|"(Sv޶Vhp ?YԔ@W`~6h_M/tDb4?r4i^Ef» 3SiF&9{r}3$]D6sDDo⮞T#]q%ãcyy<.8A6\DKIHsWHA h MZɦnq) a/u:uK~r 7Hu-Ւgz?r|?YBa8fOUt/yDiqX :Y$xn 3#V25[Sud&;wTꬽ0`o_IZ7fd6-VO;;o{Bjms~H vĀ*7{~&WOEh G} Xޤd:*~TO3 no&XiˡuyA^ B58G~D.Xج(o40(/Z6M #hs 7]H%t4Ov"vWũWΐ/|9].ײDK*)2  [G7XG]e+"vBzz\^emAvYR 6$`G5l^-)>nYX1Z~ $zR<ܹ|!(#WI g"Ac$Dy8 ,ҌH8N6Tjn[hjbkiA7'}U ^8$K&8 ))C25սTIRX-xXeJHC?欆7؄ oY#*Q%o5%4n%Vy].2\A4tPDnN<- ".d븇R`VFyF.o" `5A3rkc aT.H˓t+XQ͊X r1"p@a)&j#Z~f{x|j&/2^Us{-Zy0^lQ+^gU~k=*>pLE:<"Z`o7`>eH]% PGg̮z򂮍>=)9` V.#r#jIJZ'R%LD' amj" V"3~\cvY!hɼ$ZTEE#;b]ԆS؆)az0NGYor僚&I$޶>УwE\<@YtQ%A ޜv7b!`nF9 '}NSerjۚ-o kAEGOlyH\Y2Cg.5*dKxE lNJ{DtqU!B˸ui rA+3~F9@a.C} &C׵틆45r^P(~*E[tri}z'W%ʚ6]Du Zj0I\45 =i0iݙlQIvBtn5<#WPmS~Xl]Ȅ ibW 7XUh1%삌rW2e,,Gg¬pqtL+ΆJi$+v=iw蝋D)RG$y#K!ai72|E*Ald&(b_1W#T!)[A: cKϹm i1YAC'\_ 4ܒCM-!Z-$…Tzre} dTkч@wְ$\!LrCtcZQ6_YF3)Q:O|NF|3uZdDkychU&؀{UMfE|+UC3f]P5jPm(DA)W'SYy.q|!|a6s_"`ౠ џȰ#P* s}n`3k{dI&)_<zCPJjC۰<,j` SʌCQDsan`i7#6{du i#hm9 A kP?Gf.3c7ck*~5y>b HUeĀEV"E:"PEG /y ĸJHH5+N (nlOt}'bQpӒp?={ Xr!gp0sUCHЧϓ?J%B15ˊ*@vѯo O=b,4VmoB!hqY(Du'ĖX63:[6Gmo6xmn,JOBdPbԪ3R:?S!`䷺\8h2'>r0F78o lzs]-p'džz8 &dn> ȷ,wYTGcM?. eƉJ#'_PdOPh]>^(_*7e$m#UATY;"{$v*4J)SwjdYlw<៓Ε*05ɴ29n1QnѨğg۸-#(xPUҔ֋U-j3M%wˆ 7 %eh5e[ׂ_\~+7D)Sl,VO3]we)?9B`Dᶪ;E eX>R]@#hdAX5B#Jq`u{ztdHح {☃\le>m ̰zi*g F飸|d=|덅ddph^|LE$Ȼ\:(h(K>4!CJ MqQWqZg_Lkn 03 2@+/:|m!:ЂҠy1Q1]Q_03BW^UbloJ&( <ʾ .Ah>)j8Q q q5\zRA\hn!UlˇSuYpW3(ju:vf|bRD+_9<yi>"vϟɰZDK7Xb8KA_Z",{YϽ]b&Oz4„/tb\#2Z1fxRWۯ7#nTmY>xA:# u j ;n6?;9d{H+^*'&̻T3AC/r;'4UfOjq{@Y.#i#:#*E5N)b:zsNL(,+qRL}R$z3}Ҧςtcp"5W*Pj%E`؍ڴ^<[CX~R- CsaM_{5-ӆ_PsdZEY%<cϊЊk8[PIdrWtk}T˔d,6\Ӳ3N_)wyW|s'L,3iaR>/Շb:] YT+{`v fk2"\ٝoٱ\rgN.t "s8|YSLXtrd]@Yت58vxVK >'Ȧnɷ'p_\W F[ [ȤUI=ĺ}ӛ/l5r//`ū8*(SX=fJg\VU]=!zY =b^8:5؈V + 1Gt:@.;ׂyşTX!ڠ J(fO뗭|WYԠSKmhyZ|d4UY^Ձ( Pǣ!##FW~vۊ:0Tmޞ>um3}cxP9 V~sfV]u!"{ gM1{"u1Zo]H28xCfgthȄ^ 7g Hb_0, ХI] x TLL|xj"^P™M#^Get"oC{ʴ2R>Ker82DeҮ ".]/ᢨۊHNqz?ژ\J/ֆPw6DY﻽ ~f~7kk`mF $9׻=ѓGb(E7%VWOv'l7N-0Fق݂'|7%~CD$dSOKQ|7.^^蒩Fd7,7 r1C>;J"S-J+9 l&TA_FOb"z 1ŅKqXgεg`eCc'Fy.[r?& W0 eca$9 ϾPKͨ*`VͿ^صE,?50CygCe{\}y/*h 9Ca73g%xP k!լ. Q!OS6D'5dW bڭN<>hu]t-C`oCuM(a3M1jk2Gr5ofOz` G(M*_w)J!=6&kj_GO)]&*GmUw _V"U.Z#>WoP'R} t/;gϯ N |ҳҒ AI:;`n;5Q¤GyX'm-\<*K[&E/тJ H e(<$ ge:7)l>E+*$uQӷwj$`1CUErg)ЃDuI^ZfOߢ&ـ㘤L,P0012G^V->*xj/c%n*kO*y"<70}8W T8ccëvA;#yhiGf;1%?zOˣփ)~O@F86Yh;u~čPH#AĜ\3Y qb|d<-@rFBA q"jbfT0'ΦG |Noƀ|` O?[Z$^"=8e~X6<$ۧ#@F GjcǼqӨxqnBXiNiZ[<2+^tD7e?Y$q_bX5E"# Vfs(M,Qt!0q6 s׽0{话iPƇ>W,X\ZKYL>) NL1+cA1{j*X0da_ q\^&({ K 뒭V8PxP&qX6 m=2vHļǤf8~%K=Tޟ@ oBߩk*_3PrKՕLLsME0oN6$%$w/^udrFB=|xB{4of KY;E_KF M&<"V2Շ^oocCZ|!3y@$3 7+ߙNoi%[H~\~)f.ȣ΃F>3s3kG^km4:(qɍFק-g?B.3qO#5ƮDTt7LP9^񜿡5П`;*`eViswKzCX"]`3N_*-![Zm2Pz_II^)(ફW.Cꊟ?GlrLxw1рO+d^8_+B;&~ɎS2 H%C^)X8e 1L`ȍ<ɛO:K*bl |GRu%bolIig!jtsmetFarnj0r*: &>g8 wGb9TU E63鰱đ^jK E9e'NdOvYb\W߹w4س^e4$2W`r ~%Z´) ˭_Y%+`L&z'۔|4"H0w2 E2}%GF1]Yzz8Of_jVP.Wq )YPߪFvHvD?5a;Nh!2W5ej=ùnW"Ik~`ª\]l 6t0VxLNZ#e!=, Ȯ͘?q+-u~YuwJJ-ƞbQTۄe'hߔwM+iȁp'ʷkh 4Ψ[kY)acq+i. 8*sb=L :a0|CükAqv`!׳7^G|ggTOx}FA+w[Z*m 2y] ;'#ˢ | k:hy3N Y`ފlF[U?&{ hWpmwؗ4&"p'7 O3dehB6!zk+şQدBw&Y Uv$փ7wbc 6au9 3ZnoNbլ8gaw(ဴzM*Cƒt(I}U֤WK1B37?ҖܽۀK_"2z>p \MChclH.xH.y,zf ig1)_H0Qilr[! ,wۍ/uJG ;sQD1P?>d#7S ra;XNxCCCcit|fG5єnޞp,|rKh0-TlQe\XgI_~D@X871m!Z #pKx'ϞpkzRH#=yoŧr 3X0O,·F=):^ʙV/Յ5'ZB}^=eqGsaߟgJA0G{\޷fV^[0Duxlt7F;(~(FkmKm<{lp0DMYa'ur.g2Xx9J^_~Y,|Y΂ϟt;n FB.ٍ-w\U f'_' ִ^+&BK9bpuHhjc}{X` (Wy]1 SsTr(R/UF'F4^~VL\gu9t(4o&x @4m j›p Y@dQ1kZM.+ GBEYaOdCxWx/O--աη jtuץԓUrKM6x["m2ԎG t/*p~='6?rЄ 1NQxQ%}>fE ~ K5~ZG*˦\-QI~BPD%(kv._a}Z$mb`Cv8n·B 6a 7UB0b% GA:"/T 7EشS",^ 91fԧiM"Jg__nx.x~Y%\]hD`13,,&, Hcʫ*@V:aAj~BuqcNҘ 4XǼ2{  4b8լc#r_JJ*zgr$C)^%=Z$Bl(LzZ'Ͳj[Ӳj9ag 7F1N#l\QΘ=8 ;n5Xs;2 < 5zb[H)i PEו#1 SF4Ti>8fϲf]:[/O- /[d 2I䅡ɮgَo$,}=ra;)9H+/׃Z03f߾q]#vAS*^47sn45lM Fy 4 AtfIq( ZxHDs{]}m 8ͱbMu۴RJ۔0#UnVM$D_84>u#2յdj@P~u"I٧ @zǚa:Z &(@L} S<<={Y^ LW*[|r*'RpxG]12q3"s?D/cA;?L>*> 72pil %qU~I>-ZC.7|;nޡޝ5iA/QPn "IP)7><)*6 /"z÷fr|EԎ;YB#ax9 ǖM6"d\1;Uw[3x[B\uFnCUq*Cxg˱ew3ihy ԳJp F6+L1CkȲAİ/A&a%>&/ {)W; w_޷/!^)b'ՁKOけz< 9XN;[Uф#!YlbM17T.;-@7LIQZZAt0ܺ08-`ROYD{JP|nJpN,m Sʋ9e!%yu DCS+@E-ﰊzbzicv9@GVA}Bѫm[Mϖ'La-pE6'LVecGTqkz:@P2& w]5\ 20넝.d{y"~$Wr!˫gGf0$$O΄"F\QrF?翟 8N'[ Lhn?jr Td'] dAA?wY(4Ma&߫]CF,~e@μnWÃbp7_$c,ugNfa S0hH1,ʍ-vZnUT\f^goó)A*GSpNb*Χ1|2DO3ԟ#W2RB#BJ> s?܉܀U0[!g;{Ӌݼ??Y#O@Eko\Ե Oh$m-n\N3pڶk]nHsXz"4fz;{)Jbr|:BHvWȾ%F8& ?&y'MTX. & T!}'Bgə<<ZO;+EUM[;1;s(u5ԇ`a/3ʲ^a |yfѝڙ\l `*nqqXIIa:NUsf+*In}Q I(KZ 隋,9 %wDu^NbsGqsa > a*֏dNلW1 12" 0X ]rY'řfʡضM˧jDq6.h|ò17g5\!׹g$1B r=]*&E٧IJf'M oSiӪIsut 2{q>ϭ}/`i-uC0^]tДcײkCO;9.TLoo}-j*8ʀρD]$4 qC43:؀Ӣ; x nxtK,(ը6FwjW~1Rc\;qP?113Jp^Z,c~k[˜j4ub6Oq Rs:KA@oΚ /rSL'D' &;+]}!OB4Q<'-[5,q{SkH{+xI&~XYd+uY%-=uBʁ3cF]&':!kiOXh,s,(JEQ("L=ABݯ75н/S8m_6? S -oqk%F3#tȫe!)nm?n:i?xƮ&Aʐ#y>=1x՞gn%cEYr.goPɋuNR'NSZ@Au^BJ=߇ *b9^uw4SFT@fVp ܈\RCPQlF58i'927fBp[S*XLG\B>_'15=OO6@3s_Knx]sH-tɷKmlKr"xTR Vj7ZKU;9Qh&]Soƍx|ɇBrB5RS:9J9soOlqF4ėrmeRHHsU:toX>2Ey:bHE)zQaV#N`\soah^3ȊwI;gmjYw]JX Qs0N^) U#Q3`èˈ)}"-j;M4qflFLU6:%QmHЎ/YڅXIqRWUծ 5)3ǀx;3,6 CXMMnbvרR伓q~HP]%- -.Ma~j%G}x82{%\Odݹunv~𹰖x1YYپJȏq?a9EWSUyLZR|qPۧ+.rJo&t\qiȊ3w,՞w z U%|75gjܲ.mzH|>͍=i_KSZ*fe{YkZ G4W]cIK Ko5ŝZ;TDWso)`VgJ-[~Vk&smrp4|FĘFAG%6ȐZ['f[fzn2ڳ%,>=GhG dִ̄dGai6ib^I0}㰍Ÿa:v4܇]@'=*c7k|]G_v))X`$X;:ʓ7g:JV";˵BpDg4Ǭ3_!ϖ Iy6~`lW뼐3)ӏ1[4Ty6dD3nobw5~9-TF-.EEsXZ1z| N2'X& = #>GK%9L§> [>n.$svm̙U():?Tr=5!6wlW'`'~ xAiը/?U@N8+YyWrԚչ|idEt'LZPO 3c!@?DGJ"PcdVJ~,aL ٳI5 z7Z"y*FN2Dwjk`tzB1b&>HaM<9!5Z0() Z#3-eBI(-݌*RMww!Lf߀`9e""ƿUDsaDRLb\# hWq{hDo{ w^ /HcExcWF2g N6MsC*SUu(:Xդ~1:"H^}⚉J!i'W\aFq v^La81!eŜ5btB#%޽SxZ>"}xp/r /}1+_-#q/{\` vB϶8@43upjTlطEnm.)֝^@Yi,ݹ!`mvD$]FpedB. u(#ҭ#N|i򑞊r1ٱs_4"])\%P~:ȕ?F;09q B}kQ >$3 0dm nwP&g4bJӹffⓦɳ?"Lx65 HF7.H$#V ~(OuW?ĬcRyȂwAY\q><|XLR %3䬛YK %'r ĹG%5+סL/LIDz4sN$%u队1'k·>Iqը!G)T_=~Z* y̚/!T0:R@2p2%?v!5E`AF`h0DpQtُFB4gҿBIt1aP1W'&”;='H`67rIhy\TԵ-C@) `'os#4TTh.&E%FZ{eZg#tZu6+u?)c@`=<)WNv $id6odbQua?AClu94ET~l @qM#6^+9=fP6jka/֘rjfE)0w$^Svhc%~uKO (/הH0h3eQ(@Fg=]'ŊӪ4d@aXb4SL:*#Kg:TuE"Ux[,VI@5iV`GR=e@Dy+7PF5vGRHXX7:HWCk 7o+׼rxUY+ ]RHt2VX0XT!VTl=0 l 50ںz'8O_ vJ#xaz ۘVGvI!z FӢA8ԧ^W`u{]w\8 |1~]ᄷY>. 0 xULi2Q m^ puAZ;1=(4QGD[^vWJx$jqns sJ@Vno#5C.Ϡ>_Ȟ)^m$?*Ȋ892Fx4"Dr-:@L>$ÖkkHŬQIzGΊJV} 78GFqc ARڎa5!v zE+uytOmhքQ.}ZcN 5.~Mj9) X xZG5A冉mcEI^a(4 c.c [#2%ގzJpVd}Rd^F  v$Ŏ6`=΅*=؇ƻ ) ]p8Y{^];9헳̆ tKnjS=]Mi<23Ch*ޘRx}4h,rbVBI+ZSgĻ6'>r'Nx+!V.veU [uf)(cV*ufM%E7|yi#ͅmamNj.9_-~aPUW*+}M%]y rOxtuڑ~~ؤ&Hg^t툑Ikv:-62aAEZ, ,~g]ӌқK$t{Bl$>/% \HJ?pme?NXu?g᪒QrkZ̕S2 Tþxw&S/L,>HggF`T$+EN 1z2^>Q%qZ $wlv18 ̙>"q"7?lᛸ9"_ٲpz^9..ƙ tl-U&ÏϽe/ =ѭ4h~8=Co0g}QuNyo)085eݲZ)wj{X[r}At -4kC _M~>H5NN+y\N2$(_^irᤫn/A,[_aC"☓:MQ-I_$__97 P!Gu!m븭CՑo[kbOeTiؿANPxPMx`oWA} TM$e/4Ѷ #Z=/ Gx,8\οoͫF̞B a^?' 'e qMW e,MW@Ӕ^Z4}D]DO=lLwVp |U]zho_ԧYkJ&D_cףbg5w?r43 ӟ澷TUkf4SDjS1)+A]Qh~uvL"ב(%Ul(&R6ηew=h@{18zVw5 2z5өDʂ*h'Z^b9{ėlri 0 6d. yNX!H[ 3z۳SUdI;hb^8Yap_< ̃[Gnj+.uJ|)3N[X}9{9h0Rpz0V a?twZ g emNN'ZbjڎL X&Q5rQҖ7eG6 O71~A{9;giѵ FB7+[\H%Śkr>X֐TpE QȎ.G*& Q" d8,2L?=zK ɺ!m[S$uըrMwSjgLV1Tw7^Ósca/[K#L rZ,S4Wc,c_J,Yn lU;ϫ3S!-kNs6m~c̢q*DQe!bJ:Qs@Ÿ ˪vSPW Q ɂ֢ kJV O R۬hIp7Pjw̢CE5nʓW)SG],ԕ ɤ\!XͮJn~ Ʉ2CƜJf(дUkOc_s QEFЭUH뱹 1xCngK'nE>R~jU50Te7Bz>4w#>H!- _IR6"T0]=֊Y0ڵdUߑ|Wglo)pXc1*}S/Hj/Br=HF3°lwK9܊t}|w$%l5?Iӥ)QE\!yݘcŀPqeį7nY'F˾헐s$A}R$'>\>}Μ|= T>tF#/806|@{AhfzS\OOrjeҐ6CEq_Q LP2kUwpz[#`_IՇБX9Fp&`W'3,I$Sb\t_ӤUIns_"|TAԮ!Ib$y$_whI8;.(?8j?יv/.zZ^5dnWqR$ G8ǻ| ]++n&)ԭ&$ ذojNkNMA4볭 dQ&b#iP\{sYdu ڙ)|j"WڈD? 2G=s N$r)?*m;k,_떀`6a]p ?/-z'>[@U)-WrZ%+Rbמ}pA;׎K]BH)u~ ;O{>uyyYx%j%ٞN8 š3ș*Kj:hrjeQDpan@'R$8uz[ 4 }\vj)_O%NRjw3s^3 0')Ȓeko*S\u78(#Q<hW wባ^!6}R:Ld%N# 6 xz$ԯr_j|˜"tUL5^Fp6ފG.YW-ybB< LGM{ѤsH}-c{5 i] w@3"n&p,uZyF+Z/9X ݝX8"]* Ҭpi`5 J_%,qq%{rUy|JCBZ BV,O/mxg|tEid@\4SbdlB}H[a=o-] I7"X('PR= UP76u38 ܢD._KwNt@Kĺ2b8R$0;Tgu|t22A 퇊]B=^'&ٓ 9;B# AȁݗK fˆT%-z!WùeRB,f26:~kPo“]3,6$ZGFi&\S{f4FHVWRSOUYɱnf6I3j(\GUڮqpB1G _K UBE;a㨝 ;[|m6M+&5'zyrnXڑ0igw Y}EK-d+T\ B$|mnq{G0YoyEzWz3G EEΠ0hFRwp2؂U&o~+>lC!Oi/]bwʚ9QTdW!|"y8`,GOsӖ9 _M:[+;v#..p{-!Pi o ZKA—(j1fm\gPw*Ig[.t\ŁÚ#Eta^Y@x@(ODsZeQiŀ@%ҦDO𠙫= !?|d酰x6柧'LYwS) ̜i]\뛳6/j:YBkpc6n=&ny Zv;6 +g3fc9&mO=aH6* H3.-Cj ],4*ıEPO6ba QW /%<}=ږT, i X)J>  Faa'MΓS0ɧ (ZTyW:uEp"1ZWkq{! "C1Dh^#2 NY3G%;u)O[%pAYLo7z+kAxi~mAxPX֓l~<"p?$F1?[APf'%ˏ"1FC ST[SQm%UXoua5(㎇ /q./!۟ Ez+ P'a$ þ22BQ2LƿXˈ 1MzžwJ!{]۩,Z,RǏ;~omua]tӚ 8p2a'LT>PKnmKcE^{sI_(ZJ>mmtͩbIs~+a56(?36N }MA؏@uU/j|XXk7b!T8  49l `*|BU-8:.G>G'eVRJy.Ydb`IY.͟r/;P_ثx[Uo`w:bSX#VؼͨH2oZ[–}Lhu* ڌQz澸h7Dɧ*4),dfT66 "6Vf23k :$zmN+we2b^&A"ruch[nm!Q%VxXR1]"W}KdV/:ǂ j8Dx -9ވ;l/yF@rPkb7ţV9 ` \̕y,qHQ1y98R7gkuMzby΂>%8)΢b+7~LgK`hfyr| 5Cms~EONogWkO?𚻂 E2O]tԏmMDQWNhRk%WCٿ:Y ;5NtaFJ+*{1\" )fdE3.:N`7ڒgL(gXYQ % ߏ^|2d]Do1yLZ}tE7ݞCZ4꘩3Z*ʲ9ͅga0DK73oڈ  :nA:ĝM_c-D-oQq9p0+Iz)bb_ǟu(_:%Ϯ>Ǹ^qRf v<-M%)>?8bd, 7<N2F\/mxq Q73b_}(~!-@xhW,?)FIL `GKFA+ۆD^QLYXV-+w#$jqѥ"3{k~eRV>xьz[ 5fz/G5S-?]\/7:z$AHPxmmZmd]Q^,IK_]t WSdmY=/'m?J: q.(#Ճv1 `qù7˰Mփ|GjGRڧ+z #zK EJnPGlL̞<",ա|q_OR_#==Q,eXg9X&}Su t{v YlT&bT-1c}9vhbZkT]Qk^/ , M2:"20^6OBW z*2y9[P?L Mhi+H3ЎTҭKf\"o~H>G}9yWJ֚^*)v^x!|dNH/Hbcf(u/˛(׋ RӉ=V #/39<5GzF+;P8+ *'xMS 'BCuV%GYR zp/|>KLӷb|Gz$CCP=+ Y(hMCVi4GZz ɤjq^ Mkq*^^~!V^]C-!*"ovgکs֜; ic6~>y7OS֯@1Q%4stYta]$V 翨4IyLSsh{ 7#lw#]'E=+ BOd-wl߿Dp|A"+5֙gs"վLE(=ߌLq~8:*c[0נ2%zbօyTR^26nh7yiYje-z1b쫶g`aJ/YՖ7Ow_۽pu&DRht>2ю G^78)aycڟy06k`84S<)j>'iazjeYUԂמ=Ƽ"**JnN||a&"މ%Y [ #s<(A W}( ihxhFA_.n0PFQs| bRTAr)N3lb')E7_{/JZ)Fl[ |P/9!P} d9?0*6`,>]? &\D'9;lJ ۀ9"b%H:OCXaɢN#Wśʴ(? % pܨ,_X={;xx^p1r){@HjyP. c:_{u mT}*v(jP9\Pf<,'wW=4YݦnxcQ!fZXL!M1|,qz&wKl㶍&p⡵b){DN,{8ldGE!2|8ry1>#=<99.l1Mc9s)dWa]"dט5f%~C3 Sp7׏RaI` }Ǯ)rEٰyXQ-9 hj-`6xzO<4ˤ%1fn5d>tN+*| *cݸq#.X`{3*KuG`eXus+`0k"ӉI+_,^˶zṱmZvMb.&m>t왢{gYO*NQ}`ٱsaC:9b!$ts {%,VR~Lc1@KM<.ъWzD fa/W i(\-ܠD`Z"99h配 D5=bL~"DN^U~ ?CY I6$4in KUa]fJLve#l8ݜ= PP>cP"4Pj/ fhUgdQ rseӎLO#DI(K&ACiКt{Bx'e] Owo"|RE7,\_~ _nlK}]r\t'vxlDmLN3|8siaȌ ]MlM\"3Ջm[gX5ٌdvZxm' ^"@[=~ "?&$DU˚(ooA~' Oq66N;42dߣɎ MXFd-`oäLn&Df{9(  cw#3YOXd⨩rw kRT{qW:Eay+5 ujlĵS\v"KoJR~C,\A&fz^@bT $W%0YZSO.LG׀^E%Pg=:1x}SyKb0`]<ћjf*0 ?#1HfH=he(7(`T\CoTGa .}Ը:{u {?KkyےJyLgm^H rj#n<ƻWqSNE"4CM HB/K& }Z|1Z`Xb;OR2j&`(q~>ĽoKZp'%a"} UmN{Fa%UmXT}B~{'Pv.mEvAK EdnG%x 4r6C f,+|gCDZvX%7T|t|?TmWvKNLB7Uo%&i6s*` y%1[mېcvDjm09>{V>jAIXY4QQ!$aBwiy|˴5`~P.o-{P& [!rE%.ԓ8M z^z 'pRUc3AWbn#9ptN]T咤$t_9g Z3+b-InP=U53U~d$=͈Y3;SO3?ꔙIɐռz:䟨+'!y Ev$O.-PWJ謶հ`qi Ɓ1v;c-HqKy5kBث8~Ҵq7,eb,|(g O&]zUd!ސ;PƾV0>؃p. RK,3jŮP~1Wrܭ8JVoxP9rL᳕&V;{>q毌L7irS¶d<ؑuf hl޾4jb`;F&8S&⨎&nRDERGD3^yFXC9)D> ]*s\H)ƒnǩU6Tk^[UedhTtNvS;E BK#0$h8\^Ií&q뉵yi` 9ֆrLXߛ7dI״տ>5m8G8^`)k:D^!_q7N1r(ڃPGI[S-n1' JPB'xl;)Cmؔk[P,`|~2Q(kbG}-!t%64ϥe 8xSi2V`hZSC(t/^&L W◆-U xY\8B:B'QJ J4^׌ ^+@kIo _={sHT.C'.eJ'qM5j6ׇatטmoU;CRTWod@rٞA /kxy`'Cf=AβGG>$1to) iEC~ܤη E}_:g}n' d-0ia{wr@霸LX?rP{VrʍHlߑg#H rF.¨ jYZJ6@'km_zE3?Y8K* I,pMu\>oʟ'/}P"bYrt}y]E! tGcnN Ih8I!z$j aEJ73P@h_x,qj(3W@oԁ\š⬹jփ<3zI]zys!.a9^o݆n Msy dԞ8Un)X>}xlÐq.D)dRuR R640v)#ʫ`QqTm -ӚY& 3J#lL.Bj٠[6I/gs&c!NG&PNM -0eܑ"۴X-P?ˠw䊉q`-L G!kA qhWvơ٦{Aا$>MBj\Jo:%cVm t\cz$88HU<lHd M|"(RD`%& S'K Yiٕt5SDY]@*. - wQ<{:f(ݻ (mBw-b|y=/tFYЀ Aw gV <<gLc+=k>W` C4#tӑdِVɀGՕaްw;ưJO+rڡL%w䣊-jߖĬ7d.7{Zf8Z'XB bieW2ycLpaW6V!E(o0b:tR$GbUxǫL}̼֡LjWmzn$'A37fdkM=壑9QX Nw181G٦3)^| JJ67Ue1~Y}Lc p_lyTZ;Z1ùY'歉J yz &A]ѯ*@5%1P@%j {d(= ӎ}o8^Wc2ڱթ_DE9bu.Qe13|E  N6X)lysL%#u*Yа{2=V<eJ_&ș2409d~h1DŽp.guKc}EZ~Ԕ`7F PFߟAlFzbe/yK)2P$ u|(Ļ7[T?Я tg2|nduA໠v%^jEcR8d^ [xL25&D8QBN 㤷vN5oVT/z4PNe=6* OMpg2J篕<5Vg=2,>hdB\<"wSWQFJ(U *7:UT`Uˡ,Ro jT7}Q͕aXn2Z z2O67Eew/(#UAzD yr0D-3]˵=HqL+9<`Wm'Х{]rR>w9f)V oXo3[ꆉWj7vW[6 Ҽ굠j|kv7,3/ tr~it2diJɎԀ$C;0|Ӣ4uvj2tb@Gq"e>> /6֟Vb+T w(@:%lkв29Ȇ~rֺס1>86L(dlDm޸xtB:6uf8@ٴF !2MR,+\@̝wh&3R,JC6<@5 ;!l7)M*EZ{PIB,:|_6y(tfx"8"ygA &$^J y;Gjlm [ c0~&S -^tI7yi[i6t*$-bV5B9^x+m6cM-՝C8q:Qx:0Gg4S?F8R @e,)Vs  %AnC %G[)WOl|z:R]É82$rgztP$P[\ի,> ܉gDBs!jBcq6߶z3'`KV1̽' sOgwʾpfV'@R% 9pkOEX]·cf؜@GgV0a@RDMk89l $D<[O]xbT$̽x*-0Ukt]S `P[xf&W+\Z7i@!4!vMvd1AOE춴tbqZcX3zfJ]*$ RnW/ ;@'`\~e\&+f R pkA'.U$徟wᬡFCJrDCIS bYoAx,ݵ{rA5bbwTx&k\E 6?)v:9ɖTň3$kr{.n_A#CϬH}Й!juMOQw\ }@NwG5ߘAPo3=zrHP[75)5fm̐ .`8rNa6@/9Zj-knvg7$A!.,p޴j#wD ʆP姞C3OQ )ǡ77/leKWؼcGt:a:l\P6a2T)+ZeO @΢/1 &Bɰ_PUmUBKG;흟$oȊ*^""6d3/AQh9~ 1/DR^Z_ 6Ny/pO?uC9շ_dڵYE̤ Pņơ]/WB~3pܺt&(WQ129*:g~[U6I*/B7 s8[xS1Po:16Jd`Ʌl< \%5^Z\n.Z҇dL Ch79hZ j}J%5ZX 4MULY3Lʽa1Kn2 Qȯw| V%95Ȍ1A. H@|nƪ؋P#y;mF8i^s1 וjR}J- N&䬌X,kN)`4[S]:is  >̳QvA͈(ok)]!UDwzc5{ƥZ-ɻB"tS{AK~U5p ~So-g)4gXGQ *]5bklA OJ9-fYEKÚp~J,G v~ݙdj^e@{h b ( gۼ/P.TD#?N7{֎<*D#8 43o«eCV, ơ5WJF]޸܎c " 祈H2:6ӴIJ\D8V!`@k'!W,gSs"NuL1"عA%찭 +Vv a)S@:s{ ۨvpBqTHT5M]i4͆+E!n&yZGj ­Ržx*DFpc5R2Q['0 ]j΅9,,n&R͜-Uڷ^z'ϊG+0ǀ"J҄ lN4]݌ w&g֞$unMܽ&^ӯíqzqؒ0Ydp9w/6AM6^(خ `N<})O~:(TÙvY'A_g\+&/LZ6>96fN{<8Ot]/ʽF~|:&Hf:l5.~ CѦʤ>jUa hLhWr kM>:1ݲ *&2Ġ{  tcv'P̵G+l| lG5OgL U(sSn8tXDh7j\dmpb>˵ \qTGudCx9uAVF(3p(3 T_Q6[F"ŃpT-x2jSw-q: &1^4.YvA}3-=.Xz*@@BZNrxSenz14F]s|rU@(Q<=7W5yyp @vSPCۥ"t4<5M2ä-`/bQlVܹf?ѡ&pKN7._Dyh#݇٧UڮGtQ~ /}{e}QdY)>E=iZ~t6Vg tGY/'g~DG_gԺo^=364K?)n}[XVH(~,,."S4a&j\z *$ZdOQD{^3;Цs'11or+L9d.!`DS- Sz ԩ)QsBHOυnBK >r̜^lR_lm0s\B4yiw]'aTK$.[kLhbf _5[mN_VXV*v[s/`9ץ2O)}y˰M;.O7!htsSqd{rP(%n9G崸"ފߘewN{ 2hb ƺG9 {,ۛ,y* Z9$>{\ݶ[~Ⱦbތװ>`Rf)SF˔xܟ") S9Cm9P' ,;o C'jbSl -6@A?C'bPvT@L 6cO9!>r@: ;ȯgWUEaj=:/[@1$:fz xק+ci(Ƀ[|yvM|5B&~/d~{IMnp(WSPnFLt&tUE> mr|zi@%oasqMΈIGub͢7f \'*[Bȷ]M"ykZ"ù_¨tSE$;o'Ӛ"z|eTkK\z} yGybFE4+'7?]-#3ӤtucD_w $n?z# BBn~>K8Gq6-{MЕIJc1$.BgOϱigNVkgпGG[ z\4K H֘'̙rU"ј x gpH 2%;=Hc+4B=}r!8T=?A+2~2MIV!LkIE&/]uq8Y\.܁R㭨8xA/p:o=U~6I`dq L IϷFu*-f}jj! [JU[ۈ]noϮ8(JBR[UyF O̼xvsSKٰDtoW0uVط/( 76u9`D2mfo Nv6ï\͖jbmBqEϠn5DyEA5'"=Ɔt65M8Q.pHТqM,QǁTro,:Re5/ ^Qhg./P׿?To,qy3>AkM^dyuLnl^W{Z 3y_3\2’HJM|ːӯ_>%dDJ\\ީ w8Qxi]yowϋ ylTM {|95u4_/sx=mFLι-< SUs`([[ڽ1nب E-Rg' i{҈Yn*%xq:νc<'݂̻q! ^+Eѭu`{'Z[a^7&t/;)E@Os͸֬K4|V3ht?>وDW^u|P2i Wn6Z>.Ku+PgR(㸆H_uYPě{+8y0kdlrUiaB̒BI2ݪkCJ.Wa!ʾHB "A+*;; RAQ Ncs wCaǏvZ̺Q[B\ZF2UV:'@mH,LSBwylcV 3!];K%S &aqVE'մ tP|I p-3Pš5 &90^3&`숬5#:kybͲ/& 6vp1OD[QnVqVYC)<#X1"*Gē@>neY0DD]rSӹki-j!D f!Ee_G+SZǗB}P:]6_@jx>J \ND* rj!ҘhKă ڠԻ':7Hc co9J0maL&W䖳 o{;Cjy"MQ`K݂Ha+|e=PnI= AD 1.QPWD&gv i6纇 e/)y,ʴI Ghj&87p\޷\^OZEMYc,9 Z=4gc8|(>Վ2e%W&SlH0{aY!{$XZ/E@0O.iߍ@ɐ(p>kcCXwuϣ rln& $#( WBHDgAЈ9i]Z!&GcݤN/( Bɛjh7:B˄7{ U;Gbe"Fݔg2{D`:'Ee=+.. ܐr^:%<<*LD\uߟ;ZHۯr~ [͘fT1K ȦֹŞ:ӲLFP(K['Nq2wE4NiѦ"B $+&܆Ԡ*y6(ֹ{!gh>n$~V\{>la Lv"| wa6CTQWvbMN| oXN#]~bpئ`g|w~:}B |!GkuDŽ||- wqJF+yb'J\7+""W` ,'0>%;j#l]?4AeWM^G:!1S{l}DǠ)[9HӗɶNN$X&B_Q:Yٺily}Ia I7HOd$PW`Ƹ98v3ش pHA}bM(WZZ(-"| X48cKJ1I-@ۘYpj,a60rV!y]BtGJ؛J%2x搡kA,~f4WOHZ=O rS\tE% 3'ן[dJY6L*ӣЊB{PO0W>P}@o!>g NEC_a9e"j&9[#I=[C&9I}M+Y d3J#!=ph]Eht6-:|{2q+zqq(2<]h< )u|Y+wυub)=c)ܟaZ^M q9CqgoK`V~wc_zSẄV''Ck%!V'<@ЍToUvO 6n#oKL]vU Ў2֡2s5bB^_wn,_.j!L^/sxndY/ɭsh0Evh!ijB{aU`?&e8Rt2_E;,󊇙J>χ$񞁵,r Z~N;у pu HNB;O?|'BũO_. #D*{ \7 8a,†k$1m8rq#8ˮ\ r\PY)zЯJ&_b |D'JQOocQaE&W^=sWtaL?d%**#y[?_o 5$L.UR_Z3T]Lq``+fnD,q21rdqYo5Y#,Cy0Lu:qҢI7>|FM[/w^t ;"wclj*KOM~D(uhRK[>#K7jNù`HXgaRx -5C7%t$*/(STmk?Ja =(xBg i^;b ' pk\'?>>}C,<߆A"҄\j; fO3q^ҙ}]Xs BWW-j_]HFRm`_3#;{8ˆ9F'UjwpQ_.,Ոl2U!GV)PRb^U#6#^)G `W-UOa2|ugjMԔ;nxb/yBOQ 'G!)p31'pؓ2e _uO1äe2|Bw쪝6i{6''x]k;thB.s̞Sc1x^Uёim }-zAұ4HwjeqmA7 { 6$ݲŠ`'D3PrZ ܋eB], D[=3;c5-qG2^Vh L[zgfTu~aҊgG1%qL*ǹiV}$VY}x6^o{1KcMmDyBB;5*r]rygbCˊ2eWGQX0 t+_,7Ƭj6lfBkn +I;] 770?U}Q:mxu͚`ògly%Q,6pH ͏D}qk<BI25_PfLwÊ͒).`B M#[,3+%F ~JX;iř]]~i3_Y~XSA|D7Z`]QK~ň[{:݀z@a~PT7La`CqFOco&| fUp_| DR_2a? B(/+Bc@)KjawcPx%wϫU,Vt: mOp$^7?SM+?P#.Q'*1-.F <sD&^ nǫ,4yJ_f ڑ[%BwMs>jCu%g:X'L݇ˣQ}1 w؅R%6RqrK&= ѤqCke2+>l3N䩆lL14 {}ɱ+0LuEgl}sџՙ=52^}_9 1"N֐:]jwz7BT@N)e%gӽ{l@2;.;Z܎Q^\l"9(ȣd:zh*.ץ4 oan>ppEdщlfG]銛k m߰j~HyH&7+G_ޅ:ߞB"QUp$W̰'ryf߼;q"sL?]Bp掿 3oR_cE<檿Ռ8VtMOXp+`FsEI6 Б/Gazpmؕ:Czot1{ @JE]9C-Gds+F_f:v"KN."afn w<(.hk Bsh(w&WK* _,na̠0@h'<..U|l.rUrPq7̂\Yd<3 ~2k?,FףB[93_`:|0uV? e"b<KMֱ)tkTWWG< 2U)z2Bcgd{RM- FrD3ACY?VS z+‡e**}s*^s5Kr*Мݷ@k~#"A$lP)fo`S&(A;@nְ4$ȣNV4p<;4h1:\II01U2@aSTHjVγ>Wyz98SeX]DfErmBl< ajUZE=b IJbX66S`*gqgNr=k|uꜩ;!AMF`啙~WY)v~TX/"/LID۞$gT!e 3WZ?>x2a#׆U>.&de -h_+DPФ#Ichgj/`] DŸ~`&ÞSO%znwbfBvk%$uP|p$o 53k#pnN?wF^d(XZHSyV2sjGUw {@{Ŭ6'tI*B4O6 Jg*l䝨aǘ!xj;7y+6άB>CO\IUXk[;sܣI|;}p0lqV;ysG<lN&j9''L(œ <µT`EZlǥu;Ǡ_ $b!_Ņ*oj+K4@'cu7&z#0 >Y0.F$)q;D@EhQkϋoBg`e1v 4R>e,.aЇ7lˀLJRT0#FQY[d=ŬwW`t0km }'O$^{xo9=aCӨ+SIW[ DW~.fڙ0R0J ?"'@Q|Gn#X<@k84Qs7d |L0)OOD@W /r/P\y:W9yuz*]&ߪDz'$s+Q9PɨҦU\')rΒT[ _9Fg~͌]jwm{zۑQ4 Fµ0 -CA&]˫n?뎖ڟ6VL< ƾ/]'I$FCs3T~1Mqk۱}<=c!yZ̉ wƹ=3w{[B&cyrX| Xxs(mLa 6l^6aP8:TsSf e( x h VO7'؊,>af:%`"ԹX>Jm@˱f,JtʃYkQŔ;QKq50~IvB ټKAnFl\GI48?M14ƾ0q> C+"@Ϊgɒs] Y#2FV`qFax00(e <7zx4) )dI}'FݔumǙ^WߜKЫP8Yhpc яx7P< N_N9bvDVAQ)ģHk N\Xy:5jDmJ9 QPK`'!CW+/r*QyMzJ26YGS@'9e<tiP8 Wf5Z|8ٿc," I: x\Ҵ#O4cXAZyG=e|1AFcQr}ok]r+W/(qbj}b)JSu;,^/ː^X:k(^{Ha)A Tu[0AvIQ'Qޓd28g_Z@_i66D 7J";jJD kOTFF0z&!lB޾9Q-]F:uob|1FR,QXs^|망+b$ )vCzf\h/pS'U>^ksVZ.ˆ :7),y[&W{W0O9NΚIǛmcOIa͏UlJ!.[)HL[|,dɜe=*m[UJ aRh~X䒽lGyJOnK^r^Y%OM/RFwO}rQ_~I'P2bDD i3O3(7aTZٟ,YXšQG!y47fHԃj7eLnl\Nl.N[3Q5{3YjT 𤋩 3 b? PQ oO,e)UYY$Ó'~ t*X%kCF颵Z;bh, }21{f͛aÇ/ %F|G(Msls=56bzʡը҄z;P1DXlTn?pͥQI}+-$;F[#ξ)!HG#S\7 Xa#n5ktAJPnzd%E4 .5Q΂3C;8'Ⴥ҈Z΄"N%H(hFٷH"t:{D%*# dJ8B%^6Z!g_|/{0+S"m-7 9HP*0Z`\wPj`Rpj<If{fDJ%VqeF!πb[UnKdr1iqT9TK{q+W-A-4,.TL?clMBV*vUX?y/Sg8IWUI1t OW"]:) Hm>%~ Ͻ? _37b=Bh"nP-L vKw[aoҡh6 qJҙ <}0 K_vQjI+x?Jk.is-*ٴH}u}KN%*׿ډ4Z,=^ (vq9|a$A`QP&Yd;B{|?fa)qcx}9yӅk8Hc{r::ZvLg ؈aU ?݇?<2~Hm( '3otgvQVgӳف{ 3kYEOۿ? [ƴu1%w=Zq4oD1! hBRXŤ1٬lb'!- 4x@ Zuͷ~JGMݎ`27 "+BT%~ۻ japQ9=$t6jYr59k @vOxZ./Y[\ME ɫȱ aJ/Yy_ Ì5^rIn|.u2|mS)Cp#2Yrĺ~Ĝ~IvJH{*ӤՠDh?Ī)𵕡t|ɇ/ ~K0"iJ 4^JGZ9AGFM*0C\aoH7UNxc 8T)M1\USFoi2<(iaU#o(}#CKIˀ>i82z@(3 Es:[,<5|jM=:6OX㕙z6|Q7$}ij߁8 fIKX4Y]|k1Ħv"jVyv`8vE{[,|N_I:TM#rzM6U8_d//4s:P\ /6PIG7}Կ@nؕ 8$5 N0NI 3@PNO&` T(`qm1Xex'5bq~i).viVÕa 2--Y銽F8%J]3ZF<34!4+G,e78JkMi>X-RC+ 9>6> HPiN_HE{TQ1BmDx)FXPOBۇ=]QNU&lsE>IڶED3`.ۈ{g+ )W5ްT% bJ߀9YJfcv8 }N84'K3eb8&zp|T(2ݖV]P39gUTG>kmaE~kaa<&Kf7H1nD!1{)hM^b$dPu o>="*9#/uh]W^ٻPd B y;TMhl[o7AϓoV\nWGLf1+X.VIIxje_$z`q`87Nd!'3yKS2cT9-@QZݐ#^Q/g''<02TtkڂJ|II â5^JTvB?fe p ԮO- -Y\v y5nj n+,v; %@=g5Fw>ں+LqEÝLr'7}8 za٫ /n3EU ubl NXK_̓l6-79 ߣ 1ku~2a (> 3Y + .I(`mpġVU7 y 0jdOR6hTYr`7?XFV6j%V n2<4V,3][~AWnhN %gnl$_GY=F \:=mRd IL|A$Ի>&6{¾"f+Xb^ 4t!|oLx@8#)wB"`|ٚvLbZo)2 s(j?v&>֨n"6̳ސ*y~^" Y,4l =|iD^bnD@G{n$Qg(QZ(FXw JI YS(xpҁ̙,)-XSz$m^FtsŜ1;W&g(xC5Si27Λu8,Cɏ%cz *%T(ECIK2!rAuPR&MO`_;!q5f6QYx{T]Q'ӢOLǶkZ>㹂5k~j-,Lal@jSRQo۾B%GC| A'UABet8rq=SVeˣp~Sr (ßdaW{='ob'oȟ9扦\&֙'/MЇ pQuMJO( n t&a!wF)A )t@؇'n vVȼNK`ۖſ̝ic*%9> ׄXn*#t#ҮӡT?D/oa[IOJA qm &'KK :ɕfB.˔7E{2ZM? 5iД98'Ojώq#W&?11=NOAA^1'"cf*O6GGctYCm"YbGDog~ƙ F뿹80?Wſ؞,7xU0t+0#nIӘ5$ΆCAn{Nhh"/s .Wh~E 9*E˜sÞaBvtqh%^c9&5=@a!י [)Ql/i:Y__u Q{GWzTT[>`΅7pW@w~Îg((8eE!PZ%Gӏ%'냊KRB%KNkQZ,)f1tbX5%oN68ATq&w2_`ر@;_֐ ߸|Q-A;Mox?L |'婔ObVZ7%7eu >ur\֊yJ. .Tx/~n61Yr<J%@HV֍Ga|>= SP:¿NioxTfCf-7C5X=#C]ԇIm?uҒ:n'2zE'l4qbe2\0`yB$ٳBTkU EmIװ4)q~"xnu$<^;+AKnjV/WX pz3N&G3* ď|ET)T&5!9LjZsg'q#Z$_8Ej:5HBpI>ߟlU#c-*Sp?Wq' x Hj?&7:$Ӿ#¹s\-pq*w*q5vslvWb+uĒg"% DYprWꦕ[,uWpE1gap-8w;9n:Za9K-[ Nom;!ǏP-b+p4dchSwt5H[X ybdݰ o@ DY@ a-G$/Gw1$ş{#5\p:?,K֧Klbs .y)f߱/[ˀ=N#K*tI^PixfĝL/a>c 8WTAhUv#1m=ALdώSDZ|21*\ν m(xNPfc$1y~. \f6~K_)}dGS+dF LIZW$4>߃0@cŀ0!FA\UxnA4nG,Xem 0DAF#].CYؓyʡRYɾWY d=XN!J sJUKW#;͇._\W\4)5 DG(^]ts fpf.]P=9#61!fx5JeV=1dtۉ )ԒLv] Jv嶻&TZ<zwm1숰5;_qe~_!mPHԘqNa.vr(Fx}]:$aG6u>;t7 :dP ceޘ*h@5Ad2A1#,Nwf~>%+^j!ts@IwcI LPcJMWN~ĻMX+L܆g)5b "̃XPC!0D {m/D?;$T7*_A*_ (^7 qlXq9\UkwXAV$4`b.omu=vjĎ e 8"^6 H||^?-y{G7al],$uDNl*h}fXj|KɢdːSakL-k3` i)Cwsޑ ZUwU=]+^+vn%óf∞rf9Mx JV 'D7^ u̱ ~w+ 4oO\t8kD#^桅&#٪F65x=?'D"~rHR+"AB)|IJf v q$I/IUrtayeՋXLNBW>~ C#QV<[l7]Â1A= 7)ؔЫ!Ϗz3`lnS)Ta,V+krjb(._lFrl˂6W p<* uzPSk/?Gu3uց1c=̢뮛l;?򞇨`Ғɱ5`IԘ'=#!ߪ )`D&O\Rpl\a`rA,K=cV !'W8{w] 8t;%Hƀ/TJWܘOq3Δ0B!?,GuDs=hVl .H76F(谌ST|/_k0 ӛ7S%u5ܕc=ck`^E.1P_=eE>P8҅/VZ`8B}}diښ/Dc@ay1Tkfɳ@ZWpn(}~#V4 nbİtR*I+MpMgY?XNp<*a"q1~/O_M=5#|b-cW> Ŵ^X /tQW螙wUG#WǥOK&|:"[EV^t8PAI;+!xF&زEm&23rK{Օ+&aϲeC$pi4Dзr:֍u]$NH($ {=(Brxfh6^nFҘ]Y/f?pCy[n'Ƕe`)lk6J;Ds7j͉qaj(jq~'c.42ߪN TYꉭa_ enβU$0-5Ye[?n#$Yyfvx`ٵ|af:5wjzz855 i(;%\(м%ɳSm]x;6lsda9y%#?DmccEsXս 2; M#eU^lBfL%g$_xbҒR8.#m'AwK:.[5W->rDylVkFf=  f(߽pG{bIPLFcQH~gXB*Ll"փRG9ec td 3Nhv ;(նRt-Gd <ȘL+ ow)| PA99cqs^¥'>2?YK該zFjC/]_F}!2[Lt#;F5,ݣ`p6 >dpDߍP!+ϗ˖hbٮ dǥTKul`ޓc@d7pJDlgiF,Lv7)Ml=TrR 񆀅w<=?5KFȞ1hF"-\LcЮ"~|4nucݟ3Z&^1H!]=n^BZ ޢ6o5C WyHgoK_дHrp+ut0iCPۦ4+Q4N `aHT[\#wen" WHo9k2[ l HV&RV3Oai?u"@fa_oAhT"X}tfF`[ڪŘKg GHȠ%Hڽvw#Y¸X=MIr/]gઘ?{~*ƃCij- X&v}ڣ넨V)$zT6',PYn{ <*J廞Q[˺E%Kyo)OԔ]~>$1`$)-vvezO>L#EMhڤYǢ$hOsU5"k'HK vz~:%~|?쎚x@:g\ˍ(Yo/hPh @(&KKS*}p=w& Ey ͺ|_!ikS_9N tbqE:Бuݵ3M0f1c qFz7! YIrzQ_V+M6T$p!Q~wn[6'7A3LFFۊ#߫Β))cfkA95KYN} HwFm'Ccu3OJ}V.>#Z8Pe(m5ˋ9 a|y4Tӳz-&8i漨E nW`}|{'8 Z4znbamvh۝R ®Uu*Ű:#q̚N2?Hߘ4 #^IO<'XO3Q~X˒:C.s[3ZW 2m9YsE\n|aW''D^ɷXޛ=wItuV ."OPx`$.fk.մd/-cM}uΕ Uq~k%%eLmrE27ѽL/=?j$"m@V smڑEbQnX%[LBѹw%#44yLZ$إ<ѻz]fG(DFXkܹO<3<mt~`L}^:SS h F?mi)"b0/ހc Hmܖq߬Ic#}d0+>u=7⻠HEŎSHXs婱gkW5-L:ynWvV9h#9նlRWM->O9>ٴע\q \g50[g%`2k)E*DYLK@U$2{Ճ31v `OmS[ve~ꬖjf⇓?YONRZR }PqW2Mn֞Pbńb YS`KPJP2 \2f+pfW[nHh6EKR\.*qd5}9ot5T"L;n.ջ>KlGw2fr%q#AʾVы;6vc3M\ȳ`Int:hL Ȼ}>YC;$kfm-+'2akUҖ+;Q˭̴4К9`""ttS $B_;T ikJ'-?}M01"E>.41W]5|]k2{6r9G?;I/uX-'R\0qx2.aq!`S:)8yW [ g/Lv7A6(.eI>g?at~PeSOd.wc~VϪjFIYZȼXg\uORP"+B CVиs}wZ ~<9[hm5*c ؜P:/4Oܗ@%dP3;_}yh6j,"&6,ShiӞ)`K.&(Ɇ׵z(L_q(g/ ? u]mt򭲛 Pu_'))-ȞdFP#Xo6s+,?D ?c%7h8pMօ6ʮJ&'Ѱ;M؏<avE)~Qh=9 SEN͆z\~3|JȫpI .}ɘ1$A EfKPDJ*5pԪT|!%̓36& J 3XL0tf/jDa "q* #hFΦuy?ف0E;_vȤM5ݨj[kZ9 |:bla'ZE24eoo.] WI@QԔeM6eW Paݱ~껏7bLߪ4p7R׌|.lv=ީ`xR̩ 莃VTNT- kĈL9@"Bz|Pa Ѽ3Rzrokptq'e7iaBdȥrD xb1K؋CG*U^plR9c]$66Hn#/_TnZMpK.Ȉ24;_[h^Pz AqxL;'Ie--OdEym5[}SgTZU/8#̴6S{nv6"8DR;A?jlDduG{ܩU}>ַqp  /T 1_.uJbwtE4i<P(u;5aŊ: F!1=˥0~g[J HGXIN},b᪶ 9U_T YFa˜kTϿCޜA+!9+Hac}sE36NY!B;e=1 YXrXVWl4nk/) ;FXڽ/wJf_Y* pקgT0Ȱ\ m&(a-S $ʗ8ױ7 2v;YR\uy._!-E+NRznԁmߨ6YU$t 60 xXҟ'@R`0⑈v(TQO/UipޢtgKxr-f`erC-Ff]X'{Uqܲ#ZSgH[O%ʛX)_RoW3M&Y[7.?zٽ GjsמTz4<C00.CHHb/; W:zUq ?fFUKsKt;gF lnnZ X(߾֙xB4.%C8]dlVM9Fmuʟh[ l +ĞFSY# Jku"DwY&AJ K!BUp맣}MW*d{$?Tm3&d:}D-CTZ "PSY'D? ;T& CځmDE{Z ͵hv,:4?غjX9YoIAmtgGen[W>* ؏F*I` /ٔԒ"mR =@&|@7>2$U'O~.:ݺ8Q5=v4ƇIw9\o7:nCBuݬV#;QNuqF}!sN3'вTԱxL{w]=#ꮬA?p`M̒kv pK{s1~  L-y))$syg/=?{ޤI % YWX=OI7{F׾FXTAԴoв./ { c1R]GRC'I=8v6h<]4S*2\ 5pb;]Ҧq߯oM`ݲZ1mg篙Kf:%|Jk$RƷ=JI@S[Z<`R@PG6éh/ɢ4>rB#SWGƐȬ .|iRޙMF- Z!c k]ݑjy="0h,ܙx4X*GF/-k6u'#kqj 6Kщvȑ[#l3 ( ܴtP?\a`ւ>Y甡X[@o{Kkz7HŒR`7S:["ְ-~ª~~j/9(FS,F0=efpT+@n}N,gC/ֱKl^J6S ? Ah7rnj,ɸh8zzryw)#)D\pjX T~{Ѩ!u `N-yvHY=e47T{?_E')-me򣋓ۙ0too͝wRz":ܟ(~xr"^M`!l n'[@k Dv:XDyb6#C[.7"}uPӗP1L:ڰ*{or .C}XMEnzw[ vaNW\wO_J"<3|'|sM\y:iUL_oa!Ca"΍!)}P*Q\h3@MRw8+I64 Ž@V"bP8΅ʼnZ4یcm^-ӍO*蓿9R0ā 0{d)0qAw{֬b(]#!bʦx.'p#J3ā*W_`Ɯw A+?gF7FYMV֪Set] p Tcx߄12Aԫ f; {n?֙@-b+E㊑cMxQLMTFlCѽ6WKT~]Ud=nS+ʺm!-ߴ)kr7($Y?{xsjJM )r=* 狻G\7,_"X~˜.zۂ&፶_ I`)<Pr{}(gbW$z@*cƙCUyVċcq&a%e+pݫHЉ]Fax׬ӛ54%,y&eG9H}ΙoGM7.y1Ï PualP~7_"`aEal w ` ⱅrUjlPkFm)D,c7@HR ,޲ s[uۡ$iHWbuQv9zȡᳯxW:P[ln{_z9Z#P,W/:9c;Tv nCPjc V9IwOp<%1L[jLkvC侹G(id-3tl_#։AGK9\ۀ0!p5f.+Xͺ3sŒ`ʡzL3rs֎Ђ"@B&B ˽0,l{Q,*a53TNfUM6vܒ%.p,N\\ y ESBj<)wS\8:<;4TÚjҮ{[iۄNN#ׯf1[׽ Ѥh j͸}(1PeWpzy/ Sckn0JC+XICh:}{[ ^F?' 6g\HTOp6.8ʎ>_j?R1kI-Ia5%Jpu ե5!&ӵ{`A+AQ|āo0Ʌ8Bpm[xɃ/[I/%J͏9?wvV Qw!pܔcfbF9 /!L$ɴlM΅#IlTҝ g_n_*j{ }p̆~ΨUr\*1Q'Ĩ4JIacvBcwS2i5GIPv#Zb `܂uddEQ7c85_v!#*~Q7l%+m0[0oFZ~A jr^ DH*HܱC^xҥקp/z2 $Àf7>Us߾7y$1V+`\a!_h1'.' 5dս eMFTJ#l{O &G͈2%z :e_6r^v6ivt z(fhlf16$OnmC^.P2]@?:! t!t&Żu1ǿVe)iM zɈ9Jt:W2f$B厮BD:2N".o41qSNo׸fr~T 9oFqMfa+*t?i`kc3o, Xb!p/Jm8<{w:&dz^J]RQڦ 7C?ss )۞+>xa 3}^b+yk,T@) {u͍q/6~%s 86f£:3bMe|]TB M,|Ɨ[Իv@WndV'^SX šȍ28=(RzCLx T;wvGjX老h ܱJ@Ƒvi",G"_0EwY|DOK>k(ZxJU D"}]R)GH,JYX1;P\q(3@4(8d Y A\ٙgݱqګ Uq|)lGj*6IߛL+}<tC'C[B1REN׎{H %["hL6,Yj5H'vt˴X^~`v<ȯ t)s0E|߬. ~K1k 65YEѦ:vt,jo{4mx "I5@D_wl--]#ڙ˖tTf]Q5["$:@s )6̬2B^~Kr}W%]ּ͹jY$CY2ٽLܝeKƮF2?>78z0 y?C>C9/QE-*k+m[e>Y+^<`V{p4]W2ǴX>g@s_⠪X6վ bYD\N(.h8%aI}n{{#<ᄰ*>ĝ`uhw—KXFz(fPQC;'i?SFZbw -Bӈ*%S HjdƔSBZ/GC1'@yܩ'i`nwUDsbc4jS1d)Ccj^)[ MA]RZUEU o}eM?{PQI@I8ٚd]/|yf=*Uj΀'VqfܥM˟ }}Z?`]ݰ17]3.c"Yf@S»QPA9'ԯ%ao!@.5 \  \7<$Hs\ AB6궥tA_ }tNySBRDd񌺷&5dYb!G$,pKaHE+?t,n3yU6)0 klzO3vW) ;2wI?DpMګe *Fx  x99%^[ud8K)>(OnRmKC<_i& f' pRh_<,9ACx-΀xi왽wko ).8{#_k4#5DfCI?)=fM+SIDlf҉AsߚgUXUdv ԓ^̄8Cǁ{eMiwaz6AB=5-3K(t9ZE6k:sMtwhEka"zg-|YLK4Q~#Xkm ,mָ2IGnj[hd#5N&0 謥[puvN1Bt=+>G/5 NFsНP-xE;X#Ը&C7s:*:OiyP!3CuF[0*NDUaH(]: rT5?%º72OfX2.Q ]Nbb\c'W;ꡌ{.1C& Q ÎHL/$Zt%CaH Z-IVEeA9t'ޏH*tf+2G- ]:͈ؓ{::#YA:) mg;nNĎ0ۤG=jOAKDWVX eQil"w{E6~{l3 azpD9R2i(H>빇wdǾ v̽8؍bʼnsҋM]\VW.c51I %6ZgJz:ϐk0b46 0~ [uc]SlN\"הWdԓ .`ԩh!c~E~eTt%AAg鷟I=7DtnlOpf1ZrZEFr08YZ[QP"I Ћ 8o]QgNaZ?ImQewS $j$aNɊ`u7#&]lKhZgws@7?$;J}6QU rGK_>ѐF6)bI,b#WWFfk'Ą]+sg\cIdb31_ڡ3 ʸNW+MT3ˈo ? hMQ"ac`TʼnV,U\ >PU2fxq| i)]ߺ)F, ?c 6(d ER@*>*8:goM7xf@T5e#|B26ѻmrBo]{QMTbL^۩Wep\^u !7AG& _[+|Q$0y)HVG~|dӕQUʼnj% i7l+X+To.~zMՖ%ᖵ%=l4#^gSwX]L&Rn|!PLxh9{kg1Nu_-鸌F8OPxc$|*zSio@bU5dSMQ&tQ G*:c;@SlJZpmr$Z=F?a@k :@J*)ır[J(ٽ1Da!ZMe(Gď6tDŽOSK7;fB)wƩ|Viz쿿t]tCm`!yT5.R6,]Wϵ4X*7 2p3!5DGU(e2|Y Kw_2[Uq ;¦yyHVtAlO8 Z +597L AҒ|y[$EDݗ/Ubs-FȫK#Ni֦Aon\GaԜ)Ҝ"ji>ķ`ݽ2y6d}?2"'7iɣ txuq_Wqcg2bXzTek{eY(j[v&ػ?)X(ĻB&.bJh x}`HfE Co0O'~#- Ǥ܌1|sWMkM}]6MjpD9Yl_45R|)zc:bɣ]&3je;J93_%Y Tcbf´bAr|9eʤYl0ohGd͒[q\u;lپ:u%(u"`a8'F^]GcJ o?m1 ItYzr.ĥ>(]?b3΃+֖RVSUigA=Χ=+Rʕj(u|@B-_t]I%dS)5a:X+B}mƜ)LOFL8gkS|1zߟz,C4?XVM1[ЊiW'q^Rc*#L10g-H0/R (K!m_27X:K/+-{k,=pV'xoLʔ9jG|"\ vf@`;!c0bZWpLvҰDK2 )a{S̄Jo?[ѴNpTΘ vyq[b-nE *yD6om%XgiVgq0yT ]%@rI[vT%GBYТXңtNx[m PzI\[˓NB6=0;`H>/\@Q@$xZ۩GET%js[k1ԍ.´R[ɍ]Iht_Z}3s-9i_=:ڝE*@"PcRa(o 'dX?@ϨY {8v f=W{+j!hq3w:?59E׊U9%DUo_\j9" TWJj"x5X.P^xb\d '7D@RQ:!l $ؼ_BAǧ="?ȳTf z~77:x37BqGz 3\W&<ئ^/4[u&VzoI;9Lϸ*c;\pL{kaOAv^_O5&Ii5~^g+FrD;f/4ׁ\B@B`R1߿մ)[H`ko?C1IY d:9ȸäә_ 'P}i,9}fMH 'Ջ(U]gLCtJ$hbosMzTj C<,I"kgx>nܒ#w4&;0r̞5rmo_)]lMyc|1Qڎ}̈́[XXy*- HAW,Ӆ<#r)QK H2Gn45&K0K 33 :۶mOj-Z'cu?Prxc`H^yVYݰl*?A*zTJѕtbK13|nF+F*BXGz N8_&A Wr 6nl\ BrNq &Q1UfV+9f2D/4GX7I[?KB a6I  끺h0e8lf08D򱘋W,c_t7#_#F.t++P35=!(lb]ʪ^Ib!s_F!1}:BD1xq@jRוa3&<[ w9#>L9H=O5Aq:şt/L OhvIw6+FѡG, {g)I.}0#zEYAڌyDOH:6wZKQx(ʁګf( v̧#%R4_kyM zƔQ.*{SѢXTJ ZfڟD4UWS -$EϘ<.phQ_h]xyܰ<&/3E/fB\ Os}Y9}1s2+s|n;8i}Fy5^7şqLH펻 zG6'6GČTKɲam/af;'Gʵ=3[99zg7wx"R?IfpNԸH!$ 2礰O|0^.%Y~T]Cg_q7N95fc3Yika6Ka/q |ojw_,ڐglou\qMiIti~'&ajl?@,O:% I1 Ƒ-q-0(B\9eҼCU);H`w]OX+xR;j:ęh|6Da:x9-FU sЫ9kpa؈Ik/OgZs"iNjcz rDP ׀yԙcWd٤`2ٜ/)L9K}aS8&ͿXTtڎW9u~DdX$]:Jo 1]}&J݆F <+$qhp؈qc AYc)4p؊ zK*QNaJi3k xElx;+j$']IֽgbI f\[τ}lxpI= n< p<.<Vc,im߾搄}P6F|5VRWz'dwI-.iP_g,hb<=h:NuЇZ>W6JF ᠧ)SRO$$@7gG.[}'$NgN")f$Z7p3Vzҵ(^4)pu#_+eGw=l5MYpLLB.@P'' <^@||JFyWS#ΛS#p爟8c00 {aTz^b ؕP!JB[jZ;A.Ά;T]6GUчw/l Η | oϕ:ޤUZvᵅKURս# 3D eX@mj "`'>~-[}[zA3vy`~ZN"<Ujjں">W7^PGMJDB/ڵQ4R&_XCn%= th|קBMF@\VFq<BC4c>-P=T:̡ +jG(Y,D,]VRlU^{3uMB.;!GGVrrWQ-`<CkZki"]1wjЌ#.244Ax1w>Gdu(. wּwj?/PU2h..UHD~l^&WC e*g 4˫Y/c -Y,摋.jas-M>bqfXHf Jҍ KPێ!b㏽rzU~L#<)&5qz? mVk뽯e +L[u}ih~PD@s3v"z2?L(}:JnKROw*Y4B4c uR-򊝝A{x'&]x$*4dpZݵ6ϧPc\MMODq AGy|r}uI]C~',xNtcJM_DD1ǡnN%Z`-l]fVI_YЍm#~V&_ԏԅ1!QE4PG"2+I#f]a~&~6|II.~0,aFz$MꩺO;`v݋1#DB|f3wT_LO^Iӄn2HBʄ=FC5C;l_=rQ1vH-oG*W"z]ZC&)_Z3 (R`jL$&utJ5N n %#ǣ<(jC[+w؝Nyw߮ٷ*]&t7Ҡ#u.e*;&g\Y ݇Ŧrڲ3(h;&1bWvW\ ɖ#|zנ5X> s)v)yn,fkFьsw.u5 )˨ܧ\Lrɴ8GJ'0_Tb-p~ʝ0KzXF,BFƒGGvB>9,7c!2OC(0qm;Eoi^`#MQvr?M@=r|#23d$$n5,"BԀ:D5fbm qU`"3uP"Ad{6v8ih$|xݑi7GlS%a"ǖc r+^~ ߓxY%Ae+@`4ÿ_g3VoZ,q*G&)N:>zeqwu{dqWc :_+Xk}dο_h;g$ܣGj۶xxƴ(nPeytjf^%}Eut zgС{k+r8ȖYE(PՏ4h&aO@$Q-Ue Bj[-m;c!QDTZ>. \9Oc^й,XxUfE_Xeݛڃ_j`tϒ#߃;!;'va@86vqW+T-yް(Ţ! D>'$|NǗ_khy1z.6cQ6 zSWjf -ogS$"ƭ%!ބOI?]'~@rOYJ? E=Cok:֓8Z ctnZeF0w* !7Fr~b ݃1TZ3nq.n\ߩ-,uAӼoC ]p'ɧ;FH VU%)6YA81}kTɌTG!}7ߨq&\4KWN; MW̃R '( =~pANՖ t=4#:Ûuy 2Y)eH} h ~*]\cZU0W~#Ƽ8c'~㊜Xc]{]m`hO 'T[uk:sf0(hWtk2ɪ."'{zQBAP>$jtԚ^$' 1LⲸ~قH H4l+UQnS oF)j!9L{gU{d fǢaJP?7<<&DX`dc&^_8ddNv+-7o|u^AʤjT##TP!x/g1³mTkbuSEfh8C*t_tƦpO5ܥ/8|9V]2w(w=*lPxTdR="3w޳0ݪB?8/_c'|Ց 8Y-] }9/`/2v[,x=y+] ]!kUw#zb&xϒ?K"OI;ఒ9;0.#Fa8lOx:XePeМ5sc+Wu3XBڽ1bp#U%|]^XRleK:4c[!ཥr,303Ζ5=.[nK[Z[gh,gDog})*D_,}^ a~mF,/#XOvh \71YX504!n_`a}zU6,L`_/뀚fp>V]&&93sf5QG/D^h 7mkPՔ'5H(nͻ2$w􋶗ʸFvL3yu~s&=fi&= a (ÄXC}/c$ӒRN+%k9|GSƻo F.yAw@FjP<׋OzI @6[0~O_DO4I|G^lA\2̒^4J@jUU E{ta{0 ]+T~˒.K+ UVwKaBՀL5^qD\z%|y]l牍c}GCR˱co-mAR6(g"O|ԴhFd(O9Tun޵'=@J o~Ɍx]ؖ! _VD wx<ҭh- z}rY/o>#ArT+PGm94(-ǃhtV*WGMvF$,tf@s~S )%7L=BhBAcp!fKm*+"EF  2ddEѺkij74SPn֨feĪo88,tm;t?\sFz<"C5$Od[]z>"hߋ 0r%l 5+>n<>1GXwlrN ٽcCa4'(CqYJF LQW_"Cc/9UlhQ @w$B@+\X6!BN+ErLZ{;n/5oj21e{pH |Ű |֜H7zS(99DS҂-g"߂3k}U(:2m$bP3ːS μJA~kH ¨;F )l B4n%y'Oyic:}uV; UM 91{foL(ooOҙ&6 mKհSi7.#cp!{iUp5y5KR+Yƀ*_WKW^\<zTS%yy걢S?2 2_n$EL\߆U {$pNkIIQx r/aVu-<* HQ]O"zcOɭ9}/4yI!)(żhzaɜ FenX0A +y$HV'ɤ_nJ vU=S&D;L#QD v1U30uY`BTzb* g53wJ9L9XT/gK"}#Ti@~yyeɍh,L{q,9%Ԁ_~'-"mOX,JyFC+%vIt݈-4n i5Cf`cUO گ(B>]6) f6&z]E~q4R ^i5wXW?E`_\Ou hyN"~ȕ#rom-՝}|άχJ#0Zc]q9yK;Hx@B~ k8!ݻǤ1qϙk20qsvM#2SNBdz{Oh 79Ӯ'ɭLn+{-j(#5Co>H{ƤN8HJ_᱔ IWOI7wwyջ 1,:,*D[_3Ca! `p2i^d2FiQ| ,< ^ЍFbmҢ-E BOru*d%\Ժl3Ҋdgtيޤ$u(y.QjXT=nsC Gk;hյ6ڦ.8O~zQM W`;ΒZ.ëD܈G \lyRI=OuE CQGL(8Vp:lGZi-; 3 I dw_&Cђ6%)}e%CY,3}ՐI| Y!llqՙ]\TtA!/;Hة D<~%5M95xi'*ֈ`[BH={${1X$+`f}+ϊ ;j̼􈣀CPaύXf?`3  Y 4.z-.!݂8Ŋ-X\Lc8\_<"UDb(1sFqЃ@7XKO( <RjuӇHޡ\ht5eg6J@vΖ2%tc&] 9R {F-P3I ٽUcnkSNC~>3 OU``u@T$Gwc2NFM OWACXg|}_Hq6YinZ9U[lJ)a,.x*\+DVrFPS38,Q@o-(?a нg3fB$,R$=RT7O[Z~h)OL&kHnč>3Ux|nZ?dl;]o )a>Cġ14K6 f O)\Sٌ.TR?#' ƣr+tinܸ֦Xqz:{w[BseFw\Z%=(9~L8my!fo.*o'ٴjݩOL|.Զ ѴS46 %9VyJV@n}KPP $ؒ?+%(_!ē_:|$%0Z\ $d#:ː3"d9UJoYAm,*S%$l{o71@&s5/#6n){tvKu}K !09YCDMI+.PPc+4U3A;mVyj _1HTi/˨؁ Tnݲm%m}lB<`(y  *O USE _Fjer':b^z9>gV^5 Zyy~s6cqP u~asMj}0tP@!SgwÒ}Ѭ=)گ1J}Y١;DBGC>\^b;/dti"՝_f)#^fUE!U VܷlHW'M͠؅*P9l23{xG,$6Dlu@^ L!;a"u!v;':B^ln7Ϡ/#&$?=V呿5(T.rUy_+R;z Y:9aHs1X6IA`}{Z*m^TuJ6@B8/)Бz[&FR [%ɀ8n=e'C!@Ȗ[r\ ͮ<mrY%LM,f@8%06YeHElj0^Lj URh̚38}mVpg+0JCpE]C;U iEPrgRny󘼑-(prMZ̜Rw\Jlc5@4kb;ڟY+þk9(ܒ$4<,F%SFޡuf"Ji2et4Iu&SˑjyD٩iR&~F!tDfKoٯ"jHfJ;&l$.ײy 9?Yj>8ZZѽ=%MeU1F/.q$6栁[#tc{{kN` r߮r JsFMU!׆HF8 Vςq$5Q쟵"STn ND}]+ ;h_n}z9m 36B)% 7SYdV1)ᄖ<=aUS>f5DDCxAc4j8osB(NY}/!&Z:F07Th anqѫ00ڳs +bt'McIZ[˳3A%eܙ $j_gSpͱlhƈĬD}|hsUM?ӚվSo$?;^t+6ѭKV@8렙J%Xd'eb$Z0S ,Gk[Kf?\sɆNMLrC@\:Qm]A9hBRѣ9f׉,=Sᐓ4>f )hs<Z&6#)xX✲2IPGp$qJd`Pk+R#s]Xu1ugœ\e΂B&mq](DsH KKZhJ;aMKvjǯve% /&\U)e/\O emts|sSsvb;k߂NF\O/DU;TOuJ!pXVLFN%x'OW"S>~ _2l͑*JgAj"vxsvX53]ށ9MO̽6gNMwxLz)Mmzr3ǧ~\߻]RrBtÚ 4AsYM Y+t. oXd%AUI_$@5z[e'hȨ;|q" jhDJ#$|,ӄ,J)ܮTtixpFsV fh0}k ~tY*%'y Ih:@P;-SȶNhOI|>\")OTIܨ FׅțΕ6Иj"kh`okXͶjFAVAޱ8ˇ.l\VxZŮ/@okcc{v~bĉ|bF+zY@oҐ{8@겡1Fv_ʗ z}\TD;-m:8~9iӡ&;rlhp? Myqs=TW3-xA=%lzОbiU@%DHTUGq yk2V(7WN_\l54gF訬pǭƕVWɡ]z@D4Trxj9[tD <I@Bt.MJnpB΀Qٓ|_xwCj'rOѠNV^#zg{ q@0CWzG$ <]>|Y8y2@&hgj..+LEzb 㽎p'צLצŞqMYE>o[aT8_,JbqQnY?t> @r6p?*/Zw k60xKU.-v;{lGg{ct<a ;`~} md[00 Xԕ0Uo&WIN4/*nU\Oc_t _z 쉼ϟ SKiE@ɒ ;%I&شӗ1 W~+7EGjOkh Ni!z7D._^7ꙖT`Jpo({I]o)LTs)|s%WcWZ[չiWuMF.i'| {߯ƈ*S-kpivBxkaǙ}:nvp&v6˸.0+\dZ^7)TcȠ#)(D[44Cjh F+g?J嚀Fb[LrbnDgN6@ovD߰CC7)[@Vp*Ƕ7%YC_hש%h 'H8\\ϊoŜWF.橜JѤlׯ/"*THvtiLԜ^J I9ː\>k|_itꅁ3ToBھ  yRs%K0sߊDJl$F73h> aO]^5Ch~ut'}"b}=D9nMWe(@4ڍNY q<Բ'-Ylxowm{uQ1r 0gƇYFK@(gi6aH͐|.~:?ڏ& ;|zZuؖ­.!%}eKw4VOO\jm)Cghz} a(6==IYǩvd`-s#"J5GEj C1K WvGC#R~sZ/|M- .ޚ,r7.6."wp6݌M[PE,_Bǥj>z(NVI ʧORQ{d}!~!m8"!+{F/b+=ݠ !|8"E <]1lBK[ąn#P߫SEO:V.mviWIK?a\Q1U&FDLYY N_v)Ȥ)w[GFX+h~&J~Ћk3Thut4b1= !*^ ҥ`z;!ߢF]u 쏁ؕkD7`*wovMECtǹ Bqt~M i !eٗ!+uRj[`WDہs EasZ_0Gk!׈ǫR@XjצAӷA:)D獖+NDŽ6ζU5TCI深Ҽ͒wlaB|Abȇֱa<@α_mvjQQՌr]b\B-N1 'ޤXZzzxۓfRa u5Km9UH -2,>YAsܵ3GJ!<=S~ _aa^c4{ݵz6:+d31Cdbta>d[t 3%E甗|W2#}=՞R Dvk'a,5q3T(%dh,ޛ0G.,dz5>M,{l `NM`@2``e4p##NAX>¶0XbZ08ib20| UZ7 M GsulS 02QCSKcf&KB4υXAv _7sx;Yb}QdX<ڸSxN0ܥQGd 0*;ǹ\'6 ٵP@&_iC|s#h1.'Wi9GW}&6WMxQA<=~E&ax޼B.7GBC6"q!3xdV߶.:}ju*>>F ܲ.C2(Se'-7Նsr=~>,ww"v&P {١Sm5ӗ%M^}^āf_TgER=?;si TGH D)o>6 \Is@׵CXXbt䭘0}V3jDRʫM|&"v.kZe9?V]RM9-w8PHic&%"$Wgm p%śGL:aDsoJ\T^`.h1 >)rPFQ:r"7AȆѮsC]1lXsT]|@ۧ1'!FdA.m !{:2h//FyXz>G0Gٚ"B&ȟj5#ΐx{2ܳ 'NW|&F⃖X{l޺PZ$CA3 L}3מ 8+M0~c>S>:eũ_I%0)UM-f!ف95V}{p~s/3ܡ pw#~G&r>穬,D:OlUQ-3< hgjC4YFp;XK)쳾QtqfW?AMr۽&5)yE)=  UUy70_"*nt F&3C̔V^H:sOO6 㪳fӟvƐ\8mEYE.℡̱<&AsfȯpXVjcvĤ-0Ax†5 u6o3{Lwr.eNL#bˇ,Q.Ţq8@FX0M7Vc) gykF63ٌ`jː,xhBʳD_zo&ޡ?^F;P+OR&}gdhOV];*\Iiu|Gy9&XkDY!Ulh+ `ft /260D؝9ZS0\U+`bOxiDO"(:ފ]]xCz9$p1],1%SؚF$cS'LtC81U}u5nOs<^b@,9 آV;QT/9I;|0>]$;f|cYhugwlĆ6>c/ 7( YV&_.h Ԛ7Mt}-"udZ/ $35: ǻOm<H^24e(зL3"S2CahVF,x]!ڔy^UW?7%_FP=C~M^OpyăϚug_y=;:vX\G_"3',a/gp7oq1B]Ű+v~ .9_7{n}Pj2tHHiUg{xe(o^Fk Y) 6n=6MOgv$2Oyn9Z/t%xFPOWteq&=N(^:Ӕbv$GQJ(mo4{ZI0ll2J7+Ď=QIڋ3dnrjg{'9Or9}-qlP<I#C+츕H|p 춾!zVO>+LJF9-Ei;KöCilE ju ]Ƣ X SlP8Hы׍ƅaVT ު3GNX.6w7T8/D<jG^6s `F8)FfUKrzhX<+jgt}DCzw6T+o(T˃pO"ٶ3tl´l~B!hn&=KX4p_K9Pٞ~OsS8t`7㯷Oܵy@ d>ERD=VCMALQhHGM <߹"YO)l؅޿Ů1[ԌjSn}+ -r|`DVq,$t#}鲓*wt'J1ǽF+LbF42Ugysѯ> fVu rƹQ~u2HmIIh  /a4/ uTwru  #"y4L;/{OcPb`<ߨFߵ&%.Td,?~?$7GrZ[9h=E6@ (5=2Zuq+֡ka~nsdƛ,b8K$$*L%o$RmE9nJ߯Y(h f.fEz92 cJc7qraw d̻:5u`Jud`Wy/`++o;G&e(xgYhռA2f"aqp5%.TAh@ƴ$ck94ϟU KR9ulF`R1u7GJԴ/E^]*q ̦JTɥi1dX^^ZnjXIi%Okm7͹ERXapit ;{o閊nPQD'm>IحfPT|xJLZ2€{!qz4OWYw)R J5ST1j׶T 5=FW3r8*s:8?u;.>h)- /TZN<^8sW֒ZQm1b]楶T V STC ZA:y v!Ph4KꉆiOU;]Tζ+TJ9n4Cb %$F4uC٬ ԀVY79)(~s'*DUOv"Zg hggU^͋Vi)Qo,BpEef-K `ʊ:s~Ndej6͜m_a{QD ; ZI)^F\]ꄩ|xڛ/ف}edq0?p3 b~f0kX98{6Q ?a[M3&9bv(TŲiʈvu}MKz퍗Ndn] !@ n{uq`ݝV L"e1sT\-'،LkQQٕs` д0v^rf2H q^X^nvS+LJ':?\TT!EUW"Y?CŷP!wnoJ18 kpu[` :<^$4DbMȳx -y*&/x 1ԌfN.)WғRMjnY`M}*SCa'yE-GW.P?_~j x9!돬Ws49J2n)ڻ*dm<(S?|jhcbxAvqxˉIVؗǗ`t@i0̖*9 ,D#3?џ-Ýʱc>yڱub/a@T)Fp ]"08=Ϭ0#(~<,uQjsyX3ƀvguϲWZ,NݬliAI+&"Ƚ)dܴ )bWL]϶Ī"Cأ`Ř-kln%OkVx{3Xgy"]Z|4l˾-_?ȴJЬrr>k$>uة@Aja$)xFFdS R{r+n/(0t8@X"{gsՔMX?Mz֥Qߣtx0!srkXw5]Y-)w6T$ D;AW"&dbL+x鵍+sqktfU 4#e򾗦>x<NJ%D( ڀfIWd܁?S<*#@F[`N2+|k>-SHb_|SO)4rfkD7)u%e-D.qVw  yj}~=;ܒ@PI&G %,j t5Μ#돶xˉa"Eސо̻F.UjDWffo2W$_!ǍJj{.ibh:{q: f D \*pzpI^aWtd6U Hugw %n&01C.-)ujJ & ?4z>{ٞ36XT6ʙ#e~Nr:$͗*Y.ˊ -,QGbAU|h^Q ыz'ɿ%*- QWmCI2!v1>3}F6-'QW O "g&6vU)-pǑ6NrIeҥE 9O1Z?*!Z#.0| ayjΧِDKQ-_nK)ڄ<: 6(?gm`4jxE6 J_hUv)<~ة|28[)nKr? pzpD[ E>ҘGA&D狄ĠJ_CN="oc}a2/PdI`h.|!Oo /q}{D OS+ȯBʴ7R"ܜ|+VIO+4ilIP(eɬEJ4ޅ&b$C|7.>#e.-q*nD|BD`7ՂC#\eJ8a41 zQIl;m#GM#м5/ͱX$:nuWsӓ&[#P-ז.̼yd(, :@#EZʟ=ii1&t~Q<'jU*pchb. @9^yFOvݳ['5'W gbϥP B΃ 7}4߮Z盈*ҕ@Wt&nA9&  eĪc .em˦D' c9 -.YHƖ RWm1 ~2 e\r>+ K(aŁJ*3{$ng%Db}#j;y ĭeP~kdFsVݞw&h͆ﯗNI@<>JpDȨ(8>DD5KU)y7JHɸe*Jv (JHdRqG@YLO=a/PgHS{rm ;yf,XJZmŪ u\y[ 52nȜIR(yL1 2w&)1Z;;#!&Q#Dm\tDTWFk6'N,j7jKmq6dѡZ%#s҆u*b??XC+ç`F{X=Ke+G^{k VJ`*ķXs %7+f9!5eN(n(S Iz+T1k~cBt phȌuٚfOє %VrN{0X#~`- e72جa ~Pn"f<¸@>wd{A`ai9P'ܳ%3"YV=TikTF]mBv2}`yVâO"B"2}+-Z&=j$k׷,SHfp#4SZWk(ݗD-ʰ~ah(>T$%e@"cXIz}f`=5 'Uu YDo ~]ҖDhַkV~3> 'ըOfن Ֆn9{w-$B L?]€L|;-祇7Ҥ"lä'XL(k|hʻV71 ޣ"A/6V#dNvP漧g'ɗ_g1BnYNpD gɼOŁ+톰3tovc]r8wMEՍ!7*1u^ӕY0THYUŽs,?{X99@1<9Fda7E=F.d2m @A]prFkۻ> h "%Pdv$ƍ*2.ZZg0?|r<5ok;쿄\!Sr*O?hvhi DҗC0_$]fW{XfeefuCQOM/l2hgXG㮌lx?3uѼS-8,7sZ i bQ[@I¿HC lCc>* omVɋd#(P+v.C+R6 !J] ZU3HHo@βh{nb t;cH9s\?Xc[0S'±3w!gՏb;,/'br0ʱە#tMrW -E\{b@oFw}CZ>%Q$ :a]}&FGݟ ٤QlՒjQ5s!} ŶoK!TɬF.%SsuĠx!C8c/YIf8u|2ല$[-ohg: ~53REΞ6"5ٿ@ep1iܲUCԡ gTݎs >Ud(r7T3A8e9%Dlj qBNSz#a|=Mru6pht$V0WjB^U5}6xSE]vTVy"HG7uزxEv:fZx~f(K]-k:p#>+- Ǵ,7'X Q;<.MԺP GŢ&|N CkѬa")lkVuc-Dѹ^geQ g (ѱ2Qye \7dA%R/:LNs;m94yn``o"-={s@f%_z0@qt'QJvWH$Q^| קFjԪjk߶kfX8Aʟ˕D|N~t+c)/D쵱t> X*3 x3O$~풨WҒ]z px x`jXbRX˦qMއa@0_T% mMm6Z2V_ A#kxO[o)w/==AY}\GCxefz-Tvзo/h݅ 1:y5D Kz9\u:3,PIvK:Vn7:֋g90d3u!D8L_*a'tg>}Bmo.z&ey '.aM y3uz 2|0PΜ1:lgd#}IOK"FbZ#Y9MF<4/[$BZDhҼsnЪr@1;50qS?CuDU&]|V,l:Utcmr"^)Y,j}O\sAU \Ih0& V/2 r X0IV'EÓ(&t"F[ >DC1^<ۻ30Q1YEdǁ>M`Yg+FmC <`C!>zLZX;:tDFvt8fHؒ<5^?~z};xKY^ .Vp3ɹV pfJn{y3ˍ̱,@1~>4;}Xݯƃ8՟퍎Ul~?EP=5@g89k]}MWQZpL+9Q7e]M{Ld&RNEC4}p&]izIloy;'6O0ЂOA~KuV>@B#.(Í3Uʋr_y.黝YZ%Ȼ68W %l}~ٿ6QIeCu'$Ip <+OA<2@7OڥqիBD~+9dl-K{ϻ0EE1sg ˺ 6nQuˮ -ƍvg?p@5MH7 ϐz @ ϝ^몿y)|^]Zrmٜ t*f _io [go0U&oA%uh뤍ט63LRo:./1d-S RF1 j&c\-\iy. VDފN(`[ظMf33D.Pr=Z)(%5^ Y;X#| uzaaU<'{]3P $L<eqH/[~D`uA <|6!$ûĄ##m\%7]R dTqtJ|qbh^ZpU+㣫MVtT'@i0tX0 BYJj|G-fĥ; J/kF- `&zGr ƃY%`%6FnfwȞn}Z0Ofz|i}%tha YUQ/ txZvB(o_8_kpA1O*ek({<<2bZS,j3E݋X@J5 OFaEq1':R'RX%,gd )$$O(ލڣ@=H~mYa_՝yGqRȂVNMalrzKyTtKEY#OT+GbeJ0^"X yf+@zzȹD*a|K=U`JUa/2,kx:Ec+;e{QY(سu6GrĉQ*+1TE{j¼,/MP; R.kY<4QԴ[ɍBh:3}~6SvgT{{j }AA!+^۷#a~>;i& UyGw")܆NZ+z3FۊoIUN{ {@qR7IH cn5xUG' 㞄hW67m(ce[zFGxYshJ_z-d0W'уI2Ģj ԋR ءm|z8,b{[DvY]aB?itFwq#^7R$_^i~"𫃃bptrc_rkD=J9?$0ry$ ';s_mZ,S] 53bYDmg-+;|bNG䚚Xq06FV"Yh0f˞Tܸ|_vsV+^5t婖A%of [vI{+ |!c@OŇKxtuܺ]- $H߬ e^ m-|da5{BE#@we5e+&ȥtpWweJ$, UzGZ֗Ͼ>9<T_MVmD3~Av$[7Q;n/BB2)yjx^wӁPwmiޟ]s ϛ믞eqEq+ Vytrcr =~ VS[Gy-~mG|>~$ܒw0KRce//*e)3.ӳ'HktqK_*3j.6,wUh;j"x80CeT_Z¸@v$Xlu>$\K9/)EG.jڨwW\ rB;B}BO =Ƴ 6ۡZU]Q{6~#dZu)`?5.- &0}gz. LX#mCDW|:RK\|ALǍ!H t{ k;u?&75i (27?* {VTqY %!aqk/{Bw9&F}F~eKG&\=3[k4 &b,`0WƟi]$(XPsWF 4u0.HCb9'|b*bT90ɠ=LUs V//4; ChITRMYx\vš}X ?ct&6|KP8 @z fr 1S1S[%`cM<H93ݪ():Tx>gdAxK_* 7OB5ڭɪٓ&Ɉt]6L!93T4o<ŌڎB(R=2l0bt24 t=x)&E%d\q"J@}Sr쥑%"N6*u9Z@ߡ+diAew0ؾ9NID+%s[_!o?x]'Z c »&& tq&E%f;|)ڛ}~;PMF; @-e_U*!z{1N33֕ [!8Q:QOmOsR|!v^%_hkNˁ jUZ~?!9 zXh\v W ,cUo# D+%?E)hz N֞v G3Ktzm=sLĸ:k3p9eapP`C5*t|M=1ERXj4~kƹ.NȑCxf'x$oAWfurWEq)LJRW? 2`0sћV\"bOMB ®';ty7oV)xtNp徣u1:CMF Z%n:b]vk/y:sWNyEzJ1'5xѢ @ % i頻a N֌4`bp;3[S񐶼+oWJ1qQDFOl=TF^m2][ pVI'#Xjp|R0|6C~rlD`ЇCy|2ȞMWtE'QdOɦZ%y@2aXsMVSg%^=^\0k*ۙ\LgSw_2Y_ Mou !v *VIw8iý{XH^zrG>γBoJMe7|;XGȺX=Jbwr!vA˜y\J /)%Un:xS8I?8cCAFH^TL.<HO\'Y9Jf,nT~ZB'rl K+ZJs=J?r:,Q[=D'E^#j}l]P DC9uKcpaY`WM;Q1U䢠zEQ^-'- gSd^|Mߠ\:F %M?5֘OR(e댣L>zOReN:.ه&nǽrSJ*|6w\US1soɸ3I>#ȗ]YC+j\btRPf''Fi2?}l'd#D&Q Pg&s -nT),BTF49=6Wt9ΚYNA&`c`} aO kΎ/u.UU>јGp6VXRZѹ υ,e[ɧ;W6-]F[q7 na s:1q> 'R)52ƿO N﹭x/^vf>O[k({.f݌𾓑5bYpvπ$-m^gIsx\4spOXaHPߘ9da%vPgaӷ5So5Gݞ $!U. FAo":*. vi$K *E@ B1 Hm+3xZ8jɌQk/F$BS`d:@+>]F柿֋ȫjҘ4<:vzkpE1FVuOT K>)W IDA3#z1vU!{^N/[kԟOO"r!8!!fI}eyas{e48f5No u:"PpG9<'XC 1G!>'=q)%ֵʍҮ NXa8@.VPP!I>T&FWy+|q=뱰e`uY.Df5Tz30hr,**Yw5>{Y!!_tLҵZԈ[XyXE,$,ٮq LA&@-S YN댝 ߋPa'x)a;oz_3 0߅5mVł=yHgc Y|#STGwBݝ>[!puF\" d*GMxK|S}o\r*&GBy׊~52+M}=`mDa7fACjCs.k`C-SGT0u6R{DwQ)HM_5(Љ}7OZB.?)!CUk*E 5{e4U R&z6_*ӵ^!qV#/hH{Q)ݒ\ZִZչyœHEc$4DM3|ڀG8  ˏ'pM@vIGz1g-/LB827}v B]mFj:u3r~j=iCNW|`)>v/=T˙)`s|3jzʸq!-.\pi a!IkbIQN>VP㦓3AӇKZPz̶H2r4 PرVY?@CSeܒcБѥ<®*$4i vŐ5R₄P8*[mU,y˩q5 (h*;D ǤpsAC!qFjѬl4_୤AZ+@S yl$-V6si o+#wE'JQr!JzDUdrcY<lroXNC$d})\,]Ԙׂn)Yd- I/d^H2Gubt\F3hWoB˶(4+m!g ia/!<])hqzĹ,j6xk0BjopT?UYDN -ͮ0 dsM rNm8  OD4t {̉6WGtv y\Rb\+?;5c.MQ'aa|q>X&M߼SJ, $pt {G1-aG.b Jw5u r@S$3 9oy,ʕ@sț-_dY56ݹQ]ճmh";خ?6wA\ rf=NQOzXtV⥽$zѷ, DҴFepoj,%Ttۜi vxuݟ:!P 4H\YDEKyFLk b2[}~{f+ WmIwU,{p4RSy1ʣ"%9߶l'6e0XUjQҷm.R'̸Uypb^F|L*[t]18!z} v" Y(usbMhm h]ǁYZJ$MݢS9ƾy0gFB?]!rD%33oW\k,G3 3-Bq妥Pyj& #9 d՝?ݨehʔh{t{@E[ 3A =&m:oDU'@<+0gvng:FY q}.w' ^Vſ.:tLP{$Ϲlz5w~EFsZVw7qҝEsv\> 9Ev8Ю`#̃E5#QFE.˨.Cu"q \fY0c ZzB<(k׭{_{KN-2!${C%G'^~$p0W3p˄oވ#2a %i}oK,0v`̄)Ǥ͎ffɻVb^F-_b8@o [KhһrJG@QQ-zV9$GNqVh Hw:(*;&Sc~眇cHPJ xyM^ˎ+)n$-)w^<T l[v :,Ej*c-lFyYduL;% <1lކP"f$Qj+0;TG}r:* cV8ExAN|սBnN 2`95Ufh׾c;ihCMf ** JY4Œփ\ )J,sA.&x ;؝O>JAO'ݳBtZfIVױ(16$޾(!5/7X[i`p߲fn؝|"dᙥ-;&;y*LLP[*eY\U6,8Azljm#>^)d'sIKſ{1/Zt{yv6%Ӹ,ٺ:IoޑQ,:O@f>-vv95Z8P6v:? Go]x_d9T$es$[_od?C3ڴaw .iކMH1K`nQuղxxQw_y>pй!rֳM,SCK2+8PO uP#RxRiJ RǖqG0o3w>Mv܏E)^^8U_*(* =3Rn F} e'ՌJ=8!r"؋nJYՔeѹ_w;n[ 舽 QM&.b0AjHM\}, pt(O$D67Zq |JJM`nTDK]ig'? nمX|fx,Z9L=N`4Fi\?|Gpɷq~ApQZR U>\˜RuDz7}L(qSkgaPO?\Yխ ٻx Ain !q L;¦= >:VfWtshymԪ6@UFP*jgpLQRoM. LKkxu`uzMXT{%6L^v56;s^Tj5הqKH%OHЪPdgOFkŬB;$I#PB (4F^bU*Ky|tN_:뷄LJqxm<{DW`K_=OY .i,tE _U(] pynRwԟWoNoS*'oh2]0тM#a3k%E\kGp3!IN3ߌ/adl*vCi"xͰxgc8u7 \B= !e͹0B.t ᫮vAFbhvE zFқGy<.na%7TU!n#AiM1-ϏLi:Z n1vwV_́teLFzZBDɍ4*-4g >¿?:'nZ\5AMî}5jqU1Џ1}©eE8X9"<{~g#27)]\w.g:m} =fr*jO7HLJc*U8r-_E_5F~GUhڳ óG-7jD :g&EҥJ*nT *iup2ق. pju(Ȁ{\0 OƑ[n̮oMA҂Ȟ@ǹvޮrcKNWŖ0iŮϺB3T[d^'6i'wM^Yռ17`Ì 9۶| ?C\HKD nH<(Pm6[$軈\9ÇEy>eJ_LaoD82o [Jw3+%@7$U!22do.FDj@#+m>,wW.O\Nfj2O\n8;iK-%koLAq2?Ru=),zmX̰,ok4hT )nuk3NSJ(;@vn˄]i t d3"p},5*1/rLCх9wo}6go:c-ZO"utz6ӛ?6QXQgT WEvAt:Cl}N>fB({9:ӵ˦^{|89 rlk[V}!Aɢ߀j y+G9` |43m8Ѕ5  b72vtT vXXst-kIreFIk3]/ ͎MK[* ({jbƺn{N$<*nQ[u4F *#NT$3>)qEA6ΰ 6ꘊB]1ܭ+)ē!<`2_ v}s+1^I܈~+s%!y휯f(Y9‹K 6CkJ5MA/S#Aѻ4~(6?;gj3ZjjZ $8[(?"K #z d"ʗEfSaw !@:m,,$?'crPfCz-EĤ:&pK0eps L !eO<0o}h U~ , bx=;j:V@_ 9JKR8%H|N3ڈ gTO< C.ě"y ڙ& OzgNc_6#B<"GɔUoqp7_g~"w}ֻґU8 3lf*s~uڳ,ju,{Lv-?GWZv) "EZ˥Ʋ'g;&wy2KTm<96[! |\4 PLc-|XqȊ '&DL!^5f%g;l6'gK,4t䂋@ ̝ރ^oiIQf*T*`5nTw|ߟ:J!AMыNዴHr_^\u \L:`A9v$%kPX>iQ3|ʾIեh3ɶ8nZAaNu̡*[hV Egs+3S\mKS_p "ICFE|Ӻ1ȗy.{8]$jd"\j-Ĺ6<*=_H3n`e(HG2IaZD8QxWYTMc&I(.`h^U )cp:b56!. ⏽ '6wqrʼ=z-u=$%ls\$C&bd-7.`G97zL+8hw$\,l R"XKMuf*8OԺd8TcVt+Y% Byg|UYlr+4nk-V.J:"uk۾Z]Z!Q5luքL5buLLwKn$c|9!m 9dř/a^UgQ/fye*I74 G;E/lu)5Fx Bʾq?~HwPQ9DFIuz$CijPQ/S(OEgJ_~?k<<"`Mۧ,PF,1䲦k|n9u=:h-S$-,jd}ّ۩ufFt=!M}k2iEe@q ^e+IgUj6hQ%?.MNȮ4:9~tMDQx;Lp0&dm@}7`.K TP!wmX5v[!I2o[bJvĆ9х72/q"})yz>_INp檽/Y)xXCX!~'?cG2E;5!HUC̏uJl-k0Û8 ԍmIR> hM6btw} }7Q 1prY0V\lʞspA*Z{|%DIXBÓ|f2S5(/xYhغ c?$O/2a/`6n|%!Ȗ/Z/y\Z{aĊK wZ~6V=NUB0i=m,Ŗ%LPaLm7u3ƿ5j.p!)= ov6MϣG-b=17Tw6J5(u(/!eø wu3CDPCgQg^\-}yHnW۩x*uT)9y CPj#{v@{$Ŷ%!Ii藍/u*j9epq-ZkUHЂm`=MͺfӒT>?DʇOgy+<}fφe]G2Bp5[E=|.u?tӳBéVӲ4؊EG,◮˴&{斷:%h@-X}1&oR)] siTQm4Z}V4D*WM ~jv ^> gYjRv␗CʶBD"F"#3LUۙ'h$Fan%[`VHTuʰ%zZlLH }P$Ðf9yMSP9"X(/f;mY?SG xkf- 6bP+AMT֙L-˭Wˤi?ې:BV 5_zOӵ4\h3Kh %'mGJ! =Rm~%(EUXR:UY3;rOZ쩙 f1g%3}˅~J5XbG_۲ɘJM-se@cC(TRTDrӾh5ҚcT}5vOuAV׈Ī`dy*A)dS~4[A&G-T.j8` .EmPMgW7먵"PWaVȋ )΁6y'aзv;6XK`V*WN\5ZʆO\zlXչ-i|v—7[2.CP_3:Ciz, ډ^&#W }!GFܰ7}S5^#n6J:'&.ĥ#<'킝]Twug1MJV_[/7^ :6L[5q4|!}ٲepLy$y8>91 )?}n9:eŽUxZz?&ӞR]'_v~l`B59C("Cy#ژgS$9 U o8r_y)Fo?Z&>_ pظvk2XC? ^7kZuBΛ|$(5-M,J_stn2-vhd[g%c TK+d=t2xoɯͻ?t=u%3E A!2bYH=}d{I 0UƆ̞ v\H\a`!,&gB=6GNãC_ ~CB((TFAUWcJ3tO&V?a fI% Ś!g X,|:1@x‘a'Wp3!&NG*HHỊÛHCM\*v24!> ~2àH}xr_lף&:ge$Y>,IN;"FzS*J=ozaWP2+xEjjb] >D~wOA#lD5H .Eb< DgaOZײ5)jhm*26Kc{۠ʬ3ܗCr9(/3X ,Q#9FMOwE?K=/jlDcB>˳ݓN{HKFk] !{9IQy+h9b{əml_K)JR2pySa] =0뇱"6is.rWhQωiEu/Qr&X3,)@` hB9Uh|iTs$,P o`#~l~Nv5dl] Zm\}]t; )O/J*)EiGrC d(6RqZ| M>:yW pHojŸӇ:v5;E˝I=@wEĕυqns-4d.^icۙ+2Zw!C'09*RhFZrDtW YP5J8pah 2 9ɇ; pSiZ/G}9@,+("4U:0 6#e g BB'Plcx\ZZ)Z `wd΅3ۯ^ld͕tI؛vIzھn?֙:%ј (룚xd #ȗhERΤ_Z $+0sD ߃=J< tCO_lar2Ü4u(  4@>tp:4[U83GV2?8fFRq&!dCŶ&dsyt΄E^&w )p<ML4Wv ̰eNM'1jME&@@`e!{/D%EGkag a3-Sm/gE-krK%gPyO x RM&I}adLlWvDjc -U)cLz)3HNzUq񡀏+U=OBFe`Q.*[WgDD+ZT29l$D1 nıhjJW~HɌSGPF@P+GҼ8L+7fЊ p^+$T*J 0 Pe@)~{ boأmRa|:0#\.D+I C_p`*V=\sV-;:'ʨ)r1 V5RZMq(sIhF": L~Fq++kƥ6ﳮx=֒MʕO;~f$0wh[} }v`lZD0ʦSNyp(M4k@FLoz0J "ɔgE:ԣNC |]\5{lyTJV,$Sm$\S3k{H|4^ NL3M&ăTY)|>wkrG?HGΞgHF%)!Z !yC6HM |pۼe2Z';HeT'\f7 g}p!f4lPjZvPJ-QD&m;oG3ez]4,NFYͣ%nR_nK &lxf^ci0ÒW RǕ}T5uUt9uuC*z-TmEHZOКqꨨ[p(M$[o4#mk@oWl=[ ֛EYBrb!Qɀ2hG.l|NL5ۣ1qgqm%Sf/e ×?I\īWO pmuB*ds潆KʧfO΍q\:UԄn!EGvH, -ä* tBڈ= #]]Vp+6xFBϐօܦ[w -RewwQCb]VTSxO,=`/2ք>\ l(h5>shϊ٢6 eHmPSLm? aP)o -\dg|t[=7C4/Iſu ƚQ'HA8L^d2'>lL1Ŧ7޽Q 2(~u68D>bJIw>a >"Aj(mp :ȆiLKu+5bЦNĪO\,gX@?]?[+:tɁVnQHۙVK[p?^ò":MPreI55WKcj#gUƎVZ!2ĩ>d$9q($d.ݬi]lp2p|4a2gM@KQSp0oK"S񙋳ݾ|u6%Xṇ#s_ F*B"8K$9WYԫ;\7&ŸLmE=n{"' g D!$;+A2.ɓVղ=&z}9i HQažr{$(<#/AUD``8HuU@t栖KPj6W@z%Ybc1OAIg> 5oS`Av]O.I<6W ѳPm]XciO8E?,+PG2XAMA=WUX踗H$+:iK#чYb)E(t|[N֝T|z*x[TX> +~fM-:V3FKpR4.Hڡ2lظIRDP4(b"3*X_7~ 0AfBw)mHboGͿuneprzzPXn$tٸ5Zy t/(Ie|ѳ9s `lII(aHOT ^l8:54pdd ,Yab'`<>Mh'HERMngX>dz%n*"9ix5 EI+`攅+kQ>AoRI(V;ېҙQ0RASn!3A)Y`zїwB@1N %g:J.NlK.҃GEJ<ߧqԺ[dh*lȽw(ѷ{g#Rh<2r+pKJH2@avp;Os&füY6%,hq :prfljFC"C3m2e]ؓe\UV^_w*4sӵJy6hػO(HH!r ,')%+)R;/^1Ca$vc~ K}(sd|]&x CˀX<&e)$D dJ%] Ͻ `qEe^iG(_K_I.w'ճV [qK@u+XI +\VJe!"g `Jv/="ݦ%rd~% N'.;j '#=2S7gϏm+r-|yMx.iTQ ӌוrx0vsKetyڗ5fFc I9l㪠m fa1*9U {XOq,) LI[KPFyi0^D-|مiF?4)k= >TASky4.R3 ٦UrSj)VLF.\-6W%'+,I? ٻ^ΦʙϤfL4Xx?1BAKYRK[\LK2ZTzoTh_@؞iT=+E!t6|LzdM!7V1/r>~W3ZmjNZh9RϲK#C e2EG]A-&9\K5{3Ra{ȥ6ixJ5t׻PN)8_nf{ue_,mv3#( !we^|A / 4QR~J2ܖ4E&:` C2"o¾vDj}xT/7 ސ=;! CAiSb֋Đ:;Dy*_)5Sb}f%P蠢`t1QiWO)l}VV{o!(O/ >=MkֻO۟fb;iHˎ?h BMؙXr5hYl2b@SQ7:Vg 55ss@DJh ""ÓDrGg$KvaqU$:r' ]yK__'j0+g8#R+NYBպ>jO 2"(ϸo$Y'lDB'3an_GJVeZ{YqtxIC4M"ꔔAd *ہG!&qA+:q,É 6 `QҚ@Ivm0nN[tRk< 'L#Kr |R9Lg/к2lq.>~PйXBB Jqtg] tsXʅwFw#3"n_!h)(,S*S&8\ks3hq>ԈJNT#aB"N $ ž}#D?{c ͪFf ZNBs!u? GzW[fCGʰ4o-:VvfPrw:wߌ߬ ;+0P\Mq>>Ł($MnVx/b#)`Y?F>AY $#X9kRU4DG.-0- f(W&J"mF"FJ3vRHN&$32 ؋\Wz>L0:l Seg-ɋ*{swZ:{uFTvxPtzQR5A?|&q6rgZ<sk-OV'-CmOoь Aw\7[vtJ}Ftaq"YN(=v$wy>+Ɇq<+ @j!{d"^m>| Bk5P H,S 9 0 8Xa"ayg,'/+;OhNgQt,C0ً baFe Rlg[{'@z\z jͅ#tBtȩ$\Me`8 +ЂrcY4R7M%޹A`P(ҼR`sOP@&/]3_xܬ@m}rQ^n\$*ξW --}v'uR8q3͚Eq nzw c؁Y(fMa6wd!:gaWF6<_p${tmaĴCzsH2yXg{R*#*.麺᥿l틭~_G+>^a۠jBғ-_Q僝PvDޙaӬ?ٹ_YȒeMij'iЃ1W&Z'xtӒu\)'Rϛʅ>o-=QPOʱߧV̸CT]u@&0vn R֕֨ ƛU%hΏ'gԤEx7ʥ{3~ze Br؂?8K52L3._lBoeԁ̣N?3sƕ#׆?n*6> z9E#ctv;=DO*8Ro7.|FqZi:8BX'8fl@N'Qcx^ 2[UNӅ>=hx>C@~/0scݐPL*4" 2LkXazKA/ 纚]\sӳv!_1zD7syTjWZ֖ku aL0x^#jpnN}`b‹g0mݴOH{,Ki0khG+ۋ,4Uo}}c+=ں76*6l҈Ջ}=U\߂.,I9]^/ r3sJΥ~!JU^k#Fpe٬Ԙq\%b i7Ip0EVulO~V@jU1tTD HՄHzPuX5.;żpaxf:!527ٞׯBKYͮ8GmҮFkq`' uf\nʦά BSSܲ9zzRTVGHq]V?F$Rx[fw%Խ͑: 5n#kP?~#6"M!"}\nƿeYLPOsŝl(\6H LDVc~ANoh=sm9D `5g=*inù7i|Uktu)I#BI'HP?ri К dK:[&^Y=| r5k .U {Q 樀 ~ \?j_X/x+НQ K1&ֱR~N i@gX.@ c\"\p8߀G KԿG]a_æ>tD&MyJ^7bs'2׏lX-Y6񭫰x|RɽbcPZ╝ͼCm4zO9CU@o~ 9>]@tpZP |G;1pKg%SGٲ&r4}cjG+Kt41;dRvu@41_ y1Nn;ۂ_pU1qzel5 1p }f+2j6sFa:ʪRq Qn#e}0?^4,cthV{ӀEs\;PldAd=4TLuqqE>9``W${8U ?bkFhrdž0+2W2%(;sߪz#y)gR+Ү_T# <>$*[;ob_i\{u]3uQ]N;&!ͅss{["yo:x@;|ecitZ 6*ۢtL\.ϼ`:E"A ~{-g& &w%4SCqs}@e- ܆gEKԢ`P}Uȥe J/]%Pya>N_P9t2w= ˸Lħ~ gn4A|#Nd^%Spb⛛ImW"X ֔X^%`]q*-o'Ro߸>.Kp5W'./Sw=}~y+52g\Pp93QI }-;ce F?o@[<|i8fCrxZKVȥ=%[4(f'LBqHq,mV/dYS|TSx.e~ִcGY~+j9* Y԰5L}ŕzBͬiF$Sy %uœ= t}$EBDũ):73g?E6 |U6"U0as#z9y f=Joy"҆FIɿrRLFmY:%zU9dv"87&)g vm~e|T rA K|ꋁ >}&x%=lEO':ȧ'1buk1s,;YEgM1inY btn%K A#ۆZ=_ęx2Ǭv!|P =2 q=M>[=}M\j<j#9V53ކ|:^0W2( ڮ9ƤxfX 9{BY WEfPTÏtWIbjسsdfRgcD&$@DaW_|[au,)/{ $fe{@iF5Fw<_~k԰4 +P5&>Ù< gU&˜ǘ M7J:J:}i'>#g^~VV{zL8Ӗivdsu=KGU33<}Խ!`(ƽs^ L݂-GowGn xaSW./[*}AZvl?G*M8cqBag,βmH7IC\5] P˹d#aұ;Zb~܇J;ggpʻ5n.KgXJPlM"㱶mW8X-U4cFaA)IP2!! G;o2ҎHUHRW(^`S!}\#B7ݪ Xz̙'FI57?ɉ#y(˹5lC5gO :? f>M|,-A;oa.Cxvd{Bgnpl2]QX'u|q WGL]loݿ&?q `I(%~xG~,F֕Ov&rHavGr%z]L΍3֧  ('=qkhMywX'MSPFd&MN|f.4D ٯikNnRʰS%UU`IWjW-+Z⸰2?]ilfeM'޷ؚ<C9MɗIrmcV#S")g~[ȃzp9KN ETM"._h-YhزxTi׈UZ >2iWbP[`#]NhujQ{Γ|<J&mGh8*>2D*@LYϲ6d:#nt1hԯ2ɵbJDpKz,ȝy߻Z􅍉cWM\خCfnj8/mNkOreKNv-ϊ>9]Wٺ~c ͥ п#9FŃ "oJ w2qOt㇣]ew6dR$Dcշb|_ Wҫy:ݻQMFlʱ1z~7ܮaTM'ьM"x`87)6No)laI!u ̑-W:.C ˏϷR/9])ܜ{k H<;J9>e Bk,ۓE`?ysS[?Pp@(| Y-j DA_{0U#0mTV,זyqjIY b@z^l4|̈́͸)=Hڊ_KP;R-_,0!Vq,Q;\0K `Kns`TŎvCZ֮r.zG) Ѧj)>aoM/+Ph'K9=M@Ak q˝rAf `v'4RL;Fu@A筇nivy`y Jz T4';Q@~'r\vT XlsȾ 9ͯc8Ei恊f1Æ_!HgֹTvg]{Aʪ>,>ɬzvOѠ k▶.s'F6KN'O1*͛oWSh }bZ ԰e^|-6;.BdW>7S$qEl sEZU"h *FrH/fQB;7=ެ.6p ~JϺdb%xFD~@~7N ^de5渭Awߓ #2̆-*D^P;ds_VcdY߶4 (G0=廳%a^`':-+(fކMBuUf{u}U<oV`J) ((MRFD<4j׏U(j'qX382^Z/6] M9 6'R .2#r l TBtVKDCBAn>YDkZe [ =HmQU?Zs 4LkpijIvA>,̸ Oc`lA$`SpXke5Lօ/)cg;i Űؒ1)Օ֔3]!^XUNa ^].ŷi=vZ&Yo"ea`+ b?FXDŽzm]{Vg+ C.lLOaUuju=A8,WCdix$Uga@XIry~'(.fJ&ٴS..Vmi%n:+0=}m2?2 _.7AqV2ҳ$>LiNN~υ#ԧ;`z@V&dvvrYo?q|BkSjr:|.Wk8A:n0T<2ځCEP`pQ{ɪeTt]=ǡa.kK!?`}K6K0D ZOiC^Y5wG)T 煠` \>"h^nMKՓc [> n?#^ azĺbp;Tͨ_a9LqPu.zmS7Gͪ*rX-T\V%od*,ӋK'5zx]-ƄX_&qKf7zLV8VCА*bg16`-m;UАs YZR=-mv⨫",*F:{E֟[EAN0N *N:LCy*IVP)DW{2u^bf+}] 3p:[ Dt 6D TKMˀI\7!KRumҧ1\jb9xF'0$Pk)|,l,+.+3~jfC_Ʃ6_ Clbi<+O+hUU,Ux<0,B^mvy<=vuw䪋{\; 0l']8,#7ԛ/%%Ѵ@?1Yk*eg}Q':tY|\W!x/̡r2UM >`4"vtf{ww8xeAs ~nRM?l>tJ=Fb{.=|Q9x#x`(B7o[~¥xB+e1m& sQ?݁3Fxj-Pt--)Dؾ<9(u) M=c oҗqLgCQ xS-0DןJD)((/p y38Pj;4&DBYQ\=b dThj5@2=j[\8F'yj&T[,1e.?`-Oۦ!η/2IXnd$<8mjK+SXւ9iTm!@"C{'HjW؈/ yCs1pY[Ceq}lV~X0]{/쩗VK^{ФEr4aT0-D'w@N"Fs;`4#Y1uUb;KAe:#.PqVAͱyHi-@DTb6J X.@+¼TZ+;s XeiVB]R厨 .T\,4(bg;FX`} w\dIHHm`.tY7{M*J bS5 S<5:"5qZfjZwqRqGi>!{&!Fu]@~50)c >{S\` >3CX'wחF\Ge 3*ynЄH5giپwaTO32eQ`θb|A(ߟҼ9 J 󛱲0r{'wXd{M1#5cغ.ܜ_jn9yeJΫp^s"8I/@t-r)_~=t,5`JCm>߫-"qKPlvv@;sևF` 98&B1AREly6cNW|oHXQg٪Ծ4̮aH"Ҧ6Pi:#'X/ҽ *V~/[2]\J Ibb|n^DK'SL=/NYOH7vl+^U6FDԎ!"Fe V{A23WCZǽ ~azLUy~f(bݣR@|t>B#Nx_ (di=N柌@2G);@mz:<@$@5(l%\:_\un I^Z}9-zc`DO#C:%?ݫ$ &}u8|X=gNOOwp?65<3Vw2VcwNc3̢OCl= X2ݥT~Vi]BO{MpxbQ4Yj>W5.2\)4g1Fb8Vlg_Nde蒤\2ƐRŽnTDŽM/8imn|~aN% ;[Ts̝뎆?SeYzH?z~+^ގ Tw7U 8?8HT5^5mGH疹wB&rg]!/ );x Lbٖo{lǤ&,$WJ<;iE\zٶ0wmcp&V#'uE1Rٶ1ɱMNnxr(W]^h}Y?rqb\',&B$Q,+p6ƐLflP#fjڳM8M!3}O`=]S֗c}ȁvqtR숩0E?2/jh nsUj,*I26xO<ݧ &`cv{>†eOwD4J<璖>SQ$'r,8EW ;8# HLk+GiLha3֑2{(ڹ2~0k"vvLxoTƙbf(V&,2NQ]:@IeFbmox>,٫j@ݐ[gnC p( 522z=jix^xƤ7A@woѪt;Ǹ8,j+*SJH8KWLKk$GqP/`I-FL%')P^E06"+_A.[-b }$uA $1P!/ ?3RË 1 y w"nPBoΰ"ue])7.;sFoX\<@Q2]B ֠(cE LTf&Y̏2n CqĬ>'ԣWVIeMb C-_ v)N ʽ(f(jėՌ &K`s %>] 1e5^̓uؚWGD,Ci+-h=FP6'T4?Y(K bLLm6::%, xh Q.2zbؚXmm'ƴYjuazatDܖ= gCś9~Gd7rGZj0>v@+{ ;fjkZZ+fU>ˬ9e<4C;JPjc58ÑE75-GdXgi˸9c!qN@ʂ͔<;rWR-cIAqMo٬F8ƼArfD8$+Ep9~WT8ה#4+D޹zj\XKu#퓒/f<(/"iJ٨ /'r{NrN*-,,PlێL˦o@*<ڂvu0MA2X7s@ ^xag$:i/3}X;/$mH&on^bIyG,jHp'$\^@g /wgƷJ$aNfx[oߌãP%0G@+GKD5I7s )N8&^b 9Ƅn7, ؎P23)G,`dCcݗ+C_+q:(",̠L͇W>$\ӻʇ4>Ub n7}O[=rg 7j&ۘ\Xl!⯭]m6P墕6n3=ץ ǂ"}i➨3C_`7a[>[VV<ϼŠQ1ԦuV|iI0 ̈́I|Ժ'Lx?|ZN%钳b9\Lg/ZW ) rVeE5.C N]~ _ RvD߳Z!ݔ*0Twc+ТmkMjsoA~Q͗UM(ΤuIlFKZ?9`ڂI <3.*fێ2u4[cJy ;AloIU|]QC"fܘUz1ˏM/?m3HbYfx=dY/~&ڀTM* -'P״Lԙ(;X'bvNRS.k:*bdwHQ5kF@;v&J)+ 5q_x6y>/go,D9J)u,(v`!,LSUr z^+?9'Ugǜ?(C/Ldhl;n/|c:'aԍm 稾xuzb(1)<Ĵ:%`.Osp?ƒT}Q"AoBF ƼR,u,`zH&/9#2^d**wvY:E/qj"HFM6YUb]]F1oz9Y' }bD?zy>2ģ %\6=Vֳ8*rgAuPBzD+?1Z&$U.8T2e]ηNlinUTz"1" GԠe͌t) DV(͋:zS&^µe2M%Ӛ@$wemTV1_f_i5j@ T>VB DUxL|sKpY Z0g92cUN 0~*:ҬbRXd);X%3ydNjJmg~FP}-)F%Q%…D?ߣAVHr~Qn |iӢyZ%a 8܆Lp.]amh&_[S޺1|ilRYE"#=Gl B=E5yAEd1TQ5{UÜQ&J! +)J.e0އta $p1jsS -%zC>9*AD u`0]߯kl%%A'k39%.cdtٝqF~{;oɭoCcV4p^OJ3مCCQ>/qc `3 6X+>KauIL jށks&ΎA9*i{¶DŽ_m 7h׽xd As,qBZ uۭ$GF켊mЏt/ב,ח8&6o5 3Ro ęzߜ;zXPSl&s?@#m'S.({P!̺4gb9ˇf5}/Í1;D6ӣΡw3׭)y ֓6fd$8 c뼘MvEAњίe-ŻO9f~j>5)EM=imsn$s0ҚU 9prb;b6+'E/+E4zHX 9VtU1F?3-MZ PZ!:g8E ##` }rAk AȔ12><>MD::tsip(k ,eQ8U;hBq% Wv\0ALM*xֻ(-=<ǜQ50Kѩ$4j-e, )( #UvIw #bbҊ&)~({(p-JIϰAX*_wKD"+Lq%JP.+/W1IWmOB$*>X*Kj11ne6eQ}f:ޟ -^U,(?%5y : R! /۫ •45'qK37* ߃S]m&n/ܴTAٸ~WKghifa>bf+Lə otfG(Qr쨙I!\SvHm]i޶|+1m^v)yoɎ]EO^=Ԍ7j[|PLںۊ 4?&IW Hh"Q$ :ˌD槫p]!gIYOD^ȢQu.6^ZMZ-R:8[!s7cwv&ge3Fa0ZͦKI-z| r0?5U6Z(sXڈnWKTl7IT7C?N58%ӡ 7>B-й&Xy` `nXl8 BD UM{sa.l l^hW?lT>B"B:maJϼP77Mn^?392,I7K`#C{ T0L@_7ҕOș{{OmRb(֦ؿ u fWQGNݭ<ۊXp@iklsn=gHa3$^mdcz~wLȈ~D['|[:g1,R갦9@8|@Wq@>-.T 1em"Z7_JS u?%C pp/PGL:At*J >[g P(c^>VOpv2~:q`@d:[jO Cr%YQ 38'(l~[2OSv.3QܮH=>$NM3cZ5U3 *ӽdmɠǜaV m=#vK\A>hx7Oim>eކC -j6Rijwhd_ uX `_J 5=YU-lutp?I+Wx_q$S<ˌ'C}E\6!}= 'LYtG"!yG{ &T;BSXF09DwB:혔dˈadGF1"Gj:S:e\!'IXG:M*+NkLHt @n(fpZTh˘_#w[]c{\/X_fba2_T=PkґdCup􋲜ȷeyʳV#U횝y9˸0!X2Xqṃ9CHDKL s1weȋ!fo (A+{J^5 $ѫ sM$P EpojK~-[.&!3Pk}PMtid4xo58 _ ^='J( \ͨq)-ƝJSo'Šc):.R/__\Z;Z`*򧞃u߳4 xXVEݽ'Hitձ_O: g/7rte\N0xdxY,T&ڠK  \6G*At<_DxjZ'>fpsljNy0NBO܂[ޔʌ.WetK<1\}3\Q]*Cﴼ[eбa+/X sJa%-9jF[ ᩻ݳWj1S~] ]8v~2b.ZY0J5}Gq]s p!e+8+/!7+~m9Ðe |a{/ 7C eg^wh*սdm5Db[xԣz_v9Z>@ {=%IҢwytީ \!$?ZSqtV|ߧzjļ9OTݍLg7tR`uO:ҕnպ4ޢu7-1mO}>E}|SE}־K=~/4l+ `~R7Tmj3i].h>uY&hNm:ݘYPΆy}c(%) r.{yYgS(Xm  nYtH@YG&/ :II=d7J 2-wOg3/7< URr?]2WLBn`mֿj$Rw;JViҲ[\C[:߲fhSP F'܏1f^Մ{g\.lSv3 @7&t7/L13^]af:+_Mu&=H}%4rCZjd'BI!_N6oēr] ?$!OaB MRh}¡R)5_ϗLЇ|bQ;vkYҪ0ܫQԋT 5P06QR"?L8DCY;d$}涣e@L?$m lWH%/-o TֲJDWkR/XESSLp[V9˛ʊ fYu ĩJz:ݏMc.r)?e4f vc2U_C.xz v ^#r}%]Pe,ko"4~n\k]D jkͽ&tC%Uyk*Atr2@.F* rUL1u @0AAHj!M=7 sS(1G9ķu;U&"ϫANAZ&p9KF6 t3Pzq z ɕ@)Уi7Sl߯T8vV:S7߁0c ƾ=[C;Ǵc)+GZ`reW}omT@8\cœ0zu)+%TFyoV):4pMݟ}^hmwwQ(:eњۜAN*?"wo #n͗q!.#CYu5YEb ҿE- md)N/pv/;=axĂ'fwY,$~WqOx@L99%z^YW> 8ODO|ˁzvnȑ<^%OBbfXgQ0M[ $!}Ί>Qv.ݑ-lz\[d[}u! 2z!vj*g,TbXa}'+"݄$X19?c>;̘x_% /Յ50t'~h7*^c'ufqcLaӗt %Jv'֥_ۇul ,Ǿe ^%Η[E=Ë]#K(e0Z*Pu X|f> 4*Ij ӝ228qׁ6ԭ`Y~Klg 3]%"l&yfeg}`FIf}r$Uч_9#_Mҋ8" z4U$Skן Jbp6@ 6+j+~b a;R7ļILZC$ǣ-=@܆TXF'5Vu ʈQ#9UU?FXFZjy/6JI<[joveKG ^M(rQHBKv& |A:<|;d tQzc8 Les9w &x^ׂjG"Aay:3jhEa\O7K\x"<+dAz\odf97of"R 4Axk_lZ~hl/yhܱ;{q^|gNdY!'>` ;%19Z4I}ũ|/80^i<| )2oƇhнr"Hj ٴY -~KT3b_l&̛sChd6y g标\f^ӵn1Ǜϵ]cZ/J, ziuGgUTq.F;m1g}]TˠL}S\_˜le%Qm]c+NꋺFCܹ:~eײ^PH]8U.aoŶ$:T4ap݋lL + y +f 社'kǒM?R=~42Mp cBS՗2oy"J g5w| F~;3Yz9*7öC4֥ H]c{F=ڿ9sX> ˤ1e3Aȹ@bQ=/tDT1.&'gm[vG٥6E{4ku~Ll{.-\dC˅KkV le 6E"װ+R.+f. +nUn=[Q1| z+%HZ.;lg1*ljv ~p&)g².!MSڛHӳ(sȒvW1?x/Gl˂?gk5\(S od Yۻ~ҧXxMIlvaEFӧoK{8GnvrkfYFq9Jl+[u%oIF K5]QP-3,?~I (rJ~q`O{ϼD::*uR)1o>!B š\wqEh2-n \9wQÜ۬!pHM1Ee6f 'p WrV?桀>@ȟ{?Bɭ[4P]>ʺfSuE)tT/)Y+Ṡu fB)DVxڰr8]$Lu?4y&6GPX(FN33 p*:B7vL!{ 3]=*t٩UƐҋy~A5&:Vgga/ig8@4> (\N 5X $@]DcO?^ 7f'}2t!)z]wUc{Zk@jq- xTAP%nMmZkTy!u6mw S~ a̞.7NS %l8d!pڢ3ӑ,+kb MiaFiF?}p@ۿIжe<Ycr҆vHd7#P-Fո{C1ߪv18LI}j jzTlZ‚;s9RߑkSׯmweNha3Z7|?hkȢXn` [&w^",fnљD%rw>}{~ Kڰ _ClbI ^,[ّ4{qk#鑢m>[bh>G dRhrƃXQH-Jh$ )2$嵎މNyP":o,ɢk> Y@|@s^͍>5%L|N1fxtkY^bvIyѯd/` ݭ VuܹU1Ay@L}ݛ9Hkވ2nBKDcU6Z!NӪ4v~C"w.Ab~HHuIܢSJ,Rn`NDZ(2eB6˅ub*Ӯ^fp8m2pt?h.e3-˰wOQ6lK !#8 q;Fj ֊?č̀Gt4^b*=[ C G3S}61z\s1҄1ZJ͢O_̱O\SmM{LwJBpm@, [KӷN= L F]7)tOvwγ36! b_}LS@Dd#-2"غDa kąZycŋE\1t捓NM7zݞ6{9V 9j&q;HͅuJ1HݭvڿX`ւR)gBjUW,1&QkOv|ի%CU-Ti;񻽢A,JWx%2=ϭ0G xax1jFx: ԣÆN).6fiSiɄ&;9LJ{_=ayi뗂 /)xENM&S;i_>hR!|iو0(~ٸ=P:g8R}Uq1W|TK•Nr$=dzN XoA fIz@|@^^">h;wghDɗSS9](C >?V0%@.t?<Ϗ ;ZI4KAҭߌul\&榕Uœ!z][/D6oV%BK&JoZnI]Y֔Xi+ax&el]F&XtһV4\ {awdjST_I<-(Ε(_DDA[؝bSbʮoG+Du3G^E GWAh"l<?W!flߚw-yy(|%O||0B G,~W˞ :{|.\CoO*f"$n\7~?wLHvquWyw${QRu[c1] ;aEk̥D;,)2-g5BMH!=lגvV ՋnS UiAAZ=s6A'b^4&#@Tj"M&sA>^~~oYk'ԕ=_N`&Cw҂2f ԖJI2~R<Ȏ.듮M;dŻp9B|n[k,durcqb[kf{b?U%#.i#{y@tyi<cP7gxڄ03jl&^qUu虳 a"9U`ifnx76K~" m[ZVWα7&+e2e$&q{ޕT_[}FT$$ :=} .~%_hń+MpSVVd6>.7jUe{=]䘆G/FMm,)'7p4Zt^5ƨ ms݉A/CPb$_Y/d"A:pQJ{ӃD/-EKQ"m)f6rPqpoB[bGio3|;r;1Q#AQS tTNn D bm1>k |-R1f#>p0$媰YF@I;sǸ.^jgD1 a Ut/u6o\ҠBSx,Pq!cp5vF,VDm|IzH8\˹Gqy@H#-==K/$%BeҔN |ma h*̏jKFvR|c(U͕T ԗa.̸:jfԨ$4k>!~N1m1-T IL04ceN3ah&72k&R/]zu֭NnIB>$ bIgyCH{)K|g[^MMzIܚr ù ͒8-cN6t j -'e.&ˑf% r`߂$ȋ3 HDďmCtMU\eM8d=:c5z~WDgmAR3hO&u|LiWԻY+vݏx`!/ckMcD!pfK+hux|L/tuƶ9cg]&"W8 7c X?ԛTWˊ!^LuRkv)R &)qB3/. i*,gitcN#)` )?.Eg0L%Ȅ獵)o wð3w dpV qkdFf~Jk3j4󑠋t8[uL?Ef8I0E}[0pN`o} 6kB3a>eL %< OA_'M># h9~L@V8׭5|袦ڵǙXhL_Р? €_F0Jj?:OU,[m(5q_6N5l)hrĿ֋&,F䌛kwȝr j>*{lp4qh0 lc2# ,[`TՉC.u I@ĦF(2~ǞJRh쾔'lD'>nme5qK:,՗ևptG}S0{?Cw؄8 Y,0{r= ڿ'5Do *b .ףz}_<>@,H9;``٬WSUۦ), ,PA?噖=3,|M!DT4Q&eC~bR(I)?Ƨd^XtDd789hoRdD&ڧk_hU\N]qN3A AB} =x"*efDjѰFƋb <]%Rf G: C|ס6n\7T/nS28}dGfCԝՇ=Uc!#\Y'V`pk҂ezkz7yaѻ\_]x EڄLە  ;_J D0ϠR];&qAjD/`q*M >*)7Xm<Ŵ}|PXirL Ն:r$ԓ> wʅPWHʨXǣ+t"U\f;1ic%B_f^FԎ!iZ96bo rSศeZ!~+o-OTF68s ~PXk0T#*B@g#E rD[B}(*FUޝxtY[zT9 ,>~Xq8(S*!75ASvq4Ft*;aF.~:7$0Li)+nD?v3 `|T lDXGPD_?F@Dql|3NjfIY;Cwz|7꯻X>s^ęzJ) 6NɓU `HiQb5¯gTxxHBr /|Vq~.i#18D\m `a`ӏ9sϸxhbE#_ޜi!ڵ?Nl?'/MNj 7Ԑ 7zmw,E@xb_£yݛ?Mn*ԟ2cQ7n] ֎˥jתjld;nt0~c"07DkϦ) r6 2ec8S†>!DJ@1*wJ.(=IY"Q񾄵\=,~,v(Դ]EN֭9n4Q_ tnyً3GdD?B 0ZF7<{"vAN{4{\PƵcHѺ+V`=B'@\~IhpTNۗ)p8񊇕M[{+Zi` "&Ĉ Z aLrDėڬk!.eu{J:)ۡ:oO87`!9 oX|oWK/p&*?xn,K>a#9xM2|sƯHRTONy!,H #lM#TM(VMF\MXs޻T3AԄtռ`FÍK̐=%Si2`hkI88,tp2?j_FS|rs>}[~e{;0(^%ku6Q8?h Fn ~pu(;PGC5[8$kZ"!#T%c#&kBݼcjEN" ݘv~=l?I%Q"GQ a)B 7U@_ZUzq -P؞ݴ[s5]4p83ȧUܾv(N_u3z&}F~寠Ed O'٪/b 8*A&/"(ä !%A*#vB'WJn7U ~ukKU3F.nة"iD -K5o^B)/UڽKzY6xITR uʴ ),eGBPYG*TI jS囆-qcWZ7y PJjawR^4"QJ97T#`Ӛң]ba6'ɖ)1߲iw4kTI30%:w[% NCS%v6^pF1S^d6*B)hM8;ȋHNKvoJEm=7W"+( r{HC"Ե%8洛BB6SbлPl]V!nhb.>=)C0 uY^BMPy9,2uqa #GG^c(/][:h$Ũxja59rx.g޵&뾄E6cAL C;&̛jۮjUqu朋{v l].u!6<9?S@:*':a'U33!7ītYW0lȤ8898+Q0f~t >{eY:/ Mc(vWE"׎\o;\FITyQg_u>P8P9LF zDj3xLOa2eg_ǁ9]P |X"m_ &&dR1ƥFki2̓m]fk+KzKv4c>\Pb7 T=c 7R̘Fy$1UGqKBɺ7AnR>.OY^nVziO %(¦]ȕeOhI3U{}e>| un7K K;I=-8nP΂ "8^ _cn$vD1 {D2q7Hgi04Qh⪘@֠~}@IF9CKK[u xS Y|bZ\ }$^)@)6R`fr=|l*k_ݔvrRW8wrs :Wu_/}}peZ0g ~$;u~jب#P^a:/%K.uHi:.d!ev˴0jJ]pg%C42_ҟz131羉g rL_ %SMx؉h3Pz`T':MTG;L銤kyAyw8|h2縁1̪[H:~ް>¤nj޾ĸS͕VMY+@J18nSbQPbd  ~^5qnHA:lw8$}<+VЬ&S}[ئ|4օl:H6k(d&Xx;@LKl>rg8,Y/]~I4,!jBm&6ƟiaU,rfL{4ٜȐ=𬢳DVAƣ7 na)#&:s$j-(MGiiFRW`/@06JIfrﶎ,+ &Hc x؜řx}Ytox%1&kƖetG-{" .`oe"a^~xG?.rҙ$\d.](HWPoqlcuS:c DI8S QcJ㯚'Aj4)m('KfT9G <!j U2u&-ԛNΪZԂ2u rg]G1742!ߒ E?2qH~&r1ZXȧ)O\tޝҵ+\#zpq-{F(5!MA+Zf9e EScynaSX"SͅAcܨgvZiB?PG.'NpR~cC#0-8@(HE3ʗve# _SOw3M2}.e'}C7i|5a-`FvD%h?W:dJi9#2a9M%{pJyq5HV3#NA ?zy:z:zEhOUp]cJ M wԒ@vV7 X?+cy=@n|%[#M%aGqbHI`A? ۷&$¦* 69kղ &2&Dl0my^#e[@%~m`m#RT)^ڤ?0F@t:Jo\Щc70bFbhJ:â@$ ex4Aykl.hEq fN*Th(¢itO-s.֭u){l~s`e=Jg.fәL6-_vx*b5KUR#VE[*i'R6_w5QIr9UUcfsף&ӟpm[p\n4@K 'TM྽Ì<__4|&6lpvC|:ʈ:bVCwut+W8 G;(^"hA FkڒAtŗr7̪ f(~ S9&^Dݠ/LaW)x)ur1 @2!;m&x–ɉIW{^%F-JZ0dBl OiЎ !Ppכ᥅iDjW p| r9X<|VES*PKH͊HvkTT9:%ϕj~k=WrikNf:4_~9ŷ՝F˰Ҷ:ЇQM . 9[K_G-'=pG!~~2v2*ݛh*ƥw*ы$m鐺7*Ѝ!Mޝ5P_pig|:u:>Rxodu* RZ8E?h ŽvJ@q|YH@RwiΛS9y0E la:,چdA,cc\_(vj%Ӣ m $w._((MMؗOYZ8^plj"5u:^p;Ӓc0%vz4Illޒ8i>T\J,[ oTn2QVqp|6OYz؜ Eb-~nm,Lˣzӥ!)mL@F[ VFjZL+;[NZfOEehR)`4ԲAKwa[y6n=iwZ6 LE[d6CRXTR3^3Oπ Z~ceZܨ+_ٯ:51R~seaXRl7d$Q"JAX|X765H!Fvϟ-H˕);Os2^[si>Kik(Y]>h6Ua_k0oM1*1zL*˞%|b_r2ӂ[qe4͇+.ZTopW:*a'6ۿ͟"I\/C|+EVH8/+Q#uT! {z& 2E{Ghhx3i%AՑGck>=$%5wn|:y.ϘAC#@WYOQ$G'r"@i-N@ƫR40}-ǹa}qdRfvƖtABPIF>2.ndg#fC"~'H ^ 2 ,Y-϶Ǔ\oi I_VTWS[\t5 RK;)<C`&iWٰa0m5.H,-إly>R>b? Ear 95n13gwޱ攴 HHpx ̜| @4PMlf/ 2 BM_? ,n[}8YeqSve Z3(w4op o#l/,LOBE>Fcі=. 9>4ڊ~)ZѡRkahOmi뽷ve|=켔)L-8G+e hV+%dOԃyPb};qv+"| STcD9n!~~~r?Q# M_If(JAcjQ<+QcZ:-+kv Sm;%HxD}*񟃈92!BgtQGAИ>b1ן2Y3aF(y/4ktY9|lӺ .8{MSEqјKJ` N{522g9'_o>d+$+8 L1f'(8"_ÊГ31DBhzn2G.E<\Fv+6 Ȭ/צ-X +Ά3&ŎЋh4埄h0s/y/obc,lfi}rWC*_ԀܤǓ5M|,Ye 6b {0NV\շ]?:3 }oKnWȿS&0$?p?)pf 0Nq43[r@ f0}Vc/!i =1+Gw\?')U3nM$~")@D$[>PISΓ:KdWK;*+,Sǁ¡X9JcpaCܰ4$P~cw !y(JՍuv543c&dϩQpٿEx"[ ?kvي-gO"1-ܺ{ o8Q'ޯrTlG:!XS}>8Z Җ9h`L1.k^$s[-|]囐G J"l\kr/ &x)#'|9@nXᏽx睂z#,i.3|s&,`GzRf GLJw8n"ǎsp;8sf47~n~3;9u a$A x>5AakEJt|Jh^Ф1¬>JF2gr q)4I|1' *bVr-H%NuTL}ۋt:`+ES ʢ9ދ怌KAO}jW?ǡ1k{]mwbq'/"@Ӛyy*JYדP8`8~pXĹ;*ś*?ĂLrrkXLl&ߓ71bТ`fbIe!cLzg0$̆erg_g tc;1:P[~ ^s>$;p `7O$Z4=HvȬa`%Ƣ6Z7 0gzY LXr0XbBlqWĺynVQZOy0/9-4TlPo/cugdC|*|-Y/X DA IS1Xkx̮K7b (\Lol ufW]7pZ[Mk$+kǤ  :k:M&.#FojΩ΀B#XJ 2|zuBAT"vJPc%}zN|1@gΏϚcd1dPs`r C\_m/Y|(<>O8AI^Lq`-4Z=Qъ\ΓEУGߟ:F%Ӂ?̘2uX^}W nV<:|ۃ:@٦SA6o@]Vd9~Oio|٬N#J/4 _P5w >W<2Kڍ5@oDK7!w z9 !E- ,_;&ix.媿aH~J=6qp-6TbKZT̲z7r1 $x9622)Th;0=\aiۏ ]©D 7SbLƷC @;!HC歛IxRJ\cǎ)]PQ6nBm ! {1rHmbpi]j<:U \3 ɕؘn 5Ӯpխ#I|b-Z( EAflo&7^k/F`+[e tj2ݟ˪x/5=.3-3zx_RƜcEY;YHo]fS/_oSbOh x-_D.#BX\瑞G[)tM/ Oz}bш&_I35:iá/7Ii^?]7g;!LУD2'Qoh|"|^Bh;55ko ejƦ(`}ֱi0D$†9͍C4 7Mb~N*]&~NbTzka4 BNꞟA$VEP zx|XDp5Cqr"MQΰ̀w-| o3/+ SZnϖ52 lbjxѲ_hH"ϣu*feOJe V̔4IIf&˨EJ=L9;PdWjz9G;=<Z?Ƥ rnWQ"zRM+d#)mc"~I5>R\*23;\LKEď8~l U`N _|#[̤IS)&JKWxz~%o/CԎ8qKF9l5(#1q b_FZ}RX9nTRѐXbl*.RJЊjSc'EAS~[/qP歯]iwKj*Pf- O&fY#Qw 3ό!3TAtȽfeU>'B}Gᢻ0q$KTUwBP#dk9YH[ɔx -P[t%sϩ\Μ0֠I W,v#i(h~ceH-Z0/qlQDUABb™Hr(*aS0?^ W;@Ugaߎ?qu(b/ǫ`Ko9 R N`/;ƃ7[ 5Eд(rx3#OH&[jAR?'T/Kr0Lk6,"Exi,iw P6^YvRp n@FiQuru#ptUvE+Jhs_jH‹yr]@϶zizwiF NN#RhFL,l4ފ]?&:f^1ᰠHdE,R怯6ø~+Vw+v7bzJM'완o]RSpMk >:e/a=x}Q*J}hU3*3io2=8/Lm:EyIfҧ!M^%VųWO_t %*!|HyV;**vXld@Ut l 5@GY"<"CO7F|u!.$gaݧ bnN!*$T+p}(A-Z^@w>2@= <>4 'Y!Uh ?Mw>sw oIvqS].[4Lo^tq : @Uڭ]8&'(w`%)o075=p& e|EiQil&|Ozd%ޘvxd#\6f3!l~5:,[e4[cs!{} s3A: lnb"|(F~l>st ˉݼ"gҜu׳`'`wvIZ{ +Be K/CBxD9ezU檩]zBhYi#&=H"]ɏY{ZH޳P%ңm"FO-v} }πm_*"2>x7\S?#߸Af˫{|ƅԅ!>>0!$j0?fq0|Orb2LJ5ж+u[M E77 G E`"jy^?@(d>/~iCDV-a @Ճ/B%>OvkDsp/A1 o,U.+fΌ)Nx^7%Y"1DG1tj'+^G[])VCI4h1CV&+ co z%X֭~:!!Usa*Ip6ai]Xc~?*00&k`ǶM1K}1ZUK)ʲf#dhC+ݨHarg+?oyh;#s=C\ qwMAO 6'_ "x QrXD<@/9[[BU8+( z>x}UF,Z7AvGɰ6f.q9PGQmp2LK 捀G?a)xY ^^cHVehh; &ZlkliʡE@iM~ ؾ&2~|{4VJ .0@5]WN>x@"COcRF&4QHmHre E j UT>Ep.! 'gէpF)cR[&61eEթ ",F1TrmNYt{E^3l3#eˤi篫$ _t 98OHpOj4S5"I!GlHΝ[dƆMswºeP:ISjdsSeq&^|{>Y<bBWqTy>&W]Q&9/rޝ/Y>0H}tQ gQkxA+9ӆ"ѺQGP;wgD9H:cS))bs:!5nFU]&cvg$k)]ş Yً+*|A"2Ś0ֹOB)|"r2MaЦpi[f' t_5ASӄC[I@,F”љj}^7h9Kj4gΕWyĜ>0^]|VAM,]Pg~\+ -tuxIN'L=aqmKח?~5vviC[4ۈ+RAA˽_C,&-c:?EVDW|O@- myj16ػXznw!nlF{2K}fP|!^P@j"|8i7QD XjqW^Y^CEc-Dˡ iDCY0gAc8j%V ,"ty_΋{N65$:$OXA߽_'qe oKz84DP͊X3!I˷4 ڲ1n>v?}k[<–[~I8țzDAUY^8 Pfl:_q7wMDazQzḯ6XIH~i,s=(H!;i4\!ЃIK^>?Hp+xfoa[TJ#2!>h ZH4\`zk!9eV1BQD?x[p)Or-SaekHmU΅WףQ>cX @h{b0Nni fpأEt~b5ؠmT(?e wyOg{63~J|[ g獠Q˾ A"պuwR}HiE­mr補 %=r]b4לDtTN'Wt"LlbL,c5& dAW$f؛ŏBY+ ,PWlt)D[c-"f@D\>˟ ^=a[8ȇ5I;X,C u!fOc/Wc&UHA}8| \=]v m"Up.)0yšg9 !F\zӆO;"oh\05%9U8D\J,d,mͿO7T6KI Dz4 r ]'ԉ{Og'7<=*U R2;Ґ`klUJ8eQwiISR{ )Vf̣5I{ۆ ͢יhXYa2t`H#|/PR<& 6WY35`&>XD=mլIDٺ·VllQM%qʐo,_ؔywՔZB2Xs+ Utʥ墩2!0 ݅1p@0 A֑Ӱ4©,Gr65=ux58εXEqÿ{Yɢtl[DwrͷftKCc\70$[;Dsɨ@kJ:E* r*ra^5zE2.ٞ<d)ICQ&H)vjO?vaCOuQ'M^Z=$vF5 Ooc Yz=ԫD9 G:[:ppOļxKL )hWယ7uJx5WD _WUO(y˲BNj.j>eUzG9}]ETV[Ep$Z |Wa@p:85@GrmEe"nb*Dݫ9l6JǂIgd]Kp?$Ml[I=.=%M@ӡB4"/r4 +ghfly [{6?yQD͓(.&8rJO7Ʋr1vg`Z٭\q}en(X3| +"0'$CʃjE29B2VFv]NE7+e&{Ji>CBx2uPP ufp#)aK)]2{~qeXR7X4#g^:vZÄ=7k ;kiI?*SE52W,呔v[11wlU=C᥼ݔܚwhh u_8A|VmEDi79o!l {qgDǺfʃ y )Gꋷz{jL8e&B GX]<GRYum1?9Ɗ2-4TllEקXZ+H]vi (f$Z룵Oy 5v6렅P&UD _;1&5鹨pMj(\ /L/"-?ԗw$shX aZު n :* KEjOR P肜39U:[Ѵ 5y:؟! ΆA)GZ ˤc +3R QU}X C&(Cmϊ'.{$Ѱp?T 7Kr+#IcLmbF&/yQ1| cZj3-G(ɟ7oj- F{wWp(Ětt_!]`E3bIzXnmll,'.[Ce0vH"b2MēS {<zkRėɍLAr?/ %tX~bkEWI+9*2N eЂjQ4R7ǒCi/R L]5gqS_³Ѿ *H.[n.x|d1fo!!/ Q_z jgYv|Rrpp פ ކ}SCG:DkJd)xC+߹q3*_vuM=9HAIӖw /j~iyפY@:$Pfͷ*o$&S? qIq;HK^YwkV/[M2q}9SF`u zA:'1 .(_P ۦ/ϚUSςCy E6Ics2!#Z*7hlgMOvΰgVXQ#Ru77ml*+`h+,`@Xr )VܯYy <G$ \:!DYF>#ϞG=Ega/ڙz<qWԑ}86yo2+9K.z t1 G^aKj/# $UNfɚ!/*KGJ*E+DCgȾhr[d1|܋Z6.- M"[IL?t/8F &FntI hԞͩ.: $l[!l6c1k;uзe]_VoXZ("1V^h3E1Yxm 7ѹ-Sb߬ qlVZJzD" w İ`W1` >.cސ2 ƒ˪byF|:b-f3bpigaTƶ;V̻EC F+Jl8PmKxoB0 fmA1 EZnF@qzN2-) Z]`IL.u*%N ֳ+~)S01RgmGgmG5A'̺$wvaZd# Rf?~֩T+*N{!~ >nB`q@x㣑>uh)oT;`_cKJ JQ J}wgnv)]:_*tn8|hOc\5΋C>Hv0@f+ُsH שCbP7nnoI{)~.rQtf)f5Qμr*FCAB]_>LPD?sYaaq .fn?;odGdUgk*5Dy^sP7ʻ)zp/H}L ?튓NX*?W``'Ҁֱt*U`JO~R1T-d0Vl.;!"S[[bH$ $I"QDXuFfтsSQ*/LB*Y5Mh%ԫ'5K3˟øtO !F Gg!|m{>jݨ=y) zp0rQ- N){ɞR|hpugx Osv@ib?PsgۼY9Ed%o EPpn: }ZE"C+yRʃ 6CI] u@ LQnsDx B$e)]Tq4YvY;CRb'!Bmna8r$0 dh bTd-uL0t&A3 W/E@1$Y0eʰliഡ!S"w[GWݎpR= F۝ XRDT.fpRP)APo*)sD4< &ps3kp}4N]R00@w(D8|h/K[wr362aN';w~|YmmIjqG17 PQϫV6\?~XiHaL Ag'8P{iÓ*C!0 Re#\N8,Tfnpf{ *X5=EpݎϪo`T64@<޶ݯ t; 2W+kp\,aQzs8\!,͡8X#V 3FX?*j7բT [{;=U%M!(nv[~[<#Q1X#`pƆ^UՈu4t yWDp_ꦮ,] _ѓvT0,\L B#L$?>lTCCrER/Zp$N#>To(D$kWGuf~@h.D3l=C삺,zSmVs.tquSiƵ x-lttxXr NJRc?3LR*]eЪ{܅ww{t_߰c+EF}!,D,;O_]jЀ@Uҕ"#8 DR mI{!ACZ\+-{.+p7 VtGZB( |FyU* h^ ?CKIE.R-~NrCgᏴޫ2 L[-;5,:O2MV &C>!-p*B@gr ^jm!(c;Ey7O]JSL|Sj,+2Mt0kƀH!{/*'wD݈v n G8dVЊ=-1 zW] =q bқR1V#q; BwY f_#YvD)͎~4>?[ 6>o wǻ$јt,NMvX6=Cf # )^ hXat|1gm!uA#p/ʶ8>G7$e'b UҌQWrS1bMuUCJS͡<=gTťT <'\Eҵrdǧ:$)Ih%f BbԞ/4AsWVRY?LѹA]u= ĔKͽqʸq3I(w'h!;H/LFLY#fvSA}އE9@\3fLйb/$Zdtla =8]P OQ"6 J y#@ט?. RaoE%fT;eeϚ-&g/} Pܔߋ̗+")GNUR $ :PV5V Аm(n wY,[Q0+ ʽ&h6>)1'neR'#-C aՊLޱNi]r+aO8 HJj:i'\ҥϋ DbR/u0&Q$%(3q6"XVR_٘nXӓ}Rr'"n -jLtM B RxWƹ%ɥWKdq0o,}u{ua _x`3`anӢ'OVG4l*n"q[Ol8I2\!/u *sީ@_&O C1;aeHbSCF9%JVdg{L*tsMMK\!`aISV}`05 WgRjSsîaG|mᴼa[̕Qxw0bqK"`X[GŶ֔t`}Sme[y}9ݍ&2r{?@.4 yɘV9Oٗ$ Wq׼Ѭ/ZPc7tni,SROr~oIH-j n+rLV]rDž םDz mC&5HnF{zV _:4UT>Ed&'qQRj}UHzZLN)IT*DëaTm|4hmlvj i(N+l p"nU4Nq>ʤ} -YSF\9-l&PPMwp.Ղom3ךgY3/޾6 1F}.T4ckq.LT@ % NL-RA )sļ!HZ[|?mtPHַ̯0xZݕv֘xk,Y3_msVĶX= c-m@e AhMTM*eR u嵨'ӅJv>^&VURO'0?CJ.[H KU_y% *.axq\mL f9$4grtohysI+WE `ۂ|-y`:IXY[{l^:Od8NJo[#s }PBs° &Í@Ht[1uB#HyAq:Qi ce W,Cðynne BD5^W($wgUpl=W@VAynu#e7QRP֠DK">Z,<\?Ҋ&TtϘ0,SU:megjQ\i` L̙B6)?Qmф5/(+\#cyGZBCɨ6fBc5S,$nf ie`dgxľhx6}.Օ:83 Mbu`8QTt iY# P]|Ɏ~0qo~NW#:Qx@ e'_6aAVņP B*V7,*_uv'Oܬ CD%gef?8la|IĪ1no RNf?p74ƼQ$;|/Na7';VQ.Ԇ{HWN숞EH\S(ҍOgs.&DI5\&Ev;ji3$(7Tsʍkг=ھz(߅=Bh }[ǧLݓ}(uCmaLh檽}K vֿc˰֕P~FgfV4Jy>v].lȍ>)2 <܄',g|@r/\b޿HLEtC|JZ_bЯӜ&$6@/WQ@e/ r %0~+YO/?$/@n(dmSd|@MK,-815?߭,(U|0AXv `\Ph%nGQjk,n {n̴ꅱy9.& GN%\ڧOWÔ-JɱHA7fwh+p 'eG"F.@2(雔{Nsc&iܘBIkvl,]1}D03|jCe"F `Xb҇!qXaz9~bB&՗24 4"jG ]_,X$8Q_]?r8`,"e#?o,w}N%QFώf 2^9E vA>xZ!\hoK>"X'm~i)@;Uk`;k:zX+E)* )!1vcN<șgb]܉?T@6kb,xdLQO… {3K.h"ң3O%ȖώYP`CQfG:ȍ*0nW!Df~l:.VRyLD"cJHhr/Yq~+*@2B8ʠ ]a̵~*%*-wYX3nmxk-3.Wk|p=hſk1YChȽ5("7EzWB6C{%b".eě nvE}2(n֙xIj31WlҷAܟ y 5^9Oa^WWĸx;lyx򠝲e^vv;=..ux8M~ uRL?qzȝB<=dR%vdQd jq^wg3aSkΦRˆIywe"PtV\1.fbЮD rm:A?vmi1g([0Դ98h{5s=Vm]T8t.VG͍<ٴVD%%!:fCM~S1r{*`C/y0wG p:'VPCE_}|uĽ_3_6m鵜,neQΠxoӉ7Kx]eKrdJuCh8t>tY 8QȖZ3~B$2ac\e\B:Lx3;D38Lk#6ij);F؅KS,4X!,u;y>ؔ*]BuߊHNH)AyhEڱN)^4{F U?؂Fv4Q-P'IBcn ݈8&lJVbI?;$hS}Dr6š+xrW~=m5aUҎ.o"diU_9řο{ J6J>jx׃0]yjgဧm`[x,p I8]~'BuqE(EYKp£%iuTɷ$(^Ѧǝ<W'}n{o2EgrG#MXM0SD πS>J}\$&|յV_ZPA /[`I_OX꡹2\;|UW-a;^LF|M'T-R5&ϙ|CK^ThGL51QUAz;\ùkݕOj;ƠO992]8{fz#kq)QoUwl(~_aWSc=gc{aζB^&+`æ W=ReSWyӾvL 3͒ﲭZ &3B;Bt徇 O6)~Ԛym߱a> n<;Ǝ`ǃ/_t(s:Xxtk-yz18MtonK??| gjU#@W*Y{E9Wa(%`:W]gyr;i)p;!("Qjy,Rfz|C[z,W܏,owm蒕]5o2ٿA BZ9v'M_紀 IPUb^kdU+_-+a6˳5Ht)*vo6K"p+d)-,t,K·M 'H S56gDi>X'&1vSߞ/YQ9>bǟr@~2цqV_+ IsZzҊQKso҂T1cF+ao:,WI+L)bx1Xqz6w@! F4B8S?qLaW"ہK"1]KƠ<D1^KdXfGέ|V&pѻ[ Sȑ J,s,)% AνEJ z}>tr Qی~aԜb+\|XAˇB*}:{Z돴ʱV*}݈}V sQ-ޜ"$zC (&7'cf522$.dTvyW}kOP mMK~]5Nnkxh-uC\<ӟBYKnL%ot?`luJqda$8q)$#t\_۲nGSu嚚!VKjo[?XEL)/H/_\/Wjm&K}Foob7V=yS5`pg!"4LQƼtɝ9Rz3=f6mWD<{'e SHjPbG6|yK|*cD8')'^"N6˾^Hg!feRSHFp'g8d)fP Iu_p/ϩL#@ #Vm_7zz3UFTnR8(ޮu-{߁h/g@$\ѝ^V&Bj=cYmKlR'y)W5}X_LU{ɏs[u " \<8ISo6R sg82ְ4Ŧ 2p{n(c2iHaYs@l4!&Q"NwBmG?fA·ݐmĿn&%q6X7b}ɳىy}]ojcWlYoq7p/ ~VYZ.n|jMI+{$3?<4u757 7E&*`A@I-%䉰AXyN/qΚ# #)|k3 a1IGk);J!Q r#Kŏ9+čs`#2tx;-F~E&837E8|V8#ӿo -V+L&9\I /hI3* ~Ett"K5ì%Css6PC:'e\ssƩũ&=4qk9B~e*S'9M.u^ZuT!@)>iY!T /Rg T\4.] {Ǚjh-fRsz:[s !~(}M܅4t(3 E!/<#tXݛ6O8̓6f{T˜&KsZD1@l1~4{52|xh<Q$U C{C)_OMhY+KqW;VHCw2~1q|:YBPf-.Pt!֜9'kfq'\s?o+T֘[G YXQj.Q_@/}1Z{- Mi-1 p8 `8H$,"i1Y)/\mXo.Q'vtfޕo5L <-{ ն7-ܲv`H R!ip>q@tWA݌]Zt"uU%~AMZ`&Jmڼ AW +Ħ*1umF4 UwȬ 9v1; XAu"$"A9EZU{xefAǸMLV~:XZZ+S_Z_ۜ9XQtp՛_~m8˅ܠJLMT4 zT€{ Õ9s#2,#g3+ <1QQ'i=E4B|D@?]'V#'iVʲ{8)V‿?-`pMeM ÄEO}Z &E#sfuO*%.%02L^}[Q[w$Ū߀m%ruf^O`x],d2٥Umzoڵ"̂i}Gq]vI&q߽L͒s"t{tk["z*8gv 0ݗ 3.pnr E6vw#ydZ(ꀚ=Ls5G>{_REO'`D?T5[è]8T3cɨv*$Ac< (AնyQ9 6pĞ?bɷX#jC֌s+t˳H dp.>iA1-D:Wt(C.H&sed xo'ZzF3I|jX tлRL,XsV/eۂuEgLY!ŠAUH  wn=9 Wlȇ>f/M8̭^ѩ"#>`p{0)kŝ slZ!.rA&K v7Itk8 ȩ jr&]p<퓁6~@*$%{eJPtYWa0NAUvVSU"DY!GtW\UN~p2 IԑDpd# GpUs \*vpb!b2(/a"Sӕ`âj4v^ f x4؟B@aM5&Kfilb~8(5RPe? }U-/VEݖcT,͓=Ɍɉƚ&I`*KWj =mDb &ŽoE'v:z};,3S.g,XU]Ý4ǝ#[?B@49 X[gT+݄,Ѡ}_;IqE{,M2E1IcUlOȸ~5w]~tY Њu~蹚GX)I |?A0f9-w1V)hkS &M~\O]Wk+W!t\Hk},E lפ&~c1ċW;q?hnÆԼWwE_ ,͋K[͗"豖Oe#>&m}bXc^L;.O!bPEԷ" mmN.a$`>/X"PQ:~S@Pcwo"߲\G%i)P4x@zPV'Y61yKc.ƙU)\, 9%gm ăţ.s~PrvkF+F߉߳=P2xk==Xl0ފMX~z79mu,Zʷ ;`B2j0KuᅢD!1J8k(H]_DȱijWFx45ܢ}G7_'+!Pc&9ر(6[蜦ÀCd_&`1Oؕ ,֐vAJf OΗ#G#"b.1:TuX*>FUtN|pW/@ٽX&ac؆,x X0:?PO孮Gj %f߾I"QMT;XPy67[,3CC),ή|Š3IT?!21ڕ@dfk{+R-)}"Ti(b m:%Paז6/-cԪԮ<3\ zM֌DfGߙFȉ;(JՓ|>ϲQmhy*C]dtn!8oJvkφ^h%L5 8]zitgJV}RFzs-5TU31ߵwndbfy\բnJE`5K s5u=&W¶Bc:>l#x1\t5 GH_zT#ly;RuiTXѽP MqA<ВS^4cޤN05)ߠϧrn2"lb8ʑ"RHז\Pun"-ËRAbb3O^M gF! ;bcK+֎[t0nƻEVuQ, c]m>8uz&e7ExÚ܈%:G֯βlƅb;fSa3` I !DSP}<>l>G;B0]WەJA<n`۞9l?\ ^GHWMwhBx8@AEZDV?2ԒFph1%R;?eAUKd5,uj3Ƚ0W\Υ Kprr>ϧr+7/{Ȣ@hj0s̊tmkI94lT$[Jd^۩$ט>%KWC2 AbYKddžl69G+JW/h?!j)FŊ{P=J)ooTTZpasR!XhuFrbZ..YFk'S:cPڷfJQD  )O4xԲ3„yn]C1(4cG=eVRzS9ŐPr:V|fd̚xC8I3lk)~:3-BkqDQ+OE&V>]ܯU8$?5\kb*; DD:,BZ߄]MTߩѮmXKx(uӁ/)ƕUOxQChӗ2°,T< $knp_KN 2Zg7;#X)aE0_t撿Ea˖_Ͳtuo 4E2>sFn멹[b@ENuU~0nDIqlkDh|6w&jE!"T˭$[3Aderp89,$qD7"RgNIS%@<4ўQzow1yH 2iHUm8yB|ઢWHtѢ521ͨ ŏzH/Σ$)hr&YIZxM=ͣ\HÓڻ).6N'Qi˨x7*mBt {Z,s3BW7kOPd"usN[dڮĤXS(>ejl0jT+Bg3IbBǀ:il-<ӯL5Z.ĠiSCRz~ Ywýy?_)I^ɸ~m!=\OaUVG'eƃvN t&GbA#/:=ɀ 4r3 oMS(um{aKc.߻xrLøiқ$oY WղG)y`AJW9GÃ5sFU e^XXPةX p'YsvI臶&sO3w" t0/Q\[Ӯ[ϟ]E(DL 1g ecT.G zۑ-r+K׭#kΒfd5 VŴ' ] 5|C:y`59G #թwwQh鑦讻M^Tg5vȬᘼ;U%9WoB ' _=_C ühs]K0iK8@Δb8۲,1Qµ܅ +!{wb+f2iê E9ErF͂D*-@Xu݄L*ܨ\ֽ{E?1^\i|A|Q_H%|9hx [%wu~sEr4~Nq3IcK ۛF_Pczٮ|R\Aۙ)Up_'ū0 ѽijXG+8#pY3kM2 5oo)F5IaﶋȂb W#2iLmBQY8Cwb9d=?>MṁUX:=͹ >r: @kM&dt"p4![\7|iB(n~Їoگ{]UdN}38BF,;8&+߷c|`ɠd W CVzث3 L^y7 (0?2BڭQo)aj6FH*W&EI}<ݥO5L4۸ ۀ@xP2J›4$4nF(A}quwޭĪ6&DO 7.:+UWv61ƶm9\6b{<6RwםlGCP}ջ>EPPviV4̄,U6շřo^|bHS^eu+o$m@p KrT?SGsFL.Y!ȶ+dHae;~;-cg| >nL]*9\Qqp-[iTp g.e/Fl%=TYcGTFdP؈:<.{ХV́;5c16 }?5n d 'bϒĞ.N&uKL#l_/%6Eɏ٭t@>L НdC3็tIxoI8Oذ .NJ"!2:#т@cO u sAl I zwN2y~Z5i}tXqVu';">$_K9I}M2-# <؈7t8I^!i]DQ30.uy(@Klߤm;QXL.3hi)pƹX]ҍ{ +${s&٨[\_4D_,(*IAμޜײftEn/+y4Nyit ,܈Ov]i<$Hc1֦޸y=*˸CSdwQV#c|EFI"F̠;!HXdvNLޏNrDjlfN$my K:gܘ~iIѰU^Ŝ 6ݍ᫫lB9C;N P#VA\H6#)&*H'pWh%ߴO 觘3 ȁ##Bz^2oM&6اhj=`n2z_bf]Y1eN("0=:vJ+UPӮ>TJ3_Ͷ\2?m-e})ec 3ˉ૜ 16>>+- 3,v#McxQ p¾A؏*|VCtNX#goA?%zgjQ]YwQɘ+T'9zT1G\dJ~}K*OZL'LDve 1R+ ab4=8 ʤgNzc!Yy]~ڊ\#UӺm:ꭄxZZӼhn'VW 4$Eר$ 7LQG%·JpjX+G-1Fl E$_G-^;"Jq@lOIŕr8Sb C :MXQTm8I#<2/ , ˓F6{ D]W!( ҥ7=VWۊ`DEnLU4H9Ԛ,|@8P T>*3-wgZ=YmֈP|7@+Q|5EFsDTG+{lm0]”&tn-vSQ;۠k*&,+o#0)mT [XT Gū.X S(7Czi9 Hpdi5A#9#beJnZŇPfg{{0@;yd.~}G؊+]XxzSB,nԲeXݔ9 Sd _HL违 3cO-%#CiHfף :-z4YTfF\de|Ha"Sp^!Bhs|gm5vk;O'źAO0QRѯبB g>4]J\g/!MJvQ#N9MOOX'B$o9.=;>LT;#;H!yq䡓Tݷ4ZML ՗O};Bs٪LC|&&vyҡD"^.m bOx/%q 3؄mBq\, #dTNGb#&(ģÅ?4o~6$F+Xхئ/t@ 7tQKxy1|*.(TuJ3/kE7RfEEg&%g:WF(+];a%CWp }P`=yn.)VC\]hgHG ;vVGFЅ 5񕥦;3UOBO8U ?fh S> T6#Q09R]ɀ%BrȻsJd5~ ³rOzմIP JbG{Gk/|,f&Etg2i>[#6zfۮ6ڟsrbB{x>y E.uyFͻ9lάP>m^lEZc/h qE>ݥ\;‡祾 8ɴ,&@@YXQ?)ikGz7{µ<ӻdҪS4,[сD=d> }5?·(IWꬪH:7S6뭶GrhYgd,)B'fP*?fόpYa0z1Ն .gé!.h5S^ѰNfQQ\[O"ԯW$~bC#}9{ݕ␙;\-dyܪ|NI+d {>z[]L)+@c\ {Vk)0bnPE`RP OZN1y╇~[ [U ?BzhLULA#tzzp!\NZ.iFM !,ΟP eTrtlX+jVK^%Sa ׬YXTLPV޶Z'f¼Jپn6 aJ f=niw,rPڲA*p%F3 aF8Niі+k趒g*sYr .LC sI6f Nٮ{DЖ0c^ޓBTz+|rInrƍ5Hc]VW{ڊkC}OkJb瘺PCgye evq8Z>I9$)f'c:ؽrx$B+4Y'OCkՊVUmsBD "ZǤsK:9\J;#s[HI2 j/BThɌ]]fZVޥljT,Ԣsr%1%#a+ڗ8FKPXt/-ZJ}R\C;:*FS"?v krV<ܭ2M?S$4W!yI']sOd.WtI11hɖ;9KZFťU|W"q |G3s-7>F4\UXDn@4d#sFMIQv ,~? Fm@D+fH)NQ4=oMLZWrG2{".P/P bbGX;2~6*)vnQZ!}Onto+SlG} kܔ+{oUjýՓkKp-L􆳻,sd7(Koa)4vHսvnKi,%Oy.vu0PuZG*3BA'5@oz}ȃdƐj!xQ&EU~Gr]Wפo貼ⱄP3erb@5ބz_٬Vqb'Rm'}y-Éʗ!p +*ctRp bNEpJ}6ݧ?N,7aFu5ĥ4s@ l [>oqFdwJgC,O5rˢ;#UD,^ K՞54יcQٿ'yUfh# xŜ . 75 5C~L{ޟ/Fwu] չ86F -k 8E8# uTaRcd$RfRUL`kdy% ,Zvt=&6%E#Goon S79oOs\ OPMN MӀW=/=_ 椨Ǹb Y+#&CgVd{lT7 c(}#mrMJHB򽶥:P}@ׅSc?;uh2z D;M8$B Z{4 (b.ɿչRտ&Y\;cy^ACR}EQL*SU3ċGinF"zǾ%z' d4ށ)"4#Ջ/r XT/ن$ÄC<ઙMt~<$ʍ4RZ4_s Z,a;yWh+YF[ ^U,EaSGϔC%N v,J\#d}4F$/$ɾh  tb6ɭFp] T048֒qQ6 .XwOACG5I^Xf8[=7}7ߒ4.RsOћ# N@c5yrBpzSn+P#=| kޕ=79#J<Ӗ9N'.1>  AbbD,AD\( Sݟ<0b}"HfFr8?GV Au@ ʎ# -cGĽۥ͖nc>a(Ӎ]^' Tf]S]4>é6tge,ߡ컶aH$ܱHn!؈7ɥ 1QG,i)} t˜޲s(SEO_g[\ TĞw>0+þi i S5sewyg:^lR;o)߽ێ˽GIM#}y`kjC>8t$vћTɺ'[Ui)kgơ̕bҎ J_5X 1:H+_`_;7߃X; +17􁇏\*%b 6? ߺLD,3tD4|<;hy7&6.U ;ǚ:@2}zt8緰ӪriM i~!0*[l:xq" @Mޭը:cmbV i͘]#ᆝ~4bi.Zjp+Ec@p < 0[&iU|LkjǒST$~kA$H˾jxwV5t{ZDc6hDi*%v֌;/h㄁IJ 3P{<}bU/϶4/K'aX?%$EʕhZW2h^]Wk۶cVQH2H<RChȕ!8>^ >| i!b+e){g %*ݫ$}W*OՅ=|ٵE4ǎʀ5!b1YX̤z2Ƞhpu EWME>.x;/ z 570LaTO*GBH4WGSR5qg-'g1)neWW^D_ґι:ܳ"/zC1͑yt"l7Uz9F-dG2yevw`}}21"n휷5c`FT s-RQhˆ^ok%ҹayI{ؙ\ycPt~:053O{vc<"XS Uq닫)]#5᯹ x-b;"y k̬_ Ŝ?m8!D 4YrcgoUc*>)yvMX6'Ye9r1vNFj{P/ )n^ޚY|A:PTb%߸UKTƏ|hAĠ[`Xe MaQV@٫[%l"5/uFvI C_vg`'^J!ώDU{3ŷPlC~Y5 j};}R.!ʗ }P>Rdkۿg +>b^נL X1u\0Gq'56jZVr*mT;Nx#9KK$G0#w*]7].\q 4LLN_$fz nm_RVjXUzEt-B,vNCo^Ǵp8HskzG>Ia31\[%d ! hnfC9Ƥd!SQ+_:S9j44Zy O` b_+u!g}~sQг G#6!wgP3D_q U*ԞLvH:C#+A3C{k O2+ \kk O2SHq\u݃@*aWRS_C3fr2Ǩg1"08lfnF!X2=psB=׷AHkF<$1<x+{S#ikS|3x\N/(y-ԍ}ID<-TI` RXx3H޾X28-ۡf^N}}"%6`9(Bm;#' bL8G*,N^P@p*^{,={j^I4Te-"RIP̐7e *AXyh=>)\#*H!k1}< ixfdT~S>VA^{nVܜ:qM.1%

    !1$8̈́ߩ}fR*V¼0=D ⺭ 8Td恜>MvLpT<ݴ|$TѨƮiʃS+ L-yÒ>%XNwfFFvDvn8<.g+``1|.1)5?`h Q\kE 3FI X[ԾQ&9}EKn *a&2:C?e(IkkW1=yco+C> TҶp-+ $=[(-p`m#>a]#A1x Qыt#EVg~C|ܰFfyNMt^5U洱%1<=κ2$$e8m} }ku a3斅#`őӭճ.Ǟe`b=ɻ\g10_om^{bWA?u',A>d+¸¸D;,UK`֖Ĉ q!Ϩ_cގňg+ՔɃ!t_Y;agz#O|sM>sW5X|iW)[sk<&}6M ]i4]eV_3^)hX0^n(f$c+>lͭ+|Ioz%ajaj{bjo! KeβX(<:na~41 0%1,2WmnqP[jU`lê %)%\8OdoCӮ&̓\Hk3-ԭБ: F,w bQ*nr$m 2#'&>uBH%@v>G\ mxO8| %f⛵[kO|Ac8B͉6hW.3t4n # 1w|d&"3!fa3MO[yA5H(yDpy޼+2W.,CB&Q9`a[Px=ʪ%C7+꤄X=VJ¬!m]YYC(2s ,ʩ76&Arw2:I.yc%Ps6c&z.jrX2 ri"@L,܃`aV:rO=A;tQը ҽțgh&͈2NXw~""7Bxc (R^'MXpQOwp'au'.X|js$c!\/CFœpyEe8pt:a{/7fJ*Ď]U&12ѓ@]y`'"/n O .@ȵYͬm`Жy,n32)Օ9h 뛏V`'S0%`,z8bvyS0mllKc$<,X!RqȩSlkMy#LkC즿䀚ڍO+}LcK.MP]>|e(/DA}xۨBb_3-nͅp?Wei=+2)kiIW;2Zjev}p&hCbW1}rLo Caȇf=~/Nh'O?FVZ\h-c)p@ ;zN%c 1eϪ_AuCk啝s1Ϳ\F@ gWH]43ˠlfLv=]Ј ,EPmj@,Tn `x>#G:U#h6U8VngWy~χdcK[ '.qx %8BJ,98n_E!ME'xAk%XY4sc d;+c҄ʜʼ=1E ք =mkbo.@=i |; >R#*bP$(X̝ )leucǞ%M_8dSdl9F]ߊ.;\2Qꥊ gF]nl t7<5Oѓmg㚜5oLR7 &K =$E3CFk&?5W`9)4 ?y :[ !<$޿_q-+AD!BdJ,ÂW3cFXճN!7 ?6 I]g!{'526*[YWc3ĬEWTIeJ/O9MI3Bʢu]"T}Nv΍b2"HP$3Z)Id.G6c.'<bt?.DYsV]/B)D bjo_JܓxNjA෾臉@ZINyb"<ʝ)mt,iqvKGo0+L ycd_]\=  Un# {Ls߯9ĭ%af 'Y#m@0S$JS97e6C/'B4XUuk<Du@(I|*5#V3)B>*z궪ΐol > oSYD/ LY rs2?c(u,ҫ;2 +ևX݅hiWј4ʹoF ~TAY Q|Ǵәn v:`7 y HR(!پt7|Np܏gGm -͹>nt+I/$(4lO9H&)RiHo5._a虌qw|1j)xf'b~9h!c.iu񰆆x # ?y= 4x*Z&w<5ApŮ6T~A,uo6!V0fM8`76$?)fmO~P6>#`_zx_dwHӊ~[Ϋ)wrlwg;.CmԼK*+CPyxYH"AUQ Uf=(|zNe(1Ra4H}dxrK◟@_AlΙE`1}F"ğpG-& **H)gHg*#,Dq1J)AtI!?:47 RԬ!-l"fAﳕE!]ڊ_Obbss[I#~+\}袤vXٓE^Jk#=~j~2 UGFJ!luk $ν6NnVPrD}|#;#t$d7ɍoRUI-tatfkw'ɽ@%Kp \YwacR'  n۾*׶2U YqFv!)R' :R?T3ƪ {Qvq'v"]UNt,39QDWb5ם&(o[JP׏t'00BX-g"tw3cjM\ Ug g6",81cV+tc,ZkH$IitÍ85@3޿,{l,5%h9Ne[!dS2ڒ-"!XA!?\3hs_7f%"ɕY&'vjsAx0uSqI{ BEۂc+c{ww:K/~5qɅ* wQ4cAp n-A >4э~6bWYf 8@ sn.vbZ6IvMY7Ӓ^23{1h> gp,%P9. bPz6FFu_=lc=Ɛ:ɼݙ R5>"k%p&iy^pn'hL*BusIڲ15B? neܜ1n1xH !N~ @" kQn>tڼ ޲5]ZpwS%g101ʁޖ오*FZ|I\ L;(LԷAS K}O d'17H\@.]&2IB@0]iޢ}*:hC;}_( Y)ƾ~. k?nSߝ~~r_\LHVӚ~ȑ2MŽ2,Ϩڼ;W8I y .̙oS\f/]U_mÀH;X&4S9.ҙGGyTaUI589ʅ? jrZv,V{^f$(bQd0Wfi{ '2 -az RRS@a> E 7z4Yd#sr~ґ*Lc]fFw.蝧 H,D;n=LuJB>ih˓qX`c(Cs&2SM)Hq T԰H@lq3PSx{z}vE.' eN /#6Uոaz+[o P'GN2VNMݯ,-]3鉡D80L -5\:.ꛓ|)S}ƝtKem_h"KN:5WD_  `\j5Un71{oɠBjA}KZfg5FVt{RXz5!Ul;7&7>wPyfdfX!Ӑf߫ }`̧}0U^Bf jE?ޝ4U/0vq_"{}ȓGujVkhւluZ[LF].a`٣-$&"*;GtDxڨ@!-yL6`f\9O]Ɩ̘[   fXF ob!Ph@/v3o;I.ghPR+պ@`s)ͱA0+"uRSC@=2k\q~Fmۿ ܩ1"5$0k91+eӜt0⎌^rM :X5ԑ4v9um8.A+GQ~?,})NP`!YzV8|gDԻ?}h?aXSwIo(Tg~Sq_]!k߇Kc__뜁cS߹dw>J*+ ?TP|ScgH΂βvFE͠%ׄ RPK0zvKY$^o*ڳfkX?LZ L)v*?!b^˞,zΊ4wxC-rX{J;coH^>>F}< Ca\5lYTGNϺn#[1l$ZXcnKhU8߷!3! FUp;;"s8;d~ʏ^y&.=hxeZap}"ekY|f  {@vd#gcbsjlDɫY5Q s6nxW^}N`ӯ>oQ\h7~ɵOmw'ؙ z=`D>=.Lm«go5,q{i)gh쯭0a7Qz ͑1acxx0#"B_dZ[KtjmRf_(=jo Y.T6AMZέwdjE#o+[$TvNK|b> r Fj߭V B8}Z^`^yO¿G+&e{~Y9x[bt$xbodӠ}߱}ӌTM(!@kE#4"͠E\IHY:arr4ˣxf'n9q?B.P[.2? Zf6Je;c֌Xt]t4:s+ٙӰS}Fo9^_ N#E楴!~ѿk>Q^mS_gk~h/6eRX{g]ğ2qRx0k{qô]d`5 ͵H~f8*={*c[9R l5΅rz] f!Bqk(- 4,Gf b~@_Y. en\È )_r{uxbĬ~J;YAqw !uL ri.b?f< <-qǿ4aՂ(O֠4(Ek{D excrl5eJکrv1 y{ ǟ8E-N1=U^C̀'":&ce:mZLQ _I01~:G'k:X547bdbpsĭY;0**8ak'dceg`ݼ'%ᓪ0`RGjN7 nfi[ǐ<5@Nx4E@LcmC&~G:FD8\V8q\)^a&m+*C*gE∗N<=P BQ!;=|ذ$Z%1o vM7Qt3Mc1 쩴dh,&-{Ps( Y{0ryczwg>=WXLߙYEߊ0%HM1H%~}:=ZVj>3轾"3SC4_o~jCB{D<³Qy`FքڟȲ۟] ]!JV)G@zG&*|!&Nj/+\sb^6$Q]Wm(Kドߌgjhb_؊ *-tw٫& oG«{=s:p)꠱hDK9*a L?Kz\/{llwSX tVrz"ā:yI;ڷ*oRS JzGcnͣ));_S4gq=|A·o7ͫP~sX%cf sPnfCrSFzֿer!z>E'dpY9gE|8=?>冁DFϞV[kFh:m^G"rX*]W[ p&d! v3'rHRKE l೪7ڶvBz5FWSUuYlrע(S\ ,ִv>aduf/VRI52Q﷊Nǭ:f IFw,ٓknCܚ<7Ѷ:?8%yin]v:t^Cia$JR4QJFubqfmȈiAILTYeXwv2$uwf#zJ#fbSC|G^R͕b 8p cDa,hdax{TuQn M ͂\w׫L '^.dZ/pjx5&#r?,wUy4.>ˌTp'(qo}Z;鸆F%weTˆorq nvIQEF$X,긳_|ç-^Wֶ m  ,h|B&yDjr,[Z 1'ϼ+sJr$_x_sc#ɦNUd[!گWp &hPőUR ˮ!>Cp d><UbKO*t'<}_>$'^K oߺB(B" fC:RiUvšseD28Z_i̩# 8fU|*qH|~9 .O׆sQ/r `  !$Q9  B/K, y `X0_WMFQm0EEzҧ oʵsgY %GzNXd&vzI0 SR\ i[V*X/[jvUxK@vzRF Ug~m64%.z%}bBBpYB|L) OXp"ܘq,rMT $q:P `kP*OF^KaJhs㳙{ߵٷR 2]eRn dc^4pr,/4hABJKɇKZ|:(F"5q} >]'|nTC*Ghȴ1g"@ .m4ߩYumfBxȸJ["j)p\Xs >L YM(v$NJ)pT4ˍv{Y;@~/"METJ]TTlWov^Xҗf|?w5F G貇G [*qhξ^"%غ$wYn5x홟<8c_U0̿ŦEb>oO5ޙ +ruBf~q-&k2ʥU*?:3X`Jp4G0fHjpPYlsԴ6 挗%StquGȠ_m/7O]?QX=sB~}8q!*U]ٜm*o*:Ky&U~7$H|9*^sEG+&|j0@/YQؖw^i'gC7.8hbE ݸ>k6D /^+0| 6Ⱪ-^>.e6Ux{WV5Ԯy$Wq+_*_1 D k~bMȒ̒:xCK4kZUE7nS *SdޅU"v)U!FoСפIEYMi@5x3vHʬHl3fhMMunu ֍h"X=H\H!W??!@җz 8S\ٽ\^X_XԹA!Nyi\IW'0A];|Fߑ-s̙l zlMnQ6^{RyJ7t|:K혼 $xkȋ Xi~,V^p7 x!I/"3CrHe<,F7RdVA MޤNUJ'd-!蠟@d8P6GKfnYo[^l#*t[ TP$葅MU JݏN|r]n`ٯQqYzŰQrZщL=f~̀2 pZ>Lg%*Io@δVl.d3@-,J;Z$|0cR&5p I ju솴I(W*hdjpj3}pǩ}Ia : OO}'*s:&'  #7Zq|uf^Ԣԙb1DJ٩fW[ `z>hfV@9: EbL? Ѵ{{ 23Cbվ|9z+=C]=("q)L[kbXlSH{=*bg$`huYF_Z_3`* HٿR̐i,^F7pPvxb*s{خ~3\FC󊢟0UW ?95M!څ_g=;Fi"EY]ũvk4cm\ߢ| p33%IUåAʬ P7{oNѓ6}!5 Jz[oYFuI':oH|xCVZMه7:FAL~ԁ#N$C9F!Q}ӯz |xc``^{HݚK,e*py -sd0F*j00+ՊԪP Ӫ)9}}sEUKl>s']SJsR{ FxFhh sSӑ¿Z#m T@hnQ; w=cWZ5h.HxvD߃`j Sבz\ 8{-4g r/U㶟sE0GKZLZ3zEt: FNפ YJFEaQ$a9v .Os{r|o"-mOTqLa>]gia|Jb%3@gFed' Kc6CAVՂf '^654;S"Ҟ;,{p X'm)2Us4 V LF$> }K%xM9JWì(†ئGw< 'czR?(50%tǠQ]<ܛ%$y&FKOt0c[2`1b,3|kb *%]]ޫ4h'#Bήj,"Sqeɒ+R_~17|$8j3 #UEge$n&NoGoƔDqx񈇜Mg^X5EQ+3iSanձCV8&l|F/:o׷x{] ClrϚr&a*Dy tWwY<-_@7Mk] 3` e)ŘHo BDyeN<*j#qBsuT .^,,S| ?X?za鉳7&ʲ@PG3o*3k:-u9p^͠`|kԼm<2TY◥2 ? lvF$Eb!ʶR ғv\8/L%{TEGFꥦc՗E&"ZCs1uV<ȗ|CldLYuK2x6 l K,5?\Mq{ iH} 7kTH322@Wh:%'-T0 ԍʼ6ɳ$+dX?&(0rr 1߈J<9]1Zrrg\/tncݽkv2^VQQYKLT;=<{[Կ277ohܦ"53HA KWu En)s;*a@vyajٜ05~q8 t(e bM/}(K'XuXp%i{+a6gj'^VTnEzmnfY1Eߎ2H}әU~j@lE(p=^ׅ'Qy>ϐzqÖ]iԂx̬Wk' Qb(WVwGezjTV0Տv{&rb3h/ vt5S wP9+FA&j҂Q_Pr.^aыFoO ܛC,6 U1,5SVHRHƝ>M҈L!-\X5anAfj|*L I9^9DL_1fC5 ɣ7ܠ, Y{5Td ّ}XLݥȒRH5V<{u 'BmA12{Qώh@b=(ui5jxwW =HW7:Cݦ!!e{JCϾ~OѯXd9x@GɦϽ˕몹n/ht o`pizޖ 8S]>ñItB[$8ء&l%t!-tX>dy,Pָc3EYc&4`!:r(kObsKy+h'hˆh!sǂ)e`|Ơx!Cyl:=+8%f<ޡoi"Aq((N1= Lk)9Mwg^E!4,%ifj IAnUO0_Ng)7B"|.'ECeS60b* +GZ|į!9&3~ؿlMo+BS>/ƤP(7)qLR4KEnDl$08K狈Id?~Hn>QCZr JVCjA-XĭVøGN@c2u4% q\q[g/!fmT5AC)S]nj5P+:9*E5u6}!B;U1\&Nj"Ej@28[ #W3wyA΢}XrI?Ib.uĖ hgk_-c8U(>EɶI'B_KJ&|)cvZR?8ɽͦ~ ٗ|\iI|] #Jo,ͨqW7=ȔϺ;LIfEuEah DGj̗C (`3F2[޳m_ =1$;,.:SV65ԜRK=H@#mj1`J ˿ZlϽvaRNؚOd R`(89P~{qzmg ,;B`O`qq={EAVrG&rlr>1V#(1g8Wh{EL 5EX~(wU *5_vy"QE[$& X|f/»F3v7,gj͘{Ht9pf"x)$Drʵ\oц@eϮGCKkv\(`oB D*$F/ jj?SV<"zlyZ{ b{El#143 w%2nr3Р e k_x` 28^MC`r,ziq] t&a"O&Bs; 0+xwz G(ϐHAVo\V`=ВZEW}R䎎@Gƈ\$ lɍvSswUmij@fqZ[g#!Gm[fM0sAaq.5!s~y^QNi(auk$ů Y2:Րcr]R_ j3wޣR.v%I{y"7ՑPٔKW^`bzwK]EMՑxɵ"9o L fqڝJ) Xn+ώ3ϣKT6N2aS¹Fl4ʇt$_nI_#_=,9uuw:-B*ɱqq+a<fh{nX:o`̖0;;j%'ُ{ 3Hg?3QUxmZ0Q8:%HQ0Ԃ}3y!|kܵ!iqk3,}aCWpxhöȠ:f&ytH%|ܴ)l$KB&Hca7vk4Tr"DYVv kcq$J&B;ID:#i"&VуUT֐\ PB`O2cs:r!Nt(Wft>dD݃Ģ[SvW"_B 25rd a 21-8zbZkONC4hzРޯ`%{Y*`轻iniXdRVè︈dQOۅ\_mqBt?r}JQc=H_?;@x_#;yV!LSOGuoד'WP[5m@BJrp?!wFuR^ t>`tQC+*ktEV?0V*$\-^%w`ڎ\~wSy1yeTƉKv5ф.6Kv"$kP[4#aRlbk;K"2ߗ}ccWi.]u$fWHgh—bN7u]Sw ,q;;N18|̽h}D`] -`2:\ғ!vY_oTed4tuC|V/ʠikNA~ L8QA#⤺!?Y !JbA`MwG %5-k{l@k?`>WL\y蕲^Vx *5(NO{Vr2lgbWgZy[酡kE 0}i: ʯuNjotz?ƟDsw2O?ۏ},OrNQnā@DW$sdcLKMpx;lS\'ڡhx0fqxD,r42MO/QtEws[A雍->oS&kAaL+ {$TTlf9gbI_e*Qn&];KP߬B !=s#qJTm/ 6HʊP<^40bg<8PXL h^"%)O c.uMT* ?pv7ˢS9=Mf!,**(V*a%9F&y,e%8h۫Y^a!HCV(P=Zaև\e;4 IGrQ<=J8vMVy?Cpт@5NЁ}Ȯv!˲77 1 ODA hsciг(c?[1LHJ~ II%\F<0O]LWS帣(ϥzJx{ǠH̷$DI\*2X1r1̽WIn[w~|F\HmV,!F Z֖9V=TGjRwsiRY7 -k}Bv;ȹҎ Jq kݝr3|sb#?}Q6F`M"cěV0&Sh</"Q: @X=Ľ*?%.U]ɓOF3`A\!ȢRl~)juyIl,YVJǎTqlYpNUhl`EAUʮvKJ%y^syϡ, ّޚnFۂ՜&>  Fg9^#ԍ!k^`v/|?L.a}`n'|8=\O x'Ex!^Mj'[F:8/ØW#0鍋0H:Vgz.-P'v+نʤ,lAncf.*;րx>SI2u ${' =v T8,KAyV+;M;*u p)_?V_Žz[ 8:~RBO-r;in|:@( 歹9?<EC8NgK3懄XC);e}^mR;(ǹ_w4[r&LWb:e^3su :Z8­M2dBGdZBB$yflhՠ0W6_+gZEo:M85:5+K {J06(5=eO2d-ʮ@L>X- /8%7E R|_Zh3Ctʠ]VR9\BvGoLr=Օ8ڷ$Ϙ.ʪUnR1 Gkɾ. DfpUl^qǔ{6Fg99hxBiMG\z-_)F6C5%>/8PV<¨\`WIbLp|)FRZwR(1ꏇ`;KMDB))0XJ}"0B#ePFަJlM poGP +`^R-8o% -S|N_x9bA rxͅײLؼSinB 9SDCLh-S}EvZ;"&ΖWtol٘ײC00 lv[`XѪ pZ./pepJ/;c2;xꨵJy#%?Q,8$|,i,OZJ쿢A*T 1 㱳# 9R4(KP,.{6t.Cqz+Snl( ́"Wz ?cѫ/QlQ83{cADfVѤgY "5Q"0H)I*'BBl?3ۻ O!*KQ2bxƾ{"Q]̖qb;j`E85^JI -DIݏ_MIt튭lɤl4Y0U!J =Ϫ^{_& ?^R0pG&J ? *u^`0O>~;%{'ܩ[@9 5S {ˀ aΨF7O5]BUpWЂGf+^cR1<{RJ[`V f7 |e( "HZDl6ffC/.T\YH_l|.ڻ~ĻA<ٯxd%v|@J_`0PICG0P~鲇,:)#cg;;sU!l4")jU$ϑHU-ZXFw}|/lc.^HX/B갓^CLiT9'h#٩[௻*x Bnyu$5IOY mc&w E&5˲i㻙t3?# /*\KD?sxH6N,=H!}8i.~\Vq!?Pgrj*!%N`f\=ܺDK!EbBGlYNFHŢxvgRA[[wUBoBsv+?$R rJȉbx'9]c`R2r`W`, 8 ѻr<|#il13$O2 .m.36J1|GICl+<)b9QtP##f 2Lp F\ -"84 L=0&  xO/fxzCϵ#Si9؜s)u`궀uF\j$hU?ݷw^ڋWhf4K,--"ni 7#& >&Nh'J3qf, ycJ47KDe޻F 4wOª}N¿c۠p>螛'e qFIDxew=jE" I<̣t K^G|6jK<\.j7bie/E:np߫s6;./D㬤<͌2vQ /qW^2(dQ +W)2;cFiK&&v#ۇW(g||cx@zy9".Idz`d_DGf,^0I9]Ɍo%|7eȀLf*_ij6<:M?5GfkC-d@O~/8+0> )>MIZYʸɻoq:H#T1,Fϳ}YC+APpl !5IL 7L]Ȗob$Q?B%=Hv\4d/Ft 4:WXEQR`*[zm@r))wxwp\*"2K9֊J=zSojLc3 y4p? 6; Y9 BL,(EN|Nor}>ʎ K\60mgA2-T* 7-$^?Jh2G 1& l,1 819/ |ap]<m\V\ZB;9LhЍRؗѡDl7Y)7+Mo~GRk h=8L۔]s:IS_gP#g 2MU5%5a_«!Z˵n\HkR-2z`bת>]qUvDQpXc[XdJ1?S+6g9ᾹQ?`Tf;mv#'^FFFɒZNO@ܶG|FY`|y*v;)W8Ajt4+o^ԕ*Aao-B9X%& R׍- A;=EvF>c0! jʢ$k,}\WAz-$wb׼~DZba㯗>:g#zLcބ zY 沂QB.i\PCc*ʎ+56V'2gxn'vGVn&N  vthbmq1PuʴJ0bE_+]"郷som }<<~0;py]%+}1xstzlb^SG#52 ^K0/QЍ_Dӆ(QKNwU=n_lq@ r@CnkwvAd2$%`ԯ0$0[@|@Ԝik}n^sy>:"PU}bUǂ$'T}FE%?WLs\ӖԶ5V6#q qfqfDYh6d`*sA:9-* hu|%iq_ oXlt]?{¯R`t`MAgoUG7L~S(JG`RԣzbvBOiF (QU;bHSjndDEnrPt6gO~a$VZNh:4Im:qw-<I c[96U벌ĊG_˻_ JDMe4kh WhK']2VLo8_n$oO dxYN$CUS7Go[ƙc)1B#Pps1q0Ƈ6.N^-rh'%nC7.P˽h:7_fɗgJ%4/ėc"BLzOlP4ZgEzy/'OM(T9? Gpsx^FP*Wu̠`;%L0Sw>d%"{ (|F4%sXcN{S,X|ۧp\T)|<{fwCLLa|0,;ı 3AFuUAQq~u-׍b]1d%Ŋލ Y2PqM7b,r/“SA) 1R(%30=_=pr Qt ûǬf/Tm?Xf86%i)x8IL ~ф9:5*WuU$l+ү[Q/7(הqSw NSo%v/xFM|0^Z.E#Հ?έuPZ?ҧ32j8V uV2aRXYbaXI1`ՐOE(,YH#W8^Iq;c*;:[GA|-iAv3}}*;oSHTG4 #G Kq2Y9Aq}a4␜cuSW>3d1F\yL(qв8rB$0)m\nɽ@'{t)'n/S#=v&'-m]uDAI\ ~9 S 36( ;قlsHxZ8)C}GYsJ祅+gcWA@2 傯VMi'U *1=շxCi7 kJXE,59pjo<64U8\PA6jwX?͎Qa}-+#"tלn#Rx50N0,,Y- f(m^6V'<~yIfnƊxUuEKW"l/=A0dn)].qn d p{.l9+]ԅv("o͓XS*7;יmMixinL(JAk&ͥh%QH M^718& ۑiƊ˸YhG[p#bݗțBl|QOl~_yG=D/tJrǵ m\"j8#FMlΏ^  @ٞ5_h оMJMa-: v6ȈTv9a-w6msʋq#=S'*(OE84:T2?muG(/GQ"HuOul=ĥ/>'[~5A8zJ;i\k$ֶa9' j] |BY`gCڗyK@c:w cm[ tI ?d Κ:F/QB9%oaN:ҰIB`hDS, eQ`q$}vF ey`6b񠉴G"7-6mVfo*V!UC" <fZ﩮 WeO(o)nhvzsH~rIP//jw{CZ b6h')3Z9;?l*"eVAdDjC}0 +E :ץǪ,8U JƄbfX+X|R=;)1?- > 2JO6?e]) Yy$F l1bMM$ɒvBHx'm 33ͻ_TN\KYsB #TLhXك7(|y؆i-2 4Exe=¹s֓MV٤ͦ?x#ycQXv;:< eƥ27Zv-*Ϛ9%{"7Ln"c|rEBbKmcL#)Bbo( E8Y?x?bq|FXTmȡks jL\2<җ0B4<|JIjGR(JbȤvݲ)p`.͠k0=7,g˖d#*szuE0AztN_hVMBP@=j^GCw(.O1Xt"A.2!CN9?֮%Ѭ+>[nLv$V߇X=3 PSܝ`N$Տw'}=UԬn5൭ ;țh0/9ci"O)v"o0W(؟:ܷoe:'#1_~{R09C36I^SR&'XXI5ɣ͆XcJz\3;:Ûh<:e Q9X6H9($}9^tՃ%ɆY;R#M'HUD"hi2KGT h:gW#9*Wd9B߆RfZ"CMH3lDujMi ϘWhm3!ڵ·6z%8^ M9˟b L8me9y _Ƴ>%[$TzveX(LZZ.3s?˚hl,Sӵ_ X;R-nqgY.g-߶l'Gmn)^mODnI8pͶSꦠIZ]F6Y 8ES88$"+ATƕ#)b֌ U pHq}`霩SUB H Q#?H5''2uH"K'.b|e-![=%HQ!maAjYz|NNmJ ESz((̸|Ÿ'gmOTQ=O9QHCo Zȭ佚}xp^πT-3b2n(P4ƍ 8GThqO'/cvF 'f]bpe`;Άخy¶@c.j8חIF^A}HZuՄS<&B<@uq5'y ̐>=;N;LVg!;{^҄8{HAg"qiE llaN{ sPxo7d R$8_iY;"ntgٓ}յ͉4Q=3}s/LdXߋB*w3 ];+HkZRV "8G猋2Dba?@>QPTL_<.ejs-YݱL#hӜK"߬L^SlI4*22S:t侱>q`SUQa *S5UoFDu4bvA>SAs>bY8B8K5ԁ(pQUE Ma'߱ƜWxG+%IIdrjRo[/]0JԍGuȦߧ_03oGmȋ o2QXg.#?&e֡3<[2 3QYиUJgRG%%#qj]'BmExW|h,Iޓ}LJ<`ʪ"DzUOI\ciE֟@C6t6"cyJUzll0W^WddZ \!n/dR#NڵayƲ7"M;yS|lQckKHۏ5k dM)/&e ᖃnr8īh7=?߄֪__M&*e c㻷[83&Qӵ<xcE1oP9ͥG4`Zi=+!ꕆL/Y{9\EӑE7d &~ aݻK`~teւԠU\ M TJ&^njm&C"GC>%k\C+(#^iQ\s<?OY]p~`IHٸBx}O#mDNIp_{ț2Uw^Y z#˙d{;Gs*㭦=<\9"K]L>c@CvWA9~M:mzjॣݣoz;nQlj]C-nmcOg)uPKbF `Az)Kr@EI1]R@sЪZL@݊>7=ʋ^\Rb%n19*s]մ&D",VE8װdҲʹHIM-^Ȥ~5WӁ+_nZ})PuR`7w= fh]4M~z>OQz{+,xgN -LB֘y?6I4X $)aѪeŒ!ap.źaRwv7FDz1 G}FFr9 rϑeGO.^ףxn/]/${,0|.qaqMpo#1<μ5ժ(ij͚R[u(%։b">.4 =\|p$$F̭tNlfZí&SnvxB{SB&W PҀt SZ$Y0]XSq\3"Xt`ޞG(FLy A*ksVx}tY[ZcvҲt1_"F.Z !<{LKzC7M:z8bUMi+&%.5azjke [Ps"N-0-WZm1H#ڠ}< I=q~1ҬBg'J2fsK2(OYB~Иx?iqOꗒ%|P_JYԠRu2@P=temC;[I-J7+>g+Z(@~ՠvAMm,/C+6r6 θwjm$~s~}Jǖs9q.8We2%`Ҍ4wX)fKYDk⣂DCؙ/+ש7zQ]J: J0U%N "tj#}«n83i&T&d6h 㘅\l%7"KȀC]v-gb藑$r-x3d~lTivy5E~Kaf},H-18vnXX4ּ| 6%85-p-3 NJ~AY#JJ\3Tԛ`#٣9=f%D`ӄ٫)-K q0X]O Y1?kQ)zį%EoC~w4VJlA_2[ S+/#KN9揖 )2ٟ": :FrL%⇝IPBC 5`M?"EBTZgxy%Ǯ"Sh8ӾVn{ܻ4냄aե~FL-I!n @UJ CkMX5KN0Y6XEp\{E_p% 铓Q%:9L)=jK%n/O6/}b <ڰMTi5 }M ~D&xᰔ0c;vw_GYf̙=,&q}m.R1Zd[@@dT"K-"!j ,vP+W1r=C VݷUZmAg0wD91_Ah'p"92Vg8 0j<(R~.p<zJ(uKAA"΂i`BGןy ~UK/: CR` Z3RIn݇%ha.gz}=;_$(X(]Aeo땨f厠EHEr6v^4!FxqH,Vj.^ S쭪9k4+A2STӽ~J^Elp eaS46!DWb .+=K z (TȻos @>U통 eυ:%4(ojq8] E8~^tq{D5鄂_fTQzn9xm4B'8%9 gMGŅJ.FP\D]+$#iGVvί< >7tW/Bu4B6Q؃jKzN,P][Ѷ,vBޟaH7OPe=@qvB<4ZȪOFe]rfyVj)u*@ jlbjjZg"fyo84:.xm9b04LΦ xnH9s=|#QH勌bRoVFcL N|wؾ;UvNQ1wrB R¾^%|)S9ͱ, v@mQ ô+!~-#v/=ͤPSOXUhq&l&G2/ ۱<^&ѫS3ӥtmuEȞV|3oey'jY]GAzM::9[xήf;]Ʌ՗>$!w4=,%*v 1-b}ltx#{/?~< plc1`eMV"x’" 4z{K=eyJh!>]^s£Ǐ HuOX9V-lRḺT6W}H9zǙd7zeI2>ZV(zu$?++Ҡ֬y7TS x8a-b8.Irf%fOCDE, JS hR#*>d\|%b\[M7ufiw0& CLkX *&<%Žc ?!4HXwE`u3cB VM^$-[Jܢ/e¾~6{(WfPdG54#]E|O&q;V_A` hs|>%$ܿjS.&tV4Umyլc O>=p/w]Lw6w41<:~ůj#Fwgm 7ǐNN.iv{zW,$MG[ n!tsv?hP#JNtM,p~>ns9kKOAhDRwX('{پڸ= mMsZ4͵_j+1*nrF"KhL*&̿j IBk^.Jpʟ=/S0:429V"a}4~L%Y?EEKUǿN 픞ֺ?hM6K5b^U9-/ٮM' g⾅xLBeB:H›i t3ռ}9ɳ7K9V,*qQVƔpԺ;zDF_z}?gq7ҕ-dd\|$~Ƥ݂0I 3"z:bdX\xPZZT>6H cr[lϭs^S$V⤦M/`;\9uS*"b(1t%+DbQdG@78wŚ Ռ^7V:n@.H2.̓#qC,*`:~9n¬Z#=ZSVJT9h˻p lW6Ch6V5#{$$(v_fH}_-^^V'm1+C51E"]f&yq4` qc%q6o 8a@e a;]!(4ZUvJV};D= ^O5hq2XL',5XurSyb粚SYGkleh}vhv4C(ݳjC* -6qLZ|?㻅yG&%i+yܤ-ƥknx!s޿N]W0U§$%Y}LZE:G'``nj\@_w]`X_Np^v:D~ h)40e-)'?z.0sS5T ==DJŚf7M5 hVwmЙܷ'W5n>?yhe됞;t#"o/?z lP-f"b%i*Wwd2*&-t*\?~;!z@D1=թĵ 6L粟!5.Ў>vM`OI*N;ER(u6]V}1,<؟z, =P5gZ"}I\/+|MAǰۢ@Gt.:j ٸCJI:.qXF>fi=$Ϗ&j\z7J+<Ԑr}{A3ę ӫZߒQڰl @BCEo9zxaw!>Qp#!v5Ef,!i7 a'taFNy?lSp%rF5Mvl2mqlh[ft&`n\.ʢݩd*WKn)@_m2P \]y>sx`!}X%465X+R.WpaAW?'巫tgir@p˓ ;IJLl dG[gƝ HphM"'pܪp5UVЌX6@U22G7z-@x`5sj]jk2vq4l^~@H=0qꂶb 8rfq$oj@&aBJ@ݟ Rک@:K0 ߞytVeD߳2@c<0?y)t+- y])^4 qU1z.N(eJ{vFmYyyڡ5b)6'hT (DڕbJ+ ɧ-//5(P9$"Qz$aa_8Q bkiMaM=Hh__'[f2yZg묠8TiWemRE&@yo$ma(aM.!Y K}rgyDbb6UV̇$rG3`^3}YCtWT(45gdjx"|.MG%:7C7-J)\ 1/\sՋFquS HP_p@' AJ?e|QNgZy[::V>¼vݍOxhj4|XeH7+_qJ PZM;Zl2_+ЦZYz(]Yb-UQG1Ok h3;|.XOA>UǬ'=| -D!w>L鸘Z ߽]c>Ax3ګϜ^s*/m41tYBIB?QgbN!6z q{ą.͠uڏb@m +i?@1@oO$EhӲOi;lU)8HEK[ Yx2|x .e`]*d!/vqYOa9:cvC }$NfˀIkF" T]\pRԣ0v{4)54M/%l4߬^s\27֘l?=vNX] }mGoHO_ + ;Wϱ!ޢ*ц-@I4/cS5U0>.ɜk)bTYg#h*L4e[%(m1 <{2׈AP0j*sw;(<۽L]LI?ǴQ RRɘ/0҄or:w>H.K4P]2* s+ L#fm3E1Ҿp{cw(U[am_h`legKfaY1ce%鐽mďQ ektj}V2v_Rd|MphQkA܍ܼ6AN k4 dF.|aa^D:MO|ם 9J~EUSQoFFLnuK̆+Vj+7ذ.#GLZc+Ε|QI5݄=:x-7U+ mRᡀd%,+ )TBPO#\Q"~gȌr$]AOh""7&][*aւ<"8W_Ak3ryrزPtPRE4Da:?M+7 J&B@2e-ӒPKX|b|gfw#6=h|ta5xlGϬZ{KӁS0 _Yi\{?V1 ˺3)`zK\H,G2L ,$R-xy5dF2!pw2`hAW@:sso.:Xz HEkd;?u `ё|p#xC^r͆^pk|pBoKrsq)wSHO5MwGSA#Ƣ0RIx~[ Q~32m/rz/蜫T~@c\, a#5V~ؾ2]2^ z#rD[,*=տ 7/[]Ő04?0#5!z6u7X(Kx'Vx]=9o9;cV> LְI&v^u[yZ_`)!0;fr/ RzN )n:n9{~ g΁GSq5:&|C氵,& +&,L. )MSsh8dH&Xv6\>eAzRN{~抖q$)xhLvM"lRϣA Χ1o1URI\bE!/669HMZq.ȼmNӁt|f(,a/ܭfZrōUL .3mvjifdy=Zo~&3ձt3=X B~qeXkB , ҶI6v##qy~FѹbZ+ #A-B )IE<(:Wu:aClqT*k2aNolmc=r܏%J6_=I+h}j%TـX@}K=q=Co>5T/D0Y9 hf#iД&_*"LqO6]$릜pº*wt%M݋z| j^[YpqG+B0Pw[`4SKP;  ]+K>9Xa,5-I[2yS:h{JY xl*SnhKW(ڏ4^( +EmRTcY1!kRQY6L':~:%60s3/{{c_-)I~D*dM%"ߝשT.*b Kekݦ1; Cì(>g`&a@[Ur/R zW@bc4)wcq,4^fZ0Dc OL0Þ6H&DSw#KU=ϫQۖT h&jJ^svj+ +y薷eh P'Hѻ΄ވƍ{=Ȗum h E,=:=P{#Al2:f.c*WR~UW;.qk48cA9$ 11n;7=}i 'SAkO;əp|Pշή޷#&EۢcA n\~%z9UCj+1w#cӔ}]WP?2%r3=g$+1ᕓ'@&䖅7c @xI..B+>thzX@m_%Yaᥓ( v[K~!nYC鞧yMg[DB9~"Q7fl$W{3ɧ;2k! |2Yk!mRER7MYMBt5DUHOv='m5ٺXXxJ%1)sAwYIԙEceӕ!aNuOBAAW17n&ao"hJ^AS&%3+# ',ZEOWifU^8rY x_p7*^AXݥ~ʍ˳<Ͼw56頲5}/6B؟F~?7ESiZEYxK|*xxf"z"Jml]f'Skon#4kM7ԍ'I^>xdz&p+"#yRS1H)q20zXx|!zBAbcЦ8ni`0 /}OUL9)D5C246OO iٌӰmx5c3L$b2pPfx9?ъy.[Fߺ7 j_kdN9EHyKg y`$>m_v-<2V~*WD[+CV=rs~&wtFպfѭ%.)f/ZN.@z:%v$؛FC;}jGɇɕ%D}aRi^ YDth !Ji-AKxUG#}Vd;2Lީ+ (~,gbX1@?A8:Au{#"q t is ) A{Ї i@h<<`8G/;+Lc:&ژ GnR  k9( |4zKFz9M.~)ԓY?|VP]A0Ed9 pz)Y mxejSjAxӱw&kxA5!<')Xcz]|LKu\s*9EB<ׅy]b2{ԃ4.Ɩq9V؉)|\Q|83?I<['P]}oWK:9 &B05?z> p wtlђǛO@]UtHÄc_1Xۏx[ rF&1ŽOiu7cԭ8N t,,<s x+\}D鵙Y$Yd&Ფ٧S|yq[(IL[:[/pXBL5E<Ąۃ~P"DI5 >۫=h.thB”B+=~KTfnnz΢Dƒ.Ԯl͏agL,LTjj^lL0^!c _-_|9C.h%VްD X=@V &_U-6ʵݡ̀4@ױSkb[ %bƈNT:yH|b'eދjz5Py96 "|2Z_J;Zwz6qzu]y7?^7uCEcxFɚr't}tZǸ tr{ɝLړK aWit(iec@BUkcqw۩0]܃ {GplJ^BcPjn2ۿH2 %+Qԟm y!qxp1YdsKIj-UlY2,z:p`bw#Ȩn/ꂌ]u;MoQ6RCC#gvx{1Tr6$hŽC ztuk%/xaX8[kWoφaQ`dbq@>gP08#?W}m)ZQەj7&$*b"Ğ, -"a=&nΠ1<SG/lAvf惣2c?yW(5iⵍ=R9uAH#> o08)@1$D𽳘4jgCRޒr&NB(>8E|)ZE<*5vWf(O6 ]-lOK ]0;]^TN;'ID`Ԗ'q[hutYۇBɡ7D 'F|&& e[Moz᳷oZ[Uu;@HG`s^睊4BԞgB=EphױπNYW<(ьCh49$[ҊX{g)θ&Yk{Rd^Q+/ז;jOO.FNSwbk0"ADXގ c%(9\> myɼ.OY]MİR}ctQ}9ۇ!9ZQ2!bg -*jh|D3h?NޢZ\kt| m } QpUl{ziS"QXi/q~KxI>u-r![5: :=\!& oӚT 1{U-"6&9 xGn-O=%]M*HGGS]3Ȟ@%#aPeC\@+zb,]Eo5<1رeMBܿNޟM'( cUI"?JjԜsZ_e˚wwgW`*bcF+BA,u0דnj =qlW<)2B>TË@*خO~:_Q$}H(̅=p_ڋ!\2nx^;$ +|2JKL0ʴKEϴg kjP2 (dn, Xv=H8a$ocBkZ%;n-P!]# )0j1I}:-\u*pz  77cABW!K"/:>̘JƼjY3b@6x<޾Pa;wy$@db7SxBZ!_ @m:4x9ro/0լNɦ̖esMk Q{ybȎ-U'a<}w3O<8yln~URD/G ]5-rNC)C?dsp[$Yy˥ՠ8[v$Dfz%tE6p5hf8GفlCrԘq;:$JsaLB}d W:7H˯G LzP,6I$n,Y2W7oaQ jBϾ6r]qPT-E_# F=Hڦ̰աϧ˶N_0]"_L ftPr\ 6go!VLb2~uZqG0{Hzֶ[c޷/;wl܍|Et$sA&XDO8D#(J韗`#t"];cm;CaL#<~O)pSmWZذ }w=ՙL7 ˧pl#Kca6qnI"J KU{]^O b>Sr#U'?ݑR>S8TAX=!OoZ"jg+}`T o$@ކ,BwED ϩ*_Yyzȯ˹J>_vQ1"J+m+/R"sa#=[]ٝ̑;,8Htx&[Mbn|ȭ`K2 dz+̏ipO :Ʌi0ض29O*Qd5Z7٠>kT׺;\wskbPGz7ؓ-y1nwT($|j oi8YXL!e25sk}" x1^JMW,-HNK(H{0۷.sTy)ub"4 ,VYvAٿXvm`idȍtwnR$/lo:_]&kMdQTSgֱM 2!8QyzJڀ+GW=ќ[x++v<|:O;z\"|¥HT\~mڌR%(\4_~[}ML^o1b2pƠ @.yRc=`mGz>.A476z|]9x|#Kୟ&asIbהqit1%X*˯R=z p5K*oyJ^:EͬԒ.K>du6:2\ǡ~%iULй vQ=UC7>XBVu!9g,.tI^jӚU|sQSqB5((KouiŤ!(NGT_ed֒\2ӇiBH[œi\-CNi%egwj7m{bkP\B-<-+1y^+lOu}!e/lW:~1#HR& 6A;"֪D"d ZR;mYal=3bʍੀC:WRQGe:ԓ")\{nTE|D64NG C4?3V2\d@ea.(tfl=!/#^dڳ4/eEOlK'Y2s6SW<ڕ~]I'<0M_Ϣ7jpt1oNY}efRd)=n2 (fibuP52qL$m>7G!-KyG ~pw9T9!%<~xGXVzֲɢ̔)IFm ǎ~rt =:) #NFnVCu1nJƫS4bmK02fd锓Y16=Z#eCR3DlZ$K`5ζ ,Z7V^8c;3}ǗO5Ltf!Kh0-" pȄmJ!cl=p02W޳z@Vu45,L5h@ZPlG@EWYrC)넘 M;#BIk?،{g{Je^p8R*wMBKa1X N('饎*]^M a, v(. .C󟧖E; [_^1.p&W,H_;TY=%Bp n/N:LL),Pչn~Xlj7tS "*M΅(NZA?ٸ0Z7q28r)Wv+ЃyCgtf2`w pD1Duxx6{AW1qV;-Rx_Gr+tR@MkZM 94m8 c>dS6ʎNi H KzSgUC{whaC!Bx\U<}@LvSsܛf".4T]gHON5ĆxH}I[[GfBdIYq7-N0dgLnS~c>QpyKc^!*ʴiR@L:5> W#h^Uݷ$"`u$n3} Q(jxncڄ{X|J<+ *C!b-d+f+P-|<+zgz! fPv`:ut~?G&sX-6,2!E BNvg39]޲#F͊ۧiMp::4P_20S /Cvcm6oSA|GC!d-=K{NZé|e"B'ΈCXE7\UISc]x0L{9EƷc#yC&-2oeҳ &>'+2CC1Eȶ0"&h]Ny W#zu?z.MB@Ύ'ΫUUsPЬA(~f6ցDFOB8rZ[%_G҄oma%Fsδ|p2pX)kEpާ1K:'՞֒m@N脒:"@w}xOyq3~3úqё^ܮӎl;JpH7+X5KCBt6P Wդs?K{A tG5riSR*c8ؚ߮="eE!@Gf96͇7nư4>wı~"\1(ۿSA<F5owU'Yj3NV/:Sl'WK"/ >i\mE͵?:#\굃wzyh"O:r+!r~J"#$w{"'Ֆi`.x|Ӱ -iƳ{y̼%8jEA߼G.mYqN}4ki?~vc}Og+ <`&Mr+dW^qdʈ?Usd!"9ڔ5>Ec鳸w SXq\Z7B >-}Z/z]Vk':2\2'lδ${X[[ZifW+dWܽ]`9%6YxV ^;p0EU#hQ{n=`,BƋ67/xxI% K[K֥Smǰ9HfUT=Z^W)p:[J">I =VN~\wo?*c8 chgn7Z"'TX`I@nJFc{ %0t-]]: ±8!bgd6@!,RFc(jiIOV2Ѭ;O: jWQna^AIcbbǝ_bz1 %s噱ш1p`@L/'5q@oK'~ I ' p4!TNI0Eu }GyeKȌtaϲ~fS[;6Q׊s='˩r#SMc60T8@P uuqH x1yA9\d@EӨeՄ5, (t 3 ]R&: $[ԕ m"W".jQa7"ܓo`TPͻ6(?!T+GGR>e'gTC8O`nQ,<q=*kclhk^M囜/+_gVzDN=<:E*?L|$rd/$s5Bbn"SFsE 0>h0zbmhvdن5-$$1W>g(J];UaORV,PTV'+t9MMU|]Xg%,4jF쾸vIi9&FYP7h_6O}̀d:4ϰJ@LN'Օ+~%<Wp(ͼ"d l6`Јyԟ@N }15C\!jGJV2k[\o/eoe)Hfp_ [q@~WS;!lM͢[6M>luI^\H9$_b(fXn!f|<3/,.,z0n+!NMx3 i>gEh W 9Hd[fβcOp 7Cf: 0a|se05KA[5EEDȒpELa{ɲf_["b.2A@{VsxZ{~6-\^uލyqU]%d6y$#s4.+U23I O~0N0<^̏gcN!=_PXGE8z_ѡl6[a}&DMxi$. J43kRlp d<ϖ1:ֶ5˦DEf!I/{P%kHuAS, g bşQ1WMm`>J}O-Y2ʥXRivF5#Q滽)a | QYO[|?X9=K uBhƕYN D:!Fk=q a q !8DcAW#4Kaw⤾?b/X|0Ŀ@4:źo]c!25t=-#s DQH> )O<2"p.` ?MX/B:2WBp$-? >I{|]l>BtmR~Nf~]VwLe #p*K`Yҳ}yYa췗ԸiSL| 13ևZ6kUT&#XL%c7Zx2^H! e3nG/6_j+lFc聐-TČQ_9)f!=?DQ*_J-Iҷ+00S 1=p#Xvl)B9&`Xx&-T|tjXPEVDUBKyI*a ?*PȢ-0!pmhBFΦx@ ,$B`bݳ:~ےͰ&PB bN!*LMfD帤Xn[N!΂b摇Kvy77B̑01'[@dhù }脻vN mLzH;|_N9('{x>'0l%bC})3Ft5}U0v{QwfSP+0z;`uGUFjpW- /42Yu1CVcDLj6 Dmcβ0=D(#=$17F,?])e`6H#-vRsY$a*T `r̸ d¡RZU3zpkPxx겂5=ꙭH1崊-nV,5?s06J1`X,n8aLy.%)6Eُ£Ah-J GJ^Pj? Ni}U;mxBNi3+d3VGYj ;fCjw4ujpNs=<)Z %R! AAHgAI,wUր@oQn_nݞJ' Dmp=F#afq0#NZ'W,ϋΐ Ws{?u@\kRiR*>*ljZ0V66eF1'!6wL P (I!2F6 (DͨXSto|vHmluj@f-86K-բ1')#fVPkߧEoMɥбǝp}q/:b1Ac)i68.&0 Pd5w|ve *[wnҢȊ7 S9!இXz/=Zl#iUθIFCYf#W[JHVK U3͗5n7E7V2TwyX>\N3 eerb-6݄9NVJs2ve;'viM>NӏOη1vqg-Xn-t[?iiHB^\Ŝ؝dVCQQ-UԓuO1d{pH VŽjT"[S:Fڵ@ #r(DPi,' ,F\m^YB.ēItaJ"@P.pNm\2LF&\G߽Œ 6B0\ yQYS,5h+vmK.#DeErʣ`u+׏T*J%]!腸1!z? y+†;\0Cu`80"Gep5pa"6 \IW[<(˅)l֌()KzK.yہðث-y"ew@?"PĆ׃@p4=.|ye~].@HCш {*Ffm$a :ګjBPf9iDZ)=v$&Hy4]CZvd)4~.32}`y~nPEi- 6򞡞ci͵>&.稥?jRd(#w-rH\n<[sv3ݏ ;8+u6|[4?'Y8mhC`v*"8D8QSZؔ ɝw=6Ϛ AQz ϋT7A &h>U; Fp|l6TVc] v%\ŮAOHOvLӭLE0dv? rLnݺ$JA:^3e` Sr'TJsa}c*Jߣ_=6Hu*3DL6\.uV(ܡTPyA$5 &35vQ'^?'6n ߱#%ts/UI|xRsRCc h!-hHcYb,e)1w+u/L@ cS8ց_.yBoE3m<8 |t<@IKW.P/߂MRcu8/oOfջk+o* |SiM )[^`m6ZQx2y-ZsIO +{(%w,Iy/72j UHQwʅ"񎗵>qZԕ[h*FhFGdռpci13֌g,T"&)#ӌT\1 \]+ܰ7 v,Qf fň'2BSam T WnwFFf2^@0YoT[Űm.KXlŮk#֑Nc8 K,j3Q$g]}Ւ~ tߵBD\=\"È9UvG%M-|^?mU&k38Ƌx̪(fc+Xg>W5e,JKbƞŨx.b9B;_ ~O8m;у0ݺ  hoɣ6 .LwAw٣?_ )ޕParxzMݕ gWy{0~hn[JUdt/w4fqK7/O9vk?egyPj0D>^@DQ?}4ݦ;*>Ы,:Dpn&-fpg˽bq`q#Csy*xۏ<3Q#DCۂGg쫝M-a6ܢ溻FrHw6JzM\xҷ;DA<ƄшMeBu/l+'t5YUB}ق 4Qhx8::?ه"eIAFJ c32`@Y~]^/f t|JqrL o=N+lQ$Cj&ߟ\.0mшʸ~pTXi:S]W)L+I9zZ!ԳQhLr w2l4Q263:0w|vP2bWH!Ky}g$F?/i|MEbA*CNp~ [i]!=]fleN_u,mLωuXd-h:㰠/ #lBDAvD`8nѮ)X8'-YVFR ]-bOWL']O2_[gȣ:om|׿(P_MTZ[J|ޤ/5nV(hڿIh&٫HNR@RX+pf8rvqmf7֨4Df9AIW@!nI# җ@$v)vhJոUUrb^yOC,LU\P¡otiM(flK"LBT^5=RVGAjLKO:Np] jADJ(cUM_Lzt)6DqIc&R,TcEw3<ԃIZ fW,=#s%[4qx9+"u;w_Alr1i+m 5ع(usV滢z‚7zʅסjpMбct)IZAY=U}tSfg<C<4+5,obbt2og(Jš"QBu"dYˍ&ΐL5 ߀mʷ40?7Ƃ-&clX`³A"jPo"# I(PV*!NS.sm_à mj8@kU7_*EzLdE6CN/+VKv޺Oj L#ÑJ'IyjNVw )y ~/|ij%| X ʇ}}_7ʔ a:8&c+`Y[. q+L0k}&ҝ7\d B(vUѣu|e)޷l.o#N>{TZB.Q]'z#oi+j`L̬RR,rVj(q9h/{p0wX`"4߫Ҫdh*d8=-)\EP ]TrrF*p{~_RDglaIĐˎ:++[/>'c6YqD %AkGp^ 7[~ $u^dNZvR65pVZux\R1As8CVǧt9IsUo>œIAL%< ]\6 h5l:Oa5QÆ@?p0h^L[1Jy?i*Q%RS8lEYzȃQ fiQM@R0w%u_a<2dZpNN\(Y8@%vp.R @74:w_A D])Tch y|֧`GfWY*}ޕ쮏{xCBނRS%f?h{d2ؚ3xk"_^gPvMFoȼ7dq[j@5sD~<TL<%_z NyT!O9[ThWEKq"רMh4+K0КnCrb"yЮI<ڌ@3lQj= =;<>lTmIkFi|X X]PK[^q]r(M@AT]Hgo^:h 󯖘 }R0tKF&z#&\k6\}PA$T-Gnqbcf4 L Da~T9'$*i` X""{A7%]G$ Bܨ\Y =*"z CLg8#<`~c-+L [e{-M_S&:/]Yơ׈g-&aô+ޣgOfdfaRޛh1^\ bPm.Ò_6z/tw d{ɤ#[YrEiEζ5C9JuMFYV=WH :ْP?(PQXBu 鷕;Moh aOjlV..˓*=\xhYؕ>ϲFK9 Gqb w2U]k KaSX:zd W~%UPE"(٦1)䍼t}]'jf%V\zVxO$l*T _1o vrK3Zg{ulU|fFf%Q);ʀkZ( $jg>>H+oSۀVOZV5vx$m3c(%jÀQ)77]+U YwW+SiY%wxcnΈg+:fL`c|H`]sLS}ۻ_0o@ momSe@r?'#يWO ~b>Oǫ<Bi7['QǾik2$i8HEjV7P v  sN"tz WM7skX|4uۭkhk.@#ͰF!#I3rΉ`e`j&FX{Ff/zEhFbIv*_CufrIM۷yw}nx -W-&s-fX-Bٰ;NSi2W*#PBK'7v:\!/߫r>("<FØM*7+zRw{ӵc]3PnA{76g$pוo-+ #:BxA7S@ ?bv| z. v\%#wc- )Ɔmg!p/3J9A`kΧ! .:{m̬D{ 'Ca2q #yۺtjo*hKXuQ2ᵟgΫZMX$c c $X ؗ{3̛PnZNC۫:KTT7!jlRLǺ {虒  rS@lUc85=>#$ݝ!Lih Ų3c /?cg{yJvm+pױ= x, !2KW '2~{_E`8x%ؓZmxO5*8;0畀4a_pltS5(ko9fg  %@*hs(ջZ2S'د𤼣Rr~n-wr/C-p9]\sHs MLMFa8Z_Otz2y7.f;< d8$3\2p[[ֳIJ{#ڀ9Rȭ UmubwB[Q̀$lT._&6w Cr%9s*h^~qb- -5aqy8g?Wg^ M _[Š1jiɗ>* @:)~O.C ժ j?ye+4ሕZ0qI'd-?K ,qHƷ &/f[I*F|K"f9m'[tcbr?QHs=4r.#M?C((mUlPգK0``N*Ac˻VJn1sxAoKfIz]a/o3H^vj a*1;h(L1 mic +M8DNtxZFzzH+ס7^6& bg=B#G8fPk`ׄ{3HG;X8a[~)-tX߈m3&nYyΝStM#)%-zQq-"6BER5]8&?ayD{65VlV˭!:t:CkDmҖ۴+!H!j.{IbOо14f}]%BɖN{kP~O ~ ٭KcE9{ep;mC{]>$Ďy7|ИJd%9OHG鲝˔7:J9V K1جպ޹05WUhuʉH:$AX>RLgLӊvvcP(_бrq;m$LY:uk!fy"T+.:]Pa])`:.2TI:XrCPASt 9hWb[Ⅹ׼pjDaϟ3(&} w ǵV SapWMld DϦZ$3bi%rZZ#ehIje!Reory ]c0ƧA>)o%t#9Xg}@sHݨiA<ݸc w|!4D`/>"?8ڑKOT:˷:E=F&r_`NYuZ~y (rd"CHרHF%:~eXe-Q5>@IP&} S G vA' n¥QD \vo.Voo@; t(MG}ۇ_Jp $)ŭHP n '\b&#æ)iwrqSaa -HS P¤+J+cs)p4*Zħתrg6!]NC&c85/A;/NsWc̥7XFUW(9gp}永aV.9+fݥ:jة'Fb٧VD!yD¾:Ur |?krY5G*BbH|6[z @9\.t#46Z8M3ԃڑ;P%>ηWoFy@>A.@LI5Y"Dxw;זbsm,q75}j02SeN'1rXW%İZ39Ga&4LzO.aBϡޖ|B|1ovΆM@XKq8汑MqBQ;PEh+XŞ&Zch+Rk NI#Kl-ڀaL!7 +Nn=i.&":Ny\k,qqS,BGW4lho$[FlF>!@YV=5=][ d-p>P&ŕHWq?+%0iѱQ/@byw[=|G#}Vlt~+͡^\%um|”HF}芐f>vaOdv Kvq1M`Ag>V|agGcZXЕ;O|d5nPj8^fH%[B-cXk0?1ο:b7_/ >h+$=?9Pu>,?n|BuAG ^w-#ో@1Hn(;>vx~{%brz U'?V $4O/@4L5ƾƌ]ʬvi`gk/>G7zlO;w*OF޷׾iQZ2{,#A}i.u\p"ɸ%9]*-+B0 3ER4_wR)a$D&r@@ rO#63*J'LiJЩ mH&g*%qp,R`OQ-GhI> J̣81E7\V ׅOF蕊,Ot5MJƽD+0nVaP%l6)S 4E!N3I( Q:l] t" _!Ucŧ *Bv2ʛ! F6ÿ `{ 8R9} h 0,|2F ZAlv~ڱ<O(Fz 1M&+)(be* 1ȎWQ|MTqQ! ңk$<fـ%yU߲vDD=Jm2fȧ87?ϽY`L | *Fj\꾍wLY S1GP'nirP5bk|gqk҈[3qdI8.URpO^Ok$%?җlw\04v-Țyws $ΒHƺ̅*C_ԟv;︚4B9*Gxu UJ 3|g/H~pPGz1O='LE^5X [ z8E4Lx! icA$U$5bD葈+z> ;0ڠ\E.>xAǿJ*ꑺCD[.B y(53R1nw?ٌ9 VP6fG!˺6=M:&SS FDR9)>0P0<^VrF-uu(580a x5GC%iIdeq>SWq75 }ٳHm S*p>+#;EJ^by8}53;C &sOVPJ nyBoyDeYGa4"4wTTZuRr֞%:swR{P]^gp~v+rΖeCVocKw&G^6ya r:vH,2䜒&:m Ui]:(HojAM,:wsyM ݎ';=#hY @cq Sv>uV#x*7kio*m^*Ł Ӏf}քB}̕KX0S:xrSETk>Ь(QA\az=g(S!?Xѫ5Q-&jX$RBB5d*IQQIF$%nl𫺣{=ۓӨ6G-G@;`fRT# "M!ԡD1qx!Rhr^S x_JsW Aؽz4yJ]Tθal=Lˡ-pI qLHf\4/c’7;Bd_`;>LLY %'%0gO-iR'E+Av)聞̀!&My0G2ƞ0F}by{o̞M,Ai[ >eJ(ēX^?};^N *-W4)l*Jxhk;/B Cϸb@ɷld!]I~xZZRKZ7SҾu^ 2~€d× xbJR]N0h׷L(KeLw@gXhD&<T@d-.N|JzSpѱ\!,+ Qwjit v R!XaعH EOl}zxå׃z]v:L7#dbzlq Z Lc6>m}Jf^,Fn3OMB/9{>;M&24G>s~C '@L'."/ wڲ[L O+Rb5͌~tfr4F|e{hW-_'D oɝ_zee\s\c`M DԦ])P|IԟBLkD7d7LH,;m ,QVB n @g8Ӝ {)} 'N~0BseQgk;X#lxQ S9@OWr>xݽL& i@יGCprHY癝¹,HZ ȸh, I2LpOR8ʯZT۷DZU,$VJIЙ_c)M|6YXICޫjE6gFtȓc0I2)qT m tN9IFy]^\?<0,R댙+iX=^XHg}t+4Fkחɨ5bŊ _~ݏ%Td`3]a9yD @kj CBG]? aW%;yS 5(@@8ݧ#PZ!G5^!s٢c 9YjRTER%2֒* `$+贔*E[|ZN[X+ELt2?(Cq`&AA\6 !Rm![6K#?4ׅI8syjl ?qSPܧSe-D e)YXt;-Éܾ$ZM]Y0K0NRh>#i'v\/:ȚTh2䘫y+q[C$:/i41 hNFmoιuW\.YGc::}n◗ЦƣJsgL&Bt%+u63Cg{ qnUN(0vqѕ: jHpLɸ XC6;6*bgfW>;^,wt.C/P8䩡N~l=]Pb!O`XY-f.zz@G:e;dC$O+o29m*7!;[&QK4B$^-x7:ŸaF[9=+^9'4:7VFe8 vbZTqrf:)ѿ) G`fM/UB`;UuIUۖ)!1P\331%MDJ1F^z%",Q J OeѮS)U2\Xx\>=ivZ"eXpSidT1M+-5mjChw*yh}}5F4W]8}qC$o %V_bȀp vIZMϼE bmYqH}FJi;d9)g&OD1f6zK'tPT3cA\gGM޹>ӗQjiO55 rῦ9aGFFO5É8obWgI+ rY=TBӂ]Tp+&qa\K+Ɠ{Gvkٷa%9 ^PW,(G['.xe,f_o6t(|&04~z.#n J*+'XwL!RUO |DŽZ'\~ಷUd |#> x1 UC"> 󣥃ʉZ >}?: G!>rHFASoklmr gM&:_pA1%x)< "M%rRS^dkorF6ŕ9ފ˫ًorIH6G@`sR#* N̡PVN?;Csc"!6\љ̄ɗ^h=Ɯ;_ 0ES )6C8$ĉ:&A>Qh7fQe"֣ڠ.hsE!"?ϸ*8umcO6u~@S([H^|,BTb^BR83_P%zw>qnvI F7Fq=sm2:6ULTE`ć-vT5lT)LK)L*=tT jabT0D g /~=UK,huJ5uZzu16Z!>WO{*ajW4ӏކ4M L3O2ҧۇY{VK$,]G}ޚkR.³Ϳ'\Ys CHt'21T9eXo5\aWٍ*?#uvh'6z:h~/vvɇ ;H[ynЂ]c6ci8 b KxJQQ\ᅐ1`>/hau 1SZ!3y,՗_Ij`m5!=CG09/̙BlQ<0ʣDtY[$6cZ!A6s),S!; {T'$3:DEgݙёSŝUl{6N$b(&V̫0%g*?!ZBrAȊj |]ꗀ5)ݍ5S)Pa2m%a잯?hprqbx|M(]S BhSn4dhz5Iqհ{ͺ4uEJP5@L͓Y $#jZ4FYfu+ Û2^Q yF5#;JN:@-;oӺgo+ʙst*/XisEVZKg/4@dAtRx1Anh:s冬O.7@˓_GTV΋2%w c3dZaKK""nfoWd]VUلA"~vuZleh]_}(|E8Xf,Q^,c1dr#Ϛ:l5~uO6˂}A o~9S~C{\HD$'9_bں{4s5{Nt/ͨe k3 :X9]l׉ KԨ!uzBmO*]6:dBCY"Fj`D,{_``JQQ@MU2gL^¿Çd5 F|! Z4L)v-r싆QxOjEKX*aVibrTgSh,`kQBz{o~CS:\}2 huLj;3 g͔qnL䚏JO•k>ӝ;^-HLŊqB() Hb$Bb`zг ODYj) %55eJ1 m? viOoO4-ok 784ro-BU5T(dSu.6.#&k %f6xd|~ַev9oiWecQ9}>@Xr܇-!.q5,wT9b=ottx36טݜy<=.$8EhyfȊ }|RgWɠq]*S !81v3kno:BUCAL o3YYd]-SY8/40oWs>chzJI^ʎ 41\mH|Lvu,gg~5@dR,+|ITTxNwGڹ_U5txIcbfkxyfu!b`;`-ы#yƢ]litrC]mo~N%RZd!Rd~Y$ pWrpbu=XZ`>6x7Xy0VdC$Cz5 oܮfcu[*+1t_wk9<4 uZ[z%jȠE(?&$vf%NZs9DzCit\; 2vhD*'?as̥׷{+}'ͰnHbH_ YcB;Z %Y6~}is:*'l;2@2YU1!l  HgQ-+L&B'xg? %"O|H|, =^rV*2颲kT(H ! eL+n]SiaWɺ\Q V7a< [;#Դ3"c'_ j8Bm'D7v1ܐψTcL63055XԋܦG9be^pS][qê9Y^[(EpiePܩD ]ೀ}k9J;|O mซE8@$Eֳ*5/Di!7Z]?ͦ›.9z]ͤd]CTz9Yu) Z6%\љ sʷ&4:FS`=S>Q\ԇ@>z)?mԸAGGwhxgFq>5T>UC~4T7\=?A~B>~t =ʽ_t X7Т;caUU`|._QzƉw|)b &RT^H2X繴eh CSՓbĥc% j xN^TNڣO>Zn/kGbZ!c %[:~8&CO-,bx; `55p=]wˢ 8' pVR}izY/doXS;wNU1.5RӗL4pyKFQsުh"cg;)H65qO:EӴ1uf'ﺍ3SN@EqT)o(lXeAt b~:qٶRm )NtE$bOk`Jj> 8p{ F/rA]՜l Jme&}fhJeM. $EX0qME qtIABD4V/ЃWppKX,<~GWsoSM5ݣQym^__1p6W1\rCJk4&7y 4v 'DdB `F-%X5G, Vv`vkl׋¤}IYP<+ C*tsX˃X l-ΡhJ*@9bs(VuĴ^E QyQ@ӏhibRiFVYPYEBOQw& ׆k?VmIt2H,:dz*, y+)UE`2/ ̖凩%6`f]vYvjO-^݅:[2=6Wp4\@yE eJ,mE~*Xj- ;پ;5O'myXgk#h s+,>ѻ\PaKizV.Y_|3jĒT7: w#q"@fk;IM ۿL_' 0q[-ɦn=/-œEmк/#Dx|(._N؍箸 `jfw.LSO\KHp =GP[YE2bUQX5g !| .͘ld`,6l7Бvϧ8c2O=%[#P3$U,R>kjµX͂v@ho6)=5[ `T$rqKˀ f`bȬ(y3FA%k?SO֖˓}!1bIkI_\_[~џiƘZ=MraBD\mO1n73"B#$NM?O=UNEg;mEN'Fu0qK↖i"o TT@6nG6Cl~%=PFqmut\%v4%zhN[$3I-Ϯ&\a.spvq9&Ŭk3*}$`3>~v-% 4 W( Mře hVBIhVVУGa\'h}r .w$@$>\ލ0?skJ؎{,WT1Tl[ɳ&K/u;s6 ӄHz?HEBB|.m2WR߳ZzɷfY}6u>ˊ~tF+]Ȋ!e-d)HvgG:`0\Rֺhy\˗m`8>'_&xU ^Mlm"flJSPtqBS ` IG*P:7Hhbhs CAa7BaDuFD6%E[@ z̜ uzw@ 2 VAV/q낝"LUƛWv\ţh `8ӱ{79jO9/C{A<ؚu#O(5}t; ]]fPK0ݠ Iɓ)`nD""Gz})U]BEgC\s{AmU>4 ~oq-Ew*j=;߹240yyKĀ@mbK xի1yӍ)9wqoBSi͎ꝘY7"4K8^rL^"lVJ~bwd 6q ˼.ɰ)It:Jm kj 1s/ ;vV7.k]Gcpe}|?NK|ޛ{sE4T}L=< fGĊ~"W=hnB/5MkCM1M~E'*r ĥaFF3"hDP3f"G @ve<.B P3 [] ujLj6Ag|#ѱDcI7 zQJBy@٫kU*X 6*oi-F$9I]7۹7m4H)^s{O*r3 Z\cCf+FɧK@2_/Yaˉzn$7lL<~~bŶШjҵӦ\heDoh$OA1ϗ |ACsCO9ÖGBSl|cY%o neNȑ*u<$u 杚V=e'FS[z>N.Q\ud0\R_CXe}P* pF_pۑ!\a6WaF1D޵/D.D{$@by+f mos F`1ᣒ}.-H^Ȣ:VW=K`?I8 |\!<+lɅd?Yw9wvؤϽNU ,Je͎U o HUH#VQ;pxg C PXk /Y gj;cԓX;Hy[Mi1J>^!S5IPJ߰̑9ӭ=Hcm߁:H1P+O?%Aa+^ {(<hMJ9jG#ġiJ&f ޴t? +}Av/.u. nz r9T9:ΐA^)WH=Hοu3)ż6S3Rcd*ԧkU"ζv5P9[5ωGDw0N1ϷJ}Ȫgb7wlPr9^. knw3(k Ece$T%}6X|;f. aRݻ=&ўCqqy9`gk~>ϑs&漴_fd|H=}iW{%);,L|뽌YlƧ=G!Q*\:`|kSeE)0"& XWw_؋z DtlyUy{t+ WH˜t7 $jW׃:X@r`'!܊j/[|2N-MޕtjG95ZG.MDU*.=ק Hqdx&[j(EʪB2 c $ *=zb ? 9_ZܔE:(|Q0yX\8D2`5} \^zW)j=DE?¦PR8Ƹ"{蹨JicQ#5 AͽO bS%`'0mgV<7q~Q \%+<|"J~$ ,G&UF>,?<,cCc_"G4@¢峀D:WtFV1(G3 nRM 2xu?rlɩ=yc-,V *pE'X<$}g+\ 䛑9qn^֗-_I6Lf!BND9PwCk-3!Ԩe؊!^\3Ҩs e,a5O} e? R16(|sc3@ihy_?%:Cھ ~{BJd1.U 2_ RUBO 7ڂxRI+U.>+/{n=A%64+TF/bGma~vb_8GW 7jMKxǹB^[O咬} k;K]nA cx.~'R @XHd|3x*T4 TMhRwb^UXPv4@jYǑy\eӰoB4FpWnU3EDc:ߧMسB 1_mlyG0`E!&K7//*D0TFc80(jx3IϿxFBgU0!ꡯ5D z{tQ/"ıH/agt\Χ:4.D+. wWo.L#.!Ώz sp%udTr`Vk!=Dz;\/&d+jM<]B֞)΀*>-80ѹ~uc_`bd+R܎iU(M ҅Z-.N%–`1ael )&o\[a7BdMCRLNÔim=Ӈr4¾>eU#^bѲ8D0b (/_ZzҒY~Nf]axoM2aDﮘ<^W\%iF1ۃf2+(e♦5PV?Tܯ|y%]j-KJE4}y{CXLjdf&rG<͞Zw x"3C J 1b?[: Elm>.vVY//8a2P +X1qnH`<6OF2FS*։la%$,nr5H:xg|Z3Sp&OT4f-f}҆2si ͝FmGj ܸ'4lGBʺ 0B4{ ?)4KzrrAJK^G48o'GB*jLw% 81#2)vb@/\w(d2_\yJx;OAٱ&&͎])͜:xM~Vpp9QS1tOgwQnO\\ }r̭ q`5 SUy++wyG1(4մx)@kz`^LpH;,?ËE^2>̖mWԟH֕C pA ϭ5 BDC{+#.+!ɉE篗z# /Vˊcc5tZ^\&,4X߷KR<ˌwoMȃںo{,4r.*L gn~$hegeR*[ ۊj#+0FSSi/ ȹs4)=K1`P{G@cX+mC7yPIDx>b\'`n`8u|hU 7cPJNklzwz᫳2)Xm3;|有RlnZ?dAk_U=_>6X7!S xn~OtʃWWV:[5hɜaDmc5L1Ο%.T [fR$}x&%1$>{6]$r3b2IlV8 ssD9udOY.!F=xHʺ*ҁ)e9]}_nPHryzrucִ5P.M:6S DD%?$4R[HzAdi5'>M$SN )Ȅؗtڏ8FOӊCD9dP|7^O$@X%?_g?/;@DYm/ΈP! ٙj &ؿNs٫nP[1cd s%я@?N=.}Hh%0󳛼/ }Fly y@puJp?uby i Sˎ#)Ń^фS p{(LkcDmeL׬ď5wG:xfBko:3+eϤ(;'~૝;E>{_1/9Y ;TMmE0l6bI%brG3cxR%ֈvz}j3xG+z; 6ѥE\*7%r m{y p^d(ӹW*kQ[PW-W -;3Aᱧ{OCKFQiq06̾MQ#ҡ8pzt؛tR%<|c4i7}#9dZk4 :sX]WO;Xn޲ʴ"iUz;Qf=uhRLqp< thR|KIDX m6deٔT81 ٦rXk|c dN#= i$ $vBP2#m S)kA WxLG:( f>oqzI}ZyX v0UƮO.Q~(Jگ 5ܼ޵]v27YErDׁқ b[nT(K !ve s>/0 {aFt+]e^g]߀('LCep23=@|`.@ vcMgO -^9s"HD)3V\^Sg>i:޳aYW+ߘIAi?Ui6]Sz[GWO/dxݕ#~x52dЀ:`dNhT=_! 3!^vHƽJe\\MF5. WE. pF=/*8oe3~L~y1)'S[ϥ=& 6a3gE:;i3RvoIߦNv6IXfcM~YdgW&WNWUpep"J$$vstVb˰n8߭G8d͍O6O-D%sd2L=5x6CrmcН2U?^uvDW69^;吂2$i5hmk#ܸHSbzr1:񍋳nR7 (lB&jz${ɧ#߶OUae 0/RЪn)Č$[H6{NQJx׏%N{HiGX/h ߝd|\7* gl zCrSbsS~ɺg-fV];{|eZ0, @86 fI8hn bSJQ-MUvQv/7ntБe6\*@S2öRu?m!R!!PYMxxNPF콫=NF  rs(96_G WbT;- \f>sl@R ]kLf˳l֊ / >V3TVa:10 pڿ5F JfGP.h FglQ0%;ׅRν F*Wz}:>VWY߆'Q h/'8LȍUU|Ĉ8Q*ZyBḀwMu v*zEa0yĩ +B4ڨ׺YhkRąv[VU%9~VxdΕXM8bӈ.w5NN:T n:0GFEQ1JBq'϶s|c<@]#-jlgC-'im^c! V[4xt\pU,XR 7| minM=_~'dC#{~`픜amV)@d\ B6Gnp؍?}$P. \;2>/ (ZMm0!K-ѤpIoXgn4,YXxa/^}!gui\,-Q ZE"\̚xyLm] Uf\Cd E)li[s@n0gwٓmC;e41e|>׀_tf-%,oT8ׇ+Fd\P|ݡ  0ob|U i У\qt&~dy⭜S]T1;yL/}bLoڽ[`IV<]*+ %*/O>X9NxG|WRV2+5b%h,+p|[O4QdSp"rB?v])-YGbIl;Ч&3\Þz'ZhH[-\~^wyV_`"9ۯy DRs[ UL1.b& T1*|ǎ*&֙}/ge]op0Yg"Gx NЭf:x=]DI+dyOK}7Q[h*8Q]C"id>#u1)t[XэGee-Tbs㵚U1Nݎ.!*{N!)$PZ1F G/BgdmJ~3zh9EkߍE]5gK2Fm=!h:>JcfAW]*&>فA~xKqm9s5°F}'l"ؑ~0_r Wg1 XTw"Zӆ;ID'y-) Ur Na O@jцۜ?Rbv]%l}cA c|ko' GYqv.ʙI/]X'cqhFov,!!w:##p °t^/ \5g%, ;;{36lb^Y!eÕ|0S<8)dSdž*'7b)."pGU ]3 }'Q,ꗘ0vak߄l<2aiҙ,ā$v;(N _{G6op؉<]˒_&g8e#2!N *3+M e 6|"4pol`09 mtvCwT~0ͷ{T^~ƘeZhغKA}Mv,3o3",ʎ׬ =2U2'c:v,n 5ѼwHeKB_jgK@J2i+ (5#Z=z|׶i+幟jmTu7#<6ǝU|tn@a'$L`6V>?`;orr%F܌&+ej;}Oī@Iӭp$E8bMaSPK͹UnfM>vXqʲ&Qb*$3Lzg7#Sie WނcGKI l{f)GVLJv)!3;Uwz(n5ުM4VYؽ}ͩՈg5w mA$pFgD8CJhU.`x:?뷄hˆĵXZ d6e!xYP͎px:C"ŠS *U]/a/":w![,QL|]: oW:PМj'4&I qUb_9h2wC ER7,k'ņ8+6U ǖRz>Z5_)zCqb2 -<(hW. =hxl2V27꿏;:d/}گ.̻r[uaӓExq_|y `%:BW᠇>4`1%T(Q=VzbWr*J~AVWJןsVU}D'>U,Ϝ5h/0Wfk,@-ù@;ߚ(?>@FkQClԅ!S՛Hmq UpxI8 Iŵm*TXt[@ v186rJR8󑫫VqQ]ly>\y,}[W`#g1"[eCR{׋#Qp Ȳr 2h;eb zDHGEe;=+ VzmٽkY玕na58̦͎.nU ӆume,Pa}WBr8鳲\`'bl16VcKZ+r[k6:tt?s%^IDg 17 䱈Y HkrRXDm*F cKv}PᖁBU Ƴ댐m賨$C(Q), u迥i>fu$ dĥA3tCuڗ0R"hlPR0=wc ÝRUX]76P#Ӆ0kRI9B25]1㍑-`uU A/J DZ ncu|'t=9i ~u!eL z6Ⓞ-4¿9_A$ѧ4""^5sbmkv>Al:92 /6Fp74v0B[ET;ho$}AmƣY)=͝ {128D[k c(Z s9c`U-c֘RΨ>J By<Cv g, bLp~H]ĎOdi1!+9쑿咷stݳ v4-jl/`V_*16N/ s޼)!,j{$؝(#M>`Aɉ;-oGV2U-~DIb2) P7Xd(qh;7t"N1W?a}-RNUE"|959wϘU9Ng? 2$ }.+7^G|H}B3G "C#te ·HN KMI͑Ɯ}Wtٽl(%l.o~4XRBr!$.H2[5#E*]UǧBu5Bd?@ A 4[_2q'_WRWbuN>: xcz"kHI)Lj*aA;XH}n!6Me 54:v{}`R YqR;Xf]UC7>yrf'ȜnUՕ-rҮW)a!V;.{f]9&A8dYw$r}ôHR>YlJC!>W܂ٚxGAsz,~^V£`Uw[SbrMWAڑ)So~=e6j#(7\şw9_&v~C!J㮏w+!dK'S]M.0mA}F3KPA/V4ǔLx wB rQK'j\bx[ND^"5fЋc _7ŧ nVtTIيxj(Y#0 @, 92! e J6 |Z@kzs[Y0JO@TDL]{Z}Lۉ._,Kӧ5 ,U,ܠƉH>EwGq*i#sm?F{ ֬m,+(Qd @|<h_뽿Ŏ}+!pQħ -,;M5+m.\xV?q?#Y|2,.bh$sԻԚۡ-(k؃K[KTe2Ce>6c(MDB 8x "em Ku}OP2.!$eb RBgcNݞ1*$G`u " }M✴wG n鿑 jX}5 CUhg߇>/Vv+)6y1[Fi||L irm&'F50Kl1#%eު)%k`>f(E" ⁑%܊+~HPDdӗM 5i!]1SJPrx]> zՕb3;LA;΁aB/~7>M |Æ39I%>7 V?G4KeYIy^s&P.x߸2ṋJБ{qo_Φ;qq.l__õ/x}Av>AՑlM3NGRYI s[I;I<n/?(:|Q;j5025ϖC +vw!|ⓍU Lb{۞|$ 96T$ 4AsJt,/F2Y6B`C^!;qPnw;s4ob*.ψk̐a)ڕMyXs0? no_J.߳DRgU}[&oN om2!PCab1ԃg_Pi8R@*w؇H/L#G&PmQPZAnmPs25Wz[u 2$Dp)M6}(3rei'/ ȞIQl$η]fԧ^&J!9A|n+;+>0Cr<‰Kr]%b$^-R}L[cJTVCw3[sx. gׅ&- 9G|2PĽ{3nF# #!B`_Tl9`h4dgՉٔ bvqCGp)! M.5Eoֈ|KmIuzsyQ§Mڈr9QiSs7[IJMvA_?4PX~6OJT~_63 Bc\ɀfM3uPQ?1zd mC=K"@AFW{>G@IJ&>ZKqi$UY}@Nh/SҺ0_b,y+݄T:A;71Ǭ( Ձ Vz_<6Q(a@E/,ia+w܌}Unͨ{.I9xтV_E` /xQڰ,#Z~(`ve(ZMq+{7%F٧#I tZ V"#{f-4KtӍF ͘U w= `?}JŕS^KMӂz#t/YV=xTӯKAAU&"7rsnCDօ(`(-c͸{.Y>;qCXu%J=NAZ-q<ò[,SSTjT@nnIB*a?C.ʎSQX7]? %֔6֣ب+Hv+05(/9@NV%^@MV+Ahg ŁV15 lq1R`⽢tTL .D?jݻ6T2>ݷ8:h)A1j4?#>73fiP?$nE7x\&_sayM" V-sk3(@\ ;:60qX눻Hu"bQe7*͙gAWaQ;;zk'a]dUhQƥr)Ac8P]M(IԢq^|8oIo}5O?~)ci/ǡSjKW:ai #ꥮ&W=%֥!Tɻ[(j sȠ 47>X؁b`rlKD.c:96/Kkǁ̦,~ngkH'؊NjTGivli z$+AE i y̆ʚ7nNR'9)Rw˥nߐĘqɚ޴;̈qњYn ċ|iWuކ ;[`v>jtI@r s= G@@yOr%+$]]x_2Ŀ7V+sb/2 x]mqׯPs`{Y8S-qAjYT>A+ELzUr-$-icVP , ѵr7#ˍK,;udPo!Q;q4[ll>ҙ/v:zx.:*I:;7T^֙Tw{W(Ȟ'Z TY#N 5%,bYVۍ: 稠 |K >rk @Ցߊ&:ҡ+&taOĎ#2!V,Kܰ_KeEUخ/€hZI3sn9@H4.XU E-ߦ yz6\ͰVhs-o78TTV_[I@#5 _KCi87X"F >}#b˞'TJkOT’DR4nF+tQ,#sX|G Z9"cZkMؘU x9i(}Yk%.%= ew  4gRL) ~,`q{? ~D@maT2װ:u*8gQ#1H)+P@S[e,2_tb|VEZ̙XW<tq6w 9)hɌ4|w붬y^;5=&L̺}ReՀ5(i2#8׫}Êmp`B\hm0\B+D)5Im~)AG#81nh#IO_>k~e+$_[v9-ܕ_/n;j_itp̴ RBluʶƲ0IN͈9WiM_tY:8+ &Z\ CҿQ=)]`^O hk%?*5"(~yXܰ.C" +3[X|Bh*@ͬ:/ 2z:UO3sVȽc>9aE;& PОl(_UDzjpQZaT0öRsV>5&GbAPt2፵bR /Q\1c"pcuZ`2܅Li0T< F_!E3 L[0Pqpg-}F7_l7.6r[e.9j8jKuVbѠW5vͨ`>ǭ+G\@ycL%6n3|R. 'o p35}/#U@v,םf-JjXۯ-MPص?,+t?JJżVgb0nGt @=/[`qx dVRs[]pc+ nA}ONݩn7?~ ~66Eߞ(yG"@cXϤ6͗͠9p':!XmH(z*OGNjv3"zawCh}4 14~`HheM˔V$LWsNc;sՍKEA-lEK}CXCDb}qbXS "~oW\-G_g$!.(m*,O_lY킏 wTbL9!Ƀ-0:\!]؉;`lFsƀoW{F*={um<8EkE q-f7S[A~fː7Йbɶ6W(F@" N*|g2Y[cFf$ !tGdtP|"gF/1] ? RD4aǼ0uՐ`uFRd(hImY!ݦN 2N[H#Ilm{K>ɹavNQE/x|=6הat^> Tq?{0:1Oy?h#0Bغ7qO /H2z ,++%rt݈yЄMUOƟyQ?+0#JW hF){AkAϴO<3Y{6<]<@7#:^ZZfR/`R 3NB'MK}V֪T&ᦦC.u:yb[?Υ9Œ}~:oF فDOt]2uGOSG:6hI%sAnP6q<9z}alzxV{OeVG—1c7'2ԩUr)d{kō{D~Qu jV'/fp:syH8\jxeMHzW+$z pRtTъRb:O\Qi^Q3, $^~Zc~`S}N>C GoOזҧPsӹ |RM7Qdp*O楏'*4kUeVb k^o7 $fU(~ LScɁƁHVaɄO0]LOnQ2?/[!1lE!$ZmCCjXʾR@1Ŕ,-1n|"8 ֛;܈3v@iH==y"a<'lyFxLe}0L'3rwX=R r];;a&mr *GP.tLL1w% GY˯,/ UkC-,{8Y4p۠53q7{ŭ`5!P"ai4Jvy'50(Ԡ&JGø):>jIp;9v٤MѺک#=rlʘ>v4j{lLX~ ȴZY-kU3VZD"'TPsr7G/n7Ùv|?stAE~ 'o#U\VsM2d䅅09iS'֒-n)Pp\n*FNR@nDtQa8DG{y}32ߛGIWg3 Q"a&ݪy=0ђ?' nW,|wz ;kq: 3|+:*И0Ԅ@0g,-TJ8Y`v>PssfG?GbȮ0MXbKj}}EaC\YA^LTn7KA߈ePșA=B _2܆i2 Z7AHd!{_Uot==++!^-|sz0WoDgFן^ 9P&UgfsTƞu!2єfuOzȩ9%*c'yđxĄyW3diAe/@Ar-66ꝅh2Bf]dk 76)?剔zrЧXz-zW{.M,ŕ!d:fBT7Ӓ!vm%&y!e1raS&'uy牲/G4_irkÞǑiW瀚.h"1ۘs!;Al#"HB rpq@cχ /*ir5qx_U y}x!8qqyBܙ5# O% Aly0wPdYR|hz!ToR> J4x^;6  mݺ쏇#n/ gc Ljj$s\ܕ9%m`xnqƻ}GctС(9o&%^wn7!"O> cK$ tVbf#j$0Ri4 ;м cƚnvܠbiSv(8u^9a!uųX; ϖ2)gCʽ7oT<2*nRn 62p$@V!{iG/C~0NeUa/T (9@3h-z#Y✷6g#:. Q0Vr9?m=Oӛv)bT%EK1Pžϟ1oil:oröni yP#.`;蚉TOA`O[Ĥ/ 8G&ܧYDIoB SunђGߗnC7Җ6~x@@*wH~ [`ťխ\;;.$b7'/[XX&*ے4昼7#91- rE*RO; ?AZo)V|B0Dh%k)\dxowBn=j<\ %$D'˃2R~KLB ρ /ρf+"4p2V&J? (Jƃōn*k ti#Q+Ig<[=1xЛpL+2Q/ϮENߪ [{P'_/M¢N%Esw1[oo{t{8'i [}Uv&Cm6P\@"o6\cN:eӦ*i0 r?[4t&o)hQZȱ:J./o?FnHL5 o`?yx)=2o6֙K'pQ*vF^ʭ7O:G&Mzz2ND`Þ}=g& ۶e7s?Г\Eg2< =bZ[(@ZT 2 4 ܕQJ_~QKQ]tt0=2׼Csr~ \w*|j u3 ֔-# zT+x[ޡ1YQǝy1i\M&=$ ^s'gTIY1WK(1|fD|X)}LL}Aҳ³T0?0KUnRg.HCԾNTB@/=P엑$&nXIu*qr}: <[;mu*:SkZ*vO؅}$u' /lD9%f罙9dtqjݕ 7/D">l[ Lj7-IcQMAQ0rżL2ĥ 1dP`86^6^6/]qk$4>*^FE>Gy" ay %ڱe$[A Q>_ɩո}'qj W`<޲a O%=C(é׋&5qxo>f(? ș^F˝x#2X`!HUm./1`NQhr-?3SOԮa{ xPyS &swO%bywJQ^ oGlf8"M4-/ʐgfGDj].#˃B?o/(&ޖR@(܁tj89E[sq4 Ә鴻k7!'sW;tDBd$+(6b=ВmbӮBa'$u8("8/tTlÓ /g*PCv/Vv*=Phnj-$?OZbp L y. 49sb}=s{qdvclS1 ϣDBjJ*JƼncA8,ZJa\)xfw((<{oimxKx9|i g͚(N9MU0KJOb#$pGad&ƕwl'nd?ԗkxFM &47r,dU'gUۢj*zI[an.Л(!xEZB5,RBզn1d4Q VtIG_RN+jl%0ꥂҙvMAʸbv70%:)'A["@BW ^Y.,qiOX9;zDa Rt+6+V2̠ P?vQ[rWȄES3|m7?fM[{׀(&X9H/uD XNNXjWLAUQD6rs41@~p^[yh(mG{|α|B{U)   ƿ#P|8 m$ߌ ?i5os އb6ZDpSq)}uso%YW33+S:uHz"k9OZkX +Ge^ ǩKb"鱁Q\E]l,b1o 9W=|vi`GXĒ%jN-/bG+ޱ .7M'FIӷª>IޚR0P۝V.L~WoDTԾ[d9O&%B#>ӿԤf[g0tHz{3mx ^+)V7*Jy%QӰW*qqO@+-3R컆2Ŭ6l_'b"c7'/ȵVs-HTD \AVa{Uw2EWwx\CSW]RI0\һ/rE){.#ez:Zo!!w-5k Zyն32x'txu}v[ Wb)=3OXݔшJ9QX|?X ;#*f\`7x+9?<ՄC>![O= oph#%)5Z/7DZpg%*o]I%O rxGKS5i0^ Q}ߕEoey:\J,f y5kt2^l tU% ;x큒np)_qI;2oriF?DN˱PDTsd Dchw=||%h. 4|$l_J߸|#,X]Drv4>uGߋu`]$^#fTP)G -x> ?[`Ʉv>$Ț4iSR^F2066[6zޑx}Ł1TYy+ l=5΃Y\FmAgDtam<)ˮezu>QoQ!,VUHy5t+ @MG؀& G Bg=,;^j[ZauOuJlk n@sJ)[89V>k?~AgTvM\2d08F)Z񤢻[{ւ. _4~WL&'%n$dlÒze/C'}'X.avfAR,ڃA0-zb0qI ,G_JNtkȊ,%˒ANK%K,z-6ɁpEċ:sogUňSW4~leo6g¶㋵wX6"l0VD(t&*ƞ7$ n2.t?ws5́\=ߢ' )(,&Y8p)_חqJݚ˪M>PYg a'[fK$ s2=\SaCC P.MOU%"XhvY 5vjzWMn ; Qؑat*աTvKGn4t܄Xx*QtbqPs^hJ ]v>x0eXyjxR>^ړ%F|#Plڄ㈽/ll|3(+I^˦5|Ἷmu*}8w ?U؛qT`ȑEt~˺_;\7.[ԗo1"\2Zo{>w"˖e܄HhBjoP}?3P7E'$v:;S`b+xd#ܖD/V"gZAEZuI[@0>'.r"-!+.+7$*=PA8⦪<@&ot{8wAǘxH?Ҵ\[{@fNo fb'W :#a>A hI "7t(>3f$`[oU6|F]&O9_U}A{vlSOvo& 8y@ W]<=u$.GhG0)  cQqلynp9, =;fZ'ΡʃAlkk-YUkImܝ-wn 1ɿ7B:ɕPՓWxt\~,1hJia? n exF(8k8^HsXCbИxnƟǖױ\˱` l82i\]p,@|ik^go0d[#JIzAMigG* &cp̆FOOK%d 6N#h^{Hk*ӪsSτ/Zsjq^N򮑍$%"Dr袹6&eFС']\ED=_Djl5¿VWU,>l5k p(N Ie+r]hӂ وi@x(D=5M>Q 3\]vW1 gpxm2Rlo{(ٿ<>u>1AJ) r -A녊mMaFiS.i`_ىC171&9قg IT B MCR74׿o)Ɛ0 vbg~E;|_r!wK)!mIΊbF2Rlz ^+z+.|(Yyڗrքm~sK3XeVRAdSZ%+It1 Z*g,U z)۝1C%I-毊mC;.< ؈ euj>Y᭩$SE*m;l# ȓM 3 )Xk@ Xh8"eb(ËK9 ų㟎bbD^cF@ndЮEFrL+Oo_~a1'mx$W:oƁB -#JeNTiBr@AqN_ZbA.oȵl?~.>緟 p:gQܗkTU5eH,ݷ\DS;,j&;ߋ9@2\sNBG|r[mYf= 5Wܽ d_Qk?pO0BhXx=o%&H=Ot&kLħ93fdg-8"P,aEP.0p]OX)> ~e]{|j&(G0s[[dȊ+MMK%֡'i;w@5-5B?9<' +{LŇM =6* lO/o4xWe0/kf'IFI j_Yi< mzݙrsy*y}(L<H:7siog\Y>H̜tKkD]v}q/yO:=X ?6Ц*+DZg#W\e1irZܮÆO/w=<vG)Z9@@vVfl~+Vhe{IZ<&▍8sмZ/a'zsUDAcp5IZݗz<?'u21o1Dʚbw3$zeP 5Ͽ-.RU3ĝr)nA9;ٽ%n{~ts^,łcɍeB'$/9v{<72_g!ޓj7EZ$1kw<=Q Taֱ7Tݱy;6&?:a ɔi uuJ*יszqU] n7\GĉdM\HtHD5:H~]p̠'ت ܷ[gσξ~0ı|ϽFNxUn$da>QoCƑ[K2#v碙J*Q:x:NLArۗ^#D$ D/DD1b3@` xm=^UoF&/dPML/b"fW"w{sn"ZP$`Ƶth[0qUf*ibyrĆg4Ox("xϔc7kwe0wk8@ZNSI~ۻCo1Wjmn):҅pc{ZȬ )GGߌ8r&w(:b}ѿrc՘`Z.V̨l|B*2pSϫ#]}a2XM|juk+Kϼ#g&gɍz e]W􅏈y=½'?2RDDWK`` >#gQjb. ngj.>< `0Hj0]\f=_۲1'i ~!ӌK`]׉wspk X6j>Gۣ:T_zeYCIcT\x?lz=FRwKo{_[Bȿ4m)m .3}npA:!u|5jb\VXeGCT(VĜAK&ٿ6G&Y@V0**!bdp A (ȸsN1eo5K&F*%zD6@s>kyynkaZRókuwN_G)zsJT9&lIt A@FaoBJxzsS>&AL*+zS{]ISd-9am*<:׋@ fA,s-Zrڮ,Yr1T]J m=У5@@-nHBHX]~DnͽEs֦6OJ_i0j+D"4v7.hJ>)JcS55-n 6G]ӎ~w\r q&Ɍ WSmCt,Yny*Yah ?^)Oڙ?|LSL Fr.ۏ8ZbKW#:Lƃv;m'+m3Qo4 $[&P cRЪaHyQP7h{1H.j^ѧWk14 |`Ft!Mk˒mȡx/CH@OzĄ+ 36¤XST\[Xʆɴ˦kgj Kbx95_CW#fQttu"n!vCX0a#Ap9`eRuf"TV9(Ɛ@F}C9zY%3'sbTt\Kwˣ$nx3p2D^vG #в7] n?z;ЩUt>PhJd"M씱c y15a.KuR ;`r:mߔ&&gG;Dg#8n*OF!m:=21K:6g_ "934QUgz yQ.Wնw/׹Z M"|WWHߣfRe ߛ [Gc~#wM@WyT\pdw<Ho+1qed̨maV8E CHW%=wקPF#φspb)#90@ b=pb&Q o N᳟zlwpІy%CD$4 X r-5|EEY}`CD]rLJm̚hr:H[!nQrAҁnKP)r@oc+F$/+>@.x%~c\T뉳87ãY-˵Pod 5s{*k*S{u:D8Isp:;Nܤ 3HyuӼUQ^G^8+cGKtk $!ņCfP |=ufD9LZ=Ee{u#m;Vcg}3 G ڟɌ zxF)bl=`45,P5._>+,&8"!.UuFA\E ICesTJBa5!>?"Ϳ)r(Zpb]㞙KUMYugd. 4;fN:18(>Z& {J)W<"F}!QTpK }'7Z‰O}Yf[zO.c(gQW^B1LEa= G N2a\'XOO 0AC-;j,a{B}"<¥pEЋ :>wļ5[XS-j. 5{'Ÿ?#`e ="O7_reԞ[i6q ҳC,Kؘ{0R@z^G`1_+kB9[$9(喵i9Vnב "D_j~}kUϥ޽ -Yel nHl]Eů;G]<ak'wBބ |ʻ Y iC6~"؏N3L!<;nYa{h!R b~^-a]c-k.o\ 7]r`y;N>["KޭCjPh/>jDGxr*P>[~dn63/kV_q<[6Y$&?oU‹^ڽ+\q_QU~cd|❠S|7V82+' r_7 i;/EZ:L>BHn {sVاk>ܶM~Ǣsl9Cȡ (l0 d9zժaFvEr Su %[~Uk͆hiAXX8]'1vb>Yy_6AJPo&:摥(e 7TkH4Q `8JLw]B{x d(l%OfFpX.|z bRʹ<2RmO$ 2> S40l{wvV_RVj,dA!BN/o&?G%b@r QvЎix9꾏![?3Mdɏx1aY7x~ 'c sv!d,낅؊Z7#D~vFB"xo25e(pE _^u#x: ׭3^=iyYϋj_%o9&~h^ݻ/[,(XJ:+^1|Ld]v&$ќT2H2)cw#C`ìn O:޴e6} tN=>9zzt@ݼ̹w>|h*b9ǼVжbj^:! ll[L0eK8xDs—/Q.$.THC2nb9sC3ZBǡy.{sTF/)z^ /O?I\N:&rZnt?yΆ4ͱE@HEɚpQ2$+pSO&ܫŒ@J<9:&6)_ ]=5mnl+,uVc\urnp NP1kI*b3j'%F0wP7&͐K.H}̏h8&k8Pcàe!:6eBo-hu,Z ->X *&!'Z~gYa~j_lp"8,J:w!T_ꬍN2[՚5lozTZYra %E҇p$bbJLS TU3ucP[ϯ~.:>Űpynkv rU2NE,{ȭ녳;ADg &Ӵj{n;i6'n Y8M{c+!~G$  y-Дc<{9"*DŽPgq^h}%DX_?n|,F26H \2%$ݑo݂Kx+?t /wץ7&Ξp-.0KoE8V[j>n5t]lɉTą4w2:S!~wCQ  .<2BӔ4*ԽDJcS0'9{@ |+ ?=>܏Tȩ/<5*Ԥ Zޭ^Q1S q? ;5=yVD[3zӥ< BHĝqW0$./[AXʉ K!%4c`RjN]Dk‘~j;ME)AZ @vv9qKtShvcRA n@>?TIY8y}Pnv~O{pCҗQ >)".e݈ 'I]#'{23؟syΕd`]eyYZ(mk><N#?opu`w䭑/VҧrRm6~g],˶[iْZ;*]Ca!6$;l S{6; xi>.m uI=``۪Qo>=۩q*/% ip-b&v_,#pjEdXN5G "0wXuf%5`6Q*-\)AWc(\$ gv< HʪNWH/C`4l;| & 9Z=K!ށK` yGnk贳:t@fk.y* _劷"cMqu*Hg`$ufK;:VdpI4R!h L ~Ji:F7*UD@MEVZaNhhT+5nfּժ"P6BbO%`لT^78[ӭ,@ g c%\7'Q߫_ے[=Vƶ(Iq$ }TM>=+?E4 XW8_!A&~hc3g:q.JN7N" lK'R|<Аޫ>\@)yz~jq9r+UF 2- JA}Bʸ=@[ik")ݵ+3R(ް5r3\\h/ӒA'n*sFD*׵qe?+P$,xCpL)3 .H+/DЁ [Š?,BGUN);+/ 36SEU ){ l xK>5D][Z襛f4[u̇PJz%a5fcm;B"91tW(~#+Ռx2 wo?wfL#ñχΙ=kP'c1i[M0.[q6RU/nGf' Q0{7k/ʳ'=X5 K /tI٩~~A.˻FԑKW?Pr̶`X bXq SPc\h.0cN[Z hn3U4VdģݏfΏh@[M6^vLkh<'AJ ,UA(2x NޖV?lpvilK4]+]1WZm2'1/4̘ 1y5ׅ#Y YV问 UiB$ɽ*Q̳ED^\̸>캪h/1 X$f mD.Ӹ(fim-kauհR6ԨϬ?nA3W(щsSc puy6U귒y4|zffN%52d%XռE\#r_zq9w5*GJ_RuOF:{Vy%=ɩ(j<_dT`Q\;[-DP׉#ԉy}tHc7|z`΢>Wm;..1zs6ve lƿ"f(?DUSeXQb5.W`@R 4V9q%y~T%߻M{4hD9FWa s@| C"BgJiwGE Z=z7Jfg/gi61`O1ѭCc#Ti0[y.5OVNU=fl ֠|[Bq'Ƀʜ[|hc֊+ѷ fݨȔi3\.&ʬ9 8{{G++aӉ]K.M~crvݏŏgDfomDX./UgFG[ZRػJqq fS/f5\,0J(Rg%1^]]b4"d}=ȣI31P4bU`K^lK?01Aj$ow;+ οTHH pUӿbLS4V\9A+#̵ #cetWҷX(*S/RD&.@ @j'pWGi9a\2{Y P~c(Z=IR$b2R& k`H=dc 9[Τ+#J඘$׻T{aֲut.l_bp~`hiX_mpo[!pHdZ=w?_'ӦT2:5{HɏC;S$Zn5^Q@GVrZf2gI5O2>g@k9U>Mۆ|/lb^+7b#=hK!6nn1;j1m Kq( ;Kctaڣ6nBw "J%ߨ|R:; ю݇*qLsBR&Bn&Ǭ8<(b3(N/ k<"-eJ?4vR7vxxYOTh4OV[Mn'2ŃaC uܮԃXo$|9e38OS1"h'P3-pcEhk^u عlYõ̔uvm60}:<@^8/ ?!ev((d 80EkJ o^دKKP&xBrN_h|̓Q\&`(5qt. o"3QGC{{|$b4Ik"Mmje%GԸ6 -;7j3 hj 2w&h-[LК*]O &,ǖfhQn˾M.׆ϾTbR܄/W&oVq[qdC]u9r9 |zÙp^2kpUeaC?&Q\3+33̚{_Δa ,2|%޵o01lMq:٫|!?8r]Q-YIe`O!ʋu#NAt9W {z쇣k|3f$>F,dtO>QE[1pÃ`6.->Hrmz·O%T>m;')&SO%!WLb kNvk6m47NK542A9H4|\֥LYEms !Nt6}^ vR)5ͷoSF)M헴DʵHh*kPl12P.VQ؅~)  ZL]fXvR H%x^ M^ 0/T@'@ݞB[i+g5BF LC0xEޝ)igڌA}t&B}?J)}uJO'4 Sec0!%+( c~CRX>]s^5_i{k+2,I'hZ<,*ٕVo e?PΈz`{:4M+jF&M\eIǶr8:S1.00Mi, \a`I &O(*3޿Z Bw']ru0%IH:1-+VK^Z)ؐm?`w̐{^P̄t8j679\c86^Mш,'_Q9 #ίmԇyXB<8lW *vV٠0vpN-ttD)+'pKs6\j9:ѴHQ}NfnE)!   #ǿX<> \yFb.t>ʍV- mB7#sKL._>,4ըc8](/*2w -CAE?!==BKvc]0[!`#ap͊ Тb;OIϪߜAYMȞҶbbO*{a|2kR <ۡCkސM7MX~̽CA0=q5!b;Q7Q\܏&+g@ LbʚpUFYZ gVo=NG8H鸸%ߗT1endbYÌco{ɉ̝7tW@jIRͨ$zgKm meQ=)tQ/\o/M'f:eBV18bY{S=m[?*{tĠ9Nje兾swXXhޝTl_~@D:w(0:5Yz W(_r1=(>(~YJAߧc& JŶ F%+t "%~ÿsҧ ʰ4TǷN0rXL AQ؉9.-=]㼘_7\^(+nZD$-c/Rإi^nDR9\ ?em '>$Lpz_Ns}k!#"Ǿ\Y ї5)Y* ֗W4jw6@6lsXsLixDY֒j KTIq nD.w"(7VY^mB#r cT_(LB5t7,ݙRqg!]q*rڙp ;&WG˟&|VU>rč- ]) VQЃ2-'\=IM6fw`Aa*MCɗߴ5EJE&'(t*#d_*_!lȉUkh MY$" .^-78RU HsEAҤNN8* -[~΋GBre\%V1j1G~1bGl1DPw.6W y!f-dY џގL~ şGA=$A>Kx]-r`=GdWWNkwW]gwfFyzbѷlve%yr*Pa|۸pϰW4<h\~z=O%^M&[_#k$ >'SK-4wނၳZ*[񠎚aM-KP;1D'-I O6)$"v `K %_;yj\ܝw%: 5D yɽFܖN T ;Ji?:,'MU<bw_֜b-a1"<886b_y<+@eE5I4ls ( 9<趇njZ+Pnz?,7l_@ uy2rML>BY)^e)2~+۹72<|u%PM?Q٨BzҩW8_x5َ--30 C 4/6.L&:DFzB,k],ϸ5 ,:\ jy`_\lv-OC>c)[+hI n''\vf鶒pkwOqP8l9[=峷DШ8-D=v.,,Wqaэ3dK%a_yB$^ e/NFЌkQ{iy~>{< G;ǚKrQI:(&E-7p;U14@,%GK  k6Pewƺ"޼4/]/6P*a3 H̲g9ŧCry?`e_JR<eP9^xeK/RzMVięZPSh Ύ9~_Jغ'}%"mv#UEJ@jS[Xin/95BdK^c-}LwL 'x.YU?֡]wq.F5 H̪gp}-W{iaHR2ohIˍxf*r54iy'L/ﶷBm'b=c|xm$8˦*xibEion1kY6UDݵw7ʰKE^lS4ڑZ ^|ܳ-2E{ҩPʥzy*'4dK#=L2{ʧѬ_OiH˛ҎDŽ=U-!&`EeA{ yO@ȼHLm}K[l4bh쭚2[bj|KdZmZ+-_Ңl=a–ޯ0wO>ATBsIvZx\8PzpW8A iC j-0VΑD{/wC$|D WsVPƪ}jCp8-~%,ΒN->Èߡ} 6pn@$lS% 3\0!:RAlkunGǺslB[&bsz^k^l+6)e*FZH/gPpХnіq 5"KCh8竼|PDh0B2,kzrF6zv A3[&֝%VI%(fg/l3*yyl KwDhAĺ9F:l.&1kUy(Ir:r5g馒Ɯ;A+*iYnh>s1'nxݝgysi?k%L#?O0j[ߔ"MS+cI,o9$1t:kZ^_]}vt "7ф }Q+qNaC*0\&];^& 0 ŢV+/ZX$5$ëk.3&bt#/oа,J ^ v!؂]crtrȌ ypѬw%dY,ZM8ΕgM RjْY:Lps !W"3e+OA" DYia$ v%erY@4y4뇊[1j2,0CC)T:<t$h@2Џ/% LY`0s3$?)}$ XeOR鷸9@dnΉ5Z7W2iͦ~Ꮢ%rG0|GB[ckM0^A^a( p3J,Lpwdd,}$FmgH;^H̒ܣFo:<4{OW(J2Fкfn.Va Y"ӄÉ,Ux0+7kHZ]e8geK4[fBv ?Nn* Iˬ\Uz](}U!DNSoZf hwZwqw_4-^>+1J*h6˂4 t/ת%W &~4 a Y1xJmn w - Dri!<#2ۃPd!MZ < N8377@ *7NQr;y۝kI5<#6zjY9q@!XO75ޔWSFN;cQus "Vg'RվnZ졌]016y-I887&b[8t{ؙI*0ZǺu6m;,2vL,mm{LA\nh 8[UHz_p7)>aE:87Ԝ;+T𼪂|eehKMT$_qW55WioyDKL[X/QEZyGa% NJm}/eIpJÔnگqgM*I7 V#9aSP(vI;c! ޒ;C7:fp:LhZ Q?s?bXϣY ǦtD1?#mgNPZ]`]tIuNWaّ[p'U7.CvXq*MbN/SB 2>1.Pkv {衽_IDٍq ˳ +sb@C\M"Fړ~mgoj2ΞaS7~;p..>pt9 AM>ɧ=Nҟ>3 1xx7>*6iaٺ4(M62u!laT_>FWՆ1|S]]՞m~_Z~@,!j,x;HZ C&oeTh}C0DbVВ}HqH+wdJ ֌=?;nhz-=K|r%4`؟7oX6¶fBJnS2?X_VOwpHp m剖F?|>SuãplM|`zuW֟<)6/U |RIq P A"e`gsu/qnsGBM?=23w%R6$8F,M V@3ro :}g!f`7RG|v4<=c26WA_>9h1WpnZ}Ty8w¾IdH٥˯.&n0ZFHSu%!=Kp9#4W L kCKs 5ՈVanWv*z Eg?;,׫,Xn6SxhKyS)QEP3z`wz,Dp5.-m\%<֫fpF'Ʉ8݄#e6Q" !0n"}]>veMߚ$P2dc p ry 9I SȂa>-C|~}g1.Pst-AJW[TYKgqSvN@P6}Zf;(A|I 6 a?L>qRլ ?I#<;P0(.'Uv}4;] 2^ 3v *]Tf H!ȥG^-߾l0s%P ظY6Rk[nÃ|5jcЁvs.?R.Nƙ&uwo ́E{DTs934'zAfNB%Bz*f7!p`"5J0ŸFضQbĀˠxo;P\Nu5::Zpc0a@/܈yχ<ݝk?_Z8ÓztEwfƦ|x+%]Pf]Hc|[P7xP& uVDTb EW T[M>svٯ Dn#EDsF]ft?g6jER=s PC`ir-XBpB;؆Q{_)ȴbA(0,A.&Z>à&ZLV3C dĭ`#":fGrL k1oxQd[%b7XĨK-x(޵H`\J]31钕(lݝTHɱ2x0!)+KגX˛\Wй{3oѤK75 uww~b7cmTL髗Hjg]Nk@WgJZrKת 1p &bP_z 4H; )$x~Y:o*qu%[]2.9V^Gk$Lz;Z)GpeVU_A aa۞0i=,a\88/,Vٺ @$W.X5©QИnw|T(ڵ75hdL54 QC4Z`.YϸAVt5]n7)ORÁ1>0T0A yX+%ODaJk>|MbUfP@l3NA0iY&X ++Bko#.'œehs #E9ZH³oH#(7:{p?iR~-NdNVl>}%y!'?<{ᶮ4KRSϦ+vKӔ|w,0[] NZd.L]P+稜mWVY#_CT<@#GqsG btw3E H(0TMEǺ>\{QÑuwN|ª((ZҦ.Cncʈq\ ɖYbKN)#:w'mjOj!L5{ BEE P.` \> GU,VV=r Ci G5BBDhz'_ *)i-9BZ7[$KrYM2O*>ĜᴤIzI{N͚o1~F#(.d vb9ǞGrV# rs?ö"&$(V` G#ҪCAІKNe)iI? TN :̤RnyEG„`7O-pHٛe w]&F_$hTBjkW"_sj.O!0`}5U` Z&B..J)J=oBam7.nj;9@v婽7o"M)%-JyB<0T@1s WYFjI> CXZhu (8r#Co(揙NVCtÈ7;)?Kb 7+%Utt\ٴ8)Xd@'1ywUI 983B:|A/TݧVS7x+^X(cFLuQf0 ws kϢj*6XjW MA'dgnH5zFI;{BsHMEٲ#d\|7*{^Lz+Pډp-elQOB v,;Cxnažփq"*"9h`@0Z:20Az_FZ`[ ߅y!^F& 5ʹ?HX[2 G/h`$Dž+mms^TpPvw= bޣ 393GR~YNbP=U8}AI,wP_ngoAY 1 3">ս!k/b@f4prEs\ƴ,7 ˑK5>uFq*}/Qv©}+KLi-;[ C?R^ti #N;xjiڒr?`4iY80$nMCL{АMr琢+.b\G x9T;qub$ѰqtzHT/vO-b F_Q/i-Ǽ]e ?K$%GEx="0..*DηIg5/Z<[VeE˖ AmѨqqKqi|IDQ7j-wv 8mwc O@5A_we tC5Z1DH~eY50*|JK^$,JZVeR6#v2B!"(AJǚiE;3,;dg>3Yi5I2HJoz3]4؈"ӷ݁&{2{=m4޾TV?0؊2O$&~  LoBH\Xr;r>_(fU#ui= K;9[y(niWy.|qjvae0hqzJnWXrP@z 4]eg c15jB%\A(G͂& 9_ IΝ,ibA9 mkGmOW_zi"u6=$gk6GhԵUa4E'Fν` }xS7-FM j(}8RXAo`.j?Ԏg(J# ü3el5LZ"[Iq!, r#;O{m~3Šw q,jLb~zQȭf/@bH-툚2Jbc%R4SP2خ5'n)#Mg*6T`b8HPkyOA$``>)C+mS$~$^G(f_#;KrDZߗ9:d,ٛ_z)<{ct@6Y5KI.$`2cXY8_~{AΣmcE\:՗?nLFq#P5 <Q€D"HyycPQ Qi&V+H QrIml;B40@44G>¥G8&/-SyE-,U[Nܞ2_6vy j,K>*g\V)cD[~kG=9E0n;]#k&q0gJf2xzg30eΏH䆐8 `w=2B^R`)ͮ+laBԅ0kl8MȺ-;0!)-=mK+stDH6 ht9$v:U⢮~:za ąpK]4L8t8^.s`iF.1Z;CH %.g`gs,kN[`|$;iuhư:M|т v1U?Gg5ȃ0=KE6Ua]`m ul n(wN]ʯu*`Z3+ -vQrt6K$鴽-xC:R޽})vg'|=otJf"JvK< զL?%3<#uk^T)(391'kZA|E,a!xn4bEy[#yb&鳾U~i1S"ؗزx"fJ[lh]G[_2f 2S{"ZCLu98`LvJ?bZ>S(Hj;gА ]xjD?c" 5@իg|D$n8 &پ~qPB7U.Œ&!ًmhFqly* ÂI6!Հ2ZD9W@/fo=vLGYQpJ4}DkozR< `vǃ$tx=L^S,[*5I;ju8 SaBm %Kp*7 (U?˥7PaF 52;Z?"uL(E`:&fWxUfD-vvKڸ؍oMYDzO>vwʙH`ggH#eťiwē$LcHSR9K_=q=_Y 3ߊ!.ҟx /ӕF3KvBF4>1 x qĎnJ@0SiKŋm ^E*3X`-@,PdCOtesY RXD0ϒ +O;r5 vQ^{+}U爦b]L8g"PŠY5HOԴ ɢ8=4OMp^ԬLΟ_ 흊bmѶp@h7$InYF / Ϭ-hz>8TO ~jG[ywU آu xd}mR==éj{`FShzMFjCyTR'L/h+ Tl YfuBSϤF֗ g7 xqF# JIAhɉ}|JVWez],ί%ӗv-P % ܓӄ;DB4_ E%lV*f|U2pʏol@wOZa5 @F1Tf~xL"a($+6O$K;#aPȩMKG@A7^Zu6;I+ ho蔕ĄEձ {d}"_6HB+S~_1mO}g , FҵWRϣ֊ bOha$П{'ݺ $nIGވy7q/f S5w%Iӡm" G >m w'ok@ riʜѳv>^jZd^ccy͓i`\Yk ә^ a˘qݪزCw"O[j௦-s5zv2a@-ߤ {D+^Ceٰưr`N? W2߾t,YZc?O2{()~jd\ubsYD#ÑMD|}Cs0UF=udy9/e0oX\ݡ`搝.$ Y|bb|1_3m *ejn5UI_eZ !m~MVydtАQ@l TlRfY'狢v^;Rpñ.H zYX+wm[q# Jξ恐Byئ]S-%^urYI&,h2M `Jt`OW| ɵd2&^Jmh9!QphHԟT6+xZ14X }V<5Fl)N= רTtsYsk!^sSo_Ge/>](3q*ZNX+n'OM4j&eF=m^̪yUl^0؊c~$8 l[~T =^6iBKe< ; /J@äY_w)r_jdY% a65ZX%gf $'K=ӁaO"ҳ |= $8T M+ i<\^Z}֟9$(>PK-_Ϳ$Tm.Cy<#9Uj 6F) OF#pmw_uTgrݗ8,U\VG786U+-.vVfPYR~1OoÏٻ2v8cĔLx?9q!&])V|)Z{l,7c^ayw mV˿rҚ [گl#E4ՙ?/;mEw}[4#Gj AKgaORQ*͜n̴~/0G> +i9^~Pźљ0nV-j yrE  ۊRGgs}=I2*; gK@ 39O ?/-4=|-EgZ{+E[!3I$NN#ԤMZuh^_WUX*S} "G) >"6^wxf6dzFF h!@}(haA ?,$o{&=v6.>'M=c~PEh}Nh2Ւǃ7DA oύO:HjUb#4ӋmZhR΢gl1Bv¾GI*95[>fOldx?3* Zbr$w9.O<\bQ S'RJ{  ~u+dNzPi/n3 ܬ JKmZ[+˒NEoZx2  %WW 㬙6ޢ=nMNg>&j;J:/.*H`6t&ѻ!{u aļr;-N;dβ ]+2jj0y r3Tz/hFܴm۔\V8YZ!gFp ٗI>pM:dW ?8^~IlʔʑVqז+"ŧ.v|M7J -#"ujs_ D{d*,8:#(GI`1] &ץڧX(iԭί $ZE:YKܚcfW!8KASlvK-T*aځA2oeCS|jK ůtF,MO cm!d{Km}֒ژ}OOJ/whVeŷ:n 7W ,Ov*9]Ľl* `K%د-fIӧq&GqaRBg#zkh\叇[&?-iϳ!"I HdF-J/n2"v0^Bz5+o_ݴF߰5?~s,ZuQmx$LNq^#LF`])m:4ZĭV. G&n N%Wn"cL2 *,DShz=!]pSI?/ ]uL:_eo (LW {[vn pG"XC`Ǝ u|y{T$нɡ`&zee&%ӴډV Z=S6 >xw}"hPecXXZa+.!(\*a>*yw(rfTGPLuaDU Jꖓ O b~q}{xe}N>:%.ݬ5W܊B F$=Y)GiHR9-laH  h)0* R%&[>tuY$ oYg h[ɧ/98r*%z垨 D;/F H>  gzQώI9A.$<*q,xd5m3g~a0SlSqY.fᡢu gs:ۣ |+j3V\=vNB,4- {RqV>L6%W[ǽ{‡)bJ~!:"v&~chr9P W$gRmVFxp`jS+c<̐GNkY\dPQzZvӱ"JT "}_y.IlU IlN roex)x˭]0h9 ]_vA9a2*]M} #{wV7ٱn c%r/q>w[y[Wj~| 2=kV7Ҽ3NA\{Mqф0 dǢ`1;ͤ }}C~D$0++^˲K #@yۮ+IsP퍬[ 罨e~$iD;{Tb5GyUTD~53J%JCʣ@:ѯSǙ"m{y̭iiK0BFrȞǒqIHxdwH>Kfͼ]檶*4Mvɥ4 d 5޳+V96bF8raƹQ[Xz *KWzxy*sg'l"bt+.*UOFSϜ58CxyA핪6(3DD!mX}fO;BfW$b5dHQ9S&wb^ſ9Fru΋4TB̡2;KS,K)cU/XX̰vM|H!O$K7Fwffc$m,ΞLcA#a3mHk{Q mDC_ra.4K ]_`qB>ӱA1RnC4du iNɺƋd{vgSR܉`|uQ\kx.1r. Ȏ#la H%nV^}84b}f(BS~ ةG7uzg[-{[6je}0sqZUOP'4AXFlmXŠwǀ*4yi@#nI~fQQXw}r̴%(fS\`j/?{GMG{$|Q/|]:y`8ś43[B JQ}[ErH:Ϙ/oQ'\w|F19 B@̯fKk1?2BXV()($e!UElbf_*a tB Utduo8apڵՐiBN^3,5vuW_$m'J6n(6J6;0` ReW}5<ڒ)fzz|Dnݯ#0ƏYFmя-#)LeQ1_ K•.kh:sPR$PǐU>Hq$C<ћN8/t_ZȨSóVjDZgJbfH tjMG[?:ۨtp烤UDfü7sgH7~)5]>ކ+7h 7ӓipS!(|/;bl6B9-gS΀L"M*/>]n3R\I&1ebăd?116_*TmƬHό!% JVVioΕxꓨOfb01wd+[{7]hLb\]Z|p{!ds,nmH[ԗIhD9^h%?;"\ݿ*աv)zDŽ!D݇pěC4Q\NT˪+ineNYg=ߌpDXV#͆Pơ~2xs&"6sv~=agatu+1aPxX!J)@ʨURvVaf%R\#j1 Q"Ee'c>E&tvB!ݳ0ڄ9z}tbQޥtMymR`Vɪ-4M]voE܂1*[b̩̬`dpc sPe'J-Ljo -`SʻIGZӥe!}D{tfo р2sX,iA )-ua^ɥ5O%xaaRic6aHa2=v.16 (iك3X}[} 6ciR/o//% 񤋞mcgB%5r]jz?΋CVrˉA=yy g DjMW^v:b`o&կ1DSVd{f?.geJ1ߐmr+*tDjp,:5ۓ(>X^fs~Ut&NSҕCgW-Zd !mŐQpUϩnO*NU4X!%' A.v5lBkFGK%1ևCl c NUJJjOL(\TbYV_%TLl!C>h}yN ,pPyoY0IvQQl!UNC3,&4g{CBXP9FF4BAp4WIe錽80- W"M-}=0V_Pm:#Ԥԍ!]WktB){X@^{rE{Ҿ`W3]e2&>oSxm9flA ZֶQQm߿0nsS3{ucK4~=\|1(__!yh0zⲤ==(\R !>s:Fp?5Q\\SqE1 I@$y|TG.2l8ZA5tC>(fmۡ΀>V3TnEb+,ꘑ,[OܒO~\nl|vJC"#E^Ӎ Ip8=m)?B|5!7ʡj-Hn'`f`0"Ԙ]=7NYz#/N,+ZJpdd _F]b?aaF " Y#6pGThmM6`CLB Y2KA2)PAʥQJ~]Qv!sco 02li4' X9Z,җS/i.~f"l^ \?AfOioZA^ $e tɻW8]%wUhآ8̽İ/w;[f 3Osߨ/t| W`n \͹ndDT6 QLA*5C6q3ojE*XS}K:D!h)rp"Kj[AHJ`<{9Cpbj Sbm͜ZXC`Iť,w" RP\p0^؝iL¾'J_+/HuotOj}S~(CJ؞=((5zlwTDLD(d(0x;o沃np>gC (b nMqM7;x@jpِu 4 USŧXy /mR+v~8F$3:uoư56UK+š3o!k!!!PV݄ŜG.?^iIN8D[YߞlvH q+.@׾_MmjNoʨd;s|#LLd^FR Ok .M]Ab V3WVxA#yx"7=AoG N _>6`BHm%Gh>^/#m+B&y RP%4au.yR&Z3O"]pi*S%ńM]QrQ]dL-Xt<Խ O}d2BK2fUoPLzsPO ߟK}h+gA);+Z-FMj 5A\3>\ Mf`mwKyf J 䟬ԉ"~gD^T҇f{z. nmLn~Ǩer1ȅ8C#a tuBXG`~TSgg`bD%45Qw|WoY܅G`f b:0_% l ˞gڦRk`Rb[;/bw#"N4_/=j,nHGbMgNmCW5x,"ɹ-^u1B묅G'76ļ(~ud7RT6ّw7usBi` APk &6?E< ۞K{:sDS%qVqq6u}7;+e4PaF5jN5=lBNakЗ;kEAW@]*h7̉@j&Ǝbcup'5<^BT25Lo!KA4سs? fQ'G<ŴĶ̨{,Qضj0b(3q`LEܹY!dWjrE_!f` |XA(70fPSFJ5ᬇ[xwBLvg7L5sR.Q7v'a؅wnNk^%hdwu^?,g-B|Vt1ߠ ݐ+f^jl$],}5ӄљ!>d^zH (ʿȧsf$/i B# &y⿐>ED`*XyQ$]N} \6noWw$_N~dNP芢ñU>\q/ s1̰~Sai~xxeȳ+cPgd#ÛEICQMaقn.jc  h|;7 ŪJ510Xz`S+#\=>8w6p@.U  a-m;` 'lq=JFrmcy{-ƹ?Ґ4M0S_`[FL8n* 7zS #*[q? C!V `fklS˒m[@4jDMZudJH'P޽Ee8auN7p-'BM^>iFUIL8p9%PE.mp|?$ %H0p[F;ibyI`%q:)r uNv=2nlqcES3ʓrB:&g`}`H дp/ZOܲ \7H/_,:<%Ml%s)KaKƶcPX|#h!Ҝj )Q2N- l9[{ӌ>@Jg rc awrd{N-pY:>na 0wF>aqE ų;2pOWu}_aوP3+N'Q"n~Fqݖ(|7lZ^5|Kñ=8 u*lUe5SZ}rxoAm lwfemC` Ъ ɵY6cpxʼn2)d!^XɘC?GH`z.?7g8_J N6l*_ja>Ƃ_5ٴQu^;"|V/"dc~DCPͱyY6AXS'?h ’ CQɭvP68TJIp2m28:]!u9鼠D#T`u3ؙoP9QjtW XjZ+kwWK(x١feic5qhwshdfIGH?dwYXYJ.-FP)Mv6C8ь* OG- iL>[` W7+֌o''p2Wg81cO b #UL WTtJ `r SaMZ'[cuԪ6g;sf Rb_hϯ`|bEs0s @[-hkfDΡ h:(hTt ]:s;`G Aŀmg]; |Uk\iV@1Pq\LL#9 nVj!}8DǨ0x( hAܢ4VlXOS/ ƓԤND&x0 e%OOG99 sMyMb&n+U|ٵbRBFq͓v@,ZQlQF"ǝk̖ i)βh0Fk_Pj'":]}c,j*S~&p*&ȩ_+)|!ygHYU!m1 "hpHe!c\ @' RTmY_u簿nD",A%D&qeBED1kh.D7RR,~H7eR}_ԽUE>tnovQu`BϓIHRo}2QV&z _w Og!;}: 1Oe{[ =aѱDEikMB%5,bnLrV" hS_T ƽ8b h?x' BWwC,HUsw/i{ȄIq]hyxos-c3>˦Ay{j,OO-Fz0m9Kc+oV}kv/ovXyZE+,J^Y2TQ(oW7)p織jy$@:ơz8hIJ9clh!IgˆRXTe?w\(30>`ҷ'erz2m6b<p#_RbLP\FaTfZO|'a@X(IJ_`C0j-{ExNÃ@_bznNMK~v"%SKk3#̋ų£ɺLnJ<>k䎰= a!2h{gSZSTH#D/+ wYP,(zdf7׃/ q9VhqPEnr +hw諭n7"Un{'WӶ*-vz@ԣ#"=|O ȭ)x3jjj5gfj8qHà.ñ͙7xM遲͒˥$as&Fi&mtcV]͒ 7V ~ k4ʡ8 b|f[ٮ@sl?4Oo" $MZ⑜AP5W&oHd?բނ"ҽ]jCǡO&U|'kfZʫV?GNzPğkĶ@@'ҘEH]X/$OQ;EҊGO!vZɠ5酪mP,4^J| Z11 ?-9_Sy%Xa IW}f YfϝĦlaW*~t{Ή6VP??/^Vnfne2[bz9Ŀp %?2muwT=GpUT,xPMZei^QPLE7Op4)Tɂ)9PϾoY3f( &3ϔU0R; q{Q c,iTRg+򘮤 ?8HFaKҗ﹪2zjL |c?*\ݳim!jH=^SrA*IPc9xg5|S[7;K%Ί' ]J-xוWV_ `}nhrf%m8}=PvLE|x,E M[ݢ6 ^[UAF@wydmk(&xVR[oRS!cxM!IMb^ewanM/WO^pi[V&x )~PZE9yoEZveOyLਸƳʻVf!L6[2c$YL@5Nh4x|*P:7Bi>͗wp|E| =R9wL8~e^Cc|H}u.֘\XFU!dTVAFǿ!q/1?m7~4rr3Pz%.LkBj4g-,OJ=UjO]#%uD8@,ثh5Q~g8TmlgX$UV/+[/K_Rjo};E))}z#-3)}ݘc/4,djj)ò$v+``ʾڹO]%t!!' vt~ÃZ~ xZ[Z}`֣ b;SZ񭓥%jZ3sǝQu7q; ,|n}tН kn9g17P`RKoҨAq%9Q]d;JS`>L1Otz65<{ 3ǺiMqR$Jb1K8 buI!f*PH:G ࡏT]ZOx|?LO$ \9)Jtc/=C`S:Ul!;@F#τd˛d(=W }RU=Ћ%́ #_~9rO^<-I`睥[ !t7;m3НnWDKuZzdj#URE_Y?x=3s/WH|Y=UV΢&Hufl>NHH=Ӿ}Ȇ8)/BlI3f fvuP91 ZD >LB(0=Xԅ(#s~w_}uZŜ@_ tmq;~܉Jy*$4A=+K<5]*/_Q39;/5l&!,h~U0i'g8Dnf^}NJr!^jc<WX$W4\F,CoyU)WkC/ĝMR1b!(帡tˋVtBEJhTh㽨bnLRKm]`n.ϚD[ qıpNr`?&q#eBZgC$}yB}pCQ|ypsK>#gL dz>VZ.[IX'r;ߍAs߹uy3(=.q ǏTfBZA/GYfT͌ǭ6O߀H3)ir=?/jv:o~:#R0{~7Fݵ1ջQ6gmݧ՟V}tyvEKz~;qߴ'lG\.8J<=碸6Ain.y\P)hhջVPeTP}皼67)bHY"y҂C9Nw;@r MVgBVjli.م1jpo0!!Y5+v&OAfGp`${Mط^Pʦ([)ay;xG)^Y5zpF>: ;y2yDkuM fo7VeS .J;4.?~@(r`Vϊ؛ cC7o) \GE1d;4tC>a)D TH"ej?LbhS##(`4Sl\}E:V15C㼙&5/o͗IQ.&!C,]j䕬X#SrX^>@F`HAډRʢs>B`7?KZzduלӝTjKdZBT~ΏmŌ{tEk ;TOu V"w`cKc`H"sk2uꮄSjfү# 3:`t,3ܤ\>iʴ$aa\XLUn/o`l˳zy=^;W{ 7rf%pξc{$fdcIg9oa+ːZsh0>>Jq,T x<|8Q#ʭ3򦜥 uح|hFӬ##„HEUK ^!n%'\\R6i}WQxG&9l&hcTq-|0SF%fQG2sD}29-Y*`{u3 T{fNy4L{wK#MD[k< cy{s,eH#zҘGj͚݊,A*AetsU别U? Z(A0WݔGH<'~m@mRcz !A_Ϻ0tMd1jL6Q'½=Kfh<;~3c$A-E]1k%$$XBv._Zbգ BȤhwc`eXQ}.Ť9-kko!AȚͦCԓ,#_jG<RYeqV O-'>YnzP:Ú^=S4 Rm 'b~q^W-=e*R~Y޿$D؈nqNyHtţp[we)TjD*3^{3_8u7ݓ."!6i84=UYvr5`{>Q_껆{H;[ jScdkL22nS f%U~%Di-6KZ6md:LB %9ȱL!4cja೜r ~CΨKTV_}k9c "VuN"Vp7buέ֜H U w Z;j ~G"rl/A% l:rkuT^6Hꟍ(=YVµ\*) ٢ S%S\oEv,[0QBc@%̗)%*GiQA5[#VX [T$v~wģ'UVN| *}`#' f%kHՙ#S͕ҒL 9O9Ĩ*mEidqjA^+DŽJ 7|mD,᳇56+-Q%3q1LGvVx7uS٥t62O,]Y|sptoJ4~|QuWx"{lc0c_DY%I sq ͤNMH54f(PFbC¡'7SnIbFi3x&z53& -T!mw/J>8OfmWR7>-k[j_G CCv{G4_ Ah$f^F?ZZ@8f{*. scڑ ͬ, Y&0Rjk؂=F7VkD`m>Vp^\Dh<I} ?= 7(Q⥒59C(Qaܲ==@fIO.HAar芇5dSc7B%߬u#9K|LΪ1ΉS(yxfF(qL/'(䧙2gةC\a'2v]N~eI瓱6*@AbVߩ|!Xm6ȋ صQz[g:,F-y:4Vԇ@$j4ݱExAAK3~ue ,6K,ͅp^ڌBy($DSj(挑6%*k/}pKJ8j#о~_LBFøcAdYiؗ5i0GXގYVRؔՎ1 +gcQos̵0(KJYEir58SYã{}hNx<{B(&N tn,Zщ/..WKv'O5Ra/G m^As/mYs%ܦ ۗX=tu|MWyǐ iϥ㣭D2 f?(o;83H9ĒqTZձ$rS ̊zɏ[?D1xy5Ӫlqga)jlP{<$]Z8~U6m~*vӰZRTz<]?/~V:}344ANГ"I|2XRl&HJRiHMcUB'jɖٮ w$f0OZ|LkW&WaN%灒!v7w/I-M!λȃv+MLɪ :o*ON&(~C,Aӯ3߆mӸt{x 3!p/ϨQ:}A%Cy03y<ºL7ÓK~7sj(Ҡj߃|;OV ߸_C'T)@\bՇNGL"] H8'O*1!S6ZB0*džIՑ0*.-*ѹtٵˡ`1<4bUes-CP(S"7.#d $r j&Z|)AGb"73@" CBۗ[ X(ـT 9/6/mS"<;߁츴>2͚XɮeR$#uXOi{G<躁MM6Ž:}\Ki;;V'Abu/&L-,?)KVYCO7> \5 [ZF qq;QnL$Pd8^o66Nd>=|/ِi9xaI]ϖ42GWLzc)uy$H&/[r+RAv.5clW΃mޢrNeXpZAy4R!.V[ R^2~9^Zp}_WE5֍а0, F|F,ƅXz NLAɆXk7o5%&QR#pp^H25KK"N%zZY_ iu?+*=B4%~:8Y*2@^TLQkL\FJ,0,_I.Pil,3'0E_UrHίXDbPiZdMFzȂbuN/D7 4Mng"dHՇƘ;O'N<Ȃp&wGM. Z(hK$a_m :ZabƍcgQSuSxyh='P7*B3d0% yqi VZl)ϪVNcE +Gő-Xm4{pXgu2^qiBE[ MO~I}hMu)sZj\(lo"WDݢ-H̾3\r>ܬQxN{)(c D g\,w5(oߥꫵ@軲@.}2&tZ-*JN q'q}622J6ÜI6ד#;ۋG7eΖE[q*|U=w9cuR4@!2a3D^hP4'ӖG/WD,ה +J0LfBjSSTϩIGi0n/0U>"q35v0)N(,hKoNXvR}^K E)j˵%a0PVPm32{#H,O%xTp0.'>oz̅7@y$x=bQ jt,VN0"9gUK\5)^BcL,+uY43޴貇@vO\cTTI/kY}p\Y5^BrPp&=͏q@^1mJ2'DQ^ MlktZV {S%`[?n0UzDAȉs䳙KAy&:FJ94` 1>rXXN ,"WQr 7>wfFG){3o*;̆=*fkxsE>)vt`OZ՘H4yq3%g-먒?Nk:tܚAݹ&M$=Pi($D=L_\M Ӗ `e$i=(|I͍g[ XR5O6J~q̧VE28EW-ȬRAYL/;=OVd4Nħ"vUG!XtoY4*AyV&"f85YUI >[.c>|qmiWۦH߯ ~,Ӧ:6NTLd۶-`=+B&y8ޓ*}˿Nfy)l4aY9ցo-vTE]2Cz*ol2/p0'0Vt>7:G[buKUک/ª(/M~߂[2/C,_Ы,ܡ6'C~=D pR1R2vek4yuMj$zkbG Ƽ:&88ъni<,Ep=;JПcK,Rg`W$[&6Tą#G {]E/yU2[u2K-9KR:~uY6гEUl( vηH3GnzADM`0'$e;l:QP!^6wzj7ȉB%K(ShȂw.1SLY=88 :C #H Yk>Y1iTP7:7G'kK4l:>)-So©6h 9s5'3)C3wVzz}[J @5 IҪmKk#<נOO#IDz.?(F:j./9ѐVWIм<7guquU᧧oҘ7w}Edg/GR'3a'SYxk^!);D5c6 &|Ga\~NІY-&S~r0,tLG @^/S?_`@˯z<p QcG0n!6^׍!_?GS 9@=g1$'MڍGdقA3$ۘ* ^: ?B@6~t$DuPt>KQc34x&2O˃z1D28$W)]#PK1| ,%Ε}%YPB-5dNr MC\)irnfRGRD[9:" $q P~(|ﶼG.M0\}1= rU,׋u_26UnQ。4ce/lN6Eb[ Cl =؝0XVMS"(l%5-=X$ඏmEq w$:VO݁Nc|7I2UДhƢ5&.Qz#[ijX9r}~OrD*# I]}P-_) H@Qw[jMVcT{A8?3Ӏ-e#R$Zj mdCY$M2n6Z6\PQ7g4рq`q̱-ZGeX㞯ţ+9)Pnz1W6մ%;U ߴɃ5/k5zV;$jмFkh,Q`KNǁDm9>QTnC$E&0qh 3y;͈mA.cr2`Qduӹ '\JK]ӟ~ZىYzlbHujnkPV]<gS1˂!;sT_!=KO) N=*S W~.l+ɦ<8RNok&SnS #¬e-`EZԋ "^=O5x G d\S#qvHUM1-Cgy̩I$͔8/ ֩(I1-0=Y:mw%&ړ-=>ro+f$+ThVƈl} j(=`ǓV欿UDD2:_JoZ}cJ&0ꯓ2zIG%(yuAgQ7zyaMalِ&[7>1jSb ]x}f"Z a oU(_}ƹa)v^7l^wB#W92QQ ɡ0klud(Q/Or B E#p6gq ˧T!>8.)у_e/VD }9: +ש:p~nu {&z]kG 3g'PPe9ϬeUc+nWHX}~{ITiX~LHx<#$HЖ=$ ܱ ȪvPVuI:8j#u=9\A tKhi֬p#mӐU(\e1!l QD(rok|_)Z ͂Lh4oYsK?`H2 e:Bj M*#TD,U) ^QV4AQ!I sfd$Xf  5Dd |]?Daji8> 1gO%m<9󭴦xV˝ࢌUFrЩ+^@kFV,xe<ˋ1/V-rt~:uF+5 mi){AǐI@YMD7L24! ])p{-EKT"3+CKn{z7RWs/~bc% .f Xy;BBg)q1KP^!^9mxȫ`0b˶+` *m:ܽ (a> 29\8YX t4tS;Iێ M'^Vp5o uB KYl%R(Ěz2SG5{䴊d.8&-ni}ms$ǨoaXuTY#D^^5 &q^s$㚱T6d >yJ,7 讒eC焦#9զ:+ݞ"{?$\ wH,|~jȖfTg]r@I4HVBΛ^ORu"| `GE6->.VJJJ[x1:71YUYosl`T87AZ$ WgITB1o %Vdd}PI)L^O_T݃KXɎ/`vv{!D (sRh/GJæfijȚ3 -2 9ka{3msЪQ zK ^rt׎'KJtiԗ飳YEW$C@i沚{N# (|,QoXX[]@.A}F$j N!_Oez+a"[ `.@&JppDkId'>Q\JX |rTJiU@k{U_KKcSw^^(ܔ8S N] oPEl)nj&$x+ݏ`8(Ꙟ]6it4a٨; yHApV ?gהr|6&ώz V4@EQ٩ǁ\+ܪgsɨEcS͝IGYf2ӏ|㓷,73 CS # 28-an\~$Rǁ26J {e˞,Ȕ5(0u~"!lt>9e0}yrTfXA<9;I0sZD*bJ W RwaV֛ĄdY*Dކ$9٠p͈.i.8LR^,uOk n\:njln݊l`&"Lz爧 pL8Ѷ@( YϜ3qw*Z 7B6> ?]BTO8?8-LutR-{YOy/'QrxÅULU_D]pW:Di-f<}4-cESf#ɤXp襺Wz'-XG\LVu#wx2T<9(TϙSJ ωK{#}5bB0WIP_#NGJC8J#+Zޛ"$0;ӊSO94Yf}†AMVmlrX֪,dQ ͛ݵgM_\1 1ܸ[#Qј65znMX9/OV̬} Sox=+%#AEjR]B&l2hfDŰzIYg(OCYsuQ٨cJaL&LMFwPtH".4w6Ax6-BS•f\اBՙk4cќ?!&xFH\+ [ݹMkQ [9YtrZ'[:.D6z|G=1=}Ҍp5Kd9f壝rs6l"YmHI qu+3WY17KT5-,`Ï7^:4TWQ+:7B7֎[q)Ʉq2ʦy"7IGPWֹBK" <_!c,ChO2\Y d4$Ⱥ|\ãoV& sٲ=M^cz?:F tDžÑ"^+6s}W=V9$% (9: \5}<#-JeHYC `O{30zHϕ\]p[kteZ MIZr݂ĸ<̱<)#VH(7A=.l m\9LtV}{i~ QcS1KC&E c͍'URe``k7qzQ i~LmK7|; m^b*@\,fCb"wRtT|BZ4eI5ugg*6" # ۘl&F O?|9)Y|{2NYG#+88B)#!%g5IGALx_h`1}9NC<5yT>=+։ V,`P }7v4K,N%:U .Q2Bş1Mg%9zlP,3̯v" 9Rg Y}LR0!Uyo٣c%(d{!ӾV!uJ0n^b$1w*QӒ[ƴiD _j6Uhbx /$la.j/^!"d6x,'4HsRetUF8>0qdW@,H,2@22O(SVnd,'EC'7 3F<2%]VO:~$_x$%Lfc4扲&<#<˿x"RD'khQu5ja$08חm\/oG?ѦjяiJVOl\&<;]W_LM]9  0f4%) vK~>-8nQ|/2tg^ p2ʥ0mhft@I :(rFbtZ$d@  >bh5?u7W~1 8|x SjY|SjuA(KmcghUFH6JV[Ji 3▟1d18[ <#sݭb}E>;q$Cߌw~'n}u1"hҽ ȳԣA0mhvR fS]905%X ;ōBb 3h;E> [MzX.3v($U+Yq l[ňsc D iOQCjg2,ɹlnIEeyrJf,9FaaC.s48J ;ۊ"]@ژkqS r{VQSB He?:L3WszuȣuT,urViHfQ.IhkҮ{:& a%9xjVnEwcam GX)W S\, =DW4(PKI,ρo<Mbu$PhvNI,KKȧ>cInFy@X+(ʃ t[llϋC42ŷ| Y@*M+2 ?jK.YLpt(M}( 3V[JJ-f@q#KIؐ)83FTqCxx:>&ÎB@ҟ#Aq+#FxɄ[_ԃefg)45bf na+XJK q-ctvRjo<- Cg/"缉ԙ$A_ᅵ'Ъ0o|3B: تLP!!N~㋝7`:?Ag2E黆<|86()$#D o!7#K:!J L rQmbs=ܵj +jj2#aJ%\C q>qLS#LtjGLSw?V^(ыZdX6ؙ3ܵvu a_MBU;j5_ءOa;+Əf§N"LM[\s^p:Vi $dCQb4dܣw]5G3b &KMO m*qcKJ`l1ԆFqhJ[5iDQ"ӛrvT0MZw]m5r-s@2|Y }9EbAau.0l >{-,AQ&4V-::y4b69Pq'X).V27%AʁnE(Ш[DWIͣV!`T{GIiرCh{̸]Cc#))q_oNJr|Pv8̑s0G%J+|aBSG=_sGHśax(B<&Z⭤Ô0_;t n'f?ALNꚧ^,?a.U=8j~{[ZkKH2dbwɾړ-,X8 UPefru<"n>e2ťz[(Y-K5UgLS\B$gٞ?"E!]D-6ld g6V~{k vBmٕe*SJAl%tK ݨ,n*T\З&.^p[ F\r(JAS:,@EA6iZ&z)2<'T.D{~j^g?Jh(br Uʵ1W.d(`gsx~elaaνWGrW2L*s0HcA]M" LYaԻu &)r42״NIE]8BJ2o˯a>-+oI.hh17Æl]^IFIP adD@-hd79rHt%j_FF%a*QaNpu(k6,ݭذ@~R0hTϿLro̩p"ļ.m?㒪l-\_S %/M6 ȃFB,v)Q=Q #U$T~[% 7͑1u74b4!) 0aW(5NN%ĩ n+,V̋pt L+6Tv=ٺ[}PyCsEA_!w] Z$ĩ@qxfsBbqobp)A+J42 'zǏnB 㭻DK;  cMJ^eqL|cu^\f'8=dYFknc]fPhnM"?j'pHdS bs|Tql 7q3 5'DIqUo usp7e˼V&kvqZ"pW0q w<3] AxvR xzL Lmh`@B7CJe[nٕoi#t@ي??̃C&R_'Я.O=4B_=0ϭбvlJ1ښr`/ѻ2*=( "]D,"8AW H0K֌u^ᱩ…k%p*a3yhOr_n2"U)blz/)g&ݲr\.H*^dbJYyT&;k ˗δ'3GmsJG_v?u#bf(b0' SyySz ɡ֟ELYCk%$c7k ӭթ2`;RUHfAnĄפ{ tRq6Qj{EL䌒^*~v64!AFׇ":ojY1ݳ_&<(+UK wA/:mh!(dauOZ"SIr\~"_y^(/SݶSs`Yl|CB/=dw onif`P;}K'b^`#^KCe>oLD.dvj v˿K=t|]6Oջ|NGwZUG:-H1=}U`f9`]2o8$#AM8j6ܗhQ\A'< [|>9] ` ~\4i2 RƄ|ثKUAmvP'mX) >6¢܃'צf}0 o7a}A1Ꮰ]_ދ;|gIUS҇ k5W%֩ӟ Is1_XBzt?%Kn@F?˪ЬZ:Z',QBʹ9NsΜ4S *BkZUb|l2!LEZ|Y6ńu& M+f#G-IϱF(v)!j*/@v(~hׯ.\a_M{zE2U Mruo+N1z$*^.7u E\?|CH[3~ZSnļ9Wꛋw[ш$4[K.޻Zfv4^a@N#삸WR!UhPFGa1h!9֤kf?#-`%.|HJ*g6UyF>V aLC!Q pht {.uG~q8緺Myt .O\~ZH! a3ѧ̉Qy+aE;+F{RNj 8&ҚFYq֛4!МG) V'-x'RmK 5x VƇiв5HrKNPuJ<9*B%9:6%F 6&[@.85 o87* 7"jXkuȆs`Қ b}Mv>hd>oA1ԲMήǪPъrkeR84trzQ(\pL,ϴoçZE)WN>%R>B+z@@5t!"Vge _Q8WKv*th:B?b]ޫ-/>@/:Ջ ?Y{/LU#- ( cca9Ž"xa2214s&]+ 3OT-zlKe/ݖf3̈́0~7 | {Aiޏ&DdLGPg^>T9 !SG'}`t4j{A*^B:K'))&8ju`Fȹ[u@^ߖ~RWru/qDdN ,KI]Li!&hIVN)1B)y#;]7uǯBda5PeV5,i TMUSEԋ1 v#YcW{F NU Njo~$S5nο!Cnd+)o M:x2ֲ3wE ؋\2zڄH;ZƁSd pw/ kL8l¶v&X7 w^ lX57 {ir֣e$Ŏ MOH̍H~ 1`-6c24%8P_1Ј~s ;ԊdS$6{5ӡ8Xm6Yt5a#KzL-xhd\ɧ(U8\Tל3÷.dn`c$ɓ^ 0YKg> \!+\BN:'cncGj? V /M;6-t.ܬ]_|8G 9[%  -0:cQ!~.CtW>7X~h*h>/'xeK: l7|k((Ҫs04p&Q:HBl1"   e%*_%U 0Ol3$HϾ}P!Vj:!.9!Bn/@{5ܗ[5,&"^*6+OhBniOMJ IӋW٠#n׶&o.A.ޤtP.pJdrh xO;(酷LgΣKڲ`0p1tATz6jOiAĤ`rbsv-˩K|GyǂME.҅?"³$MRCȔnF"Y1]w==ϒ ۽7͙B >vQ=A?ib@rA0GR +&*ȣm8xMiX5T-پހTڷQ.{|s_1S>y3R r&kGh~`K?25 ePs7Ɔzkq6W^lW'v,1o3ڍtg: 0RtJ:*c r3 ^?C:870sA᝺Fs&#BX_o"qN@W%ֿÿMFϡ֘Z?2 ۇ%AinZ2fִQiau^ub۠'JÄ:i%Dx6O(mܠ!r0Y5&e.!Єa@`G^p3u7!gxHTeKoΩ CcmOF83-XηdmؚD^#tlV$8(S,"\W[0]cmC6zOPjDk9< CJS^ATtY&5IJA[7i&>@Gߟxv]1j7ۖ(jNKϽPxO/1oʯ?_!X1{P1Pme.:;>6&ƧA+#1+M_!}%+U"&E#}Sd _K5U N=5/0b(ueN OXv<:hX/)&c̴qQ4]գ1W:4'gcOP)bGT8+-6TQ{A|SlMm]?<;hea %TkE3&΂݋֖m H;P3%D-fL7}/[MNj7ZJ%Eob$sg 9]BWzIYFA'! %^CʸL&[Y(i@xVϠh3iIr YQ_N_rS7N60:|o  yΕqT{X".xaDGگiĖםU17wd;,$ė=@ʞxgoSxI'51=ԡFH ,]uSKz|;3xE(Bן=\“tG7a#3D (TPVg9Y/lQ~zDVX߅BbÍJ*;Ww!ijcHy#rkH ]&~8Ή$pV4qfI0-mgFZD3ڧ$j "@r}䣟&n81Jr>n[?9Dk,/:K'Ѷ? 278w`s9]vw,V[ۅcۣX UrLQ0ER/S#ر Os)QWxT'k\\[;01^xZV}l&crDzbL!5%}Uˆ' r#1ˢzy?yc)=UcNR\ڹjyOE4$ 9~}tb xoPl+]=F=_;`uՄˌg(T%]^lgf\klhB/@i%0K؍`qd(&qŒNP'A%{j)H7 7sGu_/GgCG'OV!bhX~4bUzB8 C_/$)dcJ>@*-PVV\=~XRCF L${rX8{*0T1/O\1TLZ t!ZY~<ya적9NA'(Ӹ7G EW9S1ӤNjp62l $/|ַg^wlir*!cv5N_-PfL?[)oֱIQyœӮwөSY'DQ ;Z6JJwZ]=N5Y8{65ޥB`%3C jq W\X︅LU٬S>XXQʭ(2hE'AݪEF'w7[A֨͜¡;\Xq[M?7.Jdn&%-WҨ~l^WT`WV'ؘݚ{*Szea?Wrt=ә,u\qe%q+r+2b9$C0pHSqև3蜅CrL,- 1eLƟՋ\uh-JPBõ%8D$n#އc3IV.&u~_)umߕ2=3>W3>W< l6Qz,&zaXRG2ƈ[BpI#ݟ oȱ݃DQGh.8vKSWOݪ5uÍr̂ˬXk|qy{,UY P66R[ $£ Cp=0F410[<^bRUਙcZmhTrZz#y'a^ sL%:_'׌!m@,)kt"OHXgXTLyve]s)RO,l ;9Kը/Aa4!B`R$AX7Qu@2xEMPoBmQN Z@[>P37&abZ8jJ 4NT#y\y B<[qTS7~(?7[R9װ6jF]8&`bA*g5nK]p*=_&2uƝ%^ ((!e&%d)[$nnKJG[tu #MFyٶ.:*Ib@:nayD5t=Z> ǓRUn7wq GjMr*h5`pK1%Mlf8xz!y>MfiƆL*.v96ꨯF *) LÐS1F~,Oԭo#IzܨLg~c&!xЦJ  S KOQRa&`<hn08)tI+?A@^}+ƪ>6k.bv0΢yAs;b`n2Ϫ\82`Ϧ(! -: x4K,17dsgt妌0-lt?He]e1mE\¸/VPU 'b@dRTܝvh3E[e$;mW;?q]vxCO'fZ/ÿH()1*7f"*eEِ6ȓQ >)A$O63I2=o52(7/N2 L3I7V@R 9 -P^Qy<k~]V5D܊R aIAx]8*=6g {`pgMW׽r%~2?Cmʖj Q7RyZ11&$uGw'1 CV-yOQay^&usI w|o~@|R^Ga-H;Zae>R&U)ŻLfteiyn˫ ԗ$i)kIWBWĝ%B`⼀hfdd'³"UΓJ\@%ywt,8TUC3e;| *gi.K |f6A 7O>a5LJv};KA̅oB~ɟ4R7@qa-%poplrWCyK'g(>W)ڎHܦ5^^b^t$^aejKk.b΃!L] `SL`~Z S~]F炍}# Fc(n{AUZ%zKzr|" .Q[#± Ma'N5f֙3(E E [s݃\sHXlϹK= [e'6_?40DӆjT1"&.F5ٚB#@&0Ϯ,X?@'\& mz/[N%9ڵĬĖpCgAP[Z}Y? בn,LT@MrqYPb)!ӐUe~Zlg6߮Jlw#{+}+n 6hWoH,1V7}| ꔑ|,G5P7͋$8tPg98qehx&S]uLܞOA~{D;)jd:[Z _۫ð I^"rVg JѠ4_1F#jBafbDbˇf݊ZO1Dsq(6İ妋mUufVz6D?Yd3/p*>旈yIf0+\6'aJ _Zԗz =08ZO pX>oV~z1dOzu~?#gQcUV-;?beJQۡϨhLb0Fp6CܠD(YX~C*/!zل^:,U)<{;OYc}r: dRX4=u^m\oh0@mI샘Q?ADUhyPpyhNҿpWb`ap< KZ KL$o'ǡ+Z\Ck3%l&W1'=".E.~HӐPe92~ݗ_/!R^%!CH(¯0jQdfQ>,<:m(g0h;f7a՚m#@z^Tv7,;KcScrؓYU &Cj-Rijօi32.E ]FGʸ;OR§pczb{sbR͸P3Ü)$=Cg.9l|f۾_"o0:c—!_ Y\ 2OQR)6Srp pX3?X^'3z9եeSȈ\Xq ^%?(nHI v(E*nq~~GuLy~ȁ"˛GO$]Qnn{~*3qX(g: چ%B^oMIU%p]@} )n 6!cc ҖQz[;sN)TB]^?9!Ks<8-r`?JT B=w+x(a떖z83Ƌ e/O?a- $|\Xs̕=ac߲HJaµĥy˨= 6Uuʤa#-?`e>|-ǎ?BЅ6t?TYDRȠ}|<`%ew0}Bqvmy) -laAd΀R&M8Ԏ hMxCM˘?gbQ`5D^'9IӓçksV{[T4N'@Iޡ1u/WKW|1%C[4Tr{goܮN0ְRe\n&x0AzZajb\r}\ݫW~{[ul>JbS|VӀt) ǩ}HHcZicWHcj,ý.F*YevF^`Юc:vZGx /1`ְ.hǸ&bIcc.iHeX_.숞ah*/2ՇآE!+e3sW+/ompue'E\VPҠ?H~^ *|´-n(vOrkZ1x$E=CdW!K ;r0<~,S*Έ[;k2`dz^M;.o@ߠ./$Fم+'%U"B9 ?&S@,:e$1`̘.Y.lL6J=@qDff~L%PxgJ:amމص#P9K8 7wQΜK層Ҍ8EUGe&^΁iTTbm).'/qL< e-<rGMW>2&sA>8)$[uɞb &l{VcMɡZ7ӊV.\Q2&5FÑ<$\!ɜkn0#9"zyOvloU7z$ʼnkӿPʉ4*(\b=P8򼂄/õ _564{Y<Ք{C&QmsIװk"^&/ ⻽˴)bGwsQV$s#ofup١;0/ؗI?=SOS,jKu4$$!(PhVCͲe5׹vrP?e☛/˾ӂZV=? a;?h~A[cM/[x4aey]WNI&Kqb[B`Sؼ4 w yUF^]ܣK,Ym!t|tj&+@Z+l$Y͙ STjo$΀#aJm^4Ne74!>h#&-_D~LׯD` "w\{3^9y*|,JEƼ֎|[P4qOۉg I" Rk0};M +!|-*4RO:xp^@ OIɶzi -THd| }EU@`\o]?f5P_S̳H0w].wxŐ]j%Z`1ފ>Vپ)6K H^KVO@M^UqW~/ 6@\^3wH ŵ)_#6տ~yD=_l RmK=wwoL˜yG>fXwz^[Z:l-3H) gW'sk VpFJ}&8'-9к K&M5a;$V>i&g2TDQjHNl+'1NYˤfdE $"h2=m ms'="ox p9su5=&͵MLLЮל]Y<#Qwg߉W*&Wg4/2Uߒ]f|#Q&?Δ_C#󓩡#Ѱ5g\fЎiCco{~|ǵ_Jk}1můTn>0nl)ূ}(Y41˶l`E'ڙ8xO҇88DLPИsO9( ;2@q0®1掴vs kZ!Jί=UpLkoN[!i$^\wSʷibA)`KHL>טB'g6ڬ{US؍E~73\gЦ"c3>: G@BoͼbQ^_8MvAw^IS8XFB't.myT~bdZx?}ԩ@%܏Ql|a2" dc0|Pg;B3? Kh^e9Q,>:&ʉ`0}l|̥Y@Sо39n-]]#^|atXzJ)7h#{JORb8,Rcu2/#y*O9Q"DSa8;Y~4v 0 Y{ 1@ =kp1(5iX3m')(q]:_WƯA͚gTZZ/% AaQ4ֿщB"m1.'Ȇ8&W4x 20BhUgu,W҂öJ(8?o34l5otOiRޏ>' kyIF2UEY)PH\ v,e=9}M"+S/%.Kv9H|E&W5#WDC[fJ 2vƣf$!ynPmNBMah^"GG񶪾=Jܾ UL6a'|F8R)UN9H=ׂ }BS< n> 178xs0Mw@r ,mZqeQA0ǧ# 8ru]e\;ksdGND_JIXҁ#ſ_>Tr)Y!?OU% N3PށތRIZi6+!.zſ atZfBeɄZʽ3PˆԹq^@t'ڡ<Q[Sfb۳~J+`rUP*C{KjRR:/ӵ7o%Ƣ8T 2J BIE'?H\˨Yi1*EzSo4惾Y#~'yZ,ɦ_'-0X4N[ĝd\Bda>96HW ig^uHNNnu$QƸb-!gvrҊz].g4r>_X#P`̯UI)H> 1qAܟWR{U})"gm.A4  s>_#1o``n)`V+š m`I'>+j*G eQ03q{0AStvk}^ #@WbV|Sq[є_/91XOE\ubH:W_ƴ&a@}t<Xٞ5kh //<@]|ndeᦺUCnfs-v@񰮣 ܺdp8TqV>2'rN)u?C7!Qݵzs2eWf_XkyXeܩ8ފpDKQ5 {{lQ߷ZpYgN2'M?|XnƦ1`0FǶy(0f2 w~EwG̲(ا-\]$k+'DR [z8c=.xY4ZZ{fD?.(Q/1}.5?T1 -YhBۯ> Q]"rӇWZl\13;0`)eAD]@}ZCɲC؃EFA,I*E5YB E҅&8+syQx{I.2;)}ް1g\;LS] 7&bWL'^^o#0{;@ٗJUw0MaoQ HLPf>< !rz/*i{[hW Qe;c%}~f U*`X8;A,O o8鄆f;K_t>af=jJJOGe2=lIZA?7sT/_M6R+fo,JRZc Dn''"r;5S ? Aa ug!UYMԩ(u~:ʵNe0"cU'\KگŜ}4b|Ŧ'<cFbl[N| mAף# 6., "{Uý_2[TWefmyz =Chߤ㐛ѩ&u*zf#,n/*v}UYl2A>@]1hS^Q W(jQr*hp*|&6/ο {BY-YM9#}I!Lvpf͞qt2|'n8[7yg\k\ș=R!y׬Q Wb Oу#)9OJWt2Aaoŏgz̴ ؘ{%fTDIHI<^[#0ka.;IiXp({5+~]'js] '?{r>Z%9;|DyOPxQP!]񅖌*+aa 9^- O )ޤʾnŠ-8vOvz?;Vܑez5*UT6U~0X[L p Y݅<(ʰQ: Jm7 ք܁s)1OdEo N<.֒YW)Ғeq7ZeA =StYѥvn}zIbl* 9Msjc`{ K j:ve(TÈ r[̶@k hjt"RJWI t rt R' L ^4&_aeoʦ#<&fɇC[#R]+g=$߭"r\۞'J޵gMBx"۱ЉYUq EjYOIe@]n(u,,IXGfh/kSB,P++x,Ϧb[a1i_ij3aת+Ӵi5 Cʍ`P"TxM\jU 'ݘ/K|S_~Sh1[d8˪Ɣ=4Qwr JZĭdpJ8D:PuGGCsBp$mRG{f7az@WL$XƜbǠ4^FFPDXk+wKZ%`N6{ٚ kӮ@+5n`{._dZu*̠IO VBOߏ[juGf̅##m9fCM?u:~OgfAd;WʒSPh07*x³+a\)e"Z?dfh&K􈸲|cπMY]3¢ #R-;GASűR'tsxUw$!"3&4ߠdL"J$hCid6Ӎizv|ґvMz12䣬ջ2(ͦdw2Ԉ ~he4̐t/IͭO4ǐ mxo_;a B&@  @Ѩݭ |̱*Y}cU зXI3 XIe7Y7[,;!"|nTrMk6n4/gV̘5"ect(]{`am?xB_~K.Cw_Jn)zVɰ}tYfvc9Y֟{B_E,AD͖wY\>>L2tfNױl:_H/w+()[w4V/  L:-"'7ʙSR'iD"ͦ KZxG)v1@)!B#27={ wHI`2+53n7ypɮD4? V2~J zBCZ)7!~:7^Cs62ZBhΰ:eA@% h! wD펠joRDFxSbUI(N-tcʭnRR7pAbDC"" >g]8vgͳ:俬"T DRNjqo%i#:K *)@eju+y$I!).Y]!HVuqI b<(x(?F?kJ=*X(j&gy(rO*[ &k]Uѥxfy@6̿Mn ڧJE3,5?1A͚" PFݵBHdbL]j9#h"SH,ȤA~ u#)`kmS˜\t}nB+Ǒg (B.E xfk*bz'}cW@T8{}0䮳Rs7pb~:jl\kD&ߏj'Q geZ~dm4\mZ%z̾`"?[DMT'_ĭ]a0@=±(*1))h*D$72 LXIU1&YݖQ3aN6H){Ϗt{Gjr[!iYDq̪ *L9Q5yKX|*TTz.~\8!kj}}k}C|#<-RzI4u}G'*ٿV!}I u#OD>خDL@W4V.*GQ́f.fj9 ̲.US| degG 7!/O`AџKTJ,Qz[k qƐ<ΖPBik*04Rraa$d^ȗA]=L4LjQ,%Fȇ^zCLae\ST--3HvCBߚ},eqwlV7)7ReW8*)Lcn_/0Gfjk˅o*^Y/Rg#6QH}}]UDN.ާ_.l4;L ؕ3ŻL2MVٸg?^ԓ!@Y?![`~^%"=[BnP~ S׬a0>l@mb:#K ci>,k"?N C3`_xj(#؂1 0 CZ? Yjo>ӵuD1 z&Ib=Sf%Jn -(07sybENqܔj&EL6lԚ }i;mHN{O>$=V4ǜPXlCQCA# ㄰,Vðbv<LJs֋eƏt:;+{B&EOZ,/|en&(Ph*M8 .6NDG+k>rΕh݀x̭?+ ʍ0eZ;?猜#-U=x "Dj?nv!i.fBby `HJ;3u`U(DP&QDw eEeqC2ygx>D51U:)Et&DM@RAnaJ1HjהDե71IU?w^NGR"Y$iaӮ/=$+i'C 8M >kc^Nb1ypL`k]R~:^U.ˌZUVuQ\ͮ %VZ9 !]FѺaSѕ/h{(c a%Ή@ }AUY&Bs*F2F[(&)0ր~ܒ^dY-O2# "G3=6$r H@?!q\n75 ̾{Ω2 E q1ϸGUElщn<ŝ_^梂ASɢ ]ؓz H@_E'ԗ]kJ9XLi\Y}A^{ qM p0ea g5J%[5R/u-NQ(g;Eeϧc&i"fh%UxJa`6T6 4pv"6 ɦM\H&Ka)*9pbI+r< $\XZZšUK}Z|}U,r8(M o, Z[2c*gF4@_|޶k\㼰` 5[o _ߕ)V [}'lM: 6F:$>'V&1ȓLGm#/ 7͓GpFH:4 F:D{(+|aP4n5԰"o|'YH|d=B7.p exwﳫVNKnMU~ͧM mQB7OO*'}U' 4أ)#3aslg hb|%*c7YT?2mX%/hS'".c+3 +>}^Z%ըɁ Pqr8XE6<[kqیvWyݒQ<[\p`խc-l`UMidHVrAA>+]5xreRң.0NNl>Me!?5O @ȭ ys'!"1l }u7%z57/AN0Vs>C?cRɧ 1_znAoR m,ţˆ\*1zdS`x4w_6^, P߉ZZOq9m#T7O .?C( 7vУ➵&F+O="ŏqC4}fX~-1"M`,hjaT20otda6Ftz9Z7슷r =I ʕfr`O.h6R?*Z&I+ߝZ?;*d֭@-zV9L 1XA$R^]J7T9ˆ5SG'{F3-6S7W=vw}L.}mv9!xP~P2#[Apz=MN5 AW}Lvkέ>Ƞ6Eq"ʪW.FKFΡ_!Kp"$y e5 P ݚ]EMrVowo!H黩~ndjc/#GבCMs[B;)eRE4g`=8r,.g,݋C1ra刏n\%t{)XPL seA` #<3Se`/*r5Tqq\J ֛44'tAcHf]ufZꊩoAs彩9l`\.$wu(G|t[i 1/˲jaMI=avz",׊N~'V 'iMcq4xGHaݫe0>V7ų熗źJ3} 9ܢ }P)H2`=3'P NjnS \]|܉-ӟ$T+ B+|6|ZL8<MmcdVY\)y%_I -~CmDA( JNcTܷ2Dn_l9f8R=ll#S:Uf t'=|) #4*aG*z+º \LZ;ON9!sFS_2mRhX6^]S:Y۲w8Lſۥ)n.)yͫ"Zҗv?ר~U#eTKu3@qsF!\ش9 m[@xUyLZFn!?Թg`|˳vб?X_]mk7$ZX>w~""LæRvdluM4' 3nժ`@\jz,uz* G W%q7^D/ r/ ߦKhihl,? 'H26~ŞZOJ%׉Mt!vѤe(4=-bSp%iw}s;R [)GCbh#ܧ &ڻ?~D6 pа[ŝJ8I9IhhHĠN99R(rb_F~Sm] 9Jo ސL-٘bLWJ LRCQa({MɌ3foLmPP3`v>18@@%KSu0ӑ0 jbˑa@~a!FG};M[)[*t N%L!Z(OAS/$4b;[)M'bۧ,ҏ.>QSv; ŝhZeYY X1Wn{6XW~B#yS M4\7_Ve(G}GޡcsWgr.xw O#v1 ^]Sw\f4ms܅< G0vWg>VF|7^rѡ^_Fu e+N"UVFeBv$qm/=xXTd0Ʋ7”ZX(4V/iV,B(YPoAx󒋅00[FL XCy <0YTb/Э3?PZ'P^#~ ?`Fc^j=(%0 8Y[:*xfDeLt|%JisP|/<;Yk7P׌1da~7!CFxL2·S#ȪĜ_j#ίSDQ_Ĭ_ saU%¨jpl܎DhćNV{(5HxdyXm;f 'X {loqݿIt@=659sԴJWMi.gK%4NCdwx콋udOj'| s/_xa>(ЃGOi&2y;4a,pC«Z f XDB!~c3!?nH^⡅=iتx3j)8lA5hdSA7>uehg(_}8hd?ܧv7D0.vYlE9[䝬Hvݪ9+__]$&I kӸ#f{)D2*|x)byqD ih%HuU=W|Ķemo4nh6~0^La =ƫaM^܂Z!]FeZU `Œê^\=.3c+J~!En7y,g "E\=r=oupsMʋ[ [{Oebj!ֿ3)Hy lMw7?w@̪iBZ]d0A|_z ؖY)ŭgK5 CZ|yqUc0*h*/:9Ya߮vI>edIhזpRePͩ+̔׏+Y]\j YU{qrߒҚ~e\ka 㝈}#0b%+;CYg葘7 "?o w^)O9b"mj *j>B:䜾fAč_ C<2Km[p ?3><|=" dE}z(RtSr^&2PFC?NP$E[6Hz86 ~@ROV! YJRt.#A}R(X`ˑJo é*krV _9)ؤs޹$SRc 1&̕m}F kR^6R )o* (_C}{0co_~cz:8 ^7 MQBS GxPmw!cr >i_T+w4#XEgZ IiȤwiiIWBqB ^t{BCQ(欴U8v//y4=4PqZ4.afE`X6<%泄wdAk.H7``J)Y{.*mù&HVC6#Sb;r)޼>V) Y, 12qMq'NFwoA^:{]<$u̼>'Ȏaz9#o%ShW\NV ;}˫[<1$iwx4T BK 4cNU1X*aW0cwI? f8.,DwK -le,x%BpkaGvm"ɸE> e~LBIQ]1NNHtSۯt iY1s}d,d>[2[V?QlyT2~` tiNMAcמk 1*!I%.@aŲ0LpM?:3-#xyD+ *G*:Y`7Ů N%vre9Xvk\85]a%$& ٰLh@r#VJ*Ώa.)I?0- ҀU9/l{rT_<_ YPg)[K1hahz,;vgz^o ?zUWBt1&GRĐ]"-vdE׏nu4 ~K!ؘ$H]H&=X{=2<-"zHp9=criEB :Za]b lU}́bap{g=CP'Ѷ>cJS5r5"mc3wxL&؃g#Kz [Bqn10  NQv{.8F֏|4ith?e^9ydt"/cdͅxXFӤMKD3Vfm)k׎YxEeEQ(e!nښ_Q u$y:v[-myƈCOu,Q.eۿ iv` YZn0^ Qޠ+49W۵-A$!yيp>X\>ʷ{zcG'ǒ-(O^?V8ANi _?)l N:N7{__? '?~ XpeEwYb$`<̡Kqb8oA(e̿Nbl)o ?}#e_fz ^r%1* U-/˲Y5S1G SYabpII?WSnN Ge6<@޷Ò;yf̖zwo>(%ZQW"\P)0dIC5Ҫ a^p໐Ǡ3TF[k';IV7> hK!h\;GãT\-'2N@!9I.x`\%8%E)ܖT4?ysJAz\K /a>;vhYe~\r  4E@z,{! t["i3rJ h{d n0:rZʸ/ͽ z HzVNF^- q E~/,ܠh&(:ǽf; Ksu)M+GMD-$ t(=GM*b3:Ijbu|dR0ћVviH,h# KWhp 3KL~hȷ>[2]䤘+ uQ;ѳ^s2zlCmYe;cJzX DD3=^e*h㳭,cw?hvJ4Sw݁>5^"mr۵K'k [d5HЅbXWBK,NrOݶGI=N+W[hK$GE)6ZfAt)gf]3')Ք!9X9d'I;edh7b OafIM+Dx87 !bʣ^pGmwSgK> ]f1ϦƫDREXN҈L ج{okMJ27Z] Fg4I/rk;tE=R_OEL'l3?ԃ)MAT]KG@e,,P藜u,Kj-Vs* 胖K,?,2l|!3f MʎuzBȟziWA08QJ˱tgY$2X Ҽm[Mm) /9*ZP.%V9lE37~eRx4_Qq֦k  3U]cķXW8'd/kbr8tK=[`<(5=~IKˋM͝F]r ,2mlɣT"Y9 f~kuYm4w|e| z L_;k_D vddNs"l~aR)7 =igNΆushK /]\ =RKt}l=1%SdRb'T jH,?`s_Fy\bkrMd1mR%M!>LAH.=/&/=Ԣ: Ƹ~Sy[0"f/gbl WJ6FE 5yjc,s1?Q\V$#5~.d& `hR)d^a"y5J{#'TGoiށ5~Zinubeǣgn=5[U%؍rzʼTvT.OغJW_ArHU:\J!:ۉb]/Ұь2!leI6 %]$ef 9xc҈J%hO"F]N8l32= w,:SKDULB\:\~m.1~ԫQI9,N^KWݽVK%ͬA^>4 kS< k6>~[ 31 w;%uh|)WG0r!ʛg O`gOM\Iӎ'S\Q3[,0|00$yfQ46RC~SO\} "&/w"1Wsl ,fDGQsHZ~05ж́x ) > Ԅ#}pXGh(E7sDDc80}I-#}H'pb+z7'gd!r\GI췡^{ZSAi;h~fk?3vbVn'YTbtK5ֹXԒ;=XoA:&\ev*HGh :$`![x\aE洟NG6,-{O`,[#؃f %)7$p*RWqɡ2عJN.2J>6U'ڦ=bh` fL!%Y_@FoddT-h{^).,(FԺWvBp?Khwot)rk*C@}|pJAvB;w0vLK~Hy+ *?dB^TO >._[8Y>x#V!USg/+- T"ŎtYvM>XFDҼ"I)OtD_edd{Ҷ9Ck-3.DsW,SJƃ܏I`A ˨ <\v+c ,`uSכ$J6jfIPYvXRm~pzVNb%m\V/]/]dY%t/!~YOЃf3T%G▙4hgO=~坠 & "c,}md@CzrAݠ0g]^g/u?ǻ+v=C ]9yTe^! ?Hs65^{1&'F4Eno u f:fE. ̻R>:ԕAvLܪUMd9H,>rPEs3:yO%zwQpPg~eXtL#bíIlQDs</̯L\;Vtj?AH$M=>Tehߴ(ڵRm1 #`8tT^2 T@*;ir2;!liqά|o-s[7󮔽7V4IPY2I`Au FPgƪbQv;$gξ8?h6zLe_B&[`R(_Z?8^qr?π/dURppa18W^M }C߳NJ+n@PVeT ˓AK`uKYɒĩ Y3 sN<5my;1ҏ2k jwdvZ䩆++"jN$ŕ3VDE'iK4F{_ykt6B+&]1pkkdLw !EyИfD@-Lg6JoeI5ދ3^ow3NNOb:-ҿ}d';ȶWNW }_/Sٵ0HҾshQ%B :# @O pfvR㙢9ܶZs([#bN'OO8pCI7p^MOmJʈ<^Fz>m-HXs *{~&di<jۯa[5~#\A$Iw<NB 0ZtNPicf)NX R}ތI}8٬Z>|Q)У?yԊ7E5im[=VH%U 5_!_քuv)T^zB/wΣſw4G^viG,ߞpqx8ẙn~0K 1V.>RVo}A׬['՞ @x=Zc@fc 28򷼷(P5T3g:g՞ϾȡBEkͤ9/@i~xS(6'g?6 >;/ܸ4:˶|O; ['@48YAΕY}iSb~ߛfzɹo $ZOޑzT8r96X o |y<6NU)Gi\#O}U71e'dշ8uv CmUbٮ H>Bîe_l2 q3Zbݔ5 r8@8f7/VzT> 8%WAtU.z!ڀnKJV Rݰd:!$\~`mV7._jG< :LS72p_arkۣ).!rCȱ8L;7V]jӱ%XRf|Q6rv.mfEi Upit7) Pr jX} zA§AADo Zԍ/(Ǧ1Di֫If;7IirQsd "W_RUQoLKυ'_VsX&"Y? ,Q~^ ۭW'Aљ#^ ;|0ZIj+|rtYo) qn*PHծ;TjyoԌ+U:([JnKݥC4 ty"\~@בNx"ݓ"T"r {dVLʹNA24hE5gݡ8 'o +4SE}p0m?,'oeIR"+ln ,'хZrVYب7rм HHMvtZBwCof?Z~pZkysfC~"miS1jDÈGZIjhG.u[{`V3 U xwPwL<|i1 l;K$A::{Gk|7BaC %ϑXH_•BPv,KW4 %&q)3,Ql(ڟn8hvIyy(L'w/_hAam iE 7 #Gnx<o:Wg~ɩ%#>acuk%&GOUJ.k{Լ|4ezSӀxx]OI`2R)P'fcG=!K&d݌eR gKM}P,}Bh!1\Z$2,5GT>Sٵs)$Wo yWp?m%%1Xw;(C&UD!覆RS̃I;PɑmLunūL9&@:)"jcB-_@;EQL^:qFꅪ>ZiE0*U\p` )[CiL!kvz;lȫץkfVsveN6gx"'W#`sޖ5Y*#ORrQo Xß!PV"|ɇ5n]vmUi3ʕ"R(fyHG<!&ߕcƤos] p^)ѣft4𖁃@>^ @$$ 67ND-zm-uGeo9{&3Ȕ;Մ 1 «Mx68hc鶚:{QjDed Sz3# a@V-&J\gbV!0%bQh|]q5I)bQ=p޼^9~wFa8"( ng;BPjΊMɻ׎&Ӕ)H\Ź.-W%^ZƩsEh¼̅WZ.c f <(fPgfsdmI"0хŒC0 ijcbq8&iʯ$8jaNW'E)}W ʼnv rV  zdZo{o9_Q8]\0$ϻ?((c F(C5kRQKC(Vs#l$xGfJX݃ߟm-K5=oҫz5n,uXcW]ɦZ>{}S?X'e?rd=4v?\ltDf;r1#M4?;.d%hYP%FK71X腦0 5ly<$*`/zE{3E^}FEkM~GˆvNe$ #a/$3 vΟ7s3iUjpmH<M4MOKȬ3C#'t+iXm/7b4d=^&o6UiF.kiybZ40%A YGs~D@˖4*!BoQS05Oyݢ娱`1XA.ރ;l.N[k&¡op ΢Rغ̧e^W!VpvDW MFR ?:9 "`X]+]]F\e-B Iwx`$ -uL\XEǤ#b QeLj}Å~]>("khӨwIwXXu;`؋6n[$N`ڃU ks{˭P:tp/-Rh4ɝ} KWN̚T+½>oXL[h0Vºƞ RYCJ8!L7!у|KnU 2byNߦ)B|v3 /S'I`(Fp/D/C$\W#xݧH1e44m@9H +|N$L9Ai瀪Sta"p41WuSӔItmRrSݓ0C=36I<cЂ4>ytM/yZxSQMN|s!f,!j*י(Co`9|nY x%|[Yߤ!*VZS8bҒ D #8l"e;Q;9#%jX͆=@+V+NWRv70fP9qP ,CT#<{e0i: ` WC#B[R^\ (ewo>ƭF#5)6 ә kDhOTjȟr_i;M-<[1i8ζ@"\4z! ˞O5R]T/.pY01;Ӛ!Z/gXb(?бVVGNnQO4.7uHCob886$D# vnBtqSY4a U=!m*>J^fE (fQKU4`Ǖdm%/R?sS Ey]JSÑmU"o|VN&JhzxiH!K;[)zaBZeH'^?#YTp(:+o >2% MJJ{7 " {MzXEWHǔ^IV|GƊT%?B5K&ɰe%֮G#AЮ w l7٪trUOȀ7uڞ:h/6}E[/hc {*b3k+1ph @2;t+h19 "j{i\n> $ljAP6+PْM /=-1-@"NUWC5hz:w&M9=%P:RRA 4y}?w0}E¸c^jz{MkgLC̓6D*&Oz$*bO16P[%蝪[OB5WVV!8 <\+^);xUn!4(Pj5q|^!~;\uw{:Jș8QÑWjz4N" ؚ"ˁr=2@z\*' F.(q?nOR3C]yF&IQ=2=)jS.@>KLJYO7+mtV}ȥBGKΌKT{ g/!_p?R[VK$O"Q%LV_ >;zR3pciԵ.YOg7k\`Yu8*5ZEܸ57f}4R\9`b{*Z㳄)Oʹgjg ԀlI]lb-RfF]Q1І`u>8LUH*;#PǥeR_3vl}ݻjf'ۆDP҅}6ŏہ$rQf>Z/{3 <Ι^rx:\w5@8Q鉭0w<QHG()Jb9trV6 #ai#QmDC#KF''l/bXV+<A hguR뫮IfuU4NYNw#:/~p9nvEb j2Bi 0z;X[o8Ck+#6&Cx+j?H תGkeŅ-gp̵wܘ59Xto)HMDm䊥hK?1 ?䖍H+C(g6yN ggP]՘Ӣ*O_=TؼZlNU濩ݶ> Py8اUrHOqnkQ19R- DkMvQH92F٫@C5FԟѪrQ&mͤ.kr'Zm7.6jI&Dty'Mu>n6o(7*:;ω]1GCQ %"숡X(/ǗQ)M'Hxkn=mb~<;3Y0h'Jͣ5O` ZI HXRˍ0yy8ԶXg:Vl|-݃' 4#?"3`p'=Rˢˁw0T}shLE,iswT&(zyް ?Q03/U,2\d\5|^ؖF1 0MuX(Sn:5oz d㜑[50r"B?HtqA ޷0HAb83zV#ZkNq v@+-oR@\ LF/U|cz`F+!]IpņrC`gF@?eƖgZ"HW;~E`gx8Syxь[h~beUpWA+?A1]4M[mFO2PM};׹.}Ii;M<&%Q>tO*yJB|͢:<?))0Gt{ jYX݂$xVeTXr8& |MI DvȗD6('^׆0>:iwrhoF|՞23y>@aeڤ;HPeNRg|"5Yڪu8/ _eb^]XMv+-SȤ'@؈A!s&+-9Q52(b+[l^22ar+\rTT8[2tO01F^l{(=|<@pvw;ax;Kq>R߸r9$k)o'Ư&ej.Az {|ɶXWјS`YobTi86мnD6|q]6O5E4A$ >}<dEAt=UniOMI8_9%eO+B~7 ТEuRO b#ilOWHz=94'7J{~R7t3~lD  WKM׾0›'o; >*4/?wp.(:I{; )b1]rn#i%?S\wfk$DFeqyJ)^Q՝] ExcM u:()K59w"7\;,LiR@FxU{|ЂlphӭLIZɢQq\|u?)&(*ڨh^358gcEAqj\]UQPK&q0?i{N Y)=cWCjI5kH5>>WaIbL^0YꈾS-߱&V*9Hfk;7sP{k3u{ϲ HG+}Ba}Wvl|ڮgFEZBQ]R#-*u'?GFk~>,3W;0- m'e#`\5c@B }d_!3GAtL42*hIȖחdoaatCވy/ٴǽOkL;xo0H#9gf20l r{msS`h=e.4,;3'Q[뾕~lMLZ!Ν"0YNmiWYlfSϤh sєₒ MOxqbt?bxQOCW(]\P^6oD;۾n|eFz&I&v)2!ڎ<+9y0-/K; s(8y?SI,O*f上_W;-R}I@0Q1#hEDK""&XR(/Z%ŗ퇎yra7{2yӄ.@u'zXI=Cj~)PF0gRE-800{h{O{땏u0;: Db:\;Hh݁}ڋ-uz8 [#m_.xf͢iTu  GQ `4*`tD4Y,Df~x}Y(XƱt)+9NQ1XxY^Bf0Ҝr5# $ss 3m;(ʃE. _2",QNUf%dvϴVv+[[HtSXO7hŤE9ȱes9uCYRلj'|2`9oȼТlՀved $Q3}"0+1N OZE~.ɫ^Fjoˉe"Uc[m71Ըv|?-c,(0 ڕ84+0CM?BS|pEsNQM;T")]T}u^g=AvWt@= =wI /CL(;=$>qzB.~|`#E3'D& dWaIƷ?>En{}#͟% ZUZ<+ӛxUL=Uz4./&q¡\W+ sYwR 7D($(wֺc>'ӵ$1ȱ'gaz1#[Z,H3=Sqw¶튤tvo<l\σ юne}GK.*~-; 9M5FY:F$5韲ܯC0yIj9J$oa3"gK۪ *l cEI@@$!QmtO)yy$λ$}Z8BQ#G}vk`e?5Yn0$ݨjQok:|#LT/ϪI;Z8ۈL :%AC#ûD?w~sړ*^v;F^N8qS ?yͮ*niˡ\ e9J9Ų2O3Wyy/@ iB*D܋eww9zDk-o3> hR[ y =(W l?zTL)(WTTwSmcv kR)քQ<INa lt؈ +hWST>L f|#D~י!\E,)=C=6_y]#f^q~^EVOLēgqJVn[EvUq{CoVD1/ V&LI3`PأZmQmcCd.D(>#WimMPF@C$8Ip;r1}{`@MiIV a9.RRՓN6Cjo+H p ƸNiht.2:LoԈWgЀ_f3y/V0wP?SBŤuIbĥƼLbŗ$ QTǛĎͩ S_`PG κ vQ}=i85}k'`R3zH㷀d'3FCPf՜M$_kIۗ1ǠyL50Gxl>:ܪTPPͱgK}Ɨ/9pZ3N?Q% +RMt1`} cTZx&//: BXWTЏx\Mmxs!!dd(7lQP5 Iߢ@{9IGup#1.w#"hn* v@46%Z0ϫIIVg4dvM`^}v3ll޻ms6`3{GUa.%ШQ fS`3~ٻ'ْxiћf9=g@ؓsz"#`^;`F"$oӣP15!x.ݑMY:ExD&'T2O,LdSH5Q0>CQi Ζ*Pehhj|J;L#A &NiFx* śϥk0t.C*A_\'>}(lAx[(ĐH qN`u8,̼5jYp g*w)nq` qִWCN庾@hSgKrN>0>>^#QtѪk2;Uc7Oid dV}uMCk4dyHWZmo7>J!B5#7e#迒D秨cI(ISMKB#,bmFdTI))pŤATM 8$Љ%!6ZSRLv%P̉//=k9.>:3i]I#6.s11 _33"CaʗuKL Sr֯`ڶ.ELl(uVSgCKsUv-]T$ZOBa];O9dIːKӃcVy+kn3#FH&JC( #&8=ZE,_7D"lP.?o_1@m8ԟT9nOO F2lGVru1-* CU+ t_Ĕ1lBO{1v9HUÌH h"v̳?ir56bp ˵p[ֲMp?JyX?XÂ`s\נH<H:)>H9H4&x΂߳s?:"xϦ[)/ASJ)g i^I"͛,)Fjx3Hfۊbl:Bک3hބnk,CЕ Hn`hg@nz0!K^ӯ}Lo"\}f>| X; ȳA1YP7>=+,$-UjOτc$ƥsҥ:^Zyo]pOʐ9ҭ=Kv$W΁cGTDQS7?C.ۺAFss!UԓVģ #CpߞZnT{%)P$Mhfv u  ñC0;L^8CynvV&zC'Gj&,,{-T}-g|3pG!*`h>3eE - :?ڳ;IY.`aϞvmA^ZPt3_%alw>baJ$IݙjꮐXF4fW4S/|F4mtۘ^Կ,'IXK" LVD ~4uԇ9V|S*$(G쮩UQpQ?c\&ѽ=RLf--|î\ r5 ,CYp sݪNἑ3ci+\]]}>OF2ǀ{ppa=di:OR41WA}jÚe;*15%K0ԇLi9*{oVT 倈 - t$Tǖ xfkH)kP`F_֍#XȆ,# EDʫuKTBqIg{7˗wյ'jZ-NxM4Bt2TJqXS0wT6c1kMǾqPdvm#l׊]D׮-AI/`ziND%dhne" %8g'~USd=9obx3Te! BxE+XY9:[1DsϻKlUSiTb'xphto .ಭ'TIjNm:!rǟeAmS`lS:xKF-ȤuNrB,'g}H e ;l.0En]}!}M$AQ)qFa6UY z+ן8 ^iNO%0g Ȏ]H-!$S@R]s$ñsEP*19.3Q#S!oBl}-s8]ءT..dDide<ф3r-*CtZF ;VtAޛGD7`s] ֻxb6ec;Yb 0pmVGn}XÄRm+ Ytm1(Ub VOUiuadj(jTajZWn),Gw0;d6Zuj?8%Pߚ;sgb;LĐӲ'쏛`IqQ>tF;vS<Ϛ}kZqKKցkU52H61+9$Z%g1LW\ J̿4O6+X 1*hHW`Cy bD1MuK4e/Rٛ";J(| +6X6vW=(+B%+'= "<(dw4"m"5mrr-L?x h5KѱfmkPMԕ/$.vM䥕u֦;9 \:=p-/]`b◟/T_BNΙZ_,Mm?q|7PP<4( Ր|t On"ub/}Κ#+v5w<iZYƁ"crj vv:?ZTztVa7|}֗ kٻc6u_ 2 ֺJmLSLK |3@`^mx.J?y,OQ4W(wyx|h #Q\G {.љ oF|~4x'6>H\ 9oA(d׆ZP(72Ǟȶxo0;O70ԑ=/! %:o-ϙwaR%0̼7.)"~d\ kIk)!̒ {~ D@g ++xKߔg*+qK; :XP P!Jא_EM$] )pz𓰠H^;s/*1 @8.3 '95ɍ 2g* 3O{i Um&7?X0B>~D'>fW1` BP<9ud'V&ЩY,yMoM 5)J72PڧX@g ?vfX+0c)8BI^.v1@a!~ZoU'Bw_6DB-`" N M]ylHZ0*=%TͽI~`2{ĖeR+$QZ!9T`+ ˆHho!"T/zr=f,-эuHI^I:*5215$OCLr,ay#\}(rCiO{Ck oQ* Ym3Bۢގ,]',|GlՌ; 3Ǹ@c1s^5,x{Q!vSwRޝjIt- GbOHi1ܵ4z[34!q6ς:W/U`,꯷Ny=߿A!.vZ !qg# 6V@B󖸢$C43e1t,R4X]?*anaTx!+(/T(roA!qmWwL(KW.50S1mRd. ^݄ȴ~zub΅+ $`9RԽ_x g?|WO$itGkya K8$N]3fw3Y>UZ+CNc o$\U- *nYRW\W)Bֆgt1`^BWI0;o^o /GWO%"yU.#r! v$w6][C|A2D?!|EV?k¨k{?ʼttĠwm81S=n隋tǓ=UNKw%v|YK1  @M>w^W{>%uhk yu[GCEJ#lJɔhAH5CQ#VR!^Y]Fp s+ ӥj QKTq~\g& ɑEWua7uUc8Uę~m$ۀsD:|Ȣud9beF@iJ&Õ*G-FW'M`BKq0qzNm(cuwv&Gtg)]?וѾ 0˜uu'qz6ri. /HyS4- qJxϬ@`@[$UEod)oD̷Y7P :-nGЧH_0?A|JoLR3Lt:%ڪо&&:YáْAL8V2^ocMlTihL-|'~D8% Ybۺ`ϚƚW@;Z%qCFAOm@FraeGh:Kߎm1%$V u:[8S'Ly~Ew6JC8pCX4ohW//oG^6ڢN٣Ve̶Y/&Y㇮l uOi97v3q7 2(@[lbMN8;mo>; o4Vڼ\҅=Ҧf3Ι[u*sΦ!=RnIPn7>Vjݳ,|s+ܬ1j:f7 Z[lk̭qM"V q;C Y.7UF2i-sɴ~*U6DiƫA%(V 'oƐٰL`sq- ׳rȟ5,Fdߝ0{D1gMRǼ Y Iٸ}{ vK8MU/~u 6eo96S]@wؕ\vڨJ~52/6_߫{ 7h=OhU"Si,U&TA3-%k pLB%ހ/u[ZmW#k*ӈv^&Y[)cr;\kVvVDS<=ߦ  ^g%h*14'-:Wbp2@o.'n"$*fvL}[ZX2 k {SK +̊)p .LXov h;c;3\/I#$HΤ@0”Q n?cl%.6ٸ![B[Z@rCgX#7]^r{[2;hfsv92"g&XqQ0ʷ0q!}teΖb ލgRb?M<¾m3am۹6; Z%Yi/JYXTw~q5Ji#:כFbˍUUB `E䪀j;\\lFY 5+qxG8nuT5׵}G;ĽK/mSV,G-QbK{EKHA%͝ZA`oO]!sZ^u\b ~ɯMj(8! u4 ^IAhi~s@!i.[{b$ XB )gOj.IZ$$V.iOxDȆ2Q/B̈G]]Ɯvf[d)q^\k* 5&tbPkZWxR A\ UK֋bU< 9'v6J6"}ʂw5sذ:=oX>~Ϭ̑<{l=ƒU覞3K_U>jdlooѨTl O 2mn< ܜ;IAu^7iaAKO]I,ďDwpu3|nάJQ rTd6Mn-iumoZFKi+(PpeNuil5!&!=zOB>d 4pk^C.M IQdkS@WPȡ{BJ4s!*Q2\Lq O!'oZj󼭁O5e&rT)gOXEƾ'Sb'{gI/R>6B>ѻNX˴q 7̂\Vv! nу KH˅^QԊ>tU,[ Ʌ֭NԬE@zpGLJg(=em m%bYiW|^JL4jE+|9AX,b\JHri@+l#7CƔlJeZ_ʮ |+' *Q%m7 D)D6m+O&߅//Oc8. !8 "]WOwoB fo Xָ#\prr~WZWm^IrkG #&@Wn.oe0BkH )Da5kIK?3_d. ySnDhNq@ޫ)Ilct%݆360 фٚR:0'3%ЫI`PeW!P28 e@@z̔צi c@~L\䏍.}~X9|dHtoZ󃉃*#-pRpV; FX5C%0a;,h8oo,KL;jfT'B.M0.W9^گ#9/5!R"$;316 M(Mn^Jw%giw LWelj1q#vr6U %uQ ƋCqmLw@_ {z )*ܛ56K&YOp,qk#?WsWG1)wj ~6A ^-8 9q#։c 3y/J+}pJ hC_ԕS{0#GZ'5L[_ʭM{VUЌQ_]`eX#wp7Hl%F 69ڄf'")}YLTj T}zVOyẨ9UV@ =bIAQKA5[W!!CEC{aTӕ͉ԣ^#޴=["ziKu-xHn-#Td?BI ~,e-.HNoHK|Z\# ҝKQJ-H–^aO:;qCP{pT㚫̛M +1*F8˚T)h0 =1Kk1I"oO$OrӀV|B?PqV Q.򘯋jf\,8ܑ=V{g{9']eGLvSɛa^9i#/U 7 ?"H/AmtoU;>Pp` epP %SE\oZu{Bz@: cI]czOEKރK/j,f[irfPrO0Uqr% %fߟ螈/R?D֫rh@S)t7!V:*jDZBjdzS=.DqehV6rvfڰ9ۥ[1X} S;ʙsp\,aJa 3K4HZfCJyI§vTuKT??H8;'1kj|,:ˋuAHtT75X!>+cjC|d']fmNJ4J|i="Nu;ZĨE8zXQȉܰf!¿srWHY剌D&W6@(Ngiv/^ji ltlZO,]`Td5 Z{<0ئ[fÑXGؘq˫S%ҴnH% HA4nm8!UUkW;8:h6+ ge,B64OTŮPz>Z=&R' t[a)RBQUW/;Q-?<]j-vU3fsi*%(z)(w LZ= pC5zȇdƯ rm-͏3m^C9HD |OH,ju0 dj z,q@O[K_7۾]=m 'ha `,2co_;e rDi3kgz̏N esXx_.PɘA'9&^'i[7Vb/&QEKgy C7/̀|w!L/Nu1t6)<1&$=t 's׊nSq#ݰG\px|7'z>ckN%:28EJ?=0&ÖE YxǠP3fҏa-ԫX#e4ܴPJ) tHy}ooMf6cIs&6 tWz)C )L-Cpe^pnP0nWw-)Tpk5iYFf{"c&I2V}r%Q96%:,ܶJ1finD!ù-g*]`\W-d(V8o;{&묧hɲc9J5F\6008#KK)(] CvlsZ umhs&%{<wxbMѸƒ?(=#c? L{3H:r[O'=oc'#9͑)/}>#eNi{2|C +rc&eA~*N30V]@6Lǀ$Q"#-,Ύ[_=U;gFI>ȳ)RM *`6H'd`>,.\.bUN'o>\h̽$_f2Z̲ٯ{rQі5!|YSj)CR ";I\_s6|Ķ.//Ѿ)%ϲp {bF{zYjtP>I_Ex*Ѫ\ M%睜+BE̛j9]{ U&2yoeL yRfAÞXyO D k\YgYG3wGCN n#@EqJOrQdnG$0zOϯߴu>gus/3Q6EsģlR 6NT@bdg"#ӏRh.qۍ=ŕX)+5 wsD fO;BG`|S*?"#v|lSR]@_ (oS% Ţ|ڤx > HGdhƶ:?*{w *3u<*p5I*We6;?mTMKSů;h8ckm+uYRĴa1FSrw5j4Ds`o$_͘z "}x³Lꀏ{BY!/ q]7}:ԥS$sZvbc1i=sm~!hm7e(wףo'yAqq=n}`ΪFs_lg7J7K%ծeJ減LfO;Mca7-/kBo.&D '‹{s;W8Vr텴7~)Qד;>l<}?k ^~t|qx8HA(1aOo_iw/yAKnSeEJX惦ΊRXfi'HOɫw |J+mc~,GB9qRU*㪦%P;;Oeza!أ 'ƚzWo[TnZ|=h׉ܳ&.5HV.Dmʨqy)˘KV -b&a=}@WqRTlB-W˺Μ؛j&iSThr:y"|T"Ⱥ>DHp>n,XJ mRxaRVpZ,T,#N/i27^As -Ph((0g1O}MynpIqFW #jo,ߣKtZ_@gg|"wm R $ >:0fZ~U sts qtc1!P!Jw~O1ֺ'ZH^RSP&݀L{/Nq,f8`T4 w/{zTd>CyÓ^O7lmVp<+e$z5 wB%@h v5 "&H{/)"|]XmObk(*{68a,/Fm<[ԊӶm4 9UW/JNzbPTZv"b9 h@I<7/~|)B&sYuU#l쀍fϱq.h6W(B;zkWsJTa *A" w\ѵOyfxoy'hYղK=َ_BADJ:XEs4F:oӂtC~aطyZXI{rvd"E'/a zA&UdVB&PLȻ9[+8٪ v%URG?76<oPXjT{ X4)Uc+\>>x4@ ,g3>ySEa_OzXϹ_UCJEOGkMHa$f#[ušnK ?Sԇ͈w;l ։~$V0;?}A*7.>L,tn2-i*RgAlq>FZF(L^W~DGG8%sj7:$?#C$WELV)1d韠b d >NWedQDʨpR<ާ Zm} {Q&: ?I$#uG+}SAkW$tǹ<,_mW {=twN\E)P x4Fµi(Qw|)f~&4eȁ0V[##O\-6u@Z u(Pe =M{c46@P"d72.݂QMrE+ [TS௕jÁD<(A)F- &C>:5# gI%ξ+֒`;=Vꋯ.~$B9_AfO( Ӓ.,&ck,dKAl,m)R󧙈E& bw+B~4ohK]qafeTUCx@9b^rZ.mA(UOE^E ej3/6ս$T|r绢`JOǒ"g3|{'+jJBvt Vd Q[Mjfy̜T9-M}KKܻW/:ꨇLZJ7v}MfYVp&%셉 'Nռ t- Z%6z)J[)d; tO qD(BѪPb?*ǕϚ8f)1уj'ҸLϘZ0lMr:NU]WTq*A1z$x_Ԙ"I0/Ӌi.Qo$hbi*gD瘻qÓMG%ֱWG~,VVpu1\9ڛ~efE! "[ :(I _tmkNs()B+ zܣvk2|(gp^z! -QBe:r]Z^h|#hJ4_M~[(۽.$Sf>2xyqx+G%[i  (>dkPݧ٬-J-\(@}5ύg];:CXa"tÆEUjƵ6i9☢J pG3ԥʲ]# e~)ɰ'x,ܐy&',@ٙ2ƃ:߈,^Rܔ@/_he2\A{MmxHgb= ^^$їˆuV;>?`Ԝ܀3JNC53v6Kŝ{"`V"Gi0g:&3WZ-,2Wjwܬ2I>BqGϟ5_ C-܀zFY=s)aEB#0_e27e-Jn=Q.Y?ٚhh: ^1oRd|dbt ?ӹ X}fKG&flD ͵[ d>ɒ96 ~x=r]DAeen5uxf=aZ& LTGV@5AL(VUاWКJ]] 7AS<d]I>w*ߐve ` YPHvąI,aN`֍~RޣR]<3̋~)ILIj\g/i,gFR-AtGwz3 ba;#$%s2?ruJ@1۴iw NՏDrwg0YA蛧䚑H  l E0O _ 0P87 /_͵;UE~f40n `4N ̺spޒ5QO~9!k6p~Gw;|MGpV /rKء ыАnˍ\@jd}5ᖴТ&tcX8pzga *yCSukUR .]HyabIGfMtG)5`̐s L`;꼭O?M^wEroNq+͝b<.vkDS&X[j^(;┌(H׵+YNv]&+]zB>2Q9^ns-'DP@Pq6"= wj<-ཊr̩么\E:4VpGI[ΰaV&\BЧS+DtهPu[ _mW( 5\DP/"BW·O>!0JB>%b_#  &&CtAU )P}C{nv_gW@:zGR?*YDԯ埧djHozq4'hx?%: wm]杖k_j1lMϝmvĴB4zIXa]~%pk'WWb넣 z|@Өʥ{etP3^w9}>MMNLqaE5 D-=Z'L6u,$KQ`AN![66-QչH=oi%hۛ7P׿i sX \˾V{PغҭY[ &g(F%MIѐªGD!#"Z'} 5Yn Ɔ]- n qmcRPw%EȿaVC>o~M-xh0- =Xlpqr/oC5ltIflȠFoODBy) }.~M1lm7ʼׄ_Yg;i;A6qCl!@JF 턕~:H'jq.ǂ-VX#4 84b@ 6\gCd$<v Yi8s%kp Q)\Q ѫB=ZAF.Hs ,BM'%[pil(Z/ZLwxp^a=Ìt!8yBv!,-!#:X㰩kTqu /" y'Ɗ=Aj:h/R,v/p%٩蔟 1%z׫' `W 3T&wuJ1q%Ȳ:$}Yeݡf`ʄ.A?Ra*_Dp4C f%$pQG{?b+(\ V^ vC^Q)WCåNOހ9L1ÁqS'vOΩ|p n;90 HmfWU$6K|L^5~AVD.oԴoˬ.aGޭ|Fp3"l Hp>n\{~m٧lI{`($t$c?_` @{#k1cGdYh+Al|!~Aј֖G)T%^N;<>^xZ8?l_nFl~0b5D[Apj]3#ˣ>AE u3" 5O_x,E;hu~z eFsלktc|~bZBp2 +'[B"niX6,^ L7 Ƿ?f3X PP/Z{s)!5'lKWrLJ Gշq7w wY1 H/N,7p Pyݨ]S49ƨ!Vx;m2jVqj>ոIfAqg- =,q OԅU*iۓNp33,#P/wD=k$FpD@ |!~.FIݡ=^8#Ͽ5.VPAF})ʠ|H7Ἕ,F@eR+8Y!<^CIFt &0(bE=JV;`Xl܌Έ-Mc*#5Ǹ 2\ hr`mIzѽ1F7Oc=Sa ,2Q?~_CAS'tWx\OY~ًgF8,o .xEP>2Yjw7ڥyaRP#0fbKlADž:/.,G$B2UW%ؽsJ T+(?..:xz*<MPq,-3UJܴ gs2*&#^ Vl7C& tf6 Q/.@g/8N' _UmKxD#H غ:R(?Gm 2=}^;0~Jd2Ћ%e~ą5ڧ 8Z4kUn JsvU@!Z (+ =jɜysI\-Y8T7`B7 s>*n ]3|~}ATk>g`z7$%+NζMн`x@WHi*2^TGNßy،`dsr8(Hb}:aiӎoG: , ̶c"l ʘ0uF>dRi8y|π?LYC6 ΍ M]cmY){~H\E̵Xȧ҇I/cQCuSVhݾ§<w|]|{sͭ;5cI; 2&7z8,ok՞B u<ާS\84A;&à.ڻ< pRwƂ 5D m- JRdY{?,wk`,2$%& x(>C\l ¯ uӒ{h4M(70o"хɮo2!t;t'gR pˋrzo3iXoO<{/M^{ڐk>jaRgl௭ѣt{՝h7gL!j$T oJ]we,lL G29斞:!(ԅ6_W }]gx[\ޯ_7F GY;xE HkVccfqe Rv FI U|Z^ Jdw6\'2'Ә@0MG@ 9˹ƒZ#?h|9bG]c ~;InR<ԭҬ_TʅKASW(yV9kEbϓe?;ihuMϠ@_ &qh!1Pz`$8%L`KzMeJ(Wi2N^n.A.z !2#TrDwTt][yTyo8`gMVa~h!LF )J怊a#r$-)>=$Gnʢ&?4&O'H}y tdc+e)͑Ii"氜vUpLkgi;dC'ͬ :&#UHvb9)'QN Qhk24,,<ޖ1Mf:EՐm_1f#`r^D3"Reh<F3[fLjyzmo={qਃ~^O`<&`x \ vBgA- {0(bsrrHW-dGK0f7MVxFtX㓈5q)"(A'm;wN{O<_]O*ldxe@1w28hTlC@U5:x½ߪups'&R3e `PT|q\ ayA ᗱ _ oIFp Z5<"57:Ó3*S QL(:sQGY%sAsܓ_BXҕ^-b)>%o"OsB3q2m|,cy/~˅q纵LwwO[dn<>U+"NPk( `^v]eQfACi!@Rnh82-v ̭}`en"RK}Q5PA-?kzbE}\^3edh:E4 ыGYO!tjf8}VIA A~]S~:P4=R">ʢ56YP)1SZ7h.g=\Ja=)DF &[x`s 28<Ӥ,s!T0RHwS;WVwh4(*ĸw%E:Ԅb0^Cg.x(Dml!&|g (3/VI}Tlbl uWrЅ}P?Qߴ܋ >[U<@!ܻ.|6`OS=G>\:S<5f7)JkPf\لG"^K kSpC>ZWx>}F :կ9JJ:o7$rJV2}5Ȅh(o+^n*`>bEKb-w}F_8˳:d 6tUP9p9mBpt^9~`կA,v:\:ݽ(/r6Z5I%&A=7hP4.ާ.uM7w.y,rvʙW״VpbhM-]-[(:=޿b.sXӍ 5:}s;ıV=V}ЭuI \,ڙT>C&Qz<*J4*Q=@ݜ9-pjFuC7La;#9"gWq̴W!c܊;hX}9YOWXɏ놖ÁL5@4 6'aO2oO&a2A_X<R|i&:80KtJ1+:/C`%kS?Kz5Ukw wPV +J٫\>mh G GƔn Wn3}Ն!/gl@FGM@2/{~~~'zV7) 3c(\q>˨f-h "*|svƒۨJDycX+j1Mdv % q%3&ߪ  %ѭ4eEcĔ)sC;{Qxċ?]{65,pKY"Gl\KeA G># kns-pmP+Wgk XDyIO<6*o3#C m^ϓ~^]`#PW9 ;]a}ۣ Ρ޻yp8:5E~3L[V{4AC4r| cZ}IV|bڞS|?%ʤb);Kbi@:NϤ|ZnX6tBAaSeW+7p_uY&JWL5E9SS;DC*^M HaFXr\S~,:])>8 jmYv?WzeB1^q>s(I牵 yNRZEv^ (٧|4FaMNfh{5P=GVz rG re`sy<.'@ǥt>`_I'dl;x%B:8PDo ';Zx oLYy,GIM@1Mz8v| ɊCD芩ͯ"A:w ,y0o[`ְ XV5'ԉ=h"mEQ1AE!nNqhx˗G)s$_RtqjmiFҥAGL,=ć4|k&Mzkܨ/6U2*_?`=@B2/(Kw)[@ivbi 0lb/Xɲq#v׋T_GWq0 0{}͵atSt6W{iuB4ڴ.&GP̲ڇeqf'>^w.7A>R b~A`h!;̱oAClFhRE3,oLmdf 490tR<:,},xKcuTM:2;^ frR`"2K$$=ܽ9 I6j;gRucoaaߣqM 5Kcfv&P}aUr3e<\sG$koB`bkdT ᄃqLA~LUBw~-u|?a:QaLͦtv~Dט:=xlldjQʬh *i(Gd __F-Ui5 ہ{ /6~Zec3ycv<Dp&㜆>/ P)K^^=}PDok(@*>.|BpХ[KNQex-dxD6 WhbP%ued _Xؖ&kdV3k bME,׫"^ś#*.cuN,UvG^p}= &ʗA8~\;*GeBCjv g!W㽃>8K[5yuBV'xf^0Ǐ4$%$Hɪs2m #qFIz 쀝7mC^un06̉(g"c2hpQiW=2 , l8KD1_wVLˊ%bE7'9`\4EϑQoYLB6PbZ;5",ځ_UW_ʹ-th/>JF'ObGAD)1עu[Ê[ XNq[QxZ:tw*m:Q7UmM)StA:Lf 4KI֩Ѷ[n;%^v7m#{4Mc LuP1B4 C-,<u]rg$21dȱXAX/.T{-MS,͏J6*q«i xlWgWI.G3c  XD-@WT>CųI(q},43-ķ̲[ R,e2w}iJ!|i{Iq ^hh9aAOwC{|Rj@s/৏#˸X3W%M+U9j3rcXsϷYo?!^NSғ #U1{<E|`YLp1Υi;jPH\+cww o0=v1Wp@dѩ%Bk%u5jӬ1.eJo+k ٳG|Ҙ\w̦>h 4q(j@^[•|/3H7ب|h8-qǟmt3JaNTTiv7"**I5Vl-yy VM=lc}"s`'x:R5F7{!UɌ:`kiJXxJ=sGxŤJvvi `n~1_ ?13'ʺjwմH+u8GxlN?7FaS57jI7(IkUٝe*b?>1S4kHo#)dm-%ئ煿[nfg`ٛq:aCdtJ5 q85].?O/E@5Qhg8(75Ւ5'a;aXA'6~Uù09_֙jDr]Sod꟭d+ƪ[>'85FSks!މ h&d1 zč+4l1.`鼎ݔ` ʳjӠ28;:le]Gٺ? U)|aKEYYn?U΋~|6xJ B/IBjgXl\]5V-q$!!&m}fhcғȯ cD9HM%)WlnC5mB0ڦ臻S4B zPgiF-Zcyĉ7Jg%{qx]EP`L^Ok7rn>J~ bB.pK*&CSsXE*^e.j&N" QukT JT.ԜU(WD+Wqfy-X̋6(.63Ʒbx\R˒z E69Yyii+ ;9Ii(H>fQ6y'jr2aBZ/^mŎVχ ɣ#Ȱ55ڨ".-8@gJ}(qR0 sYJL[}_2L 뚄qU/\F2qa\23 ;F ,lIؔgڱKZT|Xw4Z䤄(m);VK#R܎̂aci@Ď*X(\I u՜l7D*@_Iܭ]-j)DZvBlK%Ì;X 7>#Y#T:Wcݩ0eT /, L}U Kzc|4,;E!nCdlƠ,!K%w5~S yf,QͨN=c'"zZ"_QkXSYSo>,;2ιMSjO@1Xy(BH"zoUXi]n-wM@ǹ _(4Y~tOr%ZLX׿3 ,UaO,z>`]'+! +<'cP*,͸J7o2r.U^b۵F~Hoa+x>f~;z֥=T撣krSyNGZDu-:"HH{DodrxZ]^Gd*@CKz`3q1638:=\ ]Zr%tIAJ ':pU/Q(hf9QEEv2%N 5%<8eI*(Ϻ0'vs 3)z8č y<M5-PCI<^W5Ġ!aϨ׌49]vG}h3V5 _[~^A!hΨƵSçEAj:wBT0>ϱqBp,3?m95wE* ّe^k?3C$GE~f=ƅfztF yG7rp' -֧v'H:6jO(j #PvP2.X"wwDH;~4#cWR˩@pn~ w@YؾYn*)8D6x,{V SqM d=Eqfgh_aHAR5o{ |.Ki)nZ\sDH,(ddx(SPs#rpB0QkWU֩N`Hd`J%XyfFϡiA>$!vl}qh>[ˈ"k5ɠKzZKrQľEtQG{x`N{c5|Ùm,X+ llW?!?ãlc u"ʜ/!}"JU Nf5 Z2+>FHӸ[*yxQ]_RWu󈄉ɐ˞kPpk.o|w 8.C6-b[E*ʹHoxtgˠr0kQ?T`eږ;wlEHtYz?/*ZxH0^L-b.r`gvlB2cn,禑4>ݙ3YeM%ӊ{SYY[fZtZ \#|+bP6+[ ZU G#=zZ^6}^pIq(柾>SAx<4ޚ܌ZDRK mrְ5BOar`Q%>]s.viyՖpzZB;Ihh}n}/>i频'Z!Y@Q`md&UE)9ݘO_F*\٥v6": QbsJ!R?<"OF&d?'Az\~#L' .H}@BL5d[O~nY-,,߳HI&\'ITĻpWc톛!'~4ٍiŽ|%:$*5#)Վ$$ʲLT,pTy F] <}I]|ޗΟ, \5t([~s$6܈+|OHR1<9䧉 .">wz2fP+'K>yt}Jqm;xr3":+Ltw E2)m,xD[*̵|A?fSzL렸|W%I W8Y\0g!dFV%+H#GH:_m@u]+K 1 x/UF(g.ܴNPz! DaHzB"^'`]0[!sc HW9 0!݂X>'))dϥ fCXʮ{[G混qja{zVG, k1_ln9RAZ:qǼD'y& ɯ{ }@nů ~_Hk>uhJ2餦؀hp=m|7%%(NVU2)MN"5Bŕ2wBh;فWoBga -vtJ̈=wC:8aLAl[MV)bBؑ!gY/#,iRy'cW,Ŝ=Ui^zt^$ Ar \֘(b[K.ʺ9 q1"VR_a_eLn YPaS" ([;,zƢ*SV gcC|,GR[)>I:3&ϿIAIyST@޸OXhvQFqN~34 A[} \ySGgD6ƴ~u1ymh5j~ʏNe?e.lbp%:v"iQ{'7c+. ߐ }e^Lv(2MY7bw1#Kܖ iwōUrj}on4_3u],YxCyⰑb`pdx *epǣ+2H"L 2n'|H)IzR 60}ǂ]6+$tWCSm.g'1WMS9,`3y* U"+B Lc {]rSچ4#/$H5ּ-&?yUTGd^a=QpyO*nup|- V6ʔq\RxLS'hmC UX_=:zZ^/Chtm`# s,!,7 u/ D`U 6 oz^6U2'iʉK$?Y:ڡ]!]nwM%߮Rj1AfD`!9=#wފo0au߾eFP-.S ,A Vul2 Yg H)VTyj0ɨkQ2@w;ڟ#\rA;c{֘C_vf|t>b$vᕣLkQ [DKqnEWPg kPr%[0MlD'mg=ɗFɏg&%is<n@r]±(v6R쨣3*u&fzBMbf7Ug1*i`83ut8*:_{A`d6DU}s1>[㗊!!Cr|ky?N>Ȕ{]]4]PU 7d-R}ϸtS!<'BMxԟ8]XХ_x#Ѐ%`ve`gP f`gԍGJG(ϼ^Pe*)|FǐMa Ţ ѐ`ka+n fR4Sۉx0gr$*2Y1 :):[`T|,(য$ L7ڌZ}EȢC1D&D)|NԠ'S-B7Pem39H#Om봹ì{ORtuuzX OW6f*7]ru6mJ2? cp'y_վqz1lGwr2Uk.WhGm$ܛX Q49FGXPN}" 2}$%I ĝ K-U*v/LBޣ@r T/7v$R/HcX PbH2Kl_i\--`+!XM0꺫+ 1Ss?ܸ?'U\ 5$W#$O\937PMggpBH́ޠa6ýp͐zj\>q,#C[ʥ>xٓYZ}Ӎ\0#m$w[!63Z}Zy" GIX\91 >\]%FP6Vt23\5&v Uؼ;哒l?\+_< #Q#-%Bm@ZFԳPuc4K#+83YkUJ)~8o:{eX ` p= Ֆzsl~'/|^;p{ ÒӚ噡 (<&#q "gC+]b*K}^$q.G\ ڕ.bcv]?z$4̜`تD)%= @{7hA  yx$1s%+\=FQJVPDcϞpf[jRǏ-i`DÔƒVKm`)B+s\. 0f*=`k_2l"7Kܒ>(Y)/|>%r2hV|FrCEi?4 [^Hяxfn>ʫX`ɳ3Q1ƲHXߛ6ɩљORr]~9b_>ksI:S H!f3|9ߎX<ɟb!Rtә} @e {:ŔpϹFn<fa/W`)NHbkHG8f>VR$=+y8QB+NYk,)m WƜq4 8G.2K2*ɒ`;ҧ^s Eߖ?ƭ;$GAR а u:|P26LVԥkPn-۾vJ*%|EUlFA*qt ֥5wőKCɛfV K,Tv[XzjpcP iagO|'ƒ3ڊ0]y*D={>BnY3.[ᐛ6v.u$f!}\"ޘ)mPn 4qPH/|w!>@Su]m;])GNB6.rf][n ;Gᒥsb ľtNޒJv* _2 {Q% q=|᱈(sDwx2.H% #FhRu`G #B`hg1?eӮX_,x{"M?ߪWfN10\jʽp[7I!67]Ixh n7iĿh앂]thq?]1uq7WCgpz'`Y⏤nh*B u+O8f&RECys[&3;$B":qCp:SU;^٢#cӧR`'@2ݪ٘H< 6j(E" _2ÂE| 3 aD,5QZ{"m%ds=2XC!I(L3;@ F`6ߗ |(r֑@-鍚3yW'RۏUHqy)NJ$C7A Ab<➾gG_â%X YT an 'WS:ryI!(<;C$tuٳBo{'n,ST\2zʩp$?V/3pQx V-R8k>KQIVq*]WHh LCBt/\<|ΪROS'j1g Zj=ˌvYڭchITş9 #ZiJi&tazz@Qw[țE?bdyYDznGE]EXG@q3n>l4`'NF"*L\b4I>YPJg(~XJ6/f `=qGtD缥΃Q2de e`.ɤ@j >-e2QtUb8-O UP83Ș\u3uH 06"8}M9Z;P P c>w'Y94]z7'zLy x5g r(ЉfAF|xA&6>3ցYB!f#q c)chLԻ ,0Kݻ=qt"JCضSIUm}%'aM`E:ЎḬtЮIui2$( Gq>*nBzH`4-bAvX涾$tL'҄m,Aʗ?KCgiJ3HKѹh0T;P XȒtmD4ԋ<1AR`Zڜ;QaAOL<+<үd˭Zuzf?[;mB@^~ل ÉHػ;}%u3MM!7rHy+X%J3ܧ'{%+_8ҴO*\ 2J4kl,2}v)(MQSl~wN]/ܷ8 i1\%4]|sTmӡjsK<{yVu YX&e,i|rB(8y)-7h_(VrK NИJwsJՋ=1ǰ]MX=`;^>? U5)B!VS)>p=-K8s) 3j#A>F}_}nR78[V ŕsu SY( 7,V S̫$Y06lS*ɥl>ȂcG@ ܃Mo?-!Ha`m(wE00-7ˁ*ϟ93Ь}6E.uBɱ O K&iߗ7DeGuٴ Jic_7'6b <S?^<͓/Ty]@d; !99$g`9I/`/C/Xv}Vǧ.書̇W hId-9_M]" E"[,y%BowQ^z9E/Oz9?4#i{rgbW }""jx t4"^XR#GN LFV {8<?,2TRaTPչN;2{4QGtDK̶(ܒ"#޿zR&~3# 7VX ZoDRHdߌdy 3X)N`O>ªu ~X'~ul҄{h/fS|6ETGM4Ɖ ĸxYu;)zK %N ZE*PIRg|YY?-]˪̮g"?v51M&xӮiԡpZ!$x1葉#aT}yuB4t/[p=nX]@sm ~*zh˛r#(K:L} $3bQⰸUmBKp/4:sK%*g7TCC@]RFYy5zݭI+!MEP"Xtu z,HheZU`>_ʾv,V ד`؃lέ{*#9IVuAHT-6;H 99kUb$"8}^8t|X{)\D*tVL6yRLi\LBM:T̓᧭Sv<֖\[EwΈ>DY kjKΨQsiI]v&WnG6`':Zz偟lj z"2WK<)k6lʁ"Z4frP=HqTVފ?y]feK~DpZ1F}w5ۿ0!/qZ.:Ԇ.rj`_Q5|wCKR|_q[R=v\&5]]!;srϕEZLt <ˊD6xfQ7F[L]EeXH{d7^[h)iDj!R ]^TQݾ|'XFU \Z>]p[@ %2@l lYLSw f+oژ)nsC7 >]|g/j1_z4c~MP^sz$q@;u Bf""8| 0A+>X3D.AH}F ]KځCqYӾSyUJwL- a2F\ۑ̈́t>e3 l+d25uziņ*j>5BI<:0=J2pyX?twsp(NxvSEI1%,XݷҕP`fNi]́?T^}dIQ[@a7dbډY%\^U"N|Ixj("d1| Pu+-{wjo8շe݆saWlO}p[Z3 ?KEtޱO$&EkEⅨ.R4?A2fQ2>1)y-,C.6\k qܫAЮA Wsɳ|ې$xqp3OAp*Kn PaFvo"PǍMy M_2Ǣ٭VUȷݲִ; n4.D `%(CMft uӕ%s5$[(kmТX}`GSawvO>AA{8L:$ W/oՉ ?r.=8Ir1em:PkDH^] eh&ǒmc;!L=f jӣx ۶Wv@dՂDvx<!~d9].)udNG"ެQi1Sh.hޘ4*#%ԭw*Ӂ^8~5?ٿ~-L%VfUATN?$ډK ]ǐ&,5}# Ve)HU' 1zE} %T'|Q[i څ\Ew8[: :ƕa|6u~i_sqO0~k&X{2Rw${:>_oLtGU>AE2A(\qqOQE̊PCp 1Qث"JiVIIF3)P *)~xG#fs+ȴuIHý|~PlWR;>[ODV8X;+ O#]X3_"Q9^5d0 FwdHJ:I #-4O.Y4k @֝yd3vѺZHw32]Fv -ċJ'5a+6b>%fRaQҟUBnG!(56! [\$6FIqnC' 5ϊK=ذ'xS|g~XΕwY2%3Jr$jFٿix[iEcbZZ8?M0䢫4Y+iêzytAHL\/Ow~]l|6aPwg 5gGt'Xoavs#9Ҝ]T ]LQg391u-ԫVC'?_hs`}]J~gu曚J|`㓖bMa"EU,\l|"H&V̻hj˴91{u;G (`ǼR.axYe|c6>E +gjָ*i$rT#KdCꌣ8 g!lm.L kHbɣҷ=3C ܬs3'(h|Ir D1e*ޔRo\8 L(ͨkwE׿RW9X|D1´5GLTA7f $(V\72{.MoBԼ&jɛ8apR& 2"j 0s$2N2_fBb$^{1'TCtzK}vPa*(Jl:?[!6&yr˕Q<F1+{9NrPxƦA7 kRHمPA> I/OOul^—A\1k%jȑ'qF?ȍ{4 :&oq-/KLz9 21~H'fMac. 2F X}00Iݫ+mzui4t"}?Pq\oͭjj6OME=*p  b+qI2crРiۘ)Ow]s ԹwԛDHR?DkD֩gͧ(#;I0/14ye}:O<l2dzYwƨ Sҿ %crbFjjdF:O ݉-@y11nٳ[ΆEIi+h\* O^= 79G"H#.̐y.Mʡ^PK)?gHjsؑY!fk( hCU Xm;u.i&@1@?pEgT(" $GLgdqcМx^emڞUQ/6̇3;H}vyV4gi2CہCs+OE8̦;>Cwj3@O>2ŬdɅ-b٧|$8jHt0Вd"|h㒹4=wî_UgIuq Ie@pӚ4v|GsGvH3U5_M;i>k MtG #qj{$A:n\0&K"t32bW=Ҳ9p& gWF޶ӆ,jG֙dT"E եh3؟Dp5wrw,y0uF4xf8 ~ 8dGv'Br*~ AtXp~ VBnYMqmS>HE$ҥu>6eFaP2K\]es*Vh6.ߔ@ :O sflټt|<&lUKϑka (I_}Obmca QyPeZHצ %4Ě?Q:94I(wCkw\BePR\8Tj%"v &=!ē5ŒYs$jC|xWl/`r[?WGMp#qo9G|;\հx:xKHۘ{RwTu5#eVNkRCMkoىt᭕?x;A0NHN~M_H ![[4̘UG7!rmVĩM~Ƹ&a]`5GFc8$ͪDNM^MegF )u.+9^"c51qc+nxy5 FDcHNimC,ucN /yGaj!>Cj&-:31,^e"AۆsF0;$QdZzQ|h+mNZ&4 n!6rau}NN <=K SW~k\ >5,`=scgҾqh\U`b@ai0[S`ܶC5$E_冒c*1q>=}ؤ6I{H=p|c߹{m1 gj(o~T^ Tz|( b%|CzI8X T rxwmcyP{X5!_ݔYPoZ&|o`n+v3RQ0*2;όLP >݈R Ը=U`/X`͕{=CKqֹܽ ]q%YXIԪ%?NMy7g9 bFqoϴ}ر bHM0`V2m:]y_-'Jz2XQoZ m;J:HZ_ePֆ-0Z ~.B):T'\«jء}C%;3y0vV"zy†oǔhILxwEis6F2_^g*3g]jZQ?)G H>肨 CZ>Xac#7p?v8(+k¥*ԩ̅v/v_6"xI~^X-,)O5y %"_$A֦eF/v8'vq{&y 719Zipu6<`[{v戉tƮNsZ>[jМ?Dx~~ckLqbQ-@P7uGފ0jH4`3Zp;RrHKa1=4ծA Tt+ӗT|[bGgE;:\&]]8rZS۶,Ā}#ka^'^ɩHH7Tj? Dw vmrXn5V:Nⳇ% ĝKO g,:?=`L.FnP. noMypH?L5$IymV  9ՒUm]v7rE+$DZ!ն%FiR ύ ٿ~)B(ԓ(<1GHV X~JVM(jWh'ڱC=} ֽVٻ(g7 YAy%)^ +o5Ԑ'TRk{1$PiVTp$P;PP6j힡]# p-'Wg_%KfŮk9 25_bwt]y8 Q>immuȚ^4beuRaz#Et,O6%b'rVˌ8<4"jlSߠN |Ҟ&{Y%b mRNs[U:AǞSߌ5H+OWm38#xmYRY ucUI7~`KGgulZO\5> lK'ro^֨Zht9Q!V6@#Q7eo㵔·AZm|*3l\T&( 6l,*F;aa*|NwMގT7L.Gc+ oGD<-{/t` ex/#ÆlV%-CAyff2PHynm~BIt]T6fꋂFZ%P{ѵ(ZODŝ"e^EA*@HJLx/ %`}xړ:.>Zܫz:"c٧$TJDT荍gkD3 Y9Iҳū\>^\12kņ=Z.c00a_ ~sYHb7O=6PҝkK HA7ǡ'lw=k`C,b*ڗߪkAD K^Cr":U9 hyr!{+Ыd3_=J/AbV6e^GAjHӧt ܽPY0bs> Wurh0qC4n_`|YCZ cha=0^S<ɘ:oڔÐdl<[.Ft(|{V H 38/m{,;7T~z&4T#z~4c tO^L,!cW9L*:O GS]"Nc#$AحBm-}=[Y9gV)kJC1[ -kvc (vV:~';A_|'0>-IKb>۩^kH|ĖA|s+˕6*4;lzaqMX~x'򣉨"{a7]l"b)0"\?;׬aN%6+a3no옃,Ýzbm>8OUeΟս%!ᄈ]{N ("-9 D bȃ)|7u,B`O暑d:y3.ZLOae򭊦Y,Ek .RQ]2M*yč|?7xVN0|V*IZc7i6d<]Ղ=*2poG,׮zt|> K}f?j JDXԘ a9 )uӬ񄄝 Zz6k!HnlY 4>L ܣ:EnUnC؛tqxx 8sbʣw\X@%{f94_jy&7UAiQk|ZF{Kheܱ$3eIBb%qC3ZW[6\͓e]ڛ9[Xcwo(HmCfkg P4i"/ O3ij{"F!Jީ_D^<2;1V.Ji㸈e8CSepĈx{8QhDEެxx\;.8D[~:dm&u9bs%?ſ1!-J}UAdЂK]ga6gf-Dv Zr!n\5{˔bhlfa]Vkq U'y UHrhu V06?޵\*P7~U)5pJ,{QNN28X=0磢!׎(#kTNCSh2Pٌd64 |u@-WqMP?"=M>#ےl4Q*4b*xX-3+2u CX㬧Gpb.[Ƀ7yc@PǹO5\*;v@i>X?t@;cُؖ/}ࢥAY&^=6jdRcĭ0 hi>Nѵ?$qHR)bkAV.]7R[[ڳ+D0GyweXҡ9Nmױbth!7u ˋo';]o`"5cY>4ֲC+[|p)+ պe;!AM2!C&H廴 UJrNgeL㚩/ǒUti(1.6_f ˋwS*ȅGQUvvLxK~1%{mnRȦwtM)ʰz3 M=7Xst2d4a]vOi!(5s!"oD[g|$0rq"7PD[k܋Mr].H[ xA4?.֐"y449P;3k@2}_9xy\@x hE'WgaKeɉ *i-E\ŕ_-ZJ8 Ƃx #1\`ٮ<.ؖڔVCsLnm?Ʌ?bu6lG=:=w\7qQAk'oqvl{M^%8&A VHьYʤ!Yze35G@_w#C <)HOT2?ܤE 2B*Kf\FE~ohg |R5C=n*kMy0c.%&kHs7/Ɠ{jiXi}̍}M_cʐ9M)؈Vn{Ay7,wwL9=k(!57~ m9P/b$DOt*BvC{:,R"8iJ!aRho 3`?!Ắ8M $yVyfy3l0_z\ {&zer?oG Lm˓I=0[@2+ņi<8Z~\T]VR| YlwR9;\q(p@8Jt}Aabw}۬n255z pv^lqʩGx;g}$t_,5:xp^jO[*9f]QnMPE id8Lda9fFa-m"4Sr+} زbtbf$!a[}lU [oU,=3S60C'3慙 *$~V%YpwG`j G*~ :KNfH@L -fiwQBoh;yhf\XbN>O';GkϏ?Ues'PjW?f` W;i ;dʂHkSdVOOkiquYcE`:|$*eCY4.NkDY6VL P+{$g֥"uszRjfG:65" 9M\,Sb[u]pJPnTKw{%N3m1/´6(J zg,ƨ}-":rW_'x|Da",|L |&^UclhZQP,i9IcBƿע_Aܿm>v ā IJ.d7LAȶuFȼ|]PwX^42/KGfWѺSP&UΩIK$cU4il:>FMf_0{jz?-nF9ł=QLQ8LВzcA26i`ҲJheT)WKD2=g[OXb~]>jw9MlDMבZVEi_UAB"? sޢ۳vXEm:YZ)ǸuF@ <_k`<V6jަ.~Nz\oN  \Gqk7h`%;tl~fcA22Ń K\]:~'U4놉'p~ɻ'שհ$ oR9m!WJ\! %|6W~FQY%C/p^À%鷛 i+!bE[]q#qsyj8DqR~6qGZŸd5T Fr̗|JFkxRDa2kbhpY9b4M #H>3T ' eM"J:"D;C,3~KًI3#fGN2kBԚ ybޝ3I+UZ0 `nd.uXO74+I%R&c_☩./7і YW o^ s[˞]:!16MgJD,_pB~JHTxI+0: ezol.=>yL|D,]UVOm09@UݤImBDM-瑿; gzQ lU-;cmk1ƒ #;R,6jLӼ-SL4 )\2@ގ@8&[c#|G_JjH<){'&9svNpm7Upp`pN%ƈ˚b|rbι~Gj(34̨qp0.S"<_~,T'a_5uXUk:M6p*:vrU泅6`K]P}㙊CXRVF}|g}!G//jY5;_e'I$OMbr[W+G&SQܑ;Vw޹˃B5k"PoET8uiIZ%pROC pIݓ;?O\ m.HT۞ T궗0+^Q:ΐ>dAe\!ͮd'p[hBbGҘ&D kP&,+r*vZ?:V8p<<9솵%Sb=Jmo3XA+Ct(؊w_d?X@`9+bjvB'ӆAQ:H.4NA WMe<~8SPp&g(i:'\.UEs\`@)_<|:\5T`AN ̅roM <-3HQeNP~eYfݟ.UD8VbckCѧ_D1\i/䌍/X &:zRIˠ#M8"cm]mp:4dP KYGӠS("ւ9dAi-~/:i+DLWw{sW&]CRRU萧BfgI6%xdmrCfbs|Vۨ Q:͛)$^h \+3 cedX~SAD^F>RdTKz{⦡U!Y >ހZ 1K0 sߠ>Г#Ϟ$ ebbJl;?zwTW:b騢64M<+>;ԍt$=|_tʲafH#R&oQK+PkAҹ4kk {q ]ZFx Ӟq!M[[}s ?ZQ[by/dψe\ɳF@_OФ]{c "CKT 6ӐB+A8YaEwv IZo."vt}zDϾ5?y`f|5BJI݇h>&xyӻ q "{g$֫q``JRw4GM88;m*1z2?qF=&dj8b"Ik+;_ٷ&kDd55ّT+͟aj@+Ze A%5ꡂ^li,eN9y>ܷh+:B rmKq@_@ueg+r:6mA2@; -up 5q)ЄC`=(α!{ȚOH6Ie=y1nl2cs62=) =e\0ڨ+|ոSlAj~yH PHfE0 P-v4z پ27P 'RnL(@ 7l+Cw=Z.Į4t ɍ_֐m0qݠnr|]?C6D>ܨz$ӆHei{XLۈnwvGXr|h4a #=YFRD@#)x :ÿQ/Q6DVUF7R}[V#wѵ4h\Ǹ5FCv,0p-?\A_ ;gmlٔkXX(? K#P>}nߵf-4^%mf fk 4Rw=rfl/"K ^2&C';8PdO*sL kIasi-|ޛ)xp]zd2m&Zmґ3Egɞ '©PvZ$[^V|>;InXtW]H{ 0GhD䏻[rd\Oµ*;iz Шhژ: ]~ d $K*#OD0^"g)1b; m0Ŀ~/m:CWpD7t(,`QPP$5L`ʩ!R(A[x7 z0H8k&ݫSm= ,n| }˴')T5?TS2lClnK"x+O'~aʦΦӏk`ϜA1?0]S5{iS.ӫmvenV\Y8YxW5#?|nfϿEEg:`hB;)ALn 9SocM"%r_.I KXzȰl0 sIݒKH߃SMJơÙ2VCr \n^? `vTSX P9 ZDI6BeWy3K3h6H|pޯfdws /,4])fe3:3}̗tЉOYXWCIdӤSڮVRPة1y|e[2`@ Y8~R '/׮ ]Bo+؉ KSɝ (T1l/p$KbHJ?PA{:)/ĉY?YgSK֫œ_߃QT A %1>wueRabbTt{Y>*}= SJĶ&ODޤ%q8iՄhcp(؊֓K,QČ%))bsvKٲ03bxDQ8e T*тDMqO= ,ҬO]dWЃ?ӵDߓeK={!'MʘH6%uLLڡj<`Oir=nA@}M-.Yf=״N}?xX5nF؍PELg?הE+ռOudswOIܓm]K?<FoLv 8Qe,޹8p\ i͒ffSD=~G[Ӥ&I90}ji'r`DŴj MV ⪚`}>w&w>ZN1wǝmI@\:IBXܟ`]yDxd%7)3ۤiVh6C5ۨ5~"|TQRxo7Ny%̏a9hŏu؇\"٪긟)QHUIl_XU<+# 8_T*K.^xQQ\PD5[(ڼ-$Bp6/bk !B:%%,ShѨ_,:%$s# [?>̮gS 0>n^8gKnK>,Ŷy`sPhJxկ b0Q"@˨E/"{kʬ5Pѷ8-=[Hj,-R8T@~yEѦrֈX-N|ïCa}wGEhk|ʆz,*OHeQj=Tt;pĤyV[ՇV'{1d7A󫳺x߆;f iQ ڗA d),6.zQ|HS"]e *t:crap[w[L=9VG2 猾\~v%4Ba]²W{C0L0s_=#p@c\NƙMAew܀Bx,Д-[L(PvJPl$'z"UJU3D. J"[9/1h+(߻.jO1wG)ԁ8 س (qHBGCO?Ͼ=)J$v}2ˬ{:>'\br&%%Vd>yOb9R'w~Pj 71$2dQCp-?LU"ʌL.u&UDXu9yGjc!!X:HXBK-+7:r'A ddځAr-:h${\O}&rm;s ܨ9рVvL9aůN<9o8צOKTI/n:Q~"I Fl8Hk NR-ODF-ˍXddT;ǩ;ŕLyjR#|, )@S Gt`u6"=4/nSN"J"##O/f"`!RuIݗ#29쵈8+ZkK {Np7u5A2Y97nš|=Ʈڬs#a=y[R1^ygBXr ']'՛œC[`vc71ˉ)pK{ kdB/8+>74ƘmKr +EݐuQ4|aTa-qզ>ݏk9e{c3R#užֵy*wL\kcK;pvT?lr&>5mvcUD(Xc#}듍1aHD{gͬ{/P].OQS,H*ЄlFuXpҤ˼T֓\@R9%,(%K)Wb`#ămɷv ~ 6.ö's}a; nv-tc8==")w馶:΀e&@MgάJ rr(3p_s@2Nz~d%N1Nh]atyCL Hncڧ>!O[ S6UA[䴿=$-aZ.Q,q^J)ʫ}NơvaO.I <CitWeSgNu gR BFvn9v;~@Jr:E_En|B*ܵ^`ZĹE'}zLLj0}Ejѡ= (+&` LGA/d`B+$D&=.7籛Ra'X$E6!ye3_?hR5!* }Ahs.j{qoA)$L,myg,=&KTq`^R)ʧamE5>B5xCmN"-z$ U;0vH]ƫZV (rr!<|e;{ &r'޹RB*N*Q5 }‰k ˔SQ ?7 X|sIQƧ  z}Tb8Y];(Y bW˪;{胪zq uJ*h7Aon|vW2` !'].!o24Jd~XZv=xH~%]W %fͅrҍODf̔a4@^_WֲpETJ&@L b5_5oVv5Q@TNBN(z&5W>_jt߾~)MydXm(9)ÔȆh ch^h343LFJX=ař6RChh}Ƴ뾧4+LY2#XRVA[{g(!7=W{Q@}.ђ PDfL3^~SmxEca Y9N:=*e89Z5QCeHkL͘ НN3k2|DN}D0~U?@1wNgȴdt=[*yb:?e'x$~5@ki=jf@B*sbwݬdHm+!zX# Y8܏jtu9Ph A-N~D-w]GIxdټ,0Oi{Z Q*)<[;NwjmGg"}'N~ktGr̯6 tu'}&e0̝ܺGv@TZAqF96j!-ov{dfq~YFI5/U9.#q"oHp0g=5PMLMFl>uҧ<B -^j喙@[?'רiE ϘFXkl;ĝ7P2yg[rP&7&{|傮uajd{6E&nR.z8_;rc ${U}/++HGw-p>E# Z[/lОx֒@ekMY-2,סFp [R-`6EJ[ =P“ 39͇5W}߄Qjw2 >d} =xcavUƫJ8q5LR̳=0B.k'^S $v"VDYlܬLT:1m$@َ,?+@7+~Cg@cM{{x5}675?-T9gʭzI~H,J > 4UurmwA/ OꜝJ/? -:f0I0NV0hӜv^˷-O 1|mBVSU&0V! Wc`S4מk$WwdH!E Z9wj *eS[T _8${#nkJ¡i`lF99(}8ܝ_} a$"oM#Jj v14A=N`ȁ׭*LNOQE_AFTQ\XPһפQTj WGql4ш mB]Bp'$2}^D*|-*eGiNqG ZƔuuO?t[yq9m@L+ !J}IPT祠tO`fz[a+ 95 gu`,G)α(#>XMOzRqm&vsH?r"02F}:zw笜ǯP2<ќ(`ļ4U0uH>ImJV`˧؏>s_ mVZ 1{`nN2 63{mv5)}e 4Z|r`B⃶娍a(0UCӟp%0|Sy%Co_ z%Įo!?Mk/"arU޲S<5阜ʁG~K '8Y&JjN*/ǠYe0`!r1q2wm +>a70C4sOTUҠ8a&nѰ66¼--\ܧTK{"Aa7`/Lݔy.#Qg.~vac6Zo5e m esfp^>ʹKkO+A'SǴ3ڍJaIi"ln_dS-a*r6G+`Y AOx"W4ZΔNh;h7Y#d0|s%?d0G:^oOYJps#^'WL P4\k`&oyux"eR=%'E)<)CՌK(q-cb f|_ CG1mɝGB*D4_w`( 'L>KGJ˕/މ&`SxAe_jfDêZ5fI6ɏPVSH|qŁ8J0Nb= XJF6d:Zx#rN1"`u:||61rp:,B @xP/ɭ2M; !Sdb5ǧg^)O+$K$jHb)Əuߢ~E!n+~ a7-oI!bze6rؽN XZ {%)V/SU|o"NWw-z ,6/&)׬]^ I2Վ-Œ BPhƒC D'޲*taLH>1gt\Rs2gEd2oA[CU.c3KJ*)ʰn5468nX,ݨpLڮN|p A%ɸ 0X- mK̯c`%q{bWu& >gY a6Y=g吏sӨWߍpDXJF!v;̑;ֈg 3L 㾖~B,GX^mzX%Oh>/g8⫖Z5%l~:04,brK%<ղl|$AN?ڢ =E`&݂y\Cڵ>&B;)p1 [sU>4V͛r@*tRY4 T2] @įfNW" 'Tfq*Y  vh U>*ۓQTP#A|); (ǙgZ3i׽|g(XKUZ݊?Ս7ݜ\1C°J YH!g?V%\s/f/SMn ,3oDD|֚-3_(~Ά*"ENd%Ԧ5EO+'®,kcU/- VwFcEq:0)Nw,YL锋!i>K] t5-<afǕYLtpzL Ŧ_RC%.SδU$lc@|"[ Nj W?A AmpI49:H,dOhsT4k[:avU< Ӗw\|A>1=+0Qr>RzЪr geӥJ{(xW'$UqOWafMNxYHS k=v0`c/IP*#uV4u 82v Y˛l?g/qΚ WJT>8No-}Fb-!ؼ2/&`IY[Mkzj.HNc$R2EbIk uCSJF|\T攇| 49yy3Ƚefҋmd0k3?"fzl@%WNt]z9͘qnȏ9TU?Zufp;yHqo9 FNu.[+?^ї%u?1U#C! PpŌy? eR@玬w#H _< }ڜXΌJu)99 ~FpM_XZDx9xPuE.GcAAWM+pTt<,e^49IcgYڥ׆ 2 ~;u8my<N{DžU~ 4e*ifϼWNB2 =2݅Vlr8/[74'$I'AqM+9v%rr,9/V橎H\ݎ]U N *c S@H݇#GBOs҈ShЕ5T)/R'd%h2( $Yz&g(@Vu Pg ;~Lxs ?Vl+IUc+ `fۢ4Jɾ.A;Ab-yt&[=;!ý*}XDbږXQ.SO2GbgEvERA4)7jˢ:5Ex8-m[&ܦ+7[`01]k&pԵL‘gk:!$߄H-qF4J;}eHy+ QDpge atD:/:/X9 "(vw Qc:f_r!8n{d,d~A%^BJJ6V3rV\ bYv--Lb&:y\uul9^YGCČ*EtlRhAp9BRxGc})qe(l^>%:u% tɯu&+p79B(oLtVkpI/WR97J@?ֳp/IYiJF*C-b!]~j[;,ײg.I!Ǩf&òܲ&AivK1Qoxa`rDS247E- ,ܔZ'&wk4?YNʇ$nLUT,gSj;=\2seOLw)Nj&cj Q"9>8NE5%+z2cmr9rG=]'KTH\&>7HWs72~[jyñ4Y`37hoE0B5IvnF n'Jri<"|_vS$FK(52~sVDD ǿ?/Cv)(sQ®SЖZvAc|WZJN7AxȣvmUpi[޾=z Nr$/zԪz1.PӴWbxkMeyz:_= ٖ6kyH* `:,usk9[15r89"" @aܟi#OR‹]U1"L-l(6G P;M `c=3+~92`JF%j~L7Ѣ!wӐ80kZ*3R[ ^C-XM+(hjxr"m[؞`5:1I98()\$GJ%?5H|]xR?J7c-Ϧ,9NL^$En&"抙r,W*+MNJ5am 5JtuNv+ґmدy;LH9'Ot(9Z.L1,i䭹6^.C9T“x?>TAo?l gqnLҰYSREȋ{TLBN=rFB{e2jӺY!;e!u_9 5KK~@O0N`Q25Ռ˹xN,[p",\1\CmYVDTU) >g|I WT4߈9a=DKhq.hnO5cX9=}gƲxcߌ7D`3[PU9SO }"n~ v-:E!^WsDasN^mwR.x9SAg%ë?pe״ XQr,p@={*'Sp*NkY Jw&Ii -*?-Q3yfV.,u\AkhaP>]#SN57wS;{b쏶)۵{Ҳ4xFr4'%e}LͪBg./Ux$ďia^C|z;{hTCa޼g}ZNIh$FY_F@aTm 3Ҍ #nsi{ 8ixgg3xCzgm Oz)ztNHd-kF:,@sSָy \V?FY-5y3S gi<ڪ{ΰs j+_AdvlwLK3d[ dgv3+.䳐q(w$<-.iFӉ<-ƹuvz~*YSij-f&&>^%n,MG щ8/=F m[pU^nĻǧ2M..€̑K9#U-QYV7 Zi-əWz48j@Ƹ_zN9*"d n* jx9g H!rLݺLWfCHFv#{NQB*}p"qy.f{}gwIv?&yM ۢaNwz\`w6z$6}^z~RD4!^NU]O{)~ Fw9K1鼴@깖Lfz 'lmAтE<vB--&jsrC.[8حlqVʸcC޿iyf%`_S %#ٮH{Urr`%X%ޒꋅ99aL9iN 3?P;o\GD>a*ϟM^'LRwGɮ~OEA RDHvy Oe# ozN:~pd72Kp5ZQcN9Ka]t79mUtmW$u.G+AĎP &b} %SXT Ғtm,r,UҔJ"Rfay1Tgyuy~mA?1?n{,MJOFpsg3leFhDFxTjtPi:qǚ}͊gL!s\Q"m{38(ʽ|/ /5̛U!*C*>ycX1(Yz {k5BxKd#_HC6C%ـ0iOۘ{BA-d{&x8Y>o5БWDCt]M}$Q ֫.$3#ߦMf_KIoUCc%@atйP$ٷ mܒm~%8¨V͸gv B¹]RO&!҃TJOI Nm԰dOҠm9}SJ-փ<_+FvaJ6#T)}  s. F,_1DNtbl`ⶺ=U{ [!@IQ`8TPU7=54ޡ.|f8X+I*Lv̟Jb(W{粺8@&L6)}>*a_Df .26t@}42|jڢ){  qlV/؃+@޹gj6Crgΐ/?dMac gp }4p7˕$ч&_tЂw|?,i&Q)gSA%75P꧟,GŪ3LCGsc{k{ҿ00S :b;~{/x΃v=Bx6=g 563>m^N5y &!sMnK}}iiZmLVU͑0=4dF;ߕO1ʒ3gn mc-%_jpc]}!l*ж~~#˳XQ5HƥTB6deA+DVZ@/L2OF^O'h6¸o4uL$zWr҉>hRu[Vk2!0OH#  壞.Q%BAwER>6TKKi)zNXDđM\~2@yJ)pR=.Nin\X!b,cwJBM +cȯO XZH.Ns|BVH s+]B7 cYU†]1W.g /G]jqmI..RIjzAU,׮ \o.[Ѹ-N䱼QUDˆce͉%;F:i8wpb.Ptf ®LK6cSᐜgx'NKQ}8ZiF~'6q6X:!yoUUyr$^D /MA(mK֤o[ZZ5l>( aXm>q$gZB ;Ϋ(c"x%|bT:;IrBw^.GrNKڮ` s5bT opG*Ge8WR]}jG=\v?0w: D g;n'vJcIbltk-ҡ6Bٱ ʗi ûdw"a KMy0ӯ87&o -.ocIg)cj=TD?7ߑf?t|oٿzp ~<KNuu3R#XWC׎½?$hO`&Bla$h$JM6ţ=g$*ULs!>?P=3\B4 sn~*F]vpi-%i(ӣLîT|^ Atϛ]s2.Ʉl9.}h_a R VN"=̮S^(%E#}T]bUMiɣe/A؀jil`Wr7]19rP!{9yYY4)*RY3?#KyhsF}#ƦAj&#ʓQ5.ov 'ga2=&帺fh Y~:'ge7eK_B ;~ cC@f`MoB@ yv;9=|-VkVR[Wx)I`Fفb7"۶1df"%*D0}CVAC gG)gYX% wg,6bz}uEFVAj'.,52d'CibmADTj?(Ozi 5c[Dscc.RVps ɟڵy}=Ŷ HK.{]nD"' 7'`;$2,zeEhc[uu@'@`kn2ZCӬ%͹JSP !{L z@wK(}lKF,sfԟꭏ? .B;"ij!IDvSrj'_'4ɕIT-n~]ӐuJ^1TT6_ ;*`׏P^]yT56Hv>_ZhZRN!x&S4[٘v8FG,z;z9\$`GY.:iy_g9mT$F\q<կl >2l|0Hl9>LU],Jj@^U7œ?W^$qv>Ox$n{_[yS=Qw#YP_5Z =>BIqa&0@?'_x Կ8W VGy TrI StCQk>D< m?ʴ"-y›: Ia(ORIY*L5Ɵ˚\æOS}%6ֶRG3)k1"1&y"qğIw칯!W5I&WDd0}Xr*f @kq BwV:0PN=wzKzIqYndߩΞQ'@UTxۦ=摯?ȡl,"~Q>5zcZ4 q4L#1*BJ0%7@qCw:+/vPLGiOupu9v Yr+# ppp8>;4gD/jH@'\8(ޔlT!;Q>\u_0\WO2 )BR` A;:N;xrf #/̪8RYZXtƖPӮ2ljǯk17/]L{ČJDTY{ eA\ Cjk|A*)a`ո3av̎ g*NQ2ӄ']U ̓BJ)W)ALNд1oAkֆ$&b, @Eg1|1MzxWHo,5P d⒧:ƒxF԰9(]vlq_1CY ArFOYEyϚ J!f[sKmFXNCQ0+Bb[F#یgE2wёayr b A%E6p6\Iby|~?$9c,Vnʰe3^;?;ѪjP|:R'ǻ/7ĵG}ϸlAB&m \6jgt RxO3vbOY^xvY{F2xqo\jD"`(s]1"e}ƮJn2@T>K95WlFɨI\`˾⼭$dr0g>~ہr|hx9,BZ31pH&b:ʣ]F#&Pbz.IL%B=i(vnˢJVvt%uV ~D~RFip]afHUe[·, ;4NS 82G: Bﲯ䴔Yse*\k u[_<ǐ&)BObuWʬ)6ziȣ% &{M9m j0dB|~>2IK<9ܸ. }>T255+vʮ{ =yװ'2+ID2 "w>J& ~Y,z'O )k.Ń~f 2w yTK%r5s!؆驹@ 'gG!QL:jٽ_S3ޮ63䟦pr.{wa'1.%en! 9Iz\9ܱrIun[Wl)[<]0P#C̯P=ݡE #Da2$A'%'nWz_r$6 0+'OQ[zAQ^iE0wǺ>FF%IU|4&+Z_"XVg}Q+{Yu}zJ dΧ`g̛IH5)}Ѧɋ.ɰEB[-prm6XjБBH?N9 ےD7D3# 4}FGm 藃3WˢR›LlVf ec: ^#8>ڲA ;ߣOmb}4tƾ][8c޸=YI!){\sj1/"9'yA:$:*E ŗ;WϰnV$amgRj|h]a UߺyzO)oe]ZpK5QM$4F^ß5-&e` 1I&>(82`ͥ*un{=ɻSc!]Kն͈|*dcujJa!O D_yd%7xVS0[ ȫ͌;tD0-WںhzdEӿ%LKe'gt4`?[x6hqn#ILYA@sQ柁jD#1mh^$ܫ3Sҿ¿/#}|TUjCM]>FWD},̓%NJ(P]> G_x t3pH9W~]xL_HEOt!3z'e;H]#W5E94HW@(ߓ R9Pq8s}z⾍W]UJR."r`7L!!~HʉcK.@qPKNTl;IVřhrSX:Cd<(rb ቱV.%;1ʐ/0΍Uҽ5HSnmoyzJt欜!G%cžU[]M%z n§OKkAhTwz nzUWaYX?&[懈Ꞷ+TAh'㶈 uٵeY =ُq="->Y2X:>,2žuJաbi7Bh'k#(?#q(fWNAiAq/X*R[PmQL3*#,PޕE:%,jZ[+zxJfn*ܚ+й[LX(uDN d-hb"=lԸDsRs1 }$ނOQ o s3EΓi>|ɏPV"ȃ*M~Q\:E<6fH݀ ͶzPJ(t;4c xT}84jgQ-p@C['Vm0ҎQD mP4x~Gs״wd| mt{P"`1BP f- tkmU@$EXIB>N WOK\TȲ\16_ b|6""zM'w(5Gދo,^9ƿpU sFICr_T0 s3NWre8s\ %[]̪YLת y]{YbiCsΉ2 p)a_F*o7K[*Xr(ws3]*‚ %տb6$}g4w]#Ajȹ{$ MZ(;;7\:0 =Vr @[r=RB/(~ ȂuAT ƴbX˅!:33bIs)(a*@ u !5Qr5!D^9QBMy=*f$08Ok2 !deVXm,?G5J1oR@&.Ҹti8~b4OKQKTk=i/iZ<:oqd .=_wI%CΦ gW6o{U*hM\Q LCGL7=l![ѥFPTB'P*"GK]fjW/ h6)v s^(` r5pC-hg}I" Q4Zs Y4lM zGP}HBNw]}4-͐)2k;W!92Ό!3@m+ʸژUǘ!`kj"N,qO"Z 4Rw^oDf`OAɛmL\)X<Ͼ<]Xkbs[i*EVm|JvF)ώY;cuH-6E}`g:WGOrF_F8{Bvmn|!I=t D%eݛ,κ|Ks(BFتpLK8_ ozĵƙ BڸOW*n5HAJ"NњZfpMu{ !-˒`6f Dul5 |z_ਮDa@7cn?Ӥ02,fK_1KhZ ,b6n:\zJj+y8R!?<P( z]/Khuy8N#zj˷Aql^5{ "`cuRcbJD4,!<3B gyJYœ$BSW2k*oZ̳ٳT"]Pz6*N쁿/y({T:+ :V8&mi%FJ9[kcWdx{'CYQE\88XGnej­Rtjg&FX->3AnYSkOzlQ\rsuePܔN`DZY=1Nq@F>—>'3fNČǫ‹)hJT|;>ZZٰ Wܒ_ EYq1W2xE#xU0.s4?0.}Lcܽ .sҞA ˋ/I\}@OI[\#x!ՎoUvAb^jx[*ocAasث[\`l+(€N)5.QE2M@q'cߥ[[pǝHI"58ǧ*L/b-SB `IWgގ9+^QBt@o"]`q-&9ue2DP)7A./l._Fkde]I}ls=I ?[?O=#.:b11>[~f\Ĭȟl3^5v|sS3rƋ}}ap۾қVq ՐaAU3<=q`EDR̋Z ,}0Z} {%P1-6("'!_EsGݣw{UDh+UAm,Bed/7.aP䑷[Wg@B`Z2 34 u%c12.Ÿ݃`T ܶ;OmwD ::mRF#CefV^jZ{`awaMeLcԟ`#%IMfs0"&tɀ5|U^-N?퓠[7MdKkR?jD@r`Wgi?WMDF^HBΆ8u{(;.Y9H9F/<:h"["ϭ2tRC6Yt}\gx+kJ!+k o_hZѢ3Oi>+reͲ۔Iq>#wOVb܁".kX5ǔΟ<:`>↷ sSAKVdw0m1b.n#U+FjL@o]ıf.b{,kJ%/}Q!MwZE5FL#:z`*JƢ깽/>BtI\Zz>7yŷC"i\=9ch(Pl(>1{} HQar-<4HJ֝"8Br] P9S/+&n>z\u4EzMMI:5&shJ j E*J:M%.(0_lZ]RVŠC+# ~7\0]8^q<+@$i=G~VȈf}KD6vK!W z]Y2}A5)3xIͦT74^3oŏ #7g.XM])whNk4Y)/`~}! 3QgD&殌9 \Ե5Cmj MnpR=[ș]ϻ楩u:z\d~>vXQ&Qh ->PgO>Wia<i($LEzMPtkZSrY xGL\YòʍHJlΌ<+&Ͱ~o,$$~H7D|GoW8Z0T.f'7 MB煿v*i[džM'w H/TDjTkID,ah؁MpI_Z 耈rb5_2p{ԥ .J<~{6~8Xgn70_(MK'CtlwM@)@NL6IA;r `o$7ѩY6 sֳzqyV}o' vd !^ZF&Nx$ lg YP^%m*k\X,iDࣅ *ʳ"?:dtFrOX|L{}ɾzӢ|f/=X#zXxI[NC ߾=^ҽl]YF\fo&яpa1̎B15| zID'xΙ9KNiTFc#gx*Ou*Pl(*r؈T 3q2Սj _FՀBaZN?l4Y8b 9HPxNTc5eP^N DR#nb0T{cDkg cH .`)ͽ,ø¿6Z[+"RX`a}Wдyf<DL`ў0jD|`ѶԽin=*21f dFtKs2 C-$.s]Jw 0I؅`p2VŝỒr3I",'};*ս^%tb1Wr~sM// ¾y)}8m˾7o$&ܤ>\P[*(Lo֑eU/ޓnV Xٚ-aG|3i#t^}⾯N][g8 ~4Ļw  "ZCT3:Ḭo8=W}p]jilTlX" %YY[/0QKÇe+BzB)M5WFPrh:fXorDJpKB*@ ZEDycl-HF6L6~biF_NuZ2KED.OY^ѯ:ƙiF>!NVu(o7o8ZsvBrBVT(n@y|d o𢤌-!5d0͠?uTqJwrn?!Ƕup( @ϝ6og8 ad."!e9sF^j @J'oe5i_K@E%ʮ@ *PhW.v'GW!g#W3H?,ɥg&^X~&JoB;If&q[ID($wxc"S~V3x G /XUI;`\c7ZwHrר9Xr$#mT#+I7%^ˉ*MXw_\*?ztS3{ơc 9d* b@cZ(p ؄~9 ^0b`V #9IL.]w0!ymmPU b]d5B݀uE5uPcӂ׀*j{+ϛࡰm7"|?Ů'ls;-`F&k."8%kHfddSVU2/fS99fr|#Љ~`'v%Ϟ1>똫ڴ-]^>ei*H9)\ΫQt%#0 yϚ1[KKj-"Rds1xxA$aeτMqXHSTxGEZl츺UHJ6Q5{Hސ}̔]j%S3rY8)Q7v/YkOrg[۫bp蔕PTpFG`uZv# q],y6J"Cq) c>uxA&^x2m@7[xlDF,L#8ạlpeGEsx?_ۄzkva+* ]i[0L0&nK߰yfq$7$+l!q\ydI[WV`yF xzMasu6ґ3BWeWqA / (_Gq[49ä!-QpCZa71]N:YBu/e `y_Ek |ݷ d @Q1cCD~>S,!|Cwbx - &}~J@\7NefNQlS`.ԷW.L˴55~U1D-RUʭs3JZmO{7;u(pj=3a$j >2-g{M XsSe$Mq)B:VN+n _3Q 5 m6"LH4 ayeAef;-"ɔr㱁Ppe >mG;@7$b w +YUy$1E \k7ҼLg8s31oFFUъN?ͮPsy[jc|P۴hVjL&8H_#} h>^МS.V9+,_{LÒsG!d,s.YZ@?F ynd(%C6>NՁ ;TJ%N!sLx@%"=dw~7f1лf.)s PF\n (ctt{VeDC_sO4wQgEbU6ˡ;.q?NJ[Q~*I5oY+^j7`GG&{ `Ui硃 Sg1- wi(9L"t%[ȼ0_tCnV{}OXe"/l_V&0lրcV߻J:Gyy|q C$1rv.4BP! 6ߊ'cJpM(⡅=Wo.6?lZ=(q-0oE։!R;fmKwu8YsjQʵwCnmQki2J"r;crKjF^E-A,ST)|HL{EiPUwQܛ8} Wq)_e%B)0(*jaB@⃟%ݺ?ݤzgdRp7aQM+:{71>_ȥ) gp&~+p3C&IA(HRT.WDnq>Tդ$wπW2]>"峡+` p،{ [ T8'Α>{n󮰌sP%&*p`]{+X4k~uŢm VBI@I3yJ~ S/uC'A~y3,+ Ҍ߂[ZL=H_~`8^)ddpolp*s/%'DnBWg~!|;]干%x?R #</Te0 +INl!6ф* Ue[Ln({7P]HCz&X[Óp1ZZ~|z?,!r<){6^&yJI(ty)}'껅Le"h|g>b?ZӾb;Bc_79(86m~’5u*F֡=Qme0 S*}&Ϩ{퉟QվhۢD2<7L7ؿI p$-ӫʭiK׭1\Ah}%Le>8Vyʪ#"olccDs)\5Q@?Vƀ3Bvp;gD~AvDS=ˁ}1y^V"$.MzE?x h,;-k/LP)pH KZ4s)(U{ӄd̎Np$j sA͗(*qgI : k]]9l8lZφam?} 3͂?#hF)՘>9y)$; g08L[,J5y'jwf|%Wi8S ȲN;H[L3IrJ 3ayx>)l;r/NRMjc)aƼ_Y+nk1M4_ϡ\θ +#@Uk~!_2:O ψFa#O2rɴir:EY>j,V/37;Q@Z(Pn"eu:2-.UE ņi 3J Ոa~rYWa.>Tc6KF[4q^2>'Y^[ w2\t&pYկٸtX{z<׬±P\4&$(~x~73lcBwj`%1ߣlƖ[Ә]Rz\OcXswTn.<hL<$3fD9s!.?*"oU7JnW!+ETmm+7y7\ls;#G":ka+S]e` 4+UӜ&<*aubƎm8iNܴHe/@󴂷[ߺ'0M`:Zf" n;^ %[3k 5w OsE}*) @d6 $Opbo@pme0i>h!E^v p=A'X!aFd'Ji_]iV‭ aY/H\Ea:O腚k j~7A.ʅ{z̭j)SVX ^e%\9f<J~pAp@D2,N=kyզiHDsgrHX|cPEx?Y#r.iQ9~ ,_h')BEh_zaGF: ˢpe#i:]wTc uF)VZ,yVe9e<.pD5-dCR Rǭp7T?`&-Y-2w%ϘD 27F'o;^qGzaҵnQ: .͌,)UYD%(pJsش+hX<4d2evl]mq)Xw^Ed42*450Oc5 OG(2X5& aG^0q)4+UcB M_3L]0qI;I ĎcvսU2v{ԒOA9CZ;HkF~䷮6yŧ&~h#xd/F+jWFCG8$:%M5&ٿ d[`L OMO<8=?ޛbڥ`.jTrp'*p q Uvx>)ٺܮ4Y k 0۱bǃQeuc6o_E6X'*R O J!q%WAsg}>˔ ٳG?cVD`muK&Wj|l?@ke}:'[B߮MuXpO=fQ$fvvSj?x,j4ZEK~7,z[_vEUH6{2ALD,zR!jS.IwRO=Z_%(zß0/d1hƢF9;};裥bO*K` xX*=vyzCp,lYR;]dHznHgq)M,`0oYwlqZ1ivtо\ai,-%w?9[jPw@WV_h EՌ岵LK`Ap4vH~ +bI;Qv9&V R"wKo&߾@'g^mRݕce"` *!Yt.f5 @Yk~KACW^Ke;-nEBLo_JkR24gFc)Rϥxg@|,r^%2xW;U 7Wi:EHta8$M`*cUJZ Na`JdS|, iNi`!e# B hΚC$\zM5jv= r< {ݫRf9Uꁢп¾k}@)w5yF$k>wFGX?{wvGsD\R4yr(0B Ѷx29QH`JIN9<9#^Xu=}-f24l]gho~?T}QC65*H lM+Tlo% VZ1"F5 9kGړ ީuu ̀Qgg]̶OV2|zC'Τ&LQ |&Wr}@Wqzt׹#q1?MABݘa hrݵ U/i| ["+"P k$4B۷I 7Ŭы͕͘}&ٽAnlLRpmwI$ ſ#>Frrub%|9A\%B]w}6ØlƤH8uoC&?jV;2X/ttBHVS+;i"bWs|c$ ޾22vl,gջq.(t+ u$voVR3vZPdmȀ rգo#bf6ޘf-nԽd/׼\0ک&̇@}.G"ʴg4O)Z}{S#릵R\Q N|պ֢op,u1Yǯe;$TVt5o_ T7MؓWKu%Sn[ )(s)Nǎ Нߡ *׉zɰ)qNK銵GVӿ6h1dx1?2,"S\<ϱzpd³Q IFɚ(Zh%q[Sئb:SC@ǵ6bnob>l/`݇E(Q0/*V+a$i28O"q.)ik&\9޶+۴Ka9i-f!WHU0r"Uեv Y^F| {X ш\g̿L\[GI<@Ɨ5JGXég IqSQj'!@ͤ )Yd<jo0$X NЉj];#,2+ωE3K?k.+1?!<>S8.CTW7ç8\F6:$?7-3d#MS\Q|OPgU=ܞʥeB7O}7BU=zoh |O_tg4~N͒*P)2JI߮P*KY9෭3dX`ꄲJZw/oL0SO~s'.yr0)#X mپ%zcϐF4piFd6Ekl鰞zsr>bWcFUB'MŸ-saAM/XNg@A$:K*o뿥gwX"I,M Fp~Mg2nWF׏rkW 0nth.x֘GCDDkjM-ps$\Q:0p E@ <TPg|]: B$-`HU1|.]KM)̩:A~z_.?UjKu-c&y0>*jʈ!m[ѫP4D [ кhԧqg;z-)(%ӠrrU&LBհ8[0.-/]Yoh_jn`L޵ o8!NȆ% k^\æRF)NÛZI/Q-7Kcqsv \Gj2vx;eBo tM ٜ(yM5Flo$*Ά&IwoTDcq 3%aӣ[R@y@$jA%qr6 ɮ֓U6zt,՗՝HO iwETm;N?"ZU4RA*nuf ȇvWr0 ؍ o!޶F)iXMgA2ޓ55CDCgp7Qmc9~ .c CAVX4L!4<eݮJ @S4ydV>iຬЀy'b&O b^ՉCp٘2f)t<cLSŽ1ۇ7oEѳ6[N%Fq'5NȡjZKU!F.Rd$'O:η{6JepvɌzۮ"sH>9t{ЅȂ#>ӆͷ@c)8)i {һSjNy$rcB+dʶ!ݬq!kW9һ߈P4qZ&phҹ>ZH Qb,9 _Y2Dz,%(Bv_YSķY3PZSwdB[ތaӤil)ؐ'ǼIL^$̘e$2\ѾEÎATކ,ҽX}*qX70t1ʎyCy.SP)ڠlϻ12ʶ '7n'g$#.|DpsE&%"чIෛ4҇Ŗ9.PxD"08 RϼnkR*ph_)0ޚ}4'ON=:C'f} T ,b~[YĀ@(C_bt @(I@F,K]˔v-s669tۏ & JoJ|Q¸xkny uL2pZHTuU*Ad߷[$fKƄH22)`aBĽCgހw텼L;P(C7#XLP)Ơm^N<~DU rH~U96 0L{ }|-Alf_E[ϨޙwޱVW:Gs&/"OrnT|~%}DÆt@6yZB -:y[g g rDb±X72`,73L]=U%| 7Z=>t[}JA0rAʯ\K2PF1π7/~#8<ѵRVWa"Bh!kU j#K#Vƒ`}v v\&Rg[e7AhZp=DfgFMm^TD5t-KJgiAEm19Qܰ% oQ vt%|d988h&AfmkQkq nr_+9Ԁ `〣Jslsڪ!2e#v!kVu`8'Iۛŗ4)>@cp/X7OE .Ո~@; NS9 Q[G[Ya+ԃ)kS j"Qw& #$TSzYy6S^~{ۆB++ީў-WޒF.dfy >jd*۩ KKݓPqcP(3|-Ӧ֦כaqBL]NvN,;I B#D Hry`m\zrFM&K+ m}$Ddݞnj9(xOp6iPozSg[x5oӥ@h>]UUwbWR&&PA4("DeɌ3 U=ȥm` ˼o?<%n^QvTa؈`EE U|3y'o_uT%k/}KA%VZPP<=w, Dj#FmĆs^*\WXLj1 xgQ. AUäN>ejh5}ë{ݎ:%M4J;*S˧9lt~#!o Vy[0lkLZg~}Ұ1)D,:\ +V8j9m(?^5zV:3uWGhWP)eo~$Ca=|Hu"֣! b% ]5S8o?n"A,fIllQ|G-Wh ,\9c}1Tn_l$[at&H8J.3-td3]I(^ݢN5+uk%4c#o{rBy0ߘ,l Ma;5וo3o!͞0uG>T Ӊ aqI_Hȗ%]$2ہÜy~߉I7oh1nGh`hud7Ɇ$ iZoezֲUwVd"0K[a麚QFO PdJ<1hvcƪ`:ww>Xftq;0%xEm8ƹOqz8SB,hL%">gq pťlB6F'e"UNSwrfk)~UkP] d .PWCx"džuynJEt?0رNA+"| ǁ@< G-60x5'C9SJ9PuR5BY 8#u6!3%5"(8oV0񸌵 uL=ZꜘR2'ڝoN%!BxIbr"" sGҔi^..A3Y7g;GhX˥sG|6YreȽ$i^GƔô))PQe$ 7ePBVӹ`%45]e8$P\PPLºBX@y%M[7BwG)װ0x;cvH>敶zZϹ}Vʤ<8)I]QW̨<[$Rn"3' 8_l4 *k͎^4 {0Y^DN~O&ޤ$62O=Yc^("@FRx^OTǵu(s^K~Մd?V_9M-<|-~}6ڳuԥA!)y4|#bd,$4 HUI$aևHRč;Tm=L$uT}̅KrX)NiՉd ć6WKgVFPh(ڛb9Nfř hVP/Ol&al T m{i0c=,NvFvL;sόHЁ8HP:DA]P a 4c5C(p twOTrJJ_-s"oѱյǾ? `l& xIʍR>d#%/<)>v Z:^@M4 Ggq}HjD{& Q5~@K׌>izKoRӺK^F<t1:1f#=CRIMONM&{C㺒:Y5|BeN\wQ^Mj(Bu6&~4dPޗ<:z> @8Ƹ#] T:E.Fol$"$% e3Wrs0Pg,.S-+ 6bQO1ilHSQеe V RO2&ztt>Gpֆ0<+l7c //ֻ|Wp6g jl<<KרWLڀ-I&G+i(F47%%'/~^=R?%l_87z ݷ::ˆeܐFQHmH~ݏ'$Uz? Fyq e:s#8e6%4U7^`؋#d?ȇFjX7`m;5sޝ7xn2/uʹ G#%fM |kdu&ă'0zv׶$r)qOM1iLk=s 2>\"Jp/QmoX94"]Vy{O}紨5qCBP)e dz%!1^Pξ9Y  },?p%iaYT樇WϢ-ŝ2=55۶E tGQ00o/W&jgPM"Y7hT Ga2ҽYjSm`EUS"2΋SX3u[RZ܏57,"3:譲DhۛpBƃl31P~jk#9?ΐnۂuQ6w+|7- nLhy8XSL=O | ZŠ1cŶߺYQnK#nvFw9#Ѫ+fmpiœ]'v^E6cP,1no囹vyd© 8ӕ{L&=YҳDge:x {M_ ,(~l[ݎ ǹpj`ņ:Ҁ R9CX}☖k`&B0JZp.{]ZqC,&>CNTTQ(Ix/t'vRNjǟ8Q2r@aɥ.U-۬|4II"(fX&牷TxbjGdiPFuvۦk\SES}{bHFrQwsJ"|OKлރ9=9HW+3XHl,ʀ.bQ;m7W52n9kL$n m!:8#Jy$1z5HYp7(.`͝tfnY618:MR 1+;nQDg8ɼ^r&Jk~$wK,z&k~uwѦ PL /LQT%躥Wj%u4nBϙ1RV}74-$-)c$LV$g݃փ@IԡM6δC^ $L$$֫(ĎM6}GOrn8 UUJףE'xD:|9q<9:昝},zJ(U D=lr1+Jojce4 ݕNj_!ӆKqR{O儒ĀgAW;7 d܌6*z_{۰~s+ Q2$BPK@q"PfW2&+]ϧ9i2Ei*%flڭq^H|hU3 vD#~>b&X 895n+Luoj e٥ 2QA5Unڸ G]5/q(V,@.")~Bo[߱K-N5!q U~2a>+UOL=^ipQ5Bx!Ġ`xCH;ݘT@: tGL<̺5#g {6+WEyˑV" :ʳfvSy۬$4%af=q敌R.Ll\kсcdWZ&PE=E1.}\zR/mMبuTu_Hfm_G4;KSCxHn D9OdaҫEh;\=E޽/~(^uFqCbQ<",K":MY~}M7wPc6fv**j+ՇIP[[(EŽ4 'RP絿6 &ǡFpCv46Ieܷro✢{1BRQ_ǘ_7c4|z@=s05[e6vT' \UTSJH&AM+0u[}qÝ׆/>EO CK{Q oaf"o/ӄpfެK#j@ۖcPYc<3\K#5v=hc2_%]Ϭg/塋fe+MY uT|9KD:)djJtl۶ ~]EݚB8' Yٚ`qZIgT :m-3CUK(8@m* )s쪞u_ ,grlMal̖'ABEizR,]z7^*5t+vq ɯ /ou{;9hw ;1~2ו7Oak-=?xN3[GQtħxfsw<#ݔP>ޓl8 ֦]6yn4bog;w>Wih _FulNPB; xykM\os]uNb @)ǜ3F *R vB0Q ;u@rb t 8kv&8[Q {ݡSZ'q)W9+SkG! h䤀 `HVLQk,\M"X8Bcb(JdmĕxSP~O9!hO bʂ.$QƗ#IZ GF {3N(kb2o 0' ZAPC{mۗ37o]G7{mYO.28@MOFGTJ,\U.;Zj{A'KP&@)Fu)[zt>CYCƶ g0{U 368@:nL˔ V@+=#{kxɓj(!mG3'zL?FS8O`àrEB'`(a X֛3N׻U™4aj{$ذUUsrW^ (#O؎7TTʞ#rx҈!Sk)XZU %^8U?-"˝mT7fAХ霹EP 6x:y%p&PKq+1?,l?g.lHĝZdtήIkR/EH}i\UKAANa;Yh/}OssUM4S0G%S+[sKot&r/!.ˌ3ݢ _ X+c:\ԀR//MnM 贳$:;ЂiG1" M.QO#RYFWjZp1X]<cpL'N=z# DϭVScԻ9@5J1ͼT?ZC]kE%dܩ H[00h5<Vjq" en K%O`+W:r1~'6N2ʢDqT<>Ƙ%vӠ}R@n*zs1~6aS2D6ybIaWZG5G}9i?%VS֜acgMeӻ4sa*+Y'ՙw g1*9| ^(Js$GݹocAj4#bsC4g%Ff:9#`mrǐN!Ų_$_D ϏɨHyy=|M ~G5ʮ P7]d o#{c> %YJy"h{Zǭhˈ@2aI/Oyܷ̼;g~K<TJB&]ZsJ\0KaU.nk˄v<  ٷ:AbFbXMVģ_ޠR?KHy^.˛a^·]kϔ |יD!>WJaΜ1*gƤib 0+)6u T+к2E]9,8.7N?;e=>Y2!ivn$d!E8ô^ܤhm'6H,5z BDC\U m@G{ S&uv`ki)i~.eDȷ*P>yB\_"jЏk es޽HM ,p֪T^xtOͱVC*gEB7?e&mε{fw3z xEe0 WLB&F\_6NO 3SEv#[J-BN鳷B>*l V;h$QMvɆpP 61 T7lڊ{mgK^{_cr;CCÐQTa: jޤZe;ϫzyy!Ȕ6/X9-U-Džqa!~LEq'ohs__t:ǪDajX?w/@Pva'*  IpBZ. 2}3!ffr?)lQhomD5]*X7aսeR78@~#uU{'Ҧ)(v2U?vH2hہq@4U^_^GkZ{ 88񩊭η/,Hl73͔0w#qP׌Px )5ٯ"ԁ}0aܲCt.-m@V48EnBp`\6Vs {䦛Jhwlq{6n\,Gf˄H"B1,Հ{Qq@;.]!⊫zA+a\z8Xt'B1Nqgpf 5(#q= 5Hw \si#nDg[¶0e JL&1L< >R7V3'hܑ5=9=:̏E`xXF׈uAtsdv WM#97N}txO=V)܆hc ^b7Lok%Uo} 4#NIͭZɆHQ?FM٢=N$ $)hId[i *12~]iE9I|1`L"m a>OKY%wI iGzu*QU{A5u nwu9+&jrtC*q7_-wA$i 0,ҍtrTK]E *rV53^]hQ/ϋ9N>(k/@ 4$C[fVJn04+Ntu[bNm>@CJ]wAQŴXeQoF,֞ʫͪ5҄O]oW(>-;q*. tw X*ʯ)7vf?5Ī C`]e kJ15jkkZ.偼WM܆ @8x,hfɸ#~uu-ČAd$`ޤ޲SQ?uMGuW:s 零RØ^]݅Gq\!sC/aJ!#I5̹\UxN}?qzwt)c /%d74V?jo$͙`Kfɋ,![v{@0oci΋pWa^ƛ ;O63f* krX嚶r9JR{{tA1Q $5V4 ^"ީ%\|2_Vk,*'W`{<rNu*;rqJH{/-TI~}ljDVLѓ:MlIgD+ߩƳbt^Շ;(Y^ F8& #ksH+16W\AFs[D7[K9p 8oޮ]̶ 3)|QNLյ^RIUheMl`Hֻ"݊pT&x7$ɤ$\NIq|< 5nAX%n{Rm mIYX;3,Rw,-g=@?f RCvE8遬<(S3SMYosY«Փʫݽ'}_eʫfuϕi>gR`x+ȀNVg͔i0- =Q,jrZlefS:4͗4-]IN 5C9{m['=dӦsxq׮'~SIix}ErFtēB[62*Bପ3YN=Kl(2NQ:/3#W=X3?E \M(n Ga 5SD[$we")r#v\,NF~6$RmsN&}ź "c]Y[G8u!zv#*;#W%$8Yh:X߷;R|)$ Aibiɟ>vT6:DweH X*,~QmiX/A15xJuRz0duKQ-2=;^eDK~xJiT.^Up`$0ֿe ,Ko`ަs y 0  c ͂rMw9ѠeBU1(ZvR7lQs*Sh_Ҫr(qփ?L[2H^?B 0@,Qh9nVYu_.6F>3̵Ünt!ՌdA~˫11vյuDNyP9$:N ӵ9δC9?s%U)Q6V%vb.x.GO<216 F}>[22R\eҼJo0SdrzA}ވEExd__&澑/[}A3 x}%U5/VV@2|z73$1TtHO#Q>8uSw>+xџMq+.+ lxG(n"†r<ʼ:NkiYҀ JNP@]ػ|Z'Γ?Bj|eԭ(vr >!(z‘h|ɤgFdo'K* K4'u`/﯂{: k2h3`r|4 2@ z9$4ՠ6{68gAky'ħeC!?gI2T zk#VRꂰ=a4`hHH-dW6J40! `+\㽫!PF/`.[#ENC|^qK4\t8?f[TF$ :cu Jo 2+'RC1S('( iUN+O[@@zų_ ?Ma~JRg7,TdZrW%则7SΚO;PVFpD^LK~!Ǵ]%$aZ!:)QSJDGnC,ƸV {on2/g#g`?gF#7;m8x:\`nsoRHW\YJV >+ r *y_w7XwRTzl/H&X l0!KҚ |G/rq~gs[ fp%>7"wj\{AQYEXNqxY$=(!6H!o/Gv9yg[{w-I) Meư=༂q 3n0|<l_tr0Κ u],iPpcDj'bY NiqHh-ݴ!띑$tu s#.tE A 7i|;•}sR %D#$ LHKNާ RI+/Sl3U]{# ׃[!*n=cD9Tfʲi4 ruTinFj*^{_+'|P (jԙFj_T+k\OOnCs'*fsDOOT1"!1ր$g=j[38M6r#Ȼ:v?ske7M OY&,)IW/}/O#[TɱCG7xra> Y6,#CR#,UĚz_s}aP^\0&ӓg|[ƈ2 4_!ЂsE$;d~&%ȷLG'9YkY'+ݲm5ɹdþg`9RzpHCԟ,ҌC7!d]nܨw<) NAsߝ0>pƿ)Y^VB_05zPIVoOkofWPk4. ת2Beld-zv9GTT U"v\4P5  VQLOIM9~E5kE5>a2toRdZ.5u#)x΄ޝC.t\%yNQ;jYݣXHc±S¶ 5Rgq3eM[ʋ]R0|P>\7?:ct2cbc.k6P3Q۟cRŒΐ MBe-S&va\JI'Rܔ yf$~?q^Y wk4k* ;p y]Y YU[Wݏ(ʳ^SB`{a/OV㗨pq3Y nB?-LȹX;rkxaNh+NS/!̘(=hMo;$|NT$9H3bfY c_F)27(Mw;ĺOA4巉˲SB鉘}Iє&(JI%CXc4$Ig,aЊ;e*/y듞2ҵ:Fs"rS2ЅLeȭh AQХvcOI,dFBDizh$ aflOu.`HYC 1Uv[$_%*j{1Ú̎0bڕ>,Q^6)R.DA6&9smYڿ@ ƑVRn<'Fl3u :@P5Cx芻,ԑM" @%?%(<- I!U_фcH߾t!G,^*GWuiD+~ywyuU6nR[@ViORECd`|`lhOe Ө7vFFSx30j)w0)A0]Wؼ6mrȾN_LAhS,5x[Lu({9N|KwZ'@?zta' OtO"hu'ly̹9}1ɶ\  |ܿMB;{-|ӫu^!fa.njoA:VESf%y*ڦDGXsq@-r'L$c`K tQYOCW.*oo .l,ϻ<ηFna,Y>i,єibAH˟[ kV$pi@5x@w}PQUѐ#d?0)Q}C*\$n1pG<7|ԁIDڇBU"1 .#0B]]{4]+_ɥDfrhf4ؔx=a})%GW}%w%q0sϟ;)0 `\R|`2Ūյm2>ֽ $A+I>KWtL`E¹rQ \7t68:͍n,kü tˬiPGuHF=}5 WRg(&U:8/*d7q:e0bI%kRX " a-].r<~Woslu sW}:Y%һd/[lߔYSCl&T6=p_w|q3sDp0u}l4vb r5s!wc |Mr!R:bx{3ք}[>^+^Tw XDIk+6ҍ#MUgv}GjQm\"MV6/ vsոs'hpQf#ߊgl{_,Urt';d_s [51lì P´-)K__k|l:ؓ.[2ʋZxAEƺzbE#ksc/un"LXehk,78hU:ixE'6@n9mg_h8Xf|6 o.B>˪JOjI=I|͏)Vp9.KD9w(UI6jͳbFQ>7Ā@{ 0e;5[{Zd/WB,KN7tkx(źRx\*"Z\ >3V` "wϺD3$]ė2j_]Ho 6WQPʹbPc+{uC>VKd_FA)"oH)Jxx!ِahv%}&Ԧ|[c*jIa\Ln'bL:50(Ɉo[' Q-1B1V;a#]gEPT_%$0cJ |aTԿ7BuHZ7LJM$׍0_ǬI~FS0j7e"h* )}l_jV~Wt*r&pLcwYuρY0RIL~ePc'}>O󫯐 7RH? w`+RrC:q {q,^ĭQpgb3 8 hžHКuxO"^Mtx+{ރWWDJUmgϙ68ƚ08%C1U.͒}^Tp:Tsft1;aZ\J #_9 ⩄Yf)}BtbFHV,k{ٰ*X!;jŀDpFTXf[]!OM®ŽpA¿lTO( c,!biX6quh=-h/4_k sXbzv&f[hN[qee$U]H >itt`ftPW:#7$uoV˥saIA]MI#yY"}T%\$g)0|EtB-7K3n8w -q6s_'_ڲHw9x`jOe7vՋ!YVt:]E}Jv W+yޣg Xvyum+)CߗM_oF7{QVNSa2sp$iډEti4Qx0:w[znсr .1Y/LC1d`;I萓#$=ptUE=vӨbx($6JUBGX=W\4@R_,!5n(^& F*'Ƒ/c<`Q/W xG~Й Ƴ0pn"{?d$3dž\ ;rjYGFO}Dn\ݒ[~C1E*з]!։fK9N䳟QrCȷy# -\lM+fІI[5J$Ho;DQhog`b3o~ȟБ#/1YT!8[ؐ)% h0wD7_tiɒ ~P'#DH@qW2O ҂ cX |[2_ra Lj*=ü$ ڜ*iWpFkg|V.tiB~tH}b:vf({rztWq>㻾pc4%e( 23umhBs$h[ XITIZ8;j<yu,h|'K/niC*$\˔eTeה -VtO4ɋ$]v7R0F"( H.|L͛W6# ,ķ:>>]yQ\ldP{ac- T+R%^.L%^:x|42eP< r\O@"iղG h[$~7 dQ<|/=B^۬._/4) E'>u*='*DLS(}Z/suBF'ڿ|Y>_e'u h>WG  (g~!|R\hl6VnC$}!3t i&,_d I6K9j2'ttzhvE>zcBV}VZ@8x\xh>!yz?A8fO9(]8袴UPuV bW:zLhG+BNBf1d(R!R"ϸxs "')xFs:*[ݶ6$3&̆KKQ&]͚E "CLmnA#~O!Dg;b$dox j/ 7U-5줜NbK!%o(D Lɨl]5{#FzYfӋ}ZՂX09dy,h(bnkpoVl:}ټ;_fjs Hq0}ˏL)f Zg1rHgpY9Q52ߚ a%{ $!}o,-E>Jw Uс,*d$ 8ps]7p6‰׿1OoV~gJBGC ==һcfqӿB=oJUl~l.=8/FI8Hȫ3^h _ 5H-dQϪ$\7q=/Jإ(:h4ԙr~ nj7V'Srř>]c|r+fD7*ۦtht_4AJE*A#SuH)N-uLwyb\p ,E ~$sQd{~-,[ Cyěɿűm zkrxQp9K3 dQ)yJbĺם՘o3F.~{ *ωD[zG2BcSJ!#w tm\ f4TAXq40X/J9ZV#'LPo V}MTj1MMvl-ɀLXnXŘn O:WO^7B)uVJX =ۜtRyH> #5_a9$xj.#1 5~?Y[C`]9dZөE+B|BCṉg ω6(m$]f,*2D 'DmAx iol+~?hhw_I\@.yYޙ4Ys-Vu'io5c_`4(Dz.hx'DCKc-q,B&o iߟe61Jm<$%^ 6KfY5* ]Dž%54XJ58#kµ4BcűE;-?+ų I8ɌS\c[ g, ӴJ }X1 t<CC1>XCd-{= rV8/ W]T+MxiQҔix.7Q+&j3J$bD-2k>A 3W>_? Gsk7E@5(>\gy f.Tް'_KgV0^NĮ"d4_[q۵1ݗ}rX.?\/#LR$O>‡# l9S!BN9C}  <<$,CT)g=%2׻'Q4lZ1s Lmܰ mߴ[i@5VB8gKA L?"R%Ot4`U<|iͷ׾ϑ o*R{Eu0'jE[$ǮϤÄRs%!ju릤q.T^Bc/G۰Ȍᦰ逸4%G\>h _jnJ U %K/0,5}RhmqcٍdLŘJ}\C ;dw':bϕ 2\_<[|B8 ~h$ĚG˭vOMu:lVŧ_p;0X^kj,XҲad6׊<a)ƮSU4|>|-Bޠ.|_5/xaourGkgVJm"SUey׮ xnbMo.]6I\3Z@CU ]\Dx#"'Y^A/* -.rhJlƖ7m )I -ߴܛJ߲G;w:Z?ЌYq1^9ix[<0$Yx%gi8?Z5 `[ϵ afP݂-kF>aM* WmݞȒ9;^;"сmk. Vϋ;lZGzۮ#՗{D87 {N0ejŚO2bIor~c!qb}/ѷ 5[ԨuJB.Lg^FZe@HKOǞhԭ+>)m|L4[DttbGPnHB]|kRWV = 1{YU9 IL )ruygePI{Z#F&@yQE[o S^>KU8:C7!d޹  >؁NO^#xల'Ȍ~Fϒk"pN7G;*}F?_a-\yFO^g6ƓF]Aᐢ8R 3M!əd岝Wa9b]MgG&{knXN]?Kiuu-Ł|o܃[c%"[Y 5ߏ)%ؒTY(?sÕ̷Sx18dR텽F.@Зh4@pS#./jȦ,AZS =z4e&dW, jAAn䒺}0Tpvo>OW^DǮ(c,A"|qoosgI7Д0;#?0|1v}_QfH!lq$?WzpUE?2ykowAEuEŹpNC5G(.1 rr jbb3bmZ9h1]V7n$LYMED2}d(yvB0 KH%'!šA\LAurq|ibGSȢbRĸUm> ui<Ū}YԠEė2ݖ],=8>a5c33Koђ$W*qOč#t o Wj?ܳ3ξKbO<{<|1_+G:~/x]'N }-m'ISc#%-݀Ȥ/sP{Vŝ1q~xN2)MIN1\'spo')Hv ~+=;~U;?8jMm_%#JJ,p0+>d2*(9uopGrG#_v0ǁ-"D?F*:4 Y.rw.[""J4M_=.Ch%! [)qu3" PNꡑߔ*;{_idt{n*d@\| 'r840$:qfcPΏok}2J򭞭2Nџ'Qa(yD&zQHꑫ^ DH>x=H =^AʰMLyoAR\)҆6N9OT dQ >JR(F9 y=Qy8S#0-#G+kر/r` `De+2^ 's,awͺad*) #g_&K.S }d%tq;;{Eljƈ|ynQu`PN$N#.8;n}GLz:$ kg\\%M)$- }:po查,/~*ETZa^{ mo |nFAn1Ր5mD.AC&x~i` ҰVA]+ Tr>=qG/&MW*PI>L4Գt,"5`J0s6"9&g8sy9f Q|+rk" QlubۅY!HO:lgjs_8#tib:q|)ԯ19aQXq xTȄDQ'l(}Yk"ٵLy=`C~ /,F{ͧu=p2Z>7gn;#ȱ9p~k{[8SƊĤ{(rYkBӬ}#Ņ5A!6ڍy?[\$N4%i,Xtl'!F39(~En,2:Dq fL9,1M4+2EyeD` IXrD'=5u(d{QYAR' #_''zP_H5T'U b[5# W+غ\c.[K' %6>awV3Z{#6F٬<;̓dD2#h66][ZIM; q^#pб҇hN2r7WڛqVidcZJ|>NtK,n|'}fH$S굨p@ИZE=0xBV2xv% 3 UA5C]OfzXæ T]Rz۪\]-3&dN AO4OB +zo„d^/6x 2;wDQ#* ׍,jHcѳs[T?8߂x+Y?XqiJR+N_9 H⊫꾲Bc'Շm+GVX5f4g-D ˪5mRI5rvb n?`mFTԈ{U?xx m"`s3PsR`X`{ cZ@YNҷe^_vHK܂)r4~sWUp%n❒E$׮30lVs_Pg Gz ن<7c4[}3̬;Hn<;O;$NJZIZҦ[ :;uX#/b]VX5ܥݮN.hR|UvW zoy<49s?A1Slo]vhJon8L3lgbSH/x|d+Ufj-vF]h>tRo8$ei! e 7e O"~wY '\z:1Uͣ1W<(@;' ͠bmfJ\mz+c ,?8{2N- ”~0 (W?5װ / ە@BG!`^N}mEm 4i 0]D b;z5Mo\/lYZ|fFǺMg4JO3m+v<{{=?}ofvk'|FJ[#Ms2O0s[i_|wV2;lΕ,}6%c耹S 0cG?}ĒDo1 tBh @8UمIv5pxYhРHFߋ옆rFlR̓v15Zh7܃^ܸO)Z.K[Nɜ|ծk,A5 ٹj(eDSME` V, FN Jw yʊzc_]V5k@^EM伿=Z쳕 5C-wuo S C/4IU! y:@(@bi^Kc 5b5dcXdw! J&蒣kom\I.n}IH9uK>8;mI[ xE=`;NErdV8V350>5/@U FNBA1p@}nL|taJD'O΃aAYŗ|,t4~dž%M Ռ WDJ$ڴ7QAiG&=:Gf2''T oxK!:pVUsWt r!#{QAASl8>M+{x3p@]b )Ѷ$L­+VЀ2S)B+]9reψf +g̭=&I^fƚ_~je댩Ԓ}Kl6J䷥azB@`8]ۜwS;S%_-0=Eg.-fiߠ*1H;3JT;:oV$9NٳF?ٓFh Ha=d0_[{{w{bHQR*Cy l$J[4R) 2M `!LT}5ՒJp6*!d|"w оbr՞ż;Bݳg?7̀yA7'f’ m\ׂ%$09I%.T*"6<9P[9`wr1A⡪<ۍqS&dw = R[/:Xu"u.f(A 4瀵|mU\K8hx) |1#&/"r+_8RևR8C3K`X+EczDs7@=>fBEmS{Y9A*H'>`Z@neljH Q_8&LhC5k$J2du+gԱ#z !w?Hv>rqg %A;#lOB<=]e|CvGHg:cg\9+})40nN^`C(LV rQ& {<8ѺvȦ޿HݳIz;$R{+$d e9Cq ms5a>]Kiry DiKe`HnJ7j㌢3t)K!B|{w>cZBYśpŎgt%vr_Qgh.^:*Uַ*FJ _ʽRl/GTmw)q=3ܸB!+i]IZPV7XY d݂{~ zg*}=& &k5,@(ɮ]@fՂZ TUDY(YulD4p11ӧl^ $XӨg4nHVk4Ïb66!0t>dEW&jM1d*v|ZRzaL}rTNR[ 2͚nR,7d!m ؔr뀢.RYnB|>M Swx4- ]M+0PEw5Kn <$,'UoR08†>O.e~4I5EQRJ˖v@GD|l8JKVOSWmE(]sSwb7ʯz0O_Y^gԏl? lM/XTL_J>MݱmH' Aձ2ad0+2߫2z&59 p"$G/BT׈<ۍIu "7Ñ+g鍩 [JK zr'*+a-n!BuCn'XZw@>ϧ-';y3~ 5xⓘq=zrS6.fJL)=zgYYq},*.1\w07$4'CE9DXIkU5?E/axTYB5o4e%5L/҈ROyk@ESb=lq2 >P?bRv'U-l-z,^E- L`zXno>>嘤l㴺4ȘŀIV/M'+@S] 0 ZL5hΠCǺk𢮘7!d|llZʷ iRzvb 58ؘpB?[gmIpw@ȎxIQ<3="R B~]ʁtΦ}})(\xuj)lj(Tj` viQ{NW>h BF [rί#{>Sg9[<^i|}r75 ڃUi_J~wEiۛ8I5`G'UÓҝAbpj6pȬ+6u|. wnz$ȹ昛ky/}xIp[ʍ8 ǹ`u y l@Mu%i) vDlRq"Wt6[?M!]s9k00Mfb{:vf7Y̛Wԋݓ-Նݷ;%Ǧ N⩕PR|0Ujʐ;osBNREعTQ2]Y1E:Ij,Ʌ}t]SR9FCyt7>AFnٵc0 ԊUV ,mX(caP#؍]RҬ|0;&CI.>qOϊt0~ZsJZhGIDwqH}tΖ(C:Ę$u $*^h#岕ol{}9×̠SXDUTt A .= 85%/n?pEc3f@㑒*θ} +3J[e$w#9> $FgDZD4_rnGkh#g>_iI4S%'v(wӼ׷gj a kIx]SPs6Kv7-֐8U'no붅3r81 o>q[s,e UrV䢪ו'jiQC-E@"` VTDU)OwWO^rv:mF@`Q~;ȹ@@~އhYH{%VF͛uIM1ܒE2΢2^̙ ";9:*hT6R#DA6O4õ_bo"6tN4"c6j@R=!8]b@$:a,jo[|@,<_-gs"ѵfϡeNl!fXȝE,3ú$(h r^\}hO5|Ե=9 o7A5vcTC)Vֲ|r^m)A]GodGخKȑ Ӿ¡Q0lcLͱ R5B" pyUW?m r#t%iI쇾` 3o#N1k0*r:wF3̓ 019jo/@xegߐi4J͐>/ 9[A–8N}ִ^)̟ʽCx."Re`Ct(W~ )C\~\L8zfUIX5H @/L}`8X jnq7JLMK:B^иso̠r 3/9G|A42o@ ˸iQ^^2u"FPMv]$--lP$ %Vc}N-o vHJ@þa1h{$CW9}tCվaAr :A`NxUBK_,Nha'k9?_by^k}}>I0]V.:-D<ärdbmv%^ T~%u Bqp*-=@{ XAFa): 7\)7yv}A[Sf+гc#W;RA!m^.5De+|;pK'PJvM)rj;e!G%q }VXM9yJ,T B+]&i_4<|7kv"-{+b.Lb4o7:Fh,g nKKv#R4&ш?l'^֐Șqsւ\tBt--| ($(:mQUOy"|+Mk0"GB{ )IGFQ_[).]%Ҁ-5HuXt7tw,)*~88t&zϒp{y0b箴Niu*Ε& !@~<I_qtV/Iדkj 7$33FjPo@"iAF&[R*i(]Gd~] , J 31ŒM?o `S.d 6L_Ä{aMəhpbjƇʥf3]8$2e NXtRq̙cȤu M-L~pCP*GCG| =/pUqQ>@rh+C7jE֖ORhrr:LB)ݝbCj/P1A&BӬa% D7O( %.!5śtts1w 6mR$~01\9. &t󼅴 .51U~ l|\*5zȑK6Gc&b!@ue`"9JtobSs,12lT m's+H1dE/V ! k8吝YQy %b9DW+7WChzJTvL/=4zd1pYyvpalmmw}p}*.ɋm@ v$Ysp逨PPn+%(^6z%cR',J?2,%1S/y%ME!Dz~kz6fbHn48GY#[A2z+džz$Sh^Y̠{ywj}5fbXbC~0S 2'N,j;Ėl0Q~A V\JNv৚BtFbWGklϐIE1N3dmQȰo_%K8(-cCN֋1!`Y-WY^B JGQE-5 Tra"r/@63ȩ"e"u؊#\~^̯g:SL9 :q&qYi~6*"e9[ׇ?[J0# l~nϜf#=WXO[O2|֪,I~PMOQɝ}پmܐ|uBFԩC:CR\q/}P{qo?5R ̟XzV+uD1? {/Zq$B% 9 IoH#+p }]Kj'U Lܕue Ǧ\#g؏#!qv1Frl#!mU Q,A6d%iےxE!9LEW4RiIK~ě(Bb#߉FZ b`8,xIdgz^pk ٵL;E5k:0 ֡k$ Jc3-d; /n&T-5m|6:h k vcwm*䅠ycq+*wбW;FHOǗ̎Xz$q8(cMj%2.o%N~3t y{)ڱɓ K/{ÿMfFlDIB6^zLd_7M@\&@,g-.#Yf׫UtD䚞?2Ռ-r4w6S@Ƞ+%x4yj'yb: ٦j <`~-0S_HwcwWbpVH F]c*6|(ŏ "VuK귋g6n?4Pc[7liru}j[j\*![/"c*]grhayNMciٹkE.jL˶O0 4ϊ iCtǂ֦H _q/9XOYjC#\Vb+1r_j+ tuҌADd'R)lBkѨC^}Ga&l5A|P^%# z_b/wgkQ Z&Z/;*6U:] )G[lR[6XlA8>8e`,}ePQܰ=G$34>0(sg g{3LOQ69e71mvx3|.7 )9^9ADfy6Ҵ ڻm9Bt axJ1Bjt$&Uw[x~GatVY%ǿ@bMb߮ 5 qQ^ 0)S~SKzg7~!# 8)נ Jf2.}IrP"ԡƽ:~ 9XeyƲZq\Ni7].&,s,[1k#*g %K]#Wo]cicRiʙ-k1S׍IUU Ɓ@ bzbIW fゖT$U^LV Rf W'Dasxi9#9]>G{$,Sto vOƪx[1yn/Ѥ!e՛+ h@DDPXXr,KSٮwG5@#؍c.aӳbg3TL?I!OɵW.| nR00΂uh&XV,jDZ[}5%8Դd!#y)b pp4G4-! EnXr] } ZxCMwi.uEmn%7~+ON7xK4#~OMi% ]G],6Jx@`9ܖRWB\ژC'ipwGy=}<5+&E)Q7n˼5NAkH?mɱzVꇷO]| fFݰ g>P3# ؔ<(EtO|2,P#`jCN=y|^:ȹ[kr !YdTg8:XMwͫECSçQ[L⺃kiϢk>yp[eCOpOm}|0:kWUT/U/W"pH(Bz ,Hc$~aPyzܶK+H q#:5hR(h6cVR"V(@ 4G*֑u?Y$e#O$FO+HMe U{[k÷1$vߋ=Γ˒SJ) a a{qo4Y we͇²Xyɨ+O!՛  T,s=bTa.7;F  trl0=n0*IJMn=x}w uZ)-߶~':]þCs7伮䠜F-WIџP\ k3[i'Um>(avzx꘾j+hMqYTބKX@ukgܩZcbZƆU¦/gŻJV0um j݌j?o.Z~=Wȑ 逬0NMRr ܓ6&u"ݢW#qvo[GUfQZyaPM[v_x~O){!]]-liHro}Wg Ġ!nZ]^gA7OeTkf hԙp]=&*= <~&G. 6⤂rJ>Sߋ{n\QLIhd[I&+Ah9@*969l5 ;R"f\/vȃ02PdY L |Wx(M9=0NS-,ጘڙ_Nd?ɕ.Xks 5=;&}O=YW#L+)'a@΀KԀye5)fRM7@^„Hr\K,Ea]v[]J筕NZ82¬'8Yᨤ( 2] I9^Oe f-GKOm];D 7e>ExS}vq I2mdWHe-pl5/}f~,Z1&9<S,_G_ 7ؘe$g ba͠iTXۊ]c%Eb&"c&N7m j֢25zQ]/_ u^HĉEx% ;1q?gȵ {hn ?9]ŧ/ mT\-)ƺyc򰙭k]:*@4q̏s#6Btlj 'sGSBQCհ9ν0f PS}[~oG js ''2G}j`pK>kx^OHsł 65JY#I6V+vjUQ>8FN^i<8SjƊ=Wϼenv%V:E]#D۹&!5Es%9o+nR4Bs\_î})bTYHNA@;_ؠ!72E[Q)vLu1] gA 7GL! OK-;t DcX</iC ")h<~TmCZOOE lY DB'W[C4Ռxh^ :>@oAeO[)U̚~%w>SFyC`8kw3ܷQ&5|&}&)+lU*wZ O*aPmټ0'0Bū~åvÜ3w$]E-݆<2>'u'@:Qu}7wnET%Tlk쵒h+ /hSKe)O8==k(xNit ao6x6 j1qflmU|/{B(?T!BRh셦D}\鷐 [ 1xdI D6T ?/zdpNB ɚOxlLKIÙ9h\]  \ v3/L(Mw1kd|]J-4ܦf(z1" h=Qb띊#R!{N\= h"˻XPq>)goY֟'߈PB/L*ԎmhW}Pl&1ﳡEڗ7ng@ *ջ+ۡ.R΀ 3O%'-'*M b~Z bBw,=)f[Btƅh͎"A%Ӝwݺ@',kL%<4U\hlK/NT_j%tqT"!YyEJ&RIC9\_0[s wގDNl5P ;Hٚ. -Bk4!a\3k膫z `*ό˛~[17續t0Q=q܎83AZu;S'B7B)E:9EbDgoE}= մzXUA5R%֗Z ^UCf 3t`Tn!>sX̏.2Ln|uOcP3yʪpj5wGarT)+a):`@-: ",ͻRont*iTԩ3Hƾ6Oa|$R8Ⱥ\Fbޑ\El~{#zM:K `6TE2!5wP`5g[I6nzg†=O,'j^?ZSD?lk LWLaT$4'P BM+,F5 pFmV`'*&|0)8pξAfƸndzGIQA/0I=~w5Ǻ@l|E,+a+ R댚.G.;S^nݛ0OCi\)yg{1#4CGd=DG[.Un1HCrkl/rP]hMx(D)Q6P]g0[}X)ASgP6¹=)%m`Jƅ)eڭUD-ˉ̽6ۂmѕa2؀ds|;5 8ة"0w>gvnιQ 1[[sZF*/]Lyb0qA=|pHp<8Ff=j9#[W Z>mS M)a`T2;'AFe̲J F?!Ӥiok-|Z?औT0u@~cfynYS+AK >,$@p͎w/ :-$a|V?IJNbbF/chEoZ!iB, PjW1YB} }8 ji|0D]U+ FɆa#4b;GM6;d8P/c{X' ȶ|19)ak'{j6'ŏw;!H)i49W8lSCR׾Y:Ԍ Ԥ aX[!6U1^:Wgcca*sߞ5d1jAm$ގ I6~X2X%۸@<q?U+]tNcoE 0}|^?W!pRtY3S귴X,W$~{\ z ek"D䢒kkw 4E~g.͠uJzO `" Ne&cwkzvM\wUg5%1p(M..lUx3wTGj8^{=/SՌQ@)֭/k!퍱( IR@b;Gٔ cZʚ75[S}2BObY=qBW ӹc)pzzUǃfn\J82]Srmܣ񜴚}ia=VrvS 2mcWfPc|‹ZVa*&8?6^B ʹ KJ":0Lzι]9ZYHl{Img>̅Ev jNu\jc!ß]Nlcx4M2Uz]_@$ ݦɈgA(eH ưn C@ܤ*-4{/kp[).DibG==`kWs;`$ O/U>x(a|~4<dP꽇ߗ C@(611Ur_1޿ 78_¨gzajr+ȨM"iy`->J&uq%p̀&%SdmK\q]P9Bt33{ cr3,[i§ Զu܇%Qi "eX"PlNF1-WP^K8o)isp )O5Pv|bZ5=tR.M瑚(ܩqz/AüLDX6ܟmf='QLxAc1B{eO|Xu {Q6-pDqOݳ$~fWN+ S |C0=k2ԩzDOM ϔƾ;e):{]*yE Xns䃈T%g=78Ca69`VB Ȳrc/a] .f *fC7|Z,^{0ҸsF3( $&C!,xxea2=a/v:J#,_]xX\/%&_`@ BĜ,={FP'p ?C* nJL`E"$4QPE!IvM|RK˸ 10LnJõn.wc]GBqZpzEטm⤒gOQ,-Sa%AơPNĒOak0d PW1Tᬌ;*E8v)W 7D/DHQuxTaH c.z y hc/0aR%X"0ML=# :^#Z-\q\M_H&j9](HI9ue=ba8Zc;rt<(Kq H(316s%v|< ɘ|燪 ›V[xB9@{8|V%c:L6J~+ȑ..f}+ւq^o in&ܬZMd{X?b 2 wH 9}[A71PʓLfC lcW8^n'[VY.?Tc|5`~ۯЦٻϣ Ֆq|^6×Ey Q{i9pGє[ƦMANj_7z&D ߁ʑ82p"Vm䬬Jsl@K2-47|#STk;c4.}8\GKrJq>AF/O5a Ĕ.ݖLUa_K>Gī?s `FJ+F Wl-=Ev5p5|;\BI*NSzZ qlOO={p3%r=6(VGP1&_<_щ!䴍fo)=ZPGcXGgq OBz/a>׈]U1Og*¯)n6򏃩j|Gy7R(4.'HZEf2JyG#$0{Uyۿ㹓֔벜^v%*n)}T |R; Uy> DugTw?,)z;Q~F.52ůF[7qt$ێ>)92cbHeqz!"<)u`V -~_ft ߮Du񇰮V>uYOFRYI2i>s*WY$-^4B&oYcQ.!@'|5A #?Gt(P!ܐg\עSji:[uiSnoYmٻA[І-) RĨ.ӏL6_lYҞv|bĽ0 lUr9rƎl>+0 F,fpD 8>xOuD0u]4&)=Aò(]PǪ1$h֕Լ;v92#3\G3 uK:[)0IORsK|,bЅgbq([gwtsK^ |JbvBP):AonK>͘Co=¨Q4-.|Y`dMqcBmҖqO:X/חo;|u-o/đ:]21%v/zgS+I]VYz\+M$"AURP1a geyv3 RpnYC`X֫tS:`쭽  feDhNР)`ov|q64B 7A;b(Ӆh~k4/ʕj鱑`} :#;t 2I"CrF &!MR_ӱy0uwt h/ལ}#A]% 8#l-k[^ 쐵 y rR <[iA #4;6BtB98 zQUBV#dHb0a:HRKIZoI&S{|EvN%ϙ*1ȞncB9D% ɊLl.Q#4~L{#bi8>?G6%#/럻 `7LS:!F5, ׅќK .GcGo{[^2{ *(_כm@ ˨dv,}EVy N^ R?ܾݾAY~,z{'KiI#FNbճHKD:Сxb A|ƻp,:K .F܇M '^?+>$f+Xlܢe$ۗ8iydfq[6%+2T}K B@DS*';NU =>)*@sW/T]:Vqxtw#}v{/!!W<9<~^Uv&wT5 yt1+q"Q`mW;Bil&kxwX@Qf*Y3NəT\ꩄ=Ay!D1SCrET&KZw#1ȋ}\'j,J&蘧7 PRR?kdlC2]53ͯ5!@$[g[`I5AV4O'bHh ܌4b5 p8i5?fAqDTCOh=muvu|1bI/(Ul:fߒ"bu3ŸFnjPdw/=o!ff'6<"$ D +>l' "y#]p!j sZ%teCÆ=W?U"F'DBPg*eia;zNhM]ʨ@!،Is UB_g$|c8V*rwnS#9 wiD碔赭+db\R kܾ lCc?[ ,7hVc{ݱz˭]b.'yƻT܃$i˄I5u*oe@ :Ϭ_NPL[6ilir Gf69Xmg9ĜRݬi^ 6T. 1SM}Nyh*(w{4=Rpyq~IKXqU"y1fYڣEeKO7VYKOFq5LNW"Ik,„ Z9l InGQ[ iuw3fiͧhLuOpߠsCQҢrCe+aۣq3>UFL~0Nޔt' Ws_u@5Aiam6OSQ?X˧'~SY{G3)8b<Z{+w (L:wxFi%DVm mk7jD:M!Y)yՙE 'VD:4m?TGn|E`!>|mZ+K&mC[ R`Q(4a*NWy--}xJ$9p"ݻJ3km0*s1=aR=\.X6qV(ǝq1_Վ B{,e2n{985 iJ]֕s S-y,,>Vp-wZJ-8p<Ĕڗl;;d8&${Vɋ"*[8{q ,5'CQAK:F Hޭ pmɎqn5ӡ)cf-܍|Ǭw@kO;NCLzT2\jՕϭӽݏymW4s[i"ԴwHfs"3M5:ݿK8A7"VM}w{ ?COm_bw#bj_Ig3;V#Ghy0@#>^BneOˬN*P@hiૹ t?.8@L79DbNja5eA# Ey[#9-<}sxSK}7vƁ ~C .pQ*<}Y|o^O4"YϕmtHCpz}1K@O~aiv~wn$⌧C5.ȈYe۱)%&Fz\L,e#kÇVl|D缙 3A#WEjuX=˃0Us}u,9i6D޳& HmOiB$FLȍ|,n@Ufαd,Fy(hq+l"=nr%y C?D".ɴi%uHE٘ ~N|v7ľr]v\=^S[b>!x'ɫ<f )Z\M2SC)D VGs\f/ tL쏯U $".<#K,h#+64CӦqȎV*htq==&^2wxh2f[*#^YMzHֆ:Yّy͐9(ʍkOמf~*7"^WJ_ tY~+|F۶ȟW lg/y;k%5#)f| <:J.-z3E4 ]M+;2tF &oLd]ۮm_o}0Yڥ" ZSN As ;'b}*Η#7,ߨ~cH})}`& AԱ3|XnM;WtjHp6VjuRAJ5 +6U˓B]@Ǿ0\1YQV_.& q{@R,j˶V4xQzb X}K,i"KP!Dž7FIA#&yImKk}Ĭ-v@A*Cz\S0U֦qۜ_Uq*yIݚslyi`inE6w_H "TT\YuP>݄]dNe Nɖt탃'&=Ѳ 9ZFŹPVv b;h @ޏeW SK7TmHĨA>kFt#7Lhb$o߫-₻i&Z% 1<+$ S ˿U4Jh)ʐ1U*I)U􉺅ƊrBIv#D4A%3H˅]-w-pKh,W7m_5Q%ڇ陚A(@!Fp譖r]9B0^=U֯ Zm%- 2jߗi+=9 _,QTz= lXݞe'[)‡2 Cm+k={O4pZȺ@ mN+AA v뫚ZRR*):Ѩe ro),yo#ؽAΪu SHdФpOG<q3~i K2p!8WgJf$]hk߭ V-]Nod_ S~vn 4F)J[|5cG*rvIm+OL2\)1ӅSbőzv~NK.{:H:sV4>WLF-eM'$bq^s1lCǪrP5O9/?I,+UѹJ6ۅҋ#`CUYVv1za ((X쐴|aL`mV{/M폦7!|bb;4H?p𲱟2cRܔ0+!bgF!&PtgɌ/`uI(rv7> x:ܹF`OsKB9`5rcKyX|gEy+.D75Xe2BoI%LIϘl.zOTBXJ70x3vݯ:淼ByNMa"jAFV`a^ueЍy]Sz!;')~'rld DZ2BΪmV<Nhlm` 7A|deIK9{kb<︕8uz:}d^rIx[>-w#2̙uO$h>J^wkEMi4}ߡ q]ɠT* cI{}ɥHR]WI9$Eo[NrsɻmNV~7gC4.*ip$g% )zI؊ t/$RvKus{ f.ͣ a30vp@z<^nc bޭo cBw(GI }w^o9LxEb\[┳TE(8,#~Y|eƟhC|WFآ!)`dxnQ0T$uW+E|֨/GKq De=%fY!UPWt}YYБ^\s8ue0f'!:blxVKE(!'a^ : Ӷw04@bt6R-6tWplPrv`gmxYx`fyuy6[+£f"DU1l<̗VqNh.vkNRT0&~7Ch@sIC}Mcuk뒒'9hB5nq.@es/V|" \x#o7mqΕ+[iPͤRRf`-}2 ǣt;JY Lw9SlgP941hVm!~Ou3-d/xv*NbEz[at/\P P46ܲMVI& xjƲ+V$As#F! bq1 ~0v FA+VxϓoD"QJaWhէm]Oq-q[7~/kvɣe6Зg`L0(%1n}^̫h6(mL@vsVw#]*&$GxE˯6\>:&%|@ ghðY$;{')2k<ݒ!@do=~';Vx ;̟9b'd@lGdf" 9͟߾ G!eYIPhݭ aY"1`nS%8]"quGH{P1q}9)._#`{SO 2KX!LJimW8Y #T TS *YBJcA,2֢r@N@g"yhj׽Y}3TSw[},fwƇs_(?D[V4aCApvqb$WGJ( ӝS꣮FqOș!xFj\OQkXPY-`MT-SZ_cSjV2C2]Pp=OXˌw?!%F͍ф"rռ+ot8o}t۸6}8&2~s`W1$Ën+\l< 88d<5HqM0^7QZ|\٦eнPM0\/ kV @1vE F|HXn/REU作 ibOKOh Ҫ:iē }VE:N'aBBz(W$ 9NtA_X$TbҷźpXmBu%\[1mײ'UX)lZ(%YJuBB5i\yqߜf4FO͒Esd<{L4}jYIHUK a!:P1*\2aTR  gum3ƫML`؇Aդț1q8G[%I=x?'eS.JxMI#B%JM;tzX&:]E=9SadõkSB͞jc8%j;;z橍7'*$pc>"D+TbIR z](S )jy?-t8gm_JbV-3g0ߤK, Ѩ[V1F1}'!UjoA*˞TCj@8Qv5m\}j/':)Oq8;h :m ,$i!]ݼk]Kτ=}w*7O*Lc8ETer4l,64kM,gNäls4( ˞õhB5Qjl̾Q`gdfiwwD,~3 ڽPT&ܿ,׷,t64>)l@MOs*84:l=;><ħSԟ/锃UK?Z%UP7$Ѭ]hSWۧ; 46>!Yh($>džSA_甩DaB?On#>G>"G | eTD>0DH5M 7HG$ O@Hi 8dOћ21@Mg ]A;U䔸2+PJzCnhJƣxaG9ypv~PC]Ic TL>kp?9bF[欽ۺBU?a.ʩ x4i湹Wv39Vr!{GO?L mZjNRFeܩmUK3,Lܢz?84BrFMԪ7k6{c5BP=3!: )B}.*& セg.`!g0huIh#1nl؜)|ߊu؇l mq`'0O垈A!ޕ.Pǫr/ tzL]ڡ(Ys @|KDFL׼UO؊!Oci[6E]櫎!2 Zx커qwrD. 15h4w/hfh n5BܹosyA*R--QB DޫPNgNu?mm3Κ\-uagq^lT|ŕ` z#8B.m4!v=)#%M6CA '۹(}GMjsh'icm^ࢅat6 O!KA3~`S{F Ix:&FT8E* H%Y+8jrF -V>b}{!e69vO;7xJhXC: qd0~/3fn誋QFP7|hQDJ~ڡwrT3"E>&la-)x啍;$25E+b pwЋ\޾%wam]2_) C)Yґr@{Hu|rb sz%yܣSDġ /}CX(j> zc=K,khG`|L[/fk܍HS7zsJNJ.L'y~L' i Ce74tK7%j@DK.0sq!+[0Rs4ѿhp-{ڎ@S"iQi:OOU0&ktefP-XU=(ejE~M略ĥZn7[S>`3bm9RCƘr]]3*h6UT$3~'J O[z2$,&B@(bbE0a_gvg+ѳ^usLn/Z*3UVfGQf~<ہvRQLM58AzgwM]+hկu%cҗi;؝s\bt@oncw5i(׀ %A^j훑 1vH@cYD3tc逊qPYk`p5HΉ)Dҙ ($lsC\_K R"ZKS>bX"fW?Jw[L -SLU+קI/""(d~#%B-M~='6}ǎfRjfoյ%`Q353ۉ6n45UV;$ya:F` ʰf,l@vw9ZoVD~6I]_ScqbSjJf4riy^Lgnۮ͉m~ Yo٬' &핒e ӱ'"9Ás)YUo$lm'Ӊ#0wV8"#"ZLOЀu+ +Q`EJAl<+W4ڠB򲛣Zl347%(ʓ4{Q2I/er[+x ?xX&, qLlhuP{cͫz2:{ NS6$&w'b櫥uc{8.|r؜8o : rOO٩-/Ds; `@QUd0SZ{ŭ*z7d4P؍Lj M*ֳk=qLIKj 3/N&gBTdEV}ZI.M -vOcqnr*XW]u,7YG nӕܧy,X5s| n{:(oۓ帓IHv.mkԽ~>fMxXZmۋ`zynVKmpo%pT׷FhUO-KUt$x車EVX;R{JϽ0]+)3<#(\ykVsݻlw}vl_q:嫺_ en{f$]K5T' %|Ze[Z~eX4vcaɫ#B1V9@D[}Wpf@@8XqIpF0oTi,@&epͱ*fW1i>a7 q >G?uWێ$^EU=SQ&Ao7`FoM+"N^684ri3 D[.j/y1u eI5#24Gw]c GoT3n\u;2j, pB,!ž=Av҇Tt7{&C!A2k3k5P騽u&fP7ذ䛈OHxtm$ ȍ3-Z'q”Y vJ{O=p: ?=lZ,ByVu^:"(`/M Yjd`'qdZ%0YYƕ=%yHm^MqO!JHvtһX"ZqċZf~Yn؛7S7q vϾs;ϪQ/xSm@-LY*[fA12os^[\R,Z9OnA>2S G޿DD?B Oa X-#A*'헊]F6 (˭Is KEH"C=|7Qgs 5 g8K9vv4 J)Yq mїz(Y]Y`ySF]q6 gS$$>P)N4 4ź6E%p}bH2sn+r۫ KH/i*v t3#*ۘt-`u.m 蜛KkA~^YN/AR儡I;od jߐwOȷ 8z:1b;j\  6;{/U5uEhF5E;I1KpdUj6C!CۢEv >ڟ_8hqI*cɥyg m4 9T]y< 949k"<޼nP0(B,U,npY`9\D)\'p_q79 q34A WΒyk?"/HLIY*u)D5!_"gvs}?w9ݜ4@JG长+w WiY;BF1dI0 ob$َ>vHFTD!ɳ-=x:xm-?RMS $R^vLW`š3\90kz!Q'oH\wF f؏ME d쎥q.~.A:w.@,}xzЬeaЭ!7&M| '${5e}fF` Ε͒zIg0bЉ0= ?AZzc % c5;Foϫ8DE#hU3b| sR %1מ*m^b9Sqw!=!=v&%8Ո- ߿֝_&Wrl;H0 #TrCQ'n<"VC&NR*>t$ԣզ{M'PH<2bDȩSya>|݅+7;ieϨEc9غ4:htꀚ/r ƨa#[: 3MBYʦ,c؎՞6bCf}x{c&_kXN=MA ?!Br&|٧k_e[ 3+)6iʊObN咗Dz>>la~nэK E8B8qj+㦑- :lj:$` u׺5hڙ/}KFeKQ$ìeg`nkp\]085ݼ@WNDoL %1(`vROȳ^Y!дq\k"n_u7ҩQ yl?>L,cJ]{S`&:5)5zVh o+-.&'V0a&Nw.^ 8N>ϙo"ECʮB-$ֽ6TZ~)niʊUuȍY}8tAaq.YJ>'j.nwr8 ^r5d='`Tpyai갅=|;/ᆎ7٧[.BBm_ZJ*ㅪO@}?Dc僜:jp|UΪ ]e>IS=Vk'\?{A%qr5nT)?|nf, N>yE{K Ս#Ui&sp@Z B?#3,W7:cuiH>u+bАTh'΃[l z@(aP8ADc)W0{[x$^m{\.pYqNY:",/]ZDV&A@j 鏃H&d~xlL3fSem>Яrw=PKǑcS6msTu9{+08fOV B0/'Hbg)BiGZQ)Fkm+}T~aAE_$ qþ|^ `+!\O(O'op0}ciĻߎ|ne?H Sf4BHk!vݙҞNW4 AmYEToxCTs`Tѐ8$oلFlʶzcrԑD& * }8#NO7_9I:mA;rٲ~jLG SգiGp5{|f3ť?!PScpYM{ [0gڤD-R0-=gIAj.b')t -r ] J`cErC'm0+7~ 1 ?0{j| xCMVӹmwߊ(EKF-.&01p%CƵ\F=_MjS1(Ke|c^4K\`(/yY3sspm:I- 3F`uftv) ➛fxQt:|B)Hna8:I21q 1*L6Hs|upߓ YZ -pQxؒBT1`c#O8sZe c7&:K-起 ޡPDy/k{`ї<oDp 3ƫRXz[ e=\h6vOakm#f3SŚH!d;b:)M09I%Q )=] L`tQ>HM+^`#!|1klK*(Y!T 14yTKCP-MQ V0B^Nw;k6|J)Yƹ=dGk:TCK7 e*UphX_u~fZ;dNy r\q-]@1tk,"9u9w /ʶqtZ *VB wUlYA.Ud$0J=Y:K!G9OD* mϋ NY[$8 ʛL@iC?ݳSo?b"2,Lr[ݶK$YVj]ܜm ڔRT E .Թ,x'W1T>9ToEMqiooJ4Am=DecQ+^Qm3v3ErYeBʟP 9^,}mFd.."t){0zP x7O9Iˆ*R eUdJ4͋6"0LnŶ1Ԭ% #N?(n )jW໔*2MH ^vR:p%( ɴ"?Iu떥' 5+w >0@#[[hfR6йcoX)kPyMxwSK89M <:6=_[UM49YѺZB9fwU~;OřGs 2vl$ j\MI0Hk70úsKj"|r:.)>?lQ!!f٪w k|kz`4{$C ta*,W+K{7Z48PCGhN dѺ:^Pyoid<۵tP|. fModq gE,HXD$na˿v˽40U `?H!\705:$YTu9Rkв/-HtG SFhͭ#:*Ę3şmn='Qa+%T{K,$IL-YZ'3 r&ctrԲFɓÞ ?'kfxP8ZW(Xcm $۪M6ĴW-н|p<cl<(S#`0dVx5\Q?\=Tl*%nPRP\檹~s-ظ^4{fD;#Kh3ʓ81uamPH47Sq$&éeq{ʌR|xlF.WA4np'Pd~4Fp*aP<5_?"e4͇h WGk?Xe}}GcM-~f;HN(x=/ :ͣQgiKxgi3COxƪj"Fa9|*UO:8qBi؎4sU2(TϮ$f\ś+:Sj@dmoَq5\>P, ,p\E=b|$Q&Vb派-<.5/;UQ ^l\Uk%ݴ`X)`Q{/Iu>n^q\6y2io̯vT5D6nK]y W5 fH &҇Cg4 a3'Za8MdߢyA8 ǭ%Lmo=6Y@0J>#O/=U>*0?}Bj4mY8u#)L=;k F5T}Լ=mB_/|:Ka)"HLv+T?mg_>3yg)MgGueγ6U\1WQ,FC;W9 :̈e Y c4PVW<hX*f<;P1g폔,: V0TkH48rJP+AnCU{ִ,?@1q+t?EaRKο>1QqȗaY%c| u2Wk1>nǔv SbLU% 3HB[KEBb{ $F |ÑQBsk$g~㡷TDlhxA jEc nP' mn$3@._z|8~4pkGH,/Q{Oi2<ɵ]#PbBDTxqOϯwI& h"M̺ Fpy _>/SՙӄszhBp jKw;9;QC ݐo%yFUIXj 亍&RƖ䶊Cw?=­57쒱b\Bъ8zxJr:NGSV/4#v3fd|n'ThUS!*k۟Bd#˗ Uoᣪe2Z_rbʤ;*ө_2Q3u*snM?A}TNyTɎjmXEZD]KoanJ7JbVdṑ|L떌Z5қ7%U8fH 뙒d3™B}NbvJ@SJZ@%e>K 8is\ @? jN{V t 5 G2up'(&`Tu3;~膶 k30?&o#7%Uܵ l2KW"뎫Dɏp8V%2IT/Do}Ot["A..t0ba{'5\\0I4H]Is"rߦbKrZ!~s_`̣J!m7rpseK"nx/5AŶ|N0M-⒓>wm כ فq羧N\gP"*禂6L8%Ls+>"ACTy˺8^&x3~ٕnGHy k(ҳ|C<e  l|;D  &Z_<8a{ME+Jg.upV nJW':R< Fs-ާW[!S,f .%yꎹ[][MPxxv?E'ȳ^hzpÞF @fȳ&dqʾ4چ6~=XxbRd:i8e|jb`j6bfheSu0fk7R]UKpf ~YVrTPi9 9Vc긊"J->\4,rge̶Ho]qok7rF2R5wT?c4:zKqMCLLL'Ֆ ՙ7j[<8~tΨ֪%3ޕl/uG{B(^0qSt- ~GAˬMWB/DnyƗ<61WͰdHWk .tEg&.Rwב/\m Y>ӊ8yԺ>+0kh-2yM1duQٿxE^ш]8,VR4q-uW Xψ/sz7Ɇ<# {>|- .:*PǏqY&dʥ#뚡Tzi~pIp"(o_}K\KeyC#;AG(shh YҰ ;t)6|d&_c?D,ŒĎ0ze䁢L+`1r!7X gyS~Wl"*~vIIbpp$+}o(66gO rph .N2d-!4B9i2$:S%0Wja?}e'zU>lQ|f;Hq,W3 @sTHMì-d}5CyFgTj}L!dW1[ d3ΥDƖ!gdk[ {܅x@exY.IdR:Z;1 |H6bq{?RJB\$qanO}JwhCp|[z]xڍ'}rIa^<[x-Bi܁ۗNA,{N\\ %]4G!x1jdr\D(Tcm* D{ UfA00b*VWrCPO}VFZ4^?%;7)hM!)O+OeR W} TS21H FYUVo7ï:<.Ę/rMc{T:zB!mC }('KbdtF -*í眍*u8twۨ>UGٺ86\ !"b,-HߡF("qF06grدesL=qHlL|Zv5Ѳ j?+1i mZ֝-}_юԆVB&_zvSU䋗fF4ZտGÐ2" btLa78`ٷؐ"./&5m%ez OXa+wFFEQMx)WA;u?F.{Ѭz=|QwLyAL|/!t ~Yrd ٩mW2i*Q=mk&'j/8#\m#-zOm&7>XAւ '9g@$k]/%b]O#6q:(/C1`5ͣ^DuG^iG;@C0=tp<ǖD_$(Ϯkلc{V 7Z i$xz' HI,A*An4^ء WBHgX$ 3 +pBgK;8gƟLGp^YLOЮTfrmːz2T'XTJ8Ѷz9ͳ 2mg/iSٞfv--YE;bqؖLڐ+JH́w=mU~gi VKa1Sx,옻FlAV2wPmN]+D1 h|n)(~ @Wan ;g6_Ǎ%AH͗?J=#Ũq`-]g1kķ]n 7ӓi;S2wsr:y[*=Nb)Lӳʼn;:oPO#'PU3nʌpׅuZ7d a|e{\^wK_ʠOHl$TR5Ndʷ>ii|`f-2WC5}ܹ|S3nϯwIg2^U9m\Q6`k6V?L'_Gwzq&s۟?xR5d45;S!B Dt&Hn-X I{)KV ZʊԻI} wJOGY7??ை]% XZ-D=~7B&v.¨7mQ{Öb2XuL6K(~PxT (.II1PĽ(3Y1Wok=Yg3NzڑG5CIٿ$AC"^܀K lÁp:Ƹ J:-t7T]6U'Q'o؏uWlUuO+Y]-a{[;aC4mP#:ȲL1ɣ]~2gG+ici'k(0`|xT1Facx`.,j31s;.d{n緒Dfn\-g , apdB+MfEﮮg($+nm,ac1D⌣Ucϒ;؀`ӕ9S]<:+F[iO۳U͕:E=˜~͏Fmi@]7dWy<\[u'[wgf5)RoڷA=6)$J~K0m vw:QUvBXƪH[c`7]L1FA6h8f0 q+fG1q_G}5yUe8F&{fwC+jOfUMUkRp57QyH?QG.ށhᬇ׍E$vI{9kQɼki20šl@zM>y" '; RS2?k WAdз W\;!ZxHoNVqee ѭwO/j6'HNRgF%xmԫjꧧ!c!`@3/L%bcY⭁Tɏޜd~26 h>IUJa'3n٫Ss#`}YX$p4GUހKDXJÌo/ae/:5-*ܼc9T! %7m Nȍ]_ý( ߇ ݓrA)S3҅A>~Aך!w뵹U=}*J $\1X>ͥaFr'/W['Van&g % FRaX<1&!m.PU_@*\2>A}3N$[ϫQ|i?lǘ).nLmtGscL [M.8k2 zgY Z ^PiCVT]>PsqV?NC@8[]\vdրOa22JU&1-yD4ъ"Ư:[Yc/w<} /D5*~ɰ!Od6JgK,bQِtSt;y }g<ն Vtxd3dL^pu W Bx{sOE %=("Nw7Ž*o\' :A(&"j)/m{h&(`[AJi\\`KaY eJvb-h,k X=),~ lsoTJfBugoG^JLZ KƤƌdo-g㱊ʺ6}:Ze$$=<vqɌ*##e5`T4fvغ dӓ/aR&\QGA-MR<&myj9v9ف(A+~?ɃD:8 S5k),ܰ'|,?6fv]M3 Wm RfJkz@hofuĦ~w<( <^fyF' !S$rd/3aE49ZWxD&|[3csM֪ñ<4 ]ZH!lVfSLʾ|]T~"HXL6TV[{\@? ~vaKSH'%9=l6nr@~ap^d#R%+JDy7M=w5c ':UVN#g0a\rlbZ Dm<-/y}r!MHXLȱvޔvG^@)"M]y*eL߾) Y)ʃ9y5sjoȮo[{79S~!J ɼlISS ]y7V:AkUg/2bS*N{ߡHY`YD]a]^i/Y<Ү͕ӽmԙO5@u84(G 9ٰO`|l>unT{*Q#WE`<{5.H=S>PPۤ ׾ŞA1tfhx5ld.kkKk.vȶVGMu^e [-Yq:_S6t$u{Y$> c6ȱetOR m8$:\e* `?2 T@AzrC\>&svac!6oOhw:խ3IJjzvU" ;|Ň8;G{-^$39OMDES#'= _wwQUxf&0π y}4&_8zY&NL׏K֔eZ W%6mB'u+vH1BRXڎj" ~L pݿctlr d"]os3z6H=ҞEDAn+?3"U UFM_?'K;2%J MϚ1!tq.Qd@&P]Ssvj\LX7Ʃ(D׃+5nTI}h݅#oJ G㏿k$ַ#qwɀɏvU CR\BQs+9TꪅV&`~7c{?(/fAD~8S:Ιc'NIFR1s=z-7`J?$W!<ߚudk~'.*5㡂b$?OJ*QY;eWG cPѓY3AL)cG\  yIe2vEh*c47?bj{4 |؆v8Mʑu , skdaަg$ګi'7ж%ARu:O G299M/1!U{paflq⤻Kͳ9o޾7jnnT,3>2^Ao#])'ŤN9ssE`[aY+.1!i Ca= yh.ʑYmwz@*7E:[;{yE;`M4t;lU,V1dXk ^{\l$q9WnzN *QC1}NAKaOWiv]m6>?U'GuM=ENAq~B[ d"j@eً&{L/Oh&tY߸6$ t~iu_ݗY`'p+FVVWfU? ̎A\U{uʚ*ҁ9\%f%c*,Ǝ jmK@+F#mŷiER=q'b7%QEO:)#% LE,O a ߹ћao"7ҠP3B\K #ܚ$yqGf4Ԉva c? 0kYBG6JUT>o w-!F7!F.%4OsR 퍇Xޡs|օhTӑi'-1AX1$z,t׉P[NSܯER/`=b%)1?e{S_=Wf aL\%`Yw܂ٮ[hFlv}s+8>x;m 0ԛg;JAlo[.=(.g]-qŪۂЋE={װ(vI!Sǁpm&m+&^jWTAVRV~˘G|]'H#n|`#R۸ ID|#vqs 'zZt彁kP۲ƴk* %DLLbkG>?/G;Ӌ%>GjӲ~ LRԋ^Kmb/r O}b |-tG*)Y?4TD}~DWKH]|KZfC~k?/~ iT.PGh`i FyvedEn(8heQ̎qtثN;H8*( ꊱU}s pvÞk-J>*1*+٥09ķz,Uve>H Nhx|ʪ Y㩯ǡ1>}7`${ V15 -rɳ%Z~nRDv>ʻkv oGLfUNƇzjbpv<0/7an)ܹk:ks[ Yz͍8uBPS"d[JM$uxCIQkLң4 >q"nqf }(vY-c,4wѡ31iʉ!Bq8$B[$_U?0k,ڨ[pԩkD@A,餗Lw6(N?ʂ]fdO:b!OzsnV7^)OV6}w% &oe5#D_k'$o_ƚMgCECt}~^7?wFYkk=}R'e"8*?AaOȟř-r?$pzL+ ZTd+$H;SU=zg3xKYTv\]asf[9O~)җ1djyNaCKٔ#3wd:; IoLKGQ~E*{M hc lJ/AÆs@Ҹ~2+Jqrp7Hai{wK2-H|)-DXJ&H>;w?HX` $-Imjjc\\( pxnߕ܏]cY㈔ Z%Ά)IS卓R&gaSAhn{pG<6W o=MjZ$Eaú>ηyr=>0lKvU}-dZ/Uf;q6%v* b?)yxȋ/eOW]kaV~ީpG+XO{赣sz,nMbʊ ΰ[*"$;XD">xγ!%kM_e8]Q_ \ޜٮrKa:{/AB)`p4t.p?OCjmfr:2>Ak5SD&-ڄ/a!dɾu6[H|/ fG&0W*]HώO2 ö&I\/E`9d2P f-cZ,vE-]%a$~_渀`iZ:aFBqiH5c܇䡀xցV_lER_H,@y,YʥvwP. ۅ1Lh@KZNf%6Q!JOsX^E5Y\BOANu*l5ϯ(|;\Ѥ?ތN r^t|G3JnX.©(|n_d%~}1&;OqfYQ {h҃q EaGyӶ6ZajA"l5w]YDd8Qgp?łw'Zzw$ZNBtQӔEhT bܕO`<eזTbUħokYVY*HWCUE'VoO75hc6("QW|Ճ`IuU+ylz4O$ǵA \W (Ɉ4WfkbL=¯,εoߞU%LТ X%TJlLSN},o[|Vȷ}US!w[N m,E\ |MgZ$mse5-3@ e!/EuqoU-y;v~\D NBfaWl0up!J;m)QOA:g"Ƃ+J l?('2o"r^ t#]& D5c_"Vm5?Ii.Q7*ǒu8>RkLSSKaS+lQ@?*yH} ɣ5a#jiKJWBy*b=8}a߁SdXԹ^vE#%)S:R@8*r_ !>P|]e' &`/Y-0c*_dx ݊, X(l=tUC c*^ Fƙ;iZH&鏳ūYc]~n@()sRcͻJF!2D‰?#g?FҲ֢u.ݥpK j]ğ7h6#(ۃ`2m))rqpSϘFL柯ng w?-ƃJ검Q78c0(Y?Sx(GҺw6*ӹ2Ϲ[ Ś9/侩`Xy![N,bZj1h2j֔kEL=̈́!}0>d^N[rjv;uV\Xd?6dD>*14kH`d$8A8e xV1f'֠i_&40Dә' /!Ur-@t;ϧn/p&u;sߛsOM'}R k֬·,A.n\wcqk|,&;pFq}Wv.r\+xU351 NjfP֔6Аo/rRzGrά!]SC` =BB&?Ȩ~q%l[yzí#+,1i.fd^6D߁m%ƥ,@vu5\4'݂庲 Tۉzp2@V4V?`rbBqMJiC>!i2y 10"Ḑ/5A(0"K$2$!QLQ dL;"CC^f+jڳJEW< @7h㸌?CAŒ䮤:3$0ou);[(FyBnQѷ !m%4c7i 0}!dX7xnj2YC+&z)*>"[d4Itw˴wa_,و2ngjjN14=^jc:}Q<}.R vMl1qGl%285Z-5I a}Ojcgv{&}Jmk&1Gwytwp2D`#]$Lvq{;zp*5ZU/LO'!G7dȐʟ]nK+y|j>Vd* 9Y"p}1~֝H69iY`mw 7/՗~7%}iD(_içjcaryUfbCn<?<+XnKgjB:|O`XWɥk2N/d pᵗ@qR0ΒU *Zʪ Ԝ\EïɽJ`u`=auϓz󍭛L%~k(^RЇ{'NQ +W2+EtFjZpPzG,WlP+;Єb15U4)"e?Ʉ48;cZ ]l4-a5K+ V$=|olK m뇆@y4|9BW+DH7L&~x )Bdg~(SH\:|SshbsT.BъweɈ i/l/РPeO\rM]H$"2C|MM}W!P5#iE 0 Y_,j"s݇:mw6ӱٗ8@gK"٣؆m[W_tq~є&%-)4 ӣ¯98t{:^I(ӮCG  3D! z $zvY7bH$ǥ i/Np{H3(UVsÅXNG V|h7^)r1[nP+8@_9:No~ )aIjھ*xr(fΙ"("Ny!5̵pTa3,@pˮﲣU'S;e`qv>vRV\JsYk*ؓ+מp+]cku!lt&:]tEl1s3D L@!8uE"AYT{Q#dS@m*'@<"1cf\Jٍ?}ҤOb^oiXyXjR)I79fbgw#Ynj_`Џ4iH%]ݔ j lk+Sdl:l:Qv2^&wow4?~7lRUL arC4 ̃߯3,Ś%?:-qAnO8]L\[I*ñUߝvvyeŒ;Mz9ģ%~~@Sh4#TԟW<w5S{Sܽ@*xCɯm'PiR԰ jJ Fz(<R#2Đ'] OFt֭5lC<Ŀ2i BK dٕ($Cb&zH l#knrĜ Q+lK7Sp>C=zg%|[XKdI#8VhBߙlzvC=7,8PRpϩ]w6qk[$Q/<IM#^UI玍5?q?ˑ(곰{f ~^̎ nԼ7㫅hh/W [O|} ݒk> zMz -W"qX"XIcYn \+IHc*H{g)C`>6IO"<*Zj5pf0FDtIp"ual,vld_&ZlBi 9Zl"\RhiM&јHĂ{/HLNS9 u>Z߯v4}LG0o,m BifY5Bx+V,f"-ov#Mt :&4lkOfO1CB_{i[a9&zlJI6SKQb^0*[Zx@9jYYkԑF9H24Mg24<:}[ĔSL?Y Y 89'Ge`Ejs2#=$D7,uJ+?Cђ}HBx5(N,=e[Ew(?W?t6՞@wτ ,V5d0`r(ZyTZuT,܀ah`z~ b(#:voJ=2tR#w?6[m[!_𹹈E߻ .C'J`(N+L3QgP y'[yaR.ω-%|xf[E:ȳ ܦЃi>s`4v*zB"+R6Q[ߤGB~<Ij7icUs+ǵzzٚxZحp:XΉ̈́yǀh'AyKl e wuA0JeHgBG²lzhu;1\$-xu#=; F˼lj06duv죪&?';{6'%9@V8+`{}sVHYA Ci3{*JXRVtͫW֧H?<@sF2 *^Uu~B|$V#U'1ޔhzLU@躐 0InxG@,2`Cl)9%t5`ְ6̝PgTe|sڀ({_h@;ƨ hl)N_Jl.tu.}sa0Q\X nA?.O (l<{S B\V)j&<{vu:d=&.7CLz[WFR)ƖRܪMh;ײّN[0,CD@vy] S0ӦqhD׭n!ȆK DŽ 2SIl?'04Q8 cII]#8<.bzW+SeZHt : ypUկ!K&2Ry,5:s׽B%5;0y**3i (4"#:p'(q3{U~ i\amm n"LڀH"ܙѮ"Lf^|w"kD{Ͳerb[d&qSM @Aۣll.FP-i8~q1Zh,m%LVARl?#M J;Bn)b֔yr v ffȟPᖣ ìqܠMT \$GD9v.s:Za, %RqCy= PWl8u &`wjݶKFJ;ZHz[4TiLE}MPj㴑B؟XP#zRJ@V $MCH>oURK )!pE/nt?sӰ{A 3;̆]s hIl@j:1Ørj\I[h)hN{yHt!"+R=pH@/VMwޱWBB+W\mX[Orwjï[WQ H䰞kD* ȹ4x3פʝ±=LiSB  1Z1c_I~?桩 7K3|i?# A~iC!S[ɪ1M3p}}^3ZX -/ \H~߈WKCa.J>Зt l(؛U {,ƴ9<}UHAs3]Bwusk=jr 0ΗT\CVmv ^xZιDN2f 1A"vϝRu*g:0;<`/~qyV {,RB +x!ԋzLۂk39r<™*T֞tۓ Y n^qHKM!`.pӔ !UqIs0!V];`z(*9yk4wΕ5ԯO CWRL }gWy|#-)Ks/ǮFc72.+;m5>渎3I]9{9`MKCҠ7a`Z;dZpMoe5סTSDd q osjUɑCDΟ$?< TP#j0v#fRp̣}Úh4K,jf[vvPG _Np&J%\+o#xQYeLUHp4k׆ [}hmJGލ% 4Oh|_1#-I)G/K a܅rQ(k}onz=g޼ԅ+8GPm+?)t|Bie(f@1m*q[_^~n>fjPc5m>҈tP.-SUJ :<[s=&8% R`p"D*ê&'ՒAqm3} S׭Bȟ9kfR <[XyKasԚ5JNXK- U>7NBS@k"v%Gу 2z&eY&8ݯse2?A0QCC&QO=sEՂ(6gT ^Qd,KZޣF hQǷ7ru5 '%K% B)i3$|uE1"/6>,Ȯ"&Z6p1c* )oq35wSї{k⣭*zHN^T]/JlWrnN](/T1oo>ǥMa;45 S&qf DWqپGjL? QxdS`:?f'4>co BqV߲ӾSlxWuJ C-Qhq0o5/Knް{QK]C^~ "tq{HuNEnvϺTZOkZSX̲y;L^˃7.^!4f0"5ڝV6T 8h,B"wthD'rlo98ȶ {r ڤoj/sBjȅ@]7S?N58o'J#o٧xwGJuP#4(s| #|Z7SqKM^7=!Sir!|ۜ#-X + &ݯ\wfH*f Ϩ:*r (6Xrջyj;}9|3aDF61/cӣCъ25*GC&Bꭡ&k̄lak CfيBTӈpur.Tk4'V&!ȍ%Ȫ{yT!(%@y^ e8dj^VebΜNqK`@Rj<)o|X\]:r1)A*]|Ґ4Kg/CUOWS8B#E!D!twZ(7mPc>Mϣѡ-S1<86yGLGj]yo~-g˻( f&AwVsS{|rxJ€ܺ nZl ࿛(ݘ|7%^G)?Wux7I} ZF]L)LwrpQ8~K)=&'qn% f7ڌ«,ze2UaEӬz1xLGS}A+LCx_..|<͞HB˷c҈aQs]_W ZQGcrp"9T~IHqZGE 'PY7/9- *Ods$IU۳IN"aP+YD1L,-Y4;R53/Hf&dR|/.;8v%@mPi.HOwtӛy\ٺVni'w >gJA!ÿZ&sx+\aZadL"ЩFn$;JuRu*Ɖ լ+/0nIR/; @TD$l$[ $TZE`6o"W*RTE-Р('1e}G۔3Ec+"?F\(({FN(ux#vi͐13qg8?%;ԛQ1$[E" MOְC=?4zXC)?v; ה/ϭP4qX#WUCv0Q h l)TCC]l`4^dSeSNAWSG=')~A7P>k F*=TQj!?dN^6H:s)OL44 GˀX)ft6P%UxtV% 3UG5u- _62(G)Q%^|G(wK'Wt3JjI ޯ>/i#;8~y|.}~)?wKY9%ezC^<8zd͔XQW%hlÇurZ-r5 qJ&~ jN4HbH/++Mk5aP#Lw/GUyk~ (`%tc;\D16 iй@?͞lvK6gAcЁ^M-\UbJ@֐r|@BA+e :s ҕܰ5(}[`ǎGYH¹>CdjI>}qc5pjk/6C|75Ucq^Fm?*ݫVcu%݇]읱Cva\gz,g7/d@d';ZYJQ8C{^g 66o3hMi36D O)Y`ۍ^xMETydW&zY| v:!EQ)Li N c~xqkeAE8U;4hZW~eCzckӧҷTa"điֽ⼣H#$7I=qf8SF#YtNG\@P"Z!˵] igALְf< m:_0ꞆѦAZ9Ppplډ.I2>1P={(J^-0~*MC&FˈA+p.g_{f]ۣ씑P~ #h҃3%Ih~]EoR g_6IgוYکF3-Syv=_ym DQt7ܺ1MeflA iPj(<NCU! bqB׿!%S8/,CɂmGEJ?0s U銬6ۻh"v:O~)-V]oIC'jAϟT`}Ϣ kmW bgb\5Gn#cL%& A:T^lTAOUPSTvf'K(kSPUrAh5bv B˗OHSnqG Ds@o9RNb%s-_9o(Jݤ UFV³̓Dau_&ȚY@@-p/^m3; x}?tYҷC1*f iME + uy5FzCg= e9>2Dt2m\# tE2bVent]yb0#kubO7O |7|y \?)5t"zqMDC b5ۜC5JVYu81b"!BYa]ڽ~ˌ/OE>[ci0RưEX+FWlI[1X|2u8|d(Q&1 +Ui1(G/7&.p!Ǻ{\fc@d#&i6貇}y#zzƨY%s)P %4.Ԯ' ӰVD,;j& ,sjM]Z+ ԛLy^*qv2 %c R,,`)9G{nB@I&5mQ+!xAW?4dl߻miG ?/ŖRZq0&v&P2ҿU'Ǯbwn5 ~eJmMo_" d#PUNQ[S SKtY"+Nx3l=[ΠψGaaqgqz;+xrhդ f2E]slEcPmYf }%G7 M4?bBA{^R5@N`BiLCh-ҽ&-`2'^ &Fٗo0Y[Lj# tGS S!^,B k'b#-8E M[ifG<2aDZJ(DIrpKzi՝ s]֣Gj/+7I,火6 jD/OSrd;9(H3ae'o/}vL>-W<M[l$^xQA> eDZhJ:!)3WQfq5mTVģܨ,j«mʡXJ(FS*t"(0BY>BC{6 , pnZ}G]̜h!cRI$yqŇe/X<<@P̊QͲy\8zny],V~!-`kF>kptQ:y#^b߻Ezb$`w%C,ʓKJRYIXFTDZlm3{.W)x?iHEp:Pёl'|;ilYRx>xvO &GueӛNgu$šRqz3⡂6lq lwXl?2\A{nnKO&j)teXM댵g;5oRPC_ɰp dtQ'1pGGI1;l]E|rnkΤR*o.%5 ֆK'W^5AN*m'x6}{>b4\>.зN(hm^0%=H#"sI_X+| 5i58U/bY<~:6 eůČn{8,!~"ݟidqe*8i@ E±d(l St{'htϮFUm=nҳ{ѥkt z9jXI/)';ǼeY) VzM:Z5g=ު ǂWD4f@w}pSazK$W5L6=b>f?geU&h7;Z~>(}ĎftS2wRpRF%҃Ră MRVlh* pYf KcsN=~&`g֏ ,q)0ÄY[ȹ'"GꈾC<3l$6A~_F^y6h% MBbzTDh'nqc" Z?~ 1`Q6~A-=6LX М%i;V =ޥ%}>t.*:웇ݧZ 8m9>7UZۊl^J-eoI$cn?E;j*E7I=Uݬl`e# fh׾EfqP0DjjП琠ҩ0˻R4H&G'n7Ph$2V٨*0o:$&P Ner|0i9gKN7*cI w eoɐo]K] g*t6v$Ya RXf@$co4hx&A:C uN 6Gj^r֊Óɧ;~}fdiu'` z|Qbl[#8iH jbRIeE;š" |V/Uv )DV';cS19~i_% wO YΏ|V(O7KK$8=( [LtQn_S秈z,̈$?]G~Dx8&1}nuҪ-Tх@3Q5 /RQŁF>5B,X6]R[vDDH-܂Y貮逌y>32t^& _ $ z^L0&Qt͑v9;*MA.ğ+(3" 'Eu]lLO$bG%l ~,^+1sLƩFQ9֝",.m̾ }к?@[SHCFs&J@$ZcgP-g{$:l#띹9mf0~E4tEEGZ~ʹӘ,:'0N+li(f_+g)2OrO_-J Pa&yK1%6ܥGKZ|8/%~Q8}{Tp5PB{jtD_+2oUM/ޚq,_@OE9L ɗ?A 8cv=!!3QՀ XTIU _d iwUmjF Sp_rRıQȃP2ҫ%NA~"C[<]]s 2+TJf󤗔^0æaYhStBܬ9ы䅱TO4 }F>={`blW yѯhL&;?ƤL]m3`; =]TYyӌ(58/ p)6J5[wqɯkT>db +jCAB?,Dp8yŃg5h.~" m4eqV.r-?y(^-x}gX)E;,7ج| lI;UD`Aځsr7M/B.G/%vDymmc㋿2, JBgO뺝+:W$k,nE|ZS#*,[{F5E}̃6n1(6.>5O}^ w6Fk}ﱖh|Zi6A&]o"1Mp(񄢅Oy} } UMzExFVm\csA S?ahƟO [oтKO#GElXt3N_i]Irj1+8g<o/K~ {Q?|Zz4l*gp(K.ݹ6n- nVUn {O!ՐMSt+<B$ji*b} ^TƓr %Dۘ,o3"V /Q97o#fbHMebgka'y&ԶBlc [ۮ #^2 _^¼Eb-P~ʢ#|pZv5֧Se y ݼ#} /* K%l|Z~\(Xz0[*a"ڞ1d>8:D6ںi6)d0ջT{ ʄk+LDEwjGQ =xvO_.A9Fd`G֍ɥlPp&66R>R3M3 FcaZdݏрPH3W11խ*+6o/ϋpB= -5"|g C_ qQb*7qk0~ g9J{;(' pTíR 5Pjuj|ɟ)*1F vZR$ޮ99^L^zGWĹe lö~'5%]Q7' ogwo}lWI〼GbU1nBZ>bpŋqx NM0tߏ8OX<$*-Rĥ3sVɔJ Y]gQYN;G)6G*!wSL\n̜]Es:8vH U/^[;47I[D0b|pF40X9fy o ߅ ө[5|lj.])%f-|&vt~ 6SU{/PT"ZuӋ+Sd<.ȜӸ&V1mS$M> uO<}Fx^8Ү-3`0ލf]YQ;թkHVF[{LC=Ҷ4HryFm2` p 엄&NǜTGE +}D zcy~oءy888|`|^&PBkAi}>RZЂ<c&= ]Po|ZGTAnFQ<ǝMMJH2m/VA$amp9*cB}gH `|WƷ{O%8̨_Ć pl3DlE>Z045W Ey$=&;Mu ؚ_ OǟU,c6,9޻f8<w&E{˭ʘvwҦ=kNR1D> K|ÖLXj~M-!x3&IJR;V6]c<&>"$uByx< CӯΆɯyBW~ d-$`~ޗ9Rsv+ض_HN}WX7ՆW2MhxMZYVX/k_,4M46l$n9,$StbΉþT KB1Hh,^'E3!쁐=qXab% BxBw{ܷDb 5azw +%g,+GrXG ࿌]"$mS(B;nv%Pk, m!0yQ<􈶳;GL4E ֖ u|"9ӟ6]l^8ؠac2 u׵q&V*:IlkIwu!oo#THpv~zwZ5 H, `܆oW˾ 73!I|.m I|g9\ nR7 cG8/J jGsD]H5vXEq`~a͐T"1tc.V"G\6A0kcd7pLA(~{|{,^>By:]?d('wpfm.(HR+QtwrY֝ y F$%Z <DMPs+.B8d•9{<l̒GԵd cC+J,_Cw\*0^zAՑR2NѼ핧 բyo&2~T"n=YD8oR6j]?,ƹ(Z^}&H=% sX>"#N|On%{7ai=XK|{AvNo!pޏGIlüT=N"JE_s:SiF{(/'iusPh"m@snXtm3LyԵ/J!%larⳇg+֓*xmubW|N }Ng8VsH"S9V.%DnΚVb'PeL<5PaiV<3V*Iy]XV Ao]5r&Z8gEɉNpЫPYs^&ΧPjf3 <>my&y 60Y^ V<7:а!=~*͆I.朄Sb&aQ˪hhuq9|Z7=9Ȕʂҥ5㈔yQC\ky?nmq'p" T9ۈ.$SM֣Uر ?{`(Qo~lX. "e+rp"ߩil{Pa\ShWY t2sa}֠›9 ؄Jvʞժ04faLEN/i ,HWտdz].7D0W{^&zn~&o:[|ЎbP7xڶ07E-~3jzAJAJ|BQ-Mv[RvKsy{( }G(] LRf>|n:g q; tk9I%L/o4r(rls~Hb> lQ|ϡbȊ(k@O"6l8v 9F`K)٢iS _=r+0xnxzǿ^ gW$= C\\2*b (R`u(^kCi RL(Ҕ7YN$NT.q)bn!(7 &4Y:W=K8 ̛1-,4+N TGp rnyol>+ bsrgB3@ ?,EWX^ERcRiZJj &wWe8dg0#%~;MfOC^9 ~9ٙ &׍[VH4ڌ%wMVfAwoʔuX3z C( Y`Uu5 Ƿ瓠IZLMXJ`V9KG+f{oU5|v78em,{uSF>ԘgpŐꌃJ*ǃ{`NvD({2:DrRUsit֧qM .Paܿe /.yO 4Vav#U:PE*-ʅVn \YEGy(߀AD}هo{~eK{wSQVFH&/4"79qG>1d1roawpƧ,?ܪ _mUyxt//T֓2κk9{&y@"H-&Be{ƅr_eE1yt]&G9M[d(8P{(Z6$_~|iՠ+=|:m km ԛ(Xke5]P$8B  mFDyl~3F91K͉Ik#p"q:`p;{hhCج}\h(_ FX)gޗ(6We̳=5 %4o,磵ٰb&g4CVEFAr˧[R|+>_R eJPqN&\4p<3!TJ2\#ͳ2I A$fa$ȅDi|=D^x0Ub&m~BiGOangϲ=V6? :A m$d:k ('Yx V.Ѳ=~%[ ŷȚAk}KIi 9q!O}(xz v<.tEVc ^Rz ʼn8Hvѵ_nnctoj_LKQV/|95pt)ӡ"^!Hle{?Ig=(Ke^hV?LRL+ ?@'j#DH;ݜ b$]+߶ G *N!1_sH՗#4 a!I@{8 ^pD5٠ 5Bħ 7h i3 ŏjmtV:3XЋ Yhx~ڢA34`YTP*= OTydŸQeX}sAK+e6΋"$#hC@×-UFRy4NryH}թh _:bXO{qpɌ[ v闘-C6=Vk[ zy-`?YCiÆ7^̰Pc5iG>$g"e;u>jp[.;c;m\ܚLԕX Gx keP#V[ԥsP2^vEk-ar;BMA3N4L|5y ̢%HM%pܵ[QH]|kN`ðV‹rGE!&^ -܏0UKFp6?)Ƞ*,:@ZSw5VXӴ8Ub5*~O .NJ,\*'fj '0縌'IsaW).mϢ(eɉ{)2 SYA#5egud)X9V鴌W$kwp8 ~_}/J$ <ծɺ FW{J莤VקT-VQnAGP?+ QK+W%3 w$dbX 3%@9 ̧g/Zĉo-w0eRLV| 8#rLib|lR a*o;חmq;",66u2F]jtYbk?L:N:t0NP~w՗gu7~P-2G4pn)!o葎> :/OFa,Oual9dEXz~~ +_~Rbj´Jچ"8ą\{r  p@IgGb6C,h^ouKzT _=2X鮸ĢCtدm Ӂhe4 '؛OP%I2zf ǺI?_x925b) 4K!X8.h+ݻL359d R\/: rB訨)7 ;a#f,;n}dbo)Nx4^e=>6Nn$x3wDxזG b:\O((F5$|5'[TAN"_;M9#/2yŸ$@ %tr1l͓-c,=nCGE31Ógg0&C7] .Ҡg0oeJhI &Gv* DS( V "ۜ_FyW*Q-]+dG/1i%ȋV]o(?`3<}"+ ]3-M PSrZhr/k|<'U\zqI[wmHm@ Ps8u(ɭ 6C$\}[pOOsाavd?\Cll Po+qgmwK`"dbܝ͍h`1d{s0'#ʳX (PF5Ãcg9",Β)zL )Siq1xa<钒81t!XnRVbPg,3o/<1̀C: ,_5x?z#^'?cݰӫb'$.SGG̖xBga; հ°;/.u8W9#]+Zծ,i,]V[*>lBxS{hH4 u֌)玀3ˆ-fsXy@Lo4 O,<;Z4w: >1,@B{lv<*,l9J{Ŕ;r(!4Ee_]YÔڬ96KW0nZ:)U^Սf Kh|O옅2Wf,N3 W{lJٴIkIQ~r_.ɾ+Y,[Aq 2_>2aX.vjSj?Fċ gddƯCf=33T">C/*+2~xܛDCKwA A1%eOd^>Z5tdp ~FaΨ>mdt =!&PPf_PJdaO$Ǥie?Vv,])Q+lnw|B95Lg)p]|}d"ʥ+|)J;TUieaě )5GF[+AcYI Ő5W*6J K} ^z}zkk^4Ak$ <EktjKvVrrVMpǭY{ pnhw=px:v Ʈ'ϡ8ak$.54jx4a8+#w.My̘D'bH,̈́ IPIj]Yo8y!s70&JWȼ5O3#ZmN\m&h%{!ɗVD]ILs-`7pI/m,E>rŗ99`۲qMD_a'sv? 7w =BrtKMiS9z5j@o);l <;U0gk~/MK+W`@8@78>8ፙ85"gG6~6 ܒR9 yDLנ"c?g6QGX/{ѴŮ[8cH&r :O@En̞;&y_Ǎ">;W$"a!+^t I(K@0%yr!C$=E4/ǵ^p@cKm.\,;ޏ#ӊ`W1Eij6[!5)z)eE Ŷ.R+h=y~D?zOVµ; j{7;FyPVsD,E.V?ޙI9K.5ޅ ­6Z4t8G~q4T*ׅbEg^I* GvJw҉{ %'Dx.nGx[CܒR6D3$rF%`P(Dm>FRi(NϨP$F Jg )ƳŵW2]h,7=Z>)8½ ⛢qFP3q2T9NmcɱƑo"xo('c@: -JZ3'lh#W-h`ܤ ;NL=Iڱfv٬#Q/.2v/$*+"k d`ͻ=p_SVs6<Ԋ"z?G 6Fzi< ^Ҕ ܤJUwx+ʣ|ވfzG,Nd&RzŽ JO8* 6(<6*Aft_lW5F5:mn9Kjqs[pE5n Ngf<10aNnV4 3*ji3+]t?d w,TʙY+>~,)ZE]*PU&<6C$N88#3A?]gn ( ԕQ, t`mR=x3j/L8ƈ#g{̪b6eU-'u&Ǘ@ S#f8(K^b݃QjkC9M9uȓ׳oDʙz<8Ő͑pBqS]ɴ`^ :\7:S63L"¦7IBU$ڭmٴ2)R[$McF烻 .2([ D= Kͦi4)bƇ`8oGtK!"uIkytDwF^ =cntІOxWS2 fU2gd|]v~{2 . 9C%]B3#VWeZDTiIuaي1JG()s" ΋q:boS곌 Rab؝ |lmK&ek'*.*bbch>1#2&Kβ9kj1)4lF~cV F,QlMNh|YK 77MgqbKEI;O}`{)N4K`/e@u Z<'Ϛr`2$5br}ĨuLFFa -T3Ҭ4/DV5i%48M&j(nz+`ah: & vp$ _B3'Da {8aAVuV'#ŊS틿T:p@~;/ES!{'v./Nf&OZ@wj#56cA.$(Suqv#!p֯CVv`RN$_M4eCd%Z~.+ׄ}IF+\{0(>[ϫ7<1&IB-G=Wi/,)|ynF6yjVbzN&R(c0?x2-pc} I4\OX3չfp4ʇض\ :pg}(J"8)/*,u{L>3'_FEV!QU1<9rGl)@8) Ry Ca%רa^Q׵iY."\o2x; N huthp!W[gvgB4F4 y{^7 qv0m- eܻIMg~4;gTV ~P ,E|6)M0 6_~o{.G\NWZ>DX?*k4T9dy0.w8";>.HS U6ΙFh)aZrA &{` 2`rWm?(3O{dKW4v#J&<4Uepĩw C|vᨁlmRză$Ke_6’ZqWY/f0Rs <6 Fg"u rTOJ :]oVC%L}C;Uy8xCzm< w}Q0Xp#+V2-l}^4@BgNPc1 0R+038{bπS"+3s'Mt",xmsJzWTޑ1[>7Y cMc1V dԐ}69%%*q_m/6LoiJJC(q#7Wo(3?ER! AF1MNҪ63kev1 eK ZOgW?{GDȦ;*9XY0*YYs`KHN1E=v^;R3n2]vP+ک%B> {+jQ[7 s9' Hq@ohRH 3[b8ÝsRb:M1Iٍ!RV ,Ĕr[&VAzfb>WU}_$Υ)e}62 8+Vڂ]+xnw3<.BpLe9]/NPoO 9ǹWc;087>z 5ʀ.uԁ ` y yd'=`w\YFG+R @F.uπHvןࡋ6je+l)U^Hrk\[Әͭ- =WZgn&67+jW@S'|]KUOmOrH>j9:OH֓a* mOy). s寋xgt6zr̽}cQɘcr:UyzLfFA$ݒ$v/"0qö0Al⁞v6 b%&yR95_{` g,Z#|>R/ <I,Hd%֬)_Egc1z:($ˣ(4XE?_fEF*_yӾBFQ8!嗆NR Xy_~JRbݵ֘Rmbц(_8_)QA)/~,?西̗u(Ҧ X&y@dMׂNG0ƴH>⽪QT`š(UIϵ [Vm36FIM5(e*An[bH .g֋xalͱ!acUI|ȮJҬzE:)XC[ /'E wkJ%4F;|NȮN-ǐ)ROuڻY毌 ٲZbpPBͲ{5IBJZ"eTD ~咝"9>ظa 4kv"whLxk'22}.0& >!`JS~ V)`"cNK^yA >wB;)n *'ZC 6.Gş [:o`?9><=go 7G(tn47 PMy`vꐋ|CA 0Q)?R0}AsMJup^T%(3<3v ]5Oxb䍿&saG.X]CQ?o)":>wa`4'}p8If<*rs~"=OD\{+~7DFjm`,49.059OPytxE7t-1gfuxڪT- sqst/9A Cx9 vN<3 "'Vg&Ĭ"ڒ1.b]Z5 xa("\:Q?Nd[Q5N1 IAɎ* 3xzL`0X;Tl+*[ ٱYivF=ǬO{pfʘPEۇaV A9WՎOuwLZhO_‚;=g6EvQ*_Sú~z5aJHicyX;5euaQ20 U\%CTzIųHC"Fvc?'0~%<@id]I?OY/rbZӪHKs {>h0 @u6onծbǑcP+0=Ie +ߩQ7~\tIQ3:VH) 2L? 7uŹCmX ;LA$Đ5(;@Y`K;]u n ْ8J0F=u;Gul.`gp֦✈;Cc$ܓu^2_L7&'huqTt[1_7'K顄^_IJfg59C=ǖn$'%>mjPY͒iDP+O17[ 0FqM`;D.d_gQMhHteyAVzie'US/Jq!RVYL(T [fO}XQɃ O 4FǍka8TDZڶ-[4a& /YRdj3(qVUy/l*Zs>LJrIKeA B0^bH*j8%5IZfdIVXup)gyEmAߡ(2/>sa{:lV < U3u,) ;p2iDN _1k0bx [@Bw52x*tIyvؔϓ\AIBҴf3B, :Z@ߧ)HPVwpN<\p(B۳p2_o~olMqՙy<Ν|k=B;:Is[g6yjN*~@J5vW* G;0/mTm4y,k#F>@-zHBhJ@9N*oKQ(rm[P*G6%n 1G_`%2jΣ{%M* ͠mþ0_ˋtѠ̖oe锄sȤ!m`ťf%&D'MԔL0gD$&y(1YOͳs `K*̾A;3:Ƨ )F8eF Ĺ2A,̋t[ߒr5BsҚ4ȧU>35=C8S:CZұ 3, Uռ3 ‘4H@<RlPD.1PrC%.={ha13G oB8kff{m+\f}eDɌcSm r;[Xt{].4-ZﶇZwۺm\$'v*X ;9ϪÇoKMQ1;Ɍqgo{rAa:-g@Yr]򂎰Nj{[U4rZ;aG}f2@!v $ O7牐G.[β[+į(&mSplc@*x"{/L\=a=<YPϮ}h4/R\zM~C=xt?/7LŸײ`)}%φh4=ϛyc;SoAu4~*UgRbɒ(,di$d !7UϞf*}ɰ:%=lL3hǂ\D)P'RyD^`li)|EH<9D|͐-;a%.g_7ӓɲ/`7W+` uj2H {aW5y`Q3`*"*H{ Q/ϲ8Xh8<ݫ(`p6 *5BI'\wkJtf ϥOo{V9.ưsYˌy@b7gJC{T5n aHkH4gmפ^1퍱mE[>׭Ss(]luЯʹ%<NGvY~b|*]:x嚯nG;ib Urt(j'BC%5fH?A +10'˷w9[X-h'a4GQF|LDL]! %!iG(IU*|Dj 5'!zm,2%FJBja2ʹXaWP QuN3m &TQGRܝ_++(UB߱o=+,s1Si"7;vFT^ n$Ɩb 4(,gqaXoËD̝*jvI?Fafo9 UFUc шa=[ZC$%p~HiɳɕܛP49H y \hc*SxL DAEiۄ1 m Z*F|;6/ |M-D7"?P(;Ƀ>!{`[ϗ4߄*zD4rO?/.h&50p2 ϓW~ Aq 9z:'7ݍN1/0j0cI#: TAxa/FhI*9(ۼqf@UUFGRٞ8uu 5-t&,k>7{E ; j)o SC!k'*%7N+kXo3-O$N4AP7H#fL뒩6,UVSCbI*ڛ]uZ7aC¯JJ &!g)vu@OcB2 ǯTʼnʦ@! H22wnWcW@Ji(7č'YU6mSẻg[^3=bS~p%8+uvRuIQYxQn&MT#*c٢\qơP*,fduo/6_O;FB@iH}`[-͹ծbfsy\|1Y;t nhyxX[PW>u曅@?:6\׮sp+%q vA}eYE$t))cƕJ.D0uSCc?Z1pc, قJݹu44y6۠lĪ̕a4uu0[b raW0Ó@WS&/{ë[ܪNWZ<^L&!%]qeOy4rю@r|ᛮpe3?JͰĤW[($VrO#7o/q &o곎Hv\J'Ueau {nj)Vz>jGdҜ.]]/ugYS6qj{2h2$M RngTTMvt&({}.0t kV0C'9δ5LE' *iE$%lhڲDR"v@ +*y\1a'e_G{gv5Tl7eV>/1A}cR\vZg+MRVUK)>ՁDX±F&t<.٭#J =q1q^h@182[.|z`mѥ~0-ChzGoi|z o& =Dȡ1(x~Mo_Qq1!X{x^~竴KU I5mĕ_eW}vzRLe[bX3X-iȾUƥY JLOpfUBdNTvȨ _vW8 |0ƔdߵޥPyxۄQ) )gG(.!'AXy֍OT%Ib"|XG)֝%y]r !zti OhZj3 >N+5ag3^Qѽ7Q4}TPErz]Z==0VvM dߺGgwdq`EG%.\Ɂp]17tm:@Yrl ~Vէ5$?ł/$olr+b-M _~ܮY8?nբ#)s$ά*d}F]4f25T|d[oWyR+ޙś8nq{VNjݜ\Z](YjdZV NMQ ?_F^r_4d/x)OxӔlCmpMnenglJ?R]7'~B8UY"0d*z/A6KσNLit%z[br9(9ީZmxJh<.n9oPhwcOPz~6@r _wR" \[}%G#e鷮S ?Sx#7N"vW֍S|kkNdCl?2HU,(dr쀊RS7|n$@=؁` +>,E$~e-ʡ浽oWzfN@ [.k`0|b2j3, N$T7>u(- LX[aƏ u~]ޣ vp (Mm, xaFfݰ/-*2فf]:r,(Q9勦ԯGf6|+&@HagKJ2PME -dd=S]Q`n&`/pqh &\X;}I\DWCL8Μ`XZO QpTz^Z/NF&6P# SBgX9~(IiAќj|dȓ'RUչ\e{_L7R!ZR%agHHyth#gbӖ=,T^qP> /= xOC eB+RiնIm'cXBv٥fEJi>?h9 U1zj`{+a[C;l=co/)mg +i֩xHyn!GC$dx*Щ/@R)kOV7f=w}sJr-Y+vWp?_=D`vM`n*9J(Z5ff!cg.2)Ơ\vg̻}tipR)ݧhեYWfAcOѶx"i܂dp6#ܔmԌ{m-z ̣xlxiSM?4C1 Wd|Lj2Gu3`xOE'TTqЏHnHڅ3ؾ7<¹U%M?$ n .q(&!iiZ th@g=28Oz[;YhAsa:&X|o!=΅|ptZs`%OkZw; R֠3[אn% ;:l_3Gy|tmNMup!R:i{(k_&<=LI=Iq"f??Bk.jSZ. >Tܐ8k!o_Z"I'0 *vㄠyHBtuFƮx \> V=A(3UX) 0/>e?f ǰe[ԃ.KV 7}s]6\Okb<ɝ,p{Y[R|\O%3Z852HiQmSV5kohO̓ >R}Բ (ʽJ41Z#, cHTTiZa&`>p$QG?TJ٥Ёaׯp+z[tjJvh΄R'"e R.w*uj>YKCSe1o"mF5&YDZ5g Wr]Y_7؂7ISSz—/h-AtPYGL ݗȃmŲׇVVSZMQY݁-G.,@+W!QFz{'(He:qQMI ^$7eM*s7+s ܢ#5&B)Xۛԧ[V!~x*p{PTWv Ȁm.5xߞTi$7-\e(=8W|LSY"\.( 3.M(G="/⼯4EP&§AV/4!&KVvt V')vqb AFsTOI~\@;4h(΂@Mp7wbr-:jIkFLdm^c0ZDDv{LW͒U^.,͒x(Za.>Ue ߣBJXc*E ~~&Xqȑ 5:܎[2BClQ3L=F/ULp3Q(r:BH,A?5L,a]v+rNUw?뜚U]_y{zЛUj\iBXbeg">[qϴ|Ꜣu0R׷kStX?eo. eOc,4uvS+Q61őH7 !>(xT{~DwXcCE%j#?Mk223 ~4w.i)7m1=ްHVnI|3^BQ (y=5!C0RBSTf\A:@keYf%\ֱ8 qrؓnq+ j0ȹ&x9JxCЩ7XFEui_2U0cֵD} f[ѽ)+>jvlg)7[c6 NdJ%*-qWkjvNj^i-q-PJ ΘѢ0Qo_I`5TN!D%qeT Qv@epEH1[БˣF.j<37űr-(́W fJBrPkf-̋+OפWxW; Ƥ?wPS™x͎ib´~D̅Ҧ?z{峂Y{5o q >*A\Zd4syk4bNi}: le:Q\AHT S{uKO#ܸ9JEu:ZyI3ţxaZ^ug0"ldʑePO'q~0w*ٛ 3lr#@w5/F;aaLF/nNf{DwvÑ,DblUfrbdۦ1o33㋜ى\D=0]QECאH^H O"K.`S?XָX'=-diXUwEx).^Dc5|ֺRDw n\^ͭm^n*n}Ԉ 43 M'ٌJ#@ԓ>p^]}fd]d~Vh0!\#S a ΃Ku>8([=4gq=TQo&c!Bo踞X.JxI{|| 9P"JBiMf2Rʳu(tFo!M׉1I3}u9=G.(wCvM(^]4T0?TwEl'J)BMX¥dv7?UZCr17 lu8V7p\U0  Ab޲QG|JZ6s' 9/ξdů|Nz=hIs (\=$8KbcG5$2"ՑKeD{:\R*,|fM_CsUZR$Z..GGJNd=( JSpiE\6sH{O3خA5Lv=\#*2p"21]4!#TW9f!;WQϾ[tou6CPH?7; K^U<􌉾%r@Z$;N~?v^Lnӈ1"Yj7fYNwN1`1^ze1u+as0p.=Xv y²^2R%fM_DP@ZW6]:&fUB`'g?NsԪ8ۋi&;mmZ^X==\C(A"oPFH4U\="^VġG +J{rKߏhI*YD쑡9ޛ 竛0+ΤJk} ]1M=;y ũt..AսWSDPb3w]cC +L`3c/zCۤg̿u֑b<,AiTj4oz#CU#n$.޾I+ V1h>cGR穽=_`_{J%M7#FTwtŎ1D߶h!@ڻھ ldՋ#MsW$B9E3T6.NNr3st`Tv{;- ̩޴ Os}@ jxHޒ^5ou: $0!7}ŗmC/OЋ9pC] \o%8< !eĒٚ\4Q,=By:%he !?S^]7NBqdH݋-Ќ*3*oYk?SXey6_}@:N>ث%l,kzm2b[w+D{Z)%./Np& e5EUr8Z *\Mz+"+&?[k)u@\g #"0h +TןCa#b/GS&(/6r|[M)i%o_dHl.yg opJBnڑ p>6g@`@3iHwJAi&Y bWAU^U%2^Ga ~ݾ!'>s3}Pp/P(|J6Y0 `X~:5Z*m% gggޞHb&JHTSVO˨L')W|n,\U(z& L1 Gٜ0܋Q6Ɯ!&c0#gB9?Oa)b!.饿 ;mpˎۇq@d-&5Rh 2.ngΠxځs/B']|4-bu̦Ekv*-SpHXI4DZ$|qw i8D5fp )WxŠ I+*}[k.'-3 y#m%:dO:3Eiol5\WhόNf"^U& w0tҳӁk" ; j]W R:]]BC2oK@E[;HW@. x睯fqEUңeڋl@nAͺ'R[ʱ2ImD)MD#Hvr~8`~$`G]#$>r4!uv={ |bK "PB7<|z=Iª6(w?za<EaSѩ@4GT6mÇ40FVA/)ië#6f?`\o@}o}ǔfq[cpXu`vxKVdR(l6ꭹ~cZ=g7knCl#*I 5FLĆԷǏ>u!8_RC7H9 0joD#m}a_=?̣׹@i=hh.p{ä-4eFO9%0'i!ego3B69ҡ4Wq28a}VDFb %@/1_rh W G}Ysb!ۜ#,>l^60ɱ6V.C]Tvީ:Q9I=(e|w HB++ T|iF峔!qE2gNtRǥH[5LƳ _>k1g؈πl"G;͹F8Pȅ)d%<_݅+3Ӆ#fZH"\( dr̪g#Ϥ۰ -c2CfGޡ>"ۜa s;أ8ʶUxUo5mmx @kf)(je"x+9ױ7 ^W"3Y y>{/LY֢D*ِ 9+8ӥER+жK-#lr1&}"a8b 5b1ˠ&c`,W9|D=](h+BF½Z TY!k6Od89 ֶ \H݊3͈xsf7vӼ)RUuʖ\J|6B `=wc3?8Put^ Y]Y%s xCtz#RP]c0&.L`4@3TXnd `s]4Sa,np $](-ݵ+w<\ioXVjgSr%l|W@G$'Ī`7UsD&>dZoک4i1Op7l~H'l*ވ)xsRqXǝg*FB Ɉ)ʖ lHeJ.<3yj3q$>\t7<2&C$.'h}d$1fpY؁){)0 RT9 N#݄[9F7gVe9Z_丞z% ?@䝶, g&K6^g+Hv EU%4?q%=uY8gEcAx,|lM%W@w&(gJ KK!IҎOO>)&٤ 0]@X2P=U19Tf]P>Qmh 1ͬx &\&($^^V%uB2U o: 7ɷx_8dA5οⲐЁ%ךvڝ#vH]bpUǰĚK:N6Քu'3 _s:v~G/PobQpqÈ&(Ѐ4*9@qIL.O9*IbyhQI>SǾ6lI2ICjoڳW_x})j&XPAno)fKQ ns2hA]l2h2 3^oC=&3N(\p$5}|ze)5Yk(e"6/ahvgyP[ ђrstk 5VD{Ml,bރzזg[^ϖ)gLeW&w3ޏCd(aq֊ѵFΏjܠT"j~i#Gwor)'zr/HHF|jͮ*?wJFv|s^Gzݕ1UK̸s{OxXk% hN!qXYI'&e;7SBX-4&nPDxyAlz 'xakAvQc:[ƣ᮳,e«~t=@< *k4eM.tbژI((\1}傪;7R!l"a0ټ* aZ0Z/[竲K~z{1Dt4>S>h[ݓh^7S3:a8bA~V%֋Js*Kk:P4"j"uyFgx>ujHa0spB@IҢlX?{{^OĐSPA*.,ʭ"y')b88v ;"n sӕؠָ5{mhCg }]l mwd˅ucGg#Kɾ*8uLH"<`7XtVubli ŅLS;蛁˚-Ay~HY6T,ao;3(FrABxGҞ ?8?{o,xe]!ʷձpt]Kv:3rm^48Y}X1լ4;Yq]+ e?Kax. g02Q<|4Ϩ%5*cU)Lgn֫3,˰xrCHgh ?Z`;L]f3 LY9 ׫/W_)v{`ppJT4y9 bHJ0F`I#߈FkIF\/-Vxm˳gP x'2!VSQ^IoFv:4ryD%l̘$%ʣ\MQ{[ O|jMj@yI Ɠj$8Pg|cŗF_R~Uh1j>+DJ(YE 0 cd&@6%ٟ֐ǩwed>=-0 `3kfPVu r.Fg 3$Ϻ8޸U\ }Ҕ_@9#*} p-l݆n [)ˡ2'nXrCTmBӍ);|4lsv {Im|+xT(QsHh:ag'jQ!ς4LN7=ĦMەkSXTcZ_ FER6zV'gZ LwFq9g,MP7SOΆS 3Xx՗r|fC=Ig=9[ L{f:j:pFm `6AؗAW?|ユuƽCwk) V [Ƽ7VB٪tM-ۦI݁ڡOʚ|\ n(>X1W5C{5.,s(^|O0LF0sa+?6\{ Y*V_ +zTW YI/Uw,AY g|TQ^P!+z 69 +`B?5JzH:˂G̐@kz j|z٭ ;4³ãPmca2Gq -R 9!w&B[;ƹKU,Am,dzHּ$|@*N@OVnnخ"xMCd`WUV{riLRɰ\Y֌Kt(ei r"p" $XP==!ٝIN;-Č3p9p ?qs$5lHrBKn][||| Xҙ @24`:؝$C%[8oՒ#.Z'|Zi) CNSku[-ژu|U0cg@ -}82a*'d* zA̋qbAxZ_d*OU|մ^f.L&c>r)D?1 u9 ,1ԩ'BR׷HԄa:N$*lsN5 Xv ΫDZwUNzh/)44g 0FQ\<;yO\:x26q՗*Ŧ]C"K#OܹBgKj,aNT.ylnZn K7mRjJ}p2zfUTB&pG%ЪڰK& ޅ+&odV}{s^. ӂ2 4w1*pӤ&| :`VZ_j:'ju$ nNU,<֢5 J 4KEKr6Oll؄X! ‘ |NrUVU !nepwglU\KЬWYӇHD(MMMgWJWEv+=Eʅ*'𗰥::\H.GrxGyA 1bPlvTn1-P_ f&[$vqBtIw(w*{_x"hAO#Dv=\7Rߡ  \}TqG04` cRؼ ʋD=JyE[@u>ŒonTz 7y<½ux}\+q˳_kڠQ9+*G (p`l yCΏTijPor:{RN$jG6_>M42"s QN=1yhؗ͒U=!y$ku)9ݐY0=E$遐#6 88#o4VxbKS3>@㺃׹m p!@^rX]ta 0+A$gO0c|aYLfyclJ L#¾!}/ye lOfR:0MV>!n>?l]Y_V G ݱFvͧ?,6\AW'->j2K0%BN7雏 :s0 A,nV̗ɡ'vY}Q-A!W^ L?uSY˨m[ a궨-OyAta6F+Y8p>Κq/09]il$)Q#[P43u <Pvł݄TjSDr<~%Sc9\=V}:#ej10 xB EZυrQg^iyV2a@׮̂`l\%șnenZ1B]D 1d;/$6GMeMBI诅Om\5˞jz |igc1Ap}/1[%| *ڎoY8gRu&V02kZR5,f-OO/YnwFs% Q+Ֆ+[ob VK>ih413sx*6Sd3IƼvTpu+;/O+P GpxVa'VN|)s5uj$ޒun}t^=Ci9#ttxEa~CP^Y*<'/c5"bFxX*g:F5m\d |+EgRH0JzuibRF}l/#3ߋbYؒV)-qo6!Y44Mգ>xjwh\M4HivJHCdkZFHRmdں}y`*NG*2(hh'DU d2>b2Ƿ_C!cFRG%JVqQFlA+cĶnTģirVI H ZmzտP9ƶ9h $?̬>ʎӕN[Q&=fGs^pB2'G9jC"Ԑؽ`?XGh*13_g7CPX w,[Ff#M6ijƮ=At) uCH i_S9 [HE>tOAMOrIYLD\ v 6l%"Y(Iݟ'n`d˂PW%Q_amPt0vQH4/HA| V-^]M :]㎥ax Cjd\0RsNI8VV3?gHY-gu4~MPax/8,e"+7IX& %|EXWad{2s;.`cV _1G2tټ ق۬d3,#}~ML)1mH`*1<=4fXY% [yKavG4_8₾-$fT^͖N3+2&eeٸu4~ᯚiԘN-)^:nX[q̛+Q[/+0"'!s_揿/8l –3.HM@Sv>ﲀH J Y weeT@mUr#7IjWsgb#oV s}eP?N,ѽ16ܪD$0\O*>k gf}FC $d?Z:GI/b _^A`50ރRDu>F}|W5P1Rj+6-+HЪZuDžr 8Z+$hYg | &'dAͯ9e^#/n!.2;A58ᴕ?;>.L E) /j-^cKi1̪Y{rO-bP1ODj 'p))mv?WCR:kHpN"RkAu3 ]! Ϋ[0(SȐp;殀o^ga*j=L;=+kbUШ* tж}Qm#ې6 fP9amZ:Ԗ(P{H gzd-$IxQre#CďmLic TaH hz2g˃}\ zvHEP|Pl~ՁvTf/_iRf՚ߣTblD7+6vG 4r{2>$L,XΪ G=ܸaH̤D2]H V~F*NY&+S5Ii=ez>ܡ0o}:/xvwfR9\VQ*WJ쏀(lǸ 0^ f_C.Ó^݋z8V3$Ml1AxgB ~6A|O7* P(:`W$ WB 4QF0cH|5Փ[Ar Ђ=]Q^0W{TnR O2,dKHU+({߻,DnN ȜCmoq?dm}2Mhfpm%5K:?u8{2YD8:2HcDxqݰfjJɛWև5ˊ _!ؔA5 |RX.]"B+lthu1);tBqFj\] Y/] w"=#mlY9´* f.2["_"=WES.~H9>QvYPOwJi /naPNRm^E\c21ǢXO):H{.JFX= c@W&!jTiAtĺFŸĖYD֞%E'CYa(_7% ((UWF4 vM[d #^I.F.V/ /HPo}{%σ4rgU祸(ʯp^'QdImt CXtTVN巜^C%Eiʗ@3]3ۗjջFr$h]ڳ.Wmd'nw!d}H$>ݯUd_<\|s[#^1Ɗlp<mIY!d#BmE!gTw 'BXrBM sQ;nKgXXt qP&#+Y.guhjz/yg0_D`LI\綢VAo@ߡ4XnT%s"AY6ç:dOrÍTstx%ؕu-} +bogCێK%.{SMrJݿ-d[*U ڤ]A\Ɲ(;]հ:q{ӣ:\. !RN)V9R T.%07T,CL&e=ԄB/c-NbN֢ǂrt篙!H{8LOMae<@ٝd 즓zw_MCH aVZ.X;F?5O: J|SU54T9'p!ș}$e "yfX ?]uQn͑׊]답O~Rtu=`+${'/0?=3$ٍ?SoEbNl*q?ԍJuq,gY` q \ժm`{w$.S Iƺ:nG'Pia 0ӥnVDc (Fقc Wk}(P0!n@!n*7TGmBy) ,$8N) Ɇ$̞laClg+iέN51S$>i&?D8 ]Q\7._P<*ڬoƺDőn<`.Kse,"D>YjZ &^)Gե4N{+P|V>ޒ f2l KbYq2_nn4Zv\ݦS04xAbI/XMF.3BOoq,`|P}[4RPʌ79Ϥ: F^9VN+ftýˠãg5R1]{:bԟHSN7E(l@} lyLx$}h/$yya@EMP}')-"{@j9'Z+3@v9F'@E\ 7 Cf4gAQ[ޏt(f#FE 4tdL6ѯeD\v%pkI*f:.O0#ޑgf)˴~xƀ'f4-q@mF'fnNbt%'^mNZi=R\~Dܫ]Y R_UXfG|)EpIp x›:LDH::߹pe.Q{xeX9{f +",_p|Wc ;Y+(t7gq)ʶʒϳHe}9~a9n ثIŮ8KkiKˋdrO<,Ӣ9΅{g`OV(a0(5ޠpip2z2 ҌXW*fCF xa֠o|)6d>21c)L}V P^Ȼl7W E.Q >8##Dܛ w/Ⱥ6,P,H8 -FŎp:(.-)2\as]('!RT;zNH-ӫPqo>ZDa:ZYa:5doWƳUbys浥̓cCƆ/asʗ%2FoFb*89[3l3F.|W<\<(@AoǙmG컿%Sp@N xSM2>Tɦcܹ"y h/$ }m?b.M]&kqNY ubbqZꮮD Q=ҎR2'UQw,s_&~F[*:tLz8\c6"g_D4xSU]ah'\A6U5גa`B_cv%IlLJw0g_O҃H11,Kf2̯XiԶCh{ [pzD3;ȟOTmaw/]6Vt$ig[/WW*Oj)R':#VC4bp`Okr7,BMO&QWjz/w$f \aF%i ~STN<_շتNkl@ˮLvM?ݰ3S[g) iira 0cLJY-uէWICh':Gv!.wU;3A(;(PtB|[\,Smj PR>&쯟v*īPш-=My?o[:6s|uRBNW0ޥ޸ vfs|y7Id8h8a{lֱCPDRIԉ0lR$[G9ыU&r(E٤ { !jґ9=FMer gI"~|fY4va(Vh;1'4{x#lF s| tN^9J %K)/w)a AW;WB˴ɶ˛ ba6&PR8џ3ZЂ#vHrH\3 -s߆Ynl(D>VcQTcK1vt@G`'50p"bɉvבʉ??̈Sp.\r@1,z|<ܼ)1PRqɑHcoE6FܴgT>q`33)P4}M MawZ۪&1$rצE1ʓ@e7*$˫Xy >FKk9ej $:qE28:mlOpЪW\ G7S,Ck^h5=Ts/^Lc < ,Gb_֠/(s<=hK<PުAOv40l2 u>@gm/$ǯ U5ֻ~&*ʀTBը^e&L$`E4!h,Na_3;YOR}ճgf7!5,ͭ7Wi+<&F:'|H32 0:?mWa"^1!Wb} ^05+1#7w? -/)>?M,}sI'}!B"phѼT bF M6jnYT)Ԁ#EE}{ʋTZlf0֛Sr3.2}]!E&(ΰ)NbiG[B\+ 7揳u_ƈk |6D$D=j/#OSg/N.Fw ?uSjY9S,LֆNöP:)7K\,v@Ϗ:E/o9: }|Mu,˰{/3_ѡ , syý 4RQIR"/ILѽ-+AI޶NMT[Oq{C 7U&tb/ʪ =$)Tt g֝NBIIVြe$/զy'g&;Fa;M܈ 0oڤ7'.YR34*3Y65筯;\m7 cTD+ $-t?Bf8ud&DTa899J\Z YӦqQeҏmc%L|2+؏+fUU@V%3xhԻernqF'wЩw1‡:dzyͧ PКP8JcT"` TԗDnޔ| b#: ߝp H^&~$d["?{FwagIvZLʼnĆ8t.:}_ek&O-.KIjQZ:a7ncear8J9t6voEfD̀%VOEFml>'J D34- 0:^>Hk7=$Ev=sn`W\[0.IP8TE`g6P*Xa1ezjBޤ(ǿ>1O&|e]dYrRKv9=?ꔎ [qDaD矫kP&mMU!m, Q=RS Ѹ%o:ߨCBo?:_=[4Z~QD0c["qH8^dF?[IV"՜mJ +OKJ[ʍ'*Bi4MT6.MrtW|UgkKxڿp!cBmjwHio~?!-c]ԛC^'&xڝۖ>MXvQ9iC^z Fùrh@}5-l~[ P=njG \xcYT #B U %ߏ:ʚɴAlUiލ˒ ߉:y>GPŨPڵ#ܓ}y6P*P.njPQ朝). w}/ڈ@[; $2[,Y$k$,IL/Ҡ+e(Lʷ RVn L'Չ|xx u޵2mjDfзpajݼn( {]jAM)#6R+-F -";9 `C?x:zŜ+l´V W[ëM"zhk9 OSIrgzJys' f3zleA%eݱ{ #O HE}fd͵q!J$uY(J=J}i|\ВVh8ט鞍" qmryE0!b~ essR%3iJP=Z= K0%Aӊa&=`bXwO }̏H[7's { ȷ>*pJɇoCS`06rF{b! {4nt]xB99D8Sus-d3/wtEUC膱"J=?1J ,Z c.29Y[=zֿ ޫJ)=j#pW&~ͪү`4 dfX*D w]xlf~>u1F`θֆ6q 27D뮶J-tku9rVh}RFW2EL19Dj̙E;>.D-֒=r+q,,Y.+> #Zd|nWenz(( BZctüNwwXrV*QzePM`"L>g ?BI̫~19j Ƈ8֒ضgꤗ;EЧ)ۥmw ?tӞ@\!WHv!-:%jZ׶qΌmyrۑheY^|'$EӉjG#H~'39Napb<*v)D8y(7os^r1rJ&=rb?-t&q$_gm7A]W &NCU\'yK5 ۤYpx(}ʥ#PGZwCl 1h `7N$q9 Ko-^$:PLshH 2/,b~rkfƩ!"Zd?˿|OZKJf PTM{t_ ]/[íZ=*A_ qYxG4E(Ω iC.1Z9k}v,́e dj<^c-$ ad[m,ޫtqRTS 3B1Ӻ3InUT$xGTN"[JyTmOn">QφJ:Sʾ1tV@>9*)Y#R!2k5(okf\+/xqB\Mz[tt!j7h3Q9r0Ⴢ2 ?B^+;;0iN`4x>GG<*-x|P ͑ gΥ VW+6Kj󪶹QŽtDBh!,Xtn%{f5t[ drP %o $++#6>ЗRò̘g= |cBA&oW[fQu; c_.7kAX!sm؉GѾEN&0=Kimvm3R I1%kcv% wZtps! 栂:D8]N6PCva^NFu'|ѷpIq5䐠 8`R%>7X]HOGsVoLjۡ#q)"q%~qn:ܿT*tvÈǕ!<s30R m4=P"_XpkcZ4k) ^QG|H/ ̓c^hXʥ4YXz[:<7з:c>^>6vIo{Ya+Fi=~C Y  zʉ$L|0_t@S0Mb֮A[أu?kiI-Ti.0K8QYp $O<5JԤ ac)R O:C_KJ mOg8Zkp(s_NQnq!UDǢ:/s} SAجXP֒/P̈xdЈB"nWJ0;SQ8*]:^hpmO[,0 O:H̽40} 3nD܉>D 6gF]g&o0Z]d41:lpi P|)4y!eqJ#1QM¢zBN93Lqk S2|F=8M5kp TJǒJP sauħнKe1'Gh)JTT>}X#.D- s ^ 'nxmgT %"+l:~zsi -?##W.A[./X;?nY`t]$#gLOa}/ZpSJ&u-Ww4r1#vX/6'Ғ V&}36LhZ[-/).+!#}Dm Őh'g <:CkZ3 Er "ӕE!"nzd*tvlx1xM{O #mDlMDbN͗PKNaQγ=}=hmyx M+'gؒN/JcjNiT;RB^Sq@ :ق'Ց V@p"!P'kwT̾P@DX J6?b39щF˟m8gEV 'a1[ 1/a^BboZ)%H iHW\>Јn7ow&dkq|KOMd CԵ;8~h#]W!,Cj,rx1cR3Jt?΀ZM9hܗm++]hrJ6uj#^L\n (>vy}JuCY-Nę0E<h ٻsHD̮aC @\75]9L{q(bk"f~",֣]ISdANyfJsy@Pm[V]ii7!33咑׸g<:?Xö4fBls#Tvo ]hvoǫv7eU(-xJm $x81z8x?d4xv9]A*-'JmP(ϡhC@fJ̤}ИVf 9e kzC[t)Wtn0g?Y]dѕTK{V+Osk6o$v`.<6(/,Kp{B,e?[UQi} |7iO%8/n.|B+/^6dl~R۱J&Q+2N,̜K{$qUĩ- |f^y7C @gӼGɢ7[ǜBigu}t̽wR|qj w[@d D)bMK ]:(:8=l:y;I{qf.ƔC2YӠGB_\gx~a%Xx6B2);~^ M0} amp d{zߡikOf%ӿ7sE*ՋKMԶ9ex+A{o`bQ! ?g5\2Ҳ8wZv e)oOjL}*sO)otMTKi,.4e]=i20b'E}c/$'P]^X'>?EF.#+N) R$+%0}XdЮOVs*9v ᳇GGB0t4nmOq>'KъnṱG,vE1D'rݤ}gacYѲ'k0>%c>;yk˓4r!)3vdەÛ=mG'g%b$'K?4UYG,E0KYnGcO1({m_g@_ j`qsq֧_bqXJO#2 bH>mKОoT$ШXN~^46`#6:DZaS6<{漇uqFܘ7}yPd}=JzcM3cD@Ydg6FC qN3 ¸o|gfg^;fv --.^7&m'1,BstxrZf㆟@IHBȣM$\YL7H.Vppgح@TIa*ACve__}Z `H{a4JyXeð]L1mz(/sNƉV7]3 ZLhI2^?E )%.1>m77UQsf #gsvi-QiyH3CSѬB],x lV !;d{;C_nE}|l{2, O #$ #y&z362z;|HdhLxoxJ^HC)U'Jdl`$Md8 =:CUiS^uD i$SFjoj mQ{| x pcK<zW}c^]d+8o|eQXkv]X&z>["5}[(pw&{t5F3-(ĸD'"eNʙ9B F(0˱Qex'yQ7F&!E"Ot17P/"V(f7MKeOGoBCY4m[q> oohVb;!,(Dæ3zl+$բm{2_V{%k+[-9I GbU|`?,HzQY e_"я4W0٘x8x*\_;eV O\ZTqʉq]. )o4z`l 3c$( # kuK>R#ӗ|^xxI-Ec] k7kIJ\c~QAޤSE_:6\RaUY fѪ0KNdsS̔>&} l5?J]y4]!=A\ [*;QfhiihypbtksHs/Duw^ǎɶ\2żkDR!#\ǭ=tsH gc %=!X7<_1E\RZGŸ޶C4sS1dr[9*ӧ zqJ?@dw؉H&s @a"vDq˜5 ޔ,̜_1IS'dN݄ӇLc$ ذPsEYe>?{p4 Uw7 qyL(k/ `t#B XH8~4^摇|}o7 ϟ}6K1+э WiWbB#x*ȝyA|1 v'A `ĞCWw9I;2dIA<m%C'BAR9!\ tH[C:bѧ G# (Fz%vN+F>c*LE/S?N"jN<+EI|4 - fYb|{0GOЫʯ'^ I1JL'D)/0'/< a3YfΩ殅iB%{EY9?řiR qcyAun\RЍ^tO)RԠ.<ȵ*r>w̻`vCG૏S` y+E$Umͻ'q7p96xm> ϻC}l?QWpxHHz􎞝Ϸ[۱w _YevbRX3 D]j?A*ӉrN~Rt*'{"*c{쒚sbr'(Lײm~먼Uqƴ^y3cFǧaZQמAP?R$IXC¸0 Fl`6y4l,$vϲЕ_Q|ɿ5g]_qD0o_Qw8*ZjK! o 0Y*?sjCCftǾ* BfV+ 3DK\1Im/: p[ikPC<ŧMg b:{ͽc(ͦHLZ/-%v0%O(ͫ،բ4Xe9=` L\FZ۳MXmN/<)Hu5rmvքLk 8# Sz^_E{5_<xz>ؓc)W ֭"t۟:ʥ|-tj>F6ʧ{::m YFZqv8:Y3T'k,y]W|@nZwric +'],x`*ϜJH\]V I/{ ;X2Z#qG寖tC@/dړZT xT{i-nĮ¬*<_R^q'Hm  H\̵ 5l^͂LZؿrs0|ɱ[Ʃ&]ԗA^vklLJHW<ީ c6h,3CОg*>_E}4**[z^3,qLRpw2[%-(> WaI'K"b^ Yi8g@=QR0#'ǚVPn)M(*t]ZCdqHӬGR䷟ia%`ENv[!ix9X:@55b# VX;XъE:YܽۉL ,ɫ$ R@w3M2aH s˒ V D?k7<"/O>U-r'B;]%2~h @<~D$SE^|:/PЇP7w~ZZU _ύ&U[lY:/z=>8YV3BRu?̈A,S8\V!>iRtʩPCk#b%~c#H! 6 Nc;6;= 3XԸUNGsF4H &D_|H? 'D4j9(ԉI'ySF>~U"v=kؗצ1V3¼ i-Լ`~iM~)5 /d/EryМי'nǟ ;ITm7'"ݍ"b9<";Su4zN&ҁ*.i)0}FRerHD /K V` ]#ދ(jz=KC<>vPIk mԉKWXzWk֔bڶwS!FI&鉯sF=M nTΨ"{aVv+"(&ջ{B7.KF7ȍUVg LТc ݸ`Tc.9/"|H뻞i8<$ QrwAB2 H0H1 `0z,3&=Ӌ袜~W=#!mkMדPk>l?p-j#a2~z΍*UՁL-84=_Tc͜DZ&.WZM-"7|c9io]o~G"s,E/x+Qr8^S0*o=+E= \YqfBnLx5Z|BTj(rUJ@s_sOl"fv9m J mSs C\%*`?^LTA5~dOg[t>c)E$A/}W`y}F~Sՠ&mUhAQ=eq^@2w˃3 V704Yy_klF.F%Ц]@˚9TCL"4Nfi7G15'o_mUc;ji T?^HCi->I1ZBn9e-2j%ҀqeTr7ᚫX$|e{xjvՎd^:1-WI j8<%P Wz6S~aozi[!¢c|Ϭ0C 0/:Kܵ뿠['TΊ:W|0TD |P!} =PCT&BXkp,LL;WDѿIqSTeF&f!B)b4KE6 Ue HUACc,x{IjtTt9R0[p*Ѣ2Zӄ^و|m-|3!L;7ҺQe<— !DmHQEUJ7էz.kώ|ލY, ]#[ ۃy-V&O۠[2aQ }h{ڍQ5n뽒]&\a횖P{]mƵWЫ3>,˞U:(㏃g RdgHQû MDZ|Km6[ӕNSlmR0M3ֽu_~XY}yr|آ9'G F\v$C`GCE1[O䮬d{oQTS4=j(S4R/W)^T+0WsOM j.x%qk)j9s'kRTgDZoRZ[Ă4o c=̲nh=?p`?OB(Ys:gSI%f6MY;)Zeu(^ˈmW#5a ol_. Wm3)xrarBIEa I>Q?RrsykGWX }CJ^Φ[ڼNue6[*'U0FܫR&mtIn FP83 dwh oj.\ 6I8"H|KׂEpJA;~&7?C2)`dcgYmzFwwMMݯ?!K⍩HW:XmWtM M88E=kD-r Bj59 :JZPv8tj_Ŷ ;#ltԓ5aَiżu6{o<|mL&23e60:mQ1Q0>(c攆|67.;tAsBqADW%Ωh`X*gXȡ|P8.^j%[O?hCk:dow/k]d|9Yj<x'[V$D0^M!TrkҲQe<ˊ3l{f7xABK*9YѽܐJӏKƦ>`:a{unf ?E}Ņ#*е\e&st0";KvOc!c(RN5X wmIW-!)P0ay&{nOLC/uݽPh@%CW?ke_#)zb|& ã$T,]5d_Kv*2'nQH!Vߒ=2#z 2u6Fgn%? J?\¶ =Lt!$/OFt'ā^i<2l^)R#`ёViyd`պ*&\ ?4r6ٶ3pY2rx ڝ?jF*~EyC;Q!·1K]sOhDY?|A`;[u M'-i@J!{:%Qu(Vvs<7kҫ#B*t9Ty_n6fypN>@0mE;>Z9E`hx1J}q^,|Kz̅h2Liz;ji*̫x o' Wpx&&UionaˣjhLaW+j[pX.X'ih dӥ(~[Dٶ+̕9K9ݪaa)5lURq}1 C J34{|X'%Ёu> ]js [D`amR0jZcd $!>:=K-iNy5V] dIQa{i9֠DsQ ] N= PmTJGO̊βK"Dӧ#ͭ2Ԃk B* cgVO #c29ha;Բ{01 {;N@SQH 2őJZ&Ɲ%ϥQ`S${\~zܴ3c!a0k ??B='pİjR(Et~`y1) WuFdGisyJch)>(a< ZOMFZgzC4 ڰ?. mSIa ukUӆG\A2Tj~U!*7y:,P_묹'MK ҿLD g8 }G4Da/jL-Bhl^)p( Mtݮ,f=r ήF>EۼtF>QOō4.g"o&v apz[o"|~$ÙzAxUXa'{t$JKP҇0_/R_vqyAO<5roH;FOÛZ Ui$!$gxՐC l٣r5y|,kDEܡ<0$b?qÐRZ4m2W!r-g}Ҁw68/UE8)GB.K.8SI&O%MWɟϷ<&OVe,9Qb)9AqmZs${%6v+Q9LK<TG84&{N(=!6WƢ+>xķMP#stX6W-T ԙe{eV4TF>8H!m1/c66flA)J zA^Yo$`HKI,p`]<GB"Exi@.\WA)Qv*A+@_Qi9Gs]1X[ (G+˭+$:(VHioҲV΃e1<o+n&z|>1(b4}itet{?K1Ǻ\3% r.P}:`Sy@<Y=Zc!Ȋi#`|~ApZ:'~=/~_k_l]ɤ'q*11s<*ғ|B". Wٽ*H;h3$YjeP|dww^/BFD) mED"7xM08VD 4xg|LA9O]]pDsfsoɀY+%\voKOJ0PWmWmna2 /|Կ̪-A=d9 I]$AF\ ؄ VeZߵ}8Jg NywG^;8C)ʄiQq%\/'#_O"ӻ3p** R U%~t sN-B Ix_ǎ tpD;K^Y'eȩ4!e>mrYϘdXvrA*htVJSn([d5**5ChDY@4;th܋?PY%qąl?r!d]mWqlU k^{[G'^C9 @|^|=^(s/ǜڛ+>qD{fxh}(WC2sfw7;i j ON!x/;ObulCaB58'è h?UJ/^nzװ|0i>FxMK֍d)d}|a"{Xж4j3/QY?E9)z",( `xB,:MGia\0Ơ_sX3ǩyB&y|5񵧘wC \>wEb6S6 l4{#OzR Ax΀Ԣ^XHj}gY-ŔJ%B(OkMXUt+28 5`(fE/~Ÿ+ʑ2|o|d{ًJO9aG`5)\ ѭ&1ɱ*88/sL<(3'i1]LݾÿNYsnz3moFCTy׎xol!Y A@*ɗ,ޠ׹^!b7g:ө:Ԥ[P@c^GArKRH6Uwz+?~~P^~YG7B,XΖdoS~)l (Hoi3kꘗrB`; 4Ŧ{FU%YZD7` ˍDmC*Ր?\7^a]/* uI8)"8Gf2Nle'nئ TE7kn ÖО a*ٌ,53w3cx~ub1d)V6D̰ u@z|ǵ{F^!X껄IUjcX*Z3u7edî?fC4l0s1>oJH)4r0 vc 6se`=-?QA-@@I()O p.Y4V l"ߖ<9 ks ɿw:RC /i 'vybiMLRА!|$4߂sYxr(%C ݊^/}B\(N{ff4Mn!ƩʇWrp,еI* 2u*ʤ:?z]`-pc(o}f*% XA>12^ ґ,@ d~_J%ZF{V?~C8N<`,'hot\ʀ/g(Lzn]_U$ă^wۘle+v@v3v:`~*u$u=BȕX`6.YpdXy*H66@WoJdޓ2HFw.O!BNF}cY#e'J%F[ $RQ&7;J(T{A~%_ "M:NeWR/hh{'kuR4BʦPn| (QM!.8 CSLEB2wQsK[ f\Jvr:Jزp:<<}*݌RZ-0o$ųɰ^KpO*at݌s&d~`8 @OLL;ܑ+4y~!'f3/7u-jsOf{$af'GiZFd.M:D@=s~hҢvdŁ_$q7)`w4{5o\8daQ-SCfEӝ#~ȂP^ qBȍr0^w‹È cfуM"N|(2X)>+]wC>2|l-Gw^iDY-A _Cg47Z^u,$ חt-Q =:o߂-Ctޤy]{J)YNOUlR)V~m%*vwIGgRTBlb,3'fGf߽՟˔VI|; 0c(SLzƞa5# FaTV-^ _uSP'r4d~)Ś荧7@x5jB+K{x~*&3DAȪ (/A Ea8qA= ysh==x$X7TVX dU,yj-dSu*kvKe?6dhJ7~"|#-3Ap5ZW5c5'=Q愸ϝ-db:4=4cTӥA!>0>l3ʍbc>f./Bƒ@*[zW>8Ph_svT`!7{XJ}Vqޣs0AY c{11\Wp!F6񜜂ʔw \fR+SQi+ eM{CJ'O1kUe{%8 0EaHFǠ3iH)_BKbWjK$ _waZ1ǝf#ʒ}KF@ ϲqqzel-Eb_6t&񏟌2dZb=Vu6j*3ų0E-B{ -$b ǎPmx*{&4rƃ8^`VZq~R'#V\:MI%vH9۳RDhA>/ҜAkQadpGe'f$t#Lf%MֶMLA`jRĕ+[?щÀ \hHB]~(zES*J| lUx[ïK4($GX- SxC ''ŦI>2EKK!ׅ1ߋڣ9P_ R/GΩz%eMnHi]8VL2êRa9mLFO)GAVE# 4srv6|J1c&_  It5Re2: A@cP/ZH&&ʡ 3 @ӯaYT7^P'_HDd. Muܺ=$ӑ3tjBIΘL=x9E)m_;AQf#h~Ny}NUMkzt=):[4mge *H$ W=AM/_ϧ!90'@_he+z|!Yg3n݃;~djF ilq*8<<>HV5y%zXovںibF!{gy$Ho䟹1w{6?M+1u,i1.|`mqs@;[>2v M?|m)o*ھt$~5{{dL|8k|L2b?U`=39E'¿ YW{a;e oe1nn>AYBAIl (`Z炍SH[9>Ô\1Ġsqř[_<UCs"k+*q"#?R*\A2 |}dZM&WK?9a;dДn.@ޚԘq_ldԵNZ(U17Я0Ay~ڰ0wT.TWTW`͘때&׾a'ÞI4̨Z|L2”D1+V>'49.gtD:V3jfCcc{UJ|.k`ezWԴΐtJ_}z8Y幾]qX #K՞9z뺫"eFj3\ȣBµ&?i~ -tScPLTaPA _Ty@~_=!dI_VԨ.7j7 !O{V"%'Ĺk/H;|SFL՞؝yY O3Rjzw }*Z:X(N/p$y\a3w)|!6@Sd|[y@k}Qމd4{4\2<ރB7b`^ZijN>׋6[Uo$cH&}?j2s~W๽1¸&_#DS! +KQ<po۩jh4[* ,d&bp}+6—HgWmUGi~z2^@z4ne(.(`.H_(,ηZ^Z|'y;?i8r2`!p+"|>Ze66dJȗ7oʄ!<5wb̭~ cCMN<\պsxsɨclqz@4UK?F}Ngas4 h;S/ΙWfQ`Y掺}=NurfLtnH1h|.덓q~mN1mwr<\I:zf("~Ijn[lNedG^MЀRw}m Y4\ + Z ;㡫0arLnAp~x/+cnHz .k|iDzPgeqzVo(T3\6@ytO 5|Ib{7Jȴ#r{pyy~a~W FG܇4͹تzgz_Veˊ z*xU9šnT UQXr_9F{1GxSgF7ħ@2{qxh~/7HS2PjA1KĪ[vO+T \YQJ'x>r2apru73n6 vpM%h^0P=Z$31f&a&{]H*# |;M36g;^8=BWP8RJq~~Oħb̀ugs~j n*eȐ$m_2Of@)2"&'y8RjRPGvtt˙ҥV:ygzE꩒cIQPzI)p׼飰tw_'2[mmBX CjPsUKʜ4T*oس9.@-VG{Qo:(s# f<'$Q)wݐ] S C]gk᏶LpK;DKRD UyE2^t0c0L'/#aNLUڑ}(S6<֞p_=v|pԦAݦ=ɻ+NwtҲ; Z@w:wMt6&%J`) M*+ b@ON}fyDh@&gT6Z0G!յkHf)>[3pTΩ5/<7.g؁L"PhNul Ɛ-يB<,7sȐH)4AbPe [˄ /*}|S&B2rxlSʂ_>|<|ld5j_5Y] Ty(!c!d0b0 Gl_{o fs-]Kh INkh'!qo,aU)dUĿ_--tJJqZޝ2aBk bD1E:iFZ` /-t.=ޱ}ߌ=[(rAQ]hv5{ *F$v^kV#O*)Zn8>t09RϬ`h:bMO`M@ 8X.Gnp.c"1Lcrhqo~JqmsnR9sg07yR\ ,+JX)Z3!,ĤnʳC_C (δigpA";pA;&zXF%Aphb#RvCkՆ#VqaE[H4Jj8]%jFlvE3+ ڲ t,_G&\Twڟ`FÆ aEB3-|4È6s1e28g8yp=h?1=y^eSwovr! yuZh Oyfj@85wFSj<\W| ͝8LRe~bs3r gn`)8o[fZ 1c֨>L9?73=nYWPcrgOQ7HE= %B|>:^y'\pGY㢇i(/ ך/v$S4&Ob*)1(DGTXHa 69N_b `4/\fTݑ\o<؋q^ jܠ%eW/Y5:Zzp]b/ ;&Wmٵ|1TY<j;(֎-%'TA0'Vz<l*FeQX<VE Z>] %'|*{ꖜL۫| rqJZerN'y *j D\Z43,U@1oX.)slOg&y:,J4ŁLn H9M1sDSŎY)9[dR49 Rx=4p{h- } ¢(@UhlSr;_($|= ~PPDnsk֘ ]aǝy@!R$$KM)'PC_PM}Gf, "[7a~ng5&XB0_F0"e( tQ̪Kk1>T`y&.kS 86FHP ;hgy(ۭJ/i@${lQٰTsx?C~ Dp6i"c`F _jM}qm= |JeA/n{8Cm3Id3U*a.yH0fx0 2XԂ SwX+Q`'6ٽba܄spVJ|tإFg!NR<`ɠ?vWF7(E(/ԥ!a(Tb9JCPehg>X#xquw ]onQX9V0O!RŚ:ۭ ?f{߼O[.sdu+2!" P}aLMh)l*E +i1Q"=I|U m1&)zBulryA),DܷsB1Q.3o^N ytMPSBZvɜ߬bmVʣteT„&L7&R]kҶnMrzZ! `N3CesΨսzP'nQRFO*XV]܉clA4yI(IkR$c&sOL' B7úTn(g%'nj>$$Ia o]2s|5sA[4mwT9?@]_&$S)#x78F8D&Bl>[Tn)[@O.('%z̒GahKRN#bpg3US誕_V{p{aKO#nwQ5w&2'oKgPH﹃# {@CqKZYg+y{H:&QQ$@b t_mx P>Sʝ>Yjg-(A %婼E AWb[=9["9Ԍ5ZO{r9T=1g?9N$]ZI` Ek׊$*2Ws!y,dI/[57l.+Kdۛ~eĢءզ}.ik‚C䇊wB&n9{VhŚh[Bм }jRmBWr*.k -܂g"FBz"IsGFLnȏMlFT24Nyd54KKã oQTۃ[2Tn4EbFfu?t?Q"ݴx5'ƞZN`>sG.!᥉*Y]{=/ׄqtZ= @KWʅ| ؕm18-9h A7Rc nMJQk~ܮFdEᗭ 酮20XǶcg KB.(ʗJQU/nj3Ey;i&yGHg9,q$c\dUbW2'$"sE\C)KRMiԧ؊̘{sr@& [m%so +Â>`gHyxfksЕjw0j0r'#p2[GF-@K4{8ZT rޤpyjE`Bp&ǣ<.qz.)fcW{? ]#!_A_ c^0-"v\.h4MIXrxŋHL2& dN&9X> _(I+F믥bsN?SpiPHo3 Ź]u`x;wDxG,cV[K('Mƹ 6B d.[Ac>/O*<]yGj{gG$n#R|l 범7&C~Q cBØf9+۠l=]xh0sju{@U7t ڒ(fHuȞ bw_~ EfmϺV.@Q-Bޫjbl=+ΈnS|`V7StZ>~]ⰽsj\a}U(8pjk{8؞'oT?{ծX߱p܍˒F8ZDXm9K*ݛMD'HVP\9\EDAU pȖU*rh9ȗ~ ׺~sZPx:3Bg0Mg>`#EIBPh'd>Đ]}?.) CŻyGX@gGȥ M aYn1ɠ|YLdfZ5#R`Xz>+ႃZ1~7cwŷqoEl;8 1fp\mr[`P.;6f6B0ufUv#U>_UiRHqUyp1=PIj6gƸ:EyⰢDw1aPe,t"g{I]k| zWxN31isC&c _{/PzCo1Z*[]DjÚEIj)hQI]fCtd>aIoQڠ_N@zj/KI3#x~tX]-&C֞nn>CBnI=s^r@bYG f p $yFTS&zڂSb6|kа7옇lYP<:E ZDpEp@UMVx۔:Zib1,AGc,/؈d!t@"$O23sY<%ا3bL#4Axg8f)oF55ėpO񎱝NWQ ?C$Qakq uJeXZVrͤGfJpg9Vo~ #x=Qm#o'MC#(wj$6OKn;+Cjh*)v n&bZ3 "qFZT3xJq>|/dDEY^i8%g%ƹN< r 51w6/LI.kVSaȑU1Y], &8%X"g옡&{0 bϾK݄25ՁYI 9L>GnL^JSr_~HFs!*'(Dqݥ[tx>7iwgxB;rt0CSCDY^ N̍ZF?oCR> f4>ݤ?r'ݮ@Sm/]75(*S-,{wvu#\ jQ[)ELKULВ>^3M]CqIt].x ]|aiu ޶zj=#=5̞ \̍_)$RbZMV@PS/]N s iখ< I -pIؿ|]_6<:IG,? BN˂X>!)GِWrA$V6l՛q"A}̂Tlm.Wk "oJËP b̧L e;צv9Uh rÀ<]/zW5BĬ3PN ̓bM"I0 K8|ֱ^hPVه{%b NFüQ${9k!ImT Yc{4Bx{Ɩ&#RχLwk؛&#EV޶E\㩥 ,쬅'nD s`d[>6ٯKyraVgQdqr#B L V$ w7&vq1Pv+[WOKB^k,],]k;Z/sII Pd97KuȀeڱWU)QdGht4zfhN 08y$Dd{hꢝuFޮȇqΆgIGBx"LE[5C ba4XAfG9* Ds;cLJ +hlrX'/-Cg9"} XlM+5!O3(o0f!4 #G嚳TcA<r_޲L$ [ƿU_bb6O')pES,/2Io~|:-b'Ayn!aeEJ;69|tCC$;ZR&3 ΙeN2쾎DMypL) 2fߣZG%:z n.d£)972=K.5 yX(t,&C:6k**LnO71 0#}neܓPfIdOB//ujMy9>b^.w9/'Ǥ90T)[tK%UI#~ǽםFZϢ\xqe Cp7+R3P%.+w1^hҎ+G>88Z꾣AQ ztްℒ+֔ cmQ/ Oa,A]!@xQuַ[E<$鞢ܾG|{2qZ)`"?ǖq1U *11N!pqӞGOD+`V|oubebؘ`_]pC6Ɓ"X-_s#Ř(` 0ӊ{MVݰ"'ի>W [/k~zeqrҋkV*t=2,~wA1c82 kWd S}ۗ;B@ yWtZQLl,!RbDe2c`, Je9|1H^}d N/1,lvH1!UwM>R .5:P(D0zp`f{}+PMI,5'BY5!pjۀ.vȵzTLvǺMtwEi7׾*ۛ@Ñ*DQW/Ɨ}" 06)'][uڭ*_+O9/a?D]G2ky?xlZߘ|b{,Iyܛn B?<&e{ߐT3RT,B+67&Sq- ?Stзb.-[u"b3+\ R3/^iX*2EʿIS4|?79F]j#JUf{Z.VݾRQLseU8O/6e ME\hV$Ym㹬aF_;sPtց1vѭ8{mRr: &$/B!"3'L?1'2ngrL#966v6/t nPP {{< y[;"~ޞzjv #?W%cm̦O|8`~bLN'׆#.# }(Kc"ke!Gڋ+6aEyك"1/EO4cq~r:P}m`VUZ;![ A&7Ok2,_e=i0NƟP!6CY\ w!QimNTⒿbgx^3 p!9E0n{q3-^.qv9%3d&7qLlm>{Ls! '&~ Nm tEJȲZd==>)%-W5Aѩ/}!z <)v6-v_&)#$KLjS["4qhT(})+ןʭ)pR#eHrtn n<vGVY_Э(O^JϨ_,.O1!jy5YjQy]g(M^9B j,f^_߂]-ć5o15UH`Yob{] #38UZjl䍜giخ H! . y@:fЊ3ݔzW\KFlY-Ht-JCL𩹂?B/-_]Kgb~^5 Ճʠ,W5_L~ bE[fWF]T<!IRJ]A΍z9Sݦm,cXhK y)Ki -+ @`V>vu燱ux0|황f |!KWr& LyC%0&W`n9~nO(ha@ɮkR` ^-9S 8PkPM[Ku:x;4s[K%/;"Z;S2p)jx}}KPT?=l?XznQKhf@?_NC2}輲bAyHn{IUt me6頜l$OC '{}Ζ?C^:v *l*Z݀AJH#{\UI5Z.ީgj=hc (:Cx rìzw=l{1$7`ԧkgb,$lr'ػgE%D<:^GaўS8ߘ6ٺBY6Ju'tDǭ1 v=@>X<@&tG8 BFGʐ궮`7v.vP&Jǝv-j֯QS2_$m"ۭ9"($Xת|x"-͌EGkQ)*T\juHKlӃL6%@ F"P!SMvip{mfs f4{Ce@E_ !}Sջ 1Gao}P S%f1i S9pa%P%I 8uHy-BM 4PýOgwow0Vۆ8 xBp_L`ݯ~75xNF6#- p]~ YVʒhndf܄bb^4 ^)D9wsG4a/s븰V#6ߪZF}I:OK[>}Ȋa|Y 9YD|c ~6)E My|X5 5Y[8teWB Rp9YS0fx5X\ aySHvHN~Wq-Q |H1RnQV֌( %|>3sC%D[%I{7F-W]v({Ċ$-&:? Ӑmv#m;8$F0K"cp@ۻIlEkif)2I.][=8 cM ܪyYB%9&oݼjpT]gȵMre9kO1 i&*_Ts'%,|lRsUgfEZډ"]߰XXxT kxWS,H{DCrcuPhLu5{\ 9޼1F5[ؒ["隀 $'ȹfGzWך,su# ~( RkddCWx`+vػaœ!KPX/kbאO Nr͚UEyShIJp- 8n,vbלKebYO›ZD8qY^:Rf0ϋO'13gn vDd?&\G'f."w<τ#Z3龱.oUtb%澡sQT]B!˕ӴΖ6UJ%4P:!@u?+NF :zS4@P9yf7H9'ϦTyAa87n^ڈ!6n[?uhNGXm3 7ʮ Z gSc4{r@2BЭZF|L͚Y( n0glll Jm/+8_5k9H:GSg GUbQ沷ҭR5dVS~AO~)Xt}.=io`Xɺ=+eEөP|wEM`l%qnͱrVxacwP8Qۥ]7[oمfC;u, v3-J:+uSj`]GYTe@* ^X]h?sa枧_tz`HOC9#>&K=/}K#;U 8sPF~&|n,$> Ԍ2@#k(^xq^>݀rVSt}XFA'e0ݵe'\fL]0jVCJ &~Bh̰tf8h[yӦ cn:v Z Z I.oɤ5x>l} F&Ϙu>'UDI_!\A2sKzbS;9F̓<{77pmtu(gv& gO*Hxf6d'\M}?'L{09~-$a,1>N 1Tش:%:oP^])xy]& {!w$Q^31aeĆdo(SV;t2tZ}ؐ5>'Pg$NIkN:b|z^^DVԀ@C*>{e;6TZ.D$kZI(oWP=-`/_8 |  [5jEU[(..%f}@/x2aJ"e3!O_[H  &$W]\dd't9N,@X 7d b?jDFAd@ͮ1x8v4ur?B)C|7z;/shjH7Ƴā?<#lD^oNy2Im!ѓٮ˒Օ1{i?O>oZT5rw``08e^4a8E0-, p5ܤCV%z" )X" tp VGaEnϧ"xkx3 ftdQcX4ƅBκ3D?4,7kq@q~S=>b& zScHRHSuJ _dvD3ս}֬& '\C>޹;X0bv @yl?6_"s&3{(`8G߁/:m +}BwTG+6R yõ[pD3F$-*B2b\/>Ȏ7 UDEB%R=*pQUPS-=3,!!/8"n最靮4LziԌP "j |Č6@W+'3={A$D8\h2NUz}U T'MCnv(K횵*U\uBє?.%A-w7R;7F%*NwH6v]p|#wښ*ң b\4t7Ղ%ū{&֬y1!#mN6}m$ywm1~EAl7Z%%l,_^wE`HgW[i*X `r.ǵUaVGO@1Ï=DR;|_F?ٯC1BȪ \`U-O^(TX1gLъ𑹪LC!tC_&!?dByOO"mb]2rXTY<&H.Ւ ߑdȚZ'ZPQ/9ǬjZ]ˌ|Fb;Vؒ+WﱢO9r-,#وrM\|f*.G;ܿ|ԗasld.Ho.k'6?&)RoҲR((Iwdp5,eŧSEvN#q'١&!cSoE0ǫ:с&"'xp 'i%Fe%V*C'ͻr9ky(-8lYlȵd",bCtʎ['Ab4J>{" >BI”`[2B׫K4 Vo̺M:tUp[pnݼyY==Ņ& /Y}%0[x&!>*D$K NXR=degPI;44%zdk~2l䞌ʑ.W&p\ :D\m(?H?ץNl"DgCԳZ;5/0k_tD-'k3sv9E=<2ʢQ^{MKIgP\$`Lo3dp6ziBr]vya5A ]Nb4Ce]%b0EWktI¿nM"IiR_IE# 2 -C !dgvp;J;.lVuH, l|Cdن-Sfs^7!^s%ε1*HM=?!_--nUj&pUpԷ}ooeEB/OlXQOvN (*0x>^6*! LCcP+踲ӣ,s`${L=Q@,b|mIp|V%BaXNDq@vP@RHz53GO$Vj'+ÆnЧTw <Ն2<:(VE4kOϔe~oPu}L"R a>"kglE3j ΰ9$2LB݋K2U<xYTR4klpJI;o\AǪ>X k['?UR1iQ`~$CBuXe% {BYLr^M"ܝʞecy~~Cxn@ *l1(]mV{/ꚜxZ *Gb{U֕ !X0iWnTlS}t@LTX"-ZM:ْLlj6zFqLEJSL=w.Ԣ9UF"@GYwoDFH *>NoYs ?H͸}KPFsv+:RO(u}vum*?A^3knpȒYE-ԕ(̀Qը0{O H"IڕF -fH9m܃œ^elw尬[TmtHth&l{59擑ՏgJs  ٘\wR$~XJ A턺?j* Tk8}噖w "ٮC4 ȿ9Q" 98w50kL<)8* Q2SCaK*K% =6 4H`L,C^R}؂VZL?b4~fɛ k=Y'$K oN:wtIGZWޚq|q W'vY u^@.&IZf ض]̻:8GͩrgH[[Kخtrt D@U2I~ʟdS#H<= PpGsÇu7i ;8vӂIO֛pH5(hz$BkG^v+H/Ûe)ǐQ<39(<K[Es^S|εHm-Zr;>MZOrUP.mc䑗 z3D_8$yGI6F ږ\D~zFU#gdIa?d&&iCvTFv01 o-LtSvmBY)1'.{ֱ޴݃=’r'W@W0 @Ԏ(lR̍X_~ai 0E/ 6?Lub' IdjԘwg߅ϣ0+*X :|OHs0 }nY5`YQT<<ӬJoyvm!hqhW`q7]`1¨.Z=Sа 9T 3B Wn m]]0`bBʚED@5^Ѹˏhi:DٔDu7flU Ejtj87+Q,Zp4FkTtjZ:djJ|~Hf< ׳VE=Xet&Hq̥Apw5EC Gm>Zh\Oo^DѳO!nL6͟9EPmQŠ5cԂySZ/Xg{3ІU4g?o*v% ADGHjs[DT/,Gb!%(tL+NIϾMG@C/Df.u\_y'Ae 4 naהUT!1I!&bcHS=<^\Wik‘@Tg kFјĶF?].M<x.'[=q4${311ϔYp _m :4ޘZ'b$PO/4@;zU.4躝e/)(Y-:8wô. \R#LМ ~B,e"q< ;<`08DaH0}EYǠEt{jj/F@W~7WzL5C1^П۞*s' _t/CG L':f`x:\+I2bĔGY(/8WS~[ʲ wPe^ݦZtqp'6ށ_6;@^PrMɟvcMU#҃ܗ%]c^Û3F{тnŷ:FeӶE1mW*ZΥ]xHX^$(I}aTeO_el!;. 2{JJ6oՆw+#fAYl Һp y/$Nl8|H;ZQKѭ4$!]_Ü`OB MSpx*j$g`2Xm $F%lG:7hI*5+>kTbĮF KQy@=a&Jͫ;@ݟEgLM9zNboU[ DuD4ig BͭnI(J e;um+ח7ndaD"$7|k.T Q[!BJ5p{hFW' #KYQ`2Q_=8=ujLGkct;UD4 r 2!J@~JFۥ=M`E/UIٻdG bFHc2ĉK'sW)]5ݘ񅒹CTL"V6Lڈ1]բ*/z.}"~4P~$HRSf5Ad=VGR-e[޵V[ֵK o߬'8_j wS@^Lf?Da=}7Im5*dk Eu%7T :d}ŵ}(7FAC I̦n|_~kI=QW:CoˊޡD.{]xFӰ܇`ES, <* '*sl=-ʭ'p!{g,?p<{9W7;v=\XS+%*rZm~DieuvxV҃&L<;x{i:.LW@m\^k†Z`+ݳkd-$mcOW[Fc~ RՈOE}6.Xҷ%^]nw vj )m{;(1"4=Pm\mF珰hm.{\/$:(T/ h<5G\u(8n`J6Re1 |h;:00|S6&VfKKNS*8/2{r x{2*8 hDTBؔhVodlv}~[KGo*…[ k^?>L*Jm^v"MҋW\qqExU,cu.^9F+#8T%oH'weհUh/;wiUڅb 7v] /i&XeJ* uj ܓ 5D23iΕ@z ҹ˰R}(>R - 5Q]˪te n5i{?$X!ݝ:1IΜ;\ o9ځ"NX`u?8aNONia-e 6 ChI&thHEmh 3cH-%(+z:MF1v* 2ж\{U) MQ E?.F]s:!g7.b|K@$_jG& ʋoPQDo B$3cnh,ЙΝٗǤRlxRi;$+Yz'j$jUʱwIO=(AW;ڦܗUW7"T< t4|H"41m1t+,ΜJI9By" dn#8Gҝ6.WW@!JtyʹFcccihBnĒpp2B Kl\$dț@%ns^eb9a;wcrL k- u$Fu6QB4Φ@g02W'#ImRX4*lCmE{] ǟ @4f!*tq %^.CY ۖ+B@PTHxMJ0q Ba'ݗ*R./{FM7 I0Wn]ͯ[M<Μ2Vڜʓd^( ED ; %7}>Otd詻FkѷYB^hAhrhOs;ݶ)zr?PrX6yR8/%g %<&s<n\, `碱c)aU?G5Wo`w:_ZQL0gyX`0I~JČт3r8#-6<9<ϟ{csͷ^TS%zh"4L l0h,hYR>,H|ay>٪BQ0u=-ّ:}M/?zv3S+#ic& ~z;Un ol?)/Bk A=Aqٸ?bݧ,ȯ"rB69107~SAxps*Ҡة,w 5BmYfU!np(9J Gb)9R ż; ([Got3{!\q-@ys q (o9Eᕬ * FD|=b6ĝhTpδtHA΍xOJBda y&bS4)h]Cw]wC#%6hopH6>_FX HA> 3;nM|  y|n?E󢐻}o9̿PD~e+H*|J"vSVN56ظjJuh/*7UE'5.Rx&{(ik gZ܆f>njǔ}Mq3qJ !`#G'9J2p{Ztأu32+/ 5d&'6x8bOv-V;v2@)7nC&]aX8 f93)5姪-F=qC]&gDŽW&v5\`\%=fw`R}JPyDd&U " -uU@ΊsMВ1,2 :>.:3eU:UNmI"XTde"JĿ3)u:0jRbӂF%%28aݫG6XʘOܟW*aZ7'bWO?Dty(ghg0tc!t u@SBNI260iN ^iEb,4A&g DzWeV;Pm>"d)9O?b<?دE$I<4 <ӘҏO˼1M}ʍv}r2E0Iu!$Җwv$V$C }\XV!2$5r}&Hds~5ئ.j&|nRJ@Oy,QfJ><*1u ^QǩZ(( m X5cѹ/ Mыl@Le& ak<=,h[cw]¬ 錥[̀uJ[)؊$5%Qj2Z}mPb]bx/c-n|@Dˈ& bc}H[pЃfaTޓԦrC# (1Gݎk4̝Jk5pW)ʆ$. T&g)wXY1)a>piTYVa+)Q% cB,SAwH/AA]0кjLemX4=O+޲-7u--nNkA5]!bd̉4l'߱ PIRv? #G}U E:5HƼ3#c&zjGQ!j_$Rt)|"]0 \EA= KPn{5FY 7ۭL#o#hIݮ$@1ZzH-qX{{ '~wEGZ2mHCn"eZ x5)\Y}efs \8^(;;2E`7X365,QAl?Zxb*s;cb1P4$:se;k)@_[wV)8̴=#eİ >Y#q`4;'-xrՋvU]i}y w qëOΰfUu9 =^x|E6)xt aZ$]R ctd(R% |joEݞ{d\ hK{ҔZ@?fWA鵼nzp(j 0">!/|#Z)=^0\e$j_O_1l7f <יXQ7GU#aKlٻ<X[NyZPR g衐oBujBD{4Ih7.Ԑ)Q &(4g)JpOÝb? (A0ݖNtOl`^Siӡ 6 t\]eeKG %2ky-3K7+VhVJuVVcr1`Fq,~Ա%&VZ܌d󆩐ڧ+dϛĄSlq~Ro3ux*o#UuЇpI.  UGZc6҂(~,=  kQŋ$+/ ޱu@/VW~cH%\vYLa C/$Џ;N:ZÅ?>+_Xy! GդN;)[|UŃp1p3pE(k˫*I>e~*څr'T@!l?Avve` s:m)Ƃ_7FTsxͶJ5nm20Ys]$0?n*̗ h.yo"jɧg_=U +%<&* jm[:ܑwQVC, *@pv_NO{7t`}hNaB@XZQW[  [~>M@~gvĴ4Z~Tv>`Dwir#A@ƚšW_S/(\>,v@[0ŷ[E͏q[2\=Mvo7}O2uÅ$I2T5Q]lrtB | UȂ+r +6eiWP\usVYsA3G˦j  _Ưf\>+^nx7<$yBq1\`lPBaĹqΪr+Z-Bc0Ye*"Uf# "jrj@Hc]?zY3X#bЛ,[$C_zгr5ݗ;o n3zgLOHnWljO+ڤf끗t (:]2գYo_Fl5Kզoy@ ,p!!!)k^&۽ڤw/-p-J\Ҍ?fn7 0?SkhZ#F28K&t4{3VL, J+FIק&9-;R=vr-FsS>Vf0lSd]?fjА ^K%7oT.}JӯrTA6d@G$ZgӰeyy+2$Ng@v-<%1,+"ó%=NˈUDư7}Es*zBauN0 qd+Ȃ9^\ž:Xۓ-qNThR,@Sہ2KVQzUeS"ki0Ȗ+Kq#1vf)n}$b*>* HPz2N|Fd!Np|An@}YOM*nIRT&(62;Li31+e/:K3xjCp*֭_oK,m/֡g/P76$ .ώ7U5wlYaN{Ԑ'0M,IFAF(3hT,S׮_ R]k=ܭYa@D\K y(1R/"+'>M?oޚG;/dǗ́ WLK22"{޾i-!CU|@Ӌg-=8Z^Ü<={sןz A:AD9|$Q_u/kA'Xj^]cL'Db:EԸRUfPoB5!;R1:$~p ѭ0Ψm7nKD5UV /,cڕdgJ_&:t1Yͣ?BNnklrΌy[_ G}1ȓ* ;,;?C8O\G2'DU^B͈q+:*+o}b=1h sg,:`ȚNJMW`f kBef8}PkصQKȴWVQՔ[Fa66a{3bg{=]gc^&AФVť6/a-k7eˏs->>Ja!k{~6r-lg*.i55aGJtwjL I=ÃL a%d !cN'E&^ome(17ץ .H%Kky+8 /^)^k,X+Z7etzT5q<@HSׁ\:3ͺ^lN\>6T%|`77SX^ѰҚvEfz#++ҁ!sSfKs%?J6a+$*=H~X_sqΥZcϬIx#6ֿ$` s_cQs]Bh9.^,>w"lk=pd <Ktzpm]J/<rCm.9D(qs$>ln.wBN4ֽMb^f;!Q‘åKis{>BkT]Y1jao1µi[y@OvM'!FJcyҪ)x(]ĥ@]p=u ^ EosLg/ [fQ1\.Un^)/؋Z9s}Zf^Mu'Oս`ʘ`=檈0bu'OzbAM*J!dr0^|H6p =H'7 >_ROxlW=tA-q̙+V,\g+} w|f͔9 FXP4 *n={ $@%}^} aqFԱT1Y<*3X; @] (hI4f`?n(KwiWew;rjAj`vQowV΋HMwP|mMF )GnD4ҷԲߧ#L kbnȫ>.w0<_!i;P竀hHղ38mY.ҤƑa2MvJbuub|⺀J~]oguq@+ڜGeܵIĶi,D k?w5dqz? XSp8osÞ+qQ2)@6G/LMvEQ0%sMJ@ׇؾB46sjfbGͥmZP>"E&]OqBsŅnmӇ8H2Cɛ7Fw~"xS"ۈ=H)Q):[ yT |/2C@lݢ#|۔p B=ՀStx|:Qewʉz#G85TY53oN-dMUZ`󤷫 I;YQXawvj~7͈̔WCn>|$cz6>*dZ0&5.]"9#:tY"Q^M ϖ`FXwnz ^\yM7 6 qar >^#]-i2d1GcneGTR֨Ne4-?2A4B)!"p{] ?$w|%2c%ṖS'Q£@RUSl^ZmaB&X<]3tOaINۍKawQ8P'I>CrJLdL. < A*vd/6,(EkRF5,)ʏ]p }WSq9E z{ 5L32d5rg/8"NXw<ӱ|`pABRv_zITdĆֵgezHF}VwBqY8Zb`43ꔕ <5\cX. 4M\)dPAr/r՞mӺ6_j&/`qp avhT]fmBFW ؃x# 1{O \'Bd}e7+/@drMT71*dAo$ׂNS#i$ߔպ[,/3ѭ^_Y% m6*mMnh ]u7p:JucGMc0 .Z653%=F,I,zqW* M^qNfd6~WPzDaikL.ylJg%8KJ֝CjaM¯fDU}kbdI${ȥppE.R90 sب<^a9RjV[>;.q UJ5.#Sa~ 'ͬg g\IW#Eʿ6!] \*f`L0ܿ'_.C^28= }dzi_~vTvhؑeTE% ' ixdwLj[ KGx/zIX^zՏ; i@m9z-!H9,j}fq }/pldz23A;K  ^u)1P5ZzKBj4M*>b& -C"894Q=n3 UܤͬgRbSv˵mH׸l$4[zw,u"2u`ANU_5 bq_SGctTFu*CfU*97em].M`}8S5#EmйxHWPJ&k&u'It[:Wo!O|[ųK/t E>o2 l !-ǃKVid5g[X6C?!cY怙GeՊsu []>[x{fW Jc< Ε T|}C{wVH >t3P :{Rd{nޯ)'{bs~wi /XEaWh~0  |)`w c{$! zT6F¯ZC7&0zS ,2[;DS|ZQLSz rn̖#2dYF3p_(ob;xPa kW,+G#wzkgIR= V?SaIʀYav+]Pa"Jލ{^U+jG C*_ p x}sG) =cM73dnX3I89iJJpOH&|OR q&="Y"oLf)gq=cگkk̵Wo)9Z߸S>[ 9\ݒ։ q`&XZ%&Y(ݛ)":+gOD<h&w֌8Ex]A5lHQdaPWR$EFک^]^?X7أ]8{ }XF="}Г4RɊLV LU}FNG]VXZp1f4QO0E1.qB883^#_=quǹP2𯛴KBeτ9 /j2G_Ojy3l?΁h\䰠v{E{\)qc}U=\ivN3$Oa a>vHh8 FsWRtqEa8R鿞_,wI){R [;O;΄ 5\O'~x?} >߉rR_G2N1(b#<z]+&"ũV^ sY 6oxax2]l%fG? 0Q#ʨܽ8<ЀZO&y9h\CEl4x/; 5ᘟAwd' 7x1.Bps7kXuH^ƣ?hȏ Mod`Ln̙*١\Ud#x6-~rWg *EvՓ[|ntd-`*w3+22F3=Oswxrn76gIі:ԥ' "\0GkGוv₈>;R#() Zv*~@ZɺnT˥n^RO|uyd#PGj=K>'N◻9Nɣ|ES:xaT.xF%:eZbYD1mV"ȵ< } 6ʤ=G{Z< ?#[N(yP0tĦq H&b'P K5S~bo\wϕioGN#s[p\~ QAL~ ѱXWڑzaXK%D=tnBّ>5oVPDHs'tpV: O: \-ƲVZq\΢ f /K9[ۧ2@oazEvБF]ŀLq'e&_>o$ -;$3P$Zeջgηӈr&0\^Mp0 OsHPl|Wo} c5$@vܯ"]oE! 6Ieg$Y<3'v>W%Y4VwbFq*TmB_rxՆ"\:gwlb ,B$q²H.X rheFS^zSz3Tq"#aL!IOOz!qMޓ??jnEԮ^gtOMat5!T'ˆ+7s Uƭe׼r_!& Ng5M#W+sӒr2,S1PT,3uw?O8-юCy7-jIur˺C=vU(Cge)V#(V捖o彙ߠ8,X0@ _ \/+aV_4" B=HixۯYu/lѩ=WZ٭;WXgɏv)"(,Qh vĬ'g5 C% >DSAKU(3ǁ@Cz%3'\Ә-C_%>;w7N)vOs7: C; t`?G&X EKX}Hb0(J׋\3#9?SP"y2Ue/:8e3h*~e*t&r#wJiGEjM!Hi >, fPWrB]xP=G,wךo0k^/ߙA|HP/{9vQ 5Kq6O'˦bϕ %/ZQkQV3}+E!0IRF-cJ; Gx!By?֛NUUΈöc. P9qDH( bCĘ&ch\0w1 OrۂJl _POGNr<mMXHw {>qoІ8$ ~{HV &ᅓR^c&>9(8.7ة2! ln1=tUԗyϩGRRZۺ!Bt22Xs)gR$5& ->tNe+<&e2nBta,^']mdgg &D1bs@\l ꍤ c;tD2;Mq/!cA\=M: !Ak=vAZ&7:^8~/۪+&{H-[eq%T پw,# ֌f`E#q<ދQ~t]{aJa|2;poߧ)IB3 ŏfrEMzEW>mO@38|l)%uT艿Qߟxb@8!bQ/^UA 1$9`d%rEmR)#0)g+]'h`X\*>2]b=dTq&RvsR&a |vjVh?$l\.%R0ibD4_,Ķ ^* g`Q! :_S&we:Tzm_!ddUqJ60^) L-B" 4&2"y6,MZL+~+ιyA>Gp^' ꋄC`|bVH+~{Auy ~tmTL} y,k`-#PlBDs|>hOwp`uX QuZ? EX'8֋ 3J9As{&3Y]GfγT33>1j?"!ߎz*L 9 9we5}Mv|%|#q|3EoI` MP#ʣ#`iHȸ"z(yPi_̻\=`|My$XHˈULJ҉R01*SQ8u-|귵t9 Ϊ1IP:\2wU{>QLЅ3Fz/Hqɞlj^!@D"VAbd5f_%V|)49BD^2fljB Kh@5@Y-8;'-AC\1T>0G:'l1}jMSc!fZsn &.XCNʐЩ@iF4˔7=T͓I1-H':PJM d;:̟=,tG$ΉReu}:/,S0UIap,P;p42FJy_hmR/;E%k\(^?K®  .fڋ.=řdŮ5HBQ}u\F I#E !iҲRX8~Sҷ K306iO,uLpgS3W@?$&[s2wd@H[N@rn)9hRJBS͇5SA*9LX /װfaBxTsj7M>Ⱥ7.{USn> >i^;Rdq9J e5&,@##|R~F*^H ]%!z l_> 롫|N{#^d3YҰH4 bymYkxL>Bg>[S]LGqEj޸:BVZ`F~5rހB&[ZLΕ]"p{j6kc))a+zz[8$9qx<1KLhN;$WW_zf/%o& @tcQ hGJHu{}]I(TQݖ=W9@)KİM*C!h}kBJ6:Xw3Pgp "qo*)hl-o~h%d3ɞe; ʹQB$< uؾlXmKt垤#f0O1!>Pe[E. ׯ/W$-Ƹl~KL&ͩW)4ׯAE|)'ݯ ,r=,uU{<<00ȺR`S;[ޞm c>&Θ ȈcNLib_kװ\FOP'ǘqb (3﹅g#M~">xt_ɬ H]$X5 (cj4Bhc;|~pL"ee!) W9hrXʁ_-^kb,CyoJҵf$Tgߖye:fū|Uͯ\Y4l#Ph wA q$,[/N}ޝLxFuV ckS%e hur4C }jWc)@~ NFoν?wb891 t)D݋YxD L(a&篘Ő'iBL;{p{tQ=9Fa>wC" ;W|H U/sLg$ coYjгM3s+; * z*EQ#zϝ45?P7p# ʐc $1v:![ |g&/'-|3}^r/'oI%6;A bѾLtBr{H‚""Qe w1F9;Ҭ*"րлPat5#9 Rvk 39ry%MK_՛ .bQw= #eD1dBoPCb]];[~Hb;jSG 0k}x~*3Hgf)[O`<ѝ7zi}j;6=9wKkEfe?VߪR{܋LhW]Sݴ,-0J37vj*Ejcqr!J1-OR VELˈM%H%3荞Dkkcnz=0om؞M漼":>;BxY57mGDF@|?J跰}6K෿IA۞)ga(|gM8={ .%=feJ43Q2.iGc=ƦDtF\ Y, 8]EAUrk" KnҢ䃬yqI*D義_L̼Y̳BrXя9׻7T 8|^K2gaGh;1C,Lp>r3RD'%pB@բ o_VZrlyByS;NGq@ٻkV֦?.` {M[9{u]՗8`qmt;DLajBd vCWwr.U_46CtY9×a$4n^ 9~-B$+ɾsޛH[?cuy_."[LZ%Հ[E•aK>ޓJXfbv[!'PoTS`|zn'Q4xBPe=;B99/;ҎX"QAAm)"*1*urB$e0HM𛱺B{"NEp 2'ڈPkbnPKG"6ZT1\d qL;xhXO9ڴ+3dL;7f(7^P@D[Ko%}^3H=\6Sx_`j 6T,`r5e,M$ %E8$37$J-7}143ZUď&z>LAJ2jUI/NHU2Z7nTjWP.Mx/ZK]ۡϏ )ӯ xjFzTwF@XҞY@Ѧ;dfNE~kԃbzd'LøW'RsWh~sz5f¥n3IØFH|b:Q8'x} Q*ޓ . i X`EI^}aMέWTu,S\ (rV0eoF|nm9~0"c"˸ZĐ煈 JPb5,qp{ª tb\X\W !:?q2:ui #@ED1\P˵dgyMd2XzߵԐXd]pRѣ#Tz]yO\ yC'l/ ]wԖaZ3~ޱ6t. v*虘`ۜvğ ;pTMٷvNYQn M,o tZhן.f@V5gӳ=p]Ż#(hC9 U[V 6Vm|9w-;PF&騿'Ӏ(KhABr^}3*lc'в2TY>$ R_wMu|s9tB52IC9S[W* 6ZQdlyT7߈U!J@<wN؊ &1{G;NHŤM\M^\zZx:j_;`gӔnu X]Lj@_^e ==< 3~ؠr*㎾V-z8|&پ-'1U"\*HgDfyyJ|JHnK.z#t@ߜZFv6 r#ln:.yjn]#{dL$T ;cD7תV~N^¬פ4ufr{tw|^>BxX|1 dQvӫ>GѰ=޾#9kA) I1--\PM&fҾ|Wٛ8U`OCH\ie5 YY:5.R_ }@qƘKo=kW8V;clfoJAe?IM3FYf;ۤ[)@!ɢيv-װ5^kTCA*]W`(WxP>Oʧ"_X";Rst <*Z P_ ϔZ OT7 ك,Y7j'X)qDH_ԁzhIҍAaB%K>tvpr,Ǩlti1%E!H̢5(v+I3+ufyX^ tK*y7dz#]i:WpӞ5֙)_4rB v04Z,)?}VP[&B3Gv %u<ÏYzXGkx@=yaR&wbhEOm+wdfY5;rTd's*m\kj7.2퍶,֢ETEf'߰[A1*J_*Z0p^p6@b%MZm;Mأh$»p׈!-OoJɶm'6F'KG Esxݦx_ƞ:./躋fE6Emՠ h AYx\^5J^&rJ.3+FeP E/_ySIl>bF_H%:W/}pG/72.{kxzӋ3CkMdJ2-kRW_ܘHpnVTm wyhX#v L4Y(2ͱs5pό.]KRQFrڤلO$LwY ~xy˒hƉU/`g؇,HMUP\fϵg_坸CXrn֫<0:|.wv$}z/yqƝ?ϫ cB_R[C<]Sa.ق@ֵT!hWW]p^YRh\Bƛ\D?sDBC*ԍ0Zސo*e"%I&b/*;~JDTmq8O[ \R1&zuDZlaTK-$~: ,o;9l m  zh6"7XBN~[SYg{Z.G:Q͚#`"q݉o6C!2gQ Ī ?h#*Ǟ&5onlŎwO74!e|Q ]ގzIW)c<>X nnjzw8>y79")tkv)ZT1NpQax \ 2v=m* oH4n\mjtګ kJ٦Xx2lfx/ϳ_NfUfڧhf}08 ıs9|n[Oofm57'Y[yrf[r0Y^c2`P'C[La$Ѝ90sAcn @g0 K]f0"X"Ea4RNP^A}Qp׆,݃t-z(ƭ> @YȹsYT52-/\fT,TNIWSW,,MC^Ic˧xD)qxEDnKJ(>ݲPxǹːaٻ+L4 a|r&o>R6}O+s c8 e:K6rk2 OgF1>:Mުأ-##]:7z` D%nw3)Y*l%1s}A3LS1k=p?c 9t烂Ey>fH6Kr ˲ iXMF]R; >e$)w7TOϻG=Td@d (V|FFԠ33AUs+!St_\6(BԳZH 0~$CdIj&+ &)ìՌxuNʀw'17ݸÿ+j˰lqriz n;HQmmI"qؾ~i|Y>jdݪutc,AAo\Ҙ-t( 6ӐR9JS xRSԫ8cdf9tYDž0pd]1\C4 ZX-㕿ye-Wp>z0)~x`1'bvPxx:䇬Tu)CtL}tOo$ZQW$pF/! a+b:$ZA+!i ՈGJ H!.װ;G< O'J.qi I*^@2CZc6'ž'q9 $A#^߆xw=edX"INH,K1K]=p–2pQ&bbtwf4/)Qonb&Y'}|40F@0>yf? bDޡusx+͗'#8o^V#=YE)(ļ$Qfa8sy)pi@-zа&Q$oi+2uN !Rga%'{C'fa= 7:nʸ:9ax\n\:M^ǚT nD֘{(lѳ>=S#!A , x; K+ ?fNfۓ}LNJ*x xsngl)`z:̳KWrïˆ8 QHQbOd2V >o^2Tqetl;Pa )mk؟Xw(?M8i6 s/s1@H1*6y w|G?;_ >?i_ΤI209l筎/T-F2Ч7zCL)591kA]Ig1nq|pfX#4N9(O{#ξI=R8$ejf/?kz%4M,`Sn"6`yQ4$nzFo+/(bœtE$K{K,0o9)w~%>fE&QH 9Z#7(Lح 5 x:8_u9VE{KYm,dae9^!kHnIgl8Q6hpwrI q>k =K}{ֈ6U1:YllnJzgFU'JUr2@9pd/sk7u>A8ކRkn)[g:?U~EvCƀNga"`Bs=+B ^i +=WYC7$ nu b !pe_EZ쟌(Vz#\e-Bga5< 0d h($e{zg_!P-R=@vq@.w&_*a9>?H|/}˫\rj|]E%۴g!h⥉*yk2bc0jƠ!J HT!RF'IzX8KpxSBT:X25|*VK?~'s\WLiɱ@w>)\Ċ{Q{C2iݼ/hM:`l:w\guGX+PveБW:/yxQ7S&3[٠JljrLm'tӯEZ cVߨH;vqo'syos`M?0vrZԂ }Vx&͐m:}JE,kA~y Ƶkvi- H'ƀ/=ok|6"UXH&h*yl!˄YI$$86Ug0Xd(/N.ٖŬGD vQw4lMU=35eC) #1Aswx ;zR, &9UCO5WVdh_Lb,-$/uҡ\5|RL]‘w5`ߓ auȊj&252]'jLHM,K Cs  Ѻx DzڼXf'l@b)m&ZA/?= ImXt\,ã _[\4hDz {J<߻tjFuOU ݷ[9*D3>z+j4 gBG_󸶔.k9^OiaCl`9}՞*8=ҁ v$k&o(v/06ZB+s /zR= =1 ̝:ݰ}xe 41^~GAUw'M6ԛ]ɇ#x z:DQ tm魐r QN 4 z7Dg+;;0!_ +#`65Z.RZR Dxb{x,YdvFh6"aCL(SAjUX62Pf}b{W زx VKP'~9OߨG]$v u ֓Vn4Aϣfg\#Q-Me)JD/Q于,CQ٨ɫc?'Ga=!1{8^{$Sf%O@MJP.aQZk˜eP;~1({ۭTh@0\TSCap[eh4U)i::q>]r=;x%ɝ(/n(~6;س#AGG}3mnCY>H뱎19+>Ugr0LVT}*LWXsKR 3ZHwur!Gۜot\WLSXm[탹OQ$$xtG~gЭL"_350!u,@C\^wƶHYA뙖heݺ"et k.dQ8M5Vh#v9G#y#16<[p1&;9֦U`Vj v"X3.D41C0L&2~ʮ3Tlmsr?{8dG۔HѰv*0]uʚbmvk2ėLZRŹ (K"8jA W]@AYҳX5]AHR12J;ԎQi-:u%Nor @?9בnjYrnΆM=xۨ,*RRqT3#'IGb+ƛ&HهDd- rn+Onwz^ga"d_6R mۤPFIqTa@gAEF~]W3䰄:5{OC߃x Zd7*;nڥu?۵d: 5K$G1\6(;c޾ 7PSUm<<p{N˰,_xws\rʘ^ħ)l>`^LR|6QQ t2"Q4O_,/6b/c!OjORmq׶K3®&JԉfaZq I lX-OV0 5Z*cM m@̞@ M+:b!#p1gÖוtjl;T~k^M tBɽL#rB쎽o@~c'PLuס_FU I2߷ #5e(:;X]$=).am8>R;^KFY=Mhߠ@d(€SI4>ᤅ`e2![]=^ԇȚ֌!WBmX嗅\/昵`xrV1ۿ'^=,]qVg(K^"M2KD\l -M ny޼^ف,5XoR.y]Мax*2d) cYC(ZH# {)VgmPm:ƥJҕ4fѩW~ܿkYMA4S2̶#qdZJ+#,8Ly<`bԃeuJ7׸ kEbpZ?qG_ lWt|RysnaJa y>"1 Sデd˻~G玧8LCZ}I#iOG%ad=.qK}w٭:rw/7|d vIsVG)|s58^zCq3O1 ^+I4yVoZ)U˂2r=$cVKfJS+JQ;{V|΁.5 9 ¢ůoi?_-D-oV1Q-n#ocN fchwfERaH%]iڔ>6kww0.GVUo_ܯpEFRKQ(}rN <-ƮdxfgVx2;nwDEhWJ0OI)Ff 8zn0A|QO!lo-Tx~FNtVu O:H[2hB4md/>#&<ϸBMx- W6$4ɑd~Iξe<'Z) =277{\  :?Li$2^,L=%ٹQ3*ź&5wb$m"՘yBO;.X ry*-7!P_dTna Ii,bTn~8ɦP0qrRsn9}_.q_]+ m.թ&%W/+Y*m3ڻ4?6 Bl^JNK be/mI勆!_JiPJ~:#,xQ^Bb efԸvR_9ߣJʟt( w~YRj&'jTgX_ O 1PBBߡ߭Z`ުPZc8 WnĦq~toX]HB@%CbxFxi![Yjv;ӷ# uFmYf]5'PjPǂ76C+uT,v:H -ln9iSX6OGE$Nһ4P6d &djM-FjmauPrEp*rj3h ] Nܓ( ZCIcKodeQR kC0MdƘv=zZ+f+q9{1AL~wӧyzw3R,A`hsˣr Kxp qn>EW 3"< Ӎ*7C6lhOgc#t<#'8ı58&շ@xm/֘RcܬMA=`1jo(;2Fx"ggv- I+K00RA {xMҸ'ˀy՜.#o`9ۯ Ɩ}xҷ7O!OCǰ -rgu5uޜ*SG[Vxbdx Ē \!Kp7MQG=`}U T9_m\y1,g#Dy9oSv zi-'3PiVi])7Afܒmbɲ΀1v*0lg,bnIRFDPcd4 %[v74`ILOP~n$ ;)rRܥ$qϤ&AR~- /LؘOc9p68"-O3 x_+\X>(bo({D',pmS;=k2f[_h={\0 [Y |*AdeGI" ,%tN\(QaV6Ss6/#gI(G'zΟT20 .1"'冖xB҉((/Oc0bbXR~Q = hZudY{ 2[ 8x/ ?*)Rq}_()/AT ;]֣>oY("_rox4sG", !p+a#؞ĈK 6ȕO'4>ٸYKb4ި3vש_bQ'Ov@|P>F&C 4 o_M;7 hR}wy%7|/\oZQڗa%]wT눪 THѕIwM}Qީ\ylj uWlMi̝KHN#J%K5@ ;X{':L@ɡ~ֺ=JtLBLYH>Z x򃟊׌Ld ^b_g S,:ӿ\|oEf.Mv>zvӯ2V+xӿtmħtO!4[lpi4-誂UXK/Єq$aR (ilӍS|<c }tװz9a`_{RrßqjҀl܇_KXǕD b'PK㰻 G!l!y)I؁mv\9ܭXFљ-6d \!3kBhQ-&{`_rz(K!f|0-rٳ7} Cgb <1x!F[\dJ2q{d"ݻx4x8x_]$*6ᓯ .0.ǵ#WzkqQ/#C\ZU}`诿nCb t^DZV w N=B%eTo˥w]>1ط!Eǹ);jTM35{Bg='R\xaDqicl lO:6thH2aH);d<^r)!^&%Ṁ3K ӌH>8VU`4EBIz @M_1v󖇲[7,s,_-xwBb.4w~ ;1R+0k$f`Rih+O|{\@l$Z'Sd1/H^:2ǝ.,{5cG?J7][!=YD=JS@ SޔksNWZ gˆy܊h[l4R9bۓ8+ :R_G4ݖUT!2%V}{㢩1)]=mF`s$&h~Sg3kŽej,:9Q{7yd -s P)ب4M34xH,ON|xezNN<'*`!f]нܜI{˄:o)*}8֓6ER`,!o:=/7c"`23iA:őAtW. ]YD_ ܂; uubldwco8dnhvR9&~='c,xfᑸ%Anni'eV]Z>/|=<&02hVc} t`CDh3MfT ٢=Y_KsapeH[H!v-롩y 9 zna+FPƝrY`ybjLN& .=n(͂CI' "-^K/?l>"jB STO?b5gyC](~w geķe_d5Ki͑ RuVCm eT'\dB$ȬRc tDQNS3r3†$FDDOR\vhv9H/fNjY(=6\Swmď_ "Ӹi|5{0KFP3\"M4Ok#ݒE,`n\$u&gSk'y0/NzO(}W7 FDȽs 2>U@`6ar2SQ3Xdۍbȡ vy[Vμ8 lQC;hޘ$gwB%<9GYLƵVO3ꪧAf4w}X9PS 9YzK㬫 -'``zҹ463l2Zr _S(Jfdc+,io)yNxzd*ZdQ[3KFcQ=Dy9zf0=T%Qs{n!:ҊoK8b&% xӛFl'qt_<ڌw38iWBb$Xx(W "dtk?OŸ`7脖ᬙh'z/A'#URWbh^$z7]?`jcVzfX6ix!'P!IW^J!L i k"zSȫ c8^A7VFdKǓ•la/pgɒp0[UJ_NAaIr*:_^} \ L*SWCr,W 0'5,R7f6Tn1!05)9c 4ɏ2ZD2ɾ|^\q.dÑ#[Lc.[56OlS>! Y%WN5ɋ#N(>ഥ%k{eE5rSz %uCؒ.Y+1EGߟcE]D&d+7Rd[I!:ɀ0,0r/Add[E[-j }MArd@AP(H.U3ԷI75d*ej ؄FP+QW_:V,, veg4yߊΒW"yuc|U(Nayn,E r1s~*@cU$ya˒k_tB aw}A`8CLzT[MZ?\_X³V|o.\] ʫDhdj(̪nho#C0c6~m}d@fP'sOZp.fMnc.Ů.LlN%&L=ȿ WqpAJ%@ETmk"Hk~[7" M O@ӊF_Skx/!"l5" 1*+bڪQ\38pTkyA*ӧ`!jC)$@{uNixG셻<:|bAg=\OGȚܿCSoݹ*Fv"Ќդё;zV[|c]SQLUY|r1\@L>eC7ttnA *(uUOf,&P׉Z1/=~m('WLiLψԯ㊼Лn)…=r- գ@>zH.7.J2Zr8\5 8)QcO%RQpB/c~[7r y>Yu2d)c/ksAK̜z/X7nA*V#-3YsonTנ*ͩz?$A`˴Io5A>IsMgk,[yT`xȴYɲ `b&5e5D:3 =^Mt}LHN1{bFn-10r]I)Qj ^@&.Y̠J (^ՂawBN uV8LӼ$O#q]G*o4D v̎oڭz(R.S@}IhZ-,hJwI˞QH̑f}ƅetgi{'7F>dlI?b-z ^Ρ7ryHSd|g{>\Om 95cfiF[)8A,] +>OF6S.s"ui ef( Mfw!ϻ1O.m഍rVK6DPS"^̛mʺ68a1rJG;?,"a`j#,ewX-{#w>@}rcnU[**%[(#5JK.0oJ+]-u?-.MqV|_4AHO<&8>L?SJ]6!uk)Xj9\\ .)WC Go~j,;JaTȣό> bOmƤI!ˌy>[B.$$#E6{d|MK 44Ѹ[84ZJp,(wt_g]?GO+m0WujV8WE/xPHBmeYRx݄tBII ?Gp89MVn@.|!ߖq*>OBKZ)y-?7ԙEWS>P @E`>h\1Tn ]3HzY! Ͽ&GLWJC.TT,` dk0ܨwzY!8zy''{YPDD}EQ"j#$νsxnʱ15.aLP^H&BQ9AܦKӧX….{Z)$2DLKAmi$ݘşuF'aZ OZW56,i昙P%[`0CJ~f[EW/m+i]!Hhe!/s"IZwLs詭C #t&YaM#8bpՖ.*Y5!p^ɩTX.xqrW2u32SUW4DLOCm ?i3C i%ƆB>uڸݬsiV )9!UDԳzW[yGC ¢ ]>sy]C5e*)..C7}c<{}F2 *#'쁟l G pS"ϔi/LD>~Y*R>. D6jxdɍiךDyRB^W?,3"%[Asvoꨪ^n榙a`*a*2 ;h5?S?CJ5qqĭ.‰9X Kl"ߴ랊O7sŏ2m/^tXJ6w JlmC2+Aq}aJpͶ잾lp5Y\9$TE+t?g񼗲MvɌEZU(vPkʊуy P_׽WE=ċ$$$EcjnEh"7ɸ%Emdeߑv>zD!z;-kѪ&[[w}R_z,2%Fk K*N,A2o\=b9k!`y#7#Qηv.bHf݁1鋟hhE%gχb?.۞qQ_]&MN[頷@"':$6QBQ-cX Q2bGQtEt^GވLOM-H!ȇyp+ UM7#H;"aJ7n4Z#; 7S o23-ļB^8͈/fdEXCnW797FQإgƬ)FAmY+3)Ra PwuNvqLS:G>$6_2!r (7cXx<]%BZdniFM"bW P<%gnڙCbE/1z۱,j?8n$qvJ1 #ϙ(,)0; (N|>Wm,_}oIwX^? )4|g$QJ\gJ/PuLM4Շov_Us%\R2V4R`br' -QN8u^~)3CT~ 87QY6G*ؓᐰ|7p)W+)!MoUݛ*Y >Y[E8^ssoc:ijvؘO [sk-×l5G+Vsjjk. VO0-dKޘak p(n̹2r9r9Av0*YK%кG6 !{L_2D 4~w8W+Qܛt)TlʾAu Zq KFkj 8D}a飼H"yԒ`e\d,<";?%;S+#6w0+_>401>PULYЮkɭ\/ NĬuVUz7jz@ oR#v cvPNl!aȘtPTUa3ܱ7Ť+ieʂڞz֢0 Rm ?ab>rm`Qn Wø+TDls@3[9ӽ%J݉e%/+[.gmP}sm>bl7 x7X.h DML h")w∭T1wEĹL MՔ'N.xBWCCر2Zyh+ Rލ(ôWF=<ǁ9hS>v&$9G:.'#86MhSE%25k|$wNWmϢH6\}¬qeDŷ=+#la2mLڀ>)O`PVhMnW F}ϰd% \un'E!)"Ctl;VS V);\g𕧸OmӦ}X`=@6lVP!,Vcו۹M,:T?/I.VH,VKk.ͩ;Q/JBKIWI#ͫFJOWk+VlHTBˣm8iBmپ@ ĉR/˭ҚAF]Ľ,(nuwd_kl'7iZq@&"?n Wu-lXr0o BϿ t=i'!TG*_RT򐭂TMbZ2pUPΠkKq+l xC%F|ڔG )GH>кw Fj!v[쀩̕frg-ybO{ @ڝۭWS$u:쑛VcQrۀ/&y&F-S{,9+[_4+-@Z;^ҷRӖ EI}M"zGso>+=S +™ _HnY7 /i xJ`yDz7w_%:8,[ D,uiĂ|_M``i [}kj#BJqٮ Éqk]x^D04U-KhK i*5_Fjg LDyB':OR6:o /y(Z~Ae#>Q.Nm@`o`*+,nV(Cȏq/˂e M {%Q1$8 ] E ](aXAkcni.62dfM>A*խw u2[9uhnMt@ hgH\'񊝑Et--vy+ 6 >u a 1_<%okk5j8)pVc*~$إRx58_Yӑw\]:{ 1/a~7|擠 ˱ " 3//+ !&R/G+Tm/A]:#Foq{7P)nR0D'p ^M{QY:[o$q/"~ps%zZEi뭪,DzVA24:Gl/ {3L#~JMF>FFݦ'eE6Okuk3h@?Ynf HG_,s[QS.ʵ[2m[ވ ӒKFX姀~&( C M P~8@߰򂲔p-[aiԮ7bB*T2INKbsWB:{CWBLT.UG^!`1oej~$u۬9WK C,;gp=Y7^crכ!1yG)|ooxC+s y7]u_;6 hJ|Wx%Hݨx7*Xl2/;m/4U?&8V+k_yV]AnC槌9q'=JP͵;g QySs7#j:T^E,z?>YC4{1T+"bgsCبƾ7٭$>Բۆy|!v~gB0RdPaB#<ܞ=+f`*w׾=NJl4Z|p~c~qFc|e=ZT5 Wxtx > ؠ)S;42/$`C/q/0¹H0J[aàR˘Ydȅ6څ*-gybłSIpCWM7Ր,99 1tB{MG VuYl᳏ w 8ދ4Q2MT <e]cӌ徠;ycYXTMa{^Lt*>,P' nڬ=tO9X9{ص÷PV::ޫ;[SsqԔpVSw D ]SRLfkfgw.z]aMV.qmn6O-9JZsjw!_?Q栯7Wsc3bJ^î0@QrO4>$< NB70a|\cWs1՝8{vkkVB7`Qo=?*轘DzY:r1H QuZoHtꋨja 0dz^׀9}%-.䟑O͡J?^ý庿n<󝇪eh8BO uRzlOd:'b޴ ukQz$b RV@FĒ3Aovi Q35ӟY Ǒs Fnk~[ԼG (M)Hǎ_) U)1y`Oh[ hs|e[mLLg!ThEvk6~dERߌ 2{y}qݸ]"X>a%9\V<lߺ5&>+@N y "%z3΂_q8M~Msx0f%FrjDl]>bTB 6UH~uSQTͲpG@z@)_Lȉ9P#>'KKm 'O~=tkG]l!O*Wպu%M*b%UZl{7Nw>3X܁aͲ?ˀE 8JTDQudRA(߉`$:L}-$w7;cTͥ |a@DyVW)Í\?c?X~zXME ֠XVAUS zʟ5pѲZaE 2GRGNy4 4Cց;$noRUڛ0@qԺB96yRʌ?h0X4L0:d[q,݅ĭpl۬nuwHW_SM哏]J[ƕS$bFp\0Y@V wL+AMJC%BR$~VҚWy\@pY` R?FV:3eRm][OGzDfRT w3ovohO4H*c6Np.̓4 [>8{1a_\/)pؘHb|F~+ՑO`/hRȵ#lr VṢVb\ zL9hZJݿi,8qJ FEr=~(;Wx\uG!zTr:)aU&0{FX;Wʤk wK7WIXc3zL'q"++ Y]]N\Y6BKҡz4vscvs)}mƿyZl(PvܬE9sWWQ :YZsc"v=}NRG{< 0œclǝte9*ASk(xt {MFO"@<2˟$(+f]s2EtR;A QG;tp-w'U'הD= U=vnKrtj>l.7LcTC ]5x)L)لz"zx2/{T ߦY 0A.f^Dl~q u%Z3TpF+z7@r+u5_[P.qtaVǓ}0 |jVi='ȳAI;KTp{~n!4 ,{L?(my>F"nYP]T^bu%kaЀwk`l%?ֳ8j \ԽD*$%Q-^h]HJS=jh-[/"P䗱xL4a_]:&=͂2E{+l,.`#A47 VIZӞ*}2|/׵MT r؋@B9?J H,1Z;7D / g3qit`8 i{gWGD)uT8*̶wꠦ".+;&̸=B:.8Zev=_29.=陰1&x\dal̸"4} E|ռ*0]ՒގJ[Ib9BF D4|xB}l4]^C2jmrSop B12R˚{ȑ)TQ]C0dG$wy$\w!j %1iAXrݱz#0҂q6;cwNR ܼ/0/ýܒPoDy!:UʅͦHP[#ct7Є^?=>K3 SA5߃WEw鷛8M֪(?CE=R==KpPb']hes z.Dh\}E^I* aҶ]1%4 ]i(Ydو*V񿕢tfA KbrO#jp^Lz{C5u6=\dWOB& 38v<zڜ &!P:u~Ycea,WO{QUϒ U`;gzjb=U^w5;TH 7 ,/L][<*;tb]ι [+ij)4+ ,{Dp`K89tk1uI8bn oT<`U}/1R0^{յ*m2-xCN0%^ Pv|e {H6dM.e6ln V|#? ّ >dqrn*HSI}is SQ/U~lg2l<Ѐf`j`/6\V}ʇ.B@8Er/{󇜋b/F4QHMxKfnna[FϽoe-P&]w]gݲGFhမLՒy!6'xEERFj & ; pޏ]ҷG];QU8kQIbuc l_<=!h2|w`|)/U8vt)xC˷ EFTg9s X,zO]3-C::>bbڍ\vO}_c߱Cs@]XY15nȀ6hL3g>0$cJ[u0 VL"85z$69:r=z+hXԡg˃䮤%5xND6رU:}#iv(TcBtHڊCc9؄VmzE@dJ|g7&]p֞ H(DC",A#f\uXb`ڟ[P3ߢH7{%њ~Oso[L_s6,kK-.<Jw. 6S/+"4^T{/ڗ'nܫgɠAdh6C()ѳ'p-Qٌ]yuJ^ۜ3}1SN)K?v旑p1 r:B=T2Vlt21ϰxYVRM ! K{R ix ).@HЬTƠi >w۔j泡oguUxjHtc%d+Ë8RM=fNBgϹ MLtBȴ28XŒND%7 }`PF Os !"|$1,x!3<_i{L ,Qj}J^ApV|_S5f6SL@z%Z';N_ТT|)@VZrqaKQjb%V)>}X8) QaZsWkJqDO͐cѬ@ݯ,z5ń_W[{ 3n5 6#xe\ty ڄU0rۀD-ScVK^zx׻&-=ZѫH#B4Z>lP!gT\-4' 轅p2tc]±Nխ&LtpS,-˦ Ǩh4hhCݰ?]ɐ'Y:;uP{sپYEbBL ax˿gr䘰q? r5˸a*{e7kvdXb]m`l0K>Bpq 3U}=Gg 4];K4iWXof"R-Z Pm#"Ftn,rL+) r6#5L]P//䫕׬ ;tl54)2U!2ʟ̈́.o8S?l/1)SOgh Exf$v;O';ؤcG >,,-?.ir">r/bVi# &JcQpӹ΁wې\(aDuR|MfЇb!Ϟ0~AK]]ܳ1#ǵJH12uwS:3dǛ噋hϠ,_.MI đ_ mpcyNJ :vz~Z|F~W>O b7AoӊDĔAd1&Οr.NnSVE3(^@M>txN>8Nܠs_PG_5U%8BFDžgN L~kꚨ>+RadV+ &}Uzܜ =IW \睨q8%k=!P[|?O 2s;7BM>IF6JzsaUHF`G»| c&vŚT>7,E<{+ ]?y:(&"b{ Rx)B'a\ɕ^ .?:`Zu`}|wIC+1G y:b! zʗ0{1b?JP3-ܳ|P?o}IFnX?@<YB7(zRNz5x;(Vj57騅UYctp_qԋxt.;BxwSP}@;nZF:Լ5 ;1,T9v[,oH1AcG%nߖfp璜'mfNzQRUTZy9Hvsv䆋SA3A4!K+lj5zwHfoON$*LM<8l;=vE1LiWP vye⩴-RaB]Rj<`rMľ]Γk߄sؒ>$9`pfZj\:$B)t *:ێ~A}B6y071^ 5&һUzM1AauV;ZvG\s&(&oSIbw*ghA^qvG܂bVU@e+x`aw?%8ؑ^Y6BI*T9x $I?(R$iXSZqeAN1gЄɮCk18 m#)/U+:n~ԭ>J.`z&gӬ½U:\2ty?51on.o]0n ]0h  }$j“Ӕx.!l0@JqbR;so^ -đ>n$ f cm-R~gIv뗺TnUËmAZQڧ>_vۖsܵ' U#N[cg,Gi`:ÁÇ ş`9+#]-Z?EXtv메u55ҦiלDEBU#pG5CJr/\擒ltcroƕ&Z=ApbIOnכּ=S-2.Cb!gvNJ gdtxA~I)GQ{v.<_b˸ DzMd V[ ׏~ӟCtda@k5.dAF2Ӯ3MnGO?`LΝ8rX.~ʩ&A/G,u=`B&Sډ1{}3!&#8RX#Ss\hK4 -aJ7*6{N50w {Y. @J,U9C-1챏#zu7ۓ lǦfkAAc6Nt#D6=No4HW  K}#rP .#3?Bopư{>FTՒ>~?wBUJs'{˂K1;43c+"-ش_d130צ.?2Ira 7hmtIr^7U1!A_G'1xx>Oeg/:jk*nn@:Urآ+mpp\62>>*u8X?}>D30:E䅿0gOQ lJeB_$_0QP:31.^ G.OԎ`snX=56@:dhT6:{\me # $#`"(4آNwOȔMVL<}<"( 0\<:(0-pz6X;DM7^{* -98Y.VA,|TJƳZ 1( ~5{K1S&iߠf#NVW.ǽT2 /E0Ďó4umז1d1R.2E0PgwNڇNQa3lQͯRQ;~vgԡws%(` G8ic~^?n8!F30xH]`*uxG&3jӴgGZ!ƒFs.AòAsTyI'[4JjsT#:zcUoζѺA4"/F,,J8ds'g~ %=?OB␕ ax?@ `i;{[RBM {:5/|K'@ck̙1:] 7'3'Y˻kWhkG <δY)uLX£ 2PT@'`1ý)2VU|~,v'}ow}0yNF6? vOO0>Eʊt(xm>?" voݾK6n> ;˘KLJ.hVAKYRHΪR ڑ8n J[˟wֳw&}b 茣~{eV/ =!B턟 eP*i"C]uy)R+ޡ^{FDHXh:p ǪZeyD6m!O)CNO /?e{)M qFs,sخ{KJ bo~@X}}棽×A ߺ ш)-7¯#f;X) {g ?tw[1j, nTYBt㡡 !| @ٵY^t>{=Zfwaf݁]Z )ήv> L  ^#יvIKsΉ%qs_er c+۹o 8Ǿ_fƒ55"YeB2KYRbf*o5D%{鱗y@{˼rmt]~D /2&I։kiGfݠ[6>{/di# xQeZ͆u∪BDc Yzjv c tCq5A׹n̼2=JpkK wm>&B=(R^@g򇭠FwpPj?% \_Z (u/R>0Nd}:۰Iի@XO胁\`=EpS{#;/7$}C50%ag ^zt@ [ȓkBg# 24a/q!vęw%bwsJUsKi?7鱆L|b~7?'Jd)gYD[BI$n)OeCMhng]fU kJ.0](TS۱jaV[-$e9>fPlwjJ28cMl%FE&HLrVڗ/*-ߺ-RUM{#.<yuy,u T1嫡he H2R:K5ġ0VbsI;-ښWXĒ#ZM2-KN bpeB-;1oHXW& "+ݭZ.dbXTmơyo7}OYo=WLuYdNt2 j`ѡh$񅅿ŹD(U|؏}ZzFڌR?33 g&c>.<}'}ޔ%|fOZ\WQ8i0ZzkY>I(?6?ʠo]5Z0 .$ '1c6 \zAw^s~5Mp9o$ԗCh+]m JP`U ,$3gEra+`U.M!05hmQ>??퐸Dh_y\ ˲|ey wɪv'ǁ3fiioη* P3HVѠ@-.AJ\G O**ZaԗX?ef}V]L Ӥ02 4OJtq#nڃ8s &Bӝ1b`rxU&)i Y  '*lŗ}#Su{ЌJ{\wy2%0q b8HQvMaOr?n>)_,<>Xʿrpȷ yQZzQ|]on#sgH_X#5L z G+'ImOhh'XQ WJʺwkڑ졩ҁ 8v˓[ T̙(Cr :n7DsF4l7Tri먵AmB+ :<l*čT}&4͘Qݜ+'g𑈙ΚWq'x<8)xqX/ƆȊ/k}D4->B,_ q'"˜"@;}/CZ&^CGMc?o@`{BwgyOҟ[^-F⌙[8WA3@7.4H`LVQ)lihRFѴPX8,u6m<\pO6Q"D⻓*[_9r)ɖŠ=o@rL#]~|ણf*2ͬF[&RbˬxU bv7,bl59pJuǔkcUk{i=(fg)ܕ=#1j҉BĜŢ+O"[K Þ4`cEլ|ב6~6G%NEyE %vьU)yn'٘oMS,Ե@ܼ7ff$^zm/EW($Uj/~e=$>訤Uyij m eͧ\PS.yqƁ$"+N3׾bgUvrt(!unM /` ~fMUfi""NJuhS=np#qO C3DOɩ`k(s9;iE@Tݿ%Fy1^UۅH ۠9qi?YBuB?c%'Elx+ƴ+A0tmY7MrF%:ѭa9.ɊƗo˻_,K'!_2rQ`c(=}'7TIAeډ8SavǸՈԞbh}3 EyPY{}ըsſXm3K53OŴ0 \T6 PJl>U]x.:j߯KS (T؞[a?a|HWpӔʯw~6V!aLDKľBݚ-)v'Fe89AI.*,ܮao bR}ho^dv<= ]1@N gQbS6Xn T'l]T{5. y؝+ Ǻz9؀XXEbV2PCGT|nP`eTxn7f򻔁[ fiTGtǞ{,e܇Jg.gĨ(Hf쉼6gHDڭeM=¸]>(t@6AvxQi0Wa*V j°KH/@{C{g(};92n}3_ 7=aN(llu~[ o Q4<86 \Kt#mӚ < a;TT9.Q ^zĩ*D]ݐVaWgXKƑ5&F;yt Z :/&\J4غ3C N "9`Sf3S&;*֙F1ֱ֧L^{ɡnUD>[>r•i[$֩p{Eqѕk԰7,ېbf˄wEt w(k9"%+g_0å8Q鴙˞rGr' MT5([f*ĸ̏.FaQv},!r?:_<Ͽ$1|*9NܫC'bk_a-sFȔ?N@كWægWP;CÍ%2')H4t`ڈ[L+㵤oA>"}%*)m\w6'JY,\(gQXz{tү4dNo[ńIF2 oIYWf 3E dJڱc01X6Cjjj,UĬs]b47U'EJ3uȝWkZB/DjJwrwLJ:3ƃ5ɉjG7np,FvU[e AX}A˶&ABA'Ik_n@7~/%bܿ@WϥΏ-2)%|'N&N)wP4 y8F "c *a 4Ha=Q QW-,4Z&ičPQ!#$OnBA [jN!i(@ͻTB K޼)-A*㥄3^-H`P~dn+f6V&oYpdY\6Bia@g6g3m"\>bvӇ赉O7=;wot;&FDvbMJ\as襍w~k oE6w=ݡltxiA5JNTc[Ҽg>g\ ɲLO#Aap4+#TN.p'HH&+#Z(񇱏Zv] R+Q ɧK\2XIZ˯l9,eS:ӄ4BMQ.glqƦ JHf0vI7Jлx%spl@h(M)t2=t/>C#4ѐ?[n>R"Qc (d hr14ZX?sL'yW%ZdznU';m]6ҨKk"v]nި fhӌIN*}JF3?p9āC:kZ~QC:cSٜXGDJ ^ъV,h/8I"9Զ!glθޕ4{r`8>F ]i_T `vvhPKi08_(p$ed2^?zƂN}RMlE$Hr!c%\m( >FEd X55wNqf[G7ϒtq;1T8bMu2!NMheBZEOZQ4iH'PSaz} }:$2wE+bρU_wcW..0.e^|KkS.da7]h|\di'YOt'{>T+H#ꛞ;J^JCBҮ ꂗ3օ_)OD?{Y٪&f{yY-Oj$ˋLi\uzsR !P4q =ŇT_`"U-Z)ǫ:yAu>6S98ؠ"nptn+O`!m]?.ͩ!tL8{֑4,qi]m)^J[98҆uI4By<\&2:6MGG[ K6#of#M"nqQЙxt/b<ьD͞S) >@ Hީ3^,S)(D<"KQk&kjnוbc\cԧ*{>ϚǑWOE{P-;_RB y$&Ty2}pBŰ=K- {LgX# }͋eϸ&%|&@B0QL:1:JrL՞ \S nr_C l<Ղqspaa|[siA{ZKW<ӝT&$'Ͷ}DOYѫ '58|VYsfP}Й,ml "r2cQ^Y =E#4gClGDRFCD-˛"kIZ87[G!N +?BxuK5zM7Ԡ9z6BB4ǑI@7:qC"B8cstqu [ u3os&v{6hdM\eG"9uH8'^x֛׏t̵@#bi ijZDB%yO I'Nt7g$Ӊ nFI֦Dr%gl~-D紼VJA77:y/>wɔZ]Q:&l,#9(WOn]J50VuASWbjE毆^|i! 1%&Ӽ>P=?Ȋq-ѭPiѸuislrX9B $nѝ݃nOP??.t\dKH9*gTE*&{)=>. 5į)XohZ3fXnn>8K[t9խFҦ`SoKhÁn]Hݧ~ ͔(3TVqrMy&;#X D_&T o]SρxWjc32ůY CeУ-au_+G}}g rINOgf/ XD _ f^<%XQhAfvR:PM9?(S{f\\h7o kzT/N$$$0ݸU5[ewj؏Or,SqZ^\ qå 7GV ~e;-;;t.Lg2t*T|uF21۶"@wtT&Rڴ6v̒%]5A"Bb1Y")=\3֔j1e܂m?^I-2,{\}|o18 !ߪ;1 (_hͦ!Y0*^c*D@UkƮA+J+2n]|B|Gqs:LMjϝ274KQ=:tS`,ȀhF)<1}vNe/㽎j ˉ2f\rkK#$&R*7je^Z6EjSl# 7<&J'y" [\$ |vTR^TWP?N)m|뼱+Pz8\%7Ƅ# Ɲ f9<|j!H5& /Di&IsjMYԸ3Ol-h5*Ĵ̝h;^(":[="L4paƹ:yJ/Շע¹V\v~l <(' ~1+ii#pF,g|f(v[w=YHXrf!TPlyWQڼ.n-P[RUCwzǩM.Lcl)pmgÚfxL& Iuq=3N6> :Qu[K~־rPkDD"% `w:,P+ |?T.Nq쩛Ĭu?geBq?8'nqhw>x53U~ Cbh`*S`imt'-'΃:gRMƍ#湨+k(Ozv俈IsE΁ݝj"z'T9_G2$YcSfg]6=py_QҵsS=@Fͽ"dw cm044;̶0[?x U3J4'ţqClKC%c=ol $m}@*Uփ"XUϽy"E~gLi?pntOn1l{&δ?] ْ=: t FfrZMY/pZi Jl\*trt6Ƭ`Js6K:,'wf4su 2C7-ơ\.?D %BrrP"~x hR ޸JglBCLf8Xl$M]b2oP2ȮnHLW2O<^RFʎgRp"?dث(E-*Z̍!|+Mw("\ۙ!bN 1Q)D/-]*ѧEFO=x h$,w*/hRMSHUrAXZ`d']bqWP`Wmt 3UV]P_vfrBe.8ǵTU^&^옦Sau{/dRfu(:WO&/(acEd#ߝVMC%\:wJWZ>@.}Ir*P?U-We.Ⱥl|j˒ԔaVd K?ȩs08[5JQhULxևIx͏ݒeo&eX*)U/o0jx5d7>Ĵh%,NAM` Eyjcљ(p%ҺćwΗnXP_Pr5!.^;+o^ {^U]ǵz1!,Uv qt->40.̳p䙟EQoZvFQNJ %e.js ~  #:Fb6 W=1*BO}A CTkϼUC)ɤ!0NeLx9W/鈴E`h}@C(?ץ.K5Jnu* ;=,LtxJGD8T [|Y"]?#M2̟CV O9z0lcFI#V_NgNp<5.^R R%݋tIM&vǙkEkJƟ :Tɴjn<" e**8^_'aDn@hwS$*yi)x njAm>{qgӦ3a ֟kD\C!q*N>>28Sg $Q|sH:((a=ӭcẄH4Ϟ16(t:Oħ!;(WS>lG7/gI | QHzmo,A̹QCQY:F:J c%̿勀Y  rizhࡽѥ 9)N\ yp=^ƈT.H1G CQb݃ß*KUa#nǍҷ)9U0 dAѷɤ%wu7vrA?n]||eE YyhrÎ'IkPNC/B(ZWNP2q!6=.l}7 Ƶ1D JB_ûTߖsO ] #t vE&l_|ʠ@2×0=wD13QaYɽ1ft).>:ЮߓjEJ)Z :RCqZ7AP\:?P7]3X7Q3suAn NԀ gy2|x=UեF x/c]ߤq8mDQ[ƫOۭR+8`ժ74"/M%U)^W%r17Ƀ=w)Mw/U|Գ?WYvcTK]SA\P^C| vDЊJZ\H8ClC*eYrOyzʺȼ(IoU(},zZ@&zW8$q}Js1_[Q(sj9AEU!:d\,GmB^1 n@C;JiN!Q1K+N6L w믲hƇ #dq?%pX43Qu~&4|VӉQOtY zQQo{ޠļkn4T`o{,q902u^~GRmڢ77P?%")cTb3{]A`i9RԺ(W"ִڸ't#oD=Q|x!?T%lCn/KGѾ, %(i=&zA]S1 LIL!J_12_Sc, t7Ukݸ P2yY[%O0|aTⷾ<-bk !{1k ]Hp~N+$0X/b!=&)3c_<[ Vt+3_QƀJ Mΰ6Zx>7fFwҿ*0"48ޖÐzI?[N2}ju0E txG [>i_tX+  j "_B܌>5 XsL0M10=Ghf$e T`mP<, 6>aYO!K'ȏ+ yw#GvYuEi7)Шܟ%_X 4Nm _CvS˟j1ZACsc7wVpzYudyW_h|9OSV&ڬL;¶¦o U帾κqW$CghJJ%dE&5C%gϘJc0Q(D{l #6d& 9.ORhߺQ4 Oy譲8,.C$h Ux6UG[F;jLMp@<Uk44֞ slp(E2^,cvV\ofoQxqÃHn̎רl*0v/X먾F+^3rljd[K9u Iv\i2)E5/ 䣱}7Uvl\ٌ)Oa'Y3'L Φ*,}}^V ڙotΔ"`+/N&(,u;s{,eI*O:XԎ;tEpk8qpy2GT V }RVmKQbXEatt;|3t5"C-U)Jrq a0 ӛxHћ7W [g߲Ħ-8 Os΢,pq6 -Oo@A6}y'7='}Qw.CK4oS d ybևIيq+ eQu>)rKF7,#1z&Ae;b7iZX>?C!,R H\qs]!Gr tO\Ԡyb qP&Kwn-GTZ er2zPdw]ߌ,GK'ht)=xUE$w?pW- ;pN3WEeΝp <yÍT/A.w)R6 ud6^/٭9@mJg 2ςvWvo+ԧ+e(/xԝUd跜1ԭ%a1z10TQ. P3y=V_Z-V$n~HBx?FT-,\<*j?\95(;BIxQeR+-dЀ#]}QݒL e#F|":R\QYyC|iVj`^K (Qql5xq~*dr{2\r& 65xGxʄٸlb|3n"΀qkx?%iULj숍!jrik~D"uPY+pA:G&N(U0[zVzAK"i{e>y_BB_1]+FAg_#O%򖡃2`㤸SMa Qkn)֟Z :ӫ/petm c7C/5~t=zy( I!oŵZfЄw > 8e5 x T$5;윥81e#0.aͪӔ8}nK[8okd_Z8U2P$éd(fX;E*6hAV z P2d_)?ihÛPx'+9F'ns~SgsUVmlՍ\ӠFp;O=;TbLʻ٣$=,S>(ldܪC6kGǘQrD䚢 yl*bVg<9~6RX@<TzI'p4ueDy7Av&Cu$v< Ly%t9{$Ro{_M_'a"s7",ޮ2Bi1q;S~.izbnKeܶ}ڇb]_ cQއT(' GvQOw3$7gϋ0/]40~,Ȭr`Um[HV|<j_ e4m-_0j@~^Gý%[QIJ :0Ι G4i‘!\[)gx&PcBOƞ,G # MRfm"ٳt\nl(g+ M/T- ŋaG3)5eu,Z# Ƌ}n= u?-'NSc5WGg4'_Эmw7<\.JXҀȠ9fߣPlن(寑v34ڪK5\7AV8VOɫJ5'jq ٭eVFdZ0*W5%֓ʔeeUB%gi/\->xxxZ-F)jLVF M/ \`7/w^\~7y-(c cJTb?,ҿ$Ef[+g}SF%Gm;)D(l};yGtC}PH6|RBGŤ kfI#]߰\.P7+P5,>ɾ,Mgg -Q}q'(+^+2C}9oywM~2b6zҍo*\H^qI 6z3Om)^\_V |U;S-)y뱺v\MuOg_5D2atxC|JjbkY3R T'+ HBL$=b燧coykz_~-,i'1ȾV ̖a)h߳1b]WvVbhm!澃YbJ*]"0e L׏)/F++\W7RZg+J7|pFp(^kxc,lOsb~ݦmF7n)yz\XtPN#嚪Cjg-y }4lȓ-짶9ܗ*CPQe#=p 6A+lWVa/t78%gaH`XpIJMTfpӊ9w!c$TnʝQtM Q!ITCuwNj%&t,D-\ji^ܹbCبݚ7%Am S#:Ζed|:QOcpb л8$(+R u\1$SW%nu2XAL_P݂߹x&'!ge$uo7H7<"N(w3bμ 2iz $)o,x'_7psﹴr Vӥg"vcX>+'5Z閑Q9yXS6z,FqN!8ozݡn#Qo6X,?иKf^)'q6pך5)B ذ_s6Cm[24gMG(}t(DͪT#=Δ ՌbPׄ&kI"%6 4lӨv[(3|B *(96ǒ=ZsgZ7f51ְ̺Tf|5f uL/c1{ov_.T1[9)&w{T*#g|=ۥv LVٿpYt}l# * SN۷U@juo.*ٵ{qo 7nMJQ3xH-tbfF7 h=LFNv'7sCkpG=~#41G_ָCNҦNu6MWܾv;8#B<1~9T^vxs>mbҿR99~iv="f?1uX7="ԀY6oc K< >56-?gH;dA[j:OF_+{t\wQf؟Z۹B]c\-gEt-;TY@p Urhb V\+"y[ a6 !im|rr,ԑcy5D.IuYQMQq"h"W*nj|(m\dǑ ٮc6fTAh# VYoqJGlW h9&Zc`_t*eo%V[Tj8ω.yWQVtIr?#b @0c&YMO)Gey\Xs `1ՓalӫlhZ\PL;KW"deڟ:I {v%tpWwg!7+A=¾S*#a*ZWkw8ʍH9bt܁y,40R'3B[!΅ƭUZI0y+emaJ vF%<_N7SAUjoHg;^ai1sdF"ްR})z7SM1 ͎5WLP?m$|| fMl+<湞߁rM;+f([M45U1!Ɨ.@'5z~r^0-psz45}3pKpT>p|zC^`_łied)!ʍ皸Vq7ԝ2KtM'_/59&t@3)^W po 'OkJl×~E^LW.9t&P ;O\Ez,, {a5⨳!y}F t>L#|zo2U%3S#MYֆB͕ h&n)Ԯp*UD2 ݷ}Lo{l܊PB'V&.yL 93nGvlR-#yTy)֗Y\k5թqٗU:Hϔ T=7&@ɛ}GO+r?E&=*w): %_@pw'`|?;>e6aR&SZI>U*_R1|0^"5+ }WU#jj2?o;.Ţ `g _MZ]WR-VN.!Jtrd=)Ot u@Ә#MX *&Sf =w%Q\l~蓿e9ȞzX$?9~Zt?޻m课P8(Rz\zD2&, -tqiV)!̽չB*`!TD-N#b8I+j[ܠxzA>9{z /T48 (YbNU//39H- ^}};癇ufZTkAZNOXۑtvf{\?|&Kx~Ipi˴αc!LVU>*¨AIp)?$do !NrO'v_! ] l%t+= `2 t?ʇ"o0ԓU|eKE2Bz'Wv|s ]Vd"fM&wF9R^Ӎ`^Hpcq{=TS| ;WfzG}G~ z3L|( $(׳ MC iy) Vd<1]@;Wok"ò@ǵk_X#{$ Ψ&br-tZޡ} .|p(tDZ2*q5TDv# VsE]Յ)QU.mIb T yfC n[$QeF9t㿎>[R ,ĸO* ݘ|ORkJbHԘ{ l߇XVbs\׻gAZCD,G"ÿģMr8rTXKM[81w~)D[Z;( F՘{ˈIaeL;!m[(8|fG|RQY1;t#)X=Gh]ou*fvvO_/vK%~n\Td/h>eZ-jJ2^wAՖ^:{h-#18L 33єp*uMV gJ Uܻ'$͌ gQ <@,&uD(hE8tǗG3_/,VI):?i><;E@cn]U$N%c0*!@] rMڦceՁ|PL`#Sh1Ϲ(wGx hh6Nb)_Ot*\ F~u֬"r'l\Bp0BA FNQvT&M 1j&.c3[ŵ*fWtϗ٭).^r`(m>PLݼ$x3 W3~$-x-ES: H:H*%Aކ ]@7ݺ 1ӫ]AUٶN/^LJ욓(`ТגCvUkR*)R[SV2&XWBd8Sی!U"0cqmUͲ{Bu0|fUZqL9-;,VwNH+Ԩ Hk۲kԟZ Pw\Z.FOA1qScCDr™ou/Q1wNXl@޷x>@h2UNA&7I?o3 Blb` f8A"Q 2 ;2UzRm8N^o;JĊO1C~)"*~|< -C:<2屖HQr (QCmڻ:icJBR2"g8-VJ @(5ʯWGو"[I9bL.=tLL !$.;4DŽxl۱XӬ\[]Q>ڂa'Aˮ|@e^zQ$ uk4OLu=.S09?VjJ1z9;Wgh>VexpŋBJulAx8SKFɰAV=g={PHυ//faj1=:O[T7> gw"TE^'LǚY9rEavjBF,CK7gUDnH-9upDtϸi5 4[I 1_`j ur 4I-9ܕ^z6t9 "11$'y>$ҘۊZVN:Ƭ,!S 4mNw9h@&, %)R,çь#oIdwhţtR=uC22gch'6_?1\Q`_Fe_(o5OaU$t@T}A<=V+\,}q2t\ghǿ-aľ}Ԑ2-TvdH泗y"Λ Vc0ǒ? ` `ӟ\-RS 'w h:Q!:jo e!1BX*=A!d;f1V^\ (?ؘ30KjA,2zZ$Zd qb翐-xւDb&s oO 0lHHo7[/M}_&#VHSfuQ5%` c8|/Dtbw&v": gZdMW弖G'gقZ6~!j%IUMwz{Atw=PT {F#>n?1Kv@팩DrS:^aho~ն]m>Zƶ`3O;<RV|js3-)st"rrS2VL3Xg:F) honCzm6:04C92[ OX;,Ϥwfe[UQ:6{4GxfYMv`8|g ēlW&lĠ&i4͆xQ3Df GPgYQ7Aq[ NJz4XKk#<l( pt9/<^<(?g~)ԗo4TCGb}(-Mi1T0rRB!pKg:ڦ gN8h,&>:!ZzEQ03hpfՄnŏ"TEkCH3n&K\e,ӵ7=1.j}+ aG1l(c.?e5Y3h:w:M b"\Ϳl33do^ Y8@0mڌq0n"R >lTˈ',ɽT#Up2wl줶ӎ;mR4`Avx!rSBÝ1 ;{j5 3JKbSuh[f9{TU;-W~鳲cy6bZp.&~F5V:!NA,@D9txs;$}s޴xQh[Jަ' %Y\Êu_[E ~"EٷQE-, Joxğ@ft}Iu}P?7T8a5y&Rvh¹.V畬@SޏVR9l;5wpf=Ve_?ȡ_vxm~s@?) $rF il6njOr:qͬD.e`R-OѲj²cD\Ojm-9qJu_it=Y~USY [>.`W5g"m'|ot ڒcA $9BLRXOz\7@"=dh^fOe+c3 fN!7GC|͢a8XDޗ8Ǣ~+xӽP]"YOsW0Փ=ΟyX0nȶiEin7H(cuu3=IdGBX@ uutS-=:N-w 3ɡ8D|PX] s1sgwZĮE;:q7z%lNM5ۛ3SJCKlpzJhmv]uA5y.MY!M\ʤgeg]/#?!gKͮ9V"wpJ$V܃_ PN8ڳ)%,٭.ք*q:S:|Ǧ<I^QlHCdPy~$m@#:PE.J*߸E@ ԇQ d? PheQf"`BTZTy^ERcDs_ZTFC {ldxWތ_`r`:blK6߿|m5M:@Մ&o'x`ԙhiTy SiqdiN+O&%M%Lі4\ ^[33viunQ\:VI  ʂɂWS,"B7 ?fQT;0鮈@Ǔ1ҵf˞HM5 :r5B15 _F8a1G-ŎՊ.ܝs +aMݑn_ 8~ ۏL B-^ߟUEro Fk"&PxïTp?ϙgDdԣ>(]lIS2T'5ΈC=0Q3vP^SR?[dMA؁(籋Yg4iy |ə|ҶOh0yN9t_C}rK!i3%Aa<;*݉ 荦T,4{ x}i 5&^==o-qVEp! UQҺ>u0Aav9)6Mo.qAi ]-AXEIgxT8C2A :1ާ8ju J֙ك,I2|>Ki"A7/ 57Ŷz8-aܝVGdJ&MCxyv _bH`RASݔgmo팎U]硊eerYn8$xLpB|nlHQZUa[U`<!(q)G>.ח_-@l>۸vTW?g!3nR9['j 9nP:ѫ uQ࢚!V8 9%k#8.$0n#wz殪,aH^IPE$*֥OJN!go3`eؕ5M%/l+iҰF ^G.UHoPNGuA툺S~ߌ5|>F6 qŴ)hQ?mdSiCNxTCe }qL4||C7;kdZU*dkp}?$N*yZ}:B&S<&;ӫgvo$XݱkMC? R끰ԚnډnHTP ~2$-.>;Ho!?Ɏk1rҘ#'@"s⭜wp~3[ǿ$EUEwH^98_4LSnjc'%+UG꫌ |%V*bGu",|)aoz3]J+1UU/p=( %$;"[8}`2I&H~'!qJ {ZR >Hs?CCe-IÀoW\TUY(K\/)V>@B"Ғ&4pdg z To:W O njnMտ* (lnecj-HOJΔ1;gf(B|',Ei2Ӌ EY-+)ƹjfHP%]3Jj#%1Va,C S^ftձ8S"~:F~ʙ p2~dh{ @l0f :ú[|biE48'Y[Y-Ӫj(`Kx#~v.z{]̽^sU,آ0Ja^[˕P~<"?:"Fb^#`=nbp9iGke“ڵ4r,dcoӮWY;flThA'.n^o-uRkYmɖ<@aGֺZX염>7*B>2^..m  y̽]w?܂n6s2aȣ` ] yt1PK3erk1fRދa:`+~Ι>7= ^\אi572B 5J+|--IʪJ s5l}ĶG"E\$7 mV 羅7" 5XC%Q~ ۤ wlŲG=7D{w A1+[ë%%={P4/YGMSTxm<""'h, WYqDs5@R5av@ߙQsjT IE.`ڠo^ks]18s}m$Y/l+k=ɨ)*19›WCXluJ;X<P8s ʎ73Bs _v.>k.[갺B0+X>"}{ewb8nPn20$P~.oI& >ђ$#%-î|uoEԬYGqa[J61n=b“!IDpy}/˯ذM6ch{%.Du >J ؅Gq™d@=m?wjM yGqHfP'9 }WczG*;鰑HmXMMٞA|J_ Գs M 4`nb5CQu1̲"/A ͓gc39'qȎcLŽv`qOPtΝRFrհi1ddr^ktd=#A`@ҙL/uH@ b-o>&SMS4\Fh#E~n|Cpgg+Į+!,xk2z4.bicKPF7^OG&1sDNvt#ZQ+GlK߯(2C:uvTڤڿR̈́ga NVH<)?R]4E0T`qGi|%5SQp1cKM$1nwJa[T% ~0f,JZjLb: #PK'YKTʑ`(mEBWʳ0VVUӄ?.v,Bɰ/@P"[es!d>xHݪ'=ك̇E'/͠`khނ(V5:Mtf ږD]Pt7#-lˁ 3Q|8_w4-Ď:n(C:u=N`]ι`]v !ji{;J`Pa0bfBL>ǟ!2gԑ $:J]Lq,2\I D, Xd2q[lT4 C+`7Rrlb ";_¯[J`޷X9PIe]g(٠77jxke':0KJ- 2כ`!ݬG,*Tu4LSMj`sT悞#wL?!QcL:ƹJ3*H̃Cgl6^_۟?W_c$.11Z" (8æ࠰,n5u&z/w4GϋExG $24&34,">-&ms^UƀN,GX) ;k7:cW.E`nM8vdk4:/ Al7RHQ35jUw즆O䒾Ea_PT `d UpT DJÝRhz\N7lECkƞ.w ft,"|Vٶ}"# Ԅ%sBtv>ta>BCALn!ZN5vf#ܰK`[?rq>%/% Ji/~M14(襌e|1l|?JᲱ9r"ۘ}kd`4G4=a5GG$P 9<*{,Wn<`.`CKg&:gT҉WA{# 'G)_ʵrbuT+[/zQՀ24y+Nv"ל-:H^]@%-`U iOܭ_^S(%cufyݖJ=㯚5f3'IGj5! Y)-Y'B^]!hkx[Z] Maqt=_Me6D+hr{k8i f7n:]X̓]DO12go&D(aR>uu;"&vA"8d VF8;-^q7Xav>"oToiX` (bt 6,<@,e^1*اr t^P>~ EYA5Upz@e*ǧV"|āU6j \'*]gLM/{\8X[bxo`3fz|P70"eEhzfrZ' \Djg"NYOʉE;vyU'WAF¿f%Jݻ3Tfkfk H{D(WP"[E1ڼR[hϯvpFKs4[R|CQy2 ꟀKH4#EkݖXg .`7'KgW n W;PU( :R~$z\~烀(q2<ґS@TA!Li㟸G>$9ZkpfZ^HdW)`d=QQ]<hׄs%XEbiN:  =ˌh{ͯTx%!݃#\6=R7x  f[B&q? m[N~+ЊJPM6,L"AϬKx%s>V.1FnWrPff"OIԽDs'9˺ CvH+qb`>YPINg z}JzMіZ&-ikmT̀O{cRJ'ԯ2$خ.#0ch+4#pAa#;RW 開y2v}]2/A| RMYO_p#ij `=$i /֟uveDMm~aAQl0\0K;R3ENx*>zDW V-{%ozMgאCW|ߚ-W[D)\lv6~ge9}aa L7..j] {-~ *_J@I쪐&Gabn#m%5rVT Wh類Љ)EQ(:iRihOUt,F0 ַ*vc8+=hH|v3o9%U :M ^71Z?Šcc@eEX^XY{3C2}f2OS[ TBw]f\tXB,ut5+lY}M@PpݤaˉΚ5hJRq}_e/IRά/4~o8$ zdcaMd0?o&^Ѯx\Ч_j~W5}|@(5W_K+CZSz^U SciC0'CNŀ\}men/_$D=׭pp ^2Hu*say[F0#J ^])jI.͛ܽ D+dYKOިKE&z^I}.rWݗsd>IS{ԧ`Lq 61!F׌m)6*3ʅ֊KKOv3D Zv7Et}cEvfKJ2mNTq>o?{ub@$4捽/h~;\0Υ L+v F!'7lpeVG~ZgtHL,`[tbvfkf"tѳD@>uynE * ]z'vҭi.pyߩz23is$結ZJJU!kBmT ] G~60'd@{o,Jd=1KpM߈'1+Ie/zMr >CkU^q#W{S No"/%i:\^Κu`BֹA;@|<|.y bonO0${{c\ݭq-5A+ Pmm.C@($š-q]:]pkv4pB(ŴZ:jU8.ّ|ڝwSVJeau Z $xdL :\0 BJ5k:r_Zh l6tʅZ.Rg]dqrAҍq "8 '/q&b ףgiޣFdp-hUq6S8vPK55A_ŊfϠՌBZ"5kPj!+h$Fn9,'lJ>Xb8L3=@g%~B hH-^ZY8gQS n^H=u4%<í|ZxZ\a|Kyn0˻3e X]OYsȰl=)Vyc_.AzJ䫚Xq ~]G`DvD.e:oɶDEfN2U(8/7S4CYa,'jX4,}//#ߍ"`X\Ivǰ cdm &/*yJbߖjR j/9w> ^nZT&o֛8 3BHnPs>+ hmykM87ՆV&Șw5FشO6 Qԓx'%L,F|)pec<';rjGB.A(%koa7Ns69zd{5*ܘNI7šѧL̈LΜd5WT8 C"tV}mm5s(wnGwɦw{:n{^lShSBNqz$c~VZLTpa|ղ&;WXPQ8u(V;)kxI*CaTR' Ѩ ʍn yd#=b֥B^"UBn`4UxZHN?#t vVw5#]M )IkK +gx F

    vOGio+"d(EEnOݳVވlz5눡, Dt3LLl !AJ)EۓQA@Qvk;zԇ+3''>t4Н ,Bv24\0H9msu.ƅ ibJ̳"(}Ed1!X|5D)|`YUd-n"Xk^N5M*&Nq x{xBY^I XFa(s8F܁*o~ !* pt9 Xm3-ʡpcc ?k&zfA"g<؂IT&ƢKblKÑp/ 'M?m_ <00",nL#{!٬q`c X@dJY `ʚ1[oM"e/Yhq0g=/XJ"^VOQe8$\@r6+S>^[ K0^ZwR*ˋOE 8<'BH4[l=V:eZ^7NG;\8xRAWJ:$yf-jxmHwtC/7 ]OHO*QZ[vqֶٗ1"3g]7fW[vO 3Y$6JxIsF'MGs|;֦=any"hDK?9㘻3̬L]981.H6lAp@~ ~6#3CWg60p$UB߭Z㌩ ! k٥|vmR[s#05)xϚȗNCv6rgqs["!h ,M$oݩ4+ʵ'CmRy(YZu[*p%1`P_ KxH>2ZsC8uELB9`<кq-X'\;UIHHδB5' <)EU%sYyH4l@MVNcV״Ec ب<(rt= 0r{IȚ6#TB'\y}D l?R~0x,rgU./X]/ja\PȤ:ͮPew]ey=^>x4>RVj{ ي/ ]NٗƜ<+1{sNQ %Y|9̺S] :5G`ab$%j .xh?^~5Ll\p16G Y* {X^R_2G CMJωnw #w]: SsExZ I-ǪMϻXQMs$ԬUi;ܻ{ PrBq*%x͌?uR4Q׆AŤ|0L7S,?w2O.81௓Vu8 5G*2Au?i4^de_m^^<6C>2S5L2++/tkR⁁*8EM^bE+NVGʽroZo#1ptitwܲ*ٝ/ 3U+ʀ-pgo _Uߟfco D dž*׎`64,!X- S4Fi\M+kxdPЖ;^`Z|&d˳(9}bVm˝ Y{ȓtx3^Z8ssm߅LNfREE#۷K-::֡ڴ7V:vtoЏ-[H5f/s]j8U{ YGVF86 Q *Vmn+ 3Xug5n'i垱'$k1Eˈ֥3'F 93$H؊c-OCQ:Kv[H}^U%p4Gbȗoש"Q oh$/o⮐3!kD#84GѦLUdW{x%4ًVRڡ9>N%NsI|_G@dJ@T?5=Eiï2`ג&ο]m3 C18 ~ z ]NwY$㟉g\\|1pJytkpbxAJbz'pr -U8K@˻uB>cV&!>*Y.7/E|)1!mSZ3geMe!w &?FF0 6 `jX znoMv4NKuݡŭ7B)ƩI"mu _S V\+BK<mQŎ˳{Ľɇ1 qoTc*;f%2 P-H ㅋJ\)-#^kY@4T,B{D<ͷH*lEREe7Y|~HWN-lZYb$@Gϙ8)V}j $<-k@)2Kj]лV(p'BIVW}waÂֻhV쎔J-co2FEQ>Ԑ!'yZö-rZQ5MK+h&|EiDgQ9T %NJO5l#2O$5Vd6;V˸ ~@$~ifs{V7{¶yj&0S?K-c%ɝj¼Tbhn.p@ vjB~i_,.BoQj4qD:E7, 26־t8۬{ q^=(6h88N̆FVEOTP-l_O<1-) +{Z$wQhȰ/!tG,75xI[<O?E,$XC'poIM1I/F Iͳg 1"Gs@QLaNSwhZr+}u{ii=[Bѻk銰ccě59vll"JQS?/KXnꡗs+[Z$3NPGơB@udG=FPK3B(SDUPY||BvM}$Iyug5[:r%#Ocr-՗6J)V"c?9J 7+l⳰X/XwjSKpƑ| H`)xۤzlpS29 >b;_ҟd[,_X N.(7߱=WY,+U^-;kcdóq)sRz{1:_&n80FBH:{譑x:kw•JiA)%"z KDWH$I@^ 7\J~3Ba S~8`C"OZd~ٛM#E{Mjuu5Q4vmBo+V]A9̏:A^ᙦF)khBZV>hI)$T3tOr~\1o7bYA/L-E [HOm/)*6fJАA.6jxN<.tDbAԮeOL'd\JM`>m6ەr$Hk\%d4n @q3+kuuܔiVw׏0Y{gm'!LO@*1QDo><@νS {P@ cL_EfD'=/TJ-$>.-jX5zpH#xm9*#q?+ڂ#8J!6aʵBMҮ =guIqY쟓^S.5[pZf[Rdr3vH2m3>uA" ?qLs ڒrփLR{$Ȅ-yA,Q?iڟ_WJJ*#}ź32ol@3ԕC>h&66ܨ ZhH*/Ԝ pHV:\Ԡ~yQY /0Q|>unO@JۈޜaPUwVkSP$p s.a}٪<'*:^6èb@}:ƩcG*$Vx)X@8 ,M-62c3/V>HpxhfɁ6aC`Pp0+س1=]Sc:+-T׸uo iVGeMj>η@Z-iO-,V@Fx&vSJߛqu>7l(PVJDʁ a B g//ۓK 5sʼ4Mk.`{jUdMd);%Vs޸))Cȷ\dWK8^ͅ[agcP>p1,")Z(Gv﮳*N "NC6Uň۩z.'TDf`ڳ@=oH24Fŗ>7"xk"pt@gM(/hM~QAL!{b.2uϗě!%Xay\p-똵"Y/ҭI$.sJDMc Hr czl s9Պ;8}6Q!&̕ٯ Լ@]s'r=і.;H k[X]WBx\rXgW:% \{"@ S 9㔞KCŰa,},iOdix reHDc#7;Js\2XA> @(̆ unFaW 4P٤ 9{ñ=L6A9涕|+QLK1ס#eX`ayWx߮LtW %#q tv]rW9QF;x id[>;SDVH w{[BD:EA۴ש87lnU&ͳN6fuldF4(wxV񇛧;t#D*}>".jլfo92*Y"lFXHP0L )X $G(qzj-.ɍN$UϞ7jdəV.*phxl|^Yw&w&ᡰψ3 bĮ'~QȵiO `6t&٤K[bX\6c\x{ا xs$GջC7VQ$Ct`'CHA9">V',6k+[n;ԑ&K 8R*Gux@G(i\G*aqWȹOMHY זQUd9w K}D;9DK]Enڤ[QWM2}dܘ*jG˄$ؾMw H$Q`|e@"eQPCȰ2s\g,R!A;%c=Mԁğ/8J;i5N3?I908v&(jdp ROTzUO|w$u2~mP`%62y/ὢl\=2BU[ %ar'S]Cٱ-%gZ>=,4 .M;8.ajp,\?%,s!ua WLgE$$kLY:]!zy䣉r0[a82ihE2u>BaϘ&Do1&J%*[]\}ָ냴j]5k$p[](<`ԩy,QaXFs+U&aߗt*z&W+Ww?IFVj3RePQK@fE1;-*Q4Q [,kz]CE+򮮛m9TMM4TFw@.'.?+-Pq؉7D:C"{2XjQB>_\{mVs<B(}¿hS.߬ra:Q6KY(|]A i۲|bˬVM'vN%=Ik+ .?n3D%^"9ʄ/fbaSz[V?z1|B~$ b؛zccK؛y2Jd1 ލM{ cD?ܰSЦGN,Ky1]g&SPNvɒV7yO484Cg[3jُ9)LgpU>ǗMQ-d,Gف>߂ HgwlmCa<%Fad` hd=ZRR:?y]r:__61頕,G>sXo,S` kD6@Lslin/޸Q3_b* rٹ^M\v.4#U͊Z'L$ ^/QW=^ ,I=VM z\rpWɫoy#= y:Fc֑IC%}J$ID lzw/qX^b ,\>R;\r?b܏F$"EʑiP΃xk 2W$TzӃc:=]@)jX/[ Kٖ/c)>z;S?te;HZ/H!0(ᳶlp2ܖVeS!8)DִXi"<&'+Z;SP=־Ae?Ћ׉ZQ[W^'uؔvd]\[sp6ߛk_^3 qس_#$xYhS?qo`Z]Nj p#X3MѮY͈4b=K)=Ĵ>_r/Ly(Hm:km}bEW^lpr|skغ_.% Hy介anpY 8A< Dv ̯z.lՙ&>Jpl~]2>zL;aln#f3)ٌ5c=1/x2q'pSN\gd3"mw7 \X]7Nfwᔛɇ.Š=*cBGL׺tƭǗeP0yP#;PT5̅6fwڱŠNN:WfGUykb5?_0\Cyf2PP8-+7)=~dN]IJ - #ߢ9hRpR%rJC dW|nA xM`];&Y_Zb7*">a}…!#MGYK~>0]mF$}XKn)+* аiCRR6oZcʝ@ H54pq)4GpF'[e4[L9D;[w|͗3%$-@Ip[ZİnqCt߼'c09T3FyKhsFOeW㙧P(JyH|jPUU n-U#+Kv[t%im(S~:OQgۧy!d|6e74*\aⓌ̞=_X8E3<%A!v;L+4 hc( U 8ZR//NTK(S+$3Z %).- rl&Z4xo73EtKl&< !8g!̼V9 ܺm>G? ,a\ن'sWe5tazF d>\"va®կi?G ѱ#*IXyeo'۸sI.z'.uC3܀d3ЊۖѺ3w/~(]'k.%{Klս`Ps (pj8OW "U_kgW~YyoNi_{=Y0[NNOJ&+j|:B6WM)^KUMVsMazfĢWUOG}z#|3T|^Wx~IXDl@{˩瀩":F,Rn#6PˉQ}0,5*8O<˕䆙CS[ĝ4w j=ȹaq~[QCy՟USV 5U%ǂQx[Tꝟ߯evx6PG]'3|U8B47dhGUü tG#g{\! Vjh_ ˆ٢!R,AT]Nќ {~jOG W】\(hM_ݿ&4U at][^$H>Iy(Sb@Ss*SiZ|PؚQQ);TFg#Kw'OJ (զFV 0,ʕx)}>fPcR"<~* Ǵt4/WCm#ZNTa{"6̾v|ڝYڜtV~aOZiXpͳB!D/>==!-ϑ8+>T^ E"p6Duʬ%Y .m\Y|II8 n<+\/Etް5n Qrsh1tu); @@?O2̑ WZ4MYj/}ٹGLUBUɂtw|$dJbY.geL%;W0`&A<BR!{ &w3|tp5dw0 96l∘ 0SWP/H@=\j9,󕱤7j8f@/Z~C QAMSnbϿAp9~t9ъ0Ev6ȠtOkˎF;BU]7jԐ2y"$?SY I2ؤCw>k$vt>sIRuz-dsΈ^GR"$̋ƍA1*|dzԟ2;V;-htE ݖVPՊ{|d("{"}ieXNɯ쌶[=WlrCia>]L0P*\wto(?qL݂瓠%I$P #pz,>}ےo$Z.. R9Lt,]#x%JqJGB3\. nRQlIn?/"0W0&hwM`}" 7^b E e.\9lU|@oYcc㠧f >aS1AC ɰQ9znGT%^eIp']RA}?nҤX<}Nt[lIJ;Q;"yN:O%?d.0$e. ;S<;ND*X`~4݉9 /N3<@qvpE09!b{\ZJ_'j?s0On 9sEPcoqw+}9Eq uh=⥉|uyyU,fɠ|IP#f8 @9Y #\RWzR M$ tmu_sz4P沔1M>'ð('6~\" uX-t6Ӆx(ݯ,cCh/bCzjf Ө|?k/TY*jVFWyC$bgM`x;W:b%7/4$mkW:p;-$A%ޫ_yJv69ҍMp<ދ٠lݏb3,)xY|9L#ޮF<YjTъ }O_@bs6Ѣ9POp[rABJy8 ~Mzp낶yeܺ;o1flRbm@ `;u1ѪcO/|+ N7Z|h9E0?t6]!,  $Bn@K!7rٻ{wBM:||vi+}z)SgC$pBX.V: 6iIxcWHݣ=w *RE6'yx;hdڗqlbj-TGT(L7ˀl\}d%o3-YVcJY Zt>CŒw!q̰"-hSp,՘&s?=y( `v(*@'_V>̉/KXv[峇W.H_>] e dCVOPoXborׇ~5l6Hmk+t0+{"nc}cΧlQM׵{t̖`$ F,=`iɇ-RVl?;]F}z+l]eL!+O^@VFuӦ8?EkT m}L,ʪ8cpkW\̳x'( %:>E2ٗgm7 c4;`6HNbckibH#ܲ`zJ2Rl\@ZqU.P"({zxp Kx)HE#10tO{#ޣZ>ٽFڞ8SiW("rޝp($~xH9=嫄c¡[:)_ 1S |#J`ʆzU J!6/@vO & Vݣ<ҵQ3BPy:g={*Ğ4u6 ._aAc&w;b;ɤ 2%P£hSpVo#sXio:6E!}8_5G+ ]; ^ WX+>o$OJaۨcĤ;|M't)E۳e s0Rzj :LRG;:ƅg!3,New봪"q9 76C>SFK \l;1qu먯[.~p'fM.r>Z:EU%efݐn}=8 7ѝ BlHdК4BtݟxZ#c3^uy&)=ꆕ碊"EimKFkibȱ6(p ,qk@@_; <#CiV9M79C :`nK›`Ez|TkJ} ?_+ۙiUu^ip=}E]/(O[Vm"$^'xAi?:0`Z8o[^hֲyWJG }/ >&iHώhs- 9>_pTEIt@H6h8I$:)g LX|ߓbLv wBo*`D1лkvG(T&m^m.ڝDp{2пEᰘYbOC>|`fC4qZnӼ ')͊BУ~Z/Z$oG{ v2z@!L||I ~nIcU}fY8ݨkؗn {ER2c:6%!&y5pq!mŻT!bG|9dȰ4Rxe՘ݧO{g_y1,<Ҽh4KNt؅!cf%w+&,:9nI)9"k| a^4pP)SH̊N8| /9 >yEm_E@@!a֔*IԶMc\mhs{)p>>SJ9%b%Iw@FYƠZtL\Guk.x|7,G>xN!9|X$fȑz*!汀VYsupblIfHVUowZ]:Z-ۊFC;&Q :uMlX3eiHf D4NT.Q8y`@ (Xf1!:ojl^u˵65-Ҹ.|.~4,׭_+v$ĔqRfBsP"H.ߵ%͔x3eOdZ72.-;MՇ+? A,-[ݴfڎ:O&7e 0Lx@ۭ^m"|~w> Sȧ2jU|x="*Yxf@حjJYHo#+Rh"k C %\U jnM 9xBӪc7$MSjZ_b ߢpSc%7rj5'?V 7utb%꼴7:c3V(Ex.2,5{?aτPe4qd^) .$ptрnҊUbzcߜlT-npu<)~s3"D@ h,M9V 7˹~ .{QFOd]%zg =l]8YD~Hudpe92]=(fUb9iV$QGM a2.z1Z*E$ؕ2eUf3:ϯZc6[??;9H 9,% TDDBbB$s^R&U;g j@\ ^w7hOK[wS^]pSw S3$4܃?%?DŽ H 6iH,=eƂa@=6H';ɆDoَgfy)GTfap%{pymHЊ x K|m*3;0WLx)op& ݄jcyFI"V:! ^K&{eAȍI8 K5 YӷQ̃-uT]y8gzeNRZ^8g+F$V0BZ$_i  Bl5f@;rHvIz|AG ;)F~ۘ7-].G\_]u߅^kHM'D>|І"wʙ⸛9'h$W'iɪmCk(*ڤkH#Ȗ >z2ȇIRoI/ zH>!A2"*VBSUuO= hYh_nnɺNU¢4R_Tឱ؈k!F~]j hĄ>Ye76b[M;Z#bv2! "qڿ&Y4|p 놆Jӂ Ƹ<|F̀%gJC*w }ƚoeOzd@JUDE.`^ϸx! lI٧Y% e9 Bv˘Nw bE,Xh#T^8}R5%O ҰAxU@O8y^Cχhuk{ao\pV \NHjɁʆod'MrYhOЌkgXo1 1H.0+gʷafӊ :3?GB2%jEZ&'@wyU!5\ IqRLmVn({.Q [#&ϗ 4o~/›U#< ȷP$ ;.3vA:uT"=Q0tO1h_IŽTD&WJP9S`Cu@D_~UtP!Mw3ڸlf)ݮ%jI޶I@ShHH‡ijSt<ʌ1|6%]QS ;%򒂅gĉ{|ޔ*VBNcF!~½o?1d Zދ; 5`,,Cmb$ێ6u/8U/Ȱ#`Y.BMº̆jp*^]/B ǶIfiMgh)GKsᙢ>4ey;xU<ЊUTl_G[ YD]p9cP/}ً%)w9p56mUℝ_~0,f#VSVFeS6wdtXO$Q5'h\ $? 66.h<.?/!M0}9Ks9 : /'7wf>nZm H~!z :GgV'~bvʐm*D 9#Nt dQ!6Zzϊ>@3ѭd~8 e_Ii?d+0k4aYR-b7En$A-sF? Eqtvȹ &9Ug+k:MQ׸H1C#*KhYܬ)I( Һ0{LtM2AEAEHֶL_!Λ5Ĝ8£>uX0Qb,#OeE A@!m.e|%<W%4ڧ f3a(cJEs(#83* ?|lFK%u{߻AE^B& t{|p 7?Inj5MZscTgfH.643QX /tunqJ~lH4 V4LCaoĔ:4XS8ǣZR߳q:Ք vcU3ǽĥ*˛?wyeNH %/-7PoXVSx5bR&϶(0+L'*uSR/ؐ Ә;bԣ9wK@H&( UzMӢ8I^>b&G9oَPt4>)Vb6HLr]$t|Jpk-Evs\!*$mU+^_dV=1A{>h!izu`qkX\ h{>ˢ%]=IsI|ia~`U9R~Z-^gRl\m;<銫_%=,5]$RK* /i89UԊ W#N]2 M1?0.qIMK}ΈٷJ-1 ߳x3X{6­DwF?il]l( S`t^MAnGba&lH*l!*[kUl |c5Ɖ%_OMЕ+0A OYV|_EЃC6%R;}(R.yc%t_\ޭ$d9h/mῐw'UVQUkK=)P;?STbZ훒C\dǭ/nՋA[Kr0q}Nimc$ 5[=Dz*3tє0v5QOY/|*'_0)G\htd_ƆZ&C}'w1~5<gXӁ|tlδNNtXxYd_LB\#Y#}+=H-ؘv煁^ù/'_U Dt62ru XN/P'oZ>}]WAf )IA (+QS]qze)E;܊^^Aw;i_t3\C_{WxdM)`v Ij8߀MtM0 ]d3ζ6PS>.fKzMBۋaIGj{ЄK hdAa@7g :z\{M '.;TOZr'@T'l558 WD=7" |uKK5J?rjb#ɩJ8-L+6Ju(=_, U(ѧ -XzB1 ={ĊcI2A5YO@uƱa*۰²Y@u)#-? .,Q%3Xp:zԎсs%F(`5CԹr}8_?a=wיu k#_^λ"<һs>Z2_a|%1e{K)Xc /hx8cC6\hr՜HTAEyo%$ToC orP3jOde!N5Ehl+zDj`.Ɇ d=uR- h@4s Qv=RlyuJgCFj7l*-0v%GJ̚&pMwEN56;M[5>ƽ;=:!?l&HsO'-Cob%Kޞ (QY`P= K@A&.9"+1/ <+-q;3?&)WwNzdz5StsWr^8&z*^qFaeQNDVQ+fȍ8y` rе?œ[qQK4 ,RB }cBVp < uӧ٥* .Q#RL\W;chYߧLYOY3ZؠRc¿Q2œ*l%T1rvWodܧ%%8fpG4Yhd_Ej56 tO]^7L{_ϖLp $M,7p!GN>0*}??1%[T3:& ly~}v8Lտb (2'tBޙ}R5~yNzJ?)CcO+؆dw$~X,T-ӊ"d3e J1JowZYQ<_&^gPc?5xD7;tMnM 3s{~%{9kdC]4 ,H89:@cޞ`Rwm=|e08Nmv/Z8Tt%": q҅U#!Lt_$,ǮG.7 -&H)n @xJtV4m9?ʝ@Ǒf&3:XeTnSW܁5PM>;Y7,/ g^V4t4x@Ajۈ26$Ce;XO=< rd\E J Nژ<6oY"jύxi @H^p<֭¾͌|+0NkgXc$z?4?W 5Hwb2^ luYJ?e|?mnA0#ƻ|K Dbf$k{vwFUΨO`J|E/P:Zoav|1t_тpSf9f=fJHykbNJÕkSjUx:Rd~@ }Gm Nz|>Ģ#9U:"Jmyu` 4)$#MDg̵i#7xG֖3{^xp|q+W-HæK6 ;Fw񘟷.DןE 6~SiS=_d:TmYve(e} bϊ;b_>7!߶-ZoK哄~,ud ztG@ro.Ȉrx:f>V||\36Ⱥn=]*䐐d8{6PoM!6!m,<=V>'&@Fz|2aLH\_9{S]B0T%Ҁe Ħ!-Yhwu\9DLQ ;8R20 Riğqx$]R%#к@93  ,\4HI?UT +k6D,6&*HOo2-JC2Aw FT\ /kMkbYmKqy>Z3o9BwRabbNh$a?mɁzUH'!ۋrЪի. 8o!_s[R3܄T >BUXzC#oTbQX5fA0E:AeԲ3T@ac:qWrzR4- L|fg)@^Gd]nQ+?n]?F* ZehD Ǣ:D o!%/rç\М_R*FLrЀ Wɔ.F~&+gq#VcsN .䢣[.롱).īZC 1,8y:JK'ɇƷXcZfτZ7Cf&P|Y%6rtv9f%{ڗ.΁]6 ^'Ǔ0~y?*_umF= z]֙ ٞd;HF5IFu&SJf Z˭o+ C[X.O Pqx62fnSZaG.zoMl}-M mpŁ2uekau,hI<&Wǣۋrf҈X,(9&̈Qj矤'ЁؒJ NïUmGtkg[MIQ\~CZ;to pPPB?jsv/\#1:}ʰ(jڪYփ* |^(hg}21v{9AJJx8yIN%ݑr'aȵ:'eTq2,cz k}Jyg7m45y &vk3'Q3" 0koq^'1Y#[һ"/D$^%s[mTf( l•Dc|R TpRl1<`r*xGYB腗N^ 0 ?\8GnT E $ uQ$՗o]_Ԫ.݁ItMilH% "Wug¸h)~t#G}+-7^CL W.L'9>kKd+c l FPIK͛ [eۢC\|R-hk=&i!pqk4tePԧZ _*'|}5z;zםU[-[9vA]2]/T `w ĸ`=Ʋ(and  cҨ7qgxܘ`0$h%$ZN7unj(ۆ`6y'̥Ģ,=J"ilH!eؕb+z~,u~NM\ ׯ=1 9wAwZ4g#|V_!cA}Ro!Vdџ+1QޡMt"1;UO+PnLbqE @+qI=7xb =E<Mg &{ohTV'lA1ю%lmz~#-&SuMdv)3kYPel1:BY}Eu4")}ȳpJ]"ܓ\>l?c1HO_ C(%o?O={ ]6ǀ5,v MudZkP3cerpwM'RW{G{Rrxn4a \siR|йT*}贌!MjpV~7@[xz~^o|OKȳ M!%Ti`HWJ3F3TƔ =gV1]C.opv.f| :Y\ SD9yAG<va;g*<<볏!b]6%OUZ}E%%rSƒ\F^1K NBCFǝmdq@9 IV)ߧ.AT$AX-:d`r-=U25I<$!}gJ Cj>D~O ۻ*1XyU2αkcN3*% R9[Y:6ȯr?6B9K݀k[݄ͼv&3i紞i+rEw qW.'$5UpHp5h,LET/?Hm9p9 u~T@䛢/! 'yMYn0iw4Lp7K*ođ:I9j@2$LM 푙$Fv.Dϴ$Qf8 EAX mM@z2Ȧ@˗C9 yeN|; 'ge=؞SRXDVxkXMsn hN B.?C.;4vFhewrऐX@,eV}6xyWk >=<ӹ@ CҫlWZy^dLIw]љH%?MNVXEE8{ 'bC@5Q]q\=>Bx!C"/ѻDm7Y-F[7iN>K^;5X }ڹaM PLPr't &:ih7]82Z=sG%W1!M,w*:kwP$!%Vy-W:o>J4!U&."Wb#rVj4a^M**,A| Pt24IH`FU43bTt@tGtqqResSL&kDN.7w@jp<)z%l w%tL¿FJ $䂃qHϓ_u@"7>yxxjJr*E9^$GOJy)NaRْ[Er!x__gmAz's?4I \f{+r<Ņ0:`U\qFgvU?PSth^7Fj7=Ϗz/26X9ki,p(j,i|Q~̈́d&'" |,;Vo ODVdyB,dPm ̓gWc|ƻUe{ ^g[l]a1[7I0I Yy\ ֆ 0'=-Zx!3,FC[7JPOlI8|ʌtjϿ k-@h}2` 'ibI 5wyDZ׾EaRo.@Q)?rwU\_Sd)=t0$>z0ZqecHlJ͔^5s9I{<-u@Z7pPOKFKٮ`?\=[*06iZpDz+3ޥu ?ܦ"h"lJ?97,p63wcZoSh^nGQqe7 7]w[X +5VhѧHΗg6]Z쌓B5eѝc۱dO@LNJuWP-{#*nBsB [7P/޶ " )\ Qc٢ń}h/ <9JIU3t`:˰֞"A,٤c){1=_w }npy2s{:̹/6T+igQ*Tx$6xfx<}`mN/S;x(3cZdUłA$q|}˜_ed)>ҡQWa*'rg P>]MqCF ~y=Y3Dž0cR&r!g|LbK[BlL`Pր@Nv'>)'t3yC_n{;2Zhѿ&FGbY. ŵ5=WP\tu0.; mT!ozWd\ڡl5(:ZXz?tQi(bC!_'_c◘qnaE<2j#\EB,Fx|#.f?IG~55&10SdP*ýEڳ%w< J 7k7'8N>:]i)/,  {y֨=uVcf~θrxla^ m)}\y=GQ{D);KJ!Wq EQP~WigN߀iI~xT0ZXOGĮG4ŐX+ Ѧtn}ClqcCP?P =:h IW@){ &O(3' .ۚ}% #kjΉT/ aT!l!CE({tjq~߫ ƝsLO 8%o(*6̤&.$TR8}Im5ٱO958 <@"mU^6!Eg}-x3zcpW"eM_.EB5}zGg%~serv }r}mp( y"95E^rhN\>%;ĺ44 h h/,_Gث_+#u# x Y&M>`HR'{/dR4N-D5U'wfVK7GÈ5;<\2}$daQ~Ȟm7ZX%-;1hZ sV)6,RR$ fk-jnbpwY1%,Ŀ gK iǗᘞ*J yN@T0fqGZKf,2z:^Y7K^ָ537CxfVJQW>)v h7:iGZ E =U;_I_6/5L`WJс9_ncfDN=\/]`ލrXcjbY== G>I{ڕIDY֬+!䄄s f~L7¥DlQ{60R̘70$,;+-|,zt{sGN`KRr]NHDHRA2N$+rp{Q%4dse^욖9cNqd q{v!-KNޒ3.Qo7y`Um[ Є(-iӹRE#!IЖD 3`wHHc Xm}Q ?ksV LqA,"4V+sb9ƞ 9!'[B+@>/7ҽs|RPka@Xi`<| >TVhdQ#y 3$rH}?8٢{"2xkFCa||Tp3U$#,[%0 A|m|_[>%>2E-ѹ-auPٱun߹qӷ)q~ǾۅQxZ?85[|$P+MqC MøWJpn8m4x$X~ I15%-,'FPr ;N̻|ȆJk> IB`N~T'qиQ6j Tso?kǡn/ViU*}=cޯdwsF0G^! ㈔@ra$ү=eá|L{EIWMT*qhrJZ7RX^)iiRiqN$8mնt1N%{+b5Qlز vAMϴe:~@+xeR V|k ," r̀ &: "cQP ܦEi~` Vp>hi5[ZJin7??zB Q]V皙͂HǛԣWK9<˹2pݰ%cc˸8:gkNoϣ# WD_& ~Rnz$wŁn5 ꔜp 39 'M@(2lVD٠;O!h;ʣ7͸?%qCh&Ũy9 yxs׏~W omUeSt NEk޶Ó-Vɻ M) mt#:W@@ɷ71KmsJ?wnxSDT=I;{&SlL!PЭLXYtZq uc*9E.*/"U]Yuhi(8_W0pd̲n`h׏#;f‰w*RW`o hUe_־12>%:y @!L]>e,cZqwg{Z\}c@U%gr[LG695lZLbx];sP GW?Bq?s-sW`o]AXV.fxKHߦz( 2uZBr_ч\rc쓧@ bљuBq8tJ%f̝u ]R23Oh t>:bA.X;ԒY[o.=aVZ=פBVx9I~I9<ݱ=NlWbSz˖+C;E!$[@,Kɴ`ufLJҼw=K{J=.{lymu6M$Y}:R~XaQo\ ]?{\=^njG' a΂D|=;jqjUQ`bFCLꀶ;ƫk2þcDњ 1&8c" 0n+!D k8m+RBhP?!]z 1߽X6Qѕ05Yw{r$R7ٟk5>JN]0{o^`-7:_[!Md{wl-=wC02}\itc`iz [SHȽA9q~t ]䎗:& VK"*MݴF zMbDFrnG:"M*! 71]c{vFc6z(_J?N0Mg@C,?7g9\p[ْ4kyC.[t!&-5F(Ӧ3 -@)B6rjC1\ IF'h SL%lڰyz%5JuBɢ $l͗wh m~jP˦Dz1EO@fՃ $`(U6\xs_p`S4N/?wH#~m˧eQJ!l5sOL܅XNgať4ly9ӨGURx 0wѵ…+WK}Mh37\}&|ec!̤ 60)G!:ȝ 6 ܉JOY.c)0Zf I\3 Uep_(#/D1آ7R@lZ7+@u!)&fjo굕B2pu?Vm]rLVYOu*BN(b۶fݎqPՑ۩ՂS"3>U J @OÚr;bPtts5>ztk-n9X\*~Ag۬7%bC]?+BrX_c/rA72Ň5r?Oöfd߽4db6 ff"$L}PBQ =#-XZ_A\R+x,By4"T=-]1oiqLx6^9tdBw_s-@ظ@eDI; (Y ?thwRtb鄜)dH=_5m[!:03b;;.R̽I(`C ]7vN1!%Wܭ ]_ [a ?T2O_nv?t\{$a8.̓->cC8V΋OڀE=k̗V2JY(B<~o !@ظ?LZǚ6ej\Y ~k>aGTIA`&H! WǹxwMѺI<+_ىsO2U%"/m-I!ӥx<@o `^)9I\UD (٢g&lLqfN]Eo+)'2s?K+ƉW뼫pw-.uIRYzNj[fSucfզUD|oR.\ssh]#?eݢ,r)\zšn ٫( h Y A۟Q/]q!4ȁc3/7 He_O+wz[G_\_TX6%> 9Zax'nN5 OtI^mq&(1HYuw&2`2Xq=sPZj s$AƵ߶/9cX?f`:lUxVz>s_>,}0)Ҩ3ޅtp ¶|low ݂t\_@Jv6IUAo[vYȄ-wʛIp&-|j}$x2!c'iό="h(SvƗd}kII% 7-:5KZ@;%H/FLζ+]Goq$7kM2"]rn_{ZuE~ VzfkX8MLd1y -k %g7 @T15^Әh6C.SKqb I_<ߋlK%º|!Ux~z7e5DCJ78|Ӗ4%V iRE$Q+:_5#!I׊Mq{KfRTu/\0Wnj?Jߕ9*(AZ@') J)H䑔Jh,-U sj$d.=э.ƚ$kPϵƔj qbA'|:_:K5{v=xTXp􋩱xOnz|YĴ"A @3DJ$1_[E659ō1jmxN\ɍYǣ>.OhÅ6k# ,ݘTF͉b霏/ԍb.;^_qN'Ver=kOXV7;y47Igh2sЂDlu㖢tpxç˦ln |«4W'Cm#aeHc"cjקּ4L4'~Rc i+D2C$p5…3I!h$" elI5j&ЁIS࠘FπypG\1-2`4u9&2PdYrS0*Ι]$z yT̶J~1Ld\nɔs/%Rc(Hkr~cQ+>CM^P]'ȯ5F\-,py\'m 7ѻ'If`d'T@ٶP7+(v5ycb}8F<HZ0O: ZCw2 եnc@4sg4C(Olh? 6CY#:{f)SGTԬ "Ɣ""ςkM{5}"8b3 icU|2Hmiig+4+dl]RRd~9ts3Xu.(g3t;"wFfOT &Iq"aH MCb""IkCO4rmbL_Fa7?Nl=~tai1\ch H3>p$)"~AㅜjVTۢʳ7.?/W q8%$XR {kr\pYvq6xH!gHkFD ;i4v 0&?<TǦ}4ZĈH[5fn8u[ͿPKIXf$:ɕ !iszN,Fi+zs\ȍ>PR 1֭E&azo}$2vŕešRiv8ϻlhlh P686ЌUޜ Hh~t{ ?LY*h:[g;#XAAUp~]/}Ŕ لgh\}n}HQsT׀|y)r([zdLةYǡp%2$Ad] o#Pe$_iFA[%?ľA[ȗ ߯R,^mWİ-ߖ].IspK+DX*/lLkکGg6.[0^uqw, r:)ڍ°1d{RwI @I5L+ )Fث^̽QȆY@2/4cSY !^$Bt֯ހuj(V} )=>̦k&Hhf)v%pACFRaA@ 5_2EN-YG_"kS"ܬ#5A .c]iU=Gkdd\(P#&+}Hpr(ñx z! Io &RErfhMFRľZL?:p{Ζ3>B釕3R^Tx|] WB$i;4/@ۂ6#r ONH{rD;@ _ 7HAYH`_-7vŠ I7i\}W!ָ( L^3(H⒗JN #xИ Y^ozM>W؛ ug #$W#qC)]*g͈^bٸ|hR^kACӼN*kj'G~l0(Dyocr'i$ 2j!9_~;ysLo$^StҬ_;rW$ cݤH;P!bov!CNWϥ <U-D4cJL8AkXNRހؔ+0#sG@7I䷵@Ƙ( mT~lyf^S>2ؒ5(QqA [XWzBayFN7{۸%XwN,/ ĸ6NԜ_| U[˥w! NJC?݋;SңF+`=T'ܐY>{])hG)7{_I(6ĽI` MKA|U&2uSULNP!>Zar:NhXC+ G <-~ Fy5{EfS>$*#|z5٢hO ؔ3T^r:e^=%$z2LXu'^VύԼz  mILem齦v ZƟ~L8rO+;aәT=Fa ,IShX.U 5b :|rVbC#?Ҏ?üf~xeQӐMT1<;_VͿT]"W; \+4003 )ga u"ΠHr*TC"&~'>IǦp0&姩Fbj|J#PoڅN!sz]DehZ&e|QҸ0 \f}D}0?ELvǓ@dZJFձNbqEIhpHo`Xh |X_ssI bpY#̖jP]Qؙ4Xk!m5`$30W**3l@xj 6Nb>71%!󕆂G\A5|ڗ?֡S#d`glj{Ltb07ʼ( uB1ϴ?UV\$[NlBFYnF 4X|=H; nl)xܟ& mLHH%%ŝ&{wl,z: ex˽x3W6Mĺ m¬ކ` ˙ Z8>n| PԤ,@,3 l)M^JsѨ-A`̎#C=Sg I% G 6=^|vߴ:k.j @wiW'mz狘ml=޳a/1_~lnwg\T/67h3;T^hB=<۲XQG`Z͟b4@_@Kdĉ9rP S3s`\Ƴ?V5 o(&Koɯd<uZ^[(QMl[}.r8V}Gc ,>]6?y}Ba3CYg{L?v^g9UU`#6b<8gU7Çm[W4 ./sҦ:uVy{xR/-^8Apt~al|}$LOBV:,I8`\Ý:bz[6|#E3.[8$C:ƞH$u)l>Eף\PX6ڍ78A g/i9[=q=|KrHM\LHIguBhndNMkrɵqӊ[w:-Icކcp' )W-~pլdoQzb26{M|x-â{oa}Ar F!#zύlo*Y@Q[׽Z9%bXK;I?JZh"\6c`[X7 L7R,VdT%+bl~-pfg5 d ~fXaM4 Euj-N7ڒS2AHwccB?xe~i^B 2ӤiBC'р|V3 i#8ۯ]dapHq x}Ȋ877ZIna2`MQ2+V5q!q;r yC7lU[XgKf&KE}E;`}ϝ2oQ"΀ 5v_7}Xc#|~~ sEӨ62v2e^|gEo4-7 yX}tף0󬏵Νhl5jH" jH# >Ww8pOKqU7'>mF!5C/uϿ^`XpW@VdPI,ԉl2XkzTUo{=VkHo>*on`C=A~{ܘ_Od#S*;Z{ +Pg6aJwL1`,\pۥL<7UVИ=r1]LJ)Ə oʅQ>|-IP[bBKǦ*-=}.H fY7 H&gv! WstQ@r~ϥ{BE>޵l@&4NeïD]ƙ۪BSxm$>.- Qk~i)x0Q-ݱyX&ՇtT$<ɲ H/d}s= .hKd;㫳wusL 9՚f9購i1w!u4* GB5:̋0;}lKLl O3եMsb zoX[ޙ*]j`cNqm 뜅lmi7nXj*X&FgEYio&!m3y.RSŵMD-[5ZVga .@ݕo=`#YfƐ0rp*qL2"T]Z.G=kmYC7/Ҳ勂K;8K?i5k̡^[Oo 8lҼVU?|`啊7ԇBS` 2E HK ejm!)ϰSFm8<]#!LZd1*aL_ Rm}ڻ)B)/Ă)H6pqSs*e/#)P5KW h?`W=asOd}/#cՋYp:\ ޙT}^W\E@=`o?ODy]l0ؙSVr [n_1k*V@;,F|%R0GdԴ?V ք۔9Q*h-$mKl_-㢗I=Nu/Xrڎ$U4*z&5:̹SCDC< JNSf5 ֫vJm[es};͍M8|SSGeR G8 x(c?Kdp X:#q&>UQti{9RCCfΛF:);gS=ETC U"HFț?c4Tc}vx='1iGUVM?IE7S3;TػRZm:\JsBoG5X?Ie ! Uo::?ik ߑs}?Q.3{Sە5 !I}iYl̀Ld6^ۥWKYOKO{IKsVt \]'-Hq~ c? k8(~>Ѧd5?˞慾!nb[0Cv1Pcg# p^xz]E<䧼y #ͣ mvl}u5Bj/ &wO)Vq\ϷsEa3yfp(L ]zCZmZ !;5Zh<(yuF{2)Y|ye%?~]cDeKF?;7MVhE sib%E=_/u]Ƹ4guoL\$5q015oY9lO9*&jzG6L?d4?(V),iEΠHſgc*]o{vs |-{0rqQ}Bxjh5Q._D-~p=r}L:ZY&K= &MCey/VBX1F  .m:5SFSgZ59-PGt498TWRfM5-AbbG,z0`*ogtf (Y b8l;lL={f.xхڐG':sy S2OV_fp ޜ&WYLt+ \>+[=~?zYN,ȯr Hة"W8~Ǐ+|٦uPDf &ZĆ4xgTڃ!ˉ8HQN\B P4c詭L`DXt**dBJn\Z)׫P>klc Uwp_&c:0_k!{!K+Thчߒ\l {l` sx0,9ׁAYׇ M6rZ@7_MЈhEV8KQNH .~IK ¾6YĽiQbUKHbL:[ypwX7{נ 73eLs%>hG9'[.^~Tfk\: 9,Y[A;)-pڸIGM8!7.0s .g?hwA:Dbka9D+9++nt }ŗ+tP@#ڄS>^9֍ΐ57Dsλο3Hh1^^ya)]aŃcai2 Ք`f3dEH8k ewOt4/UKQV4.C #G!ê>UUm !*jJ}_6T&$"[Tl3eG4z3}7%x$@'|tu<@Da3n1DXj܁?7VEԚxd2Đ|h^3L19 T.F+ xȌ-aWW` 4oH/_g'*ڴ7dY [@&,+O'`_9x!yk!c !>wGwL;bBy.r;t [U.-ѩ~ $ )n0-u=#P)o"k*I֗(gxe:ႃ_Zb(~{4I)1"װa G&" vF[t!,nʼnN}t)Q)99cOKnZ+aj~UlFhveO2l!x** P)9Y?~餹li#`6eOu87x7WKYCs}9yYO<> 2b Z <M[8B|Bnvi-}]/c\Pr LTrxا)>( u EË3L,jLÈBJ}Tv_*0+O`(:G~)|/sFPDhuElz<ʵ'Xt D*à8hgz2rؾnЛ[t(C.E=Mr> ;%Lu5_ZݱI-Ѿ֛dot)#s55z+F'bT*ݜ(wL^==fM,ɀ(Fl6o;4Jӝ!?XIXZd6ZTŗJBԔF1[́n7Y"k*f&t"T<4z#j9&[!f-.2m͞m*[rAΫ7dP}_("*B Tq۲j}1:=E̚N~ul ;)\i)%փ`Eܶ'E8 A&}d~r9Qp,9_N'uGwl!z{iN_ B7IRDmӶdヌ:Fu=&)My$v>=шZ7z;"3B}S1zNۣȧJ4NvPf2, >iO➧qG8\~GY=.+gTM~H:\WTNB:`2vĈ Gyt=ȗ?ڴə*uB4R%(/XA6J M3 }rV6z.3k-;T=,,Օc+\EVIryxJ4!*ƉVu|e}e|1(. bGs"(PO~u٭S78&jVXF (rh#B؉TsBT u~NKQgyZAOf$lc%ԂޫF1ef`^Z>N0~^74 K%6ٻ,[ѯm4a]L$Ϩ/NJC@"x-'`kNziY,qj; GӏB/}T;hv~31J ov~^G#:gXwNxͥ^z!?|Ӧ.j:Ps )&q w7 t 7yPq35_<%ڀT~f]-r%m%izL96mFDX8tD:io.+#4V@Q|5E7g#-#vNĔ㝚Ccp|C–'IY >z1r^w IrJVnu=S`~? $k{^̪CaG8dBn_,^}th>=6_b8q;=Bl]K7wՎ?'e%Q((%ņT#-crc$CL6'-^D9,M9G8nvo.IES3{5.H*@._d=[0`c2#Ψ !ݢz\d,JRc{az058bI>@N94yrn"{NP&b]!>1h:#0|>]:A6R pK/+?(H6R,| A`PGB8d~uIVڥ_x*B^ݮyNצJ}*:^]qNNZˮ95̓m<ۙ1f&l[c@fJv. ,2TAb WnS0==@Yr~m ͏0GA"3Kۖ,%0 %RILq5*\땹^z-vY QZml,䴫r!օ 5dj#4-_hݽ5/8UqeIr}"FuiAv?tBg%q= -WiEYyΎbħպcz$f+eڶtRq$9$YE>NZB}ÏXD p}^[7~0G zT6aP9& Te} QEO-K?سď)"0Ri} y$5AxaGv*8ʣ ܚW2yMa[,?kU%mJ1'jOuKGNB"u lKciYBD".0bnSM#5qxLZ1P} Z-߫ ><#a7$9:z=rg&ZB_:L(1o\x;ԕxw [\҇@Zdpae1n@ = ?'9[eUD)eHFf8 L#M=VY&pք!TI^.V[BWaPs삸$y0.c"JɆ@P%g;cȷYMNvܩ;i+25Zk۫x\$FUƗ7.3Os=/36c*]x't%ny1#$ i^lNx5B4hsX_I!X4?:@1zd\>qT jоsqH8c%@n~K54 N[B$#/>^#iPnL.-s,-% pd%$M / IքU1θj"<"8w <{0,S'x`_hiwӰ_a}o-W5쬐<,X ȹVgEۏx3*j^s. ,Bc+aL4_ t5laxMζl LxB?K fP⻷QCdYj%ZO>CΗ V.lЦ[TmyGTj۲u_32 Q6kv,|K?h}Myw[I+-6#?5Nl64>H+yoA$['h1 Z!;v6IW*ƫ_wnAuTt+f߄|Z."JOA5M5Y8U#rtbҔANi7.U*{KfCeJ'[xN8-ýǘ1:&h_<0`]iwUoȌ=5}\3P`0 ;m+R *Ȓz0*!%Ǧw ےbs)10Y,=~ WLSt{^Au*5ѩ/O2_$'2.J=1eEAx9}4s4+)/UOt%[BPw"vOuYIBպB)`A2ZߨX&i /> "O60ab6C$Pvkn9E"Կ/]R;B}+hEet% aq)[TDGS%o`Ū %dcKš== %$ -Sg==XKu2 x^"0tG2DTuБ&gekS!Ys??K&7u=ڒxe90Wa+%EwDg`ZNN\ճyA<,:z%PE_ _' dnqq˳`JϠ:oO>Q/GZuHlfze`{DLHB[KuM`pD홾ځAcfE"Ne _S< 0k y}g'=brKۨxc ˤjVHMEp1&`TM=1VqQ]x"ΚN̅C7 ܉2#0l[rt%*e~y*p;+MH۬-1d-$Ooqɣʌ* xqL)3,V3xɂ״C@-2L"Տ#.t%2E)Gn7#(ðGu9_l_fѷT;nM^`iF?EG/6t>nKms|'k&V5LGM6I${Gipn{ p.T`Nx_x<p~v4(5OWg-']ldv/#}ۂ}[INʲQ*gtlvMmQLѪpTJD< v$F|rʉJlBܦgnaD[6x/GU[xͽ0VIT0j)Tb Hbib"yH _iӿIDcdυu)aq)T-+?EM$әV?%&ӏ^ K \ṡzu6e[0W"6V\WG_ɖ47ִ,p!#si.<4Dq49-mEw2I1",XQfT)`gyI&[O :73t1L T[ژ䬦Ҍ/)8ոľFz"\$r荦K;s 6Xd2[ a潚kHϧ!BUnh>iTksk7NeF ʓWK eY,#]#|<>޶+W҈Л(esAJ1Gu Cߣy\红5yf@A@]o>oFϕ(9OUl<|LM;vx)6'l?AbV,Xb_v/>MH4RעU]0% t'W|E4\{)𔫀2?[ ]'i5 %[g1jQwaj^piZJd)߫t`E-i,XB 8ˤZ3+vW7& °?E .V%Mq:H.oUߝSe^<g@tzXƃy=c?z/mAa y<<ٵDۃ ըޑ']yz7tzlޙ/G]h˔B5yXGh3U. U =bItmB:cMi>d {"*ִ 7 1Uqg+gz0 C2CB;1hWI/vD^3cii5,! ֹ\TV߫"V#5,2. T=hXSBg!p./z~{)=rM}tNx)HԽ' 6*{"P@\("n)qT+.kd3b0Ψ: Vd'x #Sv䌚 4*ʼĔ@ĩ+hGnlK/ ޑ~!q8B6\vV D"(W{{BG`C<ϳOݬ ݧ!ZT=(L&k,3 !.ƐF֗Kzj{s5S( }S%5,3S59J;Y[_=Gʒ`߃aSNq"7~E]Y[*;%`i\_@$\/٭{OQc@~\&+ !.(JrDh'+EGs:"YĈ_„uOy12SwKtέ4"͈4^E6K4eH¶z.:_:$ICbxoVf |D92D2-VCh/${n!2ݫ."fADpei ۿᏑJm[l]]V l]ѓ+;_M Rua .j :Yl Tt3ŗjzR7T䵼`NS UU/7Pû(m)xvO/[<2 _u`f^Z,7(D/wwtgѾ!|gc~MdQ\N*ӍѬ۲ wkr@WD37{N\8"={vd8',3LHreF#F4={- #|Wo DLv/oUV\X er2n.F~IN~rT9j*MЬ=x3W&3F<,ːIFy>֒Ar|%}yu4Ry߼>B*ؖ|ОQbA~LO>i4s jx7c$V/oYuJP_PfhMJ%#tީ%B!&naqHC^ǂ}7N[IAf 92 = C/_}cVn 2%/4͘Ga: ,ocmˤي%/0-|J:G?5kc%s>bwPpyÎV?:?~@z;TqxιN SKAz6,P*1 ՟?.ǒxF](-?{U^?79W_no%|&OظYϓ;Н:ux>Ec!fx6lDa|l$v ?mT_Sv ͅ3GT/x(+NwQ<X-3)' f†f=[]PA/bz>\5<7GAfYix:-nR !C"GM& q{{J" l #}R[]X Bcl,#~5cnG8ؔ7VKAўZW"0dhX^Ki睥EHÜӄ?06;ŵ 5C+ɲ3`+K<3rcύD_Yr G20\S wpD"y+S QɼMt O3d.C$OLit&p+AF5QY?=[Xk*kB& J)bíN8 Q+Fv]}g~YRݼ]A3VC_.$ %:jKbټ#5kqf`L-/]n z.eC6T:vG~ivhl^%ኖmyAN0kPw:=l@Pg6YRHY,h S9CPI-7t ;!iMΌ%F\] †MQQȳavкւӈW$`<2q(2_rlJڧ`V<HՄ{fY+1VTx%.i0wwt8VYF"/ޣm nC|JMRvW|z@cwV!5ZSt+eS>˥]f4sƒ-D(25"w"@iswKg K;S4ZEï6?nUuU8a#L3d* p媴~V} >:@ T!^ Il`i:SIrH+C ,d3 !')³GI rCYl|̖Jr{OE+ T y,{'/]4(7w#" \n &j ЖsRSL\s#"}Ei4wpVd^ẅAt!{ӆub)̗J%Y7Kdb = D[ntŶ*M4 rǿe%SZz[QG; [M>fku1ڶp^>=eX2Vx95e͝e'b~x0!˙`B^kDAYfGeoRSA-$3ݚKcL%E=Uh&:WJKR0vS/~.lrޮj0l+L΅n"VKQjVPRc*q;No=Tb%me 4 wG_j :YM]d_LQsrM6.e't9 * Ku~QَjwӟLFuw̑ܳ*՗WD=HofXyOpƲD% oSXh\sFbV=_@;G^ͳyIYV7b{MVOOٖ¿xX7tWڮ#~=3͎۹Ckѳ S!'`?w7y;۴,JSt<9>6M$]Ho7l.w4q5 ;48 6f P-g-'2d|<Կt6sl&×6]؍ײK d*FȄ8""L@ /uZMf/2FLLr-i:: ig ,t%3: _>-\RYeۼ4[J+G;""d77m27(pYm3Vcɕ%\7aK<|Tl?Lr!MQ~*,9]߱pvqeM9f${Js?{Vᔧ6#>r^ $芶9'JJ7ͲCΕ8=`>R-n"BQ=ceZ#Ku~^ }GjP ߍ2{\r0+] o\TlίeJ0K-ڑ:fL3z+&5a_?CծzY` Ѧ& 7C3>"Rа2B Lڞkh)BTt~7ʨXt)#YŇ ƙby *m -!QJm?(ltqgg!?ݞD9qϜVO/y3]S!2T*v2m7EV<+Ǐk=*/sNy*հb29Jx(}+,}n\PH[M PK\XBcv5s!F+W&3rQFH -c_DD"BF).pkb= ({&E#7]C0{⭌gIa D*yQgm7U߅Kv;_R% r&/Qn^UL0 @ʘ*ۂh̕qSǗkK>bɒd2JU{ e@PFr:WqڏnC\&2"JPh0|O|T[ZTeQAԣH-Bjzv9(&`1l&EX{6x|Fѳ?nZu{T1j_A$;6dCBȼ? ad0 8Cemkr VQAX] 4ͿkCirxK!/TtU @1@}V&L=82Yf^cfEhH~>{ ?.PmJ4uBj0nBGD|.$o"u4`JY'ǡT3`ԯFB^yY jؙ U4t31]8j{#ʢVA w$;~؉>W'7H'):4 ()VŧpYfX\{!CæB'oޥ9ř?YR^JN>ymݓz3~6%t!(^%# hW#ǾDYgöHvhWv 7f{ԢNQ`wD8޹Y :ǎաX' AWՙu"KZ/y*J:uB u\o?b7_@}fW+C;2zGW8Rw`Y\8^pfey_g(5x^sRl _AQ&}|4ٛg*; 39bS-,~`,*UNMHg $|NI?i}ecyOle>GB޶δ = "y%W]3*SKͱmIy%alp%3C>dshV;C}\ )fiٌ Ò(;2&*|O8Ma,(Z6kAqfρbBhb3B 0OyѦrX2{;ߤQoz3A&;єj)FǮ2S#m#DЫ|k %ۊ&>4a-)ئ D)ҟ^Q1s3j?)dmgC"\b~8 mcр01XENZğ-IIʣZFe$/к<;7gj yT~7ץ/ȴ.{T|HՆV<VEkqt~z/tQ Imq]ZBX62;fy-"Z7ͬq<*v*_(ޕcq1xK1_@ IFK}kWh6uH=l'4'2o"C摯7CТE `chbB(h.4 'ŲtV"iRB^SCz+0h޷Üs3@6L[,ccs41f܋V Og1`uD]Pv5:PjJ`);!kֹKi)xuWWFԳ1P\8a";(>2?eLـ/wT)w(+6]78"<]ƗyMVSfdtj1\SۯuGMiw~"l6s-rsgcGxDr C @Be ;Dt;/T7:yj-f<7CGt40Q!rQ m:'p8̟Y:,#Ft+K*CdA*|7gZȁZdsj3JO5ֱlf"@<ن[R:;Jrg ǩc:C$`Ow\v nmՊqLH F@jkK;VSE3ݻD,t>gK`Rz=P./шx$q阖\V~OleeG1՝eb};,<8O)Egi A:Dw.Ue,$ltT9bC[*yx8v;=TT;0Rj v %S ϜjZihQw9jIhvZ]}ah d;&]D{2'_'`sδ|X[vh*&Y@tv?9쭲 soRx&pN=:9#<#&)J]AQ:d5<,<$ťpd0f5y`9pF19\¿SsJؚDuH IONx1pp>fDE'jAWVŒNLں&p)r'4$%)l'(?}p"b;_FMeS_p2i6^OIxTN ZiPEqVC2i+hC9t44Z$ȖmHǀJX#a񳙀-yЁIU/Ԑ&K S3y uW kaoƦV7n)>GG)OQt(t닦qK2 2@.b8D 3i:e 9#v#NIJታIx&5(ВbV/eX waEyԟ0猳*7}P>6BN3zԦ m=?2*yŴ lf@ FJVPX¡x_=cK稸g?D%ٛg'-/TP3%zQgt\(Q͚b ۼ 䱫`@p;?ֻ-e-2V?V!V"PWa+Qx`~QTIի:Dr`T"F_-b]l(3!"89GTڒ ~cØJخɒj.RlfbP3OhPIe֨jUF^ ,V}G V33}[uBnݍi](׍ZTG2\O[Ss( &: K\~\fNv0Wl0Vр2M1\O,N/IX"ѿoFݘb%hՁoFg­v}_jԵC4i.j:KC$nҺ[kJ27%Y*Gjr&d-DNʲx/=C630KVq˝tǶyus ?ȡs"9YQ`^R7Rձ!/2='~>qza cc3 )LU:G9eV (*ZkX%ހSg)mgњB+ u9k|A2>L7XL*k5>uj8Qo%8U-tm"%|E!j^*(wk=_qpT(J'gXC\J4 TU_(34] SV/,?vW;qҟDo#̗f]v KWZ/L>⇥I=]RߙN@I/%_MXJX כ,R;)ǙVdkS¥0u7E{y ^OǕOd"NtDwTH pQ#<o!Ml q6w>mMdܑȨ0Z+tnHZenMern-!s><` sxP7[g v]ёBVU8rt{^oh/ 2<`i-Ej ztrf8E4Lm-Nj]('ΖDOƈګePr¶ϲLb@-ģ{2?~2hi>ͯJK<TUCz< w%ɏ1u"@PĈpfd6|)i$>=DHnCJC9~դ*vSĝFޔDmT5 2hĪ]3k:Ouu8 ()d|(;vN{/:@|\j%-0!6$3*qݽrwq&8ģVc y9?ʕ:Š:ĶhŃ]j _~T#>9#Cxavc*Bi\sE-UZNAs_6DQk`s lq ȲG8E ^oަe*DD&C~Y^1tf46d6-`4koό=+* זNAZk(`ui$rW~t e@85Rue -YU:| ?K&7wnIV$8Z[FYܽ 7M RUX4 Hh< XaQ8P4b+`(U~W+.aU ӚàR 1OٹƶLf5oBo۬K q>]V:NjyFt\-𲙺0toXX:`qƂqKQ41SYٵĵX"`>tZvW{: #A+#j}yd[.ӛT%ԤE n?fgT6(:[1-WFzvUwS5 ̨8/VF神 RLR'<}1!|a1]ߟv+ /9"@ wnX;[b>  i3&uD[C 7xN\嘵>G1꾫.͹7(%{hoLB6$V9xN( 0tgaae7=R~Fڻ{KcEWsK{+F2čW/pŽ!.$RGx}R#N-T&O#$U@qYݸѢ=T$ş.7m 4g?2#;Ɲ:W5}Od %WA>NǾ`'v4OO0?O#9WaC=;.^?RMKeciTǎ5$/ib8E>~pcS}[)$yW46WYJ ˲N!Z*wQyiEx,U!{yjz?7j',jtm"z֍!h4'[/~J}݋){#Fvh o"nx̙kw6Aq~hEk+:JG#BڐD^+Iy?0uMᘝc"r@xѝ)ca4G\d6Պ+nqIo]QF1 8~H5PHca#L?HAylfj,^ik2{HyABʺ <h3lPM%3L]Nm\Fsݮ:+jvOwFsБ hW8syJ_?ls?4^FʀXuG'bɚj_Loo WIn[p*Pl#:f5)ط֨Dڏb-{ۆ|GؤHh$A= Th-Tj~Db#|=ů>^=1*-ʖW|-枯F|oc.N-XIZ|NWmb%Wgc{l6s\%YġV@N)͘||K@ܹ=pEiB~Қ6D٢髊|QўᐐD 0l4r ; g t}.i%pwVņFC$]츌=L'3uyD' o2iSC~:U 9Y)6ͼtw9B褮"K D4Zy܂>N|$]s#: W-2ǁl+"W:0,D;liJF.9O U`fk4{3}Ht.WIGmG(kDf>1ms3.6:#!9z"R{%Mi>(Flu}R(Ox>!$FEVwfm/<5.ø> DIAQU@pЊ~mSpw{T*(I<_vMj˃"0V=Kmm$ >7.0w7eh J8!Neڐf"Uu/UX8]X-ꓬ)`1ӛN7ZBRhfG@-aIe)e^jUG8 '福0VĪ^S dY5oAVV`[oR 0CfG /`-0.4_DT)7 ůE +85pHeN$M:=5=]HZ 1Uk8} efd8ep ǚ Dea%F*9X-9Lg7xvAQS<),~( p5A_Ůp;@gYθJ彊'wh1`*GVz5ᕹ+pnD3Uubp]JAHlaexAsM.d5}P("ʞWwd^qfj"m5Bu&2,fkYe,Oj ~ !0!l7\~puVxPK lAvÀf1YXί?&peܟr)zh䖤irtM5g g% w$N^=x=-n8 Fi0C;ifxXSLmX3M8l8Z]TLy3Nw>4<]3WnK+ xic 2^X ݖUh-֠M0ӆ;EN0>hTCG@dvnHI'A]ox&2 /u:X}gQ)L8Ph5tTQANT[)4+57&-{y{2 y^PG2"x-fIWn1@5g HJhMLCD#B|a6 H̀ A_7Ŭ:/\*+0QM泣]0 }%^Q߁1qvt*wJXrFb(rzSS_׹Ot0*Kp2ܶO\6ОM]!jP츷u3qϒࢷr->.FVX&_$;#LJ]3/Iچ(NE ^T%Zmad/?y.jQ6c3kۇ9z_KY`Q޸k6f9TWJ氝+ys$ }pk),lَ|TQN͖SMPr0 _ʶdQ$&koy^)V0>gЗ2!w-C=*+)U ئ爆o%2"uly}X"J&BS]/7uX܊ Xn8 9jC>ўVD~~&zb׵HT!0 qꔷ1وcW;J8:p gWDmOcUTض֣ͥ$NiF,9H[Q٪^AlCDw Y}_tP4U9Rz .h?ը!o6&[g:O[WwUeZFwõWgRdgVЇSB`g\8ױK^oO>K¡`3,dSnq|:qȕh")6:\!~%_);>kmߠI2 x4 g?:%u,U9D0c@1SP+kf^z9\rU5i #`h^aDTjc e\^>Ƹm$Iwަ=>Go+z9KXW89D]L?Mss=B =BCY(xY:HAn (D{Kf /ř 줿?~ǬJII*,%D5u#-܏VIy֠?S)WKI}*6w0V .gRp@o$Btg i+3M8 48&ݦDZ:G{8$&GT%`tfƐBueRP(Wߋt3ؕ,QeVP\pT9{B;ҁc'}K^\ /'΃a"9Ao{}Hdҩđm2:+8+ ]?tqi"@g .bG+~Ǫ݆$16dW: Mb ń a(;Xl}H\&EIRr,RQ.;lZ۬r:fzqn"uET]2A F3ώm kX={1ϨcjJU7sw@-9E1?'LW曬OKB0u]єilMbT\m:Zw2# b#]ו+]nF7eɡMF&WbuiTkC:M8Dz Jv.8g:^ʥaW=Q3._xP EW';|@ZvVNKL+Ujk `1¸{u |jWDp_5[]ӗϱGmZ[G%WEfm؋ɫd,.EAEAiO-V͂C`Cj1"E!yy,[oՙ-L@Z!,"j7hC-p@g#,eIVrޯ.K?P'܁Ψʆ!|\'qn/ZhS; _-§OS_cTh Bg4O݅)+@erC):c!fJ&I:LB ]*g> ")Η)'RMmN RIH-xA۶tM9 `pZ4`GD0P+="2CgX{iXw2=ŒaIŰRAC .Ȍye33J`c "[Qn4l`GLD8,"$6 ILJ ܪ-ECId-Wf bXZ]BO %]kdS?9p&qr|+f_ 9-8&&7qrQN[?"WEGiU/{ҲIvӆ)C){ RA/:I "-``sݤIÁ 8ƱMs!t#`fKg 3*|2k_ВiǚXaWړ:jifᢘOS\7UAߝ6g\0 8L7]Ύl*n1,!pi,H3WQq (EkFt!f ;b>(2R\I6gh^Q_߳}GN̡r[H+m.$dXI(s&3 26`f"Y80\| xBZ*ca$ub~r2d|enIN߂q^uY+hX1?Nliry~}BF7~-,^k' 9E"<@/5 I(EХbC^)274HMwJncrnJYi%!e2 n j-=y*mxmfY =MG*? Q8"qYlɁy^| ?Bw0E5!"RFjKϔYNR-UOdU="&Ưԧ*=14sh AZswUk?vh:;F$G<} :u<Tƾls4DZSmd ,O7PKvX&Ŋ¶i#%o(#yʰ4ag9ujj:hO'rfRɇ!7oSpc@s aCGOh`VK1@X|֎~ta0%3sQL&@ӛN))XAFL|jzTlIco8Õt(wB.[q#I尻I,R13fJjnɔU !;tv~ШYy8׶%#sbX!I&`c淹l54RUVsxʃ'Vm8^o0w(Loz` c9|''i@@!v\Y B6qC䢨C@6,ErNÔ!rG:n!J̳(7=$ѐV^Q{cr[7XE,Y3j5\/[7 mm1TY!&4Anc.c\9Ddk ޺'1I4y#fvW ? brpϪ{E{DԞݤ9p+sxh%(I?y74e;0<*unůVgS2',M[tiѿf<,3 `܊{;eUKްϠݔ0RIT˖&Ndt\%o:Gy7H;G꧕%pM8Sc0El<a7'HVǡsR2fj$3u1Zͣw*UEQ=#:>ó/h<{ia'2h3i^4,9UeY-VU%|jMM\o19|D:r|wMuh\V6X7`Ϧ}՚kYv=ٿ| Cr*NcxKJH3+c?s)aX.3F h,h@'㷡 6wwY.XۓhFwNK H? )~PH[>y aBQ&3}o0 |th1${9Mk8n%9&-%dL/ -}əim4;ER C@k£/|+nBO}߀*MM2*ԧ$zzl)!Dܡ7WZD+6^mCbS.Qa1jKajG9vbl3[lj՟ʇ3\=r";ٲb -eHeYak3ҿ<$ lz X tYHݍZp.'.. :]7zS ,,$U ?@AĄ.u>m #vsP O 쎤Qܒot HP2+h u-{Hu"_܃~9ȹx㨂NQ8i`6>7ŷ-DmXgKV0dAA&e(5(cy8O kkun qu^3wUn80QH}UU:ؔ5>W`&0I/an7)xy7di8szłjL%ׅ:mi< 57$%+Zso[KS_u+dzzaE#>M|h5kKS4$h2IN97,fIey5ߗixPk^dt+ )<[jw0JztiIGG4eɻFEcNOEzcٯ5op7iO0OǝR n3fօE8Q)wiR8 ﲘ,IWIY/3ջ_kVq}Т~IF(mFA!o-'Dn2Kj^>{{q1$6]^dwr墅݁:OcT+I^j}/<b"ۤ['.:$hp5J@;5l G>w2{舠h5k46l"듟vhCA+%3죋b i!|$؇F0mσ@}ipHlNEڽ38%]HFu巌CM;Im,PyNdd)r܂3-8=X$Ni^FN2;@\mK#ǻ͕wBf'ؠa cʏ{ѵԼB\zU䛤DbsaM,BWi[w|]|=zs`wF''a;WNz!kڗ iѾ=.G5a«/"#`Ŕ}ȿ;\6{VXt?\[RX60e i%i+øl ֒pD@ $]& K6x+gc۬;ɖIg5ܑiBFg)X6k~ pKX/эHTi"ŦXj!O~%AF?t /C3(ٚRHTU0LlHfESC@R*S%a g <'G$\+g\P\pВZ(ְ{Pki\MH%'*6#AlY0e!%2g]<>ړ';`|E@Te6L [/ PY w7p5p)~ j؞r@}}">"hמAv ?Id`h}SBhLB^Mu] 6DD ڋ-vF55<dL eMV㛤}~[#3[_]tҨ.ߪÈl-ljɜOlIZ) g$kM`RtZ,lHWڊӑGC{z 7v69Ʌ?ebbTĘv gD.tC^ƻc6kIV­v9`5m7y&&zq,; ȅq ת "*?OY[Db=]-xJH*Rc&=Mת;a0! (8pV^{W8gYr6w/F!^6ˏlnQnOL-,|aP^t-s?wcQMeiUIvwT&sjBg`H[1>N䊼n?!mb_YЉk<quKys]oZ_ׄɴ2Z>$L +I \fe QOCO ˩lͩ]":\_>v^fdBcZKcuz_xj0.{5M|X5 /)AלV9(FXCPgTPz (xyڭWҾk#0]&E_toqS~!uM 6?z-pŊѱ8;3hc7oЁ* 'Z_N҉W[1AS *(aY:-j%a9Fd6Xa$1\ 7 `ad!{=<!f"^)[~h|&}(Y/rnJ}ak@wOC3w 39;|Eʯ _`yd zW. q*KNuU'j R?0X52Q9)f~KTn.p{4'z6#S&?DN{2|Ƥ]lW}ɯ»p.g+s&'}U r'q]ҙJG Y&yR^tG߸Bn޿z[-pwvBpD– pR@JwL{N$MԵaݢ 3E|V:Atg׬PXv//lMoU>޶5N-|3 u|h-}i)_敕UqEf'vCw ܉aOB=l/mpVoOmF-W#ùq`JcFY;Ǎivd+---J[D=iyvurݥF.}' ӳmU<;3lSK.U1_a#1|Q;"JKjP _CDm0Wqx"\+c}qSi P17Z~]i~\XQ<6<)'1?j7Sy XWoHսẒw@ ODboj\! K4Ûx|yr0V#+.߻\.'P##o,'q"@dHƈа"i;3`>fvB:8fk%9R'TW]=Nh&؝.5_ؑEkT$U*ff} ??ܫ &ĥ BzװCݹ=Sbpo B~Z~mU#f9 {g|C.$Q{ q]L=lcm9U2@g$boܢer%%K̭uZT>8'(r2=l/瀷J<7J nԡEw 8yt9HuN[@.|r!UԲ;ߨAgbHP {ۻ̣r {@?HP$GY?&} Up A}W2 bzN<8v_iVs:2.ӋVt7Yۡ:HC>P*N0㫚%{͌+Ց>N0D jfKVH_;S5TAq=^J§HW#)w5g19ÿl~$x۞FdYx!vvʪuL(o*M|N.|R/u8k1h6vag]pb/W3ODq"Oʦ=/}X%8@̢ˡ# OeX">pi٥ )(ak=r[4j1Om]ӷ޺Eh%>;,CQuHO5`oe<6a 1Mɍdm=d>'3C}7yILCEVY["NhW"r!%®-n]G| {>GSМsySrg5mt 7iKI[w@h 2Dg[0E}c0e%֙2)yT~~+kӰG3aN$c5YǿXc5Xy;_ (f 1Pqa_OND& GtNJ |u!{`y ,59Ҷ*pAykx9HsӮsc)NvUVsIpZ93㼹D~mdS?+Ϯ7uZإt5˗D2.uw$i!?P?i%|"vxzq28HvʜSE"tq]jR-dUm7˙Îc5t"ɽJ\`?{rxQO}Gn0@8d2tOrjQ}uʚB*#\N(Z@.!BsRFim 0UUrXl3Gjx$fܘ@W[;*!S(IrXM'nT%e x.lj\,B1of:2`9޺NēWx.Xa!<\jxD5!bvR#+ MGJ{@>/B0Fז) 'V$lM71$_=Dj ;%[B`hNA&dQ D́0ZaIը O }1+me/ӿOb_W2O҅Z%fCRh_PA<?J(L/{6}ٌB=`9ޤ<&j)6ÿb#}t\QMVZ]TR1=$MgF^o`u$5E6lŊ`E~)Y G,X%܌: 4:ӭQJtXHC%7#,]7uk>3(W"xwk '7gbz"SYU[P;=G>Y@2'L\F_o0y~eQ9D=ߣm^⭞m^Je7v A>񂱲Y}7ɼpAnaEڢoYT"G&AlӍG⧂DQ.-A>\@6>X3"?UYwP{'q>B@ER_ԫoނL;z~?q:`ry6K130> gQѷitDtձ3R]]YھY^$ZFkRssVw%,bN|hf:t)\VII4@V+u( zzG 1PT+# N+Ӛr/ qo Ȯ_tAF XUJ zx: sC`(jR~?؍my= tS@Ѵ.mM"HKِCtiJ vpU^oj|eC.g-Pt)"ΞΜ7@ }OBk!CYe$j*w=O1~eĝW2f?] :nO9Ydg1bW^g,bm:}{P9P h_eΰw(xSqd ? {& bKwbPawL/UwSWKz#>5`pKm8KlK#J\QDSS M#N\rxYdNPؿ5|x.H)ǝ}#g ;H*ԇ 9Ҋyo^O .nj{'ָܔPhɛo2q9f|LyƊ./Fx,ZsJ j^,,޳w~\5WeT>u:Ro@H#䅹M (3{s(gҺQeOnuIo1J' 8 fáDp{ FAXRh@ZHQe_0DΪepGԅM0/ 9dU{`7%Z+红;u'LoREU;﹏1K3 .e"ZġI?gz3Y C7ܬU;3?5_#cbA)Ѧ;V9R}ZIتE*pRi!K)풭겵ja:!իKrk\6n榍bL~ * bA^k(8kHfkОύ/W }s9@C@eɊe f%}lh+R_GBH}Z^ 10(X8v#Ss8:/k5V&ܪ@Sb\krLA*)T;p Ψ^ˁfSyRSb dPNxޖGO$o6/\\7,K{%f `'2ѼnĀKC 9<ڦSJ*q&Pyݧ$hB @Z,Ll,w!ML !(P2nT`e+-@6Q☠ ´lg& diCSf'S``Hf+!tqs90$SWʃBut!j)E "*>?3m6BoP芰0+OT| 20=ob F Y xk!9G]NuZ2fن3K:0p5 c*,Q+qlv*X/tHeBn uUV|U;i #lĠԋtM`ZW,ƗWJ'*um'h*h(#ɬ`3-ȻXp3Bu!be;e*A}0J&fQz/ =f D#ˀiAlՎ-YoR8t;'+Q[ .Zc:tҤl zpiZ L.oXĻ~Fܠ!XՇ9Fe i`%ZdR )0b# =J)c j"GR:noh@B}Yv a2wfu0zecmSne3]|8 (}8"|P8+ɎH  RZLMEΔz7wsӑ˱ؒJ#aKZ^2 eUwږ"Z}egacmzŎui_+׸|w^3d.k|~k}ȣKt4edtu {2RN=Aj?v֪ "{ J]Z|fU)) Dk#'D"ť1+c|+ fOFz+'3H&wDܠb19,ýgxLHtKQb)@u6OuP墺`Naz6۲B. Q`mR!'j=pcNR w ]b/8B19X.EryY <넁|C+:vS]U9z< Cq ۢ4&Z\C)nsӱzM@qj }N|nfZ|q 1lnۥv Ƣz1ۯ@‘,4UQр\,LKx+rcV~Ԅum97!Uَv2e ̔oٞH4}2Hm]YdO̦[qсLbC('Օ $- AoPBa#}g1ݽSjTDwm rB6DPVsE.A[q3hg ڪ|{?;pMZh` '&z'B &8@e;*fF4 a;V_9ðQ ŔP.X2DOy$̭_Ӓ}r|ׯ38/VifeS1zo:{7tܭDz,NV؋?16:u!," }ZhEI)^D~ubCv~- IۆTҳ^nhr/!1h$n\yW|T{Vae!t _[$J+( : 5kFeQ@ xXoUYUDs+c*ujkg6n5[cV g,M:!cweM2ȶ4zij4TOsx[ϲ0Vl Xc4uqC98fVE.Y ǍtdWy\ejE*hƯ\P)3_6҅B[~t,AT!n:m*]$eRtPb|N/%uŅp a 9JQ5"{߄qvF[KlvY2 C!P,<.iy1?jbSNަ1ג&1"B1[L6,cfvBeT׉`<Ϟ!0OCAf$vX F-tr} ?T#敟 h|+A`! ;c\XfdRܔ7t|`DwF˖Yhݣ6O]bY% FmdՙqKT,XdN#PWUDF1*y{?ߋ991Tʺ]ǖ#_+6<8 Z-ѓNInI+ZЫ_OL(NOkfIc/ pUF b}&d/ 6,,_)FPHpscQv뉙 αqv*AK8hhuu*wA^$8$GKeC%qp3FZ/xBЃ?ϛ}[b-+r,p4wqfbyXLpP p⋥AMSq'V!Dj5kb%ĸrc )4ꤠq,v8@$F$d)1LB;8u9O8[Tqbv"İ tQ@R.IfUx3` R9~V/7#9qG_Z3ݺOʼǽpD"ytzAۂ_Wx!c{_h'y` nuP5kYRBأRo&{z/v!u3$wXͯh~{]/ mXTA \ەդx#Œ Bw):+NJ:%4=mS'!r813Ȗ}ŝO[o}t@._@hE7ݓJ⬃H1}oEs,k\mi$ԾZ(,$C4yhx tKf!~ sa+pr@ HQҿ""6*b^>&b:Y~2 ܆?I|~N] UL/*ݫMT Mn."2\K%DԉD+U*BAO"ny kwd.MiRPpFөv!/ӐiJɴH!Gn[^ GvD]D0rhꫠ#/,qaB`_r'vw^VNPs{)0mk*GCpsZpVFdcaP)Gy{2~GYaF'w:|9|sۅdjKвAYV1B?_ql%Ǫ5¿ď({tG((E>>w8^aW4:ί:[D i3|&{,ZE~V6 !hl@=4}hYg==KObn3!og~S1":=>LrC~\{Q҂HٝQyÝ6P he 㙌 tO1 ><_Ұ_4(}!K~oh)&g+1ƈ2D-d2HąFЙ4EfFFW2jH9ò]I ? C-7sCt!Dwk%#4h+%IQ5jOe4'ֆE[p)Dc ܠ<ۮSN$kأ*l my'3<3^"5.0[1œ|%2KyF"WfX,Db$ݨ+Ci,㯎z2:"VhTcg 2^}Dij^!CQ|׏*xrgԯڃQ*f 6޶8;`^g3z *GNRLP#eAz8};mYi5C'Ц6xknbgD[' iЇսMFj²~ߒ.^HoZ`y e+~#gxJo&aǡ(}Jؑ-,Af eYbhf~cЦx ;{`,aN|-V+qp8NrC 4;b:Ug^[ 7V|%t!vA1` {l3 GlN䐱\(ݹ,6 [-.E2YR5* +nD$X+G;U\LJ's}O242gyioHr=c:5yb rP CJ3@ۣQw),EQa컵EzGT^A \4"9/)Mq1e͉C8;3t#dc/d;F)C_mD|G0%f$`D?ͅdP˧ẽ ThT[#*c|)5T}]}.=FNrO>Z! {G!ڐq(ӯXWFRt4VQP[o ((y;e푕9ȏOv.wA yFT:"70_Ds߅nӌTyݐOKIy8 Y- ݁6 U#0g֎&-o"E$tL.%3Lc1iM,bJ.b흀([K028p-Ε*8 ~T3^q!p@-Yu]KiTkx U"x颜qWn5aN`LHӀt:XzX~l?b' Cq<-`kB΢3+- qί{iz1hoPXoXEw#֐Xd|Vt@h qw6q{9vxcӞMb9=dA!Ћ;sЄ ґ}wCCb1Q"qL$ RLE挖ph󂃱H^}EXOhp;iKt+Sミ_bZYqR(Ű 8diK{Py0P/q[lƃUk'H!Od V#67ޤUt#3<5iɁ#]UȆ$Hec܇ _.uj ;{+Ȩ>rC`[Ŋn^x3:@ pYVޕqPߵNHiMn_6tI 20z[w@zQ7@(%X__u*JLȾDL}Dvh!FRM^) 6tP29'G6p*sRѦL?X֔>Km^"cΫt[_ցILԨ=뿦V%Y]j39 ~:FHOF,zؠ;)(SQϗP C>oD)>}mL0=h/Sa6wqHkx[.j%ILф#`7əkjM)wweR)g&D1Y(DFAAo@@Oz&ⵑ`^[0a {e齿SJ}@$i'6atQhC#Sh4UCP&"`gYfBm#)2GNaH &/y?XA\%Ȩ=XHJEƷS^5v3->}\Zib)oW+mpikxӔ91Јo]e=2rY i,lDoUa ͌w\A!!>[Ud/<#C '}؉^3Z`l%#8>W|w)슐5 QrVnQ4pC39i@oQ xppe^{ׄ 5ş< 'W d찃_X~Vwp mWKzi,can #DFۇ b%H \³.1 x sXD;ViQF pmJqSvI{-J)%yn)VÊH|8B2ٍsUH&c `敇;0UPо7-3} Ʊ|I%*,: -%[q4<`y 򚠶0L2;g.wCm?P '&{yj&|LPk U; M*H_~XI*i2Wm>0ێo$Y7)<;yA>X0ThM.2:Yk>}nR 6+ 妴IfCѶX<Ρ;ƹz܃7%oLuc:U-@koG\-q^ q>Hd+)gDL_`ֺf˘ [{_k>M+ z<+{׽w!c H ;rt$9TkFAKD}? ` ? X}}VOw8nA}/K|m*hbY(}4*1ɲ$fqZRc 2I؍t&7ƹVyiU*ų\oGnuKV(*N|/"ė޺HrRI$== *JӤ4 f9,]x} PAG^an<#M '>!7}BaV9Ȩ$?ڻ@> |ڝlCW[O۹2"gn( XIe}`IYr2(ȼ.oK>~t!u{D)tkB³ #XwLZ .bR͜χb69/CAj=,ƻ;D{[g2F_ dp$KvOY@Pp@PCkU]MCc?HycOcx ʞMȤ^1S .cva0 ~h(h2J.V)ү[j\W'6a!OzS˗ $ ǪDv$4^Ṕ^ I$lq'\=k|7XjІ|:t_;wlUE߻"L} uűbAa= Nۋ ӻ[dB9 h,A|м͐c tM^h*)(_f[ RprPJ Gu6cmWX:p7 n8yr)XT:XG)a /1Ew,Ov!TXW_H)G'tiJGfMCCZ'oU牉6|ƢfC#$W1?h._%\ȩ:L{UC+KFď{u B5mv5 ۇa~_|NgꠏŽ>l x ܓʗ=MKc釯.4sC&a-`?"gڜ]wއc'οHE|GGB7A\,j0<㓆'IEx'ڭB[׊5+@SATC&BPUt 0p+s o{];p"ASW;{  AkX,g)8\8}YxjcLVV&:"i~2vidT.@'Y[6Fhn\!6t Ҝt؃3}x4i'l J X"2iF!87gL)ΗT/Gi dr/:l=e;nT25(ImMFnFR‚l$o5}ݩ@P0Gf݌a{:LI]ŶE(W* t ZN4V;!?_Ha!!B:$K(]ѿ+֟ EAx#S&y) 57V MJ1z0eB~i[Ծ@ic!T&Ĵ\g9p SC&"nk)ǨP[efMFR Շ?5>j<Q!ŇqpսGfpDM`+G ޿=n~ТOsuҌ&WlHzD7u"`nR<.Gh6׎fkd/NOnoSzg@3y]w[7z:599E+x n4Ք,CgiTA:-q0hH`Ȃ19!떿*F揼l&a}oBe 8Vfi̍BQWk+':Aeq]!/{$j3gaaEA|54{ˢ9L)~XA>N;4ոJ;!*͵/4[%.'SVF\y`Lr8Epހw>\2}֝ x؀8DF2j%sEq7O_f%wIsK/5M݀Ä0c -;Y5x@(VSvҬx5!cWgl_CoLs^1Brn ?qD|N2ñsbKzpMOEjZ0,sBt_j$@~K2C!_zdRf$5Uߏ!K/:x ӴU'2E54ɫ~0ZIoY=—Y zvR}]4=]yXdhu3"W{ώ|͌{ɵ+^IM7.u4Ĺ5U&iWr)W%]a?iɻ[ yucO lYW\HO2U!Z[ m*fs% ՙ$ΨrWMiιwafߴv"` Ս^9'h@QMЉLNs ";^Z~ tJԷƏ|RyYR?pJHu-.o09z C2K&so8^m).*5o(3%r]e[ڛy3spCqSc':~D-ϮbJk+FR/{ *}M P7Q*q nrjl݈Djt> VI&iQ_EPVI3UbfMuu~ncr @ԓ=CŨ9t} ?#﵅l{5>\vDR[RmxK?Ʉ,3"aQV*D#&0Ti&/T,y-پ]:zv|Km;4۴MIY@d0fEG:7%؊܃z@`y zΌ=pYVkẻEZʧڭbEGp-{Uv%/Q\ۨ%ip䨹8%kP- )Rr'F!]< ,ѣYT϶U@C%>!_#f }/"^zh}_H<,oZpdnײB 2:jx&Dzf+/xMIewQ9uq9K>㗳[-<)u È(DAB~rKqsR[Dx0a#2\.`DMVnsu%D.PGQː Kvy'ۅTX/\Q x^OI}7MsMytuXEQ3ª|~ I7I'qtž IDB.k'(a5ߣ,VoA+ڧ~? *ެv>Jj G(Ê7%H֦E?%@uh:kgLVeP: r?rOzpL>^Dlz-6z1+a⻧qS6i8ٶ(vD:1_VWA-.6* d0I2:Ooz+{iJ-靮µw3pO4P)X]n֌E+qɀcCTdcJfn(d !ޒhWsekߒTm$wQ+d%>v?=X^^J=}-z=~%USOQG<5'.4I̝?qפ7T~\m_/C?! 40F+s?ɢ TA?Nl %#$Cc6br/K{?Kooo8JUϥH =^7Ŭis7E@W6?^r vd FnVen" ֮l+@>w bCPx|Zwv)W3BmOSaz# Z:uz`kb2UwsT @e|o/-O1s_d`=t=SQdd?pMaC9TiLeoG>,AHX 0px/:od1i'V̍0-nDmQu/)xw;n->TZL'9Ǘ?|3g˗@1ﻧǔލHF=]dKۥlZ=*6X88$ Hx;v/l5cW*.]gQvfZ})S3͵<440I_$|zK F_ lkxsR?~`WS"EFog9y3$#/T [ xK$v (cܮ43 shN90~kᘿm59Zs Z,adNkь*an 3|NuIcMl3>aIM$AF@96~޴net\EOK#2.:"CEX>vLe,A@K]d !^5 i$Rj]C"n, o55BICbҿnɀqs,s4b;IL;gLrt[ut^ڑboʄ7TN M:ɉ0L +VWP"{ofݚ0WŔa:k`sW[4"@ym,-:_#6qt?`]:J:+_X%C"@i)`MĉAf3ᜅui=պ=fJir!ScN F{CFmf͠/:dw/yol+ELޔsQ/Ri>n֕s1_.Α vü]@Z0h1yu1y7z`騽J.4T_o/$uJOԒN[3܉S5/q8Jcx[ndti-ME#=cҳai8&7&l6Y :QC-~*  PPƕC&\V5U+>m/.Km k_4Z2[!0UOKr [aj>XgN/蕘rvu x;<ܜq6EG >}S% ^gYq;u#!R/rFIK81k×]La`hU,:"4-Kvf3mF4rkHcq}P@s)b@THcW:eBPJzN4IJ8V{_+fUDgp++8Cg C:0<~&J(y BAL:Roj9i#wuSKT'f>6vyjx5 T_>%LfqW;--{Ld{]dj0R屍4^=6`vXoq+6yjE!bC $h=l'U<ILԔ7%iM['2yFp_?0q y4qZZoE g*{ 4$$e:܆,#fq`xD__ֶ6]oa$z0zb̰IO6o2/%;?H[DpnkUj-'}8Qx2 L~xsb@+vX{ ٮ9ev/1*g&kՉ S9~[H0R ӹ@@)~(FHh~71duD g'$B-q ܺSUwĘYA'C22zO܆G޼=𴵱 hL79ĝDq7cWM/F{;nEP 'G<"K^/q֦,Llد]S5#l4 r>M3>p .RY%U>iH :1OPK8h ;l/#I|sYV<[Tl]Y:[8 \5'o-jMIYM}^ FvL-|@|8+\lɒra Y=2=3>˅Lh0IuuL|Q9H;ţ=64\\B[bY]. 5un>>Hǿu;$րC%ZlHp:\/Q6^8qre ]}+ V"Rm~Nd@u$գ]lN~{ ewfy:\2G0XGt[0o> bvQPqqGvqˆƿ;WqK i bwv q@JFDgrGF,r-|!v-ع echpL+>UkFwS}#fjQxIDYIV$(``R?PPԖF0 -~FYIγA(BAyF{bʧV@vPGA-$oUէm +Q=eyLbˁ~GhXr5 f[7lG?4Uq7id·%.n^;ɃD!Kk|^`Pou{v[/HG4@e;S`z"l]9;}`9t`c/અ6DTfBOuWXYpWR}xZ6 _2,Ed!J;ݎp-*XNߑ|TX6 „Fv;eJuczeGf5i~np rba$@/84H9[p)B"[% E=AaW4a! Ђh:5Wv;\oQ͖N^2k/VvqV  +csF鑛>v(7ר&B |UyV>_PͯtԘ Ӭ|=㮼T{DpسN5~dՐB#r4LP{çT$y&zQ<5CKڥ9 HLCvMPɉUJtH))e{:*c3w?tkRB\HgX$/Std%saTZezp/mb}}tykZNYh5xTyڼ"91eDGYubOoָ7hoĖ 8-M7n(yvQh;4.37ז#Euر^1tZ\n.&_cA9>0JuTUh2  @zr}$"-,4Y} * X7IawCE" <7#vh>V|@N,LnT.?/u𕎥N$i.ؠ+2,p= .Aow{f tCP.Gyg!8:9bArPXvX ve``E%* ][z킉*޷˪{SM2yIyhc5߁`L 䣗 0@DFA.Ud"(2u_ߤ+@%-!i´tj ^Ü呄3Zzu#ДiVGFr> &ZĽ)OkS߰LJLeLYٕ`E{A.pCn9xL$,NӅE5;~o6p:c<+ D .xBBkԱh$SMy,{c~ ; SeD22RdZc:*eYn.p-v< ͤQ><('1mO :ۤ]*X!"dvhߎi}m(:CmQ .S)Kаd::=\@66߂o!ay-UDg]K-׬Imsjb`E-ʥPb\+k0vHáѶDv'Yl5f<*(!<3w*3F¡U?{8NX.zMJn&M#[v1r;2tVpi-P0:y:g|UEkC],rPʼnq!YW1~R.4֮/$XpxKTi!9}^U$~¹.{,@ٴ2Z"Y/dž_ς'4>)-f4t(;yO B( -PwDa4\a z\r7uY˰IAˁ#|%$dqI)`TjMm5tˋ@U%yDefh}|4"5*2-YiWok)~w$iJG۵X{Na͕kԕaԤqTz'k}+鎩Q # (ڴ=z>hт{0q]>/Nd-z~5R`]7Ցul@qvܙpit|gmd -O&&\TZRҜ*uHUI&o{6^@yB.g?&ܾ&4c"hT]m^(Cۚ~a(&84*!hJ#{[^b0MbR7r[q z=R07I&Ahorkp ,tɐfNd@F8h*F?SӤ7+PM{P]6T>W㤗WF4qZj̯8%`6;JGsu#[g9fT@ʞjFEV1[pz/@ ɢm25|+iOz;MvTrRߊ i7Y:Jf~>=x{u#+hKr v`.O(MLSBIVU6`L"M ׫}iޢGwn`Bk g¨p:'iϫ.r9 [f9}lRI,0M-icvnR:i?V"BmENUh#A.Hn%^=p3ߞ#~CP,;C&a .Nj/X>>٭*1hm@-yak{S f6r2|R!3O(eYRʓ.>@Ck>s53̦Ttf:&%6+[⺴COў .'JTQ(0x+Y>I].ogˎOoWTz*cLsO[_R~{d{^骙Ff)lSn8ϩ/pRB$˝un_LiZ?F>8n ]206.w˨C 3z. {7"$,(.(A@^Aw΄^fBcHmѤ6xdO8E *$4T* w3sϓC#)S䔟0%E&piܴyņz᫄ާr ,`Pj~(>6R||>}df 2~i_b>8 58-қ!,_cPO2:H ^;2Y!'Vpl=mS`SnJC/!֜`Ng2IA]J/_{B2590އ .Wbyfp;ǦCk.%]Qn66a@pFWd$'DV [ ۸\6-|T&`GTu^M%Bgfu7NEDEDE;$4){cB\ UuBo]8S4eig!wYdIC#,6 pMȇ?{z]Nu\< 0޲ħ2Hswsr_`Ԣ1~Zh$d~sz hnh?{$?}y[p;hL$ wRc7 ǿ\(X[)ԤoX[ $g [cDy@a*DCRT5%R~[;YׄYL yzG?>,E|$-CL@]\s\w&rC_YE:T{HJz,P\\\ VZj)B/Ưh(|~Cj&0Cc5r&^>h<1g]"\d]Gl\@Ǔ~^KRdx ЪaŻM7>H͎UJ)F01k-P }V 86mzcՖ3ʸTQ2h ՊW‡mg(<{Xat pEg3isU@l>-_4r͉{(Hmx|n$ 5»xLoD5uԳG ̺ZB^`f5Wοi@wkUdRNXqS)&Cq+K>| \hwɍ^ЛyXƦOARd.O`w%.D!+Ӝ&v $0}e6$0v `p!->V76Z.G,O#aV}Wثup*zOz1Ҏh\ؠ@N طyest?n ^tUL-'eLowNB*?㲩> k/y(>,-?o-74Ҩ|Q*͋Vڈ2kv`#*L0ü+Z8qNAMB0ޞ,!Ԍ^>ïBuQΩʹZ\ 4|)W@ 5JMꏜ%R3ڛ6"-O_gvl@<(JddJ[2>Ȉ+0nj L/'4('3,7u{:Iy ,k#,Pg</iJªTә泗m.qXлM qEh'_@ic,]sZf[c +"zbFm }y<*RS 筃4SR? sʱ!N$]O[iQh%9`u XhEFBj^wOVf"&d+lLɅwQ3e]ԒLb_`o󻑎Aޚj/yC#3uR!ŵW.7yD f:EW;9*֝EPI/Noㇴ|%1irM_=Qĩ*y,>bQEJ7#AJWڢIxo= ^pEħHI{c6V:{U_|Ӯ{H~K}]bEcvF Ch^i'?.2SMB:(hqM,|۹xVE Lɲ,W7 h(NK<<ɬ7n͍D:RꃲgjW,ʍ̲?=`^h AMO|(YDGDs{.RH}OlWܺGce5mut4DMeHߒ:fV.)1(Nٶq-waJB/2g b h )#6fL_3R/ѵxeS_u\|nߜ?o[FOC!Mk^j jշ>/'_[1tQ$}KԌX=F\H{|`3 # J2Ś}3S[+ѹ~U!g:|^M{ϠPaQƆޮ ,JD7K-Dq]~/"{ 7{S [6 8W֟@zMT IBX1]fŊD r,dTR-/ʖa9^0q^&'ZNs&*!JZ?+꿽d} vA[K2M7\?+r>Q45X :kDBPY^ L$7BiELBmq楃ޙַݏ>4uK3h`CH-'. 4==,ևT6EX|PO.vfÎ2"EFb1<_X?sz.@[oLX׀`s>_F>ρO#=JF}>:CSO=z"Ga *aT X91ʂt:^|^on4ϨW7`$eun34t& wz+DE߁ATΨ,ˠR$`7ޞ"QP㵇F7k}8:?<0g['SM+W@=+|j}3MFn%i霗/jƣYdZ]a;>{*wΏcQH&S*3ӗrS1ߘECId NzfWQpgwZ=i5/`!-sBPf#)$^$C}щs'LC:WfAKj"@:5ס%*E⣠?K%' r^T&FCn!u4! lep^+}%dkIyARMKȭnUs ]/(bo юgޔY۱L]:t=ê)iPML&g v`֪q)%e$6])]ސ}AOϯc/\z:?7_b[ eKkFt ؤe AG tĽ0nV%y= y7)#Ld66E=L>ThҶZWCX=bm~>+ u)M-0?"E]{ !zrph5 MqU$uGMKbmNeKKuis =dR2<\I5DJF--БlQܪJekbXRU6g?{]&euFr{Q!;g*M}H Es%, alx)=ه߱ܐB7X<]$iLnFdŦo #I\Ky#D;gaˆ|zx1 `.~o~}?陖<~pNĕY83-IhX"Jʖe?gGJ` *~vXu*ۿTH x_quMjϳY̷ɾq6?'74dUV$|Nt2 o 6w]&|X0bOX,ZHڼanŬ\HD{Yc_K |>8QàϋR^猪Q:\ċ4w dFDvsvxU⟋֐j/ק$`X s]f@, O5f L!!q0De4Q!i ŸOd@=֯lx,e a0GE:} k+g.I;dW}VYg 8_fJIjRēe KyAs%|FabHikfm^Q'1Q°U)eYwH]'N3J$tg*y-@cD7| ^,k=n7AR Q'?͌m^zqG+L1']U"e0)e#ll,_YgĄRM`oH,n ( džL#+iKǨ GsP|hd y xЊ| 5!Z\!HZ`c{0./AF˫8 ga.8npܛpq&šd>ۋ4| gQHXvĢDpvBv}gVGX^\oY`+)QT;n&1Lp ?੤#PAk5d9CsI\Lبd*!Sgӧ s \ A'ae\ɥr"="qa:ݽcWЦTi%C]m?{r,/4YXm6KcsCτˢ71w ެ"Ь<̥/n)K4RM5`$X`f8%PsGU(lFcTNQiMTQ[.+˗vr'?-uzz%<;HNGSQN""w9&yEgOWIkSA^\{PlDcmY5\\z:2qCEJB5IJ!ܷ ;Қ r PevM>X~/'аaP%+l4LX&@rֲFIjL#G@V//V?Ú P *$T}LZeb܋A<7OWU4s*CyrjFqt1K{~IP249f2L'"bꡈ8ޫ7fm$Od9Mg?^Aa1M*_{PǙmu8>v䐽,PCF¨C%FBNؒmRHc1xVoS]?=X%=m8n*=JKz,1Uȿ7kkk'5ÎYŴ/ o۔3.9^(}˗&r]x1*ʴbl IUB?ș7zM<9v.JCj;Sƿgl]dn5س;kj^XRZPn\LM2bk%yp.̌]CizMYF q47ۨu[ùz.4֫IVc 2lSsYJVy?KuZ&!Os̠xןvdv MNJe-ze pPb0X9U V7oHn Ou4G{8!J~lm11\|U`SV%I5'bzB jvΊIۭ>qhEzZl|:,8@$fG)׵`1(S߹l P5hkԔX炤x+B1{Ϫ_7<]ް;s彚95Q!1O1 8!"[~5Xf;0[4vrFgy˜R$K8J{w#\>l ҏ O/oz<",_4׎Wf\:-|#}AV-ޡ.k0cW"M2@F3ҍYM-ceqr~ӝP"*YdCut-Z5AxZEjF;DM.`?fBz-<lҨyXءP$i歪A(2<=n29.izoNd)3&- wG?`Ѱxma wO?W N.6qe)bx8)S`d1鹙BǦL9j)QIWE:Dҏ$((8cɻL oc:'F"IlT7}hqx@1k}`SJ/FiB{$U?fa/۴F; ů˝PwRpfD' b~2-X3e\' %sD5~D`GQO˝m˓3.kImod1y77I 8@-~2!WBIڽ/X`JMeWFy$y1guۏQ-U Tx6Dmܨq0Ŏ.S >EMRx:/ |p") 1KC=6Mi9K4xF?p=rd 4$(d%awut"ArJé,uF?zRp8v=ur8X,5ArEΈf/JszX/EZśފTʕ&/Fm]墉RqỐɽ=^Hzk2V-ӆq{Qp]&ΰhՁjPH; [哽N_N;1IEd("aBٴ Qj yݝι#_XϠsQ)חIg9J ;kKB(=jIhGD-r3^]G$'=fr 7U,.l=4)i9Y"9G )oYKSǓs]!t -|sߌY~ ǃ XbOޱXӻ+MF1Ʌ2T3[(,7ƲQ٫6# vgL !t)Ku}^S|,MA zD3x|_Nj@JAhnj|ü)߫s! Qv*L'LI{nY]ֿ5gXE ؋ aұY 5,r6e*>_:8R@s} Y!`LdRw??Mhw+%| ӠDi  jZ -GCii޴"Ş0\~z?faO6)%$tFE0DԞ=7H"dmsN¹Ė@P.z̓Bŵ< H1Sq ܹ!xp{VQtzi`j̶pݒZXbITbsbvӴkz>xE |kZzmB)RZ=(8 F߱m$)< ꙮw?9Jg@Pe@kL.a!nGZy_g}d¾.Z $LPkL3E@kjV[1&n&||]{ ]hw^Z4g1+}5{Q)b`(6Dgywf8/^[UM%U#A7jelbx<{sJ(WU ;o\[Xu>+8 J -3)\I@f5%07'2k pFXo00*-f]!cڦ)+))Mi fʋ RS E! ǡQcBR& Qo27Sè#k}0#$ժp>.О -YRވR' "w wdbNƿg"z^ʸWsf^5X,O["0ib5./pwӠQY#FHXc9ćGUT NSD(/ "hASzUN:ڜ|o8E,2 \u0M7mnG%6C=|)\)(/х\t6 c)_mS4mp{Lx8`{xTT?jɡ䊶ZAkل열^C p%bMtsuQ~kyZ%3Af@f$w3b"S)e}9||<{R_;_H>RdB&PMSM9Xz*dlMԯ]T1%U%mpBUa`cC_vy zE:%nK{Zɯ]d]M t/(7~(h`V~56t6NDHU1ؘ._4}S߆Ɓ6$1 fY$@ nN3/߃oum~ѕwyP/acS+52 $O7:y)糰;Q;( Q8G2Be1W.Zn~6z;8D“9梁\٧ .Rd YY}N {qDƫ+~ ē qPd"}bv}(G kB]m pe'BݝT0o&+} 9zP=@8 gTI>&듸 Ed'7l&RI230^o;΄>>9 }FUͶ"2 5,1$LS 8E{.TTiq =ʡq.` ?Sle3F"9I}z* u"ra'PPowDJ2^l;o{q+yV ;#}P؆!p [-MCz& b֊{p>Hc-J$f ņz祵5Y[deV{-(GO]8Hԣ[ eV=c2k$WllhE'[-ۿMM] {,|n. zY7l(ß~2Xu 1[E٬؞0#vy>*P8#Eշ1;2Ozץ)tʻj !\`+s=GF¹y"ߪG^V5ENHSz@-v Difk5?íol;nn5bi&.-;ʥU06&jk4a6֋S=tuf=Ãt#am (BKL>XQTqɨ գpZ>c^z`[qo*>+(K&ؠb7{;*TQ%%?Ƈ ̋Gnn#K)uuL`f+L1HN^"ҹjV0;K҄wB-Dj0]L )vuktHJGT)(&C.HfJ}k}odE<_7YLV$&1{w!ʾܠYa JGʫ Jq)mAZk p]#A\(#>xjަ !1X K5݈cѳ5hPB1? l m.Zo"qy6OרF"9rm´ȃ<䱏fZ9!U &oZ @Kn1{}ڼhQ]CS"F kњݝzdS]f缾;>TTL Mwo(cXi5uߧ~G鞱y+;i9SC(lf30.~iHEHOX\~,7!ﰑ٣>hY1UQg R59ċn^ZA 삜ІA?%ު /Qey4HNŔPHkr{A噯z 汯q}; Bj .c ܐy2iP_ȍؘ # X\$wlѶTI63Nܳ^r)7 ;k䤖/[ICѯî 39w*<=Ѵ:q*r1 Ӄ K)#Z5T<βf _zT ٫xBʇ'$߾9 '[EGcX"2v`9·W~,i|n-pDD瀿~8Qh/ZRQZy=]9Z@KA&!\CD%9{x< խwj GH>K,* m%AI.SiH1Ґ|q_{*{v4ϼeAU2^pPw3`Ňo5K#AkaU2(.0]N,|UHd粄&QtBG>g-s&ukDW8~<!3g'0kp|䗧 s^!ybwFmV53FߪY]0`n2? ~*FRw_63 qDlce kO.D2__b; ﹹ |4?$Y$\[bes8~k@qm7.O*AzD;)Pq 2D[nMDN(]+RG ;(>‘WEiCZfP"SJ qp$3͸ݬHn~Ec=a-(l7l@Z%nܳtJ|~?z°HfZ)+-Uʾt {Z])Upͼi۹bB;& EX󞣻TYzXamd<4 @6ЉV OG>zyQ뽦#b `70w7ܞ3} , y=mrڐʻz;1݁eYPՂdyzހ9-$ZӐri~bw,F պABؼj36aj9ǽ5E3~kbxGF~L: [p4x޿Gkf4E 5P@(R!# S |FE_Jl/^I"[ 'v)S >.-0UX/#97!mRrD2?5xڗeU,w:.uϒa/PI qyZ8-S UAbƛnMN ]_^4`itV~ &; Nu"U Mɋe4h_"Zưqwh$plmO*k[e/L^1{/.-Hgd+ɋ }SO̍iPckx*!ȳ|¶HbX2}8q֯SH ?߰c&ߝ[x^~@@FZ?+sTl,glʥ?[ХRG,CdwOK_\*3Cs(2E߂5QLſ$k?e/o5ekbt%81w[ lC t eu;BnZ <'3On}o\)pzqH:l6_ _ʎp.j7 .?Uv St1fۣ˙J} Wk=2< 6萇z9ϫJCP QRϴ.U7q̸R5k R::'te58J |hrh봔Ycr.X߯Eq[|)%V'?Qt@|1aX ;\/x`"sDqf8RQQLg~j0{.9y7r@znwϴ&4wk Ϯ18'GW\S y(xvα  `ɑ@A QPY'WsQ?&]<*SV:Ekơhlm#(9u-.#&\.b/wӴ "庰Hwor*?47..}CװRӇC+&')`B]q9d9c 3>y>rP̻΍ߒu+R{ϫ?tUuHuFI)\0|Ds'2"MH(%c8uwRDslx-qc;bgd-l3RAi3Ἇ3x|Xxb =}dQy'=C!O]%Lʾ<pDOst7P릦PeGWzK}lP-UD& 8QTΉE᫔d2e>;0"c):xъJgp5#Te/cqG%)m#X<?›͉5]'֯w|G 'laZ`- {<~{ɑFw~|v#gUre^LdL:;-EƐJUl^C)yd pfnj%.,t47IxmXͧڜ@X$7(~de“uds!VZ)gOܔI@sl 1 QV.sP0`pSW[zp,FF8H7x~A2BooIt\%rV+'c JCp}$vCf_6(pFu!QՅC*8ЯB-񘀉ȕ !2 ؈}ih4P%!R }$ر>hbvwnNֱxVGB!- -7&8'EhU˞M aB%F^Rj3'BKtU&C;T̖~0H XSmGҵ|z{_]ם5/+⥙/"koj q|Q0NN-Qg(~BvJH%p[NԝC ː̡vo]b<']x7ᾣ.yAт F_oErGT3*&ʲDvQ޵8qج{ҷyS$M@{Ãt%؝9Bh]k"' PoU#ȗ7/Dၐ!wM1p aH C]A:g.siJ[~ʉ5qCIlsZo=Ϯ*,DIBB%u h N eYr&^#$#,oX]{;8|gEufLNZq:bWL.Cp$e+/hiZy.⇻aw[|%dggڭ&5U݅1q=qn%Ylsqw=Q;ǵ5@;*oYCxIO,p4ٴt Ab,#5M/q;QֿjBx%`=J^n+WsX(#攺ho'5f7jh,wqTf 5P޹!yk~GD_-lΩs)r8.|($~^jSo`y.bI`[Bm^LlI?!-̴r ?ڍeft+M;ZVk$e[f[$C,Fڨ҉\+ĩ?I:Lën.\߼C+"҂25`S9re|1QL.,_yGA-HUڗBc3xCJk'ڃGhTñ!`D%sXOKO5xW$a&LP6HDVcDYTI f&Tux)[~!Ml a6jG "#m>pru+D+ċZB<}ptq(qo@ZTQ@pSY4EƓ%kʩ7bL'*.v@:POOI7D1O]dT"f,VeH[@vd5J/f"eyJg8r^mȅ&FZaP6CČeMhGe3?vwclʯ@zser7 :>x|GgoI0)~EeB;U*ZF r,}yjchsQ9 5GI?Z7QZ1RϜ ]['56bT_Uo2z ^PH}?"+#4*ez9Ϻ7c>~O/&ڙKq6+ELu`%ȃ ,.$SƲ L&F\xKRXlcMg2t1LICIL-ѵԄN/2H{}f9]w魶,,Xm;}5)Vګ F(59CKgOK9V)*? +\v>ɵ~W\3sM:@Vato͖l2FaY%mܕ9#>Yo݋xWXJP2OYshVcSy2,ꯚS^Zf2uۑ%!}+XTߴ{*{D1r@]W>ąCtN\rP:-UQ:)!9.9X6x/n6\ *{be$.NoOv8JI^H b804Ͷ6o! ZI]+_Wן,rW\@:_[yXlDBVTg9 {2ٰqg,6YCPTfqU;{DZ ߇*׫Trn+x.DRH4ƶZda1B'\1*.0O6$HKTJ-DW:jXxPz?:~?Ir>,<oZJC/0dscaޕ hi$?Ƈ P+9XQꏲيo:wXD76$[i~> sj]|x~̠wfoIwqt ~FRX$>8GNk!xXlx}:[{EŘ79>;K\;s4Qp`}Y7_.[(*vR gV[V8hԊoc@ $(\nSkiwLxhY30[sJYMe1FP|ÒQ@&UN ivN߹ӊB3-77'쐅,>] =zڿdcwWIx<j`}, |Z J~;"f4F֟{(  u5Z"0k.Xhls_x4X,nϿO€BXo7C ?9mX~\׍h^Jﻺg< KVg=N#>{K_R7"\C"%@ MOtx`Rq'IH+ZgsNj+7^@fw`nGR`Z.cUᬇH€=hI*㺸s?ɱt[f}#s2v:U,aSNTj>+ўF+%E⭔+D:!F׿zv .KQhE(QJ1qHb}])'TLu0:B sh' .aAUf[y ]n{T\^4*8jv8# ^NRxz%Ԫ!ئ)q.Rq<7q/2@ߍԗCby?4]]bd?k;}6;PHlQPr a )<p*&X>짝ªC*?yQ(wŰb9b?z;*q{5^w5U*&N B0"FԿ <:+M.BHKCU5`["7:wm ׊<`, ,!t.ӈU[KYBL]Z5_S7N;Gl@hKer[q1;A$3 I<}F {r>+]01">:KVQwf F\2yͫa[`ZZk``~b_Õm yGj={=`. @ "lXO4l vVv,,'" ?`J] {>WsNcQPcܯ ,=Ky!/ݟr{6B$23ʏqBI97 j-=CIl;l~'=NyaFCQ+=Gm e`!`LKt- <9b{U?hv=>O\I ¢\䧙n -Nds[~x뙯&nh<&W h11ɉo( Hav|,(7CPՈWp6uI KFP 9k4ş]y.c ^krZ8 ^ քzA3HPWV0e_e"S[(Җg'L":@m81_͢R=G\SRnHZq9[쾪5+R`5A`TefbBR& cɗǜW3mh@IH*gTծ'%Yi_zNo}ُN԰l}Қ̓W4eUbgnW>UYN4R%sƑL&BrD] y>2`#N`Eq]]*8s"u2qB0c3$}kڐtb yhpn/T}m\s51nC-Fx4쪔&(| asqz^"W! ɿ2GrTO79[ؕIgi(Id2x89m.ЦA#%ulm1jp^ZΕ 2 OP-y Q-@o<2)8}23V x Hzߥq/ƚK5m_(Ojv,==io@okެ,[͋ď}|y 4E A `BJeyWc}!3wv3uTdH+ܠu=]򯎃~j4ڝ4AD\17k1ݾ} %c%{ƛ"QW3J"h1hs|b!;ĒIRy B`<4Bb?=?JxAso>\"!zP[J Zi%oɺ Tv2JJj"89(€< L/#WKACrHj_dH$_Ӟ@fp3nvrׅ/ 4e@ EEϯv,3R-?8Jڵgw!АǯNv:0r1XaciRjk5s_h趆 3ݯT6(3˒oXQwb:HP20>y}PPѬ'w=U"e-"459ؓ)v1Tn!U{p){4mKVO״PkI|W͒!ha"+U6~:H,oj*a@ՔTԖAQ`@x49i'iQX8_o T ,QàU)e-ԓ'B"FosRK&ps^-V\qȿ{&~U"Fn쀗*oQk:;+_^Fگk~SdXT"Ezxh8 VH?ΎnLȖ2]w3bZجڂ^kȟY# ҧ81z~ $+vTdhڞ1ÕԙX=7>\ L;An~Ԭ72.ɏ`UBx;~Uv=l!d-7?Hv9d6v`Ey~H rh!n㷅q[!ꂻ!%N)FSA ?ŭR``O!D?Cg ZLQS-iysraaKTg0 ':Q F m,dAŒ9*GpM衷pbd=7q3*NdC)c@GV\'TJ;Va0+\{# M9m{ےՇj]2zV']Gcmm(P(ҪR dykC0PbE .vp  vnOJ\?MAS l--PQ0 _Y*/:\{q0PA*DLppMQ$.l"F6FUceBa =۳VH@gtIBk#yQ..@2Ft8#^By.OPXOC(MYU؟`u/ZH#m1b)B>9[=FKfJD6Ӧ I}s?+{܀}W *͎Y^bNnPl-õ8:4m}$8M~Z lx9 ,{K53b{H]V &֗4ذ(Sd1x=5 Se^Z!\GieI޸BtCGm&,Lb28 J7{ل`[DRI ƑB'*ܱۢl kݲhO2Rλ>ۘ<1ɂ,\PB#4rɾTۃ[#mh w)sOpq;#} ž*u,CW8[ cѯc C awYVS]rRl0 B 2j]7}c֮ܿKVL ]HӨψdJdD6~qpÿݗ p7>8osɯ-P7xH>+k }ExNa1 %8e>=,R \hL1\=6|g|doR~OSTn&6t#;RTJX"?Ho A̕3l9dEޞ-RNҤ>AY(`SLj#mHujNB?*b'|g:#&بQpPsoĊkԃMpyPgAsy+'[*KThU\ 8>?b5=Zi #\%eU ÐX9.]Ȋ6ruį'c箝Z$LِKC=dӐvA8g-2𛡥7t_]},iJn%Zp ¦DQEOz2$8M)/i !nPac _!.~*ND1ql*1𖩼4^ccgZt&\S/mM(3G%ZBwkkv)ԧ;7 cg8Hu N5؉F,Й*TH]z>4H˖*>\u1֘zvuP?)Pч,@f~U@J}EUmBŰgxvϻ٩=xa":t쑟נVC-}8'SC+Y{ 7ؿk$_xK mRYD$p3ÂJFp6KWN"U뫛"4%wnɲC sI~QCocF- OuR 9V"i4{T܁2`-<@UOy}ordBTh PUJa2Pe<*.*a wRU6eu~dFAͦ[-ySW0 F0WcHaٓG:4,lܧD>wV> iM-̮v]~pE4\1["3MM_s! fl7VUaB*;H,6˜hZCҀ`?feBMI?5~jB5yѵ\bAgj|)8ϒC0Ne7AbnMFj[]K3-x4D'u<aOY҆}"#N}wSYMw^V/. rH> ˖At=.1zԖ~ #0h>ۦ_`ؕF5 %VsJ(.LhE^1$ҷ -l!뢣cfnPM0;Fef59dSbn3O| ]1UԚhPbg c?" Ki^ Y<ɏ7J#mĚk ښ_/F67VSA1R:Fj~:A}wP (ᙣ9f/A+t)wt,`Ljy.|R$C#&7U[ ̧Y&M8WGu]UtJ}ٍ0} /\~\ 9d;U{jS'pܻ ass2\Jc$k;~yhT;w[iUXK-h"&.lER% 𭢣dP /FLcnOlF˸1tL/@Wb} AXL=l,G}Ã^B)7PmX/Oy"bv09\%%pH5x7R{b\߷F1$-:WY$|\7nˋ$ٷʱC 8foP^kCkM~Eɀk{W `9I9,s/ni\HkNj?QψKvq#ьj-uh~ ji^Afu8`!}҈>,o}tY]6Xu ZFH/~=FT$`㎘fsC]:"tFӒ.}B!&ikcEm@joZЕXw)^pSǼMj&b9'W=u懪nj6^ҭ0GkX1L&4 S6T2GӬ_^كFP3J`Ms&xFhAFMUVmP)O(Wj2D}W< 9’c&+.H/ dQ{ۓlJ R.JS]Xkȵ#׀VGVMغ QWBaZdq?&Fj G=YV&Ц9Pɣ,\f,N}OxY)#AܭXnE Wr+eզf.,Ch$^t W&5=Ț5g~xs'6 u.r)CUxڽ0 c_KaerDؐrJ*?O9nݼ/2+awTX~.PuDyLtm* ax5z±+0PD"zWc 2$T p(s*d l{۳͔5ɼlD.+Rr1gJ)8vҹb J/Dn^7xaۋ_y RѥeG̀;z }gDļۿ_,Q5G`$-7ypL,X'&$ϮumgnOS:ÚϽmflNeE$f$DsUU3!"B x!E;bm|l Dq'uut[!g۞D|¨{ hܧa1ܺd(Aڟ#આC,B73 ik!w ڍF0c&N{G㽐98f Rm{FlD=OW8IjOc#~0Б&z$N3cMa֔QoN%1%~hi*tMboI,26cİVH\ _DlW R]W8TfDo hD2Nuk:X-D!KPĶ"D}ZqɊ2 t{s5xE] \A<댳Z2d@, 7w'Bވ]X 7*YXEzk굦yi_D cw4;\?I-k#`B6TߣT<%X60CQF.21+u_aJHWZVmsQS T˳ɏ%ٞ^=<Ԩ[U7Էf(x^`nY7̠ ȊzvoֽlWdD+dqY, F4?&mT -U-&R+_3ڸ|WOj1\4H~N > jqIWl ~8> T!l@%=qDB늞+6*pn4pmpOQOJV?U8G$t$ }.sn0Ff{^.s E,}MEMZ NK;I6e,Ӏc61U3b 0M_Aڒ'fhxY$:?bjRH{?]5l+SyB #liZwK˧~ 0Gq l]"ps#壣#;-I V?Lg⽪즖~nl l0 ȇLT}ƒQɹ=hW۟A K n0}#N?;%2}Z"#_ub#wM]sf Yt,@"n[MJFZoWm[g=B%Zg~[ 3הICנXD@!&J~}ҺS'{PEtRa.i/Tؤm4h"]y49r5NΒ2+%dV| [x]dv~ExF▐+D7 >f`ECxU]# 9 p6 +\48up?p^uZsWS!J|[ݝR ՉC|XA.D>7 İЃwzF~\u9~UX&7:!X%`+!Cν& ~k끋ro]5Vmwܡ`3|[a{N*m$ڳ!I!{Gxd {P!/QH/(Vin;Nl; |Zڍ~,A֖zW %j\ @= BwuIPWf.5RQ uGq~O=̨.v&6dN+Zq?;,%nyIڻ~,د 'ql QV_,:BP79.nB;ݛP4 -AM)hsB&|^Rf6*}$$6"F$_mƱQ l|zlhж9 j4` vYJ=z-Ioܻt2 63,ŝQ6 fa})h\/Ȭ,: )flZ R4PUw)ʓ8i!y%*CT-/~>3#}$0ҸtY[*s\?,t): թImm`hH.3]r˘tv9Y0eHPvz|P S8)Jp4P@p~}_@huP8s;SBkmSS6`uv;+UE ,m6k0$i1ԞbR*h)9ڹ͡L H|w| 1 &玷>Bp~iy=,ofE3đ!%Gn=ARR Ͳ2PJpl>mH,{8oDv26=etC}@ sF4+TseމLvҵ>v M˟=o~U$L5z9D-.9-\́\ܳUּKzϡSτPqT[7ч_-([DOZ@]Sub::*iwON{:s.Ë3"*5E,RrhjFP )h׉Gx?nȲ i/t?+~8 T2yǵ3=? =+ڂk6oZp}K[ yTflxV_-Hj|xA`,IMܑmfw?8[#}U O $} FTgad?<_c?ډыd: v$u!S&ֿl%b-N[t ratR >&Lyyȍ9.(ZڕiEH$g˦v)&-tUI`XX%Y^-)/F ;{Yг['E\T;:-K>{CZr`sI1Rr<3pwϋyBLr|Af*`~y ?$({X(zm}-pk6q6%բJY0[3T_}3[gnP\& ]N{OOth% Xpڟww7N1^SԯqSŊR"9.=Oߞk0k)mh ]̭o}Q-T&*:60Mq(R11)i+Ӎ17PLUϡU1%nJ[XWVY1-ѽjzqճr+| a/[Ӟ<'dތث~{zsL&K;yъL9#J >1[' V3%`5C4Wq~~Řl>A(ŶxIR ԧ(W^In,GmO֋ݽS֒P">xłlfeA+wo |=@b9?{ɢuBxrJd0Z?x?U;8ZbmΠu q ]D$ۗTk0iTJ#hC0ꃁhBs:ħ:T?ɵfu?Ѯ8荂}y. j0_qHX4iH?)ٚ ⲧ,m$0]H Dsf>|[ c?kC j/&6 CEMq5TvFd,,]ec4H;Sdv5iD17GN@q>:)Pgǥ`Λl~ȰW w|,7Z],ԃ2AOg-)-IW} ʱ|&lo绣t2j$0{|m愠 ]::Xe(3/BXOCCa'?<9džuƖt99sK>KW+ץl 7z3,Zak˭.NSth FSbdյ3euuEe*p kʳױg(gu9AJZS-wj=,̀àߜY-udBxu6zF ?SvIj&%7an 7QzaJ\F0,1xI8 XyB/GngZas8B~LMxcj@.9ϔZ%|`4  &j]X4l4{H|Q t- 1 G, A奙E.dJޔx`>%u_-?@FGXud8ڂœh%OB ƔQt.QFC?(/yM}#g8aO)Hqoqvc7heT9 K?%Jl[N"qG8W->ihOaZ/Wu*^zu Fd`4e|ޯ߾?Ug&TjCÙ+mhnΕ$HͼQbJGv'dH|Xb\XI1^j9.΢"[ӱ/#äs:q/xTk}TFD6^PjOr b-*~?,E$[)d-/|'2y.yxgEc7ݒLj(7BRWF;yU]ނ,0*ق*&iAW@v|/&im&xk¨۷k!01Pz7%툸7:ObyN!psm!ɐeB(``n*a)/%R0~}xErj[y~Oy?Hx&e qG 0[d) X\uI Æv34fҷQeWeq!x f]|r= /}"D g&YKb ?[yK)p%7kS)oDPg$ i?,hϓ5١ [N]LsŚi18N7+OL7EyYt;iuN*qBj ,pP9b3(n4h\nu~~7[ ckNK (Z{~DGݸzu7iƚX#;@`3(lou7_9 唶R' BֶU)LP؋LFpd%*;O} y$ebN& tKҟ޺BD #"3$-PQ;R,,O5S~R-9f2@L|brz&^0G;Uà~v[Pg7ݴnD9Z~ݹJSS9ͻn@! >Xѱ^ujk,๰*{[i;qȞ8xVK?15>]FHED4&iשu^mS-䆖lHZbeTpcdJ&H]+hB. OJ_J9]s(^\ߦm_&:pZnh tf0|8 eY`mjWҷ@1!j.XI]/xףGMۭsb`+ۮSOῆNR\,&|E'`2l<1ic@V>o 3x*wӀb 5i| K\{&¶߄!!NeNiK)ޠt-ǃ)VsWY>e"y:Է^|\ 5ɝ`AvZ,[Jڂ^$):Gb?XѠaN(Q aru ?CH}?<8ZץeU\^T]+}yxq"#/CaC?\5__<Ʉ#9Y -N$SS@)\2 @kOec9n%tuT@Z20! !0M;g6V<IݕH;'}|H?WΈ =\1CeRH$;>Jpe޴@*v4xSfy"y8R q6@)&U`$wET?EggMWY%]3hWK]jy)[WW_#ݱ@$%)C%Il'4\^UN[p%- D5+ ϟ*X&%'vPp:l݅蘩xyL<5=͞rr bx8?drՐ@K@e w aM(fRQ2L7ШL±?d" ch|Q[SE ̷%"!Ҳ,.a.t3yhTdM+8-OPqrb?|PX嗷=DTBR r`3 h̡ud\'#,PIWP^|2#6;J-/䰕I{ )>0/a2|N\2CiᛴL*2, "/GMoiH /Z (O(38G(yX|ŦX'G+D CHP;OvJ }z'(!FusV:㑅ƕXe67BPד3~xb [UQOn?% M>tB0%R/[9uVCe/gy"[AA*TTbњ<ɃodY'A e CiRmR|Ij^Qa;ʯK6\6+]ߒ,*P"c#8$y_ؗ-|q < y*Zyk8ĨßL;Ș|nW+*]=lq\P m>00rapo8y; p`ذ(!c+p,}&Hb&G,Kno@Ec{yX i!:Y\Z㥡ORCHV$.9ex4~{$dNz&^N;x/ 0~EO]]]no2cU8PT˸mz$ߖ}5YaoqXP0E5e[ڠS5B bR~fwuu\E<=0A{)x6d?]N2mW4­Hc}mɇVpX[dj^}Y!{`R%TM$lײ$rۃd{`|ず#F-͏MU$vS<O,^-?|hGܟ~E|+H+}a,I)\7oOBeS5V[JUB:,~uKgr\4 0HZ&DV1 v%ʒLzu*) ZmfBHf"qUmHoq:`[46ф({J a,IZͭy(/y]Ȅn,0YS8w6=>K&=d&#vC8p,?-s n`~R;-apTlW])ٿC 3wKIZhfP,%j9SVCQu5L _7juN)+ dJ–#dAG 5 `*6.#"C|(IpV;j[ +r.4|n9oֈs.ֽ !8̭BJC)v bIݷ^+ľ%8B5j{!CZP8R`(}*x~%՗Z_z)^}s DIMt,_ aTvkH.y_dY#$ܞvt]tpAʼn);N:q⸬8~z e҂=},gˢ;ku4HnsEOY$U9D˗ ݯF)uD4cU4 q<6v|ʋ6dV#C{;"*ك4PmQoy еC\%գũ?HӃ1bBaý!7y*\KZ?HtPzGb~ވ2Id?]M z1=cUcGX/ϑVLJ0bx,ޅy'AF{t6u`"ũG sN#{xK -0"v28VZqRUvS'w48 s,3SzP//BT`NJY1ܘx.#yjs])n?l[bbʗJ##W]A%s4YX)Dד Ч8;3 X TZ*|pnӢŗzn6C4WA\P7<)1 ̫^F)c~v I:<%K\Զ/nj|HدUKF/=ʀn%VMdij@VPwTo RzJOxR=;* ֗D˼RRCyH.:fN׻Xg^b r8Lt dӥ=\c' X3QW0w8"X4G 1LY&KY$"OrcΆ%8CQZkͦoKGAe.l%LO߂Q̭YOe(7]rHwˁcmCfIN-saR:1h4l$JX.xpTzܽlfRv^]m#aVy7cH؇x O/!<%V?CW Hׁw-w)kaqTpT#X K33ߊG/ےHzRV2N"Yw*9XheAx"_44uO-|8@DnJ6CSlzѮbs\:P[dC~E® {N:q.KeݻYz inH^1qh0R:8}gϫo3}Dz:a4PťҪlÂ!ϔ(9 -\,y?^Џ#ޖmtꫪzJ,"bNQfUٱ8fC,]z X^CkUtZ^$QMMq?#ޕQ}P-ۊ&GO !~q8. O<5 b?w[t{ϙ0:G"bΤ%n7d4b? uWpOe[D})"0ZZjU΀I-YR4*̰Zg"Tw^?R [\чh4%u90 t#UMiy9kS@/J{y\,~P"REa0+wX~ 1 /[;CPp UZk<ڞ~MھV 2hUVjt| 4< sg>C{E_h/ﶝ`\xl H/Ez) 9S]B׮!L]~b=ɪi!fM\s+7g<8Lbx~t\u SW#Ib!x&e$ $kÂrA +}_5CMH%EKGo;U^-?f!9$?nRXo־qt:"{g<D2`,Ti<DA߼iUu5p׋z7@[鈢<&ӂcb6Fn;Aa<8+(mZy-o6J"6U ERjiesК8OMG^I^#UKY .o`B$vV}lYH$6Z#YorFm6 hQ ؘ6.A]~QZSiHGTt'Rֿ3j^gS,V%vCnpɺP2Lq }Ek+( vKZLY YqʭyXٺ~ |.,I‘nȧ%^ş4qD y-|]7LYT_ֹkT^F: !syz3.On5Yh&tt𿚭TSӳ~|{B: vu ayz3()^mi$0{dM^cV]vZ B\p36b鱰DVtjk[kQcգ%咕&7 @5Է3,3 ~0qsU/x49GpQG>i3X/~_muWQ98SՔ_aX`pTd&rWۋDڐl/˟qaѧ[Oފ?'bD?:0 @_Tu:"3Mu-RF;g@>afaTEn@TDPl(sjaZ'1^?$+^;JH{ D"lB=Q^7/\c?jqfDۘaKCv17e (O.fC[7B~UkMc=~EB5횶A{sö}r׻bo_WǥGF;MWdJ4 7P^!=dٟ_qW?I~TU뫊I'qk !c6*ȰS]ڕ W7_}|lZF: 'UCTQ/cjYq_5,1mHqW &o2%Yw-{ R<{-CQZihptAŴYI,&G.Pn]cອ F*djKЦ6[ &]W/<{1"bugD5ߓO3V ZgOe Ì4 ༟]¼uz?{&ӭb`}&΂eh FiN7ӆUO MQp ኇ 刁qhe==O'B"Ht>iY Tu/Gc?Bm$[<zRؖ_>oLijԑttSZ;%6& E[=I@[E&wִ+*}ElPcfWpErQ3kaN-xa3-Fr1R0h.1J-ZF}Ξ qfWRߢgMkȘY/3M8WEN74 rO|ho_:V 'uO]iwӾd XB Z} !>@XSKB2fg_v9-chk0&'LPn %߱GK2>ϞYaع>9EJGnI=Hut@Eг7P.hL_3êS "ς?'oZ&%"/.!Pq38t^960a!i>sJx:+:O+9KsӁLt~2Îx!i؍W\m4Vx -uچSŀRq ˄}2ּy+f"AGa5(¡a킸x{k]gU騡 U4;,U侥|M=0O GY1ba!701^O| *(y,gF2dRg3ꄪے,-H1).I47Cqml+zQpP3N *}w|{ǂٰ6?ͬZ g'_!z IotR`E)`،袿sZu&΍+A";ˤ0pf4vz'1RLjL,W ɣ7z\{97)$'!j=xA%<fQwو;a?&S[6sm^BzeҟҰ(暸–ӏ](@e a1 21ϊxT6HTESW( Y>@^u՞I 9 PnX/sH׼Uڠp0 軁HQba)Z$~we$ġ04t0DIzT4X9=#υmM{ }l`k{xe%'AuEOT84vw ٻ8uGCAa*~׆0uLO+u4%@k{ŐkI ! 1opQ|YKh v (%lW_fnosԓn` {C1x9d ?}5׸;6 p@*D6%Ur5Xq䘯yK$5#Uq\/'0zR:Kai? Tֺ':}=iJzQ8pΦWӼ 0VDRLNMoO;^| F#Gtց&_.a,ǥ[ؼ>_a.G=6>f@L">I OlK/QHk6#z}h101P5BU%{y Sa[TNU0A@ Cs¾ջ]㡽vx, 4k hjtE3AF~N٦]?جAHQ4,1#s[!aM]˥]~E39VV8*l:\B`I[F;qו;/q.FH,Bj(p̦W^Y[HlĖ< qߦh=bD{Y'DPLϬ'*&&! a~e`F'ڏ6D?Kaq.QDGj}]prc= 5353c}F cP& 3qK,"f ;߼36ܨ^[Z-Y_o<[+,MC4vEsR'a0q/>*9y;/ "Y=Fʓ۔DQx-A \`|\48ۦ^m5 Zx戒oHښ0 vTۣ5?d>\ȃ$ qZX_}]@"Uy7-X80~O]<3!TU17pg4?˧F^ X1|yAMQSpٔ9b {g$GVr%pޭ"$(XT؆J7sBU3FLf|P0X:\Guj `p-N;\J2[5 B3sYX{I#Q~Aß#(6ro·PlI^n/%mlzClfh!Xz.zr19;= J_xMJ/"yj[W.50]xpfC(N Msp0mo"'ytF̅ɖD, \,,6A&exDt + 5kJ}YDMo0\+PKil8w&DEIٿ nw]AŸbn'/C\Cҫ> t©p7f O, KrAC4KK3 'bYn5X> MH yjZG'2x@|~@URw:agvY!>54C&\|ZDcV "|eCZ59\e_1AA $Xs^pf<$/.`]t^ #耻\?2m_J"8:f~DS Be z&aݒ.S!*P|P4671A{Uz-rބ8VGKg6a5c.9_~qeuDSYU%~Zߺ ̚ ~9)Gp$ok. VF_ѬnHbV 5DSwwh8X,nn6xW,tk)nw՞SN\Z42EVu/drŒ}B; Uw//#~}͋?}dw(I\eB4;?U%ۨQ'xCtF\Ac)j28diYX T,g;L'mu 1.W77BaO*+Qy3U=c(xl2 i8)̾U"ve&N GVtc(\Vāb/3`<Ǧ:_XO|+|^'gZ"w i!$%K*U'绢CJmmu/dIbA&xq^/#5s壄]$*`2{S(-7l Z_ P;``IƁ_H枂oPHH%N9M)#舡vGj$EnI\^R\LIČOzox"Ezy!^0[&6J/h nb!PX&xt[(&6W[fH@wC%]D t J$,rvjl֓^Rda|hFij-qZxu*V$DRX{f,9v10$=4P9튣Cg(9&ΧsB1k.4:*\X2$2zLZ<:bavYOc.SHܚ iWwzX;\NX+a eaR9T@U{yY rgiB%B31Fh%Yޞ{VmhEY_͋kvBb y)6)@TFGY5jk>k(%\EȭA\ 怯t9Tm(3gŸԮz.A J%;X))S1xTCkb36q2;L*\u" Żu}񨖔# MǞ:#M1@xiiv k#ceQ->^TZ̀7 Ϲ1N{<]?f `&q/Xro/߫ ⩬%G x /$|GW5}8'N,*R.);v =Yˠ^p<& Yu5ivndWDĘOR8N;"mI݇:u ZTk)Wf1W}fZʐ-Dl3b+ADSI )iwyo:R39(rj*eX!gY݀Y<}jT=;|$s \idvw̺<W½8o1-6IlQ (D }Z־&Rzd̈v)cȬ14Xx+=p5@j͙ !&ޭ5?j^y83"Gf5Hp QD>YypvXa"L%;μSJj=tf8ȺɏD|dӚ9#k9j bP@;@!K[̋M9 ce[4v` 9d=n_:rNgnO^w0w22:-qe1qq몑؁xQMl(GDb0`vSS ;_ɱSȲ3Ҳb0"&*|/ = ˬw:).j=&tH/[p`'n6Yو;Kd6 @&%c5Ns=["Z^lmM/7wԿA;{ JtgLTXݛ;(Y,}o1UWPDih1ܩgP[jk= ^n!kҽL풬ҍg }P|#DžY \eea7& E+YPHc *Y+GcȈMɚD .G  S2u/ZxWlDN*ż%[q}ﴵ KZ؁@Ώ}zr%q=$6EPcGZ5/%5: ޞpQWi)s% ?A]4 \ݟeWN Iq@"529{%2g6_X%E7TOI_lꇊ:>7)˪POKj O O܃z6qU1kFifS3`N$FK~IE:=*MO;#( v Jy>[s$vq. PRӠ[!k9w:t^R;ljkf/-|Zކ`5odh,+"O^%3,8Fώ!-=t)IK CHmGTiao%8^+b m91RSėr8 :)ASLh-H5얅ȍͯ lE+xMs--.]b}IMuUD[r˧AupH4cC_w]j vƜ`M\71D,BlwLЫ#vcCJ5“!Vs3=!؁5lޞ%ah뷡p+3&։Jٕ`iG$mF>rwgA1kE_^ɭQ7gŰL$xPɺ|L1:fgAjdꅡI]r O;uJ,@7?jn򍳥-Le tR}ZzVL;hDH?I ,7QG-&14A}?4E[6'0▊ȀFOhTy!xq5RrDyQ,:E:4c.5azN]:mۡ5<:e%l M"j/s\6t|4tr/6Tb1R" :X>> %1g+;3x+GA!jؗ?7aשDD) xɨB䩴" 'gzbm 0GFÙoM 9- HQϨ {nƵE!vvGk9'lpF%2snZ O5\ޚ#3 iCI) D T`jr٩߿d?lŖRst_b=G J ўq&@=- |U "{0MC,[8IQݿUp$%^VZKfPCg,7=@=%p4bFb+L'Q["4tI_C5Яy9hnLLEpom^~[]bJ {IiұQ[bU)mm-Y2`q3fs-*K;M1O5yhAjùsV$;@;MP9=|r'02QUuۍxprJb(!E<`%.O@K잂84LgP\iw_p:Tu_mu XQʋ.uR}F7rGVΰ5\J:}3?u/2/^Td#iUDn%E##|'[g$ \bY -u'JIqV3ꫩ4Rv-,(&Wn$ÇNL T^Nnkhڪ{T`S;VuGZ[F%ao?OC=s8%׺6 V)W8+a$)1RKκǐ1- tmӎ0`A0¬z.tqU/NX:]P%GaW0NoSCP;|K|cpO6vu43qgIeRW2G@aK%h>DE}9ѧ`MFⓔy9d4i1Fg 뤡;i itSj342N{*.1^Vy+={z^rŸ.p|LbQ^ VdR\W n_Dd%Mƻ6ݩC̏ mR&f##uT6G ɹt# B30r<ZrW@Gx=KJ?;"ck6tXϺ7_2֮cYuk\=R'r`Wc|v1gmz;m'g75#pUÇbФMfUhqB۪x0l>L!f<H]PW1Pݨvx= 3QF f6~x5NBkLJiۙl(7q8˳zϸ7\%ltԗ4if`E~?H!jm`YrOHSe ԫ }tZҞRKmqEO%98I1'N@ugY[YEt 8^/Wygm%@ 

    gV0[J29JƋ 'uNO^7[ؖ>:itw#\;? _NNHƜ+Bj{1>?1R?I.z(@ "վUH-Wgo -Im7np `"CQl]FS+OY;_zBx$mB=Gy`o2,?sEqz54|/6BêHӐ jwz: QH LKVQ=0Z 6LiA U9=PEÕXXz,\WÁXtͳe's0sMf\2VCh+%"3u`%nN:ѕKKom:x$g6ʚ) A y`]ȟ*fDu]5}.aMϬ,nhWTBE}&ؓ|E)p >ُ7C9<ͬ^f7YJt,}&N|o9W--rS'0h0pSX:BkqĄ3!GS:YDjMڄh; ^:FsQܳDm!kf*M CSD{IK2K}{`P yj![z_X+nb5=[`J!=)Tgu)ޓ\/@Ҭܨg:3g9NZid o ^%Ta2I׿2^K=e9 O90rm߾GbpKآiqbeW'&_5S| ٓlKٍRp oew)tKVЮ֝F` [/Ȯ#"0>ar}n>[lw JŹ2*+ztu7B=|CN582[|Z}[qeg gF:ؽ {L!欆HЍy)&_~2IS 笷4J%̥kvG!!F "H`fƮN^|j!P5GH+I8W7Q &ϼڤ~7׋7JPsGj¤<W`*ڨ?{ `߸9B,Jr i2y<1A/"h, _U4rMk0|oXx4uut>s993='+,1M9ձɼ c\ԃ*Ŷ\'Lxәo*M9aOYz(cFkC:YPzy6WQz6]Mӫr=Ǎ/%j#2_' &wZ!Đy`SjVOLVaO@JOpڣj.6Zbe1$=H<׳rL0(ơ<)Z?A9䆫ڽM2҃;a:/ou{wX<7&6]vڰێLLa/Oϒٔu ,갔\m]0x2Hd萛!pު/uxڻj(= I+1DX HKI%;SmG<J? WD֎d+wDۧXozs)r8Dj!g/U'vo)ٯ6Td;0ޒԿ4v9㉬8De| JK$?)֧$hF f.juCZO7fW۴yƧ5&neU5z+W3lo.- ombU}|gGU ;0|̵Bm*N%wR4V2# upTꀱlgORcʖ&KWnMh"p8Tᳮ#*4 ~G =W $Yc|}=5󟏡.Hhj`h2Ke6hiX.pd_64ὺVATaM[L .K[vT^CWoGRI(lQ6|'[?lKn IKf(U,iv/VcO5_ᴊVZ}({RTs89;vAnG߸/KJ lYf'룚@5|.xtv3iRLrv "J~`pC8&tso0/w@! JCQ~[|(gI-xRi_VML|&RW8TAW %9Ѯ?6pz_kkvR46pk .%2tP/ߛ<*Udx cCiQ텊pl`q:߃eןُs9; \P`LL{kB;f)ys=}Èd'f: kp9T &ڮ-n㿬 PDN3$G)' +*XZٵYd)?8K@bÌ 9@n,S&rS3-8TMOd ;zeui ~Xm H+|%~d;Yjb'^N=_}{QwmCKM_1sYFJf1R n#췥\ɚֳ8/ˇj#>~bJ!TbT?frRGFN4%X(ml7*`PI98Yv8 ڒ+{]" Z^cuwDtϰt^EL}#jS:$G|;xr}#}6PI1p겴Õ_dvciM M;X ^ˈcE\my0KX;JFm'o-F< }ϠJ*+)bHRÇYE?Uwʢ B޺%@N+T6KZYhi!"]Es&f"&'NYlé3|DpLȭ0."n]iV'OZ8{[|{|F,"= ^g:lޗҦ`]7܃cW\hdN.3JNtEw`EؑgR eשkPIcm֪Fy HK=TN, y4YV d¨cawj礖czW2+XOKvgntm>iO 7aEkuBB3/?s!-+.P)N("VzHV?M qELGRI<*/N$cu#]-"^rT040')͏AyJ_ZvxšfA3 ~ADϿ<–nLD(^q%$`vL0MoogBP9l طN+UVhջq2} ``jZB},"Qs8%HVUhR |%(_=~ҲRH$ #_f:QQC^54~,1H49W5MLÄA[nLDsHRȄo$ <0MIqk!U#I'!)CV:-Ӄ- b]557zE7vf R-[+0;\O>utE$6ہL&ZtMc/(݆14('ـ_ Tۥim KO[/Fe^RWi}liՊGVg ֘ʧ=$/PObЇfdhgyuut$:/ D@#*KXWsm mz z_QjR("\^{= ㋉KCδ),%$z=oK~摸Gz#oLQ#qOI,x:^U,P@!Tэs1 l7ĝC߉&o8:5 }ǟJGϧ ݦRRĕDqE+kZj/s֎]Mj-ㄉ b]<\LR "I*Z.: '9 |i|ԑ<Z\s.IXb, ̙f.{&u`M"),#(% 3<喕3$V+KҔ{ΝHP]aAuh##!Ml ]jHVP-c}ώI D|G$wKǤ~l|G-ģO\hfЖnX-qL'l &|oZXAKu:W\XQ>֌͓WϜX7rw B> 03,#)vL"#j#d]E&RX"R _GC4FQGiȃ\~o%٢'X2[;6:'::h|8m4. Y"k ?$Vja+. ZoW2_ e 1y')'0VЯc)'8溻N*aHD!$-x6J AAuNl`?vƤ9[bu0 s9;Et 1"z"u&0ץ7v`H.wQNnSW܊D7"џI榜bHYQsܶ+JBf.,L` [(ۤ4~`hcޏ7AoC^$Ǫ$Krٱu3.͂`iUWLA|'k\C X¥s7~裊'p\pOLļ\Nql>e$-hnʢdLXbRҗ=F^AJX1H|bX hCwiHaX ڤ˗Ni3\R`:08ls 2'0,G1)Z,^{ُa Q=jE&xz+_{$S+=^myZQ4) ͆@lbF~q+RoS$r AuU~I^Px=͵6 <mf=*iGTcAi G]OS{1 6iB+~Dނ T%9"^E@: Y{RyKS5a푝h(~"'e" 8y C8B]:%} $rsbINȉ$5_M+D}j\WGJlac**J*=}H:o&wc'&̍lףHq+G, (puGID)WDc^ !1aFh%HYEWa(6sD `R_'3Ӻ!kASMM^?T+QK;fFcQ#K}T %Xxgl JkJۼ/@(4d )5f*VM-oYџ#4 dSaͭS4+3FwGF;c04}{o3ʶ]^3|TH+[~Pb*q* <%S`2476n{|d|8o)9C-9v}TY0ny)A%%372kRpDeQu>Z(RIW2eo U,mZkvF#[߷rzM=!}-V>n&<]qT0F:J=jLK2x`<3rd6;~ܝ8Y Bb0"YP)%4[4uGʊ'N&vK^# P}\H@Ҟq{q\}];i߽FDMYZ8>.I6{#"<4!?RRe;d7|աU./I2oKZ`H4;wLdJm)i*ڟoZi@nwpwNdHn=t(l5-i#ÿߧ jX` "L{sC&] cr>r/{ U)bLi~E 5uh[-sLb`U zS !@4MyNe`oDSMAaQH~-_609NW/t-Tn͍_v X xKc.6+70"?ST%A +x".aeK7gBEeM3b죍=z'*IféPIZf7HboK\Sm/,_ I1E/x4FgYR$LNSR]@ =^ҴEWˤ'vQA:>tߌ.=*T%=d*lhRb W+Sz愪\HC<ۚA72*^[ʪtMBMq&ϝv&eC^de>ղfxX*DwaS&&xXe7j) D±ϴ] Ql.E:5%OO@Ԙ|Ͳ]WḦ́0=GpmJ2_*d7#59@z,DKRQdW4碩Yt&v-N2~db39z9NR" pXd좳o~0G/HZMYQ/h#_``E k w}Śr򁨰\' ̝bORc hP%_6w6hjYXl( m, g[|V3:"CZU<ڬm7ZӤtV p|hȊ-7H=A*N;EG4x1&吙zH+"9B|ggN @R3%;-2Ku4UU$? mKmK֩wMM/jRMfֆk33={%C-\lnJ%a*4fAƄg ?^0z9X0FFmo A~\ ; y+e>Z6D|GG@?.i>+u{m(4Qxµ$BdlSg=wLݷf$@{"6sh,/RͳuQ H$Tbi`d ͣQ93{$FBAnaU"A΄ W}OwU ϩ,:xnt_ i KͲ2}sv"~)˹LC' $O5v38݁f GVO^Sh5zp`:(\M+HrjzEubjGػ9}sƄgUb1 ͰG~>y9 !k 558wX VU {;Z_۫vȔ+.qvgKFK5o F/EčK;H`3 h~c-dI`yVýhfOWٹ=uk?̐-ϕ?$HIf܎[5d9V?ԀUv%##W9\A+`QY`ߞ'ǒhN!B+馁 9.dJ3(bes]NoK@.-\}B M6#:.FKE,x?kueq3(giכ_SWJt2o>$>R%TKZlےVD߅B X5.VZ sת9ImTi{< fzc3֙U|wӟruTdթ\ԁkܻk/^[>9~h13,nr=TfhZѠlB%401k9c %bI4o*O\3sz 9` $&cAFE@7NaZqO4ZQV) oy5TeDZY8c[U4vP+42|Vh̸iøgUY'UZLVoϜOdV pro*\2c=Tfڏe%2KØݜ]_@'TmdJF)jL2Rx#C'%RSfn 4 '?9Y&B*2_įJp- Iuٌy%/q$HҭÍװ<~e[ iMuHqgS@aKb%řJ.Y?S"* w*)i5yYl yd3ABXxPK.qePW)zS#`I ПuAV;}V1;X/4ؐͷsyח88 D*lFҼs)+_@FZkL(Iy7GK'֭UTB3Yv @!W縤zGڕmRz۬`\]N! 1Y%R(h3FU#YvJY~yl Յ4>Z'P\L8 -z?mWFqS6x$9%[̤ιvD +ATT5bϙCW¥)n l]! !QU}eZRW6ƏlHOfYJ:61rd򛋳o3۠vXE? (W7^TN^ڛ {_WW,3G:9 ~ 2,PڈNDW(&;e:!M)4m_} GlPO5;"/;kIE>lC^l5<҂qsX0jׇtsi,{uԀ&vb3 "؄UZti!U"fSe쁅IE,`.[•Eb8oRO6t%oػr=,5XK|TP~=Tv_S}IVEڭ¾7YjZnV#q0]tw!CO/MCM9o ⯼q W#9N\?Ep=u-@:-%Mz0? Сi@R4[,Y_^pǺzecp\ns^er<MG& @ Dk[+Ǹr{u+aMuVJdOZjӐW:jgro/N,.tQW tsjpSߙX2ZEb;vqA}{'^ԕΕzdQan|qK5EOY݇mDy(ydU5 yh_H3Z? `o/pAz(9f'ޑ"oF*^<:OozȒBlA>$ Om|s+Ozyx _JC >G ʾ"ʡ_G07FUʋOJiK0rG&/`!S@}g}3e)XLk@pVýV;8~[7k)r87B* W6;H#,yيȦV@GdI+?,7%v&iv,F mN1ݶI&~9|D :vuuv7+ZH(H bP{v֕1ʹ9}LjuL_kG|j2aXI:uwRU0oc˳GZ_\:"2RS{b'v@tD~O=|Kԓ@t9Ӫ%;uoʀ$($|=)`Kp}L_jfj<˹ʜ~&`ĐySA܂4jn4|Kz/0ؿT&;lf(bH 1fIlk3>ǒbk;t׾ׄ6+Va HGz0y)SxȞh0c-x3;~-JQ4w7yc 'ĤǞQP7P<wػ;Ѻ^ exOˤZ&JTwB~*¯I*2u=Lkc i^R!@]F8pNm{j|RF'p^LwZn7$ƥK3r`h(w[L|6'Vdt Ү<x tLPq ͳΰ ,[E)W%gKT݇va1VUXc>Ʋ |p8 iCu]s|jpI=`~X;WC 7I_+d[kATAh|iB\Bf.XFPg8G;ZhDAssκDFnDW6YB`tKHLU,W m'l©D/HG@$ؓnSF [OEoֻGdx :/ 㥹6ۚL()j=S^y0[\,6UvKGwstc9w+>$H\YR6P3s$>iKwt_ZO^Ũj QCǯs΋8 5i $~999lK&b#2 xT?J}@|mRS]t"dsa˝RHdU[{b#FL$]#'溾e29tM<!>e^}t##p@kr)piTD j7Y%O '@i~&nlCZ( g.W@x$|leT>.9Y)V 3傞R{G +U]>>ǺXp5厐#鷾\[oǢiNCX/l:bWIBgWΓkiʞ"zL`^C  QߤnfQ.)'H{Ws^6X=|NH$il(=f G]G+ئ%B=n?\r{,萝j_d8{;!q#rZQ& }DmVj^6* Yś&l"-T$3{#v{d$,q$$`"JyhDƞkrb޸a6,|xC-@B@׫ 7wa%+U>,VIBLa:s '/ >2I7n9@a/-5g:]Ɯ'MHA 7Ny!nd/$Jd;~1>.6BE1h.'tC XЂlz j]3aZwZb{4{[52E'SXa9:Ȟ(Jeg~9Y$x+Z9*MlwE,s(aN:^L5pvxDF+s*:xBSD+Cye6BG/L'̌1yr{{)n757ڍR˅cSϵ|6xom|yI᫨@4#x!5+e%na˕$3l. V<^; v|YP~ʮv9>@tVfxi :PԹOقZ_iw؋o$#Fz\[.3}"vdD^lxm(>&#gTl3=}h+4??&f6HxwU*xr4RZP! Y9o`XQ^5^4ane Yc=r^G=sͧ|6=vj?[Flv͇zdԛ˛ ] ׮D› &5%@ l>^יb6hEb6D0Ӌ"cA8ɰ93'g;HUpG{a/ڻL-IʹGSk!j nBQ@%W cPЙ2wQ9䗮ptagޗO Je` wS3lڤ[c_L2ujWklrf8⯷D۞qa~8Jb͚<RTkA;ʊ`)t00QGbWRCOm{=^B]5Ǫp6=>#pb3kwOÉ1zȉ OqH N?wF-LɅCjy̟ޮI[eE}Rnj9'@.i0E_i4 ՎeFX:k*Gihhc"֛B @&7|!+\Tf?L*b[''\=m<6Ͼ\cdch #]3Sv AEW:qk3ŵ~hKxâWXIk m\#T@+HQc] gA9Urr v3Qd $=C;ډʺWL=5kf)`J2K*IʅGs =;"02[S=gs)7 =caJ{ >\t&۟0[P$~hO6R3 F@W:@cBRq]e:?rp\ኗuL{DV+Myv)Z)jz Uo.R-B/b>XرXVOoܡqOAձnԫ : zF mh/֒H6Ԧ9Ʊ"+;X1?Kfs]jxeB }Z:2my6C[͟Axr{vu&KoG X#=4{J\`i^Qc|VAԢo8=DZ 1Cm1Li3P!븗 Drқ^cR}r΢yˢTlהjxlc*ȑaaj:ЉĚfrtL 2F>Vt$: ibv,g\y+9Pk6:syjnN{}'s1xcQ\ZHPK\pAc75KSс;la ^ȸUC!26Syf 'w;Av <n>k^ p4<"f씉NYڽ+?dg(henV12*~x#UY^:^U:LPT1j^hî9hT5 M[L;& :# EOJ2'vr0WmW"fLK)E߮l`]Ҳ*Zs_iFvR2I1|hĵyBsDO[u;MuNFfLW"sVI 0Ulzx+[3.E2w󜮇iosȮɕJnW8bh'9ݐ5}-YVul7[%/roeCpsĢ b8;q_є| ̅GRYPBs~(W@Maun'uk5 ݦ}ӑSIɊΔ]jg\ȑW(u_iy4޾ h1p[%[?^G&`9jYԽv<²~gvz2/=FyYxgwcJ}ՍKh~ceZyLM/,}n;@7Ew|E3snÙ)Xӡe KFߍZΓ7FƮ)qtzH 8l'N37R>7'On!s6aQ{7# HEP*}O\Qnl jW|/t.9)AOS̈́=\wJ%?CZ8%:6kt9*623/ \t}t"u`y]Xl5˼(*Aދ  `$R U(+W]؊KHgU_g9HRTwAw %T%F30|Rc|y҉67Pʩ [br(tϿcK'H  /K$L!@ڦ⣔= _ͷqZ7 h_Q?vF\~D,9ǂY=|\a@jc/?0$(4I$3s('a0f~@EUB o _\K֫Ҳ!ك3qqȥjR>!,Fxc= }6w/<*q4W3+4 ښ\Z43Ov~nҭSIS=5jCVǽTA2hR\ qW vftKzӑz-xw&u.zθν挕dC!q-hs0FԻaA2c:#){ժU;y[Iҙh! hu}&W ߉BLN|=`1/UV}APs?bIq[&C{@ufZ$7(7nCjLE>DHH#5/:F޾41(kEXգ@$nk=,ϒ"]<tXv-m6c+yT Y>uvP`t13xu6yToFy,a~a LZBO=ߞDX<%&rA8fN{:>]d3nIH&-XT׮8U Ӫ6g5ms TNF>yOGferZCLV7,ݓw0҈+ġ -/yC⯫Ģ =GPY0!Ub}}>?/Q 6Q(Gf$"-|0{mP,K+Zw0'yob踟r`޹F/ޥL${@CŧR jиq9Vpt}{fg $kFE H9' .G9u13'v%-=ns1{~ww؂wO?߄K%A6hѺ@ʔ0K'a9vr9S=cfƸ"̧Y 5~z4UkcݸHnrh@0`9Nyѓd}f-J d@r~{6igԤPWjGN ז.;\VS}z+/Ro= ε-O? d*176*"[w5K[4t*˲j Ռ al_VcCl=vV; 4f#4"_TUkE]C|v@ΞA O1pfvD KF"l?8؍{_ޚM6ϴ@X?pIQsZ֏+< XLy SPXG^ QDqOc_ƶz &8^:|ˍmr)KB3JdA@"ގP7K{(z,V78e2 "F8>[I6F1i!p`v\%gFk؝dUHj; }oE +dmBm؃>@R`*(Mn~%Ou;5Z߇)s[Mt_K`k|8k"B_*Z+\;Ri^IQЊl֩Gp&fJf̏:#f fݫ뺑TKDր=" w[< q"e _ 4ꕀ-&qM6ID..2]a.$\JK(_aqW3Xz#xJ> |G >c :qzl?fm{1#/@vMƕ4hn.3Za ,T$b1yOkr[!막3J`,?PrZW~s#z>AGIB6wjq\B4\/ Z຺PzhcӛCZ_ʿ?l,~JN;2#Ik+_:(Ә?%zwP3b*k P[Z{'),ڹ.Ot噀2dnƺ%3 v߃d^d٢f]ck{צpPu0G|}u@̩Ǵn<6ggRGPD>Zpc-rӰ&_>p&;Oe"6Mդ'=ѱU]B-{p[m=m,¦%G `pQ&[m`?Gw#K 8yǶ3yAœM?vENGm6rg^ yѿu`~6bK1 Pǚ)9CgDo#1rn8ݷ-36'Y?o=?><0rqp-OQoЋKrY$<<'xp@{f4sEGhk /R%ggqkw0ClT")f¡~Qo2kdӤS8ÒHȈOy}E(HPM"SYМ4+;2 we'( wUP &r5wکI$)h:#띮lGgGZ9_ywR> Q7Eh1qdzY;=ok䍢|O'+`e7pFSP>5hݷ0XXş%xcE1|>'| 7lTnfVF^%qiP-v~),âɎ qyօUakl(XBADq*#bvoJ31Ķk=>aT\dGP'ٱO3k#-^O$APED#kRJu;<+?}2Nzxr#B3tOǞ}nI%:|Wn"O ۽.eyNP,{: _Y,I<>D࢛dE=se|G€ʍDb]5,{~jKܟ>ػe?{r$;bU&hAqsJM&vAQQx%ҏsI">^LmjD,?$ T Ѻ;7s&hJ!JzD.q̋C&. kWy#@A],<;zArRGdr@=, (Ԡ]I*Nݟ#^6OEӂJvN?{R {I8KאRKgO]^*;s=' wpy-u?lcz]Flzcq y:.لV*8? WEzEn^wnF_2(2/l_г&:HiܐxAJyFS}z9; :|5Hkԛ% l3ҳQWȟN꿋-LHp 87 rZ^[~`h[֑;Q{`ZeQ׋OTZ^'/&5ˏekG"OxqС=޽|@9홆\ebقz':;o[BRou%r(BQ܎?%[l{U hgbtxdSZ1U1͟G8bzk"Χb`{-_tn܂!kKYSapG%>/[-p w0۫1P 0ͫk/'9빢ӿwUjLRBnw,4;mnyyD &\~p̈́Ϯ9zA]j.w YHOrс(c|gћz *X1 _&AFLTpe#YxׯCFtuGYX?el=>mUJU2mB9lOG/H2\j~gyI mOOoȢC8G[f-w/iM M_^޵{p)TChgok Vo!#g1^xl67욟fB6qx]D,x+T0! j{s#1IlJ&#VIw'Qϗ pqnMk?wؠC\_=SBq-H7L2!_[-&c`eчFhKw*Jkr$nnr@kD͉mdfDP!7kͻrMeIX?vy%/vy_9[U3gq ZA(L۞V%~7BvJ[*ny "{I >XDձ79ӸTBnN钌Ҷ88ҎP'. ;9#Df<"'cTxOɩ5 ]:e)8Ҵ ?g6ɮNeCg1>l$ P;-}; ɽETIUg%o A-+%r0EIYK5v^#gh/gsMu4C8Pd̔`}G 9"M t " PۏǢ-'p1-0zRp`A{h)XSȁkDpɛ,kaFQ1FKs Bȁp?'Fξ.Y#Fp{:a9."{N5?%c'n;0 ,_\be{cGT-\緙fYjQ͖@ 'IAvF RD)*,;'` "DžP@.[(t0=:5fk&0(>|OXN-1]goiba&>@#Ӱ"y+}ǁUP-~ROPKA<6*0k H3@r~wF(JCNn[NO"9eJ@Z"pțb )t@xkXwT?M&hV!9a)#}\)*Eh>rt(E6% faUMF=6MH2-;wK]cf֚R7%*ώ5Ky8;vR r~<FBNv|ҸQR\ѱ~] 񝮶2aZ43"W Ani)y{&m7i@gB3!-,I NFo>ruwv%5?<%wۥ5W\? ,vIkVpXE|Z[`(skl,/d֤:P`I@𬾻!)-"i"tW)W[pwH\zs5*tnlT 7U@I.خ8`9Vz)TE`%)Ĕ~;_լ= ȵ9bB, Gф(J]tjFRNiTgֈ\:=ܓWU:h;HV9Gqӹ6O2/ߓi 2WoeiO҂iBV:UA|DSU &dNǴ/#Ձ1@z"L>v|T:ӱ8r^J*x᭵+Ǻ/̟E2X ck1X#zS@> 3ԋaQ NWnU\ʜcQ7)%Ѷ1%(ba8 }vUh ;֊Yor)_W 1! a I8rDEАYySXV0|Yaaq렰r;ݞ 7m`;~Af̉F$ܥOOI͢ 5,0E}/sg3J=Cb}2Ԧg:y]HQ>Oj10 g&p Q_GaX}VW}gF iZ4+%I1g S[\>Q%݇2w塿]s&U&@hl ;ᑢZ:8TǁUT[Şq :i/szIw/D%- Q׉>% j 9 hFSAs` qe>ESdl Ckb0I;A)B.nz|ɭ_\e.؛$4;n.8Y.]J!KU{1qBiBBj^sYSfh䝂O`/0*( 쭍2/ŵӐ &17kϒe/NPR\x0ΥPtb5A ?8[EƪP=?vO ryu ()(ފP_Zq*hד݊`07ō GĈ^g%&x Q1goj/&=.'IhKXV;T,YHj˻7R`z`-g) =TvMX۹8$j0~x׻?|%>,_rb`mnci^nb7XWҧԠsPn  -cר5-:qWnۓyPTWb-*5ƪ YR!cʋ$5D2o5cWXn?cPKxo_1Q^'4O_z >P2%ᄚj 1*ѱ뷢ѣ"AiL|r{@L[2G |3UmL41ˈw P7zhP*eB4l Ty/(5CG"?[w5(ٰ< mҠj²6)fr6 )*p"Edr9A!=Xu3[r|횺&D@8c rhI8@ĩ^p 9@T/cx$vi!et9Hؾ=n^"orN˪@^1mƚk%az7Z=yF»o]pY aPђLM \ x Һ4i2&th1o9:wm{9ۆk,łhU u2'X|hp9w 6kxbbIl@*=.sZb>+҉Kn2~jW%1~uD0!𴗱iV^fuJ</GuB-7uOMgȤX ILvg-"L$]›|2&p+`wXŝz]2hDj,vOq-HHaW@hfv^MaY<7eLG :Ơ@2\9UydVv՘0N rh\j9H@*#M^zTe[SwEB:j54㠋C.8ByhfpW_, KZ~Y!)Mc+}" KKhpz;!?وAIʚ6$&W?cnҗ}BVwi֦n̝bbw: '7#/4$^@ @`R$iPUvJ{.QO7!g?C f6 ϕS9 [V8EH #>?H(Z:<(m/?r_?˸ ၱl|G;wf­ cޠ.{?'FiƑO, y[LtdF; '|+1jOF?دUBױ+gŵ+-KԞ]_<?n.!]$k`EȔZvِ:B)el}kCLtHkڡ)G6Aы=M\lm&>gYxų]k(  i ^so<rQqz FR秐fs 225,kUj╊D5道| )GNwtL/qko 2*y+]DǠ q6O np1_޹H 0 F5|sFm 2&?|C[&8ej bۚ$XfJkZfMuaj4d޷(JWj/ R 2{nKh%AHh䵥Csȅi ޺YçCA`V qsw/njapSې| s2) ))G7CEh2y1rIz 4v ; P0f߃!b=i4"| Ku RM?旟ѪE^>)!tg?}'vZqo_u9aV8eso/5Y5 ԬG MʽUG&٘է A;blo6ӎu?[ʺ1hD搃YFo+US!``Zر5ㅬCg8*VR@6mAvZ'7:|_ =H rQЂtcvLd+$@U׿F^\(@ [ ӎ{a;o(42Uվ#Q߉D܁t\`:Rލ`y ؃gx56fLސҡynJ%=*T:I2L i.Y|}~_-i"1[AЎBnV\PMjiC#a|x\Cm$72$UEd?}[@AQVzD%k9%x͔{M $tB((uLO j*}tƵpY6vipYîG&Z):_tYa@K-|4s zq:^?IQ'b$o1t5|e%U/kw4u6~/ BntKhb`-;^,Rm0h\>Yl?L׀''Y!yHln./yάy?t$MF5w+`'[5}*p 1P1Rs*9H46El8ӗy8Q!`.5ic8 e#.r'?a+3@А;Z qx9.Jq0KTò.4L~;u+ -e9/xԶpj% ±N32h:d 's Wx|7H[rg\%4Ͻ06#I54QmŽLH+x<\OZ:5Wa_σù\pc܏]6p g"b3Un^e7a NicAՔT-!Ĺ PAM y+/Ta`xŨ0Yz|Zmnjݞ<ЭbyDy |O[MY| eج U믗),L' ax5XSg9iNx'XrMZtzظ!:gs3e_\]ȩ995U ӧ*];vޜKt=-;ddƒ\*~kW?-dozqVZ_A9 j8h_%s ɧX&nVY#)M,]b܃HK//z⯓L8P~}D4\\f!&J~\&cGn:!PW!7NFҼq;Mu )~Ǒc @$d ) ^w ep'L}Tn9ln.nM }QMUlEƄM)o0##Tp_Zwn8v=Vb0bGPF|׾?*8e1!?X Ҩ%V,zĭ] Ҳ)v5bTͱ t)[vjם+Aa޵FR`Ɵ1Uz5)/$n<}EX) ~xžq[3-I|?>yAbLRx*@n<>ZzFh4{oG3=M0-k ~P|8wV7#+N FjELxPף1D]Rgv tl;-?"oY;ʘWR. &F%IC/y4 $峱!ya!xm'CWj<0d=Ě{ T!qm]j J*fN@du~YSA%ex7E&;DHR'f}: i]5沄2WCfߎfDG"б@ 1{lv0l .6{ {[ڑN4 %# Ŭ@ܩ4!1 Zbw1nwȢȒ× H\'B D=\[D/Ǖ+E51Y܇VFnr(%VSU:`3iBTb` *Ee8X K6/yԉf eZއ@GQm?7c ˫fk@|] #[!T,fr)B.GY%lA*OଗlUj[8%ÀܯotWsQ"k^tx?5k˦3ѾMi\( t\^;Io 02%XRZZ-E"ga*Z8A?l1nrFu)6 eXu]-T*g'@AR:^11ʂIPʠ#Dq ?lB@>:o63g| =WyĘ}xg>l䄑-ATȂCvNޚ@[@\„O׆8z%ќY[s^%?;6a1~y](E./񼣤#_wMbZg14 KxEp:=)do*YXweuqPRxA+BBBUqsҔ zy"||DcFCϕx*M W~5.0{$m|3Nw 2+ſ+L9$W+%ݻ#u?F^ֿAQ~đv-uPZ~uOZB9؂}3gޒ .Gmn|@d}{t W%"yߡ<jxi;KznKޮ|9\~w9t.Va mspy:R2*lԳkx"{?]Ljg0q!FAp]]ZU.ŋZSV#5K= rG͓7PorBK_:6ח"41 1Ҏ*_!V>sAYowo>g]_÷[d,, iЖn&ʍn#q$^ a4+{;-?1>UY8R+bAțmܠu]X\FjȔ*@_ AY VsnE56}A6 \0ϬHTQ"}Y9Ê}>  1-&L'J|'siʂjmPH.%kc(bQVF;`e.\V~G=3@O98cىz!RO pabU231/Pg VX06Vy(;q%gI T6RE=?Ok- )cwEUAgBL+;CS k?s|⪦v\{gegeBdDh/}tieh|q] ݯ#*Äp7n~j7G \s,GSMq"P?J`׿oa~U"u Ǣ1~.S]:˼Y? "Et#خ)O. ISeeěseDdg ZE#--:#?wI$,EhѲ_y54 U-ZB9d@ AipԿ סXdy H">n0}M?0qp$5}>QϦ멧RܠצRqlI~b] /=rnxstiM`&HzQVF\)nHY]¾:U\Sxm%p~e~{ư|uy˵ަ#;|h0`Bj`3TNEژk!rPЫ1k7#851Vt8hc_NHvTͰWI7bQf:0"TiE?Nf]%ib+hRYH3U,/G]7F˂hvk=YBQ/P%RH% |Z \ۙ"VV?Ysf새usa@ }CO?VAbq͢aķMռ٭ىW\oE>o,d>G4Ijt-fbij[ 0pەW-c] A-;M3Wl PYAoCl0j\+iS A|93^飅\+U]d.Npw2RiB|)?s!ej3Z<`z0UbLHE & >) Խi}2z)m?%}[PK y>^cg=u=b@:l3*ܧ쿬Z9M!ض#q5rY| 6 ʩ}kӜN7Ɣ3ÎR"]ĸ#r@ja!)߁i&(Pg?|^K}W'?2S8`f'iDy37\.3&A):7TӵH؃ײ0TV~pbh Yo<-6\?ibGZRh=%q&Z}VmN+fpE BQO0uJٝNA5o,>jTӢx i_K]C%Npչ+P;en)T-%jmx4~alj";WS 0(2I;n֢ ;q-†&$_|NL.q\HNpc1-ƀ# nRÞm=O>µY!g} h<r=W1W ;f5֌ъ;o`\E-`7_~ټ;.a4ܥ !6,mtNa)p&N{dҊAQP7Cl.SR-b KZPePUN'r˰Pߥ8Mƻg{2zUfcf‘wY`lK.w\B.'XQ}\<4>l|8L=bE[s):"6Xҗɚ|FsJPb9SW-sF)jFzjSqϽٍB_]Dx|)H&X ;eڣ{J^ M2C[um(QFd *[vtRsA;J)D30"86֖ߵJ?;YvY,(hƍKRq3V rw/v3SRUp.u\ٍ IBYeT2̣OFG A u넢 BR`G1z5Ҵ'?a<= u `K [壘Y݆xvۅ\] U [}+l/^U&Q#(C˸%} bƒxjc9t.ztm_i#2*ٞ:m2MY.Z虨x|+Q8;gEm?Ԣ+4,s(Yi(,i.>qە47XyVc6OU#";]hqvuwt T eRӠ)kA<ϝi8&lɅ'K m%&=x؜ 6ެHEMd҄HPPmvVϴ.j3%~"G0\Zd0bූ6WaՈvнdSЋKđ( $#Jffc9j 4r7(|B7B鐚`HkY!:USbz cOߐz2Tn<|h&.9i7y7Cԓ3%.b{X7A/drEO]-UC.kƿc@Y~"𠡑5RLUc~!%zL]9YdAÉ^Ϗg<5V=jq .\f[#{btu 8nuBt)-6Us<nX7ʋZo DYE8~~Cϑ9>DȾx8|.h0I+eQUץŕo!:H!qd'٤"^4 3%)%:mBPbgͫ{2ք֗/uݴDC?,/}-P{)uAsOBՅ s4e[\vԄp0SVGcy*%wB_&{k"I9ͨZ+vF$Mz`zXP \l8a!vU\`?D(9V $tf"z;rgD8eR-B7+.6Qn %ȱ !sH.nAZTp e;(/g*#eTւ\KG 豗D }C>Mob}(_ O/]ՍKJ4. Lf2[J}(f\ ~Qf $7NLPLf@^W%pzzB]Deo"),B׷#vT2Cg|z^N Q,ϳ>?䉮u U,J8✃&YQ''Ƶ{7j[b{ @9\[|ᠴN (Ѳ+ S䔈Qش}YWo9c^i.GoTä~H^G+Ct4s BU%$c.:fzv}Ğx8Ğ7l]AHOA&f*0_&lyq1UXE2Xv̅ 73nS ץ7Rn﮼OԚJRxR/sf ީCb>SFLj)]nj7TگPc[] <1Tі r#eoV4eH5{< x3yo%lKv _WSQ&[9#%v!\炫dd3j^ :%vLtFr.vlI^%VY{{1DtldDǦC5c?u'Ka˕]9RT"7!@e׏[AHтF(%d m^H2msqL20C3`7[rd)Ça;jL0&B&ܦ%B57a'axh 3f]brhscr}aIN?JS^Fx2`h1W-q!Ilg&sF#:x %~]UA4pyfkޡLRАބj?uHyաc0b$ Ae9HIّc ޶"=LI#Djg7 o&apnԨݞA9kNO^CۭL.y?ϧd*{4瞠=1!q1(}|}B9',:ـ8Ug:;3d"%?mZoRҫf*b܁ϴgxZArnBjK.,̸&fSa74~}!xU\ex&:$„!`[, EޘD{zֿ 6yG?g]h_pJ6J+s%F!"5ݺa8Sf;bZ1.57eKl$%?Gj V+otN䲵$EB-\y+/;7yi0,7t^`7U`P+)Av[3 )d4 ?e8ySt&);/OEg Eؿoԓ8T vRYPVsDZDǠh:YWF9U:Oi$:So'J옘0AߛbJ"ZxJ8N%M;7 ʿs;z= DXSLk^&n|ܿ vznε%WMӍ+!aʕVsPKuJ! bp p_hp5|<5EK_o%6(]C2}ìu&%T$چؔ%4vA^Z=..9`@5>^E(gPt^˶ VN>:x"|Ͱ㥛,AwJE@PKWÇt-Um[Hsr[%V >6E5 +qza$Ez-@eRޮ* $g+^^O,p !7_@'Bt:I$ֺm]\\Gy=Ibxb}x8&THk윝Xk$a_`<6&aٻY]of3bB%RvWPrri =_Sra;k)&/cRVlYH$UxUQǯ֭ቿ:?QW&s/4ym)apZ;*PCTVG>]1~b(VA;@r0KOYGWű'd$!@(ľ/6tQ>!*=W\r^igE7~CE*%F -^Hi; (#jH3wn^?+nLt|vf%# &mRH~-4pWi}rʧz)kv=W 5);$!]9cFL.2f}0l^yE GݘS$zͳ{P) 6DZ 0]!gmO8ڢzofg%EP^$DX/їԂ8mL q=DA4$2j7_s餶yߪ4f52J Q%+[1&1:0x(  ɗ66eƴj"&j[#}&Jڈ'M7H}J-Q[ 3/` Kܗa ?Yhaz|=h8ZȱumDeI_v9Jas0흹 ZcG>ףU5}/HC~oڇOxم[jר+ f=/y38X^<_;t*۶7 Hb~%i7.e!Q鳄%L%Uk+i@gHbQܳ[`jIv8IlJ>" q|t5SE3VS"Kþ`g~L39WԢ|m)vL\{E^:0H8Ǧ) +rP^ַ@~0l2tRy݋͚vb :ٵL^`+mm恅w9)H&oo^!y.tRH?=a D8"dܝUC=t[&!er'dHտ/mr Ir]g/&..],5\֭`71 &=CW*7 ǁsR7b~āJy(!av4`kCG}w? l67FbI81XES QXh%@#H>6wCY|5ߟ~B".C13+ஞQa֥NwRhz݋Q0} qx6=i5nt?Ddd>\VZ8Xa NJx0N]CjWGdWô˂0z%z軙%x|O@)+$F, N,RFT5oRD[k:?^' HWR & wțHf2&\IyҌr//WCfόɞHZ~5tfzч׀wkaan횶hIxrԆvk[p7 158?V uxQat@ԡۥM\LU1%$m{pcLiA7R`0I) *$qσI|qmg :-©u^'nH?ԞM7,pjXCYZ!vZ2sIӥgŹ 4Ȇ]HAʹJ˨`f>dmQCQ)⢤4ݩ8gxdΛD.>f^u+{Ud}d bG[ΐ^b/)B~lKƷy3I^Oz:k5MI!L%%VϩA߀mz٩r &ɌʻZ =fK EHY.Eǽa~ QrIm+^=U%[ScXѫ 0l)_ %Y#!?Ď,fd7˧J ],i} d6u= ܄Zބ |l!gC9%u죚c_"pw u ?:'h밫ZBj eKɌyvyrIuO-M3܊r xLՄP g]Q&$QQ|S5P//,5rˬ"ڍ oˑ4r3 a4u"pW FA߻RijU^\a?84tf Pm,k^?fYߒn:0D z<Ըy=u֌-Ů;- WB+!|y_K.Q*6X=w# lQT} _ܪCwȓmT\,3>Wϙ`,AQ&W.W.p @ͯdxox^VZOڒ C?4#*Ӄ*&Ί5/o1,#U%z4"EΒp~kKѢ3սa>ʍӭ3Qj8$=5x~xx^kb|C怈q6B|;+/ ƫ;FwFS,A8q*PA*mVJufꡃo@/יw>4[av':|z,_"ѬH%+?L%b˶?NF%lj ZךԘA]&áqγB\L2Gn+ĒMϛ)SU>'wO>G^?c WݝxNJTY76 xmxA2.nh6e_t,jH-@ cϕ@%'0dlH`Ϻg$?/x4چEhkA6Fm %?AlBS[Lvn{[A)*;efSv{/nfV4ⅺu,g9_#+"be Dt<[%'olF ALє* "+6}. 1p*K _&[R@wUoϰc*>{s*<%y` 0ƹ lЅTtҞmhs\B@9Ϙ1l{uazE7`FHL+qx C_%Q`֓* сȅˈtz5{_#bt1)?Tdu!%tJf^E#IQ08n rO7/~?$No 6nTX{M#J.)+,E)Uew 0=K(v~|8q{Eg6 E4E*^(VJrNFLArNB,whGT-$FrGӪ#V2TYz^Xaf`H#B[ƠdT١C;=1 :#r垔 ԓ`Wb,_eI9  Vk- H{49ؒ?&BJaN=3<&ÿTdTr- V#Zͨ^cvqTHYnď}6*XN&l Ⓕx LJ3T0tR*%{Lt@ycW@?6GL?|k߹RIobmQ5Y {e}3OAyj\%W&@h´Eo=UYhOBۭVQ]&Ƹ*[G]0F+,]xO:;~W-NE.Ps踲>``rhJC we9l+)z|KEtTyM·VTDEp7)^5{F[ yόR/LW8Ve>T'bXH0G|m+ X4^C>Zm%P$ 1 +|1*EZ!خ"]0n#D>*ܠa+M[CiKJOG!ʱ7mo XMLt(vI@w U3/YMJDL?pet<<ܪHR}.Ƶz|ܧ)ɗۣw4O)yukvKtN, l:EU ʹ(<+̆_d&4] *|mJv)rmmv)(cEơ(n7GMvؖA-W˓cZ}_ l Fe[fքrJΤ>ւZ> 3f9GxH(Z[j֊:wW<[pUI *nd*P 2=kWZ#tOK\>bVmt'߉4)NWXȷX.-XL>{;eq ~YsLRhHGP[RKS5oy8, )cvx$<FghaGrpr> 1'QФT㟭+/8P$ I8t~>UY JgEN u@)qZW/rɼ++ *,60 =P6W 3T*YNj\8:0'Ʉ>Z=|X0[dpo0U9a  %rYP?~w;F7(u?B&5S2#> ?௣̔%PI=^gڠOZ"}M|/90RE [. "6gQ_M>ڕqKw},Yrr)i-ƔXベRe_r+LAI)EvnL9p`x&Y6)12-8H\Gl^i=|RkދfqT4(^6[EC3=V16ǻfit8I Tm=)Q? $?*P R u œ}g!*ךVIqd4Ars]z-~wr BS`\QUdJ8HYDVj`L^[ώP/d ϊ\؊3/^B#lf#j[ {<ǟ BSR!X$^4VIE/3W[8;P.)ǽsr^Ԇ$J(6vX/Qj~*/8z"H:Te5}hfi/27M$JH~_.\&32&uL~Kw eDS~c} gk3rv'k8靟kM1go10YhZBlHvcyj"ccx~Dv9T4"W^C:9a1|  E,|w|8&QرVEYX)O_1遽VY׮$'N묱lj:.2er,YfxTܚwHpU w>/]@ĆAn&H:In١އ'7 8q67-Zz)>"016!d8v6P>T(X7cPiWL3EqZKrpr38%G'ԇ> _7 8M tçxc9YV(Rk0_z C:\Wp@Pb`ɢVU3vͰKT6HqgN`~UB.e%JVZk P u\פ~ .p_1(nDjsMsa,}Zݬ)SQ 8kmglJàKMiʇi+ޜRπP{]SSZ_vkL&%ՕUT>/yMi2'ɻ=2aj^ [0{ r'J@$Z13i$Hz, G$d ݩ'C+y)][-UB}>L }[hLo H'_hk 2p Ylh# ցR$]&VȴG8^,Y-"!x%8]q `[$W>p [!MaZ6fXQ\nʙ&ušs ;if ӺZŢyOZջ}aA}]?]Ti}'sTO[ wr]Jf+JpI WɔSƧPz/ȭFF8OR}a:Aqx_X3<=57:>yN7AfڳK`(Up+ UVGلG8( A6ykV H1Ny'خw0NCCTNꍟQ38 4"]F԰ Y!V$hMDcsJ ^A/;^O@ IQ=X 1l?|zTg3qkRp}&#>8R#$rvmPxhzMeYuYYQ+xI8VlcڏcfՐUD] K\w=kB."AO0p $6 nx0*ɵ[9(xenKqԓ8uV?4f)l{񧌂` s@HaƻqV\oz7gXv;Ae.3ǐ/ h_i/AR}/q7!]S$sB,SW+E] tvuuGmu蹟ؿjt6ogÙkuG|UOʈ4Zj lƣz8j~3FƷXssE}: 6eZl7 Hj` #J}@}{olZCtV1 nmtY>LDa&'ׅNMW>|8*Z_@%ӊ&` <2C\,|3 7_C OJ[IP6jbda4LJXQ*jҖM@W458 I 7(=,&$Cw0:M?.伫W r P*WɄiaavN 痸O֋j}vj"Cmje&{Ѹ5o!HO %WGe%c_-d|aAmDp,L+@>wUgdQJͪ3g3UiBHL98@dvQmN-d*ȈEP)'B-{%-:pe{ṡ=t\($P i4#DXG{fBm%4^=Ğ,oH|%/r$Ky>|بt5/n;i[ȋ&=zw%,O-Cf(>r*NҪ6oS<(*go_()ݧ ܮ-kΞ?}L,'m"TvW 5"eQ._eo0Aptt%,kzѯ"WI*:arR7^>T34O`Dk4O*Aw!&T$UJüKA%>?VȱJVU ]Z5s9OkXvl4GD!a7t xfd+졮b&u+!-$ewPgmnN9&T:^#jx=d}QDϜ|7uPgHDϭЌ0Q ޞ`9i'Z:$G>yW ǖ1}Ns.眉ߢZ'_miu\cmlx٨_.s]HPWF9W9R3PAszjBkhG1Ǵl4e@"qx7Fb3*:KN"Stp[H}R>2[@WϿ*` G֝RU=[?1mp B4Bea[ɥv'@5etf’`6G$p`^"qY]39)xĽN/Hcδ4 J5}Q`&GXXZ&L ki!EAg@jGO\̦YV~<5 Β-1jG/L@YǕL'6nr= [ΰ/]bsoPkuʰUvKO?~i, wq ] m~&I^ fZ|:t4Rҗg,d_@m7N! vLD":`ԸM.Trb#ڰqkz!54]d. 6Y0T![y*b(5?Iku{mF+2j6&1]t]I[FvtOFz C9_2[SMN&JUlN1 *s"ER5ߖwֈDYم#+/ 9zOWMܘ|\bꇚ9eG$ >I]NO$M_#Jv3FyO-A+t'w|zcaX mUFtp*`P- 2n>jnuU%n$]#* E7!j}hhT88[sӍҔxx;SI|2ǐ){hbXf"")0fQ,W|Y_*u1\؋[ΛNRIҽ`ݻ4JS}H \ܜUvHG8O/4?`ȗ'IJG;_5ow_CLo8r[Y_ "$D4c[@l.#9/Z0*:=-DW$0oΓnTșijau\z>tmQXɨ#IoAxRRNfx?m7ą$G3i˕D{ĝƁW>T?GhY:3o덏'SKXKgK_VhΈc,x3)bmٙ+1r 4Pb^[aNFjAsUi K5fA~rrXdJ~9>gt&1yԭSj"]Ld!3qA]hj 9/H ] {B[c+AUy N$K v$a*gpI-j>Gٗ~}4'x5pSy(dM;1E˻|! ֜}oD եϋΦ!&mi%]tB^}trgvߓ?DQ M'TVrBDH5 7MS/@ e'mN5Y. 2>0FIu^VfZ|D 9IK_ю{ל0Wv>fs-?('O=6qػya(MKbd&|/w2Ks ^Þ|ldyK<ɲC_ԪL$V䋀x'/&q8S7Pv|;wMaޠx*AH<˾Wo%^#2((t *6VBjk.}xT/pIئ@SG|ZQKh"O4ALs0ma]59 ?Ch atDo7a=}BD,N="c" 00O)Ĺ>7YD9G|ԧLw_G45'!5ڮF\pB# S 6b2^'[6<6+G"ϴm6_$:${ d}scJH@ƹHq |c4WB5&PCT-p!O)E9f|iHSbٖh#i@C5'r3xSsx a] [ƑI/F(?ZO)֓|v\wٔͰ+pp}r dN7&9$xVTE#η@ \_p x'/g$խxm(Jbx5dO.pFT&6Z7O<3驨zz@0S(c:ga̭9uD+jV{@_lo`= 4%hy5ʉҶe;t7s)ԸDHBi\1LO '|(t(FuЁq(Ӽt)M> Ec t`1M(*:t[_44DC ܀o[Vyy2)ueC=MHZ%Dmp#I6gn $5C~E j"+sLq?,*% 3NuӤ+^!`#/`,;o(s쎰2D Qyo~$pm1f%H'I=?JzO uXIocŞ sGKȩCT ^w, 59,}xڥT Cv]wsbT6.5LV]Υe=J;;VKK~xgRE|YpFtψ1ZN- 6 E4w)^X#^жٵH<=zXjR~aNc̵]DlٲPs?%;J}A#íFh^# Tu#fH;PlFQb;;Ph#;Q/3kLd9JljBvmHc"l$"h_"X]3bD-SG~6U0 W1i(I0ph*@@C m:T Vth5$f'wADWgHt*<'\ռ ":c2FP@ "չ`;)F ,sy^YiãBڐ(p!Qv4MM,hOc|# GFap]Tb$h(A vyVIuXd8+NN+hlf9K$.G4nxaiQ\ZLᛸ=^$խ&dv:7 q*bok~3ZW۟W,񆃐Qd 2**QkY6Uc+̅1<5ѧ[4UI9$awо`qӑPE.v^:iz`18>tO;**>}0`?b{(i+;e\@`W$C;Gڭ`zv GR nD~Lo 1LE- }[nBxۃY{՝Ӽ@1W9I}VE>em^H ֔BAަb,繄zC9GNanJ~ U˼F*'lfi“3\T^ܔM @x5oU|q*5 &ci}|Z+œYSr9ud1湫u,}ow\!rMEnE$s6l}>6y*Ep /0KzC!SV8Ђ#OEGTu3H99f8G\PJﵶz#I `heq*GTMvnz&BV%zγ3?Y`?ȱ &87oҀs(2oƺ]/m_=irk9y~v'\SW.4I6ܺLDdZΈ,BJ)J{/= OyxAvLS9U%^.ۥ9°/.i/.ٟo@ skBeHA|O.!{}6&iGBm-Z0WS:76.&q$})971nYB>( vu-ɵL"GN?A-"P@,J|L#kc=Pd88}T (JhzR] 474G:̬J-쑈::*G&MH(S.pOsyCw 9¯dg¤`%!k?& .B\8dg0K xǤHo2\v-X"lJQxkK I7%YhYjkMS/W EDRć\ I'վw!2 _y"l $5v4 P>Ыb*u0Aidw8,Ѩ?M:4{bRt"M`p{yl*Se;قYug25# g;59.cf;ޣzQKԓpQ4?^Fa^:TZ ɉ1fdwj2yҩPaٓ.tק+nvP~N(Qr^Qmr.-8 <zl4Ǎ/ށFXT^M\F7. sG'N,/n.ِk$BԒPEz{S8~}17*.az$^FM }97ٜW?3`˄$_*CK ~J"|\%؝X_R AUMTr`>xX"^KpŜ9KXl /?,=R&A9~ hg-2k:}|os91Re(.څm -@BdF>gwjodYJyjBȷ`v.K06g8"WgbinJۏd߅]ߑ 5]Lͮ'|@ ,L=Po%@Vԑ.zvK3] \EQT*286Qg I\,RD<^Rq8\:}Z*{Ll~3ϱbun4(4̅,$ ad_- j phdwNoVm.Os|KCΞvmmoF!@g-0=`Zݻw?xֈjbEil|F$ondFpM_~2+~t7{^ap7nY/5t )n'%iK+)'5==Ξ<>pG#}u&5 Leʱ XBi(C'KFhXN;`.Лz&ƁRB<0I<@oMiU9p?`7P$O+|M09 UZ:!\@ڷnW:Y$!|S`_9I#SoOV8x83JzhԗH{a"杈ͷS&H1Ћ^}z+L e3{>sP& XAdr}`wu;Eg  p31/6.Ъ} Pf1hLRqn2!"z)gY{]g D'TN+AdG\ [Lػ% 񏐨 ^#lg!Ñ+MlArKv*&tcL!s 1$ؕ.Zw'3Sqz"*&n+X׼c͊X%!EM,Ds?v.ħzns9 V)sxbDȵ[mhNE@ -3e#ڠV߅ctvuS7Du;nVB{syE,( ƀyIv0-g1ELtg*W +]d8'#Ɗ1^C]꞊dF'PV/g^E4*j?z_Į?=DMآU[ V*/eanQQ O3{@Z b j8^%w8Oyʉ{mk U&f6;9*~\,4g59~QZW\<<F0օu&!HxdH($6K:Ш1qsO婩+~_ȲZhw7]`UKZ.- "y O /:.C yΫ1r{w "ۆJv8 H*JСM nV:fޡ{mLѣJW"Hvq>gb W[CnU jah Wt9;KFTi;y Ov^ ,kn:y"<%1h XF];)^ uNϨYA0#ǪZPw_{Td REk?ހob`ZN)̔ %vg;>`-/P'־TBȾ KIs2r"ZT˭Y;ЀЅv $?~v&(毴 8nW#4B|R&&Ԃ 7 $׿15PnI$ FYc0@E$U1e/kcm`A9_eȖ- QW;=G3P D8)*QhL5d.󖯾Y1}p;ȵ14W;ER5T1 v=$&aߓSAQhD(%S9+Z3EdY Վ%|axS׿!$NЗ5? T0ګH 37k8m:(1NЛ^Șk"9]XˏN[ z?'D0!:d_9֚3nqnSMdn~k!#sblmxJk(uL- 싹:ؓNUΓ0q~XaoOi%g2HUZ;]_Vʸg$'PHF7)l$G㗕H{FmblQMDvG^"Δ,a; ^KtpL14CnheI+,K +\J>xphlEg4'nH=E Ij=C `saiN&Sg3x!Qm84:w#25N5] pj}xWR ]Ѩ5nQP+KFԌXiZQNNW+&0rH!Qo}|\Zސ~T^}U&NcW`mQ7- `){@?GnOꪽkYf. KIּeݙtǡ# >1R䍂YQ;d ~ [ ~OXx+.+ͬ,Aqso k uR*qJ FE611ם>@qл.TfJܛq?EVnD?җN#|U*<_=.fQrނ`5(8^=^*ܯt$a#8vclAy{?_3c8^WқJ_{wf wy1SFjҟ'C O,i'|)lT91Oն*>I)Ȟ0QF R=#W(Z]Y9^$qŅ{-?!*+V[UJ/E1l$c.$",pA6';YUT~c^\$J̙./J/wsh6JT9 ~)gqMΜ Y8 ˩R][3i|p oFgH18-I=KM9mȄ6Wu_B'E.՝`)5dT $Ol6q8:厌w3|#zPF4ַ!j4!YVA 'qɒ>Ik[Z)p i0#r_QE<l澚d FTl0x=Rq79jy\JAa">{&WTfO)d$Q0g$_5 (^\ :o&fĮdU^DzpuѰ[t} @Rӂ6{"mrqL U8ÕRRB8N`5= HQD燢eҳ,52bQv2Q&>}&ao-3/d<8:<H ,lȟ/5\hBc'Fy"SALIS_-scU}bXVhK(_b,f=xѡEJr\0:ȱc KL!%TPD|gF Ƅ&+a[nTQ$\he ɧhz-p#S^F<Y}P]73COa!ʄ#7 0L1JG8 p%⩹oY ڈ#T42)w4GSF8+͌/&KF<2dg>ퟔ-C-3@'dMNu>qNGÃ_At )Tϓe5'NZ ${b_}Eˮ rM\g&v>l4p|~K/`MݦdpL<T1{X|Iqjj&oc}eIѩvd8/&IΨ[ivr$ryOQ:iLMdapشm`Zed-r;Y;@mVrOH ݻ?'T"nB!OJSBi^ůXb(6(~$*%[v 4*taE9xJTͩ*O7RWU,rv|bo8;7F>IzZ֩? K.,4λ/5-i$ :c qh%~/M]CK iD>r9.9{We%(Çfw^"+85ѽ2JFr*Q{ŔIsMrS(H2v%DtiT{q ykV}߆lA8ATǃ:8k U!џL,q x|;T8-[7Ξ$u!|7ii1}B_ 6q=..]5BǦvn_8#VE$S^AD 5{CKN D/G%Ee~DEɗ*?tۻ6OX)L2JiB){rl@r{o_׸ / !4׽n籑 Pv0z P6n*p udk^~Z( h.DLpV[')ƳAL_kLDRmU(Ύ'[l4u|»EKQ% Q 7_XLfۓ7 >-KzI,WfVʂe{4韠뷷"|[f> h4A$[_ "s!,^39*WB 2*x/DBX(:Q*{NLϗY2vAP t6(*ESڑўFo;;Pq.HeJj b}gL}jlFݖo\1 Ԗc-RDA <Ⱦ -A7w21 6zCWZ_K˦J#DCO47z[ȥ\3Z*&!=&6 A}s*F%8^`"N vYYW抢h:נî*vS5A?>j="amdFN Iqbt Ljl1 5LWS<۵Gb=ʂ'WwזO'=@j?l~'e7EHrƪ$=Aeqe~/ĪE8tkw)lNXui` ʳLAM'0aL|!B{tf6k} Ww!VabUb~;!v!-UTFCP=J1fįbF3aou rq[{zA@\ +~|Ⱦ{Xf3xz%R,aѦ%Ø;/&X KNvڣߴY\^2?h0dkab~Ѥ>g JHW6Ԓ] yhX.I]8 ]IJ֔()'.٥eY>EV|n#uJ'Sadّ%eZ(K?UZ*#=.j-֚OɏRȷF"C9G㉔{HxmR}PbYf'QV7&/>rSyFX74ʽ|Dk^F4HmLR"Z%NIzːÇ#"j= +H mM((x*|ܐ,>&qV v?Iy&5 '!>\<V M!pk!vw4և1<{UWʹ,svsesoE\x=@f-'[rJʦo.Nb^#؈hzEz_p)|/ DEFp.21_av[޾*$~RSkTB1:l̀( oF~~\P/FFl.&]Ox1' E̿WgFU |]f\PS9a|t$c(~Q , ᩩ`/[+g:ct7y[ziO?ˊh6MBW>D7"I, kZdt全M"q g\:>>p;+ufݱP6ֿA gojƒ#2٬cT͈RsZq⋐[Α>rؚ6!,r;$NE|n(/mHgwll*1!+@rl.[SJ$*<;c VS5˟G?)$͂ #2(n30#-4\ Ǿv 8ǰ+ eN)v@ 45kA(ŠB \VQZl}㑇Y ' ^fX.igiB3Iփv4@Vq'63 WR!>XS3VȫK2P9Rbfw=/H悑jpw,p. 1Mo7{[4 0!=8 _Λl0z_=3Ǘ"}I ͉ޱ"w |a adђ3Qɀ{^=jgRRw.mhzq{s:fנ)gj/8.{D2d:c:Z]e_cFUK^j`Bp Ri9^\1>;YǶ>9{M Ta|CLډ;)>5/R`y7h-HKlK: U7J݀.GO!bU.L>Z|e1cu=(aybaϙ$XtɞNд:#ÅW!2+%/Zv F}0%m&Abԋn1)yWcA @ s{?J dt8yyĸٱ`ts?z9XSqG4ܤޣE|w%*Q`Q:-o WLq{-o0*6 |6u,u/w- Kk|oՔ8|-Vŕ7NwTǞ_z_?X9q"bH)28\YpH}$ "N<֚ 3yݼEz̷h3qc_H_F;/pLΑR_s J823)0W,]9s6K2_,S>[97Rp5TA x*'ivdvN,W\ҥ@f/Kn&;*y~QTˮ;eSC X#y^Wg՗s1V+mLfm( %x"}Rb%1< 5h5RJ{ǽKi_p'/V Q5+jI*#txIyktN͡ D[너A͚f*~[U7zT#r OL <Kx#ؒB@jwXK,">OQiBفK gq ~fc LkI AP /bigCw9mwXN@}=YY4d{!1 |wyș&G=ECYq|:wxh`AzW'dn> *Tsq[@XiE A*U{ 5TBfqU)MGUIN#RGoNſk%>ʮdbЍ C@h^<B&+ *it*'EbWC=N"&:~r_gi75vP&,yt"'q>`/V^ p#:`(tֵ6#&J9tX4]K߆)ng;avݗh-_Օ<4X ךٱuǟEmвMՒtV;f:H)1Z g,Tl2b嬊huMPdq> z_b5 *l|B!j٤e/Qنҗ*ފHہ"`gAMљWEmbr}Q'Shi@_nS&H:/̺W?WCzƀc -r J[U̻><du԰;6ku6G K)^BFviGn%17#.ygd ih=(NTCi‚/tF=M~bb:L02ZDQ6Hr] П1럘!WHb̊+%52vF[C'm!+MKo_;8A-89&mZnuF Sw<]`zsJruJ(%m~ʠqo pk{`K iCJ"%8PZCɪW1Z/Cg޽֌ wY 3|ÛYt"xX5::ﯨg֒8pF8`M:ʵePE "ֵ xĘ%ԫh)Ĵ:}CR b53|+0ش0''?G'tX^-̗,Q}n*'»Rx#kO4S8! ңVYcy,^M&BD50n3p+ <7D@[:_Y:?h\@6j޷N"i\H&J3뢝# ƟR.ZtqKX#Ҁ 9Zn'CSۿZ홌>Gwd[W_9tc3rvJ2jth7!ԊZMN).iu~Z=lf n?j&ŰT0v'{]5 r>֗M9|ZkCtxp4L2[]Y OBbVlБ 7/_C Rɐ\qe2r*[X&V]\rI/8t 207U*-4a)^"}E`}Z<+P7͉{:.'i2,)j6]_$5pKssFG} V FM88Egr[/L^>ղm|qD) Nt;2Cү }wQ: E6úifE<$)}p# qEˆTÁn1\T/lgXBy@@Đʍ5yNo _LPE"_|O0p3ߋ|.$3AԲ뢶hf"Kc H4ER= /Kx8^)Kǰl'r&|e_&RT o eqlNK\yf) σO<<Pn)ɥ9mه2E!ST@`,DxbthnCoJ=*{ ]Y>]i7VD]5ֺ5lAߜ \Um\U\/%`\MW<+'ESI&:=hu7*~9 4ѿЋI(:;/ɟ`^s*Y7MsI~"X>fmOXE ]o<󧤉=kw 8R.t}Ӛh>HPQV؞u(' G׈~ѨUbW4sn!W0AF5B0DYkP5w/5JԤd"XL?3:?> sC֡aDف,fHN,U"L*Cs@gokgo_d4DuBk8]/*Ȝ?yG0=.mx밿u"Bp>\qh˿TUGԐs9̰4p^v(c V2NBwEn{-Ҽ0툠URpڦ2ܪ~ g~Z0ufCN]ug\˵m J' BKNN-:A9@c#4YHXS$.BZQk{Uw؅ 1~u%gy$mKxǤZ/4glxyOzLP҄gm6(9IXJ-zڄgssM]05 R+rR(U>&Kev1VPusS֬>V@Kt`F GKqyS(Tqԭ4oOahgBL+E>'x*LH8uM8ۼAѽ 1q#-{%֒;S}nja, :DQI*eMMJA=]ENi}Wrdyy$Iq~5jw,>~,v)㲬եJIWaDU[Q,Y?JɋS]X8<ۙSlYFWqvD…~BA[']ܩr"DٍbF?ζϽ495 cz@gm€"pV*42g?2v{NKo)S#~eՕFX,ϋJ"A9bΥ>k|Ըy酼)K#`8 HѥC6~1r \4ꇡϘ2؆h4;ut>ϊw+okI[V:-/ĿS,΁ڰ{i9w[X>޶s-QqFh'k8v'rQqp`8o1GHMxϹ|#%мSۼ&.(b`%`n; >Hr\'>12ݬ8>ߦU$l]:\M~BM~>zZ(:lS# ta7U; IӔ5@xM,\Ϫ8ɀ&mK5>6m7zRW~4nsRȘ+K/2|cQ5 '= d(ۚ5`6e + N@>GH`ɟl(V?k*| ޶ 7%{8Ct&@':lʩk*4z|9' ?Ī:ex?tD;cߏK>pVș5ZM&:BjHצC~# ݜ˧gI#PFބ5쇽V9|%[ 0٤~s8tYgp5{XЫX5c8~>A 0̾Ȯw^ꏚr9?䋕Fe-)%kSW"#NK&hAa!z^31Mj.+` i֌3,]WħlJ%̮Nj0R"G[Z&c3{wP!ORkYH MKPW%IZ?RAx|9 'T2ecC+m4 I] /E--2rhGz)."2EZ՘ÔیOaW]){,#vP Wf>_%y'Tԫx6y[Ar<|SF4:Tp#IThbȳmU}I%742|TȇGvJnogvI߆#  ˔r" bc͒so7-0b߂`oWm$ҷgF͕ ~!Yfh8c&:/\{l;9N Ԡ%V|C `bl=p.7s"=L72QǺkÕk47ɡk`W >]pjgD"3ȎYy]{i\ijX?._vucLD݅U(!dfnշAаP*N&~q<(/:XiAӓ:}QҚ%v{7S^慯?b!7+N :[8cu|ȷq`ʹQ=J95LmWr `gOf}9- eA4>q9f*g,Q&aL!h!R7^%Y_\Cm Oi!c/ \$Os߅L-9v|)x9he;4}O nUͷ2O %F=#ԃn_".d|1%/>0m>rh`3ը"(ף76_k 9g X0GJBo!Homb=1A&ʶII2Ă@9H a(7S#i99 7vVqxE[+ 0Ҕ Zs;i~.O<6b#G?Gƚ7x捄;%/qtbZN s ƳUnЬH ( ^ӏ65΍Zƈݠ~΁yu =:;mzϖLՠNG=\\??$7FחrYQiVNK8}Ir/(_?Py'73rY8Q)=}q'ۋ6I„iXx%9k;gob2al,d/w'~Lu=KC@D%K4kN߅7Y 7I8 ,zl͌=)nzL2KŝY + t*8]cd]{M8!k(oxh)xB n['@8%_\nAbhe+!]fӚ܏^0~eLEmT:0m ȼ uـ~fe-\'3˞-'+e'Sf3#_ -L<N`++jA`떗/ISOz~њ{cw7>5]6 (8D>Cm4YriU=a\; tEv*zRZƲ2گR@ NSC]W)G-{Է5cGr^``Zbd/_ {5x2jЈrp$FG kOEXPϗzk*\u=Pmܙc$9KDm))~Kx=6fJ ߓ B>)8&|+X -aU* { ;@J7uȤ1TM )Jybۜ+ޕC&aO=z[T}R@R,Vk0Ъ 7DJډV/:&׾(hhBm#b_f g)BO|u,CB.0LS@EXt-ʽ*ǭ%iN!d̂;9ªMhJ9GMh'xرqaQ:v&7w0; |^ \:@flqG_ qDb_f OI!ay6 )M&#?V@Y̞C˦z3LXXԞh=}F1d>^yʭ]0yAfKXI񒼆)n0|@Zo 8Gyx~xJMׯ/hxHY.aAB'<$l{$q:)%05;CDb"&0X[5W<[ǀn*dR*xE'R}XgH;A**{_lH; e" П+Ǧ%"ONbOX_Idތ؝G@,m3_>Ak)ӈDI+Wަ2泝E&l50Z6{{;Dt?(IF|cQoE~|ITQ8_\E_ ,{Y%Ս}I@ wɋ=zĉ{csSMԘ±|҄FT+tJ g{y/n&W TY)eh(C ~Go;0ݩpB>\ X&@t_^,jWoVVzDŖDV$^w&І7.Ń8XxD'G,ӗ̚Ȧv{X]-ү!7sT'Hr&uZ^LB}خb,H`!AdRd\CmXn e<_[i%5OoZ9|0|=ޠR0_9P A:joQqP>B< @\ZHB !sa&Zēhg;8RF mŏsmn #uR\us>D9xuX2~~pᇧt`/.g78M!>NS*7 - [[u?EcYdcX>7ޜWyM]Y]׸SX uGǐ ZM)0^y^2^O|R! s(kA -j!O nc4d|Edd@FrV4<>ndmCE-?Lbs(?p~KR{~}v}b$ڑ.(U7yn*3tc0UxfߜPB`*ƋC){Aob qtOjT:άC|_4ܤȭtVb`%Q7qe1\稌/SYrSRDsmgŽH{ѠGQT턒cZڤ b\ Bz Wgw`dRul2#1e(lz.rk50Rf( D8O-T직N!:T0N\%MȞBz3eCWԬNm(Æ5p%wQMȴH$W;5*j]o7X} 7}B+#82g`ȒlrOr&BeqL <HsF2t:&Mbgo,4=VΩN19HPIk']ex).`DRPLLL|+^89pj)cʩ򒲟;_Gt<)L(;85 @0&MW=tE{%;RXak[)k%(ga l4 t&|<&ՕBʺM4/q"n3{jrLg(^zj&T$hOܿ&QkFXkKO41q"iE7ݩ9fFDFԆp?|wi+77#U|ƶZ1'?Mh8r A;W7[U^:sgVx;sr6HrHI֮sdFGѐ"\^BM>\|&Vg2 m12@@<#SHɐ]-w07[г@S&3 zxjת:'akc f'K*7hnbC@]U y$*h9+SWOiBqp^dNrȔqdB_Vy$SHy;P2`$;ߋܡ9!|LXw{zm|};1[@#q1΂"!H_W򲨪rbKY +[/u=I*-T9_nFk>w`F]zʂzȡ0eR̔-Șq=^s,#A:䮖 )+w>ϗ;C N~W*.WLi`CFZB).Ew:#ѕP(əQ:cr>Hc[N.e|w'&FMJ5}8}e D(PUˆ).kmAS)Zp(R; 4SlQ?x[1Iij|B !{ [_|?}i"a"nTs O7v6#{!qةbA8-bJq/|d,Mo4FHz?<@\t(!5$rZTɢOJ̱Zyp`*$cqcg K^ 'sZ5WQr& 2w1c ΌsDvCp}0%{,A&RjKGt?2Lm[83ژwSpd1Gݝo'r F+Uq9}*YI`;˿7N`L^azS9`kˑ~e˧?cFGF>,uCV>isF/'/Z2Rf֜h(mu8A85zz"{$nd0ɥ]},9F?RK@_TL.Ja5$Yii|?<&=XR.KpxtyD fy\m  *F}37>.j>[0cLv5eB* 8<AR/b orL2+ yߺCA$bj58I9;0ո_1jt o^׷0Zr5Vc=wk^@/ВÓ,hFF-ZYzoyYT$} Mv ps:Zz^uC.ߍ3iWQW ;5ޘ Ax.!!=?{p}D0ЊevF[GrO/@{0 V҉T{< ><魬ɧ0=:{Rٴa>[5`oplT$3~өjf:j'&HzF jPt@k*vgݐ_e7ӑ׬6e2FAsX."m/l[(Na%|#2=4(Yǝo+Sۑnx,^X`]|Ɇy1 *I%yњ?~]D؉CkzWǽ^.cm2aOaY/7iU׆$~ N#4n Ҹdف+-=qsdtόQsM* M|**t2HJȆ5anY`Ru5"2aw,"Jh;e n ONUV1`ָ T.彋B,9bPÚs^#]jz]`O7T,C 'KþxOR%U'[0>C1#&07ƍa;޼^Rt,!Š[O@Q=&Q'Vݬ}bJꮳq}ЈuvJɅ+ҋXPqHxG)>0*j\Ie2TPKc14AozZ)Ã4;6OzxFT$$+ Vbl#:57C(qkXggԜbXls:{eJKq3>T\^ D7P< RQ4Lz߂ +nLŠ2H_m ewQ֎2cRgMQN@u6;r1@ί7ԅĴ ЍFx `'> ľ]#t((nG+Pdy\|9?1GcŞr̸ytw1} g*\iywE8 !{[vm'y]V1/xAXfP{k2EESG{EqAr?0F;q@!_ŗ M(y{W'MIG=Ufz\UA75uA{fEqW[%4؅Z!ddRۈ\VOM3v0@;ߑ%;}mN>V->༃pUWfe_0!8C]f5M=W  AK@ 188Ufr~b2ٍ;Sžt B}5v_ Hs x$6'b_)~/6&PJOw YYlK e>\OUNVvasL6+qJV.u?3 s*EN"Yb^%^MZj-hw64 p_,c^a6Mn<^Z,l4ex1q\YZr`->~{驥 U03=f/kVa<'#ejG,\8#a>A궅3A˕LcfTF*wikUL\eu1w6`A8OM̻5I(?4޳A8rJ@[IrwGWh\XQ$R@]NJVjsoz63TƸ2h's~Qr*٘Y2*CșI'@NuLͅbHg a^ץKGDC|3Y3$x{G}Qϰ6RYؑlJKGO{y*n;X;\ uik]H.HLk<\45ٖ+(%"8 Q&h)oGh ܃q2LQw{4p'!uK^,OyڝDz'5GQȔqT!W}SӮ?R2J/by;pw "+؋>PdyzkoPk$G1֓DKxsod:3M y#Eda7\:S8U× 1)6FT$VPǬNř:Th+L_])QdDž66X Ttni/p^ƳM#q9Z*Z7*ʧ<+5}\ׇRѯIѓR ^B%({!nhIitH,KP3릦&r߆R1,zkbSC2ݒ$N@D$}, ߈`p{'T*E >0o~B.Td2T18GV#Bcr#G8 s؎O|^C14wʍcHS| hQmӔ~l"t1s/j?/7qyd+C!5z`W%ۼ;L fgi"15吅ľ-O}eIOHs(׼g LdtIMiܤ:Uw*]Cydx 3^=btEB~T!q.y']UUS;S~Zf}`ۤ|}8B~؀3GkJX  htNfDqw=BM^7PnW[Ga;<2ZaH8/b3K뿅^r~PsG=IN-NMr<.0c%!.6Ų)x64:K5 $%aK ӍSJ1X jq1)g N=(ݦ R`0W? !u~td|!3")<@Kb/dC@ՅD,0O.ȟ)ijo3?L%-|+.FNE1Jx{(RKsJuyO 2԰kaDI4iƕ<`elH8'tz)a k7R16V ~ڔ# !4qZQvÔt8Uԭqee똼N ٰKSNƟC Ea=&lQs'MI[,|i"髏<9ÏXI8'iüE\"!5iԅ 4]0 XcGkaa9Q5?Cu;L!=fs[PqE.=G<6N&bfo`7W:&y 3􃁒ԺksZAǍ6,HF-'b%#O!y`GqΟ`-EW<7DJwB D<rی$:Q%8ucmNw1?kxo2_b3a% 8>Dzy+AL/@량Vi:@VgKz?Ru,) a3qMVEKgvy`YMaOC?QYƆvib]%ϴfro4қ#ua8gδF `ܨ!8Q$7o5cJȒ6p}#_@L([_;Rׯi~~o!k1B[6gE9o晈Os-P"{f&8o440#"as0;Ksv\MͼroOY}wytZ2p~C5`E f֫ʵ ^7mb;NuYٸ[7k p_9ΟwvX|M8 3OS j x0燘qڄ6C [teQ,_%~9 N7pKrh!#[6wbOԒ93=# k|`DPQ_-NXDQH+P晭a2NEH'/`ǕO1Jzq#sX!7)2XYWq.(//1ξ-\;0mWatFJXdU5[mke W'`}Pzb fK~ >o +cVI؏ϲTi7{B= t3UglI*x3D0[fvizizGKJ_3goA]K S砥7ˇU:[?Yo-3$z׽[^HTaA"聝`X6Ca*${oM ,⨯0h&X X =_#` 1E ^bo T5BN~?Y3ndDb@L=9gʰέGh@:}jDփq49 0:$d ٺ?\א2?{.?Ju[*n۸~>sYFZ qY`P\~-ֵ ʑ\IhR]Rj1GI`i *ܻ!AtV @iqGq/C'AR8=CohBOi(b .z~+t`nRPSd Uj3lj} P# Jo #zA 6fLt ivb*2MJ9T!y4ˏ&f/31CV,ޓla1]Y֖?hnD'ջB/.E1rH^<΀rdI|_FWw궻)^[7&0=C65_kh߃l=)9ՙG&B?ovƂr}?x,u1r5=dVL٪_ ZkODѴH%-(I7&Ck fϝH_ƬYlzwր ~Mx&G ?6Ϗ 78_+s"TCFPcKRUmVxl?!ȻEy.&l=eu l)؀.ݗfyصjB,VNt6n_eFi !`4|WSOwx2WirˌN Ax+%e o.b?Y w~~as]b0[ڗ%ҙßqއ*ANHC1zN9BBN>McvJd eَ2Wi}Т^=||cT?l쑕돹O{!h 4[J5M)z?3rRSãqv+{ 8&{վb8V?d?O徘/r ^ fz5DISb gDoMfvx# O-R`-$.{63!eхCqW+d%.l·>1K".1FHz5T8%pP E3:qXk A̻J{T=w1UmH,);H *WLZmVG)z>kaz8Q|Fo #x & M 8.0 w1\YRmx̺r$Ճ1 Џ|HPM1>US0g`Z Q'x:%;Pk<0xx$=0H93ESC#M *i@ [zTjC3dɣxzPdzxЀpuhc7YMBꌇ2 4Ҁ֭E6ْC%׼k:!Kn4[jpreБ%E4S*Y HGOewe =M 8N5s kPdM=rp[q|CC4svxO2yţ%ά{<7QZަ ύng x㛛}P~Ҧ]`8!%i.uG)lʱ.Ϗ6uF.dɽ2(\׉on_lWRŘD}h5b;t[^f6!>30Ɂ0cIA▄{*PJ vˊsl=#=)nn8mjXZ-$Joo,hgi 4߅ٯv( ܥ|e]@M Aq@i̷769߶$oa^(|/+oDY3^#Yq -Uh]jUi({G G}\Yʝ/k3>[ލ Kr$dNHx)Fã꼮јX1>*l+;-Y8%&!J1oU7yT{ ;MMAԷǓ`="DG)Ǻy| ^߳]2g(3x3Y OT>]w%SRa\WmYxM*~CnB^Eԏg}}'""D_!ƪRk"SNmpM&siOSXNV-xi<{,.S|KI0NJPښ]GEq, obC2\8w*h>qH3ʏ"ߖwp#aŃB(b^la &rư{pVn|s2uwb O*6tnҘb4 foX:gfiY] ‹*2/.;-Ȧ[+OB&1%m=j$3X4$ MK茤)XN3V݄˲op. n<Y8n@f?ճjIH}ԲnKǟOAs/NKiJJ 01=;pu]Si/G.l \v=9wL`-ųH %-`/8pi"*-\6=^?9z'k{5]Tdo|r6Ӟ~[e,45bÔ9ԘJ3Xܶp(SKsi _mwOG6B_Yl"ϑ7EDR&sA"U-V#yGX<}4 b@PX[A2@b{VFkTKX9ld=賽U\R\s'M| jCцp2rdȲioRdO@YVc2h1xЉ*&#zfO5v+KgKԘ~2dNĿC fu F"QaU$ Q (84;8FDi8`m>#=! `xH)frk>V8v9 ?_JY[֨Sz1!v8 ۾M ㈤%˔ɋs.ڔHgG_Juoαױܰo x/<`qY+}:JΗ xiu2ל+w6MA-)a煔Ey3 "dǃL##{idRZ#/Ð|gV=$|Gt!n3AY~O?̘eR fg?z)t\&ʕUFPyoͤ2Ѽ"kZ]?Vx-ւ*g9Z.ob.-i5^QGe2/uN?vHL&V#SOt) 9lc?E 3LɁ[jR vL|( 5j}E=nq"J0u&!B8ʶ钤^gBC,%ȷ'Ҷ̫5ݍ8*!(e|3;y)E# OϹO2Dg6w摬@(JXm[ p,KG 1gj:;؄f- IV@3>18,':Ce-[t)G{E̦0Ɉ*xk~/؈상r5yhBBOa4 Ei-BI@llcԄS+N=ODkj%"TSϏD{H#TSnxEki{%Ք+aIiM˪ H`>Jc+OJm)POC d ;ܿtm\ y1"U1qzh-V%XNW}|bG;Ḙh9,B ҆(Njcto R02}RE_79%:6 0gY-2 cmYo|Q^־mL˦W{+ @ZugU~҉ܛ;o(v5Vlh{2yMqU^mF-+x"7€bi̟E}sL}jF)l^Ey:Nk攏Y(A?C)v0̴?VA!o]a?ӣ(:h{OM=uT_8]h4I7¹ESrXV kajce#YM>H8*t2x י`hīLeq ss7y0+BҗC#n* h@gyS$}XMUMłZ@QJ͡Hj[X+15`FEV8Ƿ=GMrhQU0n-5K# vڭTt aMR5]ŘW}_~JScE:oC_^2Me Hf,ץcx,aP  j&8Vqx"z6;HCx"5R;@Zoi&Vy4F KSQ"$m̱Y+۫1quu=+0%uZR/}XOo739KokT ]^7cҋa;"*^ dbuhe\1^TB^]+84;UW]E wP^i5G4KeTNdBoN@ZBmf) ~Ӣ;sr*JI62ӛDIr/_ >x.=@PDۻo[ jtwhcȬ(P\5ueX!)GEUF>;ދ)"sU-P^;ЅͲҵΔPCj+ұ6IZ8?/@B{ڧyt} D2݃Mz`ӫ`|t12 ̳ZRm_OZYXts v<-7ED©ɒh*,Rv%82XEtةn+'A rMKmR^I;\H8ZRS%Scl*Q)ku-D%31甗A[,rg`0+d: BV} wWkkoDÙTMfTBՖ T_TrOwrJ*F|k}E6֚97QI/"ybl)J d9#tzV%5Rx:'KCQv!~ԥ6N> {XWۿ ?Tꑉu$,C_H` Xm VwCqiT}D?ny܍Myh!t]+m+dz@pA6@  ROG$e{>v .-}kCP>X2&-Z z[L gH AiIe8H􈛋(Mԫ"YrǢ Xȟ=mܲF89PŊvB]ٍ: ?9F~p?$L{ȑLKTέ=N(hN@vCp,cAJJ [TPy_Ny.+dEn}8{?D!#2t ?u;~+'1enCmJ.7U|h%"Ѕp,AT3 K65Pn6)Ri;~D=v~IG7k5)s`$(x0lhM fy#M Dq6QQ:@3ۏJTY2U_5=G1Q~8/ za #蠄ѴfYFLNVcWrllɎSu+Bjyp9 ha P C?z B$z*6Q Zes(}c  ȻT-(uʉ3Ji IZaBѕ7f\@}G(}N=$$BdǜϿ zSJ8KZH#\F?o`X/; ~~+HLU#{ReW%RͶFAJT))VFxOlk V{#i>^uگ* >^LPB#Uh4dc%׸^, PnY?(s\۲ epIu^oLtˍ;pZN#D쉎پd,P{|T9lү :…ruspac>]tػ~osuޢSW`{1JWK% KDVg/g@tMWK6Fz6Uskըn,aq-D+:y*ҥ뮍PH/v4H$yD5~p=Kmw}ro;Ri#AI!Qayp̐h߫y8׽g_ yoOb6}> ;wNy2P}oW 0I7^苅o~+vNCX9E'Crz ˍ,kJ"}yU*?ð͸{Bm)8R@'<ǭ vv%~qp[ &R<FpC_cDFW-7{$"GQ;B~+ä_d?ڪ@jٮ2MziHRj,5^$E+Z !j ӣtG bK;&V\|aVl |;߁K񰘡BEl}20s$[;[~MB4GhdkrwfY{Adz_ZG2[ ̖kS.jP;̡ZiqArnCAK(5]?jt؊g)&9 Ra0YWt͇[{]p1!~>_*І=-oO/Su|*GQr8㇬[h*.`?g-Z$9p]s3\SC*ZWH]7W3 VL>T@]X KIEL1l}ΐߠsӑIbafD=X~$2"g:%"hPV 5…_Ii5F)9}h7]! {"enZS@/Ldd?clJƖ@e>t~.s"JT$4ْ2f@k[JPR95<%+rPG%xIvKI3rK . bOGr²Nnm^m%c"7]ٶ94~ e1sh@{VgO #eM '=rss_b, 3G#߶R%X֌@_quݕ5_^gd9Q]UOo!7:#m"w}7l!UvJ٥o3lIB0&o S pĸxq=$t BvfXa+ɛ"mT㐰Mڐu5jlFؘՐ})gT:,u y#ںH#ɹ9(/w N~ig}rz6oۏҴ.E=u]Tч4- 18u/ >˵}h701OY̯!=$k;V\TuĠN#D4 /aHqIUTuҊ^ɺ..HԻ9,!ŭPoV\'Xi/e㢫T()7M&YJpj3'']A4qN d N2=6R,+:̟(veAzje݆ul]JfnCYC^ZC8`t/"kE|!H^|r31%@Uh/fyt*PC|-s\353;khƅ1ppiڑ~CQkK!xg'g=z21{gT{Lۑ=Ȇ.v`8pc~uJTIpz3{[3ǣe#x;qD$A8g;_&uGRw uO2"9ڼݎT&[K*S|iұ'X.Qe{qhad2{$e`Կ2Ձu8\S z1:ʂCƒ%Gr }$Kz y,W y0,4W%ˏ;݀LtS9OIr=6GX[\ڄ&wo t1vX'!khY!A!V;hkѸK=kbXd7jĦ>bq?&?O?5_LeXa!T0'سJ!{0?C@pT$t2Vrz@0\kjEh }'~q\,D׻p)D xOs k *䪚Lc3%+daK{cAA9>˱RS:%=tGw|wPz]114 .ݶ&ZʔEŞuNK "Xttʅ\Uv[ x1uV>l ^ͽ%5)/m>AݺIM7@_$j9r9!@*޻'Ald3'2EDڱ E#əWѥubˋ]Ock/${O \ w{ >. <8zI``m)X s'iXm:l pX>j FJՏS6@K86\^]迓g"+/Fj6RJh^QqRa{e6/X ⎸YతJ< ФWoܪ+T0^JFQŘx5ҬzyH <=:f^Y &8["19ZRYCyE=Y,Y32s&庯ǦVOQsn_m=v"DP?R5bp=|2= 1xSrWNbK+ǣ Re8~VgC.hŅKte@T/ovq!ˆT b|9n~߯2yר)&Cbm9|>O>wP*4)U)3ʼnCfpkf\.9S!66NG5y>h/H3|ƶs K_o_S>gppH/(|!:$g <':="V㗐nF8Ts# Jpܗ$'JЅ_cX8j^G) ZPiy.`C"3bzPJv$.'ܗDtvyi!+|J"jMW~rt sgZi5z(0X?V ^D'rjzlbk@V'1 K>syH•_3;pSqַ|IkOʻ,#k_ dx|%NK'`(4s2ڒhAÿΈ!tb؎l{[-UCk-?%+]n4yсѳ_%~Ŕ7ßzѓ޿ZSzWz-/,ROTx}9VN׀w2S^Nbn/thɿU0Jf9Ѻ DgDWi;MyZS 6.#O:C~f-@ZţEuyt A&d*qwQS$7?krڍN%8@<. 8X<K%rv<NG_$2ze;: xU\~xXY:ޗR.ötOr̷ci ->P%rtO4YUQiZ3xF5%`(RRňǹ@6C (ۧ5C"^'= ?ofQPm O*h`a*bogiq[˺L Bm i| 'I:mbYI8*bqp~ae[*`?wST&Ɠv|^\B/<V o ع1PGИGZ29`L4ԚZ?JP\\!`m81ޟD·ZTV^t`'?(x~G@0tO$0On[OI >g_$(%ɇ&ELpX_o+ YzJw=^Tܒcx+dWX*M<J}ժ)u*mpx3S,)lVk=T8C#9i.4Vi*g\^(C㜤A 7/@]+OJ_Hϭ6Ku@'wN[r x wQM+dwK7*Xt@OTo*;kRO|ŧ_]wb9ށv\$-Z֦nk]g T`Kku8H]'ԥf ݋_76!s;7t W&Ş6^p抈Aw)zG}4=BmHnM)^5Yv4E.Mi^PWL?׃ni1Bnjq5Dɢ704MQk K,k$ DWCxA?9.d]oX~Q-!HD5ϳGcCC-a׽[ ?9!&vI%>X֌ӥ>04>]xa0(ת>2:1gk_22azƳ>&)f`rfzjH4$j|^Szoцr!G+dXMpz3DqDF&i8Zyt XsB.ӓ$>I%nF Mj$1N`A'-aԡJ>v5{%yP@+NౌBΉVODd*OTFYvQ6¯bWŇJ?@}t,9Ѽhpr+aI%o73i1+NN$ (. x/B182v S.{&F QFJiY֕h@*:S*iqVD&z@PWEv bJ5}"t(B$K7.ozŽw*.`,I%VuE^:@{4#[_ *5V 1|8lya),&?T,KOy,“Ft GoRdmt Z2_=')kCİ`֐*c5(;ΕmySȣf'Qyl*qulM9ܡ e=CC2nB[дł/T\/ʂf% 5T$q^Rk~`AKdȷ2ɀuwa2񜅟j5/ʽn=ﭴ{O KT@TAsF] t; |#AS~ӠBI7o-8Tk ?}0pwY`_%™mh%Y]&hofܳ%Ϭ)sm{@).Ȃ@!4@ڇ:9ۓ뜷G#?ΐX '~ ]VZ{NL=}'![DݷyL v.BQFTR|7VsP=4oY)L^y?CcpprC+Z qǫŲMj*#klL~(ܪ  }1-ӵjޚjs}rT$xE,*ڙ.VH,WrO\Ae)=?}.3&AK=͌6^4y5o7c1^G"D -vr}'Sf;:5Ã!qbv]|f"k!-?XړtF &$2:x,lPu5z)ukHpwPH!x?zU>o4GFGm^{͠(!a@+ЖW`XJz DjV D]ԸB.)+'Ok;X\YֵexS7H &߳ Vhn_ ˲3 "w_Ĵ0E$t0!oFٽΞGrE_Xl*u;#T;'iʼnzȪdު% `R݆0kN%XÇag9Z1Y鮍_V$I]~?+_wh,!4׼1 |`KZ/vH7eR#-fMgY")z<ô#.r3iL`f &eN0az'`2jTOJ~_<a!)=zM?Δ>'G=S$u3#54&-D_Zcr@2rۿVè\m+xPי_mdY$m_n2SU$ bx4o#P#ozJW6KHOy) 2rm2M'4.c>z: /{sw?Gq._vyWEȨ|| `ơ ,˚g̝;DBWw7iHSW Σ-|qSکLx7e$3/GqR,)7W#3k=THm=&M ZG_j+M'3 eo>DY.h` gOk"'C4^Â('\#֩掠˲ (lM[JxhL8 Y7lE|V0 Jl'eK|dQ푀I}=L/@a @!賈n8}g5:"~w%WanF]QyƔZZX?>hB(TH= #ҪgXac&_Ggv/7d-4 0u.7mS3TY`e ȺDrrP!e<=Z皦G@lFYW$H:yc}J~6$b/!!byp4؉"j%q~\4.21}']T[_ZFv+o BиCK<OZ Ob\̹|W*!\[$#;;7$.Խ^>3_V~2S?ꮩȄEpR)0_:R=`8 ̏N7;d5&p9|LՁ%CEूÊo?b7I@:ܔ0Pb;jMEΚcY8 YOn4vr$L) v4`9V[xhhϵ8ZS:qقɞM ..q hI7 꽐r'ǸFNƚt`)D׆hX6r-k4)(8ϰ8KТ `u56w#C㘼d[ɐA9&D@ԅA]O^ ˆWA_5Q!JC;z`vUm(L[$( 6~N1~B"LnBI"[.i!r"8Oӡ*{3~Eb-hGW2 aŀOAK En{5Րj1{QY*oov| mB=U ]ٞ*ލ1~Uqշ(1!];eeV W]7+aMB9&Hz󲶷e(⫛ND"qțBgI:I]P~rZF&Ҏs>2x%]$PPRZHu(-OW<۠| &Wj+zŢKDzn`qc;׾kn] GGL5CMAw-{3 bV.6zxn;:g?kt|F!N(~*b! ]ߩk"WO4 Wm?ҹ5H rGP6A_*JK`#_!Z`-AEޡnl1ҏGTRm%  |ȯ \}k~s7O%V? qٳK(Vrå-ȉ8]KUJ?f\˜pPn@ }aj ݃W=|⨾qRL&Lŋ8n14M+06KĘ/xޠW.lvvCs/{&0eglQ[371Pd?#srb])?r3~:#?#q42 QҲ8 FD!ڐ(vA~M)4lFg&ʩ=H*q|Se3OQj֧V΍B;<ۗy``.LLxȂ4S[v?%6w:`gZ@DԐ|]GHg yy`)3( )&8f DŽL>ט`C R6"&MgՓ|wk*br5ŷHElcI_DaB)Kǽ0Nj^ñ|p<4-Zu?V|}%] `GPq#DpW1WɁE)/ҩ3* * deKkŻxd /kPK]8*ֲhWKFq ]XxxVddQp&α;+v=mr﹥ {6ʠP S㓎Pc'2m54KI\ߏi-Fz \lP2>6X*%܏>H1S9 /O N.bkYSAݫ1O;Uݘ_lUP PQ_lCQ~i BV>;5E vUeEZYuz7:"M6mNiK޵Չr]M2gchG5Dc:PJ 5 mW5i{6%AX 3UDpTF9A֒bn\f$#*RA`A{ L+%A{"`o_bm0Ζnp*̎Z$HeL'{ܞUR4o7+=yQDNĶP`Fu~M1kMlhi o?gO3)^J puha"$:M]iQ'{o<=#8oCݾREW) aM2p:%9+XϾ;^pc,ê.m]CZ042`=z"tN u+7`]w{@4puܳf1`}2 G. oSY({j I]ۡCqM/ćdN9;w1Ruozkfvk`2iEoix)uD/4,zA(\NjV5 z"noZ35m%& MP%bSnJ.xb0duB,U-0{]ӲGAQR:ӡ_iCCr\(sXcՎ6U|Tft_J"ůwjvk62zTFR,4nouܑ ^ YûܞJ`^V>p@ߩQSgDGm u/KoŘZ[0:WUa>؝ע"yDjfK~8br-Dκ1IzDF';Ci<{ JQ^ d<(d1YbS- <[9%e|]wPӞ{L6}Q<$aa4\(%N݌4aWmOz"ށ̄n(*sc*'%g+ZȺo):zr 7]OS~7E"k̞2)xx'Ve;汗?g m@脭py+ u[OW ܇nvgBېxea@K{g좆_ sч~tq6cȷJ( P(VF {&E:9+FVLC-)Qkv辜6.$0hKa7AeIpBS L8Z ~G;$8(CR0LxjpmuBCp8t¢Q|]+3^enZԢ?!*qu7A'(-FZW ~j~c7.emh7Arӟ`JNDrpt^*8FHD2$tGgISڹEDv7n$Xs-xg8brˎw 5C1!fi ]@Г9ҽakq{{ːr5]U{47ӰDy@J8\\cb9 c0_im!K80d2޽Q̖R$ɗ|Vgnz@Q-׸@2kcV) 6a{ dU"c2{ob%WF*Fk&[j~n[kbeM~Mּ/ |+2 1#/;fW4ҫx 29nA7wz2ha W}=сj`th LvO[4y*թ>I3O^jRf=3Nc:.} v'Sx|x_=݊#t"l !RHh*r3 U7VѠb ֳɿHA{2{NV$?̝-Y>NZE";vH7ZlW z))EQik۹ӆG ڸ8nɁ?W}>"nXq@Z9B1bX{\lmei2.-{?yJvik"#ˣEELWZ6O[? f&}(zWHd1u=)/yKIx9A~AB aVWiMPBﳄ֥'.܍Wfu9 rq&:Jm)uٞ`áQr UtF۪SX U *ݣ!;2b (doK#֭)ݸh 5u>J2gl@<$t|y z#ܧcߴz0H=3]#hIpLPY~ C(8%\E8w45) I ~tfo"R.O kFf^Ӂ* 6CH2WXϧDH9m`Sv/l%+qn[geI0r 2&$ۤai4j KX {bϦ#.HFD9J=Me>?wi g~RWgÔ\d߸Ӓbk ݦao,I љ]~[6(x7 `KzƤ$a:^MKD,|QpK,qF{xٷ4`,[zG9 T #5&^AXLFnֈʹ)$S躃OI2@5߳K:Os4ܺѲL)uCrN)+j$A>FڡYE~(VoJ8m*6q#0  o+WhAC\Bm" 9h|/-iY Yͬ9I:4_T>*v?0ik)_Ԣ0vǡz$٘ ə;QO+[ Ԡ\]? &I)}$`noРGݕ9Ɩ4xv@Gj2OHjyr 2uyF -Z5?DmsWmxz%fqtĻh2됯!&Iw`[Wn;8,,P])F9!r%$zX&ic7xt͉A p9c }=ǍζLO69l1޳)tUG995I0`<3^)n!',d- p'ՙXPMٓag^Hlg | .lC`TaţByJ_BYi@D4 -ۇz7lJB$P| 4"Qǯ4%.S s2_{}4E? 쏚yKh9zWt *1J##Yp3 قE% ,6c1ZKq {' _ ΋iӓt} ,:f[ȈƅYFgj{qu'L@@N%>(umjU_G~4&Vv?c6&9l[~+^{XY=wv}#VFnܰ CK3"(/Ll5pϙ'DÉ~ Uј}`2F6hd<*lR rIe| (A9`u~-|2Q!'-U8iYxYtN&9^.Zq}ήCdnO!n y "zBF:n[ [H:@;͈HMC^e`D?k>Z&*V[o f'Ƿc^ک[)Kh _טatpPتsʿύPMz dnB~&[#-tthAEFm3H[;kޫS9f%AHBrjmݔ:|& `r nWbkTٿX;FBtZ_/[,ʷ Y6Z?u@îMn2WuraHt$OJt)iCNI/֣Ny~\Yt>{ lW~䀒Ps%IؾtTx"Y]i}wȕP kJtDǼX G(]dwO*+[g{YA8Ij,j_E5s{00 +BlE.C^VJF!nul+h[_cw+6.Ê< A7#mڂO̎["}JQe[UStjxX8Ulڅn%Ȇ,S sI91X+fk-I6MP6f~6UهkF.2n}@,cN%ca2ӃqZFЅI a@wS"ٔˇ1Vg>/yit;@ʷ|J G 9\\6q4(瘷cqF@:ICKmEs&lkVq,U~=hh\ܛ er AYkB7"$+Gm*3::׀hhDLhGκ7/؇8 {R5:Ә%y7}_o^s!gŁQy9g7 ֊%Mt9SS6_}Gÿo' S1n.X.e`Ͳ~~hʇ(g~ ;""=)7 'oB 2R!rU"^O;5 Qa3*jUm<'R_FzaSy7)(?mbZiTڷב!M_[ k,0-]0c8`(r-u8&I?xt#{슸I0(Z` |ndSLi1ѡnWgLA߭Bd F * +5t|IX![0sJB ~0|u:r1m3,T/:tGKeQ}&\I ӇeajƼ=#'f!8DE[9>px:s?PUUw6-?3sP8y~u1 Kɓso0"B衎k㞖ē[y7n SO 꺻Ձpˠy]fKwe Ln~a(؜PuLPFbvLՀl3%ūMx~jܘVC.) FDc `fEBX 'r#hDDe/1'dBJE<򚰚5lXk }^++P&b!-\1ܜV{iX~43 k(9?}j+@e_Zbu3Bvdw|r % EM[a4 ) w41[p%E_D&*dBH%Q>80S̤6"CDm4 uݏ{H[K?)Q'U?SW[mi0x0h:硾KhC|w B;E4MTY9.w5ij8u+QZ&eѡ6E&D+1iI9~(sڗeXR:s m)]C{P0M^sbQ3MbwhwϝSWfT -'1wgЧ9'N sN ;waIT5AHTC|;1zlfZK6O Ї0X:*{]EU}X7yɸS ؝Xm3I%ޘ(9D1He!U<}O4N@Գ7VVNo~JOkh$>a.CST+KbTx\tǭRwbx"X\y_'G5Ss*]4k:B8SѠqcXYOcڢҶ$~gx5{1N< a-kmpPxԺrizn/%35~ۉR2J^&$C97B0T0?F/+v%LVд\ugo)oH=qqju(4k3NIf">#od<~$:vqfUFp<@tk^8F b6p[i^ƫK\^|c c%tEVG*6f'qJc^X^o:\K*(x+P\p765Q@G.^I D\{3s?_uv·|8أ y\7׉q]Nj^qjSɄNp,K^1Quf 6 ՙ}_Q٩=yߞ/#Vt+~&Pj ]͹*~17^i"n碴*]u"ײ*tyuk.W89=>79ߙ^v)Tc-A`UZ9vر[g٢j|vnlh4[2) ͗}~XΓ_QzwRtx2vWadɢlGӆȊn4ߜdD)HS֫=.bRm{!wL_,Ӎ>/y&il%X+ȊXmbqR xU\5o 4:[n~1!|Cn˜o\+9Bn^MI#:tm(br NrDK_?/Ξ#QK'o i]?FCy .䦨>z^\p,ߓreϻC&~{ @GFJJV ӻ& ~%QK+ )/<͊hD8H6?vs :j+֕w[aT[0S%ϴDE_5#8zAXCTol$k)̗j7-8o& Dž$+k:źFXi2[#m"eD%zvo;5\];?$Ƙw $cF +F^y.vjb^K q_D?ދ4s@QY'<-j~r:+RBErEO+obPf@ #^~3Q[!aw6ǩBG7y%Ӄ` ( l, #u<KSe,iYǔ 1Us㎏z?e@AwV^8h!`!;踚 34H8 ~QTÛ cfL1 GK0T 8Hf7M7Ժm!5֘ˏG}|zqR%qMSBºOSF/yzihoڑG=S^|i')ClV_rؕ=F ۅz}dߑ?M}&٘1,EapvtTd.&7=Nq 1Vrb:Ǣ-bu;۩~J'}ǰT$GyZ1/g߹.ݨ!@9F1S"kT*Be&13u).pORkw=PtBxvY#%cTBբƬ(o0~i*Z؃2vȧ+wo* mܡ˹;]Ҭx k,<(MUbz4iÁW)'7F0x+ScVg rzaeYy)# 7?ڟTtd8'Ņ$<[~E+[;iErh;l{M6L}`/?(7_-k8L7<)qʒRNۋ!dP^n9!aj[_K$IpKay^릔Qof(b$W(KaGh^?TͯQzEF򹥂UJW&C Zant1t$EK].qtWh*|8t|?N)AM6 3b1YRfMR/41T&cr[oœdJ#\0b-\K }MZtcP&nH[WuX'd0-WYߒ ( Mˬ4޴PsǪ))}s6չWCXLС:B7cs@c0g~ׄ S맖~hHWQ1B 13>G3o֋|iY'q 2b1g}=sw# I Z_@]/bnnfLjsE{m}p<6?fE\v,E kdfft@,,k4JL*sobkfJ !3DIg7Zy=ՕYs`98eۥV1˒By1n W :?&hU?{ӏp~IjI|kITiz2)p׵uAb <:(,ps CD昹'+4Z0mڻA^{axPRyC>'b+FCE#/L/YfoVjmUK_ MN0ڋ)y84#u=2Dܥww2%v.w,#cQ@4? .#0~{L>BáUcуy"_ˑNALmŝ4U,be zyOydITUHzaBcHm9Ęt7\P ӟ=pXDHW 2v ]ޛ)p3B!i[\uREVU2q 6x?bۊC8bl}Ywu$P=FO O{ N~'7LD+߽G˻Pm_)Bng$f+($z3"iq g>P?FhUwZ| J-_FPeSubcܰp_u+q"wӴ?[-Ė|ef 1#]C }Z9\+ >%eϕz´E۶C@[ywc5wDFD#'EM^rޚ//&:nG v̥KHcÉZ.Ԩ:kjKj䖫wb-% ~"cf*! a0^i<$ זg,2 M{ϭ2[-؂ ?E;c)Ose9T{ZnL}xMʟ7h.6WA]i` ©4EgN^Q"dgj'wq4nTT;{1[GnUt::@٠=DŽuy+r&I#vrOrQ &ͽe+cc\Ӱ%e{`p]x= nL,+KLXUuN0O ZgT҂Bnd{yrenq20\VHEqE X QLc4".x_7bjKꅁ}('vHQuET6f55ǕCy[b5>ss#&aUɀ\ɲrrhy|@J#b Nϣt4 H㋔݀WO:J32|ƒ}ms^陱l|Zʓ2f\Z:nۤt,QtAP?&؅yb+lt/k:AL 8iDGɈ#Z Qx!.cUir5x&ee3ټbrl՟[Lt"S9m`p0-.7{>^(Z|+.Ϊoۓ sM[Am"6=ȃIGo8Ԗ*߯q)|jU3DCeD{TB)\V~P[vڵM4nvS~GF)et$hv1N^:+m$sUo13iQ^:fC}D4ӂQ=ɿZjGWK"ny#gEayvV>b(HWMy|P@2~&ۺ%F-vp.D8Ov0 /P#AZIã/&C?{أ+Odg/QmCbjr46l 2 0ejS'ɇq6%yܜFx}=:ި( il dX fs/m[.)g,PmFV jc{;@aDQ :<°ANPs} |yb;0xzp7ՅZ^j&TH,3Oz}Ϩ2OGN30\~l}pLTp7Cu@{h b6_b  R[oСن4-_mvh[v*E _tAoǾ`l_ޣbCH(/7Cʻ !e7A:cxB:r|Im4ꪞW*Kc.j3Sq$ +-[qދmB["77ٯQP^93BMt]{=o\kTOlJUK%ߢ|KV |! C?ue;a*wRfvQc00rġ*ARg&xm0 }`2|ce "PH2oo7T#hn ӽŭ0гWtq4 !+޶šn_*d!h3'Fc"t,چcG*/c22"+Xac*$%P19n#2BkPki*q3۩QE +ߌ6pZ$3z0%%A u&.^f_RN>'B]?9\R,wF?GVwDz ~vYE$uXz^W-3Kd?'<#8wJ։glUOJD&SpLA1:xЂ:WbUld%]m40H+v/uX ͑jx5H˥"yu(\}Zwp1`=F*;) Gƕ}ol_>hnNYS_~D@ Eݙ*<@##ʬ CܑW ZeDVQCm-TuD&N i]ooPl~A五 M-6{/rX I>p6[=չ/!Nz)q~Le چtQb1XQ7\ EWew&N^wlI vQtt׾ZK po횆6>jH~ Ьԣ[<4ҫ[" V7i !KL>q%)ѩbq /[p'DN#a{ڏ @:Gߦ~{%W{ț09 yқ,Izd06 Qli8܌kaT qI2$8!t_?DxeTCS\Gr+sK$ kxq\x` ΋OW| ιnW}s!bg$#)q7[#~aGU:tR)Z3>wrmn^*[M)2* \~Ri/-SGdɈ f(U%MD@npkPr> Z0Ͽ10I'`Ql[ ˒2/;j."Y^7 l#;f`Efl Ev(% !^>1Jn?|%AVHܻmqQ'^?ZXsi=qVM֍J1UXvwabd#|v Y$ Z ^'ۍVB"*nV qw},eZ|5^%2'(4nc5Y>Hȋt1w2魫/evw~E(2&#Z̤IC_94~΍>4oRXtdea_gA2Ԡ1RvϪod m*C\uW49d}Ojеj&8,H]2]bG;\lp]!(޸dj /lXhj*g(&JgQWC}?ZӢPETJK,"HYPT!WjSb~"Q&&S6V$YN*qG (TH~aaVdX6XOQ3%3XDH&X {l~K,#Že* _,q(o6eg@\95*/5qCUm6k'yKm\.*u8z"KYRdV &?$.)]fs!Ю(k.S6KmyeP hwd*hRs *Qٸmr<9y(^C3T|;)''nB35_+)5=P7Sz7A.fDb Š,uw{Cy}^!sD.R=3KJ MuW{'M\Q~neU\ۚIq"o!zAig@ylQ.>jW oΝ5&׼9 GwW[ײ>Ԋ{ ~vqB1Pn.Aqig3,DdmAp6b( - !GtwWy5mesmKHAx0;k̾l`[?d).keeU|{8 J0cUz؃n7NMz[#JFt7v=: 8 xx'H\1, Dlj+$|OcPD.o LX^p;^(/KHV)S-vT7Q?W.}otջyexэkX&K3()p\7aHJ3}#jVs#\L$5LX@MXK6X?)dn"j4(퓄ΌfbYD r&և^[1 ,ovК4 {5_NRT9/m0x_]b(QZov 0 ~ ˟|l3< `܁{~f2B[Fgy '=; :z, zm.CX]ŭ1ʒܨEfkMzX|/mvh&Pdy5ޤPD &0\{N4EHaQ2$iWP_?ji@ܕs JWX+"R/BN zmnd ; ;3fޛnG uL5("^tV\t/Ji%MN:A{\Rߔ_xk\+>Ip4g>滆EѦEh?c75^Jbi gs9G|Dy$u7+N(xE7I]a *g70#nhs^Mp4Rhsʯ|Q",E7'~Yv Cʖ~f b6D3Xz'G\#$Ҫd|L ≸ I( 2dY~NSrxx4x! v.t' mw-[`2?O&Xk0O^zۚ@QW7[ƞ,JNEH8cy!]a~?gJ0$r= iRM3|%.k-Й'J MC] [}K}^Rzr3 ;[pȍ(3aO$ܑXs%Nt /H? Tb,37º=qk60A[S DOVKs*p 3ࡡ G9K{cNpLZYdO|ea)c7B##U {F*FN~31=8l +ۊZ*hcbfpjŜ bXpV ]IhFƪ]Z];]W=o&kh(Ӄ(Egv3GԀ'/S!P]*8Rj O?26hY/߿a:+ oɨCQe cl'd'*n3~-; L"9v&I,y(زbwd0,@ЁG>"u.zӂfkCn>OZR̍;*W.MX6ED(}` Xm-IƌS6IW.IƱ6' PyFO Ba QO / qfnAM55~ |XI2F&4Ą8t@tҏgޛmݩY/ֳWns, ]n@[]Wh xɹ˫P+b;h-4`2}pUR(xKGЄfii HkCω) 29J}=tFW=YhTZE:X׀>4T\Bt,||:T A!Kd5Oٖ[13WZ+VDEM@g-eC,/#*4E2;axMmH}udRGQ۩T+$w:B OECйp}9f{H֠jI05tDa`3PʋK7V_Dnr_AgݧCjoZUAR_ gl=+Q"OBg˗r!Iк &x̝fa LuP+=j.nCS1<o_4󲒖``Ӻ0*aMqRdGhP%!DO₠/SFR9v]O|GC\&_Jds\K=^TzK{{Y_a⪜"[{1:pGxEKģ(HR \Zf$Ϥy!BE|(bw0+o1oE"Tf +K܍l@ZԈ^6ӓ -W}U'fc^6,^^޺:bXEcr~9482.L*NɓGTzgPI<7r5c70&~YA6rf}2EnQu@AAke^tbls,!AN'8,@eW⦙% $5Z4. ׍X7Sry1zPQYPS[4 H=a!C0 ;Su(e YXJ.F+Fknß.͋7iU-鿚gị S.eّ2B.[Jvp6-"@w#';xW==V4uNXLs^`Q=N=zsY`B-iG{ n*Q5#|bze e{TdND,[19Y7f.)#$7I@W~O*wI/f GDECvW3}zFj ?ujW{/[,^$үC\ $)!}Èb]PR^3q nIAoI3.>Lش;T(Hd4ycbZcyzc⾗6FT?x\~wS/oBr֗OsEi*}j4Xͳ,9oHp' ^Mab+9r5\}?m7TcRw3u$7 f7MW7d951#k),˰&03G.N$Ѷd}B"vb"yD3~Us wš(_܉cbʨF6ԅcuWN=Es %|j *m bD:{__GF4߸z}fc7[ `܈^$ qj,5<#n7Pr&q]^ @a늓4CLСqҟ}(s|\%E2/+gi 1I[35uXz`Xh ^!nQ*+toX 7j1ǧK|q~TG+ݴJ/DוsOL|eBEݳ&L%`Ux,?C|CE~ ĄbmXtq(Q.Y 6(ui8>&BTT/{S)*7z V)T]yL3<)ŕ}LJ<ؑ9laZ>/9W=0 { b>ukf1 yf\yԩ@ÁR$#џ1gAq_c;lr>f$˺xgΙ[M*]rA6k*m| \HtQ+@0-jT  56 wHi:R_}Ӗoͣ:zٺ\VL9q{y8O5J2"WE' Cfj¨ Tx}DЭ4"/+oٚB M]%Ug]ù_i$Qzo8&;Dj T,8&q✧+^7QR:y)GC`[Ѡ&%/DSfX)H#UW/I(!J Jt(d*JҊ`$WfN PH}+M2ihNGI 3J31QzyWteI)'ed".TXC$-,Ns"KG0=%}Z5QW%uCc̶0_Jm/-r _LLE P칳 4bG(OB$}kyݸPk>_ld6~Z2FZygX)syxBd+_Ҕ10޹2wWA;J斜-'ooΜck8dƽꯅXK~Q0„x球wuro)w̋=׆X$"2NSj]({+ڂ8&H6$&el"Js\!}bm- e8R]r'*{ q虍@RyCܳk+;gPzyuet]g!U{CD]>zqqWs]fv{9;~gLN߱tÑfX7+DUߩU+VGoRJf@A D etTL3¼>]mvKz!_4 TPFF[*ŠOǴ0"8\òLH$vG6YcYBOw\@ӹ9ΚA.Gtf[NߎM2ѿ^(d )w `R@"q9iYA@)ihy1u|'l$!@Y~)x[=:lgg-!AcoKi33O J2NŞ6;/bCvԡڰ/MW"F5ԱPsWZѨ%axbz8Bܼjhǎٜoq3 䎷?t$POp`N)? `;Dc7kd[y=Y̿ bB#Z=ŌҧE|śHXV)zH훿rrI24Z˫{[2']S(q4bB5%qG돓 ?O0W_I 4dJ->袵IʫM+%7UKi Un犂~ 3prA=zyq鵈1~ z>k qJYI=*S1`Q<! _HnN+1N? ߸aǬCN,Ӳfnd@)^D\X^uc^|Թ>৮NiZRG"cNCoNAZM\^Pϗ5ulz}8.^Wj:3W4F)}|U׏UidMZ`suPi<]@Q3D'_Th=H$xŦLe*NyPvx&B5ЧƊwM§)xuv8]QK$ضqZi vǠ>* mWTXjsv&$ٶchX͹|Wb 4`5ȁٗ4M_сAew?ܿpZ7V6q}djZ+M%J,M-d#AYX]2SlF ^ r/.R+8͙a*9:ɳ}`ȩheX8 u1>CȯLR -iSby=)xXhzO@/z*1~rVW. $/ JN@RUaZ;whAɗlž_yt_^IB{'6MycgcR\89ހZ3D P0{yy/|9lܱ ky[!3H=5V`fe+1ZgEw.2 a+ߜ=CCb9Yc'[lMSZcd5}UuJDH~E0<‹Xnb`2Ciw L8j״"("V|]9d/SHI`H:|u` D^$+b[*W w`qO*5@; ntx: ˯`x, 90]&g%KYj< AN,tw3vu3:% MtʣI?{J,wbnb+Cdw E~_-\Z̦L*x#@"QE;7s)$}#`t7 :gKƕTEEc*fT^7d)q`}G&Ĝg$PUo}˻% wZ0c/ $eÇ^9JwqC 8,kvj!Hk OuFg̱t}倎 =dʱym stR g|hLo V$լ(||VhCUOgKH aOq7/0BbQd~}i0تTv-%z,pފ.w~uUyA[I{㟰zҕK$H!'E=8IP rm-cԒus Xs/ ۠tj&8&6RX00װ}oYې(AF6 yV!l(R< $cWaFH}s }Fsȋt=wX:)68 Kl!QQj]>A_n˟+mX%`-r9Zp 6ʐR_nFJՋ":FU19"9RSZ>&: VW!} BZR܏ذz>gθ~srߌep(mb6bjYŒfPriPb"yns4K8<0H!@7;ӋE]$ؾ^W,G_MDa3EʓW>7r4Ǡe/v-]+h+4kUO(Jf-UXi s" S~ 4N+ h,S'~2Hkc*gMehVT ɏBdy]JJ@}Mx"D[(#p-7p//Qwȵۨ {-e 1>V{N5ݗ [7)@mpd#@>.4jh EM|ՙ[Mq<@?].jB 8"nү,g}|rቶ#(r%P}.o~&Cғcӛtϛd/.9G\rM_ro`p]:rE.V-uL=oK'SFktυ8aD~^{%f[%+@@Bj9FWoOHP|}o)&qI[5()o%. ^`5Xh[V dz+v&+-Ċ*D 2nv߶" ɕyǫ0>JZrqpI衔0Dq0DA)1an:/m#J,s}**(^QuWi[<{HxF©UYARBe0ZG9cX󽆷2'eB!tuG|D ȣ%T<>"pMɃo&rk9 ]!2*l̉3T'/I$`8-㔁ڵ" [hn}Jwi_|{w4<^r%EIWoffP*QRрWɝȯ)Ep]Nꑄ9/hʨIf{&!O_-m5,~_\:@*xÏL< ler5Ot) un-sdv3#߃sQu@\ pQNL2b$ 1h?]LZȌ,%Jc i〉6M%ˑ9GqnG&t: NyЗU@VYI>Ɵ?Ym#U%K\j ]HH-y42hw /plKIm>^Uއ@IPnb.hƈO(IvG`E_&9w;3y+ؙo0z(t?o CH7;ÖsT(ƙ\m id eV5 c)CcH>N3Z^x[L:@](E4ah́D7~ rbڼ=i=B7]%'i>F@+Hl2Opot|Wx@@H %8* +d񙥜u1l0jp`BwQXpe=c8yHD-;v9ɶO⼣4) &Oukrbϊ8)fiVC^ Ns8aBN'';΋˗􃂤4[z pnVC];΃rGioMWT9~g_h&{~V/ j|9N9USu)%tQYGsdoHv9dA V#dVJ3e5X۔(}%4/ ,.}ҤN@ Α )DǵWMBfkG!fP; am_z+0y"p=*JzcaA~ f!%Rb,iQm`$r&}]HAŚfw'r@T4xl׵ӓ`85$w'bQxhy.O,GڠPPE놞\ L#\j1(ʦ>]U08ÆMtG ΃UU;$ z9} X(SWp rfBF HBm)KT֘`띗톔ipP"wB% ۣR<6JtJ k7GdCf$/,3{j)nB(R ) Ҡn$BcG~m. Y;1uPKJ^%<&ھ/nCc()X6۫ /-QTf;эDCffb#ҍY~Άf!'C@W#u3И*Yq՛;gM̓ŲY@;Pʉ{ް#P|jP,+!QhsUV;'c@~uM|S3E>,q% NXYSW  Z0%M-Zt7De;"VhTܪ,b,/\4 )Ob1Ka\ieՕ/x=B}˨½ray`$PdЌA!"~\'I%O<2q\3盧7ݰ2UT۞4}y}+P#]hb&)afeF1FSǍ ./k8¶;#[r2՟8>H۲.To}]<{Wrp{i9D>* 2qRۀ( ^G7Eܩ3c? VVO*ǚawz#ܿ="%clގ?ԎI\aZ!N46Cёai8'Xw|EZJϣÍaNp, w6UOg? 9&Tt=g/<'sF4OD170)0$)V%)pLw\1u]d07+V7L|gMNp NeA/rln.:vߍWB`_ hE!O3E/ILV!QᙣpW`F8Z:Ǥطr*#LC/-3Pg 63a: QqwRxlUFhొLCSᐈ𡕯 Խz6^wUk2FlA kz6rhdtum"h|q9<yNc0 8y::[RW[Lp_tkE7b& ?o3L.:},,$Y@cI4y]P55fS67zH>FY?@`^Ȋi@r ~T)bN4j"1vҳj%HTjZgx $+WJI@K$ELecPNzn痺8'=G?0}r\ !_#րgPwRà/ z=`aGdLy2:4ϛLJ+0l]8M9CcO# JGj(XL` J!Kc9Ps8H>ď*0 Y)Id<ٖd⟶=govgLrYӪN_vCGJ˜->2|TP醝T=DGT`y) !@TaB9F<]pr&u-P@#د;Iw,5;oPsOF g1`Bnp:V.W0\NWr ~O8f Oۭ%,:l[&T,v>o˶Pl]ۋHuÀ qEp>srikQ #خf b &չ @՟%?  $c%ɠi40stulB T6fe'ypz ~&Ж^ AU9F,hZJ`Y=s5jh? kg?p|06@a0q1`D^&5=3:5UMVbvki# #J.oa98TQ![,37!ĥ?a㭻B3ZՌriy0;}\A@ ] V9-ʭtC/ uf{tib{ \.ZϩǨ66)Ì%m" l>ܿd.)ޤSͬވ#*IfAު>O<84l-P‡]FPWcU@ϫhEnGTȚs\(WxOPZc|/`< zsH#9t;rZ?13)6 G:__&# #2mPKe1q({e)}A ձC,Hj)P7۬fӿ e/jHۻeInYԽsz_Rr]4F`99ퟗ{=oPyc &pTsΫŒ/\eCEZXdF|)r;+'y~E0ڦ[O酃Z;U,c];eos|.t;hD*Gf%gwSrLh߼.4\%Y8DWNcdPg̸=2wAAw@b)zHҕrtܐ8&z#&A=;qmrMK#`"!aNSd6AmoCCQ hgJA0YʢW 7mx K1?B]'}kQlt]9(euۻ r|u/M8-8h&J~gQXgʈ&hL:rZu줭[bOTMe>H+ivD;p`s>fރvU8t2p^] eLֽԃxPT&;%{79%`zh"ÚnQC}>Av~7LJ%Vi. "s`Qʠm l]`mWQpP0jp΃+OM$wߙ# RaKd]nM'Hcnqک ?:U*jץp.xN~e*5Yhhs˭ %BX rLgb?@@}Ciy{[uG0ֽSx=1,OOHHQ7F㙨Q2@g]_WK#LU)E.eVqb&#^zٍ$ "SZg ~M׸!E|@NY0(6Ę%svw#"$ET cA`힫#>pʻ&6 sKaLvXQs­X sLl+>X_౞&aO՝7ЌuF2Bjg|yD}WT$aYw y}<Y9 o1@{_ێ@8 8Icx:$1p!GB6c(/\G3%j6.LUـ*3 3jT Әe(Be;G"ڕ)!.G QhLTg#,Sž6ψm:hW\' %AHR<_J0Uᴳ[2}aV]rV؀l^L%v:UNhS[ M%խ"Kt#632J5c , {S-JA9NMahڪ{V./u¿"Mo.-lz'>CgWAM@ :a;FcfRJz|gg6\%wFVpBަ3|E_ P]ۺڈ+L-R6@lj o?Οupe/nk؛D>װvKN ||2&,V-\@VTlJSX_gˠ&Z$`YJg_v Ɠ}f" 1^JHAJiβ6ͅ7:NoJ!/c08mw<Pd^]-POJĩH|-g{v?b#qVخTUK5dF9/|`?k'z~!$?wv+}SF,F:Ɍhv|R]+r˄4:g* Qca;/ IVxk$7<{\6pe./nl& 1tRC-4Ah0/JmIMTV0X;W}J~ΛvE3;9H,zV2]cЫZl'T* ;)*)xrt[cov~<L"OU']O鱐TV3CWe-p5)w8CRI? XmmQb@Tz<a]\쟀zQI_Zy0x T2JXӸ/qٲsmMۖ dL,KQ4B;PqnXq&IC*6 &ґq=ޭP\'Y:1}0)4zG^&`}C׷Tc]V0`JZHrb|΅nĉ: MŽ}D. ԦNO.Fm;3&<~f ԐCco(]'3urԅxٲf#NJLndɴiFk WԠ aꥩ{yό?uA<7;2uW~H_1| De+7uAsI5`Ӑga-!oA0VIy3s1]?g7nD3*Jz`l%c?3`J`sCoσEpF;FԻeM?c Esv58Q+Gc;*/{6SSBoSY twImkl×nb@dWl@?p:I0&"+2+h&q6?f t`)muUV/.0zuvdT+!G`iWJDMp%2ဒȃڙ֓!I,ag)pdEMEa:|" hDw j4 #'MSA|j7-$z+stδ?5x%e88MiA L]:W(vVIVW>/׊d5i[L{u? YD'Q& iEnҲC0.myb%%GbmXk/ Z(+W2) Y wHf uHq)] 1ʧvcx3hIj\$kXe919t[hB6Dco^+n"pKa(B?t!E:̘f,h1؈8tNIʖAJ\UMdu|l"9O`[ }\퇮 ,{'90v֎4/xbnpH~ƺ $.3_28|3&Ӕy|~:\ۗ^Ưi0beb/ #N4!.v)t&Z>Ai߸TssBB]  5A' ڽg:dO2z0!d[27ْ7WB\VVTH #C46y$ h$GcX%iݎu9]`Sq+ ߟ1ɍ*sm/gY1-Ca b:V!tR[.aێGE8{x۷i>E)2ӗJ'%d^x@rAe9QTIdk@þ6 4*Tuq#77Dh /1)9]X́F$0LkL3rl=1 4V]0\r%(}} :tOBs>^;4Uq-9xSη Kv+Lg&ӕ>Ġ=kLԾIX•Mk v0M7M0WJs<))=7$VIыclOO~ ü~L5Vօ%uLwk6;Y.]<0Q:D. A%z/^-uSaQ4 ԫoaP*@61.P3YTq54znJ Œmڨ^ag 'd_WR״ mer bΤ́:37%"kX B>^%T}ުFde]$h?FL%lo+)/B˄nuI`=\l6WQy7d>w{PLm7U^B9RB,!ׄuJV̇܈? ,YQNEIө)YFusK(:EsKݥCxh&TͤWj{=XV R5m?μ 4Gu(fwBx'H[Rsz">m(cVV!/T5儾J+O{7چCCFbTPbx#jIB#JX+K`) J-=^&{ S⏗[o&AgsN("RfHxiNpa3^ygqpݼ:%(gK<#|pŐł5?}Hc&)cȶ%[BKLlR눺rxbh`37!dc}Q 00tQ 6e;+'l[MM]я* O'>K7/Z7QDB# B'_gMAl,l)C_J̈IJq@CdP0RF~SV"`fpI ]1 x1cjPҍǬjvUǯtq}nn\ OCþAD2V %SNO}s Veeu NfYXZE=9Ϻ>[g11Tr麆_&=s0mOT{w՛p\5 i| jʢ-t #m&y6ٜJHˤȨNk%mՂE .\b$l5fIċX_Pm)L?eo~Sг-%2+y- }hVd)YGSl[b&dt ȬS o*qWmTo" \Z1KDVЁjk{XKsMVgW te|"!ZU\[U ^"IŗӰbDG_.h$2Jf!륯>\%niyDrjb%ajѭ7̆I|{d7~Ć IXmXK7W*l>ތPN9mj'y}S~븧E\Y1|&OiBkMb='y5j5^G4dTۡ@P:s`b1pKoˉ_FkE:80:idˋ+N|rJDќ-zǼ2kh2+`t%p75dLIaw ]~aNrMz̬١fj Z{a"]_3#:V-L~UR"CGH ]6 (>o)!"<jۊB1bC:qcŗ4qrI-1;㊱W˅Ɗ]jߊeM}3:! h:b $Dm\PRۼxBM(jw>n.Y1C^f sO3oF*oPmck8Z̏,ޮ5aK"E f'mdzkCEk3h˃p;oi$H#MTU~#8lLP3=U hL=yURu a(N/s#VX8j d+Lv>hE\3o`pQP.cnk+!, BJra~eh'bXӸ QҺR#+lOcP?5(g M)*a9ޮT+!5:$NiJFCrHBNנtAW~ z̸ *y q#*pt6uTv|KGJ L{" kE_h vܽ8>Gb X]]z Me+ī Vj}[yX-'^ж.$P X^rWK#`W.mNPTa"R (@(Sސ޿T>ݿF*棳ޖ40J !M'4J:%5ClGn7_+ؘNus_kplC+h4w6 כԾvGQv9<XbPf^;DJDp r7sB]L{~1*,, m"ܑ+\YcS:UFkJʢS@`#4ec6LG"dђv[+ėƽs6{qϩq+Ej9U5sPus;vr?!؋77 6Erzh0ܼ('}z=(ĶWb8`,eCa&IVb1c?@һT̲ !$G]ޤ.'1Oȱ7d""eDrvH*;W_+/STz#.*_rU68%Az_C(29ws` %+5fgw=t_qƄ=:w;G@<V7Q~lK8A/?[#h\e6xɄS/ \d)L^:|+&e[rzvvr4(dw)V.E^dE6$WkJl_/ƞ#F I*!81& XE/RPd*/"V/pi B 4RodK}yf)%A6{($Ft\Y= {de~~U y QXl2 33h8*lMc6b pEeZ.̏)W;{n{RjG.׆9ECug7MƂln2}e^U}alׯ/ufo?2N4J^4!I÷CZx'I۩q(a<V)=dGW'|w˘M|\*ZZqx4Ӌ.N/e_T ߸1ꊺ1UË؊B\HFs.33զ4?fX)E˟-pmt 8:,)>%qRYrvϐ&,钓;*,CH|*ǯ7ShY/))صZح*oH7Vasۧۑy6SG>WƸLi%J/G8GC?L:dbG?R$rzQl~n^Ęe2jH C7fY+m?X UR> Ǔ?I,o:N ^p +nGEԫ\ L&b{1@{.sM1Eޞ絎dC+8@v D.ibv\1`>D /*5 G'AT1Zл8#I>xTJШEN+},ʅxk #.M ڣO+bV/ir*![rPI|`,-mC @RBj3&dtu۫K:Aim@HF9QWCxG%* YIYa9OPoE$"D#(R֥?CB4t@^+|3Tr[>;9SmYfu N$Ey%AѓW >)V7?FsfXRU#ozn0N%94<1>NEI/u1t%cis% ?LȈQޙZ@ٞ+R,P)>ٕq]ih:J@϶)ʡ-.hJh'J:S}½ ׀ C<{u Cݳ )*BK8BU v ̨ vflxʛwSDʫvڽl(dXcMDL)nCtpw TQwMp}(#ۿ 1H Ձ HGC!;'2%(g(n%~QAZ MBrn1^m򕶦 .k}A*Z:Imy/۠:EYˮYz%O3RP:Yd˟l`ڈ0gݜYkH2QLj/binpJ"i H_ݿf-vYH9EU[CN?4 KS,Ur믬6k.xfGxɰ~?$ڲ7v 5Q0GoO󮦔O!5펋MJ^t,k S2 +F+ucs7ĉ4fW7)[_)XzӜ[@qbϐ%2L4ZZe!Q'uϑL5 -Q5W\jAX+ p9)t!@0Z81 kP? =ɡ'uvT Ix e/LšejTjL{n4 D}$ݮ?ڙ:Z0wIJE_xEhp&|GA}X[H ,W24V>~ulxfJϚ te?zB$4ʟxC[<5#M?I4H^] )cf?C]e_k{2.~LH]h4 A;`(rnz)[ܩMR}T;4KsbҔuʒ&nRJPX!kVCg^-F͟\-#Q"㠍z;|UxdNG-<{c[\a  yo"hу1M1g)EtfI^~IY\1U3Fhj tQ'XONK}; 'tc٥{oNavcBE%Z÷0D[8?fu=ݯ:Yؚcye2mY?_dZ:Y^MjaÏKG'9Kn$ER{l~D7[,[~F|DINda(.z c `aEK/[沜tIt`TKѹ 4&w>8Ԋ{QRя#S¼exfI`2wd;CuzYc ]̾a!}ҫ%M@qN= wϩFJҷ_E^dKOGs~PBf(v&$5ģewĚ\>0Ap3eEh /x(T Klse\ :״sBCiOk@.3iۡx)]Exh]^;k]d $]% ce#C1~ΫY/0MP(.+6F"Yԩq&N%3.HW+p$JDAVf+i8φ`,w4`ֵZ?2,ˣX1  Z!?N> (rG3kjƒ2kn>[`daKhX|bA3-q=_M~Zh<$FiWLvg1o3%%$Y,FjAei_baZ$ͣJU?$e9X4'OϖGaOLrī4Uࡆ@gm_^<X(:3h^J} $l륛^Ffoֳr?HkκLU(`? lΙ< U FP TI_esLo\'>PAxCApg#wӴ]x0!LCpVŁyQyG佤I?&A?y/GyAYAbjiެsnXS) =p2;޽Aer9P؛O\/mgd,tc`1i 㭝owLܸ PFY훮HʤLEa&Rn`O/}f>i|H󪟾2m6Yf)>0|e0 tj$42~nRS}|웹pgtGfP>yِ7w! }A,-4Ih|0D'PyHz0Q;KE1o~NPH""Mgʇ&5 Tv(e{X7:t<7x6 />p.6ޜ9LO15tO`?4 kץuБ4w3g3(.}vh1TdC1ʳN>~ç-*KRon{K18эўvO=-x^5KO!o0h>> ŸkDgD2vIݕ>nkH2 DcDtx<2qQ= hz 賠nX4tNVGF|!f(GtHxVSY(ZRsK?]r / gd bݰ#x~&e' n5\S׿ 0JB#tk? rUڽҵmRF ,(0yq*DI$A0߰ܥ\>(5g^vy% ewEz2XprI޼"aHSΊO|$7qD O3ѽe[@k "g\c=ҵ]F5dfL0[9 1>$0M5 gpT&Y 0^?F.(\ +#*XJqˍ3;Խ;SI<k³0~\ Y9uЏ}[8Rx7!LIC+ZX!gT78Mo 9nHU蟟Q7 C+l'{%@ye<$%K.b6uK|b5z*) 7m gfLR}%䪼Yz/Nђ=`dWhB8۱GL/pAN4v8pPdZ vet"*SK̟ QE4F?P\STsTLpЮ)5 D` 9NF[qL^MV>Y2bZ֬[w*[HY5@n("[#ԼPn#t\Ouқ.zϫwt98SM{Uq{Q{$<5&ؚkI@WBۜ|I7TMv5};N edy/b-xs }B%?-ms‰W,SSX)/iBlm;-j/D0Caþ?[I1>͋I7"n7[\Pd9E5+xxĒzƾҦg(Q\z7Ft^:[p=h{e>?B6OUI! qO"YGYU3|T2NjXG]WWz+03 j-*Q9x[A,Vah-EI/vGw eZlO榿S%FS?NPdanL.d!IM,| s%;4L]s4!񥈆F:*(/\ 1Zh1]~hCcªcbc@(k.pEWCU#GsmZry.qTZlj9e}}JX6\KOwEfN?{›lC|VճhDFt!xjb9߲ Xse,UY&} uh Һde^\0_jD-EQ7'qJ洠zCDkJMr>S0ANɈ r ԩ4DѢr-7&}i9M^ mUl TRC_|2mZB)X۽qYQ3j4u! FpE];rY>Vוíٵȶ! |4q*jXUGIc/Ꚑ(Eu\{Av_~(Sfj^oNKJU!_B&< 1֡%885 M8gh405f2 L͹X3 0nHllR:]5$cIҶPtE}>jX,U>{XQeJvW!;BEևz#U5ך'gx) > hxF%`?ʎEoCQ4є/teLG<=y߆geebWY6ȟCnauO.$*Q%4/n\/OCEŹ%# F؃B{rbl9tp\;ٹNjۍ:t:xnyΝ湮^F]3bZZog"H~߅];0D V=e<>4/T? tuP]x*,f R)̊ ?75E=QAS 9{o(Y܋ ,h3ރ0泜Վ'n-[eQS34i3RHƒhBv)S95!BTq<ǘ,y >$.KNW;y%w&-աoC+[y+H(+|ׁR%hf9 0-k6 ޲j+X^m}䏖M"8WY\hޣol6l?Mϳ48w{G4k3WԵӟ(6k09"Cc Dbb`Hmoʠ&IjZ`xJjxpj˂Ey^ĖQzacV0*$Ra OJooQԯ̍c :s ,k Xoh?fsWlO&݈ }Z/GhX!`QPav I}ڨ-?&?nO$KeNg6p2- ϒvoѣR~?|Fɫ>+x@k:G-GxѰ:Ud 'Ru', xsSF36|.L2nf蚳O] ]T4bAêr!boOi6QX{ ,Znz' UN/ٴ`2YOH[ @5RԏN~MsQ|4V>URퟏ|h:-#bW7u?UF#n=W`J +x! Tčq ] l>7 Rn#,c|7qQl$^T: HrX'$AIC$weЪнs~x|HBF̟NiB J_;+mĔ=ӱgó>MBwoľWTE8I?]wY.eIӂ"[_Tq{T$ vw ĉ±-]a"NAV Ј`yՌ  2.OM%>G{}4$ tU7MDs7 bcVeoשZADc'j|2"W.oRfelKGZO XfH+=bVɌ8y{L)O3r?׊SX2`F3F`e׃@}璍DYfqWcz.E2!ţREm\\MHw0?K>gM3 ʍ3A\ ܤ;AxJE2U…N P@{EFh־CUcoyf ]Iri- M_pюS58 Xֻ(46>+bL=C -|Z1mWA98My|_ڵhOr)&F9,_,)K"De+$- }6Q,GTap%o{jUgIQ4qNVB{Ę G/8a4p"8+sPPe7H/>h/,V^J!P_! eu??KXV`.pn< VƍtX $QZxBGXLqGkLd{zՎ,G||>s!gixΒ΂qQe,䅯w.Jݗ}::̿3X:[G:Z&+.t ဪ|Vnَ>ץ?6!$f@7H?yȃ ~7(\!s%n7bk%pg~p*78FG QJЩpX?{/ڐ{lFJMsJ;J~Y #At.4!R_+-"bF%)5$}6e)/_gꋘ.oh\,vU^\;P =M/RDKr 6.yմGUX'0~hzkS-,_1.Ӈb,ɷH7H I@ցID"HT1NHP=l9/:9'oϮh AȽ62k%)Y7Vto>oR^vE#,ܡ B 5*ҕ 'bBrlX.S7E41 ؀V` myܠVj#D hSiE犙|U+[hAP8[\'9GfݎN7&$5L -fL)E\c <lO&5aEŮs `p-臓UnlٵюS >M]/ I'9g{f|K\i!w朋%Qn}!Nb,W-sXQJ,Yg2EHMuHz6L,g5';L#L(ilm/;=Z_3fHDlVx[ lV>Re9~ga8<_qY $. Cj^1D"QMU݋ewG?n:%1P`DiSp_(w<dT$WB+]uGw ֻ"c+^dʗELXŚ{Ψ+6ȊImbYpXU l=F'Xo[[b¶3<qBZOY61N2f(d LKnmk-Ub,Gi`uI'3?M~<">uvܭ23;D9d4`>A۟Puu.;3$|8bD7qق}֮VR.tb__Znvwֱ/ҿ/z&8:J-e^aSL╘$P6%1KCd1bRɯѢ>yA&82Zqh=bQ!H:%<0p zre9Q$eyF< %-$w,6)EC[]rNh=-0l9dUp}sҐxS8nkGi.^04զoqG+{*]#ɱ0dM2N=NbVV|Z`qx+jw""֛xQ]%e:WlFx^LqLH9)02mh!W#*% Ay!BO0t+m?Mp`5eB?yJ,m3rL2C'+}\賢Wo1xhRZE%#T;+'̩{VùӡЉ$b&wH**0[Vwalq^ϓiKS[˷gK.nLf:r4jlOijlZ "RN1j^,b}nנyXBjc7O$3Ab[7 "BÚk!c>dG9-WY5Jɫ,,͟9 L`( B TQd'{!oRVz $&[oՃ|mRZ`BO>y۝GANo9Sc)١q s*8{ռf*_< %zd-][KsP~xzH&‡˲%J]Bd c_ II+} p݂& Wna9a,>nSC {,_!PHCvz\iVNBښ K"AxMN Q"aHm9 ]~,2eE09n]#l 4,d*>~P&~f`xNg|)ItPd7P1e o6|G u77`{EFȇ:^ljBKĥFe"X`M9|B1PcM-Mb;$9sTLEjlMx)/T,$q1G_S tN f Y,-ħmEpQLȴQ^z{rڶ0ďDF9H,Kviň[1. "]`!M;6QG*R.pLӴ5Ú~x h YQCÈcZb8)ǪNB"({q(pƿe6,N! *ٹS7~j&/q@CN(\M` -m)Jӷ+hW?ֲEYdגE0#g:|j͙k.AafwC~R)lm(%TgJ`h0e.qa9KO !xp(A;ҝIq9X0tے䖩szkE>mkk #u>5:}H!|v3B.^I¶.˃uzx@|et?Q76UEgJQ&Ҫ?E.Kr[8#@Qn@U@S)U3U?S93C03ȷR%JagtXN]]Xˬ JxkIT6_OO~gU߳{I1-ّ2U[?-pTh)ӺRƄr ?ʣ2aZO.XՎ r勣3 ՙX[8ogBE:L#8 ]%@],wWpu2դQU/W.Ƨƃ?-2ZfwF}oszU/3L8:pn=&1 x G5 ?N-'˰YZ"rSjّ7\V34#.lvu9W޻読MA< ߊtڦ(now`( ې%53gx|Vz4(^|xJauɯ6Vş2-e3IzC 7aL2+z =)M'?&VE tY 9d(2&Eu*a犃w&s -eA%)Qdp)uQo%$& >_θ.G=Ԙ~))NnxaNl y#c۵rQgTwT\9cXXzK (Ϝj 6Y3.-rn$p+/Dg_V?v,+>8}e.\s=G/L2&c5r[&uO1 ]WvÕ@ Ln͚IxPz5;77q|l[@yi2;֗CpYo&of:ku:/|N&p?O{֣xJh36)Jੂ'(!"fմVroU+c&Y 3)Y$[ KZef=CTl~h6)Mk G>l: .r"fZ1YMTFBve+;%K ܱ<َ^gNYb+2a ƂG _NUv稉3/VBxji}/V1ۦ 8۸6aO}U;"d'Wߪ,+;GN7p|zS_jZBYڙF5 BSq[!g[{G,g{YnR]c!kӁMQ ox@ohj/ycFJj\H2FLO% jw5{!Cx㗐8G{Io2WPY0n{wG;niN#þX ]z7ڻܻV<aOKJQx9O.Tayjy8͢euo [Z kys2@ 4Ro_MY{֤4ח-܀VbpPf'|7Cub,ˮ)iɶX(/dj |70=\Ͻ ܮOUmW8+x%ZJ1aRjoN Œ\AW )eEP=x,F9;Ո$`[_br\6; h}"&ARoo盪Q=}x(!xIjF".۾Rg|3P)ڸC( 6hODJk~ >nҝJ_eGYjԘ`iZ4֯^y'0E4l/iեj|tSW>aNy̋}AEҟnz4B {DpQu04I0Dχ9Ҡh !%BhQy")9^dC%c?Pet(: ezE?]f?jo9}DSN)O^-u;ʕ_~ LЭO\{wo_)2+&t9o4VXglYg< `)>3Bäp>aA3/[=: 8ۖc8":{F&˞S4t>:Q*plj~HRF9Dl -KӶj*(P=pE:G* P9iG/۷OџK;-yqz (V@_5o`{3cU,UPd >[27h1XRKy]R v\ƶ)̛# \1 ,vof, zY]Tq3 ҫ2$=x鍭u&͋ʢzN+OЗl fw9&͔{Jskqk*,M1x'q *\"R4thIFf,*7}azөퟔ9{ehyˌԭ^aAI )rQ=u#MoM4wܭ@KGG yh?3dFU|HКaBҋ祐T;rHVhb;̞hGo[G RM4UǯԕP'?ໜ.[Qp:ѹx qPH}Ţ2k9UG49o#fhKWt~박O+b&$\#BUrO ރ0l9@6ZvJ7ĸ^,&,jiߞP[2]yZVx/,1#h6vF*U~5G9e H8Ep5ܷ3;(Y!t7m[SzV$1m"yil:8xxӷFWTۣ >~ۤWL-䭇+߳ll3%wok-)8* ̂'g7^X1\pA5t8 Ƶ5O)V;W9 ez#"])y'Ti\`n]ڪ #z,)ڬah4Y-`g:Q0^·b[76_C8";L 1sNg{F6kz  šFՐXŽx9~(EiA~sde٩L/ fL 9g]t;:f;qK@dՈ8?/==gӞJ:i:ѯ|}z/ vOţĂS緮b(]%XbQq P?gOk~7yzao_gǀi)OuN7dVC}z 6m qč2~UM](7vnuܩ]TfٶLJ]ЦzF/$nXd|rњ PXsnm`R2XR65WySfw %5Tz>v@1qU6$5n8JUîSYzw 3w*luZxFӿもO[Ti ͳF2q:N!|Xsqj]Uc?"lnjU)9?WGr> e Y1r9putKp}ɹ nl$)x5\Ha߬+Ч|7F _m ;AVv'ҡȑ !Z*F,kGᨄswznc+VZ|$yPH'6X.d'Ӆ$TZ&5#Kݷ\RaVڒ硜O3RUCxxE:_"kfvpO||z keWC7gNL~{bmBi2e]bp9VJiy>ԧ4@0pz`'@1*@!DQl;zƱ Djqw)mtXCAhiіi㾟peTN':m(FIP.*!woRO✧9c˂lɹtMav#dB[ 0?%Zi58`vӢ(&;gz3.K!w;!O*u<>gK+(9⁠Lk )f/B_OT0mgh2{L([Zn[YPlD_8 jU|BY>c>h"`r"gᴧ5Uuͱc_6Xi2 ngGdwc^ԕ> DAcR KK{N,ۻōFita!NxJS*ӒTdʳ@!F@|,xy-pp9׉ӣ]>Z\y smYGPȟ FO[sg,mH߭P?΋'r OHP롸0'g3/Jw[5Cz܃{gm q._"o;,ǀlf"ꑱ׵tX8NI0?8B3Q_#vww@)Dau 7hTul'\U؇NAk(iMvr$$V U=Oh.۪dOU9,_7 c:4Wglد0_Ѯ:T!1g+wGR8EVX=lo,'eI;RAc-g`X>e9@z6}+Zɜf ث6<ė 8b@0/$Y<oUb=x%c|T&*R(Pe ve@^*q b}":|MFRTLpy,]~ M{ eGI:8a/K`5"}\wuxPt"̄G2xs5D X)q!v?!'(#Y3~1$kvuv c!ft a5*Cއs:ғ+ O`N:`O!D< U0>-^tFO}SQ]*PU*q9]zpϚ^BJ:,Zq9G !&j9E`?q`p9Qx0.5ӿhx\&;P$[LӦRhs ל,uD*ߙ^  . tGEqP؉k_Ɨ|[ }7`֟6 >6x#̠u۟Tb>QSLE46B܀gG ?Wb ̽$N>f-`m3JŰ 6d-V =,fg7X kts: +,).q=WSt9l;%wr_l8BQ>eX d% 5e{ǶDN2A@=5WboQ%Dqiq{ H_Qtj -$ j9'.Õ#&onMcàv(Lj¹%0\xټV^{<-+tW9SlzTR-rL:wVaq9lT􌅻P-xsfrH19\JE@M&S!ʇkyqYnTcO427Y<:D83(EkXFrkm?5Yn'#%Ptc M sƄ-_/!BJ {m]~o,)))*M|UMԜ@iF {jqeZº ]YQm{iԆYu6%DPMܲC" ?tmԀM%Iz>.F_Qg*[q?} s"4`=H0ڙ!1C༎rheY]E8wt/=b|?+ C}F!,wlGa;D,-RD&FvE"_jn?P`E REyȝa'24霜fq_xSRYn/O)rP( aO5<# a- 3 Q2{0c#Ґ`n B+)g`|CXʓPCaj i2ţ5?J&󺈜͉{@I@gg—@ޢrlKו}`r7 sɼ]-O̜oi=jiHtm5jqH;5txB(|[{뉘t'ˉbnA{ j(k숮~AeGg7ģU' I-N0,{h:?$J !q9|.]HE<qD;U|8`kǢ q[BxS>@x"D'UoAԝƳǶ<Cqe*yjE'C3=~2ʭ}BZҔ^ylEfsh*  G l19$ @nߤbjkat~~d ˺h c$hh/FuSV 뛢*Z0%<8k[.ԋ 1D._m_vs]AH@_( ֛JkRٱs;k|D֚M$&UxK!CYg\6e:iL#Vd%hk }ϓ8t5RV`L^Dg2`$ZŒ,B.\eV[H؏ : %⸽*oׄU<Tw}& kyڄ$LL4\M٭/BЛ¶t2HPDm<<ײmi#(Pgy) ᳯx; qM t^B]Ki`͊(|8ͅl¶BȲ=9%Bv؇ԖəknaT&^y(1d 頌xH0:x{~x[LxӾ:rQqئ]Cg[5ȤvйǴcdN̈́ O%fşe+e٪#7OǶOn(&&?ԆUI. WΆj sJZ A xGx:уc-{kGcN@%L\lZ1uV'I#i!R CT pϤ /. C TXc}" f:c–䷐RRsoO "]=Ԇڞ e'||- ;J@̂LJ#,%oU!6`P.aݚd:Elwi 3F#иLѲB{z du: q1Pu4`BPA4vgwwpKna 7>(Pɕ< omub[BN#PHj|5xn7grpه3Ud1tkjgۡJe)"N3Cjz5vx+!B^q9#ȵIǯ.?yؽUì,VKC]->&2]niU?w"ȕU+-}Vɦh[j €lIBUW3Đ,R󭹏|0ڬBѲjӥeCUn*)n@؍7RaJz(?iKYSdQ^d471\.1^#AK7kN$_y^cP1(7- L]驔D6[ M'ZGjt~ʴ?pOF⠔p;Kywk!\@>!^T aAS[vt gU37xx_8 @ wg^~gٿ]?}_x\`f`!p~#lep\Ak2~o+ZI!.saϬ)M3RK5Nm1: jS*.=OL:>KLЁۙmGb(;Ҩh%U,rp7^zq2$c9Jn{W$`nXԵ2X˙d᭚ܻjׅ_I&O);74 `}Hh .4F.ۘN#EĻT=`J/Zj0l%RkjAB{kUodJOq\Uyo.^\verBpVaXR`#ʂ_gﵰ:XlTyG<(T*\!̟WY)lo;Q6.TcpunwG5Ƿ*G\Ab2[db`"iPd;O#GǭЏlﺖX@m|B2FD'hxͨV;*dajҌÂÒkhiǙb\ ~ ,~R%`܅}vr†yNE؁Kz1qZ%\F}a%\x! ';J >kvJ {b _&}(6 Bi`yySFX s˨t0T tۗ)~Bf h2"I9[>(b ri_a >paw}z{iɪ=r'u}w:((1k+zW14Z)1=8Jqs2COۆa hyZ{L`€]s<:L@qd}92F.[S[N/BJABWbC:Enoȇ)^R4Gm,tUD[(Ę^ y8rk8vF̔;別q Ur"9F^Kf TX?Uj4%(C+f l4-Ґ+ Jsf#tޚsewx9i 5>9"#D l HmzMBɘ}J/*BϳQ%E/j).gl>\kޙBT2uqԘVXp2|] Y\iX9Kګ&Qb[GX~ ) E-D+!։W: "3CWp=ţү{ǎ%Ig^[n/0#=Wj}k?hʞ@^ȈO&O]wjg+k 1HKܝ\VV&B#Ldت}g1~WE,^ \@L --ޭG,nXڙJv%:xRZ ֢Fn{Aԙƹ cL ً^`-$=_lg^Y)WUޝDdF3IkCl\ wk_*xE#Oӥ(]i#ө\VtZyi oM 5=2KsIw62?[2>nDU&ǘJ+f{u?>AvKQaEw {RZii(qϋvI+]{ٗ|jbddEH岢A]" ӎrQۜЏYzdc?G@ AYS-W\FT˨p@n]JӴǯ<VA@.Է,7\;aRIded.R D{aK 70{OofT!ĔŢ|LZ|3|DI.A͹+Y% |b2S,0qQr: aps"W`]& ts˪h O(Ui9?XӞ=u!>NWWK`ўLU'ykf@b6\ljcNKˎYU[ziNnY_X·gfH\$ jPy\+$Pyƀ"bT܊H>B,atX׮ A|t87kyx(ǷJYuU'!tV\đؔ!HV[ Z^/<_N%4ֳ*[< c߫-SVg~Fa*>Q_9Ay a«kOd;u*|19*f}οy:$d L,ml0!k7D9*Gjnϩy跥; q\uNY kƛtw!R38!h4$i 1h}6aڣX zc'x_O&[xTtI cXRQ'ChRe6C¸>&Cl֊]H83҅&9aP,5"E5߬j$^d Ooˢc)-q?HNfvՋᾌscwU{-}Ǭ& [sVvH@UW2KK̰9X*s9vXSkR*҂8 IƓ^15##qQV}|Ar[OM94O*fORؓS6G/$xd$ڷ4PBezPաҀ& _'wn3@\uSLtيȆ.2/gWr_7eoĨV֚ZQ?DCv!sT@~'8\eVOL^| ֘bz C˪`3 XO<ҏP\ um-־bNJ|vꉓ}2xCKeg+~'rA\ݡUJ489r#{ ?dOOHbG!N&hahKB”_>aْNZQ=&Hlָhc4]ʌ 6N@yE{Yzv͵k%m^c'G"~WUNf, +i혍`Y3"Qً/rĥHEB)~u5Y)38IO/2k BeOd͌rR@`Yl}UujRhmHşQ#g{lhJ9#$鄶ܔHo x{$(/w;r1'ej w-)y8]-R»Mot{Lf\$+K'8 姽7;>~t6Y 1}BR*Љ6ƵI㡄ʟ UB#C/KdW0_7W2TUj»˕8Oy:;EϿP0KGAMܥ% @Ups=94fzJR`y2/ӺoH0cmH?9tQܖ鉫c[() =jK#x'{` .}=@tDtךK'Qo$ ƜxPl8x\0CU*cC tqҤ$'z6w7ѷ}ؐ<]O{I n0჏r_ˎg'63눰kXCoIiGz0'7#}n˼v; @|mGʀ?+ v(.K+80H_V.$nOpC!ɑsqF ʊ}n7uym8 X`191 B2im)Qe5R=Nq]иZvtVuC It^WXTI\/)NanD9B0A"NI-LSnrD`,= kD=(ݐ9b(ST=,3_[`Ah hnIsۄk%0_R{wLu1e4OҀoN :kZ8zzMv ?Y8ͩ'4x C-Cu>'gyϐY䘭<پ,lWDǥRe7X}H\G ;`Wny>+mon#"Ep3lf,t.dG8i%$6URSD2&L.,DTӽ-b +\k8)YцT{筿!ZX$Z !p A0T;Hq5wD)KM?n킽IS.x>ǖC~ƛs6/UJ8< v_'1tHT |2f_~_aqM$%=g1eğzLZ&$<9 0X/lkhXXw8,YtQltuj@\-n+a5|"*#ɇ ]ͺEȫʢ߸~J*li40jj:^p" !XNb>$Wr;7<'%r舦4xw/rK#d*1ho%ghd#¦S?{tTP/#MSdmm0jDxNE4pABo (e[cH/az 6tj(XzYXkѢC WO㝰"=vڊ.=/E&9)mKaY\RfHa+z"82\iQuFF5G<_Q]i=aU(V&F#K@8uة."LnR) :=9H9M ^:H|`Ӽs73|X^ #*q$ݧ$ٰ~1LqE[rTH KGVQ "!W6"kNJṙp6oR$h')-٦{T\TY\a卉pWB5H^8C܉1A[S6҆ɑi %2F SNJU @5(VhG3lSWb1 (kߟ>zZp^=jŕȡؤ}וP[xX= u[X'V؍c#ZS?ƌAZAvb; m%@ >3U1YmD/>ה@6tg7ջrgS&Kۗ uOjq.8nn uxԮ 4>^O^ Aa1-sް} A90iѥ[͕Z4KV?'{&ŌѮ|K[}B _W]T ECqG46hQ ,T_z^o%RO gW8wM`%O[!%o+6wG׼EYˣ e妾na3P< Ԩ89 s{ %އ%1l C /hQoΥ+p\ к=8 F6-DӊI֯x TQ|^1GkOC/ui5IY3/{꾤[zgUwjmRۋMɾdA'Y~}"mK_<ʈ30t|¾!/Ťq7]CĂ4]sjuRX+^o1ww Zp_-Xqi4x6:!1+D=P]wc!;L(h7>~SBFORsH՞$UbaX"`ߑlŀjC |u$,ź͑wW۸gtUFËS5ptIF&|HK:FYs[?<pQ (Wp<FNtN3= 3=@ccQ/*(Im@|Lӗ}f\R'iDh!H4ya T63^%=m.[ o) a6+A1#^F}^NNr9&*dphoŽ;ozI i,Yq~Ylƒvxn 9&!Q}f+,1@J)L#aEb/OMr%&Ęgp8Ʀs,achRJ FoV2?So 쬆aH(Mcd͓[AtHb'sՒ[lۄq 2aZ@ "*9^{,a %DcU_mZB`oֶd5#J3ǵ;vPĻ˫% r)SV40BuCyV3Àޢ\6NFzs#;J؈\. X gpw h FJpd 4].X;+Mfln5(#)[wSف53^CcP;JnnJynti0q\G$|C=83M}9_n5v*ZL"lF3~æabЄ4#yn7z)]4fțr]rȓLRSKWt啌l-fI``Hj`ج*;I\jvȆ;lX3b:/h{#o-BI%B:!_ںl~L1@zz=ń#da22!o\`DGRU7[Avy߻ZHL60X ߀:sFoUWc$PETA' -@5#f#t:|.*Tر2C8Cwܱenr) 6偣=gNޤ&+ s~@NZwq50.t"G*1 e6kV-Ϯ"_/ 3 =58۸(j'V\ M+oD*R OޘWV'CzPB?J:x9^Y'c&B4*s+FHf{g#Bm ؔ/9|MLWijo!UAȻ o{%snu,?Yuk 8eť]sQuIgV6TG=z'Y!$!KLj֬GpձCP?Zx9װݭs?=` ,3Q~.N]x1}B,%2i&q=0VwuG`\g,-bO E,=ӚO񋹑<Ϯ+ˬi~\+ɹjS;YAI [~R^Q# X]eMs7̌ԭfgni^`WIwA*,aI6J (3qfi*o7(o^3dX'G>pݻZ5G>dG'WDjcwܶMx^|Ïq[w_h*}Ac*kbk{ֆDBlϫ#/dc@ѽ4P7h { b!nggʳjIV |?KB}(0bIݤW$6 UƵئ FWe1>CO5+CÙ/3"x(ߋ%I,P ,U|A_kKnAgaqÜ`py%;dl$!F ms-_u #xV-#9g D| Ps!=[+aaֿvZ1/TDtt#҄֏ z[,>8H vI3Տg:=>) ɮ5]FpfPܤ$q,oC%uyѤde%@J!r1x!)C^\šj#852pT\cMjTdAhSOZ,ʯ%yhS  rŜynqz)"1%sUB)-/1&O+!I$RH9q:ɂʛySHz=I=z9[gԒCͫX ?om3MQ#EeKzAc l[AX4$i=Y]Ek*PuEC>QT!wN{So"ꀃ^y\RjFEE2^->V٩_Xklڌ햚Q>Ԕ7U]fBx{$g%w%O6,ýXT ϯί6;q5Gl {+pdVªvqeV,pǹzw,, N  *Ne1%Mx4Lӗ~xk۹^u֘E'ʬF"'?W X1w\9XTH_0=>|2Ah{3 6jUNwvZYDXZ,+˷Pc}].Ó20w 5AAd,YE k^D溏eoq8 ]nQWBB@g"=[ukl6&`*ZA^'~eX `7:3e3$yJ9sR_ Ȅ("@za] &+'4\O8) ΀ [T+'jӝ˯(O{|uݨIxژφ $UsiAuQ2+>8-PKF q i톗ï B"}7xab%!|\B}oAo=*rXNfB*r#]x7NHEH˴E^ݗ4wr'p A}&Udh#DI;vHnCact?(*dcL[h(!QZ6U 6nF^(;%tਚɮLѨޗ̐/1q 0 3͔IL9w&#xTlM5-0_NǽJ6#GoҬD5l$|WmB_Fm)3BKswsה<ڏIA2/֮+2M?\c?²O[Ԙpinoi#d>J~ I B >ޱaeGv`l[ ̃-i aeA i,[fU6h g=Vo@We@[F8%b%Q7foPsckɴ+MRZhB(eG4WQ jAm{)Ufۻ !{.c7린i<*XuJD8Wtfr\wnP 듲>\蟕'LgI\3prz^\NI!WvQf*b.dbN̓q9-ޙM'6˪׻ՂÕBg'6(yldAT*wrޫOW$"9u"X`wgvgwy4LyҜ³^rO! Gw m\v_sgJlGm"6@r#݆F."k˛zʂDIW.G^sv8Ls"LKmĒ|í0)IH"_ض9]H{LH s+I%;?uz08X.ӓ!.56 4lǦ>ӕxs[$Ze\t[Rm"IE0Wy_TF&.hYG$A~Ce\?yٕQ|Uډ-rtA-zrWʚg=isDId_Aƺsyw/_fWv()`յЁvKͺ]OWJ>bFխ8 kY'Fjڌ.q־'1B~h׽B4Wr4߀(J*wR{ѵIpPzJ.JUsiDHJkdPzreB!l8+`t\1D,@…@ekojof UXֈµg(:o?Ax篒p+'eIz-VX=kHX~U턒o0kX-3i:_x zbB*9v͞i" M{M7LhgEOVst)1ڰv, Z x0s>-1{X(\Ib<<<Pդ3!ux$IgL,GE)*\<_Iz4YRI1GEo8]OIJqIL݈%6OP.a|݂'+F5k̢ߎ״ސͰGr8~KWPLntw96J(2zKT]SFaUά1EA.zŻGl1)wh;{z-t^јsfU/6VNq6.Zt{-~OŎ[;ۥ­ܘWU2̙>18!^;N`\Ey׏N=&G)GR-l|SҊ|!#uN5BMG/n6'Ri49Q2hG~ZXj[?|W*YB=}\^]O>VPΈ -3M0wçL(= `ocIv^ȋX3ꑋCp̅5DqSB?3+uOkn;)iYStldeR˥0dpPFpZAAHibIHRVҁF݉ooZqję5@`oRvdf2!q6<,8P}z$&U+==): Q*3KC_ox Qܗdu'\AY̑oŬ2UL@,}"֩}/[$;r:MmB<XFQp?Ʃvo~]pbo׋z-}0WT?|`Q kŦ;,PR 1#RbNdOM]TM6V!۶]`@FH}{.I#o`@jK]:&7i"o]o=N1V,-V0[9U*huïb*́)an$Z85:8<|ԑt` x]^B=U-$BH9^r}Vy}[N[/Y@yb=0; ô7*Ԥ8̆N+8H!lq&#Vo)!Lv=>I} ޜ\\1%y Χ,sL-V"upbT K.91uqL Hݡ1}kg،h1 PC_8Ȳfcߐw|WcL,3c@3%C:Q]"ˈKxGpbmhd xRc_lb"ґlh7~c5ZH59ɯE5ᶬuRT&SW %\U] FO|]P1y[ˍ`v$蕜$7֪ueH5Ud&dz{($aK}\RGRUmkQ`PBz/qhXԔY `ey,_B#L> MAn1&:f,\o=$r葛XhF_s(xc|7 4. "QlT۹}{S^9FPGK>~u sEucjmo+*n=7p"4zTzj_f!kFrRB#սks`^S;Nt$LUxq`vk:dR/+p8D kۀvfk+IZT(/04=x޻Y*"9Qł'k۔ɩl4)"`33D٨RFUh43D B<}Qu{)IJI@,!MOwq}R&7/x 0ɨs$řc xܞ09cmLHS}_N.p/(.#]&0v +NV.@8/,=[F*W="jEl2!_vSlny=Z8 }8-rqlt%Pqn.,@A ưfOvq"4C/{s{?-GD wlvnL/!&n+6kt.Bh7Ӆ`n!}V(c$ij^)Z8⎴g k%2ԱA[_Kr Cv@?3 Ό\TӹdWm;ldR Ag)jrػsd"ɉY_Iiq?'~VM1f i:Ʃ7NZ_oFl) վU0t?Wy4v(f/42_rP B04a#D. M2ٌ19wcN-M=r*#O8SPWc}$m> Cd-H0"TU/颐yA/Nܲf6?1#wEm\:ާrTH每86x;p/ !ph{b]V*Q诤'eJ"U6lRGTԪ[6oY9fI~]pb SCUK+þ+XIu!W/?Un%AW]spfLL~1H"}5@p P$ˋpo<]I+°q>Pjj}ц9ߟLЩ44;am]/{F[J>:hCأ8@ {Ʌ{y8ƵngCuYAfWɏ02/uۚ *[6OӋg4ZV ~$r*VϚmѧr90J`J ġ sWoD b@~ Ps. Y8rǞdST1 Ƀh~BƎJi&/^@P&:.EQ1 wN`nB +~ \N:1##Sn ^?B6X-[?"[$$| uJ%av[BU^+R ܬ{5wU]9nT6h!ߏȺb 570)q ;A;#d Ä>Mz8pMLj ,8l!%;Mk¨ 8bbxfVB΄jA fdoA1" K~dc3pEއ%d:+3Ly\-A!'d09,о )?plO-r[6bnnE(wZieXQ IHq,fJݪ':r7Eŗ%h?ۿñf {@LO30$ AM8A8( 6^2n $6jdZ¡K#qHu_Qz~}1;NDiz.+Ƀʤv{yr9g|T8HzFM0KϜqzN,0UOkL;,#y@]&u% , | X󷄦RW|WJ _kԽV{q2 4YX9+:AVZ[R{SO|ޠܙug G-kKtA_ 4<װ%tOL:R~Sǽ!=uSԎM+uil^#Lڻiil_/ M]S#a%$cά'WR8%M쀸<8D Buns825V^sG%e}'=}>??¢bXdXn;@E%n`0JNb6bAСVY8n*T?tJY{,@Mz bY+`-w-ѸJӆmd3q]~ 8dD/|f <"aaq'`E }E[CFKge!e!=̜4{%3F?C+#ڠDˏ&3tlU.Wi}N%@nX6{,4)#̀]*E,BO*rcB՗ҨYi5vd'xjEkB0qpSsd-ˉ!<)װu|jZYl  L\%qkۯY YezVL /]ǖtQ)gf[ 1=yj+bł~Fk//B9FZMM'RjkЀ|,O}Ii _ /"P/tE䁂g)Yj#Ti1;&J]0c73C ~d,K4?Tc4mf-=+38F F3At5cZ2ONb\\_g;t }u\j,RrL WI'"!@8 6GxYtHա< 1s2`[P=CB`J3..uubjj;2~\bօ-9.2+/ H5ϿP.Ъ货@)LD~$|BrR5bNg%3fse~qG.MeG2$6H0F-r1ng"]`?s֘GLzhVsbTQv~wRQbq<<yek[* H!;-@w$Ѝk;6& E#lWa~g8t[ko21:gGaDBr<0sLJQFG"(__LJ;vk9}TE&ɵ.KS> jCHZ$1UޠxGnlƾN-YX\~Ñ"QVv|#_iӂeۉ6a&а݊ 䩭.u5&ji*Sۑ00aMVOeʐJ3x& U'5 2)+!jVH%] "^"C_w]&]f9,/etaR:0$6lwYxy'h^%լIyZTdOpbON28E|E!+W)=pb<9'u/<9 w ІĠMRQbڸ xѹa(vE-ܗayIv2+-R>S}i|2R9&wH2`X*l}]!r5(,LC; A"?%AP:6G'u ' eʇyQ dD͘\E5xцW+F~}sGw^Gk8#9bjKz,&'sPL@+[jtĻUcٸ*b-jޢi;߽ʪ,I}f>]n\|Lc$e~\MN?o'c8JO).uYs`D0~ڶՑ<8Iēu&bu!L1#iȲ(FqR/M_\߹k,5\wowrwU! alv KUjRh}~!}=> 5:-v;`ޟW{:l'EWKK;4ټl@IKIp@%t('kZgC Qy6 \)X*,NIefv`<Ȉ72W{  Ї ;>F~Hr$ϜH2.PS&W xd=4K+>od!Sq7O;ZIdQ(.n8+g_<=.(qq씒X.IRpŮKa8 70cX#ḧ́^)[$At&@6-ŧ|Gl//毝`ٴAT.\Uteʚ|hTۀ -6sGjPpf\*Awѡ{6ܭ;NV MUk/,(pk(p0"3jx;ߢa7+bo΄94J|*䙇^pA`][˭[p/DxU-2Xy( ΋vdl}yHzGAa39":;qѴS$ʫƄwl }OoxߣlT{mDn2*Fh}YŠ-w\J~kS#YlGk>n}N)oD|) lwδғ@ZknPp\ʄ栄!f icz GxGV;>M!g@4# NbٱkY$=1'C&ýQhZcFSSR;6ɐ7n`8p%#˴faei,҂,фA35"OTr,>Gg=l/4UkCiv0/x^I5BQb 3bXՋ7Uf({$̑wYijM pLCP%.U'mWXF`H~?nq1s7ї>;Ws7>qNp5X"oQ&G?ukA-p ;r#a^IYvF/Z)\ճ7ѵ~˕8 mK<# U,ʊedEMfbA`I;]gL:m(XR}JyىI)TsD$~I<ȿa }Y C[[ܙ9=dWP4|_48χ$5esXQxXDFO\etBG>(zcﬨz`d;BX9?f|@"j 3&kϋM eC٢]K|(T Ak}xr<Gfvu0u}NL0sQ{GI ȉۿ. M Ly-Hou@5j+4;0G/(S3Ƿ"^.SO 4/TehYg'Y}T\jkgX,'-w++R{dG9с hxQ'Dhe!Od`(m,K/H3G_ ֆUINs(j{Q `mRr7$R(x||ðR+lM˪ A dJPh s,9 Kv$$ '}GL*:FqEdHR*3&+5rw|^̬Q|Gt)70OC#2u|CS54v-5i+m3m!I')pW{ZRsq7pbo>.o$d' 1o_1f}/n[Xa˜$Q mRkRP 鏡˙Xi:P\ k'II.!hzWy1ax<@׼4tsãq:nqFa;C8225eh["oqbk.JQidHA zt`"VTX_rЀ͹SLhx:#9.r4-Γ+3k+D)v{l1VfݞZ5IGth" VȈ- ST4uf+$01m -.Ax2JJׅ!_Z &!DžWx{0 ΊN D` i]=J]VDve"ljQ$g^#Y\ J,N|x! j]b"~V|m!$V̹3!7|3w>UCV)JWv`":0OgfG4(rE$^߉VU^`2 *b^ .; ,wO+x,# TNಏ9M^0̼yK:-zl(/yʐo^nk5ژF8Zڲ =NnXu קݏ|p YJvJ(qA<̼2rԱ x rGRhz9CSv$;Fx xIa4PHXPwmeеa"M 鋾kG xrf ͂>O`F&ms뙆Hܯzk*9~ 7I+dK_/37Ugu3e%?:|sX6 G;%XMXcc 4LbyH 롙F{.<ߓN ٹ xpT?1-R~LZi ݩ+O\Y_kܭ5.).#{4ϊFRoiwL'>軫f6 MbyaO.J +"4F*}\~J}Մv71ڞ9 +Ɏ&64. PY/]nfNԩU~L+áS*656@vdI)62S6B>j[5ZG=ľw-~N+A߼eh B=PlzGp$:6 ľÔ&3qxOUY'njR}nڦ~J'ۆ𚫂b ذŠCVY}eqch1m?;l:,U K۲פJ:7 7 9;ۍ(LN+ERdwlO6~u;J7yfɓ LxhJh=UdH$۳u"y04v+I+y9&آ, Pne,trY(OdMܽKlTEYi \ 3DKL>Nc91˧R}ٲM*0ZfLOgb] :ff-xR:U (cH7D+3/8殔ngNn99}mBTy\x_ !i&p[.ėKKyeV<0)#E`1PXB}Dq:>MFe{ Ik<0濒)!o q+->RAiATjtKA9N{~N"/ >(e)QEH=?fQ:6Jb]P `|Ed) /{,:`.+%hinٻ_?юK"DG41MiudxogZ1:\\c.fĸVS [3ᄉ37Uy~h[nW\/rS\7cE E|e{vp<Ǿ+YNƹj$6iݩv0o* rQoQ ߝb.N}XwJF@/k\/ck0 Ԫ\+[c'"S9SX\SAVypqcu۾W㗋l p0Z." ă $kS;{A*RIf_x:]bt3)E`[1ŗ79a5LW@ˏ=Ըģ#P$rc4?˸Ao,6FJ&-%u+A6jSӉGoTI0H}>7 e< Q}x[i;TY5z }^y\Ca0$F4$_-q3Gb]AnB~]]<ƇF|GIZ # g_QaTs۰LҵCS=Jfgd/ fStޡlb8g.b$TNzv+~$Տ¨y!c1NDfޠ݂-K?" >׭  ܀=>ƵFjXȪAAdZa۱>+2K<ʃYu8Dn pwNp<Yi3%m[0blgH;O@__{(-W&AѣGcB 9tM4ETtF$˄4u2Ƃw;T,Bbl豧F~[XcF.3%AUi9{±8 MGõWWzͧތ{*qfV I!%[xmZCz'G\.Dt/nE,E!~;NZ3.)$%}XN7(xmc,6g z69V=~2xMa[/kC-jσ?6JF&n/Oy-V}=zCzY!/S-a0R?Lz$-{1?Ҙ)tnT7R{2ޢ:JIHr7u!o%<Ӣ>mfe80Bͤkh*%r("IbzՆe1hKgG3 /tϊ6BÝjq*;vW&/t[q;Vi6 w"qV\g2@+8SX92 \Q>+;+ϫIkIu>貙sfbBkQo>5zfaE P:BJo=ȯw]pW8"M./{筼>{[ՈJM$"r_@)FWB!&3{0oQ(џvVϓƷUI^˳gt5TMD* C>^!IVNE  ?+~ku-+`JXV^0s_S#M^z@ե$[aFe)„)wsc| G~߶6;='ucV /E!;V爃C{s5 -L+]|[R@MWz65A v3Iug^#P_\0  e& <vԅrEѲCB{9W% N;"AܡiAn# y3rgRZS1&m*WДw+$SwqAohdLQ!h2AT6[(|2GM)bfE)d03G Ch`JQd$ 2/O 7Hzvo7<$s$|N6 _QnC"+dYjonc801[M꧔YBP;t0 J~$W if![**~ſVՔ/-֑E[Rl? KƅN}&$k=Qϩkԧo[" Ŕm$x ʢ޴^̼w"JBH{aG v,irYqP١86- OQ!u>A0B Ad a%.]P*vZ\|]G$ |k@^YQt}ek7ZAys&msZy6S<~qڻYt>pGwt48ˋm+gJ^>a(`Rt9c5a5N&TxL F2qJ7rl̗y^/) J*!@K梪Ȼ,WGbֿXK KŞP))N&۟btHBfhd`B[4}E71l $ 2&9ZÄn$?2 yČlO`E;)^/w|\"ܗ]h_hS> 3\FD_e<3_X0(. XR}w <„o66Ʀ'q_CסDW%;xT@4<4ַr FY4% wYnRP^ }t]TĆV}>lq,gZe:ΥpGŠo|X A:@7@7g׬?R#ǨP :3dDI,V\M]F7s9s5_m\zjjY% k8E͔=l{ PRKRLmrӮ7{)HЇB1LCϡW \HD]&*21KRrAW(KڝjC spy(Ldg T]FMeNn6} 9\EEL~A^c5\l8oIs%\ٹJ $T.9wSѕ@dN)4)D!>kA i!33ZgZ CaF[SPAÐ׻T{&w7QH9w̱yKnŸ:IqEص=k{tX&ѫտvF,8,)njZwԦC|j9QAJZz8VQ ^!ZdYfԂZAp{|hq݃|z- {h87hwXO߀, %Ux3:YXΔG I\5 4qŗ-/<*ZA@7ŜdԔ|UPj(k 6=[D!mozYJ P#8-BJٛLkbMWQ7rjeU+cq$쏱CrÞ/Jz=Q7< J2}J^bQZNW#zqԆ/C]k.&nWt BcB)} C*@Ӳ 6be暶 n߯aK#dT`_M\[SZUo:=UWM=&,wKܒYNȕ` a@7ԓ*hqtm^6o֦!Q_(!^˞g#Nl_!(6iU0J,ߤ1m!{^dx.LzHew|R28/'3ȼ02&)9OF*t8Fλ0LJ~fP1Jn&$F2"u57[tX#&|P뗘 He#=}{<F9W Ӱ4rU&w\+Z U1jtD+ȷ'y=k(!x2U-ʌAOM7~3L?o9@[e 6-5^(#hBN/iwbi(v˽ t:Nc%<iT a4dT]ɤ'눿C48ɲDfZ.'DsGf5mpه4+ 8Ƅ-@n_ɽ BdSo>oZW4ߴ^Bais/E:+ Y4!ʔoMg>sr1m]|fuj͞Q~z,S[?#IPyo|%:ast1B 7;1a5K,ߪ-a!v)@ڧͩKC }ncX7 Zv@TPc*97@]CšVAhYPؐl-(_ҙ&<.Dv#qrz">:0_6۫eC _a9򯓉(Wģqko7op5{ϡG3)VaUNz*]G -wQf9sm6P ƨ_ݭHDK0h,h1/ }WԀ+| ]PL]47uG(: 65Kwe5m]qE\|Y-llgT.xC:Q,'Qbӷ.F7sKkQܠ%`K.df}>G5'Eok "ބJŝl W;)W߁^^e#'$)~MyJV*ZU!nljNּzpYUw\7H0GJާAlW}`a#i?XiP8@$)W5'$D(c: N_ڟc670]eŒO?S%8nzwt(J =g6jj@~6 t {q7'A=}^J_W:pBjA]%GY3rBluLN, ҽ]HSyI;JJ9d;U+_x^NV$FrM RrW&lD(B&# tl2vn=saQ[kÚ=ƴzAZ0ɤ徥ɐ•F"F 7ϋ<l.Ts1'PEB'yRP,RxXgDݗGh2) XQلC@)G'W4jJ. &59ȽQ|E\|_)fX?h]Ǔ樢oBcBJ냛JH u괞Ȧ@蹌fhqI B4&X$ B(>hzzZQϘ,]Fg3Vu2*+rz_yv,q7A'n8,71AeS{57e^NyJlUARWCvpNjޡ8cҲllYͯϩ񧲎 wUr"g):5hq"c9͚9~r.Y1 w :u_?S`vo"DJNN6{Z\Luz.Wy '^mJ?w? cR~=Hװp yitˈ1hJFn],t27]mGn?$- v ~,/b*ljq Yc$㍀xs|!Bن(➰ƹ]͜8\yCk=RJk\씛z%^A"oMW;K ={Mag"~؟2DG }4\sEU:K^xф?e>vGY"_J @/K%V]y+7] ۆF.RePQʈ x}d Dwz3u\Y.8̃2^rָ,$,.6:f`UyŮ :jݓ' TH+ u?f}!Ɛ#&bcx O9BgCrm>eq,3rJo\l!EeLu.Lj$`g.Q!K 25砻텢m#Ԓ.HMמBLA04? E2IābWgskaGq zh>MNvH)twRsh¶Ål lBnza@CJsX?][|'5i&\Rq8~'jqf*#,d~\@]'){2<\t4%D.{L^}9>`jjvl r*!ڎ \]Svp-e[ֿb|g-TE-PW|*M0dаP2UpEY{ ] *(V|[8Ł-emA0N"]  ln ε2'tZ[z"ĨJvfdXY?´B3ϭU>Pކq[,dζqVLxbCQrqf|#ge2`Tˬ?騳(Qd;7lSoILaL*1A%C:a% @cX r.Vhgh_n-֨K]VD!/9U*: J竇,a#E}h<=4˞hܛ#k[֮2 7SgS7<=dRHRnRd #_dGW{pFB;ؐiĹ?8JPy:+Ntdm+azCGa&iyٜەH!e--"=d rܣMZ #o͔b7fj?C5־Yk߿KX 6-X'o|*.NM ]xf]̅:KhӟQ%'vZEӈO4MғOT^#{P[.T I, H=WΥ!\,6߷aQ\b洭Dw[{ !^i2FG`SB:m[e\Su_.0I!^j9XI9b;Wl~B IsF1\uQt~=>-Y A'[OpbB4ny,Q,НR߿O~jU,CmNfLJ ? /Ȟ2N82Lq ڳu*wHe%d(l@l`Si[hsuDf <_HՀ4  {sZKR0yL^;@參%@u$;6@#U 㲟K9Gq8"%M»slp@"Zt ,8X;3{2C^ h(U}I;4^A*^)hV7&?"m{5v>xex<=~n5C(Ks"j씂jEܕTryYaGk[,F궡ҟ& @ 1 OKdO)F=+hQk[y nM&<5 #JlV_<ϯya2>6Za>Hup& ufQ~EVdnFܔ\pUܿhW,*(M.fho߭y|- %~18+g`)!(>u&D0]!VHBi{%I z85vZܫ\5|PRqjΜHw por)n Y#xBA ӻZA,r8yr.e=/@2l;'/C*Ma1*vy?@ -!28o{Ώ|+Dyz>-tM)wT-֬Ƥ߮ _-ʊ6 4v{(qE4ʝ}i`Vx͑f&W ĂÛ 2>CkqDZDp83d!_55g 3ص8~G,&nk@pz_g(.K]fisvz6҆95tWA'W?n>㲁'ViY>5.d.4`WʜN! >-U +sK ϶ R{fKf*eT~"Wy\JS;z/xqJܻ`M#жϨ.ep€Nl[ 7RC?>;%}V5-ȅ,]2JREC51+Qn~uo6,Մ^| I:A :& P|ģ8XF nS¯W6%ֱ``:\ͬH3Jh?,Թfv_ȹ&sD̮O?9Di2~gU)!x$@CI#(YO;niEezѿ{a5[" \)ڹ8罜@mpeDMy8>~τ@G g:Ku:w)fk9>5,)kׇhJݛæ"ͥA0' -l|=I^ڮ:_\xM tvem2cŤ93JJCf6Y_'*vzb[aJ7x~<$Bru^j49\U J9*J BofWbДN:Y}P;V["x:Sh}vZX)8[konrb/$ˉgjY5tO~{wڦ' 0 ܉kJGd}Zu 9gW5̽w+ j@*˒?BqEM$!UD! tHe]@f趙T|*R.fJw%\܇gۙf-]O]#.\?P[%Fi7tG2I#9OEz!v㭹~^ Fbu hi%%l⭸خ7tDaOKG/_^,;#QZؠx6KE]B6YdsHcq*L TΟ=@C8zD3|2aLfP5XWOo-Z=>.M#Y2&F?R-Ԡѻ&Ff jL 9>--+glsj9t$!Ka)4[8ڐz^LX}ߓ1:C33w?߷ਗ਼&%䀹}v&kJEL%GQ N >?A {A5zTkleMD8QpV@Vs,I۩] OЖ9mzE*HI&FZY/^WM jt[є&1g7~cAWjdmIуĨeˣԣ@&2bׂm]ADfy0b0d-@r{+RR`DvT.L&(8Hn m+))>a`9M ʡBQl2?\ǾU vL(7Hn0A]UvQYx.rA*  lЊ#cc:.pJqAsN2֚LS㶯> 9VcX (ލs8-$B4"iWEFhc-Fy0LO9_d9cKmx(c6Ayn?/qۃx`YWj*=ֵ}îBBXb. {R^+J N^{ | bagl!!aC+Pc$oQY WG԰#C^_G͞;HXyj@6w@F La"+GD ,ߏ D?jR)Iϩ{!UԨBTo\H&b)HJޟ9zP$Am/\[jˍF 1h ~0BFuY0S@;311kgװ2Pmh1_a,9hC*NheI[*$svBZ'SѸιv& |hy)B|xX}&o{aJ7U^s vءjtfP{7]r{^_ qA*ZWf>b3  %,ā"O=~WM҈0[lpSɦmdVZo|{<^Ge<}:߶)"i*,BN7s7 ƒ#ݾe&=q#:XE6gۃ֫ ^Ώ-sgDKӅseW?+gVVڞܙqŌ7A~,VYW~X#9&I@~ iGO!Fg2eR4gfϦS3$r1Og`"Dkk&3,䅕\{!a=~} RtzvLk f2!D,r٠6.M- Q)9gRYԯtU; aX osseevOKf}(L*y#oPS>q ce`:Ӂ9Lz*M[?]g`mD[ |}Csݣ{Li%%yХco0]Ԩl(49i҇2%yHTt%+E_R<^؟NdGTnDDӪAt74}J(sd^@uJϕީ|E|'m/ :8mWP/||e nBij^ѯbEO]`ݖ2JFD._?zlfnEW< i@-c=YA8ay[ZgSS'".C4iLA6;{du؎ GZz{[f%y,~usi,TQeOGH5^.e0$zPo$Xՙѷ޷^b*4}٬&VEXVE 󚠇 J-g >Xs\oN#I,F\_0*an½xcR*J ܄ismlӐ>vLkz@ frw:ݗ|w^)m.cSrp߼r&,bzggU:]&Cx]y?͸?j#lb‘7L^Xh wNJ%!& [.#UF>ݜ`n^|w:l!݂NXTqrZj_bw_<4-PsPN 1xyUD$s:%ޖ?ϻ~wWqti3i<jn$NVS,q}/zjݨܒTqJj"7QIbelEs49}LTг[5Hi)& w PDtU&` m)N P$i}0}^UgAC2,( sWkYo/3%}spkr c?9H[fDˎti=rG+M"Р-QdI x"\'33H^~t5R"W}yecRntOt+'pj֐d5:hл]C̩+8W"){FKi+Jߢj 3Qp;<0O\F31\ Q.IޖOq5&D8Jk}۾t4H<.jׂhS{eOo1 NxzHW&I@y述2 $ k!⪸I6,: ~c(GN_Oک[s]>"7WO^S&ّiu*wx w"aJ m  YeKfKejMIs 1b8'2IfLIWG$gN(V9v,s!; ; e!FW!ND9*eąD'[6v%=R]va$dd FגQЖuks@o `Ha$&떇y %WiI ` sGSפ{1:qY«7<4i͋E{*-2.}%#0'/$WRJ s%,.71+Zd% uNԇ\ n!w }z v7eXƝk?[x[$Y,`sLxKOt(pbThM dE`|q m󑜄d)$/Nsk#p>#SuAG}e2~ .&֬,0|Kg`md1(H3B ]oxC5@vA ?g(o-;hX4bojڶZ&$aXBUVW$GLpB,?d is`oiHpr.#)A6\,Ъ?;W Ax ©jyzbgӁ}f 9 Ҙo}1I3C w8WT Ø+;'ѫ,&ܚssOoͯN{SI mmw4re*_PYъB;61g2U'ӕ J >epNܵ"}o4P`HtZ>i8v'):0R.gH+-)~a6(w7`X_Dr$|ZE= ]23 0)ƒ%~1au ԃS[sYqz:dL3v jG+:>Kl|y Դ9NNČgBڻ9cwl CUTctt0{3r׵("GQ ֣f h([nS&⠥]v\]Oյ(In(.91x Ue~5 P_.:t~C0HjoEЖ+tn'H8}qE$Ds2==ãMeyٺ(GL^O-=J]B‚#r<#΄J',(؄M=@eUËcT!Ӡ nFApի[:~O%(\ϭ%6#doBW_?mL6pn~4< F?y=ǍL2AϒYa*mVش/$s&ZF(:fRl Q *q0{n^]?|y_ eSBh@&J ֕k:;fxtmxD .sj]@ 1+ h`i/7ΨCeb$8@iy c-κ  QdVLu"LFBÉSsvA Qi#]D}=xn$k?Z/<f,\U\̠g,S> сJUԻˈ2ߌwhON61C .Nck3N1yc4>C.=~{ƺDOː s{)LϧLn%d(?J`O2-ga%  bQ*Z-*.bea~MVyN2?īahJ*>ZV0q0E j0a5piPDaݍ;DȞoۆ]Dً&#ecPZ60z\)m¿y_N\ c#fuz>_RE %Bg{^ǤW~ń3+܇g:É8g*`WO X+ V<=}^ b"_P(z$!< ޭ\hP{lV طfTRfD=!;y9?3]E\ d~ IOXO,rBփ# oǺpSTGmi<*`:OeHā"ӺqkF5`묊V VJ}%ͼ'|U9;P6Z ӢNj`&M(QX$Dfw_&7OJb394pzZ;:p{̺f s@\(%G%'IY#Q#D 6̺`̽NayW^ElEh)818LN\ҭ`8%m{2E_OWˀ'8 e"\BMuIqb4HϨ2B9XK8n؞?@G.=[ NHqݖgg *ϑ5a'F_Zhüxo S7!($fQzGlwQI XPwFkD`+s~I:I@[$g7 ql&*$tc*DP@|y~ 6>NY jvX+ל(8oR=wթ ΀Ւxb&+0ꏌ>^.$x/¡igsNI%NHkBOc|u.ߺM_RH޿ ab6I,zP)VwG]x[S Wkۄ.SzfFD16C9@u'({;W:W.s;uA @ȅ6]Z[dm bP>MƋdQ]Lڂg1 BT~;`3BBx])MFza%Zv')d4zNDM~QVA蠹DF*07c\=.-3ܩ\04-a$1ed}\`d_oͫ.Z*z}B3%9sԇS]%03jm f ح9^?!7327%.Eo7B}\jqNÚyL>ژ+黏GtlkeRCgmf/O莉TO%iZ`655=(Nd;ZM|=U-z39.9E{ `ܜ>E&>DI4UyG!Zթ&- BO _V~َi߬V-^2]dP M3Sd|X\&c\ l<4a } RzcFX~asDL̦vzYyվCZu@,QU'.O~s%2r`((`jxoN# I']q=LgN]*Te р,WxAjGz:}p]؁4yG GǐjbAE&SA3}Xy2C<To6AkiZgp:¦Ҁ*Z/ZV'j{U)M臃!ZYq˛1# XIƫz1idAmcp?GaB5{V2JV̀6>d{ M{SMc/X?k`PXğ!ܲC|<Pŗ e( QL_@$>m)dܖcF1nogs j!]/fY K\ ڴ5MՕX}pG9\ɧ3Ds{ɞS8) M[pap 36ʦa_JZ >kXz7i@F0 n4h:P8o:!z) FjʓjGńڂWNQHUQWv眾D"Ɂ|['jZh%ͩAr7Ī99&塁.7_ȳk|A h43Cp.||e^(Hd gaV8@)W)eW\ڈyz`^Ͱh(M_K^߱KjH>.g^auWQ88l 4>D(54Y=A;ڪ7h>IGl6\9͞?EV $îj';Vv D6V} !FrgTbg):UFq0l \OJz56NT*{,Vk_rW09%OAr#}yȰMqNu -b-sl/'~Z TFw{Vi4P {{%:\k:-zNs<,ZqA (}/|[}ixkZ=_0X̪Xx(lkw\EXJ7$fLcyZf,)O+YNbTia`g;a} 'ooM|xOz!iW- d}Լ־ETW\9yR=!%TլiP-hu/ad_R!tl8&[K7{)ԌIDFnb鎮cO7!.OI`lU?*Pˇ10efkD CۘeM;-N*VB"us=SDDǐB5()-w+<*FD[͏]y&nDXu*! \ |oQNl=y^˶B}@FY3&ųS΁W1qa||B,S{Op@TާQ u0djQhi(p8g jChB,`0W꟞S2eƷY `8MwL~+E Ym=Ͻ{  ( |%sT#r80PG w7hgU59<S./I:?J~}՚'% u{K!]"c"Qnϴu_aya\ѱl$z՟Bjſ1O-S9FQ)AxI#Cd# zE166yĢI?ADP_V4U,CWգU;S5^QXyOg|)/"ó&߾toc_(*⬯ŴR!Y5S*pQE^kyZS1bd1p~._Zn l1a*5P 6C |:GPL2 p]K/(&{| j]ʐ_L2(|Eoz Z] 8AXAju\S_d–>s saj&6vЪ2XGʙ3 ̠V5u&}w#ѐwX5MeC,gLSἸ^hY6f]&כcz&9-OSQO$Wc:'OP^<ŸM9#zVVOspzuBigD;cdHu o܈V8D%p? ezeg{ח͒ 9WF܃;b>l4WEu?[R]XSpr0_`a(-b|A`QQanno +/-o [9n' "~;T eB^غ< u}A@r<)kԫļI!Oa˵9-IrO>.cS }v-@8UdlowW.TiJY'eHG6 ;uR:ԮiȐr"Zڪ;ߴAjk('ܧK7 ?"R9^Čswo o B E{éG0晿j Ra 攜B3afV)ucC/>QV$Pb_XICw6<:d17N2(]6"HH5k9$p aѰw0EO"p(Xm^ذ?QXt&IRM] gU|FXȷbsZ}&QCt$,JsW{HQv;iWGJ3AT\!с AWfcM̾Qj,z9=wnG}味iDGUp3858×@j7ˢP꺡+Z*+@P *)XG0a0%{T [5ڨ.62V+Ҹ29 ~ЇM >])ӭZY_?O} ekme5{k\]dtnVnUm6R ?tN:f?%fl4ā:s‡Ě!-EI \pk/ruPbυE#))fTx{ۮڜa(;seFkYtRZ' Nx+ˑ+ĴU9W O]pF}zﺎ^ V 2.1`x"[T0uf<@"3/-21_5 6/g{spԛ&+ ׀P!D^% .eYû@.rx9.{Y ƛJx URhqf?J-bg}9eq jQj Lr6 !2+HԖ' :99`0QDB+ caao8RkU-,zk(ihuƱkd6$iAs<"@q7lfL]4 ="IPW;eZ3[$fϼ9,FK _TO[¾0V,1bU8fB.H]+?Oȑ܃sg‡&xŊãE;>`)g@tsv+2RQ3&@zA`k^`x»l6Z)0j42-rs磎3}R T[ Pn鑫 @ís/4tҒ)5*˾ 1%M2 J@4=oBo\{qECاb28]GZǸ+"f-)s2ߤKEz6O56E>xI` *SuF鶴"Pqݕix@w&J]ӃWvK=T?DvISҪVyAVJdrm:pkboH$lC_/}qwk]R*yQX6,_.AB-U)ĵd&8&RiaG x}acmC^!=චl@4]\nh #_ފ*YpYB ׾yjJ5D޸-M?7Ri) qUzH[O !vМ{u_ڊHǗϋmG]4\Þ JPN.0\x>ƊEƤ5տ+,?\SQ8'ᯛI+}m~BԤ{UA-0^b~JTFKx= y01X؇.VZġTOAnX*0D<F.OpmE[Xg۲F(+Nd,,TphZLv*ZFuڟ_:z#}1Zdx` !2 X>ʰ].*72~*яjJRy:3e[C \0K]7-;SaZׄ ōNvͰy Mn*5)7^" (ft<&a{`|  ;x8Myc44E&g'}!8+ݧpΌlZKɧ?@VYbe_X? />5-a!:bwe-J?h{'$EcLpRf2ث3oq?3TNP^Ӗ۽7ՀwVO,dph)u=V̷MXoR]rR-*b j>]suoX/t>ݚWϛo{;MqNtշMJRY7zo5}s9cӽ{UYI]4L**,:Es/5} :Ϭ|$Q?&Sv?DwxH~_x"ҿ7 \n%]m}r៌N<)sF}A3TRtUݛ+ ^OгY@Q-Ϭ[;dH55P(ؘLvIÀfhk#򤅧S3Μ`)_826`nU./ Jn")iH÷{B`hOSwBj:w?M?>BXbQ3"[I#x(`9Y8U".̢H^leDS!s7g}c=N5u8_w@.\Ak:prjp+Yr!ӣG_J WhŵbA m8'ebIYr;zR\ N9)X%`i:0 gmCK5'EU{npcSph;"p!ilaa Q~F ++F$!v]jH;~m8Sح `ƕdumTK]0 %qMe }D1Mz0F% 2{8T Β"8 C X]ZɳqjXއ=Y17jab7qBNjWmF+ep%\7،:\x֖(S?vIi+S¢((D`NK b 9-m9r%@a,EHp잰G:}%D<ε AbjP?u+z&6/KmxG6~OE=)[SeiC~]r+y s8`k]ȷp9EA @rg JGuR8 =&A'*a}$%$ja^+33!TtF(Ew%]jkD't媨+M> mMZm3HrOg87(Orɾ7 /i7Dvj/xŌ'W8KA\3%U&?`QPtqeX*!V[n;~l͙j|{!R`Vj+3e1nJ }ei-pGh?/jg(+X nD +do6žNUTYч/%GP8ACү=WFgvz|@S g(tnyoq$v<:tq1#$UFAp>m`GߌhM{ܥ#9`&8HSvFu9rh%h u^f\m;AD{t1(]p=W½cѦ`xgWxP iq;ZKlD j+15ҜA\d>^v%<UE6?Yu +ևP;dZ/b̚='V h402>A)XH%U\ Ъ`St|_l/8Ⳟ*J& ?;T(i:hrOh6+Z8X)gF)*vfX7Ar 5#%JM^ \F|F9C>1m30C7 q/!clgY A~K'_Ϡ4l{tm9F" n}!+Epyp,{\PK6t\;Z)[̢,#-]2Z1Nz_h'a!3aawρįgAd걷Ѱvuh󏂝L̓kNl0D6jTWHa%˶0_e!~̑2]F2xyjWI"Μu <&3 uȯ hč2G ^dOߦwi;\E0AHaIdXoAN1Uc kdflL5(P+lJtқeTciLoA<<5q+ ls|FC޾\CG̃']gh7cc/X1pZNLGAKZœ׵v[\49θE~$G% GÉUDyYj疛,@e[X,[RaH{k:-Mf>YxTƳW"퐓L{c{g%7=!aJwM3BuDR}$r?Y)cqy hsH,fdl|\|a,>OrdsEfL3L2AQv8{n ]|Zv =ܗa!*i1봫[wxN&y:nˊ1^*MDELΘO=s{+'mخv@NYʹO4{(<?πA^xrLG5Dfs9_c1l%.ɟήi3T1dVBff8J W ٙ%+Jpga[5smQc'JQ8sU.zo?Zٷc=l$NMnR+Z`1 85~;8.!Iy c\ଁN%eD~)x/;/p dMH@#idFݏCJ/5}khkdd:hX ZVj ,{]H5UAi%#+]Dž߆6 2CFB<N1TGљѴ ?]@%٪>i'?-R:0Z g?KM\xGT2 .ʂʖbFl(R:9)S ?v)1`V d=PfM4gw/#x(homޫ7\r$mU?,+;.HqZyU-w[ rTk.{viD˿YOnL;Gos|G>쒳$`ZZHqj)S%6?~cϬu(Խ'|r4ee;vjYCI?I{xX !,$n?kriu В!m(MebxAlEg< Qp:#2=k9ӱ,RwOJ"DZ|n<nՏ:)7tVK}1,Ƹ36+-$`NN˳a7 {X۵PɦPWnd*T̍v1aî4բCނOUf%H4W?+D B%[#IJSt>fIEf=pAQ*-U eHOX]̻'}>ypGV{U aMa+0:[-FiAR%ڂG-چ Wz q8mb:d24 \L6b}SרM5r@lfRK5I6[ "q3c(rjm%$,w cWAN Z61F/뷂H*Q?&)i( Р  +>+FnUK5?3?P\J;F' Y zA !"ogY`|$V NS kYQF+ԧo^`Ym M"?^>m`'פn(3TtXa#Z73BXa wٗT?#WQJ_e~wq.˒_fX۷B8B)?L sSظ f ]BxVLVK#G>#̾rGtXjWUV'p gy.b!f|O1#uT`bÊk#<)O9  %kkXvsk.@_!Bgh' Z}aE8ZqHMҸlR0j&Z4kq?=\+>\IkamhJfV2,.qxZh 酻2 Vl.Rau0MfinE6hD4A͏c:P}Ѳ[ˏ9lUF)l8>!/ @$]Zv;0сEl8:g0 8ȑr/fQu"Ji^br¯(/w 4 V;Q'@I hS0\+dX.v)` %Ym=vGôyNSU+j4?F$'i|ʷu%`W'Ff*7W9W` b3Wzȓ,M\:G'sMXIѲ4i<:1$C)6ZY9-HWǤl/s5 ƩCoo4 ݋NȜ &ĕQRI-ߡ~oR"3`2e}"p7SI\-}e1?UĤW+ׄMC2>e@X/Z|DCn4Q΄*(mNu~M|+OÀCNdk#,lNJchFǷ V>fB֣.7lm5=X|H;_J %Rx]2_kGͶ):b҃3 Y|x.|>,8ApDsJ'Н)5Nju!*wr1w3U"<U:\hx" 7TeA"HvwXZ.>`=KxDnwͣUQTyݸAƗC[ h&"]Br\pUb ˆ:xJDSUy/ UXjor~C(TmOj/e䒯69bbtf8͜n兀PU ũaA|i8*qeS۬m]0l 2 \L9wB=I ^&Bx'1:>4h.MGJ(V-yzvɐ;:K-9∨_1Ҝzd).q'Hc,c/.rDfT8<.xҼr?^p}'w_Yh:rrBk1[۞X_Q+ pO0"sib$.OCnf\gA,t- RWŕD :92L9d+c(&Ɗt77=ļ!M(.3~OC&KϣpzD wVwi`QEТw Jaj0FeZD hȾmuAQ:yR&QgVPBں k2-` F/ cm"Oe: <6~G_M 5X-Ke0D`]M{FUל1Vk'I[rR| 0A#8a[a%f4 1+Pt^+)d/{^cr#;|({~s^$ZmЉeN\ -Rͅ\uDs]"7r5[b/[tr? ïӉ?Z%IM V_E{=G-`0)=e}J)~z@ #/;D GTʶzNb^|=v;7J-{y/™ߙHBsޠXS,g$$h/}ar[܊E^$BX*3H% ŃSFGޮ['/љo xkJR+ ?'g&CGsU{dݎNt ɛ[Wqηd8tH~}Cq+FDӲmA/%r2)я3a/Tpe sH~T0L" ;Fa}\({"#M3W a ~{PNXap1WRKƥ>h4F]J8:}@T4[ߠ9"= Q78>bP@܁ѝ{x򒴍G%v9W*mfx kK@ʹ8e@\BQ4fPi_(qaG9g<R9}¢Iwc5t*RlyXˮk^GeN)H  =GnnӸîk'5D"9^k d?c"!|' ^fgiȷ9NY(4ڔ8wȼ{ktaBrp͔cv7#.4qn3 .dFtl\պpٺ][ԻD>5_Н~ ]|``K[lK=-Ep ~ߡ)QQQuXWѤ$%u*\Nt SwZ[>#?ƺ{'TE:p#y->sxL(+@'wa{H{VZc+5LsK=BP_D?%=y#f6N SDm_dpɕn[Uv֘ܫ6PL [+4%'Ln݊.#T4-4jnU g_p3Xo( y_CD-=;u`1fڼ:V0 †;5(v$Zz6uW7Zvkݎ152xX֢رhvM ; RPEšn'nVf@g1fe~e& G@}RttMx`-U-%*h65};׽]Cjh\w OL6,əyRG RZCVK N%,3^ǧpZPPVwA>gWGOTγ($vrD}9DDώ7!$=wu>`ۣ^SG7'譢d7_zd xrb ¸b*,ՆG#m6$(?ǧ0<ÿMF!6 آ(]`#,POՃ(~i#v̪G34,dM' tf6X.'eo@-hv(, Ɣ13 ghi[JN/r4FOub=ыwi{I#@9eŻ\SS“zNu6!9 #HmHM,L@|*qp}δ OkߏhBo4W};#r=Rl/y-$nĮBGyD[9{wf⣖s`4.VkCeE=zdt SaYc?UK R/p꣛lQݟ)?>NKƓ$Ew#mH׳*ox[eZ!ZP~X/i.Տ)y5OtS!)FZCVp~ds:Q2cV'cr7n|-ڊ\b!j>Fzuߣx}-i7{K쌽rW뵽e~g#@7DXu.Lx-\Uu٨=| ןJEiknb!S)i[WαamrNu_ oɸV,iH' h?Z.Y ayU nT6룆q\k.:N=ԀfcsaqGΔtHWH[8vI/425%F(u}Vкm=71?DCe27B<8T!V6݃RCq}+OKdQ3<8*T[:v@#;, x0}D1YW8iY $d %PYw &;Sl1;Dd|gE*J Jy^(#eZVQxΐٽު\QZcr3I >RZ#h*6GyH[e3A]du_B6W-[u|s>Q=ҢgڮGےFB MxA.m+"&!6{Vl}0^⹔| #iHT_j,+VY;v",)һg1iHfBD7GaA+7rhg+DO â#Pf^/H&e$yDZWK6^|{ˆټ _~1^ )s~uD:jrqK1Ie0[x}}O7Ă8`?(y9aRfLZ@Gd՞{&(ɱ+$[,DĀK57@?9A.?`ͪ@ kʍشNS%a&A4 OD-WFGp [)h@HG! 8gט𻗳4 ,*fPYY C}Z^d9e/.T)Qq.0c6o/x}6Xq#ȫˤ|`/Qj/'Yn~Q&9cy8GnLWP}ۛP/~^ UW tkOR2,/6?D0hpD~eqq= ̠XNvri$>-= BK㉯Nzڝ@ Bk6Gg\ܸDY7C6!F2 E)):_6$MN@R!2 $ <<-)[X}N_K > 8C3SM Vt&zq8p1#Ӝh(F>[ 0vts ms7^°^ʫar$ǔYKhh& _>5F;<>ɷSf쾊DW::B׍&%\K>{74[,h,+hOHSno璀:Sqjd+]$gQxHjg֡nhFk/FFfJzݢr*_DyiNO"=[n$#[lwt!e[$ CmṼR2􎰫`XŝPBLv;\ӛ.sy;~qoRk?3uf91BN|b-aLLԋ4_itiO NVUiŐJ ]iUmTx12 +?h9Jr]N3ݩғS(1Wb__S|ms+$>n%LĪA85 Hk ¬e*_&Nuƅ3a1ї-@&BH_&+ڽ9cՁ8|\h$ED2{9-0G4+,ݮYoi|䵌wJP2IŶ肁Ayth+ cOl 8~-U:spu7~F,LY!g[/n4ڋhŷ*" j2N1V()& [Ndu u =` KsCqK9I%mԕʳ)*הɪ ngܧV^~PڋIWH RU'HkL~\$iGG1o~Ёڜg6FQkzM,c- (?8X9ޟ?aUWwyDzVW:Φ{>xu@[FӚ>)4Rҭ[R8lp9˺.>|?堔!({AĤ9a7+yy- :!0|ziQp\9^6^tS{U*9.^ݑnRW1jw0P[oMc&|^U9 T,'% ؍WĜxAEh<0J/[Ǭ?Kո/)ydJR Gec:=aiQ1ڽpۉe9[PPX)m->#A6}8h۳'vHJzԨ# $ctLS~VJpiZ(Hjo2x ޛ[6߶3#>[G+aUn#䔋Hgؚ#uL1w~궏qV{2ZjLl U0v vH\E~dq!\`#`_PЙaw5+Gm[觸OjZ}%,+mj˸YeYpMG| 1Pl_c(0/O̒CptاtGա6fR%;)̸޷rO1Q"f.dfwMXz$M/XK+Bo>>ٙzEzKd(節XTSq&4pޥnMZEC~7*Hi>S ΐIu3L5VgUyk>2(#AI xǨt)8b:8^$hܹ~%Z$mg7f7d*%l{gAMp&Dq d=I_MżXVӓ,sxm\B'zRiAJ\e"G?i4/P>i^ m.,#ӍF-a\<-MozW?zk>ꙐCY_%`[+\9q%: G¬N7QJ*C@>150#3ׁe.DwAͩY?rygptk NyPsQ(\@x s!t8jb `!`y;p sS()1bAbpe2/Ն6hX1<g0O)hvDpm#7pG"TKy9.{ep쐄\ƬIDkBK/`~ c34 r~V@EUChm{ϦE{d1/Sˠ ߏf/魼%ӿ#KQ[R}t*/>f6,PN n`Mvz :X2><erj#T+&+ - :ZN}Bq@]th-Xw6Ľt( Xnui^$YU}wg=c%vxHu4X^X5 sQ4n/{EvP!>оqpq@z]XeEe7V䧍U=E95}P1 Ӫ-/gʀ de{du,$O 6c+ްf]n Sg U2wWLe?m,ۥP\&jLˌ$sT&`~< #C,cc=HBe=5jCcf+R5K׌yq::/^ zukXPLî:n|yI7p?H0E%) >@Sl^L={e|oA߅FMOJJ[Xztt>x9j,5DwH] ;I|&m>oe!n٩ˎ)y}CD"amhG_NIe%.rn Z~tG  o+6aMYG!$aK q+s\R 7]>j%6:/ue=I^ e${ :d:wÓmjI@bqWsTOkn]7)nv9'mTk0V×bUy rў³TP@Ba| ],$JZ'H" ϞۈjՕGyUBX pԁ4~Vˑ !R|L[SN+F0ggw`QUޱ9}YѓDױUpMC |i@+$m$EkV.{;tV̈́?ɝJ ~7ax2cU=JfGc42ɓ%O P[psfH(&"t^ܦ-Z\QcJJ!1FteV4n^DHD:;ըƹЀ!fjt~6tlI6&1xj3Y0!=q9+V"2j+7i?`ꪬHWg';@h{+`u5%/hu6UEu}[`܄h HрEW;Ȑ̩||4ye ; T7mT]T&sXI~"s  KtJbUKd/@IN~‡L*5s~JC1eB!c<ĕ${-LgҲ¤L}Ȏ$bںS2\P}K@MaE~{U,ԡe w1^oHЃHYnkDl}mS!}qCN"Y3"(r!+k)]{--[8Afg(̱7{3NV#<'|{6nuylZ 4ӞUSȢ1oKpDحa$iD '"֊)v~iuRr3)9ܠ@ٺrܗ3rgJ) 1hR.; Zi̴Ure,.˳Rj^IoJCE7xqkv ޻)X<[b _ft9]8 v:cs\0Ir Xx_߬zC^ђBDc$Hӷ! raw1MD ^R;ŭJQ/0=}ߚo8pW/S/UC]|cb!29Se<`m(r,te'G;|/*U{@ M98D=8(酈/ؔ[!#$b̵:E\hC;%!/$}X&GL8|RqLNHk}$.h7w2[\m0&i>N? 74z>GTJ}MWcxhK83@f_ `"25M҆N&fْGrT#WwbbtyyXZA_|O} O}}.ntS39 <Ͱ)q"X>!nv=rTQ`\ԧTe! ja n8#uCj3݂Y[@&P^躛1VVdHF]ݱ9ىi%q򶘄.Tء ʝi)W|c8:Tn_x@if4BlôiMC'oK95˹xz% "Ipu1h3qij74F:Ⳟet؜1C/:XY1y6Xukl=x/lȍraY {֏1*y|&N::<3LCR<6mbofH-Z^YtYj!{.7G;kr5MB:9n|гC!>VwBPe탕wcg 4LV%nuz4Ӆ NM(^^n!בm҄N۬NkDЄFlǮ:h$~: >,u4?A6ݣ<۩#@G x}pvEJܐH4aSa$Ž ׫?x:ѸfF\W.k3.9ib7A.]?:8@m gT#Zh&d~|9ƪԜݍЎ_),\/Tf$ W9rK[ܬ6p8{Pl T3C>[Ҭr:~nˍhdRX\ڃfַ", ¸`]Q 3)v$8.<ՎT7.Ún~?Z^+`dr/SnPll 1_KΙ#!7zWZG= 't&7F)gOqG 뚿%̏ZNv₟qG. KLs4v>+! eX$̚fg(kL4|)%8# j@3*]J ya{gsKPWo5ͮgW㓐6KC*0/q}WM Vj'<xߌ4`:A $fS fJuV=UjEo@ǀcW>|Ē"`̄'=W$tR?"LкU"|r牵@) C@;#(7(FĒ/ݶjq~ g+sٵچ!AcW⡒&Ft >Zc]5 Af B_| s6(Vzp.l&f"榡 h}9EU"#i5@Y$JLg^CXL@1Aim6(D@%:\Is¹XBگnRo+_vyY24B7?SaRZŅm(/4fXͽ +>$(ֻ',2>!C&s9 A8!<׵bs/,8?n0i!7|n{H^Ȝha8'*߇%)Ft֋ޠ9@^pojk(h—*@}P=8Zp183/;qS`LA2:'tsI'(vn}HX'ҞSD)|u=dh$)Tu;xu[e:[ 5IUdTqIIc62JEi=~s)Fjֽd+vWqͪf-J9D?i1oei o] QA?НJns=&{j1KPz5ИŻLF~ 'bwNn'9GٽIC9hyn>zTDXجCFܹkFO7X Y &_+>ąهk~:i!XPuY8NoT|dۡraG)c c(~2`ҕBmVWnYSN>-d5arľXVF ~[GzP)U BY`d{Y8pa2_;Ԋ^6_MqQʕY~Ӆ- 6-pX{J?F/()T.%~I˺;*?`؂YL?[2U3 9_ZVgT-f_6.Iˊ1M$+h-Dx(Ȼޭ_4+gpa >"`( v$σJ zy?IhSwĘ}+͈ly Gt{eTF X_AKe_K!.N)p.B[γY㳠 ґ!*hNE´t5bERN$Qt)-M.=pgn͆~r H^>l.p)nOY$hYȲ1$H@4YM#B9؀;|q;CUk7׆1EХ'tqa=7mD{a ϙx pjcmXft>Pg:9I.s)( MZ;+3KY%B=GqΜg1"ԇ>w<: %1$df㦉bfZ]glK̨.uzMX S~6S'{LϞKI>Q)ʞIF62)AD?(.PsU.]C2$sSz6y\xQr? Mx_+?N (-ӤZaz՘chUR~jng˳-l9e,7(3"Hri˹h6!<ЌT2= ;ݹZ0~M"B͎4iL\2]UNշnUnNb816MU  >ǚʏ#ۧH[3KKlǔ-f/4m4_* oNtS8/ M`g7K#hT&y"򢤶oxIQ`B,i^^{aڱlFiIL w:S`.o]Rcq1*V#S1}Ɂc_sr&5fhvMeI^'Bt{5zcp` 0 t$Cʭ:Z4FǸW'E@s@WvZZ~UZ^ '+ &oN:EHܨ%N$"8{P*$4r+>g.kč\_NiPD<0r2]moTn<^fCn?0T!Z;es93[|3rmp+VyL^Xș 27Nfy˻M a Nپ2=˖vkg]5x=,^)˹'䍰}'D7F\Qb‰S*+?;7YO _)P,6_샫ʱ n-zk9 >aKb,~-mM{˕\F z_w6Q+(@*ۙjYOYH`qj4M ?%r}\m *w|xGF>W+/{"\7&:|Pk9uaz8To ǜ[u;1ɇ!Br6?N*6

  1. oi%CqDY|1:0{ٔwVP2Y@),vPܦ&1H%$UawvH,6cMS3H˵R Wţ($o `ZmЅ媱/r4FJi"k2aƋAϵb\₢Qб0? jqEal˘c6^kCjUoj<$W91FGH?8L1-א9J{Evh2,u?r{2x5FǸJ۲.7\Y§%/bk$Al N?W3JtqE &N 7lu%{`#cՠGH\HAA9(8KWXTə`1Ru=xb 9@ FGT_ 3Pg5LKL<4տ$ ^Uß/~M\vJS5E0Mo71VUB.x7dߜ+݊u#f^PŧY R{xSƗ&f7o0o՜cúyR.斠z rܯ SOWGUMl|E/j#\sح=^5.MY!cѶɤ:s8Z"%PPY Ύ6)HA Bhcnp͋)?W=gnIB{xcRvH ) @ и!_;"}w%w$Jps#bi?q'DCM6vUipQ/`Ʀ*U<}X]ĴGptkmWezV18pjD JahFyx%D t٦g./>թ ⽎(}:Z%N[rs 0Dk|P)\zbԣK͙AkSRxi,d,( sww~AI- [TjruK<ņSh"q1(b[-ø;^`gޘcCD-7-5~G":# KO gI1fw,R0K1;utYsUizÍxcEi-]7o?KOH;Ѕ@֍;+ fCbQJ6aFYf?P'F_q?& S=(?L:!#n` jYEQpc*xD!̰ߧ0'99}KFv o! .#4q_4 +)^u,9ͩ'Bn =QFmF#Ea;өw:-9dqc1!|:lN[+ea[iB+,p5翘Roʙcηб[{5G3/Vy.#׋T14d]oțO: SV.b89#\1DyG,@H崧6!wr+-;qOmh)ᭈ, p#URc ?U*~P22kcrZ$x.t@ ~g=hz0s)/kd00ir< U@ g36KKS!\E͊rg>~DRZR=M|p uS <(`}cPVa-wrz9>]D_%y[8GbD|c$K]_0W+Tr |N R;zqXRޑz,d VZ!YXV )w "W=*w. puU!ɞ-}4cTʧ`x&w@J-E<) dޅ[8WrV+[`IWY1;h-$ Xj0|wY{\_c-d5/!E"2><1*i?Fa h馲Bf T+̿8o:D߅b IFaկf#&L &؞8٪}̇T4; /fhe"d[le^ӑvN>^[[zaԆJڭv818ɧQ%N#Cn#qZ"ɱhEBh%0uipap!uH$mo *LQ<&i`{D¯Qws$]&K_DӾ5yZ(ƒh9^"l`GJ!B[)qVL7@||j@BU9-P@dh (ojOuHCq1=Z_v#QVSL|Y yl8KĂV2>h۝NT-ʭep²j"eC꿹Kѯlז%>6M޿LLq_Zhg!Z_k}%m E" '툩8"[лc=ߥrm3K V$4DM;~U+{ϗ@>ub&zu Jy Vdm/|L zE2K ICcۡ]'wK,{t6tn\T0bY7"H)RbYbA*2 ݼkXԲO7x*~%9w!bggٴ)JG )Bb dJ)#-6 hyA*<&ױA = 0X!H1j4yFIJr r2s ϘuſwV(>ziVwVDs$qcPD8$8`jvb9 IZҵc1!ԁ}[ ddGEJ(#q'T+"I **:{F:z[#b$m>\]Q;05oP/kL O.ܷLUXEQ)\ws--q 8)[(*BnM'mFIҶD862Y;3 l{g>ENa!;ׯ;6 0}!Gڇ k@y5/M|Id8~"5(RWș@YCuWb| 湍u)O<%p٭-uID>)vhb _>`s ^A#/^G!Na&|4)/AgLk o̎X񫊲A*> Qo>(`=ھ6iHs%'m[;r "R)'.-_9!HP w1oŵ̈́6:yZ|2*mkUpR L~iR C0[([,. KmPBk5  }O髙cL HWc:::T(^8=z]As!خZ ޽ :TGZX? {?S{E l TWX Z-ˁ.uI9f V㲹oX[u9ydJS6NqN.'V1QLͺ0*Dע=  k?o[8@ _~Z7Ӣ3ڭ1p;tk&o3]$.17AwJcAmy4c!#?V ,nEPv5u=X[8 L8WZY#ee@˷>#q?%TJV6 yjSpS  ^LhE/`9(q3[>Q$,cI!i꧈(Z= +Hm *ٶVFV}Y99d05M55p'jXcг(*O7cP|lS@'Vا]MVt=hyRRǡ18_K&Y`,{pPdVĔM,/!vyGWNKRE`.Κ8_sÏf>MȴqCp a` SP?1+5xJ?],ȮV&(F+dOX^ɚU9_,A<׎A5PR)Sb5\_h>[K{YAݲQY}hތp[~plR@ۄ<췞(h00=JiQj?kͣHN MH'~ʵ̖BL Q*p#+x{!df-i # jY}BkX;_=Nȇ0'PV~`T#8t;l֑IIvtΡ'hfQ|AXD}(vNK>S-M,̣S(+V j(gI`? m^ rëVFWi˹1ܼ{ax: D9aKc/X ,]^yh Azf=D:~KqZ_s(m~@!HheBhnH1>FI a^2:;V ul1jGʣໍۂ\lU[c> #+%l3ajyDjXLw#@9LUJ9j+^*lB%Ho+4Ђkr1/bY' }SQn3?d0NutUu}^;xjôTbni|NJD#4_%ꁞQ:5}.73Bc*)-Op-60{r!7Vh^ XbqX޳݆1?0%Gث7o+ 1"ZqB^ܓkb :ǚzI)uQ?tXܹ=MWhz6U,/%9y{OkcX/ \jkcB;  #Q1BqO4^h^>c|C*C ♎At*Q!:lOqe!=- LoՂ/6h'Co]z=iq}jpίpwjYP:jT)vҩNUq( Oµ+ JNwd@O~V_)A~1d-FJbG=oؖS"̀Yztd)=)#\}$l3mRJD%z$UA$nB3sc!?P|/^Afj(2n y86JH`-]6@ 6Y8gFeHn~0GH»U-e$3qX+ I~PEHO!>~6dmhmDc^Rx˰qr6&䤰,sKkW7[tɒCh((BΈO+NC >%f {ROc HVd,۰4ٖv%lz; W[, .C UczYbS*e(n֘P^)CQ:zrGD\-H&B1h-<񇿥Q$M|!5>J/,akr(`\}'TqTW=rB|v5#eVB96nN[Vt}]w..?dCdpbQ5@N$9-;gqf)B"zo[xG_P"%R*K2ršF`AKY YK˵`y ]-RxoCчl7 D\vl}`Ȩ<1o#_AT*q݆mN2G33Y $O j˝8fs.pVNb0vQUvq\Xy6%OԄ ^眇*1{~Ǹ{ӹhB LgDbc_ۯ?F+ƋDfJ7҂i0W󳊺|h Pr9mEGI-=ބf~N\).'X\G6Иzl ;@֧Ŗ7"w>03l inQ3|~\W7`0[҈Y/HyvP`x <9d\ J|/h߈tl.KQZ@teu0e" Ssvj9Wxxy;xdRDuk`ëkυ/'4[1yBVYHfPpKOXMq'8)hVm(O̼ F+5 Q3$kz衂Q UJJh|_-c=3\Hw1A.RM(x4w%MޡY9$7۴RgKkH$aʢ? 9pkvGk=jnʞ6ۼ'v$4}fA&tU@lؗ G< ^.8"'6B)~Ɗ-bڨ]6&l<ȃ,{O"aĮ ,Ť *J^D8-LV^KDŽ [hK4++BmE؅>+dvM9|0IJ5}SǡBKVD]|c47A1MMƟK'K&Ay%N=0`&4Axd^UAk3@e#DoJ&F)Gg˒fX;Rhޜ7BPSaZ{\(GD@9𤼿B,=ZL߭&khPjL7k19{)8zƾ$`\(QFTGs<}_q7'*PU*h$&9)V yǃ%3"kK>n7tAh0OxTϟ |}56tBr0t:JrǰZuf('BB.:) a_d26F -*7ٌ ^V.~{_ҍseIqݸի _ؔd,LV'kit%G4ԯ, 3",%{c+h/j'#i'sYU 1=-Ouꊕa˲̵ xԧ.ǸC)ˊ `P٫csg9PZWweP>Nݯ޾UD˱&NHqm#_I~v8{!qݴȹ.nYbЦ w*fQ =%-Nȍ ٗ4SY w$#<zffPפZTk>':LW/[t^D,^WĀ,a~{v $6$6h0nvz/<<+2rb+} =,L'bti#$Dn+A/,d{#f' fH{,!S"(y*mx"s]nym ߤ8g٩2uufvߢ8Vd$6R9C瀤w"=d-}"DӖ004gcrF0T鿣UssS_^z3RSV:ހg8>1\m]gQSA!0b lURIGҬ`[LV,@oB|CøRr^r4K|FE޳Ŏk[as-VywrKQ3a(FHR6ΝnH}Jord/ŒI[6C}D4>qm`(8;zTSW^W +/p^9C$]ܶkdvՀ)D-?oaIvJt+}mv n濗?H}\VӃ&p |ǵLcUfXn1:IA21n>r%vyQn:r/ubˆDZ=ARpG>l6:b?& 6*u,ND!91&ޡC3Tx$~IBM+Pv@akHB+s" :I]9D&2ffGr99-OF v@]eq8TFHۓ -o72];Ӆ1SDCƬdôEEy"2$ĄA@)y)w pGW2t2W*?Ei{jL>իlʠD#SmY4X)YEАm o$"F@O:d nsȞ)q*t6$N$XF0%اjsذY7+fG}lO*\O͛y"b0\t#)2:s&[5DbmC4-B.D6BhHmuE"oH"ߓQcUD4~ >|xwuA)Sk\0z^ Ȃ6Nj;amB2f%'shKX{d&l +o`ss$@ qImdɻG{ w l_NSX1@^,vg tBK^w8N鞛r}\d)GeF6`dC;V46̀&!1ga_e97f(a(\uV52s_fvpWRZJ0=7 d}T!x,[M3ձv?d[MVFR< iqHt&Q4Y2(BS\lR,ֹ  9 x#h\P +t#TNL :Ѐ]k*b?Ha.yXI 9i3gpSmo*_\uLtZ'WlpRͽ7bI~H3Zp1.V00}Rm^udot)f+H.1fa ˧$UcG :˻u=/ن u~=qO඼Ǎs_:k*| 8WXъGRջe9yD%g:ΪL>P:A9X6{wnfSVؑsh-0يtK!;OIL0>@A 53Z]qڴٿX7$'U3[!aBe9 7$gMJ 5X%Kf6r))H؁6Mdְ6v2/X@ ku2.Y':Τǫ킰iiB%ɜ邵PETnVvdVxڊHaAL(i)mo ,>N[G) !)Hj P Zb@ct> -^sr ·4^[%sr4ɛd\ AgAh4uYL%ZzsOҥP]Pc4i:xaK!ܽϚ3?T:ϣ"8*cC!UbB m' LZ[kxLrjXr}AZ;@f 1ӮE"JorP\~j|Xp L xtatc@Q|GǷhDߖp7M_vGR"l>V3e NJ ]O_T!](Z)`=Nae'7-$)J'ئE:6կ/^15:4"5mJ76;s)äh ŞJ$D"`p74A`x^=̲Dܢ0n*ӗY;<6{m#`9R'C}k,v'w12GQ)1 $bPht$@͠JJ&5< {Z6Z^y$<4=p RD,K>u>.٘+~~wI䉸Hw;ƾdmFsO^yQC`GS9ňӯ_*kf@V$g6@8wB5[+F QE{x)qkݓ*Jh\]0Ƈ io!yqV du\,x"G0*_p9S:J7T{a!B!(.;-ӹtLrU%J}}7o 5^D+z 4w.*+$$|ӕl@Svԟ2isJzνUiRޙCgC9!M$Iq_ S{ xgw1K?zOI 1r_@,!GFrķSP.d"-rq1Xl)r%g!;!W8EDgd(M߱i-(K=NK=ā"jE-kA*\b}I [b /b*>0FůRx3v}7X_VTUk D'e ^U'CU ; v{2֬ƙ(K ٤M Ϳ jݦ_*`$k鼖[3Z\;[֊Q6uW-Y 7uv+Uqcm_&@65J"Rxh$p&d$jVQ,C6Y2$Y}^)*]Vrà\ wz'9|j' asxa-*]%ld﹈T_ bE;I&BnX(H6:Z2JV936y[O)g nz:Anb{!ʁyȱ`K a?P(+_LB*J,lղbr*V[g ,g@WgzIpoYsmc d!2}TJP(G]MH+G/#;beX\f<2+if41@ޖ"**T!;=mj𐧝ɞ&_<佊cW~ݿ~»_)AdCvvu~r ~ي/|0E<є>+a0ٽ Rw֜[.=8WjHKg!vJQHT=ŐW : Xdc6M;O6ć@+ )_Koכֿ;qdӿV{k*Ѱ@ ,JQcrYZ\e{C#1n u%dcDW%:MЂD4_qyqs?F:D(Nj xx$0=\zzW*thA } 4k0w!og 9K@x7t²DCM¯93HۅFҍ oY[{TznmUsZUW@~-7vFF4*<0okq`aڳǪ BH,x*疶c@LۤBo#_dwڷh^|Y')X sݨ:VlW^Wjz o7cuw$[{M"{dNz?NL@C+x[VO>wq#WFTG]Q^ &=a/{EPr水 }c\e#M+5Gmx# eq*gNf{ P+'h/eeC#)O.)TJؙR!MԴ^l\35]4]Ȭ.M3v]' Ŋ k+ݹ_Zb*јS˪C9*yUg@xrSd1N+&_,:Xh5F^:Sa(VjM @D'oezW o52nG@ލCr: |v]s!)ye۵7e\~ aC)hu|:oxu@De"QNc٨[ gVaLbg!VF=#E0r{3 t <nJ Xf,).j^Zzs)!.?xk NߘWT : α:CTG$M٢ <<*e:չn`r }{׊'mFk\#Id baQIQ3΋LO 3]8>K=X?c͜o3VE KX|-@ S&rkW_R K.k[ā,gF)+~x1CEgO@EBO5DvjTI@xTR8&ݦ8Mx?a9-lIK1sюƃ<ɫ/"gq6{5B@&o0ڊ "R!p*GKVyw8tzch+mW?$-l k7V]*J)B؏%˝ g!yg읃xb(IȣRHĬR#F3yX<蔁+B w&+G6<0iJ@ɴ,Ljex}EMQsHíiK\5f &ǘ숼r ;w4Nc[g"A'+l3' YkCX"xi[;VGn6F/na2DFwHÙh*7$e`UMgR 5v@QА#CCl'4pȐ?ip vx)lEK+-yQ:֕ަy%;ade`Ors`w}ͶM6ɞȇ+l(` Kc1k]u={W80Y1+B]|dcYh&;5Co~*NV ! (Ѳe'.4fv{tU6t_Փ QF4//-ePcmyVtFD-Z<ΡOsCrqwCӡZMXtHT v$.(xt%J SLvZuV\'1,c献Zavt<2䇵Qԓ$?$?Ģ=W0;d|jp`[b},t/wn{L胴'@Ru4Q=˺j4#Ǚi$%״E!Jܓ.2Q}!tp-+ۉQsWJ:4CCӲHqk_"Lt(x}定tAn[vΑ{Ȟdhsa#)qBYu pw!nl2>9Ͽ"9҈0:uL-`coId [ъ9vDk{ mD؞^oEKb̌^ 1I6m,ex1Y:6o/v i))My1 )|,AT4}YDKB@@տК,QRB)9o;+3{9,:ۄ Lc,Y(P +wC<{F4gE}7 ,ռaC'}?<2k6'8.!//2bDžͤw+qGh `[4<ܜ.*RATV$i846 ϕc W%IOXppMt'ةN,y) }+5CE5ɜEy,_6l,x+螐mDhZ7O /F'CBk^0=sͮL3Awt^Gs鶗G٠ҐYע莳gT%yB}{;z8ưO++f3ͳLjH+CB?O QĚ1"!*x'!3Ra28)jSkҡzLuQ);^J'*(>+H5ҁ~x|E 8|{htuy RB5clKzlOзOK&kJRMwNU J]Yr-)JR\)YPZXL@W%vcQ[r6Ydm+ b-/J\u92*<a8cXգM3G͟.t@XtObŵ~6|ma'-ҋ%Vy| MiG' *<s]s1^<^wÄ G ]]D[F٧k(JN96dLJhbTµ$NPՑ\0r^bzPEGN)gHY݆ō>EQz;!% < ,3SjFyA=L?,o&t..|TcFkmƋqZSV=,~[`svA0*:=H-W[ \WE1>x™liQ8j[2ᄲNF]BMX(dUri[ 2 䬿6,]!Q'e_3F&Ӟ m.;T9O{Yn!d|sFѲ&CfZ@j4W/np7DÑͯފ:`cR2*f@Wj6|[,z (ǔ?/>p''[1q@5D]| \ R:朏٧bKʃEjEx.jkKeٙ(Ǹk+˒)4x[UR!̎K>R~Z7Ձ5;Cr`#>]nbIMJIGf;?MlmGq\d]nf57Vԕ6CB2Y G{qg>}= ޯ=6fz_M1uƕCfAa3*1[+;DC@@MD%&?tPday_8FwedhЭРFD:n!뿞&^јK b9eOƋH\qߎ`Grh=~DjJƄv1hӉ2ls+ԧMIe#r uY$ɞ-9^q@yͩjgfti*T4pI'|R+˰(<5].}fMXW?U1TI&᎗ Yg YS,%$zQ*$1X[jd͎Tk j2'7q#|!+%v^~( ʽAǻw?uqIۡu?mR2 a6t֡>}~wkB ! 5^pcK*vF-`nޞ6w9#mK{I r^ĽK*Dmn`nE}-(q` *o^eGlm hS "OV4 nhhj&v(QRU=,+`YE$ͶS9kxO'I2RYF@쥕u- I5^Zd`2wBlJm],\iխE$߅EQj!kpԫ-GR\iXw+ٯ0 VlCa/7gFwOy56 RZ!aǪ0r*yG2^"_zlf} e 0bF FshBa Bz(<-{ ͝崿jlABBs0 O7 )N_Y]I~SSMt_n͇}Afq^ƒR qxVa#A~ ]9=:5ٶDJy:NE?j1 [ )鬀Gm8",>.$LZ5[͝n|{1_s~]̶0ӀUY^F:$(sIr5Me!?X5O:ەGE)8idWoe;Λ I=M -v8|]PNOG^6DY/YNGG B%t.\8JnuF(,"ajx9K`!p3[$PjݵTKKZ_Z|GoaCp;D- XP/_.R[?Is5' ibw~r cKUX |i^BW9-KExAl&ȃ~5g/9BՅca 0`PO-Ɓ/xpGҀ4n0P.[|OEG V^RϨjsto .Gw^M- L1>?υ@f~[VX` i|F.cOI?l'ybodlL.{GO?J mǭu[ J*sZ^r1 ɚo>hRV$?󧞱dliwj3VJ*Ś듳@z0|^v5`eFA1?[yٳg$ 6+4}Qɏ lՇ&][ݣrOr!qw06!\^"_eI=v[fktOlMej7Q6je50tsМ{= (e@2r~Y2ܓ=QLW!d5 <-@& X=q[.Y{REK9U~<-w62=^ Y;ÍnSBXRO9?/lJD 0uG0R56ԽLr ؉(Y6|m~UVܘ@ |S$e3v`m89 ޽[7I^nI&VDZZoLN;KYg޶`_S 3j2@.*IN^ kwc&e4p7NlVGDmH jxoDdHle xi6ds:%L}$½QKCH8tu>ξG?r҈2\B.(hz6P ]^]+X6&e$!{cA~F_:?B pYU^ ۿd}n|˻>r|J gw{2_Bi;\8MhLA滪JAEnacyذ2yȌIM!nnvmщ F BF 4ίPjp]FѶixVx ekr\Eg8,`f}O]*j b77VX )>OxXUv{hǠ|Ttz T,B}*?vNذ)JI!4pB:^Ubߵ`v(K]F8Sߒ9(wc^պH94vҞ{e)X/"0m +2[5z17Lj*faG#XH_z*MYzF*msm%v\ ϜJu &x.TL۳x`rߜ:V&\0,Yc9z: % ?A! /rF+_gVj?]aK`=(2(p/z+fYR / yƲj Pqfx7u d(']2oVF>i^`%^\Cp( [˔oxqoO;D7e"wVNaowӯ{3AeHcԝZ_Cft*%2_ 7/nd ZҏfQK^7RҬBFSaK-dСf)d#XNǦ NQ129,ukꏚ&i]!馆&B^5cvX!!CAvT9>J"dZ c56~pYL8AEΆfbhdf ޑɱ |̥ZQ$|M {Mt ߴш{"޾O$*TZ<,dUOrǹFh̺tlEn-W]1 {Ɏ~[ ̟ ISca0M`]с*˙Qdv/]c40x:0ُs< %(HY8UE-duݝovA 5wONZ&/K10>1ZMD:54Y^X *-Cu/} _Z4"%.ɋOsm3BЅΕ'~C\Qی#]y1 Vfc[׽T7Ap&jI+&pɼv\CmQ```zMk[]gY:l Śz[#pnY 8DUPM˷P|)4| 3+l%+tk?f_ů|T}H#א/}XjHfx~Hs:DCcd\9i |P}-9$s\eV&|&ָ$Aĸ; 6qӣ۝ K"M|.7KkzjUbJ#&༴{ͯ#gfuE hߝ/iLJYٸ`۱pղLF9h0hw+WWB2ֳe8a7TqK̰۴w._=uebxK~Fl>o -4=qV&fa/PS* ^q F_ ߂N; 2! \>ޱ׆n P|y>7 ,r%#;Ei4K:ԵȖo{M#yt0W`7 ]%[ ,;E# MY$󡴗V_~FrG Vd%N Wb2"FWb6XK^wT'aDB"/vO`hvlz~<-E9}0d6n@$m{3`ثNgM,ϏkYŪyNJm.7I-$!ޏEk/BIɽ704ˁ:-KNQأllܺ\~eVcw?[d/4 Ɠfgť+G|Lyh45yXz1(U-({ Վ{@Dbm^DcYfT7DxPTQd,܊!_8ćj㊬:]1xG+UIlj-`CM_VIG.dߍUv٧a%Xd5O}a& ƍnp={#$1()uU1# [JbY6"3;ub;g!jtu|@"K*d5-4ume6Sa+- ?Ix#0%Pc*wR5>pe ҾC C@b;!,#.+YWmywR6D ꁏΒ[?<3TNt|E_.|N@nRHBdGvQ^?,%]=!F˖$a??aއGUXKsOKB ffTZ0LrRLh%h(w?VtZ< Ջ1 }K~lϫSCA]ۤoWXt,D,} Ao7J}3C! } xTR%M}D|uf\,TE|5Zv6mmZ1Eg }ϹnT:?{Ebr$PX,¾|yNqeI d?:RC LT(A;XxOl-xռqlTYŗժʀ\k0 *JM[̚޷WSnx0ӝ]ԩ.Wsx;]zŊQĩغ|/(3˖Kcl;!RIoQUZѣ+HؒAFǗ+"+- Қ2:{`f JGen; 1=i; mB8򾍣XC6vgoo00n@S_\4q:L t>+YA#{@ᨧ}낗 ivȋjQhǔQOVF.P80դz-%Зa;m_fI b6JRY;l!vڹoʋUlQCX٥;jBV#&f7_l^/t_:)ɲf5(ôr)8+tf "TӉ85#|fz,vNH$'*='3 djZG\;Tp&X~jc hHiU/ݽZ+šg ߽[q cyկE.Zd.^WH5tN[ZPȅo.+Ivq9%MW74~#d &,Y:lV҃m܅lE#73~ Ě~Wa7v31.y:پ["]i1AVBgU6e8qYa O$2(*>hT:MLc꘻Ȱ-wHJ8^S H!( id-{J2(GԤ` c /vPKu̎D6[c̀{}-v46ӎ_(:xxyKQw BM=YRZYLM:fjO\(ޜ8v0e4 wDžUo>&[Pu^- u ]r6~yuü$ ^܋9_ Bc>}{ "Guf|uh! F+FVproȄa p(=S[=t.oYɌ+zžVd q$TejҰ56 AƚDn18=|O+m5Ij$5}D!;/PEZas*J]>ݛL&|ƿ@LńjuXO1|Ov9rGs\rwu؆"< s K8F0P͞'`l{ s/s-Gۿۋ :`IOl rb#9%gMwj$2mlSY᫗XM_)rFƐ ybcH[\3LRdl8}+ZA^# \rlteX} ErNmj-JVy|5&{Cжm:Fp4~4S> su dO}w߅ S5! yRI*9\#H7V-8Er).AqR)Ƕ mo L*cy =d10aKB|-Q[#İjWBُ"~ t i&i^{\ٖ6nSՙcEav;2qvȤ,p%((TԗPec\74 _7\Lƒ̺GXHk: FNB#x[\4&&.EIBG@S0pֶqݟ\CR/[{\ E%nrO&?x[A c#(.-ˆ a|lop*d't=a'3@,EK6#@H]$2 a_@Pd.K Czl C=e򵢚 ?CV]GˁrK4s9b_;kx!:o+DW9Ao x먿ʻ#<[dKN)o ]O;lq<#_KFm]}\^KO}NksidKJc]iҾ\`%p7@sJbw2ɝxgU vn/ ,B`K;e͉ؕ.A>8lvScueF,U8W)ԧOV3u_cBVR$v}t fY%?*ayT+^+"6aawMwJuPxjCleOI']^ye%\CEz HN'AsٯRjű9{lc^]*՟.M0|ΌH*w\N S7W+ą͕$ԧanhل!`=Dې57˜~0x$^CFMl&֯,CqՑɥyX}{ < Xw$~]rNaB4s@ 2T kݗ?QSapÚzkV*e}ϰ@B*bJthn65tdqZ; Cy.Vmf+ĦDž->4s|m_L+p]j:wlmxe1]Ǵ)oDZE" n" ylFQhHDU&iKzC2"#pmOtnHd q "+E:L⩛M{x黃ś/qdbrPe;q2io?-:>j*@8›y|'ދ2N fϺeҷHm{WG|Ὁ/U}'1~Y5Svf:yq43sW+F7VU$JƾK D ؈ז@ICW?p*ϭs'(ϹOeR%E$NdBaSӤca,7DQOykk'A&= q@Zu"m&Qƺx G2xLA`ja8 bHnjeC}P '=ܽɃ0exZꕒ) A ,UxT*um<5& {D1_VaI]:3(p/ExGP¾Ķ%~Pe ƕOְ#mM.ϙjn(醆wByI,ټ0i'r:Sax&c/sgׯCKoxD?JGG Sq4^۩QNѠyk0¿}h[%tZanQ2!Ǒ|vNӏ>WM*@`4doϗpƋd*xpǃ_#S9N-̐ e,}K!\$V4U#`,/V E߸A-+T8չ!T6NDܽo;-ZV\"^~eox<ɝꇺPECQhAgqFE$xw2(-" iĜ.Z6 ǡӆl0uپ o>ժ$/xt;V@zIv|Hn3lAs߯FPՔmswR>wߦHҚòoVr /̹)oђXʫy$*Ȭ}vű/gxхH!}ȍ3c*}X )8L\#}h e؏dԇ {٫[:F5N`ҍ# ŵ (PbX{lzX}XiсQޯiG{xcuh8>n1qV;1Q=`{?c-`"қ9dn&49x,j*;3/Uq֞c?v%*TS̗F،c6m)9 kGފ/sg4r59KXcORu?VN~ 1MzQ ԯq±'Ѵ 7۷zHt=Z,ͮF թKd[إΖ6_| 7>,F:2 KgeFS.&fJͲ|mECAk?]kθ9/2FhOJ}4guX)p0]Kڞ)Q)o}+򾷿|k8,Df(33}w~eLJEy6 Aן*joth!׽^SVi3I 3)0wRkx8WHXgG#/P0ڌ%k\K=t%Ag-/0mw>s9;L0!ݿ#]9 gtT԰Aӳs~M_8iayhg$\ʥjq[RÏFO|.dRFX;?'OF¥áQ.W |l[,61*n,c/ǒ*k^( "Ow` =h $GRY8 Md?YL)R!%NhSIK^ʬ281‚ [ҿQ t2;Uܣ.S\ܚ$ fPIՄBC|6畛A& \^Nْ@/@RX+qWD7ksC-Knas0TؿmqZ}FȋsԤ ;` FQYs|:VܟJ^G &+2bٯ)ӘvJ$wɂJ QYKX!ΐa/Gv_9Ʒ:= - $G\"SƂu}rzj/!e(>c`c;Q$߱qa;;nS[AcjB"|hU?Yp+Wa{(SoA@]1}la6U1ƍܦT.0JKaSDmUZKG|q?ߏ)jv G\9:Z:Ub"[n8n;!~hNs &MG~ $r1OA|VHw%FsAa *0aoT]fmH}H.$$EH;ж 5ߋx3`^uS1ʠh@,AbX~ 'Bxpb`*S84X6)K3}GV 7(Mc wg5~[4֪ll]COBYu?lv2c+ϱ*;֭\o1qKGsm̰X]@]%. wtg7Ѿ՚ɚ$eih.5 ,}Xbzgm3*Nl󁣂x$l+A2q k{jc w&"$s73M2wkἰzy%wV Kӊ sL0.!rtIg?a6 iy0x}9с 3Ccpt*k5&_u^/l7 5 m|`z%Pu2.·3 %PmDpωOZ]v>Ѷ*1#,j%XjxlJZYϲkT@=fxI}݌gnN3! Ydop6~|~cb-VL?-'ܽ *څ 9֟]FiDVRl!`Du!S%QYA%`D!Pi%SphRD\h@-+@ U'6޿M* 6pۧ YUSMnp"pnfnBh`Q==5ꝲlLE%# o>ܡx\ضe{!wk^bwX[xI )h nCܪ0r}&mX(/N]m|6nu߇%qp*@%VXa oVzSeƥCCć[F:bàyc'qZCdGb/T-)Zeڿ~cR@";wa>Nh#e۳m$QP.E˸ κ9]ՠi`|!ʏap}Mt;k*R$!vr: GN> ,d Bfk$m S^YWf5@F!1DقK,`Ԙy+gz0{ɿQ*^]'̠, Xnn#AdSU()]!6<3e]9[a̩H}}|s͟~,_QQH"@iY#;%?˺Q ߝ@$ldWO F%Kr8UG}-߉aӝκ>!~d%e8m-!vh yyUU^_Hʉ9fhc@mxV P, 4nQn+8N>VX<0mAIR8lzoOLih=/ CiRK*#SFv/HP{?o[`Ad`'>Y Zg"yZ.Kί.֧*a~RyLXp o)aT8'"%5!\ESF̦ȽbzE(²jkkfG +Qs;Rf)+1BAޏo)&*Nޜ2`c2W:.Sڧz${a7Jʴ&g=zb9Ǥ ~';o Azis\;pQk]gY r6w)+k#^*=sX@KU#$GWd!cwXNEntaa;RoZ?9>3(l~™ͭ,f#Wli-:q֒F1mЊlӾB:pF>*!̍%NQ[o} !\P76MGk)\g)Rψ¹>O{y:%7ťjž_-P}~z.TnbCVL3(_!b {4_!O L\4^P#0A^iY=_sܿg 4WVzc Bvj?F"~4Vl;I;L_&Q&Q u~:.suv,͸K߾[|1['f{_{M0HfC3N|{6?bꯗJ$TXĽ拇 3$y m\3r֬n!$FᖎKe|aD\6g_-B0ÂdPEWP}O`2O Gsnf.cu.2!4X`mc_g\}V1"zMf/.dN䐔S لxee>WWJ G n;VxiuIwG|k tš2Tj9:Q5)WR8de4N֭x?T'_|8!2|U+v#{ݷZ/759t+5D#HɓeAw5eטյ+=? qdAcn?mHF-%HapR aIژ94YFD;h}ڛc&şpcT0#"|24hEx19ٝ UͮόyuYn3XruFҝGcpn@j0g"d}5Ou;//]90GNdB~d"l54B"?YdG Ūˡ勴\DcS9BPq/$W"ة5 j&u:'nnSakC ;jܾzcG$5P+V[7iWÀqZo1` hEJ?㤼-639GphreȜAEJ`&AAzv󘱄 cNo~ZxggeU&B.5ELB<e*g"v"j_ & <چ7d{ 5>XaG;)EqPn.#N04J:B8Xj2Nl{%8kov,6[(\6G^YBF{9$)\vP$ԛ6#gNcLfN$Cn :w/TɁt`4@%-5Ia){h5s vH7,Vsz`+X_%h s)Kݘ>qC,9ʻ?=nǶmD5ۍמ\)s\Bn@\&Ya@r) n̆u@!F%Fj@ؕm0[6ϛ_ۄ9o 9g$8"աzǾP,{:IaI %hVMdcYO~O{[!Zp4Yf}sK\FT1$ j+:CWWۄE9ͥflN:BDl|Z9cOW~pTf4.D/k3Jq%Nڮ:A*S·ǞH-OKB!ͦ_z*ڍ8 7Œv? F 6c j0$p)itWmMM>15GK쯊&M޷ 7͇Cg#|U~=už#)BbYq(K bvd!îyd(!*{Q V6u~[Wpz!J$[Nr+? +e 2LPOe`eڦVxȠ+u `+ؿ@K:|O`tS-T9.QxU,2¿ݟ~[hx7̍f%$ձ Popqpdl6|OJ U;ٔ܏~׊7N)YaD05 UuN@s0Դg)7(?tȹG"̴,iR~ z2 ұBy^_n*VZ J|Yz.[eQ~>-h)L]8瞘EV-,/J:tu@!=TDӍ#OkGl2Ͼk=_&u`j(ab;l>M05tt2`mӼF[Vi@w—>?'e 2NJm }xUKRRA,q]?Y_#BKW(o1w27뿆7yMf$_l]uvlՊ1_AƺF}7$I||~ԗb0_*rUHa`(v^H.I.{ZuJ52L^|fp|B.b)'30 m/M3(R`_̱Ez@oerhn\6$T\ ɂM:wHa+͞Ncfnk M ̧ 9*?8=ߪM9=ncm]_|Yb4qJwfv|JBwR>kqPN^(D$?*l/33ڛJv Hy0SwW9w@~S!mX$URD{$'?!bϖ+~+U1ri#j:n [z~TAw?GSRfXS0U Լ-6OMiӌə,daȠ"2 ?WS$$Hٹ,}GP61r[ڄ147әzatsMP}G?s{!.a&b_0Zk/YK ̦VCǚG{U*A a/n%̹,qwJTu8,$'$m4D8`'5|k+x- WxS}U!si-0[N8 edCP"&Z5/\KLJ+J9낐Z6^OD9)S,X(HH¢s6,~hUSvj.ժl7 i0%L{Xߵס>(剉\iܕPPS"WEYt%4d$2VzRGdO%W88И0]S ]4Swk + 5iw c44lo}'G0S%q'p1̤Xۻ)( |#IaPxk i}MT྿ ᰡ:L76J $pSsʒbFr*YPk#뗥 J"S *8)ZՇ͏3KfmWFeB:"OyDm1.9 +ҟ :d*p}PcWc8(k"L^j_YB,\/l\&{`^T8{dYcb2ȹY084R-ݏSdjo>S,s2TR  QQliЉ h'!Ϥ)݄A ʵs3S9Vu0+}C_&r1Zۥ?| [S=@O^!+*|26lKϕ9X! }s=$ߊk .վDs4J=e1KFGYj$1&R!U0!(ÛiS[!K7+(d/vf đ2]"Tj4}j59?A^rh9W虥Ԭr]|Fept6$67VKDep]LD܁)\{\^-|H0l) =]UxuǔW>XFz?7/qvFD?H>ĭM3zuNHys5h Bôw֗v7jMn|I ^cmҀ`9,CFV/vBxG0k=%Ga 3"b F<V,V]G0.@" 2>}<>gN(9zzsM&m0Q (toFZ5.ɻGh&lXAۢ{m^&'ݡx#zUB2$:X/%Иե=c;k\6Nuu#k3Eiy<ۜƴ#E憝94Lt~W|W `4aMCxr4}]~"3?7yrv 5ddq-nla50` 􎟩Gj0;R-<3FEh5F%J941Aїvf0yM:r@;:4 dKi@MIU"D-7ta77ACJ&o {$B*]V. dUAToV5"gYy,$!}݃?AiՔs lYKmO+m187'*$ 6ˠiv[B#ڔHy/baM# ۫xm-xɻ37L lT=E_BՊYդ|2 PMgD#f:dYBfX鴴 ,?I9;FHm]yzHzeFO-m xy`N$}zȘ΋7d1q0 kz`20oia!w/ -";"lFVuɃ c}:T 3jr1z`$Q_ ]ʎߏAĬ= oV5B4n5V o i9xJ6xS&O*ɏ_LKiy\% +d|[hD6Z,ky@wUj9z^6ZAM~hC;2V^T7:vgw?;3xn~Yɩ1|V/"!*h|l//gKܲ7 { R2֩wF_l4w||̼uuw8鑨o)$*inJ!K`MM!sM_DD&Alu*]ʟ庛K3[=%f F doCUg6YȣotVI\8L:;{3I{:>Eq<61Yfc8w9/Q'3ܥϔjuox ^%KB :plݸwb0g,ٲYS4:gBp 9RF]69ϥ5F{9}v?M cQ z#3"A5ZNfc' HZn}UM oa'pFA?W+H#S?A/Cz[7ˡ6<us9r$Q̼/'yֲ?*7:tvFELן˧e5V@Vg5EN68P'2;6=FL*m3m4s&6OBӡ返=3dFjULg`LйN( @:%`WHW3cJo9zc7sP%`t*z, -GTI(X2x! _`uX $5u)7՜Jgl_^,~gĞh:ĘRj*ϞIl]LŸ^8ū\*u@i^J OlIjc|k,,:tfBF+bU/#=nטThZε,PhnYkt|!':.7%zb%B^C҇ =e&ڍ7(>_f!*1UZW>ѽt'_ȍQj(,VVW3Bɘ< R;$H+*J]i]t4g~.E{fkNȕNР꾶a7sD|MCZ! )_;XI.#cvYHڠV`>jdY'm0h JY1tF~^#O%oq~& G.Ɗ_n^6Sqܙ`? ֝JnhhV |CP~'홝WũYd-1NPR]{кj'7,.Rcʥ _.6+D=hVf͢O蚶ia9ⷳI&jPSG|"6_!Z@agC%p#/}ܰҜ8qa!oj7D[y[cuįѾ9u8=+x"E Ө3- ?wf>\!mzy]vlsSlQ*?z>>\FaKM83$Uz߅vXb:M u9g.b]DfτU;6P0DU_4iv˨IשSʮ6β)RL}wD<(AEYLa ˒~+y:g6ޜ/3-@ .L±xdm|"OP8Z՟xݙBH |i$(q'!֡g\6hvٍ4*pR0&s*T T(hUcݦgV@U\*oj1'_aX}0#$s)ƶ{-I$-Aժyop[|5 |oZ#I7 7Ɠd_?\FiKtJNnW jANF`n%n#UZhs ٸ U7m.@( pyqC?">: ߊ?=(.c.:82jtwj@j>\<@>|[C AXb酫{\3pd.X(XdS[v~rl5Sw`,d"en7J'Xşq lnf8o9 (CRQEĈW'ۀauuCy`YpemI;(5{tqQ8ڀ -0+v;~ +8\4HxjE21IZ//tU?Z;yx7X "t O)滕SsuO%2gR[(?=A+hH1AXv1!QyD@;oTyFY ՝oKb*Z+܍8>/wfPr{oK;tqш↏F\me'0Ó6$+𮅝r-~3K 9Gzl$~au3̻uztpO=O}$5jnDy{ lH6fnY Yy"{u䥚 "8=fCX0̩zg:\Ԧ>e}`2Pm_#C #"Ӗ5PղպE:$t״) I[}|͠Z4\U+ԡ+1)pFLۦ/3.vU)5ojɐr^p3  h&׹n$HH$U9W9}r7#KJ;m hӑ}ɴE[s\~ԏ7@DHQi9#Mu ĽGyA\RDZfԝIP.==gf{uq؟48&C6˶"TZ M>ѣg(TK߾VQڇu1Q58 C)._y:˛W@}-͐ϝCf[J._=52`=8L9 r5i jLǓJ_&hGAQm԰= .|Lxw}{5bU7,LJÏ (.8c5 oma\~&)z̫*Q7Nv0aRl^Ķ;.>ԸD&Kئݑ8Hɹ޿7~GjX p-c\:\mn]`JnQ8$"I5siCr2;I M2Pm 1e/lѢiSF8rY1kh삒p[x J2mV۲aY9>Xi$ƾ?3fovó?.]BihЮ*nB=dx^<(NS LL:ټN. jC&/qbɴXrq'yiT,O RY@eI60{ 8\4G,؊xHaGUdrWpbZ=qjX Yy2(͛\^Rc~온1xQ{.[ Au `v@ $@O;;:x1VȷX>0zROXnA7B~TXruy@N:PʨL5A*Zédmc5Zpchs>þc72u-b΅ӺN`f-5 /kV8D"o2G*O~@y!i{TyDmuV_1s&fh#xF+cl+o Z+ߖźt fٸ(ERae } s߇ŌTY >n~JP'3-Q=%*LB^rqB9,5(z1pnwIr ?_bj$"淹^eQ=+}] N CL>Ô|EITg@6LL)+~p)0duH\`X`̄o@칪OWpLAJXSmLJ Dq iY~wGH9%z8|gCJ(<: Y'_}^zS9f\-&{;̙ !qlE8V3oŖreeL.]I޵E}S 5AA^%k hO%J#So)m=ʚr$\ :rUښO bE*԰Ƈ-2W(G l#Bnt>,7+4'PÈ5hCvVw&nSH}^?Ș+#5PP$Zffco5 236=aRDxY]+Њ#zZj*YJSډtђBP*%Gqg~r6 xݣS%ccpЀY ǮY[&LLR5f1T₄򫗪9^PC?F*0L|ř-8 ɕfk7`1u HW[}>jB/BU~(INJgb΃^9#xI 5K R}se7ГD[^\&0_UC8qFl=7xPireMaB1;6l v0jH%hOfmDZsާs3`CZ=wO duzP 6Ʀq]BYV҅ 'Gh﹡+]\Lw ӹq8΁wQGo ilv5Q1NPmk'). e$R]2B,!n9aIh݃awTb)PR}ihk r+͸jw| }i nAW.ޕ¦Be+O&S%dtxwRԑXmS_;\:2/c9yȦ66spɥ=ҽP <'޸qJ ՆRަtl2yC'o#"G'7}eɭ'x'.{GW 1,~~6d(dCzW߉ R@^>-y4DfΔGQ-b+ұ|?q&@,D kjH yK?}?zL~(@0ՁQfDfvn~jKd~n34}<|ߧ'<4Љbr3ƈlfO񌮏^+wh!ΥkZ ffGR8С|>%>}U#9Y4]An0C= 8^]BKG9f&2=/=Q혌ʤ#j-:(ܭvP^IS{.Z=6i l_vPWwr@57S^=4#?$F~OxmGfqz:2K ^0o Lep&%ƃr@ \N|]@],Ou:=\N4{DUpⱟiX@TbnAh[`x DzۇB~. BQv/riO\3h/N snLo2G8A~ZڌϱM"D?Q1,ZE}g8?o]:N9IX%'eDPkC gG!4xWmT`j{z)mm@_Z'|;W {]`9%m,DK!Oi~'(;L`$8TG`7<Š1z oq s//QDhb4x73#Gfl _73GeYمճLi:6)&f":iDubk\ŵdZjHMwL+]2Ĩsч͂]?g@I*>xKyGgw݊3~eq;{ J<{#N:X̏VbHFA%ܰ`{ll,: '( N ;$M gaYy7@/!8;&FU>} =ɀ3x Iky({cƿďXוPOQ <u[k?t,-5*7U0ɬ݉g O$Jk F1p<%m#M0۰E&9F !Md\xJU(Y,s78u^x&Vc%"/ڤhb$j8 ncZ1ā6ǻY(PQ৸2wovHșzC3ްR?3Voƌ']?9X]72vepk ~BFhbHO% |yL"MدOvge͚A/ry7jkIQt}VIk ݬD9 j(.@)ԣEl;J&hÎ0IPuaDjv8->YQL/Op3-(y b5~)Fq|%ϻqYUB[ .#RmpŢ/0ckgDM 軫tQoft+F9 f" 8VbLCN렪 p[M,%&}oɱ]bpի:jBwaDPx% @Y(~bycoOWAx_7 ;ҌW(t(}H$Q@20:ٲiu=Jߴc$>dX%ѽ|-藪dזGB]TGKeCrxq=Pp֏`fʑZ5U"5 =N(CgK dI<_TMBe|>9«@H1SUkێ :5r^*Ο_,%7=8~l%.?,O;0d":k@N>]xPN$VOJqr8DD|!L)X'bVXT"ch2mf r#3/i(9~?./T&VT.O$FPe"5,xOQ+}\տxIQM ^?&jLwޅC^V%AnO8fFxf~v#U# [,Nt/⪑N5(֬-MՓLaJG4ʹ"58tܵ*ȴ;{=հZe g&t4t bsBgJˀqW=iwIfg*6˚9V~LHAqb'i:ǻЦRYHFըOi&8 []WvQz%h@av'GICk_ںy/g> 1Fe>HS'2 ' ӧ^!l|SH(YA/ y)sDrfY96|ͩЋtW1\Aaf(tY5J窦F[Zx6v4C *"c[L)Gex||H9e:PN *:OsĎU5Kcxk} .(lwQJ@ VdԵt.};}`S21 LcX`")o}$~J@ZP~ZiDd] _VXfBaϫ\ cę>8syᓥ7~BJ7t7zв&רvҟM_ܑ <۟]WmH4 SCQF ~U '$({\oWAMtsϥۭר3v5mֿgI@f~P"c[61j{%ƹihx1mbJFse[`/<}Y =)-Mj2z=nWUK)Pž_hn5Z( sӨ#/ͯ:x&f|w(iw,>ѱ[cm~_+[JI$]Ĩ]T i5γSpM8em'u`uџ9TOJ7_QHL|Ⱦt$`y辙@ tN#7ߍX6$6RjGؿ}!H. bC=+++^ߑX߿7kh{Y :L1\ ;ijB J5:8th2ی}S1f_&`@Ay B;>*={%Mr}FOA]Nh~8Dd>=ǘ[6uᜅOO9(jB,<6[~΀h`Jua=UNx.5Kc} <%#ڔKո_k59w2U .K=985oڣG~8r_S /zDWKBdJ ?IZ&2,E)Nk`rˏ%3UK;)YWN( /Ai,F_|^?9 訤GkEԅD@@anJ|w ƫ9L^1r?fzT\!J@-''P7pUes[eY<4Lx(w3~R=t%`m]4>J(m\&Šs|Q-w4Ĥޛo| o,akڸM-{?x?N賿+ &H dUts_[[,pN:F0k;Mm)h BOڧIm]8N_}K)IbD9fEL=Q*}`A]\b imSY<Y %^WI"%Us7[s_Q kRITy ;Tˋp)2kDUT+_qi|&4eL/]d{O亂%DuJ{Q`ׁLڏM@_!i8'%ʆ"tgpb.-cFd*$e52[= ׭ [F3 LEmou|Yzk8^bFoTy[TIX FHseZM;|k.nMJ'?QM]X)惦Te{ 7xjn4+@D'T{.S'fW2.xP7j96aAo+<Ɍ_@<vX vOv3uN14ET!).ݳ~wy|Y#zkf¤m`dbD7HABp=%gNX^[l|O{K/z|N/ 2ʴp*`<NXqά*bUдVi- Üu TۼЀ;8r_Rӡ7]a  EF!/6^aO+ yx 5AyC AW&O/m-E0&`S2)Ժ\YbAܹB4jͣl-d΀hwdrЬLJnhmYH_‡+mYWK1(Ha; sx܁&H-8< F#o:tL3| EIpzb06UBBӈ!|?`z5>OɎ;p܌4ŭ 04cha3tho PdeUY)34fr룚Eޅ,"6VH|^*Ml Q2mmLl̾!ln7'E¬q6o|eG:c_1PZE>G}YyF9O1@n1^r FIEKw{@W=uussQf$3xźN-&‡ÚO3O,@_y""٢p[ہX1"k=G~8cBb XKu޻fG(_M0sAgFpE.0s@^d=۶_4:\$2Ǹ51D>MֳXfbk5xM g>̙5pJnPAY 8fUp p'8dt?dyR'a21`s!S$:v?:52s`AeКWH3dz!{?=RL5 }hz9ט խw([Jh^h@p0[ ,ln`{Ih9I7xХcgk@ړCmNm>9zC5>6'-оyI{#XW^uĉr#J)9ˇ{k&9I>v{D{dѾ.ծ&Hl[, 5T_ga>v&mf:)bxCKWPɸsqL m&I*AF^лnT$蒩~RbݬͲ^D9M#gj.vt@VF c2Vk 硞JET/A̯(mRڿa.;{{ʅq caBi9n *!)ќ!€\`Ynm7B] hfv=1eFGvXs<{;UVA @x6 VܘSi K'@x Kض-C3iZI+(aCpj.nd+lp>, ! *7|wcDnɟMzĂľ-?!@v.@Ы.y蘍5խ~z>T'`M _ ~SQ">["6ʬ>Iow2afRD=%u1KBJOCTmǕh8} }BE$~ oJ8artiMu%ޏ[aՑ5:#i% "[=S-nRU4\(C;r-gdʙ<:#p>MJ U_TjDAh8l˶ "I/d+4Y £mq&ʒgc^fZR芿 ơvu2v/f_Z` ~+8Cg+]^s!-Olƨ1Vh2bLA1R% a@p=yxVKc=wLȟH K䆋99'^գ{T8M^cѠ%DMFZQZׁ\_bdw<$4I i$Ry"(HECPwÀp̜zBPTr׵^^nėAEo5يĩ9g F:|_htMN]2MAutZr36CF]4)YjC {g6&]WuX-6'{RݺZR~2?gN?>mjj2m[e3tYMZ.(˳;twgXqg_ 1w6e.RmEV^DzO\b{,}|V+)Djг<>Gn1=3Αm``Z$."`:ǦLqsG$+jeK_oz[t,SL#mdge0,} .."oI3ۢ:9C[t]v<1H9QIl0|Uq(Hx^ \`O:rI >=apb7*-Y/˝Q9^tuqzv'T%U'#MԴ&rvB3iGf6'NAKe(fЀ[vP(#{S2دdQ̒Ed^3MY#Cćk4gp{jT ([rOک8_M *mk?laj(TKe.0gx>~^T%rH`7pXU%~8HOjȚǃ53M#_ :wM$Yn:S+JlZKr p@nŠ/PZS}m0K9:TE2/M ?$άתYІ޸u,󙕉"PտS;sX*?az?*Y/ڿ?(Ļw v ?[6Ğe D~8YOb<=,1pGQ/ধ) vHp|YmΟ\0}Y$Ga{+G#PhP!fV.¿mO`K^}ٟ "@vae/gyQ'PO-V Ķ\Dnܡț&%BL*lw9m' y0tf%~ dxBd=Qt<^<֞4S%`* #LhE"|(=l ϥS,O OtI5C|mSZ5/n×sUC9X\4. ;#HoO:&bxѼu\ ^M=*^Khxqظxh@Xz%,-ӃA8j_ FJ;6]hB:Rk'ϔYӬ5YA <}CNϝ3 QJ  tUv͛NKBګc?B;Vߦ.qw8ez)N]`z}ނ@mT!B`e0s)Qf}ObHts6!%oCW[A-A -AA T,DM+|M P~|h-aw~[cԂ#5@@;b{u s۔-w,pa4n1_M"jlo`1tyr1. iwl:F8pEwL]Z,ϯگ/-!pxiz/& %[7bt#=wN@ՖcPczOR!< vwҒNh:?42zV fVue )^7٘zQmJ ҒaEc\񱇠!lw/=] ^5ogܲgJ|߫`0U9mH뗤ZKҦ-+qdxK#p4k%hRԼ&l)7rr،7$E6Bgix^*EwߣL7\9yYGqU:[6v{{N_/h +?m3-7E3OӸAU 8eBm[:T]\Lj/eMFY 0 F?%y=QnfeH\{23SCJ2V~||:6BvۧZWRM'ݡ0pjUlI?GLT-v\ju-uZO>YZVtD٢?W*k>L3k:QHQQedgΩ:R1'Fp:;!B%a_<[Y&Ar,Og ؜HDʉaBN\4U{+ƝgOb>a'uMrv.h'طřֆa޹BHr2>(.Q' "f@G0~ `l.߾e-mP.+2iVCxeo.Xbj_8P PJkHOHS#Hګ#׏ #.;^G] ɥ7J4Ies )W c[,eRBK$IEh#2Zu-#W6k+7N߽&%RpG8Je }D 7}lTIhd55\ls. $"BAx~X NőcդVY~fHE']cm GяI0l8]`|ԥJE /h;&7GM MkrkRfz䕺U\1*#p)hΡ&ew) 3UfCٔt- >)nlb> m0U2P g,b`-֮AAg(>ء1fZԎʦLvd[59va7w lnKʣB^߁ З!/ c!dp j Vg۟P /V|$M* LİS㙉 ^\z2X#RZ  mף?ksFrC@ei-3Yt[<^,o ak`xUʹ«DwnŬkQT>{sAL9Ϫ1'IVO_TT\ޓ^^lƔnl ="鑙p+=eA$P *CYfƖ݊|QQ`N6\j!`aN'S}Y{I􆉦2|X9g^6 S2[hM*;AY6kFP~f HZYg]wdskU>~jetabfXlPIEtYeڃh#]FfxG7j,Z3UK%8qRXWt>Nl4):\otMIY| . ?FA&8ECIOt>$4Kf=}hb&T`Y)rgjñǕ̓W5(aj4,+ RAnC ߿Gj.O2үd6}oM /CRPnF[WcƼfy,Tq]%I09fht}E*UvM\ebptXkR8hxM_^$(qAfKMbzVD2oՔ/kCAp_1QN6x%;SsE6g\VvBknns|!s#휅JOm-D;S:t+pf =4ZKޣ*~ԜhQidmu48yx{(RQf"뎊գO#ܫ!-9G~ʂ3d]A567 C*|Ъ8F &>1$ q>*Ԍr8S& H)mg"IpCjHTURKD_G J㺩-9Ǝ0MyQK4x)eaiM4˩AQ:Eq6Z}j{&{v܉D㊉RN~X"F.҅hWe(!7z,t|.'ĚJwn\l(Ԕ輂MmLe?`*b}۬o Uif‘c dRf'ɛ f_/;pfa T1N_eq̬GmkMڸg C`X tq KN-,k%Q7x׆/*3yo*(t^eqKȴAT3&N8~}tȷC͑Tu< T%[1xV8z{~6 6%>(k^=c>ZkPW'5t\x?-$ÂONuMcrśHu0CW/}ceo(o{ MVw ?:!V8B~y{񰵾'םFZT`eN,2lѰ(Dde?Ѿti 'ȇk%1<_ybֈ-Ap5˲/8i6cef-I+EuJBx 5e1Q7'k~ v̼sȊ5Ũle:[bŁȡ`oZ+} [)w_JWY#eG_ڣ˧ 38dE6EP"ij!Bo;ZS*o S \)͸}N.2 Rb,bK Qe%d[ŷhI VemtPu)oZrQyR:5꺳+#趜g%K$[ R.UA- jcY9/ ΀W^xZk 8c/c!o,DԲF=*"AEe8#i66st4:d5u.p` .q,Njebe@!ggi.!v!L#YEj+c|X&` bLW7G[ Y\y%P=瓎P &:EeMĀ8.ƞ|)amrYw^/siJQkVbMԲ = nh0&\y9ٞ.GX;:ڈ)3FIr1zz$/a8_%W.( ЄWPO8Jڕ <26XkE'/K 7*gW.G՛ p a"&C=ͰAW?cW$qau}bx\w-S?ݬadC!sOxC3ӹ#6vMɣoC&e4U&dGKN&90LX=q JP2;Q r!}8nL.tR\qriZbgٱүA &F GRbItDz=';z3qn_|3Xɼ3_CQ= g^„ zqikB@ǜ6'?.dOɦ0!Z5TI8{j4.ݙYv sp;:)ƒNnvH *9џ \p\-\+eHv{\tz7/iowh q!BF_!s_Y N?R/~dťٰH3Js[R>aAZP8D O;d_t Jh|Eyqz#ms?+a W[h$,mF+l9'h21"==; ׊MC2m/f@\ kbfwz/y%bxP؃+םϒ.K̊%0ZZd)u^]Cn !H4ы<U„#5 q{]3(ꐻ*]J&%Aq_${[̘3.}qKBxy,O ΟhYf)vْlTY:Cߛ72Q|Q|^Fw3œNVɐ`Ƶ)AD,U-ĉ3A}-FǖPK^@ON!74X _7dߢ.) l+$dx64=G\tZN^^0%W]]C,F#۟1Ɔ$B S A) E#Tf*ņ_]ʃyבD 7iՆ$1exMH᫧"qF!2sҭWA^'2S '4Aipb2+MMFmQr9S~|(6HPv%.u65G9^=AJ*J*`фГ0x_n˞򜟦_.|ǮQ/'ƺ)6uљZ퐼ښ8(%d8Ŵdĵ)qQm7^D !fQR9'jʽi}yXU4\X&j֜#o-k3 ֢S玬)dp;=Vo8iȆ5_NY`Te60t]r~-|v =\h )^ \+;zRRld;ǥЃ\ *_-FAv:xz%nRϸg=^ lsiQyAn/('ӠaP_K9 .7oU'!0 c1sg2 8 lfҽdaLW{F њA)/ r?ܣaݞ ;dgN1}=[Dc  v7}̐"+,fv rC~o£VG8lEir !@zI (k-,S~=2[Bv4|0lj8@񂤵OAƿBn{H<Jbz-{Vg*H} 3OlL"!.CŴ96-Le w)tq)4{FCJn_r5Q'+:rВM|X56TdA tWs[giAdb[o?BɩH..{7^*ߢ3'4\5Ni}-MTIƙ2+{lWx[}BwRxɼ D;;sQ-FX\Vvc͎:zDcw =kYkJYM&h`Pfaz,/ Xc\"9hs#GeP3*@N,B[6 {}#eNQų˛C}o-ㄔtbjLĆJP4 XU9=v?8z!|\i ;ToW%+U 9ݤqU8 1e˕2tH=￑ruѰp~˕0KЩ<٢ oT2$P"O*3@ [`x|G'^p\+K'7ΒM]fv.pY"0^T |$q(-̣OY2䑳Ҷh+Q`/Sa9wqYbA tIZK8 4 5'!MDck]i3R2#{"Iah"Ot<15wɲi>r;04\EWr3nU 6^@c"`G%o(xq.s?O&M$Dfڟ sL*KYe3:`=ܙ XBy=6bپ:[2G.m4Eى$ѐ_[ bI'V}LI~*T|~qp.*7_h3BSIU{c/FX4+@)Qbv>7OsԪ93LO!#(BN9qP2ir74FT_G;BCtFcb@ƀ=nÎK0G{5 -=! DmjFi}&M(9E)Gc-I=pwPkƖrU}=YI@AӘ5."o!! {@KFイL 8Y൏svFSlģM&۬Vś[=Px5?PyV #3ީMAR\dXYg.KwEB9#ړ}~Tt{L[ +ksOB(nI rTAoѾ>]s\-G R1D8Š8ϸ$f2IЯG?xǕ26}/#{u@$D+Z}Gx'f*24(ORw BJBRܟ !ګ(5ϒRYBH+17T:[oPNJA9<$\3AH^誸~GτM5[b%lqcǷ{ʀ&Z Ow7A'JR\lI;qĸHc}~?UUŶnKep&&+gǙK8iXesrb N!И(ww-֯fS荜e˵vuI#Xe GO:¬>bB]m7$gcyuJr겈DT5Ht'Zn ,K2{p[yCPL$m msUιzJg_$mԎƎ DӀo`=[1=oذ% z{Y;s01̖58Y_N_M T8Pi0B6%xm)'&=1Œz]VJ3 >? w oU7ɕl ")l. ^戉EaYaT<,!,bL Kh$q|c8aDZv}uGQ"^墴B iC}4ΟF<L{Lf:6M0a&|Æ}R`>3Gyuws;>% ip'U[h.\.usas4p}k.Mq leog$ _A0tfym<hVl{N0x w1 /_T^\ջqd 4kLY'o$=s-Hl__gb`Q91+/49<ʄiT:ww/¶8dD <}=أVR\nO--bL_3K^ȨsK*L,30NBh Xq;q0M]<؀h0V^`)eAnϡ+H_׆zy -L95~x8Q--kHEh1p^-q'QՎ]4]̭%zi63w)!}UgEњJi}3̜!g+t#4~f, 6(TcqR`j"+H&rd9xϴ<jŭ'ވ5*!0|#@ˌE2@ӹXR! y2 RvsTfFQ}u@'uӳ٤3kH@Wk>OuUbF0,_ ;Q$F!$dG d{^@M~䁎-YŹ^%MfVu%楌")fKJqEj2`h 09v,?+|uQ'Q`b!ϥX}m%ݚo _Ye H~Pp'~,O,_xEF%ЌR"|/q WYӬE u =zL9b'> $>< ՕT8#"uwKh\QgPZ8,` Njp¸`;&Ef7TںZm+24I q>/Sl>dBP! %MuOLb]?gcڬx'/]H-wrVpEsipC[oӹJOUOOꞻ( -3^@nW; ~^}$.Dnۣla@tٿ,$IM/Qr {B J^F1۝ M3gGX}(E * .guhFh^(aA)8-AW H3S|_;CDi(\ &É2f,QU@XNpi1äh$n'KY>) (LxeD3QF<XR Gdgf^=렝Lv7$`:L@e0iX`Hxq ܭ@ oQ➎z޾gK0' ON?gxTܩ)oWgkF@^b;p0njO}N ':+W5Ț*<&feXG Aɦti)GV!E`"TH;<:M>.fo},", &LƖ?Pcݝ7s$d!6DfY~C?CFuw-!Z5 [p: c1#̮3ȣJĸk#V"3_l_j*/0+u \)Bg!"tXp5B]%dyTdn=n\|u h3Qg2}3CU Jh;,2KN+;f5FFO ݳjsyd Aֈ`gO<"f /ko en0G*觽T14{ l逩vIҥ wżPCͦf\9Xt7K"|r|VvzΓw߸/#[#q6UFP_ZFs-k#}1&bUrd6,;~ P0i#P wK>a tۧvcrmPiSM[m49%5|qYBf6LѩҘ~oJc+k꧑fz:l{S=rQ7h,PSٷNm:g5|JlBBSuX҆$"&UyRb2h'<wK5w.ײ8%guB6C$9f A8!47`X4 $>gs \aPxA 9%gI=HFV2j_\FiWQ Bn::ScdwP#YOgwp^R,ل3dTcr8V ɂ04juOe?x8'^40p,D{R8 HkhXnl#,t=#76C!X>"e1%/KeKgJq1/Ǘi`7NA.i6S}l>w-i?RG-S.&؄dc݃*JVx/s@ޖ-/ w8ʑn8F08o0h\Ӓd8/'VA@VRJ1i›~anXYأ ,6ĞhC8~x4tX !J´ $hUP.UvF:d?GN#2E-NJG,Os,~LnM -iͣ+bA0DAdjx{ن/jTsIr'VڝbpTyVBN%K 1YE3w.SxϞZ:bJ]$iE F oH`v1GG E aeqܨYR_`Ӯg_chkz8uԃ]kS!8--[݌Pa[1t h_ Zb벲yRON0Cd/"՟FJߘڇepe0Iⴄ:`@5g39s!ƌL9!)46ͪi)ekoX6aN ,ؼp*Q ^Hu8ȷ=(b{Qy6\5#(t-)لKuyuTf,gb.5x *AA1s39a2)5טn_oTMN|!M~dRT%Egߛ3KL'^݋eQ'rY@W`Lx7Pp.㠻TM;:.z Ɵ*F)j`M9??F4:L%쇙\Ss `\򜂰~KuA}L )BWli3(NZ>O%>(nvT Bvy&&ּq7p5@)Ϥf1sP}#2mdʰ8%~rm,0CGq|^YjvY/B!Y 4^ F?u c^r\S O_@֖hiog;:PG #Fd]<̂?B9V:Z3hv8·<{X0MA`4`9BW޻ZPU#3%y͓mKuhzBUݾdJQkZA"ȭ^}rFd:T[$ 0\4)hR=?Gh9nCK/[Dmv@pQ>OY(%,6Z 'ʱ/Ih[>@`pߣday7P{p B] Y^ )~v~ ~۬} v?7,5EKJ,:^[M}h>[z{0b ‰d #z`wZ E1\Bj=5[#h1^A ݵB`FCZ6OF:K̇ѸH)?7COEfngOt7)!FXr:t&ؙWûf5=5anHSD ><#J0no6ps9ّŠR:{^,&ycx3dۉPvs)7(<q@& 1@<âjoJ21Fm6ާD Zz?t%xL ӎ;ۖ0I y߹=?AxL]e+NP>B/~Z'nV/7wٴdEv%!lb"簌M m =8;UHQ|ӧ'D*mIjJDSܾ"`/֦P*?0N_~}Ļ`#$$+^:oݒP~IT\4[n@=đ>w%MT6۟`w?>1l><Ôlik鷕P@|.S iUSʳ9oKLfCc7s@Ͷiݟk.^ MN9bg<#VE9g]D7\^JeBX6qB⭿[uD+`" 70$B蚗yʇܒhlumv"Rۗ"ksQBFB> YelYW0>X] bN*bS*bYku#'Iyfq@5*!Ut3[RsIAIhfF,:)[ U? YEZsZ fW6LQ- Ɏ akH{D7?I<.YY^D5"[NfFΘ>6Uz^nMscЊ*<^5r Dr}xn)D}d`Jc2y_͂ M2^Es/QQXIVl̓4o3QHؕm}戗ǖ۲|qutpYr+*}4ODF[vmSdw K0|ek=0ʺ]3a#'OlCJi1(;yڸ{b*WˎBT;pN~&%+[HZDjq@k5(Qla/`ΧۨP39=Y ȣ2Ff?GeA|~Q!gf幻)c{_'bYA<6A%f$Z۶?|rubSfW}YU~dFo|3%> vxC߾0xSbhOU/ybfTW,a8()ဉ @C>ܟClAbZY{}VJd>)]hx3jH@Sn#_Vխ_260$X'WdPyڱRI뭝Rair_3`3 X@2}؀k4(}їxTHRi~ y[1-xoqz #>oWj4FekbvJcE/"/=`4{ؿUdxCs]Ta!ݙbeiUfIxﭜוy/%h8Ϯgj ,WZFkP{ 2-9,t/yRPO%vrU*t?3*ktl5R%wasBr8C`J 蚻O]zJΓ֛=x߮e/ z\b#zȲa㥖@1 OU1yh03~E ɱ@9Ī~?Cŷ#]?韘lSIIg]MXXiRLkX.Kb q/_P[o.Y9dząȣ:/ۇ)\BҬoAF}HGYaoj#4\EsЙɝ]FGK2bktzfn"Z"q͞\k#[vۇoP:\&%ʌeu=JW)ot__.9NR3|}x gB3vwuԵ,eFB WԺ> s%۳3QPtN۝I0 Nhj$)䇭po:@蝓W^_i0蛱yù2\2|e3ŗ1@ZzFPB֘s}A$`ӊQ5=2qw\wfc-cZל*2j_RA-"6@SZ.[e-L##F` EVq .R x{M8}e#Y1hNy66 O{N~̏6zH/jf2.>L&z!SNu}^nvJ[G_ZH̑3 khPo.mxU!BBbT39%ZD cyEA,"lrOHC# +]  cg/ņӖڻa ^)'B25') =#mAJn]x0ư/jh!vQ7mV V* eA5bfW?[pCVb֕?XHvRNakڹ|O( )C2)oatOv-*^om g f u f9{5aqe~.-6rƓ!-i\2:*53oBs*~7@P/hͲ4ڜJ9 %K:ˇ_~GGK ϼjۆޫlXH,[[= [ڇoyor_i~l(Ex" R6IRts. zlY} .T,[Vkje!*HnW!BL9C7_cNG0\7R o< x/#9= m_+9ٷ^9cZ I'JB܋Ę$6xTeqJReM_Uh%OFWTГITM^y XloOHkWKF,v/XlÛqE)Ƭ>4bGā3}+@Ɏߟ`(ެ Yɻ_#* S1P;,_;p18by{K;LŒ#>xUyw)ݱ-/94.TVi.k0H+9G#ZrL Jk11>`EFYfoǾt߸3҃D :1zt!,McEkR8WP<]!f!^ɣC*XXPfc5f_LK'p6qţ-[H xG IC4ݓ`' hܺЯK\{LBYIj9dE9'a8G+Z3tʗ7&?@<- YEkkxN"z aF8*R jd=DfzeЫ*""$B#VP,>U0q2>(+Li!E%1Eb62MA~JԒhOTvkb峽Ipu*_$ DMTɒVQ ;;ςZ+;ZdHr3]W)HR!c^^$0У3/u6xPʚr ]ؖiJz]YW;wtQkw>+23Pʉl'Mԥ)\p w WZS{_G)¨ E5\-eD?8ٍ7p>!w9Wȡ(V+HNо&gjiyWb7ީsT}y/αWoI|5.@ cki0oQqCq%}:Swlڙ)E_o\Rټ$խ-p3 6*2s^M(4B l􄼰Cyu|em} ,3{.m1O]]UMc cfQ-&w/!B.w f xon"L%Ȇty\:S2]lǶqlڴ % ''‰j6@9sZ+Qlt: ή,_{v֒,lhR :9vp5B$zy2|DJFUQnC`;ѰR8cD+m/qtsi 7 r]}PspX/6A/1EEAQajMS8On%qFq̙J5E*!e#M 0גOPf%ʶgA}~!0^^8CG-u>mmk~ޘZUb LFLb()B,!J` zit4$rh%_ ¼>w/LcBt [Ef]@-cPEsU}zftWN; 3ǁpwXSP+G=H$O_C`4Ů|S*p~(7Zm,!Jn8}P[fu3?5h Jb\.8eY(~ns\qu50׆-GESl7, ~m>d{@ /ZV́³ LZD#\' | 6xqʇpur+f&Bjg&[*Dވd T965Y?{]RfOt"Nlxq'DjAӏXu;i7ҥuWcyHJ; ,Fdĝ@oje,UHG r=`Z!ؖ{3`O 52\|ſkיQݺ tЛf-VCc"@'j@vjD$n@gKҘ{0Gi\zя!ê6A%b#[ثQs<n<%#2 "uu0̹h%&'}E ?qWR3x8sjg1mDU5wcMD P 8qpo@xnQ8c@{`l َʬ+S jr'{$>i޼'@XpS_+pW iǹWJ$"G'q|:ܮj/^G@w./öSxF>#؅+zneD]|{o)׎_#QrCj=Zt!O.,x5ItŀeLˠJڦueF/Z PK2lւmE{fBx?ug0E\}Z(LމYe٠ ˅9豆OX*SeZ;^rA~2bN F},/lN**>XN(a +1q`u2Dž+#ĘʗRR^`OG_K,4GiM2@p|$.p%cz 3wZK]x3͍L1(Aifob/0B^!]ҹBp|l1 jů6@ XJBh|%.G r[sEج:q?mh IPDG̘!Y٭Ny,zkuz'Ih|ޝ7q,1}RIQmQ`E"<1NOޒOT( 0{K i$%.ϢSι/so{vN {J딐tXƇme}ĖRa}sqMXU2RW? #O*@Tm.ig:B*n'aId^HTA ,_GV1vgo3̆W1PƄXB &vw*y^̨e1FMWgcCyY&1޺Ź-!X\=DTs'V#(cYHF%Ӄ("%h)P,=̥{˵@ 0U3N3}#k̀0f8i9I.a'dy$|n+~JJ|oC7&x1*#u2$kL.Yw0]JKKxVN rNP;eilԹbD6奅T2(d/JLa+,?) gLH3)Zy@ zt]+ `N+Aθœ ]2!-bD;qs ֖Bc06BEVN q`BhwCSKkuB/czZlJ(V #HR J*Tu~35=$bᾲdH蜟sKX<x&K%9OICLa^W7y|DCfalۿYa$P3 rͺ5ê'm8pW_0-wl'sR( l>Qx_e7'Z( HY )Zԅ[w' *)olj8ϪkE=@bH &+9+ɭ;ayB.kE@3%zb Vw!4"rT_}K@RuKQ4nC+RwyҺP[ʌNUwt8=?PVIHljQM!^O*BUAh^V0i5=[|tdi!"ߪsHWXo!ݝ2 %r_>Gm'fkd'B9nW6oPOlQ:F>6* :w,XP{I*KʊJ)B}Jn38o9Y: ǯD}N$ b4<$k*0D54Yv;AWSדԌ8gMsy&N~ 'ڤ1NM A4!_Jwփp5shFt; LzBv:6X%Jx׊Q[2ί3Ұk{GV-VAo&sNI[#`g^ȠfElu?r6q `"%4f}I>«X=&M9E/`@PLŖwg={X|iӤq֮TW.eĒþDi ;P{S'CIݰk|j!WY 3NJ}T=c*B`qJ>VN%E$UvC+wL{Z-\ /}hwT1pu.ǖf?ĺúpJ(~㸗e'TerGQSa##qG0 $6\ըRa6_&]vo[LsztU$QN3n3Go}>}ZM[jՕ$h0~_ZvԠLB!ǜۻ!o%3ʩAR0CQ~hB-@_I:bIU (l⺷`-gOJ`@k8$'RstnSlP/LFyl\8vиrݵ@coۅ\1I^*3=xq$e'ʕtt.M2qX|hS,N)Zv=j '!5Io} < ҋN><3+̎Coꉱe5NSŒ ]|'TFi, U;CP[͗Q#ej%dJQQzπ"-{Oe -h=h'0pT1!u;OKRQ4i7 %p=6 93`*v{E 8ڠ3Mw:y ƈw1"9! Upc5+go8h^ࡤ~Vﶓ/(j"߯ ;zJrM FQM"'"8A@JYۡl㧰_'ћZ5]̉GcZZ`6Î P!WE:ZtI*zim w1x<:-coY7<@L" qB2z3GAK@EDI(1ʑl{~KQޒ%Aͬ%F⫕ḭ-yܹ.x2sMFhKB$8niA9ymO|0emb;efAVV; aۤNK<㷺 C,e!ҌN_)6FAm~~ƣb#JQ`6 7oaMZ>uv@ :_IcuUcr3#_a5̂w"0 !9ENn$_'!s. CL`n_n-C~`?,[.D晪k=GK0UyxOHdҴ MM&@Z7܆V΋iF{qHxPlIS2p/A9)U%Nq1_P8sLkn*f>UM ?4y\'hPȑ_ݏ5B{Gnp1mz7 #Et_NFc7 G4#r[.j$!b׃!Mq8rmYр@cOQ?K|\䄀!:j@j'UQ&G۵1~a8[iHVT/Z ZI wbSZzno0{Y.lob;.8-u /5B/Ixazb~\C̤xw>..|Yt#vy1f+GJ€kӰh+IxA 0$(ż;^]*<{mFT(Z%:]d[d$зYEWW%|S5t~2">utpHt2ѕMWqRV] y3Q;*Aoa Vk&(K2<}Bm*(LGYٗ62T7RQfߩ(7vQ~>aǒkF$Ǘ./wrjnOq:AL >8irg`b#Vbi N jl[H䷦fV 6Bnq`eTG^,dnw(VJ\-μAe۫DYt˝wXf|,>e\/ыCg,K6QY m/|2]3> F|&^֕*@MI~;c"tG>?zFEۗ 'L" 1?Y,2!ÂeeJ6t)/*Z鐹 J;a{pیDD]5 p^n4.&/OOT+*baW[$8P⊜s1s}qY# ,J?0Go U-xԽ?^֐4-!{:vJH$"*ԈdhWW )^ӚDvP(ZzXUhz3m3*;7Ȅ*ȎVOr :H{ -W1iI7,e+:JoM0feȤx{\}\H;Q ۳WʺZ"˴'k'a{X7^w=:̏W@pMO&eV xc0> p+r;lumZoЄɆ4LJwҐ`<ܻ[) kH & x®]~ -=݄O*{!X+tDRh1Mi1eL1RBz9}nGSca G#i~JAw!>Z:y3ykIoQa9to/x=RGVbtݎ0ɨuPf(qÌпУPTآGfQ|c˹˨2e)+1MZ&N%^" :]ű4c\0t8!fZZ7-Q*(];3_Mׁ1vZlDkCACמhn=ٶNZ Q1dXo&VIshΎݬFKPUg ߒ&$ldS?Q5g P7 =O X"U`SGz!FI:ڑK]|[贴nl(C%8ͮQ)4٠]yGvܭ$"y'5վnä)"Vϻw(/}E=tE 8 &@Q@1AǦShЅV$cG,oK[7f8[/>57. l÷¥m,dß".CZܩk!u\RN9ULC@:GpVM Á1K(Ec=Oy % |H(gŹ5őS"D0<>{@ݑ%qq9q9y B)8_TMF0ߡq1ZTx l4|vA+R|zf>8>X+֘k~~Aו99 j773*{l+>g[w#$;Q<L*͗"ˢN[qցē⡤S^-\B! ޘd]>`Ts\H œ?#d.4v(Optr`KMOǻ-0aj}EBu9;FᇫMLR^7?ݰJa鄢9DW]H44~>(qhzkjz7B&@>t8&V47%iH?A A8btc70D^;y̔~cδ=$Ŵ6Z#;C {N#JpY7J^OZ=>8-k[q2Gʼv.˾fĒ%q꫖Z"91J{nN;0&6(-^N-bzVHۧԊpB*؇(z\_JZZ.r3쿠%"I"|41~L(U@-Td\My@ 90r['bʜ#ԃ"4>w˱!q8}Q%F5XC^(Iy{졈" gܝޕV\'u)Ii$/^VZs 5VPA΁O"tY\M)lS-i2[R)D2]xxG EG PoG`Vw*QG:g:M1߶ yX(i7t T z]/OD{UaKu6-@-X1H08вeuyD^[Oz av*~_=Y g 4NCgQrk4BH@} Uò%^-i)XC^qH4 qsJObcxUn`B^\?^V ҏ &'p 7-DNK:c?N]6bnj+*HuK i~U@XS*Y(&Y^_cIVYW8>+p.up< b(?w tQ:wZz& El*Ok>}j"RLėm{YGO\&`/q$p@'xѫPJ٭JFJl A@&?6ʬsNǞ.7N&'tg)T.F>˜s$# /gD+*9`l :eͶR"{R5Wɿ>_9lr!.6\HN'G;̳g+ps|)/r237,Yrɘa"^+ؽNB8`KD[ 9t3da#^%_(א Or۸Kp=Z2Y2Au%vc7m$^*s3Ɖ^I23g|Q1_ )jHx}qQi QO?=s=zMFA= *NW] B[ĦaDC3~Vz6؀pMo G7 XhELx/kB)t;5yP|ěA9VٹdQ _[{!&gJ:zIJrP3̜h]DԮF&^+Y1vDb>Qӆ^bOt Qn$Q!ncb2. v^FUEcMD꿿=׊>7/oJc|zmYUP} [ ;UQ~קf dm95pxڑD 髶 s\xc#NB?dPrT~b(gM}\X+#W${?9D;T((N'; 6cfioS"$eFm~HĤs/-fş\x*..#"%><嚬MR@A oWv-8cTl l(8pNU=9 EznD@=,{\|(qR!hUʐeCz$dJ7'ymI}X k8 {KTA=.pGV%BÞ.w? T!;T,ѰBL@ia+9̤jnS|KGᬕGQ`囒8]EiZmBH2L 4>@\%l-M7:b$wװ/9jasbclsdl Op}mjM\77U6l 'Mb ߘDdeW:7)c3Kϊi83UǫhSnn" TUjRlN6P)&[5Y.:1 [Wp3 47(Rcg=*ARݕzEѧIwKTwP}Q"]NЌ;p;s'M,K҂mT'+lBX$7%+kA .lo5 R+ J$ևI>`֪\^! Z֬!ѹ ~D_pNl[c-X|=n~9yIH{%B,(ouPtm|,CGݴGvy@ލ,j|{{aӺ))>vcb/]ICpwJû,%HPlLw# 3ǩ~ƅh Fxs ik\±BNM ֓ %3asaD+UFm*Ee!6 \c!툵m!&oeA 4} y;LDzғڏFoʽJ;_@͓\\z'Q/.Kb. Q& A۩%A@uRRw~V?wF pl7V>0XɬF֛<kXи([DLOd0Cު)i"h$GS#8$?@7\?)?:)3Sm'TqKKͲL QzlQ ,¦TҪtJe "o7]ϓJ0MbqBc]pYdcJ9iys@ 7joV c \\?l$+^5\kNfJ&nX٠ ЅenH8 "<KaeTr˞. i^s[k1Nxp} 'D_%{@vYFf/Zi4X+&0풴ί`Ov\dALqb[4ʩg Ml7 Hc'&6)G_&?DvGL_x_( T:vԀY\t='w==A?e2L%$M?ʟ#g]9̇ͥ2AI wã#B0C}}Yc_F}5ق9>ܱqmqVK()Һja:>IcjG/BIO.xHϦ"Њ gЕ<a1QKFlŵbj䀳n(ĻhӝA"h]/yӮp=#C'=sg6xE/k=re8\9ȖTKG↧C1ar+a2Mkǒ՞:B;-w~B'~5e֤7ÔE:dMg4>؁yEmpAu- ;G,r,Ivr"hh!y'?R{?*W10}]Jyɒ%V'fz6-X-"V~)">~10[PiY=lF\7u9 Nln*z~A^I\ny ?NNޞ~fQJYZ(gEUxl19q]'jam@J&9ިeFඅX`VMǛ)LD7s@/r:Pv:vZufUĺQ {[3QL⿢GXm,s|*5M8=87[X*ìbUh0rq@C@;?V{Ȋ Yc"O6J=:^D<(\H]^xy vQ"1fͳ}&ϼBO:(4)%(g|[ig) o %a$s  #T%U+aucF<-5DM@Om@1ߘݛtߍwmh4dW"gnohZ3/ӽzyjg{}A_i΃{}km8ׁ&b |Ɉc9LeOEw+40i2âR.&2 YYY?ަȏt J %2,I ĸ\tOF]\sh6#bd0B/{!`V?&Un4Ad\(/A(tsr ߒ}]]|H(p ^5YНpQ1M>5<7#~٢&r&ܝUۓ\w?xfIG) sYFh?1{`7(L5m 7nžHEE; 9s+:6/ z]S]VΓ@p75tPCor僭"̟)jp?g[Kׅ--:tX̖UrTS]~!ab+51~N9M2:?[|a<=nX~,DKs ( ͙s ]'/ w/z8ɰ2*23mZ0%.5E[@4D~M\d޵ܣ)^| ư Ai*K#0GN@4kaƻq2v/Ed* #VocaV ڦ(3^Gq3'w7UEMVW ?ⶐ~$vm8t;A>fJQvGD~put6 +l1ܠ~iAp^kwMѲ4ï>as^ uD-*U3\y p?F23e }wi-J]Ո9/\C2ap{d"pXCDh mP@5;p[k#9}O$_ɯUCǚUHW [V-n{-y5m >gGt>4ѩ8”i;"wz^w$UE-O% )/ufw|2mā9uF1 P ?GC+> ) KL#TYS @4?`dS]GڹZ<{߅]1vHk=?T]f,1׷g L5RŒP'f?ھp|7D? e)M`ᶮX Z '{4ne+70fhChy7[䟪+xrKno:Sg=;^8zʱǒܜ۽fuǠSSކ-!jVä|=c# q)ٙ(}iIt"6։&9: h{8Yb1m4,:O[   aМHJ{z8D"֞M/bpeۀ}Pc *Jp}03gQoE:. Wmwo&&fIQ:qАc-%A&ubmBeZ@%gpЊa:RncpqHȶʰ;b, cϡ > Ām F+0h{Oj?) Eu ߼kWOLJbWn!Od9~?uȒlꈳ$f%:VɃO/Q[)[9T'I/+[S? /SLj~d>Ҿ;vNF~ZǾ 8Xs>z }L'3>}}|+"2T4[u_Z[|jfQ8>8Ҽi/LT"dSa|?tR~] m+K*b^֍z'R6\Fc9zNjB|e|jfJZ,DK^TY9ДKFSٱ/%6Bji2eV&j8@pՒ2.R!cƘ^8ĬɬCɣGbk9} 0sA~xF" ,"ItYO~#b?y i9C2txaR8鵈,Ld,'o9ʭdʥ,\'HǠ5VZ>J5Qc.koR=uS5arž2R$KSɖ]km 8#MH21s(S~jlqZž ']Ƙҗ`?;K2O6#ܯΓ2Q-0^L'3m8R #jOqo$\ Yknaty?{u"\4W |el'+LК4BUxJZhg:=Ϋ|V{*f2?ɰЎgBEcYA~Aj b:0)qIų EKk{y 24Ux,52Ϣu+mBw w#, 8 Przg\s#GEeh~U\0-0Bs H5U#shPT˥l ? Q\fsӕ[Ԃzz8樕FR|`T6לOsx/"9~i?~Ǿ@ Y5'ֻ<0c9tƋ:Ryɳ2УӇ:]'BnXlGO&PR+x&P6WgzPp!΢yFFY@?s]b8"mhey\X9VYz) @$ДbO.ĵhUS:yi0ln@T61$~4H7}Cοka8|saNW%Gm` wuwD tRE4`+ޞ}K;-%kjvSڜx-пq.4`Kxp^]ʮ X'TJt07ds]IQ5 1%1IEl]bCmT<g9(ّAzݑ3Wp8r b/كIQ{r}z4^wWUqPU_ ]+E"d%: T7\M]` kKTLZ0\3q+5Z2y{&}GMJ>o^<iyʊHVVڳV勖vQ>fؔzHZ 93H '^z>'t5 2?LE' )21k69[:\pתpiuuw7*N Μ=a0jť|fh1_T] Q$dc6D SG/`D=_(w=A/Ci'Id1raMg2:&Wn_gM1ux_wc'y9G{i]ƹɤ˴A>BDy?VO(Z2=Uooz!{HIp;]h^skkIm{*Dn߅0LģM'̪a^_Tǵ P/9WVZ@M\뚶 gCV #MȦrz3#F=B&?L']Pb0m5>cDuJuϝ-"'H؀K>Ǯ[aۈiõ~us8=.)y_iE,MЎA-7XJ5*)eϛEC4.Mlx❉NT2'3{Sܖxrr!qWcL\1Fd=DIhLlC (2[˾d>gLi&P))K7̩2,4yxij~m=h~tl:$\K}Y:=ݴ?9UCw)_LTD{S*u"Ew- (_f͆ P^'!L Q~|ޚ_?sq9%M7 sZ%u=qc2di˥.:yxLA1zB";4tПy;tLR!}>Lw٪qyaq=q53M]M^]F^Z#Nzmҳ5as9|ntr8蛆2BZ 1)Ws@SD,IxtES"sK!ٓϪn[v!zr=ސK>=%h›&)ws3B?'F5e H_-NS4zg2U4& ,@^4+^Pq\w:E-gm Dҝ.X__asI~Qx)g*W4NuYDԙ۱cbF~yѷ崉fẸJs`9|=%!s{CPcjax$F^!qʃWn'@ٰ22;@QmhEMuTY޾o]ldJrUcYrP\,.YS [9=ʨlmf$|ʐ^8zأ.QwƕP%c,3A.u6=t$&YTeat:'[a҃VzvfνI P, O\uBSdCdM 5AJ[,;pktc#>QRw0`a;W181CpXדK>6k+ 0݌Wqm#?ApIX#v!DZmI╵lȲ^d( t;aAXRVͦ 9Nպd2 2$ުMbJum{U< ]pp h\#C겳:[N;41UTgn.-?=URYf{{P#U|f fc6dރO(ƩȈBM}{i҃>Rp,ZCxc[&\&LSojXBHo@f?cS)HI-L %8UʿN?ȣlfZ!oVmjyϛ)>kO0>f0qCU(S RM69N8EH# RǯbCgJ;) =Mo/h_ޠ4`Iqֻ:48_6,_q& ǿ=ޙCdׯ&p}JKxZgY$|/dS_p w byPlOD a8'9Լmoo{:sٞքJxv[oF],Y@ 9F+P|QOfX,=9D'q%H߻k@iyƎiۦcr"֬K(߶ptE`uNs%sEě"W Diw,3'H:W1"7P;ﹾ/ZI;" )=Fp0ʉ qp-d0'"gknbpTJ]R&==̨Dʈʉ{NĩTBjG :n Xz$n_uwO! ib`! * 89\u䣳)O"H!5'IlCEegGhzzFAad^!M#aU\7ft IS +S~A +\KfNz @ -XhYSm}@.r1\xۍej<w 6"}܊P?!y1ǪV$d/r/=(s)&h?SFA ()0?yȯ-dy堛`Gcgwz}PhG(٪sr<UJ*>ɌxsqJܧ㩌"6su63 \'nݡV܃yn?ޙV7`]G0*Ħ{,#NvV_1V&M>92ANq-JX*,|%%Fe#9Υ!bNiwa/c0EJAK X쌱]r|}fvkĚR~U٧G pC饐&7R4f(cFa}uDʟlIr?l5 73%{l|c%^h7ɕ (YY28EoS7 l.>a2 %2Q9AyOH9<5{*j/ƁNn$Ƃ\-D+B@ލΠJ+* fy#2 P; Zl)NaIlB nGCY4dO~bО,L8W7.-k;xaWKD&! ,% 剗„EW%:a=mBMxa胧6<_ E ĐqtLukݬBbO`!5`['E4RZ?@3 'HKF/V \ݴM!Q{L/v@X[Ң~'J9jͿE*M*alFWQȮ=D.@v7 :8,n=#jUyX c̓V7Old^򈿴t˪=c}s&,9;ypgDYؒ/E`] h:o7ZV VxZlsiu@n.ZkXvkzB4z*,a"p\=,{2U)HG5 x|ゲwH=T2NrK}T=)q+u=2]}-eȼ?(F2`1m3R`;雧)K}_xJ5Y;G=ť!X7 qYW0'aw2y&{!4Dm]14`WPfYe=Wgr*ky183mG':I37ZM[OzMpH] %HR#ѸLAn_8'vHי)5Y_r="YIg=`[ .o}a`Ik!+T߇) Dmx0O\_]0nfY-r17ʖ5iHD/fCC4!k(\ #œ);$7J ^|(YHDG=E+bvI#BW 5A^1KG{LhepkS;tM+Be4<~9WxX$;0B, :"8(> $]BhOٌ#^iQSigV$Y0&:G_8њ;ٔ]#hPZůdJ+Mޟ,5azMFށ)XV;Ş>qmCƃ- V%+k3P3B{8 ?2g=ޛ"NEK, }Wf&9OcUC%TyqjG !nBM|>$"1 tx@Xjr+DC8;XCi~[R3OU6 E; ^Z'>gxGxMejueQ1^30>Y@3MlbZ}ZʨzSDG,ӣ} ï6| `FZRul f@u,xWŨɊk&2G664w# hKEEHeAۃk9{Bm՛a (Isv.{O+~ndz}}.V2+H7EER&jEBp{aaS+2ZxO ^RJnq^Ľ&޳<@| m*8P璑%#pux6TQX$vL;[Vkڋ.{nJb(J L0UĚ-;'ooUժ5LIw+&/RDd0vpIoQ%&!LZّj1̠&>#%CyS[īгn6 H,et]^QD*?;]-]{>G q'' $_l5G:Hob/rĿ45`&v9eniVo:,{ to&U ѨlBM$;+G)c˰ GZ_I])[ %z;jPjް6Q>3z\5|`g)Γ@xlj:B"06Z(=嗴qd#{m+ pлZI2/\g)IC|s%["yAFYBΊ24 bp}MIɑN+ЈE@ ɪ0s)oJI<eȎY ~ɺ#Qs+4Z f jU4 (^< QCF}xJ,<3fNXQ*X0lDʴ7h ,7-s-n-)쾐 *V폗GC0 2 w%GۋWB2,)79ȅ{UQgaWvsȭPw[pO>O E e|3?eG!*DŽ1amZRxމL S^:S)nT$~R[X/,Zrۇou3 w!u3#`G+E|tFHkz"D`R551~ϟ YEZI)b4"ambdֆyͶGFogܵ0fSMO<6YF0D8K*$m|@mٙM0jfBbRX'J$έ`vV>EF-M(5&=ٓh" 4*|D[ &Ŭ;4 %A,Xv"d|cDx5teda/lP$N;aQL͇{:{RZ@u>OG -NMt&dAb"xttHN CR8ᾟ>PKCiwSD/qbhKԥi{OSE*?gt<gN_;BS3l뀍}{ W{G1;`;+qH"WZcr+~+AR5~ƺi!HMߐG`d P"_dOV Xch>AQR{)CQPAc񴱥`;ڦ7/Dzaٸzy**>R\VBONWى+pݖתI*>=8א1_ZrG?A%=ǴI& .]Q96\-茧".Byje*J -m]b BH:=. O(2H|4l")CǢxm>BO:yTT=&䢒$( }Lي׫%?d;/CP4ƆU36h֫%.֧!#fK4?6PN iap ,10C+Yq:mpK_lvCL[Dgx5K ,V<0p"?"a5{r&Z!c+jʐ:32o+U(dڥ5 {s 37L? ШtE0ٺ]z+UN"z_ZuԞŤ6 ~BmҺ2,#f0~r=qxF>z -gWR絔z-5$@bq5^\#2H-c%R+lo6fjq}#\C{9&[Z~k3׋6_zY$gjn3훖X:a;GbZb~@QY1۴6&9vϬ5p&:j}úutESNDY(/nr&3fH=xRTy'jN{^>_ȳT|FFz]bа(n&VAK6' JB'fRQ!}=-ـPkK Fx߼ <(6]95⽿\a4"ΤZkzEPXaQ}P1Wlq74p(#ORe;b[2:1톰Gtκ65[҆)!dzj %Ey.I2{>)wGu9EU0<=' )@Q6W& 鄏˿H~n/ps {'2\!"/eړ]AGDtڴ5Ѵ1ܵə"L[xѣ=0qew޵avU&Jm u|G{N`e3 nƘY7IؒMu<><<?B$L3K2rCe>7@ w/o%iNUT2͵7#ذBDu}Jj/_G@k?d'2_'El}.Lb^PvKL qV^k[ 6$J4q%b_.>O_\D܌\4vĐ qNڸo:ʌls;3GhQ35Gx1˯  ŪT3F +* P`hKV7:H;w4& -w f]0O:!H4>R@tX [tG wQ<m!_4򠮄3`fm9U0#a!6YyUb@6%!>,[x(Dg &Jѷq {%2D%7H~j=lj)Mz0WKeGOQ~C:?8|bBDŶ5;+_-1f=ʼf}ʿ@B¸(WYў]:.|_0l{VŨboL ]M{t^=֜-vkRl uBl ?,VEgsW3O6Q!A>B@ߓY-pi|4MfðZFJ[]穀$/hJt2,(h;| C&P [g-AIb>:K߃9 tw 8.%Q.e9f,;8wB8'roBztvK7J] RAcᜌIՁC\7NQ80[[g̀y,swxpʽS7鱎 pįtxKm1P,c[t۲ bF>AP$ +y5 p+Qo = h $e * c_ i+P,8IWY΍cD}(IhrNv4z$}mK\I%>?KɆw cM$"ˢ ➬RoA`O8kbH蹈  `[2Ѫw_URh]rT$iİ|xƯ/o-4x^ w%pL7{~ATs:_v`Aj/I'h@Ƿ8o9K6{]y)ynd`b\Ҥ:`Nl 8iIa64v?slr?c2}g(%Sg_NauN,RlC?i_5<hOh=t*I7gSIc2~CgRoY* EALa$&-x(]B苻?H#8;]QG,9Q'/f(͋NALY|{edj4%*㣨fxFc,hOK֦v򅓷'a05ORW)/9Ir)_Ə"7&$bQL]QJ y/W]s T<_U¹q׿i!jJ_4{bjM+' %NK e3]N"$`Ǐc!gۢKN2N"O[2RE\i FDzQ(X$z2 ruDv^0ƀZYKOD7+azZ.7Фad82dm6Hot'"R@]RȆBArrHn,r̪.J-ekAsR, "h݃3RDL~(FĞC8wsj~08H8*,ci\=1M-lvQLK.h96å:BGvab#tC4ih!Z5`C}s42*3{X|+V BaDsI^bDgv#Y^|)_u(xUͤ=b(f%Q;ԗMfU*~S]ؗt) gHf!+p:JʳVv{%\b?})0r`RDȁ4 O-M\ ,OfJ;= ڣ-OQMX$X!%/%nJT|E@]&(3lɌ]m(T0R/\4!Aku-Yobܯ5}f-tWU6ҨS&F =&ۅݙ(J Kʷ!$(3ҚK vIO$L R)MhJyZv[gP(H6B"s# Gfp mÛ╭3Ox5;ܢ_QiK8fW !<ӼɎ)*גF`_6C>/8gQ6j A|EI&Lħdf )ǬSVKW￉U- 3,%e"2>kŨ76=@biaCӏ"kC\Qps\;snߘo%V, q"{Ƅ_񵻜_+vyzH{7:)EÃ/:=v[ @sz]bf@F7s|\|g}/7,~Q ~2P.ņ8#X5 B5>b<}qze{%/}0Nl"DsRz$in5)b1c 7-Qd _hx0 &UmlBޢ̕Cc;BbL`Bօj-;Hx[>CqMf䜎 Sm @v(`J<4IE ȗsT%ACrytklfMj3bl{e(q$UWs׆L)h3{❁W̟m9M'ON>f8YQЦ]M+m8ך|`5w#4|ሥۮ_\6l5w$сiQ[iZw:No%XR;D A ̈Osl w X^' qjK1za;TFkbJ#))8%I٨u`͡yl`Yf %!7^yn&uA̠~U hԸF w胀h +UQ@y`5h\L nBpM@~:Vc :$cZ&r <wUnsZu>@FHN ;{zX+P6MQ rUtSI6_jAܥzCV?#B3MI2PnLkN(XK| .ɔ/>k]8V_ =w04jL5Zr V tWkcxtW-K-H9*V}_ڠ#=Q{îw'>VD(gg R6σ{[@=Ls 1k.S+LnYBXӯMpH[0(Bļh I3wmS nן  sOHYո67\k:>d:_ENbOI Ƥ1tž(W&re曯mnO ݎCp&L#HTjV]/uyAA0nݳ'%>Y [58j?+a4qp2*mv^=S2"|ł=[~ƻH11|k2VZ6#^.ԙ M9o w\ .ն }J*Lbh2 ©`±dv -m*^Ngx9IbɪFZ#DŽP925Υz\h[@]AMn)tW>pأsVQʈ0 /L>,7Ē> edbp$bF+} 80o;/؀y2"܅ Ja2%;,ah9jΨlz@Fg$~V f#2]wR`lvLꔓLSE5죛]pI [20UfJR>E'H1!I4TJ%-'ydDy]IF мmAPlItиY_ DK4<2ejJoHGY{Sm6LGyB/t?xYpAMv('[Bgn{K>IDgɍgC]to5YZQ=ϏTEwٙk)_4MOa_ \AG؞\İ @w"oNk%VxkO7 eNeiE@q a,R{Ӌwr Y T,h.7HYO 6Gנgb7QM1 ^@$o.NۈB3B1('p.a.7^10f&F P٦,rRd~IG}%, Q*d#AC?V 'ٹ{+m-)#WSIm!/g")I ХIOLRhϦ={=_̜gI[۟(@4ǹl1ctc:[* ia14'.休#7_Uf8:vT.jGyVzd;;= /NZ^;kByaI nNIؕʀJ3"wtN0{%b밊:F9m,yv/:ʇ)ȤF)~LSt$&ö߼.Fʠ4 TU|o;7Ѓ@Sak}>""6>@ǟ"gK4) r*+`i:tK~Sף^2xpۿz^UpW22B1RLˡubGspWr8~墧 D[Tr )d ]|)eX[6VO s$xR +MyPa({`5"bwa5IC }ٴ)EBğHW'K'5BRXP 9ns,~g|ETc߯aps~Yk&Y>֮SɣC/;:ph 4 bb(+9j|v#F^#>5S V +"ANm67;n9vQ0U4@o  eQ.iBChXSLnNø7C _:r3DᬻhI!-ih&"370Q *MWaDȊlh!sCmK8Ms|Io u6U,Atcbeg0/~"o;Õvqoپ%-MP sDݙ;8wE{ԃ-~S7/|5(fD]}bKmKtUPPl#{/#=^ݾ)z' דhScXO4* Xs u#/wyQseqQB>hPo u,,n-CݔCKySevGͬ yr&ΰN@!TG vbLc!hlX6>kP.#t_"P+K¡o4I4rz TE+sD+%Qko^s Bn}cۤ+Ӣn{X54s}(!anVKQʁ#.&) 5*cj牛Cb=rW"ڐ.>EHpqjTLbq5.;ƺbwÿ*A.!:\_oR ”VDqn9Zs,Dp|i Ec =<%~dREׇB*e]yŒfY1~EGat)/S0\n1y%j:!Iwo2N S,q wD7q-dM5-m26I.f)9[R>O\!( Ppx5:~q UX{ȴN0$ Iٕ[Bb8 ۅPLUxݙ>W?;zEgC[tC: ako+7X7Ys |pgW;M"[qY݅v9?(Fì(NF+6żA@VBfᕌi?RS#b6ڤ]4= .f^s;D\'F0" B2@Q078sT*Fk;aO 3f1 phf 7RM΂a^݇f7-遪=f圊mQ$W/i!ceG'E; @w)%Nx X|M{%=:_W;,1A4G7gל$\u}quk]mDOIX[\G|Z&Fa*)`?8jnei1YZܚ*IUC-_f^.ڏ?'A{=@_Z8kƑɂN;qP3_x9VJжVr?Rk}|6/zGTd{|`Eﺎr3)]aAo•qBfKwUcZײ`<%ȨQO/]֘S1?a%P^泥{Aq*yqld}͈H*o MPmk`M-dUpv,uf]Ҧf9]ɱT<1+Qow*jØEF;_W+ HY`pћPmVʓo<}x`Mb  5,?wU+󡶏 +-͖"LJND_W/ܐ3RlI,;`v0ކ8Bܱrwכ 0u\rK`+͢=QAm^ *$7ubYškw4b I8]U(ῂiz:X?qo!0<)8`)~6 6v# B‡( >_i풣DH^dǸ‘*>DL2˘qA`Qf2_0LpMJ7Ooa>PazpCQ8!"jƸeěZȻ3OXfbn/WY/CBVJ jj> ٣J<'p%LYko+XG(a7T Y'\-Nx+䬦Š~k_K{@$擗x*˃+<8 /C(_$8pQ.:Hf?onMBlJ-zfn uJHmW 0Gd5t[PSIv%|}ۮ9pl+ [ iyWJavyUVxJFVW6xQsqNt6CJY&%a!Z<_dU fӛ%1I_7O$Tq# ܼmzRn݊4 ezl$s~/И"ʽ HNVRC4])ņ}7$xmX9JG <*0zh0 T jzW \e.3]ڛX̃N>;@&X T ,G&߲ M:`.eT߃0qDVy9#Edj Kbx%J~4F m'7W~^8,0 (”Og5r+SA$ˮNRU> G66s^ UMmf1О"%Vo/hlkΈ$3tGBt9{~ fdY)6wxeߍn;ZJ$Wª6(s4nۨW*Dz%JrP1@]ˇWs֩ )U`4^dzim*z o#= cJTvs%-bIWŖPDT4N?I/*ewJNVkfRP.jH8#Sli9KeA b/gW;G_a~РOp Q*qKp28lWqkZĥ>947tƠ#Uok~?ZU.s\qg36Fyz%~Nr}~쳻 U{\T#:$S?'ni4im97Aw%^)>I=X#eSz7%ͥj7;B 6Mcb2탡z +U"+'uynpjLv1swBI3o[T~WGմr]M>lbšB9$o𔄓>@ܓ98$r5gi20Ga3$AAL}^Y%_򌢵3| vի%;o{G2FAܸ s\DÂ=h|q:L>f`5ʘj1BlG'!m=eyE\w|>#.P#z/2#ƔXA<@m&t$Ҹ'8R1U#"=q>?S\v_ֿR+K;bB{q2)th_炶8Ux' hcn> :H)0uUynyܔ` =d;~ZYUҽd@hoJ6| c}gǶB~wJMN v VULǑd8ʒ.y #=![W)?C%cd\w^=VY4K`2lA%SӾKu ;wAS o&%͈{:[6ky466ld?IP {n0c.!K$, &ּ8oFa75+w&YMBކ:\FO(e CZu<8/Hv|ŁZ4NCNR;~ϙ-w?ևخ Pkci:<qCkљ(9.l1Lu᎘Rl3Dwk"WV{2l ?<5'fm]j # 즸HZbon&GI7ilyAԓSx o?"$ (RCy18ֆ|IQmG; ^g'|tl4k V)&ZPηzt.t : X?KXX}|Pͅ.R)zAx`*GLdKj*#AΥqq{rIiE+zi|n̛?/δIc lB*gF;eޡ= ɫod { oкASoI`zCzԨz%ºz[ o'SZŸWoē''&q>v6QO \ϭNA֭fϾ .h/x3.Yd2`߄4UQqKLc V]j~-푶„o9_^R"+sS o09 b_Rof胸:1`<}i5IձNtaۣά'f+Y1+m^9hg`2+UYa9.w6V/SUbG&܁X% &ɐvz.ÞTH`r^ ɢc؞}hR+|,—7ohhftoEWR 2(sF^ׅm>ۇʩInjX+~mtQb:ɈZ/moRos<nܚtEQQi[#C{̃1;QI642Km#,Npw(0EA*tK-+®Arj;IPqKTtj'x X bKq2H}B$ 'wf1 Yg&{ qvMF ^isܡwO6Y q㸨efd֍8HX'B.{J - @\2n_SڛZyٕjr1"ew0{Km|{+$ ?VxIР)Q+|CR?GE#RLՂ%^|'kDžUħؗ)2;-xTfxszdH;sNמ 8QN/ϚW_L(Q; Ww3Ī8md$C$Gk*AS'^G0rjSY 7EcQiN|=r jOS,H3V.[IRKAX/P1}hT݇%+FJX576{/wCNHZLUoNKOdk)QU/APF@۽cf#16n=p߽ Y]L셦\mڔ RY]e3lDsȂש$[t|%9)X(LM{K_tyȈ~YP[o$⺮P#<+'^4@.T̑a4}$_O8+,],9܄ijG0F dA^wu3k.aTJӓ^gH/tb4TBS*F~a}թ{{xQuEkDxc j^?"}D|l3Yď.h8.嶻Gm(xRH('^ 1!v$Ph\'2”YjQkjKUYQ G]Xsg~q^!U8N)wηbGy¤ ݢU+4 ^͂*VK*-WnbggU$r6E خbps 9-/nMT嘺;iX:2mݾWUxk42'cF g_K9AR"IWSg7D'bHGtfz"}۩oV/{x }R?$jQaﱢ:0 C#1)`j+L;(.wr?^3DҲ+Dʛ(|Aqlx?q\&9_iju\x},Krv~\B0 \5[FкVc9Ws>b iTf\sbրm$ :"vEM<%x_rAOX_L’90Rc_rx`;'((w;BM"[ƿv I),)I5ǐt0wrMcl<Q|[[xe87<3F MivY}M4}I;P PĶ!Y|z'ru%~!5:~epReSu$;98 nr^zVגYLKqNT= e]-5ww+Ċ8Bk-!JʑtDŽ5ΐw ?3p9! =#~R8. PQYxSV7+l)TC70%EV #U(Ɩ`œ2Opu^fu3@ҡrT ^9.8|mWaB969B*Lq=*>ĝ@-/< }:S&T!O>|#$ORVE3Ʒfh-[dBZpv<۠.lhiV թ3<O\}w%S"89璺j|n5]( @ʅjtss{FL1~iU[eu.8LTyug@ns[~ZJ VVj߀!oT#i*:8 "z'T/۩ORN9xЇH{ BťeO^y]ѝ_4AK6kp$PcGb0,zD*@LiVNL :RXb2l}68Vy[pec>f =x=+x)95f6dnA\uM?.|NqqH+Yg`-Wi#VÜ9_V|L2WFƨ]s~#U0Z.in_.W3YͪN?6k Tk׆>Yѿoy3p1/yVHL$4Im X7s*xEzlT @$a >}.a+[Aeڡ#)IZ,|U&5wc|)N3RC$uDYIj*+@ ^Q-)Jꤌjy-퀘Jۛ_Gu0AO97U^ZCw?=?t`;'ɳ_~%\DzŴC:o9w3Oڹ!zlTL,q?0C<iap07L10Kk-@,E^eMVruT?HMrY 7Le$>GpBScŅIvS3Ú5؇ҧ9Nn-HPhe8ƫ3,^th*E+n&Z NLRpfU|`]9Iڑ( ߡ9UMN0}^y[oz\d푞2v6ΐ-r`PRU|3Hu%i;hˏhr`tbS0y]jMȓSA9nh!Nqʝ?>=mLL ?h" :Y8Z~kQIlwF)AeD2AP Ӯ,pzĠʥR >|>ѶUwxwCG5j|{sUEyvVg,{X6zmGo9]x(y% n΁'>`Z>FP}NQm-0@ Mu[ULV S \u݊e/2KjOa;0SF׌4I0҄{B74(V^OVuwxpWdb2+SG%G8UVhs6:oH@E,$kE`v-LI3.a56KRD u`"'RMU2FQIƒg]Rt6s~1gN-5.ŷ ͑/0_}znd+/X=`$Hx~nJI׳2IQE{.{{& :my˾N|h:&fy`v6Ou4rD'І&С]Կ}9TC9" "Z3tq0DVƍASCk;YY& p#79P螓8(9\lҤ\{>3+_1CT/ف''bbEԛ, j׃\^@ol (3~V HYAZA!PHTُY%e%bB5l|~onUv6QaN3?TO6K8O(uLmQ]H (RwR鶋&^4 [8_׆+QUV2E^E^H5 w7\U "ldeW@E$g!_DZZ #BZd-&P }Z @Ժ9捔Ey'P*71شs4ik) /Fj^u|6,E~jeŖb&m؅fDg;A)4 50LJzU񐼯~U%c 1pH9عk{wšm;6Di 3{x`#?t̰Y7kW&T >\-iSy-~kxj:RAƙ&C&Q곽:[Ƃe`>M[Jݴ}#[!-c 憎76JuQ@xGWcvi:1hbpMT(U=g7Y8QLm4YђPz86U3fw6!cdCw8aP:yR8x"Kz:qE2k\أ ?{(vf^#:^]c7*FTHm^2nFQc LV#`us'޷ Ghn۫Z!u|R+Ő`z"?3.'6wsdnUlg8}л*`²bVkYה_KyU{vӍ7ך6"*=g0U`h/!Dzfk[V'rL LM|'}k~oܧTYsF0]dTmҔʅ $Fo;#=Y^|< mKJ4&g*J"C|l>U _pFi:Q%.B@xBƷFxsv/^9-Ax5%Ci߫+]y inTn68Lw*ue?ooG*䘝VEH{K] ?]Zm1l >.)0bXaz!Pe[ = vF~S_0FW-RyM h!53$jdndt qr|BQKId3>=}FXesRS3%h/Iju8P#Jt C|-v⚩G! *Xet BS V4вH\U|+ȢTup0,LgHwRwiWSxMͨޅ7+٧`<72"3F fRU3 x+HGA(ANv61_$)TtZt|WP&`(Qڈjv:ͩ|([;n6?A ddsQ^*hCtJք{0+ dj '"İ#r)% vFM+<^=#"L0r ք<>lʛ D*W7|UX :kBiG'`fnԿ 4̺t~ De],TXr-a}~Y,~Ζc\e٪>l6TukZ#?Z3Y"n\kZhb`8Rc~XB8ztv!+Z⩫F?q#? +O/t%ޞ&3Ե)^a\ƱFZaMv BԦ7 5̻Z7Ts>{qȌ?nSڮNqa&.ugCuIh?K䝷䣦+Q3QcU\S˗Wi?[͑;ǽ[xYH j+O%_EukMUo f~76X:- !` ,:&ϩ#riɔ5#¾#we"-jB]NuoP@ܤ0: imbmN7.gKW\NEg^ "Xs2N`&4= yS,Z2DPg*<*S=oSx6%9 ?:I3> 0#*ͣ ŏBŕۻS؉MYN"1+{C>?(CS } IHm4ߑ*@fAEj*F85$W|ZETꚓ#9TP$t[_d@ < #LF']KŬ;,$.o뫘r1T;x}6ʡ-7X~C=̑DHw6b8K@R0q +xJ/iï1qZz}K0E |%4ͥ&$tnXY'`ϻjq{]f5ܕ7Ϩe|L,Iܴ8ۘ6D[߾L3K𹱣,`equPغ^-g89: Sؤ#f&PO0)l)EkO~dk 2ÇMg[4(M&pkmQ3V,!܉m#e2q]q,%)6N,.1V2mA ֐ %sdEhȊ~Yļ:35$lfE? =zVs^l6iwVwEDݾPQM>e]fNfAvμN;W;Ԭ0/ 傍!t4kopJx0U?܇ێms96yeԏ!#.ueqhb-! `\."$H!>!RH;!IX@.LYNѳJ!#]l,Mpfx2cEbƺH e{KFj)˱iz >0_P]>);O/-Qb>Be+=gW "7@8Yؒ^m2Y=F_8ϞVX5^K=;21d_v3κɎr0AöMM8+L(_|o.&p:3eR?)VKHa3οHE1 F/ӏ&jVۀ[(|ASQZ#`ٴî])US RLm E2аF$` 6-!6OÙ.)3Lu( Y@봁 {+t >iKBX\Bށɇll2u$>:~Q,/lE>_aFhGU3Α=:VAQ^m j{i8sw i X>yq#A˂⏰o[,\o\՘ ?="at 1cT3<=-qHg }х܀߾=D@A#\0Tޞ4km&h9ks5yi\JݶΗh0b!<:wTtw9-DN> kZDF3A 6MbZغ.˹Vk3 ZJX(諕BzF&-N`Ƀ[@%_$=R; `B67'%3nSB2kIީ҈_;.H|gA.l)B\٩'۰"01Gp7uV}_b0^iMd]sU6R >O07kڌŖPIgF]I(,O)-AuP]#ty!.\Tn+Mxɺ!6?*j /ӄLxB ?\xQ[ԧ{96 &=bD)Dl(EU\n\TF cXºæ/Qq܁n>_#j8XS?ϙޫf@ait!`r*ڹ&2wvkJ\\nJgA/G"褢.Fn Mq^$9ރ3w{9i?5תotH5]KP\$`Y_z&K-KcYZaB4? Z\TE itpRbgv[" ]C<\ƩZdk[jE(iSʸK.jl܁OYQlI|R\hAgTl*B[gKo}DeT~:̕Ť_ TqRSưk" xn_5;j60yaL L5IOCg"g3LtE\K 7Vf@]b.VW-؏i'炥L^L)&bn)dc\JFS!t)'F^ډ!/U)@C ::2M88t@e]mJ\t=!RJ)phgsn.=嶖~8'GQz4!yLL~5_Ң8`gYγC5S@gsx@?5L#W\VůaB Fo2)T>\ڭbؤ^%14j.P,5&?Tm< ."w۳jP u*ހo"saI5ߐU&MTε\ 9Z%юizV%Z-pCT[QpQ\{oVjkH/js4VeG)C*96.gn:f:Yݑ;f0SG̭SREȔ¥C{UFZ:~̉ΧT}\ȖGceAէ#a&v!8F2q%ju^8$iHNE ѧ(0[\,ө}0qqeX\Y!kbrvFh}o+HDd_Ac(LpƾxxUim씉9}jHf_T/%^^x}@ϸ(͘zѨpݾQJOo= 8Рrm0.Jv;%,}Lj.!qF|}S4r&rR ڝ6J }`i@ (]ɞ_Ѯ`FW?"cݼ]yZ!%Z/y`:_3uN-Bv9[GysHlD _,t'K6|6 93 19ۻrLE@-&lgA2]#F<܊h |sPжheqL7}WXՉPB˛9IـQ4S ٦`!-j m̚uu656JyqxߖL{K斾~b>O2CsIٖ6q`Ґ}rZ ;忥swI]Hrl;TS\6{(e}ҮQKDƲ pv=`9n!Qȕʓ-7=H9ۤ%eq6ݴQ} vP xYۯ(i7+U@c |ɡ{Ta2P83>eG|.[t|жzsMka&!Fa5"]ʷ,?-es}OKAHE+(A7ǘ8bma>Y2w_9LvԄa!=[I>5i[쾹j{[yh'%<\RLj.spO*Ju|"Д-i%YAeۖaZeW,D0f) )r'o~x]+! &U^YY$[7T]I@*036^,< q7ph!lR'$™땺u_:*a/*JC.Ι4vOQggn`3&B"3VM>IO yZ0n4s̲ވX=Wp5d#pDKEo@s=d }pɞCbi2\%(wY{3S i ֺ Ct~Jʔ Ҙx+A!"vpx!kxk>we9g+KH-^fM =/ăȊWd'd8L1=% C /{,Q Ni Gk +i$u @vuE 1R5w^ӹϫMN$,k+Y Q>UtE wr;<-H:7:k*)tP6੅Oa orhhf_ xHaHSFvCZK8Q?۱(UCOGN%뻠kvOPޕpժO.;@p>1wm8xڶ'ᲓQa`Q47jc_W>GnJJ.kjJ!`׃R I]2LdLu- fdLa,`}s49gbfWFI8hjv3$yM|s46=df%1>_І(~YrVv߇4I% cR6&pAI 2`vUE.uh)3;Z=zi_xcLC2*m)qΥIq\i%ԐFTg.ӚxbR˱ZmZ9SQ{&Jn˶O=!Oua+R^U$?#mYpp3,ߎg:K"`E 0+ E@TMMb&9;Yiůn>AsrzfdWwөX~~sgG%KsjyD4d-'q@kO !b"RW!|rtܪ_9u6f@*t౥RA8Iȅ5i: Tp|(?6 =n+OoNZib>]`{pmBczǾǁ"͛\YC3=Ȕ'yCNC%җ?ZH(}0j*w<  1Uz"c2FDN!]@N̠Jkc]LY7ѕsn7 ˷7Ĕ$Oq/js`tlKuI8m+<]sl؞`ptou)5elQR8OlAtU|o ]ZU)ÕqU4ƎZ|9Vؽ(=fhN'[a_Pʈ'l~K8?6(=P!]]i~82e չti](k.?> l[@8("( um?Z} gxd-rUȼ*f >]7 ב)ыX.7_QVEd`h>f|w%[6Dp&s+32 PI~4&\CQS@JME zUK9cQL>a^f˒F@n , T<3>60l%R[%S`u5v6IW);ó^Ҩǀ؞13EfEG5IDG'6 kw:jWXϝD3v4ٟ"0b;hl H͟<35,Uf)AcX%H体l{# l OkBo+UM:CFIt?/geYdn-qWmgI5d,?̝Q[oAω+HzRx=X,9.!".HK anǐaZvnL|)1)!%/bvGv7U)Ǵ}L8sF)=Xq@4" "z.jW<ۖMco.fDxy&n4H^%mjٻ<Ҧ"lX50Ö`1,cdcjB0_ ֮H1 Ox;DkSd!LEt ԾS3uuɥCt_W#A;B72j`]1 NPkVHJ9dWd-gWԦ>($jf\#&2/KmS.Ķ6+QU|(|qƂ'Qx4UG8 Rb Œݽ`<-+Zdz;]ȃuD#"ED+aסQ#8Q= A{^h'<\_p~JL`ע⪑Z :?`b|ƭ3$Lǀ (n2ť%;Tacԑc{u;Q8!Cp JC@4M{UtGcÈJ`7'[уrq/Dr;ynF kC~]^u1beX'WzdFٱ{nK :_~9u.^Μ8gy? o7 qՄmx Czvx=,JV!cb9U^6KM+<0JVu HFlBUAOMբ<1D}cQqud d)& ϊ'7GRpĞ!OZk0Nz~Dě=2x͔Jp|5P j U&5:aF >%m4f5}~\=֯sM'8b(==[>@Oj K,#+!ґ07&s\͟nTlQuo3:5WUO!|wA}D)ّ^QsC߄\4ⲥ;9;jWz XscXufj2ThV2munBג[HF ,gR$+eecD}VmpPK 9ɉ%~0}!887x%l<[!%|FO S `2=Tq]KʘlgSEa-׏Ou(?n-x_'ޛ6'1ZbnAbh ҝwA*"VjEOre ]\KuW`v *!A.uw[2Ng%jLpa:8rDSGLf< rp"̯% ÚcV잀\YsL<"7_(0}uoQzvDAk?"Ҳ; .>d֧`e(6w1Ƭl DhCϱ^, _Ӛ c ͕eQFXzNR 3tbm?͊T ~!w< ae5!f"Y؃#Պy+̯{q$Cp1p~ os|ҊQpoQo ׭M2EVIVxAF+7#{n!0!{$N?Sr@D& 7T|u*O&98ax,'D;{_'73BG"Ƒ.c<¨ŵ0? w ١~t=dp\:3`JkcA[*f.N[ef# ]'hcMK`]RGA‹{j$.'|s1 :$xhduv[P?s @J5ןv–S*pzڇ/{D}pމT\`'*>jҡ30$NurVmA/Њs5IUt='xԉ 2] CXPL 16 xu3 ]ȫSH o<0>EX̷~\ ǥyxw Uz'<ةBu Bƺ7Dxx u,C[tH%;UI2ͼ_6FaO'}_(%;;Sr'N/prցO=0Q >:]Z 1O*'AT+}IZZj4e]3v[-S,օBk:P:yaXZuߥ0U[cZa0Wudr9U(ݣ ԰WI3fI 0b9=]aGTm{ 6r<scDQD^:gZ"?AwVώ"Re-4=,t4ߣp-`\vsտJĆv,[oBY<#FI#fh\8o!>xo$#ZI7u 9ȹ`㻆/`Q],Y{+JA,| 4qZsLGM҅6ޖA:Iؕi-C} z& ̷+ oO)ÿH <==@p7Qx{}XyX jRk+>=/km7*>kљ:LnL݃pǶm}}"61n~W5$Ϸ[DZ81Bg{wOۂB9})xW{MB{ rYXc)QVy$G0r<ZT}sM˽*,U_o>ס,!hѡi*@g"`JÀ#-1'm X 98foڧeWU(m zơqHm!_/{DOAQjof,rx&c֌ yHf&4B_:ĉOkс+I6vZ&,(8Ps쫢k4,?hOz5 )IUH8O>O>6af((,do@Adb }}"7 V`Ң ֓mGB=żJt8I-Q4:4Qק@3rTϜ"~2JF_zK-}2K8:ʾrh3to *>4btbC kh}J JL=0dwG?(~6ժ{e؋|Շ e Ieg FT)U`x(KQ_@7CTDb8̬o.`%zJF go:^q5vF]ג_ !]6l> ?~륤3"8ZxئWAlX(ҩ`"|LMS*uN>Q_=hXm%9[3!eZ׺a>F:Eyq28@e^_`gfn)~t*ѨbŻ46a ROD B7upCI\qqѨ 1âo4O @,"؅T;,xTo_ug9#S.Za܁0:3BR/~`]'ݡ"8k_80q1|횂@9ZWۗ(۞:TB~p}trC{׺ʉ'?k >EˉsqHIJG!olƊ+df41ƣ铮6bb&hF\[]RO㮹禤ɣi͌SH~QY+OA],c\_mYZG7 `tDbP&8l!.Ã=GtV?B:iԾx:s-r+5 ҈&XP`S +"wق$okZjrچFiwIoqR^KU@!Khq-ˑ/鮧 I['Ġ0#}DYtM49Hf2J\)qI+6}*Uԓ,\ApCNѯn~1g P4@CQu,fkl#> YLDqWxwݴDlp@r՜sA'SH`"Txe=ivy ;6+ Fc%$|`.땡oBCK}3M۶CԎwoNdAaf+{Nmr iudŇ(&H^>%'8#ȴu*bT'L){(/'Xz{HLݖ#~TC2ÄUYQϸ?3KBe5!({n "  ZF&'[ =DwOEjMuSVN",QHDvl̝hkB6њʿEj0ަ+E;'w9u>`Mdn2gɜ9h>BW7:l#gmGQ8`Q7_* vvś%@s֠}H,;h ؅D ~ B :^GL /7$,yIZ;pt'9 uHҒmʧ?<ĻpdGYǓL3ܽ]?;RvDw$0xLzjZS ],I/gMt[{xͦ{~AXS4Md~kQW!/Yl.͗#JadcO\O͇ˢ*73b!UsޓpƋ"+ױCxķHgxãIɓwP UwyOB XYȠr7F ͨKO8vlSޡTڍqu}'X{忿-LHcR2:@)A/?PNm,ޭ%]L{O>Bn1;]uI 04?[Ϡ~ ԒWzLMobC/[hǚgZ!?k?[\X oŏ8wO&Dܺ)°}#tZ'O~ב9Q6bm_r1\q.m1p$0pb 2oܥK}t«}pʓQD_P\9D1j"ݨU3@@a K-T[AˡfDH\NφT $f6ozB%-ZqzU mͷj*:s áJѡSv?EܽAB rJ3Q iLfs]wҵkAmGF5_Ӌ"1I| %m8TGH?[YpGeC+(T./5ϫwr^(ds!xN2+ }8U߀%J+MeT?75>WpeȚ[pgxD2v֑%9e_:-Uuib1^;y.<﵄.t > +0}2=ԙ]C=Fg>l[+s!^,Up,^$,Ң4{SĬ'd~h4Yj~hfB˅8w$߼5!P(TwcMצ~;%O=Xhcx4Z(F8d׊󏩪:&;sqF)ãa/@$f_kS X{qnShRߦ^K7t%}\io$]!:BdAB#fqE"B8IZBZ>cꥨ9DJE6t= UpӻLyTVh:ݓ9O'6%eNwaD cjDW{ȷwԾq>yL?PO-k?momQ_,[s0] أxה`* VT)zj ʜatc6hI=cSJ5[BFք}L@ &+S wWr(%tqeúB}nh$f:.ɵ@S";5)zag`p5A8]9R21^13VatcȎqưXe㶢WfuZ̑,{m0qH:Fdq~񩥎M6 ݴWˮLCSv.[oX zZvjݚf 64l!8)j}VES0 q1>ԠP ^*6po|ҖXf95!@'NbazұVK@*ɔ *.@4 CwM5۹p%5g5KgWG7駐*kܜBluÞI旦52'ZT\\ (\1 |dW(9~%+nzZ!-^m}k4f!=v$^t͛iΛǖs0m"f[gTnz#, sFkGJ]kXO 2:pzj(Sk?)!MpGJQ*:>j9'W)NXe;T.M=sCXzDµ\2*Z>7pT|l"EE/(ޅcͶ>X9]`=a ;s9YG%H?= >ZPJl6an÷JޗXfגJ >/ D#k%‚ea*Β%m-/X&T6jK%WXZS%4SGAU4Esg6ԍr=J5QHP"㋳ֽ:xniPixCP#xSG(6;{0^3#:%gq$5h:l(˙k^LѲD M@|- JeA~J7)h͵.*f!-jT`[oy]fBY\#1(ˬRUVLCq?XE+8t WWS+0K`ƄbnsٹbGyl*2{>)C; {% q+DB! !XEV@&B*a 䔔HjGehDE0URf*pzQ t 11^tUv {4AIU[^ɝ-q] 4-\CtE:}̮-KhXH;ZD<=Q[~{x렦6fNggBu-*x fq;ыLo\ FA-m`E~ƩQ$L!@LO#|EZ9`37ݵDN4`NhQ~OD$5K([ ueč3|raT~<.K;d3w<뢠 l}#^ô.H(b-'[5ݞ58 @!Vf3^&aдRA=_Áe6ѐ4D%DT(HIm? !h|qFmz~i~[&B)I<߲K͹In;6J5zAKDkf4LaRD|gZ'[rh@,xMzL*s@lɰzwe+휸WtF;K644%@ՙpe; G?_k6٦NҝJhCw`'sycP1nYG1AsZ+(t5-6G+r `AUcjy/D;=[@b5n9[qI瓽 1>6b&`#d_Y+l ?$;Ѕ'A #OlUőjgV@0*b .U [DޭLad۟WG8&[551=H9ܺ3*,Q 7W.hnK9gkQ6]p&Qb{LSf]o~AO™,O3_?Oxd;#d`E⁦uZ:\x(| Bj&'p̈́#b̬}3b0!ֽ&͎:%,@_Խc+\ͦ>U&obK*]ڦJrǖ,tP h]o2Az#펣I(JaPآԪy3 c! E$3Fڵ -t0mv[& zgNS"So2p3~ndܒ=bLJ=Ao'cXD 2fj#<8BO!x 04=š¨DHt#':TW)_EV2o |n6^7i6\3o:7Ga뺔R~e1ŲoX,Gݟ"v(E#3 ˻p/eyNBMS^ ҅{C!?ù ln]JDR."[4j8O s8BDf+`ui@NdIEcu1 .u1ТivS;S  (G\u)o--`P4|}Y!j}XcWX+E/"~U?uM#^;O넊lUum@[ȡ/B֗Iˊ Ȼs-~ Ytez7l@%NoQ@<oY_P 6(p'  >Htr)m[J[xX`V gJN1FaB7MKu o~ 2DuCf[p {=g.CuvCB ל师Xh$UjVÚpVV`>˦ b5$,KN,JEnOBzcө\ Κ)3I2 %VO)R[ c :o$ G:K1aUg2NX&w_l$$] x+d} l3_nR n{o%39:?l}JV?ȹG=]e liJ%MN ܧdI4c4p}ˑ$`M@|H0YRU3Mc6]S0рW)‹vC(k5N=;Qʹ*93LA>LlWhlNzp==~n]셌A 6ډBKqJa/޸)~dutS&cn-bDt7pxkjЎzstةEOZWy9C}M1YCM;>C_K)i>r`?"T]:>&E),`EL^jSR0c=ߘvŝKjm}eqClw"چ:+)[ې.rUx&CXv>S/6)h =6,|`eySPYg)y8ofҐMS*3O_H?$?$#3Q|[G Q0W֦$R7)45K?OVh=6&,1ܗNMm~pO*^(c3>70l͋fdkHYs DET%oeRՄoCxc{d*yU[*9 )GzrQMu-6F=\]vF$7~}52s1!ܫC7Jڝv.HwM7If[~1r"Dxc;I;Γzg\Ѐq$*48\$'LIAN#^iw?w?fpX]> D#^]A4 :D-}`/EK(|fq!μ %xP:Jԙus0C;BZu56уez.֙h*%Ip"d/lt#|9۝*wR6^XiZm{6F^32 !E$ω//P9~[`e⟲ajgv{* cxD>:IDARfFdYww|JpmHfj8ܖMC 4e["c8; @VR쬛¾.Y޵|>*=a{i9)G$Бǀ**ku8YN=|4VI 8G6 ܰ)+]h^ Ω7̬Lrljj&鄙hmV}E$\X;c@QD!Op=l?yXvw:2}VC5>윕nxi-nnc}_o.w<&n|qN%#H" ?^E37URm|]~Ũg\8Cj:GBc"1eѤg:ڥ#[S>$^T$:h!u$߻{'}$B p!' Q}i|[2swȌ8$]J1z|;6;b;a P_ i檷!An{J>xfMU.DBZY2s|LfEY᠄ǛYػ8Թ Sk½>;L:׽(ޘ2;5+`cȪMf${ Ռ]Xa(LOIzGҼDŢ_F`';KAy CL s@Y^"2== H,& E|뼁6ZZ<걟+>)?NgxyOz_~A%$ b l8v=WgcŧQ}uQwНӗ3\-Fep=u=yTW  e8JRM}R'BiqEәx:[dw~ (|֖3,V9*|*f=m̿ j:7韍{:_!Aiz H4G$w^v<5G\hI Vߵ s*W(@&!~I_ڶ@,GB' r4ͽ$.،ey'>} ?V#}.,l|Px2 wFm\ߴ]gжs+^ `E+Dx)[geʀNV w.z>a~⋪)!c[h<rNd{Ƚ&RgJ3Ƒ^֝Qb(ʋ C,V

    1"9v;18/;=$pz|u8GɂU՟qb1 luiJI>,"|,fHGLU}?P8!Kė>p/__#^Ҽ>A֜xg9dqi;W&z;J;-UKt\(t7g3f;F+jeycN1}V+Vbpx+thl< {8)z.4ҥ!lwHtO`ݻ ^l']}֬cL QXC/- (`#nOK 6 _)yI q0|)d`7liM@C~S"3aMNfĔp EޙsBryhq}v]Fv,wfwɗr@nzYg6™7vdӲGY XFi镥FHtyrHK{S(Fg\dy]rA b\Ҷ1-oLEbv`қ8!53ƪ+7c{?k>:{qiyLS%6@ޕ{ *5Հ1ܶyTWH>7(m {dSUD>$(n\ϔҧ0]Lڵ梨XO Cu*:oFַ%W*Oa#dvsq>TM)v_&")a4ȕ oTK$N T;uBfЄ8d};:I2cњ|llkU<$m mt>TrF-UɋOF'! humbU~7F_[t&E/)u,-߃rVK%+ǝ0R bأor@ͅ8w `Va09CwL刭HboA{p$S rhk O*oH{:\o\iMx`q^l@K+* )Ց!h!rw-bD[\}' DY ')Uqj-tT{@d ?K ;IHhGZNa-Ƚ6:Sx2Uߌ^SC)N/-͏k߸e0C霁jdj IoԌˁHĢMSGoC4:;[E 3lq1%{Ķmx9}^Ѓ0]gřG^d ev5̹+2'M-C/3?kN?$<Wy4.|>9[}r!}9)Fad„WO>k1¨\_gd[ :4oK%)h~2Z-nt4x߻ߙz{GWYf5m шP7݃yr3q =46HGaZKANL<4Jx=Vq =+gcp_ 920t IuW$1BXaBr, wUN l&C>O!dRJ} %Uk5hϜ1g8D_X_a(!{:'hQpoj/AM"%PVCYs ,,p$kZDf$ͺ`ޜ0H!(>RR}HYϚ)Tc12Dz͂I>'9>մ]$O (}}*:u.ؐW7̛644D9>(m'?Q\WGzb̛pll-8;! !) zѹU|l'gN/+ ZctU˹/bZ^5T,/'<b,3tl)O ى95oƉ- /?$sȪ#[Y՗h.)jSsЩ`juT* =g=$%~n8ΨmRbP%(bV|a~/`&9&j?# )Ju\ra],g_D P( Ey଎+WBġ$[~ϴCuqpvH6uifcw$:g$ vMCǶld Rr--h}lVRXs1JhB£L·qK.v?'%Y;Ũk6ݫͅ}nx:#"'bݦ#:){zsD{ab(Ĝ雲BD !di<*6 ?I}tg{2{tn꧴1M8| ~# ~`"cS A y"ⲋ+4Om=/7"eq x5͗[ڔ]7D̢3p@@UXM>V3i ҽZMj^?$opWPJxdI[ ͍鷍VmkFTU3Ȟ#PW/ T!=̰-- 946 7E^k  E@͊ -T*)ۏMR+?u'?⺸V 6@޿Q%sS i(ʾZ 1_P,|R5 ౹9&g>{D_ Mkz14I_;AFA[3 |dr–Unr/R7/RqdM'Cc{<<I{kQaѶ;, Ha ӎuJP=~q:SQ6IJiNv:L ^i4_2XӺȵ1׋@!i>}WcDiB[[gx#;g+t0>͛*32 Mzfj+wF8oFGq3$fIfJ` dQ-МFc·68w8 '渾$s~)sa |2CS V]B.*g`mip<$Ș|(HtxUw+Kǣؽmiԇ$Bl6{Yؔ萍KX aؘXr'^Jj \3an˟T6F2cFle:]^$kR@J+* X:RbO9Wr(9jӮ&b kV H{0oXMQY&t\Kkdͻٌİ^wS#8r*)qA|eX"qC0{U尜 MrlkfOrlIFF kX3e̍rYPlFÞw q{_6`jA7;*C%2^IՋ9qc J9ufbJJ7Цn%LQk:ie||t>rHw/78[Bx?Jo0) 1o?KW}*T!U}Ni;ԄXy4l&_A5S6i,:kO*j&*鎙mJ,Fp^촸ѱn~T{.7 ,nk:aᲉ^-);SVЙEWk4/155*$<|r1` /wcA ò,)w}ί)#(AteZ[RVRkE+S mWϴEqW.o$M Hq`(nYkyW7]qmod|/~C@1xTLp~؎$`yH>{1OL*>mJ_\Wh׭ mO'0ksC z@6 &>Jyj馭;H(SCϪԹ*T6lhF]^aM_wb-ꄷ;BU ,RN-;ZTo@_gߴq17I'2pFbqY\ 5,źAڬq19{zs9Q]b4m5i[Hz\?;NVS{i>LFhb/IB2nzܑ@!E*9FF } [Na7$\r2`Y:hra1/`aݾsbzSa>?h8 p6'Fp+o; ȑ 5{Hy5.z*GUqXX㏨C;P2QnMd^T/\%Y7j;&\1n |vp ɁS0SFLyoWP1{cƎ70:Ɋ%19 V 7Qbnv8P(AaG6*I yDt50PIIt 1hKpطtK:rR' v!kd[Ijsa5Է]\L&j=荬fsfWhXkyd&A*UԢ-n! +sޟY͟B1`Y sVau uL\ }%kMٻ=k+h.eВ3'IT{% J(OO||SoWgIe %`2[.CcHc=ECVp6ZgaFOF%Z~fSrF?Ȑ&ʧEoIqѶ9"2f?fߖ'‚CnȞ*-PC[pݠ$[׬RM[r_mYx[eȢqY`uOT"UUH abͳՖn ۧ 2OQfT֝@h]СrXEΜLԚj4<t@_i DZޯFs Pǹk2[ɣn>jͶ(x hN|h# oOVJJeTdO cAz!k8]]o8,m֮ hEwdkpۺHDF8//-t9C[m0hMԟAfCUh,8DTBN̩ngZpJ є$"kVwq7A G`{ο3riɤGI">smUUk,Oc0}N ;Yh?:*N@RhODh *,ɲ-eO#5t*ػKqX0{1UArK@qSD>©VZk'5"#SnL) ێcfyq@{ ИbM)C5D|Vr9!u#SQ@USv\ & GU󚳚%^;R¯<C*1冗!M'&{I`J|Dr֎ijͅPB1~LD(B*λW)cRo!xR R` ݰKvPn6پ Bp胪a1l~kL1T 3{ >"W r69p 8߳a|ȝ?u/+'vn Rtۢ_ﹳ?,]ӈ\ت =XINm}Ւz?ȫݛ}}:==\ޕXūGzargǢd`\24ϺrL>GfUP8l,c Sx#/-7c> |o:֎9&Y& 4-~4To20a٧[ګNHD~K1aieQIVmP-:%&'!F{[dn~ =DI@NLߺkQ5.wR;*~>V|mJOjzЈgIK8E/Azv7q$ =lNӵ-bϹvqȉI$ 9ɯ;e GGo' xr qCzGuG`(dAO0Rgzx`EqL:J *Oq:vr\<H) JW${] NTC QK." Ms$'<6$v\Zn@xHMDfY \@9A!VGCo^odO5LUj[Gju6d`QYFFe ;8ե"MbK>Э]Sᆈ_=,f}Ŵ hFKY9 /6} 7vRj _ `/9PtsZti| |BeAĘ(v!Tvl˵E3;/Eޗ,KmEܸv4 UIjzN}8Ūn9xufH.% U{]f~MQXjeO hq1'b%*@*0y\XMJh!Iz@8ĕ?_6(lӞ^DlUʳF2+s.uo#lz#1yXzJ sm4s~ -o]nv@Y*a9keX(t@EHw_z?!%аX.D-9+jL4Lme i2,Sح&妃|rI 0`bҳɄ*]U$ KPw߭nНˬtOMu[oۚ6QG~J%0+Ofi*;zez*:R wM3?ȳz0z#|sV% 3*!=WZ?8d&FZl"rq*i&MTm-0qik?U81OtH]9c/{'yxDZ"$oK+bTʯ~oQ"!(J,>+OyO ^!߮5ĸ3&2D%kzi8}L0p7^@=~1j&ND&.feWF9򇍏APMX٣hIKh1UktK+Z%Oob >Rw sG4TOd*? @˄V÷Po¤U'rDi?Qݹz;CC<nL^o.)H!+S: &eK jMRߏ)ua7|̼JѥujDG%q;սY޹BpL:T2A$J9^ UlԹMcqI(V!hʠwJJו}0"·!!i(E 3AO",/u*yuΆ6~H~YQ.KbuJqx]گW߂juEx'Sd >|ġ@y$j̑4;´\3$.m%r\Fшa/H.{ԏh 7Gc>ESX9X|[>G$Gs.8_\AzfN篖OPtˈ@8TfM5o@[~R<5@ 9)qI1`Vy۵K?f`FI>Tmz5neA [ ݆ݍ?dRyL3Mk>9 7:So9|^K1)'E͌GPuRyMԼG6w*:SP#zyn?ƺ %œUQ|Bܖ]Ij~+Fa< 7)tH"0KR"ܬ[i AVRK9M |-l n7x.e&^>l sFQ#OSi6٤Zl("e fYo;4N)QaU.bwwpaK#I^:uAީI W }5*mó_lbN |bW߃O6&-C1x9;V ߅:eA zҦ\R[??T3y FVN  1E;Po4Xʛ0D1a.qi^:C]҅5Mdt.g?g=7!%.3i\$R@efݩy)kZU\yWJZN)VuZ5pߧJ&텊N]һ^{ |>mK9F2!!2 i1G^'tnя|;2.;T3koqqriزn{˔.jϦ>|w;$о2'Q^T-!%Ɋ{$Mw r" =&qYBB-6:R͹MoUR|;='fV^GwϺߋ?`~wh4Q)|+|#nF+V_5~]{{L9nCm3ީY`V!yܥE` }K1%_K(i_JBH!׹+s#N/c w/e"QOQQ sD E jl7x^Z~uiWcX@@sUCyV a>Ze^~s%CXޕV,FSu:NMVaрڴ1Z| Y ==ڠ(^LS35!X3sM lVO!4 kLO8}Q|~ND$ 싻9$\]*6s&Ո" 8~>*wXw7E,*:y>1>mΛF=liOFY7"3zuڱ%'TPd"3]E)ZD8{`uը4k~ ,K7ڦ \ HQtZQs J~~<@F~R MnBT7 >Iةa*G<`U xdنG.<,/䛞W&8Uz,ݞw,x97E# <|i^αj\Ή F5GA3%|: +/=t^B@̑Aᯑ:sYQ@._۟v;@"mia=0AL^1G uHIj ߩv'\IHr+#${ak_>-d Ǥn3ofUQMQ?_;*o.Ò6# S|/$B|b} 472&茱M9:WM᾿Hv@ef P)PrQxmm} ,Y@Q];4qdȡ}*ĎsDTyGBe\R>oQ#\#R-d-1ۺT3gzA9B]yS!h YHt-<^uNʨ-БoJ}1(Qq8g19uoJ_R'жU̅ʘfz"|M Cw b28UEJL(eRْia}sia_р~)Pzii[VW綉U% d|8 5Az vt~9m@LzI5K2ӡmQ'Ɯٝk5DV_7mbm- xT`I[OUFŔ!ɝ}y}s%\ZC&>ؐn4DL ɜfM;3QY$vwѹIaǓ j@ƌ~ v&Z^φ]1|XEd3Ur7߾sÙXRbm_1^,QDH JY\Rwҕ\PϚ 9U6¥!x08hn(_{Xz* bg4adD[ N8і| ZKu+iݐMPrSOtG/QE[}Y8/8ƴダzq&GRGi1'Ӌ1EQX5R￷Z) O?NYjtHFCE | []2 (٨pӞb DW9\ް_MZs]s`3,9_SMh;k(H*^7 hϟHDlO!l-3xڵFni{Vwaen|I~+0u [r&Q3D_TD~Vk)&D O9:?I7 KM0G{xui,J sH݃@U*^2mR# qJݥ[C򸴃_t5c(Vs3 NO\,Iv4Vs]BEun.u8.) ULBZɂ%g9R"Hwi 5L#$/gOݚ2Kd~,% Af7[! 8QvNU{ %Dfzq@h-*yAO〠 6!̝G8 jS.6t|?)gj?^x|aęHڀqDS#Ju,i Sïx]2J?&3a?㞁w@CVvݽSkJ )_9iӫP>'I8yFXsU{!wKq]Jo2p~A0g?qIa_u}+>w鸋,XQm#7オV,KB^~,fA{r7SJd+s4-ɇD& -<70&k  KQ3a'ЛnĬvHVu#\TYuav73r/ RxR~ϯeO`4bO8%[p{bBvv^A͆(DlO ֲ*J#"AH\i>k[㣥>ZWȑ'N= k0gڀC2:ez`Qa!r&[q?N.Jק./^~b1ŘLu. O\x $&nXU /i[h90QN]Q3v%hA zl>㥬F7=='}W_G4;`/!M#72tN6LW^4^M^S1U:+[0)^2g451cƽeW5P;mQ93 \ɴEQ5GHoH<ٴכ\Ȳ6nIY #ndxjG;R0V=Z kWti|)9Yn>Ozy73TR#> V{ZmZbR+lϿ7IԢ7HMŜ냪K\xh^`v7éac&.GCTs2k}a&F!nūqM*s}|.9@Q pMu%] c}5.B& ܊m8z,c P,F0㞑.Wz!.O1,ڍK&P* C?ۦ.7So0@lFvKQiEO(B.Fٖ`vaQw‹߻Bp(ptKE5ANG⿴D|/g ^ԫc#..{IvRqŘU{ZtY,i|CQ*65VGEhEcN+KȸL5?FٿRyKju Vk8wu|~J",kdת|GJL݂eȄ1Jm&ÍTw$ސSR[#?깋3}?#ϯzIDVbO3ZsG=!ȌТIy#{Z*&􇰡4^S 3#A>"A+L/f_a %Ciar''N);:@ 2<џ ǧo.06OFO\vPyå@Fd6_ݗ*'B"k$ /اd}]jTM£h_= ~=?RYP\HΫgMtfp76$m)<x;l,Ŋ;@(Gdx7Эٴ{.?wQ~鄕;Ծp-YӘZ{ <ɕW'j?G^#ΤCI OfHMDRGTF7eI9/vʦ/籵PfAƗ;"y7fQx\r#+W0 tr-otK)&/H2ȊY ~I0"n$LR}aa|mJ=z1OOR#+@3>ELޑ@i]љwi A:={)= j=}xf?1f=AZu28Y_yel8.HBA":\zyyJ:ӊCI>"3,tf@,@C>k]@Lq=c߶Y!u=X:ס]<Lj1L9b裉vP tT|Y&v;T:ЇhPff4xa-iZzr*dF sHkd;?ݎj 82LHHtC7YEQqP5w.JtE)ph z#@ФWw}ui28@5lfG-bmd8ym29+ɉ{jKtמbsqD;{-?(ې\]]o8c*pܿB(U&GCoJjX3.i];'c`71P,X &uew"طzΨ exD2(m>">ᏔG%$O#j8Z*H gb>3.u֘`VAƲd(Mt)6jGȨp!@W¨}DdR PpfxLgtB0E~X Vgv‹P:~X|0of:HW\|([ xLMjU$;¯a xl}RۂTڪ!ͰunlkqWd |6v Ya͔Yt[@.Aa_Ȕ'>Z ϴckas][t0gہ'm~辕H-g 8)cI[ >"E@ϔfNKIJw)`i8m/&؉<l$&Ĝ1'+I(|6Hǻ{Uu+T|\7pƘs}O>_ٛfgU$/i :P5{u%sf<V9GJy4ۚ@$7Mю'|R8P#Τ͚s>H- D: :zxkMኯ^jHN2Py?No&禠aVդ.5c#9Zn3H3p[)Q_׭Y!=m!qx.ьͬZ%zPrWJ=Qej,hSމJkq'iiDV'-q@-M!S>t_#Ϝ PY+IH Y;ބf{#Phyr'aYg4ie'}x}vvdbc @*1;ap}v*@pZh6IQ=KM6\donە_?! UCs?b(2HIVk"1ГTʣ\]Ƿ~ۿ>U5#` GrH͇3AU{aK{v??9"SW+2%B "]1[}#vJpGjz C,+1hŧRVќMñis5BFTY)zd`m5r֏ {r'`/*qSTB6ORrRȷ :XT2,mh}n/Tɽn²F?rI}bJfB.W|1o1?Șc#N 2A7Ǝַ#NUƔxɩX}މAԓFA߫ZRa(:䴭$*F֜˾Q)Y3V~pw]]i3U`k+;`gpR CHO\=t\h}c\yǹN&1ldyYy zauF@k߬JPpr vQ[(wh^ z$ކt](SP`ے:giN޻Zǡ;qȔ|Ȯ&t5'v(U=f4|}]_gg?CG G ۲@Y-8)!9?TwVOziK?AaEӰg57- _$p뼗͵ 1,m Y iQvP(pM_`L"O6i;*=DH(&QutbaLȥ(DKȵwEbszHDT:H͍Gͺ6i>1)\H) unmx u-֮$U)˜WeϚ^A/).0ƩF>i(YE._1R)^, S IF> ހw*G4gT%JP[#5H#\ pb*vm],gbwVvUM)AN/긺ckم rlՓy<^~DOWW3A'E9j0f{_`jkiXX]*u?w/X.d1b0%LlxCbUJJ g9 ~E iNn;,l|\C):k |ClA]Znp; Kd?faP0nbz6:{, o,&ed2@{R4EX{iuP[p ɜ_v͈ME{ 3rxFlJ(8/Wӑi\ٕHn:ȟ/'$Ƅ|S/`%ĖjW^EMn2`yZXʯ44SչUnùWn)G.faA፮Ƒ>֠wT0LQ޾ aWǭʫ 866sY+E33tRpd0~=-1ƒzp _zV VVe>#9n2F)H)*Q? cajKKҟx#{%375' &]y! G_ypU7YT&ԫ[Ognb 5.s33\eFvw"x`o YMЗGbҀ[7 H-ыvvc41yË+'w=^ABODB_ܦc3+9y+{,-J(&plGWxc~IO 'Jd;`Wdg!Y8չC.]3ڠJv4_,n/E}t W.T v@^FB=܉"bf=YSgdxo7J7J{ rBipM4dm@%U'eAȓIg=F,U4ww_ H5TjbzMT>$enh; h>>s mo ?J=dT֪M;e-vv<7@ptz}Ѽ3q8Kbj( \ *m%f9b3 %)잏huyI#myiH{ +sq}Cmz5tz(ύ#1K,@!_6tύvmQnn'#xsfCYR;W{0ѷcz9 {Sp v4;q7e" (vpo+IoMH ȇLKX\ϧJ{Kq/6Լ}0i A>~zAz잩'N-0qr[hǧfS!#XG!P$/c4X=Ѱe?@㗒LoNưeTVܪ+Wh ^c݄ 2RY $(jrd*C8ky]"?polYgnLXyatNp4c)YG}thQn ML1W^_G]I4zTB 2IM,;F0%-Ea5Kr(ZtSH|uSSU|1īC?fD#"P֩J7((C{}kԽXߦfru+ÝtpSw`XmN<!h/E- QbSjja<Ĭs$'ȏl|JMMS[Ճ-FY\"%5~Ȏ孶VuT񬣐$qUZB{3[*x4 ~Uu?WXNnܬ/mo|`Xޢo^k77Uʡ+tjQjJZe8 s+`8"L'G+TƐ-+|v "Z)З;]ghC#9 a\@<9t$|U4Qћ Ѭz\%mvv4?J-!TŠuGN"Vғ>|3^?p+n3ã mYG/pej#Ip*ʸgFN[cfL}.z`t,ȷ52l3@k: qxEݻP=c[:!?[ZmI79I; 5V /18&_mcrz<CFd.6/ߋUk6-;S o.tK9 CǸdhivWfEO}9C2laGZ9[$Õ MUT 1B*=ZBI" }z&X};" <ե/CR3Rho~E&.``PTI>/łD~_ BRGJ% JV6fo|./obM;μ yD~+=SRzıIj&[="EʬFs?jƜiA)kܞ"qrUB s[*Jyds4rfvMZ, ]mUvdcv c0yɏQT?ほb/+٪Bn_DG&owq_FCu#ebn|9+[mXQ]1D&Vw_~0U!2ȱ}ǂdU±( T 2wK/iq7ϭ&-|8@Dy1A^nPn Dm#dۣ2H@}͉5ݩ 358;2L7кȌl5_tjEpnUVDh_ĵ[!޶I26,4$܍Me΢Ȁ `$iWr24mEc&IONg̞7`8WwO!t{IoUQ#TZ0dNK}@1G. 'ӮlRD%keW{Ϳ [KNh2V_HF JjTW9'IjMu<GuTwB 6ɹ0oIi'pHAE t2r zYuu]DzS8t4Sح9|xP]ˬ`)&ό 58/y 7*и^s\|\؈;K?*nAsi;K@3CYt,z EʼxY1AQkptٝ?@Pek9] #[:S_& a7Vmނy^ mYJmUACyc)ێ4s8Qįh1ݨR F/\ Hh'c`GEBji\e͕p5q4=_/hi`asӕ0h}V.s֥Uީr8΅J~?9:H9x|Qp1n46d՞3{kث]}H|(ֲ'>)djEٳ |~ʦCFR~A)Ɍo0CR z+u1|U{.|7 n`j r94J7hz~W p$NFT @;[ٟŢ;n#?Yt3uѪĥYf鵤OqsR?#}{onM%& Ueh68V0pDjN3O?)y1xʮ~ +7i_/z uFLYh])ٵnoJ>/s@is=e#._]&Z1Kn\J .o| UcԸ n5OyN;ʔkvObgk $2v59of?­U8!eBĈf+6WDKM{>?0Ea%08nv%@ҝ+2J6Z+eJk/z-ArUb*lK1})NWdSɍ(tқ {U*{լNkȸkP^,ivO4|'{9NX׃n~0Viwn}4=SuS>4wl6"(-L Q=0ib_:Ӈta=%纭nDchj-u ,]78߱6C5Ϭ lOD@ ,e jL$*sG.b)IX AnY킝5>Nt`rSM!"Ռ=lVBaz 8# HN٪^ˤ@=ZXHl_OU1```(z=~Ԝ(%V2<ߣyͼOyanaqVρx$M_ 0t/ =SG C]?3hO+17̣}*BﱃO >8JRu: ΰ$6FK Y ^yMW/oA6 Ć(OSNm~>zK9}-ApiKJ]P1&v6a&SlWdO]NfQbu1>Y/5ʊ+kgot*+d%w5vi|X/+>vgU cZb6̼}LQ_Mf^R|EƸ'䡵N߁$<+z1xV_UGJLEӓS±f̻GL#X%P_#Wպj~0Q]kyVIZiGpryG@˿Xz6A!dC+R_O3R)y<o}NK"epdp@q&-\yhdZh)y5GP}*q8?#0N.5=V&8 \ϑX~'O/uQ#ᬨ'\s$urtsz`/'3dW kksZ˫B{[? s!QL-娀MLw P6֧閷H̕[ )>UuqBuF(W%2x KʰJjH;=gS03-'f;/fz xoRe3gW5A fE[2}3L|aJ3joMo:YZK9|f/B-l#J!z ÷Źa:Vwg{ ـЊgB- UI{6FL5kq Gioqݼp !~|(OZv57*t۷#p[\`M}C'%B|S ȳNb Z\"N+STgmyUs-ֿ #S2/Ѳ:Nպ!A\ F-|`xΰXg]u@$*5Q/n)סڥBJtFzULcFZIy|f6t`@䓀3.dpe>81-sXS03P6Z j}([ b_\T&Cї6|q|?f G'Xtۉ݁ k(7[~4hr@?1 O}\A?GGZZ]VV1Q"y2ēN}S^ȃ9Yj1tȂSLds(^Q21S(Լ*Q)d_ 9TF"R?ujBZ-,rf:oaSLMkf_]7Qɟxrf4[<) u@.; wih!Z\JM\_c+0cz~z iiQ}f`QAB&%b奘4R g`dОVvS 7[""Yƻ# p̝?3xF  XUaSyR֙\R;$7I_P\lTgL6כ_{?{Qw5%M{aGHӧZ,Օ>?!VMfGW1Gn'찟j ]v w|Nc)U 6LĶHKH$TH{R?ڄ4f4UiϡeNKýNE}W+wJ٩Df R#)(Nٯ*ب:5Hʟ^eFZ+ scʸ݁\bFDUNKmrh9B &`&]L3{@{NDž>] 2t9:K|uhAlr!wfI?' ~]k7&Z %,t ntS># noЂ,n!Mn1@DN,AyJuhh`%$ɎWξo3P9_w33/kȎCww30HLXRlI &䧶b[6(ۘD}AYOM@!IެOCOթsn_0. VKde}kGPq!ݦv$|&Xk`Af4QJڛ׬T!''5n3 ܇j4y|+9#g Dm*Fu1`6]-ZGvSMh:ƺƂwU,ԮrDKxǵy?43. 1DZZt7ݢawqs*oN-:]WW"x߰Q֗G(xP SJJw1Lrcsse*Ue,v&(!bZTyLtAXt}=҉"w1pbeCEj# oOUOi6 '䚳,~WHZxF;zF~t4fi8 o+* eu%_X7?@cn  ۜ߭S![6=Жb8=Z L"֡UOmPTt7ګAߨL8ܧ9~ow[];9ZNF'٠%ǚPIh֊[e%MPʨJY [#݅U a c 5 `E̶}yk`&qH8~s)o}@"Tu f2j=}wM@>=~ACYл@MyRr^URg=%!b)u~3¤4~lFn0ͷĜ߰QWGϷ7d#-3wuIWsN@Cz|<|tׄJ R BY=w% %rKp!ď[{2)Yس=T]Kxfyrxbcϱߞ#_8Fb{y!$WJ$~$3Pb5]0y^mׁaB ZУU֏I'Dwdl`iwΈҊa5}ee,VSHVryGSZX*yMh1-WF\͹|Wӹ=*GH.?el^ҕO|&yc׾?6kUOήdry`=:XQ*w/o<ʲo8xb*&GQX*}BZ2 ._t v&JEz}CZhIXq JuH+RbR^M$tA1)%3M'':c&[ sþ0'VS_|=a N0&窩R%Rw5k8$/ɮ-ro.K8֮;?(Y 4 U5bc|;٥ m&-۟NB-Ԅ^DnH(X;Ga`zǁiٿ Fj~QVss v[KudJ&[ֻ1 @B-јF]&17zC{:]$x|6p*+dy}B(q7ny}UŠ"Ck%wr"Eatqhx־w1ߟX܃ZΡyڸbZ& I ۙ~:ߊ>]'?sp};M@&^KhbNdJ}p*(2uz]QNjÛ6%`!}/y6~+U↑>C{{UȄdڞ}2C l/e iVR>s'Lwyϸ>ۼ$#:|2=HcɈT R'Ej9^3A^ڎb%w:!bɇF0im+tt.)aoE5Cs(>󼪲:`"ci0 YYNЄa&|: x_"sLZglBx l5D[{ekwaf㦀7%X3oAy"#!&GZDf>0+%#L5pyuqp)~ B%jV__x|;{\frd?wr }&/ M欴d"mCSً*dQ^^jrdRT N6"\G᷿)~`[R8yҾzIph[ˮ'9plIk vA1` ڏ)w΢cQI-hfbTm*j;Cz6).I~ZfrA&=FӼ4 FrdFٕXdde׭ц8p$-4<ƂY Y!V%1laو1G+(Z_l#MNK2l3%(& e/1(zw]/ %waq j0pH slHr(},5@L`rߖO ]p!"[[&p FBM D"[/%< >#2=Gɛ!V$ "I%g2}qڪۨJNTS7.W$wuUCu{NXZV̔ !\@H޶WՖr!WPCH 6[oqGg?O]f{=q=vhL.)..XYp&v2Ӕe6 p7֣NG >&G'vB8y  e4n+Lq_hh{cqb1N>1+aѡm<ՋU:p#IF| f?zwdT'+2Gǟ9(߶-(Skd{0+ʢe%>2 c1SP.w6^r9Q)B/MKk qx\ϝWR?dT]b9Yǀ[Qc$Q}E@/z̒p"M~D=~ )..=W[uJ2O7Yx%T ?FL'J,Cx"jX,X^Pg*uŚ oa"()>fAGcKPdj݀oHLQfRealPýZɱ 9" Bzx^Xgv Mdn$t%=㐄 Ded?nE~ ce=sl.F]E$tY~d{/NUaU@I0(~ `˅TA{cKi[^w5 =\U # {Q ծA5%C#/]NvwKxJ!if/ݐꆊLLc=a(Fq0y8I6&Y@h%wE݀\̔)o6BF3GC^n): h>e{Z&AwfO.;WL{p q%;yǜNxtƕ@yۚ˫A"^VD˚^-"7>!Z}VTYV.Ixc~-Ʌ B1ҼU:%Lonn%s C{Ǐ+ߤxJ \Hb|.PÀMeiUYM&¶d뎬IY#)LmYs'=Px" P,(EWcXO0>KՇ VRZe R|wsDVȮeWz]ƙA"|\OW= .kB ,2H J|~CHmoU䦳3o/o^1U$Tzj/F2$7VilG%B<1ELt:I4Xy`)Irfte{v!kj)v`)^>l%EZtRe =ϱpe&=tj\%>\υ*2kKZiR%9p\Jv,Ƈe2;Y\V0ˇE]i^;ʙȶmz=2fԾOP~~@l4"tvCP5.a^ ъkbTOaN3~v_Q!nO pz .1]VF6E{Œ_n kmr$؊FoB5 J+9ε6*@ԼPNk <='+ifW2!Ҡe=:zXѣnsn\KDVw'qQ>SN%uj9ꭔi8N3т|X"o)Ey+xȎϤPNs^]Uxaaэk{~%{mzĶڹfzS&;)L1 eq%Foz_!ʼDq꧖~PIb-$ Nx"PHm1^Aȡ 76" 5P{Y<@Vϝ{I>M( |Z+Ip\3N5?FZkAa:vuNxEVݹOφG ̃pP`eV3lmr6о8?ʛDb5ʹ d^cV ;IwH2g*c? 4tIqK;BXc j;!])QWPKyI6vCFXeOV3r)G}l+<#>qF;o abkB =*"*{XZX ^[~Sr4Y@K9 K\PRR@<$W\.yׅڮkH!Sʪ23rEf.tj^eJԎy#[^Ey&Q ulN"%+]\4ʢބ,촜VCo8$Yt綖PԊpטhfs6^?E=Cg*X^;xu!{ 襫3ߪr~[L+غt z~AYNA7EqG/CX}Q)MA5 sK9N u1eRLd$`]Qߕވ2NЏjF*5乃ņTL"b돈",#oɍ m3&G?k]2F ~,)և3`uoZPR A!cX2-fz2l-\Q;DŴįWiYm24#m[UÆ7jUbI7uV ʹq5z]P܂A1)OȪ4# ).Z1~rU%x+LeۊvY]hӔlonrGZF+c 7N.+rHӲ)pHe()1]>@1w?UObɟUl{ϮY)?3T55&ZCĔ&E&+ >KWG--HX2,"+C.°5]V$Kxd~Ϳ]/Pu GS%<*?[CXc]1#ؼOKdy^=[h`BLnˤ7ASG!-QOƪ7U14H-eg a!qAb[cMn/򬊐&<߶#5f.MBb?3 6qE{8J)M3z:*P1qeLz rKQL^mQR8 E@3cikE&W{EL0tqT]9UYF{*cs\b._`(NW1 OMBdמgG#w7ʁdz3t51qש>=PrOӊ[*l&VBbQSQZU<^*d H,RxWlH$ N1P+_"9jCE1ARO@B!DP&Aw*) ƄZ&d {|HGcjXm8WhB*wk'3V/8$Pb;ĭ4ӵC2 hDFh_09\6Ї;Ǒ=-B?w|ras}LQȰ@_ ( ^V= ͵{1qXN1_P;\.>ǜvBE7o3>N~hOG\q,8ӝs P^i[|&))~|-SDDk[sA3tGj"}=k'L!S?!t4J

    q\ ? @^^lgH] +H5i}g@s5E+:ʱ-ɜVbT\(ˇwN㚒U]/⒚ib69w#=u4m1p8@Ч <ʍdWmMD~(q$57*zt"mwՈg>^W=Z8e }iУ6uvi X&Nv ɍ>J{6!R@Էh?+;JA]w{ 2G។`5g͘V;HF1Qo ]:R9XIwR8#6v ԙlP_}o X+%oЭj}S QWc_}O'fukUM>غ2J/riS^H{1׏W-KnHnn|h,3p1FnEPbYYtG"YB'e+!\[)7& ŠvTi6>cVUe;:\XSzpt{^%"0+Q4'e\_AT-'p l3ZaM6mg>4󪝰z࣌N+_9'L9$,XdX,r[ݘUBqa1u?kK}Й7hw}cR_Ĝ+ǰ{ PoxAꗙhtpϢc1jt2sr^#07Y,YJO19efǣLk^ч*tld1nCB.aA؎-K첞(åKn3uiY!f+! p\3% Sř};?V;mZ1rm~If{H>BUM !u0!xּ:._=3<>.%]"A/ϗayөENZq-G\Vx2I. { Wi$Y5{5N<3Ro<|^e^Htg"Aɝ' v#U(:Π)yݚE sƳÅH<0p,牋 $9:2pQ|%jXcR'e(f o@%pP;) in ܫ56 6};Y{F:3;#ҧS7O0K(EW;n7;wȖ_ R tRlpx׵@6a917ϗR2g.c[: Ag&9)#:J0d0 Fr҅CblkSREC#b)CrϔkoR x`%q56HmYSHL58\VYBJ!_ʨC$ 3aPPw3\8X.j}Y uKY QY1Lsn3ވ3Zl&*뻚 S9m3ŧ{%q7xqis5! 7G'3 OsG <5t}u2GX\8=C8ljw q$Pjiߓ?Ykq.gb-W1>9X@Dn-s!49 !(QZ!O^y5 nH9d ~+n'[!œ E^h$&!Q>T÷z 'z?%=Kx]d0i31.WJq]K5cll Օx! n.OnlBoukbDNQq]r a ʁF% xmH |G;JIXH7˂81?¤i8 ϣc hg&[ 13!e /!W %!Ļ䳲Gi Df̼Z&:đ)oylL|؂`5WYIt6NRdԂ'Hߢ55}6iOe^q(PHV=Ze >wh0:86a<8<8I2F<:OiK+z\t ZBXDR~DkVߺOE+@#lVMoǕ.*=gU2[(ЪvZvyYOB[J=6Ma#+s-$0oL=w 2-v7nw7%qXay{<|J3U=h\8+@ obj Й*˴2C=ᝇJ6[r,.ma0[/OF5ˡ2c?p@æT1 z,KM]bc{[&;9ciql KRKEoIq&ӎHbv9x9I=$gQƺmAEl I [Gm"p}z]. o_,"[IoڇFH56YEYIcQCm_{1U 7/H1$\$R4MVM qtYXpvBR|) 5OKNa3 'L޺6{ۃ {GF ىȐ_/5%dk<UF9òk3z-@ @EEz+>. X)}Ž 4]Na 8Y{DbS;pW2_6}:L% }B?%_Y;6(DLC3>mϭU0 D(u-B50kÀfzH\ONY33OoMG\[k`jl..SeJAmVCN!Spگ^90xm&>/3]w]+/=p䨸P$?;Dɺ1)iNɩh],_E+#qP])c.|V^;W8u\}[PJRKWjf#D̍%mgPN+ͮ`'z{ hQ؏H"+f:+@'ռ 7$5GsN@S9.ikȯ~Ɖxy/]BL]?Z*n;hNޒyh;^9}'SH ,|bJo)_F慘 sezBBѤBs UG xO^~x-iTH0nZ:6FZ2gesO)Z>Ϗ93S/Q# B8`,I%6ӡVb W-h=;CJc~kM:c<|kP&g4̕LRκ^32j[.C ΚrzMOfu/|=F^I8 9ԞfZqA\ m'iW@7+\Xycشvs>hI6 QJ6W ~i8Vu۰?Y\vZ 5oǔZ z.UuI4}<CuR]a!b<n[VԁFIӬS(c~03\1бd?f ~0zi JGCucNqD |7 CWCuӄ#N[ln꒠#RW9f M waR9NsURVqV`؎8pɉF`V`1mЪ'YO^4lh.uh+ ijPM]h L>#'p oL$_*(\V S@ H(`wx4=mo^WKZt J4m}i9EFgBgbH)_( ))RUNGƭ&ş 9dD-mSjSq=g49סV 1:Z書 I5ڞ#78% hԪE1n1Q f@{IAiq -"(;̃AS,t!h|6C[xlW'UΊ'rXo%3PZ8y&&ɪ0[w$im1m )gݲ"XQ{3s QIA/a/?]B\ xOXspHjLK;\O8JSoD!UߩVp= n#e$;-T$;R}ďȗ"<ӧj▊_|&:VZrpGy.3]B,܏j)RAF> ZH!/6đE`osgj{\36bwW_= }4gyV^.r|6 ]K^>`z4?k n1<7n3U+0K5軥 ~ŻȔ~vv`D9Lhv-F&8 nOo ZR2\l\o 'A_bT#^[6(,:k2,SD/5YBS%I /m`41&7\hPP4(PnE|:V{5Mh\Ȅ}Dx- =4`y\O|FF( s细XydU>LR6,(\GȔ{z=PV3VΓBċIwpaoS8>HM7Xf'K!#NWly?Dؙ; Je] &=s_̇RL aǼ.M<0vM :n n6l)N`j8uIAbl.~o=o[ߢZi[q7q?QtYX*f(sd#Fct*'~7k)/|}3NM&AQ9LR¡_"\@)u'3 (T H[(z!o'Xpԁ@,ig*yK1}6 #e+lTtotAaBf<{&'' BO//6tnԘ`}1 n+IuHF>M<8S,>.TSnw/Prݍ_2h=&Qf/ $:K2EdZ2])WD-i8uɺ:TCjH8$vfnFe,L`I >3]Oe1-(K>E ,OV[5C^JgN%dI#<_~; ;Dž$ʛT*?=Mhk*0+a)Lif&k.;:~6Rq-R g?>Fj(o'uiVnBM&(O+8O-%vr3^ >(ştmȼ`aL\_=B͝(Wp5oQB xH{([2K뺑LkQ*[WGW"`íRߗAS]Ћ:dK_ OU#(W[<^<2:IRN(E>&P͋X0r=~rZI)X"}eךn2]K8Htjemj&*3&w>p;w9- ӖZWt%WվM7TI$9@%Й@5-]S[XHb1D<c;sfC:w" aϭDbP8<`%1U 99~#" y y|@ bN)/~3fe/OݑWdl5 Ё7mN#\Y׵Q90KnE,3ǮyfMzByv0%zj.6-\Fn9@/ 3=s GRwfYbן &6bܩF3`)FZ< aHÖ%bjqgOQF^ *Q< pvGƿ(=tL™D AgN6}PyVj]CޓD8x^EDΘ-(2,?iR=*$(NW#aP\F:V]k -,C9 d*M,~|@; sS#T7"K,}&EEeU s E`OXjv[z602E:\;"/cşƕO%wR(Dž۔sQ?fL7dڧJiJ"GQl"TߊIytfΥH7!$@<R< xT$Bpi7/Ꮇ[P^x|37Uaf+ׇ Ծ2BXIX"a6\6Hr8+eBqHtRvg0Y %}BC4@9LvIa4،Rϯ1 { ?Єm=OJ99Mc2VԅT`ZUR]ZD(>dԾi9U3RC.U~vM4Qd!3 >RdqOӍ ,}S!FȪ|Kbr//)>V ҍC 9c)Z=C.i=쐡 w)65eRIMAë@bJ1TAaOwE䠒G~#sO &P8dNۏ0 վP8yӠˋ~y[:Y@{&KΈ\~EE3c5|~uE M,oȦZ@_]dH#r¶SV@eEE^~|"+KD88q*zҌϛީ1\LsDX'y)&8L)Kn\?:=j1Qk3~!HI '_IפֿscMo)Fl.*b)#?b$;fbLs]%x0l&ߩS=r )|||?RL@+rF1zM] 8 BT(Jf0$JBa Ƌ1яlASg4H)3&8FU6|ؐVv?;\&E˭ryԧ2Y+YJQCRJH`^uY^(zܲ4t覍{J8 lttDI]r"$vOU9%TVh_]_=r#ȻoeSA;j9=-3X>pgBG:VRJg=]>xݘr SRqxK gUbEዏpqǶ9(f3@*FzZ0.9"x딏B8·9NH(o]r8*krgEh*eler)IwFc)x9g@?s~L*_7%{H 1UM|yv-Y4:FJ٩)Z+'z?WÁU9AU> a"eH&&]cc DoHvD=#;(#Ϊ "A)h=sp4*e*(;e $ui493O f`/< .=Zf IOAe.8 opK!{$圞zJC "PëJWn_g=t8r%Zy&})s}k@G# Z8UrT/FtD\P^_N-U|<Z:xdgrz^eղF)E#EX9qa:H^skq$Z n8׬Fs歞l>97;-tv绕+?g>~he==bNݵ͓llxx8: \V25S`yu^Ծ@ %?Rϓy&V*"SINCE(qEgK5 C6''ݫ)w Ky*qio!AfREiF FȹAn˥TKSga-sďらM!zkX)TTOO:NUe `"\"ND_X5ph 縼S}rV]" k?i#9Th,t{#Aj;ճ,}KWWhaGk8v`; k:C臜Nh͇3OvX?B2 yc+׷= ERҝ'U%lI;fNTw^vWհmVӪ9]·Mw&j(.&:A3`90s9]pïuo;'CYP0a5+ a@(:fL^<]R]_Em's^ 6Ѓ;@h\f;B ]kw6QWqsEmo*Y' ,NTk=>*~IT0s%K>OV"c}|n 7+BFzL  zBEblPIuVez3Uy|5a0il#hfǽj14XgA Rӻi %Iͳ-^ѽ/_7whsB8 =$p8A\:W߷,ey&}xk$.D@CEND踬1?}VDCwtٔ}f"=R"=n'~!B{z9曘UҽMqS7W*&eB8vj m ok[;^NZWB&SA򇝝RȞlm].V_!] \o6"OO=;TI/&dc^}S}&?Xl*|ͩXaaHO^idYi:/|ܝor=Q&9Gꡫvı3LgǍha^;DX3t9Rԟ¤89F$gN.]XUQyF= h{vJV+޸~-6xDh< L"Ub4*9?hBfEjꂌn.:QZo?q v@@8]:R b&^KC2[AXjzC6uB r֜A&J t@uK;1H ),|o%vL˺SRjH&\_1)s(}sVsM3u%no6W !&W8'( UaeA)HXNyzPy{}(5i0|~ :8qzD%t<ՙv-k  =e^;z?g{H~Q/h y-;? LK{sm*E 4TT>"Tk@&-,jL$rrxqGLhB e/xNUСjߠ'/ ǜ* H}EP^+`DνF}dNR%^ 8Ӄ{ŗ#Q7j1/+{*G,EJ BgT%%=z HDFG}Uufm`J~wQ\= %u6z Ղu׎Yj6b d(Xp7#/ ]SpLpYՒEsc ]?1Zga/US X l lk 謈UfyO6]@c*v35$3eOSBz+lkn {qPaY?e\fVUѣ5ʢ 4Prr#AY=moU YXIwV;N1>!p'=J6?$a{&&,}w.>#z쮄x%q2P9{=߭OD^Q~Y3JݖKE#x>LyLnI@#oJ+\gVW땨ܜA鿀?۝~<gq}3年0_BEHv]걩am=? {./j+d.t[ tRQƮ~l=h5] M%IGB{k^Aԧ7fY=pO`n7#4[:ϺB)6N*ֲ0piY pTh:\ .stqNP25,z2Y\wPm@8i$?8 (@U1ty/ U'ʒ85h^LD}cu,}i\S\56e?5 k6.+l2nʥnvtBV` M;Ĩ|@?b$NۼuKv$wt2)Ɇ{0}ٮ1>%Y_A{ո=jf6a@&n([kANX6rީ`EଠٗG9zc ͅ?Ʋ)|dqoFuT|.:nEeFQ[bYE9 rTX}iQ#/?Kw \ef7cP e𫘦o%HVJD"R]9N4Zp>!!] Hp5+jwy-3Xy Fhb1AC%TOJ\{yɞr?Fflx(N wuWZq)W.s#}po甇}'*[Cמ\+)X5^1a&?=@ qS0쀓 OGE&yݐvfFPahH҄F*ߊ 1i,Z&ԧRn ,s-㭭ww7C$ pPR@8j[Fj/g(M.MĜOנ/r~hR]Dā(Cofh<+I76fX cr}ga9rLIR1çxCʣFa?}屼SjX,|WTCek0ƽrUB\QнkS+'.lm?<}\7Xj0ö;=<%6% zbPV( bYwt9o?O7-[JJ-Ɣ[`QQ CIA|bϓU2Gl' rS߄yJ+Gv"RˁS3 ;&#or c3_ns:?JQSSknq w.b%\ `(S>7/7_:EplؐЋi$#"옼ط^ˍOJi7ΨDjKZcO?'sbhnLNj|qwͺWf㺰{g.v'o;.J3ak' ;(4nnU_*VհZh #'E7[Z$Ck(!xd#^4J3CLym<ݗ Kz~`α|ʄ[ P|kZ )3+I&k3$<8CǯRȃ/& uSeaHɒ?ZLH__+'™io2!kI 6_&n%vuꚨs^Ad|1>jEo"yS6 nYGuD+-Ye&e0骷ڬ,gR# L~aeJ8axg*nnz73d&/%dF̒&} EvmGu.9duN@…Vb*rxvṷyClX$?81x( V kE/wENzFҜS|u|\!yMBx;E5I[l 22BNtJ5b` rH0le⿧@ 7°2;~M6{[ѣb"u He39L4P@z)Z[Gj23V4 s7F=&@3iJ,pSoZսAss|,#뀐g5U;pKƩ)kgW tU ;T ifu'4*q /5J=Dny2c3;vvrWVdAWzx煴ݺ!;M( fS94Ѥ"=y Xe﷿\VkE> GR hTǩMŹ w>jW?6:;WynH9̓{~U["fgx:N\4)֗ q*D~#:;**p 0ENV hUBަW bzOz^n"f!ȒM;}fbZXB@:SYh[]+#vKB=D 2(R5=1XR uZ]HvwNO;А3.DbHp`±WY|$k-n̾=_?'e7~jjk< щz`v7MG ?2;Ug$T/2o{nm.Cp ѥ<< LGֱț=) tusKͮLD]?^5+LT⎾/+ղe=ǥGS RYaխ4Щϫõn8 XLywJЧgD˶NyTչÛ{ nTciarɗ(ygPÎ@ yr9  1\d' /<0ꤔ"#q:*<$)ئ1PeV¹EPseVcG@Ҡ861+_Zgkz3,wnXkkkTɆ_u$u4XF v E,c9 2Pcr./j[n۾ᰬxs`KNM):YSA"D`q"Y}|fus*ЋXol:f7̺lU2-N!irz쬲eo0]0ȩTӐUOi-IЭgOX.".x@"s&PwqԚҿՉ ,UՂe-ސT&F^S*?@;]1ws[U"O 2亣e ,LZ(ovmyPp;G/)bb†\&J%rFӄDl4.9 S3Kv@FL",5=Yl9W01>&:Y`BYۗ)1 .A6)NnvkipSB$}Jvr7/Tng>`>C: lΦmfN+r'ڸ Yr_ǥ hcPl%HbGmaQAs-Ubgbf%;.ȊWpD , N}H&F&6vJ ތTO6,Ar\n5E?ǝ08 36Gf}((i_HwCBXB| Зtɡ?,Fِv1|W5/`jRBLڟ%+mVPeKoL/ U倝n&"iWa&@9nS##AmFOIAʹ-DĠ(i/( )kO%fCARȒ^Ul9KJ > /-,.CObXUM&c &Tm>aě MJSҲH4S|#(PȆ$zt1aFbWK48j(&U4[ل`/owPjn_ǁAX;q|BRV{qt՟"ɬ턣Is~L53@6kBGg9|M>dB'wgU'0[#6*GoV/5\hMXL+렙  Y=g 5L8>U~'ۏCzZ}!p/zu|K&NfWrE^Z]14uL7лb68QP~[V_+[Nh$d} ݪC)&M "eI һ.+Λ!#Oնgo\ٕիF 2:?(}pZƏo0x'ј3篃cAv %[@ӄQ2VmJDXT Iݪ;8!@G() ԻZ7!0Sr~do}1o1-h={iE{9/SU91iJD3__^/o&`tZ08]U\\+4g!1Q 5`KRUn fM4.muk!7=@"P ,uGS'6Yt;@-Aj¼n'݇&HI{>ʲ% 4ևsSAPRrc" B`\ &sUD.~_p]Wfܞ6@- t=T91 G|):~@~4%O"j#J1AOOYE%EayI n^Mlsdo>reS/VV ͋;Cun8a ρs#WWbMA)\ NQ7^`m3ǧÐ d``"uRo vO,Aw#HJۄ `%rqûZx?lqK:+~ \ fic*҇ꐣAq)Dim,1]5.9DhJ!6f}(x)Q5H?H$D4#?7w+0[2DV0glD3Xq^b@tD78lw8DvH]g\£@K YpPNZϚ87*l"<߽2ȫF pSK6)ґ4fVV?}iȘq8 )HyG'vaip1}: nWc-PN)[+{G^RV/T2hRjd $#vQ)4V<'mnZ= EulPpʆOz篟>벘 {;wgxa  dh7F;\d:ZrrtQ8[i͕dG!|>@1ZYV"]u(:vD툛`'ͬ2/sQkwM#h`j kno~<+wu[ _kݛ(j^P:ٝZmط`=SYrsHT;(oXaA?ԏnjٷc~U)Wq ۲*oA.8^a'ob ,sDE>]ـ8X 2k/C;R.V,Ve+I=fsP#We$fuNfb\A)Ρλy_-YfXѤ2?eR"ݳGaltD++&>(wx8ۇ &v`W5F߿Ka7Kl 7xk rxgϡ vAu{9`a1d-߯j3B{RJ럏Ȍi`W~IfeZL<Ų:iZM?L|h72ؼ8W}AM˚r>BҺ)Ҫ굘ut(ۃ=m5߆m87 ѥ(ۋ-{ 5-.ѬJMGBZ` R;5cyOy2l";%M7MwN|s&tՓg CQxu߰x5\v<ʰ4gZ*~3 o]vGoO׿cQydH_Qhoi.,1>kr Ҍag~tKo?-~8;R&` YW8 1@+߲ pθ33fT%qlIi1deLef_gVik5}3sxRrN֞͠=iT͔I7DŽ i#9`G,9HuLhZr?Novb( YW= i_4+kMwS#yT* $>@뫩p՜7lib?da끃'w*Zg )if w&~Id6FkL!PTOM}❭9OO6Fv _x{qufcfKX*sE :Ҹ%fɆ@7Zť$ ]e0#K5= Y*4ݝ]V.qÆWAMa3y/xۙ; A]ȝf"*Vg)ጶ+6DNWH٘&wXen]h^G(%2:L ǪT"^sQL"e Mudhޝ_$8{@^~٭6Kݠ/ r8}s݄T+5f|>`)UiQÒ/?Ѩh1d&$@E{t^c'" Bg0_1+/ ECϳ9cա1WNL-U ic%7AYG*oIQ\KOA5(eYr.(!M&}5A4 Ii!m =Wx{/^Kh@x&bbRk.0 :n!uGybd;X21)IMK? s.1I8՛~Es߬y>%o0ou|>N>XQeW!{|0sʱjř<uK6F\I:K$<󳑸 U>61.nq%,Pz, }i1Fp]P[3 1\5[`/a-t3_p"ItAvXpi] FG$|;Y]%.(w7\Ӑ^; ({=`h Ӳ`_`+E J2!sWW.}b5 7^Ubz7Pݢr A .Z3li…\/ q).gq}Ju4eK 0e%u=4v/A9 )5w;U o\%Zkks[}jc, _ MY4A@gY`jdܯLRǹn̓|^H@QԎc{.-ƨk7Mh;%EGv94cL Utl_A.J5(W*Ќ$l eoMxf&p0w-SQUcn?&Ui2]xWJ hYpLnP%*]0[W(W06"Fz\HE}pDSpp1|J๱ ZY7 [%!-`Ύjdx> }f_Q߆資@u~Vךջ6Py<4o&3Wю)Ja;,H )J.:Wxn\d"U5`:^3&-{7:%R8:0W:uh"|?\ `tx2jk/L\)>|dsHjh%J2 qgDl%5! ޽ʑ}()nxQj˭㹷w亃;*M.-; g1bvb, <X10=JJ$nގmR$LӀ11LyCNfEx#'(C?puuyJ5&n˹D%%,U2h@+w4&w~dFATL?ԜC]BHb5 U w :ս` 1F6 QpnVAx4{v!2|]8.y\J2tG2g*4C>Qč>qU~ p*}3֐O&F ,*hC :'}䨯%4z$q {ųFF<>DZMŇn:4mi;/,(LZL!,Bz-]ڐҸuLY)A"R5*Zr62y6J䠓b$^AO% 9 ~Gz5K'i/3*v/e+Whsl* &-CigK&F*IG ib7/Dk_ۃ-Jt˵P+8`2dᡫ)ad#.FcƾtWUhl4$Ƈj5C1>˴!ӬWV-їW~YVޡuUcv6u׃+zKkJ?6Sw7c" E%+9n:%e͡cmݔQ)׬;Lc_Ԉ>xcU0p58Eo\1^)7'tpOZb{ F(9 ߺb$O@ lx8B(xw`ytYC 7Q)c`7>hCc6VjYMqk $!+{kX0*'OdBgn]rl4'Wv̓YE_Q>KHѰb2A Ύ'-e@tq1-Yo]F@.c3L,[Z;^0Jg!:g#;R-z smX[ƅa~c߇NGђ 1-tE1d?lL_f=_QV ZW 7fTJ߰vHm<]|&#%k })Fk*:9cݚi&-6hy~[BջKX5IdpA)YEBUn2xCq\ɈT_(qA{jHYb5]NND$'bӋ& d &UZ]onqY_25y;%dvi (LXmoVDĒכ`Kim8z?LkXBq)@35,' ,&a_~rlg{ - ܼE":  t'Ool^ٶ2ks"1N?_`J鲬@P'izculרVK;"e7ثg.܂uLRe2ls*Rg}i8|n<>e1z 3dP|0"B;Kvqk EDc2[ct3qڟSK8hGg T8;:cBFszqBP=Jk;;/NUthK䵪5[)-κ'U;,]嬭}=HAe"%g@8[`BY$(KZ"37=gࠖd˧WAPyy[_>(yo Jm ŝ}3rѧcL͙J=C;ߟ^J"4ᐮvS(=)˔W:T}u[C D:&o> o!cgA_HyLJx'Ehm.eηgg7+H@=SAPZ 7 Yp}l+Mhͩ(^ԩAB(of2I^ 0"G}O2tCڗX_\=Saa:bb~"V,_k#^'9z] E,M9Y_x&<+F#sh H9Uj--9ФY~232ru>) :TiKp1 \5sEKTԯB\5}YaFFayw(]!YB2dHr)H9}BZ_@U9'q,?M+Ħ (>HiVxuwC!v=f\l䀜8?յz_Wv?Ƒ }d_id3:3 V +؟v~[pX2HC6cq}il=D7s^o3nf[){uIOw1%À38㊑uJ}gkMg>ܑ(Mj@1;bVg#QӰwZzxtB1lH?fWz+lt_p$9Cc/uEFiV6BmrutfƲ~j;Sܪ1]]zrz<-X!^/ Yh>HN">KCB8GegEc-rO?RNkV#CߘৎQ?wj ?IqGꂣk/G]x0̐_8:]KKTьX`H/⋱ޢ}Z͊$A ڠ*׎jMnm+2U1ح{HݾJr%9)f?f ŀ+_~w]}79xۥ@>N|V 5[ w ]2U^%OܸQ$zZmOy?75?[8b8]e0h:wS+?iQURoNU1NX|ө1q!7=/Geh&ʄ*u\CrC)6nm&uDQӖ HH\w="%qw +#lIs+ECv?Õ֑<'_v~1WBF <ɾBK3٧SS`%d u2ꂉZh̬lN' %6BmZ<%ِA%߻C2W,H)Hڭpnf ˶kڵ%Tǝ|۩ z7;z|]vZʭLiYS>L{Owo+㈃05q(#oot@B9=6ʮ+yg&%kO"q>ТԕgൢarSJ^w9H&;7.ZK@~oV+D?qn"H)X1yfgE(x\2'{2W*DRʃpWa<}eHA[)fȏݐӑT^۞_vIJM( nShk~+eF9= U30$*mHHKra\SR)3:~A׾hdk9W$o=X44uk %͂+Vtgl4u>j-a!̷@1BBl9:Yg.$ BrӞV016jz L=.V\[+9(6lSmG FOY\!=E|5zwϽ)C@ 5j!.avӐ2T~ArTiGYht5幠RDH 1tk#kY)= 8h4G``YpJ ^QF zޅn%8]a_֌ZiA lߥjϋ,=j_#G؆rHέ4L{IF>RD۸ݮR~M_%L)?l̄r37Ժ^NI`2@7g}DDx$$|2K:R(Gi,>b!qG FwGpF ǣ'4r]ɧʛÛ83DSsM@MОfc ݄ ]i_OlnI9-%nz0\$gRM$ZS1MB:S } KድQ8T_ע$]Ww=c.^O:/z\H䎲oY˭}V 9\P'wUw#A #%v6|"&}QTzjZڑ{Þ6 !&D)N.~E?nn*_ SMZُ:g(#оo,EU*hM FsHY6~o894' Q$k]p)к]A.amPYf`H<*Q’* '@ _c䩖W{ Xmjm' 4s0]crBf*Dh>$8j&͑l&i!J_.5F 6l}/5M#ǂQ`lG2Y m"|lnTNEՌG6$8d^9,13Ӿ45eBpsXrgDZ5vSABޝvkˉ}F2?6J./F(A_+:az23ȠWȚF t&{*-=gnfN8lOjI1"ܭ S@/زRBaELlIr'` %6 `hn[JN y[1W´prES*ӈg{;Nt?;FɧIX@_+* XH' KW9Ӭf@28 CϥfXPcwގ`,(|vݤ0bo)=;k$kgp"M>*kGks*4jKGvXa t4V1=B m5g$8I]2 = \qCf8vUXX7ԴyOM~fL/l:5Ixғbnn @!/j {҉p1VBSA#!1)~O&0U,#fm~hPʣp(g,:bc^JœՍUOclooeN%m%Waa/i5黧_ t5GpF ug8,&Q =<K7If Mp2+r;pݫqek};Bi߿ql4$c^NޖBO 8حiv2?(=Џ/ ^!f#9!~48%qs2VD^^6AZG|&=MF*`d_Ye7ӓ#fE)B{`~; )E [ﳈI GOEk Q("(*NFQ0a3W Ll~]*HhvԲ9Pm_<6DK}!)ܨʧm- uhI%X:6}1XDҐwI#~:xJnL1e&5)uHݘsYL!نN gCmSޚ#GF»,NE!Fk9H oH6rĐT̨E4# 9}Tɣ >Ink /#ҏBy <=TcVka ;=blKh<@hɘ,. * Ok|I>!.S7ZRfVC?0%Wj$LI21JC49*׮8y3NM!Qb' i@7Qc)u1V8?Z7Ѧ=6n~*;Z *7tF"N<d*Wouo*F7q酊s]fF};4KB|wV?cenX5īQN0JєWD-݌:Ɓ򪾡WbnY˹Fnt.)ڤ݋WXWB5ӽ,G h+JwxYF0PNJ1`K_Z]8'ΌxPU5m8D-Mh@ߦ/a>dVeY|A]/r7s e9?x-U3qyt8@6ޭ'e%y"䴉,wƲ!up_@O$>4>>@M=Uq'j!G3( sGNrQ2>*B l(ͻ66fYOrTMdABO,zr6Gmb͏?o&!ʮhgdaHT1#Fkc}O>jlZfWrH:8ՓREjzo۬0c`w>k?IsCĿZo{};D\nrK`ou>uE0bTH%ZiManc3 G(Nn}^ ~0-&S7ӷhRP ģS]iklV$Ҹn֋ fϠN{tykuRwlhzLVZ-Zecx1r~\!pQ^cFM 0ĶSUK7P ֬/|DW2;;?s uh'I[\jar WLTbldB|Zp䬗"ʥe'm~Oy>bƠ-p<[Rf@jӧ@ v/ >9`[p1-ӣiu~w/1QIy: |Qj5:P>oz3p%DCvox JFGYr+ҙO@7BF9.LE^׺k^Md u%XqM7i6a@v$hÙ}%Y9Y2}.SMU)Bxjcbxw9V|(C X*PJW lH1]o{!2oш;E3íAԶ`][=l?FB4{㮆t 0i#K2qJ Iըkdv~鶚6.i)A i #B6Roedca]*gنo%JM}'b-T/>x > pk i9C o}թtmEW?MH~pE`I{ Rħ^=@%bpnoӃ3;a-RܷC&0 (18ASMȧZ޶H܆1. ;WyQ621B]Wc'"45nFJ҅ӈZ|4m9%a8F/!ܮKld Py菟s ` SI]^> V4;86f-:Gxе,/:ۿLGwu>^808T8i:VZe8&úf' R=Unys;w rJ"뗠וy%ڎ#)&8qfզ]9N45X4=c7}%+ wY=&yBUs6^┴^gTP1ؔ _#2wyH&>d+EVǡqN͖JS"|"BsV;IS?J)XG]Qo̦{05Sw\\].Ep+ͯ>c#,*(t6Gβ3k ¶^f+ֳ&+Fza̠R{\BZP)n;f퀴jG5W\SN^(l xǛۮn^J D'7A~4!cE{إuC4OGEq>S.U~E7{D'a~#.A^r%~ѻ=y RD>.$a9p1k_߸.a5xp3LZQ޽n`벨%cI/~:h e4B+0A%F ꄥZcJ۸a6#*b]!܎7h-]Xf'v!dڻXl({=Q 3-yzq{byv"Eh?0Kð{ Eл͂7dhFKu`5LNkzA?LK:sSN1 WxCm"woq߭wm\' };^VΪ'DYrcV&h]>E2~WGwރLVrր1bf*f*~Y:L}/f򝃦%D eW!!s7k݋C f1뼢xsG5Db4̆IW>L'h[G%aǚejDv;$Hٲ#nlZ3RezZ#S뇛1/b dӼh>`8xA҈4Y(mWw>HvߍMn9-LosK+`L1sTK۔ C f Oe~W,W1ΫfG eD**/&nn%9PlTDi|Ydax NkjS)k\gݮq ` wJaUVrM )zms!=e1P>Ƭء}~/?l,}Č6G"P"$b VNXe9^lKZfB^*zhVO^=B'D^/÷T sbzCfjT4p:3bu %ŗlF;wf՛S$}gW-…c%ܔвP*PWס FW6YG ѬsDv7Ib jOU ,d8[ues(a)SSq ǿM c#LXT30i8;gZ#hdK p֖8.; j/Ajp2Yyőf,b`.SfcSPK?[aP|$Xcu0+a9NSaJBԑr;o},Nu#!JpS"MJwe7߻/}Yۿ72G[!.Fnw,X=WQR$:* `;|kYPkW1L~_wѤQSO\?[r|6S; y5#k;ykXd6H %t"Y`L8pwJG7>ƓՌC7}z䂢==?J1qi]Bۙ*s8IMA~¼M9!N __o/mB~ )Զ`BlϚAŻ~D*qGBB7h {& {$̼ۗ{rDg|8sO6]}6BoFml͎t^ߪam8pq%\: vgj{UMĝ@,66yk[nn !'.RJٙRneБ¸wI99 \TK.*\!4lGvhꏋw~xg:ױЧD<19E_;%FN`:`13OnҋAH3h(2vowi Th,;CCtWsM:úb/4{v"SLfjD:1e =!TuAI*W ߽D`qh4:Jm|ϕg-1*S-LTH6!$m:#BҖl%2CuU5Czw7Oƣbph8۞ >B!bpOpx t8ДzԶ$\7vw5 wy완h}椪7+h7IB_4tA[; JxraB( ıZ=ReI&P\|Ay> _Gkt?~n3p0*rm5>B3=Ǻ<6 >ڊ1,(XÉ g>8N rlUz\<7mжE|}fs|gY<k|Ff`Vm4o̕s&X(#GN֥f`L&&eE\HbU%ל&T"#R}ge0xʒ͛'3~ G!D<7lA^e9*>S=J0wCTg2WʪQdLCgȒ`O<ϙ=|7%rᇨw*?:f.ߙ{$3>⊟ШY> _W:kֲ` Bʎ00ԮcOʢ|{ }rQe_ N$AҤF?#p!/["ۢyg[& NHBרH/>AuF;8} hZ"w)N72EalT}><˥$;4c4]hlmP%#teqrVdC@n+*}~",y!>}CT>0v>S,gW¾kwyCⴞM Qo ޅȲ [bV*}aBiʌs~>TU*Բ&:nl}Ќ碣eq89͈gx8ۅtpxyQ 9k*C#g:VŲG{fdOm)d '[TGsoKz(Mg,$ۃlS ݝJVdvPQ;WC;)/X&4vcEteaلW٠ۈ5{ o R<opnqq07! }SNcx4G@siPsG-ِ $W^8N,s_0R]ӊj%H!"uf' SBvTtʛTmL͍~ 060}7"ӛhWHfF{p:F倓1)M`iTg\ee1r3˜Ư-G{%e{ZdayG`@6>+[`n?!Z:QSN /ag`zi3>تI\qr+Adi\l@\,=aS~7~#VŝF*WJ|/K i=M3y-, Cx;z쭓8Q;`z7^-F& ~jG wh׳ (ۉީ^;:K#yE-;ty|ncm%jGヒlLT;mUK )2s UJDš5_䯁ո,Gaܛ܊h<}Otc$"UsJW/~9E7qbtXVy]3&if N) K&52F'rwLˌ8] FDk#fӗ `LB-y+?# b~|vly v(23zԔhKHcym ]*nn'/DA_"Nr&`RGP1gN{<;7C1-ly$5_?tqX.v,&AI6}"% wZbAiyELfq`VE2]Ve2'bȎ%45YyO_Wz _ )fk$cn`rϕN˲k 0N#ӆ<4(d2w 8LK(/0}2ޥs*(~OOs,ˋ;;FC[m>W+~闒Hro|O˃')@%|$RC xMN ?P /[KEq4Tvʊ%R_7܀?Qvyh[]Hlw(w>T*zf%u|md؈j;YٙPKsjDxr"}Z#Hv Db# h xֵ,Y!ԫ6Z e$E筀$P' ~bq]~LseUAW^s-N"(E":vgiAa`ofIvtEy04[ 'NS[v hM.w/olpbM ӣoOەo2 8 Gm흩=Ja__0u8tN~5 ~e僃Ad%(f_a;JB5t7Վ`Y.lmBŠeċSYG2`)Ҝ& Y\7QfS;[Fi[ #hOsjj|`V,9eߦn6OdX6샎m2sIxhi`*+Qo(kev"л 8txڹiT{> )z0~IiV1mCV|:wЫ&g =pLNIY0- k9\zݘlECڒӋJ[ޔVmAaa!@{8~!geM=oY$}k}!2>@_/VhKU* mҠ+GH̦u ZF̖䭶t@C~TAP貂K B@#bbaq7vI3ybd\bgԳkDp@RT| ?DT7l.:$26P;[zW{7C LK4W4Ƈf@?}i"2(e.Gv>!36HlA"3\ $_A;}~Z h:p 8Mw [7M߽aPFVc>_sXCQYa!~jW*nE#{6:W7$ՠjVd#>0Ft8.r_$7ڀL6 ;ފ12 K`TjۜR 5$I~q EBuDh'k4. -m}!vBMpOCP:c8?)*/o{#J.e-"׫j!{V ֕VPY2]yk]L n" w)6elDhir )4g0)#=(;kz/?oPΗS,9\ v@HH+??W3=z/PB&/%;/71a/:,*F,^ dJkc9 i*|o"8Qo]?$aCG`SyȅP6ƾi.]MCy@.C3Fmq!E>p>ybp@K&?(O[ {=gbM4aʦ"P?U^uKWҞÚ7Dg!=Y |.)4G/Nq Bᝳ($ ۥf^yκ@]ug}as8Zbh:Cо u<1댗^9<%/H+9 puLN`09ok}d#˛нx.&NYYbhH9я<Chg-'g*_=t). V^Z\W^&'qS>p>GwCׅ5w-x>6֊:L5}݋y[W{cq$4)0qwDplu;$ОBή2d`^<.<h 0T2܆R^?@lo,7N-ob;d4Sԍ>|Gy5vL˼ Stםlrٟ嚏rG:u,2򿋙 (Wj&)I\rI8C 6x-rU'I~m:7J,A%nڷzh @*+2W2"T0t1]ScjbP_ٚFT¿Et:Yn[ۮgX?>|t7@[0 &aJ^|J'L (Ef>/e}&XB^imK?AʊLR P ez@t=V`}:NGkicsUIg#9FFej~jgG"1?LP :1B aQ_۝A(%?~ь&'y0?"LrSmT|x^.JJ"]fݝs] Ab-% a&`o qUPm&}'[xHل z"&0TY/'Ģdp|dڎjTZUrkfYPakFk,lXoqt*?qXP0ᏉŽU֮jP, 6#fh2zg}7*=`{?aaw7pF5)-x-LҸ{4j(Jd Ey1<=>I@Ӵo"h7B| *m;GAyf_qwNE 5}k (]YnWU6ܕO{ 7GN%|V6u3}"9zʨ'1W_ܣB}Nr/]Z ʏ~W'uU)Cu>[vqu3[T o5K׌~Zv|L-Jh tsnL }(!>DF1w%z`4M5Me5R7ʂ6K=ܹD*ٰAHMqT'omI~fW 2] Ɔ;J3/r^\k3_R$f%w7qUo<1˨ Jo w$ah O2¯,gInS,hj6[J5[p|<}}MyKFF nѨa!^ҽI Pλ9F{ɤc7L/(\oS|_/WЕ&gv`H阶@3nү?<ufט\ TP\E/Y.Cu(@idaxW6gRrz4;}lKL!쏇LIz`y3ڠ*z8r#v ;+'T ^wM #@[&O&ѳ,U"k(EDMQH]/3 ڀ0.ijG2Q v5%-oR_/O_ldYZ}WċrY9_g/Oqޏ.1 vo9/+,fG#ѷr e,5OS>k[[EY@9 b\5t˷@Mύ`@ĝu>Ĉr6t@f[,c߸b)Q?)1 ūߗlH]ʼnЁѨpſCR ^>٥M2SfSN~ɮ1gʅ"i(OT*P2u D-#" 660";w7g6JUBe7vݯNK1Hs#p5^7^EQTuҲ0bL\uFx}`꾛= ]$&ܤ-@d@f1lxL;R2܇bjAtFGpX}27PQs9ߦC8Vk* M%,c<jM{~GȺyA}w/磅u*kA^g67l:dҦ/Пim)ޑ7cHRkM/)a^ BdBRE4z_VFnǠЃ*a@Q\yfFIP,5)G9dHW%b7QZ s#c1+ڿ*&>̆"1Mg^ ^6%&pډ"> Mϱ%G} 3VXgK,{ %uJ^!̀^ЭqPՃD>[IMKmDXͿ۝weIy]Zm ZB3 ).VL G% %YYTUʆLXlfG*)(^4 HC,&?az:ٜ^X;c.{ f, 3I84-bO,'y.U2CumPk٬Vϝ[Y#Wq(v}Q >qj$bPie#gbK#t>pUjB$qq߉*s3(p'DYB$G.?dXN˧`eɦsIZ}3x/7uO./$->d:D <_H'PrThFr`&vKZCAʶ{N1|<_b@ӓJ澻TE l^9! kvZNvh>L*<..d?T:je? D1lꎴ}ԍ IGB?'DAr38.$7=w.8hTPpPON#J ^o:A6[n ]O׺g܈dOM{&)dLeU: _ZKl 7o˸RęH uDKXx,@=Dh߃;>p⧑])c e_7V570h.l[L(ezRw}gB"Y#c-b-yfXkP8PFQ8&[EʠgW41\jo-p,k9dNy\dr{q2=)7Ӳ\ ʳ6֪`[pf1Q];ʥkFͤʝni?6{c֚ iqaPw5%02JY< f&61tnexɾ{Ne7PDB^Or Ї.ևSX^+_q#:QBnY،yfLSq .R =s$HxQs1TtaC}NU6[JqD3JL^(λż[o[7ɲB=YȺNİƽW}2 ئQJ# o&q7Ҝ{5) <&_f+( XL4Xٔb 3״`RF&fG,1|'D33t 9% #Sekn.c^۞*?-y α@z:Mgwy[=hg\fW`Ufld89^;|oZqd9$v>kzg8 kQk6UZr#WIX#x ƟY ENY5K[|Fcݜ2vmQLcAs'F?щ}u623;k(ڰT4Lz *Kp|g4ɂҨ{-{N)YѺ|~2|,l6YŷE,ibHU'l\裻2ͺs[BtkGRD9ƚ䙏A:2a Iۇd",JsB APEC x h*Wl^m;46 n|ch ;Q4 &vcoԒxM[};;06nFaCf[b5;Pwlu̓'呒@p 8?1Q>H =^z\:òWt0mׄEY&mDȻjBG+Hm>>N1TAncwk@ְthƕMLç٭COIZUauMwŸ\uaLvS EdĤ7׺Lb\K;CѮM.ˉ땳 E!󫳑>7^F$2@&bxӌݰ9 D܇ ANFs<";-%9oo8_1hgsUs_#cZO2cB.:@ u8 >V~ñ A{=_r)_h/CciP"b/ZJ2N/2QF $9&mxq*0m*xOh:: \if~-^E7D8mAF4}(ɑ`CR &xEe)x#(U1;O[ kDk=7|bnA(NINWl$pIS O 3Ӛ<=uϲ&i>5 ޽%ur8l =ƀ@3-z,{BR 夐YjBa+m_T.SF)qH*WW"1Ac%CJ6[Z9Q[MDE3T&P 4u>{!4r-4~h-*/ڬ38c1& |mw=p[:Js?.&,6y貉!&RRIꍧŔgSAB++&gj.RŻ}BvE,XQ=>2De.;,5L>6*gk>?iC,ɳ=9*@54I/Tp<ݷU{Hӗ짹פ ڃ}rq_O#</iS%5k*2$LBCO'L2iNǃ4y1TLD^V%|+cZou$fڒuNK_Dt0 ׉/fl$s -PAnŊ`rIq;gGyyVԋB+̠{ ^WtI=ʑ5aY ؘ zdgih CP@3ߪu()+bUrYRhڤ|MEA~`ŦYI=2=|*DcAu] + #7HX&i|YxerYXinst bvY3{t:%m@[9hԘUNgm#)(9ŽUmm+YBaN\ltNCx)2Cyq6_C?r˄? Z ȀZݴGnLV#yl@zpVdyvG;@OQ:.JE+=a\cA.SBOP q؁S Of!#-U78}`Fb/|2x_(՜:YopOeɠk6.y˥Iޗ{\w.Ifjձb~`4heֱB js w3zgXˌi~!G?Y4Ϡ?1=~Iᛣ#_ =f5m57C;75QhW,e5'IQp!D PA]o3~7\&Kw!\(xt_WLo`8̄/m9c 鮛Ϣ/;aVWuSA o.6PJ W[yw(9kd`~>A>@)DG< 1H_f2Br=k47ؕ `c;Ex #ss>m P/_~.8M v[5Ï'LUF↦Ś">'DQ`_,0bGi"LYY$/8/HN>)~Vt(#$f#A6j7'ѯ/hw5,׈N\&ݏ.'Cp2̆r×4 5";B1GpVb#9TTIgfHT6MǑ~)ڏY|n jF|0dS7$8>,\:J5VN]Vkl,7CIb[ПxBK lC{gJ 4&{mG z(HL[m*wiKxQm@B3t(- Q@S@ 7EN!5 5klHo^+POyME!~SdJ@,s SY*LGhHw*H"=sz`G3⃝ 2Ze-??DLq^fwzcWakJJ),#ߵ7jV{Y#(q?tm"U9$˼ypkcuG7V\$y<)U D{|Œ s {tƀG\W-[ U 6H"R$"YU;YJ'`U~M lm Jx rzJ{t5BPEet$DG;a}1(;;Vʼ4œv#1'\qշr%KE (_RIQ+l{0T4 ó`fQXtt&hod?jJ/K?'N ۣ 獽z. -"Y%zG|%zg,2 %Ne@SQC6컒TpM RWZ<5a+'(EY@+"`;1 ?%uR#/}FTMc,DeWBmKیD*cDIEhE@2fq~$LZ̦n.@)zܜqZ?gTf?챍)f+W6QR&>h j/q]RK)\mm0K@ 5eh&BU4>},j :k~T5g޻b0S 1"o2 P+l9г$I8Xs %ym$<9ɜPeDRrn?,|cf\|% 4Tc4f֒p| })(GRƨg]b$yAC 폰ʎ]9v(^'f{ b$Psͨkf3y@X f!8n=)( k Ih&cCTX<;3:'WO:F#4u#y$TQIݦ'0fϧ+|f9~ΧCEz=(m~8( &},Z: sn ZC s|ݴѤj}L=?Z\3&\ vz(I#vf{}"_M-r-t+^X޽o!Ae>) Xb U|a(?:&KV}VqMՓ!ap@6sՆ#s%{ V BJt!3  OS0; p,GThkџ Jm] >Xl(pg'욥AT/Ϛx5+W̘;K.8O\mhL%tuHX%(xvh:s {RX<=[FТg#5~{TѦ}x%qFSl 2/omaha 9yUHqs}gl7|3pjA3dnSofLY&A ~ܐ [-ѫ(Wk/EkΕmZ$!0UO+z}q»fbxf@x bؿ+ +jg\'U /:*6[2aһ^OjLP72<ی}Qz/whʩs2]e$ #!m S@N6$X)}o+jX?ߵ:wEja|?joH^{}N9D;~FUoEJ(?$ELd5ћ9}>`ǚ~s7|wz%"d*>7_6mKa?X,b몿 ,Z|BR HHНtR3\6 Ŋ09WSA9Z/OnTz` L@$U7%Ԭpʽg4m7.D,Sgvn1\L3fˤ`t3Yǝ=>nfbx-mPa'$kjtPzTN9^鉶J]X܎#b;vsH1$~t.SCzGPz6|n1dNGhqJC5>U⼲&J kPf25 .1+5] vΥ( 0T++gj_9}oJYI\r@ؙJDM~g:J̒vx/W PG$Ic2ykK5M玁϶C'V=X*<0ʶ۪BY!#f g笱:GNUe 5z_|zwL-4+#[ 47GM]H`psdr-*RDE )Xo84S+W@Be'nm9'Fل *'mFTnRB}O{^MZ,2Mo!Z_tĢh␈=&4q#0,EKQ-^|K{u;mE.  1+Nv Bcgf>B-`nh=ovɠX$\ߝZ{.{lHS*oAny."\Q|.?\?i`puG & :-A&\nh$uUw'4J kd8]km)׊p۞f}g0ٹ' \h"Eu ;lA!O-DYWT^0{i[(rʹlL{^ bm8Ip-)fx|F&x<3~ٍ0,/#.(#yY lTמE5np/ۊmV\s{oqI`qc}(.sjoo%.X^a?6U&I^usBW+ziz`ݏ*&vA2K1_6;WIrO}֭?6ñ]+F&[IU2ֶag 2B,.2*QTR(b~ ~+d[/@+3Hfh1:<WI#\*"80U+5SϨnkeh)-M{|RssoE'eynvސ yk%T߸(aDv5DQsgb{5=TK*C 'n#4H;k3îiw7u:*jzbF6c_\3!2~t #qU|P4Ou'pH[Ln碌sm $ijT 9՝Q˸ 7nΏ23tڄQCh3*  Rb=aaԴJ5V%G3Q9-^+*N櫖"(8 I[A)sk1MvpeRXxGH";VgܨE;RVi<&@2IC%ѥ nuNPţ1M5/M QJ6{KyXٯL1_ԇxٷC-4ʨPޱS;#F S(l&{FNg'c̈́B:xR)I'Ѳ uM*[QYG#$82* OYDJ%Bu0-С[OTb}ńh8+,5!ЅlNgb,ĭJڨ̶+.ߨd4ѻiTx"rQ hҹҥ9n>% E߅gP;sL=vه w_Z܆Kuc͏}GK-㙃$DRzsEi4clLUͭrmC uþK\I"WL7 7y:4R%oj&}ҡ]*xL 섺>>˟T_*T`Rɒ6x5MKm1f{N;h^!ŏ}ԕc\T9ܚ:G>|Rj/[ Tj޽%b";G_%8KɨŋCO5Stao<[i s4A䦲̈ 1?)v^yy9$Pfʇߞ4/{44sP=GEA,"U]".U둎Ud߹)V-T ~,?&-ʛ=P 9 ear9`>?;q*S CvC%Bw8*ȊCUAin$)F8p `ۮmWR=\(Z{[ lWok{ygPi'[Dy[*y˭%TǴ LV&A'Qmeګd<? " u#YɋF ’l{Gwrr aw&g\䟊JB!}l@^1k:Ըٜm+&OcbaA,@ĥo[ޯO*s^BIůoZ<^5,ǻ,O|*&o_#ؐw֧IC Ii϶WGݖ(ܪ-ƹpH)(r* u2ӳx[L~BSi@i>Yš3Y-5EzbW-盂 W DPLC— IU2P4CR1x$h'tc9܏(`u.H }fO_ LaRkI2`Zgd+Ҭe LƉ(S",Vel5]Bp5ZfeŽ aJ4&eQz!CW&0  n&$q_\QVH/hb?X`ufW ҋRl'|8de8\A<g|K Q}QI@.0E~#Wj|,#Xjr-kYnO l:k+jz=3roo@@#QU+`;T*;rj)Z$둍 Fd(L+ĿpP]e/HDzʧKQ`{B|y~|] 8 (+>64_]Bѽ+Ca)Fdzֽ_#[/z)^~*_OB~$1յ^",getPoRp%aIH޻z#BLS\YM4[[QQ}<_i-Qt^Y>upK8n9K3Ln'XvjEu=|123jB]̏#.lntA 1FpNqIr< 42=qv/wK-R NEYn<h\,3U1?Y(^&r}YhqMFm.Ģ]4,=ACAB jx&$D!ɓ k+(lP?Uj*Շo%>K,ug۶ag}nTL9A(uepXdMiNoH 8m/s;~9`I5 (O9EBRAF5-93sSׄx߃4vѮ;X9Pk|'8jjyTkI,~ۖMJjld ANe~Ja_=O7~/@mYVCF":jWu\5A~_ اN-$iG<NMOi`d\͞GWɐhd<(8U~ld O䓲%/VZ|R'#俀Ox6]hu%= IÖR/Ix%Ijj}@Md9L5=yF.YLz&쐈G\ZدDTPAR5 Xʲ@DvJiƅvn7 ᦮R!>[0/Ei Qz]7h5= \ùd8b2̓0&6 mA>O,K.Qdι4Ƕϗ:c)%@id d0ʆ՜}(0q l8a&yM]cקC)M IL* ;L^p&fp>{Lx֫GDYaV3^'H~nre4Vha%­Iüzѽ^cX` a- €D^lƳE65L4^X'R±jҎ/lY^ĭ`g++ZnE/-zik=;`HkZ'c`ee`V[}xGiZ/(Tu:^]])}(~⢩@!/851l+PߌQ~oP V_a[ M'Ds,cmǝǀSr+SOV[m`uq:LΞҐvh1:Z32 Vۋc^>OcP7;JJsLf,@̸J08xBR$=r"ߓ\SYf"k$-jclXfV |{tLT5!&Pڲ;"F*O JPA:|J'T֣s.D^8UA/I`riI['?4>DSN=a؄*L(]MgMUHŘHXQZWNqz.p3D-:t;$%I 獾ihA"3l 8Ts՘+YWFHzgwQYUF#bK:&LmcFP fE?TMomHV ݈uЬS><:FqGRnV#hm 0WK47VF֭N5˓u:[?}} u"qS:A1љ8 ٽˈ-p245\TW}1N=;]\ 3qjP]Y~bwoY3x1S[= k<-Ù#v$^D 9̤ ؖ/CߧәV:hB.g}sLXDZ¸~`{ChBuXA<+A?Usw3RZͬLC7݀`".ן )G."*!p֌69W̆o29B 'kXa~+)30 M˗outy&3 Y{;t8q-[঺LNO~iQ0* r(S*Gb\+0OʱB?: 7irHLø3UU~vlS0C A?ss9]iRȟL:I"؜%cd\erEfE05+1PŜC  Uus0$ J3kP=zύ  ّ_YT1ϥIi#'egFfCG Ϩe˹6UC QQ*IjF2l3x'&u23aY sǽh(7Nu92¸m]eW0) SuքO-aw q7ZSE;;BEYL4<[p:78Ҋ0q\gErfCo<ɒ;;W8D[gӑ3]R ^*9] v9,J֋DV+~pr88Dd @QK{t>Bf7Gz8̜+$Q*\ky_ =UTF?+ bI%Tå3`ib9j9>d@0;{ V;q"#Qoټh^#{/2uƒ)W)Tn2j {PUt@BN SĄI< -?0R[8n5IV dʩSHo#hHْ9f9nMi)~{YZ$<~5m#T^8fQbr\w;$ELj|2^+ [0)\~E4U՚X60`}EPSq]o:7ٹ= =${ 5C8aڪm%(nxM~ۖV$+;:#MTa⯢윶Kr4ZDu%o'ɡB BhdNǻr-?uQׄ6X=s9 D IhFG5 v 8XꃄuFI~m@j!c8bqn r6E_-"CaLq!;A:ɵ6xi x% a-{atp-l!& <{&CjN%qIBۼL0hKf4NB&ex_'mR+=;B2eWoK 5 4 ,+8"xB?yӍ4[0SyAnO ۟Z ̧;VcP,.- JH)v<4B9%G+^Ȼ=Z$J#QnBhߘ~!مX/UkȒ"lWZ7H@.0xu$c̈́Gm:xv?)ؚ&DſZK4w9`D/vۙS\iyK gqWv([i4:  %{U; ? q_011UB$ ؐ&SSb3w,V-<#ʹ¶(> ;v|'W:k%M0JFS{e(2#dT> YsdS@{A>JP2Ϟ+TW)N@TE %Y '0OfȖݾ5}%ţ0? LGrQT[=ְ_7699*I 4y*ߡ) 9 0M\YOK?1NA})`}Cr 玆"=κl5Z]VRHƜhN_`Qm`t~Y.S~]^FecFlQeX9JCwB,ʷ^^.I`}V5iܤlrƲ{¢ĊOףnUSwTvF;ױZ&Ew CJmƷ.x=jSTfdIy}]N0ڗroFlY%o z{]\&k}M*J5*`3(@fyZA"͔yޖś{182WfWn]F47+-,mK5<('SKrSP `1L.!͆]BB7WPVrNUEنoS>,I´Ӣ=IsW<]Kbv{amyܟoN>v?DF.]Mg^S@\jEϹ 乶._ :dH^x#?oٶRy1ăp ꓋XHor'qyFP4hO~Ks3vE\ԁqII*_%(#$^]J[s q z;Ŝu 盼'``9)v$'`X~[aG]aڐ(xNkȐbb?~\𕿞a;<("s^TAQ6qI=tib@3IׄͷG9"q)f qgpeA(kA+c5#A2OPeJ{wķgW 𥷼)B,`3ƖJr$Q=O/u>zg|I hG:$Sp,lY-W-hUy@EWS-|7 I;# P4:Z 3&?HYUdL]],"7ԲcWB̛t?B~8=SCm:p yQ5{e@%'%f! S G_:YPp,)=dRL,",\JNjh",=cߑ‚޷1ߙC$(> RL+jGn$l9.< ȃP&)G5# baSN"vN97>BÉ va-4)A,FG-` q XJ C*+Fg5W&GZqC܅ qr$=$}N:u&~QJ@\T qe{PQw:`-(CE ne*Sp8Lr;$f̍or|#ۅkÜ1_ߨU(6 vwoq?!Z!L@tj]г@6,Hw_c$(,Rx50? F,!הǎ|*ˠl`սDAS>= KPmb01vU-Bb#_ҶTY|gTZY&e3o'XU峛d?ZboFuQZ2iaF#:d]В!g}ms&=vk>EJwTSY$x8ވL(QA$H.uv*YM .a̝z@١|9hcG5x:y)K&zTZ_a*yW o[o0BCƜIBh( ⷕ.>{D[t8u%h':"U~Nxn~NQ?z+IJn7P!dh^㜯O{DUau;ӥ!qXrF? @* !3d)ʂLEJ38*UG! ƳMvEwZ;>: E, 0h9HHD?pS?ukAni !$Z"ǿք3PP&-!9(An@'`2C?2/`g 9gg[y$rѯ(4RbZ,skl(%@i^Vv@D%nMg#,^KS3*-DP\hӀn]gxW<@'Vi4/WZHX ?=  +Do_yDRWGl@XEx(\QULvGGK\PmݰL (4~h48-lHA M8'%qCE䯚v(7f7Ti|ؘ*J>޷pjxv]Mٓh4YhQR!]7\r-Vkޏ^ 1%»AO{kQ^@+0:n9Lwj #N6XZ-y8ZMwE%``nLܵ{=FCccq7u'd2l%˞1O/}uȌ- QUԳ&w.d? `'E$Fp=Z&BN` o곾n{ÇY7@DeH/ ;Ѫ1  鋚bՖ.N0Pl'bVnt_R7A  (W )egpbwO-RnnA3"㝉AGֺޫF2ȡ+zvZou &rD݋,&5%귱O]}K{TW&g||Q4H%цҧжF*'å6%Vrԁֶ᪩GnCcFB 5w Yt-}|`|j‡|9KKfF]$ 7L "8^> vRD4<i;saX8ɖКakNp%qRNor55v> -ʼՊ0`uNoɆ']?e!Z`c5Mxd /qE8vVνqZρ=;O0C!Z}JJ3ST+ [xDʰd m%1lzj%f)O!KD~5"Ig]sNaw{QٽXf9; }-H& a״JiEd=DWtЂ~wGhId)4j[D@U>O$4@&$ِ"r󇖣Ue$p฀44: 7SֽS9i]'#rukmB&ZJ (5QxE^[Z ,BX0Stݕv`hpL0ǮcGYj9` gnjB =O96u˗,P_$ W,d3e I.qySR8b̎jЬk.?l 'z to"UOkb;H2W<>|P}g2ж’2ٵ\Y%xxǐ5@dLlR˰Öy/3)-]v̇?}x,JOJP8wUަ};yM)Q!oDN" j/c_Jk"e?65Ln[ -L[lF*s|{SrF1 Qq [ic0utZP ބ]$(lw rTC Y5p/"a2~۩~v tt=FfeJK#fu[*U'f ɞ$܀88 #Y7N{F @l|pAO. 9CԨ8ft3HX0B?^vv??FNϥpa72،o3#>tᮂA@πGN3m ?cRD|l"p9UtwJ\:0vO ڠP$L~'.!h,C󻛅ߔDZf& 9]#k/|ļp>bT rCJ:{Ȅ]qR4˹ _">ذ3vȗ.-?/1]lO-rQI[e_BUՍŸ"+PHPw}s|#qJm%@쀏ڮ~IR)9.SmQ\;h1i?~c=G"-XδȝH zEi#yJS[ ׀vB|wU`AA~ê%+p0:ӊG~4L]hl<J-Ev"_9vSCWdV[d~/uw 5ОPrྜI8ܠi9Nְ>*}+RG-s2v|j!uʶF`Li95jQ#kؾXΤٳɗҙ:`1(r;5 |ӖB!\3(X+<<i~u#2 V5"T !iq*{}kQWg1͛ķ."G yuL_ZmrKmKHyTR Fw6"JM?/1 U"' +Ys2uRxPQ `c0 ݡ2m+;.ji@3;Ē,@nܕ5;0خ3XL.Kׇfud иi`~|GvD" I22޳4'A#u%y:wI $FPi{aM7 ׾D497?tʙN/bAq'd9IdQ%4vZG 6]^úzL!f:.FUDheq$z8a@蓭{/ JIsTU_DFJk[rp$d=W'<0ov*9+PV\ GmEmC1j0"gkkV(%a꒕PKCW+{EgOc 85f/L!ӠOM-[7#~yIa|+*PTjq㊊Tv7ƅckNl 9_PH]ce*IYZ˖,tҰi\nZػ2N#*$U ȥ#L{ujr7*͙<}bJ/۸<">@xљ.xY>=P=' {hcÇ~fEmG=M&#i@tf[`Rwn@#O,E.R k'n„AdlTj>!C|#c"4 Y[]%4*>nKu[-2yq rXZQj'VhB@ƻ!IŸ2d/AA۔LG~ִ=gqxUMqΌ_%Bk|\ Cܶ~B1z=H>3ӓHIsu^@j9626spq;T#|~@D| 9R_TMP)=Qqo%8Cj $gOA[vԈqU%ޓ<"ҩt6K"yrW!F)?Oַ"F>oףIb,ab||e[hcUp 9/@&9əD*H;5<JiUv1 z x1˖pAR[UX>- gFH )| )18twu?eWyXٚt 1-z㉫ˏB3'y$-N9Gʹğ QH`F0x^nM^ sŸIt!1DC1.IȟFZtƤ5ڌt~b\_,Ѩ.^ #`Q6W]6|Q+'lAtLmxЎm2%kh]b(?-zb +Z:B.LH5@#ՠe~77 UB p.O/5Ai j wK P:HagrH]ef?[ . GgA"T=8|y;1lBrLy5_K !,}kk\}Z4g펃οTʊ7>?oTrS:L&C`&I/y3x%>6ZD%} Do'r'sW6hJ싈6 cH,׊a] n)1 EJp c"V4&M`VxRց@# _֜϶v4@H [xhyˋDѭdl?z݂ZbҰahh;OyjV㟱 L&ќmǐUoji"9!D7lȂz Њ #ẞI Fd@#,f03 %/^,8),G 쇪oIU,ySzI}F9`,Nv)Њk=%?|dc1]3V; ad.ukWmssAi"UGwӘN ^QP)ݹ:1AR:ކa"lqoQKݸQ=8ў”sXus3D)XL9܆6n٨ pQĩ6v۲ooJ4h bKD9^d-MEVƒ9[\ V2Hn5<83XXWf*C_lw% _B#HpU㔬EW7:ʇTо Mc}(b)*7ty߽Ǥz$.?p؎ r|<~Ͽ&~ z-4WD:\&0֛Ie1}`Y mj ,RM{#7k!LTn9;UߥRs+1wlIfLzQLXnk2IN2DJH /sUmpK{.1C;G۵TDz+yq86NNBֳn ^ beV/3~᷸_#K6󡖳'q(.br:ϑj&֤sh•+&!o rlu)υD-JY4B1J?V.5i{|6laMm4cmub%QI|Q=&m;Jca?ɧWE2hkouf@.9IPk|v0ƘB3'6LS]\@ j D4hq"m6W, ݙĺkoPpL{bոMae7NG[\A!je҄%!+])^V/7zz9+b^dI\^\["A};d&e.VZ#o^%oP}ehSChZi MVҠ"`4C֧LSTۗ&pĘ,x^-З]Nu.u=K hɇ+=r.f }} k:JףwJps`j.v].zV6Y⯉'[l%k@~^qx)sUƱaSV{O^a%zˍ1{^E+jn#[¢nvyE9eik5wwYo3YfOڰ~&Y}}Ԟj$}63I IG"-ݜRY7 r59%Umm {~V"(YDm#>aAw:57A5# CwcH/i*W`e~#W TN%#bIpJe>7VlPrbw˘W'-jYr?!Bw"Dr!>hlNJX|AJi2F$ Uy@g#oZ}+RDfT,pCq+(ß:X? H n.Ւ=ͶJaXuNOvQc"IS F=?%JW}l@prS]F8q,Ol qfJYpl %ݦ̃NDI5h"ZL`Ԙjѧ :KԽDBȋ7G;a*^PX7a"U#HЀ6VOpdr0k\5zHf[ډ7G yFL'NArd|uy]HdwۑJJœ0O_4Q~XJo6Z|1ƌB0&B}Qj{jQ!g) ]/E@{*!I88\y1&^*`uE [ŹrV$)s֘xd>e0vMk7X$PRSAs $(i x1Z{n;oe{f"PH6t B a{@ظ-839@լS :8kA\؍hl/m6:ZeF[m7q*j!0 FCU 26Tފa.x>03NRnSAIme>+WEvL<߲.ϜmƉK/$um>\ \@'JuO/zJ}$Cch]Ȏ A-wunO.8ʚ|oUUm<Ƹ<}%icP˘/@VuDjMngN*PBi˲|rw9굷з]E2+ 8W`!OHEM+\ W/Eg65Oֹhm YTƂ$2낶+qLJ5f96xm褒49%].%ƿ.Ntq3\ç>)v!1[XDAOǵܕ^(B{.\a$.x: P h3e5A\CKH S1\|ȞjwrgN0K^qi5̖\vi~5$)T+䙆3Ytk+'4)ūeB 33s3#-qz!5@61uks3YhaQ$hMVWc]ߪ=P#`vN(PJWkhMmqօn }{ OaSmQv޲~0l"SCDX$gJf\]Sr$S"K- FS{f ڞgn;Z(jⒷP1&{TfyW$O61m5:}raikQaQHH/_>Tp>KzM5ƫT[1Qc CbߠO@9yS$2dy\9t+V=pyR gTnhc(r>fx'9d#'sߔ7 ,ޚ0H応!!.}e44>F-UypKt5gSsIS>ȨO}ɦ Lؚ#?}Bte.P1{B Ix5~I F/H;Eԣr~BL?} yCGR˳\nJפgiZOHnf>Q6Fƌ8h?[PQ= MH=][s͐>|rz_),ssk.2ºFu88~P2VrS\81]65ּ3d9fĴ/qsMPaQXU&S٘oԍ=U )"zf_ӽ즫ET,ԎĺS?_!8/Q T|-EB(bl =M]'NAՐ_8VvM.;lm![:*| *vamk_l>oy~;7e O}0\L'!¦ ?n= om~0KD{ rp춎ZlˇM5I) m1߿3+K)ƹR{s8px᫊i^,Eɹ)֞g/`1D̀Fz# c1w@L _ ;,mQ&L9c\5QP-5 cz=$ء ix(-Uxid߁a78W-ύ7,.Xw;eԷwWDr dk6eKY2Qے_;R/VjW}>߿xvD49Q}K'}a*]@&XPI\ӈ8XCI\3p-zX~Dʹv_}W"(T ht?qAPz9}_~.^muԃٱ c+'[\KZp2Ψ"Mm}WMyQ> 8eଠ 4(.H+*K%Usdi J.|@[KM)W0j-D+0;ϛyDBPa V:1aJAkEA% WO*0P3QFQL2 .8$Hy;ϟ G~MƊ芤6p=#ytrzA!u`^NQt:jZk{kaϦzokse:B(s<)@9,R6 j,:λΰ$E#}ZQ)vI#M?m m8+%0ڼ<쎴}Ar6QMX8*t`g@N>U:tg٩>&oj:K n-ɩHE?du_?Y1Bs$8bGOȥ!M7cyZfjDt#iܑL(RR9lqQC26dWUc|ゔYIS=T]w@n:20Q)khܝB6P*6e.HZs?KI#j2ܝ)7ҽu/2qK/&G`"L<ԌΘkfV |F)e{;'}g%qb<#ǷϚQӔҤ)v$v*2bm3ƢWiO>e}ǡRiձ0f؁g@j%ZV,me#0Frl٣{i,^*0gIa0ESUR^xAcN~ҙ0o(2AA9L_їť!: Bk%*!mhޠ~s툝ǹgc_Q]f:tFZ<9y|q vc`Yzc GF9]$#wMhyWɾm~ri ^TחDu D,m Tϝv{*ueY^f^=^" q/:5|n![k |7[ҩ;xqq^oZ3ffklB1lOKm}Y\g#k4Of?W fO X9$ 5iZ<&[J\*5BGzTmZ|hLÁ,qY W24y2A)xQ/Oy"4 SXЭx{{+KݧS |kE%d̾w/*`2p}5U^yVAz$@ ;7.P oRoȵߺX; 瞣BdЃ/D;"%ꊲLGPO,.Ŷ|H8Oi-q{mw:-.unL_ U-3#%G9Z3}F3#'D>\~hAeG8~t$Y 4~рlZ< ֌<Ό Y(L3ծߢ=<-J܅>R FmFX)$$h \K'>Fe=IE2O fKTY/R';H<] K)Ay~zC˙e ](mDA6ZgP '(;& se1,s<2շN# iV>˻nkJ3X[ַLԆLp tޔSFh%hoWu$P#*(PXy+[[A,S*fY*!#;s28j:Ie,6sF|)$,R|txZmu~:\7o DjI'76h0ΆviD[ע'.=>yg8h' WMw{+hpT)jMwM;NMKo+zwgcvt{l9xPĵRM)M̺aQnSTWo@;c4v`AX{-+eo6鮆f&-B@Xz-2~<$wGAGm +n薏 \:MgM!|B,V{#B[]8 /IFG6|b=1!VH(^}[nG&i af*4!yNJyn煭@.DAuP49ȧ܇ndRtg98%#$WEZ]3m=KL>4m/Y z.hTԛ?oa<!Op3®qTl*,jP54d-3w^bM}ގ&k.!-\؞>s)lT(ȂnEmrB Zl.FBAA!ޙ?A 槈$|ܔ W=*Gj_vj6ۂ.MA{l"[F^f2d][?nD'`>R#=156@AV2$ITQGo 4!+3y0dFKIRxtjAlM^ׂ xHu';)3}b`E8A '9:qbPF^\eN9?1pci5t7RᅭP[|aC洵x3+>7>yVqpK{ġQWsȩ2vo<1? g:I Ve5a c}`S}X('mu!r :ִKOcB<='9'i檨ݓR/є$&; 3ArPNUEb%&&$5 sSB ܞF>F9f|"jraѕ)Cn'8} WW@?7)Sߏ47Mh1V}V;|\Z3o;wZԼeӂ_!AS]rP54ް67Q5*sEK )'MͲDj> a8bKI+c ⮑ DYGjUt,Y"Mayϒ>(aæ{&W yՠX~pLbTWroO=N@U[IƓ6kFϟ^;HDUrYjhYjQ1ȏRm?~*:|2Wז e];o_55f,ĭ,#Pjl Zo~,0o$3 ee%Tcqęr,H2sۉ[$BOs"ă}DT7lf;mnT.pdhÜ5c۵@;J(4夹ŚL}o;UP,'tuStrtL]G(L{~Yz“x⽄EG,vrR3w`$kԝϾkGh(CvWPHAkxc="i㨿 [J9)ޏ42nm]<ÊJʙJlcWe#b9FppWICVc,N  /cMzZڄ^Gቀ%zq'vW#O@%3;+9OE(ۥυMJ/υp<ŰnT^5P/%M+Dw3Hgeq +R}]eըր~|FTGCDAЪ|~8N; yh&}K0g, ɇyΉܳRsrD4> ZHPv1.&qɯY~RȨ*m-dqlT~wž+L\Qr #D2WccAon _gh"J:WN*=?4T~~''.>pSot5ũ\7i jU*^IB_,dPS6e[Z7KV'p19NnO ˱Qix"g+;{r6,DtǮ}*RQ@@@׿dy}C]:$H.jA7ݱ;cNi}*F1A4Vb8=bc). *iVD})DVBQW/쇎UaRs Ɠ؝}nxLz?r9#*4A;SawMasSB[71T3nhY{E,wb`럚|6%ӌj9Q:5!qM FplY=dB Z)(oLl`Jf{@$[ "4x v_{D73]Mf%lN-OL-~FzNApMdF. !E0>\QGy[=Jh>9}ަ?DF}Hl K *tƺM5Z6 l0OKNGE|>=|5 lKe1|H@`j ҄O #g;n|}}oX~:B| 0h1;!y&: ؙ:>/sW^zo؎/##aj”+X%]~[s %O ȡFswd2/SMI1Ef`Xj8$aKh+,T2ۓ L7. M9`F:ĿdI€:WWdVꊤYUHH_Hn8˽ wN}J}n8R=egG%-> 84 Vy]tJ~@45I'/!;jX~=ŀHftKbrh^o&~kt,r 6!紽 Fz%)d Xt5ntGA>/|ΑrTK>NNR3^91u'%,yuz1=R3Jj9C//Pa֋ʃ$ҀbĕspAh2vKc(uWzj˽Xѽ8?mT{[f pVA i^gRlF#W4ni1+ÌXƱ[8I?5 Whnu ``nJ'0+6 Pm KVb%% cZ:1'Њ86D/O[@[_pe{p_KxGȟj4.ÊXk\z@R"w汍Qy26 !3ML5؅%f%N8U4r#b((_b,WVFH4)a 9 J<{Aͻľ;4HuEP̍:b4_Ӓ5g%$WpGIu~3@4MJ\*07vʧEO4uw ZSE8cwP$|]8Ton,UnE{oa>~Eu'4 k^RB!|H/cRO»ÎCÂ$|5~a7iH/Ws\~ulaA_D鼲DJ BĤ5IP\~.6b3~e(>-b͂g@h:D噇tiХ3UP8 h"OP5]{ Jm%سJwwLb%wEG Df`.ͼC ~d ]sǡD%ƌ_2736:LQ;#oJ( {Ҥ*h0|}G(9$iY +$N3 Ղ:뒦~`apt޻z@)[Zl=M[vvDx2;&~#?^y;KflՈ&aYj2= h t]i󺧊[f$\9S-R 4+JJgE/;(KC޼*zOK^`qFwW4_EY>Kt{ԧkiΤ_4Z0GNU5V_`}y ۩MhGOڲh,Y҈;s,]NkFpz؝m>Q0F \P»$QAӈ݆4ڰKGKxdK)|,?XS'_Wl"Oۤ깪+5ӽ_Smejr녊Rញgw "BS*G:Ļ>djDԾ4",L0o-FD'1qgA.).Q}tF~v3Э#UrN$uDIeO Vܹ(، w٧Ic5АZ5#Q<ǞCмޠ>"9YCKLj:7sp Hٝr P*3%&q#ẇ| RO4D,n<9yjzssV mmY Fk߃3ϳԳzL~eB]^RrLZDsO~ Eˇ::5-G65ǹ MÌ"?@L98!˦B`# D  F2r z/3f8p)c\}l݀3 =GY~ͫ#  ]ۍ^8aEW9p$o2+DB4G Kӌ)*^K; * LvچD/ϸn''T263O ۬+Z?\b=  S7S#~L1>8Ƚ̩BNgTf:p%un%~U(ހ ;)+#?B[ CJLm)FHN!\nLh f_pFWgߣ=1$F?=FNzeᅿdqBJaqm^<JͣFH`@bDWQEM3hӛĽ)VVyerX(!";ajcE9;?2@`I:(:@ \MRyEp. V/ KrI{]+ٚW<('hqZ#3HSr$/iya0MOʑ6kǻ=^jM:h!Q]٘(.1hNis *SvbUF~=f izR"'G5D+ynE,)_Z~vbo~:?dS@WKrY؛A/m4:9!yq^g:ݩZ$[.L #ﺎ>e0Gc]4X6lj3z!ǵB'/]`p)oAmk}H\pq]t^;5TyW8GDBy'6/2=Y3y,lTpJ*A&J|6>d;cL׿iZ}#jlc6# @yrGVR+/+{⑆rFn<OMsu7v$nnozⶡ+CbABp'1)B;  i< U5E0$ȴ-)BPliG$468\`;}'~I-Wq-E /payJp9[P>z08_9Q/oJ꾕DXG_ӝ Չ0Sn=<9kIX|pxv.B×pd.MkW%@N$~/9עm$p &Iؘ͋|eV|B6٨7t!HBGڱd^*D i߂qK^N ӜEϭdj˷:;SQ!㛉)rk Ő:Ov1fFO*JchĬb:u#C4aS_ C wRrL1zUl3ܾ֘ye!J҈&_NL|i_IQDqo{q#8/??b^݀3()KEEd>-C{ ˆgDik{ǘ$;́#ͳloϭ_$qa 6ZLt5_[8ߞ} ݫ[BQ '@rR7dP[s`Ô8ߙZ?t"7V&tpu!N/qcP^h7~pQH7ݸ)mҤNEZ٣_' ajE[/T<#͎lZx-mJ@8!9Nc8 O'R=ˡ{֮*=Rk1Y46VْWӧ.HH<== F:yaH{7i̇9X[t bl؆(,&{[Ob"M(sAemZ2H$IMg{36̣~1^<_ϣׯCX:\v*O)8}`9r)Ȕ޻Mj@M^Ftn"K lָs}5vY퇀+o.(,Y3M"l-ɦc=iUĖ k/" {7§l.n’>[Mvvqxh)H-1 va.4Vf1?(lvC.fN&U5'oߓ)Ý6[A=:InФdl0W-@4@.<{;:t+%CQHs=m<t)>BwLXdEm`jzW+&iZq ZqCu!4/kc]!C0 mpA4$!@Pd"-lzBS9P:`C7 kmz^]^RQcE^ Fm}2L٫qKJ=68/>~\-VBpSh}pN?rk;^ml={Q _x2Y @{ߔ  LEZ&= <΃tb7[-{#:/L錪-9k7TBtK, ]~bܔ2@W\pz<ߥu]%%ǻ?>v*y]JfAOPJ{u.^d*D7au`ע<3fؚ/PJc8!_?AIk+ғ$vN >諗't]rȖio颽IŗP/@@nA.xa❱}pc03e~& *bc3j}  RcMu1<1(Ho-r!JX'vq\>H&KsOÜlHΕkPGh}9䷚whg*7}Iv=/z`J<3"01HO;鰠5Iw!|$WfmU'@\4CϨ)ۈ P<몁Uaqdn"hWⲷ_@;xWfg\*}suO4{rplX辷n~!.[OA$˄=!~\ #<䂄>]AvH} ;ҋ Li b\ o4DrZ j0Hc7tEh9(D.|Ryaib{:⇳1O>(jvlfZ&Z!b4q9c22ߕK^u\aڛɄDG;Y?׎|%nD!cأ[冄y0u,7~[z.1[lʚ `PFӼ{H8M׽LʟZ#F?tMvnY d9oub,n{w&xCZ f^R]$] UX-Y`Rho$zi%#|Mn.hW55òL^H%96Enlv(">. g8+G&ӫ6pZ,^-ِ tzBS>ki$nBuBx?d(ϭ/ î8z\l-0PrxR&YO 5fDaAޒ]!$#e-~(;)I\i9]Lȉ|K_'|P B5)qJ34L}/jH |!]㘃@dJ;ko>U h;X93 8_&=DFh=ga~25iJ"4v>hU< LBPL'A{l{Pp`y`K]O'l]s[C$6#( `WN& iczh: U*Or zÀgxNxh]:Djq5emnb_w~~D fA"wVC(R{39kAHskiǿ  ? xk^sJ\DQ1+%J9--J롫"Iq͋`)U5$~7f9e@=٬- Ye/$ WuD`}Cm7nh%y>#Sk;P6w aq8.zv]BdY> yTo|yp&ř 7yJa]ZZGa+1I^/Jz|ơCK*T%l='S|vǕG+(NӾY= At8:oFh 0萰2;%Tk0L1oŹNڻQ2c_(kN[anӣ>\##21tG%jW4B&ȲÌ +,ǜ a| ONޞF6tST[Zw?wp:~3F$IomayVb D]pXE*| =Z64 a00ŝft⦆tt]!q<3c[ F=_8B/? x@ls(vFuEW [{Z,*@H byD*7e+Zj2ɫ:]E^0j |͞4lCziAnbΛ<֪ 8Ac6sMhkFhC.%)2N,b60.)l!)7a65著9df yHO9EULh_,ZM218H^ U5sD,bat.1q񊜕=NnsK2WHc5*010*K%f 9Z{-sOP˨2>e/0a{}۽njf wF,u > vin!M; wcm5oҏf;W)U ./Va= ?fo wP`9/,,ipHcǂ1s_5~rKuRҙYuysyjޒޕ'&{#'&%֦G=}*}{gSJtƋ&]Pu57IWIS: O|%B? La%(_אLiU°M$;",Q%}Y.66`׽X8hm.i`}qDC>T - þ>`(Ș]S¯F]0T`T:àqiHn G;"ǧ)sd(T9@ycOGO%ʦaFISc(m94!呜^T_@$4j2kd W/Pw'6J |ƤN! .bO?NXa2ƈTa?_65U2 @mcy 'W|w%YG2ݨ3Ĭ!+:4ׇIh2OMRI/nZVy|pƑ?Y E԰R͹蒇e(ݚ,)yYh#[3>Wsodw DV2E-^K)_cB{hazQI]-T- FWW;+ ~3@^W3, َMCy<$ՓwAj 5'߶m;]){3s"|$2ZG!yVݥioALn^](~1 8m, f:sA_c<+8Rƥ{J1hV%'q6;&p8nMbn5iKi7lȲ=ovzC]|{o`^vbJICLH AmP~FW2ÕM^ yL?4AI%#!-[oF*l5 H)J^ϦŲsiQ*@Ai4U B%Q$?H0l68Uěseo\m|ŦѕYAL ͑D?MQ ̀ZP( 0܃PIQ#jvؓL;Y׵, mVvYc{OٶlOSU{ \ q=0gLFX~L7{XI4~%VDT/ݛE1ND s2>y)Nh3dx[Hv1]˸LOnI>yRil2;^|ES,`$GYzwMS#k+'ht5z/eVXMc"r=VrD@>_61x/d]Ux)(^<Bѽ]pK/'`癵{z'-F( BJkU2 NM*9aKn8dNLɨY^*LI-)ߕ̑J̢}=sHE*I"eȝ2Qc.ocm,x8V0dLk캴cTI?m~$b, U+.` ^2n-9UGZ?ZQ%@=C|P .E w/ȋn;sl6AC<&ud4]3 x6oo&^L)}T磊Q&RyH-%k8J*&kc89|lLx]|" #@nN1p_JBeKY&-~)\ ]+($Z~'#NL{Y}R=a3T-R 'ߦx[2YOa6z܆rĊ߭@$] {N0À @<3MWvIJ-ңɢt41݊nrNmu_ R.*wPm̹$(Yn?r,FVSEkf-[-=1gގl}mjCre@/'ŧl/:2rUȿfpR%gk!(w6RRԓZ@i+`iP(#L8mGS(z֎tgeUp']m:\Q> "%+(2ZXkf- k*|`V[Mݶ7PzLY\|rmGHpS؀ B=WzK M.FIpXgp쾦:EyPOo/˴ ~5 D:7;>LUjfF T4ᵳ@ p vXlmѦڍ2̇]T~Hʺ:5-fHLR$w'ggV=ix觃2&%-D Km@H#n!XȄT*zQE V1L>t 5ܢbϪzD[dKb%h6`Ch[͂5h/NCzycoSTRx5Pl!=O+/.'w[ykV 1@& 8roK e*bDv͟P1(C_mS3lmcÀz;1D7ͦ*>\]ŁcHQIt-_hq0y (Q@o^2\cʺ9=(Fq0ewj]aRK/j O҃W"7y[nff}[O?Ra}0$tSKSE#fM‡/$7c[?Q~B.ES>_ӓ8e 0xY1j7i}/WkIP/Pʃd[v1:Va9JChmt!?4Y$\_ ݍ)`X}D2q\ XNiʶX9nzEs΋=((_F߸dfJf'ךH`etkudpg׏Bj鍁p=ujÏm0YC'KoddgPnpz= 9HNUt'rGit䥣mBWELoQ.(}Bo>)L8uʕo,_Z 󇅬SM38W#buFʫxG6>EC3? (R<}XQIUGCAǀjr>k[ BGo1J{.ۚ }3u5c =EyG0?NKSh4z3@'ZN98eF=~"%t[6DNݼXӚ<6lv:# Y?NReF]8MK  \1!|יԙt!'Nm֢nDc#=Q2ke߿Fsզ ~M%.FOY@`Ne^ 3f7L2]bz9햂 h:%B0*<6Yvg!oqZ UU.p;Z5J-8s]+J0w+T١ B .K'H!jv_;EU\N慘7{#pItUVep*Dyyu/&Ad#)(Z9܋&ɛ꾠•h2p:):!nܱZ<K)[*~X%/==MɄҋmT"usHX<(>Z_V#7hf ZmF Έ^We g\UYiAPB0dјJ@їzg%Mk (9$1#0u$w)Sϫ8f UX:N %TίH`ؿyAT-=? | d *َ̤]".@u\ x*{>ۑ23۹ Dl.sm:K.$< \! vsd06v *RE+p !ɺQ{F|}\3/ѧJWu6/|@w=z5ʰ/zHaE&k0=TT.6KPg : ]lpiO#Daj-AޡZٍcSJSۿuAƄK?o#7ܙ晑ìaEq֩6ˬ@SDan7)eM n*ʸ钼*P~4\2ݑጠmqykRCz-6, lή,2 5Qs{k֨s]voZ`p u v$ٜCz.$^p:'aI;ߚq# jPl&Q)A*ݶ bngGJHq/HLnk<(30r Oh 0uTJquZ뒷f} 9[J?Iq:2*Wބ[wO[,@(3k!i\g$w/$G ʼa`FoPqdkx ,eĝ_ٽh%)AHGYs(c7׸ uF0cj;KwKG῔Y]@ (pAvyDp2JBz.[#‰K3-A9n x^)֫jadB[#<5[7|KXt|);3@Yz38ҵ wC}->X&%Gǫ(:r'Tv#m"n.s).#Zd$jiTM&]Z|fP9о\tc n* ͷRl`("A}/hyfgPkGwl`cľn˧^Gz72Ok=gul/&LQU?;ƴxt٦`bA|WS<㛂ZͰ"+!)YGJQy=4TfCJ;[-Qz3I9W/oLs3͙ʱ_jߨz.XF,mSy:Nk 2."}5j"X ezѓ+®,1l\;φS6g.0yQ~tJwFr;"dW.LU4HG&nߏy0jM2 za-##ɳ!pڦMZ1/%8`7j=+cjeR2ф>_u)yW+e3ہ¿!#OAS2D| ,T2e#cWE,6z @Vk.TQr 5hg*sbZѠ*_N Sfb/gr^,>Xq9߰u qt֜0TВ J&Ru-.r^'p.?8<]UWOiDi{h[j̈%'HDF)^Dh3G,K[Q nd9VUu*7~ɲԭ%C8k/[Hҵ{׻ +0OƘr<,(0(TC`Q)x}UX,;T88ȗvιPIF2*NԵ"h$#+v#:zǘ\څOϭbwhl*uJ^̶bHyXz-}Z'51t/O '͠xjyn~׆b #Ygʷ]f lyDK?xda-* []EGJi }g$||Я)>Drcjsm$UpԴgu޷?+J]BpD$uGdWBQ#GMľ.k>쫡7NL 4f-ʢ,ZyXg0lvT|A\FvЅE*MUJ(5) `:٠,/`n\>D~VݓHRj8ҟn2Q!uL#ZnaӊO' oDXeUxG#.r00ʏB)5홀;\N?h&!x ]V]As? =+a {ob|zkurIDawQM,MOЬ/&B%Ҙ9Хa @TTDRH`CI25A~ސ'ɱ-XWS{k(qNhvr|MqG>DCAݐ j8~*{Ә=>3i(ETn9PXg\$#O<u٫TBW[*& }*ɗ;MIL. 8{x?DxaԮ<#T0h'k^ho˃ƆGj@f\x;T- }f[u6 mKlJ%Yצ]&஋96@^R;#)`cMDd\ƛ q]LTYiZ CRS>rdkD9+~ŊYvSabv E,FP^ʆϜd.KJrwO!.eeR8Ix-KUC^asœև+&׾u{j [?K~АdpG4^bg t{K(VOVoZ.0W7sj-mb,nsMвn;\ <P}O1$IbtlUƛ܍P~D[ 4.xX }l#H:T߉mCI3b~>$dkW (}ԡHKHSIPUvݗ o6(uKM>(Zl}Ʃc|LGaۧXk;wޙ@n)#U/e%g#P\[Ȝ  Gnx+;]-CTb78m:c$ ?5ȱ}V\+PBN{Vc j\*¢bxjj@T{PSq\ؑWy1#֩V݄Yu5 陶kvIɸzvD T"slJ##!)7=YpǞ8b{W U C7Ko..?- vι4tz\ϸZ2q*1Zvw{ɯ&c::RyvRuSU'D촼٥VQ$2c)"XM=+^R1+wܧ=0lk: DIgG ˡXQlMl;XBa鉻+_th0}?֊\݌ bԽe\28[T?nUlu*yf#n8P "G Yn :ǧڱWsrMϘ_ٽVap~fm<_.mh`1}"JXGNh?uk5-1_CRټτƭDD}i@SIUV>;Y\rCe3X^JUJF67lu]x| Q%Ѻky]|;yy$gZ,.ێ;bkpѡ9ʟRN o&_h'XZx.q062M&.FxCճ mzk?y,4x&z4gQqKv <̢14&KمLۻ8aUTDHjawBv.-B0Hj_)&@s`qu/~M5dҵ}[T^U70bhl-1m͊`1?mþ A7R+00siPƖŪͧ4E.Y 7mV9&EH"(7USOFYUvx.Yj%v3aɺ-Ap:H~]"V[E{ ek/|K@JŸ;i"O_KvDTJZ|%V֩.0G)v<~$r i*H>1",gȸZT_Vo}j®ޚvzC3})bsap=…\O878ԩr1DHmY}q܇z UR|C`sP_fs`K&ëDC=r -tj?rm2ξ*r EMig6C2ɮIn q[ dP {cKx6UY1}ҎMj5Rja7h"]'0v%5ŀah=+ ԳśrN-TQ A5&-ݕ2 C97 lMBEʉ*/I PvgX"A8 }6.@WGa]mkr+`|#֟~,3՛sI\TZ4IR1@Oψ?7,lzWeHjh݈&q5@{=L--s[B+,F&ulfahx{)74ץ΋hƵ.5Q':z7Nbfyj, IR3hڶNx|dš_85/z6I_N&b0ߔ[hk$zܶ$slSG%y׉avV{]I`CcɯuQ]C:9I yZ(LVP;r%z6Wlʝ^-`j@',ס# ÙAe2DeH/(hAx#/iJ#lDb )no v& vvI`ɃxWQ!"*)mYhޟ;L-0ĘKwf۝*l-[ rr8\1V;1l-Ll6r-Fc m&6'ch0f\L5CVܾsnzRڗ m `H{{ WYh:= elA&i~8e։]낑Ihö~9pOsEnOS3UtĄwX ~>g@%V>n;,-Xvi~PCz=^aP009$=hⰙBMF5bO;{2dN׏]Ң̗%<ުiN Cgq 2G) d ڪZ4{i'ⒽRfo#ri% o;ÔثuuY;hbШX҇a%D;l#2̃P"Ez\gvC}C> &a` C ?b|%Zk%"JnDʴʈyLʄDD'ͩneAVVbv=d}]9MK9yr|\R,gyV|6AWy/D]e8/TVK6v< [  ݷϨ˳NZsi:OծNe RvN$X}'h@Y>!kToK3͘W-Q]r1i1ct\ 9hcVRګD ځ5qHҀtzfءMaQK\B-"g7*8x [W hǽɋaªI 'Ik0j  ش-!RcܘSȂ%OG``L /]x?6lV)~]Z[|K9Zc\bX%#<ͪvt8 G4W5Oe7!F7 tX51cu&SM,+#¯#kS߇s!i?p³Nͣn3J2t6,|Fc#]Zdx^4Df}mJ\n.nSOXmڣ jJBR›K)Oͳ5'c wRr<_vqcd2 r+S XtG(5Br}{*C:Ӛ)e lNJ+]Y?\rzhғjaMV_B1X;-K٬ܗx$L.¾e +ڔr0"cT!>0hRfig׮?EO="]eσ^-8)YΩ NPP "KS5+~kw O!NfcƸ])<# fɉ۟(>~ vEBҶR _{b8Aي SH10?#;9R,q'Qq C,\5zd.B~9=M:3|QK\Wtx7exךymtߑHY%\~ qBWһrL߱½VhwXκ+s Ѣ cMˎ})Y+>*mSou9dRp`Ff~` -hU0>(iDU-Z $MC سYC:LQIAp;IRٰNWT8W1Հ1aZm"dq'm.tԉ00YbՕ4Qv>3J>c ę࣑5WNf/+:ٱ fATcmEHmMФQ!%zhݻI`IX9t2sMH|GPs@l8BL^q Qusw!HV&؃\; 3!Qt4hSxnԭϤq(;!Y,!U,z#B7sB|f'37U];$/,Qz^yc,_d6$ `9#N\l_ mQ_IF'Su7T (oJ0}kDh?cݩF`"Xb¤Z7j # y1y7w Iׇ5:Yiqx\ rH.Ǣ{Q?fY/{B"Xz@:N5Գo/?AmJJ8HR1ST }Ur:bƾEknwa_AdMBG"hV=?oÄ-EE[\c}쌚E)绷c&^DOx$/e@n>*M hdFj`؇QmMVr7_c/.S*HjC@vjAŞN.T:T1Ɗ 1esB=W<<_n/m=ll /oU(a UL[7#9ÖL).7B|33 f8^~"16etM"<ڙՊ֔[uֳp[צh_^z i|'ʒG9$lfkl#؀VCϼСsNAlp'$˞jG2MCH6BAZ|wkAUT 1vFA 6=|%35GA2,Pc|󻻈̳k9^HYK_ uB|,^AWα:pK_(R0yPs8o6k[l{EY_>jܽxA7ߴ|Y@c?甅GԢ3qP3߆Ŭ=Yq[40Al $n'44o霶5*0) =q%n`)vC5L|Ep@F-MU2Z,QuV9R/eysU?TтBYN/FCySב,k !{If/ݡ׏::S{xbGa|N!_Be?-Oxd.- $r{Z6q܄8}!qߛ`8q+uPfb<k\[X<'b?5hJ[cc*_ %\n? A!vpLo D<¤$$J?<݂!ggp%"E>4w@./`Sv©Z2n}.i<<8C/zun^^=6\yUJM9>>f-WlXN۳c0Te9 dϖ~rwhlpoclA{{myޗz=@5\8jO @5ӧeRS "]{)B(U3oA܆={89+b{黐p;! |z#?2q A.>jM4 y( |㻨mepoWǍ،N>HYqKnρUĉbs x9t}מqih5M2/5⬺\qD&fOF_o^ǙӨzʆկ| ױ_0E{ı1hn'pw ;5-Vo uݿZk&V[qltngpy>{a js*EIWnQ%~a'pwn+gb X2s:dS4E*ҠivHKV}ʝ:]jAZdJS-$[7L<}Q >dHDLQ*,}.η."#]C KӼ1{VIsoGr`Hs\#ocv.A5N!^xE.C<6B5_*K7_'h' V2Meux,J(cGuM<כMG=v Vtp0hx&el dTEfu:l%JRy_XGR ݽ:g`4T}sZ)^%I::љFg[zqT?(_tE IuqzT_*%)Ej {=/O$S"Fh0+pgpl){+#0V 4K)?jTznUvcA`Kםdb^؀L4Tk؋!}j=`wxPn/fX9&=ICq~Chb7t+nhhr-ʰ<ٴ:pjp<aZ{Ҝ=/-!WJs>}I]E,!fMmjP&w@+@SnH)w6Qxbubt0}leMNc8M֢e4- GW]@{--Qoxq)F(&pY7CO O){1N0ʃXl15ћKnNlH^[Ք62 ͱ*Dw|5zo.J>ct_*}_Un@1r*ʂ1.^0?I+ivucSKR ŪcJ @9fl,C"K']ah*@)}#q&\'yYR"<$xÍ٘1\Ts)#Rv[" ]f`ÄW^ -&UL}Rȗ& ZKko0"x  9P_a{IȨ"ϟ@.AIEܫ"lO߱Xwm4_A&˂AV) Bqbysd UANb^P p*=낮srޱuQNAM{be쯢ݯo m_vϜ ZDg cVK"*Y ]._LFX7zEMLSl.zIU㣉+!PD6'|@@=DE?P"Xn?c̅*4"p9^#'~suEX2p# x:DV@٤Ty;K#^/2#(њ+V`LU٢ɮPw"' ^ٔHK r Ujs7E!M6Wӧ ]8/EbĦHjѶ^ύr=I|NrC+I㏏Ų{mpha2&loE1М| nGz.lAA7c(=oM8-0)mII!PpQ|^8YrT R{ 'F\U. 7CF݊ Ο,鏟)?UI~ a1 FA a-?V!G5PP(nY˧Ez`oҤɶ[-jMuGfը %,#j#-?~C5+:|!},!PkhhFۢ=i.aK)ܘL:9&` f/`2'aǃty(M+}.m8'ٱ6Ӻ9t7y~\!IYw)5]Juˡ V (aE\!'j6*ֺX_MIDq (WhbA.E1SU{w꺺I&b&[n銀LuTZoQd~vK;ocsaY՗!.E7{ ~!A}!s: »=΃`$FS%3=:'d,m4XLP US9O[W~z=v#r¹Tj)D0ix0yp,=PJ`Eb( 3M& V*oVF{eK \<~v.&]6w'*ޅ^6DQM]יIT:,J_X<?#FM`oP؞ $kT!vGTi#W[ W m_WP"eڂtz[|@>@e* j35S#/+!`֛ .G$&Bv7qQ?(8amؿRAp@UJ3#WELm9kH7JZ/y%c8G_)Twyrp68/U q^硔&@goz2\b[uʿo-tk1Q6x1W)`;S1)k0Pfbܿ6Fp.MH9֥1 !%L*7psn: ]SCbE_p~ 6ϑm{bڢd{f1] )4\|CZaSDq( &W;whT6B[QB3=v& zfQԉ:YA;ҤZc\f=SsV"= b^0BJE_|%I0;d~G k5APsD?k8FeƱ0%-̈́%3gX ЫnB"~I` 9.~zxНa~KK e4gOHVWP'1Jb۾C7k7gY3$nam>~+NTuT5th6GNG'sB @ c0]u"#8z c {.d('irBYB ؙ\zN}xi]b ^n2j}³C^BX)cU>Hg֏IrQ~|jª:L>SS]a$ aQenVQW̅nv~V 4:8x~82G-Z5mV{015*^{5pJe^S``_.&?bpCjKhen_j0ۧJYnbb|4=7En"~si`TPb7%e1ԯ+}~ۆط_A ؀MH`FZMW(J1Trt,i%S7 ڰ%딆 Zg loS±">;ӴIӭa/}@fc-%]QFʠ ߊ@b,vSI >0TiSpaf(c饾3 )ny$ #pu 05>!快b|4mr7Fu1%}Uz_6#6K\F,ul=xYE5XdLg#+|0ցW&&ԺhDR0нDX@!ܬz}. 7(‡JIeI^直C)zxB~|cv mU&TEygo۸zN {9u4Z?` 39RGfşemQA*7Tz%qƹdd8Quxp[MriSO$}U.bJKW/}AlgWzARΚRes`(O&f[^q]3{ rIzPʑ\8UmPW8PkXWynaS\xKtDO"+?:F@ц:+J s,k$OV 0&Hgt;ֱ,+:Jhr%̭T U@XPPPJfo۵@{dˇv%" Y  > 4{Hq4oQJ叛ڄ]7}_>Rb^xpLAct[`BׯLBo`IX2?{=p3g{ޠ- 6{u`Tt9QJ뽎E0_ 5y*}_d@]5 bVJ(lbSxLrd@6wOi| ;آh K к6{fIUfjYFducsk.P웰W"{~=4dXĦN`< *g  C!vꨊ&rPtkpk]賗J."d*ilJOٜ/+sӶ4m7C/'5!Y^ 0qO27nU:J;?,(,Nr-Ab–~-aAO ohUw[ebjF4ډ#TA:Z+A=m1$ar0-ΞA ӑWՋGCi~Uຄ& [9|8ބR4_+vaZ;S?tk$])/_ N_%-z{i9-VT9SW]ЉbYD@łj@hrr;DvH/<<4fɘ=CXⴕGLgVǘrㄢ[7>9C2NLZ+9Occm2%o(dhnD7s-|}rj]|v/$sjڟضNzL6r_%!|djk,K=2 lQ>JT!:L Gn& 6[R6z ;mrW qݩȺ-^. VxB `BmMGka[ r^(һ:3 'AKթ5w7qkuP߉[d!rF)cqkG'LoTn )gԌ V۝ 8^6T.ghDy5Dzy/ˆަ{OgR[P1Ei[\cFFl}fn PAPR Ulg& dNJ0E`YaIP_V ej? 5p qtm QkYBZ-F;d| qVNAgXVWz+:!h's Q4 58S W`f'WF1 P#&:SWCsi 74=K/v3B^7ګ=`^GMШAdLJtya٩ݳF$͍ƻ6lxÆ}0<_P=Kmxޘu&j{< 7:u]uvwWq^pC{PAu4W\oZ.cU{_͛@]쥄'kwn"oYwwQd&>6^1[ej4$]OWfZߍ᫻4 Y)YIFyhV$a FϙWIݍh4:'D)OY`yX)}04ig<y#"}OKMaAl0PEQh'u"k!%% m:gs zlHRT""IrXEHAjfT!SʸxAQ?0\vzI*-%$YN}cY~;0]ozUM ǫO_:ϗRI0: `eIdJ[ RL8İ@qas݀噖S?AW1ݮN;v-Rē`3f:YZ$WiWRY{{iQ~.c4CiϠoڐI{IdJV `,h$ǻ ,gnOJ2юy4_P ck|6I*J;`\^3X4;I%=o  lq2 # ōGmn\E% 7烎]-8[:e- w]F]s ;'jXD&hKs}Z0 ?!1;q? V9A^ti1wDPًЋED3x` Y5\3?}#L7HɟV5yVNv:RǗĢp&k*$r:7 |Lu*צ`wfH$n˓ԒMZK>F@Q#|f2Ip^q/ֈ>gM nsi!&O[@HPN|I3n0sRӵ9l'B(a*y/|j;J8ȓE: YW^֫Lh"yסú/+'ќɽGo&[|.=@A2¸ `LT_fB PϿb 3lyj\ObD 3 i*E /mIH,Քru" ZoXDi4Oj# +p) x˄sl;D|PRZ6`\8ߝk>4"~8 rX?i+EP 8 1woH9Ӕm[!M߰kT j(s!&m :%"s%LMv^-2E FY'pr=戵Dc !3U/ ЋcLgn Ѫ6A}* G̅I&2AQ2A|k60{sTaV8m豵~x!c S 95*;MAsaK'N &qQPn-C]KajjΚuل0h)UTriz!^fg}58$/5dCUMC9;ĬUD?1~0e[=c@q[I`J-. ,*u֓9MG>1k|'D'Cs'Z@5=s7Ac,joN_jm-nL*Se[/{> v\(w/2xE NR]Z;lTv9DZk0 աqM~4p%b 8* eVH[~&̸ kڸ3} 8bL^1'O]M_z9>BV,yY[R,}0Bb6Z% ps@@e%o^6lrɗ͗:# w[)b% (8j%jE~%R<ӭ}\8-2VNZ0A&|2TG:cRVlCqCas!fa= Vi>8>Ini!3vWv\HDv/5yg!xソO@wY쏸UGh¼'{~adϮiZ`pn0ywKF#[Oщs6&_dPEe'Y g!xFʅ ƊW)G-;N 3D|5WZ{7RK \ eW". (C䴆/*|(; ؿxm®xt˴4 M޹M΃FLGC/Z`I*|Ŕ4igH.`+Cf9*g@LEm KV+nn,6Z[ {DwHT`Ը{nn҄ ::[=lIK %FM-2 ҹ|hMHܖhm4Cs֊TQtx`p =ƒZSoB[{io5ZAWڱgX ت,+o/xp_Zᔹ |˩I2)`_S<+VW}#JvE+򔶯}V7%v[gnbZ Б ϻN<`: 'P-t&8HFٚ 1: hP-֧YͳU'cKJ}vBJ_` >sԗF6r'8zXR`KĚ9Ǎ^B)n]*|x¶ H o6<}}>=#h2.`4u)%&굋;Йqa=*;UIޝFVh2TqR4 Uy҈}$<=Jh.WlU۬j,5itJ?*KwMyDf%殣LaXST<`Ǐ]L5\e:A<%l<<_iyMYSOr9V/93l¿4bƀAsJ̫>VDc L^a`3 [s;PuTodiG7ryq"@In@f.s!+%HH^[ LgCu"{}2NHc[ݯ#ڰ|%4n 3*b2 Sha#cqV/4.)1c[&)oϏΖTE0-3)MU} _zfj/ `K>/l bh0͛ 8%M; eweY[xL5e#;{h@{+Q~UFDxXWl@푈ZJ_ lpi}Xk*]Q>)4'M~ e/9':~])#%WcCBaY,f"goXl^ĸ1 *;oyTsJqX[(c۷?3O50'C]Pmgwǚ"VlB;$\ 2Id*92&xoahXpKp%6ɠS׬\抶d;n0==4ܒ<_^(:gzRpa$ӿ(%NH7dSڴY+95L1fT`G5s>Wv%ܖP1 n %77񸭮']D]6  @.w\VctSY;WLaNQg \a6s/FUxzyjr ixKa>; aWke"@^|`-DԄOrӎ.kO(f ?ip;4QtNj&M/mS]Ed6>>$Mª U4Ku̔`8*]hyv/T %F:PN 8~9犝 "xKĔ> 6Jح/8?%A3N52>.ph8A[ |&r o{pFh\Sdg JٜN%e`B#Pu#JÊCd8;rW(Й+in`n8p8<56"i㡼 2~9/J 9 >Dy9fL/Et}O3Ƨ8l pO$A5b[|h炣w gIB_nF /% 8$ ]@#gx*F`B 35KJ<\]5ri@ip ᴸ؞v<6K.I;Hj Zhul{(Ra.bšx*P{I*,$ bGN((8<`WF x90( Z1)Z*TSwɕ,JS1MGӖ lDmh bY8;UL4ynb!1Q7D.txz4]ǘdpū=,ZUڻwZXG9Qs4|{3X)W(ÂT`Q/vuW=`w6=F5Gs|c(wЀK=II4DuhuW$j4:`O=BrT,LiߗLSq̧pzrf[cY>n.x]di@խ˓= v% cOONM1Hd%6]Q\\jOX$\v4ѻ <v+/u*s%,2DB,`=NLwcU?1rjK09Xvmr1_w;bspQ< !aGeB{qf#:dg/ZNû}lvA.n}+껫ߑZsMTT|.ۂQ|(?8l7)pȃ~>|MI0lf0T 2D&`{ൎbVxWqTlEa5,:K~S$8K$j!d1EiO޸=bIKa geIEr#zR]ܾskŒ&:0 -Ba>sSZ0޳!F>\Z=JEѹ8 J_pMaVcѵKO5A&uOwhM[R:OtlY? 4Nnׇk%\rVl0pVӒ {TDK$6d'&:zv lPb{*Ys* QЪ,DI?߇A AGCo-1*" *egDム74݁ .v$=$ 7qf^Aj զL~ 4(H~kC:2׍Wc0yWj<ӹЙ%x'wQI Նt5 3y [`);&r$umRZyca"ɶ n7SFlz,953] r? *Y EE;4XC0G]ao̘νۯl_~pcS/ wZlc R?+ ,ndeҨobso~\SaMwU]~3-׮;e|;>/uYUў7n?U>ʼn1Cs ۮC7$):@̽h;oъ&, [ûEDEؙ&|Ed2k[)u棐kmDD;k[qީk{%鐲0VZ Y -z귨67C9)Qg~jzi#o3"@2#uVf_EA"7*e/d×_(;+ T/f)m2!R*Yzi͜"D8A4n޳lt3c*.@2*D[ cXDۗpN`8S:BIv8shI!8dYָ?aJQ?ǟ(@o@k =|*SiF x~(.*$.Q5  !D Wh"S1^G?"mLxO &{7Ҫ' Ix߷۔T;>v7|sMOSgvXV J5hlTG+}$\M9F̚L9Bx(ͮ%d&O7(  &# _^韺N̩J@ |7uMӎ:N8PĽdo [KgЂćcWx90hBVDTۼY Z(bU\FzJ@Nff" 5k|*'ղJ&W ADsӴݤH \Ӱ<ʛL]i×{D ̕!4͢&E~]> I\q$Êc*Wy\o-Ciы;D~P^tjkſ4y%`aϣ۲="09ʮeV?“E Sz`cD Uة.J3Ǐ< 8Ɵ$b;W/UN0#?tIK=?ێƚmS*_EB~%@B_)P2f{^#N%tߣy2LG2XĿ0?G2iڧtms P[.28e~-3'[î@WklgbLH٣A5YV4=grII @d!?ĺ$V^[^=& 6.JIouB?0W$'ٳ8JPTm1 )օRgEZoRH’/<8i J0[K,?\/\COh-ٌ|\؛n] -.nVUj/q-r^7urn\eQf?g68'8MDSeK:4la|kqG}+iXSBby9ᕘD[Jڶ4GEX%Y{&X]a IUC/XPk8eT>f6, wq%Yli <^kY=ʷ^Prw-f-,O ^hװKsDH(9_ly kKu$qR\ȴR8-0{X+JbB(.>2 M7!aAc-Tl@itЦGG;Id3R 8%+*!DڧR2Ѷ1SnzV,H)Z\pEHn$RqPF;TmsS^<+2O S-3g. ,9X1 WzRGdᓔrGkyvIN*1ԁًe7I^kmakCpusk%QDVz~N&7Π8慱 ^^H4s/.-JH:  _9~ 'b8hSO>h|BSWVܡ\:|j@1K]|Ĺ.%(a ^`짿PʠM@qQuQUl $A Oh?(9OTPͦ}?uc>C6/ҹ9R엊LK65!7l!b&؜.)q:v+גجM Qz0@?wR/"*#觐kNv(/YVh2rR=QXú}P`v+uqLI1j"_W}KB*1Pm m={Љpz ss+p`qi9gpA9/;= ܇gXp u1Oz{賗~Y">8rpN@8Oס!{$}CJt|Z3TZ|g9X8dl=;pSwq3EW[ Weƚ*_LԷLxf"&T#Sӊ-g}o$!CsV ulvKE]xO%(Z="2U1_RģH߼)tѰVG0ٖƉ^n{ >xFS?[ LWԥR\| [["i1:_,1jp%KxG>,6HK2c:׍ *Qoj91nܔ'be|ނ^>DfdBkr GM{5+zzO#%Yyb@|EC\ڄ ZQw'Ex0 >}T,P Ʊ B+5d܍z:w%۬aT=扭ICMHͧ҇gRpF@ghgam %ŝJr=T8 ^/"C@E2tS|[KrF(ђLI3EҞՙ"jy$#m  /8IYUQN5_>R$`QШf-i1cU-޿7}/ZO&r5 G@@5{ck^bv p-C&iMLR+v0d6w3nKuiEuѿV9N'i"Ÿ}o|v6ASǡ졃ۙd f +©5˗i[>)o(C k+3 0s$YEg},v:G_ً*wGvyx Efa$24^c#,9zkd+Z\"ir}h0w~Q>:MD;prLZzD!ww!I2E D /cq8&uF&& KrσBhH=XL! nW$p \AJ}i?r۾׍+ i|z8Q:tϾaY4k}<}\TF82- y\FbvIEV IV?>'hȪ{fO!+|n'n$M?6 X6w]@i\ c<oKKD;O*,f4Y7sҿ5S}jU& )c XzEh )tNJPaxj= $|y&q۔vS^SXS)HW"kk"l{A  ;ZB)0ii$xqy. eK^T2p1i3(  _ZrHVUFGC&F)E3G[;݇jAk}=^̛x_zύnYL-`A($&2#G_bR (XĆ6GPJ#N K/O?a|yr=:&폹&Xm- yza|04 ;Ą+] tBǕBd2/Ry ~{HaN9 9MIXt[z m)Z.m}Лv\ Kg Rk!_fP̘(4E97[}Q秖.zCIQZA~&Q+";Hvr*UZ|rlBwd`F`d wfZɬʢ9jas2hxhf^(F-E`j,TuPoVݪE .= 9njIme8Ƃ:N[b;3 uBN&dӲ-0_;6~u[/:1l낋"T?S+G熹A YxZL:j`*ld&v&,Obʋ-:Ԩ:ӀL/wC`"9GYL$sSւ@( .+baMIü`n' °Z5`آsA5.RýaI#E'MțA:MbuwP.ރMΩ`.D~IbC;/osbjo ](P#j+Moktqh$mnq.-ˈR˵em O3)0=>ge5ț# paȑKm1ޑ<d56SZfun.PZ~ùE\x5ܽ>?r„^%Yޣ-d=ʋ\8,ƜMX^̈́s$`h gl{ogը#|+yrRHõ4POd(_,.xS|x:1^*ƨj``'U7-%{vUTTq^8wz>+7N[GM`խ̪pv}i]f}V'etЫy#{ E] 8 eLx y1y]&71v& WY)Z)*9-Ҷc7]\Vig8p"^dOD5qL-78Opv۴}* W_+Iו"藙lYf~",MxX?DIemz ꫏!oBl6)-3n~ǐ^Ϲ4gbJED k#k5ؕ0+$wT%9jG"K)Đ`sI'v?E$7wJPUyA ag%zGVQj12hX< -7ɄCM =-/9M;oYvF[ )朧q8:p6(w{}mDT"ⳖS+YޘԕTg|ܢ3-LM&'85`;.;ɹoC K&[eHWI0¨sK` uQY3ް4<4`7[6r?"/5or@xQ1}0Ac wj[}I e8uQ!~$OɍԚ_lcqqKt\1vubWuHvs1El%E Ay0moB⌴ Xxۇ2gE9z`|ll26Ep~-%97]M.Hvy䖿O*o5}Z %*Y1QO$Dɾ|Edc/z/5|)(sPFAFs`X4-\0exN_<7^iN 4T| /ErsO vcƂȐv_jcSB'}M%ZͲ-Dn7֍$̝> ^`VrEЪ6Zuh\Sl:Qv y݊ b#zn' 0iGe...0- 5XH6AϞWsօа|F&rJ&U{l.\;]~{Ot`݋i+Ki#H?jIR{0ud$A"cVOZz=E4Ь|"O<Wg8 IonSeml&Ic qÓFxQVmH"]~EC"CG1:QT<ꠝi4Qŀ>4<%.GmX{d*Q Oa Cq+o\EFbYlaN}z| 5|ZA f{GA:=d}-G5N!*)bB߻+"#b$ 4"EU[wJ/Pi{k<x V@݊mPP.M`Nkw`_s[rI p& .왽Q\82y!ǶQڳ'O.ROmde Mj Rϰ:taXޕī=L KN؃p8{= c٭W!;vΣ[з?xʖ%t7~ݜ;9_ ?ԛs(Sh p&8s͂HD/bRK햜tŤ '}n4&x%ؐ80ҫkYb2Qd6.sn tǥZk~Js( MLz(~:c vab#ܦ Ti!zHɊ:LyyЩWr") cfť@;#K:NJ{;O EڸpYj|*)e t^خ]:H W7@wP)8~ Ao9&}Vn^#_J>ǯƇQ,vVN'g t:h`jG1jxЪo4$2-r2ţ=DYڎ{a`%VED}lP0 ;ӈ39% > CW j ܥ/0 E~.dsn#Z aqWQOŠ^2bHuͰyAeavH>u/ߢ?L[П2 {P]TLa+P?ud8LJnroOyƳuex5-4hOln|*CJ&p)&Tjoa땂p'b *u1@6zzrgY3UGqqJa B7p|YڨIX fVyVmA#Kb=#ֵe%yni:wZƳ|Xy9:$˔6_0Ґ|;;Ǎ>J~5uvt}%ix6|dS.Q!#nyM7s(H|c5980A⏳,JEDM(MF>f7$hV4uW=@ pݔ97B-;bQuyIpAPKӪD5&@qLnnld#$3թX|F@rO(h*Bl^ ]c :EkeVM̯[~&#{ r61C9X}h4F|a!mU>҆8Jc6b%}WU,!LRC%ł찏 4Y9$(d|\lxHZӨr|}).6_wOLGibH5m{((aVgdb&jGiԃݺ |FٵFh@bW њAOUZχmgǓ'E&TZla;%SbK]1Ur'Es>PG`sic8سU]XM-φ((ZiGKUngTYY78XG+J=|oEpW4)LYtlO:T)YCOϡ[!t^79jޓ_Tc=Ng?W e*.($}&!1}*GV)q$ Yi5sa|Q+dr`D2x+l%QxgQ$;1"1R)%&ёhN f KǟTԠkGQvUb,z͊[zh4ՙj $`ըF}̦pM:7rh7;֦Ë(M8WSPY\Ž~H~=2 ב{^>!#e& XY@z*1wp\o2&u xT̗m9`[LokWcr%Jbq|{4~Y眇 +' 6޶v˸Y-@6=+k Z)2cժ66}PIG)J*U'A#*#3wT4J"aSQ*PU/I|U[Wp4]$c-Lb`t-&T_N#2TV${]h mp=Fb&8;Ӷ/sCMl-mT훁}0xCȚNY\LZ\fЂ;FxkH. dV{X>8&ԛ p8Ӗ#Kw'3JY࢛"m1_隅~A=9/*QT2КSp#i* r~g(it3)aS<}'F"a1ZHDA3M3³5V-9*]S?҃t(> 0wBxqF_HXPA}SӥU |{Uow}/߁?! 5 J?<`wj$L!F9w:5\{5vJtŷ+!1 ( !@?@~YζyKGSkqd4NMȣԴHYUxp4f,H.ղ|}YDZq^BY)"qE 7ZI-޷ S%j$.|[qG'+=wJ\пvN;K'PLF%^Wކ^) ]kv$1dSg[ޒʦZf&+ f;TކUf`!=",`aBДwn*y߾2UT]Ԟ=х"8SZY7h]G /mƥx$i Go!.7 GLUC6EeAd*uf5WBz#)co6͘FmQOx86W ܀{WPR,2[!^ő/Ǭ1adU:)^`IδVH@8;$![ulf{QZQ)%y#ERy*}u֔X[_-cXBpE;^toTnOԬ36*K="hƙ~r{n* ϣ( ikO;@Aɵ~ (RpWBZw  +Ys!@/ [B po>e."1TdP d RE,bvd{g6ՏPsG,,5$&iL9Զ`N"/n&@ ͼj8JlT_\]>$dy5xtpLs>o&B9o&T9g!{=3N15QlBFz %= WE SKYB~=#2!x 冧>0 ܨ|2K:sqCuHr6o,]9> dǻ9lRr C lG~Fɂh ,^ -tT2ken? ONwУ1q q'aV `{j!asQo8񭋳Up*9.'TPTf3\odMr{@QZY|O ҿnq/ 80+#YSڠg,Ǒ LAyꏀ'? m'sGd^E|QGyp+)UfWr}s']Ui%c~p31$.ibۥ_zE^?fA "{l0bAB0|/<T&jbq oʋb3J%e1 5Y ߔkȻ2`A`ʦ!vU8c%P+W|vamBw )&0E `+Y T|4Rd\F[4Gw\ KWyz`p]x}BV︝,oMѓpB낗j q>{^Ʃ "S_NĢ' P*s$lW3LfTKIՉ>*kAj4ou{ȞGKEB wG4uȉ@C#[JJB. H>.poABGP.U*F`7Węig*-+c*!2prz~ms^] (is4ėz*br3D*s~g1/m {X:)pUS`Dteb#WNzq Ge3 6{*W52"|z9чH-.NtqrT*:a^ࠔv.ә 5J_a$]@nAt j?Ad٘RDL J'o<-Z$L-U^*Y:3Prԑ>b5/{>[sl *tzQsǪ $- RJet͈n>7-~1: ,%~_"牺E9,9 3ZX5HsPb)¬B1O{0g_`Bž˙;;K8I# LݝRt$-{Q,ނh%Ϸ ([`Z;1[cKͯAExN<Wù>Sqq.n%Bu{O+)/ŝapy0@SU1raMsrrQW-n<@| a$W8qʶG@v)Et8{&dggkgSF J>zI[ 甭 2ߏ:sk"t!A갠&4f8xc<+Rf.){a s{Mzc8bDAO+J8,MyIׇRX ǡX2a s]&}^2(`+$*Ώ0J5/QŊ.2zDSBhѾ9;8y?~yTyI,;1C&~9,.0 QY}0݃m/($V)ZrwGӋJBMSY㾤o=`2#%~ۓ쇸wi,Iҍı}3O/,Q#?VH,XEk gX'iˋ'GKT 3Da ǹDXZ~;SW9)K&Ufn4I[ ҋlU;ʱW8sZhPmac8HIu?nw~UwW0q~de; I]rQ"|ljӕʉZUf2Kp'?$mM4ɟ r>~P釚Jdct?;|,ህO|\lҜ4)V<`A$\QVҢڰ9FO[cKA*.$1Eh+6hz$HӠݨ9 Yvηe"A@ zϼ9Upkv0]e R?hܨߪ:e34yeU,#D.4$0(,|i}lqGg;#O\[poڅ]d#2AvŭK X?P)'D uJ*Rn*~ ִ;J*f!!UWd%Gz6YRPz.??˱G, qyRzǦ9͵v|s<]H/QO,ȕɕ{F 4ڽI H<$'t&Ў,[dtɫOU _oCLY^L|S4DoWFY#L͸ =r0יlJ#S'B*#LK4x,]#th˦ a(5`n`S [R+dQNz> .X8sDd]j٪;)=̣jCh -rh [ s+ћX14?Ds%[E-zv_u9ahY6a̟ u%͋{ VRz\);W oCmzɶ\ k#]QA4O{Ƌl3ELEp 8V,̸mFp^&˿Fo&2`d^D dx \l5kxB(cy];y`ybRD<-P&R+;x<(JL_TSASQ06~>mU#f[aswB)]ƭmT1;!q{L9;v\ GΎ *`-癑 ,)$ `qnʐ߆{'BT!jB<g%3 m|9bEM*NMͿA;$OdÄvFk\`¦d.x=WǙ*˙; aT S4yZQ-;j5%S*L'-stpeD{1j{SajЗ'_wFs|p[sCα4Q0 d78gIEJQD>(U쩚yxuoȷ&ڷZ~.|u`?0o8@m$dm>I^zYeQ#VC$V.rtܻv @{BI& ]憄 4|M#+MW a1 g`hŔ}/a[U~˚(M`xgD1kj͌՚^hڣɧVeuUfuk\8b`)܊hsLǩ wejlGa%ǐzgDRPMjp%!'TAͤNI&UoU`MXm{0>`XCi|_Q>x;TziӤ[szAj D=\G b:r!2zL>]|_ |H*CWbf:@5,JGۣ+@ׯd4h4y^GMu8EZM >4Fx&;>tGackd8uR^=jRu>KA0m2e`*gVX&ৌZ/|@"vg/SB"^꩷iۻ+N&޾\w y5VoY\bKszw"lP>?EzɍoJNX܌(" KP2M񖟻DSmva?;N;.+D%Y?$i_΋F~3iQy>W\ZiW^N ٧Z[Y;ZVUυGJg[ +3fJ=P);W 8 ܅˜'g G&T26^P jFmB)L{[YGLq1[ʁЮ7+9DF5sѰ}9YJDl2%ܒgxc\I?De|fJi%ǣ:XqM*⁅`.pρ粳oy Jʴ-; *٣f2Z+pU.V$_ *ZB; FA<7N05a/z`\`cXd&@ ) ƌ:t>Z* Ud>0aC}K Ӽ55ٝ鏉eq@w%)o%84*5A?sv q,Ǹ8mы-k,|˿IفW6Ve9X Eh5|IrI.@_#CP 觡4C1Q-Z B޲Z!Uׯ%zBSpٴg.9̶"VD\%/l!÷`Sɺ'δgAfe&DZ&V@,sJa $=!aoj  Hs'APVz?0\)Ѵn#?=Nn:bldQogQ.pD8/Җ[MBG‘XnL %h2[دn+[͇^յB%i_xkg9l<hkuyk#/|X\ey''E220Xo߀O&$#|')u͵5,cbF$ YTo篟#߁LBǗnF4sPG]QbwYǀyR4!kcDkZ߮f2>GS3ue?*\Yd\IHḻlRN!?PڈWO?6e&/#_w P&RT'lWoX_ң.G:0F>~R$-/xoC<(|Ka;mHo{C!kp)ù}&?XZUdzoU̴]fsj "9#G$1f*gy$1S]db1nw6hBux_"vN͛ W ?&O}#+ZQϭ?"[@=&7D UUëBK9i1:Z=YSD?1Y2r2d)s٘m55q^2Kr%K2rE3ޭx(ie}=u%p!zɹ 0 QYNgaڑ.Ⱥ~C* `'l*&$M+Ywc7]Wʌ):;=.nt(\wٜe9e²~ x_9'Ǖ˱y6GxV|G)/HS!zgWʽ PJԻ72R:xԚ %R^{1@mؿEi :b \g.435H 5A? j8msdvY%1 :ӗ`< Z AVFV$⽏kr{*VpÉci+˵̂ĒY˪nqsC]gھY2x~,Vr)( >OH>–CFъpx:MS36#RZ6b`0[PƳ:7LB /Y &(Qܙ¥~9D+Rhϡ`aH5\:h$FWٮA'J o`hXg0]M%Eī} &Bѫ hJ AATc%rN?9\5 JG(&ՙve;~]GuxO'm&1 霔׽ g_ cO1 f>!`+|Qa;c[~):,{EX!"sf_l(LJ>Q{nv'7, *Z8II{Yccr^ 1zaFXs,[H8T{j~hyjMFEsfuuZ> r2^1PT?tqY! 1aBj d+9흃H3%NDoXDDSQI-m2*x*Ԍl>?|tzwlSRqkk nG4sWyIB W"@g FlX!WoIVr7zbc Oa>9QQ. V٠ *vh"!5C :+ J`qUF*(O͠*&(#=|MfAK*FK $Abj7F) ]K" 3K(xйT"Ƽ2%^?39$W}umq>rCǟƎb~cM-^3׋tmnCxf`qRP3 9=ZOrc? ٣˿h5oWtZ=O^7eRlLsCVuoTH>ҷtxH98=gwӌ0QL}h7E9K;pUL ͧy,32dk2ੌnC2t;tU+`'tsbQ~6oސ ?_=s_ 1̿iǮ RvS?טY6clI-LG*%vY6x R1Z?o-ҨQV e@}1=j~ E+F C99rsI76su%&Sޖ6#r\o#=n5\b"' c 0=)%/cI&)Dg $]}<&>ա5&qi*c! 2> 1 ZC7n 3[+ܩS<߾)}ݜ﹟l_HzBd k%!k,g/UwWsX  ѿ\2L9`;mhOt6 ;19-f퇅JBf; Z`Noϻ"E{t]6ή*!&$iqlQ+%?N$rlk/HdPQg-&kҤ:.iW^L%^boȄum^dڪK 6xoêmLWp؅Sdclp-nOx-шv,Y|02&M;jL~;q b@[Fxd]\FLdHl+er~mU˔ȼ~?T13k~_IB_&DBTn?pWrh(#l^ᶵ`ЀWMM!`}#|rz }`T5A1U;TIs#M'(f#mbA> ϫ$/B9iSH[Js#-c+f堕"U3gD~:*0 LKg&+=` {H]+W6?$?#;e-{sYjΫᴍG_PzU"}H4%uc0I2iSTMa>_\C+D &ٱwyzgO~0suk6ab#{, YmEe4l[e0AZ^Wнk5(-Ё}XI9lI9H!M¨r5:#-ȕvc(av^NmL;0/kk]*P*A1ZO>\Oy0:IֲNhAqGI[p =Kqeܔ]]ӇbS+C s: -ɏ􍱓Mʧ×+f\ LQw`sG~԰OMjʙn'Y MHWS0TIx`G1z%}y_.{c{>FUk=-|Ht4:% I "ZdaIN 1E8O%msX8}4z)X,'%BLY,v<{< I1!ܽKBGYL#J3G7puz{*M 6wI"*xRf-]kp\>hyELB6xWx~;B<t7] ȗDt~e ^hL} *^y>48/>@'I(D0:GV<7SM~a㋷>1Ч ֫ "8Gt\5h_ۚHu78}0. )߇0rw^>LC+ʿpe$EeH i2Q=RRLcTuUTkF 'ݚ]GZ{F?]sT"_Cߛlg %Ψ]mTԭW{b\ 6\Uq65p}sCX'a TNfdE4ӶORKZEʓEԋ,:F _X`Fګ]4Q92YsA@i=A30_=NGU!tڅnFցZ.큊W*#ԣEc*_A AVYyvzWB]uU^UTliQ+a33S\/`#eNLl{QSbO*錥5a Z+i/`RˑJ|= JD2 `q]β;3h90!i'W?y/G >#ގIFcmDY.GRr ṔM|WRvq C.G_Ɋڋ{xyc9%UXLkzU\w?%js[ܒΪ71P…²ZV*g'!@Ze [etfe%/2,?Uw՟^9ѻ vCߡ#^9<leڸŐe+#3,jZ妧%(؈2Kz%$@d w^HV#UVIQMl!Iٛɻ|tWU`HtrYHw"q~rE%bgw}\ޠ⬠I m| ] fk7S '"h7B}DJ!9f;&!?*)Ad_iH$$\M`kxĆ^w 惣HTZD2wgDyJCS]/0,fAdy^RVvE|Kam۪_~ u~龼(; CEy:p%&ej#*øfѬc Q4y^̪P@~[Upjb؅V̎wv\?;r$`Ngdi# <M#@}`fd{2 WåTڑI.%]-r mQhrByU>4ldtF{?ظUaAx\IBMpmq4M\'&i?d&SHyЕFigFqCrѷi$GuȚzR vxd"J, AU$fESTo( ;5N'-N9 Ou{l2dSK ǡuX"Q'q>י2ͫH9Lfm|7rB4ar7tk9Sz}$58{J "W8憟P@[ua9z+‚QGS r >$d&Oڂ:ͮ9m.$*8ðJ/fÿ0XiQ:ž86=IS(лu.c;v<^X9W۪!L.;f+X}Ԁμ)d(Yo7 \Bz8NncDzzVcu˕CdlʛĮHXFN ;7H,K9|[Į &fʞV|GzRc.bsX%h{3^Uܿ~ >^YҬ$b_|*!2*m<]^z6ZvofB{eOjdCGs8a)RV@w@d <xQǵ5r}EOֿC8 W)M.{(_uǞǴq亿qanI$V@]}ɻ! !lvhs+/&eVY29Ne U,@z,j[^?$NIpcڰc P@`E_i.=-B_/~! Qx\WGçWP3|Hi~ ؜DyۭVnN8H1c)Ǟ;zGo%~ =?Xu FF QJgVg 6yòk^DTe)>̽mY9̒$˖ Io#(UCCa;f)ո*יOMqt;p#qIZ`쌅Qi nT9&btB|1 D[F =GC1 }Ҋ)OVAyvӃ0+H~}+Ôz\_mVWjm7m$Xyt,ޣ }lm%!c_4h~D-ט+Z]g[';J$GxdL/RυFv!p-b:X_4>wOFVl~,)n 9`s嬒_\8dC-Qܝ箦h$c*mqV'vTKn9yw-fIx\J#Pr-Ѡ*/ћLlu qۺ_o36IZfa.cGی^I``ż '/gFRߓ]ј^p:mqCBѫxS;g]X`6OhCю.?QN>=%r΅ӹy<ckt<ӭ`a|v ξ̴zuBlt Mdj鿽,TXpH0_Ȕ4F x `߲S ­1-pݺqݙњćsA]6QJo.d5+=+5ɍܐۙ-Pz oG` tIVHz<}|~m^ xe<'SB#)8oZmzi^Ы}MOf\W,냹9]=~Pz HIž72BD`ѽI _|. 谣g#8 u%78 j'A6R٨R$}zJ &Ux ` L>ӠTU5-L_40m^UfnOmNm7GgQ%IDڀhCpxkSH -XE'YV?D|`:E(3h7Ɉ8,Jp5G|W8F)]T,C]Ճvյ-7rq 8 ?BG2ҬpPn؊S\ːh]./7S?!|k!o{xEŨn0U(ܖ T T LՂϬSDGx4+^}TΊx]u6XVfчksBpJB67>Q6. )!O ?Qg`ue+b-ޯ9YH٬#?PmHkPV65dP&or:50ʫt*\%>9 ®kmPX fq#LgtSU/N~ ͕Sg2bwS*̻ 31Nsqu#36ũ9sd:O aBPpid7Y܏V TS]VT\u6 ڥ$_S$"ws۠$%:EA>ZG^֓5\鄺0nmy^f:#X)AF_6Lrǐ &Q^!믩+X~Z}ԕ[`_gmt\S5COtmCrA!JVs?h >E7o-c;J#83,[eÅ " %fO2\ #K՜o}l%aV7DqHǻ NzL-mw=AF8 d٘.m^,,1[7 0p]ѩƚI8<x@Iof~.rnju>-%ū9 xq~3*]`uFLN~-Uœ6fs[;eI<'AdC̭-dNnV׍WRIF.}?MӇYc/UӈP 1- MGL?pG;V T] /궺wx# ',$c(}s,*lq gdk?$pʔ)馽H1*<3|J\BBP-~98};ʲM>9V [qYAJ XؔhI?JC!,aw=lȮQ\ W 4ʕخYCh f_5jvÌHROEoQs):Xcd-Vt4CpU8u]TqG^g ؔz܍*$۞:HkغE': f"4t^:1Q!#@D,Rq`㕠2Ae퍖GZAhFVvPt.VuifSBx6mRuBZi7~SԂ40(vhRw,uKhe'Eg$6K\t0&d5 OPD. nyƼW>k!}c+kbKq:R*㯽3%ކ[9s&rV TvA*<3|:=uWɣ>^+{‰Ǥa|ïDylVc+%[X(Rz@bgO 6lKĭMFd'؝Op >Fn'>AguW"\ j҅E6š[␙ V~85^NM}aN_U!AYO  ]?.!t}^ JE& ȵ9QP#hJEj%G[h"۶;2@}#tqdZ=Ld:8gTS1C9Uh0-Yt6.i'%#ﱧ?V1f>xvlB!fbI=Եc\$MwJq%,[< t@?R;VMQDA[5ӽcɟťoi?0bY٫7qkIb2r.,ɻN:s@6Z?6ϝrπ{$[Vl~泥h1ɱ*_0gV[NP{)%SH !)EL-;*zlҤ@)TMF˞*gj/KK8㧰:%s' uUr_Lꥹps4T'ZӬHA>SqRzQi,GA MB'&vȇ,4zUK18Tk~JDw>wN0j)(ŮB,yrFKyGWݠ%5Я(090ԃT234?Lq?>UpEmly?8j+ޖ$HВeѕ&643/Py ?॰{A.֛h\ 3jcXx ۃAwĀ7Aei]eGstD:qU7_|z%(\€$qu_Yt}9^! 6e?JB)ƻ(קhȞc{7d4>q9=@rՖwNtuf@̩!g˿dJ{ gm_+N_&3\6`V =qlĥ͹:^ee7{dL󒽞Dm*]Bk:,%B3vM++.%k$:I?{ bpZdw>bɽ^ifJ^.F {%4:}0vFOTXp G1XONQYP)j@u!YVtt{v p%Q*Ck[sWN? %~&Fcg#$DP= |`!]n,LQph/qTLE4Rq;{u5~,? KEωQ}Y{622Wj V:՞ Zޱ 2&BϿє;'2t/-Ą~(Y,cؔdN~෧3BmNpo1IEH O̸ͅagEx$65dґ0]g*ʰyu`^f>an6*FqS%6Ŷ VP$Rׂn!;W% g}ʂ+8($6É9GxfRb<`Afǘ!鳞Ѱ9 B(m FE7 /ްr.Gu 98lU`§qH2jr+K#_À+Xv['Լ9@S*43"\V7 RHEיͳ$kPbޞi α<t /]և֔ ;3",7dXXO_Wp6)?vl!Xb0-CWtBJEYM)=4T?5b/?u؁Fy)4q~("$+\[TҐ(~+܎;^7,Ɖ?勵ez>:%W0}|U6˶.5/e)yjRR97/XϖޭFrY<Ցm="keD 3?&WG!_p>MEO/.F@PDh&( RkYԍފɴ潤Vl pwkLEZxxZ7Vd^8z^dS SMwA-c)uݰ/6wMyܷ@хtma8 ~ 0r 8 [otk2 :5[咷tT3iJx }X"%\ʃ 49EC.9?]RuH ۳G I cX 9 Lj`--4Yy}MKO7"o:tq#ޟÞ4h 1.ϥk wr]w9]\Vxh^wEH,0gK hȝm(M Y{6k2ɨũbbI[K@W!3Fρpu~G`A 44`Ħ  þ HQ4}Ƃ^ȣmFwdbL%wwyWE..I0QjEA:/VSȤ9 %ȴh9 BLև$,B|H)(g*7>vԝ]ezM6 9N(h¬[{q_x]f3p2'Ÿu`2"L)ӢdDF."!i4q?z#(*K튇| gt$CFg;i.HIUBn7)ǏQDhvk TR׉$*Intxgl{g0F. jq6*f++CrVukH"F"Mҋ'\ˎ(Қp=˟ .-,ټ!S:q~_.މhȔe%6rQ3.+ۡs4zv'y,3I8d̗yup1'<T/Ev̔3p\#!/4 F[fA4:*vui00= 1\BN~s>l"Z5F!~Y)sF1T.#sz78BW.;ΜxYB I#|!۟Ax]LP#a#޾ɓzG&.9KĖ]I<:a鋄o}\T1K8\<Mj,Hۤ:1<Ͽ Hu}(rjF8EbC @X]HqYƈ gn90`Jܝ$ i.9TS2"\ޕ:,1IQwZqyE KaȖBa$oT/OfPfP2yn*L :tҊiךN6bP(P3 ehg}};q pM3^n)0 u Ђ ;Â\ m_9b,;5720-=Ax"Q (I9M9mw/,B!Ž?kUniF6׀>Ij] nr#z GjǯpOB5)ǘ9g-&I&ӀHUϠ$`֎ @f DZ5 lt{;|70+/Z~Cb.҉YIXUV._ۘuje/ ÈCkM8g|I\WT3{Ͱe5(GRJ+08 ?.1M4ՙ6=#vQ/\L}j֧Ŀ#oY$P<Ō8|m؞1Z8A,&փ*Z>M$1Xԓ}s sʼEZۨ=δA;B,+T Ĝ){*! -}:㸖_^ đD+=ޤ+d$ψ}%QNi]@W!y3 o/83%\GUQ|M_wsrA~foy5Ț*}OG>Wލ6{{r2 M'.Vv` 'XrNdPOt{HN945Ԍ>jrߣ%v8ya1!\=B{(ӯ:ɳ8Քnl6C ᄉ(fK, 7fӆ5CY)镹aaj7 J:_[MUSGV(J=&DfmVE/u6`ǕSZ( 3lyNЯvW}Fԧ*)\+yg'dV/MRΚҷx[$Q/>i5@ F#9pGXM|[zrۭU0` Ul;N!9iC@>CP9՝%( J{J-N6#k^2D[ E|e" o}gonvS >S=2R {Pco^NO^Ԛ9R8gWUӾ~C5#]Cjt5ꂿrgp#',8h?9qgey96d-5-2H 3u^rp`Ϩ ʜRrdi/D$GoukޯK!o55y]ۺ z}z$S~g#ŧO5oeg":x GABO/@EG|W8}J[eWLFgTsŌ{F0"9'L0K?;xK0C M|Y _Kz8-Qk#I?CQec'8|`_/dcdjzVh([{:Q'%fŋ*fGL@MʮmjQV+c6tGI7E7g@s`͊A+k)fю>tPyE[sNj_98gA#d%{ud ;5z]A6ŽE`xjKp :@ +Ot^CL~o2޸>x/a^%D3f[T}צ,x\*E֥K#oS@0@lԖY9QT&('&Y˴NاTjJ`|=iH&@ݎ>ò/͉^Dx~9Fv$%TS, M| wr>Ip<(C )ohIf;J(;H0y!0 (nT ^KxYW-lH[qb ՁtNg(}"]4?'\>Y&e0'K U׀a;,Uz4nŭD#=jCI,V[.ɘA8.A?Td"V A(0\O7ȧm܌ 7Bi:棳\)6L_>K;梏FXu*1*Q@ؕ(-ai/bѽ(Fe#ašY)Ԁ9}.¶rduv3j=CcNSoEdΥFI-YFve.\!8k˲KSI-4p,~3" ˎ$~gN F ;B<(aG*nr,NP^WpMg$L?rDOUf ;'C 2PEN~IJQ]6|u$m]! 3f=D4 qNr9ԼZMq.zQ|XqOW9)Ht4if"nhk0 `y!֮o .xj&~aOX@}sNZ5'˞x w~ekKR$6e WET/cH||hB1v| !jjU^#V/I |[P,)f I~X˱nꊞa*F>f&ΘT}2<ު /x!yq\ArvaS%eԍ[ rE)(\ n/C}F[[KdzKuY̟{87HV+֨Ƣg}˽1o0Xe%;R 'SB- yqYyN-Gj|Rl+='܌enhE׹(Z^PY=9L>{6Edn7k[|[OI\*N=KC꣧dB L$'K#qGήB_NAfwA^8I|$HB-Ў̬oZͪSQR š%ʧޒtc5 :%ԭy pmRR"Gibmo럘AּzT?_DV3‶!hA An)Ńq8m;EN@}{ y_JtAe%&SW<Պΰk[O8PkD$dEqӫFBB"I9D1QǤ7*+pztϠ PРzmJ{6_7MeOWqOǩ)WAw߽S"ىj5Fn]\ <lύZ^Huptih40Љ2:|v n2 Ll-0L$@ikq&`yAybZCB lt6 !^=![N*r Dp=z:|S'OP6UPCf>W W} zچ[r!e 8jL냫O meQs1PE4Tb0O}5l(GNՅ2SK,xԒ$ixgiJ9n4^'S€2=i4mBm8r|dC@ T_ܟ1Yz7':)'_G<c:.gmꞡX.| Szr#]ċa$w.V%Baږ2\H;_hϵf7m:kh#e7R9)vL}Iͅ5R6 ¸ ݊D hDr옔6)c.%W:TsvxON5cwT.`]zE[[|*7ZP_8+rX8' U؂dWīr =v7Fjj?ۿYq d|Zg4ns{pPTNFkߕKb!nG,~mt,mElcR{zO*J~ a|QF? ;=Ш4ƊC1Te"h ܈ Y yv?ʶK%h3tM&p#yplPI*qRMч Cb0wr2c\$4œόDuw W]#rيRY.hPGCe_ R'* )a57&+^dl]-!!g:πYxŵk%6qHlr,H_Bx+ݪ[ | 헒]!OOP"E[d/jL&.{Ny}vQ&Nv́1+@Z"1ks 0XQ["eQ{Ji{מ:}lkD3fPN5)dAo X.?4xCJ Mi@k&0_U|jkrc?%=ҤLuLz:U8GŭIi6^5JgMx23>ѲDbv&Y1mZu3ةNA/Bz<0cm!*!q{:ٙځR~L{y5U6:c/3DH hCe HV Y[;с1h5K?[8C8:͚d]k;‚V rt*yj0V_ uy7">f)K$Yiq:z.A^DvF0ܱMTf 7qTB{Y >qFH23*-\ stcx״ien+0LT̿m7BT U[s.+:LDŽ ܢ9L䝊g n$ts$(w. >-1exaŚ@NބZg})V˝;SOm ٌ dFBZQ{(u?01Uu$شE2&5w)+Єэg~ }f:jsROLԳJ%PGN__ .5k&,$l|hP:\ea hB֤6.:iqGTm> Eyi}>W6|sOqg*4)U8w_}Gy摸樞hѻ lZt2| xSq8-}dBZmЪ˄as= %*fnqXmߘ*ɏByu*Kb3GNuHstJ.jeٯV`_ @(ᐾt/FrLȃR,•:\5j_n.?5H8!f{RV"]D*IHCɼ͐TPkIi3ms?~'B4K^H#Hˠ')ɣqNt) Oj; q  cKݶLva {嘲D=grfZYg ۚXc^_gNg=&zWx)icn8d[~97UW4P8*Ou䭔]:?d#@g]-eRJٶ:%6"k2PQ.#_sä;DpPou=:WTW+mP}@䑝@TŘzj HskH*ְ٠v+{^5kz'*҇ԗ2ځ돔3yB GUHF}z[{i?Qr4\s]ieQI!7L&o6m#MKєIZ6\Z4' :rڣ>HN k4pFMp4iUUa ]L $XWNB7npS[%Wau杏),fX<*&tCHoŬ%xnm_FBBXkxA#'D%?-\6D ۵E3WuVG}շ3gz6/2fI E(#=FeWHgxw}Bi[ޚ ]4{>ͦj6t~z,]0AzsX HwCdܶVP@> !XSQ tHWf3}(+RRY f_a?9abzt`gr(dZ19QAU$vˎvL80C3\@U%HõF HC? XW& NX hX`KIʣ1Fs߰)NW !셱Tw{<3KJ1,|aMd) tlH*i$ kR1I"R=vQbG!u廳qg= {lYbfFdcak3k"%kD}ֈ f5P.a oX{Q|~R_SwިKPM?GPHH.дn[d9;wfi ~Cn mG:D!\N#|lQٙnۧAӑt3Pp+=ٚfEEK]~Y:,nCFҎ"0,(jt΂3kg gLkSG$-䗌H/n8-PM$ޯ0̛XOPlgDuG:bwFT՜x>Z־5~X1 T2ï0o+?{͢,ό>a_'Djog 14Ukmh?z_[o:fU`JcyrIt/vJbz0]$ MKŔ%ݖ GBANw, rsA@Osr &Z| l$ԲP^Hk"9X#H*Rwu9N ͎+Q@E}#Bէ,ƈnvw$mIcY!~(/CH.ݺR)\竇GOwSdۧ߼5eȲ/0j4tKV`k6 ՟RG}#2@̃՘Rg\ݖ#7TkIR*(<:v܇ncxdf8F1I=p+H{b!bl:uf7 gf#/uS]A B\ ]~Ȧi&'D :)[#wE2_;[)'~j];*xRv=e,Wv3SxFȑP+c< ĹEBvs%9Rd[J~CDIev66 .A8G}ҫ(k iaΎe5^+/^yN+L2]0V'/dD_P_79@7 ~;jZ僊1Y齹4->>1L' >P)w cDIyj}MӤ?\t 5H>(ie.m˃_V/ i7 d4.5 ng|a;bF>w#@ o'ѱ1։Ee<ʊ  v>.Wbc4lƭJE% v70',N*4jyky43P&7e U"D?|jp%%kb9<6 njz^jgd ө9ϔȌX2ޯJ\qᒄzicC]w9% 0כp_yt K(;~|xpZd%zX 8LqՀ5&&K@-MVߵ/پ_zm\8/tLw ]ʔ-"tX\_LB4s2V|={|#hɪޢ'y \+? ) m$ +Q~&y6$S{0u+򣼋jDbmo9ty߬\zmiݥܧaw?4)[g0x}6Rd$)֡y~c\}t .i5^fy[,!: xj'ٮ*s>|wؤ1 45ҳ@p Y b[i4+.ĭX'c˥|\FcM“jb\U&ºQg{tnBzMA͈^בw/koAܰՇT/pr|ujJ3O-!ҩHA.3'9ov +Y}* 8S <0Z-^{&~Nvezz?V}X=*|dO"a>HG_RYOPB "/.@ K+І >?@(2‘`BILDֈWX^[K99B xmu$a!`ǂTހyd,XIAziIZ])Gc] .COoS#RnqZql)1#rF:6FW%e-A&~ǃ >4cfƢ9T\7 q8ǺN \ԫЊ<IpE..n垬_q0Y"9fktB+D c">m*|(%=3I "F񦼩5s`W+jZ4N9rNԷpqDpoWPжڴ-0J{\qc[cgsiCJoY@]5Q7f'{0j)(J@*8GMA?#pPW*A$}`ϥ~g@=5912*0"v3{&R eM/{alϊ=tdGlfߩ#\$Pْ<߆kO$? (~h9#29U2Fޭܤ*9nr< 'KAq> nBֻR„^愄+ĖZ2M 𸮱r+CafK 0 j^+5OvԍnnLM1߁s dr :^vSc$7 (psHf[>hb-F}^"{&8|?4g*; YlVwz#%>"Hmt,Z `񻣱SbWcpEg 3=y-ΜV]ZD:TKѮ˪Mz7+IE/nˬ.}OoE+c1;CK?gO쭖՜+g:(T€uIZB3m]@ߐ*eC?e'2_chC!kY[$)9ގYU Zv:B kY{<?|(agrU'Yy<~** U1/yYBо|_Q1mFx;G(^RL%oHJH| # t0?V7HxV?! 8'>6:~<R2e0&R bMi[^&nfyƁPgURȢ5e1?vU:G ^3D ΏZNYtdioroM!/R)ZP"ͺ6wkt`Z&ItP/|!Z] S/Ҽ"bu6vMh*IRΈpE?rkc\}R9|Vb+s7İ/LvCXK.S6R;M3K8+5E:xSxWbX=itW2fYrHMj֬٦~R)]=2z>84yO*ɨj,]>v]0xLg[V{E&x \}{Q6cUv K}G!Wa/Za *Ro*htGg>OT31=[|B[ӄRY9-L$ߦLSީ 3d h>f(H- u콳_?8]`BLjn&>5H6CMh+Ly!6x:ft}k s/ BAT}Ccޤ>OBM2bqtDkKe (POLU19k?Knw<#\Z>_{ß:;s={Z,1:hBHg]z,.0n*N:,6!籾QCK8_lR䪦o N* oaH# /z^\[~YK ŵ:x۬r$bUǞJZSQ*%APP[.&nJ>cӋn\O%LTXvn GYw> shi%B .*3o  # k94뿔l@Vđ}X7EWoYDO5KMYO;d*%;Fs( %'i.qKSfUmn͕28THs\=)97+pW ~d5+>1Av*",mў 9><\D4u"V6lyDO0㱁g՘hoy9Ę5 o#@zPH!WS|{zOOKs=2:G 3b/S`O r>R` uH >oc5|~Nc6} ~(,b֛,y稾rMTm}t{: TnUݤ8e],8"uX?5]<2^ܥ*4ڮK2:ӣ6Sw:;lt Q'i!<]=-~B7m(>%IP+Q7 kbb׽00J0?>Pk6- 5 ӛM1{v'e=z1\jteni(-K.Ӿ ,UDbv/y͞f-|$[oB튈OlGŮKAvǸm+z/\xM`$WPZL$ H%SM>obk`@F&0H"*jk|*!n̬Y*U׿[ @wrb  ֛$q^XdUs4=ZL_w$xr.^\%]Fj}e[jRj}^RU+Anwh<2Sa޴YR PR[YCGt4tZ%3)S![rf 2W*>$|ꮭ Eܔ#(4Ic%?iK OQuj&o5)wWF:9(aN MvX+ΡYcz\̧'2enuVS`pU=< 0>0O=ZD̈́μ<#2w@42NvB̈́.M'TIU"-1a>ֳ\]cp Η `HK Hh!^#­o+qvjXsO i'`c;xLψ-o|Z[9ݝoб}o?Pɷu9RC1eIh /8Ïy8س]۬QC09e~B;KAkxQM ()wXVSdbA;*G,lX%\[N}cio^:d_-s_`q 0 ?N}+CI >{1>(mI"r)ڃ8;V'TK7,A/Lf)JC!s#I>ve q#=(tUd6oHu?q &|+M%"i Ґ!U\{Z8ěTSC35 d ^=z -R>%bA8%sah鿢sş{/EF"[$lee%[Kj@vBsw"Z%B㨦0NLÊȟ\(sGyLy6Qu2i|DL0ȭ~ &؟(6 ⺀r4낶N87rSksk TjPQ]Rg~dQq?k#48;^,UY~Vx.UW!jJ1Ғ;~&/GAfrЭ-i煀Yj<رff] ;gtw]1ֿ2WN&;[.YO YYBF̲RmY|[!{A7tmhiĘ4BU_r hp?ʺ+"b י~ܫKA%қ`t-!gO77uDًVB@;x#†v d1)FH򨬰[ ƍзϨgLZ׃֤':\=NTa^F~5uSB\B3j ,C`À8cg0HC9f)^Θ#B*NQgٯ`~۹*ζ3ONM0E̠R{ o0#Y3_kC)xmv655߄J(ቔhF^2cXe©2 Yj0Z6FH \h|7?S 9f`S 2p\XPŭb:F{ڿ5xǜ~C߭;3o]X3c^=xo5%}3x SlG}K83r9(+YU f@:͊6U0 K&KEwbbv 35rthtsT"Ur~TLgzlB"o-L8'4Ej2 g_ qrcFV򊅫awOXq#P:5SPQ3|g "<E>.6o񆿶ƉslMĴ vvUӏ2卡}n-9>f]F3MN͕Vuy}νE>4hF@njc?d2K4O9`h2z o9|i43`!KS\iV^Rl.}k{2Rz9v1Z4 Q5aT-Vt?&h0r"%hH{%# #9>ɇtuL bTJIB]uÜ5u>Њ7K/^wʺ5ĨץwVjuKzHoQk,[`t툧\N]70cuD+Q?SB8Z)ّ/;g:W;$ߕI2"H#@  -H{+oְlyr\ߋtXT B hOTҞ~߈a18LS_!]2][WzOL~!zRvDkTƵ KwLK |~d?MЗua^uRsa4CIH׃вbӿ[_R+~mHIuy~hV w%Ek>@YUf\Z߄lJ10S&iE4j(]D:D]&rޖugG%drp幩Oer$}ez+qk< `i׻ҥ ]P.PJjK񑧙Ztp]zS,]_Xf:Up5]i\SP} U~ =d\i#/ DPe[ R<͞#KfSC⩙0E1G2ʰ>s pmq3yW !XHop* 3D cR.)쟒#E;I~?~ᲤKNK{|Q;)K~ }7C#uD_ /6 6xd3?bue'gpStY-by<ښ!Yīx_ه̕cu`:'Q^ea+adֿ/`by3ZEN\p<;@֊/@FY EJBAuY$Q:Ⱦ98"@P['{h0/5[iTx0ZwcE͘Da@M쥠_0FQKVI jgrȟ9uw|] |UD\˭q* ]2IjRI,mPG](]G5ܺ[XwE9Lŝ/u`pغ*1l|{H8Շduvh$u-k?hj"*=<&gxXUeڏ#؍ +ZN` __\#RSQ,1. _zj_fan_*ǾB?́}y)`80)=T9Wۿe0cG2j GߜM.&xR f.lpiEloWI]nk#:6z\ =LQeiYt~e0 ܎u-RhķTbx6 /mpp@ 5g֦_SЌ21̒ L]Ο/G[4o',Ȫm2r~RvӀ]umdY@鷱8!5"^ѳC/$?jDDa]oC&z87_JEF') C"+x.(VHIߢSsStk:(SZF7)Р^e:)Y3<vyuliSg*i`osn|)؂cSfta](OKz6T5f۝|st3$B+sO{w>Pkƃ㚣$Z@akwu{lid9稓g6( Jt//桫-1g.ɟ˖8CDrOYiG F 5+S1a#v4mHglO F 1Utg3 bB6P^g,_1ċfP}*q Qi?Yy#31jxcbi"sK+ QM ל)|X[Sy' &0c.@7 [B_I*~Xsv^j }-spcS`Ez`V#TXn{KTLjJon^ wxc D0 \|RNdbcOnWu ;!pOaF{~ԽmFB<'HC2bPXI8:(4켰I2Pֵ@O.+>CJmf%S%ҫh^7+^t4C*0z[Oxzh߭Ccc!..vzemhOl9:W z'谯 ?o؂Nzv%Gsb]8Me2^:3c1ԥ&Eч]zo?:Re^dJ 7(Y`Ҽ*~hvLk5Ƒ$~`$W/uVDm˘oN[n;T#Aig%:TRv#"/wo+{3'xj]_(΃Iw%k:rlα9@p2ů4QP¦#_ * tSZsHIj 9 M~kNeuO\vl?C#֞Tw> gC^WQ#ˆ<ڴ LBq)e$fNʈcYrk ڴVJq.ɦi(ɐC Z̺c 8#TWkhC'a,"[?j&õ V;O(ro~6JVB}2K׍GNu/|2eP~Dk0k=~΋ټM'#u_Sh> f@qk>0l%$q[9on7|PZO)Ty~w/s؀ӅUp 7<׳6e,|l ]q:uk}@Rm]]tui͌a<΂N2$}|Rf27U:(4hNV# +YRjX)@Wá:>~"&ȀI ")lOK@԰(42@YN/$(%#i3񧁮\:}( cImBx='~U f[<+qٮ[NUeLI@j@YÁj2Fk Kj=B]bM̝ .h=FaJCD \ի]eADu]7jwL[>(%lmrqYֻ;ȋ{ԋ79 6WKWXf j+I#Da~Z=)!^#%ml R[l%|)E+'vT_߆+~`HyG//&$4IGXm'T /{DDgCWAR3\lC==Ŀb?Q?\tSwOgoPQǨ3!=u;U-ُ;?"`SӍ L?)l3mPH%yX@^!embH#pՀ7B1by3+DK .袙!USbc wq2P]Z1e˸< N6bt9QV܈@c]F{Hz)<V*^P2 0$I`"k"p&sK4qөxKf2ʨ?uDQ@[IbWg[TY V NcunȾqҜLyMl%0mr#N <}VƘxn $.̡wZ54;ô?-d\1IRWhDXn;eZބO&2ptt;h\x pc$YvNК΁=O~YfgQW(ZNb砤=vdj>;wb?dns]pRzeL-Q#o_?O7&+S,]1'e'%;}02D_.3WEAf6Jߍ=nxR"cPQdEGo8܋&qwNaSxa[%KhP,4;Kq}$k7%ikPLVkb;vs#D>v`fqV<(yӡBB~(tf{*fnTЄqHW> S(DγF!Th~~EzŘޟ{\ yKOh5LbUY:ˡBQd(3ڬ_/.?ycTFVJ VYxC(-E'hcub 6 js*rvzC\pXt D`nEuK®t&IX~͢I74>+Hn:π7N ce7kD lTVpR ͷh;hP^ gRs{Q? X! tY2,ne [zIca['C0,2`*F$=IV($P'T|x.{Wʝ3YŜ>Gu= O4Y.9æ* SWѓ׵Wqda[dUG:5= !\HC?-:Cǘ%Pjlɿv&QD0-Nh\FVX-4M1K;"xH-xKCpٍ/ j?c2N\J+[㚺>ze]dӭZ~i-nMJbVNK@`3O #?ԀYF lIqx'M{9f~B3%:sǃ2 jgy˳B "\?$478heX֍MF柀3TcH&X 2F cQEǤ?MaGf}@˯U ʓx7_U _KeySoQ˔ ^0jɤi hѴU(ض9/k襠-M%6g "u&D9$&ULM~*?Q 㜿BtنUĿ-v UScŰe#Gf Qm˙R @gHË\tsM Ҵ/43IQ_xI*vmEٞԦR!R˨ieYq-7+?ٜu YX;pG",sQsHjhj@L:*tRIn-yPfAjr\G7,#{9g?Y($F5"Xk! ~(B~&YXeIQ^ޔ]gX`gk+S96Ĺ%Ԥux㴾 33 W$} L(^c8~_#b@(wY4h*(|0Rs뉯sۏec܀nߑ ںPƑ20X=c54x~th ܇g_x =2W$6BuɊ]2aY灘0|7E!MFS9mj+KܳhqgyE(AUP7nSR6t& ef 7,Ьd@Wdk妝wE0^u*W .oAr`W loq uh04Jg RO}R"Z{}=%oy",S]ްq?ԙn@i{Fch͌:6";O#ckǬW [^S''ȨM1Em%,z"Ƌk 7fQT 6љbh C:#}]kxhٹ{at'm m9}_ a+͵?bD#L^!qtsAcmn{"i.y+/rQUITh Ê4+hY]&J[K&c ɋPuBO8$ib{c: \׍3{]Áh&mXBn}\%Ț73Nf/\>5`_ V#myV۷2tf쿙C7cWbh#|)#hnMr6h ; #Jy؝g;@lBڅN?ovx)j͇mKX6Xlŏv-Rw.fPuNGo3$䘒RD=&?<X13fhԫ\"g Ĉ`epVL+&̴t׵H`%ybjkFHVSZ_Gs{A@ كƭӈ.1)&%_N ̴+g)kMw1]$tv/hvbY~rD fT ֬͆/Т5D?oj= (4񿗆 :|$7u 0Õ3h_nkP?s'J)Kd p}+7ytܛiw29(?[)bzfED+ ā_-BN@iY ^a~Uf}0U&z1Ż'??&O6WPK^5th}Σ}Q{yuL>{.;H퓰/K$B*w@a>!{@`SrrԀϪpTn)`<-)T3 6I[yki0ea{rOX;R#u30r5`<=x<fdpa&0RN13Kd;c |\RJѸIoX@YK5u( ̝m @xDjjo9`S DѾ2{:;&KzWdz=o{ xL{ kzkR}T!&u~QF7\,R7QqTcK9M'|lI|vq0Q^pz܀~H"\". (ۗ°5`o]^&Q;Ρijzn9ʈ=7ɝ츩w/yT ө4ý_+]WΙjk6ZFLG@8{ԅފ@uO2YNjV$4"q}hYv[$u.0h<#uʽRrj7?>-Y/j|.hcTaM^DKl\ټ&xe|©TV)BN_G^⦜c Y. j0S5Y:ecԨxL1rz2٣򓜕CD%|VzJ5C+¾y,ՈJ!=.,UMwO,iX, ľK* ʣb; 5)TOBnPB;zNS 6JUtYn:"_Ǧ$m@Cu܇{,@GQg )d RnP~ͅkoЖP,yf_f_]n,LV[B8Q6Za?ɎuN7p? k6NFk0Hp٧&Gs@ 51ԞӇ&R,9 R~YV_[>s)ϳjZ|e{#GCjfw6SjF֞ h7n} ;s@kEZFS~bU8rnګcvOf"-{wre$&"k9 X8j)ig@3s܊g Ӕշc'B-I$mJrcAp QBА̍?t^L T#"D;c2,WjaV~gKe,6uh fb;*,2{"J)w9r_&,*T S"#E:!_'6`W/ _eWhwV}%2TyK09yCJBl3 jbut)+I|/FJ)O @QؗT"pm9++ع^NC%AvVB .ΨϕWll6ݨK2YakU?[YO^D Op Gw2O? =QHwHRXVwL< Na綋;`nl`LD0Wti_Ai`O AW2`A}/ La1nSJMmf8XmIW βu=9eLC0nM0D> o,89@$ǸIizEHGps;>(޵XOb:&:c"b+>F^zj4Ҹ%>eyUƨ) 2IA+CӣܒyKiU.ɲm쭋;kf &]/im\ZcGΑ~L#UU[:XIU?-+ RvUù4XisRN4uB%?*bmHLPV<ԬCdkEG4Tc+#Lq ?&M2(r2aE?|#Tw%v0)$^oƚ'2Genf BӷLRiLj;D|>!?.Vm> "e{tFjAe_)$S+4p:R`Y}x2+!xU@fS\p[%bb5t$! cb_RJ$0HwUԀBa14`_n<(fsKҝUU%$~)ꝝCLutv'=ޔ+BUC;uOP *lm (צ }Vp"AKeR ";m<7gwCz'wL ?%F(öiD(25ķl 7\̗!*:Qv|v<~ [*c}D>5:(h`']\u?ih汓KoZʗػ^׳9>B鬷|~rچߔnr2YroOq>G>oֹͅV3[5ߧ[KڦGָD9dX6 Ax&Dj; ;J+@le|vtF)*MGm$IønkpiʢHkxi艵H&_vy5e^?8 ,ֈao IB5 ,dc9 mWb_#XM]oTU~ce ǰmP%:IIR\8]OyO%]UO\a-i/LFk*)jS9 gzWY3=LBV~9$_78fոJS1.5Iawa. 5w6OWYߍʩ5YIZj2~eya{_8 M/6T_uPiٔ 9[w{prM"~"84m3RxI[ (OuOqT^>ZwNyk|CLi)e˴H^0豑uӰn43iWPBKR'ʷʼnu,`T(^bHfM7KgGIjhDV_8ZCN^Q }F.w2a׶mM{L$m([}@{Q[,F*"I3 jqj :Sa4u.g@IDTO[FhЭu=jmj 9H^<߅z,V22Eەu:Zj]M()s?nD=Ȉ @5uASn Pޜ ;nFrCmj"]} 2yPž)Ft#eE 3L@G0OdA@B/9;ܭU8ځ` 8+?ɲyX^)6 ':zvOn̘ \_S98+KmQ^Yxq;L!SnT8Tn*!=("L)$!jF,sKW{pe$^h T82Vbh$5’T%]4¤ =Vxo Lh)M@21{C%RI"+

    s2W;#F9!{0 ߡ\dTm@Z /MuAE\K5;>Tuj:,]aBnr0=@jHR`ʶV II),+p1 e.=Ga>]/aAmG6 ,etGGqa rwtLEƄշSS)x0iU01r_!#{!!#)5QN\~\ނiS3A ݯ 6u_>&vޭw띤3gbz֪Kc]Ѐ|!n2 @()7Ia⡣ `z ֹ,nD0 *HNC>%+mNA$QS/psn"t|*LK7{-r@74O/hh %u\MϮܾx8>8s5Y`ءQ4g#N0O?c/rL褹F5+.I8)yQ:z":I<.+fbWHH2a *]vloƻS#RGm\zv;0ѯBg#ܮE{)D3;k,u$ @Һiq*~740̚)k >K|;QN5nL OHio&u՚-_?Jh=Amف\^q}N>6US6 tɚv`J~rjdU.4߮w#2GϪxDԺ(d N-mSR{{Ũ?Yb5dlUjڂ1 :!:M^uqI/Ovbq,l 4,ϺN}I;Xzi/R-G:jyMU5<{L+XtVk8Nhnr()|UPO&; YР 2"-&=Ij\L} ہT6-O (~1(4il#2{|w|{~I;Xx-NP_W]]ξr+yuMf@2E6R]@XTyd9mauʺHΜCo7 ]yʘoƟ!Ͷ\!!kӀ\>-NeswDae|3*֤Tk*yq168ԉlZW}.o[=pOsܹ. Yv*Їkb*]|'xÒZph.GQDS}X͹kXC*Liփh*.g$J_0F09i(1B%q6B~~d2 $6-Xw&~kf8zkuq^DۧnzUQ˰\$?p7ռwrdX_SD䝫;YDg4'꫕bf LV{s# 魂:yů|yv6kT12ܳ1j)(aojT[txd k6Q D*Ӫz=r!oQ(>M˅ ~J;)4>A'裺dxN%4鰏ט<8:w>H0#8=@j?bvNuQRX㥾;:v y ѳںeH'?-Jn5ķ;'_^+2E ~qp|(\:%,ť1P2n|#^QOSW!RV4.8=X>Yb!SGYAKvQ{sdFC 'j&#@GeYy]-D8ᵦQT(œA MduDB07t\ş\Bc0rRKݳH*fDAri#.?ʏrX'&b IӲw]9CAms"W`+w{Zį9` Ǵ}oWVnIb}ReF {\5J漂 x;l-% rds2δƌ>_1X)?Aŏ?"\ǮԛŨ˧ D#^Q{>Qq\Y*YJoaÞP7A*$ FQ'ݎc+XEfDY #!U(XGI}[9ċ4 Go)P=fx3Rh71**ej4ZE͕}h"Gav_Gs a'ϋ:c`J6۵)~R"udS;ΏHm665){_/d' պq?7.PJST6&H;17`RG|yXKX4(q0Dȇl33cn`sHthX,4JE^?90E9jTt;IܬVRh;=Jc&O{\58.c!ÍJrl$1>{TkKCKT:d':x\>4IM!v7mB8reu};.Egt$J3XCG;ӥp|*dQc{@nl=uԗUB_I0;OSxNA RBmM~ 9޼i1 ?^OUZT=t [p$l*/8YN?J2̺Նa߂,s^f g'Mڊd};!EfFLlqi柢WV\4%-Ƙ]so,%X]iG5 0R/UVW9H Y`?pdU{\>$1ml8{"6?c2q"{-8Yl9:yI 2`:ra91%o;Y%`Q+`K8[D`8iC22\F wx`3:=Cd쯪ƞ@< =#/ܪg08P5 6 Km#~},~dJщ煛Ll0;[F׈+IAP<5Tnڼ '(xܾ%] yP_x *;~+{(L{r/_Yw5XX}+=ȞҰ҅cXLǨ!eE7<"No{zW,;,z ⊢0W.b+xL׍g}ABc!UZ[Ԗ'O@K~ 5\jpr YRQC_~^lbV <N@yX))ws9U̮CQ~8,|޶'`J/wv$uyz9,҄3 @P/FX+Vt$%ȸҨۛCxp*cErggEORoރ =޾b.g=.y }K|lnt;PyC#K&h~ W@n}8 !$խ"y3I>o?6K =1wj #m@ǯ՚ WP cJvwB椆/lGkX&ٚ(k ?J7]{2m;9Gtt,=@e$]W>kpwS^<&b&U)p9ov%ٛ΍2( eiu)7/7 ms1S{8 Bȋ, ö}Tj QWC#/բ`]ծ^%ҩDuAx_BooP:dϖ_.Hڻ[x6&zI$|T+{s]bEɿsE觝)c"2]K _Eʈ!˚.%q3Χ;4 jGd7}'FVN8vu5MFހH3:S9icԊun}8C(fttt[ɜ0Y&r19&61Wl2̖ɋ9@NI "Om7]IW?Roک|-:|UM[J^iW,} qLb.rV g'A8@6puyntV\_OKK(އCxv>,j|"kG*7i/ZuR_jJnic&-0@z`q N jBaOCPQXg %sC_$FARw\&>%zs L5\x[716zMY|CTۊ ip"h}; u([so H+fw:>d#>Lb ܻ25gy\S oּ+a'oWߥD>^Y] ^jL|ăV?<K+\F^GY:ĶVGA5{9=G#q*33 #hhn\}!JmGy%r,?l іϑ2iJOı۶dbcHPz^_|Cͱ))pAM:a,szR^o_ݺ2[dBՍ4B-/ᦜN2Miw~*DsVY8a$ݑ-Ѷg]Z^bVXud+l40xWX#%p\7}Yyju|sռB-[Ĕ_qVorڏ`Zncԡ:CN]yD txȎRiC$%añ,t|TvfWAabD'J*,;LOr ܊"L5+1uF` q@WpkXaKxB?wS[: )A_fZ.~TL"9N W *p ?MJ2HNrpsDs"P2vx/Z Ux{t;~2lat|(9"t՜vk?"2e K^.{Λg!dzŤ7\ceL~]0ݦ)=2ؿIǤ)y%*HCtJ2xmKAMe'gE@Rn ŐqM #:_'Q}ň؟a>K`2ټ$yq[=/DG`2~m F蚪f.J5K1gz}Z*j&F}*IrH_\l̶yzVﳂ}I_XBʀ>Vf)@ky]r٬L #|4tHM6+/ӠvWwF\gL*b"DXCK<4 9m˜c5]Q!dlD8Jю jtvm#R*N, 43t_d= w v6jNeg\^y(ݒt ,G3gS A[]ZXL`ZDC Ƈ+Tif%.x\ɝa Zws*U92SCB RiBp:b%YELՖ[vhq!0WHiW'M?/ lO"hMى?yX/)0С}ðx8|IB94r<ŖO^b\r7Q?_z ޼ea֬HNsHMw?Prk|e(ݖVXMٯnFI# K>>#Z2,{K&ۿES)˦ߩ'hlY>;* 9q>YC|xWYmxtF_(NoR1M-We{ s0o&}ꍐfKizюSp8x< &fL9-vz¦| s#bcAAL$Ah!>ۛ(+#5>l?W1k&"M4,#XM4"q+<14?l4 gmʸ78YbvDAg>k7(3~ ć"ܦ񟔜OX2GɇVmZSaahڡbbw4"1q>{n>3W"櫃FǪ 3K`Fy0E5aJy vU حjP8X% z֛)%ێm_TLgm8Jf %Fͳ>X tcJ*ocKF\'\M"K|k&Iߋo{ h%%72,@њ_jB%]M`hnR׺4=Y,X/sy62N<ط<:$D;߅8m Gf\iZL4BuLBdn<׾MZS2Klܔaydlc,U 7# \Na%R5ncL6&4V'` lS}/>azDClO8ɤp51B+8If14H,a[N**'_h]_hfn&],|lяA\ UtOCW܂I/ PZMI}wy֠M 'Pˑ4 =黱(8[ Bk5c*6ے$|[Wt[j.nV)RnPAV7>U_aD``iG&ȇV&̀k{vhN|yrwD^b #j$OՊS7CY>#ekh:U6ESָehT%]͞/eHw1yhR[7>~F:4-D8_xDa@֌ZTU_mg(KU,;!Em2o0[U @\4Rd"hqql|+S@xIMrc8C%|I~i>cCGu07E -[)/6wx?'hήJ)[S\90g7/a'׺_WS ՘SsӵDƵS&>@|7 1LϧpS߽gDct˶I#u /Bx$I)J02O ƦاY, L+JN^"# 8phD&NTT]. eܜɴ3rߞIO [ו>"Oɭ.U$ĞV9ZmD 5?g0v:l)C>[1XbnH90G\}Q}':LQЬv ñ\F>rkXRȵ[ V;+|y_e_EOV5>ڼ7\'60u| Ĕ HzsspVS'%1Tez!b4#* d5 1,8 \&>NT~cZb7?!ɡ %t9w! [:~[j-$ / DGu^Ovj rjă㵿i}KOd)\"q:RaRҖ>`'d݇U=,!6JʐG4V u!OsBQmůSɟ_S`3k{8O=^>U*},9F.QucJ33/DwD*?F[#-s,Q1SW>+sXjŧxbPjH ^ψ#)˴EKTKS)ZXh9aXvl: 0)Nǚv 6 򅎮Vmy`i`fZVf K\EرIR9U>8V*I8ʊL-Ԧ[s$%n t`ipW"( #vc\#MN3gp6_ϡ'6m#!S0Bsv|aOɓ8cb| xAҿ :sNWsḒ#r]Zȑ7fט_O2D_=[O$AIccHFoG;'Fh8e?mOћC3{-EuKFM Q@3\6u@z\ ?f+qB MzZ={gKZC{lcd_ ĞP~~d`-J^;Y&4;@KieniMhnrx/4 ^ϗGd53(qH"Dߵb>Ekjko>^$Єk<6 6I43VWґNʉmɼ^q)z4Z]NėySv4,ilRjm 7N5UuF\£&RNf6hh2sZm{۬]"?F, fŭ!s!/vA2e N ؅^EY}`l[_3-r4M/9 __ E6S29 RwL GRhï"ZkR}NP/c>)u E"]f`ҳ͉<\O+> ,# tFj'y҂N S]NǹD&َ#HF(VɄ+9Y7E=ofR#ێxII+DsT!pʚ/ꗳg*zj޾Hz 49a[Cr)k4s#}Ej{p2; Mb.%;lx|iH}D9ղ^EVe^,_?W+G7uAǁu- /Jw.NzS%:$Y$;qz4kŚ70&S:?6t9]oz+ <;L/;-irwj+bx :D 5U<c5-ąjABf\Xc){;f=1 GI-TWwNjx]VNyV wɷ=ʈY!gK_O ,yFBNQF~_}4Z㺬XIx&ֱlfNaXzPzub=4* p3\hNpp|h淁QjMP`Q Wp^|5l e޽55`+WW㎜ǻj(ͣpyi!+Usf鯪WҒޤ@˾H̎:,_o9\eo_62X(Cgw[pUbJ {x!:9|OJ$I2itnFo|#QX_6SlN2Ƕ.hɤ C! /IzvSe uӄ.d-TĨg՚V | 1K"iNDUOly=YpH8`@bbd;+b;(kV'n_T)`-iwݱ53nou)AbvWlx +{~ <A45ى>pk鍱M+Fn.QRM% 3t⚀t=w?@]_į*l*oz/# Sdq74,|l` k滯W}qY3}֞qg ۲C;4X^墟.12jHx#T X"ϠVzq6F[޽̩LEwn;{s <oUR%EQ򘧬>%k0Ald?C%Ѿ ]8߭ԙIeEϫ?5$ x]!6fpfb~"xmJ&?{FikX58I 6tlXf3Plg$pKݯmk^WWWױR7ΑuF))&ׁ>{ʪ]觭]8?ND谲| B` (b[3K)Cf@Ǥbчd#Tm6ZS}9fK= -QsY;hz߳4Ih8F+ R.fDFqT ~;@3=M"߿pD")!\mE]]Wu!<ܜ1KC&l%-~$@8Vn㈏ +;lnŞI%EQ^R)]C R >.Fb==m鵅"u0ct "XuF~h/U%lzx\1r:RHX<\WA Ҿ_\k7eWCmKk<MqT\>fE.Ȏ7N5,VC[uj{}pc.C+^RL`QDھluP&B7tZ>ю2u- UWٍgv]VZ_XgM.7jMc#l"هi\Im* 9Qoᕧ>U]D" Kb#V9fG~ ,;͖&;8;-m`j_z!JƋOsF`4HO^M$OS W{_29V1# l).Y)'뵵H-tP^EE gv= |ڑ@<؜!,"ng&.8t\[i3(LۺͨC ("Fxetv5(8:] つVpi᠊_ӏ=7N9"CL>~B[( 4_syf9àv㎅F F^X WD,-37>M3fc7jRDG}YS'Ii.N}T1AP7OSh8 P؛^,fuz9m%!]B>>Sh`G,%'5AZRuh;j/9vk"KDّF{0ϸD1&XK춷2>҆ҁ#BGP|`Md5ӿD42P":qxؙH+"~-X6ĵ V_K(k\ʪ89]`i.Xv'Zdۓe.G[*bEGظ5ͼaՁ+er2@HsR0 W;~I ٳ e_jEzFjRFTŢO܍eq~x|ȅ-/!oc"WPA{ -%^o2zCc/Q'+ɭ~|QNIV.*cU}bxcĆ#,b_=o9)KnKEU9Z qݾA0E?>7tpOȅ"Ջ bi>(HXF:=;ylM@bo ofaCZ_^:K(Wjc,Ag*rwJ^w-qf7^G'}??WU 6[kN%OH ak X'^/::<Lgڢ3ij?UW2IjHDۃ&@w~#Jpguو0zAԐqk)o˽N@&EeCwyH}wHesPo;q ;i~,^ Ӣ2x J݋mhWs<4n oߍ 8:ԍh}JaD}_ 5>ⰬTLTDlE=AO9$ؓ׆@v0YT?NQIaTr~d˸\O٧= w +R+-<;һUM-L/)frI;4a vgBf?<4>!}y%+<+O(_"Y{JiHZoeW,M3`/ߡ]`]Ǐ6ԡ{.kzTј8~7 5hʳAg0u/*|FbS5gNM3~)\_8W^4Ju^A!2߬3YEfD</pcˌ <+iҊJۗkiIh]‰WMe} )֢QI9U z-99}vDڠbxo1{+4IDvb#܇?jf#p0ɴ|#Ph0`\%{ (5bNqo¹i1aPFJ~FM*y}ÉW%h-A_>S$J rcYap~BǨ<wv5 Y{2FmFM&R̘q拐UQ#iB4x?N:.vhlVo;0ԧxJ)-c>p;>J"3bia,f zutx*|&>1m`;'yWJ#Rs9AsLjB#Za}φMDv8I=ņ0a+ "u$گ1?bTuEKV'o kنL3]'.Vlk( c؛^p{zжt U\#hEvqor+6eӽ(e)##@@w1uo0OEj =gCsrh>5;nM18P:ݼ"l,=qu3 {<;6j(ɳ.w ;/[CM2fPւŴY3ݔ-B-3Qs$2ZwU?[g JWNJZc ڜQT@*K9@=X>]$ J]H-ltzz x-1@pyO+\f-:l*79QrRa 6sZFN*ry CY-hAsth;cq#ߏA#MQ8M4W.mtAMC;'y34QD#K n=?Α:ŔčhR\|9!gia#@Dѥ7)"ZCoc_̿4c1Q˫5?W ^JX>Q&BWT~0ކ&;8fBW!1zQby8D'nOW1]"H{Y.Pz Q3*H{[Vښ[~e±ORK_!SZšڟKUgz;ʿ6 )|5;[EG~ouZRz-?*Y[`iHi\p@%"ZӼW]"X'hzǏ2y8!$3pgf٣rz7fH&dxj,޹0L㢅QbiՔ[ZٓCq8V Y,r\i8, xΧdȻӫe%9e/' Ln3~X]ޮ K(Hݮޱ ۫]gPZVrS9ڭX߀pEgE2 ep${k 7^WyEq6 ~5xݛ!e -^R ȷ2q}o讝ƞX*\!0l*_ y,wF `%N?CJ'sThPwՓ[Oq\%heS|;ixz+͚-`" fǥ&q ԡOPQcL`5xxsԄ{$HÂqQ|ݸ2q8MzUlrNI dsHFԜ Q븒4]`Z+blC3\nbdK~-Ut0J@Hx%v VaϺ!FCQ]=eCs"9U5t]ύl =B²<1#|ulV}.v2 IM/9g>(ih@a,ߣ0[2XA$g[V`@~>o *i-e,0D@'uB=P)*l+3'm?k4x ޚl@> ַI6,zr(ZUH; (C^ͧ-n,j0N`0"9.ҡfDIOD|);AO=GoF[VzE퓕H(%s@ÆI+O8B'Pߞ+.SWscHo^Vu/AH }?;i0 mX@(W ̣|*Fh,]ĞMҳ!r#,|qpQxT{\Z_4w^$S6(ɵAARQ@8gZڒތELCe4uo#ˁ gUw|B%$DF@4 zޡ7;0<"riLt,aRc6XΏjP .$kÉ* BuMva'L>{y1Ufd1|zB$k>SDB0}n]b*|l;'.aM:IG ?<F(5i홊OjAsU|g >[$ʼnvJnWCo/19tlk ,Ѿ2t ;3+By%wJd kQs]B@PQ/^~:Ls @{;`z0ؒ;"ž f?E38zD%If0@9^ʂO9r \ /Р NW+>b@9LWnwąIRCm֎x-FAH].;ߔB ŕHN%y̫0 VKG?\/+F?95Wy@9x[JF`N# ZLXe{>'EA|A]0`cьȌX,sC_D2 WzBcʻ_RrӪp/ddmvot.\C~q.9 Q(QjqlA?+wb}i&Ei<͐1¾d/% ۓ\g).6uu=LM_8 u9l+JҋrZX~vؖ%utFwSmE"u:r4MqVj K׍("zGhv]*{z_2/"TnrCjn`X UkarĪ7zD oAz41e}U6it`0hǤC⨉f+!cќ,_E7\E͟K@@;5@"ؙ:D7CGɊTJEXudΥ$iZ8Et?Dzzn X^U-aVsIgeF_##+.:8G5isSJb'ňZҴ#.]D4$VQ_MsjXE]6fX\~BՙG~+$@[^~3OF/7O)"D*Ď fpB6k 0Zfo|rw.-}PG0,pAVd`rl7+E qlLA❤`4Y&/wn+ sVy&:{äCof~|y`F=[&$6Tk8>lbdꋅ4$@AqF(bd>e!Ne%n`"auu\Tg ͨWʳgYbW[ouAt1nU" tpҙG+̢,s9Q@I0D'<!6 3 uX ml\+rm|9h (a+P~;P'@2\ :A`|e^鮭B< X=Y47Z(Ǒޕ Α2Eb#ӆ6@]A@l u_}P <ˣ'*n6HyuYw]j%^6qfB~1J@]Epy)T\"yQgahY5sL3 l`E~S*#'`S%u$:+1}cdv+ Q֮z  檾>,FtޑRY(8ԟen?Tx3(+7p5Vu8, O!&6)f8Ւ ] \+.< R]1Dk;4/ip)yonAeg!SЧdTffbpPΪ TȂnD͖~m3,PCB e?*01x]ji^[.&}Q̌:͛]֍ Oh&&8rLoȩ<գWΆ(%z%HpEnk#ذPwpЫ!eD(6@OLt& X+v/SNGhoM`ǰ` )RxK>$2C .7zᶀ DԌ|a7xF)g'zSSHo" lvZ_)Ϳ^0DUK]fdZBf yQHa$3 oM0 8,e}<Ӫ:a 'e,Ղ<}>#!b]K1Rs +g^_'_rzG=K¢;O0zWa6?ODSGWyu*\8[AS<_֬P,Eژ:Y \gm% W@z`}Rѽ!q dv\N՞U  x)(S"ޛ?Ӑ._bp@q^&(_Ж]Ĺ^{vߒ:~ǡYw:pFuU݂WN,%t-gc6$M [Ɣ0HH5S*6rh-&Ō.օ o5VޞkZ;I!ʯLpkmF5S[>W8&xb:Sg2SvʟPNi$99mQ_@$e JUƥa^{ (Wz_l|X7FQtj [)7$K Q)h,-#ʺȦa:#?jI@We5O'4u{ g_}[wi6J4t,MRP{T :hUU&\% 00@eN"OPMH]|?OOpuFOؚC.WjJjjlw}'R\5SQF|Є>|L$kOؤARB]d\AL}Gֆz\ u -t6Ṕ?ݷ: !l?/df=,-bRQ<fp=AIfX4~{ $qǍ#Ypn&CQ$FfBe]NZ҆d}|˺^>gM1rq4bqd,ҩۦx|-61 XeHQdk]ʂS˘[&+zt[f(-Sv65D@1jls\YdMbW yԗ8-9C1TEt^:57Tjw}NrĻ;ٷ;/{\ܜ h(![S4N=M&6Eimn =dge{KzOx"Q\J뵘.*%u62b= Jh`vBER*9 ՁP4A.È,fP8Wp^3%s ,dA= Hy{2? /L+lVi /7?@`\^ y[`"T96'12ɹDs:6`LYn0;+mt2z)WϱHICEf-_:,Jo>)WRwL4ku8_ 3'N&-[F~[zS=gZ8(a*+{p.cWdI>Zs h+J,+t^z;m41` nk5 40 AdtԜbc,icr*"h#2~ߐM*mS0lQV_uFte1 )R/vܺ1SNLdNYiAƌBjߺ"%eg"^ѡ)e4zTDv~ oN.1IEUhs?{y9!%]F|~-/GhqV{@7Y!n-9a:d,C\7!K]}m*]&dDaݥ{z[[U]GW2k蕘Y02`qL.]= ۜEޯ {Lt&hl;b)ːq;݇= Da9 &j4 kCk)ET"' *N6}J:$@Ϊ6e־MNvoBGft1 ,TxzM;~cw&ݏ2epdtqKV;ڴϭ'K5JS+i+w3_RAzSg岺0"~ʉ: f^ 1}`fd`1P\h4*8q&d{AIDJ?ԛUFߕ#\Wם%oY쑮[j%EC:m^B]R^H -o:xM A%l0H%X)pq֘6kn)ێ5rZ*x=BOQM(T~wA1L\t n.UL+&!s{_nAQGKO:1j.D`uW)C;jW4S txy 9=b}GZ睽Yo׵>=/(kE[Cs[Ņ<'SVD N Mɐ=,qӣ@#g^e4W&_%[Ct:gu%M;%#rf?CHTBࣝp-#_8])Zt"m:Ù7E{(tjՃqT~DNM1)٥1Uϧn6a5T*C<=G=PI0DZtЁa#Zt2(},*`d1MK=0 E%".7B!twP_F> N~T`y.i z`csذ>Nx lŗ0-"/ET+z'86ώe= h01~)?,$4Yx~-{룄sO`ݟX/bLk΃2:ҴR͊sɿ\"gdEQSvG)GSIp|R~uȹ^贚׽fIfOf~q,f~GIkXJ3Kܥl$|'(E~538eid zie Fs V]0*`N|f?8s({f=J뭍Ǧk56)1w ]21om)̟_}mɮn;|S[7W߻u{M*;YCC{o':ZC YG4KtMYG_2;w~لZpМ16ˢc@XҎDv{d~P}6!X;&H )yMZw쁧%<=7ClŊp_a#Y s1e=` u?sηAV ش^9.+ZWq!F.[iZG],_^]2&k;GU$T櫴onK5!?'ɕ'DZHuJZi)Hlx#q,X~QaĚ4B#^4PG7;*B%^+ʡ#THH^I>WhG|ᛯjVtP^UÉ}AN(h&81 1ONx9Ԝ,I+IEߪ&AG/By"{JIWw!3Y0 *C_Q 4>X|V q-.akM\B5K Y=ϲ!(RS44*ìٞQ}@ߪPGQMqgVKಫ*Ó{z}#3%qZ7ca>p=d@VbZ]y|~u{,+O4\*7%t+kA@}.}O"4֧WcNRWRyx2x?(ܺRR`W`I6Elo"½ЀF<_9ݖ %"ϝ{ˢV* HFKA8=w>-s1F"y dwwK}czU~ݷh 7!MSnCFkG]x0svZ)^ns&d ;>CrtK;䪢W2xFva8][6Z {0Fn*LU4O>=O _Lk7AI5`8*/T2^^ J6ځOT2wF !K \bʞZ]Y7ao޹ W8K{ &љJ%"r8B=PSO W, ]o) ?G #2q wQ)exE~AP;&?R+6k=|]pp|}{I z`Vniͭ/svxo=/v@.p3Q$liN~,l*-PVՕ ǵ>HRY 'ygvIg H0  XBs|i`cŏ,Ŋq R枖5ݝ f n) hkA62Oѳ=0'9xl#<9"[aln'߰a!aɿ"Tr8oy@)BJɷˬ&;ytG󮒳R{.6]GjQ`Tk"F)5,0`+hz)tj /_qSY1Pӡ%UTgy태̠n* 2-DyY%iD0>DmʼnJ\ozoB])o T3&q2z]gw2$%U^ |%5<-+6Gȏ 8(X"[ʸjx4En7htE 0YF6\/{f[Vb7SfZ56+~4Np Y} pj>$kSo2?AMu;jpq`FEփiÓabC:rg$x Cvsv U~"5vbQ.?X~UGNUKim(F9LD/*ה`56{!W4}1 Y0=KH&[sHϹ1fo@^:!`sA] /&Z`].Atۂ5jGq_maLbunGi-dGo#dZD;O` FɿeL@[װ_H]ûw峅-ROTw{y*sR;Dm TfH5@7 璫S?4&G5g /2g$Q5̯G/eoګ#n3u845o^.) $H+8<d]PU9̟-71 @\L(S AmQv9%]f?s܇}Ȅ}Y,Rz}l.G"0vJY 'x5Ac@ի Hٛ|E(9̑- pJa2ib'?ڸs N^#nTcg` 2* 67 QqnDpw4B۽qE$4&^"`wN Z3lXzN;gd_)?3{'攐kf$3.d ǃA(؅emY,dsɇc{s}!O=䲭Z~~a.9)R'ixS[B  !?mnࢺ p m%^c"3J|ME-8i5qq~}M }d PF]-\H])H(㈘6ӦF ˿؜Qu0&HK}/Է"xs,uڶpP. {ZJfF2&|vG,QiioTQQJJ$䈪Km7`yR2ovQ=O@fOR;;nqS' a2ygetr,[z djqcP7hA~]Q"~B6Pɷ+}PqUi։9z:U\YZemRKo~rp^t_(x@ΖF7>;;Rr Dnjj*s~O}Hnh먬 <[Ç2<GWjtI >X[{6W:42(ur5 znc6|, .ȧN߆G!usQOLub pf@A7rOڭ61{o; Vn#hʇA#KubGJrbYwUB '$Ml*9f s$8(}#P iwb e*/&~d^왁 PլSz/;s82 ^ybʳL7R%xLqBt{TQhF eRvxȎ?fڰ=-QO9=zPb֚΋EPޱ*G.\Qt?uɁ"pn܏ث20 t`]d&KO#1O_{շnOdZ(;Tjc?x_a:x-O@/ۦ°Kқ ys!x^ӓ*8Zr5CCs6 x~t.#V^5s A_t%FVŞ0~xА?+}'&tUےSZUVi# wtzB0;:6Mf wY\a [L9ݯEh&[cou}.>=vq?i@|_<|BơO) lsE1mJQSS\a|'mp7^|56[ /A_,,~w<YB[7PJR[U3t<=Iz@p((z32@/l)KۅKZ8zj&$ yg '~ gCz04]bKsv"+&1"Z«'Z F*h.Eh+@5"aj"]!l3wL:=7>u5JKWn^:҅ܵۍ.dwʕWOC 愚+?'3쬆7K/k%֒^wQS? TI$9 ZF"\szљ]œ2D)Hʞb"`[PfJ&#LGh5F}T{OȲ*%A`#V+1NHh;K0u<.1<޴ -)7XC1m2uE.;?ne̚o"XqU_Us-_뾝 NZ!2C@dJ!?x$4bmgѵE9>U3CVӿ3ykZAR0F`mT 2)4_rDN§,I6r ;0@̰7`u|))ιqrpIA1w B{5Yi^nfAvcVkt,N,JJsdap,`|wna)eĻoÍSX5(8;=?jKʐ59.PI"MQO*yMyXvδB?K&cU A]?㵳e;?P| ZFb2AF0`ki: y#:DJݔhB-DU-в^Z-%j: glY|v?xldz smrVineT6|g"1a"1p<#ƫ#'J vK0]ek4ڗlh`U+*:n0;4MUcEdP1 24xWM{+ă* #!%K54j"%0(2J&=$mŘmM +*^!ֈPRb ZxϺކ\\bU'<`> y$ yv79E}*?ӿ}sZdTyZk: & \K<[ߵ-S~"8Az {xxAyc {zWEoqMtIO>ld jKj/L<\]z(⋐f,(>F7wb@­O83Niۛm$U23[Z!szx8Kd ="!}.ǔv",ҽ/RO϶tC `%==y2SɊܰ u֚qK ebwjXp8|&^~#jkrǫxĀ,+%b&Zg&0}0 ˇ*Vu[@aX(uR<2hSr2mp|ڱg*cHyXo惠 lYW{ 9O5 CZ !el:y!?H:_|QΈŪnC;5,W ؅D̓*rƠfyS/{!u1ܘypAe $3W'嗨R[eT7̈|o,=K7J:(漌N 5MT1AycwsڳQ| \xi2Fl$@9ǯĐ8:<W) WqlCEv)MBS0T!ױ5[FٴNI1q<촜`K/:H+oWFmc,$̺+ܸt+6>V8ՇL ny;Q`ZI?$( DVc1>‡^n9YC2}.8^˿3Fnm6+@n gm5SzdP,_f GR7xr;}ʯsh!gz#Z8o7#:#S8b$50P*^.ī/!m߇*uY+V܅a(0p(، 12 T+:W9m/#23h  K>*Nk! k#:YYB ֑я`) [?t7 o͍ g)!lIPYJy-`P:` w^Z ]T8vҩi ]fl!i(e ZpKY(]쭳r>\B>ފ%6}{8W,_fS㹄lɣxPMJ9|QSj zHB_/)GJ=S =7rB]jk^'( "<E]sR.au-7fެ[Z^Eܴ6ؤ"_+2 lYY /&_.Ȑ&|]N]`G9ObΓaaؖt@z!Zx!>AdP?Ls#)M J<{T[=d"R"NG9X~FOl*JyIHU[c/C4C9<}+l܌p5+ ߬׿DK-=W=^xotK(ǨfAŽ@#nJ:N>\4vg'ޏVOPYCnHP,aޫ&I\sV{˙p'N8wi T吒K6uTAAeq !z }I.5%ċA;W~V@6˛Lxk\N|,n`Gw')ժ1w8+pm]Y4k2l1%=EC魣(T0ۯ6nHm&DAU󆶮-4C:"RYϡJ3 : 4ABJlp)to>)JB/Ao)ƛz y7ݠ އ>1zYBAdT` LOG(aplNTr& @ c&#YX|ahEWP&PF-(M;V v6 nYF{TMݤakT/uic.sfQ/=?/X?1j<2 I]͖_8ęЈf5}ؼ)Y(5 C',b 9aG^^:Z~j/%zm6`:OmyMcTTZ nKj z}l2_qE641_ȢbOҞĞ 2YC`^9)%S1Ew1(e(M5G`'o ϫ/ɐ `=T&UF5|KAY} Ek-QD}O?L4O}:T޷1Q |4։ߋD'``YT148 Wozn-mj&yW4AhVk[bAMH,@` n sZ5Ƈg$k[>. ÉMpLZOrϒPQ:z'2l76x3XǶR׭3lKZl 3`[(mqK ifOI@ɐ;Dã^Ǿ_F1lwm˙ q8e|EA[4 -*mCmכSzL\ W3Cns0=l8ۥ 7kJ\wE6OxꃙhCK+lf/.hNH 'JEW/'Cثģ'D I+:ZiBgH@'*UQa'E)(#`uM7]eZ|Q IItVW(aƉpf6e]\ ?v^ci̩t&|ƸʔExӔA2q$}V}J7Vtg>-A/t/l6AA ]M]PdMX(<)g$@B"_姻b ~٦UjBE޸QUjq 3.6/\0>W%&m HKӿ -A6ai.s|P຿lQ"B)ÐLk r [jۉkbC2}-Zh:Dhc ]yUGڄ5nU$J,07)N2W ‘ `r LB`PhXD`;&P'{}FM.6!ۿz,z?'`j/y07A"P]GAli|(|? tMQ{"񨧻9+ h )830i̇:U"ΟO51\& "K,[sS^"IS,eSa.&.bXUνлkex03.^H3/dU~9T3215')˸O6J֎޵-+>q}Ȩe1OWl㼈H y%WjXsE~<>[\-lvFKw\ܜ ╯09m9ɔV4Jy3)WoDiFe}KtaX;z+E*aUoT()>u=3Zg'Z>3oj$DcUSǂ*b| Z諍\)+S= wq͗%1kw&p|`81'фTC7NM c:ي2coNQ:ÎՋp) Xz#;f.1bx,.sUvJ x8]'~ l طTKʰ}{JeH,@N~5Pb@R5׫2#Sf]K]\\0Z:/l+6 @- Y4Eiru#u r;I=M2ҬB#v ܫӻe n1N{^m#Ҡ2&H)8iװ a#RT[Mg…wXͱPJFĜg%M.{Ɵ qpqom. s"Bc&$n^ Z]AGWQLĝEPpƸ%=xWюj1:Msp5!ES~.%m 陲ˆ L&FK?[<–Ւ$y<qYd-2I;>yVY\˓4F,@^c@DGnKUDD ?pg.ި9,%wy 9wѴlŧKpW'B <'-skߠ:nS/&&z{Q!%J Of @C$F6AOUc`F)en;(=*"]հg8g(gG>0+}B`nm(P5![̀#:%| PG œ;`yGeO!DX)=ؔkR`iIVb_IvXvϡ.!N_T?8~:ۃX uIis _wb[I]¦ئ=!jQ|7 a֖/s!\% 4ocmޖBD/uz= rڲ+&dW xgΣug?ZOE÷*\ ,8U)/V|fƝqXjx 8gi"0w dXGk Gdx㭎IN W{{~ !ӳv^V@63n̜o^\G`SʙB¡^S C,j-pau3Sƿr?EY~ޗt%$^|uq %.Z : IJ. _ϭNo~,|$\dX<Ъ96ECTZ]KÎ+ܼ7d96y%+Ma&pbԚsa|ME/(daAD$uNhݜeVO,YP1&ljk-TK&>gqiz̪Zs+fĠ #s>ظ'BrRmj2ވ`iI=yHXԐ5Oo <\ HR2mVGä;^}i!h` +ês %L:hL,ju Bi-ڭvio·Q}bFt]ZB,p"[9tr-LRАԏM ܲ!]OcH%`EjZ(wk>Nh.V`ԣg47Pth+h4?~'l4=3,3@co#P>δBJ ه^: 06&jx L9dGv<K K0ܓ9pYhVjH!wI[GG']DFì $`?چ,Y.uD, D\rb]ɪBD}k6.$jXS;G7%%QI".f:]KFaL#qq_?=ɯ#7zk_1`CeP=:Khp1QI>Zreqθakk4\ͰRIIhôu;%87VM]F\k‘M^EGRv;m}s;3jwk-jiziP#_ϊ=B3ŞI-# մ_$H=z& A#\y wQiCtWŝ8Fn[f?JRp89V@cvW5=ښIc2aMZ1̹b)8줝g`!#OM9tCq=I qe2;ez |D9l0ч";'k Xg>&&yY;5k~!1tPn"Wxv+Mk# SqcB7xTaz^zS "Tbz$uPȢ`dT6);YyF-4?gla3.JX$Zɹrgv.'M`cwp?Z l+kTm4*0x1p5~(O_oX2&2nGW+=joN q7KQ \CB`rڇ@ ZhD%mGmeY9juúMBP>*#,t0U84XutMpTpg5N/]Ze7ȃfۆ ɷyIJK{@m$͇!*c*%It @@-NOiS8 _q;CtÍÊR!mT행!^j| 'oӂ}h5ru,q΂sUJϫn'$%meF(ߔ˭7]d1>-? <&ei6R! XY@ |}|)l>)g{f?mmz3Y>ÐYwF2 o,܃^1~3IT.=ϲKo:|E; eiT5cws?a=T,Kc ҿV]1ZL S**E&`"q#>p y9p:B=!>b)TG7TUd$ $c8ل8 p{Tٕcw,y:Bn[U*79nEýwݣG۲h1:d|nh7zҊ>39p#ZlIIf볥3Vݻ{t# Z9PKdaR>Xf[`,*k{U7pdhъʸ/=pDnl>Cx.}&V&CrZŽ8%ϕ2uPRSݧMi ۳W;)67&Iŭ5_wcDop /Ű|x.* OkZKbuOF0O))C{^$TϡKBmq;7-3_:j &CB"/,O Ϯi85FvAUf+5-.ͧQܴvj~odT2(^Pk ЦKC8U@OXٙqʙU)ʒ?_<-4?|Ӑ\i+MrFa>NւR<)sA kb^Hm*jY+跉ύxՄ.}ϻյOsFT~gC(7yACޙT#Vdq{bNqWA,{^oYrF[*vx\N;1?φ# $5t괁S,(myGY|#͸ ?%Rt]TIFpP~nYGA}Hڻ[\,FBO_"-6GKk3!Ubu_C0a#3!oudz=`W=oN0껬sV9pf$w(I;ӲMs_X[VV*_4J4}*۲2fm&9x Ds_сƒK7ڽlO_EK̲P .4&7rrNFl E2>J MAR XN7ٚI 1m͊LdrHtq?pRiaԊݱS1Фa+°?d;A16'uTٱ#4j91) ߃5+vctHgЀf m6o~6ee[E\ jt92.Z=-!s܊*E{"(hd.'gBP J|;a{Og' :[["*"Fcw@OL;'w}P^)Hv_\M1>I,#Oi'[LG5Յ.b3dE-%yՉZ_5 _MiԖY 4B}[0TL@MսNm/rS|Y>vͨ~J%YARWn(s*_W&zzȶLoQRP]{dibV1H7'1-P޸݄nMwa^j K}6DYL&@wYUBj-sJtIq۬*U9 =s~/sB:>1=⒊ɝV*}臫JBA* ADqFYB@- ŜA> zch89f$A@aO:M"t]XOiR.[I[XOE&iɚCbH R5{0C+b9e?xw6^OL%"يWb0S%IoA*aOߚ,, kJr0:U~2?mRnn)_*ʚ< dF{)=aBln+ "+i-\j(bv5MWݩ{ҝ3jA߯jk) &w[|DP=.Yf`ؿG6 @ 2?B˔&H^jj||~(L]h؞4r๦w࡮?> 1 leWƛ2K֜g8s`?.0+3-^'mɭ[ˣ h3k"Ȧ%:.U~NCC|gI k׋B$Ghj[+:D( |nǃW?|xp|l$*"@qF9Aϒ-0BRMk#%?r؟M_Qa[ifV_ 4W][ܼ2@R:٨y b_r؟(L\t < d$cD2q#8`29r{6@3H |?ԈIs `pr c+oX#jўY ڂM//ث3شÙS뭾EtAKXlѳp¹sZҹ0+4ԚAy*VL ߟC6T7BdTZCND0w85I.YZ[2FA Vi<ׁF$D>>_U@{ eK8ܗOHV?XT9Bx*i\96 Z󖞤D=/?-R7Drqp^ kEPDc*q䢶)nҨU*=7QߐOE:߱t1F܊ Tt(@ Λ})zİYcG/z+d+RCڪY*`gF2[-ĈaW \hLGu[}h{fЬCZ\h$6*(/MET z-9؇L"CV =}7Pȧx1=ܶK @qدzV|WzMB/ tȄ_'V[Qc]@zgzȭ-:!^ͩpc~鑊z[NvnG L͈H0?޼ܣLߦ>Xݞ?Ǯc(kʉaN0 >Ȏb/O~qbu)4\6vN0q0H$kSerZVU)"p(qrbC(R+?BDoxBgr R]J`³X(T6t`KCk}/ лIz:vI`h'4 J))Ī,_Q5Ӛ|{xiqE];AS4MZ,4K =^4!?4vK7er;^Lݡ+dFx4$~RzoPxۋ♡؅s`5`? y56_lKTnמ$^oEK6<޼Rsk=ۛ8%yS$$1V4' .*0K؟|c\vf+e'cz xVS (:n$Enj*D:߹m53Ɔ h{3E[eoW tAi hTQ_R^ޅa/ŞC`v4G:N2Y^j&'CpͲ`]=%Tbl?Z[%ˮbv^B϶iש֜-31g+Wi)eVc$jl~hV5ԯ;96045Xf66W>$Ci]&~\4,DofAxE"eD tV N%顣R,a7C/ ?W y+c8l\ )W! QLMfmc~| 䱊M3ߐыd6e@SU'JJ2B,"I[3ݵCJ7s/^g4ugĉ =]s80M3T29a3UND׋wDFμЅ vp U&$"J+FlI1O+X>C~ ) ]=ȑ^[s^Ra;9!}-@K&ơhٻgym#U ċHފ:GᏧC{Pyf!Y+b9G|߫g|J\i|^6TO:Zٵ{痓"xI3E0H0L\탬0[ζNErn񍅹?HHoNaY0A`2ʉ*׻_5۞^<ތx׋J 6+a8?!&I7(#(V1`L:%ds"* LdoRGXhY't ӳ+vms=c٭3v)$NB+MnƔc>ސ| 3|E_1ǪYX&WI|%DQ$[F氮u&yhqaH*1RGeLow*0sjR=S?':\Y_)t,iu?w6рCpѪ(oo !$_15(Mz1S# sHH+w EsB\EbU5C&ܰb\QKr^E8I)^"|2OB!8Yӈ}M`k"VGYE#71܎rzZ6bkJYo `dta>o #:;Pl&@y=a<ٵ5"8Tlc~%na։)sF<,[ig#? |PзDS@IAEHn-,oذrf&jk8C&R4qU?Fj,QuF(SS 2XoxD9Ժ@,l1 @M(_o ]i76{ Q\!}d&:L'#q6iZ➽+Y2#_؅ѺkD >PI:~E`yr(S4EJɎ] lx n$HO$lRo2G{liA qICiyUA>>ܵMOmͺ~f^)҄YU~d8lX>哏| ŵdwΣN-ಛpH4 _H+'IP(t@yc~D0 `yV*/֣zʽYn%% qڳ#{gP#zP>xv#Jk@\"ylOFgZUcId:z:x;*Ii+Pi)a~Q|$@,z8W\XB\11_ awW' ;6GLoT wQǀ0-}f[j:1a7adت?foO~MHhsB6 %Bʂ.δ]W~6Gno`/"3Zzɛ?҂c)]OTش j Ji󂥲Q7U|EcUY!柕LϡX"//̅N\DUj?#|%WAUe78r/kc྆D#഍ZEø)D쒞oԾ*rTp2LOXz+(T1 qBBrN6M0U]`zJ+e0?#qѬb_ ʊUĎe,Jbn:JJM1hZm琤Ul%㭪ֱ^+nXNPeį1 LUT"y4'eq=O1J 9!abCRB趏;Z(‹)](LHΫZzQa}qRa*9u@FS 2}hU+jT~d?G#*wGu?Jz/9QT|?F+(c&AzACZn M鲷q~eoP_$wI-{M1V3+_EXvr Jc'n(S:!6Xmřr*T chYQM.l>Ȥ`x- AzpVTJjHb}c2%fv5` RjDaDun)2`?IHi%b7A794I6e?\!Ys圭 +ww} -C %ƏJ?[^"^CgZ>i_ڂ* ɨ)@Ⱦ˘0Oh(b~<Fx $z@n+Lߚy-3at[褽-{B_0 Nh|h92W>@mV5$.YUX"Z/a eFzAiJEV"f丐O*_mVd3¶){{9+ ܒLQ`zHsˈUI'q8l_ٗ*M_%ԗ7ίC3+@;CG56bk:xΏ]ZFNa0K2ymfr&BJsk)0 ݷZ09%͎.LT+ׅ6cQLS|OXl q 3j+;ZIGp! nb4VN߰_jbwe[yY$^x  :ɼى1ID6x1 9Zҡ?xvǍDYߣAѻe7G_`]fGGcJ-M yd}1h< U ԅл)Myp%,O;CBi'یE+ZGm ~[fqOѣBlG Hz^*V%,']}K|9bG+^ztIRI5Tw5#iٔoMɢg cKR^VcH˯l 2Ե]Aܮة^y1b@^4@y)[G܌i#s"2|FNn|z+"v70 BZ%A^C]!#HRiOoNm^ xOϝ92]d rWλe~2}s 2   !Pavr (MJ=#x}j~+鞉CRffx&`>O9X%xW$!N]V R||F$wP=)!>53Q*_~"w"7ޤXܟޞP, ަD2QN_e4{88NƧߠR8.&ʌ֒vX6~G/ǥ<ЩuE:@a'zv++'j\=;lIaY=2e:/<=dY2Se70Ju1-CxE-%^?p/pMYne\c,ΒU2N{.QȄ]Vuӑ5gc(c(Skf3=a*iz8{?#a9MX{-2JV8\~]Hx2TKL&o ʢr"mZiFR:{Y=5ZX\KM"PV QG^-c#E_WS| WLES)c(lyz6 ؙ8e,nA"3܋Pʺ\ 'Ipݸ?Y1߃ʼn*6<6WBV?KK0hvuHEgCw, nƞ1XmmDBJӈJC[#nD+>9p%!SaƆrݭwD,q;VB1C"}QѢK ːm#mJHI71M}n|.r¯eCt[4v%L̷K;bí)~eT}~O VR_c qŵ>MȮ?Ż}ʩ1{$5{Rv؟pp(h37 r``Fa }OL\\ k.(XUDW Es 5Zl2&W:`иzMyW gN- 8"Y+2s/3ΫAh+-x[OO0^YKnN`/sօ3P_mV&΢3FE:i-@oM ^Z?SR 2/phR& -^Bj9'A+?l_R]$R/Hvc1  15_u{SɫgFdōb^j}atQ2jC]Imaw; aԕ<Ȕ3{#\DE`a yo%N'Vqf'- Jڹ?]gQ]lj;+O%*].Ӌ̉6d9d]NCr3__Q@g&LO50ۦIL7ETsFwBǯS9O+Xݽf;KUkJzIaݒ3.A(*^yT̬Woli?7c< ?Hʯ(OA( WBDlɚ6'۱fȞ~0s(*F\too:bظd9{ï9|󁡴=A0n)00|U R`8ɉF✖fՄҖ6Kb5N8u:7"/ +a16f2X!nxOm0 t,,'"Ӓ;83]-ܪs93c=B4@HZ[>]ʣ֠Z 0aŖ2څ)VYz_sBl aĿji̹Qz*`peDR'gRy?u1` đ2ɺC,ݽ*đV,l By(ҩp)=3ASh|P19YZ8xNޙ}ξƇѾߔ Ab?*MUM[܌&,"!00I0{ksrPXosTop[G\g~~CVъf :%ƅBp>VUvĖԌn,AY{*}gJ曁Q+=WTYYPAwlO~y6Y3@ 7@c$UF˛3cmo/:`~2NҒKg Vhi""@{'A+2""G-dXi+Wi4$#S:.ggV 7MM84mϘ%塷.~$&tWsѤ$ ͈O@ R7G\s^%sG tX;[1zcGKEh\e^ 9A4>gw&F#R12#藗AJ.ձqb8'ׅǯsC YȖ{ v4A{z*g"^=LUoNKfQkղxE&]|LظkQi,о&ځ$c25R}OC7¸0lz3bWؓ+[`ZDF$` |rנH N tʥ9T WN]>'҇KccLUI6 \hq%p{da 24ʹK \8|!з>\ev(5Wx\Ġ;((pɓwGރt:P뉥1M? pAJ'HT%Ot"qqۣbHI5)c 8JVIg-U}:v˳{"Z|bH-!Ke }ӜhpW΅-is|2bAlt_%Y(рN+x<=I"HcANAD)$XR)\ΒHԶ!@Us۠ŷF|{)KOX!ѿ,q@ j7FZG@гt I,&0i\ʴhe>B|zvE篳Ge<gT"?f@ͼ1p[?1F!N?Pl3QY~>XG"Dx#VW"brK?c3U݂9uŽ{U4Q:4J %ND^xo7n=̶z^mcf1G@6I,3WEl7Ò4iX >3&UcIa%/lzA!3 +6asqӑHT"4qM[afzpOVs_zu`{Iq@9܃q<(ʺ81\dQ%K46Y ~E)nib,j=k9|͙v@lȺMiLݚۑ Lܹ>%o8>E+;V!>]fꔜ'p/F:yQQzuTL`5:9ꗴB7 9Hq;woA2);{bCpCiufD,in1h19y}z.k / ,K.k jw2Վe#cO-z^,o콊BL;zgel6ӕbrV}䪎埫`06fՖךe[b?V.jVyҚzS+(Ux0dsAX))t `z]+{jC~k rǃ!Hot}L,FH&)YM ޣܼѳ%.7m}}/Eӽ& XlΟFg͇凇C\XsVō&"{SnD^!Q*4_؆dvsE_ 8(090_LK%t A$PX!FrYc]IO6(ᢤC^ʓ`yN-sIHh(+bIImˇS>պ;D/=g'X:B7f@8^a,7gP0" >LsݽZKLz@oYz Hs|_E)4|V|kDAb6$4)jLC(؎^R":6o DExRxнK BG3<;pymcpi=2BAi!pDaCٓm#զɩ!n_[rұ&E=Y`z3IFJ׷` b,>q %bfśܾYfҬkr%獖z 0rVK*N/_ZUqQL>i5<4|'O'"wRNQ;hEIn-;\BGYu?3'PY˗;[/iPg}ax)?Kt#N0u `Z2h|sKdopm+Hu#LQ$t,'vMC:5@DLڠb>Ԉ&K~\uf-h,3%.p8)B~M$1Th D'ͮ j(SݳpOܮ*BҐV71p3D]j[H}exАc>Ԧhޣvv v o2)A%*,`'[5GbG)7xm ~Z˾-o!1e#9洱GD@%QLYT1,Qi㓘B }cP7eL"O Y dhi2(WleӍ ,ۢQB芔Tlb^].gong!u:B".~S (q_9\> zXkGO"`x&~OCbFI+0 +Ph\u?e5AwAMbO3oHP42Q LP$nEH $*ƽm ^N^u-h*o"zZ2[Cws=/lYF\VPmRFYܖ΂RƁܘcP n& R*dDR-fA$]!BIѕ~c㣉 M#՟d1L dYY ZӤWl,K,gt}!z8_~ڰM,5+w 1 V*AC培fu|WpNPa2"3۶>^T_(QV~ v5/u2=&a! 9UIDriIQW,ȎtI%t2NOr>6s?¥+g$0R뿙"S/W~ IK$|;`Vo;( T;,A̬BE]Ic`2[ob;ըmG,Ks 5g̀lg?;SƢdUNcQO6"QS@2OI|t'.&qHA Ge2?r';">!rk͆h3ϧ+o }ȣEOxٜFWK1R*6B*Ŵ6 RVP֘év_-ԻfAFezyiȗYR ;xXXnFSܡYm{#݂[\1} FuZ]- 7OӋ/9QdYT뒡0bY9ȜsV j-asT4|愶Svodf JK H-?m_p '#{d\L S$ ߅%,t/?v1Q< :=~ͿG*p1EQZht᨞h'Ghvu?G%r}&yCvE^>}}rPQ`-֓hxS?/+m)),پ Fl$:wK٠Slk=? (XB.O,ZDb?3+*dݫgZ)96 κަ=K,+!ZX T[^!Ȏx]tzޘVPƾmt:6(ms)RHyXorWpɏhx{}Q(R] )|&)weXV {qyT-6vvza|r( w֮윣)ށ7Ź Zp|?px@Q"AN$33Y߽.Cܻ@sF@`؇8u? ff/q$lA&N<ģL*@~a rrzA@ǫUx{ žҋ U/h3a'}I}EE }/4G1yfU-~|^ψJs .b.mN_dV7)ܣHA6r \q+8Pg }D!TӤ:CƕƻUm{jTfzJ04< $_Y.&HN6fTrݍk;LQYKLfW:#MU?(76Px6knƔoE˿i8o(RUBK*ɭ{-y8Siif @3Mb/w0%uƺwb(m\E-ռpTҟ!pa;o3*HƄC{?%-yHr|"M8]Yw7JV].D\=u{Ֆ\UqWx?őŵ>=X Q0.;}`^3#Nm\bCb5.sz#C;m_DCp}na̐8(M')fegЬ0O73/2b# q+V0^;ڭD^R%ڛۦ{Gœl!ыsА|Gȣ WQ&|,sW,Zm"e/@kɃ++#.ʳ>siW„\=!b QypwIAg_B_/E5>="kKs-$欬 gdn‡4a{_Ȫ(, lr4HPd#s&t2D{H06ӣo3{Tee@U:g#!s!jJ4 yp ?z']vJQ8W{qj a1ˁ0 w<k~dЀ1H~7ܬ鉞){).gwK3W V}VO :'*) ed(&k)2 o\V{^;\x [=@g+ӗu| ѿ{ LL$Jri( h|' BqQ/t ̝;ѺUVYFsm[k ~ve&nvWW1/|K ).cbaݭ rRN5O $UFKBr+qm`u@ _36uŊe͜6)~#гvT 7r<ηn;m>'h G ԁz7GDZiU/&;KS ^z$mM~`-j#XL/ NGr7oDݗ>2[0z-zX)Uܡ/C> F3 5]((`mPЍ`Ư >3@͹ϩ30Gb=F q}6s-U`:K3^9qG?Xh ڈP0qm '|gޥƔuy2{q!mr F0([ T=/כ,HLdOˉ#J >i12>Pe2²)|pG"8qGJ uDm?4*';c2ڸBL{/LMKmsC %e}Õ{]lƵh:]ܽBc؈WKk°BNĈ3aWZnAZ҅]J{Agb/NqR֟fVl[;R&-q~$19MW57󬏅ڑi4MIu*qE\`Vţn^`82X[<+P-)h~NZST3jE:Uy>m ж /N(k,h瓚ȒV+TI9"jЅt"_b4p`D8Ry͍Bo W$/G30|W<WzKBx! `*MnF S7Rhu/k#^[H"$2Qu5@RDK|G{@}blrLy0)xDB'x%//5ǧLNݔ ٟ^؏sgwG)0{6đ8`PMhTw PbhA!1rg "G'C&=΃v' 5TGumǓė%{J(yLL]캛P]p5NnP~I~H:2{= gxOoD"VسPMk(ɢʜ,$]bǜqn u4HT}L] }ty]ۘnt҂s1f=֢OsSP ǒw++9ܘJ18g%ޗ2Aw*t#2"/+w!''qs MRo-/4E'_8yNs6"4* VoxՇRL%FMBW3p|oRoS]`Ό-J@ ?)CK{-M^+nj|Z[BQh*ITkwvoE/7|v^3P)FvS aS=lDjH @tw0skN:g6?5 Wc"?bLوQ/VxY_ʀC,nNxiwj 4LG_$ &wLvm>cz:?s9jQ^z>Tèr_E3!^(^ۡC]X^OժqpjMQޖS>sMPNV'OC%V?˹U!$Zwڴ+)Ceqd+%59-20Q%Wh/GJ ֲ]:t8;< C2p0|d!IhpT-yQ[K[Umr>'sENQޗ`! AU'`@U9bu8m[6a*i훾Np )q#=( e.cd lN<}M?fQ5Qk2B$XJa7?ezI>iZUT;gaǮAfl>IJ_ ̩t(;DLN|eSDY3ػZبJMusOK ďNopwfʍ(]b)?+[/_4υ>|LnCoԜ_U[I5 @J5L:W"UFc9 e{0V6rRjt-G%嶖x& O$x(cH43enj9~'wc> .~+и݅o3)#L2[%~Rr]%5)~ Z'^{_D؛Eк D1pnXCx/qagEr<;4Ʒ;‘ݐo m3|~y~,c -.4 NL$l!V`[@ӨbЃʈ2>"M`9t%%Y$k?{Њ:D1:WjR81W.p 灎w?Vp L'~hi31[!䁕7-K`)9! pӏ._7Jey|l,ThhÞ$\89A0WrUҀ6Πd%*><*dťm{u#uM$bJ͑D MeB61Y&Zn`h0 <"ޕ\da53#X[)0k7]IGS sGnlPi4b[ nA $U:&LJ؞o*wXiΝȝy_~Rl Vno̠ ,ј򻿉Eiw^̗DFz˽[d2řU~9<+a$|q.C˓u E4 tMuêAމ FZ\L!0>Mbm ؜;Ҵ#ߨQ&B o1dNN]>Jne6p3paB=쳹;g؟L!#ہ)Sm߱`_ tPL!7U-Dʍ{Bo콻D ~r$}w&&ʓos'H|Tߴ@-Pa4ҏL0 SSɑs; hz/#(Zzpm}oktD٣cG>)ԸRo膕zltqӿ|Z_1>tŇ}t".$E?@m#GWJ vUۏ[4ϩw] 9}q) lwS){(-(v}&/?5lVrţh'/ʜuw9oڐ$x-À?y baIU:ӑ[cױ=.U,vpޱ# =N6',Ջ %T0ЂOTckF}py/ޤm& _Tb#@b*w`fN poy?bK28/ YIi;K46232䊾 5Y9ޮ`I/#-QOifH1h 5- Ww#DKlv)p:eVȽ; PorL2W/P2hl8x\8$W}J;k^&$kɮX'i,2,-i&.(3,Yazjw@@ VoܲrKٴ+)p`ٲYLZ3Ѥu: Gk[Ba[I;3zɼayY$yd﵈I$T~D'T]<ڂP&N]8зCX_՛.lg zͳc1]q9v-q6$Vkv&z"' b 9ZoxPv 3yf\LNr |k U:mhaxfIqܝv_\`WKxiϐ4xD~Z}Wu6A oP=h I:߭)PU}J/a}:6SW&WUzӦn=`;F@mF&F`}##q{J{rVw_%dRML)QSQǁh.sDŽ`a M" UR1E_O Xv/`*6X{zg{J?7N0Zl^VyH!r5=2k{}屟ĥ+(̄.nFt4* Cqp*u blYP%=J=4p#X8nKm i`*r'ku9\*Ro_@%)Hc+(l'^LBRl./U鴸2͘lt+{_]^SJjۘ6D7 0 Y&G|8Ǖ^ă!U{#RE2$*Vn/uf"e4qA")mZ(T)#Aͯ2wuTR(`LYlB>1F5Y}B5[<*Jǥ\1GN-Jg e %b3^꺜Xu kB/`( $îVo%H>]c/n(P̚7Mg۫V#N?mM 9ZX#fnxd؞}TBfp19qѿvXlGfCB pU (Q/PޅY*Ugɷ>[S` @bt-AOW Ku5Ͳ<~p\s/@>YC2U Of!@+$={ϰ cpܱT&7RPHSw=w ItUi!|B:ܿ;}V(Q: BetS 15o .:OQ-ZRN*Λn[Cr$]Š@HW["0I ,v->V3 sQUQqB$\zJh<g8ZnHz:ԒG`!eqD꾀A^,+fKI6 J!{(9q}%QOU;ʺԫ} ZMxV\xa*/eLujն/ƹ!ͰlDbmXMykn:c X|2DMMD74=<0&>^^ӷcDiqx6Z[bMik4IK$ťܾ`ZJhm3@3Ȭwyy{XEsauc Orf=k\sOIX$93> R sWBEYFP Ǧf*ɕ[JB”G-2=msy|(JlB| ;tDTNtDJO?IؚZUV9ҜVz‘yP_>$3\Ue ā.w"l(*%M3HSCYh/iKUH{r{$RV8F 2h As\" ;tiG\ݢ!k#\f~;Q2Ef+ٌD~GW`( dݨ$k&E/FR}".T=jMxܧfP")OT$=a!ca s"lE<̴W+Cy26vɁ|sv*8UYz˾fT%ܿΒ0vIT# zaL hB5R3_Yw`K 2&Z2(CKH:hJ͂B.-7rڀ8^ں.gpzSlZzmwx3xz 5{ CsYډVǮk>%R[R/9O=Bll6<[γƲL٢("wk,4B= /ܐ A'2Deq!_v^'e(g lm=*2,s4C\YLdNx-#b1F w ݿ<% D>,5|Y/*ɌO€7SuL XυV5>$1.l&pRW^#L*$mf#so9;A2JR"*$nu(Ha)zF |{u ,bDH,W;/innuϞ4F;tVnB@Xs7VUpFxK- I%܉Y:gѹD.Sk6}ڂ 4[TG^'%~%/n_Jx(!AR_:$}5ʹר%N&[(!)Nn*D_"u *s.vŷ ' _l[QȩIz+^wfo6euY +'bf"VzUq1u.貚XMYa)^jQq+jFޖB/Xavsa}<U0 (r!XI"BSm灦Q8ΰ责KMk־ro]w뛅WE&8e]aP};š\W," 9x .b>w5_! R?Hb⡫$mw85+mO_[~IFo\X")fiD9-騧gU1@{9dG +t= ΋I[;{ *.mݨ,j|PKwcA UΔ Jn`ț_Qpْ|$']ϋkߧXj&Lg>o[h/(*aq@}+?%xWآG(dw{f6Gdm6UeQi z;$ԌTA@!M݈$ ;&l+mIe=~!W ( -#0>IF"tBCH)4P ^~¥m5.ǘJxEӞ{2фKThAv|5Oc EW8x2jcB0\läs@Q%%Bz?a{9bnwЫv4=ǍI8l bÅxMk'a6kT(Vל/WDe^L"$:C+R/Pf>bX@t+ᑣY.7jCbuQnGukVp8O15]Q5Z_z?"Sn夀A Hs/oJ$]:37pi-2c8EJքM/eD;*UVkeCM1SK}m\ȇR 2.E[[!{rnT+:[d5Sc,|vE'(r_TaVn$X⋻d웉#J|#y<XʆrܥPKP}HmuIʚRa)\K9QA8ohZa˷ ;?O؄zVK䎠4 _a8P$ymV $|ך1ڭ wҤ[z:*碆h`frES>3:bk ˧Trʉ.#ӓҡӦi`=Z -(~6c-Rm"C:J]ȁ~T(SzI$ P_-,Ch>L,eȽdBAXFHf3R$V!M^ t\Y:Ъ=GNϫ kMho 0&7{? d BW$䭏F%4#lB5SLiehEh4@^ib`DF'_ bdL i[OPv |dT!&6/9~>-#eһuA4|];V,ֹ5ܜB>J(E\XȡEKۢ=ScntO1pU2@&5~SrM2|QIJ,Y,mH Wmzt)v (!E7-6A1ÊuƫHJ-WSceuA3Z4)o@l0xM8&)*6Yk2wݤtp) ܵe #'XRMV/L^TYX轌҃xRo`hW ~Uml*KR^̐2H\}YϢ3_ -] |eN]F(<>dkjL &U0mj|͢,rs|&er`lcݐDطm/JLz&pCk6 )UD(!f>#(ø͊>U+ }R79_WAHh2*$3^t`׷p:p=L~@@}JѐL)w,R-DտPA9ũh`cxa|PjơRh CO!`)RE?i;ABX V/)gz闦D"cUV+5LN/vB%WmNe y1!ot׻g8IIn:;~&ʓ?<2Š5 o!t`]R3g{.eNՇVL^2*0D@J[5 ;4hd*E1s4Ah'~ @Տ4c1}q8<< ?GW]u~if ݸpdq}`Ywu=OZ砐U-0ź:ޑ' F.xQ<xʍE4y>V+yFYyaRBdٙPyu)5RKAbۡrxsUN &wHD<:b%V+Xܾ7P{±-Kp }1?{HYBs?Az \ghPB{@ E"jΪgE6Y&iOB|zsi bB彛' zC;&:]FdcR9T=c!5U שU)xEB/}P'ƅrG> ajn#jܞMS&FЋ5" zXe01x x%|6 :"jRHއP P+qk LNLyk9L#Hdxto֕ژ 5#E|IUW Fr2s0gfV KaժDtҘhlZ2zq6F6 E+G"bܷ+p3HzhB[pF^W8ٿD|SnI2C/wňO 6(:,eesL=Gʸ%nhv@<,lS <$26qxof3gڒ Zϱ;i$<҂0' 1o.|}Pg49,X Uq,k '>?-3'@oϬee_[mRn1ZuzʠUWHɿ쨋*͔Tw&043ݚW[)G{KCmM{oޑ8~Ez:j T6a^O&#>fZjErVB'XGgV5${ Wl4?O|c /Rmw )Ǥ7=rW~Ke(Lt#>ќNR@CzL56419"HS |+78Ƌk;.S:EG0K'{0& ح|Q Ojhų6|d#їLίET$vӶ%Oy$ϓW4k|։Ѓ2ŧԜ|_b$=;6`{$Zm7蚑% tĪLc *&{VzPASkϲyFmlUkUU~}WDB<0m~;X-@s#^W9=%'ȇ)ARZ 'w\W;ڊ]Id[ _^})K9eAۀ /lȻzĤ&?x] t}WႍV4/1g_( &׮Ëu>R#Uq+yu2ZD!=Ynf362noL[x{NYq# V*~m76{&4!SQ]^ "KWKT`? ۞,2͊{.][=fmt܆Rf2;x ӌ$hZBI#lfsl`jO vn?*[=FW rRfųIk1fOSr{fFqCRA6b/v>8•"m h7V^GF˶0ǕKj7/?+$Vspr g6zI \[b2'QR)RmMfNJk?+^;YWsM6t쳲$As vihs vWj4`IeL/ZBqYN c ~]aWeüRٶQ~^AὙT1 %p[<*HYC܉^NP)ilW?U;q+&՗_|ڧs>" {A_JSgۡ(S=j V `R5._vx`n(b f[y^B.Rda92"u;2-ٽeR=;R:=U@.>r*&?dt+\οFL=PկBOlmͽqrV3^k#Km7c?>3xb"ǯ!K\aeǘ\u0mJ}D%fiö޲XfydGy;;ޠh \ ]xDǿ'{`m ְ)\ %bbBLoFj~CUZPsq_&_LʙVYL:]xDx٠< W-mR8l*OqN:*8Î(Yh )35=3-.\`NK"͙-r05SLnE`GV&t1R^am@S$ 0Re0m1>U"Z:Blp>^0닍tΠ{ զUwB¦M8M}l-J3X Џ޺127Dd@z=Kj-7wƃg}E]|!֩,GP$1b#V Ziqs jw0 2?eRf 2jÐ^)Z.[NzBeⲪ-c= WV<ǿRtH[Zl9VaK{YG.6/r*"e)oeT/6NW H3o* @i!O7x:XA4I'rÀ^E:i|]ZWEcICFlƄ#7h凉S76@ CYLk:L\g2`M/=>ELAy{K*}d2Or[묢WnW14?61!4]_4 بp(G˵3,,z3Y+d/.-WG2>˟Ryo1>?;"-LI8zq8fS HWi5qxcB724U'4%8&,mǧm!V1Z& ?Y$=@9UiDm V #mb/M ~J=D.s>Hp?gLq4Hȓp&ȓBwlDe{,Ҟ[ RoYs(:'bo(-s+`ZcAJ!e?ԟ,QVJ^Rpq(x]PQ섶V􎗈 وa+ÑkEfm84w$Ia^2\XDxzhVReKgL+AK5Wj.qHt53'rq4)P[3X Q^@#/{WA@0|"rw*s <| #xge.qAZ:A~!$Utӧs8ţƑOP \Ee'M>[eҰB8Kɭ9[t_yh<o/s'oxNf g%x7u)l.V fQsņM?tpukN3&|Bb $9ǒ%a\`#gSa]F= ]l4V-(ttQ"l QxvER&>MTmkLV뻟ja">bRhUWbw7QhLZIm˕#ZBԡ%" O-h'i~ڢFgfz&j$jzQlXlP ΐ1e{ ]UY ~PT h+l k18.?VU/KCOKIUݻ9wFoC;oLOU1("Vݯɀ9uDZc#88P5Z`}@r?.@)HH P34UҬmo'k'(E7,Z[^}NF򵠧y߷nw&&\F<";jhĭ̌m7l_O!*dy8:=BY=eB'ka󨋀aֱO`Rw.bҩHjY썂<8qwAfp x3^ eW$i,?^.͟p)} ႒8b2"֕/p 1NhW\O5y'As‘7,-:qj3R66YS!^,ip4/|F+8L;֓iC0FR];=Ôo8"M&5Qn־ߓ,Rv߲a7>{Â0$em}_0oh jaz`a5Lѷխ_Vb*eIZQ"[]M$ϭj(W>ї%ofB$aJ3z Ovԏ nr 7?n0xe4;2ccc|})A3 qr4jJ?Xx4PcnhIfnd2쓈<1c|,44˥N:ßz<&ivՕ5H|Oqa2"]1Lf .~&e13ⳙLr{F[@zB)!Q> DLAZ4eJ!`51LlIDzY=WƎq*]E% @sa@,+?P60.2twcX_򓬰( wZo Z4`v׃;E7ueT6\F+d[6klX(G f Jx-(~N! a=u ڸ֘QɯڛEv%tEE~Сfx;w&OԮ2tOӞ?_ru`~/OV[/ *rC|K`l)+?pMJÒotFEH$fqp^^۶BlYjM/DPnk2Y'XâRiۏ')ɴ *hMfigt~vpb6"s泏37 jϦA9 ͖¸ -p!aVlU@ΌJ0]~;tӈ&Coha@C#=/KO`>q`d]1Cc}kNrGfQ&.`C'0*bm4q=O9Yϑ.&A[G!,Z;eդi+<[~Ph(!_jrOG2Sh-Ao݆Ab%n)h?3GQg4E󒂫1- }ǫEoZFħsxN6;`R;$pXV3P y ӸNW/HSw3s3|1sLbzs%iMO㮮} }4b Iသ3Ұmu:xHـ!N4@JT R~{Vbr^IMY3-x{ e9N#*NƏ#灋La%*&{/ X|wL8Vp G32\푣rr3B4Q!=w9\ķb>ܷz?F_CD|g)/m>] .X!oG5K 'OW~bv4JicAI2LqJjKVhP>&h3Fm[D,[إJKwU31pP>)eǫm'@`ĴyT-♜O-`PRVN&;|Щ( $ZTemtlC^45`zɷ0[6F+uPE7# T۟Y 23~'XCCۢlc*C&Ti33>5o/+3*ٯQ@4=_'Q c\%sFm+1PB}*{ J'P,i8EXR=̦V7gW,qä3z\H/&{=imSBS}U e^[(Z:Q0[f>t3bav˄6(u"Py;fTyz'ڷ?$"3j=\[jh Z]q}_IKOp1"ud?>69"!Ю<v|:_j'wMD2M6N9^hؒFԣfo۔c} L >NIG~2PY@nIc&\h";4{2i])NJ=y 1̵-Q'vTL*vߩ Wm;=X-zܩy0MyWUſJأ[Z3+r+50+ߵrtm;H9v oS@jEқF{Qa, (S'üyb(LCa$- ɺNܳ_ӷ=sz礔>7Ի(ҹU{ S ׺06-\2r*o9@EcXj]@cfV{8!ԯ%,h&v:$`K]LOqqa2glMNx346W@bu;ԉ$@NtEUJ;$|r]ED %+wvP4Iq=?rD sg:X /+L8F2'.P[^I"FN3=Icu[2lhR:v 4yF։* 7;. lmC'';lu#+F8ȋ"De8}lJfZ7x'J;=fcla;0ռUHcwրU?{_rpJ,Mp`e&ۄwg ҇@C@O04"\}T]k|P2a*Ak6A*,gt{|ZciOPxiZmOG~hJfHNW޿ 7WZKFd bޝtR+qe+x ~-2w 5B'^sg BiqZwowC5R+heOm0=aYx6I{5G۫C-4I3*R|{% ;Jt0QoQJ5q(3ct˵UQۍe 2lZ {ݢJJrx.כ 'xV>3v0'eel)-=Q1{/M 7Crx7:8$6;nzۮMfR<%7\khb.)*ljjVeEqǕ~0y&/"1vi˓_6mAPU$7-cj5W czWzKf(je1i6j Zbۈ#O{o_f׎Ij"n)IOJO Q]="s]Q1m9V,Wxp.J{NwJdg<ǥZRhPsVm¾36щ֏~D`]߅R'SbuQ.-xQ{F'Z3T-)Dph+~gq:ߞ1!'O!]3#ᔉ 5vk kFgzs)ϛ8ӟZKHaI%-z2&[$Z`;,2![](Nj`XNAJ/*lPY",BǭqODfG/q[*O#)\#>31C/v:qpB`UOqoXKx(P\&7kc׻9Ր.a5VA}Y]~ A('}OJ!WOG,Fy`RV_Lmѩ]JoiPj ;jCJGB#9T\K2D>5 xwJ]%hO{1b99 ->@u`ŔLx́(G;x.r=B砮w;. <${{iOfЦ+Ć<ކM2rxWB|}~KЎ'sRy5^y8$O׽B}tL:^)}o#̩Bgڥ/`۷!ʭT;~CW">j!,1**30 ]j7,8rP`&A`ىS1θNc$o TBH ӁJ.f%<bsf yTFt+æ fɑkvoqa.<,ཪ:^ o'%[;4L*a7.$D*4dcڜӣ+:\V(_7DWFom4  4H-" YC$޼Mr$QZ15?4[v.k;{!ߏ@-:3ab`GFac4%uh 4(DFt]T ,jɁ'L1Jf҄O@K V_|:nȁJ G" $|%<Ѩ+ënؾG\^-˨‘^HW}J½K KjZr' <~BKo 8T(1Ҭjej_d<-w9q{^TʌP̑ZDkECF+ nRX槿X04BBMŽ/oM1돰Q^ (Zsj_ڀAWҷG+$fOОy 'py]e"v$=ZA_yxvW tWR\Y=EGɦ6xQwHI8nZ-RF{ZYC,LXIQm#~F_ 5ĖC:񊜊jSf&| Gn9hO/=zj M\ ]l8FHDH\o'^ʗD WD?CR1/Ы墪}MJHc>m@@s1հ\dTȗX?݁ UB/ءϭ`gvt՗o߰09LP2zj:< D"T^If'kf'Պ/? pE:x${$r[^m&`{b}Q[fR$1dDNz~ZD[n4yuK"NW{15Ց JwvY* O]Ee8*хsa &?'k*ع84;۵EipzǸ21}P|:y(js?w\fXczwA!9˚˙tdY/'Byj{s ؙ-qM54tK *Σy!gFzR(Ӊ.ts 9;X'hk jS4:]9Oh @"Gf<)48t9Q0gzRfck^orKk#1{}+.6ݿ0ԩ[͑+%I =(?vzQ9v8Pр@>Y/Z1j7o3hDѤ0qχD{"M4 Xlms)`ۋ`9y&#㿙OSo`i1ۇW+mY#s#uNSOPvjcfB.`z(SxYk%w/A%2Ii!tϏC(~1oRq^#ŊAml5{.3+V6{!,NG*NODj(eJ#Gl78>VOwlRAm E<:t}9G=c嚙Bpb\}CGz['V_:;sQ7OG/o ^;K\ MNhiM(V(CR}(-#M=ڗ{;{fq5`$NOt#e!|&3r' ɰ61Vts"O시:8(MW)">Z_ooR~ p&Ḵ:ûT_2Q3, $&aIGVَimy4/]?Ƽuu8jWiq{g&'E/"+7踈G@'*uܽCzP#&*"%|U y𗊣?(Z蚮Gu5qoӲT%/8֤Z <'ڿ\*PMdPͥT= tl@d~ϫ {ָ_J; 2mJـ!q8?zwɛyxCjɢ|A&(q2S))`WT6X:4m=Ԇ]-l1t³_wr6KbAjmO@8t#YWLTrOW/-f_ S7;"^=s|Ѩw;xthm %, x Px=_"린Q܁#?:d.|䕃 Ps e,zgQ]&jsꘊ}OD'79f- RyYnlL*-7`i ^$Q1\G0:$ S<9:hHS:oo-xa$d6r ɑPx0Vde=hm-xU|g&<=X1M%C7< JQ2Cx_ i%jMɠ9m"X(/{JwG -db.T}2NlmN 3ԩX:G.W TO .U"073ʋP}埁t}"Dr~v&s?(M|D^X Ʈ!z0V)Z߈ȵl;~Z YTt;a82EB͇b3GOt&^@#zCiͥf1y'A([H툑IM2r@ W0R5#ZC&A=:> ZY>l"f3n%r3^2.5L,l[ ̯opXA m#N^e;ϴym1Q g}NC]cHorgM&TNJ ێkT,Q.1^03yG#Q q"Sm)VWA& YW*-NAO) Z(ɒDhY6gzFK]Qo|0DJLh =S B4gxIeswrN:~רwQ)qpW(f}QFp[&xaMi=tY,+L3F_eM_&'.忟`J1[Qԅ4)v|&eʃ2pϑ2-\L eIw;;)) 0__T:BGn}vklZ f5 t}x~mp=}*v?"ߝ 5uyEVV*Pi8v͒ن8ͺI_as@pQ>D6Da1kјW7^ME;ܔK@O >,$R⧍L~ȴ 2|SLaSL[=jN|2&m`DޛPen&$3?[oeW11)YzR.-{aWTRV@[ۻRC($JvjM;"=zqyTE |lgl:oq,vgw.)nZ@_9tbT xvyb2PF-^{sX]R㳎V#⾮幀T3.Q͎"QMb65:/GYJP.ы`D 6wO ԻmMv>TMg0UR8Ҥl "#}Ֆ^̀%tY6nRQu ,${%?>{^R0tNR0 P8,k`$!Y&X"Ěkh-83m`VoCmG>-0{_tu^P*;4c;G̔zЧ4u`hC #4jI-X D w25z%V gT _RvVhwY+[m"b—K/M3# Y 휘ێj.D͂N];[s8Pdw1L^F}nC5h1Fxo'q ;wLQw' 4,HNCMPfy6DߪB,Z{GIY TZKARm\rA7}E ȺQn ,OB*$CbYcF=6-Jݦ0OA+sf}7&Dpd8f.: pk(|PK߭oLXYa-0JD-.qTD8S3Yf9%?6DaށOj7A ) +99>s!׬gSj/ɺ RlSʓ{} 'ik- |SMkqpkf`, 1eٯJMlP*wAVJ/r5+/kB(FkkggŌnk]B Qv+ܕAa0bҘD )i\5zwFI815,H`w\*yь)3bEg7T۵bܥv: Փ79QG8(YQdV~qdj& 60OO uI_T%4|`^*@CVqV- 0AQm}HJꢶ@IO{(ځ F.2'ه Ee[|z{6*~;:E8%_PejUw4]oєx ؊[gza y0G΢uTq^iWL_>85Ys\_`"#os |Za82)Vu|yuڕF 0\zy S#7;֢W&--6 ԶVg8dzӘ ̇YLClO.-q> `6.#SmӛF15g׭QDA7 %rNZ('`n47W?PaTzj`nzc>@p"<܃@X?}焂oa/\aW@ΊU`'8x`?~_1!ޏQմEK?^O̗K:&MPk2V1۴9<ŵ};0#)`b{sk/C?ok[{4otŴ.mGrf 3\ & 7鉱8M !/r011|XuZf25 + eyAq(h]Epb[a2/4kŔ+MųnC1|> $`ۄsHyey(Ԟn+|qb߭I7r9ӷтk0^jb&LH@v,$a<}U&RfVtiJ+Vշ8!nJ>s[{97\SƆʶʴU-b2݇9q2SY4w}l~-~V>8۱B)\<~^r?L'ۧm *q,K~cajAD$.p/S ko3.E@:Zˇ'[7k,<]F`OhBT^ꛖBOv]g5<~+.> . 4[4~1ak[,%b.&ʤ'5Bh^Y8א9PѦ kX3 N_u-h']ML~VT:lUv]_+4Ɠ>}ΒT$I>U \HetKVb [*#LG.ܖLAp&_NkGeV.A˜/9KCla,O䍣xwEĕ L;ࣻE 8ndԉ േ!Q͡\ΏQ1oӓkAY,7VU]K%QZk㽩Αߢze|6i$ 4}3ɩ|Z1OnCV߄mӝlTB>"PqkxFDoBBd_'6>h>q"JQVݿR&-N%uY\ -Y*-B@0qDΗ Uѱi*]u é*tZKziEyV(y!7厡qDU9v'7 5š]Ƀ,JWY=l8"^^dBqFlp384Sg\ W|dYhV#?# %􃑧3n2@ WFnz<(㥾Ekƫ6qa`HEp%S^oa7=]|u(֏ϣῌ|70wesc{oS0t>x(R }H ˰;䲨D|PMD/:3^(|"R9όHKV#[+w. vB{iTdhuyF(ҚBÔ5 sFlŇ*&iҲ1}u=n* 䶂[Ձ{,"^!EkkYAxPdO%@];{\g =#b3T﬩#7Ev[4N񆥥yߓ2v-Y|m"9,C.Iz/9'iaot9rr_͇4}\_.ߊ5p+Q;%H+=JCnTh:Z=בy1F{ZCS$G|U;BqAy/_d 5q=ԧp(@~h/ƁV oyi?[ eSt!d-eE2Æ(+Z&CToDsa]1Tvzׇfc2QߍIRgZ!T7+mbbL몸uwu0g[>0p/qVȷ"c%|ׯ dU_4K2B (wJ7f&`ײM_)/,ȸUf>-g@MyCsGpfz’tǬˍ~0A(O,`39%*A]h.C-Z k,nhiؔ|wekzri`ٴ΍whGXQpC?OWܼs#.P 2Zr0]Wt`s֧1OK_M# :L1))@| 0mB襩rVUQdԈ}K>- 4Z9 KԭT])J9ͽn6ٛLS+c[wSgWDK+h>1,V 'u}H|0)>6^/(}6aED5槭W#[ ˮx5wϡgk]_Q*]yy/$DȪXU]R ;~iVj E⼻р5E엮=$?HЃZ4@MWlwWh:/<3mq4T0"oX/7%:?RdP>s=aTF2Y:llp;}XmB΁(V0sNwO18M1C=FT;Aۈ^! @ʻ$z$ŷ&\Y̅X=7+:+W:.}jQ UOcI⹱\C0Y$0Y!jid>B;so.^ЍQj-.xķIoCdM(F;??Y0#\kV{NYJ3?pLՉQ1S(ESɿ_ڵMawbvmOWE<_ɇ8,h-,1L3rǜLbUE0͌=;hadoyi Qk}P3;3@+(ԿleV1L\UqP苺8JϪފʸ'Ղbhf1 h7MR6l\ݸs*{ }t7S$EO] |BW3K vUa4N@P@D=P̆g]+ mdDhh02?z6)V36=!')vYqYg9EtU?9ͿԲ ze04;x)0Pwkr05!E!_Y#HA>!~[q#֟LWox1p@rdї 6w(?e(^QһOU_{N*'Y+'ߍ!S EK*Có+W`ͻHTN- 7!6#9yB6m̢`Hg7E7.{H+!Re(&٫c P=;zUhOD(d>?0#Jò=:*GgIّqhN]|Gjo#uMxFMBlW9_f9A"&izPv5`x1ܚ\ej\H0uq$|1ȶ)M_z>v}hFm] NZ%c5f@~Ru淯("=ƹ@]ZGi:j1($-u:Z/D:cf|Zʭ-)cmZaYk.96urYռ}_E9h84o=b.bdC `pwo*FTYe )'xfN KRe_J 6J9W3Z`KɞPq-j!u+Ԇ `Ѿ|s9Sݺ2uj{L{,s! Dh/bK<4A CacWl`cm_(GN(O++_F~B'⃼'vi LmDr:$N*! ltrɱ?,:ɶOxˤjq` |au%~₿cY>nxj׸ MF#ޠsՅv1 gV^m/lf(8ksIM"Tlg6 h+!++Gf<ATM_,іX|EJ? UVY 3V(8kH9)宸`0p =Va2=u࿼]!fدEʌ[p1^PV7IQe/ǀ`xSȾ*+s ֪T:FiSFb1{(qE~7ϊ(H4>x` .Y=OcY.fWAHB Nʍ7JTz܋E\tMV6>{Xߞ((f*j93C'>c=ۈ[T5xvZ- tǕt /m~G9cO-Db([MSYT5zaWE3gT-t$?ƒ[R?PUL@ac 4J|{RdCpVI@):/$2w*)W2 66jk~mieۨuԗXKD_갗neySRR}>| 1Xn0Qi,1IKolⳀvƧR! %S{O0D.fz/!:`΋rtybu)B1f23;AfQ媔80N̝ݲ =zۄc~ZVt'%7]"&+L~h+яl%l3(LbO%bw,&u3H[HAT#@m@qz_P[QaqLE&ǥԽ0TKiӧ"D$m |CVN|>(\pD3 S׀~gI"|]y{*"n\c[7-/=&)m@7( r@zWDZ?P RH6΋yeL.Ʒ%ThܳEkdЧ8)5G*1vm`*t4@J^+2r#W_ݢZ҄p::GcxQ—ktr reLljf+ P)7TahGF9cP)nƤQ=3V#Nx1>TYX0e߁AW6>xaDz;W,Mb6 mE78XeQ#Jٵ!8A<:+="'fTć& N3ӮJa6)6Xo2dlY#]7寡^ycG p,GdUcMc&(ypKE,Y0B5>[(Xe~NKVk̇(OF4,֘"(XN7 m͝-u ؋Sk q*v!J,GGk[<K5 [0oc h FзE;P߂YҦR_yze=Lj&QC)<*{xj} 7mڊ}> 4gs>o ^sjxSG՟F=G"q> K)괗 U[֨zs;0$_fcW 0_1 yeɭcTv-Q:Ǣ}tQYbKD Ki,\h}hh#x\ӈU[9*ߊ!.Gu$~Q8Xd WQR;휋fqmbW1VJdN0W?[.wW~PЩn*%: JUi^E%]v5,eKC#F6]Chw,ݥ }d-5%L@$]"Lph|j7V>X: !BL\ 1}gTD}j}"`giH*r :T˄-:ۏwKr4 ¢#DyMq&}Ԋ1K_`fa[Y5J)c$#C 4~Wloݽĵ'vz w`iss^6OvzJ3Ofp«z$a1Hsm1$g4%lkE (.Sckq e>rt՞)J)d2b3X{ fl3k0\K(zBP;Wg@|Xnu`EV bME]yv{lDD ړR> jROې)*Z Ң @IuR({(]ϩ\-ȀoWq4c~C]<0bB!$ih+z'1;e+3@t@w=˫ "BR{zKYPv LjJc14}΢tjܩ`ġlB'3u ^#Lj~9&gxBfpzڻun ?Ulᦞiy=;qa0@36# \F^,ph @!AC1ì+RRlT.61>tju旯X C&jA4Lti~;ӍF;Zc?Λ+-)  Q;ۙ~ެmQ$ @ McV=IIqA;CX~bBk~Y]am_ G>s3jP:R:y>SЇ~]e*%#EקC+ŷ{f S&Mz=%Yz@c,yWP1rG`0{Q 1)пtTWG"ZEU 0'_02=%%]Gb[dzF}r5-dlk{L0B͆Vb)W0/حVn S-;`&lPuD- Y4!Ì_ bh9I֧yb!vCJ`,ll$fT4 "22l~'3k/HҎPBb;]W(Mk{FɦִHO/ w:T/v_ "a=8~ִ踟hF}NERWL ZXorIrB{M//u?|9K' t >2`&͍;=Oz []}|ꙘÑo5ƜgF6Mi'ѽ`m 6 Ő&+'E\a5:4J^Ÿpj[کÊ#2z0ˇbf;t ٱvăU۫8;us=Kji^[)҉1n_ Pױ*CgE,cx,,~Lpm~cV=V5n._ԧ]'/N.с:&S,ZݼyK]SLb z9 ¼%..E̟̞iF{֞{.b:Dr.`28e;Cì"?|-w[" ~gOO5$S.18c4X=ܱ B$Kwnz9} # a!JsE-qӧ3&7.9YDs Dg@~;??Ӣg-22p5{B jf ~9"6$rsG/ R 'ZohL6Z'tφ Wy{K*sߦG c2szܷf>A[m{\Ͷi%U.q!-酆&NƙDȁ.DʭϲE\VCbT4ji3rt'3,ȸlT׋ P& &TlNe4KB Bw$]im#4liڛkD_0sG\-_Ǵ;h6&1*%q5qG7vvJz8zZSuս;+Ori $٣-iIfz!v@}D9&!0#STxn>T "ՎE~lM¨@NO4)+t.W=.|Mq1wmK`>DJUyk.1T\O[i MKk!*Dg9&y_lp>ZWy⭀@  F%$Z)Rٹsg]"!x!O/R;-3iUYP`?L^h|.4nXS\_.h!yW`̕c>,\My܎ 5vLaY21LW2|#چ+$[ShxBE\[XAO2ubivi~7BЯ/z}a׵k[{^0K+Q \-$z㞖*bP@9,Xd>HhO`tuSL z8m4H:.cȆQxƟIVsK˃OX CaK[>`׫VV~0z>rqȏTّ [ѓd6=nPQ[ᴿw ۾d{8:$ɈZDᬪ FE^$@HFoP Cs>Rj۪{_Dn]tRAeI`2eFt_/Gmٳ~.%{ pGD=?+mf&^>#6fW<ߝ Olh4lʣO^{uNjmmH锵0UZ6-6O0iV몜 E:壳_^Nj $5b&q%66 ˾ 7MYq) l+*5֯=fqcF3Nxm6ijX*wDBD}Y1 LFlemuS kv9.o(JJۼsTwదxR& ^YVZRb @APqoĬzA b3cݙlhj#G.+u$4LIz ^׷Cr6JO(g39SɛG3RzUmMj4kEH/L6xJT,=Y)/_tABdXX]4Wk"F9_02eϨBs.׌C~(Qg\Iҁ 袦CkLe ︑@x ^im`$2hiܨr!JjJxn'oٓ w:kݩWmNbzR}#o0^)n/Jlvg~4cg#A Tmqt;lNvg:rAt6|4l`N@K!]Y4hџ"$9tT.GMLDK#'׋axEhM8ډ*@A`!@@#ᆫ Q6Wd@o_*jGgB-t8KkeJȍqmNp#wA~ <Pp}\ru>ި{'bQr*Z ySƓ̼]fDm:EWbtYoU-$HLDMYOx7"vMԑ`] ʡ$B=z^ߜ=⁐ t{{:_4Z5s:!DEzJEBk^N*%xo4gwɐtV$$Ӣst@I[t{MduS^F^ ; ^]P1\Jq5AD\vJc'سTs3ǷSRguÃn(@'mT>>F16 eU3R!Csu/)f)&A ޻YU| AMv-. uW{۝8WKZ,q#_[AO }9zafq\ʵү}?o6)»W~}'62x4~|( ֊y3h5VKbm{Ss^4 Wc8ߕ03 .^Kœ䜋.֫rMxjyj:,o&<57 ?[܃N"'D*}s4 !'H> MrTk1R,%.ٹא=dU2'~S ڈ]T|tUhѭZlT5sUY"5ʾn:L0|i .=W)!*F 2C WU-:T*ytH9GiA4W&T1is.uK8TgLJy:M+ JK>:b=@ :qny 2q6d1Y^P ml}dIqբuC OŢU]#b}9:^@2RKQw6QjZ9E=/:Ct1ր)0אud,6tZsZ6^| ##5QG&1C7thF.A2c M(9(ւe0-߽B 4M(F>|)\fQSjfmլz߳(ӧXx^;UvȆ|r}JcJOkxK=AP2 7U7(D-+<5 w-`N'd[["$6 v@j- gU=Uﺀ4gDv.suZ6V€1c}x1 EQ>C޻1ʙ@ J/lԚ8^3N' n[`F>LWu!G7K2άmrpZQm ,+}eˌ11Jmȸe s//9iP-Ȅ +卽-٬f\3'9r wgd~%RvhUJ̊[HkQj>^?kk5n\pK̐vFAw ~E]jrxF*X4tCf<$088<UZVBׂG>@Qʯf?((2z5Dzф(z8>B7OE34n`bXИٺEm 㨬Nyb:iC7kkw8O/ ,[װ8,6[HL b`…ېʶFB>^uQ?4P7:$bCtV',C =4ԍ߆yqF~]'\q^öZ]uݝ"Gp:x- 6R}EZTў@Agw#6#33:JVƧ ߎW'VqLb~Vpys зF ̢Zlźt=`KB,,Fp6Q/Q>ߍ{9qcȷ?iDs!%.4 ݈QD q`6'NXbV.01@!;@,.'..wWdyKDԡ֙e8?dl޵HmD-l#|NCgN;YAP!>+^vZ^цίpྃ p@-(vL-i+~}rv:HxH 71;9.\Ǭe7h|03tHY)o?*ū ZF"vX07 1QZ/CQ ՙv7k]BEFQÚRq$c&Q\LrEt_Lf߉䟐(%@JBP9Ի.-k}6ZdFuAfDŽRD 3%Ynwkerc yg?TKF5ܠA _"IPf/mZ)e "\,GYe(vxm~CexV׵ezX+ޠ9nbSgfI+ bNTOcAvBȫ0B`7wW=7=؜X=.e篞M;<j  Pz_KNbA} S(?? \^6Y1@A>h @Ȯ]GD L8g*WFzqࢬ 'NPOeFWˀC:WЪS5"?wwX#c,x5i9^iRY$/@G3;obPc1p\!䍑gH-^ f.}3(OVQ]o ~%Hg?1<1S?GT]"?7M̖k}5lQ<nf7~|Q 2iyUTjPWৡHZĄqYGy>9^ܶ,pI'J]F6:Ow@/pjH(6k\/[Bɚb-qx >&[VZ+݌r90<;wy 7 hm!|D -u0SAa 2J!Uw;7h6h\{5 uL7`nδ$A7\W4垃V"}ypB0qtɀN'}_ʥ>lLҹ`{U'yn]GGHՔuC'Rv+k$mlU!=# q#d4"i7X,*‘|MutgSͼ_LjL2EE:[Si&CX$'#xUs0q FxyѦWGpdIڒj/1Ꞡtz%Q|WApckhU _7uo, @fY\Y~@ڭ]M;T/yᶏfNi_byy: 9ɳaR|MsO׿K&Vk_ď|Z'OS=lC_b 1b}OL\;J5kD4 HuL:=6F;~{.7Jgk%4˛i\p 5XàE!Mk7DT'Hԗ=ߜYUnBIjˇ*8rdqeXv8A:ΪVH, ;8yȩX0;~e@  +4mnh֮UrN>0H$p/K̤~Z9sga7XOtWZv-G)]ub_D5Z;)Ov40coA,#9HWC:1|/PY~c0mB Ox!= ’^ ˱Qѹ δ"_D6ǂ U %f%=" z^*>H3$@aO>">ԛw\;@,>U-g(nb VfmJGޜ>7"u&nª5UtjrS |c2`$(BX]AldMqk*ء*M+ֵy wEIRT{?wBT˛GƳruenQ" Cmtdƈ$m4C؍,Izh{B*r}FRQgnQw޻DGxtmjM[@ɕ=iUV4SGG>#6>l0wM6]˾P pOu|BUh1k\| ucNYXq?M 0~%tGmcYf7]7U@@nB::,PcV/`U_wJےl~ᐵP"O #WLc;MN»/e5{. !U(Q,˞(ICZVʧ4 ?W5'G6yʞCq-^Lo2ض@qa1S&V/"4K7ekN+]CE`hip;f2SZ+:A!Fv65i;z*"s`ybb 'XMY),+,¿YR`LArQEYp5njt/Assb Yo,"ln* /9& %ל!"H6QNM+FaS@K[ʿ/Ov$HӉIfFH2c@[~c^AV%bƪPJ~k$XdM ,*gYDPu.hǾL<; :4SƂ2}3}VUlLMnjE(>v' PQpcE wmU?/i6OķwM+cid낿Ϊ0G5F4;yoi<}M(fJ,fiy pU٭jKTNpM$%.ށUn7rt?`x(&]P*OM=^\DC\%Dĺso|RkJ; O22~US.aU8]qO3ΰ?p53)gIcl] ٦ԃX{ɾDQD>aUk¾ZDYD&HQQUF_َS ]fDJ=IL[Sgq/Aq"¶RԅZ^H6; s 5_;'r#pU_]HBq˃)/K"@3(&c S#.iY&6/6PQc;lA] ; 03Ť7l85c\P#kS-_k]zj/AS({^on4Rq SAJmЊb%jU :PIɉG/u:k=loࡐ*r}^+0Р+Hَvlx<`2#ÔU6+edqPݐN+ +"+?&j9 EȠ򔮁v6srA~x6ӓ6\r*mw(h>bwh+gc̰J՝w33ˋ俫ygz HBnj$9ͅ+]ۮKY,kl.b_5ﵑ˯MYL:v%7# -c*NRR !,-s2+l`Eӡ2 Rv,<Mu)/+>h;Oʓ"t2"zH-!ԇ&*JH[^Wo;*zlCib7~VyyA1so`|\*.e{YV015臵kv  `I&jQa Ɇ>m߇(}reٞ 3c玴*Q 4~2gPxFYs#%#2c䓧#- }@!WSgӲhot=-v5@@OK6Zl(nmv,T>yX߁%8):o&^N0y >2^άu/3Ԓq]~0&>)i;-yi !`"7Tg9j)ŧk6|9 XuiT)Faӭlzܬ]OCx[Q6-D+auZd۬DPI2L7b̑^y7!< \w="mw~b=>6Lz7XCv@Pv*C$-Kg 碶@;)ң9mklrk}~tm Vcƪ0j]QGE@rARrVR >rǒmy^* \RBZ1|o 4z~$z}*jW`piSmb,(?c g`g2۱WCV۷f:`r-,@B+q[ J]$ j*@_Y(.8x/DOSL`!T "TL?DHQӸwJ֋b€"#ކug %cԸ \olM0* y\D| ;OC[POG >Zݨ"ācN,cmnO8ٻu^# SlOgj4Fo:@*2vK,ĜT&\q<ȉA@1rIX5cv~*R{i;RJ8^Meh?cw%#kz_MC3'"tH%Z=|,n<ԵgnmAy*u ?Q la3R\Qmf6F+ȇ4?;DsbN8RjSjaVܲ! f±U|Hxۇ?O5 vK1K6l$fY:XzҥY+T+B7>*-z\ ˴76Q[>=e#"SDh#̭5pp]?"iJ"gKD?^/1oZ(VxdWLAg}jR.^(zosԾoT$DvOp]#cTSb`!Al.׏UX0?D8x~T|&5ip:qڼBs!h[S$Cϗͤ}J=6~(: *fdjۉ*[̲x߆鰈TEu4sTKofK߹}dňAQ&!C%Y.r =yi|Bziѳo;nE˶n w' 6A~y'W$,͡Zs^=OϡnQ=3|Gm}8z&0eL1ẁX4L2µcr_J|So;>wwјÊnV&̐ͺD%lA͸!{:טQ7u67ZzҸ41~O\#gYN g]RR*vIiS XVUS~7Z#[UܙL? :#R(A4-@_ު̃3|WFͥM͋*UZ_SbhZkFڣԦrB~C >f>au]`SniFT?Ia}}3Z"ْ}AesID81 5S"_$vIiW(I#mv6eײ,SnZ뒟q7HpL@ < B|`s|՗N-^A)ݣF=u AnWNyEKd{ @6wS&憄l38 <rEo*S@JiϘEqwUqyv#myч!Mɔ"=ip)&RZV:T'.}i-,90brjTjJ~*|{yԀ|prSq#CDZQr!آf(:6RpQ(s1uhm_u#X3'+#CmW 9nȷ8OK'1 T&<")"\[+qu}S B{{2 \-x#-PtxWZ yWƍuCq4dZ[dz\cs{&~vQ4![;lfTmP}m$s$v;x*JʴUAg+x:Q-={uUƚF& bm?+},=g]wb&:m mX"y:jk7TX+t̹'A7= _4.#qOH df||hcQ*Znp/)G ƁBU4ԘCJxRv1J9MR:&Mf܁S5-r?N!_gisq㳾Sڌ`ڵyjGm4Ia՚/kc "IW`MQ\6WWzv7|y- WȜ&T̠55ycujX ɮza ߤ,)W"y=rur7y> 5KÿkWܳ[zg_\c\dPQ GOQTb;ogU!+.FxaMFK祢p,m d;ASgZd Hc vd2=_[D-6_+܄ `DŘyMdka %Oz03DD5$|-W"R3nYG2ޮvwsu@QyDU3EqsݕRd_hEhg4Js١4V_մnv#޶(%`c+"tUt79`.>Zf!f̬xwQ. r^c]K.s -J>ϋ\w+M QS$Ӝ[%ѯؽnIpSCL'.lM~da]y숽{ءG!^dt(hRhqJѿf~'4c14l\1+7FFRfq IgNf; ?yɀR!L^8̌ps|MW.9P~ opbXTvӂRt0] yJYd\ K.oG 9(͹xiA!WdNjf8UFV/PpJDpJM+^A3gɌCR%[G {u .˝G23xƚL|AgUP10`AU26"Cpf"zB)<7] \\oh,rͥ`XIBU׃+Q][]oDB> ~;yهK<ûȯmM[kr#mTwbE->'.%d_zc\bU[IziEQa ^.-xEaub^yH gɳS\#4!=I2Gߤnk7C"/#h|6 f|3Ĉp>vv4w8Ń/t:0N]DݴY=,[5B#43cNFYmDe c hg/VTƓσ((ǘ7 Ť[.[?B~1Q'ycE.w< =t]S r<3!g[!OG-&Emy}r;/վo3}-UJ~i1PHQX\f٫ӲnTGAp!ml䊛3uk qǙ"m4S]fru*M|ŵ)B7)n֞f)3O2t<q8ェ_;O=krx쑵{A&JJ4'cqM4[Ԥ HUpw}=K OiwIjd1W!9hA}{1Վ_۳ ކ*%i6΍{#jPpLNȩyqJ^pN.\Lr 揬.{+Hj|,T)Fre ^} ]@^9I(IEgqL-diK7b/`,b̼ aD&t^ds ~w@TV9)붨!i2d ߾}pat+iHED>Q4N^ZOEA>QOB7N`-8.cF;g=|`>n_ ίo'pӻ\V^^8[sã!J<}q$6/Xa3CJoB\qփc[>,pg&,rfWDdžoPI"*"0O`+ =D=;jX~bek_HE& 0V3y޹jk (t[

    )Íy".{[gK @WFe#]T=fy8Si0!"!THhxVL2WBYmKd!&R^]:V ǜē"V=|;v 힛+H{`Fw:; įƓAKN**m.sU(Uf6P\FGz$Dy@εԜBR=gy;T!Bdf *UV:iBi!j8#(XMca dO *{] n5 *G(}k)BgV1,gpXn'DV蘂 T]9TekmqM<YxP4:a+lrPJ[Ir5SP,TGKZUx _L[Y'{@d j.^ TN_4P ;rSո(nCD}J]WМL'92Y?3 ki %",#""X#1]43yck[cS#ds#\.P&]jNS/tɟ"5r}tP4?0dKu۩ٽJ㎶j:< {dIm\z8EZO\?;Pݞ{ /j.A3ŸYdH\>ހm6gb]A~3[pfqc o1K骎Mty֔CeD}CB ?\#4^R6$}&JN^)xZ;G;ɻ-tyzT L ^H=4IoYS)dWMY 9}V:dt|o%*YI*?]DPTᱍZbR*mGF|kzrx\ba#2A;U,a4w_^9hkԃv8n* v|oՒb saJX>ȼ~J{i@`LjիuGկ nbB#HyaC# ꭉ|T!L7_wo,j&be#˻_/2CceJ9C;o oA'5b?nQ:FI.hV.\FYKG6n0 /Ϭ@R6Ɔs,3ܠ@2pkGUwA}rٜ] <}?5zq5%>#b 2( &])|{NL#SIl7 PRQ1;5W8KT".z%\'=T6hTn@)1|&M#ʴ72岙Es%.^t9aj,g ;*JƄ"F.,wehodAOeN=ďD+;a apYb^ E.a7i@ 0}t &{6eS0b[ӝ=1z-k]6&qw-=KhVEhv3YEs|$ߋ%.hMӧ!qek`e4]JLyv$_4w,w[ ) 3}o[vvηtCyM#vYq2'--I:#=a6K0>2omk:IywS훩jz?0(I@YidzC󘏮(c* uL~KĐ~ V2a"&q(g}6R1RYTڢ%)â4&Wioj@* O3!q!Η1 GBĉuw9\;@My3[?蛀vV8E9?e|E:n[ֹv+_Fg=;\{ۗ5伷N!⩡ ;QޕfgS1:N}i:=r.ٓBT>:bvzi&TlCq6hg,6YVMB/ DCsw8RDAz[#B艮B5Yl!6e;́>)ԏiy}P͏*T*uw"hDx}VBؑ:w0\ [OwvRg.78v5=6$Ƃ2~ЋK !8߁,×7z9S.)ݗ22B nc+:|յP#npMREV-ߠ+.L;OC{nCk]=K(+;DOڵ P2ug-HOjIC%s=iqfj8`#>uy @'~%q Z),?={9t3[y96b.wB2ȘeI3`YUF~Jq_2_Dfb[V˴"ZOؼ QaocIsيb!wj `ֈWpϰ`"Ɯp|2VC*]80fb"q JKxKTzBB1 Cgձ}0M]/DrMΠEC% OaLaq-dVW~|<"Ɵ/a|e\CZEQPoPV(zu|4 m!8,3bZ%Rװ)  M<`6HD8_WƁfL*S]"o8[eq tDQECfT22M_R*k4)J<G^5~$Y?pABsiQ*-~ue{gZR&0)ȷ.x?y /ےk*RjF&``p9 rY% ׋ %4~t`j/TH{QPM}Ch_ܦRߊ)W3,hq1/5WO|ٳ컲iL".IMzԘ'C눫i%ڒw(Fb&BroS7$ >Dd08qj+n-2T7g=$<2Wv',ށ,勷Ty⌌g~rc;OaQ)#((Өv::Q#~1<*\SP&q"x]8PXf[c# G$@;UU(ZZ3{HA` ؤ'[DEZ^NZe-HH6`fe!{.~H@>L> ɏi7\$c5WiGZppW=!1~@E'`3Wb1Q'/C3 mGlBS28}ZU,xցx ?jH6NsI9C=^a )]->R2!{ۚ=+q",4%hqM{qYqɿU$uQ@hK&;Iuo1䶓h{Nk`ţlMC?IO8ji.h. 5a7ɮ|-Np$"?KU|ؽl3.?amqiflLH R$#bEe{+Yɗ@Ua{7;#\:kްVt̺Lnq'νb>%>Q8c"(>ట 8(n$-"@ZDK8KÅV9-QiƗ`FD7.i zmEi>譂<ުC1JvPh- ܓˆW1v`3>`=*>rm˃2CGbP5}7w"_p?*j#zLk.i| bΣv0Ue1}vdw7j"CSmSa',8kHv`HwF#b4Y,W1n)tyU9=1<ĬŊiw6ljzF$u`Of^H ~[`Tk)&˫+ubr[HB/ԡFowz14rx)b/~zbŶ湥 ݭWlJة^qΆJ,mj=aCp]]"BO FD:p\3>1WV}9RSYNֵqT R#Nv"zdKԑGirMM,_ZKmnykDZMTA=Nẉ= [N8ʕ(ZQV렪j9}.ܩ )y(%̛}TTi;Np&Ua5L2>iPS_qUqP7k^>|SJGᡸQ״h(5aؾĖuv^GpwL*0DacgeGy8;&N}Ŀr.![8Ta)w:T;*xUgBMu~LЉ[`e^E2*h$j}A[c*H"'q u$31D > |ա0x(lSSxbaBKY.Jxp<,!9 n0œ񭶯/SSᅩQC!( /Meڛ9bU SUy>*Vi]V|dkt! g hz:[K] s&]n]*= </o6´qϖWtzk{X]~8^p[&HX&$ix.Qx oU_QNҌtCqXs{ѫ%QьFU .^!E yjV¦^M@ nh <3=87^$z`dbHkFL`# G3K\", Bii QF i1g$&ZݴCwl3"(*X5¬[j~Q=B%V9l/@ւ3x2r߈nl/n-2AdqWw*#cJ DMvrDa3I> ԘZC/S4wQv{GN[X]c&C}|*}NM+ՃڗX2 ߮5Y*&d5Lpl8n@k)Q>'kQ%h&TWAs@Wɷ"j iS)mU_'QڇnȑbV8&4 k“`0gt@߸oźaݺJZy Z.ϢN1)9مpsA^}A˨k165ca[TCl$ԒI*Uvi֔+`1at]j-GU-|GuXLYj&{B"F/ i%J\ok CCL$$n5ogN+A%JX!N-i6.[@&y{X"0%%Q`?5UYڟG`& hU s,|]J6^ըYwhcyqPd-׌v;WbNcuo8l{k&UG)2aHnd0Q 읿[bRadˆK˲}Xs; +B@\ [&EX>)wA6$R\/@ZN9MefsU<Kaq ۈR3BU=W )?Uetom_qU0nޥky{)Ǹc PCQ}aO AC=2k&E~Q ZME̟h?{/m,y-%qzJIVo':rNɴ1.ՂC,zFp^jVy!# >N ?iMZ4j"l{1Fs=&LeڋCaocaEx3f >0?}].6yˇYh=9GY RĄMB@;Ό/E)E\h .=)m=Xma ?dq71 &YNyӂ0Kl2W^659WFKU"hbލȍrp}&C<2q-W"2ri;gF~2s5YX w< 5L[ wKXNzЗFb H!TRx1࡞)͘Ar͊BMӳLc$ׂ%"Zt:nLLMp6lbbwc5PE0:ڈ3R )%Ow:@ۈbψ 6ꟹ}X?y![7wt4?z OP0c7BQxbyek')~6$!!|9;?׼GM2eV"ʱ4 :l)75Vki. 'T]gEk@V%} O棒<ijıEf[KOAm9\Q,Oc3&>GӘr-]pKٽ  Ozn8B0352OWTBy_>_kީem#h>(\tKhJDL`YqjWzLTw1Z,򉏙S<" 1t+O4)@܁~?fXm8lJ}70 ?wiJdPyρ ՗ubKJ^tLggD,=L^<1m]иb\2 .h&g(`G=Xfs;C^cFM3Pi2fIgG jq]ex!1Z+o/ݞnO"tK66ﱏ!`Y](;r0ʞg4gT$g o0>?ˊ>co/nBrcHj|VF`p+KC)DR|-?~U Cw/iƽٍqiG:QȥAFJy4Xq^"CV)1mcrQ}#o"Kp`P$ML\Jx`pHuvYG|[h)L<[ܧGSâ;GdE}OAJŪ}󧤍h8+hgz^(X宱p1͙]np멵%.>(p/l; m XɬW~cD\|2 7r]l#^?9PYjns (5{+C{ mCFh^b| "Ym~f{emer10ܞi*ط#.bЍV :qёV+Gd ׯiÓ 075ky-^fťN&w,b Š<#&ih>6Hx({BK{xͽCb&+:Y^rOw^VqBCuGQVGAllVqsΨp'^6> efax eΌ$} py5~nsP,+[S1?Bh (\KU9HP:O^HJ2ڛѩ Z-)J6iK6?;en/t&,"__E!Om<4m̥+!s+Wp>\x_!H.B<+3k䉼`Ǎ]D@?v~~-Ur#&M2)d, w:Nw=V@Py fQ_sߨs=\tUx$ά83iJ2 ۧKH=*ģ\oLU5RR)ԃZǭ-c_og-7*=8[.m½ىL *?΄7^?[V OaWE fgGͽ$W:qfm:Wg"(GzY;mΚ6cyi5LG9ڲ%?ͿRǖi6,7)na$n&f]ZoQRX:u`h5^Sӑğ^t4ýi[L$N l#&P§w\.F?`^0D:o yuYFmoyrn9-<+bkEKꝞ5_ނj ɥ<^[ӃSҒXPjG`R+fRKi G2oen[T%8>cR>rI7MJh?~LEYп6].ɜNa/F_$]o"1Te_3ۙWx,|IW<,ŷ4n0fM0D(r a!-&ߣِląׄɄ)YZw<>檷to_Vß[/nGB%QԐBhZqt̖"bxϋ=UOw8s%ہ'՘,Zu!`>N2ngO\?-^^4KԧZϤv:v)Dtg{ GVg>M` x]텅wxIu9H_ F*4MEah}.. p.qg5cV; JAHg6"VI|xh)8uX@d,T$a,A.y(>K C39PTqN{=d{q83Ęwx֭Q@}:8]Y(Gֱ |ӟdX< [iP=$@v$+ 0dn&C\UF4?uw@ ir$=;фG+X0:.t | `3T}6^+ 1 ύaa X)"4:);OFs&mmA.?ӷ\c.f!63.?ֻE |#t&O^ 0KFLzjӴQfѩ Ur B~(t{]pT)'B"x4]v, EZ[z`ʂz * ;h2{uu△ ҈AT[--=#(Z QϾhrSwn}xuŮ9:; ;LvQ3ihqhHvVNOb;az⊁LYNAm,`>afr`<iZ\,V{9EX޼2~vef_YIlZDd&yو4Y b9 (c {ҏ8} YRn'ڵУ@LIȳ[Ϣ:q+oN)eVEygjM_gbY% Tt@Y]ΒT/a3B/ߞ#"u fhQoҺglݙ^Ȉu°țm `p^XRISū·Wnv2P=e"A-. F% FTԽUAidaQO$H'cnm6 BR[)j%Pb!CYhbuB@r!w۔ ͩ^4y66^0i݃AXiBhF.@%c)4l|TAQ9S7Qh$TT*p]J.+g2a/gDUoe߆[5 m5{è/֣SPǖK:S>m onv ;*NYdX[po{мIbvk= ."h?Kt^;VAt,ǂ$%:Nƞ^A5*$4IǯS܂w5Jw>+ V2Wx%؄d 2N,zbj"Q1HS|`#A'엍d5;R?LG{e/_F~sr|Xe6V0#`D1NJ]\qJsf$F[CjNW o~Pi/sn$*\T{9 !H@ sb†fkxrٿuSЊryߪrz\dC U-8# aIo揉 Izc4 Rydڡ"#7cVtwp #=:䝗AZa [,>$"W$r:^ciX(c T DO E{ #;<FB:}~D5iG ݿ}P(F]lk`\C["F&Ne#\>xfQPΤ? hj dɌ``&WIQuF 3{/ՀVKN ŕ">M ڸ=Dw.j{Vv"W'Y&hю 1/EQR?ypjOOqEYx* ^ $ZլڵAQh%*zu{ sn00[FG\ΎB.;+kPC]\ZSоV{{2Af>$bku)-a.es)^T"e'geލ_>>J ٸ#H:sIMZK3~e92}kbSA yш ]|2A:+uHԂdͫkJ\t _ 0N'=XǤ]#vޏo霨bei1xN}Z 4c5p\KtOG>w7MW┵T08`My=+PF\ojJ āmVJ*Zwz2s0rxDD?˘PHƣ'*E_\ѺZ X +nɖ$/u`H[]׭V8ڽh[f.Ɖ0x؀>cu h_UHgHK:l [bbgyhNIݩۓ4,Ʋϣ-44hPG2 u/|̸zripiL3/ߌ;%s7}7#`gZ !:O2d[B\5O]ۙ&Ȫ<c\=ҹ9UTQ],R-\!(:\aT-=9|v!\,"-FY r#US| 8aD(2VwȢ>]i7;!P 25g,qc(/o ᐉWD;^B*>v{*݃T]&)W0Z!m \PZ5#ػejcXGYA.nm wQб Kuihy 䎛,")5!ClD/RBֶ}F4WGGS !H H>v'$ ú5SuM]2'g LiiW6hށX;Tf~)_=LSP ?;-XYl@cו})fp (d[-.XEn[g&R b&,ozvpq $`:ҙ}G,,G1pLKitᵋ X0 1Qqf(~8}Nx..D H) .zV-E8LWdGܘ,Cp0XxtUYf"vgG*S1!6#U6 yB~^8U6;5nTMI!2p%|5SFߘHM;O:5S ^ xM$]ճwXs cyL-J-H=(R2aYs\Pҳ/pVSvwn0$4( H m[hC~N:U5M[o1"AFPX#hjԈ/ojSdF~3:#} b<"E2!r χCQ]p'3^uׂh4^.lm QyoŸ61cViO$;>4eYtbwE+VPb[1͞G?Y6Vsh|ȸ6oVRl"*5Hbļ΃;橄4~ 3sƉ:ZP1"b32; [T`ry=/)C2r5/[hM5 g,3'z?[V@ў٤[^+\(d#<^y vI(TBח&s^ܠI$9>l$Z}>Y3_#lG_Ǭ^Bf{*QHI t-xqSۑ4*@yC; jXaX ^sOK y.1JׯY?$ϞNIzy6kUr4DR@MU?P6q(,Q-mz.10#Ǻ."+0r >Źm=n}l/`XP)0-?JaFUy՛`=z@EЄ?hCdva~ii׼)h % Vh:@Y%9S~vhb˹.ȻMd`FA%L*Q VKp/>.9T,hHe'krC^A'`Sl438gvbm<7i0$™f=z NӼߌ;GܫzD3ɓ.8ϔO כ/zFGAHR;6LCQ Kt2R* ?;{⇦ӓF 少睭j$yE7HGHO_y+PBFL6Q7IA/PecwY,ylo2]ᑈ'~_[ hCÃj*47qt?:*nq~AľǤH $$S.W+ Aa\tǃp-;c>&qzk/6O֍.j#ƒX#d,Bf s @C%[X5,X]NWwY:b.ө/Y{3[1Z 9kR 0|]d/$fj \8:ZQ8 0O :jַT{tN9^#NP\D]*QՈa@ jWk`P}Uwv` I][.uUhyJ *ʉE˶T<TB@IMy1&u)[$dkh uh+Wa)5 {%enϣ'(2J@dЏDV g"`_|3{FgS>UL-&h@i)( Ҋeon4/^CG, 3 壎ĐHe3뎆p'#dMQݨpeq2))#2uCڴ!\rEk.Ҳ+I,DƲggFh^k}k=x:HIT —y qq??/Nu}][#0ٰa4K¨M-i)xh-tu?5 -gA1{1%(˽#*2gXC=JÅҭE+' iezf=i6w?fmKvlĻ́ҫꩅ$8E3c3'`F pJa)ۮ'@ֲѓ$"D#k]^qNRA|nFL>(5\^:-[.ʀh\ؑxI*557J0Öos0l5w(/BUdCG体G$nE"Sv?ْ4:2C93 #i,8#݃ VYuSU Ku7UvsQe,ԯާ/V1Ј] *Wsy-ew'ZiuY$ksjM\ o*רlc [هtҴk`_xwq~ϕ34J"iaxsH  {ρ dct$T=^~w$cɍ?ׅ1yQw`=@7D+"pJmC.NI87{U&4#2n4;曲V~o "'ɉn9q.p{w#f@{T$BDlR)t|xZKV0hF*-7H|1,wmSTl|Ebe&U t ~$$(^"Z=nȳs5ؗPv;rvyJV܏?˩ⶤDb >r<, D.I&AUW) d\VOoz>lIżqF)bIWGSoc+f$dnb5expV.'UN'r .Fvȵv}8Ȧe7amohˡC -s`#M^؅7p Z ˢK$1>de"q{Jz.tgJR993:`f9쿃mQ鄦h{i41^@G@ Do쳴MڲIfkVeN 8ْrNm]HpvZ*Tc9 X)x؍;c/ј ?GEǖW2F9%qe_@z\yOY"Ot`GAǩ!ś!YAsmիWm6-sD6ؕv*F}z 8b~HIvi| ;[o)P44ir Wx'={h|f|]mxNP~o~>%D&RT IJcZ64'n^R ~jɜf>ԓ-q*%ۛ!`?~RşN/ypg0ٛ+QOl$t&9rWޱnWxER8ZVGE,5b2{@\)oD xlym;'8/pl@JԠ^(69eՋ a'p% D%<),'򝴴Ĩ3Rư{;KO^u5] 6bjRC  O2\Up:| N^lиVnRW!^c!ϵSK'2:$&q:̱s ]&S-m<qfy!,+{ȅQ߫#4 Fi !ZhwXtC1K7Ȯ6eOC]h *hX+Ӌ(oDv:讬1}+&7w]gąs-V\X\Θ=ON=CӃhfΑR)SEMeW kϲǜi/JŇ-x> 0qk.Ieϔ9kWO1TPJZӵ= l=IC>[~h;7w!5{{b@mɢ$gF1FZz{M>0X7BgN,^F:nӍCBLl)Į H3'Ȩo*R>PsX;5WAdBZჀP"HY׍``>%~Nel7UܱtQG# 4Z>Lx ڌ2'?9uDhGK?Q@IU>@3IZ Ƌq7 |9#XKAxkXȸT8V/o  >͙ P*P4m-Qħ(뚬Y]ֵ-*yB.;ǰ*(6Gk}Z(MkEmu ǚ`}EC0z ?U-?~{^%`Jw5FPދmxW]NgS;>~\OB\ {Wc0!VԿTDy/jruu׋7|n7#D`Vi~%Ev-SnIdi#+ >ADC 8'߉Z"p|A3N3h+cr I Ǹ%RaѡRC6#bdJhɑ1-u!zD%AZFK˷Fvi>\0W kAn"d)+JmZOcSW'4|F_|bV恺RK[LU..jΟ4`7,q1L91| #~ŋ> cn-ǧF1&hxS{|k%9z%݊Y*~߮qQ3phvҨkhX#{gPιCww˔ՈJdnݾ/z:7`-?:1x^Qg>d%Po#LK Uzc>Ǖ1Xhib SB Kf#v6ۙN98 ]h4ԇ(.%m 'mz WT=eh_=½0YIvX'V`  ='vT[ 훏ʢLV5=UJVKRsX=_ûq3dX=J5Ϡ"I5x3F8a@pSpk;ȋ>,,=QP;⧲ˡLPDzH+<6E3gh7E.q$VBOhVsG§1,+Ȃ33'_lSf@J8s EߌS|@2AVR_^yNsI &ށ> mEDTe W( O<0]OYطӭ2Y(D}k|XY+sb/Ff5pgꈆ y5G>4szy6$eG~FGAyGoX *Y5HA(xVm/tGnF x  -m̷fS\ P-3d緡XH>jw+9FCzn|)(4UBl֩C-]41hyd< 3jsJrm5ikaΓ]4v[T6t>DT3N=Y AX`h%$АJ_=zZi^>-Gk~򔣝$32QJWǸǀOHڞQ:k=8vy(͂TDQ3Yt-Hؐ6 jx WB uOe |7m*_W1'P4b$`l]QhM5WAu#o w+<ʻ t5<vO3}HD.O)>OJD.ǀd W^z1)u- B*cOՐxWSf .*O4zm[*0d3Z%o5󤅮MCoHW|i;I ?Ur/k+wKl B#MW3#DvCoC&ߵXA >*D0 .X6SKM 1R|DvrgS*ǮMᝄVf@O~/ϰ C+-1ѕ _ -:l9ISA2XqVoԓ֔k8iD42+>BMo(exFx O6 Q>b#132葬U)K- &s?)GR OЧa /`q0G qPp-/t5;m}@IMAO?}^cÉ~aj_+ZnoVGF !,*ۻ5->nL!v9{iI81F[o+W-TD~ܪ9&q9#P Y@9bl',:"mib%.00>Xִ^rsQ \8쌷b9:{tƣtK!vTe38䈪0 d'μ/U)oq"D,q%Hd%ɅBm2O뒊H A}`oySk7]@BX ;=3dxIU%٩Ai:p`7 Rs{Qk׳Ur>u$͉~k[roLx(aw R6Qυ zts+)k5hP_>p?lly&6Dʋe z%=S}ჼq^9k5iORm0F3˄7b㝩*DŽwCO a>~:3Ku>4"4&$Q<2%?v:5nFUJy:g7zےȃ+ِj3;WSQ?y3_ɮV)ZIkk h;헀^: q(8o5Rx"6zU5߬-]:u0qi,cL@7ڟ@ DLӅO5hb5s[-$ ^Od?MS?Tc( ɗ#5;XOhrQòάhx(Lpf2j r8M5t4; %-RWfzY]4lW.HUk^`7ܜ*Rv+y?ct,Bb(uI_1#aݺ@Y%# E F!V2fqۀU`6p(ҼIz!+^,8_ه!J{ rX"9WgbnD0x-C]TzN8/7jVFzvf t;e^-O[~EAB=VN%k?Eq/1bnckG_tW]]0l{`O7ޝee_/0vBFk@jױtS}@K)I71ol18V!;vJ4GP/T Ktŀ W|X lS0"e(Β6&@ pXP!:!điI֤l6!A6ڀޓ D69i 30Dd)pӂ@8>2ptܹ ^HҋR\mKjvg>`}s~ ۿWD/ j[8wwd~z:j hjC`ЍB j)3Eh; _xL2tV{Fҋ2"oK}3ʠ 6j=S2Z^+ArFrQƸb%yIGT6l7-ɇ4eGK+!ҭ]ȷ>KuN6)z-!XAȿ% g,y;\z'2E_wcc:#(t02IQTTw_BbPfFoZ a\7Qb&RgYnAl - pӛ@Ga>͐f2Oᗕ(ޗڀ "*+>60λ@Qp^XaD9Ï/׆,kY Z]Po`LpX-seܦS$8_,K )*AHiLm,^MI`rph#(QNLh^08o7t_!Ρa4!s_CS^9!%rp㖶%IU!]ƒvL?ϬHߋTS5[GΙmD#M- cʓ^=Z#;u|oV|~<')OE8ɼ#DY\fNojE\h普Ǹ/ggY7S!:?J~/@@!Mk hBǫu66ymMXVb3`ti͹2MzCe=#4[+FjIKޘ)[JJ.|e^MsPP{sL`xxNT##D/#wb`VX09N,cxQʉ̲fǘ3SkT 졏 !nN-Z:K#.^3^0ɺ#)]":h>'uxVpxҨ A-li}JTM6U~\ ic?ꇝgϤɯ(]Ca`HY"IAİE+nJ-O <ɶɀ&ΗS[ے>8-T{" aS@ pX6pCIa8GtA`8h>_% C'~,XӒuԇ`W"9JqMrLFH5K,HFtB'Sv[@' \_&?LN@S`.o!b@@B@LbP9XWv95PgX2uo8%-㖨$"WVP>qG(#|q2 hyYA#O4خxOP !ok[OCRNj쪄YdVr1Q7tTPF&&V!C@H}Pm2&"?w)#!QTxH߇h ʸk|C^v‰0p4H ommJ;??D)V݉9Ee&٫'Rg ې?;Jhш}ҧJCq#a!"y35j!M؈J{+(|ˋAIf$ iy s#Bb ^I *6_ƅF#^jQϑz>W_ /bD IxWNL#C;#D+EQ*e5[Ba0_r7 50_a 2{ْXpE$^mibR&ӋW[_zvUGEvRaՌT"'GOxCרFU@$ck6us3K^7RVC~ޑfLK)rehPqw%CK?Ox/ , ͝zr[ҹ؇DYJ֫iNƌ.ink4dI1ԇiH'pC i4`@V]QLtDoNj6(KT 8Ne|5U8h_\~YzgSbP'-ޒe8R hR5>f<׆P6,7>ZAxc"P'r2LJ\c-STxie@߹vcbڐƚdA UQ[Ռ$ĐԃḒ8͌ wgmB1:AEd,FCt*z',G< űy*x\{gV]2|A j Vٰ&f@&œIN!KR@ D T`8-6-ZL4aN=]ܒh!]{g 3U$guA;r\:?,1NN7{F}rBVa#\+U5DfYZ̐EPʗmg]P=˛_uVi;warU}8L< t"K]8߮L󲩈l@tNػqQC}tDKTd#Aq\5fd`{SiVGmq1ڎ}T_FY>;!$?@+%3!)D̈N?hdA낷90;ʲlt[#O {I^̚H2uo}nxM129£5`CKuW>)}0]xm fUrɤ,nS|Yx{ `9<䕇p BCCOS Ri]jWM1 sARr (”Vg~bF&Ԑ.30n^tMI)#1ԂaFsAe_ye:vzlfYHy:ZM6KOD|㪲=ULop` _9HBD1?& emN!Ut_(YԴIߍ؁ -=t)[mAW/zy 6rmM3HnDlr77~ăMG>^v8y #}l ƺAB 7,+ڬk=`i/7D-& BV2뻕0pz ]]]|m [䆏بZ뢹uN\{Mx #=&.ΓA2I0 XJha]J@<`ʞ9?$lց L7%\فeSsigHha'%z4zXw D@0Z!{ܷRi"\Zu*9K!܊)nGڐ0P9!"̋_N3& `gm$;x?̪'A#b Bt\0!6Q 0Fe$6H+3TR#9V26 w4biEƇU L.:10L1hhq1R6R㿦_. 賛@S Ƌ۫[$Ƽs8KzaU Zgխjb ×ֈ ڼh2Fٝ%3g9l"lhCs vO!1c1I_O_"X]> cB6FS8je%C_pC} y)VtԕZ@b~J Y3\$f;z~`Xr xYBz 0dIP׆&}`(7Czf*VEvG;d6 ?Bv:Plo1s1g 5ۣ'CS)H31nab7a1nCdY^4]Ii-=YnAoer5#vGabU!\TH+1 _ E!Ȟ?e.*DP뻱(^彼sh?LC*H(;:D;(N(a,zN6?Dü1(p)_9}43 ;/ucC`W\ś/u, 0K,":dIa̛=]n=<+ؙE-g֐s{WB7j( #;8 GQ R#]`ܞ%,Y-/W{/^4V |̻iZo?Gy)t:6UD2ቜ ݲNT~I T{ Fl@R&#ia au;Wi;'oJP4[IpcJ9 vjtx7gc50+jU-^q;+a]2&R']mI^Lr'ŴB0;Dj/%e,[p6q c}JVe%.Zkr.zkȢ$Ze>Uݎ[*t3`q-\s V QjWv IKP y+)FGGg*tHoDqg.5fյKTϧo:X<>V3(S:9ino@S+(@\upJ25|אժKωf.UMuijzj'/L )rHuY-{5Sǎ\FªM`T/gSihm`y'+eGHQy^d2vN[9+}~iҊ!}k-G3p38%uU@1?]lc}+mSZm|+g׌7:P(#l@H [vXܵlBQRL^eNqV 8rЁ!kfW܊OuU{8I?#SLGu3CRgQ<*= 㯢~U1`!"(*o)/ $Zhdľ4)#&t}rsn%T'1E06yrPI^d]TTu$[jE Tɣ:Q%Ղr({{!@ WȊtֈ3Լ0ְ3+wlo' ΢8pyriDZ\0Dum&>[9 `T{]a!Q]nE0׾~fnzH?1i#b.^|mPjTW:PM*aY)hc2~{u3F*?/ivxl_ښWpN)qCT~@3Q{=LNǍKr{h%Qz/xL`d*[TAaO \vyˇ;.mLݺAAY_JE55IإClova[p%or7(s7``!qloNc–Һs# * Ph9fຖuz !@kc뿜%]tfsZjt׈`}o忑jKfmDqz<L9m7&(5er?`?E*-G[D`u0 ^B%kgɞQ-ߓWFW!l4;->-|_[ 3M~s^2sOu[yCԄхFkN`/ʉ?4զ,`nU'XD* /{cCbIXtq%f+(`͙:NR qѼ'jC0c<+Rmeze,oJb3_ÿRß-w S7t!?jmdK9cxP\Z~H+69)Wv}r#>X~+(Q1ʰaߔԕuI=KH؊uڒ!.'WqK|ԝ? G42I[^Ŏ2Bf EVjSSFe(V><2W%=xbQ&L?©sZSIΣt ]ErRxB*`nSG|Mq^ #Qm|*  7%֙\ɩMB}d37T TDɍi [֏6O[2k&۽-NjmKq$=$N6!i iu]@YQݺmL{̓ 3S->xU i;&@v38@I}"20F # =_RG(s9NɓzB }z /0>%*,8/NIDַG<3Bagf)6?CYhgX3jDWET\ɂs{S$ύWΟNyYcvXCL?"26GuN((=+4`R;GKQg)߾+ZgA6 lB(@x~o,d3jO^t@ a+=73]B`Xt*# =s zsnݙ}o($<4۷5Vͬzױm0@s[vʚDM}mB??W iA`>u[0xeVѕيAog3gf̧wR e"0̡lF(~"lgmoBgQO(fbzo&WaTDMsL_3V2ArM=N t+XDoMXDN\l4}m:p&{}O%0XϖmWwL3aLm9(0"Cy4ޠ4}U~Ԛ훞ᇕm&'mrpS9<ЖtdžN@MJDirȑ$ ,S#mr=)ꗀfy665v'ILY! n-H}Wjebٻ:ס,/ } =8:^|Ydr8SZHUX 7lcoGϗ>;;W /PՂkZv*{pP'e1() 0K7~Y$_TE.^kA/ k3=u.yg T]D!s+>X)Nw;î]LP X,7Ђ{lƈa`00m ܺ;h`f+ř-^QW=έ8w_%[nQ:UEEC΃Cw/x1ĴvjD.N\(4,eep8⇳]BtnX4Ӯ{ȃ!0\Zt?ab)U0c-%fYkWy^]ƎJk@.ǖ {dupO{A mE [({2g ,hxj ]E:aYl\F\)XF~bR7Awbmg=X#9ip[m굙 0~WVʼnc|~IŅ[SdG g%; ՋgBWƗ#]H{]֧+bTP8,;=Hf(hΛ(`'BwrDʪ.@]X~)Fp) *Wt B,F-(m ̄~_o@5/F r=VZI45X лsq$N9_q.? }+(U?\ؓ10ک$Gp;n%;E"a]V޿xvY')fBBooD ָ1/۩#QsKGUNyӼڌ<0n8xG@E~CF;2D+cJf^n$>l70? OA"pJJs Ƥeq}dOF8( ]).fz˜!d'bF\˳<lOkC#P9ރMDlv|/O9A$NJU@0diFdkg6?Ҽl4|D9~EfA #vN%6ZEݐлnR5= lwMCơKdg%蜨+ .S],&_oX +F:u/c@VԂKkF@y=%XUlz()vn^[OL*pa0K䚊;Ѱ)La e?u>0A͈J6:^C,v}/3IiŅo\&1~M} \DT',Fu%fkY5Zb_jq7 }|1N*B+4o`3ƊO\ې@ƈ!A=34N/ǜf  3P!|PassҊ3y6u rp2 tcJoFUߌ@Q%fc *hg1Vo4|i 孫H}̹RVGA,y]9 ʞ)+>Šx`L[{? D7AlI}Nrs+ j6@)s 7-6MAYO$~{&F][qEĆ/y}>WB[^h~G.8. .n!@}m)m5ED;4ˬú%ޘkojRV|q}ih6v%o +fV 4jɤfI80A.Cufb̃,'iR9VG~)]*jvynwMc J2F5)p޲j(Pt@xt^4&:o=dDNmi~|ڵyc5V rCJmf! 703 4RKBKA%N;4zGAmX 1I"{(;̌_94&qsmϻb|uP#wPXʢj+&\f]vُ̨3X i650UǓǓ'bgCX{iCP-d9pQ0O:]፬`Q-!TsОɺϯhlXGW_h X͂؃hAn Ȣ\G.O]ݯAmh(|DdG#vqd3yT? ft```[ɾk&郄:Zp1(lL`ZSUihF4l"#Dg)!,z r'darrmю a5+_M6-9=4و!-|Q+Dg$V6XOs-+F\|@N ےXmo2U5$Lúu?}gl;kv+˰oRy5~79LZ`}SBRPZd9$1$<_F>,q)7sDZՉb#kZ$lOϒeOHB$'.y)rVko~)j*Ddн.h u+^asm(P \aqź:-WU˯{3Cw -Y<9_mjeTN?Q';6;K>cePs̘%i|To$-7N=G8R0WZa$`3!U*N@fu'h),zuL b@Ws/p QW<1͒ʈnVXEܓ*ǐ`[Mo2sB|.̞=kHMBzҶS)W-}dienI__*]1>Ulw<6KM_* <}}3?&8/Fb;T:[Vi-.QV?Y$M>B!wG>3foIeG*$G{_sS6hX9&%Z~g4U4iR"3M1>>5J/tCи.6pnn d@ Y=~[s+:tkM/c┤zMՌvw z,K6e 9֕RW{T8s 0fmܰxYTؙ fݶ %Hح|oOa[F^g̼{[3mx[l6xiY*g?rn"~O_oLr0ZYDF4C!s Qqi}4d,z6Lx}sgu_2&H)4nQ&F)xPYUSۊyDq%gILi~F?A7wE@` mHooЪ& i8/q`cWchNes:k't&*s+:Kj`L9W /F3ڸ2z 7 %]AXIy3WՠHDy"7po,;s oaylp:O~iUuBJ.V~(P `,@ݹ멪 :bZ.r4 &TK x@;>w%Zkݻ$B(Lc !] #U@3AE _l19xK 9ѽrW0G\D::vϸv ,|{~Iq]?!n)0yE4qreT؈CTUjO_m+m\* kF0bǤl=?N" .ap0p՚,Ve&z((w@]lW 봥4:$cA.*CMǧ@G¶_geAU.FxngdIӡ xKtR?C9\))7sķ} bbn_=%v}cؼA (S^XϮ.,n3Cħ[p%w'z*'ƋnŒ)r{S`mSA LDV 3*6&\_9J/s;F&)#~v2Un$_X #S0sH<ֵOףOoBmlB4n? Ksg'k̒qtZTػEIQ`%YXL=os*kݳn,2qPVi#%Nt3 /Ӂ5A4$9uobIK@%o+7jlUߒIܢ;짨\G_%R;uZiMqѡ_o_1Wp͛{$:yM '~H㐥;V5.t6. zwӥ](\HgTh&BCQ`mJ^Y Q5݈E)w}7. By57c+PbN>+S:++O'2Eܿ>QO҃N@PpŁ@$D<#!eMa|ɅIPAT:gS!J{# R?ɿ|זpRn_`uS E&7 tk!p 7ԂUL^KKUUX/cLai ˚_MW$kW jU1+ ?tzw_S3(Rk,kx@&#Xe؊:Zn¯ = Ō\7]&Ve>O#hx]Lm0r-?y눸m8'o; KnViH.xX  B=Ev> u\˚a~`DĿƕ -!ufv|nxf}?E4[,m"f1wNhi䂏^}ќ}W5v ug~"ڍCM;֊Urj"p~Sb̿<|M*&̺NluK:t주 F3%a }q&\Eں;.[c|`rjEl8*0r6 1+Qӓ&%óBT/슣7@rJ?F&/J|Qen[Pg-e+T4'mYR3Jlys&"uc mj[6O<.s\:Vg _Zt Y1Wv@W,Jͽ>ffJ6{:vO/K "bcNZJŦLUa9Q)P7vޯ^1_,S_₍%^66<Lz8H޽Ee&볗Zu9@jk '&&ʗ,`!GܴYf'mqjϓO:*d*s73wH/0zhB.mS;+R$?{<;> HĊD=-1\wǗ@0Cbq[y~(fZL;8ZkGBy{4JZJ橭EsׅlL ~F7o]~yu_~أ.Í)I D٤{ 1G+Õz fAnjVG[s*T.~P'Đx: ˙yZal5Zs'RWC{;,F%]9#,6(!ďlD=Q{.ZFwdrPn8;BDyqOL-6O=M壅T㽩>_(Mռ8ur(fg*/ l)yf]?{iyh̅JƸw(CZxĥbK pGXzŁp^=.6ZcYc}svϮcX9`'^CCLˋR>.fj2Go1ZưѶvnWˏ|qK8Jw0!a 1h;3kGg]:m6R>;.kn9CY*#wC"/4{M6K2dl^9*1!  B7٩0 ۪Ojr)U  8.ONVQWFv~%)u擝r{&q:Z5upEq n.OǒT>L>gX|K`k=H量%C(l KSxц|ǻ>3E5q6]-f ]cTS+CYZo}rq߫-fҟ`޶˿c&>o'NPhͣİqpXW#aB §[%%2.д;ux-[π>>(:|YfJ((r26+wb`6*rOI|[A6٩I3l =6:jo.&!R>I! XC&pk:>K+; C_1 v,y%2%}5;G V>urI)q]H+> qDX`4jIks禽R}3*+,=\'S>k|ŒaMOǵ!1@SGOP8ˀ"GKi6{k݇7ZIԛ?g~#,}>#,7PKjLCjluXdl"@t/5fZ3@਋"?VߎؼxDgʶU;_ B8n<q?>壋wsy֚=x (u= ۹V['M!Lm-D6m +#6#G3 u8IF,7!VdMiXCoAVur[K ߿[#>o #;]]^N܆#"_ɷRawb.>U8>GMQJ&;88zP/"%鬇O'Zv)( .qBؓzM| PȾīSbN5'C*}UXh4e* Se\1pog)l1A"mǎPyߔ? dMT91klk5 '^-a*㥰uxjd9Rsn#Ѣ U3ģlֶ]Yo9lva;A&L?EhFځx0ṛ>CLr.\[Uo}=ӓ f=}f |oA}w㝂۽C5-uhQT0frz+XK{=dzܵrJlXV~tR* #RFDYؘ{l {Tw,ZM8y⦬oO]Ia ^MDW`}Ry _~KK*25gq ;`N뿬p8mhb!K# 0Vl4lkBV"jv4OdPQk?hhZ>J==rX9 vܓԫFN0k>rm~xwZVPIBA\hH1e  n.I^´Ⱥ:$쓩d_S [7(˔1Sa'OPI[<=GK&}i2bQ-y2X?&L_}U9yi<oo!O=>dAl>q3 a9rk24بbK6kRHգ>JJ@2 .S+uQEL<_]K5(Jbs1*̤R wp`77qIW^CDYLhs}D񁲅R2& oo PO:`6Q,y k,"&_kSf#̆<RmßeԘ2E1q^a'4[+htYqSbwkkҐ@|Rxޤ1a>(qGF;'0VTYnLܯN|vё 3}qusڄv ?qb5]30x cJU:'hIOpŪӷ&~ܛmmz; "B6;IEd ɸĦK>\FR 0t(D2dPlj r;NmgQ엪aBjn)ila4`#;W$9 ;3Ƨ"6גv~ Tube"#4{wj_-!W2B9ln11d,6h *hƳq+YeMoDtnƮ`%&'z=M1l[Cg.13?E_j֢XBa6{"TP7a`2n>cj Xe 3N2FPZ|R.\^ԛ[]YP}vCu.nP6:D{3gBe)wTD$tih47k:j ;M|-8LCC<p,f8 ֋ ҞR\o(FهXc< 9Qu*_{LCvLA]޻k_ : [d':ή G\$ĥ􄟃p(sƎ]!unA߬ȈGc^w[>kS9qu'V)f鳑fEZ)ecH_}*ٸ_M{aᇢ*ěHИ6 t~ޒڅA~xAPHv)5xcا*m9Ay~=8i3w1}&Ɣ}j[gϰ"k(&\e4CFTF:$|PE].,BTk1Tv YU6XYJ)?0nEZʴ:SAԬr+? xBF+j'bg'_oJ^EXcr9abH7YYefWN&К$ !`{d$~{L^zFh0O;b\li2sSV[=zXʭ.xZXnǺ7n1 d. qb]9,BVqVpwyG,i$kwxWNV(`< })0ij pAtd]j_TI@Y#%]@񨛅rZr-S֦dGEiYiFc$&^RaC}TО=}cN g;ዀĨ3,BDьĶd?h`WT"uՓw}Ǻv^ٯnh,~ubQ8b:uDK &Di0XL5 fe*;CQ+~TVORNtEdKxo O fb{[#4joBp0f'4TKdN`P2VN[%h":Op|KBj3i)^$b K{]G%G҅PCCK"f/~b'&Mc><34zm2z⿨v&f՛<OJ"fm=~,#{.})O#"#VJ8QDi} uZ\+%'n)t!t5"@Yޯ2 W|A62I^":hE݅7aD?OFg-XGzcS(:O抁<#SWeGR'K2ZVPG肯1TKUX2a#{v^e4{HAh3`jPYcql1U0]2iy'{Zpߌ#y;LLd#zKܫL~?$7Rzㄶsg\ݻUb$ZrRU9+U=Z9^pHI[KlD J WNv5/'|Bo W<[7wzZDu 5ʖ `&B\~|UVVi]J1QW2d (B_*8`_GȑŮ?s1gͯ"&IU[2 `Ҝſ5Tmk7΄%Ib gbcQp"GuNޏ,\%4R_=6PvSfKfuq^aƨvSdɾ2FV>}JVChF?$O (1WL"ʭf&@Ԭ<)+w>0rpP7Wmɨ66QMk(;2y䛑"ٚ?/lU_5h ?wtzL_fZT:5)_e 6nAϢgEx][LEkٴ!<( Gۼ; 7|k&^z'{DZ8%,LmI=\aY@<x~>ËK f^I۳xGCڂ3}ZH͝:dq&JY)Rz_y?v9Գ͹:>Y3q7Q!VLwź}TҺZ ~ ?uY&]E5* S9^צIi,/=>gNhJQ޵-=3 ou^&N Ù#2%nmIHtL0Pp:S&n R5ݾB 1F^vؾ|LoM98x[ٚЄG@40&T)f/XQ)w/;cY=b+Ż28I\Y;H'Q\(DRm+͟@$F 8:Dۂ/_Y8&ܳWS\gLM#|Vh%l8^ (pDB{/%3_-$ L  W_P$ۊZAP:E/OtQ֯A0`Y bf'=fǷfHHu!|ir9p>s^U9EK\uw VUH-Hn 8v+0kܪ, 9HԪ&iQbu |pa3d$Zo|,M%vZG3z& A92 1{K| [dwPe1WNRNCVٚ}iZ KTt7]<|~<"_r]onc/SPMb)yFdu'TFP[$z~V,sQ7i:cɥe _5Ak;}[6q #5fH,qW<5|E_HDՙs~vLmGG#e>:?B܀Mȗ^$gq~l$o_&˖p o/ڋHrl,f=\F}h,dB 9ӥ qMg>0~v~-ڒ]v89v`ɪ+{怇58cJȵp#`oy ԎVzKZR&h/J!?PfKJ8s<<Џ!IfDc>UWerr)2 y\<0& ˁzZ{x-)҇(@/BY@ ˵ g_odƬ,ߐ+q qPLg,*P0I.wwQ|t`#ݜ5Ibm`Խ]^R| #>íbrWY7%%L]Yq @Zd5kQ@ mu~TuRoPn玬'A)fxx̀ "8UOEbm|d޽pE?ʔgoo"/X1:_8S>o}ѷ'6WGE2m] =ؿ Ǖ-$)kJ8 sZl_<KêVO8CM(a(JuO@[kT/s2ZޡI)xĹ %p!j㍹؉( N|?^;UBj2AiKA&z ^̜2A(^#|*z{桮#ibQ^:!sTGKаLY`Rd+ǒI2ޘ#!)';Ů` Y0ߝÊqA@ NW޼I,&kгX 'Hqv 4gBݦkXo2\tB6 -mS14AE:SP{4zWf~ HtܣuWsw}Bj.!Ks doGm0UǗmQ;SgU{_ohNqϷQ(L"E;'e36Orz=LdTC~sXc1Xė5I$D1FhsNjMcJ B0\ c\Fʪm-u1N^)dzX2oY,01^kHOӁACD2v ]vi߃B(H-mb*}T\yh[ivQFͭ{/IDnP0,57Ge@w Uaʔ}LZqrA?1} ߬>^pAb /{UQw5kv6&x:ɦ:3<щg?|AU4nl$wnⲿ~\W\ T||uP?2K}{>r~ s`nKO1ηQB &OtpRd=QgYYͥ1o8fnpZ{G6j?WX-ў[f~ץd x Qv03 a쀦~/ks<;qזǮ^W x O!h ? ښ` X&Zۆ1eA8!fd-i#]8u, yB+{{b321ǖafue]돑Ԫ:@P+?iG12UL܃P Ȥߊ:8\أ%S;kABȅ7/ I6$ dڪ!ɶLSĉ@ehLˀ` պۗ9 e>F;Me̸IwLM`L#CsȅamގFi½OIdg Yg畒fZxry{1gyMjH}4.J͕/Z*B!2\RsSWwQw d4r>;j8> }ϗFZ @"boď8ԅA-! ""6C@ =Ys`d^yL5'ɂhx,O< {]1Y(Dsu2 x\`ǧht*?ݳ<ԟ9LI4?.9\ M }X %& YEƇL=}0L_G7`Uf F!;o2n\B 8(hֻLXJ-qd ܌4ݥe= [f@p#Tc;er&nAG+ =x/ŊL+h>RHLϡVTi &7 (DCE21^@'3݊yܿI~i6X#T!A}t]0k^'%X*fr^yHU'wZ('g?BQ\Rj.|d0yIfjxNQVXSvΪfX Oß eA&,?@]kg,L1bF"c*u(Zkmg xOD@o46:TTQ /#46\YtrO3 MMKƭOCq}5F4o^jd-;N4]b}dD&o0frRr1[*(!{HXEi6;:Kx렎* 1mo#0c:pH,N=RU1힅eGƀ춑r~@ ;']S4H2L4&ݲr+r^6Ǫ olTԞv3֤OBKLv`uX<Knp2A~+ZBH[P:E9b$/9ì0:@6>T K?Pk,/^>*М1h]'nxL.gڧ6s'ؚ.\2RT?۠PIi7;=-7|u9g%8'Hn}¢-(n`{C jX|( DVʅC($dv3`Q$B$:h}gPA}NgS5mU-6)HgTB^B;*(ar*.Pjݶ%'Qp1I\mmxzpTΠC^EqRmA#3m2N7,Z.2e5У3sS(HDžׯ5 /Z&zbl ,$ͺ(x1_uJR'!:Ґ շI/A[&q;`7u!=?W$AuATGsM?j(h>97hrhcR; F !2 ÅχbC}6: zA`t7v, RyL8=Uɤh#"m8ة)=HOHJRj!\R!R6p;8nѶf;x}f52BnE}Ka j#XtLE|&Ct70=4>H6ҼknW%B#7%ܢ.jg9/ k޿G{x:x/4s8JG}.C*ٜEaH+W_=G@9F$1 80nҀ3!KST*}kN~%9$Y 7=:]ū9)1]BZP6iP !l {m52'[\( I@>@AtF~ $۟<6;-'h-71 ׽-ص^5L!/N,Z{|4C;㞫 t- _Zs\P<&V !Gp||mm`8ȃF 3qw%^iJn\FWYθ` )4bdN!9NO`ATgkg]' +\} R󍚱`vTҪb.o0x0b.ƽp) N:1PҞL1ml wP4*b\;2!,`94 <"R:D&-#ڱkjA\j=*qS?]Xbk/;DdO=ډV#"Vq}_MD(P^a^cGqX18gi-(F9&Zd"D(7njPGH=- TzQ]^ yK|=7P}Xu }w}G>x=3mWjܷg )Zl hcep/ܜxȀJOiRx6t2j?L ӝϜt4ՊC)zG~@{abi\ҢTdQq_-PqAO7㡧&şrͿY,VLඒ" wOYcC^7?6VeԜ2;ȕoAMM.^&=so˟)GY/F#ؖq&X'ľpvHPuk?frިL[k{^ӼuXJ^B&׶۾ 're9\gr*T1A8Rha0졬8pLBѭF'ѐfsBKM;۞o{ 9Jh&JᶣnhkOHCM+"]$jxmu|_šRoP"tN1.Usx?i:`3s*Ĵ ]tZ H !"v-w9eMqS+$E@dHdgͼ4bs>E}QP )$C4fyz YRr/_|J_R(;- uj MZc{{ wHݢ8)V8:.&CinVQpcwpG 'wۡ??;t22m̼VQ.Յ]zX6+FE{6ݗ1W&lôvm>^H:t}PQ16XԈ叾>[E= M_~ga2DE\ӟ߷F*+Y;GWB2e Ʋe^2OV?rui6ւsW0Ooh{:I"fk{&Sڞ0ߜX4.W( rگZ UlgK]1\H;w<JUy:?@ޟdo,òXcf#x O՜~:6x!rD"Db"#Q h' NR3pTs=L*7)Ԓ$!T:ה ?h߰$[.U?Jʄ5? jfWj響B{u m hioL{FYncJ@Gn8v&oJX9<8F|B"y*X4/Q!Qok#WT`as.LB䨭vQnWwtV"v!Jγυj:N?0s{k/[E* Xt3RazPڎ:`LQWzGXalIq 'R}uufĞ4#Ku(GE.F~ENL9 S M.O A~&fbPOSBT$Jc0 j,,QbEˀ y}>剭p/hks.ju>M}ءZEHn%ZΣ#29U Cf}c[egox&V!$E7ȼ;SܧR}z 7G+ʽ·"ڗp?>ט(L"-u28bһax)@qLn}D&dլ5SDnkd oQ]͒ỽWr R9n,kGUVj~I#|]'4a PFOBqܜ-Gju0? vhI\ӏrO .8Kz9ho ~5/zfP@@y5euE}iPⲊibu;ZX=|Dz %?q"n(lm i$-hɞcN 웅XPW}XKcoo" E[l !Mͺ8m}RAf}bF ;obRp<ⷹbng 7+B[,@>oM)qjZh4nB9j{˭zegUVTDC0|fgY0u?ZOLJek/߱PMmN[:xsZG.*?? Uָvgyk_5LzRtQYJJ9"'g?BcAǧښ,7)8 %Ljd}vAf]V#iÉ`i`E0^ N{ D=*+({5%;3iJ.qOq4noe95: ``vLd359tfh%J]o ߻ .ۊ oˮjt1nK A#' 1aL4}To?,$5gP?ǓF%`I\|M\K.Nul86Ew\14x{;::5GJ(F{0ŒfJ[hV9pfʏU Y b@U.Kifa͝VMaJjN^I`4&Gڵp9"@N  +,:ELX"i&A5tF}VEUTuea'mv>sj#ܙm%bGt:&^'5~e(gk:9!iwMbD,+qkDYؒzMmٵqPnhlHp*BohS>{VSYH&A/g3@ ѲsXejCX{F,L UUA5圬#)/`F[fAh!=3dc܋S۱YSc GYC7SevhR`?D9F.*ދK\h<@cvG5"vhq(_Grcv+IXinJž}?>T'$ v21CwB"y`!D>:clAounɊ,0$G}*3dye8.kJʯBi?y%@SЄS>s;׊Pl)&ÕղK$[D'xLF/ɠ(\uK7ea"AR tȃX\ߕCM/ ?gÞ㐾s쵀bPG eex"xiQV[Ϗ!0*xW kfe,]EX[2vn;`vLv}ŵUHWqԀX#DuзmwqZɼ8kXR"y{.bؗ"WaCAW^XzrQ61~؃G&L:S0|`3 }de ^Au豐?p;80#{?L_[M)z^5 lrNMs#^`gRdX"+N,5_jABqd,7  mMe4rDGshxʆ˛$&1opv.FePhU+j0*M\tq5ƹ7Hm3W_jZ-NoPpHppfn)K8NDmGR6*k>'$o-oV h)E۫fϙ 6jh˺u /IxP۱e:r!sOCv/ qrJɘ!jo؞}p#ĺ<`qA @]}&!lQ>fy]j>q1UAS[G|P cxLc-qzbKgAmj&TmK!q6FejAQDJ!j2́XPnNo;]+z[_yqUDNՐGoTinnzCY>w XIC UͤF2BmuyLSlcJeŸPg/\Cx.%! lecp`q|)`uTV'GYwN30~ ~4hb sz攷yd5@..X-0Yq=i8Yt@,46e#|G$o#n"GW@2$8?/)-j-߻./8hjV_^ޗKtۊQ=\ st"7iLƅ|R[ m-}͞(!&@2G6EcElf,r:F .UugPJcK4)P43H.lPV;.+0O&esPsWӭI{۝ UGq1-$hhgP ^$kd2Iu|Wgf+'0At4{Zm=vS?ő:ٷ6#1v.S*7h /؞`'S,^ hN U`0A^#wCr7;GZ?Z6N* 1X;Ұ䎄 HZ;,s5tzP<_f< ˆWJbRqv@\G\M1NWFkD3:0U# o.b6]%#pQQ:qBm֪EP0*L97լcYsvFs?9s* dXq F1"ˎ49疩`>3XI֓ةZѓ 6ZJv0u$;VNa u~LZGWa<0mV 7#+fJW })Gli'OUD)3?O)ʌizjXL'Qib*x_Te2Feb7!SX}CVG:<ߖcI@TFw*!$YSE,ºɮHkHQ9 x6V`zKLV`FDaIC_MWaut/ hCa U4Pgki<Z0TZmr -Ojh[:BV]5jEbxX#DtQR)&o1qӑq^./eA'<ǰ`P۳SqGAW|uP/v9`k@GI+tTP, 20eF==J/?!٢ABI,m%@xq}QwbIH=|r1\v?=ԼRHnJ]}VhK@4x}aNg{=:_4P 1huhߡiEcbX[js|_ 9Όׁy[G]uXTw] xEx߆O$oQ~-LZL긙""0mvKj/f'}:X^1{Kc%=PcԍAe|錋(fV S =;"FptLH5GΥ:q$j(W"0饺lm- p#Zcm}: KYT| "gUmv<`aǂn)- ~dBA"7dNq݃@- 6V0+;|eHd׸ }LD, SC8nd /'ye渃M|"i,s{L(n@;n R*M4=Rw ƃ*.Z8x("C"8nOM/G38Ip6>5ZM h=٬ ~u]dSOX/}EPR^v3i]~_L0/Yq);w`B&O fxkУkiRa*'EN{: ICUנTN$_mvٿPRo ]z5P:.܋AHfsd|CL~/{,nTx_bG``W 5OY M 6P+ۧu(GAQys oPʙB3F\Z,3OpjCn. cCFԑ[h=5|u껊#z EB|2<,1 E ,L~@Tx& iP\_z@s%ROTyUX>Ɔ ]Ғi 1F#@9 Mb/7 !tz>r3hgH;Z #o+q^'\ VTm Œ2x̍oܼ5$Aq'xZ: !V^-V9`yQ3h\V }+[y&]nb־ZlebM~`f6" o@lS𯙞$,mإ8#4Ns]UpH1~~5[G݋w%Utevtq"ӻp~ۼP"x bl/KH QJwu-Fߵ=7} ǻRQx`ו|s fǚy;٬dkBv'JoO+ǔxQ?ᄃuPA,eWCT?Z2^c*,_.>#VNϜ#1)xZgCEЫ/ @@jJaX{M >G@ehjvGxTܧcrab |boir+P|*j7)°3JXY7<gȾ!_r1*=k#}ɬsҞ9>k'L!^7 λyM;9nm$9en)bmUYàm3\GJ_rTǦ1~%!!N)/b*^KDfMm9 O`p"k]nxtd9 \4Q%Syߏih^AtNw2ju/qW5^\82m+ު4؇@%Hq3Z^zWKr]3\yHֵ߄o\.[>iո賎d]0_U/n|d10&t WV:oH&[E.|" * Yp1%o>wZ@I"_ ]u9K!gGyEL!`P%Y1;sL?&Q9y `?̈`T+6>ߪ!MZ'4`E\lV X ֎X*qɀ|sցE&+"b ,ʐ׽CKP+# gjD*>d~y+ķUPQn )4箴@״N4|>P"7a.Aϴ^~Zv&YL_ۯ9{hBru"c]uVЁ {"ču]1=y(n(*֚>u Lڲ>Do4b#K|JVIM\-ObnzF] ̤4)|)W`}$KB #TM}heW ɸfTyyi=g#949h:h${XaҏK%PC].y EQ1s}UiʾTbb*5(壜~9dC-7g\@] ~$PTY-MEzʰz[XHÂbe92\.@@YBq H=Lj6vu9MˋQgV@š|PYF֮]B*c17!w!^2aB>onqwKGq/y179ѭ5ђe]5ͻߏ{" 0g3-k%6Faz =HkEHBPث2kV%+/UzjLig@aFIG, ʏˢ!x-2!RT  Rώ2A(O!̀I*ʩ[6OC/6uQ$7f|D6ϰEyIҎSaxeO7n؇$۝H1,iӥ#ZEٖ:iӧ#aXXh{D I{*9dsZپ.*Z2Y(}Ns,!JiS9W T=3kFen%tn}Vh v7s]R"lH<1YAOD?lm9 mKX; y`ȧ{rC]+ |u6A%vk' ½;~1ߴ.*TY`w2Mݫ:[T1\&QPӅ{F$jٓ.5pLww0hbS ( aT-ǐ ί %=F0o @`ik폭({:\q*\q{ Pk&/P{o52\h~⡐ܝ>AR$cÝK2StvIRM:)5p(8+Ns11ܷ*B1%V>-"zN:ER}>L#s Gr!"lxIV7)#½Y[8"J N.1Sw~Q]4.m]!vmlyޯ{OgYf@Q>o\'Mav8h Sq3q=+(Q1Uo<\=L hrDn?#*a?: /KF<Yaૈfi7 Q|+_Fݻ͞U9ˣ  PG'@r:U!D:bB&sͬ'ѥk1h[ zm^:=Z\7ND[}c7:Kt@Vy-XyxQs1dGĆެm5 aF>=X5爞 e,c=;sA4awQ),UCͶ$ayW s2;%7Ϻ&RHCߚ&gx)/4]!ml^?{Uc:[]zIz9o]ԶãmLV "Vc̭>01Ϻ[Lcv o)Vˎ[ݮ),-`F׬:oڥ*BNOb۬b0A_/0ҍst]\dv eu\'>Rs2XSsؙ QWhCt^YX2 !1}*[a@/Ha{\<,v G]g7bDC}iEZL qBk&ޒR&>CLFtT BRPjp p@ * PNEr`icOq9?Aw^?ssիI!ڊ|Lj@`VM.p TlD [R?kPʳnXNA$z^V#Z}ƪ<:`n3U{jHkm7Dl=Wv~]CSWm|FYm5vᵙ˰a;uꥠ.L^8"nWI<цi7Rt./K6od{l^KDA?~1Y7 3F0':WXfûS.oaE{5_kK &"8߻WrFbD+ G Bų" o8󽒗wse[aA{G0Ŵ=*GXN 6 !`U!f4h,cyR>`}r`ֆL`-F9;]݃BR/:.6BSqFn@tkF;&$\e8/LBܚ9: 3uߤZ GrÉ{{8G o,ATw4-`Rchz1ʝD|J) vԼ)evUKo Q/ NK^dhYΈfˣb:EJZ cI;?3~5]GLTyHNQyвf$E+gRY5$:=-zVrڦN F#!os6Qh -y^IP.}H¡4V⳦4=Mݍ|kffx:Ӻ%7 T֖G x'{e '~;0J3*maˎ5-XD{ g*6Z*1zU_ҫ* *APyR8E'96#Sm>0Lߔn {x/v BY1) }o#hSf&Dn>o з|M~9 cAZԤx$gw~ht3ͅ\&vM㴍 2Ѝo<(LE4Pb&w.ٔb|v)4T>Jcfcm/"ېH{Y\!Ks.T|joRp`X鎂o]҂+XGx_&P*h OF뉻yr݁&sYkKo'2v@V7[pIǕv8LNk©bBų55 pUʇN;#n۴+e  ,\LS.LFd%WLEo5D? MjkXc(NUhty{/h\2Ht;)_rn ["N!!裣 ׫+tlQ hzգp0,t!W7QJ /9[L>Q聰*ԋ7fr$$E)ڒΛd-LxsFE(45c^TZOrP "nVV&F]фzW*֓V|hN@$#0eG4n|OiMv$1=f'߲;~iҥv/nʧdy_J{mc ec֓ss!ЄOz_HKAS#3T?ɐZ2!sXSS2,{3!4]Vucp:lǦu ̟m5FF+ ՓK[ӓ +?Ay>MG ޘ?>k[`w2%C;sY\+J#.|wfS3J`w'nW娥j]POPz(a>/(\*{X71ADPe̅ڜa2!ފF+資 '>e-fM*+,Kw뚯VIBw* sMg#9ZgX ̉ y )u>ktqn;n>g? U |:g&Rʨ,4Je 6@ͥtzQ~p2, |"=E`1M#"ҍT<}ݠ${,ƢUWpXZZ퉙3 Cyͳ9` h|#EKEwɧz*'&3qDڧ"S$&U> zRzR}ωI60sC ОQTPg)0n-kV&{Go QC,M} Y{MD󏒾s}c,I#lY T:L up! V<ʩ0 8'$j-yZKͨlHt5 @:?`e{ɟ\TcM9"ff j@z]v6/) ˢh[vɲ픑1 ¸Y/$! LdAJH\k4?bd: Ҋ8g/Pi!z?mc: 2:a>5 UGGBsqH)rBe f=bq-;dy6j* !fP x}vO6ĉLDUL?HE5F6.2N}dC`?_j3="F'3mh'FeG`AF .7C|ŶL,LgS@"Q+bJu&Ӧ ȻnhLC]u|8Ε 1ƽ;se=bTJkpQr]oVNQUOɛ}W6ˣA`o: )K#RE1…I<# ,T,? |N͛Mnݩ!$d,܃85֣aϜ7|2tfМlG'V}fCeQ!l>AR&iSNl+]-Ώ yHq@_kdҝߎoݫ\:趋lE$3>s3g?b &߃M3- 4  CXk-94~ 9ʟO+3-B. 0Α z3 8qOAG-O#ۼzU8iܪкF <7(Ji1U>]ܔ{ G8#c%ȐkL)n,ECjjM b+<~En7#_tqߏpPkY榴ʩ8/g!S"P7'#G\\ ; VǞ!"ؘNɹś]_D,hF?]g(\ŒS D81YX "ɞy0_K[5&4cnHQM]dcdMO fkPQqv=1xVL|@&XJx۱QQ 﫴%}lziƱf.R אz\ى[i_iht̲os6w UJH o.L-MjtXbh+k*C`oko vۨdT TF@4 i\M')z>C@94C눔LBӫ'bzMZ%ͩ4Kx^%#ø3agM4>f_mQ˴]/Ǣ+lpʍBM)n\!H]]3H~Gw4OܱՔW@)î!?P)k/:>UL =naiX~uLtQv}3+BI.ˁcAj?Tv=3ݓ(jggCH AzeMbP':+2 YZ )&N+,=>LacamŶ6^-a !im+>Df9BEFUHV+3_Y=C3߇:^υ12 9`lqBqF'fm;Chuh9Z|r3r`mt.J H*ˇBLg3;&ތ j}jzUGؕD7 icwo*۹Ȕ9ghk7,Ww?,ȻtQ!߽oHhx\XZ_証݃245"%anL+ rLV;S+ր䥷/5*S B¤ psAjSUw-/XAz:ƞUd\-jK]rI)7Rl䑔JDNS"4ٜsr5|*tϱMl"dw>oyէiM2/ ##ijUFlcJOAb˲!y|Zbuү1wuiA2 % gH,#{(•u$e }CAad7YKcr2g?(ܑ\s@+{B[(啩 w%l'$tY诱Xk/вt.z F ٲjvHJI<ԋ[,!@T@/#_Dp STݍ<)< -Ov L$#%tC1#)K) 7rgN/Qj(YȒ8a8# r#4It#^V)9rH8FnnpN 6X봭xdIR?/zs+ I CX5iEHwj8ioWj"i ?/xcD@&rӪ^"H|6n/庰5ơM?:0RP`'{y!jǔ!)Q9(\KeuF@^zS[-KGZQ M"K[:1jjYo|]ct#: aB3]l3RS9XF$V&a 6~~<שs ?&30{x?i(q 2pN/:q`k-h=|pdpk>N#Ϯu; rVc\3bȍTXf`F{'5uAG"7Hѡ pM1Av~=~Ha"h?,Ft2OnthB9\A4{p]Nۻ+5hyg6[lhg IEjS+MbTxZx%ٔLc]~b' iÌ]f0lƿT[jw>8R DYVHi6Mjf3Q2Zd#xA3S. v0RO3-iI̖^P[848Ç%>zUmߛD=1(cȱV_ 蒿lW9vͅ7$ھ1AO41GdY0##YoEyT9|.@ s]+%rn;@XWJHn!6p#8Xʺl__mޔC@.EKQL$4}%oycIwߙ ,k0 } izs3W. _bL\A ޯk1窐xz$9KĄ8%OI|O-F¢}[yl hdfdJ?OlVUayڮ"9b(D=ZˍiT ɵ34|{>1[q4X3dv3 ǩ-etIUOs,UPzb٣/zIxd!0s2Rk>aҖ~Ty mznvխnN.~n9/Z2ٛ;0wI;'[8 .ds^+Am=g,Xtv6,,Y'2 EWh;IjB#ߓ]Sʈ`FEFHchO3zRI 㥹.O5-jp迍CMvUQ=h21GD\o' .kA~Hc#>J--*j(BQEx % İ] \1BBּ kx/YQ %q3Dj4s>Oeap:!p9Qo~޻'8GwfYa>Mp,w¥_ѻCm͔oLF2.[)i~P$M7_Նn6JHє;7 t1ῴB<_!ȁGD`E+ />AN+a1Y!sɊ 5~(4„ 8n 1)mˋl9ޓA( k  U  ʚ5^5 R>&³{1'~zJ2bH>ǁ0ei_Qq? Nc$ N@0^O~ݦrk5LZFi8{Vdo4\pU:svq+ )>2'_0Y Xn K?,OU{//fIuuz3NLgɦK1ەǕC|{ է3gf6Q{K(ڂZRPez ÓX1Gr[MZ,H=Ơ?G /)u g4HY|\y,KX36lawܤm !NQCSӑ)L7bB7,L8rbzIrT:&=:bެ"Rq!S}ZNDdZZG^2㡹A3ol7wz*ĢO\`oaӜL42*+t-YKF}\ FDPkCw %߆~d>ЋZ~ɣ@.JC<#|7G;B0s_T|+r# .Q+\l -;S)sߌ;T𿼓9;%BGF^% cU yFi(9xoVP|H0ʏd z;lJ H li#%&Icf]29>?<$+妖[({Sr=*:Z1S]$5=, j=u^MyɜG^劝Y"zj'.rSo=`r cҒ+4L& QV\aa#N܃gj loSxZ`ʙp[@;?6 ⺰LWEt`C~T:IbDWY*S7H 6tn(sKT \PTH=ݻ2!BK-x-,q !rmtS!OVP|Q^rQ4(.LSӢpsɞX7P谣FUb_P6x E<7|vmZ#AP]~l̩N.o,b9]>xU@J৓qHa;ہOB0t ^'SLc4/+rcPsBN=` LB@d;$|(sxz㧦c>dpn,OLaDFbFT߻s[miN`i]+ptb<1zNeYbXoAצ kF֊L&P2s},%T}FtIg &"Y={Eh#)D-0K]h-`0f ' %Hҥ QXae;`m"PW=~o9 zKZ+fr#1 WS 707ҢP dDE\3FcۀI$]b葴z'GC! :{ $)X<)ZжғVLQCΩY0?ߺH&TlJb`Y@پ}Oc{Dϋٍ:f)G+K MpԞҘ, dz_DiAk}O9OJtNrTc6ZQkwܚ 2aRt-mC9ͺ:yɘuaxmAz@bEmUAaK 1ҤͅOQLXc9S=NXme :~hUYԋG (ieK XjUs{y#QF `C=3o8cƨRf5WY)Y[k,{Yg"1oW:Ƭ8By:Rsh|66 s݂# _ rYx4C<3T"praXCpQ*#(ބ ZT1dS]X:>/Ts>_N"{6ۨ )YAxY,Bz_wꈏ1Wѹזty"ŧgv'+lNw9gV=Hgf׹b.gG%=DGSvHZh8 -Ķ"%X21'>jSTғ{HTOLȶN:LNK28S|U#Qxd[vF˷CmV̺:-)tMh xa^*_P"u ]*_p_>IclqJBFF:,UvşH͇evWzo7WbcRSŅ aFZdg%-9|qVȮPg">JSҳw-itDZJW 5*2AmAů vFxj$UUjݩ)"EIV8]sAU [ŃZqZᆔ⃗Dۨ:2$J{fek^kgX_}D fеiLA drKzqʊ)|LO&@N5c>! "{ʚrݰּ˿y-wa82΁,0q8_r~q셩 !K7)n*|M dJvm:y7h*Xe]խ-j=iUk[1UY +! :C`O·a]Qħ?ʻ$:u*zw r:6+w:T*a'LS^&>w^Z:DY6wh?`r 4 _sTh}xl PȔeTϱ?eʅ9vK?O[n0(g$c) B*&sX|EWDOdo h (R{0`Ze2U١ֵq?|`1UF!4N;,;<ڼYs- oŊW#nGc![ jG'{}Ykr1.Rzex4X2tyYRm['uS5'_uoTjFIgʾ{K51O?I i+̑⑆qTRJd% 䯗zA)V {?W~0/"yؒXSՉ0nFtPi^ ʨ't Qr*ޑqh0xaW)og/>`Q" _OQڏ@[He 8H~F5%4eB>byQт_"P[6i?BSGB?yD۶ƨ6!lTXϴ7idn!+wخ_k ?2iZዄ?w6!*T*DL&F=Z^1+x1 }12x;C1'`wdje ,}ܝyS #MiJ`{,5_?6y2g\8Ur*2tq:ð%]>&J;[ q=AshڵvMN-[cǢT# a!UUa7k!FLƾV'&j,|/y:+\f i# 3C 2uȪœD/x0>SY>6 j[ &Zg}c'u3'8 s2p[=f3k3b%{n^q &KдB[˒ÁMzKtR-Ke&CCk&g~_Jc>753lϠ;pgr[-NRS( Ei7  @m&KO>L0msBH3o(M?Fzzv= I4lhA\C':Tt#לXslºC2Ue}OI v* ?фǘA5X:.B>P 3`SIlJ}|"A{B/I#hq4n4!XJA"M5cǫ"pO2`rH5A ר&Ջ|qSYKfz[!;׫X`T]NРm?eBcO2 r#Ki'7+ U< I`oW?U֙_6(guR_-ꏕG!DKI;dFF^:<) WeFm-7a$ gFY_aZ}q.Yչ`C3 Z(ONMf"Ԓw=71a(DO>mQLexmyN07^~}HBgd6ntWژcf_Uz-lyoD5*sG/.XO~uS[V[>vko550DBԃNS~tu]$\zhA>g-E&TzEk٥GرO".R*t*xnUW:$L`:k H2fw8ҥh_ W:cPplےڪޔ,%ɭav>D͡(<|cRV4L_h&{keM8 +X% 4Nn3?ߪ:F|S/6ݠSRQ:eTΦL@ z2B"( +u嫀*W˛qfݸL_C 5MJؒ]Y!dƌA4KsF'@&dV~J5gI`G憯f״1t-xқQϿ*j;aXk Y-D?1{y5nxnOݴlիWܑ ͷi "swӫ#>hwB~s `Rzn$W-+lMF?[(og.˸ԅ]GIZUo&IBj_ gxrX+nEL"_]1 QPXg/c}'::ůVE@,¬%4 JHM;+t 5MRݳ,n]T?h20G8+=9+tOQKh-\7/\A8{Hƫ@ GŏiAqE'Y=ǚԸtψ,>?k_ /e&eTH7V+N.gB\$* ڮ;°XKLM'?S0_^q*o3 zUm|DlE?,!STc-q٫f}ki -?gth^jo8a^sopulQӥ?Z=tn{? uP"K&;7IʍF>Q'O*3g PقPwYK x !3;Y i.~r I9уDDUEE.((y^iKN—$+hr_^q=k-naa}%P+5c(j!"+\`,."c!wAYY^pۨJJ9/X?Sdz-qJdpUkaM'vƘ07h@ilTf!/lɊjR3cAb$פmY*}ŠUk[3IĮR6ڴ.<=^07pKYď)P4qjWX4j@%Wڻ|$Rnr/] EZ4WS^YؽV>m 3c4spx69744'Umo~EfGu=3 X ӤcHhX'mV($ih 2`ۉia,ퟃ9_WKiv0W`OV;Y"bصc`ǥAt< +(9cˣLs.*?L>ֽRp.2- ?W^?Dpىԋ*IݓRՐD2Cyk&p7.H9JEswV3ål[ӑo"#qyN$z$5ێpcMC%}8SZ g5;"yCfAV[4D1(B{3bbҏ9 VjY˺v@3v ^'d%u7yvDUJEpW;Y^:u%y J!紂"2hDwlJm.ڭs{a;BҐMLu1s)'falyO2|t|݆$^Ao\ɇ/s EzHcb/W$')fTM:7#ܠQ|@""-vOq5fЙrFY,rK?0)0xHT Z Jԡ'К웡ݑ,oa[xkwx}BuJݦIpk%Du "jZ:т1{N!@J=LlO#M@х'Cd0V!A*0ӿ(ș-{LbqXn zVg d+gW@PMcoVƤO_eAs0ZƋ3?k4>: 2uAXU2+j Gx˗ nY߻bňd]<ǜaY v™:t[X6JԎ UZڴTPZ@r9:`wҜ6`cM@oA~k`!r[ſQ #DXs ݐlf]ɞ@%©]Vz) bn~Mlv*U>NmwÍhYt3%XeК7iz -"-̕Ra]S2+]y56KCntbھ:̮Y!8aGY$(MG"p2Tq̉l! RAA)l-_Ypm\RSeit^c[xL#j앟g?K߉?!?Y2ٴũZI_9@}xض1Ns6ΜO}uն$ BNK-@ݧK\`,٣|JYiu'kJM>1wGj]@Wʠ. ! >=lIg A+e 5c3ec>E3_607Ur`m1<25l1>lhg7U(Btp",Uv3ms1#w旱K IcqUdl%&3̃#anɫ#V1:G;B(b^ʶfY wEs4%y OiE@xn|zbM&"jΐph(/,a(-oJ{ DjqVlNb%\hN>ҊHIA>5 >pY}@L{?7UPqyDE^&a; -_2P^̏;@1j OS\zx;Ǩ ).rxB2oA (2iy5 t$Ax4IaF vf8&'xK^_yjAd[n .1 JÁCG)N DM?i G,uq(`,ubߏV긭CM=bHeIk7+.I wG|W՗dٞš<4񐯴 'ju'%͚GLDS39ɏ g9M=N8،vfa '2D5x}W(=ӕ:nH1%ؙ:U]} v`pbu>^pP@7ጜ2 GRq0GK@qclqWy^W+|Z0Xn3]LIex2$)oa}s6|sYrR6L6żBkZ/>AT:D (ʩN[<%$CqUL'!/-!@-b?$ޕۘ@:mFI0 EcGJEJj'+R^K_"?J(U\!QTU _Gy| 6sI=FP9{;6;,@hb<2—bpAGX"vz2y:9LfQ=X/t{r):*8XB7 [zUH8e(.jp sd,b@iF̦ m1㹞ض}],qOav6EkQGڠY|E_ :eDWs*-Y%r5EV)a'6R\lҐʏdz60F^s2rY.N ;)E̓)`v^ ft BE洓pkcBje^Hw6MR~JM GGYr:Xæ8@dGڎƏa*cwpf^T :+{tl/|ʿni]Z!{w$NL tb;Ke! Oh:x:'nQ dR@RWZ5u 0igTȞ;ݶX6bcphl\,EÙ]eUzZ{"F5;%whQS忳WRB{`]JXUb{xoBAHXyݹtݒiYC>i7RubIW G2e ~BNl&naX;Svk?/K3Ԫ!$+a$;!ap~ok{3bB=dHJz??U_ZDJAr$ͦ{9݂CCaVOF”KYR#E5kIhVՎE)m/mO5:5(u uK㖳(p߂ZGap&8# z2(O$hb uy7<>ly-X2*@¬]}&2>g<""%nB2ȅ%<)!Egz0Yge@}V!Ja.+޵ڗMw,Z~beYoӍϩVĨ@̞f;O&\O A^GQ3Rk"இİgGMrp\A*J 2k$/LVtʺdو|X- p/Yaɪ9L/QS򤤼D@SN2е\Pv@ NX$oɩdϥ:63<G!WI6‚HK!¿jRL7EMÑȰD},_2.Wؘ[ und [!q"ƏD@4oc3,+3c{aϧkN|wDjNaʻ?H ~ *Lr/M˩h7lŵv^1'@3_E sHZ{ع(6{Bo;ץ=bhݺւA踧=iOSՉ6rS>aڡ {5cәE#  . (O ^MBhE28Rds؇4WmXG  _!}x =I<@dD\OiJȅ'g`;JCϚ{ؓmʗ󀏛,DgK'S Za $UG` _FttEĸ(Йԣ |ujqzESnE^Hd ԠnBG~楓Me|+ AX5#KS̠͒C\%$䪽SQm&ܲS2\ OF{^^R~a- Vs&ug"NnbM( Q魦M#h x?аc΃ duPDy\ DUpOa~>lb|N0{xַ&ggW#6h@_ܻ_<,sA.[k8c$bB 1m _\ R ^yw1?6op!ާn6y8@η& VQ~RSF٦W4k%τn鲾<]1ٚQ|䡀W_06P˴mSS T˫=]eo_ _(BPłr9npЊ7>Q|l,֎f[3.qJ'muE]j d|$ʉ=us=UiB:* 2љ:2#N=5>p.cZ5v_~hX7Ç%w#da^7r̽ŕ3X *r W}M`dwz߯cKgMۏ7n&}ǹoUA2^2Jl$JCBKYH|N'G` 1'iNwpAҦ%L 勵!'ĸvgi&=6OG&v{si{ԬrAVbnJvvcSY~wk i[WZ=ܽiMI) ׎@(7jfq&k^l VF;7Sl3Vo8GouMH D5E$I2ƹ_=߇?V;bܳ0sX0u3-zqa= Dz>Pi"r~r,!F᭍v>eDv[bqe av ^Yu]$  vv ;Niv0rU{reD0w;ET(NJO<\J3.ö FI0-WN j7~ymv<еSVMҀY-]/`ZW|u=fc4oi~ dOs\(56h5)nϡ U קXf6,nyu3B\ o۪ܓa]F%a7/(E:/`Vn5)x1v(CjBmD f;Ta:Uo%M^ʲ蚡)^C Wry3"p-{-]3*.Qe,+;df˹mҰ}3 WEzL}{/=G2(Fju? ({򣴊9?Py,.+qŞ )2 }ٛz?J5`IN Na +>a 'o7"-7m(,[ތ=Md5=/Dl3xۦZymc <@s&xvu&ll cYU YQ+y߉&ǰt 0Ht4ׂp6vO_jJHQZwTEEN1?_4+"_o$fԣAR W7INB]H gO攎ZB~H/U1Sx ~!*Zss )<܌Dn%ra|o5H׆l}K07qծL֜[zx>Yot^Pj"؝({W>UY[Gy%[p R49'PNT/S(VD~j[r/g-Jw@?pGsǝx H%DA͙@o&|N-Z>hXkT5dPsx5t]nLYT1+^P5ʷ$LǝQjMAS3B wl@7z/9|HL-h8U-b1:!K tܯmƧ~9'{ q#ttR|5`F=j|o&(']UJsWRKR\OZD Dm07F;k3?Ƶnrs]YV1ٌz1.-E3rqoهT gGޙlQIo|<-.U231x :@47Ss{9AzӅm֦J*Y#JǍLac1hK2"PʙWVMu5Zd¸/=b}0ta7Ë #fNx$k/B9"LY~MIb[J s3/=?]ڜ >i(I#mfX8|&8J,Sϱju=%F/1B̵a s0+Rmmua"`]#y]Lp0EЯ g ǀ#x!y)/rk{[՗ߪӍ$6Q<5_I7vZ3=޽fď> c6100,=p5|20Yb|Gg *gG2.ZBLiu0} )ڛBr%XSp}ϗZ*v k])el BTƵ?W26w$`0&/c'͟33˧T#9LT@"ggT1qXE*h%6"5$(o&gPѹ=1͢mB*+vB8.°j7 -]BIM&TаesB8@Cd:v.c c ۻ/gmhVKʩK"v1.MVz-rCvt3|?lyn=ӦB$2 Z+`C7A-evNNR__ʧ' )'L9cx'i>D+^WWu-P2z`7Y2U<%.ҧ|mTxi[xf}SR OY[֡Xt5E=doIN,삆t<Ex޷FvbO 7dTߘoVM >fC5 8;Źoݧ'lR!*/gyIk4%cz(B&rmsp^e6XSew؅B35(FR|f֌iZ>ƊDwՙY 8j(bQX)_coaEVn)#J4%}<!N Nd%QGn~3vAQJnI2&["*sl|A #(5uG=i#`i3'B#8aJ=N0 9$ IAM> _ v_1{ 1CSGt?CQa JLR$R":2E*EdjʵႿ)B4߭#8V%7||ߋg[/dz:b ]|BP}đ>EQW(, %GA4S$8h*!6Dd;\!TSVfBvX ?QM4J  `߰Jxvߴ@q(Ր3,~UdN,ŊyCc7b'cřhJn9aot?րG* *WvsaL!kb<笗WU;]ac89l¡ơ}&>rm$ 6.y])㔝ڕ%;Yt2lOlT)6rk\]8y{jE?DK#64a8J\CͣbHB[zzF2ykWA'D J)F Z*xZ!pC3)3֣FȜ[SJ5ٝ{nt *ͨ l"{9+ױ7uH.S"Vhvv_l@LeԯQ*#ŵVCEoY>Z>'hbvֈA܅0̎5`q?Ĵ>]iXDq|yk̠פMJ FΓ\`:.X,sd?Ձ|ޕbAp;IGht{A )#Ä\Pj%j>xyivdfC“DK%STdAM'~\zs^ %@u&MUU a;ܞpwL%!@f&(?W70j$SuWk "mv{L Ar纼F%&qd(͗Db@wOTh^U᳤pۖ-p3GwG~>q~H*qV[zr!ƅtY҂\[%KS{FG$u62z*z,'>ݣU` ogai*dT%BQh%r0Z'Nh捵GIU`~{HΎi9m׹%N Qe\BpfL^XILl,DTk9t斄ߤ|*uٴ`=Ӛ?{xEqyZJTCmKȫ<ԁU IVg(r*C:EmY2\12;g{cwlX-%|6V2ED? P #g=VbJbeE`z4m4U Ip'᧲DEsV fe#2]rWFޕAlS/F8:.*5v5nn^0R3*- 6%fIDg|DW0+f }K׍MLV2nGz^& faq{^ dIêXfNp`; ySNv89~]Ɛ| $!̿tuɟJȪUDZwY!2OR^2vW'ӗ8ٝ):FAvEz%`96 73ę.$o(M)J|ĸ\ KKj,|Cl ><u>a/[&9BiXw̼/b,36nzv2atW[ϫD z*:NKl$S7FA)Fcc__>tW^o8e-\%jB/eG$ Dg4߇ 0~lFyO"U3?Lܧ2NкҸ-mrF`{9sX53o&%'Bx`YNI4T5nZ$aHuTdEƇCh^8u Nͽ5_~,śНP^ ՕEJ>dSn R+/>jԼV/N ŹXBD*&wZINd* K|.[:mpj>ј^7Iw&:CH v꘦S+ F.re0xU !ptCYOWHrlfݷIHńZЗńKQ qchIݽsj}mSvmk>;FQ>ɬL]T*Hv:x}|_4 ,9/ź,Bb]'"ݴlSy'NsYm*~))7uAWzI74\C$u1fk5 i62D2rG!\c+/D!*Íl%+M/Kݴ/?\tk,ЎPֲ`ZVxaI V4 7n$BbP/^(C{y?͇ESqȺ{E\Q"{ Y q4H5#"$+֘+>a/z,mV`X </e3Vil.Tэ㩲#nf o_R~ zV9K)rsn+P81,Xb(ɖ%{Q;|4a{D545"~֠)gn-$DfjShŲ(qvW"ynSsď$,ͣ%08ԭ|FG+?kU.,JfS9/F|;fRͤcS5$r*y2pn!% zܰo3o8V9ovB(eH=Xm,"3|34[tYi:'}S[Ak6‘eu?Jɫ+ a‰X#ُEc6,M-aqI},TS|'t=GʪW :{F۝޲ݦi'6>De{MUuGƴ c=Yw5*$6zqIjmE^m=jN<̬D[ķmnEyQݬdz -u>n@r}S@έLooH>kz=|׬38P=2`-g\P_Q#嶣q}5<FK75V(nz@ҖW¤ t#qCięl_ K+eG]n:R1~u%?rN 5a 4Bs`*S]nIW!3vGA"3ILia2-L3[nTd{4~,|U-͂S:Cg^\*k'8.kkH78k/4/]Nq~Q!řN o`ޮDw*fr=]mܾ(Xqkl=j3WD 0q*\rzjrNV2j&r[\M? +XڏJ82E048`8%L•~5LbYdݵ<N:&{jA3hF{7.0{hLç; p(*KWULjZ@7 P@@^R`E}JI2:IQGJoc_w_wN5߼^gO ji29gV6Bq /o659Z,/ Ww7wn- =SPO;Z-D/jRL吙]*ޓ0M[r!HɀjŗNN"XJRQpe$%{#dRѕ. $B[2 =MiL˞6lTSo6Ema Cu@5=gjNL%İ_|Gѫ 3NnBonk6C$\nf4o*TQV'EهBwxӂYg1-{F6ɚmm2|HՂԲ> 2 !ɯgi`Pa &VA@;Hnb^yBH \j &>gfpkygޡ̒B/'v}Q,SCoDˆ;;%pMs w%hcɆ6!A-wIx'<CH _UIidu*4ʪ!:ʢ{/ol3KCxtx2N)m'vx&pB89nTo%hCwloυ*Zr9r„P`C-k f0ID3ց&"+œ[dTz#kaiD1<ث$Wa &k,36:tu E@q8/!ZLf zrV@MSd`bѳq>&ۣ騌\{!(CX1$cnɶvj=I!EE{oysT"Xޖrkc$+M'C#gvڿ킿ˌuYNB3u@ SM[hVk ŴZdfJ<X/aqa}cT܌ isy"=lI"Z~DW Z);e.?sJ gE&&1H  4!({;6N\ 9Tyy>ʅCF:r}^g_'I =a@֛|IYv( ʸ#ZC"髲,!IllSdZ.sM`+-dE] %j; l;"ۑL_++4.cqhZptmKNJafet|_4Rf -wDѢeV/XRphMi>'XUBOnG* ^|X5꾵d2*6hǘ+^$Fe@Ѓ馮%?r?.\5jTWD&} j'=h>Zs NT, p+iڥxa ; MOz&G$:O=O\RӅB5cpHMM6[ w}O2hO:FhƜᔀ!mKX/[ϾV&\Ga[H!F"MvL Ke7nƑ@>!^J\ܦ+MWi8@I1yV2HIW:~^zV+VG$m`-gYI=dAۗ!&1|իtuȔ3ҪnoW)EIr┺fa i\ ^,Phn TQy>76czOM 9Sms'-h9 ִs[M p0^d$][C0TJ h.*ԡi ɤasq+u -D3dب)|!!2ti0#FCFFBqҒf= b}͛YIRkgϦnCYK'յI3זԤ=̶zƔ/vݍAF{~]$>)UƓdVF0 8_k ,>m\$ x" 2Dtⓖ V Wcё)j< _`8Hcs{⢵(^KXS0`8jYՆʠ[Q;e/1fkgw12_ɕ"B8}*V檾 F=uOs!Bhk'(Z/} /_尼Ky_ص[5;xKijŴ_!yТ.Ӥ'OStE~tN//Y֟b$Be"qvNlU&`S<4 a.`kp=J.Wqvt RE1l@N4xZ*d uCf=$۔k:v94bgI$B-q [adG'0ToZg@d8t ē@=J6$ߡ#;&k#dJg0Z[` g!|ۄ}7w`&rW w84M' REY)4a!1iس5z?C!emVEMl .*Xg$U[ *.8zFe X C[.іQψ>zX^r>ػ,3w{cC*gR\tER@8zx3OďgԅP,r94 (~4-ngr@T{DxKIzXtWu 0t%8f FSFR!bۃ΄]s؝s'Jm2%,Da.n`3 'gAv3{NTcYpL߸~ y,D.`N}ο:-\]Ni|hE]ןFavHD5'돩S)P">ǏpCڧEdjt^e\/_+V:y8[sq4 «K2hAixJ"ӷ)Pz ,\v* ǽGjmsa@R #){Dqk8|o D_t*4`B`1`^jNGeq6#e78ow"u8qAb.&n鑽>ʫ/(3d{Ep塾8QLC$v"@>5i:Ӱ6`2u^Í42UZIoTtjm7_),q/ְrß.!9Uc(QZRo~}j3#ipNs} "~*@b#uO(7rMj\+R2R> )C6~s*ʶy ZDb8=M aO܄=՚KepHL:S ǗnkJ͘e *KҪM}Dag3 ԰4pE$>l|j&+hRR0t#]ҮUFhK 1WriG1=iӛ_?7ԹhBӠ`ҕ%VA5 .Q`@sKdWl[DFm..w=[y|M@)1pEї7(/o_l""v.6 KBI׃2p-3OP[(Q,~شuJM/d+pVХq Ӵ8$a,R6+_13IC}<&:mey.[<{]㤄H k"2)}D8&-CƎ" qy=X8v9ߕs[Gq[do?L`! نjJ GSx"-y6$.Qr FLC!dY(S)oQ=OMr=_ኃ[Ih `y#9*+++SkфR.>DyG`N& %E՗zS->0V0"Z$Vq[26tu0yU\=a$klcgki'h3!}b|0= dBnI!ؠWf jVܱlјWa 锥2]*~t>}Nl%q}DexU@E]"Ԑdz vbjY)KJ>20?eƷ𨅘='͌*D$b8yK'J.+x;yQ 47Ewka:x5ݹK!mO5RS‘e/^G|SSF9l2ZQn[Vg(ڲq/MMJj@%i0a Zmy2~vȓ3;L@xb_9U&[ T[l"cX۳W~0 yܔԍ=Vo| }U@4e)}k%fiZφPmđAy)Rݘ)C[Xh^ ~@,(^U o.IӾ;|]vn "j:EM>ݖzud惤V~;yWAwN^JYcFa#A9}{)yFe^{D|nL|K<ʻFWjsΉ̨^F=!<B_8oq U= IGe'\ v_w. f-"Kx@HKK.'긐Q۸`1K  l,C7U%cB*Q X,JGZ4CՁW\yCbB)I &/}OscnRk5q}xi.n7@Rd({ "T1~=Ne#":Git5lokQstG 8[v4xmC6l~5kx-G6e1Vu,]J4nIJ[źשּׁ'Q%€±~NWueЩuƦT)bpp֎egU)_![b3rmwކ\ڻ̊9oɘ4uias. qBu_mr8b"̆cA M֖߽,*ӌG@J||7f֧2ʮZ@L9fIDT2>;ǚfAx'aƖ-/]nU UIdt'H{hz7i E@Ie+e D8HZ.hN?ط\kc.ݽ:N (0@ci#JS-t`K@IWj-%]˖yGp_!hUVpb|.dtI Fi?W:B$k?bC`N~*Ŝ.eOTdU:HA=|. #e]WmӅS]1Pf`@(K&N>р 4c5Оp\c~8HPҺ76,>Gr);`@o-"~Mɮb ~]~Zנ rs@%0HmdXћפhxu]>Y@(w-#ȹƖ7P|!Z;Vf`XqNVL?$Hb&ƈOfdL:SMaz2d׎5M;oAQkqqfEӌAjtyf|82JŠ5r)"X|lPpɽǘ*YcHpkin՗/++oO<0H$t!UƗS)7ZzU Nn_#"h\\x"o xhB@cD_QZ?g;~TJ[Lfb,RS;,6j;6g&C4&㜹nZ 149M8T&q7h6'6@_xPWOn[2INj7<{TtV~q@f[g`Z0) x /a-LF!ч]ƃ'a;iZGq|\Qs5|)0R:n=>]7\8RXM\镈Gh ĉ '`Gcyx#\NhXt]/u0i__b3㐍܄jhl-0IfJ@iJ+d>?%nIFRS]`ߋ{X9m=8Ơ$_W+hiiQ *pu ֳ!㘁m h6v7mVm"L+A!rJ;Pa6Jm_tCU1,RޑeYՈ-}^ 笩yKߙ}絒ڷe)>WٯNW =ŝQ8d@1Jҗe cv5OS$]G__LaZ} +)Ȍiq;*i^8+f2Vs7P5nITvm3csajtozoLC`5x Z ne!E~r#n.Pv<3ʫ};bb,`+BG>J+nL1EJk5]iB+kKw&y%p殸؃T#^均.VЁmfd[R;@N0~dR,lY?ői`VLPl={lb!0GÑ\|$t`hȘAtB61?h٧~oCnuR?j3{2 Њv" e)>:f{Cq)(!Oy)_lp;S8o)>myÿ+fTt=[ᦝlmV{Yi&bvsx/۸DDP\|bٮQfm6''(\0HC/nXWO*wg(^X4}g-ID6Vy1Iij<%&L'(R hNPhLk'9wᆲ2~y#$ҋFTt \TO?iyт .\c%ʞ 3;?BԧT7Y\4鿿ϒPnnO) L3wA%`0x#B)}kt.٪rHKv8^j.y uvؚEu=4t#V9uԞmqڜ[#vWG;_0w) >\Ll\;,Jf+eTQ2]N%2⯹+s)/.1|H)oY`q% C/IOP!2֟E~2儘 JE!`pUz!yP:}ْ-Az=nBq4kev{d+;};Zut!y^|1/vB "WY4j&ҔMUsUwH\o&րLN(yTM 0in<%HaN&w\r]}bz;aݴ3WdEzb>՟'Ҿs0n Pfb\d9g\zVByA +aMޕKos5erG^f!B.ơR)X:и]<-m~sBPTSIB.(ړO4)wQ I "Yi,cIE{)dX~~':+%ԛʄN8_Z"$6~]jL//MVD ZF@.-TF'y"\ϓ&?dnwGL5wlБ<3j0Y2I]("a^6D ̳HԪV~Ie=5]P9fFGmaՂn8˟r:A]!6-E"{ǂAcQkWM '#2V&sCyK%R'eKHs0N3XG +cݘ/F̕Lb|IoK<^'~=-ƑjXb6/[ugMĠ@fu:75iIF\ՍHMtʰF!&ITstER_W%HՍjv >J -T#H ߹#m&@+P\?qE&wIO$@DH+Z@?6JS1+!B ܪ '%BE̺3YR_n,=MSansHfܼawbhmZ׌ET ?{.1=uhl2ǽrmX^+OfF߉w~h8> +uz$JQ)Q8h-Mugy Dv'VGVaω{Nx캔f29-f:(y4Z/K$SĢݬg3(;x\Rj7-ЮHe.e ﺂR-ƘFHn'$꿚ZZ-Y:M)한wQƝؖú/Ap/gS&okKE΢߫"}b_,WavNs-Sϙ$hگxA# 3 !oo(3M^PsA*7Xa~q WTB$|K< `Ng,6Pdʑ)E ALUB́[&_^$ (;)(n$ɺ|rMTHn܎eBIxi.vU~Y;6 x"5X&hb?vq-TӍZuPn %H\fo@7rŽwW24-e?^yn Y}1@Q_${ xXC^.k8H*1~^GLQ~Ii",g|!ƔUbZm\U6U'$ #}Gm 7OTt,:) ~Ї5 G: xJG4{.F]Wry.zBCcFMYߠ% ; zZ=  0)N,NHFY!=KYYRdu_68sgпH[69|('$b| eP ͌*AzGac+, 7.>\\l Q51=2%fmfaL!^R2`O J5XX.+51XV&74}$; |s>@o{4SKq-r0ܱ!6؞њöˣ @=rH4$!,x+u\aB%D8<)#ăe(@QЖIGBR[9@? 6wNܛ1[|2t#8"Q7 -|z^O  ]: k9V!{1we*V@eK G-֥gx\c\z3PWHZ=]+/ !DPHmZP餬f]L| ԯטVNbc3*~nA#Nq8>Ac sOMĐ .QTL`g["^bBdcFKr[]Q~7 XۣH^ܘmۍ3RHguF\"}'Nȱ7 t7#*4IZbps=`EWfHB7,|G׺ 4?OrUlszzfuCzs*>KW˫z['x U\?Ѫ97{T]0y/d4{:؇=*+C?l>1Mjvj/9n1i;?-u]RS9BЈYB\e u;Iv#7FDű3CvD_6%h߇Ws~Ju*~;bϊ\ ^;-~+ =DrKݍ!BsX;۞ӁXSxB >V:Z50gg=4-&EuUMe*ɩ[3 M8T E3[)`;;3tZ>dݐrajN'Y ع 0ReItS@8k uR 4rX!Hh܂o͙r')3X,7Wl2[WK1՗"}Z+ϴZ]s.5xG0$Ⰳs^-%i\A(C QTahbH@M6ܣ6%q>)7Jdǜ?x@C-mn}㮤)_Qc.;q.Wu}!y2satV"?Pzv{}غ#Y!I)B';!yApD{& Le;̄ cHP7]|gI=3' pi96D:l{&|Vd6s7;O4DtCM}%#}ޱ㱒m"{[S0@,ƅ 4$RKLq0 Ub?,>"-_Rԭym{wdHXP eNHhwv'cڞQ"(mvaҢE +xa"KZkb&u7Ş7$:?*9?MV\y9I>vUg2`@XCkBT~`,@g=tp2iۯp7B͑p }ۥj#e4="ө^JvA_(ٟ7d6,<O/! ;؆RLiݰiwu,sڸ[q Zeԝy^Ԥ2'zx^/Y``|ȷݤ~bzOy"(;C8#}yœ nÝ(Ri[f"U\iNB ѻ[b<8xAhYX7hՑ^$1/YMmfD80Q"HP"S*.0IzbU~@1P@sode)pBԓ~iҜ#bYv.޴ԫj;v>_D }jJuh]rz)F`D)j IX]Ⱦzǯ-Is lڟ,כ>(.!s6lKiԱ3γ=M d @Jj WYRg)u=yUD-+ ]H[C\ߵ* K]\yX]߂;TuKr z,EH': (!N{r('? 5jC9)7eYkb9ׯs-pD8o82BB)nN^HRr@֐(6:y8mYerܲȚK/~b<g"e#Ӆlfmͅ#)r_%ϳu?B3BFޜ5ߓgV9NY;L$*R:;/ot>G䇹VΩ'k;ټv.~!bۇ@J{>[)hfj,QEl"Zۋf.VWDqѾZt}0!uH9wk)T? } Spu.:Ff*a'+x9kG4yF*L %ʨ?邝@ ɭseR0'5n|$P7%ب&} u(y,5.7D c\'Zۻ_pvOdqᨘ'õ198GcM: 5!z+[7n+ :`ZlTn7JbrbؕFIIħ气T^ßw3e `6Yk̼[bFF4XUeH<29ՔB䧌yN6pw"ۑyM͢Ū?qFG,70Bzn%e?~ ?O4,jFi[LE"Z<{sS(~]t<R>XH4aHVҁ@ ULy.Q<(0]UݍדbdG7S)6lI0& *5LCr;5?7>vi-G.T[/a*^_)`-B!'=YJua.4i40Ee[A[6`וE1ߋcJGa#|k]բ~uJ=V3o=]\1N19/d)J| ?5 +>Lsz*=Vm7o80:icOO<ы>-$VV>1 '`kj­X/`G(hCJE Fi-<Ǘjfd`)?R`E=CmL Rd.Շ2LDQ WayNXgGNYkyA)9y߃&>=b>5] HWmlW7Enfy@:JʼvG.qS}bHNUW] 2J6ȵ˄P Xsc%gtbWoj+YL'> c y$Q60S" Tk!/j`':Qxpg+St\pd9[{7n!UsBa ׀ùOT@<#]E*|E?0jdT%PJs#"P׮Uinsz #kAF^RI2SR!b5yvê,Y B ',d6챒bn=}!BČ`sh9J}u)vbvSr S>)!&QϿtױP/iS( uhPʒd* 8\g'Ӽ ?\zGB:(9(!^XdWk;l$5ٛlGcD PH8+ yf! W/,fìZ֓E_Nsup(QOӢD%"b%[b5)$nSDu_:=ԫ!n35ec\=gqXM?ڕ'l[u8 C)S+JRO_fU4Y !ΣH4grKd9U<.1:_L?#/Kq5 n@3Q.~th8GSBd2m?Th꿼eh3M|KE%ɚtE r2N?gh&䖳"Y+RzpK^hpyK|1$85┉ga[߬H$r[޻dzKk^TPPXπ۟4IG"zxP.7.1HNTě.UM5t}rSkƒIҀ˨RG0#=fkyʒ-):^t]R0vYӷJZ#JBPcCJÑ+nǸ)c US!pp_pp#4k4$,vp~1D_iCXmvHW5 xQ`z%b֍0hRBgB9?.gĕ&؝T|G өDt'vJ~g+mBrv+G ?Y*V!dOy@L?^X~L#PۓJ}^M@S3\I8bI>;;g١IFz~TĢn)Ur'm- E\G-ilP<\n_ ^`NUٮ^?#؄Y7yP]d0A*uؐ ,j\K@M }d 10OX_:!UA ңR0L4O++vg]9Jl@#z* ΚyJZ/lԠ*ngé}N>MVaqK-fP ->I { ӴV\FL& |0"Q7-~_Lqk&Y %6[Y!>@t}mz` -RjAT/?'+4H߸$t\?GYh>Y/5擽[Jߵj˵B$Y3`/PazTn=+k7X5EZCʠjQnOQ?ˈeQ=dxQJѪ<@4s3?ܥQ^%DZG_~Ts}ks $Y?|]:fsp Pf22 -iYPTe BzOl!! ݇Lfqc/: rtx6  dUů4OyZ&XRJkp(QLF6QOUŭdd> dBIld~=:9ܔXh*i,3 gM w٫"u']I8O 6~Nj04J/?_=2Y>hs?GqwyWx{>NrtN{粒"%ƹ K \"(P i3Tw/0YV2\[^r< WÐӄfQ _eWsx:Df63!"?aEb1o)Ҥ!@n>a`IEwlKKY<l\P95s Mг֙ :B=/!i+/[5)&w&&Ov)[g8. l(fr jXRv]ZHE6>@){La50:li}Ջ3<-xZQ8G'Pj I9I.%\L67Jq nLSL;ڭ"-{y6lBUN]b;FePO2 |)B c(W2upm BW2 >DFS\ZP?Jqp,P|ջn݃nB]3f->h5ɇB E ;O*Qѿ~1B.=LZ?>.qU\r7evQQ Ql0%v7E©.6AqK1Q =s(?z`iTMbO0 OǗyIh\p"eǁ7qw%-{U A4mݷ8d!e k`iituǵ/Ȥ}{d!K z%3 UP,UAqT^k4` &0pҁL64B|`tܚOn:%X$tȒ*z\ H M`w'v馻#^Hb3IB!v;q՟`ȵ4HoYM6+d vD$n_/@bEt?aJCNj1s}a#`O7BP6۷B;T'WDr/z2S˺3aY<7@3q\i=VaKɰ&_d\>Lw' 9' _Ei˘O:])YL2kI]5BgY'fMPinxt̮iA+3S AK,ZNK%E %_}vn>A.a5SgeDV(b8]aU {S Jo1SRL7"PG潓Zbcrc?+!:{ lԕɈ!}C}떬3OhRF說( (ⶻoiz&K{:3fbO揿PZ$ Z33Q<}bRײ%;ePP"_YaZ0Fpk^qo7>%4jzgؼk['ψ'_֋qni:RLjG8pn+D[Edb_7L*8)T WHJ=5{G4eLP/C)bZSy f;'h>Eej{bY  s1%hJkĩӯafhwv݄䣞ev'4*Y pDa4h:MI8î[ @9ZL^T/S'¥X֥3 .zLK _8UլLg$\TFQ;иS<u Bأ !@z!vQmiD\Qθz$0\`erra$42Gt,*@XhJT`S&,oizQox",cRsiQ s0`Veh,J{1b׬ 4L{MUx.|aU`Ed:zt?B3iCqX&vr)EL蝿=:VAD.lEBYn$EBho;&76!+\kct*P=9pwk\Bi@Q8C= |T5W> D鬱Ji%n3:6\#;)+לo9s նcs 9 {L^C#DqlK;G!$B?}8HًF{=h(Nrg ka"{ qh4?힅1Dh}?C\0c|C81*9o0 u`(w1Si @@y7!L:L 8I2GPVEUZn9{ʁ<퀣غb&dϘP^_6 ;@ |‰jbGe]:x37(+B,-f"0V1@{ouKxvIԁRO9#^c!G6瑎;6׃vxKxx 0:KHK #wx,./I sr~#i.ݒ72=Pu 7+}زHQ;>m YCPo٭e-- ORԽ)N>1+![$Lv4jSt×70̬/;5]8uН؉4`tF,"NH DpϐԎ6Na(dܴ]Iׇ>_(bJa'ݴ_)mS|HfGXiZ|qB*K$?r3Oee͊Hu`vV'%qbkd<5&hPeDD+Ý}9Ү~IPj(z5|h ;e.>} >ߦgv,0&SX8 pJ PR|~8X*M7hC3n-z@sOq#(k7PEJm:崄ůUN'j)GցA*Sߝ/2HS=G8$*Y955wYhY mW?՟Svֱ,P| +Kh+lbf;;@ebXPR}H7 췕tc\p9)vކ[yZkH ;5_ E"G[}7Fw(&uu]'+g`ڲ±›K0W_;D"EN(Qc[ސAuY[,}kхF4>ڷG(5,tЎU_OX>WR^)$Lᭈpl[m6,cyp?d-#K8 #Ԋ^~ JvpGi9 +זjt\ .bZLm5`!XX(s˽ ;Pv$'&d0k8Rl6S%0F[^Co4Bb2@BG Jd^-쥛O0DivhmL^];"M*WA-D:J43X >xprPw>k=by.$w?!|MwL p%$%܊R A!Ze|+G벓$ dojϩބ 7̵3=#REL͗ГqAx4[ @K =8Z'D[;XK^2jRC"beCtD:@V`q_=XC$R F.ag 7t8 4YvE6].RzcOfż*HJn! L <|++kXĒrXU'c>Zs'SuA5Htz`dFXl W~z$(]qbxY!B4̫)0)~] z`rF[4ÿǰXŜڮM_RuI{6; 擣 ?͈n4v`^W2`kZb}:FR)*zIO{ۋ>Pȑ< {)`(LJk[2J/#odr[N݌"zU%*]`Zm%Fki;Ip8/%eN W_`8O_RF%w}RY0Q)_ doY+I|*:*Cjd$lnݳNVAI=6r50෋pȟ$4?C*RJ;+?vCAJ6m_sׅ_94xea|ŲΚq8oDl1 LnӬIQ7BwtLXJSMU{NPcާY5XMd#y$rZGyxZEUzˎ뇾Ebր-*=̓-#d k^Tt}JU}^nˡ/ㄦ0X!L¾WH`zq.*G,P $fwg-όp[Oxbaqq i:XaS:jTbS$m%#~:EUwZкr pʽ7l','SBrzf855فWS |9b7m_z'0{غ*!5όH!#G MU*oJpYk%}Xag;_itջzyN2Tw?.H8<BEh vB?JlD>1UN#<3 1 Z7%:d5Peӿ͗2 ,3ZCt6H5xHQ`X4V?X0#U (,]eGA]sG…N AM5m&奱o' 0Ho )qf'|_L}blmS&jOj]w|9ҠsԀ%ޖR51WҜQ sed!h湃k:7Sʫ6lS-Dь{,8^S]c|#,gGiX=i$鱧nm)Hzq aNJ˗X cDjYt;(:^n%R@jC,9Oc4ꙙ}tJ>S,5:l jƢY1geX{!ȿsG}<"F:b)6 !`L4˟O9eg+Mϊ. :ˊuлTQkZ" /pw#[ʋ'*@p ߤ!_1Ȍm y:`|zH)fvכYG%Illr!cdnR4@% b.pa7uWp,\ 3ZҴl2i;ė:#nOruddpTHJˊD~mǯuQfC4w潑} o(yKєsܫAf}B\Z`r<j |15ylo-E|"u}. ˍoS=P:L+>XDոN ڇPGDd7$egWjύAaT3+ɿ0y Nf>飱>\pkVd[sW,]U $1 >ǨΒa9%?o;n-Ϫ$y^_ReKXڔΐtm_p9}J=_2POF@SR]ok$ /!#ߎ{P F*j7YX-aE7sIb\} s#ZS_^܋\ofZ!b #VF%J|0`މ.G:Uya:_Y}a! 5G8oa+GgdXFT3wg%tP Ov֌'R.1m)Q"u R%,:-;X wTkShQF/-ArsՓ>}_ s0pb,BL=;iE!_R]WM9*BY>oKs(y4 #2<.Y MD{ |{lN*iNk-[gXĉb֏Ga*WUEDu7c]Roo?fDhb6'X}򲗯wOt]7i @ɀaPܧQ2>%y}/Kg^d{KnV҄/S^ U 5c΢j2\M0V谂2>\Hzȋ+ Ɛ&7vbvqokxy䐶*d?t^dukfYeKOTդ#%!;7i%7[g`&UYBcwkKJ6\9J_)+@R^r{q=پe3TaVyB1zLq}G[Ow(jrO[O@LNgg PP`G%a{Z41i.70qH$>(\NӨY7T._߫O=y3 Kl_a0ӫc ׿0|to/|s]N, !o@c-§xڐ62 Q*5&Moy:=7j";`}_򹧉+T6ɾà.c*?R5$wd? GuD$" A(g'}u-ǰ̕d2woؾݕ$1@uBA_zMdfKke-?1(7D߁p3ȹnYhʏek;XA;Myrڧb S&퉮W?o۱:̶f|ȍЈ=DVmүwԻl[bm 4 #jgG[:`E$P νk7C?4̆F ԟr.q;ų-uQ^zl~vQf"qtGe Go'νnO33 z.iD'+G ė{S<߇*lpM,O5kv>}\gx8~+B<ӹO+e)lXG,7h |֡.Z>rY",5nUe  1|bR&cvV`F4`1¾Lwı)jd9²+shUې|OV|? 2PӀK-F"#2mS^^O_ Z,ͽ\,e-MoRnmtxhM+tb3ͦee bP~x1r#/n)cMԓ5nfq29sa/X-X8Gv *ɨ内y4:{,c"0VP77*ܬq_z˂ѯ&iKv41YߎPd<:a9 Ϻj2]lȬZY*sޣg0AZǽ=}ncƕ06BMgͷї1 XbQx@^B[ 7urc3>5;D*y}4όW9nWœ7=;yG!o;QUSS=%\\BMJ ޮ5e?4J[WUwJEԊ8lm8lVx4AfƗ0ɊN?U'ruApg-` ք ɁڀnDFF4n3h nwd|6[mR{쌃hMtcsҠ!Gg`J*#%NIcw%nOΈؓ#}@^Xy[LJ&eM 5kIzw_?tu^apsmFx@=MT|u8>Z!û=UT{MJZD*zQE8^#WN"&V=Ԅ;"MƒFl#d-Yv)b0ؘYNh P3D."Q_. \L/' |n͠A{V"WGJ R m|Do&_q2g7* ݵ#DNt BnbbK@4@BSoA6L>Ku !ˆ$yN9;.msXLe'84j~LxxH>6?%+g\s?sT&hxla "8=HkفV)܅{36h7;1ل>ז0 ?-@?kM$Lc>M<:(H" ViOz ONK*5 7o%8QuQ,5P2 tv+]1 r"|H.ݡjf?cVeYd)%?0,r?!T'K@J)UJXM"]+qg"'[$J*J2<Б2S9tFs0B'UF~,=Q; 0vO-(9vԚs f1 Y?SYp~ ֡P.TMNvL}jcɈwj~p(Rd|IA| 3Qh'kAk 4 |~cͮw}shy sZN7^v?o2.}qu@qzhxL([(mF9.mOݎonq(]CPWsa|RRJ`P7aj<;)K)ҕ5h na"JnaҮb!Y~[2JrA[o_l`H!O12|^eV >l:U\cؾMzU!W9~׻ ' C5!Б!Eo,)h3Vq"{-\_նSzQp1/xR#9T*^Z>$Cų'j7X[BGd'RzÖD04~,pX%J3fhHDF jdɜfoys+۟B9J  h 0&AtݟWGGj yegU7O x8 :w͍Ğu/6I&S8tMY:Oj|y;;_8Sø4@8RR)R=0r *$Llպd'si~*̽%w3 X@|l U[R 4X$M<[@n<#ZVZ^ABЃpfW3 c6YT`y*UOqѩWa "O&*Y}m Ԅ7}BsIh,W>g;xerzLc0nؿhSKYs,?5/6Um~PcQ$PX\6,AfE#)d;5a5 'hq5Ǩ73a` n]YA+e{!jd1uژ+M?DfW6; k0c@{M?E>qP,NP1 r-D%51=%bXeUf^9jKT2 :1:.a+߈\e5j<2 hdo\l}޾j9S,h~ɘ toj:~R??ޒ۱VPFd|W2G DqƑ^ܗYˀ9.ew v`49gK&OQ!Nt CBsG} ǜ*;wȼ` 21:0klm඾&),Jؚ!lݫxr=}Eg:l&hHn @"*3,C;p3؞n,HvbS0.]͔,'&R 'u9UA f-ПZ!؎28Je="4HH/8x~ mO$6`\]{ɰY:ѱ)?z{ yϓ݆ $OUޟw/-KnѠ#R2J1Z^|=!mi115K`RDZ>9/mւd},.$9S+sFԍ㙙¥Bm GϗƜ²'ogRSX&R"_u|ր(G(t ɯxŴ茯 R"l_b[ <]&Wy60GyeNEK?k㬐쐩_^DN\ܞuZ~߲ԟ$rF#y{Z* $eP'rYuv0>qOǧ%~ iN*(~vH eLex&vP%PUHP>3u7cDe8 v^͙#CP˫D̳xC{9@-"KH{Jй_eAf&k7ǭ~Xh{n8l&g*iFN:Iog[M,tk%mQ`|sB#*E5w/1 !f3/9h9|,+Ho:Fa=iN]v|1MTU^*fF%qā%)ng\~0'/H,U<ل"t)8+VhPؓ &J> MyRdH$IYFVKw˅K;flEjn/ll۽X(WBvväM1XĦWʁn,_7}CĹD:XP` -ۅG˹. ⶬ8rFz"R! 52Lwi|MZݸ|F#,ToTȧq܍$tKlj\sa ?u,^Y4gdi;_": n쩶0{=B{cXfJtΡvӴǢ9 `c>;&T)pY2I?5O> /4ty0eldTg頟_%P*Nu0({R (11hX6Rg{AXD@*ȦHgэ%u+z\dd˅3NA]M 8 `vlbEyW~ s`5Xg$j)]9L gbs[ V*©GJF)1gQ.sp7iOH?a)b TC'F$&RU ;pL tĵ(I)ߝҌ'9 9V9zxO|PDd43~s# ziaڸ#,MjaYt>0Ù쯱DV'붎g:;ecNѿm]HoZc|l B0x:[<&P(_ד~Kn ND˧]b`L. eX;o7Ogq8~ٕa,(53<"OOu=HuLx<4WM<80o'u\a`jTBh.TvePg 𵅪~d Xզpu(_|"(SɴRؠg"gfѧbS*1w״Lҋ$NFo*M.E%ɖ)9}om79]QzVJDːC'ʻLsȜޝd(j1J_{7j"0eg%XW&L͆ VVAl#dJ 4FZCO'^'Q NZOd7ۋ@miNHэntsYݛV+$Щˌ}:@p/B|c???O=*7zĄUfYE=(x6 N$Jɟ4Ԛ&Jɵx^ LmphBDjfA4bΩ 6O;ÅcG ;@iPio e6! o'5'B%^WU@^5OyBT}M|GSw =Tm9!ɟi GW4șҀŇjI*=2>xZLLt_8$.RO08d.˲yg*^QunfD~|t_KAEVi6V,ÏXʞ{ϼڶVȭ!7/hGf;/Ut|SUn-@ u q3\%l&~.y_Y!Q߰z-2n ;w@ W=Ե銰<Ƒ3UҿIbxCi!Ӄ/\m-x ZJ3( l0yG#v;Ʌ­)(el8jhXvPV|JssYz+ %Pb@( W{ďtMf lnģm~52&n:&BBWD.ԍiy|Jqb2Am9=Zx_ vk۠s#d}ӝŕt!s9i}\Y0)I9&@OT'Q9e8p2N5j_NLrQFYC_K2!6ִNO_TZXfR܏{MiW(FzWVtk#G-ͮ D] &Em:Q]ùΕ3)f(iT oؘ8:Q v35y|??T!(G| }̌?UcN,S/.֓q cN$# ;f$g}>{=n|_}"@G4Ke*wA6dBd+}dA۝!6Zh#[}ko6cހI_$u-:K!)mվʨmbDPBNʈW]NP#.\m'IZb-,xﷆ!Ma'g3ukl'ᆸX10T/qR0jF;!>/HI aEÊudBy`ÃP<<5nx Ӟ֦<<9*Gj+ PvVĤܿ?.D&r ؅TO+(CWZvc`؏}wr?ɭ^C\i#/B2,g70{Э5H=/޳F,w엛DzR0N2DzU>?fb Y?K:8_|qᶅ6z-4e:0kzsY?W!چ0H!Գϡ .45@F´g! 7⨐]],ByvTѸ{GNm>yɭxzuyH̽eerm6dU灓4ӻ1PjqYbMmz](+QMD7/'*1Rc"JYwZʘ!$,aL5$횵[  8q/ 2dz|E:i-^7eG^GBGiM Y`13S qwM7SwF$柌7=s&ضP~sd(,uvzsɠZ ʼ']i "\>c |[CIH"蜳,!\T\JjIdU:9o١(qf.UVC6йv𽱮~h֞or5:WNWIݫ{}@HJsqκo$ҷ,&^`[(%.ܴx =dmn'מ6A+H4 8޸:mgɌ?eަeI[}[]B7Cfl.=A*棧ʼn*)}k{_7xu?I2k3MYg<õ8UROE?(E唘MuI|Brc$NF!ZR׳ QqvlFijU*#I#|V!mQ(0&Wdye]r̋uzQT֛Ԃ-ba~H]5w5`F MbB/]:0?B'8 \c<.$n'b>\PQlZ6dez? {\mΧ.C@F4 'q88'x@פ_gP!K{ßa kkR`x!ϔˑnv SRkiOy>k3 zdUJ3}TJт܅7lѠ|)4P j[|B,9}]{ 6>B:`Ƀ!xO]xeE7PHjJkkU>YOϼף֔8/eGSFjx=?xwS&mw%8&Ŭ?MAR0?dZG7 /9n4aŴlRGp\C#PT$9$u2V#7~JdALQG/]>{0VWJyD4r>/娛F#KL KfϿzdDc \TWaYNJc^ FcqqdhkNT+hzBޓ"swP|dvƵ紕AVт|.Tu%t_ո&g/!x+P?u_dC'OH.@,NLO<5I 0jNW A'pֶ@'C[C7o#;[E uؾ ^?1 hˢ^\#lp':Ή[-`[3=@ki-i_T2'HOWi4 yY~[<Ɛլ@x0DCluѵd(,m%Y- X$ށH_#ܬr8݌sܮ}A)O4?4a2g?'4zҀ@>unBE/:O!^޸ƚM42݊} ʪU~SI{C$itc8\JV(MT9-_e1J '?Vkņj/<՞0SQBC.B_:!ϛBhZOv1xBNgҘ̨EI,t.RAFG6Yao,x<@,E/ M @`fmm(_orF!n>VN-h{䫫GCNéD+ ap=,i 9ԩV?'FkK+`ۓثE &)+`$7 Ć}'d843"jn5n=!yϞ=5"`qLqWb {&-uF X;2{ h W6X6sHcYhR2~tnQf Z?Q n܃dxF+VlW]Q=~Բzk3gfbѡ@"1}!qb[@iiOPJ.hFuM08A ~ sHHsg84uz-F!%w䦪Gph\ۈ&d֏ FX73T--Cs7UC%[z!){z[QC75X;+ P,^-^f=T݁k4'NP+[14T(5VT8~ٌ*?O"@UVTfcq<g/;m#dq4͍'7߷ŗqs 688^]j"yD9N6˜gʗ zJT}n1qpE-.nhK1z\Uٜ&3(7ntuÚxhlͻg =J[ey8ޤZNEaΥ T!3~HiʰK"BaBU^$$Oa3sal1ryE-:(c!Ʀ2 ݂sAd~XC>&.J ͽz$Y^մobh8½}j"x)>Xh+XLyp9ڴ z cNj)"ՠ|~tWNryVu7^R^f=!+MuHRE'ⴧ|` sSʏB_j `mTE?|6Xp]u[,TG؉As]kb1ithuѭ{A""Z0!QƋ&^ͥ6 xo#m'ODx6zM1+5A%`j$ZJg#ϡ1ȵiNjwYL~+}BW!15%>k!دֆs$1|>qPo=ѳX~$iޢF $7߬0U..)g+8" =GQHi!nusF)SiMf # ;ld:%LKp5q#b굣?֒0pRsLrN _&=ՍAć3Ȅ-G]ъDpguàPԪ[n`h2 \nbZyi4>G3qM"q,kbwR'0nsaUe$Ox sȬ2{*x[u!"$2a9ulʦ3?fu&oYSJ<dVz7_ ԭ: J+<̲X<6֋a-dX蓻7qnHdgѻeII1qEsҷ¡|0,uNK"}V1[kAds1ubW8WmfC+fnhY83?dS}ň"n<2:TP8s nLuƱ, V`Oqq jv%t8ώ1G]yDizy}{QAjMF>-!fx(S\+.a 5c &o!^UiD.M%cFkZ'klF tg@9!g"՛7 9D0ړV&F( !K3O s)$ic LGbrk%êwa`7J͒[80o:셐%Ҭ(?ȗAw|ܲdVUoY']9F1 ޓ5 I |Yױm}i=6 ydK!LwAt2=vHH5/P ;Q ䷬Ֆ&w֓v(K"ח'406>R]Nq 0QD@J a5}DQeQ^0yaDk,.wt)ŭJ|ai6CBS$=VQrZ6$c}J mܮmmnSV GAʥ ӊ]踲uZn{mƞHI .Q )!L۱?)sjaB>]55.Neq4aȜn%2z:oSm(t>DME%- -툌(veq$ɦNdw כGUANTMƣ ?J]E} $#ڜy4t? a:_Gn|h/3< NCMH_3ScX$}RU}(tcfjͦ.&J]J~P*T7>-4!91ZZзW۰d=L@qt>2xei4]ɠb;oo&,<GѫOeW)fz? KtY٣eA(\"ri,? I== T|/ J "r7ԸClðR#/*w/ @bs]oZ#o׉~Ybw=:^~PigiyB\ ;l߂*9#-˚Nn + $|g*(91A4ݚ4M4>\vaؿIIA^%nbSm\Egb&)) lk 'fiYBg!iz]k!]e_G 4|teKP/Av{~Q< ċKd-|a\-h> ME=~u{\xuלr<!i_&u_ 1Z 2b'6AA8L'-z?c4JlN r:uq=c]w `mS):ՍV f^gy ESGDǯo!2o!cZ>Rۃ?p(#ègtNH""QZ?\k@9Ǥq(v}}]!>6hT Q TuI)&j|@qt?'ϰ@9Q-H?NG-iF"A")xDgHƠ?OЂWyҕ8iHH50?LI;aSN%Rhm11OH8ĸ.D_eZvGL"PJ Cl[''_;!JD=/s6uI~>W[3 )g" 52°W(g/dS A.SJLcafR/#N;=,Ga=wl@\3HQިvjV݉2h!aϢr1ʕq$W 6&;zSAX^4-.4C~?G-`]#"O1HkŦ04\jP +kZY"FۮaY8|JP.4&$vߵ'>w#ɗ\JsbzׄѪՊS ,A2_HlxQbr #, &dح2vGD$ Y 0R<}=~1-@ANfxCsnP͡k;ڪTKŎd,uO{naVxpRrÚr2ęgniܤ} tYE6TVn>L(20 $vSK$3q憑T[`FSE^ѴZR>n} 7W傏lS,.@ݧPmN@j\g#ОG$Q4RlKa>âA 59tʭ5giUʰrT4מ% '/(1d'6]9)=e x|m(jbXhLtz_7b!IODDлMe(8jhA,|i,71 ],]7T߳c8Ө wg;<O6c:pDץ@|ᯁ *'Ih7áh$L~ AaBOρrXD>H Mn5URD HW 5{.a;)m7*zj;M[:0@ВG &*6f'p<ڙy>RNj@Ϟo[ +fwpQ&ױ  Tl^SMK CY_(N_]?իa`,R""a0 #Vv'Nz۹+&W#P u$T@)8+HgFyv fU;F\,|#w~: ߛZٱc 7`%}>DqV(M1oQc=XzLQ$nޓlq\0tghY{'3rOUdd_ 1Hc wAFM5Af8㲣7G-]܄w*  ?Xjsuxz|\$–74(`EA^a@FeԔ' 5*fp4+ma Bs;뵑>043Z:ɷa|TNz00w q5E͂ O舡o%ui f[4@J͖suq]OC-)WD+ AP8[?턡湩Kc&BG7}s3'&]2Vrʕ]CIw <>cx(Jy_"6ΖAjFJVqnLٻy~޴`قkOd&dQ=c;FWGJgTYWG_{£n a8AñMx֢/`׈b .*Z_ֆ٥cÒ:>7ǡ8HŮeX8Q6u@sݐH+sJE\)bHHfє,.o/}pz?f~F 8Ƈ 1xzT7g]bO`om@|7[l':5Axm|, wNL\TR'aa,~ dk}bzfߕ®<o3c[Z:$/nt{1FjPs`Z"q:1W5"!уS}0"/0-BA=FwJ""Hx,/2pR#ZH(ڬxDH38Ys8ג AB.ɐz`n;*OnG>yg`!sV궮X ʨX6~O5,W?1ZW@߿CV$m;N>F|‚ 9I|z{Oǯ;ٚcD!tH6P4 c>,r~%M{Pbm]l5l*^/1qt-xxxUKo#JL 5=&ēʭS[L(<(ӚpI9PHΫ站{9tw=9m26!-;0R=!yat6ysfcS3^8reL 5&"lϸ9XҵOr=j[ozT z=8C7nf)Njm=:pOvB\M!Į'bU/c崀u%D XPNu G# +uo _FB-tGhv$-J&%K\I @j rGeU9~:݂'0LC#_w}} UyJfg~ܒAs)1i1a)jtz!ylY\Td }Ee_P.E\)Pb}cy=N%RcfI7HIbवc>š+Ѕ#_u,w}j@QFY(u7Wl} K*v0X:%:hi%bF&}WɗׁB>'K K*Kz=>ga k&C@O"m>}YI}y\d pZ E,3 z+ e2}u6v`S$vA~/GR4eq} D/ KAOwe_bG] Y>FGMr kM8N!$?()맇1sk0ԩ=!tϛ"Ղ)Oj2&:nC{G:E[V^a.NnvKtK5sB2Ɉ⋕T ̊a6YsPb>%w(?Obܷz:gv[jG>*8 . p&J( ˋ-q|ZJ" (U!ZՠZQ xdS'cg:E٢~'ްl. bI_%1T( )1"4P|pS Xq:Բ ̦0 Bb"Xs=ɜD؜P?OaX!'||n"= ;m;ʩ?S20P+;`y;=@K{BXPW3=\ );*%/:="8n[CĭkӶ0Tn{D*`C\L ڻ1mi%TJ/peޚ i&^w9U/²w\&Б׾:_G!&>50YoV3MrNXdtA>TbE (巂K's1%;J{N{|H j݁}K1+0I߫p\:II fO+ƘSQ˪.>`|u>'`[:EʼnĔAN2(B@ίuA #ۓxL|ܰY[0D vGl"e] V+b+ `M~5)hF.8dhK[e! !"i S"-9 h– VAø]G G;mbV<8'Sf~KZMonKjAa;R}ц}@'n׷J}ϽDO YYn̄kf UG9iH8a Dcd,2,WFFxÉu^߭e(:UT KEM&~{rAP/jߏ6Cb(ݣ$:1 YE" |j݁ 6җ];)PnY'9J z=a}JZrBM'i젖W l5iT}(+/LNl1t{"DA8wpIn2nS |ULfR"lW]vamtDo]yzƄcaMkOcǖZ]D LC\%{|Mbr$n{F2_H>"=mwd\ӰM(3bDbQ2JN0$6+*YG"x'xvvCVT`$ޅ?ZN}*pVr BLQB]&Sh{ZoDqRr7.y`i<e`MUCY>L d]y,1' tZ<}+X4;ۦ_H[oZG3iW'ʖ⨢SDɪw|uYci%|&9AΜ7~yGݹL%_CFBt*MT"H{ޖA;{[ýe@8p5p˕|hX%.Y Z i(e(S1)/CR'RСhjq# (c_D۔ +09BEU O8w[io:oA`ЄVQQ+GԂ9OUJ#,)pΩ_KXa?pteЀmS XVm,} ˷wcܿ>BS%UzgHԕǸ?Ś6q^D)w٧fpSH_M4O,櫊]*^nY^QIB!˙Wa~ Q?GdE|x.E/zA* C'jOBjրDl$QKʳ`Awp5\zexN^WJnbDjW|)횻NaYMKM0P-^Ѱ.qdI$ނpz nзyK{:a+)_6lБhZ/v z13R3W/T=^|ŚS[-͑nc . ṱ9ɛs=bKQLItLxL"UcbN]l f.Dy,2D8mCqenjƞe>{n>x'.DM=7IHSk[+ymF,6ꇞD2'~뷹cM9M"Ad `Ґ£u^̄Epr>_HeMz+ЏKGH)?82&~BO^l_~W hUukxo!U>$f)Jo9y744}]b ,+Wq|iv"@+3FQ&j2g$j!M"i"*- ?_{?lqy'n:ډ.)a J(8D;Qǘ$5Ew,\3K[m`ͮzsGTоӎY;JktkY:5 I vѺHڮ۟s[/$M8ʛq` BraB5'n]u?St@φLs?եIF άӗ@<tX,^<9uo.Q>$&̍FU |\ӕ%X:}0sݔIIz({QhT.HQ N jy޾_D3܊im9 F(~n3 E 1 VE~P|CUvI֙{Y3/mKҗj$zYj UD1H{;x!Ӳ5~>rDLKAS˝n~*SHB02Sy'7"|4gP E3]|1 HaU kz & ե2X?|;oЬE %SH.6sa|SQ-(ضkc6!?$PF8) KYJN^cYvMLO05I2g5d!>$*%vȏQ*Wx<8^h՟9ZaX BXr &RR2e'oTWFb6*v3ӴD 㷆yRC-?G}nzQ}qhc|gϓ3GJ.B5a]mt^L3A,%zρx-{ CZʯ\6or$m5pNDfKa-]|:۱bm.+5R4ɋnV'ۧޢ0MxA8 A_E%`$L̕mE ۤU_sq#9ērCoTĖ`:24  b)(`ΤE)eGxdlXrjvQgm) 8 0:IMٳ$:ҙ8dzLELtб͢m޵^tq, 1cž ֪SwO|`XΎuoa($y GcW$1Kz3u[()s@gIIg& ;I]v ,Y% zUhxjH*rT9~h#TׁAe_ C5RoGNCW)C'<21d嵃z*(ǡ$39])&CWC^T?W$Óʔ/ר I0C`VRm`,}ن҃bӠr7d>˫!$ a ==ғ9WMF2fn=6 U·\9a~,CRq'}RdGߞ%:dZ}ˢ_ 0К\;wмZwVR\iGD H4;Jb3lmks4xyFevZn,Qytˍ٫=8lȐOgƉLq[eXijKkR;b",< F16jGմRt79K0}˔oԻ[kñ/y $P$p⮣)a0[$t]]>[RSj|&[2ƒ!nC.46e>v"g_4v4VT 5^Z%^VMQD>!wFc_?%BмMރڡehlry)4ʲ]<[9*|JAɚvtDa'15Bѫ<^S)yKwA?p7̸1tZ~^쐈9SP%z`G`MCIhu4lJhD2(VRvXGP`qHW9b66.RĨ|*<2T E}E K J"ƭˌy=U3- gCJM~|T'Y, * ij 6}8' B?]GϫĞ!p };@%^*]HS_LbЕIPmux/@DzpsK!Sq+l/"&/z%g$SLA:v"EiRd|D]bOqK=~7FL,*Wq2HnMmPɯCcWs>Vn O@oٟer]BOԋpKQTfIU-VܙAY )=8svΘ2O⃭36tL-b[$kv2yc2x+id3t?,Jڀg"^ %u}ϫ}y%F \BH(!ӛ%:X'1| mP ^Ү+)yČ]XQh^6Κ3Nґdo W< `fITXHŒ凣5KChKjٲ.o !gБ)u3!(2+B-kE4+v;;B4]z)Ũ.B8GrB*S sx|HzslYm\>v@\ FДJ(+g{P2G%}0jsyn"1LCvw\-~֪XnuInQ|S%4n&.³5iޮrE9 Z yh|}!r>lA); MhrLYCyk};p/P`z&-aֿޣnØ+H{ El:B^>-H]Ha̩CNuR39h'R0@mΤ8ewp>r5l`5asIE,k/{gh~Ah5kgpxMR%+>$n~Aǟ `ܥֵWnT2$Ë%F{"ħ?DD3E&lvO(Z'Wټ> 酂)C3T)c:o٠ź dLer{6[2pچ@~TynXqL>6>2k+4Q2ӱ'FO,. WPקf'/ Wgd"/_慩G$]2"}>Wo@\J`H9VvFJ@aMq=P}?+t}ľ9T9I/hVύ7K*#PvdjJ©BDNj -s|n#9yqd ǷnXmiU8C7QڻCm˯ mzesrRi>bv?Q'Y( {ev ʧ(%5[ KkIKs)N@\~18r 3?c5A*Ⰻ,Y}:.&O{Q ŬwyEAhB˶ ٭%H`%킭G 8#fd:K0mR!̰S=8*2yI")h77(l Lj~P&:X100uiT]: B'5`~0#IY꛲vbp1_~g{ =;AZoURޡVgo$!&OFeDŽRr3{|̩))Pyn6Jb~Z"3|Z>H(n"f_?|41|'Hdه*0aܗLa>73yK7 $}Zƹm'O\-j"Ah\k_iG\VUdXGQo. o `%#s3! d(1@`/庰j$LP!ʻ1{2WE hUOB&XLm(:/XPޛbpzq{ #_+g)F3C!Qn{ 0?:&u-'}e/Y|OvsrgHm#+˻wkBJC[^=X(, TwFY̠$S cr9ڑEOd3͛C5̞gT+=·*՞-mf: `~Ph@tj3&w' }orʼvu/ą kO;Ѹ0E1״: *DWۮ쑾]``룅2FPmUo{o蠮+-a7*%_iCBd%VqECF91 z=QdR~kmo|A41L}Գ= ~\ٚIة7em)L\LM,(\nz|*yBgЫ"?G:qVnJ$RxƼnU.QFح-nqN#̑KᐒQIVs8I roEM kq%Lj>/CZXV"nʞ<^;%ؚb:݇|\oRN1vNkح4 2+.$ĺ#1C i܅9m~/yS9TGmMǸx|L&MS'PS2AM QЄrY=y\?486uGy2"B@plPMlݳW0ĪwJiubynWPgtD +1@ִȄkכDጺ˾9 o E=!b|kː(,} {n ۛ[i~|TB ڗ*a ʠDjOy}ѝoT#ix[իNJr([-=*μ|ap}ҫ ;fHi!S7ޭÇ!m.=HHQkDCd4Ѡ6l?L/Zi4J$E1#@ p{Gg4 'l8iẁ?b3?6<`Ռ_OtikhB+1Wh Iܷ'&4Zb /f}9T݂FC 빝& ߩIb‘A) DНϴTT-F; %I/XKbI\B;Ԅj3F7yu-#56`5C 9~X|BeO 6_cp0[ Km^VSmoI ؘ2X|6Ѓ bmtǟW1@21ng6<1Ө9(>Z$I&uldc?&4m^E'駮-}/h=4EnY 8څ<n.YwPqf)|ڑ$j[NlWoqs0BT,8ֻe= w.⃔~1YĈDm3 pXZDe/~o`aÇ_:FiZG[.S"=4b2=ajny+RV _fBA+K"K<:5}Igk)O> j( q3y.6^+IYPe-y=-k[OVSiJނqYylt )SQz,쟊}HրtMug6x?'+9#iĢ V~vf~ xq=j-dW^WTIHSSV/HF j<`Tl4uB'7=`vSsd^=IK 쵪td‘ۂFAHzgaS% |MP)h(vT E%.v`8K|V^B\M0#&X/W&/$S.gϱѳFY^JK,4E#IʭB^ WјuvQ,3ǝJ< SJg&zvWeDLek^صyC8Kڣ($X-*?K\{ǧ*C9DQVT!Xi4 e.S1T 3HNe>SxIbjЮ1_8QLe@W~%ز>&n8F,&ߝ_kfqO!" ̷%nnUQ䁾0X\U~%- x3q i 13]=G /ѽ*(Ba$YkF4iW>cO&͈SH.:1*4v.z E01Q")q*EG̜_SDw5uuZbt*#mb|->"կI}8кyV|WBYc_2|>%]i_|Dg7c{@h-zI<H6@i4p4VSQa_eX0cʍN] Q#s6 ҹMD[=ZAu$I eAVLo"y㪏atRlLr_Hg#*nA|of%iKbҹ;NU `,7Q2. Ds[:doٟ6bSr`i l8MDf'ڲeF -I*W n=B iȣV Spa\jI&NHBk*s\T5)802HtIaU֔18wwẄ]8aӊg%0ǽ7 (aTŃӪ13/S?f 7Iڇ/,[*WHq#Sv aRw$3% j3M5yko\>VP*KY3aO{LŽ̠=cy cYq0bT|\dF9%7\m-5pprNYNCNyOWkvW]X KAt+[dp; sNh>*Ԭ!Ƒ!befcQӀGp#'/mFUS ?ce2EfgP\ ]0T!Z ±{s+ +䧡7[ș9U1h:ߚ\aQGAv7P'?7U&X&$5\*bH(}1u~,ap_]h#dd2 `Eѽ#Nf=]WߺM2?jF @S|S[RqoY 8ܦ,M;VnCjбpט~i";kM'v朽/ $NfmjFhנۖ}?D6fa̖D$p9hpE](cV$oaQnZoX=+<6@oq8N9R~Wj911Y[e]+ 1g:D4[Cza^vi]r[!ijQuٞՍhAr$.r_ GicR( 1+bPJ߬Q6|R7!:5v#q3tA@(/=> 6W _aSDt0[ih態A3Jn$xN/S+S1A蓕8B?HÈ52m-!/'waEl%9TGP@/=>V_HhފY`d``Mt0/AuˎoxIMvto,$ E "E-,VrpHyD [CL shN_@d}BgQjTRNהnWJ5kM3-yQON:lAEJFfldf"T]o޽Ⱥ7`Tɑ(YSy+>U7gXI,atŻ~! Tl[iW0wFHd+<!e I˒W s\kxhb5 7#S6HgtK<ۭ9~(!5)&zLő O{;e7N^"9+p6jҠv!#delܝ; ,{N I u#u6+>bbX_Ko=w/PC:r7ȸ)AլYZ岆>&Ó }烳/*vPa q,M؜`؎$'2D;9w55VtULsdl}N|[ FpɈ1軺Tfqdhu#fU¤GVxT6uDY[m h䔇oDfԧx>@ 9S5nrE5p<ZJ{DìA ˜]pZGMLong20UviW%Kz`Kf8jH^ {0ixug86f bZfp^iRsۚ}~G/R9P/\L| YdBŢ,UְҦKp2˝A1*́ =k_9{ \{no&ERXzr/SiϐvM:l@x4)ݢrXc1V{gqfN,n;Uq1o\^œa4. a. PCdar0jLNcƤM[fh _)B )bfgehRE[9j;!sWzrr&4f~BAZ) "Gu%8;{AQbcXI.slrpLzJ翁ޱP#7rhon8y^'GrKvFtC[GɘzzKI~LHŇ9_$ w':(&&|ͯŋdS_>@Amh-`}u1YѽmOa;W5=VÛ]AIx,;dGmN=znnatA)k#?%S^( 0#\AA(3舥(2&{e3i˜kX?^BX{+36 jKqy,qpaLA9Refd<$-#y_s`g\BMqmJZv^afW.c")դMa4޲'N70k9AfbŎfX`kZ4gQܱ^ZVzX%מvqXC̬ !8_sir=FSGK|A=BhT;dϗXm>x xk3i닁. Z),]F ӡ5C}s#|n>a|;youUzߪh5}0Afs2yLks I?cHQ|Wg#''d~}ʫ3 >7!GEѥ&4u9CʯHC mѪ!_S"Dpi¡m[Hp7ʩ[_"J@H CĮlcJZq0<-[Z!WuEգ*GZyli\|ICH7c)x%w»;垉|QiLNJ$Rm(]4*gUweWEqRNN[ zpTd d &+܍GmfrRQd\/%0\tO- VA}\d's9Zfv ~"GfXٟ!sg޴w꜔arϠ(a9:DX A; "k¼7]s3`{qQHb,?i?U% H שx:x ~Ђ nQu7*ݗ Q:(~| {%jHS=4dC ~aIww[dfcps-ВHDzTG{uSL}ɸ2ؼҥgS~ʣ.dFCu jVg(hK*SB+,%Oshrm|>,6ᵺ7a-Q_p[G^te7ո/cෛ-Z;;g<$ToD-!Z+Tb*ۀ)^%Au]ShBHemސǩ\z kAdW@()Tg8kZ=l;zȴ&£aW$ݡX E dݙ& ?\.M.F@9 qJk׃6/sʕu8 2s!V% ]5;ƀT1^q嶏d&L*SLgUIC.48 (Hџsgt? ŷN"1>\xEA6T^l_/ a}erL@2I#tf[= 6fcGJZ$l{͕!+hz˨ekIugG0 O?a3|zzix>_='K#>}F{1A~3ezih%ݩlsdԱXt(#3R3`D8vǐ=6{HlW>zӷ!A BOMqElP"6IE bDH"zn]U4=Z{^z??^YK& אw7r>(a7eH`,MKiO&YbG{(T%Hzӊ> ZFely1 \-p)kOJajgM`8:TJnR3<_iTFe R:0IR̔W;ag|VFBZyZ:3`1g:AQF)igyb`#\vpEюy*5#b)qx}|W|Cvc5G65ؔj!ҁ(R#K>AhnrG-?{ć I3_^/JrYb ?^F9<\W,Sn 3_Sk, TQ̔2}/bx,b2}ݑ$5obټ3u`"?bEX[Yћ c~̊#̦oY\`aڏܳ8RnHsUp\Q`|`7K7]f⹢Vr\m<&τܐf[IӈOd*.G6\lGjxE_$ycfBǻz"CokfMGNwkj;u`7t5 aR1Ȍo%.ф ϙٚY2Tz M ucV̈́p}|t/)K.&Z"t߅'0A@_RFֿCc_mZ9H|o{4.ãsyOnv=D4 sAcηo:PpsliS.4v(/H̐!1;I}85" {Xqk&H\ؿ4zm$L fsk(p[i-OZ'am {x^&%$m,]bf%SU"g`8W%oRv C@ΰ=^*@5j?_j` tV㎢/V$!0A*Gߵ.ʱ=}t9E&F? \Z^Xt;ZHpob_m9v  uK'P?)qOvhsYZiƄ!1ƕ_(/jMfLϫl~H KHÕʮbv**e6 Wu ?n*!qy>7r<&+sH_L7P $l[4HjRӱ=E(7F"S\P^a60wf-uޑȲbAF1pF E zlE!@_Ψ2Ƨq ~sMtoŜ#*]ǎbhߑ=k~e\qp˺0{x/8qז^K3v-)+#Ix_Tt3&ݯD86e2 1`L" WÃ~R[j]9t3qAZḁn !cRDނNDbǩCSn.ٞWClAՓLXdrGȜzŨr]e{9+#! msq Owt>@{@,`^;v.ӇN3r4VHN}RSEy\ P*oeH?-VӋpK:a0vR;U$+x1\q6Wl0DBP풻$|?x[顙:_$ hϼ"3ۦďl;/F cRR3 %%$ـ_wqh؅Lӗ㓟O=vX'r!bo J[&P54V7ZiPM&4AΌ]o5e~ fvPWQש^ ~ iawU*_ %WDh{sR".̍xv鍦t6F r_ dK&AERF[<'o@~ Cn3:D7E/Fq"~ H 3r6iAq tԴ .yռʶߡd[)uXu=;Z~G CDy -\X+}@'?7[;{4('(,RjT㫧_iJ>ov ILZaִKѯV8t0MKVLGkǼփsaH&:,ɧȟ$DűJD`hf܊vǰ2"NG`x+Sp>ZJ'~PwKjX[%^Ea=54?AMq QiK'1CVcw0~ҭ( X~dj_2~?!Zv3iWYO*so{JJcJ,ZAbul%N8+a;a`.B-6d:ZI;9JdT_{xRI8bwiAH)ixU5s7^ PTTra /B=Y]C7(:[:vܺy|]}z}}sn6;R26ۢt;LC Q&FG簭 j\ '-70@ޫdh() (\7B\Jdg :fs[Nħ:YFW! Sjj"ق`>L#=m|\ a~h>"߶y5=T Ƨʐr`yǔ+ghY,f<%ʹxc:}YŴ~E UMWH+F٠Pz\R/pvB"?$V8*D)7B[A-)'r=6`#Ӂh?9)5|k<}<ܥ5ډ–űG/,qGa:Ql&g@U{V /S12l7io]-Kb4l2*.2:*P"'*E_LLT9ozƨMrگk4p/hV?99cwsVN ȳs ]?j: Ekl;F_ {:?乥oٗ쏝5AJѽm'Ab`K3'u"2]PpՄ:ۙ$t4*?6U } V{X$C^76YLqZX}4ț{Z 0Y{ӎؾGgʘ6E> kS'+sܻx'ˏE@TaϹySaXGg{+ ASE4iU)h{>T擊 gcx xlT}J˸џ§V#CtиBv|X8B-Yq_N=ɰX2pcϷC!7q]WF{3=Ĉ$.SMdQ:Nq}Q t#͙u*s_4:"Ƴ6J5~p]ƂylYV\d~lttSEIF--+f(;:UK8+ݨ:0SŖS=lc(2zd79ݱOm :"ԟ''GIDs5;{){8, +mV 1#BōcT~"%r4{7^:WL/9SJ=4B(^7E%SZD Cm{^jE$Z4C?3v\hծzx3_O֩p\ ~ PfUkZ@cָ IKHg]nE3oF* 201,ⱥ02Gno85I/m ƕyKëH*mnXYa@R?]Xl!鿆evۇ?6ˀfdbJW |bKAu}ozec]0EЊ`:8Jϩ(+~I+ xXgbAKSۅ^_SPuޔK(.5(H4kaΧR6TzNB*L "&[Ϸ*^~a=£JCut^"m{M4tvpy/F63zy ɶI&>oR?8{-]?;4 s+IYp%vSFv#^%Ђyok6*L+]V8ȑc \tL1o@UQ E9|fU, m>irNjsFFJH!lJSαsN/`VY Uk BFrihd<ՙ:=N_ܢegJG y6{,hO]1Xg8D*Z&y_\z>{JtO9"؁qQ0 DțCix2lejL|Ug[ #fTI'+*2CARyb0=@hTRأ;9>kD,CE`-Ӳĸz5(yee!"ܦ.KAF87(# dG~Uih& "+%/cЮyy/56I:_\o\ݞ9autUI<56U5B+^io3ο&^dJh!s|dgёBb 8`t|JVu5杪J+JR|0Z(vLSJ}[G C3 L/iZy~Rپr>¾^qQu+E0xR̕6`P`i;0f [ڍI6d7酩-h*#r*Ӹ\Tl%_܂.qw˼9u {;ha[V(l &9"c)7"96n'R2TB,?5L9Um6' Ѿ4[YTZ @3^׋+buqNWx3Qu hMSVY kBgtO#8pZd&nI@3[V,0G p*¢G`dV1ЪPo${[]n dW`J=ACz]! @x\lNoP.9@|)#O>=FEPcLHDհ N{ћ/J;&va EleBUg W FuhXܠ*V-&g+905/~gHأ!Ck#UC2(Ir'QM*s:8QOTaK]R@jIFf(3ƾ =8%(5wo&|JL4r~kLul ޠ)q1{MUȿ`9%ŎxWs"Q3Dc[Շ+!M;en: iʓ fV꟠(PY"@E۳` _M+]ld7-q<b햄MXלA\hm\#9 *a@T4?Y64QpzM8$i=Qm蛢f `x8`f{IP>4leB ŌEe/k*lEog~5G4%!pZBކ{\1\dʼnXW$:,¥7j0V+q?%svv`l#⁁Sa*)jQ@Bν\$g_ ӞLg~=8k b`L0~#._EM߭n$,M_).fC$}05ND4;^W,yuA,Xb>fL{¥vF:[úid{Ɓ<bmc+J!ݖQgСua/1M@3)*:ʍL΅#~+hP;JsI趶_8g1b¦Ŵo2ԅO V>W̙Xw7"eZ,Zu֌E,Ky[n6U%-KF)s_ӟR2\'SwkX2Gy} @i .S"N,qxKJ^gU 'pW)2ƚKZ*:lsX_OUDTȢ,Ӂg.?d VAI^eW7Dj5):UZ67,u{Y7 ik@z8Nu~~cPFx@ u@L9 (KP&2h鈤7SR>կ2/x @}=OuuB0hsAR†8#RI7ߥް&e_1)^qEλ}nޔA_*iXF?Ms+!4o"$ V1PL#+X|O#5%zj!.=MzOü?Sl?"=senT1Dn ;?>r[̈́*&,]|q@`od"nz,YB r/@kKR̍o%{v8F1d[ `_jt {-m>d.Fɍ6>[새ɥ/e_}.FAK Q+r({<iI#%}5h/ĞdɞSx*]Z4$Ǫfx);LC}C)3 wu*xo%ڎ_B+1ɡ5sʈԅ{\1+b98-1F}?#Т- b#,\Ay=NrisWjD8|m(ߏr[y!E 5)3':Y$\o\瘖pW@;G0=P#kZH;LZ Շ]UK=s:da⥌@ʲ 4*j)~f%q7c uV {O)9/Ueؖm]ߑ.Tcy05+0oiZ_;X e(&oNGB>Tj!X'`.Y&fR]-Mb K[`/{SFoО;IΩa%qiFʄyٵWr֘j-baݽdR]5R[?6k|0vY&=}y`i{ ɐgG:[;'S&#` CX)mVEh1&#& $"D;X436) Et&%[MwSxe%&?p+B5mAV&wgkxPrGX1BpvҡW mAnmx@dk4z+tiȖ;81^bw/&Z/(g6ۊRʊ-4%}1ڳcl|moUEN\#BK1EIT~=6tx"([ yl#|Z |ǮxxcsGv@+QnK~Qh-S-&fkkڀ 4P ?h&rĔ}v(.u5r TCk}#RIEufS5@Lg{(zKRP8fPO\ ֢? +Qi`& *4&Ro/cRGE$J3?;v$r`ϰqh6 N/u Δdl E]~FȼE0q?(@ez]ȔX7m[4a24]#sd!EQ痶\<w6WIC A[PV(\gR,ob3V#U`5//c߳Bm:o{G\ :kޏ9cx) ['cH/ڍ?ɽو>\FBX"e , zeLwݵ7vRq<d&k|%C-ZVJg̺G8X m(lwAj +K2?saE6 de#,Cr+ ˻&D}WMBqɘ<^@m}~9V# q%!*Yw"Z*./2r3A`@V -idL 6TM{]g_U dk\nG1SdpW>>8^2{ko.Ē+s̸JOn]"׹_m4MVIKb2#;vo};eMWNZ[#.$Eyeֹ3z:ڤg) Bu6jz|o#hf›%OZٰ|pz4:ab?B-km.b 6dGP>s&اԱuH.i߽X簵sj'HJI&<TK#TO>׳ndз$LDf*:X!X(Йkk7a09$gL ZVF Јfõod"HUg/Gk/1^\,({9Qsi=Hdu%!/lsuK#9|GgHwj[}}հv ޤu5;5uZbo(8&ZBS(d.V)}#55 h r*I_.ddQkdSQDW7&D̢# %塆GIsEڐh;XX}KAu]yAI+le%Dס:O#G\_KK(Zeڑv`ؐ[0 ЊNMÊ?L|\ .٭R-޲XNuЂk?rT\Y2Ҍa%>ho2[ؙf4΄$uA~/Y(J%ާ&7vb1E䜇%E#φ9Rr XnOAw.N;jt2ұ6Da t|Rxؚ/ 8~1Mc=[3(2y/זݠhvFRPz@pRuwL8bB^Fd32A罬^0/{ Uj|,\B ;hoGP'Yخv]$i1cV7C?.6X>`#q,GzneyX1_I< I~ jzߢ),փ̯,[K*ҥApʃkhc4gMlo20˞g>OCR?]WJ8$ Єe4$S+D g5P;-f{ih:{WoZ~bՏXҷkCPL}tjKxaƥ o*nEcKH$JA|L?x8ecr߇elG%yƉi4JW:_ XEɤ GlMv.2[&.̷E"Io]<޳//aM/@W x5S[)ILP*9 wx0rTt>A3 }tn`/ t{w,3/h't;wAOZ۲p\+Ro˼j{ɉ @1 kb ʇؼOF DЄ;b?IQZ7lãU=!,Jw+9]cjX!{ìb9njɞ@h}#+C:fE*G=nx۪ѭUлHBPP= tיu-plTwV߳<ٷQ&_[O)"?=Lx\=ZOaEdz J&pASaDYR'e>N/tlaCls0h v6+ n xiť_D[t6ɲ,J;;f#hP(Zzͩ͗ Y7p\[3$JI^[dH,$c-+ !{A_:j%qK~8I ɤ4;nF4 $BfEm@A^N੄#|I:s tف{Q;9'y2)}Nx`~iV&*z.A+B 2=m5%8h}4О(frsVK 8c$iӓrSf:L7!^Z iެ|΀Ys&x|RI-Y:4-8EOl2NB_ peQðjFWfD_>8Rew6hJ[ IAl27H\5e\_T']<)/VǞG|DxsOJSFcARh-d`0"\8ulĮ1_3ʚ`bGBO#i;ke*up\UgaJ*٤f^yԳ;H]MH#bLW p *z؃РYX'c݇$E kGѭ1,qZxpI2= >vq]bX:ܩ;C= 6^sAyr)>J.6"dF-TF6Њ K'E?X7Nk; t{z 5#xl_ǓPM@-VU;o#N"S %$;* حt,Wh&= j~Y4fQIQj'$Y?au6^pگEUo_ۣ"@S [ T>2RA,V{ ED?y4>۾Eoj7ڔ) c?u/FakXݷ l)σ^Bn3wք6厂;YM*DC\g2d,|;;@E)6tG`[nxVN[SYbdc|hV)6f0'mrJ-0+d{Ex?P\Miq^Q$ˆިn~DgWFn+EKB\hnEq#)33?e!31~1o2슝NWMƫ<2yvnzby&cOF[S)c@` WKƌ^?R t@] N6ҪEtf٩o6έc*s/Kbj[ȼ4aҒ/EbFKVUGv͋2 PeQzX"\\da :hnH$bMOT~Fkg1 "^K¸ta8`_dqقjA&d^m|C kN(F:{d8B:Bx1Q_ղw}W#K#X>0H/,!3Qlr z%!ɏC!EڥL*`8/͗Eiah}0q~V*5'P.!>prg)~Y-B^]Ex$'!XA7[ӥ h;{|pNl6OK):WMu+ߒFi8U*L0 6FhUK]@^䪥F3SSd!I i׎I3KК hYm]ۼ~&Ƹz7c" u'oILak%Iditz~!nq5ؿ( -)_B:ש&/S^q(1I&ù&GX#X;) ?%N~3HX\G;Yd9HC`*eKp?,n8)1fzkCGh +<;,$Q | bI\iόx W( ¹aE * `e=%tS8}J"cν~oa=>[ɻa) ߳ >z29|xԚu-Ҝ]|ϩU%8LdfgTrhGkn.igYsv# 2+%P.vU/39ҋ u Pwܐy,{5Ha{8`-|xYyo+ޞc-acap?"5lH 8mNg]>W,l;aaé(:l0̹t Uum;Ǹ6bד0p\ Tr'D B88ٶy' fʴ3ok ugey卒\ j% ajd g*f!6] ֶEsk czDyC䙘#m o; ڌC<;ᦜlf(\i4kjO" SAfhI=FSE=_?z6{9!8gxt1O{f  nG/Og@{VǾ.~$%3 0Ty+1>1V0R EonKyxuB,缑M>\{葩C+FψQc‰A|OHISq(w%1c\aG" j[P:,l{cpIxp{ &L~{;T52: ɝ`Ϲj5}9$Q!]-,`ٵ ȟJ)2.& Xٕd7OHݣZfm,o jkgPͱjJ #q*`9y54=A?A*Vmv)~[!S>yK3+a{F89Vye/ӥf($IU荖$t*=p}(vFU>vtiy$-yߴhEpCLeC^ܯRIKw~iiբ2u Ѐ=ldz"VŞ03ȱVXICsB^А8 Wnq*'̈/۔$.Sa_Q̢m):e(ې 7-3xSUL݅u!mA0P9s x̡ìv5z)K3-SIy* 8 `TK3 /ǧݮA{(gu]䷦Oы{ ǶHs=*@zaUgS7gj/5D|q79S;fP[2{n "dN;8؍ qH^\E?Iw0iݵ}dm@ u=L'8Lo}b>3I=E0dDy/ݱla(k.bk`)-X~ALqA6wXl\=la{h05PPE50$0JF Pli$tu9 hin˃pw\b]42[*jڻ|*쩇3YFS0-15߭B҄v=|UN p ?$10p3QXy!zp/|rZ6 ހ &H#^0?#h0@Hm=@ h\ }_4oȲxMVٱJ/ IxT~=[ejE_FYKHX4^~Ffo -ME[= IIj:XY2RQLh,0Ƭc,+,0Nn)}U?%1,;}X2?fYaiDTBHxd%{(J{R4 4ni6ut o@98'o!I_ֶ+GCI5 X9IwQW]o%%%qE`o@[ CSC%朧YIr!ę&vy`I}g Ԇ%=>B1sW9J0W)pJtƚ<:xϰNrC`; tuc{tt_4_x'y"cq4iXPi<fOae4l`T$]}w5,V@#R>kh'ՆWx`5%Q!.\£gb#aY&ֶzv /72)Mi5Xe6@4oJsίiCpޥK^<(ivc0o ]@v1"TMbɋR ;Hkz+inb}zSZ 3ll6G;O0iZ*(sLo,W"[S-O$q.oYS1zm$R0mnp'"FC=,*[h,z>菛XU+ȼ(VZ+h1uS4WG$|ګy2?nrÈ*6YrzW*q+ExxnO;x{ We5b#)OJrV?ҿGvK\ϑz6. |<meuo1I jE"n"q"* 7Ka^P&NpvЮ~K='ģ,`ܼ Y^!gCV1@HgWeuN.+¹,+ƟMfOVگx\`((X/c!lԏ>Js$߁DW9;|7_ixxSLG 5VT.'5q5`Wd{TRYc(8f2%_X'(uZ7tex2s0ґg[3e5/&Ɖz@~C;LEJP(cmaMxSv&m!uv@3dd@ 6>dEGqqa#N~Y.J(>G[HsP/X1CWS=9;}*݂ks8b%`WdsDAP~9e“t23u`v:E3L(\4+]-U{À*S``W$[GŽV$Qt0ڮu*l62_OpPLЦ^v|9|lͧKبmUQc:EFb;ݮ,5;`U,Sz!-e(EIifn~cG^cL?g!7 G@5ms~ݩglb!$g:8 jgGV2yUDyEf[iY ůO{oseQ$q$A7P?Op{grBuamkc ]>_񈡴6o>OرȌ~D".yBJVUftb0Q]sP&I@\_f\ 2H]9˼ߨsl!_–C vnWe6jBTQu0nܽņ!p0v]BS0dnʳ w_} fRslhvAm5j1͘LDlȞE"}8I[t5+! Y^rpd2Yw-zYۤN ɲ,DX\eK~tq {3(r@/~]l(TK*S?GιRq]3'V,U}/z W.Cu =OÖLP$:UEvFXi 96 #]Sysm uLu ޯZbPL 'SFIV!3s3.4s7h } k)b9, DL}U V.eZgIWBGK//C9FO0(b6;oHhoFb&J8Nz;S Cg-]ny ӈCG\95{۳DaRxj'#g ԣY*~9Me.21 CfeO]Qbwe?zfaKF d֛OOs}7^-$|04yC{Yes(VlQ%JTwsqhlSP`_97:4PK|i*Dw0-Ȩ5;>!(A^}a+t5f۵sѵMN،Ìif[Kr~.هR>z&&̳4T>Ag\%˼Y%0~rAYCP07 y3qPB"I 4\0`M M/e圁h^}2ÀhWwsAk zh9^t2.zcƍ2QlHop8X,fƑO^dNsv(Nm;Oߙ; !>N440kW-*|pVvyw5FdJ0sYVMYFR&0s9򋂴 jFvhkHX ǣ4tH. ı,kEK-_2Cg4:W'j_KԞ . C̸&9%Upu )$Rp:6oU_pڷ< {g6 ŕ 'W}rzΊt<= 9Nš뜯W -tAFK?fv6ޣ߶&_,){fQ$P[)G6TRa}`+ L)avkh`!łFwxHlزc3LѲ~B,;ˆ1UU 0E\kACzM88i衅Rf+Ьȹ2}hg->'?),fќ8:[sS\Zm/)ٙt'8wubO?oNn,t̪0*d,Iۦ+k"[ٜ02Aщq#c_=e+ZN΄RR=fJjp?O_OFѩ%;57)8dn٭Z>sr9U0HF;Ck!5Qe]y {~۰3U'ha"ϴEr$)OկS@Cd__R\f/<*{?"[y]O5)fyf_kΈ'=!H6zˎ]K%y+]z&wYb6H1@{zV:XY) 46 :0Bv-}B*ʴw/+B}-1Pʟْ#vW-ιMzw(F]ɐ fҫicm}5ekMuk AjM y$.d=n.zi ^ FWDdK5h3JTj¡~)]=-1쯧\9;N=eF(e)棠&> QtpClZKS;/.y`66ߟÔ0BΩI:Є{2; UTZ&~>Mܱ<>[ĸE`;Q:VS$ Ot|1|iDpm&HaVx?r\q=VTʟ#E_F*R yKjl2ּ$jmgVڒ~&^s(wf lpi6Fa)AN`MH tS|%Q'4dxq5,`}C0;ZQOi`=)'kX5i?Ԛ#8*g?.e21$}ni\P9xœ}n!)6g.}yH HSm@ޔW-,!-oRc@wݺKI^?-3c-FJ;%g0OM5}O?pڇn-ޑަ #:b(0Ena,3`=,B}ʰB5sIf~ Sϸ+hQlC 묂𬹀%i ;O؍t 7 M3?J4P88RD33Mɍ<}Ψz Pqݗ7CC,p(C-b졷ʪd1%;LIQΓhMK1-VAF_5 ByA?P WØq#ڠ(]ҩ7\N˽uT{#xLfkI*b6zb,UMrW'w2ǻ}_̀ WpֵX8ZpȅubJ@)I-{$rT`Y*珻O5Z`vyycX9ړ W]h Kl?eIXr3?A#/u5BB 99oj?NﲶPrh7(if4lmF3">r{p۪.[j(m>!p)>lZM}H> 骱1w8k VlqYɌ,$/I"^O|iKZ8HaIn̰(dvnE;$h\5>rFΰjs۞'_96Ԛi5Ug&2,B 7oHM6pBHN ?6'9xg#Cgj`:܈i"1Ȫ-, ?=L왍အTx{6yev+~U$X>C.Xǹ Qy\BL(X)29O͋2%t AVol|:b ݹ 7*ؒGhQBofJ. j&jC<ӱ FbԢ$(ϸMLAG<ϸ-FDjB&sw(дH%']A-dE~B(92۬^*uR%0έJ2+crqlaw^@Ydh:<3h{%ҤʹRBn.?#Iӱ^r^{/t%מX{OpË뭻E40P@f@"X1ZzR>:T7*4[)@' 8@zwkM_WcHZm:2zڻl.[jD4""o䎫{N绰c*.Wrt2v9#懡-V&6OV81jt<.ǚ˄/PPH쑊2چ1Wp opż$F UAQm TfHyEu14jǒl|E:9CPLlOCd ]ar=ј֪l? "$l$'9~]#]67GĬnt9ɰ|jBNτ\Yx lzoʠ?7 OVDǡX IW:xژH"`[v.vܮOӌ.ͪGab`TM C3djIzt%C ojgctu ևל{ﱩF+55QzU6(5yo`QFC;qAZKJlUdhх ˞ޅF簫PA.HQ6ޓfn:Ch{>WvBcP-!ϳ\"6j6s~$=@ܧnρ><#)c]iȓQDs->ɇ[%/Bu$0.Ҿ4歁9S2g@D65҈W~K 4A$Lؤh9&kuF=\;97Эl֐@ fsPz^T74~tp90tw-wf}֮ſWDb[3/[eȣHs-Ox&<viirѪеoPPlwWa%^v?dFj@ftD}/w!:i#ԑCgزqOG[dLTQϴ|[0,P(ѷZ~8 ̢4E O^WMNߖ1o:;ʖzk{zH|x~qU_JU9RuHRLFsNm4dRabDRdicSꤥ%ƏK$jH /p'ОB.2F^Zu&ޯO͸_NF03߀EE^6Xµ- ^>b@AFY=9Gy6UWB,d;:k*@uI~P ZK)6?s4r@n Dp!!MFjg# @뗃 \9[Du:KdQIh\]yL4=5fjihe*U]ArKQ+iQ8$B66Yft%*2΁U<0GNu rS2HhfNN5ܞ/v >/?4Mb\:7:9/U;8C,e}k6>= c–GȽ+''GY U+ZO@HUQ0se2 OyD/&cn*஭F:⋸Bprzxri 9|" m]bO~^yme2ʰ~aY-4BL~E4|XMToL#"2x$)VemV\/-Qm]5!{s;Z; !۞W}߶HrKa~V`SG [{X$#IAM?.xLUd;hXmXhz{:Jmz "n?u=F'T5AG2$:yp[B`ض|A>|P+$"ڌmBxk7GAKpX, ŀV,s`d6R0(m8iG tpq}Y%)WMd:dVP{OtXÛ|ho2̮n +A)jDL欨IN pK,*aeK3HtO59Wprckv[ո>Ҟ mfL ;G_*Y[6E}JbD'3s&-<SDCIA_>y!#hD_$7)]t ^XF9{ Z8L]6cF l{[ ' )ؠ9f\ҺF+PGe3I`6}0L{Pd䩕BG^K1zFAvo>/:551ܷ-bM\ݡeԛ*fi^1=kbyhzS{8R -ܧэxjάUbbX(T}1W9i }U)6bJ~a|& ^7+}PU}\+[+f2F2]9z B$g䅇`@*u=c\$. t9Oh^Q(T{'o-LFݜ 0y>ф7kQb%Q'h|-&273ZZ%-Ƅ- G(M'?zFjeͶjuo8C"rF@G靑P]}@HwmHtX mIs?Gjj>eFI7wXvuVjOdՑMKï?$BFu=bGex&0 =%+;v e#]업7ܮworn1bd.Uzw@DQuRn٣Ĺ#P`#ZF羿#Odʨ;Ck-=ӎ0PW~ymTՀ(DgEn {`+yGUuK"u^0~u{t g2*9 LSadaԳq9&E}ϫuX)Ckg5P I0bf@yxsX}:3E]N1F`7֓WAȻ妪-L 5;#4M{Gѳ#acO.%s*_Xajۨe?C/[PwÕvrTPp2M>01@m$/e8hL|GUׂYry3~jNAP|9'ٶM-sg@s9ˆQ` T,(]4K"ε{DzEvm'T-*q~U[\Z=7Ff\lk9ÙN+T;z[$%Yx]P`#~O#F)+YM:y+<N4}z.ciw^Q"}:=YCh9jÒeee$v(YnRdBq΂Fh?{'uEjofH[fYr2uF%*arr?CbJDl~+0g*eI)sM I ^:J ቯX"6>u271lUu֋aέ29Zf DlKsBݲdW;X< 5:[G'hsBqvVX֭KavC}Jx26NFD(3!缍EOog'f uk5c50F#?NwRG3JJƕkY(&"%DI0׍K}Befzk~.. k:Y5"(3^pU0‹GdRr%޵G'@0G*0@&`y|.$LK%"Ή0w`'S >rc9P1CNuS3\lN_dBQ [y1et G ٭#?!:~{ WE*L>$^>CBI н{CWilq!*ѭcd(IMW0LVRm InӁlVʓG\eA",H| _#k[l?C9#ũ/:B+B]&1P@GQ2)DAynPJ4srZXX$]wE#jti]?Iy"f <l-%;|8X8U}Qdd_"ⶆJ,Cn%pb>Ozp<ȆGZ=4W+¨[=n_ =\g<%N!\{p@o@V;I JZ n։{Ji.ȼ@&((F E$X*%;#^Vp^ PB] 55i͈#w] pF8z4D-`]Dq n6=zEEύ\ k0eN8*D]Dy״ TRo-ZHM'&'*G 堫W[;:x%AA ' 0bGu8ܧRYC2;$sNr)J"\͠)؀ \Ut%ٷ]^beI[*!_=بKwl<%]vd@#aA9$߼<]־IRq!b/J䝟{CS=vZ҇.uv"a@VoffX=?2b^$Ű{ԍ$RGYJܽ#ү1#HRqoFƕ֩ =h&r?_m+,b =1wk,p.AƊ+V7:Pn-$+ѶUc?$8fÝ2( GPp aW'ʷgU?{MWxӹ#Og76pD%,^s{,(|f,65!ǙpND.LkqY3+DPAQkU\,+#P01 3zu+k} )9敾 Mf^pa+urygu1 GL&u}'ݘ/&5:l}=WxU9-gQ9@3OszFzX[B%%oC@-qDR^_.)t;D2u%y(T|ql'_2)?%,V~5!C7SVSφm2tq,0r84x I<ٙ")HU0,d }r`ApG `E_>5|͈eM֓$>H{R?xiW} ׯPc+{oZ~ƿN`ߥB~[3xDw` iM>4;T2ro{ţ[H_w1ojZehYTd@;z;*B7PϨ釚"P܅qdND$I,L Ӡb*Pbbܪʍzowzcu7iJ U.,߬WN%d$RǑ>Ȋ"<i'2#%(ĦJf8>x8Ed558& U-{n,Ϯc0iSm>sLuX  O0%cx~B~{< B17fh_)_v%Ɏ74 c8.WD2 _L2<-5: @vhlKH eK^1-Xp7LP _@??g;WsrwѬ CAa##1l'?Ж NG{TPex*RkH%"t։F"#F~ h] ԢN֮(fχ;ɴQ$ 7 08'BFt #z@Z{Ak@J,(!Y 3Ihf$( C'Zһd˄BVbu-5$?ZͯaO.tX=UqM0rB#,)0G '+ik%z(P.Vlk誾 HY:}/ PoNxbDi<} CL%92FNtR?|vMqJ *1󆆩l7[6PFnr^Mz!W:jCdعPQji9x}5=:0AV oi+k|٧"Uac/zսm=UA5Ux~B]hD]ؾo{BRdaZlۣWJ}Ril-q's&`Ԅk_z,k=A$( 8 ҎCnI+˹ˇhFk?(g.cګ5A"'|S<0r)Ĉo~!0nP5S4wgջ*aL7/=1Z"bCg6?NDxs fġJ!HߦcbjogLP|2!Tb œg|.:zoL?H*G$~`vY@=.kdbD vr| h䯍i(4IF&;iu_w $שd̚D$i:0Ҏ(WO2*)ǹXhp%\,*J1H1K6 O@YT ߧXev"ԉ-c qc!_N"N, #'ƣSXk6rЉ}(6RH굈Q&k  ơw"O |gbn|pR+-Xł)%̹>]X@xA}C`˟ʔ8*Hq1eRLaP!x-w'+{=~)jt"&&.ts^3ӿ?B<պ(~k/I.Y{SQf'+&+ɕ=_! 8rDQ²ܵb껡_ C \KasP̨$$-w/UM%]3vRL:B=AL_T 0S};o>Pzʛ,z>d|r5*7T4xubSZowpU[ jz ~ ܱ ѣT6׮=ˆODOCnR{y:D*6aDRIApK1w~qDDDWX7R"oՓ8ëDZ&>}NX L-TQȷ#FX F ;WiiUlqEx߃MQS4@Y\-Wi1据ba!MCx+ZTޜ5ᅠv/N!L✢vbٌLQ_ّrq8q1Gw{\0xm8DzB=2{:V&ĮnEr| ,;pAvHRq)1?{dwUOT%\f=;mfu].v:U19eI nZ%G6 iFgǧ&^KլӀ}^/R!/g_J0z˕aB۽A^|f[sK1B CkOu]&x?ĠNj}K#Kk٦-J2I&ba*ƃZKEmz,'kܬiY䈯O|'YO_7n;BkoU2QR50xٰ|YsZF?!bB~ wf|V$} ,EH⃴r;sQz!|O1aQu,Lf$ӃCbYchr(0{nSgt6r5'_M^cnZ*z |ޤ흱^ۜbӘenvtuU:9CfVsw03L]n V~F^L|X%]PEgCdAĉFZts7 >'B'>c{] m*,Ob(O~[,%@)]NAs.oxE5-ï`үD)ȳbSIa_v(BS2,Xl{?2YE QLWXBϥmΌ*5R9xK.^y:zS?5nJUBfGa:O|RXKjb,apK{O`^ڻ<5A͖XP@/S3#tY|O.SL[|:[1ۉV3Ĺޔ\ >FO:COh,- /yvp2/, vn)7_ǚ]eqAvh\jȧ\ڦi K% O,l2oI*-#!B@(xfz^|z}8^hdzq5WL?<lɄiA%xr[ c-Y",yq2/;O{`r^6܏=X4~g޸"9W߯$XCa DQsfw\+j%*Ū3Rld&yGT1mXoԱJܖ\FAyj òڝë0ZlԺ@ɑ$Em0) 0*PuOYre!ʢ%NKĻ'{#1x2*6,#%EsU0[ EZ_ Q4 9`c5 j^tXq^O_>IO/f,"Q H1.V eاZ8sjy "b zRSGYtHzx]#-<Ïb"G\\r@ݙ^R@uP. T f:WKuUcYtwƼAGl#]$7syU b%E2˒Hٟ )ּG#r TtS/{z E`UR5\-,QE=AwMP./2 Z?:)b7sqs%YݙVY.֏Xq61.(!AܳkR$dٻF`"& LdaQ[mUm+q*‡?DjCTS%,4c` kW.r5ptGTf$4a8< lblz_A$uD_7)8lao8WM1Q_.w/AjAR$ZdcÄ9eU)\J;/lHqaY|;^vq rTYtJvO{?{n$Ŏ',rDFkX"܈-åo?Jc.;WT3MAzA3Zsst ya[aϨq Ui'gd**X@a-K:zzJU=͆ezDum\%0 ?Q(M_8EK'A66&$Co&joR b=E&v_U:3.TdA@h}(9"&>uel0evgw>r&\i[ɹCnl?DGj^Ѽc?/?;@(o鉪PPrg) )L_ Ke~w얟{/#r"#czoTz`+(jU Ɨ]N|[Q&ަPQLj"/'R[U~kf ~1>"2$vp Ͳy9ngٌLF;/Aaȼ@!yg,c V6EG̘A6"*/A S_8%lEͬȪI AlnǦ659|m#Oٗ`JDelBGlz }ijǪ$wMƩ/O=KW|g^玚P_quUw5hB0+ӢTM ;B5+Q>E4qΚNՂ Z_׋SZ}v"oɋz~u%ibF2? &hi ==I:r7.0'әN3k+rV=}ʴ;4Ov ksN :FQ{2<µ FFM1_v2b[HUR\0iP 2O-8$Q#bR¢HZN5fx5ö^1 ə ,f"XOmĭY and>>"A Ҋ#ަz0gUtPu6 "f"LwHK3g`r'kRFcq>$$>1/V7yDˁ #^[ +@=|kݘFYu,,6~v E.tǧSb Ѭ6IR ;5>[ʫ?caZMXR?|953N2+ ]=((]tE.iiv4>%+P!]0#UۚaWF6 6;lH(ߎ_V ~[9Hy>1@Ik8^ͻNW8EYD(6mYB5ZuJ<ڵ 4`^{WѼ=rw[V| 5"p}Ng>09H\SE_c}9TX% ~ (Ibh:!elј42⳴G2>$-X@3f}i8Wk/){ g0Aʴ3=-qr8&_MK#!pfw@F81+ny Ť3o~T]R݉vH4 CճŁ1~Rms8|d/NxIk:AVC>uO~ۍה+vrh :N=}T _N$~֮6 `5f2aRc*roKά㎗!(NhyE)fk/ +=y~& gXV.ә_.,HB84nH{;>UF1ӣ~ N{dvz Mf㛵_,抟_ X㸧+ B2|[2E%Th_*iQk5E0Ljq0ט"/^aTJ8y\O=Z2>< sۋ֜b73s l>fӢ$ ܘ1zfѨzl)G^EPPs>ۄ ~ :QH(Qd/p2!BEVEG. kYSnVE&e񾙏M;6UFMJD&/jg3iDQd$)p[ޥ!//մ^|nLYM2xKE1WKA>La-qFA[rK:+xh:%h~PuOm6SͯA0348 weհ\%即t 5Y m)|xLWߍsM1+ֹb_?ҢOb ++OjVY (CIsB}*Q4Vα]UW${82b#2l/˪7:eTmHS7;Yt qدImQtMTm󻊣)<3^},2ESW jwh? sγF̯v3qu3S{x/–BLT 5t('IJO:XhXa֫,zK3B|6->3+BSX"gjl#=G}xs:;(n6k\:!j4\hrي8cYr}5Dt϶"f ɀlTSxպ 4 hya!`Ve 0(hK3]a =%hganE~B^%KFVb4@l2`dKڔ i-WHL5]~J)EB =eu9ůxruey~xj _Sdrv$}Z Y8Ҭ*8hxn@kEj)&8ػj8:\%t yŵ@s(/qߔ"FfJo{QXN 0kJ/\ 92o"V />L#7uZoYh!8c`~D7e ϭjD޻-qWv%1?7`~m5Q^)|ihD\>UąT־i-7T[#zZ4Ȁʧ 7&@<8k(*$ drVS\\lcq"&^Cb<2XNx}V)^c >*RA:RQZ?ok~D$ʼĶua T~k pozvoR@c24_HrAm,XE&΄`f!Mcy+3nUP=Sћ~2YE;+FkSG?B|@Ҡ֛2}܆8Xa]FD2 h&HG5rU{('i-GwdA vP:&P.(~(!L@h@02BQO_0 %5r6Imoh0J6dwl ߁DȎ0aא V{9Khݒ֐U%Ð,To/+[97;bG5,P@e$tWa9Anڇ6,Tn}ލ]9 !pwyˋp#;K ۢ:,RJ]`?@,(s}h$kdrf<^׮3:s0HE -"`T<3:cƴ)Ǹr(? +lTW%RO:N3|J_h9NLmvv}$ S<ZRs/F6\ĕ"a,[W; u (}aEv,V'Sv_{w/Ps}Dz>hݸH0>Hsh_08[#kd;vudksOySӗifhLӕ\ԝ^U?,lnz6^j*M$֥_3~)p_nA+@M(\SNKygxٓP`:SMF7nd̡?^Qkn0`ۍ2-`WU|ND6ݯ|ӕ|YlaKrw*.>[ =j`RC}/,A_ӻK*__>:4ud=k?x^?tYVOdZ6$n-6ԵPʏI`v'q' %js#w@~\FVTO!bĮ&\lRr:U腍bb`d ^a`p]0&O*X Dڬ%9u-CQt{%54Cwzo޿v} 86#h0^_@?>Rߓ`*bs@V lc,[\,Bo.}`G:*!3*T/1  K #-EínU]z)~,L?d;/+ty#S?B_ޑДmJc)NoH3#p+.Y5;xR.Ol"Ek3l@b8eh]fvl~ )RwE6UC v:c*Ӈ8or*ҟcq{'MNo.]j)T30x7c(TX (_+*#Lq2d h!Eo&|o,>_$kYxxw}^~We*0;ҨњdqNF/@1NbuEKgy{ ~ϮSniΥ0T\$jz:2{'@l+s71 F>*O`2F ? P[DXhgoCHsK3&]jŔu&=YΨ GT喇qf>cR818 e꼒B"s)U§ø[Hw ޵'zX"gVxX߸Rn \˩<w3 kOn!s%a/rHfڍh Z/ _:>@fuH1'.qѥhcYcoy=-g~vfiekVePnCj V($&\{$qu vwJiI5ykNS-ڥI "q2+yBS!`.uȽ^\GwF}H&Oct5Abe!Jl|'$pRŸWnJ(v$QDi Pc2O@=PH \NQ{$Uo3BΝ+f_gﵼ_l"X8)Vo3vz޳ ~0(P"ekF#ڝp՗Rq{&o$(^]t13C3iۮWGO mv-ko_}z2|7qFD讎1NKaǙyhvU˩@Å:)ؘM#UAyfM[B)bs9YP.SU0L_ò8RoĠE~u p齮s #zHA\IiTFF:]k!YKF(grn=Кgˠ;NU2S!"#ljRw)7|ˀNg{ڣ Lm3+cH0ARV+?7}Yt kL N+4zLj/AaW$ |SX **̿_/h(TV-1nD@?9,d^%QuW!R`*84Չ\pb=KֈբgOmIR)WDIQD@ }/pAN1?(PXGC=袘>]Si>b9c}u>xLW<#C,8s^$=_Zc'hLБIv:>x"|[\(H TŔ>))9ꜝ.E\2o4C%Sb.kLMsGCN])tU\V[`Ēxɰpr;=Mێ2 _Eu?Sb uڎ]_)1i\l Pfbma"6hFdEA^G>YAo!16#b{$?w勧 knQ,"1 '2x~dqW)++BI,Q.3(&E}\a/JmisVT^IEv<.1C,-K* R %?AYO7^B+ 2UEَz$tTl |#OB=ve[1Cc$$ *gR8OS%"#jHrU|\ZEMH3'\kDpxv0khnvJYLad}VF@Q8 ?8[8N9$kS(L :ף{za|TwJldZ-fp/g`Y5LLi;Dm E҇&ٰaYg1f o[Hٛ%_ŀ:jҬoB8[+NJ7Co'a$9:~vV۟!mH?lO@pNj[#vLSc \nD] Kz|sw.{kw@ҎJ͡(u:7dTu".$Y^khvJʍ:#%j' _ ~^~: Br [5tEOIi p5VΑug>M%ݝf=@4+2$lCEg)Bb7&_ ZDwoXKǓ5J!ފC#9mITn'wls m#"zv>[0 ~Cl/ؐ]5dxAKf _=9SwUHWκ64|{!t0r4Nr*nGo_:^@p{Le VVIz8uuM-0=]^8q0/О؛̆ aCŰ=jY$&W[qFΫx57z%ܔŢ*Sr6_z֏qeq$ U7n L|qͷZw\DC5|ξҲeX̷HgQfh@%aAuxgg:F3jӪ̈mA4bx £Kz[^;a5S@;ӹ 6R~_׀0 ɪImVq@.Els]XLXpž>֮ RLiy̍jzkpN5ۡafCLR2aFTq2^#0nsGTc~j3oEl6ȏ_X;G9`D¤2 lrN݈:bgj,)H*V6ŀyS7G ôzmv}'˱}}&AdX<25Z@)|BS$8)Lj}:2N?is3#>UjݓHx qIF TqJ6;Pgrԧ^L":RfвV,8< $%R#a~UD5%u yRnjIbܔEhVaP l7SMyVkC1%"񦴂ܙN o"hi}N-D㋉l%M/ɠ[l@O{E|$j]Q/]q ɰ>;U|&|3#}ٻYf@0uiXIN)wK.LJ])u|ȞXT!>2`ۚb`jܺOg -yHR !7SԚɥĮdȮW")v$ӡh@iw֛IXZ/)X2 5He׭B7[c;q6#8 wBjBNX@#ڧ^XUckWoIcbwu W/QK2¬Jw-< 'ºkMH^&g4 qu;kD`p>ЮOKj2D GiK^f`~̅WZ]F<;1ߛdSYotͧK_q&Pz0m)D^r׺mhy{!Lv:j.~͸_(jgBI~Kˍo=5cI0+1]ņl u1ny3wܬg(녣Q*X_χCaD$W4ڷq{.M X j@MW(}8W 1ChQ$Ġ$QmغC룽'97g񠅼s-\H21۬k 5 Hc)A*g<1ZH^;$dږ(~ e QCɨi7Y`v{͛}M  dݡfѝHG'e|3FZp]{MȂv݋C@Bа ,@roW00wR% ҌZƕEz9Ts0Id,*F Ӈc{fD H GP'#vyvCՀfSpap[586'eq @9j@ؔ&M{ͯep) cd|OjI)6_;uVO~ J@"E@k(JEY!z„{L Jn葋 Ha3=pä3ћѠP\ڰ}ns1zdV&ڒ56u'Ÿ}(֔E}p <椅-3#|ԹPȕ%9!,!3D{? 0"ٽsC<:E] )cMRԹW~3tr@#vۚvX@t h4P\R+4ĒDϗUzK^tJv ZǃR F1Q&"f/Kڇ-VD̻c;OD_up?.Om ͕ ?Llh2PI=ݭ]yo;p bly",L7aD"Tnv;'֟đS̎^5v*Jh 9bD`w0wʬ,Yft9AIO{Խ̙sAʂIufJMm hG,H4N@FQ}8J)Jkg+[oBAaMNj?WN%r+YCI0fX?Y іG,D .`  t1 "ل뱆SBz(n3Q϶JkjVb_v A#Er:Ud8\ZtU>+UC" ~ XGbOkc4/zIVjPrunZFc{V) ē?kЛ& 8b*d͕{+et.)K;8AY$7h "Q -|P,G"=gqf74GX55NqSc~S[>)N@R0{~R?\\څ!o% &oB%>d-wKF5B`v C&IĘIPlU X lɊd垖Q_yC`)i7;e"ШC9X+0P t5rBo=(iSik\s`YIqb,LpU.8O@.6LR."؍8!ԫB5iy*L}:r7oS:+bZ7_(.ѲDW%[$〛R;n$$u̶/%!a0Q]Jm'r!ixnmqlVe7H ENhI|W~Gv#8M6D\@{uM^9D@ߓ?։M&?&Y//;g]bw , ;at;VHkP ~*w[{!-̪h*uɪ]|] Nq&tٿ@%|,FiZT`}yl^v=Ơ4N0,V{R"ea9hTbf\rsd&KZ)% 8e)6\o)TyCb7?mq|]",\"mJ&!Ar޹wϢ~\Ngj )%!յr4B"Z/U&HZE_WV7y 8f57ė/q҆q0R锆Q/wS]uOsaVuw}s08HK w,`z.xͨb`AUfv3o(VxDQ'^R-ŕP+*}&9L . A_V*,Qq.6fq,< vYN 﫠lW16B1r9Cyz˸t#ZQb0` Ȃg^_%Кg*PnFeeYMb`,y!˽,REOeZVRN\[ K*y7SQCpSE#D;$¸3 ZV}:t; ǽ|DTMXkMDFHj3X]@Z#V6D=sMgbIyոe[I2oư3Lo\[/Shߤ91iLEEbFP]>h빹W[/hMJO|6K`g&AX<">R9éWW{j;/eJlJL >jg[)Wh>8:>P$S#*Zkd"kF xԓ/p&^,o蟏Eʏ 9xDx_5O!῀5Y>\H1XSj,}h.w!@޿&Ċ 5{1%oj xijD-?T%~ϔZ2V e6qާ,r9BXS5ˤ{KE˜BWR=VoSu;Zd97j-QwD?qt@T1 3@Lp⣎$¡W@2l F@q)dl~I!Ӏv:Ao9ױsJ/4kr`fb٧EO`/C3mQVGMCX:d;v[MxΡ:2oĂ)ܑ;hwv?}fk6/2L0';Ϻ;R(*IW9cwgⅵ*sy* Wwי.CHڠ-Î ,OK|~ÄX$ 'Wv xruHbL0o\S%'s ITBWK`oO\r3MyBTC9\. *I^C;glrpT# ҿ$tbi<$sD$NG7xSr& !U6j l?B l4IC(q):rl sEQKK((dcd-"x-Scl+9fI+R4 +N.{u@Δht\N\^;Q:>vP_L:c%7)HROnG:tf8_.̋3MyRQz',oØ&zO dpM'JjN W>Y\hF"F8F3ZwE ^'>`%|,+wfi4t\+/ f%fs_(6e24m/n O=ث8;,ѮF9 `b,GbUE5xTa;ϔśK:XW.guwSu"=\#C$Z$Z9QBP "!RTZΧ&Ok_Ĩ!I,W'з"tI4+Bܽ 8\^$N]l_ 9NE~3BFHQt`s$ yݣbј$Mm،? M IKm 51)Ae@SʨSXOaI>aT:AT^; V7ȣ5@LZL3]ig v.aE }TXI}Z\m|*4˙Є'EKfs 9#aUA(=Y 3&T33feS v-<^qL3'JĮ0:Q⦽y#C+3A[ʿ69 Q +"߆c W>salbaY'.E$eLB Rr$`"fl7!F$ޤTgmV&S@@kjY }VTz)W~_B JAhρdÏK?ii*^<@_nE=NiOnx)L9qrvWwikE^lXmQakjQM޸@,f T;*HߨUĸveƧgq`e#U^$-?ΩOȨԞcsX hV!& 9lJqrLyC^h6兿aC׳DS dNl=yjFE8bqzvܟJJ[9[hlM&:P‚"D^3Bk3#u@sEL7a?~ΨGz ̼pK Wgu3}QҨrrV[[@ܲYDHs]rSƕapJ XW?gw;prgrG\ݘpX;_(l!rr] \zGgA~c9Mᘀ@ڇ!E`mT&eU1["''BOr;9&-hF JerY4rsvaatyЭ E 2v`y !j`N~7  Zd~,j[:(mMg:n{)\UuHx9"_ˍDlK3`/.ATCvm^' iH9:$c)hԪCym9J*@/+F,l4l6 kg]*Jm뭦2T XT.ERF 3 J#I?@[ɒM2dכi 0ᄆ&U2d}O>ٌci>@IL@:ZCQM}Oj}o^"Yd"S!)fC^xq fP-+}9 4.K|aH7l)x[Έk unl&oclwA^F䩫gic `[ivB~+Q 2sN̄g IcFK,0A,e[g =2͘fy@h/^keѠ܎feRqm@b-ű8|rLS}0Z0D=QlI-BL򵻷@A1f92$26 OvX9ʃeU59ņkq}.LB; FWM׏u OEǝkkd䱓Ù3d)q TbqGVaŪȠ*A^AOp(N>~`$,K^ Qh gP ߠ<_ T '@O L#1W7NeJ{ EeL}~hbumDp|>[kڱH.;GKiP)x1<'!]H 45hb(#3"wP#ה03"Yֹw[-W`ޯ^%mVS=mJ8 'F0*2V(S!<):֝Ϧ2ƹzmŐRρ\Ì0i*(JY-%3[1{u6\GSU/D Kg,`K җ, OhB><~;:Ͻˉ`vݵ?d XU('F30y|AĊ$yt~ȵˋm^.~i e߻- $o܊"ov!fߛM3]AfB8+Ug.N'#sbD柺B ֨S.*ss:O̝SQv%x5$N?R-K}^ 'ͺXVN;|\{] Zc#X6V ݇~xv= agFlYdAd3ps6FS?GЊoFI[JbGQ[Mӷ%kU*U疏Ub+(oQ(&W6F(5}^J9?Q 4Y(:"486#Y䅧t`ix b5w3xeˮKFQMu(C[-El_3bpP۠lDb vדmi1nRbhaDDc!uw;)FU8}4Cf94ȯdڳ{Y(ga᧣i5n?U~i2/Ah/5mё"eݯwGUNt} "ݼ3M!0sMLj0q9 J)/*4VYϺOw^l/玟h"?Ȝ=8-L6TXz%{~W4[U *ڦmOFEeKͬς׫xq ¹ƹLbP4;Yַc-rvo[*N6caV"ݩxje-Kb'K ZB;Sa\H^LrˑKBa {{ĐLR;p6!'qŠBoH^6NqD݀`i*hKڛ_hs _*)]3 DROA/L-&:-Haٯ#.(nJؑ tT* 0H?:Ȋ~t◡_}X$A'iEȑ3UaGwEW{/\Mv66\ -aZ~N`7  ve:ԸR?T eA1n t)Zncz\CH ZRꑫx^LOM[|[ȹo)xcH% Q)AP}0]b0؏ʖ♶y85DdxPݮt!y.G(gE$_b43=gAkN[8_꧿<=Uxy1*IM5zD 흰UsR5] HwF>]YL=6t,xU!h@YSGoEyrv:]FsLFr?V:nQmؖdHpYØz 5~w`6aRZQ4`xvDES(}xWۀ<\jD{ΟA0-~ȯ6Y*w>BgN%>{39;S[ l0ڞS#0[s%`oj<* I#I;ݩ.s!r+J}rKL'*JXNqh΋k$aYR( p3;Q녇닥7'nU6-U<|  /dJ!᜕֖P2 MyDI|Y[x)@Q_n7w0z죺)餬PC&ɍ,U| PW ^">c º"_Kc|Ro^ ~~ ݐV!;RR~g VONN_!2Sո`FI?<GLyTS$q'f5u)7pBvqZ>`cً3Y{jJЇF!$Ppeܦ[$s @d!%ǧ~׭W*y\HBu;Ͱ7k TcגB>SBf>s+%D;* O- H{T*{}3tl 1hx@|FqJPA@z:wj.rݘ(CNojϳ ' orPDd74?E8r@Rr>G㲪ǬU#1mqQ9'psM[W3?y!>=AFp_ag_@SbgCag$/N#@[eG@;<7mbS-C)$iHtLB4'cKF:-׋cSKk#E= py0ż b{i6ćW6iM\_#GuEZʀ?p8<,ZfmRlP(վxLӻ6)LwqjnA(GA*]AEc쳕۶=t_*UUx<'Wt6 ×^ 6^?M\ʫ2OO6?@LF3:HasFTik^!M(xVgSV |TΫ@pWGxqiՒm?2\70#Q8@uv z=29W:_YjFT*L7a%W<~S9ѺpĈzžp{ b]GV4aM]")Nz:YÞ܅Hۄ`zvu[pNo [@9:´% < .ML^Cvۘ۝r_rt&sJ'Ոr0ЦܬM+>&[94vV:}!U+Uhz>m#!PUYKrqz-?yJzȥh݇(ƧAG0~Um]Q` SF Zw29ԇ*"~fkQ}YϋNg4kg赨E᳆(H< <|Y_Dɣ}c;@qkNzԞrg5s'\u/-hkU,⿕V/qĈoAOBG\NJ"LQV 6ﭘO޲Xf#Ffx~WrCY).>?'<>6EmvdGB~EO=Z< 4ėSP߂NM+Ss)h"2ӧ(@p~` |aUIN@6W6F$ψrFjljQ_$ϑ7oƕ϶T"ԣzAIs7Vz~D ehuC!ڊErGk{[.ra/{=;V_^'Ns +wD  '|7좃sC?';!%6Y.(8qmZS.D5%nܺ]'o /,"5讀X(FO4gVfO#Z| Y ^iQ_"KJ$Bϸ+mJ TT2j iYCj*2L^p4>=JL"zW* Њ/>>{ʋ c/ys}f>[r]3.tG Rwʎ]X!ϫl$~F}doE=A$~P@~yi}эY2],QkVUK(4U $4Q'-sE^i3kO#6Qm[ak1*#U.j|pY^E?Z[!Kr4IC%aȢ;wA+Zl͌/>{xKC^M&oǥ2 9UF%lAzy[$;1HggY<]$t~OjP|jv|#DbbVAøh@#odsTn5Vz^l\nm-<73+˗cO{5?7# 8gQ ~OgqWfgCkƧuz3&^4qaPDwg !/n}p$`QƝCd[c a }? wM/Kvl6c$ u~4^Qծ%ufo4e1ݺyrЫׇO;eRom,QJT@;I)@Vɔ竣v\C9TX2f'fD?l9/w(- I¿Qh6Fpwo^j kxUE}r@yC^콕-!o^ǤO߷تBF͜2#~Vac< LGfD3I`2kà'6XcN:7|oxX\czeQHpI ʶeРS%BƬ_&ʿ!NirahzqnX4%:1m`&=^[0{PT —Tw_赼CH/u|aeTXMBuTP7ٸQѴ9ΛÕvw;5ا<V'#v7Q Tr:ᣙo!&Gg3]J fZRIO*ংI8fEW{O*pEDI ;.層-$t]F9ݴ0$*K:.b^:7A\%S>Ux*2MQ+N'~`I]7/ڐw-U+5#$dɋ =9| )OR$G~ *jb&'ZN:9@+6ɚDzܯw4`:k&{!E^dw H"T"6z%޾+z; ҨIn9'vz5 -?3:P bfAXqsIq]"gmfC}LLG0RP+z|"LKQW"#8M&͒UhN3ÌԠЛe4[y[1h[-zyg j@r~wQ- )7S0sGC.ّ'uH zʨRkmbt;[oad0`uBb ӊvxIq-\v:mByr8S=J֖ W`f b9}3q{l]nr\k| o.+q ~y\ :p (hY ^{UAPm!g;m4+ j])v- Y#*_H"W*Z9+ChNœA!>L&~o{WS.,zEʷ=NΡ#rO>Vn#5Dyo op{:>xxF }(u=#-/w0.\s!{GÊ7 [A^!X'wpwzcmQ9qJ9;C|LD#,&4ֳ$%NZ¿{b<22ZyK- v-UY1) 8WĈ} E>I#^1qTP wv% _SZ?55yj)Vޖ %R Y>--&!}X'`fI?)&ۈh eGpw>ui^&F 4*7M<8VF)@ճuKWy/RB#)-E+fz0sty7 鋙@z.+߾xy~'2,RHZ5Hy2ntS;ꡂ_v lsX'+F N;m ?Xni eT(~)r5@1 baC.;orU< O=) y~NFIZ] EB{^ +YApQ#9ɇ!%XϿw`vԪ)O".7A-p7"G㬜ѐDIgpq}q'ˤZF84~D8STjp(.*B3bbZvOFAa.uDt;N=^Y2Azܫ6P ^nuåۛl4-ĥrA$co.:!p||Χ*#kscP6hv/AvikN0;qn 0`!ȗu== WY_8P(Nk̄*~prenhcPL͉۞:b):/VE.W֙$4b`fs?ПW+!AQCDO.CPSN$.ϳ׫҉i=\F.i+{zR/h!Ckm|WUUL:m[k&L $}XgS$L!:I?\ ԋQ ^6":Ī8W+fԾ;ר4E44=|<>.xKv5dۑ7gDŤE՟UQ,C -p%(mfe#ؤx[$~)YTW٫]-v֭dY ^ p1^`rZ0]LV?m@ Igc62SC+XJ;3np!c 1RH>:()E&>.ZPJ!ʕRd]Agrlh3("k[TXRp)"A8=;Nh2>mּ/~J?n>6+{ 51,M `Һ|/a)SJ`O,J$olxAu!!J dArc̿Y1,ί#/4]r;dg~9NAϧ%Y/Swv1Y1"fu\6oJ6"Dm7L\"3;5횘tR`o†G|(qѢ o}j|d V,@YQH# އ 3˶6Q[3/7V_'v<09_'{.9šC)`Ar?1i =" [IjHJV6J%Dw.LN, WRܿ?Kn<3; 2FVwH Ӝ=cCB{V<[&4$Q)6,Ka)EnpXZ}5&m dtlДljg6C 6|6IŽ &ԛ1٥>މ@ p3,sLQ"<:IOpOta 7vh4IR.Oew֥&UA0:z=;(ߔI(  :s=NiR}uHWL{umؙo8֟Dܸw+t :6p\]HTQMh6z(3Ćrv;9ELHjhƀ0kSק`- 2Ǥ&H0GbNJ)޶f8?IB!l%sXZ՚"*=/ڊ$[ J&6|+ߊJnِ,țmSfy@zX,-ItZOȚA&}Z=4S<y-dTR) }5 Îo3 cr*lqoWHr4gևnb2#,ьę $`[S41l)(k{ q+Zelԋ F '[ o_,G5w)puK@ 8'{o }RD=Bܘ_3\먻tҮ'ď g֘{k1 |-2[o{kC*ݠ1$F<++s%3G8us gPj Euvzn(*!q H:+jWLY^VԖD=]8' a8#}*=Avitʣ@Ȇu5/rxfw9en9In4/|_3ImT^*Ad6>^ X ɰ|]F?JjO0\ەġ}b=2c^<[es$eyՙv ZP3O_`qJۼR'a-Zi˾lڸsP*T\d7TDYQG:X;`Ik+s1:ۤFB#"F$3Ь+ Ya7"9x7,k.9K-Vuߔc97 Lc$Fގ)e̻)&qYr+!0mԞ$QDa .EO\HUI]ƼhsVl0 *x'3$PZɋU&49P 8hh: =\Ayn P׽D`V>dj}z(Lm+H+8sz2(̜E66",zp_h)nܯO8A1J|ʔԿŹ?XwdVi%J/Q 6 h"ԨsfgޅaHiqݕX8S[tRj0y(A;.PI2O;N<=o4!)+՝r#ZiG qAרP d_-/)Xyag %BRk>wǙޞ/c;x?3%B m0c3Y/XAnX2#?,T竘o3\0E  NՃzZ)QJ }(MYo19Ru_,|TyIGmQ!I{.;gZ+$!%ɐl8 JgRC5ѿ,TC9RvGi`c |y7,TZgw4EgrS}q[ )a-J.E >_y({^8bF:INv 5RV4{-vC𜲳ɒ#*r4>C9jdw~)eF6Wy FC`TJ]qô|S!q,y6>;{S^:`yҨbesnEyAnQ.7)V[Az"n5Qkʠ 'H] PG?J5s8@VTVmD 09/c {Jg-cmҁ7nmA#p8X@5Ѐ$!Fq6ݳ!kZ|^?ZD\ H,lӸg4e NMPL"1YKwIJ0ׅ2rr3ܜ4CtjVxC[v2^hdm^O^yp]O`ʣonNi}ݿϯ~b*bw"?:rZ56'&XJZoxGzfC(x^&pm1L|4tPxPBޯ)cc[^d_Dg"S_#bj3fҋyVέ6@E|wr :fu3"L%{XKZ n0}MtAk!؏fxF{hbk"/y4cޭ Ӎp`) 7Q^DF0+J"<~b/?9A%|B&e$(C]T1\i+E'T[1B11i,qY3- ~6Ƌi3˦=fݎâcS[[ dn91QTс YSYOfi0 "xdR.|g(F^$g E&s #bWQ`Y]`7Gp偹R+DjQ8Df:u$\gNXh%QZѨP*]ތ0+r RC6:><{S=be>| ޷ĻKB@;4t&ʟl a%G+)<$!g@ߘh`Y#u@]9DGm$c7mpn-mƛ;88t =6q3;]w?5 (r*TlS&7yԐ~i'&D!p`آ|S)mun~$qf"`ȸ8S*^n y!1 ~ß#\I6xL1n3RkNJHը5iіM#0ǕqS _r2%H 9>fF]KxPsٷGj!*1*xxGx&4MaŏgOhEv9vdbm _oV?!;Ce ?73"x&hނg笔u4L_.Kv"fQd>]į3'`5$[f?ɾ-Vm]q3H1'~wq*Nⱖ# #<%s/6SMsBw/7iD .l/YֺqS@|):7 IHƹ 9ZjcW +~ )&tKm&F]g&di)P M mq@[Nɠ3zp8q !aGħOTwRUIe;xTLg>D)e$VQ2òXWUf*JXeY_Y&U;~Ϗ[jg,< ^-Ge=Lrhg;({.r,WU6dȶ?4IK[`<:K=yt'-N@dܔy8KAU#0eQ~/QI4f݀қA"΋{]PT׌boXtIe-}m20w2N)Pqmw豒ɭYEcT9 찊-- =̅a"}Ps5TZXxO!J$oC*v.+8U?vH$ҫ/΍(k_:t3acVj݅4:RWSf `wOf#xr 3`vs:.DD 76<^tCvVbڄTTH액w\ʸxAK',)=Zy@/9C81%Pm)MbH$LK6YziWu ũدIjHт=1)vY (nXwR"N}Ȅ; MdԈQ{" iSLGsZrp/.LaXE B03 {- ZR|h(GA&?= 8F$%02fJr$s؉܃P:ɖW iN8QRX!9 sg%uʱT>U|Q!޲r irqSJ5\ҝci'ڰz 3|KF:17egwn;x: 3 (-Ce|}.ӳwcoynqb-'-fgSoE:~\/+ =sVF 5 Z %ZlUOj C3~߸\ /~GZe_i uW@],,D(i29yΞAlۥzz OțS[2J@I}W'#u3Qǩ=WKM}תLO[v^fXG7(ݢdo@)"x bK{pɸ.3/MO&VC$et]2IPv*m!< 逾Q5GC,{@Ɋ濘rQ+pgBlpB\0[JK ^ vhz. z%vuzLf:/.c IXMXzNDa$5<2l>YhĪɲ$'LD^i^ܰ ZP־laʼI}!{c_|5m=u{$ ںOfFZObeʧpURd//EtHѹv1񁤩p,-#opU*vPhv[ZzR^;yYr;rxKcQ9M4`O%Zq<_aR\֞,OLy.%ܿȏ0qj%(sHISʮn>3_*: zQ+dgDwoyA=G% 2ڋM7nn(>9N {&9\l$u'7Wѭ-VqHϕY/&nTyV:)%KhXls6Kd($ԛVɕl&rnN g fA#Ԋ oǰƭD ڕ &@ڍs7ZcR8g0 Rk Hmo(anDGg;/U圏M@C=\L 4|TuQsu*;bgzFS,djwӑ%'@Yh-At6)5:c`$|dblSȺ*TA"% sH]ի޽фd); |_LQmT7}ס5x;,BXCF+t^7ALtY,cP@0Bjr3׭Z0#Ok0U hF/~^gO 6L#qk'gӼadAtuFITia e(uKKƳk \,Tܬ4R`M1ކ _@/]:罤z\VjјS@0vqio6*MWQ5^^:4r(Xcׂ9)oP̯8s0^+^:劇CPr2#Y%FnhgN"PRD^&+OCi}Q6@e֠0}i`MEfˁIiU 9 6ު̍w@R)q hRԆctOAw0҇Ԝi䵓iPGyf׽4E-u TiƀvqKI-Oډ J-.$2'e9#r]*!?Wl>TG1j?#.|#[aCOGɋP^'nq-MZ3Ñ]8 ZW YY7GKIB, IV[z0tsXw (+:F76,^ 1HFv eq?F 9D<vb d?]!O1peTsuh[]{XUU#K&h׀d˯zRMG+ {ΦZ{D-6gH2g})gU9|vBQ́k;Ç7(.#iw|/~Ѹ`DTN m@-눐.^$C@(bв*GbxSuAŀ5[\,G16k5kҟcFog⚫Z 9wV*Ws{q=v8o +uG?AJ :|*=(Ǻ ܱި':z5!bpA$VR垊"1Unv+/[ c<>l'Kֻ( p:~ƩA_# &/.(SiDXWkw"gE_@]iX7Vh !nUO C=ť[?(:MV?mUO[UC̪5(3d#rr#՛>Hxy04"~#Nt61`,e c׽ܹJB'Jb'LIqϢ)bB1tgրEeЈGrp(ot kL4ah/}j5cgvdC?egD"y=vnGӯVx_>4QX4T1A&~ b}]0wʭr?O7ZU-$g$yEsFh[DYމ]9YXraE͟D -iP2fefeYkP-Bu,t{T:$+0}j'l`zL RÖ 6~.ZRs|Ã,x:O}Vv!:9fOM񆏀 b8sl e HR)[_ Gؿfdg j OUx+O[yW?G2E YjYpNY|Dyd輰a#Gr=u>tPUCQcGV3^ET/M:D5ަ s8ZbDA )JxwkwSA"mDΎ'bl!HBh81TX.Z@t_vÅS]⼩׀Y2 I;zoTVz5G/CE@vl~_ Neܩ!@T%F NGU6fxHVF,an ele,$CXc/բ!8 9Jw.ҀTtn@h/%s,+tѭ޴զ>z%y+_ԓ7aRSfΆq=` Oi&1rxx`85WJqIhSR6*wXǯ8yš&_[Lw 6׷dǪF*KQ*n˧^ z%2%뮓r9@5m_ %Щ<%Aƃ9ҷhJq~-6c^ćё5)΍+rPYwOKĠ1qxʲ_!eɉvl9B:1ӻ63?r%1`r7?,1VWlUWV&lҨ Ue[AQ0,ϕ- #T[횔 /4N}uSVCȹ̹dO;YUzoHf ͪ~x<JFw$ T'3Fĕ#$ZK%ZEދwIJr CU27ַ :F+$3"TVg;ʱ0`;@jQDJ`\#<$䴏kzdCޚEskZft#eIg.?p7gm:K& 9ktSPB sfGĩօB/ۢw}cl[XxFOqP֡3d3F(r@$VVLв#N:Z뗾o2$ |J3|k&U5 2A`ߧ 8R"6a|B5-xKe~W"=%~gG;.DƋp9%Ep؄Y7 ORj+ mimcv<1IwD2c. [:ZoИRjh4 =<4%qDE*q?"%a4Oa p4{_(Dy9H!<=7};a34#mJJZ+ iiY)=;b]!Ź#yCGN24q;!{[$O ϰ{>V yc7dzt*⢑q1єV.fe"V!-dĉZ547/51E]`1ss 䗡"pVy~/Q\J[ZZtQ㞲B>q#dx^`EȖLe%0 ۱;ď n7P*7hh#Ð@X b`CCI} FЭ lݎ!ΞpmJ21 aza=\9aJEHk{gIsv_\[cR%c}3%bs facV*KapIMu/jI^%S;c8`Ձx+Sl0f<'d"yӘN5IvcڲgtHV}^?QKh]iPa~ ¯E'$OMg U$_9$_&mKen)zҢzpCd^Jwá屎`8"sߙT3/+.Wg"IlJy)3Ydh+GǃB9!ݣYgyR=Lxt{f04^RpdN|0L[!ǟYu?36z[ܤ1'2vN7pFS0+2[uj-1LHr{3DIL\?)JkcV-Qφ4M==JS&r/r k 1k<.g+տ72D% l*'NX?#'j*Jkq(~%?<)DhґĤuQ晌8 /\% $W=uP :_Ä B$ /.I`8K1[ lJ@CTe&К;7S b &}[]p°s9ŇJȳy d;) t MP7vn%mA}0Dts|@&'oRGUCzM({QͭDAH#Lj5ClDSF="3nf%6_VlT~y7ޗl檫} wXc{De{N3rop(sM9֟Ӽft>Zފo=agʬ_O( w@*G$m+`FuLa!GVYQo =N(gQI'Vf(5»A~&=x.8Ce)CP_SKTe+28̯hWJ Vxy[ A-LBLOS؝!\ L ]Eؔs11 ŸMU7hVk=BV_WB*59.ʕ ˬ?oLqgEͤqyhYHچfeWzdo&ͦl3`~k҈*ow62NZ4zwg9:% 5܅fuqhIn~/}ø(  $ݱMF¢ajhQ^(eamg;]TV]TQ[]&ڝNKƒ{JQ j=G 'EDF1"xD~.Gl/p[!L^9VdaeJB%%X8h@߀2D%1HTʟ1|.4S.PhDí~c.Ai60(m֩HJi&]xjώe+>tOSk!1IY$${~c$U㲬if^v+<^f%=D^!/k#}:ǎk} Fg)kE~:?NԞekCs53-OUI E8b*DRg1t9ƑPob &{UJ;#v\z?=t-gHVXCuWGuRhXQ< jj3>Il@% F+5N"=HlFtH~dy#[Dª /i :Qx ܛ!&1 QД_nEom|:akj\qnG/\jSbSƝL+ [[MG_i5s.jiF# |@\۲J =^^@OsRu%ZǨ^ẖ9Fo2+)d/9D5!߬`&u-@=l0_̗vy1٤P8^rdo K)OVzts:"16npu"DpCxtw@mYT=]rc&ըtr}kGd<;ƤiHo3aB{KKz呖'd\2ȧ6-_uvb>,B^&DxM`nPC}liW桶ß3~F^}ﴢzwtPBD^47c55ˏF=P)PlhyCIҦz.G|U!#N>C 'tL`R}#r"ŋ:mVoTP~o@a2NYwA}7q0a@uz%g AMr2Gϧ{j4#WA@$:yzF?x>_j1 ¯8-⫖u`6@jp&NZN]OuWcyW2@@0|i +堘aJt$%1[nh Q]-[8hN K˔XrI Y[ ZKLxMB2"ERW Ky(Ʈ(s3Zzz$eZyxw4̾I5uv{#%>);;0LC|<NSEF2jF;+bʚueR@W{{a9na*؍$$,s(qӖ|п"\i61o]&$L-!Xi'Ǩt3 c!T1+cŪٍfbMqh~_&3:4y|r&2Ԏ "K : }rWKRЗ({ø?qׅ=Qu2+M釐 i'"E~Qn$"8yvI&.mU!R_7N[^h)@PP]ң**c ;QmR4m*D 'Q N@G1 lxLMqGQYJ"j hwKMQBsuB'xܠE _Vdur*4 wzO +|c=UfZ1-0ngQ< )Fg_ִbcg>d@!<6M[,XQLy5f&dQ7N kg" ΐعD"tJZfୋYyh\o*vH6SAA,CP*L`d^J`Fq= ҢC (eT_%}tS s*6haѱ2i`8>JE6Dax{η)V2_,/:cƌA1}0*lu }P[Aݼÿ`-V@kUhOܬP7}żufi-nĢD!aoV)6 1[F*7Mt"!(D{VG1BλHJ^<g%l~EռrdN·=jG4+ óp7GDԭ)U9! ]ǵ 1jF8cǓNG1dj2*H<-Vވ<ɂԚluqa3Rtt{& Rk=zܣ$h`ͧ;;hySh K,%7IXjZlA6.7mk6- 7!>eŬ8W''΂Đb"\#m.j4Eݏ-b1=gڮhQ2}H:X={6u 9i8G$x-Y蚹N:1Nҳ;s\+b)ΫeFRjdF;Z:T?H'Vغ?@Έ~ޚO-8 6lTXBQu_O~*P5:~_A{bB%o~-~wMP,sg-QX=7ӮÉtB̽YK ! ʎ|a]OGR+Ć2v9cxLo>Jg1?6wX=NEϝd`+O4 o䘅n9Rde"A}AෑlYjbϓ!Wf]b[&lT׭^A3.h:<$Zg7jJ6n*|ݡЦZd7T8׫/"_j o< :<`u: ˏ8/RONh-^WX$E9b8 Iy`Ln,Wߗ&M.2ډKgpDNY8_ ӀZ.cҽ %ȗY 1SpfXf;+AfcKPSQW;l)tSBXv"%y8^о]RCΓLРYtOim*tTͩjIPKUZG SJMx9 G˔REMw,7 na9%,/nQϹb;ǣDS ukJFu̽TSu↵q̶Ͷ/ud$DaWz/s1R]*2gT712d Ril>FVsh`֦'DHWjP*veOT0D%U:-ԡvi`2]6q7O)CQ<WpЭ]xjsOpqlcDžcU_g1}ޟw$.⼈Ly(JcHdU_Rp4[ޚ76jS\[ 1m+}^i;arL9YP}ky쪟BV4;mihF{pN!W}1Ucy9xo7gu щv*_l}i0H"$$k:#?sh"07>R*Rzjxت[*ַy+ĥrWt$BΡakDiHb  ߙ?)"1ѹDlxїYO ܏BG5A1l+T9ʜ^N(;vs8X{}$;"sL {+] t֏} h Z΂s mRt2U'SV>wp?J:^bxy_B>A`y:N R3a/gݭ؅?tڡeyة3DuBa~ ԠW[ JN÷"4rBCA 퉟ýQ45Χ|=[f* xIЂΩ,X.x #c)&' B8΀$~+*X{Q%/.k|raA $jjښkE_Br;IIWG!} :ohu /Q\Yu`׀ Z&b#/J ,>5dɻ<:'[Z\˰q#Gp\XhG=]o)21VV֚13D+nm*bd(bpAkot{:I |(GpGO%`)rNH~{gd0eJ(XmpTjλQi)?08_>|EFq[c0n>LYF 1`iq+3Rܑ1qgt? ȬUn àw&h2y6T+WMIqx n`_WH6Ӊ!pG=V?6STER-{".U:Chq%1׆m eբERcŌ)|80M&7Ÿ0kIN%L@$" {NP4珞rQXԥy-#x~XzH:+w$*hxk 8ϊ?A`8g,_~QDl!x(FFhM>W(@ΔǪ< 'pq-3a~"+{"QܟAItk-œ,mp=jQ\W&PV iW?N .BeA H=ɛnjL@ƞɪ3_ zՍzwIyHQpu\Ԙno;_iG+hW>{ PN;]XMҴJ(hr45֏BFfLA"a{]~m/s ֛buο"/hchb~jȝ^\sį1֑9jC.~C]hc:2#P(UyEÚo:cQlm wy Hkd^kq]6Î*HW(AbeJYwW``z;pE?BwfuKb9bDc.ahAxVغ~<Ȁ8z$}n =h"!p[zvBK_,_kG"x ʘyCG`D2_b˸@v˴@XUTOB!b.SȘ^]}OTC!HG;'gTW \S8YǸV4(+* pI%4B%wu(ɪ]G^~Nj -(QE/Rjp{Sؿv6-yT@7_48@4fa],$Qڝx}S 6@U/sV;L:孤XV"3 %.Cx/Jdmrp~.trNUM.mUŰ+ƳRf^n*,YmcIgnQtm?cm x.( >aznۚ'c=i麏.Ii9lvog/a`p,>kU>S 5G [S5ug7}̓hfCt]{! 5P/iGpx/܆_7f;7ϪcW f<Z)p5>-A{Dz2)|M=)zLbȾ)h*cB.F\|A[yN,`qteD{/UayCe7G^hx'xu\z1dLzKl .,'+跰^upmy2:oĥkc)!! Jf򈱁Yv-Ie&snȕ9QDgyN1&B~M(ƌ*mK~a? Iqz  lejE.z(mhi!9ۚvκ#dΖ]qD)^&f¤mfH=f]l{[N͉P_2D<#z Z[Tohr_hV`/4ޛOs\rvIePm$W if ɩ#82;C/d#v1&0M&)R9j[\B#yT I02P*m-|Ve,xW/itćXsv]A[檽?2I)MUX A^w Xbki>#hV`)P> :If$2G+(f$=c^y9-f*/6h |Z/]xS4\y ߢ߂mQBofe#s& fqfǼZt郖 ;n)io^&秓?1}53&-SmGVGvwoSȫ?eZ.65?g~Yms`e,Ew0CUSEn/^qQjRCU~j6DښZh؃k7X'h${/R BafÙ [flH;X5 ؐ'Dz3a0d4_FJVoP8G$;mRБդ\&qqo!uə .k/I#:*_?a}"Xg ;cܤy6@qC!*",9OfGA7S-VAi]vgBX!¬H|^&p6"CꇝCK"{<L!g݃A Q;TT5~jd <@SS~S?qQ>ҳ3Dkns[TlE.ԺZ3$xeU<7[+3TJx)n9Pz:5+j(=MpJSI 5K- :4eH-[`'/rQpH&cPTK&"/? mp$dpL>q8?n%rU/Qs"]NrMKؚEa9̚CRE?+%sWĜ|ζ@+ GaJ($Mېa4niFN BZqGc[g$}{q1\qTQ$tqm;s_4Vkm]=rSZY.=y&4ts4e*5MJ'8;%րTa GAG`U<;*¸kA~ :?iLR lE"]ogdPoɷX]S;wJMLpoKULnNAmt2ϝ %!DzG&C'79d(4r_>,%u`!U$(ﯹ$aց,AXB~k ,m Dd)WkY93WuL%ݯfb PnGWYE޺-k#ҾAle3l%n:Y\^%e0Ea_ҨSʿć`M OB\e}_S~*wd0 !NP&RTl((yOkḃoac¾fgt- ٙ(da5X(p>yJ㯘wӓ'}܀RU SZK.xi~c(Oώk˭F?TPV L<òaD͹(9ʟ39G(Y>M.p.Ĩh8l%d0!*6͝w٦^Z0äm#ySJ~smA!ʗg|2ϱ5 ]}A[ 4!dC"/H] ?|y)ZtŬ8gK_iQ̽ 8O(O>=7XO pԤ^䍈{j2O+}4>6f3z.kK4jg;IQua1ӇXp ;NbZD ]S3\M`ZM[g>m pw5ܴ.=\6oCg(eU_GH_gf$ȇ1  2בg8#tF&:ɑci Udޫ̰5;$ҥxvŰݵ̩êzaϋߺpp~F:$9ƪ,>Ww#JT TЙ&cRq[1 &Na%$|)Z ͗Tw~︆=#֛G.m.nBWz+7AC/w10Bܙ1j/0WBp֓OH>Ew VOjhfʁg_S+Qבk" ;d3*qo1E0%MK6f>U՞'_C=('">AuZ"G C9w \$o9?7Os zN&*{_TyU2< ի ]!Q,K\U;&aHy'Iѡi3^|D%t X޳_{ײ!ìY%j-^=Las=CY'!۩JZ-L-nuEv;q` S=)l}3kcphF=Oy.P$Q79DȗRT\Z}FjT_854y+MC e޶l-`"X=$5,ao'n^H#nGJ4+dZ+t# ls5236;v7A02V;Pi2/2f;8m:UMqm*N9v-~䢌 W-,4s-46^8ts k:'AqIܹoyM1u+u{kAop:8?ʭIJQFE''y' 1-eeB41+mG.%L|bv$˭m*N(cn2>b@mpr]6 >F +'v`8ZLɜB&w&pngD݅5- OC+p]{4j%]vc7S5=7ԅg)Iv@TJ kfOF9mq rV#ky3m{c\@$3(űAuYBYiws } ~~ eTs o&˒hu{..Bx͢y7f`c@?fTE/"r kRF TAKThaM'xNC0P?+iPL/+֗dke1ᑸ783gXx{P.z,2%K+cGXrakG5ܔ\poOg⓯3nqn*'W*RPKSE#l"Q#|(,Z,BwR+ `-uu-}fCӒqp۴6cj)@+o)WT@fѼIP viBd8eJ؁Pjn\fbXs}%s+xTcJ\=z(ŐDh/=E"0ZWiZج+a :QC^ѱ'x AB#nHMZuT&0]{0}XV"UgQuNc61EY(ᩍ'?X)óec( tFM?nl7K{r;kKT#׶m{soUX=z1RQ=Ӵ\P lRuq.u*_uFshk+7]Q}f?0tfLcpHZζȿvLH1N<_BzW{ NEY@=V?{L GB.dy7l2ZbJT~%!"We=vC28!K/ᆒ8ttF͙W}wSaKЉʊY $o?ˢk̸*1kEV fY1cr?< ke.N=WxQ!m^<:ĞsA4e_S!9Pk$J它]zC9PXqoM Xn+ra*h X,ԍ_WP.zz>uMyc*s'_f4So-`wcsUv\ >@|.8CHG:gcc(tj;bؙ"sPk`i)&p?<lᬛ[s -KSoaphNfYx2]ۋJ 6HYsyQOڐwG8pWe ,Vq@w6fuW358 9xd305TÆ$CY24^Fʠ[)ւkfyRes>HC3bwnmZtPXhL^c"+Bs&xJK87gD$[1)D,Zqhjdqb~Lfv0 =F+-Gy s?#b*mߙ=#BٞoYo e/ rņ& TwI7P3>UtQ7ljp  7;5dk&9eCHڴ W˳1:ѝFJMVm$I.V!u쒞_#jQDkߏr2!G':Ʈii "pօr :G=P,Jg/ك!Oڴ/ RȂ`$M 9Z3ƎV B9[LWa[:q<2UcTF!'N)o.DR+zG.h<Ĝ7'Y赧ǜD팾O潊Sf4dD7 lɶIAԞH秏y5q.ANnE|Ri/5$a 8$U-I]4nA◝U!8'306{U5~ar)[Cd+u)+z&DB-O8\.m5w#Ԯ? g@shP jk,\kUP/~5"7<,.,yi[+>"A2;˷^PrOg~'94t"x"H#ҍDN!G ɗopd;~~(pl |:RɎ6|XR [;AZ@[*9Y{KSc+rgyOdi<{q6%l { ;sN(Fypb3: Lc?y=ݦx?`wBO}@Gh*ZXNުqvO9 ŢYZ klG*[ߡLϺ]ۏBN&M˚Q{c2.\ :} ;0t-"JG~<[! ~#_BW8[&OX$pjn' Fx-Bx3V"2kx.|+T=RlrM@/Z RV/oV.k,}Gq^pVsѭ '\I$(Ecmo>?Ք ֥8mkzjBQr$yu!i-kW>Ud:cHvQR*[L_Og%*CQID s BJk=!j<@+_%_j]4Vv%? ܶD6M`{ tcL8K0/)Vf}Gz<=q3/kO"8'uy\jL*}Etb@HWv]> ϭ7SһPʣ1މoWXTsKܰŒ @aR#+lu vp^W ($Sj DE L>UG΃'.ƥ'|V` kkv`O# _XR!Ʒ^ct1s! dS9$=p)6;MoI_aej_ ee=˃.N*>|@i"q&3\ƀ=h-RN5_9#8j GSv W1MIe_dMkvBI+!0)D)X$}_zXLOx=^%m2YfvvcoYkk鎟D to^/Ry֜yd't7 Y #7C\s /+u1En&qkn2=pϻ8|*͓=׆Duy4 $ҠBŽtq\ֺZs[)u.d~*܊Vu~ ɞzBlit9S<k QTS4>.eżKɚۙwu,[H:b$Xځ ^̙"sN2C+0RXPV䊜wk  R.?oټ7n\o/@lFR90=+7uQ?q\]k x|#: T5 1`99GgŴNX\YR΃(oju7DS*Dӏ2fdL7>4@!D^yl{Th0Y"Yqap򣠥fM!Վ!$۳VLF{!Ogc>LhElw!fE=(Մ=~xS $K:q/0,a)88G+ݶE_CEQ`d%]UEǰo{P{U&W& \{Ѱm 6J6FLOOj+c )C-svH{ oDͦ [P2R1sR@&F*`7 3ŮG?qFD e\5^mm+66\#xM;'9;.FtX&X;==?R]@&"0KtgelLHg倉w2BQvEif8lƠRȲ8ZX1|sdɸxA0̬X?Xeuk/G ;RW/Z/lsPMluW0Uh8F|5KyJ!xgan7ierLrAOdF~hrHfBs-)X+N*&}[fHi%Ae40wSF;י M |[1^fߓz\73w )ǩ12;[fhY"b݈P~ 3unG I&?}<_A\}?1)5\eHOHAȀET4`U-(ϫqӌ$|Fpi~S$Y&<?>r5xy9I/eg헰N7w8L0ca(FfMvq etJ-a v9d/+ -r>&, P|(qƫc-k'[]\* td&/8KaށJAٜ%LBspTAخwWV#gbSOSHߥSD`&0L&݈w9`l30]d t WTx7Ulܐ5LBT8]>Eb _~g`;~LBC /T@,?Iqx?5KyS8pT3NވJ7`HADj, x࿽  /,!@ p}C5PK[آ.M^_TC蹶\h}j3DWʾD X&6tܭB"@JtbL6aj~(-IQYξfGL1 $+MWvO;u>Mh<_Iz|CHW_jASƢ<&dfe *i; KQW cahJl FZͅ1k4>ESrT,)ܪ Lzpz1%ߊJх9HB)+tEرKw m cv> NS\a1rγN|Բ`|"[G!6)+*7cvԌV}iCތb--q iHɹrzv;Q5Xx\7NqBK@^sɖ1˿_'x6th0႞FҒj^> LG"9Dtjgn&,SN-&j9ER,*p:>=>Br08i_w_iwlLV/SA_WƯ%5M.ޘqGuo%8[L(sS%d]MIߋ‰egS2҄XÉBPfc/(&ɕ}[7Kg@ޱfhfk:(3[sl:}6-9 B y m4c+F;oRϙ+`XoNla }sIGB }Lmg#;,ּZr}鐨U(K*=i8TIóU1`-$Aϲ4:mT-hkܷDFJz7=V&tmEٟ`%8b~Dq\`џ#b]MB0`A!M@:jӗt>3o܇} {-}oC$dqV&(>j򻂊5NvTD;ڈ H𸒒*V#X6ZE׽qh3%:Ċ@zk]Dd҅8{l6p=_F0zLa|$ aJ7G4_3D!rsjٻ:O j#pdb?# ,ߔ`p}P!۞7y BgwB1Bo A+[`qmw%bZq=u:54 WN}W KpxRt"90WRTuVVQaIf/(=ʠ?_5,9+UϾ;L3i1Qf|@ׄ') kyE9:^).\yS6~TiXL) XƐ oucڬlۊa#!|RZbA7OZYk/9-d$(-xHHh=ziLj@G1rI>)m4¸9E*ύigPfa?{.;;Ri*=_N9|QeEʡ%65@0Z7bX]]*d# v[]!_9{ Bc,=za\OL S8_X[ |JqҢ #\h1Nr|F#W̽;{q[시W-3o 518oHGQv؋xI=UܼhX'4:$X_.چl^V%p/* &.p}襗J:e@cXt)LTkjX+l1?(=߶cckX>"V{ s|i["]LSRT}xۢ 2k# lKAKP2H.y›;6TUd`@o6MnׯFy l9qm^m<[0moCXXw\4OZӡ.\"V(B =9'B]ѷ$jKyAJƾ^pD. y׼?r!ra["5ftdn`w$<ڄ30S%73wD pSr*Ÿ,>JzD^b\g $J~hZ3:r()J{K)U:B*[ّg'GKd6OhgMOQںJjHa d%RESyibK*F}'Lj׶<3EI@}MU\!^󾣹Mi^.*g (mSnE^(6Іʬ]Ӏ l j)tLVҕ+ԯSܦ2 kۢ>;>qQS ̽j^1vzּ|  v}9+qi7g^h$6M="QBrc(RMbG:(eMYΠV>.K: ,Eg霿S(\|40ó!uX1e @s3Qu%ɹdmV0> ')3&Q3H쑡NKYc9ne߸y?Cmu1R͢K7VlbԜ31ZQS9cFڥC)D[/ȲC#A|PPJßtXp#8;Q'k2;X/8W-]4qgs;ߺGb-3e;G I45R e__Xd5xS Q-<kC䯭dr:F9ǘoV)YJX*dq}M V5s^uFpI3< t>`3i!+v<:J;A_N6_NJk-,+P"$W@Nu]T9 ).v*)=\S3X `Np+6?Nm`">r;#?>hZ\1^Wi8?SKhHM/S@O t1o orZ;3+X W%^~j2h)F_ qJO>,0 MnO(>t/朻.X^uT%X|; YbZtNPYB{Kuidam*m_Ƅ"Mj׊u,.'h@a l8uLG:9ZIЈH~._= [=(G[KLGsR?R>;!/bL ģ *N7Y{"o_F mGoWR#mޣeVApXMq?Խhu;{US+0twtvA_e4=w_,c_y_/L~I/,?W#w>1{D.dlEIzDWIQw5R5>kf1kZsNWsi(G8K*@ ] J1-7VtwhtG:Mke-WOKǶHf:&Iߧ1_"AUJH;XB/; yyk5^~ Z冀j{hj'.Cs^3^0k+Xmӯ;jfLzkffe'TI皮J^­X!h}tN`PSH\$/_9x'zrLt Ru,O6ni5χ5kFA5%-l䱺2afOן2_Oy4Oxc^Mt'HfP~ƭ7h]4 O%lDc \A4R{8:ȌG1a+^ɧ":ЂE^&*(:h*TV5lj>Eo) _jj^< O/ 0;y懸vJo1!:S`yP\CQq!p{mO+T\Y={Snh #+"+AMJ+9QV`}EMkQ{H W:-ZbPƙtxBkjy;EY&%ܛ{{NP``I'&`NiW_@ǥ Z֞1âρw5vԩ/їwDaHN105T\PP̌W@RPIM`;#.N-%tݦ/rfE'"&XlX:W dheмㅩ%^ \q\cdV>m?{[!)2pspۮӈxFNzDl-iƤBndi`玡p.kv"bs!f-ke~9AZZ y#uyǾ#i:lVXB[ &W | \=tVd)DH}zM.=M,fk-SnC_QRRɦs^.(Xihe р]ex)M LZ7~{Ҹ&ڨvY,͉ϸتZؚ1Ϝ!5/c{$ E*]Łv*v@6 PkP䀑M"TaO=2|~rx]G_YqZ(&|ZAy*(|j9"㓐Y`9S.\66gIKfoT `jaoiI'#Dj.㛣kqSf;7HdYɚ7BWߠ&"Hٰ> z]s?A[Aͧ[7P  Mb#9 9|NqҀfp>Br5D !o .g5:N?QO|/OIς~^ xm@9}v 9+=qR1li?eE[vOS'*rPۧ喝saҵ&qW%0^7b!ws b96>5 NqZz)|'\g~HsW8OGh ~VESٛq$ ȕR$:0uy;Q}`K7-,sl"I(W+`- ś= ,kc..]AtΟN\)DG1f2llZ B^2([y=.?wєߙ+9d}:&FÎ>W |# Iǖ*Լ+g0V]hxN-1>`#KkM͍Pߩ5g2-&Q_|J.g) S ?`fP:w!{Tu;oSLB(yv*wx@aݷL7XS5-$v%]E2NOźN2c_CG#Jb`;6`ջ&Ғ8-;^̞}g[Ԩ-Q*̇;hobtܙz\]o\];-C(zNrO /ЭKpX>Q}5&n)%mcaic֥x!ӑ (E/ ؀D:M-0LSuFᤚ{ ϟ Ȋ%&NQLy.Rh7GcO*&e[Iiи64%x.98a>>lMZc#Dp^":_*q2rpoE#_ vH̹uQ֦B.IʕI+ɡ#m&d),ϝF=V5ؔ?_(ai1YXbq]TGm߂vMӗ0Hz(ʹ5 +|.z 48z,:6įsSs%ƿjh{5 ==Dn&YWD :>CnMRNtg8?F9R2v,f i@%j@K~*>} U>ӄJs nƛCY^[4YPۛ7mR }VSr -(PBF %m(]KV0G6^MgayFc )+&T QOUk1LYç+<7b']R\$ `,CFZZ kf|IBsӬC/k ajf5,g͈`"1MJR5y[Y5Is.e!8!\tժcz!ty D 7lMObm JzO:d~%zKjBh\҉Uv8Ho L;J)!O%Ħfaahmpd^Ig(Il4tT%> `Œ3KMߝ5ᒄRBk^#`•^HLTK_4QŰY]U+74(8LH _~櫰p|9ǿ9$bŴM>/°:iYB0,Iۉj3p!O&_}Àq$v`onC9JHɿٰʠ,Dn B[e 3 iǽC)RAv6$[EZ3R L1dAN3e\~*E\-$tݐ)G;>ETI^(,؇_ʦqVhsr*~2(6Hz ! ." ϥr?Fs{OPa.m5>ϡ Mg #~Ìk'1 ߑgA 7=vѬo86a+e\mU[4–b#ȱ>ԀOy"t0v8b/վ6N \! ċc Q*@Y;!]~Ir䮖 &aI." gm aD~i^`\T=whw|ƶU 0kr֨qٶ }5zR+&Nh7( /fS/ڑcS/ Zw6zN%P|&59"d,m2ͫzd13x;сVPo+ 7&P{8.qlׅBBnɽCh4![ }i`B**LB*=I88 7m.R{Z(Cjs~e=l0, ҉G3 )gH}1ßu$54E~M֥MV7exhp@^o[n.mBvڋmhN>'m9Q~wSL?<8x]AkWPoI*s4JxxEWc]xA_SM!"$gz򕅏Rv%  b7$yp̉~]*3]?X4 ;(s-B.ka͋l9eI.rGY+T/퐘 ` %HCbӾLGZ^RY[bU6yЅ#J0$jUO?y+3ygp ]/wB'|\SD@dF=d)yP` ( >`@cLYD<~q/󞬧U1/l(s=JY\$c٥ ='? 7ΑF"27eVKQ6 _g mRR<<݁gI7o Nࡔ .Ii3Bt0t^q8Rc]n"@ dCY?Nm=ݡ(ahXUYۯr0s ݴ;y z88Mx(c,fDvD|zQp!9Eϙ5U&sviyUe!!8v :|8>>tBnZԋM,EGj˃ BKc.njň\^N13d_wjʍS[2!*ju/rWP14F55alJ>l74,Cb8Im 6t1QdIXJѷ^HF0nҕFd n@~XSA__f q3eh)y-u`F_[CoqhتT.Qe-A2Bk- m>4I^n?E];dn{G-ˆ"%EY.=O2},]`Wv t]uRPbS§}P\xE{wsˬ;Pj\PF WUzYҡXI1*uR]CBVͤR(>oB5*\l6x"n\omw*e!q; iH^*3Sbd8F @Iuz ;UquCcGkkی$e)j ][M ^(U'qz)hPg]7=:Ӛ\$$KɎh0V,7gd聽 rA\׹'τrT$ˣ@M8WJIzxA`cHÃ93 slo-LQ%/y^QqGg19o@fM'0{<~r"lStپn6[($XN&MihDPf5D_|7#,1x.ppGy$KYr7z|R+Gyɪ5Vݑhj.9oQ[Vxa &})_*D 6euL>@<6 'G(jMj[~V6,!E-5 3R^?/$l)S / Y&g=jk kڬf+Sv̼s|˥"]tqJWDf'Ze~qjkSf3̾.`^̎9xI=3[h ]{D52¹m) e2Ȃ@qvkKӢ5o.sl6!^'E7 fdV~ lGJ~ʎBMf8&ZP^0l@${FOD)EͱLs>::} F-4kU3wS,J0f; 01mu}ܔw^9[e\p͕ڠ895)j|2>'BP;0 ꔅr֤ϤOR.uy?G#ltix~5sZ~!% ѝXϲP֒70u{ҵ%YQ骃As}y "ҰLء.=iEi&HGw ",ecG522U}4V2bV (_ a s!ޮdzÌYXU~sƱ3j>sل ɶHtWV%Qħ`5  qĢ}EېU lr:&*pG}1xyޡLJZ@,g̈ y-l}}h>\_͚RjQոKQU5O;of2n\Uuh [up}Vp}_γr@y8D9( zH+} M"L~AMepH,K`^n% c m@Ty820?/G1lhtsӔԾ﵏C%Mw0^ؘp3l_?sfSe*WO^eKڂ3Lב?h @c~ɈEm[ *bs)tڼϲخ{HI/9kV4X.#Ѐe&G{)q_,C3XFf\%RQ8x>^pavo`|K# [BzIZ=4eDgsK%#l(mMۍ>ZN<+}vb3`؄쀤4!,I9{>ߋ;T] B䶷V+BeBP:rEwu}J݄P7Zm}U(]klc5MD< &:SI:R{|2D[D1U兡;f44{U8?]'od [n2Y}7!nB6>we6`{K GFr `A/NΪǓqVӜyC-Z¼fV@ t8;\& U4)6у/Ο BdSWR~nS6l!gdc P,Xi}CvN}آ_d9xյ160)$ <ÜuU~$ŘŔ^`:TJff`ڃj] JˈqVY%=-}#u1+I;ˏ$?R6s+T/LQENtU϶4kNИ xT'6U䙢0..g .-ڈ]3K3+ŧH xzO;fFm-f}O3j#V}vgd4XG8?Pn;YaF֜U*xKřζggx19eCaZ*t}ZNpa-ِ a >w@ J-Ql6Ctp3 M H+vd+> s典8kn"+ euS|Y.uP' ^'`yff$ $PzKpJ6a)j6Wåk.VԥTt^.jh-G"sl!deVԫ+_^v TTE #aَ@#٭6nx 34ǨP9\ÚSL'Q@Lf׺QaZP]C>ehj1с2Ve# h:*o)k -1QUCcbp2~Fȱr?N?C.bZN8IkeyUx1}CyX{H; <~Ot/0A9?N!X٫V) "[|>2@E7oS7oŲhY%{4̻"jYA%C.g=[#{]E`|VbZuU1!_f$`˒ (M=q0o~tArdUJJ;CZ4`;}Ei}!xD0پדn"ԝGU93E슰NDJ vWb3H}6K0as4ǵx+gNmB9W ~_2?d >'LbyΪR̖g%t]ϱ&P;^Cp"C#_>!ns-2jh.@ܤϒ64Qk 8 pοFWԏ}[G@Zq,{rHhMk[:{c"Dᆷfۘrb~oU\Gj4{wmҐh3Mrcy^ߜa(/dȹu۹lƥX>; zixt`vlFPмf4$pԛӃOKtA{X/qd/ ULG_6l{sԍ{VK@%NX0ӛu]BxAl_Mi^;'x&=8dB7=fGrWqWOB$f Ps5E4k`bt w-JRf peE:jUVQJ0p<5sո+2ZAw[l $,"w!wS*MubnjORu7KK>v؄u#l{T^!9`c熧amW+.>3% لoщd,ZYŁ#\›txr\#n;-C-H͸RBBr=9XIT'h:ÑQek?>O?;}+}+ڦ N=@y {##Qϡ{}Clԟ.YI lyӪ/ ?ų%{K,Qn64:mnz=PUS88ɣ(@  ok5!/L`87K1 1MwO(& pg,S5-(mo~™0#qu з sY7xĊ.Դ;|vu0 q/jN^*GQ Tsq X6zot@c|v-foi4%DGM>IJNgajo\oA1 FSHn<|!FW7A8g0l*[zu返z asbqEZG P ύ(ƞꊥx[@3j)'2v0'BАYVMM\PR㠘x=B7v,tWEK默}L4XId En?lс򞏂~SLMGǠb6+;jW蓼fdhm ”*jM'̱L=c&UKÜS[$( j&-E3E!IC 4 >g)wNWo0 Y'3䍏6ht^n<.QnICreGq59K撫zpOo"=$2h¶Hœ(݉[,}4@|!Wm@.ii|`9 $ [C{GWr SM]p%hOϕ +Ed7MLѭ5uw|a d8jkuI(۔jI}:b8K$FSD( i1Ѫ~׿ρ-V !ﴛ+]<]ct^n-Ϗtyyɓu!WJΪD8X;+{+/{21*ªh[U[85hщ#}=]|4M){ʼD\(籙'P܁i8(M٠Qٜ4o ]H|x.%Ub |)&AK'ڽoEf.2ZHigme|[aX©>̳" PRy/etlu%ebc~=@;IG,"zz ?OH9\:]u;0cn^dҶ~9Z3]YD/gTDџ_cǀ2-*v :t 3 u%*u_Yfq(0;l}BnJիX b:d'MJ/x4 *F-鶂Q#T]>8d70L0e'$)c2~!jBC ^(s̙aD4N(L#n'UP N?S9؎hAa9D6Ioc3=ThҔ/+NoH@g6u2v/9zz. 7f#H+&‡uZZG#KFFlN4怹r!!8Q%=Z}ڛ=Vv$)KEݢyrp=tWm]79f'Gs~:Ro@<++irõr<%X8.ƓiFᲃEQ𽿱=4.cuⱹb,N;٢xt_lu"DMԧW!GH#f6}ly& $P5{Wf K3]Nq(|D(s'٨[m! 꼣iM_4E@-h:=o"ۇB%,ˣ(rNjIwlz\8&[zx1A6!]r|0gTd[ˏ%Kn؟7@Y?/6pgk f@iT>`ZA?͵Ϯavܰbi4w|0)$_("RR =6P)?`Y& 39#%W"S:vۖ:e4u+c9EB}f#% 5CbOt.R{ 0:??fS m"γG|fie%[gnaZEUV-?g}B$ *װw+|@D_̢LAÿ! Ѕbj>ٯ\Q-|O:!γeJox|ao,jߚC8S"zl{$o8$Q C5Lț,k~Lيۤ%qysGh\:,X!9 Lѣ;)ˏMA+΋}'Ɠ_ 9v^9u+)ȸo{!yo^= ɶKrYZW=-٠JUjW'-IѦnœ^kr\k>Zb,Y5~lVkQ}9tNW\[O--0!CswbŒzH_vu}^Њ ]%h0mdL\tIk=HV썆pCגw4o)ccO {ݥ m\SJbcu̯*qB7Ѷ!%^?pg=Ы頪GYU ?KbwQA'Y+Vqܧ&g/(W¹тP:,HI86(|VrD!-/}l ߵN^!Jۧ,jz Ch>3e@ܟg_]A~W)$D(Hm5*A\ι# Gc5q?=ӨEI監=ϏP>h>CӿpX덻ҳJޕOAj Mj1sa|Q DwMܞCm'__(dF YI19ثg[}[05j旉/ 6.K¾UwY+N}F˂6 w->_S%bY"%`Sqz?}jP aZ(!}+wK޺,8Ћ uޮcpkC)‰]ME,h69BKӢ1CJā6R6rLgD!&jYHxᚙ)sGv_<dY69"n\#k_ LGuC0D8t~Ɔg5v'~kg~_q{AJ7mDK3&OVĈtpmw6lX$ qh nąoG jE"hT~] 7^wbDU&lvT3S2Kո/|mzAB,s ?G-C*d"DjxF=v$/P2l=J~5!aS#Pє t7{/T* ر/#-WhÙ5)iΔ+$ /q؆9r,f/=l~T㼴RhkV4Ʊ^2A-EY'Tp9dJI㟊p阵`e+]f\}xIÊ&X6^A>٢]&!S{i%! wp)X a4^Eqd)]leg)4:WSs9rL}h)6K.X0Lj|9{#0e2<A vX;$,ŝwa?:g"FltZ8WT^$7!OZkZX-r dst31LMyrgj3YF i0wRnXւҊsyf0Iޒ?d&'rٽ |o{T?qz].k~lyFr2cHK#y;^1Q)vɋzώ;D_ 펙'hT 5/TB19S渆yߏ?vl*G=ԓdeҏE]V@U>wk';N+ec &vڢE=r_Ͼ '= #п@Ys,K1 p0 zhEX≨Lֹ{7J?좄֬xiY}0 h \EXZM*0w`r^*K]:qr inmtl˺5? sG}m °(Ls,ۖ=Й.qSN.ϧJc=%}Ėkt#&`[qQ.GZ71>V>lE=E +Lc;n0M5oTMb/wׄFn}^\o=ƶYAtay/IqIEeUj@`?ƾƟkeu[h%_#M=s92g`2)W7TJ&FFF}uT Ħ> ;W#V Kql0rܩO ' SfE39S*k1°uvV{.UpGV Ϧ|7*޺sE" ΎUVLZ_M)ٳPOYMڈu!ph! ֗Q5C. L%Q“EˣYh>1`%H?3_@?*JF+vyMb U>P5[~&惁 NFpRΎ +}Q(7X7FM@QC8; M\{B-!Bowv7?vq=pmKU8;2ۘF-S:h6CMbG(|#gjPxײ;гQϩ(YK:\ p@+*?}(-i@`ã}^Ԗ>,243WY_L .L:ИHZgjF®Z#`n:D<% Q1Lpp`7Ҳ|+6vi]f|1tK*IoX g!KT,>PeE'AQ0өhx @ԋn-3ϡ'C}ał:qږ.@%h%.a*D>OqU@7.pol;N2d*.n'%EȑbM#b/ 3R~^v<7&|)}^ |8d~ MS3]L'3& 5DJq*h$j;yN=DrTbWFW]̧zdlѳh|ۖ_٪qśsS-@;qFC+ &[ȤLa4׌y׿BttpȇɠN GLihP_JphSWrEqB`U~ 5VoTm^J0bLA8j٧57:۩{|b½+&\c7ꪬ&ǩnC:` 7l'n)Ո(3YU1E"BfNRA8_~A$d+lZʣp?{]ͨ4kpIP}\!h f0y<1Ӣ#7'1zh>?3| =xԱ{ԡ8WEzqFTxEyBL]]KmgW-]VHچ "*9O;enI\q'q8]3l/qj4DJ٬&6+@i{ Ly*ʫqYQ.vpE4};oxD9!U0-Vi>J.t8ґ$u)TTiZ@qT.{fhg$"|Ba "1M"FP&6p XZ=K&|Gpޱ*6hz ~6̀t.;/N Y,vw 3?Vפe;hVSjf ߿s36@$Q<396sHFU%1M[+ 1ŭӏp)4raI7 .!b[H0 d N.re\=}m,Hj&n?"+(Aʗs]1xȑ廓I1L&Ҕ'" F*-$7-L&Nzhf_>-f]XR[H>'4;>ڠۖ\]|.'82ǧ"kXAj (4YuWEM1xb w ].ɟeJsR;cw?=Ewc)l0)EO3_,6أ<>xXz|sa5 :«tll\/ g?yjKw'4vi%H o"?MfvZUW$X~$NZL/y4/Ds|G J@9&f=<]h*.;];bHq Պ!h'64@H2\nŕ3]ecY+4iŭfr67RjjQ|8;/O +,[3A<[rT=S´X1^OtHq%D)<`g չH|*n65ӀR@;* "ORܦ͔x_ Jٹ1mY'q[h*/. Nn=+Θj*U }y4QϞ1 eJf2Q[d#o45՟[GZ o,lxts6ZHBfL9ĒP",BS8d t86fUp0W_R'?m$I ]wqhB*jѯ1eh RACn,;8ؕFǮ5SsYeR "UO23s1" FzJ&fB@ڪvL;lJ T@vomϢr<{w<@c h7 D81]m5ґ2'0a鳳F ];iKjH|Ti Z&a7$"MXQ'hC,KOi-$0Qu3߇t& QڍQ3ƮY@:5JjH-?]dJJI- al9@eb87{r$I4ƭf{#͹Ȟ/u?p].:DeCC"מ*[/$=w28Y/7aZ;WZLurCqeٌ(8I*GY:mUZV|]Rp ݝAFF  Z uiLF_a̵~.Z)-u#\eаbnkS !AWWRV1ym 3m|DXuV10,?_0_ZN1! ,b]v*S!/3O1%QAӥ,Y*n!ߎ :,p^*ܨ9^#on "6lDź.XH[x%ztcu^>'VtA\0ٚTh0sK3y9Tes]PClĒUg?@HFߋOʬvlHJ؊]&M ǬI)mjU3國YI"t%+sdZLfl}j^64]d'7~8W~Q,J}#aE*{#rq&۳0[1zo+ļ/ేǗʝkp|.bXnWKV3,5b)UJ ҴU#XL7)ge`^QA{zg|cn5Vx 25Ûrpa‹;oi XGu&0Ȟ .g[ 4Up&YI u'B$ge&O[Nb 4({Y2PTڑB0vk|qS[d @p==L2!VQQnR)U< b:.ܯW?-"fkeIp׋jbBc#OĴYuk^m P(L14t4ʯj4bs7g?ϮVJϲ͵lJiy2;qYl|".qݡ@Ddncxӡ^6,|~p ECT i ;IOpQ{ k*"jmtwau@YbZA0򅼊ju")`&/RLbSqb;tUSI3OUHFi3{ /Ñbġ9>% !,ir5CLgTA|n*~!y!flFet9 Tv^;v3ec$L8U|>uQ9RD%nƁ̏ =8{SZgzESZD&۳l68|iWZCu^>[Z6*D^^zx_ꥒ"|Z~Qk :m~WG&dXHhVbPN5]|<7@6ՖtqEȘ(x߄UXY m~Gu4=rNm~>4JCbՎ qY掉Ipڰ?j7SWn¥v@MIFq{9B6I=`/س"0#VM4 H"+ 1: C݉n)Tq(]F y~ 6U=]^)^oK<%E缜%_YgK,n;)>p__)W7Զ~iW,sZJ\dHi3`ʈ![ Hdω(z<!|UP ??.;ۇak.s~cO;ܩޖ;B} JHth jՉ)P^ _ 3wFGB q|fhRE墦Bz4iv_Rkl]#3ha\G._G5L?ibӻiEa-^}Ap۳..7W], ]A}13|:]lRy*w4ØR4p4K_Q]dW 6JD* @%ޞ+n`2K`%[6¾yȁ;6{ocEq(rq9!a33\;-dqYw޾2L\NxnA(!%iU5*ا1?sRv[U.+{LETgSpjN rɉ@e/t58\z:ndKJx.TȬ Ƒ4|qNu AbZL'QIjKsyaGsjZYݣ5'jdIlP<1Bھ2PtT!x FuJH/T'Sφt2-bOۣUq } g culWa`V_q!(v^r:46|pd :hדmʎ9Y!m)͇nЬtP)ܧYPӿM"cNRpv{3JM 3)^ŮȂWw5uC%AaݍQu<fd_:eR" i0Wd?!cwVrq!m۸id;k LtAi#$xW97 K.uyqǖ,"TOǼM_vzS0LJ|X]3%l`#dXx4ivsP\.ëwO`r؆VDcT)&>Ow[T |xڥiZS#!ͤ9N*fI$LȢ/9j[i U+)P sZP&S&>0c=YgFAc* u (7Ġ@˵v{bMŶ(Jl~CS]Q0c$,6?瑢:ݺHwWCe,qd6םHfs# rvC"uމ&-+@6FN 2u3,5MD&$azt6|YMhnf?Uq8.`x18rS ZqOI6a3di[Ϻ=ͨn*{q^خ<_xJ;ؑ;EOC@W'Õhu> D-Ū0!${rj6o^>uS4?Fe\-yUn{j2H*$ׯ9qffN-fM`xN{|aD<҇+ bHh4@#XIvkUǚ~j)ijc7֋ 2\ < g0θrrj^Y l/ҌT_K91cP"f$q +R7 O ̎`A@@*^-qzd#Gem3aU_i(kK<7,n0!]si$oxy(2tyNbPwc%۬v X% $ Wk|vc@D(%ioli֗C}0 ~![7lFP :.f-r&std?y.^XE ?vTqa5L/WUt}P=u_#I̤n"x!:Aʷ?~) QVN݁RÔq>{;"}c&t Љa0ɚS",K9|L W^`O1QZ#9>dkne119tK Lw$ɨg-Oi?N|[w7 :1P zqXcx~q0*'nsjd3*.xB{MN{D{see_dp1u{f ]Wf6ei>ٙN2;%`vZV<ۀj`^L+k l!f| ,u騉gEWh n?2#E {g)s@iR6}z}HнD'lY"3Ɔc!ZQ6~%}r $ x Ļ=c@ Y@] &}gxY=Y$wm1^>LE$EW)f6\[o}3,ҷq5;#U\"8:a$s!m' ٚj^_7x$RBhSd]yF<1,w fyUszӟadٙ (9ArV q} dNNR/!LDپG=7z/:xdVQĞlhiγ)#g`H;+kFw]%ʁ )4."Ddf/okahZKZ!_W؝,,*7Gk`AH.ܗ&Vq*36-0/AsG,`Us&2qfaA,+z s2Y !Ɣ$$9x;v\j[ɰl20=GӁn[9,k._.'%Ww#؅-n˃͍,ᮏzV5X/3(F1==D@}^xB_ Nt=Nԓ>ue->?dH|HՔ$zsBVs1,ǻ/(z+WOvӻzC~0|Q"ͦL=y<H"'wHx&1Fe.[G@r3kGnf@J΀biQJq%Gz9bFN؅#rx\t}B }TwrSBԃSNwBzrNw;W[ " ^q`+r>KO(ɾ-T#.?->dRVyfwnslL`bK;U#Z1 37"I:,# yF.%hHa R EL RߞB_:)4zX~Z 5Q阂/٩#ObjvZI(@+a4z97]creZ0sl(p v(E/_>z2K˖L8poy.FauZ˹#m;Uшz Bu (]nWОZc楾]LuME&75\emX-q 8 Et` ƂYfL5xky 1pt7*I\lh͔X{(qo ZWAn WdZESOM31~$Uug[ۡD_PrEKm JFe!k,i˺oJf@Lj(5S=md-nXPpʔMu} cJ1ﰛ,̭V|szVbK(^zp_EUEPn:wM|]-.P{sS/gY\|~e1@fX?)>USۺwIc}-!RU-{\5sL;`s5'{b0y&:r[ވOZ~lׁ)P;Vd!X_^_, ݸ赈v=!RS;;R?a|FTωKxDDe;T>u %Ne]cnQ ԛ/t,K##RJTGgGQZkܙ#mQ׭d͹5Cq?*դ I%Nƚwp`$O2cC+6m0nw:&tBm%??sHKD 2$pk"KD;ӍRȵYs6oVxJI/;º#y@8u@< }'o `a ̎,56UO5)Lr% `Av=qzڌ/PN/l~ "PCxN&2Xe sbYU6 lGE4j-W6K…nf'vEtC0k ,RZv略[v0] 95)ȹnI+!xl$yr axZ\ܗK3}NC8PmKX:7s; 3'~W2թq+fZەɪƨ|\T#R_S2J S$R X =UrC[LȊbD6Foo\^WZ^vJ|c|A~xeOmkoScei(DZ輤`Jf_%΍&N~\.!Խ3RMxg&#gTt{vA./%ùti$cJ,4*!+mak>B:`)I2@LD)+Uv\q ]i{ٍQ}:nPIi2g.c ۊ5˖}ql|bcttJ)cd:4'1Eܐ=%siTs4ˢWGF02jqNqsۢ-a)^܂_ĴGCT5pS{5qڣtb@A/]65/_ n#J)󫣴//-Ï˂o<@\Pm*?i(\?:jźLfWG&~ ߃ ƒUmǨ鸹HN?;E4Ɣ6v[.֔ ň6X3{>kgk| 扶ƙdu*hz4rG:NN?}]YE>5oY@9CM9a#Ig*޵x15Ԝ{)0; B\9;G\Mʔug߮ Z](ҊI -ݵCC zr x86nwDRQ6]$S,\c;]1_.;ZS'*F)Dy# dyc Jn.i76F b dih|f[J>[B󷋇ҭRz/Je xN,2f,pRv>[ K Y0uf_Y&Q̬q8V= l;~~ƉؚR z X˵ZA01'a|y4|NX-J$ZNlQhA?-nK)֢:iz xCnbn;29ln-8Sy\5ALzN""[0L_"a}+h3887wy:^t>Ւ߅,Eag=QH4w0"=9BLU[3Z>0mh߶lM=P`dvt{!h[6@bҾZ.<ƽacIVTrQ{8Q +:;[ދBwVR2P.x z+䮇1ڥ"UB#mFzHx2@3IBY:wuR<JwtݖDmy1":_CXgjح":|D8}_G c,_YZL|ވY%=7rx:bj16H(tptHk>Rvqt/5Zt^Ёd1~)n,&a$p ֊R\&ĬytJ8/e쥂XX$ö l0~tI@,I56 ^$ p3l}ead!@ $jZ(@ ^nwO&KF̢%5b0ZIn'5jNrҟ R 6:XZ;M- MeVxߪF[u )ҁՃEhqPhpyD9!~$3;rX E㗨 T :ψҍcz$Am!F0)b),/`_apLH'%u iϢ"y[AՉ:F+cJ  gQE5n^Q."rR>C ׈]_e·(PfA-e-Aa@˽#ʑ&Ow ^݋li}6h&T4tU1lֿS{*n PbL.N`yqz#yJGGH|8v$ w ~1f'6̞}iv䯨'WƄ<нH=͟&g/D,lUrϣ-in8 |êu+{R}C~i)1J'éSwۚٗ '(%s\X UՖu׏w2aj^k>ox+W7vwZzәF:ֲ1=Im&m[b. +,m"= ":>r{MJs1d;J~5kZ>&?'-ua%.ae5ڳdOcz,zRp Bԟ=azDQux[]KܹwgZy@;80{ѶXJ-naQf|unVgzЕ鐦RKs, \0X*O6{-?n= >bϸ Ug១s0g$܀jqy]$\@Gߥt\C!a&X :֙y9ʅJrL5E+K봰]~i$řq׶d#N./͕Eqɩ漡I&v1o *;/qCom' v"YN8܎?^Qkx[_Ic;__1wAE)]BC7gac'ss= sa/`[apÝ^[b"+\0 )+LAJ#C_&cKUUGwf0fi<(hspӎ~ Е}Pvs=w V:|b/Oy8m"^#J blg&wRN Eużّpt kDVKW쭰8H q<ˁ/F" / %΁p"Q 5AeF@qu7z-KiQcG]j8p+oyc( 6k%G8@ /g3diO1\rVm9%YouqloNFdWBoɜi&C0 XJUPHK P0qweG(hUWT HnU]FF Q{K$a41:v)A$Zw /# {|%@H/\ˬ&*_~;7v .r VF>bq :(\9\ۺf-'m|ej>t`xoE@i+j#Ћ^_"Oѵ{AJs=9ěm@Z!UerkCjZa)3̡'UJ1ޏ@T,m{C𲂲|9O}FP66̷ -[Tb6goȂX=CPs81ڙ$ u"۝Yh!p?Ӏ h70ȃ8Qu˧>y%#5t/@G*IPt)V8ňvRCchFQ%-O?V- :yQ!m8)Q>`roiŵh6+|k# ݭ4UDFrvH%ɌO\RǍݥ> WXyz*YXo;8 t;nw´%O$5>< &Fj]6WsrB̪%-΀=&#񰦎Хm펬@c}6!.H#kxH[_{9\=ݒC-jZfIθ[/" "OPxԫR nI99MUtClM)l?Ok ji;Ȣlt,1Pa y}hF}/ !ĺ+Уe>'TS.-?[">La;Irm /PrSDk,g= |u*A)ɗ Tګ(C/Un>m4W Ɍ1#s*p@wɜ1l䅕~af0~ٺ K ~ո'!50mSP*h#'+VZ hƷO&e!ӳ?[>zE4/7qMhʣm4C'$ur, k.PϯlEUx2^t7=ތtmT+{X~7eM6 n;u0>N': CB[1T#^`'k.Oz{N fEZO }iGsmH=,۶uQAW.QnAC"אR{'F,r,@gVSJ[jwIMqBD@a]fLKIol< 'c/?oh7R- ¥HNdC6XEk87Oscm_3M<[%ʖi""Vf_7hW4 ی@ԙҽ*H+I~oxȥ\c'o)M #xJq S|/h/IĠטaK ơ~?uWS?d5vq 8Lo֦8C sY:6,!>=zLb٧be':F*HaҴCɉ7%K_~RxgKYpYi7EWu`}%P۽ 3-|.&Iiɀg ųAUЀ4,DHbﲜywiL5v/Oc?ر:'zil㴼ťW:u]޹KBlF|aƲ#zɑVU5n XCA/1{Qҍɸx^(4'|a3LS7=JKz>23daJe2xsɖL FFɑ`D`X|%p (:e<)>2f$*p8P@GM|FCk2W?mFYjz $*BjB^~$C:xG{F'>Hni+|7FHP=1,\i]bEb[\S@=alFG3uy<0&5 )^aJ#/їbRfliMـ~kY`ǖ+7=eMD 1Br&@ ܽN!-@FR _s 'X9I|g=@4]c`NZ; k0U98| "r:)A]n[xEK$5Gȡqْ63 hpen`Pz;,IjpBt }t .&j'j>NE?ĽWh|C"ߘ֎s3{fw1"TY\M`fyFC*~EOJ;ԵAsJДFT/ļMX݇3O@3hM:{odU< aCu^-Zb8 .Xx6IՃw}Q mgf;y)NHZ;KEiÈ09_ Ia n#Մ؋9`Lp0Ei4kE!ԊÄ{*)8ѡ[jGFTbM*udJ3ֿԀ瞛-,n =jQ__W!\:{ZZ׺!dpk{+D -at,?YpQMY14OŸaeQҫ;E}t^{+/oݶC7u(hO[?LM/1@0$<<(=)? _Ǖ&]d<[XZ4RIQi8E@w`x[f$IUP% rK|ÞGFevN#&MⓁv|-6($`z5-6E.|EOh5'06'jVA}Zh7*mS%z=MˌXx81q%"6 z/] N#>fHe46tO2a@=MA[|,+Y\țj\W`c)#MfpP i`9qBpK!̒NM`y%RcƘ\ SKqrx"^mtM*Ś pfSEhþ^fRFjkzgCk^BxtT!LO3:4̪[Dw:Au$̵k2_)}6SG*`cN3I6'iY+2HCf;w $K&3o%%|HEU{IB=OMGZ xJC|7IXEWg!ܲ^?}W6ȉ0]YOߒ+X }ڽ+330B6rr[~i[їum^~|19 a7S{nw FaJ`Qɶk&H;pPkֱ'.V=?(584EJ0Wa"Cc( }IR!qZr ?Mhͣo◰.q LC0u*LB_F!6?r/~Ckza=6Y3NE5܈EOKtçoF$.!VTG`c{SXdoujoH`hsK ʇ1Ť#lB$v1qG9}hӇTFo$W5buQ隅8eP! ~d$?{ÕUp􊦲ȇGԳaBT.H73Bn5b#kj R)w =M # ']0C7leVL*DP9R xԐ [mΒlׂI;ZǃHk魠%K-ؗbCrct4Xphk8{nY -p "嚣ϯ,ɽ|Ж:II |JL率06_VyLbn"B9Bl¿Fu륐@yGt[sJ0_ڕ^u%wczQ)imR!;M-mOTࢮ" >I2_'Kv>Z_29 )\@K/ձWn=MDC7׬.);M_S8dVF5Fkk3Vÿd[2-o*k٬i</OyF rѫ:W~dBdE޶t?ܔEp2 H o!hBAW$qr[ˁ+Ri9 ,W,or*8?1ރ%8)/  |/5zL<&[Hp|}v˙2iR{íh[7u@z^b¡O|WmiI'Ǚjfe'%*5:#]׻B} 5?; И=\+OG2#PWAܺwQbUi鏁5D)2m{])xޗ<ɼ 7pqCg=K sa;A͵ǒfW N2o$wM{9!]u3fpY!›ڪp_ެN eD>sUY7"AƱnal9Z E?0Z/ThGZ\QJSj]:/ToDU2latKYqEO(uv/»&,ڄ#v;k|샨61@h9H\uM57F1ff̀e D^GƖ7GW`[o8*YuAE5~oUJR`0yn&VMgzhA&|/B[&j*?Ö[;N;+1_kiŖEn*ke?X8?[hc5 ./q4&G -A!Fq# ]68ʼk!G{'IrԘvĜ "ۺY44:Q`wHQ+.Yq*\^]qIepCXЯq Cb"}X/YɵܐW^n|7 fW84w*Emx %>vx/д;r*1k4X2KW;VTݦH>#* =@R94! mB= Ux?C/E|kl)nl[5W1)̬]9PNpl[tacBp_H4LϚ;hΡX<@k3Զ1l Sg*O-T·m`ܶz)HJV2@.6,$C׻+9(=IN7_32MH6c)ZdA)\B KaWɏGbA$I2wyT@Œ:W 3C CQ5 nEz|ՙ3h9|Ѥ~jSUr%|DDlO5l'=LE Le@۪)6\`(&_:}BQWlj:#]9h|۽ Vf"T<;>ʙm:et# pMꞒ퐌ZZޞDGÜJYvOaYkka5` s鳀sEcO\/_&0saP]iDx%H—!|ˮ`"EQ @<db%׶Bkn}+UiF@" M6>™QmYNB7k^*+vaBe Ʉ/ R$$!n<sK4+8lx"`D}Wy< {<6! 8qxIe?5?u#6ka3>zv8w(J3+Ɂz`jb?`ˣHJI`#]Td],+/(fY}I&;C.$yirv_yay.6 |9R)U|aGƿ Bdں# ;9?~&;OL_ɻRN;ۈךo4#g<x-4%ܗp)S۝r f },_H,^Y6MpwA#"Џna:Mn " _&=у ~6Iy` W,jq2^;DpDM/6 5C8;zZYmO#a1:!0JcH lF`juR9;dl9LDJbI?֋䃚-%o>6׬T=W.ZZ3yR\T`MdiL_|d`n:. I`q٢AM8iS^[ۓ"hUe5 I)DS3S.sovdy'_#F^3L2kà1ƴ1^.E!< zވp3:-vF{f^.j~[^}c䫭kd51"^A*$ E'P0K!c2ϷJ=7S J؅t9*/pȘ!9?ƶvDXXym9y45rVC%i% `(1Д.Yy;h ?rf>5Q#7hn %w]*)OzoR&_=Q WVT޹-fgD{"yP*I"4 q#qTt +4k{@#7XhH@NO˽^5GZȮh:=2R=3a䍿neSfY>Jdž6]\bjD[7Tld-(r/C QYǞSSShaȴO!`ʠA$MKhT,>ő%gU(E&YZø\d:b8BV鯶d3D1XSK;64N67 愥3D| &mb׋2;Z5(ٲz˦.V+u:<+%ǴmeU),d2M*w?Ǘ.tU_ʰ!_XBB+p OϙPkw|b-un;7^]TPZV Zw94vh|`jPg揓̔ wEԢ]MwC:f(Q<5:̽=. _f1~Cj ko՚:5>=<:vFz$qV3O#I//5-#u>dP4>Esx!(c #wrn]f XD]B_9qjE@x=]kd<iTl%c!`r=e7tvF eȔeh:H iKt7 .Ft+:Rl?s@gyfm?;Dz0mb)\؍mY_;NWr6X\W__,r龲Eski7N߈}+~yR6_PRvSã( <Iq9gٲU`|L@+=6FNQ/}Lajۆ]mB`~ 7'87J2/:$ڟ_#lfKlNC$v1q1#FLֲ<-2b쀛Ʈ_JJ p/C8ЄquTԫbNzM15[#z”bϨq+⼈>3kEh(sqn&i.Ѽ^}KZw4HYg S%Blձ5:-wpE5voht%x݊$V7xO9ukDӱIz#$`oCі\I֛"7xzfrzb?7JTusd j\79\קvkSV ^ Xpk: ,IHkw{#=u>0)&Go\z6gUb$ߎ՗shxJn~0ᣟ#ApM 4  K} na"Nʂ{`f+|ϓUUM燃ʕː8o,ip˯D}3S?+8?X+uy_0IVBhCdoSAǍfQW&9rIAy#:flS(X~"ApGYNo [4HKh/7G hDWC|!T:6j'BIη\xT4w!N.)e:H$[$,qӨx"Bj ax+İ6֥T'*+.tl" ?,m;}nwfkȥFW-r*Ƭ.9Gk)o.7U>KO̍ѵ _cSo~ "\\=̞ .J.X 8dWK3:B<dž ,z)#o̞ SW@^.Xb-kPN~uڨp Xl&!}Zrs}us#sX{GMBtTTjOf}ޑXg/fmQ"76Cu.x^y/GIL&⍂wAW wW?^}B_X5.P=.}SĮ_UH2=1znru0, z5-s7(S(LkWtF9 r$xqjK,E3[&{g6'rQCݸ@f_R=%O{Zs kHO9/On*{}۵U|ӝ#brfP|v]/ʚ4A4\w] Fಐ#I<,6LP\ml,JV/$&/DZdAs@:” ѹk+u2&àm-efiSYQ jK0NKaa_ɢh^_?B:[|Rvt}a"I܏;QT$.wotzgnV>ix5]{.2cR_-=Le&bDm~o1k3=1`;"-  &KY0ݽV 5]dz le]Bf:3/Is~1s4|gWYwcx/CeqK yu#¸,HZw#1Q*۳99hښ:(UI3G}zcڎ8^ c;(/XĨJ1;# "rw0vhu;]TIqߤ ]ĦSlICUΦhS !f Bo%ɹ4ᚳqWzdZǬ ~H@)CNE}g{A?Hs΅[k|Gn=H VOyD`~lr()L5N (~RԘK7?Uɂ.[݇]܅DLgvZ 0XJh /Wh\Ž+!j% x'ZB%U{s s&)wϬ/)CqZ4חJԪÕ夝,}-|Yȗq2^z#&O[QQ]BL(xUC-1fffȅ?#F'zUA-||SSVyl;vn^7K5NdVe7|u=YO0!8XP(¯#nAV9бS$hJ龂O:n*D'u/X?+>W{O)ݲE퓹.,^(IES[W<k/9To)Kqa18~3VAd{)+J;͛4’Y #cV@[^E>R*]a8`&m ʰT}ce^ś-z)h?vQ+uj}Oj&Rm6|Mm1=h[?H@9W6'%dwh1s*m/:*y꾊F%2*ǹDI`.R-J8/.(ƴts0m`y2i +!0L+b Dz  *ӈ#Uk~p2Dvۦ;&lgX(K¯ ڱߜt5yAU-;k|Q %,\%Wfn0s}V]zu2ujg=3VѷP `CkpBY,Z9&:qr@ ~{ MVC{Q{q;k?ھlbcM!L)űI-:/|~ԯ'pnBM65czx8U?ę`X35^:-ց yeM~h"*ߥtx̸}(7tUEv'7JjeU/jU]洣m~5,Zeɋ.n+J(-.tkRׁ7c"k.|1il Sn6m Q)nzjq3wc=a%l40ıBBS` lcBjDZ #գᝬ@^c{ ŷĻ b^a מgE\CedvoP8 VO9'qDdJU6bdqk #igf"f}"GK%{`3.N#lcօWfBȐRXcq]qӗs3'Y(WD")_xu_8"dTg`;C7XUUύe_b(5\K>ϯ3?&aqS7<+s+ceѪ!#QȣX!`CR,ӹX~E.4btז _9CUj<Ս\qPa(5z7{E,_3㭴O ȌMZ}P( !CFtM TYian)p7=T"x|j; j7 196Ȝ9X[@e\8^4RQ7E2z'7:@L6~Ǐ'&̝HAYkg4[bLX/ %nv_l(ڕs- &<=u{s)!˼[ǂa\WC;( q`v6TQHTw01#`.H{ UĿS |#)8~[i:M5eH}q+x|ٳ p 9 )T?K&+eQ;vm 0h@PB{ X$n0EٗLe*a_΃˭^[W>tYJQ -quJn(0])u0$Q8YY\f jPI F&ШDi6l,OIW{-Z.V06TsNLUgHz&>>_fs'GO&χ>=߾\"jPS,: /ww4-0Uw1rbf ,̪UXE@e4_C#lݮ1 yبlʿͳzgrN`r MڸsoI!T v:gq>sU"!|g*\ak~4,!'(+N$^9,*D:8q0PKcߚ[:؆@ۀ"A<V=x V[@1Vl5)^'cD?M=Pϻa +V[bt0:cGRg-$k M9k/3O4  ۄ$fEc mU]򎁑x8P"ؘof0z@dGy\" exjoTaZlԭ@OjV~%z=&A.C!,[,?74_ ',ERv^4'Dk7 &s(e|JK3Lb+q # eߎ#w,lmr׌81I3%G춝EGT"@rT}{DO5Zq-꼓DN3XIsb;RQ +ll7OL+,%ղm9,g ;xH{aQ'ȴtk@;'TLA;UqE  [^|yK[Y2zMʔ"Da嚿(o3d!A50QꌁNmlHBp@cW"~HnmvZ  ^@ d&ֲteq?SZ%Yx7.~H8{ Aսq~=p }-Q/Z+B~X$$YTRxFN<8j UYe!qkc+Y.' ؛*+%+K פI V@i\,qbHN0#p,ѡp5xIL*08@Q*de8%`HpV BgkX-tV贬w jzNk%5{OTһ w~puvMUjkU|/w#[_*k5t^TzծyAN7Yv 7E"qrާvza! Bx@mTF@rvYL@W붝?v- ƒ`{zn4t# Ѹ iNAw`1O|G@n=! nKC5*F׳8RI._PLhLr^|ctS7[%BdiP1{e{U2ʩÚa B;5iKd M4 1ogUS+Ӹl&H}6SPqʤ; 땨x2Dzs+VC3lŸۨ` (I)/g"= Y1~F Y`oS0V0 TRvzi64;ųC#UYK%(q% R$('T \b^ Yl1YwյEIH/H ɔy*Rc :u;λOa<ŀX3UZ@s]7io*RX.=f4p a۠|8+9E<{ko;gqF:X󠸉h7P\M,{: \e#Zn+s QTRU?R 䱗i֖† [;ϝňzBw8vΘ/oݍd3m|Z6xb68S Cy[Yq$dj[kϑ!m* ʹh(3B*q]Z$m}]gnȞ܊D?0F59; tPp)U.ܐLA:K5mnuɝLjD{a_+CL)w귱xDK%n_Lz} )M8s1u #iy7KiZ֗Gv7h6hJ*Pׂ/mK%ޅ$ϳ;*pqƺh[J$F g6_zqYX#tzճ< z8ؽ=mn4ڤ,ːtcQGP >V6x@Qлnv_ 5yx Wsbd:5kà<_4>meV<[n. JNE@z+B~e|WtMDx3*-º')j bX ōX`]7\{,~DoY%ٙv1Pq 'ZZ[DɆ2+9`A1XE$䫨5X$oD(·IxT*^{AWk|#k=l ." M[eK$NEd h֣QY,nHʱ|}b$<,I{%kԪ/<$QM ^v)ͳ\܌-i@7  v̻߳/YTm덂%%|8iyX߸m+7(oY"DG:7WIj` ^J)ev7-B+ m<*/Bi%NG&BڹJ;zG74=gM B=o;J~o\l_,e'}={͙wua#h`-l|8E0FO 9+\R0(D4NL)dH2%ĵ?w-- ܟ%,6M":HCxiHMGjegoRW9@_`= g_fE9F5h6䝯ᬻP'W& zL*ZKH5c԰VJ@KoU8K<'2kjVvFUP^;amnRX8c|y^>b螼 yQZ?&@G 8j|M#59W=,}}o`a@GZGW["AKr1*cA+/`V:$vj՘c1ؑN cM{ⷼfR4 $*[̲FBr@cGAr7->fFɗUcljhIAJ% dH6!hp^~xRaHmv a`A0~ƟN^(:e<ÄVIDK֤ߟ| n|&!~$ĆizlL 0Tq/Fd"yE!n]E63u3A8C*=,*AM6Aeii| u#tU}IۯĮ~S[U7;'p\%黆+4„ ;I3*+&ze;6' :(JJv/蓨Ap(-'Y" r'N2r Bc|7ΥbS-7dsz TbS8rZV,]Yں*Dx!MUZ6|5^\{E`jYMAͣFp}yk=Z`4i zS"as`4e>nBi8R^%[QOs3Of: 5,&1KD'wO;12)&˺y[HٿQ̨nH}JRO$C;qxƍB'ef/;t/mOΜmDK?{0ݫJ7mvFO oKLi3BEw=վXkv1=J_`ZWEIOd}Bq҃AHIy rǪW@b2c!7"21x՞ՄxjqnybPv DX eYp/{Mz0=:s987?zݍǭdmj( &Le?8=8 iN'qR Mueu /[,$C?Cp -cI˅;b=u7!}`5Z xIf9-bEbW=~n1q!8+,QE,՝S.Gr,_ ?p渰H VgSD2a&ZYf{#h3ȕ0l:T<+1.K\m.0sB[x_7n۽ lA9J5QJTG=|C5I)G킺SQ4U&CZD~M}ʜ sfBemŮ|`HdvfQ!(J$ 5$=]WDoл[4ݾ'h\SFGD#SfL%טĞE,' vmE46KwK1t:.u}X0m|* ZI!pڴaK3jzVof//"AU(fA5W@>*Evc@l1kf~ pfh|-[:j6H_Z'r( S{MuDay"e+8;Ab M|`0ް If&sr'L.pȼcۿUq>#FEƫQ<= 3FCi'KR:?-04,Pem,55ǣH>z'SUw gr֓]JX~@ia424 (euwk1LX).Kl9?9p7| Wݞ`]X6i.k}㜜AmݖU>XV5J?c}J{: SNeeR~E "u#ghZAi xIIL8Nyt/(8;L<* oAW=8ΙyN$'Oc_w`j:+KdR?w=۷j9]K(YLvWP2 gMO/EV󯎑TGkY \NKR@\Se{[KZu@UP܀x g`u8G4jK S> K'ߧzC=)%Dt5_6,^qs_si6P!t=^ ?5rʵxk}u uQ`_#IFUWS:T0u5㬐~ j̣2N5Yv1z~{ 0ݶ&oKZGqݦT{j)rPy[V׻ Pxq9 C0PE¼Ǽ[Q"tEmY^eذ+BQQ"uCS[<7#פBP?lu+'8`BI?-LN <3) 0TC}6 zh}2i>4~M:gv*`"~irT]OcfSG%u=]ԏNGds/0V y&F߳ 4qЏ:1+%n!01yc8 ދpPd[hJA6?LN~p5V-lΆ]͏̨ W$NBZCb٘D(kXwCKn`=k©f5ԢV,%1"x9uD&W%gP-NvO< y>,`5iUQrË'Cp 䊓T..fKN _ZYuz&&^l@qC2dyZKDwǺكE.{k Xv9@Dﻦ"4+vVH1 \zon&0QFDᆼA;`Vޕzq`{O>ܝߗ\ua-ia@Chpu/ރ}2%QŻ8Aqs=c\I cQ#k\?GwtmFd ]y'e_lPڳc*+ GMo=*ƾ5]M6>]G.#+^ 9"KߎU$Uc Tv=dyAw#ټ-dd{![(2mF:4ZymbHm8i3ģTDک蝜Y9Fgqެps=3hF5oF]#;(;RywIEe~x~*:Q&w&ivS1S9̚!c 2czbJccxdh0+N$. jp0!vQ ;__34ǖ ,:z"rVC<㉤XBvNwz:i剿xfbuI"Mw4 ihD^jt̼e%{w6ͽ 5L+1FOñLF"*A״"Af9Xm* ˷QP:Eǿ\-T%3x 8Ս{PҪ5DG"S#|Yv8,z̓^7J:` 継a(dm|bTJxEdZ-6ߋ-KS= [߿8nol*TBs1&A~_dlY3D.@N7Q'j'&E#QFq&IIzT;C3AnVDYTWsSy@1 ≘~NM]œ)lqD0?H|9> { xm"R,m<5ݞ{Q3m=+2Cn[PGϨ 3m^[, [zɦc~WNg$LrSF8{= cU01"MOX6 drVeJ9>V+EFaJdj"uddH +}N{cp4ik-kq@f[sM%"nsVRe,4m6H%HТ/=D=̧0_2ӀUȖ:؃d^fa5Z?5WYa= VV€hHD+UZ 6TJwXxYfr!'Az2 :cskJ'UI[5/OY .ice DH)dx E4(7z |t -?MS gW6aƼ1)ĊMۑ; ~}&V,iIԖ \97"bXC4jŭR$<N5κXĴ3~Idj'< M'Y>}plÓJQ`@ \^q@3ч \ۺ<fRPIqɘx^wO痻Sq;`;j@԰Lp)jx225*9M.}D'oY*PEVRԛ+&οÁ}rNb&qSewi[۾\IRJ䷴}8_%Ez(W”|ciΩ(Nޭ4ٮvDEG'5tAUEcޏb ŶLZ#=^%ҴnH,6N_k20(R%|1m$> LM<c/߭U]78Ot.@@&ʎ +Ӽpa0MιlQS#/ yR !&dtM|D; /Tǥ7HDJ`q#;ft2{0F{@)eYR:'t)]l֧ǥsx'U&Bt'h w0Yl&Z+.RD (LmْRNgcWOYI5J'.w tbUk~ۆl[:@=@4zٝX7Scf` q*Z&/ϧc̞ - Ew+ic7AA3iN` ȯprMAkX$wDUpϰ#A'/2 떟e20"m3Yg9,Y?G՜F2(F']die}^:EukyPrԮvĈ1D)lx1j$FT`\c ]l7$]eum'Bdɯ/*In g$he6aP&!Q_yI"@J *3^h5b"ZAԩp˼]N̈́!' kwm哦"(&8j-ML.Wm uãB~Hk@MlaԭӾc^Nkbs0^-C;^{b6l;}z|!nT#p{%hWloXnU/yh#ҹ[QJT 4<=Z aA=ר)5vP4gbC:1æ(dP|lA^KS@<$Ta<2r/z]fkSTe:+0cJazʹߤv%d˜{WOTmy} [Ngp=Q.-)@u V3J7aOk@XVt$ $=U%˽v cPFMݗDű&`t \zGJ9Ϙh#9f$t#븿- Kwh W\ ?zHBH:ajaQ0C!~epOۂ;S+` Ac̽Dy[\âtse=M|%O;5J{L1b:bGLCB cϔE~k:ԺA^XS]It넶[f^ly7"ZK ۶gaEU@Sw.,~ee?rf} \}zCfV|rt}]! YjI6}AjI͵_>s#z`_Vz#ذ#Si(%(KԏYy@}CGqT*C܃Wg.&=`2zD)6Х\J9jFQlJ Gx}q.oXmd. fPf׆`RX%ȵ.݈-5Lt(3M*\~ڷ Y$tpS `pT  :j^BYZLSu=Six*iG!갶WW[ez BmiExoKwY&Bf5[i)_E=iB?NH|@>ʷ,$ˎѭ<Vf-b5vѽ/FP~ t~Z@ZkhgBc%4vC؝%|<`ƳV6X ja_& ESK6CgG/jKߘ 2TL3Xo= ei"cLb#mfAQ--O͵/{"(@ x|Θm#1VIdtoR0!2ZLŬ(Mb%[fc6RaxH I" *<||` d["IԽ7LM< VESfgut(? |i5-jx1F'Q-+HqZrI۶nX C0P O_4_[MLj"e 8U*[Gwhg"8 09rHa x܁bncJ˦Y&PǏ1R!d"Jiϼ\(GR_}5Wrg7[ᔿ=BHΖp=/pAj?+ڴbc#`PU*ރ;GQI GƤH֋Bl?h6 GSB&1ma:|hxiS_W.@˧e@']?rOٶUm0gB&}V?8/ݾMPn﹃92jSU|E|ƚ݋@\58.)L'%CĨ"2;r24soXE[n";tQmQ Ei}@ ʥc Y}Ǵ c'c„뇓xTM}d_,vf5IjRe/@bxn0 {6NN̖ңD4ڕ@TMQ;&*iŕ~DUl!Lwdi> ޭRdJ4} 3qW:-,O,*0sPjn]x)w_͕ٞjZl_EB&)7sXM|r|/tR5o$o-sCtD{ AhjLSGn?JW $ȅ }0PgE.ڑT QPpQ"v n,͛d>'It fyH+N.fC&QZh p wWMHUr٭y,5M٫}u,:]؁k'@ d~J% aX+Wu97X|bJ 7}Ag]9Ve<X%n nxڨFHQ߭&ڤi`;E$wg-IFz qGfi7I+1p"T6 K d>Mzr9l|ҰR;5 "\vq.58-n9U)TrkZk ݙ>d1Fʶns${Ae4gdx# R| E87jC0eV K!mV^n!GRLMP[ؗV uPD6c{AFJȁyv?.)hMH22V-pʇĎ.; Oo!W_#{F|`sI]ha6)Ε;3;ra">iY6N'o ;1àx:Ȍ!x|xs!~8ӝr06 (1"]0%?1%* =E2C*$dj`V`µm'Gf%{cYR*;:_ >xqVfpHx'ͦ.% 0Є)oqjR,3_- $R+vGj"e 1F<Ƀ#l/QnO+vFR2R#8U*X.K,;YUB痈0LzkB!ۂ9DBVi)M|Gj ߓj5cr4- u$t8sUdrcDq'2""ÒkF٪_,'OVY+}dZ*9_U>JEKٌF wX@Xqd`ڧP(Df]6]~k GlO]$!V_mOrຯp"+k"nhNF L}٤ow=6b~ 󶲚_$"tCգW vO%6zN-GRpxIfa Y{1BL:$DG>@쐘p 9YwR;LՁ|D)|E$3F9z!v]| Ҵl\4ʱ}'QP@F3b ZV|Klop ɜS$svo/잓;ĸ{-V&3hO/ƑSV J6cǃFۀw^ C̀cԐ*2 {psH0|JA8aUdE3F84|?14z䬋ؤvnʆv0Gg]'sFG)x O{a|W6t߾nLşifɄ Di(E<3J^Z6U*@\7a=x$NX3W)(2C6龬o7]uΑH.>]v͒[=dU]&CgI$aĵda[^~HRB*꼱4z\h3TVaeJXt)/D]C h?"qM|=hc_'oɼ$cX:W3l/"SUijBxzK=fN*m:cz=rHǽC5Ts"V~'7tϔy5!<h1A a%2e7#2u^ϐ(dM%OJE0W N\*j3͡{9K8A$ҫ^՟>t= =0"ݭ0uF&8ޚJٕQC!s:x;E jݰrEòA{FB )MFeLGib%39ME{tWdNҜTٕ4D ( [7*`;%WhoJڅhjf.E m&W4EFFg,Y 0iOq3^Կ2@x܌ Z':~`1(TKHt򚦥AY04BKu [x[U}, Tr8|E^LKΎ|'ȁ sɌ>٨xwjFO5% {A!cAݡ!ڦSv3q. MXϪ RwLQOC$/t"6Z]Ub˺XIB@ x܍G߭e([G?4>${@5tZYi|+NPTI cV,07 ru"RnRx}z_Urle2m)ɢo!4>UeҊHs\iɍH~&N|p3.2fF^vD[$&\u6G^@9>[9H 2! Gcv++-03N<1t<ߖX=0g\bNؼ5e%Yڝ7 Bρr?'G\,0- c?c`jL|ǸM64\5]?l$T*KBpQpsJީAD]`ʄG23g?ʌ;|0e>y@}ͪ#rvD:ڌbrv^u"!9fӭ 1M5ۇY2]E$U0'm}h>*! mCgi ԗ ZZr=c@&zr56^r/ Jld.^~M ].g"\~w(>NGlLG b%wY4(%=>vf)x8L-s2q6[|OIq❚♗ f*Ml (P:PxʖG`8F0 ̩QtN뱉u,.ŧ=KP5>k9fhu1FRL,',\T-q(U/m d:Ds 6Q*ձM׸*(?_(k'8"L+5NYN#R0Q0q-'"7SEf/  Qʹg,.,ށCV.޽ <Q3t^V2Aϱ2c.ipU5S[;4݌ڊ=>V%߷"0gzzksֵ0F3 -DƮjlVrMxH5VruRHʪ{8@}T7g*spc9eҮ1/у/XIds7~[EٞNl0(i1&՝ )ĺ«|Xs{C8GJY&W ߕ`;0YaZ^>=+ѣx𼀴Y; o˄{ٟ?T7CvbXv1RVHp "5vU{% psI&'niO}AmyFUr2YA1u){sksR-PgfR} *5 %}f{)B5 v!`,{Q8V4!B`ȣE35_˪|Y/Y&,ň2 p3nT` >5>$pEWG*uN4ѷEdXD!ZI3J ysۑ,MຮҬS UEN#ÕM~L rYWX!=`%Di[-'I`ƭvWwN|X}\8:[mn3p,ˑۃ5`qJoD up{;5SOAl͜gȽlnq.qUV $s=GZXG .ItC)%ӹ3uCOp&W6H ˀuztk9q>Voy_Rodn6'_S9 I-|&Ma[%$KXzSLW~-qۋq,ItS7tOAiJ"XTV{w+"W hc}[=y/$z !w-/Q֝ECULÉ'uz}+{S?7R$D99 .0:4\ &T0wb!Kg47C0ݓ%.B!rX;z(`1aE#25*T|9Ibi#3,̕ڀ3#E!;L&>AUx̂Zz"bB$QA ;1q} &'ߜ_ef,ffAxaL-rɀxƔ/$=|5n<6Rŏn.*!8ԋwdO w\1SZC 0wߤv맙e).'ILxep z$>812;e)'*,őA)9r7NG-dpХiȋ"Rv9F{CSbw/i6`j)>r|%]A [Fxѥ? |*G+t $IPjIYFFxѤ4TIw%x O>J's^ܩ #}rYねW_唫jwMO'pP5RGқٓ$&j -v(UH] P'Q`E j2^.!yZ"f3cb*w!zGWNv?W*+2 J|#y| [i'M˨_iԕx<GIlIAJ}CҦ){DUeP;9޿>ϧSƟ +x q$;P9k|w1~F4^7j҈"^P-ΧD B?Imy2v'y)׋bX$/oJJQwn1WK~VKi8Ԡ˶p&AIFt1##osYV\cCTRBF A m DدUm Ό\_j1z7KGnphGH:㔄E٨=` Dd:}Y CP;u joeu$+ yO?<|5bHl Oժb&?{T7-op񃸉^c"0g10{r#xHHo)fŻ #rQ6>p^Z8RO1”Jp@(d[Dj==W1m_Ͳvwc@%Q+=֌{Jt!=>>Nð&~dP\Pw0MOe_w*$reu|)Lb:n+%r6zX+ˆ- - blpr`t[d. :)K6_"Ęk7?=C9%jnN~U+A#,>hŚ Xh;,WwXv3WB}[(="A!!hLpbppk_ŠȺ 7ol#] LŸ2H@PyW;d% &f`#=yIG{p I԰ rW}ƀP{mޞJrM{(QO]ۂ}߃WЦ-Fjh]t`c8 KbظĕgqRY ? QMU5ƯD}OmF6P3?2 F-ba~oG<x$tG ?=(HXbD @=[bU=(7xVqݻ~+X ~3ؓ- 0nGG28 ,H3 &u0u+tc#;P-mv PE R~c e6{%n !&Ap@ZZob~J@]/"*aJB\#g##;ʡ 8ǻY !]{JOgz*afE6;3amL9${Q x^-i׆8Qc5ew§8yU2.m<R@J ]W: RUvg Bm&Vvt:>΁^ H`!Ӭl|洡;aUh{DU@2{Pizɭe#J$$$> I L>.aS'+vg4mw0o^GLYNԘɔ 1D: 29IAjsGh:n~&3.&/Ol6 l^p$ȢDޅs$F?M ۠͝Xj1:f*|X,(XW؃! ZJRނ O[+^]'Re^6IO)jP.`%x6HB6i Q>TKukIK:E?dvc`1YַNPcm\y\"ТXINB$MY/IGLi9me0+ves&eHFРU-Z5BUJ9G ]k1TG~k˵j/_?tQ51})fnXd6EÇ~\yH/"W`Zݣ{ ޚ9$ֿ݆MVjn4Gm̴4^ $hbu\hԖC41e[ +ٚ찚6" _-Te BXH ' |'JJAoMJd0 p1e!s4[0dN-7+=xI4/G`rwJ> D1H{i RYX d4&<)<_ w3#,+9Upg'BY^fTo=zLTiܲro*(rac+99$ޠkjj_[ )uD|ţC $V>;1=)?۔’/;#Wͳ+']2Q`ڷ!Ū>MYӗPrK~,}3ohb2 gm*R懈)911RԵ7d~qmcܧM%1%5"|WҡLLҕG ^}Vh X" "ɷ9+QMGў'Z'&/9>z8Ir´>PBnN ] hjuġم"T+0b:GgTWl禢Kh4BbL5Eu@IdGD9ؚ5Nso~%,6Ag{FjT ¡; w W)](o ~zY) PWn Q"rQy>Oin%lB*TPTd:8dpvzwyo W~#UJ&j a,i }&j/& \:F<5=vWNn(ߊ/|EVTYU3Od=ygd6_JJ^쐠OW$R#F{ Tp Ӵ<-V nPd=QH^4C}%խ$ <Ns )tYrqZ+s(?"0 3@cadL$ m^ʛƞvf&ַ#I|1g32mSkνy(=MMD&h$syhir=PI4O;Xr DU/P8xj!5CeOK=3EVT/^~y>4 hqcpBvQ$o})J*0 {_Wgm ,Ĺ'0y " M^OA2gnN0Nyq9u$9edf#5Cc"yWyw+kj fN*s4С@K8{(v`/6pFeur8Bz8L.gj}Kj&M%)є?(\* JJ^׀9ljbk*}Q ܌ϾP$"rFP\!."ƄѷGr\$ӓ+5dL9XO0Yn.no| -5VUǺy9FͱwlXԈ}÷ 3QH6 J^5+B]xr@)8J,9b}4Xb%L_O,}_GϏ*=<ϖ[ pYQ& kp@.DGjJ?ED( mteS|ZoV 0WH#JԘ 1<& Ye03BRy3 rO I ވh>1EUʾS58 "Jxiϒ k 8l4*fڳnU37Xf>)Z {ׄK*S>: ƚ3x$񧉄|Ma@&k@ } OZ"۫t^F*cx=ZCm39JCҐݩy3\ų(}Ѫ2[VI(."Pj&d ).ittʉvхqXwOӇ۞I3%țYɍҌPupJQ/\ YRF4ja@9 ˂^MQ*T {=-iښ}tMx,kuftmτ4B}E3kJMFۡIRPF;vQ'wsԹ7ȴbPq[7v$$V eƜl ^BiV 7yDj{Bf:?dqk[heU #,=Ev1pt[ o9\jg*"Fۘ<'wnhhS-&:ˏ =Q+)x[]lɅm߉J%O%9M_&n7@6KǢ~~»x&%hDw5UU$oȐK Aޓ^z^@{ V+ؼI$w]˹ɒG@.j9 7OܰOf%/c|*毺Xpȫ׺Qu]HGA/*T4%{Q PI]Yfg!g|HVH# ZXs:^t&30^pc Ts}WAz"{tHx9/'zTgq ^*:@4Wo|K~ihjMKeR/IW#/O{l/єk܄ɾɧIKԛQiUW$bf9I5OGIbjLY %3vqk^tn|!t΂6(xRJ;i6j!h< l1RgbE>D6=i2+bJd<+V5c[N g,^oA/l,Ŀ-!xE~~0aڃU7TJQj=^_;Gqg8D؅uHZݠu~Ճ> 4fzzf8=jD-̵Mt֒$:*^0s3\^P&?( i2_+g㻗C4Ybe^bmA\:80U/z>=ތ> +w~Qy!~͕y k;Lc#gKوƺ4 FzNGN 佈T `ɮQcx"܍;Nɇ(V|mVds,B{lF)G ?3S(dl3ZcnoxH|ۋ%@ ~ W pTS f;؋BQ]b06Ed.ф\Lfo%Dy-\y s\nmMm_S6  ? xIo$R?%yW{gaS#;n:}:yVs!S9)Ңn=}|)RVd dEi3MmˁW3C1(?jƏpy=#Hا8UzD*w๺MiwG4hDZ(5LpKx& D©SȖonlv]":׹H{KM_3p__N5~(cU(Ny}Trcѳt}֞w] q&TPh: r!fQ]`ԱaΚAS8o @bҟCd#]|GaI>c3?]w#TS,A2_jX$3X񸖉aFͮu.4Ak 06 m؀|#7HåJQiA**iAL.Mˀ~c[K茋2D,9vD; f?`OaH!v@(8n,ŬPXpBяb)].HDTDtEAu(TUn+'fXg}F囼iɢF].V-AYDQP _/+TlAse^}cA-7 Nh zrBs]!z|YHbn<`ԼuE(֧Q2t}YnfsHڵKZJ'Ķ;xXhi\ptgszcQԀs'/"4)&{}Q;cFӧ ;B(9C۰zh—ً9VzX/l" ɝ"{㐤it#ݵd;jF}̐pX/mkO2)s;7/l4$뢂7k5#ÎmlnSmjv-u}"͠;wʌg_OGR_ $]9${II@M/ $#@[_ ? nn = $SMvnɱeZwo$')b67^=_K-T;qˆZ֨βy-a$#6iP=mJX/b.3d%0S/s#"ͣ#>R&js^r1CD\;!5{LX$!ʎBWu`'w,V:jXDp{/}ytJ\X9/؟N8#RoUle?>_l`ND;NVx9JO֣y55'@gL~>=])X~|?05t?܇pmqMH(e储`@>tF|Cɽ^{|ūLeZ3lJH!WsGؔS%8*)MHo3(ŷ1BZzy+zxE^j5Y0Ker}ET/ |Bi5Ù݇ʙX«kh1"E:8&Oa17S؍PB0˂rjQ}pbv +{:*Ұa  oP*bHL>-H ̍dT[wx#Hr^q wD|ޮ&7z z҂{CuF#R\)rqjVu*FZז_" F>7= 1X̥bk5mUxiigꙈAc"nTYx /{E00byl}Py?\*jOo -ADtt2B4ͧ:D@ N3NLIg+RmǬ%ZtiZ2&lN@ )9DHjeّla^)m-7ʷp5yjV\ݾhFp&IZ_;&9?#=Yb ƏM4>WN7jw J`5U3v8.D!"ϯSO>6_3tϩBV4Q3ʖD ӫN j{~u'W6 TRsy]/f-lm_-=[r,SYZĐiGɦI$Ta-hƽ2o_bנZWpc]JD4t!)r~k41"9hWk3gԘA Ydh\2 E]`!{kXX;i_PsK p5&$o`uY#8a>!KO4({\B+h(U$ƕXuX4|&osfLGEgE-Jb891N| %ѫb }~'aTΙ ?t 1f8~tRUt@3>Y"' ⸟Cz g?Q{iO$نTgqܰg؄."#JxNێSt&ԡ$%wSNu*%xu.~tC_Σ,y!燈9Md+%Wg3Co0 g }Mk&ึ< R\u5wūAeoD$Bup!%пQհx+WYTR;s^ iי`YaS"_4fP nJ۽!/_ʔc4OA-B3J 6L?Djw3 :cVQoǿA§R\BV AM uf𱹙.jg+L`ED!Ŭ0aƮxGdvll?Zn ˮESTCYCDkbJU7iT843#+ @o~ l#ݚbzMoŴWL|Bl_9PZVl%ݚ>Ӈ䙒g!/AI-D[OYvOk☕,$2|B 'NO$dk1ڍ,NVT0i+5U揳wlR~mr-Nɗid} itRgB<2Ʉ=7P&;).;cW RwNsֿ1(Fm:fB<G2ŒTBsM_yn4Ipec#qجj7lRejRTF1>zjD7*H~-b&Ihiޞ.Ӥ%ΙZלô[kCAn3ü5U4lq Hܞ#؛XU(0 XjiEI}ݯ (bٵޤ+ J*Ω18doT^%Iƿ-=ͭt㞅c8KRIM3IE&[5 9{IO'1m5cxhėSXŞ|Zjl<}=~9)s JN'ߵ(2Z#(IQ' @a8 TpаV+ٓEZ:d$b{EQ+85'GwmVE`,㩎*˞Pdzԍ| zZg 0k~ O`nSh7yya&{~c);ſ3jz;TBevnlƽsdYFrVK򊯁op 7غ+ /Z<;)С $ٳPj{$ITJ>"vg8WD= +w !\UBߩ>K2s(? zY>L~flۨ 荞!Ni_Z <8%cLEGo$ O WsG"Y;TWouQ'tXm9F~[R^O͂.FQ^ia=_walai|P\Y)aT#0YRrHyItv4%{my;@~6&M3|ea.6A3 ϰBmS;oysBMxU2"(́3~e$. rJVWj?EVϳH5"eYct =`HC\j+~bib|ip_<(+r\4egwfZ?E#>tåFQɦ_qcjGbiKҕ ;[?I]z]NhpZO( C\MRxD +}%'`W1T-V m/ A ~@!+MX:1I-\aOԷfԳbzqQ@O6fe}"FF-yqjO&08{|46M=6:vLvQA~ͭ;. ($Ġ%Jdx>~qԋ5Sb^a]@sG"N>[LA`C]h- *Xe]7%!q]"C>V-T)E%ɍd=ywٲae-Z7!/Kaw=#Y,\'HZ]x),8c9ܿ93o*OY$Ї51e: S; ԣ94$*S8e"E"`G@D6kb7횑65#B&ogگ]āS)޶F%QL/o?i5A˵m>f3 E_9'z@Do^s>7Utz(܇c8x+hdbp ֵ;˳T,+#`؟4~1|w$=i7.Y$)C5}V) :Y),,[חK:ȣ=B Ue7{6sX R9ޛN!m|$Q_`Ҹm: ( ^+[4%IFD{jaCX&JofC(pkiz'u沷a262ԽN)!HS?-:un/㺹:t=5ASN{k?s2{D g9"XwFZY׀N={ fH1Qgsqd,sL2BaL:}(zҀ &N3f:(c\DqƇA코[F@U©OI`<j<]r!A*]O^O‡iouU>vxX)6P[2\_3+>$`I?^W f`5Nr`%HϕN#vhA\#$X`}vt,*Cf"\S)XĹ@S|3n~ol-+'6W%t!,n7X"D?Zzح .K2ϒ[s`U+'^ :*1Tzޮ;%.n^NS@rh<ؓ@:*;FwB e$05kP]}zWv'v~ZA ܼDv6A 0C7ю`p4p-#wքXFWBTSze&_vXpa>Qf B#2H1RY7 -*'g26pz3*1Kv.ȡ+8جG"@Ќ~y7VuuL1`)[j豞케Nm?m'$//<K#U3"Jv'Vv+x? w:bAFW<&] F戴AzʦR=7-^Yu7ॲ]4I$k[W֎iϨr.hX8P|Qe}I?KJUBoent;ݚ+z)"BznPbtAJhߟ.I^B(WFͳŁ\/mpP>K1t9>Ȣ]9 ͋Uoι_eO([ SvǑJ`~b2ARL=?DvBo xDѴ3䯱uDŽ2&jmIfBj(+DTVsyśsdSjtbH POQ票dMEے &bS=ϟe)|h57y9'EҔ4Ҕ],,M^7v-fʹC%K.'i-TK kF9ύv #SfՌ,$26qy] ?Q3{B4gF'eMMU&2A9xV+n )%Y8D`u5ОpO@s@TJ.:IݞhLrd9 Ul`,If-yO`gP<)!nb5M?(/7؜ ̐g,^ʈZ!ƃ1.bIftK(@*rpQJʍ$u|!SG@I`fd J+,J_:%A0C )p8~ ??_cF`4l~B#y'e4ȱ;z|Y8Ae= l v^;D1ܕZ6pK9&ɀ1Y>7f7lnpah0V!~sl1ѝ8IGK ó_)\<ɒ'{O Yb4ܿxof_mIۖ1.C>J2лO~$rmwҒ8}$!K<9c2u^+6 |u+rwzi_=A"Oҟ.=KPlX]+c'O7NkV>X=b@&hAX HDvuGsO[͕}Hrafben;P:HB(?cpx%GnI,};Lk8GI/zoS'Q*=dSV3gjG1Ir@*l['7?E}MAIfHӥͩ0߲M\DR*9WF]Or_ 3: R V ƻ,.0]$5b~d4u/((ZgS+Z.c ) 'WSl0XhIt,_2" t'P&Ÿiy7)nm u[Eܷ(7[7^DSYYMX3ޔ:TL!ZGX*&R25Eng!fFxA>x h$S0d>f^lpDVD6=5b6::ku Y}>G<#>ī_f~/'͕)o`pVeh Nf Uw (ߎP-QoxMIN:Z9.&}lQG5p5V4>)bO{Y/:-iop壯1t'T SZ4_V[q~QП'}ҬO͍߹!q-ͶG%PCޑ-i XCĜ+Xᖨ,[FR q0ߊ60|26=qXGاQ;mQdX@K&fGꓘ+߁E}:!*Xu Dڐyd[.k3NEkF7dz NϥɫK*EsA-)&Py \o])2Hi'o^Bu`(arMX}\e6mjÄW  UD `-DU@; mwCwfrb7x wUKZL/IDRhQa&1c?7_z$ bfUv=ςX&^TXieQ eO[T< =LjlKe祛]$΂yaطԧyy]OSѨ_gΦE0pbk K@v \lA]Mt0>ai^FO=7~:0w&8з6 wңj=̜RDV4Gܛ`xq3s+;Cd<@0QzDvNն6b=d=F 'w XG R͊4X>轧uF7D(Gi=챎LDx{|tї4D X4AUBj/$0ij|mA}2/bj޷*xm^$ysvg> _-NDAfX&lErؕ_D$7})׊龔bv3`a*R2YQf~n^OȎ|%=vnlrd{ N#jIlR [ PP.C*+we9g q݅Dr e}1Q5y3Cq~P-Q l|Jj XXE?% yux5Nl`$D'HGKCGmAHp/W[ U{!+U%1Vfq=E H+ 1VXh"\rK稜_C5D)knT_n('?Lb^"u[ WU蛃J X0mw#dOTTQ|K- r~g|[ 2@dA'0wP\_U:j M(2Ӕ&Qv_|.ӫ?׼ߙdLp}ງo_=w &}C-A}6W ^o(UBE^ "K@9DL6Kx5tW{IWTC)vgI =svpǧH\@y)՟g"yIz2[gn3Sw+)F90Xbj#>L NSS!]ϯ2#+b9y`!yWxo2vMۧ&?P`e%kb`u!o * g(O7$̔ AIfqzz2?'O 2̱֘trd\S{w~{L8Zn#cS$ Lo?V'Dp 0^Ya#"G;Dg*3yo:ԌF 9"_Ys2/0cZ*S ]̉̓#5s8/#|q&x5$&Q'O ?{'M~8 VɏAn{Qp%ˎiYzߦԁ#Vh|=4&=';I KMQ`0 M_k# ^܏Rε8&'baQFގ9mY" m:3iH%suJVG\eaU!aIN47|Np%"de 1mp?\daOB]:3Ճ[\kx<3"Epk)GOཏp|P]x- H)'z gAٷ5?=A'&y[ sDIO!r"d֓I"$XPIv!Xc8ޓ&oCC{w", @wHk@@w]fvPv);deN_{ mCFne䮭ȅ{z輌e0= y6/%kɫÝP-# fٳ阺Ż>ӛJW믙/EKj\NL{t!_KHcaPRngBɆޓr;) 8v9"ܥs#B%\!r){ ^af}\^bqmd#7gW#R\:+Q)xor;$b 'eӖҹ)8EkT*6ő/rWt2N Z̧^M5X-tSBfz` ?WHc"O]ڭ]U< ^뫹s\48Mthc`5[i)0u̹O޹R&vTGMG?oxc/,.ޑJg"Cs'c9hQ0٣s}b7ZVZqPb sдV[) :GM5^M_E֠o⏛)\< ǒz#,װ+CR؞moĄ6Ox";Yz3z?Ӱ#(e?it;k(u Ϛх.qN1_t'w{y52E͚Sre 0oLn ”?/tQ"Sg>#e_:Y布`i^݈2æL$2dL<[3ц]uOfLPԇ#/@WH.n *AHVmb#.'Taɒ'\,3g%Ml( Pp%Θ%Ɛb_@՛&,gҿr^WZ9GmL5p ~NXN&8"0vO%&4dȡ+.2Er m]?X G)ت;F .W _v-:zpwʱ]mτR+&G/.APg37+^PŪ datav3^Y# O[q)ϔ`GdD/.o̊\.4``"0a#w s!n&P r*e]3وv}sSVnsFW VjVHmN*;}ˠ5g֋vPUFNg2B0ES3ghvxX ,OOfQ) lYLw b6e}@3`rBB֭dimIg-X|D4mo*?RX&[Vhc﮳~!Ƴ,ӯD%=`)P`kl[Bo4DǶ䧊5{7KMz:hf*;i2JW[ŧ(&.[|rlDH]~}s,+Y6x E|,Ȣ;3]xBLHsؘRѝr͌f@nTv/}#T|O%mN fP~Y®Ҳ J."wl"#ː%voAv{0vN`,˓l &~fk9+;0#.Ѝhvӽ.VOųK=5ѱ.`\* DLTxzJ"~Q*Ƃ\AG*Aǯh*'^l8۫jFώhu0ٞjNO2MlOΈ!yGu`c\J)ZW,P! z4i6?_i(0.0?Ю%C’D٣VZ& 4n:-WL ;M1<,P4{GX34~z)'0|5uK=J$η۬hs-ʀDk~Rv6HZuh q 8eLfIC翼 (k*[Ӳ'1>j )ʚ.*[S׍/JHC,>ʍm=\_vpՔ7R_}߆UJ\T$k 쪆eMuh*\_ oh}ۍEڧ K>нCkГھ_v[~SG~]gJ*;Llv煟Tmܪ_)k74jO4Nyr#&5cZQ|:G+`}TK^FDaߪ[Dp,v`b3@Q 's$Chr\ݥ3\Af)<6#S7@ jlޑ;]z,L.?%~dP):(Y}  wVBk'#4b#}h i^6+{$ހFsH$[Vȸ<̹N~>ڀoۖS>[B#6cߌ%-z4xQMtXPى0`qv(3uT6~{rh'I8'TV-/Maհ%;6!ӿf2 * 9{벘XȽM0ZgT pO#vu/+ʸ[kmamgsO7Z%B}2tEf\"+냌OsHyP~U#b ,g1uMޮuWrr8{ĵ d2Xuӏ7x24zPe ,J?$V x)lFX7eՄ5 ]o_:`b7LH-HlmDdcsJB@o4^]F0~ UD$Y%ca]ndK IO_xwe ܵUh ֯ '03, t=3|asdb(ٹ臽MVj@Bm% ?\)M Y`UໃWjcc* )ZorL9wL7R<{M0D{1IaX/ou9#vJ+O nD]g3}8jRY>wۜ h^G'<ʾK齔H~ KiWLjj~: Ǣ;w\ƙ 1?^ jhQ3į˳Kh|k4)n0%Si镼xElmpYA)(jȅ^vND}|ӣ%WqB`jW,:@TzGf+.;{Ϳ s_?yROΉĪ]j8g|XaI"("̗_$?13r|CuɎ'lՐ6)~z| h-~\Ne~= ~TԈH<Q&KL+,Ng`0n&2=zVzfjFbuSh/DLȨN<ΗQR_C-*6ACnCoP:CK@ި&ϊdc+ m.<\4V (A^ ھM?nĞ'dܒlw:H372PK4O`Oo:'Y!~&hqF,-C(wk<f9(uVn|=ӛ ~W$ 븘`6D.ͱqlwf2hƔu3b>ѶW #+zǶj~qCdaL1Qdj-z?z2VLuP^uVc#$o$[tʻ.K )]Ѷ}ywaӓ ˮX2[[c3zآ%Xika,QLz.p$>s5B޿L"NY WV+>mP-~q4j{]%^y7w I3vo Էy׮V`,*F2Mk2\Z)MU6,5qIرTNvìu]2'EAHWR2M0&O~vQR?B&p/jNE8cඩ(g =C8G쮿+YT0#^"{ ٙ#FV HZLf 'jP;G >>V^񪛩yыp|6F% )gG vȅZτ\r!G@ƾY L!*+6΍:-r2KaLw=ii{CdzĀqⷣ@3R>h`ߧ&R[,NULN 3&ͼ[h~I?L;i G;_ӕPO@=ۉO.tl9lPt! Kـ $.+, J/F)c'goTt.MKj2ZZx-!= '2(tw@~[ B&P ܘbhKcO"ڡ\/VkՎ\w)žOe1}'ɮ h}|Awb8rqq=C":+[Ԣ(k v;Haq^k,'{P6)b&oRMrԡjyRp )Kܝw_.2s{&{7=VϬp.e T}^\f߃5K9#sxG/gv7k},pT_V`\T`O/} e՝ugAԮ1{T@j]<2$ kY2̤۱ǴZ%_M^ 8RԝcA, ~,ȓ- I_O(OՄt&Qq R"WȹOjV#.}Sfё{%Wev.OSޡOweTa 2NrQ(uM`Ldl3Qv_Y4c\6%"l]ot?2ʟX SJiK)Nk,|[S"ׁςN٢!&,sG`5CDӆϋ.vF7J]cr4uy?;?[+v-BXS,\Pz'tfհ%i7rqAM Cg;/j PHr[Mv߮0qV-tBCr '˥* m ӌ.ÿ=E*5)  I`@˱Sa'2W6oxX"P~)0;7CȽ|T;ex?`=Py9|}5K Z|IZi S\lxʶ[+8L[Lt@.˱s!qo~VjzGuKbr2gƞD+d~ajBj)^t& 2ҭ83 8]!y 6-FCd)&]C}ʮQY{y I+,e[ŕûT+Ė.4I#Uu@ww!ԛvak,ύVE@AFʼ14i W`%v0C0)G,5Ir?X|P+lsZߏWpn ᔒO(4,~6f\좈xqMOqJ*[D t VZ#$8m95 :y.CPKe-|QR×p<N5QZOKExHf R1҈V/dc-~gk$||Mxqmxc]΄TKin)x=4r(EFnTLґA-BE}Y5kBK=z+'W*蹧* ֨djKY2ՠt+ |=4pPRm-6OoNoc_'Faˤ )_\&;[u5,?ZoVK<^zzڄdsj PL/Hi&(Ӧvs ӨzRF8W*P$q\X0K14(T0 X;FH%6JJxu6H,L8qH@m,+=K߈)\$r{"kUT2̾I߃//0SG9g7uW<\EVvp4.} Ҥ]W| Q#&wI=KRexoRY?F|qk&a; 5Uo>$pPc;- =RHu7!ߩ2·#,*Z6&MgL1{H"`A_X]Aя$- NͰ hlxl`mq5X[FE j4 q 1e&i>Ӝ AP,o"\6v 5DdMuPYj6'Ix lULsH#sbwnFZOBWeHaC0yʢ {;#i?`Jv3Z!Ø2hvM1(oPk;t٧?R>[^u.O [coPTW$u =ҥ~6 |7Μa" 2wn&kR 8 ?'eOM .9H}Sy"0}Жж)yB;/30wL?%[2zqՏҿ{|hOwPifjXs(R<=GV( !l*2l>+kzR +QNXRjSd9GeU%3* yoh?Nz:482-Ru 2'qE!}GSZ]gŋm !*>H5#7%O.e U$P˴Ă0KB:d[Nq*ý!hO{/` C[?dAf:^n~+]OdL}4 z4M&`9ܪXbk9uv1W3T,AIOpW vg2#]7Rfx5 =7i@]4t>:UP@~Պ2B(ߤebl' lj~Nzޘ}t@2@&nOrv.-?XH{U}Ywc8'&ql]RX;)V jr7<*Uofak`êޱ~SV> *z$M"LȜVQ&nF!U?>YR{ {Y$**'Kˮ`MpS6,W(6=d˦Xy:fW3>46% y@wɹW;ɹJHY:8mXBpo!YEK .6)E RTO}vj?20W^KhBeEDbf8Ӣx zY<=E]jUv:vNp}M{lrO;ǧG9'`%D96rYIrB-%3՚9Iq;]:iR/Yˏ'Ex|j=YMlADzNw%VHBQɚ G#: ,-X}v2T &/[J|Dk-87&~5 MƎ7FIxgc|N؆ $ r )g@ 4/ZIc>E SΕߘd%%(-p4k U=./MčlqK\xtlFVq$uvp.F bq*dW@'ZȀRT5 pFlGX=g wi%01#c0KbD*Cϊ[4/=?b>چqj`>ޑknD<!;'dABP q<*K/3bg=Q{)y(,Χ#C;O[gW &1nLTn³qShvR|1[nôW^{ 4[jyN[—⽁O_q89d~wwh%k 5=BhNV&Jאbڕ8wU(l}`l7 f"*>7 GxGt_A$fr9~]95\z0a#Cɿg_cZ[hШ^DcA#'Sێ[Y)#ЬK3N|j>GP-Nfپ >Kv"=J8ՑbA7rU<.68?"rVrqRDdtƬ $12BӋGW1NYc%Lb"fxWKɬmQQ JH+dJh}3oF(fxT QVP^^sB/.zٰVc ^s 8&p|A8 _55^o 7[|.mݻd)tF$"R cUM~*=,ıbEi9^+e&E~JȆZ],F(NCqTֽ(ł@LMґ͈P4&4}b 8S +Ӳ`Qr_]z:p6le1D$Z1Yݞ4BQco{,0p򁝖z(b ,VK͐Cڟ̸Y05DQ80[1UnJߖrNfX- }Cڠ$LVIY(*ϡYg TL|ĤT/|9Ғv=nzξKLrϏfA|"7UNA7UqfL5B tcuLz%gɃ`YYgI,6׹ވ4 )`LXB}Wn~Ҏ&gZm?xHJ̶YdeakKPFzC?iKUzBVtz-Is}"ڲxy9WA|.}hj?Cb|1Ew>crڔ~*)kѪVy0+:"jzQ24 Kvc_d C|NFֵa~{IԈ(@|xpsR 6)NYĊoVν*bS[3@*&jn@K]1!t|y>GʼZ0/O壷h ~MC+ΞhT|!̌(5F:*HP@#g:kKc*ʐ4ܱi#@~i;=w'nn&1M홚:C*O}/@òp]Di$3a߯4F2uVcpCUn?\vIfа}FP5pG'8:P܆_)/AYzԴbi<{ CGuW4 #"PQh:B.cu-e$w\tR"׮E.|H{|`Fl`AaΎrdL%Y.V8~PZ;|A%`"/|'Im f3FE}ID:[WݺO|o]&2tB}#>͚NJ'fo'U'zOi`^L㜣ý0YSGM*[,onW7ǽfkO@QONXM69 >7V1 Y֒E~v ـnj/(+b֮{S?%pt<2O؜J'Rm'hJzUcln;Kź)b;]?d?3A~]3568:pԁackbS ѡk ~,m~2{"; As.7 ܁H°w/]ϴE->g?v]CŠ&T}g= q=?l3()p/15lA w>(<4A]T(֡5N1M{ #C7H@K;,dD8Ll[11UPIEa4t2hƉ>@߇Fyc Npu`xx6i+{n 1QellZg2ryL{ S.?-;J=G÷A&F1Djo1qi=>/FڷϑbSKIM  L>RPbO\ :1]g  Tpp8蝈Ќ_'Y^E,.pyTNkz<2JVUz(SVGS,t( 5&ؤZ MqkςIϭeKfQFQa.e%wkHG6(ۑlB]$jU [%dೖ<܉ Zu;Q9ېIg~ 6^ 8dG !7Qne:fh -V0I5Vs#oXgIbdU?/{T0n(PeaWs2i9L#1c#1hoKώt"1M^{eKX1؝kej7$a!cgj58IKvhbb(!ٝ{a}ɓG@ѤgN JR9!~;C T`QSb4١ՔN͋J:;OnC[j(6Z6o_ebV~"UOXџ'H ?0wlE:L[<mbM:qЌ|'v#8Qyb 퉊əJ^gM_szvgxa=֡(x܄vk }ڏF~6 UYrx,ةb*|%˄hf;ό~,АeeKH93HSm4qEx‘G m-f^6/! I}2(Wa_73bsd@^VVKK_£ӫgoڰG0,BA`bgnۢ\o`ɋûdh+)6!ːmΝc"fvBc"?pT'{_2dByƊu~X( B\ڀ Έ/ f uʰwfs<+Smcn6tKWS;UV gR5,p=N0Rͅ3!H | bs}&''#V~}FFZmQʎeN^nȱѳJ9azg]`Orxy*D߻h[|V|9 &n?71xBűiȨT}#5SI. K[b+$;|FC,|ok/V;DnӠfgM@0 Ž}2o<5M0hiWZY SnOgII!yHQJ%URh5#yڡz٢Dzp@fW -T?^'Ǯf]eeNٍ^A -I{ebz+R,xp?6LTۮrny` ؈bTr藌{+.l.gb'7lFp cZCynCy2w3q$7=x-vbBS㋯Ck Ѳ|UoIlA0!h6HE格,s ˢHt$\Kl[t0gOAdD\XX RSMIc,t}+s.F}Z1.I!9 (CU= o92JNg>LMlIxPʸauz]}u. ߎ q{,|F_aX`ہ=:%8~I 5:3BR%$SFx!^An+]bҘ9gfP4?G+LrX>1xFۃۥz8$^Xda+޶OMdnHiID?:kHqmigf 2/ r|R tp8)X `Q'/#RdUL^-nFTxI1N.l cQ֞b(a-vlSɰ45% rSe(5a!V<Y*O$x{o0`$n>4:Q0g/Lօz` K~0G LgnPפgζ eRLsf@~ɸUCz@D1̒ޝe_eδyڋ.* vmœ!Zɰ&؟HDTP>JȾIip ]6$fnpS-ăǔMx'E<_cڇ7Û|×};dRVwcV~'=ߜKо*MdҿeɬӼ UC@nIݔG{ċ/Lo&d% [HICf2;Z wS,P`3x?ʴAyD̋u󃹚;WM3 |Yf<_IM4I9KޅC#z]䣰Rx$4åSn%i%J-AsRF$s%%_Z_9* H8O>0VBc_1=D%ɳe4I"LOHе-w!;$7BH\1C\0)b}ty@V1;f˨E  #T^>zVi, B$M< cJN]&wbηUoW-vZO+cd5>7;DEM(`0S M%>ϖoE|/G!##?Z Kel^+ecm/"0WS,\[lIE%zG7i6I]ZVBUwk&\Քbd%+A`?0v-  {l\ls5 i֯^бM!,p$ `8UMɝ\Ud]j 4rn ^n4=T`0Tg2W8>gTr|^m{aRCJMzDc+Wb@$ Q _W*%LRg W#Hυ3Y˜d+6=86ʱX5 d TKAmfQ"& QT9?9 j(R:lI@9 j'jծ_IGD T 6ӲD|u]Zz޸6KB!KiZ)Ms4٬ 1[cTU?4tɨy DqY^%TIUQ $YKި᳤ӇgMFgm`I#FCJD_3I ټ%e AVlW7;(SDmzXɇijkBjATbSf2oh3DϞnHڴ:r4e'2 "٘zy*eb ٜZG4+JoR/h5Wdwd{wl ~ KްPe~1n$bOo|D ALxb&ڠmz v("V 4 27,9rp&-XV9c$ʋiW nL}}A,L8@H.ky y}$G *[YN=,sZfs; -q:{q괱 򇜴ȰQ) 4? Kd rG8 pT" 74Dzgs_ĮWD} PɆ9-xM1Ka-ZԆd(M/s.Hji( Fæ9$A(AZZ0!W5,0CeP2-'rN$7b'Fj8:!-k&%ٕ %Ovwl;D ߃KW{ف|̦?P /y\f({afh aOӪ_5+Vf{Xkk@{3[FX4<Ս-h5dx5rPQhp9#(M;s;:I ɐ?aqy?2PQhD 5rz~T`Dž},#|3}ջJ`ʽO+Uv6 yRn+|2gt[?չ&Kn5l5FԿQkl7C9"Ւ~޾jG>:#<;. SF 40۰vMݴ\I6f=jPf ,;{S>qm6//mo1Q| r\$!q_.m"oIG,dN _wq!hXEؙd_`cd7afrBRmj^㎤w&E1k)GbmG WAˮ`U@-Z<&99x9DXW|PʷÌq@8E_m*І<@>1-:;’(/UWiGH{L'I1P3Q?S()zn)".gᰣOVx+7t}92u\Wh/k;h6R6l^%uH Vs+%}kyY菌9HRX=+׊ֈDh}cz:`;طA6n(H_8gwTm{2sq>{ˆQBN؀uqHҙ@1VC׫hMTGPwHAs-%8M0jhI6B N]M߆_TP$ئHPJ mӵqђͮWhH\Cq``8$B;(W55}Rf }dG_O)~{lxxSxU)jԖs˴FhJP\kȼFH?ݱn#zIǼ;t] `_7?}naO_LX9|$~˺i[I̭WnK'$b1*0ePCN%qB=`awq"9;!rsU:1 FIErK5^5y vgFE\@|OHc~JN̔+gmDxpy2?:T G2;oesO'}][d,խ_r*ꉸh==Yc&s#_V.)zL.Cr+3î rnNc$4.`bNvNxoǩm4#k>N'NW(e*D+(-YT+l, Lk[Yڳe*F6.I[L9lmlZxj} (?j}bOoEΔ1~K0ݕY =\l5J)DpRqW # &pòf0f*֊`JP*Wx,hO(̧3*{͖/n<1hgZtjd2]n%өH$}1޼H`xip[3L/}61Oc ~YfS9Z˃,∧N!>(BiS붬^[^|C; M_(&{{ y-l~ur؂"D;_*/@ R?$FJ&V:,:\4b?aWٛ$o(K'~$s!"-tF k/_qP=&U?^$ 7ԋ;Y GD!F2w9Gyx@qd o]B0zЩgXW%s*D9r&ߟ܎&%y&k{1y$?uj|m\;NEs|i=]ZJPc_r`uq8%VSi?[c#t3vuf?MLeΓ)Z E}?xcyv& 3`Oѥ|%c(|Uo\K?g`x8%s5x^<Y*3jӨUEw)(ÙCUpl; MJSvۑQsXV!v, jɖII"*-y0ĹkzJF`eՂQeqmi$DWez7ur :tQ N~7B=JSLraoq'G.o'Aսgg.ӳS %^? n]~g$W:jOapVC&GLTS[}o>鍻V'JM:{I'#)3 zS€t]ܴYA01(!?{gI0!SuqH!Ga@40DCEAz<+ =rReT$E^\sEMLJpf=ߑ&l#L&^ZuVy ,vT@aǪҞP/Ljȸ5;>01M+D^B R1K\n4i\P4ğdO@44 ƞk]nh_(I|?3ѭ$kncpr>6oV@M67-sd*QJA7,{ \%ZLuvkYn^\8q&Iժ )mߊ:MĐ@%勯^TTKY;3Een1tT&^vLGz.t"4IcF\bvҒ7BHdet7N~>Wk3 _ryVC7];"W:,΁OHt<3['`.dF jHV|5eY03Cot:P\ ְ`$cuWH;6NdSLc=Uu-{8GFiP˄! +ǶpꐈfwtB_9NmMZ*}NN&ֆ#Dcv{oC`=C#WO͜|[5$!ضxDJJsP7rf/c8bgw(sM9S`l΍%I0aP3E=(A4bjjIc]m/a`([ :|noR{( _p!0 n +x;Uώ} #d&Bm}sˍPi=Oqf"?+'4DUlGb8T2'a'6ݘw )2ADt8Kf5l^@rh hI8x:yV[ z(VE{f73eP~Z5!o>&/` 6CVwʞoKNq=zKתqdm;rzo|mQAW!%Cq sB*^/58Nē0t[>,D<~OAKvJ8!l`$_ zo # ik0=ttE?T;?βriK/ԼWmܽa[dtYK6/fyJQ0ul}ZU HޔHnDQ ӧ3=.eHƾUhRPƹZah}/іHdNN'5g/[!g @F"mR^n)& !4዇d'Y"4IJW0D&$و6)6~ݥKf2qLl\ ƈ}vl'O&)-BeBo]i# T !ɳ{Sᅰ;imƣN`pW7qJ%5;y )FÁ4f+տL*d{KGqӔƶ0 1Zٓ! F8-ru9oPXͫ]l(J 08J&URc7udEѺENHNed~L "eHs{sb '-$MHzj>H$w|{:8Z鞊5t 5WU<K9R5('Q2rn3Bex& ~Vաֻ Kfy;b~9dC[iƃTUL]r/Lb W4}Q({">KN:䬌Fk[;k* r5ӕw@ĬzW5>/Jw<9=٭(ows@>l(pV7 0Qoe4.( 8w<Sh8lXչu3y5X?#ot Bg N!%1*bHO&kRe)tEƠG"H66מ{v\Zƹ^ }E$ { 䆰s>U%Wdi8׋>lnsIk$&qlBC)- p(R}%0?9BEPfzmzL>KPYӛOo?6qehà/s6s)nxR٪<.'–5%R^.ՒshcamNhvs4S ;Fg bܩʰX5A[G~ ?vV1Iedez4q $nȘY*2$.y(I OXWWt@D%5MܞUSvkW\j$Iab@G}J]qssQ09r]7Dl|u+DķYwrqzP5k"xi PXoC[]1 $6~lUžaz4r̲s,6g7sUvX;4oi4\}1Qah^5| ͨ-$B(&$[4Hb]%*![9F5%:+_CGHzxe Eւm\s:Y;+D;(/-s@ujژ~֭¨!E4nӚ.zbR=>\8VGd4I7oƊb@ޱv2_~$ex k@Sꭏ)"x++'.*V]MrGP(^@5?.*&%WĨ8 Z,;‹j7UaW吵 s?gsk?xF7Gt#pș(^Xa>OfHuW$tq\3TRッ&GDWB1TM}r".7S@;Ϥv6 +-F}` c[g"bc6,(r)S E5{R֛[^>!pwz:RI@Ɉ=A-9᝷GKc*3,-!I>1MBxnC̭ݠFET~f:lE^ wh}F]Sɺw5SDMt -4@QA7%3$>P {l\p٥Cv:?iTOb0͹1ʺ,| /Jdh2("zRl`z ]V##D"w&3g6Ay>Rxc CO'cT0 2њ>M9q* O[Y=U?%?46nt3Dw{D]YhSֻ ӑ-9KX7eE4Nyy p^`\ n̏X!伙rߣ0{fWG!SHF_v^=iJ5xԙgI4҆C$덳(V ϫBR7pEZپA }l,[sMac5UcZ7-Ό}/T7#$kL e(/Fk +:G AP=0V*s2R A|tgОW4<ck!ީg}_O>s~mn]˾vPG#_JhꞣyCh2Y`bJ$=XѺ *NmyT;=Cm`er~wj-dOjr=^ƕOJ [*3}$:@:Z4 iI%热F]1-5Ad}-2PVrԮs_0\ QPb-C7[0! nUCŋno~L! )ڛKOckW_qCHaŊ(sOJ;] h[M.϶k#lm5ȒS'Qn0D8jo7s#Gnd&Cce11uK .$ޏ[da?@5}n9{N CP (D1SQУ0@3PS<ųܿ0۟N$uɰR~?qvSaorþKbnh﾿G'M$1ħƢF'@qAKA9d:,SHl׬Fp fMo˪C5*sʣta՚F}ʯ:|j #z p;c˪<7hKs;jޥp-kR Qo_ykK'bI~FW&~F<75RQEr -ےL _?Q¶]9;&Q)q%K'|.! qi&~|@T"K8`} o"2M A1nPg 4?H78dse<^ƃb}M#价0?{ʠSAڄp\|돚ʔZ8khZ3MZkh>lMj|ei T;aː-I"Z[PsÒ㿵V2) FY0$>8;4LXcn[ƟX{oҾ "jCN}ҷ,1ip!2k:BHUhuyj#U˯: āiiߝO6_֕כ$9+&눕$UثJˢ]17.a|9y]q¤t~1Y+13I}iG`M0mh'RR<4V{T<cܢ?Sh{-j8_"'i>*H i8[k(XKAs/h+;|rڷBxyrt5& ܬ~UfMW0,xB3ϴ<6 c.W;g%"J!^=F_\Kƚ2wv6lbͦ;Sx eNe :n,%)_/`\Y&Tk~}fƷiy"; IVmqsmuZGzuo`Vɥ!2IQ򱥶0s-ۏkOlEzo0O˩wJ9:P-HM ,D2ӿEYY}uC%"r7\:3bV󃻓)|`tҺm ,ܔ+)el#{;-HqЕ\CG>CzsCk#ExZm Otk-F}uI ٵ =÷pS@Xt.,2FiCpmNj*PڲQj fzԲPBF1h;t%CO=}#T NqWJPrCXqCi^QlDOҬaLKCWċ ~ =bYJenʵݟSx朇'Bz쇭z(I9ST\B ]1S;1g⒑$tA&gp1ltB!fC?H81v%559И5nꉼXr/I(F\3#&h& 0ѐ91>"(pvn^mǻ mxb{1J7N hSMBo>'fs)қT~|&Uw;{C:DZ䛌1*X p2d|EIm@^sݠ>i<фcحڝG F$/'TMj:a6knvHw-rZcV,;SMqm&V[;8q*-*nk xTT(Bl6p8ՂކG.@C\hqH/Ř<[R0}X!ra u;͚f?ely ~ި |WjCMC5]䔹[*ի2fKۨtL6(IƐ.S۠S#'Dq>"dIj잆"vcM _v\ Q4bS1GυB$ Tj~ɣ&:n$()ØW4p0+ݸ# 8? ; =~*}XSCwW*T%0|Z4J+LehN&(K/6@#r kBI K|+E609zqh?q&Z[pazfC*?Jk0l4滁R2(Fԑ/6k?M+*T+QiITra)}{R]| 0'^WoEJ69lոhюGD0O$[z(~ ¥&\8:Ff, n)iGٴO+6XC0A6;PHN3$uݔԦ~:d$[Ϡ.mH絿a4zO&Պ bѤ~:-os]"W68) [ܔXl̍w"$F:kVYU* p)d%g\_t jwl &Rd%F ͻOU={eAGйS>Pÿc)5Mom7T`5!S|[5BL&-/ 0E+ i{ȼ+Bʽ4 YZֳ+*˹B[K$ӤH߶Ci߭SOv3 㸲%HNhLӉ'%JL.]?$x#AH4/.9}M1@N ?m)PpC~\[vaYT)6Tm3d׽7I'{BHUvmn`:K+7kBD~WmIYv9/5\n5A=A*oDtVxL *Բe_IH?ղ$'& Mg<RFJBVPz7~\F =(T.12[^{pWޤiZqJo-Hd-8"mUůŎ6+|-v Oo.n$A)K`Gg ȴ§řх,ҵZ09Ƕ[gC{07[3ھIV7pNf3hkbllp߮m/]נvTk~[KeВO}|\I*\lk!,Sݮ,1zF r{x$sZK=#qXÎG퉢*#:knGQQpDiH!9t.tpЅ.@Ѕvw w iϜkX{`g[JcNC},UĂw3ńii9(/rKC e1+eU˼d=1(lJMXn jP/bv4ֳz$@ѥ > Öm>+hS` ?/Vp/: ;n֮5 c 6"aFa1 [MO [;:DEHT3/g$0y 'U d_alRP:5>#E̵ rR66|&Me&Ѐ _vʻ'h h@ =PK͉nv"*GTJIp_%:=gZ{TK S5*c.u;ƸIy밌xIUG`(-&:UeXڜ[x_w܋X\_A3z/}d,H!"=IG9W{7H_qVV=I{T]t$b drKWŌ&G}V:iNdo/24~#[=k0uL^I d %UY 8F0Vt:PWg3TtNt”.R_[Z|Z-.k6ԶN= ^W@UKT,T~(h"$;g{ܸRuPW,4u3+wh՟R2u`LVX*B>ai}1vk/hBG@FzVT_B-ZӝX,G(Ѭ碁  iOiT4d9>? "UR&JGgpGTIqAbsTT[\ÎE~Y(IfK;~4ڹ{sy \T=J(ܢaJ OVE-RY")ϔuuh$a;ZB"]~;Ď e'(hc< il+TtsGD9Oz0pr.LD#&:]aޢ)5[ n+6HTlUusxMhu;f G@6~W;Ƙ7ðzˮ [v VPpHMñ+#B< 0{9=wȟSz;)'LJR.x(ŊÏsByD8:_0 _] nER[չ'&ҿ؀+}VC%?JUe.t֙1= p3 \@ކgHijމ[}#aqj@|I&~)Y`hFAߨ3H0kE(!A{ҥ(h*4IE,>nuXM$=o9~>fU;_‰b'o)Na20;q ңOt`>q3vZ4kuƝέr?>.A=mujV7v0Nx}HJV!_{ּ.olQo.5;MnZV뼲;?s*J'd2s_]t΄qi"02߂Nw4Yf>?rC~MK=SiߒV3[(-0' rx @o~OPxБpavcgTʰc4$_fD+1qq$e3#XdaZUvX*ȜhiPN_3kiTez}fB2U$J t*ArUw^>_{_փejCMR}+?}=g`<-.)eԍMY>.$1xWjʚagGj"1F03tVe` C=D>[jVK=4t?I^c\PتD)9ynkNe`F+;fz^|᠉4.]2f }|h!Vqe8is8M6$3"'M)zV*Uv2pH1TѸkMqB@ŹMOjxm(I!Aj gSϭPbSw.!Ȳ89ꞧ EHZ +>^jCpm]HM L՗(HԄ+WDWxG?u|SXӆfjq#<ך^۞eQeګ\ p#`-a2vf5Ē]PXA|"D2n,8#Y#Gםq=nM |c\ %ΜbMIeZN"")y?>0N|L0v$qC9%`U]ZPM5&swq&F ܒ#3.:-6I3f=oQEpD0~l_<}9F߃L47j[_IyLVNm|{̢:SӑWfETgy";:[M.O.M* , 2ҹnWqi|R$kzh!ɲ*T7zo^ѧ.ϵ>I=;1ׁX2,VOQ?{%-ɘYl%\27J|@b =4y:Cq U_3db\塈sr90o\ 4lY_"GqzA]~5xJ+@Ւr(DSߪr[.%Kq܊;GD^ <ٳr"z 7,X:gE4̿Xˀ)2]"J=%,n YL]-(ϗrZJ6@*REm)7g@mxicCb7TQwO7q mQԊ 80)uF55+ABTjmT o6v{*^`m f )4|ʇ@oqyC]4 MsǙgqՅea6yK7"}J:sJ߲9S|ZryDa$= P|}-:7vQ.9R!\"ga,"@]4!Z/'jiPsy"Q8MiB);D^u1yW`Wt6:E 1 Zvr+T7w@f谪NB=:J%+iYNSM %{̐@= @];,pr go|$v#)D!9Q4:5u5-)x5 /Tl}ˁ dFnT^׿Y>lt-^ɖIwoނl9/;%z8e}5K 8QC#B9&z*.~Y>DnUڝŔ:5muV4yEV/@-('Z-ӗ xI5HVbgpqVTJԕ"%o78#)LvޣN;Sʢ7?x 5`k2ËVN([D7JێSJzr$LQ/S!nD]84zPBu"u%7{q'ZW?\1B@)( 3U[(Y8sl;ʢ(/9uqDvbQID_]6 iu~t3=H*Z%>rO(!yT NM#NV.TPOp֒ftK}Xt˕rD?̳>Tm"qF0p$U]OG Z;-#y1J9na#"/8IkTJf>a2/Q[tЬ{[1(8W'xw6 T-mkz!IfG)Y)KA t}sؐR 9ue$㔹mP'jVfGLS8츯8BؗZ31Rʌ+d+hG2c 2*%l܀M{.(p f# A1J Ճr˨e{JAZSI%W0_.^ihn:q-dqd~-) 6݅ BBIrBJ/u 7) ?)iů| 2U]95GB*C%+dSk1 ň7k㘱*Td1P+{ n"*FF=r0T!9LA؜daÞ,ob ba JdI8w)x؊ d⌔|#paTGr#v{5k&LptGJ$!mSђLJ%#vZˀ˫^oB#31F/<K/+IuIw*;YVj<(\n32\@g?3⇈ brC4 ei*"bT7URmEԫ#Ggd)v?vwN bm?eV0T=ƃ^\fXFu>{pxvnkND6VDqg[G-e"Ұ> =O(Ǒ\%Q͖@+gSR.~$j+91Fh8B6wxBg TgϨ~Qvռ65)hlFھHn|h(@!1~wo8=>Кш_J2Rۉ`s5%9ߖb__W~BV@IxKaFb0~+\q 3::fbB;lڨY*@ʖG尳ϳyHrvm WB3PZ1RZ$$1Q)@&w c-L,j1m]n86D93yW w\w=7r`䧇(ɣb%Y?B!``j)j6Ӥ51s6h|Q/!PeYqXT-8  " ' r7Ǒ>gv PCTKQɽą5fS-C{=yѮKZ="֢0'[;YSIfҡi1yŋ8m8ewzi:v+3o(A<{@ԩNU9UB9mE9H@ROm’ns)ty)4d˜plbeEz~!w~>_ޤԉhRQ2vY^K̍7NL]pImT`Y &5zJ+bc*T(z/[կ⢩$rjإδ]LaV6Vj2 sgE;)N\ D@2t"SAB6*uMcZo5Ȣ,JXIF-,XPEȉq{<(:Y!5)m 1F\;~HC=$@,$:$=Zꉖ F٢q=:OV= \" qh^/l_57H<3?C ud8DǶn'ld{>fE}Gfu )ȉ?כXw # o7+;_bԈKe b0/bD >fz$iL/kxդۧ[k-T2[iz/!FqCf8J9 EN "!hS/-#+fX22Wݞ1$iBr=z'A.74գe%SU}DH7 Npuril'F@˛VW!25W#w.JrdWt?Kv1z-biN.r`lj}e`[mA. r|M_Il_=_ _%U=s4xfZcͧ_}ZrD*Eͽ?.Oq٣ L nqf?yϭ\UT!k/ #cϴUnvl<s5'SOyBB'lzYn;"͊ Ņd3UmOA[ow˂2 & TIau,.>&7໠Mk}1^Àˊ~vRK pIV-<AOywKz9E>ߞ TcMᗏ0xb>cgl<YIԙ*@M?AYaH ?c{]!2lc\BJwboBޟ}L@NN9pRNv7Cw,|%ߡ]o¦;Ŝw֭ޯnCZ=Q%bACgBYY e2?O- gӠc+8?kѡ3.0bNp:E0_EV93Y}usGk7?|[ӓlF$¿ğbV )$qJRYhko=u*d}Vt8|O`(Âz*q h ob|bmdhrz83={KM~ǿN4G`M\;M:QMbpڝ+: 4 D7äl gN&S{!#f@yJӸPmjp&\ʘ~v%4|rk"8ce1dlرtYuB)33UOBG]QICᏥ,-c;$ID~($K@  &E)IG eC#4 !jDQ]:mcp7xP5X~tVw? -(]S6sm ]Ovwpdto c0b1DHWG'W\*atΰ\.]X8D熟&&|zmɾ<"ndTbVLW`Si?Go>iS5Η~G&3vvxL|].&%[ ߻-WeT,2R+`A*^i&|`R^[gE\C`ۊoβ Y&-{ 1a`Zk%yZ,^G%4T8ߡ%I %;sX"l="?z/rE2E3cho]rtY݃Å0Z`!3\rZywGwwɦ-%laeHrΔ7^11 #Nٿ8ZGi2O. 'l0EC3$S(8>DGtһ:f%]cJHPFWI[ q h=U7\wVԚٳ\ ̢E#蝗E[< ?׺+ih sի?\xިjni2kFmX /'bLuPJ%(FX@Š?H~: xXyZv:KވM+$xsk|=x~ 8DgTr2XSD"-Κgw m΢G)V`"1='✽/Ҟ8A+L3VV=dnx 2@0Mfʦ(Z^AjMo,9l\ˡxY"w lyYn=A=*sˌ9{crmޚRLÕ=r,#&Ev`ʝRg*$fڴ?;i&p㞳 bOjT4ȥ.sIou'究[(ǭq3A-ws%̲Eoр|]hN3 Vea9`۝ w`?)&;h`+:dUE>gh`Ry^W-dU$O['5!nҮF}bꅥ Ϯ \ YI_&+1;2+FƵ^1 { %;5Ew&u&TF9 ?B*"=3++…ʔmLoLRso5Z_aֲ#LGْSr,.0"@Q>*=K`(bs[GV&}*8$Ж5I|2h*4$ԸaQwWJ MW<)2n|^Gr˾OhZ- kGDҹ.<4F¢Q88v; Fk٬i0؇%н&j&6my IڙCR_OG>WZlc_ "j{@z#ix g ˤACޗjyB²l~Vꩱh=?N)0%SsNLCP1k 2^'q;\bx6 N @9q`^B9GӇSd|, XnYb g!3cZv8Pq x<^sxTy1ؠn[[e*=G9AsIExJT:|sfz(5%}DG¼ޜM6Ը]֯h\@P$L0XyeαtG?wS?Hߨi_L~N ao1[b $ Ǣ*Z"*njkX.ljÁ~'OK(Ir\g<1;Tq(%sp"fk/il A(٣.l"dW)(_,0%-حӭ ݊8nݱ;}l6bǏӇֲ[u,`XTL|!y>AAhLCC70z٨#llHMRRLnrM7tE~gGB~kJx"m+s؀\!J'ݷ q@s :\EQ٣ж |AܧOU-4REf/*mT =Ļ9\䞨H!KY%w>3⨭ն`"pjYͼXNacYTOHI:x*d ]:ez"h^;k]r7F*\gYzҰHM5:jkan]&-'}7oojDCߌ vNS=R|:_S7γ *qH& tҡ ±3ӡʸOE(mi=&@ڵ+&' &{S\3[M;^}"D_x-^{X/BϒO!=_-O7 #GZ3պ-J#42==Ԉ/ > dUb%UQK <&~wd5;-;4c^ɺK$}X*K~ F1/<.y@d+ [Kש,RcFw1aq\=}0S]H #K(8t G UoMFaC*%}) 0oYz,kWr>*I1/+y0OpvRdV$B8y*|ABilpdOU"M1MWfu<8h Y4R􅧃rAL=b)*h`kP`k}Ac/xYI˯TC$EueDP tT`Hhr+xm!j b{`eLxsG5@ IFF6XF ,גxyTʱvL6ᢻ )͐%oNW2x:n4MfB::"T| i U.?!:vV/XN2(i._e#Ȯư +̆8s^&Ul5"G8@L5gvzj, g#m1%5f]R /-ܢQ2(p1̀Zkl> G$K'.?wƛ4xi>+6+HC^Q{2΃qבKOrN\-f1Ȳ/d\}_zH 2 ټ"r:@Vls%ҰJZ¥0&؅ \h,L:5 ]>-J}%6a YKFG YkX7aSGr$GjjкcmJd[7j|`T!Mugt=TNHXK;Ғ~TdEv5pE"qo Ӛ1jc">/'F2__+#L#0SZ@ g?.Aki,OFc &Ip1 -u yBH?Fb=YM1m3C:'8ҕfI… qBKkzq+ƴؽZ@ճ;dl Op!%ږI)&xk=sx@av>§LPz_֕~ض-e,%eLmӽvTDՐ@i3oy0ԧn[q(^3W{d@H/M%K]yqY|)Z3 WU [j>HL֨͸uDh.6?xpFO^{ R-IUeN: fZ)=즱Rc}wZ:fv?צL؟AO*VG;0GK{u}e9\\%i Yn\AchY xì.Aϩ& !9:vo,$Nô6Fe:? #X◺s*7ZU_1 f9:nnR =ka(&5"JD4<دՑ54DveA?7At @20ܐ?(#%_WܵD✐Y%p\|V_p4jULʟ*xo{5p-rOMbƐ5\Q hҪ< *LԘ v:x1 $H!qC3&0\lطHW#B$P(AI2,Xe^s5ϒ'\KSr#ʛ]u(.ʲ 8^]-ʅЖw;1!^{CQRRNKCpā70;^b*7,U 04#,o|ӳ,9>/c&gȟWªjb8L'CMCo؆K*Ikael 74[I%STyOJV!E`:U' mv.Uz X9?KI1|;` 3^s֮.X Az"6RMd MWi!Dմ.f m)Du:ɐ2Z~ 9i˩DؐY bD ,#a-z\fR]c@+Z{a ]T& xuOe9}3֖ҧ/g;'?i"J7& F˔yYpWVH$OCUu7<\A&JXJ̬527HC7yD^ %/jR})f=|hUتW%cKe=2I:WMD4K=Z{f7ʠli8iAYmclf{90H>i:/9 f0Xgw[)3A/C]ܫ=B זܾja,/O==0oj1kpY#U\5i[z_N5,DEFIlJppV%G0uϗ>] 5t؉ lDd]:&.#U K*qtL2u"Ó$ n!_gyozKe-y*s8ݤedYEh;2Y?tfjԺ&iHδ53 H0} laPI41RjT?Mkƒh TL߁W ?Rw;AUx9J8sRgWcG$NQ <rkmHB-݄s^U؅ױm2U*aVh[ `*}I枌o LdB_ o̐3kP$FI)3L*'ϒ9!;adx :y>R\RܼTܘ!o9m^NQ.h;jmF)p&Ʌ}dd߀*+='|:Hg4cŽKK8։ryܰ~ήLKoLIh5E vzuK?3H2_XA \t=͊ j7^LF2d؍0ހ* `EzEV?z!6'?l!ڧ[#+[| tM{>Pq= Ho0 ۲k!$8tz콇2}I4jGn.|eބ!jDY7 Suk4'#nq~rF!r] ]':yGz".`qr28iEEK2 %T(Q^ԗ{T`^?)Qkj*eҪh%iM]# P1S#)u%K'@I~&"/`aEӲX ,$?P% (+PωCrMo<սp.SZi 9ʲrۮTy;@CU:{( ja*l$ {`4VN jezVfH &9ʰ>n֭*^_K^=ձxjݬ𻁹*wDo,z"ެ.@ T "``(>4rP ]!~J;lgET0*L@۟T A~#%".[8\r(($.) v"nBT+sR 2Ĝl]1Wj/i:&JE[,'ѓ_ܻxmWN 9=KEa{&p-xdN 8 QҐk MMot&\Ȇ 5ړcO)3\=Tj5P"?.ڃįjՎAw1vV&<26 T(L@x{qG ȧ!'.LJԢՌ4KrM]Dq]sD#;W&`H`T)h/dFݧ? f]4m_MaxBE$VճkVA:6=*CfP05djݫT`s`1,S|եM_1]Wa霳61J)G+a~prbb_E"Ne#HZ8O.y&rʁsFN-l*A03-T[PP{^œ b8±F"T"R,<<|N۱rX[}agA+vo>.U}slBnCb@(C*J^AJm ^xsh(q͖N`Ծ Dvmoy?}d:'sX='}X&:ݼ } 3­e htV)gH̥+AǍ'0J{حmɁG 9D0 (3]1}}PjɛĨ@=YTbaYGN$>Ǻv5e$p@T{Ҩoy1LµzP'wI&_$mRdUMVEM,ڒ>\pprv} (׍/~J<+kYY(: !hgBA%p.8_Gp[z|$ qRvgU> u^$& KbRibhΥr~}aϺXBgMF$Lyq$W–=ѤDLACmW9iv]ĚhH.bSZ{:A?4M=Ӌq |!N-q녾},951<8lZ6 ^QД,thKˬTxP[DzHaJ3Wz; U>ͮ2|ę~L ͖Th NrPȣ2^m`1S~~ ] H0ڀ[:6}LG?z<'I;zq`}WVF6 ?jmuO?eDž>HP'bIyO[/z˄8}A ][5 iǡ߼B@z5kOQXxO =Fj<D1wK"WwdѴT5ݲoN5*&b Fh?q#¼Lggv L.EcޛgA ; Vg%K+xrZe4tO%C2s otN)0Ց?G3&|V [[;w]1ceIgfp U˲J_sO/TQjT!ypJ|,ŷ Q MZ"YXĩQ~0M+r/x?O'/r礪;Xb\^"Zfqkg̟Ӳ4 jי^.aK%Mw *~+z@_Vb`ϠD(\7Z;W&hᠿ|C?(%mxl@ii*fTb"{4tg0YepN[!`nBlv=aX=ga 0H'iqvPb84F@ 3bkB\o3mtsLLA~ #jOAR`5գR~7]NF Ċ8Ps:!wn;&c:F+t̠{?G62Fc:jՌ!ոy:ֲ8GC?R+f5r2wa)և8)JxF|uR"l o:f@v4":'x/> gqkӮI FFRN/sAfdTpZO/ߏU8'aBpV JiR@.eh;wNoatYGl?0?NI U:еl-l3 5@pQ̍]`F: 9A؎`9K}^!**4+|6m99 Cb5gT~/\OsMx[7W mvh4Y.e*t3M3jȵA j*)tR5:G\u\]*[|%dlMV1%U6Gc۩}r qM1r *Q{w$9 _#^Ac]1HAݩzۜa\TTB(k/(Z.)ҽņ %.(MSEt|e:LlYp@-H)k@|yYh" sM<{QA""A+3n9Y'.M^{t:hi{3GtMPHs#~~A9%>(@"%P#dWmwhR*҅dIV{Vi&BuF_MG<<AC]='ek k~vbѹͯ/B`u86ӓnq Kx ,5B2V7핞Er}܏M.-(X!N^] W*>Xxۏ{+~Bƴó&Dj:ʴI zoc1"Vkxb]dh]!3kN?⟝T&r1+}{E6,6L!S selFCe5rp W%`6QacԻc3WK4q,;슜[7ݔ tH4nز lSr¯Z;i2PHvdĪf%,h5=ٶMΤR4RVb A;/O/,\?59NQS)DAqK"̗Bxh9Ulb}<4اe>|b1W^_%~P81ALJ .hMXڻ^;䫶 *s|,pv;;"S#WBhQ;BhC&4ʰ3$f;;;l}B ;ӑqF]d`i銁p0S#MYٟ0"cm?[X%-&)WFE5~vww^ukⲽ^R1T`pS|+^ںe(&ueNa2{1]&I1 ,TB_z4}DW95DH뜹ӛ;^/E~9}3pTh䘕daRzdWnbtY z-j5ʧC7#dt\)yڃ+ (+[{㰵iA !7䊪h$bl6s?cn[mHY\R `WOKS"i*JJ\$oMVX{k]~SXeVK$Bj~)0+WDdE8G06t%(5/uZd¢Ⱦ4z'?z&$0r]wzR>,3Lp 4}K:/nuo9qEM2 u8K5/CoU۸^D EnҊķҙ6  ,Ԓ((Y)[Ћ[_Esй _=I >f:\I19+׽9(,Ȭ !^@|f~ 8T#S Tݸjȁv2OS!)tҴףclӢ4 Xpi2i] -;O;㹾9қ )9kХ,0vB ud2Nɹg1\٤9QxA%$;WE Ԣd:.BDh롘ZҘ]8fn(;!K}qgM|{jJ]A68Xq9-:$]2B~\|y]j+E퓲LW!"W\ ?.2 ?ey`cֆo)9 QLuTe~mh":~y nS HyY#%h$B>S^sR͢_?|TŬNQ'.Yj961/F(S?4i +da6BPF IiL]51>ax#٫Yٿt1(ùWvDc h;ADbwH{v52E'p y7N&!qVqaZoh?{1QatCG9.n:gƓMþu8# ~'A'7jn}UPVZԑe}^-Amc-'{H05pҝ'޸\l2 9 _{@)KBb0l rlziעI0fz}#Жq^P$d_*ԩL; a0{{[4n>J 8p[0H^A~7nOX^F^'@=&JȒ1KTuX0;n‹vDZׄ,rݓ(p䅈NčuB4i5UiqI.ˮApQ," to2ƤuT7aBL?vb&4ҽ1ɔ d~gM{3A/fW}LbIjG.UoUIy)|l sm jwgi#~񪲞֬Jj)CjX6H9?#,fK$^nVINUEx}9rC/##Wgф;'EޘTg }Vxa0 ?NQßFGW }- Ff @[غSLً1uU$8y»zTt COΞ+vٷϺO:egCd%>h?A;^Pʰ!u&үRu} rY!H_U0ΰNM/?%'ݨ G"]iq(N@g.귍)(xᗶj? SBmtiTHU\f5f;7>GHaAE{,ҊיYԫʔ{X42w%DS}O-)*U!?]̟\oX#JB X+ݞӾgOXtJY:F{>xB7"HOC\N6ݢҞ4Jvm_?qc!| ~ې:j[SrX݈ fZFTT N`ZMmL%GΡ@x7j^Lk `ÔMWg^ФseG (kc|ki5 |zxuwZ DDs,$3zTYgOSxIGЋw 3cTU{}r~kAg}S&@5^iyot8|߬Syi|f3v3G\ؕCi?bA꾹#+uAxnNҀePUcRn`E{[a:s hXX1U|(')l 2]?/ci=``/tʱ{h@W׽tS`86٠A-|0+^{Qc3'܂GkN0DdE7tOFLu;[I }%?$fgoDMT.cf0Fj8zҺ,&,1ㆌ}TߋVuMa zŨ5*6 4Ԙ vH_3ZN3B,{)&k8J܂.ؒ<4Y.g/%'3EW i!:4)tHǡ8 '&x .EC\(H ɀI=T(L0z>q6M&=&#R*-3!qU;]I|6# :ȟ%o{E[Bɍ:8r]Efܹr"u^Ȓ5#4mx_m ސ_U f@E™],ǙTk#m^!|Kc&`,=Y)b#]03E:;.a#gB#guUu(Vl%!kT(ӯe&Bސ =;)$szLsćo]O6+B,o[#LiRXrC<e!&zh-`=uTN mQ,#qQ:J*%t:oٿB̉;]Вč5DgmQ5YWuy+Bp!W4|7}bfbs:]9jWr{iQ*KNFe Rcݗdž(՞NwE <|ص#p&x-9 o 0[0 e7LsXgXW"; & "I%/;عϖF(;{vw=q/ex?z:Rm{jq|!\6[" kJj|N{4s^-F\$n]r׳-["&_/:s1lXSרG!)<- Vl$zK>,Yf6&݌IӾܥ? B*&jUNi }\1/o"V. {qR~y:UR3 h;էE!!K9-O ǝҞκdkzovJI5q(aC Rg4H3wb]3^|X% (ͫɯ Qn*H~0 @@[kn>q\e'FS[RTnq |.K"䲧/DmeQ79+P+zpz; h^`ɊT/`5c'N:dT +ʔ#1ѝ.L@kr?%9ph5VwQĻcBG)'-|FDu YGS;Xd+[)\ȇSζ#~Gkӊ+04Hg wȵ$2oi!șF&*'coԿqŊK(]{ -Ihq`Y# æޮP|*᭒-7^2VS1 X)q1^yiX ԇ}3<ލzv;e @4؅]EOl ut 'i‡[s#'rmcgkF?e[_ Fe^d wW|S<ϕhu!slp/5K+?5JJ¤Wx.7=QwBuoy#BV-4aM(~D#x ZE qRԋts !h_jc/3L-K }b ҃"mh.$->wt~v[? L3])2qһ&7̡2U v:7_)?A*!jjX=QY8Q 79T# 2(28&f-3y)@k&aJj49'1,d[*=&#Y*<⦃ e4Q]ZО k%DW%XN`&'$)3]%ә@V)GP9tf'_!h uԜ決ڕBvUkb%h#mb"8?~xVq@שll΢@Z|p 2q81SJT7(`9 c@=w^X9W+pD? V;Ǚs .Dw23Sŵe .q5HU&{sR]F>Sk_sq>UL <xsؓ%;Vzt+'Os+i,zh yd ~_V: CrVAC5KiR&~Zqjs)y~틌WCNq'D*!i0G2%>IŕX0QH80{Vjna * N/h 3\0 m5r65Qfzxsac ̷dy,Dqu{3ˬpm̮n7DAbäJg#r$ ?V鎢>GAm% vuhÿX(7wS捣(Yi'PGz(-Dck rTߴj\NfUr;e3%q&ϯ >]Uc=Q~?)!C/rB&k?l SMգ/そ1,y.:.Tikci: w`6fM!4vb23Yt%m _+B)Wiw<%|ϼ[B~[jUIY~zGH]kݲ@'hx1 -gN`(z9q=2j[Pڴ`'GiK0k((klfFWp5#"[-yHžG :EsYW?]ڲuDn-dN3\ҧNY&gnqI*Q+MDy*c95fUKi*WW#I, |ȃKr@Z}^i$wTCP~^20Ͼ*zPd1/:gzrq4 w3g[y[wJ{h;go { Ahyjҥ 9 "K㩋\& AzѐrힰyjY /6C1'?t..4CWh>s{jtѣW vyiAm3Xn2kﲦsUH&Tձ_VA&.SxXk݋S+|n.{]{"H|8&*k.nn q쯟! 0L"](HDdHFIďz`hm𴎋H3Sg7fcVJS\t:'X&x_;E֌]7w!5"2>{g-Oph䝰}u1C%R Wu$ NLb,"[k@& r(|ˡ&c#.qlkͣ_K\8cr$63ڌ^j ^Ř/&ԃ"_mQF V ##& *(5f}|2蚯+FB]PV_h*!g:Z!X ^[]f6k .b9]ӯt F7CWl%ʽw3C;J YJ&IsLοpaA4"c[||v0xĐptznM6H+HC'X 9ig3(PV|IMLT=~bpv c;”jgg!ih VUBK;Yy'w<R<G7L%jo 4a)eL##rsD0<- vi}V{%k-G^̿ e; .$XʝՍ-_vQ.VY}lD]!U4V@зbh֪ij-zm-,2_@M t`۬ޮ7̯ujTQ;" o~ZQ*-V6au16|+_̫7Iݧ c Qlco ~s0cU03%kӤS%BGI$?ZJM?wߏR%B1"g"_CA)=LUi(e)=,?,ϭKU\XdJK`Sdw#Rݞ}.$xӍOoY%Q|gxr{iɂ \vFW]X{03d6/roa} KxmJ7>bm9g}kQ,>S9ΠVB*o-G}R--, e&5YoŞrc*"pm?j+]Ep@?}Om;xtL /EXSWDRuKq ʝ5Ϸ$-l \J/ͪwUSSg<Pv]xHd3@ hE;@qᶺNO|^)سJ>,_8Mېq r-LAA_I ggqfӋFz&, ŕ EC-.u7k8 xH 5K\Cf}>mq(OYW2 l (Ή!>fMQh{)>/Gԅh" `?g6qIZ Ao;cŲf_eXylԫX+PGl4,{1N^VA B bBA}[OPWSF䚧j_-E]/XܻEayEZAO4Ӄ7p9haV7- v^] +1DԮ$e˃“ {! H揁" *:Mٱ[(V)\= +F!|'ju"3C ldt kb :*.#r |4T cr:Z?;|חq!+̥iݓuW _no"ʋ_1Y"D WÚ=\IۡR *)k)gór?-lDe+8wkmZAHV[|\-O1NMB-w٤V18}p "m56 0MͤϩB4#Bslèƈ"GGR{yMهNMsps ^y6UO"u;jEFQMkaolĊ!ɽG0`ښlo6ePkVp4  \!z-~6|և@U%aU ǻ}[U>+UMqB۪܈9R3>oT\Z2%D'fӔR&.~Xd&Ai@5ƥ]^ JdAS&=jYq?>`k>v:ϩnMX_<žފс-q߹\К("hN75[5Kim~73njŕջ~#9qAٸn!~_ml~Y0D-oRG' 9M!k'{s~OhiM${0i!Z)68!^X>}LJ*tߵlHᡅ9E ' v'?^aA &e z''zzs"+dS%Paf@~`:-g/$R5 ;;xY&pCC\1v=!HK+KO`^ݼYCW^bJz@ct5mR3?=$hb& iEul#!|}x q02ED ?+ IE}M+'xbf4yp7rRZ L&6~'N_(i*qvB^%#Y*  :}  Á DSئ'SYtU1NɳS=~ocbL3uheVO,rpOOO3 Ԉyrc{qѮԛǼm)(j !PUZ2ꇲ\Pú,/_34b|OxCBҺuǚ-gjWm0#֝}XtӇY.;Ȗ,9C-Dԩ[\6%u<%>Kpᡷ;pzH2Xc|4Q2`xXPL3y:H]MH˦1ݤ:@U8Ôn7] zJi,6NݪMw*S@ gR`BxܵGsglįmZ*u 9 a)h1vk cLtd+uC gFdZ{gSLBX.$2|Hǥ}'Ǘ֝lN e|ɉd#Da*c̖j{`tsPZ(WAFAn.vNVx\O\}6m!hҞD; [?n|昈h}wjɢm`uQQ>F_Wq!Yxh(7hN ~dr* BH"ڵ=!?.Ni[ЗQmFК Ӷ)fczgo4\1թsA-n*l~YAP/# Ic@!31޹Թ08"H%ܸE_>i 8 !X "Oi @cKDTC) ?_jB0w[cFNt;^IٸMtxr5+D(Gn/AofJuG:*Udx-8"FނZiA23^"^Hh\6)C_9 TG>xju\L7(?糣yw,XDOEۧ~IF=XhBS K놨nsYuB"W/% tٷ{"fz_lR|IHӶyߥPeQq; AIXy-/] mT"Scʝ DrҸ"끝@S Xև"y)ۮ=?!-=2iOpX˄@Hc4-+QGBɍmpUrsAdYop};@raZ_P.rwa,^etAr"F5yJdc3,O%!f'?Mu`/e~|q;f393^J7:$ bܠ2ú;&M[fFT \. Rא鎖# ؇ݡ~Uqמ <6/;i!* D:θ O^ \WIWdڂŘl 7LFֲ#5N5'Pk/du&GW:'ux]C!o81%턇#@f<բ~X0<,[dj[Y՟Bl֤[Ƭ&(WA7_SxA4}'zT]ӹ7kEBh6ɰO?KyBY`Z]Ka5GG`|T} vQ1+H\[Y-Î nT[JVKg_mENuernd >Rw vz$,\J aoSgE߁շ@6.ƞG'0'F 3{o4u}V".¿YT]|Q.o?b,yZj)niUw> b]0n [t3G(Q+,EHX5W F 3wB1 ZIOV*H)݆:{&>S$+^#Ր*iyԝZY $^(o@aP30㋼C~(WPӖ ;ɨ/|hnJ@BIA)8{~Zd_ Q Pȱ@oohki ~ ,:`L(7ug p7y!.ݫrOO9fvvBAIgD '@P o'ŞwÇ[B3uw|E/]{%$\WӥƑ̻r7{8'F0G@2N_Uװ٬H)IK\h+_®hz۩"ɩovQzs[x) 4CBapNI66:qOB޾5 ^x5ˤN_O#ԕlTw1điR魪ŕ77I%mR^ tӏ9'~j rW۞"SoGuoMAw{ݮ4mOrtoq벇M\vDO M֙lo-AkZ>C]$}b$j vM@#X ׿]eO3~z'+gDjnIg2B2 ?Y߫lp{vO&Wyllw1q`Q- z[?}VGsmb|uatLNP* Nt2=V{?֡7 sPPTڤ2G AN>͏Z90#oقy QBtdZelI Q@1wlp}0mL;Y˺OzjdmPs"7:LJ%]rE}&_yI>2$2Z|A?&칼aVĘx:ƌNiZ4{pӮ~MQ׉Ӑ$ @Bnx,$8Wf+W`<^@1R=^Ǔd<( 3,Py\Zgnq $Yd@?nf딬?Ss Pe>~|"p?V>!8!PZ䥿1bhM =' ͭx)"~@D-c.uL5Tݥ,?S) \iۗEvM<=@'m9(yh pA5 ^Tf;|GV>=F~OI7ԋ,r ,Oy< F-ߥ-4g92"?N#$\"bϭaN:I74ӷ}sLszH'[$q<[ԧ] PsFըxmܪ ]HyD`y]^Ǭ'hté4%H:. {=uiVXKꨡ?PJD.%pN1U f~JU.Ezd!~GKcG)kf+6l8CF'7-;{u,  :e<VTv~,ѝ yfp!VOq:uX)e>iU2z03hKf[qlT˜l7CGO^wMBK.pܟS#S;7M3wO?OI8M|ɷ+sv#ipT/gತt&[+ +h(Yz [߉? e[WgVW?WJUQ ޳Gj6.:K=bd_C_84dTo͚cD_s{<\Rdl}5,jm3Yƙl`1 )$j@db l\*,WJ5S^U t uV÷kZf]~J/bk 4U5)iSg!q=Dc7ըr,扞\lȸŶgHi 8BW .AvLpt5܆^gJ`=qcDx) ԄMtϤr$ZG Q:|EV<VA5t:JԐR,ۉbՑ5!خ 9ӆ xMs* H[O>z+7ӻ;B}|L-{69ŬO4dh4ZT2/B S/5\yԾ|vulR/K;eRC ؠl+z5PQM@9 I>ZNqAl0zdVtEQ#49®hV ?ߌ3imѬ0ĝu3*Ks{(x8;Y ~AP`_٥2;mtO:SڞF{>ڗt7I~P/L1FppTFT aA@a*>OI@hq$92Cz{O4#(?KAo8Z,zK͉hT+YelR9gHwyT416d@Zȍ/ZU&atۛ춻V1pp)Si<NJ;R1l;(n--Oö.JcEC )T^l<9lIw4r -Cgh:@aw-RZwɖft/BJ-࿵D強xCM6_&\_W6 5A@5ci%cpjaU,DgV|AcMp=q_ XCˣkSwa CZHK.E⎼Xp* tA\lHE+V4ΫOґh'DeƣE/.fZL+᩸CMF޾A3Yw)gV_% :^.ƫBBIt_CI-ܓ#ou\x ۛ"uQiRP{=XBH)X6zFCa,Ud; ~u8R#)~$X6lJ%nk?R-SrfWYE[6Hy֊_2"v”޶*L3ް3[(OU!A;+eV}ƴ#]8Phi_Qa|j5 Pl`NyE9z/6شr@i x bQ\eS=HMn{ӆ Kkڶ>tmw}߹MV2ښ?Y<Q(C+g[| :%#]/ڝQ$HpZ-Q0 O}5tB΃ Ҡ%cQoٷ2K&x rvo;LkVpK ႍk݈DzolqUQ>I 4Եz3$nԨcCds?VDwW˳A:A% 6Ŷ1`5V]56I{ ,cube@L |JKuՠ>9Iԉ.4u$ kQhLgq .Loyy$ZԀ2xSHd\^=SJB΢ay0Z*EV+%4^lXC4l;Hau"ŞwlsC=sW26[ч%s_Z"v+ٛo[yzu@5G_h͖41xs6Ig󂩡h^EvA-ÞO,qx<4>%f""4yN7V鶝;#0/ʞKz4"L 7e}[o9xd6uj?Ir u%ZN[!'bfQLL*3rMrݼZEL dMbP X>'$Et!$fkzyc/m(=Z5y-[6u!OUIq5 OaTxB&?I Y|-qL^>Z N^dz=2$1{Ժڙc2 g R'P I׀K-|M٦q3' :-䑀$ |͠~g/k4e]u$ȪѮ`d kQТ~Wm` 74-QZm$0rTQz\ِZF*ߵ@b?'E@?ШKpCu`\H3@^@L_)Voz]$ͅ?糍G4||;6sw+5k9, ʗAZ+ ɡNUO0{H՟viuppiy8r=9 1MUf ԩgpds_mXI/%;FώKga UsAO4-$!y^PuVr)=Հ)B݉S,;/.dR$t_!ޡhdo!UP)zp׶Ugv5!pcO\NL`+g|MgRpQA5!z M\QI-[O,"7Š?]g'}#S9I#N%кW - [:=J:R21$]V׹ﬞ}6 Ŀщ[4`DőV k4P/{/ي)^,s@hJYQ'bIS[7rF fQě,Bc:w1ȊtyqJ8Y(RH?>t(V1Le/ ̣ڥd"3<0ô{$Up_FY>&{C!s~/&ǔ Կ: Ad ;a;^)l|m/:S/lq|SkbS̶Qw(AY}p/d:p"6Ap7V3n^E5@clGMق✠ꖥQW+;ɏjwSͭ?I gUw[:_gy7LBP}"yFkj0c^hVnD %>HfY iW0'oO,u꛼ Wcs-#$PǢ,XQ}ᨚnEO00VŌu0ro~XJ~ET}1 !ּr9 !x(aj7W9 1{Nk'<-PeW@d`kR7)7Ah}ܼŴ'RNZ囘o&AJLRJgELm\g4j2bId+%2urJv Q"KDO>H?.f8 pf %S^i8Ya%Q Qo亶\c}5*"/mj*5rݾƉX,T -^|H?aR=px3Ũ { 3Jp#Rd3sd6lAs+e:d٤:{$6B ˂k`lt"bZb 8^s0v'i=7GKTs0ݐ!ha{A!UGLYKNKdE@,{נs'.j˜Z}He;Z(# 13P6>cV_Xt14<'JǬah5虗da|ؐ]1i\SQfa.-a}ojPqbR~ KJZ G֌DV3ewl2\ӆ1 _+f {Wkjo?OF#_!j݆8Vz%AD㺢DԽ8Z ֭3w3!>6O-м[~A =]\7$|ࣖQU$DϹ+sb{ huQR a%`nѫiߖ ;~lj W%k/WSFĪLts^YY{`$%a菰J}1ZYTx e5+)4TOGae;dO >$Tr"LɩƓ*5'L)_۬ȄCxczUh|[f:#*h'UU`\;P@d_&(vK Lݿ[=&C|a.{=X'742Y~JBvDzPs:cVAt-(ؖ @Ic(MűztW̸~SaU%;=>/]{XU t3yzŶ,J;Vg٩[4*t'f&*Cв &1,y;,Wܲ¾LbNgp Kf=Xdf=i3c YxzX*Tzz+ߙd.GSMGrXkPuʨcl-5l orL; y=PV((0% /p_p WLeʣx+Ѱ_G9|K%YhJ:P i$!-lDν^W87׸T׊!`s>X̃ T0—ZOv ͥ޽\ T+S!5?`8n޻OX]L6fzMinc[TJ\̃ˇӀ |VٳÆo2մ .{Qq\jU '=oSQ&~u_Bx ѫEմp.ؿ$|w51cdQ?c$azfX+IE3c~bIPc-rΎ_hEUʷxr_AOi_{ꬦjƘ0MXq,vjC{P(/ S9+pWT, @HY0T4{'a!vӕLVzw@ * +P>8ӕ/π 2%.Fؒ >&T?a}# 7ZP.}8s8 N&͎s'Kು j'P$3)ՉaS>=Ьt8I娛cVhdlRRplso guטd!%Ga 8=>kFTrK$ybh2{7C HH:irr)eHzbaCNɌ="1!E( rn*/ D8OS9/3jCfLat"tl|GTFl}}O$tUJ=]&B[VP!ȗsI;CBd/k/4VYԯ9+29K=(~j }߸н苇& l\\ɍQq/3ۯ <>6o|W j@e<1 onw9wӀ=;>AS ޫl82>铼7` {&5) Է.JОG=VZysb.1c,~4cQ1cq%(g.c {0 ;zUs*kWàN2$nMH Yzl|9$Y6CʩH?qGdEţ{Z-SxjF;/@ b X|&~ &` Wㄷr<9 8'D#|CX[& 3+"S5-l9kRCrU%i0+ZvUg.cJSp6}Ymm'q@LP _U'f~.6y}3Ʃ׸6 cѱTXrb]^Cӵ1rNn%u8OwTV&svlP)~t?-9`xO>,,YY7Y0VAm}-*MAJZ03giڔlV٩ȇe-mrV6@1)jB\N g}cl韨Lcc Yʥ|,#6-2.-:LdYxm^gJpN,$_Krf;|Xn4uTl`26b{K!\7LĔN'at)6%(e|q)f-";EA+h0f=Tt _~:D / #tFZ24HkJ5#^mo6@I5mh_ A >U*S$a (Ah)= ~}`Xsv3uȸF{o&s ?0যIK\8NJR5ɳg~h]5y™ Ϧx$L, 94~t=.j'^d ٟ8f=dJFpnvv_F(4 HnnzLZoJ:\NoC"LxaKgC.QօF|j}yT-9O]ex4 TyIڌe՜j70d^^Yp.-n/AzGQ=\:;0(/WuMZzm Q<\ -LtY oq)pDW }rW& DihBߕ9s' Zƌe I+!puWmvk ɑy\IB%E%4 3?<+zѼ+ ^FebQ^B6I_ۻO_=dCFZlw܌xmwV'iJmlp`.~%LSHi7i~Bu:peJ쁩xZEF Q`NSg+k#3s#r R\(ԇ(m>,BCZeeLʄ6$uxo.2h2)T.^Aq(褰Vd8/rLV{zp}R@j;p°߈6҃HMF=A8QHsqB*1*v=ց'PfV}u+Bfܧe9ayQV,Pyv#Ҭ5&1K_G'(GR2y˨Z!1mW`0!޾x;ƗY`d$&֒U s7Ieȵ!H-Y ?*+F*[L*:L^@ְ2uyiJ1(OcOP } V#*Ѫ[~@m\j Vb}&m_^0íVLQG l%/@ϳκ'/+p4zc/ܜc-')L`hz ; fF\q5+ !}U{ @;)ZWAIBS\Ei7Sb. +g j> *5z昶ۍnw8pgeF>w:n_ſ+Xt1ʙt VG0 -2!]d@ֶtI0&s.DQsDd]| 4}ugir06MWl6J:-1@Z]J{08I۫jWM3P05Tzq9o* B3nbH|/٣JA:&"-A=Uf ~ 6CI bhIڻ)?AnD 8­e?vYZ܏7mJtvurN Q)jEΞqql[xьM[*ȎMLu[-x/W a헓NAwvT΃A)U|blׁ'&@^*!q5lޛ nNdz[9*!]$vIʼzyO_uG s 0Z_-/ Dx:[xl BC`OrkquO5gWr@oF= |3͘/%Ç^ [uMڃ`fe&Uç'ȧ4.5r~d,P_#G#xY^fťC -Mq.D/"#\n=)yY`,(v풩AUPzm 7 D̃x6)yY6al{df[G + v9Z(!y 2jcvQC`J5gV&b_8S0/H&tKktž raQ';v/"gW3xLcF?mp2bhaTqI –R>:ܗ ,< NND7$V}~z*[xO7GP]Zm@"2kJBL0-Qdi~G k%vrTq)*(9F2걟231d[l~D<}Xar%ۏ%0澅1xN M)$VeZp/!&Fg7" '3Yn? 3d] fݴ!~/IR%q)4J dy=\qR4͌CHm2qNЮkRӕ_EYfHUg1T Sh?4 Ⱦ7m4 [NI%=Ke(l+~Of sHerJg{n=qךhB]ORz|ΪTPHx7.HX' GlGL!эALMD Si*:yv@swbb;~/Oro]n}XZ|7eI(73zM\&K#0XW5egV)5TO+姈E [bü6xGEFMfxrB3 UC&㽈0y+ 4X}DH6A;8>2n2R0; WR^4Ud"01 oD20ْ٣ (PnK!#@A[u7Q\;uۅ"ޅWFю }ΒiT辊P8\# PB.h) 9?jg Iz:#2@`^!d}56й#02}]ZɨYnXa.tiH5(\  $/9B7X~I:3ðH/& L"Qu-`5mEi*R)ne~L)ak)&R;=UcW2=ӟF ILqw; jMզA@]A9TVʼ:BT9ת[}Ba)iO}tbgy'A2VOĻ\a'6=!.Ӎ]ƻ/b7 /E8[_6 :-Pʩ)8Gml#v#OM(N׏X(@ńK]{fz3zpq_4 jto9,:;0 ].-Րa/Y~3hx0"Єޫ YirՒ78оcZq k/\ 3ɵx٣v(Ks i<Q+$ `C8"7nB OoxTcP>,a>=QQqفoNv "Ve3*v72Ix)BWC= ;li``ԛ6Ɂt׵єVP8D|ƾO)}UQ0%@AŒ,~[rpi{CaOdVWgl}1'4˄d], apK@|zo_mucv!Ϧ틓g MfcW/Mbs*~ta8|X(.0W<"Kv{],n% XOcEP ]l0=y8z2 Xt@H0nCjXBw4;-̶׵cO7Re{T0N_iqުk/93sfh$ `g?="K8Wi+LdDkzZtGKq-7*$A"܆ٓaV߷%qX9PYS DųJ.nquy]΅XUޫr nwL,z9p2cR6/][Reu$A򑽇V]E >n"g.<wf)lƀDy?g6KKؒAMe/G0bLO+JT#hayYzJ*eY) DC[rA"+W?Vк-Xf^O":UO $lMr{Ѱ٘x9c H&!C5F/qZ~EæbnDw:.+zTC&u4JNd8&ƕt#u d|(ru~ PTןP@-=f<8WB.TW㿯Vv?zg|ݬFt lr_Я&wE^pɡmft&i0AЊ~?P_ؤ5h˺VH4lDL]P>oi2n }D鲶+vܯ5nµ)_o]i 0& P F5 ;*0)`H Q[|S4XFE'b|e|MVX^^͹57^[a3`aO{aJ3k+eIJثG7JcHX:07IVzSnJW'))\b]{$65/҆nΛg-PUdYaeOmwCT@ZU2rfZA>wl&]CQXlĉ`Sz/ne2HڃDXD ޺5k\!I|qϐ׌;dwX %Ʌ8(hHu)56"6[‹/߰T,쾁E/ |@Q'AgB47DQ*0ׂPZ6zp\P37Si:h>xA;R+7]'~(/e|Aj#;[0nq|4zjaE `z__Gi?~'0vU 3$TEGؿ"\˶~m܋0 BW\)^w3GZgtJd?ͼGo\G>^I1%I!( 5~"[=j񞚺 p4e׏irvS=`3䗛9m*/s^c2qSz4X%,vm  wjVjfNQoi=Z j7N/&묭ߩ*0jMS^iP\c:t]mSZqDd,"^W\5U4{hX5Lpl1k4–$Clhc C&T23F̲E_D.)B~siM( qk">\Sc!emysZ9^7f|J+^/q5OoUω:=+5, BN=kН_X&Vd[|)_χ{/؇pr}Rz߄zWՖD@f&ֽb_Ն\Ph&֧2j|E?뒸CZ,3SB^)X?êA2 sEkĀ2$փ|[љ~@@ ] XAP%+=-ّHv. Lg/IpԆ*u)RYk*9M;v45"T4u HrL*ldP bG[oĎ*Ҏ_FM[=Δho" yx_h' `q@w6+݆ E˳պ=u~) VІ HH[*c-nZs3L`Q67/V˜$arI ayB[fK}٣IqwK4TKk*8{>M^5uI;6ZOjn>(w VELv;X G ^HY?vdz;hpot:*\3TQ窔xX6{TuxنB:>k ϪLǾ/#)WEBO:VJ J]<*N)oW0hf8Q_Y'4~UƘg/ʱZ&s/<$zuo VVt9S{WeN*i&[k2f &bn5@[:&%dJ0N;o|ћbhH`Ɇ+GU\pM_~[xHK~{pA2-.{GKҪ1i{ƲJkBs. Sfԛ}uH^ۨ2re{~iL=#E#`\iz~Am^ȤzZXtM+KgJ3^/B-TJus:3 CG` uib*9p/Nh [lnP.6RR*u2=MS(`*Y~S\ƪk8]kp'0_2O V$3(%3vt:1\~y{{aj(QGz#uXR,W싸lmTL4᪗Sԑ)X˯IOpZSOn1[;F[XRo) ?fV0>`yڅaO!OV O9YdsYRP,K_9VGv %zqٶtVָl֬[$n2;E_¯X;B܊6:|;"_PEЬm&܊S%(g~x0_90Ɨv4y$a"?@[P}wD#(ЅxbTCQs^=% XUȢF|yH ~C+|ʦN}6O8@@V2A,<#{{Hں5EBd g?iЯ+>0kڮ݀Tn}_K==2ǖr*nl"oI5 }TDd?ۤsJ *nvnD%KVV.0jNfvzNDC9^խUiwuĖR0(:pN?ڗ-L|X䋢2gO(yvh:%e^V-+0.͔K*8YVڦMJ3yQUQ/=˜MXeUc֜k\jTק)!lmHkO2Tqw_*r\ZQ7 4į[y{؛y;@⼀(t6Z$P>եu=&/^~YI%I>-'h/5ض3Q&ژBz(D:=P~#$ ALDy-kD`|y>| ;5k~ˋr)=RHp$cddVvMpS%.z v3nqUsE+Z04_b†LwfBf^ڮw.IYɶh5X-GO!`}@=KmRQMqI9utL=%Z<8yub/AiX5ʍtv%P9ZcWOe-{P:6 䐪O ǔ<&nE$x&26`_4g@W_&e!2 3P>SQsN1ٰݐ8Τ؈u-c*L?3Bo^'5#DMe19I0>ckN Y,rд*Ll6ƪ@1Ȳ^ qk**kzB:}΍,\3&l X=-3RN0Z*&]rg~* _ Z`g>{JT^ٲ{\By! B@Ev|_t P"Q*oP<>&oXXGQd9wmrP(&Js,S˭[J>QWL{1(gW˳ )wg4B`f{o]Wr^;Kc<U>btlҜYM:8ʱz7x ˑNW)̸:$7kQ3en)zF Ng_.Yng#U@h6<96CW/xMBO+_H7c )NdZ]~VYTmC-j}vٴ4Dmmc$$N)K_|Uqkl )0'A,ЇO+RU AU 2Ww_;D?/Űr%8dbYTK-%a6PgJ\sNsEHJ%PLn#FԼ>l~jtFG.WscE y]eGn i |-ΙkX`6OK tN=|]%,˫>1r2hz>[Ig,;4 jȁNh4\;BRJrŔbK@-8uz)ӊ%Rg^z/ g(P[Ff W1 b+I,OGC,4x+(!,h~ !ϟ Oϡvr1ExՉ]c?]'0xwsl|lk?9!U Kʪ GgA"&ISS-Q2)a: JJ+`VzRGzWA5u55 9I&bDWޱ}ۦ-O'޿]_$NI뤃V Q !3lfWX4K@B9asЛ^{jk$Jd9v 4a;aaȘh|2FoX@4C.l YsY$@w)k$[9r#1v w?« B:r=gN#Ԙo/J"Fic4 h> I\F5>.Ts\z t},\|qʶ\mx۬YMX /Hqh3=e*&Yz0E cNlAF/Ѧo,E:3TAzZr(!u x1"Mgj߳>ji.tVleU* q8iypl '#N!ALxp(lJ]}!ݳ`V^؇ܐĖ~sЛ(3v됀"y09+(FوoG'p?N9:ŬECtY_bR.DؕeH(K#H|I.`1zSi,:WNh9GY|r ̅TŒP)f;B4Uo93jT=X\c~ngTyzE-/&E- \ש}݇Qm_eι1vE 1E$lZ@*Rjۖ&sYpR7MuQ'n6nnȆ#7P5L@-oM`2\{)SdOX`9)7$_AKHh6++dM( 4O\aYTýC~(Y$>Zb~7|;mnf' >@q.%mf)Ya|B͞wN+0Gr]8>bsPYEDLwWL+IyaDoғH2N سMysLYBn0Pڍ܄$8K\>qp%[Swe7\*9gXgeo3L丒^S$Jkdq5PU_iA$5DD ZVHPkÊtkS)m_B!#vb}!p:f2==`C_Dι)1s+ xԎt` veKʱ 5 ء-! ʒ. SDn}fv2ˊ~)WN9O+ي[aᘨ?*niA,z.ɧ۞\C2Rl׀A;ɻN'TS4ggY2@7>  HkV_=\g#,0IȞ}vB-JˇdmW7&}^tv=n\LJ꧗&z> H>L YW<y`Mk)HJ/,?))At@^:_A312-AkU 4r-i 0q3"HTu$n爟9[Bv>y(L断A5Nvcsz^|y=bgxW"rF1H`,x0* JJt`ώ%~sK`ޔ"gb+z#~{:tJ> 9ҷ_b,eԃQ~.[V)Ή!(mn3oM ai{𶊁%ԎtUa+vׁ8:bya]3C1z۵ M7)S򭗶zpS&0u9u1I#} 6H@r&K}mJT0b uy#.' bB"R>,a_(܌Ԙ4Fj1[E"sGXEbӶґ^gmYTIڃ٣8rCB8xho32Az5_kkm"L5yGW@7猲.Da)^fH3z}lh#f#YDtw,|IY(h )UO ӂ ut- o5%[f&k%c%T7NfK[ڎl[_?KEglK s>(T,-ىA l~!ЛljOٓBqSPu&_2M/1&4C"?G;4b Vؠd&:(sE|㢔HAx)%3L^,-f@j "-}hA UYH't 9a/g+ j̍3?Y1E+Vf>pu#cZ’7, vtUV8tK w-0Yp=y4nrGԦ4:H2;,.лX3!Y!ǤVE*%U$Pd٭5<ؤ1h"D>kQtn=DvyJKAR0Gx֥-;ifW(b|'ÈcV'QElQ[Nǖ9_&[NaHY+/NsoB]#gHU@\ SP /Vh E3K +JۍM>і3sA 'Bw,-N7}k':a:VXzpҤ͟\*[Dy)%'Hyp; v^3l3cew 2}ʷf%"͉yrlIu&v `{ч~jH񈮴 #?C>w8pCݘtTFMjP3: 24dfxό{5:9(f4=낔q-Vb3߹i˰;3;*`O/t[yK7 j]g2Y29#BR$~w˶_+ LGVMX&-j!6'sxy5 fY>yQ6-}X"5pS?he+ֿa͊: zQ}{,IJ-=y[$,Dς;( 'Es`3jSC*o aZQ _hqt1J1W`ruլvCs"F58OU y!f3͸V^ĎA-FQ2:?(?oJKZo?$1E^bB}//%!,U~P^[9l}}|,^$K0|+hev@3ma hh@Н{Jf<v|3*z ^,kR`+ m_8KdW3= s<#H9 ё@UHz2}:/1G+ xGܱmX{u~$l1ۑwq V|]\ÂFh`czJIS*;0* #[Ea  0x6&&sDmDS}Kk{y 2/e ?>}0(JfD!,AbdXu`īal53M,` c9G&dɂ޴TnS%V"d#kR7 MUH6hP!)WRݓ#w( _ "тEo|G؝V@ĉ 4~>q"n'хXxqRw$9.>>ugHKX}fyq+Tܐ_̈́G9=KXK]+Szm%=3jHFgwUt#XFƱ^lYo`# '@K/S5P7g~ڥXtv 5KV/”-r7ä߻BVSmF"kA,nijx7x+1ygk r{. ʛ`"L<G#t]O$2 >j/P'[oFM!Eb$BYWS PIi!6U: 3&mѬ;뀬 _DnNk,L iH0a |=Gw$l{ӑ[.'p:HA!}g 㦫p6W.NOrzR veзf7wVjrS*q#^ov8_S^ܱ|oCtSrp4/"O-:T+^T*hiSB:JzvzZWao*[i> هpEy׼S ٵXNKSe{Kr;gxh r.$PPm㋄1Qev TͰW\|6ڎ@΢qIeuYr5zs(0ȀeֳJElX [Hщ/,)KS7ޞ^A15ϥt > h3Q}u KK[z_XLC!1 Lqyo-= ΌwxA&V.2S,,5햢n\"d>m1䀱V!.P$xi,:REMi& KQ> mGɑ橭N|m\֕{F@+WmQEpam HXdY Ob1S Dlǜ3r(߉ Stl뤱+nW hr7 vL{fN%` Gɘ\Seu:7ϐ1Mȿvvb"Wrjf'J`8t*Z"pD?Pʷ:Igt ZڿPg;< WW=>kf;\OB=Ŵ UhτO tgK'#mB P/>Zc`.&ϕO,JSLm}Nj' p L[(|z J3.S0[]z ϻ,k}ZRKCO{^LwV`_N3؆Yն)W\*Ht9͂nXm#_aŜ~)qdG϶$,!J}^'җ$$X "ZQrTU"gTE&S uH[wgr{زO3ٸq}SR׋ ebl{u 4@6?KgL2S'Dw )t_&۷fm#٫em9cdqo.C{T^.O&C ˾xя"hцMpQ5Q2_7nEBal8ȩSVudΌ)|ܔ*X ܗoLgh*z26ɈBhmJp{!@@Q)vm0"g`)ݵ)V 阮)b!lvjA+;4֪'f@ \tPSFhNEd8GWrJ.sߟר[#ևuP_=70jY LtdbaJ[zup9vhk agEh뤹DҨ ©'Vޖ`ܘ #h,4#ZG %K%] ]* 3[w]-n΋hD}~*bAPbFF+! 6ȡEd;7lX6V;7RU>zJBc]rӥ*g@t5B|z< ׼JJRT Ҿfz2Rx3f1>. e%yAY,{="w]U4+lpB8W0k/X"_e _^(TM:Qjkwc@bA]yfRꠥȸos1'9UTWqy_oBaXbb/J2^`"JYxږ7Zh 둶R.8wY*FFe ƖL#GQ( )Ioo7*VsVpI --970tyVzbo>E??9.8Eՙ59V-V:`=p7>r%Io19'$iPY6ۗ? ֹk@Psu/׵L QJ%Ӵ㰂[<ޯQ6 5/ܭ?MtOP=ɏuy# nx=*NFerU |? LzK +FW-FpnǨ%wK(MN&"қ[˲&5t@7O DNzA}D!n,H<ʇg'~c{9;:과%Z?"i` &2,eǜ+hvdG FWr[a}+SS]bit}Ⰹ&OH12 ut`G1 oQA050Ve紪y⬯1aW/e:7naLc1bwb3`7|7lph"~%?,hhkX>~hd>glk^l@SL1C\3o.)15PCDDo^ɶ*SE"ǿ)B7)MDģ#?XuwVWGK:qM.Ի3I*K/]wrԮڙb[i $ɂߩvaɓLzH1,1VELlvP~ Ujpjh!3.` ޱ-o*wh]$7܂Qp>bbSU̬ e#WA>4j`׌wtUMc!Gb? h.so:葛PR{awINpvٻ<9Cfb2:@Md@ 1Z6*SϔЃDBe-F:eYhqeS"I\57KݴL\<*EL7(-U3gH 9h`>J}3ї$@}m&QZ8GS"& =@/ ؟LRH#-n!H<=*_Ӿ9a=*% ?}H++(IM|5]'A2g*|VX#^5FQ%b|'ϥdC*g թM"kQ>äK(`q4QauBJ\8+h.:o'YvZV>f(4{.{v1&z/)LJeC~=wfNyڡXpaN!"[Z0HV{IIV< EN( -"^k6h$t)*pLX^݇36]䃥]$O D}?tc?jB3⤦+%X`Nl}Ve`Q9aKvp$l<  GævvTê=[f+~"6(PZD<.7L(ҫĦ?u(O{vpxtYɈHU'O#YdL߾Le趛g4zLghx!hN${`Wu\sm"<]TtE!X@Չ8T16n[]&HǗcP{-Y=xNG0q4~&9GaC eĨ&" @¡n&n3[[3>#F(!U~nhj@AFOU^a?)dd`}sPA@/1Dzs%3T[> ț*:-C;1X:vm"!UqҜ|Tx8q9$]ب.Pk7xt?Q"˖b)F7َ0}Ů2~B.GF&a@gtj-s),ӝBY|34怱V&?w*$k Ԏ'&_go`4,1L 3 5m[/pqWz̗G. d5]5} ewm!_Ĕ`>Jyo8ZnB/uauxw$)D{!}TD%=+ {SHEN; FUqPs;D̅יUwM67z - ~E/2h[`/f`UqxgݴO]:k7Mn5Z C2 AjYÓWˁYlVć $-"J #wh&?\ ^A{)(mrfD;z]$tɒ4qĆHO ^*9D 䬳G~<*hfVM"ou x2 BFW69Yz|?$[g8UO%C.Azh )n'@ٿW v#O_F]M'*kbI%bsf?i0e΄sӛň퇦OGb{d֊1";+7`H@WcN<7i>iJ7]6Z ?}t?c9O(U! z/ٙiamޞ^Qݶ/| ‘LU[V{HWwNbi_(50f:'_X]';#P [2ȳ-w@*i}I箅r?ݸsLX=*LȣSJuA(!3*Qf\mϸ">k6/i`~1_uu@R͝f*I|imV 'VCEwKqk/MU|%J67FE'7kb=rݶ5O_kDphvE>_"(@3Z0Y|s>hl#Cd5l:ZvlVl +:@.Y =qU"v/ió] u—_:ˑh> V&d 䮡w60%iiG 1T7Qx`K=N!| p$WY65>U9fꇫ݉edW.)_v-G)$=f*gkS`mOIV?F߷t$UODg @ *mPoߥr f{jnƒgL-hf~;8HACxeCp K2rg.ȒCd>LX9"mwVϰ@A)EpN2,5u2:Vk,pEDKo_1Rs5=PH}[m%K[R\XpŮFsF(9huG'¼]NeM|Gl*@neMy2Y91"Vθ8< 2LBv R}v\ݠ:}VĨbҺZÍ +)D'IjT+q4nH\.M-`\0+KGl15uq^-$E48)'U&R\'v=eva> @h!(:Y!کwъOdce@ݠMVS.5|+xN Ap `^ OdBhis,!(0pؠD~s8lZx(? lҦ*}(p0FQV2ԡlB̧>ӘU S~6jCqTи@u+X.uo!KpEL5yT8ǔz^͓AyvעwۻtB DDoqЏ!e4S0Vtl Dn?@+5>4jpJ܃cqEW.> Wt(`˫M㾛]M@p)&F;WW\py\%:e3- 8P܀߱Hr!euC.n.NӮc [6<:mІo*>(]2(ݏ_Yvjz^GTE2.e_ǓEH<* $W5Cѓ[i* Y< p*-ڼ@S768 n 'naX`E5,v`S L@V85!I/Մ1O% :iлUnQc@ zr}/poPFP?䖉w &!9BbG_Fda[)갴2pdWaD[Thm/ARE+~2xԀ$a Dë B|/x /qS!>d}wn=DX2ʂveR= N 5!:l(ʗAz8uH:繩 6FZۂfb'B\M,,ZT^Z̬^s|I͜|+wupwiN|<îh4`W6e%޸fkN+׺E '.C&־]SQ Ha;Ŷf<%ARbf']>Z': $|#Fc`ݛ6ҬDr?2*vy;|;Ӊ;]ɛP:LF/p3]b_hٷ͹(iSkݧj-#MPJ!7tPeDeؘ!hγ-"2՚5|QlZ w|9>Afb:V|AJ?ن۟0ۈĕ!]qj+*\5ySnXʩ{m^w/\D\Hp0}!x?|>&|޸_W)) $68ʟ2?i5O vFGYPƙ6%4n3jRQ"o#<:Y$'_)FIaͦ#AJ +T(%L ߋf1#BU}frC!;[-\ŴM.ɌدeGy 6Dap>.p?\ 3@;]B~% U963I4}0Y^{ c`=J77nt'n?g>ZYH`}̩_$(ZnE;@:^UtM~QAc"Go՞y/y$q%J).%k2 T,門wB ւ^MH߻CVXvTsIǮ 6uIf1iz D(yKP]K{'j% ,K[&@T2B^9 ]ل ~ 4\3HTx# FGΐOGndLU%j-a8SlB18=*"?JRbvud1cEHo\N>sp&[nύ2{h* WѺ-c*fs6|5hcsaTGF-.dD=-PCǏ'EC)bj@Yd3>IR5 A=Pp5[nF'^MTXdx~9@fۇV5$/TqiP Ib5 -#Qmgݫ<D \D1浘&ǔR1}WyTSt {[)_9_ٗ"MW&A>ʭ[Ⱥ@܃q# iO%9':ڪ|˸$kv.|UԌK8jUA^8ǎ0]4ÌXdP$7$8и:Z qs E{$t},G^qjJ={=žcSQZd2J\O/pCNX/D/9ੈ^&#q,FnR/\coJQsD̻(byNxeceU)yv>|rX!܄Bhl?-9ё %Oi3%S,1DxQж829'G /zT̳Ha4%+ĈYA[v$ ~Ru_ߊ+>dǁuz]+AByo{вS+0@H!sCBu<J(F2cI@$|q5!ܵw1:XMIiRdy.p]g Tc0T٭" 4X>C!J j.x#'ơ1?4bg+-\2e"6mKY ٭-=l"($M;h9)ˋsVsUw:s$'g mWdଇ乊<>LSx 2n#/7} q."=c"ɋNkݾy`+9ۗO 2 5|.O-_/iQbc¢52Gr}ߑ.U E"B柩QΣէx&|B H 紜"xN=nջ!M /zu|.!nԚ@:b[LX# aI& /r$tS@W\ճ c 4;ԇ'_t6FDBvtטsaf_$s@ԦW cT)ANJIr?˴!6Si<@BV/HB&~$2&K+XuNK- `K»?-&MXaS w)fP0J($_ t1؈Vn^v*2(7Qd`s"zM^ OZPiqAޙjòsv(*18yt6=s|3}]Vwk+ B>,r? J)"V q#\: vΆ  7* ٖ{Tn츠=ճ6"ؼ 7l&7h!̊4 _t<7|?d7M ;酻 b~U+_޸ltbFʡmtV 7|9*|I9 (N Ax0+$qí!/4R$QҞ<*1r<ѯS16[5X.3'5jgݧ>V Sz5Z;=]LK.OEBA?ŜE-^Oڳwؑen4  "DE'fLuu {cq;?5u9#drk;P 7K蕦j[hP˕sǺ2R4|R?1IvB%PbQe|ET-(RVt$2pNawS?,jnjODhv}@gtFW4 L:DTCd'uسFSU6]_$s9 < zXʭɇϡ0w'Έ(AVK(Dcj9 6]-$iLSkB}jbf oGz%lHy̙\\ck;2 o[{%y a ښ'41gY׎ΈR@H")z [z}{-@0h` Fz0HNZش4\=ч1;"9зLVnvnϘH楏f-bM !n&aΪdEô Bl}sR= 4f>)g!|$ XLN 򴬓 >'e\[ӵޥ4Rs64kteu4牂oL0 % ~32+Q@@sZ #^z5+VsK]VraĎ`243)v ?Q 1H 7/B̳?rJz|잂'|n|1%77lmǔKrPp~Z R 𶨖 !#9Y XPRoHhJpcpoPGbtn>r6{Xx{ }#Ϯ6!ʽٿ콇830/z?Rۄi{xNby0 =@4JQ h@vHX5K+.~gEH~,[,䑬|'WYJdQ̀)bޝ*x>H%д Dg#SNH=S=l]b+Aҽ|| U$83T'>ꆡ eHBRryX[XnArPMsx~۪s:A5nu`Iy QYοYVx]3^l{dB~yfRPN^>V{A "N7XOhG%3OZ 2"y퍖_TVDK>$m46ҾRI`uc{f%AɸYZq̮׭>XH%?(Y]d > d$x7\7%5is\[7a =1g2Uԋ)5wQZ`?^cڪWYolF2"x&p2E(r*c-wAvz *Q4k[g #aJ9YfX0S7)ҺDڈ [y;rS¶̿ǭu~A(epJ4=W+nѿAr4C) &SO>1G4ֆ߈ꠕI Jo*z Dv<2h8d)ԔԳd.gc\܏k+IN :.Xd`1q_\E4llIK cZ -P$hn5K}+j|RBrSXo#zJ0TW/hrސwܟa:|m qN[p¤%+͝i9ȇL :Vu5;{H-_2=n,c/R_\}3i:TFk⒉UmAD!PM) Ѯ@p +~^ d:H6ڮFU P?2' vt}/aj`Sd0ȭXl_N3LOE ?4H ,ₜI944*x^LFH fG~ ~"L{0N]!0cf"Â&7`n»)ΔiLlw=b:= AXIaHzNDDt+[аEA<)ސ_D?$3 MiP7C&kJKSJiCث驕8~ ?0oHݢ6%67HzV9QEP:Jl(LNoc^Q,KXi5 CIlvFEjK1QۚE ZvCd~1/1'jcbzt:"i<6tdJD 3iFO w^mT gr2AfۤY_;P*# ^QSβA} t*[(/*Tx/ZM9 j]W .TC1ńݑm)&2bb GeW;uGbcGȘm|Ulc ÅiQy e`?B a6[Tvɴ"8~yTa=V6fgcƖ 8 1\P0ks R8}ezz{HdD)fbɸPSr@XHL!V}RDІhf ۇT{$ \.pTnsqV!n^1|x!:@b =X j"{@{Vy/L͏Ck+&,8.l(/ۉEhYbP:[xXq$DKWHPd{ sMGܩW=FBuqMET,ж;?Lxe7hwlEtӽ 4M;bhsd?5e #=4]#Ot g10M *vTU(Y(r0RsC>j 6 67u?l|O@>+U[jar#3$֤cO!ή p4*Rjb AR*քPg!u,͋HG DiznOAJ> V9&9)krFt'NTyB)DV7kPO=-tAyEig _@窫]u.W ;Y>0^4Cd8\NIEdJy s(@8OQ!ʷ]%b3.F|<mW۸(& &r%8O0f|6o&LA7.5XʒƐ*.~WHxy2xU¥ʠпM%gZ DPmjL$B-dή "dg}-\t!/??aYe*, Sk#L329i&Q3),$ @wI6dBDbϭ@ރX@ky*Vk2T)1hrԄ؅d5qpM+ۜ$u;&cY7=(.T8vBeHುgw9;u?9 KYSGo;zCV[.@?,o`,Eclg68| gFas&-_un͚"E! `#4O0>]5:;diq6bٌ}Yz)FfD!o~:%,4xIL~0jt[)dY au!Hanm8m<?pFZ`sQmFnݯ| ͇ i-L6,ۺk:m-Y?ʖ=h{O5SG^݄lfhf1`|S;=A+0(L+24#jۺX+<7򺾦A7pgM\x62sض`@*zRlӗ`)A@G Y\51M .~]GZ*/]7ڦsc.hg vvߩ{:op:ng 8jD,[?~Q2f#HJS#pk9 i+U~Χȟj+%ޅF-И-(bB=n&$zxHN4wka(΃cvL?en- a2> 4ŠMW#vy`῏ B x(: i~B or e^ꞮRv`"vkҶ%Z5% v2o:뮋/Z`wg!{Z%Yp.]gU,S{KKY/mN @N>I>$r.#ͺJ%t6XkT$/`2-%i>7Ø%nGA!trL?Tjn6ty$j x0W&JCv&23FtO ߢ%C;).PĖzL9l``Y٬? .05 ְ XrُeCwrtP,<υvoâ4N'MU|vP}="_FxA~\_р?ͷ?%.734XVj1*N<и "by |REwR4I綾6QkKgWR-%R^^p&ڻ65)pK[•0߿ [bJ&nh%Qe੤a|́-C6+Ҽ;ś| iT8a{mD4'p>TevR*l4j:DN:*љlvlU8V_%,ɈS/VyI]Ս^͜k bQ+/ٲY3M% =@y\r9Ed{YaDHfi&%We~J&7G#(O˶o[7;)N:-ق MNS)zCs1%Մ4<2kb;M_\SlF!g җPoufʦ0hn+U`sNsf^qpn!'?Y:T6LmP;fzGik쥄C7,7%MAJxcm"lf@Ԇ⎿YtCwXY+$qxr 8Zc\vtkvefw`||j2/I=e=-< - ԣ)Iu-eNlUyjJ2ܲlZhS yڝ*ޛvP!k|6mǖtCވ*{7Γ)WZd؅-󸬐rD| 2'Y4ψ88iFpj96"Ht~)1Ղz>I1'b)9Of]j: k[v܊N繮?s!ƒV;X"IX,O8Dzwlw}$,uFWBç@qmHB8]a,y;}H<,7!m[SAy>Yl2.P'q2`P*jP6mo>x'q:-'>! xs9rQX"0yUWeG' gޞd;!0Aݲ6۽}#'ŇtC\q8ܘH򉥈ԓ CL8cLyD6!g1yc3ݗo_]|#WVͿ;џU^0m?Z$P 7P:J38U>\I\ I$yr`͆) vf)'pg33,S͊|ˋrP:CD ߇9&aYvX5EghAor"'ɃX.yէEUcW[W'͢0q~ bs%#r&@?nЯ'$=6X# eB%}]\ W:-02Џ!X)o t?'^Ua5ev>+p<>%׈mϬt;棩 kGOoаwe۰ѹ_$gQ:?5O~ gY~j&E 6i+$}|_.HdEqFFkFHmٲ]@G,DG:qZ:ObTݻqSX m_3R"GmRԷ@Wb㚏e^#%[#^lJؕ4sjejXlcKlgO z N4'ΐLݓRuO8*r%m7PL%qa&v"6^ƣce+vF Z@?mQ2=ׄ*U":3֙NCS< jš7HM1;]GyW{5q !fbؘ6;v#魟9iS8#VK6.d٫$pm&a2b2?)E=$~RExVt\?D"ti Axعv gk47Q w4_~:螙N\jغ6Y]Nf3r8.?l-OJHKJ: i{x8g }WƐ.d Wv7N>b9jZ)XBS_Ő9Y\ǒĥ_穓jiہ<'oC$mtOCrϦk1"+b($՚נR:z&H5uJˇ{0{D]|S:܇#V)TtR=Ё$J~^i+#B0Ҥ4ܑy({Y^ID\0 [9A8뇠b9~_O>#MgL秜2"xC;2a)bע֡J D~3e$R,r^d"mZ SqN-vpT=Kh| }8͈qEmx$R5`( <[?TBrޭD-Y˱Y,[ј1zcDS j/#I/UW#HdijX.(Qd;$kdl}YGHﱁp;Oz4W5@Eϳ)TrEA2^g 9) Ӹt<4s"-r~]iYܩZĩ#OpolU}sx9.c<ת/Nloҗ(M<ʼnʠ9yCLOg\贇]>+* 0!ń9&X~`%X޾9 Spd|~NuY=uu付1Xrg 8CMja9SvW"衁zi7JsrA_Oǻ 8z%?s 4چZS)j`ґ=Y|U>'z2-}R@6\TiMjjdDd"SÊ&k(Xh'ݴ$M] Rnߝ5,jV0/'n]=*:ҰDie X(+Opׇ,:*OnHS4ӵhChZ^" i%[E&]2h7XLV&T.ҔN$]A6h y1CNk5i KK"PtkUNTXV@n|n6vPhA0 @FleFNdJ.A;GPG ; ^/##.,ŀ9;ƍd/-ήM% tH~yGHčB(ʋJ6Ѻ'kRjm ͚dߟ:@V\{%, {>bq3#*Q.SKDJ*մUS/&I7}'.|A$6$A6k#K%7Z0 z "Of )KIny.w[L8@rl|!RdpJ|L%]ivI3;s6n- rC7P'C- ~H9`Gv[#D=SNE^* [" BJs0mՒdS,H)n~چySjɴq{}xi񯼎 1 >v zA`.2潵f;2)SS SյFi?Orjg /ANs ;PspSI̚/11BHh7r/pJT~a_/@*Ʋc!uw,]#Näs[i5$FWGCj2MxS]6qn8H.<.J?D[-[̏+]Nk~2LP@@6uD9KRu@nN gz }O-b #2fE7LJMl{f͛Zw.BydȚH&n_,@QI?7)z(Ǘ*ٶ/*U?>1ɘ%&C%̞/9%.%tP7Wv ppr <Ժj+SMRT~ԕ~iu#<:rav~rRDR(}R;-8nֶޮF{NCGfAAnV0(/_F'üh&b:Qڼ}28ȓb0@<g$3뱯R(C y-pDC74nKee,ѭYV`m- LPmA; !Fw.PD=2a߁Fϖ9[*3H WfvSꦼq!lv%~ uсap(ɐ5ƵV =w)"PՃ́rߒў.(8/->Hc3'OsIQ\m5B[۝sgA*'@~2yXc(!PMjHĈP{M04PNeEwr] .*Aՠ2 hQXȳ~Xdjtq&@J?R~"Bcص}- xl KP|\y(@=.hD 9XFɿv9yO0DE_3)mRVxd_TJC@{/Z(뚥l`ʏ=t; 2mɦ@XtIzMbx)=guI&[v䴐'c?61nǎOc_KhqW3VB{=`[Ll Z6͡R͈zcɁUuZ \aL*!v,IB9,1k9`DkXJ^9wu\|Ίܻ-$_ŋğ59{ph2PhZݢ4eC hnb!܎ YHcu9XoP-Kq'J!}_U,5kQkov`oAo'5!A;l |)J܉Pj`soR#ec5|#&fà1bx8]nT3e (\TmK`F\%]ZM`шf䭊**Hr1xUz<κ2+tn3Ng0)6f[~ct4&r X'ڡê-sZ,[3z `,dFN[D+{dENgOub BV3>`MH k[]Ǐ2nl]7+Jw-h"H+j($PuD{߯~m^| >҆gX,QhڇvchA1z2s\ uo-K=e54 cgK$f}݄+J](Ń%%1zK47ҩ ShpH )xv`M[_*&as J*1 Eטϭʲ'p爬Bj6qBa=N[`)l OCa<ǂ $rԁrM7.6s7fWOA6oDQW*|Fx2wf>8лɯ #! j[*BI 9ܻfo-jg n9YI^+BjY-oa 5> <)8{NØ( nwFW ᾼz&׋vmOٗdB Xø ?Nv5fOi]`U_ycoT>ǃTdz1}lAH)heH C,hhw:.XS#tj?o(Ed~Mm(Io^>c<8x>~8\5)nZc *ǀư#{)j; Pd5+lEWjP6z3)k:"MqpII+A ,_wIb9)e!BdՊ,pmGjIȇn]&9Gxu}1~z),4,d#+ &,e[赀| s @*KxZȲП3Fb qK8>]yiľ}KOqy"I$Ke BA'yZ:~o>c k'LcsjXo,%!7_H#ګ1K|"KX<rG(22q/m/TfKf$)[eu$c|(J: 5ץ`,Fo@lӁ;0Cc^}~exyh24ȥAxi'C=ƲiJowBPK' 9C4ۼ~j w+XlD,Ժe aiNAu 9/=W=n֘djΤ] De,9Rr h({]XH=o8Ij! 6^쵤ZD~GPc5"HTۉ-gNS 4%xNs@~{Z6)[I9ef9~[I(" e]TQTgEpY cl ҵ hO*@}ON \U;^R$I'G-=dwT–q3Ꮐ7v׀63g6?nž3:f*ljD::w>GͰw=;%^2k(U=i`"wo&/{Q%^eȖ硈 f)̮qMo]tTTeO}8zD#PqDP\>$n`f~l؇# 27E*3G{PXYSkUh﫹2^(HIgzf;}sʒ."R9I[h]@ < Qr~i^L#=-(}8Э+F'ϕ2[(&I$e| 9ھ׆"1UTHa0B+I_ErrWj!6q[e\>]w:-` iNn{ h-aU}1'K ێlGzP3,~#Tftu!vAZHMB/'ɸ+֮4m`P$5fm}Fdwlwf+ңynK&+.YԮBWE$Tݗ# /_1!6ԃ^@:ߘefuw$ݼr. '5ɺ0#;p} $ּÎR;Shz'5ݵ\ l@ȱC8jnK@!(`"8 PD#2Ler aՈRlg{D2a\uITH![3q~ )Ow Oљ{ XofӤEMa/V0גi#u4RSYFݩ/-\(߂`#Rzh /A;QxjpҴ'. &\+>iק\p5Lʣd?"x{{xt wߖ8fM!*P8D"QMl; Q!AFw^=xj" S&; 69xV?)%Y_nV:ouSs.;].:rO8OXf(4M#llA߅c8j3 cU?:<z9O=~PH[q>LBS8VI/&)>-Z&}G|2^CǝևgDoGMgM$?.G8<eIc U.#9K%F'UʼnP !gexԐ֎.H5j,U)پ:I9{@CY5Loe4GNLDf K|D"Y4|ƺqq UɰLCdrhSfY t/ujc͡y]3nf;+HCawCd"v}LOYސz(\; r IqntWm$g|֏% <\ )fL7tXISNoQi~޶tcR4|xjW)w;l <]AO :(mBޔwM'OYf3$ݧa5 F*n]˔‹\@B5x]r)ABj!@ڝzu !П"9өhhPFuTtH8wh]d@b7QQD)تմCsoWPыN)}ߒtSw gfY ldsfO# G,=W# 7$ZXfp;t_'I:H=?耾-Q8?0= u 2%a}i~;vNktQrz}R!B?t5:qtBIPJh|}<5~|ͼX2߿twd5"P8YCs 0*d8}&5f'z4;̕8d=wvԱٺ+rI1˻&qjԁ#Q$MsUj73KsvHjwĖU_!ws+ 1*_KʗFBr?u?)@BəvtRخ&u8Gl~`s\'lpHX87;9uWsCj8VxC,5"^=rE1|?ط@>}FXƈk"1lM8+R2p'M1;75#PTaK{B0 b-ZM:ږr?C2< L*IEP|?MB>P"[c{9ΆmO'۩=DC|!R X<}*A?{1[+{n74Ng:!lGE70]cѕ$yn} ޼؎X* $қڥ3>ͽ4|`䈑*s㛈Z|E'aKD {^G!xv ) ,Q:Ojl㬥P.X^QzKo۞$’6u=,Ti1?zj hsIltP5t_\펅n)۩ȥ 6[ZJlХKq\|g,n/*#Z0o +xmV9@l2,_-ZN+|%18KkkMa ,Rr='%3S K6wqldF ݛZrx(Qw$7B%8 bRopCT!#j/MSrQW_.tp`L%QaVWܢc}_GQPd m e~פM]vkk h"*~u&'ƒ=BO!ԴIxeg"lAgFoxL{d]t:qA<87=ˈGz Oԇj'B\xG:*Z1ITS GP6j0U\EpAFGwB.,;nbGa3_ pl;c+ "T hQX@)2rnC.lV'>2]ŐSvvѫEf:y7]eT@cN ܩccU2K8D,L^GoAmgOt>ԜgTډހS*,찆~l-EU,#tS:jquXv4:ڿ)b}~ٚ?uZ'WL$LAƚ\F4 @ZY)'v7Lp8[J6{f{ RhʼyE䅍syD!!9[)l= 0^טCK71`U>M*_9&1D( v<1 LP A"q湥/EJa:V[1 rΙꎙVeR(`JB)3F$Dk=ȟ^Spp;pGky %d.$[&̽G&cl@Aл;B}G9ors!Yh H›ꦁ$蟓B?Q ([Wbx~tS/ f4 WX|!PXvVNY8&@Q̡5{2e:zF PP/w뜀l_~|a^57*ź"|/Fr V9hkX>i %J\!,/fvC  E> *wSDVuȫ.jmL5:Łޔ^T;h/n%eҶ8LJhe+\M~ٚ:J5%4sҗ '%o=&,d~zD}^Ĝ;L0xm$&Q>B{f'yXܪ71YڿJ]h }#n~$gUlCxIs E&?2ʅRi s@u1 b5;B>ƒO\[ PSy P14[0'xlJ0n)Q?,ò=*> eHO jf_D˫Yp? #08Uj1=^!#*{IYH ԜA1z8rxO*ClLkQHus|`+]w wZTuA^ ' Stv=,10w7oFA*N:̂HgoobUH~l W.TO \:*|9}Y' gp9pܓ-@H47;sf?i󗬍=9(tPYK3~)^vSrâoB }9j in1}j21PqztOmH,0܍1X@pIy$2#4F\V6X8=vj2"-c5Ր0= 86L[t -$Iq,`VܙȿS'K M="eԣK\YXDv<ٲI&\Xτ^4>"aĕIQRyu#d%Yy 6\UYIAnc +ZT} k-[w*܌ЬR(5yQp}?yAnS 90?p֓j}87JrW~R}&jT!4b&iQ&v0tǹ+[F8'SC(5^]ߴ#( mx4YP8N Ǹ_+lI%?|E@w*GC*5JlBQbr+E:Sz[}l*5oS ̥K 2cjj!KfbW'KnPyPyaI7Bu:+[koOOK](w#Z⭃]ބUdIh{Oq:S,l`ӿih&6. }/NQ%S*&I, naQo gM| 14&}|51V'o;' _Hл4|'`hK J8sAbzT!;YxB,)i0T5ܭKC7+;/,{Ɓ~OI9 FUde[刾2LnbgUE`e2q4{.lQ׆r]yDޥl|18{l2r\8$vFUhTvY-Wؽ0J?;UfnR.0OY&oez/i+caE*zjguuaqD^D{պ~^: %вwRSlmi0RU R, #޹*B*-rxKItyчP9ׅ эjN4Y4ˊ9po7KI@65@] R Ѐof9һYꐎN]xa CS%?2 2'h[S/6Aa$n|ϧ[RMTD K|@V~a~ݬ'G*칪0]4XO7AAsV #u&55Ud։l"{ji^OӤj\p*CT4MuzU[1γ'r8nōVaw3ܘfe|hQYj?/^RYeRP{CAF<+WZC1RQmNDayj)/`bZp_,Y7enH?%F r-C2e$`,١ |8XΰuvPخM[lrU8&B=bGm0 KSyT+k? z-\nZi6!mY }bkJjarw$$[VSL6cN !$ܟA}o Ai#3,#鿖8֖IY@5e][A^_y" ?o[K1Fz0 ӏrq^W:ѴU -~?Ͳ?*&r*({Usy|yрp OÃa ɻWaȿw3 Uس]/4mRj-AUyiZ5R >\" B>j(VcWjWvw8|&@aN\&:nkl&`QK_\8eY8C|c{cA&Yat2BW~۞i] Lb^tdwߩK?eb*$^!_h R<É~j!AO~MA\:8/Y*#UZ 4r -bm*]YlzJ\%őb'H}?CC˃X>;Y@3.4#l#=V]i.]|qܰ2Sc']i\~g@kɮf?m:H,1Ed': *(L ! g Zw ,7Ą=Pꏝp (I&smfЃggrqw+YzdѸ  U[{f(]<À0wȽ0 ~!|TK?eu`EPdgGk<^429I&+|)_-(O1iUU2 a͂vz]OhIZހDJH8oȟdDԂօv5dpek ,p$`o|VN>clI:{<ĥK54aⱤ<9GX)|Hlf,'.(q+*Gkva`>pݼ6's &\J tl4րm>qm} H}TlN/z>m>-vM/22[ہhv8s`[{o{I""cd)'Ln/`Z%ot?ȒـWK1Tra_iwc?5\Gρ`P[u H 7yMSg$-i9F]0+enHi҉MB}ѷ# Fe&Kq${k*W8͗Qqm/UXd#< ̵p} SDVgI\aU|4B[\-x0(_fcnmh'NomڒKCԱ'{)6nY +4A0ͬ  Z58 Ȟ^T¹j8PXQ),F8P&Ub7rZl!^yGze u1|6Fq7k1ŧU3$xn,wʪ/كتZSe΀LQTY:g>@&f=3j0¹xlCloם_$6W<i$l|KqKm REH, vX_oP߀ҁ@^Ƒif(d/Q($s|2~au(*kZ'*=o:vme8hN*2Ee1.lqSڰȢ 7 X=6Km{(m{H JV[1ŗ7I1`'U~!xUAZ4L)'wj8^iu|n~5 @tiTN>&F#+Yv0̥g  h\3M 6cw.#-^K$Pvw(!`:WX1AwV=6H2 t$0-1.P:ve[-ܗ* 4 BPif] ݟ2cQ{C{FsĬGӻ¥}m6#k&Fu;{ w*4AFwy2bjc$4}+f8VNpa\uslQJݳe Asᄰ$W`{W=Mxm2$eMu&| JOJ2˒Y7VX7l gp  d6Pؚw]ڗlt?'/e|u{ Q/_=phhy'21A?4-TykQ^1D׆ >ӆ,>Qx HC6UFLHAgLk6{F8LjOлcrn=[d"af/8ɕFE>7AfU];|f~U/h{)CxBWW)>v=8V{ 3'%Iw) .Z9^h(_Se,e1 L,Sn 76虏 ڡWK@wNԐP)E?J[dŰ;Ejٍڎ|u[?pA{Yn`Qo]Nn~A߁zzgN.O0jk;g/ttoԛz6oWAtԐG& KHI:G!<NgU݄B"A[ -o~E\*1H^ .1{Ǥj'"N҄`KGV 4%Z_BuvöȪwVP]$]e~,U l @(dBv$JHɛ-ŢSPN E>K=-1Dzy})?lo2l8?\-%[%JS3lsNg nՃָU.vFޥ%~5c[Y0ܠoxӒLK Vj*O@V-ͨNr^}/XY={ga&(063XowHzl\`it1߉Z7c2vp구>R7|HbIk8KM(4ˤc 4e:%0k @7,q>+c<^ux()̛N4Y9h$$T%e\` 4H\ )qWȖ;nb"XݷQOر! 6l0j{/BlH'{Jn z}kw8[Bmz@Ha{M]'4QK*+W?Y9/o,a'F]N@^])Ep_~]V7Ŏbj?t]gIe߬ݏ*x>tLHZ3sok؂s9 K_pv;30)rc~J/85φ}f0ac1Z 3p8{=A1Gd~p'\o-J&dz (<äo _ZpWQwPc ˘a6,R ~@W$CeF0_T+priE5Lqbup9FU}Z\EkNTQ3xJ_zUFlfѲN̂ +B'g:XRǧ{KG_Z@^sV7X++1Tu1(`$h޾fy,|S2%+P/g8l }5۠C?%d,tu {W;) @ЄYQadT[\OXhdvhi>8T:|oY'kvU hڰLPW<DM/h+'o B;-N#E731 vf4O'!l?.6kJqip r݆K @/Q! *'3H,GCN '"H/5ꛪ=mVjTw|ŠNB? S*,6U϶Ji}FiPceG^:x_Ϛo  y{w z5ldb]5V߲&Tc+mʥdB,i'mR>7MCgLM3*+H/ ǯdT|. X9B$y2o4̹ӡEu]q=O^wA䷲LxB 䖁wh "%;KH]0w$ 4#LHU¨kSUVX%c3J@s#m~e]L'kޣA`;܏rwD.7y)hH>:ԧu):|f1Bɰ@BT qOġ> ;qn9T\RNȔկ6io-+ vjp.@;.wm:c\`kV[C]>bWG>y!+''~7(8a!rC D 1&R: .CHEdͅւ8 rZ&/?mYad( $ETtLyEqP%hcP|,埵O,vw%-zmFxW#xf$*qj6΀I&Z8N ' 8uQ.9ӪMτv.s:QVX.n'p>qaq!cОx#Vp(o8#&HVXۃem DY0t%ZgXSyO#ur_{a olviȔe.$o~}픊bm4bi9o ۅ[^PP%b8EQϺ"Ic~M(Դ{+흎:eܡ.ZMqSn7yJTڨﱰb.htxY|:Cd9Sͽ$p9M] r5k?(T4!dh}27{g̰0LJ\[`6 '7lzb/4OY6K :](j0W 6.2[h>TON! aAи+.^L^ć"l"PQ"Ȓm>ܼCG{pn#,QSF>):pŐby y /c_\b*ag[E?HxXv+s'Ӑ+ b8KȺtCjd)z#QNƭ!ݭNGhJ$ wjLaNZOGfa?vFԻE@˔݈$AkՆwIfD:T9{ 7>ejjF;,5˙+G;-ֆVZ@h5r&\1bUĀ)<"7 uK ]BK)h9Qo^ƍ`{I8m^629^JbwFr9n*%/5fO8ƕCTZx1\3󉸔;A! >N|QQ_J7`jz^kL#F(ζAwjrEa5TS}c\ D{CU/Tڋ{@ aLlfe=/ 4Cr/?C@& Y!PqhTJL0i=ǹԂU~FMd3œJKteKlf;qs`:oW\~2-2 f+U/g62V.JL8 bZW:+ KvMyn F>5Ɂ=xM6y:= T5O mSBSdj>CSmGkVGn1xqS)0HX@Gv|P7u%9ROC$1wdlDلKhd*d<$.7dd Z47B F%@1^<ۛLmO|#Gd\M'7 ܉6<,ƇOAdFs房'!q@Q`RLvY;fK>LwcUԜ= T><~E|q'QJo4rB@h (ftU-)̬;)ļDϮ=2C# Qԩg6%;~Rf UzPB`>m}sgt 앺+_Iޞ5@>SWjWve ȺVʧ5|ni~LaI*,.ӏFTLeGYYKBnrbk@OK߮t-ِ!+hl7)bBafl)g6u^?1#7r@NLCaάnl rˮAhxSr٦/L4pEIR1O,M2J4kVkr_#?,+~])u2U` N 10X+NO_ e! qp}ītֱIQV% 庡xsD=ZRQr(#Dv,Pf<9 zLpᤃaR_c-4%A\ˆc\|تc2Z%s7:zy?SP6k j$#6LVq_ahUc pJ=B"q 1<9jOCby)X[8τtʼ[&)hkj0s%+-CأW.z J̗ˎ! ckܨ |SF/CgLCYmN"k<@j}V]zTaFD ?f՟i/6wAϜKd0ոb`Ow3snc :uC8'(rR e{qEXA\ y*P<^0 m^+Y㊹Y+c*@Ct~qJ}MK .Jg{']mKPO)0HW`)-]gJVH=m,k4K~&%~睼RSyl{ ×.uDe- >98jPip$ { ⮄:ǹ' ]<߇2,`S2RzZ]I]dP-V;dUK1dNVDB33N宦%˚j-3obM{o==|1tHg;vȇ|&++$.OwV^eY#@umXC^ L&<*ݯe?G;*UX}S߀)xFt.x`ln`< 7}' {u%H`Gڶ3d\I?]eD|-c]N\Rdb1Ӡ6I8qC>LZ֕ Ec^DZF@$ "h !Dv+.wnl33iz|GL~u`jXLBܟ?g ԆE97JЭf 2n%1^Pd+܂O a L~RN9~&ֱZgrS.mF IePX0 ]Uęp,f׊ [RQcǽ WWfqr6?y_\ƣlցhZ>!J}5祌)^,|jꧼ=1]n\φ98crUHC&3l!#P.r8BoXDv{Q]u`j~ ]˹B5k-RA.8'ؒZaĖÃ* ( jT3ãT?ёcNk$eA]Q|FF&lL5ȌԶqG6co1LDʦnԛ"ix1V f7?}8mkG38x5Bd#ÜYG:(2>U齥:>CIN^@w7?0k$c t|}dU|2l %8 JR;d )y}@}|Kv",8ƺ?YP]A6}n%ڠVΕ[{NY37L(Qi$H0Y|Q{\k/jѯN_VZ 0nՖ3iL'hp_v>2&dxu1P((RhѫpZJu-*M6S2ׇxjx8yƲЇÔPJSjkz"I|ᣎ9Ņ ,u^%U)_ĩDS#&4gp}FN/HQQ.FP)c7+_kfH x_~Q5'J T{ApYʥW4}@9uw9btw}XٷUx}ć(626ԝcVvvk KOOG~g$uoNi^u\p`td~! \%]_E\P:͕X]F)_\ǫ ᨐ^h4σN"(='N%7JqC !ɺry 쇯'â#[JFAXvW܈{5I\0z6z9EB PmmYX;?BA1^. $wNB ]j08UqeNH3W?oUw\+qCv ďsM"\5bFev$NDqϱ/tՋah*oHYAw'G'֯V dS|,z)lM 6/<#l>2g3D8HAbBGVX\`F)'\5[Z1uW;i{0!քvƸi(ɸ<NlpE˛ xQz^y@LGc:_VA9N^a35,fFeɛ/Ỡx|w`%qK8 XUG.!L;v*? ' Yr᧷%-PM5TA|2)\ds[7Jde2v$qj6=fv \Ab?\-·Y{΀Ov XSPs "Yp\G<*;y"ur KO7 ȇhfu}G-wYF$Fx~I/@*dV_Fӫf=MQ|ۤ@KGrK'#x/ǛPs[L_ "ۑi#n]ӕ4B9(ہr?Q3Kr~-i-0f}7Sq@)ѯ.J-? 8H F dHصbE/PrЌz%˙qLX6}VF+yDD+{\˅o01ƻ6vlj,eQwNO>ްLA榏ףN{p%@i|?mƌ!w?|ۗ2rcNiv&%ýP<[\nжD=t6w·:~ 3Ը^Ȕ= 0:_;+^I|E)YWc_/זuKk{Q\djWF?M, ;qa%̶tIzjY"GUOIKB u[xLJ+P WjU$h묞UcCtoPu#w*Kԣyho$-OgN+ B=y|gR7AYkf֜3cdYXXUqF>A5!dR ?Z~p Y gr`ϑ0N \p\mH)1uY Q"HkZA$ymQz0uI ';}FL ?&ONOt46!)gTVFrBmOze~#_URA<Ѯ4/ۑ5!J[8;f0>_%xz:WFK)Jo4` Ț倰Iǁ60Vw?p xF.- ^pKQ]'xSM(j~g&'Q:ω~{g6vkYM ҫ^1 :g!\Aռhc3+p@2姞??0xr,*k+.8i(۷HPJ}^1JP?J˻;,ʮ2g`<5|G7`IQ8F+䳕-ٹ5<0׼l_glޠ-KtgxS)s9ӌ$_wG8}<{G3$Q))†-axrW&:YxG|J q(B :9)Y&e^$ǫM+ =9:y40t$'Wٷ=F f2v/AJVk Ȯ^Oi^Rg'Zrdܝxkhg'8E9*Sh/=dT=IlUA< I-beM*^<2H ~mh[IfNgDym?T4C0d>Xw Kڮpp3 !lP݈ 4]1{'Hʳ4M׾,>YYfQ4k K4F_,<[U RzGPϾlKi&M-)5 1BBnc6 L1a$\dߤvE%5T+UbOuy*Q]Kuhvb/>^i:OsɡUϽ2R5_z.40+>1 ԿjuruYR84<.%D"Z^cK=BOCqUa~ KaVr!%؈(,U7$1ɁG鰹W~) +6 {06q_ c<ŸCCŀ3:#1~wɱ ࢷ ߾!1XwX6P \U̕144H9VXr!W z[/pfR:bHS=[({<P#1c;_4ۏ,eNL{,Sor9I6er O T=Yݽɿo4#syؼ5 ̄_ǜC`xYZe0taɻ}InC㍗'+2!ƺ3zK-"2u&tCJk] gU˝E_ǐ=xƀ,i[=P0)ؑ477bN-zb!mpe_m Kܾ/t\']Eey#V)mU'JBˁm|S&ES z@W >˺|YAf})Bos#&(JL9y2 Ν@N;C}e(Tj"q592KI, b-G 3bn}ϯ"oIoCAnϪ U$p0 -jUYJ8$ǜ8>"EMk  NHA׮ Q`o8y-p?kȢ Il)8 ]8Q~*Y-3*;hpYje7MI DQ2K9J..wQup9pSY]ByWNB;"bU:?uЄL|9jO6]?Xҁ]2Is3_X.& cQjheh[ {Om]Z9u|>  b&:F73 3Z Ix_ȮI[z8ף[" WGm~~pa}p] ć};9Tuݻ,¬] a2C0[ΆH/S8Kd؎`c>-N5~t;V0~[?_#RI_!it7t01`Nvij3 XH\ˬY>+O Zɨi;5/_A O@k׭lUrf!_{aySTX oU5*\kM8ژ|ZN! <@:WHQ|dzxv-"JsI./KO6V1LY-|hf/?wUF*C.,L sfꐯK:H'fІr+ L]3e/<\āvqjɊ.>|dW莊<ZGeW-䎹Kc7m/J`ӨeST#BRrjW*"DnsFEϒr\__P a]mmi`wcw^PAl( <(gPNݝƪiz#myFDM )Gk|#xRȥX(yx bx<^T;BXJûo%*+4^h=XT]n g$rmkNlqe@׻E2ciʲ%ݖ|Q@Ԕӯ{ "XHugCU:Fgv00qE#6e縬oؼk{]ƇF)YI~cSZe@9J`LNS+SH\VKY` Ylh8/ސ+rS7 PNEٛN`R$?$4 $4Pi?(n0T_陛oVO;%<3"m-r?LU%:jkNpr'^)L늎r-NCi9nD0'fN4911&KvQhǨ3a#{fHSD,x<_{8jD:1Oڎ57y5s{+O,=W!;] @8)[9> ˃ѫ0sD>lr-6$P .1\dK&lƕ \x<\\MhF!'ZgO,zfB&`+ 䉴L ZX^BHRd^7<1ڎʟ^>.a+^9|Џ0=NP0*Uy'סZ}^LR6@\ic7:U?bŠx J#P(q}4`ΥoW +45 HLI_z+4 AZzCN/6Sߚp^R-&_C  ͵s S:$rҖSEx.Ջ?Ap*x.}и9y""T˃o*muL[f]Q@/"UxZ>kUl Z%!$2 ml"`">(@fOsDR!Vh2,C# Go:8SK'v%I8kI!A#!eΡ.5Lx2k}5B wRq rknPSPJSmK `)ZoMfRo6t#;rBcMyb5#)\dǽv:QIJ˷%{Lz6 t,8OQqiY+.[*XB4eȵ5o~Ơ\ne[A*0=),u x!w[oY,+w 3iv۽20c>BcJ{fij K Y&wՔ. A7%sZk}7?u.uߣrlB0F,Z )\;2аNݿ4Wִ(|L p*FI'׊y=7Hqc,>.tom}zb)B^j3%ŘzX ""&9/mD Z9iQk,?/|@XqدLҌ(6"lԑ?;8)%JtpxOqs!63*sv}Nc޿0 At]!;v Gy}|yu&V6##ȫ`K=Il7˺J"S szJ]Bn<>H| ¿؋ZZT[ެ(UX&Cv>#N1Qp=ǪY&Or<h7B]\uk ,Oz;Nꆭmخ|&S[b0REB{Ʀr`7i1I -#OL6>RmK7&^XZRAqHQ-<MҶ_O~$9$/JveO6_']ԸnبZ.,5q`Z( M8Gq:T2:=N;nޜџmoa(DؐDrޤE7^trnW[~` r\Ui.wJ m"rD1Ӷ3Ykw) =zGB{Mqs)$;|w6z$%ZOPoׂ•}aJC"5x1ɘ@ˇb넯j{ ]Cx5YE$ ^NϬ Zflzd?o}s<eQ("&-DN܈Z~wžLa9P̮2c!c5ƗDsz.m+J"f?y; Drܝ_mDøm[=M%*CDV>̣ʤ{\gYSގ5+9Vmt+E߰FA1}uf@\mZtǍtEGfcrD7yfnM9. }-}Pe9U!ANφ@Ҧ)J֙S*]kF!+&ܰ2meE})Q7SJmN#e+itu)j > \ENʌC„x'xRh[.q2=p& Iylq)5">*e4 - 0:HY9B#\9#MoV){tgӐ4ղ ٢A^CY?&ّF%,{zpS?oI3D1JBUP9pM6H!#fMhxř%{JE?]g,~?t\FI[,B` YtkU2>)'uÝ ZLDw })I.}.v1DZKñXpWjΙqb-2i=}s0;guG"/I*/; q,D΁PКBFQRT}4:Uv2,M?o|-J3S5g#/wΥͼH7GsxHz$:\Fpem1h4#4'첝:զD >Tψʽ*9F皒OP< <7X8rF?W3x A5/t DtMpx%'}hOEΦ[1jy(߸pk2 ,MgMjMtb:\$x4*p~ >fAs?~^EC,Փvsbm:>@Iy#yENtg|S?q[!G ٗ0Zz17X5HkM~ 0(!qf^ʮ^>2$:mAcv{qDp]9˂ `p4HV"rbbU|^e6noB\&{V'@.F6X@eH]$ .4Qb%7c_e5=[M` Hmj@+ s:-.ƉImkm7~Ii͍|qLDC&s?EѓյÌ oȒ\[>)C[b&r@#d' diR=E]Y0K6,GoJvq)V6QD,])6j7 šK!Ts:rA)Z6h٨"S9WX%8>slHϤ?l̘嬔bD nSPGzЩ*[hDZ9uz,@& a/HcZ{.Rud۹LbĕUC01Ж-*=g\"m_ qlFa|`͙ 4Q V./@,n;$' O1#TbZdX]#z%&lDiv:\Ђ,_:(MB1J!&_M= Ѷ1\C/H2lY3pf͇d$+"9 Pܙ9QĻQ# 6L\!hpGg#DZIٛAG8Nޚ0PmRU2A]5khf) 2ЪruNsWU:ҷLo{ͦa^C + \e@)00R\]_FKE胪 6,@񾊷.0#G!XD NZTۗ!O[Ut g޺619M[J>So~1GIi|_y_CTd>9/?MS[\|Ԍ_~S""*-#_#+]݇#m 3CJ^8Ȱd> 7A~UyYDԣMܱݔTWhT ЏZ WQѰ¼U׬I $Wa;lEDK4ϭ(zc5X1"#8;KvιY}2#(KCR3}`FbdO=6^(CJJn{TJn>'E)TmE骍 v)]9ssxtUBe[RZ3' e yM7i{'@H `O ^g` EiO %Tv t.F!3(`fU P ?v>&'$$3#=GRcnæ`Z*aW?Ȉ9jADSxJi XVUq FAܯ<~]cSnWC \%u4 -xp+W/7MkVOVӧ. "_(_R"16 FoAjHid%|"<%z{o|4`裏g>LT[Ѧs4kْKtv$)L8^FRXdJdgYAaS:_m*~;qR6x;+\peSxj c}ƈZ@4ib3)꟠QZ w,ZJ:KC(-wөW'YfV:q lGaRta_hSV$G6@!fw|b!ՄApB},`Ev Do?WU (5&^OgoQoh)'g>Mx^14x R-ApT Bx%$MAβ {Δaf02_:@G8l(n<^vk{5Gܤc4z% kzMr8s԰zcĵ/<|KIw@R&c2[5|u?9ݫ[N#.*7#3E|J]jdy~I'&-).΍T?2;On5-.r5n {50dHѮDM( YS%1١qcJ-iΰAIES7f_ʦ>M"]%+VoS-G0d*(\b L =I  (Ik˸?Rodu&`i q!榙 X(x+6RiB34~4Tރ}j ֊Y%?47m{$0FUt迮KRqcwuRy ^;(DbWǩ+ȫ V&IVlC;-=@CNu>N4ExtA/ExƒK}"pUh j{c%G?Fף,5xSdBOIԓ|OR~c|eC!(X-%FYIkl8?D6weXVxMqC5W4Wq6PkLSIY@Mh9߇p-D_AK x]]Q2\ WcW;w7YgwhSlVLldK\_]9.j}Z_ԒH3EAC)+:ԙ7;FdLZ# zl КP9F9rn1h1L&ū*UlU,235=`z(U8U瑓!ȕ^; JF},x_T7^"+|s6~xc_J,&WAu!ԫo>I]4aG3}l/m 5&cq5{G=>7Fb*0r$e9|=eݫ -*7#w|E`KwYV8$H:sriU s^ 7r]ӥ!EZ[-;M-z=׃셚J)L̝j*J&'xhn_l5͜&olOH9gŢ AطРmC.:Ɣ̗0APo8h+6<dwCXXŖ7."ӓPW,Ғ!"KQnp )^!Wmt'>> xsWZ ^w7s%H&Pd>G77r"D'$ޑ ,NQL{!7/݁K2R@JjG޵\9XNn,CllN$Q6V#o:~ҭ?L]y ^ys&Y6;J.34EK"A)(4gÑ:s]R)L)6qKGl`Q&nIFa֞P[s<yeC?  #f Lhp]@_N_P21\u v}`iԋ%tcnE 88^( ĺ|W98E%k1sOF鬘+,egnN@HT5!%1@iY5~ 0 [UIrX8X>̈$0(lj=Pz8:q_!;e'چ0\![d/e:\kTa{^qr\]m})esS7+sB4`4E V_q;\u2\NAdj89L I͋<\0 osGsrmOd\ [=%ni-kFt1|F'=1ѳ }ĥHA<0c*}YP!]f\Wpχ'ӋzuVZ$G!َe}E`n=!kW+jJrW.L_iwi۲ "aj4Xv0P'U COo@<4T=^rK7vWLoIp'i9tؑ >KrMh;.ߒ:PzUZe9d,ĸ}`;P, I¦PO)jҀA\ 8 Q.ozJXq$*q6Ѫ#݆@*k[Eweg*ʿռrn2F m/C\V@z22p"@,c/_5f9}y~ | [g5u$ew\`0]E+ifH  Ӟ EjJ~ud?Et.4\W])lb#>1[Y8Op$}}fr twsaLb6㿬7ܽm$q~C{:jjt VU`'墖Yy4KI\HH1RSXaR <4̻58:~3gZe#k~CNK;_eEgj;:| ^=\Ma5ew_,\5ݭ&A ʲ.|qәNg("Ea-Ew+kEz Zu((gE_|e /tjEE(A5Vd{qR +A!X@dF)ý 1T|ͮEb D:=HcO̤x (׃~OΤ?-0w5;lB^9Mm85ju4b&2:]9gHa9)`qlg$>T6/׺)UBR6fLsctOB jgvVqza @@`ˢܲSg(|},ejwsMQFC wY.[IM2٭F&U 3+D+}{S嘬 8:!3jm\̭+tF+e'{3Tq5NczW]qU_ kxn|[kM~E^I<fw$_ CҀWpfxw|Cmtw 2ގ@w4 j? z6^*G'}I4@99ePFէ>Nّ'wm:P7`>,E =覔yD6R--+Z0dU \aWYdľed tC/w?i2?C^|O22 ˴Y[l| (h[>=H/$S2 3Ҍb: v 2KQx 3 lO`iȍh ;|0 H@;b0g6C9őbB}$˟9j37qiD}p2LnbtQ:%[{0sJ`=_5``z .|NG+e Kj$3BA$4ċO( <$tu}Ќs^t Š~n z}x%)?vZɉ2Fp[+̮!^7%6`%]TQ]`,~/ԛBӺHY{'r+u\5z zjvHTy錡gzlxuPHKɟ6$U76 |=X=ej;t3OBzHl.10,^v,dVa*b߼[ D &wS uq~p"h!Bci.-` w%2*6' Q!{9.!@L ˳Juw%c #>*ݝpڄ7p.#^f< ;Cv]zGTqF8n}񺐖; wz\z±MwR$  :eZ~.5ߪ~9NhӵwMjAnM8( e.ӰUWS|^dzEZhl2ӢBS.ܚX*XiVv= Hqa`@;{_):VVG̮Z[,Sԉ4>^5=;V'Ԣ/=3Kt{֫$"niҍ:ppWA?PɌ+@09.Oe-q#\;*$RV8nϜnX k@S`S~YE8DbQʨvWwþQ1jTj!.[@H{>b!~>NYwQ(}ҢRf`1 jj7TL&{1y~fy3oL(B\jPxf*J]=h4rD.g%ӝ"EFC6Q,^zPϹܩK9T?nc۳\xunE &Ml>~oA{/s U ߆fBUvKrĘ6Ʋ(.2pMATW[5 }dž3? ԄB>͋}mH +z4ԙ'% Y-F ܃jb#'hW}zx`@+ϲL;o[ڥ )qo ɅNLxmk$.#T JTv {XcJ 6k1ʀ0Aw!al#|tw{P#ƿF(Ĝ< #yeTAd3m2SI2uQvL- {AKxM|碩߉T`g#ZTh2ͰiԅcXIOwhe;-qjVA @1m(UHR$_6/.*+ῑk1{ v|T"4 $/5#ZAMOw^1_+"mՔ6R=B3K3@O# ԭAohҏMP!łKGoDu?[i0d1!лn>>ϣݕ{*e[ۈ^[M6樽bGl-9t2G()KHxcQ8'@s!BoLO+~N1! Yy~β_2]HrkPе 'ղ=k040t(}XѣK׏ -o bZ+_vAW{iA uh-9s#LMiq2qT9eK"ⰹ6zt6B\.QW Ş'.?ff/I*RC!~}#l4$o\AR]P|ḭRd)OPB 7o}; S Gݼ{fr畕⹣%ʕ۪^fN4n\'wMeC!K]r`[VRC=!  VQ4:Oapfoj}AyPtw_gtRPQNzeIXMO#cH =Vq:%xG,YחgPԱwE##IEQW 4\WS B/z4 m :tPc? 01ǮV ɀVHJcҗ\M#?h-ھRBh9b|%7-?]do5,9ޫu6B#$*+VomgHZak;fFJ/&q}XKlt+F1@<[Ɋ'_o@jU&!`Nb2sNB/ǐkm¾!r N Q)?5lky6˟0TBD*g-1D˙"k.XxOV?~P+LYUJ 9]c Wћ]=T= L>N.*`*qC0螁BDE,3X>B{.ΕMVn˶܍򂾬:U JS&YubD7N"/3dqƪll/ϡWAf6*Շb<_}h/ZT1DFzh؋^)(X7D+NDq[!On yH+Gy;ݵ$x_Ǫ-';MsV5B{s u,u2A9uPuƟ{yik.>$wJfZtqFث!zSMg g\v̳yAfjhf1BW]-5( L'1uJGeo7(K:Cܲk%E b]=oRBvͽƋ2T#}ZՄgj,/OO@ݬqeIe<=Ȏ{텏& 4QZ:x罴a S"*K ;@OԂ6m&x_!Y邫_/. J(A2URO57a1L*B `[VҧVao5_PDx П[TWZ vh-h] SUWmU-n =!O&D8x et'clK, F88B?2{R1Ij3$;' N-܉qLj2eEXn,C`>H~<>z)e.AC.L"l `vIb֨7id}A־P(Y-}\J"h`vQYSTMr-¥uCeNU&,UHXz;ɸ.<8AɥzsFzZPQ{;VHw`*ڏgAJHq LL_".eqf\)L`x<]e <<%{== p'-óG"6;n_!ƦsT.;Fg']W mg,-ְV|bTQ9'<]/.M,H.D$i7?XgMgG?)w~F}Ag~G.,Ȕc;vu/Zi_W5ǫ¨][C;~5.tH}יyEm&{_` c)X̷ٕ-j$ Yq}4-as$= v}G3cKwy70QDhĢFVG}2?ԪTH*Իfe'i>ϽAwhCs>mfVPX~-;UnXM! dJٰtiNL|=0t@ a`I}b1hu#{4Tj'lf]SJr hI3%G#O"oSVq~,[^/o/K }ʠwNeWwf0ӞignZ-^[iski ~6ώ?)mCрUx=N~|T+Q@YqfGIlk}iJcBuXItp㸿`X=.Z.so;.ivGKY*zF5^fԲ "䗋~ZC-#Ჺ h9vEV٤|0R/RՑgġk1=n(1@J}$Wn1p,[&ѶZ{A$JELZ e|1o+{d948?܋k!:Ze-md ~ɳҤ^& 5LvE,W^> { d[j}3M@ !e'dzL1)4^Ձ{jOP0 ^ʘzu@l/IbnU\32ŷT CԒsFL:hkP;/ vuGlŖba ?]6/<bDf%Հ xv|Zˉ\P`xBL?p4옻xEIҩwXqZFRZ ~1!*]%iQ~y9MBPΎs̎>53]:IX_ȧBAYő#G~`, ˭svzw>`J|bb9''~{䧀l|Xܤo&e@to|@Q>RȂ׃L`brGQEu~9 qOz ei '};%i){1[.VŒ(wY(84\ɹ- bT ˱/-e2\{WC֓5ÓxL'{N>x8xcA|lFI Kg/Xsge׋Dy֎w?o]Q')dG8tC!U)۹N(&#~)O>vlz9e,@oVUQ0؈ )&̜1h JaAU&'H hh˄䁥ͭQhy!#Ie܉fַ4ߢXBԘP08sE%Ԥ&g}B2_4Clh E7 2V~9 {{8Bܥ+`Ķ۾-h(6X|HF%@).ֹZm6K3QkؠvE;l:!t6^Ƙ*v$!BVː@{|\[`21qFn]'|:T@|.36,|"Dte4E59dsl18H/5Xױ5\Aig*]G#ƴVF;Tc~O+F=d@+:&!%m<K# r/ * [H|C":&1JYb:;jXb؏}AZ tr"Uj&J%N//#CL9?2 CWY @9GvXRSf)SI|w70pש+C.Vsf-M>c@ho{,EW\ @yOxoVNo];dH|SL%5vxŋ5P!8EneL qϗEO/<* b39Gs#EGHp%Ɋ = U͚$wwk#:B$0S}bFno]van't㝭qZnoHxr}}PZ}x @94ks$H2G&}.X$1J(^|خ&aZtf%M3iT|uOr) Ж #==v, jLy]SX)3,]9*v`Cm󦽰4H/Ϋȝm!F;d45D8w`-3^Ce6^OyM Poi#SI +Cl^PQeeց?{8S4_dC0fña;WDj6IF%  jt…dWo܏}hMȊ!飑uk cr9k(^}ٯ'{A=l^ƭ[9e3!%DAq7kt{/AEEifP%ئK!x(>ɶD[řw&Bcn&i;Ԣ7M+FZuJar!{;(At{jEx mUtbܑG Y]@olkjE6Oxwl*P7~qZλ^zE fRtoZ?}t&^R# ෢ԧ 186^r0-(祁w$"NWhپadKsK%uBh*%Ha+|dF\rt7iϓp0-&}1R5pF[&_S#-9[5}o;Ҵ&bUnSٽ˞˥D f6EHc+jOwX#M lWce1GlDҌkSͭ)'ֈ8P5"1{h$;+wwL}aPh$Sӂ\eCFMs|ø鄥D68޸9&E7t0kpŧզM[gifSDf d Op1?9|% tzEpj|ך5@IHQ ^I%i *z'r-g*O1;ulr&&0I!XSh̉}igc煟7-MM"mYX:#ͩ?]VB՝ MKW}% ؿ󢟂ց6=2?#SZb yBB6zIP +?kCw6HqD־}uOs,dφʶǍۉ;csqv@d YP;-J1o03O^x˒o/QoH\C%[u>[D%0*ҕ~5 .tZ NYjsU٤asÄ(5V9FOӡeAj|hߍ^6ov9ywPˣd(?T2*v^zԼ)PGT+Ap1Nnh~1Ĥ!sT`KI$@ Pc3[EebzF #K(yDe'%t:VF!6%QhmDx#Cm^>?5Òe ]9..7h3+؝=*kZe$(rR%h He N.:,-1usӜҭOXҶ5@]7x83qJc,} XJ~QxvCJ 3N2gOJBI(jb{ ޲H`%2efUGGz?W;;{'U3xűtJ֌-Ir1AH\o9EhV6BtkANbY,]殴!h}CJ<BHv+8qV6eko;okY9y cP|rK3q2I8T9mld߼; Q˞Fge~4p}*?>7v/i&$am.ȿ!GpY&:=W IB}]bjG017+L.SV%HpTVӛ!2/J=[}dDz*2^DlC_́/ȅi47 {^7ޱ\NFR@t6&Cr=HƊz +{V@̥0'{Cb6KޗLujLXY'7ّĜrOqP}6O/&s 2 /rKVOrsd yQ3T&1bOR cyF/]mkckn/(|Q+,&E<#ִ#}'_3ч&?//B"v`VBu X߹9tl6\.&0.#G^P$0*ŷ$UK:=;"rbg"{ D)uŁmԍQ!D;GJE^ԨXR*fV&_n*k>*K//S迓gR2D龜93 h<+{,u? zSŌ1 e}vm ?ohd+9hA%աG:&ѷ~2%8.[L^@ +*N/I"f#uЗك٩Fg2ik0 gFcZ5_`H^Z&z"b,V;s<̽t$A7"BM4<||mS`8߿oeW2dbOHv (߄=#{j'fu۰#AxÑhJqm{;Bku Ԁy˚ }D8[>%R_yVbZ|U2EZL\%k0G_ne0ZHTlJ)SHex *\_IِPbҘmϓ,0{禿ܝ)gFʑ%̟GţN{܎vJ{J5WʩQihڑzN FМQp|eF3al,!:nX@pcBq\N57NQF^UBTNa.e7`Hº*gYb9'b T(f¾yr| f̀9׻W<DL|g,s+%1A5~cGό|aj\LuQ;E<;WyIZ(O5aUVFkO=5lꢱ0槻.u|@&iNnRbD2uSL5b|QXCFh:#I?+Lt?#a+ Ӫr`: Ѣ"]bg ^xv2m*ecC^MY9{[Seָ?n׵o>2"J^U匼ܲlRz,nLtx&猛U>`FPDƥ#]WBFV H8#'(\#I-Cu wg'H&>.GALdX~w}z*'EbKZ|O0ķߨ#0}^ծ7? Qeqx؍C"eӳLD UlGg8n$\/^ہI;cdJ*<ϳ%##!&+A>hH3#]z2)I&o/ɜ,JhT50zp<*6"(B}<7ήeA]l5M삷%`)p%Vٙe\ECrlX:C&Zl94聀fMN֭MG)0>MdVǿ@j_eK/AR)x(LQꅠXԗTyUOC%ԟpKߗ{8rMÕvh{wtw,˂Rm _h'pd ]:IW7oŵ<[e“Rc1+^BPZg3ޠss]A|O-z!kTz?GlKre`x73+; )ܢno=\(7T&CviuKSq7mX2vԗ`|$$9ܘzy0>~T/9/>^+\ɑMÌ^i0sXEo'L ThE~%3艄R5$֞;/b[Av̅vɑ萱'L前]dY)讜fИSN@߲,KnQD J/Mb@'cYIv/Z%f)kNPfZ{X6 9&;ƾ^{r_:O<[0Zꪈ]嗡~4SCkVQ@mP`=jJ> ,4%J>Sf:MB8⋡ä.vN(h<~s 5d#Ҵ!՜5%=xVL093[gԻ2a.;{bR]W""wRPyL^Ş=T5;+dn/8tg6-R\+Z!t̡o:)} Ua0}fs놿R}ϩ&Ā0Axb^`aZ$l(ZO\?X\A>3QШ+Z6)Ȳ6+Ü  z{ +-u Ӄ/M0i;I/#{D/*O8rQ}8 "d2OW28F (չBLekKW슆]p|j"!1_( +]tuzKo8?4 AFKx*~#Qж Yc^2YrBsGKb9 uPLkݯs*6rni\>֚@Y-QDM{նXTQL{6 i5=ܸv_TJqAl̋`SV^B[;tojk[u u Jcl,$60TB \61C8{vW>[--ܤ=)e9OG͂,<ˣ1ֹ8_PPq{I+"W3e>E"  Q3 pN;_x}(EݵA!i Eg8148Ш'7 00ViZ5$٩|᎓ â#!| %ڞ3,$Md)B;E] O z99/Jr9Vy}ijDч"c!}MH yi [//ctc(G@WD늹^2J0OmUbR,"}ǥ '?9Q% kAQoI=V8:6I]IJ>_a r2;~xO "`&f_{ҥ"smܵi+rZ2]!%69QK6w$lb=Ĉ|x81߻[M68ڈk3}/ttSi=P܉W2wqI"S3C(CcuT; a7o> J !~]5@xB}0K d$EX3AY;>oU4[ؐ<in!͵R4w@J:D5%qND^9۸hmRvu040kXY7`sR@LwH[[u*CN,sP Rp#Hm$GkBmxvZAilځO՝{ k30qFPYoS}> VŪMXlOk[%'^ %rd<)"J:B_P68?> ; >\nU_ol&Nz uҐ9_(RHv6Kk81 tMAÆˢf N%q5O}iMnX"zV(&,aꚞ;ѬZjS\[mY|:`n`öTI`}lBW~j Ra9O. ?;MyOv0)AiՄWȨ#P.mcV`9s IC=2t8Z6{K@hriw I_pE^N[R Sadnx ˑ6í<dV71 "ܙ,m8RmTi$Xu=Gj6v}bDBtFX/<"s)xbGZ /\U ~=='x8 tN:]nҍ/'f+GSyNn݋vr2]1uvN'AW)U:DRLN,9:sIb'#Q-ʝDi_o_-OG, \Q[Ga+==RtCL,ŊBg3Z9Fe&=Cݓ!:*kcH[~=B]P)˥)3mJv{//N3nXckjXlvGww) #5O*ގ347qݿU}ahl#SZn,w/wkheF'ZbXN)8 W2:=*d7K jk`ñ9ZG݉# MYwP^Ԙfntr'A]ʋ_N0Ph8s,ۈ5`E2t*Ͳu;VGnjޝv9W5txG#_}Y/c+J& Vx}F\(MU3gXfl ѥ҂}[?o O p$Pqa*}Xҽ0W|x +qOȄۿl0.@w^k '@uP9IܲRz.eFCTCl']VuY񼡫os׮CvL^z5*կVsQ}f@%R\@y?:S´D!p*uY!MYBJ7OÈsh/p7[Z@,3Hh&Y^ݵTcMOW;+ym:TZ̕j2I0v0 §GM"BvbRcgYuSx$/E2$aA]$W8۬` #0I$=M_[*(6E_^j7_Yڣ 5sXY@,D^)qx(c]|53>z4icA146-0ΎBxy9öʙjɱ}.'UVL?y.:@܁<,+7o@'_6$`heZQVC͖ `GyWY&܇j%{DAoeA0Pq>mWVSȦD@JE_ 9I 22M#hI%RboB3L7{w61eY.ё_מR:@y=2#_i' ̺TW<Ah)VWm47i6,7mzz(V$˔^x`؝l;. Q 7!Bqk3K1Ok$Fϼ^sx$ t([kpP}rm(5J)k j3_h,H<,Z*=ꋵMDh3NH7 2tfSw[6ƨ75gcT NXw"|Ђ Ғf0`bT] ܟɢ?(dѩ,cg1iك#ڌ *<EL>6 a:I x+-֏ EŲ$! i0k-Al' X+cn rvn5se^ )We.I) RrPnY(ҶȲ w]Ǵɳ##  ,4.:U0ܾ|4-t`}yux* wc0} yMbΟt/7=rѰ+HM2 Eϛ|:F @CJI˸sL_H|(}w=rtG'y~A- Q6 l BwB(/aC$Rՠy' L7:"OY/c^,B0#r+ Ȧ'VW0xLUD& ׺|}z)v=k,-)]qV uc俺S4eN;6ȱ|Rx]_S4W4`PMtz,A džaIi.jOX`UՕ!A]өjlfㆆwD.RdD_2\ |&4 ΁+~L5ku@" kؑ栉buNzZE l@#s &[};(s@~m*kƲ:|BXD q!k'),oUhG.߀ V3RM$3{ JV@RJ/|8Gkj7 Q_LeHKIآL5BzNq~똂@:Z {#/sRi{g؋D0ұq0"( S0f).KDc,i674ӣ0)o7Q{?* ;.~j_c(pᔉU|v=_~S0^@L OMDR!P<p"+MM֩IbWx@hɦrZ)RYH7S4z3Pȭrn&S[ vXRpDl9>RE8^o_*,b7 69 x՟Z9&'ByB~yo9Bco4KLY:'PK%:& z[WYn/O.ipz0B -&r<2zR)ji[&AA3mf$%̶J/Jhc3-{uxpKhsmlPp$rCFԝ{kq6</\+ho5vX/ntɧ" {x8bMxmǔ1K*bOQӢPs75w1n6L?iŲ;juގӛ .u0(`?Ū185h MLd+7J[|KLM␖1Eƛ`y3j2 bE1ڃm] -i*f#DXJݫ^5}&}\Q<)nt?!̂Cb| QS6B#Hf)n™:23DȏdL|lN|=]_[#9h69{zؑDg0g#DžQ J;x 4tBTf!-G gƊ",n gv:Xs_ՌS+b{CʺsEKͣInW!x{2u&$(('v| 2A f %))`$)& ( .O\ o= 㭶|, |9 B4miS\7Ic!4XTs%t)+[ _,+7p gK"*[V|-&T\wXA+L: 5F҉Ydq}JeJϰ]mRQQדxs[?*C/  f_aUNG{rHٵ}_7L_5 jgUD:{E xqXB Ax zZ|K!! ̥!gf6 <:]1*/Lx#pq*HtdoXL@{F_"T!]h{v+\ ~ڦ䆏}#;IPVha']L5hz4IL lԈ N#mS]!4V%ZFک0S;Q񕘷Y r6Pՠ9KOa 8h\rݖ P o~9sS#g'.L'"V6 hž]r0H v7F,RNf7D67e/sO>TGSz@f+.F\bb󌳚"aPC{$_ށ ]{I3,%F[!S9z*&Y.X+Zm<1K1Pe=# }S|S|$@Hx~* eT)xgP`X<-@Dt3*҈kfQ$3Ԋ \ \gm%rcծFu*žT1);"s\sW:g>#a-,nKJ7M) ru|:AD+,0 r6J3d)~>x{-E [l)=RS2ENh ga s]x>&T@*mMtx5BԬ}PkTZ# x21e*B8)t #@e!»CI%_&$u}`jbf_S%| lN.5DNĻ#x+c儌m:ceմUZ߳a#)i&u^jOzXaA95 㜭W aN&C 1t:fDHzh\W[a@0cu=h *6Zk2AH5d}S|RoE߯V/Sd Jyqj.2kbm|2Nmq۽6Rd|.io˓Mlfkk$0DUaQ q;ڂWB>צ"kKM7g* U8$*W$߱% ?]B-W. y˅!ʠF`8:[բKHH_0Jy0=@-a8>%r,ᒁ{v'hs@Gࣦ,1kjA)k$VT8 ;ǰ;ʸ+I—DH珇12 :EGSQAb]*kgʾIF>1/(N5gu"Nëo jε״d"*>3}WBSUS77}C0u:C5>}RT 0 (变cd;/5bUV(Qq&">R].Nv]k +~N'#L9ե ([ǘ6RHqr*kb`pByOT~z+P{{?o"( ? ORsD:,-ot%I G_N~x4T#9م'[|-^L#\}>-τ&HlGzo5VJ698Ø#}ހ~|:x4tZꞬ$Vd+^Y<O0K1ahlaWPx7k5YDECmgT,%K2elIPz;NaF,J%/Unv.hkn*S~2Sl2r WQ${\ߧtIBږxp9C'! fݸVTeR^[嚥=j~{%}173:/hW]Omo#ĩQ٭y9 KSa[p7z~Rs60]ٳ#5_ -ԃ`1X4@299O,F5[KC ķw,I/3I> VpDrfSg\P{%"Pn^aԛ+o[rB }#R| =>xG?@q]Rnx\CI qQA(]F[9de[>bOdDaKv4Kc@n?l^΋ўy܇ɬ*_(\[6r:11H/_u,\_!5C)Oϕ&7̵\" 1w-ⷈ"P_ETk~ό!EV[ V(R;kqCM7󜧶hwgGPG  r}XtYWY(p^.mbH;3R"1Ly_{?)nRc{b1ht*i2NLC仐MH"m^­{{s.'e4*ly5vOC (5H2c_ w+Osqs|SXI=6Gec})R8g;H!:}DHM p52(%NhIOhE9znU#:$봫 ,iwͪ_ۖmS>" 1C^`'ܷ sQ|kq3r w2.;!Y -?,di} VyGgWeง]WZRZ jse7IWP ɬ`<-3 {;HoSͫCR1|Ba1 \)&'gVnrryyPW~3L\e]wΓtb˿v"vcO,8j'IvHϱrRQjEzR?d.Ի.zTVg:t§1Ғh_-pL(}vH)Wi们}ɶJ%I5Y>~Ul pVdXUETg! 1o"Nc*#e)\П0t2X.9VnIO)]H c4AP T3STp kJZS{`DZx'z:WpG{+8Ϻ$TCI(=rYZm .dlv\ǭ!v[gI ?EX''! Oqb-ܜ+Nj2T]Gp~ V0Ϸ\|Gc>]Z쫔ߜy K~TצԦ1Sΐ}x] 8uwb4ү'-_Ss*]-6uxL}gYGhN# C;'%?2㷵H[OiڷR[S.^b ٰHNJYڄkThi"Wp<W,gO!0;K'Im>}tfTpN`4 Ǎ B5GACjɓ8D2kZYM'uxɱEYfI0 lQR![e1nWEw見m%ð[@ΟfT'JRGB,(>:^.3AMX; 4QNh=MPW#:'feo(U(Ԫ[t꫻Ӣzi*XM4l$udX5ۙl+o9x ,&NyyuS!hzn>pv]:ʌnR9tI<."bwv|N{BRKftc`m>tp%cS+MXCic[u"FH~-qp uoOJ c22+ӳIW#K^u@)Q,U ~;yT+CܺI((krnKLn[7vy~}\XjpB} hpOk{0 F%RLBg'!q2s/d8#*VU*sUs䞖BZ~V=u 4R)Q]<=,&GCiTeߊ紨.yCx=IC(ݬ2+MAX`Dߵ4ZY3gI!'oL?Dj@\v0*a^XlHD= i:N(G;LaDGpwP-=j؞_ 8Z 62G3 sYKP[>;O2}yU-839üvN2f;(qdKҘPuO{[n*x䄷׋%66gwDQHȥ(E I;uԛT=>2նz&enl*VuW[=P^-I:גB>*&n?)?͟mIsn]s\L:u@_r,(\a[66Mؤ\mY~'4?s!x5.PYTwp\ٽ's?2֘{ >,b$є1dbivM#"8عW6kZ?zG@3Omn+Y#D}BM+wUv)4#]b&.sE4ms[iQ 3ԔƯRQ*gXt zJ5! n W{o8_&2A2'ڼ?v o  Np&;_nG%{cԟVeH v˱|!6EQʱ]kIV& r>H%N0=,ʆX$2##&W3ok^ .VLGLTšn7z࡭W'}8nRᅨ!EdDmI+`ʇfN"_haFK9:iy ̚nԠNy3Ĥ02ES?'ژ-Mgs"g4DqbAI4=g@%Wݜ q0V\f_ Y4'IGks;'"Xwe]x/\mBx_;Ϩܰ2RPix"kXlq˄r|fe1jy!((і\-Z\1=E)_s@_]2W`l<_%cakCttq}꘥tb k;4Ŕ;3JwgRF"Zn\ d*@Jxhy)54XaڅNn$j~_Q.N~Tj:Q`,,uT c4p\2X{&W>JxR3(  u$|KӏiJ9}7dh}@Y~b S๷퀟2C)2"V1Ki NW¬27th'~hrIFUY߶JfԷ1 !YZC!kq+}D|6Э9WI/{wrx`b4:fQUZ#bm5=mx U=M ,S/8yL2jqD6$xy?L7"9Gg*0lzLAH Pipؘ"Ԏ}<ŒV<DL~vX,8=|N3lSkFrv$$9JFG+-d.8 5?VuԠvfmޣ}kQm] 6pI#^R.xqRn4`ٛe`^7'zeIr8e(D[9Lb[e1.rCf[o8& 1 C8LemiDN!^qQbqҕ'5>mB,`Cfq?fE9Y-/E5ƾ}Ap=H:G1J)k'&n_C:ziM!f]VLx4.9Q([X^T]CV)n0i'O=z֛t#_ImXbBgP}Jyr ճ+b9Iv]c8%xa R!&?k&($yaLVT'b<["Z;r@^^٦7h-xià[T=,ki/GLb:NTʰؑ9"?PA)|>6/X5 ڴ!*Gi`{'f"a'-b9}wK;# %Ą[38I2#@V;N (,ŐPLŔ]];5J_Q Y6#N^֞ʫ/O}m5,c9HxtIRU~j0~ ˜1W=xNӭ\7< 4,%p>ANuw^ljs4.b!}bٜ _-~urue1pCg!7=0t kt],CIB' AK^H5:lajWiCZ<+ זFZ}4{DJϕ6pNg*\Ofp ]f.AngNf!LO޴Nt~Td?K~y a\ۢS5 6yܕ m^;`!rAp孟&9aONo1 ңқ8GsA.0pQ$)䜚p#Ҋ^T==vA'nDF&&/hYvwzZݩ'9 ȼ>Pxzv8TDgAY2;+YGCSQ##lrϲ4p0~6=,UᆰL+, [BO}r!kmZۜLC`po1s-XYq Ɂx N")?*j⚄ G(0}v,@/Żrw)_n_Bvmo;BiFwwoC.:`c"Cn1ظ|)ΰw\S?r8)818FӍm3=rc@L__Gk\J4)RmJ*?zt 06!/Zs|cPfŪ&# wr^2U,tg$vTY-n923͘ /GUt/#>s}&Lȝ P_KQΝP|Gp7(8 A"rX]uQPa 9L2)⍶-BX)_ăpڧ8*&xZRI82Ȼvt%=#  7a]~OJ?aܾ_h\u:V'[WhEmv+m lr~%V<IArltƐ3e|I B6'7&NRС=Hh|k_Hvh =~Џ>}J>2a%5!س.[CUSnZӢ{j̛ ,NY=o7g܁LLZD4'M;+$@C䘻x2$Qa.="!r+2!^A Cnv=GےtRΎx ^oSXir~אN_c#y,g }F<\nE#AEQ[ _Ut mO)L ~kKADQu|\7AzZޥD= Bi/0R*NNO6*y3  =H ƚ c !m,2ENV!\d:c$b?3Qf/xǁAE~l,H AГIq-BaR;4'FadjǏr.mڨorobȀ͟pI]`-M as%Lr1XEqQ{ٿ0>g v۝ Nd̅Q5u&VI9V{.o?D\}[ɃG+pu,!S?2 y)2XS te|D @׍; (3&kd3<@-4Dfqo;3#p =ykj8R`u??7p-S6KAʈ1)&k۽ET5a*SP) 1Au im|;VY9Ա33@jmVܘ's>=D7_=nAvL:GeXT}l䪼zYq awwSz\/+L4TRIb1/T :uuS,,;:EfNc~Hfm]GTosT /9 Գ?`hϑEFC9vS_22%Eyc%u2\RNvÏZ0h%I1|Z K5/@w0-bdtDm a b .BqvEJ x<>5T 6[2g=|d^YD^Z?FNT5\\ m)#,f!70_{%9* amWkШ>x)-[+ 5]Lj-#or@i4 \I1۠ y.İ*:3R`i=0 ,igGR-ÝldDQ:"b͌5"0e=R@b6/#i h&?1 IpqRLsSqo#Lln@F rzЅy_+pjB1o $3Fz  #7̘jM?<qvo7S ._+`.>Q!Az/3xqB;}9ihTS`,&hC6O;q w {šun;4o8y\ n-yϙ[_PFu lYEo t\DKZ鷠鐩 I3m7 `Yg(bV0 MW?+~x}?c ,=،VJp .ҧ= oF0?%i '~CJvߴV.Ogw1A~<Y!z \̖׉ >KFm5}hߛPaALy֤5:KFI,#e-XhD~U[p m!r{nLxs2|?u=ot$fXmuʜ QqeAO}{8{>[y70ҙM+(nncBv,K Z,Yb/1 H͖kAf'dw$5<ά>.xb`;[fbMӥj9jM'zKrI/>E$YA|\C%-kE'^NJyjo/UZI/b =ޭm)udL>E H!oDF(U4%Ҝz] ތ g#o OVEMbX(@!x6cw{HCm2c;zl >F|Qf1 Rp(YH?}ʔݽc"-)` DurWuĝ$]zC7Kg2ߧ~ǾM /ƿiO@vS-i'uߞlQƣDDh9 iv߿"Xӓ $g7ӃN|CEU;VyvEЏoNƹ 14s6/S<,3Р '(au2 N@Q{vSx>KpQ3!X]KD\3헓S̗!j,]-qڂk$'.:Cw9 ;&}̓m%uj JK)$Md$ ^^\kIwU=-Ȍeodd6NW9=N͌HU"l{g"&L&'Ut`ͯ2FŸ:I!\u5g)%1 L5.L槩ku˵x_yEE$vDR2EW'y&[gp qLoZG@,[+m& ~J1j}S;ja.[.rSڣ~(?x0I~JV@w" }8Vp074/&`),. A\6`<+ikSIG%Kly D8RIgR,pJŻSAv1kElcX>lŊ1i1wR;Csm6 8rR8Q- % Jr',lPPFl ;~QMBW+BHk U}QvG]&ΎmG:g^CՀE_! '%5Q7QmAi=I{ז{geԆ \5=}pdR!;=l>߀n?5Pr ɨ,0 xsqZ7Xb * ȇU fm flx&^Pe0V.,h+˾CJeW[ 9Fk>#F`|N?)M񴔁wgq\~="m@yct^eAWgc V x}9ÇDBߘaW9vJQ  :Hn[h2a#1AK LLJdrJͬ8\ԤhpfR_~2ǺaRS]g=vY`SDY'-ӯ!lGSB,1TPoDfV&Gb6JƎ٧F 0uq뱕4\tq7 @-)8|r8#_)Ɣgv)֐]W1]i)Zlq{J)ʫsR'B^: RBIb )Kup|5}(1^a Pa!6>A%%EBZKd ࣈڤ0y?ә\b_fBS2_& xP& y(<e}wymGᐯ6+=}#zȢc8l"!gY谟 0}}{(-_es~T&Q{nCJLz'C1Esr:1MYH>z'( ~ UשHJ%\rW:$q0Ǡxbۍy7Q)K9^x! 7PBU7X~̈́PЌ;rSv_b)X5㿻j"R!>jLa >աEs5:`@ú;$n^q7O˩/8u`H6teje\sj*x) Ps׍?^Z꿂f"P vʁ\c2b+CQߙ>Z+Z) :aB R(W0s&3H6B ^O4{͸;AIOSɉc[fjZ{cdn(nj)*Jg ] BE欽0z ͬcd,ST41wOfMV5ڝU uboWҴ,51ʄ*E5RrOL lVjJsfQrJ TB`X!O+o?8yo?UFB_%7?-ut|w]L U.ؓA5r s,,39az C8ERG~.ř!G8i v\L~} y(Rp-, @o%@?R7Qd0ȈG.@γˢLh/}UV}zih;1P8 L;RU\ָ6G "fLS:QRrx- ̰3a])%ΖrѺѳRoIXm7,K~(YkP)^]Ywf,ЀুXC;.ʉV~ LpbA }<Ƥhp=Nk& =L:%[RQ'M~mQFnWH: jZ:~%UUKyOZ*9ao*MLXn^WFjH'=ꌰS'IrfJxu, gI'DYb ?*/{_;rڝڌB̩c|n2'.'4ɶ7͡ mofEc9_o}>O\T"/ꇘIAx3YJؼB~vEK CwpR@`ې|o)as5QDV$z9ab{v q m4_g9^dƗs u7ӇgCZ("E%,wp7ԢsC_c\S{ ` h4_@5bc})vu jgz'j un%R9#b[w ӱ*i %.&} F;.s dk0#k )Ш@A{3$Yӈ4W|D[w`¡Lw9FWo( O VG%2"DQw4DgIxd'r ApUWM+@ (gL)ND P*Ͽ)O6A 3_+q#}JP=;ͫqN\37_@q, UЖՋj hSQBwI{ІOڃoO^]N߯,kaMfWEVmOkQ Ob_κ4 Ÿq+4A!Sk~RŗQ&h~ wI/IyB]".l/E^~=`Z i!˦ӕ_`k> Y*ҍO""]>YqNn?)Bc}xc %DklmyuhtW~mꭿ,GwuOܟKɀԖ98:ƕ 66.| کی6l^%fr飌SJ7Nz'~3W |jZT]Yyj>`#WbA4ߗP$C 'mSZ}sU\̷ŸDbdbBW?d%ǭ2qt*ACo* ?;C6^]618j.)A"2VT#bKg }P+YcB\dq"vBkH&,7%a owg`LyY1!mNhfe4smT}hCz&9`q,LGR?=GY@\ _>M.O % `(v{AGzU~kc7SiSհ(f#j6j15L @.&}8,(-W\9pqXaB.qEA t3O'|Vy}Н %CZƫ/1d$slTzod"R3H bMȉ%B@x~[k.m]$(\":lWsw&KA!Tz1olPE. 0Vy/{g\'ZXJqczMz<tfi -w>&x hh\e7g̊[(PTMy,QA.G,V5f-eXhQD_gdWn^{Wn5CUS;I'0)bS-.[QO;Q )7#H+Gr qq;GYn5_!jwod"'Gm AN@ tw.ؿOmG+ؘk U 8\e#h(W}uAK{զWNNRm.apyw3 }I5ͨ6ghNW`TB27#vebhʩ˛YnALELV(\~ W¿g *35cy%USY)7gX0}4hمެVJc~JkW 6MFEJ1VذTRZ$w xẓpG!,ẾBj沈9݆ Hb^,m#Yɩ/Mo:$`͞R$STh+eMi&D Bip\ q|@SA7u?-șWKIvw~ЃY;s{MbIIl-NaYT*=5(4;{VzkLpdS^\MҦ ub9ZMޒr33{\ӖN)yT:AGv9)'#%D5 ؽce4> )]1p}C uث}n'aCXBRD_ ?j;suנ] K;w)|ܑ'VH4VżW$k( c$(&:܋h|tV6I,9tLCrbyq$۠p I4rNO! EԆ&KjH+\V]GL/-6pՇEyكWHWl`  $k'=\LW{|= UN\Y=I#RP8QgT8IQbT&2ZlW?7yW| |5G925GԲgJ X76N҈ieKR!#^kܪ0.3X?$֠nBZ~E+7R#oiǝQ(XQB:29ɑ4nc/ۢY6X} R `)6dP˚Tej~ lA՘cuyjŒh H*xޜA_^ZaIRs_!Nl$St=Zf6h.M eCt.Mmv=^[6CSFRZJ}@bH$L^S+Ppܟ pB6u3kV!< RDJG"*딼NCoDPD'%q~i [ ΥbX~/H&o'^ЃQ.RךD-~Ua8V.1l9\ɹPRaÎ1x+@V4?e ggC԰]0xvjϮP{0uԅL@e|tN*[$ #ԡb_=kŦl^]mR]>71Ao`3׍$OBNBc[lS/cVlw+1]0jᚼڒ|~÷g|_%T=ejXfϹ !6x8]/x*Ce{h-P |Ƭ DI 5XV87?C׭pc|C@l4\Uq-2W,m Y|ݴ8dj!e*SnO *x\6rrX=lb< Ij9QKӆݲV|_@-6Z fS#yg$1?T3/\4T&Eoέ}HCE`أQ6U!?:jC䮄gsBc?Ŀql'{Gܺ<y1<꜃߃ߐ(N^' dZ$t0<5*>4}vB PRN{#kf%O8f@RGm-_wFލ>H6$ QCcRbn;rZH7@$Cv̕dR?8I4j z-NjhQ`6ּEd= NC_L ݘJSU~Ȧٝ<ث<ޭ-oK*p} ;_50QB8ۍBBsQBFNہӖh?\>/$RR3D.nYAH -lzwmF7h?o?]lnD&I  S8'Ȳ^-)fIlqN%:Ng_4SAvs9I򎪽&ml`n bR>ʗpJ-|h(iIZW9{?'2Ԕ!|xF'Rv]H7YHRØ[pʽfėٶm;9^(w^BYA3hjʅBEgӰȋ>m,fV9|0XNiѼr涶C 'd]ꂓ!!X 'iEmS&IHPEid8sN#GZ~pڇ:ezT< /b59fR^5-x8,KKW{5ݰ87D˂G,4IVX^ҎQ'X̝V2w=u :u\m.$&lW9UuMZl.f ^魡j;gf/G `q ֌ųgͦUOɿճ׃ i&σ4RkTl<>uNk~gd|Pw9Gy.ο,~QU^#JP,# {uNc!mLdDuO8σdTԵՇEw:S#̈́ E &Z"ho{4z,d֡uɨ'`AߢxK"4 r1i_:u'Ctd!O4z6툳Bici}H42x _Myˌ݂XI_"@\i8~;Vifp[Qj6Fz? `_CM<ѣ,]Ѿmo6Jozx_HAh2Q)Ki*?^xH\bAhcnP Wڥ|XjQQ)fghр4/wpI<V$+F)om* 1jY $_fLco4.V)flxx"7#譧M1,֭ 3sv~n׈~>Mqe;!Ύ3h H'AGPUTfIƽA鶱?k4_I-'8ճ3y)jwit%C|:`?/]R1WYY}|1SW9E1z'_8r۫EDil0mE$ڰ@+mfǚ<}=.K3mJKvy¨ձ53Tk!ͽ,)BHRl\_ߏ˒em,͍0kLڶ^nBn[)3 ŇXe sIâQGCU\|ԹT18ߘ1r\ެMAfgᇫ QF/b8$kR~bPL !"'ICQW(]/FPNw*F<3v^4Ͽ^M_ 69Fo}@-.F` Af f( Pఇq]YJ4:fՔf|ȥƯ{YN:(QLaIB+Ts5s+RAF6qyZ.]؁|Jn\SSȅ;v,HuՋZ"qrIǛNc^7fM*gW2ƥ\8U4əҁaajx3D^BZ~/#̫:@`Gaֵ|]$S$puiU?pjm+ٿcEX9hǻ y [ưKfaW1&W.DB$?t. 7"xXdNĉOw/w qvjœBE SmFj3~GwEڕ,fyX B\bk`-E m$sKRɪٱw;TA)(S9@.[o, &|jJ5P_Ih~aAIIy=A3&61 alKu:v3xQkvIk8 Gf1I Ed7D{%ӵf{W_:oYT&z*ېqFq4HRy P 8;L%C`hlyDt5خryvœ0hD:)u2fke*:OξE1D])LZ DDsh)W8_ ~(l*OZ+fu=w\Ꮸȳ\Ǿ˗N z @8IivA1Dnf*7 zK^^rW0Z;~ n')l)+Jꣳ+L{0jV(ym6ND/d>NuTuD#\])Dҁ=|hD`R߰iڄka)L^/~Pu?[Z̽u -V%}\|=*(G9'+yKկBw >B<.Ā|-G4 FFP(Ln PzdmM5V(vu&zJuSw=71c m/z `8T!ƙX@JYS^ۚQj{W/$Ũn _{Ǝ&9]|t +8Bj1f)|I֗F"Gg7+wܻae|uZ-Lpv`jWlҲw]7lRiom.9O?nCq/ )Nva #R4:knL6F',ܢsQȐr\[]]N>R< vXgVAG=sSYR~VK 6)l0y)sh {TH] M-}ԖשSrj",/C:!PKG.KurНQNv\H0H" 0*ʇs1f X+'aE[i{I5ct)|@T^DWk0xIQf, xݣU0WQl \E ne$%)023+"0{6@k)yY؂@P64 !Ԯ d\g%d>kh8Cn?w sㆨo-`Âru'/UdcU)>p'ZZKpios/svBүlxFzHR&NT-Q+\A7Q7fTd3KC$UK  /kz9tlB!ɠq򗉰,l[ׂ+RI5?FOw!8=Rj~VS)!tgI$q3f|2PfIYvON`DdG@6>ÖJ*]9菴:/|_ต HR-T쵓Yoqåَ8@w{dFodTUm㙃*Ԧ.cA42!j%s's8.G*qƶ%188(MWH]ۮa4?rWߐNbW)F}mQzb*ޯ(f#dho(I@fq٤T~DžF Ac{{|XH 9敭!cm|fA9<Ό”l+̓*_Kdbw^ǂ:)pX$`)ߍ Gq@A,|b nR"u,!pYMne]>?B*lƁ(>|;?pְ,OU-+,q0ȪqDƋI ܛR)w*K\18:k>|d\eh)!}Kf@YI[ Y;[UM}ܦM4x`Tm טR-\@x@,!dre\ r}4LNgIj4kW;]m%xt_|M՞5^{]$քnx$3~7 -, ۿ FuMGi#[a;z?&#K:uT~wO0 nͿOR!fc*z)cG-3 nFxFE:ah+~K=9SW#>h6×```[`)>*']( 6y*[˲8sqdaIgǫ\7clIL^z31˚]ڮ6M$ `;tpw| E:GoeyېE\3#&?D(x-*;x֕tq*a'YVtt`"#~˒XVAE'ሗVSg5Ți`=y^-gVj8zA5u1/! yUG@5ł>/ׂ#uҿuX15sd(eOzg*/,Mh^qn 奟[tx^0]Rb2嫏piuWg j(1F`8,:&3Ol@JU%Ӟ= 8>W*(@0GW7";$]<}I].it]aK m947Lg'.[gW0 xBްv˭V\D=%RX2]Nix*6؉!`@l߮L2nɬ\cgܳkDE꒢mIhe%=(wJ~wʰ BرS PU8HCZTI|UJt7T&XBbT=~7")7bALy 7-ؘh~)?zd)]5@jMFXzuQT5)0mzuǤ̪VI~ {c# <}T晎5_Z.V(9_qDzO1p~Ыe͑@͖hoᦦb=K+/!׎R;I^D7w>|f ȀSW\ե\Ucbbr""xmRP|]+"b5<1 4W\Ca^:8V:$M]@/י'D7 0mܖ  4NA˴qMԓ1f>gcEzBDnRׁu;`KoDsS].WjK}X'Q%RG<sD◵|qC?,BLwկ`zG AAC!I\!u/N`x0䥌ᰲz]ƝH[H2Bj!&^~;)*h| Q&쬭5m%2|ԗd27\_4j4q¶7uvXYP cx=^ӐK{{nNEǫaD_]UduAg#|Nza"EmN L֦ \~WM#炁;T !$2~nB*J&Mh ~o.=Q=Tu2:S< uOI. pnȯ{ih2__BZ_w$KmO^H1iD0 |@ -2(Zz>ZP3f14R0NJ< aԗ Xȼp4oW|-SGdp&+SOCP85,lV3yqJwQjČ&d/[F,[kcwiζsZ#>H$znF%3zF' M+O~z4Sq=0mU@Ϙ to$ )Tc$=6p/. Ixh 5 Y@icVMUe1S)`IS[Ym&txy~ֵܰsjf m3̕fBqza~^1ɞaJ`:6ZkKv*89J,2 ,aQ~#Z36Jxd#kڈs@1le)pC&~h|S3;eɎ2 陳jtˌ0OL*|mA6TRQO҈/֖{[ DcHy2u/ 䚄+ĵh A/Jh+ zrp⌼A<$xX$Cl1Ս[\Ly.n8΋W!j'i%keLfpiRuOD/+).͔bULt#.Y3% g4˵jfa#5$s[{b|;Vyw.[sB5bUg8CMsh [6ڣ%9cOno#2)s~̼y,Syc4XjH4im1 ojH$t0P'4k͍dl ,׳0q@p# {Md@{w\fn$и+Uy7@z^rOMQI ֥Fl_.9Fp0-aP%){#-t_D"{d`;ӇiŢ'Pg17#{O0eL^Y}ޘ&vQԸBJ?F-UXiV>Yy1(T'yXz7^`(_"Xyb5m FbI'ghcE]^KI\\ؠ(Z8+?O #"'^$yL͇&ƛ.!ﭛqOQ LJg ;L9Hj#٠gBZ"ψEB9Y鳥1 u06FtAϿk{%? vTY>jYǧ` "^V{]ՖcI]Mk<9Ї閹d #:BoB|9<ZE@ rgx59 qQWJ+&3 k͌/w`6_n/[T;q!x?c\-XӒxlsY^ԅ@ y#EX0t$5/^ڤHsSa-d&|2߰X 7z}Tj,Ey5H̅Vי *(~HM/? ,f,<"XCқ2X68G'z(׋9xt^PgZh8ה4Gu#s S[c>"P1ٵ\4Jde\ba b}*%vzT;#F¬zf4s{]G|)$ # 6_[/\ںJ㛌æZ3td *z{Qvh#Ýͩ?#g t ~HO.7n.Ȋ0B;O"O/%@  M')xVֵ+% @NYHBU?pS>y<.i+ߏ^9Tw5 6W4RYB?;|p IlXjޟp9N"O+e5p>H?+RmeGc2/8eg<\Q1T6p]wxi^PEJ{Kj2QM}s K?u'00X3~U-[«8t{]HWS[?AM7!dk*y2 Iy׹ļ4P)pY9] >EpE 1'6T8}R MT$%_uO۞BAod\8|6T!d`*k=C4C@/< 7C[—gR֫SDinHleۏ*bWWNվi\T8/S]SIiHZĹ# G ],7F?jb=YkI?v]o!HmYLI^1_d]4}q8k 7l_Hք;HG±Uju*9%fԪ\KPk7Q*ZRw)6Bw{ F!3T1ڶK8t)l劦DxC;(^`>)_2u!Xt6`6pe~i()3`~,l(0lFG[7\ b7=t-kxğK=[CH>*$ nkȠb2z*b2kduX 6a&XiOеǀo$2sHh[*DC,t^S/, o?K|:-nK>2`g6t*e1d>uKiv÷Ϭw;,fpN텝Zh{pPRT{ॉzDXѓd- E(A|B"X cҾ”sH X=f6dDe *?1t_E'dW_VsvtUtw^NS*I }khڌjD0 9 Dd$H2;LTH9١諜#]yYs a:}' &*@qw[9Z3煄sZR-c׈]*IcJS cJ?c'kT_:TDhȇ, ץ~WB"M՝}>[ Y.r5᠇u}q,!:O\fs,iJ?EWD눞./i;C~'RJ T ث.{rM$e*\҅\wAbX&|Q~3X h}q*cPrٕ-6YVvF%$ul|BwWzciu V30*koa U^%p=擪0K(rKXĕ`i3ֺrhFh!JK 4[h#pdުAVIo쎎gʌ[Q7K _ 'dJTY ۵4ًX Aj4i{ rOw '~vI%:ѭڑר{*Җl;w;V08wkoS?sL7g5РV]P:w<5)K򑢣1$C:p? )ckό~kFNSY2A=_?-\S<"MW6:tŝ8!J@~91A&Z| ǾiPW`6pgԪd[y N?~Fv@Aay5CAxe3k{ 2~z6s"e%)8S#.|DkD5J msK fZ척-KZxHx3|OiEu.2ms$TU8.G"Y0(G\>z%F8I:C=O`BL!Jc]8%٢F\9؜l҉SV dE}|.hy k D3yHꇎy|j݌CE`)#ޟF{k܇O$KdBN~駀R=UfЬBB/ǥlqsʹإ)xŽ2G[Bd]h$Đff|uʼd׃b B1}Cd 5Z-zT86&~ڧ!Ƥ-{ю+@OCOQ+ BV#uS v!P}<Bwe/)D*='#3{+XQVJua0T^n.׍YF!ab jn`?]5h9/X]N P۔)|Cr,`xNO9r<]2#CK;55x}FX+KL]w=OC4Ӵ4S Kc sXnއ7HB1MK1h~(K.=XyE٪Dv8[?Y#J^Ybv8UD{$!ڗn >(MM욀*@ِҕ"lfqbq6|ZLSƠпLc}#zz5f~4iy)qޱh``Wrd?Q/Sл d̹i$n X|Ex #7N9]_k# pQPO|ud{evRL,/R{>$4:6ڂgQ~W9* KpI7XC GEߖNُ߯ntڜ 9XY ڎRJm 4^&͏KL0:@a$ T}n NF]_>=T$fjNkEb郅ŠˍϤ̓1KicO8)ܷƠ">q u+d@]& lǿѹrRD7.P3,Q*hy_Dg1 6)0Ii2/^ M{0)Amc* t |_;n%dY&^ӒS8)cB~ʇ@q*ΕM KAZDQ.;::Htm/Ϡh_`LiL spfN諸Nk+ho@sĨu$(D0p+գB|X4>=e}n酬?S nqp?5[o8q\R$?@5N1$>6O"0Ӵ! H?^- o灥\{ 䜟?a}.,Aoܠ}TV/w 2ZtpV5w|~8F_qj,1 :f;Acx #Jȝ9Ebه|bO,P4ӲG0/Bq,45 N90Wpfth0W*GvR \`Bs*fp?30Շppy =BȎt6U_—`x ML`fM4މJ"nG(ϐу)eI#d߁Jy3=dÅ,dpEK)gr`p?IĔrZ)A{CRRO8UYF@ȃP]BR)Rp|RŎܓ$}/9OES7tKCsɛ\XCEv2GTy.ScaͮMwnw:1˶KXLwxޒXpqQp-Jо!HLZkȅbw^^\4ZG``"P[Mv}x&6mCq6^R@K&)SaԮW#W|ۜ >])dN0/'LO@L"pN#5qZx$_E"|F,I&4C'dŽ"L@C防:ɰ?$XjHߨ]?}B&8Mg(' +AWd?C-?M\ #[FXMq C7xn?Fz2;qsĥ*Bu[,#>) aϯ¼Z H$όo~pgD#,2ޫg8+ٸlvz_GnQY01$wή+%t@Ń)81p76ߘEgꑕ:,tݷ9>4%]9Ŗk JH|;]qeDa#t_ 3(!#},@ ^z+lDZJvX˷c[[n\IMjj{~HMz@Uݟ[zQD@s2Y lԏ(,B$a lٗ5 Fȣx3E(⷏ ohQwu/G6VUU (svk(I&e!la TjmiebV_ý!ޏŴTڶӥ'B=xשh"KWݢt8~L!yZC̟[Mq;j_u)ʰm": W6+~,ui\wdAsUG$ '"}ƫQbau3 !l–&Y6vM|Qg)פ~&Ug   wVdj.6(!§,(yU5B6+nb&)-+hTzXÍ)ᦣ :[j3&ֈ|?@+)%$p$v~(Mc#$WI|5 grm/уd]XYp +o*N{*–#ȏr^* Ӎ{E"bc/}Vߕ4bK"߿nҚd~6G^}+(ᯞ1>7O؂m^اWVTʬ4oȝJ;H]mT}f$/oѪxave1Dc&`oGOMZu u JD;_]R5{zYɀ}WYɣ ieݝ 8"xZI"qزq~\yux=/W㲎%vEm6WW& Ae7GN娥93kMOIݟUƖ{ 7ی4poVik9nq{I:+܍N2mYFaA=xcK`2s0r%,? "iB rmGn$Eӧq W<>;Dڅhj73>J>(Ctw53 N1R 7% X̱AB:Ex13lBRqYCE Dvf%a fcG@.%I[Y<&ƞ\ P-ep ;WϹELEW"]ڔ1Zؠ\9b12X_FK6lb̙nj˶m@BZ1K6$"o1I3-/iSQ}&Ǣ 7fAhMN8IkP yރ5R8b$RR҄b`I0q=s=GU[|Fnh=2?KE-:@$?Tlv5b|XXBҡV}#VpaZn:")ùݣސkaOln`'zn?<y)$x"䶑ޅ<.fZd[RuSԟc5<ўZN=hibSɕr_LMw#a@XQSmo>F/DŽ x QIi?s(ɦ: y.oSښBpD xv0?/WVqsLb鬣H)UvH%5c-( K77mO@/dS`4;l].΂ Dᾴ 61 dHZN܀M#=w1CHM'+EB!AQuy9~Ue_o_NDDYѹn` 7l vw){ Tqi9>z /9vc 6.y$,dIT8j֍Iȭ}Ŕ@/yhvκ'Z)Α6Oa˝S~VRlб^[nCs2OlPR18i#ݹN BL`!Π GAgq׺ϳ(㡝m4h 8&]ҽGcT{ZR+ eIs~oyp >晸n=ݑQIo4 "dٚSzmB* W1 "fدYڈl\i})(qy|s58s, GmJ\P\ N典ihp`ۨB f-?v̷scL#}ȗ)أ 8:)}Yoڳ^C%WOY9of+G otC0+4BǕ>Ate/~oP&21joSM+/°'!HO')+S' Zq)MLn`WxfMGap};=Vm9`2ݗ%qVX6E&b|d%4|"˾N|<*J .rRHd0gE:$H#B0"/) X^ ofZ^) kN|H m0vP~m [; iݎA7ZFDʗiΉ4Ff c=\^qr1|p!؜vԻ%'BС!*gI2 uKMŸ"ڮg Qt_"q2Ez9x/D`6+(wwvuHYMۘ|7 9u0{c?"bbWUwJY9$N ֟zS'N ~cop`@ ^2rj.nzQ8_]tki(kY;: @w D lZs*8郒ɇwV4 WݫߊEӹh#nyݕ=Eժ*m!t揭`WYnntAθ='wҭS L>&ٛO4FɨP*kND [E7s26/+gZH \ve= f t 27E|'ڌoxCF3#:^]b/`2A& =£oZs/' a[*ъnH&U>v{Em<]+GK^ (tZJ\ͭȩ2g% z&[wÊ& běW#ZJzȢb,qho 8zfGd{ɀ{]/w @u ۞uu#M ䷳q ׉ ^ "KGު{(%7)GD^iu}=AAвf{}_"?֌<4O4R+M>3G]2z/^{!A`DnrZ⤿ iwfPi5V&2)w(AGxmӠՌS|7ӢM牞~]].b㋏'/m#>w7Z&#·xҽYL3-[damDuCC%Fl;\qYx,Ԡ~?N03OPTu临˧BSY&+wy&[}d▯8=!NJ4 ҳVT>!Znal)oog 1}CYEvHvР]d6^g2B@LTj-fIz"8z% {,GzJwM' ߙꅳϠȈ(1?*Vk>u>azИv]zR@ HJbXz{.7W/evh\i褀(wb 9ئ>pkT.p="{;c챢dErMy.jݗ tf>@_afo?y[| OO$;Riȗ T$8-.amoӼ]D,:E֯8LYtwLO}qx$ ÝʦZl%Fa(šAIR3c&Z*in-hoBoLKhv+ Ua}4zߑ6 Ρj5 X-ਅ>l+v:f0I#ۜށ@ !M]p5_F\(d E #Ԭ r" ⷨ}ݺn؃8M~*6PѴmvr#GvYŌUdr4zE]aanzr/JRⳁەpi{p5A ޵N sBXfHn*":p#u9p&/Ň1 &IE WWI…HZB)k@ N_no]JuZyZd[ҽ`n]!#?kN:&MH qBe &q#`R,0{wIuYGd{sb:g~O"CGPMut2]@n#ŠW.zWGr}x|sLpDiT99 Iښy.Vg}"JqyoeSC*+$_ca}HI{A ~|Nn59*Eɩu**(>zޘ!cDN-W7<T,T ba,k|\i ѧ-kyE$P#'X*Y *&ju9y'}n\2m{0hS&*1*~$$" 0+xU-2w:MS,ٙH L>/BD\00KHZ b"ޫ!{Q")fM}t40 oح l:VaL: ui2)܆Qr}?B$D|HcAt: p%yі&-bV>ԖA}-$>ʪbwdC/FVg~] 8[N%8Ҹs۳f޵^L#݁hy炔W(*/リc{Ϗ6քb5\1Fo>##Փ֒LEA5DnWNi)WYgr<-FS&y_i7!M)WNl:N|yv脩 { A}\e6얏#"ÁHS aW]K7H;0Hs7 Sq%܋={nj_q@+ʭ4nȂɓhJ*6ߣAu$Ms9E._{忮vf ŭYUiQeW )}To놴IQ9fh8(z{SɓJ#:P& kzrh c:*FЗAj:LZ$Oͧc NL^tAcj2]U2M&qPbٛJ,ddz!v<PK`^,Qh-(TH؇xN1;o3rYMf,G$^)^cPDAWaIpZ"˯_0no*/Չ;'_˩",5W(˪Adp)TJ42ّ;!Qz*0`p}BHSy A*8wP75frs]f(Z7~^hKbHpFP\C!ӮmF\EmuZ=K1gJiMUIO  {>Q҈_u,[bf v_B{AQdhTPS'X dVK@旗WͿ-ZVYPU^o&y毇P!LrelbITװWH`J=VbY`1'zBv+Vg;fkL|^T= D4,揈c ֣ӘOx5V7֏>|>wJ#Jdҟ?/QV#/bjw)%a]9B6X 1ՄB/d5u("Գn3J|A|*7|A 9;|㿈 SK9QL'l>)2JyUł&Wи9ֈySG-!N/M[>k΅Z~W+:ڥ8 + }t~Gʆ`6Ll`~"E&#SaۆE߄-,u.TɜuM(u,@A|rQu$5@D$ٲs$ nryZ-F$c@772 ¾b7SxP+^HHx& ʅ[;>ʒ6,ui{2["MH' ] UA_#h:әT}Thonp&c)*YFIuD5j`&<9g1lx ]LG̑Ϡ645XKdjNj,[ C)rwJ<`Z ({)mg!CVa_ =Pk5wxv#uFt z]SM?w{,[\urz|%,[ n !VB:VI$|.q/aTc) }|5+B)fhvR>0n]Znm"o1?e tH"CacF"L}iRdqk%0t~eNQࡈ;T ]׌@aJ[yo0Px# NP't7.Ezჟ/?:fũE!Kcg-T_G@!/qɢ6؞,0pF~G-d}B6Mk~WúN s@Es5õM@;4 S:dFPr fD1?:nk[qjoemof=JQߐzX#W 2Z-f7֐iorÃR3n.[}O7rBZXi{~PPj(Ğ>/`ԕMV K Ƴa;}"3vdR/fVQU_uD^H 1gUk)V"(.fʽ L0/Gbg+ ˝}n(P[uwKk:+=C'X]Ч~Oz^$2t>EqYUN\49I+H/37W~. ۲\%hf\㩽ڊxjȗ?^#xhRfz BkaxVb͓H Eo5(Ml}GU Үor4ξLrVe^qj.d3]!R `RډH6ϖ_$[A;:UHC˷҆PÊrw2ڨJi˄GfUt'1~u,dxCnznm}n]5 ÁzFCqmYU#=y)z3D\;hz W"nU4JHW;=[wi-#ט1OmEm}ͬ5qN%S <"*O$Y"ۇ6#z\I5Uu~;žY_i21Mpp^l 1/ҕoDu:z\(iH q6sߎCa,QT;*hQ"ze*-?>Oi/G1}鷓ܤp%'Qn4^}[k͛oX?Tۜ tJӢSr xw f&JБno\eggGr-v!`*cg \(#q|qG;8 wm>_hMwv ̲\$C7R%'~9`or YBugLi5)Ccް;bUzma C0,d~' .ʐ}B[mBgdC'<וm]C]h?,~рk`&yvhCpv=ÜS5|_]-a7wڙ 8P]/?#pg VxC8+Ah 3KMÄ0O Yui8_zPxkgxzb/*R5=[rȧ F۱:n?kãJ- l"b3>X= ;rFŅǥY T@X*LCvylVO6,*bq$w;l sP@ËR\.8,df=^[B¡i3Ƀd"EhCp]#Y0Ndc<522 j 2M RU[!nnp.Q&XÞj(OZ*-]{H>2q_  7yHu,md_ K@}ɿir ͥ⃾Y;Q]o_~of#yVΒ#A7: `zbK?/K4A3@n5}q,ƙgr 誯@\5fB@ʔiUEEYIFHVc?C7x94}>g;Xb k_8T;p,_fqO4lbD` و;io G%tx>W)KDhh/R e?ػ ?]\_ZQa_JxEQC5:70@C#^`;6l72 3)cY7Iy"M-%$rnqMgg;eFM\dBa[լ&ƦX4fAwT''4ThAq֤6+u3ݸp#N.GyIjX/E~8=W&,pIp!=kA297K-Rk*:wu5:PlZFJ(0n3=@h[7JZlӻ"z]_CWhzNTYGaK*E\&Wͦ"YveL%,vXWRjh|5]"NLO[P,>1ץ,uíyc$4IckkW঑R5:բo.u{)ͦMz͆_Cx5v[0p"wVqKAmh=%)4TG[RzmMܞ}Jk͢tŷNITWIYsIyez_AOל^"ݷݎMC&*4S4NeC#2ϙj?pe Ŷ.x!Õފ!g:₾f\#gg1d |1a}fXQJvw&q(GI'&0'&HpTSmTc~U6}kj~)*QL9qFױ:4sבeot*[,O#)o$ Ҝ7ƪR]7 _.(iVgЌmC4+F&[w2lr>ř(Jd.g]xl#.*P%?-vWGF 5FQc%֮GΛʅK^Y6Ϛ;?%ai]׿^rVj[._%qWF~@<#* OL'@JJAb4e!k^FozKչ$S`":O: txD׉8$އ@.LVP,q"MĶptҸke##RH,1EGW̊G&T~Z= b%«WQelޑ:OGm1K/ _ʗ uFՁ 7.; Sc3W%7YP1\Ӱ`_1 #ݿI=^4bhAhB6b*mڒlX2GrUI-mOp}CfP#j*s:%Po˟Z(+9[ϖ?y[+B'-R :o~p! :6"(t<ў΃rBx ڄ"C˹2kǭ kb4wwXvy$ꗌeXmW Zv[|쇨AS=})!fzxxqKN Y{N.A}g%D^OrEaȳ׼6D7? WtR|{G[wߠ6|IљPbŷE?o`Y!j?{G\R{Ҙ{R;MuX6eټJN$EĦIv$;wg47o'GMM9;M9]ZtL5vq i=|]bI[7 !mwuy~Jnyt*Nw/w RKr7Sa_b|VkYs`z_A#$x ]oxFu{ٜ'%EdMΦ# 5/t(OffهdxtD^i}eѸTHYȊ*S@`>KBvqRcRB߈ Ι)97υ9K`+K ޹? 8[7]/bUNKnZ~xDe}n2w4Mgĕ'/:yq hZ0!;c؍oE- xHՒY<̕%ct/= _l$c?"U<hC^}] 馶@'a G_& o WƊzI $mf>enᤉp_-~]5 DSQ,މ'2 6$foG1`tpq,tZkڷ$s־ oq~@# 8q!֮JG)hoY+N FvH2 |.!r>Z6~Bt-B(Cyt s X+<&oS_~6tP1N3B7[0]y}f%d?aEf-{tˈ/4.)GB*d~j>6v[61j? lFt{B+%tM,oTihR'+^ Ȏqf?G0mQP٦ fHd,|;?;:FeA+s7axZȧ5uif1[mOrQ ad`4M1B̻#YX/em!xeǥס.kbO\B 3m? rPTXP~Y `$[^T"^6TF^-~yE8Q[kh.77+55]s!u ֈ\Czۺc-);4UedVs[]'!0a֞hgwdoG~I .;2W Qb'?%ZZmI x'leQ~}4DPQT@~. 1(+4B5E2hp).*mPfD"[OX=?K>z|/8"/z*KisZjh݅^ޏFX <+Cmy.s U} ]\jp32.Gh&X! ׅ~5E ma-~=Aʯq/ 3%%!pur!N`%'wITv+;(3]|Cۡ|h<6*] ]C"a8ជ\F0 t7PBH+t/($lʵ2}:6]~JXɽ&UFdۈޘ4\f1@O9N2bk!V]1les)3a% > 6K f`?ԩ12U.iԡd_n5p+بLAlR݌A٧CC4MZ՟Fp~1U& e%Zo)dQ$uhنv7K}$.lo3a@ċsN~dYEsΕ~}0GϬ!"EwnFUd-ZPMG<ύA(0xQfRh~M0G fIH|ks$|؆[^9xDŃB@ ھ~_ᖏ` k=4iRУogĎˎTNӲܒ^&6Vm8#? S6:rj߯lI-V/ \s{qɘW)*WoSfW=3ZLvv-e`Xг;ŘْH<8cOܡ RW۴Uf$|koɎ`AƱA-@>G>R􁐳_' bH}ּĤ'ohi=7EL w/zc 8 !ьs) 4;RX(ss_zmJO+ϿuZ*'P_']벻Z,TL GC$cu"CIhγ|tk99 ѓ W1ⴗ-?9\e('\J>-"6KK2'88(1e}cY3$\J%z rWH_{C?mv}[u,'GwJrkg#X|I*a4$2>}1wVOŞ0?x`VBaRIOwzvx$cYNN}E@0$7|& ^@ϻ1ڢQeDR:p.9OpNCNfzNjgD =.uAb6[WO|ŨPrh2sQXW 2|B_ĸ+s)^T 5XF #1HM>Ђl5U/`gQVw3]cS.7OQEBy Y&J˙) XGw9TُB+w{z]/S(.@6""*OI+6.v7>Xv 0‚4P;$·nKe֦%F6nIu[I;rяJgz,, j ͮ)c_u>-x. `1o噘Дr =)Ƙ _xL]-\vYLHj)[Iu 䭓DS%X*umUOZaB:G+vQ,yƱiH0 !@IW>c|dlRuéIN@L b;f_!)˂\ih%3_ xK`Km`K!,֛6-jP<=<$#{ɣTT &Յ zȚIgx & Go_|ЀseTaFB..L).(9cs<;|;ȜC)ER YTt`.SuMf,bt >mKՀ)/־R3 ! },8+]%1>GR"C SWǶLQܵLpJP[܏]wsh@osTc1:Z*)[b/}vgL(r*Zy65 ;uF`o T^mI$U\/Dj ;^1i>䔰 vpϴhSz7 tOz.Ǻ3@B֩t//kpBAb6XE+<}bmSqR{(u[QS{]>[9ɗ9 bwȃ8%rX}ZQ \E1F̵8VE|: ҏ/=;(@R+36vP+'Rk8RߗoHdۯ&+ʈ}im a> C)oP~伨Brv eM+@&ЛD}ay٫݃-JϢ϶h>ΩV`mjLZg' &H*9h᣹(=NRF !cH=S9P=#qqw0, 8*B;#&KJ㡈1:v#ۉ/+_ t!0MBT7}4vK-TpK{B:ͥI.n[YP2}*`{GqKkJ4&Ir\I茓Nٻ#h4\ ̩2d{W,HGDϽfsǽN8@?>bݐ-eb9Æf%$K I(Dl#|ܫ~\0y|^Z\rm1T%xi-~PloRMinnN }|3$ps{C0gX,It5$؋ P%"J/ʀVvbD#{:ַoʖ,PO *tyН Ur2hiM?e}!,N XV{;mJ!.忤`mV!@US{BI5F1H/+Ue&&?">qKD&)#|A -n<_ ~T#ԯB!ƣNOOȳ[[u) .e{DZuI9`oHh#/M3oB+I׸;gf5)*0jfQ wa@{j˛ 4& @XQrgBr{mB_^htdWI#(x'h;I6?@}Fkbwb{F,Y~>_PrТS'i"s/M삻!Xx!ۂp 6V/ 99iaF@T BteF)Bt#^ E(0O`p2xt˪VA1^byaSɪS8]R5ӕX' 6:Y<ċFQ C ѳa|uO#h#YHҟ0ur_n ]fcѼDA- ?{јyغ!S [s) lÈ\Pn>O\ =iT{,m&v@HΤ)ף$FBO wȫ[>S.;,jCՙIP ǶxGt\|D.Ea!Lؾ0%l rK^E}iuN. n7&Ci(*@Hgφv~ M0fQէLv,B׫4L ٲ\]wˏO*5'K=wO˺[_* 4C)QQ 1Dk?/#ߨWS3qxfBA9Ǚڀ/8~~y-S Rj{!K\y31)rl ;riXd}2~K\19[8pzu*y޶33TOg’tvG<_0 ): k,WVOL:}GZCR/>{}&͜."+)Ydˢ?NaߤŸDuN>ٌ%'SZfXJLtduP9Pf#ȈRC}=lAp˴@n;PZDʒ R<0v۞L&PmQ-K8XP}W*VUBGWFΣb*l G!CR/&pTYC OMTZ.ڑ%V/@^ =B+tT`vu7?d z9 zpNWݣ Yp:CF[XdoUmLGaXvubYE5W?u[7glКK tŗ"mJ;!QhõЈ0V"<]>[4eԅA95#Ҟ(i|;*?u7%e]3|~dP~kG~C9d/  r3 ohKԣju>+S`}!YO 6Ob d34A!\jHK[I;sVuŨm_]^z~a>Uf~ٲ9vaAA Ε(냋}j ȧ5 9"{?ud_ QӺ!"80 pC^Xh= ?r@PE pFӋ{LD[f|8$Fڕ+$BwLyZ%7Iu3e(aK3UaG:9s eFYj{v>0E {J}zhgsv-4$+=Zb ?Ȋr6a0x DWm%A8j+R"⠾<MlSd I az M%,.j%ش9_,ݒ[_UNJqKjزgJcl|0hҔs' E&(г@-f쓉I*y`D<51y)IԑKςӦQ>ƗpBenY瀎^rD'VkG+Dt+|D J6!f;?%|YVv/jH<*^ Z)i!Plcw^,24w 0[dRҍjEIߋ?Uxf~D88{?B~nnV lAPZQjh^_!D`eFwX]kK,`KQIΪ〵 Nԡɽ3TpUKfaʻ ~sħvm_qE8 pb;סRkU@c.v"Ǒ%JYfuIKfɍ ELx1-5 %"7{B=*JeRL$*=' -I]z7<34hkp4B!BἮEݖ57)B/[h9¨%̚wIEsK60+S8sevU/QԮƣ; ˷AWd5̯_|)*cJ<5[XEJJP™tkF6]KlG|:(BЈr=͒ C3)k1$fnJF ,pӐ6uBr &*'n2硢1A̠r-b0¾ʚGx]")w@hRgeMWX .IL&Žtc!@9v3~MU.~,MpXzllj\$SCPg-PGſb+=O(acew+q6"aZJ~: 2L>A<?7X:0@R]j:6AJз?i28K 8&$} G`+[UHɲo7p*?[,Ԗ./|#i97z9(ZM֍Qy՛ lZI͏cKk)D7yǍב*p{|" 'F>#fF!&llokdI_$5*cG+ݳ{uYESUA; wۃI/LQ"Yh}<%+擷F&P 폺6 Kㄚs)0O{(,$ݨϏ8< !5yiia.w Ms] ހc_qW0gM9'rc;3ڮ#ח]&gXqʮ\s{{XүqlED7gIP.y5iY,7a8nnOb:?XdJOT1ԢguƀGzY DGAt|MT *^eNb+ۆ[qG !7«|(Aeby8i7 3vAO(I5ЪR/Q9Ð}LY[rSBIY7SB&V9^ 2"s|U7vSVށ|Q@to o2{iד`,>.OK7GyYxQpI~M%wI BBTB\ q21U+Y^y$ֹן"C~k~T'tme YZ:#le`_% .i_ѝW9e0Z}pTNm-Y G$K-ضCq{M(& D$/PąMkڇ÷K_i:m iO<$g LbiJdSFG}/TfWxHìuŁvJ̄o>&[1ӳ:r%iDTg:Pg6]w.3{taL]1 ݄dJ8TMgt<带8Q\~mbKjՄohw#aWa-崒 I}([`K3kDZ/NUHdԈ6Tjqgɷ[rx;YovpBgNy G`R3qjBL|wMhQ Ń-aq'jm6'M=_mmw3&ۚBЁLm`A"/S=kؼt;$r[܁|)TG7$s[`҇_毺Hy-n@Wfa3>#X$av+@@9'DK(<*_qTN$ 'q*7|lQ֘Uɬ3D xq[zOCɮTTwq>Gµ_h56C3KOJ\/!!p<ӌ-$ZW?zjQ} A_۵t ''> /?ck>;|Ĥ<x])v#$HU (|k llF>< 8uhՍ݌8`p2Fj,*Cx y%/e5VOi,j0Lez> bmB =q;b2GN "oL M_|d*73 fHơNCb1d;Q 'Kƽ+ج>KlܞxNm/uBz*ȄG4Ȣ]Ӄ޼N%p_j]K ѥ;s>j/F Xhdc!)XO nscFZ[S80ǸZ(ҝ d#KhI!f/C;ɒ"Y Jq`GnvƬ6g#ɚv 6h mUUS7 eտtV@D8VB˺G۠N x02cc++i|6=NGuiaͦ/W}Ƭof '/H(к~)J8Ku4Q5gJ)#s"e | 5a> ܱp惜@ޑgۛ}\=RhM0 ^>>onBÀ~_U D^O)2n~ԚS_xvRhJjW1a+߶)\a-BRųaa& 4'9#(7c3~v95w~zYÖęc0U M?~6b+o3ˉ]9 ծxI6b\nga]`[zQ-I?JR>: W^?Κl?>:ykd}3/ .)&Y?9/oIXe~afpXý &A+C#3|q^Zea.Y'Mش(4rTu۩1jf^60~Wנ@g]7|Ǿ)1%n2Uzl|je1?9#gJ1t q*j#mp>i"X9`9 K tt7.w);@\/}!OZ%=^&dx_Nwز;kRu'¯Mz˿7XW8KǛtݓsS{tʻC-Xg,^h߼]KBk<N},/򯈺P*pj G' aS>TɨyzZ2J{ikA%Dc~t@փt ~nT[Ua MG}|`nb \R$q^)ХBbm1)O}-s.dۥـ/SDh17ˇXz/2_`WHh}Y+Q LU3Օj=ܯwpXz w~!Шy=>&W}O[f̊<Ef@0d% {%>ɛPbWh)b"ʮ?_ڒ.IfNjU A偓%e9:m[,ZѲ0K u06IaWpq.Dz>!Q19Y6m}Nèj|0QJ< T6ǛOƇ/GwK6h$ z=!O*,D6ver Kr>gQikLhc{n_UV"p"kD|dD'9c gN\E_%G1)<>)ߙs! r\ v/^O4l!7Oga87ҩnwJ-<ˮ` 1x_ww7̇sҧqJuU'# ,u=.b\>q5n*ɜk o^3NA8L*#oʐ:f[**zm&Ӿ6\}4 gzU=~Q s*~tK~̳{;߇x%@浏'*d<8ư2?k_ݻosS _i<:0ϕ^WdS71'hy"k\6&V !H&6*b"a=wOu]gv@@V ϬK']$Z'.ӆ_Mb$4],40 ikNm uT5}&[Ӣ$D_RV<ԩ-.d=K/!}&6ܻl !P͞F\)xKQU*ZL۴qWq$z-:] rVX6i_ĘW.92 [>,LDCaO[wqQu$d,bbz]I`7DMwhRDٹشmj`&Âa Z}xPo 3GnbJ]%h㭆!n )]09}d{"ttn8-TINP#{Bv 1\-ÊЛ-` %Sڥ7hjj"Mcx @l*QHMn/wAW#FL%!^1;ߒ>&}? [u X)W.(23ZlŘczZTƵ"pc]F l,EvapV# PO؍ 6>OrPlUL\S[̈́\@"w lWp#ڰ?󉮕:%)H}z=h0OJ|6x|$Wf#Ӷ&^%g>0(۵F9hو(9:w[-r0{!n*Ж"1T/x$z }68tf KKKW?\~&Kk )XS&IsXJg2m]~8`q]xU·~' Z}e% gO}/(-}yn<\bAزHSffH:X,'Z!teQF, Z匇{CRD l(2S->F8 :%2;] V}iMB +h!k&.RN uԢ¡(/=贪#Q(@93)-7ek=hQTT5[ HBr81iSkhKlz~? v"8(q"oio7‹w fNxahY@($Y7RMJ?{Qq4TN6Lj3?d#-0>s>zEx$ jd%Ch G sb{ə_>Cz iI@@~xK3ͳY>-B167{RE3f"NPM}"=PĤ%RjIu 4tQHݺ b" VCe}{£JQ;LO(|XUٛWyLۃfCM|4Kr$ 6389sVf1$GfrzJo!eǵpZDƒouxM߭+Jձ7' pif$}5xѪwf96q5xW/\@10N`wVq^PZPz]-SpL"s 6y~s*] Xjl'(6ˤ̣ #-2j9&, ʟer,=/ '35CilZgW\Coof.Ҳr_@1dòt38oZ Gd"pqۗ8KT&Q^0St7 ^ dit}ɵu$G  ln<,T~];J2?a}KH9Qe\*6fϞ FyC󑸈,S)yiJ%Uɔ1WԞi!ݟAESw@߼Ol`dLITW=,: p&xPv&b+ H M5A2-Qw!{nu!0djTnzf>Gc%.{u"BC۲0R Wmݗ0}+G}6a;IExE0@DO4smՌzekIf Kan ڈhl}Q!&[pU]$Kb 0Shau'u~ew~sdF%/4=_0Ԅ]Qw8@ ǶMr }աvgO~p-ADF6%PBmfD:!M[4=ڳ):*VZT-h]o#iMr?\v #ʥAP[VrBB@U#^o~2 H|u7 h/~C*-N\0P4ԯ#rm3 ~pt4WpȢ@/+N3L"uj7Wlkjr oX>C|lh'Y4_of5*sk_8OKe ))"{-zpɚ]>7uOXEfSe%]'YY0R.kZu3&PAWgs~pͺPve@fnu#+qnH`*$ݫD?.t}Xj:>-ބa<uk^U&^aWSaamu2@Qoz.c!Et ߀Xɇ 9k&4;0x{R}UܳhZ%㜆?xTіSй]l*!.n{1K>\@QD6ؐ+ ۴L~d`>R]9:ru@S@#37b~CEVn3EAC-Kr$kס ld .|fnd7( PU];K+RriOG s Z%T&0{cଡ଼&"^oN--xcJ<{i D-riggaN` :CD*|+x*'U]ŀN#Օ L J\"Ê|3r1Ü0~Q3*o8_de'V'7prxbyb #b+rј2R0%\NTbj'(ՉHv}C:u[􁙞} -q_>C_x,kǿ))nDLevHA %Gic0Х)Wݡt_ 6N{ApG,!7$Պ|9ABNBǽVZdPR $cX PYy|ʊkтSionF,=W":Ot ~+ ?jC7;QKn F6ЕJT*U*Sޢ]JmLS#"x~g@/6%5RM]ך1wX5T)4. pe|L{@IF)cZg:y-o"7VY) !ߪsxd_*J=4wh%]أ`[X>dR13QGJ?i3FX^J =S}T- }K-] 1gbBr_|Hq֨5/KZZZWUHb WT{hw[p41㺯Y ̘ͱ\Nn&7q9+2%%[vI?~Kntت[5m.RyU|[ -݊kIz ;>-R'D7@#.0*&[@PCE9GѿAً&gOp<>_ʚl|Ln~I[@7sّgާ+#,RZ,gp[BO$ϑS2Q*d{CvBGqx!3*͚3^P ]cDqs L[Gɝr_i/^G}$%96d&Փu@}u?n $syHuCfk1M9MʻR{{?l=o2FxȲ{/(Aiw[4%SR+ӿ$*]3l?%̡Px#\] [!L5>L^r8{!`:MJ;=·g)06Q 6X2V/"=lj}'O^1 I=i]ggH0hiBQsW?Y E0F|*"k}VFFM`!!HMeE֙GPr,^}.Je.B&' U &)6Hz}ywƎOZ"6"8}6w23{!P ׇlI[Nb1r%Kl+v1c7NT-F}&xC:ɰNM5^X\zvL槶„6\= &niy%wjZՓ YHLƕx #*{kF2@^Fogx Gb857J1hsFSu)@0ns!o !tt*T)yƼȹWdK-ȏ."a͂[ ?N!%aC5,e̘Y\}0VtA@}~~w0LysK. ȴ_pc#:J0Ѻ"@NyPX$pG }|s: WxhHdznQVfc[x4aS<8*)]eC eJښVkC9KNYzz} Bmc52i- $W;(;vI9b?H )/XOtm@+$JDZ*˜zyp߹?׍'lO?H<:PcCP~!8tL~4cGq Nry$9qYٖu{?Z9*m)kR[:ZZw pȒ]6Z Ÿn-Q}tFY#bk,fH Aب9[;2xʋt5Lzz(l/% "%8_kGt>s z .`a?*Jr'ŠuZAg]/XTm{C+N8l٘ ; Β^Ͷq_HM2F3V$]Z(Qd!12WR̻¬#ЬXfϭx\#sBҿ\;{T7 =ΐM GqiHٓؒUrC*j)hWn|zY O w۷/O֖N މ9F|.[jo202ZY'5əI,ν?ŴdYl Kpg5/-  $EhH0^;G>#AWĎ/[`˥Ω*͸O?#!TO: .ѵ33}XSS{R󊓄  \Ƹ脁i<| d\}(MVRтզ4;uQ=-6>VRG4dRYIg'l" lWr|~e Dm5yLxɔmn/lzl[0_}NҒo'(w(ƨ8U; s i$`2y3WJ =ucȀNQ+ǧ %YQ";JE4pSx#|:fA;d[kgbX49Ktaטȫ6vN߿H2} }:꽫w8sd0;ՌΩfxgǖJX{uhHكƞ8t|C5-vHL<_Q |3<QGn9Y6W۴mwk: ǫZ$TΡ]'EGQ\2ԭ5 Q Dɢf&b ԧ\k8w|8EB 15!P J@h9S ǘ*zEV_%j.x]LBUf:Ram҉w>{Qzub;XPc pHRaf#?U!$²i%ٵG#ƍ/QOGHg4j <#~o]JKQF|qv5T0laxVqNYcx18{:e %Us, RrHi5Rq~t{vJ5*>ď2 I +cO%ʶ݆"KYٜey@#m&Y tvNk;8]R h^| @ kTD;؜lh?[h&D^e .!&yuL^ݻGJWϧ)ԊZnzE4+Jݑa`YR\i:Ijwjda^3mceDiw3S}˽EO*v}jUbRY1ߎ tDrA= /JM yNDcX0m?2-B=W߉߻^9Ez'7{cM .3ٰdIٻ%l"sC|=IvLᇪ|Qi}jh9ivhНKבAB鉖Vt*dik%A,t _),j״? dzkI3urQ]܏@5mԍT}Gla)ER*tNX++A WK1Bq3 ״uDOrS.wjv;ZٴuMKbHR7c'$_?Uϫ# %,/X;%g *F*o$prVFߎ}r u YCf ({nRn /L.ɒa=DFCc$ad؂%q D1b3[=Tub^7xV'c%j9׻d~$\yc >r&7$'YȕS؏cРNd+Č0H}禍nV "DKS 6qN^ 8~9l|hWҽMP?60XK_p郓mPKa>>2L=|0:sv:Twqe si"#Q򚨾?*g=|槬RSfH$5p"L?Bn}'+ExNh=VZ9YD ZoݿDf,]\߳mnwAD E?OVcKKr{ R"}Yg+e3:m=^5 E,FnJjɮ. -qaY(+buU*D Srq|/HFp_c2 P>DW  #ߦ ؉c/P?i;Ӗy?ħhdS7wH'I Y3eҀQyyU>AI-tX1>kϬQ؃+LOf`ly|Z+YD6]Mlx B. c?r@u$XF&2-Arv90`kt]Gt{L$G=ѷ~e24 2֙gb6riWgQ3Hky嵽rjr;Ga\9Dga_ Bf8aoF2Lr \)l Tu zGg`W.)3r1RR̯X6θ)n. X-bBuA v9YT?%Y&UR2õkD.2ӛLǁU)G%S[ AѢN sߊmЦ _%5]AoK}h:Ķ) &OwqJ (5Nyc$ Z=i:"ݏsP^1Be-FAR3Yжx _ؘ uY ̸'D_~Ȥ$8X \ޓ'& iC^^kh/JBpk៣,EQ(Z}̢>?{7o1&KoWϟG+M8Tʮ4 C($XA:(lp6P 9L*x=ȧ9 ozd`Ta^vPpmafri@ʛh,*!O7R .2MT$;Ѭ6ލWAz. adJ;H2 f'eZke05eDccFbi` &Bz *eXR{:݉m''`tQyOC-gF9qYCPH!EFjp"C)`n Dzto= io#I|+iasph9uŅ>@h,>e]5_W_2FMpB2*9g:tӵ|nrVG^&-Κ-ƺ -x|3~,-:6ڶcdCEF1JcP C$ 6tgқ:fsyO ݷ$fBztx|nїrJ _3Y=CUJܱP@j,dZ.i2+"N#wSKNoO +@p-qm؅Sw]u1N1F 2ۍth/-Y9-`.1\Q{A=J{ʶ>4xY2oe` o֩Ȥtazej̊InuӅc@8"d_K3 KKuLl꠷hB5dZXo@QvHѯ<(#oZS @VZ;W IGhF*Lr>]wD'+CRmlNY2MYPF^X+VÌ #< KT|Z<+ )Mq@YSQ,e]k8eQi*Eb`ݢaQVfȓwaF#z^QK3*,ELQNoE^1 pTޙGU!g#Y>t}P R(_|1%qs}?4B$_)a̅C&j,k Ok|1CP:vkl$ .5j*ѮM1mA{-q2SyVeyA?,: Ŭu'u69KNvoo8Ig+gs;?-zm' >1X`Y p&+DeV th/\iaiYiFeRo"o5ȶI9 'T Xj4pyJdʉ=@WZ 92'y}9?_4H-\Njl|eɒH,]ER8n8i8s &., g Lx'%O cr(JP`GS Ydۺ..:m58(;plF"P0,P:M輬s̫Mr@_o ,%>^t;cͫVE@jCҢѓ]?"ސ)*>o&kuaG}ReܚWD#HF[~W($w)ހOW_Gۂărlypǭ6JKO)V~%F³:,;Yȑ$hSG8Ǔ;*#O2"q `n552,fb/8lD,)+αfysGx*KrSgDIO1bq}Ti<'ݬzAh27Q 2L*dmm.&:0CM^k50c5Qk>s 7=RI| mI,AA9B;-0ARr=qv#7pN ڼMRZq6E)eRWm 3X)MN@~<ņqxW׫4j6,d +d1*I*ֺqwf/K`ȍ"=*baݶWLeHۗ6C4߫8㹾^|kW9pk{) Jdo)`V:Y>zezA]w ; W6qʽds/9ucq*Jj(`TO(nV eߑyޖDZޕdٛ*|W~ D׈Ɗ.m|rZ`nb&.2t#̗Ԙ+ťu04{ 18<0?J{T۩pSz b3&ڡG\ Ҷp ^/%UbG|=$tpو9cn/ 6-mV!½1䙁aS71i5*yB>BY1wNah}@H:dV[Xxq<-mvrğpOWM_=zpٮ^D_#D#Q,]tx I0 !V&fJt>8Qȅ\B sCp# 6wo¾3ؗ;q1DfѪ0Co7/>TU{ #gS-8͡iaXeN-&l$q50/BMIBo$n:Fn#{$۶i]?Dlj.Ώ<-TD>*pMf\ @&׌E=()޸v,s%`1sD!ҪAL$s)9GAdK4lC Ѣ9e\wnSiFMX|Xϓ:0ɌZ)xl֍s йa tsD-wQjm Z[KrPC4!-#4i{'dG"hJTezp]~,lNJfu%mu9a3K4nu%q8>nu3LFJN2TX30 5ưfm *^ڎ 6y3 "n[ayŮ0[:C>Ld[f&ÞV!%hߖH{- ï Һ  luqApۘw][hbȟjsK-[K!$~jîu$M_2/JniijL#pX WL#{L /w gXhZ%mmF $y/c[hf,1H'gRkh۷>%1$ O'%~ԇ\*[]$rզH4N-tOQ":2Ysxu&#(dh\xQJZMeGc|tW@%>\lSo{ Imăg; ,cB47ՓLk\v;)+F7el1և^f^nW~/fL-2k]D~#FmCY@+>μ̙+GwS9pHRqqNqAÏ69@kh=xgbKpEvchkHz#:y8щ]WGwZ|?Bu$E-!^%KlO*ɤPZwtn)T5Bz)/Q0fE>7{/y2`M? G.|L,,2%zdHԐX.37LgfQfaF꒸A:+}Kcs8={X}WW0FmQ]ztXc2p  ;řVZʪX0UW)$l!݈ĮA1S/9ukW`SӌZ{Luxv#6"S =r/ +S42/ݍwE 1]>uYd6ĵ;Dx!nW.K,fB,l" o9bl7y$ UY@D5'lzMEZc*xiFz[vG=2U5PA~@T+2񅰫kuu0RTW,U(ZL ,Xf86T3 N[e\*0'gM7%~~J#HMω y[yyBPq~!kӼvM҇=zFIT%%B;K8iY_ӣNz [zk't Wkz,R17^ xZ0d@;a7?m^ί'7ZlxH'V>B'8~h$ͻ?x?`_{8Cg|w)!lV+ht Sm˞,XM3΅ @>IE18RE5H#ldޫ*ӏyV/m u1GS~ =R?pF+J>k|޹b/ f}Xs_Jf)*/YYMhmdN?b>Z=:R_mZjw(ƭj`1`ٺ*yB#\WN6H_ݠs 2V_\8r0.-\^W$oVƯ?E AF  ]BnC;e3_ۡ2qx#iMh 9  Qmz+{TMF?\(v$ $*`iM~NG Ru7&sU/.ӲAPkی^5+|YDU&zһu*NCB#C,dmq4N8CAuhGr. IL44%?S^5DU83COz)RFʮų/)Jh `AL@ ˖^ɘx`Q>[bqӜxDSA"/fwl Ւګ2pFo/DՇ| UZpLHpoe; c]5j6y[jՃv~Z׉H(Cޖ9΂1Rʬ(=As-6+2bPb>YL[yC, J3UCڇɨBZَhT-[ [gRIJdp-rۺe&ٌ  4\\]3e;rt{n93"{?DBޜY|PѷO7G] B!G}f.?Ң1byPZMSԧ?,;>wg(Szˎzv<ČTp-GJ/O};%pZEHJߖg &޸ϾZ?/-!20T>'7#_z3?~{KDFzi^OwcM*ݓȧ7dVS"\+Qs~ٵB! )2qHD=܊@O0Fz^5yJ-CC\[vyhTkDU>LX,wԘ 5Hk.玚 ,&4D|=j\^D=  PWgXҵ#-94)rnaC{6NpdQ3EO+{`x#%Ҫ9P^t5DYMɹVt$ g=cJ]Q/YʄGSbA(\1#7xAU`84H__,wGttqÔy9MZ;LWd5#8<я WYlTs6lHڢ:4؍TěÌ 7_=h rwM;xtY\P."4-tExg$sH=[9T͠B_ZYS*{G&5,:7Fp싃F[0?T rRзs˼Wv8Sx~Twe@mpnTX4 ؼJd^Q "} ٳd:4uicd݂SzH܂`Ht@/8[[ WKN9|բl"cV՗T: ܬ"z\ءx!Umh\=2gTk?xG2zBw]I".F*7Q5FpAB^ 6ԒHܰƈaf-sĀqإ;+tUɐ.47NIHܪ%+ +5s_\j5sl-ȢiXߚgSFH{ϧ0%Gux.f*MqE?_j'$kMQz_[&"Ku+y"JrTg)Q,NV3=Cnv%0ʞ2b!,QQ7ٕw0# a%b{XOˀ+m; !H4?O)xĻS՗<  ʁw^ax&?n.~7 k#:WUn~X-jVG6 5Ǥ4؉s2i,>.{߯tyiy ˈ2s`зK?-nf< # *b0c|I_@mAӿvEp$E1zלuEpF(2;2P.L:ҮG~`>6şP9&X}oQb) ,HK8%zGVOs?,1z= S<)I? ukaA]I2Hs>6*OAPJZ,?٪u5(0r7l/筴SB <*R"0+E[d_#bLn!gOIql~١#G5O;>4YÇB ݟܫ@Ons Fe+pSqX;q[(>Ѿ4ye;UD-?#Rܥ/ɘ:xޅ٘WFώnISDd]MvM62mvsdUQcVUlMT|yvZ{nJj×Adb@,@U E[ܷnK,~wt$S2i,{</jw0zvU>F5-t900RYgHv JY+{M)cQ)bE8zNGCq89\`wפ) {:khⲎ=FmFpC~j>B\G=i&Ϫ67Mӓj+B$GO4ܧ(uc7sT Bsg0@W~+!i2H?,jNxw0m):VY.[?u)$3|~\Lyο2ҡq MWic["5=֊χ@T oq\k#L4x@`ҳ[Qwf%w!?B1b0r@4PC]-%ҸyhW6,^g )"5`A癅͊/[4 > "o7Zs6p"wDV/M{ۖaYSJR֌R!.92eףT`@ꋾ tv[XwR Qld'$1tΠS?~TjlRPvgq|C^v`nBa |);۹~~GQ}YأYW&)a>U,?Ga<ئFIZ\e%xUo\ׯ,{a DijSK`>ޡ7Hԡ}TWDi*MR>̛bD6YVu{6xPq eAxf~oMG'yY!>VT=$ /-0*Ƒq*%4s1Ihh_~p$%p]C(&Gz(ӽӧus[xb sC44Ӊ3yAMȷs ЕTqhH`ԦD@*VEPjdg>UZ@L9–md L X4Cse@[DG$0=`%~| .RfD&l:Ǿj {5vճQA{/7-Q\OklK|ڕ 83)vchekB D|`^N1r+ Y}Fx5qVuxFgHfMΰsMſWJx!g=3 +y"@rn~]gc:˩,Ƃ} Yu4H>݋5{oH=wS~d}íWֲ2Zʰ^Ju8 ['rgIaU} p=܁4 {uڜahtxsM7k m%qqRDnuCҬ~u:3Q<_N"kp~Gk\%a48WgI=:v4)ED] 9/$K h"J< C ve|rxT{/֝_4靷VTsg#걉2mwqBˬ-V6\po@JqVP0[ޙl{+ױ!w &Ueh)5h[[pzm o#_n eݾ.])u++ܗ*j@z8^<:BQKsZπ8 aWz-1AKoCM^x6[BGu Y!nU{YE(6*7^T$`XNu;IBG3.kjT` CPs. uۭ /8o[NjEtxhp/,W*_vvꦹbgӻ8b{tgrrov}c483YB{GP9fJCnfSBfѹX$RУ$>RGFAo:10fa-`5M:v H#NQhn y 21nYX -80W:Ik:0b&8*@+v&:)Q* w9C=Ix [~doչSVJ55NP ͝WM`LIzu߳lF=lGB\_xBPfyqM.rFj*ơ+NsUst{b4 vNS҃i$mvМrKim>DMR\߀sUM.kףrgյKoh.$j'F*z#Ccч+cP0+׾y%-P h Ft?,-3yAzʅ7ڷ7%#*Iː.^^i=HXRت[sROLo8؃oRهRB ߩ^[kR4ZAJmW_Jуꭍ) %(B@@R;9&FxNNrLWƜ| %/I^w` 5<9?-8d`nPX{O-"m]Sc:_Ksm[, J/<8eE- g;Aѩ) u ֏R"Grdʧayŀx(u\j>IX w'$P'Dۖ!iʞJ!7Dx6v,ӱF9 ysor'zWJ_<~<0c(=[ivȵ90.р4@ŦÝm#7Rt.$ޔW;zrHm UW\PG3iT"E[-1q[ ,4C%1Q= &qR.s#u}j%=K=w2XW]ҖN+^z\~ T&O XÃf9B;xyNB2j?^i2e 0u`eb1lu$3'A)oJ}YA̕(NV=6Be'RGorJne.jW=̟/vΘ)&1'B g\ N2`߫H9G:!kMiʌRf_'fK C`:ʹ6vQ[O]gA|]sW4rQfSR9Pteꗢ8N w^[~g,0˛<0s&լn8%7wSv,'V44X{Ua^ěenc!4Mle _mPj[NV␝բ&i \ w_n@$1Sesvqv Jm~ɥ~Qeڠn .Ӳ\o-'estןCYUmdx 20ͅӨph 0_'Ee HE1EE5P|K~lFT aa@:8,ANIl!Rd`9ɼur~vfBfS w(+p*ŢtEjĔ[fP;bb95CZʥG^9;>K>.sZF(6.`G?uJ 2/mEmDgH1h: ƀqގ5RTEc@3|s\4kQ'Ǟwkd&!.o=zԼp>AG8$)Èd>+Cj .O9%mq VXC6^5.*N4>QZߐ{Ȅ"Еi7 is-@yհQǦֳ)ūGQuTB7X P`GY Jru{}Q_ky]$A ذ>̀RG\Pb#jJ'V Ŷ.^ "^6(nL3ՙ'9 Of~3Ep"o԰1%B$P`?~;Hȋ'ɓh#4`Oµ)~uZEPz?luk)L5ZO [\_egf[#3?NR2),ltfMOԥ\u`b%aj$T9k"?.>_C;2OO#J{( `ws ]1i#pcY;` 1;= k3Qbz^DCӻ霧؎-|rLgGzOsd^L~ җKz=\%,gڡ*I~*`P"fPw'v&i8I90BC}I*_i'>Y,J4Aߴ/La;?ﶻY \D!ycDe U0u,PCsufv]W$Pô&SfZ陋Xo@QjF#h&T~2D¶$|{#n*hk=|Pˑs$XVھo->HӺʗ9_Ί9NC@Ag2Wڒ%ˈ>xthh'#C2`HJfe%HO1ضh3l`k?i|!ITȤ+#kn7}Kp ƫN_Z8̐dLWdդ\s.NIȖmU\yDA!_sU|̄m) 7b}.[A wiu T2s6 l9~';tr}F땇icG Myc][6t9EҤ--_W[kFf;Z5w@:n.ۏH{w+VcyS5knjnN;j=: x8OU50t= we Q),a q|i!-"F)Aw{;ZQ8CC%.ScF-sPfsQ YLmzF#f)F_97o#Pcu#+ERg椈rwEReb"JĿ}uE#TBd'1ʈ{r;BY(U+=~6`qGƒvHeM=jge q]@~ߋipw j?d fUegZ8.}{+2[ж$(? 0vsHwd㢌̓ܛBA%IplΏ<70$+aZlDMkeA b49E嚍qbO:xql%I) 㵛1LqtX)ԙۢM4HgY:@,ƤiHO8pf)Q݀-dhAm(7u+ULpw#-=ABf)BH>8ϗ ܝס~^eF>lEp *:65/r+ K0c2V1;s?),⼢ۜrL5Of!] t4Ɔ*{b0&{Wi†yǶQhТ&E N+rnqm{a"5 rB<+ dNrlpv{WNgmM@h#G4a!D'6OH?YOD@l@,.62V1:SvK( RMsdibW 6K[93~3 'szGֆ 6 mUv[l@t6du8 Vmto#DkK:bӠe4= I\SF^KA CM&PRBW@48Pҥ`LZJP1LؘsV6c8TNgY~E:QF*RZdͽ[?._Yw`܅Y%%Hl/ōAD@&CnF&a/`e~|)zY`{s㱾 I~^X ގK$1$tDu jZyv(Zgy(#tAeWyeBs ):Qg ]Qw;F3IdWqMf[]m^ hzie US&hQW2;4Y$NQJCzgA̲Kbƚ #<"I7N+ӞPfD[qGxDUӮ"R^R."2#Pdm"9/ZX__Yv nkѳQDajp`GW Hʞb18 B1=Yk8cIS C!+y!e ,C >膵 _F}&z$Nim>J&vXǹ3ϙs'BڪBOCsڛ y04lk F}c/y=Bc:+6!<[3on FjsK; NjO7Uh85P==, 亐_?2ъ&BGM6ϣcM-RMς/)g 1{Nj0NwK'c$rʻA-5O \su`10RJA$ki z%#XGRIE>}KG12>k=֜rC|.tW@6- 6='vy$*%HSluHLˠxlfeoހ˂1Tb,o1XF;rȇ;=4 .9;=-HScLewb{nC2?OmOfIP.ğ%VfT1nbz)bCƻ;XZ#9 L@oōhӟ=+fTM$|łv.lҬs=*-j0oDx!\~;~N'xQ=ppľ2>p8 +z!E7FG92lb4w$[N5r}4N;ƬjCnIlkԯ},vb5.3?fIW@u2| 03ݻaVtNHw"7Ayoҽzic4DW:VJIX8bvT<7f$?(nКDG˙ |&)̓*߀E Aoƙ\n/BMEwD?;.'yP]ЮSJ(uJs7"P ,UHk`S3w{~@ 25Y'[&X՟ ÛP =T3Sc[yY"7ۛxj a2R13<>@ 7ĝE߽ҏjԮ|tW*[I?C}T꥘ ػr-) ,Bu ^0Ď&9֦sк#j xgng)&-tIIS6~^{"4}uWGGE[ .|ƠCqnvɬ'0l ހCn4FH(|A6??h> gT\$آ[ N5[aݶXO!EqUgx Fm궍GId~4; кQ8d![_hi`M7_imv2[iy/KM|jdu#*:|<.FE:-;6,ĵV)J?yR)i1$jJhm^>yBE.S,!Bj(xf;6@\%:b4"DRU Ղ?د[ (q2 y\u[k#E/%dC; o#s~Ue"K &ol_̱=[!aWһ^h{[$F Wnjߒ_<81W %Dإ#s?v;+Q@<:L弰B.FeS"Z˔D14|֦a:MU#͒oLicل$^#`7. 0ﺜSYћ3cqè&YHNjƑ,:#, MgWNa݈VI&͕Kpdʋi);*5H/_㝟 B$NvvahתJ:KDs ʳe*УIhFHE7 xRaCXKp Ebs{|I@wY Tif,FqfYu -h$YsM£r.-``;ҘWDWUѻˡ <2S"/u2ƮVtO:͐Ƕs?ZwC13XxY575وۺ¢ V+q^=IRw|ݗQ,f͸=D\2Dvm]bNBK!4nRՄ$hu|&W&/pi)*a@Zx7uo6 uVwa^ƈ% '[詹>&pvih+UWd)>">Or4Yvyq]NO|Yg"'$ 4ӕIcbl(.{zM1q:YaN+H=nb\5ʺXc{( ߕ-bKIy8 qV">-K̟U׌"HjzDV %{Pf=ޕUb[jY1w¹H\?ƈi3dIP}6k5 k+͆i $f qU ű`ZimG"eS@-K_%K Ǻqfc@a+ƫrxܔny@hq1hC򷵐CO, ^9KӰ5a`:]u\o,3pW+ ;T~ 8@ Sյ )Y䓆=އL&\(jըѺQtrG5JОop>H"_K0YF: #kP 4u% N"BR= RH9#D⟌&'[Aĕ`QAX#mⴂu9#ƽFn^=js8*'zd IFk wn 4%@$z NP|luULɶ 40 W Ge';_mx6bMztzڽ*Ȑ%Ϸ/|tzhW,(7|JIs92%H^[Ԓ>ԯkd$_|&(}IJxŊ2#JoݱQ=i" E^suQz~Y]/yiJ22K aގ?:Ϻ<T'N(9AFw3 YDu{m%]_ F&ejȨDj9 X@݊bwѮY0tѲ/I>43JhcT@L-%p}`[֜qbJvGvi՛"f Y1T\BpA9BxO=R}4kxR|. #wy'睠o'_E]A{?S r >{D6t *KWѬcK%Ixt_o 2Mz4.!wǔzH*Ӟu{sclqN#ofYVuW_uPܘA=.IzYaޞA 67TJdKS@&Ub߽cٵp-]E,!?7q=_QAc M#nqθBZ%#`[|BbdL,-7{;ڃ3 !N?ՄZI_֪cJզ0l0"1%Lkw͐"9蕂mÖӗJ-Rl6/!#i:HIOaD[.2v Q|ZqϐYkz7]OE4Q vQ/P<‰9(c^֐z\oy-y!Mw&pnȋKSp' /?,:2nکkT7S= vб0!O>$O7Z62>`RΛHj}+ $c@F=T{p ~>Φpj깛1!<|8{"6O޲̊)_gd pT#YWfn5_6Tv6eNw%±}3^QN )EX]N̎JQYm1ZX4~py!ګ+?Knβr9l$}YevZz2+UN/.pl'qU6D7t׼@t)Dg]denM) 4'jO9gbJ6Fzt(F1e5n4 `[>i7?E$ϛ|cj8E9F?=/G6퇩EW^`K?/% g~Hghi<)w ݔ?.l|Fٰ+uDќk]7X[bQYRH@>r.6ak-H%5"FyTą̥пo=ǦSx lȥdlc|0qSɕTLoxGI I[35rU<* )iI)/ȡ}ͳؙ FEoi5}gc]6 # nbמg8Dxa} +'3 i^&hG[~b:Ņ҅%|4( 3ѭ`Mnyv 7 t'Zh=Wsd>px>T:&U;U-3J?N꣼%M_\Cv3XS4yv|uOSCթ*3rRkBFsNW>bC"*.[ P8QF;`֎3$ĕ: W8L̞_+`*}<q Vt {tVLƱPc|~pO]q ;$Ho%*jpV=".JfIMfȩ, T_TN7n{V, @MNUFtK!}"^&izE/nZlWB>9D?Vr!Xk&q߷kŽ)8lA'0^ޏwS2a6taF@Ar('W!v9[t&ledAu~*׫pK2+gx=ñzwm>ֲN>`9&/D1DveɃΦjD2촍lmBcF5iy~c#7+9/XMR+ ;ܟ(mIn*6{}{EE+7}zNbk ē~PFpJMe6'WΟ/#N=֚I[i;Z9{$i]Orsٞ(!}cJ.iT9e1Xc€HS ǀ23hkmNfKF1utc͏O63그H G+G EkJ|*TSd|]i_rp*#08t^⫥ܜ"*^ ^]UOj -3i9Ks@РqTh_Bήrj"%#" =>Bާr/qt}")0.ͩw0Oݣ.$7 +k`h~wA-OMڟ B iÜ,#˨&T |"1>7m%fuSL)ۯ%H<[So txjxwα<8u1?γXXr嗔*f1GiK o=Qſl+`jM{#Vl:D#?L7dBՠMC HU[8SU[1Bvb'ᑾ+Q<:NG%@˰ó%4?J [T, bUWcF7tsP^xR'N/DA%^ |_BW+v#X3LNTvXvkZܚ-ڐ]wG=ݤK9uGb)4ֽz?,CR.E2hCB+ ]x;56Բ 2f]U \ qHOsْ#AC q̉H(z_N6Ѥ&J a+ &56}?i[ЂB)F!v+0t~/ßy^l3.Prp@FTRVn~ިcu 0Z8@\zJy:[S\+Gj1\ÿ@{!6fH(ckǯ@@͞k 7T47dKpgzSVpy(_c^b/BvF-tﯨυVm\ ??eY~44 g[(91}mH BTud9\sZ_Feݱaq%A2z6͊10{&snSjF΋!śpD\,^aOP^;xu' r*݄ &?F(d.i&KSa.tSH"*f{buFlqIlkk}r.1r `4JPt?lE╜l=@t w{+.TYɎparNF3?J80`(^)z=嘮S-I> ݍS ѣ0f dESUϪ=ktpЃz$:ʫgRr?5U(tv$țb[Jlnx~#K;DVWX4 k0B+ F H&2KHDz _*7)dZ ? = ٍlbDk|ֲܼ)S[3\ ?"وZRE6iԻ*8ƐҸHY o!`jrnIPv*۾sb^x/`fu0P3tkڢ´ͭBK<5m6h7gAtnt*{eHL7ؗkbB}kO}f :ƈ|hYnW3=]2QԮ7ͫp7,i7ۀ ۫+Zj` T.N & Lh_ʧuvut [݅cH3/o0-Z?m " WW4;UliP00%dj'5svr]t:pg 4N?rXn4.} ?酲VòzA}x9+,`s2h+nT[ z5EH=6@W!4QRVa@˕bv2lVjO2qCƯHqvTvy$HZ TV|s.Z>{#<9SiR%_\7+ƮxgG>eU&zC+B7t8R::8uHX%%&U!:@܇Xf9+LO= ƙ8݀pb/Ͼa}؞YkHŭfu5O@u$.07Ul c;9fi3h`#a[#}d Kx3\pxhoź=#|İۻ[ԅpРf y7K10Ndm:V( YҞ2<$&hsFԋ-aYE6=9q+-$63LAA )ebT}ijc׶KgH6~f\,J3nU\d;4^ê\Y~P֎^ÚXz"7Ș☃ zךhGG3qʓ GFAV1woFG,I1G&Ȱᚇ6`h`9Mth}ք~\A򧳺=en樌 ~C7g:}w`#ƙK}YPB5yYsrmO<"ͻ_I&3?̶7xYfR^ yPhI൝ei!ݨ14:#YG\ǘT:TOwKzr\yR%S6j4־(e#.]ͤdY7Yx6y\X npBjAZl D6LO౺K%[IBsnL*F1Q1q}|}GV :x1\@8t./BbN73# W_L3?2u$9V?Wjנp3|* IC:{ sqj}g*"5\ oRUaSݜ˨\yMCr_m˩ugzr4gOhdtrd쬔<f WǿLr ^r"yvZKg%`>$tǩ6ؾHH v8\ ;be'W3TQj=Tq5kBq阘Cj\-盲[IYg)kAn?VMmaVk/o "_WGט}BAЍChȓ0gfP :QŚloW23!SQ@pౚqD5kg\SK\? kWIylFI'I|!Ddh[fpsyP,YƲeP4d&,E2twgّ"BٺP\01Wxϵ2YqWIA)Ip{V9E[y{2(὚)|;@ao7J뾭2>3C|0?lB3y$/`S]T ]v3q\ b1А]4j!ð o<.lȍ||} \dXѳ:»ˤTUOԔg7[mKiG͘ 6\wҫ=/kb*5mz Ѿd)#5[ߎUGvT+IĭvzEq} ޑT [8zL (SX^%ɖ,sN7C3r}E_U)o>q4ofr7![Y̫k=!-y[Q [l7CƖKy|mBtX-K x,V!l:Cjer A}yqWXBmɱ7Db>T6UUo\yDl %FRL:!rΎQ+bO$F]X#vP.NF2% n?1rmk@Fn .F[Bw;tY o&{$+ VsxnK:zŠ{RCyi<L *PX]{ GO\,2QM^,#ݓGW)fPO:/vENkm }2DrBU!*j/2JvIDTtbqkʔ],x'$l(M$^eR.ZϓHv߮ʳ>( /ʲ%q 4u@|y5vmF>VchEC 0fa5x7@.TӞ6hSkeB)=  (ȯhcRjx"VϞ'|i~KTC:|q@` Gb8K\srxhRO8Q6Az$ZNSeкӦR.-?w8Ux{ MI9ηir;nTצcJ[LbDЌW]?}= j) F2۝ЊH .-4GF,Kⵡ8VcW`6w)@&,A7I}䤳ܳ}y@1hb۠*BvoE槛4~k𭗊܍!PI3a P=Ū+= "VnsdBqMUvwך背%lW1ţ!#X@ȱ6"B'zc~,{g$x4dAP#]&F{^WFv5Gܹ*A4jp''7vAzz~=5Xj?O@Ş&H3HۚXV)2npFwk]Y: cr#eϞ`]8Q! HoYjB"ЗRUXEQ3 E)'+5zQa H(R`DU2aLp{ޕz%J~ԠG>)He+C5S,"n9/ļTmv*7`UK-(<0. U35Sj[›E.vz9;`#70! |Q,˭'5@tX S bP95x8 EvxL1A/|ĢNm\՛b=;YK/%!X(dGwxڣ qx'LdI 6ˮx؅Jh9<kdYDé4N[UPl[˂5|=cY\Aқr K-OR6]dz$C9CqH7>S^Pr$eʿcTKN0ɯg:[0C0EWvALдYM[ѬM䬗0+qF[Hu/Yor@bvHثtL<1^_I;tSVeu2W:hrI$)׍o`1Z!8k'ĐT(+t`>G./ &P3l9h,qptHIīƑ z灁Lήaѧ_kEG^2xvy_x[FĒ07x~6^~Ŭ(e[ J@r};N,W;҃=2H)a"yr7/2.im7y>y0& %`VN5UyP[5áfdΦ3ZTjv;)PT" tOh? {0L9*/3<@n\P1%˞3F‘72{FXnʨzcw/ϟP!t ELzL֘VڕP:>2SO:􇶐2]/,<,bJƩBs#wj XۙIC;*AkVC!wi?lxL h,g>K8 pazTHQZ3 薵 alP4Lvd^?f5#al'YB\[wC"JQw(3KlO Ev#traǩHs}u,NFgg>pxU67*_}UfOLxRB3 vgJhͰg&GXtfBc Z~4qQ%,Py m_ń,,w8 Xma2zku֊JƙXxpo/;݈bb/]ܢ{˰l\s&am80s+|/9II x0w iL EeUSl΅ujg _KŠe;GIJ_=!|/@1[R !(_N3n}56S\HdpiTPD*l| 7%pCJ BnX)M) kXi4 Pmw.G7`6T<8,0BynN=Għ%i"WGR$x0ƒ(BefTdD&wر]KDds)[#6rBOĞ«%,,ЦWؗyNzۤ{3hRzIg]}qDiv|K9қ9eJ섰3FБᬑ[ityƫZGїbnNZ;$o9nh'Y5.Hf } BoF[eP1EALs/^_z!̯Y9K:em&ʭ{_fR8j,"Z )-~^zRğ-h4XQOaԊePkRqĘ$q166l3 }=k9$@5[9@T~vwLbǨ&νq *tչm.(X^}pmB4,ZQk?!EyK1B('eʸJ?'[!UC9.׭Tͩ{<1?;<~ߞ4ߒD 2E0_|>bm2Z2~mNeϭ_瀠`ҋj\d`8X Z*(.@)E1H%YC OawOfUPn $sJ[EG % 7#|Sv8$tMv>(' |7a$NWLރ@O r>>HZ۱ }`^AOW8E*zGS+Kcvycra NiǙ /:7ĥ0~ǿ;MshD=G)= ڷcϡ/jGdAY(NEXZRiq^vw 0in'0Ϫg,j)=ü<ߊ= p^R HB{j~" ԜW$?*ޕb;Gx$`Ad2:e 1<'d!K^yFcmo}:`|C nİc~3Γ2$߸Ik^!RSx}ǠSaz}Z.Oo`ᒋWb+ :gDF7;i a)w@`Y4Q~o2I.RO`ğ Rkp?m7W1|wRѠ'Ud uvɋMzVdH:Ig%_KIUĨ{ø2TtANrű&X&5q<|yUzꓣAxڢiXfkXȲ$A簼vR_Sc$ L[7$jrfEHVdAA6}nbJcXQf.E13r\0 Ers+-޾O&JSXIzy)N6WuLk*'?s_t:X!SBގ>GBPpvcFq, jDLbN8=L' +vIF~۫&Dn2,M-؇xY%YBK G@Sj pSM7GAU \F^xS@gEG ;6jˆ(?fVE )yɢif⯥(BrK|.B469a7m1D4;7Qpٿ0bAsO取몳U[E#-0qC5x/ޘK;)Z(K)$#x^"ڍaF^wqXgjMB2_2k‎D⃸jٕgKe,l^v:F<]> fV"&BAi tS@|?~>(U[(^gp"OT:Ǟ|>&E1XUkLKyϾtβk3IC=M ֓7N& TP8RdC L.IهK+RS=s(3rNڃO )f+@G\/H0;LaZؘ/ުގ\:˞'Nxٷư ?\cD;7~&$! q%ʜH3@ՎlSX `-0"V[a-GJ0wRW yGӧ#zgD#"30M ZskL/-lbfD0/-)]6|s3,EJ0)gYZ[zlXCrǘŒ*$I iQڱO .㍓jMNp|o|ԁX'³˙RRTi~?&my,Wr O_~7^!V#*" >xNP˽%o xx'&}B3/:Ff>R~8i[A]y,@kײ]}x*Q!/nY\ ǴD~ Hؖp֘-Ӽ( ܧ6<h%.Я 2hy-+,Vf! I( Co O>H"Z'4 N/=ND-tC2L49/H )WII;)הűIXXcEɥfɢBgӌ!C|^Bw&GV TQ,?d+nd YȿN80 muOTAˏ2cy|+#PjqNdk. Xf_g9jl\[598C\5ۂ?= [)noѨЧT ĸ|X4Z*梅Jk'l P2X";VE9 |˂lY w!k bKE!UḚO;LJDG蹧[膴BzDebU0xc&xS@/JT$tU 5 FiùzzlC<6Lܓ@L\Rm&,d9K`"^_O#U Jn> wR"Ja\_Sx Ez p6=c!׿^c­ȞHj4CCuͰZaO Q_R4$$M+&d>6̀*9cQ l`W $R z6U§V•X q=O7]4Ęѹ\{b XPtF} x?wkZF -8e.=qx̱40{FmqJ*Px*8?!nFW@s4_8$_f^:EsC/=n)T?F\3l&8Z^r:/2amOv ~_ 4`'UC#~}*st4yFi> {`#1& XӳHp->o}폱^@ .z[5)vYt/TBxB8N0,Y$&S?>N}aȶ>1ɻHݣ9Q zoJa~I<`+5bZNpHS$š;v[ʽ4oBؚ#"M ݆of*yc5#׏+ɴsTI1k=fokrq2PF~'"WC[,L~\鴀zōqM#_ᶜ5-tԩ,q#5 NE ka)x}eٜ{/`= GӢE5xyp55S O>a^O`!#Rb?V]'2 nz5 q62B¶Jx^Îb$ kɱ?TF7NKdJ-_Jd*ft9K[,͖H2SH31Jsӏp?@۞TΧqe7"`zpYЃIfԲƒ\te3^} 25T@0|E9~m<%lbؓӑ:B5W[x's;nE.:LD#b 9Yَ_{SIqRBUmo{Q.+8228AS8kq\tST%lKk&(,ՖJWp>!D}ùeOvYjWe'A[D P{DѾlaVayKLX4~X>KUEf$ SEhɟ I.T("z1rÓ޷L^+1M$iS2uA!iz*$֙U+̗9\vJ^ [6{ExǶd'ȡ+e0;bjD&HD(+[ZϜo#?KyJZ1d{&~ h\;*=;0XR扼U Ub3 jCrĦ\rHx 7#m5^?g%q{tpF] ]b(6zp0󍭺S Ɗ W#L 6"nE+nLa=GKqM'7ed8R !Fo?M BA+= (E_OՍs< b]!xq&̑4ÇiwoJ)CpC nY$ V3 {dzb(KjG<{U,2GNg+S ^g*jtA.жbKl]!Vڙ[9ýfuF|x"{0 lٶ 4lhZ=2`2bpw>fcPVP#G!۩9|txġlO U#hHRmȄ Ac)_b *<?7e]P>}a8fCs_П1]i;mҷx] Z &p2D- ʖFcp֣sy⼟W+"j淊3,SKez?:@Ibz/H >d5Sn1zZħ$GɰM$T$gUBϢlvަ$zfR#ؓb8%?H9]kx#^)2f#.\3POL^~[8_H,,sCyN1hj(jmmFՎL餵mMq`-Y'n ]i+rF|ESlY{M#.mOH&*'Y<۝h٧щne!lilخD {)цNBUO϶VapE]y/4_O+԰H,&Il}?6MiT"v8J)άqyi]pȸ}L\L[T ٓD%աwǠ,ZaRRש)hVml~k oP>u?|_1Mh8BF[?=ڙ%ڝ~ f K/`C''5}>S`O TxON(~pj*3+"~(190,rH#Ul^#s7\+zЕ$5w䰍sުMcw3뀶s:8Wyvl @HI-IN(Tb{q9Ԭ=yHY$W}6ϐSXΆDIG:R:l\ Û [!jμ!: t x(qf/U94,;ՇuU2{w?KL\whِF6x^G~r-s4u1{ef^zتT8CPs.=gd'BO ;5_-,D+vwV8t@jQ=ڟXMN* Wa~1\7]aS2~DT4R\D*VÊ HO25k!ᑑv]PAl. U83LIɹ; &Nl:#;_EH.+r' JJv$3׌ #ZS}PXPe(5 > N@b P/kMiJTkZ9KKuy}S@0 w/0%PlYuʐ*ɿY認ߧCdأeD`|.T?%iA_9:w4rD1JF[p5DFH8گh x{۟Y/BPskEZǹ~`|.)6N{h 0ԀnOBBk"'pa=˫ PK8,-,W0{`ʒ[DXPX#W '@S|%b(Yʊ#AUQֈ~MkQO,2@-'|ë{ng Jh|XN TG:WY0S֛a͚w;Kg]Gwm.e|[Ϧu  {p0lHis7^?4=zb/K~Y~xtW2RH-$x:n\Icy".l60R0HcC !vv72FS+Dt:Bey]KDL,v+&g $cxC)ᑆ e{[Pt`%3X)'S\f7f,2Vtrp79C=16^WUҼhbN/BW.9?P֖=[7Vƣna * snt!gFG|/y97@eeuP{u;TBJa ,r2ߛ[˹,MN?Dfl iW"SV*^ hmخ̂N*dTa};Pς1:FHnak)agHAn!' ݤ`$SΈE- _fC %lìNˬg[/&/,W^3b,ݦ,A/Z`h?ȗʉ|& $|u_ڹc#W]Pcx4n(.O؇j~7Zb %1 ?= F ~`edK!YLi V|LeNʍ1n'W>RAJc~hVO]W/*fwYp B\O 4yפ4ˣe b2* !3ѽc*YhWμfu-_9~\h){8oGviλsb @ެZ.lcM7E3) MZ" cKT!%1ZD%=eb~*OY4?7g(TuV̪ TCE%c먤MUVO͕IKUW!tAoEW&#WP%Dub~6*PqBCzw \OB(4g^nZ2c7}),8j(-^5_!}3Hd{~1(߂kѴAf[Y ՑM9{NlaŒJ=[A9*B ޺LNσLEH2ٜŎD7|V@x(X4\L/?(bOQLD~g k?˜<9$\ "ksσIpEԪa$,CL2\4 llab0_Llmv^O6[,e EBzXXG^%MWRW|: ~3a$ٻ+즧]J*[-;O9s4Ȼ /(sijQ/88VOr[2 V3Q3ݫ)B6b(- pNKRg 2\b[Ⅻ4$hܨn`sP 9KƜ6O`G]&Lj}s&<quj%ߪhhmYTiID[Iݩɣecjh;v["P}F#Fk׭}P'nOd| H\K{E80{`Q|>c lO.ًwMe?OzQԕ:HE QIn3ȡf('g0 Y; ="xgRzFrPI*xU}pbSލL"9,[OgM(AT!d9\C--U247[ɾ(Gu3ŊҵD, M{ˇF555e؟aV_\Nak6+JTz wl'<mw)(EC|$1x۴:͗GBO2+iX0<Xy< :Zg83ӌ)cs(kKl" F1$<>~v. 'þ( 9'mO}4`s)dGq5| O8Ⲝ˨&*%4qUԁŋ )${e`>\>JqFv8A}Q:XVJng$[$fﷃd.o-%\\]~|y.τE"}]Ű٤WSjHؾA2{:OV?< `Tӳ:4s-: ! ˠ7 NqN|N%/_%ZKj ۏ @hv 4E[d"yCvL;\Kc1kfU|x`s >߁zӻ*,f9oRpO|8Sm-ML1G&_ʆbJ^xr\eZ(ܖ.ׄl 톃_8'2JCr\#йZ'_  p7&!JҐT彾]x"^J|OJWLDz?A6sQm2E݆8%p񎫃J^GN^z`;i*uQ<27 kťR-4,(S+C:QSHk*-.OQS (>%l䶃8TFx\MdN5:-gx,lqU%=[iUV^N vż*U5 樖AAY;ATHi7&SCU4ˠbDM!o?T`/+6Rn5[r@/]I/S-~ƳZC2`pkJ0j{`6I "3㻃|CA2J`k M\m-lxa)vZa*WKNB1H~f3v9n2]-DwwEUM э_!P,5M5Q~fq~u"b C Ƒ\r~q1נL֘9GO4ZJOLwrsCzG S! ȍ"GF\07ShaKB J poEJ)kium ɌG '̮հRYxOJLWkZߗ Y712!.Krٯ1EV:@J]̷<=u@(A=*\{ܦ/uO 5ߝBy z:x<ɒ}#ⱞ>>:oR!(82W (䂢Y8On++$ŢyPvԿelAr;ק\wfaHbRWx*SSs}:|&_AiTsx~#c=$cwMA9*}nh8`2fلIsx[` J/55CD<*B/3g{HWlD c>[ԖO0`]Y(ǿ'aͅY<,<~DcSR苬x(qWoHdx`qxHTff!(KVO?2_n)!\;ogQV$@0vt2:bK  ?wk8Jӊ| 8Hyb>E5lILǦ_уdRoM\r>(hK+A:`{Bņfۛ?G8-,pLzE V}E[On吹U)ˆ"bxTC}\%i^E羒C{e *z(}ΞЪhuJA[u|Uܸ[:s1txTv7YPkPY-ߑ.hTJgiDvW3PFѩ\MśfmDj゙kb˺:?`a1L2l˜D7;߳ppA;Φ*+E{Ƅ*Zo0jĚuYʱWb^T Bds H:i*@"# gN8~]-Qe Q䴅9q}ro\boFA9L8upԽl 6l0Zf2L9=vXH8%~LHEh濚Mmp&F>6q kS`+ABgDZٳmS?Ӎ8V}xW:5&,|Ł\0>,/5iBY-ޢݸC'Y;N12'/2CLU/G;|H i|vEã"Mal:O2~ VR %i"_BOGv;QSUnSk9wmV{9gEd7M,5>adp+%ピL3L unF ~ nLOd;d0>UPuHВFs͇Di52sLwQu񁡲(b{ꀢm9>pi}zۅl*S?4f iS⍟l adD B8R?M.3k!.".5yoGا6+RhW4G%k]a K Lc)}X֫#,^)-a4ARKۅ#N͕IP\;按,vӗ|jAmLMX1Dqx,ڴ>8cooZ1<:NKD眘'"YLh'oJoٜk͛CڑaZyfIEuRJ{6!!P KKCVVúr4+ dL5*?.#7 \iUfx!zgކYܾ-[S 8rOEbCTh$ Ch4` ʤw);81@PCqٰP "$#(&$܈I bDʻԹH%?b?4shs-Bo>)h-L]lӈ8L;L:F?u}3RzUᙲ[k{oP }V\H'#߅+}JpcrVU| @X~5&X5UiWk\fcB nNZ 0h!E5}40[X'S >"g"fY9HsaV4,ϝ+4+_v2u8O$Kl|,Q[twZe$t bWcIWGs&As34kw0UmpҏG`x3=uz B=fy([jRI0/Qc B?Z:xwonû;W_?is&U΋jX9j.Neq'5UD[ҊE؆y{'[%M.aeO(|0F 9n YڜGN+n t=~207Y!h"e+=PK!~JF Kj`styQ47K xZojxuh&Nǩ\⭹?)&[H-;nBRJi4MCTEg1ףC#k |pQQe\@hE8+WԢQ3˗[=^14I/WF#f+U2vFw=(ba.VNHoڂ eNІx6Дv^:i(`XeŻQ&< w nȋeI՘n+YEl.<<ыhX8^C Ns];ilE苢 a %=Q**%Z2 '%UpX癨{c%mN0t:cr􋣀xP+xZ- 20/M;LDi99Y3Z)s~0\\]SNTb Vng'2nE*.]C0f<+? Ectkbiȏ&M?˴a'{TpYe}Gdͥ7:Ŋ"1)w;Pc8ӝpJݒ'1Ei0S(6g U'`_Dt]Hm_Y;?y{='h`Q WOv8D10i7P=n_k3~=vϳFEyhu ʃi!o5cIA/XǷוt́ADʠ:\YũF p- qz5 7N^LsilAh\J #[DzaŚ|͂ҞJ];S)NҪ۞V2b@[aוA0$?5j'yL%|l >/ʒ d$;% ъ."p?69URԉNm"$T14= Y\.g&]A^2jW;TK4_Zw'J7S̪ gJ<'0@Ky,ԙj ja7vĆ-^_]B8yt1-y_Ģ}"Z,FyNГ;Ip;Ӥ疛6re݈SWL YiƳZNO&E*zVj$^Q:n(|ꐩ$K *zsބ\DzށiEI`nƭZ?v43w01L#6 u(B&vps-bF㘨ƺ['juv`ɮ7`x0TIܭCʏƦHKH< %/[ƱK=Ig/+TizM675DxRT_ B N á؎gˤI_vuSהX+3ϯftq{ MؽTqϱ/mvwu7=<:)p;>s_e5- BSJ?}*!5o v0G吖ۄ]7Wa D$ծCfސܼ R ב,28#sixS@:ocn_C`Cn|%( TRt=6<xϵh=0IAV8?A&8ōEz *zmxb!PnD :vŊf2\F}"_?' ʕnc1ݣԴ٧\;8c /Rϻ"1 KWrvV_1/nU[k"\Es;~kExR?xܺ >qR%:Q5&NGhU77 FV>wg,bJDl@R؍1%A2AD Q~1_irF;R>P.@;AT c7n H}-qETZ~RX4G`v+ORnӆ'V1 oF,44S ӌVE6 Π^<-.h 0E;AA:3]K$ Ax ,("|0X!W/zؘ{ '6}$(O˓.SQ1!BJc5*˲qNEK `hd^bvv#4X^q+Z}I5c ?i6<,R|T7 tГj6ѯSbX}4Qs9!пҠ-ۙ)`՛-`P-Wa Gs1I6 x<ǡ;ҍ(ꯧrhi0 2S*E<G='&TP՗OLp!sjn1O=gO ͉^Z1EIh`[9` GC@:ӱz8|{^ *{_owX.ST8 l"lbhj^hwU,Ȥڊ)zjou{}mk5xokqz@O8 /$jK>\HbȒWob&dyrhhV;h4]o7BT$6խ|R5Ѕan5+AYe`Í}Ÿq]t^BA ýo]k1*o DL 肢h9M{_r{5şշ#ۦPʡ %1wgZ=J^0ArB;Q#y`euR2,!*671 唌a-/@AVXU L ^E ig5BM?Йߡdϥ+'z,:~4>Xs]m)qQR/\cCf* ^7+ &3Ax%-.l@)j.lX_[E硈5-R{.DgI!6=+\c_3@à!H$:׌>gMwpC4%^~ɛInHSRAdD&=weäl:_Xӵ6ڂN'7Xb9+Je܍АRY;_;Jt)nv(t$ҋcWACD(nIkI[7u%Z\f) "Cd1Q~" &ZN'f 00 |>@f?p'EjaݼѱZ1 Pj\G%i]$d/50z8ݲ}tQ)=V7hvtk}v7.am52]az>َ@zM9>jİZq`F^#hx5 p*ְ3RKfd)؅R1va}Ie7*7Qjеn-&,g`;VZӎ!P"pפy 9;uV Hs@2 ԇ9M߭ջSz;Mdя$n-f[TJZJhgWp-a7uNҋ=RMq D _]L"~ʨu[q|]|kz: ؠ~U~iT\7a3aqSoL?"Ƞ|ÛCrdCYN_.1\db7sg7ngGܯPY%pPWv{e_J P(t Q*79x&eMB3$SìPy#yI%9;Bÿrʊ"v~RX?CNT|c0Ihr6,ݽ%, [o=݇2AVr!\O3 4CCxi5֡Qr3VMU3$YnV˄.l}n :V)c'$ZmG1TUT),LyR}`Br І*J34:X"tek}>*$Ȗvs# 1ut)/9&Ÿ=7k ' e TIWyL\^5;RI߸Zg\Ƿp@/v @'܍M(7L1ô[dt"7XoLY_XBmT /duSC+klŎ!s:piI`c-wlaiBDsV W(1p wu-]#{h37IdQi[o.TBe6G}ĘL˨}Okhp Z ĉ PWk<1d0`:-bQ.c` R*"N[Jk:,CmQ'z\t"ӇXո(]]࿥=ꁀo/UU~l(D`wV$#} gU {nr݉iJBzTʡ9P BSm ;ý>vi4j!,'縷$ VaO}c?s2K}kb*?]{yen,I\k`:'ħpD厌%+l FG*G꣆lNnww͟+{yyk7QFF|#GgGf]C::̖6enu0;勨CJ]`: 稶Qa.!X2?默k~^dA/I oLQRu~rI.Ot%nxTI}lr<}Lz益]MAٔ p>O[0unu^U0{baJxXheWYhZ_0(tE q[GY<82'fo# Qz>@(aW9%zm`6mCQbfӯ \7y3."ƩTQ`2`m `RgO_$= ˍf(&qvXV fM{N@"8hi>*YāW-G˛$).*&. I0jCM7L!HXq+gЃgQs:}~[,KH|rĽ[l ˍzlמE |4uryWoU6~!bf8)ay.aTr20loMv9B76k=>#8 i ۖev ܲeuthy;q(4͵)S;H{&gdO-gCm5}%غ$qa^Lf"!,rON?)í1QBek? N-BWeE>n{T+jAac7cW$|Oq5(]>b[>!W-ۄ|Ve@JOR$kֹx!$P}vEv4cX|, [lR w4 gYgGx]e\!/,#bxg:0hdpuӉa3IkR7p G20@X(:-`׈jsGLb;dhA F*Wf>Y+V/ x,I`LWoog]G ZG k4W]+ ͳma|/!T~ցe/+'Uaߘ (OGE4r ͈h<(1ޝFXK% AwL}ڦMm=Mo@e9EK RWsz: ;>{}3jPb*?rUGs[ 29TP7w9~c2;_m,3C ǃ wy\HjX {)K_ ABrB%LEM5Ӎ~c`:Fuue2. g3b.y_P +Bx{ꧠLKֲ^8M|nR֜wf**{(:hM5h+l*~q>g G=qŵ뗉{?#ޟM&Sm #pԖYN$v{ $(*gǧsB`xzmaK!cˮZ}lx JD&Ȑ6X4:;eW _^;0b5Ȣ sz[Sն(mQzr1`$y/;RЀ摁63Qc컖_ȂˡخcuJ{z6gb= Qmd1:6* &DU9 "Ayq[cX'RRn޺}e/j)k4T$g]ۃ&%tΖfD%_5:/o -{VZ0K&eX+n~gPD!nQ6Y]ZkFI[G[Է?&76~(9ͬyOW ㇺn8JW&i&pFe,٪q*xFXn$@ !.")HnvkzK/n=^/^r6. an.D^.+]^",=6Tղ/*Hq4$3VtSMMqqK* 5WYȐr:N]~ !rDZ1yTjBIQn,_bCyD226GAY,H-AU麥l?T~2s\f0R|l<"`} I2|lYG~ip P9?kJzUzK.evi3d&Mۊ̝`Rs̏,*|U}=:c̊l9Lq]>-WӇߤ&W"I#StȒP!Ma-#F+DsT{-@ȗV.i/孲2 ,zѓބ{_ əmu S]^9?.9|/zӣqP!BODh0ȿ5Pp2AFM;2zv g/rܲ_h׫iTB3N̰n>t䮞[yNmB%!AJJUxXK(u3d4dCS\9Z \'H2[>;γ:D咖pƥσRËIQ0v P C:!Wž;yкUcSs']thmwϟEU!ퟅ*DH r3E U_}z;qg̹۫d,QLV![[;\AIrXP (W/CXd$RwA)JeJ3#RKH[:P0(SA:)~.O 5Jx`f-6%UMtK*φjnŭ L-BuW*8Fn ,Q4-+дa;Ypk.C*\skg\&/d?J@qQKғ\ JW;Xz{N դ虠TMPVPlrɷi nYIDfu6R7DDX|*)_Q‹-:h"ˏ CEAKh\@5p}3% j[3kw uyi~g1"@1mVړmwr~?Dqg 'Nɏ#Ɖ۳DX38'՝EŘUPMa@׹/UM>V,1a~_Ú{62@u&xsܭ 9!vo =%6 5nߗ wO: '+ !ѫՆ8H78Ѣa$&fWn ¸E}KGjurZ= H艟;PRdM 4@]fY,Nau0 HK9?R.Fw|)0z'BV(u.DBX3ᰁ&9FR,1*}g= lވmJǦQ_qN J\2-c_]lgƑ`e# rծMڑ"_eӹQfo&3rm_YG| MÙIW6Wu_yA*ɜxŝ ˂[8 x$\s"tW}܂&94.ٳJa1R8;ؚ`3qh&ƤcAe3GgTc1:MWXjʽk3ERtn_eO.Ƴx0u]@MYa*+؍Dc wZRM|3'T$ڷ =va!0ѵfU'N$c⡅zc)wEjbqEFddWCS:ରG, g8xbq#'@ròҲqȸ^7SP1kQLYN N(ip_Mu~hGӪKCܓV{U;'8 " 5Ҫ'a?qTHi~x`Q\ Y:3zƚWhNE&}l?/h45C%QYWDzѨ6'aTjUTݬ>Qԇ'fF[ҍMYhbݫg^߱pwlTC oI})9;A$qq ݼ{ {|VzǧQ&ڽ7Lru-{VD`6_mvu߫blf+1L?=嵻"Co>Lu}֬u8K]jWV䬗oKb7FXtȘiT{0^^Ǭ*)O.MڌϹqC* ^=wsrahd+FUOA l6A?Ƹ2Ձ%cDtjzQ՜C>%`hO"5 =Wf٬.@6U]vj2W >,#%VY/Sz0/7)8|]Q\!b[wbͰTܙFe<S+"{.tn $|7N(0?{Ȁ*lq6cM"jrn. AcW0( Vs OlUq|~~sg[*LVfяՑTL;?9Sq \cxorp-]ARwTݐ ' Y@4 "R\=BzSo NR ͷ8ξ 2L m%܃P}b+ehL[R?[bk:J 35M9-:535%mvܲE9vP "Gl;q7k* U=VN;si_932G-α]"}Z'Mz7|<3(vہ($^ٌR sO׎?Lxq*@>c&ZLi_ z-DX_;#go)_ )+0|EOM^S6ku3@IC@+P"Pڢ# %7B 8R giO]ju"JL}PM5Vy,ϑ 2wPH2]餶yʒȕ m 4FX8sܹ 8Бh?c&#OMFsLc#iZҊ"(KS ;jt&-T'}ߞس&sD%dꕗsC$C=<Ξ>{߂AtTI%+V*\ )FyIF"L71vQ}mQw[HPM% e;Rpz..jFQ 72ns/=OIXtqj5ϪDm= >AEXI$d|A뛯1jV>N-T q㫬6XFfqQ.'|CxQĺҧNEpI$Y YP.u|ZbT}z=#DUɯT' gz-s;z,).0[êo`䴤A½e57vWe1= g,xDZ[ F|>b7=[)EP 0+} M9֪|_?9[X]=F?|#F(OY)EP۔wv-&:\QI(G'mȍM¨J DFy(gf8,mYH']Yy@+h=@6Bl{Bg U}L;46oѬeƔ _F>tRT֛_~ k˳$tVY`\?IR8:X+\lW}Z nXsc~[<|-\)#QY]VKsJI) sD YN= )ױ[U|dwaj"m@81hInotдF5WJ'`K>fQjd"(RH!wG ]MǦǔ@h"pe_CpP{ הRPBf*U<<@L,bߡm~I_~*nR%P9z]S `+W Na:E/Q<[{q9JlEj+ؿs+"zN V)^nrxkKQcpր~TqB;vgoD,G)p :Ȼ\uXY-y@{O>MDdo_猕"4~6,6:ٶ tԠn7}[ _Z߽R,M/eDDe6e:HbSe{y |MFxAO`eӚ)|N:Q y')UzJ ǚ;'o ;l+cO+ d|7!PEz\#\(8\zl@zCi AѠ;BYOP͆%{AP΀SW#S/M̊k"r(vrvG!4fMϿ6Ж!AxiQsY)Td!5@•eI9odqyѣ,J"y b*^i>E8 L ,jwJ5'r<v AAJ<=RgЧLgg 6icvPT RR6t!CFِi/%˺4z V5H9<@^/Z;vUT^dtD YSH:jAT,I[d'e*y݈dy,w.ɡn滂x ʎCV@9 yF߯<{AmʰCn,8 (NT>fp?ćro?O ? l*ʚ0ѐJ/mڀuPK@)mDOJWlr.%Lܲmkam =<݉8/ fJ,MlfNd╉w gd384bJ㉈ W Ua .H uS ^>?gvԹ_ t`׉eчq]u$"p(yGl{7}ޞ16ejIus&2$= $[ⳅAO(#ǯ%sBx.!er2>}}Z>o5cp ɽt9WF_'p;EAǒ B LXr#p,xJ}EզRZemo@qzvlC>sVMw%@=𨕸zXteYAf!mHPMm)Ke2~3 ![-Ȧ\4LI`C_ i4ڧhVbq쾊ف݌%֧,ԙS,=aV_L+'}vs"2[ENb$9a/#DʁGvE "o$}M_T;`:t;5f4yW[FϽQ?֊#ʢt.8߆Hܪ%r>Rq,)V}ibW ކ-)}|H@\iݬZБuS6=Bkc8.PPQX2(׽şkŲsǠ&mZzδ{s@4爐˺7gx_LikoQnd|031 k0T'HJe:,4>b 毜n }\ˍouW *Pp2L?~.̔C "U1ޙIa9!Xj\|D ~KnV[UL7HX"\Q$\{̈́hFm;1`7 c^)j>`!]Wf&:"߮Hz.CuE; bj/Å1!, QI~ppQNwKAO2.}lc#nᇮ ~ӥg.?p䫂? 7NO-GJEum)h:p \~uh9掮+G">ZGHzL$ Eѓ1g]狯ugw0c"m=ѽJޣuAI8fߴ 'cKYW.1Mzr;α(~S kg`rq°EXx{bBbqD N<ĽSVpz,L#2k Ĉvpй*LX6hE[A #⦛A>/SZĝ4|s2ht YeA< J]rk HΝ͋.IFOe8 X nw4v͡YeΫonU}WFw~}CLẌ́Y{pP-}ĞU]O@?d4/*Kt7ҽTNJJ3; ١?l4kV?vEWEϩC4b9_=3U7̑IkID=4CS9MJ'z ߂9< C;4$aҶyZVЈK+cocFiIa pYy$Ĝy&i&!Fr-|6tXSPt\bseKV}=D,LS[[WE ɯ,.Z&י+ZAa^.K~3Uto˰CO??Z>sb|Gۆr߇ڔ2%e39g*$Ø]PHyBd:W@\ .cs%rm:D1=TbliٿVwnFր`Ymvr-IEm~ upEtc< )_7TtL:) V)G8(piIqx*O#4#0A]{NʹA8$s)cWjWyEz!LADY8ϑSWƼG )C0'#Sl(\\Wef"%Mb$!KZ` UFw4:/r;acb$/^ȞiJ4E޻!^=i?@#LUq\:]xK!wp`edZp*8.a,R %AX\)'\E 8uJѯVvD,d9i.ljžm$X;Wv*{n=.>*Omθss,ںLaU!Q[>ͤOz2k2=+y':B=ԧӧ9D[lOb`0#U|QǶ;7-s̏m_ގT?sxvjY\M/~MMm>W~]!GLDK-5v$KJ; 3 FJϸa…?@ 6V+Ufdh AV tǕ ^?ISiWȍѸ2~Uf@ OlcG>Ѕİ[8w+SɁ%? ŶXSdX]A g>]2u8c 8)m߉}WelCyƭDQ [S:12DNɸZY_GMC JE*߿lc4"EF@c()2*PWw@Yo^Yv{K \87PB^5ʅ2,ϯ’::CݲfyϺ '!-@\&b2G dVӛ@&q%Evz% ٪(c1s"_]6ЪG>hנKrvRe0PWcWhA[Nc(]6Vw֗Їğ4XWS$rwlg\8 { d]}=q{ uSq:XsV]gU9ÃVNE]Y亂|4m0ilHt6<@m"2)b?qwZ9|XBоl~M6L(1.MQ~QnGeEV'ew eŭ# u> S$nG+8w}c ?,X%j͊ZJ{V;@(җ'l碇$*[s<Ę{S ٶRY[oIs Zx@iuh Ct޽X%0VĢ]gFp'p֧ SBYQ̪66#19e 谵5Փl=y@&\4oqʜpQ@)VnLrAZ36BUֱV$1K 0PYИÌ+5YX=t)zzK;̒ͼXn"Z=&>L9-B&Cg#;f0 iϐ 9&{('ۚ5[_=s\t.mqΰ]mȊB`G_#"-e+J4Ϩez]+S 'y*ߑp7t>Bd;Jq|VﻙL"Xt^3Nb$X7ya1i/kn5p.ᢷ@h.j#n?GvM 6fZ S>%vlzT0z7@^b xj}#ތ4xqDFjtG^ զxԳelOn8#uq~2*kdNg`;#v[G6ז{EZUlV\Ư쐘8 22Jʜ+K"bp$p(r]#WK,^\KȳV s4 T)AC:1I#t܊uxDFq*W>ڗhI_픤 a'MNq;n-&789~UGܦSv/L`cRI.ヿ{y$fv&fjC!Pa*@ݪtcRm:Rt%/J! B?KfhIWv3ڥ&03q/;5t"΂gA?&@ r}KUm7uMp捖mOM )/(`0:i"c݆kwFf?i ֹ Lty@,U +4\e?p v8k=3ŏ!9 xа²,S~@VO)rA[) S FXѿ@ Y#dzua; 8` EU3}!X"oܬ(oY֊A:t8zj4-7"1U9-\N +1&P(.`0%q>aalGL`uQ RS÷0Uc5 $Ro*62$ N85t,[~1~:w8jP 9߰ji~AU<2po9}0HM)bb",5\1ۄ*;ω* AfjO #@ ,0]^IXce6H@K]ld1uvC:,7|/Ӏ .8+$8@ZᦟcXȁ BXiDO8vp¯9kۇm[/jx&Tfx`ݾ d<݁/mRϐ1ETn-ֱ" T j6)Zm< B[uFiӜM;%;Ij=9Oay Sk6aULN>Td4Bٚ'RY8@.1YbϯF`>;J}H%֮Tq¦{&O wRWkʱٱ"U;_ +5oT"_T\98"(!l|}6^C>J]R{f(yd\*ux6,+Gg685x)՗MW: xTicͽ;UEfa:$kj©mDSV.qqoݜMEܭ&7a#,3Ey"@R'Z+.㵂~tTX\xsa޵J~}ԕ_Qo ̾(i^ϵ4Mo.Y%ͻM< *Xht(in݋a ϩIYTc}x$4R`˜Gѝ}/5o2'r>*\#pq\P=ȡW%[[Ĕ(CQ7+/iM; 8[K0!f[iI\|A^Ȼ^ebO]w4 $k1 .sG'1ss߇=;ԉss{ B.Q?uI&Y(uKu0v{o(`fkvW8;F/}YI>fMpAA1̠櫎ī( Ąxw<舎mw'd/JeˡQCTDsz9LJ;$->_BGpZfbo<[RwE]Z)ՁmgW_>3+ 77'j[ێJ̮^]:SWsaaRGҔKΩ#ӷD+{_)!Y033z~&c41nw^?o #Su jꥨRyf/"b0-8 ]]5- HdIhT\ Zr$LB+W7N#>6Ep%E3K=3!Ϧ6>;,)u(e4ȩ8^'9i:bȤKLp$uWEJ(;!u_`-E+{.EZ.FOa*M1a5Q z`w%QQt_[ UubB|ki^"~No5ٳÑ";=P*L0YЮj Lu~^ܕ&< F04 w0(tptW=a[2%7(:MqlԿM)(lM.0PnM|Q}.Pvpś#mI(đ!9ns1v3V6LF2^dv_R xT1Ma{:gbUvnm1?68FSS*FfKMU% 3:r7q;=@]`fm?}sQD+g֎Jali/bWJ?btFGcوт[{b17%̝>`|(ΝX1Dn:tLVʫiTV_eYdurE'}ycer%Xae  OCMQR0E -+%xny {Vٴ {ԎL%4}^R.pvee;::ni]4){1K$gL1o1<*Y HCee.-yg?S E$#fK>xT_[ư+P{RaF37ґW_j GRP3IzlϠKA#|p^^Θ<\?_Qyh=_Ab-}x=0 HWxmzxRzꢳ]n+TRmG˥,ZM-C㻜/cG%*LvH!W3_bLH0^@Jb&55D?bEc qsVV/J+n8Ls/0`JTvy1vT;b6g#<$Q}Ѐ3 Xݴ>/I#۸sܲBpA@8]yhRbu0Z'`ipj){wjk Zۇa<ݷvE r #X}H|K9nc'ΐ"v'Qq]6c.-$˕^FVfU [ ?2W$8< mQӉd~k GKd~$D: !pII5ո)C(*(GKf΀"E>¨GQгk0E߉yoYI .eਇ߽NG*HUH,-枌ai2ho-$ 4iyH}l Dҟzm ,26e)[Q&qa.e36-pC"cl1D>;E9#GH'l}qmٰ]]ǐN,w?@l곐<ׄV o:Y׮8|^P Nd}8S u0>M{g޻\J\)3@$~p qƧyrV, 7+*ə)De'jL h:Fұ [^N|tZ.DÐWgVy$/Xve۷"/6~&fC4Ru0 :x܉+ű aeEL?V®/do8u`(5'3kikz@Fno -s<gYL=3e1-k*y6 pc98lO/ IJҖ1|x0t(skH*KУ2Rbb Vqwn6e۟{fA|;,jD56ESjr+ ao:&`*}ye\m~N?4n/OҢWs1g_<#=r13ov >sNR)VkM .9b򐋳:,sދ劫.O4G{/!l]1Nb34G26K v16=R}h̊z\o;ȟ;chm c5U)6%J.gm^8+%)P V-%fN=v&knQlK7Mέc|QߡTB¯h؄DutaֱS*c 12{<ǂ9wmR(F,N^ NLCԱuCGΖBKo2v.Զ]Š` +}#luo_|¸Ꜷ <0Hu G,iIѬbKE?];og3YR%|Kj~Z#zy@)y$)]ھ`A(G`t=V7Ȍ VC(87ɵy8RhRoDt @d9:?~b# ʉP]τ1^^^4R3a ;8>@حJl'Y0PWEՄt54x6;}b oQrΰNjrUf賩T# sy?FH[#5?LT`CߵUB2u"!hE5U]@L?mjwޝFAљBG(*G/ITHH8e(9Uy8>%Ӷbtkz{!.E~ \GOVZ>!t $F 4iyEY#Axfnh!wW4G+t1(^9ũ~;;vWYFhIJv8XTT&0`@ .%HMig9A6<0\8-z\iGWjx.6qk"v[uBxK2ExP4a_;@p<0؏/d$OfuKs^ mA9r9.:" [O"pʹ+cre9rx,݀v,;`7i֪!pi?g'7Aa/ FD! ֹ7@3<߯UGa?8q!h/sgT$zew\Y2]+=Ǎݡ]}h,W8"$uX];;I1 G$4ĈUnUnYs6 J=diו[V<.ﺗ*%6s܉bymRdo1f]N|<"p(J=Œ8rj?(풍6vad Ry~HaOsY푯bZ4nWiQLf5&9vDhx CɡO8_ +/I4WnT!IcJG)-aFS}VYqξ,[{uLiitCfNjp1^  hr(J>DDm ,Ȑ0w~Ou}jTW1"WY6 6C Y8 .JD/<WM᧮Z+'h+X2}sth!DZcDK|lk}<g,Rd'\C.l{X:2׆;E Ww@)%wqC%M9F Jh0TVz'M >Q͙?`9 fO,"RCN[D,/4kJywŘyfrׯwrub=f;vP _4g.x40GAʡ%&Ppf+jUJ޺˟QW{ć)S=Qmp}Ꮣ$;CL^iͼ]Eg 'En+CHG HzՕGۉѥH&p`Rq)}EK h6~S^90?Fo}9eIa~h_܁Rc&^3 l sƤH[l;s*2tzƦ݈=~L]Z1-mQ˨3*AH<L иږZZ{nCۖ w46 w5^`N v{"IyB3pI!WYN:JrC3l!YpɎ7;2#M,za5q'( ()̩۔uEag!m36ݑ &\;lϺLg@Kv骈['3rO]206kYts(bmѳ"oZcӭϨ0A/Tw%}c;$z'IߺRUdo' sސOXEZvXxPWE׆89s_:lۣ ϔ"V ?겂O9 ^EU=z݇u#{qY$dv[,sC 8"$}SKsRD~hB]H G507:kv-S~hP-YsH4WSn;[R<;Ly%y4ĒDuLp)aC%'RhrV{Qul_LKsz%#ՋIU-PxtqFЯZX N!^>m)@U8GMm2fbwF&2)A9+ji>)r6 yaD%?dŽ ǧ3ОOH' 'ӵneh[ߏprJlD(<6v@j%Iy?6kH5= ǃn 1ꎵSfz#!drCdߓZb@ Ocy$rJ& } |/N;D~/71,?ؐ#S9 (j#K )d=DwV,t41EFQ,)UZVAN㗹?5Յ, <|6s\^F9fƫ\3/a"OX0$|KB#Ǩ{P!{K +uJ]ol{'?0z ' &*&>sD`xӣBJuQHBP "4W;,ǯvƒDܐ2xO ,oDCz‡qIj_kIC,;0Sqv3>欒&1 S"iVm2QhqOF zj|`8BwڴѨf䥀>^SYㆌo ?^akJ ؊[nnb4X%' n.:2 u۴6yԩ@brp)6=/iXKBIm;>  1'p+13-(s%ѕ'$e%70Ɠp0J*_pXG|{sHIHsN_ @7)Q̔y9?Ӂ ex["Eӭ;}eAĝX`ܐ4$V" (qVtb |!L^a_?"߯S@ ^W`#ڛQr$6:mLFf^r2PYGc͚EBB OW yFck'1 uėq{3/u=s^ޭQ"- ⪐~VvPFyMe\ :֪R8H ҪCs$KPS-eϿlvÿ޶ۧ@Oߜ8֌_v30wcb^Y4}r4fkeLoL&2ߴ_t{@N,OӺ~'fʡ"Ppo\_ZQ4w[6fag䭭 Ē.EuٙupG;g"*3 `*uwvvjg=fTgPbbs\t˒IDp_b8:7 7Fȅݘ8fvu0ۣ$by]AAuWr )gx#:7X1b9v 4 $3PZ6%n-#tFK^ V]\𚔀M F_^a]BWVSvFp¾,i` ;gf6tCjQ8j=~L> fE,%da^!ɦ,3+n} X܃Ah|zԽ5cwM VJ_؀Dңu1iFA nβRI6POMvJQ\<8xŏQMVن:n`:fhf,rL*>;nQv_4kfΫݙ.hrsRJj\bSW2*jj; KwhqG$Cu(Haq#4{=oAaFc |K =dhlnfۿߥU*PX/+}#dhH0r_WчjZYYϐ\w.! C 67'5 !̿S&;/ll#ƾ<]6/peA: \J(77>tBӻ N*Q:\n[P}<ʙ(C>XwLRB!;@#k]=:7{tfP'"DL׋@5է Nfg }q$bìZ|\T/Aq#ym<9(!q8er$ WJ]רߚ Zlɗ&=;:)b@]7$+%i[$` Q |0ы184d dkeFjc&y)2|CU@elg \=e\ϑȍ|M%/m]vY2;|TVۇқ5X墡//k^PVQe984E;e $N%XD4h@J'+p`v^R߯Lc8 ?7h9Z;i X5?%8W^??HiGWJ¹S 6?%ʆ^,Xg+y0I*lܹʠG ;wXc*7+s: J })AIU ]͏W{Ī,~Ǫ|5[0h{U&_֥DsiL@ׅ+}+Z ;a!3:U?[hZ[8;!Ѓ1\㵎4 gYWrJM! },FԈ1l®[3C$F5}$OE=3U).b~pX_';e>2D  (aF6 8OM +6$AA (eʌNOJ^5ץ o`vp غpy~^hrӵ(@b֭pU)hy  ;RR2z0.2%́ ck3HH^ջP|uE0CG rs=ş3SI w;)py$#!ZV v ӉVk8Tnm]ud://pVZN s fK&ymYuӉ3R(:bs/XI\.|21{^ձ4?M諤9$Isw^5<*NB5nL*+&izP'fM,X:k^^{WEs@q/Rh>V >,{>ð#OW9{Ifchykk'bZ 4pHxZT$&/qQs5hF*ou^KE*/^9FHkwqU)C<]sVkՕs߼gawJh4GqH][%,'AiBgwK1gW7 *lȻqk{(G_Df ?4eExu`4.N'òZH,Tw.p$WhEMO,_$r}8 t+p(ߡ}o8/ЀӀaKPibCCbr$.]l*֥>5A%D6Lg0$"*l%-lUx @I^`=/He{S &rJR7c4؊1C y12A:}C2w2+$Qە׌pפoLio*hrhI 8RtVii$!YSV= L_Ý!t1|P5rwrя؆9bu@:р$8B|;( b(RrXE*b HU 2V$p5BlqR}B5xluLyiv}6)Y4;trDb},IͯQCWӅ ,\?2ߌ o?0% ,ay:w5xd9Iϛ:qU!ʑSeIMZD<%n8pPE#N+u7_ cQ=:6[kYB$r5efU9bpn6=|DY=y 2ؑ  _U*j[y^A)@Kn:ekݸ5W|Z(B1Z*ŰSD%!one{zn$pb HȋGϜhB1q8Awx6QnjxQ2[ӵJ31L #vFD!Ԇ<ݢdb?ٸ>Bcup4J&W|'o^fU%G]Y5;8ɈR_i-R"V`Ԓz{Bb~C4)?B4yYx*imL\/Mڸޓ),s-Aald&m_q/ J`pCИjv-cذ~("C̏Y[!N>BٺL}+0(m7BRg^,&DB媳g'{gʗB=J*$$ҫKC5z` I꧹ѯ-mX-Rfs9Zmݛ?gְ'poBAFa "d,ǤV $'gKdJz^%ل/zAQjfYs.0O4x^9)Gur[dl!V=v:F;DxfGܹ=aWu`80ō.xTgJgTF -tdBkZ]KE“@U`H>Qs|+bMR,0t11?xqlG+oKw5AS "@L Ѳ<,ĤĻ56A"$wB:[4QʴO/&iq 6kgΪOI :K @SUD6k˝m?Y|rIE]oM1iQ*QL:]ٕB7{*[˿Ul 8fs0f152 VDv6^)0봧cF,FcP/Ju!{c )kw3n*H!nm$ç;ջoH-K| F*+2']~+bjJL Yߤ A)j16DŽyC1Y뇊ɕrA5 :xTNQ{5\G?˚-iN `fmKΏ,*ՏKR晈^b:]0IBC eEӤDvu{ ,+]w܎a&(#f(rJOT:؄ HfTA[F}UFT!yB$K(uŕN3/]yvzZx kAD}}nĦ?'G؝s[2h]kmdW덓pnCgI$#퍒w-ge1"O[ '8;iH\QSf˫MCSیɉ\!em$*$ѽI :iӦ .?m/am>'Fa|QIj/<jz4By{&0\p]`_ ieLj(}Ğlv=\&?֧m B;eS9I[5籹@^Ou1ww6{ HdGn*ι4`|/9F?nu"ȕ]׌ư#/|LN չJmpbfORiY(8R4z6VuH2ڪ_)2f&aӋ|Zšpgr>Ws;+tot5VE%PspFfRզQfɛ2LVh/{]opt@"Gr*1i\4lM;볜?Yo֖&{f:VO;{)~Bͩ&ܷ>[),&#6k+,C ..#wEbJfv +:͉8p8n5l3o"l*^4$q%Em;GViaƔ,8./-@xyTIVObK*LMkM6sDBTQEb(Rُ*V E .ݴ ˠ•!]hkvbGUDCT$ *B v'oO%q:Gт4L&X4DydbgU_o&ٕ-1tJ 􊸏V | tS_yJ@|G[ >BNie=kK8aZP︃^4Wo=ax.IT#"MXh bU2 Í@åJ>cj,(=k-aK&y2m5y)R&<4L:4N:o͋w_qAƼg2a;1jJuz2?6s^sxc'ex۬gs$q-IZa\_,TNv^$= _U9:o; L <:+KLؘH9nwBmu; N >rۗ)Pe38qh_dv_Mg\$c5w}9(x[[pE 39&m!UaB:8ʗg" (ʙR0^˛z %_80Hޗ!Ɍ1 e笧m5l{ oSknH:NHCQuqS'\1Iz }AEI%%h2^,uW+ZZdASR-imp.gJ&#MtaP\z5`{}ϋ E0­/φx(RRx4<=O&o.[-5V?3 >Q݅>z c1@z&^foWF'DEʴj{h圍~ l;V!`БM|`e[+h_[Gzskwb/ 1 19KJCOcKJKHGJtS#L]ey g"ݯ( tYzM205XZʇ:) c{LN" ~SMޖo9)Re-Pb{m}|qkcYH[wzl,j @۲%5^ʫ\ՊS5#Ukխ'NWC]LF: )+Yy`Z}.M43Fe{bN/P.!-hP"KázO@lRfC'55%2;Z3hߝS]4r HJ.f̽" ha$2GPCVr4%! iݛwD#cdTt{0ߞ91}^Xtc!,. %OZ梟n^=#,w newE"w ts~4 omǫjcUa޴?0vH+4"*yZ7G1i<@ BB #6X;Z15oGh0T;h I? ǁ\-jM53o屏4LVߕnL<$7&@lDTi? Q=طl{Vk/b taȗ%k`tLn7_=p/ +q@[A&_˄X55wq^ (E@:9 ݘkbJP≻^ԇ>9]ɗeG6^. ] ONIϘ;1/d@_D2俈uYYgӅ][@q؟yaN`3=ms$V!;x,ɅVUy7 #JmBt:%%z4`8iO'(~|5Zur'?^T(!/Ǎ~\_FsVOi3sYYӥuy: P~/d<-Ŵ0Gjxz`r% H ފ~hڊf≨fg @ya#% )b ;+ǐ%9r&|;]k~L}wuԐA)*hP3khKuzdj[vfYVҚe3zim@b$^:Ͻgd[7&#j4'#zoz -_K+7ZIY儔?Kؠr=zVNTR/d _$3'D[&)8tl%FIHZl57Rvq+it9B8'ăSstZpE`ZMu"a_ODc~NhѢT1} :2Yz[n+]1#Jo.}ىF@S[Efͮ":9o̮Ä9,Jxt?dI Cpwkmr8YƍK X/}y&O>Kz+=LYd[r6~+)Pzܠ9o}!TL?p(=iy!n H "]+{ءz%m-֜يsD6!9@Tܭϊ|()V f azw1Ph2.c+N|]:om_&Srꙣt A,.y36(Գg<08J(lK( Jr ᪼Q,S;;YďHٕ8Xc" ?l봙tal 91n@ܞbC})?*.2BnYGfi ˡJŝބ~w9ii =c A]aRb)nkBJH8L*2NTbt7])uGwLu;Gdn$Q5)6BJvQWNs ւ}ݾ\w6H zܝ K (IƉZԀ_}B=|=!Z̥=_Ej-;f΍4|o hʏOm6LL,|ryǡ}3MvSG녔3Q?&B䢻F$g -_kZL%̐h*v]8|(* .syf2m>.UެdiM/J$5>D%P / +IyTC\ jiS}rE%80޾2E+nt ۼ+reϜՃ*@#I b{N䣩^~w#)TgBzγc8,?!Hبqy}檭8rQt3^:1kmZs mT+"H~vXֈ@VL2KpD0To >qV]QB1:0l~)f%SGh's[Ǵegox1x֊%px Rmj:U^42g lrUiSߘQN )7[_jtdᙑ$C.=4_f̡nIci>gRtYr$օn `Mr2"Kv-QeT d.{K"*фLϛmAz`\-"T!;G h) A)ţ<6RRcJӷ{/?L'#ʏ6H.r\֮p*Pw!Bh8_K>\_@"ްLj$iz `2~0@l@>A\Q9A6O1,^'G4^yFnؑ<$B^=jL*hؾHҤPA0+@RU9h0OGu%X|ȁ7Xm' 3&Qr( We@.39BTYkamT҆9wȾm5ܜ >-P:AY:O}}.WOYR*ICQ{{6Jtc nAg,8F6SnY´]|Zct{X/yVM:<* ,m(`t@NQǡ24ٽ̷`˶1(Ϟ~Oi?=d4gGf#<\?y>9LOC Mg[fT\:/wZ]1#&qSzJ3WnCݛ-qspS]FW Y+RFY jSB.$swfͰGh;EωV}kb/0KeJ$kfߡ\P80(l "q0k>|E=00U9^#Z瀡 FQjLKT61*_x{-ҷӈBu(E=1zp>x|OnEWoZzpEWY`[_UF5T$?%ۃtnJ-n?+ʉ? )KӷVY5DP޵RG=+8ho-y9TkeT)KuKkwMq1zMN> zS7x֒\QT#FБ ;>.&S7xN|_ĭn$`T*ǯVy %$L p]m܊>cǀuhohjY:;_?,ݚZJ wU˜|aئ XZW'Wߐ:wgzΝ5.QLkewOhEЁXx{Q.4χY5d64_E v]Rgdž>|XTC/kY0O6 :l5?y6q!f@?gN{ _Ӏw\׭hg lb̢ ySkamjd`BuO;Q!nA^Ǣt= 9.h0@6E$y;v\#>c6YצZ::h2s}A$0vD[xia/4d*GTY{ld%ƨJ]q.ETtAVնmMhcKl1FxH1^2pT@k\c6.>;P%麀!"D$!4wdR90UKKyQо%c2IKxber Ez4OU3qx՘B=P> 2~*'06HD  WG\/z#* ;u gRe=#H+x D@E}FQg!pC}K!'2UA`udۊu8,_ I3s[К!VXNl̴rۺk?C'Βy r3ϔ?ĈR0nE'@'rˑ#mxBʆW ک6OT-C3gV,r[52Ƹロ26^,Ij*8c?&L@9Qm Ap:]!ew a*p8Mۭ15lgƐӅ_P<*`fѧs2Kʺf~ |4X+$1炂icemi88?C_q')y<UT?0ppz@Lm֒G0O2ǬA#^xy$"e뒼xicy'qlVx~l#Qnq>?p! GO*\J|$`~Ɔ U̽b &ɪAn43M85MR\@Jm”K𸱈y%Qݬ~rN@8G^Z!W N)QAaٟhqiwc9HSlb${Q}B `/~u{.H՗8}RELә)7ܯk %B^Gjq 7Le 79j0 F%Ҫ՚g68J+V`m7GkJBlcUzSٙ/ƈ+$Sbj"ַzUxFLwqvANzw$ }n<[0am4Yٶ}(PAgl?rV>;M-Cǖ-HTb3܄13=#5?RT ?>% fu"9]wuХAñ2b`:o)ȍpOc/#$*mrg<7$q;IHV)x=!i;TM0+I |.}_49(3јzF7+sbMFܝAw"g)[=&hZv]=4dF6Ϟ)ϭ.ШOaqźKmؖ$@5Kt >E"Bo̹UOϝȦ:Uuyo8|Hs|u  5E&]LAԎi>Yl?Zm (א=)Eܳ+-&:8-&C.UŅ_K2:^NNc-BRedEAF ^:'v:S>w&dj&鹏8 Ew8j98}NO bݻ P7䯎94O}) X<*Os\̥áڄ>VTsltgIkƘ! nKj噅q~7S۳UU Q*򑰁GSX ߺG>$,`t.]5f4zz-` ކj͟܈pF9%bڦs[\|)a ΂i61ems(ӷ1l>:n/y~ nq˙\m=2ʺ<3$ gRCeGڏj`o"3xh[ (dv:H Liv#ďRMfF,gA|sCŸ&)1k 7V:O>bk vMz~(&.Z[8-Mٷ`PT>2&@Ԡ'_(,Nک9q31l!YlICiC;.QG;DVwʺOq"kKial=6ěEN3fpN, 4T}MFCْS R_˛P v ]Z9,?[L=vD oqlo!yx<up%uE>2^CoC>vֿ|J | Qk2 ԀE*Ѭ\r"t&p[1g 5bZ)"p*IHUņn˯?dZ|[&Pq;Ԗ6H [7cJ@2<5EUPjKh )ϾcT@̯Œ:MtE) -H㰄ʾbN蹣".:ez|Y͸tT|䗨^MHR jĈIaצ(VGF1$0&wk߼JQ{=[)&NѴ`T_f?1`(TTa?m;576<{lye&fD=H2H+Ki5 McaH<0O+bm=fp!(~V+sژxBZK+ bWPZwm4jdSgGw9/(7=yzE0`PA?tDgؗ1?qԫTbd2gx0kk?A Ǹ-l03 hҒ'ʞ0)|A^Aֻu6"FoaPx\ Č2v|erBrZA &{5rkA6 6*O}Gd1UјN <ڐYa@N[([_8'&{= 4>p,z-iH6#$+0É/NJua&UezԐP@!d3c\]R /yF*YANu)!*6 \84BO_4<|s=QKBdA'l3y2Fs:GaʙC6 /gF8XV,n]@3d$V}E'LIةUbB##4 F;7l Ld(rS1R޹Y94\YV/ "Aeko 3֙Y0;7y@PV6ʺJ(uu"yJYp:uƊoh#TP+K" n)?D@_Behd:-/z*ݩL-bCa~aCBh|>5.Maaރׇ >"Jm >A-^X:\SldRY}]߳i*z q14$X*`v nHK$[):d(]$"xrrC 㟻G] nFv6b_vkEVreYp-ihJ@ |*`t6~ݿt:Y|`~ʪ?A |:~GDuAOenY{_D^85dPA.p'`Ȁ@ܑ\7{ : 8=zo|%Bv}xm}{읶Y<`$n||=Cs.U1yqw`}ku ڽAs;S\eS&R)|GHy(!sRŤ>;vKpԂr2^NRsE˭VO~'\dA6=k6=Aƣ~wZ`aǯ罰#͏ZS79Jgw:u@q݆{om3nHWH- m2eR4wx2ҋ>,-9D \$] ,xp {v +fssxbe0z4.v^7u`8Gڬ%| =ە&[*WnO~w؍塯*G )"+/vU\=r^ ET|R9KɈhLlH߫WOLanDZBΧ?G0G(:'ZQ "vBŷlDb|f=~ y.Hi o#l*PR6yH8fzg.1MK2&iC"f/u%Qzgkdknd`A}\pNH]DD-[2I*\r#B/J-kjJgCyЗkaopu*.bְjgm<:eJݡ'Fd7gN |9f,u Bfp0,+A!OKKzs )|x<[ s+ݜ1>IZ'&x޿6N!:;CZӏoxܞ橤K&J-G?WOEYq/#ܮdq1vʉ[ sН?"+_&K*-J_վGGlG4zTp-MFIeRMX<XBcMIzoEDb6`eu|ݛ hwӡ.Dmi7+:/~EM,V9 H qsd~@\vp/j8+*+K[  ~tߦ{vCkg:& #$12x4QJhQ~Ky?SBb`q%cp4 Ξw޼~wHDj UrPQ)Tݚ}L7u3:=Wlh%'; h; ~k- g M.rYaO&dӎxŲ[M9i1HQA1`/V#/dl% ĐA>h#պ5i&?= N@yBZygUm0,;K9AU:^R lv_Uhii0Yt j`s#Ajh9}L3z7?؆ ⪄Dsrd$ Ő(X%1~`U8y|Lu;e+%iaeXH{ k' -2h3[5b=Yw>Zvۙ\q[)m ֡~J˞j09h-H_ W1M F2{B IKxfSXj)H538}hcs[(hx:i\֚qqGVdNb!sA$)Ӵo&C|^Hu)^6QW*qKƒpܬ a%0jS;5׼N2^#Vj/SVp*8=;Gr bmcm7ea*MT aʝ! 8^2ݣ\:Xh&xm?Ή;%P5 }p{p7٦ ph8sn own|O$-rf:og+;7SdI4:we "MHLrNd(P |_=N'* IZ Wԡehn(9qE~zEmCaϺi[_nL[4߁ÎU~_l-' J=0}KC8P _; {U}R?,u.&VXt11v}OD[ImTĚx̿drnkύ%>`>Jʅ/H b7AXK8+;to.K9XgoH>r]L]-'hɦjJ㣳'J&1 fiOM~$w]F!7'ؑID}tSId n܆gy@N#gW ȭ8G+27W#rue ˮLui31HXLelo,Mm"w*?sM İǃTkRk)HgIdU±ۊd&BHasbr =L9>ij94wKP5~m/Oіs< w"}J+n %T.`yuI֩GPgEN)Mm'6/“OUSFM>4!֒>Jn| spgOl;ZdP y81<֌;뷼1S=3XS̝q XOMLSU5γLxCpY1b14g-E2 kn偖P ^IK!g ܎GeIq7V1"-{ GNFhYǍ4ԩ.<. L6c]fPXY By\1z៌gmΎ _xY[gE7L;,@J :gbXkDӡ6- '.u4 YȅY+l-Qa?P_5[h]檒v|+];A )&֫ڕ\F_l@n* e\s4AV^Nj/r>bN0mN ВĒG}?bj'ͼEX# Wh7Ԍ⻑q\,7}i.5W;t|`V71}h!UŃU^9vl~2]{a늚"OPVH_2 9G[<*]9#\Et>O>h5CHmv?װ9mGQ~1נ H/h p\45M^G&;TsqWRExya;`zUT4#fy'l"Ϧ8TF`bF R 4z@ 5G.e}e7헭[~jS+)A֗qzy5,y'Ϳ*Q9`tW8}gUR~e7a 5'm80=Xt}Yhjo(g-SqY csLo]1=EҒ"ۿaÕs=Ҟ:b.*?^?QL)9\;ꍕ1im Z5FKl" rSO&lip)y‡i[CLirˈw;,7_hs)}eIUnoc`Sat( \J7Q̙Ey2 ,930/xg*ޥBXz={4$-lōՂtPwL_/ jd\%CQ?#Ɯ>2i4'|+v+pkGr7f z`z^ rkC<__*G$FK2{eR&ƥ34/k2pG[h#Sz9%v01} 9^~NJ7v^ϿgHy_sΏkn1;OY.bЬ|.)mکkәuXBMi b\39N]!}Rw,)u~K=&i\!8MrNt⸿Ub)|oiZ-Pt[zH#+r| A4,>M̀ryn+Y5[l)]bR)h6$'Ni(gas @" ̴61 ?[ՅVEՙej8\qlx2lx?<@/LO#Z?RB{zemʁsWn m>LapndCYøY6Щl|H,Hr~(s@ЗK=?kHK0BK Eak# SLױsHYLRw9,AC1 F|T?. b,mLMta-~h%^f[r5Ϻ+&l ̸YZ.mvέFZ^P}3ZPGw 2"uȚ M&Ru2+ag"E/}dh:$.^g.ŁMj p/Xf8P>KasV&G&=B3R!ICJN\W eu7z晟[ ðZ YyUPcCUm*Bl@*?<=cA _8aYLHQt5[5u.k)E68KZ7+ ?}Epsh/.فުm`i+5@ Ku:6hw)R:8;KaQ7[t;Pr q-dZ'+#%md WȁV˜o{(n X6|DztX!n4e`r`\48-RO8:a3w"p#*vty32A7v^&mkgtN\_fkJ4H*R4Z?zsct3i01rƩ2^ Xvvc/Wnjfʮ7123ْHH*[b?Ⱥ0u/gfO(Ɍ8')F'3S4>X3(u\ަ4.!7_͝o bD#Dثq`w?׉[ꈡ: h@Q(bsحj%pٖ}e0Xdl.cy,#'I6Pp$x.~8Ņ`˪% ;ucرk9<-J[&PQ< s8hhlGa:{3rCFBH`%|fxhG.)J48=KQ(,- HV",, Vy%=ǜDˆXk !o{8i*z3T _$)f< _>8sR%uNZEmMZz۳!}..bLe/ ,eUNÀֽ2H&% >V4F/sD.=O+\wZ;m3[j؀| z0?`%y<-ps<OӘ*l[ lpVN nh3>+J,Uk*᢬*Q@915!IlISjD*~=\ W ]i2G_;O|rS°U-X)xHCo+P3!\2+;dnfӰqq>'&rqqEnдR|'[9ȺT)͔+ 93!z< ` ,PULc s&dr? Y'MJQ$\|YOmF%lvrSeM 0y[^m}< v;ƭeֱ_|sPș7 k!TV: ="H5.{u\`X}!aGߔA0'e^BLδvl*nWB!ӱ3yP|::gzorpRQIk8]=[@Ն7B;gAs3+`GJ\}sHzL+yr-ARat=:6ZCd{ FڷW,Qϰ&4vQ ֕ KcNe(;hNŧ󆨏$/1&)oҨ\i'J ڟU0 #C{?_ήG=n=N|@Q=Dnb#K 5ϻY ~nԏ}BX6c?Tk3L1^IUIn@c\\@k3c`xSb%:$=XNGagqu&E"smz38-BN5AR3>qrh{HEaK i4IVPrm{ _FT W$},xEDd&fpXdavX1D+O|:'e7珍#-_&wRJ[YT"x2Z U >J뜳> ndç^I7i{rմTs6X:U˾飾M'Z ~%7$ETo&..|dq՟? qsnزmZ r2&*K`k$V]ZH\qc kg/Y>ǮsjtēkRu/Lcn:7c!K%Wlr[|8s1b$Vӂ.h5I`L #1uu,&n)[L$8/!;TMSk%R0`Rn:r]" Xu,F蒠9 h_3F“_ewIdl ?5 h*ڴHjG5REGPdf~ǵS %v͆ (NrF{$+GRVR;}gim u -ah퉑è;G39[X⨯V(~,BUXY½a6|`9aS#TGV< Νᎈ6^0(0ZqZ7~y"j~4 ^YD)$>#ms> 4*f Y.gje%,=7>GM g1>luP9>qb ĩfuٓ)\mUgхxu3Y [h׮"sX,nd~$?@e ƕ r㨧t%8j(<0ʸyY[TFÈVJ yvįI^ pa6QE(2])6_Kj'[s▤l÷|ZToɦS'cHAK27)40vde{ Ɏ(MvJo!a{گ؃ ?apL6aUt`V4(iI!A' c­G8P fUyIvSӹX8+@jAҿ/hɦ #]> &R1bAsqp t&EABSR9cx|nm7D{49'U螂AϬV9BBmfLdc进d l tKBd"Def,_<0Zxk7ydS:>` xA+>*Fnā{V\e J{PJ&-=4hsh&S`fɘ> |(byTH\A4U>߮" JhTfB(lK IvG(䇠[X#&ة6J,5ς7St>Zpv- ^EOV]ET/A_q%,dv0%J 7S6$1S/Ih>bz\1TN[=|eI7jhЊLR1%ƽtj`]nqb]۷"*]*fxԢED(rZ̜i22hL6nJв0s',(> %U즊}v}Ϭ+˯ 54bycX}xv4|$Q<2C2!CcN:D|uOdǑ TsM:3]M/AWW\ȅ!iIv!4~#6  58!Pș2[/K -j2ЋnhyFywD]O 1t&4%:zTY?RU!>3mQa%tӻeQFN ݺ4}klHcuݿ_[XS:`aMe*,(Dm¹3REzs8`h4P S@k`DN,I:A֊?hʌ[断ێ,-ǷR  Y[ ċw-U*6()[_eye!A/r/ͱHCسJ^a-\\)JH:2z#7oգtem_Ɉ Y=Vk*p5^6'K7m* ɼ(k3nnK˳Z€D3&r˜>tM')xh#[F]])*࿄C!P>=B g0ܨ, 1Io#A\_Dvp;|&#՞dn!nѱs?Fj„é͡ԗ-% 6Ilp 2BYȽ~ K8[^yr7-#t>9 l-BEICVm2nG|L=~,BŞ@~eOI^hv`#Y88 `<"G|>?Ҙb\}}iI't %#K2sÜՇ'SH< ifH|Y3޼6 | 3*5zͨgC_OvlW/DWTߊ'C>\W@9eizOZ@FQ(ű"_c[裝>+z/ڕs혊eqfv$GhDny c*1al sV%x@UV(gB "*WT`ʲCE䳗!г~W Ђ*٘lsBݦ$N\JbU ʬXZCط{3f ~jYvYBHyU]Y/R-@Kћo_Kw`}PϘ+e7y$HOʇ|@Z7NwR +G qؼeȖ/:YJ7u=R|Bus|HW\jpY?*4nYut%5h L\XF.8e dȕ]&E²k5U߫5cUʷ0$]>wIF6e4KŚAHTqZ%(1[1IZHsh0,#ˆ3T!&#ļx$onf+1:?zp/@Ld'qKL&+=&5:c ݔ]0''~@UE.)wAFJx!FO3"dزOcO-Oqab0\#Du&KW+^dы1·-oĕ_$Je XәEȁ28DHZz[!?"Sz~Q(1prH I>bF3s6[7bWFu\Hp54cC@>eX;ۮ2ga42˃wh'Z~\.^I $!1$l fm4'K8Q:/J.DfhF n.kLGx.pl/^hRlPwG1AF}O +qmfx= WO} *fXY˝ ^˅ADQ1颲sP|n(0Bq"g>B|Sh$SR{% ,(-fN}@@ |)2i,G gHo='\b#)dQB+utpv#O1,Q}+Oej ΞO]N5cp"w] gWZR1$[ܶmsZSqa5G\c;eh3!vge @tgvo]N%\!qKp*֭] &;W=@z|$OL R̮N(ZbTx;fMpr3 ~= `BQZاfVC<0kOq0,SmBE*[WfH#{ecP ՅsvÏ̚ u-NޭVȔ_jBa ۚ4ܞgqRI*M6A ln8stre$ە!eguܖ29 bLI-G` 2E < tQ*sVVOG o 多&gP{9~C$Y$CU FF?6bq> 濪}RD!PQlX#<+Iˍ+$Ԧ"+rf~ɗ/[I+kM/6C^hnvc`@ !hi=vy\ _"U.ơ.<gL1U.|8O.\sqE0 H;>RI[= HT'5~Jo/?{OQ@Bp0&Jʍ׽LW~ӔM+m(%k-=Ŷ cKcC/IًO, 2n1愶|Mh7uxe! q dUyQ+KX7+ɦ UR&QWp% a"ב\ Ec"zy%eqdmـs3W.fXð$ IP! rc"ɡ[q]v ĭ#?`'MmoV7\M|4Pߏ3K/? {W[U0{kAUO:MwK{a4 bnEL1Ѝ_j$+`=CFow./m~ ,YL5^C܎ʤhLи28z|4ĸfcC6Ou۔7(,V*e@taҬ+|$"Kf#ּ@Fp6;."NoϏj9H>ADAnD \)a$5GN%no:ħ/#Ɖ_};#ƁeCl#wHݬ7f(uw"_mΖek?JJ-$}a!*u}.IAq9x排0JIL":Zybϭ[|E]~iw@ÿĩp {Z ݐZ h}$ ئ0Tm2 *mYlck_j$_oҧŹft=/5 I$AΪN:֫ENZo3L=Ч<]ʳKll9j' i(w=YreC"vXF,*™^r>ExrߒRb4LQ:`xOlZ4~S)&_yon.b˳ TAkRzj'9z/Oi:)[=gɈc'H_O#UCzz5ު`nO_z΍]̼u- 'B7OF`էj ,/ϡMџ^r?B"a l^Sړ2!@'h_'rTj?g$ Je?K9m&+5>CeU=0N=Ey/%m~E([U,5* 91cZ.Suk4P\Xz R@VPp f{Zʈ4Z=bG>~}s5 X.%o钎qڄ@w(^I8GZ46tuJ狼RK酁}Ncq_wz!xK3@eo1fGNSny&]^0H8aoecBx9o_? Qq<]S#A6qce^\9D7C-?hiie &(;'_FMjQ ?Q42%0+^N]s78bA3|_o/ 3%;`FMxEJ9Hj`bYvWòFQй@&ѫyfkUT С[q͂{ߐ"Qpɸ;)X pԩD'јdǖeJK6R4n+L oѮoۈ}Q2h x^@eRE|_.Wdn/ RHQD*+|mힺy#LX2;(isy9\}*dg%P۲12 +&:7m: k)sdB z?ӄj_ynڬh$v POep )mc 2R.iWK_9] ^UqV +KlH + f%qqQ#Ka{vXas+,~]S_&.bYk,R:j`nEJ7gKG}a)1i6/wOD#D+pg J.jvWRV R0EPs|X/Q*Ce"I9aWwqB^%BȱU:0)aJ\"ՙ!nE`??g{ B iDv f-7.|XabIY?QU*ᎽK@":Ԋ% 2~ 4dXc btV%jKn Bx&J Ϊ;ayfv]_pJ /|Q#DέV8Q[ 6|XQoTi,JyH w-IG.ZhcSւc n GsPgC2]N^d7aeة|3soyqLN3 =gFjD.bՔS_&_r2F{IMϕ}\9?H`:B4۳^_-ї^RxCocNmoeU5bATL{&p`:†\ %导Pv?5p""ԱxğTjӂ]'MIQmJUt0>Xw/,;,a[Nl5N}T3jf:&Lmh [Ȫ=/ʕ~_?ոb.!I)̠W2'1;e.$)AL=8iNG6%T]?N15:I&uxQY߅3KhTa*I% ZNl=Ϻ!sTǶ';Kr۞TI66T\`奌)'gĊϽM+'H W thj;{ jϹrLhbg3d1$bG4lU֧9.pH~KŔ\| ~$Єc(r^KޮӳF=Hc&sV E>5=3$8R\zhttP7x5E$o8z{nh# /zW LN7D4q;cG%r]UJg,?* 2 )#7 &3-ٺ Qjwܙ:t8e厭+p=[TyeA^ple YoJbOGltZBBI4q5 ofjҖ7SV!G+ 7 &tmuUDf&CҎRkovI 33_@({锞0W¾?Ȓh~075EHzUNCwKasy%f/ 5:ͮwɔ|?׽b4"yAk, }[fNé`S6~ ^uGcYxytkV_^AJe1Ux2 |2l& &M=2W!\ 5Gd'* *Cv |ya 8ivl?~hh}*`y2{D<tj OzAD1$YkBsZ5ٴ?Mtd+Wd$S[Kz<ڒݗ#tt$vJ@^=^p'.zn F<8 o .*0LhrS ܊IJ}ƳҦһ0}25W!Z[geEuŇx>Szt;gi#(?^y"]RANPd/Or݌Vܴ9f O""/' CėG&HG7P: 6补fG,A:jR0A@GeE|k˃M/Vs[ZE-Nm[tNJb莂aaouʪscg(&O<ʪXe*4s[f#mVwOVtʹY}gG& ܼ+,` *@ ziP}l̻ĻT=3Z9j -t3Jj e3\6ن! Pk/=CnmΡޥCH=z;1."lRj-q3|#e,XAh`By;|mݤjGPꠀ[2үCC!^n}KR4‘/ć~i謒['=nd`w+otz/&f\&C4E+xz&Eq8KEf.?>ç*>Y!MH f.BXx]KkZJ޹L.$}qdϽ5~3Ln?WͰg!e{zx0]'ƖNe=kU@WڛMφ-`$p&L3p$E-=F%AO0?lb9Ys;c Y睧 G&JGkI{j2#{bA!f {QuJ~ĩ@Z '%‘4RvKH;ٛZwzLQ3 -_E](}b^lȃ 1}ĺ1d8"eD\X#̩:B驧},ֻJesNd1Giv.r'jPa|5@:*V?E`[p <;lǫ?ɗeco=%M.!D=US8xp`]tь͢N`h rWσQTBZ1|>-TC3"$F=5С; [Vp fh7LJ<9D'{H!wL R&l)%AaSWp8Hp\Gό_o;y@ywrCjq%In p&N YdߑDhC'L6=6iqX?!I"oXꨴd%.{ݙ"K|]yf;@=ά4jŲg4n?f{8^$9Luj琾dնCty{^#/*@vY'/nH4Sspͥs#Z/k~*d(&Y<:T^&mƨH]ώ7[A}ps0g2a1[/5|9@VvZݭ#nƸ, mq#n,. Z0Pw7 I* b'{$DtkLh78@-ݔlo>r*ւf5ڶ0K00O]=k$k)e̙ X%bGM Ι}lb7I\eX=JWvx:@T#2zX:z6@k]IW(߸jkVewC? 4%}/{*J-̜[4`?>3J6h{OP:X$ ¤#71ؓ,RƼ2_+Tг>Zءw!i~uςUS3$g7 Ƽ܇tƑٽ۔=3$X\ /ZFk΢ Ʌk)sf޺׳N˲îuha!i ;a 30,a}5Kz@BDtfrR3N"^^^HIЦǝAvKC Y dKgDHܷT/.Qn??/#M2yj C \oe9ܨ "7]Uӟ aIM1:ayQ]QGn4* jB=<)Jv_ dz+3D\yX-E#`97 f JcGpq] UR( ՗0\Zl ͛~;TbWS&:~S5*ˡg1aCEX=Ɵſf|k9fhjO~xjµE1,r#F-T+K,\?=ѽiI(u5, l jـ񩶐=FOjQ-В)Rb4NPuJ %p⧳Fե+J.qzMt E1:[^c :t@i{\=e3oeN=Ћ}@P^[zgM_[M[qN%bAwd }>ě~6#9N?8!<3]}mKHi|s'րGo 8틆q8<=ϲs]2 yfBE"Y(-+J$(JL~ MaÖǢc.w='?}X¾PK :yt" @}ySΩhzzw`J,n櫊ؔJo뒛ٳq+ک] b'783l*1bQ$,{dO0 N2n9Ao(vȏNsJ0/n "PN-nU .O9$Nx aSѸY9A{P=pP_Q?ԶrQ/cFkQAјV;-QjM"#4&h.&NÚcoBq 4< d`||w}!qcqpv!| 𓷑|XHcU#z)Yńftde3c@z\K*RJ:2ZN~g; GKx ]7XW^0.Fnx^$ևTf=\*5`e`1`roW-ϯ+j'ap!vǂ G=Î@gk];\Uho'IGT o'I{܈Cb\(#e#cwaB(f2; :?\OgqyVǤUۏ>k*ҁ=wz X[ ٧J^5)b)*N*iK/x]Â,Ws&닗5l2Ȭn ,`*HxH]sy@çպ!uWN[T} {/ v>n=qPq=G<>yZ!/]Qpkeͧ~Lmgg^Τ:ᶏ5R 7`3j OGA?le(b3΀Rdv:.A l5؅3#gKJZҳ<<< 4dis$E~?/_@P]9O Ix_/lC,fjL)ЩN+s>1="̏/kqħxRbRyv('ĭ;.\erB R\oڑZ΄G_Ds_y3!>z$rJsmD+81>m&,:-O ]0փo^~| 7Xu6~8 ݌a&yt_i;5ȀLeӬ^"?Z]g]~[fBlgO=N9y)zfY vDσO ڏ +MtĴAp(-PzO 0~&aON2b?Ѕ2E!I.߄9FMc~e;eavMjEyh=8x{Gރ]k z{IݪB. `1f7%}S4THv_q*gY\-XLMtUUm}rc::`%vqc m=e2g3Khذ]YJm".!ӈt.)|qc/Q6do"i {p[*Ptk9~XwcjjM_MG'}C'ڴ!e&əQژiGv#Y%qpFK Gv\,&;t rXکmxl; Z春:ZqMkBgoPcp]d) 6ʺ+CfL TF;֒)V\fPѭ#/!Rx.W?XXtם6 @x@]4}|SJ4Xpm,#YKk~ /lp#d@OG[wya%kgG ;~ N;W~I 'wd$kys[we2`dK.$Pn! t@2g(pɹP<,]YYMoFR~D;ID@4} dHeSMLӯz~_MbT6$'6a!Q_Qӽuz[|+Ǧch)Dх؆nKhā*%S:W_F~wI졯P&qO~U☦43@(Vy̨_@8\RTaBEZX N_1$@˗ͅ5kU:u"#MX;6pd֍(57B ? Ш)n/e@~@Kp{$5̩^ס M60̿0˿p^ZD> &zJ}VP˺djx܁$x|@O>YSVy[a ]6aK`I%Py.:\?\ '^%]䈢ͯ;$@ ^D<9G`f/w;;{>b+{ VPo& _4(t7s$Œ pK_gWDg +ƽ~l.I=|Qu^ "& Y~:>KuLUþ`Jw$oʣ&duβNl'K?Q_o)=u֯Z?~_Y<<4|&#={(EEDjp~NC$i]ws2 w*}MfyŤ Zxk{oȕvr9^z×ti tE1RxT1G0S 9RC+]67e IlvGvx)=e>|-Zg`lY@Ьm{C![gr ׸s-\S@"ʑT zf2)=s6)`MB-R{poJ}S<'jRC !וkq#6tjo$U 5Ր 2QHY*z`oZ a`2|wz~oBxнs94^^;6>"c7L6 Vj3TX\ㇿQ@<ð[8|]79*\)T=53FzHM i'S!|} mAVWus~H ;杰LoCkXh1#NpQ[z/m:r7 ΅xd;{Y5՟XJF15-DzޘЊ-}KOtM\)z(Y5.ҧg|w.%t $ >vDĈǘzCKDP!y2&.qǯIꛤz(^vdv+\Y=xM SXU9sۈD5lA}X-Œ\o.:"d?raWD >ʫpЉGo,0~|g/dDIy'{G' \2`</&vC;"?Hu\OBET6=4s;|J84lp7IÃ]qc?] +*F a$ʿdDݸۮਸ5 X)inRHe 8aض۫Hi:~/^n qpo)Y-NP񨉣șTp ow|9 š ۦO?;2JC%c{*I*\9:c7ɇPHYlRu6´|s)?I۵^TfϪJ$& u?.ڹ踐a`kRu҈`3{’L] u#]fiZ?8ZX"0&nѝ,(@URB·jܡP'*oǭ2dhuo9 ^0G`=U`? X2=4r$eR:][gie;M|ۑ҃؈͒ba!˟8wC/9U* ŏ2q# ^.;tW>|ᷢܔآl&L:3Υuɕro߄cke~X9̈toSލ {c0it ,F*[-KAOjH&+:s,HV)LnAN}6XUhThH&Q\cwR>k$f1gJm<=ϰ!hejҠK9P!~Stڪ ż1q\޻ \؎7My~_y50Kjk5:ۊő`镂ZDMEcH9|hG304`tRs_Rn 8C|jX|@T~M ;~/SٸRt*HO4|2YSڍp(=O R9fDJ 1$ᜏziYz]uoPL/]{\ܒzN;A|` 5$h\;u"s`LArpu%">fi'UK4FYS#՜@$PPI+O_pͶ fDgN+{) ҂Jxf 8g" Y{?Ǘju\b+>bX>s#ľd5O)4؂[,V|rQyRܞVr w41`Lix&fTEvIf8^gP36[Py?{-(dۭXa@|ФYotʆ3 !L.`!/:\>Љ CT*.ޱ-*q"`́FL?\gdC5`+͆%J[3ɮ=]k/kk^M!/]TeYSXI1^ (hTR-|A,WzΠȳ2lcP_FEş rRP\Z=U=P q$T"ٽ_e]2鑾+ar;6"Ħ~ Zӊs62C6I*bw7.׳s:C^]D^M͛WL6h{гyŌ"5B ~2ұnkxJV|/IMB+4lARI3fl?g_幃22J s mjۡ* |9Ҁe4J$)]澖uj UP$]7;4 A0t>1κ5:>~.I0ʮŋnRZmE+*o7c64D=WD0q3}{Hv=IbP (vQŁHi*l\߱=\y +BÂ۳{%ΕS<=#+t& ^- ~uͣ@_2ȝYsGw>,uԷ}[(t1eJ|LRo^̕me3IGˇ̅f|ke}+}ǒ, î O,`!3%qϫQ2tYފ͔4-e ǭ-IWzˮa(ӷ wѣj?ơvS Hx&B* ڻ2 sͺbZ<]E=Zeսi&R>@3ܞ(uJ۪hOϕz |^oᷕ,4kS9Aix.GZgj\U v 万5[rgƀ㭎K7bEk#=.1r*v,B|gw515P,(/{|ۿg>+.5bψŊDJgd`vTl+yk`g5^/xQMYTjh3GaT1x<07.kDx -4,Ґ7;S tU`;CS<\>4 -i8dC;4C._*>0^ 1RMh'}m!oXB׋ 'Asa  K&[Ze;@ MSư5r5ZH|]A3Vv)kaX5e9"-yaHn3w'd꙼1YJM2q{z'bQF*LS `6 隕u/4^<`]x+w*7'`Bsr]vxN@mqd-՟; $&O.0+BS:|a݇(/q҆/0:A~ZZ<~ _C!quܡKT Q* nʖ~FtWtBLz|XD$ !Ҩ\ϥ#蒳S{ŵJ>jHvߥd.wD|q/R%1ѫ0F"n5AQt⑂I 46o"u*ꠎrȱ, )c:+($(?(ں\SpZ W]8% ;cm$36_֪~ӡN|e̴.T 8gmXMx}`Gi+'Vbe%P;gİ䀝qP0b$`hosl>$fwq M/)IfbG? C"L oFkf֔`ʊ5` EsԪXl!;#H!,' fYldO=D[̨=҈^~?5 G{ɷә;sncb+@b{g$0'8bG4 S|ʑ X^ʱXN9Ft^}70*p-')\. wi*G,7YP-5 @=e>bUf/f'|)jdR($&Hx' T'0bM$~.D5)>,սDNr%v/:bFh3$'T.@ԉ]1㞫ɅV$W86}ggz>zg`4rn 3h)}~ 2a'eQ! 1]FT  D{8u^I gSĺ+AXVV0 ?ײ_FK 2e !kU"ZUᇩbYg_J~}Ngl1 {p\P'ˣ/L@Sޠ=Ddd4-p};iT\]J]ήm.E/78)q]KewZ:2zgL9Qi%=;/}eVe;ca- PڲT5S&Zf:qVIC1MpbƛAGzMܧcMۥQ2Uu>c|OF}UӜyGv k 'x)ˈ8t83%bh>|vC_'W/B /h 0ejgQoO!{VN/8p{8,ݥ7M-{'pxO>?c``r>se$NJ)ZAL3gemzR?huN{g+Q/?nM)犔F(E9^^m/}Aꋸii `@/8aNM:ܫY)!A%pS;F4v f 1Z\vW[S߆)/<^|շdJdtfx&wIk8f?fKfcPlKI1iT O,39Tgm.Qb$Ѫd`+Ғ5&a@ h#x Ky42,Zw%Y]jlc1YFێtCN 5')X7+v\s9=ty:ǗY *7@PwZxc<KTi\zVE }Pȼ mpj _e{'X;(DESfB5><;LbKb2d)Nm Pg>∍EjrX7Mz#5.f"/);du47&DkԐpZiڠ^ଐqPI\(/k_fārFX% ^`k /Rd딋Q|,HXdxS= o-,7:wzAbcEpvμ|0j\eӡ3FFC}<؝" ſ0-f6VDdmbt$H^Y`DAE䂼2^ju@g٘~S{9I%#6Dm2gkerFYWᑘZJ sɇg_zSŬzi6t)):vwi|n" J2˷#e3I4BkkeXJA$[O|ux,$ ?!pa<2InD:3+>U%'ľ-.q8'>_ 3C7;HWښ)/c4N azv p{# /-x R$K2Eo/D mNۋD"`?(; ;ɉ9zWZXq"؄㭷1Š&Pޤ1+lD}F'OAٺ],Pޫd[g6BbGJ*++a׮=ҭ'Փ G`]w/O0޼}[ؿB<% ?:jK*/9 B A@ 鞧F#1O,]-Q.*=L#f Fi{:6;xo[IB} l avx;7nÊ_'0}CR5_%+Ly w9yuB rw=2+\~'oc*;<@ 6<%Cvq~~Pl3L{N/Qz{}UV DNQV8^$* ,+AxҶ@ww˧?%|" *v* a;,cI"gC³-Hk؍v~Eţ|;^ƋאMAGY\gEWVLx'1XwnX{SqSbV^g!rn÷t({: b ßWǙ+li0QW,ʋU_yu |"1n V@¥,q36AoO뒌0QwN̚ak2ĜYb}Yeud}{i+~Tpwx .v  jS1^L d\.迈Ք>vb-Zmϫ1,C]MV&5K@3I=*=M _LH҉<f4@j"! tCƎ8lʹcC6PpQ*1EIܔ>/Ό<eEKrh`ON'dz)nz*VC84%]W!kS3}:6g7 %JϯA?eo |!::>wWk2T=a%RC ߏ`:?9K._FکZJlȬ_*I\#6f9iP,۵Qx{߬5Bm2hא0EH⪭&;[9iamBvvX4yY Qfb] x-mN2sklI~g)(dڔt^;N]1Om-;d8W1] 0' u*yhI!NօE}]:9ªD-vjDdt}JaJ?8Ԟʜ@rEם!HT_oq fxkmOV5Rᐫ_(w449~xc-=Ն^=47$zɇ=I+>)LYtK#sq9uVa+>"S%jj 1s6h/Z6$NZDױَbYG~6e?%AuA eqc+;*!P 1C:2`O&DNj*0X& >C/}YMB _i6hɼ419ub_zr]pװXyga=2o }EgƄd?R"@WOb¸Rϵ3NZ'} K!7?pPv/ĭ@T W>Zh闌&6 B||ˍͱhkYM2fe|N|McMM 6v.wO,eN]"D +G`H-㦠`1~+fjްG StVaoy9+o%/R7% /*O*Ǣe4Ygz3bcQY;d 3@xUIC|-o85#_1X~W޸/17m2W˽34dɢ+h~ m)`=TlP_]i{[̈́@5p٥=d.EgXPA̵2lS){R,ކQt隿t4ILT0jKw滠B\*۷yX7Í mfwjh v1ʢ+DsYW*q205*5E{r',僱% %lU}ጞ Lygw4m=s($[b޺M y.,k:93◌@ژ[ӯLcEg}7QJbГ8}ZIs]B794inU T*5䘅̛V~9Xaj"~4*ࠖ->Kˑ; A,C=2)CM3W{#eF?Z4yNѵȈ UlxɆiR:4r3/nRCׅ)D*]^`- 4#PNţ%&ߩ-\@zJR.>hrBS?w@w`T7c;e]8\Ҭp;$qOMm$#DH1gcFzJբ\)L"O] %LmMFՉq[a_U8M6Oc}|C-]ۡ2'\aXMS ^BٙOȎ?0{&PLqqQuC h~ݭP)/.[\[w}LBZ;o+LImGbV~lr eܹDa앨iDԚ0"e:ӥҋZ\wy6b'rm.LV eec{ӷb(AduRlLO2"su9lqd<cS6NAav 9x Ǫlk*Ym@jN/ Z%\6!q^If$!*Jz:7ӌk5(@cz@%D eXr[&CBA#m ぼc zJ3_K^f:a-$J/]fivbx.wufx$b8V_57BT \T& %4mWb8V&neP7V=ꄊW<&NTnwsG:QکT}l艻Qen{+4j~C"6ue@M]pǺ:=qbaÒm;LkrvAA zRx[z=LjZ> Jݞ,ђ*֥{=[0/HBz]N=/"5,uMk]i-:էQDԲx97x<ନ].|A;l k9~hh+FnV3_Iҕ} {b-zp(LИ*̣Ct敊iZtd&-aPN!tn`,}a(dSp-"OYPG@5_Oa+h+:БKt'|7ч'X$JǠdA<}%Z{b`D{h|.j8U/O^s< OffQ &w!ȆF+tI׉׍O~@ iH$񑕠]!ĝ^Mڔwr.@z&aD`B~Qރn<,~u3žC}nކв,Z:s dڈ(Y9cx5pL"xJ$dPWQ0t\ |RQ>eis`(Zr;_a{<"Kno0va\x9+{RBKngϬgHڒnʬNFfRKznVӡȾO[BX(6L2"ӉPru.ުV>?jTD)5D*-.'KzWQ‘x"g8I!-v[fNh| ,1w W8+ôNA66l@ =Mˠ߉̬gX=5i*ekܧ6qe|__hha._QfowxV Wrw1\Zν)&:F.k:ևpx傲C`*?wRoYک Sf=<VO"Н 76]BJOy< b8$ٸ6U)vE'^0VuH&Wnqt+X>DGH:SӧV>n,'|N!p hfIkX#ZvMVV{+huKB4fM{,?ZC?; oyKXL?NRC,TS \%}z>`;b餿f<<(ƞ _Ѹz$fK;qV'쎴鿛 Mom#?瞳vBS{%uzҸ&˱D5=J-@`e` n\4eW͎;< `:,L-*yМ>R_vV[رeMLa'lr _`eh ;PU-y/r'ܜ&d`䰢(v% -f% Kz{p4짽~ EIE} :՘B30W heCu9,vIJb59^d>a4-5)a|ob[YRL xB'AMkh݄5!f0/ܭ}FE} Vc>M/zi0SJaAsMrt] ^_+2q˩촀m#wh^z8uqt=CA8=_okriS絺$Z70a /q8H Cf` ?y%Pޫa0Hۀoi XV"ZaO?< }ҝ0^zBN$)O @@H #3F&xBL겕˸tɵ/=^@`\z-?M 3,;*ۆ?ՠR&"dɂS|ĩ0)A<n0=C=eTf,Ѥ:!:&yueJ6h:΍X'A@Zk|v #X#Xεѧ5fgItJhO$:+6wPWk >v.>dԖfI,LO ׎0p֩ QIg #"]2%YUc o/zUr47EG.'Mr~$}}pu&D3WLh=?h]mc;ʩM-LHF.zzW$O!sV%ڜi~O ȨuG~ Wd3;/l|lɗ eX-1/wYy'ժܕwK I3U'<]?߽tQ>8Do*LQ2V!+ wlG`1-JERDF(#_ʊtcլ}7M_ؤ 7ъ8dXO)i_s :av7&{BS~E8T@ڌ4Vۧ4]OG.P2%ڐS,5a],Tƻ QQbkmI>Y6S++dn¥)D|,rrAQ9"l>>}7'&z)T|ۻ;n3B):/Ac krTyP8C@G#jox:}Ǣ,dF/TsJ Z>'URR*.c8i-W#GViv㌀% MKiښن+?C8'b|3~_SSNJ"L$(4F%OS7p%Ϝ#.?>Kc?'wiP*O3KtL.֓wH z5b ہ>rY uMpU*EY氆|=>wW<4ՋFu6F?AruO$̴>UphoĶjn3:w)0^}iu%/JgxL\v(O3!$a`ZZ|%Zv7ug!/S|As*"sǂ@Klx =&Qmo9Yֿc8Y4]ۜb;ha5iRl۷d0ڧ 䴧) Rj>Ӊ 7xaA_tZl<><:j>pKzࡾX Q| I\)Cÿe mmd4UF5tKDNؖHD]p.QpѸ?#P,9]Uڻh5NL\z<3(gvedf|Gn$LQpŚÕ XX+Z ޝ< ψ%9}1{Xdo] /y 'kMrjFOmvrTCLSϡrx.QlslUvr>N Ѐrl'>z5hӁQ=ifqNrrzQFuTqЏN/Qi J84gC :p:1p^oˬվpb]乿 30%>&][ˆ0(k[wEoAsuۛQƉG>/Wz7w^e5vDֲ"i_qs])}hkXb^=H:еf Jr/xݣ!L;=v4L/F`zP~+ ŽoFTM$3ӨxQI5HŴ=z;P[=6c;~εųDxKYwqBDG7`/mrq[lCXW!ⷅi9@^Z/^b𩑊P;M .-t[J IP#E hlADNAN?kg+!PX6^, +@k4[3WwISԞa9k f Km89Go=Fm~<(^nz q#,H.u2e+LY?7p[9iŭJ Y%h/͵fc&RѴJ=^ற1?wW t)ձ,LZ8R [2;mf,Y=yoBS8`ce* 7u;1 ӐiLEzxodnR5_+k*)jF\GՇט=7{gZ'H#[c!)=xuGƾ DBtdϪCvZP?ț'bSbdUK&|-VZúF|Ϊ+` -b'׹ /ZT`5S(ɩD'S& L蝑)c -wDᎷU*~ $޾)$UHv.Qiؗmҵ!,M3a ]Mȯeüb@7nlP6djAɑ O= ^X;zlMʍ;ړ|<)ݮhHiYK5 JJJ$EiQa 6_5_hJGNEB,84,RLӧ4xXj%_®p-ɳ&ȗ f66Mm7L7Aa s|4Q SI^sG-P8-P@n\cPyzfcSP7s+WR%HѺ)fНneC$ sJ15~v u(w֫exg MRdk5|IsZYWR&U741$0^.ScRy\e @zԗƛW3|tSBwmXslnЦUt6ſD^Y26# ·LSșa㧈T%.)x)xy$s{BF}dgIH}J:VA|\ }b/z٫0q8wA.ytT,kssq*7*sf"K;=@&6@HX0BnaE x~|#¾J*94+E.✬Hc@>?b.Q_}KQ!ZܘhjnyfN#['n"lci6ٔ.7$f݀`=⃼{X>e,|'0<0 \$_KP$Z9x|"H'Sj$q&+1v?v" Z@j Dhmne1XiI.[I{0($ l Z3yx|gEDzodѵD9B!cu5i(n(gLH&lvvA![z?h;Go|rjJRF*(8 2r35#NK U1{]ܾBa$o mdս8 ˼Cȥ#/q5$|GDK7 *W:`KD6VX7dTTָ=^X# kMpbXI)e k]97ժ{=p)6frD_u9uXc_H~([;-_qrt>讫M0bh/V&^M~^瓏q Z F_ȝ7T=H`Cw| >HUrQRn@XamH:M _zR?ߌE6/ D ɲ0fB'=Q`EkoŅf@"vap$2WaIyOs`;JȘ9\oi :*_9F1, !@CUv6t^.Xb ^ \"h ^!A@ߎ#pL;8 5nW#PW_5K\cxT(L{LL0"J baz+y }wuܒALXI dUBr:ߺێ,F>>lޝ^KIۇp^V6bwԵ]L FV<ټ|"\%]i6=Hp7fզ5ƶ4 P" 2.&2:χp K8ߌMuUf45&$etf-dCT)daޤr:q1eRnmmSPidG@]t 8A7?P{1KD`c| ( s"Lod;bO .1De\\cI $ ?1Tn"/݄Ŵ}rcX8 2 mis? 4BHTMΐ=Y[;:x)" T Jw# !G|*S؎Vp@J0r}̊…,nmG8ϷF=3^4rYV>aj5lQ6sZ-%_|M;#k>S&fݹTK` -*am ~ WGx6樖 *9Rք׌uwY,PqE ,b)o0hI3/Ζq~Y"= \z J)Mv8v{0} $5NvotJJlWN7q!P^K*FxVO"n?`y$%-H }⶷t ,MjS- 4|RYdK3&]1hmk=n3rƇۗr ^ݠ^qe7~8zڪDzȲʁ<'8Ahi5Fxmwnkig%tT45N7bR1:D/Z:ra\>8zC eD0IS7 OSp+zJDG 8,4=-k_cqL`9R>&kyUvJKe~=+'aqFX*[ cvTX.'NAl-I2sjùJ|bOѶBW))Lf^WiI"H9U%?s([J&{_O:V4g+o%_ 5Ab ZE\~(~}ĆH2+]-de# ëQwo0(ܨѹרE؟B9 LS_q% CȲ?T w̷U>we("b/RJn[6Wlfn߂<Pmi"@/u 嚆_NѮBE'򄪺&)g:Cain췛Nq PC Oc磌2ԗ@pe$cTuܼ#4BWPKr4UXPos2, %pR(k ut/ě8隊vUHdB[%~7N}I:SkءhUԙ8`A0\d<Я316ыS?!JlC Q9Եn3wDh"6][= RRo>X~z_[sO-v~/jE7̈{9Oz$Szƿ۸3LcīGwBڰ(5GPYIn{nE&6Gu0]۷HC";Mۍi&YLY\Cb] Äꪴb9\qAMYZf'Mnd½w.SqO\B묾wzw̺g=lWޢ63Z4) ]>^J'3IExnl8y_X^&RʭrCRH_aQ>w$ϳJ a_-$f1 kNuV@_?W.5AmVu&q㍎gy0Oنo?mG(/o:kco §`^ X \h7P 9w ܄hH2)Z+dG),'<:M˚ixֲ~؞(w$);;e:aYv5xgNd O"T?hJ%_ #ąO `aiDUr'dEC.dW0P')xy: TF?ؐ6Vp-9gm׎0q-u|ȉ؄EӼ/y~b[?8nvKIQCЕܾ_ݟ}RўRjo$.acQ"۾KVÏ;7}^EL)3Jsz%Iab { rTreS~5q͔y0F DԥuS&-|˵)g6 ~8!y V`tPߥNf4g~i%*#D?<(NzG}k=ʅc(&5c X;:(~#j XiZ\d:$ajTe,7TXaȭn1(&O1nR;D>tgp'B2iF~F,{YgxJ2̱(:uڂHa9M_7`S۹ Dؙ-%$aó{u>Ͷ[˅mNqԊʀY}`šЏNy{;is<{EKF 6J&s\౓'HڦdU/Q `l[WG9ҟEE+Pp텯$u1&5'WFto7PF#qf e,hujD 1A8uI'kwD{oX^AgAeEW踱rP`NVNN$bQVzQ {#[己#߰޷\B,˺uXR ߙH%fo|E]TnuT͘)W?- q=Ʉ7pE }=!8\ 9G[袻+&Jՠxv5r+s=$VKAڑo]>>dޑ%1JنZ,$}mXdD2Z=8&`Z4-bwaz/2ewYmMwI$ib6?3 Ɓ/~AR T%#MoѸõRWHs^&!RlͬFAƚ|ۑGrh#M/Nl<zyn$3>n(z!L }'q ےLj ܧбj?er 3!C6vJv/Ú7aIT#+2kaD@K LVW<FTR+q(9~Ol<jc+LzSB n-fSbz]K>klKd{-X.%e@o>rzԒx?QkP Y|.Zz@ڕ SQVP2N=tUϮRlȬBVY$" h^ %w`RěB6-'nD馓eڴx8p_\[#cݿbQgs&!itx*k;6e6އVpSs^\Wk8N-&-XER>1NWMIvw_" 8m9Rdhֱ*|NNV=uxh/lAl!} /($6"*᷶csyn6#Zͳpg4b4R n'⫻-?7)$^4uq#n؁qMV| KV&Ϋa~ًMwCv|wh%ng'JUo e7ϑXe^5ē o &.JK9j;Kٮs淡S{H؜*/Jd8oMB ?;P;wOW]H@rGdEDUs!TnfM]nPgc5ݬD`b;W ?{s5T݃1 rq&M]Lb (cوt$jGtq389u,% "A@gDimXj$A?Q1'mڮ/LAjj ;`Bjlٱ;SjPf*y*"0PH)(ǛuІDmX"O /,0=f,zIR" L潂ʼnplS5gHظR-B-q368Ȋg^GwwNF0 .@$8^hQ؃4'j$4̻rq (ꖧLjFb 4XU>B&o 7rҥ7kƻ"o)la#E ;BGt!,{ uI®/<Ҍ5%MqQ ٻ©#B5m0vi&(г0"Ki27".DE%Vbv& F3t"1knEbk+}]ni+_GdTП\v4Q,7 OLN6_\nHWN ,Gc]aЊVfsAx.NI/BПaLæ;ؗ *S2CEإ֮J/57 ۤ(0K }QƵ+0Ά[nXQ>٢A0¼z| 6o%,EE]|CC_s`kmr(s~pjq^P g4Uf⇴# ǂ%&!l%e0m&+,Gn%n%.&SB2$TtL϶0pW% '\n'RՕ'On,~,WWEEIfm>yTIjU(Sύ-+mSt4&}R3 kW4>pLĕv^e9iLˬR-)#gge`8ϭRZQ"5İFZS2:/ni=,홹jZ W'c:yã5r`_wnVrk0 xfCG@\nv.Z#F-`O{YHSMsKzb}y EtşɭU? dlxFɕDA'a G@qF%E ǴȚ tXe8gz,Ru% %^]NnaWL|vL0&b ɐIaj' c6oC<3\UnƟΰsS[F򓴜 U{RMdIkpM{mٵp^(MHaFVXO ߫W)Y`fIpO;13׶j'+ĥPN.$QI)5jEi5@ o| ȓV, ®-_rdt ̱>$!5V>3"TӾɅZP}E]W͔!vP)^m7͢Q XP(XƞC//%`]ԆxR tCSOx:&-EbY%b64X/B^\\VM2J|YpI!Om.=.y|lX#Ԡ]v?x_yGhgIFoI>\&I 8VAnQPZ`錊=@]<&k8!; QAП;'(U :uSU z\5L7gF*v."Rp > +oXrO` 1Mw\,*^[dm3eHL]oST0r)a[pe󵂯a_fpM.YEwF,9EHі-&`,MC :>Gr.?1(9$;CwT661EۋenJ9dJ̄>8h8;1{AUDQYе1ց<`TŠ?l.q7@Jp0p"*ٿD y\}L)'||A5ogX9/e~Cذ?6W4?#N[Kn2,ꨤv5Mq,fFp GȈ+x͡ч#wQ?JD }욯̖uV`zn/)1yhj_Y'2K6 ,YX?%(\[aAE9ҖRWk5m:oeXdNBS\$+h[g4R6}HEz 1abA1:,^(#gi0ղ'dm]C  !Kk}½wt95RUY׊. t^Ҹ2ǧ֡K+u@v$BS"`: 'AKuS^wD^UChn '"m}F==6 86[!ҹM-=2RܞMkbZ^R ќ{*(vYw/FKYq3$U3n{$XKx!>CQ?$]Y - l|=b~sAnjȅQ1hPjhf=qt4ܱQ"2<3S{.GK?scv.PcR[qw#=Omsubւ?f$oK84O3r_-1!d+@˝ɀs1=`rb#<\-sZ6T {#)GEP[|+4:7P[j "1J6\U w4O˸؏&<=ӸA@ժ;le??^ e|)#!s(6ݟ yI5J%_&N^P "]géB`)i{D&k?`@ZOˈwAB*XŐ48o*+9nBs0>Ţ>K4RR|YeHq< %7 L'$L)-U9S3Q_L W@Ά4]/y&@R vimd;CegU|C'K,pMR!Xl0Q5gγ߻|R&@;5Ϝ3RxtwA[?)h;m]w LChÀA W8O@2IK1UNya @mVQ%ןE#5UE\v @o2{S˵)GBXKEs*d^ci7f݌1\u1 67le^g]0&bfMk6*]D<Ү8NHΧm#p-9,3BmkvJۙ&l.r5M]hCXmqO(XQo6GXh;)&>p䉯'RL/!N\xcm=Q܎L@_d)Qƕ*7~:R @@C%G\wSC.5+t#xs:V`Mq2ex”eBգ-^o9Izݾ+ptSxd̄v9vJ9FtT| ]T֩ƈݠǁYbGx!Cvq'̖ 6䜾-BM#t ~΄p_[ΧwK=]XZtDž h|)A-L̯@,N1_H')+TSwUx A(*r(۲Ȝ&\QlQx1d`Uߗ=ZۡPG.DTk Otrcv&<>R @Μ=+$A3U,OE?9+vۊgIś>{| |Uݕ|S#ּߟ'Oܞ"ѡBWSsUE{ *VSdJ%Mb{vxeEЅ!_fS3a)[ @+D+uLzOϷTY*EՁE]AMzʅ(UqҖϲL?jzsG/a3Te@2OpENIK,&&Ì/49xZ 8I mB)'w;29RyK2ɺ #LBhjxp%EIev™2=gi:2TA+ːh9j%:PAWb{x} V{w@Q0owN9SFp.;=Y0.&q߮M#+Ci&tnKH:JKFH|,y]am=pHְֆS뺤OG"~^@V1ĤvҲj4(qjCY:^Vnw7UŁAft]x&pi=ggu^9Wl> /С206K2ErMZZ9ݞH8!ui`"+GLVG.u\&*iJO_֌LyvÇqjl>:P;\ 6NuvsPv=(w~p`q$I>\b;p2ه"ء5s`wG WL>O.sG!^dR ,s:E(yFE{o!Cu/ёr!iأRͤ,qPJPi yK:,$ČXr%\.7A= b1& n@> TSܔGҚpŕ2E9TѧQsNn!?-jQV8- `B\3 ,b. cHw Le]@O=fK*e۽ _0,^"ٞ_+}uNQvzihAFoj؂O{u2{܎QEb{=Iv":JhŒ&_٪טRBhj [:%b! Q$cN0֤yqS!b*Ɏ<~L:zy_ޝ6+ccl[ۄ ;yyje .d} z5GM.Igsˋ XL^˒ .!EisxC~YJ\ߗ̰NU$ '@yy,LbiO96 Jb/ vߧ g;a[Zt*X5\дέMŮΗNElq&%sfW 0PyL&jt4P4zL8(Ўr"BZ)͂r cL%ZR YǤc&S{k{Dc."Y~{lɆ;?_WfTa}$Npn>/4ŷrÖυا^w¿=܏ܫL-#*q|8wSNG!(|]qWlRŕSp.8$5o ִB*G0pWP  yh{ *8qC FH _g5H]K bé3ei˩lli;EڵPWE8pK?VC: _z1TJ@T+!a>T+i(ɫL'DVu&];(H ONB'iŸ=60Bl@;9Pϻ*3h!:M A\q:/R%,k^^ǴX*5NlßڄoԽ)9yR®P#ay=m>)~AJyDTh]iX;Sev/zaW” KL%ϳM :|\#ucu(V`yiU&j zȷn6ZO *!QJ%y[=H7]߭PH^\*.,²eIzNa+/( * PO(+4\uۄ09Lx "8$ Tbz*[\"ךy@vn s97$yHo40 枼"í}<}Ul[=7qcغ_tD}:_{5)} tA\?kGwB F?bz4znK|\EŰpYNf l6;*Z/D3޸pktyMF_\!bOtFs].4G뻂d!xcO䩜e_>)|aľ䶪mjDf./p g A#zxpФ3#l; VX4}EOql`?. bs8-bX&Ƈ F:ݤ|=ع˒{j=Kc'2*$ZX{ygm10tݰWP4K76Ĝ8ʲ y>vΌ8v"]~/Díx> .Ifx@~(ԝgp Ss"ЯGWP˜hYzok#WHo7PLM˷^,k+ W~G@fsgoFroZEʚ/! E@,f n_dN ^AOo ]XZMerތnDЃJ5iJ]E9P T ^o!Uv17c磎($lKmt< 2Q /PdyycTyR| 1uJ/YH uRB^{[@0RaC%o9hdn sB>LԘγx/ljI7c;U4U0/ڐw$ALi|,; س9\i4j&9Dn:9[ * x o(p uM?ҟⴧz0J}W9L<;誴 )Wsfv8 !^z r?{ǧ- %l;k`V:XS)+}]'v"^fn<}%6piafhJ7[1[X21 ׃{!hfqTm>.:[g/VK$*sY~cT ꓏=tN 93A.ބ g]2˒*9#,Ҡ 4nBqg-<, e'{pHa!N]tJgL{1e4/6HHNF[7tg"6:3}cjr3S?=YU~qPQ.*^A:dʱ=|s_MH)bKqSP2/y[K_X.4c@޿ ?<(VsT7_@\0΀u\3q( EvLP5/)2T+x_ z ˭ SZZȶ_5%v x7c)i– `B즏s/eUxrIxK> w Dqߋ3Ped<7mN{F>9P_5;hW t[oly '4968xKB9\UW_#"Xb߽뎿 BcFu" /#}dqvE'kthgN/2 cgچDmέjL!4qe0u2ahV9Lc 1太ҥ&@{R/o+ɭ6ǻ e*@R7uΆL)XQWrJ?YI<;.3=XԂv l,/6KPV شH/VBHTc$ݼ9&W땺@a0Ulhd,+4S/DcZ̿xaQ !0{Ozjh [ " BQʔ=Ȓ 3eq+>c72梳rڠ6rcVL!{پQu *4L{NbB3q}!9)H9 7?t TSq5=Ĥm-|!N_7Q{rDwΒML|u8@6TMH&#xm)|kz閊kutN ~w{t3i H@SHܧix5c3{"FTN5d?61 Q7|JCΰ=:T d/rJ´p퓿U-7w(~C. Hm&Tl4r۟,͓@u-2pz%>jJ%Hng-z!(FRq*Cb{[#y=+u/UX(`Ǹc_t#KɆ%>]Chl :5QYZi%k7+ȭ(:cу=O+xc ^ө7>k 1B:%" lկz*iIr:4)&Ǭ2uZ0[JIu ]P[O)7 5VdWv oÁºtUqAީѨ^YdqG >IĄȍs}:ZU\̀3yǪh39ZC4) TiT/3v+⪴Ɯbr J˹hLяC lfVCZ>PEO0!B~?Dұ[R#7)!o$@MV`:iwt>nm F!Zcʌ+^e8={)xZlKx{"$5jIw3K*K*(t-Modb*Je'A#_۬M-Puz Wg2h!}we-dX7;qyamjr~=Uf̿x[2|竞]bvҮ} Yw d5K屵h,rx_țsdi1hB5̋uZ%xŌMfێB;֙<@^)=WK~+X0Tk||Ok#E-z#,iV P mp({#De(y6lK$cn[>_c'a)v|gOxڑ9C"CY#3`A O@?zbD7zV $;səe_}M&3Slz/V =ZM2dl(`Ajkw{sJt ^P^0.,_xs(c<3V5 "w{>pj77 ە?%jM9ʯqڠ~g FI$6Hv>wcrOYfjwQ bgձG cdЦwY5IrE7fJBfp(]۴64zUs$+ZL%_[$j3%_9fx CU!U<=<\\794-/:C ܘIx.,/ X{C 2=^Sڛ_HY ?: f;؆6J~ب3Hrˠˎ:/o<GZ{w)qx+- u٘"@,|!B?K"J) Jw?Y.|7}jɌ#Z~E_PtoʄAD` %ݠ-,{]`og#_evɈp.)[x'}|rShP-4+9`S)2V"OBJRaֵ8Ru@xq+az-MݐHpEr[*DiZ1AM|f\#eͲ?,#%()*V S(o妩lRkĢit X2wcۡW~aK݈v{B/\*-!<|=AbxPΗEpշ&\|Fwu ES,R yrqAqN9t z'GɍE{R C,4 ȿq þZr~Fteq2SF{l%_9t+Qa"Y]"G¹:=kU\O&Ep^x%mp 6u}oD v采WR.n1IƌymBfۏ>okW]J Y-J)#9Pc&aaH. veKգfMxwMO?kk8ʵ ^ݰjr2J_)AпF^;MC$Z5ÉSwA3fcq f~GMİzMb[SE5W Q{` w2?8"} { @$+%@k lx)g.EǾ-.SK._}e=%fo௓z^^!A70fyIvv/שּׂ Bk >T ȯ'0͠,O_"cG '}"*I/$Sϫcn|p_ٮP^S69 D?}ݴyXUsMF(2_$iaAraryfc׫w}LD>,Mc^ZIbpg2_.htǓa-r[;嵒J JG{USQWQ)SMSU*V35^lߎfE6YtP \NBeI-#Az(`Qat"u͒jis',4gKEwLXzǕԑP~ڰ Ъ!L6DQQs+ibX[4 1Ԡ;⓬5?bՖ^KJ)LGt^Gw3v LL-1k %Hi|0Wy] GM"D@jQ7 PfeI6Hd臝:Ҷ3v Ē`P°!pv6co梷|R s=f긌k{`cpZX81lJ U+(a䆹Ըer&v0͜Jd{m=7}}e([,&_qVLNzZ`=^BB}L3]; ~j"e$J]o:45  !gC'cM w' > y3{":cĝV}!I_MB; 'x Pc M̐Ʃ6P~ǰr@򰦀% *y*!zwB}CͅP7=^$?0Fr 0+pҴ1M~ 9|[Ƞ%XNS|7M;'𐓧ȔCv/X {lY̅^OqD\$C5Ҝ~,_|qSg.H|8.nؿ0& !:rwA^>*Rԓ7/ŜG-SgR&^8ˊѮ- mj4(J&[Vůy4j'4M#%O'iib "@+ |SAc%|0|qh7~au3h%ADfJܘ "(# ?fGXfKcH/ ( B9_F`cd*ی~q%)i8z$7AQ|4d& ^78ϚrgWQdt+L 'ΛnKc IZ*Ռp3=Kwxl!r]D[:3$=;`@ xQq}妯+JV4Ww7hbchql3+fA-1ahuM@Fn dѱq"}oKа]p$Ԙ$wC>pmǮdz@8c!64 0Y*V{zQɝ"x]Q؟>N8Uż"u>xR"|9wL`Ӡ{j+ `V mKC/_&nw []ȕ^x *ِ\ն0v\z$(b4!&5y rg]3җjXf-H}+'l!dAӞnEnN{bdV/Z]}AvG%Gu/ ʬ螭%܉`.uær?kvE]G +9nqYJ;L&Oif6K"Q3x"v insֿ Bx]L,9^.ݟq_Mm$ץ!_HFI#֎V5쏂'B(4Xn(Y0{^ -?_? L Mܿ^оS؊?$jgJ@@(=kBiN=8 O+khlo]I{tpfѴVPA@(=~\wÔ~ zj8y,м3heTRo+x0ϸzmC@N<ɃJ@ ΢V;j]~F~#ۋSUd%7/nq bNF 8'/ZWZMIBSs=܃Қ `( u=H(^=>T-+*8Oo0=_ mFz-ན>o]i&PgXf:1_W$$Uf 3FtDⷖ=j߆uK\a-9LEϿJx$V3H},D W%ujAyp}Jٜ%zk1{|ȴp4zg\׼LϜ^c*cW8Vբ3/l\C,poZ9N$Y okG᫁FaxA'<YB>'8 X,UQH$'\ lN]l9 )bQ}~ 2w=[2+}/~Q֘V06tx89)')aO0q|\*eDՏ:}PJC2)3?2\A9=ܬ'T]=,0zk3L>H,?~7ZM~5e Zýi&_=qf0yM?qeo4x,5Y!3E8ݔ20gjaJI{*l֬Y޽)ǀ?;%01bsU,V@3Q dEJnH?藞C$ڏRm:(3Nl=8fƝ!$Pk{>,ȚD! -eKamnjl{8ʳ '+F_ :pt Qs ܟ!<޷9`G?GZHt;яlw1R;KhTYtYmX:yWfge'I~l%U` aҜc5t Z˂Dl:]R_fϘk;!_DX2wE۫hDf43´ sHu|X)hDK7&~xJ٦ܜCH/W,em OYpPɱ'{Wό%i;quHbJkUlثCjr gҩy|+x&<"^}WяeK:KZk'C87An9s$eD<ݲ  xy({*:sOvc:Mk߂܅6ȔxT+{-ݵ ':-'\a=Kq"-*ۿc^'4䭪\;I[2 y}I о2*YCGd S$.0h%U&wV:B*f"QѲ[} &X \I8K#60ZEaڍ!@g>L0* XUSȿ>!PIhӕ$+Z L?BdDw1hz3^EdƟ7/fbmmDVh &dI;˿K a6lUdJoJƊ2=:Nq,$˯wӤ)Hv&[ ݠ~q !8+i+;jZl&j_qZ  dDk|hSg?Ō?j_JVox I&K;rX=i`}tY@cYKr$nr+2]Nx}68~)]Ry1& V}IQAn$JK <]`n&v1R>MR]\&J, 9纋\Nٖ"{if03e 'KPǣDPzf5qN꜑Jl|8MG5{?Ģd p* r6[}l&f4Tg=^6D)a.X^ xo3g&/xZxp'h hNK+n{61_im]cX >=܏晗-T8G~^يU+8~rZIRx\oloq޾x k'kQpG7m"sD57bih|e4J5vb'v6VL81fZU.?ѩ|a醩 < ̚Y=@|Ykk 3VU[B9 ~q~BvtH 7ȼESW" .~.^x/a$o⮤Wb bI.3|QYh`!!n+˧خ$x RLxyj?UP}w>[o~@#vC`u]y|K$;N Ev 8O2ȩ uj ҉ڠCXrv]G3c뗹1f#}}C I!aJ9qԺUJ%x֣3cVXyQߡQM8^\$.}7}p;` ѽ/{u=0hMDDRZ,-~' |}& qm+ ͐R.M{LQ*Ps+2%?ĶѕLߧ R.gצrA2ğ`)<`(,辇tӗ:el,,$C섐XƟ^Lrd),tpp)qUkO8/hVNk 7Yװœh0 x0A A<(EBkטa#]k/oCj^vj!D'N _jhFZ31Qa;Q!(Qr+-*g~>އj!_u tR"VQhH5Nx PU'=sx2Mm(mpVoPfR9+rG.N&Q1R%bQ^|ر NsuvPG V=D%5YY%S„S6t) Q{yc)pػ:c3\MI,cF0돗k*\ϜM Xq3c֘nֿ"d@tbUj!y^d㽘c?.Kmɯl5}q:p?VZ&]ti%yyDD|:}R 7B孻<{d"k|z?Ec/tuIɷF>y͝OyoPðڀSwzG\JyU{NH]M1RK)(,yKEػgL"Qs+Y!(OV/S,2')u[ȅ#˓ Shxw|ܰ4PZ# S$G-쯖l$09;EZ@M8kqjcmҀj4c(OS'[JO@h@CGInR F\-)15. Hka4p klHJZg&ʉ#iqؕ j]}bm W/Sg+CPIys[Q4L$%i;帿H?=0-Hs11O(Lo;E`$(V n+ ?/!|*§aN$5C}b̔_/.9g滳 7e #aJ*N >s '*E j߁%u8  z}6z79% <Xgi{B1kO^c"\yg?hA5PNlV 9©* iûxTh8f3emb80WDY[q#o%{}%Ђg 0mƒ/DC/kؕ+cdDFx9I {?.ke0Z)zљÂ-S\Zvl-Ώ<2M?+^/(1aO'ֽvLty@Lvu v ;`Bҁ1S*vp$Ds<НUm!j$ d<ТUͦ.IL]6QA 8@f9Q&w$ML˃+gP݀lBmWBjt9i#|(1&V+Uxw>jR_ Qe*(B:^ȃe_SB?ꏅ]cSs$9 fVB8ˀꏿ@IfUרnװOb0Tt rOXsATu*ᢟD!@%ޣx..֔Ƽ'Z,}M K|ŵ͔%Qn =CZ ~cE_1y-zX#haN,U5Y&ݝoH~5RU"Y:]]eJޤϸ#ڴd# 4LnM[Uʛ{ <ZyS8r<c /  []wʼOfPHomqYX)9m |Ѹh\q.P/l! y`uYX_eY| =Pw00zQ*4}y/RRQ/jC곴Y2RK*!! Cupm`Ovt71#=08E タ:>'^\#'cZ~k=Gаk%._湿+LDjtQ{׌ G2?,ѫV׀'٢IT%a.&gڠw e E=Xx_[/64YgG N#B ϩ s =X{ uäD2w*>)J[6Y}/k$sjx۸V"[),Yb=Ӗ{b w.&jJi lCLJžL˘:'Pȑ؆*\]vTHp)@c _ZRmH[xPtErI!75ǔ&7xz$BP[1&A vS|P3oV[Iz'P¡n0Յh>}xg/_d-л9g8~g[S[jU-}$֧3r6tA`)Z'bVH_]HW/|M"|bL_Ao zCgehGI=>!Ѧ .0k&Lf]ӎ%AgKY!2yMu[>?]}yDs3\UI_‡SLU?j6h^i$Hιc_AgzeN'pbw:fCέA&"O޸(훧%9\fkigœÒݎʷUus,@HtlnLzmGpWOʘK?7{-1eN|MJjhyE7`@m.#ͣ=}y=h~ iө#jiI0`42)?gDD7y4m-'%gvΟ(4(M-IZfk{SzŦW]PCyS'!,x15QR`vk0o\m8!rR!yUFv"(c(c u$r;?[l=}h "BK67jʒ%9J 1Y=l@YV5kYA-`iF@ <\cؔJHa`4_-DŽJ'[\98@uOО5 1F,]4F!l0Lt!N[}AvLA]v]Ga-%w  Rf d+;hvu> O &BB՗EZ&]V%c;Qj)t)X LD=K ZRl$ _G[{'z)?*Ui<|<~~kܮX%Yo[|PRoNruҫPAUSuhFp̃ct&{Q{NpN|RV }CB%D0Ah3tLޓ*t A &WȷSuJy [JܫceFO54QqmLBpzoW}…LG$E'O|u IF&h-[߆3 vЍ9&@f# :+IųXFcLz2HCײ]+I^(Rr+- S˗Π>L0å̉3 6UyӺM~_ ٜbXgYٷZo׀x~@^qZ~}%vX*JG*GlԊgi.NŘ۞l3\HTN*)Z ދ@ xsw|lT]GH#]GҫR56ޥ7w $-ț#+ ~^͎a- ;mJV^^]!]Q̶\㪦\i}kLj-~"!Q 2;])$ev ;Ljob5GR0H "gbJ"e߃l$cd G*VRb𷞔ܗ lߘyfV$2'*L!U~底-r2I%DM.,^;}"J9s}`7DRNŞ.?$mu~aUi= %*Pt ;<ΟUpQO',̋G-wq?k=J34):]ꎷh^a sW+u+mM=x*Qu%xQV<cۖgԄ}P3PO9\}Jf|NoBEMe1JWquc 31Kw#ٱvzO dy¡G5O7"X- +,qw L:Neee$Ƙ0zai]go@"| r( $%hd#8uQ"dr.;(2wsB8̹VB#H_aqrJf@p*VC8Iv**kq+Xp68p潷kXr`Х pkn퐄S9hFb"-6EHLG]Cq)Y2>E {sTB'0/tFC}uy48."Q/Z`xOtS<[luk܃@jHQvNlj*1k;Xk{Aq2c\,R wHeOU.hϨ:5Atl&l10q=vPqKx{JoZhnw6mJEif)5ڌX1 pįy4>l:hgLzlSa+#@h=+, Q+7(zZp&mVuдǨYi@&^?} 9ƺ'Ћ.1X0wTl3CC4\Kb4 vG^VN}he)/>db"qdR8»08ցʘrpwT;e#VpHB=ֶ>V'mKg w4GhQQOQRd'Yf4{Ϟ2U ajkoj\ynt-lxo_$gWzy<)* k5`b8+;8 ̒ r+kkJ["]FC)}̻U߳;0H蒳Eq~drFFB~R` D} u _~;i>1LI.Z}7r"!>h茚1u41oZumH| D'mVׁ8x1DlRگ7P"Ez%O6v>8s@^C x<B^N'}R-C~c<˰n 0JQN H%$&%8,ңzBH֣ȏa*0IovΝɱW+ݦj3Ms8rv|}06˜`fdtŕE2ɱgu+le8w3YO(ǓLz9,m6(JHDe¨?*y[Xk qoىnۛW1̬fVgPh q+?Zes,|L `&"~D1Vm;?;b_>oi|Zr,wVM!ѝٻNՁ\M َŢSۀu?ƮsMp^8Yٚ.aClat6R&Ď1Nk8%I $a&9v@~ΧZ=Y0s)5% ZřjK!0P 4iSY#ĬbʔFT~2yܰ_q ^\ӯ\[Ӯ5F訳 k%CL|_a ԿbKR뢂3؄ fms.;cu"(tG:CKE Ah*Ip-ן]|1FŮEB=P_1J~{c{!T\uU}El$cnWitJ-) A>\LcbI7{lAz+?{}Y.#5XmgEB V*^ f1 *>3y\)L!50p= (.g>4v慦iLX2'ɐtYnF/.0QX nW&yozb52j^Sȅad-ml h龜zG)G] m=?4D[v(I!8Jgv'_$֐gEJwQ R| &{dǵ6A1R#O[ڞ?k]rIw{$Atى CD8\gBUAy|Mx* wHWnjU))dphQwW( -wo~+aEq vu[{:zˉZ] 3uPrp\$_/9 ?pS$M2 h-!~tJ8Sik2XE]dɓD,O׀FЌJ 3ö+~=ף)!໼#L^5ZW? WL@kzBt[ߙcF_J x_z59RZ>RH$0@"+ Ru l d_V Dg nJU$UeF1BSvFzrhTճ+_6* y "zbwkvMA5vHc1p$jW & {Bj;i+Aod{! n 8gU~0[ ]6oH#N<?ŒZֿF?^y<{pr9 rܵDds!'. VHRo5CbV-B|[/\"]SR>]D/s7M(  c<8fU/}f (ss(G5m{14G.ȌeLgPn-[٢Q{~%c_/.CROt:Xg˰1Q3\v?E=' v̖PUL;Umԫ򯘯["XԦK25fQ g71i+u8|6 K%}0ȋ>;FEGd gbP7:V}I0:ꟼ4(T0A M\I8[uD=짜)q I46Sb}^Y4R,a3%~2sVңkm'r7R7'R\Lyb6f %^ֆ\JgBR&gh|<{@25l{QYn(a6㋟RfZf_kL([Y| `7WMk8oOpgۭOMvs3xMSg`'L.DDubyv pqog5զ\*ڐZ9˼ ҀΝd㲅~g>&FUʀJO/ۆɮCW[@9&`^A@uy)*sټ۬ .KP>nxdGBs9n$޻R_XdytɢϨƚ^8EV#+txl j+?l<ޗؓ!w28&{z|bzJ.mY[Hwa"D (@ N5 eqf uрVGiLS)@j6fK;!M{ٞr|Y:>Y"z@\ 䠳;ցilS9ʽIU gtorΈpGrnK4G=SN_#MXW0ǒ>#^gK*,)o2J?BG7rձ~Wy.mki34䰲16(;l= y61%r#Ht yt56b\,0 Ky] Sz}Uo3c4-QZ;JP~VKB R(QڳuQ*ƕZq:}ia^:Q%9B~=Μ;Q2gSw^:QXW3 /_Opx؍ĺ%\#!kL9-K4 ӰD_3b@}&v DWЯ}-n,4⿄m56YӘ| Y9'֬"uBHD`kOenMV};#t bݶpchvyN&V88ZUpˆ6xLJa1h!hr%3ɣ+$ xVjfȝbka°άpqƟ%<.d+YDKKuftjy6 ʈ;#9U6^~wJ&wet;m*u?xZ Hz?F)翰aB'xw I8\n@VVL;;$uyJ;$40踟*oegxѐ{ҺNDp1A! @Ιϗ;Uiu>5dtqXP|KiyjiOy jtV'O70~pݤH\ښR__#,b)Rٖ [mn]I!DeE îIuI//sm |@R+w\Tp']_ϖ'6 oVaQ@(@EA 0PX Gq;qtvG/Cf(ipW`_7Kten7IƇ4њϊ[GZč~(:6 (^d 2u˺<,>B1oRﺓ4FC ГDf3!51c؎7c؞b ^pwUkthCeI4K ļ[7>>G܅.qO MFzKWQ4;Lj$r9~y&&dSfjc@~Bm4y/2p`qO,Lh3O4^0~ fHv6յP{Ȁ ӴQxڂe2y8:}V4DVbg]Mĺ$j oXf9$$r;f+7ㅽU#yIYbW3h%>w~df 8e/+=2ŏfK[ηlG2G}J5ҍ#N8ru0[$ z0>BSVڡ Ӏ-m4]CEBN9ŁdENdI}>0. ]psCѳA.uv'ҏьFFftq*"'D!>[/2q(z+yP cu՝$׈__S3bRE֘EfYp'X3u)Y%~;g,Q?*5#A]8؍*_kLCa$hޖV0|=dn>)d]B~܊,.lҌcZK..g?އ(ɺ:0΢|pWsMIBan#G,(3x`3J/AZd)~v<jV v]g%7'im$M?Gs~cZ8Psbt~) *Ll.Ԇ_֠28bTv;wWZ*i 3o|$Չ ޹ⳠQf5(rAC]M5mhywF5˼ȜSuؖK;PGtKQ:AC-䊼_$VRɸE[i+D ߌi8Muh.HQ&x 1> 9N DRߺ1Xo#!ti׀m]&oldDӴ#yٔ`F;qˠ$ _gVtFvClJ4eX>`4-LyJtkpaxZ1Sd-ҽ/xZj$Ǔ)XeeK*J2X夺eg_+Ӟ$[ZƘP5'Pgc4ErKN/Hp?V<Dž269]ႲaʩR?Dd#N#rHUBD'M/DW RR/a1hD6ZY}3`'-kx1graO(J_kInCF]KyeNuGԉ0'Mgm1l85,9wrf%fq{9R`Ԍ`{wi})4FeACVeƢ m=Z 'pPσ[qC5I<&o{J:)e08,."+LB.na(1B~0JPq hEvar'޸!]t OgKg*9puFT[$ @SUЯ#e+2ȪG|q"eы,&`31g_{tP.cJWhdNFtelJ/>L$&cL@^$SDRN˭Wfh]Aw ]u\ ?<+ҒV,eis~+` (O,%@WxM=([lI= .Djbb1Z'UROaibdL -5E4O5UbCnLJ-9 [E)>嫞)2`ЊI zbl<Cn\Y{t`[6IM6fEc*4ѹVEDqn3 у:woҰ&fJp]/kow f5R͠cyq.VsXO4Z~z+A]v^@ǐfxr`;?t*V1ԽA^LTU<. ?+-W4^*&&P^#Z"D&B;Z?w6Yap:2Pٝ2lZ@JTz'CxHDUGWi:7v´({kAZ;/g:br-_RةGHtj24mS<$(`dm86Ϳ=¾';%jS9-&Na~lzTRdHܲNM@8qu7?rs+/0NCb7θ\ib~BBBɸό{8ST'. jı%nS2.%Jף#wdNyat%Ȅj z1{rRGՌRZ\>҉K˔6ް ;F+W1<`ry7rYzz/<h2Ⱥ(W[L Ÿ7&Afn k=O-p*sziXgRݣ<9fPW,`&+,6U빏gPER x@~`nV@TXU'eC? Yv>2`tl`d,$!28S}#t[*QO$ڧ Oψ5lg~60V6@ (!y"Ð9-.h\83p!UҦ[PW\ȝW/|< \/ƣ/|WNy.3;&? 'sM)vf#١8DgxǘCp0tvY|o*o Y" b>+?F2Wc_efhOZ~A$0U%k>Xo㭐d@ښXsSkJ8̘L$0KJB?zn|SdvW-}8ʁ#̶jHXW!3?%ǚ^m ӗ1M6X qnV#zі{àI*ϓ#}T$t,xom.Z{>g{GIՈh/)ZI[Q F ߳4O"5e.YXBcV6糽Lj2Z 6x)(Xv]4Np9v{-JFgЂaCݪ<]xRZDkb@tߒb Q3Z}[2}#B9i?J\C7v(t*EE+-Ly+QY6/8?Ѕ塀[FkG +Cb-oϳ6 B1G;H,Yʇ_ O; F6LCi1yG%r- [sA|p){#CJ0XCW%tRvzQ 6"HL14艐utfԡ[l6f0HTȭ{sf>RbMcCc/KҊ4jw~ C; +Dҕ727Y 4 ]ㄎ)&_fʤ 4G4FZ+ALL0eBWOW$Ò$ GQ$Y9MtPhayt݅7@q\& j6kx6X!>BÇ[@]>m Oy )cO4uǖ@UOb`;W,u!}zFYXdت`{#8R[v #00ʼxHz Դ?"PΛ"Q̩rj0 g٦t)6˜xLt*WM9VJݤqq\),gg!Hr㣊tɳ* i4s?X,mN dGT$е$4pg^JXA,~3-Q#z t 4btǧGs8&J6}toT|w3&)J*x8e<;G 1Fxj՞!y%euyhK;םe*>B,I9TLz ۿ) Y׬^Q8ѭO54vbQ,^XkēP_%J$,TT<]S]Ϗe]^9m"tky k ͚bLx!֜DLvUח4@]ǝ|;oak ʹNJ:R<>]QSZ~3ge<.)&[7U=B K1vqJtsu',[ Wqm׌;{a dlӵ+Jgi]XI:Igrn~8˔xd/{=$tc"! nv"WnJnmSn' j\u< Nz͹H·=RAJ@yVl@[Q6g5q.lv* &MP"ЂݔJFmxmfĔ„7naE1~Ղt3K&Ww资[ wQgPU}j%S}l5OLa&"pԺgT|b aJC;CzC!oY|edF 4tH^ *SzGOl=|+H"ym}^Ёc& r5)lf$MzYq6 b,׾?§.5\K8+I?Q@Թ !ړvh$'c{l-wi[U\I8L;kk;Pf~x[ 0 x<WmMaS ` Yl*b©6~7/|V>6> zFQG2c#Ⳛct$O:/5?lLzs.m?P2%.,%{m.Huc }ST3:̹_uU3HbPf!PXd2ѩ2UV7o9\՚Ur'W`u_zÁcw=QڐZ+#e^,I7( gF$)! _)tg>*)Nv~x'G,?bǼ c>z KzBhc%%. qd;kA:iDGm\tT}oq61<ӌxi%|:P;Û,܅' څ/Lùef@}VqVN1MFdx{B_^X<~?wr W&#ʳp0sZ,y:\Wj yp O]q=o{= ߾eA 5K40Y` iFǷ#ٳ! W)|j_ IVCTY'hƜCH3xrV+HB$OPv3aׅv|e3Ⱦ3' Gs#!E?pjarg1*]S=IuT2ʗKĈX?A lV}ieVψ>H|f|ũ4 LW-`Fx UezsNGyn{_~gs뒟!`!p&3A߼DڦLHz^HF\K,F48xJEn+*- &_P0nMaKG}\Wz;Ĕ=Щnc*H''7wPG,tO%_ RicFOljm"aPpWk\fηKk[4jSf:&Ǹδy`8b)͈ii5u[EcJ^.ʸ2,'y:L'@~]FoD 6h):PY6а:@ eNӹmJ .KU[ۇ PF"r)[c &ސ@2k:޷oXI峠?o{ ^V\Ea "hT[Tuq΂1'Ƹ ]Zyg_0Q?`~Atj'ciimñᚁ[Du<ΉZ^T yyiё-}gYBuSEWf6@z@0p^)Kb?c>NwgK"!ǵŚDţ㋜gf 4Y 3?/u)ք.BwWE.8b@WNATT<E! ؋ DqTDlK5_ IszζTG*P~6tD{>Ċ$bcکҌFsoKC] Q8b]'RR p>qhbPTP'KQ~؍ppKқӬ|Ջh)^Ƅ7{a:v҆&漚f_ni^$BmEo.0^mNMz4w~k3rO\>^Od:i| BV4&/yQ-ԂM>=>O m驞0] RYy$5Cޡ7̙|>Ht OlE]_;dz|z+3؝p&oɦ/N3=ˬRw97@r'i3~MdE$ tM s +45+`n"J!sLotBi%gWD'Q]KEEط)0]cȞI X( {^ ktO tm"$.Z _Y f[m^RX{%&?FWvCٞaB`wMEm{NT$k!EVو1~^Je bEK}:Ʃȼ˻aUeA\ka2 <>F4 DcdJ ɉ}m$vB%عћ b t0;>ts@0D|sK3EJiOBxSGeAU&f-||q2KKF\$#7^blhD#8ArmiZ`WL|^Jc~!ŰZUS $:a/k>KUfx}msN;DۅSNqh^7^j _;[).ߩeb$ }˫U+IbH(Rj;N3;iUJ+cCT iJ'|=J[26 3=qxlO}(6L:$R[N}D Op[;.!-v MUߗ je 'ȭ%͇IDHھX=<EXʓ_?f‰Z4`̟"Ϣj- -U-Y^)(g~gnX_iҠsX2;6>}_(|C`$> d&3ͼNkTv {jIOB2d[?y NK¹2,%4m-Ϳ):8!$DpmW#^71Q܁QzɦramOdFS,{xK3@|k !qR9/Ή#H41VMu՟mjz@2U5bi/bgbb#< ygx6XYXevdh]zPs!ޚyqҐ)Ho% Cm\U&$$i~m>&eoEH9gςpiE,؇ zgc ])jM=p CRwT9E# XiB@a᳅ Ŀhsdı r4+W'+Qro| 4 LݍSl#bP)^1}rtF즖tc(::*T;G6k뮍tV_*,O-7,iţ٭vc7c HlwqϨk۞bE qըz돊 !rS3+&J>crO7{u[?;$[ -yt(PʗE#Q* gvzѲu~qLq@`1w)B{sZsbQq%{lMϬIԑ 4^˯TZU]~޿؁n]0Pνk.zj[׊t>3meb1sNs0kERQ!LOf zgZ;tE`]tr?7v)w,n#/^VF .wdY'(FJ4~f*Nq [XqЕ,PߟNBiS[P5:73#(ViYPԁ\ )-AHXk8+wC ]*v|\7 g^x7>q>˖q -@5brH;\f;Q<çxDE#WܷP^e}b)/P %Fo 9Rx3#]2ojĵLq)zNhj{~zoEѼQ$0y55GyY4]ǕͻIJ\=P>~"rfZwgn~h{nsY [ >h?e}yaWb;:BFpZNiѽ龡ޔ59r}vBrܥM\CQ"G=r_HfnK~34.vG yPO4Cp38LPKBVDVQi)̧*H?@ ٟ- C;1/D%3C~16  PmMm7{qq +`i.7LV;D- pn R8M/ºg84.eYͅqJtNXNo%dJf#c-a'%pYŶZF:rA]ki[qf WJBDdj83  SΠ դ<1F-:s% :Iĉxa:)8cL 8I雿l݆CB4aKk$+۾0LV w,&M'sA=m]S*=f~O!. ; fd.I ͽs.;kA %tФF q|jY]>Fn9CP=29~gk=/s^bVK%C k Q.z,֍8p#wgdAQtZ`Jw#kxSzV@MR<s'Œ@Sx}\*j 7A:/ ۚo, ʶasqP~4 v5kcd[V!q9Og*t,7%/@:2Ax?k^F%[5hچ{*'+ʙR+|UNhʲ8(F".|FI}5TxtS{ ,~)lnQ4%mWE2;<6 ü *'3;Rpd~l+uuޗuw 6V|kS7KxCY؄ӻzd FvZV3n:9 ;<>)YbVAxX+oӉA ?a,f ~eTTߖ>> epS|U|8-&sH̺G9|\qS9n{%T{rl)4̡*R< :OE͇M'N-$O^[IpJ$j7O/'lbVH +|Uq5dWw'0 t)z4!d6HH\a c;:}ӛO;yt受{1o\_@:{Ws&+-=W@"! =Bg͞Dp ¿qq\]h\c{p8MdpV#;Eyڬe7JFŧB3ڍs+ G dc7~1$Pn$oju,^3G}I=нTչN/VLׯ͐)TȻfH$Hi_Vx *2 @5œ7d2Bbd쎋7i J rX,]0h+u?!Mz =j}bY-[y1KzX!+X&sd`YtǗC߳ +:yd5g`Sc:ۦT{GKbOş =mǙ2U$f_9a#ߡzjMׅnNmkD=?ŕovma`V=S2f.gU<дEW X @@jj9"B;L^4 AkҌVPzL4c@>IҤyi!̓^| 5L҈ۀʹO)]_QՕ9.3oCYF[dIRcTy}a}(,}6'o^`I-:hf}wb@?rfX Ia΂XtڵU{F[=uv2ͪ|ԗ|~s,Z.n]v3.]R(\r s1A1Dxtnըꏢ uoOD}K{O 6#{Q` Y5{oy.weoBvHW8uB> OKՇK,FWx7'/5l;UBX6[PoɚO6ͪ kxe4|&rm'H1h8j]exNd[T$29#n=4:gp?T!~ÁPcӷyv)B+f:5?GOԴYDQgm*epud]/pQ@T61!BEy0S0SZW+f:~P׿O;'%h2_\ |TRO7.6]{6߷1\lu 킔DA*uJSTt"#P{4ף!8*\8"IvȈ %9óCˏ>t*7ܸà:ۥ/DO3_}7v/22f#WW]v絜-? 2uLsXUjx>W3h81ѨU˝aO>*rкx@]XYNcb.4|ByR7z4fE/EF~T% O)W(;pW? ͐d,BeECvĝC>Noeq1%Ѥy.^z@X{5 EP>#0E1wsցB+$ QȉE"F| %7 H>"VץCлGRnyr^}K;Z:hC͚43$L͋JZhJ02*T _~ A6!C Ԕm0F %]7.x{z$n?~vA[ ֪ .:tZ=aבf1ȵWDGwHjOyB=]9əJ=U~^&8OrwD3MD~)40V4'0P"{nR^()χ -0"Ѽ[?T1uU4wgN0A6b؉aG;+Gųe ?u *Xw6dQ[_Z6[vc:Wx}hzE LYJ0f bNvLk/u}Sin6+R3ofFTʴzI]|`_4dɅ&Pa}H#ZDˣtL(T7Nڶӂ6w9?Ia#YA?* ]}GU8.7GCҘ:jۡ>j23Cu:8@vnD7Ѳ TK)i1ї9ə2Po贈Dd_DYּ$wje@/5c'%I =D[IzT'|)'Wŗ9TÈG~(R֗&X {6'0r_f3տ6.zCɢ&fZ3ῴXP܁ sJ;^b'}a5 {bYRܽht 7gI;g~|E4;i44j}Fwж澲vg]@*Hύw#9uf.hY)=kpW /vm*r jw@Lgll/|s\׶Ԑe6;MwzOvMjGF+*Z7K\{xKÔ3=қp-)V(!HQÕS )A?@|!lO5q.sT/b8o TG߉܊Tf$P{[Mo_z,]ECw縧M:wZe?eȨ0 *!׶6ClUc~lOy:DvxR xDT3f¿\h ո$_KiVȭ`6i=۲g_)}"l8 MXѰb j yخF}PCdBw]a_5uKȊwP^IBR>5cfʄ|( \pB6ot CPg߀hH k4*2caEСow툓 }\3>%c*nex]Y iNF9's)4t㴬6Al`-ksy:(/.qXIߞ+02zcBUy!~PB0_ fmCK?/ܔaI鎔E1X[5RnQ[2Ԗ0BzNJH?-D‚ěp\Qzt8 8`Xl)na>k& ) 8w0W7\C0E)v#Ţ!tR4\38\eC~j;-!8ufA` _Gq޶=C;ڂdGW9rG2ÕI!C`.[Ejd4~k$~zYrD7]BMe2]N|ԥª` '_S獯v0uǴFU>'w~Ȅ*[WzBM}vj82%y݅j/5}(3bw{@UOB^lm`op))|KLnq ӑF߂yByeM@|}8bwLju4mF;EdjB/A{?Za"P5C4T=aW4`)Oͯvohp-n3TZX߾qBhcx=---O۪b ;dŧWT`ɒNΩ˗˾t7 SiƮz`T`Yr:iBԐ$ǖ bݑڇs`jX7oKJǟKg 1yG`N- Kdy\[P+`oSڪ7vG咫%|:zH!Br 0^4E ɊE'oj,ʾB޲R?Gs./B\lciSn(by0 [@G2f'q0L $iKcxy)P I0@RJ׳, >6-hDKΆeƟ:*`v*(Rł7G̠G&E'^b^+w$A~ȗB $4E Ű6)Tc"UaAk_͂3jaaJ0%Y:&XBxVW9)ݛ)餘6<_+nM]%!=ʕ4K8&͋.YѷK/cfԸ49%SY1? Һȹ2~V)IĭQe#GsYpT3A_jrDxɒx9o|P\k K79A :a~}!kXUvg&ᵳHoZe@,Z:3Rʩ6GBi9Iɖ`z~>`kնS܀$5O@E W?:~rLGJ.tݎsQe0ѰH|:Q&+8}hGX{e s ꘺Oeԅt99ܺr~xO% lbkEcSzO~e&R2K; mB4\=Bk0'.oq_ag%Ʀ1bW]o{h}Jd0 ~)\{ĘKQ$FL"tX?aAg"=2 idZ.t{G4ς x 4VOŬ8} ݼ{1R}Cq_& ~sm TUH t}X U'\+<%_S監fmcQȅSƳ3ˇ7408M1WH_gDeQivj#8 OXK Є\$S2o=c}09۴[;@yC]p<zϺr@{Ycz I)`]zh1ܖƐԽP^e-8;Hx7Cs`A;%nQӼ EO.[Gl(ƭ~e+'ICDt@G,ߴ; yAQq >Z+ MѬryG,11&lFn˴K/O](//],BDΡ蜘5E\. 8h9]E )C* \3/D|aRtOuQ䮐$(![LG>:h+L9pL'C,4=뾗B>UP)9e7{XElط)2󓘼͓q蘃v;['eX7[}e8֥ʂY c :堭z7mpVnP d W0#BZO 4zCI*;-Z3%nUxd13#!Y'x*tyM~M†ҼF}kGe+ Ƣ?1p{1â.-@ 1W-(~D6j:Y4 sq4UU1dT y,65w6)EI'}| HQyʤ9%KUu H"f,e0Fr2j9mKUM "}>OLיueP=&!VQEV*Ox9V) )鱝T g4 r4P+P˂gNt".z@1I"-C*t^yhKf?a# Dꒋ%ĩT;eps'1\ֺlf\f8τO)fٮqUeid"e[ (0 El!Y59 :]3P }:Z3\1Btq^ a !-(_>O'Íh⮺u"aWO\d׷WNF~bXFnM'†{qG&b2+|VJVyH OK) εMhndK~: D6K K=MgR^\;S`ٱ%pOH1]pSQ4q>C, gvzG!Lɗ]ᠡ.ˡpXVjRo؈Cd'pWhi`vxw+S#&vWr׃ě&՞x4 ]p_4eځܙm%~5ςJ.x*$x[/MIYM/4pLG /z߀"U ~coUءh$.Ztz^]p:xn:8NSydxY/?|eQ '1Y_EdsG Yi,N붗 j9#޼MFc,Ē >ZgOg\ʲ4lY"ȘMslj.f3o,QtX%.8o|X@@nFPFPG3zioa;J9~0̩"rA.6\ƑOAj%2eC~ohS)d'd3G)3Xw Z{rE$-γW5eNYO s2) 3G563<ԚsaGʭ(FvS9;͎z4-v4[P|_|dɋseu0݀ҶB.%`U6Oh9WvEo Uy@m"g orv9S_S3MK E 4uōdUf`r5\<@¦JďݷsiA la}h KB8Biڀ$lV Y)2j%`Og!ߋyn#aJjZ ׿wL5SkO>J *Q3C:AHDe/ػ-_rI,xcn\&x"v|٥3HGsԝ0pjYNJ\g>=η>rO+qK[⡆OͲxA 86l!k! 9- w'R9@ _EE$V5.t KQ8,SO5zh#CIi ArvW-ɴQ-6j)<-ܙ=l{۝ ݿC';6HY#yR$L"}PqƧl̡Xǝ˂˵MsZaRy6Ȁ̚.L ˷rbTPb)s?C2FG?2g319BvHEb#J8ڥ r|rpCk{Js 2WN~e+B$5_$c:2ϓqq!RYn_,FD}%(hdE 3 f =h"9W-"KѼwHN U0I橲hwh 54bKnZٸP\To41%nʥ𲥭awXٙQF S ?Ft|Ho.{^D,'zy>5k[l>1M+R FU.M E Թ>M˭l9U:+wZI#cm %gcTFawGìX 衽V/:.zf\hz{;: 8{C0.ZJ"RԺKs"!mJ!2?+Ch2њu k9ʱYEZX{]yPt_)+C9yw=$+ѰhS(XL{iR4f%ܸwtfJdA{ { CMw#̽JAi,2\c -5*;u\ҶVȹq4S:/2@WmISu Þ?˕Jb{3>n*s oAOMPc JRYz!D6|ലd0Ƕ>é Wi3퍉/U?Wpx IHegN*(L lJ<7?i>7) u( < hlM!(\NyCѹd+sh\nfmxP7VÉVI(US -IF85X`❥j~ȄAg;0YU[Y[W`!7t@85T͉r.@%RCYF 嶽YQ3Hl$ "74*zNPw}|Ng[T 3ohW7ZņGD9!)r!tΏgNp* .''$+JkHg0ٍ@_\` bTTk&}Wp}}86u#šzk*+P띯U+ן ޵ix@}B'# VQ(q54yUk0g; ׷ ItOq YRwOZ@GiCAmRTe%GKu!6@4{1[nàInTȷo!Oj.̸H?? aTgKUw6c_V1 hJ~} +LQ$NY' SM-Iԁ)#@J;ZMpعrBa>|hfn挚ڎ5=z+ _fnHhqS(l.x;dpTξ1Ԭo9VddYg3s"X#)NE1 f%EB}PSz0$cV"9>H܃f֔WPOM4UB|3'̱]cR%tR$PM!\tap(z0BH(}ؤ Wܟ#\Wߌ,:~jxtw"NJ,'xp 7Dw| jTC͆IB|spY*p܃Qmv)?/Tڴ|YT QK8,=[Ҁ[6N!dwQ.UC1N|gT&Q|茑Ե%N8~ vbɛ ԀQ6P+Xnxe-J#Ĝ\5>ފjoN' xMq$sIf&WGrxqTHYWGvuȈoRE5(znz\Rau[kLbo5έC%9ƑI.5@#c~Wqgbt xw㞆i!mA,5N=9Y* 0֖CQ6?w,k9%Jey|zP'hЏ YӯqY ,F(vmLIR۳[n;Ed]q~X $C4z?1UIhwO?1E % ˷+Yi}0p?xbrZƥ;"A<2GjY[y Ya䐓L'@m %l<[k٩3}Sx4cgIF,>Ry))7?6N'-S,3^bʻRxAhD*$Tt([,Ơp_sX]yyjͲ bG&0NH7;JWNYI"X|3xb˂%-6'uX`䖔c0Hs4zAUѲuܣw,]1-ւokұLD}>6×P6@̪M魗ah#F#;W]Wy?8/0]-馋v&Z E܅L{kG>wfHgJ,jHwxl+g""v0R!K]뀔߱mDt=C"^EG410!"r Lq-(<*4xO 2E .5#ZBM8)Ρե,gxUv^6! g&l#}&DLЛoҀAɦV6@˦3D!3ˌZ7I. Ik&X8&mV^jZhMXBzO͞MXl̜I׉GNN;-=Sh ݁-AMn&I* .i숣LX2us!-– 4=2s !x13g~$'$˦$dk= &Ѓ 0 -i@ jI$͋~#6zokjX̮Yzh~0:$`(bRxn4q͌{P`XBVڰ/1xf7}ɩ3`Ύ9>8Щv*I1(# *$ue}b@Z&9g eF(3ndNz VDg+MB;^bDŽogJ*!޷*jwi | W,x,hohiGY4`1"m{^pf\Uw.28(뛻Eup]z~cRKȞG=e<>8ݲ$$.f !%i32\ܒ5e D1,%+p)QCע;|Y{ǔJ](Z3P+3 w*R[lhmi;! />X| u$;Hilq0"/6udd4g|1LWgF<~Ҥ$dYėa`gGvIsUfK#?f7uNa@U_c5 " JBFOX? 49({dPej/v݅##v] a jレ%vQ _Iǩ2ݒ`QnZ'Qn2N_ֶYF~]ڭ8LhШُs}ڀ֩`'r3CXLCC dl;!l r/D,l`P%qBy )B &j`S4?2* XK׏:[W]S2γeU"ݳT)}Fӊġ52!C3 % 8 #krɯ&=\ѳ'Zd^P0ЦD yj1Z9&˯Kl(%&`n96H^uK2<@p -*AyOzI2`YL30l^Xd{Py3 Dyai~ܓviBwHiA@n_75L`, ޱDBgN_!BZ?=l]~cZY,8YܸboFɺɜ8dм▱6rYCIx9$:XГ͉2|7]Fd5zYK+݉#(>Sd'xWt5-BJ$]JKd3 [V^NHSP5[O1Eox8vZ9b;{>UOe$\'!X;)+ 6QAt0ZOt,ꞑomx v7 ;w_\,Aˁ&''Z/3 %z nwT1Zw2<=M:*Hpr KΆ:"NK:LdI:ɔ_on72%V-MZ^g9tDl3;i^E^ísN;YwbsE 0o+f"7۱?D*@=uݝEB]MwD2ւiIi[);btԸ{jL5^z;3~]"@Ѩ>/"_D Ƥze;,y^4U}%YqFQTaON2ESt^[Ǽdf)ڹ$.^Ϋ2LЀGMRM[{b0,%C T$Kmc}_::iR ú-$<ਨH աg**X<7Y=C 'Bx^+tԌ܂.L7L'bxcדۻ c'HGc-Mk^c! IB83XA6иM!:+cyX)IQL&h5ryW[lvV^VcI@G͏|4LS/s۟;OsşC*c -}tFtfS#pQ%(sD#%˼y4P|cOoAG=*sdAlcuH.@f^c7~HbJ~ \PuUm]GGoDGɺ~ǡ**$å7}2OU) %SY;(fs,9وS2q&y~1=OY>mh~2@PS[UtUi;KĖ7MF>lܔ\q{+h]zXxիWuV|2QB5$ XZԡp cIW-OHP۶xuS[قӡRGMA/Q@nz #홝5Ͱ|xHN0Pq!\=7< ^C+#`QҝܾȆWBLX,eÌHFb9feF|2/楾|[j̩=wi(s=uY);f9|^z?dj,f##S{%wwcF~ژe@U✃BL$;UH |$cVl9N}(aMƨn#V}:zߟ=_uY,nZo'gct+gΡ~R!^XuTn6^ـX7u8Vqy## 1+fXdfכG* i`ȠxN%=^KUEz@zvŸ3wGy;hzM1D,1$sG*rE"o %'o Z#yfƂŨ'=,ؓK6'+14cԚK#T:_z~*7AqɱN0;G-=wLbOĴoǛ*'#T@am9?KÑ1} c[-Yl٫UF:Ʃ.Kt'Wp~ #b&`@zE_VH:~:]( %[F OJڭA`^zѝy8R>> Qo@==^ֈ99UY,`{F8&AX4EOm7_7yugvW\̉SUQ]t(& ݐ.0@ldn"oN.D_Ch+YMJhOa5-ߐL?ȃ>g#C4}FsӮ?TijozI=:pq??Fhxˢ>2g!XnL%e5GXcwûf6xoYf4290`JhpPS&wceJ&^_oo?Cr%s{I-UQ%%pe?rX8]mqUhqt]X^LSeaʠ:5 \kr<9S'Ry"wHzKYL8HЛ/C4}&ALU_#Q4j`ͻba!;W7~oFڱ?EȳivOVM!,ʲ;)]&&?[B>u z`2invԝYuu/ZJe +@|EnN0U =5mTpO @>3鳶dQ.h4'knw>S 9jB)FM `j~3-Awر%sS4{IORQ5`V] WnkızxVmW omG!irϏ 0_aQopЖuqxMZ"YJ!-PPyɕf.`<LD8%(JXIsNa@z`Pf8{2DJ6sF$.dM]^omn3- S<5kkPa[;+RqL71ÚRavP*`^Y׈{<%/ df-_hXhCg[}LуiYp/Ӕڛ^Duʿ;=x%)({r?[,E 2 F^AAݿO=4L=lD6^4цT ib qn$—>2,RhWOŽ( ¤"{90(.dƸ$kYtg6%֧WIC5s݆__.Mwq,"<*3"X:7Ӣ% H0)Ms#GS[7ovuWVs_KUL*:M@Y:3/AT'  !6zD!շ~ 7㳸Bù#y߆1Y8B XN )اpc_^/婀'=P"q$r'e$L?LV\1CwoOR!BXdXh:r? ]01iئYwBKcd`k&T ޢ?dW85vWmnf t2T%KoR,{"FKp8l,s7==8Ԫz5TPàۨBֿXa !6j/`P#x%+؃S&uJ>ǭIB/q⌣,5Z#7΀c(yI\QF<9UxYlV-RJB Ký? j(ËE#VN07(`B[`=/'C fKа`еoU 8-ϫOY]llŒ3m"T*.HFG#׎g5(2~XۑTM`u[6Rt=LmvL0VM V{|r M#5wu ْeNS !JX 2i@RqjwF[K&dr$. 3{2%Ae7k̭o5mi&ܩâw"dn6"a3~ ٲ Wlmwkr8IbU-4$V@3ڡf@Rr\ v3TW5i_*=g/8o@ۘK>& hEC Y {SR%trk0l hEdeⲒ:"|_ H>LʍԅUdpFbPnqKSqNVDX:Ku+ VX&eD3^ |a8@͊Ӷ˘x~j7㞹 ?M:W q|EК׭$o(YPy9 ^(-jz|F0]Q"TfKsGDq3(5M_گ"&//ۿLCwcn/\;#S#2#ɪp{"EeǑpk* 2[6_(˩[}?'6Hb(r5=hKݩ{\d2( >|(E2$ Tcs2~tZR, YZO^Jkc @ iޑAj`#=%UqO>6N!>58'IBU8(ΙK l2'課oP*6aC"XC%F~Li%F* @8M;P;62K88HneBſmf/H;n_P㳬e/Lz!Eǐ [ 3L*0]^J2'5#v&;=erI:6;yzƓt P$k@$_0`{Rq+h']HdPf[xT'NKLO}()ÎtY:tưA?Cj|l_b3jX5g(+8HsoU̅hX,0YCQݡbՊ ˢ<Fj@6x3aH'և!кp1%n4ϛvܳߤ[gKg ⫎Սu,R%O4nC%X/iA|) >sqP;4ݔ'*ڋJ;*hb #Sh0DSap`0ECc]$YLq)+7W4p@ClMChH<  sU~m$1x$x>94v6#&d \/Њeea)t|F*6]luB=V@OQWuq;I%QϼۡK_BBP$FR ΀O3r+C.'%Յr{wk͜"h`vc-ф%e-ܜ'%mWBud@ΝqKn9 %շ[+ %-Seb6A! kRR.škof{)LQAeg~=sR.!ܹe&*Rmr(w=X7ﴗK.+<_|0WLWzH#"8{H%ٍG2>WCfix||PgI$Z?Ѫ%bcuxȔXw4t́4&=^w |&ٴCuHqJqSTXYB N?QAxS5vV(lA$Kjv/ 7?kXvs` giQ_'c3$ 2 vIM7nP.ԹvpO0XʘQ]]ҼT2Qny+uʔ$[&LRl}-<8{A5mmA#3rKIe:DS{As^ \o 7EM2@2th͆ȕWHD3i)U>Rz $אʩY_-ynl!Y]&I3g#6z9 і 5:ܪͿ '%%?\z)%:+@PS?g6O_얯gnPBda]0ʮPppB2gX50'ggzԳ9/.tTa_Si|PeyeəXU*B`>@d]#RhG~i\cdJqe >8~pw!,BT?DkT~z쨈p*x1}DG6֗q7Jo? nկ8Fd|3@ ~Xq'yvJů=.XHHN%Lr\]4ֹJ Ae%[ w338៮iN\U欉(z].g3h3xi0ld#Ak^y؅<ۺ$GQCO %6|Sa B5fM ؽҾΔξ\(@3I4<*uP@ʘnۑREF[T j VŔT r QU|]t7JnmWVQM?8IrT12u]:[A2V{fVj qȀ!" s)ӑW"E{:0o9b^4hI s y^9 ҀU _4y^9r3`5] Wb@oΗMWᄫf0$yS$PU˕g)47:"Jc\}[,.n ) uDD{ .1;CB*uuxe,&B2s8k%տL&ƊDk癣T3 Eܡһ8{ruawt JI.ml~^4 AZ'X.q_n2; [Idƌl"D <#XVk9l,[PG2u|wc`H語6#$ޙgYL/j b'wnr،ͨK/÷]o9.@8V?UF,LsL1or0܅F'+uڕ΀L KMܘa@Lh#Jk,K%8N}:/NJ$JTIXM?Bcwjf@cmx<a)?-jǐ$1APJooJ> 79)a  )-oi{ ]ϦYgaOS5(s/B lY2 GyVVQ;խfsgbuMLRθ%!79Cu +ZlqUJ;v^׷`BZDTpm[mtyR-2*3 ӾDZچ\.fe'N7@rL/ HKk>P$n^>'2hM@l`6IeEQ-w?(ޯgEYVTO~7 0\2_b3DXp[_a(m5cigi!Կ#o[y93uM$LW:<"gY6p?^b#O?Œᆍ3j~.grZxyRZ(߹mI?0/)<XṄ~Wd0$Bk*V }Qw!2ˎ Gˊ-PY$-d؎uR0L~LmCR|-@nJ1LKçDR7.>s:D٢4vs[XڇZʳVEk7 :Sep݈j]ƣ82)eKV{f!(c!vx*ӵ[p[4t؏9$c5]Bմ/qC=n{,7ղ;20#\~l#6 4E~hHu%fbUm=FeQ"@%w (jb\o~z>(^*\]íR>ęAՌnF0/4vR,+L]B{D cu9 {ڿ+hUbs?D%B=,b|Y|@z+B I'`bbu/ e*θr;v{ܡN'c 3!(q~eTʅrٙ!3z(7^[AJ(R0RFd oPMk#! Iyp_ 4;V+?a,0l)4?a\J* UA202&knًʄ8ht㎳S:0XJ+3#{ӊ\)fVAaDع .êpPq5Ytm`0Uz\ٟ{U1$/1n T%#1y̼'΢;9m_ }x-1mRf (9-a/tħF>Kr`;_C6r(vbd&ؽi\*7k3Ǩ j -=79؋ېyL: 0 z %vߋZthZГrن)[Apx;pJGfXO y@v/; ~|M S]qrAпTO=)V"ԓ!k}\oPͣ95~Pp}/P0'] ۃY_/I./Dѩ~!췎;bFx؋(J5?TL2SЏR{00J؁]AX~O6fɎJl`fܯ4*k?uM(]-iB۸<ۅq9FͻlI?$7p> ՚0C|Oi*/VrP'(ԙ ڵ.AH~l3FqgjL*1|GƩF *Ȝs p؀#QRaL?4@F6P]i]j,.0 (ގnX5ߌ>^*t/q]E+{RqSaHտ&L;vg= q$P?~\ҳ)+_k9 4-׿&N'GNʒ@ 2k7i(L\Lv<9y벅55j慧x^C*pO6Y^Yzey,&omr߈D-ݢ]+}7#~cLL=jǥ7sM3D6Sy8hߟm zlC2 )v!aZ?6"?m/Uh8 )Xvxסǡ긦#1d>ڧp3RvFge5ͱ  W2/m<Лh 8/'u>LV>ovvY}3_"=jcrM#r;4g$D*d^uj@=^4! JU"0[0N-%:%B%VQ1ȕI2ۣ`i$D-nGT dhCa>Z$`\liR{FP%OQ@ǎ+R ʉ$>NH:4!'OaE8՝~4=MvKg3x\_ JNEXjum#ѥ[K,WT47TPvNNڿ_Ngz X In y aۢ{CBDaoAT!2 ǢMfCvk"W`Fc/-ga39W XMRy`l BRx$TxbJh"X m,($)%)kY69 ċ"ڡ$m;`*hY SW*Vyy|6SfW|W _$+Y '}~<7Ăʥ!?-؆p; {[kjZz+3~%|o{xrX3S7nQ`n❿Ƕlx `A$~ҁ7. OH cY]d`Dmt18.{.x ?>P] VwB6Zrrc-ъڿJҳH=b@zpW/#X e9ulWfH~X =Y'&. $GD[pgqջ舼TgO) 愚@y!nM9n,Z#K=x f]Y/Ib*afsΎ5YycV*2#-U 9|p{u)y;}~ N{; rZswxui0C]"N#@IC(<$/L'$HBH1M:Tɲdun?.iF58~NE[og{d]Q k㮱lflMo}'3b0R<0BQ؂q7"4"s00EGrAx<3c_TTQ*s"@1zr=ބUTw8)26q{Ouc!g]Mfl"f5WUo{rܐ[Lf)ualSfcz%qAB,oS_Ƃʪ>AP?i%0eJd}ʾ۪4JJZmyp:[<4Pi9'ꌣ( Ho8zSc{PU0Ol3()0[Ŵ $krK\km.ONxx>Z&P\|IdJ5lCm~D.1NAܫk3u`!\苮?#$Yz2g zm̿"t$MՂT|:ȁ`~u|QTBsE|Odei&ogekQ F 5o44EyA]ӍԱ7P9'!d{@-Nr:N .P̘MB; /DwH>*yY[6uͯ!;?_gm"%`M8gxdӉw>XڸuW%<`K@ZDGfYRsoYfP*ɗ@6yֽQg쀯@.iAkf5&dgW(t-AvvSwGЀ֥Rk*Aޤ@(UbΪy R>"7fc2lY S;/tQru q&Ԉi45Y%-4|RZpLڴ~cssfbɢY;lZܴ00lɝ?D64I xco>'Ű,w 9 *" )L}bA+U )GBg_>P$.=ڬ9$y:債dZgc$% iw9l+ .ԢڴI*ֲD-U4(Uvsrz2HBQJR[95Vant s5ޛh3+5a>R&׃5lZ]m$v(X &% [bOƿ&$Zo Wt2lbay&vPycPLris:H/Mh`9PNkڶ{=u1Z^cF)j6La}G-"} ׫NGֺԧ^͔8|YXhozqcY}'X uJ% 3mlgR.8W'`cL|4=sZOtdlnq[}!yrgDQ_<OkJܾ`6EG 9QLk ԗR ~R$ ZCH F4onEw/:$۷e@g}2뛲3p_xx\15? yֹxhQg(-tGB G>ҩ x9棜|h dPt9o/Z86wt])jc0<qoC>NU*`G{nDj9%Ĕ'B=/T}\;Fb~酙U4:mvuT g-,hGeFMb?vj{xg˙-5n\AKKju45wq $YŠ-bA >e+4#޽ Hi\4L-¤WrO)@4ugA>|Ir\+?Kz)V!ޫ8qqjD~YXpқ5eʳr\7#Q:}F]u?VPB>{A=:z>_X;G+OxH e=e P7Hy+4Y7>q`~ {{Ds+ȁJ|Mٿ<, q:匫L7(D =]jm_,B &`ヽKf9Jm>/"14oL'IŻS{-<$r7QԓqFix1A&WeZHQާܵ gFf2@ykAqA9oRkV/?U8y*) fN[1<nv"g?΅rU 8o'EE6߻lV6,]MSlL4.ir?@zaHH DE d"Ss1IO 38ÍYs(yaێ+^8<{C-4"''Ty::'𦚗Iڝ h8~)xG(UViMq"t([0?>=b0(f{펀K{k wTʂ,6PCzd4`0V|+@ LFâV[b*Eִu7T>mB4t!N&sL*< XG6׈sToAŜ)^ *g?NP9AD ,kO94iGO{G"‚/Bf ' B[? "GTl!F2fֺVzt"+)sR.\e9J22jI{3T [fKSC=q٨ծS`F?pJ"+h_}d7 ] qOb򷕫]Y6uѿ4't2ުW0Ӭg=8'[9BweR)rYNG;S^pLE= 3L27[Z7=3NS&zR1f)}T$k°}LSw\OL/lN OJ[.!!=A6L\hPܡ0Y `td¥p)zm~ـ飴\Cw7>OpXQ vD*&[pdLڈ?{Qw:Nph[,qtRCbZlXBj]RZ,mqY kSs > @͟Xoʉ1K}lSMaρ(yL迥X AGն 7j,{Rʱ6G_^en rĀG6^jE+nk]#8 XXc:ےь-&I+ Nk90 ĵcӃ;;)쩫ePv%&O;&u&=Q,U8WQy}^KF ʼnƢnT zZߋ:VP`^bUqy0pPo d @m'Պ@mSܡ=t]Py!xǗWgQǼR.!,|r }E'3 :Yi7? x0R=nA6ʘрIѼ6\qfuC{hYmJ#u aP{1 eߩFgQφ%~_ a JбulU]D^zQ,: q ;M[.*[W`"=?IQ 3ݓK>@?!=ł13J8'մ- :e7k3NjIrQ.W(?MFfqv4Gl4Q߉d)v|wGn9*AAT0{YPGD&*vY[Sh&p@$*ČsB}}3ᨊB܊wkXp}ʣ%Ʃ ȬSvfָ5%Fһs@ WAʧ 7%Y}V)5SQ-LiPMOs%mw܅a;t&UA.t&?2OZOJaPImREU\fOXUjvCp|g'IvS{"b&wl\.ڠ ?X :6Uǯ;JP|^Qs@'w%p+«T.SAM:f㶶f ?(WLE#u,]q:_ _`ZH;T64%JtF-ߕk;_nN*Oh̛02OT6GMšGq׮Ʌ@Lb%2NDۡ{݆Bx}/w1X7*N7.bELI_|=h1uVǽKWlWVs[)FsJSB+?叭I 2M~I_)ɞ0/!nF sڟ 6,XDW( GN6r_a0 kY90@,Aw@\*Gyرk3UЪ;=)a|~ZpJQvt E'.g ӑoA U UscPʋփݥZCg`4Y Z$Rd_rz>>{O p K]/6P/D@@򫒀<ݰ+˹*ҖL }̻FJCuhI~ qDSAM`.,$bnW0 S9MƑ~N|6soj~N CXfS:51;t!h<_tt+˄i81LJ}90e`~02 -xS{#kv+@N~29Ϝ¬j=?h%7{U=Zx`NgId u&ǴՆwƢ!T/9UPHOtaWQL9cV8qvlUU-Y7XY@A󠤪"q>% v㇚D8> z J~#Aea\c-ٯmTa((T3eb2pӿa1VAvVvOX!bا;g,={G2Av_Կt Msl]nQ5ń:0Hi *ck̢ `h:\}grcʾ Q-' !tK!=giMv|v%uh)ol~QQ3'JbDFLHB kl)F'~Iϊ2%%`A<<5١:$5=8q uvF_bG;.=9mo,:] L9߸闞 N+RʯK|"c$ңGgd6Fw85K .`D6m.1B) q&?+6usZo:tz7i9Eߩ\G^T"(h^^ˑ ^ HL}H.kV¾4s :3@{RsD3Q^WܤyY^0i3:`X/tgڂAs;pdVkԊ 1Ou*NY1~? ̾!7Œˤz@@,`9jhW'5P*76{g8M|AJ3w-”FDTH)&Zˆ@6H դʺǔY,f\oUyx[!]_T{]xS"owQB$SgANLg=p Ҷj0S ȏ<u\:P|okxN7rkLDs'4-su;Ȭ~4 0Wɇ)&,RR%K@ϞEiz*iy6n࿕Qre<03\J!m큉]`PU>ZT x'=_ϼm+u"nOHV(^ǥBG;uv \Vc4}zyGr&1hJ2cfkK.r_'aųLlÀ2zy45 恟`PLȍObĵ Lx<9g fbqqߎ 0Qw6c__}´ݘS-탺hai\Pl0RdGxpm9y$.M˰EACgU=$t[Z%M3T~?YnZwU~re>2qz'Lj 1cUtTDRΒ])$}KyKG>P™}*q~SQ9 Gڵ N~n>}|# <ɵ_O8wcn+ W,+6pz~pT~_Rj$e`vV*V9<6͇%[Dk'-U NL`!2H3V+BZibN,"ZEr4R?nM 6Xʇ+p ڸ + <;{l Ke$Zy.Nըʢ1XB \ngXk({xe߷68p7+2bgsṏ@y.Ўjo[?ZNJJ ib[/%nCZ֜^"F5aL蝨`yd3%B陛;ˮ  }Yhj=\%Nb):>qz1L Tz:`C|&Vu]?=ݨvf0r\Ěe0oa݇۳!; #p*h‹DBer>r x 2/fޠiO$?1x--Y.i,X&\iswFXRƸ |F@w{]@ |.YP—w0, >yIVc,9d̤fmd91*$bexDQmkv X̅f*rPDι"o> a摆,*kV<|@} Aƀ_JNJ { _!ٹ aB1 __kt|MC{M[ipr7^j CY`걬~RIoi.;mG=`*̕z8T%ρDz)\lD}Z&7  qY]" L4%Q~Hvf 6 ꏏf{/wiq+!pJ^WGt_]f$}Uw"5dHϗTw:RTSLc$>)CaoIZh@t[2wVb4 ۷|'$ ӋNwʡE%^Rjk;A .6#J:dgUtKD4/T$cQy G?B5毥&Kw&Mhw熂hF'>g.ɧGeKVzn# .{{UH 1Ϥgkm LS3ckKd$`K YʸR_qy+iGrVI AI)^K}8**.q꽂 ]PeDu"F^'5ם)x+aDY87{G<[i# WDzsAb"HGs`w9x$#I&z"2BS|'%H9Cۤ^y"3/c ?l=G*z"Ydqa; R%MNV-9Q!Ѥ Űyv?R ς.=3ȍkR5{m+C+_X`^GIja߀#k6e+`쎍d )P%[>$*3~F*ک7Ԛp09䞐w5w]G/u^1G@@IO2(w;:o&  g,J?eΘ4x@g~sGY9)1H;_+eZjcdkij}L(EF܁SX3^u8}7 s\Ф9w6] AF+F6:xSu@<3@N^uBlH^])PR DjD6ˁ+j:"u%v?M!Sm#>\sJj$7UV;qw:; 60SW0|@ftwoc. y^]Xz+ݷjʓ S.L2wt !,s}x_ǔK(l|0Q<|~ `Rj苾`75hOGX5>Hq)FtOGcT=? d TOٷ{Ur[ѡw0|=-%;S?T:wgC:mSks<<golD\E,(V lud~,N7\<7]*srYy * -%q)"ޘ^Y]m1-cvwK}'Qhjaż&2X]z{=u1)8saTJ9>^Vc L3N\tyS40CXa7#(Ysh?F}7ATQ?"}{SI:b{&N~[%슮'USiN @LV@PG#21~{ &3dbz u9)/Jsn$߸T8VwY )m 4Mw14?"K0 MFW-KRپKJƬ=0o\!P1L֐SW!Hh8or<Ӱ;tHTV^&ME[TzTp'lƌ7b,q[:F6n1,C>9M:-4vy^]Cj\=Uds_S /]ڎ;?+\󠔇ڨSƑo9B96k7G\sB8gpj1SgY ɨNawɞrío׌y>P"l<3fI*1(9ɕmwc8śj~>h+#\r'/L.;~X]UId;" O=q Ser >e?|ݸHװ:S"C2-K|tcerʈt&A }`LV.ktfaE³%f] 7Q=C~cm/aEK Y_߆$/U xULFHPD?Y(V@yF/AW:DXK X㲆1J%#B/XxoE?'urƺ_)Ǣ +88Fc$-9ufݰi6w6͈E 5 p.N !/xbl5fcB-2%e^;ɋ+%"1i6 K"PD,!%s8\hx&sL黒޼ewӔ {NKESB@ϳgp>v^ct:m5 32AϙR 4H.e f>;~X司 EQ/rL 8Zr:oyn(a-nž|'CynD݈_^687>G Lr0>:zOvw2tW=yXr/B~1  rg6^KT6vE9=!d լE{pelƘe*s 6zەӋVSSjt5Jwݻq[HW&C %:x|N%@Сi.~qLՅ*:@ĉ{wZJP Q¥}Cͱ/%?|>T#Ճ gtg,E(/k&촧NP"Y d=Y]4ǢXS׎a2kt ͑R#B%{ٟ7rOrY9<好((W}+4AKO2(V-,h1;tfAۣSzKdo$C/p b @6~|4!ʹ]j]kSnze8BҦ2QԺ-zᦔoaޕ]zҕJL@dWV%o}`>>kv ƺG|px3 8=\J]~BBӟ:MN60.lLIqQ-Av-cu(sy# =B zQ5hnWHL2tiajv:y|BLVL-]dl%KJM39 ޶v}_;mZchHH}ƃ}1ZB$'w~U`.ʽ%ڡ/+!F*bqɉ!-"`T~[q]='JZO2/`&yE|1rXg"(حD`r,mUĂx9$of3yuNkW"@R߯}mx΋39VX@+Eޑt-.|8 < cnC%xBxꖗl(|]EDJ6RW[-1@PIG'?&Y[ .@CYP)ED.|*q1-kRQ9 X']lX|qAN_Bzz(׏(ԐVMG/%~ ߬=K8b&^!l,;_C\_S.l7?e1ǡκʹ{sԬ륇5 pO4*VfBG(m>)o߯ME‚W?\w&vlCfH0̈́}~ǯZk/@~%1Uv_ RJ .!hV8-X^r u)J5fZI(ۗ/ %bo ,hO7cuK,=S_ ^ beO]hcS[ 5gJiOy*p߿K̲G 8'Vr0Gߟ`~pͅdҖW{|1T(e#w; H:r"~ G}Gy8#َ!҂eC{20iP]xz1YceG/:>2DBhQE{N*gOpGl"1{+驐+||Vbڇw»%0_ilU:n 9"sk:ttc"J`̵Iv-HLns=1>c7ILe7Ŧv+x կ\.] &"WoU]|I*+O1'I(z>r$ dm 1ѶBk9@T.=>F,#!I Nu'[,1ViT"jR9cVFX W4؂Q`ij̭Sp=:퀫&*G uΈaj"JX|:E Q#|픿ṋ@ do {QJtf%fƱnȻ==5}v6!=BcCMX:qzCwrD̽%4eȤhNe:fzQE>&4Oxg`Bz`Qkzs. ppMۛweCD- `u"]յT0VďL,G7$9㌡+WMI,6N6PqL{oP" rCd+ n*P!ɼzقIBIú XPL2:J4/ț5i-=]d~# (o_]>Gr ^](j{-G; oh>vM._j ]zM۵.3kl \d2קP׳W]d*\̞~vt1J8񄳾g6)bQ+YHr^Q,{:bL?V~[\SY%gyfh:_׬O"n 6%z*/S⹎8|_Yۼ^{XaS~X7e3:H4Hm޽]&:)v ^1;N,1<{Ծ8W1a^6PaNXO,1ʛj Yvc&ݸ:*i{`}||hXʡ0p:1%l&Ln9-9v<`UH`mA5rj`/?^Mݬs]D{̕`kϼ / \ƁoK:,\ɱrb0>>?BN %w VN)Ug|Wµ.Y=!FmD]i P 6Q?X {Iee ң?CGs=$)' +UۿYl.ge m 9;HzݟSN}}< lU(c@9BTdw+6 ɑz@\7)vksCM}"Jz40 mN=畊쁩e7O?\8XOq=z[y==ȋ8jCF몉@3=С^x.+XCD >MR|^znᄈGJZk[/&pg6d':=o- af/Yf90J |L;r[~-#g*5I09 ~cWev@l!^q+3!nZiJGDƕxUVk`+X۸quM5ʜ|LVr]k++݋gˀ\ T?#yY)35\-!+4=M%Sgs#U$ڗ%K%3Lsf;*js !>bVݒgT!qBČȶzqno)VT!]0b݇Wy3*<d )үr4Erq<> 7qZp4EمlRrTSqf=F: ^$ z i1wۇ⻢ 6%md2e$knSbd=^I-B¸E"1ھWg_|gCF?F}ivzRآ?}sE<- )=(@ީIwl 1Q_C* +mcx@B,J>MԹPJ9iVI&cHSq<zc$9{h„bAT K69%#7w yvͅx.d k Nئ @uW $?KD_t;O5Pjyso3ʅ.mG2w1]Ji`a!/jV=)ϯ|r8a⮺!䣵fȩCb5賽A(>֖wvwܡ[V\\Ϥ{lXvO׻G~8*TLO\&ٜ:C9<6QxTw {au+ٿQ@QEGE5eFG<>~;iG^i[]P뽮2|Wٗ' 0]wMwҵӣ?]6JΚd3ieQs7ark>?@qО`Pgؐ;x^3" xP!p)3;& ۬5~Et| p#wliL*}ug))^iM($C (ɱR?RV]b 0[` 3ilw,G!gZQ-:p;] σkLJkxF''!j½_3(Dz xQx) !5KAo[hm:ߓ\g;Ӛ@b@#ɞ iúd`b- , x7ZImޯ~뤀띝Qh`IR.X m9`Y @C3{%7LN 4@]\o/Dc۵wbCy[{P,gω)siȻnӧ+^_TlLC^7F|Cy??|_^K5 OgCn E7Fl~>/Rh)P̂PC #W G'BXG5L ~Y0 @i±I}Oj8 28NuNe]t_ԭ#xO)^G)2z6ՎI;H)\HW$D@:v r̍k+jY1WPEJ0TEk|I&.. 6G%cziG?dE6X~=N-*e^#=9i˥;.c؉Iy|Xݚ' 6k<*j;&͛B5ieAŹ~ m]:*8M&>0ު ,1~8G_گk׆qcbg]뢽/Ƥ˯]x"֮oaC0#rp>,#%Nhb.4fb4qۯԮ)F$9Tn9zDMs\ [G 󷏡"vQaO;=T ;GOBn~k?K[|ޙ4?Arm|~WP]cM7t +ghv ]x+h6 k$ְ{ 4ڟNE[Ȯgn99g(nîVaɚsg}."$dʬxHYd)H |1#ШmyqȢ[M]k^Av^H - 1}J-h fPM\Yhr'On\2"Ng/Dΰyp}sOq w~B@ku 7Y'Tm-`^꫶c7f>=7v9JcX7Mi =QaZIRfZObS*<SB8.b3-m 1a{a:Wju; \lL~s7ԥOTo%<9825!]zZ א+Y;nIa>w4>YNPMu|:}0|,ܸa_{xs :!n~s7zuѳw;]ߙ 8i\6m>HźiDM(> aՋD~̿fXwk񀵽$hg*Ü`(39a@/G-_/ܦou^C v{5{XeT›w6Oh>g!=u 5<"BaV ;ӯϓIf-xI߃̱GcP4ҪR#KY8nebiy{61l 'U]L&doDU'[d XZkRӺ>xDuL177sYEcG3e/KHέS' $}i@HOoOȧ :VGt:R/ZL aF,9*;8u7^34.`f*w=<~!7g(%KmQ?-,)IB[,o)q)g,C= j(ՁUq>Mz`#u-AWtxmɧc8JTD -l3 D{ev^>J"hOdA|S\&'iymjHk, GɝS: 7%j\ΓP^`xAàkT@mzW*­MOnlap/ZV0_ATNfTO2[ouvH;:"r#TJJ1Dqid{bg8-s@Y>r_kKQ)ǧENM-}%hL-M{P,teT, yCR'>Y\y>g%AJ\07TW!p;SlHZ?Dxu* AnBH{x׮_Gi'MoFcߣNO=IgĂ Uw6>n#p  >i$j@S4O- 2n-/"%߰y@Vr!u2#3T't)Ȋ[ t>zlXEb2߆";@1.@y}j!$,ƽ) MgЬO$ϜYOjK#z$<]t+qF\Y [5 /Ԕ$E'IX V}pL?4H *l h9^u95%~ܓ7Pנˑ=r,0jf-h[GHf+4+Z<$;3(lPeg.|r@.bZ ݕ[R7`s~YRʔEtK99M޿>L$VL pZψ1e=,Kuj };&^9Sk~ےIY!;nyɊ L+DQ>FE$jFOTbt\ 9 T4%q}e7Q*SnEV]~ҩ!,? 3Nt`@% & m12q>v*s]M0s#Īg۽f 5(Je2yE4,+r~|$a9)ۗByCGr< r(*:&2t?s26TwT_1kk |Xȏ97N[OKSk\p4RH l2{|rcGO-[ˢ,s|4'ab]Bc46Ois̾d,(ާ쎙p#Y$\4|kET3,\Am9T ؜졌//m~]<[ZDKO w?麮Nˋxz:6E@"i)Ka3ڪ[j+Xh#w#Ǽ9tf-'](X@d CXN=rok]7i$OO{3@_"b<óH_Gا F\'C @[tR ߫CTgE$fs ʙFKC¿0~ۭ?Gde-{7o$Gf2«vςzj}uMkKYG/I23=ͻꘓW2{Εꁕ#..hn7rܳXц1@@ .?F>54EwU<`ʂ7@rcskl,3@C%:!Jh؅ ͐#LR.m/yI{ؓ4..1eV>-p*{A>ϼOBӢHju@v_~͛8Opt!U:$Kj1yS$)ͭ艪|*IՍC ׁ'[ιNZFq*\@ĂdQe|q#?hLv _t}0PdXF!J BJ),?+yyCp HwDK`n l>2NPz$I&&;lUL8{.(*,x F'2I#k&W!ݼ[FV >IZ =Jj3 y-i)J,]H`to²3 7QMi6$xEoَ]GQEEL+DWwX}g/D40&Y挩i%I글JxX|]cGHڎo64c-#uz%aO~ǻ@8Kvyxv>&?La;-3x}TK_)0F>$ѿ(cr9ckE_Ѥv;t[u&810Ƭn\Tc9XLN9L>8HN7swrVe1MKQ̟mHڒ4iI fe 6:]R>!MYyq[+0`o՘0i˭*ɨ 9MIN'pIѳS8,0#D6ILwjO_ո6Oc @(9\ۮ\*wF\9^E?`%std~} IN?_Ib$=K\E7%,RZ_$f -ؚt?RS^L햫P)k$IEJ֯uE5ܝG κ{} l ςT&(#oW9X-B Wc!AOE-r?,|u]MoO-X:e;*UڵT2€YY劁[e c6B 7;-ZDJ~*1gOVѫr>JjT[XݤWŭY mY$/l'H 1![c@Ms?=D +60Y(p*7|/7g_8^tɱ ܜќ='LvoS( @uK3-4d^fdm{!)kM,:#7dti vnMY~̅Ueq-X2p<&>l]yHP]sɾPzQsfh0MJd;S>"Tō]F<(k.亩o4z]')?0l{Ȉ-{}V?*&{3dTTW^Ap(q@8RLrME:eO6h7EnjKgW7',/\KP~`&JH1#<NXƕPމn- ё`0 oTdon}pU`0K&( d+8E \hK)m7s:2z Lp-A`tqjUsZ=@>3f~o#(8JMu\]*[Mc_լX)W/;BX`?D;=8X$FG-  <#㊲ƽi<č2>oNB#Qtk!!@v20.^0{g1vs)I(Pk~U|j29X8ҡ黊fz5Kce,9иȄӫn4l3J5InD)ٚ3R͵*';EMhl!i$V aI;ъj`"Ro~O~Fu,e s0g5-%;'^QXOtlOYjaj]V.fSs̡1Mygq1Z2eqZ{M_"@@%>n4/N/v,-cDNv3 ~_$UDfwGZڲ~kZ&A_P,ȸG{trYZlٴ`|c_NA=]g҈ X5=Hz&*yݾwSс >ϸts :ίwg9VP%]U. 0:pa;5~i|"*MYl\ٓ/Wo pb'zZc梵1ordy-T; *,dM{ aZeob 痁N9^Y f|%W[w'Y5CdB"}y[?'G].! :2p+P|s27)R"D)S IZTQ"(b>DֆUv 0K>-tRd,YM vhg[R`,VW?o6BeqZ*b3y#p;~J|aotFDt0o/4N%,LM@PEM'1"/⋧Rp%)%oZ+y^u"i74=cU[/qy.5RvŠee"=*=s&2;!Q"M:P?=\i0/W}(ʍ#۶ged__I툱p'dB*I;lqcu`" fS9j87=_+Jdź* bD:W* ~ۦt&K@)ەMWXMrՅ$5x|jW մ_ap;/6Vg8auk$"O ڛwDZ\WWy6HSI_6iv{D(?bZ!TPeQqK!1a+l?[8qB(bVcpjH߻MGe9kڙw$4H/h)vŠD90JZ{jZ3Ѷ]VVM56qr`~ԩd[ __DQkOڬ(YPQ򬨏] 'Į- *6Z@g%nk>fy@='_n+Kkǒy7vL_ANsm]_Q-uȺ&2V 6iw!΀G9$ѹa`f>T wgɷn3ZOGؓL '[E'emamLa8{͑#w٬5*Jlkڞ-}D#׷p2nl>^sΥ"ujUx2^cO;4P}>$ĂnPӑDž0JZ( 1US'Dw xC~%rLNO1f>bwpj p!*lL64JHxic=N!8kOudgI畕hOiS-vVġ<`+i9+WX[wpԵa@vřQ*=ٓ/(nop`mm OI<'n@ى zvFyҳ2 K呌>6)V %‹oa_H_ձRUm1012鉠[$^C; dMm?sgF~#: [b)`͵㕌%Yn{ZQcۏQLŢi~=D5&_" N@Jm%„l?o&Ea6FNo .: 'b=lcH[R6H2j4Ѳ~0sv/[Q>} f6׳j%ni_žT#,C:W+-6{jFc~$ܘh= "sAy9]K%!@FbO1D5m#1DOy4K- Ś!|!0 L-o+qFAtS$K(p 4s,=ty@t7F}DNŹIh!'^& D=uL@ͳS3 Bs3ۀ#Ĝm m`DRT oI8XulOpW*4%C*؂vr dVF̐J{AS<29=_a d9-vuJj>AQX';bA­Miܷ&h%l`dcTf$<%n\/Цo 1C3N\yL-Y 2¿t}"!_PdbrM~/bsz 9D!咚UۡkK?kfhUE5]PӁ.68t+̍}@>\|,}P*gE%Z&\k!V^`" a"G1ٞ@h%ỻsl_̽`6SOVr=*Pmjˠ(FBfU/.%Bѿz.jՒn}6,/q&Ƶyn4y߃%<@fX6z|!^kp"j=C^_mTfR[m#dS/p5;#3q4%I'R}nw7c/:]OˆxӎۿEFaRO&рZ|2Sa#>3OPJqTt'M#T6 -}3&JqXm (6␣(tҦND܈7j)#$Va}m>::ޑ'G|urQmቢe: 8['geIUXE4%di/5dbNYhfb"Z_꽄ryC鴮 @#p[dwDT k,Ruw0M|N(|эR_#䇥w!/὿(|ƃVwDF`IƿЙX| 9HȪ<I1E5 @6D1;NA5QML.F=~Š.&. ~"ٙ={c| aSH6WN6:,'Q{WV."C^[ жo }]['j UsCx Bg< ۀI~N N4퓗7;dseW Ѓ1AczQ)9:f8QPQ 7HFWu+gq/q:zGּGF}؂z2"L愥tt ȱ᷸[N{X;_`LS^_|*4":eFYkZI1ߏehJ돾S[N l,rXc>XyrI`3k[v@A|BBG2#C}?mO hW+ fPe黨LZ!%-PvAf/n?la$D\N!-`v zEV񥶳BvWx9vn,/`gWdTeMlܐ9X8ێcZp#9](Yd!ʉvQmy\,eP%uџ(~]~ h =_q6ٳ=>fb$@-$%7 G,cxwj[~z7Ɍ])2_`G*t3*7ӕwCۙ8x%=cj3L\W0›ֈ$*Ь1ndmI4cN础ң* >UFC -|d5ylYg_r,G0td* J{Ct<O6Ihap?R.J G9Ǫܥ M]idjw^XPb¦?/6l=QOm9\i0B8|SؐdqZ]Lj+~E;UgGmʁ$8cwHrQ2>r}fUlUs.ܙJW/)$NKInH3 "O 9i!`HdW[IjbMsVHoz}d}&tŭ/N>Mtus=Lgtu<.q >*-.@"ܬq$ĆRR55]2n_wl"+wY04&sZHdUmCR&a\hGByƝ,mAGd=m-i͝qX :g843x:x{nI'\<^xA!#Lo ñ*a9.mBE?n wBEm-l3CA*ɓKg(}0漮>Ce` ~64-heq=XCQbFEH"=TypLz'B曟:g˹,ޞ.;NɥW\~%i ~n(GWul4p<ύ2Y3}Z<ڠ37t7ʈ.H%Q| Ǧ 7eJ6K MJUcTrs"&^`6;;g'}EHݪJB[v9f"5ޅMMma$q4y>R m) .467_׬%& eq:ҋ)Ӡ:dc9RjDx$^>oz3bt@iɗڌ^[U 6xn>Y⹡C&?ǒ!{WiUtbB3X )"'3K =VoHuAy kCBW&$ͱm8o@*_2Q^AWU{@ݙ`.9-fԢW(yn<^12'ic:ӔZjahHJ oid5 j4fR#]G1C,)h=1w#j}̈pv&fJ8m]e<聿B9]Dʵc\t5WzT0g['f?uaci=󬠭P ZGA}:"PiBnᥐ)Jb?Ia]f(<YQ@'ЯcGobd+,fXWɫuP[K.Մp&"ẓs] bǘ ,|FG(#}|N Xz5z "ҕ.8۫JWc ټd><1O$9iG{*vG3Y*f° `u pHNg6۴*7급d2Vo;H춻-Qy7Mĕ->~%~cy|Zv'E~hTX~8T.(_o:3,D\zC&ΰesymymD[N|Rr-{p2y$wۡ-pf|\'.r篹?ai2:SM5N`U0P6%"޶Ql ?U \ 5V m,9VE6OK 9SkAq,.Hў[IZ Kڦ_S*,Nje.}ȶ\eҔE x:bJaq#\eOsTݗhvg$-ӼFȼ!VA%hcУBeJf Qzi@jgهJYěH&}^ŸSBQ׳9n>Q#q4g#*'c0ók윎}EꂮSD?Jk7V 9,І9j e壼WSW&.qD;hc)C^¢neKVQW] ?2څj308 Ѕl]qnGo#0H?>Z8e0kX gUrdP֙|LuS vaR^JlayYqaw8d}NCd|v|D&ղRt2[ fgl4}WxPNjyR,uv9 ,fZV-xafNAalƔnDל7yV)ݦ6k-I?Ծa}ZQ7 [Oq3xDY];u'9mϞ-v׍sR`84m{mwK8.,J0GZ[$8xy(͛Q^c`CJHї7yTp§3XS5Y9)f<(x? G'}_)gD |ڊ\a;!\ X lI߶KT^-: (!LM6ygoy:KC,×CL~֨c]eN|*sl"v6VvEc"3TYtlMÙ}3gʪ &$3Hbyi lXC%l%xd䆀3~Ή J)? $ΗnS9OXJJyT3q>U(BijecKdz3XU 'T?DLk{+Z8$\ud[Mv<_d"y9nu ۀb<>b&M D;&&.nɨN?~Dc iwjD<27DQlUfOQ9RKj?Wo/?x)8uPl56V۪Qh `85^jkۑl$L\hQT'9Q08)tà/PU0dlQƆ);X`W7ֻ%$Q)jϧ;cVY<7_4ä{p6Pt?GE(wP}^o \Z毥bHi_1iڳ CfBLUyzRI7T7`I"e7:CI?coנ㽙Z엮+Қ M̖S(*,ǥg  `U\ (7όR q3xcYH]uܮ6$^ݾ;)Q63oO>%UNKoɣ#SKÀA`,@"ڝp)+sN@Ƀ\xaL_Ĵϔ['!r֥aapǞ 2Z)| * RkJ^@m NVf;5:ud] l YCaS7(Cgglg,N3z'y2Fްڡkc1:PḒuΨV=#Sk(DkyX{I)E-m@OT2AWreiFQQ:|eN52\vfnpZ岷м`]ZDZer]wrTG)s;}ͽ4`g^jM:oT_nwK(tK<;=.x$ ڏ1s2Ӌ&QbX!3TOc]ޔ[|1viSY@<D˿mz:CKhOXf8URl]N*gHFe-uVTSMqцDnSkOKš&kaf׭kؕ- kKXb|{}H{&q⍐Xps_1R{^ҸggH#4IVl(peS}Kh6꿾ւ[h4ѫkCٲ8ӢBV=A?g!>$fog wQ9FzCaYSEQKUjQ4F6"" :2Z9hfW*exXHR.7}etVmTpB@1fNYeZUꜧO(Ç1-kI lI8wPRֈd4xBhݑD:*ŻX1ōUUš@Esy2eE+\o@ێ.c3Xr8 `u$ɮ{?ʥ8(U[5;q1Pe8zWw8W߷#BƲz.\šc>+K$-%i^ǮJT Bdȴ%k_"VE(i;Nө[p5|:ssh =tJA!ޱȋТr\o` *n$J.f/zy_΀,=?V]YQF#r:XVǺNtk+>FX@MCkfϩ2~,~GHjr J\(/ODVQߤA6l}ߔ8Ob]ĩRe<Cly֝$ 1pۅc9D](0|\fj~TgM+u){nw@7@Ǽ0VWߒ'h;b}%(F' [ i>1e3՘5?en :tt;o6 utˡVVi{-sذ1<)β5.,/qo68ߙ+ЖG|L86Ѿx8~|!pWŽE.k >Bbr)ƕ7+eCM_֭ u7eyu% dm`12F˩%D1{8o!Z\?` K/&ru/US_zFf/ HA[tFLےBM{l;|6 !Ji#&Q㸊iQ X:5B[Ng)8i,(kW㫸]ڋnQ-Gvs㇬^]-Ap)*MfӋ |~Fұ#{Ti{9S\꺳sIcdM3$@|0q v#)]/T8c%()OO8|kR*_,;|L=03rLP1jh mk]Z$4_ߓqQJX<#@ # 9BE]/h!AZ.$HRm͇|?Oy /E3*'t[h1<7cUimY'P7՘.0D i_i neP7TR,^y3G5CU% k~{)_'4ST&EL3g0 zDNɭ}[;ILiEɣ ]`,Iv0amu棠svQW"1d,P|: /'.]6斜{@q㄀QD{˔ &m4$ rkVt=SLDtY Зl9NfKcB߹]1ۙAϋfh7Eje3݉v-3XX͗ E~.;`@섞62š|oNF23K &>F].8QXc? ]j+μ)"᭔:Z(|(eH?э孙⿐V(v$& ϛo.=x.iO,NH\)'QckIݒf>Yk;!MI] j♁ؾ]TG=6Z!!ijpR6o 4/KW2 iJjFS:9! zn˾ټ3k^.l*L:NQcIHHdw! lc_oaOPoU[fх& a 5o)uxK?d@عk=̦7eۃב^|iz:./JʅE_}tqg!5a_]ue+3$\8`E'lwR=H?Lź-'P#QVoRY)@wD`j_K,M4@ ħ/m{x>J5:G>Q%ɊeGPLJfϸHFѺ;1P|=6Gy>ߩMI &xTi3DUP;vBfO NeGQyY0 n 7o5o:, gG ۏϨVj/usJdnkqVOUDuO !T(|}"wPE5w OǷTȢ:MLrLk3v}hZNBZ "я6߱G=%'u^M&MrBZ_ZԻ~-;9 %`7ǬΞ:;b׺\f䥠Ot3L[b' FOINDVDU,H=r=Ks8*KPn막z$Xp;kp~ZPSD("4a+vX Ĝoh[ Z{*Q<ʓ<4hf9KHH5-kf3RF&c%z'U=1l`xT:Փ5у5Pe8Ѝ `؂ImĬ5^ȼT+)=R<{y!4ßiV~8,h7ժI-+j:;_gw4+*Aן@`Aob 3ЎgZ6N*YaadS۞-"x+BSԋuv&Gōr!'Tu9XU6#Tf c>"16DaD/%n =@/,p"۰pb]1A`Rhf%'LN].ˇbZjdc& YQy(`~zej)7%Zˏkd4_J+Us,g2Hv6-JA"4fޚGdx0_ %pOз۹^*/" w. e\ɎIy:dRE)Z2ë F#$-$Wc4l\|$۵[6E>x:k6G9m.),u/K(.l[s%:+5OoSD{ju; H`y]ZA«jVM\<^1ǐn{*qwPN*}XRd̫ظkG' d[Nu A=]H_f1L.OuWެ}%HϠ;i.~qMl2s9ҼzfZUC= A3. R=F+T:8}%"NO?NofÒ'̞$kP ,6`- ׻YL7, ! ȳ ;kuwk:aD>Eޓ9?1F~M(mnZY|\:I"T 7eL]FYMLÆ{\G?{je@Y+;&SMҞQP\ڍHqԊ%=J0Y#8`h/X9$]w`l(35A7FVTu\ɱ5c29D W_I&\-ݚmy42Gp7DBa~_]NaO#kLjܥ2 < v=@5V98(L}1Ө6%&w]bGSY[ X |O/<6n(o '-1T ![cNjAw$r>?ĭb(lȐT`I.a?7T1ї{ac+%(y;f#"Dezrƻ[֘e8bCh+iBI x0* o{'* }ǎ,+Y+l݁DFԈV?עzcɳB:xlH~γ8`:jclO"]>qE{ =4KfC QM#4zcE+jHiϗya3Dm a,n,]po@rɏ--rdx F8ÒgxkD$Wr$*V)L%TNE` taa6 b9˱ۻL]/!ŵҟǡ"5p)"Z-'3\p5_ 7 @*yM)޹Oȭؖc# "g]MK&Ab0hA@Dv&*wؿGzqi6<ᓌ?i|Z3zJCu-|NЬ>%F&VvO %ϙNV&ˋ4Lzcsy_PXP%-Ao=A3V4uIfe1\8bOށ./RYmǦnK>>!#@ d/KI1y3p` 9ĺE{]< KsJh 9wnv AޣV ~5cg(_(eū͛3~3Ѥ яXקW0☞\D.X >0ЋQz"6JQ/%(<7`?;bb{@GRcHTN8Sν-!vTpyӑ| & פ$a.WUy 8䋆05, $lq|S*Gt =Ay&>@eg yدLF+#@Iw ƬP|BK9yFs ٱW&@N䏵 "yP5W8sxu>i*ZGSRem;L>N &4M1*Ĩ}M>퐞"Pm8;X3%z0ѲD;_5VTgu0*g4DS5VRQjxj.١sfN0)UjOk8i.؄ڪA^뾋8:K68xZ=v Eyk# Y_An1O-c-}uagD,rv-ܗo}OI8+pg]6idp7z(zvjN.:Ln!9n wսPϥu Q;57Qʎ'Pyc(ώ?nncR$_j̖^׃G *liMYY93s-sFUv, kᶿ>vB5cjPmr:XP̪; HleO(c OԧwsA1!XXNU"S~`1A;oYg֍Kr6yxTnXqR\3#^Ⴒ}>YUw:E|W&nwqCyjr&m ja.ˊx .8}7< \V׀sOһ LG[$ Ȋ l- "حM`C>-פѻ%߇mvʞ!lL~&Kt,Z:fϾMd|3)ՙ*o+Bc dqaMj0<̓eJXJ;!NuF80+JòٞC6߷_l- {h rx%aGO[h]\FU v _5r[ hyl_J,&` z+SDKW좎Ѐ?V1 p~\ug<.|D:Y3+9؝hޑ;u:.r^o ^/\ׯMi*#]VBJ5VL]1UsËcoD*0Tɹ 8AHUB@Z]VPY[܎yW;i iɠG"92dOlsyUO->drg2C8YUo )*ifR~ K 0–d65 )&6cyR K0_Py\͠V8HyftBvsj-s{HUvN qe'Id&+q.jSwä]XU@2YX?Ohѣh NY4Jvc:5MqNs2IO$RHBtRyG;+P _{ :3Ys²:kG:[h8j r /;zm~5;(E{$9&J a4͐[H] QN@氲##cz@g3W{С:;հ$ 9")f {jt~gc 0Ob2筅dZ,X(7>(awĺ4IY"nE>t$HiEz+;B$)D Y8$/am09udGI#Х3_zu"90[Z`L}1!Vg랺c]8fOؾG'ALI@VEªG˽qF$ZB>/hps.ξ:+"h|0`kj"7 5Z?qJTE"_'yoC;3v|$\R9Q̉Sh8wg@J N܇B+,b%[L4*B5oS#Z?P!-8$VPԲħϙBw%  d$$lC,=*~ 7HCHWU(lgJ6eST{{tعE[V4S-A!;=ֈQ 5L hg@hZ s0\\ɸIwG4].0rn ;R9vXJ/b(HQ9o >F4a_33Ŭ* -wW?I}ӵ.CLT?%8_%i 5d/x}a`B/2UɽLa/.Q]\aVT'~ցѹoHfcPv?8eᠳ\5OƉNպPܓisr_Uw#mgUv'Bk,7?IgoOՙ=9j{}__=tuԳew.ܮ |.ʐ"e q鿙aoݘ~3*#j{bBT%tUkRmȒcL>~ hNYReHå;ēD;e3)jRg4TF#)jN-']}>Ę\Xoy+o_C{^jCBƧs@Tik<xپp 'ɋUiq@5w`3 x1~c '@qT;/ n"I;i }Dcgbbx#d\ڦ+9Doj3Y B%~#8l1vx"=WWS{əvƆ#*h9-V(覽I=wܵOs/5T,ӲM3ÕM_[Vumt"?"f*{IGjC[ـ2apNs ̃ B)Ff*!GB[_cO:` ̺') x[*Sm}CS0l6ACc8w'8L/Rvdjg.W:$+F܋aTK&tTDDLV.'Y5t] M. cR2SgBW+|w*$A?p;њB!qTl:z=(RN NjDpXm -:2A+grf1DI/֟A..K x;cS IB$`is4'Ia[<:H?Gu}l*=!} &جw觼mإWXC*%zMD%1ɀ/ Hm'4= 3 oD|:;MW?kf=2;gxo]g`'! F*Je3sR(( 3QL06r8?ov:pWk$9')փLܥzUT;4ח1 ArMxΌihw<0msPE0c.g 9 bE{Ŝ&|;QC6G .W&nSP\/(m(9M?-P;&_LI~ƼSX錶$-}Θ'sMj9Hm;* kdp\Wg/p 1g'zE+GnƜV%D2b8Ћ;Ý.wfX1ZR -G +|J--@}뺛``?FD7+QEㄬFRh}>f0:q2G5oI5McZdx Z̝r&?W9{R$ 5,{4@5ʚz%e8اv ZZ2xU 0#mxHi3Ο.)3e$] Lc<"C%ȜMC(C9$3٤b5}m"r˺tjiMΒ\pq J2n.| ܺڎ_QSA&O#2-DAKZIPQȜkK>\!%@3D!wKð Va9©B}χ4uw,ɝE59Po([hˡy&w]N[#uH++n_=vVq$`kH]hmč6s+d-}sF]4sLf 4qH[;7:*hG6,M =ӱ?v[E%5]& .>47lcu8#L? vF[q;ԌHy8(D1{5w2fѻɽ\,}BGNRSK"E2)xJmbB_k䦮LnʹuViY<8*/s1 őz"cB=`Jz H!i(~aa3=H&woD!ϱMe(R"l}n.s,f]s[F[roJ%!dqRFC+VyweI- `+dEdTrwޤe0/pFG[JLm̃>R卮lrfu)eI,km uh'y26$TGȅ*u&ԣ3q.tP B"-faKi-i-ڵ@ v6q}vOk,jT|t 8;gQjQvXA84Fю*FT v*bn67U4ώi=O .M9Nu(@)ruQ;!^1UaSlF/U9_UGe:;T|X"8ړ Bж~|~(QzV?!֞r'< i- M2՟Ɗo-B)8Y7{MFR>̊6|:'ʌr [W[<-u\ּIa팆oQB,ZD5PcDI$֨M+8vXu38ۃp`IclPb| >L (9V <}Lqzãh8-%IK"38[Wa:"FλN@JȯJLíQY\[5p)}ʠUsuv%@lz- o`5}%$d/Gޡ1 EFAA0FC.gˮv"ەUa9%XL)wSs)4XoچgF+. 0nlٓr܍) u!^,\7 3Qk ڽY7!jjjg&R}RNT rK`1G`vqs/P^?qzIiKg1+.AY%Cc Wm/CHI{ * #Նg:9`PS Z66~VQjؗ*6h1"3?_KINZ_hS2JZY oobJ`HwFRPmGL ]U^ EBVCcIrebmq[ixf'!M4PnV243P;P=5]}1c}6miP\;_DžUlGtK8:!jQ[D[;G f/iT !?U^3Zy+d/ YEnҾe-KW(]^6])BU_s'5y6O~'^$m$RꔂsX6y(N^8ItͿ>ԍvA)lБ[90s1՘'<ב=c6+'"()Rgp&<9ȗi+c<1QE Kײ\*_߇t((\6=|R Եt>v.6o[BY-ndNJѸlÀueXf{]袎&H-;q)pfܧC[&R]5:.?UROT"\r>/QaܳiFB}QnaTOt h)„rK|^^.g6D:O.HrȤeK:)5H&;r+^]s& "-G#sYG}5 ZC vdKY<- oh]wb|4- nB3^0\37)S::ѵԏ]OM% jI?6}S!UV9E?K;*:wep {/?J13G1HuژOPnu/(zLuHzHH?Wt@u~x2`XPtbixܿcV7+?axOYۼh##߱/fb̽ MکK -p0[=,v4 X b+ P)[Qm5S*>HY"N^aŁqqtu)>SOɜlba}7S4[} sP߯ܔ^rIBVcP:V[u!2$Ok4MR$tGN!^dM?4>}؎M9@OkDOvNR, qCgm?s X7BIOHomjGJKB%؀YKF>;5Q|@/[z9\udb4PKtwv仔l45&vj{Ii- >"udq8eģэ!*0AiF5i?Q!k~8Ѿ<+3ٽl2> xCއΫ+hR滦v,QpX*qL@t 2W\ҢRʔ9kņAMl*yPjZRQ|-BM{C:U%E.CG_ܫ:$)i_h^0uVjbʻ,qe5*W .u{;\jAt>!.h_Qnȹp0R2 3݀ l/Yo|$X2qBT|vB.dMz:q3a :=:ִ̬nO%8'TM7E_ML7N] 'W4"sdJcUXд]-M W"9b:gN;sj[ *v1-#_ B E۞,i*`ߴBa5ts3W8SJUsT#D?s6Ӄf 4cְ%NN Pd;>*pߚ-؆AP,U2ۨ-NKL}BBv˃Fި']%K `|Ҙ vMh+Kyán0`YZJ%q.3]dˉb"`RnP ;?ThN`ι%-u_lx @JP GL((mi}®nXKx 00o{ÍtMW޵we|]9~Nm[-.{Z%˽'EbɯVNh8%?THsi |YËx =9acO.:ًck%)m?p{;Į-y<^= qhɛ{1pe9\N =*8n^4#N{EypQ:S5x?%&n!t~xouNZPYJwEG:w/t[ТV/cA@"NR#ϞO{kDjCk_9ap/ 4A4m|b*RvԝA diO*^Ud!\mu 諸i6uvkY{ΊOk4YtWDRMG1n{Z!j[9?Tܬ:z-"8+˖2V,&!kڬ-<‰ ]D{BKW}  *>ZzyϦDnq-ٯ(,_-heŞ-Qr1/ϴ- 2r@wN!Lw=O\(h*c!1̪A-EEw;+8 ;S3xc@={?G$sgzTx:_1;^|fMz٥j3 ߚ$r_rNW͙gvGt~[W@ʓQh/Ӑ! 3,Ǡ-9]OV7C Wl4֦{,cKZQ3մVw:|tMȤN% _o-2_]oQ Y2IA;J[ 7Mph"KJZW{a\}2$o\7{S.z'BiSDBR9]UD&MfƎ_%a1qJAMje-ͅp|q}Q|!z=1RT( d̷/ >XIto}bpҽs(یz_=ʃg8`|Bu~֕f|ԓFO;︧\5JFl4Bo|1(ч%Q1'6pV1//+3*>LQ׊ qYp93ؘ5[,1/9޵h2AEt881p^-3`ːԾGd[z)5wyA9Z1|1+\#~ :to$kDvn`q}Wp֣$ @>dmT NQx0$儬j,!s@,{(Z!Y4H4Fs Б͓k1[!L" raڤ>1=ǀ[32 Vi .=R}ƿ&80;K՜6*_j3 ~g)u]COu|q F*&GYX0W2R(]% $F"4a-'~pKs !J-~5a1ZQ}޺3KGL(#)c6.a-5*QLJR 21Vɋ"sjG$e=ooq=``oTٚvd tn\`3:H>A>|OeMya sv?GWH㻝`8p˜Kz ,SLG32Kr˗ӋOO=yY~(fy"ÞcTd5vpsS5Fܦ|[Ï`zkjvmGX\-d4xZtj<>acM) ՅE=ߢV+@p쑍p)A7W*^;veR:{ub޹,ϺP*9@^tF:8̈2sTЏ5lTǾrƦz<'yS_\&ZHݲ0+~*i8 %cmw]L\ֱi6Dǚ iSP Up*mPk<aM7nBcj'C]w)׵,0l10ht Fn'L';{) A3_ƃ8vv:X@ 7_TLZX~pEjˡV»3K}ItD=V4,!zی,EիZ@ OЊr?@Ǚ8 (>?,:iWL4n/äG'zٺ84Y Xa o4,TEh%+)H1X|,b䦭ѱr񏜟~ C"Mͭ 2JK{:ǯ ɕx"ww6wqgRmM2vR+5/5f:ysNVWt ɣCbK_r1vӅ0V]WIy-ik(wT(.>o&SȼDYsf^|OoByn ?ou%^sZkP5 hg~:`lgM VJV_TxzhYY2-ֺڷyak&B,Qx"O SZ61;z)ש6cpa36D_VHF-m.^ cm#~&;l$*/4bEtQG~PFVH1T% PlDM&9Ts([y)Pyiȫd7p>(:hX?x2cZ2*ECaRrwK%0h_-LŠiN 7Ϛyb$ 3*gBi*0aJ̛qnRM88FЂs|]:|wߕfk('LK<"6g3iFE&rQ fF,k=J☬s88TYXm~Z A6x3W!}gN؈!ъʛL vo𩿅2MP *> ;3)b J\S9ɩjwૠ޹߳m<"&_hwu *E.&BdsU ޑ1beE..t^6罁8 q6ͭQS]{)de(LKcX͋ w;1[ݓ|͍)J߅e<xmA%r<^COiYcA`Av8NU*V޳&ߤ}YKN5mA _1Y&3ȭr]a)n5jz&,}HUBKaTڭ*2T]b*uC\NR4rU7%ӭYzFCh~*ZW_N2fI\6A/ yKwԜ /DD7xf?Ŕ7} Peyymu=H`MyUwif5MwVeE.IuD+l>(v7n+ N_@!Zo>a<0+"G^kr#關ur'uxCw)Dʡ1ꄑC֦lٞpwH@y;^J) p?'b;loItm:yʂfk%gSgZP=C[n WEpzb9G;Rko3gUy<\ j/"9 E r vE߉1U\KI3Ҵjwzcnv$~ݔ 9Z_{R+q>YHXsđyjyd{ L6[uz z2Slx~DF|BuDfh.KO{SzmD]-QYU%N3zVBN`ʾ#+\㱁D^1o$K350d0:['46cOG֓+)ueYTOKO1YƢeE%>|yz dDS`)*6^CI6) ~xr:Sעէ_ ΟˀI'm9`)nF8 RU7wP`:V<g!U 4FU/QL;GN.(g'W4g"[o*2ۜ͞b'J 7'JA-YƔ&uXBYa {l?8YF1X~ktV2.jx\M'Vi?H:aı "Ft]AfZWR>e@wu#_F$គ)]n=[d:x uj7Q106 - #!UP_mq]%6:,ZR 2Sm 0K15wD#r}Gr]L/mP}U *Rޕ1Ť1"n[N෩/\t\SRcg,KPJmNw=uKRWc(숝-+ 6X/}" c[aʤ;f&(Db+ 槱#$Iagq"޾/\D;]$Q%ODwf!KX \?Q$/Ggy%um?r) mMmj3mk:lAm6PYG713-8GH{{dɓDKX Pre!l;ffrLP€lE1{,&Wr'y/ P42C'w/}G,gΎf9 ys%r׫,%@\nJagN KXpeݡsXiȝ^8}Ҥ罇$IIЙ&PO^,r+4e0Y~v7Ƨ'c/F)ؿf!M ўπdC_)z| r}z/` 2O.x\ް4pO )t.Q#(22×x r&&($HX430Gm[3X5J[FFOv,W]c;5M 9JkγS;Ս$'1/(> lc$ʎ&ITm}/#w3!eoqa.i:.&Z![5kqߣq{X@d$7?L|OϪ2pȎT%Þ(kp/,Iz::?oaMn;##rV;M|eA#9F˅{긫CQ^h1ltD(-.9YhRW`/" N1F;YzSrw QmYk~%y=02rDT0{Μ y'?a%u\۬JJE]5XQ}0߷q깾*M)-D)F).sɝ' ^@T䛞[ ӵ˻+ϾVj۞,+sw4 #&Bٿma{u6E(tp,+ԝ7&roCSiİCu̅W˷!.l8sE>%>©'kUZz\5[f6hhP~& lJb7fS}Y}}嗏'q1B?> ]B˧'ܺs@3bR; dFG%W_UDO8sX۠J&ehPYM (G@SLe=C%󂆅A >bem[67cv5?S~o%rܡx(7 W8'_O{Cg#h89DܢU\.4e%~hA? c!|>Ddo^p\RIZ?4e8M\S| phnodVEIZĝo߇J?.nOiSZYz8À1N>̣0OQX]w KGQ:+ G̏4$Ъ! Xndn d% tIe$]ϕT~h*J:Dn3o<N54zD}Ժj>iZԑS/un ج(FB4QX?b$BiG=u' rJ`Bϟ9y)>~,Ec0FGOp{靾@w7u5"yi@>ܿŔ$m(?T|%b\\FBh!(k$L;~2WӃa_ )xjZ;[>拌j)D?_ ~4N||vB{MYYAIYO;(2ճ_ӗt-<}4ߺ,T%Bٝh>-v.߀A2 Գyco!>#ƿvvOK4|/ٸah4[W|hItVDW|9#M?6W (or\a"=\8~!A=@ykC\!^W&@<"GGk|eS!e Pr>9(c]DY'_^xF Ϗ96ġt6@IҤRqWmF /feq;{L P&楟BV{c 'V bnݔؾ [c.'*s ރ1=a/j$< FYG Rpβ ZpxfNd9m =nOL/Ю_֎]rw_bɼ=4V@$7X@{OyaZKq j:lZLN g?AXVp80id[{ܩf3~u.(OcK LS\l$_-ǻ{7ө\+ .7!haDi]FdD#IHݦlF_ tU4_QF  !raUWL/"ʤOлw )n!@i1%@vA<6{y59xORҀa%|T]>MњS^Z ^;G䳏UYX v xU&mc#/RC!~yz ,V # C5}eZMv9_U$}ՊBCoޟ}5GHÎUWtP#%ɳX≊/nX~!&Y-;bٝ3t^28_ԃۻ.xs0a-/l{Z5G@.@7GzxG;A!Ih_}x!UN|GPbnvpCL*%o&=N< Uꪃ,sꝚ,6n!W=C| |Gm|to.KN6c˾YIҮɿe*s9wZQG;iN%}%ća鼯%b;|;|-tXy/X^V/#Ð Ya8BW6 (!|g|#?xE7ש q5u(zQԞ,yr0z&7w? p"nQD9`[K'S(>YܸS'MRsobq &T:Oͨ섛:^ߞWm]D_4DP~IjcØ}K{`?"1(Ux%vUgxx\2 _ ؂^2`4k fh( ϴ-Nfgv0>ChFx'hTvGn,/s|/^X;(O$Y;4@]DGh{C|U|PQd=a r|sA^"&H߿ НkS0foG_'xKbÕ6&OTB{FMZWxD3rY~gK2#r@A\Nc%kͅi /2z{!FG`&wNv7[M,>5CfV <Uωē{^ &P3 V6qaG?~<4eJmz oH٢uJBΑ勥=MOٻ`iT;m\l;Db V99}n  %n[&w-/)ڋ3˔v}['f#EiL?9(_XgAY|Ͽn6)i0oۍ2~}7uM#pcX9+,}ns0a fZN!Ď#LgỹNc&hv(#&~_G l#]KhMiyy$>xbW*Lb ݟt097J-S:E =O7i҄PSoTz.O6_z'j5fY?B憡X+~1 Ki ĭn>vhɈ 礜(\#+Mpex#2t%Av[iKʂ$L0nz!4/tʍ{CYhNxx)lϨy=>|v5R"$v*)'%c\(93 b~ Eà6(ĕ1*K$A&@l;U&0NqEa'ڕ=f/rMכ;',e M뽟|2f*ۤV0`]KIMQXB-J'qn${yj. xXkҊI~ZGuf5Q XmxSyr<=!{_ 0+VNZQ ''CcR^$/rE!(vwێ ,Xbˣ/9ѝ(]NeO0AV `w!Cfp)ȳSE ]%&@5Ag4i[s)kd)>WGh7Wn1`x`5[]ˍ50E'>דTi/S/9[K5ņ~كބidbBZM[4sO$.ASO.MOW];=sȮLηB3LYT{FO:)6٪bRn-=@ 4!+T.C8"Z(nK5NX4K&OXXCo! x;UOF<dV` Sڜ]%|oGzm; HwSUk9;~c&pԥ'Tr\!`+h:a?gR2iKGBM\+3|N]PLtV+{RNSOA%I/ٕw֛B4tiw|zF[(E\\/7d,As4Qop-VN7s)n(LpWX' *o韵oJ b tFuШHR+r8mqdAQd®j瀋|J}:ypW.r4 xI#YISyE zq)އ4? FЇ#]#Q}W҅M]+-U :|efx? k/)UK H+wd:F@x8QP0 Fhu th?2v7u.W سlW1>tn3ۛ锓K2 ["4RP+AA[v`o[]mwr䔮&ٜbݞ)xI'6_vTu$SOx"b|ͮn8Lh1c(&ƊdVI }UMǠx2u% S(g"X & Yk:;_M.8QF˲ێ[llJ}D1_Vag2Q?'zX-TURp8.ۙkIEc:GyD;vO½#AuG}q^͜ȓ7uӘ9gz0P :de{>IO9L:(m$Eb??e$wubC̑rUSg]G@{Ke)+95,(b합5 ꏏɨɍ4T \"Ku$>>\z95}~QNa(Nil JvbZ@7OO AG!BxNƓEH_ _egE>K*+i0ULϡ$-W؀Q0WӴE5&@qVFCpuW,4GhjBwYɪU!cB/kW㰑jmֽE{J c: ۱1U-.I(yƒ-]~=Ud $ io Umǧ|||8v;P<^j&]V:8ΩC@ocY? $ &g٤)/+Ar;6X҃gJzI[4Ջ]H_ȡ -[B\JDir3,| (OvN¾s[&}ܚ;( ANM% p".Y凚'z[NZ/~D=OHB8Y,Xݵnjd} ;ɑ;8QEY!vu1VS%fǰ eI8Hת.rМD+Ay3#TX{q.Ŭ6aI˱C='xFdcZ]Ą"9qQ<[Q(S!y}s3 2L$7DO̞Th:%\pҋD>%mz-C̢Uym}(z@F+gD*CUY68x,N FzoE<7ˌց]qx,ex clo0?~uzmH~Xi"g-[˰)bXbǫðBX^j!NA`H=&u'=°%[`dA5iˢ_-D;t߃~_6&cT+CoҺPۭD)< fJ?t;G4PCm$dH6+<s%0KHK H6Gi78} _={8; p2rʫ ˙y$Dj?Pd#Z׍05+ɗJ8d; n+v(?uSuJz8Iek"<(X4l;+ufcmG2dw=<2|b2*Tp~ۈ2.KPhnqϚqv NNASIQ_>5Asȋv5P)b6CS9aI\ʎAKu v x<93 ;I⭫hp(͗3Wdѻ𤇦*ŏНc#..|.m*>hi֓aeVPq%Ѐ&8DO:0&P5] 1p o/ _'VWWS}C@HkO a$Zvx'!f ÷C(ǞnWqh$_. p~D7 ĢBj74K~^kPJĐwiJE$E҇W‡j8iEˣiyS?@&iCޭ"`KGENG5nȤ'+? ݯ湪g<Ry$V@2ёo(dN'X#kPt Bp/#QbӊTOC=Syg|~ Q7Fh$,C"LAyJ,OWʏX4gpu'az(73,_jBg F|9:~XLۇU'hmM3(1y)}4fW l93].1"Tmrã2W#0`2;ɰX;11'NmaMI}ّ͹j8 H??`1*R}(Msyղi^t0C(_鼎`׆ujF+IS".,w1{; 4^z@7y{;w6O ~S_F9: ΀b;;eb,l'yhJ2D[f<{7t lS+vSD}ο*ZM S.{1G/ÐSЁN!p XͣP^>^6ё]Rq1ZJeEİ_*F/q]އ7. u'B=CP[Ij Q/jSĄ [_*2ʞnw j 5":$ d#+M)]0D^~tX_]ʥ2fɐW!9 :Y"KŐ}:M(=[!u5L7opfD`84eX`([F{"%XvSJsܶJ^2QZ_:;Z<ؾOW& u~Q7ttzEa2l=E}L\kN4>",uͽ [ @?5 Y>O ؛j]zz <~8   5aX![`ڽE'bP"B|is?Y}e@5 ^'y 2]IgIRz^arp!XUTV.pf !nWsFj][ݠC_**{jB-Qr=LA'| qNLfeL77E^h;DV3)'+|# :2X" {vH# .f x|l,`/X7+/jG6宄Z&Y}:g? IcHbې[3Xn_os=+Z՗1%%| m4Ryڭ׻%NJ>j\)/|A1vd6ʶDjR09cU3W jxK> ]pjĥwӌWҁ'XӒ='\2k{lDb!{ q=} xZn*4EKL9{.;<*²yu"3ٰ+dz% ɐ k ӛ  ^ܬ{W&phj /:oE+eGEU<060S!YVBf?_|qmHBDNǠ#z) '۪E/t vtkT>AJhHiHnl*Hr@ronP9uqgPMrQ{^ t?ġZЯ'dV2yJ1K*y" tQZ)dq=<;U_`z5N싌DT7-XfTxa}N"'d `6/oҬqR'>J kY&YhBz) +eX\g, ?%9˨J/ů^2l+% 4igv0VM贘={ r?wG eu;NE| tvDK7vgFcLF"7FЧ.k~h!79:gCZvxvR{#4HJG5)#XǧĠFEC="3iPDj7~Q2"9p"SX!^=&w@i;~Mvݰwu6oK}E䴛)ɛ%\μ]'4_2b`B@n5$@(}@uAr د7@ U<.lD-:,/)'ڢ)$LU,jP-v^I2ǔfY ӕA4۵oK^H30LQ)+VeJ5O?id7從&iECXCṈ>=ftkoHLjh^1Ҵ>33pC'_UI~!π((Y3zO)_~k2F2k/fŦR<]CD8Idr3<~;YE⾉R(oe ZflwN~BLt!SŏD~LsNAS.f!hܮ=@0t=Z]1"Kp"ȳ^V#҇w!YB0v+gnoھ BR4=QTԽ{@PKa̲BHhWds{ EoxJ]Z1ٌ? 2>d bGj[2ʤ29E1j+zF笇RwR4 Olp_j2ΕuEz`,M=']b-U"^z/l6E *S&] ߪ|l\:y_!x@P#Q"cB3E+N f2ZVNME6ܪaC:El5 ;y _нd% q*%Ab8F0*kY l~jt0q4m15MCmm4-bRFt?IO10aly1ŕ!wN3;(AtGou5Q/l2.TɝYĭOS"?$淯d@XF8#bŬk*F$CiَaD4-GR^㌦okY|V"&ȓg~{0.j$6" 4V9.U%:%/rC(b@Ƽ65_Q1@T2\ #m>,;P7-[ZIi%q;JmYpI9V <;>uΨZ<Қذ; |d`c2گ>Wޟ&#DٙW!8W 2ayHِ35,eMvL>G%ui`J.Rz%-жe#كm7pwafv/,rz^yƧvi6+Uz=M ;O zX^= yGΔun=3zWanfy(kޏ&S[2+R\ e_owNeCu2]b:&3׺Uz9e={u6.#6(7dZOjN5'bvWhwg[&`c+z “M库F&/;Wp85rZJ~"ϯgPysqtY [ += !f k!ɠδ5Q5֍2OwJ_QU˺zSA,|Q l` Y]t2@S&,"f_Qx3~]>3)&G//Plx!ruaP㾼g7"喞O:7o9vT}7C=xr>m bm 84jMFFtW}#rX/)٭1;dQNq)Y`mǂ'gPGD{Q𶮿K{5>pHTӿ4Q~Y ¢b)[xJK,;}G1{g k׺43W Ȅ͔dG/ k 2e*e(e&R7qsoU!>( Yʳ Cxhe6c9"뫋(},46-Ұ_KumǺVCy?dcbXE^v^(m4T.4< 9GU P2*)?bvzEE%8xU*jz\lZ(D +BV4֖wO"+ߒk. P=N}" J G ][PJ@]p:pbVmO˟k= 1b6s$9Hc4UHNu؇<捰(@!ulx:\?68B0-ftL1[͝v60H-[ aBqXG=+a8g*ѣ b=\"LgwG1kCٯ u5|ʳ'SHD ҧ V$O3@k%p1θXKB2"sL|fTߵ:ή+7Pumwc('Gw*PChaWYDVN2tgU3(S+vԃ5Dˆ7lOc(DBc_[R5`7[߭zv7yƓŒ RIps? }XchyC{Rg-1c)>YQ JVJFp $c gGTF%(eb"Bm&rrFeq#4HUsLєEAN3F#ƴg~(bx"8KP}ګ1ЧD(z1<0C3o{<]y`]3_}STaSz/ $\UJ^ 5)!phk#+2N1a]s~syZ׏iîA_GpT1D-"޷+z5k=C1c{ZvRph~0Ѭ(0-ԸsL3#JHEQj4WI@cZj ߽"/nv)6µr=(5'XqBJmlVp+]jzBg/H pyE_265݀K wxX08o^t:baӰ`[bA@Aq( ;h{Up-9]oLA+u}f%i\ͪ%A[J}/;h:+d@ HO":K߫Ni?:X>Bkj0ߏ8ZqWZΒ>7W"7G0IFɁ:3_c<)=1|o𐂳KXT PڭXG0 WI>" ^T4~W%Jlq~@&7r]X@Ww Q[j./p8)XbgLK ={-Yw3ɯ %G\|@Șdrj,Yx'u}b ^EY:Y_oK[ME`8}nP4#&K_~fLW]3 XOEKaX΂& HM{zDkk7Odp6MAx@{+9g$͊Z'eTGgh۰Pɏh?Zq(P9UcTTY ƭEq{\{@s90<[ =#a+u_W>;E4TѶ/AfWkm)i "> HC#΀NnME:d B8\!{~Be4Cb+D:KChob %To,ƔucJҪZ{$ ۋMS4[dԩzy 8cAWI*U%uF<}؄D9/Rn'<=*l4qx0[}8FЦA"چg4;u{8Ђ'mMi@M pI)aKsس~/Y-\i砯Ε3 PIϺ~%ԇ= i&tyc ܫZ5 I.g`ݱSVu{--uCQC8N'=B&=}7 cn4v'w\Qyh /~',@a6h&NߢA3ZT1I,{JZX ^TŬ( 8qyJX7Z>7gfH_D szjܿ\9 闸zNfeb'kQEq-¶酶I 8iw";GZ6fj}_TKA;1ݦgWuyWB< [γEI8Vr܊o?8gBJ[GWz 9 [)_.rRvMbKB )^sR˒KwOm;XNk8ZA?A$! h![z^(Khɐda5 Pj+wck@KiԉЎQw0P̻YpFW 4*١z䗀l|0MzR9Ƕ~UoljDif%^6@I^b1)m]Mk'rJIB>-GPf[Vh?RG{8W5?"&6B )jt9,wSI{׾3y&aZ:FoFYڏ>l0A—;իڑG`,AZ@s}!1A$3`bЂo!V̶5`Pqfesę={w̓!ҝoy@D}0\1t.zmXc?!8c/s>?KznKhjP{:zzⴼ3) _i:.qPDA{;^u~{úӔz[دW8qh6 1+MB?^~9MRSްV%dJ\DJAʊ)ɢ؄ʋgO/c##XMޮϸ2nF(rK)Xpt%w\fX&Z 3QH}θ^gm-xeMOC3tIs ^(lJ0!xC vPDQl[veXVxˢ ^ݱN?&1eu WTtӺӲGqTȌ&;[  9I~RD]bcNx |xXxUDf|zȻU} >,\cg܆J9:5X_;52;kIu}t/Fm C0/%(s歞.76< 2rE w8:$Bx94Bf[Oj +#0yXEv>*zL?1\,~(ʀ FTnKNx5mQe'ixW!5~bsHD1ɮOǞ 'vJp\٦u$+> UVƧz+-۰_RE 2o+jpeQTnn x x?LAo^(:a/%Oqf46 H0tLG8D΍Dʭ}>Lbjg\!1e>~7f !LwC}9&Jh>2+&( [0#x^8m07ȎDӷrF0 X_fT9 0cqU`AGñ2! p]L\jre#_ig vj[={/qac_> bm.vGsH<N@ϳՏ'axEf9 iȈ&~)%EW|L`+#x?cӊ9S:a,wK G11,ɧVŧk;P,Mp!m ^keTEXQb:5X,}v_`ڈ?UE+ӌj0×Ita]-!/DI- Q`J% 9@6[vx̬inqƔȜjS48"JQC{(R^dVx%m홆1jӈ1Nc8ݢE)XʵGɶF{:p }EC+ˤ͵ejv3֝e8 2.)+ NKǙppGPs %ZDaΜa-M8i2'%S 2n$}ifRN+B223Zq)H6 Mj6:땁%ʖX@]/il4gݸmm D9z0^@~'!':n8hl7O?}$VƑİœ+ |NU:~(C 6sr&杪X&H1n 5T /O.@T3dXnxV$Q)MeCsHe{AEO !ć*Ĩ=!b%n.6uʳiҡ384l^CFZBAɶv%?rM`J"( Y*˝{ءXMX8hjX[ПD|(#gٴwEm"_h؜i JI l2TDN?Wm, k[m.ѩk(3P3to$ m#D[y<=s6]Y݅"fjm*gGgEo0,&?ĔZ8B}T@q`|:)&:p'omU^P_& !≠jkUÆW}n(qt_O9EQ>Q+X}u3qXmrLcEhDUvFR LC4׷ z_d|kz=ynnY (~G{Ky鑿.g lt'X>Hu9nK:Y/X̪yu~ŴSfp8‚rˇȦDi&wcivq+r&>&_bLSYW.!xH@<)|f ͵-ƣ"+4g Ѝ3vQ7۩!A(. HsPnyYs"ˆX; |J`bNHy[̦CpD'3d+u>GUe'\&uQN+!s)0B7Q$jЭY@ﯽѝV`#_k>Ģ#1d[ʾ a7i"'?'a2?f^a<>U\^82nR!@̑>eSlwpEV4VHF>z[Z{_ap% #jIF7_N3&4dv^箓eR~k^R#Pc o#Qz¾qDvEDw |O!њ۠Ӄӱܰf._͊1qT`!A tГ|NgɖgԁxE. y/ocP@C2sI T0 rlu݊B-vL-Dbir 7kkr TGԜ璕K+''<+\ckOcp[\ZI8Ljc/+/`A]LZ,; ͫ,i>  X8 jy8M̰in\Ykw?C֢~K|a-V ]VԾXVQ8/arQCA,OhƔ+#i,CmS;Tʆ{]?Ei"*&5r\onWR/!rI*aSnrZGjh= !eË[di#?hkR=91+wSB՟ste9MLꬠڂXBRX}T> .]jxn4H፬\ω'N׍MP@{_Oj.C?~n^=/  >謋 CCF`r&܇ UAkZ )*[lD'͕6ei "q1:o+]5 a,FTtD TXoN7jSp[0q$E%e#v',2)a~R'-2L~ vCM8pB6-3їMO7V" Hj >*4riVt@AH}ܛ/ X}=3I~K 9Doi`{;=ݘ[ Vn:gX6v=;N97j#[}'|w2 ,~?)z0$VɁ[&}BC4X[ |~Υoo,1,YN|Ԫ-Oiւo6d>7iټXn=&h|89"(g&c^Qli9OKJX$lVr?Xsqh7Q씫,A'fxζM@)QV(Q)W1t$gU:a2rHjϥ3FGD@N_+֭dcD٤ ZG.67x EGf3tٰV feNɊ7N靠{`^'RDTIAE}HOq%FP20h9xqv}[ iw6T.FʩP.ˤvl60<9F5S $_h peg҉߃_.-IQN$ K.f*jn?gVPǍw61]&8 +>%pv^{76{nL j$#;|t&vJߺ)r(`.RW3FUhxؽ oѠ2V.0~b%Z#J!;Jtjs`@!ZI.4gRϟA6M̖x4q%Ŝ>w%@,yNCvTc%Jy@h [%ЯHW^!/.(s̒&SntgO%WO?~JȝP1!]"s>~h 2\9UQ*^kGqVK8ps k}rj',Ƚ> ]V:!eAh]Amc+d#*hEv~3|lS'9+t1!05 .FNM4[A("8-9f\py"qdNHʋ-nN({d"GL yO=̵"teb1e-zWUy蛽/umkFڞaέ Н׫-n"6a?BN3 f^y`@ϸmǃz p Ydaeons7`1?sA}^3P mbU|:n[.&1fA=ݑbp|>{BY@ S ۲Ws [楅=9`r#vPL^* (ۙB>*[Swuc@XbfSd}MV;8i1pDzXlI- A'ia˄b=*X"3۬b⠴/ HB<#cG,s^iL"7gt8\(|89*Sq!~_ǖ@c*O+.+p]ש#dvA钾&YZ0#D&ܑsdz>SPb T Z*sH8x} ɦ xi[CtdҴbٮ(QIW62l2CĶq`MhPEF h:K;P&Qs`su&&cU0K,@Ħ' U* ]]i{z@}:ZEUn^y*k0" ńUP K,#xPXd40WN!EV}%v1DYolSNnل7"_%9h2 u#_/=j.Q}Aҹpvm"#V_A5VčgfZgu12T`#$B")akta ;2H*ntj2}(N-/jVDH "Z>FIh9VjE5r +GK|%B(91U sI%Q%0-m 3B")P_{#T].hM'TOh:zNTpqa~gHl;=cclŨM@ڛް/\#ug -֔ㆥM;"Pc$ԃN`i?ЁZEP;(^͎zk 'Fr~$>ڽ"ν{,܎@Vq0w9GTޓZ1#p T 6r&zx] c(GBJ褛gIf`6LT3K?h5mu?7}%N/*S b͜-7=h /vů'"%^ )L! 2 BؠxKݠ9$q:A2U!Kd7 :Ga:Ha5Q)2U{T{zgyBYoӘKz;dz|EϹ8u G#s!XGa͛';oq׷J>oNfCdSEtagS+oF dbhe}',8XdXt{!)t앗P'ԆrdD&BiO6NP!=ȴeٌMwh5慫VGQgR7E6;ǯ('Őy0*˻oWR{$S4wPt 2vpӌ86$u~j=FIoǭ)<@zݬs]ߋeͥ2=~=>>-#~ pjs㢙% ?ݔG\MDzF2fLB˟i OBH>-12v)m?wf;Eؖ׈)33 ]'1oAQԊ٬vLjeKz_M>|!0ےL_m8>Eļy_Z𞞝zvXt39h0S8Q]ihrR(\ * z%ma V Dq/D$]ZV] 6)ă=|\+9ay?d WqZa_xsja+]V.G/3nI`6F8Y#iw_?st9*؛>ui2Ll D"Dr~% ԴLL>V/?Ҷ?ꆷe/3y#]2rbPmPEj5d'(}&A.Zգ5M@uFw1V| L8s=SّvL ⯸Ƴ+PCM_|C|s,K2)jK o|dIyRȓlʹp1 8MRV}Xe]wuSAg{ja\)]KplY #5[}}T\nH$X;bU$!}#{}Z gwl QC C$͠0UB6j+\a[, ,efˊ "#Nnle̦ S#2|G--զo E%`;,)s . 1`gQ=O銠ms$:h*&jt^evqR΅ڀlܯlLE\^WWgl&`摵)G^y9 3cYQS6.(pݾ zn$'Bzq.2=LM֭ XW'ÿg.{O/٦YP0o&&ntFXȦܱ5{S+N$yUAeWݣgAŲmiAC(窳i]p4 qh,wo,X4?5w= nَxb"1J5Y�xP#nf1Swv]}ЄQ^fWxf1I]̇JPP*ġNAL1{GZ CjL5WfWDakd@ 369vqA& @/rK<5]ɸ W6γoץg񖅪yFct[W :Y!j oY+ү,q({2`FF~BX$ O"#YqI|bO5V+f\ ۙe;8L=ˍEvMfVYU,m7R(c(h[V}YBkddȔotwbsY{5Ǒ准6ἵƄ:`+vE٠|$ݲa;k_6#p& #?=[OGĂ]w+)2xrevDoM)欠Cѡ>NܴtrZ`<(θ@͹U:JU6#wT1[ni$|ۀa@"p;dߚRHɓρdv[47" :LDI~0_~=AHWnfL]KnA cܦsj![?p۴DS^Ie]/L3,rيEwAiƻXbwt:VT: -.o^ {a~з'*r݃Kx7XjyխΞiD L{@AGAS&ZCqYV䞓O Pm3j-e(ekZ|[SZwSb1=׾iMSbIN:cHb5KR/BmX!!?$ӟ@jKҖQvOk'hC:pRcpnBkO,IVܱg?7 Ʀw\OD݂jՁ%q92OqR;yiCLhJU6 ¨}wLc$ac|g ,F@?.gP;DM!j6MUpAM;|;J˸FV-BܜF亄Xxz^@[򹮏Ds2b=K$ZRd L(DJ]҆pVB._SjRV drvv蠝ע#9Bc) P\;m'9/^&K]!򔊧1>YA}/Db%SX#Y0VQZ_:KTݖ>rާgb.ڕv㠱x@N/D$C<:ׅ=}Ɖd1R#kvG 7..vF$F}@Kzڬ>kuI(f֦1|Orq1GC,Rs*c{mQ% ׅ*o2y(m XGG_U}== GB璶N R4pG~AU2(F/#cG,c8)@_bV.CukLKFRjb PM_bkV]ObGLl^PLshjyZ'x77eCqy0ayPq7vemN /(ؠBu,D>C2T\:)xŹlir!F* .ikEQ&,/Epcv&\s-Wğ`,t,dNB NGהxR,,~ F#3i J1Y].Bj+d.H&{i0<70mȖ8xӀDF#%M9j:@vk+lmECakA?\Mqi 3 ݀3fOW'wG)(U0nZ$ И/=.c^JyciʡurŒF]<}~Pg"+ǘ=1 @Ae Xg6DDB*.{Ou>A"V#;߹Eo&O)$i8QK2>ל%rU͔. F /:'yhz-Ǥx!a1dDOD8@o@Oi7?𜛒} [e {0?DZwE[*z0ʲkuR#W%b֒=I'wpr'371\lL! (O~p=ei`=-M}w3;[>Б Ij@~n#[ Dj#Nzs c40kHP(0<9pkңt;VYreWIL^k㴚5U D;tF\= /r#>miw`Q\[^$$X8<5Tjݲwu឴Y=Iy~h/Y%*FSoTyCEo˻ǒnaLַ;z+\"<ɮÃh@1 n55k@~<rL6쑋zfAJX;n62d8J,hh,IuVC%ZHߴh_FGl.B`[V=Y/jD"Kluu5cDEPgщ"/4B:W 4x?+)h/('G2ك/B_@h-O^YgrAf@k}a_BKKQ =4ppD6TeB᧬$% $XXǻg/L`\Jlon[_OVA9$7q=wK )4An`_*$_"ڵ>S K.hK7Ty @j9' P 3ڃc)A;[K\ir:2w]ny%@Jz0a zŗwSI8JGs9IC9S Hul, %&oL=aخJƑ`셆.tD7eg_>NZp*b [ %.r >mlm;,o&V.:;b)^Wj6| cٔ8d5H ][xL{CdV{@fZY|c-OlY 2!̕[^w ~d?=ɓT$e^a\\3RP4&Bl19T8MNuDa6n7=Er0K@]=HsTfSt {6xBU+lL: uY5p?.Yw_EjĂ'/s!&ba.T;8tI#, hj=>@FKY%9Ӣν~¼t9gƟp8bk|_.a#8'f?~ߦa~;ȫ|z $)+F@tϧ\||5t,V"'/bwd{ BJwPOVfHzdA8]cI 4[NvP8ĵk/WۖHTj17TanGՇߚ6_XXG"% b*m}Kzwkn&Pp|wi3? ^0)+Dh0r2wu;ǝi@C̆=`ǷY*I^%/t'g_OTY),'֢": Hl_C#c |5㖆CzHkqƩ4׳XvbL;ޱ00 1SHtx7E5<MFІ+1HՋ4DzL=B Vˇ6=Z<*s}b[~z]jml*O\Xr&|S6)%'cA~!E F;XÆߦEƑ5!$Q+zہ-gMDjBTRpS sjyˇ5ObFbWLעI>cs Хm^ &m ΔW(_h'kO"m$>-"hZurvL .-`!㡧 p|m!Eհ?:)%nw5mjA8g˿*%4{ޡ$]/'BrXT[-qxtU3^T(cxD*GN\$Z\re Ү`>'m8נApG۴撤Bg\4/2f 7CRHcXmUQ7 nBc L*ֽVV$9)dͷvKcݰE vh*)E :xe.n֮`8 )DLדg1MnHtܢՉH2Tzs+\cuA$}r6$]| $aW4\n#c5 CDz)z8̦P/![4=,QU:yP`"ƮC^٠۔āSH(rueTVDqAh>SNԉchDd\uMOrJJiklFuXI8,yGuw7{y( oe[ Xb⛺css/ /A Sn/_qoCp^턽YUk֝1_K 7dH=k~6^hօ|)5Rk(\O6"HVa| ur u,MuokW eLWƱ<#K&7Sy+)VE]08@kb4CzQL7 ?x/cI`D{E,h8jCb{)U1Sax ~]8<,[?`nj\? _Џ7. i/Z8!65*+EjJ4Ijb],D8UH:Wt9h_CdfR95^$N XD[7(ui۾_f^XJtv?op'H3* Mpͼ7 \U%5;FBta {*]J!hএTym\G}XX7$Z޴ȳM\WgvTD]1kpB:FQE+l'TP'm p _g4/Ŭ{B#MlR\ ~%SV\-w"XF_ݎ< !9Pɞ,y館9_E k7RmO""!B)QN^I#2y=Μ$bTty}:fH~),7힮, ]jPK'n8L!6u zρ4hO&@qOP9(϶h?E3$`oxoZ'B~"1n!bpʧ!(]jF4}oY9Y!}&O: $&A9'T~*xbR߸3۵w\8q6aߒa\A~?#IQ`b'y{Fea=/y:Gw L`MDao&b?ٳj l)*چl8SїOb(%Fs[RfZ~=}#c6Zu5ugbiSFD=\ 4`r@#$n`^G8X׽0=O/^vʉJ )KX^H* < lJ?QyO?fTl̪2bySu9IN1f kf%;gdW@,1<]bO(n}4M47f|Buuڐ0 ޣ=XٺNѺeui 3KvҊ -:;6n2h.#fS+^ `5Yx; 7$d7Kl;C5ٚ!^9cU эwMk3/r "?$)g;Y@;rc#@UgTv=q^U13xo 8tTqZ U0$P;$OT?Ryv}Zo)Q'Jkl,;0R-I}kc!|4"bµ:K |}Z|KQOo]xLw@BrϷ^G' G,a_ؾ bҞ*1BO﹎&bBy :3"!yG+z١p'OizxTjfPA6X#frHRNBǘ: <Z`}9 P'Q."~)^~k,L>M>Qp 7Vm/Ai^=㸳\cvѥElhh$)s5#$;l|CL-ge=Gep+z$sjv>!c? nO'5o3L8n׬'SZY4P p1 An!YRcLz"";9瀎(/$-q]}:h F>6&kocw.ė\1!Ҳws9+6\ΕR? quW"Q+cg ,lġDLJ7,6;XyftpD|=$o@)уUT\,o#k11:rU'WHkcXS[rC v-xpr =+=c?WmK{,00-{'UsA/3/Y˛븠/6R@;΁3|UTn;kC;Q)}j%} !NL`Nf%2 ,gE>JgoSl>zO:ɰ{][gMj:% 2]po`B̪s:}Npƥ N_撾T=0N|4rwzq-E<,@<MBvh(k\r}'!>_']0E_{6Zvnb&/T_7lhr]bevnϽ!\, ҭD"s2<.7_y%A3r?VzS0>6xUfjW,K2`эdY1r sX 4Pf_] ݼ+!l,x⟚HqEΠiޟӬA?Llk/{PϿ"FfgRyqrW*I<'T@z.2ΔA8%㗒׍ XG" _ER! MnkdDiNSi'*”Hsu1,YfWJGu0a]VP~Xf{{FyAs"^;2Nh]RMx{}Ѓt<rujٟ=1 mu/2DvOfQ'Xb+R A@N;ѯ^C%a>B@@慊 jk WjlX 57tm;= }i^US YMζ%AVWžkWT6ڨqxC6njFhd*.U3t b6@I?-$A8loWT'3~4mHGP#QbQ1%W]UٯOZQ{x}-j93O+O]L@v>a{!^Pn{;Yh.> ԉt 5#L%L#y$öJfN\=Abty o5؄WI\s&>ʪY8ęQbL$M}?[a1)VEoqD x+r,K 2Tx1s5 #膳rv0.ME\\RDx 2<ON wMqJ_~u(w2!`qUs246h@P={EKsl]hQfLj˙1m+Sš7JOq@jNZ "bOjS!ȫ3aj aHׂ2ĽVιѷ^K:lKE14̳X'&-J$)|xu>@ց~3i`O=otGUPHWnԯD%g0́i~;, b"f/? Z)a٤ =4T鲚5<%wg5G6j/%V0Eq9`5~䣹M%Գcx'@07[_E+]fhz⡆UXc~\حR=Bgp]؜_Q`m$ѯQJS(8&Qw9VӁPV4]+ j A. \i)I mï Ͳd|C(=^tXw'Y1d[0x|Ji*Y/P1 G9<ِXgBY$JaJDȤ'g\Œrλ31lVOგoA 64,%!|"S?*XЦ qe='݂ZFloqPȑ =>P}g2-q.=IΝ^p8®)8> i[>=߯ǁ/3Ld7\B23[:¢<)lx!d v{.()HO 84U:VrT9#Ge;)KFpOGZA߽8uM!HLc6K ¯'bF1jKAnX_x9h͙3Qq I{v# e?5KrUU>;H)6=6l~fScS+cR6* I/ّg(!ž{wpEIrG ^_7R*mQZ8%F΋=kPݗ h4v.>FWZF#|B`46xICJLbKw$+hhK|"/flXeCwH29oqD{&Ae)Dͻ(#W* G.gZ!sU7&LQKVnbҏƯījcen}V r <43q%**k,r11,)>E/BLή5ȹQY([|7P5ԉ A z`ynaqTQi@١6{xv<%1c jm1Mv-?%buP6a]ɏ/W=r!q 翑j\S8e + a+x2b^l7'f Of/eJ3H_&rMk!twwgJ<.WBt^{rL }0ZQ=$PZ٠l(QbjE!rY e7y`w53F޳O0!IXT&fؒׯNusЬdnoLT?k]ARs +΁deK &}OAYZ}+-2U,> u`49n^GSvfAͰf:׻Dz$'MbS}xx}b6eMy_qj"^ Lˤx4{hD}~ B8{/i\z<0A G%R` v \B,R}[PZ?$="x,RpLJŗxWX|s0o>lڱ]]Pu_QD[W0}r{(FY?'9  W-(NXK /X XcjԊMod8 O$3>H c \ ;TlK#:cA ~{`O0p(c-R u6a򋉬O#YB_jMہ 3VR[d_ZD84JƸ͔[l%ѬlQlW;v\X!Q.:PZˇBy5 ]w}H"}YLHj\h˭Mr*_wrD6pd{pӄ@%EQ})9mlOq2ǿ TdH -[p&g`z\Ӗq8V8ȋ EG7DY4dP˜}+8o ` =QOx9~6?ɢZ{G{mV~w帲v`%?YA|hMˮ F`?F Nh&2Y'e7y]+#}U3.#W+:ͫ{qMd j=p*k `6XLC{\>-@ofo' ?q⭚mUbTjJ M+/iŠ]z(1J矽2Yj4,P/^ UR@ 4V)Jjd1]:2L _gY[\_565a 8@Z;'^POmarjlgBRh~W,hzW(AȈX%($,1[*YVU=DgS.z zlE2'}JM6|| 7ºѴ~S ymZ ;bsldyחá8qfX"1QU$Zɠa,u^ 54Ize9 ـݽaʿNRA= BڝLXg UqyY}kot͜-NeZVLИx ]&c){6r4`JF͟}^H tL j@7'1#gU}2r+Y~[h Â# %{]t'HػӖS;wT Ovw~2)ZM @eWc )UD](*3ƒXUՌI-娠&-dňbczPr7_!}\H--̓ zi5scUZ^cYҊAUؽCiQΒU^ß]QP3Fs?)QDZ^Xi 969lRS6K8ˣ {&UTZ#m~EGe^T~=K]Xd؍ >f,Dc;z+cl vÔ5$A[ڹE fHtf~*Us7}՝>JRm͒?=dhewuVV"3#df@2˩Ԡt5d2ɒЀ x 0': p=x|cUt|݋7X rQ-/a !#m5عoD ^~1ݜ:RBU-XX :b'%;4Nm`<VZ,ڃq]h۬"Qo9]xLXd7 e(M=KN`KDMz|-)@;NLrmѾ[p QMeqtHk!%^*oue;/c櫨LZd!Mo^;oXD/t$u]$\.z:|6Xl")i7"rJ[OQ>' G-6z 0LTs_ߌ*i)߽VxDC׸ Qٻx^zoÒa[bg2HI ?m9m,ピ d9{m=I3Δ7#ɯD?4C W|o :э?hBg3Tb}e[v 9Gd_*lu#ɜ+o"gpYܡCm@B#2Hn딋'GPJ0tpҁHe5r:&m|ք 4Lxmi޼ M.*e>VovAfI7L3v lnIM5n&^t}Hj I Yu`UqG3FvY,ߑlRТ'gSE]ֽ|s8/!N읹:AOmr*#BCCe * ݚB#fW]:EP/';vj6:zM9;r͜s%:T<:ϙhUd d,!ӨBgvmBKӡu舆+" eLh B {̡Qً3^ Y}gza)/f.WKwҪŚIu˕"7`Q-tEPߓSI;6|CtJWYpL?UuOq%\`8 b)l25q´C|cZs# e-M9n_ nq9ͿL-C[lq ׀/o'ߴ1rJtB, g~Ls)Xv]QW13{-x6yW4&+Bf&L`́X-R \䜰wD!k.jX;VEvێ /Y˱A*vu*@硍5SVAdY 2mN!4튲L WQR޿Y?·5@EyGiZ/ K3^$~CUO *!L1lۏ(Rxīki]Hy}Ie4~e[UkeYNmbnb?Ƅ¯^ idRL&?_ B4?^Or<}[obkvzb׭Yj̣гz󳘅0/_sF֍l\$QQ'zF>>W]@=4HDa(kWc!O`JDrk o4t;S^2cueS#r*yXilgDmyj GQ'U/8਺`Ps;xtI[^mN).DTl}!\N"H%[vvoNJF@Fn8ZjItlm 9Z̕@ȃɑՙJ 3`M1U5<%z 9x+yQgg2xe6n4G&N|e03^o$ɥzJK+e9)&{M>B9ek{G*aP: Hv>R ob Yg`ˆNW o6(- u/풺;?{anhcB{5ߊ%8~$OM ܚن"6)Cl f%^ ZIViYR |?hw,ћ `h;=U%P1؎yB`^^fHr}\>t6p>R󘭑f ϏkZ̎Xx-xz =hEWA :_ZQ\SѰx4Ӊ BDKn:4 Ч ӎ;KՊJ773wIaS`}7_J9y mvKȌA-4 10м jx"[\~(zm z jnK{ o6ߌpȯY M#PgFI{,d' MίK-lԿ][p`B%ȾO&f= 'uކЪO2hD$Ω ֖*2%Iôv  8;Ŭ=Uyj~6/j՟4;1S=`잜/Vg{g5uNbWhRq%S޺ɾ#u@2LIL"hYQv[ί9Dimxg^r|x P)tܾ7<1E H hkܤH7SݚS$.L>30 h_?3hlG77skPOG? KcT/ %iO:aatJ`\YX=,%ECrvo-ɒ8&!-& @"䛅oF[&p93>(:@yAv:)ȼb= hǔȊgfլo< 7Vn׮j@&D&>[Bn_`R:⁃ ڲGQ^6X2y XdÕ %ګ3K +1lۑ8Br"^1мg(OZRދ lEcb/S'Z*p:Y"4 8Nu>.ls zs#pe-ʬçK(<'סӣJaeS'tNxًoyD˴fAPde?Nա≠ee#wܐv9?*c$di}6 嶸*P$rLY~pi"&vz8N{#۸ǴCtJ+rqF߻Z9hȃm4:ͻi Sd%ka$R05}|սW,axE8w߸M4`4ϑuB44oh;gH6}=)/Q+6JDTPSQe*.}};B#!ڭZI$ѫ]~ӻh/Sq*fWp~8c=" if(M{C,BҦ5'hZ_s0CQBn> d؈ 6҆5菂l6k5+n?#R@55 PyqeHJ+,hҘ-MSh?$;hi J8 w 1QP{#sM8 Y]ֻ=Â"Q<\[(JtޛBN +'35Mnz,읚KaX5!ڀs&cK(a(xmÍ8nUqz3e1.3%ǍIEO3}zޫtjeJ]Q>5*jh5& W+ e|Wĥ}eK;~}C9f lIׂaP6}?.vܤJG\{Cf!Vh@},w]A($ .rbʝw]uhP =U>I~ű$"8+WhԹlYqJnigIrG''LfF2ș0v۰CZ 8/UVFE$C9rkCJN4@t6:'B(=`s#t7o"fNd/ӎ/l{9/JAmi/ܕm\ɍy)X7*ݥYN:#Z~6Eee952,lxngcq`uhy%^X9fkыZ׬ fȿ_\ YMZN,s( %lW3[-†.)v2}K.֥ f]bf%!WhD,$%d:<2=:R9'2Š&s4BW!8^VaP 0/PKI7;1S m㽭tHN7gY뾎::qkFG;Y׬9gwY[!<>ίy! ̒5ҹų7'L#!jU"ѲCʧg^tD l z{L&Ա&G3zn?R5!n: d.}vyȃU^e7]fN|\2ʐo !z,O ^wd6@Bc8wQQ xIP ~!#rHKIM!§N0狓>וTZM>ͩ r{eǁzTذ7i!Ytht`r(K!2 Q,bFﲾ%e)zkS|7`ak"tD#>w e 5'{&ބ bT:/|7W, Vm}L|t@7X$zUՊe]zPP 'aȊ2{<nOy@j{w9VHj`|.I:D dl,Il!1~lUW ̭(~|UYv:}OXPz NdLvfWyM$Qhu_X4IeJ}ҮpB՝m Xu&pr` OڃY1Le`PM<MJM`=J|t^.`Z=l7W: Qo$j ?v@mbRu왞ĥU, skQ/WټntV8}+pBIeaBw3Ⳝ;Kgt/Xsm:UkHo3z"ze_@Dq7K6f)w$P|_^^_X+0șgՏy4_E 6JV4\JGD=TKoM2c مzNXZ>^Rbk,s8rO! 1JHRxPG(-,M/zT&>y6\ܔ"Gw ;&^ƳTr?ִq|Js̾Xͣ$ɠwޚQھԃh í&j? _?.;O]fD"L\^LGZ 2p18Zga/ϻ|:1{bKX/ &dI lq5p7ԝcvWDCsSrD9CĆ9nMZk3 MN kUŲHg?%NyF%򹨠2aL',aRhg<$}s(n+r/M.T PdӘH^!z*,mB@FWA{vi܁7 b{3L8H|UQIb_s5&𿳚j&JNy#T}! + ȅd/۠XoD) Vy]51ج8 п0cܜ؏ `Bzs>`W\މiyYf=4<1#X0sݣk'IbD@3w$[stc2VsP"nrd R$D/v26Phh\he, ~m*gd(wf">RYGlo}= cX7ug8_{vdn*0mr--r>E, ^C-lNk8\[Ck8,jyMϞAmy!ƏʩM\14f5s"eA]D ϻc%t돉ћŞS}Ĉ72{G j5Rs1kg>DɏV7zR*1j_d/ԳMlF &aNļ"$4i%&ntO5p+ArݽSdnkO?ۄ+l+*ܫKAF[ Bԝm[m1ڃ0,BcS5p{Z|b eU<=3J4ʋ/'~]b+8GOUCN] =,|̐t4oj Kd7N}19|3?hLhK=Ah{FIYK UaF24CI#;ӊMM(غ ½`vlky.װwcL|R/ ]YJ1^rC c[m=) fV5V>t!IGY (+1R":E0?؞PxmýO1S0İM \\Pjܼ%z]afZ|*=?ܻz"YQym%:m w}h܎a o:ױm@AH杣M!_§,#^#R53G}k8,O&Ps (g[b\ !K;4-x"*^VG=sԺI\gvۗJvEZfEt~:)ۘv(htb.w/x)ȂuK9^tID#RB jrO`$=TKl5:A20V u(?CN*?Y"B" W k7U_93꧝ط]g{=LRܝL}#qgO/v0pCDb蚄|0W]dբ'o`1MBErp)met+vPfK=&Ÿ ݑO@Fn3EqMcK"YBc~ ajY! O]jIWE[Ch(@}&5%lCпab.i O.W=SeQ,~GCv 1%IXi3C׳813]v :sv S˾he .NQIbaE jkBYu7?ؓ x71u|;GoRoz]6\3'APjTvNEYHHȒέo2;j}[8b q=5P֫J^Rju m&N:Y(UUTpzX~/=d.V97ijlaocUH)!̽kңd΢!禰hݺ2.2ɥI>0En"Q=mRGGU/?9ݗ>aZSCzG60w5ۑZu0yv-p lVhG*<i .jaGBs(FEhGէ$ULiy}Ү܀2q?؞}5XN Ц m1)k2}eO " Vy^G:)J g-GmÌ Ơ0l^,ͯ0PbC*/ȵ QXϳϬ񚗶bj8vBX1 qxΈΐKQ]yU) yE_\rmu !jƶB6 p:8qJ))7J8(`c=C}5OtہG0V5OLXNb¥-C0/wuq@9I,`k8'&b&R;>U%ſpkc LOu4>t= 93V؀o>s]?B7sدAUjs֋W|-KqeE`!{$q1t֢WOHTqǔ+ܪׁnٹll LeAaȫ:DRϒl?< Ұ.dRkG:̥|Q|P†ikikN0+@Lg?Yy b)LaZnfn1^ QQXrA$9>({2h:P%0c[/r w*6ɛ+0!i_nP[RX5!lf E^PWWJ`\7՗6/MԦYIktwN fh) ,nAZZ$o01xAgwUHdZ,=4¯%jr*G9r qi}Mfo}-Y-sChK!f͘RSO Kkv-L=jkLWC0l5jRao? 4KxSr$^tA]ް^m @_?BY0kS%b\!g񴖔J  @kleba~ ~8нBXU-uCS{ %g|Lܼ!*<Ș>x1&SjY*ΞN{!C%`!KfvW5zp ͵@Bk " t&I%.Sβ$=[ꘑkcKQۢV):i􂫈LJeDI؉u ~yc 22 %'XvJj#|K 7y݁.lΠ+I_fm\;[@nu(!Բ]Av/l`߉&Qqp}5PLeGؒ`y3Ii AbW7v?n \`€ϴӗ[?c#ǥ\4Y@V%N["^ؾ^g '* |BʢyLׯis=oZ +ua[`9g^sK%LשM +M쿨|1GF]&2gӷX<̴khl&+_g- J|94%3.u4z 2Ű#f)D'q{J-:;G ^'k!c/wHF#ׇu7alx"~Xw4gܙ-vM;)BǔR#kFn.J},vF@YTɨ^}"=tZ$C( ֥>^;ݤ[PbuӐ{yw @xMrf4OK6֕ssz ?Aw sRGԿRDO}_B8M==al^%cȴ0VsZ[/ jۋ LE|=bUB*u8't_!ݎ :?e #x a* "5ک`Υ<X6ju۪7խmO!mp(rA H=NReߘ  [v Z\z|E?I2JHhTm w)7L\ d 5vkAʁZjy=Fw&"^H~F5}^ i 8S-m>l: or%K#gkqfV.l{4꽗uɻ~&dey0m"2V*j kU̫+,!/qP8F{eڽy pHA\=.ffuKWPua#Pt$^SWnD`8wf)RO~|b>G7_{=lMϘ}t1#Nxay Co ^FmI8<# Bd C~))YN=:4@s.>ѫOgW˃byGh.5Q&.'4NnBanl_7?㵒't [_HJFD߲hTݞVEg"2`tn*.f1S-Y%^=dQ? Yb42~>r8JyBG{ɗPJ.yW>!ݾ,tOr-BrrQ()lnGGRjT -J(עio+T ]qJwL#sp+j8UZRUd UXi% =񞡄NeHf( d7LK "@ح\lP@4՚%Ir*k<ڢJ,keΐƊ+-7&bQdaȥ u'L{:JrkumDlI}^0 VɿDY9OB:hxB-%=~ȃHh3UrdJf[cj[WFmzf՘^kMr 0<, v9 FP,SzE ٧fifZhaw"lt4ƻwf|指מWt_[u.mWBOtk0+FQj!. A7"%P.@ j@6 dHe(dn\+$ڍ7}-+ɀ;X>2=}ON'nսFVSMt(T>? J|Gt|хp5"N} voREZw V.P{ PDd M8 ^ ӄ{%CL;upcP }/T)-u ѳjEVӎ&/OqշxEAI$F0-]"J Z00?qH0 O(mwC}sdqGTXIT i}z9czVgy[}}$h4xة02]{p`p֥D B0<9/+2!ic\tb%GI*p6*!kO"c. Kl c&5t` %ڦ:ںϕΠ)5 1̇XC&I]J;. d wo,n Q~Fa˫]9(+4Y192M)Ƕ2;UG5rYQnF٭QF5/~y=v8a,S0n{ G=du3Zl0ArX//ΣrW&}6'973*.y  ]'Rʒ=ֲR٬$="]lv\zSH<5"IɧlVZZElL}o*HQ~`5oɅ@ ߭^*3<ݚk0 k:<*RGT=.Sq7X3>+bUQ},m;?%:c.#H++w/_3j.NbUg//xo`Tw[0!ͣkRwD3@7FÇ/w08Y5VM~B-.-RG >^7S/ PͫkQÀ#O~np'6vz!aGo@BHՋ ý/jO=YKn~Cq3oMM@Y5 ӽ1EJF~漓;qY"D9[f\̢i bYZ6J8; #e4J)2R4lo5"Ч Ly":4K #ɘ&HGOTLkTbUΰ`蚤X^F;J'_~c[d+A$BlŞ`]b"[9#ТNkndIN%cp =|\P%md=Wc3ƻ9~s2K B ܖsurGO|$Oکc+W_0v;͖0jUYGuUoA.&pS5?#k,y?D<.Y3ǧI/*y({l׵(WtҳabeZciE/۝{umC*9쯡F.T'YUDD_(}w3r&0X!eԓR:a ; PmJg/րHQC{Ԫv$r JѭБ~e>;3K:xt)@W}ԄVֺcFŵ~ȉ!G5%$J_;Zj ΫsN)Qw`?c@Xel!{%ڹ6Fs)?N 0"Xi+CvZTQTԤȿVm*lUL?!U+RhHN Z8өd{P0;?)7ûS1cdoTz`5󄡠ɞq ]ziyZ_c1-L7vfKb| 6C5 p펕 F@ OӞ'"PR6SHՙ5<܉eIYu%nxfȬ ?qTYgw~e>(^ꆐB6vҀ7Ei@7"– 4Es5@,q\'L ϋ=]wFgiSR}~1=u% ãO۠"ioBB{̺j8%>$;{ N[RF8 #FWͯ*ffz}rnz]U Pue^l;2֔2|Mޔ GoI6NLHs~BʇQr̪N?Ny|4H֪*b5 sS7-ʹֽ``=b -_X"oXQ_k\/횠#@PIAzUab0˙#[k N&S'j3卉kGR)g}4$|;KzddqӖDĒe{^STLΦfpb\up0Ai`nPHl&W{4 |t̲etFp T*8:V(xЁOtfw' jL\f!Id_Ni=k(-e񝫟|l-bű2J,=YgWvL/4K$NSr3d$1ɣ{RSEY'W=ě/%1; E 'kֽmWլ`Ϯ6d1_]p yCh>.%sRh5Nʓb \ ;E>iEO\h|2^惘i@V)%BFivu*^_=TUC<.-{!KX>-(Y:P!"3Nj&L!8Mn$<ߍWWl]Fxqmjs[a/.gk#h @M,::C\=xdֱpZBRͣZ`BLGZl\n~@v Ѥ~D$e5G֞Fk  vCHiY:ml2 }#P^v\1NZJKCf h[%0`*h=_@8(lˎr W2^"u׹X=v9p/}ws-!_b8MH0=S]p1~Gy>,.!bF|'#86,?}PRƗ1Ad2꺢/%s5 | LkG1Mr! 2o;;%sPqExKk6j,kFO3|בP_,2ouB*c@lL8:]7u^t~rnӖEX*'qaxelX0ș4ZrVI dޫύ8z#!C-b %Cث&n?lWzarSeu"KεުkBbi a%$W޹V=6{dpuRrPq{kk: R-%*0i?x9 4B{-qM5!2`]rp%yzGRn:꾥#nNCW5*DIV-f!v?N9xerlT Ccۂ `nU%t3}~ DE"B/_E8RT4fy4NIܵ?a73ns2vA\ `::;Đ$7L2j/YgLE`UWݯN$Fpbn[^xN:$z̞V<+hsuFO}Q7ΰ8IdiYu Fw[g}sD%j v)xOJm'kٶ3cѯ8Xj1Jvk&'[,hUXsj+d;pļp/,|'$s>Jܐܠ̏vc}s$Ѝ#spP<<-օ)-% [߀M[{y-*mϣ߂ 8u;L28}1S'z ݜ-w=MYLgȈBqVX9C!4 ~lKԕ>Pldt BroY031bKqy>n@~/1x .wC-꺂Oʹ"[& MɁ ^kjQ~cy#t8 P@\wX^ :t]>bJ׼Q!Teػm!6syh]vFQ$&X;_Tz⾪Ƀ;f3TtI5p#y7(G/3+fF[-$d ')H>G8>Zs6\hW{1'xbXRK䁵/cP[L&Rd9 ]qHϏaDqh_KO9] %{ƗQ"9ٰsc,nwKc-d=1~4ciT'3:F;+|ki. D-žܥ~@J}vБ]cSAׄD0A;fƶs9S`lxaIN)۠R#y-S>`x^,Zw3deZ]F,8iJ""Ԓn#pHD}\ZHd"xʞzGU:$"* [ZHm,35&TF,/ > r@:XCV6 +j//Q +Mx_TN(~pBJ93}W>ӧ]2* 6T(BS:Kb!Wgf~۷a^2;]1<\Ж:%p2o%dd ŊQ&Rlp>@Z΀N cZ?roR\j+5g|#] g˛ y`|A"Mln3>;A;v^H/;zkKKŖ$ HaDnpgu,wPsAmEtNH![b*Ȯh"M]93?4s_/Qp_ cr}xGYiŧzэxr`Oqo-s`B }3x^ڒ_Ha|f(\UtlkqNabui`T?dC+@b-׮`?͎pa.ThhL%ȼKJ *}jd-^%b hX D5T["Ղ{C>} V1Amq18RoM&dO)U9cyaϔ*}ŝ3S^Ȭ@}LG&Wd/pQ&LyA]Յ@&R"/ꉫk;;!-r`4jf;t'AqGmTe\}`ט 9E,z fj,kxrZp7陚 1bR~c(@zoFxc*m-(GWoE[4Ll"^~v+ H`$v"(yNe\SFP+d%K23gxwX:LJI1{:]&Pjz}1GΥc`%bery1c+nHBP~rn O_,RԠ2f0Y4P؋M+הp3[UÞ4G:t+aS&Z `TN|VHיwv;3`˘Rߘ$'.,o4S {tAh{tXjq8o+qmP(pz%tR8@byhe hd|axO K+ܣ^_^})Xk6 ;TDH^o>O[$HX@mX|W;i6 ^.uٷ&xL}GxoZ`yLŁn0gOr:OK˯Zs$mFH8ȕgzݽץF\.!VAxR:A7}]>rFE!ː304 M׭URb}´G{v}niy7d6dҼ((p5} >-.("L0cl=&Xͺ] *bt2('!E hנ.a#ٛ#5kk>XfjƊ3Ka3H3TD4/$ M9+bnI1$Il NWݠNy4NKATxeQ>=Vw5Fii2%;# ".a_sudOYwt/&mjSuv@!.BqFR`~נߴ:gp͓t*C 1iѧ17hQ 1ޝrYa0M!isNNR+7^laܸ[nݏĭk[Κ@5Z5ptMcjY>!3B-km+Gі'h @Om- lAKyUgT"91LQͱqZi<ɥKU7Coxdm|S' <+Um9t`QGJ?nBU\TJ,?^k.R Y#g/Φvఴ{@L>.U?g^`cKr9|z&eIUI+hLlm9;p5[PO4~ GԕIY!{^ lN|o'p!Kv[)* FH! d d "P5˅fkNEJbxql5%c醢4E5@,NT(\::{~up8%}2[s]x`ǂԩz=hϯD_v2Y7+sm`.L&{۫Vim%{I&Y٬[A@Ƭ}jԑ6tq5ffhĻs%&8 {l^Jb nP k=+8r4{SDT# ׏YiFFdly26 QQF&Р N8 'YNXj.uZx-z׾ @ ,"ǧhROK[SKf:},JWb !G{KS(A5xF3Y̮gPL(1ƛfWEFo tM=t*,F1*`{ZWw[1eyx}?dex\،鮦cs'悕ԁSF9 {ʯ_bc̦d\ 7rMHjY2|@L|S:- L7t`+63j5jJ 0(GIe5ޘNnʵ'[njEg$6_.Hi$ fHOq>nRㅌ3`NgYR ʡG U-^%=TM wy9==a#B݂<#ـ1f@J[ETNdxTlvV} TiSmaE'0]m3n&t~.D%k/hָw/͞{7CfY-F<+OY?2M?n5RGRgcX a-!0'PcF^H~w/ʭDv & z:^_Mw[cO2UiR:N F*8QdzrMcO\w?a< šǑ_Z2c]m:9nUܤ ^CfS|sJ/Z՞,x1dd*ԘíT[:q FGqɑȫejkk݂L' J8U+ T}j}[0WS /~4#{"2N+۹ґ>"|"hȠ♡qɎtt*_4EnCHqrH4 Yy[m0"F5#&%CC랬cb9./ʞ3?Ym(ҰmYI} Pw2/}Ywy:h܎\e(9>˱ M6A}|fF>zW2 B wMOM2כD̗Guytl.zZ %E.rL{e&Z@I‰ Ve(tD97u4~NSaLxeK&0[4\akJ5o~( [v:P_[Sh^^)^NP(s? S&j5j "e&qӒz;Y^)l@dc'AeSkjEsT y(`+7RWhz^_X/hB⋼5rA_BIcpfVkQL?wAK$ixg=9_U X7$Lklο7y׽\v gtu99$F|#bs ?L6|af髺BFOu/l;{gJCqfd5A(hcxzozbɡ/Il -J">sM7Ըbe!8su,Ej4Z+Rv) KyB2 B)ݎebǛpr@p]>$`gEwT1{]bv">G9JԨDg>kLTON Cľ,`}!`hQ#7w' €#+!uN@VLC dXڵ]j؊I]TqaS5UY@DКcGų ſڵyj$h%,-HnF0#A*~@_zF0;l&ihJbRQHz3éU-/QxsR=#'agO~`Bg]7D_ͽgbmpb9Ƀl fw趒 e 6n!W^@-u p~]`6*u\uM9\9!;'X<2"_f\jl's\BH]Z1ld$uRoz ~s%5 k~M# ~IU:*09mR[nNReLڳ<1d=e/n?pš{G޻a-T}Abwu W)L~tabp!")/ 7s$XKIfsh-T[n2$a鹝@w5jֆ %$DdZ:x!S̥67둎˨}X.*eg4 NR:!}ű'fκ5LѹZTΝYv 4,>ϔ +0v#(F0Ջ{B{lO4iYaGSj2Iͩ`knM ɿsV%egWmO;Wg.w)-vC!r|I~iM.M䑨2.AǤIr0Qxp؞2lPq{E._->V^ŖNp@̀v xX4ۅj9ɝR w*40ߐN Ųز$A@jB!Q3tW+N׾iOFnaPJG=`Er1ygLV^0Bi:z|Yd }`CVq-#aD Uh! W$Ê}F|jhGZ!CṭH vP)6.Gy%ޠAʥ4av)3:27K>cl%#2N1B`;'_hRg8 >e;Q|-Jc`{D9񴞋mh˻/Ґ@iBC4 hEp1}ywdUD쉪 OvK,;УjiIdk?rL@92$!Gׅ 1iȼk))a{3+3҉g'J[jXK"uR*s5̹Fe%,dWyG*D.WEx=xYF~]V Ķڷ쒆\$6?s?J}!J_PVT5i-X ^#QkM۠O^*})gU ܽ "P/TiVgMTU~WAHz9V~[w){QW{G\rRW'=o dMNyHpXe@%6 (\{$C&&9d6 X0{ɳ4BD[yͳʃ/*Ȗ'SLDs7"1lU P-mHC6Yį&"6a;] LU}O1٨{de|%t|OJ ),R/bŎd6_%?P *sw|%c@~[(b\w&CJɒJ‰ݖJvݜ="4+eR݊!Lu|z1= TAb ǻ%m.UX}Ȥs,;S>aaD6f gOMڤ/% ж] Fl/6U חx=#!CO;E6If)R;{sS)-9馝n%7[J2ty-F'DCBTD&_Yz`?K2:H_zb-SVXDžBާ8Bb]*S@ Xџ/YmlH&X/?Knk\1~V@' SeLپ)#׀y*)DETߗ"ZzBj'\uEjuaYthY(45ueۜPis*Վ6TkijyҩCFrcp{*rP2c_eW934V'//'y_=;Tu]1Q@ˈ~U(LFOEٕ* w[I` ,7 ƤGm\ Y-H$0Ar3ɭ!{IR[}O*suDtxΟk;'0YbϚaI wHQ롺֡-s>ٜE(i/6D-3AJFJ !K&gxR$J}#߮} 3)ghUQ_Pc>P!Q[6d 0VjxMǂ ,} N𘜇GPSho8Q/3y͐ H.Uoܷz@F$ g"1gDD`$Lfҕ*͞j~ lo+Ggr]: S;"E2Dju ҏyhz'$=z@ T[H\a:RE3ڍ\6]};8ErTc]76Bxj?P/ A`YumMvZkaDɅ96@ Z/Fy+)MI .JH#r O_ L}D/ /^L8 }; 3"'ݢ^lmү ֱ)HV-`ʙu %~-;vlnTϋA㺱Dqh_pr.4;G)ls-v|ca^#IN<0rPQ"7gknJ;@0WdNYt?E HE%\+t* -=>{/{ǰLOpDbk D>W$yWZ Dmuw/Ao׼^|9s+\U\m75E KZL-D[S@eq*u ݬFhjkh6g { !Gjac,c(# Y;Yq*cKZkS<= m;}xCG"` ya14^5ܿs_837 --I' f`5D aѶ[Vc(%iNmJ.a.Hb B-Nxr4^7QyTSeI-ƭhv-TI_l. MP_ኼF7_(0c#tUAm3mJKI 5&bGhGkF&NYpPD{YIV^<ȳZs9.^J 0] t~";h4*U|mj>FLYrt tPy,0 )z0ɃQ$JS^A~CB:R.啈Byo_9OHz+(qQE $5߹j}UzN6: ~ u&QNqJ#e?\Y41Xg,Z *ܪܦ[<;fq,CeA=ݵMKUlwR6eLǼ، q;;vEo 7Rl-1m~"0 ZJTItzd^bL$f0"j^ǒݡ8"5eŬMP)` YbdKTJn:r).tBME6q.%a_Kp}lgz|9_xZ#̜_XRF*badEJI&}Av 'KT N<"psϸM?M)Devu9W[B2EQJw9iX" T.ҿqxiO5_`b⦅;)%~ulcQg6#}s(yy#Ev?^sE)_Ljc~"u`^]p<ĵM#;^/Zn7sV*NeX/m`A pUhcung#@ß`7 ͸%n! 'Ua6L}G]!Ka-Y76ҵM,S^&rpray=~^Hi} '7%!Lj5uU?.2ˮqLKzZR}\"܊M xϻ65⪗ DmrPWJKHyUGb}LNEKT'`{PpCvZz; ^7 ca<#^T5 yU!vQ?5&ݱ'X4%oδs9%''|(I$uƤ*.;`(ˮtX`RGgtdv)OՄVچrz2# Αo0 f.=TLLr&Ogp n\'I}(fF" J1$U4 ģvc7RFWk۹XD|VC8~Q \ H'}_DDfxD%zSf-*lR@)j ֺA\S ӥͯZi `re|}}/WhFإ{lzNgaV Mbm~F7v,?ĥٰ<m`1KSsdC~=$-W΍<B}Ffa);^[u0Lӆ._=Ɖ-)N#sz@rL, Zߵn (=zIlBycHD_M))9N)Que]#W &Fwqåfd<2g麉>ā6֓|&JU.~EeZ>6'$,0y|!kdؖlΓIonf^7$l@߳J3V)>Z 4[&$_0p( 4`S|˭p&cjB豊^,>3'J\ے0x=d"#,NfeV o@ChMR (WohAXkbC9:uk 6 'Ke@+q׮E'xR1b,:ȈOuWR*aߎ߯bA 4t&V1?nՌ{NfTYhw-%y{3d&wDQ=Ib%p>1{z\s#^ :oqC4zʶ^->5efbrڢރ)zO{Cu]r~^F4Dc,"COɇQv-Qs(w3⍠R)g-m(0$@,dK$]IXw2oҝgDh9 ,"əD 5ەXMf߭\nqOq:I="p~[:kS(6yClT" |=UC1w\HNEH]=AXjrG$W\{ B͸)CE%f;M&˿{ rc獲l3 f(=۶"{ri9,IHk"߂˚y"B?n/%TJEe*,zd-&u)'8sMZ iv+bs/Je/ꋦK?7 \Osu+U@ ZJU='AʣT 3Ypz.(~1HhXajFNN*YԖ۲ť5N ׇ*uCdG*D|v'ֹ 1ȑu|ۨc`SnndX63Q}_:Hʶ$8Qd;EPfi,\*_X߮4}w ֽ=!p+!##ёFl5+lAY%0#9\Q=2sPpW}K/z! -zQj$%`GZ WX7),ö8TԔaBz?=X.<`lNVH;- \Na"S ;)aq{ּ٥'dTd"nx$FNܝ 0ڛz.[r) 15 ^&aMtq,nDX! GsW;Nb5]L)Eb>RϑxpS> b~ek0\KmН-<ǏkbRTJ"##¢x޿MS׆MB{'`9 DUzu}I*}fv*vDIt.s̙|!CHP =b ݻ (+'AFZ= 8+ ƗCI"y0AuP2 F0I/Mɺb>q.*'d~/)ZQ .iNQ>ա| 5-T Ti'/ M9B -v6h)0ݓ<:AI,ΚQ_q?{#J/FBSbT"Euo"Ԩ[ex Qk<}!vx:;͇FKAk(UPP XEHĭ(nOwo}PR]g5+&_45K }ԩ Z,@B-+"ak{"$B"1mX"TJߐ+n?2':J'=:w-(v?/e]obѽ52O9鈟ݳoWژ~7YPfc|)R4y5&-;vM!͉a=v)!s_v/*=%V]/]ipIFǥ~fcړ'YEdUΙ@]_Zd`2:b˻a{qfb1lZaf9(.N#zVnzNiT 2X\Q'&C1?K0TRa&iwSaqvq=+KvFX*`"Դ۶D:#r/>Tؔ#gvr7(Jy+]PIv%Fwy܍~.2\D`hsbE.*j%`OzipvQj2T / LSzb. gF##l`Ed*7Mz#p-Urۢq@![ܸ륏7+]G5*T{r!(iRDuGm4QN#wXλ>-|b_Y] ʨh -Mag(}`7bUR|N.fo@+]9}UD< G?8BG'n'=!BN18j:ZqCK>miU6fnj0MHk5 gSDp!YsìJ TpG̀*yFw"tRQC1vsqZ;ei4c$ŅZJFGXE ^0kB]T5ɬxk%9 m_gv\|s%D 4yw7 [t}Hq: İw@kozmTt7F= *a#Rߋ6#KW#TkL b/ #~0-+Upz>wYL:/?N_[ᅯagsk!FMLf`?`E6I#u]2;ȥ=\eD)2$PiB=vgAN|\.0كxxWCivppn+9Ȼm !, $%`QU2Cj !$3 qٝ@& #p$xcF'omo!n ίsߎ<S6<(29^SxKгojpNvZSFOi jA+Jr`hhM3]k.k,Aȵ*nϭ4V<*DT5?^,uJ=\kKEJ\?}Թg=뺊7e֠!2 tU+Qg=cpd,HW7Bv8D}U|[8+hZ7آ4@-%Y"ɚV<4J/hv뾱Zr~%'hU>fV JB/ɕW$^[ɜD +P:([z( 7ky8nje=!"txL4gҖ5\R)ц)BbJb?'{T.]2$C#87 '$6˹,Œw"{rRS,/y^C|+U*2@ީlCɞBO^ϨmŏR8B{Q{4>%5 ydJP1Ą;\ ?B 5&FJ6 NR)oԓzXi2Pҹ˔l+riV ,Ks8>1C T8Y3]nu{!+_J=8176oE_fܹ󓔕_, XdjNN4GFc9/y%Sy7)tjB"1i$b&;nz]\sTbq2&2~`rQk6բzҹ,wwtɍF{w] Qm>\|gKIؚd|۳*celRKUMLI y;?WJ2w ppmt&o.*'E/'4A;>ڈ%">>7pg^=%Yw}sx@XI.hdĴNs]ʈLۿPm =s ͇p) |6[ZI{{dXwdJ=~8:DgKg- uhfm˥]qK ƧAlsATzP'|V90.?jO\;'} Q˻,J^̚w]Dw>\BtOeÞNl2{}+5)jؖxWz5!n\Nw@I>(pzT+fgPH-Q语Y;/GG,`P׮-9KyiJ/w4}i\Yą~պ2L0L$t(sϐfmmX~r!}dQv!+q5UixD9]H8{lBh6U>oxQ>IG#/˵<@/Er-^?C* 4>y&i&~%U ڨI]wBR[?lg-^-?9NWNEkrFvXw$[[`o#mg+,!anAN&GI1LHM5k1 jnG!WtR)gMTMܙiyCŖ+ϤH'_vx|$(z21;ƿ=LOK &`L44);XrxC+?haA+~(`sgȋ^yMq50.;0c9e]WMCaT-F*TQGne~cvrω u~C^%{잢4zve6 **[5-ט.ơo2x_>($)ol7tAҷ=REql_(v7d=ӳk@# JGhu}?Y9UL86RђCra2ƖC{շv_(m^L@A:-p??s X{*Bb[cHs$Iz{IZ'U,ͽp4>@({aTr)Ď,,ae͉|e+b\7>Rpe{ׅ>s$QS(LΖpY]%D1#vsO;=s1e?nhNL悙+b~ϭ8dHrۘ%e15K6*)'< +^8p> Mk}+\4 'j>&Ԡ[a&-@}a9k:g6(ȯ2Pl_ҵu#R#&eGl.uϙaZYc:! A7$x 筏W$i}lG^rgF()PGb;0!5Fڔ{A5]*)_ej;6,mHg'<1pj#uN=/ W)*M:DWޑȇ2Xڹ._ uvO?(CХչq.Cw3DEٓc"ŪTX'ueI,6G}*a. ;#iFm}VdFx%ql2` S#Wuu8;yl}  pÙFGگLR;%X;zB'* ҒjѽA3^1'^sɥKDd$TǕ<~\ѷ?֒EuN4 SY g kϒ߁ haO^(mP>+"%Re01Y(i+~qsp*־aԻqN>iZ<ό"5VEORfs7Dza;kنSi!>F W(١ 77/xMGZruI7sU3fhgE5+,]tȕo }0i:۟yx`pk~#< Z347X3GAF~[ ʹ,[$wy gogb"+ |Ilth#,AVTP?OZnj\g ,3iv [f}J=E~]MV|NVhK#㋡2vi`ym).[[cRXXQ$f}BC_Q%&I?L t6vP92|Hls+8lRB^ S uX…G:!4?):+&ww@XMjQH0+߼n90 M7¾=O<˓eG˔o]8[,7! ~d(g+[xu=!68C7S / _q)R4HS5sp qm-W~h60xPk9M  9x6;o/~R=J|_rȰxܮdF>;v9[òSQ/e7#6wLCwwڪ|\0HRWʱB"%s2ߧʤԖ5<@vs_g1f+ЕĦKiODD-K}/J׊SJň^(KpoCX"DT"Eo[FQ@ oy{#ÌD0gWfP;GvnxeՉsXh-?(|3c<0?mA8(d鑕=|/]<*N(Nj=fP2}ЙJz_sg﷒3c}h ese(S.[h }+h8Gnʟo~~q iH ٜ:vyrڤj1Ӓ7 B憃z~&k²dDaFu\@yGi1&n*c]Aa?ިں¼rkbdy*d Q:׎ºj r\ @%D%w{"?wq{\ ?kVժҟGBvZRwWca@Θ:-KVN=ƸBqtJKi;.3mcکkPrN&i iـO(YNIjLNۉ]$bdm&-p}|3sI \ku_FN4TrD:/; &TT0 (y8N N٩e"-+<r힟p;by+<5FcNoo5{\g@#F:n#ǥcUIԻ?]yy:x~Dх%'3a!qjMvBjIBNR*)CgsE5$*p`_(b!-܏vpLItB%i@9F˽&!(^n%ڿt8ӭxt~EɵCIkE 4.?4FgonY'Mh;83 Ҥ`C"hn뙡7H\|[/*VSr+Z-۱o {`Z\K2U?1!Q\Ma^f/aP"`m0L4R+V"csB,,k) ֖Bq1@=ܨ\3܇`/[[]뱯[EcȮM0Rze|GᘩSw ]DŽJKmBĽa~0gْԍߋ a&Zeb fCwON Mr u &FX6ڗ}Qw rYKRu-.ҴQ -6ey].A6Q];ף[[lb V|O"kڐ!y~2)pY $A**1%l+yce|c?.@z:t3ك¾ d|ӄ!zAzWzZFn<a5Ziie@nJ[Bnyave5!. ] DOj7j,vr2mZ'Q:$3xU LAeI$Mv5S2ɺ ]$Rqlw!A/y| 朥#I<^-5 vu|$H5|DkFFo MW%I$;FpKO@m;rgp0vEZF/$o]H:!r69pV z}xxcNNJ֞lwPL+AD8_tQ؈3Gt,f)@5lM@H) ZLXzp"i\'6Wh6~C4Qb̕gZB?{.ȁ"]$E98<'Q9x,^$NhgX`_ =DytTQv_Udepl]Q|hgMoެG;Nies+)ա9 O3 0(l}HP̗>O~TB_'@?kЯ}E*6גvn^گbe*!#Bka3_aqn v5Eoc3A˹5-(Rx;eٻVBIPF3L Y*FYAϟaBYdmE6!*|N4ȂPDDe F)FJ^#,t}!m 9w$˃iLFO <ƕY)`rȴ@%D6\ tR쥓"ޜi*$ L-n8dk'q/-m kGQ$&CסmF +ҧ$u{94%oʺZFvCnw2idJodH>y (3@aQ?]\.…{2>9V2[ʆGeӉAUM'H37U{ qsļq62`'AX bn[ vڿ7uh p;|AM{t ~ʀ/K6jODP:/4 -]j}ޜ~%,(rtq:nS#JLN3r ፗJ,+su9-_h&" m28*xI[݄Y~L qdze1Lۣ  kIy:Hއ\8HP(1L[MA3#U,qRL-mn Tdu0c*kr3an\}8JH'BܹפاP"*pctMH1h9nIMJ .QWIa#[DS8d>X&-.P=< :)gm)#AF)Ж oQq[_#!3̓#b`A݊&"/!4(i? ҉j=kKI=27:ޚZyP¡G3ǚ.f;'헺{/i*2K.Uh詡p̝k&n[-9$ ~B R7gma0@SVߍ9Yk LKxR@LВeWX!24[Y Pw, iۃ2x%KsI>E~"=V5t|54n"uYK5tR|ROV* - vX%|o7H ,ѓס3WipHsh&j#_cDXg?xZBJ , 9OMk{:@: 1_FAxʃX56{: K~y &pUWrV+߲w'76*##%5E_z㹵τD!G9/I06'uۄSL-mItlyTl^#v[SB7 ;/(&"pPmӷ\RmeG|}Ggٕ; ŊT K4JR ^'(e%xѱNOWLh(̭"({,w }0DF0K gvZ|X\?Z7j!;d6 GnnX֝&ŅoIGy?ft;K7V=2(ӿ4K2?}yR\.? j 3`WgGt*R&miOR }c#ݶ''gDiQ@#35R7%ƬܨLw9=o:\P_'ƓxvlmaD;㍲flz<y9CDP Q@l-T˩Jpg-~j. $躺yr2&|DAL-U{ $TF^dum"'hU:YaMC0z~HHd uŚ A U'A h:gX!wPad冷r@-E[J Jv '5=8.֧5jFcEVBP#6ivS`̿-VGǨb1@0$Pc#įS٨`Еxp._E#'L﷕SіDm;V$f;=+p}Cm_zGh !>m nh[0Znйc B7TE@'Tx" 6DI(b*:YoQ4O"CkmRݨA7u2I2Lepbqk"yxp+3Aqa`2ÿ>H~:ɢYo 8Q4;oTI|ϔ+eZ/"H8yx\~51B1Tmt-|Ż&ķrJBCLAqS#1:_ 7M>Fb3}FQ\qL-?wL T!-Q;,[E2VƇZ!i1*G%搃-⇵My'L\75<0>q9"xS*XZ/hlU9->| f%`+iȑ-?Nj( ͚31P=iXQ5?wdpm1{ (AY/lOo$#$ +7X.cBʼ5Պ .J)ʏ.j›>~wgw˛T!4̯?--,1cZN1揘:tc\m58&٢9rܪIz$5 )ǮkR+U#p TaB8{sYLB>o ' u I!6 q?vQW6ȚjH5"؞"9.̦"n㔈 [փ/k\[p ,H.ԡ71tE[OR+\0@ZΆYk }5 ]{xu]BGeuLDD@?Am[KbYluSf+~!HUwF9KsGM),Z_0kِ|^ KMhNrM-xst?Hw-oD|4"` 3+T:q}/ tt Kl<Gj#E8?HXIe®[+}Ҋ@_ͦ6"AtGC"%|-+rLֺ2(Jpu?G)%hn ( 9g/H)hj5;DBEڰӣsCbHѧd); jr݈trdT֙xAGj Y==iYjJ 3)ximȀ!VrMGݓpU= )y%*<>EbgKlz덌PUi жVݤ (s3x%^KDEUm8(ueRxMv]RfCcK)!`pN+ >]t^NϭjO16/ B)G*, 9U lnٻ|Ӕ5ju=xr{`a<#M*z-wcA?R#`yx9gvKH,"_F0 ~^9tc ĎSѐ][6^;:ǑQ b}BmCRI3*'p+0lYV;wJ#;W8ŹΛ%[fx D1˼)!;_ٷWٶ?q?T|| zbwB)Qke3NHsu\ 9XxsXsÉ$y;$~xkjf-D8[A H{[t90 ѨngQz|(eteRZ?@ F|%0['d'I.@Dy~gARv %Տ}~ˑU%'9}`ޥBUin+y@yTPPݮ~UK^VnL]_^8ȝj<w5jk5Jè{v7Eڿ\`Ia!R+¦Wq, Ն#+sZn*_@=AMZix5C=e&k6̖xg\@嬒xK0 {OAeKC \[dP8k"7R\9xe)CwfY1FR2y| DFڍp8M}E"=Sš?Q:+Hن+jm U3PSP2[ɪQ5n3YԭiZ hC]D(qݥmgoY5tkN]Q .O.%Ɛ`N.5xU&4|.,yd@'~(Y9_]eEwn ur8ܱ9LDI8Gg #Sed.6$=b1d$nn/7 ӿܛYOZ:-*F?}Y2"EŔН(|fVb)d Ǫ D&*\"Я B?V!r[CT- ]O\ «?[a?Hhi27`O#n#{Wv >!QˢD8M1>(SVh҉Zlyw?Z׀s:0ƫs|̦Gf~8 gז =7C1ݤS? =BMf):.cBUQ.QC9`M;<v?>S8QKǠ.19m6dؔI#4$jI<9'L2 Z.鱠_MޔI"NRR]e V/pfvϭْpP+LБɌ 7U+IݬVta1_ z/1K0_;Ps5*ʛx_DT|5i<ɦ,~/"m~NT 'r.t<POOZjJ4Z˴*[m"׽\jhDQ}c*nv~Ľ6#s}0M?uQ*)CY7F- F 4a8Ӯg|p"F;7M!$WXmzQ@؈Ӄb'd4/fE:25bxjJ16NZ.]/QP`#Ln2CHBqΉ}Cܧ1\ 2֔RK2}۟.ޮbkOlۮϾ54R=?pXN-Uy/N^Ś;AQ\% *į-iTnP38 {GJf'>S^l=6zU v =xBf-} ›7"_>Дx:#aUȴ)uù:=- olZU>{9`]z 1`L,JyDgs9πDj0}+@ʇŝ+Y%-i![yOi&i=)~ {zYuT`Ʌ+Q٭V(xFUuw`\0*B¬k}a’w^܏':B3hmqmZ[!Z͢Q?RMI[z;b#IG^' R 5Ftl{e4cq+8ȱBlAk1AORub 8uW;4)iA+ :n<&D zM~ܜt)].֓@dc0Ph;{@>z(@Sꋡf:`mԫz&SUOuO'$o ^ iP<w;Wx=l-^NjV̘` szfӈZdфhpfد|giqsm{̶F4(FAfX_YOcgR|@ /Dl /< `D%cxf=Budc!]G|+<Ё<^N;P26/|j wBcCRfCCI9AElUAج#>)U*XdV:4*%s}(8c♋@@ aN= ՑuT¶]22*֏`^7u0>dZ z3xa;]^rv!CҲ]Y)O?,%E\%`*rOݼVH9l K?eo_=cv6XV+tT1mħ=*-!M) ϟ3lA:"ͪ*TVL[v_]TT.޻,H"PЩ2αplSAGLf_j0%ƞU(ϓ]}@@x#^[oP%91<=?aF0e!WՀ*St #x6z )K?;ip=q3*^s"1~1[ IbTi,c@m!EV=@N{.B,i1fBtӭ_m"X`*7"+K龜?k CQ{3% [)Rx9 =t!їBY!ؒQQ=A ΥbZp&ɛpY  1":|)em.릇[TܨV!QqoXs! taT*VmM"]or1w߂a5S:mGk.&r?DH_HzL|;%Q@xN/T |XdRQ©$S};cg\QCIS*V{PZu~M/OW,-%Dim`:WO7NvܞSkܰz=]74{!-2A]%F.)Dz1*8#oHPÂ.X.#n& ".0HG:}){%W){J2Ϭpa oUTPKS f pa?p&b ;ry4iK6MRКh|©sbo.,DY)ԁ/i^c9耄2Ĭ72uHu>˜źC8_]T )Pڞ :J6ps۠+|S8$;HW}40 Hgv'u*S̙rO9 eV;ߟ c|IΉтLlk&ŋN[8I='7uS!)R]'A&Kb7GEƆ./\+B:9LY27hM*O J&U2j*6xtŠ~WB݀ER|zDTʈ/:VA '!^Gq xmޝ&\7FYw~7!^9+M /f!,иatTصc.*Xv,B#R/u- x"siڱz hO Ԉa@BoU\ۑ"MUHɝJA'"JݸKԁ& %B-9..jg (#Ya<#WO+ʾa6'{V}^4{/qAfoD4Soɂ'WtdYU7yP6ݠq>(4̼$hM8n@#D` u]#3Zh-%%#B-&5#FԪw?\C9M(fNݡ}źXũq>Փ@P2D!*S_UӔ*wǠY՜jp #&[u7 %M6+hgo 9M̭=5Y =nRORVTeb-) ^UG ֶfHD6n}MfY!!s>a,rFDjpՍ![ʦJ &ߘ9Xߊ eQT , pfܤдx?eo GKl萊N\5H"R}hw5+ j|ȊH .15*X4ۿ.knt5PL:GD.d6DաHxMB blVoz0]BSz`?=taA 7$zf\/bU&,*l❴7 3dAWTS!a@:Dpycܙ~',vԴ %Q/G8Q ~ÇItz#l~a7I5F7'NmXv(` N(PTЭqq =g ͵\@f栍(4R?{6<@W@h\jU[xnDqOX*!߹]hk}=%:L\s>fCu齳yLqi,PP/z}3@Y1U^bwս`cz'؟\\N.)A$oɋ\"I_ 06dgyzKD1pE#r;V/O]KF4kHV]!Eaʓڭ׷'Q# ɀ3ρMӡ|rǥ?KB233}YT}xbWGۂ[ʴG1_matw$ |jLEIET[_DumN2B$xJo$&&$LMoA? lw& _+ɘ3ӃB2lƉ*:'A+/_pzA?N QD$~}ʇoªa{~wVI_V"[RL6{F_E|򬚮<|Q,&Im/Up;#H?ڪ5?y4j1鴕Ȗ썙r؉{B¤j͑~C){+JTp&]С~$GL{2&3b"|fđ~ԼEɛ҄թc͑K}D{{radB}g.m?Ң h}朻A1)xb+pzLg[Ļ`'{v}:]]*n[wV./:=D:̥C#> ۃ@ V7>!&ユ[Gsӵʶ`V fiZ/}eY}HmHJZBat;Et~gWmXgC?B?] *$_."_}w1HFdy[0IC1O ^W>뱭:ik?IU;/eKfEI݉ͅÕ:wY&/r%0Oe5 K]SWY}8ao0DlYXGMِyLq}v4)uH>,QC<ìe6޾${b*%3e d(`O. ' 8V' A2u cH/&<0Gw'3xfH!'g򦺴Y9"?ɳ;F}G-OcgPJ 0E2~羊廟͟Ad΄VfmjJf6%P$!od_`jHX&LSڥ]?A'A)|X nJ1 +`Q ip϶IАB, ]}c,Ua:3bgOC@F~Ѭk&՘|V{#G!SGdAYJiFL 3WH|.߆\d?)_9(r)kKe* d 7r@w~Q /g~?wu‚s߶Ȏx;VHfx_2Jr9!3,4m|rVK*xN]jatS)xttjmK_tU¥wGgvҲ4.gLJ`Z,k# Ci%ΣLҢhS9O@Mż.s¸R?f6|"Ý8J&[N:x.tiy^r/] ds/J! 9F\YZk@QqҎ\n\N~V@sl1% țv!#Y`g3HPSB@h|>1C\]|FvKjZɭ߭"R޴ 03~WF:tϋ\|U"2l )Id!yQl2|)D.m"jVh `zF}>cDm1^2sj׉K(0/0:K ĚM"'uRgѺF+rX=-+-Bso>07Pp6e݃a4-c- ͉mд& kA,`GZaC}x;ENY}-y"E?P2ϻdWebB_X5]ȼeGU}*!TD5@]Sj,0|{Yta#=1 :b`Y,aD PhԢjhv8rj}΀M_T|n.' U^#GxB٪<3d z1iA H V|1/|'\58gWͬ[zHĸ*=g?4/Q%?.a5׀EwA[y䊽oƀqyvP'6#+V'`PR:;pH{Gq ;T zY#­P2˜L*e䁓-xz]" tTkcx^DNRq{ XcUt/tXYo*(bdŅɹxcUtK^/nJ#"Q 8`k [m=u.+V#(Ө;[ PE{e^ 1voR*S/2xMFY;Ec(@(!Ҡ%NOJ}ŪmiyV'Un^r`IK/"tdhڻioa֐A-j3`y~KRD ُOnr^wf&mq>WYu N<%a F?K'qS&ZDgZm?Qb"kz:]8&O Lzql@a3peU]jQ>@+< C EŦm^FR\eᑡ,FjgN%B,8REl b/hg',b|i?6R`7եɥ@\N&NDϩI?6f[wԘ[!mNMcj;".͐ӪJCOْJ)5 2P3]{x"8Q,ZL)J綄B-'cIjOO.m7*XYh-[,pahW]M" ` %| RvȒm)]l#+/L2Fc,bГXκÇ 5, af,-]MD}N1h >p=j WB@OJTprY<>p<&+C-}|0da:ˍ:/*JfB~NGngҡߤ!gpȤ(QЪn{c_AB@[rcS ؤ5+ԚFKٿ>h1PGj:~-35kMj})`Ea>pF-|KM{ OdSQ v\iݢL1>is)E*-J zAE c>Rβk ?FT)"a>GAh"ԇ"dӹ 0PZKݴ\ K6zO{s>8߾`6 XSEI2Fms&o4TD Bb=TG?}^6.FhߪX!D=s /o&.JU88K|- rN\A%TmH' )QZ}>5kZW޺ 7>]1`g"װĻjsUѱ3So4v7?v >c{J6z> #gIRj ݙQ) ,g\*u`[9x cJ1﮻pI$]Xg_E#N ~_P3o݈*kGӥ侼[ /%)L]^^uN2>$ ͒XwR+ITu:G߾[@Hv}#~ $:q pѩ7y(L<"LMhC& 4+Ƶf俨8_Խe~uqjTWDGb.\~ ·vz+%C ϮqkW5M77Lφ˓C~'|z=5qSKpyj1M:<@aR7ҾJcʰ3FQ-h刍jE"xxָ_Rm>ʪ(AR7g{UHT'WMIxsm_S"Wl8뇇..|I{μ m \))#.dZiiSr9h C?@BӁNV ` e“~O8!'uvt*Nn݀bh!x5wkUIx}ڻ v&"Z7S~dX=aT9Ʊk}|' p$[Ro37N\mPpYn5)y’NjsUIJ*f>}>4˒K6pWYN.;GHv ,bHl|vX}M #*=VZP_Nݰ^4 gߺ<&3uٗ}`驊3 Z  x%݌md\$%BICV 8 ?v ,;R&aL^B*@̀ij h`u+%ji@ug`Mߔ3m.o b)QDʋ2R; ʓkҌtwEnÔQ\[=H 3 !Lҋ:*zݪ~ ~o} ph+̀~` (GS\ZIuCa͠0u p;ll0ȆOSdA(.ieE'#T54 gج*)Zhke *ۿ8=(!+T-;V0pۮ}?aTlT;r>staxx;^UhXu=ҧLݟqxtb_sXa߉)ALU (Xbn,?dnnesH-F¹B|>s#1@0i]Ϻ%AaIv 2ʧc'C\WjQ/ȼ?&Z\fZiS&=\{؎ͼY0HdNѵYYJ %Ct`W)v3Ֆ tj2lb`Ԃ5tbR|ijsgsS1{ZIA(#+){ GXWx W45$P!3N~aeq?{tϮh7$YyܛˏA8?=p:W}M2п Oq#j!aj0-˶Ql j ;~Rpd/ZaqSq́-tύ3UژiaJN-0neu?b17r 3;Zu<Ţr ~3`9Ŧ봩)uy@MlfQ΂gf@Wii΅P[h]F,cpOգj͆>fy sXU@BpAS.pAv ,: /OW2+ӢII\Kz$_A-p/KKL$<a Qڏ αzrS}pfXx,S4eBr/65ȇT*`P5w,rJwюtL Q+{:@D׬wC|Slց!I1@W/bxMR2ful10]aDzd sxRkP"nNvS*ʌV;FsYG7KD@&Pfg;UT4@yMHlt؍?)o@,qYcnҥqϯe5K4mRg XXwJ,nzu,ytM 5T!waEU$DAF-bz9>Ϧc_+lD> sX{\(c&\lQ)67 ͘NA`Vʓ[]설U2 ri25mK$~2"TZߥiiИFN1"!%;gga3STt>SIY?U CN A$Qfx^7INSXZv*uɱ +աuRYW0F&YOJWj1l8uR'8 r2F; r"v*J„\ja&~53|-%w(߶M>:[ Df@XܲQ;,DYn*>^إD= Fs{{Iٗԍgx&>qHKI.tّLylf\h׏B([o]׺/ؔӺx!:a,H\QF/;^ %_k̮к6gsXX:T'zH/(d\̷GêAb6@\b%t#X{H>r9P lR5X%GQ w!}oohbo;~:V jh Y*@c~7L/V)/~UmGaW cnnsMw]ۉ-?f6`C:K<* ߩ Om~E˝wV\Y!ϧ;PȬDf)cuMu-_[J @;N-χE%aļ#M:-fÎv#r TxFA]dg\]u"~|!ɿMz Fne4wաxL: ܃C g' 1=ULb_8v n!~<<ﶍ L/#=}rVQw~憥:)a5s#r4; )~k8Nw\x&Q Na32w*egsܠvevcfnp..+!Ƞ!#XC)oJkD2e-XYnbbG)Z/gc,A+ E@sT$6h k-$>4yZbZ0Ofmt!05_qYhUH\ThJ H%( mV=9$\"&gJ2>*l RN g:b";搟H Ba5hC}?]m ^'q]#F9yʢ0ہVQcmoMQG[Ʈ7+lR\u_ccU7{n4C>+M۶*|/%>YTu&!DD7io!@wpՍ=@@-/(EWbW+>2K ƾ2F JU*G3s+yǶ XNw뢳1b3^qJ8sW\|v:"P]Ֆ&*M:j]%'e6ED!yBZKJKYG O5$ f╊ \Oa ??E={S`Gݒ0NjrUe"/~v[ _KsM/dfsU;W r ,7v8ʎ`ksk$ĵPf șf|G\vU)V٘*XApp7 r\F*Teܢjo䓅 |]dL7^'.J2$\4''ynWgpNPΛi4?r;t%#U#sĹ>{9/ 9j 5sCب$= &Vt:  zDā ho8C@X=$.̅{܈";Ͼ'8ƕ{E= wa )~e 'K\sHT0F ϪT/k(|ОuhXʼn1NTxRn=],Ysx(Zb?<Ww呍 R9 [˥^Q_(wI;i O ?מ`!IԎBx0 ZxT_/S ɮh6~wl{`,ImBeO$١{fVgE )YN~E-2H)xn?=[` uB4icSrl> ( 78~Ysm$Ky8ل7 /iJy9 'c4֙NdL9a(h,?8&5+M jV\7$=uKH+[\ھ#H9;D#9_P^ )U.w zj_?0悡wwo,-_Md|+")F tT n.@ދFW^jlx\yLl|8ȏNqLZuJ)A.Bw)ݟc++#5ܥwj3"j?,rK%oKY6@&8TEP-4)\TP *Uť"kOòWӣĻ9qBhMh̒txw}yy'9°ڋgpgczX;hbd:"),֞X[BeM[[E8tWm(&c5!:-_ ΅S 8qtS E6hEi h]Ǎt@=%ڕ}3l Dh|?F(3k咘2'٦WHi;m,¼\^PIABLo[Ar䀑qdLep=*.S):(#EiYS~S,6*˵3GSp|fB b9`a"3PXwDHfYDc&}G½ A h~|f6}2tK,]9`^jTܦ:8v-a$޶f4F9ŵ%gD̀Aہex/(",2EveV4ݰDÛͪѩ! BT!KwLeЭ&X{V:G;DgPt|=Y1g&A,uGѱIZAwXādWWfȔq3z&}5ES &vcJjM:{ఱ &үVdO\%x7|{Ļ)7AjfZChbs`0V\"e>4wVauoZ,*(]ݚ|QJKKPv:j%㿞tŦ|ϒй V#tkF'Es_,n˕է$zj` 0pn/r]q1s,9vűp]vE;(\ b`v'Y&bӓH4/ kL:~O=fƧO+"/T+Th$^37M:oy1$"6S[2JP=+(%u6N[pl3uMvEV# -i{"=;Db}F~&&2[HA;W%rVv+HSrXKz_Ev] E2P^ù-W9k}-HY|um($"?%EYHcYd~GQtWM1.gCM} ,^!.Dvkf0 Nk=U#ңʜwL;<7N  E1[MZP{w+e {“aڽ3Ta밚e\Xm+@ڡMg80/⢠G ~MS<j@y&7H֋3u{ q΢ Wٓq&%7%^FdK5# <k$c d|eW@Sq TFAAZgJO)>H2WPU9BoNvֳ=r^I*Q${lDO]yc%N U[o~YxS|z>p)lO&B}sV@ Kbٜ0BQNxÉL%FAFN^"D$K0䁌: pQwYXDsLI##&v} "Q=D&j#d}uAqO'RɁ2&2i?ZKՒ-T@MTy `"WmXN}z$a]:Bwi(hoe=lz6-!ӉqBYc,CQvhb"#Z8K. PaE!WMERjrGM&;!S•_}Ƶ1|ap7'Jk6O,+ⷲ{6林@|NwmN5(??ZNق=zj GvBߊhc<6_nLWXXn0쇷MzR|K %!Ѵ0ķA@%S9D`óS3 k !8s@,"Z`]@^4&NޮPDh79fB½4" mRhE^V;@c`Eك͐Vr$n}^VkYT9S8BZԳݮn=Q~~Y]&6Fg^aNMpP=?w1FO{O K"@+yB%sZ?*4 b;k)bPz:ܞ+@Y:UJgvi~d$4uRfgp:I& ̩Pt5"(f 5oLYuHiҦ)'Dqgi| L-?вTKX}X.𚭳J W^-K'̿!jf^͚/W.,Fۡuv=IZ 4(l)"RǮ]<.ߢ#f9om%unK갔'7g,@'(-g8Q;׶9Ql\,\Wz"[K(*n,RI: [I?arĸkv3Q*(?毃SpK9f.)I(&9Wݿ<3dRJ/mw vOiE'ZX*/9Qie-SsdZ>=c"wFfI+=&xf?)m!f#@NVsL[ܩ]=WJ5}W.Y8M/& a_!/ X`fMPN ;:dku}P|tlК׻86(Vށķ=??ʩaCmcXVCs^xS96-g"ڭf-6ی̏7B"Or59g=Wr ЀbG΁|(S0mW1 Dք 2Y@IP|z > 7?kfVGVa~RN$c7>{P5}lҕʳ$7ڄ![?}h]Rh JL}5kH7ԂgȤ*>!J +k|Ki|ޖt$)*~.wGgg!#]ᙝT}J)9,q{{T3c2 0-&kߎ5G%@h.7Fc$Ҥtv-6tr~J`ɍc~s.&g^(~`uN<}d*:?=yQ?. 7-h XGȪdCH,N܄t W }g6!`Ht \|;x UAt CX9;y-pKSǎD[cGxjӢ%d¥@y߶HG:8!Hb54rfew :ظlD g>7q&H-B혥]0༬W 'mi8pVjň=]p1%o*Р74Ƚr3wr:%z3HFΞđ`  85īG=H*|$?vo&A)J3AC`ib>uC񍷋NJ3!l< \ @˃a0{a[5c[\xK+#Pc&+%UJI bRwUT 5Dс/чY S/ ͝όVBiH:Iw|^ª.Yc[ zrH|H <@Y@|yY_ҍ.#a3hA}ye 5Y--TY{e# *ȊnEX꿱8cA!M2eq VՇˀ7QO:n褐49ͽ((w _*ee :|'#  ~w8@!5ԣ*T:\1 h!>#S"l |(rܞ<֋=K{_=h:, Z~ޟ $?0j&:HɊ"}% .ޮqCU`(fRoH L/dޛjeVTkB4TΠvcA7 /a娖^Nc0BsC,ӂ #V([73D'ȨG"~%#\.CkJ@$:PԋLyU.qry%\h9Ʀ#;-½xu&rܥ|A: &'u'-8Swz$`X}gY0Y4d(pQCeD y(P]6X PmCqGj2Op,3stqK=_: Mv ֹ-R k]'KqKo;fRU gqw 1FR`V֘oOh"H=1\KT%OL%[)*1%, q#"]MfRJLrf5\t \߇NXݗZkn~fjȣRԡj!0l!D~.n ?tpp5hj`W}$L V{{f:$78W (_#f*)>14vyޝ̾V :yy^U Ywo۝ OH?m@4QO[LnNH7ILnáOvXp N#^vău[n_3WF&o Z1C{:u?z^ B^.FC-r=nS>I=xP8Q<*Ls1} f*ImRs7iug^;ڱ75@}NE&-`Bj/.z2a1[>@zgM~U 8|{v TFZn _̛1xqR촇^u:]233 A9cYG[ܕt9 ( 5EKߍ :褆g o>`6-bly<&($88tA_|5KЅnO7Eɉp O!@5sie]g'V@s@#u G$α\36avqmR0w˗rw 83e |ErL8,'3bLu:Ph|bG\hC>[7.Z41nw%@"!Xb鉪* N{& DXFr2iԔIxoJH:3][RǽԺ\P p:$\4Bseh.Urs9 !>& L8z*'u8~M*Dw̡$LZQLjQ.BF5~!Rn26]}Wdߕ5IRi__Pnxid#}Nf2^['!jfݹ'D&G1|.\JyxzׄZ0 ҷ*GDHyQxD{yFj$!jm܁c E7aF]N2 l7oIeP܍[5sž%\72eqUd/2w!9pHfrevZ J^k)t$Z#R.Qʔ8.TQb` +550M Kh ) ¼xͺ/Zю>.MxE5$CvVje'ѤTٝ=ʀc_[,\܃ȺYoE﷊2eY~XtGU`$|\JD'R]fd?Li$2̣#XbT; '^?~-~.*|b|?wݷl_a/bzcH+j [:0(ָ|b4\?za%C'ioJHk#=ƚ[pxVk= d'lwK""K#%asl70@-M'٬#+B%RQxcUSH>G`z-#u[|x d گ4./ T3hI1e]Jв!w5^BV(č 4 !̼g:JZKd+<yL6/ r1 E}~IDaW %5m>5N( ('iv!O5Yy`R>IB|zק }pI@Hh41t q\;$x= æVDc!sY8"6W) :%[Znrp{qI:-t)}S1+؂Lmg,**?WiqƲRl?6|eh{=x ?C,=o먊y3tgd}ey!U35du-*x##ѹW9ӶqQ nBbaV̛yU*j3n%˞|3F3У M9Զ!0j?/L-Dt@wA :vo{ 2,)4s*OBc;bZDD rLNڈ$ ,e<`( _XjN6-QƦ9:#[l!3rP`Nu[ՇFCT/*t䥤_TҴ>I-ʐDRb*ymA4T=r7.4b% =n 6?77DjDVᰜ h Y/z&16tk7KG-Ԇ Jn<(31.8ibWBFkYuV9dpuWf77? J9mauoʷ6Qg l+BdZkhĐfK! 묲olKQ K~Lh]DbD/|:wE}f*~#y=$>j9qnS{X4!'MlMoZFȺ/-Uof*sa8O|BפQ%Myv%7М5Jṹ X9/L\+'q `3Xx:O$HEaWLʙ31:"1npvvG2ngGho3ן=%vHt#F/2T6`{j%&⍅Oh$$;D"Vrc:1G垞EOLX ʶ2R il{_4;:3@{3Ƣh|hE߹I^Tg* {նUYcqK;xx»?3T"V{48𬧟 :QvШ])4gAOƼ:^w'M&/&3j ZQҵ,O-ŴQ.޲0NiǷm|6\P4D6&سp|ޭ'Owrl-p~=i 1 yUIn_NM;^Ov s߁={0:oXӘE .BWEV4Qut%0J-+Qd~s{|cgKv@cF:xyXUz AO4%m*ӝ䒛:gmLhK} \_3vOa;zSj¿)լ &u(T*{5hzZ'ߒm!\Ϧa@x w6wN+;[EBxfۂ}UVڕ\s!ڢpujUD6HQ#V+zKKޑ(tmFcN]Z`\ ƭT;M;f.[\ dn%z2̒3n\"02U+fRzgiV\gB堡c\—ZKrA Op|ibd[o:" OT2$x|vz=>ܮL/EV*Eڋ S`R-.Rr!04d_αSBu S$j4t^?ƣ5LC2S~de2 % ħb mCſDyíO c++|{ Y1_+S8 `;1O509SC7.0I)0:=չm |n"lÒVT,ڮzy+AZ~XiBd.Ʊ(R=k唄i諷ˀmV'YF ֱgݭ ̵,~K2xaK6ޱDY,KIN8v.*j:*34\'@M9p},\E b'QQ58뗕6z`#;ؓN?u'<.p Õ*)$]4Dt@=DvKSHAk4΀JoX Iimkٙz`:7J~40ͫ ~8 g=FTp'9|kw Dפm5ƒL{G(WH->aNzf *Wy8nAa,?)Sp{̾Ql) 0Uh5(GмW`c7` |SqK)V^2)`gʭcr71^@{xApT+@Ll!} i96 IzG3KyJ}`춦x2$-#^uv+lx1nuH {3 QK+ھ“x6Խd;aY>}>EbMCYwGp!vܟ{%R%eX%f0[TњCJΆCThQ@|˭5_5 _Zգ~,DpxgjنU!{, =v5hU*|PWnA"ۜmxSD OsϨEǘbԮp&d.9OԂyJb0\؎*T pq@f2V6|!ȋorPQ!$´00jFhlFNo+;@E͔~arxj x݆c#Ľ\_(fx-Ѝk!`4'0qanݔ7G⥻ k w{Y'5VL=&qĻhK }#'swHÓ>¶BwD\|Fjホ C\j:|kQΆo"C/%)`${v^5J&'('+xO"}HvqMC>J!cvmw+'>pŸ~^%ba@0n[L;s-V3DaPOBkDCpedae {p"Ź6%̄R+ 7WP2Uv֦n;,$v6AB"OoIߴIM=Jh|}/VkeTpV71I4]aJޒDK52=gy8e 1ǖ۹ JСp!1m1NWjAl&8DL .#Nv>J{YRjú]2O̼Ft C䢢!׹~jW`HDʏ*'9|#"ihvp[|2 vKuɐ9[,ԣ$(q@nV)Fͺ B^V;^9fdO8AKu7YK8tum?2<dSL(-kN .gl {W9 X$_kVWuz7[{g3,10w^&4.v87d+s#hR-0'=';qjo"ZJw$1X`^b{ie hh퇚b.$$4*nZU9" Ŏ rCb^Zx&Qf] 4t8g/*A/zg?`Oh|-Q{}̮|_*{]>qFMv)F3R]BON5OK_lzv^p SO-z3u}*%x{)?e 7Y=Z+RjQN+G PdcoK-W=t kMkʿUA:r6贄!c O#LZZx^fc^H{{7["nSM2qU;݈aVWQ/;|p2而p Wt;@@Zt[bDyP9`4\(ܵU-<}%[\9J ݏ7'y+5fmboŹgC!܀ S6l]5 A.N;R"T@wa~XP1?;#Pq.{KQA Tf%nB%SrvfE*'b]r vjlϣ-;M\Kv VKZ@{v0M}qM_'^`DHcȌ8'3j4)oam $e ~w!fQ p 2WT/h13g*SH o BXF lUC]ԩ$Kh/ Onw)Mftl|U DuO|2dFTCe> 5b.1NSt|wO>ezbp/VRH^J]H K(7; QٜIRͰz߀[fU|20GP$ tr(q1sIvי LNq&u,4pK3 Zsu[s&! Q).pPk"9m"L# R:@JS˦Ru`26/-MY%XUʷe{Hч\6EzciTLX^+Q]@#vY/Y Bȟ{86S"v+S`Dži ;s"܅QS2i  0.Xeޢ !V'8YPCu 5]!ew C: U}[9pwɅf1xwMH JSbEfmeWiU.`u5!ǽGJ.r\A"z?OД0s3*˯l&g{JeKBd_F:P;?16 #B1IGƺ,qCnrv`0Ou1D,~i$;Rڷ|f?Ṁq)=o"k70cpðsG ѝ36<ؓ]\9\SF[QB*l=޳Rxՠ#ea; {ěb?OwEcyٗqɕ7BN<,-{0ffs]Hg=v$OAE,SNumk CiHk8ѓ-3.Io\l\lDDmE^pp`:WMg>g?m'8RǂXmZgK'ẙ`\O\L\9sDZHo7+֑B'^o:\ڌ~L{/4Kp9 翿׾$'Ә7-nn6뙓,WԍeyAO"w]"2JLj}Inxd#`x5'm+O{\/|Pc>?CU$PR(ACvĂjbU܂u8 RwFfp`qt-}ڣeBȌSO+Y!IDl6 GMy4CvهceMl֖PΔW7.#&KX6!$w .eb" `A!PN*ۜdIB'.jw8Z3*4od"g eQM(O >MO`@)plC9QJŮqMM4~Ǧ`qpqIft$9J0>|7E}9:4Ti"]&ۀPp%.{߽<칠?xenwGW Qgh@DxF U+Va,戼3'8t[NsfOLh AB\0T&"J &(8#X)r:&X}?c3D  Wx2"9ďrS_[ÓoVҹlW[=ӉK9p9׻iV_uBmՂ؀L W'#{s)mϚQCܴ"\ N;;a;bd`0q;2$D> URGa {X$Jzrf\@߶"d6lt]iw@KN(#s}ݵe8z27€,MhP~!`5xb 3ֶL)kA ZO5͢+_t8עXC+fON)6<ސg;`V;E'v} ZpUBUǜ1%Zd77^+p qp9xAwH"p˜:yؔTENKzS"=JԶĿF)PP(?:9^3'2Nb̚@cS݋A>:~ї/d,OzEW4aǛ^`[Kt9G =QH"*I \\q3Sv@H?Vf̩[/w /ѕ vwn94B\J4:/ک 㞪)N/-+t$4kW׵XT?Rjßv{ Z"h41J5nuz0y/}%[(fd 5Xa;%ȍ mDBQַs̀E0C/#Ui,n2$SF{صGEVYsdql-kz:--xdOUʼmx5*8x=k*}6T4`#Qra]n JgNLv׍ z8 2x"_X F赂_mhzw4E֭? ) :g%,eUT2pS0e`Nk /Ui`Z+ W<“od{dDav,ݚ)oU`N򻠮i1Zw(Jb/.ڻ}:T1n5 `T+JUC^&[ X2p'"dREih[iz]f멷0{-[bP_ rՌSRi 8LխhJ1fk<ģG}&T Z; |TV<Cr?ey-} CcMk+ = j$y& ;%{7ټҟhQůdPe0 >`A&Z9`,,k,ysg#;-S E/FC <k)bwS{2Vn Mz g:RC!E_CI'B3cpp!R_=XNoOw:[ ˠ@,`T6p{{ 7.m!7hԋqQ. |qngzk/~l2HJyD+x%H# oV4[8yVXR{T! i8b-OC[$}4O /ޅKH sjUn]s+׶' r( ~ [; ^S%^s$^ˣyc@r%;d!KpɵԷ]򲴫ZôRBֲ/2UR(M϶\!z"`iH`e)lU5qjUW& 'N!d 5!e qRGEGEq#i7}88]P$i|+`S(zimDsw%byqb Pt}{7 IP[@b#TԹaibۃP>k]i7-EsU D|zf<;g9vW+aY ,79lD:L x; ^b3ֆ R[~\*2*Z'm6%)ۜ&&%v" 8q]ؖFld==]AgnsP.l&tOy+VPOCfJx.8BwfLqAc¥[cF8!h&'7phXX=5g5.YBw"wTٯ$|d Bۄٸj@Z?MhB|C‰~wnQV*-I0sgV[YN<2 ]蟓a6D Θ Cn=zDX8SM( 4Nk$m(M R^ ~ׄ#w:jb1.˻*Ekdq41izZcv埦@:~XivzNrNeEr[y&=\UvsecqRal,tP:p;,sm-j^meBĪS])5Вeq𢁜g޾+Lk-a>RKZ|PK @t Ѿ}t= Q3kZGmQa!V<~en]g3q؟qX(h4jqL%ОvC.+in,Ƭ: 4}*~*s>ٚha;K?1MBg (a~;Voؐ)@Ȏ!/n=#Z8-nC]v 1?E _woq]j'j!t'ˤT:{Ad@SXZ7v@t+]y%dc@%q(RR.||!bv[;^vM\Q'a" ԬfwYma`fymbч3^"ߎPj0kN&{+`Fc8Ju[Tv]y1&'T Q^\3@ q0g2ۂP)} a2,Yy~Qһ¤m?˨bL3\a?;Ѧ,Q |AL8wZϿZ~mPdء>n/;%bWp,>瞯?7Nc ܛhKuX/S*KǏʰd_1O,gf|ئw۰-{W 8LH<8Tj^F'B-wDxqztC-Gk*t~ xNP(Gcq%6l,{%Cl$rD?˺h@؝9lL~ى8C(JLˎⲚ%wMx0У.6(- V .X'8Bbzh;0cXIߠT:D95]!Yfڃ;+W}3;Ml%!)nvyBBǗpV Ϲ2`@|= vm=hnUMGLwwzL ɠ5A AjOÔ̭, Al ^/SuFpVEz=7$DmRJocnwPz34qJlL>05"k&{ke\S w瓲i%U.Oeb 2w$~lu<'!QB/ΰ|}5K*s-{zvdž37'g#XVD@ $8HH@^-Iqs_` T~a4z^-|-V=ֶ `+B8kP1(p7ADq/޷Ίs'E=sX@h[VqɵG֍e "G:@H "Gb xP}7I a&y(:}ޒ+36 WW`ߴ&7M?lO~VCG488HJl6YSGf]N9nD$M@,Ze}\ȗ7i29w.re4<[Xv.BGBJ#VKCto|CENcHh$ߒdc4} |c+pqcBm‰,U7Hl?(cdhma]_u4^Jxʹ=gJ X]8Z`J;봤.>;0x'1>YLI jH`JW%#$5 R>jvv,` ݍOAsiI>M9CÙξ> 0&'~xy&r1!O.3V-9M,ӂLHӀzgAx3x/Ab0c@ݐ9}-|8b,^({U PѤX*L:mN!'XZU@FG`N*ǝչGw 8$Kg9Q (0P!ѥ_fˇ^8USY'lu۩ln0Sh6$[W'iΜ٢]tS*r{t].@CIT~j,ƣOރ +O 4be!v 4nf@|Dz= 4~=}Ysgo3*b^gT3}IZ*M"[:5NȨ{@PlD$4E.ַigsYU`=LA$]WS Om LӮD $IVrmW2"fUq8If&zz3Y/:cJV,x`ziq'QM^jā 9țe?Ҳv¶ixW>_"Cg@bQB.P|Bs`[z?c yZ批Ҭ\Y +mٷbQPkPFf2 4B5fdV]׃C&H  ,m ~&{٧&NuQWSTl4)@ x|mfEHkoQTh?'`ҐC&h~o=ռβ%pPlP)m$,oEz\Ƽ2NN#KY Ais[*ϭqq_R4Um|b3$e?W3q25wD7 2FplWsπQJ" QZyWoAȃ@0Rݣ `ɠ@tkA;k7]fyV@H_ n+8&|qL"Kp lij}td>-X/ iyK2@koHs`Qv,aboOۑD`Mf1' pWRA.j7 nG|Vi׼ +$u!\\Gkl7.0Y. ;pf P iSk'l) sג$MHc*ldomˍɨϕd[9vcSrٕat)t-]z"(jƤ̵?ar+=2.cN;S]F:Ps:IOju[:ZIl{E^ Ԝ}b͔+TmEA\(ɏ##OK Ui8$SegʻVmf51]Pj[)Tɘ-B拆?sȘIRPΒ<[8^P!ِtX"Y˿VHٽ &|P]v+gm!RNFSbb|\8*z ')zAa  FQkqbt ahy ӵ88EUl+Sh50B&nVvt­@zYПa aׅZdXQ>Rc9p=` d>Nyj"eɜl),ؔ0* }>I8쐼pFa5%%c~-=s`oqH0@=KTŠ{D9;I[ ˠ6Q̯޳[(UHst?3PymC,35!'W0Jt=k:_Il=!*m0ZBSQ8aqThpp'~r(n;ώ -ː 1) ^d Ytpg Ɵ !#^ zGC®&Z5J߱ F.ٖV,`cGۖwud:vՇ~HO#T?͖W _06 Lvyu퇋vqUft^lig pNE4ӥHJWٶ;+b(0 nGVo@!ō/=C7r}e[Nrbψ@ŴwUQk2CC&`EQNR ۞xt&aIj#G'8gxjmxh0vtqf0 YÏ81ލgi#b8l04JSwBRʒ `/fyd9 g;"p!uuPSxjȟ5zl%Ǣgp]$cX>ͮs맊l{B@%BÙ9npCU[`ٌm!1j2G-orLwb&{K.쿸2yncn#﹜1B.O/lvyNC`Mj~zknۮ2? EH|e5(Ѭ*+e?/ʻã>bgbu|x!VA#,HuZs4sr@YOpHdƝ0%Gk;oiS'=IJK?z l%gUnܝ3eFROC?q+Z"z 65t:H5=۲qA!ſ6X1$h;ʜ4.tai%ق\jK3#瀞62xZb+re \ bnC3A5X*(_k72d(O;O|&g}d J7 "!(iۣ`y9z_Q]2:B?|m`'RN]ժ7?02]vhL=H{.`T.+d/[d6KWXbbci=^8ޢI휁]z1àS ^hvI&U %(Z"^򂊚6lC*VMv)mwC?xPg3vyG{Hn ml3y*6. êGVwMCJTBT ߂a@Z k@ Je=\?acWU(D|zO ΆDp `u+^Ft ]} Ȫǖ(Y LSW$1(!ֹ9IGrϗN)H~E 1$dZfX'BҦ{ߝ5bFTO-[[@zVp5TO`j{a{[-8kv01%[)( }70:1T7bd>@9[NŎG!Gᛃ$xV+@ !`h,+qwr'®R%gU(e Yu$ƋgKq\a tFd D̋%0iK`BM\ wnȭwVs/!9'ɰF9/_uW~IUj#@6֙@quiɰ82lqBM4_'~Q9ѪvԺXlDU(mV#f$",Œ5p\_ =Xyκi#{9vJ"BDJf#8#pHrY]q㶻ė&5StxZl3"_QvG*Ӗ]-MOR9CuE5ɓidaPW9LHً]߀C;tyKAz S#9;f\}f*#Xa!i uc]{,Ka۶a^Ѳp&AڳC 0]m ɶIq-YC +"?aaG:%%wigm,ܨj;7yha08_/[92s UAV))Q{l+7%jI׉Ij.tM{V j/8 ^l}WAڱBM#F%$w"@gQ-ڸ_`%UC<:W!hjMai B3^@Vv yUm^oPIsW|٪ssP="^Max׿]݅Y0Pޘ:ogVhm[ I8̆iǶoq4` _e!k71&ת흸[Gc{Ew xgʂ؉(_T C.R*\Y\S$Tخz#H4O) MO,LP!A_<5 *l_12l`SC1S {Cz{/{('YLEa1: 'LpSHdZu~PWW^?~`٧JUn6ļLt;&$ӺɆTZWXQ|ϕb2a4:d?r‚0&iI)MY|,Z7IЎ[bDN8=EV%Ej|Բ ,t3:`s0L0s:Fxaoh>r plWxIrf FMr Y9j#s&qHPRZ)Ҙ@,-T1:}>`"D>.bRUyK|IQ{`tjOJ7bX˽d Cp <(. 0xR?=֬/K>czvn\b`I*^F5[hlYG3{ar Rڴsi,I7D&V\&^B0 <ބy\ {'Cޢ0=?9^ ,sD{%݉0h R[l0 ϖb2(| }}e+C̤v|_3cm$wn?9nZ<#\,,?y o11!H'<Щ<~sN-/q&] j䷊?~EFF?.*țU=k}1ǓpGŻb''3q,hA9~qP}^36zGXkTy ⳦Ĝ!YތJs|3*4H⩁^KEj3QT~vp'] g"V[)(e%I es1G:FJIu7RS B~Py۲H9@l+mU#]V>biq EC78t@" &(람[BU.W`f~5GVkl+X,Ź1ٜp#Ժ)A8w _gmKES:uRex@ܷiLC&U'Ɇpvr Mݰz^6D"r"}=l@,u'+QLN5QF87Z No=}Þ=)j^p쌦BjxT.@"KE]ijNg!$saa9F(T'CDrXYf'gsK78D];ݺfm͙|-(<[WSTѺ$6YM&a|0jy@V@3ٍ1S!M+ qZ閍P;U^ܘ]xjVp3fkHs &zh'ן/H p^#@3gd$qkܑi'N<(ް&ƹZy'¢@转)'fҡRlY3= `eS @Q< ;@w{ X=>6YaQʡ޹FqIc~{ڛEse~_Ӏd>@nhcXfK'm!-W4n沌k e \]G<+Cۗ ["ݕU^_ >k}pRtًo.3 5~. ywڼ画M;pj1aι31+h>͒Bk5 z-N6a"ɰ.;㚘{琵,/ fFdo22z|JZP#ͬs]Y0'14OԆƀ /}@/+~1[Tny Sv%iwT;Kd Xmx0wgo¢b"ЬV1d/ÿm1gkU=im[ $*%jwEB3d$LKK, wlїЩk U!g>K)ΝԯIɹpz? ǿMZ : -z~BS|6bUPUaFhKPL.<!VF_p'y\iz$:یsCCǏM"!S~_.Rqm?:M0Cxc衖{e9|"r("sfbҽEX+ײ3g/r;vDIށ4Ď ZbhO{뢖0=\/-qI/e"+qӀ[ )-!-(,)=T`c9+)BÒ[7_f8pK'VG̚_t sYZNs-Lwo[DqLGw%OY,`170тi2~"W23IWm0pB=gfʭs\6m L̗!`áQKf̋;E}t0Y!^~:@r*x3I~5lo\3Įc3ߩMDr] SToas,I'= w7|9":^`4Kt׼[ 1,&nB޸E$hffu$JN1 ^mW$e槼O<BبdT~}:ȑasư:!EcYmqEoiC뗂_`O1 Xk3ź tA2{UK:߇jMd0?B6ʺ~ݟg(g&ՋCz:WB:Q ]%On`6]h6jb IH|^וHb&q%F5c<+CȘlbwx*eRR1Xz'{َ^~qf}p7oΌga|GoJi؍;&L_Ov VPXȟFSdl穼w{IbȏGo! wQ|6 bmh 9V@S 5Bt1k6dvK\vW P2(ݩm"ߑpCxyήo$]׭+zq pWyoYЦ@1MA旄c|E͸R ahc`GA0+ةNUvt!9ھwUxmg8_.'3#\@m$s z .>}ZEGu3kE{VMl̻8}{}C6[e`yKuj 栳9bq^H- HPktVsѵw䊳C 2;L[| tt=ߘ )ݝzW!EX%1[˥=~rq9Bu~Up\'3)}| +á"HpոZla- ?hu5+&xwoms Ӟ +勹%o`vp5lngL6wp[4fzr :]O y͉/pi^ p7SzɄ_BpCG_=v2<iTAKV4 RWc{k]tz0+hYC ug6\+vɏe_̮Z)Mi/ked]!`4g7sa见S)Pwn("XmhuBd& &g+Ʒ_tMl&|ܧ7ÏF${]J2\c:"TS\)&NubD33 /|Jm@xd9*j(b~EG݇ ] UUX GLEykhvW2_r($׬HjwD*v>~o#C;)w.ș0cO|cp:̕P,e) QXՑꐅu>6|r|eJ5߰uiK|L\Cz$bQ8Sk-K2e%M){dr1^+jG"ۺ}ͦknY/@Lhe(_fO/~/#ZEaw#KMڥ]94=f/q.&H;_ԮS=lX5W~Q^%ҙg\< 7 )^1+LBaM k\5`!93 /-:OC:~|)LVi0Sho>*Iܱ[| B˽hټer=ç.ۛ'0^z~j2=TpָV>gίt,`M%ތ*}SGߏ~hn# y<PFpu14Fb|E͕@,H#F4f= A7oՓ%_'56k:VAI n]0,ԴĚ BG#w"ωP,uvH'?[i;P#(78bqa>DSO$ٌ&"@cT<>VCJ7^F(F!cvBٖ@o YX+3KNݐy&(/8#WKe'M2ezdx<_5#N&M ùH "0Jd"u#R&nV9X2O8iz, ZzdMi*ZVl8pNHq[al(#zWT^Nb;.C^H#TZq$fi9jP>yXߗ\7 \KV-F{f3Wv7HB;e]㄄FpvJT /t_ME~4e xy4o|W?]=N82@L1XAئRP a ,SH %m$ >?%Q@γ0xaT+QϻnSbmoX%-w̢VFnW_D*`Gw=Bi8D bo}sRz0>&r.oqWݽ9Ysw&$L)2i\oO=nJХ>|1ǃ= oVY $w\<% @jNhɗ₷ؘ;#VP! qe٨*X,[v~H2x:fO4Pr2!fE(GYT"ړ >ux+Fn,*̰Jj,i|X c`'K @_j)ɖq~a+ i~u8C:{tOܓ@)$Y-R8@2]OwWM|Krװ}e# MEavFnP׾;^J+A܅700=D8*}yְ43TlТ 0M<]k1~93XʞWl+_8RcZ++aL}bF^UB,cG6~cUSY b!瓂hNa["L}Bv inJ ;,l1 mi_RC3xB x-H}bՓK ~z}K)Q/" Ydh{(Ɍ7%quU9opSEW*FbrSH;fGaBj~jبț-V]KE+ro6ݯf%儒[h8ǤDNa_B> kcªEyLܥ VaS}4S a{ h]V?D4TDsWb$!FLX._*=FGbAq}L[3xϪq *UB;>;)1*>'bsd"~c n^l[Lj JMCgUNg՞'1Ve`VGX?'qnC|yR,Kr^$ߖpj˕nv}Ϭ&x5ZMRjڜvegSkɡ% ;Q VibIExhPD$n+n;SRa;3;TF&H_"|%Z=083cA(Ex޶.|{ޯ{)x)sdbz̈́*6T"ϥkۖހ|SD"4uVl_^bLoN WqΑ ;*~V[~;!ҳ0_ WkϤ}& :4њh wMr c)uHpF`#֗ O>cDFA^,KR9g|紮 n3!Y99@а8r0^)tY$c>ڪmRb4awWONtθ?rW:; Q`ܢ L&ow! g?بxt/4O><"o3hU֝c%Sܮb}>´zFM_~IK6t6|3E$g>|,-呣KjKj>b!fY2!#G/|ja*H`oR*$ `Pfd˥$t$i7?kٻ?GN`YEŶ1MD\⛝OVos}I%^dWs撯(\MZ݁˗"еo|*F։)c7_m+44 ?#Mj#~bȎO90Qs̅J--'lm)H+*,¦} 4 6֓Ṟ:iߕ KͿy'IKH4q)NQj0kwHJ-Pn)T1Gܳfu6sq6 ׽Xgrpi._=VvEŌtYh8:ܙ^|Vݯ M" `O߶T}*|Iu7X Z,;(֖;/E;ꠄ ,2HPe'=++[.[  M8*S ZW.gدR5$˺=!iNC5\]l)($L WUAc D#tRc|V\R`+ԅY T{f.>t( 1*ze8hkІ6ߞ2^A{'jJxYV)!=d@' [ L%3+g]j5Wyfnt"#˴K$iA WϸWW/Lj/ױw 'Uszds#3e9E>ouq N@a IvM6Oleާu0UZu`\#MQ%rO|nWb~~!İC dλcW‚/I6^Y}7;"BMxԸxO|,@%`VL^N KcҏGIpMBf޽z, >JȀLN~E}e[ej-^?£xNwʡ 9欬*=K2aچMѬ Ғ2|8lwwV1Y0@#~IOZ&);w6RyZ4Ҷ}xCj22P[xm=?ǯu%aI3R(e?CrQ-tWTw-tm-%Hb6d79[B~E&aH`f@:5kIΫ!$#jV ]D%2` .;(I$. H1Gr(qqEPV+2؂@j0+:Hf CY7`ؖP`ݸ.$}ZWk1Ŀ#,Ї~HyiIif4 %ger/"~r =rxoj])\T6&7[X2-Ђ,V)|L<;XcjيQع1Ot lC0wv2gl%E&ù |T JLU&%чyCvt1(阻ڙu_EJ=\ΚX+!} CԹ5q,)/Fȗy{&m$pѺ3#8SNjwUQpJyw@M)|h,fENK4+~ Lq7J6k_ۮhrV!H֬E53tm Q_Af8BYs'PC1H N>=^ t jq Yj`mU%& 6諎x' k ba"i)}#%\2G&_ư G)QKا+ %fJJJ̀R̈́ٞĚĊԀ/!DK a˩oPAIKv])5?7.QvPka[yq jS!b!eLź}0p3tۋM@Gj"4Ko>:LS1^ߏV=LWх]A-"*{.XZ$ 3n}pޥ粕~Jكe*bLgMXkL!_@?˛_:>dE@ge#ݜ&f|w.,AA'O ![,su0().QR^X3eV4+<} VWgbJ,úd[݆Gc-%VlWF^HL'*d^ܙ~lk_P`o̡=glQw #%WTJMiD ҫi4fi^`F$0Eb$gȋQ!* j\թ*$QkF%Z8Ұ>zZGWZ)f~Ģ)+v{dLX>iNO\|ȈqÏ۫eM$gSrg`(C}LP;(*pd۶08]:-LWN8f/kp8: UK5e?j·j @'bRLdyc&Ǚ5?fj3iaޞfogءESmrw<}.Yҭہ#cU~||-,SCDJZuՓ@mk|{-dXiNv)&e^ʻ>PG~P܆3ָڍa`x :"xnMBCɪ{g|mPt v(Z0&RsWZsen.Wζc|Ѥ}xy:>c#!O['pa D %~I+xV-jd pCQdҚb>gfgp6AǺ# v=P !V=?b!Ff;Mc4ܼC=SPeƟ"R/мCvyY3M.Ӡ?+kE?`A v_&r_DL;s׎wũm)Sᘨm45GL -;l3O ,gn3s2`>hܧ8 \R#N]DĦEEjDa] _'f~52.y^kYiq2AocQ] y"e7J&.rW Jvy j@I' -;pCyanyva&"&4=`^Ԁ*ok*"탟{#hK#=cH^Z;qn<61:{Z_ETJ =㟖Io* G5 rŝrOZ1kB }gBJhR?'gMH u6( X `Hizto띫=*L߾ޔB ڥd؄X"Ts[I/إ[ nu"ĄatֽW!RD7yQv,Wr-^`[T5.Q>BP5t:s@j!RHy[&xce[бpY0=b B ѥݨÀcl _'hd燦#P@. dVz$Mw%^DV3 ލq_;g^(x/JxDvi/6ƨ:tsѵO5Vs'a&FۖBӅ4[N vL P*'udKQܩaz.6!K.`Ʊ=S5\DN]k5@T: VzR\GHрNC94.Dݼl䭞]ZZRT*I3ow/eZMRխ-T~gB GJYl($O@;Bv^c%RϤ|ZոTy؍MV`ʯ~ÄY‘@|U9g!T$FH9(%<'☩n4|'AfK tY.vu(~c}'qB:3x4HB@=vL1u%69_>f E(B鞵F>dwE:|[1KCLDO!Ы^ٺQ3[%9Tc~I~:w\3tQE­PggVY 0ݼM8n{sd`Y FE T7vÙ cZ/Ad:$/j? 9M LfJq6+%>e99Xx.@exwK,6m i q^6Y7K&#(3-j]#cB qwd&ƪ,{PZujLDrD'%/+“~ؚj*nMj 2UHū#y}@%WPw6F@>'Xp+G*\tЃxVr]W~1DjG}*ހ"w0pasHS(١- &Q5X1slܻrACC]!}k&߯I7]rMo$@h`Tn))t*Wl|pwaӍ"X>{Ht5}gndRzR|(6!XxC3 N4EnIINݹ,GW5-"&,FRk,3)AZ^#1jBj!TA?N.}4n }PA^z&iж9t$B}ډo6\f!;xP'3+J nyF`rV>sqHt]bI~;>y֭/pN' (L)AS({ nV (.!ࡐ[oؒTvsc<Úr1FKx^Fc_VHSLT'y! &q`'tUՌgLf2Y3rqS|bҖIyXM0ĘZN!q*\k!mG- ~R;uJ@|.i~"'LQ9{O'*WJ0vWa,Գz@o⡫IB >{-t;Yӹ-ryU$j SD(nZEF6G$˙2O铨]@ s E˛׊MEAo h9[LtMX~7Ю3YN]r|Z9k?CDQVyJs?$MZ>p,S(R7 {_v98J)*~k+;"%`[:,i8l֙*?2eKf3P,*iڻW}HytadE n'fRۺi Yj*6ίvyw.G1a>E~»gcHiVYT|5SmB  ǃJ$Aȭ ?VQI1;2Mc?O~2uW+6AdUGEYޝA7ϖKױ|T[`esC L_: *k nn%EҞQ0{T@ޢVlk:I9Ԩe_OtKN! {ʘf=4"],57oM퇕 h"I⚯}ljJ}aaP+k beANx&J׶?3:Fvz~Na6Vӥc˚&/L|$FuGߙ+?#!A}),&|t:5ZRUM8be-iŔ7ʹ?Q#Q=ژyX]D!IhjZl eb/{Nkrv8gtu+f/ƦkE˺-ҟ7 }nocQaxglQ)n&LDmf۸Za/&WGbO4z$7FM/}2㰞mz)u}P#3d-V :2Q!ﱂ1AI%":_yXF?km2}5DUx(L~A?2_9Ti3I–Ǿi~Β6|JK\[Y\k߈V*FIS07[s > +_q  wX^Pxx7u!d($Wۣ[ό`T4nM2|HF~/:(NuKGiukf1J Ep]Cʙ4PCOL%7~aKi۰ԛ:יHxo>>Hk?rY`tby .ƈ=(D]SeAspv*M/RFȎ@:P/:X_#_*oMD ? {NԴϕ93jUyziȺO¼`da;#Q`%qd#h*@~Yele"1[;-f c<4p Hd܃lj^Do#`"\JWчjնf}' ٙL4{t?0lyLVM 1Ա'>ޯ[،f|LJ _}I sH35O#:ruB^XdϐeĀn~T>;I4x[IA7Yce1yRԠ&>X2lb|5Ʋ«` +`/)pek@/1vJ. HC(!PͿR2A7rvZuvW~ }r{?i蘋%hڡe"צ}̊?*7u]&I#b'S;=9 KGVgnbJ *݅,ܴ hGSm"_oѿ8`28 *QdYoQӛ|WleYͨh',*0e1 -\XoK{Zb) ~H` Yr/u/6˟?7cL_*rC`EbJq۽p&g`\"eH8k BNUb@_" |-D, Ug{5.IcٍZ(j1۞Sw|vM^5`[vuRt&%rcq6s5AP%)j$RXx9$i^Sjrd yfkq55Z',,@=SM)YTNB!Dҋb0103W# W>#5K<*MdX%QdYNrOkZlQqMQU4~w?"6 `݉8AOX̴ Le;"kPʤ`wuHfmrFzOgA;XȷdzCvԺa{} R2zq.f5řNjj+2?X~c?OhpKB3T#6i$1j(X"G:jDǖ :Ha 1W$@AْJo\V6:)_@y "ygq68G#"'{֩/p+t%X!s~HI5ϗM@8U 2b*Z d4}Q- w=P HP7`Kl djDn sP`5n{17:4 Ha],R|4[0`gM^iwź`YLI^0 a< 2Cn?ۂR|q?KT4[K6JǰeT>`!_)q,ppHn}G,6w`wB>!ZI'"1U5:s*s;)L5ۗL1 , ذ+GB(/D]i Ju9Oa΂f+:V߈3|RO@Y5gѽp&%?/b Jhف#d^z0U=#aj 1|Sn} f 7 7w ?R{@,,͵*z?SMKC= ֟LȓCTih,H:8Iu@IV|1zR kauг5؆P)H: Y2ckQgzW"vn3[$8MhtT{NjwKx IJ$R"d_k?'T-W4j/m6Vg}C"[ls(5 t4BzVEv!a&#'Q VZ <(͛\4ɲ7D '4 G/jl űߨ`=e?`A&nyv(^Y7;J ywGP? [ ?JQx+yQU/yA&95$ _)OxVڬv˛[`Hwa`S!+ 'J[+o}CMKdQT0 CivZ(r:Y_7z1y&(-`O h6oio֟vJJ5HmN/'2$/E}YY@[oC+f^Gثdn&ߤRt U@>ѫOf"{ogΕr6 %ECs@!iE60qw5$dmjѳtZ\sѻUj'u8ӮB>7;<i0OhXO4Ke{exߡ9jI<'=6,a5_%S4bn8%m d)]28$Jي7O-n;],l \k.`zYsHr3VSO+Z(NR)4MU>lKhd zOnZ})62 Lo랑\b<șo9c1ɃsrlϦԖƙ WdlYv^ y@w`&aVyp9* x/&AΕeLFtֲo+@SaT"!YȢƝR-] -RǒmeΕܩK{>C:K"8۪!ڹ-,ʭ6CF|m\Cm|u޹< d%M]&d`'d9$3_Co:>6IF}cD׾w4ԗҖGƉ*+}9iV{. "Q$sNs5Nzr7prv=ՎQ9Qb,lnx?\s.L;`M9g 7)rC2Rh9X.f~#2IjY.k]ca/-o!;~([*.uAjK5;xzGqT\k -&k%lyWfJX+Lו, G/eaXJ1c6֝Z{})߿J”Ѷr$ԙ%Gp a>Ϣ"Ý}jLO>U)0j3˴ ED;-6ގӤ@£".t-2Jv?}tw[b]O}T,{MMLv^%MGhĔNyUCzoI{PqFqB%ک 1鸞` "ⶽmk5`yHL  .ifߓq,L+T1c9^rcpۄE@ruef`f0t$ӾT+5MG>l^3W,|-L߈^ɰŀ1znBp3lv!A5#~vc (l4ps yzȐ]Vڒ1e"z5ՆfYUm67m Ij9kG5| 9L`3)B>#8"IVFn DŽP`9Bm\OՁo#V9dC{5$-`%J~>>;S ^HQ k;?&MdÇ}DŽt^f@+\mdE(ߺj4JT'VKS'g:1'3VVgNAǣrsmZY,Ɨ1K̑ad}͓gp7$%ogrȵ>I ~:"V~זM@>Jox 8tsvLG",R+xeq &k9#r1{#Bk: 7ⴸI1kcI|$a:"vŸ_ -2Diuk~y`ӕN3(%hB5J,j VMĘbu2u׷3R3j26E@H\ýv&o-RzjCDGVWj]rVYsXA8Y]l2I)p (dX=Ʊ{^;LDz b\4{h}q₀3J 5ѐ:ly6N!agYA@MXf&*c~k|T[6{0%q=yϨn)ryL7Wq O6y{j͚.:n6fIvZ>+5SSughQ6{K [=TIGLAH[q/yfK2&I '?0}{Ն\J>y{B1buN, ] pCW|PY& 1;M' Mzԁ;rjXQ|kQ[|0É_ȲD>oYw>B$sE\м 0D:GĽ^` @e 10ͭ,Y£МV iOU㋒#nD#44}tˇ2t£1sеxpѳ IYaz=G~v],9*{楁b/:b~\'wFA9F/Y*c@yγ?4FYqA.^O} i0q0 LCE40Kcu7F0o8g_`C,{w\VUWox ]skBhs($Y^x]=2i{c\\1cIV߈6i:c*cv/DSC7G?@[_OB"`/:fj@VK1%:aź-; h? zhmn47җ̬xMd S{a9H8 <yǐpi/Vcsp{wB6A+;x ymFnU\o|udžyۂ{`Tn|O noLJ*ݽɶPT"bb RYJa??gmp%QTl -Z?= K?h@)|L~/E+kf j-rٸ넠=4M=W;|UW|K|T3a5uYI:p_b [  q ^xB a6ʶRUĊٺ+?] 4cRJjwy)ډ=▒xϡ'\X{Fm,2<f'KwU@ϟga*n%)~\~HTL~&qOWJh? >#^ 3UX7 WOO\ηˢ]QL;HY֮EIOO3.NFJ' Gy޴ aP28_\_G&{6Cx#䩻QdYئ aҎM^+E EFpr>#ff㫘t+bu'\[#åšT|9V:A |B.`.$aX-߾Zb[zkPf/|cռBI]|"jnVr -|_+R%dNk-\=2NN3t둯GuFkMDSrkr^+ڐң=DŽGnyNybVk/#SC҆[kw7Gu<f*G_&w>w}~Xom`^.`<`9(9S]rxSÉuۖzapz9%k =r3^Ip^WaG&rcς_ >$2K¼i;ƒ{V.[:rsIu@O.̮SdWgˁ!|cX3$KyL/]fȎu,㸰U%Z] Jg=5/=.E LҤ8܈sgcnKPUP%*-ywƒgWzOsG3 \p%Oˎ:a5.|%}k]6 X[ibMdumՄpYA:H(z3ޯqٜ1Qje]|IFۺ)xG~Βۏ""\%ش@&nD4$ G+ };J4/H2X{JR<=_Oعg^]{zYMg!yl ¶nHv3:FY\P23"ӑ OJ67on/~O\TR ws ź@6V1o25 W _IHnmғ|599G!˕4yn>A&WN:78[N`:ۃD)UO&ā~`jsvO-BT8P1328LSGyەW. ŝ#\NobsJn##ci+B>ɌEC)H- ( )RnƛI*`H24hb_yUZo, Tl]ej%6V/<7l6X[|Q9ձ%oN&1GC)\Fwd(>)3IOT]&[G3m1—v4*(' QC|ޓ7븶_wȮH߈>%5ٚU/` N3\ɔ){0 \[-6Eaj ̻;ߕ86RVx<:N&}"rkc I;Q-@m+ - N[,]o;6+9 \ oTJ<s3qM,v;Zq|߬% $[_%1w};=aZaPfHhi;L rMfd,C߀=J;Z/YoWʺKCч굴a yΖYpGmO@v6K7Oc` 3r[x"lk#XD94jsk x'X:}+-co[@~TDFcU#]$4+Lr %@"8'kIѓc jщ9D?| +Ot"_?-Q_Ox+{1X47V.{dąd9Syr‚Jؖ">E|| 6FﰿWZJucbGlA&| $MX@c.gOI檗~b(5,QbʽDiD:ْ?*jx\*b<@bY'cdV":"pqO}ON/$^) >`$tS\R0>9\03\"|H 9u2>.t~Gc v0iTJi)?ʻEޗft?!h gx*n{mwc\`ҁfq:I7/Rw泔\Q"HL D\]hݤﱂeŅ2K^Ԋ2XH!C NWvj5+Q8 Hu^u 8/U(Szk\B۲ W'Ӫ}E/d!HN[ͳXeʞaPۗbKqecf"JBpVfaWHם:%ȀBo#c5FWZwhQˣA^0UvkG-7^s>?[G(`_a#wy*b4O ո71\5|{Oy k6&w'1K 怮RB$jeBzuHLI`7ZҥO`pk 1\);*S (dh{{|p gk ͔w%9%CN6:պ:U[}Z*Eڟl?Zjc|2N=l<8iW6َ vYTH'ͷ6gxEdu)|aa|,zUzPMlJ@fT#zǛ|턒YN;MT oW>tRtk5>{vuza=ʎ$Rq," ^AS 5#Y0c+ uBrbSeIoQPz7=-w1˫D2hca\D&8WQ p;1c`cϧEKY;*zg[o=;q7ntc'YBpyCԌ+ GX9 !b,SnDrrmJ\QH;!8߼ MCڣ2zֈNLb"` 7SǝghiyЮ$Xt>[WpF¬_ 6cfkq&$QD$G}5^"06Gl]BÝ~}Ȥdk(X..84{|Pv/ىUx} E{fGzs˷TbA鑬C۝gAw3f=bKErzFzbr^AO]]jCVG,WI5uR(\0MH2fC:ө:Ctp%r:~Pφ䐼teSx(iލ_4m݆3r λ.ڞf޵~- +9 XU6 ON2<+B#Lnˍ왛 o:nLMeλc\oq5&^4m4Uz.&z+fi@P%XgZ~*;0G 9 9BˍFh$WjͅI IoЀ5QdzN'PgTu5{.vOǩֳX8DzPrn,XHkAF|_mr(&?l2\eK "Xni:b]I3@vY.Sv YV%8~DH)䈗Fs# XfЗ|ueFXh;dG͉6G~Pޗ[Yw 5&=3/?O vu+i@Y>k*+trce2 ܂IO@|ve得YCdK J5\kG_{OqۨUd)̌o~Ye(f䘘;㸃"ceO^eMӄp_7ok]"a~7<@҈g'̀lwyVU!>[`BM<|hw1ˤSS:t5Om_n_|6F93%3: <i̋[-1sʢdeyR+GMSvSf,.ufӖ7~9i?Q Y?Ĉ-%oL͕ /vgc1w-S!Þ{!:lm(Ivzdƹ܎pK5RT\ g}~r{Y479eQ85g8kS.+.fW;ei܇ G6H:1((t!g2Neui4?ԶayHpyG,Y lruLzkG2-^ItYP$c.aDd 9-RЯhe]Lyh}VfZS1Y1(i )⸽ENaK]3Ze=,|YD4W_HJ9YŽI&l=;o8k}4'٧Q R;ҥڧ':k"@(乖԰ o _m(:Kkh0[(*[!QiXP̈́|jtRӥS)aC5nN{r[{HKŧeZo( T݈ۖ6YO v=ѓ;@f:NԆT~@hP$]€% jјgo#gXJz~@O!aT1ed>ڐ)df*$v:Pҙ*3ձ:6l_EdGcZ^3RB"lv]lW]ւ!R }'.(\si&b8lr9ܱO31]vctnQmu(5u5 4_fsӑۻKYd&EKty72 '%TS85Vߛ/Y,96p!QY88[ xzŋX)Jox`j@3Wc6.9`+n[dCɕC D_?u/Ծ›!{=/m>5ƽR>>~j|AHN:cmY*n=֗LbҺj7l K]8+Ts'pt{k`(F9J3bpI 2VVs! r`UAT%yy1T1RpC|^qc$RmzoL&R)X&DJl#!G7Jc(rxmv)k>U8jle("/ {=V8$=]`ت^u3R] j}#ڽp 42pYF FOѫ~dANԻ 'EY#:}휙1Tf^Gzbgss :IJ"2Ǔ_k^`(6l\)N;j:5 tbjسSb АvV{'QZEIEBrϞ790x* 7f9G\ }k盛5`bC$ܦn0ePH/0x'z:k&Mt\m ݙ%ܻW' */GӺ"*TJi"3k:ۮ 5GebȜJK۰V#F+&峎61ETXs?.=Jan@ {sAep+"6Ek_m.aK-̈́ƣ=ՅBk=RivaCAW VȳyzPPh_.KmQM!zkwss$=ÝVll pcFLX;Ũ$@*Yć9EY+HFl\rؠuHIW^<<]VZ&YYI-=Z$ aB6q[tohA5񅲄¶=c|xxTk+gMf+3)K*\3N9gR辊ݯCΨ5]C)2V-J4Y?+Y{GܿT 3#.=ZjջI4Zd%- 8]i ASD%EFZX? t[W 0wNtgF?^Ч}+l]S3H5.йI[|_9<#P}mGuxj5.l4{Vp/}nX':ׂi 5Bؘ9řss"#}l9"r:2{W nsÊ1H~vhKݾ 4Ohp6)MfbQ4x|~mwH8y`}k[rNcCJE9{ZE'>) h_l刣]Z2HG%Z sXELN`۸ez߭RV뻿BI?S+ꅗVƍd[6RD)Ŗ%s:2E~ X(W]=ˍ4[Sזi@+ x#]T}|慔\Ϗ[_tVHɲC= S?Áxݗ*g{:}&Q6^4; #⽂6U(,y܌B9&W C%Wֈw ~lⰒ񄛕tyԈ8O։JΉlGCB D]%KNT 2+%si"v,P\cWdmRLhOBgٗ^@e𐡲 ?yxu OC=7 .V^'%@qd{+ Oŏt2i+"˻Jַy_ mX~zUBS5)r Z_t*e(P_wS?f7 $YA6iGv7ևh꘤ƾM""zM4;1O ּ`|+یaQ,t650DKJڛ Br *=(TIfUT,ROT JpM7 & ܿ՟e|"mr0 d ! D<##[-y-1@+u1ZR}I;˲b|:?4/MsǧrgRQq~|[TV| `@! n{ps(Cj5h$>l XZV|ݩc] Zߧk[ aB [Fj=ٱ7~[wY΄ow6C$УPFU*aq@L\UOhÀ Ϲև* ;4;"/Ī 9$ iL-HZgO>KyO-FVyh4f6x/ϷK~ wWfW9+DAk'd O~N*s*t2Z |GE-{e߱ jT| u^"+fVR-u0¡V}'N2U*) ߖpJwF} MSXЊGS̉ZCũof|nQGf8]oEK 7eFqVqDCj4Y37$2,[l \bXv/`u/QXP4{P< Y>#"":N)(VLF/BߡXW}N#C0-Wl<5}voCvlS/~o_n^Wi1'Ͷlxm2ٟᐍ@Hqs#Iھ!5sj]8{S)V!F,alMōb~@(D7;pJϵe%=ڏFNs()J:0>WW JQ<O)R?z PI,@cݴЃw+) 9jsޗ]/ZkNЫ}?(6'[I;D ,϶ギ*5Wv!ֆ\%6,]5NW;Z8`j!!8OC[d\pvSWt>O/ޔ*ݮꢨ1ȇZE"(TNNZxX6ޣQ"BnU)Zq` xDPM#= y$p9Bgim]mQ{DDpwKGiL_L>B7&d1EKIAq<%ɆG bvF$(rL%ůyEp;ۙ#wVfyTn@_AMTrjG_)P[~^I 'H՜|)IHV?}wIS-4nh1pY)z8!1f2*wo෭ҲUw8l=dyZ8/T Yqh0 WsVwpT3A;_,k;#< hN1N%j ea3;[tD֒vLi#?L?PX'R4C?pI(2y蕀]?!*R _9C,\`sa   %xb]Gbϫx2_z$t-#;: Ob^P;D0iqbME+?o搃3p.^vl^"|6_0n0C3/R{9yj\;K>ⲟqxγXlk/Hr[$?VV-)˧*{88[S/M5@uzt`4czXQk<4M\<4$.⠽e=>ef(-ˍL3nr}d'bH!O6`i첣KJW/KS<{ȀBV ):?gHx*{­չ΀z8SeҐdT{{Eu }lA}OS꡷R)]4$/C05Hl*E%f3nX7bV5^e:󦗿? ~mZ$HA߶ߞ3BR3?zpINZ504ׂzmμY+AuV+l7DiUύXV-1]=~o*wYuBΣ-ɦu/! -:OdOS% ":G퐕"l,/DaB 6Jk,Jxm{/wCB &hn0-ç+d胶:zpOcJZ-tf=4<^P@@͙È;^r{|'ND s!Mv !P؆fTVX[Ax"6+lӕF#l(,59QC'9T=b㽗]c\Bُԝ]pE2SDdE-Х&L r^(0"Y9Ge{1("0#lq5՗~h=O?PXwNz>i^fԭL#ioMH5J~7!e|c<-77\ߥXtxWaR=Ԗ\e:vD 1E&xpCJ꽤'Zj٠wʳ^} oKcF=%'bHk.S}2tgB]Ao{j7HQ?{oъhR ZnblڜGHA@!q_ruNo*9s:O4@߰IxzKq<|9 ŒdπH^A_@,E"J!Edƚvv?)`z+Dm+Ҳֵ[Zp#RL~}xjC`yXXb fύIL9w0eZ$'*gͅ6, ?B7N' c  |2;]N@.[:n h"-/FI q;%7ܚ\Eb@zAn`B=/AD}(lHޮu$#]PFQebcoSrpCi+,kԌ txiL@MZ`:k_mp pv؃j)4]M'q Wv -众Z|-- {eXwXXo:G`P3.Css-WW]+ܚ]%b WcɎd%{qUƨ$2혺3 ̑uK`p_Ќ民yz}ޣKv^h'*cK]B}'?ȍCi>|p޼H9&OR15*]6<ߡiՕ$ߨOZ?uZ!7ɼ`yqe,\d`MoT[G.Ohlw_FTg!"{xn-G9]C`)!7M$˚;+ fQTѐN%v/?.49ZgٸN2XIBPH*06*JN]T.5ޫW/p`G02;# sS)|H7l*A ˗B2}1 aђM۞v 1I *O*Du?/#:z$TU(.@kRݪ!7: n0Y$TCL0yJhXv@o]evJj:/_E,rPd~ ` ߖ)I}9D^&UߌK%/ju@8׹R׶$G7LGx"'^M< p lI[٨fkppUahT*ܝ 6eړpv}htኊnꏿ_/q!'AJ҆!Cu^8`.[/Ne[*j$%;ߍ'ZZ>BXT ~mh9]+`va3ِ䃮ȦWt5L6oxsišW<8UE7%R x45e}.6N 8Z^D&cR/J>*߃zQ~ф$m?}2k bIhȈSᕅz\ܐ.a7m>w-47L#}-LɅrAtI HֈQHMrZ~ 74^F!3 r*R7Q1e$ UoX$si rZlD#c?/&Ӡd@m.1tK6%@ 9]W͡x (i8 4 |m<@/97;a@s|nPcLulmz_B!JCUY=]J`!E@۸b^!F&x8gHQ%Ū@FG)Sm瘗\JCty^p0\p1|X'Ed$lF !g 18x aF6\e>vCi} ]Ćo@7LI!=}6Xo甚ZIBcJ_P^aNNHi5$z5QBXO=ѣENݟKCʘY xz3 B)} 4uĝ /c}^^h #k刲 *繓Z杫THC9g~0V --H}m[+wˇ ;DyCvl# =;ekQʈH%mC]K-Rɿ]k9i+-/}E\ +%I3F]jX.Wa^8lcLB@1-\p0mU)tT|leB\ MF(cɮ"9עcy5>(on7W2bCŪ񼔖!Tqyi!˷dQKTƚ=2 JJ :6h5CPH7aeݏi#^3d~G-QB5 R`Zl|Y\Њ[&UcJH,8prEE,hY@{ؑft<-E\ D~SQ_W?F^k=?s# ޞ:.+@W.82[Mӣ妱}(M6B2a}7Grh0P<52Sc+e^Mwq =˃ W3Ao;!l7=  2Jsj2-w.{NЂZ߱h Lps@i/Q=sϋ.Qg@:op:m30cZA-^<\X\aSy.ij+&z+ak|{}Br,U_I0m:ČJ9X匙ƙ&l KܦzǵEkcȁ [$:oH(>d$:mu5E).J{UbN沕/1)W'#tw[ŌL|׽|)w-c/vN*a0r > VʭI ~ MLXwxy PQ1pvj_(!A8{?ZqסV2䞵zVx\j#&@#W)Qس{n S\HIaI*G'e_KD7BMFk Ɩdb^cq5ٲszf>{gXn䘪])?$^IYrӤ'g1fJ-SqN.UǐOw2j6!E[i2nmxq{/5ћ@VQ;'w)t+i5VTVVvB: -E3SvM?L{|L\&j^$eF${ '{9 & O740ahP 4*L[Op`3/-[̈meti}M!x{?F,D䏹24d*ebS.$Bث|-ޔYpV]'TX˒KXa)J;]xV~#0N^h䘧2CafJ?6= 7InazP3U T"k^EgoJ tw?CU ŬzUڕKϧ3HCuvDZK9 rDz5q̟C9LsRYgw"_Q,LJAꠇnbƂdHcɖi/MՐ&cS*GJa⽳$Cһ=lj@#Sq&}B??Pi",6Ц@TFJ vӓgM om>vKr`{Zo+$' ã8+? ⵓwF31r ?%s)oPGg͹eP RqVi')T)$u&PҎʌ,/2"ڔs{T,b=y|o;7'e)a847ƛ@ֿ`?DCƻةS2~~-AH<10$Yc5¨WHx \P;";~ԡdX}">%)fI ~BY^5uKPJ/w"J6dݱ꧝,ځ Qi\]3eRތ%# =zn&pu.]^k k|:ݠ)Vy;A|bW+EM~.7إW[ udL}#E-;iIVbJ qBđ^/x#|\ Om[߀a~^wĕJA>qV'I|9Z5UN!Lsda/:Ge]nhU,ZTR#d&g\lA6@jn_9kP({]ixZ8zm/ >r1}3O*,-E_Wߑqrd0y ߁z.D"2("Ko&jz[qpb)2򁀈?p1+* dЀl3nRC[l?I‰Qo|6BUqC/'F/5=3ZLF $ES^pmqO}e:Vre[05EbYd~ij|S8D2%յͺbEgOXd),e*E&u)`{~oq_cOjj`Z5-H>;KND\*n"nbw1]n _ $}eMx:6.i{uX f] F楐g27%jVg $_S%i@D#*-^8hYa%d]GKݏSd^|ှhU۱~6]S,$&>DJ?F׍6K= X3 /Py٨"&l#-cMMX6yؿ~\f롟ykn@3Q&mr%Vsa:QYbOGV V z,eJCQk!Vz#To(Ge"[sEɳnUІQЉdm=m|z^2\^6;o%'t˳ڍ/O8., Z瓴^T/\x}^|]$Up9`w/p}51rD;^@}{BT ,&zȃHMza(q_Z=;rƶÔ[~\C\q4ٟuF .w,[BϐM5/*#2oCU%?:u 7bƠnMO"Y`Sh q?bպه^W; uE秒?|Z  lo; HeCwގt1MFEӹ" _W!|+Q<1U郂f|X=P=ES}A~k[u oKuu7i赯7|& @]%BT:{haI+|=$6Uo]"&5 /CzJx\):ikw)ۿSfb,`)F ^W:J+QFf24Y9ˣoH ƽhA+Py:NZ䀶[gR%\owQPT*G::X*b@Z\cʒ |UrNzB L`ZI?)F T]yY\%aŀ IFʞPP{JtB$I季޶j(xVN# ϥ jyR9T]Fܞ l-ϙq`XsmV9/7c0ĮA,9A5pB#}PHEƸٵǟg/vu5~-`Ɇ -E q WEiH?tӪ9<R׌ ;pȦ,FWGaz?A ē3?'c>_1В48K+h/*<O);"x|ǔP!&^Cm/UۓB~p IMsl$4\ Z-eZooM*t UgA&*J@F\v`4;+'NZk;3ʟ.ݯYז:uSi v2uI8qVOW6>?EWEck);6qt`pIX"7NϪzΕVK&5-v;. \8 7H{켴ߦ0=hz\B *'ߖѱC6;4e cu٬6b$r` |{j̉[*L1u;mdDvԳ@7j5PهEqlSH#1S̏ \i^){ ޣڔdY9(0SnP]NK`9w*Biw#ҁS/$5z,:@?3ԩps[ma5§mh`Mڼe2!=$X)0s3DmQqYr"y~ZiG~%PDhV `{- ەZ , ,dgdoiJ͑Ur%BɸF{rr%: jvD<`$ƙ?.&Ѿ`L ~ciؘ Nщ i $@7ojc;mUmއˠyR*ys~83ܔ+D $`O`ej^m^h(Cȓ;u^j<-*{ ǚ,ۥ { Zc|88vdȼ3WFBgk_S`35\_9%N&!$`CubF`_6UpVi0ӆjX7 Ǖ0O&<6'odn뺈ɛ5; ?}s'jS$]LbUCLq0/WO )_ؚxʻүˊPmʴOaP5$tݮA+8 6~ukFMݭ-uTRؓI. `| fnzPoDau󺟓hLA*)ZG;/h}WaJFZ@FüXp5aU&>k>]zɲ!޺g_~ҲM|ggy IM`Ws T>^8.1|܇YS!* oP78R?=aܥvՑXd;S!y+ NӀSb 5po4+SbSlj'O<̓bC6Nڒ!K2=5 DLkLEYcI0|74*=X];VU+"fPpK~YYNjݰ d\sc;>#&얉UB|QT"mQms!̊ yx=OU,ds3 OyW`0qqw, >I  2 ʳwԿz3}9sTpp%l 򜤑h>d£oHĿ +GƠg|J)Z;ei( {1[;X|ym|H)ffCĆڨ⦐2gUЗ?bZ_'_R .g<۴gw;Uqi'Av&g6cLyQ%mȀyUAi S"<>TPF$B=C< S:!DL&p* kNJ?E :' 6O2c-J: |.*!ɖ[rO$|2;GWF)T~L_ {&+f{ΣTyd\\7/KeD/y8\t{`!7[oI#ei~ VAk;4OSj6O=`N\1-f>SyvYCU9Q-rp ]6RilԂ=h@_1:Œ!=׳fT]e ډv83{# E/3NY]7q2jqe_p'4{a,/D[tdqs̞OC ,r{BkNd΁ፙQh;C#%7R+:[(?dק}ɺS j|I.5cȋ-ޕ R;N u1x6e/ҍ/,kbQ VLWegk;07j(v*,oTһ'jtԦ\mp|/61 6Þ]KQzbq Ա TeY,sK3 ~dxzXRnZ|EŠNc`ߪM: N초M+t,]^aȪS`@9Yjt2M^Nkxuw٫BBRmplƘ07ĕn91P5p m̘VhnWjD;RC;GiD[pR@tzҠ*r}\o}JQc$vPHpI/L[FzT ;RKFJ_?P|:zLo*Cc7];hB>Gh?gjp=P'`7[t k~ f@`lRu 3(g, ^2u\JVξb)WBA6ûZE1bjgvW:b]6J<w) w$ߖȶFkt-0\NiSm=$ I@1v"qy#&4k 4)asҿqyT@@#X"ѦH%ӳЪ[eDlBȽ (b>\ >7R&:RJ5z9zq+S;AYve (U;?k X@8Ħ{  3!ee*Is 5 }֍vEvR%y|d1OpTyi% !ra ndx9I*H}|a[U_-]R48Z4_,o3Ĝ_G,xcT":UyݙrO k<wbweg5z$ _`"B|T|?݂rhZ:˖%(Vᖟ3/[YKƛ5&>dˍ4- zQx+Tm@ P-HaJ {~sp}V &C㖈F3DVո^$?Xjȳů90EYG{4OBF¤sV\?{<)"ѹ^WG-PWK$yjԶr[r:|^bPeFW< KI\p!uj3Ayu:C_"`6AeLĩS4N[(s$Swy 5qk@Db9 æQazA@@kźm_MKrQJZ.M !EXce;X~8H^;#bѼoI-c0W'j3,#UB=@漙V?XyܕFJaq7f1X? ( -U3vkgmlY(+)Gv:1cٿo, XC=DSL.?a놾{/'^}:-YsM%MOKR:TbYk{a No^\# ;xeY02QE"m||Iw:Ns X"/D<BjXy¬7`O0Ct&DIUi6s*̝$Pg0E5{п/,Vz ( F]uY:!{yOnW%\\OiJ~D MV}#$b)Fč?R}\{o", IW ^DtŔ孽u#1xn]5u +֛#zW4ܛTfa8ɭ,DWh>e}dLټ6e,JBg/C~ dVbXC MB4:~C^U%R5M!M&hnZ3'OD8Q1N:\αed,z" nu/kf0%.ƨB"DlQU% x-wmxn<ÉߒD. 8ISCkigH kf4 RK(:c8ZDȿ5Rmsz/x'=&sM"~ :k$h$|63r*!6'U;d, 0dԝN>FDG۹BҔJ.GP{V.DWȈnshE.A; _vRu4bᵓ1M^+(\7ƞs :)3>T/Y&-\9WbFR4|!\ `m^ڲܢ>c=0r$(/%FM]| vomW7LxN&PVV~*}E@32(ZԺY`0RS(O8%DX3OT)W`-eFek4j!=j+֔~A 3duF r.wPw;JHM2 ̂J:b.GH0.3\DйeIfHdD(Abwgp'MkT 9O2 U:M#70gDY*%@Z (P{| DcB=sI%H(TN{[D-"oXqeyrvqU~qWt\«˦[ӭ _9S`.$|1_Ua 6iNÐ*m-'#弎VW%7L`byeW; tPf eft{ 'DKX;hF">/ SPRuy]ly g*JE1sr he[ [8pHݱ6!nxf'ɤSX&qF/(XqgIɺi%A(P8޲*h61 jЙ|JC` h3^H(royQe[ZzEn)i'#W5V Y7Xdq# @fWG[yޜmAo'|cD/Ġ {B3DԨ%_Rez ȵ{ݴ\)EdC̃7_@J*/ saGŧjIQ`r2^t hR+gm#^@TqeƛξyIhTk1C"']N!4+Q@G]sYcSU3ѩCIeME#f<%R/V/!=*ìh'P?f)apA7w {DbxJ8ʵqh"66 qؙ+ɪ=F "fMnjTD}Wou^$yPt `f/@Z-{P) ޤ1vA,}f c*yL( 1͏@~6pwfPHc`ûj$y|gIS+q ŗq<"C\hk.HDF\Ǐа{Dz왔 ~3:e򖶍w -QMt.jpC~A<#H(Ũ6 5K?k%S@ĭ9 d[wJ32 U*oLPv-=j]`d̊y2tmcrÃ3(CTk5NB3:=8ccA&9T&Hg6Lp ݏ-/LIfo#5dCcJN9 .@p`;_@3WҶ f,8~,s/U.O^a@|A9hXjаmUm q7فƄi޽/cYSz GePD-b$]ZkW%@J)$3j+JÏN:N 3'E>fcBrU[%O\ŗ~ŕ,?MJ{)mVRHޅ};'= [Haf@ΤtYE ENWq4@=ÐLbok}stjGb7 KH)]mM %.Kh쟵fC#Q@ "gPFm>I'3;;=2Z GfE_e cmT=1h]tx^H/e5i ,ىj?*@ZRe}.I9cߗBgpJ.h^Oc.%r:x~ʣxKE}Id_yR㥚?  Hcr(JmA ҭU8P@P cw|Y@*]/xI;.uo!a-8>6ou3!2k5 &&r+Lبq#e!ld"܌xU5lW*h5A'$3Y{W/AwmJ'O֜C;!οE( ZJb*Ԇnz.6A g5~5h2R\nzq#J:O(oj]?-',e (/僐"gVEf6}.aO.:Oc: 00/įjbr]o`E@Ų9+aH/)y(.vz~s!Ҩ6,Ũ\J?i5,:VpD&'1Z֭ @ gmf:b1FE=3 <1fI|*m;TlW3NSF=ir#$suü4Qz3b7 t ge/| 7*/PIr@8i5>!ƳxAxD Jk)/tZ:QMgn(?IEy,H}yzX%38ؕq8]=o=|2yUcYWe"\b ;!lR r?[ 'L*/Ьň;-ߙzG=}n.$byto{@Iڸ}A|TgI-c b*8M0fWH0_t9g!dbM=3613B:%ZE^!)et@n)jZrei/M#ߥ R\ ͣe{쮭y:8˖$@0 '5sRiۻ@~H ףT*smRg#(3;rVˌJ Lu}yw)I|Y⡂BMS.vcozf o!+A(6#MgoG" T+41]㫛0tH@)T6<P Gic+Bǰ\L45kF2_a^es wjk@oK؍P4;ꀍW/h7v:)Ȳz/T]s.Lb WVrC18D{zB=WTvԇI04эp80p_/S=ˉwJ]2ݸA?(ܼTDށX;<!$*kw;3|dBSSfӼfGG?$q׬\퇎i7Q"wnYGB߳Xv%:eX)w#ɬ[x>+NTi uk@M-U*߻bw\~nw quNeq?ZeZ5B .I[w*㇬<- ࣗX3}Lwǜ^D 3|iYXět7bl2{4 i7` u;Dt[=Q$_nBz51rh&MڨXAr :6tD~RfxO Y9Ҧ[XW*}ұ3˜27CwNJU!1j+N;5unY ś٠$!#na^f'~,lj+99.F hBS&*z Vv^P7уQWإyEqW)I!N2W 2zIy7F޶1pXS*I3gd܃C:Orw**j;@֨(R RM! /+|:9܉dS'}dw)l5x-uf̽L!tOxpB^DK dfc*5]3'Jg!\tfЃ"i |Pʟ$*DE-D2'Z-n)6:R2M8@dC}^T{cR!/^!BYoT)QHʉ&<'sk90ll ӵJp@6NR":D`^0h-}#3\_{k˥kv`~v[Dw]Bih LqwݸԳD$,7@ay:/k%5R)S yH2{߱H={rC ZNv|_GV%Wլt,% u8ZRC.#)Jٕ!8w~~׸D'ܚD>扗(H;ϸNXi ,Waw{01 t„|FT).fWH# ]<3ӷ #3DcޓߞP^5A4-B(f0QK3s"+*"W +qU<,.`at". 6cinNnԊYKk%t=Vem?cXia{o(AkOW&fAYzL 92vF pp1p *s tݩn@uàoW_@'\ qnhLõ3]G;xNBO3Ej3/t"̌i@U^K$6O.(/a~ΞNb݂9Té06ܗmQ^7Xؤ$W ӎ@{1Ϭ7O'_*~|M<*(qW"Tގ޼`)L M”:aҢ})qu*L_̵ 왅KB ˽*͇W%>`h{Ӻi=3lS+ LPE d~p='6W[tyJ͑/: 6nnAl'=XўF`46-l)UiFrߌ& ^5>S}-8eξ~jԈF̚a= ]fA=sYNew U0B~m JQ~- *FuF"MB .J=买J $?>LuMG.Աv@g}+BaK2m܉#3S# Cey(({/^QU{eBT筩S{] :*b#%i056|iŒ:D,Bi%FLiY^^w;W_= aX0d]@AQwB d>}ǫ rjԱkDUשccHK3MM~ R݆;[UBڼ Axh!_Wfw++"7=5X̖mavhyt^5{N?#Xc &tb_wX@H>ebT j_-Gh pk c0A+]VP KÙ3'WJ1Z =OIfv jzU;[> X@8{ezv-8xP.T]e>?@],c> /P{H.'׈M1^5ivW^݀٥Lo:fM, DRkpac öYrLo[C-SkEp:G޺3b\Ѻlv[I—Jl T78m3 6AT(zzm6?w\-T7kD۪2*{Ad;:[lA#X?鮊-}rO)ìD.ɒyϙ73@w!7H„Ar$ڋn&P>_Ko AHT!_CJ]v/mlu"uBpܛHwH[":ۜF3pvmL v3i^}k Bա#3c~c8sXLpf=[/Dd$ϝ9Δ _z?N϶1Dkj<;\{Vgz-WUsw4By.]ܩ[[U h7fz`5@]o~^N]lW(.42!SN̈́avBdbח,U 8(Id+XNӕ?sꥥ-GINPh=qHC#['ļZROEoKe~h&5U iI8hpkA*`` }HK]/@LoiDHM&@RJ#7",A\UMUyͪ3pe_0od[D|=tUƲy]S\A3jjk(r52 54TҪ }11pXsKY^LMDX8c,|\7\XZ㟬=j[|)iivMwوLc̤Rˀ>>Y:H0!gYQya$/EFN1ƽ%a |ow/<&BUo+,5깂hS^C#)@W *!tseFS^?Z#oSkՅ '?uꭾ"x5,G ~zMfl/AdH"!qa  Ɗ㬩sx> DU5$1[&5[JD_ۋ6sS: KCRc:nī.=nV_ˠtS+,3ŠLtd - EaA15cb.%(![?|g6*$FAP'zLP st?)p<*񌹺}Εs@hPȮF c2y+Bmtwk-k sgd}Hnb:MR!ύ$'<{B56Z8e1RM~Azšy ܩyb5"?f$<Ԥ%g%WGs^X5ŝj^;4״LQ+b:efYV#ES~ZFOr"lؤ"̦ṖwAMY 2G9Ph{:&-I2#KG%Bum#ȩ JM ɏ NY_CKz ^0pun#Hʹi<_G1)z`ؑڞÓuj$kyY0x"d1MB}yI[.D=[w읿3A=4ɳ=n+1˻#K>!NBWXDrI*g~skKTfjum—eĦl`3No-A;dFK8?/G6YƽJf.9Q#K31 ~[G%[~%0qMZ?-YD3.-&wFtu  V ]0La v}Na/wcW~p.u(6NX~ Uxmj;eK[</(~c8 Xzocb)YY2]}>QYYtaLRƔ>x!]r.-AdxSa}]duf0#iSllub Ş9~0`? u*K5q Kx7$4Au 3u(zp6zGɎO\qLsFey4JߟuChTixIwyn$Uȥ3~7Nh̅$`R2Wܷ196̦o ĒR:յgμAHRW?U"C({0ovk<C:JKd?y^)`='`폔"7U`G(aّ@fHZ%z@%WA1izE>H*:z:k %Kձ>u.gk }tsd:=h>Hu8l's)(pouտSlmzI:"R12Er9y. ڜ |L٣?RYК5CeclfX&z$GzPyB/'N6'elL|9FX1t!Sx>iK,/o8k℺\oT@>>6,_=ST٩Bv+oylkG'*{Á3ǩƖp 0e]إj .mT8se (-4Kȕcfc*vŭ4g1~*ډg´7w;:RV I1<{6̅He/&X|u!?0*|.=MӋSҤPČ(܋:*tƺV4,?QȣkXEsM8i럮߾i `;1o~f0&<-.nx#ظe ddL'0fYZ񥜈ԾkXCZk8AL%nw7{Z"9ЁLob?IR&9Z۪@qRZ H<&PJdTtc}{J`=\fL,&[׆jY!Knk厰y.)y:Y͠$-fl] Z e9dQќFbWMPC|zȤM iҶ@Hэ5k'F-95^z{P;wu~##*5Fi=#(d7&*BUw FEKTa}gHS"W%k1_y tPm?jH^nTp8zP%O-Zov\Pn2ǎj8* 5\9yn܍zs݈ E@*)s! 9*R+(J"[b%OO0R"۝r:k qy3[y`xߙdt+ Oq1V͜AK~Z):T a,6SsLx L`( d) k?3 m\ r׮j> %-uqp Gp_ȣ*bmUC>?snrۊ)io&Fff%`9wb@>6פSؼ{},K. B8i6tj"G`}0r*9G1=)It_r'VBV@iWKGR -x&V*͐cxp堎|#@ (h&\g-OSx%.[hwm7#ژEf0?L,`@|5!ntːfhIk;7{2F4" bin_[M1|V_O0su1AIμ)QHF*n<꒰K$m&$7e;gz8JMgk__vɡ m bjDoHv[ۑqrgȦ~Vh΂pgM{ GH/~9 [;oy,lcݘ!12'3\kA]^d#Wdb E1K})~#3NCz/GJ],K`%NC@ {Q-29:ƣLK4xrtZ`oE}V<߈>GypCyМ=$Ăl.4=D$Էq(Ƀ_*6JM!+1-dW-<2h%Rj95Y닅/QrWCU=j5R`$rJ3 I*?$ iOo-c7:QAM:0WWq=(YQ!"IC2[qŠbBNAgS}@J+SstwW;S0rF2p i+"!D1c؜.D%I|{m`ك 3M]>M=wֲϹ5%[3xE8qz=%XŇ VVE=~H30//!Z,\&E&qquĿR <=O6Qw1Lx4~0s 颻6BX0l=L}D&1$'Yݯ.;mdx0R\qAg|mMQ$,wGaڐT*_M[ =i9vܤ7(ue/UY"lT|o1?H\KDhstޓp8nx”4pF~E&2ף(s8>̛|"?U4N@<#9)O$]sGqU!ѬB M`Wk|P5m7O6r7x*r/lq* *Ik{:O|}w&( Rc #Xu']L?T)^05o0y:#R3mI즩$3H^,NqFur9'wiNnK45_L FƇ..QW$Q5$֫ܿ>TMJ)-dK>yeP7>8IX; N-{ ^4BXy2Al !?0hyc2pDW= Y\qhvuy8m>fFR4>]A\keWT0AexvјMGًy} *ԹBq+$.zWhj2M950N'[XlH̝"0ڐsF`@ # UBXqעYܟŠ i/0W{5;1 Ж^mD ӚHWol>1$]{[jǷ]u;^ěѪ;ɵbA _;O"@ >$i'vDMoؠ m$B`)r\r_&iL,Vg\R6Z2zCi1YDN=ۉzyg`Mɪ[2:=( ۰r&k|9/lkz f-@~EI-[ &d 4)A:@Ȣ4Dʠ %Sj}$`Ev\ӭ/a,?Ӆ +SRh<}Qx< NJQ%0d'oV%qPvѨ4HE?ӘY]=ҫZFJgJ+T$3X/c$I.,=Fe3h.?z`)nU=SFG竅hC = o)P;+}a M@38=3 -.6ql7A_B>5ÞG!Lgߏ(PFhp e-> m0 SgtQwe 얘?v~/&F b =+"E,a^1u,G'PJ4h8s4/^+[͇R9{4lx`Lvd._"l@}r>3~Fhyx-zMJ=4 =hu~0:cz D=P9Dift?1oZ8Mݮ #wv&EѪn`c^rHj-Xs..n<޺S|uczpkrp4mNl\AVWRLr=mAiqnq>=2>ҨޱD7Cl$RthqI1ע'E0M24.^# NPL[,cV$9e :ʶK O-J.n=] ( Љb0/m3e҄ C`=S>l*$N:0ʚ5pN|*;SZc *7[ݸڭ۱-;龸+ ësFZQun2L719o\&I{JqW9'+`EAMנ ;;lg0{:aIrLeP1rXG(mڿ#5iQ *(K(" !͌/t`vYKN2s4\Wi4̓px\"uVdy!ٔHl&dZh3kv-Q #s)eƔ!ıdKtND;b`+Nn1q m@c$۶y^}Mg %6̅H.9Z spO(.2q Υ`"YdTa!H̲ DzDGZ(r鯍MO#54Du"ʲyKPpI {fh{z۬:*,"sxZ^חLieerw,tčگyX=%iPM4·˵NM&Oyp!I=n P`)3'z<,%sBP;%WO*'2}-n> /A4jE ȫ'~섬94Q? 9xE ¥U0\ 0N=2b,I>"gцZdXYs,t IU%b%2Oh: ص:Q1rS,i+Oez!dv8"{K*4rT,lfa9뎗yز\Ia9\(1a0`R_A-%W`(lg9'ǿ&2H'd5H;@I7;j(z8Y¸[y "͉i+>a?k1hkn{5ѾB@m啛: qRz{jAr"OoK,]bԝ;Q dS.(f˦]P[tE\:gYeuSq7cO4&@0kh[[&<,Cc`€mxg$iD-V=̀Uv;wv*d#΃liVʎjܨ;>~iƍc*X݉m=@$FIf ǽCFr{p/pcm;%F-}w |T7mnA =/j1"?*ټ%6RCN{cA5{=ɒc>{V b 4 Pv2o=0NRpMe`1)}JWĩ+_BK a[_D a9LDT&(}tZɬIls܂wy A2gnPT_~+W!LkL# Ⱥι aC6G?!6$HcLu^c]L<- ),&LQt4!hK ?{WecϑI\;Te( jĥ(kPqt E7˓ {TJ>W$6  7@LVq-IPɩ8CdzPr3怪CJJO-B?Ն'/)JiU 0/8TygH#:z2@j-#Q30?T"91atgf>6x _U~^LS˕y ur4oc$,h¾ !m)o6sz:#8РS)r˥FUs}*?>h ܱv9)lFp[: yش"%d= /Vن#$̂lZ(T$I2L>h|#3܀'=69' "KO+&o\%IpKV$D!V&h" BqOIA)I N{SNJQtSL͡S]!~ 8=w"u\qa<+o0NTiY%~zAO0 xxߋIK׺`uD֊C?8 ܾiX"6z;M:VZaH]^h(/Yئ8]Lij}W.q@~#gkfwNUޙpL{z\#(&N" ;7S9(U-Ox3&hd/hAY+gDG lJp7TÀ`&]l2l}'yLk.w-+pT@|u$@m#rUӠq äJi?n: I ZoU|8գX5CH&\HH LGʤk[5חF[lںBOkƶs]/0à Dz%y^)IBE. 4T@ik;j >'M5a>xg%O0mdE,Bx GW0-< h4,[s &)Jʩ3O^ !bِOLj^,- U-T6ゝ}Q3D6KZ ύ U+@ǂ{gUWϧ\WSbxjWthLjm\9!/i@cYoL@Tb$oC,p3;M9nop-jt>Lܮa~znυDk̤Ik0=HOJ[uo z֚hzRx!GX]}=+caRQt`,bBv"Dag[ͨй5ZXW:<5rNk ]JL`x )mJNϨ7>%U 䧅raQ%J=N}h#WU PU#Om8O#6?=T #LefyAHsv#[ g ۍڛ[_6dɛ2>"d#0`yE0b_{;֟]˲LAvXF-eTh$>[./Ӑ}@Xٸ,/vSi,hv)EiSDFYi|=ᏻ,V;nX{ LEQ̣KF\b )JϬV`5ݨe6MHNŃ)c9WHM317;i]=b)3S%iΤ0H QpЇfCFc$.;ҦʊG'jLO΅Ma$%g)l9*E|ݕ8@^<+cA0d8lՈhڟ 0o;!e,UYkNmzyC0CO*)J%EVsjμM}Dm~N4ѡ:E27]C.*3CR-ȅT츩8suUa?1N?@~VU8ndՅ E?zsz^4w"At~ go7g ~.s:<(e7x'cs'mc%=HOKwYKv[/T8% +yF7kYk\>Whrp?Kuϰ2FKN˷+$M/|(2+~Vu+]&mXNz%s/Ͳ+f-2[iydySR5'dW}^b3_{ճ!(WsEESӭ.[Lӛ=okuE22ݧNA> !5X[RK1ܓr~YrC~i>=ֈS?z.{I('Y0h!ltg0pĪb(,-#"v.1p)ڦ&v,5oav7/A4yt:V{(g ?ʻD~ Ȫck9̢&/,oJԬx1.4(1JD}0|%l2wv.SJ#A9H=`1x'cltBfe  "'tDᠪ۪9(}k< ZV&a_jtG voQ6ͨ_c{ifZ;kIfisr*xk P_9U+J5{+mʬ3)NA>_3up9℠I>N>{b˵J$|b|i 4OJM$:^* ʿ[>;u~X4=$Xtѯ=8Ԋ)Mf&ǝ*h6~miAs1iK7e.=jG{+:| n;`%oH)tDca_ 4"Έ4u[FQ<.[*Y7il)|b[۟h[XsH{ v ok#7CU4-i3`en$Zgc0~̸Χ|Bn 4Qɑ~%/"}0 /o %6%վg1.u:.RFp͗#!H\DXPlƜpu緹793=Y uk1L)c/6#ɤvBHt(B5o|6TI\ln ͅ-4^q{޿'bծRjLcַ}wx XMZȧWvXRZɁv|L7P'}ɭbCje'm 9|ĶAW:|s<+RVA6LW,pp/[%ж _iw%-}ᶋa7\ x3迋 5%-GF|pdc[m8m`3n[M@`AHa`S]fc,E\6'd;s@CV i0RnZ#녀_[b淛\ؖ]e@l c0!f2TT(2Tmtr7\Q /]`L1MU#+ y߹HlLڧVB20|h k'8=wsLy³HGEia+ HbI+ C'<즀ob?IK1KG& կ2F K8 dY_tP2<'mIYǺf+|[hLP_)E,wT~m, `p|~'*!Tpָr_ީ |JP@)NTp0Cܽɹbp JWD%*f4֕GkF7*JTZHS*#8!}G«eaB#oD1۝@tUFȍY|ʿ6f^+-0XzXϰ!(j'~#"h@o&u'dẻ|>n[ZW8>& Z9r*zd)`l-YaR-c,ΔPPR| e"&w$j\dqd~EtIF)~?[;iޙhTZWO2rxz^dǏvAIGQAqRm0ʞF!gbASփPrU.9EtNkf恍_a^Yfk,Ȳc3VTdקuSׂ$W|tbV~ ־`_ N~kf'jpkݧ%`Xj% ˠ c[[84x[y' b#-ɏrRq="،rqp 5|fA,L=x1:33YguJUK?W7*BU+:`o/2M}Y/}wO_m7aɠI.Ld8AuV!@LXTM$] )"֩&DAn̘**XW~+TkZ#K1AAhf48/L*)o "F%sPYpb{/2b7< DjDMbU"ß⬏M s۵YϬZ"tJfTyѶ,n _8p-e5\|s~>. CVdQH::`_ {GkM"' `mˬ |v0.B\T|f)W8|r: 엗gLccID4>%qi$׆ 2.Ovujyՙ5H6N& wy2 GSA 7]ǺT AR±̐Mp~DžXG; ItAGaS$N.+n0mr(PX_)<@e zs[)MvY wsr;8谧[O8(Ghcʈߧp!}VF:PG2 <9^b̴ s?UZӗyfC,%}oΖ+ $C򴻂S<9P Zk\)@0 FS}ogqᩆ;"M\qSRFVrzM~”o01( /<Ձ*Wwa`VXip}LRDɾ_hv֖ՄCd Te[QIj N9wtqCT{(rrˁD'N>[8WW_lIԥeAi/\ : oA/#jq;]IGۼUyi)Tð$ɫ<1dџopO H+%F]؁U~[hُ5Uce]bGW)L"n)0i3ZxFòPO8BR ;ؚ8 ht.,!%#N1;RG?->3RvNY%wtZ bŸ#K7Pb&Yrی-&IQY),g(6$> _/<|v (DlF,ܭO)ԡ]"pev ra\O Rc;=)Ry'3P&bj0 5dFL1+ PrRKמ1,b>I_/E_ #w  fMcWA+9kwn`޲-fi~[~%&k;9D @wgH/4谚&d#Ž\p@abN ǴXGz(M\]lZ[|dn@;l_k06+|*.@:ENn2Q7X_«y8^6#^F; OMp-=NtjIp^煦(N/J~ .s{Ixt nsmJ̩%eDybWrfoAkDOesCAoGG<ը+}wI9 1N4 d Ԉ ?55%am!Y0>N{W{EZEq56թwu]r؏ac|D>qhH{01jQ]l?WmZ$482<RF:D*MgL +^n\U x(2ÍY?B(>֘^Ƚj)5SoR{j)#Ua=\](wݘ+IϳFؙ$eZ=غXӛeU7.դժ6<XXÐ/˷:̑GTb@S=˜. 7Y;DRG' &%sWUGGܹ06Kha N^X1̖b'5P澭7;\sX\G_ּ5Lˊ'ǪǂeM/|_k0ife-FdOU5@f\@^S| ՙL')و\"6&w4DO~ 9{{y Q2thOWp0~PthhX[os@bBI4و$K/ae˻8wx2"C㡥^^3a9?Ÿ8A}]#h]h7Mit,+DWj~54àP/_o0-z;p%tesLPsoV Led <~>xɪ \B-7l Rn6FhAګ,rﰛ}5&RײZp0/impZq%)"sV=~+ d[ʃӎ4y>PW@yXCrTm^K gFF¡рxRڀA/&zVkׅO y&E4P$?)X[B)aR?-lBh77P#䡓7n~F wäњ8A;D,]Y鰎eOv6!&@dC?s޲5S'nT :Rde5e׭ETS|inqի>P BSk~^HU9ψƶXW;tI^ yK$ܙF^\a >nqY; +19}r\]P' M/Vuhڊf\sS|6GI/F_ -@^*ټ,щ0:0_cN;UhE~~SWU0 ٭O /ǘюm 34/ZL~(y=v hR4JT̩Ŵ@_92<q`wpH JEVܡ'4!R vW<>.ؿr%ƋhH]Fr4YLRMS-B>?PxU;=We1 }(oָ#0K.Av@`d7hU)iAF3C[K_I׽qMydLlߵ8u6-&anky(=Nhk4huǷ˖Zy"k\WRhƖ&<1XM#!kj _QθՒdxW_:%vzErug> 3 ³(EB_#!6Y->;"Щ_i_"vJɮy3j25|̠_蚹[s\>">^OSZ MvcQ W(bו]Bxr.KS^:.Q LVS_@^ʍ5 .|9%ޝY]G9v~  w=5w[)C)iNUVo -_=.k\[5y0 .8.壡˜ߨk`21Bt!ӱ) 6pPΨ>XKi:=&e0*E!ǯkױz!'!y$YqGk I9 mqv`-Qc& K_& )8Xԋ{R$lDե/QjyAu ηy ח)Y$ ̦ϵR(g’@e ZѺ5#9Ix[˾="ZR- t0xl D7cqn+0kZF8 snkOJKeʸ>1p;4\w<#YOba({l ZgbI7'ԅ"{J5Ym8`5չԊs+;ueR֛A+9y)ttN&D OLgdE&$6v*&z 7odҎ~m 1z 8098nb/Һ^ř8ԡUv堵b0 `Rn9W+_!J#%liq!ak  _}|,"UܺLqٿy &4.k)If!+2:P!'F?qn0ous>< MH^PiIפ-ӹ$r94xc\Al@ԄH~w r @X[lI|w`FAA>I^KSq鲗(<#`nOWhCB}9.g?dbC<Yr}Yo‡`ڲOgҌp3.-uXaƝx X5ഌ\CZc7POJN/XY\c >ob"T6  /`*~۵t8lK^n*7ʻ 1 ,ZTIa0ڞ{E/}J<4A9kj*T8= L`+ ty\0d/1l 3}*.2PpZh]$8C]ۆolbp;ffO % p49+VtC~"bbL Tf1U>- e~eѽ$峯pDY'n% ǤDO`ܧa>>hxG>v>F,3mfF?vFS6%I< nÖTpk_>loeJU?]cpk7*gW垨he]DbWM|MM4@r%؉j*XrV@i5"EK uW-=x` 7E8V'xq5U}9Yz+'G- {[ImKŹ ,p)l츝{RZUd[B.=a%sͪ|yV2E-!s™_M=faT,_ < ngf77w&?pSEL/wSe (}Xeq$*jitNe pig ?U((P6g+$Vb2L+J54rIag)!~~#*n!j\dl72 ["5 %K2?)be^(:Ȍ6{I.qNH!uuJH]_酳,N2FV?OsɥW]sNm'NNrkUh{(Atሌqg#QP8d%z]?~t /XM.&>j=${J^m=,˂ yWSRP߉ȿ8q}+e};zƋK/hJw0k (l5֔㣁T)9XtnTFoLяd,;4w`0*;AMƿN^roh,7c1M-Ö>0^R;K4 ?%GÓ2V7nOZ٪y3 a}4v%}m/N-jH~-E_hQ s. bͮ.RΟI9,'0 ~닆"ML!"|׫B&6,kpE.cV{쥬I71ap ZcJYJ='Dcb B%rvL SN|UT9QwC+KMAkk9D/K̼ xܔFG8AǶ]N'[ۇ"w̨_r8~hцIc=ljJ=dFq2 lJ _oV6ؿ8H.oyY2rx:f q}L3e(ѻ)e"C02]jH<MU<Ґsl@HHˮƵˌ)# 6= +vn50>C*2+.e[Ius10&)zF[!n?,'/@pݞ/6Ѽ^%THo'A` v*G걗eE Mu rưєۅ Fp|yb -KG. W|ЯO$aj\#jks2c߶dw{0 ^bٷepHJdE7N I1g;IژLa!yZ"{o`CVX kK0UaZ#L7yL;k&^ڌ 2u(ῴr<yx+&G#A<52)EryNM|fPN0XeܯRTCuy3an7yiIZTH M15 &]ޒ}ney3Uc/G chw,xvBN.Y:!d17ߤ6J ]z-7M ){^,~`bGSMp,beg] !cԜѬě@DATP@v.륍 Nj}+c"$E)\Lg@J zL)kS^ۙB@O3 8GUϪ h8JQ`v7k7iꃹ$ע0̹D?w; 4`ylg]eb gk;ZfI(d*KWv0דLҐigqeL q ЬoMH ~}"/;Ł%e@;,Yun{{cw y5<6*SBehxuj<"nڑH}ĈmYE8U}wqZjϴ _PvwC[T < =$5B}ZtɸQA./mKҤLɳCT g[ wdMtNޮ`p&ɐ ÷QNB̗)R8"+;p*m"pVHTiSu|<3[>0o"B#ʶR/\1 0mӔ"t X G4pd:(ȸ3=Y(sSΒ}<_$Թ`B*_M~DdK'SE>DO D3}]? ]O.pb-#bRa?L B<كɺ›~sD7rdGِF  <WRI+$-4/`VڶpIOjdg rmq+_ˉwAB-۲d~1S MHoA(9EFJ߈i0+(~9 )OAd{-ՐߟW56;*XT 34xKc,f~_烞ݠpN7$ӧC2t΂c돳.ۊ2!-c-wOh V0dYޤ͌ 'm`lDgtWZz8C2oR[".*7pк-_# v6&BK>G(2Zr̿R'CjV<509baUYauXg%ܑ:cz=;X#',LzcKX+(Kɛט'<,b¤)LCy3Ay7AhF˦,>Q%[ީ}SF+~l ZzQezy2h~PNB`꜕P`=}D=;I%R ĭ^2,,2tYKP#GEIb~P1E~D|6HIz ZbQB;bx>CP nziYh Om9p+iCJ,y:NTh]E| z{2YJ ݶ d} Z@7$*z :jbb۹i͜Uϝ2v#{Ȫ,,13H[\ aۂOړup.In:LD$c KIyؑ|Po$s5e mr 8jCT] pГskfK6'2]u4Q⬄$$r0pa ݽ]Qm%o'.z`:| )m efE %֏pdrAe >VTē۹gQ̓a \X~rҮg[v2= ( d̎QIy |DZV= T,)I&vq+gYJ3vϓ"ϩTb#`c|H:) c augKG|rNVh*^ ΕOǸvVgWbq 7=+(l]/a˳bDm.axWݞh8sSY4jyxBI|!o5yisGc"ۡH`\ ɝʳCH #fFJ“_#b r;U.cF,͞7ҴM<)Rɯ. 9&rgޑ`IWkS)kY_RZ3,Hf٭NeX7sݞ&ѡ35|lmL'(xwYt5A(%P-\C)n1p /"zm3QS m dD& 'n)( vuo8n VI][֔ /\`:(#idL:졺 ހ c92G<֮1њW#9<ˡl=eOFnÁń<S%tp*2Re"9iT'G;z*l= }77kZ~9SėOj fxzw}vse)+ɘBZeȽ;KH4 Xge("'`UoTM0NL?18;eɐ4m 1_c]-!zΖ+ $V5٣jFZ2 #л q*G393U~/!TۦJOMMV\*Ѓ`0əhß |ICqS}cf4"އeX8(?97-V[!6fѾV-XYr2%ӪPYߓ;]Z2t9=}J"@D6O0K?Gt%B4k{}#Ux9)xꦪpTܦ^2b[_^mAoEJ>):/D_֪pdN/LWg2⸼*1^¶ЬeUxCyo ,z*|HZ+k{<㌨ܰ!}8M{du>e)/SQ߭%+EsɄ1lЌzgDABPC(b= (aģS+xEa *oSmX.J|)c=FuA嬝j@ʑ=y,_k, j= aK)NC8(kHϚ f9DwBImq'(N>:k Q8uCf 3i}8mͻ:ށv=kȧ%ǓC$ ،oyTm$!NSa)T`J+kUGRbv,_LvOIr;rk~.O'F3hNVd/,Dcbo $ c2j* @bIйZ* 1ť5}k+^JwuCjxRͮon\'/=)k dQHK`ȂSܨQ1 }wt#Kd~E9|$:ĆȽL\RON/PpXw`( $A%ͯsMV`ol8Y’} C4}ms$nY]Ugg@q㩌z4ha;.41iX/]~'1GLpCp9  70'ݹ4"ľ\]wX5e_)fpMG<` Eo[ʡ*c˻5Ěj[;⊡h*3/ӟ\khg5a[iʊI̭ͬ~O8vL9ZFtTK͌Bz{7Vρ{+T'_q)44LC)U!6K,։;WfG`yT?#U=+c,X{L7c3rZDw[$# ǿ/ LLwq/&r/"N];π5R8vً ⒫vDzߘTT&H[A"MLVtWWy ϓ%LT!el~s |Wᶵ۽ m5<| ػnNӀ}+k'Y&֔!wbA 0FXnN5'OޔEU~T0yވ+"we9ط񙣭ݑhoLfo_ crQs'"٥y]$xGCf|QJ Ā9OD1OݩXfԿn5~YQn`KuݤW$K7nxZȜ{p6bICK^nƅ1RcӫΒybgЃpaTĔRQ.zW_ K'tg My_|@T5*>iD=nq*MѬ ݉zgZ *:+ud%CY 2h\ 3`h،t6S7 m_:iȫqaX(+R B5s-E󶪎p(ԡC 50\ܕ>#Q1w'<O\iLM>Vӛjve=32\je wzj!WKFSplhR$6(x2HJ*T$OKc=1;i2Zo T98M̔š$ n:6" hIDkߝPu5N*S=ھs^ss-(e-~}PwPd )"7](F?R]Q1_.CRSYXr.;w> J%D98mUuC}pC px;\bhT8S:y](w_ ;D&RTow? X=] ތϕ;fg >LSsxxjŖQ`R?\rMNgL\dQ'}(v)hs~랿e~?S>$߇yW=m`9nbx\]b[~&3 [{X)۔=+h Xg2_)p$W<kUJX*D̯ԽߐӜ%tуNԈ3aB?YUgJ#LLe:K/X*Be%6%88?ZE٥B@/V"r{A'C q!-$ᵅI{oIUt+Vpx/4FP\[XFT9*t-XqTa x.`.6I(̾0)rY.#Œ$םw-g`|Bap3%H0(z}iP<g'(D>yr<~8,_{>~¨c?tT5p$LG4G ӻG.+>57fۧ+S8!K*3P?ܥ#`K:|U~J0}OU{LCݩh |8Fͩ2z,X k#oNS8SjgO,81oN70@ 2[̱]ONurh / ӽljE<><} ]r,jt.#mg]7xVjN4˸0Jhx=ETG0nSe?\gF;so}IaOM(H[DKy8y8^`;AA> DׂIf*/ǩz$Bhf]|D͎l3?ϋ(m|F !/uQp% 'FfZ&[)NKSPEn3"[R̫D6qPằu@U|DbO!ߧ$0dbm7a%sK^T[T/i)Y;F>)=%x0Jo+4|pR)'Ӛ5xAy!fVUčP/ɾCnYzq=tTDx[ *2*ia_FS poq4VEf*ܷoH}i7 ""Fiڦ @BW_cCxFcC9-:O8A},[m*Y V;dVfXi\ Mn8.Tnەt*[43Ohv$jn<OVˆ͍}Vp]dPC`vf \_r2~TNJaJCijims=,k<Ɏ ؏{ `"!AV&, \,?Gv]~%L<)ZVIAU9r*`i-p%݌[gAJL,@ zG?|bWXv!bJ?sC^r_{n עVQlU/1Z+2;Lp#`eG^3L.)6&JW }1[ Jo/X؆PO!o5,xAPk̭_ %uӽ 6+3YWA9~gR&JhÚ[[sSv:KH:$a[`,[cx-OeCifNm GоA86~*moD|pXi]GO"V˭Xg.Suڬ"%!bY"vA.An}hƔRqa͟9 :s?]4Fste2>gKaU&1*poklg g~^ le9}wW8U:QdvI$^@&2ծEɤL!߻ 'ˑt0NtuFͦb~S"͂N:q6RAmKAb(ڋwKb( V}7obtP;?/_o6,~f.lٖJ$uk\@yyj</OTqDm01 j\=Dh{ؘq' PRM97b0g@TŒ O(@xɘ<t_Ire=8.m懑)e$ƀ0Gܧa2!m*Ïs! صr2,bk(: dP ySyPQ 8@^XRPi (~oU~t[r;fx~_,N7eĖeUNCLD|a gMRNSr)X"HP~F"'TSdz :\-14lkW Xd(B &qZڣ j1Ftt[$X6X\J7+.Oi\5֐k ,{g\e3ʮ[9 &m't,JQzmQw۰DznRabOhWg(ࡎkuɠU <5LȖfR(|:^ܲ9.2<̶(Dj 5*Cdp>;RJ_p{t꽦S*Ϥ sw7 x6XwDK5o޺0$,d 3CNe"+۳:(ƯJ!Κ2Fa@Qj8&z١Jb<mê7P%q$_oy1؅b(c apTMLPQ,\cpl꩚y[VvȲZRLk] Zt)1$#3&HhH'(GdhS [];ElY\H9Y`6} ^Y TZxWr*P"]6:FEݩUՌ =$haqER 9Sy1$ꗮ/l~v(mm`QxYփ`RҼ^ؖү٣BROP8ƿ?oJ2# V5(_|Ucy#s i FQ/Qf5vmUN9[*4X~)PxeM٘-"RrqP|/TH2=u+)NJlԽ1Q{){aqcE$rj{F-i殺hϿڿ4 'f_ZE1ބS@clyOin8g8:5Vđ!N:$c*]yTSžBUJ{QV.G4]!@J̓WAUb..eoi7 ꭋVHeeQWueo~fa>넮j:Hfӎ b뺊E˘žjVUVH)O8c;,19՝gO>UVS(ĢUE,?oǪJ-t9dUTA8L_&7hڮ> )ȈGCJɫ °"?%i$Xfޘt~~CwA@{L Wu S҅uO7}u9qO6:v=Vhʨb+a. I4QAsr!p~Z>xdp]gS698H@OǢskDub!UfKoF_: bw4[@"gPդuq,/|;mOB-D!C,iL_tN1/1JXXhQ~rI<|S_8gCUFՖA33B0-F$ul, RlC{qDDS{ O?vE KOx̔sOH]nhoȮw,iKd#X~p& EZHsk'љAi 6@͒k{hek0t$:P‚H2®=Z}NX A%I{;QhQ*QH/0= K$ZK'(΂IO~jdLK ]ɷ +\;d#iDd*v;zF*9|*f>d,Ƽh`wU{3˂...%MٞKwT!b=pY"n槛$s92ИBÅ`<~Wjcc(Yj@Õ>GJ!HZ_wI3sIjh4>9ªW67sq]ed% q,Ѳ[X3]>)B\̽vaTw5/ Ld}|;e;1NO$~{_f :hp(jahm@c fIIUլj\3S>X;&7 Р:JDs`j ;iQ 5͠ ˱IOagCLLZ~O%GV1{ '7F> %X(.IE F7"ztAB`W#۔;ʜ;Ĝi`VoKȐ>KʑsUuz X,>-"n( DX4n5u)Eh{4OpPT1ŢTs#6/"c,g@M|)n`?x]a$; -.K඄N 3&{l 1s&[=Nsp%3,@FyuvEP8{nJD\!"ʼ4W_K@b] [L]XTn^8 \.&7e 2ƥgi9@,߾Q} ޹uʵ!\ꇒ%qMڌe!KGOG=+?Z6 45k%FlV VǔI~$̽U4Y։mn"d:_N亱!SO>ᷬvB/ǢiJO"Um- |,A:йq3=|y@%ׇV]P,I&^yjv¼_(|曽P!]@--0p*cHWy( 'ڒmaDDMI _0w)-uhrE3W~ ۠!@;_ " ݃Z$cQy/œ)H[O`fIm*휙=h3'L{N*3f^?_)k(d ?ˈuFu# m|hK(Қn unq!F]=æ>nu[9?[ meSb"򑓼#47)hiB$70Ji-f bb=\(ݷd99<-^߰dʡGUNUX S '%#>$5!k3k@(5CԠzh60f}mZ 6c]b$MaxiWS'0"|>[պCp AGɋ%ϚH 8AmI@*",?Per 70 zCEpa^miO&rs-|W 6l%mTPd>F7?: ͢ny^YkףtKis˾ë%)SK&qvaq z#({! M'][ZF8Oﻶׁ4\>մT*ug+{%V|iv7O3: RNTz̀ؐ E¤DxM*a{Bc6QdQquزzw|f^is|Fr*N Ciق-ZGc& + Lĝ5ߟicj4  LgxЪ(a8֩攵5@Y p'P~W;c@l1F[ ^VT>((xXǂ7:[^ߞRPʀ3D+Lu! Y_7 Q)W%| zf"z .r^vȔ62cXwzWAy_]pH"\ aI;, ^+XFB%O?ڮ"롆b=O2}Rl Fk̃)"_hأUD+E%:ٵ@ ~uga+#7jˆi% Fsx¢ 4̩HoOf۪/iB65E|S..0 Fƭ.Hu-0>Sg$]NG eZ,9726J!;Dgu?7^Sg՘tmvH"OӥgGtҰ[~Ւ|0E;4SUu,!~W!׀QY?*KuB}0 =e?H9\@lÇTmlxYւ3ON k.*C\㨴CNE3cAHGmqlۼIHaT+-vNV/ȯ%³*O՚,%JrLfw"9QEK%tm49ӓm N7B'pd Y2|/ %|Ƹ{p6Oei.fxZ;XmkxdlU'SO"@Kx9~B"0sN1s`-$ s7{`/.c_b^5-hB׼۳m댵u|hYn]Ll5w ]]9\{fv`M`A!o ' D\F2t˚Gh$Zs:& J{D^¢̫ 6tCH#j)K@Ԗ嶞Pig+Y5a8єd1CtH@f&Lt5NԑQAr`Xd2 nɧ5&QZ67  u9c"I147J@\x!Xq˟ns@u^Hs5zT&Cp-vŭ[' Qx=1˂kcV!@"|xw:x#!0tW9^-؍1+Q߮rVHŠ-ȃS$--) J+aL;  J™Sҥd?ՁmCIvOu}m[rD]*]W/&Y߮,7@,MQu"*o>A*|,M Rsd?a PHܯ!!-\%!Մ𽹋f!n;m`\ ł4aKlɀ\L]%Qve3?M;TfJ-LQL+N}Ҹ8z{=Vq ݡ_IjvP,iΝpVBvGT4ɉծC aUЎV3X-, fZXilVNHPV?~0g% Q'X+EW }QlcA-\a/ jH8$N$U"%i8Uc _13 D`2JTO@#$@/qEMX`4s6˱)5}qޟSD(r݌ դ권KڄGry_sT%`Q41Cو7cca1\Lΐ QP|i+E&܎AJ3!e>:7b>,[iʳ&l`H<.r?IpK3w t\.\kJCs_!)a0PQ~߄=Pd7q PwӾ5+*U~i9M> p44 *?d07/A?93{Dž+Q͢L:#Wo渥d1J2S%ܴc5P B\ zG}r'?*uVG " + I /ٌTgVt7όР#FrID1](lCiݎvEZcԃ 5}KQR%(S69`qft12*kҞ3$_XyF]KHg!r^|N!鴘H PU}zK 8uCfVm92@P#:iEjo{V2XI@:#'%?.?u~uwAKa&ғ˙Ҥ3c\ 6n% rK䇛3i6/K#`l@.pߏE^HҐ+~s`۔Ol<̘¨QcPkYc(uOD$ D`լ-műRl†D[ʈSjw` q6L,7~R+UKcH#3z `zbMt# ZϗjZ*iJ C'WZF6Ąn2ڣm|3GgM/t/(oxPI0q; бnA T>1 jȀ1[$!Ov#*in OHQ/x1˚7 Li>DLC92qbfg0"lcSC[:r6t>GB XaBV'nKQĀJ!dAMtfs: fŽިݱGg79`>NGTSVq4,XcV D)31rn>T[Mᏸ @_9&s^*A&)`b'! w(JE'`"=$_1\i%h5qU>u&rSxc]nI{\/X(jk[nJ ľTa4,(?SXp)mR>n.,hݛ W4!ҙQDtuQD50n3kr{}^&wΈ>]&mY6]8sFFya TjؑSg]cPH|Ժ,:T'0 Ӧ F#'aCXRux I#i􁐲-f+G{2P4Rd4c+b i7wS&dB2 C[ _ܱV\hu 3 pVq )S]wNt#͑rI mj pe}m̳'RAcb~9>k!xPӛ/XƋnǶA 3Eз " қ 25 fDP*al# }M7g Cџ[ J ocR17y ggZіPN)o LLMoڥؤ GAB»Y{Ke‘ZF9ʣd%}HK lAalS #rSb^R[T*t5HJsx)? bI2f\YpN9B[iGjGdnLB-Sm$XY X}3\o F ,[-ଜzv}u3 %*ʃlQ׀>-tE@CJL ''5 ]BE[V9Z[:_*q+aJ+ bϸh;$l37T:5;C e"tAYlۊc,;>x 6XNCv,Ra޴,bR IY&%e>Db$]/{uke'f}8Gɉ6;STߊvB.PUV(VsCfVYJDɤ?ڊ&g|SČbRslZ܏;N_!Hck%T~#VnﵸWO >c | iHzx<{I)"X2ͧUŘ*gg;x-;Ջ3_}i6BfOe9HN)X?]0Ң G:+^=PnBo9Hj ƚ^h|+ch+k\ |\D03 5B2#hb]t>ƀ[|=;[1}&"(>vG웨sxYs^R)k,= x,ԥ)n ZR%8_:#+ -59ԅv"ӯ񍯧j$Lc. G*{XXX,[{#b=qxAK 2h !0#a dIݜp=dzQf\;ՙ{!)\լZ̖? wלd0u;H\"f:1x>(!k&3o ~5V^R1)n3M<\驜K_VGr/.SvYIdJ`}, yAz=HUg]4R_ !yz l. dTir$MC"ɝ1Fݱ @ݒ\gb^gGD;iq986+@SWgLs1vkڏ)Aɉ q!,~jyoy"b *"NY Sfdb("5*!]> TlbNXL`Gt)8WuDHƧ)5rjzD|>6%þrK!9V=ĝ{w9 fa ^?~fӵgj$mf>l‚OcT8B-4E5%z(,CdHw (d=k\ռ<}'4f,ė*(aι$>5g@|q4؀W߹OBP3CIbX{5 }zxfyzsɿ*k0UWlC]$Ib Z$Z/)E鸻A!] ݡٻ|W{43ܰ rNk=WtInJj0$ͣh%LLsbO!p NKI."an|9j*^u}ˆx) 畎bmA s=MyS 7{?x[3\CG]-H/T7 -@߷k.^}lau&U.w[C͉wp f*@NFbx X#.gJSV%JY.z{b!/,ѶzzX,Y2+ 'kOb8e1wfCP35B+"oUKخ'Z>~*$¾Q3 LhQZvK 8,Y࢒[xNR -ߥGVfk76Gѿܜ3|d]͞6 57a?-gB'|[GVjPܷTIK CC,-م[zl PK5?#{tu7]2XV7N|ɪ UEG nRlήa!JQPh7 G\NcnͼD;֗a%QPʹ qAt̀'8<0nxp%Cg< 54ݏѷb"b68=4F [ zD:k2ExYՈO,Z50:s7|0nbz~ ,Y!>熩k 9o~{]VdeoM0JP&HܥZ9' [BP.7{\:{d^uNzhW~͇ b4h'&E+a/cumU!=?ʶQ:~z6dG.(`:U.LJ^-2dNJfkkã͹ZdQ iٰR'x'Sbj$by~Ym@cH]oNҚsԏrϸlxJ@(_PB5>FScM^!xOe^)!Q͜.7K5:1]:]z?[l6Bf(Zk4gOK76Qq<3+cwƶi33u9gR>͗5,j.uN8,gK@xz@<{qA]$?ߜ ڝR%ȕw~e^nhʈS-XEq ?Bn9C@岎 Od5&*cc*_$^):~.xѨz(=OYM wRS޿ -:D=DCR@ P",ݐyŸ} 9Ӣ]Ɩ}U$=݅rn2(c0$,a믙YoEאP_ľsGPG[F&L_<g&Sի@ERDզ,-klѨkpeHnuۥ +Ĉۦe=}BqDZ'Ke 5q`%,.km;#ԕ8n {%9yh{ N6:7c|}`,\ ' nGSܚ\I(FN<4މ2u-N\rj{WM6ۏ oVְ "crG! v޽&&u!%뭌㸻)_'FCrT}2!>5 X+X oF}N_ Y<|gL4m!2KYĉ0Xo`yrB|?!\͡idnm?(ˣCyLgHTcC[gK:A&(^hDiArdR,=IwJ*@ؖ7d*M5F7RܮόE ]o`h{+6PMĴڒ9]?׉mCPx#R#ʺkUq¹T wJɨ:>|r$%njπT[D?اapSE9I{ [FwoyG6Pocb TǶwS/}8J曆. UisF-"3v xHrZWA#\NV.E ɢFܳ*"95cuk?2U#>wdd;$(Z)>Dz)ҟH1 eҧ) >yJ9^ ѷwǪEd3$-ړH>#Lnjk %_4f>U 3$'ű^e$EC בL5#ZˈA\wr@[nt70&pI(BniEO;i3: s uSM;C +D .""j"okTx6of!yPdBP+zE.a m~/qeC(CCap8wM&f9-w .k8ɣ% _BX3d64 8Q6爱sYם8KPx5PrpX(@0\{" Aʗ=r]A|8PI5'l6 OܬXmFLd5U>`_0OӮzUAZ?`tqjT=t#!*3O kXF9rVnWܺ4K/-P7Nwyh=zk9oC8WFwc-#Sm&u$QIozs[ xѰn#$=gh."Jv {)*>psXUuBUҗ˅zƁr@́vJ { 撁Eo7pqWuyJ!@aOC`i_-`tejqҸ;txӖ?I \J5j[ݞCbBԷR_phPYE)1%ZwWL B` (>FMTZS&Ң*N!9G: ! A +c#|6>o f`JpC8]VlN±I!yKa'u8@oJƊ!7xxD.nJ姒upQ]Ih/k:4i'.m!{Am~D⾹<{1ԴrѕP L)@ýKg-s}5@#$p_Hn4|ړ$,*2)xu˜PGvф=*w_:_ή.BD{.&""ywuhee<22ߩRg"* %?V=+E12`zn#/+q Zbmix'a!4yN ,I}m̿d t`4`s0{wk&LĸWA1OA+nGd6W;I9֚Q3qtsVKJW)(<]a 7a-{nnI,@ǒ~>5.;m<[@C5c1B[nA* alt!Buc='ZQG.Tj 3t`]VvHt,?I" &Ha} &]`A( gӬB椆OP't )w<)IMT'˦РOmlhR3&M 4W^/A]Sde8h0Wcie">ny>荈9O5aLZ~piT}#m~>g{K7w4/ XԦi0@` +yM&32Ë}-p:{ \TzjU3>lelVo&\Qfzp ߐ >ޗ7;Ԏ4P'Ff>NRnvb FY#ׄ2Q^?wl,279ѧe+и/z/IwC-5 5M&-u>Kɋ`7ʻ&`Ʀ"S)`qxsOOJ9gDS1TRCuTfn u@ W]xφ֐yQdAIx`?́7,F:9i꒬6F3^O gHY* 2i&l(pJ'~=$Lu\зp бE>-y4G6V.S&)_ \ @m7 |8"a#Ӓ.i{919*wJ Jx~Uj%^[']pR.AuG_DߡM2Ɵކ Xoo?]Ey%< z\^OFB}SbR4x6 ZbV*~5NjOV%0>oaޚ)K-tHW(qȘ)-CX=` ,dP\SzNoL׽Hِ̳WT;9J|닍Mkڽ]W^&ozYvA/7)̺Ga^ALvzJ.2GUR0 SAEm'<@])snK|4w**o&vc;sCkzk+;"~Dz? `og;}NGe;Ǥ}+%D'4^ʰH#YZXAz mN*q?9,2.h3[n^]juE⼅a!5.A9Ӯ_ Ke`huqRGS< n~!F!M]f1g^UdN,DM8?<2c&(,Q7}09qx򁍬ͽ00|SXN]j_4+o4|T٥"tRA1?nfMP],kBicet S,̡2rǕ (ư-Q"t;'KLɟɵw@ b!iҡvGDb!ms&a7#|@L+$ҋf ݔgENw< 3Np1[(nB;OГPu.v,P v,<-U* >v `k-ZNgDX$4/ 2d7'川zSB."tdGKRovv<7ԭ yw2X,PlLRTTzR烫֎8ZB2`1+!Hęl+Tq6x,{޹zT@aVoYR_*76?8@=}7mVOSc>QxZ&Cۢe (}j-xEVgr9 y3׋q&b@J<[D`f[lּr'qlBGR ݽ `V`^te 3LdN2[(6&}ϵ}옥v`Q@d-39:/as=2 HIܐjhci0=#:on 5xf93iꉴ]`B+AH5:j lrSn%ız^8d)TzߡCSZI]&zmiέb"[،*/ە3J0G)m`0`!XԠ?Ԕ24DdES232]bn4WFb Щp"~ӭŌGqBE m5{ ' gկ6|YH a%2CN Z/ ݮ;Z;Q ݹ|6Ity6^ǚ*C~#:t2@u̲yw $͔WUD0g8朼VPCYGr@Crj]dE|~ Y^GqeNyn |mS?+_imEGm /5 <"& jAt_sF֪:k&. #?i޾a $dR;Zew]*^aYtFaG)y/v8c"6/V^$|"]IhjLq`t ܔ_ 5̑oKz" 8aNgZ{{q Nj=QsId0&+oKӞ4E H#{?^9?tbTJI$ {ߊqxJ NNFAC-J\ <f_)#,RCGl Ay-A6kPװO Xpu>T%"Kk%톧..M~hϣc~./:^(]k"hSFS$e+9F|xfۀnkDTkFHf NfÅITc~z,c_d2-6ޭLr2!#\?LZ嗣cj&,b=Ƌ??11ʤqĞE71XNÖRZI5 {5kRDAZd 5!7GN#B: _5ۗpt?s\&A:g~vEq&REsaD6 oWEtP֤j 8(rq|l-wٯDoSXXq"mpFKk9F֮=R(BQ@;E._O>ooaA7)uND$L/Y4`}+7[60wgzErzDkv&DC V6h7 [ <"5$yy:dv߮nI&'MQy5m!5b.Q f/ǥ=,yª|QrY+ L;j/f!җi->T'<ȥDvSA1A)v^C`Hcq8UYBà˺D:0so(rZ`y_fЊG0f"(!7#mgQ atɍKSFTrB{+ VkЫ˲FB߈{t՘k 3_xߎiQnǁh! w!oj;m*ݣ̵<.J׽7zNqSka1ćAJmfnD}o5qk}D?qw}y ``Mcǟ: B-qB_O;ϗYp9w|]<ӳ1sY\{kY@͟`ƦreUѩJ[`HiƓ³Bh7prqǍxGg84m_1yysTR؏2yYzn<2wE52I:Ϸ+-SHfBx-w7 ylasaLWlB.$ A_kc4A@ UzS˻%Nc 0)V``F 6,5q>˞(.fVFEuL>^% [320O,Q9;C E: -h]spkצ {5T@y ή.OV෴7њ$YȪaMF0A+[<Ҿ*1J=<ⶨ#θ 5CZ@E?#oZ /wK?S/1Yٖ-$PH&F"6l)aV# :<2BGz,YW`6,oĞom $JÌ:ή<ܹlj!|h*vAYD`:=fޒ06InU l* h_ "# KH5B)bNzF9$ߙ{eElo ؽ=eף sܜ-غAһI+ y4n84 ${@W ~o'5n?bd إ mdy~mg.U1x G﯊J8AEMEm4924n*{|u5ng%Djk[/rb6|i'؉V9a:2ٝ>I" '|xxeK`ܺGv4%KOBX`O<Rօ%.En< l誦h>8Ol'bRh2F!Q KF= |%8=¯OpWra<-Uh-e^4,^ OX*sO aoIpY66Jy@i!^1#Z.te x U[h۱ X;^4+:$7!-(+ez ewS<e8|3,Y*Jή pѦ otmn]W5{+>( (In6#7ap\89Hs+ߠh_B&V⹺CDzF?s& Gz(XOfߞi_ $e|)!cZ)v6 IRYK_R}/!W/RVܸ֗?'쵣@]W'f0dﰀ VӟTe@X?1Yq3ȴ%&ӠQE)@c4k y? %cz~2F@ נR_S\߄_ IL"l@҃PILnFK,ƬTtAF (M*>5Lۆk8_WdYgA r*0)b(P4SPAF5^$bpG0p&qNQD(V~ LO QCT} 0kn%AJYf~=BSmDk\Re 2^Q1ɖ\fj+Ȼ2O\_Țx# 9cmJ׏3.X%zn mK繘Fu\AE[T^𽢟|Do>ꗓSD9H֞LyCCnavN,B}-~QO ca Tzʲ'Pi{G F_`w<}-*D.%cd~+2􈿖Jr\XSs,8:+g;eﶡFe~[:CЖb(؇&"c/C?baVVU' s0Hx3 !7"Ela8l%4>ަ&vM gy<y33^rF k 0Hh֎k"uv9/+z)IV'>QYto:Ĉ>7Bdʆ243q3- "b辰KC(@m/Rofh2BYAfKٽb"H?|u7>N:Z :I'L[֧$a۰C1>%:ɭz߷ :h6K7ӫ:&AyT+1R'!!M:mg3DCw6%_2NSg S' x[oT!>%MrEDS=Id wmRGB-hif. 0,QQАE<9%?;N.XƤk; aT698*:HKܠyZHf©,w ᷳ C#@:3YWwjz+zlu%t Z X֣ 0pnn'J<"tֲ\0nE.K'ȞE_ND:<.zjd"w=<9*BT+&p!o:Wd !:X,bɘ^m?{f9>D7JՖ,p֬|qClkZ,J_svÍv7 SofR+]e{n]Z!R9E{^hFIl4x8ԵrǞ[q*[&!dgpԼyOhF<5-iXq_ĉ닸քař:R%(jl.Nj pnap\h Ố]ݤ.Q^(Fs(m :+CaZǴ g ]cڢ=/d长cHsWdϵ&3Be=v;7AxVUeHSϊ~yw|EmIrBBiV}2c rE>T90jG@!_ emPx窰P'^>da٨pyuqR ?'KxȜol}E4ڝS@"i(2)^8\ TGV@Yqhb#άtQZfWon[;A ^Dz4B_1 6 z<3[q%ji)z 2&Ϣبq+6h! Hw^(1A[SZdb8` ?^FY;D:A Z9ˁ 8wC(NcBodB~WX.oԬMkHAAr W3Q*GzϨ\j<*|p^k*W ( av↾-uDteoG,w*'kaF|yd<8c&h CzTQ>bA|85# @=b nB&gs`l9]z;yu@zR'@xYoU8H޶[ Fw!'FS7iPwޚ0g?&ǎi5*h6Ԋ e"܏3tQ- l3-^Hvܯh0n/' yRTn3d(,KSƭc#bY˞´xb `8dܾ 2āL,w68&P8p<2,c XES 0dyF|`rId5AƤx/`$S)~QքG#϶H|Fժԟ8Z =`CgƄ'\Y96򟐄:V ^P0xoK?t&^+X>쮪cXqeJ`p2/|>U )jwcyk6NΙUynݜ?nMf;XW%N@24w\mJ3W=c$bt3qO3HB= F袄B{&wWޢ@a@BnJ6VA2&!VY #0(NG[rcj<m hk67ge4x^CRB˦(G"`[ ѭ0#f}̵gR2)B ٔJ o>omel Am>b3 (,ɒ$ɬR_>Y 8RG 0+@V,'sR &Ǵa=h]_oL2- >\_]7ڴoCW8SUq@?E'9]Jh'<05Rͣ # eg,TG#y@-i,rdIUތYSY_'P1!Sn|PT.y7%>9S» w :Yar؛ IʶsjeDTsjaLU] 1"@ 2ܵ$sf|a?d*g]c(1b" $|e ou aԽ ;$f;n-X>s C `z͛8I/yHW֣%!g~6쟥Oߵ,[hu<&pq\lڝBLu;=딽o"c V y(u ^0M^Xm?*3"׻\˿EtltO|8Q_MC(]U wCA?dGteE.ACN-GBʾOמ7r״y}`Z(]&9rv-63d#a6L׻Ŷ;I^KӪ'̵o#.6U:sAM|9hT`o𹪺jw \uiPweZG[WCN@V#LfЫ/%ıW$Xe*6T^'Xx<}%h"z5^ jӖr:ː rʯJ{2~"<:t8 GP opǂ+V@+.K#=bvf<~IdD<4Q*9`烲 @g-E:-E<ݘc'"vT¦((K,3QeF$l4b~T B ώY&[ =`O31Y 8ߡ hCuy&xP|sd Z"8axE=!M@c|02\ ^nPI,ztg;N jstn9 aGݼhնHw֙hGeǔmukzH8 ͮIҾN:l l$RE>ݶ$J 4KNn^Wϒ6t=^$UV]mtrZp8 @HfkpFmmya?$SfxڔYv_bXfQ"ܿnxK*i1Jc:&֛vЫV+DܘM3 XX:\=YuM ]A*2S[D{)v.8_,9L:%*ay#]Plmzj]Gp댮EUIuu+/ W͉FikľE?{e5™n\w-ଊcLpUA sL jr*1&-Tӡ./%>=MYf5 ˬ(p3$}emt`ljI\mbzB8(F>We @}Ihgsu&a75>te6;?j֪|f(dqيTYʓw9HrHWq_7-[˫K/1tBm5yNS\ho+y*B!DKAtny~cA$DZi#łFRD[AIU+6R0Ft? ~U:sK]}03Tt( \4d)<>K-%/ixea9ؽԦ[]wDMm1m;Ԝ/ÝVhhZʬ\ٷke _YLʷYǻGi@З>+_[(xC4Tʟg'/WϳUD69)קy5B]39E ^F@żAK?nۤR'@Q њ*m =.ZdMHSJL 5:{i^'mV@R>#!D`ZMJ p ߱}f8aj8E8x% 㤸8F߲hl$EF#88@4Z X-!Z*@&2} qWRrZM yy1_#8 \ \d"'aH+M$ԅTTAPm'ݠ,E[,0wt7a! [KL kD?uz8I!TN`?dLJ!=_u@tL_܋ _ ː7SkVt:BZbLr1oQCX)ZhsB8rFK?/Y쇡@Ei"G 6`KMsϥR:RSy?2 4,ST lS[]+2*DbZǭl%IA&߬0Rm(~1PR\2=_l`W{F3xTg93THJ)u-< Z2MeŅK[ZCou (5M_+ :^%[Ѽ`kK D+97+%J ~}߲~&ZO% ΖܶCܬT#t,B1͜&1CH*JO^G &fo<2ը#[_٣!/_ jmpcp]bMWi~n;F?&ux!lѸe{}MfI,!@*{Y_>qZ0 SDZ$+sߨK"0u0Fcv&_wiFJvà F2f? ,-X* oZZO0[ Y#i5ZN ҊgV`V%HӳpL]k/G3XkEj 9WKZ"= 4kEݦhp$6! bHN#d#Ķp=Q oS{n ɏi[0՚jv3hИ4%>{R&KTՈs:C(%`4O,4A-ayɮ9Iu+"\`.qeZ-(iX7*7ݦF}&'/k uvhZb\8[.)x#1fSaZ'"}jl{1Lj7As49{OKk)SHuF<4V>=Gqbky#^ŗDaEg-v1nB>aǿ&{jBjQt=?HxNT ]GQKK(w ZvNN*w(B`^{S/cɩB]#zn33+{Si ?eۇ0JbD3Eg1&TXhS>ȽI08BuJdS=[h钟2\x7N 70r8qW@zm1a &8t.xS]9Wu;~*TөQR] NםE_GmcSܔS^ (4Љ}Emߖue+*CSٶu0ahzQ0b)b<˚ k^Į[v+#.v m=KG5G ϛˉV=:{P^+<%}P߮Nܮn :ށ'^E/YFg@~؎]D[ V#)2y{C 29#{4UJj+lэ|-L@CʌM]t; Z&%Qj8I9 6:YɛBt܇IBզCмxH{02ͦg?kA->Ay]wQl'r?>1p7G.!ϧh2@?$+SVz|9!vm*}#rVe%*SI8/(•+S(J'Dži6+N{aYtqkVhBT|V$:j-+ZbjN1Y H5nҮ߄"IOk[ދqZ^`7<)S>;y}7?]4^ Xs=W2GV8v@;iZM,~P|mL/* <ݧUvߒ70ue(5c˖;$Ϡ)l}8&FBxP*7IJԸ! 6;iZ}N&0gȻ ds\*hle-byAUzTcJl5 ^t)xT[U"J.!fpSo]_;ACg2MUo~i"_wr-ORr `$a!̨~큛kcYvaxzQvO}x$c6*NnjDgP%Pɾ՜G:?YLY nT24`:b?w&,-Mg.i=kBn -k 1+/ ֑o0V)!7Ȍ5 ?鑇n۪hT2lն~S}G);cҫPU3te됇RP/) %wiZEZCzJW4b2AtӸ`7Wdl8zӀQ:^.lp1 #]ƙfVJl&پ-mJZnB_Yu_9w7U!29u߳[ΓqT8̉ LfqVsa :Vj6(y}\Ppc&`L6.HGA7Z A[_r=1RLW0^LI$ḯ^}sJ]Zv8,cҜ~펛~ZvW[Hz2#r[HllLE)$ 7>Nr*ElFMI - jв[}>Em[vc>,|KXKHm\fh* {NNq';?|0D S~sIP8ClwWu}*LWqj3cM. ̴^ØtПoE_Vڀ~.\;ޡ?Qv&HNjM`_ܑ'XpK 9f' ?!nNOpz< Ed';ܑX:d]P pWX:׫_E?nC\5g2)ڳ791뼍Hc6C&5ʹU'Bncjr2V|K/Dcf$tK!x;"?#Yx?r$ - #ѿ⡭ $3E+X=A6WB QZ>yU|a}q{P߮*8l۸_~l5X_:VXď4~5T [#/zEO# 6Hsƅ0iJ'stbuvlڎ4.ӨKLH+`4:r)VT?KW(r7~޶9XκDx6H% !,B-p~ v.#_6.UOwUqĊ5"i3YʬI~sAP }peE7?Fk_,,% xcxm0ۃ*9"8;>Y 6)>l=-yUijf0AU?Ôꆚ9`tz HX(삇S$@Uԅ𸮦9uGH= Nc(-<^JBH w(Gg`A?S- 1#"߶/ND, Rhh[t[5.]=Ũ88𴇙MBt\Hi> vWm7tO\ƀ!)Q< dWV }2"n%;69ͤv6'Lpm}'=x*` b~YĄƲi2w 7 [I7j^Y*DHoa(2F@7V޸۷*>r^q KZpt!In޵L7yٰ 7GcY@s[X m#p?i2.CĆ|v7L0;!F$-)}?K٦MfI MईpYf3o< i&v98xd0LA z jn%]aR8]Hq%ޡ,gz{ёapZFJfPjw^KHN"T̄*%tnCy1 ѯNiD1*҈ N@s+{CHN9{unT :-8`[)"yNHz)ۡ/QG pJoBwp;% nƧ^_陪jm;Z c'Țiy(e9T~սRl C ^3eO)/6iϕq$.T7bg'ˮ*5/`;IR_x [O?']~CYIru a ē7d=c${mllRTcZui4ՅJ C@:c  B~v:{^9 hy2U9{dA?fI/G{Uhn휝*`7M|VBz>W <}fA`7svtM!X *r ,JBggDg̫zk"5lQTw`Tjqp.x|;Km{͖%$XdFGjj7 6ɕ,ܵ4=+t ĘP t.ǰ(,UOevwm~d d]RU8๹2B:6Vjs?6 l DlPrQ#uKiH<үLaӭxz_DuY`ZCh2>}{mjhAOc0=Yu/_ѽd*=߬{mdFk_1e +d5)3$>;7;.'#+'k?ԗ?Jz`CZBe{c0P,W<}\_x;8 fPex1eB /KXX2g q}ps[ Axa3O^dl3g*]`:zK"4 `ԴPʟAC.m|H8}tW$rwW.ƣIpp[؛Ti*$}?4pY85z?]AvSIySܪMaCG #c;}QslF9:[axY|yӘQ|EsN1c\h%gcۑ yC3C')R~ܿk%SIraj0@WQ=0xeHr걀62" 6`؁m7=dϼ7vT#>`7?[k42\{hŊBbaWɬů<jf!҄ún}џnEg}#r.'#5%ݡgy:9F|դ|] Ѝ{Ƭĸu};cҀy {.**dTG'Khl >Nġ䭻e'c-]}&9s gȪX|;|f\+.iJ^An3ʨQY^+WFF|M֎Kza#mGJ%6 R s; 4_2Mr> o*"Ǯ1^+yt|$̏.ڦb˰QOga2|5Y~;K𫙁lAvN wV|y\'d^7R,xg\HƼĴyvhc ܟW^P.x+YQ08L@"~ )wZ!C$317>ZBiY8B+DIȼEMBp3mpo/,U4pߩyҷ;Ɋʋ?k..r dH*M~ Yuyb6u 5/Etg Ra_²vApO8 e*{\!*ka LPAPܮ Rmw*IxMUMJgT)9T bHQ:RV;R9c?8CS&E|@G0Z:z3VYC UBw b>)rLdUܥ?ҙG& C,cJzj1?Gj~"eE?WˉķB\Μrטpa[Fڋ M}+Ht\~!pW>15Ro+TF$d*^0Xİm_YFicN|虻@WM$B.aι+A^f><+P.^`e=yyq󠞶L\*&:yźmLЛzN7#x>aQʚyiLl$3<( K!(A.cÐ:֣MyVNt]P7mza?ӗ,^FS N z11Tq(Sr`?ӱסW\n5.}x}cm@6N Hݐ0$*?TT[60G-$xÓ}ؘ͌'Ĕ xC⃄ǔ|Kl\yp)RR|{ 0g|ꎚkṑH5g6wPUp=~9v?C ˦{v;ct 78[odH7ZtM:|mYJIFz Tq<&*qSyæ y0d&7|CVMG;bo J[H vL6/PpuO&4|rI)s nAN HJoE,[ *M},( о \C\ [+[qФ|չ"B}#j&qs(〝Ur/F^(d, -ɼLL# k%&$F5\8%1 E<ɶo0ϵ=%+OY-H SS)΋a񺞅,ìqG;|JP[[X͝)|k )Cr :*_lR-sm`@0FK{~:4.9.9!.jxO w(ɢ.t, E3 $OX(uŭ{lὪ=J\?3ww,Hu}[}#WnJ-zg4h^\j=g/ܠp5R+$$a>k [HSgۿax-8 6 f X;ӕ..^n(w|böIԈ$K$Vt0+H#R؂#NغcTJ{/]&ł[vfk9q.GluSS6\L@;s`ɿnI'UΓi8>LZI!@瑼-29|LlLbP/%@WJW4Hwʗ·cWĥ(%>z%wut>k/$66z)[hW00QdkQo^p0AGKo̞Z%6A/$04LwW H[=>}h@dR5WGVu$O&0!ʀPԹ;W32q/Wn!Bs(6<3 tE-E@,'jʀIWV"m{>.F+,(0&@zVUM6 ;-.䍭gkmq; 6}z!sNj{,g)~2)XZom?BrIcBE-,T=˙j1M3=AfCΏepZJD۽zvkHaӂDZUKG~ y EU)dF8'EޟZ%w)mi<騝֓x"L*}oBZحdkRDjk hl|$T-,Xq'ᛑC#&m%@_M9InVZxe rS㓻=6^9RW$XWf`3&>L6UzZqazYPv/{po,>79SWty?̎E2IV3y̷{zԼ&N<VEu=EXꅶ2hz{r[NUWb=M봆a SV z4KPĜp$BQOdY j{@ۀDڡEMOG(P@8eh86^ U8O X= W# vm1v|DžNI-%7Ka8tCW*HI( 4%@\[ YVlj3H.)8BO;M4Ug4ZS ϫٽY]| 8As e^gʶ,, 53#ۧ1lJn!׎GgRM,"#d?YzA4v,޾ZYrf)7 ՚y}/P49rSj*`ji^=H(k{EjaX2Fէe>,vF>tEE>K ܷHdȬ|"HGʟР f4KFiݑ,*;#pMwQj"Q@{DO5 $̦Eq=ǁ28@Z{PyRses EKն  XTqԏ5)O1f)$,?Q*ltOb<*-o#Zq#!2fP&w JYj "pg4..am-4k(r`d G778[mZ,kX1/[L 8KaCTpLdV ' *EJ5 OwҽM!Re}ߴHՖG9#NFx#:tuOIte !t$ s3NKrvlICvlJ2u.c {tK(^];ݠ' OwI} 8`aC@eJF}2-ERMOWűl ]{tAs *]1,Z5v GS^}8,ah7o}uTbP|I:'v/^CnzNZrHh\#uY% U\㋷fy3+BDIM tm\uFRrm?…y `~ W[ۛ{91Xq=B]H n6^3C?[{ } Ssnjlc5+PąV`%WCGrY%huiWD9p{2;Bi1w2b>o YҚ=+e&*+\z*i#{t@q}k==D [RMZ8 r4]4G(ؠ0}Q!;.NI 9A_Դ0Bo,cL=n 2j ͖rj:$`ggw}K~dKsns]Q ɗ%d [ɖ+7:SF;1AU1 G^bv*F^:Z?Bk ?-V ;לD5*]zMZp. :;c'ࡗ '/TDE7,]Э/d0WS/V|yH")a]jt>{fM.ƭ&qhAD,?Ccx4z*/j2`&NqHǸV^^`kl VWiZ5{@&P =r % mlWK hKp_z+tFR˭T G)\\~yttuc3[sݖ3?*Ȱy+HDbHW諡7rY>az4U@zjGc k k^\{M /UR%z"/SWF/0:zoٍb8! `%t8VS%i~"%>D+E dkE2iu@T/:"k3 y796[NTI5D<GPy1w*ܷ^""8ŅKC1kÀ-1WD=Q^Nt=LA"j0 'QҘnDL->/RO i1T-Um[|3j Tʤ`4VwD,ΏA6'ԘȸlGH_DCHI'm?{ZOdʤspfqaB;z1dk'_[ɅG~st!(,j򆺾Um%"'(\}K1"B?t̎"iWD$ D><2t7T;H%ѩPGe4/=ۤy'2(I Wbs0&8Ѐ.2eoauVOšG }h_wky;΀Q΂N qp'-Y@Q1|+ G_Bo]z0ҹV^hP.6@+QZbF'!$4<{lx.g;a~V,nJrcťS&mOiJ>а2ꔆ+Ko6L!TsH@0ՃH|(H977AGA]OkDN)#02NJN1uo'f wǴ#LUr78/c!ԗ;֬Hu=^ z{># ļP4 D)1CƋABEpv݈?VǕX[ fȤJz$h W%ċf/ 9˩[!g T,po4L*N}+z3#@H!&09m8 ʘ%6O]ky*}c H:KK$%(w,ASoz4P94bA_F櫓"쨥 J#\u#(_`3 06s~" =c~, +XO(Z%bdU!ۊdae%"o{=;F1bj=$tER)A=IPĴcX/v|OGx'x|xWg^5LJuX'EG}HD?TĬr Wz ,T6paـk͐U !O.LМ ele ]mDO(X0hhIiʭH_Gind}NKN9ioAc;01ں\񘿼& B&,4j !UЯTN#vLJ'?d-N n!Ǩ *KAk(8.Dkd+/ƬBˉHB-SnaA>>PaKBC>,EUҖKT 7=9Խ 1W.WY}]CPtp |LMYw{ !YcFITKg|1KUw>{S߆дhF8 ';'boVW3nX 2]xSƹ/NV q.~@W KZ0 sYk,e31.ёL-A;̣ZQ.y6.%lHYWV,+%J.FKà vdrg ֐7'yt5ĺmFc;+Y@-?P0@=ѕȁ17F˦8g.Oy:k@j8@->e`Mdp} -nfJ94YCDiF„* T0-xg'7V$asO58?Eqs$)%GIfl-  K使vMs 犰qZnqbNiߙx%lrPߦEpaTTm/Q `"~<@yٶD# #U MO .vS-ct1?E!(Bsrot؇zKF͒_PL1:9ئ@) $ aMyT|µ5tcñ,VG@P !s5dwIjW1Ԡǐl^hb`80g&&ԓNw5EƜN)SVEGNOiऺi{,(r$_eƪ]i[1 QzŔMcuwI؝rm۪3,OP'ցT9 ;2|ハ'CF}<1"ߪ xLbQ|,`|N!鞕V_tByaSG إ wt|8OELn; -L(㥚v߸#(N n,#σݴ="ȤܞJ y005hCzb̟0h/)v8f\*8=13Se?qey*ҽw 54ylHn,#p/U`X4x ;ݠ&H&8χC^I`.jD*A{Z@dfUPuˎ2Ve+Vrgtvy .w #3r(d>6r9Zo j.7/3ܳ,H՜Bv~ha{+)Hey_nܺ2z_6|}#5/"Xz1O叴q'n1alcDĩԫBGW$W(<6-IqZYF\a-ŹgM&)BIT^*A*7;ȳ]۝YefX DUQ q3㇑K,\Mˑ"BS`3ܬKo^9*١m& ˖n910c.!}ow@Дu\C(gJ;~rq`Sdzo{3 7A٩%1qJ̶ +daj,nLc'pxeG?|gjg5%v 'ݦ쏖;'D(-5$k=/+ r \9͒ӳvX_Hqᆲvso7.Ϩ} qL;Ǒ&(TԬnm|]E ٳ F͛ BD!sn=Idi=;7U>_sBU2Y9`l4Xid8;fV֧Wi/F}9xQ Og{`):ބ4p=z7N V܈0<ΕTHu/&j'7흷2xJSyimOhQQtxsv?}:DlQ9-8 M"d<7`o@2/u<E?~ }+^)Wi@ц̣64Ag5N⧔ O\]9%&`{*kw߯~+Ĭ{æq8 Yd8ZRx~#+qcY\O+~TF^y BkүH0Ul4L|NǛ&l_TfUaÂbGm1Do&Fa(Iq]ĸ,53HլPa.i4NgpYS'"Un *zHVp^AQ7."4xbq 5X|U7Q\6 !2 h6b"ak3eyc/+L+qn3,F>X,&),rr+90Wt w hzE .G"< GfSjw6/gD>Cjp cv§fEDq7B)m[DZ47`'zp7 niڌX&E >IWp۬:&2Qb,S͠pD6Jܺ{-@@MͽB#LLJ0+5V"tBV16B,,@,RoBz`M2MfPQ+%!y%;WWuͯ0 5Z]G;  -`)_p 0R؈=aE']7{#3]?20@bY!vh͉JOIf۞$ Addɛv 2_abg'6p=[51 ͌Xٰ kuxEjlx(a2i:[V!gZ)uZ :2!/&#g؂O;Ilê\@ubYNm U~PjOP١.b' X{nr*CzSm`7#uTUTAds"GξT2 J-jfߎ`Bl75P xn nWM<%WYۿn8/%S8:*^ɄJǴ .bZjH<L S5蠤8jAJ ڌӯ+_ڙA!@X|,ƔTh(l6O;H i< }۷Q̝1?I]B :W% uRDf~4ӾD>_W;9m` V*Jj}{p'&0MLcj(->t U˵\R*txQ!JOHnz&k?0Nv'rDJAgH8. Ǜ`-X4D[s2Դ*"}xFtjq2W,ۨ::`i5Op% VSj |$!ڮp@96D4O)DǮ!G}YJJDG Ĉhª4* |An( [4ڢW&wJWBWYaD?TCYx=1B^u=./jA)6)s=KUw[9ݣ̑NV_y&ԥ K6)EV̺\JfhVdx`?տ%o0?^xɆB.Q9'3UBYND :lHm?||4zF4SnOnMIC"\1G;TvUP:q崙Jxs#I9zERlXdT-:d`ϖ{C..B0U2eQϽ S qZ54eSo>#IX^H(Su ;Zul,dܴ 55l=떎g?,Lmq?r6N0p72+фӯZLB\愶v&ۢ)NF!B USs+XTHlZ{{D|z$)r( sR}5>TtNG9(\S謆JQ/flRTIP2ӽA)-ٲ:9ʤ!\M|NUjl`<:xATazrUN[$2 ^sr)a'(_ lm N)>-#bx*Y5YؼW-cNjN"|ϓ6Xh_a*ECW%+ W  HlWM5> $j^ FY*r 1 ?}Lf1CpJ?QDE; i:QJ:WQb8hpihry4+Tw1: |EA`60<#.FWRx{꿩d][)KF ,!RpJߵC?E두R2j;hYxϔ@u [`~e9Xܹ6gTz]*t|ϭ^(/d\ iGs'"Y~)Yy%@}cfh KoN$ h8./VT +oE/Q;~v!}Fv#~l]=},",z F٢nI7su$ę# }>xtW~Diu~@5m".WWnRX L mkrKj)aDpiq> RiʰT&C~LxRȈ Z4+?E1[W2%:36qYm+SjRdV=}x\[ 2'UmW0FpPz{'Qwb{FjlP~ptnmbޠ~g`b7vP䎥!n)D QNU P EG<2!4.5Lu$ Ҵ.#F,rbw2%FCkު+̟Q;5.BvM瓍Wk76`}y_+hLb͢B]KCImgh*ðƽ8© /G=k Bu ͆My>ƠPkRn&l }9|pW ZX@CX΋ƻC6P>1ԉy.' |]1^ a<T\^a)_b6lt47Mna;-[>}%, cT &pJ&wbqc<JGi]b)G8#BT{al8T-  BDInc4cBqxj?YVԙܑyiWGVR%Qkn9 Pҋs<)=7AjtEW}zv|f|@{'tT&.Oؽ-aR$1DR1c/ :lH~}=$Z̛J abU"$mS-T[8Ct,G;"XGjzxe% ".EN<{#hu߻r_*EȮ;R,ĉ|r8`%! M,fG8/jf i]9eIMVTQ1EԸؼ o~S?b,N!ŗGdudfp Nnd}/MAd*ʱu$3Y͈İa ,DOirJ簚O5)692>-]. XO*o/F77 A,mgHPh3Vq%'ƧZA{5Na MΖr'626$Քݶȁgnr{0\ax^L$UUR7[nsJf Cݒt+cZC-p-ҺɎX#79ks(0!u0S Ns2]kM "2o'q811{zB??qbBW}i#]%nO-8~]4f J#&^pSWl?4OkFod6]Kx]>dYA.b+*mas5 [#}F@ʾ=Pu@s n@iZƁAڮA&m@xX]d)rUGzf@FێzrQN1T"B:Tk(k2*IeF帤?L~㫫=HkucIOg>2 7EAk)USY)N=M`|ѦmY b1NnEIV~z8;d%8@̩O4ɺN-envJO()#PBDM%ks'5mi[)Sj$?ngAw2Q1dƋGb)p :Iy3fDLsɅl?es4,}1k6Q<ߧ._&ޛcԯEo͢Kn}p,ɭJiEeܸM1dX{EYUap <{m\LbtsLIQ2S,fةxPu,9nϧ(+ȇ4ξ,x2L̓8 AbŇUcW{~u{Gaj>5vs[cZ{pyecaƲ*w TĐؒaI%M}fCWJ祜i@̔[R sC+YuHN[bW u1Pt3e"N\}W4`PwL c*w5#Ln9]&wM8A`Z1oʳ1:duSl1BS9GD/9[ZDzQK).T%DH %f~bzI~TASn7 Ã?1x"GP K1gM;,ay Ɨ+`;93)qp<7= <5pWs|jAaʤ {D'3\0˃8R!:rG۴ )~+*>dCO@FҞRoYq*8oa"ނ}bu ?ʝ{ŒLµk{l%khPBLALK2Z $Zr8,H\f(0ndBhq҅"㚃<9gŠ7wL=]?p"KU|ިSV-B69e}{!$0?X.@ \a f3{6*R_]K= ]eUO}bAgnLe?%!J1.! )< ,n46 Ay'S!jb!nnBw[.2|*,tjN q.y_3+2 8QwFB_gPf%Cnj!K-Fn|"p>[ CWMz}]#nU@`0Â,@Yoc/!yTY8!wT'v)u5+t:d4]ifv'?b_TjcJt{cKji#jۿ=~b)# (%GѨF HZ)}m@G:-!<ɴ#A&3NG[R=eLtkބO1<FlBK5bG"K6- bI wHx,<(h vDb3Kf{?ku;g YX.:`,Gk=x325,d2$br9<}g`cӃ&[7邨eH*/4RFdiX)֙X G@cث 8d׮Vh~y{&f x.dfPJr!ul* al'Km߮סG(SLfIM QzC,}UGsR`[G]k_B4c;%d Un&nS\ńBgB24_}_?h[ ^凖y o9j{(:3F 3ݏ^Vc!Sr1AE *9Y 03BsU.]7rR&r8T:xыi`yh@PE_/_o$3t*bKGlGʺw8m=u?Dje\$oѸgp $iC2RgD"i:XgA)E,3Bu-8(-uM5Vɗ|ʍ7ކk&૕܉'ԒuɃd5LBו\1#j[<?%M}x"7zfDk~8G؜S mR9;Yݐd4]+H8+`6@m{8QS{vtD'dηn`R5⤄${ Tved%!MYgvC-΢q夸|!̚Do!YcH.8^&#:ZrRf/>YMN\7X\s#ipqaw4 '_S ZCׄ WflKY+„X-_71vlG9aeK X V HdЛ@r5 4ǩFe\>E]HxLy5nJ5ïhe"DZQ9~^&̈u'KQ]&KǏ l8h!ڟ3*]XxjS#.jAz;eV{ 3&Xk`|މ*k&>F>N&>YnmVE9E$pI \pZ-˓:*\P2"z;Q{[m}}mg&VdLiʻDε#&=剷8ʢ:;j%lF[IHjB--?nP݁bqljZі`(C9@]/m(7HI4A@>zIr"ճjVs`k2XBZ;&ыDꦆ y% thԨON&shK8Wmf֞!˙S@m 30<@~Utm;ʤ22whrc?ħٹo_k#UjJ|3RO PKzt+-c~'qٵD][ Mͳ7OXWTK|AحZKMqCH/W8?'4 CPchydNQ)!EVL$Q P`l)ab~%xr_'M}.m}[d\R4Qnz솸<xFQMpѸs Edx`(6ӐQϼť"kt28ҡV\SHK8s5ṪYvC[o ʋ']U=RMbCƫa6%K ?atTwcx-5~2 BqgF$(>4e" =gVau"%ab"0ށy'I+p"7# ؝]=h /+4syދ>/|jw虣bNA_1riܨk\L礐}=M*^{Rh&$}d=]`'kݟ6 @ \ p6jt>r_N`v&`eucpcM{쬀}˥ C+-:J;lRpYRbXS1WY+zIy-Bc X6hl܆ѿ h" zIĔu^lygV92B.P58.2{5+ LJ4qX(Hυioun O?6VBjgw(%Xiߓ.yr,Ry!>mAۢ8Gw(E f>:JvB;RS>A)s %^%PelIx LA-9yq)Q)!S*6K="6PFk_MK aOق(`Pɨeɘ  mE"e(""maXL"ɦ٩Wp»aU3thLo\RYQRVe~3×@+9Wa9d<:M{>J*uE; msM|PrŎV4+y9)H_ܟ,WBVdMEaC*mNGߞ1_pe9p㓀ϵ<=+?gjXИhGtt{Hl(DL3 Ni`BK+eNgff^M( bNn? ^cG[(ϼ뱎_ޞfƲTYAlj! {&` Da$s)ڳ?9g%׽k/lHR'аp)Bc{ztlr&QH1%Ӓ%Qf>-S6X \Hd֭@^v?/7ܹ>Dj+uCƎI?q*|cܙ{ҁ%TueEG:ݽ1jNGJxH}g9-j 3^H8|1l.$_E6La!aD q9J< %kF}5UesI&uQR{`,f8Bhn4u7ɲa~VFFd(!AxP&W"VNXԅT XTЗ%Qj`. cKM7y73lqwY @aK O]% YdL$Z+E FU}bƘ)DY~wxS7*)_2wa64#OI7t_䢏8R'#6Vn8ۆ^b.N b`h^J%2i98?RwpCp2C5 旞}Q'7_Vz>v>ns=5#J<\z 1.{g|]jїiuiȼjxo=9J[g8ܬ> LiON\?9O*4 x ˗fwҀ=k4o;77]-;/ЕBG7& )3:%̦&#`T@['r'}9䖐<_fB'Z~A>&\gl/.:ze䍢/!~q:_4Ty s_XD؋0aٖ0zL4m &fOKygqI5DV-hϛ&[U783(vB?9lҰְI2T ao]+Ϻt WsCS%_,V1۵BћK$ 1 {]X:^0Y,B@ywGmp|%Q$7J <ē7X8W ZWYu24 *)W6ŢK1?gi>iM~sTzM(c"N̫.zVq>5") ۱195V̔o. ?Gв 6I ^ |&P04.kn[__jb2V)Wkl Z/ҎٰјMܔ*ff/G=aID rH7[=> 6݊죰Pًs*p(WRa#gLF6HŃܬ:`|)psfK U s, %l q밁 4d HN3 M{$0U΀Uݱ[*Z @AC'#0!e$6[2"÷:9#T۾ R:wv$f:[q]I(qI}1fo\}_9aDuHh <c:wZ[}5C[R!6-ϷDۇI`}Cz$ꔩ;Y S{ܱiYi3b>//::fgYuAžgږ?O-Quc)ْ̙6N(]e+7 <c:U99?:%9׽.bō~%4!uYBz[$//ԥ']܃or2s~q.5O)<Ϯ骨aCʃ V;.ɖ'GgG =ce9fx+'-E4: 0Gi4ThI˜4E{P5N8$Mn'c Nm-_*@D+m _㎸¶lPD7&[5gcК\.*=~ 2N#L0([ *iehe6dJbe ;%OMW&nyX#HU[iLŘz(J;_Yʢx*+ 23x?uL#ݧF]ˬ'KAAH!<8 I#̒"cN!R,u0aa7Hd no(z0Hy@Mz|ҭ@̾,8!Ig뭚Ɩ/i_~l_Z>*14S Ujg Pc-c^Ɲ!x_f@>zͫE[S]:1{e,AugƖϞMPpT_⧊ d2*'Rq:SGoM0`IRj%Tja.4 HCS>e ӟٟBh9,)7@m2:'ZJЩ3[0/>/ERK>P[ <'>dCnނ=%jb$Бl9MD OɸƇyKL%lX6ITiD. u?ĉ sxf6/hwxKwl?H}s1NE/@O(a5^P6w[D),ΛYI'Ae\6 ϿV{B;O>@b#.%tZư1 Sq~49=R%9/g1_5)$jGgqn:JR9F+RJ#SMYt@ڤ>~ɠ8H_l|1[BEv/q}CjFfP-+wxEYͷaE&WO#<߫vRIЂ?*'D DH fXaԸ# t q4y{!Ż}F5ЀPY}5'6,2>idzn x]ivv5уD(Л9šdɒ@$J`%`GtnFq #wh Pigm*+ ĒS@FKrHVJƭe=0?#H&* f̾HC%m3dIfx![D8騭4kD\'Sh{g-zvE4.· IHw&L]yܲ65 Xy'C\St=jZLHz|0]WS> GXC91F^m$ՌV~ݓa7q3@x&"miʕ=&IoJBH̕MS;h?,i)܈$1?MUR7O^/|f:yYUm#0n'}))':y_BAeZ2bBZiFޜ%S-%ҹqg1_5mOc7sV \0 fN[K\_7{k1z ;-]+/Iit3 rcOC^m}M萻|:}Zz:V/ O,;s:ݾqFH]يm 9 Tڌ +S=T ƝvimQYwYLW $߈'am_:MHT)y ݁<5LNi.=(AkG\~%F`ȏe73GȆɈ%|IL]r1".8'j FA z³uPq Z@CY)):\HHfxZ_[0 V#=g)kDpG_A)~0D"^zUO2UQ DN,RѥJattDiU2-Qo&}Ku Mm]9n]G!}y]paP2V.Aϩ$4- rZ%e^+KP@FgNYh>)ycD-_L{&6c.TmFiO*? C!GWY/`uu߷30Weû pH.Ze.!-t;9լoGmJ&~>c[3C`XL\>`lK]qպv9X~fܘɣ j~hGN -AEw.1!vFovfV (bK$1 qňe{Nb. Ω7jPU ;t=֤z7A^M\>ʦ #9Q*õ`rA,Ph_cܱ_{@E}#fK J{RB,=@S)vIZ85Es@9`=j{\q= p{/@kFC"KE˷ZQ 06\Twٷ@ήYJ]0AIIRMNb7bZ P1eM[/o8_MA:'By*pѴc+v#y>8kXǒ|>VyN)ͯ0sH×5.%b1@4SLVE\ɤquW 63{?6(.|g]JcK hUAHgv5F,&W1}ݻvLw" cS:JK[ 碏4 ~%LUS"2Z&ɘ&DsbBpq{ '_"G}:q픒)jdJJ:a@-sgEERdx\XX(!͡&}A)e>W,+b-KWfx 1 ^2{Gjm`31vt@tEG4nCvpu?S1& ?.ko)JpJF$ѓz / |[9l/pgծ9qS l/T?`LD1=W>BOCg wyZ6v 7v ,aў"Preb? b?9^jI}TxޑmxәEJk:䨑hppVƅspnT H׊|EHpYt؛x`mM ּo x ^S5R۹$P˳ϭ?7F??.k2B^^OG1*XO#¡^ X(D 62^Ys EZޞ*4QwJpiEy1UF*?|%4V0p9UZŬ[.oh}i顷\2Ď^ vv` Y?;Ƽ%-[7Sn%%{+ dB9dfdGnWxur[f685 bU@T8}uPeބTi<Fҋ s`}eՊMw˸,eu>pȉ=Cb"ur:mGB}0 yhO ƒ[NǺ5aۛ^9Ѿ-Q{f<{rzم*M_0ڦ<YqڎZ%/BRZELY:KAU|{*r0 f,f1ڀ:/_L nJNs(O7bx|FAe, {h'[؁*W&oн$Ҫfh&59}} \%JY.C0RXVTDn917X!oŖ@tcGK=t~54WqȘQ(k*ܚJS50/.pŸd݁\+F]R Y '[,XyHkIBn mp1('XY# iпiQC>w;7\F;Ϛƙ1tGb3KbT [NQaHL˲!I&.g2-2{qLf..BV{!W@wˁALF}h1 tMg=o…QK٥Q@ZEuHV-=x.d4aaOS.Zz&M-i[y}|u7ֱ )\`K̒~:䁏QU4i.g"ΜF_;!p׮]=ܝB⎪9V9S*݂OXw-E?sq!fdOgnyEW^ _)(6 #0k^X޼j@]dC: (cHP]"CkhR.2.\,o _jۺ*_e5VCgȔK,v8Ifg;g)I{N bb.'wj\AcP/tձg/]< Q&H)e\.Xnz㮶EzP!jeWHQX֣[4[~ DŽ4DePhyM&0m<91;Xz4mZ# U \?_!qnFp7T`NvKRG N}iy`0%_ {5WVsZ` pbqZh!w!3QEO95-G$<3'vvG- bCi!ny"wB(t5ڴjvBL$h]`V=<S67?sYObb\(+#2) FpxKUQ,i+rkYzv _T0U;꥕{&ae- !-QِWHͧ.,#+WG"/2gKv I$ػ%{^r|K~5lePE5{<}lU-,-|VNߴiO+OӴ$L%u= aO3pAqdV}4HlLW_HF ]^%3~ތeƓg1RG뷐R3^Sa&Yk-EnzZI ͲB n%b0[Q19 )Ɩ#KYB?lB}]EmGT4ܤK ^tvdt7|FlgLDlSƥ.t9r}]uq4t+4rѣ0)#,';K`|*)2ǣwY;%9xOxF)N6?_`9vE7%&*;z^(S؀DdЧ@ta+$Pa )d/"5oǩ{'ա{GuD,/鑆*ľl$ pX v"7Cz2|WѨ=#a.Ii@JO*m] xCS4HC1A{\gNG$eaPAF{?š/m님FONyܒCǜw9S]+%B@͸8hc̗~偉lK@wmIkE]Hʺ5. 7?:N>.6yCp8,O(O'#(\Dr A+m({P/2Z@"s͉hYM1&6A:/RJ#jn29-`@.Q N t MX`L `%($;Ԏ}`| XEYѓ;|"XZy[W!by3ca}*E(R5X-.`!|n%v]|hm;f(E\8:)7 n3P."CuOH=,ح&PKxNI-y+ S2vuߕ)6V[96p{#rqFjd! E= E# @>&  -δHҡ^8PӴ?9,F0>jk&?#܉h-Zфri$U pϢGq.$z>O}GwdGC~ׯXIvW%  t ƚm`p}uNH2lm ȨN|v÷ĺ{ 9[ؾoH00LӢ~W==Ј`ن0QtUک+v́*SD(1ӺLwh3 c/AR=G(U?5ei9Oa Rt]Z`o}/y Wxm)[nkl815YϭxV ׾2|9IGoq黽sg;e+BB}6K~۰]SnYоCyp ЎnoxD >:xx&$p0-i?ڀn $pW50a)* ^u(&`d% BgKk2Oa8fEٕ5R(Yigݼ%@ 5j! ;]eU.΀"W[ ExQėn5?Q[rG 8#'Ε)2|OvN7i\۱>1%3/吇B}nfTg=!qJO10 Ze7}k]XHn'W;#`mM)_zX:Cpepr U_'_Cmx]stĂ59[#?P4^4^lߢhVN(pCS F [Ohm5ćF>ug`#*~-^e̍ͩwSҮTlpr}-@9@EdXLό.m[UCY$nQ;bE*snS0` Njpg4`H Qk&@h*Q֒N+(`2 MW7݋-Ѓ)+#2}덮wU$,T\SQX)}0|O#m[6vu3&28q~wNR,\yY$ӑy/ha<~)ޠ#BQzbsyHBnj6ܚ4D=G'Q؄BzM.Y}|f hz9vw%^pI$'Ω0VYAڬUUh7֛33\4oqݱLJy0DR17U= ТO(Y-CΑ3U ;ޝM[5*ǪIk[?u<=Tkη;䄛qFlaK4~c^pBF$j*rYuLdNi Ϊ0Y|PW҈? )=\)x4- SlCZ|E!c'.Ez4n&1S`wAMԌjƒ9cAQ-"\{Sn?o^QI5Am L/=VKq7s}/VY8ii 9)ZIf=E/ITe;635TdX:a-YGٍWQYCJpNd9oQ1ZUdLʴ3phGJ|s6lo s=BNT zI Yg'7)4scpeWzSo* g 1G g{fxosfl{zV*EzaC̦"weT%cq:}bN#}iF|Չlm;8]Fa5y/_.!mYۋWu ᤦ\k!dR.{eXMSb;TJ_[tcq=gYw3`FRPűgCs}Ьaf4DrD4͓Z!cεC#dʻU䇠4LfL!8z$|F'ǂo6R 3jQ30JUd>-byH% 2qbw\W9m>$_Qi>zq^4|&rqK7a K O/-%[* ҅8[HG9G0TO6|1v㣃8c`p,c2NspJZG?$"u-U\;EJl &"j^F1A8z-f& ul;!-ٕOjA;hܜ> 0a2r`BuhI`ڴ#hܖm1TWr,Mn/1BŒ8Πէ|ѝ\ υ 1V-6'MLYlnzWCѡ b\R((/ G(4-c-xPK,2KPJQFUQivZ/%E1:'y˼[&3 NV;\C;J1+*-8`?轡Qv<To %V+6şJ!' $<'5=y3 i0hk4rcDHz`!N-xiytU, 1."M&7l>lsf(ьƎ[Hl.D?=p2uFn]|w& 7[4 3v|}Tdxvuq7D oҊ;\EhkI=Ɛ{w_KLo_068[13H:=hsq0r@6:O%UBLX"ՀÜBǧ)}g?5AdFkבLH@|n)Xx7~3t',4NX$Yo$+dS=RM;妧]Q g#^8ˎ"C)p6\~nyu`-lɝY(q]=⒆ƝLXdOľgM Pre-vb1;Y$=-W9HJmELX7|el b$+j ]8Ub) + aC %ׯG+< .LOKM#v 3~d2ynćS,Uo'6͠λ#߈D3Y`!,SJ> s:<nHy _T*?.N:9` KFQoGEfP+?Kq'BJ$graVoL[bC^Un:$-o;g!"uhsڶc[xD>}AGhdɯ Ce;(&y>gEFU v `wdL}ٻDxI5`(*k\؈$dM'ȜN1e8MzPLliF{%Yh{S׊4C؉:7RSr9~jAmfVb'Vl&hybHjM-< 8H6ky;bzx.!-#*d;6QĹR=7(Q \r d￿[{xAaѫ(™IS[zBkncy8[X C_r=?ˀʒKS8ݧ˖bRYL\D"A AcZ7zl|1U$1n":lx|}60K0H.I1a{Yچ#(n3Z}Kjn@We;vddN. !lX*nG=lj+!y^5b T٨@:[Ae{D23Dd"͡SCs3ȌK2nHBc_x\\"<ɶJbAy X__Ue*56&ЙP'eޠ7[1>~Eulrk_vblߵfSAB x ` *ף,scv=o6Te(,v;|/A[;~1q:J<# i <}(|)"{T4R Z ?')Cbv)g`"YFTFx!XbXщvKqJJC+ K&v]nAJ=dU*$nO,%zg`bEaO1OO?0he̵2@$c3i(@<%r| HhH+\$TdV+K_xY6n֮!HsF2$2(R1.I3i ~hאJ#i~FTEdy&ʉbqO)j;Bc`|)s` }5̘;BnmK_5nbfPw<)^dGljˀY)2 3)5tmG4):m|'a۹kԽIj wިaUuyrCBz5gt0h-pV2yOX6($'I!ށ}t7 QhQmVF[+#*7; zGr]Bj43ɹ %it)=4cmOo!z> mC95n9x,җvgtzv|ʭ7+>+e\лE cF}c9--¯6vV?С1;VgHgc|Tj1,h 95`zl91*UK:,zqܲy.`PRSuؒ%r2{,n Ww őVpx<8z|]m }"$Vĕ/vK?}e57eaiL@ {U MD\A'_6jX1s֨˭b+Ly_2>>FD+[ f.6!͠l 8~%Ãwu< QI6xQ![:dflBđ6p̗66E4zĺ)@VSطvc+3>,JqX$6 Y}6UÊJ8:L#Ht)D#'j^Dڻ)RFp?S:r Et}3_HOy-L*j?m|n1ez h+c[Ƴ \vJdv_yИ{X|t ,E/+dUvo|,^gSd&kVnqv\$W'}Gg/M AMlX r9g8)|or,NodS+`Z6IЍ?_| Dk⑰_ܖ~j_^9'7/}v(G*sMxZ5 nGx}=c\RиF{&~ 6Na_, h^O42kꥎ8%ۏ'Pq+SePnMhG$(S@ :iX(~$5"1l0_"JHx6[ >gy-ўJ6%{ȠbsShZ7ؗKNI4 uSghAGpN"7"~%!]8>@0/Fcs).Zj7c VMqP71r1n풬*!'1HuUϼ푡!~6;+۶6N^c.QTVW7Q  Y)?һX{=G殩*6c+l L3EjGg,Y߁2)C:Knc~Ș YW7{= .v~9 ؿ!|nX0 oH9h+Pe<J/*6rYmC Xɗi{)꼁ƺ*Vy2VQEJ!ZSU?G(Vp1y]lz÷:^n7o[SfZ['b#cc ՈV#!(ِrBN7nR{/ 鞕&PgОjM5Gt}:/-o7iئ,| ULx"]ʇ۟e繴DuO7R 8y `} u9hzE4=Bo%ZqXt_* aӘNMKreK73泡Z~]]`v;NӍ6Qӄ;a UCXL1!g|vMD7X|D Q &ϻ;׽܍i%*qD 9}ijZw7͙n;3B4l3%EO1O[&Gh @(ARR&u{z.k!ܘ(jn2ۓ W2`PKdeEa{7v!ӿ$J [=.+N^~ ] jX *3$~ K+"d#yI#A1ðcUIŵ PW9B 47:(##qfbhXN xXg0P;Cг v}ZzVK=u_l[1E4j5t(-Z4æB01`Ja]D7٫5qX|>Pf 2p[7Y./E3"941OR(`fq!I6O•Ӓ{M1G0::ǓBwp _T%;N]1=zkotBF׃x 0Ts?b6V[˜TRd*9oC7rU"P7zT;K#W9;Ids<zjm,LnDXe-gP݇'xΩ8㞹NOA}V}3dhBż'Xtlf@8?4W9#xl=E,x?p ^I5eZZ_&\__Ac _دRQOXщb 9??ə"i{)jTbbMB#µ,SV3?$wXBb͚$KL=QD>s*K=g#S ˚JMi=;87 ZG;&-;]yY΀*~=2Nʒ|,9/0fs1Ɖpm@c T6rj6(Y%abnPȄ&ܱ2ޘ}F ?;F@YQX.W502EkF,0l|B28])t얟 _AC_m`\С!%fɂr=~3bHZ}[\?vf6Du:4A%GC H!Jm5f=?IY(t Bbr>y=4@"+), ƢT9~9[`Gy#X ]J%b8C`bFo7OrZcY׶6 ǼrYƥy+Gi᨝ ΔX@橪٬ze) L7=KrE1VI?̏eݐt Uf}UGq(]=|(Mʨ&E ·[êQ遾~1`C9RU\TfT`oF[F IJzK` Kퟶ|۪r(0, a io4XL7;Czѭ1[n|͑TJJ9ʪ.RmHaxw#S;2/*vPA>-WhA  n%ᬎ\5`YDhݤG,D7p 8JnTVG#mӿ.b4xhIBntϵw0Ϙr=mY+nS&2]%T?h˴C 3j#P[O)$AOJԲE_MRd&qyRE / %ZP8E8" <[D $ c+.n %? [}.qOm-R^2z%*^5: }|Sip-62徕45dB^,uLy&@G!@x jîfݕdޅw씍U]ke&vt;*j{2eLYfE(bͯ^-rH0B仩= 8%㧰J$FWAmƅOq|i@Poj^h2~18ܚm#+sFllկ1ljNUgszCfAynupWęc"fvx/hwI k[rBj>S-<,($kSЫG4k]tgm6mUlT]5 IJTG掴/·' llڈI/v8 "uc8/ݶ͋HECDXaD= "x>pF-^Y!M!,4~WyvDs3S/5rmj͟Ӗ-Z`cE8S`icaxO⇾ d }]ɜ>i,>H0܇Fmt II:+B+Džm%CrK?=X4 1qȧ]U5L_0O.&µ͛!N߭cd7rt<641e.MyC3χ- 41A[LgY\ɒ 4("]׏B+Rxnh;˽ҼXwBWfJB ?b=x-$Of%ٕ!a^8*dYj">i}Kb19Rs/ܨ*) ͙KpnOp*fK%,¸"OmcF!!`+*CaS6 ۬ڵKr5 b(Jo B*XN7'?h_" G@%Ȍcxsa5aL*z}uDh{ G?* A`aV)r]p_tYl5CA/Y8#F@ɉ{,Ɖj,me'i/wC7:vn?hIuv-ҟ$j8/x#q9bmqo R,F%D 1IvK7c~Fy!jtbl"=1<@z w[YAQ>.JO~`n}|Dtq]F-;&3-O?p}?3&C 墺ZݯPRs"!*z?q;A|M'x9 cBrg -KW0< +j-E7*#%la\H0YSؔS];(ҩ!A1< ёW6,Ů |X<"YX~:3/ZX[Hրgou;pӈH!tCΩ1m LoȮyc6.-g0^8DI^clV2;^f~>oKY&Wͣ==U-=>utn_.`=[Czt'$=?k@vS!UE I&vi,iC6ȓu?Kpv3="z/3Skf8h90(YiUl`o/pSr,G͇q;s}Z*Tf9*v|b?c0MkW _2dq^_1 %5tΔ} yE.;m\_-&ҨA[ITi-/-J@@9R &WڷWoA۵?Zn6Tq`&IDAV.RSML]B@:s(j-RTK.CI}vr C rch$ǔ/v.x)=6*hb/'piIu\.jya R fcqMܿ1׸ q"̑2n徙? 1?R磀,!(TXkYB@ɚ4!|,KLCBR&;_ Sgwe!/νh~ ~ %RR }Q2:tSzՁF341!0!:Wnf*mfU>|9֛Oнu,ІM:ßH^#$B6?մQi_Dπ1u0<}h}H*}gۥ۬@H3Nm\گi[y OfO3ZZ wA/xǧnfܢ<,sPh( 6L_rIsb(Ĺ0&Tp#ī Ě%2\U]|ޟ2L8>+IDtY(}Z}}s6o6S *qN,x6K WS!y/3XhOΤ·?ɥ; N ɥR^d9 'i_B]!SA%-g ӊO8σd! pLt*,oyGrRVɣa  \: gsQ0\2]<]yJqAp*ifFojM=ue% CEI5\gR:獦_mҦSrQx=cPĉs[eAb*C lImlLo4v bհy'٬-zΠ#=@،Lth9z`N0q'bh6˴?!ppn)? :A."'@6F6êl%c`{1IDguY+\90'N[kE]tbnWdF#a^Rz7I2w^OM\I!z~a3b$rO1b4uوw`1-$G<~ii֩ IX3QZIfwg SwF?3b]|^Y$9ܠKG}21]DW+6^]fwI]UV -]Ӛpo+J`ҟ 了61.h #2MO 73YRy͝W}R?\Ui۪\ajy]-wyrvM!9>\꟣Hi$!y{X$ &B k8, O@ѷ+=i<S<ȇ* X ι^jau<@ͭA>J[A@,$?r̜Y~'pl'% כc{/4MOwOAۍRɱe:nje#xoo7<~/Ra՘ Cr z(I0|[',;jMJfw26.;loSB ȎApؐC7\yEz*D3ɋPx4pb{i yom;7CûsO?.Zv:J5An{щV[uso=#;2@`81xz@*]*.nQPחyF݆s[pݙD|cvI_z~}`[B5̀ꔦ|ΒObϑkIZϕv-un+u$Rv(F=8O empgz@+rwJ)o]b@b)Ki14M#+4=<;)hu;Jl̛]LG4e1 $BFw DٽOOgoL ީwySLOPʷ-sH}d!)\fus24w䅝WW~`O|*5~= of¯O(Lu|CIn%G Ԭ]r漄8? ,C=SYOghe,J 憫:Sx?wrݟ(~&yw(p85%`QzH?M[&RCl4i٘ظ2s-qqKi_*%gF/(?Ao`#m'hڡ!n.Cm̼2躺%emB 3c,-R*Ml.:@a,3,i5E0$ [尃cCy#]|Z8qd3nGV1S 3LO*OF1,a)Qrϗ2ƽz{{euL gN.Ԣ kdN 2H(,?-\`EE|mx/.'vjyk\1:uc>}AKWV  ,\-@P>ӊ 8nN e*ؑ|T?]g3ˑξx8 i¦J *^RԌV|H*:8]<F|r&Еl2o@*rCe/}s!HS3x) 2֠?4VI9t 4Fr<1jUzZ`G'myDeT)vex;MV2nvfU{vfi}-6dwsi0!zZAТ2'|nj5iwHα547sLDǢW@pQݜ'`N`}9]<aGp‚A|hu lوw n}n3x?`Ppz:`ސ)IHqO_rjZ<5N]p1Y:W%>4Cߡ4Mݢ>%wнnGLB^n= GpKs2u֡9NQL VgEVv'hT}D0BhjfiWci hoewL(^Aqȵ>y8fT./^:qb .)U({]a72MցoAb$yBva`CkLi[ F?*Ҍo u@/EiREG٪|☐V;xAڮٿD6zϵ:-(.ic[Z4mi"P9y\WI_6T1MĿq-ADk)_ao(DVe"ApMOƐ;s@$}IdAjca.UP]Ec3&mg$VMvs'FyD_oK iD9~ޡJRS\^-LMJwL䱂_^ٕԵX5M0EoO/qWQ22HQ{bփs%G6㉥܋C-3ӷmI53~OD-e,]Vmw]ʉi} LY\?ge '"[P|"O#QلvV1qAԍ jjkEQ =OدήJReGjc R%&a4J% XU+Np/g7C[T 2yÏ@g{g&ԁyRLd t1o1 Ԥxr[+45V.VQ~jy棇7 ڗ e%50AtfA}и0eXp!T 꾆waT͏D-F|܈dCp :C-hzik.R8QHT!W7So#׎vpqG<9\jJ^}L/ sdmJUgSJwRcM=c&EUmՇ ZBF`):y<`&8H7J CDQk:A} (y7iKHN'Civ7ſ2q Y]O rC<n'z"R@4Km;Bj@ہgca xsנw,>%F3z"G>>xco9Ur<$L!NdqlaU•D'/ukQ ]ͮy:%ϹmѤsvmp2FzAB2ѴjmV4c7sg c>Qs%=iѵa8%bBGs[&nqrԟKQ &tjb>ít1&0 /# y(2צ/0cbM2(*r[7֚z4:30 6V~9uх!al=U^HC:N2n3)=&/Sl>T5ԧcQChіAshDpy#zLe󀼵jc,+s*][EF!>Yz ߰ǃp"o_\t/ _$\͠wuηvqף{#,;xF7$8|Zp[K/4R^,q"rP"HťQk _7K|V +uZ7 ZGau$'FKlY[ѵ/0ɗÀE HM;ȿ7?BA_PAm'8Xf:M6d5+Yd 462Cda g2rWRc' ă[H]F)X=V`ukh"Y\c}՛ @J2(Y$Jpzԑ;ѻbȁ%xz0IAVݱE  u. u. B"e-GK (9$ԭBUTxH)y{Cl4*@r|3Xb_EF^AE`Ԓ5jl<dLh1ԶϝyjQ|Pv$IG"V"" VJh&5&o)?Ӕ1Ã3)O;R_ǖvw8l >u='zu+z& S8-XPkgAU|l{~ eӻ!'";bΑ2]/0WZRГ5lmbq}[?;2~#1+qaF{+FȻ.&Hz*&bG|_2 %G}ߩ $ 4W2@VZj#A0xfٮЕ2k g};禶~nUô! o7o*!=Njw"GiBq%)BP7ad,rR6ôҀ:#xz\a<t$)O8ڳXT;7dyai QRzĞ*#ެ 쾭?;G B/Z>`.v"ꝲ-.ᤥX̫I.y]&*2̲;hXb:&5+aO cID ,nv!Gun0S,y!dOUo.<  2A8y~;>Rgb4}D?-c[ϯ7fǺڿ'nɢI u(iS@ŽkObAr5ƦOɔh9۟iB'dZ)T`ŁEfq,qJhI+KUk†D NAb](tᕒ f{yG D-^.%/^.{3-Лy?s:7}$^o{}mSd">uy;{bwрc+䞉&Z#7yo3$SRylN+4Qgfn4'5=%"Hʵ<7|%`+?'%!p} '.ߙU`z0ml/K=Γ޽TSXjbMAl4/KӜ4Wsɑ U&z5݄[3~ܐH oWs!j)q e=-{(EMf[ݜ^67+dS ҈LGGIu#"RvSe/D]8j6`g?atvDIs4XϚ0n}z/`\lH> /Oj qF8N0Lq@6w[7\mNG,sGjo2F=h?$.\!6nBH0C42T@e`͋~P֐@멘qBw1m֩̍ԟb-HV緛lRރ#xG~[}1=4gbzʪ!?;y){ ob{sh %2OJB4˄3!J3u:9F3DNzbuI&GY5hH[͡!p/ ZNIo\ھ; ]A`s@>b{r)K/QD1i*嶑**17=n%&#u)K["vEFZ NpEZGqy?Ur&Pb袹؉OyQ>euQQ}Of$iIh~R:d[w) {ml`H 7r< m;Z#tʟ!B>OJ` d䞸"0uZҫ3$@˚zY uׂ֪rcKnjF/d-{oMOLi]0wVhiXgWV~= dZ_|'~U; kBypWE+ȻR [S$? h|l]7n2u0a@UI, F^h,A@ Zb$]/5ۤ;*O DډsfYf 5,ޠpWy &mgq;Pg=V&=SH SRnv>F0)H{ O+E(͉_ *@QaVR;yeyh^eMAD}Lf]FݍN* 2AϚc Q/ˣU6l1e|}u s;2vz;;^4\+5=RRaX}|uGLUk< uD= H+aD5%U2}Q#N#O|ug=7VDkt+fA3J"MWG& eUKC|V O|sYNBD`ھx<Ʊs$!{_-7B* ܆Y?k߱db^xx bI+Ǣ_mU+I@Cw{q=Z嫃A)2 p#̔~8ӥqoz/.+eeÆegN2iB˝ECdCx?l*'-  VXg{u*D8tu-ޢޖKsʞvv eLuͥmJAbН!p)oVnpM|V& b[ыMhѐ6\T8h8fY.f(1Bi,@Pp=.\NY_Tڵ $QwKTֵFLb OJs$`!Q(7u6gOv#1$1UE܇~n'lv0߄D+\J²!QؑJZ4G91 Xiyh9Ҿ:!xZ[oKaz)hHgMWz> l2y̹[q>?AKWgEPt #)Ft8 ?2U>`5\|ȕ|y>YǑ ]jJ7K/8^ap%uE.w)Tʤ%<~(󭺉VEB{ƕ8@Q'('^.[$!! eRlɲS"x_F5{,bh!'22ٱjkCco]؈unӠ>t:.X,yHΪG zHLD[|Mܽ_~sHoD bE&"V[|:=h1ΕX$TK?p?RRR.dd`J&9I1+?61@w7%!$h[$4} gNK$;[4iHǕͮx6Z"ET$qi8$c+ Bp=iq|%,#?׈+:fABp_W3})Y+x?T _<yB5PuLVn%2GE,lJV nO}ќ4V$)8$} 5>(h܇3SzԠRH3ܾ=5Vδ}zĐ>ώ:̃+$TfLX/u0_JXRAG sSŗ 5VEHnڷ?\"T:ajιɒf?:yb1g_fF7?}ڗ&e~9vl#)Nj~ :[t:< 0|9'˾SQƂ6R$&ě:ΨπsyPv_Bmh(#r?\;e& [n5m{*yke>DNPZha']rgޞֻ3Qvܚ!}:ZUwNWU0Ll@O`? TҰ_I#7i/{[XR ," tuK|n,Ͻ5OA%(mfBRW2y%ф6|,7CӀ]8FWan}hQufF๔V? l $R x#tAkjcAbzDDYɂR۴\}N'y9XnxG{Ù"?KzM70u/kJGϫ͐0EQOQ2x ]u]> `xuQjʩZ_ rYvdJHpۑ1 uKΊ|Ib[Usbîs ;&ڿelF.,V&l%Pq˅(kߋ#6£)sD?5Uu͟mAp8m\yQ@AA˕`|\PHvgN;"#x 8Q$!ăwEW~<)8ET6O:vya!g4R4/ēDZD5%H\1BFi#t͡) Ĥ,a!V' `0g xqIݦq™YWE>[8<|Zp }=tb%QKX4/YyA0[I^]'TT՘8TܸɠCpd)[ɶ&$ٲx;#|ԇz8 'T p^7/A $pXL G4i~enG7|0_#Q@mP4G B7(Ǖ:Xr_#^sUa5@XUPP XYC>T?mcTL[-ni_;KgL}QdBm{_N=(PH/"/&<&UZ8])VpGɒr@!e'ïM |8VUPHsOE)y?aݠZFʌYґF cV.!rOR,*$2u) 4uM]ʞ_,,kY˵њe^̖#-(\!&`>nʱD&@M'QV:\$_1_@ǁ֛ ]5ŞvE >|%}F#!QGPZXqe"Mפ2~x̨K̦e?"Y2/lQi+Ǽ#F}ŨO=nnH ?)1,DsEJ=CY  ~ Me0Ȇ1ӵw+zvcy o'e0gcZyT]H:RMBV4 [Te2,!i}]eĔ-5Tՠޘ%H$2~U?IONWniI3(x<'Av~.zu״P*RDˢ*P!3̑]uaTE`{a75/&MSOWP2㝤O@tRI+rqeJ~nGr :\=NdI n0'HXQ91Xx|@1 (.l)|n)2?[|vqoQe{ &-H[zf7矒&UU~<G4G|gdd^uI33?diIfɌ8K.!^:!yp\p,4:n) xWl~`_\`̧Q')OLgPVxHIVESb=. 0`,q:,\ ЭxV^FGVCX ^zF(o۸=Ԍђ#$ shHҕ&w6p@ǷplɘwKȈh'$9<;#NjbK_lt,6R=JhڸpbTjbE> 8]07SsH/zV61x/s[IU}=D@xOWUf@!ANzΠ&;OurPd|GB8Tqɀrgerc1C4Ur;}бX ֬;ü ԷIvҵ&0lY3VCV9jͪ N˚*l) Ll蒡72G,nY\iTk>iTg?y}P>07*jwj!޶5RYBV7 o(Ct=6s J^:xY+"蹑>9 Xqo;\ުP›*l `3e/Q $Io}"og=~I ;X_@{Wp5?Yy VoŒ"p'͈ E-%ʡ֟5E ǭ%rw#Hu/ i|4D?"clwh.ltl)8 eCVr[\,%oTHh;ϰٶ`@TLƲ*yQCx(L &|ϚnL^M ;Š1Wjɉ`wɤOy5)] cXL4]~ K]tnlydbUAzx{wR]Fg-8Zn`:JUm_ҵT# r$?l1_p$^t->vµjJOHwe_N+Cd |^Q+Cw^=L~ّ ߣPZ#QUj4Ǿp9n}%[>5P4ì_\S \?wǁ)q)h?ʘȳsUqs|#~1 ט ~qB҇SzӿBamt=$j16+ĴΪ!<9mv JtECu+p%ѶADG4Zj#c;],p aVwrt74F%RݒGܞ|]{ `Tw}@R {OL*APZN0S=#5.Qib uju0FALjR\:XM|R ?mcC cwPMFqn0u!@,A0N;UZH(3glkyX+CrMqƇЍ~n{IX۲ h ZvFڥIތa:. $c^HS+:> #2֤3ӰvqowCoίn>bĎDt7 S VMad[)"h[:X!^~|DFF`8B0[~O\7;x@ISM5 mu .ftvAw%Ӗ{ݰ%0b8_xP?o:a# *) pߪ%pWcʔ} -Ɩ˜r׃y9, LZ?etsSfH} <-L̎1щ.[[=)rSKݎ+ L,I #Ky~Jb V_.:oCz$E$2 ݛc+w5Pe(JcjqX[ĭN:P],v G :װAeiR"[0!KF$i/;l[tK\$RhHb?/wQ$P? oq!uF=Խ*D"+& X$Iv E*U p41t=+H>Q60{o>2+capY =ƉĂ[y*ghO!"wS N๻T?sRtJKmd#Uw/ȸH{8*`I@ٴ3M7\)@${9(Cr3b=A.h"0 T0ӁJ7`BUg< -1Y&ɛUm@h[NNT 8jCk?GC&.>OSj{'2pll>&ɛQY8y=*+$`?f=b6L|(P'. -.S)4.LkIHR1:wP\:%@_%E[MyF{#1tJ *oqr-͢#/g>=Sk\R3rR"G\O{t3vX 4X 1"cٻ Ul^ve1ET?`jiһN&>s PK,Q"FDW.R R>EvߵՅk69l>z Dܜ1 @+,"Îp^d ?P4۽kEѰDIʼnNz;E a=[43Fǚe+L^s0}_5"W~re^OO&ٷka' ]ϢSq'&Bw`w(PCq"V@q$mFJK2 7n8& ŋ %ΰiKj))'} b1wmړ;e-@n[orC#=/PB%`h쯵# 2SFC_c_9r͛O2[fȤ(3JM)O)&! UVSqb)6=?vB|@qe,5<+Ćt@ȕ >ؼ0kJ_Q6ŢN6V<.`6_pȊH X#"fÄGy$ad0~Š*cCO5(s=eyN9t^4~*2^|f,Bk&WLF󤒾,ke;Eebvw˖CVAceCo* L6ۭz=CBp=n6K/Cjj>N't@-nNs*ePE21ɱ[=~(16CS䀠Gr@u&+ 2l- P~4 5YVN"V#|)2SUYX7Jbp\F U@+\{<2btPԒMP|e@lبS&eǁuoOw?}aDDEzy-iA&_Tk e!vvCZ-ŲL] F$D*@oUWC DO۩ҽC$~Ӻ+l͕%zZ%G 3cffA06zqΗ襾=zj$C[[eOԛehu1Zĵ>S ۖ|ͯiMǂ#p[?ףi`K[&Lwz𮠚Y&_tnِ#{YoBSğ=帬f4^MMBt?Eդ @p4![U-ĴN=v%hJg$~rX/8u$cRE&nTGᒘuf#óg`4o6_}V.|mXy Zg0E* DTʯJSwbT\ XpNE #Ò|(Ä/0!J ([bgCU!pJk-NfxPΈv5(dD͢ߝ@zY%C mqyIKM]8$,iG|N` \M#D꼎sGC? V02 46Icpwby&W7"G}C{Y2G^tkq7HYUA"~`o X_JB1" djK رU&-VAjl"zpkI1]iK4)Ts&q傓!.ჿD32k\Hr^kRPFVLP|%-Q"n Xɉip7cC8/n*a wf 4'r\M26BN3^^lZM\vK݃༦F cuQFL4Nc}E`+zLV`{w>Ȕ $WC!fHf<:ӢDTV,8(llT-L*$W l 7&o *+nx6K#X.f7ٲ\Ur ߒQ"YDqgdS@~֙1zHT;u2o?٬)s4# Rn iv[BŇab!6]T έsvg{S+}5jVƿk|%TgkY&|]'qbFbe)Zh MY2HXި5p4L6Drm-eÖ%NI~]}͆0Hde`b+ {X𦯴;ݬ]M 䙨oO2lLJƵKpA?|nj] FWO[僓˖w>_Ynҧ hp}kXPyg!dvB>Bw&bU14 sx;ah.Y2_`l"qa0zv<wu1a]`[O qVP{Fx/\olbVBWu9}O"CzB|sU=4վ!Gsi] vryM8M•")Lo ><+ы= ZB=T#5ݨ5IGL#uy&H%LpW;?D,ORe x )V*$Too9>vX~Lo`P_\}!FQX6:FN5~񆂚Н/:d~c,1/"@ni,m'zO^@iح@bGN!]p!yٻ8ʏ  {Yg4XQH`nX/q}i.?XAk7#5` mT,g7^un&~Be=Fuִ0%nA9M|ߵa }Q~)v*:_OQ/iP1i^\)ԌXT#|2RXkg eo81R_!ER$ 0]'s Up.tCG3 ]MYqH$~/TߞtX2ؓ^/UNŢ{1D9Cq"s12k!P?E0v]Ht\D9NůN?fQ'0Yg k:~S&'1k!CJ!rHa"f4ظ9*ۖ(NSrl㵽(<%&Ҋ ;sO/3_N\D'+2-A o*:mƏ#PTNadOf7;F֞áDꇑg$oT66?b+"\/chh\ں"]/v%/|훝w_2O%Va^\$e$c!VaM8H팓( NmqRT.Eq%P֬XB t%*Z 6WLV_f43WՎKa4}fa5y†G >HsQ{q*@@К,{o<=qL2]o`zOOJSN"?/%P#f/n%12&Airz#3 LP4ɟ"g]<_"v :'Fy2^3v0KI:iMq璏$N>no'Bu:?GtM* " אֹp, _u;T Z`ªFznj3kW80E'w#BV"p푧zݾSyyd0;z0!m]8x癝)z=ؘ:jiXedOm<^tKu`Xo(`ZQME߸oFy;vmd{[1K6hݼ @tIaA!𖽇O7OH$(94IE&y2n?R e#/<BEc+ĺ Ÿl2ۋ/d-6KρKCb6#QV낆=xuYv%y/hd$j0myK& ؐCz|N"LGg/02_M/Z=u*PޕecՕ v0cGHՋЯp愅=6˨@,NM#\#͆XAł)}di,k;dx|ϔAu#$AtnҸ2q_eoۈaY]G'ĚFcb&"1o4ZCA l$ -}"3Ck9opf@"Z]h%p>`"2l Ӿ >ۑSo2N@Sg}+ SX͹G'M)"C5( 1,IgexZ#uQvB!Rص{H5JeX5=é:vg٥Ư V V9`Hr+1,%?`%c(8Sl3:_׋\Ԁ-u[#Vy]%z!G hIx f+Xl-m5/\@V~]{]^8#%ngzl|nu^kH*d>Y _d/T!`kRWY%lV/΃D$O%Tu>A֓/:^#7PTSt I&"14gZŹ**zfx 7pʋk|[ҏFc_۲;uLq4@_!{OwgNzSpOaG dˮ *FW Un)xu;XorG4KܬJg8Ci.dC@C'r] ƙ#oWW {-9]~-<@O)ݩeɲ1O7no!Mi!d5,P K;ό";OH=vwaHPne iŸC!?[ǀ%SMuLl{e@V2KT$d2Z%|~qH2ԄBw $wopa*F]=" qK>7vdT$:kSI?Sߡ7}:Շ8BZ!TlX& ߝsx(%8 D0x'S_50aįd%IV;q8X OI&Y +m笞1 {۳Bc T,;w_Bb8?ϫO&B)c`mhCn<,+Q⩯v͸&|Jw˄:տviژZq@7e`\2 }69CB\TѶbP ,+~L׉KEqa_k}j~B gYݟ!Jx!SZ8"oč{M.u%nk )/UHp!3f,&աϺdNʑOO1ȜsB{c[c**C|յو,EKtY+??Nb,`,!eR{ҚvZN=ғ٦Al"J`j-l 6l&SMhC;IK 4p2ff}/q塅P9LTם3qeKՁJB,߽<j+BşG9VwI¢ ο;L/Bu /JT-7Ać7L{K&N%5^*B#Ml$=B[X~ "2'mel EܢЙ er{^Q+}J(τ^dN3h 2&a LtE 'cHߙ$"&L=|pU*W $.a>!jh^{ٙ"`S֐i"Dl ;aQ/) A@}ټ,#PjIۧtz%.]X_._ApAE[H`2Y$snt_jʵZ?[fM꺬E+O(Wzɚh}Aυdo^HT !0̂t h/[ń1Yhғ0i=%D|/?R@ t@hh&޴g\NeI-osgM—R1tjg*pp1iMw|5;G? 4b-v?ҵl\{l'$7]x ?)ÕW&_2`!O=:va޴\|v2EzU3MCa.Pa%5f#0v(0,!V-T/z=PqH~BL}"mjۘfy/P\h w͔ 6L|qߩTm-cswhn'?uT.]̚nEٵmֆi^r| k^ ԅ[i+VS7BNCc'n -TɵG -EOTą!^] lVb1_a:t:t/b(B~z2:K$E4˷ ee05Xi+NϾlKstSn 3C6?Ѓp%VB?9zG #s3Ys~xWxE3+&GvOp5Xv%tu^;'IQSYfPUQޱ$yjBif`YyDg_\~7X͈{}2=#OItvzt/1/O5l-1ӹUP,4i$a5XH5nebaCn|5A^&7 )xhz}+XS z^C uk%CΣ"ZZY%[Y/ 1!9 :LQjQ'eM^G0L݀vY;IW Qv嵸?6yrA_=o‰䈛^-Gu?+<5^M y/޸=~JֿWr7ѐOR3$Ċv-EEMGJD}}: }?, M_ՑN] %C) kfTDwWꀤBغz*+=_06R)aov7PΣVjdmpfu[X8lub+^l],4d'e\t ]q/S5imB1.DRz/)V0xWzG%кN+8wOФB•.,UFHPc+dWP9.qDZΥ㟆¥vB(]|a)=-)q1?  ճoqmq@'V#*Bh5%=d.%V=9oNۼ\v$rj&9$hͥX-_QN9(0x{鰳3 $? e: 5e&hc]$AR9 qtK~7ҷ|͙m8wGJ(%cWN~BTaAH@6\w4/3d*]Q~+%Z-|Iw6΅ڴg8HpEVg%15_sC$g0@[B̅#} V$qrO A.6wSFo]/4uɎ. f^[WlɆH(tJ/)Pېb\v,v;DG{TrGˣԾXMg;ur6lEna➋U(=3s4;* VNM-LoDZ㨞kՍQHBȴ\uQOE` 28bRq炪T^| 8(bfPGHIǽFuKmtP̞%6ʮl 0BA4ZkYڃE9Y3$oXZfnP:X(ޜXW<4GQ;ըqBr'C H0i9w]ӭUr|&Ejg1_Cͧa2'2Ŝ];fV9 '?۝Au! .yK|ל҅VږhbI6Ƿ1`1FR , |!\qa.*{rJaR mID\Y-5%Su0,eJ>N~T$}:rXfD&GQ9FϋY8 V p+ڴnˌ*_-5x\ |u"!*FC:tyÊJwP5FQG}_g.-|t6 uw/Ok ۳7&uJVHaAfN% U{=r6!K*b 擄\#!v^"i3lUgJY%-//U Ѹ+[><˿_$Rw{c#;` NT,l'+]F,w*:/A P+#Rh?foR*Yg(EiL4)[aykBn0/KD 'bu3YcuU |s&zakI;1.ciRaaE"˖]ov4AaAP=d'Bx`՜&us.[ܛvR9Ы;F G-.36>˓N& t7̀~6'ǶQ1oZ}(1M$=>RIވ6iPk>fY^ZKߧr@Ŝ~~2͓/{I}f"9GnVg)LznoTcD^DIl'h*nؾ7XU1`Ե8dMm3[r͓n$yVh^7J*3h)z̭hP󧤃O~]`$Ԅ{[oFKs8VYd/ {|ڨǤ)3t2"["L2h@:gZrJ\.n ePF @1Jx2f~]#KyH"a6"6Bj-:#}Ǒ}- ;b.|]sLeh7[d &2@*AC9?n2~2a6]k;u>5i,b3d5Qs`SHW֋ց+H Ih&G'跓bc3<{"k ADěO-n̳ѧ-2:`P_'Ȉlvp.o ݧ ϙFB6*01lJLUZп{/w(| ._9%> a` ]4;zn0 %:/6ʚ K0WEMf31E̢\{4]h)3'ne,F= r"{ TP_L x/5iz H{n[*mkjESAkнaEmM 6o?"y&\qуmXn"s5N PdKv[]~";!ˎ#ԓK4MuewZ$VoXuo 9gB._ӜaӟReU*pѡ8QSc, h(_Y%A+Λ,[d8jxߐ*  ?,Wc}W]m"tkYhw5ޜp0.{D~k8 Djgb%tp'hS7  H‘6x Y$`0MQ;:붬*fP6zw3fYFg.`!܃إP8[Fbeqō2}O*6qXkI{\P sӗtLVr(H]]]`ʡ_`x-?e@nV>t; v\@8q;ϕRU}U#XB Ri Ҥ29#aTr_isnͿ<_+R-E۲R =ߞB+(<wbS/4@ 8|#D5%ע|#SQɊkFB癷x!qmbZs]{%9xZ^W"?|QNImL!SkSb|8Y8LKFf6&("Ҳ:tSfli02#衆%2bh Ί!ޙ;ӱzijjQ/*P~q>?Q#IN8X#^!gm!BihVc #GH͂/h%3i&t`Q8RuCCxxXރs2֊$s8I2-^ό]8HPoqDqC FsLͨߊ8S|iO9 re.CZulf0RR]p7dˠ^ٰ8sSP/pKDMUA s5ٜJ]#fLN"" jӉ@E4?'N*9(_xpxwp rŊ ա:T?%ZH&ɓ @BW Yע<))7h$'~MLku{ ,,ᴐ_ 嘡/T6r;cs>g}˻PN)?;xkTUab4V2; #zƟ%fp2\}Ya*gxTlJ:6vpNoGp{_ll8^ uϞBA;ZH 6`N1LnVGEAMg%Xz:"C}#R~ԯi _@\0/UdP~İk4md{Kbh0YU bۢ{-6oj9O>S.H󣅥GㄽM$0|Li!sZCށf;nֵ4#;ܓXQ8v'ʂ(fnWU] M2Jy4dF_Ix7@xCp୓6 4|2jo<؃eʇbj+(tv{DyrcsS¥\\E"Pf^JDGW:!z5@^.1^ ү]Xͼm -F\4-Aot3dXuk e/]KTvaPDMĭ OJز@1&?\DCCc` !ߤuTM[lZzdj3iuZ7MC6nb4H/`y'+I (ll{ t•A=6oT"/9;23gZ Y Ft z%dAhs?@[}wPb}*Tϝ4NC%|"-V+1Y?UFrrWnD@3t{G~M2UQ^ކ9e"C] 恗^z.1^g|]`_0!'\]G=¯XMYI-ϔ0fA٣̄ZQZ4"Ctc>{(kBՅαfmC&߂K(F?οR?ÿ>(IN= '=$4g#\Bs)Lמ H^J'z C坂4~XWjW.ҼCYb\ɩ뜣賓;l4ԫ#'t.ň3tN;N@.ݬ)T_5VΝiq.{p+RJK !mD*AV1\)͜šV w&7Ij%57\i= aږeLDjqqx+8,66jk%y%nvݓNe/e62kBgˀwG%2DҼ#56CFX d[E3aȯ͑q Y,v4u"'/K< 4yE!u_4΁l,Y̚$<KxztËM}]bZ5v7HC@$H"p/~;r헛ݹUw]%ܽ` qU?)_ܺSB4Ț=wTD{RO,m}`Pf?JRxUg o97DƖfSJwywgF@-.<4zP0~wߖe> &bS-ҩ(a9?H)>#ۋ> ##e)^_LV}E aвw(Qf*NGZ,1T 긪K 'D%NaGAAEK6@[ԉ(V'is  : m[ThӑE兘ڳ?fK;7zc!~^9ANhW{JKk`M:y]]e,|ޏpi?.e)HQZ2wڱoZU5E=#ɸijg.qXJq?y:WiFaDŒ'X6y#d7*pxlI0>&.,Oy/Z779i\nAfx^YAR:;ÈL 2?`ŒWrH,1*j"^/hRWtlU>V#[p+ʟbiiv=\gGeޗpƯV"pڮg_ aI:S/ĭܮJOGLy\.ј&,rJ>{S>e]nu9SCa?JaÿcpguQ(!z~8T57cZ{4h=Em>3f?M6nqJnN3 \,[`n'ߦjMTTbpd+/-${۲0͉uY" l 1m/0YU0__M !׺͎۠Ct]1'ֺ=PkA(?~b,͟@>Xκ>UQ"0Rq*V_Qn$3f<:a sQnp &6Oy0̜B{V<ךS|.]j_qCVy+}β1lBī+W\퀕"eHe]elhh-^Q>5AF=42^@Y2Ex,,ط% mRV3NܚS)G ,Xhw=.h&-iڲ@ǞwQDҡ>tigMX[c7BKלixbz;."9.JhAb!{d>Q@/u&g IXxw}et013yy fKIEa +Gxcç}VѪ10_MIY`lwI8'nsf`T,;_Z17ϳϷjjKb݆q`Mm%,]co#4^Ew] ]EbWE.p 'p$vrk@:Qtf{/OBݓhP!<}Ъo]yʻ釃(V ϔPXQ'HNsHa{DIYA.XBsŕM6P/R` M؀ 5UU&!~o)04`͓_S ;q,]@ Ԯ'8+gf(Ϊ_6ˏx6]8py尲Z͎MzE1~Jܞ#ru0˂֪>>F.3s,u a̍c*~HC18)f 3I(*s4+p1>%U$b{.JHvr h2)HURlL3 0xqx|DDJ<-}{X="Y"UuD7S;Rž20H6 iO 0_mKS%@eequΐ$%w\|-i#S=gQD0>3yl5TKbm,?o"%67b 0 fKFXQ#FdY#{全X,So:ARIP\ePM߾?ԣsf2NdW|KJCDL h( (;TnYx6|a"A1uic7NFLPBUaBEU@} uD&:^㷁q)[J_Ve$NM `=HI7(- --1iMWGe)7hPD5DŽg $xt׃s7gMb) $Jx+1l6ggijt~ #7le5W,|%hjEH@ZQimOn7bʡgm2˔V̈́vϸR4,Y~$6iPI"T}A࢈ImE{vm,mq\tӥ3m ;thq!S{Lb.X4Xu.o/?uZK}[l3Zm͎]@.MB=[ϊw@Uxt|A:R[8 X yO EJ}®6֟*6vn2Vg&mZREwhCrk1% (E_)  3aH+Ǿ|V^ޅ+@QKOHz0$5@-FvC$;tu/'rmBнڎܝpa~_%E$^m_/W8l*J;y25RP9oUe vǗtHɅ\tJ#P$2f4y> Sŗ$f*?"mwa7ba.k*]"92;ECOal!k[x\Ѱ{<1cV`?>;Gfynʢc d8L/cRq]21twMԔ;$ 9[X`Bץ,~z-PnHha} *[1oJx,jknwܯiЏ*Lcmv|gNx]k,ͫTtW=];j0נ: 7'ͮ߮wy_ab^ξQ֎:$jL79̳~q1tLF]7Q5X}"F>5>WW6P t25GIvB= 'dG?Ġk^[ !R2OpGn{9kOV{:c*' 5#JUI SO#$zQ;+yOab1.G)#}qHS]dkԦtGj=f ZHM 1[+lot%@jQ1nwpqFn͔t,tWG,omu @F$yvu-@l9,\fGUH`FBӎ7tHa]T*K+?8@ ٮJ8鍮Ĝ BNX_=;qaB' ^,.# TWs:· rl5 I S]36ry~La<~fm該pD_M :rF^h\Ǻ˦`X9-H~| Yo4, p jl7iS;QPGQfpȐIšm| "]i-D'ݟvYi:'84c1%u]⯍\xB- UC'}9GH X%2ީyMu\QF-\'d<4S{6;d^%4Ev;H( `@nHjg=F]%IozuĵAt\VK!s  r%_lIN$y RyT>[ D2x*MUrHt`HI4>ZI[kCӡLLk2'd5Vyuˣol`#s7u藍 >8n ]r똪s &LtbJXGP@xKc4@T}&2z V[<r4}Y?7m Rd@T<.QQWz^sף#ߏ M !1그pPg@$1ڠTܭiTy,>%? fܔ\q*ԛPTnYg@&23oHƯPTGW)GoTq0~쬰B5n!RCzcRAD6ҧx-rP&-}-}A-nDZ5`%؇szP_(^k>JͰ(0\ATU'2*^lP/~nfOrjBQҍ(/ī1ZFYs1GT s蜡!d@QkY"'XWFAZ-הt lH+ӳ;8TR١rRC3E2(lm˺-q $WQ썦L9CGޒ>W PE 6 ˮ*k4Ct<.*O 82BDI۹}$MOO=N_P@{o9 };k*I= 癒^\^Þ;IdރNW8P]pw\y=v[CFȰN  66]*2AٟǾhj]ؼJ8b3psTë4z[E@!Ga5\fDblg47T/X|ehAtVs'W7H 3`MT0 shww #'g!yN!ELv^: ႒_)d 8yN)AP1><l2Bx9# ~3lA#..Lv[`IO-, {f~Ls.X Zn!E(`(ɞXgEd=ڏke r?7F AGFA}ufHw {&$2.>f t!`ӻ˚Y\B+6V>4記VYlV[P29=NX#z)otھ>FԚ*[9݌#lyNܘ;lzGoFAbȍcp=FbKH)l/5J5y%ޚHZUe]#"\/=}C=0EӠM6G=2Bkpb;Zְ@g3Ęrki;f,,j룮e!̢; rB(2PAh/>HJ`9&W#Ս XJ(&pYn_hTGFJf韓;(bחň2GS`e%dPNX-TciևaA([^)slm刹O){8y%<'wbqAq%* Pp`ynq\@k:9Z#M([?]'2Cg5Ć.j'uUJVu|G\;ѕ0C  ]fnqp-+PXAvRm1júoOvtk ;-?W$QJY/ݡᬝSP CbHcљ j}\UlՔcݾc@kL] ā,bʅ,-`*Iz)Vũ6DEEyllyKi*,f&(͖'͢T:sUS#?=H8!FlTZ^7-*Ep]e.>G8~0 t[p|aܲ (A̫R҅- wemr73}\)uu'JMd`jw/"l;hoxntX53gO^ݶj'mt 8Z*=a?P<:w]BL(nm(HR8!ɻ͙wP1m^}7Rp *M66fW Q^[.Xd;&L̨j% w85XDž,G!y|9w1-Pk Rkv& 衛5-ﴘ'I $_׷;L~"$F̃ ^A{W\ XA$4xn;$O-@>E )5bMmRMn4]wCmZ2ؗ-CG`B^^AWCi4]XqΓp=D-ݵseWiJ06TJw6\ :Q>7O;Br:Hv̶lCm(yL RQS9KAt񈶍8}2} yY|^5'rVU@12v-YlŽI\W<.hIO6 U ;u{g8dfº蠸:ˊza}4 k1jv4%qx9ȎFqD˄[ɋnCrMlVYJ e.1V xd &h7KYk( ɪgnf.qСRPk@8LۢNpw5( m>"\0J[.0z _#3ʠp0C"EgW\DG(5?K0}=8Wvߕl,J{JgYѝl^1 6E,V,D`ա 99* ~a : cqZew-&U}-cU,/w S>w.h@'\$bGTzet Yqpm/m3˙$BA+I+.qz͋[ K8 v#w,zk]aȇNǘ[U`λU#&߀ Z5xҚj}9VIπ.D!<D)L#x LH&eL}hhO0Ne}[[dY3="T*'XAX&;FlV&̷ 5߭( ?cmnI*S=O8ȫ[#k ө'0p:bu킹zvn0ن4a s-Q LP$!=r@U4^1Bǜ͖Բ}Bhb[-Hziᒰl[ 6{Q z0} DWr,wd9M(-Qc}_r| s=vz[ 3K /2qq(^;p3p_<'c\֢/v+ \ObTIEd@{[vKRAuIUE(ؒ+['uw4!Nl]H"œ6*pdI$!@tj-˕UBF&QrK䔇F;>D\Cغ#9eͶۑQ6!x-'*TquɟBY`g9x\t=tfG BXHqgnxܡ _Vi2ޛg=OQye:IH $[VE~ Ľ@5EzsQv.PP1bq4o Ԡ}o4vlwh_ ̪L Q:V9ǚ@}[t㶃rI'pWjpNmaɼtPZ#!4G:AXLW1pvUupJ˱U& UJ6ݦ/܇'ʐPTɧaL!c r[xj ,g53m!'JJ?EYK04~,pqZ|1) E$` ӎeaXQSDȥl6ML6llD~!˺LXݭ;CATRnW{;DȐԻRN&Uq_I`F앪r콫 lO8ܰdwlp.PWfMOu=b<Uڑb (۟K(Pgj@LbyNy^mT.-uDhb,4\^Yr 2,22&ѶQSW`4=N/',N;H F47cGNWH? 2Açn¯DBEގO?>"bI)nc͊R|{zxIAm|nqg.Uv/Ze)k~{֣ô2WHĚvqv ~+b?, {1 RlN%'eX/[Y/Aï b# {mr؉Hk_[XԮP5XWL@ ARbz>Hqmr;K'gA,=s}3#DU S 5G% di^_Lg,RZW_7-UmʓE/ U͖4w)HCahwxw|{tAtN,l׽%OVƟ߱:=qVzBAwG.v{}nMqqsW1dD^; Cq ,[bDkT_:&`Y)W8cA~s Zne-8| `Bz+ +*~ *U|evx"hl'G5֮B@I4Q)lE Py;$h/!-1|Y{ܽCicX(Kprb:g-Uh!x{~;So/M  $DlHc ?"k\}m~6BsuE-_+ bڞn=k_Aw^] w17(Wh}(ש 4 L؛Fғ/=ڽ*7X{#yFgMOB du!A)xGzG6 b總'YtDCˏRE|o kg8^ߗX*PNZ6ehݣ9xfj?WxR yu3HغA^[Ax#_Zj>ʳ?nN/N.ڮp&DRFti[nG 6MaJe4/㺽wB^x)-ϪnN^n;98wվ\'Z^ Dz}7Z~8U{|3FcMo' ;Nw%dCy} RT!3#uG'wIy3(;(y<`5/8ؖvѶt͍j⯲ Z,\KF<uU#V؃!KgMcPINXvu׿)K{Ҩ2-3&~e"'֏5Ս͏)_wX)8V9򼤸 9sz1 H|SL\`{MVK"@%rhDEQ)er %ҴWd<>#3ZL`T͕u/ ,T Z} a~օKnzy|`J,l큨 bl %pa kɿP0 qO66ye &'wç<̚ T"җЂ~}$:X}v^؂dv:1j:k A(jm \o}y=7'آTDBthri?d7Q#Q$D;euJ3VBz4<_KO#:Pb8yH?(3?y٣~"y*6O`{ ƉVwwTR _ 5KuPK]ϠM)scxV%}{$>A )|@)` :O tFy>[J Zϑ{I*:Hx<3_KbKN< kF?z4޲ftʔ99V뵉P=K18*rlgta+DFXk_/j=[R!m 5Uf,2"rQ8W u{%Y&63O^+7=/;]]Ҿ]콳:F3Ϗk,_epinky ]3/:s3zv(؝0*jnG UUAYB " ɤ {g*%4H9w]}Ȋ(aIr)U0??;?mbl7&_7,UBD梨n|WV,~4˽HL_,t Lbz/THI6V/ޏ]d};T ч䵽Ds1@TmެJ&-VYu"#P\XN$&3)ȉi]gP&K-OC\CiVaM e,)f}n7nI69Gƀ+m(Oe"8 !xފu_Xh" yډh;C#;&N,{:/iFlh/a7bikzUA=g6 Ӄr\[2!9FR$Ќxf] p^=?Ы=PnN)PaHluo\͡}Uܹ9?&l(6yӸf&;X23t H>3BUB0HWE w&z!; D'e?ysxQ-x4فL䒋k%A\$gE'ktȐT.zˢ,jkg̼_,5:tNs%<].=iưh]q5jW1mDT%A-s>xu]R5;D\B .?޵!O S /xg  [; wz1_`]_Ȝ*i<^2Gu|Yˋṥec|) br\{CI ̃]!VCq5]&.{%"2&Mj /Otc^Ac-c :" $Pbg)O~́\Bp>XpQC>?B҂,kn\R:%$*5rLw1zψ"Dy7઄՜1_+q8!Cޜ V3 0d}$},ȓ$&ަfCl7L.;./HPܭ8w=}qVn|.Y5E&n)㕇C|_Kb1t`?"FnZ[M´u `4R`կ-ŸwD:؝M[7#W ~ZXzБ3nB4)ru!yYo5dthZuPĝp /<,Kzbm>'i b)}Vi`q,wXƅEL>(&%7G(e#.D(FZv 7,O$hL[u8rAeNrLƕ-T䟗mYo)4aFuD>4`*ŸlXX.ko{8h,IaoQnځMFDۑWbs'fAzqʣdɷ z3hQ]ƣL(b9Wr5~YC=R|T @pd-e +zα/ζ*u;V@,y/jńV0إmP^4P` 0T͉*93k#d1hX܀y u e&L;%XM @?KL+X<7P d0x+!yohW*~-Uy``%τg7wCn,M !:cY.cpʑ;<# Q 4K7uЏsY?eO$TplӒMgڰу:G*R`@.2o0g栊荖* G#)wQ9;4NǝGV6ҟ(!}h#OLx) m!@/uҿhYgY*dlht3Z}iE50f,HwCS](I >ʨ']bU 3i5kD/WIj"X :(K/SP ۑ :1XUպs(LdcURcTqH\q / DR!OʬX+3;vC.gYqVnhۢ18^)2 .,jFa "ؓkU' A˱?A4!|= ʘ:8괭{tvkFm=s/R6͟4Z33 S[_mXo R#6[5t)*q!KrAț& W u"j]5)FUt gfВJ}u1ޕg>rΨ_Am by1Q" \2Xc}3]@5pYyQ=~Wr8b~J(l PK!(щ%1i/P&*×xD _~vɨ>7EtT3L~)tV/.VsY}% b \Ƅ-}Sz49Ϣ8gn!K3Cf=Pݮe9Ti3=K;ԶRd 1=IBq+ ch }IW۱X$m[sav^eA[Q;#))HR [Lg6^1kǝ}2p9 (P1i6X0h€%9:Ad uA'A'SFS߆f*>FgJm|7Dxz Qz#}}! 6RUk*翋IrA_eyHx&dZqZ"7 REpfZ1L]1͠1JoJe5"eAPd cLmAq^,Ij`kNd.Դ = N,F]%r|SP7:` [d8wR,8HAv[~tA#2@Nf/^FذVLbh5$eAx=QؓXJ74seTF{q!>8oRaO,-)ERu_C;J." F|Vl R"=kiLcs(1,i,jSD>kg*wP׫4+>%׏ftCa҆3ÛDpazD uvm sw9G=Q6 ee=|N_$3k~`\sA 5]c>{TؔWb+G.MCTVDxkc>(e(=W{ک%]*@Qg5(qj&p5V1s[MDeRV(O 7 ^oP56qvlhd'E@8(& 2?Zk̮pY#O4 yC R. N9'%t2ֱH Ee 7=/LrKXS>VqxxcD]3(_zK7u]DD3t[̿Pج 1::Ev< oyslϡegv21Ԣus&={U$LOJEV.mR\-p`aQ_H.=>[d*ptȼd|CLGՊ C F%> | tR~#GCؘt?ȫ# VQj Mbt++/tWl ϫH| Jn.]cEӐ8pF}Y4QE4U!gl8-dfpjӉ ]ȴUM[LE5žwĜq0_ A| H#C8$F_4"]ZH#^-IUғ]r)>.KLnxyg&+d2?Ї $Fva;Ēr:2i"qs>e+Tř.WEu27%N#F (W>f]5,H3[V lM*S[ۂ!5#܊1.<R UaLNU2X7@=XW ZbTvKDc-h&Eհ[O*=F೑H"|YX Uj&o.YařAUvcYѥ(+rāڦVE!R|!r|M`js Ķp䰔/HWWZhR? p>cb$X۪ Ͳʂ.6sy.UR L<|(<% G|%mթr][}"Ri%&+g/cLU`8aulG͋;~oh+kJ lcIbCXHɧ;foi( ²PRޘ&En)l~)7o~ɄB~kci|gHˆliG`gx:y+Sb1*QlC,Bik/l]ɪ2tuӦ0L ΔߝZ{ eE|I[0c0h|NQҗ]<~2Qrrf#2OӪOAY!oJx"\\Vl Vn_ȹo-*=٪"4 il3*{X[i%쒀YV`zwyOGÜ!$;{Z=U,Dv)fke,ZH=w#Pulx(GYg"mVs2o4 *)˸@]ÕH'hm@@j>ShR,u%yrUK/3Vfm^b;/$fmyx:LN,KGJMHcJ&3b a:q-Ϩb,FB*(\"&Q= bBZcHVX#f6\y2F%۫D 4y# R]I6^W:t7AL70ED Y_Yc>܂se͊²結Ȳ|4{m=H~=gи$CfdIe9'>V9i<! !fMB`cSݎ7g!s ĹJ\j~"o00tu}◠]v健/h{ ̫U{7]=B?Xl8vA@!W-=vM;Lu~Ȃn˲WIes=1TԈl`Axyա0Z0yGA-s2sJNEߌ(: .;|V1ݓyXn]yrgDQHKyu%F HqtEs8Ws.3g+w:mdV4tqZ6*+1.:`\~_(z֮#$`p?ptO=KL%ɉZrD}*KomeSIοYVt+ۚ[۽ +zvdHPlLNeUg !X&/76,PG.?xU t[kQ(_Zcrx,q;!A5Ү GCA)¼J|}bGRQ8G *Jr"nmtF*12v!:Տ!$LGi֨i1_uѣNp: εEu\o O,ڒp|aR Œ-nGn7wΧymx5qGAo 7I VEm:vJHa cEl-nXo?^-R#k̓B0ycΖht:l1Sq:vRxa)m uz@Ojyԍ-m$ECEGUCɍ9禴\)h;D^3,[JzuΈS*Q]gISO `.}@WzWpGr 1v2q ԛcHQSB|'2ł*#e~:!wWdqfybpW^n7jw;*ʂ&6" ;$6#shDmA=։b-wmC^}9cR&es;}yPRVYrzt''!#?YٸA?s5d9|ƝY*I27z# ֣ZAtC V@=lؕ&zْ@a$F_܍G* L-1+`IGlkcuc^u}>DZZ:XMƪR"eoh,qSݸ3l'[;Wƙ3bOn}Ǭ/!fqRFo<#M:C'T,y $73ۀ%= mvš9shkno,58r"&n`.\zpÒ&spiAZ8y,%paob붦]gO0R^A,?;ZׇV SBa$\:# eꢵm7e̱y>kRIHX%%\A/ * 17'JSvdžO0Ϣ.5%/aiOi]ܽPM7P~auJ4%ۏrg^ 4$/,yMWשYӦ,r.SD^ -AFx3g}&\Q+[y0sj-M}g-b_^h/r]J<@?p- ["8*V =2ӵwu>1$Ԋ4O4.cQ:#vʨ/ɳQb쿡-9 |5_K0CF][6d?d]"KlDٕ/S\dxr?llW36mq*2R 'A|gYdۙJ@c5FTVxw&-JE5ɠғXnmI$)xvqDjߔv|?}W)  oW gApWiiPUtU Ԅ!%32Dk{vS[SFUKF?; EʗmGl^b/aSNy⃹S?@}Kt(P?1YJ]lvuJ,-#ש$ɛ.^IZzat .Echa $P$d7D0ZГ0$Gі4¨N$VОGry@[*[A>RW ~Qq) aMA#/7'oFwJ?]ûv XNjڼLhaяSYx;kHG=<8eA@߻!P0[vTyF T~`;Ef.2V}7n p,Bٔix}(y5 :n4'oh.]C2HLt~Ʉ- &]f`߁WcCyr`@0 GAr djH oOMuc]l3|HOܑ֋ܱ-4j-/dIZ~Dܿvսh:yYW|VQqf='ŸY:l,xꢗ:HkxV]nkп!enڟ~[g:_DߎJY"cŮ5SC*o̎\aNHŠˢ˸nlqq7<Ӎ(:0 @O5ʱɍz)E5yfN94[h\_櫷Eʽ#wpMzu$AtG|"}'MBVjCnڰ\1m7I1(9AYgPF\/ EƸuɠS% wkxJf5Jڰ<8b^.>Rh~b mQpE޻ܗN<~z<6[G>&=n,1Up t94[] /CjڙGY3|7ؽ#|b(VvO<k'$NjumisVOou+-$bQ9 ,Avf*Vfį9UdS%#jz ɇ\~'?vӆT[PŭtȨ7+&~EE$v֭ý_O͑vVKE &bMIƋDNsYPҬ1вٿҷ-֤3#B)PD~ I2L‚2Ek'Abv6LaeWi /s3~푔AciOȨyy%KX@cJbzfmڿ¿~i.\!oLU`e&NJ.д 9pEGJ ( T2IAzM ! u)\k,qP/nP xҾB>Q1cTGcgxVRG]BA(?@t5oUKK62_{VHf$}eEaYw4ٿhZ(pOpAlhMG$ngyS~j!ko3/zlp?8c&yn`5†{Ҁƍ3"wS8{qOJO#y f4k@5,֔to)DEL) "[T?~WceB>q#g}W4< md(܇.:1(oc],i,\+P`8rS):V`Ԗu۝;U}?%yͩjɎI}SgKJ T|=r<m:/7(]F'l#lSx`5'PxOg:*xiTEVS t)FxoP=&r+x՛w[ upZs)i^/P1oU?1xԟb-ѷC}3h:C!a!(Msq /,)`Ap"Lƺ<`U[}F~sgK Ia3$!mCWVP fgؖ9H=pH,_7>"aky&L*onQKwǘ)tf K>!E i(5/[πRԿH=BfD\aȼ쌸 F@%Դ/A혈uh;roF*Aͷ%akWԳ5ñ I/`ܧpW% q~ T\ {lM@v{p:V0|_8t@_E}ʫ@aqDǬ%KE'j8r=cQ@бz/J@6 kLpM?)׼nr>=~C]d BNsɧYBT0|6ux5}IM;pR'z3rwWsӵ%5@/wA5k&@Xr]>We@_y;f&[+ !\vOmC٪L r>+@ZFբƟ ю1HVϕK*iP_\yϸwd\c0g ݭSU!\K,>J8GM/I+>~8 }o1J sz Q$.,f TÎUzN )VȱZ1 ވrW -SӘ$\]I0uuT wH:Ljwi옝Y`ngHJ R tQ\T?f9.Na]I"55 "'w?<"Ξ%z6r 9Xv} Dȼ d. _ScЩiɡd¸D\8>,ì#'PP=! ua_K+̟v%V[hPX0{Lx͚M6|Z !!_+ leNOOe$. 1ⒿlNrFE蚷t1n"%s M݀QCj΄K߬ga ]X: cUj/mpǘ4LoC3Dz>_t <| 淯g3".(n0Po9aWXthv`0:J^EXV[#8|ρ4-r:N;xQOQhARֿ $B] Mr8x/D󾬊gF"qˡeJ9 L0x69ưzhz%/ck 8Ռ8gP7N EH-|Ԍ4|B}Q*GצfM8LAP 忋Ŵ2NfKOOc ջ*uWn^`>WZľNSϗ~ܺȌUX.2G4L'Z5YntoRcwQ۩ ]"9@"OhnjgcϏ˙kㅮ%[[au ^:]0q2$R juk#ʜثuX !Pn\rm# Z Qٛ/*苈 C/´Ii{9&Uj \9_%m⣭~> Zfީ7DG%ua!Gܦ{J{'aB0p ږnBđK̹mN옔pst PVU<8}%|R~^Rwdc cʿѓN?782|< euvT a~beA713f/sO ujF+nx{FȠYܽ3_"' ĀqnK"&f^W %gJ Av1vDiTF88_z|j^>v!1WGZP^L6VHܡwiUQ%>~ffxQ1yG&xE1 kj䐸F!l)&ő:!\ lG u6mNJCҳ܂a]>J>Wg<`4l]QDӹVIowoMQK3(8QU61}I`(.ﴶA&IYS("KNe鿐?B,L.W-v直&1P|Whoԓ:AǍҟoc?Q$HdoPS9DdM cktnls e+-zs,aOw-,ydNu34J6$#y%1pz|X|)*b 1svcbMjN6^For 7j{Cbٌ .jqI*3o- HK>(!zb >)}C=50o`tye~ZSe^yK M|< CT;.R ặtx[]-Eqy3.CQ *iZ=e$duC\r޺8 M1oL/ׯhΐ„Z=E{gŦ:`9X#Wx|ٙ>Ehy|Pp@-QG eιLy Z~pmyV Dn޻G' i NtMVUtbJxNlR~0L\v(i-8^RA)@ Xr۽Q.+hW8i@Y$sڎ8R(=g`7 A^]->zEC<0TXǍ3ХIwQ<()ќ uAHCS\SS 3Fu>]Hb13vns6x'gA`ԛNJ#̪1"*^ @redphJ edGa>yfa?hE4AB%,@u\Tmm J$0΃BNs\Uay⡓jSvpqc O# YIjLbDfIc0`IW~gyPe4즹1%iDRWyS4tEq*-Di|:kJ>ֿӻ=?!KrnDs րtвB(z*Qgyy6&X &֖yԏ𴾞1 $e pu6qYE$R?j>ߢ͢[ZYS&}cA 9c|$/[\Qt~;;vW$MuEPУ`.=e!3 XGզ42'Wkr KZFAi*}BoW1=RL_0~\|ZH.tOh$/!ӒͬZ#+iN']҂qޟj_V'rM/{2TVz2P#ͩca ֏f ٯdB r֝}DX iŴ-Rb1_Pp =o@i{C' [mx\fQ}š[\nz}\\^)zv9WD#7a%ph@HޝZ0*GzUz Xjou*GfUjTC4sF]mpm= Gd;qwd\7+SB-&x}9>Oy~iH&LC^ ғw!'ĘsNS_)KT)G3y#AT<6o*1Xҽc\=uJ̿6 )}++rԤ=1okpM5oGi;=->",zV\@#Cgl4L2uK@ M*US: &R6fm5OHlzB,SIMx2{' 6by: nݖ7q.ϪYngO@͙1 S٣Z)h_ΰx98A{Bف=KR_B-u-Fj%w skWPύ[gyZ^߱viԟqPy0pyW9ΧOjJ!z$M_^G" &[weKu֋$}S+L(ڽO`uZBUk;SQ`7\fZ$x#ınYMO KH;hAXA71`bҩ;qT{'!@gʩ#T— x9JA3z5M8~j>%hAL?8~)KC,1.t:_Jz%O] .@0n8V]D_:GvOic6 0xJ-nC@ c9@@ D8I+HũB IVG-.7;d1 ;jVǚm979 \#|'+3cB,Γ 58ԡ,.lnnV0M=`s-OGF: !&ӲT;3/5cVI׏݋uRA(36ct5@ϫK^_}uW|V\hRI~+:^` 1Y8]Cp?4* rFd 1ά48$ojՋVkOBhypZI8=}vQv?LXޥIxd"Q>m.#"C0m~꒘Yf:CJB>gAtjArID >%A[ 24jf3ro?}S)@U|%|P֧03l3oqu N"C ݬ15BIImۣuNPv !p%O5x5 3JB^ A+;uќ_3pĢ߷rPbwblDօљ&yFwb vc,5:Y:px졬+TÁp&1ܛ FSԁi_h3Y@n6؜IsO>{DzzrY&dՇR 2nD@KDKuIG[Ӟ 5H3+4 3?P(LyNY 5pxG[fl8i S^bKa;i;~U#~I<hCT:Nwc7dYiOB[Iʧ#IiG>s w8~Ѝjͼ_$ .z0xC ;8aLmsYѨK6FҜC e,~5 đUc4x_N奓CMb itsX|Q'kR6^'(O p^0xy~ g(v%^tmwX B;]U;؎qz5dҳGje~w7jkt֝rH+/gJF2iKꦖi'SƧ[g, N A - T)[hr@,toLg*. e&E-i'dmfR1BzuR#vTNmH?Bc6ŌWi4@/U:|vvCFABb3(HUa䛴?!2B]S] c# nJ8%׼Ss%\~[_e ņ_a{>1|&dz(j;:᱅L*D)=dcH|EKyEo<(L+6B0=ܙ؊jQ| %2 Dc\.ͷZvfKA;<,`VWӃ]apW|5#cqJ# )I56Q YBz:m/|SGƩv`.E΁JUz4W) sW[@V9 & N}6tZ]oBl؃C=뇀.1ov\>I< Bipݛ^7N@n>JM4Mmmףwdcp=ux4zӖScy W ,uNRO"^BI~?.֋)S%-6`^M "[#r 77(sVsH0гS߄*9~JM|z8 aGP5L0N{q=STHvI\KSPò }co}ȷSEbDѣe!}>?7'0$Ŕ]=OϺ F:plb+Z,$7<6^ly5fx䃨"=?dg,&&X3 L}OQRcd9;Գ9֡HM8c]MfUy()F765?z|\*G#= 4MQE^{Ox7mx-}hzyWY8M*myW G?If:EeZz9^)+hL'w3mJ-al2퓪4EG?a'?2](̰v)IwJO6!e|,,[N/`䝉:&]Ӄ(%Ɇ}T\ƙjlMa2nkSB87Wvt[WXm XRy6T:S8آcwNC>T5XMa<H>YQN$B(]== tP:t`nIchJ(tֲ>oS+2#xRX9ӖCgzS[ &0X&O=%g)4WXs3Z iG=<uK?c2-s)Lr]F)툎mhǖ~gNp4Ecjjfڬ+zO^vͪL;ڶP?|1CO[6uQ`J61j4f#HhڦI/R;TL;'BYN2a!fƑ]{(i 8<U4jeY܃Ku GCPXzE/FB`NN7E|.wEbynY4iuݏ&TTpWu[^?2Mڐ' &o0C Ľ2B>P:nMh5[(, $W }8XQL|NcSКET"l!KN7fanaDaP4+3y=@gzTCS,5@sФ_3Q Uf?Hxa%[5*=mjr_tE?Ct1bO_h;bfJ)*\lSj I@qRHz܄ ]4NK_U#_Z. b SlEI!\wQ;KÇYks*YhAy4r=S jIK&2OyD(b9큛fP>,1FBUWZ&Pt~קŋ.JŚ>4t þAH!hM) vw>%s ^TZ`,sll !bwj|ܜ0jV\kJhb9вyYQZ{W8 \_+(]CۜWpM`@[$|޾>xCPqd5jmC(ːwU~Q>Li\vVoO`0~`ow1e%In2\&ϊtV#?Aݍ(Q2l'XPTQ+.u;JuN3Ef8;8Xj2.$|#ඐ&G%|l()RsO/@Nm`E'irzc5Z35llxV?Xvs}_+ >m.S:(}*`)>p`p{HoVke4ApABNZ =piѽ?.]3ںRX^ܜ d CFgo>~Ss˶{z[jLSWǺv®ԝ3 ԻYOT!vhHt!FLݩ(#cec؋RzCML%Dh@X@׃MXXoͶ֐s;@0 wу첊;Rtх,#zU{(Lr5A] 'ٺ@BiE4՘5ϛ2ÑNW8>[Ǚ + V~BK)(0&DieJDQO!_ŦY`+Nz$eI@\U Sj?y.ר+*T{l$ y=b){*y2X7C0lC]_hZQE>Ók -- Lp^|@%d(ںav5:g!n!vF~1QG)goZtIs란B8GlȪK':~!+YԐAp.f`QFFWXn[v'8l^BIfYp?VA-iطMjuL (š7n[ǴTELv'^4~rƌ \#"Px]FB1>2BbbU_3%$L}}5Si+|s"c~ .]s*i8pXvN23g ׍v]3Zi|CFy]QQ=_pA32ZLN! Г6PpYL rG+\R6QbחBF "QQ" =F cs+N?R% 0*QxJz 8X͹#6ߡʄPoA%s$x4"#PJx#'120!nѦ2FTb?8H.mm->`粧O740km$m;%s`4CϽ#mL뎨HR2LQ<.9-vGg N#(̍p6P* SXP26$BGKC6QcqRl}4i9ƒx*$2=O4VZO.4 Kɝ5.qU|Y]\_1[Vv C+}{3Wxef4&9DQ̕sPQK˂T?#?WEի> ms J4ϧv#MTJXwlABcfX_2*JTA?LvbV@j#yPZ0vqW(ܝݜSL[q&g043֝TJǹ=fIGE<LP O7]lp d:x;S,\/\R>Zb Qs0f2*49McZF2EJ /!=iE#Ξ+&'i{BRx\0G &nΟ wqoVjLLw]NK@έo8R\4qZK)76RU@3@qi]qBd{"cA*}=ӅߡXyB ޻YDb "2nKu_."GmzGK̲m{[OE[ Σ~ʗ<(Ő8pR:S`ЁZ2orJ60STyđ`]}O6G7x0J]4Zgع!$ [2̦8nSu-LaĀ.X7m)9"Di!X%Nзr+d\"tX)a Zms(!Y㣇"4Ug[In:l ;44/!R F=Of/`x07-RJ=JpRoaa4dוe q6c4^CcǼ—U-rTv ci6B\@~Ef0M ߬r* H#(Iw|M`a=K>ZQ@GbR߹(D:^Bq;R L^_*A乘Dq1bm) obj\Do,5G?{jG'n8pWA0NzÉ6H0gԠe˧ǔznɞHPzkm , 4*3#v"}pr ҝ3DZ\P#9QeFYz`Z`"^bwA襷{uTQm9@8c@%fk+Y44p!,b9ĸO֊,[WM?hG5 qaZ*96Yr!Ʉ3~ŷ#o[70mȈĶG|wMN.DԢu}ݾno6FGVC:^ npM!GaZ{s2RacPAL(W( _P579 _8n1fN'Y6'!K̑fSLZ1iwٺ} Z$Y-7HˠQ6Nq)9)4ŤvU:m L*]jR-0m*MmgL%ݷ;fHieXwp+Ze]xVJE_PXE]pSM' >[Q*jX }myfEVKWG/ज׸4д׮ݷfVNqȘv+Kf< x6)WbU=4-mI٥#K_Jzn\DH w;*f䃼{<&k-o=/Izļғ]r~Y{tns&bz6Ϲ- w-RyS@#R,_$ #7$R67_O6w7qB X֎^dWdIOHx#}Xe3bDS$C_3*?J#>rvS(~CrVC.˥l < =;?I*fvBQ["aT#Hs(kZtA)1n&χK@̉C-Òo2ZA:f-J /H(`*߭|Dw,#ɻt;.]\iF[Q!kEQ-]1}ߥr i?є*y rQ;7;CXNdw3FBg7$`(ZgבaQng{0X$$kɒ=T! ~\z4ɋh;?b/mpy;v^#L<|cvom95^]5Gk;*baݧf ^BɻY'dm&R.+اS9$ha q9]YA Fj:搤ٺ !֠%㷂.~ϐ{WY~ \Omjչds^&hoIȔ 8*3]L`[i2vk9m||=OFle=#Q]ִnXmGXQϕ Wjg`ao #PZ{ L~cӜ*`T&v|Q ?;JW6OkF?( OƉVv's=+ [ Q㤛 TL@xM|Q%þ31g7wk~uI9\Jw=/gH_$"5x2m ZTrLMi Q+Uēf d(z8VO"52% S4'*+=2bf$X>J0fB bB bX}a" |1BԒ$`%8}a'&2jO(TDEiO*r[{aM0 ܗJb27opR2wmY'$ޅ9E-]Kd^єz=Ok4R03<:#C5Ts8H_<{sr.cTk@44C35_}eD&Ŗ+n&Z6 4lݘ2 3E8CfFb:HA#fM  %iҮӡE4Zg#R}@y<"C`O+ꑶjC*xu];=#KPv'>N;)\W5Dd8^d͎gs~s3VHenﰱ6OPoZ}x/=r1'J܇| (i7;t"vhdzJ:Ŷ]tyFKfYH jg q &]2 w[/is/ SVVH|iq-0$x(ę)\Κ`QK9]9p~S%Jn/i1"vn1> J((yO3`w&ͱlY:_ʦ 䦁%-a'h\Hﵫo?}5yCjo4TmV1ni'OvAh#-=`_d2^Cn1o#1C}#AsV j\`PТ {Քwf+omՎWk/X`Hp -UӑJL8ͳIF 8.tߗ_U5DSC$gwuz.L0"6 8LUnl6Юdبu44zPDBLܘ$%%M%5,f4|Z˴%ϳD~|"4"188SH¬4X/M뀶DR H\發)8~L6>s3U+~Ldѳ(?S3BV7" h{GOxj,_*ă@(lF< D;P-g!hժ4Dc&}p8 hFZBpH(Kt]јߤ"YM?Z{ ;>='j]A_0PBCzd?Hq7ڎ~(A57<~h,ߡhFRk"Y {ąl#V'wwpWY3 WO.IEv6cu#CU[\I(~~J1Ҧ+䎜#lv@r i| a"asAcysy/CH`+Wb?DXt?|k \0x&K>M_RJXI1>l؂_O@5ӣ$L,!T7^至_5 KϞݣ;Gd7em^WwvF t;8P|΃8aWߣ \|dӟf < 5`eZm(\T9l!\!72Pz(ӈ ) #&DE!b!V%|qĶ^e,sR*3 ͭ?0ucc R)=[{a, ؋؍ Cޫft(-\{:~j<|?zӦiwCEWLᝯ$w]@g`9h: F%MHu5Kw+!44F%$X&&H㝳$ tl2.4`P("IoPA|"4C:UpuZ)`߈Jᶔsg8q;*O7J/S~b5%Uq`g7Pj*k^oep;}"V/f8g.XM+~/fL)<:HF®Iúe~fz]dn=7 sRul~ 0d,v pZ 4~<^$g.:ϏWuk. >P\)%}QSv_i2z. ЊVyY͜"^)Y.!#@2XnS.Bd0JD؇2~|8B}EV!MYU`,PEtƺN8s." BdHb3dFP侪4%vTCO\LNYrh+Plך%ˏ ZQÅxp^&DcD ÈRtDMckWwg@&JYHb7FNuLwHvY ,<{xbѿuwlb7g?XFv͐2?(żdy ߻SA:n3r$ֱ]2_wƂn=MUi:TF&bN,{ 0\{vn_ғJː1K7|l-BauAAi3H9jBt PPnɰ-]XyP0";|v?smI ۰-$S/IdObP$F̯qP]㫛Kx.چܡaE^dk*d"y lOQl'=] g)/ӵ{2 }\s3PƜaHy[\r˝*%U,vάN iv&A@ǭiע{C Itm+j0H~فli"DqE, aQ[vm70ޘ[sXpˠx8ba4]JGB%T_biV fFkBi҉qj\bO62b ζǽӪgV#8)%Mp)Pڼѓ۴"C57%x%e3xZ FNIl[3S)}C?5GkT$}bhlJqwPR==/7"!tvp'qyËE81vz+\1bDサ6i6g1,.0ufWPnSeǫm )m#謲|Rȶ} 3@v ++- y0@mlLyMe|=zEW u?'zZ.YF W.Aav7un!P#\ư>YF{`Ϥ :_n6r @o8uqIh l,_*&d-t,/ %:̩c vPcdߤ[su;rW\ty,Ž_fҖ9ڪV lcC0u>J^붗`[4+\z.8fFS7Q;iQ@_)#V!pYTeB^/mZUx7N^ 8N$,ˆk0ؚߕ#%)-Vj?Q^n)fU:R RIkӔcHk4m`v-^evs]Y[ՠ3Bmx[[ps=YJC1MpuBGh}(Zy>mgt_v8L$$θ LN\%×x` ߟt$/{bMbz#RքKfR?& Ьa9+lxT1Z鵝ID/Shƍ(ߟm=Ӊ1)iFuZΛ"RAiJQW{? )IFf/z^D-vܼr`ѣnlD(J{ipZOבPĵu:wPW-™Ӌlߜ<|ޤa3m ϭȟ}/z}y~|oOϲXh>&fnxdQGn "cgWӆIth9>eddmSu фS\M]brEܻ%0*WC̄K+C\@6PDNOݨѵjމ+Q N|~@ K_'cvsȽWu;rt,㘫Nu)Cq[~$rɱl{aKJ_=IzbG AaWC<1 Š0d$u(Pҫ慿,~ ݭr7,Oi ~ 8l,Ap~ÓC 鹦`A hi횥dܠ5J._BP=|M߀=Qu# Ҷ3c+sLn;?i<@C3w5lW|Kqˣ@W0XHUyKIw8vCahyqIaR.jEdbAIjJ_7O W[ (xtkbs;a5;4I]Xwn@}R1x \\mqQJj."߯#$.kQЦG㐅b->4F =hMMP6ԝ|:vj ,O]VZnQ`Y\3#staAZz9 F9ߚ5ˆPhyJ]$qJF1vU|-D0_RNQLv|4EšY.n0 QOf%0^]:&xL?PrwJ\K\Mȯ( M-Yꈴ F w-sd<ñbOd/dV4M!xzE9;=qEٓxѰϏ;ĞuWƦagCw ^ѸN繛(@s30]D[)P䅥a`nWI%>  9$y7/Hr@>lY5M T. Bݚ!9 d,A@Pr1yW1@RiSu>,z:gK(9:9"OϮ.x+>//5FW^zеDLnGW:R ƥz7R\mqpR* {mCY)ay.Nw -|yD2Y"9xeNÎ4ot9vWr#mձcX3=Z>y7xbZ؃NTo O\~bޢl]b07 l=PZ’["iZ=L֪CIFW| K:Rubc!$,SD̉A=M$`0zhj֦@-/`@t)Y:sӛ QSeqnƪ6mYKzZ+t%)x#YZ~(eK+X&dc+hƻnWXo2p=}n)<@4̣C; VJ|Zw,<5<@inMh'uamQyDe< |Sw ]G Vl,M; Eͥ(10INq^7DWNY f@%ǂ/L~ tmvr$a-!F6KHFN[wqR_CHD^&^j.qRekt(r  L Ka@Ҙ_D T[VQ1~ ~iJWޕm8g:rÁǽ|cG&pp;#c=34UwGp}e__ [h4;}O^ǰK:uG Էj[:D_K!zB"P_&^y7X4F ZǏPe FeTF=ۧBQ$S'Fg3Nᑺz}؞%OIF<}E?Ո;AܨmԿ]SYry BA_Ʀ[K.-6umDV.xSb8f1Yܨ?GLb1ߵU*r7 D41rdJo!&x,C^뤵 )L~z^Zvpi&VU#w z~e8QI<ŏQ3_$ZLq|*\о[52dNs7n?b|FY)ə8x3+.< | BpVQQ*^fb%"X[7~޽} ?dkdB@mB~NСɤ-qzEz с:G99q-&^Y_rEjwkM^H dϦ3q0jڜJ$?DKнӐ/?w+!?j>sJqԩ#QJ2J#GQXf5͸ƑwnU9з͏ OE W)X1cӹbb=Qt~dj&p?SZIsD|!%fv8;{-Sm: h6/fj obPiV[dQGEyt|w$Hq6-&ɜNTHD{_b/;`|K0>s=M.X˘))XunZJ%9aS\J #6#~+~P/í-Aթ_y2G[BIb"0t52"8+4EO]U`9 )qqb[+Å>o KcĊ[T8ҝ_Ky_fIq0z!0h JWSUPTW>G6cl}cLrc^*{zY N\laOUbcޥb?ܶUHA-#+ebJ(&=CA5=q={diQBV>3]@>qJK\y`+ ;LYneS˃u8sMk)!",[l[l y/J Ιg_}݄44OߝTtRtrg9i3w'8J?,H"p'W ˵&d 4,qUV?Fi!ۆGk" *?)uHlְwKR7EX($+:kaljOaZ"cy;伊{L<<8Bf Fe5SwB-ty u$VGjnS.xдmȭhp9Q%_wTuC0+_)*]]mo)X)pT@˳V@&wAk'rڻn*R}ju6HGFWzB OL.P+PUc3y`?ࣲ`ߙorf$-5uURDhjq!I#UnV%yOVjQJBoC |NLS+;igdGrN]oOu*TjZ*$C9i:o"̴36prQքTqg6GCkgr*9Z `c3YС|vt7TT6\=jLm|O1ՓAoVZ7f瘎 hJ-wЩ5exZ/&9CO ̷X##É wZoJUTH͉Npp1Ҋѐ*Qmha1pB%_ ~uy3_㞖`ǚ{^3{>>DLy vԄGjŭxa8DQBBPE{>< S_taYV7 c˙[$;RaQ'EYk?wj;qEm+5 eRAX }BI$6?˱)M2 faN?`xR9*1gݚ$.TA-Z}{o$U]ܢ=m"ZٛEb9?LE~m0?rYէHMoGFlZTMhc^3ͶsiA-6uc i ]Q`s,{B?)R(bL;&RxfY[s\BϭӪhiV%a~%q:*6^CWv4H*2A9zf/1<|`Ebw|`cZ6)^t{- .n:ZyI+݂kZF\;YWlNqes, ߷*Jqې$T,`}:}wS/ _ҋ%vcP/.l xY6ɏ YUG8I2L:Q9zŇ+°kGJ!/wԄ[9~QF-~}$k%.hA!-,ˏg{&&1@Ԟ6uec0@ an:k,ځprQ(NPx`}E]?:|F34&]c@c:&_8,wU)-bũ:PDm;%hcNI_BՂ^ҋE;6,+t(RVd2\vc$=]mHL F3?xDdSTN4pj8A"]/~v\qeEPfYг*1/21%ι5g+`Ѕ(tUt/&_xW>b!7=bPm{!DAmY: @ NP7&;t dv.@3z-3U?yH"LՂ͠s:c#\Y)*'axY㾰?LRnK%-]+ &pKDE\>+258dg>;:Z\@W&Y"s/$LCM88O])ga::\:r%/F?K[[)(mVYI zi[_oPsiO,2I?݃@d48Tᵻ9NڦހK+00Q|` v='[:0?T!'K'TڎLRJشfI,Ul$DeѼojGZZO;/6?.YfT$>9k68$?ic.LoE ]{ TGQC՝pZچmc\r{UG1-{]6DE0kقp?@ ʥ/y.C!R[*c+4۟vFe*Gh-Z$ڵ|`gJNvM;G|*ղi5![Р)pjIo8Ya|9Jv'=7yǤ|{DGCx1F8,re'%%*^w7+2ɿvЗɕݡS ڱ˙F`x4W@ ]&#sRܠwvq?oȹ: Dp1GX~?)Y'B&ӌD([+k70U-mZ Й--;X1e Pp>feh}3)֡Iş) {QG4~g>kЯ8z6$4`&o<3OX4h*R1> ^p_l@jJD؉-/?-Te]^ܲ4xt5U=auqq!/ak٤13>yN;ӘF9nTi GO8_KiFML9ƹQ%7h'q 5ZBVrMs_W+R_*HUAL}/f/NQ\ô Zf/:vȔhh ռ3mG y)g d ت/ ;jKpw‹jc!~ 0aR|f9]W9oTjlMFh};ǝdLhc} 5/-Us*cݟZ1+Y,[ HHODaⓨoB%P?7Td8-O;+]S!"١C4 7e#Bv Ь1ʃ.ʺ`2R_`Ň ]v% E 1Yw;J-֓9Z_$q]t﹣I"f}44V30Hنڱ+\= HV@{=U%Ӵv,^Jㆦ;'"n\n OVjYb)a,k@ A Kap7/tb4шqܮD"8rci"XA_*&&=ME4ٰhc.E<ò&|o0czBM H.XkN7rⓆEt aۛ0U89(W689]C,#Jf,O3u/'#!7?kg_;Mq$S+b$`dlggl^ҚNJӌuWqMJ-˄RTdNu _,;@9TQUnj ?b_qNa^Zp, m/^0w (Z1!ުybi@A(H3NEwJN0\600'ʰ!;;R3"&9 }}b]E5{5̌ #G5(2.DN򺨒4R,ܞ# pT.w^=}_C݂lUPV_]dԩKrs8$*ti5pƉtZϜ.z ԙ,{TS8;;D0ܱEX1ڣU ׿vO׳|ͫk0T8b$0V!,6;}NƹǾg""u%{g:(HɃ1]j{qG&.;Gd|kh8#F:P[|@^=wU4t4qGjW6LU~?gfbsb-Ȗ~Ojw6Z_=G`&A~.Hg@:N٧Aoba1v$rs2(, MY6)Hlb}a5*%RЊg1,MH1}9 "bp8Xvy䏓MI٠qLVryoȕX]NΧL sF?h&/$" 7fS] sMBpUl+WoA*JVbsNvNFܫW',5wQ"BOs2fk&ƹT*(\2&zGN-x!i|7tM/W/ +}S*v丰pO[w3_lƉ#ࢃ|UorwUg1W}v_5ȚZëZmR̥1XŌ%?ezGn8edѡis`=F:ݴL !Bt(A,+р>uJ=#oVԋ\Ta mxC6/Yb=3oiw Mg+bKlg i V&F_}#nIՔv5r;eݜn߄HGS~X &>aΝ"w`F%Dne1*D[%ͧCtL ^ʹn*:<ڨusXb[iA7Py ,>svh).41-z$XQ](d[ Cً4$q(飜zKw\f`54M}8˄mheqF/ƁqEs[[QN'ˬqdfo֐fGd wORv&dI}1:XNvd|0aj﫢?@}Jy+-  C{`)lqbq6tU$l5LR2dSy&n̦ )-GAd<9UmzŔ_7HxH.= (?k4vJȒh I*e4=Gtwl' Mn˟S>[ac2;I# qZԨ%ag'RF\͉(COx|2.Q'd7tu{` ju|5 c1s_S/"|LN#R'o hl|)ݳiv'p>/ؕ K@Q'A4 op~݂9(xx\^OP`Y^Լ|ĹKG dlӰUtYFC0I5JVE188YZ|zA :Zj[>P,Mt&B2H!_"r|S Z+3H'՜7ȷ~OkjO @jEI2g%n%nߥt/ʿW| -H<yQQb%TZetP.zlWt3܅u:4XI:E!s4XA6b}mRgw5`j&t[+a^8+Pƒd& Ljhs-)7aHzCe`?i^iEL #PЖ+af?Ӫs TuWOĻV1L26k("NB(n"hXSSox^R<7XjU836xUX7qI "D B թ +n0E{>:rUFQ(}\tX jl/o!EI/)X'72Ec|L%(Tw@|ktmw:` b^\r-VD'uնރ1'79bZ?>xΨtjA">YЕ&mNy~S[ǭis"ys d$4IT' e{j6F,^5 jBOc|c/VI2Hhՙk%StxiEH Q"H[b}\}&$٩ -m%m:zҢ[o-vB4@qi7IArz軉I3O 2q'? _m}7ΑB{n'θ"'h݂[/jJ ц<{PGGbSnw1ՁdP܋~zH ݁2yL5 &+֦'-Z)ۧn*ᇍavV=X8Qcwa`#5Xp2?ۚ@5M F x}d9̦Gԡq8A yk0֝lpoNǍr}Ó_!H!ݞ~Axl7;]QJy3FǃEi~qEhivǵÂg lT2 G158b_H@3XB <tĻ+ -?Z\Mnlj{)D'rx66:|!Ng3L_D @uNs+1Bҡ&5RZ0imbX-?Eˠ>;(f^5Lsl{: .Ӟq-*k_ϱ̜±;⃯}i2Df} O|vY+ε_Ē&CJĺqTyQOcf-vo6gw_ΒuD4~ 80sg:DsFuBItKIp;qPݣ{{B@P+Π-y%E\{fJ@'5Ivz~2.0ZL.8^6&9zo,dΧe/lc^&n7%zXm- Xt sFE fɻ6Ze)_Q̭4O𔂪;0G ˼9P :)o * TuLijǃ̗es? _FϨw<7M,=BGėBL08baR¶!"ӱ\Ps9읎N-n,2q蒷꠱,_@U"WFDNR3!͹YW,8]/W7"AVl5[#WV:>mEC0Kc.&j˭B䒿6aB'9nAh<\s,% v j7ow'^.qV҉[td(hUÚ<¡Ꙅkؿ.E]6+:6)O+rE>z|̯L$wݶϷ1ouލあ][Y>jr窑Y@?viDST6IfXO+ π>oK-@<åRF(pTY"R̵+I}୅sH/9jGB_q%mue~{d԰-v:-M@eILP":Xl˰ړm$ݯYt׭&H k^T|{n DCA(À;H:E) 1du'(#ɚO֣ (0.JfkV̖R& !\[qzO{ {*(Ɲ=֡MT?I\k0Rkf:>X=+4MtiCMfz{C%}񼞬 ]v*+~{8@MekIz>qbWv h4;q{'_#-ˌM(bc!hvUN c0"3Ke(+avG%ul G3erԥ4wl7sɄẑ9V"6d< 5M>|04M푮5˿yKy_S7q#%x[@wz<p}<#j?P"n:J5aF G8(V^Cgnw7ndk4aܑ!i^;UT8[hq'#ӺpنSif;9+3Q"6RQl\Ҿ5o>ɻ*z~$3dJqU +k$>i}L k_@sc )N_ZR@GF:r3] ÆDPJ[R1t@f7n3>\ ٶX 2(e񻹕 [pσB qLSR|E (o ڛUPh(B:tk_1|uF[9YHYIA( 2&Ufm-N+$ _Tp=uSJz@C/] ,oP+3 eDDˇNJT>0 A'Z6a} qHȜ+`y_yr:%~2~gp$*+@8kJz嗯[#Pפa^H꼹M=m~H`ITpN`[ МhvXjӣ/1k-֤)pH ,BOgFC P&'-{o۔ڷaj́Jf~dk~v<#S}wnFMc]VDET#sXbZ&o:Y _SSߔ,a}O!Ш5h]:4m  (|S"r\]PAhQUãOgm*#(N FkhӼCD9y: oF26 B6Ϭ1q ǵl %ohih9^i:qͯ@*ġ nf۪C^3qU|ͮ't(.iT {W6b"X>H r!2.ު XJfϚFV3MHX̢jD1?־p@Ka=0k嶳pd¾`& ~iyYR8nś[||#'0٤IEM4*!tBPۮtщT:v,/78^x`}WVT vC|Pl.2O{" ǙջEӯetąyaFPU3|t Uw9*-øZ*a/vǔ&U{(d)[0t`3{J҅8Noѧ(G˹AޛFH?iP"!D01[` v\%.Z9v@PUTZvÓpXB.n3MuZ{Faۼ;);'1؍>Ђ>1;TKOn>yyxEI uMHٻqJbGԤQ|!IvC䘻Xqx̺%W,c^_ApuȺ"| :{籪+ބ{}&OGW-cqW:Ȋi5JvwK[ỾrbSKBdTp:e{m'+F]}3xINd7:V_ dzL|6AM1 R].b|t:IY%2ql2VՈ5 ֹe3=*=o7c$차(FԱ"Nvˆ j|݃\J)Idmsyb)i"Gˍ,e~=")&8^ ]2o~$_ܔOlC$k'3xף޹0fr܇\?*gސayʝtմj KFyl"K(]itmRX7}[>a{hCP /E2LԎ`w.ҍ k/s6h]BěUg|oPVhY d\Ss#qxKmT'L?},Qt>x{ Cnv|ұӍ]@mdSE!>׬q#88aLX*(@D{,)cPKΈr1X<~H9vVo:`A1wLNEZĽ=HB4e#ܒ=|r ?ӈ5ܓ!}v]zW[Vn̗z|`iuדs:`_Pv+RkOQPJH, we ;4WVmLR 0.j)u7-Pxb,̎cMGtܲO}1$Qo^c#.G%$OCD;H10^pa^Lvd͗y;hAqsRzq7ԠЗ @Es-Aiǫng3q3NI"T7ؤ\!q!ϠJN(EW"ִ%uZ])KP6VK4CǤ8WxN,\;zðZi^O}Lu:-CR{|mXTw;/&78m0VݐXOڻ;!*v \A*ܶTjBDN@U{<~@9~v]0oWxID;:?*-]nclW{*Yxt̻5EY`ɌNk>\T.bL% OB3ӰV%;d'Z?g z*{8`jCY3jWg'hZe-2{ 0n`#y!*.Q#7w HzH:'ݫCs;ޥIR)r,#`' , RG O(@_*%:q"Rҩ'ܟr8Mt}ةd+|slvWzî",2]Ғ~] cEY9=ufsAƦƭ.ka6- W_0ƹ-dEf-X8gFa"VP n$_&8?VthKŹk^z 07سq)&=ۭ{S@rUoWe}LDќ!u'yG='8RfL ƖVl/! b%_YN1w>h=:׶iڎuTkm'^AoUAbsH26 r*+wYC֋XqB VWVXm#_. r˽Ek|rCe$<~Nd9(i|y_bO% {OP]4x$mT>q rK{zþxM?p>tyAtaгc**?ebcQ#H@zɲ^!;(C_!6yW"7z"M.'0mRv^ @WMs/NB fypev#]XD^qH>,岓C)}UbdnHXK'io(T:r!`f/CnvyY7d ٴ-J0!~mjKS>-=.XWcJ> }Q57N@[K܆ \dX#:0ۼbJQ 4hB<d?V y}?pb1o`Ռ &J/o{P8^*_Ȏ\< @]pqYf# $EvÞO%aY+͌FjβW`|_y]UjWi~L5W_l&= '܅0.XV5(9p(b븳n?%:\ Mjƈy{Z7IP3튮ޖt$Ç}RXF+lP4E9V EzuՃ> K<肺"ݮ*ܕb6rfD0~5jkRG՘\*[צë́u!+]x|1(+bG]R:nFJd+LZuFgED+eN:o:X -5JDO,w[r/$̭xԳtNm1@~ tyl/[ڱ*P!iU GWQ+ 0.j( ỌK:K'~#ߵ#/AJ.0:@ۛRn$%'&9 Bh x-b½5pbmY&-L]W+FTM~GUCJ]ч"jð $MHؔ ]N*-RH=D p#}n{%lj hp"!q K\ݸ}vwFdf<܊ uT`4OWf+rMuZRSs}p*Tp6s19P j"IQ(&&j lDC sTt$|lT5#q3G̻J:@AJ>3Ѱ>sn-7Q. GR]_&fDަDsRG%[@W0e$M>@U9\<ę,ڭNAj珖AT erO/ʧ`ҮXX+7 9sS>& 4>ᖀڽYfBbW݂ϭ();{#`Yߪc6㠱\'} 9kH> `s \@;40ύ2eaWcߦq,|S3#.qsLj ཀྵ͏m&wԒJ,5ts%O =9&y.fy")ÆZv53AN1є7߽;Eiq6sD\TU8vk>\Bk8WV]ȟ[jIt֤*eZf߾A2#5bm4M+=Q~b^)SZv=#K$|UC@nbf+? 2ZaE7UIkAEvV lx1j{n?F1[ )z(c#^Fz+9$\bW\NAA!!J% B50+w;T-=xܦyω8T:;8ށ-pU2XDzvr9BHI,8гȹ(eQǩ>jTmLNHĿs] %G? dzؾj:}[o%mDyR] {kvF*usZ6kDL c!d6ӣx.?rSޱ\ê'U:ai~ڷi2җտy.Ʉf|+k9hK/l}Я34sz΁ 6 ~Yt[&6N䍃{#wGNMQ@p_x"s[}pO{EuW]tI1%Jfi]vK"UDgb NQ#id[J3VA\>_S f( IX|zc y e7ean77@'hzlD2`D"Yz^s$2%[-b>й%ߊeE d/hCr,HyE默(eV!,QEh_i+0)r Ր;s:z[EX%` UD]߂24vC\x?|M%F:4OETo.f qqu4WZ$*%£vL"iѕ]*] 8>-@:anQyНҖNvcy/ѲJ 4S d/ X<:\Q|68fYYl~= o_#dŋ5M{¨oDw|U,vҏTQ4?}?J0Nq@ nQ0_naR8ԿK-V[;eWKI_nZe^>5$[.up@Qͺ[_JBT2. WTx >`B}ꡎL,t%fG ȩ:ms]F nUi{(A;)*@{to|:X+Y1 ;:Z:$piUW@6 K:Ag{`MYf[Gvd;}>z_Arau-'jDuK!f|}@a;7)AxuV}aQ`Q/R'^ Sh%kWq^[령4@>o39 ?ncNA|(z|QLf_OR-J۞vdoGso?vSvQbj=Sۥ V{DMPOq /LNW/XTKs˭"AEJ5@pZrD:}a@iQ3BGSt&$-vsnj)p8GqDn4;յL.9_eJsAve-0D㷅%:G{'CdsXu9r {)gujIO5;?<5>exz7uy7FlqZR L,ڰ\giB>ty/&p[`-܅(}|ޭ`샋LVkYxe^<{qK#]jC1#YZtA-9>JcU&/3U"F+%baFv\Y[kHE0n;?77jcjs,5;:;DK9\h.BGa\g}*1Clt_C2 j;ޚ@DdF=x f@x \ ۪W"bh# uKd|K1{l,O!旗1nDzyѶx_UbD;ZpSHǙ޻! oNC/N0PG/Q$:|c#tôMYy;VCxbV}߼Lu}0&}k Ƿ:gy"]&Zg䈥f"s\(2SM'Ockw ε{an};OFP7 PK:.gU[:kӨg%V|O *4e |LgmPѻ0Q ٛ_>dh ̏a3uuHԧp>ͧW鯍gDtm3yfh[-CK\Ly*5veQ{Wz J¦?U~2o\ѽn=A2|X I@\tzOT]#@SFR Wɖs7RZ#Of77z8<6egu\m'}Rر{b#RP_lrkkKcYʚp@Hw&<> PrAY_s8; eYY^ʃ-yRnz\tmZw=X"LNtqSQ"K̼0ܲR!:p3ZU~&+J/yr6+O.1?R_!_[Cy,MKjvV2I|ũIOƀ)8&ϽKt:ˊ AZv|(.]l/,5ۨ_.12zѬgGKK9XD!/Ea4" Dm冭FRX#bO ӎ /I,;FL6oΎ=fV]:e%fs=o\H42Ew:FVog S6B(g; VWw뤄Obgyiެ4əKN܂#!i"JZ6#Vx_v/!2i[gmsuHO4(CqfMNCī}(pUlKZej"_keX8B; 3 R}W`;qBV=MyQ>Pb)q3F/FXM`}#"Wn__p~U⚤y3ٙmV~8=FZіӣo_M_733 XZN0__Dn Y hCiC\DGN0.F 8sDvj f %@{qau yL-2®<aU-pگs´(HvKcW#דcԣGC)ۑz(IoPVDG;q /%eа\H D0c+p (j clJPYWlD\ 㥑s -Sds c3JXvZ_qܰ3 #fvrNf9dj L wb/dLUk#elץblgSp6`CM]$Rv0)-CXtԍr({8 &WfdR{KWSmI_:3c7yL}!&c`Ŝ8:WjwI@$6s´bdU|f1Rsh|nh#&Kw &@a219oEj ^|EDv1 tYje2;J ] W6}W8Z1G.$=jƦNqB*E18pyߕ:ZZB"V8N w< e!X/*?@͵X ۜ8Q2 ,"{,l>N.><#G;+@=e8&MEE:d4y7aX'm&Im'Սlma/>7[;qfB+y"Hwc`Kn3̯|¯4zTLB% 몣qպؤiHH4ZƦ4+ +7=P$ ?Af*W-@I}oJTTY硇;ݖr@7x({Nٷ)AxD d_DMkJ˺0%{[Ǭ3* ͉nQe?FF5)]t}DžM #/$w**(|w NpG䑏iP+ZA|\['ͮ22bD <3$~#'ډEM\hau-ķK^ԥeו^`,"1TSn||b?Pr߳r%hV Ìy,WⵑOxL12d =(U_  @&I~ɋRdͱ%1cxIG}_n9=9;o;ޘ4ߧW~}_2A#껚>$ pbyB0C~*FN lt鑼  : ..7h>h&.J\*"#xfr4.T~?{婪;]u^`:֋]ʸаFncȿ|Qkͮe M2/\'46Y3vąM?u0wd6&4:Z0 Hʣ'm=9Gen*AL={[h'xD#Q qSLeE"WQڬe0xN2K*9Nqw: @ ;#O,̩Cpuݡ!X ʍ1;  WCKw xXf{Bn.Zj}u>6'g@"@1荊5,mgA,:S0ǜ/4/un}vn jgAQ?<~''yR)2*i :N?z] @_Vhzorv`Kl 49 }!72) dk5,(H|D:|oP"QFU'91ꃷX]R>dn_},u?jF%Yp[!Uȑ]2r7([.!(H۲~nCrL@MQWOǗG=ipӊ`OR[|FAx8KOGk+T?:Gw8o0G`,a`['ә'xbv <{ HYqCpchC&ԭ bÇ&xjM_Vv'6!D Pw\@?qеv \9IO/ܾ{r߄wdd.-{f -S@%JߋFyỊ?;i`+I(h i0[$ V(41uDaģlMiCڍL\>tRPE' v}rջ-۞TPDŽס)E/e%[QSJ#-)U%&MMM#E5_FXZ+1N9c;U.^"y?ӓ?4o^1*:Jmڟ p(Os2oOȼ)OK͓84]6;˒{؞R lX9;/u]i9yvs {Svf8BQy9OG oOpfVku6eYlqY8krHvb楓'4LOi^~&iXk!y}tA"*(5/ $呙Q@ o卛݊?XkxE,_ 6gކe^y)Q_z(׋HM\NST2}xr1o$?b`)TdѴAfEj  \/jz+U `%p.TW+GG8B`q'8-y[\f |@t>ad<7um9|b tY LNl0)"MjȒ:[AxY 'CׂqZqDsbT"Ե°WUrbQHz ${q`-HLx>=P#s+22`=a@&Bp{44 p,k]t$K)x ɺx|8I:׶T k6V!{&U<2x&8kȋ@WC#i!r\2 \*_dk `iGtuZ*)itZAS^WYe$cNyvl/ڈ:TH]aEw2_:&e/[zҡ*U7@tgnǙ%$_IZĺu8YB).|R HIR.p7ׄeOZHhI1sr+wMkSQѷG|E>L )dy s2$:8OAXׅ rZĀ]3F%yW*#$p IpɃ<od@,J}3f/G&u͉L c(8-SBN5*DXvuH9->V{˛Anq&n ;6w]+/"C(w-j\xJ-5gα}k:Bf8u֍QAG+%-T]xx~&>Ga A@iڨSn8hcʁ̯#bnVyCHldmMRĬG&1n]JT!n 5Bk(-'5I$%;0bՋ87e?bREgæMҴêl;Z 4j-ӌچ+ƿiKH顉܊R Y1X8f\cI׃^)z)Px'jƛVIzHX-<Y"zns/yA]E&ݶB'x}c͌ 'r;?mbVqtVjOWT.뜆 `GxE}- U`DIbGMQݥdt*D:Hu&l8_iO&miPrDPՐ#N;֎߅ j3O @7J<#H$i "Ñ -F]!r\OOI8B)S:i$`i.|L7Ŵ6֗-MbuHGwՉѶ+gB1(6\՗cFƐu[.'6 /0(G%k<\x çНێ52TZV[ptg[|{" it%=-[<*m .)FjQd1UE^Ks\]$( mxQsРVO m4ZB7^c6dڟXqD\"٥ݒ9YÅ@Y"[&ʙ r+d!Ij Sm֏&[(0R`G"i׿ms(ЭK(uy 9ltihFIppeʵɺUtU/sbs٠7s)V{½!V-:E´Pԅ[ _`P…e;i:S8\7҂!CrK!KMv53W5\'2r "SC:ۿRyv1*ʐծt㨊aSP'*'n0L'UH`fUD AߵA({ڃz^,qZ&(9<\*Ҿ6L2$eJ*P3$sk R8YAV>s[? /IDmq㾥k)U¿Yo>jEݰE%+&21%jazF[D@FB%|jrrd LChk22,9"9X؜V X *{wm= ­\M. Ӝipf_ ᤲ.E\:DHOm[Hٌo=Gҋ,ݸ nZU`kf !5DG-7^Mq`< =*04)k?y`1Јс-:\6܉_mXD}씇g!ʵvꂢwhߗ;D6L$*I\d (\|kJqٱ7h@ůg_`𤻁qSG}).},¬ J"B*AV6kȵى,|:J$3T!mr_0F,ϟ&)m7RB3\%Bo9ɂ'IJ'q{H/NG:˹G2s 6-SI/WLia"UiWJztfw{RWwGo) J:|/OK$;'#03>6 QC:k nb?IqBmPtIl4.A5Zs'!ڛMQb42PK#zo>+G.LicuB}2wp#)zz UTO뫆 wznЀ~vXv=O9EfdK(*MNl~h:SGf$q4non.ӌ0xdfUbӂ+|ΊIU"jUV:OY(gR.w+|>sG1.4n $)/Ih?gE 1>&$hj>WgZѢP^U\YYo近jxFS wflCii@t%1IϾQ[}?/K\ QXS7($Zu3X~[MDy[Q0"?K?L<294 &!5n: pcN:H4*l'Gk[eq.a1cHNypd<&|N5=wriEi NI+T^; !ցӼڤV{6Q-)ĺ#ڠ^vmroL9[;o@IIM%oV&1UL:܀v=-_K-x5\>ӢuKĮz b\UM5za64Ց4氹^FӎX rŠ<%atWϧ9Ѣj J>FBWK+O7Z|Ka"{Og` MD W[V "5C&44Dal%f 7 .zM\8N\@A! n,x^=ˁ٦բ5E!{} +I:luݎ4yfl꽜Wك_ҫ8z8`gF NG˪\)u&PU,Mlp$>OiĪbфjYEdě^o/i Qub|t2@7W~_Ql6%4?^=G(p=\4x_+$23cc87u5ہQIfʵ]ug7crQAFgf.nJ19@b)m@ 4U|H5[&Btߟpv<`{OO+/{ "KE#lbF ?bg*z :PHӘwGuCmCXa(Y>eK =iP?\<)v:%/ۤU!{nZV<F$$zy Mkr bAuz^eJAK1Yr ɮzYe{r󋈺NE^ (H/ȈTCl<9Dw R[xXZĜC66ϡe8Ju'F6ݕ H*B:S;l&8Kq\TJ^DF&iH{r,DPX0bVzT~i$zY-͙ =1l ˧?tُ;|Kq'"||Oir7PE,~~sL n Lܬ8Ъ?Ш-dS|S8ixu\+qJIE':qV)Tbe0H?l(JzWt1'̏n6 S{Mb/NBu^rJE [D\Bbԯ2uL.3?FiKX0fOUNq] E Q@V n+rZKdc8ecR}jڿOGv̄d nkn*/vY+Xfެ<]'Fh2cOl^N^캥CI-:ģ'AԮDNg_2selOYNzf埮 /)e'lfiSfaYML̓ͦS 6HQНƂﳪwJl ^M8K|QĒXN-`{8KڵYEkQlֺfc!Y>Uʱz*«];Y M|_/~ǗPn-Tx1[b(D[{TߟUYNPiI];$HdGA/?y8HlQؽ%R{U2WI$H5]Sw$X6mot mo]+4Ozʊ˺+gǾ#@^UZG+zQZ̅~ t zCƲr4 G״ o߀nD&Fn"v{ߩ/Mr!Qpkα}y( iPTPc$cw+^gQ02  W|ɸ8P(t]"Ģ) + k(یF hޏT ?c$8*dz\ϗ%7;fЙ ruǻhHɎø۟啛5"xDq yO·-q|g*ڒV"νuxp*⺏ҩy(Sg\('qO;+JنLv$bؗH;zZI+gYڼt>g(ttpiT®U ~GaE R:æ}z]LGzQєRсaR=dA5\9JUwܾ-Vg6 S"=*S@BBLZ&"4x+aMe%ޘPvf/$LCe}=V3o p, a8;>tPZ(Gu-yMx68g=myM :'i*f"3"KG Jߖln]L@ٜKUUE ֙p'h 60@jc'n^~fҋiԤπߧ& nEXC"A9'x ZIhErEhNi%[F7SzMx H>^[Ĵ FO?lߺCq_l7Y}A.ͯ7 Åf#-#2pz2{ܩn70fh;o3/Tk94c~sl9и oPf*nr SDⱢQ NVq L~"O8rĘwJ;#FSӫo,M*ODɔ%0~9ISv5M*lP9zڜWR 85Ո)ΘB]Klx3#v11r|`ofhGcnH2 C|U|ڨB\ջ T{%B,=Wd_8 !FX!瘴;Pm٘䜩~GQ_* `ڢT%Q|&4:˱\7kx 6!;I6{ư3/Vi$>N_ Nab t^#tPcK~{Mq!a3¾楕$0bt,[ a]rGXI_[b(>-6ۢLT?*(`mmK@XIp LI =MG4VKɢ>~ReKkGˌohy-%O#s_/$ r15Cu&}h[pGWH*$~#w>Idaӯjo<`FzCGSɐq}/u>QsUE/'4ao[Pׯ<>H! ;~+ۤ!]^wL@K$q0)UJE IbU ^u%;>x5RW9>ehu&˻ֈ)?b-0+twUYu ovJ/QxmJxMgcgFh-5"_@0 tŹ6DWyC BG)mn`U@žE&B2X5Hvy(K# $/'(-1c5\ArePFYb]P`!7Ĺ\tY($ f@isaDnZ"'p&lM*=%c+О|MleޯN"f# 抺bVȶűlD.'A] 4lݣw {-BCE2!;O?I&y3ǩ_[U?j1ñO.Q4r*O#?Z8K`}=ju[f*2ţc̯p.z s3fi]rH;+Z,&R?k/]v8Av#4?Z('wU @_={d@CըlAL)"!'aA||6q .7i!٥8$fx.:~Su`1WN:&dRu&-0 N.!j-o4on.${1spu{87鿴v: 1wr2ɒ-Hl7!nç5kс$?J:Sg d.|u R K`+N7HsJ|pn: ͨs!,0X!VMY@BbX B[}YpDOc-n:,4RC-ˌsJ4 w[E&JwT$n}I'&)jHtQT$֧RF!ݴH Pfqڦ+}Gqۆ}Yu=>Mt-0?A9riWȉz@a ? u2\h['((PS7Yh5v2a~ - 54:|4hUi_ę0:JQH_:(~]ofz4+Bx't<򋞜iDud//mنXCR\C 6y tL 6\Y0bC Jf|+) hTcGj8e:vτE)ӢUWK+ZX O{?5$|%/;ޓM3c#5¨2%dXN2 >[Pe/*>Ek;:su'A6IJ/bfǀ@a;*}Mب>2,Ÿ̕ x>NX\kE~H H  bb|!= ]q2̅d zW 9de׉f⻣ $1T1}}m^ХnK%_T6*c:xHWN3N! رJce:f[#i[j^w@W25chǹw,õds \R"{٤P7?(^LH ^ghVAXW$66픦43 LLh,W}I=ɍ([c8oAΘ.?R)N:#]l]SsPY)<ؚ q6C ES2am!yеHZs 8,aF*$]_^Mp-mv7qSώxê&LæL۴ _xk2BW)kd>]y;bz%'9D_} [tu+yrB0*up-sO2q6>m5'KN=O"]eA<#5z}9x *o*2TP0T~HU SCS ZP(:p eKXttoaY^'i+v_`h'4`O :_@]CLfxL-:;Ak !㪘x/ R }8QѪ:FgRCV HaG2e$W$A*-*/" YpbV{J)~H8^媎(2M̄ N\R i  4עF˰ym+ޖ@s'`C(zJ,@1k'{7L9R~q.fsd9*|R'4˥3HН3=]vi>6YC!4Cϴ/%#eЉjN&>I?pRtH^d5=3;ΎyDg6U t)^B96Ž1.իwbj6S 焞-*) PG¡bIrb=s;ELQTѶdzx=:JOZr@.xmer?;Eɀ!`aڇēz,oyd)?Y{.apaHNtqKNgVpn^%XÚC y=12-:x݃3eY1BXi#^E& =|х)Lzr'p6Ďk!/"6<]!˱28XEUrRb+'LH?˽um@mN뀽eT ?]B֮;iȁ&ɖ?PBOZo L]rϰ(p48ЄeH{vo!٦w5=/ǣH:Wcl93 F U @h?o8_3cJ9C'a,j l O?l"|=vRXJ=+ s݅9ϧd @&#gcu>I3nY*S<v xVn9f+;v +=/YAG*ʔ6_?e1vnHՈxjOmYŲl bgf0c}AǫOL}~b)l# Ⱥ*BX*Wl3ҳ!ܾ(e򮕈>_3 7?g[kjN6#G* xYTG|P/#1ѯvWp 0>yq3 taT΋Xf ve7tpW1G"%u׳Xƃ:L9fQ כ$'<? ğ?U!{kZRgܛQa0U,9&qk8 DY'l500Vx&ߗFB"窞 #̸0ݿQs+,).P_/Lf}*? XM JOoʫ;;y l7G(=zw17X%zj&9!EK{g=-AMVA978yڠtGBkZ|o`\3JY4e^d]=#I P-̌L{Nu\ό՘3 ES\kZk+F"jmb⠙$,&q4)s>3>k}3ͽ9h[\v S3aG<T}=)l}m2&9/ m&6}ΙA,p5c#9 rh3(2#ӬޜCX:6 JITS>N jHUF,:rgCRJv;$Hw!zll6׌%[*U32/g!8oܸOJůaƄB< ',]U3K{IK0 L==~EȖ,6 d(j]0/Wd./XS?$j+bSEuIGX jՠجIImDqWWCx>;]~8=VUOO;XW<8=49^x@& ܫݲF%% *g"Ttm(;9hpD$0dxԟ ɜιOUo12hwyYhxzAo,@^FexCEWƂ I{/h+s;Z=g|UR.&ľ6E!~P90H{!xOm$3q0OI+T2 泆 [$Gꀀs_fPEFSNbhxR?mi6 ?\[%3cvRכש?b;G{Ϙ:\8GA]FrEiQ̠ѭ(?J;L|^׎_R6nu!t mHAX=#yl޳$rυ3szvJt@B|iDI9eX+T"la[T'j,!+z8Fd_q ͜K])XxrG4r\-I+ɡk7yE#:/lha7#B?:eXm,̩)9pAxAUfP4@Jm5J]kQ]/vdIXZA{bbm9|k,̨ 6WT$@)'E2f)v{INOb8gN\e 7 c 3m5"xMf 5dŗM4ux~@M|~,͂- fn1Z<2No.99m-O':CFZ,?u$ӝZŮWFM.2 2`HMD15F FΠڂm٤n %$+'5t`7,ם- I)?0j!y0:U@WJĐȸ7֜Iϼbځ+17$u2/-vFKVM#hV7V^8-鼥+tS%c)ErtuQ:{~ڮkEŇ\>Sme|-Zs5r3l2]H_EIanґtc߀> Q 2<5ݎ㭙]IiK;ѷpRd2ȳk;D7=OzI"sթh@8yFZ0.ߠ |wẗ^>)p q.aXEiP7Bf1Hp3eX`?^Nb 2މuLףDz[p0:r!r=j]eظ'nka SWa.GQ7<}byr%Z M qn;J]iiᆨ{מʚt5+ؖ&6?PB3!>`FTZRt`Y>4׬xTmeW; Z9/X Vi \xK@~(z<|(/z@i}GhyAaLGՍ9(XI+}L Zžr٩B@^o'EB8Rဝ훲2uInk#'z/K Ѹk4(/ ='t,^~% H)HpBXE98i4 Ӿ3*Hؤ鏶yI`R'kf\K'-RU} Èl dF͋ޝrK7Iz(X'ԑ57J _vF״#im1]7p |A~TwQśNy>0F5$h6G lZxafJpUi7-_ҩ(vk";ff>%O]vGU(?pCCXujfϰԯFh0V 5Q‘&H̝0<0((d$L}a_ Z5HgW>Q9߲@#ʦ5Z~>^,`=kMg0pk-:bxҝD$5m6&fI9pJjbke >~9q (N4,A`_p"LOn|0Ҭ}9VSJ b3QJhqcaX8ʿ̮osfVM*.>L.V[,m{Ư-0$F{loEiJƋd%!a$gpMwWe haAԊV}(ÏFex,0eݳ糁mwJ$TwKR|N»K']Ir.GZ1 [_2ĽzB9mkgm88M/L2-gkVcBNz1"WLJ&Ti˄P[m2ZFޖW/P6 Հv{TN?ں+VIB nQuj1.Gs:4=)lh«,} c3#@< }Y5ɿÖQvj%.9( >)u*~'"6S5kdtU(Jamjb,NT.Q\o]WLKP'6#~X hbʈx?)Ov%uS#Bf`ms^*jW ~{D)㨛+=uFʎPOxޢgŏ` 4K\Ȩ>80 ^z&4]>kqGbSO-vD񘘤.V`¿W>t$84=ms4P+i4'BiHd.MrmdjեAFՄJU}?Fj,>> I?pa`nS^e@sDD"BL@ңU\rw/wZ ?KpX}abf:ȼY~M:`=:)BbWʞG03䪌;iT0 qiEwξz#+3:HB/d%o%Q_uzs 73~*[IM]JLJjJGm1AlD݋Du%fa^vchrvTECGȢ;px1TvNBlϬo*p{~`XU&5CTV၀(!wr2h՛0̺_pWT/ϭj.`q;E"g&C ЛG׵s9nޜv;B,ZtV"e'Wv=imq*1&C.!cz]fOxܫ^pdUՔ%9,yi!wJK)\UPBꢘ I-y])"絴k?mъ@rjv*- n Τh}, zue2_{A뜽"3%)8S\"V#:Xڈ+v CiLxaV + T<QlAw<"+|l}~͜MnfenOo ,d!WWxfXP+*OgzsGN>w7ZϽׁX9QUqFm|?κ`3;K .%i`OE bY'Eڻ5!cYIxޙ5AދpGT{{)&Z4s.|i CuD4u y&*gZeݑb__؁JL`o<ܧ1y}5_sA U ccXN 3췋߮}GbGK6i#g]ȺRd@<wc K戏PN)W ߌoU4ʦK%peI.G¹$vc{D ~J'Y-vԕwsu 28 Zdx:;C/JQ)ˣ6kDmGD -@0O@Qo-6RD  ֕9"Jrb?~>6w]Ayq$o>#n~摾]gh# CNJ?\UɌt"RR;#߸%KGUsG=iz%J\NjWr.}x[u-s^{0Mߣk"(/Z'dJFaKv\,"W1+6ˁ)'t?G LC NPR*7ID/=*]Ld#k1bœ\.ڂC9g_N9pXSJ6jģ8\iJTYt ,j#jIcɞmB=Z3fDDkہpB'TZm7$J?EfܱρIv%$bU43)f[v*E:448wd"Rgz%!qy"8.]Zҷŷ\-MʂAzGp]gF%Q=nR +Yu_bC{A&`ԝֆj;U0Dx!tc*^S[2lP.U3MeT؁IGaPE7ϳ]N)&M@^+u~+ e5co4QH%ý &k+.{tTpwCM  4 ] ~d_1-tȍXV(vbg2[c,;$aJ& =D.8&5 Y8g_=,1H-oIjjbw'G#n;0B ]cɁu'`^!"wՠҨl-rJ&s?Z T0t HxzM5\J Y%GC8L\t+E$ UMPQ1i$M9v'C=e4:gʎ\{ PSpgXI Qp?5 ʚA˕)ٺPfK"ӥ_iHIYa7'2(2I}-p \oaB2)h$ %UBʝ~Ua/r*`L͜tR#q]@s2wdgQl#A)aщ};laZ]R+"DSyqwE ԧ;yK |jj=F!B֌&"G11n@1 _E'rM1z)p3 Ҧ{ iQW7\7PF nsu)tJ/՞o/[0K|PgvڴXv8k?N ot^ #8W}"H;>"}S"ͻMtw4v=m:>&e2f^x[ځVs)o`ELsGI0үv C^I'!+uh} h]PHN1GsUrKc"ނq)^n=lN@'ġi%۹;-`y"T'3ko' At;TsqUN7aWm. (w܂|LO2%i9 n Z H(H&iQg'fNe?Ip5ڱQl}cˠUʴ [ m` m]b;НG\ H|O-Q I}apR5םA2},O۳OKocmD&fXã'=Hw]Cu4˭31Y"7q E¬*Z>>%x2.xq2 O (]̗t=|v#u)DaHǯ7̅#gHlBXf)ђw a2x6bGN5#A蜵=wLObv:a] /Cj;Zwr[њq݆47&,brl]^ߵ #1/{ U- 41ō+Gq2&a-VܚUarP?= KR"TPԘ@m+J:Q "z=S<̃u]զQ#厴Iro]MndAFPwQhXD58nc!mu)1RALVJ|ttS@US=wߌ Zz)S1rF@\mvkc(w9}#SSSS9^yQTyS43pֽ%Knkmkֳ|Pcx (I=Fy&!鐾^Dnfh :NM\̊pI;w/y'@5j8j~V eCr)9tn+:_Euad&zv+62Jd2񪿂k,rcb EJ.jJ4wLȤ"k݅  0"[f2aVNINI6(-GbD)xkOiY66j=~A,<-yNB{}]ٍǬnjn]6ϣF&qem-˖OWP97'/u*OKgپwc|$*kzu$f2~TsR Șy➆N] ri>(G_9xT&䦸GXƅZ>2j.(:}:M5NJ&7jt"H{mƶuN$(+Dԍ'+O*ҟ,Ka*?I2m"4.DL|VZD3U/nqM^WcL J%@ <51b IZ.*OIJoۦzt'm\Q"P]PjMa0? w9߈^_l/}H`ZwĻ7;$E:+ Ӥ!Pc Ly x[׻MA%tήk} $՗chd9l*qh|lG1bqaaB"]1Q BzZҍZ ̞|}ʮ1ΫX3k{5:0_yU-9F8aȰڗCxT!,lBhBXJMJt|28-E^#w䚴#1ӷp15On:NtMRjvu'_Kɪ7(Nb^2B ֶFaJe$N셄4W'ZG2)׷TҴ4_B<zo蜭&UWV@(.*b}cU/ Y$.o8p }B (zMTjpvr9rxd*CU Jboe=W, `L5U_ 㜟h2K0Ҽ&t~F&(C jVr{o^Y2]Yl¯+zyDDupY9H 2Ō燖*>MG3T^cb4մ2I%Rp۫ձKt^|%ogi# m&~ח r6/X"niO!$?~f d*34zD!g;ь87$ˁAb};f e"2yMT&KchߞYI 'W%#ihq}9KuMx-:H&,[Xv U9GɡEe.2D Ex[`}(x#dŘ7S'RMCNfɧNS!qp:򓟉Wk>}m٬+&Q0߄ P/-D`a |]PIX梟>"@TWHq$7見-o\ʽPlf%Xז8_& $gR 8ŗY\;YxBCtNqha7FG<2#9!4D͝+Nrv&Hn[Po (ܕLS`NrDa=GQP37-^-d@`+%t. l//0 ebmBi҂xw]x9>!,Y >MK ="xe">`u9!)U8Җ%]@+ؖ4o_INAYF--,. eY  I %x6>qw|}Iec=3lt Ez54>%8>/~ qt?ǓVMmbGr 䋈nLtw1WnؕI@T$lIM# DNH≓zV 3mD=.xPh PO_e5|*672| $5=JUHD;(,1y8DE79"G=5AA|Q1,FWr%P+" !F#:E va ~v &=OHK%Ѿ'CryE2  n<[ԦLMOdH%vnd/檧+j;Nj6ۓ:s%ª+Njw`"Ëӷxäck`3|j?O-m(`vW9Q,YOlh4_`]}e2g'"."3x(x7-sX)A;-2~jxm@3ΑSKyDB -n;a\ڌFDA]pRh n+Go[d[l"c6(3kt+"p-g6,sr\?yȝ- aZo{NO ]\W*^' [wR O5)`c01F풟wKn_-!C! 󊵨O"zT:r,Vk.K1lnIZxw(3t_@#ec=&美0nyZ~H4pa }67W{&%.cIj#=)b"?Un=DӅlV- Z@a8sFdnBG\a'F؝EOTsB6C::%5syD0݄ M{nCt&;[Zkxt$8Xb1u5O EF3μj䙚FiL+e"듊tӞ Q,BFz efn]zݝ!OQ.7*8z7'affVʍuC3`qFc B*M:F ^EODg+ o{g.+.^}ooORȔcd]Oi`nEu"kx@fԯ[B6=n$QU{ߊY?$XktBGbU}uS n>2dnY>u~#g%*KC&w3'ӌ:ӗU1=ie\ 02,^)&,.ayS;XEH~P5j'=ZqTrju'E; NYr(@gxʼnY6!=l oSonp$_rM^KsP u!H R/giE/it@ x9dDq/sDUubG,niC|r$A{ d+UJ!uH-ڑ[7! 4V4j]4q~rqվֱ.Bxd4wwwV5|6xumK)ךFe,@N2߅5|?WvyYO#s/"No$W Q#PƿR `%͉߽Jd/*4آ22oᏰ\H]߱9}˃āzJh5AN4Ljey 6o_ B$JLhCa]3qmB g\9q+m8,myv h a#CF2# F[2^7CP7tfɹaEQepv OrSҺhN^`BU7*C/;+*ޙd}pyrx:fTa=8CpC\{&wzz wD`PtǣOǔlT) YBv+6jS5H&]j}o7(Hڶ[n%E$";4 F4xil):9 v) #Dp8$J'a!\ `;G^7D2 ů㨮'݇19lrs"{}[0啝xWEWSP54 N):HYWB>Q0zO iа"Nd{LaHN/UэG>'0wy]X!O,yfW1WiJ'?&`LL:OCG;ީ}C[Qܑ7E Kj-Ma(vE|zj7rȅcO:de׷d{{<V<s#fUϠP#(-[տEO6hȊylC0ou.PX;!:VfLlqq7:+- &"!;~Z~Wא?d'zN2KE\~ԓ T0-)MSbvBlm²!oE&4q=/*´**LXܮ6 4uo 0I'VjSVg/o YLS2B0(\C1#xŏ*[QBoLŬKѩHIc/x=(b!굧? u5Fa[ `Zl*B]dMg\zLvN> R0֚8܌UEg%U5P8wiFBE],F̲W(ǸY =Tf(DEJj$7{wrxW BpڞKK(h R,Ԭ%hTk\*9G?^۟oC.@>0il^P$[{uZtQkD]x%R*>mҥcsڿ:YM 6{~K P"Nę;=CLuZSBb - !\_r'#i7R8"|[s4_˫ibG=r 2j֧"3(صt)Q -hQUk6:`*I1݇ճ7YRݢY2hjaZ3*t/&ʢۛloDhGwS@Y`r.˫nqud]((򗏙Vps^r6M c{XU pE~^d+Qp-~MI0,1~m)V]rα]ٜ# K 4| SRQz7X:#.-U#ͺKѩ/fN}?hfKg/,=þڥ٦Bn9; >y`"lUOUJptԁj5((!gi~oHkɕ@kL Խ^Gw4>m- g2ݑ'\%1:Pd,gLگOLۙnrO&z[0E`Ԏ.(PChT4B,2.VOSC_3TcHÅJ ThNHhEPX=$$#6QiMŞ1pN}9Gg@B[헊BĘlh]?c `J4> Y :|} =Rum!@e[%W}H^=aSHv$%/lI%&I 8WN"]R٧$Q,E neB)5VUId.*X!rD~̏F8yw(og %YׄUe^Wvc) < VLs!#f_W2|iCKf?et͇¹C',W:{b=R(KxQs 9:c4-9rSoOάREvI'@-^F}˂avj**}6!S&1z -ub>KQ] _")" uˇ%w_Yj+ZfzQ`Q;N_kQ)6=@,9)hq`rBФ<̕OANn>M):݃ #?Ŀ?QI:.H:|JΝ׉-nI&;اP%K+(Jf;>fΟ&Iظ]d{'CvuwU| ˶y mA#/Ox)еD*NM&%+?"unƒC9RC\ĿFS,ǘsݕ?KW*hMyXl`s#i|O\S#̙ | REKKZ`D(w4akuk^)E5/~upfpwC-i: '{zq=@%d ϊBXGUdp3Q ,B눐E 6-eIoq?P(gyF+de_hAT[ }\ ?nO|73V ;!qP9HwM::7.Cڴ"r2{e##P4NNɰ;64R֟0Y'}7tl\O  l2`x=eQ{s 璡O,I ;P!!$=P` (Kne4T; #O[˅"@<8t4g*Q(7ӻ21t*l0ipd!]9hw-ay&6izZz PC흍IB\DG6&kq?e}AFkĂ%7[oM"H]@ߛq&b/sĿȰYpiP\dvQgqjWcx]f;+\INJ׌WW˯zÁ`?/M:74MKz%l \#ci$mwR ~ &ځp\+ qmMBYÉy!02YEH%B0#DR0M@9C- M| q0P,uZXoSdXLDwX'ln2&>kTuɩ u#"IESPUC̙!F{α,AݚoU\IfEu3:[ 9r@F/ Pa.[ohB|C_ Lknju`>`\"Ǣ#(G=+nQ? ʬx;*I(fCZ~Eބp@<ɞN ፖmfWjFj0]ݥ7/lٿ(+jFpʧPݴꮁ9"tr}_oDTYPm]0JtV#:ӚR_B'X9DE54OdlM_`3Gҧ&ZLL e?abIA=$1l eE\ O Xl *.͜-ۆw`z *rbà hh1ߗ WGmJwTzLgP;Ic"Xٞ[/9="g&;O<{|R™RhtFwmjny 4&Xwء cy@kx8-xc̔[Gb< =+CQKS2? JHޒ #x;[+lYN :6EnKt8/ xeS_o2-yU; 9]fR-f. i}@eld D8$qf͆~ ؁HrjSFG*}ރ HG (bXkyz]2RD%%o~eH-ќv?{ҷy뷚)=鵬3ʚm`ֳHq7*lP)mfk! 1#Rf8}+5oJzUZK+/k CqcIB1?10j&U;u'KbA\F4 mr)(K!9Nku5 %˟kjKhƧH>@ғm[kCBS+e/Vr޽2vo|/ԋ5XwF^ {k\~{-B92“5 [q1q70idkC@I_A2c|y{_&J_u\qbgi~~ GrD ӻHTCF45gmsR#x$w {/HUy:@=jɽ5b]9CnVѐHKքXÞtq03j9L` >c+O0 P(wRuJkVdT ypYm';1e6pxkB)®S/sl {VI\1j:9SX~xEQ ш=+m)m|3I\.Q=}ry1Z1ǵ6e9^! Pg vR$46No$F?~ i,,.-,jU }/mwL_B?p^ؓ3` v*bz5Gsg }'9l2…Ǒ,k SEes4`כ"h߱A)Iv 4BF"UrA*=p;0g4ޔT^==p˅4!!" {JLckO]B8֗cȴ*ǫAS݃~q J9tiQQQl?9̝hqLD=q[I%œ  0dB2*K``s~pF/HQ*B%D W&vy8F*Z轩O,G R1h]HC)vclk \JV/0l6Q3G-;ߥPE|23 " [86ϲ xlA=,{ޟAXo^уDA[(宽+yCX*rc|bS%ENZA4Vl^Pڰ.SpLT%mkUfxaGm >LK}ҽ9 , بI12zS m^,q _){h1Wsz`TWWoa/u_IJ<i;|]PKYږ꾅%zQhz֤O-ʅd-l1~W__2GB8 ЊMPgÅWEN%\7JV@fl9"_-z4gԹ&Z/yQAhڝk2Jt`30GHf -KmU.(߼F ̤0$C1 hkpsaRXeJ݆sT-$̵̔XiNQ׶.8og5\}cCJh{y2>ꨫ CocܳlA! eW8"=0mDcdes3ֈR35FJ1Tʯ =?!d{1g׶qy&Db .vN-ܙ6Ə I*RԿbQ^f4,rd2h0 ǖODGﭠzױ*KMQ&;nz]Ui3dW^*nFI<|=Wg5@G<8K}s6†Mqzo`t~7n$^O^id@E{{zA^|V<6Аڷy][ E׋t]?2ょ ZͲ",<6MU#gUnL @حjG)RbS8)ǽ|z`1UUv=ا{+}59@ɹ DYu҂d=0ytd"D~E t.f sD|_rR_[Q]^He;>:.K2i--yM&.4,o,@ IacFU?\2dIw;2UxZGUc}.8 Q s#иU_3+F1eP4fC@@l?=ͣ !.ugS` RHR;p(eO7-m03!fdw8ϕw˭x eG̖tZG 0,~Β2W5SM0m09o5) -Z2sN7'gyD_?+0'ʮ<Èؗ!6V6SbBto-o ;X c\dU_=".d1f]4e̷>Qcz9-Wf+<+o PYsxF 8x`t1_< fcs~7Lc&#6MFqVK&2\PM0 5ދ'Ipv ־pyblw{Abf^!܅;H!G`<8Q1/SC W׹+vױk)s'yĞB \:ٮ# UiQǧbS~6ka߀rD)k'uM)WaE7B ;e;Ùz -r ,{O@DbG)D6=Q3h+CE*)I-8t8ŷN~gM |)[4L5xKI(x̟ G:iM5LzA~ rϧk! t_c?B !ƫkfVG2WVS L}@(drLWs.-Ӑ ^d7"9hWP;!r^貱3PŶ/r5TZ-9d:.Ȭ \H5˃(g@qY Eq܍:uX|<;f_J f? h 6ԨȴMFj;Y1Eups \G3F;@&B8z}Mu*R/G qmn(]~e Σe$H)L >be t~)5($*1!ۜY  WB5FW>shM;ԏ {Pɠ5ǥQ P*b xGЇq&Mp[L;l{bJ]C7kJ+ޙ,0I rT`y$X=\n!Jҟ4mMoIn!!ʼn%kYG^ݿ֔y?jK%/`o%%CB5 qY9~_џ`)$eP#Pslg<򐀖j.ky'za31tMmӶ/ʱ1=15?nyFSĕ+0`I(ԳAпXzC♷Z Ąy CA Bzu0lGncKj'Lu%&YMra/m:)0~"mY C**j} d-5R{2,Z^zqq<{. Npf #X>`a%b]Eux 2oPZ:3%.GdTwaFlyLδE?6r*X@>X?Cٺ-8"\OXRd̾=QңВ^Z]Vc0\ "O;!~Diy(/Yn;i+%e;.}ư ,)V U$S`~%#x#Ԍ]E)Fj-0p\ң{9R%^*Ց~uTh[<п韙0sk$+gg[k/Pw.^kRNYS <KV5G^E@< 0AD^m'6o-O{ĵz-)`IVCG9YGSG!ѐ=ʢ C/HX`XS;eTe/hu>'HAzm{Cixk^fw:(Ql|?UY>>s2MǵZZ9~P  nsj 0*[~`30:/ bWA-A?\ ^/RKDBZ-Y7Xm=']WHIVI03۳7M)j|է( ,Kz=E'Als?EMX3aQ_/+Y:}\皳Mu^;n;fh*J$T1DꙮXR@G{7 % x]6NzW# "`-glI˂.[ vSLAbA,FChn)d6b}ҡ/OƟ9iӊӖoHy%w^WA$d_fﺱuycĤ32"џ!Z~ە_|L҅wugQJ{ yDE :ӮuDFrd8RiX@] |+$,|,yIl-8Y]> Zv#LJήf4͌9/#R6ld@ЙVNr{UP!w Z5v־7\O`I8p[P)sݜ͈Mr-aӚip#B:ۣ|W,(s_cU?&dCB'jWz#qa Ry ڧ\qJ7:tVļuXo/ᵇ$B-h#&RHGz 7qj.mM$>T{L,֍^ e+/ve޾jDXC-04TWf&4~#Bvtq{|yү $[| V;]8mRu?"x$ysD.J$>Q j4"X+[?pv]q7:q u2rt4˭ԬAq=Q]p̓$;4.j͑]7]]߫5BC^lLȴÆ7N\JmQax\yYy0(BD>U`AAtKVbZ:2k ʁX(:+)tb,5)S6,ngӮyK(EՒCPufZv lLccөc i[kts( RπgEBUl6t֕IݥClUjR¡[X*t'tQGx1ONK6fLi߂L_ H! -єhﲟ5.y/.zb=^BϬnTNd֤ ^Y9M:}Rh*e5O>gfԄS.ڟ󗏵ˆiI:3 4SR FFʎ瀲~-0x!+ma3o/ i/#| cd%պX(?ے#wKAe)x8TcMU\95"yTh]L5mGSM#WmR}r焷q0C^w%^, վ6sj7m󢃐PQV몇)悭E5UǢZjJeǣul/M"ՙeҌ$AAI>NϚZNyp0[z{ dP~+)-Ά, چkSt:&A1N`EBћ?J*qBcjy[.jPƨc9Jɉs~5dc0&3zBܪR7NU P[p<|JsvBuo*^.eϴ W7)yc6cmQ XJQWPI{[y2,Mṕ){ n-E+V}|qQƀ-SǁBZGXny,s>CRo@眅{4b[?LG'#ZEX!1`ևSZ?<3oPW@[)-ʎf+ =PA7A"\">b#fNx|S[mNyf#⹥fQo8oݲ TEJas Κpb)Dt0Ifdf>vgJ|OëmZ7f MdɅF>b DkgLIb}iUNĶfJzɩe&=q\sSj=8:xq||<nZ񤸽!*SIvS:!I#AT욦!_Lk:Ϛ`֮wqw@v|C%= >{_ вn9bT)qHٟ6r\u6M!m40rPSES"Җ7s C#p hfqGu<~xsK~DHW\u AB-[ʿ:ЗZV~Ki{؞zcL S?7eϨ?x('29"AP-Bܹ\{qB!/Q5d6 5^E1MT HLM/%|RR^hqρwlC#wNBcQ p \T!V }іMF* Ռ Z~mG<\e/}(SV+8ֽHYo4ՅV{袩<ƌE)>èaӛMs2 K[Dj }P<x.-!17T]],^|sZx(?'lC9 foOECtǼ"g\^2HcX. s]yMQLx$7&&b5jol`rv~+ Ygl=gU둤1ײ1  4S@>)"V!Iw`쪥*Yx04ӣVT!#Tc-> j hb#̜ kS5Q / ,*o#$=}E4ü}$F'azT@G.>v'5bIIF [Nmhp`&1 j5], .%:&1SE{l'_:M%h+ƽbe@ rHqִWrM,-P6'ggo9^3 ڒɮV֢?b*C<' %ôq⯌*r(NRfSJ6"49-lII]唪T$֍۝3X8]|T[FҿX{Ɵ5Ml eH%Jea?װ)=q.Ȝ;9Ni2$x6>؅K"ݚ?Iby=-y'TߥLA6wOZ ف%0 0:\8,dn`t xx7y\?#L6,Nr/#uy{T<_|RpM̹IE{ M< Y*4žu<-/OEϭQirnNս8r9NZD_-%\{iHM䲞Z9Vn PXhяxêqi]y¸ ȗҞ]7 cPGR:u7Q, $wMHLB!wHvdbK{f&T zvu"F墁CI$ҘW)u'*$Xe1M UHG$(Fx5E_8%D?)T(vxE&+Y@ .iad/ՒwPfu|Ú@VFo,lT^ ЮMge̓Â2z7=Oܳq_œmXq*VnFئIn[a+gI ,;Vh, &^_B q9{Y@n9]VNRūt{\Pl%ז0rlw)s=eK]"eLѹb],k?[SUI+ 5Ɵ9.g8r/H+rya"ص"Qs2 z }Kr\JYKz"Ywvi߸]EKogM$ڐ?yܮpΨge pW9/֞=73~ncWС5j]3]\7'u9=*@ܐG,j{VQshevEN&ש ARPwf<^g u+-IA/ %3(A-Y֩T^ߎ Gei7{pm~ s#2 PYvu*B;5L 6:RW˂ WˣO.T km 1B6*q|)bo{I*3a"ֽEk%"<_l'؃4#IcEjP q:\f 00|/vEl8)\B!A8E{IQ{T +kLK}\ ]@U`=Xd]\L _VFDE)Gu '#8 <鐓 .T.CO?; j8uv\ltaP9=8 7:*l &dn pt9֛o-uLw^?t7_EJoӟϴ`jE|CG"zZ9TtBhfCӚ̎o}g1N՛ X ƻU`<>dtHc?bΣw1(WW+-q`V6Gs6ҙظ+_^N٠ry `K ZD0 B-b&z= Wi)`%#5dA]b<\"ab_ 0~wf(B|4.Zo?va耏]?+9iX{ak.4+Rn¿.iT/*4-QYfvSS4?S2s`|O#S=I5{9Oe_N¾sT6}?+ ʁ AfsjϾ̲hvu]:=M=w/+NC-L_${UZP` {v@̥WyJ0[_ oHEU2)R. gʪ@X=VK<V W9f\rHTzJ [h0\Lij94tBUPi8[*t*:I`ktIWŠrƼWO9H7 J{lra~URj~AR_#~-[q_4Sdf9.rWe&d&5sBN)9 Kle}&GkHrk۸% K^VYd zc)t*ocz!hˢ[Zr MN{F- ofQ&xSmue,%RE@{'^>a|NH6 K*NT"MRf7BΐV9ÔK) Km00Ҿ?F] oOҙѯF?Q-4.έ|kxzCtlxZT~ZCO=G G qKNVPوV#9A%=m缳4:pV!c>JA+#m̟7h^ ̕(YID[|$]f'di+].B' =&` jT^y/I(wxF `:\jo~GYuY1c(7 zW{>#:LR3XH󗀰1bҫ|gW4} dF-CgU-$$ 'XiXAQ[ 7Pz$Yezh؛. C ŋ+`MM4jUv@r1QM#Pſ3?ӼOv*S]{wzFϾǑ5/E3՝;s*΃Ĭ}p >X a!2>[T+4W':;̗ לjp6r ÓŮd%=<8K~-߮bZ]bNԤrRL@2╞bTmG1&C'%Ftm5*3I7 *;&_23*3ph2)ң\o{u 4-bIֲͫ/{6loQ% Y(Lu6BU5XX$KΑY7+tn9i"7|oqOXKV %ʅ [P0`Mvj&M.;hȍُ #5̌ -tx3|{2ﯳ꾰=0༉v,O6~/QP[ 1[0G.rť*k&KTARA <*d+3*X0AH! Il i#guk3ܞ*ZmO`yGAdRf8ؾ. ! !9J'N Dh˙ͦh]綛ʘAAAv gYڤʊ2N2KM'7;C9Đq lM/Moca`iŪ%\TVV9  5y{ۺ+&G;D j6⣩d芯nvsGWM̝w߽AΝlZ -LܝbD-6z,?#TƒpW`}NT dH;4<}Opz&&MBZϞ>;=5! r2>nb/Q Jv/{hED =.S -ߍ;DwDi"38/'Iʹ%CwJT OP0nǰCbe57ntr)/д[$ NF8N%C\%nhUo&ڈ 4Ì|ԥCD@O4)0Ok) 檓*7:1Zpo~?K ]<4T]=0#QkZOٞlU^#<4"3Wm&Ҏ ^pq19S:v!XO{}ںS-<4C&Ę,G=EO?wWpđđV(5¶wA`\d4.'@s=I잧ײ&" Q[<-~``G8GwEҥ&] }w2Mwu%&ǿJsU"w5 ]($L1Iz[=7 JB^hx٭*%Vd?sAI[?g+:WO0dh݄ߓ ?p+ÿXQ9YmF_2uQi$uTŠ`\LUsY'{0ibOк& \9 dٵk,slBᒃލ^oY)yLPELyʿ qaJZa^\:QqOL Cz *4ּ=eIjsMC'ktx'rcCL֖|3Q`E]Α>ƛ&<yԘޡ[8}ec&$xۦ:WIPnLMc6TnL Ut(U?r4"XI|z:^ލIX~7}w"0҉KrkDտ'a p'4]|]%3.׽{TD~'}<\pD$t"oEWii8$Gn?АSFޑޫ5{o/A[>xj\ik 4 (t3;_$D\ 5܈g~ zϽ|$֏'6ѼyE, !Լ2ݹz>Vݕ!/WK֪Hy^)xƐ~5W&wUػ+T0rgf3e06g<#}k:"Mc]v3vo'#:Zt$エ8.aiQ!{Jg9`G 9PK{\0<_o;.(s诙3q8IN\pGy7is7Up yb{#>ɮ?LUV5^%V?MO⅗zv02/:wG@s=7+uI5d]s23y૦'6b cɓ'@Pw + nDKeO3VgHۋq\\:YϐHJग86e=Ӷ=1$;diJfᠤº'$G4麗fh|>};1R}X`K6 czlKj^1 X{=l9ږcEIBH qFD ڔ+S=<)P+_P/>|' vWpD# d&CY%H "Srcqwn1}q2y. Ć3Ԯ\GoeҒXNW;ӎ-zƦjɩV4cl(-GnZ)G1!>J$Z8d Q)6,3ҜvL.AڠI$d~vndOfDu'Ygn5=}S/ zmjloʻx MfF]qu9"-i|)@;o<(ͳ}X*,8Es'Ϻ퇉.K#$i=+W,(׾1 w4;瑿Mqz.P(cMFeSJ%MJt{E)%Lgcgf 2)viNݍ`ġ|:} Qp񋈞fT/dc hqE!ĬuΔZC)FQsw8Arَ0x7lMirf4 X$оԊYOck3MgG;SHS̖췐ic+.ބI*Aj!kkk5_mCnƨ XJx"\%;=ZPuf/]Pcy|AN=FXokw8huW-$e4ٓ]5~PE*E]˰^p0 8 WǵmYSQ@uVT3 PF z[A?u3h_p_L72kV @W" ' PNp [s9?wHa0+-:>)9;dHQꋶ23HWUX_ޡg b%"3MXL$JTg 8 (4bObj*kzؼ_Pk܉κ׶$ռu娆8P @!1?<$݈-%*P X$db\d“>;Rqe kquJ_0lQsE@Kp?j'?QUc˙{Qs i qjs;mBg:#}vD)JˌR51F6a\>䥅)|rďiHa(ZpF\OK ?DWF74D䪜 & ̩V%y):%7uAlFSR~#2<-ƨP _`-;GW9[-7G~!Jn0uVNI2*(qϣEK3o7&nrq_8ȧi g͉|V:(blfOXzř'{/ʣ|X֡=zr.[Db}+ ,߭5Cc\J&$8[4sԤIUlӸny xU`pբ-lgwZYidMĐ{4U/2"5>RG> $7nn$w*^K'X(3u1Js#Ty 7- T=c}5.}9$hLda$&[Rfj0TK.t2q{MTzKd}wǷ$ggñ0t Gیf@ni''-&$Ȓb Jښ)}ʻW_zS/lad`rtrCA8](JdȮ7xD@[NR4Z Yu׊x3$᜚m5x -+OZ3t<.c@i-ԯ99TۺM wi5H/&t?_CG1^/ܢ6wW[Ub=.dC(?OSQMڂ m2񨅣FjUډ1144@VB`80b)#X1bĚ̯]NbD~pξj|&>M C}w>A9SEdʨhozd;٥'ߐ%"g;Yn=9FLQKuMT'$x*AJة+/ߝ 09\T2D790NO Z[L3ą"rGr 5?@\>hԴJ^|b[r('0}3B1%}5d>9Eނ07c:>m5h]4 ib3k`T Ln.T4=^{hEpS2QQW# SzI5ͮ@ =0)$RF>\QydJ`je)؁a)F) t, rKAM#kšnzZPé /;:)FQ$hk{iN⬌JAEƹ4 ~Q&}.+ɿ-cgM*tRIWyϒ2H N`(?kUHذ7`5/5)Pti,^Ǿ(ठ%qH`VT1:oC%ݩ2ڰጎT6KUaF#0Q Ǚ`͇ êfF@"gCX]"f.XFO^2ʨ)*5^#]J12O~cC`Im?E47T*(ܳ,Jff縻!rvdϼ5d+Fnw(~rj|;gc Erm>ʂ#ɹ2F BJ2vDAauA ={z3CDo* jJfU`$,YU@BWVQNaLɊU>t`$(^ Wd XG9NtSىVscE͖F^l#x(EYN*7ofJp$ :s8j bє*K)ujsc`[R:AŰ#('6}G37TVb%k; (#qd2@ !ڵSq2N[AffH cd| #r.i:\?[룼Bzj#t+YyyFwSJ Z+Pd2 8gQWU_TZA}cCUaoOE. Ŗzx-Fm³`8QPhOhB}*2n{s~8K{j' !IYyTx=TCmm1vdyn5S~PgRqzF#zk4/mƣg{Ujx4*uϵBXg\s^6toJwevC"'#<1 8f934K&YI`HD^c9kM+Ɲ;NFWa erф.\M;ĩ-Z8Λ.żoQa++LdOx9r,g輄^1bI1 kԎM7 j8psM;5h}뇪lj0YFEL{ .F|w~ u?gD˲-q)oiu#5։-nģJBvlMc 'yd{$yf1눟7)09q4 IJAM۰S#[ |vZv.^ w"JzZ$14-j,F06-U1N@껲0Ia(g1Uo^xdlNm6ʁ_ $PtvL?i;WJ/ D"i$s$kwTzn;! 2+Sgׂ^mI2EyG|guG.$|31SiWFYzT/)ʧQi EVj{lἎҺ9myY&'\Xk8iz I1Rj"6ũ95IAWbGswim+[5}5c;TzA' ;]#C$We1s: -]S@v[!]S뜕Oc^Nc"jC -5?afg8+ʫ7R*}NU@:s@4w:.O9\KhW4Bu6ȅU9Ȓ,li#6ä-7i VMg2hrw~4!#Sv C]Wjfʒ?ЀMH4ِڲ yKu7HBT_E8.,*jYXS90  +a^5ۍb*vfAvr߄psID0[2[bmԧ#C&繦p{3N6dF~>j^WBN͊r^SXwQ;m8%@I/F2]q y;62t.*Zr!2,d"R^X0 XtcUe*%D;Wc|>q% *V'cQϰC$ eчe!^yü~'.a:kTmηmf׫QE}%VQWT^8ONZuY _d^;eھyܼ9'.&3$״zH8S.˲k^BۚǺбv}ٵd RHVclՐh_xXPX^HHVs`kLmukAF)s|\ȭ[!.m&vP,{G^]U>UMͶ{o$-*e73a.J'e[eDzuqs2Cd!RhUN[|k)d= OlIٙۇL%jok/vը*K e|>wlh|ZiE@*+JV⧋ ]4'?V0coP4,yĕS`L%̔vPۨfHiyVܹh)yLI=5hOW^Y$FH a#$:bDJK..f K; =\/-~0+U&w܏T2ajhg"3k WdW37X[d%J:F dƶ)I 6ӱuk\}^ɗ{jR,| +Y7W * (gUXz'nFhy8@ވ%棫ؔmXR$BL5آv{fDJRz]2B4'Ӊ6Pkk 1LRC)ɾG*o~:!|چv|cT$nf)t ӿ_vt 6w'}{ۦo}g'0Tq]xϗ)|7@& kP9b>ێ=r(\} &W A}ChyDMy<[L&3ag(ɖ*ufO@;Vk\ >iA:)@.k䔹t92`+%X8mD'2Kt#FA+>PtTDԨE`D?$H S Es\ŕ"R}C6UMm7U ȉ<]f۵ Rn)+ڞTMfůÊg ^;b~rqpBb{8TwW1l=k1JMi,< C+@^گܑ JUQsI v޼!W>ϐR @ v5@WJEõ6]c ~|&mU~ϛ[Ͻ<%UzB;Npwv$5`Ar|goU87Dۊ5̙,4ֈǠ]7 zRd@KaFu36M68O>r9S&irD֛< X mR|0_Mz ;Gs:͖2W^q="CvWuy)p(!,=<SaYӵcYKA ݓ-]^,|φϩ+QzvÊB9֤q"E;c㶩$cYD&Rr}[^!Ntݏ"w\t3ҙg3Iܴ~j#9Ge0WPBq0UT€'VG?b6:%k6}V\!fcPB¹=y'VqhM x>z*4ŬTK+NGd\O;~ҫ (q0GV(_kᇛX.,ƜM2PԚ>2V{Q %ŶrHY0'`R2cNj#ɲ.V˩ Xn.4JE3lŋ+fP]Hw2y; /q¼ƒN$͖٧wO%m7ˣ~הpvYRab4Xc'LOfa$b͙ Ӕ`d7vR,<U x(}cL6,&)|&_ &8Q*;am!}/C^6I{TCFN)i,ٯ&F3~tE{hռW☤EdT0o ѣH^@$=ĵxArq`-(π{>5In, [+%Ө )hn ʴc'0=XbbJ+YOցҝ-i#OӚ K 0<@#&ךƮ)B4u=8LZw,`/ސ-M~#$&GV_}z'*t/En ! [m` URtiN K(~dԣtcB^.YαN2#cQj4 Ma-A^u%r!Pb~ZqB73ㆈ} bMTs"NK+v[ uFwG.$=#k11(;Vʷ18ժnv})] < X/Bɠ̹MpLJK$2L}#i4)p%q t0qgæ$2iw^6 "hGg4IX##R@eg_x"ཡ#h /Qk8iH? l4y QEyOFey&=ERFę]iȠ|RHb2Qixx= &EXݴ݁|;D\VD M;14;޴ڕO(灔ƫG!t`Re ؝jY7sIPd}Άk?' Cbr9.z3 Q(LUv\~xN6vDyi@3άR!_쁜Yg6qYM1nqA_% r918 c|S4}}1q#jhV#Gʖ7,@Eݣ͒/;%[/ ub]$S̨8l ?dJt?uGzTaԁK4TݖDifȣ[GBb˞SB|?3pg})SWKHڶ!*N%FH}$.Z\oyJ5` i(^COg]PVUd?Wt/`ohi4Xb>Ҿ3˂ Gq9kMD^;3y鐇PS#*N"hqH)p掲˕G;=}6ҥ&=RAx1R^K^BrY/W&d! 1П,_/TpBccRw`v|dvEp_zNէnaVb(1ȇpűXF sbѯMV¿A.+7:lo (==\acg2i:qOm68U]呫)SOM׮W mEyNQ Bح#OɄ-"J"ckCp8T/(aS@Ώ9jY5~u8/&Z1PsȰƳAdžk]CS;J!#l9u-toU4X-I&:d)Uv׫'-" 80vʽ7,V4ϐ5^ՊÎMXRK\ͻ)* DI| m5r02tj{%5qMIqѐ=(41EJ%NtYW7ߦ% bh2[Ұ#w c Jl>>CW'E ;m+ں:yKjjҮ"'0Uc.l7|iRWTpdUiخ0&v R@<@b8O/|K=8VԜFM;d?զ#baX 8,/ӣUx+d[=^6m '!z0Dq0>jձ2ݔ֦}f΃CCk:d#B) K$KҸbQFTUZT6J4Vz{8?\W]~@2ɅQO jA F겸Uow+gR0SRpr38 ,/tlއs,g,ѪD7 ;au-Œ|axdsYg̲Li jºlX"Hd7!ğ㧕r^ԄYV] Gv( Ӝ&҈y1ҹS؋?@oeKU6N4n%07̅;4~2LUw'Y@j;~!%md #2}͉v. M =D*]vxtvgNg-X}0 <3:}%~14(rM z C~+S'/2/kIiQTs z, 5YEn{Pd-I-OO ތ`OO^4 ̄4I% }pV=(v-ג+͢#mAjlLSzǙ&in'KŹN)BS "K 1ص^8U[.L!/̘Igo9aO#K{"9=1Ib$r!̟n N-w}@=zph-ڧ.ZTCYr*TZ) lMY5$B >۠A?9>m4>bp [4̜#Қ@iÂ4֖oUł|ˡ˅WO \TXLl/$A4|'2#["vZ1ԉ !&\1ރs P'R$fwGqip[Mw9r+ԬRo:C/RÛ^&3e/rh闆Æ̼z =9x9+V4XaV|)B|?pK't0+@Iw2U3A@ #cPvXb\y1.KI~ t]v] 7F6A)݆M_ =|)ڇjw캙Y\7b-B<[<4(%;ԥwXC]#,qv0EʤtdHհة5ΡJEڈTQsҪ>ޚ)Π6!.Os, }q UUw̰E%y5K͑#0.#Df^kmq#HGjp4FQI (KR>jToQo[N]ƥKܰ啲@T/ W@ 3MY&1)v1.nT(BU2~uGI"œG o`Z85zm3yn"F?k1+)i!_먽zѫ=ɡ5u(c@TYOpҺl8),5ZAhxsKh{9%ޘ}}H9 wQ \j jiF#zpg{ K.Qh6 .!:2p5ŪBj7Psm?v]:^LNMqUo`oGUH{~eT.{S ߣDt ҍBjaV<%m`cgKZ(PL NDԳllvA)>0Ԙҩ5g{Ⱥn3RJZqc#}kan%`pObN/\C-'Vcǫ{ڠhH3talhm ;I츹UqsG:eP!wM>);ƅ|vo `M⽙W,v.H7 9s݋yݻn༟-BQ8J(`DE'i%72D [9YAxgH4y(cUڝz`1&/q! So# Ls ʰ?{{4`bs# o[*{rl*\F5XhZUIi7=͈o+)v^RfAa~R uha6hq؟ún-bDLPb$ m,;-@:}VlI뭛8w(#R=)W%Eվq;BQvflR ˖:npV9%ZBi{_- 8h\T@a/H˴*UMo3XHe}Ǝ?mWοEArV)q*ٶ3dcCC֤St 7Er]ԉP]Z8xm`<½P E4wij zDd{]:_y"5g:bl `d҃TǦxyq=օ*L9Q" <Dyҡ'( Sl‘^Qi7'xc:vuB]5b DdL7`{} I dl|ikMS9ñoِtWR&{j qira2j'a^X/=s\ڱ=Ufl궘 jMm@.CDIR߇J^ /}c(Mk{ b0qʋ>N ?#MOia0Qԃ2]A/ "ufR~f꫌zvN(Cۣ6yw}mJ2cl` ȂćŪY4"u\QP a^ Ř@ kd"oE+:$% {P] _1@]859~Wc[f m:a?)n[oq.ޓ̿% UMw=OA)З~̯PR1EeQ~HTfiLsLe2ɮ|H.^|_jRVt;WWF.nGɭD݃i 9%̵AW`c׻:@IRZף{iة(_l.ƏclN|ٔȶ(\/܀>zyew!^lKn[!C9*|#4$ǞKdV )>Ѳ#P7Yt3e14I}!ٜ"lmz8T;0ď`?<>y%Q, 'b (aC8l};fz,d4a bi7vI?'fvxRB>rfbrB#;2yq9OGst4mHY_VE@k~PM{|ng?SlUm 2 /)SI SNv er@t|d-u6'pve`Eҥ}JR`tVq*FVe52A^1yo 5@MM2jh}Px,U)5eB˱dmT΁w }uA7 7n,:'> uͲ!C^a;_zAqR|gN9,t/Fb[allpRZ^G=pX@<=!KfGom$tCh~lX2sW7RmpP=uAC]8.%֙M(-bV A#};nI5>7=,2  G\N2=X Ljhu<;8&=dw ];ˏ_ Id*ҕ ~GBfA8IVwΌ4wP@؅Ks6FH/|C9=$a6kѵQ}wE'6 0~40D4W d䵟7S3Po y%YZ zk-Q#YT\'xߜm1y #Gq&CZ (6%dG+=Lk n-8,*5 h%jSnUG٩ qƿJɅY8?N`#PY+),~ZsW^K.8j%8ZJƟ pjփ3G9-J-B\'*I6bGlƿe᳣@'RyRK3^oeDc=0z|{1GhKFXddZ)ϴ0zn,% 4xJdpT'|RQJJ}UފEfy;_U]G :فWb:c + o5-f\z|`?/utƳPKbZt^fTͻzqoӢWуQzfx?e :iQH?B*@5$w7$b1uCKI\)>ja>0.˪oͥnr3Ft˶L_D`)Sh|*3е4H91/ l}} yΪKl>hV@p, n뜍6J;?Qoit:&)@ܠZ2)bzM v!ujI< W)Sד?EH;1껕\f =NM E"焏.:xXʔ5f W̑9,G3j1! h tboQJ+K#Քqw_E4`E9$(~X;[rKV~ ʶchƐ. "Ycݛx@Ci6ӗ6##"s?'yR95ecq.hڋ)wT0or۔VA(Fd), Cv\mioiIAB<51 l'^RߩD8 8E}XSERakmod Ae;Cdl)C) jDgGNP/z[-M_+GD8PthaGLJtk##J_7ѓAF#?=&QU<-$913s`~%xg9踣 U]nYXzPZbvZF> /kHsA j3>( h 54z|wڿcI`;o{&!9٘lJ!HXNFSDekzÆlq/qOLJwwH ZClOwyFReJPReps1pVZ> .]ON{p~"rh3Ce qjh8`| .i i]/9++k33*>ΣeY䋨 ַf ޏC AWW@S kϏbt3!TcV|xJv%755 4I49f4;^3U!a$ߓY6*gn87C.`?59F<~=9-rhtJxc6L R#'ޅf##D X-2mEZLv}htߙN)^7NjQNpbqαtr$|uXEݾkm)2L?Fy)D?bK#{9i~j%_OㅫR/z\IrqVJ7k`bu̎eD!T%B\> B':T.w(YRRNv!lxu6~b^э T?Z/au-2˔OHzKfp]i+Db!Ǫ&.Ѹ7c\0Q7ڑZIm:wse4iѢԢ*IlR`]ѲjA9 cB|..fnEP w ; †pL_մœ uL|Xo人0M5TgpuIl Z\6 ?`'VVfs/Vk ?W2>9n*p>ۄ C$ LDd6շmfϥ@6-7`ʐ ?3>{ƒ\i$5vZzAJQfL1W(g[&ʌl]T$ /[AT#o }6O!MŮb G];f*> <9 !~oP*AaC~qբ,TI9( })>M©>#՜HQEz \O̳~%toAK\Bf?TYFA<'3"H1+&RLljE'q@t\ܗY2:rϸz̵_9I>~dhGl~9=܍2gY)qғ6[?x. XK3C +sHڜq]~%D.tR+4ɗ?&CpNзd(4Vɞڹ5!.vĭWX&( y~#˯oIrm=fXg(rD`M/\ZqöPhȲ!Jt]tdΚ?-~&ގ:3ԌH_9"׏6؍CBh"Hl2E4*zX.3]z]ʣbkZ\?=wahXf">s҄l#`NNהpN[EE4Ss,b w+ħHUQ԰? {,<5H)3 z뇤4Њ'k\/YxxڕRJB X!Y׍D-L7R8NJrm.2.PqTo`%È/5%-KZp::+ &[cm +q܈ƭ ݾȔNk]QɟlɁ\eȇG|'<*8?A5F(_8{.e)GʿBŝUD,6s.)ؿa9$sśQr.`B]'`NL_ڛRR8'wu#$D7!WIL ncX$St)P IP+#'+ua !̴7KqSp/HlR jG4>w,}D3;zN. JEY$|siT+u{V-o>X7Btیz<艆lm8ɠOh+y8+ |Zf_.Aj 7Ȇ}kjPW$MGhT V=OR !(Y{K )#4-/ワٵMG_zd5?_ ($|Uk#W[y;Py*c~~#٤I4(e瘭(71d@Q dV<\DzihY4[x&gBFGsj"NfNV:LĢӅy^nxkz=0o`}Byn:jQb΋.gln߱ HSsáCd wbKzM#7[u@Ht΍΅v'(N1,Ʌ\T0%/%;itsUd[8zH̦xadKd.SKXL<s .C^yԕͤĖNk;iY~Ҽ˛|@jA2&ƚ튆 D?D= S*őR۶B[ {,5S@V 1ޕ&׍+|;p?$u A(~QmaI2^y7/+bԏ֙_jiF9- "Wvc&4kZ턐q3yvӀԡC<Q_O$ .@`͐ 7+Θ0(rPѾ(9]qOor~/+@oR,:qHK۔SV7uCY""?6.}m,2,f.AJ(8_3BwLM\Sv&k/ :IgՒb}F{6+#eO{'ebR#>gJm8[y]g͂ȷ}Z0w~9}`h>Fέ'Mz)'~UVlH쑢oȿv[B<#j2DBQItS*RS?1Gѱ_gw-M=4^@7-(uԯuϷL\C68~]H! Q%'>&O$Kp<7ʌhցe֙N"-! R At8K}?/!E.g'&.׶̎;*O~H93,y×wW-c]9 eǫ^d0z3ˤreT:ſ,b*6vɳ^j:fɳib4qp|'8/aoZNٓd, 9[kg(D 'JΣbE <~bjgum*B|))ObL7ok )Uv4 `e K+!A>)!-^>mnYsżVRJܸzl!eOWG222zK= $ܬAۆaGmad/=6ޤZWl1' '6RXm"YX('|K*-t#M-j@-KZέ:)R^r~2kfPoRh {h|F3oh2 }'?/P[NG ili4#LF05L3=#KJ'` %vxJ 18H75":f9߯[́{VB8q%c,3Hs:侷(58 Z 7yJ#]["5}Gf 9wSkT3>DI"FdY9<NOqoXiu-V`o|OJ0uF-4FRA{oH5ncW:oY"dMs`c?y8n~)י7wG8IН ʥ~ HaUK/Su11ɋ ޹./tҀp 1$̴u埃eM9 UA^ a5bRNPsaA>!^/̴&ucךA^5[ꦦo1Fc_itv@SDKV50,s`۴' $jo_K-HS-#XRkzn2{BNѐoߤ%w3Hþm,ht+[`o8{o @5-92oDzU{]y&nLV * b]JC|APRR.Hl s+&%BC#QAW{|; tHV} &L=\E4~Y!^dޒW%)eiL@pPN1 !}_fDڒͶ"qnݖf fuz ̅+\sSP:P qoYI`j9Ap SRRΉJEz,s)d*Tִ%l㛻`e!hJ5X̀q=/"?+sv@FMFv>-VlՂx6㥔ޚG)wxKXPM3GE Jy5#m"",+1ênM&= f2`XA<6yjv w:5,RchQF9Eeo{Tu7pR# @dt(ыpר֠ÂP 乤6$n pKԌdڮ 5©fL>, foP?r-RZ4ewZRnë2|ihqL-;n* :13!)*!s@_:2OwP5^ /m="1\L!=BS>@?}JA[7v NXidNKXj$HMϽ7|g)0fYcÈ-U",{bɕ5Jx(-4]>i#;^V ,H?q.kmr^!#d^`jCdq Ris3wE!}1j{j+x\k?'uU=[uUoE o}+;,Kԣ_wLBP-"z*v6PodgLi/Hb=Ԉ,vZ:33Yw;MJJcܳu LPk]%@2DI"PPy_d( ƻX2pli^;S  C>kI v Ҏ $rȳ!H ɝ ; KģF>8V } =uN kj` s UֵxkF>,T=afOGҐk֏Չ+AZDQwڅҨ|IO'W0^ Y}W4^PoK73;b7+:#E4ѽ ̓ GMiH&d"uN=PW1m}Vwir0mj0w"A0TrL%RdUMh W~%eJJZ4&Ƭc- $LpU騛:m K$I S[qȗ݋~ h>E5Ӻ'!Sz y-V1RW67s@br)C;OxʘϹKux GNNK5 -"U2V,Ҷ]M͡*O"RRKze `渆cˤN4.FEyS5T.'r/c g=o}y污hĎ114uɘg0QUTs0% u(Yڎ(72](26ʋIg{YA<,fbApMl^`=U},rvK !c F1 w ^{ Rqiu_6p`~ 8waquh%AkcrQb% \HbCQ!WƝV,L;K?A%a5sHjBryf$.bׂ0 gOJٖ Rn/͛_,1b [dmqFxO6@;xs ō뺄W678.DOc[vTdw"Q'G4]^;}ݬ,2$/ݟU.xŪ&.<3 ݥb<RmT;ƣJ*2WIzf=] 6@=3,EhgTZ7>CSM/D%3qdnSF6;BVl5C [c!NA]am x!CM&ԆI`%8:ֈHe]R=笣I< ?vQy$ɘդ cݲ3Uu"FcM%ѢʱPONgйk תCΔ!rg4G}ZC-?B-],͔{`D~ "/|dEC^U+#_r &AGa<L@툋,7dƁO K 1G,.o 68lH)[=ύWU*jߺNIPkS[ npa! 0Uf>eSXA,8 YiНϸoY 2Fz@i>StT^߀Tf8is 0r70Nwu(RVk/Lv; LCT nG+BŃZRdM&=fD(eM˘4#\^3yq/ AIXj@ŧCe1`_ ‰Smس6Qk~Q7Gku*ĺgz{xe@P N ]:, 'GW&J,@Dj\A$RfMr-;kJ8\(uq`gBIɓ#U[|j;֛ZhO]! [,]y~m1\-h%4[Ou]>,Nע_e5s͏z)NlESMT8Ca6H<ߗlu{>މfNJ_K_ZNyI hg%Uϙ|lRdA@ T)6=(} Kyѣ-uYrABKWI0g1%+WV{Yx{ދG _T?_A)&8jp ,9.+DpHdR>þ|QUpwͣhF{[=V( ߃ It0S5Z8"B/?vOcEp-3aa}l)7i M训Z\ q # qF䯠7IpQkq3_ I\n+3O&Oz$47AUO䵿,ᕺ-ן"Y;eqe'=.KdѲegBD;m>QI_`g. x/U٭cdtEq[6>uZXo_3g^ިZ^z#+sR2f-- |`9,3R;ʣZpK+_١ZάGM[)tQX@Jt4j_WNT,bINZ][[e0c#2XA9@@_ DQ7`VmV !2n $Ļ\a`MXHƐh:!&-&}j2Ye6&YVCh|0*KP0x kVܺST_'qJCxbd\8 >Wi_UJ>C54FsPRaj0mnIx2$2lKp;e\q7<>7pim̅&8XfIG]7( .a8^`bA2G&i 8x)D~]UٻC]; օPImt 23Mi1\ɏ!.otU{;+0+Jtrg-z])T(B9H؇ß^..'IfS+ ,I;jJ9&5gJ]vOdx ~그4>$!^$Ҡd #{hKQ'y=ٙdM.J Ʈxt(EcQgigSQ_T!C>m $Ze{odzT7['ws ۔јM֋(=#w #"}% \:_f %~IءG)'OԪcْj\=-`)c~68Yfl7 Bpf?KDdwSYƼnQgґGM0/g,V'@*T\ P;PSb3Y>7QO5R c=E7yd9%Gy b#]1:{2ڥzjye:!)PZq}x0|Ev@Z,zg;?kf kaWaз}dMonjSM+=f 8bQk3k$ܯg  DSCz~yv)3=1Ke+A22ng5SB04|Y״Q.V{=NGk/Q73F{ o;rԾ p9kL>0wqGmbi 1pW{Z50ˠg)1ܖvG w_ 覦kw(NuT@Y|9x>UzA8׭e||FB0G-r0T U@Ģ$>$Vc|P}*NZ傯9Jg՟L"}Bkx ">Z~[J< gow.ZafD Z&H+1GJ6$ b!{Ԕh [,um]}yt9_) fk~(6A5*_Jf :xK!i)3jGZ<"(_OMbp 5V,^c%NJHnUfg51Γq._L\o@,8 }]A_A#o(ʌ&֌]|G!z}E;wVp>P wvLjH3{z$ol 2]kYk>b3L:ҵ5y-T͒M#æN0e_pJpr5jSӹ@Hw Q;ms=W`>#*\y/ *x,X$Ϩ)+ś)uaԲ 7xZyKKU5͞#k]&U7R~W'T=,A,aHJ ,`3e6&%g.\ሆ,c*tKIYsO]t2BEWEzr;ouh#>܄Qt[*1&(RMJPFJ)Dž K%c*ʹEzƵ(+߂鳆=yX9e' Z"3/ ;:B%_t$Zn*luxTXet.<]آK/r|h#|l;<ఄgmrBfbj\MP'ߧЌ4vVfݛ_TΨWYr"f9l,)XZ#99C! eW O2D|*|~-)mҍʚopG|\s>+wq](kQ9~{\)&O[gn?>62m`lR &>/!F㏛7Ȧ{3R6W0rx#oN p+=˄'*O'z#r8Wc'aY io}GBQb4ㇲk=Xc.`Li'r`jrS=1ރna!&q=a۟>mfDv/d47V(hGm,~(>KmJeG앮n,U˘U_\ޣ3f]Pv)|Ue`{o[bczw~}txuW˘ kg^Syy+L=9pۈaG)}.Zp1,ܚ |AN /i #b:3Cs' /WZ((c(P.@ffb@4 aS⚕߉ L"]7zΉ^{(y$7 fZt@@wGQ,Q^1JS:07ۭ:s / gSTDTs#DD)'3;S[@~٭ NMhRN4WǎaNq+G>x-2Q]+\se͈ 8.Lٽ/3԰ೆcySb}.Xi^t\;&0xg_Ab*i@g ,egT7Y?18uػǮ z 4W$b7xI(vc`K xsSvyXL ^G& fKAu̜&pv1tRx?đְƆ ޚ]-~ݖ6Y05Ϊ ϵF*VQSFCšaN>d%kGP|:6HH5dߴ~=o5#kNpY'.1B8 1r/{ 7N5N_g._` M.M:OBAL׎^4o^o2dgk ܳNbʚu?}-R5 }TJJGX􇩠]hoA?Gff6ن*`|sZhB I7 yI'ݟK{\_@ΠaK쮶ΉjluC voyZbbe5bU$9my @O7h7WT,yv+C keB-ƓX2q Egk 5/Ldt+bRKƎ7/xzC9 pr ׾4/D(dvV AVn 8*G86Q,LVڊ=Μԯn*ƸXL"@s~=o= nZv9?_4lĭv$ EVh"Y)j7)u诠əAVSﯺ,T+V:HK2U&Obϙ0+ETQj -ܛdHIw9 S-Ǧ6E%z}q.nG9YXKɶ'tjOj*m1fZgTÿOYAQ$::esFicxהXf6, fp]jln?8ʣwPgz\*o}30cVPtgڬD[#D=ܞ4!{؅RWazkSְ _6/wPUlFCA$>FW@&G^fJJJ՚-u S.s1'3;'ȍ<"5J:DS #1睆//HB;uU? 6"NHx#ޯ͹gIH/y#ނ_ hJ!``gU? HDLBI)D.ؘp(rE(~QtfJ ՜v﨟x68ݕQnS߮$;_vjB|"1/V3yF[:՗HU02e$"&DZ Xp؜e ,!;`һm:ȜTvR^D4!{1$h4nt֫.bFP+$M@gQrHf2M:!Qr A-c,b)Ya=eᢒ^NR`%itGXA8߯p., vNXblg΂MGd,KU58SI]( 8i\ȹ.pv)ݛ'm^svRxx &Z)͍"i4oB}s;o11_|\GskU'0=sՁfⶐ$r+G1"ӕrF1תR :%wLƛ$Oʷ|c=0cldd5;Dz%۶m^b RPmIq'ӂS*͚)%HcpԳbR(5ܷbp/s.$HMhF*{7jZg-?U2b2xm_ct/{N HE4$%@3tH[rsFǹQ/`/h J-x,^!ȟ ލ:ѺzcRѠt)03^1ܭߧX!' 2Wive(qnFSߊ Z؋^ Y^ }cԌ%q~%n]H,xY2m؅s95X]~1jHdn-[;PhJ2wPߔ gGKdDN>`n\sJ]cA+q DU(iz|ɽw}쪖8fC{PڝT{h+hTz' VH ҥM)Hz )~Mop֒ x娔M`S.DeaR Q-ubgaA˦'"8NA6c @傓`h,K)Hӡs2#cyiA/z1b><*] t?+6"As\dI`nH9Z C> il;9 ne5dy<@X?7ϫTmhjp ꭨj%(lMTE>.Rɿ3zVVVԀx&'&~hݥwޣոHBLZk.ze:\\@Sܪ (߽$6<^& ?(gL[Z)Ki C~x'}0m >~u>Li 2o<thqM%0L}dxNJ$vW:үG]e EG/Ȧ墕Bk јqb߅_=;f&,sߍ' Ct<jai/j!״@_ڃ +c~ (R|H\fjmW0]ls b?꨸; d3;wAU(]a)cm nӃD{Ēu6ޞ$i:5uਡ׾Q8 "߮@=f42c~Y=@'(NwD3Zuk _#T~*3˘`0%12>2=sݡQ^[Ag1QTWDQ^]Ђ(0ncpޭ?z"v!%reڮjw%_5kn֮|P  fKQCmόMom&tv o9̳nDic`2(cXypDY rZyA 鰊x)cb<:,0AMx W?< IpOn)켈5kʧ;z2XUld(RsLviJ_53{OԠ+5͍œ5]Ћ/ ^5gb3"WQ}ka<O<&pk#y ٫8;'^N7m WVHsO֯wm?fieeR|>T? `A| ꁕ}|'П=ljdCyժD$&<ynyOkDa[JhN  e\Sr`i\)G}<'?!c/O}AVF~ ~^!FAU Dc;=XG I 0e5d  m>EEF3Aٙ=2I^3Fdž^5}sSؑa]f7m߭ӓ+&:Ey_wJG |.4.7d/;;=a9bA)3y?ģvd&`q7x(ROG6,wpy=NYQpVG]DEo1JRG'o\Wm6WÂYe ~X^_~Ӿw_:  3J7Ay3ܷu;yU-hcn$-VPe5C/}S}v6ꠝ3H 4J/<ڔPnpm>ʼnpkuWE>ujl~C'^&=or'N\ӆM6}89p?3Έ`b@*؀nȻNP{t8_'9:ʍx.گ);Co÷q-aԁjM.CBHUUB_ϛ Cwܽ;v6LprjZG(ݸ$صD=(̑\V5-\4`ه"*4:˪~ wP@Rx˿ M*g`)n^>c 2s^Ў)?m%߫nk>$w&w]>2YAg"9K@4.jop 6O&j `qWx'b]=^eéwP8#諻EkV^0壱5Q@ C5Y ; /~Ca__KvmKN˹ 8Cգ4AAjd9] 0!U`>RBlq: _*$Pm>rvS@;7KnJ_ <@.-SGp8,@?y8)LR+*^m, _ J^;@s}j 6ˉ=2 p&#z4`G74ez ۮI3zW 9Fo5IV\͸lfwK^EH|A W 6垱F|~OyQTHp 9 6m`H\@2$C Blrx2Edν!ISM_ A bW.ҟ(>(Pvk~N /z`ҡhg.G6Լ_u QdoNhsT{T86EO^㙭&4~~0q2sJy/(ßFfT108dR9qBJ@"1*H_,,l$kwROui M Oj2j)x&|3#d[?̝Se ?wP YQ}@f$lY{-d# fIs.! \<TƅnX3i" ?LQL}! (o-6C: @;t"N=n*n/V#N ^FkRWQ\Da]:EؽH8РH78_D.>AX%?3R0r iЈշ[8f)]T4`Y{wkyNAҀw:7HhRgBC (Wym8nc 'FB~٪jfrg{Y\3Oj"GSo3bF?)wؽLDQO 4  l)}9:w.$ʱZ&݃~o'S$wGE^ j?aDtΩJt-k?4bgHC4bKX,xϋps,x:G͊ZBB6\?Hر yUp*XW}?#w@ Qp0<gE!=0#HRXɡz%76.w5&`ל<@ N7IPٳB7Ԝ(X%4ْMG)(ߴŝViL dU>ۤdvkyd>e"N/Л gv'H]i3>ru;dN11UA0-E7l;X:Du7<~TC}3:CuK8CLHt;nyeG;1;nC5Qa=!iZ3Xxhc^ޭkZnZ+E vy߫D/iefaO=t%icej[nq bhK 21D_J Hi2[ƥ'#j YR/as A6#LX\/>@KI3-; G˘j#g'xPFOoD`]oIj~4 !5T55*nqBj ?dxn܏i0-c^Q)՚:Q 盢㵳SvpRtuؗ4xhtDO"| /Q~+?CE(evtj}C;WK\&:ᔀ,rPzԪ96>q{4\CJIS߮b~']zӟVC3V[ wB)Ԃ*}W.v7v]!sT,h/T5 $?~+%eq;gL)cer0FJ.^Q񇩲$jBIGc[@,+Dwe?y!Kßb8S(vvL8qbqK>x^^h^wk’c,CgDq6neW7\Zit "K!j0q/'*..y!XilMkZ t!.-pgf^0mSR4HXc=`HmBty/1 [ ݑߢMDV8-bB1;\]Jg+&z>u)2j}u \P5l;T`R6.H|+7Nvf; rf؟gǤdr3,DNC/辑>*6ɓ6}66h>+-eۍ3C[ɽHdu.9^f) Ea* ܟ}.7_n$bJSfg] 1s;˳QtD0SӿٲXwmx$ ťT,x]qgnnQЁ!gxr 8vO'<5#z!qia4~4,L Y*( =PzH3:IǴZ (@IJg' ;yE##]::V=[#c~AӂlFTZ*yg׫tF?\ 4A">g((D#`2SDS:ra[\_fE%pRvʨV@X@~t>THeiҮ`rCd쩴?'o|)ڗeǜҦP_9'[@|Rp'&qB]nH}c6"{Ү{w߉ҫBlfEPG̔[=a:V+ޚ"_8z&wi/9$m_=zQ·u23bzҺ+[ CP YۨBH`X+F=}aD S0 JO%JVI>Liv3Pgxkf LZ,9އ:eoCu2Yڙ&Xaomݿkٮ*¤?(qvevv*4,Qpv6l/R0ή Ba;0p*{+->1%|Ļ/0B . tdRߤ;&cWjz*ɜA˝H2N%͌Fч^ %KW$zdi翖^EҀӡ1=i(RҬ5͑0/(śC(ÙISvb\~"Tw*) [:R 5"\?Ouw[zHe'zj9 L6/ >0tRΈ5AM[ iA4ɽ@7PdhIA{G Z d)k?2ѭ.s Л8|/ƆtZywJcCך50קəN6 i/U:{4MI ąbԽَGaHxK _]P#ydE|E)B2 Bp#:~^M6wuy+`.c V.\ؐFX0:ixJxvr&YMՓ̨w\c}Yٛ3>5]!GIE]>M7Q&-;F;> H|. aS[ &;TJh\aUmC=LLh/7N PUfdP?]s n/Dk, b-P몜zS;u9 g$F+07ײ*dI M_8zRos`Z^1ȝqn`;CD=oW۴`D9Kѣx 9V1Ѭ>Di3zdȈPOӴlTәh Flpw̄ ݰ,c{8¬فjcKK QSdx0Clk ѶNLrN|lb  "j/DzD@2]cW~4FWhÓ d5ѳvgu6UVLވV^ lJG极W9(ўˑ_ױ2]__T r ľ!PYR;'@aM .wm궵oKK=S#c >t CJgFci<*dݡ,榑  y؟U- ݝ^0Áf_{Vo {WϜH\$TȊb9#v)6GG'B {ȳ&ŘaVj'/vcBJb>aWKssOw2}*o 4!>@ <Nq wQ4 2D|Cn#^W_*PUlSF6yȖM`PBPHu`lp!#Jzk.ջƾ#lne: dӦ 敿k9H9gGf˓Qg$.8mhYI<` <=z'>5(Mr }?:N՜ ދ|.goA™a XIpj.K&N)}dMᴱ(&5α&_(PXoSS8AcmQS 7:uj0X>YrJYz-Wto|f<᷐df a6+:Jv[tDk)5^~ßc)`/*!2GdT%jt̆^X}{.E_}ˏA%TLk+ȈXS کsK'ݠlJŹWx~ HG쑋N~+oC:ox1!=9MN=6[RֿdEx$8ZZ hL rQ +ئ/U:l6Wʻ&Җk|݋IGܝKTB4N/f4% Yͺ 2uhI8ڂ:1p93F8šRGґߕ4p,UVRW- y0ltPT"M=W hԄyѶ9iĈѨ9rM JƟȂ-8L-vVC7L]AY.J5<D8M~2mC5k"1nhvB^EI#jly2[2:452 AgYgf͒&Bk2!<( %'0~fK@NY'd; U?uM9_8ƑVIy[izL8b:,WC_=N~(:3O2!Kwc"a"֖ʳU?<8K=^,x-׶٣}.G|-R4|ӾaѷH³BWqv,=[EU!Jsp Y^N4u*! Ardm:<5>*%ZMMw>G"QpWb?GLdt4!XvI7,l;U\j/,pn>0ծ 7 j<WxHPӑ_\khN)wkyd ûSoUr>֠|mNwc!y .a  ̣Hګ{ol%.YL?BCՂ*=2ʒ& W2zK`lz:銣r3i (л)vIU|td0Fەst5.Oibے޸&y T9$ֿx Bdz'}E\^"ʲ{_H% ^^<ݒx*z_S/QT4󅏆id9K5Uޜ9(tEX7WcX#݄)elŖ :#AŪ\} x,L=USSho9"< -g&/c^T Hj]Ȅ1] R0ҮrnF iźd m:_kAn_n96W!o $V":Dw9S. Xt>jNrV0^a2&PNPe l%͚"οvrh;d= ߕb 7)d$"2v5Z\Q'v[8 I9 UzV@٘. T=kɋTlY34^{khA*Q%=9Bg 6A#yp\LMå@Jݔb̃8AÄGgoB:(]Dv[ΛlՄOTLm,ofQqXV.XA븤QCҎ12d6v7u@$`V8>SH e[ucGQґ4OI!@|ȩ=0Sj ȟ7.ط$խ@!żuM?V9K(>_I,wQeγљ~cg*2v8,]#y[!Ok膖ci:*.JcwxU7+xIe?˃_7ɼnC72<AXJPmِ3%T<S2GK6ryyaeώ6 ~u>B:ۼi<׮^%塥$nL,Xќ1V!Tv%7Y_/?_kMAa lsf^\z/ M>u"h-)X]/aqrsSn6=`ęKiZWJIaD# CsoJAGd >@x 'G2e lPG NګŹ*_7m\{ Ux~ĖBޕ=!ͦVE(_ q*Z6hU55>0N'v|I{x0Lp#!0ܤB 2E6N' i~ @N^;#DX|[ah2ՀRGcoﺛ[|!s䐓-}[FdFЏ#:C`j ߶꒛8=iCgt1N,MHlh"'߈̱Bll\oG~C쒕7:B 6Qb=o䕝CzY 2_e?Uo()7 |>,3cfyZwǯ p%<6[J2C4gެU4znbcȀǛ ώxbҽG.8WJU}87{s8yϺkUY"ꋭy7DFBx]D N9⭬'<E3 z2kJn)Q|!j&lHNEínVnljy h3,dz9zoDj 2_}(H+Dt m(3IӖ]@Hm Y(q 'oP+ʎpZf@ 3PKԞ~ ל$R܀II/o LLF DU7 >=C!^&ײC19QWݰAS}\Vz”~r)GY) @X4F ν?73b&DRʲ.X O4H55-)Dmm ltrR;mQwɴ6y[7^h:nN5a,$(Zk g].]er>DW%gh|rjnV]U%M?+(07 KPd~ sCo C'0B2䐦ˡ{8g໗Va3ו˵ug鍚TZvR6\pTj+.?Vn:oauh͹G>8p#tS`:'umoO7WHu{wW5O=vZ1 m:њ{)Cq1H+D:,1etws,K^ifEd`,|uc[” R@KraEӐ|u(nq`|`Ǣ[ޢ$G0!i!rbDWJ8ϷKy ]`.Or.7&8DN啝 M(g; cuŤ%A>V_ (v 4 R`wr]h05C/%({6Wj#}ҁQ)壕Y`g .w4Jxql5ݐ5)'15C[S A8]}=&2'7B\!% Z$<9IX͎wT=\"L nJd.j$ւl=;ڡ ~aLE\ыܬ,1osĄ8J1rӵ[K`;3"P0a*ɗos#f>&Y-v߈= Np;goKnm;<|:m֓:(rWjC_N:n|<7/gx3~J8Q40rl1^˵7Z(B%?xYX!x} j!w%`e׳ʵ>'(Α+(z\qo7lb' $x}y o{ кdX*$"ɈH˨<7D1e },>ÉunνmCmσpJP͚^JF p( 鷘A$7:!=jP\/vp01,zIz 7n$A5w~b:Q*Fze#ք 3Qՠ}sCK8v)hKr 1< M ̻c-jxvU5/+_ c%beaPz#d?)k&/i-b̾[16]5;o %*}!Bqî( ,vS/Ѱ` s%^*4$PDRpDY UOc!4}N&2zgP6;Gpܗss4=rzg .ѡzڠt,j1_Q?|J6stJ+ǩVHt˜Ξ4ۃR| +fL]bc،- 0\iIBް` >Nxtwc]vKߒ2VV8+:ҩARr`*W 'm3b͛kXT^ ^چn=Һ!Ou~uo%$< VpBVbvjH5anAgkXnCiZ |ӗ@5zuj6iBr93dBcipl6G\AJ *>|/~Dh.dsI!M jCwTrFpn!VҊx9䙙8XF>l _VP&'1 ֗*.VZ#2_~/Lͳ QI`Uy ʹ!qϬ]XL4{`u5+Vi~&A(ױFUud3c'O}=D ] l4\ mB`Wtu:rAJxCWSD gE W;(dvuhq?!ʞ}D\TQ"*JJM." ,lk6O#峉,~I~(swD0Kw@hql.j FlB;qyR7` :P'̽Xt9s_1J>0Z?s=@{nLy'3ak$ wKwÇHi[~̂,)}E!.T!QEfQ2c϶ëQ`T Wfvėz"[sN8F!,#G@u´<(YE~E˓ylnKr.#sbclDfT~.ZxI$C_יGzg~bP ^ug-xln((z=~{EK-"R7QNﻅ0]sPr.7-S`?,5:B#xD.[`m/`E'ED>Ca->Iyox2]4A6r60{0&\V-U?} aJo"Xy3վ0k2[FZuB@   Èt!6X`Ў~dn2*-m!U;>vng&T 9)u?kf%25soˋSBIq敐 zPB8]͠8y|.?m㥝)ap. h^c%øTD3tqVDr:fg0yrS۶m2fMRsf\]l َ+`׹B J¸Γ8ޟUZ?&ڀQ-c*S u^],!  S'k!IeѝF_jPӜM.&Un"{BeR"O4Y >Nz&;sH0 JE;62%B>v]hn1xl%RW.h5)ô 0t5o\6do_4[(`wVdwŃ6kER%UrޒvLSn}0̈́Z_%̍?WE SqG^tSŴsfJ/7p0NG|Աk[=J๷fø #?q SM0Z}H)ou9냎ƾ#vbt-#L2f)oD"Ɋ|;2z֩FԡC-4{UDN-}I'Tta$+2WDՙY+>6G=F.q꾑4xa2Ql-02w"?8s6.VFa6'xltOA/;eϰ3ws<૲qdT}0p!r%,n/')3GxbYZDH՞=1&-@ッy+9Bhxuh'J%qţ6 Q Id MhNAFD >?8[N[e"gA:Z:,M1D䓝egPMZa}1gezhLo(2(d8\MKT i DOEp' vZ!9X!N <cu"jctWɚ*l Y ('*ӬeB v1k0M*4lV$AD๤Hh ZT' \ր4I 3X\Ϥ_KoТD\H@d} lxz_à]|*y{#Y7'B.^1IiA|HswrY<\ou1}uvQR \"Fm Ԉg[Iӫr$C \g(tfr!{W?A߱L&7ͫ_™zʛ C;@ >=lt#kX}~p\T ! ܥl 8꛱cvcQ)+0Wa’}VNYzk=zl:jm`^+?>"rކC't`("9}G4,H(}v5:Nsy]Cgiq$opUcq 'WeE!v=x sHhĻ=GNMp|M~w ef%ǷX䱛3[KTŪhH<n1ũDcu=,:p/{@/M>.α B!l1Roղ70M|CqB'?qVT7jV 5VL)iVЯ˰?YTY̸JoE\֮?giyD、lC9tY*| ddԐK|Lr'jwj/b}9("I{7iڻTQu 5UCC6Y`sq].XDif) npzP|#r}I"GX$q`g턣 9[e42@{t1J#?fK5mTw[P3ũ\Q=&b&h(` CR1WGq3/uj^cIPjy&EE+Po8׫6LߴcuuIEYPףer+Ο3*7E2/627(egQ?2<@rѮtfeH8Ft3QE*5ajicΓ+!K." Y T]I'h+w~Ϭ1ox~ڼn܎V)"Qw,-Օ@ 61,oh.ۣ+Ǿ٢L - J?V8؜cw&ۙP`OyZ_FY0&SRUؿ?L3j>ϗ35!]v,5jY*bE1&lj h_bוI9Xel2ZG=ǼVDE(7}a%vR/6cgz,5cZrf]y{\mV댒y=ʋC@,]SD_G>Ya4Kb4ٍCXk=;؋&k?OYɾ;BjV I6˅qt66QK8l 䆊^uLTFš+N-h%*NgU1r2JzȀVu?ߪy\σ:6y>@HFQ4>113Eld{P UEX<w:^vQl:K3f5XhwwΕCXh#d;^RK#D-. jh2)3L4վZ&8ʈ`vւq>ƹJ3b{k‘vQ06qC"T&b/QǀIX"H}zh9,K3=OHr"40Cxyp!<%w}uJX+VSIflt4#ߜleЀWTUbe1 4 #)eF7 ]䊏0Χ?#ļ{qRvgijVz {v4c!;QL-"A\+tX\UeⳢ5{]rJ5}r\'Et 3U@&ZnaW= TYOk= gId X<+d.Ş.'ynDJJ;{'N磓n"zҿYWy)2Fr)|OfXhw!։eHrF=DLPRNzʕВf1qm:4YD~zMd/>8\:aϿd7D0> kHai5,ƃʍ?{J{  =A ObaA,4oj9S0oa3Dhu;6UdqO%,@Y1Ax2TOeDž0ei|ڞ4&mKohn>[5ЖjpQs3H=-Ch:'g:~T$?C%^^ˑE3{{PQPO`;F5G+ F^Z xc.8-#JjӉS]@!;,Tt*zqHW&6(I wbվcSDG@AAN &&@ U@JXƐa~W@D? }7X;P|DS4_6 \. _c]Bg9^4ş]#ɾ X 0:Lm{=F6%uPQ/$)K XDz6TpE#o!4 5 Ipʻ4]0R+@7*o󵏞Auӑ`KA1K_<⻜e >]^tU;fni%*' NQҨIѳ#5@wk Ď}8Xl&Jy[Dm\"|cdW᥃V5-qN,Fm2W<7/YҬ^D`iЍhq,H9m1A (|bto]sNҳrը LM%$g .'p,+u ~!pPet6k%%j:) l'J'l,GFh~/&NsUC#gZٿ$J>A` ոNـ3*JL…ުaZjU=Q㿝GD&fhHFɪ [. g>N+q+{}miHz*Ռ2mpyj*pb/֛cȵtۢ3F[秴n?]ﱹ=s9"iRN)z3+TܯL|AW-H[ {ae ^sF&IH2X}J! cVeN/cUm O%|TmS:RP=̡K1ΙDлrDJR/ߘP `K!miC%?<DZ80k.rJ2@~JZ|05x@ݔBE_ iEȿ W\KW)A䚠0ruGSEԝ>GS"ý"/rT,x ZV(4[dOBRFFyebPyIw68.W!;P 7{dVY+Oww6G^!ӆ!V Vh'8Py}CW$',BkW%T \$ɹ!?bڎFo r+@w5 O3Mi$[Fݻ$妭n#:p0 PfRK~/V;؇;yoDO #l`WW .8ޤ10+UP4# ol4i\Bur9cS8Q@iMj\TR/w#&g og2b=$ w-ޏk aIB|U!12^tA%1,gw N~6`T|^)CVS@ 7WIWy ӌ @ߔ0XH"1X+ fx9) 6=:9e VߊDB(8`d-fڥiև*$ FRٞ [nQ<X M#^)-Y(е+dZjaDx16yj[Xr4e jyÑGY*,6BρϿ1e˳0 r-H`1YS>sRMOHꬻ])#Pw1oH"1÷wkN6Qd1b-& ${)@}o՗i.C3A6Q5 ䷴~zwt{r}]dw Ȱn8,\,i eA\hdCZ3[/Qj$# E9Ogz S]%X+8w9[qte՘&_LQBȔ´VjܠH3;q%MR6Cu(.so88nj^9u k9_Ħ|n-p}esԡ@&/Trnny\໣z-`es:*jcDlf.`d) e23|]a;AAǶ67l7Xv~nP^O{pD3VD{l{3+ 5( # W,7-\??] @ͭG:Q#1hj~yHlWB]e0UX8oczM^J ]-[KňїA]HLH-J֤KJ~ Ȧ=P\hV}WOͽ+7GEbp?l)u%R-xJ8a%ј*K`ƒⷿW2(BӚٵ~.i7U- ]g婯v2R9g5C{ߴ嘷mXGWbmߛĹȻ S'Zk5We߱|3}skh0<%ɊVReb/MdEݟԮڮm3sBzvKl' c}wpvp(rXf\w R4Dfh*Svb&1Uߵq@%yUVW!kRɠGS BovH=Ɵݨ,64f$`J x ə^W"xXOjȷL'X2uxMl~dpF5}X[=CHCu9)75ke( OZ4ꥄ1@.G_ѱdZېHS?CCy^S.#T}z6_WD*A>5TJ0xU'< na\m})!LQ-hr)'0׌X3i6Asf8{j4A5~d'"V3 2KbKN)eST9p9OXU 48ӝX] 4d-xSGXrdޡ>%@A@[=TΨG$E8k+Ș̆t啶[aJ&\GcXCYH*oDT`] 9t'c%tv2L9&cM撛B'uZ~ .2>CPo%_NreftRfC%KͮWeBi@ZBtӞx~|-,H,1p~T*$Vq!Ӥҁ~3 o*&yʊAW巼ch#:a)w~V\AungTҲbǺ(BKibLغ=xO[#Z>6bZ, "q_1+'yyF'?^EOlꥶ1ZkF$4/Nh֌(>Sv,Sd:٢dK@T4b)WRN߭K؟A6ź tIJt?c> fKڦ$Z Wj,@Xaҿqw8%tn@s*IOQ\Ӓ#xCK\18hGG/Yn ?7sg/D\&B[ g:^m NEW&j% 6IM_%q6?C Q+;T)78o`\־ J^W,Uu;B|R;5H#uͶ{̌X P=o>σeiHœ73jvJDƢU3 xgXm?},h0'ܼOu0]0ܧζ8[G7N漤vG#$˗Z@'׷xaxtz;E2#XSvXIp_wj'hk6;/HpK偊ٓmJtAD*eԢ"!xTIA 95Mp5k`Գcc&Vu#%-!KsV\Ffxv=ɝ6B h ݁sjuB+s6ruFGSc\.J#O>=<9JrFIJdEodSeրr l8%tf4_3|?W,$yM&Z - >-ڻiD.E{~ttu'ٔȘdD,aB cY/& )K6Zcn_ "SGz=j{6RcwIzh}IP6zї'yttT2&swDBjtqdT8L})l"=lZ uۣoRgQRtZY; Pt`dX*K#^e_zNE\Sfǻ64[:lqpr^lZˆR("~]o Rp}?|A2)E.񒍢>8BOF ^yVO yDViì^8SC 3v;OqbwYu<ׁ‡Sag@=Bkfny)Cx d*=pIJmI+n"l( આ5mͰsH+Y/'5qͨ2X^tʖp]U/⊢T~.DiI%]hAE3|HX ;:LZz ?D5<[?n پ)wã!NnH^'eEtk*>Bݠig %>$3Гp{qGYzjpAb숴z?LƄJ/Gcx9*>yZh!YJ6Cm{; ntSp)7{^n"t"̐NZy[~D$yf~=KVN=*-h*wW?01EWp|ߥ/xo(^||+zp %B[:(M`vo!n쏜8?a*'GA\(Qؙ"ѓA 2< F g2Hsg%ñ(ZUEpC%i SHق yD<]P|B=!(4JdLBA]CtoVB쩑a-S1M.OQ}$2KYD$=o*6&"$tH|xC_a}B2j.4iys@r܍ͧfd)#h*n!cN&PBe^Ź6^m1D4B?W#`=T"\\P(kP P>i$N#=w>-) $b̧ QB-# Cegq*pz<™QvY 2wŌ.] P]Q 0>sdJ5?d[89H?h6[}3ٳK,S`!!#.a8ƅ;Yu!"9B bQ1vJ3Eꀈtn\B024INƙqJn1ySuŀO8ғ̺Q#gkubA .YbV^`Q2szq^iw A"|㭎ĨϿ'_$lp9PЇO4&E-l$[} !$2u~kq/G}UB*G׊bɕ{wp\Ѫw G0\*g C!rjRnCTY ᆀ_%PԾ]23YI.ΦȽ~6|x~RR>&4e *WFGS>+qNv7F86m$} )nz*(/I$w|4NUN-+(&*'مkB ٪H8逘]uU ,`49ۗ ~DpvdOYXMnTޚ;}Fi—̧+@eW1'5Pk6PQD6вe(E p;8jj=mOPPCXO2v\ =&ʌ=rjlW2SvCI?ia2އ&Eށp6x4< x>ͮPB0ha_kii]GV/*]OB!^UsBQXtr~&90 (S Q'\kBJB Սz{1^'#L@/L BY5Ua 7ibrP6'*YxA0dNVInPzGԡi}GM<„cnz`%`%'eqj%E{Ռ5 erzt֤teY59|8;OφeRCҍaz6uTie1PZ!U'"aQFxEPbH{Osts0YBᩗUScTa4fIGAidJ>^/j^(5g?%YD5AU,5 ze(_j"ZNc>7Z|FKy jXQ8r|W= \tοփ~x)  j@ۮ*Q&\S%(O`͗n7i-..3+cP=6'ܴg"ñ(NօW:p@VS9~u}X)(vRvޭZde@pBZ:ppon$RçɄWRQbX <$`<0;5t d3n˚D/emh^Lj]lس2gf sB3Pŭs%x0:Aƛ4r1K;! _>6V/ػ#Kz"s%qisiv1(h=g966Si$ey*/۫Kp&>exXs֊$aKY)j  kB\1;< e_ITj#]O?9͊Zit 1!  S6XqbOE!3/[[EUUfe2#<_fx@MHr,7E=`d~'d1U&/+=u R8+ce7 eLy'`CX(baQRvтt e)TKx]aߡub&RҝkP2BMn%UY,ؾ.Z{,{Cz<x\æYz%iK|M:$<NlCHu?x'SQx>(!!d>)1hK'r#ͯҪLޫL*ʩ(:"XRM))dɡ+A6'"8*QCy"˲<|ʁѦ.Д l(=o*\L}]x" ٽW{9KVZQ:&Q׆KZ6Ag"$eϖ{v%FZ(DMpLwӄ45_Tl@@[Wz-{5WV{#\{R.' :'O%ف9/SO*a0S :^,ڧP ]7LL]M[NX{]=DjޅA+owvIvIt`ODH)k])+cO7 ՠar1kK{[M1CJ\sT:kxQ SAhQ u1Ό[)筆mVd[|rA)Eq,'R2+\F06 1yydozm>ʌ ?T#;G걑;\őQyu Ӿ%=Bk9@vmR>؅oK;N}b,G: |l񚿀ag%!{(loD ]ӫS7}M;,WX/VM1 u醗hZ }ϥlŅ=dZ#b4q$xM@$-f 3NlɆ몯;gKNӒ=sW΅CF#VNE(a}}o >5}_vuK)*b')0Wh~@G%x-z39Ra=PX);j:;S[NϚx:d})Gxk^"nA{soiιIDeϝߡ}I%J29AGIk stUల 6G[}^ 1*[ % I]cs ٱ9ʇ^͐>TӋסt2WK+#:Lh לleeAoYGꎮ@Ct?6;c=fXA GV%}tV7(|t.Kfcc} v٨Lc96T،'}(rۍQf{DXj4>ZPFDеx19cQ$7/m'%0ίLhb@闕 [3pRTiiZ*8A sFlgu!βנ]̽)Sd Q!Q*k~kN=h^ZDҢ{嫠_C ͆q0Z=O'>y ~oX@QY"m^pɼm<$گSUUD0 :$l}*∕czhCZōx,M6UoJ]&OzU\)A\FlpUj4QsƎAkf!Έ8V ,7j&ʄ[p2pΌ F䓍')aԇ ow:!yah7yjȨHH9䟅{wiuDEn. s{Q Hǁ\ s.AHm.nH+(EiQ}*8rcGVt#ԣYxvz_y2#4%iW*S_dIK[;b\?#bē .5a# rGG+bMl8 3zYm60Q6q.q.dx&7|{i A/.jg q1ԃFa%z!>(H~jVU*L{7A.VCe)W~>\Qf92WWmǼb(%VC`JĢ3:_U$G"4 LZI;}{WbI)o(l:eEE.\4an&PBў>C5~~h)Sʌ47QYmNQOXv#GNq5,Q0OΤ)9CM" jw'3z6*mM풔 c҈y0IB _ЛnΧQg,y΢j"=E|~f#uyoF7A: @R[O|dTyy|Hꖟ7hArHC7wc) OK3=7Z!Rd]9abJ/e4JgzתK)sjŞsoY9 Yr 7KuykI(Gz ٹ ~٤Kd~D8/۱괚9.o7{v*%U}Is +WHk{ӟc6zנG授n{0;Y=Jc+HNcWx!6Ѵ2,}q'O;쁼K]#?8Nֹ =#! *>#u?L$Mf1f)GSU>t(cկHӋ, y9.Ƥn<_' CԂW> ]U{5>ԫH!-™c-cke[` s_*DxbaZ U܌h^hv*З<˿Rʕ_In^c1 e5En0ҭ#3!m,ʑ4x )s{bX@0ch[FkyÛq(G\֕cJlv [Eq $8A`z+zHyGwխw+o% [dK;t^ r̂8 -!  `0&Tbe F11A/Zr#GYv[gsL5^mɮ'sJ;e&~ =Y`EmaהΤJxap(eKn@׊S^ ҳMf5/0PfɆ~!2g#C~vSSyHuیJfg1sy}!M0/TzYn &h 7ؑz9lK飛~HuLoL?hgBLheKz_*Ú7:᪶[ڹWGX m F+2H_hw{;D†&gquW꒪+?cZh5 7u``IJҖ݋5q9]ür]OǴ鹽@捒BǺ'fx*1z*ąWlNP/Pkg= 螟a0-b 7pra^c(6}vY\%#Kҿ30^HDd[Rq=Z[ S>EB)*&QrUqhN}E@kE.1v蔡ךGR@i4z*$` GWH%! &bFm~mج $o`zoX5N!k:EuŀM"غ" 6퍏;2آ3izJŢHP7T{͏LR}]8L\F%N u}/,EcOK*ڍUy"D`>"xܝ`*ZT>vat=af@+8(JʂRI;в'=ǑXʗC+?`asq"'8Jt=A5<ɟ%nwΥ{Vz;jN@}ECW_c VocdVmܢw3>#_?\Mg8qE#2ݨ/N5YfkC± Xj\%bDOtkd>wc ^!+0tw|.5gPՙMysJQ[8cx V]J%6fC锬`_U L(x Go/6 oJ}ζ%?ƒE7<?йZBb$J#)4go-}%)zy8IRGN9l 0ujwdK܏]4It`mAIq|S$vEJWiv !ӖQXnN )4A$H-IcN !K JO;(\X8qb)k `JZݹ5M`}6 ঳A"QGi+ڠVQÛOvKw-fBQqB\y!B3ҧ[?SVEif#%o)VaOkvF!W+İmIJ鸊`\:%F+к^-f'TSr;5ÒNn!IYGr*p,٘l䚉^CIR xp_)V)g#y*xJVjpMlBn{IY=+TŚܕ֎Zjy I i]7 Q7%>6QS9 v!Wi0M"V'T .{xh|eA)-_eU䈨[ʒUZ|pVֆuA(yCl& þM|;}Ye>1p*%/|9JHYLW>Qc2t9;}a-5"6TjϠ180e7)Y?'գa,pʩǏ~z喱4tρx4,?v\5O Nɸ~>Wʿ~yȞgO5E0]Җ~A=zz (w ɒcl?o.$D 4:/Z:I6͚I p9ChCT巒}vՙR_C_tjQ[ ܇\x}w? (ߔ:0q]eOuUUL5f/H" L2ȉaEג7 0TDn\~jUI༂8}SURG J"st b 0WGB_zq! #֓q u Îp" }, k7Zp[^;> oDR‘|uw6GΫW.%neZ*@J-J ox&) –[e߶pYehf86@-~5w>`"*[,V1բ(þ |POi2H3qc0r|R$QԒ Ebɽ{wou^A̫[3]uח9H#B(r#l<oyPM R75/6BvCW}jaHޠ}I5+'2"Y[(a'HI.5X7?uB%塮e$y=opS>ctPCtu} ~.ҕLi(<]ڜhq3} aap^T \ȾK&V«?x [Z~&L<:81?[ Ȉ̘2rŐDACa-+NQ7Ô [رڴ~ "{tf$o MdY ܰ  DYf6K,zoVĄA Mg8z.Ei/PG kW]#@R&5zUME>/^ndoN_+ RK5*+q4WO5Ҁ;N?ƃB%悋-==h%^@HEe-M뢒a]Mv8\\힘rd ӷZB܉q M/SP4n&4Kχ=$])dc)Cpg^Ӧd,ɺ\s˪&pȄ_kaGX4|в.;3v:2b:[9B7tz#*[b_) <+35VUlA4L|$2 6%v@g1>~Otd%ڭz'ph)3lan黕jl`+g A|!B,X$} dJRGS܉][xJs9u ?8C#˨cvHC\CƐTaU{E姤X5߭e[*(Y1 Q&)nI4£,s$ L(ڀi!=6#cO!I"_VO;Y -4eq[KK5 MG:R]`^p(hN`ɮZ9f<#P-@:2]e(v wv9*!D8O2Crg&5rRXTu G][&8~(E!( }Q 9à5';zh0JfHogNn,R)T9ܓqJgxs|g$g<TǻBr{nEbzǬ޲Np)c^E^(@N|f{tbS "k{{͸Ɛ\8R+nOr QnD OKB6L U)xKkO) f sy:~6۞l4:|F6SakͯJ=(FU䯒M>\ iS1c~ K q; 59Y$=oLô gvI}1B&J/֦ .kV}H% 8ln&hJw͡ s&F9QQ*۰u4U,涪q\)*ayLd׃׉9Lvj(3',7mӌղˍĝ=)2BA1p>{u3s~]#fzzc":qhnC/Qj,053ifHqN,xpAjoD'tɑ\c6Ġra`x6 bƙæ9: _~~yQ=x'e|[qym{C6{$b7[t&z~$EOߞTRq'>K}5v}B)E<6ũ໾CN%30?%ytW3e?t~g띙Jbd4\lKT6]5ZaYšjlxW~܂ lix:pR<ƥK!U[8o s~Lh ua R8w;2w攼rgTPAG)s㢿wdǝ4a5kf4/߸74{Zq!;'mtajhδq@:GV2TiyRpHb4%VR,).>\#0F缂G+#~'0z !n{?Ap( ?,_F@;lB!h54++VįR'YH -@J{xIiZ@ {P9i8[A1قR L-"$wuBQbvКf\5ScwhTr&YLpHiyBU<"uur#oCx&ӨriJz>L`oܨ~0@\9mJo s:0Ik>|q-0xl9!ʻ~4ç83HZL=sg/&ųIĘ`Shm|Rod:Y0\fcIWuAh`JY[X"_Z! cY0'EIL(Fo`atn̝) ܚk};m*W:27 ,~i,nA\7Fg=|v +,$#})O)Cy9_d g-cewEn} :b&Tr y&HR4Qn|֍(I|(,hre'.'W}3 )&d}m{uTLfWq7gsxy1Z]i [>*J{N|I4ÖS1mm'R9Sl|.< %Q:QV49 cͯiaszΔ(hD`~+. /8-V1#}zDBe'|jƵ3s\}ڜF~ jD"5pBK d;-d"_IO|m ,NY,k!gC1W q~R n۾9׬Vh}+!z^G4mH}#Z^Z{/N9qv'[(gFZQ낣5Tѣqu{<emsA Wgn#s,-l3?vQݾ)).E-xKn3|^a`2NP_-TJhYn|єqCAK ܡhb)5Ts^_ߌA;9IlEΠ #W)&kWb^Q3gh==jWj)k~\wÒ*alL/2:[ཀྵn9̬@Ic bDb~{8BN[T{y1Q+E1Q95M.m\ $ܯKzid(_8l>\md4nЌcC ?>K"+mZydjsHbLuP 5x0&TOk̛D(PKf4arZ*{s`7S3|&r/ 4=5S-wI 㹻kxK Fi w5B ;Z4[_Z/?/)hWE_퀗CI~84΃\p Q }s@T3u&nJwjcls<-*yP렂B0 :d01c?{ 8ia6&1ϞbGz + ݊RWmyhz!~p~C0v#}l ojJC`ݗgd/lJ:A./0n<?5U '^A1,灳r*N*a hQ5#ٲ׊reK4Ɣ>>_*d G`^,i>u 8]S105ި:݆ŭ"]bl [ 6N+l&PX:ݣჼܢ_b/DgV:ei!|Xeʟlr"۲yOzל %Oy!1WM1=b1<3_b^T~CR̪ߗ)e< (W"]ilN3RtdvrCP+ɂ`3hG6eԶj}Q $m0PbV7e6j 6еK3J6W( wUh,+D]vD]EP=s<"d҄k|DwLu=f^p1-zlXT@TsB*T{*Kin/XglުrD[Yf]zyGBWoQx ǷCz%Fkn`/ʆc,Izt) 3/sc?fA}U mB[dF 90T|]b3So1Q阉y55ٽGpHV$kM#Z%eDpbdӟ(G&5:`x2sL@NZ`E`xs77)%8Ά6%[ߣ菨j_QaR_ Jg J>`aN]}(sT&of.qG[Hy([ƒa4GƗY,Nk}Kݻm낦d.sbrt BFMmb; D .8?fs97 CsѠ.;٫Ӹ+'k:ZJ')s"@Qoi -n_){VI$؅Q7S8)/؏`I08ÁD3P\~7d7-!u V3ŶQQQkFÅU`#Zrs9.5-֠ۄ /n٦@Z< u~>S2q[͜TccFђkѹG=3†_Ho]_Š6: .vYT8/NL<̶7= *0yf@Q@69^̬Y4}iP*;xYW6*]R^:1TDGIx~lLR!h4]S#k,v[}U7ky"=1's>O!xF%HʜFQB^B] rCbrNn΃0dΔH#+|0,pOhG<b`-΀p@{t Y ר4FD{jV(w_FKW ԯbxIo;w;n~=(BU`:A~v[Xv~U_8ȼ2[bϮiN ]G=v1.sSB /әb@*Y93ٽ38lϪ٢akyځ6,N̖G0;XMqF+xSD>:gP| Pg^VѣO/mp)t&y!XOѫ$7Sn? amL,-kӀڭyvW펨BKe-o4FhbsЁ(eMx/< ?91l+q(- TK>`V~"h)2S"6#pP)YeV,iᗷMFB.K%XF;b@Dmqj@ގ=4[&, `}F7d;95x rh9,q" ^A~˘,ߏhr 3mI\ JXEo9!;UXHCJxne:v GXGF=r *k[aZ$#3Ÿ+$iPSZo dàL ^Hm!~X K#|͵LxH}WĻ$ -_Rm07%H\zNh^RnV'5hn'Wr ۳ڒ"4yULz>\0'zq.۔?!EO4Z2&,E/l#WgH2EW4aaa1/  N&]^BK@H˖1pȽH%M 4ވKRY@pb`&[C TϦe[O!f\)`F'i;ބ=EL%ՆqiWɛ_Ѫ^^|Z22feس7UXà9Xؐ[\m,׷z Įt iQN8϶H_دy vA5׳Ba,ae*.FT?tl2SKuO΁q<7Lk󢓊zlB&h~p&"6FmWﶇ}>)[3IJʜ4d0](+sx?BS:4}Sf:%~Nx 3ʲ|QytRG yj_ݲQİ)ǠS 8 + niIN֋hYKۀl"BfY|XCp MքjpOʄ+v/%Jn3l=&E= Я722$k$KmX2>u5ܧYe2ҀbuN1 *t̬qZ0 jf@“uު=x;)mS؂!@y|av؊QlN+J hv3aL=2N(cQ0yuaVnS͛X^EUlqG(,#GpwH{@C(.뱞?KƐ9<}9MkhRWSڃL^UM"-(mjccTQda^QoK)e(4`KK5k.G_aò(6ACuQɽ&MIOtt؎qi)Z*>Lfr>'#հ4flL gwtYV%S&6i2oSK˵9u%l۞ip{5ՕCa4'+G@K34'@6_<ݿ+65eԯaZć(C|jeȄfK?ș,D/!yKh|n i)2ϦRgf[5R&tlc=ƙ9G NMrs Z*o X, N{oK%"NQUQ "D%Fc'`Jz_aD;gEws@m1tr,;oj^:0x?k.SIF5)]ͽ{B2sCDܸlu:~'hMh7^ez5xS]ѯ݀W+E4ij~;Kl` Xhs`e\sW-V뻤NçɽoVy/V*n}C} VO7V8ܯOzPe"I#фԕ4xsk@N=SYwW3pP qB4]x4ـyVD%Io&a*GF< ~Vx\TВQ`#nqק5B{vt ;zBMὮKަB6u;)>QeA긁u"]LpʸYe[M D( 1 0kmrf'lSY=Ap'wh$~aVfzf_)9o!{#ӳx|9*{[~@in%C[F9\< G [SC{"aWӫBTw(x{jeG T#Ҷ v77w=qaN<oBaʴ 7ȥ7`qT"3G-*Uz|%f&jD8@R 0{Bww1O qa,$픎JBpqVNρ۵[1D*w0.j̤S$^FA=}U1&[Ȯ,czK/QRoA fez?(ŰoYC`*\>27XojQtfYFŐ>8 t^+V4jBo++sKbO IIsk;Z,8wF)k5&XArY˘.33(D4O{X\/ld P |3xvEI }o%z0 !|8Mc!6ԣȄeRZnFNRфe%Z% *z3l$7@s!6\F˃T_x4O4!\C&C7 i6~O>z'ؿ|<ǻwRTY{M@/bE(se'b1.c*^;PolmH*d剜8buW O BY\~Xi %*<37u;:h#!aR_JPPY %h1Q3/=`(^9j )F!ʫ]a:{ yBK^xZ>ArÞ!3bu m=! -90Poݎ< 1:h{؎?GJQsU󊘄&w"u:BgHDļ|%~vs&»9Q] ci>…(Fٮ YuwQ%ܭ Qݶ.-𲦍9Pey/8 -Z;%Zs;H9)_f+WHd&ElKNH\lKI7LbòW8-ӠoJ"հ ?:bӘڈDY;J^nW[Fs:'_,÷9F[PNהD4~I+}. J0$02_AS:SlvocQ:NG~6P;KzNX/x"i>>/Kêe8Y;p{r*$Ѐr :3 ;"F%0?ZH`<5G-^%LZتL?ͰOunb@)h3]&2N#pedg]m %ɕ& Zu7 Y*Y2<^"&JS'ټ Z#8v.Qn!'WZ V8IG =ѐ7ЮֲkZ$e ebu"/% SOn Cq"E [%BC};x6͖~ʝ{2#lj Ԫk^ę&綣:UJb U]QI<q=3|%`EӯQ 6ɄIWϙ $TIljڞ7ƒ_?ŵ,|aNb`lCoF'<]zID zmֿX^b+tsX20F$wT~v(&%l溽(G%3^\97}gp,ϰQl ci42R kJS5B[gV'ڤJzǸU'sJ{%xz!BM#c PX_&8yxv/43Uv]-<;4műiw'*2d:9\-IW9D*f!? #A< A KQ/"SS͖D,1#c}AL,/JH/ OxvFYQ9:^"Kqh7lYkd-}H9C0n3LTǯYB u^hl-1u5^_?;m=Z&:s|ֽ7-K'w4LT3!m l7#@bT+݀Ie3 R6P⼠N$TUehNvHP6tje!d%boJC]O@/R=9M_>*J]tg|oR+{u:\C :C:3Eb3c=ح67Ǝ++1)RKYڄiKrMIϖ<_΃bJ1EM;]eͻ S͛.%uT UvE -BTU%z]2dpKB_OPz&E@߾=Ե̻ba!3bz{D\ͣ;I a[AvN9Y梅H>>>|<,ڞ#_q9,L'}ӒT[kn}%b6f\1!W]UR"X-T Twf2wڷ\;cI+h)|zb>c^Yȭň.ؤi(gO-?-Di v=X6mE[Gul8FER~|Pguob[uWTWΰYOa1C|[cWk<4ҸJǹ=޵qܻ;w[}d8(@v:%Fe;ߺɘ%p]3VM@6S =4sOcy%!OB!Wyeʒ,6Ac^sk,gۿ yyk.* н@i,:ٕARȄ_w$Be7, c~M G@_2". O[hߨw9&>rp؇e;isG=Xq(!:glXgdk#ÊnIellklF6W5ݣxwB@o9AU{D*g#K׿XHtBG0)ԑc9&芴rw}վQ݅q±SVeoRp*5wԙIߧ51׏L7[q|AVu϶bsdٿ΂;q'_3P骴Ȣ~Z^œ ʢUV- =H) .yk$"Mcj|$=2lԢjϯ@ex;C}^3IIEM?9H:i<;s&sF}WQ1b+J%'8mo6jHpUi 2HK0Qjl me+ ͈^ag+(T?BUhG֊V|s4|B8-xidd",cܪ礩+VJ 57we]%yM6mTVk/(L/kGK>Otq%qf~PSMN0?`OHnFޓokf/V_NQ9G\ܰtDXnE7n= m>VY! e_3V DZ,REt'6t̏Q>:P 3F3fq«s;l|I=_xqg,r(˟5ߘZb]=phi6L]d g7~a\R.sPufp"1C=8UFv2:Yg3M^rgl,sYcȕ&eKPZ qMyMu/uuY_>X{T)T(r#ԹɺBzM#xJ8eHQq|Ʋ\5[̓@Iaҿ`MC%R&ܢӻla%ͬ%(K3  wZ}CÅq=}ѱJ':؈us!X7{8Y{}kJ @@Ǖڋ~i[I(#/=ܪt9b79XW_]K1M逡l rYGSh6ME7gT&ɞı>0n.#}kŗso@c*TPG'*$'b$Ə6hԱ\fŦ\aoYb4YiԄF_ڸc_P% ]Ti\*hKǩQ^x, dp1'6MqZ|ETP^۵>;X; T.oSzFxs L]6>LYՖ.)0Ѳ؉[>< pr-P7 D!ͤY6n<2܊C&P[,ל3_;ͫI%!B]JZe,/s&KN ί7xޒˍ~B=kX,CgSr'ȡQE.MsMuY*^YR&6U~R@=2e5A}cxB@j FĂe_X~jq557 Pl=8kfjkQeɾ .@,eˆ0z'rBJI}$Gѓ,Htxd(9B~7VZ. NOgM9y9 NqO2, ΥzeȐkL|a57qWwCc=(<ޑKX*}wUFkН8Wt%? Dqc_qOsfaZƹl't{qvzNc1{juNhgn DE.y\{' B+!6=q~~SI4+ dɹҴHq%mTsG"w2B!ܩs]Us%'΃sl%*E*tK>!ʟA7Eraasϔ2VhЦγvC#{ sQnéĸ'e CȺ ШfB+ .ꝰlAͧ!loh(qv'lMr@X<%=cgQwz:EQR@fnUo4H%Pq"6!fuRO[TUXQ/jrEsEe' )7r'Jm;nz(σuЦ(2{q~FcM@glQP~|d >fZo?65ZYpNs&ac6#!*+zR/jkBxVHuEor;RmMDUg4A[AfSGZ:X@)C`};S;vXbKͮ`V*YwWS4TmLO+pȆζ 6#v>te;2Tv x_#~gL- e:gLbII}Wfᧉt5fݿ۱ɵ8وxEV.O 4>C5G3qr">x(.aYu%FNOtYC=r+ĝ d#' Ibz<]S/<#"-QŪom~Vyj~+M2e\FHFҤc3&7ti :=jttDY6g1-DUE3E_ӺbUCbt4vd@kWBƃ JZQǛH7TR^"PE{ig .^\h0Dɋei$Pqػ!§ 'f}k|Zx6y'( MfEYz'9ySO ~P%}1J֖t>!&?Τݏ;@M5P֑Ol&pLG1ҳFαj2+Lk2ʬ Lچ& 5 ,s<,0jGXh/fmxmU>|XS:۟=^ZzEb㍂$5d}I$|:GDl{BX؍K=v*w E+,\ZDži2fZ={zӤ-+JWj|eE@dY1!`+&O;n3vZyg @˜ׄGHjxCU,J"W4C:8NW~(/&FgLRP W@VCxyj{"vB_b-iLS.'3;$8QI: }x{V7]s A{:~ ɝl}?|9`A~6n3ɪ+!.ȳl - nB3'Ba+oŞm#hz %%\j-zDVxg#^"\)·[ghh$b$hj 8}Y&Dzޤ=s2iB+'2RQ1fP,7ж[C0'EfևԹ&Nfȶ)fI)y>%|'!kG؋m }h\C>r礢}Ɋd[1iQOٟf`I=14Q };m $qIՖ!7X"2ƎJȝUROŗIy"! cK Dۤzg]$1k WfwPO&3=&T"!~9m{97]qS p JuCvkhnwږjU\Jװn=LDu=sZ0OZyhR^+SP?\m9?,&y`ez\ú<Ly)g%[tnqa4hu2ELC[1ĕ?*4~W~4-S8q_'1ܖnGo}e̕}hާ^OB3{ԃ*N+oGb;|bu@KUz^ 䑰$ݵKޭC$zVWNG9kQ+3O<#wM3 ;EVQ9fB? )9yTIF[!+{wIiGl~- wQ ʿѸthIJvd˄ 5 U+T%tdL%B P4 J~H9IuvgZ,'w^Hbz1酒=Rִl7kqa 2}ARRڶ^p׭?ղT?]һɯI%2͠YJ TqE>thq:8g;v>ld;4E-)p* $bSTC"_/$`k0;vGJfDBl@qܾia[+r.b)^:FCKm9p'4uGvi Jی|.FțTYYs`;h t.krUO0} S6%e?D˛rgF,(H/Jv\ƬZV g:3w|Uv5"@H\;Cu1()4fa##G^:l!'nJŲhpSIuf nh< $ɐ&@2a$:+ho/wHOpXsԳO2\~\EWTZհjPDlUѻxa RU`E$6 y6sxj!6辳g.8vxȞA1 c?N tB@84+v&o +H٫0mWib@gٍ[siooqRU|8cpѯ?;'4A-\YRt|v5kd6Q>\SI񰠀qf{N_M%k/67^?fB-ś\%#it^U=?[Rԣ(W(fca_B"YZ{N^'@k-ntBMZ[Њ!ς`}h%AEuH꠳ƕR< Z Z%R6B@}yzJ׽w%!>vi]3Ɂy$iggh*&nz%e ¯)I CQ@#}gzg'('o }ҾM` fe%h[?/eJ\[‘[V1XUr^Oo-_w0ר"}4*7F/DNVG0A9Fec 0H XS8_j4C`9+?>J^3wgX=&bIfM77}*"mhMWNwmY' \Z@16!3q벬~V$wOTd~9eb)O.2>J%ip5d nՆSHO']D@>%Ӛ90כ[K.tj߫c"X>l,@1j5@BcVzp~Y}G\pωjS#_] hpcoe `t. @Ymɞ5]7s;3P lJ?T>Fٱqo㞎2t(ި;2 ':f_Zcbճ(+z94s18kCX4H : >\I=>p22,h șWQП5^G~!+V٢fzOx(ȺX5|nQ[c(Kr!-]=\%/]Xi?Vzo*MT_jyUNd~"oPx737~w8޴<'LjV'v oc\Hlww.w'j Dbc# )*![.PCwߏu`kL@^FP2D"}IYoQ n} O0d+`ak=.(tD墶ti0`i۞#XHZ8xa7{Ig/\ۧ E t%!IzNqP÷UZ[0~rn/tJF/p@0k!Jގ*UJPs G>u5vd`F%FL@JfVdi,)^k;gc̲z8NY=d߇Ƈ82?]`($8@ʊN,5.%ʔ=l[²gA:_cv+ۻ/@):+aOdʅ-3#)_-ZQ5!-H={ njӠm?\EAST=s|9Šxn7w1*V==MͱrXɤc_t.u~4~Hm("T;ZOQ$5ܸ)v^VA ܓWEkTIT]бi^ށps 1NyF3VLJ;yoNێAq'j̢l̾7L DE IO`8$P~ -6%$:RZvIɸ6g}{P2QOd:: ΀b%j{-'N{L6]\N ,¯^Нk|̓BW5Գ@YϠSĈK,Νv>30T,Ptt>E1)jMɢXk;Do.X@i ۈCihHq, 16قE.pLF7\֏2ta1 lZHڬFxhbWj3D{~KZ/ؓZqΣ [4RYS"(X;,=wC9 LKU7D  14\XE/jU-\s}Pe?zqdBX[>ؙk`fD^<qͩEgQpwPm>x^%b< y9kJ- .O'W8Yo&׶$Yp˭ Gkt]*U, /U£bu(~+؃@۽Ug4֮}jazQJ;C:Ip'!5tp鼄V܍wmA6 =aLy8*-g^mDmӵ0sƟS.zو).A8%#Fߠ6g׫O7B 9/d2YTCmj#bI`7|8[c,jA+ci9mG*tܨ_)7o =V wB6RD\5$dDW]3qTr"c[_ gD9ZSDz[`h@ ZńJ$Ňx0E[COKnHe@"s{؍./rj4>he$+`4z࿛NQ)A_8ܰ2,wb;e~p=φMO*|ԓ,/z{u1_bPĕ)حe0A+9D귞 /E%We?7PO(z:H8Epy fr)pe/=C#u[->%' pYw)=Ұq FsQձY#OK%\=GfsKvT(&sJx:BKS?J.vSvy˭ r&e CM\RಖB_smtMwsm[/&"=Ni';9r٢f ?; ӵl(q q qbKj/wNjZ؊MŐ;:fݚ_@ctoo4=(8wI%@ׁ:0a5'-m:& *ڟf=i/'1K a,&aOMW{?lȷs7!s aP8^(툂y qTWdz4(}5h7 L&1v{>E +X0K[L(q*M\LjA.~|:obxjh*18r{x+r~TE0r a*BZi@Lʣbkm"\YW y_j2u--F HkX`$½p/Uzx0Wv~)Vy$*PV 눉;FX05_¾iަDګ O]'o"YK}h3o仏RG@ ^~)+B7&iǻ{}s1#RW&^ +UKaӃHmF|e.a#Gr[amc ~8qE+󈟀/rEg9#橂7%0Q#`G.#n_0hmt-' .%_xDO4BoQ{ WOr;[1b+Ft#A'Zfxs(h'}BŒVf:{\~ǢKN[n! 3@DfY>+"j4~*jzsjw564U~qܺ-7 սM8Rx+?BY'Oyx͌ dPLs`I&(W NkbԬ/bisByHmřtzfn'W %==:?iQ|fdNyz~)X!+POgDi:MbNna'|#M'˚"nI#p"5O{Bь̮t6su35Max$ L<6ls0#3pu37O($M#v9fK;@%0A#Q FTRſrOWEn.՜|˄=& ş7G2,(*P[+.d #+D\X\i79!b&2Q͕Lր֠4OӝO$Yz;ynB$ rz̃ȾZ) [!5y</A|AZK50tL){|顒-Dx_Q}&СA J \O4UouVɁljwBH>K'|XHS^C QVy,f hσplȬ#n&jɃmBC&!Z:*dUC_RFX\KҔz*lw{>^㭊1?C)-F&o4]i^fїH6޵׶s ʹKd^{d1etA{)R)̸y[L+s~C4>P㨣Lȣ79\jVA]+ yYi`&G˳9aϥ5z#ːFP=$ԙ ]HM"9*n;U{d]-jy8VIO91*C>dUչW*hekpN4!NP?IfkZ4̂#{G/?`2o|h8# F6]Rڻz1{ Po5繿4K:٘S X>T{0&.%t:/>If+~XC{\}ʎGj$7Mms1iGA']LGFpf<5'fРD3 ;5́F."JkWm"X" UZEǹJ׍fvP`6Z`:ܺEo+-dNjw7&|)2Neqykx[s]Bw Q{ YR"jԂP#7اdz=Ć R;I6_Q.ʶ*|fqݼ<{b@xmeZK@>qZ$x!P) $L;\: 1~W!. |1Ӡ v F"Dr JOHDPW>UT1K/]KI`刎EC9 Ӊrai;>\vMJ1gt<#=;P-)ѷ[oQZ=4$Hi!%brkWwa`YfuPV#Eb PRG.msIl ńW9[r3PRdqeT+<6\2.Λ&NFa2OOGqT-T,%k^%pGDRv(nwJq$:L<_azd(+Gc~YB6#zXnZѱ6'O;qԋplvr@[ԟ9A']헁T^-|^BٶG˿ZvAΌД0*ƛ/6CWEC/BEatvY|Iʱ3kDu!so+.dB;G3U,#z@C?ӥAHz9u @BHڋ]QV}4;ڪ: t?U m*Jd0༽1X1_-'3 yg J|W+C\m6@ؤ'PE}sT0O7khͤǼI?F誃hK/4꧆AWReZv" .ߊRW_*'l>9Ya^|z7qA.FZ^l L{kFK/ L _nKZ-,oݿx3w/xCy K)@e [@5yuO..Y'!K\o5mLPФl h\1Oik"KuްR"1(z4(+9UhA]kz/Af 5ק_x^1JDn֭APd:o( s/jJD>ґۋO.dY MeKdz}v<x̔ìi^c `}!v/>$)<3e j@ylhEui5..pvv[SIWy(AϿZEe5bYrJbkbvu3i 4^)BՍ)x@k"#eD@*:'jb2Lrx-`2~ 1&JRtVﴇq-[6ayԈU;{%{ A,UӃsЏU\,t#~#1*(V$\Ufmχp, O%4@1o]aRCBF6/M *^]0^ 9|lǁ6! %VUϔ Wњ8 ڱЈkItK"Q՛Hy_rt]m.{C7(BejwQ@ܙ_(Gߣc#?ׅ2Ma2Sr:ai $7⩛) umCi7K[6.X'lwcTQ>ڍA;AךIuvl|Xg, C*6JV5 Rٵ`a b 7fԸH~ZYpD*a~)c9d}_ j"n\,]g4C[%:1 E`p";bETٷw_ojmD<,ͪ~;c_߉//J >k4 [1n~]1Yě\0Tɗ@܏=8\c=;~J؂x$n}d#c |T!)eR *_\>z3ҏ P ` 4J Ư+r[14wY7]?pqfyHb>D[l*‚GJť*$痡*9o J c(JٲgaWp,pvgmߊ$ Ef g7θצ<)Z˯h!FEIX֎?tii$ۦԾA*3*o"#69U<= 9$U:j6a>l/s&^G`O;𿅿DٳTdɂj5bɹčvYQ_@5-y;>SvyJMs>N|i&U:$?9u}R"B|ILv!eR+4xWH鮫Fw?{&#JaϳXn˪XTZ;򡯇zWKU`dge $G^١ Jgi|ppT@A]~xNpnp)\#(K ;(-“$,MExM^;#Km P.); sxd6Q) [璘4ݳ-DP{JOת gq ,(41{5oI~[7\P!kߔr{ F׹I~8<Ԫ 3 `RqqԂ!awX!_^ni}£QPZﻭjҵ&Y]Wol^`>ivN\wVԿE Rō}>R8O9준Ϫ/lNvvpZIfB^P$]k B~Ȟ7 Wt]At3ה `Ea/+_sSLt(ԕr4lfjDw*M“ |OE wɢ SH:XiL ʿJMMG|QٓsX SKX/Aohm:&7#fs)6duY~#Ig7/7XEeݑpÍ˩3y߈Sի.నJ`9bFd;%((? LBckq*+TQmsW<#v p'.&ygG:큳aE@yj,eL"BT Ψ{/LL&YN!AĒOgg^4+kpoێMPP+nrq[5@NSVugxGxͭԢ6NK{.R'˲ARv),eYlT0U&B[ ˳|PǛ Vr)Gh'5!fO%:挿O6Bj()0O>iUsѳ*#_|x@B-3̯ {χ~ebΝD"~h\˓T):"_zI =-gH@NװD rݞV7w, _HKX늵^m©[m+@.0]D=<́QN`{Z̅gq),Z6eef O.Fhbdrrg(9L)@ptH ԷZ%Lnmaakc[ FfF$R+(f/a8>-Y6W3-pK1Tt %QA͙+2֝B#77331(OWN݃Ɏv7r~BAb5 ˝6~zc! A $AA)KTR.hxP1Q+ۿjI`Y%i^i#=SqVT)p#CV.D >eb|`Ly,|BPo6q>J4Pj)V,SqLb h)sxDlG˞.8 n"Dx4fq&|`8/O뱳b_ LiTDtמq_Rq&!Y Ѻv2Hxk?T,L;6FDZu _ OF.8nyԋƎ C5~0 4H>uF.ď/$jo֙e#Jk] idh;}cGɴK=v ;L)wa̛#y#SԸgyzobzEM,}DQZRYf F݌l*&78ص%{d|?_@\lj^ Vg3`8&%@ ףӄ]$⽞؊.l6.c?D (][HJlzaYt\J{G?J#`k2?h)JVȭ?.0kt<\i=' 2&> j`(*A,TyKgijۡ,[l1Y Io\OKV:ɚN ?̏>r?t9G}?zAðTRamP=b#ŭKy}#SuBoks4ۑBX.BF~kY?-\|ô@;.H *'fC$cj6Y@DWp{xB?^ScTY#t-46* 2P؉lwJ9n(b.2`|4RH/ |' A>]2~J7\ ^iIXQ*hDYҠ&*T2XJ) v&ʿh«,POAC5$L |NbsdgޓJΖb8x^`5^c@a&$w6* hPc6ZeaTB'|I@^L &H9Fc=ojVv~A[ޭVMas \J]A\OGfd5Mޠcl#qEڴx&Sx!yS[=j׮81xeb,ǵm\ug6oE t.Q *XU+BP@eUP9䊜H,Hiw,0 j,57:wBr|<ߥzY azvx)wHLLȨ,p~e_~~*#RW-yrfqmt н`b<= +!v W~`*ے,MpA[KVl9\)] (!O sL'S@ 0C̳rӫV0g3TVygr̿w)%t ODu2Z}ΜW#*)nŭh)x_ H͟VB$ ] d:(ا.V-;=<>#-Oi6W5ÑX`ҭd>R51U}G*wm-V0}J:l Z4nxLBm6Of]ƪ﷝T~욌r[{p ><:<5r -QKUK䎑%J pi~mkb3d >ȥ~+ X0|G0ĊDDdU/\El ~ڣtndDəi8AnfiGS~ k>RZ술bo$ў£Pκif ?.T>]itCU@Da4kYLrE1Z^4meKɷ]([n9կ ֛C6q {iY6et']tl˨d=N z!8v1se? l4*QC)C 6 hhĮ)4<ܬcDy7V \)qKhF)Ţẁ˲mȾ;Fs2)ܜ2nBN^ߦNv@eΨ5i8 Fjf|f宯BD~AW$=E:Խ̸m >T^Fp\US& ך={2d:Ds` #@@\en|u!.3WYw-7v.Eo:c:$t1T{9>|\8׎,k0tb$C_>ėk>?ԃ>+8{(q>a.\*+7P(EzQ!l1X$6.V&Q]do º;؈sɶ\08@/mAg-Q Zqf% K'U#+eՅI؊K3p+Ĥ-goCGѬ}6GndM@@ ]tY@Kbұ'yvkn )BVLesIW(l|Cii4zPʵ1ʅ])zթc?%gb#s^x5aw05W. EorWT Ś޶ۣL8 0Bx=t“__P =׺:ce G [(+ ^nJ5~8y>]ޘT AۯHMsgQJ 5D2%ZT(?ІWֵ'mr.𮱠ճ yTs ;6ʰaU

    θ^~袂Yh\ B#iaZTS&m{:Šg#_N̮L'|v0IFL+ wO=DvmMlr]U◒\\x<=:W6HVRZA0\TJgWIUШ&5hGdj+&ͻCa%$rkG2n8V̙cAunH>NJxք|E@,0a:˶B++1UͻtyE99o'|չXή@P %s@;Z3?lʗU -j3 D3<ٶͣV. %R1rC`53UN!.b0!].LBe!cRC]ؖQ ZGN1z8>N{(sb:kTx;Ԥ1`ox߬ HJ7H& zSRJf:%BBTR&^$,˹ whO{H//V+Ku)djR_ŞUȚh{7i~NOZz;RBzrw8lbFoe@;3{FOEO0k!{,?q9G6mn+CQzAu")\;h'b^syЅBes΢Q,"2 սN-O;|lC&ʪkY.b?W/wgf|7UN#|p] ҭ bc=5fp;óp$X5cE.xºOh0͒6}%{%˥-#V9?d Ƅ"xjLS"RAGƇLDԬ81r,;^Xﱬ.֬[d<>:7s[u &<:jG;_+YQ{3zƸk_lWRN9cXӯ*mv0Fs*Q`6{amXI3+( xmpC~8`d&:13ET$fٵQ9c;lzO/ 2<"P^!L@w>ZV ۖq'ؤyQhSnSI[CwV-ӆزpӋ|8Ruw(,&@GT#٣쪌ύds84F(8Õ*s|2Km8p- HQch\܊HxZ.Zj[ -x1),z Q!9҉1HQ^?Րe&aqx5}(oYf X$,5[0ئ{Bq&VBVETЙi位zhl7\?QktX]MP 6cf'ři 0Z 9z)C̮G]lj2J#d榴7d-vhgJ;\Y[rAt - [ufBxT7qΓ{*M5)xc^ ĠoυR!.%A`El0!6ﴈhPΖY.D /㸜u#{ƛT+ [f-|$ Xl:en :(qJYX6'~C٧I؄'))eQ,wh88D:ߍp Ul]~l.ީĂL5WU  m9oT?ԥwqNsނwkʙ2飬+qYL<^Q9jAQ Q-#ϙb^%1{pccU -nAܽTayyG XSNcTB8/~R?I J0rD=6u&߇e;#K>eqx}5vr2~iɵcu'1y8$yĔDbs=2s*V:_n\ڣ,Or?n h#]lW*|ꄸB1'HibJJ D=( C{]LFSиuJ0=*i]݂7tn%cRd -3f`/u8 N<譏G:RAL*}{"cehAo!NȔ`ڑ~PR:ٌW$ #7Ma_%e'Yv7TJ: ]0SJ;Ua#nx:ogտ%m~$[s$OSg)z',5ӷ)"G /x*0sw˭س֜* aFLGeGF#ogGR"Br`M_JfqՌŇzB$Kd_okR\o'{ U4/" ]pcSVGȣOAEwM"yc࿜rջ˧/|=6kh""J\z;qZ(v}>%R4U.Q:1Xu6ɺ0 鯰56 $Z31WlG ?WC %ڋZy]ح(JqFs^1)dm=m fE`hmjlRZKg s*m7?k}>8; 1% 8~(9LF͗]$2&ݞtu1^vhJBtWypd?+}Y_y[[L`1̄ihRؚvVY[12kI*tW9* 1oF=%^EQu=)׺+'0?G,sg}{ :9M@{)_m+F -Ux]VJg%̱Hg_H^JQDJˡ ?zj\S@+}ja7Ci5sbZ5ܫ$EhMzOXn2xL*Q'} :,+ 2{+=?BVtȅ y-nۂiwJ\IUFy,EB09Q'm:?una<"Yj{%|-2T!,FY)~O)jwIKz>K;$êa>{|7ڨ0CXGa"v0vDZ[%XǒŶCR8cr@eo!~U4= -/»N2*/Wz^mrPWŁv{6 LI, ̑=ICRF|Br cC;ET!TNv4(Kc({&z- (Ҳ`r 9qG\Sg`8$HJڞcW7t|Qd~dpt}U3zcLiFMYdQ֥5v\1wGvsuxQ#[*laZ}n#ZKyuc; W Q+$u;!6KcezE{]ܵaoܥ9LA=zw (G~>[dnX.IA)eTggg5.(07Gã*{ )I{0itI,ȤYLICߧI#1zSTh LZ~l"JO ʏV^fR-D\?hNufs=]vh/\If̓tϋ?]XhBkW'{{<@nѠSkEpbV "*/ H:Lʤ"'p΅9J;'('\))HrZ'wGfK!I)4jXJL6}P_%)Pvte-]dX_Ŷ3pv [\AEK*y9HS0="mz&ܧ{}-aMLGVIƮqOSU@Qr%\/MYbmI\u-elk"NFӍp ̷դyt;*HCv\@|W8i >CQSVCbQI`NꏥU'yTV'$O,Su4Xr!B"5a(W'~lsvc#cmA׸>،Rތs]=,΢Xs{Fa )cU:1fh5NKjI[? џLCw|u衲`HRϼJ'vRml#RHڸy2?mS%i!ؼKgK[ vVGvqWbc=$QYBJj N(/`jSeX NJlyACQ.%uO}ZiOcr=Vn2gwߡJ$%(ݐ/ub+ D8ZJ{$,&V鮝OONsv(1kH@hبYEE8mPc|x =;*ALjɮy6uO0M!d[}cdʩ#C+NsyaW ۟Zu Rn7m~  :C.OM5[A"4Muf.!sݳJわڐa/;K4LS=B ;LTk9’yfn8cSQQWؓjOM'4NVV7,H{Xm^;r 8N¦ 7aƠ}אD%f|4I; ] HC QFE`nYӍ|2O“q71䉍EAe.7P罗cbCok&/rȥpJf-1) (am?Iv?DIOh7UzDfӆvs{%u 3 K6qY߄Z8iVص4t57ZS.>9òxQiޑOK;n$N"zZv䯔uQ'Br3 oЎؖVJ.d26G .%2c{ӭsB>ަ0+p.a;ʑ̵Z4!ȩ*F2ڍ4287U+U6yw*@($&vP=SQ(VN#3v %bKZ{6Y\D}S$E )ֹXAL" ^lCJJ\ԭ>2)mY.&ҦbN_[F/4։/jZ -{=iCppV iH8D{PdOen jd`؊ۇEeٚDgIhK.](EcpP6ƖW"<~uuZXe¿l壜fluYD&#KA:h$- ^87:ϴ )敱AryVR'9Y*ٴZS}@=vNh[S|[i-GTtȎ{lOKRHHHhWW8- `4 f֦Yvt[lej ÏH6JϮ Ox%fu 39{^$qV$dO,4̶N=#̦ϛssFׁm'ywA: KQ0 (-&)^' 9 GϴWr1Iqy/!i@IK|p<πO$4ԓ ? xޞ]k`M) A#?ИrFTwDV{$vEGfFPh85~`9G,i<xE]B SbUZXU O}9*Q!&#+Vq9/gd*L:C5p $)͈٢( h` ?~ns~`~cg:'CA݆aVȣ gz3_۳PpREDbù*\G%{}a~8!Z`E*HZ;H+zpL^6|;l#M#K MhWL5H"3[A!FuݤaqۅN34\kH%Û3n= %\xȓ3AWl_a -ZApXX|g@Anλ¢ܜ#"ȈF6y|ğ%DHNt1|lG,980S!5eB8æ1}{!gtB|KQHST(ӊ~ jbZ1Ōעd4 R3Yv3aq>HF}"Ç'7XeUS&+`,ui:Kk a3x/<4 3dnE8GM`gRx<~,GZ w_ÜN~kDg=K ir7a, MC/{;w,Bf;Y'oB ؛ >OǠY7[f:̭PH) 9f2R)_*aq#jYa!.gJD 7Zڰt@> Ofr'ppE'Wbd| J{w{p`CBCX.f0Zw,Xyb(\i0KƆǷp BBu˜әZYw$*2,laT(WvYE@ڥ+1n/f1. iKؙp |{q'Ok2NkSG9oQD}rš0 H/kB9r9bHn"swHUo)ga[I:s~] qwLT'֘Me (^UvKZbGxvn+()St7\KIDp1U{#[ _)WW1"#Nn<Z.ҥ4 c~h)4YҔ3#_3۩8BؤM#4v`o6|M2Rn ?e ";ןΗ֓Kg$}MTN[IP9Xt"nWŕaܕg3U9gZpuBq#Nhp7q'w@U\dx/*(Xj"Ezf\ 6X@(f8Pˆ0&+MYN҂?COP"G)ֿPa &B3Óg2̽m1 ^ ~~&nE.}5tja( :,MsŸ|K;FV:bԡ[7GncbPͼN[s訔|fQ*S ':aJz7$Pڹ5:$7flJ\5 {#c,Sׅ0ɋR͛p[w}MS2V=-U!M]45%SEUA- y7~q=ZֿiSn WIs)i6%LGV1|^׋ḓVmv=ADM4d \U_6m z5T8KeAGWpXw`KLܱ`w8iU#4'8*;Zw,9_FvXb u}yJ9ۗv8o74<b {:~TNy^fSicsJdϱ7m;Iؘx\p ]eV }7#ђy2GȔ/H%|:=3 '=V]2UGøQNϩS)Er0ńgt%CMH6ڼ|~l>VZ#gFF`x1^ or > 9+A;G +XcdL EJ{ojۧ($$8Gc#嚲qhR]kI`hߎH_}JSm9ju&>TB,X/gW>hBtCebsJ B EAdPn8t7fu!5fK`ej1q1V}`ͤ4#*J'q kƫmԝqj1$e&`O p§wd= VS;hUxb7]9l6hH~wӋLhI s|XQ(\\΍vKÅ5RfaDgn˿9͜lL}ɦzfOŅRo=t_L٭_\,+(BɶvAQa9~\!8 ! K藀) [Dv& ?U ,ȃmj47,ׅ\{+T>3]p:NbWuӒp AjM?OY,fPHu ]!_ KFݐ( otio@׈p6קQSVNk?T|k>BП=пoxή*tiJLt (HZl9f? b$i661C{"f >O]ny]9ǽhr !\){ lrxWu2b1 i: J(aN37 a0TTy,q h qpOX~Ea!n/KBEcL Ңe0w~(Oަb%t(I0)H!@O?gUYhS- {V'Z6 b;oLTy<֢& ?-C鬫{cO>kM3&y(k򞉭6\Ϲj(a|j"T+)ϷnXUYtק4VEgӒ|N7 ]r_ű٨@n+Sfz_.˷.;6*k ;3+:.ܦtBz~ZQ[w^nq!E$? u|Yq3ݽxcB[e,O|,,8I#끛d(!ةqw3?77jdF>*g;T4wI,b`$qZѼ_JvxWr7<˜QAICH.H]=" uz>,r[PnP}xjz~#gSXNQSa!O1!|B*WWar)2KEE4N_[:3ǣ)5Gvi cxe$b0uavD&N[Le`iY۔HAɺQ/2}'3 dy9SF66I"GGЍrP'v'mdӄ>b~FrĊ p*A6q|SB.a+w;z?M#z cu7cvm׻Asg\"^:\6Ylr1lS=8}D?a2f6o%=g< [FU-r%:+Yژ~G׻ [: >9sLViCZK K%jm8+ۏZ2dpܖ f\^жP!)HZj@-f?@Żwpڀl|+sSw:{Yiܼ(yq@&~Bjo<.~r&<-_;z| oxՓ껆v}oі9%٣zgklTؖ$`5l1hzk؜dJ9?>Jdثp ?n +.T@FC֬ҥț|FeTv=vUց𒸣^5 k_jc(j'h{QYoCd3?c>CŔ .(Br9c)Q t ]P.aƬ>i`zu@T1!! lDG[ o(/A7T& ʶSՈJ}we9Aec^o4/Oeo2[,6 ko ~ZbyQi(g14c_z؜S""}|1heK0x˒ k5ĘNQPNY֋b0!#7Eׂ0\_K+lbt`0b_Uq%_8u(>=| 1:,;XT@Eb=I],bAIwH jp`ɏ`K_4I߱ȵy^-o}Ie T}e0@> or.7UoOtwʄ5wj$m; 4 qzQ(-P]N`fng3W>RuӟJi&zf< xª%ܿ;¬gwQ<9'鋔o e{,\YL~̐zrTJi!70m1WZ:yO6U 6@b:m|G s` wDGP튣8rϠ|k61LQ/]<>`om0a}ϑ LŸ,wNeo3JHZǰ;nB}f aʢ$𽼘l!Tqm.SנCB(L23O2+JuTH"+}3$ƟuG>̯; ;1t ԅpSLxъ%%UAt]Q0D:nk"m?ˁ7jI f[9;o3:uh}\Ƅ`{*vɷ׆ bǏH)&jEugWUX6 1"ަ@M?C9$aBt.ޒNضć){fw-މw\^(cmJ] !yGuPrvyfͧC-u=/{ಒ1ҦL1ԝ *Ű=y eTe7!lv('ܔjЄ 68-kZOЧY]҅77<\doP2 qp E/R@LoUxk_+GM^j9,'BA( B+_D4z$AqtM]bUFj` db5!6#DGeZχTNؓ?7RN ]Ltf.AƚzҖhߪf#=Jj Qq`RE Fl0u鞴V%%xEbEa/c磤;M|t}4HeThS3mQDTX֒Z(> An^u?X Z0azousp.&<*&< P yVڃEs=uHˬVj+[jmMYk1E & / :=ԈDdkeRe̯+MNJ)ˉOMM}gL=IR=c&ujуtd hc+Tlx.s +GITm)D c* ߞI,ށ»6FLu˃>=pX` tY jH+Cy:avꗗ9LQ?a%V,B~"HX1_!_! B 3DA6*ܚ CĎ?f9XH РR#{C}֌&.ka$1Oi}e4TͥHK{CeePPU.?Q*pͮ_EU<12$?zOW{q>h0>M4U>xQ[LXS25hRĩH!Ԛ?|H| ~LI?҆SE[m1l580G5/Ρ[OUrZ 43f_amԬ ˋE- W8'6u TCNZX+{DxXTվ q4[g~j6]@8h3LXm0B{$Վ*ɤj1U+Yh6 ZR@#Q; 5l xw:IE6wO뽵0|xjs?fnEJ-J,"XZF%QTx5^CFJ Ֆ, p6UMa 2} פ/=e{χPTdo{IYE:i)s#0IF'|gq& W6hm2DW ׷>3H9~8 w$-2v2KV2Jdj;[LN[3%G"hˑUxqS.T1w%@1} MrfunmIYIcۥ86܁(8|gYPjgp5x^,j{0WR>KIS th]&H;@ ]Kz}Y \/īc-|~+@e@oUʤ妶^8ҏ&i%Ɵ| NLQKYG(<+$ +1Ւ H<^4o $HiN%i}$YC3 X+(핥1yL"BDhͧl,PAH]N6ۅx{'ZbYf{ZJăHRˋ e $JX&_wOr!A5+ۤΚk^%Ԍynмp`t^5:&AZį$]3oܙ'8`Pk+2w!AH~}GPc4LWm64lR|iZPQ (kZ hgAT(9=|p\J>C](,<-r rzUI#P/e 35O+F7.+ X^n_K[(@DT^7 `Ua.qEC 4÷[됁C݁6(\ rp,gR8f#`eJPأ(_L{,|[+]q}3 < cRa2^IbdvܦK]'|sU@OU4Gۮ@=3nr%jvK¨;wGf6ׯĒ-2z]ElLF-S!hvsK!r&O,K_,@(.3MTi&rq'l3#:f6pd{-W}dgDښ aev|,D^M,$)\:`<ܙrFmv ,R<{\fX\$:)o i <3N.ķ$Ǒe$b, DDqc ]ws {Zb"s?+"t\Ŏ0؁,enM$\!W**F UB3z.p|vF fzganفsq#MfG)hʡky_Z6"I&|_>ŻW츤6, e3|= UGIoC׮6kdphS̽,rځ0~4T1)f;LL=mGІF=aӯbF}`X$awtԂCiY=EPMNB\YMeylc ?2?ST=SLd-dsw+.^>q{7aaxd)"iI&ytI՘ Q9PU~}N@?<5gNF5]ʍI׬fs)wLh!1_ae))Vl88,DࣻTGA+^'R_ʛ/yb=$Wl !NgPï/R=#2L) wsʕ(%%Yf:H9z}(Ds(Fޙy*3{h(//m/ePkA ²!!:dt׮ynؑqyWU'^3:`|[SCYAJw,.B2SQ2x m{k7NM}]~Mbߘzx]u8XO`:W,^S\EV*fn?Ua(gY{GxNY@6OKdB.!C#V[`[%cVgs`lyeپVn S蟝j̵-&6]y C4e1̦^v V{mo"B>@ d/A2 .?wrhU}4#bEDd(cN9BtAw(8ك_{] 78T6 p=RG = Pb-[nԫ2AAuWTPM܍N`P[Xw]E4fQV= bs*ŋ[`-XϘ!eCM)MLJrm\ʷ;2h=C$c}e[^<| Co[rxkXt^;8 cq!K}q:HucYg.bp3'5wee#9mNӰ0Y˿_W"[B sJU^3PP@4I er?GmT̋,@:tPE~$(ugQjxQ[Al SE)@9݄5Bٖ}s~e U)){7OyM ik2zWͯP?n0fu tq"QT[© H}QȄ,ʘI;GLdolՠX+_^OV#:h`;߮;l%X{O&Nu8Vn1 r^Ӿƻ?/|i,:pmjɱ"-Ҭlg%d^EkXXs1٫3\;PVR*zurߺl%Kz6!^*. 0ِUԩ3ȁ?@RHRp:v]ܶ[ (N@RWoW2);#Z'F3Sg̵OpuZ"GljAguS:Ѽ鯈ϣt. 2:ޖnS4qqS}wߌ z;kz."۔Jc˼BsÓ `<Qx?(70u)Ma+i pK% iV80d<Q ʾՊӢffheT\:(!0>okpLDts&YlOf'%rW)J~>B\cL2XC5;GRpĪz8#SڮKj VdI"}%awAk e%O"à%qUg?%qf5wGLJ50Z(a9v2Bs{59KD!==f,3 ^zGvHG9ƕ%Hj\y: =55hϒ,:HRGƄ 7RFuGGn VGHQu#zx>Qk9gwfnt34&?}=Mnb=\D~2'Yw2(y.wSϩ,2?۳sqZ\[d-c'/SD>]-+]"Rp*U~*6V 'eEl3u01XgӽZ 8Ql&~,G?6F bvܧ"H]9cs(nDL'ZP3k2q[v.YGk#jIXЛeB=n`7'pO#pOX/1Fȓ)Ǐ']c`s{w?aJ!QOë{_$&`MnP=qy.EEƍ]yܖxJ88bC#R 0nBa$C.5OCdBQdyLy} f@x#j!Sg]C0i`yYԐj:ZXm WtKz*.[UvpaO0' T i7ix@m[>UoA8{QBcZ4t1ݑ`īO0\,x=q&sK9fu\Ꮈ_zxWOesJɀ\\U[We]_MR~ʜ} AڝwHZF\?XjJ&CNT b9CYl`j/.DbԳDF9d"nV?JX,b]AבvM,ʊQ;S6ۅ˶ľMдr τE_]!x蕠P`R1Es-]΢JжLѐD9q{{o,U&Njz ܶ!RY2K$?/Q{_tVK2xPNX9VYC*u" .A׾%Ս0/1wB/BړSd)fJL[9z$3 RTDgOr[G3V`ǡf s 9zThsJ*\MH"&L)ƬÇɿAE0 "ڃ jm @{씹BPS \i-e;eAtzHCDoo }3iַJ-? :yCj+(*=u<$R]&\Ĕ#vV{bl_iwlGҕ.mᝍgnD 2 %ܠrHUp-ckjK8K~ۅ@"mhx91 |$Ԣ$&o~A$0qGͪŇ#._ېPh@Fz 8n0\eX}![|K7kEΣ_R[G!m [%gERC0mh8'Fz45I|+ud[Ʒ<&0PPQs&M ޏ^cg*{"oXiՐ/{H7ؠ-*$rQ|gA1Qu"`W'5a ٖh(vjLvٹ Ef:u&>D]ľ ?)!^Ch.RO _ZSi| }WnccgU'_Xu_"jn/K1c$Z:y'?bSNR6`MX!_P;$C{yn1V'`M3㜓 >.X%ni5(d*y~ުYu_D5t@5kUEIW^[.x>^^Yg #C*R@q)S'fq9ci"/[{k)l?ͽwIC9i2HV R;`oW2{X͓xRS$}܎Ϙqѐz@ 0K| >RG{bwq2j#yxg @01Bx)tׂ/j|%dXfa;t'5u+Spvj9%=}/MLvZ2:!b-Jo^-~*.^+˗|du]Ӽ_qU×!8{*!CC#C]AJU?D5hȗ')H0(V$Xfq|Tvc2ՆG&6hx\ u:ȃݎŭٔΡ&)/I^-]+>HbuNanUYhU{'sX-pOz>ÕcꙆg4zog-ĔN am a-EJ"]L̂XX'=\|IL(|pk$=.7TD875X˩JʀLMurZH1u Z4%b$QnϚq($H_WY_O|PK-iQ& Dssk|0.1TZ,u OJ>12fbLnSN +{0~`f6Xhg!r4I2kybx@k=-Fıe/6eodo|*2o~/l2+`&Ol5!86? te9o vύ1Uʫ¤0h_R)Hb]9z)'=ڎMXyO Ot{@q/օc#;aC?S 2db"c||`y_Zf-# Bd)۴a j_ϳ$~|KP>yOm㵰~[}jNid=aks[= 0Mpڷ/`ԕOfVJ%SY~=R58xvl8]$g 7uVcpJ-Ptv(lt@ c*6 Տ {2ETX#7O)<p8"*䫃@Ь2h|lQU9-0ܣ/] jBZA NiwK 9+LhyX>߀V*R n癍=Q\w{aߩ.DV}*F9$~!#ޏ? k\ Y \[\{x[e,8Ekxbt㠕|ڻg7lc1ɛc7[ JE%񞦨 f#հ;:w@lF#-*x@`+ *iopja reXE0>l!:PRiDQ`2W8zȹ l`Σx '(8wnM#7#ȍ9_%i0yuCؿ*L&z%^WDt'_=\cTUK6$UX&*[Cn$hPʻ1Z$6S((2- I& %{ m%B@%jP6G7(GkHD@XOg5cPJpP QfA؜B=]/ixو)nh/10v3h؍[Be2zhfA@!gLy)i@G&21W3ϧbM<棳kDl\X}!V,Cbd0tgqGDƝTwbhydʷ(/fO5m$84ľ`hKh)>.8\=R ]1 u=sR.5M`R`ӣC @PڹH>ZIJRvW&]H37侂dr#.5gBA3}M^C*b#ǣ?_ʁ: X#SNG}7)c (]0W3mIOf D1JgP @5had:O7>#c"ʍa*}2ݐ\" ]4Rj m*P q-s z=ABF\r>nORpz 3o}, l<9T r%X[;`}5f'+L\u1ύ=fЧ9)j L\|X UD O.2RxBEͲ˪$Sa.嘖58 gRL:X(7euKJ=R' 8c] }81b !|g({sɑFוt i[_ZvtOePql&e~Bۮ32 ;x7_3}Z~lM]6X]Z 3$+/?i*?"gU'9BJ?}s0}_|wɮ#mx @3Ξ /z'QW> G Lg$xptTNN3ɞ$ f=kIҩ:~$yh|G pY跏 FYghb:oWTΪd Tc޷2(R( r 3륵\B+ƐF\b!'C%`/AH]HT8ԛLL ]X5m6!H9].ftGGbNw^|]_!W D {AsyԸY$WϰZx'}G0H$0-}}uWH8NQ.I/([̉X2<)c i6"sPE;-'_Ė crW!j4B49t'1JQ[{CJ/ŏc O!HjkFT#7_P?A) 6U2;}%%4'U:ÍZNT=j0!3N@"W˓kI5=h~s{BcMwXk,>?Ueei{IXmEe5oujPQCpXt6mFЭ+DA!6n,R>b$=0<d}? ?{JLm;gOP2.Tm=ޅb:HAp/߾y޺jФ(J#ۑGbyǕk{j3Cw;>8euG:9n߀ b8"&IౄQwEcmO4lZZݑ7sJxQI"R7)B&D$ƋC\J^]^Sq^#\=+L2pJ]w;଴d0Aog7U3:{)I;S]VŜ]>"`י$G?) B5,(saGyk#P^Ǡp|zXAUԖ>S2멯;b٠urbsq9HZ˭͸R#GdN]&%شOlؼh&GI xex;c|_' t%ElAA8H)"At#[2ehd>5ǡM/ehA.խψê jDz>i.V/֒v -q=p]@nM1tx~x" c \<=\&G#~SpBYQjΎ#%>?`l؊ۄ>|\bGŶ!>oYԽ`Cf { ,;O'&; ZAnxHYL @8Cw0o^zuk6d%17GEÃ5‰~ك3x{JnώLViVtP9 Ve s ro7!,:hg硨pq\煒@ YM΍"SaE ڶ"Ē5-ǴoZpf.I<>U˘NSιe#4"!%CD>'"6Ϝ V0*䶪+(zΖ{c|\=CY~x9qdNkZWvH>.\H$v( {ȎAiUd \F)FE~繳Ox}XzÎ}*M@8:)e{o9a@;eqsUݐ>dJ(I@H&$8Џ ɎiMrLۋ Ǫ@ym&7BI`ŎKqCԷd)Vk>uPG=}ܨot?KsaT6 fH|&+Z.v# "'cLw"&uwR$vf$aMܭaAyeťM:4VBv.K7eu TL>i"nj_f;+J#<묪N ʧI,fۤ9l5bGH?K=/ R_nօΛr<AӇ#0jd5o`iq SR">-BϜ2kg~ϋhf#cv`73]'+qKuqKL|m/&GgX98'/?zpiv!.C 'UTQpH817]൰jI i>$Ɗ̦Q0mAyPD%(Xڵ՚nuM B{-&8VfFEG6cG%i˺շK<\ c=@wgUԬ''o vӣ6ݟ>3Фl$$nsY?N2t:o|W wh-kA@'z~V[()> a(`eǸ(<lӤdY^YK)fq*]A2ᷓ`a#J(=[Y o([^컫.x (TGIcOOj s ռniIMk!JWj9>yoP̒!g#a9J.5GW#e7i:{:E2;UN.QNZ5LWpQuxRL/W8wIl 4 Ebe5OOtEoYS} 6- y(kSv tɳmŜN;2^se@NU*Z8LEݱNv,Y>>U,P}h&BwT09 s^n#rSYeǀYƀ)gØ&WCy󷜸 wz JamRT@JhI06H[T [,8/v1 T>LXYmMϝWvyt)G\'(oLj8WTʙ%nuԴoVh8謤;[L"~H-eٺOWtv9\ a&wPX* 0Yt߰SJ`JhZi͗ =boS@'=d"0ee`kB  _~]81D\`@Ck$dYQZ6p5ZD+B_[tpӔڎ0 #Up~/ s$ܝTXlUxH+GR7;s|#4WLU]. id昅2pȺ3,*Y;*UFCD&iUm>fP.<z`%F/R `|gu'5g6֨'B7)8bc B;`3rL7t.>$qϜyLuovBN էMwvTM{I:q Je7P%yM/l ETE'|*liZ1TiBOUhB0kՉ3&_ j;]Q&:Ñ; J`,# KP2\[ݦTD%$:5Xj¨]}mPO;VpaV,PM$6J3qɛ 拘d#TwݘSlj77((zZ/r3 |+6̱L1YAH?V @v=b=;k(;J鶺?/S=Rn|$92~o8{,ƒ㡐 ^?\ hc xaa3jRd9 cXEX* :b7O] 1r`بq+wHⳞlu GCfc :oh"U=6Pǐ"l<^$c`[wo:sxIr?a$j;8|CƽD4Q`h>6$’ O"[&'<]D@ 4oE `@hN/f0'=&1}mVvm8]tWqzw5R5/Dr\_.+;Ųe"Zr~}^B4:魵C1&U\>}7f քH$MplDstϽS˱_J)&b05qFKGn l"d -b뒤3|QNXh(/|M'LÃd€'ͅ1ݵ:&Atz^*&Ő]={o˭蕣^ vRC]ךOs_-A\pTZ+hp.75PdpVOH<͙lbLl9\NlV9k6 jG ?mvqz1߼A K!{ݩ!'o3iՎMywe}R2e :T۾U0^[&9̣J> *15Xmr G7,LK7%4B,S\P7 S3DX,n!A:o"%ԯ5z2o ɾ^hEO*˱~[KFYӉngiz*בVRax+cAB: #4Ҙs_=5=viAszuŐ-atZNk\7h/x$c0%dCiQ%qQ8%e;(ƼI`֠`c-6b8U"!DaX,~$H4]ɔŊA}͙I¥C) aC$O]^0^9\q:-tH8)[e:Aն蕼0$s#_Da~87 Gwmٰƃj05ْR\f"#EMiz.IN+q=-SLm ×-5t!.! ]=VHCƆ~yPO"DGIBmWI6z8&pUq@^hJBd)//Zwaxe!k 7snb[/ϱ|O]VyH*AiB|؆.#j?Ɲ e=qץ\@B*@!?ִ> S6bފ|۴JHǫU X|3UfEk9|![ lS)v Q)9bW&Zm'_Jd7_=f wr׸CMŚ(^&l5SV#)ࡽȕ+^+EiYC J&-E2[qjJ7D^M1ВGGU1E 60t-8 ]-3R_7Fi꛼3:Ѭo|۴ 9/=u\kE&_ cnb{υ[EvѭdF>4m@,?ϴAQI*yYֳlh-¨Mn(o ڑHP6b?p ws׬ߠ!:bW^Q9_ tw~u/?c_xJoɊ5CAW HFJ cUA6J(L5j2R Gp{n!C'86 VEdl^uyǻJ8wT:cʖI\OLPobh 1MMg#ضs=ТHL 32:gc9~@&!ڃT 5&)GyP'xfL\=X8w r;JHZ-p:f=uA~]ze \ߣ%R %Ԟ5!XMUQx( ~c]ǘX2Z-Ͳ7oz܌f֑U!Egm"¢:q`KdyL#9v[U"综^}=&JLncoTϯQEy󳃼KCb21%\2j}uWd-w(ptIBvnOތ j#>b™ќvsP~h@yfJsr9x96>V"t}M瞃fH͉s:`R'jͪN֧#')aNDEZ'q8nfO6yp_ /Jr1AE\CΆ+*X˖kq& u1s,.3أ\Yo r|D _ N}Ciؑ 04ũ o_xQ{=`~첫J?KIхז /&1?{W?. $, "0~zӇ%-\򴟴 H1kpCEs WAp HXٵ1-F8KIN~[To *:11PZ֑~4{$51c,[j^SLFVeq=Z0AGါ8`(!6)<*錹ę:w81pE P"xS-bVk;Ja ޴lKKf'vqF dheAc#UeIh+=zF'bLFađ3iBX6wI; S)Z|ڀ N-`iQ#e؂LC3x <GͽՖ4=pbPKA?I.K7CzYiGZ\Cn̳%7pWh!Kz]kg'?$k݊eǰ[^wLH~D:xoi{.JascԘGa&3f K8=%B-zC-Z98M—)J@]gmLkT̻4F6[4_ݹα^vL]}W-q\45n=wS{pf*3"a)/ImroGOEBϢԭrٜX]¯MEUpc@$T' WڤjwU{&Q [d-ѲAԎ=9'-;X9g$>T~[Bd_; S{Qێ?GSWQzaD Tf,Ӷ`)|yn&c}W^p:6jc7ej*} VfS-0 n9!PHh&'md$Cn-2GRc͑!7@%諐I.%Ƌ4 /E%.A;WTP'wv\LR{磀H5s Ӫp^|C,4եZOGѱI[xlI: p;^_5#k%/J)F+SaS #5& i­\'}^ :nco*bwMu?WK c;=E8(3]ފ`ۑ {UH]Y??@UX`% R= )oS,j?BIAHF$^j-9!4wgHh\߮!2 ՞ttTB:R]Z:oyh܃LJv)hb{%WxquA"B{Ae3g{Pfܛ0R>_'4)|ܔwB +(;[+woNQLcQ>ZTN&DA&H}=H%x:T= d)LJH |l8l !dN`! P@ 6C+8"gD)KqVYϹrQ}9,u67;3g4Bդʅ IK+!Cm]FǢ0w e>]PgYS;f\o>HQsBV6CIL2,Ф& 6pX4\fmϩ;lAK,^o: nR=\%<{pOQOW׿JT5AT8: &:hp[75IӠ ~y݋kFME@7 dĠz+{!Oy J_1?G|g]&v8>ͬwns"ߗ+MYn`@|KըiH5S=O!?y(Per ,c^cpT9]~KMRLwD_yAi^yg!-WFS^֎o3_MI]UU?{ xp$X"S:-6y^Vj124wĂ]ZUГM uLW'H"95|:fpnX@ĸzF[=zҷia.cKZ@M:EՠQ}t]Ƴywd D}UZWH0Jx$ikǍ`grJ,w4j;_D>?S"iuJ8C3*^UUfh\"\Ohۥ/X|(QXnG#BʂhA/ vZi8Y8Pit@,.aT!@PCfm>W ?8G ?_Uta ss~˕)"Hވ:RА _* .Nlв1W5jw=沘,XW ]$H6T4O85 .#R4 2nӺyP, W@,<[>A׹f :m>^pZŲZ1 x+ 5l%շ{iSVյ#AA;sŮS (CYNɁ7cb}Jzԥ_e9hC2[O~9o0{#1. 1: 0X= (IGI.(mg+️Bj03Rs%4D6{h$8*d^=!\[vb&5Y]xPʸ맵F$ΫUإ`fPSTM"Nr@a6^}!L/&fL =->gQ y:q+9/G =uBеv yd\ /JMQ JM4e]YTU3ƺR\'ih 1ہ#f7# @]R.[]Ks2R\7J%? %#F9PIUj%B.aNco"T.wfuϐ8>Psq)NtF )ZdBz ӗ&mOա=ݶxzĺٍԢ䮰ܟG_M\/4ڿ^c ėwB=zL3f(i%*Um |$HS[CjCۋ_S#LwFD/d kOS={صJ=޶='p^ bf0 \nn8gJ&"]]8N QAԯO 7R~GOg]=}β:(p"b 0FG$',+_Z6B m_S8ŬM8oj`9V.U aCH)1YDY;&HfGH%8 ˀ`ezIw,mN]O/;9`3Af,W2WAAj] $tЗԶ."7*`4oJLYdn5{U ℋGB qrpaKU iĺYh6.#cV ṻ|`Fi۽ٚ`oǭ08MN9E fW{W=ӋPpȄPp AKpEܰ(½gbo8Q5}Wde+p ?݈QrU6 ?Bpa"A<J".oıM*EЬ @7RT>o߾V+9 T헑ȟɖהsb1|a拳kjkr 2 bsZ{AqSA.%>_+nu u$^ 2 `&Y " N=M Zyݩz^0W[%嚑,ŀ+9>4@&P{Tln1W^g8mGCv Yj;dCjZ ú3Uզu%iQ•]ks5)#sWEFfK\sK/dv#yV\aԔ=҅Dw8ikq蝃 ˿oș@[+3,ڵ8˃g7} .G~%2$DJ@D٨OX"ϋ:XjՏ@04QE Br :iO!@HI;OF&Lec;(qQ Qnl81)q7^:*=\CEȒ4GҼ*&X#jS-xK@6?Ͽ{P(ڿLl_zg[-XL΃̚=A".cwiU"(Z g ndQjܓFuN͑?󍼬 +LWgӹyFpl2w~8"̱r~n) Wd[4 rG+"pA<&n:kȌF!ӭdiryġwnR>x 'K mϺMaDzBӛB37c3LV[\S}f"L N]@=/(-C yh&)*RC+֧q\ Nnp4%d?$dE١RJX 2:e 0pF@0zGtL^ءseɤ;(Kbg%K=C CNb eoKOZiߦNZUKe%P P^Ms9m(x 1sv竞0#9:ξiIlx*I[Mq.<2?).<%s̐y0]t/w6y9Tjj(nf1dQ6:k#fu2-ְ D iwHq 9 uZ[Pi c"qTmFw- gdĽ9m4Oţ zboQPZ*vvXxJUŀ!?(CbG網v].Kʪl}4C%0|ROZM \buӘ1|)Lh /pNkg]ֺ1]m1cqgGgXX28I%²uN8V_(@c`Q#dt0ԭ~X==3\Gc6VV'g`rr}[H` GD_ٷyN%tCc"OW1EUw\wŮ_7k9}$aZw/twҤ_ iU gp$9N|64gjP_G?h.](  1S JblP8t8|5ͥ.8{}aTW%JH:V;J^{nwr%p!V@.uRqu ,C GF! `7:t"u&@˩ѯ|D-lpW fZ}Y i9c4>>^M<=.Hs)7 ԼHBڹg0Ԏ}$ $eK)x|TI/GMnٗgPF-qN!4d$SANX.9%b6l!n,#)v>h?n_7l7םG8BZ=Fdx%4 ΩWٻ EKYJ o|/RnʽN/mz=B%~l"UGF"/EYZį鞴׸ qg_1mcfER|.H7ycSF=$,zA~E>5 ɇ}h">yN%_쩂\\PgcN䦹k).+B,P*aLFr?af_lo^wk\U0{T? 50M-ZJEr~ aZ gI Y,Ô|{RXftQ0u[3 @ 0JJb j&&wy"#5n7#;nĜdSwj]gCSWYyHsX@o$ΰuRoP&^#U-Xdqk_i6uT"`)6EQm+"\PghvpEE\ k:eT T󔧵VDM<ݷ`g2'Xr}r<6t})/VN/nWRϯNrr1j6.uѴeBx4&ŞU6uS`qw Bq2m^ ԓO"سHS.{a[.7ђ>pk?9a0 `ƥ| B:p L~2 ߎKWj&Ak_K ʤG m[1.!jg2eaKRE98}Dgr-SY Y`T Lht<6zX)'-{Rz("!.K-LaY1P ){QN<- SY? kzCL]~{HFrc'S>u_zd,`o='42&#FӧI\|hʘᆾϽRvyPV3j{zG`3DGTF Wm pġ_FThVJֲb\d<.},+8zidBLqprw0ksf6;iUP ,zq6*piۃϘ8[B*RPP~1Q}_mktcaYk"ItZMRia.) V{{נ[pj=-%ϻ->S( SHjF4/ic1F(Sb-|M so_夰}Cl3}H*_d5֘ 4㾆Ý]l@fvIug/c7 ,=6??OQ!*^FX^-2%$GBձ/#27\IV#ǮYW*R&|CV3-]]o(K"`vwۃh*H%[c^c.׾ߞB@'L-# ߩҘ*Lܦ3WBgKzq}h߄+ Hŝ Kƞ} Jbm,>9NE:hVVW?fi5'FA!-(mQ eVՍxW196fffPּqE*⏄"O0 0Dn;[U0ʊQ1ՑtmxC;vZ5CcFYD=Wk9J 0sU/W{rT"VQwדp].$>{ {>IC\61H ƟH1PUt-VGA}ր2f,8ݻ<~sovn6ϿDlի< {=#4 !bSRVV]!U \1z}*W7 +JD67i&N b._ٮPl>j٥J@Z6ta"HJ=Y< 5 VUh wwB[GqI/o78fq!ʞ2?SU8:HJky_\TH`e1ruCv$'COifW\Zs1D{A!ƈQi7QK׎WE-_*k}l K[E*G=\K?Zjκ>cے#P`ۢR&IW@MUɄ%K,gGW.՚Հu־Dꑞu1)wzph_ ZbWcVe hlvxȨnMF_!fY?Ue蘗2!316ZHEXɬr`ե# fOAԷB8@JS;dSA8uG;ao?0]g26}EP63 T6ȠjSQ/ZSL)G=t;F_K*ZK@BY疩5, b7̸ǐ7_:BZi^!s,mwe^DzCUڅh|鵠i2ۼۧ.+6|"ea{<׾˷ TANPcT$vW(WUt-铱(!} .mf@`A}X]5&2'/'Ed3.qbߘ= U^%!*+#иwg9[ނ!JꝣUC6q|\:hZʠEh:ӂTց=e&SP9rN]^V|v&E%oeyZݜm-NE#ӤP!&v S*`h-\ƚTٰ% ӿt~?υ~掂x%I>@r'U!G%7OAȺCY/&dzx%&)ejl 1N$a"*}ہ9Z>%aԛN:':&%G좮VEG@d1_gV"ڝvc)&((UW )[ W]ėZX^^`gɛޕYl ydI p䮲н"#:Wƾk=9 5~ƝS H|Mҳ+lR F =y,1+ .*[Qu͍ nxu҄*-!1𻼭 Q3f$2SpŎZ6OGXu_tlG[ۀC5[ML>I\6[ ye.s@vwwK^txB4pK6Px)r& Q\-Sy!LY5!fby|5tRޕbϴ"RGrY}`:UԖ~pNBivsk-#|H^QL'ᵧ*UMKhsB1&CW;L">t~㓮[f|nƫIxOA ^CP ǒ\M9pt 3u_4GA顂 LͭƛZMAr񼑙M='JIa= QS@ HȈP+6h?%Wzs-ELaFr$KxI|MQAd?~o>6VoFڒjct[^.:}z4+U{3jRm"A}T ֱK6 힖*坺ŃoK>{2?B[WXG/[nHګ:7M@6_y$C艳"/N+,4o;m*')qS+c"L͗8 {4xaJDblm2/{$s+L ۦog I.}##q||icZeߊ0V Ic<(nsZ*ё^ֽ)G!er@һsyw? 9iܤ3Pve ^>j֋,ӁOe%z,\({K ;.V}ep vy۴X]89CS.P (-5Fi(7rn}݉﷘5n37L2_ES.IѳY~x_?=͂vpv'# IZ,kAkN%6 o]S&P۲&VCC7a2hDeN'^W:nmoʱO$Ojrlxz :|fKOnIiU5eErvW"n#oI^@[?ʧOB׌{yPwtǦ qXfsdB()@48fܡb:Zܥ\m$M]nBhG[q~ٮ BFՎ5$ǎ/LbE!2g+B%ѱˏ4㣎/p~8h'rI%sGeۼoڰ &W7Czy\!N W/43(Fxvl o,/N@e An{uVVwZVKj5lO<6Uq?x;#zYɪ#xSHwV&=T@ {lBpׂ9lmwIC4_< -ӴO2\LPxjkqTLwWU-O7(|gڰ=W0Gl<<ٗPBk){k"WuY0mWn 'VM*]\_٥Nh^[J%3tϊ=x ӢA9֐@co-նNZ je|v'ΞPW=?MPfU4\H4UYR_X E-;ypu)Zxz=Z={ʼndÙSR9lr]m1pYx*Cc!Q٨6'°j GH3#<8yzQxSXG-64}4.+JUNd{Ui=]+=>;s[yrStH+cZ0ǤE8Ӻ;`6OjV9WB7̀?G˧}Ed6 9f%6$=|67u3T|s^"TMyĻv( ypϢQڣaP!ɉr!JRt7;41@_`P+j1(t+50Naē11&ҍHc7ѵ;.db- ]q(}YWcxvݶ8g{x,LPzrՋo;(A6e7Oϩ֣fWh6>A\k#ߜQvhCS[f^v< X祢~܍=5uz{2W-.!+fk*D2Sn"FՂd%K.T^tx8NޥvrY#hiKEH?z1ne۵ڏ?>/ v :OhD5+e@k .qߠQCNRp, f`)ܡF06v=RG9-1\M;1rV[WT@;$D}xY9jt8)7K?P TX+>jK;emH"' &S#`J*Ī6jݨfLN'uHyBJAbJ(LRKτMJ~ m|FMP`ݟjs(=A趖'R3f \T;򬋠bK4mI*P<+ᘥZMk=„p-SJx쀨-[uNH]NOF3nv^ X;HB(JΪWRvgB[4]f[;Z77; W 6[ |d#g, B~ߔ-'@Gd̄HZ-Ee;7lePv5$5;bcK6(Bl7P|"`t1`Oc{VbByPԒ mEMK*OQ6!8;YBGl go Jₖ_mk MOnD?4Am[ή7;cY8d%-} RYd>7U*mR,,Ʀs{CȒ['!avS^@ۄKN+ė.Ҳ#ňHPZ3~Js Q!g Ka7hi':0k%O o- S0o>lIh m+P4S>I~j D#g_D7wPXvx2i5 !(b(tZBd#}VtL*zbw5}߆u#A-rHQK&2uȌmX0AOs&kDs?rPMynPS+}A߇RUKHGPέ u- EQgy˃ņW5aZ^c nz7;y׉5B=Ѷ_ENQweo6OȠDZEԓl\&?R̪]xyt]g FJD$ dL(zAǨ0|2.ArQ3Q e`#Y{ /s`vσ ipcΏXa'1 ,[0Lnk-@^3R_w-y8S`V5hg9k0Aq0o lɢt]W_oq:5JPB\m7_g[~dB [8-H ve^'ĶWT cd w7sX8l-;vo`L|R#M`=BD0?tfW[v6ZSAhٳ?h Y&dž2[6)#YlYs.nBZAȡP?tgEQ;tIm m~khF^`Ni&,WA取U0Įm,=Oj <o]4j2v?We?.pWx_3%kJ%B+d.VS={ v+s{K GNqm%HZ.1}Jp>pSйE5 UW¡)Ӱ,ի. [N_];>Zٺ_9|-ܒ:9tT0}J,N6N@T`cdouul]xT3@?LC5хUXX<{s dGڵ [}h(rЀ)Uk^+ąy~?L5Lt`q+ޗpILdF9%ab3HȬ.]0%ޛ}!rp{縺-@ee9RGD0NdNӮ ls#+,Ck0$Y~ ל޴[b||Ir!'"?1˵]rl7a _ BVH4[;|s},cZP ݉c#}8Y}&m+.7XՆ ‹AcDjfȌo0FzT@| SeLKmZ%=/:#1Zcqq ܋ фYtuOn'^uc Пc .ۓ HJwfg0myzP*he9o/e h4w0[ȺO;H)˖9/0՜t9:cĂ$O4̼ئ6Z<x4oy7lRt c5^VeKy3u+ 0<]  /r qW lYMaP}!T?GQ 5ɠiL#`KQlk;)g]͊? RmW1Ϡ!n)zjnשI9I @`;7v\V#C fH'-On8'wC3یTR9E&a𞽨cV?hz~3,o"Mv% wtteÒN+nXCN:`8&ׂomQkڪ8? fos(IAx܁vTL3X\T0NS[D'2)*9N:v@ڍ 8Ktʿ7)uGYff>U/Z ɈK|v ) 0[rбvܗ27/!ir޻zx:ɥe%~Oy_cnɯ|sL@(u~ h~JZG,ܟjdj7|dA1FPyf҇ .g‰q:D {[a'_Ba`P7gb@0AŸvy{+:a7FRV/b0bNʈh_o Ow$^]bE&#=1 ; ?< w(3$v ]ujlM5~B1՞QSO' wI鰸~Jry]͑g0h{ Ÿ9D$*(GC& |<۵7016jAT ~tbVFԶ\}=l6: XVA@Uq)ٛWLz˞\\\x?3{}kRpy?~[!x^e p5I=0=]h>/jN )#< /!0]YL˺dR۴*RYa!1~-$mF9u"R.+˛҈[fs&4np:CrSwbIntwQbǘjђ u$24;8"VieKZkkb-|c+ɞ$f. B `se^X+N'^GC{^H\ʲY#d),ԸK8 HW'2}O~.ƍg-jD罏lX5n۟w?Hg%y"{ `PX(,΂EHEI/"VMlH4i;Kt>"rӚL7.|iȓ!0|%3 ta{lNoʇᅡ(1W9CGuC좗'AZ TRu'n̉l[W~>xFӷiYbo|x#Qݑ[}Ŏ@hxWАkD kTa3qh[|b o,0[~kN+h?C|wAqoE^(Ev(V zSJ%NcB ΎP󜑝hKWAA7#{Jk'{ԑZ/ `K*_T)3f7&uDHFaaiȫOe!-qLIod.M$vMQ4H?1]Hovnh%+2E|xQBӡ\sE3O/LEry1B:ЗCU\.SUrK5]ܩJ]iV ww+>Zo>|7= .d탤&ܲ2`R,F|0$)?V.;K]O@8DOh-n(m9PCR6-jfS܅buqˁp:)_UKss ù u w}%`bG'i} X^G7Xs:؞-C=S"X5gPZL/(Z spC>:|&M!JŽ:'i"Ϋ۪Q.rYOI^恦`T ]S7*Ӵ@Pw4"rD\td$EG`^EzbX#. vA%ȮX F:i"fFeXwY})mMw"ئQ!_VCB)K[eǃB!Y֊,'PW$8USv&DƘ /Uxl_Q~m+[0'_}瑬msbS*1&O^3+>:\;y)?I/3=]~V"m">K3-lch$wKm[,xGV>nGs{F35M@/Bh0fe⍐bV@0-rG'X;w޸P %j+Ub|dzvNrgL>ug"{2,=U&DŽAmxZkXM"$}qjmu,);hM@eaEUI{8ʳ!,1-'q$g^7FF) gؔfܞTOqȱm<-cI`-'']f0/#%_0I.,6|5T l XAyp\v+ȶ?o@ĉ%2AH{촟K*0Sb!3i[;OK xo8|}"Ʒdu}*⭶W{9;!vATpAKDW%fɤdzj[L| g246;|ZĶ.p v۽u!N>$2SCo '{ $:e rG+k޻M~*[~2;ۢlYv_u~lH.uYNRCe'w+ ܸvLɴu(Oo<l Wߺvnݯo3K ~ܞ셠'1{"N5q8@A a%Q7Wq2qae9˫@ VO9, 0Zp2@W}{T?LצZJ@P-`9%װY;f~z3KvwH 3MNC[U`| *AO+sX}/~6 M{N0y"~}&jͧv$ [nCxW|deV>I* f6C@Ͱ"B: r_9.LXF{55$Qs.ĆxhkMojq^&< /x Q@vr'r1]Lӏ]Au^Wƴ'Arz҅f5"$1&2ֽq֏vedhfFǕ͛[ߏgdh5e0(Mo=Jr Ve>}uX?6j> α4*)`݇1lҦ5 tzX=!p|d5Yfp7 %nb\%akZ8]~wU-|;߰*ZGeɮ+Wt915?\IdUp>D[O=0߂<.-zUM1?Fr:\(5_^iŻwF.>'1մVUk2d~Knj&U+Wy IN=x<<;26!/󈴤AhJ'ʖ͟dčUҸ1x`lm_~2H5]H`74.&Yp,n`h$lp_[紻 rY(&cqNH**5`PH7W26 uAat˽71>;RHU1ESlpϺɻr#y'߈#z谀P&Ti-f8~4$ )csP !p"X4+>E;e&Y~;/=<lX9q\!l[R 5ͪ8,UEtm)b;4 wWZ)o"c DtGJ~xr _ϡ7u<桒BQsK;,.v%P ǣ<̏>Phd+-菓6RHto?iWF <=V% `f1B|XDO Xk?XE-e}@msb.Rۯ`WLwohxj۩}rܶA8˥R9aB~zU1uc^׳ mZ˻F iTRܣsց2w lH,,Y r!؁Fqk^,:JmKb^SwHn`0;V|7pq,i(a/:WkN@j8AͺANiTy'34,*Դvj[M_9E.gQ7k!T=y,,,zKFe腡жY]*Qe\yxU ]Zc*Hx݋`˗Men#|;ؙo;S伨h,@ 4)V^Fv5Y@#_bS`߇!6>D}>)~Y#g+׭`_&mtG-L5~8=ҍ i+j޹Ѡ1<w2Qc}oE+vw1:,7R<Ԥ"F I)~0gb읯މm "Btgq[p9GR8 CLe.R& K w!oȁ8sGWàJk1,Тt duCl$j0ЃJ PPF( 8 ל4! 21/2Z~-n'fh3Z&IwO< M6?ZpǬG 3}.Fh-'b*6kPx(mx]utᦷm.$3y8xgP Ha)7x7ҙBC$dʿ+ yav-k[L{!wzi?@zTpa\ʖ>*F+#d/,p7qmu}_|s}g6^lX!f%P)~,vWCo?Tsry$Mv>ɩCQK&_QTr_5BWv;럦2ld$Ow_= qxu4+>IzwUuU7hN/ CM> J1 =xEK- 1ȿP|FԌ*EGR  cT7'gbQYxbx!LV 7>cJb/r[a_o.?&qF`jד@u}ꧠ+V\kMz11 '^8/FyLyD6hE zP2.A#14(0zF9d*# UMpl@dY%8Om'l}1戢L6JH)lWQM>vxxupmvl<oFC6*C56 JazA;?=%&FȚ>֣M{|:sUѪ{<7zW,wXځ'wŚg7Ģ:CNA~)yg#rD+ާ0Ȥh8: ʐ ^YJΩ3y[zݰ:GWh/lY'>=vxqpZJׯj -es/257zu魉LVB[7S_ ݙD0 9Ÿ`du}gpB.h%?{ \+ "!BIkVnPl82=^*VP#FXtXSvֲW3WJMɕx _A V7m7yADϺ\@$مVnL%f[Ö);stשsO[G/awI`53+=|"}@F͍{j08uI\;ꑾ#;dGT&C[)F+84` o#c-[Lɯ/iɂ-c;X4f8oYZe\/)^h$ @ɋӃڈ c*W/uYǛ1/ȍB镤1m ɋ_lCrSvV݈3`rEU6{ dcmM5`m8*m%e)Req{RӴcXRՑy"6a 9bx^2,Y;>˭74Mx#TO6(3+ޡ^& Z\jR74*wqQ]9cknR`u*|r8y`;Tp/y"0رPewm_K*wd[uȨs7oc27*ǡ uh>d.*b燱$HEoY݀0fSdMEUUS$*@[~@ ;T[(YBD=0vGi{|F%_piB|Q)ڡV)ua4W6 p sjtV< Th|w-)30Yꦬ9iݰ0x83bO!G1=gyԨȜw"2t6 _^"a 2[EaNdrtic;:ARF.}gu tY2첪gNmQh }̃,\HM /լo^j=BH## :#Y]x?yOoc؋k]F {iפiVKV BJ$>~um|Bִ%f,XԜ,sMy$zE[BXy8GhF`īK%B s bUcSym_10vu?i۠k>!68/17d}"CnɾyzMEi<:[8쓬'j?Qaa0nd%8쥋~Q 7'^ AYUkS!i"i*vj.|ٝi)hT~6РZ47摯Prع(MW_"_WdH ]MRJ/s$ՋS(0ac:tEַ~chUK8Jɹx/<$9,RU%gz{cV{+uk[:y?_"c=hoy FUX!`psw(4s/wyoLRxB]Y/{D?EM23l>1Iz[ %MŸ6(-9I5\J%^At}ճ[hɋ-J4 2H9*jJH=& ڰ8KR-~nVxtC㙒:3,'n/(ʋ 8$0G dㅓ~N ,[0J$IZpoε¬cgW[t;- X9:3D1GmO'fB!6 oؼĄ*SgwC;R; Ǟ{!B!z8$3'%Kc3a2wB?j3!5Z|Lq`DϺ[ ] .dQjDn6#R|._f18f^YEΗtߏ~(7.ԅћFՐ?1S/q&3ך>[;ȊEΊJ_J^< ֪F^X\~rHnQ=*N VПq= qg]4r\&6BQlB)C{V,7e]%qqw (2!eY'\!^מcN:(!*lL5bK~_}Mo0* {4yX[Hؤ:MʷfZ1L4&򄳹j tI(_1^%_!0pV^ HЌOO%:LfF ɗt+iyVIΡEG$NZБp˃qcStclއ XlQ> @ xUQBH"17ON"6ѱ#8&vfVV0sr|"i+)h/EfJAcFSQP76[\aGlxԚgH:] VQkcl.X~j{ơm|~8iLld/-*1OB}vv⹘bɃ`#/ ̧ qe(Xm^"Kuhh\.YeEkeẀ(/9Acyݑww.҉8DFf5o2Y\ڧ&=P+LN4)G3\u>XC{Z:E~xX.AA].߂堯s|k-hBGt9TC^JqPj.ܲ,(tn"\%!#K9z)'jNFz*O_uϵNW[s/xbtNh0AJp ׫\NOnxf]\?;l_&z -}׫[9ܒ j*@h1)cMRGUuP0+381*bk l+sToZH&!`WoJ3FH'\jzݙ-b>A[bsVb1>A I11E0׏JQrJy< g9;]9wGrm;3lXM^S3-QVq~vH;3 `Y*ϓ݄y8x4. _.SȂ&~ YuJK8"  rTe- -I ׊nARR'C)럑E\߱%TO(;]dSQG m,K7g=j͠bΉ|hM)7yR%O j5f݌yj=+q2%ϗ{].*:]{݌zTGw0Js49Uv`{{"ʛ-1ʫUhhwP}'<~\%饹xVYd>0\RYsG1 p #ToU |X6ʁ0Hhb TQrIV3s-Mb{C"XH'8[ZS N^*JL g >F9;Á:oM1R9$i,s EP8XjEQVfD[҉X5ƞ^WpvӤkn_2'߸,dq\ Iv=巠̊7 Iݚ0K)PI#̮| aX+]q>-}^Tb[R4{M$lZl6t ڬxw(KOsDx$X1<]-`[b !nnq qv=̨Uȯ-l{挖Կ ~/(dOެ)uj> +#lYڨ" I -]ۢ+ޙrT*ŭ0X B4d\ύ͸lC=غS7Wʦ]mtgdjZ;3d mL~J=ƘjU$u' ,VajjSR8٪FK=cR~C@a=_ lûrVYUP넓"Hӆ̩'e'%TT:vs{T4˦@:(.]^^M` aVM!mhYJT`W*u%tןU`-@̄hu ВRx#f~=iGOck>4VSeX?r( :Ihz1`ir'Z۹ KePkID_/{)Bkq=2ײHp̈ޮ`8 N%siHìP1}Ew ~'򰎝mʼ|#K-u[7+GEA3>'`Dי.dW_5>ݖD#Τ AB}?G#WdZ.z5WGSîW50jS[ss;l ƚkz f ɠkϕzNJ I|| ##h5Kwׁ! ; VC1cI@ϒi@@id,CB>LpE>GiI=bńDibشVGs;H!n@'u,y"HQ6a1ÏB_b`?yIsyl`d`χFz`ǵ(D cة>?it.Jx?!d#ATS *[Kkܖˏ%w;lqyكuX1Z(o}ٸԐx-A-tj %n9T+kB`=٨A}r֔T34~ 2}J`(lT=[o~y %1i }St%`(52o=c@zե}PF!އMt!9%&2,~>>u9>vÂ3 63/HFHʬs(H0>fzg'u+L;]qt+FO3;r8G"ZHGiJ3DleK 88IZq/๙zO!BmOVaJט3sMl!Фw&_8&5gQӎn p0"X_oZ qVGD_'`QÆ- \HE*^)~uOٹE;iz1]λK{s?9dj +.#zI {:ٳD␉U~~b=fDsť7&oE͘ȨtP?btQIb&HNWͯ 0Nq2ˮf 7a!?= (4ꝙpzJg^t%nO] ŘΘr㉙BCG/ߧQBP115F֨yZyC)^]fRhnCSoEQ r(Y6_=!2'3TA^('XY[لd %XxLqpj%5IU絸-7BP$xاpBBؑF3[+H6 y WB)ҏz3OKmQ$gQrg{ ;;,Y1 6T2qCm!#ܑG_&:99ZGxpg w3wnb-w_O r1&*WP-xrij|䐐 hD~8ZPNpOh5}]ڞYXvúd>vk|߉ߐT(O_Sm G:S_(>?W\k%/q2%ҥ@?S]`2Q@6{%Ȑ`P'<}Ln4@fV' K:l=,F}<[8h<vZ_Xd2fe+`A'M<Ӈ̏OuzIM@.};iIJy8[ћ5qxˆ;#Im3 Vpo:B}x=o3!u)Y'hgf[}0)T5{~K`\|=hBk?M>hp>֭c" xwX;>DrA$BXO;9;}}~RʡPEnu>cevRCC+e)R6VNo5t :M[:+5D9j/e#NC'%xMkmm~ iu? ";#$aB JlgT| 1 }$ 63hPPdK@7Q4Nั^pLd]^-h]g j+Ed{GYX7$Of/b ckCW{͌֫m@XQFݞE!ó}VazWp 0I$;krF! 3 }p,&G|^SajɆF?1ޘ(iAP'\8$m^>Zɖ6NnHAXCD l/gu f =\^:6d^W\fG$j[ꬆŒY͖OoRsV/BDΒ_x|oȷE@TTދCY~p *( GB'tjA .z9q2 o-9&rV߱w7D"&A:A9Qp-RИnEgyN`yAkbVVAh3KrMc~QO$΅j@P"ʀN:2 $6H{Eӎ*z5Kā%1u~n9 <DXEh"CO†Zl4~CJ7LA]IY۹V<ڶT/ GiO rfDu)ql~WV0;a`46-|ƌ1o{>J8YuU;ES2g=3Ūe.3;lxN-W wu#^]S8hag#{qs:~qΟl|3b#6[p;];|r3\lƇ ~Xa{qgY/ :q?:G"5Dae=@&G3%0|i`:AX@(3 N | ÁX ;qO=˜H%Q76.LeBa/QPAN5vJ(pdӺl!A2yHs|bAe"sCȏF0f[62j9}2ȠѠe`R¡'Hv="cMݑįyEe6i1 Jf; }_/TF$/ T/i^-ۏ}G|*Px$Z-3M& e,Mkuid"u# :KqVAy.IJCvExP PiKLF|[| NI9{ - EEE%)u5"܂I ܟo '*S}5bȹ^e_L%37Cim~tyy&PMo;$u*g^փd[$E}U0oVJ2L"scݤ5..3| V-Dɝrz5h4 o+ 64dCyϵFUnڪ h2PiXoFZoD0ߩI5fsR{VP9T֌PΉfz\t ]X;{Y+53$n!ط,m|++#:|m-jqCﶬZèdk5 zo2d:#dEQm9В\9> t{[ER}F@E}A,!M+[r*PV[Y( uɫr -(x9]7L\%}𐙞[xftR YgoUkML<ˀqz{)𲕞27GxB mݖ_!yi:RCzw|Y [ȣz$~fdk}arjG<&ڼQv7;iW`ijJ_[^31gNFg]jynjA1bU(o䔨W)g!6vB:y=-n,8*p̀4FL5q1PXrGpiq6Zylӄ Շ]d!E40g"DA]횧UPױđ߶wW6.;d0~̽ (fMA al@ĔVyi9:C}y;fdG T0 @ۛDsDZ'eqS\HixB4}Y@-阓%8x8R7~kѓ_Wb:f3ܧr}r+=`WܫW] }m3CB3+[϶$)^]XyB6C4"a>xr`?gZU&ӶEA >&xr *(z+t$YJXDUmT'[@kCVY>JstH0o"CkL ~ lRJE%0c\woxz*/oq,zsf+HyX0–Dey"6^*X vȘn&n4GcW}})>EGrɘd~TGOTpBcppkA+XJӪ[N;`f‡ėɊZUZ/ IRk㔢 ~'W+XIĹ^N K?t_9Pg0  -O'~D#Ȼ䇨.bsq2{*5c #EIѵ^!L6__jC7:mXŁ3OvRUAi ,x`6 ^M ÆR^Yat)8#h x(cCF˝4?)^ShA5m\j)4nakRU}dBiEO{Wֶ+:y0گM{~/؉ih_Ʊ2*dG KqHXgPx'.}= sZ)j*Inأu )?Y0BX /~oZup31͢C`>vը9/ 4ܮLۋH&'wn̫ FmR]wo荛NO"b(IZ\ksƞf"=ת:=Ÿ*Tnx;dOe`O4{Wk*kn1cV*}\PiE zKƼiш?YIIPʭp2a.wK9ȩg3A' ^=q֋yELC7_~ٌ'[+ns3s*Z mg 5ƌ[΢@oq+0_R:ԧphr.%lo(_c c䄨q=GL./gvaBD 5 zGVsea;Ųa¹[@2vL^´$Om)fQm1/p 0[FАpݦ&ue !GReWBa̛k^G-Sp>!Orl}!I 4.qt: }:gom? !}#* !vf_bRyW P_>ihx< TtV:3l + JD.4 妘Up)J/"4ڹg i1kND' gیC(?(.t1-,ӆ3rFRfJGyfdg뛜I J҂D~E7⩲nCr #U !QÑ}m}>0a!]+FyE8Crp)o,؋/Mo-{a)$joV2'I }ƛs…-X'zJAnp^ Ƚ*r72XƵDТkJ͉ү-A~1ͮ czA4vMGwPF Re~5(9i?<\=F!*˞^b"Jh*vݒ-?xW9{m28|+ I w.~˒"8nD!{,ȡ }(߾\k\M@rUfu쵑toИb ۫avʔ}tϳ~y"A"2N#g+H-^̯D碽dY-. ?x*ǩ7jnӷcanX 8 6ѝ 8~lʭ؋UOQ6ICxL^sD,Ҝ\זh A_߅ˣ(Ihe2֕2=a &g4B,j#wـGoÑCum㈙K2'49#*ڟnQSũF=פR*G~@']ދ8n%Q \Sbu*Hݺ&m<&O#:c1~{|ŊZx*VaɃzCW GCf/ >CF\h%d|i;;)C$A\`r/ha{=L<,cYuo\拋js#.hB]Zl5bO~A>tf0րJn%s{Cg <ē8]㉡;las2MZ: 8|R??jZRAEM :;_ 7Ә}Ab߁n6dW˩@phjca78`NLr_d϶xf q;Nr@Q/]Fzqg;8Hn_'1O=s6SbJOxѝcRh{1oQ,K>W:Q4HwҊk+9d CT"GS"Ky{km}5V m8. ;k\#CKѪQCN!A|DT _%W DAWPn-#-Ťx,8K,ӜWS*ݼ톤}kZ5/}!?aM/?iu.9`G>BOnĉ\vD;OzɈUgFb|1΄b`9Zǡ=,NkI-w{M}fHwVŢC`,?xg_Hc"lޕBmy=czK*E3jMf 8ԅsKgu*m:r&zuEm%(4yS!=^V|ҔEKgwѯbCoB[wi$xTuqvL_~l] N_lX8h]+f̺TDbN+!V J -2yS QjF|D>z{uq{80Px,;~ްvr&;C`OlO:QZvW" m T"zl2"3[>5: hCBN*+2׋Dg{*g49>/;#$XdVюQDzgGg).:X+1k٠Z*dwj(<梅ɗ<[%b>R%,:NL\]U y0)ZIX-|MQ&g' |D {W1n[4>Z0@ !?؟˕7!DrpvEcQM~P`;BC$ s@S>NE7cE|=* %Z21>W?v!+BPĩ`ѓE<9|:붝=))D# \"KߠAi4zi'CV=IeOꄾz<ߚ6^rUV+9ATt*Ea60fHDxUyf|诃. Y%RsMg=Mŝ"~㚚co~>iDǿ@\n~J?HD J_W&Yۿ}-'Si6k %d[s?1/Le%H;BJOdAh8#5T6*y+nqcbz!r9m"O*Wudm(/ znvmjKSNF { =﾿AP @؏&BTry(x!NkZ+\Eh=Zel{ |6UB|0G8Ŵ*dʦ٭Hԕx|EXiK CED~$W+W>Ie2X9iõ E 2Z3b]^^yc6.^%!`sb^?\B pC$|\ 1߮N!8Cщj . BQP~,bu8_  5dG>rHqfx@MYAHg6<3L[0w;$[LF kV&$U:(f6nͰ[%Vxmfx\iDt)G0~@ic#5͒mQ@$:4lۭ98e=A+=7b@ڤTxdT==11I*M/C Lmw"K|)/q6K Rf:KztikC>39ued1&+qZ&7\03lP*pof-7m8 &ZI>P )T(7p)ҩשp͇ftu ?3?.ktM :FXE!rq*BU *!, !hhI}0](T6V0xej,AWB@c3Qfᓎ66gB+דp@/:SRmQ*+Tu엷0|"_D L*{#XB82TK ":MMX梂-4;Cޑ3BTت1\^*%3v*H(z3} %05oIg[r}qk9pvb> 2Pݟ:6gs7R55kkȥ?.-A W[i'=@BĹ󶐤-vxD+H^kbXeqdk3f묰 L䚼@szj^d GΗ &!4(z9&( EM8gc,k~6L3f&>iPKÂsK=Oj#ѡ$"gI:3zsl +H(exXv'|=(t3,Y~U`Gm\-W- y2Ub@(VC8T,Wm@&*B؟lsm#%7R@W!*vF;M 7~;ItX*.3?#QU-ռ|X}ɉ.⇜g}ujIű?j. P<łsAŸ&~XyW*'+N 3,LI dhfN'&8Nj<ҥ&{:N;""?!: Bg7EE'R/L>w} 2"i9QTv7oL$#$3bmEN(h#40v*k%$b/;!h=do[JlgU3z&u!!\Ru rsaPأg]ל/N> ͱd '=N&蚏n5(R.R;! P+^h%\}~>N{;xMSߝ>W;0k'.b6M)`j7±!\użQ- "QW!kba`IȗN/_On|ccFu [nT|{1Yd/hB`8QN:~#.0szZK<6o7I~Զdִܔ(/"'EbkG04WZM֝rj_!H<8 |9Ņ-2jr W'*Q%fr%LgWca /y@9goGS-c DoL < gg/Wn ?V.DB:A L/M݃4)AA%{J~F*C|3c/3,jIǁDU@ՍfQഌ=!yu?d'_y9#q^QiJi?X R@yaQ#80lK&Q%,;~ns~:7HjUOUM _p9\1Ɉ=H4 ٓ 2iq$~zR:2QVI~:'qttڧq ,3a_lP,i8I`ot ddg<A{5RF# pӘw-US<8kPg{4'_3bAQ.IBCGR϶<()`ɹJj]lB8{ᇯH/AJhA$R+v8BP{>Q@j3FBr5D4Im}|^1HcԻV7'o_w [3,3.J#H%]3]jlqqN͹bZP]އ^>_cԄ8 !N 4=̕3XEPRgĐ؉ 4D0W+xUxN)}gUk:CboMe+# B1.#FDW(<W'/X(kޔWGL EQkz)xnz}iFg-qiP,<[ J:#Q,p=>/A߸GcI1Zj0gW#]QS_%V@Q{LJi]&}T?[D$U( 6Ym’j2э"J_ DJM:3rBYU LnEfr6)xL T;ǐdf(>Gqe;A#GkQ-?M*> HeJF%i<5;%骉Z1j$y*kQPI"v)ǷJ 0C s.!Gb㹩+ƅS293,/`Їޮ2/T&9`7P h?aR( (H8)1Gn_orٚ ^:蛆M۩F**nLrs.CLC2b6%tÔB^SFPyyf臾r>Ac)k>#} h,HR}֙D}JѮoLnKKR@&$$kȐNq>̓Z'Z:`%1 %ji˘%+rS03; 0f)_}ZNuZ`LÜ) 60D&LW]i! l7~!F]!΅k2d}t,]PUGzzVxe*YDx_?i bKJ: 7g?v5'u_i O"u Dʷ^|c[#j7Xz|&XB}c:v? A_0U#Y'Ҋ2^WGo(,ξb?o;mj@^)Z7tMR*^_.(ʼn:Wݕ4А'J2x6gO}L\=MED2 9iT[$mA/X8\ZĒ[pVe`n6=(e5HC^]ˊjP]mX}{%=ABoރ(PT{λ> $N +,oMqAA:4ZmaQgM( m>gI{LW-32W@e.2CFqVMs]Ly`ARx0w2Ps6JbC+/24 .7f[8ed $4Ȟ1FPa9UXCG@ēq0*6jK`a=**4Kݰc ^6pgЊdթ7]00ut,f~--B|-a-$H$/8;νzu1}#~_4 `Ww Y4$ r5^W@[H$@h5RYڠ߾'NRRs?@⬸)N PaZGOG47Bڹ'. uo?Kx%Ɔ+$q0b6]?kS2- F$ϞGmA`,G"_msfS^t\ǵӝu b>XQ|؅k>6d$Mo7Т<$D{T%I:YIq:'fʱݭSߤq<،IޯyPTQJtZv=g)^W0E  %6S;"b37ߛ 9&p8tjY@ %bK>WϞ3-1 Mye(ϟzQؖ(#w#:QʚӖ΃=lr0]WݪpȈuHvì֟pĞÚ|AQd\n;Yg%h"%u%#sg}pڣJM:rm<|V]JhY0AO)*m=G`HR!Z_V/fB3k=Q}Cj%(?Dz?@"[hwgyOxz]{e$];--Z..#2z;o+J04K {nGMPLf PKdGkB\n+jxNP,뮮\Vq_}6 pnt7y^ԇ^`@_"CPJ-(x 1)KGt MY{{+}~KַCUyGt$_Em ׬ŷ~܃_%}P4kp3[8ؘ(׉2'=J u%iOהhUӐ`Ǚy"{ǯ5_Ju8u M ­W]|CsXY钴@VlAXF+?;x7Kʧ_؁SV>-A.!િK{ =6&԰ x.w x7RX\f\)1:6_5!.Ȍ9΅X̉itHp4ӏCW  #m rXBV16B {hxEMqyf=B`Q&#2o ҜO4$6L&F6J >Ɠ=ZnY.$0h![Wƚ_ RD]mb]րW}R9i<lUEJq&<߄ȁɣ)"(7WXy17YYqؖMq.>)&ꄨF>ȟD(e &oԃPuPSiJ>7+l//6`4uc9l3'A?#Р$<7hӱc6Q7K|!>/wT8;#|+4")(6yg}$JG1t"ɛ#Ҷ%?+]Jw?)8]6}C(D:P. $jɆ|ԅkQȠ}"MHx[l1wVmvNRC4'Y'ѾHՑJ o==Uԍy&dv S;|>/-qIP@MB;3\ yُy$\#*K %7:΀/mEanxC :O 4[!}qCb nM8젧CE \lz+`oD 4 mH)iZS c s#JlaCT}g'3g8uID EV,0$ w #{hիD\iYy.+CTEQ@R↑Eo-״nSv25c<CVqɧy*RPAaa539Z@śIv:XSI"释f)_SD+Cw w HL"xVwث?HI¿J4 nɿehϽeԹ3BsUˀ&#xq27o ̨ kנBC]`7?xt{=ʈ" iЫ^&TuƢW M 2gEΦ'd5q aJ8ffc攞; uyA]{;yܗ%xX^@)t> %ΜxY9LC h3}nc[;sG"<8T=BH y[fAe)o RZn&Q` PsDow6?iQ-S(p:LkI "670eXJg㥼xۣҟoV5ډAiB-&|mC15"v1KCXbMUuP?uR}bƪ'3Ya. S}ɾ5|53d[#Fn.@yۖ.Nl])ͮ\fq3p ʿ帮%Yǽb+#H ̀MKն^ѳZRQ眭}|0Q{p׹ &G%a.9TY;$I#69_-̹="&`AV6]k}Z0!6'Chy ?Ngs2=2pmӴɼG9!ugljت,kK!,εa=8=rmb3–P?Hra{b/؝#؄R-ó:\D"S$ l˵Fm1n$2U0(nl Z'di y=KM%I~֐HNC݄*,"^IqBK*|i[WԕiH~EJB=L͖k*46 ԡG%k&wZ'_-mi h[uqg;3$Hs6`:hQDoL2BILhcyYN3@ { -*V?AY aF Ђ*ؾ }D)^K )/T[wΤ >h}SЯU.Z >@WF6hPђjg6* H{ ]=3 k"_|&fOԱt\c쟪δvR$%M+ nuO Wqhw(9Z=2UA}V\Y?2k)vW1؋$w b9wƟ0ig.!BF`egڴǏGrw]iԑEMWeIz&l_*CnG5ě XVz"\iEbTg~$YyK!skƃ`ܩW>gQAxS+cg q:VNxau]]C{>@E|FP5dK(vk[4 '%i5$8upmu(]E=.GR\Y,XZO-@9o`Hϗ.G\ІWf:n-D 3=?AF{"Y NDb$#gdZ+}Mo:y.$ŇbQaz6Og^djNi )lG͝بÙC@tչ;LӖ*غ xfJw8sUÐ$Wq ~>ǝ#}uH}Ң-EhZ٩91C@X?%r?o}oE~=2}/xx؀+%.#@[Z%]D\ρrާN['kst itbkq02p(7ibnAF0&NBhmɁ`$;R |U~5p_Mtc[:ԯhn*)8D@QaM"j ݷ qXqty+GLhb'H,sZuZ E[a]{c?\jPiSt*YL uѲׁAht'T!6&`Ǜng ,3gKRfu!M 2m`qnCWCTkﯩi܂iժ(%l2<̪2_W71[.>Td=-D|t0_q: 4Ĩi_"lne)M]o˛*6#^C:0 fɺ`w%*o/j0x7M'9!-\7Ya8=RUjgٴ{2:)[iD!#)TFյS*W@%| B0N6i;mm5^\yǩ]stQE|ZIihq[t"~*Gr|nEsux)^$W5oe@ CS8 @{^20 je[Z>SUHQ6 ]oz;%$klBHVdYBҗPUu2At ʽ,䰮Щ\+i3RX@I!d ~1Tc2>TY[ʍ{ϷE&5l7n\>+M;ѼfHt‰N^疥HGm=XfJq<ΰ}Ӓ~HIa ):N 0"g!Sj5Q/bAp .yq@ 4S>#T=yp1w+^ ]tGr&5A ,`uw8Ǹ &m1=6ŀ ,`6}L Eæy+WeRv1tڕ.w}};hDi<;) ~$Qe(9Rxc.ӥ@#~]6ӆ$rYa!"v?搝Cز?}> .Fb2tEeQHdMqJMb'B !ꣾgZ_0 ܕS Wh**F %`m@ p(:[PY/5SM6ٸMLG-s0 ' *S>32gJb4#qK#(x#tnlӾ٭ +e'Y_K41I FP >["DJܡnN"G ʆDT厸}3* C`HКs7u1jp̻t!re]B$?{(AGR8 =q#v8M+h,,F'fB*Ng|ifcܞ E oGk[Z?̺. w@r%]QS'A<5<5kBXZ9Xgn3|@JØI؀ɩx^[9^]D7h䧷pyke>4?"la}qˣ2`G Vx{DoNtKGTH)M׊[z d"1 c9\ZAc4xk\6Lb03""%]jV5RT}Q@7MG i|elw+1 omĕ+__t#sp2' :`@]TC ^~E8ٻG8 0 Ϟdx!qR= (0 ˖z|DŽC~#5O= O}?w i? dA+>XRƭFG^(nFg}0CP.ĥ3onTj9蟭-:Z# 86 5=7PӘ'= ;c"a2`$MRЏ+MytZv.ZwǍ&L{#( ۝(5h!a~nQ$3Wnũ ]d%|J`˿tv-[|ݳb]9uwviH;X>P+TS#P;*dS0Z^4[+'(\dhЊoȄ1,I2W s]x+s(AiKy.GT,)1+$\a!Lkۆ5ܟ;ݜq}$E Yңw` lEp@?=4fX5vkUہyúDb8c?f,Bu@?3R9]-J%i͆qsn(D>u,t#w@M]* \<hL#Gc-tmOs2wfI^/PLWSfal+LRX9[['X'{hP?%&^\Pۂ;R0ᑥǴ:@d SGBHmq9;Cnf&bjez7muvn`/-%XB*`*XadX,у*5 ~u:o|# nZ!S@P#Ci%wHIۋ{v ?Ka5MEُ#!R C3d~ Oб[6i4H7}ȳId}<;u!Ck|w݇ 6,qnSv-Y>MuC  Z,Wځ_-\ip&t $K'u0N~ ,fVn 9|[Ae0ũpγ0ԿLݘ҆x?dЖ|kGe}F/ o7-S 5Yv)?' OhEy++a1\7:7Ĩz4ac(̽Zl0a'w>G\-4Ne}iCrn-[8erX:3۵Qf2Lت:HsrFϽ)"nqv$mn<5w;1l*ٔt(cKjkl/Baޭɇnda>I+%AnۤA f \Ư c 7Nox\1 P2n񖐔ggY*X7DƌK0I A]Et  Pm\!Ou"zhSOҝ9SNˉL! n{BAaʳ t0~V O1`q;6Gd繽= GEQ4y4 6jK(~]\R I:^.ÈYb"űȑ#,nW(aN"9/"RDfئګνvMH,iEp_HkS9fVƕ2d3AiKmXeʊn)^>Ib>,pWb: )w7<}=O 2]!oh҇@: V/0f4uć}T`HPB ? WKfYwcfF7]i'[Sf.%yK a#Bqځ҉UgJ(;%(g9i _Ǎ@Z*ik{5z%bGsbh+x֥jز֥8w [ղ[XDSc@jP`to/ٟKsi`G5]IwW*4"q VKQ`GE[+PXT<'q`s.m:JH#OҦ{&ߞ7Epϻ݉_d xG![U/y*w_n$ ?a)H9#@<WEW]Q(u@ǵG<.T&,*j-S u8L _Lwk%xmvgE@M2^9T {'8u(8{\r駘(_<,sxm5dL!HO˴[.=i!w)9o$cx g8ɋۘud$IKVC`S^ߒG_pD KLfzf]+ `5pQ72Ԍi"]3h] 3ΑR,=XC.e20U%mspmI,.Ι G̨#>!ʯZi\.ȊX%Oh@~ܛgø"d(ožig*EٲPpִȕs^bZs>JDກ@QHۀ>Tc(]V[5?vł>@ȏɨ^Miܖkj%:t )7[JZfakKXn޿,s}_= fmOPͯaӁxL u),ͩyN{Î'W`%Vg7^^`.zq] U""xnQWJOumtŕ[-k zC'Qh*l[uH9MwC"4&۫(F1_R:wB"2.n̴-lF(V,|EWZدnclSrP>I:L)ayA԰=]-#T#$TՓy22qQܸ)#W(c-EZņEGGbFφLc0Hdq=߶o5a̸r;4BM*DLk5aגmkd -ւB*V`NԀ =8d ЋI4jQ#8Z(˅-卣$a}q-vA\3h`GB!TaN+jMPL0OUub~35H|pR3>{!_ j-zU@1a>+ɮ _UK՜4s/b3 K!i3z (@R0_\)zP>RgeQ\v{i~TbdeZOv󽚔cRzVgOPv k!g]lwݚ$<^;cٙ:#:C:yiH=zzr3%c Q;f$љ9cK[oY 6WREb:rYjY#m,77Gg.PmB_yyqV'BJ-!Q$1ig6H+eq/ sqPb`1gƼ4O?u%JnB m¬p3Qf#QAb)c+_?9K{B"/^'6YҀ"X㞪 hG(Is +k\cɭ}Sj4;z'0k9C7 ކVyo+߸*,,R' O)`wvo!iB?:uRYǙ]BOyE҇XXb a/wQKiAͷ&#on@QGkufL>Dh.GW~quZ%GP; I(#2E#Q-lU}h*rG}I&Llɡfʯ=VM H7zn'T:G'4Vjw*.~S czߖ )#(`nMFQ tB.z V;S]胰bQWgfOI[wS:ne?^9k#5J?{[+UT;WIHIm4PsI֣MAW 3C 72Wg jp kuK}i&5$/R 9}#uTIp*ejA*c&I~ Q; R3hPi$~!% NvėSBG@K~fkx4ڵwS}BIZI¤{`d59!-?N׌FZSo&V@^] ցc[ }-}pghW@urܐ;A ؖXh|zOw %[W -NWNqyH!B)?9坁ZM-P6艓  &>kaw<#`{*U4R[u\4b.Y,?gX݋J}'6U8 !!)Q[p{){QIFE%ѢiVS>CW4 S$жyN Q-rE>uY}ei>we=4f&AV%ئߵO3芪J 5_G2QXp| {\ Ch+vCgß]9aO%r?YxKrsr&\wOhcuzcXS~+0LhN-k H1ɡ]l_?5OlvqVj8h ѐCP2tf^txr C-ۂ$۔5]ykE\6E&zߤv>^ |"j04e0zb7ӝadU50DLf.9&^eN$ga>2C sHma%i`@2\[^͵p:ѽk 9j"mo\AMzXrZVa4Nq|SFis~n"È8vQV8m,9uLjV>"5 wCIbvA7Y *IAXC*ZpyJ4_OQٖAk`8, 45|{8`iS!N inr3TrgAeul/6BԳJKK W?R|}yB}9?kX9`Kſxf><* sEf5|_;gpSkT)tV*j?[Q8K;b wo@zsl~?L^'t8.o皙w^DdG|t0)Z.L'GK*Np5Әd =-OinZQ7!wy9Kd=)S&~5_ˋ4Q\6lgep&BRX潚l_KzB?1$RYԿG2O=e\bXLuUT .ߥ* ]hd$soQ\ӜωLu祓{R`p?c5OC6C'2[M4t2c}ѣ $ +X1qTZ*UlݿC]iۺaxхivx2}Ơ=!6tdr+4*E2d*tF=6[w4c`w&)p(Mc{@"8((^Ũ|v]`DS/?csW " HI-tW ^ ~Ieі͛o@NkY( 4(gpBmMi%ħ,g%T~o(E@%h~ҦsV?RA>iLzz|Ƕ6w.'ۡIw܉!OvlyEv/K9/TJ9WP"haXû<㓜lDr,G}\% \SV&8\+]`[vP}+ju!l&|-:L"hjTB=6jV]8y6~eOk̢w|A u'K9%k)56΂&W=@OĚĿ .L*g\Đ߀ 455ظE1rd0 xI6 Xf k)%/'5jQaa7l+z*A⪩9 z,&fDW7U7^Vb) HcK 533 1IFBj#`I\&Hq-4="k -TPJ t͠Ntв'9&cb{QU[)p)<:J@O(?EӃM?ֆVCMGS ?#Q:[ToT-e[cN%='Ll#,ms_ѧb]vWT+f5>}LVU*D3Bg)r8o-@Q$C81 x87DdZ}Z*~% V$ 8g!Ї@eO orb8Ct *C0{O/ c(Ġt_.@\9q%pIim5ba,,ĿVZ#skLhv?Q\=b^zHNdZ~71`v5v] QA;5Or+28n8[EUcY*"X{Zә4;50}De⢜_A49t9zGG mJ@BBƛ0pW%+/=bl*:>>B3O"0  ibJqWR<kmפ]v %U iBv Ǜ C< @g[eBVi]P~;|WG_~ 0`/WF؞g@?O# G +D0!6<&)v8`}'njSJP+dgB8V ΟH"٢P(mw%A02w3o"?$Ңb?sˢ}\d.Rs]!E ;%L;>9G@!ȸ>h3<),@e bHw,=5t&d|wrxHW`1~ny 'vUŻʦrˡ 1kobHpBmQb < @p 4qxvM[Kذ,U`iƝWV[>/xg]H pW8fx2B*x%hݕ90H4խb4+)Aʅ~XljN !$ v+tḣ@ՠ<{#bW<Ă0?Bk]1ާ۰wL<=0T}J0x܊C= ʰ||(.((\ހm S aQgbje>7ẅv<:%ˤߔ{h9< zP(4u>]Ҋ2EH[?| n~A"`_ktj|a!_:1Mᴘ(n^x릑9%{v8Ck!|i4.+o *9Bic>eKx(),Tsdc ,?CYgOU3IUT +53tȸVJdItu,=Bף-㎓7d),C}ifB4.w&=q0zׁ,COG8I5NԥATt# <F_kt^uNJ ta{~mwS2oQ3ɞZ'l(>GL|zRM]W֑ nEZn[gEaYU rBL*Od h>?K7$XaΝ{nt**UnyYW< hicfDﮥG8N -N -{7MmEwBo,^#/Vb+QWw:է`r %(1_[&Mϡ9x5&#[J:XV8nE:ݘUbZH?ԛ&yYr3}u+oxb+rݚ(Iza~%܋Lچ5i*EM?9`y Qm8\mx!$\)E4Dt^90Kbϡ˃ϴ7 X wZB8믐Z.Tg^0Kұa`}Ko.KClҐo< w@3 |KrA+#|5>;?.^ j^)=W)z)~I(h[܉&6|;$ڱHIo[j Y(GI͑ `f q[AX"2,2na~ vy&vr J$Z}ңC(`qhByEn61Z'q㤴l1ЇsZ<06b|5?٘߻(_L{جЊÙAu/n*CH~^yϫfK]˦z//K"t/TIxvώ,. Y)T5uFpY. C;SHj=mhy笥K&_.AV lM4ZgU+C ݆g^.k:p *^$4,*[|3M:),!VxX++aPyoO7Tm 7L{K,, D }%2Ketn @`ƄKȻOgnmUڇ}biN4l<_۶PGm-LH“J$nj7bSL28r҄cO\;z8no'#ph@H, @@sYyDRA=@ۇ̤bĮ׵2#H8I+\8.+n~\mXx6o >V}׼bm]X7Gn%:9+@mQΛ?5Pb w33jURDb6|wtx-xd!kZU_nK{5:==Bµ3f):,?w]"<+6=S^gjm䍄z'?z~9߱k̳#n!欺=WNjF:]ww'shF+. {I$JŢic *VhAMx1LO-up'2.Zr22 O=sj;_2>?IAFf{ SN40:0;S7WaXi ko10B#KB)\ EQnf#Yx,K>oh'iƦB0\ZEgqSRWKaQ6Up k=4ZW.GgAa #OV~2:o)@ps`#Ԥly|IR͆dmd癱 CU9Kۺ5ӫVQpi]mYa7MU~FXzx}@L5/<7A%~ MVďfo}^֔pDaY33aBra^)rMG"[6tE2=Lu('=n`w\CXz}Rϡ&I-ᱎfgW;*R:Ն> +x$;HY@K2]q3²p59Cs/`Bk 3`D>ҎC!%v+tGuիzUːm% {XW38jƮU1f -pk,=&c`~xs ' 4UW.hܮRhE6I栶LWûja;R_\?9;-Vj6FN*b!'ےNs: Y]Mw ʣP".'o8sx0 8^"+PXE=G*S:mL$>&Al'[Ft>M̃]n*53,"KC3zu^ZeOeDF Twm&/Gp&!fIF恕Q3 %ceHKdҩ!댮q1gvT܍].hinDd ?<>]r F-jaFo20`"Xh7/}7ˑzԢ%{gALD7s,"d|9b=w蘔Q"=ԩ?c2=ę13f5qP,A,Jlȭ6oOTX2Dk߂Zu개//1`6js3mwl! "BԀ遁hؕقJT`fu *3A]O h$AM_;qx~NXf;%*3U%qcd_K x T' tHps.PX+ Nk\!ss3OL+?LseGH7|3[Brb0Jc 5I,1=m`&t bOTi}g1Ws3M2IR⒌Ƽ?/ *j^z@62E577HۜsIz~U쟨r)8E#6]l]S$`K2~ϠǟdĘE4 %V ;5}袹!XL$ 5h㘀XL,k_?+[ QW^kø,|@x")\*fj +=v.rȀ{W[4KR݌fdO: QKO̓k0^d,gCL%kV19'3 OF, E?fڟ̭~OD6K)rVu+M hJAJҙ @{nY* 9c>/j1 fû>SL8RTzy \}SX?js'DD- νyO4`W'IY(|hAwIsF o͡uf66f.j_$`Z_z6;=):zȨDDe㭕MbpA'vlfS#o-8_~0QLhxw~JdC6~zji9X@%3v+(V7PrS>d&p )x)a5"::ZvC$=e?)ҁ(v/=sS(54򸭳mGA\J#gE# ez؇?ԁ.KC*/F(Cˊ[]Qb`2,{8@5|a=S6k?r{!>X2)j"ZxPꗉUqYXΰk7{S$H`s{s4I#f "!T'7Ӣ3 }tY!a@ö-z H- ,\\Ej!LF yF˗];"> z2R^w_2u`Yy^*֟zl BEP`NBbGQ2KZ#KvyqVl8oՁx 6b4E w@QҘ"<<@(%/S?l]6Wg^{Mw$6u^/gGoPƺ}޲"W}v =Sp8z06?ߟ7y(;LD)U"'R^': ;m>E8%SbJG@Q0_8]N&8EqG0(]!A2`/i苷ج&UN%î'^ލ<'=|%!qg ZV8twc֩/]23iGD͒$ cUIkZo^! 40ƁX|NB#/RAaٻd(bMeD`Q-ʤmͨ }9>hM2JA+$:,pWQ/{NmÕ+㱛m>*zqK.}U 8M|8klX KS%_sc Q4+R63b e3WJ p (_كԮ5SY.8 )ֵs ejB*JT"]8Jڲܞ E*&_˜X{U]"g6A A'/t^olS;:&&&d&=2j rs:O%&rSr !BǵWWY wp~"y:1L6H~́y:,P-甇ɽKf>{M+Žs*3uZz&FeʳAN*Tpcq3A$<>ꞇ,;i.۽NHٽa=]KE,-uUYK.$CG*R=kg =۞JϦׅSȇ];z\y8T>-E L#3!PԂcC0lĻ _20y]N=u22&Q_ʋ5\@Y1$~_T=V2uF @ 1Heƹ) -t%E Kx)+d [{3dH q;m!@ yh&hv.)coj-1"^UDC)(<F#fnPeOK,SE1ӪU"`}X(nneXb#]kV,kFZ 5k] a> AWs"$P%(``Jf6FIORZOg݈ճ{'c_R0U}2Qyq-0vJBQ{D,;@l ԧgYJTؠϡ+rkN[qVT&Ze.j€i'#J]f5i a^T31>j{.z} flg ^kF?σroN>Oڕ{O he:&{I,$[VτX-L`%S1L%ҜpߡXL[AG׽F~;,( j﬋-Od tVhE4)`7TE)\j%i ` =#c>CQ>XO؊̚l4Z}x*7V^|e ÜېG4^T^x3&&.6S䖑O]L%erx_L8 n I'Uǜ_7 v/{o_ ?5x6U:1G zů? $Mq 9ډ9.)K0%4H5s7EDžO=g9l&cyRP\=Yŗ@Пc*N Hðc˴D5~X{~Gd6ikaya}.I,~\X{["!lh_]ro}=|}z!;-uDHW=)Dϊ sz=)94ҡFNZKfj};hgq8_~N@Q;1vAy*IXm6vs"oɬX(_Ă&acR A4K?.x&"z՟ONRX2>͛\k7AG#} dlB?gLNw{!) ̺1n~GXp C9o>_iԼr[Tϗ1XFsT!PjhIoVC2E`53Шv{=udMy7dD> eX1ǿg'_<ц o flWI] l۶L?fꈺŲ. ,LdZ1;XuHb/7Ow˙GGӐ[U`hS`הꝲfUH<2XFiCFď̏یڡieN ]w^lepMPFx9 eiu_ӽ*T = z.H8˻NˠhO,#̩M!>!1m 5CcvY2=Z_Er.\mzctw7XPMα;fZ(InJy*׌9,]` 9bx"yk2Tl *hQe/)1Vz-Ddzoli;'3.'7o bkHE+7RޭUY~GӁD@˟&b+s*"dY6MM+O< tI*s-#}%6J4r^yXL*5'RᳲI%H-$ڊ9p9]&wrͿ! RDot8u &GܠΥ9S@'SIK(ҧe%fo=0 I3O6ň͹CY=3$f I; t7ҟ}|d | 7s`ޅ_Ň+%$"3@VOxJkpĪqd[Ê+@׿ /@h.boLP.`f\Ϋ3Cɣ7ڷF#6Mzc"x s?(SZ(6/+eתHm!뻧}|T&QZ{giNsEW%;ٟzG*^؞3?^ַ Yȯ@tb"XL+Gj B(R.d#^wZiўGd퍋giY5{}h/'t;SʇODM6_C{jZDC& trGj ;4'Ҳ>{Mj_G@r%Pl/s-^_2ʭwp<7nʘ zzXzaM._u(-9M|l:ec_C~W a=6)Cb64z=Z~č{ʮj шv["I4)K:{W؏t/38u@) ux!^݄b2Fb@ j-2 tvWhi%|7+Znޫ,"y2q 1]KͿ|*E7Ve]M5GjNaEO PKÏBVT@1T#0\(m0c'<`idxwBW2DSO%,ca +?5L?mNhWn~lN nS x+,졈 '[Bl! 2m2?_1.#0(;Sf6Ox*J"˄Lh=%qv 9!GkbZ+.kci;v]+ºVyh:n:;3\b~X-vv:ީH%!K2LЁf|djrhqV9̽y%4;ho~.|VYAuqp\9DxO>PL:R?N aI6Zh7Sˣ΀44[YZ>D%ڢ~M[#&T?N&;qC?;ߊ\ |fmg(hlM;[9>f4n.^] IJ̺^D3gu7ND "S$-YؼO8*RXKX5-yKoF21JAY$) =ß^{|O;sSzZ?:G'MI 0Peea9)U؝>pSYc!è묖^Pë_I@׭:S/~r1n-_P\ݢ,XdR@4dw H4WF63(o.5>4Nd$(&P'Yaet'7B}Fsɘ!gSavfh恓&|gVǀ!K{agN#7Y^cc]Zt&%sp{̍%]7ׅ7 q5A@"=DډK /ڶ2CK%f&ak.+Bcf=rb5⊡#wϡ ϩZ>9KH2uf( dT zY@OIfw͕iVҡJ(,UleO>܇g14.,px჉^.⋲Y":ѓ@_8kVwɀN]ȩY~"WCuZl;c6v URoT:n YL aO33CnNcU*ij&oOA I \Q.)Iv6I}tMk{0Z~g[]׼l2n ^& =s>lH=ɤ :r{m_ *d|:}+J2.R_慒fU)|R-KkJ}D޶@G| -tT ;Pm@itW%?8AF_^CS!~e:pޟ: 8UO)4(j*(;%r ا l+0H!Y^ZסMw$m\V!(7146J#eQ}I1DPyzܮ0~Qoey53Q{g`dSŖ7]:k Z]qT УpSf! v T( g#]ZsrzV{#CgY\c[HtťMk^z^@Y8re~βu޲DB!m2\W(nm9v}Jҭ ߔ`z8HsN~W'r'!ze';+$jDؑr^m_NB`g!b>ҵ oF E60 _QX%{SB&nagŋ˃6HM8ۗ+Kzk}=қE7C.i~jQl/Vj)[((D6X}.50ߛ7պIq-wqka]yӗ7,;ivO2.*Jhn( !Tۦ}ـgҘe90apq+QFkbly8}/c=t~Nv/pg%~j Mf+1|eHY>{\޳e sZEkX̵NZmPl^[ V,O9oNKZ7#pR)/ؙMTZ{=j8 ΀cç'<̙#]Bcls?ka{'ʈ.64F qI7dU{hEDh@O\ቡO{(ڻ S[l &O>5@ E/%OLVj{k ~5,#Ur-,PDF0Хb=gG0aG$z{8;rK%aQtC ?Ju"يW0SJS2f@_s +Y&eJzxzEbC=<).f% N =U F3K~\!ʯ<|o_:Uq%TR7Ai˪ H< eGg D>>Ӊ:Im e*`DmBA_.۬<02zI9HՐ.=\#^l_'&("KF^V϶*7w4k1xdޣ 3qg]p|\՟B80ХcYf. Smhl!ޒDUh.1E?A1x-@b!@hH s}#Y0wqJV:A|i0Ҙì)B)adni$c&6he#l`a1ZxN\ ߟb$cǁۓ>RE~G;PBVxjļFYʽ^-ۊ{KfͿrYƬ=q SPqɿG&CW}ES'gz|ՊY&6Jѱ+_]uxo08+$ ځA6@%[c*MǞQ?S: dq@xpkھ{O|ɝf|췱zQ6VT>紱#N%7XQFe[REP o9h,11i$O1x߶];m<$)@"Qgt4惼 Bq,WesnYEoDF!WǿơJ@&#M9|ܶU_8e|Mb*ID}:˨u>EHGS6z>` 7h%U35>3"\S~Vy*]63i==qw߇^cCv^f^{iVq0iVY-M:7u֢ւ piU;MZ4z;+eu^(l>KR 1gUAQL{[x"-7w+1_ތ`4gtF_w[lH+:^N-Jx;!DةN11mSZR{ GZwK:,uhz.힓S2U EHP6 KXcr[h { s[8X v[ tϖDy0Z=-o'wYPSΏhG8JQ.2LD.f=Q_{gX/:Iu XPp+P#m]$b-{4$KQhT*6D(+ ĥl&OVE,ͪ\GVqS'nA\|/h hL/w[bmXvT =nݍ}?pʌJ(TmXh8`P}d`:Q=(wVA7>-ZbmGNBbsJrnJ#] 3g{][ȹu`ҞȤX-5Hz{hh5WыX>/P|܀mHK74Iw-}RaKXmD%HcD+Feаl])'  krTvCɾ]kS/C;nPٲ-^f ̯̤&POWy֜%Bt5|>;_,w̋xkZC'(]tF z_B""%f0_eBˮ4q9uv9pw>Q;`c#{@Qҵ45NZZbBH<mWDv}l%<^hQ~/lIQ7?fUK/^i(mx5gyw#.S&ۓ0zOPUҐk1ߘO94 6Ds'ɼ$ڭmWFIMhR{k -s?dj(Tπx>&,#\#M(9'SM@?UDE;mb,}-GoSnh A# ]#Li=ǿzx-N.sv-O6 /J˵MaCQ5#`uCbI/K'd$;R*SZgr;PpeӍXJ(⍺g*q>1PQvj5.BmJ?`(w`.>{\x){!>UtAy?_eliȿ(r(oPE+iNnۑbVZ `G-?üOA6@^rUFes,7~7\vjpӶ76qic>9򹜅E3V눕kN]}XoyΚv0X\g>S0;77ZB%^`͕ m?Kr)L_9]ݨOׇU U+Jv h^8t5=,}֟߷Ya!a2$4!9cBM `?k0}Z\o[g_'0щe7!$x'vRg;A}brjԩĽSC =:8fKM$ ؙTSkBAqek(3&f8 1K604DB&]S hv}|J }1KA*f<*QdSUds"^$$?۸2 b(1i֢ٓXlm^hPӽ"R7˨h W|ñr^L }EYdq4tgK$v+:**A6چ F;Lq̓8Me]ː, gbX^`D3:tDK>_ ^TgiIU H&RWΞj.)ISJx'~O8"רU몦!ж?(N7]ѝ (مq2eGF-=ĠއϚJy_ d$+^愼ǥ=IN\R-F/̷b/މ5F~~sʫ,nѤń г{@̔z+& 9p`mA"YT@, h5Nx1jc-C;"xJ|;%oSH;&kmvU؉\)rPjVCfJDK\|*q31uCJki+efy\CsMIcrTM_DŽ{hP4㯹W=K &KVw^rkٺDQ=E U 9z̷~s-3?מsqxI8* @ٰ>G,~W+JU+/ySN#ʒT>wyX%*pvq:X\&?5Mڐ݉x~ƽgArc-Co:t yֿ]AIfn_=.z\H儰{} M:R M>VF.\krrE{&?y^'d% 1q4_C4t۸&./A pA}QYGZRSC Of5y=."{rELm!5 )d<8~h=T-Z\&êHy3<?ys WDA-3(U'Aw5C8~98sD]^'$~6!U)OH92t$B Q Ts ET=ii-9&F"q-=N)GZ#Lא%dzj4=r?5ȱin,EEB"2k?q7y/_W<5D^|9!kr37Sd1gh8;Jk6k^KQb~6&(j"_..os8 @QUUH28Ji%S) 7_*G*4Stpk>FRz#א& D? 7 +%jAkM ##Q+w>ct7J/n]EȻdA8sjn`]69@kf,ooI_k5^J2 ,"l Т!UnUCن݄Z ~ZA0g1%RmagcF% RHL'ufU)Q?Z_{৕$C+a{ƫ¼L+730^ 􀼫w_Pl @Z&(/d֚2kL>cx4<Π-N:B4@ 1?̛8D,Zܵ usŏYEQpħikgUMv(iB[=fT6,x҉x!41ɨN .A="]vg H˗'^IP`}@y&;ٴ$]]'Zv2~\^w9Ͽ͉Ǽ0L.%nFhs&,`P9c!m3X!BkyPJH)LCمAtc5QV㶋5u㨲!I:|oaHJ?N chwo?-;ʺS Tbe[9kqa{ KS|?* Yv ɣ W?p߁5  ѪMA8paSS wmJl jhKe#F6yѲ H+?*$ ⾜>V$(? ࡠKb7C̈́IV L^D2KxrGxU3Zz=uAhl(J RʳfzOXHYVF3`L_ 4.+vK҅mek9@{p}}2ޮ} &4bOq..SI~dFݕ= wڙG_G@oQ4_C=R5LM}iTԑ<7hsNQ9{:sj%UQR0s w.;_[:{9-LԎ%7L DuA)0&5BDoF^ަcmx$f;}JO4`L>N Q$~>00xEQ5w m˱Ep!&rTMg"A,U&~ K{lܞءߤ6ңn ,iXbJm :S4$(8u#>c+UvK.f7ȽRZ+G gV ?KF85 /)i.^SP"WckGd/"ᖓu}XCą$"d^ݣ)7'd-7F3z婪Q^0pz](NHΌFn!'yVLZ Yd0EUFWF01n _KN~]X 椫~J k=e%f>Nn˷`2*ٖO`9{m9>V;p[Q !W[7|DCz)DI .kK7 ά:JJEZ g bW΃1ٴI5ܜƉQ nTZdh-m魞_ѫX[sI#֡JTe<=,lݶ~ EGgu@MT!kՌXcj`dyg.@ZR x$p"f3,k j|ECr GoԾA! 8}Ō&#z A)jVRe0X4Lbϴr~וSH6OK!׺QlL ,EV.9F$GRݕ`85eCy Ѓd:.UW#yN~\BQMHaZ/$. I.`!JdWo{=ڜIo@ZуcL8ay:庽ߦ|[@uQ[/뿭36rVj_cJY p4BK5S{ۥ OYp E iujbL]GSl™>nTl {R\o|8SaIY'n)7ĘVWW9FT|JU- KG_&l{i,y]L$g8?rcݷCzC﵌r.UǺXOZNcq6saB)-TV/va|-H}Y< dtE{3:ffnhݺ" [7E 65-9UXTƯr1S?>O$<[ỵʻ%R*l \vjbq,%W~CKG-npO0:H".$ӷ"P5Y'aOd!/Li kYBf-GTE i (jHj/>$kbxK0V>\Xt 0a^]ރ6ǦaY~!eDZ+UJ>WپҏHI9{nrh ɾ(Yٞ{ *Шxa $"4Ty s9AAӶbj V,c;&!C 򆨓ϼijI|`TfH0=!)P۝FHꞪsB M{3~!O1"Ϛ=ޱOS hv&k;f%P6P@dkĐŬ\!P&l9_\E)V{_ސ8:o[l@]8[;ٲV*#5ݬΤ(kM:Qh_5Md+, +%b5楪U\>:ӝRLHx$A7' 0P5jd¢}^j>!R?*evau>*,{l2CrgrynEqgyOKprPOs3.iNڒ?#fa9)l%%Re<=^:5sR+Xθz<#APd\ٚ0ݛ ob2uI"4)jP :։J g{ 1=̢OC i.:>*ي,Jrm:Uec"=L??K~Ȟ3gp z) =Ul"Y¬9Xm&ͥf/#P@q+-\$3x9P3E K8^Y3',<J?[KhܻK V:*bz6lU T qe X ޟ^j%RY|Ouk#_{z `mX! 0'\Øm g}Z9tah6<FP~y]oX_@a+"_u\a_0߀&\=d)g(_.eNUZ9ֱUŞj`dy\' 2Y0L`7y=s+.+#Ee^?s -9Z-:iML#g5Lˍ VaUܽ@I,1-=u|^gڝܞmVrM FI!*ǁڻ4EA_ /̕|wqC,V_a6j,8|h(ð,mp~ ՔȲh*?P Sv'ۊ!1x<dz'Xq7 f`ޜʢFոa3*I$Oܛ9|Y|gz6x{un9;K8%q!DYN}X2$CFp*ITh'ho<&4y@[jEA'eP6 1gEnt}@8=:Dt]~; 2(@NΚOo`kà)CaYS' xx·= bLBQw*=<ӑU;i.uV)2ج0YXL` յ[&s=l|Z :TB-0D _NEH s瞥Q_@6b[!י ]! F8ct r1ON.٪bճԀB?yo&T,D3>TppLV7mOE`R{)jjl3:kM P#`1TGY:8X\ ta%]Oډh*N7UD8jAh_ظDrJL SL~!nA}Ok:6=` 6z.xсDžɮ32K%yQɵ[>0~ [:4eY0/¥4|Ҝ$q0؀,gC%nww«F٩S€ Q }|LZ0{Խ*<'L hb@/9Ner{Brg)>+I%?t"ZNU$A\9,":K5\z ]3-~c}!&$4$J=x1K}~uf_^O"\xr_%IT:,3-"%-kZĺRh]c oNȼ6::Gbt-ݖ|d iN-aPt<3\#UZQ{Yi5 T^j[?>ŢtP!4{^QjǨ'yha)ѯοX3qS%ey"z!9fl6 +WA 0s{`IrnUOf 8X=cHdtg@@2% b?b=}ٌ`C v֍ǃ;ls1ca+ͻvxEy尾n^l_2 3=?GKyNuZ5Lwl^4ʹV_ ٨O-`ʥZ6Ic _Y;< uHC g1f\Y>pn33^ _ȇnyHFk0wiv:Y\]Dk_XqKZ͝zA7W|(r#Ciє tAqH<\{jue)>7bV}[sb膏I%~˸,w# _O۽ݥ+z6'Hs[Nդ$T"ZRÍE$|(ꛋre:rN`=IQ?4WC/i 2C4O]"`̷0[n t؄ >"H13ɐtqJQKgFƂ"`M=DiyQ%@E.b@Xl*s)֞.%X&DKJDڌ+^yu ߨA~w~4Gq$oqz$z=v%R`=(vO3T 9ժDLդ,Js{M(( >|ʵv^5jqci6$^3TOR%S8%[, bXI ozx"Q-jJJDa"- }]44(ת2wO#S%zL _tTU!CWS |.áU0?],;{4-"2<RG.;QțM˔C44NH|6V[ ̮cCXUOjnoxy UoP.t .cT'D`MpEڸőqθuݴaKTĨ3 7Rmj C\WVS0ݵ6#_HB,5s٭!l\_[)cI^x6U`XδǑqW2@m& C]g4P.8?#:J.} a,+e5DY$*FG<8 S¤Hz[O(c3S°@LP]b~/ fnkT8ը/M0\w-f[k'=$ubc+! 2I~5Q7ZM |+gpX4q24˜1M&Vh{l*y٭vDڈs(sS?jL*$>¡~ǃnJR#0Eĝ :6wzO/F~% u'g2uX`UBMg?!ݗxe}1crn< $x]Aw//phnG(' q,ٲGoYA,e09׀zsНY:~bVC|e:auL?5 I{; |^TZ/𕧘+7Bng4)BB$h?n>Yo*Ts_--qbNQ&d[:&K X^ R||WXBtCKWm:5,̹Fmnu!? l~)'eX`$ osPcM^'f=[6VUJToE/{rT>;ǐɮT`pPv"/s;YH1?;m[TyݱR%wzDm*M2=l?D0]¼Yit /hq~9 u׸@K)p|>X o;q/*м03< L!ɴp;W*89,{:Ah].18դ4O<8Ē!SI^L0BXO=0yK??$F2)1r>3UF1'i&$rAEnh5tdgyJ5 NUxyʦ2TCMWS!_C+AJ0b|d;޵e1QUSnuY4~q'-t0ˌT^l`Bv'`voF! 1Uw}96˟gTh - hEq@<׈O[a6<LjsN,o)k)׼ ]׹4R*dF#))eJ UָLmB|oh~P0Dď$&Qýr([[e`:S@]; T["t7X?W8Hus&r*; dOA z[ Bzф%'pMd/1$8=7;!-Hk3TpQnS`.#-JsޮCNO}93ediifg6?F.;0w6Bz&Mp)<7#7 $7qQD ~Ey_M!ɓ~8:ף&c05ԝ0_Q1B&zMVW;B CFiZ4cg"'Aܷ`fܚLg9"i[=Suhf >jSi*ztp}zL2G zSA ^-ҶCd! W`輆-\o-j7W]Nk$o*!2IpʬW*{%0@4 ԚƂQ07: Csv'+TS*S3p$U'ZLd˯np%x^p_TwMr8\X]nuͶ<(,+?4 rsR7? g >teomɋcX] ܝB6܇@=z35'F9ʧyGJj2Rh+., «="FkseeXX.GɟJK feJ3][\X\(\eo[ؐ7}bgI*}>n@@ HҀ*\&]Zr$SE\B6DZWS^4.ixqgMG,`TDlh,]LjX"g6J"&^۟ьF'1s6R]\#Пʽ]طɼ3zQtihnyhT{7%.Kh YZw{R~ ֠m%^"}}kCjԅM};M26:gz&,R̪=cneb P:g.N0DIt"9rJr1斯~K\߽JNJv@A5k%M|Rb`]ϏF/1.>ELΥ9pRZ#vP^|Ò枌d^Xld*S_2Y|V9=MT0(pct1!g9`N>>7 wwa < Q(TRQxTt"yYhvC1)ѹKI2m5N,cQSv^?%^ zԓ\} A5%!h*9,V~@Z s š".I#v-Y{_I@v&Y9];<4&wL(Z<9͒DGjYi@G6fo%ANaEyFdޭx;=o!nJ71q/u0A˒Hn[MinLяp,H\:,Ez[Rô6gƬ@ȿ,暞K)؛BU JA0UDc%qCX0øi>;P=㕇ʪMz\yLVE,.Ȫ7|`hzf0zG,hiOeY/X2ye_BnlRDf s1ٷv D1)a=jLeS>3z-RJ.m9۪A^+->v\T^5yΈ6s  T#L\-9O.z=t=KogvY)QHmR ƒyD}ۀW^g719<DK@Ѫi Rd[pAfR^M Xzx^Rz*Uӌ=jMPq||몎K/9t 3cfx XpEx#*{F4"h*UWz/p){g ampR$v&6ٳBq Gj0!8UHT ķ҆LyQ1}__m*)%zIhds\)n؉qgGt]IB3Sv׍7#5Z!ZwB M`6;BXakCZЌ$%Ul0DbƅDd8 CKP(Qc{F{*WZzSN&ҰBA_Hot1;%)U#gRE 5w8ZgMY /Q 4̛M6Y H@&U$N=-]};L=6%%AQ]OY%bs:?`hv/k ;YI_Q7rovd+݅>H3j1e ,b"5SI;昮Uv8ȡ™Dz/I!ڌ.8Tp+JYb97 A N:} ΥD[*Ǹ—g7>.Z5١Le6G^fyTWFRIv~Wjq|S ךAزR˸(18"7w %eį  >3CKq L_ |iX}pЛr3vcxPBR |Go(<ޞ2)I,m"+} OrqF3Cg~kW$ɜBӘF|3!Xt]'*~9M=VxcFTDCd}X9.mAːRD}2%g& 9.;0X׃vLp(g쮬}}ТϽ RĸĴLF,<P泿3h;Q84Pgy p"'4Yuu֎p _^G#5lQo6/ŬcO+EjԒiwUs힓P TVν}7A l|~T9#/CN[Bf3⦤Fa$I(}r>un-SMuG*;DؿsXaz͆%wY)PP+J rY֪dLqk rY\4K~r>y2HYޓ*~:x {pW.'$5g)]{lQz+~^!4}K[k\!%٣! ^;* zٲjaWO9^'4D{W|prBV=3 Z̬l}A-?ۅ6TlbrmzXWl0i3l XXRofO|mcsOh"[Rrfc?t"d|,uTh}9d!5+[zʆdNԭv Y͋ ĹXueGIzn֯r}k?[6 Y(Q֪r*9LcTD.8W^N nLYlBdȋg鄱0бY@4X`4C^ …pN (+>NJ NQ}pɥQ͋gܣ昔Eu; yb틆Kߝ]++™x\Z< P.h>$R^fUCF7]ilQT9ܫVF D+bݷ7Fj.G4A & BP_eWpfԗI_?qKBb4m% R%3]tꮡ7M~iBe&G@}x />eMn=/^MM:&7`lv])Ӊ~R: w>cV*? 9j6!FAJ2 #㸨]A5"P'oK1JOgtWK=Y}|.y.Ĕ^TU#+C2zBg%/!.e&aGmRƵ4v~J{?=^fƍY- F6ÂC=^QOė"]U)L2 M)0CӵPT6~K- iAom~ۄ( $X#"oxLB7l,-buSm7E{ JbNe;1ޠ6{H."43qK G%Qhwx)Zh )]:]rc ld٥KbAI?TB Sq"d_pIy[^xsʼn#teJ5uNf;Y&XL@fW 1ƨ(|lʥ.bھv>[lLz/"ywv[hO֊GN&a|Bt|zz81Wx}DY9֮I %t $E60O=і2^Lyd>i^z0{;h̙[4O:u Q&v{c+'e[vQƿYbE jd d>>c{;@>꥔΃$^PY#q{ke5MKk#w4AĬ-^k?83$Bwdz "u`.*d+,%y[H6+|jdTSu堮 z~_q0h{Ul'l3lwN Qb2r]Þ U$)̰3DNv՜y%gtBNE!d6Z52f %CCpe#q"^gFD(ՠ·@\Ͷk0nt7%YtzKT{CjMz?l 0թ&\tdFHz$!#RhfL:b3&ІZcJ Q!?"=1 (h^G{r7 ѴSlPR-nyF't^~Eq"c^+SOtNeq*yb4򆹉^+(ٰ+hg?dE-,)a(&73m.@Ь.H-~ќ d( 53ܕD>p%FC)$Te{έo,GY0ِzQ3| U 1_ږ :Nwo/dž+:_co/վMwx">X;(L>9.3%b!ALI?2R]'1D7λ oC@Gn̄T;e] g~Dޒ~.]A녑^c;b/( ZS$Ee4޲͢ˣs·*.S9U|7F}Ƌkr1714s>8o^.@r%K:tHc}Z ڇOՏ,MCzjz1c;yRq꟟^&1c6"Ԛ'N`fqǗ6*{Xf2#a DW8!*2jk @d !<ۙw5)PVX | &CYgVeN DNӤ6~,Pap'@ݸBSDx)š6_XܻӼszX!hz&:}xM fK,,ʸԈQ {,gؔʜ7FޜToThQ. b]ퟆxI^ 'k ad`5a-X\g xXgȭQ.FopϳSjMި[};҂,iߵ QD5W O*"Ucb'ӣ03!?9m<3_:&G'mG͵#d!1dQ*r4MT6U!.R9bE0 E*# _xdI,J mEM{0\iz,ÊT(])IB2yĨꏱd3U(ܥ'ӝR"(%LzX[Y吼p:2&VEu]duHMObuٶ=U}vic($ ^j;%[3S' (grLe)lR; }$ަP A{/n=/qS7ql*lA# H'xw Wv^f=}ڞ@OUF-d}oT>CM0= H ׵TIy&ÀTtw'1*J[PIA^hS۳O)ꦠyBѮqs`@-C|-q Q4N#&ہ*DmYdk~@p մDa+Lw^B~Y%4={BäZv$zj,yk#3JiFƬ#C\UZwriEGFFǖpZmIJ5T:yz'Lt~h-2w0Yos IɜaƇDAwB4*"i>7"wDߟywkqNŷG.PA:`aHO^네 ahP;gK7+>8a*&ҫ&1#hH{1 bz8r=}D)g=Mn2OWVIdiNMT0;/q,͐ͫ'zϽ*+tӼhUgm_"۳d`f=Kƽlm1`R*H[ ̻Ԡbaj=syF# WҰy/Fv\lяJ+_ۀil7ܥDw:\H~&lrh ܸ%licŪk-wA7K.C'OVm-r\.0*{ ]@У>QNۯ}4dmy*t!Q](đgHUӲz)'CXKfWBZ?d3l5Ry+:nv0PW 1u'}Njک| idBfC2Kf~Ä'g= 8.byx3M[*\8\s$zODLN,F+ T/LH,}QU/Y51 &zCc3C"V1ŀ"c1x'Cxm)d8H_KUC O~ჟsJ6v`PAA4flӄ(C."1f}se[#cĮy;@"m>i$>!n}H-y=\'?+Ľh .0L/8l^Y^g# QoxI/TC bF 'f%KQ@ 7RberyJNgPIwo >7#2:J m^R䇷{ 2{UMwXB[ z?!rmsIzS7٧ |znx_l}jn>J8 |TRw֚Rl}fiZ~e]"dуk A,!sQ{?k7 *v4G{D\>vY'RMǯOk-ڿiT&OPl gj)6 w@b^NFڻa|\|UStވ vp+lAɽdSӄ3rXt$5TfgF44g'}3t=ah>Ԫ~GiQ7x?DD,ۜ9,.M|((P`Q 2 v)O쫳b\W"zs< {$ȿK# %$&cŖC}l9] $ɧG /%sSX3w}qj!=;&]`Ĕ'ctQI@iu4TG)kVr81®w=wI;U\e5<ۂ*\YkăG}$I7QjK-jn~dg|/ey@:VN(B4Nzu՘N*/ !ﺎo9-m2HW`vQlfB\Z/'!B_&^__#K^;9[ihMJi(o)Y. 櫁@%* F<}ČmlC ƺkrΐ^VqcԬb[vه-SdOGmS`_:K7m=Rd,'M9!Clûs ! *,8n|X}HM#!/R;;0]IᚁwN-"F&͵A7X!uAE=%2tm54e+`#a?_#Mut 'S'^k2l*ԩn'?V3FgfUm" sm=e{O2{l)ޗ9bື1}(%+\4%.xFUBq0]V GE\+c酊*mj_n ҵ.W\xiTBzΥ0M|+PEsWju4bS#x}ݰdV#aUcmQq7$&̍@FҦ_ÖdȝU5~lQLaT< c\Bf%nI\rfΠ hQ,jBߑ.7n} '2ʓQx!]IZT*E@#j>z<DϷj]UncYA9˶/ /5jQ~ ?*LnfV>iI5¿0fCdㆴ0gi|KkDP$kCB1+#*-&UyÒq{kP ;N!/!`s =8Dd`p=}4G%,NÅYśmɘ_5Ýlbu0rXғ6$fL,=j͝wn%Φ i//agϰ/R%N-`:)Iw[plo^I #E'y(Ln1{m/qNJSFʩƫmZhZ: e=$uIN^OQPȉz@2xn:ܧ_x_!G\Ĩ^fyh3ڭS|O싐%#ٸ8mo,3&ւwxY#.lj>5 gY#izp?o6P%Z Hº̨4o2 ԟ`vU *x.QlMOU?D3[Sh^_2@QۇOedwB(}l (lɶ[kUa1t#\W2@; ^'X͎&n+v;'<%B嚹.74t$ Ы[u%Ua\ׄ '{67Y'=ݺLюņmъw3$MOK=M؈P-$Uhs(1vd&uvֈ>xCӦl1;0cM[3xsPc߮bgUjqgq^E]98nl,+8DZֳncJqLkm*Z:PĴx _Uٱ%')֮bZ265;q_,<ۢ `f}/8&퀀E 5JrzҪt -9 !y:qreIFΛl 8qy8* I,+5MΈ`O@k7bUZp?{(`aܣ|aFNSsrg*e2\jѧV|f ")@Y:yq6s hKyyڰn%8I0`#/ã0,ɿF kݬЅׇE^rGX5"3jE= k>eQE $ZOJk ~H&\WjM1jЄmoG\zc I5q:Ow(u~\>wY>2` kk7[@~((( ?sJ-@S9IZJ\?j9e1+Sw?}N*+WpY^!Vϋ9}>n`봽 !Ϩ|I,d(b[(Md>'N$.oT.qZj#hZz:{/~ )h9D8pr ~VB:W aɳ7 )sWE y=[UMJR *Ua?|Ms,cq6w\=f]J<ѺۘsM%dLN^a/S3OYW.UEF)qd 4c$s EYUFtiSG0VዘYyܬ¶ ;\j:jOaaF=+3x  7g+פy>rbwY<^R'9y&+/[1b EzY~"s!Z:@@!t4F1 D,:ɦ)r@j]ɒ2U+v*ɑk)~xfeFO|9+IJC/ WMe;mD%,kJ T{sP7:JqkxWgwv$V˩ )Nw{s}]@]<^la4 R=ē·xE}GjWL7@ ~8ݿ ߝxo'z??|U# /TX*H@_j?6#W~,0|q&e@CiK91㇡?3H!$wI+[5j'nFt;p7$\@CdݪDu4J.ѫk@XSVFv{CWe_3MN@-c[w)z~\Rrwf!cM(>UoSZbOӛOL; ٓI lj-J3;OpedZg= /aCZ}eXҝEru&@j+{9Q,~O>nrY~DZYr鋻).wXnD՗f#E6k+N0&c jc=w pXλ_D\jL/zFĞ*s+w?@Ns|S=l6 b,<3Nbw1!gS=F}kZ߻_5lh,Z9c7:6ۤe,c X2 7Z~92C0XSha;W] s߻zCcE>5_CC>0lߩј/AuP=d׀ȸ9Qց^]un 16NJ9=B1Vv:2 W쐡v7m{${Kdե4zt" VTJNߗ{ Ӷ{+kLWjk\X41NDb|臆61D^Xŕ[OYht2.K\LsIB( s<* bVX!L\N:H d ={`qyru~$\rW?YhYrDnW$U#?9m<Zq A4&X{UN֜pX!g6"Y {PPqTTŅ-H5 Yė*4:i$V gn<:2jز@C-- A苬pLVQlX 3 DlPMumߓPn>{#]^uިȳ.S3Vx\> rh~њB)],{VK69 ^ZA l-38> Q@pW=oX}c*l˙?*r;W;W 2Jc΅6WY3//\A&;l'HZf&}JW\(óI ^MA 97E€LYb}&t>jn  x2ڢ(D!ͮb˨֊IG1I[ԌѧN7c$f(![ $;dC*E()./r`"eJ+@AxpʉmO]! ,Ǚ}4)5CÃ3^Jls7i\;I5!hj76Cl$?D^>\[LEAZDy^ơ8݊8V( km2i莊Bs\kwR6`TAx4"7Tmmv0\ *%72ܱc#m@Kigp6Q<]Q)) ȅ2eLG8LKMB>N3%-[=&zsOG1 0Ԉ',4 W~G__dD< #tnI {U=q(OTr!}|= 1JWxY,clA3zeA'20uiLSpCˀph}7"2(vSZ&~ ?ˊ˔1B_!r-WZJ]и{ \gpvm&3;Hr"yF(_œ-B~##,T$&pq΃Ъ xO@V7ԞWkN$@Ur]z=k$GGCDv \Wߵ4:/r  *zY,'WcÎ >im/#8*'1OF љ0 eBL_U$oţ!;p= hf8'ӠZZD3kj2kVtgiR#4/(ϕ*!ťWE|ċ }lZU>)kC/."T7fab>wf{WOR'Ƥد#T,mz5w9jU EbюP/*-9Yqz*N[⹲EljQz~]%d%V7Otώ<Ζ]fBXSC8^!&?chV\UVd䈂 ('ē9Mٴ.x -z;^9 顭DG< [фpJs\YfnLDEfLx= ϗM_5Dvµ[Dm 5UU<ISc9(:ԠfKJ_9k步{J4 zXH6`-ymmwH[/2CJ cnKU3>'4A`K}Ckf8ї:GaKaqOl8ԥPA7zHv9Wu,Cy 7bY_6]HxuQ}>H|.&<, ]vdrЃ0sԓ߸,O)=J% ы9nP)ܓPi? o%B.xsL"ho1Ȑg7iڎ2E|VT܌ԟh,Z3htËd?ܰ[d6Zt%f|Qڝ BxitBULJF@D\_~v1Mf:v`&Sr4xo_ o;reLi]3}b2cHl*O /ߋ۞IeC.(Tb7 |'N'aXdwFWer>U0ڦV DQ J :'ab&Jmde}޴F /) zlI$L th i7N`R8CbVt}@? v>U4'r 58Hy5bAdQ{ehf~V5Ta)ǂX_*j?2CҪSuZ#|мb&!ͤ&H&wvtNN E'[8,4Ao6M?]~NA+s="kiDhѺV]BuqĊL<l|[g8Y_H4z@x{#@ކN3,PVPTJʎ/{yX/M4 Ix7îr3D1] iz U{nlnړ&»rƄһl(4rb`S`AbU-< jh{E$EA207qGAgֻM DFLlrA>s\p /cجksGyF,Xf=7HE5!m2E #WPw;12Q>3+؁r%Va4~Kgr1>I=nϺ( ڄZf vF. *Ж\ld'> U jĸI pᮔ81KNE&-Fe6%zd_ CjJzz3DJ GmK?jQUMJYs^I/6^OA@Lb/,/ U4'Io$_q78/ae&Vb./:|s,)/ v*L*L$ʇl 7.d [RpFg»WC~ᮀLU{"a#6bDXKp+! ȃdWgJ$g1AmMnCPJԷfr왣Fh:˴NzR?L@$F'.3j%u*\* E1nn\Q2%7gPXaY׾|pr5σs^⥍diÈg$i5Ɩ2AEKC"[&}'V̈́DV9&g,/E_&.z[~*X\_cj ك\:JBkz{]@Q‹ҭ4%Sq</ ^HmxA:yˡ2= ϲy2d _D% #S5"?<Ȯd"1U _l>e ̈~Ģ2O*T mN`b8=rX% qm/wj=7HڰX9t=-~|96ҋFJi4ߪ/eDPr'$N@ܤ(vj(?I wЯ@SЇ)xq b.Ţ8]H|fMR#![WAb<:9:w{ܷL$?jsn[%$ ({zZ̟ɣ Y`7QP8-d杝JdLSiVݫ}}Бd_-+8w=õ|9#"`!=<$ξ;zJf=~&*}R%C\̽ፁr>ܞH~zXRX>%7dHX @|*R!ޒ̰c *E̊'UScFsZ[cHn~R'\*aʞF0JM?SfL%|wGhz5ͩh\E){x,G"9-h,XS&2ABN*&Jq(B?6k6Z40Z Ot39]Iu-z0CpVɤ v *V'g3NWoFSb٧.4;_b&f\)MNK5l@t/}HgQ(BJ7 DRH䂬4)?φyh#8bm+[~'6 *r:Il*DL4c.\д{R6H8$:5)9zC[Ɉ,sP+j{&2[X_2s?hdw7$a} +#?֗FìrlMY$8>]8rAX-X d ytheORgcڽ%Tl:E,MHݩQM}R&j1TDM#IP)KoA Ӽ,~gIިO .rF!L8[[SSTsWqC|e$ba[Tc9]K1GZe[V| 6BGPkK`vwZu6|rZA;!ZЎ"Bݫ™I DօPԘtn$n{?Շ4z)#M2*Yn8Ka$u\l swC.k^0-oSw*Wg͔N6Yvļ!gJ5Lxyjw XO ƽ{$ꮕm"Btz*kQRM=e$24;[l~ lGu"rڧz@NoTNM8E*e,E&P{/ r!á,5y1AC5:Ž ŮwE1ssqLN-Cv`E c%}Psm%]rŕ,-ѱJ K O<} \8?XLǞ5 GEb0 nxs'V=ՙ'ERu3.D,wв/5ҽ%L+QoL 2G`b`p+WeNdJvKK##4h%UD4Bۜ}yhRr_9]? 9eGϵxUc-kǸJp74ojĥkDlZ22I},fHFpvY(h=Q|ȜY+f]ǣl>\ja=l ʰ޼@Eh:cd^B(L<}-HEMJ.^?HSYZ* %.$P:;T:C^d_\YfHE͒2R;W h5D.?!*)dU1YFP`WMbZ/Yn$5U~" q|n%!)Їffvi#fd0( Xه KpQS>'U&Gv޴kLX{~9Box&](x2we820PXtT܁k,(ѡonZwb5ѻsue*oIMw/$H~Gu:DKu=P9/{w#Oũڿ MH{""7ý \+9*ř_o&t,6 e/7mo"G[薳:Q} qT{|眹@ED&h C^*^. zєp gyA~/ܼ5~ۀש|uogzuhffsV<:@=Dri\̉'h&_8W3ؕ QoK.fugRmΦ昛g\kм*.1[g\ AIæ@6CBݒy' W0mWqpme&=\ :RRQelyȞm ?T{_:-K>M.syiC:fKxJs ÚRO@x4?漪1[nSsTr:xʟ[x/Wg'ܠ-.@зam ʙɺHͲ,O$*, w*+J+PUW/aKSZW4߂[r H:skB'lZ!ws)&s+>-K#nGZ }usm5k2^Y4lB:c=g3)|@}q!䬢eH-U x4dSaޘMoe{ йGѻHcHt3V2Mn=DPоS.uK(K@  z,NG\A#%/)b`};7ݙ5$&t ߣ YubO>[ * t>v!+64@+_"C:X3ҒAU1nF7;Attaq7ɝ"X<VH_)<*NQJ(ZO+d># G"2n"ag\2w2ڄ$ifT:u;qrm R:3a}]0D^`{-)E*|FvAE48N!< ɩO]~ /? #L]vē+Î< $}q (M|{ahvT1%[(kD@laP-2׈O:]"rda=‹Gǂt_]"@| r/zWA_-GJM2nCȮ o [652;f%Aq~UwH6Z^,Xr|34Vӌ*EqY~:!1#DUzXЉN|D,Ԃu~]ew<}n[wd|gE 8!P#zGwn%l&X\uWGrzO{ؼS(tÆr\r f %8;jmbs(n8(DK| DdpqaU',qd|$Zy>ר7 38[$@5 ̮;ߋrhҟާ3I+M'~X kz$5`RV~vG@tSH{hU{ ?!lSLjpqDbC^b(.F㌊,cxlk<$FPMC7gk@l8эfK_›& N6@oeQzg=[ fS :;?^y2UfPXp2hTJ1r˘a~ <"G 0PWC&z$y"Qš\fπɠ^WM3 z1 DP*g=Me8$IlXKX5͇sdpr4*k7&hlQV}-͏]j2scyKWc P?MargĿ a$~Rk F?D" Ac=%` ѥ p!QFR;MX4g4%>KK'iWK㳾_-ަʉH]%1@G^HӀ<ubK'4W)Od$ݘzaQ~x`DPy,kǬv-WsrQ@N_ +qrݶ\Nޑ.Y.V_}֒^umUB \\ `!*=I{N<\ި)t$)<=i'-A 7tRuQi~+֤HYNT%R ,BwNqu/ @PNA-&ĬeV &he٦G`+_ _:doVNRx+$!$o{ZCEh8,*cx zH 5R#$WuI%S8vJ13VѶ53q28 {"}ܜSȪ!;\ Ϟ{d]y1'xJ/2KAGB4rax.caj=@o1XFJĞԏ?w!gGnZj~Byhwգ>2:pzke4Dͱ*I-~Z&4?|"}:X~guVSrX 0=(QFs[(^ qCI{9ZF$.}K# nd.{5 l}:;[I6a@EG? Q 瞞pt~'N^U=uYP#GܖCc(9dr8-CZX/@3` 9CuAi<6g#𗱍Hx6Ŷo9ݞ_kvS&T>\zfL !e1lZDy݀Z<a |HEL)׋w[z+#o}[< 9n^q#fS-[o{W2Q:2+,`x^AZfW%,Vsf(S3쥥U2S1Z{y@D䢇*yTJ5+4<Xƿ"wС!p9i btXU}ߟ8MvEx jv[v(k&4Maa퀴_3!0-^SO[ԭ E}#%liǽP8RzeiPS\?#tV5|0[1V c(ƱU>ߚґ,R C#QŮJEܒ5^Lq P-XapD>J^ r߀A)@ DGYk!v@1>ǢO325iMk ʆ'7j]~E;tOߖ˹Ԝ˳M0~Res]->U(Ag\WlhMYdLUew!R)q|H&BԄĐ&aۂN(3їnn Rޑ)94!$ q/ki>)'#mfKJOKoVba/}<(Evyo1 =uVޣ!^cm,_dxWmV-0𭥯z~WƱ 8,]Daf}rXٲl(؅ʐLcLֵٙi,2JN~ǀŮ2lR.n;K(QSv13-Yk._5#'NR#O*msU u"%ׇ2EqUpD@}/!=mzG!eXJ}=oM:@\$89$7I?VCs2'ꟜqJ^BgDwBrP|6*,(ۅ?bY;eP&upc: uƂ-cIiJK |rfqslLZncRt `R]]yJW!6З_n1~e m[ j0}}X~v#&c=+6NYzz/$\|q.忇Hц H<#$5r zS&:赚%rBuMegntSO D1+ h\ILð|ڃ {oCcHEg:E7KD֊/HZK~3lMr4[Hޢ:A{@hXRJpb& `]x:V4,o\C̋xU (ji žia/|}F\=nH4~(~fŐᴤmeݐtBj<==D95G8D>I #Q괃\b(r@LmD=ђ OLQoĀ _>8.FA|pIB3s|jvB j[I/+r>^j!#2|A蜾l'o5k_Kot +8Pjyt֘k𤍋m+Q|@8 m5kO\lV% f/V8Aނ,FUnd#s |?GbVowMA琞F+ynHq@Edfm\&&i~>Пp u: 8Iƶ0?RLbR'o/\pI&)Rϭ14ٍ%'.mҤ]AbS7KS8LYMƹe4)xF/ LuX[ ,q ֹȥvM-O*J&kyy%ԯU+fAkwVlL$בKTӀ"Imd )f#gpaHh0h Sed߱A)R-$U#ވE"_Ք-!uzכc߁lk >n?:u^޺_7C_ծ#gSx_ 41'+]ܯ$`rvGL7-9m:uVar 6L(|G:ڳ@OKIhAZA,:55!>e;ALVxA^\aPČ<8װ~* XS9_"(ڞ>]GsyOo b^k_ܫ̯P`ߖ\{bR[Q܌;w5dD['.",,y_~e)}k-sb9[&-_OUEo&a%-e8a$VUQmJ\L5zdlXEZ= |-zgd7zt1%q;j; ^jc92=8&N*U:rn\pS:Vd] ܋O9At# DK' %ښ½'󠨬̽4YCX[ZLe}r⋹my@Hc͎Mz8n<:*-lҗ!*4^|9"F{s-;|8|+TL:w#HɪE$7Q˰6ikV}7@Pcxmpd{G xe7o{磭=a?HDj'>'ߌN uf!~pcs"@fY,䛚L?+/t7[J)3T%ui]3h .vs? _#]uXg ߲lLFx)[Fn!蟏 @lɟ`a.kH-?ThVF\ *!p8b;$]ӞC\F0G_[ޛhEk@X@Z2O66IҐ!\? MLeE07<\&SC\MɫCR[pZw?!T%x~t%^Ha oٞ]pEa2[x5%89R>Mj aD$%M/@A*L6R]QG0WL6>n6zةbWyevkH?ס<$1 hxmɰD+h/}4dz|}䘑l[;8VՃf\kUMQ~"ݭA;>HO#-nmrkW `zUtrs:4| 4vHg F8!8(L;n_2)Q<lHܯ+zK Ox?F!/G=_63\fl5gs2XTlE(Sp~^`#v*x( Z d}}4Mܲ:V&Q~v],lI U|N{Gc83~(}ZUQoۅ>o`X*9 2Шӂ|ڽ9)3P qe91VobDk L͑oGEN`v KN>>^Vm?;7:k:ϳX諓I_)`XLРĒ\IA *4-Niam f4R\ iPM2|da'Ɏ^js%J~ S*K&7-&%$ASgON:zvCh|$]C_UΪ#P<4CjAPO`5_ܞ.)bT.HҌHYC5d)cQxNn:r5b]F PUm $n&  0M%߼NK?]u| *oI9[^ZJ $)OuI^١Y@qSjuJ "S稸z†Qm;Z'Ȁ)46wJ(&'E[K֓RdjQh\9C)K .'N$P>CE .mXz Bf|T۩`ov8JOa R8I걀pC}H1}H7Cҭ̴|Z'90tYY)`1,O0w#rw0-&b5U݋xѾLY:W-aNJ '8NkZ ]LP3=~R?b9I|etw)G,*M0`^b7BUuH|(K;)˽PKy囌 K?3ns|uq+$)S}'o)I!xY {xZ[VUU벃x4T-v #ޠgJ"u2ˉ4MA k`'@3g*¸ha'5C-BnhH+Dut#%R\֪(x֜cBuP÷]DaiYH 5D7({e]sDOQٳ }R"xFj@ (ëK[l堝L rU,vՋ e|aʞ1Oz٤D6jڱ࿒i Rc'7d밧SѧKiUЕ˪ФF+8};"g!Yai\ a EWql(cfTmYաIȡ"` >w, n:ì|,<`њjr =ɀHʔVe/>%N!fɰեr C gpE7-r&2eﳡ_$^a-@EPO?>?4 7XbCU7?57K. !ƃ<YN>8ZpP0(5q^o%pcvMk*$D#Gi)h_>t@oxZl"ݼz`K<0 ?~2/ "¥BF&z׳出 8Ӽk{vpV͠YrK}DRvB]BȬG>2ȧk^ۣCL\yE/F~\e^b1ͻ}B7da o? ¦E}kyڙs`k-x8 bYꫠbb|443YXlkx߄6{0zen pZ\;'&4$Xc6@ސQ:4 z-9&$MIYSFR%ᠺ>$JZׁA u ާ?<[hĩKuQt5hwb E҆sf]-uvӻ;Hi.<%鸈кFT= `Ҩ'PI8593:?+%y=vюvf}z!S㣞|.B\  I6؋( J S4X%d[7ո]ory?4v,=D ~G7#m< O(>0>xz)O_0 %&)З a].A~ֹZ  Fo[5.m]$ҦN/*!r2!ɯPpWN^3Uϻ[b93C@ʆ<5({) )k4O6!flKDKgs!Tٍ ]4_Ãi{"֛2l*á04TDZϥ_%BwXX?&ӭBO<׃# ^V2\/6%1Nyu!T(m3aӭp)\a%4"R1L7S&CwT)a7iBOkbNq ) '&Dakx?|C2R$X8X"GX:jIkl]P`p+m6SWO;DZ-U^ԂkKXXIHّzafRm`.qQ.#:O;B@WkW{(2#|](}D&M& כ;ůXn|Lat:!k0mBgV 0z()9հ1Y5!OIs(02dy_щO~i<<ϗx$'Q*+DEGPWgP XPVڔ3ᯁyqm xmKeвLMIY|ζ~,t"e8gלL.8OϧǑY9Uҁg*~/wx-zve2,]rk;@ה,B\fnW/Wؕ='ąR $w8ި\1c͉\}ۋZmqOɻ3ӚmQJK*bL,7Z)q5'0׮(C==uR}%8Z`3+X3A^ h3?v.B<1?G6SYQk 9bLɡȊ&C(=n1 6Ƃg.\J\B\:z|ULG~ՠQzI;c0`UK8*zٙ{|Ymy^-es8qik$vgFdu8.}UJ [&;e'62Zq!F,aV{^b t_dO%`M~S]&;(ЌdZ[Ʈ#aq\>.74nN_,֖޴@gwoV< TtZ롘T>}1QUJVΊ#ÿ)Cub?hL@}~s:!e Hʏ1y'1J#Bh@mZ "&I4 *YD06}iuZViRM.fgs25o5N-0kЌ<]!'R𪃇DJ]G7b$hA;'D0ޙ '&%ZWiOw ΐ+GncۡEʔbJmMQ~)Nl2)'j9u/A}8RE;Ýͼ4;ZȡVw cчB@Q:%V<;4IPc5262^W4T$,f?~6KٵzDQDnxH\υJ;ʜ&I֑Ըn4bG"?ߛ^w{ :MdIsn[*-qNB*5v2~s+NQ]'p~vݤE4qVI\j1ZEm0#lf70l6Sdho/>*`\묣xFK?"{ȅCd @W$\촿ҕB:g^┒onG@7F01!]/M(sj\F?J[CT1|4F˒,_ϣ(!^{{_l`>a#6ֺc[K(.$*+H?5 Ph~53V#0ڄ5%,C\!̽?%?YS+lr@oj{5+zvJ xz 2Pu-^!_ퟄ-# ¢+ R2B*MM.2}0$缙׀ x*zGF৪m: Y-z &όbYL$#TV9ìsYVyD0a` Yu;ؾ¼\Wܙ3C<b1c ?M( yd2Ss=6H^Wľ#kSLN9\P'8c<#R&6`O:ve OedA  jS!{0.!]BaF&(g s}ɍ\O"I7@Wy[ - 2X%Akɩ drM yQB^x"鋐'>;ߍ[ T#4Evh:ӐɇϢ'p# %vMSmɂXђyUqWQ+R,Dh,*|~QX>!]1DQ ?)8 {?Wͼ_s~F(LJF 'f#*Kw41 ,)I_iLI|_F@:TGY{uR-ؙYA) chlHvDihƬ2*33 ,V/@֭ɰceְj܃똺wĹfH op1^>̆,vw>' ay qO 1V }‘ omJD{Y;g{}e)k]]h%]dg҉gc_{"w;6ml@ Y/d)Ceb/ޑhE;w䭆X=^N}"L7Szw'FepS)]&;ndOSyPd&h!/d=o׮J!ˀŃNУ\Xn X,-F([qPs`\s<yQI=#Xh* +wDa,zgs5M'|͜O\cF> ut-L ~&ۍė"p\֚8 MwM imPGuSgUvAjez؉3k}@i=E5*kdfuL#h>పm? >VG{뷨aS)yz%bajءĠYcoZPd.CCP2~w18G)C٭>:LxLi+LO~3WˀbP*g0yî٤â*%<2 gxB[`4eGC< M5u<TjLCC DAy-C+%AJL+ uUYৡ_<3_Tf䦖#(]ˇt *V [Y*P]ƒqۯ,jO_b'+(tOA%I>7h4l5ʀ$ybS30IP3m҈ަ[g0WB*\6'9zZsMGqR2Oc.&z*:AF%.b*d,f fEX[j.N\o}Uur::gr8yY˽-SPJ`{z!Xd@H jzЧ]s~塭̶뮿DuS|m#xzjHef;^m"zV ngѹ$2Å;nFrov@{kn pTwHZ䨓arPεHmT*zVC9!73 &Imh#.65A&7c]3UR#(p@7ص(\Cq[zefZtQd1YYZ EJÓ%:M,ogj+ j[oɱT9J]?_KQ|FEy:5 ]Z4IT>_-@hm[9uT'|-XD NJR׌<Wn&A2t5[n bKjDJ7cҬ/ !p.eykԋƣħ8 ulT (4UTo{C((&V_7= `303R],;uXZPXø׍sLH[ h(r GL;B*`xirx39˛H:LoN(to VxqeSƨh: ]?ۥd5cE 7ݵD^?&)@Kr+vOU=[[  7ZRVA)_̘g/39Rb?ٹ)]`h#Ik"/WjAoTpiXfD%{jtȗ1S'˥HՕ'"$]ؤr[vGϹH.? dp5o %"QH9vٝϫD`b!|Q7cO7GR8Ni$>{{:k,$.@$>B8Vna)"@]c7-j8+VЛ[#x/M$lqб)^Dfod?wC.OM qɹ0R~g%8 }; ;/t()Wآ >JKy"x |Ƶ1xy@sRÈ0[Wl+ǯV^əq<(ڬ<,͵-NsSPƑ( CpAJq}aNwlA%r?`>#z>%YuA]ڈCcGg0bJV'j]GqfMLբqvykݏfvBG=Sƽ|̿6H'\-} :jFLb{;yVnSDm?(vFA*h%OXE *N~gZXGVtŠ(d+H 59jIΦ(@!v3)PKF -O;;%o+YTgHZ&XU($JGs@Jkbyfa9"8͙s7lqlY̪WQO#lCK:m= HxTGd[Jl J\%L{ٜi|:%ߕ7û B52hQTNɰ $Pù=I!ODT#>vfQi Qx? 79K\K\s,Q^$V6:_`(8Ъ4S p'Q{gpHɭRYU;ȹr"ߍCgfir yWX''C'RUhEY:򹉕;J!AZ@K_r-la+ iiR\K\EniX6bmE;urUQp kR?֨|gaXi`Ssc}cQۄ\)s7>wÍ"fTX=?T ze\($\0+S(uJ*Ra;nؠXEXRf>KnuifT9_wKAzs(ybLn/(5RS׋Ml9 !94W DPD;vYɌk``boQG֞pxYF*9ў{S ߲2jV=G#8lUt Z ՠQ\qdž:j%JD}r5{R.c2sP4*1~c"c/¤:hO%'߃#*k}p^OMX|<`3C%4l)QpSTE)h=Il ÞXy' teFlĦo:T|NLOi%8V ׫܃'}qivH>r:Ն5\BPL"ְRnFNFBw̸@ʀR [k"4+gdX nkX#G?:)6qF܎37z{vEZ,v>4$;MFPUU48XH'E&)|bS5SUpOV9""0mC۶x턑hF.7|h9Uq5n[fGvXJʲz.eOL$AIJSX!~ᦛ):4#[#V?6C,?E)xxa:O':Ϥ7N. "S*fȒ8&ke0b႞a&E':c(M ,yr2,KXкQGv(SH7s4qnE%WȥѽguR1s6@{v.QŊ̏wDsd^e3COncI+:4 ܼ]b7US]BHB DS}CG",^M"hz?ZB()]~CO+*ՅGoiuC%ݗ^䠬_k4ӋBJwϜ$$sw\CWػRcٴ٦= A]`K;Q:|W'u>$\=9q.I~wVl;̸Oءľl\`.V*_އ|Ն$4J ?f1fEE38?c@DP4ckoTs MtgN|~LxX0Rd.[9n>طzK hkaI/xoX/!fe'vf>PS378Gow{i *Wp r|.3Bej<$h%OHGK:yȡ6q_?Bim FJci{쌪L"`o澧/]ےwi{~ۜ.c6S 3fZW]8p rYdfP# [&E'MnA}//UVՆ;1tPH۫U{akO3tܹ $t{gTJ|&ZEtTHiUU9 LNAT>ĐQ4Ȭ:CASS ]Y[agM:KvA q~w,c~k/ D( mJն3g l(|Rw]e[ Vwb!*ѬťmJez6M))&0ZAq{7 sEϋjYkݔb!{SVI}m=D1j|CUDkzgF!̋J&sV^CUD/E$EEU&{/&hB5_vxcP7"'G 'x.K7ߛr)<6J93~ NRnn@>k !W.֠ 39| ї]2sV3ݓ|fߧ+7g>R0Īo+w :mBtلlv(i")̱p^v^fkת,~s2:"%w )dƒRgNẎB LqwZ?A2C} M=/ؿ if**=FoMGz]&$ﳗ(_)hmrĽ LQ>JaSU^!@pq6_Y:lUc?O4P7Y뽷4u!~Wg.M};Mс%A=0۝Jmb`}ljEE0ѹ*oƑ~NGu)?}};Uu~ ]!8]-Y}U?`K(.:`gkF"`>{NWP.`vtQ8+͡edB دӤ"Y2ņoPʄpp:fa J@7ٖUB|LSG{sgIᔝ.?䳻`򀰍p%%OeFqY8Ux:ÛcYolB.93Wx\M5-.&엿}N5 D1F{T~ȃbdwu; `{ ;tDzHb*Քy1^aM*X\9y`D qe/7ݵh,ζpE&dx]QMՠ5U霂aAKN AsI0Go?|lM*8ZL""7EBBE7;er  )GVA|F7 JmuT]8.$E  #"쭷E*[+,)pZKܸ3 .FdiiG2_})=xCai |^d=(sS"4+|j]XON%!Ͽ8n!7S'g;^I(l|Q38 ' 0И:xP$W1Obp-s&Ɯs.cO-ѩ,0NH0r @3T/8qQ;s'nA/gKj[zb/+8}!Tiw,LnZ#"v~lMBEj\k ~I&$У#bcZ(V[Bm`>ivO]l иb枋-$ E,IPp$}Ӻ4AaA 8`w۩WIzs{~KPi[qau,%|< ~ Lz}B0a 3* ]2)Geak_Ϟ}ԾJC\.Ff!͸))@&~xjo^&-bkic/9χ D X}gxJ 6RaE!gHIQJ&w6Tj~1>Mj&E`*\eȷQ:s2Zp?XfOCZJ~c鵹ea߃MViHg9\B=E/vtOuw)`#88l&{opޱqVo6F.c:1Y뜽l]@4<MKHp=\hyX,WyQq&xq[3$D᜼ӾБՎ+ <=G-*]TC# Tp7a[rNs[giޓ=$mϑ~K(a4">$_#O)l"@ag/:-߲ӯNCʨO:dH٬p&ZAlHV\VK5eM Fa| D36\̽ILmҦRo+o+ !S=FΨH A[{0(qrpiMKTs3h •dOյK\ 4Z3bLI\_ 3a њc<6rWT㳀,mN,:øe:[hWg[?1iJ Y}~,Fuwlג׷sfAF_9J<;R!<$PeUM}d΄'*u:OV58oEIe| ^m;ϰu)K?g;m3)īBfV fCbɰ=faMG!^vSsm2.CL5 v3ڤgxo #sRqPL};t~:^\?T=x"h'%y_2mLAſ|l [e|*9n6 a~3 s{e޸)<1ʤiRjvV^%>Ūo- [BpsPT hؗԳQ4 i5$7;+2\ [zVqy7Z`Ä9uZ=Oԛћ TN/X[ e_i%n>iZlcUwKo~w*L Vx) #f"qC%n]_AG3uD㎈t!1)|TB"`5C3gzyFR}cvQޞ; 9]; l #|xʔZ:OƟCƱZs:s|+Ɗ#@?n7ٍq6ۇnt Bu(< 13>|&yFѸ:jEډ"$3\*ġLxfFW϶i mڼ#r>j&7 fVlGhh>;yHF=sV"yvř]'kVrSMvzwd6XvEҗz2g ០!hÂ{'pngӇ]D[skWr\H3 [qQK8hS'T4b,N6~iwbAػt籦tU:csJ\v˒Ezg,\n'b }3YW*IR +G:Oui#gFFvgBJpW&v eoY5ItvLa$lhAmFѮ'U7c!ꉻFLBՀALOp'+KU%ZwioE(P *jG ^bȯu^1_O:`Ͱ&uf>$(;C"׻8Gnx3%%-})^/0"r}Rvr`{yM{o ^kzӕza j:':lZpb'3f-G6<4H%{,Nϝȉğ|2S2jl|T>uyc'ɑw '⽩# K@E`;Yx^?,jMh 5G /hD4=OygI{FR$֟ڣE{Rq}9m6;[Bzcy}:ǧ.f<'R?&v8W>'X&Fil`FX&ΰpjzfBWNB<5s5ReL$$.\<5~ Ts%F&H9 ;DB* XŻqG`;*}[plv|Tf‡_˳T=EE/b{Ֆ]w/ۗaQƙuLBlM=ڽ]n P&.f JFperuStn$u$^#%WѺQzU-s/-!!Wr1/!©[)6!YQzL?I ?-X(eg-V1IJv sp$Rp-?h" {pi=BV6_rKdVq9YC l?\&=7@C VBEW,~/G噓=*BQTEٙpi @7 4):"?:ч4?:Hr6MYOȪLeϲ=Ԃ'jw<ّUnմ^zo+(ґi(q2q1j̆q Nau9cIn @~"VtYƑz"GYՀOSm6U7+L[ŮE-Do`#a>#iXE^Ah2?ݟK:M:?6( {5 E"J18:vjX/{h<Y8M!z~]a†IM^=һ}dxNw'R'}Z(}MM&yװSsc \zIG1&{=5B^3=T-фo`AgbʇѸj&8VkeFCaF\ &;tTD`&e1vv3j6FSl#-{]]IG.ԄԵWYpL-jx#uRIMNIsA^T$ 9/UmfkAC,,jkU<TC [9~x<ڪRWB|ȸ :-]G=cOiWi~({py57-ۂ71b\; .goHbA c6[f)ΈqH~ڋۓ TQLҗz' e"VQBK1n l?T 2 S_zGP8dP6ͼf5VBJ>Uu;Q`얰Lbk]zS*? {7+q m/|V?0r܈p͛4)b Ls#C{'W`Pf!LjYhD9BW jOʵo=->$񴔻%_Y(FnL,` TpLrM,`N0jPԂtkW0q%Eݷ >vQ{u +Ze!=_ezRgτԟG31EРGWPh:^zy#|OCsu)R#0q=8IC{8逢axo!`9D"hAjףV8~o@+gv,ZDhp>WRY+C`SpkKGnw! x \̛.-5+eMO5gϫ ߜw{-2sz7r!UW LHoXv lH~&Bkɒ%u ;=rNx$s|@azs` *tNJդ\Lݻ"]9#$ S*)3 .ۀ1P,Z(w WOep|*g- X%V3!Dg`=90c] ]\֐J9Kz/9~FqZfRU6A `(f=|u XAC~zYg4dX<" d~u Ndθ=p6!-)okP*B$O'R3NZC9,B'vU{6 {`J,& 1^k]?"K >|F31rj0L[INB8SHr(3/?j\V#j2wI|VqHs FמuYFPj _ܾ,:ɻ9Q՛zIHKO)~*6XVxAUԘ3z2VcM3qÿy̓ %9i)JٞM{rwTQ?#LHTͬmo\Pv h*UgD?i^KjhsAݺQqIƙX^2>Ӛɔwu|$bwrTmy$SwЯ6ėa?VNl ȭ?,%ۺZ z 8!ò s/ !WTZt7UGWE0ezpE|GxzJ4S*e~ Ʀ#q.#&2xF2Oc {09${nR5sx9A@vZI//9[ݙVY\4^yS4nTx@+䈬IGZphλv;CjUb%RklXIE7ya@bţ+"'W,!hKtMA20CW\m†we0N,\В!lG:&6B+rrl\!ۃVUsC톯sbW~b%7J6]9D$=k}VӈZA=[ )߻|S<|=d ,y:wz PL0,ej=fNqU1e/un%}jJ?~K7J,VH`bS8zrns(nQ!FǺnW@3^ӱ3k]%ԉrϣ"M4Rzc1'CYE*e(ӖQQ6 !<9ܴ.Q,%MF@6f&-|,j4e,|T4tٝsd}Y[G+(=CD5;,0iWw{~Losg0#R ]d @(k=(oжH!' O5z:/6&]_lU;o!npF}nY sn{O1=I5}݁×ͬw6"=aGATfBO5*GLp/ٹuewd#e6 NnM1s?3Ug{w$^ 5mvŕVk w$_*キiH ^nd6Y1˟/Ӻ Xn8`M6zrk*bqk>ArB67̨fn CP0Ca(NK@9c@_:q1 )ѼbHVЯC/Sqekk#J2ɲ Y#@"r]1s 4c噾]c+) 5ҠƖG/>8D_! mk4Nf^iT`ۋ)Z: '=ch ov+! T[1+6TD`45 ?WZ_ qe8DD$(,򉥔{B1]{MӼ)SHq~84z.NNZMm]wэNkoj[Cr\zy.L^kV?aǩZ177x$._#plu>ד̓ņ~`|@X ܷ>T+)!^tR ăͣʓ8.]f 8(3ٹjJ&bʌ&%Û"Pa4VE+s,W\%9B0A6,3ƕș>bW4ȞL1u@O&Nz֏M1mbNc-Z#E/7ÆU˅I\=FIC K o׻I^8&pF' gcb,DnWqS!C|pۥqnzז)5S0AYgo7XFb= 0;H^RĖi:)86N)a~>~uŋR'Jnᚴ"Dv> =M#ƥ~&c-;NEsqE ̓+LSe WS5k(i?"*6 m^Xo:Z$]HA&!7E DCHZ#bi zgf?I}1 _ruM',dZǦGwt0a#stӉԀ/Ps)Vч/?^4*|K'\:@[R)vs(?Vj&oij`4v#%tqY8Lɲ_"z/s)Nnږpf- !WX_r" HC7Ĭۻۋ7O-KcY ىHn4z7=Wn8fwhiNvQl h)G92Тƌ;⹩өMd!Y rD"{fX1܄t1BOȈJuG6v^R`<+iȫ3 78O,1JGcbgT pּJoZ  Qlm>`vxSLG&@D)ʓ/dQ'553QVAyiۄ cviX9Ih DzhAu3]⷗+;e-b]Dy|3!=r񻩱GM_|ZqN%jG Lqhut^ e57.̪/1\[jEgI@ ުA6QK$fl5VtAr݁O3T;l~%,\Յ$(7*Btߕq"A0F"MG4!Ér[<\6~̷,Z.?ϻ<.̭VNEaDJj !(P.oΔ4|PjLa X Ah:ŷ{N%W|oʣ%'&%KgQ 1Lũ&c::GX;B3ӱR={ 3RZ$ q|+,x"mG^Dql]ʵ$2p[}KQ^J0U/ 9BdŚzM[~. ce/w8Z^ sXC ~ulwq4>?HJV] TNeFKˉXߴ(u .]Փe@8;-'ME N;hU C$R4"5lFO.?՟n*$Apծ "I*f_쀘N  9A):'K/RSLaDlIk@_7ҕ .!4N0GjR,Lv6h-}^ M lP?GGãWnGg~͹0-Z UQ_k6@cBI9V\ODdI*[}lK4`֗5S/R;в5,K~Y-fPN5{:K4tL8f<13t~2y]џ ]QV,!=F,p;<;WvM8 YL{6)%06{V8{06W䂚)ԩy c#_dɷYH[!Q/:dzpRV'DlA|re\CPgyco| /IA} [e.doKWuj ݚf3J)Xev?SA4?7=4vǹY800[4~,'cJ.ѶI0 ֔E]LŪ̒BeD +nê)GYKJ;M6kCCp焀 a{Xwݶu`ܔT2՛ڧW~ܺmJ(Uv{[myr-ĀgmnoiKlB~6L`˔+#LiFƶ8ٚϲ]M:/~2'set]%VDD-W c^%+󢥸*8il"p#$Yb'W5`?,^F5ي-PkfNd vn?,vK}ߝ33w}TsiOÒ5RfBl##Z2EB7\~RPW+$ߎV="*Ӈ׻hܮS`r0È qF ÒA3V+Aj(e*ZFֈ=L!d{}{GŸ-ɷ?#z9x9 -9aWښ@2lcIfi 0v)ؐDig;Dp&&,E86#ـWE j}Kg{8|h}nxYq5Vw{Ր45?"x`Q{SMhHum4 !vG!P%i_38ηU'}vWsjꪀGx &@S/ž^4io`뿌/QD''{5It;rCˍv?Y1q9e4˼USrU.뼫,)A Y+EW\ٷR7aDW2\#~Z` @=D>KWEF7 yGÙt'SM3[h qy)A\/ز̦3XWs7'%JBm밫(^X)n $R͙7M&xe6ݕ:ujCe/VG_hkHe/apg/ƻŲz[ m=@7RmjR^iס@}H@/:٘SYeEHk#|uBHmyw^Ne; vJ*([5+\4sAepq=_?Es*f4O}*Lx9oI3o +;YPcW<16^x?Soei0ɷ_eg.чqgvRlvvлvܠ&Xl/*H`3Th(Cf#Cz M\ 1m&5hD$\i" P;{<$$oQBfe&%ΑI6P*CC ~j E3։']~}im jkBlz0+t߿碚JZBf QDq!P O-dAb ؔ爱J^8= 8ZO ֮ gdyz7/`.Uݮq_—^=? @)2\^R19T/=<+R +?7 .us'd3=) ;ޟ(0o@P0fwoXCn{ştƽ5۲ :.,Ng:JY1畗 tEx .$%y핊 _zg*y]|łkfZ}TՉl:Voa6gZ$[QC ۝^Wg <- lu=V]~J>+ vJ(o*G;TN;Q+N+ e|w#L0:+̹p,Gr|'Va Mk~ &@ 6- {S3F+h%cSw ## 5y D}6 ^6f!ݚV0AlS7)$ʴB^ J-*iA SߥDŽg&jlrW3EC rGsK}>?UZލІ0 a!C A;,WM @D=h DEP\oQJ+YSc}ʴCI+@$ gx~a0q !v: _Ф_dWPWrRu%{.\X@S&XNėx'Mhp^1!ZV+wi4p?G A&מUsYn>~K$=$m** +Mam^q8/hBaj eAjl n鄊˛)yji[ZcVK!$=|9#"\k?5nrDXQdA24Yl,fWE,ϹA =B^wfya,XHPeE`rIY[ xÝ~u`R{Mt\w: ٟ]o~~%vŰ<ro `gR/&g_clCR( ϫ"ڪ mVgi rd%+i!Aw9cdk37ǝ}zpʎ_ 64Bq3혲[F> ŋC'…A2X4&M'krM[6Kׁ'f9wj qS;ɪ;ynlTJS o\XFà@nkZKZ@q1v Ί+>@1sfnKcD*]*z4U҂z]#Lˈ'=U&- ֖}0? 搾{V;(B($FmoY5vnO X1(]gzyJ[|: @˫c9!4^6M wA'~ů} RD[Ru'0ch+%;EܵzDiзHQ2i҉Psuٓ;Ro\lvZ oRW6BKBض \O:jt6Om<ɼcFȆ{$(O4ԤYu O~szuG‡ }Yn̹v:Iqqk*kPnLUt?Z!B I IGt6 9< iB"gfz> 9ЮE+)61\ Bt=qf)}ɜ$&o*Q5Ⅸ=_5q;c[QC0nTsIό%gNXIweԗU2<Dѓo^P%H$h8W~jIEuP%4 ^;\{Auz~f$ I MrV7ϼ>6סtH6m"[Ns_w6KiVW,a11b1yR6V)e!Tpn"b/1 R7z_᝛"\/8:5whIb_ Q~6B>߱`Qo-xtv(=OSy`mN \"$/WQQDw;UM [kuw+ xA*? "/hz-\q U(1V`s..j5 lpsL5\/J9pet4VqI1r0A`dS%)ij7IE\ wZng2~ -Pnw[W! daEދj+F$p4D:c)1 J(ٍ}cfN=$k6-<3}OvQ=C"w#!pS- B=!A<.Ymc@Tu I[+紝8\˽|u-))#Y!Ő6!x^ A]$3vtZRX'f?ӛ>7VhW sϨ;̙&]->w,x0~Ę]K4KWǫu[?9JĮ,.ۇob% ֒3 !>&v#H<w©ٙZq[c lUP a*6-+ݥȶѬ &[`/Usu1[6M/-ja_0Ba+I3p:w 9bZ)ku U}|DM\D\ By@ ?(t8YBnC:|"N1,o&1}AY8nAԏ:b;{\:}"&Bp%*o 4rIf@}1:CyZw) E-cE'8x}]HSO v/_8P{Pg%Zzg`?M:aU>nTd]4pEl 6Bo]Erg;T"IҮ w7:+|qlzcU^壛+421%rLEI2sDcSf!%Ay ?Rxݺ\ˉIhUeudCXѝJW=QT}kNF߳DcAiS4X s0'J٧}r;vxO&nNns4>U U1ߣ/͛vE`;j73<\kr&Źu5U|$|EZ2u,˚ih$(5d˗HdBwceQR/z5~~NLb(ǜ]N@׻ D $˗.5uqȕ䂽A,JF\%vBV8<ǯqXm%HBTrc@{G)(t؂N~SKۍn0-r)7įaX^JC'ea=1̼Ʋwh/A=PWm#".ėƫ~sh}j ,*sȽib֘Sxq&a/+u( &Ad r;^Xv\( ϣ :J) 6>*C&U>#wwփum{A5EkLAѺ%'2ᾙF~/w|3jܯ 7]q ? ?CWo!I>I GЌ]w@b*I = k qL90h]POr "بs%7k\mkeۮU4: Ɣ IK$lN*1Uw IlPQɦݯ'mcT"tqK&+$qCyqoaG6FA3?c.>ϑ)u/iF9t?[1勲n&xDdBgАӳ8i3(W@i?`)vV|e:Y*Nڠ9`0gj׺d  Pcan6y\`M@eT >eʨ.XOw`аD}ח vʚK[<ظ BAчiR]=)dO-{W?Z P ?L%%qٻ -aK6 &9{Ru!9{u˖]i0|5odlA@m~M*MK$O[uuGϜll|_9׏"=mvu亾=+U%3%hט`ijQeZkt {\S7w[~Ҟ&%W fD>uWxsߪ 'g-rC<=MsIR_{PL5Χ x2RJ=vIEu-.Ҽ\fXǿ sޔ6 F`ybMPA[n8`{ p^QwuC^꾵C b闊2QSA:Vi:' "g&c+Ob_m(ӝq'-+Z~jtχg5{.EoBAy8K&Vs_/o-S > KHT]M ` KMڞپrtD6zDz)OcU/knEP5*J( -fq*LI\bv[&">XxMsި1[IKŏA^G G w~ IKi L;$|'S7{RݩT՘GkfzZ瘃2;#,0Jϑ' $ţ `g׷w;2`vw mzt2<45u(/߿QwivD" 6>nL⶧j-Nj [?0W}wqi}>K-=$=q̠&A'ňOu1hcrSjO2Qչ(aN2n(7gʣ9L:a"'=֤>A!BX+)C|C h#g!휧U3 ṣ€ A[ka{r;~$<뿐vGY'Ώd]R,üJ8KӯuiJkVFX-nc,Hki8UKekS(Ͼ9F*N1"LAtjQ&yx"3e0jw߲0`4d~se^1X?s:pT;|i QC"rϋtDx&JQ ]rEekXx `i/ι96KAl vqۨ6pdq 'I 2/e|<-`YsuJD NgSf0wgw:NyĘfuWO_ R*fo9"Z(> 'gr*f9IF.Cx2fKm&pkp+hv-sF.<p3z}칤Q,!'ҵjU!=ȝPgzPfƭO(Oʑ,xv&&WY4xPȇ Vq]\bB?sZ`t]B*DSee_.)sYn)VCYw6T߼AVM쪸>YIvP_i4mj:tDש?q- O h&a]D_G\ a̜͢bلr;L#[-^7`ٰvi+NwQP-_ue f5о8Um"LY,MyJqt-&ۂt(Vw7Cg0ҙ [9‹_~H :Pm ")%v>eONG=@GNc3ϯwn,§3C0Loj9S$+^iT$ YgIdɹc(fZ AP&#O0y^}3VLS82Nh?dwv=r;`Axg3ڼ?%nesL7b~B&fGLG4H y_%зܶy;~AW҂"ܚYS& ,^晽yV\95c{kʼn鯲3 |Heԯ3:-j,Є߾*Y <RY+y&G?OSo[ؙjv@A{"U2}*+>K r]\XJRE9Z=xfc<\#VΐM VƂt> F @OeUh ӹ;;Q:֏j`( G-ܘH##}޶Z]VQcHjqǟ%{ ?v{EZna?@Er[C}:;7^{مGEVJ ە*r Zk88)hYp˷8j0"N,8Y.zb j)}ME#!䧜G NxA#9cA>j0z=%@DqB.E kGM,\Bjƪo l<"70uM?3 CJr%ۋZvjPVͩpj^-6LYM 5%bVtIF5#'G`!/(_].>0viMyf|g;S:H9΀  KJ>Q6|YjYS;R{rgT}~8bֺ-K@6(٬K 5"cxI?4~;㙓'I঩W{p!3>E>ƹS+ 6oBp:=ޣ0t,C PM'ocIk)a_ye}iǕa!pXVG!ėLqE:<xL $(H7%@B"e\oBKI["6Vx'޼]WĒk,bS(.~(Hw]^Ai^p~6 !$,T Td2y% YW_>6lhp[g{+rjd!ҕM4l 9|(%GpXG&xjHsVIvT6872y*V=ad&9/{ @Y 4noS]׹6[].xe3h'obdZkفmDn[se4YgtP`QʏTj1gȑgXPx @tw~~O9{8/*vi(칋4[Ea K&UL6}6E|ꕣ qa!0~-$L cg;h"Ĩ>e/%-7dX}|٬CH(mT;UL2g ǗV، v6 JGB+&F%bī 44nr;06q*]{a*p;ˡ` 9O26'CNPO?-@ؗ~'1v >,AϘ.5mKG`pV64ndU! 1%[@86t5(6B>uKZ迴,7Pf1 ,&-P$' uH^%Bë4 Έ8׉;@BWX5kH`֡i)Wr@'͑=:[#FYqv rER%^(fmx %vH ꥝P`B"C@)LāYu=Q  #@r5Eq:;nΟ⨜$ \³4746k"ג?%٠ ~e:_N'a0׵7$89^!_dmb9Y"RjWKصJGرsd!lKI`Icdio)@7Xƍc^+2&fbDȦ">!:)yD7U(u4hd0u)UD?eZ9ʸo4 !BA%ZDur-F7VD'7[?&DءHa6*QH= Z@OCݧyOPJ7/?g.7۽EU`["6ͬ/ ;}.s!S^76 A&̂\V Q#ȗ)-$dg3n ikyIۣ?乒f!~ѕs(~\lJW%>I/,rQ;R05 sD7(NsDK{^@m&+_K,~Bl #jr9+U#6xR~tӳ4" 57C[1AUZo hBjB-u ؃wkmW6h7A[h~ ژԶ TuBgV: )+i´GU=Q ޕ#2Z96"c?$8} Ȑ 0S zY]Nf!͇&S.У3ntQʧR-E$1FWy\?1E0o:5X$*Z~*`_ :WކuG9Oݖc_c\;4q_k|FĝSqxF_]Qp[|倏Fn@pw'I =r$'{=n{|Ee^S(IA$T3_99 rqNJ۫L47}ojeS1h,1Bf 84zՄfxRŸNֽưI\?%d¥kW2#vrUt޼4{w\|WQ[xKO!Z\-5_CRG'*ǰ-evrb5V&تr@ew}e? O iCTFAF?|VAD"uʛw/*|Ta>^Ovr*51-}o 9nit{l4|'n|=L1,o 9\[Bu-V~ڽk?)Vo*k? (Ͼ A>$~  `0c>AJO sPQA]pVf9QPw ܔKc2Vy[IMM,Z mk^Xoe!CRoxǮmO FjeM@Dž_¹@=v~X9ׇa8aa>!͒ka`e3ͩψ=uʦv:&W\޵n'PEc*vF^rx(K/?Wiկyi5'6-kHn;6_=㢟o~bzk AcWxG]^{ ~`0*ȷ\. #>HCcwhL ȰHF\'F:rO{u`Iȏ3̲'@A@:,(0ƽkީn]q$mVϑQ~2Lca!'Neu!~ZN~EdeO1>nS%OicNlfeYFnvGf;gU(FSx}f(c{CV_!_pL.݊9PptUtgR(GgWq(yj'L/=+ \UvҹP+ >}v_n==VHu8d^R/=maEY2TE`1>8rݍ]wDž#[^Cm~/ ^i>daPlɑS{KpZ;/Yo[ʂ@t\zoR3,i܏g 6VwV@\g3b,"fa>**˘~m~L"^-<ŀwX~-u;6IPjnajJ'jݠ_,GrqlIN3p#}]v$ݾW\톓kȀLJ2q9Ȓ]7@"4׳Tn, C+78(oYjvwg4uC7NdM]bN_^ܹA uHf}28bZ?RwfL{ o|IKn1sQ hi-qʖq*wxepR }OK[cnΘ{tJtڮZ]qFw'&/tNv$ә}>B6K/ 1w~';nw]Xh6 /Hp2&X~(KV=}:g( h9U>l߸5 {˴wQ_wx~¹o]Z}钑޴x̕[E'GC>2Iwz1cDHkU ),0vV(7c0=D[zT˞c}v+;k/>3 ѽɸ-2O; Y5k:'PR|†dvi\2^{qHхѣj _(d*qt+ Qb5 F|]Svd߷YSU99e{"QJ|2jP}!4뵇<@[mr~rT{1QnRJPOR7 5\6M< ]Ց얒ZyYj%̏.x0ytSmNQ Іar[4H+!FP,d+&&A4{ MF}1]䭖-7/iY)NSchSÒ,?Ϸ҅ɡY r31`dheXRА:!320A@`:7NATRfϜ_\MYjךCӉ&X{5*5AR{KZ0Q/0}'CǮ{j!t# kE=x!3-hR5.ֲ3={sAhʻ}S4_& QwqZ,*(󪔵1dsbm/w-ȅK* T| H2Ẻc/>v%TJl޷恕qvht(߂?Ąֳ{aψϖvE/2NhM{N_V'L*J>O0f>gpa7Tn|]i 7NFVYPvC.km%!կܐpo9_qseAH*D+[3s!à_AkgH=TlmEUW`ډ<-$PrCQ3s[yސ𛮮nZ]-0AZZ~ ע8M̴̶ OaF򚵅lbf"Ѷ2bzr{ӾV2%5[VCPhuTطz>-S1VvWأ}wbd;c`ܤ3!XOGga^k2VEvɽB@R];[* ]#Dwg$3{R ց8,^w\4!r'GWm\7~_/܈^AX X-!&QÀu8ԘᔧzpQ`k"!Ͼ&˺ rcf޿<>cu}~7B҉L~jm/ k~Mw;1&v6 ڏ$SoBʉ8L.V\Ml05gdu^m펁@t&Ci/b6%|"+M$(8MD݀x$t.?A5>uuLϺȖ~)ZY/y9T}VQԼDmb\#Gl+taZ圢ԄmKce/Z$S+=0\p+ L xoc̷7z)iw g/&2[Lâ=T&)ށ90QշFcR}@$Pf~&J{I6Pٛ ~q~ FJ8rx'3k}J?0p{qL2Sg?eGbO OȰbK#, A6ReϰR{)^m`gTP֙' .J=&mz\x}$>6^~^+82B3yZ4_'j_H:Ͼ/o gV4Oеď&5xN{+5 GQU`A5'`5/Z٩ }!^"RPIvb %wi<{@>=4蕄YA; اt,cNHkYXO?>:zI-?1r5-ӯd'4'9j={6VI=芧oWq+ 7/vr]0󂦗G~֓ 7ztϫ/V>$'F']d}&I) fY}yo-,5}m-2RZ~R1{TGG ~Vpä(#-i^Etz{ J̰{fj2jdWN(o V=]Y3;8q p _I~ jŗkTvPT/!76p}w9T~.93RvO &v١DIkIPZF0!2xNd,<_ȃ0$$eȵ+4Y?8 4F76aѻXCO:'z9WH(jyeoTÊ:WQG䵅BA5gÉ7FO/jd~5New=(Vo,nWDlnYDt|~8(&.Կ )" 귇.~+u`'"wG(|+Y\e2@աT CAxP,L]zQԬv }֙MiKؓ+F7MdAO!Co[z]c.C19 kDU_O<|RbHoX<ĔT4ֶaTtsmJz^{PG3uܩftUBX"2Ԙ<0EPkhݗ R& '*Jp?ILM'k%+`1>,˥-ݲ@@MQ䄽cXcGb!iP=JzSԆΗa orVݓI =Gl&5I-67BW2a,Y Q.[Ҭp|RmUӌZy,tbH=4.y>JM֧vAyW[l~x%DmK˗?1+98~gC[x@ 쨝i5drnݐ'*^˨ +1`VN5IUBZQ [6 b=X&$ ]RB)eKR%^N9[r5  .]aTQ8o2 3n}amCI_1.5Oɪ^ %& (O& A">$RԜ% ~Ie~{3Buʼ,5 5}߾?qEiB4 I ;gߤOQon 0HWsH``xs0fE=<=g flےA̙$Xa&2*:<>yda\(כjTKwacŊmhbNPTӛqAE`Sv cXIXЯďjQDbr9hEOs'bP!^,'Ɍ452v,`wZL#rYvP$jQuhU@K#k&c'fun8yн:j"vq_n"Xbg%]' kЧ?O1l1(O VJ`;dqT $6iƊ T/5OE$5FqUuk ꭦ]բa੣ Tk[ҿg̝!6CD~mY>@ PHg"f_ҖDʉ1!ǚsqG' :ݎ6 HbPƹ79&6a聠?x9?,vl;{pS`w&=ԼGvlq36Wɹ^]HP*smmgTi[q2K6ɈS0n1aW 2\P bz@ a2*Y\ 6&9$.TpޓºsyIK%9t+>PyȤꗏ].m#Wnrw`x_sgl0;-T5^FXs?۷ar/ ^58;%,vl x#Wkt :y؏q77m8~\ukA="7+ 2v'b6TFpBg糸#X!3?:/Țò'ffYt;ϓMpHֲ2u_\!d7`6An{"6e{LW23AaS<ƒ _vFPE8D. LdWg-ak'wF9H=3nۦ~a֋*ކSv{amO$桳uov}ރpç/k+3JIG?8*)LO zpJ= pԃVjjȲ @d|}|@`Mҗl<;҃6T=i]dOjc[K TŌp0vܼm!!RZK+sH^˭>81חZ>46dJE_BC@^$;0VH8?υ9PiFEj4OFDЁ'w47͙e\$х%!P3Elz:,lu[bG\\ e-\u "@F4K ^dyċ!LB _qu?k(cyL.N4i1h ٲl8E/PR7=`׾I|EuiZHX9 ĈwRK̨g쿨Ҷrqśi-Z$?Et@ ^0a3/x!'&S_&#m|NҊ8H~,9Q vs.%S3;'7Z5|b}*@e N#Z{+8 rr3O] g:4 }Dz2NvyҚ+8`{g$ ʬ:b288~d}w9 cE HtrKOu-zcўD9􇼳kfOv"i ¯4Mj->$݄%ttNb=+!AyƱ0`m1{~#Q ]sn˂WqBfXhc 58eR܏U.!xB+՜Qxm׵ @Hf#?.yRFci[3Y([C%ITz4bE^/XM ]G !@XD'mp\c'nJLz9>MIwЀ\Ϗ8!b_uND'L<a% zܿ,bG<7%b r9B{!쯹9)#h ى/kP%u-)Ibo +p`?jq[нФne-)~s+:qXݷ|fvkCnrb[u?)v\+TmQn4(K'ix_+ԖnIOoǮ x c5xWoQwSBK {&.b+Dpwx|Ǵ`Chl(~ ԧvp1GLi;@9$`*) t [J=W:lT>t)%vIOۍ&Â}y@&;#~ xL;?y0 .oy(0w. Rw=Ydb*9W,r$B@ӱ~Jqt"! 䦽LuX=s]Z2.)pn|߾aш)PnNx,C\i@E~,&~u*sVYgn;Z"wÊcof9FQ_?Blu磢dUD K  '&FaٚThB*[| [GY.v++z J&nj^zq`++p>֍\`qY4VYVO ]rgHҀ}](2)$ )P@Z-, ??`0wݝb.Wд =hu O!x08_R8((GnBθ)7 ]+(rۓ3c'us+FK 2d_vec[U2n~z ]XD?E[yǶ5`bg[akKz|L<sٵi&YlYNEk>O ]}:U%4ڞݫӌ z)p"fEgD(JcW, ^W$ODeH^ѯ86K3b/!86h[:[?9{OMk: M}r@6+q ǝlt~ B޻@R`4)\@s,|gæNh-c}GGQ?埽o ~.ӈxPy<qRc~@ +𱣃UJ߸@Bm)FcA#7sշvd6(pxQxĹspC.B+?9 RB7'.Yr^Rmc ;0Aax8yalxb1!ZlծAMNz9bB1Rbf?Oh.Gf-ŝ6o7m ]`f>9A 2P;KjZ>AZ@<J Oۤw;QJO 8&TWCH,}hάfklPf)B~2js2{Zct2lA'v_#FÑy`kDQlp ҵXG1AlGIn {q)).ܱ5eOmXA?5q,.ɟ+9efܝCg\ ?=v5WW?#8<:MD^m_EȠ=d[{~lSU{1cMOÿHf5P˻##Ў/gN a"Bxa'yL J7_F`7i31,o@P;n~xw ]*W`Sw3х8 ZRӘ.mFx_ ڤAj(Iqf3\t"ljܘ)xjݖVNYRI̺d,?St$Ux(ug,M{3y"f/_yh!tAI=_Ϧ|wms̙uNϭәG]+$eb6聤 r)z{kNad4$@5 N B;`f%`TV?uڊiK+(CmWxh\ ʓ^(ݏq*WrkU%t8{&4o7 K+q\BMBs?|||t0(E:7 y=+5eqۀݞ--`3V~0\ܴ(3 ITp0_%a s(h ȯ1?77>\Z_oqt9k >K欒eEk1U+Q洒XmpG+e;W>F5<\&GN3y%D[T7܊^ML3H|bl ,ǧ ĈE0Υ`UaET3d` MD*~YN$[Ii~w{l^jf>ͨݫc__m%@j-r(o.:EOu^t(1[jC:iuQ$'H0V!jP_h/F '?Z˨&UjXv-caeB =_G7 +i|g,ˁw~6Pb>ћ\[:2n등kF èc8 oZ_mav4NB1[Wʼn h'צb̻giGn2?(l<;"XKkyxv9QNdn V6oAکi 6 |)TnpB7 )a۴\] oB7 L>U0{dhq<{j>Gei^07G#ꧽY yILˋ/_$Zyp=Yԃ>~o7w/r[WwW9aJ6`bdѭne.2HMiO,xO]9*Si/gf),wQowv6LiE Q^)教9^LA$CŌEix Bp>E݌Ԁ]3TCλN3l р"+r[\Gιk\GA=nbDFUgC/)Y?64ÑuG~ iGSJRnt@_},V`R~GV=ngSZgKlB rNC|iЩĴ zC?s+֝|}S$k&+/Y"nAk=œW;T6` `CO_Ohu$o^l3T4bߝ1l`*`P3pboJek!g""DIbV`%KjIAUX0$ |ˆJ!Nc̺=Ϙ}x"fjBҦbJcv@8W&&NkFǑA~qĔƕ(g9YF~`Hd=M^Ig6;/uB**T)zUSg`62!:{Ƙ`sYL5~5g(9&g!1X"PptIVCFO:1)82(⮳j@ᓟGn_ˁ"u˪|FG3D6/X)t~/oyя@R* kKO"Rl4h dkLh)W&`]A:JMh{NaVC݆~K K;w9a({-= x*$rkZV@>o3+ GGI"?`@|sͳ"$8JW<(I(v\OzJO(bcwOÄ`d { +&mr}"b8XD1Ȟ:Ԛ/z( x V$JA0k0zѯXt<*ʔc'+]O؆7kư)Hk^MObT+`b {Yu+U}aS.6VG:/pA\Uc9" c :j%|pbeUe\d®T-=؄l($3Ξ݀'lr]@˅[uEVH@4շ5ӟ!gA5J~ |wt@<]~ξ҄CL" z{Ta #@aӱ-8F'|BV:TP\d N#_THalQc!7( JV-ckXq<kj*ބ(n l}zSIF^*Y.bW1m}QXS8 qzضzMkܳ 8@}@d5 >`h\P FY،BXNj*3^5R9Q6Pu\RP3Zbg1)`-m7%ByNQb'@z|l/W iރ́T9੐CY~|>AZ=CEqƉK0A $FrUAe,R7h"R 8Iڱ[dc)pE%$*x νTZH<$8\E'#q,<{=6 ٻ} 3/e9bA\,J/?RaŸ&ny%h6>J0 GT'JQ9LZo7~ڊ8~kP&oj< Amy8M 3;O8 <}Î=|Egr~ab2ER;XN79,.u岤jS) 4*U\{*Te:Ctvglՠ2kTk@/;)adڭUzv Ar9-҇z*K:ΘV^@?@tzdխz 0 Hߙጾ~5<#)_X\8oƜX'Xu3mMP!FBRtXl*SLLSj^9x&~DA[kD'vJ:p-&=ԄwL;bU.Sܢ(ו %kP`M!h[3aRWn62㑂U2+X8ׁ܍KtBgv/3|ly XPږ}Yfy;%=H6EtQ }HD@c59p7%Ĭƅ ;Նs8Ԃn[)L._?Rp -kPCŅ޽@ZTIB8MLQ`:ʞQ9Xv i+'^rQ7 `ϋrO8ez:AkɭD8OK-8{%gS^zDšȔJ&-d\܆s\58h=߬G85B:D  !EwJg#YRl+g{N/)#GC7#~ܳNm9̃Gp\Zk_yE{H&s GBfRƎuLc^ W] Z3vZu0F tr:A_Y]W΍/A3p\,Q~wc垗-v lkFB+j&Ie'f9 U2QosiU>&8_i=RQۢz0 jĞ!@$<;epdyfb,%5WA兜n%~&zbΉZ%ixE [6D3kiφc]`bG)8bZgi@qѰ‚NdR[ʕ)>ȕ7}5t_J2&w׶PX Y1ݟr@<u! ^QTYū C <Ϛ>N g]&zy喑S4vWh ihFK 3)zVƘĂ3Mhu2.br7Ndmӗ:ໍwL?yM k7E#xk,)>cV*K$ O Fʞ0G֠EEA<\&RJhio~;Z^gle`d!@t|aY{h᭼.=5nN 0VECV;oqmUW ņYk)92o?3W6jb=~OS**0CvoW;v⤦z=+ @U,<4ǞweP kCsC+k { [dFbWTV/C9́-X#a؝p9"@t5?.݈ piBZQ_@g|9˨mO2";7\Wd[T*]\eq4JM_( 'Sq,..Ϝ0ē8xK"|Yl²n$ X yZ>Ð.Ë0iY -P6bs.Rkn Q:()u-bkCєSCX% S)KS|ja oR~ɬ0vHVÊU ]I٦9XTbz*?P~"};/GVSc8.G%kwBsr;%=pмr?;ܫch%xlc g-)Sa ^ZSWSRJGc^wSʰ7R\Gd~u@&uVv= XD)/4OzOڐɃHa~`h.ѡ8s 쒺ch(R_LH&5),Mۊ2 $U6I~+^pyE@SǒzO$:/'1V1)L@&}·yaQqL^Tض^ݔuHcnKg ˲Տs2Nu߻K+-d&u)Ǻc|8rUW4XV6G?SY+XΊRu(FNMCb9@fYQ7u AceYAnҩ43ifkwcب_:6;6= IJTWkHɖ$c}A+<]$$|'!gs,Z*6ꧥ?~@yf6th'wм@@:ZЄp3rzDGц`f9Š"/19:uKP}1Eǘژ.QhNmnʧ[ۣ\ihEBOYysA#;8IzFPޯolNPyh[AJ%DTyk$l]R)铣k_L%-|Ķ7WeVL g9Q$tD;6!et4@cY1XXGHZaszU  '2[lUmG9_  H-A:2_K|uA]2LNT7ʰK xᇛl$s@sv<85v9r+hvitl/puu̱2 -褫%2~IB]u-mX"-`ZH1vff-Vi н 0NY*ܥ=p in/Hh߳rX,qK\ɮj$w<>z[uMA_X!td&M`RjYEotw& N*+|Jء,="!o'0 ( cOb9wCY&+f>e:H$EŨ_t/}z4.PغxSЉY?hI~J{݃΀]m7.{oy-yd5D2:8QjU~[Ewo$Ob?z5|־?Z*_![ &C.u!Q|/Z9?]Dh̍b߉-\֋f.vTnA乽JOT z(vI+LΔ(aHEܒEL1CܼFE(3KTT6C}* V|//q?8:Eʞ@ <8JZa􂻆f_VWFQ.("MUkh+UFa#Z$^EF5XL_,i?S ;OF- o6k_!);^b#rJ-5#u5ИpVS\1G?=`|zoGPsVjG^< @k\!lnrL}@ єP7d1ӧBr˱ 98ˎSBzXjh<G:NL)UTiK*TCPRlU[weWe"~X"]VYaIJxD}YuTqf?w"ϒ%z9'4Z>-\wP6[yտΈW*˿|M!qQ$u?vRlv(ua BjLpghA}aGLXJAZ榪ps9+ ,VF/s1M/W!{_fױ_g>V0f>*C`fh *KVۚ$  :`иwPo2_^4{iJS{@]w'SkKrRA[%_?⬍kb&7}Ӓ?̞Dys&OHnH6:]-c%*xG[(;DHgYc=7HGtT%)3yxK\:7rFe|Y `kCAvSƃm7L\H nMK-U]Hܕ~0 }YR|`qDd0'/*BI}`h,'VudC-Ji%,B? kBUC}iTG1Ł;]jv !GQ+ېk<y$M C:pQJ¨m1@&#_2UɆrpӰ>`Sdu/eLx!ǐżo[DM+)EY-آbjK=\0[6cbϝ9-`\%fCd1ZGZf 0:`=U83Ͼ˟ *{ݛj ۽ #SYh(3VAwOG~XV"?@JROIQDžš]3&<[xL*tm(:FB4^*O:Mؽ~3Vk;nFb*psWڢœrz_*B9k~ 0'q$`cwm3pyVP`A󚮾-4(NPyUXB4 3V_#KAX4nhN-@\`6Ւ[Կ> ^hZr>P7}3QG~#U :lg:Q$[XW{mc_({:@kw;sM%ELT]/KY"t+f]ǃ%CuB{#gTYgu_*QC=|VÀoWp;eIRD=,tdp=$xܮO>͞B\A`+T0w̚ZM=8"G wCcݰ{F\TɑL;ʴٗ4l>u2_P-Y@ުM?fp+V㬤9a 02(M@RWemwm|yQi~s0>`0e`2?j6pܑ zaMB`#B?;@sB&Jnb$kz%2[ XEFTE97& GSRv?nw"qy˙mGK7/&JTϪGHeC r4Yp*˫Yf U[beB/3Kߛp<;d9i \7W3 -{9v/qbʫcW?^ǡzj}f`HrMҲEgnT7Pš].:"%~g' P/||yY&Q+7JOI^j& GEo>5ʏEIf&A٧Db2scmE6M ̑|8=s6d0% m7#WzQAP$ӰEʇWS# aЧ4`UuBOG"=IXOސ½{{Qףɘ֦ T"ځEI t1eԂ seil# 32 w1VYU|t4Q+B?tk]_rV!z-[wrFȱ8Ač<59 \qqCfBH`TN̤)+qGP'IZa%mDz+lj㧧sI&l"^=ߩ^~bORi[8*mMmcM^*>W/q{9q1Ywpxq0\ 9OfμNW1yY| @Ĝ9z~$Vk(7懡ٻh"ESVE_A&HMɿɩZσf̫³Ot7AO8M 0)ʑ&lPP",[Q2VB(5q0mB< |RYZȚXQ%2 YK(d&^l(83cTeȋ6LQuEk =bþM 4|HTM !.3 J SwHZI/Bm8'$#J{\D9SJ/9ޕH7Q$컙w۰hQ1ׇ-|Z#0L= @_Џ[]亞y?2FjšYgn0bf1s6z/4'QH}v+|9wYsDH_~uLt;W*=O!|%vU[Ӈ-\Ǒ~+:@WoXs۱KZYX@]io` zb np)[T Nҿ֑ >5EvjДZQx<@q1'\!"Z`10QcJ\x\6TmjRgdwH%Ʌh{я6n(y> lo\aZ.F@ז]>,W$lN5dB}柕[xD j{/,0I4%=x:4ܔim͠D;+,{"Q!T?RyZ0:G,Ko 2~="d`u.|Lz;v'4F`=n 6?J;yl=9gPfyVx="/v+ڤQExpHhBfa4ƂQW]]HފHV>hq&~wrAJ2PJ)n#+S`IڋVѐF$P܄klזpdHuI3',S D; u3ZTgk#!=P(&YL\Vy}8)mg1F"%uUY-HOPc 4iK5fE-t%H؛!JU%`eFoc"*軫p*0": ]"Y{dqh~@<%U;z #zvsyk?YPqPmY/eM?i"AϺà`%7ydRw'm,9*jǍ&v^b {aqXZ{[ZhTrv(dŅv>-SqV(N76Эc"8ՙvhH|x'[iݻ9sɖ{" ` R@$r!^ F}fi4sL3&{OL["$-^\*/Tz+I\ǑBqt@bBorI1Tl4PR}Jo-V17 h|jA~qa_}XzyE۫rCǞ⤵3K-Zr*|2m1Y?QOlbxV< x&Df+jQjN:k=Ib.?ZeP)cCES~Rk:lT!A6Z &6 ̍GT(RwtѣWA"[: ":y3q+qѩ1.A`=˴ C/ljVx&ۛU5m_<s{U<:mE l_xOAkX]?z ȄTmAyzT0@e>WoQS&2we]aͺ;-L4xyI>> ׀aĺ+b8^͈a9+pM=t]^GV+]P $u6*cx+,WDC[&slJ6㓺pɇ #w[D1٫#z&GT#Ίs2A Pm]]_۟n\@<{4_xȚ~sjpWM-C#$ qB[66pq^t$v^0Keme?} q ٸ<;,wApCubȱ!~\#dSC4!Y䒃--@&yaM:q6?!1͛}&b C./9-^JZf%\dzkHuXdžUrvN/e?Y L2Xɸ)om؀+^66ZFȀҠ5=)X 5p"ѴxW-=pbwF.wJ7Ho9a~V o-Bӄq=88q%?v+j =_[K벮NtM&҃d3"\3!t\+Њf]p=4A$bGxDSQR(E@_ǁUj0fЇ(WM6P(v>;ۅM[yZᗿScK{nNlWuYӐѸaQe$u˰w8< 'I.iH<2/2ga/{L1}G6,,?>zn 1vo3nRv 0aP\|6;,v%h+CY:9Q5v:P*aUȗdKO}TOގ1Pb׾E)i X PFdRIМ+ջg9#~~POEq ?3L/sy?}gQ7w\[\o!z t]rY7^ l59D2Ƀv펝xXD_쀓K0C+[4y/&ꊡۅz¼l.psF(wYfrwdh;=Y qpwgc%&I'^b%]G۰sne6 -e=!]hPhtycB >8C<=cL( f淲POu)E(Vjk»\WK\_cj>$G\PL'kqJt_^E/@6'-AYYk=W\ЋC.B{M +B^V`2?]ҥK ;1q8Eċ-Nxd~c7?ˤ>EE.ly/S[6llޮs_ UB-ɫ%zh.Ԍp, G f|8Z7ߙ{S s)|+@*}yQ&ErΩ"vPbL(?#oߠ̷&XD'qxbms'ii#{[BWJ|i~*9EuH XF#^7ifWogdu3)I"&Qc̸L|lcQЙH2nsn-@X<5hyt3Y |ŖVS{5@h'A`?xRF9: =q/g8z{=04eԞ\AԺj\חA8ˡ9=(P+rvz#4OhCreDHcGބ_$qcez#X\|ĂNn!%寺=˔X:Ct|T!,){w3JXf B}$tkAOF w`7L?BX/2X׿سeCrpE2[g{Y&oQxLm>)%{$]pr Z=D `Ϸ3hO!C';Iأ:]mn] >C`iLK̴0>qxonaOqUtOh!i~=i|UqX44LGrsbf]vϋ75zzDܛEf; .6Q*͡89'FXKj(W$>Wr k ŨuA$$'PtҪjgFaGU$=80a I8\l&݄e3,+|ȵt/DmᦼgpթqC` iE&wM⬋7-o`=aa"7A:{:A֢qN}8_坲$GEg'&EMZuw0Ιxt@N~%$ 6]m= cn;TCH>KvC㝜Aki[^oWc'4 D&/DP?1PZaLv.hXRM~1<򆩳[jWPyaFi7P˄}]߉U<N+Ų"<?s/<級ּ;m˵V}sb=/$킁`NRzmf"È,E, :8 L&yhUq< k *tDYlRۖ#f,ܫS8:= *P@t=)=6AdpfRq{q:70Ao6<&j(& X,x2{xF`[OfF 9.77h?*$xG`Y+JA*b ;)/muoo$fZ[[,?˘Vve[ >$(R{?aS"զHV-_9޽iznD U-vJ6г' 2*=Qw/ WV,iI,ІMhɄػlBRq*U>Ρ;!:$OLSKgM^6g2]kw?n/s IV.m IV.I+clP"wGj; geÄ:i*MaLm>'p97)򿛆\sB AiHS$oxD ofXl 5VR5vw[ӕ;*E?nU$9s z:A[]몦_ 0VQնywYmy̖+YgP/Uh}K:cvXp9ySyS 벪? "Dp5ukJPʿKSwĜQ]XyCٯ[9 ?|S&xac^@(W:zZvgt!s96_dwXyt/'k+Q. e;5&{9Mns8tT$>^׉R2M\d=1tHT%Kd86b君x>ug{lx\t2ycXkNT8XiWObWK#J;e&G\}%.gڧ8BI P|n_/. Pi8 j[(6FM|ss(Hkoqx.2h'gqD eZ (F'ݳ3Oe4X|8~*-?LdCNəe)@3n78於?F~ͦNؿ@Wʓ`ܹ<0P% `?<W5'iϊ%*=5uI)q,% K`.o .Ev ̓&L(O2nh k`z WmڠPgmyQ"gv&ݬI.dkzaK[:/䚠2Qϖ{h 'c|N/0̿Yߊ<]jBG3U7I_b'kﶚἮ識+!qHCiܱ@&^PTZW 0-da֕xilNj8̈NjVÈ9NM%¥|ޑ7"n qm(R4x"3 -c !bc]9 3U*иL_^tz@mp~=¢d\CBdmIamduQLHL!Zs_A-F:ZEҟ,W.-=S(2];J\"yGCl/t8gF]nj_{UXD7+gZN */rL;|0@=bI$W hw/FlG+7 ylIP'ly|P<_2oT݈Ÿ5y+7f(7h6? ݁v,Se7̓6 74n fZJ*/1Ϥy^!Ű.`qK.q VOba_1̰Yޚe~LgaC?K^m!}}:NAaևAN9KM}~>!@oxpT7c)(3ԇAE%l?z0lƩUI)*I\G:ܹέc)vU @9Iw٦CP!d¾Q / 1xO&N c$a;f~vV[?zn@usc),2O U<3$aht-UZ_.n8W* vdױ䄎&y"Pr᎝Egu=>{r+l81ɭTsŷ u%'~+kW8~m*iJ\Qk&T6c>c{GyqA;%?PFMB"IL싳<6[v[JkМ `whkM|B Nz"E8^` dneX^4oSЅSF2R ,Nځ~DvȉᗭuP:8W)/ٺUIf>qHzeJNߦCgLwwyu~2́⇲? œ%wG< FbtKj'pyR,$?ꞟ^` LC f ? ָn Jڂ<$qӺh1AtIwwsdx\Έx-H;F6:Ǒ JYdLN V?H g/* J4td? ' U&J<Ԕ*1DC%WR r:9lMIPD0z:oLm6h+V'?~yp[JY%;edʲkB8(8}y97e#o\:;Q%b^d-Tyh?`>(_.(4noY}tknU"_0j :UXy>^#N(2F<6s$+ʬZV6#aГba.͢C8$U5G9i} SX6}8Xh=Cc ]"VKCjG tqCI^99.0ݍ *wy|-˼fF SI -Q0i%)7T ܞqfO_@*T|zGX[ɟ_/o7L3vg3b}>6"q*FQ(zcvR!tMg׬'~اM_VjZkHzIo<2[)A3'neN`iSH߼۩ĝ+MQ=nǵ98s=JI95BLzXj;p 0_wg@{0|a;VZ mI)vg76<bzNMl_4gFe_1ުvg'䩃!s7%d= Iܤ>P&(mw檇YayFkmo<,aw2|0X~ްg$Y㴍b)pw#FC_E){p{z!/).v}  N0_Nal˜^@X< 6\]0UjqNt%4.$ 8CdU$<!#\퀆‡\?yH(tmcْ"I0l Xvje++<@a%?a@\rKX@ݡj{L]sӸ4A'UOw԰-;5_U*  O|2Lo.bn>gیusX(s>@sAC_M6zg MCa٨q&L ̄s']kw6%%k]-|Œ۞ >+P/$obiT곰C O#YRC\qq+%p5pI=U߃wa +V`PsLۋt0bPI)X킚QZr>O#fC<"CE/YJA\ئOH p:Ѝ1kmհ5+6ӆH@X%R(SJQ}%ΏgX%Lo{j2G*FO/ȲZud+Q65qģu0by4O(d+ @U83Me8kB#֙ Z ,؋,y2$ǥ'Z8(["+ð lؔ+;6+Х8p=HbƌR4ޅ(m'jAKdbhJ-o[+-[ȌUU;DjvXYN6H@ Hod>GLŸ> 8)z!!_͡!7edN戊B:?rXc+W,TfoD OQpFyoNwxfA="z6Hj?qo~|GK<|EpxZDyt kRzgGIiG Ci#C,s'O5 {}"Lp:aLؚRuBRU5|"(c7!?p|@S qМ[V(n,i&Nr]ܢ| Ӣ+?!/8m~Ѱ+lsyjb`(zd )?L7NQSa^/gxa\lB7Zj\1{3Į hPyowɶa.cP/_mw8NE>|RۗW+AI=Q2~}Ň"\" X13̜@pmC^-ni]dJ騨4 B(e{(^nS5TT@|ڒT}{"1@Yl+(wjOT FYZ~X )A%-V`:'R+S|12+#x YJ *Ii 5Z:"1@5K ɛq:6z" !KaYi`)&porԙw]XmnE3Ҿ( *RRͷ*"UQ50epZc *Vxm(ԓV?8EC[F/#BiGK5bw,rc5UfUeqOW-ā-cKu">`NuYb2 8y(_N,\+[ ]I\&F?*˞E&?*|g()wy Uy :zh)Fd(qT(Jk]i7Snr}͵?-fOhIbz >ܞkLZ|P (cIP}lY ,~,˟)4D@RnT48ǎe1OK׋)܂׏+2z8z DE: b4y|LtF\Jd$m,-v_aN/h6_2H[3w +i8RjR WM Ig/ .Ǟ)m;R)rAqYadTaUk(MMA[v^WA@dSf%PD&+D5Yԭ` !tz:lKJ9OӘVb fw'eꦄ`eŭD hTYs'4g1 jy$k"Yc+h ٥+Z0:HUWfsbg*F]rY!qƗL#1&:Htt1zkk&:;.t' .af^[l:&:o#ϯ0]F%_;:z wX#KI7!,vTX X&﵁s8$%'NANgӫq"]_4ոqS8~?5?}ކnhŶ5!*ﲘGsw~xcuNyI JRSfvԏb<2-1F7װoM=*s[*1a`$j B,^w}tW ebE<&D\sBfmplFOl-zLm}0g{U;?2RԭU8R:%ls+>2+%(žÌaq ?q1i8Q~M#)& _ZéjqKejpO"3LhoeFfKv,uڹ ۉ6;ne۳LCϟ)wro*1׸,]tb@ NASzƇH6'-}oB.J|sO؄P  ҳژ)1F!)ǘ.e)\%GMfyK&m(a뾸S+_,\&eDi;hR,@!{ZXWY*M9qlӰ69’4# \+fKR}b@Athbi{l)vZuA7 hg@m1۪b_Fye}Dn@w籊+6U4ZILti|8 o;qa(|2 ݻ.Lk&԰Kd=M_ fJ3p15t˜X$9xrϛD d;fp9.;iw-Gz] #?vXց}8۳KmR2"gytk*(Wۮ-5 $y ;7DtuAcrާVk~hb5jk&9l O $h/s;N gVa8ln?**0CI LW4 u0Z' 5tzem .4:䰤,y2txI p+B4,9YX̼88Q PlMd $A7*}-oB(ڴb28c5-!X`z;(1@y^,>Yx`DE:0-:RӀyHrijlm0Mꮜ . m`,u1\'Bpwݜ_@Kb5qsd_ Ws%tQ#Vtm熣JM(%5:odc:ƴ3(kA>_`72T{!D"GκH-އrZ cB|KVa<Op6e:~SCqms0K"瞵F!2Z)k 3wuI{#ά$E_X @]+&wvl?rˉY̭Ԃ8*Prz<~l.WR/Z. l|<?1C\EQ@ %'D,Cr\[-ҚDf\B(;$PTʗ2'?D?D{cdJ+,(y+Qb)Sđjmy ♟,L!s:*TޓbSA{K9̎x|iIcNbKb*U tGfl% n'dpR)/Z6*P#k2+_[4: G_H^X c+4 DS`Υ+(fw5sveNtWW-q?:xe6mN֬i˟3irp| '`@~ y;R߭cDf;å,35CfPGn Y?'Ԙ\/ݸﮪ3PHLŒ8ǜOVW$}Zԃ*vD3}aPkV!8jSm1t|THR E?E$P[Q6q~<5Hv&ylL-@ ]?BN25h/| 2Y>UJdCmplKR,8j]/pzä GzH0\LԗQ.jHDM lLuseϴ.|RM\W*w㊽{N+~T !p_)f Y>p=8#_qx a/0Y ,UiKylS#͐A po&Ԍ'^> T+ֱq- Q¼E8bɲ"EVmmr-p,ɩQL<;N_坩£(Xȷ־|LaڌȘ 4~ٞm{?Y ` 5CױAX < -N},ն2=)2 -LWA|&G\Hp5I{צŴ>‡5 TƀV_ h|h5$V{0{3 42&+鵌g뢭0Ar +l ~ZE_+T'r4G懗6 ^݂QkQ,΅ "%Zixu{C2b'$JVe"JT%3XgkJb]^#6eqC+hq6bl\BٮQLCh_}w9'G`80l5[AGV-"-rg ÝK,-2g͸K NJ)HsyJA MJ- L+X Es'50ɝ0aԓkmnບS5ZP{fBJb'}\ 'o0#i`02+1݈^foձE."9ǷT*CwF@0LJ{w8ܻʽ,?S|Yܴ(xS~l@4S5⏤]UexW?6-=ɎмgF{~ \KBG}9?YWȬmA @IHvVWbcY%ܖ,.w72B@j$9HD-^33pS' Xz'XT͢ T9: &e:c3Ȳk񘑁7$6$cph($w.Cv6y )s4MQao1)t1A^Ȱwcs"S||bb*p[V@t//3%ⲝu)H0tlW;(CW>~~GtIy_Jl ^T[_k\l쳤V2b[ xꑴdǕZ *NHΜ'[N$%FRr<λjqA-’A_N =a|h> tƾH3iȸOxqQ^r3t /イF~^iF-<ke&'6<{Y$9U[M~bsX7gbg')A+̘^v^&xZB\}tּԬH)Ə@k6pC`քd g .ye'8Ӹ J9Isgk&-'{l#+xGBQS|Ȋ:2ր0%]^w6Tl8I2*zw`ϵqBf;#PQG㝂:hŤs!iܨaRq / gE"Mٙ87mh;Ȝ%8@4塷JP i` VWN|_+4ӖNn>EBw{Uo=4B@s%:X+ϤZ_{?ڏeuMjnᄬ1١f>e Q|YN7>E:l@W˜Mқy bj5aKJK VHB{8:/J}=8-#ǒ67_(4Ho;\X> * m@KOS9"Ќaѭ[93~U1s;Iv+27^:|zyw59Su<]6R>PRڍ_L aGz A%.iBUpfMKy[tT0%B9@z7?@4ؑm[-Ÿ'Y;ko.AOfS3^ӆ8S pN~i>а^eZ%RDn"ACO 3y SJG(W& e͠iAf ,?~oMCO6v&8*QŭmM[UFS黧 '1ш)BY=XpN"T } N{ Чq-8C1sgg殯KV aɤ,W(>g~4Eg=0;*U׭91izDzLC_P/*?[{VOi(>7DS2R-va0VaV|HwN-,?usm4XmrPX7-AUV>$qJoE/$]efq*#xY 4̃+)@~LCQqgO/їY5>WVPu37MB \@eEI*ܴxI6EJ\9& G*)5k`nFc5+He>dINKsG)ϯ:iAݒLY Cbm;Cta(bo$sWաhD39'D3GLVk!=W3;3\q aBP _ t=) %<& Ip[ASY7|nOPAW\8#-vvxʂڋ -K?9% N_|~.)mLŢgNa7.+76ѻ쬽Ber/'%a?80~73Rͣl̮ ̎6c8$bkR!^;ʼn7c!$&O8 |oc'SZ:ɠleO \t+ʀɑ7(9n4|`_3}!lQ=bEG/(3 J-v0`\s(4B G^3Do"MiEnM- ]uCP7;t!^Ei }j&uw5jhfږ9Y]|,?ގ62Uߏ\ Ɵ^8rz35i}̅r\=n :3m`1DrvFcX7a9d!* J?3% ]&sa%b[er U&} B݋a@ 1?-l;NSA%VF4z)#/R:M:M8բw/}=^cpEQyETwqFa74Z|l$TI@#;_ ;:رKLtqN ]VU*$*"͋C?6CX:O"zFyقC79}>,4J}IU~褎>ߪ7]فzAw; 7YTƥҭ )J)Y1-sU6(G^-M^>W&I۴tL 㠡 Ӱt54# >"*;F Ɨ?V` LMΧ5myP[6 hj Õ%^賟Z&׭c Bژ3g!>{'&mmf}->[s2ywT?CHyg@LݯeBaZcf 6 {T{1b .8V>NsHa X¶(yjz6UIba'5qCB}(H2LَIQQ5x2UpB*}[U ^)qN;f~4L+_қ:<=_@l=E M #ؽs.8 N OU66ny- ̊ßuqhiS]ib)q?R) 9&AxJNJ-dQqQB,7ĬЦv,sxL5MTm 7j% pITJz9?@ Pt~X7Aj6Nid#:ۜsd `/|h(}:ZTZpk0?@"ںܟwHnl-vͫYY+ևFPT6 #>$+E=`}g5SnM Rh{&1 _Cl|ѯ=Uۜ Q7o-(UrսİVy7nHip֔V~*f⃨hoq$?(VӒ0Qb7P_ÑGf:-Pn:qȑΔ 0 vt7`pR}( AaYdVnie9%g2yqv :$3 gf6.37'Fnh iTvp C"]6(b)xB] b5<6_Vi;pygcXĢZ庬iW#o!j,VCW38wýՊ 譬s\rp%8Uz~Zb3X8{BYt(BC=`Ab#酷e22*ms G20lz 09q1-"'ľ\r,8)x͕%z( tJlp0CX7Wd+ 靜.j>K!&{i-6X~Oؙ@ gCc副6V7/{kX_a(G 9?fB8m *t>o5kaea *S,Bx e[Yl4$ĝݕ ,I%4ŋz 1gQҋQ7; ,Y+saLQ4[*s`x-rpFWtjb 9/yd.kfYͧ3Kȷ?ᩎC ,m]P=YpbvSsuI]B.]WhPٻaLE4+og6ġ`4$ET )Lmq70 :4\1L$*ij f3qhsIEx>Ǚ!;XiQ]Qx*< ?) Zըa 2cQ|L3k-9D/\+ʀ"nlhH/2>K;N(շs]};=IG"f?{KHŅ\?E]ݺmFlr'VIU +d1#wIw. ӛQ_4ig`v Pbrn<Px./}N!a;3P4] DϟsTZUL\ȏ"g=֊?Ae9?Rk^l|n6Py^N;da/lۛٳS=4'/_nPdT}:=WmDRY]m-_FOJ/C8˶u?2}*!WR=:ڎ6<4O0H7/bU6jcv 7#M -: v#}RǬ>p 2\GGkCP𭚇> k >Z&)r RަȜgUuĤj~cpiV`%&=GWR3v;9b`d*NUUˡ')o`LMa6_V[{>!] U),AU5ܠpdu'\,( 7gOقoLԫ2K?gjLe5#_0n(e׆C j#~]zNOk/nc[|ݣJӜDdJc#E 8m'*Q%'t)x_1}|P@xAӇ;nSvc1n01v_Dw‚g| _M4|Af!g'ˍS-$tP`62.v,Q@S3$gZXd]y/MKF…~Ѻ"~;z?:]g^_!q-+F1UsD&cKn! ؀4Pj;6ɂNޯpH83,{C'r}ɻйʣNFp3:H5T5s}YxuOK/] U=^!Fh|Y1BL]#qcJ *\Rpћ?N+0E9~ϢBev;Ͳ NfdY)ܩ;5:34Ġ"1&$UgI]?;VrEqEwJxM MdE%3qօh?U N4{r:|impc63n;m:r9$p==_ĂЗ#G4)¤ .]b iwdF=}08nT^=x;-Hxud̐4aA jRg;wb3rF_tqyL#r>SE{PbkAf~mfSIvqPhďvK7 kW>93'2+B& TKx'pQM UafwLHKUo[v!?LR&uw F%,)cHL?ਲ ^RwJRS|~'I{f+::j79bPРs+}֛_ #SjsUz0IvĴB:{Z:3EX`iU+4k@7MHHAkl^{!3àii3;3>Ն<a!:+ Cd^GްcȢQr% ^M('RQ+p@ETgG_"[5wqHW0ӱt"MIIATyL<ҹbH.}g/Ip%K1U[8kV kbʑI'.`S*ġYDp[dCRu[dlE[U)Lt;ÞK5mXF/$Ӵߗm^^3KP)CWœ dׂ;M' [ؙVh抉QGdpߠQR5ܞ~T[9QI\Dd!;-:w4S=u-wZ %C۶@Sz'~+;ԭh 'WFXX  ǐܜC뉆cM 1fm Ica6QOsR Ul8Ak,,IF}[_|ap]|?WZ?_iM'[|Xo۳ ӯ$C퍶qW;eU6N֐V-ִ1㭢sx\XPQ_Bd6ճ_ޓrpa1fܖ}A?35?:zٌTj* PDg\3tDԡ/Gd#.(Զ'q#2"\K1F& XwRռt١~%]ߑs3B{y1A1#cYx (%6soMXQq@' ˮ >8}zșRKހH ӷ NɥV qCp{NSd,5Ù0sJ.OWx lrX':Ry/L2*(SM#u'&;q=[A'-z+ =(XdjuF`y|htl<cNUwg"Ͱ9V>Q~LpN9vŊG!]%p~e,MO$[yTM8O1>N1I\wl|BCfAj{Kz%9C'샞xN̟uԯ>N # J7_ֵ1!A0ЉҠA C79lߴQMmg7#5'=3abŚn^ ay_TԐe?S}΁?;p+>.4 o.OLlDO(@-y뻝HY#qh3_z̪ljEVyIZDКOaBqRb W[\i1_4ڿS}B` 1m&q9qk3Mܽ[P4jioY D\Wh|Q lC.ޟlls"kbPE҂SuTj1!űp}7gaa1[f$d%&ݤEHBkbf3%DA3?Y" @<|X@?ꈼ3`'U$F 藀FZ7ZvM9@}esF~BX7oa6 \%#OeE5=JD5 @ME|gښg=٘٨5=]q0aЯhB-si=W.nK]N\y4Z\Mo+\GX綿=Ÿx6Hy ڨkLQMj3qnpǎ%.¯g 0I$!j# ͓1FqAkULNocs p OoC"Z\9={X6*JL Gݑπ)%߈e|ι ~ Nm jnFe 3mRCiT:-Uf2,: !j>4B+Cz8i7a[ޗ\ntJ:n'qiYձOJ'boTp(1YAQ: *ρ$5r cQv~7q7>U)ѻ)be!VNXJhw_vi4T^~TeBmJ2FWvf=߮ j*c:fLɜr@L3$wR'@iI/O߫#aX2أtG9yQ_'ҍKM ~MemL6:\ +e¹"нAw ׍a"ţV&녋5憸t4eɇDcPEeooAi>j\hj"bi x!Qj^AըqkI:9+rٱ#9R 2]OnG\zn-r~,dE,Tq|A%}F"yU=lC/ }rsQ]UEBSR"A+E^nxN'Gm!C=FLɜuf*msj6#ct L?g[J\ \|wS1Yhζg{eُ^j #-q_{˝UuY9K(CJN?UDhϴxr(EJ$V6i]{?*J]S/΄]QL@2tNAhA7}[(CcUTuja񤽆ШGQcL M}/9ahK'wwm G7R\p )̰tJb_c2|E嘆LLj*yJvTu=Fp\q? %Q7ɮ"w s63H|<{J8˪@XAx{ 6W"" e%\i~Y82wY))2b87k^\ƞg%0CZxzۘ(-Ua"oG{M42EQw%Q C4O`q]IK+SBۧ.;Ie|#fc~ŭ[XbW~z>m?td} \]S1,`}f.$ @_ iu <}$ Δ P3!+kc0(;e K/^`lsk(sXhܣEhhтY?)j""~MNM`#{JQ49ֲ jOVNRIcaHi]'U)p~JدCON4T8P h?3t{7n^CJ+i束0r AZOD:  ͞2J-5Kqq3 JBvKHP> i-;qV$ahV&Ak⷏VU0J&F?(hcLå 1D^4}kg\ꨒJ^X?O2N<* g:sW-2U7뎎0'8u6=-a@e q[ġ,Ws}<Bdލ=UuSdܷ"EkOx[6?w928uwy쌛Q4񨜁gp& *7)X3S+-C+ rw"%|'UB. Or5YaW̗Ѭ?ݔI箂/q=@Q 5Rd$x;df 2  ?~r9m6\UScGXy(<0=-KuG့a_مl'|qDGV@˲!{}17l9ckJs=BSdmUU0| (Ö6uP 3ק9G([w! >B i{S&1M00:I+%UR} #md:1ګagY< Qj# r/3[8 94΂hLg%f; u9Suf,B֒#uZS8KܝuAd P2YA_+$GvCxֈV\b"@b"SAwsYZXdۋ2N!zd_,w_o&z2V+Hg3Xb%!܃B' woYx 'ZE'pEECu7~<M) ;/k dī"vF[vX/pж6r(,)1N +'!]\lifJ=0Mf$H>`/]da;HZSfHC@;`3E`k5Ҡ-m $_o w6i6\.SW6CY0BCyġQ1DEH f'mTPP9 %Sq]6=$69i˝`A_t/Jt-fpF]#䢷?r7j:$>|z5%ͤiFi-M܉i:)s,3 "a'u|"dcCiE=[EVb$XI׉͐c|F/MUws( f@9u5V[ѝI^="CKѹdj 3uv2:9 @U̝7O )1I*xK.ú$ׯ:Д0ISnr [MO¦jJx?bۜ=(nyhCc*8m$GP_ߕ䙴RӸH{g˜;0+ ]{C0{-RN\6)De'0߅-6Ot?iB2I~?)JBl?Dnn^d);iҾ]}a|6~rÖN8F瑞(W4/AL=@2Ќ%PBTF?bVjr=$)wbמk棕C,p?Zy(aΊV0E[=ITcaD 6A]SeJ MC $:&03ϯR Rates\qW&.BSDB0]cFDC* ܈F\C5Ŗ {0Y0>aZ](Áj8 3w[g<1?(@hҾR[DcK< F,c&o82sĐrcǧǥtoYRnuxt@bcp2,b`M^6?a@XF2gxZd֙q]?S'΂mG#p%}_\Cwujr7Ky_I)ۆJfis|s.e:Y{k[L9Y\rjoܙ 1>V_};q彳[rgT?$(>b6e~..06'jM-g$ky:p)zбLbg>WS<&zmLfrhY9/]JVO(NZAw>DV_J%tJA8>(\5y,1Xն}oyJ_ Sp]kB퇯x}흸B2~)s>1$usܷVC3@EGu9,M li-fyx?DlP9_a)m}yJrgQiH%;:׼{ԣ5a5eϫzmH^qٺhN wC gI LAyC4AAGPtキUQ^55jپe-3YĩHƊJ A7*pw=V4*u I:hXIRֻP:ũQ9 o&9s9%/)n2=9q8%ko*_?l.N . V9}@@*i@vlTNI@Ͽ;/^WtbY c#8hPNب&Záb1̽%wVɂ͔)^YmcFEZ?9HFspsuD~j b`O:+"?$-dV-7 X",G8t]~z ZB"i/c"*!tm>84-` xE?/6J½HaI,12tHk07:LUSNJ4)F׿:`v*E‘G"uiV(^ 1.3wRHNne}C)K"xַC<¶L˼FxTnI)df$|e,RwM0_P$ZZVdmQyKúg#>?F'yMmNTGe‰0Riʓxt4s*{ c$os6h+Y"؈]aKg#q4^m-O3e RkDBaV [W㧐6 %~A=𯵞gԂ$?k!-B[iBN 84 ܕfPCnx(JK-5,zRn0ʷ8 -VUj[zQ59.jYq_+?2"ya+J %=Hg8sYqYq͢gJ7;+TAF"ٵ"\%u32/"⬶ЍRWo[ה 0ԳvyM,Vp-PPhֳ_%EgXMJ$%>6@S":Xs\s:ZzW4snjpoϭ3TJK+ ,s,.h!*).7:25*4UT*E2g)ꌡ!Cb KzƳNqtHX1U<;g{j*AZ߫Cj'}5ʢ+Zq>= <մS\}πEYl+M_%'xϏ50W'.ȧpE-*穴aÅQ^>䬧RХ\2ޖL4a1IP„}VO2>/{HP))qsmu[+U`4=6/:ߚv%.ݵ'q-`ω'\=H>7 qOAiVG!ڒܸe ¬+_ޚGŚчcͰ@d G}eTw/MLf|J``kl<n^(QK[oGPbˮ!q/(S=DZ91B|QKx3IZ BH%Xǡ`5 \\Rmu.Ka ݌^(؍kSܖC[纂 k7߄S$<۷ĭ]챯7娙.*Wra,fErll>lntPi~5H;Myf@Qp3rV>vF^z9d%QO98IO8gpK`g nnP gԎG1}Jm֪sXR0q玃!lPKR$z$8}wTb!@5 v:SUbN(F#›?B 8$p>m G:O: qfاn"@}iۂ]=Rdܲ&1ަV"Q1Hz֯<&jĦح}'1&ُwU3ͻbsE  LMI贓,($BWc{ ϼ?ӊeU'db"b|>|Eo1+WX+17x}Ӧ9WWa\ë=ܗY<Ԉd7.ڊ,xua$v诈OzS֌6iZZT-潽eg6kc5wVV/w-hO/YŀJ`Vņ:{\tڧMǡ]Ay(.WX 81}$ٶ#I: B+#5Șn?җJ bRe؀eO`KM$8XWWyi{Gp F`5kFqw ]aFΆ.]&QRtFP-r/\ZB9^!FYS&qhͮOa*cCVVn8\9ힺMgFzUIcl],cgmSS&>WQ 0$KgoƏrgl+B3P[KF-3!Y2pg2K7*U QP}'2VE/ jL @<,^層}xuCvvwǻ He$E/;2Q]7{BĈ\ѫ܍Wu2ҩ?UJg&ZR}D߻m25=D5f?n~ڌ8V%6-K9)C-i9}@t?NEˈ)c-zv[&PQ)6fQ̹9.TzfU&.tCz?jznNhD|dĒ=+-;VP+4†ZY)5 ׍ODDϓTTP<[^l%e,LnD0C4"*RZFӶjV<_F?0M qtcj.Tf!3eй)؈Bj%#"P Igv6>invV PSR'Rg{:(R%_d@8"秖+6Ge^┗+?y-4*_r} ]o8N2Жy5t%Ż'5ej>0c1?72wnK1"Sx wdm n7(ghwRYQرND̻_u]~k3/eK6?B6mA[ws"Cxn_ ('D;('0uCOP:5%o;NPBթQtf/3a>I};4hж8jj`X `FjF!XhzGJ gnKiapGgayd!Ķ(ѽD ֒^K$ vؕ(w蘮$+fWV[gq扦:i@ɪa V>W*r\’&φ Ÿ鍘yA.{wsk!UfwF-`Qaݯxd(0zs"]0q/1㵛?PjV2#K6ɄL~c_\63?@<ʑP%2+vC/,_ޜ*RL˓੧Ɇ"MI5g։<_#@ua9ǟMta<}b72eH:4PN0 1\^̙s( 0GG MFT]k{e +=)bmbfbEtq؊|T~G6z3"Be9f J9paMONxg 1ZMO]2ۅ';yqiL{yD`%1 _KA L/= zB| P\F7c;ePɸ,^Ζ@=٬②jYǰE?^5EPbѯȲOp`Md1"qٜWrFɞꖟhMI6ZʑӶ1FHsӜإ_n']ӼbN3g [S(q7 -EvyCt?\/|y;ʽ+T+|ʛ<1{&͕maE1@H9~d'DВpbKjZUЀ8EtMkih:cctSbkXiE҆[-էX=,Q+10}+8|p"Yo_!U)jT $jv`ь7Ch;H_|yZElhI"1м%fnb|EWdxådqgZGE/{!ņ"^CUbK&#=:>iq4p}mY9o]jMmj=   -?aM_gcciBJs.{)v='?j,fc:l;rp1)$f2Αjh6.%vGs?Ndɭkic`7L q#9AK% 4qgd8Ho/ :3R򽍞}5&=鎊!<%?R'0w&xU*M$-;D2&m!|׊Ć9! oau߭55=\`?znMn "SzN\;T^Iev@XMpW(xU~9.wJv :{gns]S5o~͌MJʙy4#vJAPāzzQw) a 2Aې(讈Z92&BUx&aAS ˆ9* ʆYA_Q̵D4P.42,2ԬR I[B(LR%KMJKl\gQaS]Sw[ۏ5'Ys BJC75bЩqCLޠ$|#X PJbZWP'hH\%sq2֒vcB.l c6C4q!͜㔃Ƃ([00J #Yk5P -aQRw5Y8!*VgMCl(;mPe)e6x\7{gv>8(G2#vYEq\yRu8\E)U~D27c*"7 ӠEoߴ9-qcxlxq%ȄOgP֝y8=Y!B-ĥb%X{_Œ>]X)=ngkzF~fX-e OI<~Y~!Üwi04,&4nZ2"kEDtWƬ|1> !Jh0yΜZ:{g)C2LzO^Dƣc]p~)ɖ-o3)xMt5_/eFZqsL_Sl6àe+WD ZҾչ2[uw'qb!Ll#*8v 1UBnꊓ\RfN~#[!gt3KP//zD/qz2}5y IioYcqX ~ 'Wwů>D1Lh/P+zUq<.WQң=gmEe$-vt.A#c@[6 )5/B(P΄5mIWueGNhF%?HbЧ]Rᜑmex7Y'=]X gV)1@bܬ3Iw!6/Хt&Z"ȠMb.r&ۗG7o&mY%V#B,:-3koj4O:>Gڊ;E:-m}Y< V|hpkCblؒsWapџ%/͍(݂=^Z.l-|qv-$qgTm=IAOh@:S3Zt >=_[9>ʣ]z/]nV۾0Re9#-3y PO~b!P`'fquee£DJN%:\>5?ÿKW0{Gř7boyAيI=5~̹3Ǔ%Nh6d,;Hݼt6~8o !_ [9,5%݈*ѕU#Wİ0&L(-@.jhIIvQPGa":v (\y揖zH{7qt޹HO;3Ro gs7+/mtIC;T/a jZY((!ޓ8bbx3%#=qaVcn%Lb.uC#DCk%pd˰7ŕ J- U׌+]zu@n=DpP{^$ [?6H}\J+Ƹ ،B%'Ws9ƃu{)#a~bbp;>_rеŽ1k[S~~F*{-"3# > \"29Iୀ`юW2sC"S?20E9dF8Uċ?R.?bNݎd16ޣylQq%Yy6r m*bUsam<d>dtm ]Dr)T*dA + %=V%؛<0nXYi8xj$3 b'k8D)T;bK0 JexHJȚPZN 6X7Z\`f!\9Lg2 ˱k !-jzSI*/;K~F,W`2+}2ѫMܼ3]F A~|UJȝD݆0.(!+xM$ZܦGN\%K]셊[mcv7ٕeVocH`zҍ U6ܶ(r=4͹+&Z3ӉR]+粛h[9h;{'Pr.4[p/z? vhh|kd~K\H,Vi3ܙħun>DlNX*s*̀ޙR_\i%o2 \RjC/)KjV#ތ+䤯'Mh``R $ ^EO*hh^u!:)Qk] dit)$7}h)Ctr v)0Hf0(=xvo>Wꛓ=VU#'ɍ6Iorrϱ>R=f*-"4\c{|EMN9.i{:qQ[:2b2ͫtt*zh7fKta].NoPҩWJn-_- :nʂ9'6o_#]$PbjJFte9d{ʘOD} !OR eb]u~S}u,52)ߦ*K"ci hs7nmCYᥐ# %uSEw3e܂&A(h>LW0YpU AH'(Ɵ%:bV#0cN89E"Fq0\OƊEV8ݷ\ ^B40 eəg9/)EgPrQqz1cBETB./;V~V(<ʀ7 TWNV {7Pf0'Hd,8ռYfHK1X(3!cLǜ PE{˪>˚70,DnŌZ"tmG[-Nv KbTiZ7%%X[`U ?ALr%jѲ:jp^jJN^*7̀ ~kמ(™?EᘎE\cHi!Cl]`0(6atg.wl[ כ͵'鏛ܧkp͓/ Rh >sb w͙G̋LU:=֨{`p(hоpvf!'E `aÖv e}U+)"ytAJbn%2o/V dhoTW Wۂ)jigZhbNփ1O:zsM5(/#ޡk)8.\* ʷ ml ߱WQGY)"W 0?l:a& <$"Y[6iÉ))2 OUEGZ4̬<-"FĿt_O7T wx(\uk3Vづ0TaxVWB4Pmvj!( !ҾxdG Yd&miTaǥ8G.K %0}\.> (t|d MHp>zNΗi$v'A]qATs^j:mU` Xl߈_u"=Uz wy -s$bL'TD2q\jL@^4眽ݦjɧ,ښ;=vkT]>|YȔfѻc}#<*xtj5iW Sta4u{&E/"StU3BcG`9vaj(2aŌO}H1uRË2R_鵗#%Po/g+-`_ޫOp~kDQ8lӉohz Wh!ʈNw/V̡7gt\+ͼ4~ZԀ_aE)qHr~6`)`;FG ߌWc"[(_&q/l8 JwT-#hIj.gOD/LFy!ɡj pM->BS`jKrf[U"ӿï|k+DH2ʑ c ˗l#DGZ(#y ; މ{sJTh[uyHJ퓡{||^ٴY0+clzd.E)J5@W$L܌GzCf;AlIS+ТADvu=aoEnc$j!] >#aEaG^B)EkG1KAC[?ݥ'X@:qhF($\%C Hnرvs)Ց-Lkk{( Ѝf86ln6f)G j &VAY[%X獸=)؃=~sxLΐaa,|{sq-!HW\oך'-EWjؖN F: Qe7,ͬ"e˗{-^-'9& F^*񳔗beEP};)MG`?򜩅t(Dj. {H/ڋ1mV. u>~P4^gvymWzC4#qZ8v#[P"Ë9RV;aNfBP6 F^RLp>IU|p0#WPwx=\ٙTu4dnM5r1t`"d,2ʚmȿdao*sd#ʕXd.*L;KMS{~?Lƽ]PbuElg @+RM'#ure*Mq6Q:V&q [\z&yיnm~Ghd F uW[Q$ /HBЬ,'%.!cue- b'`]t#_jO"uM[G>̥V=辬ot6ĔhǸ5_[GsD;:Aդ!ެoZ}!UX)]6⒈VGQeGƢ~:H%\H#{ltdg9g@t#F4[}N|]eM/~7tqBתN4N8;/#O9͞wh"x,"AucBH |ϊ Z0RR~I{x1W{K9Q1/ThLCh@s$ku7EBkpcl)Jq$ǘ-TOn[ Z|1=<s" :E3p:'-/buK zhsmzFv^a'S7"FT;)[$*OłL ?^A#AvXt;CWwyeL'~J]Q+X)2O)3u~VpZ>3 wQP CCnͮ_1TXf5팼z)Q2Clb0JVTʛ+w+0y6A)ay_7\iX,#2_1)hQ|qyaKn_tXi, &=)!j? ɱS4OS%-%A+ޕl&A"陡Dio6W0Ga:~ `٣<UZwLF%]ie0T[iTb|~+-}(G0%w&ݖU\ebڅ~~G"dJN'Cd@f" <}mV&=sLm IN}UvX Ѥ9V*1Y+5sIoFXk( rs9{.&oh pM>߾rN&!:M1y4:~vr}tz[Hg`@<tS!:FZ U?tg\-e A=mg /kgC j,¤䛖(Ǿ Qt}Y*3aW[衙) ٬۴YZj x{0U,9^wPѸ06{:O}ԔuNoZ ̿l)O|Wݗ^Ӝ7G_lHvD"ZDC_p4| O`D/qU axTHu2O@~~nLXXs|Ui9c&F"/!B zCgN7L!dz:QCZ4;97$x#R-)MG Ώ4̊yĢ H6S[rާ !C,pxOEsu,_C|LILN׊*iɍ(kZty7kzHBJA%La/..OdgS4)YQ* E,cOS~@8Mv1HɎSh๝8΢kι{LȥL; C LK#ԌpiC\I1WKmo2 4a_eDv[hB&v~Tf]{򢂆<6#^!@<`L(мWh #c k};u#X" 0=(թ)cJ<6n0DP6w,9zTGN65~oMc6GѢzr"-j C/Yv,Oh} i4+Q°)K7keF{TRK{A7E$ ',f1 A{<]PǯTꣀƑӃٻCKт3cWKDD4;Ő0PB+.hobM$tPgRlBp6s̥V`!b6uӪ_6T]jo/-|RlDX}NMt_:rI*ެ"̷XNxܛxah4)`n* qLo&N@T>.>* p܄+0M=  R\;pj[IGdǏG}EH?wɓ87}=1Rzsj93ŎBl6$r[_Ô *e;oPxP¡^NThbͩ)ð[^L߂}Amm3:2^̄O94=Apu@|4'}w2fdHuDկ9%s0򞷩FlOE^&\b6i<^{G1։QW3\ҹKeeP~85YOL{gKNZc.U,zyTzu[Rx[1rIE(-A[AS,zu/\9(GtS2KJD+k%@@lbHך~cp.<}g;Bq4GJgj/Xk**}TT߳ ii'lV^:)mDMPSUt3ڍ7uگ]RIr츛٬~`2AbIKL7 ;`rrk9x}fzc]0ܻפt9!s}Mm1Yd(xrJ"?&K6ʣ3B^Cm},wN٩f-nυÁDAH Mr)B`Ulqfy5 #[lӵx YM ju1u8{ǐQ,w|~z8N#PY0!ZykfAi,޹yYՙsB~{`³CX ,Gw"y\djioj5|vŗO@OetnXF?} CY! ]!>Tg1QԆ.~߮=)\ d+"{UTn"%"*K-N_=v-h{|΂nS쭜 #7Ğ_5RXLfMn Ěė@5(crq\El-f˧Kp6*~i:ˁ]EgL_2(E$Ȃk61r^%/2T\<,W ĉ;cfT6 ~i0 sB:]bGFgt.9tag͐qmIm"ܜU H/nYh8J 9$P$k;UE9SjXg|lJ] #H\kT{Nx0AŞZWF 6kS <7Yʂ nAFڛ1Tx Abh]Z"B*Q֎B٣ծ8{1iۇE:=oe{?"I2WTU6;  +ʔ&dZ; wY.ȷ:N}/."xǏ$yE52sZ[;Uq 2$hmWK:#O@x1-|[nF'yB:"F/Y/ASФ'9$_Tqz[梲?C0ҘpPHSE)_=0YѺX1s m B0Y+妕٣dį  wp vG>/gv.AdFCS˭*+&j(( eHU{~N>$qTt a._8{4&O6ˠLMj $mP %WLK*mA3C#.뉊~p Z3l'J֏>ſ $CjF瓇ӅPYW\63Um>/3Ź8 ĝ ƒhОM.@ᡬּD+93jys2K,;5ڡ\zf#t?b.)ZZ 0*ߢ3Egbd|ZjEz>wLd D`ul6nۃ/"{Q[MtWx.SK@Z“@'w@@\ڼ0@a''M܃dϊ쪐;m+7偐4f[1 *rsQ";V N<dz'GH=f[`Eu:BWt[~Hyj / r$h%4cSde_,ҳjlk%UMSvg? mv/^i a0PC𖒵\2QjR'~j[;@ Y!-l"1 e+! ~M)%ϙ 6J6;(: ܂2SԅG盉ŕNWo<]?_bWlH1 >O( g3wϋA߀EH5_AGN%lw ޛxƢepO{^C1{7H׬KfWa4̋cËB+vUehiGbx=6[zUs^Em0m%"+I〝pt3u>]&FjHRCr+-="ǓIV;86џp%W Q6W"-&x6Wj-^4C&}ʪFpHdyP24(=~&-ntLMD :(|\Z.FǡAIJ!sR|мEHiynL3g "[!|чY\ӡ]ݒuC]r/ҟ< =F j$( O -iKP8)ŤcMk d,($sl+p /6ӏiRT5xњmZߍ)KiIp'꟤Зf_FHM^)Ho?/k wF-6߄ߞ ݐS~:lAB4>G5NSp=ܯ? Lo8-NU|YBe z{;eNO2 .O#R(vO3GC\g<4MX}`œ|y[2Aa-okviz.p^#g=FdW1+-g T0h͏|0u8ZB4@ ᆐTMbS&P~JC5[ix->헻s sO]C4{ƩZލ$˜>w4\fm+z2>A}C=6Z FC^\xgXMyk*x/J3^{7N,`=*U0BS(,Xz\nI<\Ε?gl6Lvxy{b{OvjeREnR|;^;`>HS5͆+|-`$%3S-_G,vZE,rV$ ʅF~\g25P䖆x-NH=IiP⠃Y+ս 4C ydB*_D97?3A (FQp!Vʍif_G[GJFѓ@9JF9#eH' m]/%)d>vMA2ɦwܥ Nk;7"jfߛdirpby>QԎ4!ZAzvQYpCJ7B<Hw/" 7A[ nzs}sdus}c&~83;R:$9sp x)҇Mm97T`V' wa~4`3w]I{cHՊd in2ݐtnĮ;127ɵvyej=!֫{M]}J7)\!0 @6q6grY,Rw,ci%%N`L~-H@EA/2`'dCZB*c_?:Dtt#^FrH :OV{6)%]s4aEF]-tƵ-& PmVܿCwDmW3p2˪œn6*Q_Jw,+|?ay; Ρ.،BʊeXrpMݚVY+D@}ivdun_DٞhKUaWf8ݨǷAT Mч,XW~]d`VȨC"G͢Yg ,> F;}Y޿F"$Q-,[x6=%:NY&ҫ>B^-I:)?( 5EVfĴSÇO5Y# G=v qzXy]FJOJ[_}auxyǪ {2&0kYR:]UwS,;źCM (;>Q*p2j׉-//pm;Yk{4YTGMOgy:XdM'3pfwb2>Xb=~U*^A A왉fG4Ķ]mK-vں=@ÒT_ AjV72= .CDvݣ pOV,CWmuy9fSe0A99]Z~ʸyt LCbgbqSA; "HxȐ֙> J*VEhϕU0KI`[ҿjSyɌ3;ȵemce}PU_U%W0!~-ͯLŰ}Ӄ2لQKCn;ջX$Ct#C׷|J (|5]w w@`+l5CB=1_ҫ#͓}vYdA♕r (̩_\nC]7M-5e9Ke@7jI< vU!UO"z)(܁ݽ&&GAz}W]c MTVVqˠd}Q+@4c5LuI ʳ}+%/>ܴr5ikJ$GVT8)šOj}Fi%X((rTvL?7.NhNX0㉿7d!sq!r)K$SRCV!65;5.2/lHvh"t… ͋PRUnQ( DgJH4d 3Wz+ b72gma(?{J!Q %۔ H-B_DA9.AlKN7=jm"N0m&JN18{f2YYEIRe 4z %lSD)ȔCJ[DQ?O&mG} ",MFm%*MkϔUO8r$E8? skHɡh¡{8}#>hԪ^rr.`{AR?ʼnu0ea] &ql@LfoG'jg"<1gmq T̠UbY 6}U 7ιZCtq#. baȅg.ED%%F ,:cLY2/j |/6*v˒fidK T3#* 9kj1ݠU/s(NH;a64p#7A"ov,=Ygkkomx~vfк Pin].> (\"+l]lm-~Ɍ*ܞV˘%QJoXw})$>=4+fX;N?S8],0*sF9l9nENn`nS=^pLu1O..m D_ދ]IM`Io-Vs>V &͸A&qYKFdU_u*eS YܛdmR).ID D3Vfa`#}b0ǂ_3s W w#;7^;u_DX^S'oxNL$nbˣ)fd=o7 1P}ͶƸVw\I-* ޡ(]lJ=cŲ !KIskrIC}ct4S1= 50]QsACG"ޖxK}FjʄPe#\ +,0>i.H/\}N&po}7 riv"C @鮾TnK Ⲑ@6NO Ӎ 64dnnkwGXSʹ` 5)Ypұ^ {om>yfSz$T|7‘+%m+ 2#X&?An+ⓤhUzUu9N$eGr^HK, ٵgRz U @a PY}$ԋ#` (0vN#M qoC,:(>]NhV:%%ޑ_ۈ0sIwK2<\yDLqi1'|,͌۽fMs.;4YZ"AT cEKDWfym&n_3׽(q[5~Qh`(NLny7.1B Rpl0f4x;u")dDP_X@]dR[8׮@ maSOpԴDG[v~)YkUΎٴP?4Ϊ@-JcԳǑ./zh%n1wҦ]ksc~{V~I),Bu`mi)JOkJru.(33@1!hggg> 2b ) rӹU^jl */4%.sBGƞUq/[F*hJi 4HJWK}!~yICfHGN4CRx '옘] r Ƞ\硩t>s7kLݏkϴ:CBrE`£rk=1kSd!KITS&)U.?+i'mbnK{}1-b^uɩ>^|s[g$³;Hz X\7q<|I JDW"l*CZ* fH [ppa6 15O-lɂـ7\&mKg'+ zenh?. њ~F$?:`*2kdʨ*jIA$ꏮoch9\kƶ3k62jEٞ܈o;r&{UȮ@;@~ ᮞ8Ѯ^`2kYhq5zp{ײ_5*3PNKfi(P|s=̊FrB(jE-SKKMS?,Yl\} @q'+o^-] ül(lj/H(OBÄ@J첓`%vKS{ZLT`:2ݤ.Zd0bA|VjPD4/r`%&RR<9}GA"e"㣝W Q/@h6 .F0ĐqM9k2Ԛ1|P;X>ہ3O.NϤȍғoeZX2BzsK- ٞ;X# c'cG p`@nw(M2m鬆5ksI &į\q=PNGvU}ju7Aŝuu;?_; y\F g=Xʭl9do`1gyc:=CrBD7S1_S`^FhcLڅfFn޶ݑ(70B[,IR#3=k ߣ1.xۼ P֫N!:h46dpKdSL27HŃZjnOކB_@9I=5 zWGscܤǀsLX @ߐǟTJ!3JŐ<wӥtU7 ^m~lOS ݊Xq) 0ٱcHj42,bx1?ݧd L șrV}Q:S[P^G4W'/9nR߼@#2z XZc)JALfV!DG>-f(zɈN&*6Oj0ō-oWTC)ՏuVgՅL +&!r$tF)֝f@ٶ.D)rayWE2ӡ#A}P%) P-)U.q$f1٦{VN?}o"(4(>>>:j3t(@ Wrӝ[1?[`NVb~[T3ʎFv~t0]%8>-r?%G`} N|WP$U 7OfuJ|za Sht4.J<2K1WJQ4V!7i%/\}RRH:,7RVsEe+&5snf1dla?tD+D=6d)^&{0͆Ba8l'2%yc36uQH֢`eGZlD[I}a& )SB ;~.AfˆK T/vaùbjѐ+·9>7ذ?-pN=?ea-f5fI8KhJ&{!t@? aJuy%O:]E Sq&x|t_:G8)^/9NRѕ=ͦVoM<\SE#dubߺf AY3UJ/8,Rq]!fA9U"Ҁ$ŒV,'=7?T갭ϴmFs1i Of8"hŪݔ5VPX/@5߭bxri ct/(b81n}r.uvG;&OSޛst*c_')+3pŽ,oFO5[sYG #o.u@-OSl֥2<߷-4#zW+I#_3幨mׇg0g:$G,J,u VdJaW|NH}-m;w͜(B6qx_w!dt3HXKcEg#ld$"= !/oAoY!B$5@Ue >b03=j^%PK8:wI<9Y(]eJnEp$ov<%g"xϴ{;扺–w0";0@Êþ` :2m6m>Nr$ kTy(xfhHʥb rM/^dgW͎h!os牶2Y(7˷<èt>I 3Sk~ zƢ a?#/#s`HNƒH/&%NQĨmǺ F"GpOEFe3 Mm'4/BzIwi?=N4[pLf ÉN;mwhfkԜ0M=Lf 5 DdTQY{4Mu\6AɆ|3U|Q%v_:pq '& i[C^NPRKqd00UHf,-Flrf3G{e y˔ =-.wH[,5Z%:8kY.nyx/3|WURqsVD清&L¹k 1gˤ1LCұ!}t&GV!&#ey^..{YwŽ4`jCg`lLu6NiۄgXfd9E@J]Mk 5ɓ$o|_-c(#AC\ ZK滗 iU"V%OݿFq1xku&9Pf:_厽 ?t#G܇?jqB`˝ ((aYٸ cMчPmPm& œxYd@8}A,K8fk?fYyO ȫ-Ƚ p(t$Eq܆>;tUa\-d֯4S0!X͋2;6F3^T!k (&m'`e0WXd]ϱ)`:d19/ Ovøf-FNWߡ`%+Êars\d)p8Ts3<Šs@s՞YwQTU (zs#^`/oF1L42RrrKmf ZҤt]TPϑ_{hD=T+1g)A=m>AɭohSVSf{M|C+tO'vr燏e*pLrFʣᕫ ;ˆWH@]Gv>aӂ̒1͌~@|f45o5jRtok&2IEoj_vPe <3&oNp`= 㓺ssDX~|!k"vO FIq".cˀ?3:_åX-|ιQV!n&趦@۲A "U@g~UM I~G&J- &iW[SUPhфl /m<;Z *j *VO3[d% /:-ޒ43WWaCZWڰdjGbˡG WSC'rgFn!-̀-r`z;Hn7b(Xx2%6trzLd(rcDwFI_Ep̣b,| ʱqPxY"'v碰5zm1  ۭVX+~;Sf>2~=n "~K/Vh<Iu։e<j ,ٿ#PwPN.a~HzgoN3lH}hBwl۳0[VWtSGTFzg{hG}pșU_&x8<(%8[A9Op%<'jܥ"eX<mg\/c M%N0I뙿Ē7Q%4uUqM=q9\2Q0IM+r*:Q:?<H-Fې>VB"[ey|"BܿƧĸ&%d- єGӧo۬Z\cڙAw0Ȝ/i?UNXZJ<+W2aPlvkLX-Wy9c]b:+4qˈ$1ӭ?KE!w+lIt]r?oKdj>s}ʚs.?@AR{U[acJ䳵ŏ!3Rr-l ۰5SaJz{ˤI^0 uμg YnQ*Qۖ/N \ `k}].R1곓}*Iz'D-E9MC4/e"̨RAnRW<1׍Mr]]Rж_鱩S#M*G n q"y=٬7B|V *!VEPܠ]ΌUt/+X?Ͻ)NnkL@%LYjl`7W>bG:Х.jLN_(pGh8bV_ SXlDzGs[wVD OdHv:9~Kkh%3.l;ie%+m22bJke-9gK!sZ1LUaSJPO8.n.!ɐQ\ߎk{*("&-M: Yŷhleٶ\i걫*f@ DpXC`^C8.;z) OE&!T*<ڦV(L:߃))qknF UID]a(M'Rc`_&B- XEϟ>9=$%ɏ!`=Bv1|؏Y$!(tލx4ki'rd)5:¼?ZV TrM~p\x;gu\# qq$MagRlFRAF8Ҧ&VE_Wtt>Ub+^'b2DZ݂Oy5FOVuʬZp@ Ryy䍟&F~[K]GM_^}u Daߜ!96[kK=K ]QS0wg8#88J.nb4O\CG;x?e&Rjqu.]Э ":Ba=&}cZܞ&5۞; lrQ"ceFf 7 `1פp_/hZjN%6."w>[Z!g~oA tFOuCd*,,m0;E?]Ӱ5Js\sBk@?tz`մv(UqAĔ . ZTnH|(9s{uñf-wSTbXO66 wꓳD!EtuNW)M#(N&C9g`QIjr!/a~sNJy;FvX8 DX.OeN$eV/E}Q^mNGI9zgaGsJJnXT-$|aj8鶬J$g݇W>q6pimj6l%reJ>c7;-݉efh_e1 ]oAl[>23j+'@ӁzfMŭӘ'vB?juI"8@f4@n'lkz"U]hmAs* g EyuKpZ턧%gv@4 $R@H!DlR3Aou" 1&Q7;̮*^ՈDt|jgך1 b0W'ԓhhj.,\f{&RӗxԵrtg9XeZh++91۝X*{?`eNkO|2?#cwTX~UA( |=%D7$]uI[Wz9nEO`84V|IU Fv4_$+f=.Ctz-25Vt d#mZ34a+{ƚy !b_<xIIK <"j#0}W` Ss چq0u)&47It >v9p /x vo:I[=%9)!/UmSAp&q?ChTtI~TqⱘLfER 7j%!刼~?`U>MY_7h5p|R6O9] Դ0`Ӡmtyr Ο! xZUogY"7مIpk07j.JtNH:gym)Uk8> e$( BX#jc'%?"Yʭ8h't *{P2HU_QRܾ>_`OGc>.3Uu9x$l v{3NYҽ[%pѝ~T=-Gwo8@:Kӣ6E|f#Ԁ:r''7, -WOmejLz#2:Y ;߬4ծQT @}>^gH. AL94uN7;!ۊ(jI*pF7v#":$:lvU.vl^Li,J;Av,}(QF:4o燖Fl7q8T;b)/̥>1`oOυ2h!hB ?4"Mgwk vi`C-[]CM.W^ Gv G.-.C0zU`:T͙FY p"ظ.S(rfE^|'ܰFfV?L-?}4Dv4A}LI%^ȌAm;>H)}$j\%Y |GfWr;ϢNbrue[TDTawՌT靄1TO1Wϔd ǀSZT8Wnpnb5Ln@ /á_`t9"CΝJַ\9AP~=,eFV1t Ifp!ny='"[~wM[q~s(/dN{57g(aŝObU,1?*lW=#NuiVdȗIh;j`g#UD 8$H^C@I1 yj\ߟPc\ƞ q "¾VSl0(rU}%Fxyy"bn@o)QLL;.]' :U>rgByLYɃz: 7oK܍[vƮQC8[pVʓyC%0%Ϭk,w+CBenm 6sqkpljGP'K '@J+6x]ޥɵ J,ox5AoA(+яgT:}kwfהmxP137xK/dYmOY$a"nip ^76hJ8Gjo;9R6ʼnчOn1}X \šhĞ v1>Ƕ4E /j%W.ZU|Ak=nնhwS"d2i]8$Z0Ő -L-ä:J;8O|,?u{Vq\K9ɬTdA(u 4̥X;kj'*$ћ²+q>z sJ_Y>p܎Sc~]RG<{dQpMP{f^hJ˖x -"ZPd3]pwX2|^X4^C[QEnZׯx2^ߔ kq!wۼFr>*(xbe͹6`c>tE2N[L0t; i`TAⴱM 7%fb=Z^}`l/4Da= ,6 BH=_P90MhIL$E3mSPpa3"[}n#&S\ !^ҘdM"4̞Pk"nRZmi ]qG)yYH5L_8bVyv`}ciA{7Ug>|/^6VʗZ5ZGn{(mbd0#8@kkCv fvPa븻`#Ʊ>׫X#\'2qĪ-0J_VZF8˘7~umhR&ѶҞ[*wKExb^GFjc{ezy1 Mm'S\`,Y̽GjSI3kd^S+C~@ʪYދGHP>;"=\hCm]lU!7XaS5Vb#0+AC̉X#vĽ0N yh2k"!m)T35T&7r!d_l:>IuB=CS%%M0KW\ jq^ A #yll̠j,d,_iбP;F!rTH6ogTmg 7^?ybMͨYBa)f {m)(p9W$gTgr3@uXBi`Swdǂ$(^f =Nd &҇#D9o3Yb3ą[/FM? ab8ߣ` ^v8)B)^(@JA'mm@Ohb:_ ,XXe>(GU‘ *؁YzW:iIBWIhe ~9jP!\m-#DT0kM+n-wJǞ۟۠mG`yž}a42TqILcc*'ks&H3{^T5'G`Np/tUc#fcWWrڬeآ22U'$e5Nc,Yq'ցYcuB)$z7 =HzB:7e%;Rd$r >\ 㞋ȺL_6~qM I!!wh#f'WT?V]h19L:=9yUW`)wJeYaMRTh)0pGF#GA>w ;x;'~[Bz_pߠFN lZʥ#_H h{sH|dNW Qo"ݦӹ H\yFnkqh\ _[gn6ɖvmF$PWp{2\PBl!)TʌRZF[ ; xZͰ@6/[c^W@gam z<~,iXjɄ!b`2oʉ8t>>چvW3^\O+OE^]Mj;.1KU D04i[i2( m| tdiݽX$Wz,E0n`nGЂR0u{|.nRus9c){u/j_XSL7G;ljhXFYJDF!^6X֛wJE-`yxpE*x#1 ʄjBh]؟2jXV箃~C߶s+-7 ov'IKbʦcͿxfuX\cωD!z|W%hW@!OQݮϏ i#A $QOI,ƩrM!oƋPφOB[ 7)22 K9K i^8;or0N@ ٜ:.|#BTP5Lc$_ZJJ(F2h&ufB/ 3'B5r58+ :BmovE7Y-p`?QB^,3C@&@S J0]1֗J8ͤBrK#HsOhFۼԁFwBes|0Ms &};81 v'/+Y{6s\7WuRPZ·M9{,l ;}GF~QdlߒRvPQ،^ @Y 0!>))[)J2P7e>//N|D1')"E܎fjmcg]I6ַgXmة&^:&h4Žq߯$${L&V rN8bC3xi%iGu8g@95X/RqEzyS4vOVDe88QʁCo]6NQ|HE nҔ3ąXLyI©p넀,]QNKCڃwdRbA%p"OUkI9.^gRêQ'^eKt60_`iNҩLTLUלĄt,I1xNoOԓ_aa:LBCEXl=:;fsބ!s8#kSJ4)\'@{MXQ Rls 2g+Jf*@E}6IVKce1Ѧ~zqF;L~M\3S̨o9BH˩8k#iXP#]^RUNA\UX;bIBl5^`x$BWf,lFg{Z|snv:Ӡ/HS08Kϯ@6K-Z$y ')]Jt1@38*3Sz7?cK7Բ54j8H^6`>sEcAbX4|0?VJP=yiAOvi 4p ZE6%P"{R0=s>)GBXp%D.݂BRQἜ4^kOOWFx+˨,=84R,W_[H"ӋQ|# [;8 p]"O>h9q)4]O5kt86w}l BOkBPRONbDcX=>FMlj3#dŠ7{~ E Qo`לG-FD6uB< EVfJ_mUA>l<<,ǔn5S^AIaZc6Х {*g`m~pX@v^"2Mgk,Wz*)NŠ릪ic ᔍr+iqܸA; eLԏ雵]ڛNKǣãY3bҼ҉m `}Hp?\ƫʫ| l_M -UeoUJ,{\jNZpVcN,rvm HΈ%ApxRp=ynQ:xΐo5RKyÂ/ǹNO%JR 60}?븜z*ceGJ&iwcRSn޹5U/<Ǚ:$aUq,12z5q0ˆOqvwbkح {X;!'o"pI=WՈ'r'(.dR4F,+:~|1g*F& уbqI\zTޖ:0x[!6 ky9Oc$hdڮu./?kiN_1@rtMTQM!"O{:NFK!{8beƫΦ5zBET߄0ik%G H]bd9@L-ߪ"ϝk71[iNHԆVHq%#䢞xXVO^XK\߾̛hhdHO9EŸдuBSЁ?mUZ`е}' Y9/֞SLjFף1wX[]5Mj&CoͲ!#Bs̞3OtrKZ{|kYc~Q-$G:Q<س.OJjfԏ$ntf_[e_FNr|\%voi<aݍոYu ; \ 991`mWF dFP L>6RWvWIF$d+)#"Q.+4x k!N:`x~UTƛ!HgO| - ɳmE[2zO`'(Y'Ȉ*6y60uԄ2cͻeQ ԛ=?Aa0>yN*WŰVWjʐYoiC$*XPYN|`Z3%75t6* ?C>yt­q`Öv&Jeat},pEF`i[/*nm,sehZcG{#)QtL jXk )i+=Tz>@`lI˕ <{L-ޝ$;X`iBrb7pl]} X#/E#C;L&pFeSri2U|)RUF3l13?`>E*d0&)E7Yx9iC%Egvn:>So>-&:O\Pq$4r'mFDㅬQ5q@-[ӊѲ/Q2d}mXDwUEI;8xPg 9$k$f8O8"viHB#ɍ(9w_^VC޳Pԓ%׵;X{}ΐp15&Ǯb]F}P]gÝ I&"RDܒ9~oF/`raݾ:M|)>*h O"'Sqqa{ҦힶFJJZ f01sm&FO]㝸eEea~y"SMurxhӺ[pv#o z"Tah3zňj[F jKDaP7!hW#t+폻_anx|nf@wY\GVJjǼlه&9y+yFtTӄ+nV3)f菊*N#DwoBVpbU;$/@k=f4v$$[NeqEckPSQ갬t?>. G#//,Uk*'B\-Mɤ=Ԋ93|bX7&5'9FoQ.;DVZo`I+1#eӑ NM*Chi@Y)!gTaUk[Tkv|\j]$s<QĵS(|ՠHRpEQNzY;MNY1S"о $nN>^Q};4 虩6w-*L7ǷUklJ'U`[^Ihژr+)./浲(ҲqGbq?ͭG""h-R|-\7f DRRȚ[o\s/ܙ"&͎-tu7sw>!jR'#%?:CK+6qs稀ڦ|L Me\Xn=- (zG`x=DD;R\?ѹ|{ʩL܉h'w-1>C%DPTU狀b1OMvUmZ/5:J:=ѐ:v^.qZКOq"5$MT|3p|y8[a%O: ̩2]ǣl$וqS=1Pt_=ba@ Rx=IhBAĞsގ%H7E<'2&*ցӖ "C<^9X * 2L i%{h6"aM2YjuL[Ym~b?Bd r?N7qV9#Z! ?rlzGHSV-U/"3 c?S7|gg$׹UXk9ۊxCq,4g;9M2c l+014ap"t+**0W?ӣb?Ѽ;T|.۹GqF}qBOek3'e TJ}J̡6=VCgd& ;yo*cb<-* 4^&Z~ uL[P3gwj_&6%JGA<_b]\0:/@B a|hєp˺N22f=Ս Ꮌd_f0o@d3UT( fFT%Q; wԺxh$!q8ELǛ Q E AZŮPܵ\+1jY[1{*oƪb;.v. 70krolEgOSs<[gUe0;F{yvD*KjP$ O|󗲴xUlaw #bdžywA\oܚ@=14X]hC!©M7F~VQN'ҀrѡWf*Ľg5A$n;|6nSr#!E>x׫/a zq(:_D"lu@dvr-~I z^v9p$XHM?uZUex=: \hg4=y%_B$ N6*hΉ (h2xq@$G$*v(ae$:RB87h䏐 m$A7-miM\9}neƼ=H3UE.cng!cH\um OIJ%/y- T+1jҾ7>ݠD{X 'W;"?:1,dd*` M te7aDZW*BP>f/p->bG-Iy#1o#lFhq^`AVb qCFck :*7_GJCȿ '\O橞XʎbK$Ϭ}CxQzMoq׮Fyfm\@Ӊe3NE055z5bFLo9UֺܳS~X'8@Rw\A7Ѧ2j1᱅ q)XHe0}õ}S6]7_Qa7"$37瀈M!:2|pQŤ?!H<#2qԧ~,< f&ړfm^Z 2'p EԹVX`<+ܻ%0 f^ n(@Dx nX0'|%f ۣ =9]zG;q:`َUw~1MQXRpm].Zh Tef!qu+2N須5rE)c3>ʘf{Mq%_}[LD)VŎN OA SsWÉz*KiC$,vKH밸=}+H.Q3%wK|]K0B 0{ͬϕxfU\P rCE3mELMuv}upH{M*`]טFgUGJLN- 1?dCZ>le;3F8!F,mZVH?XS>2gCT4e.NVwx!dž~.I=,4 IE3ی, &d) [̊-JU#bT1o'Jaى 9{,YDcZ V͙wJ߀b串qLEOCj8M՗܀.'J#v>֓7x{skU9Mgչ㘓PsP^ZAo̾k]dV5 *^Ϥ; ]Cb&G2 7]X0xyo'/po,{.&'4xhS*FHNZkӉ@b\ "(7-bjSزv2PDӴb#orQʦ/> lCm֣J] )`uytTS _#`|>~1Eo:gj@Xj=C;hspLrMCroT5Qs"׵ۯH@:WȆ4o Oan<8Yܕ-P`+G`nՍZUqBz6y{'/:HJ}gQ~pѶԕg?=F4;Ԉe 7wO6zQuwo}ͷSq|1yS׊H;} AT}4Y31/QFH'8zp!0W)}9 fQ!Ð%HcU rM^aC`ڒu'{][ܽ%!'׈=6N"|q9F!xasIQBd@O2=D<6t>7nDg w}|z[JW sP ΖQ#¹65?6.Vgp1tqqs0(CGYc15 Arϼ<9?^Ua5L(h^UnARuu:\$caE˙֒\ K'C\B O\}2VM=Q5Y!Gg=9fx}kyyz.B}*{/s8l6,!s&%0A:;a$ $ )dlלXZ3ud77j3sQ/R&€1UbsδCakjx7} Ύ4r@H*T^pɏ!J~|l/8+KFm 1L {GuLn\d5iI+e2:{*gٞBY_qȌo-RwfIKA 3*cL/\#YaFi5u$ FEOLU wS 5<'aNP"?4} kPCm|NH c+}sKU6e!X!ƭsZ MEMZPe- Ǒx- 8^afVȏ'O LxY4BYHC2@F٢pZmЌHjJvxɷ(M_@k !֔|]1ày`Q. C^th铅CKxn890/EJDy F"u$a#t <.lDb7-1딖AhшKv/[a kTh"wMv U^9=,gRUwrǴ$d,Z_7F3/bTV58 F}9Q겈,hFAFp37xzO&^<};UZ w!J8(n̹Elɚ\!iUtd܁ b3z^Or{ {ʝ3xGH6̨Kd@/)z rڐRŲ:b-XO U+#+׀ 6%CT' M3XVo+~W8 rz̛i!h˜4߫9}ol}cjI|\#6fk 6Mk׷q-J=2+/Llݒ}⣷}s-5y 32 UM/=rj'JCZ@cG9cU8oC96? O%)1F~W.މ`"=ll<BAFr!4d%ncC2n-&Y=~B%/9zLO1tAnt\F %))fC~^$\Qv#} c gȕnU֖\;^ױOMK4xVEYԕs"!~]J|{`nqfݧjV;D1WV?ˇ L!ﰘ$peL٢`4 D-I.~[ot̆u AX;) Y>;f\`X5i5y)rE~F䯼Zjx2Y莧OTNPzˆQMs=n!mh҈+X~PԆ!f>87w&gtJ+`uSv~UDZ oucGc+= v^Q)W->6㛲Pp+T29I슼TBotB}햋ԁ|{rw|/U>Nɂ#A,>Ѐ޴Al7GJ yEwD*E a|(nM.6< iHS IE}l0pɋ ebHXG}G+FX<0;u:\/=SƉiw;"uTzi8L8 𒅡]L#H$V/^91-dsD9 ]Ny S_E_R-Cd& k挬I93.ЋUiЅꙆ$-|)\ Y`Zj{#%Me$et fR!PPjڊ(CY߲hCo~-0YTd1c̋g|oGmAu-_t=ʢG!&6/QG$i9`jȲ/|#Gp(7)d ICy@ruEzڀԓwe7Z!nIjdPiQgq`I?G6qg=ºuYKC,ޅl|* 50H &Gr  |U_cGzaOH[Fo6FLU:gOSBM/ .@xٌmp8 %m!ԭ&ecx9{+qڭĵǽ`bFı-U m>=AO5hkCUf+OWsпd(X(~܇erXSGs+بXtL"'/go)7y`s&B d+ak4üyO7rOݒzw@"{A]9zy;B_4=Y1\|iAVjli{=/8ς"ĵqvk1ιB; 2Ў=z>U8~Qn9lr`sTv;5sxxGSQhXeiژiǒ8I/)a=-bDYA%h+8tp47E\ePmÎ➻ \ЗCPTԛhޘ,[[^ ?E@Uc/]k_:4 ?|z}g.vJLq`$zX:{KmJ|l~ڳ=2wm)y?oS:ky l+ؘY `6MMkeڶ $zM^~|Wi-)?Tfز"b/;~9n˟IС3:Gs͇Q.5T+{w '5h ɖ؀,'†6*W ^S)ٷ+|i l[+ӊR=rm*d }b<-t:b㨨o5;`+%b)2e^aEt<c*:]dl/UEly]X쭴M(MLpe6ZtqXj0]ף4iC)+,:3/r2'6i{MsHVX[YPFܾCUrc\Ϋ%"ISE@y.ªQQK4OphECyͬ5z\M@ WxV X҂%6-!cSpz@ŁY[~ 0la5˕^Ǿ[u}K>? A$Ҧ{=:$QI#O(Y5U;02~Y7 &'TY1wpn S/߂':fT3V]7Y\{Ȯk=h +) 콟\|겒 F^~D j&署_%IJOr?:d/ۄ6/}oQݯtY Ƥ/c݌:#e8 Զwjݗa>`mӳW~EwDAHSM5(g-|.@2qziҠRUgکxҀa%Y+j` Ϋ>hwve9HV'TPb8đk  cv}&Եr~$NF,mR<|, k3Ҁ.KB3kyEcq9Ss %iD 8!Va#g(Gf bp,J;k%>`i<˫&L:Nu}F# ls3顬rk:}&p4}i1 {)4,SUrpu%"~OUp1zSL턖 $X?eKpxW4X;6@K;ϻ\&\:tXH{gT(/4n-("h7Z\5zt# rd"$c4~Tl;&EL  /O7b C «*ӊ5E왏X<+eĄ7#=VZF I yNܻZQXvҀiS-Ag%j}M??^Q8f8˔<~=@NIӲ ASM/H -ܶ=eJ~d-j'xC(] $':F4P :+[q! +{;YEVB(fs$"EA{5C,+CRnd 8ƻٖvccKS`*5#̪k+m~dѠx~0!2Eԕ޹?!; zic0 9K_'L֬*A7+o@k2PuGVJ}+љ8KY1yMZ"@ :ˆZlp=97}9]٣Ċ?&jo< z:"v2mvn;o!B3Z@7l2#tep,Ϣdp~ ^0&^vheS3.C-G"T2c/|TpYlB7{,+u)6 rMEĈw f_B&66HtK"\àqƸ1[(p 3>,@b$4i![U5 IБ!`fᣏVrtm7֭+]GI]iЗ9OX/YN *k4ïM=/=$/(]_ Kw%f|Li{m-[H )ΰ&fs+"i[/RxBʡ\L ((Zh)-1\jHh PĽk_wE2oϠIg"}dwq|Q{/Mj, \\_yb GUo=P O"uKzI75D 7r >yhF7q|4lkڪ;J>@ݻd Z| Ataof5};1).b9ġp˾`r3{qw\Ρ0G:_-x$Plf3zܮLE*9=8/KH?UjZ8g_qr|!FAye" gr ^-~%4kA月scTQK|PVpL1A)nIq 5N.Qd\m f԰cCU%wv8uTב=0,W_+-B.1Бl\ rf48w8 5iFPK̀^ߪB1+9V1{ Z T9Ks ?э$]G8Bh~- `_@ u b߆\MV|OTXy!9pdtXHLJw-҇Jw8% KRgAodK.o:6QQ\`j^o[32dvbOY㿃>`AoΥs!}LF41kJDt~DZS_BŲIm*R>j}P=bp55T1VU8c£[z Be",E[hn@LG$BZ苰ʺJtl7~tkat7OD뜆$#{ȮXqfwtNh!$/\(8Ɉ?5 7LB`(kWx ak1 Ş&tx=1 g3KW8DȌDdDHg^'w'c"~$$N1֬7;dɏ; ||&,0g:}UOO3VlEne/m/ꢻ-ODHa)W؅gU Rמǟ6fK㑯gdAΛ'~R3 +~̂}^>Rrm%ha?F쓙fϏƪyRryѾ^^U$b㷜IyWTj)xP(+?gEE:O,B0l\U){g!Md?lRcߕ\7HBzT~ E[SzsBJQU(bF8cB6u:jB/Uf]Axsp!ƋrC]qD_쥲7)aX#M[wKunMyȀiMH^da.4@7_HnZQq=E uh5u=;6 o~UH]Cý:w "ǽ}>wdIhi`Q 9½S9RwXWl>%5b݊62x1h^%tJ~mC/-)2gz3{U1Eh`>ӻ&>V̓@@Y{ɨta9!I"0>[<ն\6!w` |י0?/#t!Ō)3W7d\tFW=ývU9G #hQ0pՈ腰&Ge]bs~jKg8rO6q@~2 =) ԫ:)v-*TƜ%stӒ: wdZwghv+i*v|ٍsM-w!0}zy믏~x'ht ^[m (|LJ`2&  ^c<]5¯1&ݡRdޞwdﯬC<0%)Άe bi)gw֡|R=r@0㉐r{T5Y`\8^44>8kHP2ʴ$\:nKci7&66֮o9)[A{|L+,:SU||OC~n;q`x՛ i'XNMv [eKbU{u tQ8H_H_tW"O+߳,l7e):,h)ߝjǁ%>8QFSi -`):iCh/)3P[EtDx?S*N+8T!KyFj8hoDg4rȲyg8`A9z\T ]++2GzAr3$K,ϼ PX(Y8T$rl)n !Txbl~lETr3'b_ҡ^e@uZ;|ND)Md%(Qִ¡C#"Ԛ9.&fq %y\pikƮKZm!wOz #}*R 3EmZ rla1ZjS8s-_2e vSpO'@+:aJĤF h #^|CiOi l)*09,8xr:Cf^| ~7 smxes c'+0:IAV]$yIY'fjdqWR"V߭A`ɳYo*7<%^`a1 tNZ5 DŽ2%=uӕ3Oyy29`)Ь"SAlkaj7UɏGD>W&d)bw?bs}Ӛ&3vmz)J R@ٌ`,{NҁxL>)A-e?nIc)QzS;EUnݹ*ʨO$g~Q$x5 4y詀jpK_+^iI`2CKp_e)(`ZPq}aԼ/[U=g?>uob Q=ݞ`0&:ॲ ;OB] \c$øs~)g9xMimĉ6 x=O;Jm,7Nk=n`\G c\ U%FD6O1 %!_BimrS | HB g S3fL%[ =veƷr>dLw2ք0G?$ݼ,%io\knzعcc3|a9̥R I ]o zjonf^r,ʩ,:n 'z?˝9P,7y8yYnWUrn*4d (,abisC}4'ZO>yuhnY9 1 ]#osr$|z[mԂdiHӦ2ʱg^ڎZBrƠpO5&ɪi ng wi=u @.kv{i+1h{@3m"ߖ<a-MESmUܻ_FXܓ r kQK' Q K:/ j 44F>іLndn ~ cfe,Ry%y\^m;I *#uL<I* q<k8>,URaD[ ' Z˽4b/9< RΤјcNK\N5BRSoF@rUN4j{XhF5/Π>˜׽A~嶯R+RѡkǪݹmfe#4ݔ7$~UDδUD p @v%McO:wt;ұ1i$Ԛn ƀJz]Wkbig& ?JG#Kn)#t2c v˚7fWz,.0аn:P}"n( nI S?w?h'0 ہE;x!6(~=Ӎ{{ulr/iՊ䵃ɬ%e~ԅ'SW_-4m}d 8B^c/4#E,*TN}DFH޼n҄`̭XRa/0F?.69S$AƋ6,׏)GEBA^A0Iږ%g&@A\'9)M0`ATh*, Yfi't4: HeTV& <'|%6Ʈ:a`eZ F}S@ WtܹXtn<D1): ~ŵIub8O{(e=VJ`~u4ԴbD-ġidI:APQ&1qr026}JwTqhFZkY}nGy+-Q AuD[>wV-1nIW0=&]R\/֢5 D@il OZ.hR~ѢVxzKw\y\ung sO|aˆ|K'~N<9 G˩_ƯMU'8Ys)-\.zsf4p^j&_ [Nfp,~t )8 UrQ3 (;oǏ0̫^C uGZۓxH@D-űˀlA54(QPJ W5P翚L'r}՘?_cIlt,h$Dh \i^恔1/d7Ӣ(''-IQ^<>T2SKCu#<8dYXI2{,Ao"L(2YB(@T7|sӢc.|j 1&A{njy`ۿxПmB}iӮԐLI|^ո~I_'{zS=䐃XΛL8?]C~{v,k",޽}**?feȸ .@C 6AaǢ6[y0|VFd#Sso]npw[IWLw '(re>F`Iձ˿|~t}n - nFG>_l]YYס]6D] K]IaQ>,Z~Ui2X2\E+Z(bMiaP?؄"Z9z#ȗdxovΓYhQbEw奏(NifGe>v5 r !)|h%@(a[z3ÉW$}vTO]Ԃ$$i CzT @H5r`p7aԽ#b#N,+"Z0-x!e؝_q!';In?o%p-U*ն"6r"x Ԓ^Qֽ7Al_X[(Bo . leymIRוϬTZGo7tM^{U6*LUOU$ c+x9+V[38Mw;N~ѱ@~92|Ś0VXiw.w+kŸ։'|ou)wݹo@IȞp2,(T}lW*.KV=(ЫR&· VrRu].P]bmD!-Oׅw/7"PLRv8pv׃✔Wo2!dXnsjA'HC=o-+̗o*NoZW7hvRD1z]En;(XeIsX$#ܑ$r_M FS\WE9}!t.8FstB`V0q)uQzOٱ7Lj `P  ݁b!]N_އ1iTG fYp #RD͔?"fqY >=N[ /E=Vn4;P8O>-V V `Ysh%jɉ^P .=dν gGJf2t$c-atAQA)SJG+Q򸥠Jd;Xx)ԤѐQY\)ǴM 8#r2 + 8у<7vv$̣RAM eʂ eGY,CQ;Ma3Z P2W4  C74MGG2Kw N!!vVlya*l%e!;rlzIB> tw?*'¹k O'A>{(w)iBoնlOվVD$1PiI>mȲOSQ^_-@4,lCC50\C>VfYqJjlZlN"Ew\(~r9nImI.ԈxkXuo10PhEȹɀpG5G5"l{,' `V6b$Gt;ILΝ=n8i`9&+r7*BF lm k DgC̒ e;!֋yZg&Ӓ\i矅g}\!\_\a`9v,ؔj/?b#\jrgL?V4''i3:Ϣ̭"޴f@CÎ?M%'Ί/5h4%A!J +$0k6#*C `o/Ⱦ?qL ۳31N znZJg6#ZnhA21z"gLu"/b?4pŻ+"?;H~/R!@R~" `sejj<4O|SjB's: QBt0K}7]gOdpݥnLCe]giK)ۤk {+(f3)M"kcCtt)~]"<0K9G>e$ϯ6x; $С5eiz; 4"dVBWV2u,Hkdj1$fNK>pyjv=_͡P8jE 1Hnc%(AK+=SEI;TD'GS}$ו-Pb2)nf p=V8seGy>XKWDH߬hqT},wq~m.Cz;JxrD˄$r&MQ2:`8'xUTWxUm>vr@t8 6"bt>!en`zgKB8|(ڥh쬴?FMﻋJFiweu\2s'i:AH)c K`yGmἤt&c>u#*t2'W\.ET M$ԟ@b@ԗqa3sc]r Sl!:]7SҷF/iE?ȧ1M UrW̖OPGL vᐋ*Zh+*f&DŽoRӌ-o39NDope&#bLүVıV8d~8m@MgԔXҷU 4u^I Vt&-(sy:O 6,A~"}yYU) xuɌ 5He[˭B@&3Feރ3Ǽ7 +\#mx\(谗j+έO<"C(C3VhD{g!ެO\vI/i砥0{tՁI0jiN`nL\mxVM)P ]v#è#N}* uFt{s3ci$vTc(Hap'IQIJ9}&X+(<(y9[8Rh>}@"݆M #7D4dU}Ey K2^ގ>\zd4ZUޘºsi|=yDW(XBR#s?N_}BߺcJ)3ܱ E#AS#aqXה"o5|dڍx0/KNnePN۔j6\^KJr .A3Z4! +'zۄHtBcXa[T}7!p.3/Čg`PEqep,[2Ҏ5u G玌a ~qLy ĉg2ݠ A^}Rzmr$OR!f=87Gl}xofn@@9@C-lm cJh_A<'/)*"z;>ݜ'lNJ-]T|X{QPk sPWvy;/T2-s£4,Y̷MؒiFu>:h\fV}0ʐ6RmixV.*_G HGxK[U-;r 69恰2 :mzU+ȀZ@YLa*0i1M!x31鯂R5L{B(u,瘟4\ZaB;G27Ը w1 gC2 sߖZKѣ3}FnJSt0J`h%Gf|QM޳%XP*K8q5f+6{8I S8jP*]BaAm2e{YG񏹒m.貀7?))=v rͼՊXA6DRR9M|?^)l7?6NA=τ&5>"Xf ȾPorTAU#CǦRzςO1fYmgRk\l5y,`2 >ATDco|B~Y{-kš%y_360]%Y6{Z!nazCw aMzAS7^9Pf7a-s@V8p:Pn3Lޝ{F naaFc-{#q6W%珑;$i\ #V3]MFxηkmÊXHa /:; șr8'F&>Shcd\!,}͖A&i庼_:?$T\9o")sS[@_ }*YP~$R`S6tn{>NH/|&s,D2 #=֛MCA.% V_DFjL{lIT7QnTإ:SPC@T[ruSmշԈp/z\Bg2LwA:D,@u1ݨ’9ų,k$̀:͓]e[8>|n@xZT.L|@.Ulw:Y)"ҚפDVsyG~+,lVcg.5u3qֿ2NhN3,"oN\[OQ($Elp$ͨ˹כڂy`B"-KTI^ +z/9Q~HL\yh'Ѧbќ8>rzK%9 <=O#lE;0רAݑ=c 8>$Q[M *R Vv fV &höfJrB~l '[)W[3&8];d\qALL>(D 8~!J3'z ėΗCډHU_VֽL6j:qtƀ#jd/Պڰɟ[l4Xi^"ҙEw ڐku2{!QK# FEKpsF\t _=ekvE|LBIsO\>J]2gRyyT! MU8Dߎw+dK*nò&j0\;R#D')yܝux}8| l?G=|p===U.hIZcڪ* /NBg5/xW%7;$KF|✿ k7'&0*NcU-B*X}gk PE W-9u뙘j 9T*rTl-lLq#KM_*}AS1;[ZiɘC-ai :w!R % 眇WMνll."x|7kwcw"% SL]3ܒj AByQi ;sz?mv? ੶\c[iY[lL0qEojj}u'xZs.œ)FUxDB^e}(TӯŦܝkReDL>\̹~̑y<ޕH*O0M N$>l">pALBDnȆk{sp)baV&gu>_rtԬA].peṷ4*]gc=GҾh/P)3M`B)To)$\|l1ᯥQh]KYPo*x2za~JtN-M} 6̣ɍ7[ڠjmGFo@a2<Raq9,V`wy93īb;up1nNr |w5u9 "lgx_doGβBи U>DW,\ % j0 K׹&]DR Zt;goib5<=lH1ᅉM:c~M#ghP.w{@y^w,ӝf[$pI<Ԏ* "ݥ/K:cMs3ss^@ռҜpz;,`7@+o7z0m7GߏkGž K֍Y"ݬPa6UbG]%(7A쫉0 .4ŔwԤʼndYj}UxXoT˶/aŪk"&EUQ:*'Ƃfj1PQ-vqa)f7R/{l!)2ҕz\,f7|rJ$ɾP8=D1]< ){G>-}sdUFKjLXXty/CkG]Vi.aŰ6 ͤVouYtl gJ5o0]BYUzӉ>'H\˚U]^}iZ~?vւGV?#ƽz oώVQ gQ"j\qF<;S̷FG3|Q<$%?yI.l{\1BrOuvwlՙR@< 'B5e& )Ius1680_d[*ٕ~@aI{d;/ߠvvoO*wjSHֽH!˞_:I<|SЛǥz$qO1h7JB71oy}8dPNN+Ԑ B 﫩d[<{ GIA}f*?3$O'@Zih6սX}L+>Uqڣ6[/Ɂjr}+mn8^UZDАB5zMxO =Пp!ȚAhz=~*(4>(05~[ XcܣM/sQO2 LnOV5xIB i_Q7Y^` d˵Rl"߾HYފ)M\ A>8\O7JdSmsZjø39QݙA(VYbtnn~<C&c!h܊?wYRn<O=FFWnӔA5ۢGp5r.1HIM?`k>JX|`˝*,DZ]^ х}4t؂9,(-UE{uqN_&! +Ԡ7D ׈wzSCY8dF9\]kqE䮕.P6RL)Q0zөG{L(b Ήw2~LYCZ14k Obb)רzToy-)SFx -rXS4yƶN\V{s_L_-V,+rb G7U3|ӑ)Sϙ(q^%S [?g*aKÑ9Q׉'A89W_,zTC>]3-.6] ׵ \Qrx\LjksrǛ^3;'rmQx`s/0,ۢ@)8gA>ި>/^s*noqĿ7Ӕ" )\=84Jhw YĪx/wlYw  Q#@(^CqU\\=H]|cd >RRR@ ̠Xi>fĶSc|#U^E4A-BS@a$cub !:?=3GM`k d%X* Ai@+]N^#%>6yP=4oߥdӆ_o?gALbJ#I~Ha']0Υ+P )pG!j3sl]ub WSTZ$J-S6k%hQ3[D+ g޿0#+bz(cxu@Z\z(3C^1lf >%y@kVE#iiY s ʴ0T?tgt_YS}J=svm3QޙfR|xF)ƈZS+ s?y2oFe)g Mr 媹a:p}hDG-EXywjٗx\SD} ]K>W$S#%_?9Y`/sR5u]Zx3vEᅦ2]d*fP"aP&_BD+sT 7V2EB{]4ZtqӘ~>.%o:g0'0n~2`q͘b/|&^uʯӬwWZU^+c"yTM2)8e)M8@vR+ 1X@s9WO Pt`׌vx{P+}_^e^ NIx$Z>=I$k^ca$a̧@޶>{3YӔ8* (Z7__V_R ǾEEy*Q*KIkoLt ӈn()`@1;(Ar7o!\sJteJB6=a.O1#@R{_+0o%q1Eqkv_teYUa0k%. yWPC "="Y p|d fy $x+z& Os&Tk@Eݯr"/:R!!`gytЕSۡ[B< h#Z7 EY'wt&Ҏt>K H/)qk4˷y4 U -]/|BYvU|xz*nгg=%w(uڧ[lEdVaWVYN央3˽_~ ti1q1(#tޞID`iOM }j)*CNҙ:%!^Ѯr f ׏|vW _o-.~յ_7T ؼ%c=<2=:$zZRzP2]l*)#6%ܔ uev`ű 9c% (뭶l~cڥCz|1m)\p5^6HՋǯcQK^i ض$R/ۂW2k55Tp{OD컬JYpUޤ-Ves%o=||Hu@Q#aְ)d4s鄃`#lE~siͽ:Ÿ%'Si!2_S}03.gE"7ZU-;og5o~-Jxmp nqN6"45D8Z_#A6UCGU?TOLtVQT]]ׂǻk@0JӅdP3=2+Yik3(H",k%TP[oX7C5N"R$104e?jK1hr٦C5(ni1eOсfVX(c)B>g;Gowҁ1.yeIufF!( NR?=ۜVO43oӇO=B;cSK>j:EE꿘e6Cܾ۬4IIdoA?k*7v–V:UJ c1= F+Ki}2j5s=]f1qwx>;nj&ҒN ٗ]1O6UeopF jx,3;Zُ̃\_,N*2Yć.-Q6],l?WMլoa_t*}ygX} wWz벡kG3W "mƞ2K^ͲP$KeFWx)hho&CSu <2%JYV;Qvzu[qGv)s aA;PWG [MڳnZ{Kn$~37ǡlT|F0(4HJ#:u6 X4<.mR6G-s< >}l)cqc_N~>kaB:hp{jS(*0Y%#*Ś5szHb>8?[A{M͵5$n`sm tC+W ,RmXd12r365sJC;Hk>Vw÷}QKE3,2Ú嫈zWG(m.N" M=jrTED3ͤ@ʼqhF {LRHP˷S!ר@m8}d׍ xLh/: $c}XTҐ< ϲd~\X.hs k 9 ,CUU,hPl1kh:^RIn} [,&v2Uu D"v[;e|vW&t^!n-ꩩ,w9@WC6O/FzRʖ!Jֿ"RQ_&T6s\ ΢ áKN*<[IT 'e6c+[?"@"xki뢬n/06a=ڦ>-RT4&m8qbpI{:fލ`&hF/k57>' "M).5&J~U}} nR\gۜ+}vj"Y|۸"ţUTT{6p"^#ݿY*#$.cM: ]w()0!8-i7z ID:L#4m:x'OA+9LSÛ^BB( I@f|"҉BY zx2CbE%ao=:q؄oYbjfd. O@> _9n;>θbI2ܗ=6MP'-b(7zƐ,sg AgLp { N)MXV)O\b}zmbB۴cC #A ƿ*N?A}}ԴkT<2HRx\tbf]Q= ycks Z?0pb&4ʝ΀#5xJp_Yۨ6:M)ĮFN@YG!pDRVhb1F&+9ijB:?LO٫E -d'и}%es:0 PoxzzF'PVH@V>Ͱ*UjJϩ3t5X `Ęeԏ,PQm{=_/(Y^`B`tO,Ý̙'YZ)fZ=픷c@v$%7"Iߏ(ag*cY9y"( xԭPc ы⤨LZ-;ʸB>0jJCdS)IiG {((/k⁀?PqRƮuIogPׯYLe=%ѣV4?MuKocMgBwd@e Rj{^lN 5SjWReg:anV1NMg\Gk7s"T{ yrT*{{Gf(<}=&;CF+ըm܏DUm-R~e)%U2Rh,*rOZ|jF毯]zIisN^v00Ӆan^Nc__%(B?2fAXu~u/|s)gʆ-iH$:âjp(Wl|c9>_^jhZ]w!: :ILCfw]R35}3LMԥEPg%ZKOzsDvߧV/:Ul)9D|@)uY͖c15{!cq KIS{q[͜7a w 1+;xJkP/ȵA>M}وfu_əI|({7  ې3ƂK˥hSce6 `~S.XƱ+\RlrZ&As2)"ft;U YNu$y/9  o. <o:L:.7cCZ8mXzOm+ߪ%HQ~~PuV"{vUڎ?PǑGܢDP+m{Qad8ߥw(P5Ѕ=GT nG_0J^j"ÚLi#f ϋAag3 ,#i=O XYM\I |Q{Ehֹ$N{DU IٹsVe5q?FN܉> 3P|6ėLc\NIa!L@ת(?S@?GI۲IT&XOtϧĄLӛոVnڙܒG6@$#}E&feߚfpPb4B̦zCDcdR?-@70hY&}V,ў{k;h^1)%TOimeu]#tW t>"CqmbiuJ4j.yO^(Ӑur iǔLDZ)rj'!r|2 i9CS8o% ٖ,Ds? |tKfa޼Mh/ݥmPJx EOSdsmb];|DiK}l\TqbcyMFgǝEDY8 xNA0FW=cΧds $YGFesB7Cϕ̢K='AEUEW4PÒwUv*SyI_+vni= CKȿ9LV`o(nG ǁ4B$X,0R<Opy2RӰ}'E4JOWTp7mM:+h=^+OBrO:nZN2ɿ&0(14h2)aTlNѫFR4#qAYfg:80P6i"Qkz02^%0pbpr_P򮧹kb}ѿAkƥ,I2_ rͣ]ݎ(RZEA`_ 'ɶHm)`8t%3 S˾(34gmJMmF3Ȗd8 ϮhK_bWtЇP.Ņ-U%;v;ep1#Ā@.hs=3 {wW ѺJ=J]>z>TXT9EZ<!ULY争 m}B/vr+u wSUfA3g\3`!u8dtwGda1{ >c(˾X,#x8In8Guk<g URH߹Uҽ$EnEV$3Wgi0lkV(웣oz_Ja\7RCtp2QI(Rtboܙ}!5>fHyO3_'ha.opuw:[4vթdqp ؁R=s5M/ZRalM*&4mϝA,w`pWO^vlOˁoasY*S| c+Ua Y9lJ/d-JB[e9~ xМSz?BȞø XAJ~w;/Õ0n.;%_w4l\~S#+Kh3,Gh) `Jr@t]x,vwVRҡ&3|U&_=Km+&`'e=&!L jv9zJ:)u( RcMMO7 [r(ݘ16e35IJ !ئe=cw;FFh[-8]_$|@ʜoB-^τzv[z_/"c->/Z:z\FÍ*X}sDXiMh໬c͘7O3VΡB>>5m _oҸϛK 35\"L *6<дo:I=.\fU%t=nc$e)E;پNy]g4xD H^[S~dxĕ^챜vCzHs)OZd8!d&;5 EnVq=<_VIŗx.˲ ^%(d//RMsog]5!t$Fe0ꐬ4)U-Qm(x( Q\h+:7֌ 3w[JYZYFp *1ǘ+)$s}5Pطb})ILG TN&- ~'z`|ak>v*E'pX>h͛Q;AD]!--[/M 8ki,Ӯ*?WM}FM;ƒ\ugtQ*Ä^SqKhOT;OTzV3>d >YvClR(CP>q~4PO\3t.ɸZ=1m|<*X:UTy|SR{'h:$7-OqtKAxK/6S0 +讁3<~xZ^qc{MP^rE0EigN_ZA+1 G#=:YD8bf] X36 ق;Usb*GIAn`b^/,G<]9$p, .CG iGjtԌ~JrL^eFeu?5Ͻ:}ċV,a1^ <FWyώ(- #%Og'kڟj` ӢJ JE <ʥ )Pi9So0rҮluk]!]ojz@ `^3ZLXtNwʿkߊK:!8a!_5u3*B->xC7*sW~Y,k_ 8- 66 Vml8%yx!z/o&Y "STw#5Y]3WM;8FKfxT"8:USZdv#-xXvQOƅLUϛ@EKA6^zja4 qH`D0$}t̲PѰ,VH:P8Hy*3B+84u0teuoR/.h "Cc,zGkt^bjrLO>̆W*q@6V e8RrXyAâwGa'n v(w/cs Լi,_AMh~Ar\TdG{ؽQÓv]lyi!"'yiMW<10iVnب O ؏̱[S< I_)D1=~v%;N]_y fH!}VHM0NRL n,JrXib'O<|U m̱((] _,%]#tfvYg 7١pwue&ե5 $K ;t6*rP)_rI)y!NYw[QWΖ|v$J)Ԏ8a?Pyҁ|cU [y%ţ% 7*HRg]`R|Q8MdWSe±]71˥qɞYRԗO-m82LU =.kXiMar11/!-“ɬ"]Bw-5{T>m)A/'q ip{w4)i_(@Q\R9YZq-,0^f/ Ud>QG"&ܫ_QXi+ncq,ӦW _,Vԩz-F iy.G4¾KY]߯lx[E;u(l1׺pZוֹȖ×^Sv;Zs0łCha?sa׷%f5oNb^x~WLb&܆^WkOnUlXo6XaL ڏ9Hr WeP[8e ~'8~P'@9;-G)9C𻿒!1w|HZ\,cW&TQf ƃf vo0o* Wi^i򆵥Im`\0|`w*PdT;ﰃ$^I̗3 kC+-ۺl鮖잦 1;puC`ϫ@aʕZ?mYx>:2ul@ ςҾ-Y0|qL{At%-:MWW U[<桇VpT\՚R94$!uǾ,$?+Фՠs] :AXiOtQ_GNPGT~=V0)}2B8/bwݔ&9{_2o Z q]+zF`~^Ig}SP-z;\LmE>Í=QPhy!ܦrYd-4 =b_mkj4,`}],S>,7+8[ C#lZkeNDt_= >֎ܑ}GC͵Nm"¡ dR-l4_4.>,2 }f4}j)G ā+43iٴy3HBv(ȰG6]װL|V{[- $NiTdr 葬TQs'K8ya rI:*WGV4Ie1}TrW})yU_%^"}Ńa%햏'@,U381%aʡ ߒ=ZpX)ȁ:h-nfnakt1Ԃ> ĕ$ G 4:qZX^~υspGCiOI/nOX^?l !LahV3'裘8?o"G kKirRy?ɪoQNmzF7؍{@a2.FkudMu4i\ i{&XꋨhsYSVF O_Q+]/2)ÙȢHK|TPqVz367l #*RsF<1<*Cǧ&,|$Aݢo5 M5xc%!I4l>V-Nڛ77D[Ғӓ\-$z6cGޭkM}F,Lz,|\VP_fNd/ uh_5HJ&!`ű6#4Wmp#Ѡf۱S=Ļpt۾U0&V+Q-: cƚ7T0#h䛝.Df`0@Z5j>bU G)u] S/ Myh-3/c[nqc?U۲d˨gvZl^-W/`A 4r7gn6 bQ[QA$ 6DlVΊӔ"QD&\D6޴,k ;YcxC #!K+9+/Xn s, @~?Pjb}_ɹhCq|jq~yֽ2ڹ7Cauo \dE'2Da<4VRs [l9Z2b2yQpea,y*w^L q\jD𗲵*5MwZc3D)M:uvoAm[LV U pEc(8:ˁdy(jqQ2w65IKh8GE"tdx׉HǶyjhx(nA.lw t4^Azy8W`2 |WĎS~Wb)6ѨN|&~Q:ӰS_iJ[F%̻Br֧=5ۮ|ş>ӑ_]]1ZsU1K~n#%d3i^,{V%%K2e|ZY=90pL!ZRlk>rgx# /r-)Y#'ȘDOܚpf2DA`nH$:٩M]۹$]68SܝdC_e}=ٝSxtÅrUE|q8CQ6򴧀աുy{Z(i7^ss߷M/ѓC?wy3Fz6=Z6AL7u#>HI, ݘ!Hie\yhbTuTp9LI($GsS(b]7h;ATW梶`Ɛ5'16|:ft/-cuY3gf½^:aBsD9-2vhA!tت6r(@>v%\I+BZhX`\Kg:XTY <t0ɹޒ~-Z`4{M+RF*}I8]BiDM [ixn+%M R;'>'P5Ҽ,-_s aM-&[-*&h{j[[jHlWؤ.ah[|iːu:k݀ e) i/ 24ܲ]vʹpYR E;9jfJzTJqLam?~~\,E + a6,j͛+9 hˤĤB-uʬ5 qpmQ?D I I b0{!+B$Й4ADM|; k{@?yMIAf YH o~8[OЅ'ל~!Fޔ##V,@$oQNm/ZmZ 3{ǻLBsm]Qs{t쫇5cZ& Ke Fw6tC7mt:_-I8a2:g>&OW~5ҭb‘5Y1fvl(O$_ng3O>C)ghj2d:9ʮ7%Bאjҭ~${ !j€Bn3o13c͈l 0LNXA!r7ڍ bx5⯿=<]]g-7gWZ![/鮔qlu2=s"5١+}ӈ{L~*2Y/?$~?v ژ97:mk)bpk~֮%Sa lcI B4tf!*ǝ5k!EWRIĭe@ czôIv~G!8@oZkpniGSyTdk<@a1O{n}ʘ|f#4Tƶ2x ҍȨ&)SHzJA,WPOvLyft;hB ဩe JY#A\hub ɡ*Է}v]!xb9";=;{׭W},R:y=r(ip4M7S>uJ3oX.gTul&Vl(NCUFǟsz|'Ȇ˧{0;,X} :c646%[ze? }NBn\ Ylf D2AYn@)ŶE%kG^۟G[0j$H4@nul{=b(CپgTmOf?P2wTod0 ^"UN E"sO:Z˝#Qp=8RC^V(rʢDVɄ48p.gj  ֺ$BzLĹ-j*[[LΆGA_ثK /y( Y`C>x~OI 8/?14uqfr+jɛjL&rE)WnD?ά0:akVj Tyi'7M'K18ux ;-v)U2Jk]jv E 怆NLСȣYa o>G,A^t(㒺rP_ɓ{ ?CfQY) v2 ٨%F@MT%~≙~YarfOtV*!5i#I_BW&JvD^"3$BȬx$Cʺ~Hd#wa+OM!$\`y_ 5G8֖R %M"΢)EidhWAwJצqi0"5ej:2x`oGnTevkwV+n[G1,%WMx~൲}/0˦O-o\y>7#%:zl) n$}%shr{A<'/OڸÅ,'AW}=({(Tnw:^ڥ="F4 .ȏ7́Rd^7=[{QAJW&F|O:r d~D<+ww7PO6=IB13F{A0-S@t*@7;ЕDtd΄O &&Ԩsƛl۳U6ԅZм ;re??y?wiبNW eM WX}gEGQ/U#]ն$h//'q_ybF8Gtyڰt<Tro~T#2E CN7ǖ~M/=:asq)-!م,>`S#SvP* UBAF֟泺ZG*q.L?dO[4©U!`-6 0Zs%&{\JOС1AC[nÞ% nk+JMA}ٞ!Ӵpfb;xc+ A)}ee I%>8r oI0 %t_Z3{lKSVӭ>,MC| cA|k e{eCovs2 IKb)ܘڒbz g#͟D1'z‚l'߶btcQ"HWhj`v %Y(#dv= <vz'?=b ڢtkO=vՐwLV̕Z\Ꞌ{~$+-^{atY/lNɭPemt\.x#S,)={2|gsZ[];}/{7×%HOzҐw%صdvQSy\!`}& Ύz oo_P;;+ <]*M(I>\C 2;>ݓ c1Py{T!YE:&GmͮkDŽtd~i? <''I*yrq ?Fxsg**<=~I_7ғJqszFPܤsр@tUiT!BDsQ?2ts ^?Ę.k:c6Iy>ϟ?`8'#2H}n,R[y] fl0(vC T/pU֦IZJtnK%l_~wtX*Jzt>E={w 3.E#+jxsYVJ,# uI9#ig<~Q)b(gMAS*\ʥsqlܨ9= ^9dx-F(i:D`Txf: ש Wqg m=8bAOiRr'_W!Uu] l`X8| ^to UJ)8.2ߎ!#ᆬjL=eLi|p5HQY)3$):wNSAXy^<6?G!0<.#CɛwO: ^,8:Mpiq^n0] 9> H22e4ŴdurZ-{6CFP|5pd窼VLJ3U*,c0Qɦ}$mHVVyU dG2hlu3J9nܜEd % ? ngm^9B*-ݟv?RMhD`ʌ=|07ɋҾ-@z$[/,t| GFw7]-eu4#l v}SY՞N.k]D:QeÊQ-b]y7N-zT.d 6Ȍt":JI ހ.B}mvq" NuYQprRDּn<@- gkFк|CnK Vӂgғ޾# @ h1ղSerV,/jU$>÷9g&& pУȄ om؋{"[^(kt%8v!Eеn{dNʓx9e;??[l+eh$U !Ph{y i\a*ǽa֞|! Nm<1qN bje]Wv[q_幽#IV!>",ž )BwrIX"@tM-[l_h@AbIq2Áp B1匧ʢ;6:ăn GJ!Ӻk=$.&™0ߧ^)wVΣ1?LHJ'7 GuiLMc5]:%kvd]xF ,RFRzVN4V$eE=9uK! 0D'CN\^pRv튕rL_?)BQbM959!g[TxRM$LCe滜_Pgxs[mV8Tڈ,JU@lL -K7L~D {ZY$$ eb0LhShf #r{dVkg5;_E.jqOvÇVbP3'rl~1>PlLw& U K47鱆 U[|㲳*"v(N&+Jు1k _K@ :8nVՌ+C/V=vDU*flrp>/Ҳ`'P8ɧQ:낚].D:= l$)8tԉ@ZkCƐ=ީӝ1ZfmCc{56ǩ7lH82a uvu?t HQ@Ѣg9ix0TZ+* c be]!:I 97v~R cZpÐ׷䆯Mms4IkԉˋRz/iĂWKI?q ~޿+DNHs9LP>$uH- Usl  w|q; K(桇J% v5D2 ߑ?*^> ԯu_Pҩ_3eRrr;·5p/'6(cy*Omk&c_Ӭ^Hn=kՙ.J-pmK c!Am$<ڭV)mJ\x.BuU}u[!2̴>U td)V389Y@_Id2!s&Uaī*nY*yi쟓J\Td!ecv}~9 &q[}tQ;MhdwZMG`%ƖQ׏"y? bt{s%dLY՛;Ҍ+zp=;`2+$(䔹tSZ!1ȣuLS;™m`j&8PݱԲ vfu̶0^X<9s&@(-lv+`1T.rd3UÉ{}B\r*5p+@Yg|@r}zgT&88-^ K9#9"f:rȎ:QC;unI r!()U 7Pe3i3j@_ƗHV ڦ$:i#\L=2[|`a@gc^A2n1c14a{\߳40͜: ;IK׏2%eV7a.ft6;}L>fdpY\~;nC @tǠ{{Mex eBA?m7aXŹ2S!{ {B5E2* (e뾡 hnǚ$'IrH3$-Ol?NEw>NH}PAeXǽ%7/fTp.ƌ`G̠玛SO2" spŝRRphD?$kYu'h$y"P/̵HvFx!w #$ sr*SCPG?w44XҲx!id I~N`C.!.jJFOo1BzJ>J۫!EAx 1A5GhׯT?=e|~c՞XF~}K>ұLa;uXZ3`!:9 %Q\oP)m3=٣>«eu`6L? #w uHFDY+4p{vWuشNCjRAx 81sAMt.. |+ v'pweYO2UF6l{_ $˽WX6RnB-BV)K7߯Uِ]C/<2$0#wV`Qmrxw~s =x*yeW3y$@+ GRKQvS!=uU0iIsyJ2 wiH6GF.oaA$!_E C>tY,*q$-E*rRet坭Г0GFAS'-4y Z-^ޛp@td ̕z- ZFEM%3,/nUPZ{{#K`/6iYeJX老 NԒg\8ffD{nn,FqltDˆARlEI+TR?a{֝M rrr #?dž@0dlW9kmMnd2tu{/v.ԓ-jX؎" Xw)}-aL?zu:o;%ay=G t`,* ƙ3XCG\d[<5m¨hU4Y9Bx1I2,Y4-W.+N*G_5SwzN뀦nלD3/&Ti%`ȿrV; E"U>⋦|Z16*m ;s UF( o" /h\rCbQ# Wͽ'3Nȷa:9ߡ?5XB9_!N(l]/Fɦ,تV3ՑʱW$ F)X".{iŨ>;c3eoÜ#cXe;b pp&ﲏ wq0oB+fp"0Ǣ9M1&?EP82,!Fhs,f!r5(pwvȚ{(F^d>;)d~~#<ZӾULHv<un^Zx&]mý?(;u-ˆ`ƉI|{S%M*1Y3C /^ `E4:e)/K3c&Gpn}m2`5/tVRt3[zW>yC neLPCfzyut~&I5V82*AId70IPa-5T Kxۺ&ey!P?O{%l:rfs0EGL4h9c3 ?]ᦩ`j&gSB5K+*6ھ#dQȤ `T?а:(MK:v!$5|"X*>ϸS[8Va Oހ W$u_#ph\*Y(MSj4>+ iOv\G|9}Fj%"'kз hģI\9MCwS[ݹV(֨Jn:)Ek _߹eE|Uؖuެ@0r,fjR5z}nfh_DeȂ"_`w&x-bz#6&;[1ו2}rn:0ߐfgs4 "5i ^uWBMMe>c4 lA 4ƞ"7gċ6UTCLH:NVhr2ς.]çY0) iG>5IRdw,?i%$ {v:3-ԅSV^<vYNE"or߽6Θįu\g/>4EbX"tiFB'Cp{= d g;> Ǔu\ |xڒ} 鋈9q3d= oܤHeVtU.ژg`Q|bN!-.29`ϭ"=7^b,գD*[p9 di2+x^7 B%ʗf뤡4ZQ~)z%3/uSA;zKdϘ\zR>U~I'<0>oF*#ǵe#K(EQWU;:AKy`$4i2NBM䚐S';GvPoEAB+= nY$A-~xp(f(] tr[(YsqJ0G¹_inX XȻ]%F9!fSUHbV gʁZ9M N.^Hy (`߃jS)d9^C0g-(+Ho$Mwtuc&=Zsou1xϖ-|c2 4XkETpۃͣvVfk6SuSPĮۇ>9!oNJb%畷9Zϛh@IsYP>jk|`y) rKUmK[mi dV.6+O;)v .sgV5`H ۽ܚCNj47Dd(Т+{@"_{(9?ώ=Pu6ۑ6PNa0ƗңQo1W|+! (ֵ~t=ҕo hu4@p\Y#CcА4^lZUԇn k8XYĬx>MJ@  5Q RshCr|\YUQ͉z})\p}=ؘFO +?7.B mk.)?5r΍Pֻ} y2}`t: RimY<ƙd2Ht<^n/C6A֫&%091+N˫t?3uSaޥL `yEsiq;bNzTݽpG߳#N A^%8jPŇa΂ͣX: &[)͌r|m/&d إd+ o/URn $&u1#  q&eӜsDxDB@ :e꺬?5zm^(E|h2Tҩ"mTI4rVLq 0"kER]☗XDk~\]OkY̵֪_;@w _S4a"6AyWf\u?/kɱ_8j˴$P=!qǶG+X; TA`(gc(#kbr GY 2&G(uuWՊ6AF^ýx^ m4mgޖks؀>ۣѢ׎.ⲐđDkj.Y_GB'%8jIy8/GQ-7lD=0qǶuQ(kM:K2BφM[\ϛX̧5yT :^䕤=0aQF#]5..jӦW X&$Unh$O^c DjlysPYm^EWYn{V~:nku:be=lgx _KO5{_>A7Vt:J'F Bencmyo< $K,侍4+. %5pg_#.$ePԑDIp­-V"鶲{ *3\$^Z0;&cv1E~aPdnlW7LH֞yG4P*0msU5]mω[.LTV&NoG\̬[0)ex QZp=O:E4 BoLaƉV| cțNh#3f y~yQt!/}5- ۓٿ&L3z-h'̺}8͢i',lget det՚!sdp 0m!;Ӄ"#)}F_\lޯhRpf=8K't}yn -hsQ%*ש .6 {wX2/&u/K@l{wӧ24G.ߣ~857e1weIӒ``Ud~}hxf=Km Ǡ?|)eVYa.4ZYe(M+G9n~ |tA}CG?(=١(,xI%6 ߖTc|L*'롲H9$tӡ5`b`}`@qB52pl'$ Q0JXZX|z}AśSw GtV)ӳN1aw̕L:>=QR"-WgBdԅ#H&xOq9e $dڅȣj2' syd.Dge+AY1QHv#vթ##xH?VA.a " I:i I}1KQ7ѶNY>Cm4-=lIʾe5febգt0Bh?$Qi'YFI">$3'Q|$5Yndf\H'}f*x% g,t~4` ( nBg1rAYd8P3Ȝjc_&8PDgVy9Ӡ nxk$ڥpXć? ?VCbkḑ'b!ҍhXb Xu !`qh||R7b/+Ldg!h[RWs( i9}m(i\/6P} gEmR2l.mmáz'y~ic,dCbo-Ϝж09o›|] f  lz(yCuE\;Ux[MsM)zGg_q+Ѝ}jt[VE .E`oED٥(;:Urξ+DNFo,r⥜SEpa:2yQ`~i@jӖ=[1;)"*D$KuY@bc?&ھ i\ˏm27(o^هQPZ+I^#{uq&t<~/xS[M:3&{ "1i_E@is[o3#n_K̸|/u&ǪgWbj)ɺAʾ|ra +®& ╲G\$O+SI}k u!MDḭ.kVyj4Dth"j"|J/6 *FSAy0;#6&`E&- vP6fֿ X9m)NeG8y&bQ ;#?ZP_A dL1&,@4l;!8a@L(dO7W|}/5pvKmF7 )٢1\)nk&qB^.B]lz"ETSމ79W!g/,,(}pbT oI%ZUfdh=ԲY#+Ǯ`)TNA2歆G>_xQ"Fk 1wnIcR<תSS/,*b # vߧNJ8#ڢ@5y[Ǽ=kA>݀fWYٗG!jQPp@x6K)ɏ{hT*os+IIK7Ҧeڥ`@x(dw%ԡhL$k60p6x1QeJ~h92;[Ѩ$Xԩː5+e=NX&uCEe{6v@V%IEBOA9(L/R= P LG?Hɩ'I8Nj][7-f^NEt{[?%慹¢r0$\nf_k=ƹG+yWZvl}4X`yNozΞncZ4evo Msܗs[Q REL8}_y*{=wv PЉ_% 7HC.Y@/FAeWL[Fob{QjYMk}ҀMYx ad'&Ut۲W .8/dhOw^4Xoڤ pm|[R؝ʜPjX"3]͐_j5uX06ˆkI0PYI%ݿGJmeWF)Ӡ4DTc2r/pxȤa6P,r ,{R2`lzi+hv&|n^6yiu O3I(iAǑ -U/q0W>V2|f;*"4]+"CϢ`8~9Xf$RiD9&ĖjZs m2a| *qKJ%h]b &SM`bNDrS'-X}|7|2"źBEk^#rg8#]/űm6nӲZګ ykaO?>d=f7!nϱ4p$hCtZπ<| .ؔu$rmw°j걈6 ey"y.ߠ_M 6FUZ-n[sZTۘ3j\:cJ D_οݝ4cHjInϳuQCUUq;-h1kC[)و1 N{>(_VLæY P4#b{`b 4U L)b,IMv0'f MMI0_UYu1!yƔrR;2E=AN<߿#:%;.ne-LaDf7,XA:;߼s3D)2V 'sT봦A7>!_5ֿmwtx$ vQp4CL3Oۖl`&۪ݱ=Saw_TZ`xQV#҇K.7ш5CS9NEYwN>2aS,.ͦj'X:3Z ,M/z7 Cf72x]MoFbY?%zwkSbEvx;aJq #+A>qrX)m'#55p (DxM%*ū_JyFZQY2w}S~0dJAW?'\D4r~!lUi˃\9|jQv!+@"Q Cy hH K^Ug?Q˅p$vv ǎMi@%;8:c1Ǔb6{ 38~5e'u\r-]l|qݽ\"-Ne!V $˥+vu,hpSW}1)T҄Woy6yA,ӽ*]M7 |ZQZw[Ca_$ 0ⅆcy> &q[ /l5=x nF."2OZ;љG \ߤ#%į) K!^DJl5J"*&}F1C&| CU%hB52rt]dח)y so.b7km fVKvT 91;EzIN`[/I,1z7ryI5"?1`kkܵE^-%rZݚUMhps| / ABm|,ɐt f09jFA$?=+DSt>5;HJ`ygL 瀡\/p,kQi2 *KG . &jRȜ)7:BAP۩mb MX$t7b<2[t~ l(3]͐&׈Z!\A8c\SGКj;\巨dGcV4'.+*fΏ\<| 4GD-~/~ _~#3 " =.N@A C.d,D-uFyHGY$>r] |Y1Fot2>)%P&uKU$<5*LOXsЁ;bABzMYhL%BXq.'RIȃRYy /ahwë -ָykEʇ|M"6ᄈB9C6p<%C; gK{\0%1¬ʌ^7AXRr$UI[1NB AV}LU{e`j~e<ijǚ&Ns2mxO~lGEe_.oŹ{vp'\>tCd~gBm>X,fo9,Е䶐$%Dama^3̙;\fFTD4YA ǘٿ6ɉ*JmG'G"f!"N3#ìQm˜a8HD}6QPKHt3 *sJ-V&IQID|5_P4FbK5ktzxvw)UBJ6~M8hq8X=((@^eJF}0\Ozu2r*G@(=u)xS21%Z &GsөyO,^9'&@ζm6VF&+!0S Ge5&S@bō%wDa٪@W,0){}?`v3zk x@F5q ![ :eD7 54U)8Hm}1rf$JXX(d~ *5V1ӠQ-'YpFvR\'!%dh_<ߛQh U##vZxW1G09 w94)X4}yΙ]C\yIET[z#H.xCV  6iT9x2mR >OB U*,}5vq˥R}+2Ѿ/oBsQ`€1B6^2P@PP7 |`nf_,K)+½F:m!U O JZ؋>H,-4ݝ Z*>__<v yBI|ASȂjS*fV]bMe#N ^m3%*Y=`JṼK1varH6wZE28<4`J&'e>%oüanAQj_U" 1 Ӯ)ii܃Қ|i^DeJ+bkS `v (芒#<~&?aH {(*Hjx٢ń5`6RpHw@-UJTwNp[HFK8[)4 s MM{,–WU@TBP Qw ?\jO$SjY# >MjZ A_'s_O!971 ";zǂX`ݏ40 'ޤxL&Cv&5퓰oR9\ʣiYKFV-M0M[˝LAp4\ٺGlGlYbwaFsKTS# !MF°SkNrz58(4q/ٞy;; ,N5ͳ=_cn;ʦ}}c?1f ܪqӷayѹ^]É}R}Yz=fG'~-L&h $9P^N4?g03MDٵ`i 7 ջwDjJl:|ã;b!NȮY2741  rIo'"ŕhbb썖kHH_QDΉ6Vh]tx c&ImZdJRLI(TXEL&DnY$Vdk<C;FK t^J[^]\g  "ZH)"oM J@i4lJvgxCOjJ`2@Zxr:Ž4PfrnrGy0vVnRݿ(9O&{ \S?Y<< lTJeLF n,,jQIПk 3Bt6޹ogn #6 HS8f *#^c!mӉ3@v*nS#n9.-sZV0Z>jޖ?#`XFgG0/1 !N u W+;*Rָ+Vf7֩qϹ.]ϻvs~+߽PDQ^q`#M7,k1 ߳$41ƈ BI;质6)<OG J@A8A͗ o,pD@z!o|iHwpp#٫M1E5R ^K8o֘эkaNMy/idbz55goai;VfΨ2I8]DLO\A4u}a> ] 邤4~lGws^9%r5 AD# 2N* !s|xɱưpnv$5Jc"g ; 2Nj T}HNF7hRh \ԊyN<{죢DF7TXU~iʪ*6PIKgBt%_dx&?yThA?òBbuGu3^KǪ{qch3.EJ`S{=-UC+QD# ='c-Pj_ 5ˬIl@eCpy9y%u3׽x/$~C CcFbSijad!we̍{G |,hJHؒ9\5EXo bN!SCKOֺ*dW4RN4JsF@4OSb: Rz1YnEz}>~Wԛ }Feu/J"Jw8ĕ"Ʌ [V ?H-e2;a!.Pk䕞 #XJ i _,Dg| ڱ1I X?J9!H<6XԵntvš9ê,I.3o<$p?;qlrU~Hi9,h*b&0${twPLJS0W/ ~2y{G~gL>ԍvlLA }‚}?t:<x}T0Bܾa }UGnJdnuV ?WhA*6s*[v#8@SWJ~zUe ,A=n,F.мiNn%捙6DxٛR—cR(I8,?I2QiL0BZgB3Kak~njDk S}5% \fYjڲaV/`h9@y? ?Wژww5JxW"||l-6Ԭ~tcJEˡfӫۓ7}1+6N?vU/bxN&^lS Vό.%.T^c YN?4_Y=3m()5`vxY)~1mND|0:A7%9Efj;~}&d$%L>,%3fLN3O&v< ~[]Y:~wlCYS`ZZjҷ{vU2 0X 9=\j.qLK4֞1tF` '+|Hܶ.fo7\0)ݮ3{Mj:ܻ[<p)4럱L`Pٽq &xB愆6Ud%l㪜*13 L-!oa2sî.1w6xp RĄ"MU$>ZbXJULD _cb[z+NӤSҢ^ڴEĐ }kݧ_I17 ^_Bv!s|GoO1cB!$4GKvskzq챯FgVՍ_}+A]GܑW8fLKWL< cW/9AL*LXOxp,zY|.Nj+}ez[?B' 4ac5PrRP([ >B*#(X_Æu`BY 6|*xGtEe2 r3HP=gj*&ﳴ֮ȗYvxf|ӀuPuS1*uf;^% Z:q%0csv*)]`TKOM"d%@lぺA?cݨgL!:Q@t lRKP4Pg6';srE)F<@И]w)oܹDcxN$箽a~\Q}ُ(x0TO5Zz:!ΧIrv8 wl_};BdhfJKUf9RХj>+ya&kFt垎 [qR??aaqԱke]wಇ*sk,,.:|@?нt}9nIn5# 9P_!{<3ny6{Rpul!a=p{iL1D7KVO$ZX]3 ±W6\hlVR~ agAZEϴ+ueϔE@1?JF:РGdEݰH~.:V )|Bjk!<\Zk '1秲QqZw}hl~_,m:U5n Gݜ$tg 4MҌi]`t|L= Up$.~=y*+6I\ y¦Z.GMÒ.~>lҭs `b)xO W!)[e'b]J[ALo z;*/Lf}ޘ?l|{v*H#P{YhE\'Yu ϖ<ɬ2oOt ft%O)7)k 637\YZZԌţo% +K)gߩG u­5mlրt_i:^53++mvgt5à=QӐ8S7X3iG86a-/o6@\k.k8s);|FD(;T"]Y>utoL|(SeIEj\CpKj|eCZ4Hxc9@LhˈgJoPAlv0G0oA# h6KvL_$=#kP~qbnKy\myi%9dG`\0s.uTpA!y;cbCT5'_ WIB#;?УMKalzcކaΐgENeЛ4&vEҝve<+j1 g?}V {ѱ*d& p}EIx40 ޺<倕"6~(]_,DH>cKu]/ Eŧ&*}Q X()3 Ȝ9`WS._*7 ׳6+qiLcGIFBh:&$WFWI4"߻YL ,hB291rARQKF1TL)o܆˜m(iZ?s#hw#]GqMVel3qL <;j3Oi,CWXXx!-TELyxItP?}nXNf2+*E)Du߫h->bnx9 ˛QGKل;|}B r墝Fɓ)"BE~j+'ղ^+.Ba-Q+UbEq,y4W`^6!X:cHE}^l2췰55=[t1;Dosn5OѮy#w).0XUXc//SK/, ߖGNxҕekɴ2 /:xlA ' rd1"rer`{\J:ASdK9G(xj*eD{;թq; 3E e̍4Z|e Xq nh)8? ڡvD"hg>Ք˺dU?eI ^ VpLzCG߇o`|\(q~.p<@iLpVBeN~ '?$Vx7}=`[Qg %rYn[K-3e><Tv?(xu5I nb@?I3hEәOfnat?/`1;?~M^Ɋ٤gZ 9ٰ!1׊,[zWqy&űWCRFdJC9DƎPk?*-ֺA a#`nLLdY]3تh G(CHDx#3]矎s/6G\@ZR15GG!Mu`UrL3J;;K`̗[|* :Z1_aKL aL8m?KwNJk' fdBS)np#~uTΰ]~5R  >9'#S=tnq ~ӦwU+H^W&N'oO<~(M{]Ljtzq[n#yyF([(}BbS%F!H@5(uȉ12U8!|ϰ PW?{{团toO4"IKj6+e]rtGE$79\Z5>P$&!s܀= ?AVh,4}m)ADx+gle4JŜ=m`챓|`њbNܸ$w't2 P\9}i(.x,A6_F)𾐞܃g>Sh[q[Ñ+vsO䧽2'f2M%zn6; X<9WĔ$:P#U絨A_D#6A݈^ ;0pPq$}(OW8tKӄR3CĝRXr:M!U)%i 'uvJ)1{kƉw2Z x.eIg$ru>"h?yOr:'zUsUR)HlgԜ8e&mǛS?@uH NqwaŽaIL[Q-ioܛ1QۊҾBNљ$bMݍe`qno "a%hEi!Ch jO5Wd';MˁL ۘ5{WI~\Nwy_0B {j:eɾ)aÓ+ 9|hCKW#|drx5K:eXUCDL6J$#`#~)6] &dK2ޑP[UsBɜ UMjhuQh="DR:T(4 ơ(SG$<)J4 #BZ_QUϹq;BgfNh`$AVͮ3gʑ詼&~%mSq31M s]/Svcr+ed1/l].az7[4JiĭY}@ 2?zY,ؿ<9s󮂾.i47Z< 1l̵?"Әp6tMAKxkp#'_ M6<rնR\M3Y Fut]D*^[3aHbd3ͷu+"v :52srpsSěN}%vǸR'1ϮR1*h:P+P> ;5.1{XO Iwy *[kT5]7sB۽1jS !=PyRQaD0-ͱm \HWp'UJ#$GTMP穾D2}m[d.|a Rw2f.*M r^uI ln% 5yT?nT{"!w@b$ ,{R_l>Y OøVzC&0WZj. \a?ד(V8in6Y|~ xٙ`d:]d sl2 Ġjyv=Te˗(WXI.cyF˵t!_m-E@M~$KwhG X= cV&%dά+ȁ @1ᛩ9ا!W@" GU/U!Zz $IEq{!AER3!SH&U/UY{)w]j'">Gĸ73IYc!'Ĵdnm;cUrŽ}28'[4}0?o'qZD;gTEPw q >ñSmƺ*B?zruKɘ6w,H&˚9~Xgak=I 8'`nM+)ֳ{aSt`攵TO|wA_NB_'A\!ߚpCy:* \%<&1W(<4Of0,' n[ibep'$j]ծ;5A[є [`*ؘ !ށhZk soh@N4)۬Φu*EwWcfҝL&7`GluybۚR"vl^4/Tf2r?;da+nWt(p>zT+se—XuNb_w]TfNCs\*iS|xdGULK3s KiQǢSBN}t\ `d^tSdA @'N>&JFNU&ml9HjQh tbԓ)E&R]zLœaE`GN^"<|# ?G5̚LH{zʭd%\xbɡv(oU.*8Nptֈ-q.R7ǹ0kGxf0Ⴌx;a&iig'miݽd~>3c(*qw?/F oP GKsNdz;̹<>[~mDUp^ 'm.~<^c\I"Z_##67 |d=.ls<&cg)f6KTX &$=ηL}&9?m+Ϥ=7&`kzPxFxr2<^kG9ۇ%RN.wg Ҿz!(IMDp(‡;<5+bXSt윣T5`d ~YA2C#~Vv4}/;y䁝+i*At# 0%2T[c'"mXUܹ,_FAJa`l)2<-ZD@I ߙw XbinYy HO 躁W;ܣ˳WÌBP m.ںPƟ(XwGF"7cld?mt<8Ʉ'?ڑFn(}kp>H]-IWPPq>l3`; ;8TQ~$iZ :]z5 2&Մu 3"FEYʉA_{3ݐ pha˕ ,y~hi-2nCq|lt#&QoBq!Ly7tgGSPEX/U'>Ԣ[Ĩц(O' Jjޑió BmUܢ 60{Ѕm>||=!Wzw#*n=3ݭgֈG ̈T}F*st`'Xڇ&ZGXsy?8-g44|`!cRYj.w^-YV?Zԡ0n#FF WR L#ipkN×Cvz@~t"^)ץHq|ȷo{1N U?4RaRwDKXU1q~;h;'hEh{Ef/`iPR\^c_d n¶dE=ꆟNBShykWJߞ{&L7@8Yk76+*\=g>!C@&<Z 6PeD9IMXqfmg/`QLWs(>4 7 x(Imi[טZf}i?,9+]}~4o7nu"O8k[@Uw}( d错A 6{@4_/o}A,G^x*@%Dz3-.xY&Un֛#8y.)AGy9՘&E/ۨp$$aNz= ^ b7P.DnV ҀBu|B[7;u9b+>_7 vZKcZ]IDF6:pڂyK̔a9(>\W߯|nQOgRtӹ2,g\黦Pobo7vs}'D~DF'ċ H霊A;"l|څ|t 'k̗uL*ۆo^zdl )QR#]ȬDdA .3P^Eb{ϩi3/gXsd|)Uj-dzڬ5aRDH:s-'E#EoZM#b(2χT^u2l?Ooz>>M-OtΡj(*J oyI5ZXՋj-bfʷ,ͨ'v18! R,k|{e\a֚"k@V0*{A<ŕ!|u2815:,ЖDTP:gPht*F$_E&6p@,ڹc%}&ie|W~7"~ީ =lf ѩ %lt6sG AoË[yfq"02"͇}~ǖ|@H:-GefC. ,QY e o=,8qJ)=OW:!p l ×%TK`({3p0 "oRe8m?2{RxP2x^%c'c0^R0W߂ɩ7^eΰ?{($54jTRB ,}rnX;/ *p:kN<) d0sqٔVvHtt˯hiOp1&m'xӬS놗91/dZϯU)kQ1)8oڬY[D"bӞd,ƈ.;bSX dbk`1|oG82,NRVϟ oR=|r'U1HLT+ۭWB=o'A$TglUwzչ%ԛ$IJ 6&gfkڍ٦X=R(G =aJ QJNT,W#*B?_Nٌw@^"[L| 2 ]!elerGT#~TxM[$W^hlSc4a#yK)o &`l:Taud-CsyXg>/X;+q!0ECuazlHʲ{8+qn|x̐!k錈 XmJ9ɦWw y`o&HpDYeY^v_ca%ؑ(s VeX?|Yp{5DuR+GtғyADTZۏ.: L69o.veC\(=Rr6ZoC$E 317~-?^T)h?obzt}xmKi]>o5FzEnb:#BVH*nn C3+U]:kz*gX Psisx3S'Yum*QdOC/v8 wl~Hj3][džF7}S)l'wm/5hb&>AHkDڒ ~֕Y-eR4V̼g4z=Rβ#*1z7J)]pY)ݹZ%U3m!*uaTu,Yb^npTk)Bf$ˀ? o^\lXǧ$i睇3!*t#cxG8$3?PV(UXE_bKl A"$t5/)hpf32#fo1fD+JxyBc3-,㤅w"hYs>P͚|h`]V4'E+Kʒuu_< s ȹB dHr'Cƌᴶ+83' ('}f0jY{]wX7a@I|s# E'FtʤXhPmMVO&e*ӮK ں9n,Mw$Щ%RG=[V8yme9I:>' BSs䯱=T'Gű[؏IH>6eLF*j/啜Gw+vґeS6P@(=eH-L`wz"M׮N{lFұǷf/ܢoJVK`~opwmMX4ok Y9z A5!!я%6pRl mUW-P.}Y { anl'{}zM,oNE`1j}&u@08*Atڦ%?xآ=Xfc菐3g㶔I#T=.Л^j=}Ln[l E9,?q}Їς6C zR+zK'N[+JNp%m+Nhb[>Q?4<mXz01,ٛ\S j'e{YF`W`KKj.{ב}3sz(&[KL ׏sQZAY6%S=T?LUjK׾;KټF*|g^'(gΉi#[ JSrySbF(<ܞn^gg`\G3QSg2>(V"h`Yago=K# gK.$R Dz>"X98Ygs)Lhy]nX9d9<3 <$(]|sdB1~;+zLo oYxrV`ι*|`=Ҕ3jLOMxzTApVͨrWD.u\p?#K oNXMR7ߏDi_Lly wXnU?s)YҠydzɥ弝甲+^쑂G4MJuMWn!\#SVTo_b 5U!mHIGf'ScPG`bߌ&qwz|n __ڮrƔ L6<{fo$%ttBM+lA*Rc{Zr .j@,74}" JzK qgc~MO#"_ +;1B?s =hƑP:VU$mQjY+4l%.zWf{XY7B@(< Nȫ Ѕ61qbOPSVllR&:J#f-N馸@l #/W껥 9z^wDuݺ=1j\TLmj-*2JBxۨ,NVp5`5p.U'eJ6j U&"AQr.(|D \G5& ӧ%[r5 `TX 3I8茶d5i~>#njQq<NT^4fWe^B #~i$u$-.$(8eAɣWŨLp" +z)|B@0ޚ˒M*r'V#FE2j2K `Nʱ/4C@EJ o.`# nx`Mdhw^UB0nqQa5@xK \pw,f@+e/#/o=?o`!L<'0M-&Io")bhfd:*+ eQe5bU D޿LRVW6`w]}!/`1 uq6wfXEBߌ7͆ci鲠lmiX++bt(3K@g!Ԯ#N {E0۱΃!җe"KnUlKI ӣ)k^cAI@wuNof` Mukҭ# d&h&[ľm0ۚf}=7eKpWm&jI`:^ ~QvZXӟW\m_QD~rJB𖴂*^M?hE[eEy zqb*FV.AH Dnlׅv8Z7'yC0NH\صoX@XOW=RIIEp8Cخ[RrWzi$FJXe+s2uP$ӆ:o)T1:nY? FF~Z5}@kAf&ff?Ņ#OIOi#(#`ʗ7̞96ypIw}Ÿg_|eXKi- q34 kOFQR+cl265P&+JIZ{W>9_@U#/M{RY6(nNhP%F[k#8#z-J!ҔUz\W>K uWzx߹<1ܮІaGm'lcc m{30ܨͪy*e|6649__>).4/hRl4#"DžLU?!{!Iq #<fwT_Ю~TΣꔊXRinړ-#/VۘKKXvpb߆ǯ5;K*?ӷ3rve`a_j7hf:΍kSy$? ecr'R%ڇnY%pΊ.$w`ʫ!JɄ{jMnp~lN!v+YؼzU^r`bG 0"3ŏS4;1f/og* y'-%_*t.WG hlX orZIïQ)7G\Ef_7amM%4V,#6f>}銷w˓ЕJnGPgU hmD8EUaJa[8 ޳^˖M^rD&?پC3٦~pϑ SƠBEȥ)2YSfACʌvE N'؄}[Û` ,R? Bm*B-q,QFΓJsW`1\A2ZeA7p.!Z7Ϯ*$M/afHQ*jC(~R14<8F0,' Px{hv͵pJcsG!-ҫuUjQ,h Cj0X=?=m򃐆Oh%h';V@ b5 8ɅVCxv^Bo5NI`͊LrDt j8ɿ\+藯/?ي1'O Q&RRw5Oa:{;,.H3FxkiMN3>ֱ%F-."l֗td"z^^kWO}!/2 QF0?jPyMQGwlj;gJ6U%PVahPHqͰ\8ɯ/hؕoZYX%[|iZWIE`ƥ)9Gfse>Bp7H~G9sˎOkB"yt~ZѤ }qaٛvaVA!EŔu4OҔ:h ??3Dt}WbX[TPm]&1+kF7 clA-]R Tm͂׬zf} [Qվ:6ױs5)}50sCTث˘ql8],lj*\xU'' ߈YjSGDuĬ^]q)BG5ǺF2*7WnXv:iTIcM?x= {QhƵL-yJ~aWTu*! !+;+oDzl[nv2p~Hň3XaOJj@{[Пbd\p0#:3~t)VsY_FdAS͆ɪ(=LmE=ȰnSl-A)HaQv*'0Q6,/1B"8`iTo~4RHɯC6:&&J앺76F`DT voP-J EKV3Ԍ EUgӒe70AfˑVU6"?EhIf)ý3#y#MkуN9pL^%g 6g>ѣRY+Hn[)B3\/ǂ&4_U}/!,Q; ABjwGw:$/گ\˜Y_,ۺy[6"m hm5(C<Z~EVZҚ5YUb4v)Kv<;W s.9qa$w!n'@pNr,K4f sbq[x"_w1@ԦΙ-6oUMP ߮q-E85g>gf?=]z=8@jBe7=XdЩS^N:f6"y8G mĠ!S\i5;U2$c"C94"Eǰ.ڿCiJ j{A+pI7G_"Z }9pAߪ#FN|7I׹YΝwmhvP@, ju݊ T^DǜL$p~kz RZ͖NWGbcsft#* Df9I1FE(vrm-U CR$ $$Ha,R Gl{ ybzP!n||Hl9;O%||I59k:4pQO>o-±ѷٻ j>$/{8NfF 핵.>% +pk/7n~oz&Ud@Pi˼4B~e93A!T ';s+$I`?FT7 nn{ a[.Ij4F'1fCijqJ(X~'j.tt )Uk 3Jdo׋B=k@Ok"\^o|d !pϛvy4m\=AWO[sT3QZh@q\tSF=lMN ;wnRg9]~IF uPf(#X@X"|NsbZ@WY!O:!^*(:eaT3o&^p2mNb!\uɯ+*X ϋy% I%Ak4,os~IBhH "JXzZi4gk8OM5; C8ڪcu"*i7"1v͝ʠֶ nlN5!PZJm< nJu=E&ILINMD9&u)f +#gѵvM  n@V2V f1S^11DgMjU%mi륱M?e{wWh$q!cӱ߫<- nVk,vz:[|p(h'M+<ͨ:A'mY\`ML;oԤAQc{eE[d 'Kovig\@ߖ<%RYao:1ާ҅aOp-2vϔF ~CY =]v.&fX UbZIJeKY!TZ,AXoOD2 Y\"e94KO.}֫+m#mU߾Q] BUHڬ9DƉT^ÚwA;e"gyC-N=m4d e&dyrQMO%?Ю)Vn[gKI}HO XpX s@ڛYBVPU)^l*"T$ܫR˩W` ٸ Rm29׬ Ww6 +@x[EA%4)4Ы2YgSr3ۉ8gPOnynFІJ;s޼w2B;'e,|@Wϋ=AQ1H̱1ȗaϕ=j`{|4߰/`8JdnAIE 7ы,$?9QV]+g$^)+좞dWZX宑G>y1kJ#ˏy̧[1?cɄtLAx[CH00TG~l xUZvCI v kgj-TE~ʧ^ ʙΦc1yH1tmvbyL绣 }{{rΊTlTmfrĄS9_.XgFRJhi 3cזe^ ֞HzoV^y<뤐(i>~o>wɛ'M58E `k^ dudK߾zrR6CoބU&q;m;^Y[_珻K;)np;Q(_kp W*#F6;:-+$C#OcW(CZÖبgл oE(fZtݘ8FÂE+aI z㜫ꓙ7Ga60@ߥ'UpH0Cswm΅#tB:"Aa EϬFwT7?Mt]p5-nƒKS2Y $1sQ(]JR I9A\o*=@[ ċ?g3Pox58r_8m'"7A)rf'jK-P%͏rX]rJFH"3I%xѤCջ̿{R6# 0Zp~C?ݹRYz 5-QJ Xc Ϳ-V>S^,xA<]cx8`<y ?5g[ =(ZO"eV}uYXr#׎qhtLN\[NS{Peo]fZUxz^$y+MNo:^^n#'؇t-18y\=`RcxB#:ck;pd ;Ψ 5ZY"|;k{a[;!R n}?C{B[77K:tsWSUH\$&Wo}(4I6Xa cZl1} m S]hUU5?J{?8-8EkMQ! KVrHPa)pʫET9Ȗ$V[I`zG]$]MSeixM*#6o tj@3Q/.$X-BHvC7 cig]/׈1ɱZk@uK<aW5'K3ygִCN²+T#Ѯ D1uSoeB +  'Pa~j<)uvRI8HDȠqDPs`{V\߷ْ'#ςǐ84T~bc6fCpN izײ XAqby^F&ޤ Fk}O5Pʼ50: 9ɫ7d(d+,'Elr>5T^ӄ㿘!ݍR[5 <WQ6DC愻˳ObE0]u28dCDVgA)#fwLJ( tvz}{뗤HhEpZu=$)“6a:G4i]>ü(š-=5|0g"kHdAVXxf28HChO_HQ=(s;xF4ZV->%\UNxH֙=]Ċv}ܘuQqe;jZ 5f6h!PXDBfZcF!g:r1HثEe YƌA\^4>VmQ/Mk(7S(;#*2(/bѐPmʊF:Ly )ࣇ3}`dL2KkR6z]-vb `-f* k40omݖ@iX>c/ S :P]Z4ʑͅ 8Ju\AuqTo%4P09IxϤ9{5 m27 EdGEͽ"HuH ;XqeAn]{"UƫYsK KO3ƼӞV" `e'BlT2tpcz?8'#H>w0g1լf4l@֥doV@JLTG*Xhg+XO:a2IΤho<,a+CKت`(}ʓ`и#o秽'f0F:G߶B ]at9ZUЮ骤CibchJhHF[ac-cG#@~6W3!Wi kBɒD yk ]3FR ^[k2̉9=  ]L=w$bz2Q~͉z\_,_5,?Y 2 _fo%sdhz޼rERSJQMs0GTʹ?K`?_(ɭ ×øh__/`"]@@Y/z>R]F?wYwq/ޣez 22xuC7 u^b, RfN;zH21XKa;s(ypDd}7F`:KM`e0,sdt ENL7kyV1AO6(0'b<# #(pdrَbZӫvQnp,"F1PJr-3QjR |h:w T8yOk{ ,7+{6~3@Uu{Hd/??UTcwqp&.pn5Mk]{+,m$rrfͿU;p.qPHK@'ȵT=_e\<+Ln꫑D[Q`]%(-TV a-N5ȫ%WK㜌066>e ,OU̠N ِ2/Sx~^jkA f[tl_XY!9}C~{`:is¶sF ^LIX)KǼRH8uE)!=:mr^xMXq7z)t5QJeɔG֫ R#"?$tRmwq 6MIfAU[u_ D])hӃ\w \T^'=͌r`䰣6F:0t?O\K.Xx㒔He ,~ 4RRؒ&z-ȭ~tLBy]-:Ԧ;!F{ǟ^=l QS.ںbT5R b2%q lثEy Ϛ'؁.="ž)46G! Cy˯a=J5a8WiYg OcxaAj:I&ka5 qW'7 !kH|Dԅ(-Z8U8(wqӳ ϱtG~ wY'VԮq\Whh-ص w F@XŤ Hz!ЁD!uuHjIgB.nJR0H_nKwkX""JfYK+ut!{<S0g]._['P"M0dP浱A 3YơaPA!{_2ز;Mmraȃe\3 vo|3Q3u\ӷ6xb Sb04rёňj1`xH[{ZHl KW\9ca'wo };dB{#oq'sL%FM Ӭp %i аN{{,|ft] Δ$[C;jDYcFM}DMHŖhJfxH +0}`罀0۟0,4!xRҸ#+;!h@MnHM41F/`>}6/{A fvN qUSfa~%}.IږN\)V.}LZ8}4tD Lg;0:K}Yg4d0;OgF[j!K0 9.cnPA$Du 6Ll-!Eb!h[߲BI5I5)  @ż.5X-- M09 ,30<wH܄,`7z np0|?6p ΀bKL&I|Ws 17kˍ'ќ"+'@o<ϷJڇdcL׺M++FlFwJRyW(Fd?LF!pxv) І^\"ĪBDM ;V UɠґO^}|eB_?aGxO [ ,%.n7S-c?c%8ƧD˳N~gY~n躛l&_){ę X=]OM }!Y.FԡX - ruCF1l{\} L)lF’u-Z~xcHA%bs7v^kUrITIR`Ku@0d!u^8VJ,&LLr&&hF#H+u (ٕ_vmGֳt/G(ͣƗPf21eUU>Uu%9lYvHC'`.kqzidhPn|xNOpAm+;gJbErq밡A/K/kzղ6}Mc\7=)S4057T-\G!)rX}.彺K"CK}`_=,+m7鶨 )B֡y~z:Nj0d#ׅu?C&9Qu[GRP-`Eheݐʖ!J W+)0aHZ5'8( v#ۑ䌾r$/]dJ,ǕԴ=V-(- jdmI{~7BGݽifBQNK5?LTW"b+z;u]H @r$(댬 Y[;#zb<n|{D}SehT^aS1փ9RL>} #l}tTsqztbQ}Y܇|Js ёfv{h \  %6AB1bq/K'k^,S 1J蔍l7oԠ6\؃7]H?yg#RaoD= M-g$q:_ZLRPb kNNaUAƟv?Sw/b٧vx:g> cdvTwaQte0w gmKumm(Ϲ)쇾2:"CTu09-秮.ܦ-v87?c!#Tş˫vL>ᵌv"kQJt6tIKMyt{;1˚>JDMjPuXVdܥ ? yI8DewsXڤL{g?f: :H(ƽDh̘d=(%o=/uOY%ى0˘ OQ$/ŭEs D4 C\V- Yܲ1:š޹jEp~-G(ĽmLUƚB|h-@06 ~IXOiĄjTĹ  7<ϵz&=ORFDRj8j4~$omNrGz`\ c8۽'=d_JWDWPk5#Udsr3YyK(>2z!@ LE[*;:A$7IAs |qYNuVu:Ү8'>[/JՍ\81:*&18l+7g_uC.nS0E:A,t]/*N `JN]4(𦞫EʎZϻv%b5^]n$ v?LH~j pDCRB' )u|<|P B8Zr(4m9ql,M>_]OY"!y. +BKlRxXsڜ䏛OYXXONbBa7%iM{O<b}gRpMz6cGl+K>'V>sʕʀq7屾PgRgn;{uf7p#VTv5~0>z/zw]B5?hQXƉ?*#}gH>{< :As;G!5sE-F!Af\-&g DGoǽoe"JS DQ)PK|)ga$ `y̾ ĕ|C/LO8ٛ wp5=y5ZAJ&u1_HMKt]S}/Ui"fHY[nXO?O`)&UR>v<*_9ms9otTsC/T6蒑ŝЬ 4(A[eQ,2PN]O b- sޙ俑FMjҚjB/(յpЧNa{ ,J۪5թAn{+S"&vf9Q M& ߒzjl.(x#V~𼈥>!ŝI]ߵو,8f>whĺ'}vs{VնLnG`"#(38NGJ3{tnOAw/ČO}!iBŦ)ɽ/ne4ly j=1^sU"&>&.ZCc%c~[NdL4M}f+ޙC$҄IJVZLLnaZCq\>R$L!Kv@yN\[΢^DHa >~Zy@}#1/PAذņ:[K\T(d!ɓ*k72r$]~;.:GLybj4lwm 0WtK2  DQ;dm{{_Ȏ,8-Yeޞ^xzJ腽"%zh4*)DJFEsppTYlEZ/#{HYJA+gօ;9 Y!Pw:t>W'D9.HÃyVdJ_QSQWn{v jΌ^Ս%5. ~WtìaYǙ3bX*2D1 :JY&N1q p\L4HϊJhI^&w88\ X zTvn&L0k[1qV0 0f6T{RT#1♝Ha{gCاZ,F+~yr\k9X Rki{MTw`oH7gIފpw0A{\Ph5 {o感4Xu .wj+ڝz_챏M-ݖ*0S&ukOa,kE4ʞXtElɋ1ż궕V6P6] 8*oG!=BBpMO2!Du1i)=wYcի2`ݻ"O;%L٨ )J'>9H2N551?/a9=S1Iǻr?}}dr?k|&?{zFP7Qg"n2 Oz3&Кt103Zb_'36 1fOf2=qgx|f^>vUyHYAR %bxky CM45)yu[4 p*==V҆!xāPu2E!ȻKmh9V;@_$S^Џ6gTJMhrL/^$R 0 UjlνߘXǥqb5W[!"tK |fG>uT *0-/U?n^(,AZ3HX8# s^z題da]c Nx֞D>1~7'BcV ܵA r)7B *j[#v1f>ܦǑ.3EՔKY˲CX) u7qUlMJ?T(q  E>Ӌ4WbQԤ?gFܡ Ş5yk/%XנܫUZR([.v=T1Λ0={LZ2%xHLջ08 N ]'+cTip wY#8`QD)Wd1n)#}[zWQH&hUbĒ܄UXmLsE8+q<)z+ V1ew1-#z\常Y&;^}Kv.[qɾk"Bu [Vc}z@6Zw*0 C9M ,\o ?4]>/EG_'quy;3[zG.cλЭHhz:g#j'ł˦74ϋ/=P(LqWr2҄(\9/ZFcdkOsE L|E jًSsk1L@0*\<x7n_X|B&qW[H}'[~/z5HFz|T {#Ꝟ[ͮȒ.ǚZ|c$)iv3-"Q>ꔄkIV {}JԻ6d~|M]M/jy4]{rP u\u¡j0a|H?f,J |k>3q(="AJN [sHH*;Ngtm I4Hȱ&ٍ˳rE9HT8覻Kӎ7/~ T-\eUĤP83`6e?@8!l1DR:I]>kRV@שZ)y!y'Y;ߌj#-B Np5-m%Vn5YB$-!#zLC0_A7)`[VnF i},0??dky L'6ˏば9#a>cAK#"0]lU7H={Mƃ:O<6\7"jH?da_O둯$ y« v&NYG]wWR׃x^Ռ|Ζ3z#~XRT TvS0 Wl]`Xgx ϕRi:a`ٌ?GL(г>f`4|iɈ"miYڮ'^ZkAxCG&5|>=LJDΝc?'rMZ$ i'2.MWJ(>,gF8TIMS-;=O^h>هL,zQ8qYL=@D?b=~O!mD"Oteę,* hhsWiT0˝-U'ctf0Fyܡ JcV8p|-VwKTJpw,  yI9:՝]ڶ=?/B wA '(Cߟ<I-\6;eJy罩AhkDlh%/2l.!N"(q-݉G -3ȲR+3?-7gȏ@ؿow+!/T1-Y瓦93m5 <;6 ROAy4@ZxʅFcm{Z.~@XDu)뙜Ξ=d:8K,lq% SD4?,nFpȇ hPʠ@|2}}heم [xv#Z]ުd"t@5~N. l{Hdluݍ6"|#Fӯҏw"b|Ru/rv&P#p%ӈ}5^06: !8Ѷ <ʜuH;p+8{J67Kw 9s;$ч?k_{sE:Wah|o,LʾxΜR>@ ثIvEF|X@xcg 8e 5GyX;=dPi`vN1$?|a 9"r(s_Ɖa2&x{tN夡Ie$btZ?Sm5k_bg]}Z%˹”ؔ:Ō9NZ)jK^PVnV{̘UY.dUPspWY>/1QOv3zu{ws,t, !|0MDZY\'e$>Kׁo,Z8A~!1N{6"o{(1k;vc.#R$ \^Lo bk^A5֠jELk!Q ^sY݂WB@;Nb33胜1af%T)r!|mn'V]]jX2uf= {:~Ex]㚾R:}HG.Vk,䌾}qt/.d BA"|b9<[2:OiTR~-,I6*PQ$3d y)hdmtn2M|2oftXKkWx >#s[ W}Gh 6oaLcLLo;Aݰ$yoT `XM\C{gLJJc@KZ^HP,cϫ0=>ĭ!"uB`C,լlihiYGt:f<#UxꑯԒBL&C곀an43oLԗ}:-p*c@ؽz j*mnYQ5L d2ۉZ^*`\ҦlZ>Aa[.g.9lJ﵍ ;y$dar7zabrX1ag,kJ}h4XR31mI8_,TwT1eۊr gJzGe#$ΚH.q*FH$ڼ^ZDdg|它6^C3[E=mzMy;ywvJRNGB " ʁmHeXL*ZywʚE8s]b YcPmaO3njݵXP lJK^s'7B4E:h7r] ߟNVbkhSRx3%.$| ms*+!>(M~p"IisQ Rod rxp"H}1֤ grk'uPQX*zg FRv; %ˉLjî3Zq|fpǧ.hqC7_z{ZՂY|7XöY!;$z "_3uvVrR}-D_7T?4z?HPWܧ,L<Wp\b00h 7!>.9:wr)'Á/b„s,[s8`f\^I "ص.|t^k2vKS%FDbF_\ haحcr_ v,w4pNzޖ!?^߶ cI3:gny l}W>q`X ٱ`|#z3U~kd6$6uQ!hReq-o[0 |6+׍ hb n8#5|~vk]5gx{2O;kHoßDвVǪtonPZ~dCHѝ8[;CI+UkA"7${AR)$$d!\A,&AxۤEl{є'YV.Č]cDЀEV_;l.;A4Z5Vb·ŷ9UW'69&j6VێL!Ip^! BQOAΒHB;wF襹𬱫"uf#mrV'{9U U&l/Fim!zemPRMΔNL}N/9z75:&mTPsx3H+QŸ|%9(a,0yae~Wt =lQ`3fCĦ\(p{P TZIr`eeFO>Q6ނ-,a9QZ/ؚfƭT)KeV-.^ Gw]1*O&9<)3ϟM&,I!'=r@ktn[K׺Y-CYUdʭ쎚3rnu@L=_z2'jx߾6[|o,iģ\)K2KmBӚVaCB4e8v`ݶ3)06k;Vt%񟪠"xjK&,*㑈nDFo^ ڟ肑d!`Bmydl^ޙ'tptF(xcqmT΢8_1[Њ{$ }vÓ*'LVaXWAsBF-bDoA4S\gBUw1hgEוX*qŊP(ۥȧUD%آ§9d#cr_+KK+K81|M'H DhmsC!ayqx=n@zcGb\BfulG+85^*1o]x{V_݃5 t 8B@%`8–(ԃ8>T>RX* ?=LJ3']uz@{@M q7ٲ&Q$1b+Qt5CwQRS,WsqΆ}G 楨ΉP3T<9ACv`~sDanF3 !\^9-{='a q3a3yh(n ѐ)_-q hLTj[h*G}V; .#_lJI PKoƤzcZNGHjӻզjȬuEP$ /7΄kSCo(XSXGi@,7j )qdaRɥLTGC$ AB[{Es!thUEשQӽXyʯ©B2/u:H@!;tƁ- ī{~^ &7~;4$S z!+Uǣ?g/a.(D<0Hw%%Ngb;O?_]?4G+}€al{ji'oq2^ /n{ V;iO+ѥCͰp'(UJE=Mׄ)iV)@X*Y'e%9؉7 ~?y8,\'dIcN~h[҆^yl+QTV32tKr>0Øv _ 祠S2(Po/N}-uH#l} WԞD0+)yV8HT һ)[9`p DiK2Ye7)SGxW3-eQ OXT@%uéiJ7bKICO]86tOԿP~dǗ0 *[وϥCГi>Uzn$}qX\Uq^Ϛ0vF.ykC.hdiKo\rpn>QGIeS K k*H|1^rңma+W *۹$x@ DIHbeiUB\M VX4%'#(颜"H5`D"#42jY"sVY:p>yQ3!RbRIPMiSkb?й7"FѪx}p8 WŃion>2 q=sw@{,ic0Xsْe 8v' ec]>0 b ~ֲo (|?="BZrd3F/֝.~;HF;ؓ ?%Hl܆OH]6Y,Htm63UpQ;"s.@-}uvx%f|:P(`H=ÁcwbEJntD~+A/9&C tP,+J6%`uv-dqQ.̔;?=#-zE8o|$*A4Rtafmc;==pyxG[d?F'nxY5L()5XкX\ xL-(~6?(f5ȣP,ܙw Ea7!&kbw_pЬ=\;+)_VS×媙 Dz`ZrSf]0Y`R7ǤcĞi׮ȓK~Cb֫ @Jj_j,`9j77k#Gh V҃ۮ?Ï, 'MY b7nd!uŦ9bsU@-3\A3f=o*c9#^x`B7éJK̉=R{)^-񇋛sC}O͓[ImhʈբFq2څ-Ba` HTa/CU*cz91Xԧ4LO[O #EDM'eQZG#o\. v#${N:,.LZMӮpz"2Z+wS 8~>fe_QFQ ^b5Hfbt!~rI3E$59Z~pR]ɥ&gp(SRkCۑNv$J0ubuЊ"򢣇Aqu\{oZQޥw^'p)ٖ1nzp$~%hMNxvE) `L j-5I oxⰨtzҺYCILt8`'\|/~}#!:Z+7,,Q@3&5M> /)(7D#րQkm zPaOrC0p UF9,[ǟ5 B@Ц~Q}e*Px}fy&! \5"KOYir4㎾[De9媱"v5oYcܭÌ4j=~`ՕxO4RIʆlئP?TcM݋{nUⴾ%e2;`{?|ptXw4f!ފ `pkJ.uj%tHTLBg0?͞vhֿ%KQ7 o*==Uf]\:RAa߾?וB1Oq4m]LJ /# =Z)>\\:DHgNHs1EblNЈde=pGU#. s-]Laݦ'jaR /N:]3Ug+!k2+sVnQ1Rv~mmӋ9\WEf% o 1$qcEr {FoL),,JS jУZs=[5#o㩥d~]QtXqį3ZA <NHZye-% URW#}-N~de WS6PsZfl@}sWIְZ!KɞEܕ&]QRMG?F(EUWAz2d;gzӅSKU,R9VL\L2鉈Mo[nIO{-o[v+&0%+rI>&zf2Ntܵne0g%A9)"\UwZBړ7h T nkDi;) B3 [9ǙD.E\zVfo:0R[^p WJ-aprյ!ǼWb"wC2fIIkz@ S q## e4OA\u&m5UhBh4Tv ޽ݕDzvz5E[fk_eY`2a8@PCYtu*Gc#f) 7}:uO-,ai?k>UMIGsݍ Ut4Fֈdrn|OH<O=:o 6ZNl眛&i ʜj. /}XXBi1'M2@8kv9#ӂ9/}Ė OLVQ7$?ļ\Fj84C\ ,$[;ծl ΪVd2ʶ6`Ed ?ˌjՖ.X|#dnI_>6g! !wB'G(k_M"YF2 9$n(-j(dnR#!kZI臶O 7Ɏv<շpyK wb #8g/ed3^_ÌU?nĒ2IhNx9Eʣj7 VB9kލW* <̏qZx /kIR Dǒq-,Ҩ,}x]GL˳5eu٭I0tڸ_DXÁ/nrzm 27nr/&ڏ=EyR_jJy} zG{fm*nU_cK u cs9 }E2f6;g|[U~[Аb${@%vVK[RY抅;n JR4.1bnԆll` 0ovD)ҽd &wvD}u@Ý5@Eäդ"A|[۩-eM9XU[ϥZI5Iθ=r_܊F/Adajr*t-DA> mFdPȎrF"FG~.s/a[a 3g>=p)I>ǘA.EK"e@%Zeq:Mx{iXg'Ҁ ' Oȕ'b`Y#tG^AĴxw G!LJeLKذH1%7% IsbiHUu<@ 1qJ|հ^:(%=:)i*/k I8&wMUxZM4U~  IeĜ( vY~^d;gO-+PV|Te+,g$$G¼Ƥ^bkh+[uس[a獖wcd{{ TKqGw>W2ݾruĎ]fLQ Ev?n".'Qi Sߟ!م&c ky477#&H&[;aMPޤ 6ioAGTs.M='kOӊ O瓁YQLX(`M{F@ %bÈqaBFΞIUu_HCyaNs,R ũWg)Q |5vVm@_SO<7g%> *6,q;fPuOQ5[ "\tǵkb9F.T"з~pOUG9ǐΌ$ѕ \ p&~7 {+K{P^a!`wڍjskD4 1*v 7CGHL>o̝vW7Otif]5B2;ӷ܊9E5y>`)l˯-2o#wJꙖ hNy=f*:t?_HMbx.VoZ;R==i ౾R'7’ %ІFk6.!W[I o-I5ZÞd@^t9] ?jɱb]t - RFcn᯳^s2§GKGX`]N0OP`=a ɓ[cvߗYl0zeg"r6>h< GNW [v!1lw.8Do?JT (L^ P_,CXcغ0,ݢj. w q|:$N @D>*j_Oĥ;H*­}-k^k[s_4dk\tiQmn.z| V G݀q9軩w{fE}ay,5Q"NЩѤn̍LmSHpbU} ~~S&N&O䨆G7rG[1p֭8@Q7!e=i#kLtj%U1x#>g41BїPn~8bTJxL<+1eU@Q 1뙧 /q,sixPp_Ǹ03N qzxmG(6!j7{ʡ%Qc=7Dkh@V-B ]1{ZL"~a[MtrA98Lxཙ)ap@,*-sMwwORs0 (udOJ'qM6Ff3='PJ)<߸OŃF`51MD&LP{OTԜQ ۍK( U^9ls:_kUvKƽlg:;{MEݬ #060w@3yM[dta‚Aϡ|غE@ JqD4W1^D(E& u@]";3 Wőd)h:p!'wAc`͐^+_,쭍EmDx^7?YD2{$-AaUʆw&?8Cs~be$L:8hx-|wffl":1KE@S:lJe/5`ˍQ͚)A}/ߔSڕ̵hCJ9$&=$r;ҭ3_Q6:n*ߞ+xϡޯ&y{,mPjw:!l]b2=l'X,Qd#N gmL,ͦX/m:֨$f+K\j8 1!|8۞G/D,'@\JB٪OczA9"{JEL7Oz ̄I tBj:[wNd\ϑC4&&ղ0!*{Lp}҉G3ZD-E_G, 7E`|so$ 1W{eZg7 'ICT=^cDYn'zm¶ ĕt9/r٨@B2Dxo\Pl Saf8OTSQ @TԎ*JpFD:R?9T)S$A!-?2ᣒ& u}4[Kc8 8uU)w8c*l<]b`Ir7E}mzEHxF#F-^&X;cF{Kr^|b?XZ'N/Dߓ!ńI3($yuQeB@<PEz9!Ea *lo|S. 0l bXbTB#cm<)g?Qa"I_p櫀-mK2[yuz!^>aNWt"2IN@(plZ3=A 4<'kD񡄱m<́eV.<4gp|GHCTv1] `36V6]C E#TNÖyLy9 U7.ςky?MN8qQӝR쇨\o ]jDHc,.Kd-_R'x_<@쫆z W1?1J¶xr/W)4rlm$9 ڡF\zvјoxI M G[Ɔckǽo20ZJfDKɡN iڝr1?nlû&y SI_mt כd2TRsnBcMv+@knBoz`ٵMlOq112!}Q ECiIjV _/^hCױ-fc)DY,+ZRVRMZ`'(`o J[#,sY/N;^ (ƖJgqXrF7Z=⛦41AT=mGZ=P[o, V 7FEGQfg><-}R6j]]ּiZg}1K ZKJʍtspC's_C)ǰ5Ј:,/4{O-M#Zۮ`N5MM\۰Q%kC&C~%x~В(ׅ g$LlC6\U4;[e&?ld?P'6&oO5}NdGgn *@VQ +U;I_qimvO y'ޔ/~v{g|\u9!zvh [)@P()q?EI5! Y>吿?W ]iO┋htc*vaSvq,鴕N%5b! *e(i6*glضXnп@ߌ!GE.i{%.3V(5IvE@(D+8i, 1&=Egos5j18V  n w4 v6tZ!;L>?aς5Թ=N[I3,gcZ,^XO$`Q; U}p%l)@{&)v1>df hz^`{u%Z.X{u-(6(K^b::w+rKgdfxoB&n1{xaOXP(8UxYԒj7鼜%4d{1~ Z"HIJcr%Gk_z'eNz?jjP|UCg E0{|% m|秎i&fHbRzUX%d7t !츭.MPP6cb!<i+.@T!ɣ5vxAqtC1CW:NFPEd8)ZE ycU*[Ӣt۪:N:^ ?EFWbS%q-h"%t2Gm$\pաM?+գ@n(ms EChGMh˘ctC:6={c2n B  Z`zWvQ +4p۔ xOi /-QNT l!w46/.<{vwWT~PӿBA"JYDS#"~ϏSC,lM̳iYÿ+V<'@X Gf..:]L-*Ñ0O-3:Rmd؊:T n3vM*fZĀὩA4BN&4E$[=DftbG UJb4 βw]4S8x~9\$yЇXf9Vq><&+3D'4 +j p5QHMWDXL[ 綉-q>}|8RK" Dd#ebMKkF-RwiAtcTY8#/ `5w1KK:ߖ4=@'MUuW6EWad]5f?Xk7]!gpI)TJSxBXzX _ǫ'md,4Uy*KbE _I:m/̈^R#=83c"€zͷj+2^?΁( <5lq}{(Am ^g)m/MaD9gք cgx^Lf/Sx}u4~>5H;v{n'0 Srƭ&Sdl9L},[6I'`fEUF՚෸)h)&VC[lRAaB Φ,GU X^GXW|mUefL3Uv@Qae$*X>?8}GQI۝^nlTkdYeNLb# d念wjLK]#gՆpS=?<?ھz¿QVBz`Ⱥ_ƕlH  ҩPKu&_RW#Je4ƦJafמ#<Љ.fmuCivt6-^?LH7l(Ia&(z.dc.Z0q{ TrRgG woE)nJxb ʚu'ca)fzg6`18: Զ<װf24wL2CpTV[=i_/Ͳm1ѱ=!O puI/׬oCvW+ ?tRK8NhE4#:%O/m %|w c";AA1M8'rӆ`_I5}3!%ziL,yJKd;8Lo\^u;*5] |ǒշeݛ3f^UW8Y?vZDA :LZ {6 -CR'@Mqn K6o:GZ* |b V2y^TYg_ni>Yy`, `n6߀-w '&\ҳǒ#=g {'@(zM09EDŽa cR? ԫaa-ØrX5RȧN[ M( / QHTTk-d{$To`M>6Т^~/XvĩO߹GY>҅XaF52rC'q%#. */Ջr$72b턀]$C nK:pO>@۳hB32?Gf6 GʥYԏJ^ O/mc}n$!#L$wVu r-H,G˗դJ}.I |לJ~d?4U>GJvV.iN? ҟ'xٺR揾n!5 !pg{,8Un\&&G2 It`vNhVAs55`\! t}<^7WhC#[a8  ^^FDx\A{r5v\W[6ә#UR,k1 _-)DMY3~-ߩؕ]*ʜc\zC<|-U&_XQ^7wIeŰ&=qI b>ӧ3-Ji\#1{b'&l e Jd1P Cm+30X}VM6Tpw0K!@f *5&2JJCyw+@%wc5Hև|ixm=0-Ȥq.<Cm~F~vpBZdQ6o#9ebm?B}Kslt'$B3•PK|!BOЍs7˅D-I`q>1)1:qsUXԟ骺pogqerpBcsbĪMPQM:&OA2@ aPBΊ?@oTp$z،NҴUնX!+gh)lb<8n5"\ʯ)Ew~gr9U~ř kԢK+ַDIź^ۄ4lBab] .ێ|)GsS9<%b"fe|v'^}I缊C^HГ[(&> )H"Por>e9 ǘ !C -@HK ^[oE|YjڂX5Wf-2Mdpu` ldD1ud5F#/o_t_1n6G{p`<@7 [F jgΫ,xٳ)u-ľ>} .b*ufN"_M[zH;7%P9fF4Trpµ,"D u{e?N.3(2S 9I|[=j9:Fd\9?8%- Zn".M`9-}2$Ćxm[\"@cU%SœUL,-dFI;I뎑O[1 ;15Cw#Qz+zZ&EpbCXsu(=riDIVvA azgRJDfzEEkVJ~J ;~Oyehɀ D!XbQ3ZN}bG~⬵6T >kGW>f{ 8 䒵UIJr_VeHIG9sqϔ l@o |/Э"w찔ҋ &Vrv$_r} ]F$`ڀW="@$K=@!a/HVzN1FA;dJ."lyb[QP\M9QC"оT#>}d̴/*(ėrS 1_NTS <OykC[?S*mEҟD Kq>+cUNVV&X(y)Z㰸~ȕn/-X!VDol;[\ÓTD$&AAZKzz=׉%vTn[r XMN\biMMI4PWC?GG/-%$MWLڞIeJ*)'k4]qxcqJMծi=m-G6JJJ* Oa6cc ._~sI'{3# Kh]s05SG!QIUo#NT_pbmbB(0$~iV0m~bwiV<D1RwbݡzЯB{Ra\i"QPa ||^Z[@Ř)'OWWFMV s5\9 qVqLccYK" |z'ԓO0 X3$" %=9ҶD/QbD^D}kjpqrnOZv= P.ꋅw?0WSctlGZiu"'SYD7l'&%D^Gܩxi@yCN6*c58x/`;'N*ݏO`B3ǐޥ.y7UpA,\2!àJy2J.>0ys0Zfh',`dg n( ł)5%FQshfS8ԏ53AڊPis+myBMt+d^8 `U. 5EwXVdt-`sw;79C 0M+ lL%Xzb@;0вK ׀Qͳ47eXԕ1=*q~z %dV%<*-7y#֬p ڄ,߼CNQD)y4y@QJI〗ıf8s\Oۂ!s(O6Ϙ5R؈ONZfm%di1Z6?!Uy0 #> l#ͥq"jq51|Fv7,Vp⷟PV փiwZ`jga^:u[ӷdBdry0S^B`H] i5lS\0xacS$(7*/8I4wC98=2Pֵsi @e Z;L%sy75]뗙Qe]*:&S fs (:uңWvi+fE7} D"-CKB8@9HmlD =x(&rC^XPOfL%K@iW+2ddDuedbC9Ƥv2SsҊU-P -tY%GqwqѣxZx8##$ɕƖ]+ĥR8AZ,>sj%zhF1v$`q齻zK'#P  `jf 29zd:%?C4 kƥa:oD-!ZpgNxG6HG,91ݮ g5vpMpвM l&v+RPB%DŷRkY g\ƫ:K AͅqP6F#Q:HuFfF$IhH˱ c=9P At L`i)/rp?oc GxܩQA:7<٪>uRvv@ &، YnDg}OgOT-, %9 _#Tz8`1#ly^0K>;dnj_ﯟY)SEO7gbٝa #LA> ;l Rܪ`Jc>%H$Am8SaV%o2'E#sZh,h7Kqf96Hn[{0)ӍIy}J 5kJzD-h  AdX}?!R\'Ӷفyn?TbY䜥'3^Z&?8_A!l=#i>.@Fc[NDuF-Uy`d?zB/zsW-LVj我aF.¶ءABE/r=Uid8%pq1cx8@Kkh/SA'ݪ__΍S~qPLģ,sZ웻5esou`o4su1s>s&I&8!9;@hR?5 3xp3Zaw~ M_Vt7]%I(] `MKB`O_Nzz2]2A4}aw26U"u $LtSӋ08+r*߰E% uUCj`L6:}z[hv )LigW jz({41};ߵSTiq6-Ğ@a>uwGU7%/{$bަњqWx^ukKZYDX*/EEKKA.q1.s1k6rb.`l\\-uBf5-'e|SObrlef\vԔX΄ TdUW0:RA=%4 C2KwsSAx2 ∮܁#6L!YiF}@ba N}8ҁ\q˻]%t4Tj ÒVV)A YٛT wX+ $@ +'? &Fdەk68ZRȮٙ\F&}V/f0y?QSO"lcI0 X "3zE/^~7D1 %!ޑ"otKc9wPU{!VB^l1OӹUUu?0y DHq#j=wnh $#cĵp^t]7[ P)> (]a }Έu!J򺰈B=5'uZ{N `Onβ̑-L3:g9& ցZLn O/Z%h޾u*g)$mSLfY':P\E5!Ym34hFC7p[ks?9&]‹I+ ޴͜XFIj/b*wAo%i[=;xfjmWݜRNBz zjݾdq.$ar R|x85;X"b |s!  nc;qŔQ Tί .)~sf2-ˬxQub.00mCGV;y M6]RtM7>"mpM`(ڼ3UL2 5'}9t:ϝ!4竵^nJLobnřr4M[!*3?;r`}t8 w W$T5R+REunʭ4 2=Atjmg90.XZm<d?N;TԺOuIڢ 9:DH,Wʐ8+_![%1YmdWC ;бh1h߷)C<#>N*^{).]WRO"ԀZ xDchYӞr0 gmUTn[P¼к дoZkՌuqV:|㍇i1؜Kx~s~"q#M6띄-"h ~R4.$L5/r9^"$],.zhV z]O!khe%p^_ifS_tJ;ĊXge35p5Vown_ٿbLU`zh=ˠKa|_J )ώĥya I5ZokbB-#Mﯯ3CFմX+)%JۀdLI9тb'&0S}Y1J3[.Z6}|tjhEk"sr\fp l{Vix߈kaDrl/ na Pd, VDm{-'8dȇs)`2XedugXSteeSc7f v>mt`tmndXMyH]bCI p(PE3Lީ;Nd#ӪN2WJAEI9:WdG<==hDѴLNQyf+5|AzX Z͜ K)`}VgQm&1u3 YhڷbOI*{1 bH D؋%]ͳZ5XE Z l2޻l?7a1 Fb']u޺QxIquu&}sm`e vM5"Br8O/II3*d64,n=ii-WT쌕28(xUeBޔ'~FaBeL͐^A>XykiYx<ٮg rD[]H-ُEhRUMrV{B -/{D"(rnoEYFO\33U ^K:ɪsN0ϐU9MEvb5[S>cJ (mj/Լ6݂cY59oAPJEE pWK6>^jF4W4/հ!zzįG4Z`?0UxŊ,( l1rcv,̍nueVzECВ.ן䡈*͔ 3 \!>_WKq/W7, @::dQ[l@?gm]D4F$30qP9/9(0%h][x*OV*:U:K8'ct& 5c)%ڌ/ۇ%28:߼BR4PT2vEڧ=6>y9GmAF im7;\ZEy롗e/Z:'NIKt(;bݪ$=yg\TJZ:PI`koU>i ;hFy$/_A6#%wb 1BxPɃ^Vqx"CNlւݒ TU-8 G=x͟T^XH!3<7ۊh`pR3,.lv˂'X;`y\c0™5b>Zf1kڟv,ERf;yr mY~FS3pMJ;ʢi[ޒPX#g pt!X .+S\m Vì79JgRιt[S}$PȨKWR3:UcJ o:,tMu^Y$73WkR.-]b ~nԎ-aVE1Z2^)š 2pLϏ|>VXGhꖣpRk'*B ֝cU@?>"3$V:(%Os)j'_]AaImX+s/ B&[ izsq,$^N*ZzoJ=!|0{Ьܱˁx44%vi;\|N@-+ I r]BfԽͼ$3yn~5wÛᆧ6_pH;8zHC!N+QQ,P?V>_GgD0./79!HH@M?fR6\j$Zj$hQ3^pvtm;Q_1KPv$*]SrswV"s(ox›%t-cu !7/k|CyW6QE1F.I͘3VM)&)bV ?`^Xz1cIϕMV]02mfL;~?af&# pNms32&- qRf'O6ڇTTrHGeﺍd) MQ 9[o-vh6}ZX@uN(#w¤1Jlu[ '٣uT_R\ 2b5[i`LnGLCtGdaPLCrrck _ViK]Ef*tMxtj!9 䅢nf}2*!g8aKlVJ\ 'RZ݉B*0)@\:R Wb!jw,uFooz;9{?nxx5~!sg~Y7_h%MV_24h*'vL|LR ;S`Z,]k%‡9kףȓLuǸE Ιr:MഭK||-iA0: -PVw S4 -,Pj[)_Dv١N&Aa RmJg16r}S3EQBܱr?y *@z4_ބj zyjcb1kr?R~l=Fw=d_Y@\i&?6 ; ҩ'L3 И~ $~Wqݯ%B8Lя5Q[)RYѱ7VK܍|vMއ}Џ$ dng쑧YmG.+ՉPH~9_&RhV 8;QݒxLK90g4\&aJp<. -*Ш90-u`_4!b^Q8_C!,Kp9/ GJ´:@@x<_^`B'Wby+=- sw/nyȃ3mQP2yJRw›087lz28:^N*.#IDF4^@QED:L2R&jJiLJm!ƿ T}0>qvb}ֽQd-F(1i(n2Јb v*F قcBxUUmz(r:r,Ҵ}Nf-]YUDk 'eͽ-+GIzQ ']`QTU&l{xSkPՏ?7`S_+vOxvU0tɳ.X/ڔk:XK #2`׸_*I 3Q IKHB";iozԚ'B#\6yKY?%WF>i>!o!r1!bxs#,'̦G2I<Фgf~Ԭ9/ɤ0zg2 ʕU&D . MEg R8 v{ZK*r⸎Ty|Y[e:sa1>uq74cL Ϙ%9"D-)2l\Ls9bJM/3? 7dj] fy2i}.:S!jH>2 % +',XK-0~,MA!p1[A~@蛷i @W TeytF]Oj4jor]b׭ g7zc\=~WF 9n[w*+\e#w2lۄ+МQ\j%''ܜ4#G"d9`lopս8p; Q@ljYF)zՔ=vK+9QS!5ss&M(`4RP7~@U|eC/ۡE|~d] _-bѨM껼¸ieKʿacf2'7dYmY}{D;SGQ)ܾsޅ`w4 jka ^8 gzS_H>jQ=—ú'> lPr@Z"^EE?)9;X/AAG8lro dohvsM".E;|rEY%د!w(&`č̬DtPI#~VW4leR}[*|n3E444Gn 1,ǵxQBs=~[ă"FHHk^=-nX~m˺U{[g^l?cG2vlh *Uff|ț8-uiF&;͜x":_h7I^J%WGu(?aoG隌3벥ho 7FBZ`9^7.y58üHŻ۷i30H:I0#]&-I= ;xjĵb'?Vl}kafX 2DtytM r?YH*FoՕʧ-f|F 6(@) |ً9ʄAMl_ D }}Jl(Y@bȨ'w:pzz@Y.m9甞`F8 zC10a5!Z:n'Sw е9.1VSS$O5WՉEPv$Te}tOciPS-"k"t Sz_}{0QLCAdSFˢUt(Ч7 } #PqwduVv%YۙMMk\ u:PJ#P^!+5 F{N7m e@/8I/mὸ}ކ(6;_%׹3mm r ΙSR4QnU+.)'[ jA1Iѝ:W ;uY%(BU֪tRe?MO?_X:S6ĵHQ`zW 쟂8Wz4$-9tЗ]&GCXqHU-óOӂ4/1y#u3Oh/mq*zgzph+ýV ])W%YcX}i׎q9)huJK%vg!btv蕁/"H({PDDMǬ-0|ͱ o99I%}! [$MmaO۹LY=l0tkz-++=RP:V53ښm]̑|BTITgy"L9N>cN|^ P,6MQPs S)@o4Y_-nۑ~U>jda_Cr`ݒ+M^iAGsDǷʃ7'~gXط>[u0Ч3d%T(1J8#P>_h$QG"+#Ҧ@ѐOL90\š0|C^6?D_93\Ў-2Z/RpJ o2,w_L)f8җY(3_=vvVBc^9_1q |)<)gQ!c˾jl#)T:ehD 70I2lwZK7hxVrP >F 8$]I" Q+/%%~Zs%XH : dVt y=-H(|xt-?,k+.en(c#&Xiʸ3tVzenx_  vN`{<*Ek-6e =%ń=%B %C,[0q5TڐQø"ubVbˁ]}[*@cplי<\lcŗpJD.a0-#7A 70{\Mj?X;ٻAT3?+mUf/ʜC E]Qa/v-S*aUCGxy=/e"Phmw08x!V $GR]%`X\pM g;jh <4=Ѷ,2o{zojю&G{[!(g3,3{HlRU]PqCgVzB#<ҵo}g_%exqmnY?GBa8 6 _$$j>INXy=8Y80=uwJ{Q)=Kkc%)%]Ȼ«m[3`%[kh_ֆoZNr^֙wS|˦(9~frW\eImObz.l84ǯ;:R7tG3CF UjJ ^  N8B͹[p33Z$ 4@[g2q55WvrBj} {ī- CNodoKX֝ą6 4-4\0`u8i!08ͭ\FNǎwӒ0a`ݖT6@A>! `pF%8y L=ԽElҺO( ot"M)\͆flڢX'&eFbloycK2b7RQ@/MC>|Pp.̟b?JnդC&˷*n%QN0X0UMCl[ (f$ i',_Mbp5/qlI(i2[m J*^h2f/͢D+/~I(ljm(~8.,B;` >1)ݸ`vIQ E9x'[vv @ivøM=m$g㊰T"&1#7S 276Ѓ6Y^-)7{=שY3i9nr_FfzpcŞ|m;|c'wvE3 mњeE1d?j_Xz- Gf"g.ygRC+cG'KZӚid:9I9TzfgZWc$UFo.dsKUl>-b߳&ݱ,St&_?G}S(׿%<:a0=--*J3q AJW*N= 3ƢTJ4k0ok[&x X/_4:N0zukfmZ ?w|w(o衃=*ޓFO/0?AAN= (~m~mTbvU"X E"8RucP}GVQ1O'/>`1UzFX@D[>̊Ez3"M\~Wx.ˣ 2m#dTBbf| 2 W_^ŻUqv@V lbE w2XJ@i ®I,8szsfdJ^C<)~ (oi%w栘>r`5JY9"Jď:]2Z3JF{!&.0 l1=18RbLeU)22c^^bJfߗ.#/F8xl┻<*[WF X ]鶰aXf@A[:D N|B&k !gK+<'RhW04w&KpmZʇ8(ڟv'y U#8ǜl1M(EH`K`h.ecEͪZ+o3v>GIa6t2f~pALGt6anK/'VkM7N]_y )9O\X6-x>Y/~~@TMƣbofYGvVxpW QPFw*#!^̶vQ<ST>殛V6`| KM5r;L/c^<%ہ & -m?Fݞ XyI[NJ^@)2SZ|$F:;u{4:\':֝wDP칐 Ƒ)q~:o}c$K|ſ9WZKs~=np2v48s w v}SI;)+^z!3YJb *k cqz`\*E{"zj+)R&$)&6;d}}UArɅӋTe4AԶn>uCP`{;$Z[R\mqˆY~4]kr:JLZgP uHa!-f-`y@7*ɥ<@"cʖs@ yOy&֩ƅ ?Yړ&̊K/H@ {?sհݭiwz7[cx j%N~ } {'&נxw*'>&~y[ZbNӂCnjS񲪤YC37i? )֛|[Z'jh>B8Dg k`J-l58+}WuN*]@ V#$.*} =j'I d#qƧ{eQ-iOcuZ͗pN_ N[mvGؕ"));!rs-w&͈﫷<؆L b#j(Nծ K3k,)֯qϺ7KgN5S&,"k0엺%6dS ڛ,\vMM+h^h@|7z7zZ٘s\Va]3&ՠ:.dEw#(Th;<ۜP?pD(O`QpʧV,8`uNRD.b:iD0]k2W\^S:IG]c rS+נٔ*B?u%:R@Ѭ B.UB”,+{\Ň#z|o;_5O"*;f+<SM ţ;Yt%2I2mbqKa;g?P˷hkj:QX/5ɓ8V&G\p_4h~] غ r9ED)cVG^,KS GLI:3E4 lI6}Ŝf}į @/ SSb=g-OSK> 98 -Ч 3$xg5v('&Á-q1 q 흁eF󕝭Є^-ZyQT5ÑhL*!ozjɜʁi [Q \B&zG{w BIY!EyT 0KQ~DJ8Fv1Go~@%E/c8=ޣO\qYB)\ YB45`k-'(pl҈H-̑QN36Ac }F-9T׋BMI] hH8bmɅ 2e@PEp&E=1ta598o;dyV'V_h7Ct-^.1zL M* 7mj6A3r;|q9i,b!W<0 XkM?zlUķJL$,`zB,3%:ӡvFYjjAusҊ4SD GF)@z^OYXuVO~Q[œBp׵ǍwlhŬŵ\MQuSپ64 3(5=Kw_/wA&;D ac7Y 6$Vjѭ9fkk9rU͘rf!Ҹ:P籮ݣE7Z[tjoXFAopj7 ޭq[hʭ+a NX٣"c1^D }ioC!joq^!Z g5f\n[qcx:6#Р{4~KH<=UTL!)T"חvO}B7gA$MVY,׌ꆳj X<.* L$1ߔzS71o㘤]YsG==*EZѫe`:p R*&W (6n ]+}EK*j8D$xp6LKc*ZTLsPT\4ji Y =v ,V˗@+Ks&s\ѱ]-^K5-b睜J]ꇇ}uEKALh#DQ,ZWqJ5q3&^imuD\r4KZSpk%UuN5 ,$ 2)'ztǞ5HvmҐ[j`y8qK\ґjv 8_n`|V{5Uk+kГsQy~̹#|I  F SYٚYR:uǨxSUO!S#+xY_'1<@ )܁`ց)j` ^+|oEK:k~3y,Y ^ W/u2dX-7n3_;B>59W5@)Ongb.kG,V\@f l!w^L]BUOChJ_@35kD!*`ϛ2yCr9|BbVV>"@T$JlÅMbq#N3jc$c>^8b^oJJE>r0L W3ăv]H!AɇX`g(ڋ6`KG>YvH0+ yT\zoyDM⤇1o%G=`t~c,Jb:5'@1ҫ1)ShCf\wܟxj/ fwĉ]1qRe@ShVE;lIsf Pk;C%w~;u?">&ƥo :4HҰW/ ybf, @&%ƃ /vEH[ L?ވ0{X\>&{'En$peڈK^z??@*Z UкqZŭ)hȃH5;j5[Ԡ#| 4 /Y H|Lf}q9Uq^]I4*{hk&< ӯcQ2C ܆v> bc?&3ڙZ˕DcŇDAX1רviF%2A]Ҵ4 ͛d4ФT ~ǘ=4SBgT 09,qX:Q6T@ ]3 ,3JEXV Puqq-6m@XHVvw@B'*xw<8Bd7ljoFd[BJ&ү3z,Ǒ;M xGzWR흃H 0וupH 띺3xCWMϖq%">97ށG3@TM;~*Jqư HCĿAa47孹>?Z+OYT"H/+F i4"]fKٚ>$D0=vhŘRPY#\M1Xsٛ'| KgÜ9 m|Kc,82Y^vV>!H%my9(NrKDwd+Ȱl.L,فԾ?H*ەfas- @o=s] `=Ca`g(۲J!/,#Qw 4 e<%DkJS碒a0w)Eew6>ġb .-Ͽ2;mlo?Zej fMK7$-O@/:3P۞*tDH;^l=- . X_K#ikӯu(`OD>a!ZCOizk֗KM?omhEoU x*#4p=Ցɫ㔍bӃM|;ىF Ѥ! Wz&Jb6yܐZ)#$ sb1PU$U>=1Wӳ0ydWSj:ѽL37|H7:]%V@1l|hܢ`*w8Ͽm>֤ja0f呥߅]MF`kCL;Xo{T*Yky,""o>Zub}E70kJ)+xFST_aOaP[^ib`ҺeqEl'@/Qd|9@a5U 5“&Y6/C OKb郋|pz0$аwP>n^٧6NkX.eݻJw ڪg#V;B>^G_d;cEl׷Gy j ;/TYi~+ٲЛ>U& .^B wUgl> -\d5@R tz d7.G>86&ru$F1)D/&eYl^<AR׃zYc`% CBApand_.d]6=#ME'X+u(m 2@Eeeޡ[h .$!}.}BJ<'' lE\0*r"09Z"ɢd??dl*v7AG @00#>v.yPI.z')l)$L*(.,7R?Z`+R5x9(ڊ&# I\։3vGKJTk\Bfah.W!j8v7fzĔ+ A$ppE^N@ dJ o,Yc39nSqw-pcMeࡁ ^"o`e6غHϫ226uw4+q(_>׃N$JT@FMq̂ZaTmN_V̗cjA#ѐ¬=yZ``2s%}H=21}PUr1n>.u"ȧgoeվ2[yZtgi5hQCSGȞ[Iъv,?NڣH5T&K2w:.mT Rبdn*Zl~'"~=@_jճ۶`8S?$\me!$G/% .H0>bכ*w6yCȾ00*ٛfv뚷kc0ˇkJ]4[$wr]YďHWs: p` l+8; w2;!ȅ ٣/:!NSÿB˒JiZ0`昢GHW8kN`V̐0܌/ -Y%AL&؋I1ӌ;<ҍe [Jo{06;> ζބ'FAC`Ab,;ձ}Xob '*f[{2B:J8)pX-\ B.7~;N}%+K,85O?KJ~|~$H,l{TxNl',pM{.@XWV/D䡏cAFJpG)T-qڕbPe*&{/W,"id#iՄ(L7",RXn=ABD0$eV]/WV Y4:CŘ9/xjÙn}mлBCQR`Y6|Y)4YЬV̯-#K{Ż /˅iUwXR@"& ([`j,9 >X &y^6C(d4Yj_ܑ Ƥd&LS]$X6IEQv`a$>hX&vw7O;F`[GnvHlp8Q}&XK&ͼ!U 7z{HoC6Ni?=t@X`PD3 :Yf8e3Az5յk ^vQMi~kPjN0cO9`,leC#M __$'SxUz;KHA&=jgeb׼=~DaTɇ|],jWx `BBʶg4mw`wqx_ǟu$'$T-0T\DT?iŬc,$PuB;֯ln`a2iqS;> b'F 7엞rk+ , 6 /`߸}f-JPR@[4Q A= '0 .y:`{$O'ő.1X@gJkQ2A]*b"^\n~^l6>2`F!)Nl>[!k{VmU0@i<*VUrI{qU 6_*}y'SKч7 QPgn0N{Ϡ2LGXfjYy7d5lGOqLJ  +Ӿ>?dfivf-O_F`]"k8ƂJRvkHꥏ3:ň z3؃^87xՅ\\s0l* 1ZO6ݭhP~ AnyAaEW@ILu1"IPF$ Bz"-<B洷@u\l^`j )&!&p(|=(JEF2'knsGKV~AW[Ӳ_Tɼh 1b!Ԑt~d JWy}quԴta"eLA_ѼԐ''&(fX`@)\lugr3p5 C~baiu?K-5\˿ *b"#", pUTUdd>yXo0Angp5lAzN.ɤYi%U<-uل @ ȌJG 2`gi0>UB`}@u4阅H͟[p۬L$A9{5 uxy \`~}Z‹<) d^Doe*^F H(? ꍠZ~)i\1qv~km[ΓV[{$X9ARݽ}H\J!bbDs^7b/y{朱} οsP֔u(!>CRo~1h-2 )*Z&!dB1b:_Yf^ÂO 'h6}3.51a3:yO\|Lݤ2H ~ 8H`End"_UƎ7Cb  MmvR#.+arQGe(cEfHc56+x ;"G>NlDꓥLAͽyI5!RHr]P۞ ͫVgFXMmݏh;vѩ BU) rBY~<`3F0ٳr47J{5SY+wWF[PQ*mY#fou ~!}l)JEC"Џ`"Y7Y =,o^Sa]^\Y}A9 z3EnLF=)E1`˫4u,-[y /(LC's5H86*%+7m1l7~5>lsz74WkQA‹%׷#Iݨ#B#:< #G6J5AgҩtXmp51eez'M~Ҹ^8s YCk:F\dG]4U'|[*Lö :Mx* oJZ>% ^?0-`*2!q(9PG DNɁj'.|Yy$D"EKlP”)2no0[VR=) `2 ИΩAlzݩ5w;A>DE%zaԄ!^" A7e`+'&qu?tvͪoPM a_xȸQӁ0o;Ll! ӄ3ԡ6MO`9|n0Is;O&Y?+OWNv'V}?fJ 7"Tp An~[`czqHVo\$-l,?[p$I^=7{^"&Tuw4&'Ϙw,wol]cv#T{nD@+bYpt=5n4 @vW̡D@WԊDT*a?JWҾy)tX@5Jq%hS\gd&^EjٕkbL0htsU)Ҭ)VRa<$MwgJ6ZN_@Ίf|T Fg^tK"K9'a|O䆝rH =Izg$pz6< 3 #4fY*ZwL/1 4DUcDd7H;+Je*,.l5G$ w'@l܋泊H8gn  =EY*+ڜU|Z$oGNøRmD H$_iȊ:j Yr%׋-8EO2a`/&BxWQ6:Pxl1̆[<( X7ӓ!BR̒+Znsc3ld:_OºnfzZ.D%Y`{4IowCpgMMSO'S2S7ZIj~yxXL/hff_LRIq\ į#B@<2E>n0'?IBߛro8[gjlRET!)Ñ*szTYxYU,>+}7k*:p:U-WhB0b|TqP+sox%T 9:wJ9qUY:z̸y$Ȧt`sF@DB[ʹm7CĔr+CjKbR䘗)69%Q+uB̞q0@ҵ4c+;z=iZ~Q*@Al)& & "v/Yʖ;,]i>1De[Nkj o(=Τ.dv[_U:g*8rOӱq ~;d?C1'3}]ɷs%nb xva ; ͯC%o pnj -?#-As 4.]?X!C5 ūפHˈ+4zri}I$nl_Aڦ!/?o5/4~X\+CD,x#6K0F;m]7h@[ď;{vHiBji]Ռ%tS8?f)83Y,xwU ZGp#^ "Dڼk̏È @e8`e 2"L7G[þ zEr3 1kxy7tN/, MXD,x] G~H"=m}r']]o^he3k,`R>ä2#BY@[!E2ֵN­F5vN dGVGmv!L G"(IPbD&N0r(jPUxqCΪyUKhzXrmn<BaVgRl <gt*v-ݦęare0fE:K=@a*d&ggTo%DN9S{q,!'?e}O6R&8XSr,VA[0O L,!ְ }֙08zr8gD}W Ύ5TtUXD.Am gmKB /+s@ To %kVRBVg`_[1f["g`7JFa' r;1h.k³)BדϣDlqZTs3=vLh a ~ Hv8 H}:fãS + _\"/Fbh NX-It^ Dۓa eDi;=_15۷Ժ^ ր\mtey\AfVB 8M+7 \Q+_GE+O* f,ieי+3dt[-&p rzdW.+h Nc"T9_ fqc,ȧ~HPYy._d s CU$4'%kƝ~^[cU+=/vǑ^`x$LzN0ז@9aUZv 닓tsb*(~K8aOՓerF#zzʸ,oߨoĉmJD==8K:W#"߈!<$LTq0i)e³y7mo/axOҘ"VcIy,v^lJk8JC!ޗoGMݴ: ЩZ$ :7k3HrN L">S(zּ/QJ6nqFTM6 4D~x~|sg=/UZw \L6o4I AϤ3U{98s9:'+˨ /5!K0PC=9Tv1q, ҂圀"C!!}BܴP\.BWô3708"Gdb9-^n荝ߕ#dRถ uiΎN 2of-6y%9bS&KBcJ=&@,wIb:@ : fC{&;UԠ{уe$Tݔ|Ж׺}&R sISkNxQ ])`U{ڐP6S(T󽦐#V|?t܄IuW^&hF6+weYpXFF,/Λ'zZ)R*N,J, ] (sEx0s6^cJK8%DKSvcK&ssp&{AzÉ4,ȝeΤLڐ_A_!㚈!U_X.X.3Νִ?ș] 7X㝂_MS(UlP'e)|/r~f'ӄcԙ 5FQ*%h{.S,lle&܂2`)?$Hhہя@9bZB0zeD jՅ;S? ᭃSĖ$v"(DMѷV" /cB0õ ~F!km:ҠQ:cmunKHB&̦ ϷyQ,{aϷ/jv44~Mb7wCU2 y7Hlg\KQ ?Q~$w멀Xq1mEy(zZyLW N +sᆵ:LQMpڰQ-k?<Ϗf؇Cߟƴ1+g$U_ED-֗})]*)N}m@@:v.xlopJpQ @ [~EeOnlߟ|3&?{4>'jYBvc{7:GL?;52nY[_Y\l1{bG85AS'2GN93nnY;fu5eXw"N@YScgԔ t8v3|,t j?71V IO(t`!!c%}1k!I3?c5Bjp'ȹL],m 95w:v:_^XM'?}A<% Z-#BO f_.K6==zd /TnvuGnj#i̱;Lc_6zoG?o YlLؔOF!ύDvË 8%e:V ɳDZ[M&ȃGU#tH>S֒|Y(OPG~&!" X_nk=M1Kn';_Z;ܐH+ V1b~8l7 ɑ{(Hu5 8 vI-+r³.PDWPNaw kC}4%%|B!/o2"+<-K~CuiO mӠ^ "{Q{eR#,Ԋ$߹~6[25aSDM(NR>G TŢIUWJ?XH)ywUCn't։ #?ˆ|wJWPʗD ~~Z7@Y˾CyRM\B:_2vMTxhvAK^O6UCUpN?ģ |@O F52HpDDVM 3}*"}\QIi5y/!%9CEazږQWH5h^{DsJh. v(j30g(96ַ'P](4žBr}4hcz:HǞǛ۸̵[XȔHr0?_D{B ѥ_tV?ӟol }5=gGU.(WSy Q( ˑ1_ςW 5N#Ųx$Wp!%zcYx/06*20%K<_ё)d:d3%C#[.!oIf℀tZu2tbM'8"W1 ;>jïkOc8~29-i"O W3d Oy|C,4 t2릗14n۲)٨KEXaYefxyouQ8U[Z+1';0rϧU`z1vtJ;DcbwK 1fu18rm:&?j1CH4[A1&\<U`pГE4?"ַ' 'c+dog0U۔K$F)rݓ&b%JK(_HtF(hxUb%K '31嬉 z' -a(E'C߀7sK yJ7M31tXZn%y+[<)*m [1i,ža(:G΢1I"BP:q4^yZcr8)2`DNA!ExQ߭Xp&n׬'k?}9vbZ?ΡtI''<%5I,=L h8*eG!a>G5 dĩwn{a[I#S̼fiR蚃L/;b RW&|j;R_Qm\2MaQ8^6Oqi, ȷt_"aVQQ$Tw g5qH'f)[hZ芈8$SbLTF:?|PLX2ҢS!." FÊTmDL$ĀlN  vӞ. ^ ѾV"qY@ =Ȯ%zA|uz\X4@Q'pĊ{v ! ~ƥ\3Z7@ߝPd[5m~E{^76ӣ@v0.{४ws&~uā`6#\0t=ehw5?P℈d\BLWZ>e{T]5yLTk e);؉։zp@Q+&% [Ѵ`v9(W ӕiX2 !%7]]z[Ol?'3HuX̖MEI|.@+C-)Ulihisv )@6|)rƚD?EDi:P٨$5_q~ѥ.~MXI#``w Byuף\KϹ!(hG5j+ itXIUABWekUd0Ĭ!RTc<\ϥF?7D#|3TU19ݗ Q5 H2[cnzY&̜-J$m:Gϟ+(dh&0 Xp`Vo$2,ߌv;BEH@L0/'G[`'ձ*&Z Y) 6ܣdofE z"h ?=a.3L CC.bk@*J #=,n!\Ĝ2~+@D]&Zr K| \d;u'dsST02W/|vKL}y@`[!&b O~Mlꉼ.'QZ[h bGf E@E4 5G9 jLcNC3RXfP Y@<ze\f796~QفNp|f$ɋǿ7)=)z6M廢IC \g 5L+an)8@PZh$!){FF~H:MĤ> Ĕ4I _̶*#Raȝ^v_C_@F`)}3.2K&f~C=yQMHr-FtQ?Rg< K P-S@1(转3ԌÄx[ַpR shI25] ϋC X/Fk!kZs1/]upIh駩k[g`ȇ^|cF+C`dTA*'k2+ZwS ҏ' lMPAlW*.x^u|Xng\m?@ hyj* gj ̋JƐoe.AVHߎX.&7#|&K<m a~ۛlz@{¼%Oac{:X{=5m6wtrD@.C?cS "m4tvؠbYm;Ba%g`-iġc48 qeF;RŮ%aQuɅɍ_5:4:Yϫg Q1{ଜ}DXég; ω_"qK{Rge^`*Wc-Pb옓mlY3]`RLp"͏+Q;H ]5~( {&*mMA&. OZ XU1{t|c#Pv'c=$FOP߯(Y5SUĜG^Ŏf~(;;4⏐Rh)hPڤqni/D=ޔx.b2Ln G]Z K]z&z{zqè>[A4:.Ywb#,^ޠr (rE;ow3bgX8z?CV¬7tPt# { f擝[mT?y[xɞ.69LoQ_z5ILۜpo@& c4:qj\;_t^ufřTa0:7)(kٸ.=G90Mh'9Yb\ξ} GʦN &sgw*(IZM@ʁ!wK4\؜ꖚYc>A3ZțPz O(y-b8rEZzf$ʡH5tru#| 1pbʂzU"SC?zRTY@f~ )Vm;l:!1yM^um]@/zkq^'U;NƝ꼙ΎhfhUa6lNv@$eŸ )gW=in>שP]LQX7f:ft +S4kUOcg=%HwK?/Y)Hqr +m9uHHL0q@6XXF|aRW=;fA7՛GNv]r)%4 )7kΰ #%h=L!Hi2r%뻎mK6Qˆ#O%U^\04yĮF0όh i?E]Β4*j&FsA]KqB.t ۫j a"^FB\lAZ`v3׈pGkS [ SfP.fԉ^%b]:ݤVӦ EւƎrEj bp4-4G7cKuFO mߖMj}= d}*$:(ΰU.po#QW*=ٚT]3 kK;9:Ec Rv\叡ǥ"kn<@.1N3(LOaҽK>V?Po $BߴݝRRxp/Tӥi;2GpE &yHQX;Zl& {c:\Qmݓr{ki؉Mΰoo CC;~O9;f{d r<  H(ْPv}fCa6t9҇ag@sk$3J -Nӊxݥe!3ĥR;Q<4n^fu@ī/GgV yRvFr)z@6 q) `3Zrs2fd=q.Q+ Ln{.(< x SV<8Y:\-2kW2$)>k_B(:HoΚnR(96*m7Z`qkT S &:-s)ͅOJY}:I)bzB"% h<bP~eA$+T68(ylMaL8 fK d؇p|>Ӑ}MK[5d-kiL>6QM-BRݛ)oay%>3z k̋#i-|~Z4Fmu/׻qoeo__74&0SlIzB d7//fzɄI^M',ͤPfR lw5T=n[S$xw EK`%ln>C?+og'GLybbʄ c-ɕ(%Hb˿ƂT v=,f}̖EudT~G<̢n4r){\-S5R3|Ot\ ֬*zsnɠ8xЮ ;54_ΪE ޓ L;-pi,'[g#| ]ZWv0D( 'b۹a%.CP2jq\@chGdk"l= 'TUHi 31K܀ //TT]dz-+** n.1!B`2@`ISgre1p (#0nE=|>B 1_08#PX82iCaPggEػO*.|*(FU&A択^oW^T<j>;u[9:XZO'7 QƏhMz!,sP6q^hkG3+yAOScZFW_\D>yTAO6>x 9 تғ6`ј>)̦~]t gQC{PÂ0%f>G%j::.M $.}Rš$Ek q[,㼼oG2=Ad} q bvG悔ᒇF{6߉`2jv77#'*y&0/T4/bwJOrOD_S\] O˓;,*Z9ނ,@@G8(+vc/!I&~\2ڨ&`9?_0-$s[?[z JMV{' @;ʟҺ%tϯ3l+fN=(v-6#,:d"fŲqz<>4gL J80Nz1~]4ȍM\OmL5> Qs'kQnkrg޻NX5-Ķ0DPKwb8KFU\{@I饩2 {bUQ' X=Rld[}3*h$yqh:LyлU O.BUx+,\'HUyJo})giV 6bn+o-sP}^$JVCvQackxW$Z\}N!۱C?h()æv*Ίʔa&t }dx`nT 2P'ۛAخm jU$]MѪ=ОF,L|NC!+L7 Ie9ӟiAѫ8OqsLjTC~-IT//!(  X:w}N~ } qm0ҧ+65DeZ$= p|%9 sHSP˅Ec#t IVCړ8bd^%pˆQ) G ՙLLǙʐݶ+R3W* JE[|,3ƂաI[ݖ}hpsgxػsl"75/FKw4#kxSERʄV u&MSHɞl"ݨ NbFp.¹u#:|Nm,D OV&27Yhe uC o}H_+Xr-2U~rY%*N𧳜\8L4F. {$G|{3,j6׷Rzәš2vtbNdUGCB3ܽCwS9y+1iMAQNpoQHXsvK>ĶBv~hANttk`6S,Ӓ jxQIlcF2 9vqJo)*k㋓36Ra0jEW&LC ؂Y{X;Z.=Bu3i)[pYԻėLkCLK;Vjnj{ٗ"ߓb5n <؂?fth.1|"s]BiP˥XTb[9^x3nPXf\;{jLzͳ>`d0Hy~g ɒ,iS"QJGOs:έb> ?i%/ ?h@SaJxYO@m=*>@k,`拋lTq[[n !`ޤw+1bAt &%G܁;ͽQ$Eֱ\Yo.2CۚzT&=N[.O[/;"OƑ ZfYWJǝVZ8kEj*no\n bWܗ={7*ODA|&oe5O~915rX`k3oݨA\ʎ%Lx3J6p|VAQtv>NDkb_^1.vZ+Eߴy`T+ymjdlA e4 < S&뢕hWAmU}8Bs(`w=JڣI5i(#Dk AawEFE"Cp{J55˜ET.I\ {>ἃ聸ݥ}ς]M8] ;=h:2j;޶ZJÉ\{'}t7x3'vhE:neaxNnD07 a.w.Hsh. 2QK?ܐ^0p;Qtuq$b^(W貤!TVRGaw !EudY;-[ے 5&󏍊9'J߀m'n^Jv&rSe@Wtr%ݫ,D xM&*sSڙX)76ybt=?Σcp *ŁASJ>2BfRvRo9(h:F9۟Qj,@Nt=S|1l)Sr[,j2)61AA3%ނIҿ^C(.D͆E!A EfW3ϼےO.͎OؐA>\ qAgދ>FٿQk7 >S0l2QtnoRJ02~ȡ O`R:%"j$9ث]/@>`^mꃦx Nt XKCIg6b5w`{JW@r6u!S#BPH\$jPgt$-L/w˙'|̰;gJUK-Nl%Gۉ< yxLv3o`0]ͼޥ dTY KlX=.q yƭVI@ӝlb҉*1?eP]NobՉccRu;-38*_a`O)5HAR>:[vui7BvKr3g1퀌8"quϊcкQJZʅY*#j5HJ7|D[Yl+YXǻ6 ^8M!8G=z3$]1nc /g`e-fCč, wb#agh'zV[7xNA1 I$$ VNW6DBoacTSoRhuZ\DLY;ΓZEF W!{(( k,f"6;y('`a``O@3lc1^6JsbcXS6`pV̝~2nkS]Uxg7HTM]c5ya2^|)T_CW8b9R 2SnC;]_|x iTZnh؇VSƪ.z5ąyNKIjGb JkbUy%*=㾂I4/LXs+S`5(Ua!#|[ Is`{ 4 aq63@zluvM0-c5  SOƳM1넌"B 2V^K/z'_eC'tG8+GnR&߭0_5Oֱ ^^)j^!MHtlv;qYn 8ކ@6NfΠUļ5Tw$ dUVp޹Ya,m q$ ¥VIs̑v$yV|`Oj?ߤ!GOpOîEKR 3R=B@&EA%a<#3oY`W0$@2foBR,Hb&` >w+.^UEnMErV 0X{/ڭc̸em bV?uWbHV3xQέɘ HL*(zJ9nMzo:'|)[T5bQ&2&NŮ/+U@.ANahv"^glDۿy,C2<.#*9WfvXqBhzc8GNs`5RBku`+0!m&'gwX/  y|nKil[؁O; {|]AQ#W{<='G?OyT48to* db05YU0w /)YZdz9/u}~/qإgzu+GEH)g.oALmsbݜV$?Y-SdhZ#dM#w}Q"nZ=׶-6ushS1t=0FKHOY@/T˘ "7 PƜud_Ϭ_Q -{DN ])ӕH9gRN2T|6#9G,tSI=:q2-=ZMFZKîZKVL߹hCw=){ސ+W:(i ƙߨiN/NȽ^v3J0[y1DjcSwa[ YOS1p_nOo/&C#\}3t^:ڠ?[[ lUG)D 9ژ;=$k rц=HV&i;Wb2^bURVI5I .qØʋ ]Z.ăK,XJ]:ejb voP'"wQL_7hto5PԀ `W,+_՜v4n9b^i^1;53VR^Jwom֤䶒[Tj12"Dڷ+^OשZ;K 0vMrk~igaY”*1 p~a2y1,vn}a܋o ƁN#kF> KCDk}mFPw."B>6̰ne#*[[ӢB Dli 5B z_z=P# hƕ@gžIMy^RNd LdP%s7M20/]hBV  |$a\=4?=˪q+R9k{kpئ'M3A 3g"D2W7/xfl^_zʕ97FV<3*7=h˩z/x(-[6,1Q Rz{+Uv6 dtEJI .m޸ۄ@Jr4֚BwirucׄP>|VY!*rOa\W*@hhxk2$`5qa~%}f~s/{>Wzd#UBfK<|.G[` N=_mB 8f Br`v߷3()hy3RutQU*a rag7WŒ7:{EW{]F2 4 >0Pbp|| *;\io;ˢIR}r0wU'Zr럋!cJG9͕>|PH3U tD32XgTopwXCC?{8^g$wεZWLJjK hܘ[;&3ԍZh(nx8VUHwQ9R9fR|cߑ:9&#W&M ,Xk&Z`sx`ZL+` ڰ<L0W1ʇf<}b۶@BUik;zNI^UC:>l>NWjLz ۟$sbO':qR:V؀w -1-T'0y]  ]>p&l*B ⱬ֔i;Py}!)Ez©D]ns@͙3δdڜ#$5צ'5Godڌ[;_yG[O݅[ueTUl7b+s` q<'"\U%\jtd>qv/x7X^-D56xvCX$f-DqBk1 (( afMjX'Tu~h1TPJ W쮍kR^2/NXVFG!OfܜbOt`Nk]RG-u+fc폚_|QXcvh5.vw)*1̣Lc$#@#SY,.UE(/YkJHRYD]*evQD]ް@GEuCHb5`@AGS; -_gd0B-M@9AU*SoV'Ş`mֱۨUt_8|;Let^0&A :n*SՀ%0| 3_E,۠IgSmd79IC—'eAنlUSAix_ƴwD`ˁ8EIA 1 li|^!BЩ'`hI\"yk|EH^\_q$Z'^C/xM=§:榖XZ)("n.mP/Q &iMY%FϧRϛ%o1L[n0١TnDR'Ix_8z KlWANixI伷(LD`Glx&tlϐs̰ :/$((d6GBZyyzmO;8bDž wnNszVtߩ yM'j򾭟&j+d @J!,~a4^[I>g'Z2"򋏖D;+F[iV.ٔ~b%k F'0 J ap?>ey@;bL2C,|܈%WZ>^YfP!DUO׃΀<?wJ>K)VTP.|fj|J(8Xf'a<1_KÐ(rL@bkyzBd3B '6T#X&kA>wj  r C)0iLiij+&a1Д@8?./"qB0#OОb0-MkN{.?䥸YG9U,^zJ ]QUOg B/sw3"̽wzձce0P_TYy3t 7QNW}.@F{Fͬkb(( Bnng]\ eXՊq !:]-~#b_ PQퟗ.QW #HH\0ضCc6F@i'zJ狀+Z˝AXu-T u_ R+$̋xZ$|bˡ*:evM "ƅ،ce=7ޭI63Cڬh}Sa2wn UkM8ِ Q!2,gg,(9e >Ico.s\+tm٭)}Zp9ioE}Սo6Vz⢋ 7#Gf9vʬ\þiOt$!-FXuV&$OFS:Z8Ţ+\4.*^?aUv㗯Y':;uAHOw;rH]DXQ]: f^,"h.Q4se"GpGYZ{sUZwMO'ˢYR)2&^Q_)TV>ӵbGI0R}]+և˫dܬ|)z`MO̭42Mǩ7^Oߩ(LB{wBmAra$,䊐fj'|Ig6~;_RW,$(/'&^^eǻtII_F!Aޱ z2-b7ΈgGpM[eǐ/MXdjԪȋ:9+ 'ߩJѝ5~ !2#Tr6Qr0097d{&g{iX3#,Nթ)urP_쟒8ٲ#{,JYׄA_5Ahwi/H{ߴA'MR6Im7৾smOY(-cj~ kDBEѵ 2'UGEV o>9ɟ&'; .aW5Y;*k(pB9ip0k()DTD5>;:ehG BdX½ B_oZ5."2C}h? Meûz͙\6"؟FYGz5I}yOU *=3*(4qK%hnmgU)-~ewɹFXRr-(E L:ojX5"ONRRE:xQ;ow "^3W$drp޺eQ =#:8wꊓүzTʈ m=(H&}8J?7s>/\ҫ;4xla\-iN{|"°"2)|:;$!xMv .X+X6B`|˔&۬_؄j;0ؾGe- m],o ĖP0ٙӹL!ŒUr^NTqw'?nS!s@G{׌O͑ 8vΫpJ@Q'{78%YS!s_e4.xa#y;^&h2P[ڦ}l_T7&%#="ب(_8*]\O2Oo8yJ ݆ԶG ̌˥'QO '\bLh:~sOaFkmrή`3c:;\#Ml3brE  KR.[?ԑĥ J+ ,sZB7BM<iׂ+}P$5=g>ch&08(΄XC)/kj#֑;qHiz{P:lH0(t("LX.cQ&匡S!W%)V ^ d|۝bfYF_IKVM%~5 4m$JCc 0״=/KDKn^5i8פ`Y?tc'?lpB*d^ J?Ȕk{lh:dChҟ%$ po56{e~rH Z_ik} iƇ!lWJ)c;~W>?Hk9]iPrv`6{&?J)zTVlegP.l/9%l&P|i24 ~@UU @ؔ!P~uЙa+V[~GXZ :OţlmwuV2I~c|_{΀^-4`D'~(nRHvʋN5N2z2I,&#]5CIENZU0SyHcJI!=|z|ȩ\)mIGyJ"[T~!H׆.% 7UsQ"  5N^#Ҝ&2m];zM!uyvi\! r2<JCT9b=p|Cm(592o1,AzvI ۊudQێWE/TJZ@|ݠiec{H{g3QAVww9e`~y1 oMuEV%w$Ѝ\ŠA{8Sn*{ɛ|x7O1dtբfgM*C:OWm㘮hI08.m}ǬZqR3鸾4.p !h|ˢĎ@:зV wyAkﴷOdW=jS~i{XF>O` JUQ(iMXTZgGgLҧz:.;фdcnվ g;C;j.4OI!j8¬+~g3`=2Y-&XyǮ Pľt<y:*8Ȃ8+pԘ{e5%NT# ^iz"Y0V}eQIZM #ʓkʊi& ~ G4h?8 l B ɣ_]N~) {Cu$rS.G\qzocYq [OuPeVՁ)en*Zw[f_c30v~e]kBtԄ[ ]\8-xNr }VK <-]0 ;<}4-7z_i.Eh$e4Jd>\ow8!bmB`/UnA%%ُ>S(Lmw0c&R?w7|Cy"y{_rp`y?5Ybo`bH^{7Z{nu8p_|NZ*??tzD4?alb4@uڅCdm3,=yTF2Иj@u!,fb#ٽ./2ںp0 >(!v{4 W;)AX]/$1@RyxK@ЊaezPB)CaV_Pl?"-JOAnCzȱ3q_:SFҡ5>J'#;dN6=݊(! ,YmIHG#X̱\]ߣ4SKA'?!4JE ˰ZܝVDTKBΟqqAy\tuJڳxQf&_/tN! stZ@\2+Ϫi߲@򥮓CRr *p;U)edH2ɟO~L#Z8TldJ#S E;',b=킋-l'6 V?"A+p:-HأP*c:wMWEM'FZšIՄc\8ADX*qΜN~{~klFBqVh/!ɏ1\ZH07mS)r?V ?"'4H'=)p`k=4K<`jҨ{]|mOP4"M7c. !l\T]x $)imT3Met;mJx1aoK\H,bm7#3UG}J~Y @YJH-vN[\4jWM4rk~t` 0]@V7f@-P q m~"'p(!/bD=zD̔|4u D$5&>s4û**a,)bJJyh?ͩa@QYNY7oG%AZEM~s s> :GX _k9L:s' hjNWx ͇Řc3j!㸘% ahW[077Q]PHP"ei+ kfVoGI,7~ȐG6g8 `@g7s@܎ą,Ǒ.j\AJʹOzȲ1x e44 \o=U Wk/bN.o JD#ȇED~36NK2,VˋEcGvOHKF|EԒRtUuHN#Qe7U&.HZjBR:H`>C$N]Z)\X3jh|knszeئQxyN+kwyԐFZ:mnHA3(<.ykuzǐ)xEJ7$cQԙ!%q+aATzy$Al* z"w R 4$z]\4Pnf8*a{d-K/>Kh-eAߏxYQ%KFML ]wn9_6qn1rtՋ牌\9]t볠@3&~'*kEIHSjg̸n3Z$Zr{µ \LN@zAհPk _{!3O!='"؈)ƖzF*żpXP҄9N%TPVxL64Uk˛sX[ ?Ft@f'R$K~XyHטtL^@I]%haȰ k bcO#mgļM[=Mfg2+KrN{t!p+]s]/@n"}mhkQk>4VJ%pOu&xՉ7hQFΤ(uP5#9/A\f¤k0*-;Vh2'/rfUIAcvvp0jV;~KK_&@&NWrR,az.mEa\ai g~JSupbv`[޵7Zyt㈈WRѝ{?RޏpX*}"[xr|IOͨ{"hW[7j>a8 e7C /="gmh/#mNyV~>6uuA ^'˔mv3o_mt"@Bl3x`>N*g3} E^+sTho!>Po+ _J!w.?Y4Neq+#!!A5e0>V|<\ӏbiY9 *z9*UjL2ai)9[C=M_&֓>Fl\X^iy?aJQ;`y5$R>>k窀}bw_8_Ab"=n1FWY9E490am5.q,߄ 4>7U9)0y^`t"/rinۥH{O/%/fwQ<ס1׼ljhh@@TVCaFoG-dq(DCFn BXn@J|HN_@`=s x0:#,~F|&{κի&1|jgCB5;4UC/ څ*t"rDo[i)= %`E^&m:gZg# tPCu7Ժumcc84$w {dbd3wSz\j@Sp:PyEA+Cn@5Xz&Bu_Um -״Q^TSl_P!#qGZ+Υc=1,8)X2.'aX"\?E ٤ZyH[q'wѮ*;Z]KLKƆҿN`oB.P&r,bΆАiN'u3r/פ֗n+xx'SӀK*;vNAYzO깥 m:&pr)GK|X{+DK2Rf5HŔ-!* ,(ͧOrK[_HҎK<(5aĠj5 vnVv%pRb [4:mSRG@ӳjiDŽf*}Kh\5jݞ8DgB4v'$|Kh jQ1(<֝9V-n6v:S@Z_ |= M2l*m&X!P'4Ŕ 2Yvpr)CFHbO:> 43 zڕ >*T}ɀ*"FY_TV:CU`'멡~]^.Z~sv5J*Ѝ0ta.A**R~r)١8Zm imA$TLm29Vx؈!!|ƾIxAeYܞqp@>WJƦSVJo E\:yV.kW4BG܆F8py( &;2䥀aN_L|хΚf1 T^k7bQS$AIMUpwZ[D3}!ᴖZH%A2lNF7[[8L,Y#F%SMao*fCgߖZ)b]ζ$M'q7`GM1;;"dtf]!z otc1j2-XqG=tքڏɮRq z:ۚ>eZw1O#qi *dKv_Qc(HfK FO{&8i13LE~_4];v8+[Ei p7Ueo8!LVūt$Iʍ<> }& >*I=RpMf}Bj&/O1|ss3OaGb"_J/ChڅVW*Yץ}!O~~@}9.Kg(u04[ư1S4U0D=.KwW)U{FE2 W o#T*wVliE@Nay6L5fU8Gh~|.a{l#IťB21:j> lj5D-5+k/y+!.@-r@z;vCʥ0CM \sYYQHjJjԇ1և.:i4;J[Hn1[~ؚrTάrݝqT v/X+0%?69x>Rϔ\ pFۙSOoLRV=29!DaPڨ SX8|M+CsېeI0$79wsVHb 0VJDSsk>vO%0D:j[斏o+z59)h2wVd@Fظ.m~8ltu.fn9IeIxG~{T.̙XZ8-J+`0$7σnϏ^d~w^J`fewF/zȱRa}pqYGaCpP—{lƲ>0ٴ+4/ vM?ӮK>xz3l 0.wq}tGxfp1-ٷꋄw,aAt+KIF1ğ<$Q7?bJ,~x66x T|>ZXEDr?]tDTy)UIhKL_cTJԃ3"U8䚖ho9_Sf]&9]AΰgXW-<1m QZ#!C|+) 0`~4Y<_= Zs RW LH|%[F0M?_+tovyuđa>bW \"s ݌ICv;Lmysnb1!$wק3nۙp*bwbdwX'~Hi,]Nxux,Vf1xy׺”rYm~C62t'FAS H a32Aј9W Vp >DS@7 \DܓES{CNI4Upk;RxݖW9o|T#UW%ȑj,Lv'u]4"!x2a{"&$5AMs/pU_2JBh`uA83mV9\^H[RR{Y7\s(-kڡ!^KϷr K ssk"bFuMsVL(odrX \!/濿X ۱1f^&&eK93s{EX);{PrƱDc((aFULـH[UHCBF%юr'缼=1?FYPAԋf5Gm _"$blrՓC*_ SLK.Ȧ*jn_{Vv Pr>{]@~Zoj|58"]~Lym'eG(GSgT;'blJti0::O)8QBClΟG#ux4(x̾m ҌՑW=a'Ԙp8/Ż#}y+kH w]CmeƋ?PFFK_%Smiя84'pcա=-V< NXciQ缌{6}>8ϳaќ""H@ٴ+:JM\ w0)THf ڟ:-2?&D 7• {^Y2: Z&#BST7&pNpQdw\ПCk@Rai2>bxʧVUx q:-q QG򤷻3faAپ=aZm&I9 3* }n%ݾ6w񓢏QoHXC=nR*aH}mG9>D$-MGZ:lyc&(T"%+Ta8οSWØ!ծy_J|ꄳNP I&CW N\oB?S>: y^2k ^@g>s޶ZH3@ix#\P!?h6 JcGHPė"*d77w^}wx)"FP'*q=ޕ.q|IB-#EAOBa*j ~yCA#GU2vҎ׍kU::LXG:7B,j=g詧`1ey[qvڸ´ G՝(+%MӢIK<{ws'f!P% Vs$~!sbX/4E'k VT(剴 ZԑnK)',tZ. !Mwv&sx*A;pARdi% W1#c2oĻn i.IG&G -z Ե؈szְs;ǜN`ū4|uk}^':G@0 C%mf¤sc㏥R1c} 3ir ;|߃^ *eoyZZk{FFc5ؔZB0`VcJ&:ٜS+ s~Q*Źsw5}|CG)cSA1 OS*xiZ|[c@,q蝴DxTÐ6%Iݗs}J#WⰔ; Yjjݩ1YOQ"pBsPd Ec|Ύ":NMT 1aҿ3;7O Ջ) qZea(y29Zr>'V$%@ Ƥ׻Rq\r 55w^7KZpMw\vhu:3R<+<9}Si@] ĆppsWa "aAF, %k}b~/#d-[*A1d?1!r1zS}O׋4LŝǣpCM(V6Yy/Jw'& = ʃݙ捵fy07,t?f$˻_W7Zk]UNXRg5cDWF}d;VW@-ZFLs"WTo R"\gYjz7aGvvZhfXGDK"b愃z=_Z⠻(LoAold?!&]0yD )g=r]0HJ!LgjS]sG2?\ pN{;}mNmY96N .2:&{Fa?PՁܔ B@}7fS9N;II7ll[ oL,(ˈtvA,-Ex~";5u{pTM>6t(Kl̅hZZ"P6J1_aӋ!niZ cCV𓌭8w q]g1Ilq'qv%&Mb 1Op)zalҕtHFxOc7ə]P?COuamP9Gu[WTt]iBE&yr#viiBT~L\42vN"I`KhWOpXGIy|lQZ4CH|}is4BM0X]5u9G2e{} (< !6IIu*#?)$1|H5gN9P\E{T?o<}qߐ:ry*n3MQi 3gCj"hЁui' Pz쉚uo آXpS կђg][PSI˖?= Q ~rzh3< 3W /٘z<A8DLkzW]N0 OJȁa zNtNߦn]i;{92ĭ,TYWd/)(4- b d ;zLEJ47M&srmBƢ`xUT`\DžϯwuDÌKy~[* Av5.h~{LKwo[V'ꃍ̒}>(g&+rh7_i^ BinAR'Y9!28A(1/<e`yvˮDPuٜu0J2sA#y|Iy4ԳH9q$ƭ]`%P&F{q ֌[h]v[m7@#;?,33>hcߖd.RZ*nVL{q,ۇAIOf@$ jz!Qq>=u{Y,[O-B5]JG|F R~n;@vOg>hs$vx\Ĕxv'AoAv3Sj&0j$M~nfCVaXwr]Xsl'UT[eKlݶҕ}6lŴvCN~. OY +C0_Q8CX܍[#vEή₡z㴿3 7ڀ y9C.-Cnm4^bjBUeR]6Ruˆ.uoqlN-"Z2>K 'o_M';(ͦeh_dyu2 ҸAe!q[G2+c̽'>3li d#z۸6*; ћ~{Ox,2{,s]+wIJfO"*U RF䒑QK<ڬv $)8+Ld8 h9kDƟu.zαr B8lBF *ZE6Mv:Vgsģ-UtJVLՓQ 'mQ=T1r ERXc"rv#Y. J+@#8l9hfs\2F)QΐsV o:;4YD[bL ½h/Fvăh%sR8W(#!#9"_Pʚ ۹=/KU `׫n65MGQƤl>aO).Y V26nI(r`[>jcҁxbXȵ 0r7E+o+{Z`齔jc Kh+RzeaƊ"xٯ;=`-Wf Z50s p͊z`B 88ԓuB:ֳN1".JM#ÍDyRVd0^{5۩G2ʧn4BbΤ5L3m3o-v0$V.VUwE/t?J{tmE=;0)bn&Eaʱ)=_Ipg2[F-[BUv1s)s0>kÇʆ@cst]uj̓͹S\-r;5`~d,N1G3;hljF{]($ +v>Lp00k|Z:; W)xWO ijn6!QT_huB<#. ޕU.2&ݬ"E)T$FԘ(_8Z\N\M2J҉ ;)DZX{L.)@)RxRY^TAz=Im%5C%mY;58[ jNSk)Zzq+Ս L|Pw2R'.R)zCZJAMBQ9%Ti#R9#*uʓ;J*v `+D@u㰿8\?'"z&3Ww<\ҧo 1)?BR  ᢪQw9b桁GcLQq 6W%!I1<1f[3TV79JdY$r.`N7euP6D?^]@)|ݧ~Z&hPyzC\xiE,#U-$K&L`@_ Rvq]<>[J(aҶ"x |}US}zGq̀gc}IIAՙl CM9TӤq'0DoYt Nb}yUQܷK ')s5[݁a92qU !vPӼo]9S<㇡a$84,B[^LҰM9Ti*[!e$'S[=Df JnTS&o7o2A1L{`%;jCDj+{J{Go1u? !^=s _˪57)G%l] ׌|[NR|R˨+\QKY vȿQOMD4nY SΎ-"ZtPõdM(BWEZv]ȉ<â yx{hgþ5)]@{ѠSg9p y_'s Z7ĝE[QV٤XU'j) ytIMi'H([fB 4$Ap|*MȰjP@yF \v֪/N\OIk<`ˀ_OeD)8dp}AbcK<75vh$'5uée>B?uln_]/ u< mF7g􎦸3#7 BKAzA9;Ylc!hV;ź1FLؑFqZhڔ "(&``J/PՋKHf_.C@p- +.i y[4 @ ^پU➉8weRJr\[ d:[71F< pT`?'읰183qh  bzԨ78 i;5"|-ylQUz ^2IgD:Htt<M ",'zs eH3LJ+[;ZMIJQ'87e DjCsX|5BH0q/JکƠ`<7 w/XrRs4KAgq<NW/>=3Q%DώE1LށƄ=)WҭKIϞ ֍{u *J(yf=U h=E|#L@,f2RzUaop_khƪ"ӦA!;]T ]"݌c.0 hYmՇuK2V8r!rѾS \a-٨z= jmoK*ql ×>qbg04-9k.6Y|l?RIsM608|ΙXE^x g>%NX%o3NQ| NNlgIV/stQY!1!6dCj)S,nStKo5ȤxM0Wгwe](&5A8x!@bHyA.?4='&Y"q/ՅԾ@=d|P̭GŜ 1= m_ A+ug>e(&N۝aܴQ{HGmI㯰92=hSt 6N&믇Qs(UU9h |Tp*Yb港< Af`Z̄@N.V`ڴgy迱'm@n* j):0C[md|UD#B"'DԾ]]h{bzT1ҿo1 .Z"=\%,p\aI+93 {?s~ML7S7 >hRu4 Z?Hfy(?ˣƐb.Nmkȍϕ!,k0̪3LLؿl0;TspEYy@},f+BWi)p׿((ݚ#βvSߞ%`-)sxW:n2/IZ=vEX*_CB(}ᖤ$+L MKVѹ^X Ip}8u6n%SʥɁL,HquckF'#C١M}̃,OhR&JU4 59[nb:1ˉX)d \ۮVlF#pxMA?=,zxC&Jk k- \2ٍCwe > imN`Ec/>kIE`\Df Ui&s^Н :Mо&MQM?; @L 2 m83Հs%-S]4D[?i^Ć0QPsrlxg8a0/Y||D_xS^ZU|5Et'*ϐ~7ll^UP7D]UZ 1~;ht:5E4r?ip:iʺQ& tIR*bfB\gc1߬@2'A3X,ҏ$.ֈ^>z\JcLFJeC^&3 a>'//;kpj21`8G6ZTiq7Fv+" :le[#o9@Reaw(Bxqaz'T/kܐ$c-_ Y4s(O+3Nr߸)[YLAC`.<13JFoXYW}Pۻ I@*~TǒC!_LvT}sWό\283@xK|I󡳄&R2qLO˥]O&74,f)31cC ;2PC@8С`וcK~>N93pL4ʱ{2#Wwg|Fdݞ@L1ʡ +x ~4ޮV}^]^k130O/>`Ejʐja1wc|k*{A0ɓW sVsњxۚ .9@:$S>*u?o"aVZ++,K;D̅л"7ejF@%lsf~mq&o5A`x(Nb7 Wx5l[&oRGuvnbkB-ȍkLm͉Qs m\:ߚ%1Sz_ ;WY(A>) Α]R972u\]aBj݃T J& Kʊ8~',s'sis܆b(@p3;)TTkZO]f_#) րHQ5a1,\⮩7>Eb˙ᖴM?\beo~̖ɒ88 9nӒ|;u |&8p\z %19!EJȂSM wGmjʑLoa /% mWvh.d.hAK+DɌ(fڿv E?~=Ag-PQ:Wmn?4?9xtШH6/pN$&S-:pN/YoP1`@23 m,T 4+pH#-z]HZ:o;i&Gzb?kMen~,]#ԯ~ci AjYŠ'sΌƘI@`ؒ;`41bi'vx5D -Cpe OABxq?0a܎ٙG-B5B:DrovSVE\~~,,2>0 ܭ`ڽU3[S,K"~GM ƐHb]^L3/cjH K4 tl"4 \wC~kEfWB䊌*`ҤX-PZҚ1~!alZ1mV}"VNsF? rAn\ʘ@PoG 3A&o!~wDd[o1Ek1w~t}xяLnއ<ʏI'yӃ'0!T2I(3qXSqìEI{,Zl#\sP-s5ArY!٨So] 4,5=i.iל*-I9x1[{o~OެCO,J%7_sVScHA%(O+}r)X S 7IfZ ۀL RCA }nQ!Whd1Txϧҗ Ql:l̇p~iKXSga^{?}J9aC7KjN ~df"м݆N˶r8 A Y_JpW K΋#uT}c:z/8j񁵫%Ipl@˘0nϩKĂI\whˎ923;ki0,#>~eNFmµPD'[BC 'qTT Yن7(V6H$ix{d 7Q{m4qԉȒ|SVrҳh8tNe,;6!8Hw1Fz9)oٞ@-Y JL㫋~YPVηN'`"\ҧ]M%qC|JĶ'QҥX ZQPM^9f1oþ$/#֦P㟪VO7 /#8į2.e9/ ;UU_)^W غ9i=uW,pi̿59XYelv@1{w611vL acI'O}6:f*6\oz_+l%N/` Io쀻}NZ\ٔwp8ÓyDx&m3 T, S\ jE'PK _aҏO3lc֦Y %038]YV*ƀ,s~]}fEqWAh)<ÍRƔSK:6D&[U"HRHjw̒9~mT 3c {ݫ?O69yѡFC*SGÖ<Ӳ J|v`lrB[אˍGӗBOԊkG,*˺ZϧWMu2*|nF JW{Ƹ%նYĈ{M@eR +5= t0 K<=)I-*1#_2 CmHu"yO Um<>$^ & /1AYICs(0{yz Dv}?—DI kbTإ*dI*jT/x;}Qnj0 .Ur@?2e1Nf:Txˌ0@ 4w k)3,>7[]Sffry cgFus%V/C(reD(6ԘYVʓZ|vkkN$8F?-i Gki| +/W:7<6D,'e}) =_rylкA}u~QOQifīʅ͊P>c@" 幣5yG-p+J%՘/?0W՜93DpvR,W]!Hܴq%{;.)K{WC闕jvȸ/{SCBM&3=eí7=c2KP*Bl"o[5H`Rwny22ɣS(#*ɼR>ZcU{AxKOͅ9VkJ~"~I, [:G{hWNy@YaӤMBHi"t7ݬhFhO0\8r7!X,:kEG#PQ=ѩpʧ[pp'ͬ3PڵT=3M+~|{^բ>Kix,{ZLXg : 5TdED>T9ʝ) nr M4ɓyIb=HeVث?ޕaZRDȒJ GgWtnV9v 3ȥ|1PĞ-+1rz~38@C_99? {2vt@:o10s*x+? |N}W.$u[i m!Qfô &vz9SщG/h dz{$BnXI LmՖHRD(6I>cG"RëtVn#2/B4 zC4[ %!@A`N '('1F*raL%uiI)}+ICrϹG }dJ0E)lK0;CR۶D"~t&Ln).BZzAf)(Q[_ּ^[I$>WisZHT a+K{@`5Z<l\ *m1)O9=@.9:A(BZ~G 8ݝX*qXĂTvr)ƚJӒ}N>R'Hʯbе ?\Q|,/tK;0)z FDLy ~@6O ~@krI&pOT?vkٟ5ލΔ# %Won+d!" J:Ҷf׬l%+}ju1Gg1`*+>Wlj* )d*M lZ9Og"8I |=<ͧ\)L4\{F\ycjs.FL=L\VOƒy2빠]>w+ko%\R._+}Gk4&= 1t6ђ k /2)8iKF\P{$ ;B}ޑM4z`p|Z6gD6Qgs.{!q=)NJ:[AZ5A6ĠO L YP*+7G粈a+>|q5<BSF)Z7\m2?a]*X@ϒyA̠l UHY{tr:%?n׿,?J 3~c=cWGPS`6àJ\6"J*a$[[hkЄUf`-cJ'pImBHŽ +LV-ZZ'@!W[rm5F{IOyfh?& I>=eC'C rwn6gb uZ -0pזdԳ zʖ~!H-3u5M xwɊ 0W=?+yXh=(f2anZ$sJm }+,]#& z?|/0| BVTό}s_ϲxHhr~w4b /KƔǙKɅD/b*ykѫ3QD|HX@ݮv_g"Oۅm,G *r;W_d"*!A&@*I@4A` )lJьY Bi6 p:o;{Jvڹ3Z `>pI*_'C>vKs3đ Lz_zv|S, շvTtap% I\L}ˀ[әzd(D_+a:BjlmqQs"0}8.~Ėi3e d6̎J1 DwWcvEvѹg=zڲF}F_&utFؼ 4&v@]ϱmE; _%/4`Jz~sTneŧGѥR?:3iWI?zdeƝopLJ#3تdnt}H+Hy 1K7-c"Ե Ue{@/`~+{Bjqt?̿x\+R{2E7Bg Iw Hv{x]dK\q:uYe~vg(zNuLP OFAxa9NMΪpRP8?"e , Vs: U =ezy٪'Io@HWAB^- P).K2Dk{;26?TJr?TъjOaKVf-}8&s^f &Ws= ^h!Ho|& $65oBC-i;C伾@ .Aԭ0Ab-0:v-{Ɠ? IaH`b^b8]Q1oC8.${CϖÖǴYG,Il9nG_8b"[K\ķQzlTx NRO1%Rsfی5۰%NIpm}}7߂~f뮩z b^ jW.[v4{੝lQ{&aʼě1S;Avj+Ep(JÛꂁvi$_{"s  ?9흰KDOYB6YkrYe-u8nv]-4_(ɫyզ OiBJT-<,IL[c6I٥C([4_n+n{[.H{A%ٝ|`H-eҭP_8[N //  voz/Xi: "`K.2Xv{򏻵)Ҧ 1qiy*͡tCNtx];4"1ЬLifQQ\ncgW&[\ W1o.NT*~|U3%42(,duW@85 j_Zmf J2\JtCN^wӥ{b ycswqq:2놕1i*;;9=^_3>A;I(*yQAr #ȗhEƳ,KG/f>ʧs,cieua,8K:ԥVՑ3uOW% E̼F6w0:_O1} >x:$f{>C"vgm{n+? c[pM[ 'A-gtԴhE#hNQ]fF~TAa|"jC v-WVb׸q}9ΪCJ6\^xX88@H5AWkʽi34 /d[|kCj|&zO$x œ\x:~sޘk|+3p|xSk-EU7NLRSiUdB^kZ5٭[|3eY"[-0Q03]R89-@eC`Iq˶E9@}qt L/ uKu!HsY qzg^wu+`_ P{o._>:rŖ}YACh]6CZXESy_FZ$ƺ /k.pr%qmq{\bR&,{RoWq_S,$^vhe\ e68\y*y_$,@ZMP=mM3ΤYL'7H8+(T*Z/azn زhfsp{zҾ[r(~G( ݴnc54(ý"3ѠȼK=QARU6M\zBVtrG@fN*{#Cj88O7$^QS  =r2ؾ͙ RjKu{TKQh= A:?/rR&7Hf^4J\?%#16qJ{~ qlfeOzma&W/Az4wg3]&Up{eWAh_9.9ܧ4)VoET,aƉmBn{&uj%0$Vp,@^[*20O8lv2$VʥxI Nz8Glňh+tPXO@C%0} W-2QXZ|)[鸕/ 4>s14 :1yh^ \RIAL5E8"($mnO4Tr'8̻ G'"^u"{N!Ty7"r} lv R,# =u ٮ] /r|&EK[mT5 -*tT՝_2O~ TnDHx R+wh< R}G?\zdљ{v. .5#؟O?%~tTET#8Iv[b\}&>v`E&_ZB#EYԧ6wp8h=P#$.AThtVR(VpxٕL)dl"9qXeV`ٚ),$3u%İ8C/,M'b;d2M6-Go,ډ~TLNb&$m2)7=IC"=VqXCf9[T2׍ ÿz9c daiwOcļE%Qub8mЎ"LGB~u{'i 9)ڋjsGMH5d2Mxh,h)>}"ֵEQ0?YNy#]`w hj H8ywL4tzد]tjRX=a~חtE/P ;KFvgV[ \g%4+ZYSV:g*9p̱mnxi׬@gK_,n+pL܊=gL{dK %ϖMUç |DהN(7RQPޕ1,SN#YbR-g{MSTӶulUQ+9KՐ?PHCu9pr&D=+̑D(6e (DoTɹpUxP=~>| N} I]bBgOuHϓ*|{!p_LԵ/ 2%n׸9\dLi˼\./4a}X,ޡ/Z s(0YrgݦKY2R18ȁ8L%4 c ( & rL hAJ,S*# b7狣j삄m3ܪa[칰 &[^~0xHP[ӎ A]Z~.yfZ^8.$/)նJ= ,lYYǫz 67g˳Ra˃ݞ۝6bg&e8 8IUmZj~$GP0y*Po2I6do f{vOjZKhZuf}2 ٽMLKM97<$_NL()|!~}J^l 죑 G1cCkER͛Kj4<7 Dj;" i\'ڱaAl!1]3^lgE|]1S=m9":b-g*l6| €Sz3 |>/5KEgU@N5*5C͊pa=§4*c'!CNG݌ˑ7Ō|7tK ^ie+ \.aű"Ci`eEuͶ |:`TMq8-m>%..D Y懣N蚜Ҵ"pF۽6$.>\>ZKFZ7SFdzQ{iOn!ɿ ǩfײ#l[)ueSE^𴡋ʼ %ZL<0>:LoVT' W`~x^kx!((7x[w`tB(ETszY3#dc51ള4 :M GH3ȇjH"$I0yph"V:->%-2 M0 -_jER-ɋ_՝ (Pwja>@=ATw_ʸCHN0bidLO;k<޽P%1@hShsYYB&]xj4wGح2-J<=ם >@ˑac3Prb՚0\B;|C]/%:bx t"'%M+5$ ,z ~f+\[QG|H fT9ltIp#V6yhނdd`^zA$ҫJ3I}>g#Movz(,8r5x_ @ QtqN?|C+E\ax*9& fQ0H􃒆?DkԴ[7ZogmA3y+!G14+`k6H@XFyι=ǿzc|NlU&'6hzQkD b}̏L"U9|}^\TTF%B T+Xjh:ݪ=Yu)>juTa[II(q}3f4pHkO:ãjL3gZXL\UL0s_72;݅*@20lbRL|džPj?}QKT[L >q;~]tܖDZlOU 9]:[ytʁ?$).<AE_C|[zw+2/!RlU-M|4`u6Sk>I;dnWM6ָA6)7`h vI`- pW2ƕvlvN|'nU@=_d!=aΎT<.0Nzhl 4#5~f2d~oO S:FXS0g:d}έɣj`o?hСooSuTW갊yt(2uXBPFhAZ8U{ωYμ0/HCl ˑZhcUa#Q?J`eD ~qpV-  mN 0-%zi>YxP-;3w& ^DSlOK׭m4km@H=t?=ౖw9 pi[1/5t)h†oup7?m0/I3c 0GgɂmR$I3et3쾠csJjNHiqx3pCC]NdCu&/eU(n`FN&iNI?EM~Ǎ; :]789Dhtlt#YH*/z?$-& *ˏq1*qg >I29[=1Ze,E*}qiEQVaR%m 䩕L ͎G$_l°c;zrk7[8~-?Wgf6T =gAiĮ>){Q^Tn a2EAqVYO7?:~b(q-;%>%F@sѸ߭kħhvL!t?`6/f[[NW:Wۄ^[{HAV'muQ7`Q =&e'a6?0j|P K9\`6y-K10%VUAe&3"0Ȼ:%>#+sA&?;*K3vkjh)"I1b9ro4߇ >s (x)>kf*$jppw,ya2p#ՐoLJ_(>( !Y-dGTU) 7 k$J86)sMϡ]jPĮhkWKӍ-azΨjFe-u _$JG=mP TmPH@R-aW׷i Oy䶦G{0B?Uzn68jRZeCb*a߆Wu(BEe&4'l2CF8lLwTr-8[ރ@銦+[7JZAg:q(=V=w!̹}oݠ-ܰp':Bȧ\O#\>fOURzs@9Ɉjݭ`.TP5) m,ժX1n|K3$C XP0![r>}dSpErF@b5%|H0jZ^9F[ 0i&zQ ~[ Gc@[t8Z\^: i{"R{=Ck-d (BASX:U-×{_FZ=Џ Htd"k>oEr҅l&G~k9ZzX6d$r}|1Ǟ?Ԧv`Ic M;8&zL5\%oS IQaq)Ռ+kc Z"T(OagD+``wD.*=(XVЄSv9I n6b;!QjuTv)݊UMWK|!D7 tqb\4Pm<n%dbc0|Rť6$X@f6>Öo $嶣ٌ :X=]!XG9—{+rgsc}Vi4k4Z|5_` 4,A%IKt8ɭGUwȜOtO#WeoK=,-ܥT(s_%'Yv9nr!$4͉`ww}!3b'bct\[#,"oQҎ4Š=1U1d|\RGK@y=,F-hh@|׈kMX^/,tIy}SU)1ͅ W/5XqRH[b~s49ڧMՏUy% $<#CP :5߾:<6!*/ӛ++Iʄ?6|}IxKuIF> *}aU#Z=n ?/ D^}̓\JYRYegG3$9|WT[1Zsߎq:ۄv H4]/C Ri)@\R0Ҥ3z5<)i~ghʗ6gd3z+&rΩhHo&Б?G/0_-+~&jb Z- \@ B_Rx £{ּ֖o>C[/8U ;!Hc#ߞ#V&͇b(̈"VNy*-~B{ݡqcIJ[uXѯN~ L}II*#<^55#cs).xgzӿ+u4XG .PZ,m8ư,qLW{YᴝSc:Obs!/K|lV*F M!X7L\ґ B>p ()gY×N'i W}_Mdy~|ܕf-#y|aC͇ ֣! Aej&G6YjLj("$Hߒ^<u1 %oc;|AVQ'yU Cgj=_aRRm|Oj;IhWfl+Ԯ@rV,0>{&pȿr-r8)yJ3a=|~\yd8 )5␃LS 2io!Lm(o:eJGFW3wΗֱpXI>N8bD¼=Q c&a_FOcz8jQ]Yr@O p:73Vd ^P'U0e30:0~a 4+haogV"Ȧ׻Y!h#N=~Jb8W! Kj:)ZW.H[{g.)q6[KtWFIJE'M!xmz,j»FBG|u)]A]WPs\#Fk1I54q|+V(VȄ6sغ] ܐDOvSTD kf.Ǯr"&ꈑ>-< QiE{US$לEXV`r2݇~GZ_7t`2ϒ@7L/YuJ ]W0[Y%^Li'~җ خij0+Ծuا TB/Ņ%!{m˜_xh<ע ӊڒ!w' ٷ)k[ƀ&׵/@'i@CIқ`4 &<0DKq+]Jŋ@ZE!/fA9|0m27v8X:2GVFr(¯{rD:O21>.yXX$>i8# Mi٦uR˴`UW#$aƃ(갍em*BϺaM S^[Z’, k^66[=t:€Ɣфzqo4sO:K*A C_i3C'XƦ̓eKrn3Էz-3% ^ E6Y`JpLj5p"^ ts }èE \$>~% ߜr"cܾ-[ç\=J]u! W:%ݢfZ&ލoev5 b5($?n93Vsm}50Aj&NssHӖ7|š@K9 a>@ ke' ezy] -uc,b aAc#6N 9:yGYD>}^nd0 0ekP e~~Wbx T">tמw=ռ~Laxs_iē71x-e`vc 8ܼq3-viwP;)_h`w̝s҆kD#2it׍JT4 z?{$ *rz ܘ6ZHQv&ưUN2)LJ5Hh,`(Ubŗǎq\\ ξdM?`Vs\Ui9({ (9{pFո焯,ªe4́90bLH0&NR.]1ۗ*)"`O?kL:{x[#|p>QuTԘV{~=Ɋg1fRsb IL9q]:BY|,q߀8HD*->ƋI(/s\! _ߢ;, 5Q-[^B1TKN2[a]c?awvTrZj1"븠Lq>8ɶ2tcosrFz&5E{oh<,[ Rjq4wNF?paW?TLR hn-+?u_ 'y@nW ?H\3VO3]R,FY[#*~~xNu[Wk~p Nm0.bOkSщ<)<ՃC%ڜ2[au\Sd° _#>"UkVTѳCWfiR帯wXvM߰ţkD^@L~`qfD, =^q+ip벼>oP؇b.z~bZyаy88'w}Zao ,Z&ppow[+,rqb4P@g([) tɄ;0(d7Oq7f<`gHWUC[3QَCN;29OxJ[mb-> ˊ_sD,_ '`&e?ai4}plt.Yf˝}fKH?zy^Yn&;qԸq&Bw# 'K b,Q'TZoXa犗AK*aJõg1Y7=5Ф99@nSP&[/:A;P^wL@Ɛ.YFcndWF=N2h>+a >Yl| ͑ņ[BN0Y+Wg3v]dIGD2 `eF,L2@Mtw^#4CAn%"hc>|:`iAm\dx0<_ l&E+D^E=]b讓ilCc$Va$W ئs8Wt5QW i kTEfoc%-bיǩkKwNY:aԛuG? f-UQew0J]:3bWx(2ړtaN\\;sFc{ @% #4FWo_hf_92 sΫGƋspQKQ XgM^7@/3ldUzX8޷I\Z ELfnl thFB-:Ydߛ9AXxgܣ!jKP[Šf6 5*­⥄dt[F|^ryQͧI-'P=XEЈ۩AJ"[C}LTu3)dsk V'"U PbpR,x5g߮U=z^V\ -dw*J9D͔n4Mr#ۿ[БM̟OhB8 `Ն7P,.=-IMn-k.qfH4Г~rZ~Ns/<)bB8%y/W4"Y׫ B uG-Ղ,{PesmR#`~OFct o qx啈+(&ՏqV Xctu_bVp#E?&{ZJ.`aeGn5t:UhxkS'v:K]"L "CVas5ږrP(p ߶o=p:L<ʐ/Cgq8'.0& )`oH*'C+nՔZzZ6Hh\7C Diک mw0j)AB*fv;Ɓ L n 2beJJܚ\/m{/XїhH O}V\Fk\<=flaBjB j;hr/ x=TviǖeSGh2w*T9@- wCj9t] n??">մ*,#JlR~z@Goޑor['^羧ڥMƦE@`fŒϴLH/.' !ceT$0ѾB}1u3&0K&3LՋ- n\^FI3I$~%~"bʗMd}nzě_ u  ch(zhP E([=I޲>ae(!FRwVaҍdzRU (/0܅d!˶?yYf6s@ڀmfKL &VK_+hGi*vӐC{-f'I!2YB,G[SN遚$Ϟp ~q[h{|ҏr*Ugu {ٝ=۲(RD fQ[G'*6 CQ+9tz[L2[D9ۗwW Je_7+fUYL{;%-YN1Eȳn\Q(PU -)ɣHG r`V@ʘY D` 'EM$]6t-,`KB03\$!/o\ڹ thDhZ<8rC\~dƥ58&(&Ix- }PBxEK(@V%#-t}h%MM6Tɯd(BDB3DkQ- yA|0G^ ,;/3ds(a3/9Sh{T&v5*xtY $ˡ76Uڿ,}RzlՐZͅ?ԄC x&񷑙VpfмGn׋KfS6uF F~Y{"Ȯ'X+;fMJA(?ȱ<{v{^W?a?.9+0Cr1[TvG.VNJ D}z4W VB^)T0AS@GA gd^#4Cb_T=$LfGpIs4c{^rǼ;!Kp p*Eſm{>֓_RnYQX}NRVN&MO3E'5x%T930bӟCJChNEڈh撚4`4Tz# ݗt;{'-z/nbu>`-QB:XցHp[V'MEci@Z؅ix,TuI`>a3߹Y#O 1J٨?沍 dl$K9cRC{FV~|hwT/^Z^OdP7@QvĬNfUoPLf݂%%E}u]_baȏt}\M@yvZzuzTtsDn=OӌqĕTX}j 2qY:?ѳzֺ> L۸CؚtP< *S1;'_XwOwg(k~55p2w&i~j5FY3s!y[qhoE֣` A!t6gEթcQS*5i){ Js6z/؂GQ0aհ]W7%n1Z{MT9o JfroW0f_A&>oMZi r qϛ`!|c!?ܔg!?J%1&FGp@6u"f1|iևؗI]c* @|>VVeی| MѬ ?'sBSP^BI[ GP7β0b՚0ɅXM Q54Ȭ!zJV=ITGrZF+BᎤU;^BW/v!ė22[; 5[hO캰b4w$@CE3Cxٿ E%uV᠔RD:%OHw֛aG[P ~.FDƅUW*rː"q.sdK@zvev328ˁo;ެx]\8bQX5Ұr4A l weAq@<ڟB0!m"KI9@g줢qYME>bL= `Y=uAҩr敡fX\*hL:8z$!]< :j 4a`x]ϻROP 4:qQLXwuNkKԇڑEvɂ@a=dw,AlӚlL{\~+n``\\fthqYH;CꚠbGcP #ǡiMPO|jqC\~q !7kMDC" dFG߿˪:M[eOkCf80ȷ:&k*v& fnkK!W rE/&To+:?L ]t.k3<(z:^4E¤o@ME=2z7A扝 9++)7qGr3ٕ4 :e TXtsQP!-n{2W$`jprH0@0+HQvO!k3h )KdƯ-xaapC5RG.eIq5䒂!r;5 10KqꜨ[ڒƾ&mLə @ UkX壐!9nSJhR)>S'jIt}}-ya;6Q:F#qBۡR!;HX6,t=Ic`2 /FĹO%͵LU9ڪ,A)RuYfAF6WSRtDݘ ,Iz`".u۾u/g0 lp6[?!yRb:cS!K@?2;qM8~KSľe]'N>E_L54zVeGϳ{ӈǞ.""Mׄt؜J᭟ 6S.xo\Mc}洘%nwb%BT|Є^ވeH|S.3O)pg\`;˹Jңsnk.i;&JZW|c{iǜ-5Ց&b~E}.3 |,Bہl7L ok~H?WkG:F]_GCi*sfi!˾`t $YNqҧTHT+}sJBJ4fY4:|tlk45 &Z|QV><}{gxbghҕg4B ǧDFS-(' Z8Zxy}znE!Z u-:aKBC)fzت)隣nHq0),ov5Œ)%99M6۳|mƻBs&"[M6ЄXQŢ]sZ ^Yhmh$Iݭ . LqZ[nF)XstB#$A,xoYD=ogܼ%_};x> UB3 ȇT@$, 7ǛRVK^ƖxoTg%[k+=׫^ z2:,em%' &NM qL\߭Xl(ric!| -]YPx;|Wt8Mx%b40s1jC9/~A;!딙>L^ő%o° .)I_V[-LPUR*EѰ[ ДE?53{ .{EwO/$^WsW%s_]̍ќm1@'\%YPn3%=\v ʺ+?{hs} O:2߈OBRTpߢRFzyͲWbp+M]Ճτ\5*fiL s bjC7RNV[3:z`4>FskΥ U4p糢$Ǻf"qq= mxca:OܿECbcuLYS`Ϳz)Ė ܲ(Λ5G;ʟdʹ&}ߑ=NNaӔ>n1{!Axq(:Z! b\383coyXAZ^ڙ!./c 0 $ V._?JNi%)?c^RifT+ӣ1GjxX`5vHm  d' hI[܂OD1WciIC7Z?q!џGibf?[/%a ,ag_uNJEfqiO#<XXLiح Ƀ`Lbuzf\iLs2][rnTwJ\=Q]ٙ4Lĩ+[|j3'aԉ[Ir b*6dZR7!oa&骂-jg0:7c-L@57ӏ^J! 9{9 R.vÕ_V1p3dL"~8" h޵V XKJvL*}8DV4G\/`;iVꇌ}z ]3njSH3rLq*{9- )q/%` QLߕY7u>.rͩ=uhI;{K-ؿa3,c>N-kD׫m,>dx3:F1+l-4.`bAGFNN;kD\Io3XSK!&Zj-'-ɫTtN`m2[<\cM7݇P$Cf{=Jv0해ˢ 8y`*[:@8#gLY? >xW>_W4)Bk=ڻmUWW5LQ+Ds* h JcØ'můvt\asȣ CV"vۊ4+@0h;@'JXՏ|E*ѹ2tʒ` S:S{ȃFӂ?A lmDQh˛{K_;YO??h~W`~c:n"<9GHQF+q.琫HZ}"'8*+Me(C r-B ) d>L6n~uRQ\_Fs]V6cZ1] ЯmfMu{SNHb)E;|8R՞3qm&D1Ԯ%TycN ,̞S؏yyƻ^"+`o^?!|$ ْ{9M݆2XlBt$T IAJOn!7Gj=N jft.OtYo u8Ͷ>LBB A[gntMFK!oJgie%"%c!qb19+EfQv*k;Zb[ЏUhݯAD^їRJ3o|ƈeGѻ%;ɹ1E8[4=OI؝85V{_쳫("dg4~Uc;4=K2K$:kޫUo*r/q̵~%uR-W5oL%9EKJ ,Rr !Tv41dfpf=!-TK^ u4LdVJXV n55m7d7G^uW Tެ}9qʥn(ÁS0NATfgaH:m:ܲ5K; \BW KA^+kyLqlՙi OJvD)LBk~AJUy9'UoG(LAE`#}0IvU{U 1tE.ȆZUJW0v6|ﳝ Og@ǟ׾ $l/9– , vr86?-*0NZV;sV*4߶Bm&vmR`waRei{D;[{N1:+bhX֪&|S@4-) ; noNJKUy8[FMEh٩AlnB[#D'JBVؘwMFzX#vhTʻmK H6M-~ƀY\[(| ldS@d0Ia4rw\ SwX掠ka'h +OM"R+G La/ˬvRv}->8a8O# %"aPSL}&3aMTe9cU|cr:L H-;ʷ)zcJpL2R{T޲Lnޠт>JĎ"t5UU*tіI ߆I_H&8Pߥ)9v˕8"mCbl;btxDTw6[VA(N`qBP*s۞LhXE;}a/rr ADnӇymELXcHWYP1Sr_LԾ^ |1P% 19xı3{*B5 \٠e^/I|' ņFc ;$׷ٜl;v 4RxyCcp n~kbnb9=X8@nAN_ӶAGU㨄[X.:=sQb3:$F[ TA~7R*"#UG_>w͒rzBR ɀ۪얠O Uu7+Bna(wu2_֌\z0(1ߨYp)4a2#G)0svXN E~\ψVAOp>KldG%/x $U#ʛl{۷Fƒ]jXe aZN#wǻϲ|ӣ޹^k",@T*jU~!VR#`+tOG 7W E >Ijw!'J,-QsH(B5zR&&yWSn4TVcRI7 Qtпbu WȬ>Hˤ;F)~B`9-9EJ5R)\rJ3Muՠ&a$HdIr_Vp$1-7x7D[ېڝkD-f÷p\}%~U2{}iM5,2[v' 83[Bͼ9 Y_3IX?R ĝighhqPi3=`-t8'?~ 2QaXƹ)$ -LA~ dYC3߮?g~˰EЈ #6Kׅ-uB&ʙGBϜNk$3B`R"~%u`_eO79exbq[)]r'R'B Ue6ɐ~8KN tY=-@7Dȧ2Z=fM*fC滫y 5 3ı!8EkŹnVTM$,ϳcn?6|H* V x?dd&3 ӜM+ҠX5 f9T""4f œ$"C # zG&1:bԋG]L_k+&&EƬMѝʏQg hF ; d׆礪& lE}i}Zh*r'S Em@uyT(6- ƚIL ۋkL$Dn\7#'6?R:]m݇=P+\/gL~__v)[J&D6I߂pN;e.)M,EI}g/K!w"nFm}ϫ&室!"ۘ! 9Azy@eDwW䴽VM^,usB:Nq|8ϜV-zBչjnֻ;=LQT;SGhD'ǼIsK8m*'VY>;'n 3&/3 bŅrm jJSR- ;XM6Ȱ)f,,ݕ:hۣv>F>&}BġгY枆uGiC>+A(p" aI8 ,V@q; ذilMBdHSG -UxL-{pqIG0Q6:=^_2MRvD é5ՔYΣGS(LcٍsHF B4hx`a-mBy\g+O^LDDeǥ~, ONazPnsgjճʖxLwϒtgO^ֱSʆ t<,܊nl才#"dY+` G*}+U5y9v\*{v~oHsS(3?,n^zm?Cz"pFZ&P _|] b"+@C\jՎh ( Z~<$J])Ȅ#RJǴmoX{oV[8z*큟s$MK=}(KDϨ~\ %H)!4H.Gyc*1MI${A]L~4*qq,goRbḞ$w?wpee1}rThl?$/WK`#*a 9#cORMIra^'t(7q;w3Lsw!LGv'ߺɚTǒNCOj,T;6?cSR S = B #*hCjMK 1=vѰAy2^Q`+>&XԁNJ 8Q_ZK gdDžbb K:t&!Wey>l#=S\^ ,?lPJoXFEgB<5~a ݄=})]ޅ`HZ`r"ڞRaDfb'xpeNXRYQ_x]XȬiAxi$dBۿ*]|QhXClfh~<I7t"o_2:fLO`%^L] ڔ],;J#"E#D( _V+ZuT+D՛oՈRui#-snCRxݧ9C˯W 5CJo{UpiIՍAЮ[ [?)%2a`zeé&狞gw lb0|wl?.~qHd49h'K{J08&1HQkSVn$z0Fe|LI\m_ —T:E *K7cHDEyCcQPuGceA4"`EҘRiO&z=IDLέ Gi(S˷(PH/Hnɇ cGen$kEHxK '>'SgY .HPۅ/a_a5ERÄrJ͗H&lЕ](۬u C(\ß\xArzmxi`Ƒ<hm(Cx->"~׮Z,b@P|Jݬ.Xt*9AO̘r5$h`8w&En?KFfB @=xM[<xm aRݟv6ۯߟIEh4}f3N|E N k4ؙ03 nԫx5a2E;Xb[lZ4FU4KS{+l=ߘfpBtQ#1 8GH(#? V K!Ic0ud\M6_'~m2%?;fT|RM3%bO*D&} :<,qK9ih"D+=3f<, {0 ղDt`?eܺ{=8ZE.4JG˯Z톣 ǹc.&u 9HoDoT|/d6}p<Ԛ[]:$J.W$"bgڜEQmzf&4\iڅټsnBu3n}P?j9KlwMvMkS7+y/'mǜ7'ax| Gi9.#^23w2葉u/!%e< -lص=m*][+|MOr+,fy(w%U;<(7G"/(Je'&x:#jHu!T,_=ݾaq_JN <)tQChÖ7V^ |!#p5C#uPNkɦ4帋Z"^Loy @1_'1F{{~.u jfn՜V sLr_A{2|JQFR@0,R(z(8jx~@.p"Ǣp6/.n?("4p"r_ҵ>,e2 #pN褛NX04'N}:@&:J͢`bN@=[r={m,x&")_'0GagDE|M njdqbbX'@>j69  ޻–_ 1 \)J bVw"_@؈aZ/>e/kY;dӞOXH/!W9hmQOZmَX8"3>T02dLA'p୅&WA{ڔQ*JWSFFh@&kNT=(Y1 aU=iR<}XZD}qdx\_:P@1Kp_轃͏ll!%oiFR/TVtMIj_*FzŨ~g :u so9չ_#qJH^mdWQ1 O7חpgw{n(==W5Q#(hU: Ɍs1rM,t8!b7nKYl($^8 lc#xZm_01):ٳįSTF_]⻅ڮ N[ﭡ\Ap:sVLENWo_V!vsn!R1}T}$1w@>~BʙUy)B\ Ei&GŊ t_ 9ˌ3e!pw$M/<茑?yg3d!sus|ٲZs;EHϲ[MGC߱w1V&$!F;ϱ"osRc5 Dg]XFEƿoR_@B$+).r.|ֱNe3[$D<p^(ΡZk؟!vQ6}%g?QZZ*J;4_Iȍn\wB!+f0>p>`&tk-u`K$VG[y#3i)O~ 4G/*EVj oGѵ>iR<8RW{. )+CD5^o-Z3HFc׳N_ʟHuOٕ,M% ϣNSs4y.(&&U;"5J%]I%kMQѸi# r.n?jnK2f`1Q F-EI.vsKO*T2<|&K"+gP_SH:eBb @l>߈]r}9^^z? GB"_Xyn!L-.Ս&CB|W I0ݠyd`{c`J&)0"|64bHꜗvkEN<3s&Ш =.ac?@7Mh̚ $!߿F+Gٲꘂ+Cm7 QU>[ Yl_)Ҧ#dbBHۢ@ |x [z&F} 폴iGFXZ}~CTGKZ\e:|#nҞlF?i{U+>>APNoOyz~Ryu6nXRCKn,0vhbu|$unAv:[5cGQ(@ߦސ[m:RF߽;JUx@%]3ktdCøPu% N?(u>=kI#n2˪ޏMeeEs 2qd_X?o)+䂗їy]+^ Lq_|bQdg9ESնn݆FF3e4[+mԃOR[쬂f/T̬6 ;^aN6P@9B~|#=fSQS!iUR x@Z;®΍)6_]!>Mκ%w{@iQKKj*Ml'B`kg 8.yx&T)'i3wM?>U؄~t84׻Gu2k66/6%@<`nԽ,mD~TuHZ)h'; z QnCb/ +gMՄ~$uAa7s5*;BbnmP,e {ojc+鄫29_eأ4,Rt"MnGަW$mK'! >QO; mۃ r͂@Q:Baۍc{|܂3Wh=2c+ ?>54ttRJi_V.⤀N܂wyAS 3dіĽ1tX ;5ok<ׄ5'g>$iSm}8O;B|L/.w؁76qA/TPi(NiQVZUx Q7ѽ 20yŧIR^Iq[^s6>t3eC7~ckIF/qSX^5췕QF*fbƈ:01ȍ}6ӗ}3/UI D>."Qw% l\X"?lc]b +P<*_,oɰri9>D)J7=91;ED ]'vίlʑDՉ •3HsQՆfhL[36QZ'x Bnr rZX`hyx03ɬc6s(9 P-X{gB?gz+omb|;ʖ^vƂ Jǃ o-= $ c D/ߏ|GKMSnI,ߊ7nftQ*t݈y}A 5[CU6|vn_iPtY8;I> xVJHҗ o#G؈/z񟏷)H~g{")gQGCYy 7"bp0nHy$W" \Cꥀ9XcJLT"?`&u9cwSVf$& ^+)&SPe0$ͲaZwЀ `TY\lٻaDٿ%_qg渋7sf:#TN;Aʚ )ȩGp0N޲Lo[Ԕ1{4p8f#P2[Lv;09}<ыlAs:a(AU5Dn:m= gRTm ЁzL~7Nf{pM9uY(J[Kzdﯩ^xJfşE䝠e3 [^\"JHFj1 { IqkΧч4}Dn]vӉ=plK>[gf*dOȉw5`XͣP”SO) 0obF?@.gQ+{x{7=( :O"&doPFQvpW|$^JsaF0v`+yODx!SYiMԢU3钓ұ%'~Cn$3hkP~(>ڠAܬݯ)]ޒq{ qLDt xs ބ0-D;̨ c_Py9Awˀ}Sm{I;oaC'bn1v/CLe>B$"HXB]ʞ\$= Əڪ iWJ =IRŮȮގB83wPj.#[L5xB[\ʏ n^O(52|FS4LBA{Tƶ7+R3e 'т#դlUVcr!/0K) j HMKYaQxDY%^psDlfРtGH7 'eD8KUʵ\CCvI;smLP#>žo/!Y>sC-Y6M%b@9R$QSeFβMFDž0o0et֎O4Ms@3Z1H K=\i}1G;s B[ : 3grߚ TAu{¿6QtxwS|NF˵2_$9+Hei+励K-#za5)q[9d%*ӶO̩2s^߰N<>5)1"N-+#5iNu6q&7zKA&FhQz91K{VGRW_\P<4͈eiٚ EXަ[y&؏WDc=7SAωE55XaO)bڊ<~,oN'堛!G#U"iRyӥR/ݦ^A@k':!G=5hEN=e!r` * O@?l ss!YMYLo W棌H~\+%6KH-3pXږ*+/Z%;1{i1UvBשȣb+T}O,]ig OFߤ'Dp=cØa+ m{W!گ(CAU1.V;&3/e\)+al,(c?Nw+kfj%8o,%*J`q Ip]:ʂYFSzG*U~E6>+t,M饹wQRڇx[B%3%6Kaq~!0`KS 4⅏9mN$Y6F-lV}ưpfÝ0&NS $B,~[`9&޼݋d k3T_ s8pcG`_ xr@xz +ޘ3jc x2o|GAt`vPP@FkbE ݰG3m&e>M&duiǼëx`͗IuEbaNJt5]b?&g޺Q'Jwܑ/P{dZ"^ClJ37Tz1 [17ߩuzp)- V40U <^ހрѻ/?$H8Z0f&[r#ڈh^ķ1B`ryiBfЧաбݢݾz iu6 ?TL[>`}x^O`V D3 }SP-> A";\`XeD~$ך"-mR2ΖQ/.%:_3H i#ɅOda%((:B)ps9F4nlb.0b, PBM^ze[>#Ŀ9qͩT::9TR*,=x ?KB$y7D'8G?]Rϓ u&ȌQեCiuMUlY38l<VƸY;f'7^Ѿ2{;k%/mNIBG*[B|MJ4n,~Kkp6wq(9þ~fB3)詫%G5}pi9TUR[/C7d`6)pyܼŔ_VʫF2M1sak,.ѕ '~;SdWKG zg1_̖II66E6RmU|Gөi1qŠ'Zp='U x7`=` ѡb b'RZ}şƖeʖz] ^z4[{+n\Bc(W"H''W\C\+@04DYsbhqeywl TDM'h˂xIRo0P2a#RǪj6P=Qb.3ĨKaJPVzgֻڲlFb;$Iݰ+L/X4318w`0 \]攠~ņ> @@6},MUaZ!RD:"2q4_=0& ӶZ-ՍXзdk2Otۇ{k‚Rԑzo5@,AK]9I>R#Q'/߮ԱJsēl{\%y,89|jn]"JqBkTF* >|^P6& :ߕ9a<`jTl%e (k)/Ab#Bb²ZHcg~NttFkFE r $y?)ҋΦ-'ׂk.$ʰ VǐBe;GXϻ$|Ugc*0PH|SkU 4g'7u=a,f$d C!; QG?Jtw/4b.x}Ԣ(q2c`2)$8%HP8:]xMqзl{Fo0,G5n0 Ȯf, 5ٶ~5c.?-TY:r8e|O~SD +VM3L<Ͻ A=e#2\`+p8Y.CR3R !0LM ?}j1WK;*)=xSq9A<Ȗ Xd Jq?xRX ;X[Wmp_% HC"b^jv'$[W삲Pڰ!W~796x=/u5%m&ha(-78ߛa}:<㒫>Y/) gtؑf!K k RX G~aIEpZw =$[qL "p}.zdQhT:6;E<&S DaD@vc5l{NA|ю-zљIaB`{ؠ-\>.=,l *)-mc}7nx|9#xu9t q5'lqi1ygWؘdnB$ MrľpOs݇ X{J,hk<\8; N 77 ysvݝHI\M UZS7 "aiwuP& _v|Ngl Wi]VU 7v[ 1OvpɭL.Y1ϟ"akt_vL҃pY*ڣ׊qx6+IO+-pbyO;͇Yh)dJlWyۢ< ukڷKӡ)%<2!ڡ^}7bBy}7aSYfPVJ޻%\$>%E% c \l{3'å`!mqlI7?]؋]|~#{ؙdbuy[!nhAք]_|m~ҔX;nj6jdO* "5 +VJrI}:'RŻQ{3vý;:kRSu Wl+<#NOBk' O[tX[0 bCqq+wQr57FX0+V;5J}Qw+h}hQQdVՈd$ F_A*8xk)[-Q^{LK:S !.ɪځg³:AYO ޤO8ar~4yGP7'~.DѮxVVtBi8k0[cHKwZșlZ 'pX.nXmsAqj4BE-@>կiVV i RטJ%e5OX6j@B~_nkd(:,DESH$[7$[j._^yvxOS]ƃS4eQ'ƕ۹ j;0֌ iO@ 3ss?~mQ0ɲ8gA;MJ:͑JlYbc ZNh$0YA?!}-3\%M79<>ug!E{tȼ+ЕۄMZnpg\czC%~y?-[E_{*ΘgxDYSVrAy*M.'.dWύd݁=lūmfjatTt*N=Hk30rjvq퐻gZ?F2ҰC"bg3͋Xk0SH ٙ/1";Vu 7dAS {IsJ,nS\u's,nf'XH!]/@`kգdEEDԏȹMtx'6Yd>o6a`D~JuD@sa̿$f??dP@[ҰG 8G #X]r^E Hd Nר7} {EbЦmh}KcȪpQ}2'zON 6qIK!a^} :'aacidm-3"l,2Bc ~ O!N1__KՖT4֩RIYQ]IսeE^k,5m$7}KxSnRɪivA,ƥ: .Vhp0}$pZg\3r]"G2|Zʥ!S6ڗ3T/C*_P&nX@ cO3_|qh yKYWz,ԃJp bggF$ۮ->m{0&DiH\fTtȕ Gx ^zit<%'-۠'_1j;(0Ra$N.\_ߙA e^3׵(Y6̒یbf:ʨ`628E ׿ݫpNØ%jN|ӛퟶ{ߞ37˽eT $ROXWOɗyviFϫͬR/YI!SF.<.eڼfl S ˲ 6zX ̾*Ƽw'ޜBt}%a?+Pj>hվLuRy˂L2dnְKqyw5p#9}[vA\fg|QoMOf7 {ˀ$n92n4~OFq ?qvޗ0 $!OG؜N w.W0^OM' fX~'B"Աfl1m7!iYB/W.;56C?4"cqf~&WЊoa{9 <-9 ʦBtTDb}Cj(RCN/:jm(3ADC_&d ƺ6CAD=J׳&~E.kTie+ i`$39uܞ|1ٖe(%?jok@Ȏb5|vġgET,ŜZXegA5f'qgGmxۯNGPd05a9I9 B>x//Spz.e9`8c66C{o CvaҪp.مO"Qy/!G3Ql{,iW1"&zӒYR>+ y'`LjCNtR[" G8- ?!wFq`+@ ?J )%!HU5EHy6jvߦm="~T =:Tk>ɷ]Ʃ>3QəvuITڤHv\N!zaC W:Dp9=N_*YFS׫=r{,ހte}9TO.^tHc&m3G#sI8ɯMޘvzN\^G4pHf؆ʎt: ɋQ&}@ RT|^n(/xFi¯wI/'e;^HfU-/ hp^l< ,<$2&r*yt9 ȫCo"}+4:(f803H$55.2 Р3ɮX LOn{4W^bNb\`,\'~wp@Є|FEibg(W;\eofh3FC,zap^8"?vP%Z6mhxdQ4)XT ϩ5B2আ87jc> V1-]Bʎq̥ c.'BhàeAs?ghi|ژ%ZvpeK[bf̴Rhn2%b>HFz-up/g预GOAI_VcKv˸EͯļIjєuo 1Tg7oX3/5|YkRAZyyoDʓ@8Laլ mc\z稾ĻBi:*,zWI^/?|ӣ"3m)_^?F՜6@N![ݼ? 8O1x0JP-_t0eG\iuF^q[_ _؟bR]?7B489iN &F/$]rL{V"BWGYΏZN!Ѫ\He9++j25h'}(Xiu}l@ީCeQ{bA(+蠖uT6bP[h"ܓp륂1#Z}.gK+[$Ev&܆%@-[J | =d/[ a&Y_UT].|>y(TcH@ِHt`.0]ƛܸ.7Dz'wr݈IJ7ZH˗+I:p'S_Z˯&|EM{L0)ʇ[qu[I2Ŭ^XC+6SlYÌ!:\M-{R%]? .[tyӨmEaEv5s&a@{zKq ݶ2 i؊(i:;WIV ,{ @6Z$.z6CDU}gpQP2NOxrXH],qVaKmQ4ҽYdمVs0gc3NyB자ՕDXzy,s J۰9i!_pv{,_ZHOH.@'B]vuIFۇCϼ[;dA׿ H"q֌S&T~}5G/ct$y1j;I'YqG /O+8 'w=nK]}CDݤjSf9As &bmZ'l0ުN2(X-S>VI""9j8³T"&O"(.Psɲ&4Eֹ}9yI^] b|oq|xwq^g:œ4|- 37Sur x e5٠ԑOYDµIyhg5w=x}0j=Os9ubTk@3P:" #+ ٖ*(.[x%mh |J߶_ W>X'WR/E3κB @s1qT#6DXFJFo!:[>e<׆PydQZͷHH' t&Hۥ~1^K:CEit@JH!Dܝn3h^߉tn<9B:Qd(N$(w`iNpiE~q*bX'^̽+j=`Gc 1Q҇%5cQ]n9coz$hM)M Q3mGU+էiNR ߵ٘8?YQ5Œn$s.pg/Q$fiA7f.ʥ mJp﬩v*ם?UO5 ҸM 2-#%;E1>wg?誑W[i$P2eU>:`_եC 1v#kt 7 I@mW6HKA=>'ȶ.7]FQ;~ICQ?GYfER|݄SʰҍxbXa%/P|N p-q"blxL2.bopY/?ߔH4uOKNm+7mC̕# ~x>1(c9PeASA*=@HIlMBPyK?bmXht37U* ,_HbIe^?1A^D6I,"@%KM8/V]&Gsck i/ $Gq텁}%ٟ3$uܾJV%u[Jq` 8!TlU۫ghN^JHDMߥ4U9ȓ }1-t3S"|xno[Zoq- >,f(|F+4\(M ='R)@E^(m+V[?Trg+db{>@75#)# b%(Rd< ?#DEu Q@0hiJJ)˅k,{StjNa}YWRv fzcQE.;>r9@qmx)Ѵ {{pͲrgkP5- $gnǬtd[M@kp$!pL_9(Cl=M|Ksy;-@"=?"-C]isA _m$4q Ε^YjY1>"9NSdۺr{gQg_c9۶HLeR]ם.^(6vV<0|04E9]_`J JNɺ,keE:˶ ZO3¢ jmk(8fx__71j*Hr38*f kEbØyHzS ] a! >1aAj_nx嫜P!X>oyDm.qS秵.%{v&i-P0@dQ2"ԏ!͢:ZrI:TÔ wf@ˏ=&otFR!$`܂v>4}eMw^%J6N J'6S(~ ~ǗPuX5ϰ5eq#Ō@M1LピM=v‘eV.؇x1KǤ%Mc[;x|T>0}W?ۉ^Wۧ@[ϖgnvڥusE0DxCY#P<Qs]"hJ{f$Mwd(|IeS#0ITϿR\EN맻}G,#>_p2H2̼..=w 5fGtrSX;na`7Ŝ<#6 ?ٓ :/jQ%N0j>Q3a)|NЗh!'뉿G,%HJplp0 mJFv^2Zo0fIWb)X5^W}w^d_|`'o+:%"* \n`{ =±iGS{.y^8s6 03=L= ;y^*6sٸn aCbCuھ%'>n m`t:Oߢ?L./Kͷ-<v5y ::`p?!'L[0daCPHs[ܲL/!\-Kۙ9`j/IO m1'h=:6:Ϳ@Pr>Ă$ZTH/6u  @J?,&_󇤘sy FJ\#AD0_5ךzzƏِެfvA Bkgg|;Q6~=K@&he@'뚐?(q:*zQkBuP5NSQw kt6DG5z((+v>2u[I˄8 x5.K. o 2ꥺP#TSq装<")xо绽 jóR㵳N]olw|c`gB HyW )t&!*~[+S<{jvbRmDLFiƑC&\( qu U_&j`611䚩{r?UD١*cD?՜5y^mEV&‡4f&K+.0^8)KiWwM8IVܤN9t ]kSZh0& NZ[tB9Rz0Zȿ8pvf˫ @8^)L_U[lƱމe$="):sʖSnװI]wTV+TwsqEcƨ ӫ㾇yE695B V5; H,ᖑ>pI{€v0KYJL/(bsrt90E5o3ۄMϢ-:I>'If$`z~$l& Ri.lx[',=Zgth{~UE {P|I> BN1nP}JzY(6F2XX۠ |([3ScO3Ue$AљU(⏃ 8Oocfh5zk~*`rIg q8 } ؄8P 1rzBw,CH&SKD7\4 od \Ǚ+t$~s<^"Prw'HБ$ª!cq%5tO73Kڎ†GSdJ[1q^"9##,M4ff%2@u3&e اUQQHQut)YRHKи yJPCNa0'V~GxR;xʷ^bO{GXT?SGpХVtORN@N]Q^JL6rD9@ +,_%)mlR)p]r)ûw5ano";]xN\ZIY6ڒFLT KA{iG p=4:e:m = ^8YGnrR [h,kbHrxhRmb zK؎ᦨ7H1gpl.qF#Ɂtz2M+ٴޑW[7h룜)621zjzq r9R-)iu[%k~x'*HOp SacV^VD`iSxT}MG Z>F"͖F4xD<*ᵮdb9*rЙPW/o*Vhl'FYI{nIa EONv^b :˜C:ts.\PQj;xm|5:14"$AB yE#UN>7.ʻ۩+hGnxeDs0Um'c0@C7 !^f~1$ Оv-^67y ݓo7f.LV%F9\$u1 ?ԧJ09I--G:H Uz N7Z4՛\{F"uCB*D[6dy tp0U o Ip CѤ'gKjrUo1p@W|,._ϧ %aݫz 6:01ǘ[>R;v01Zr!-[ b[tu." Z^{{iI;Om+0SB{>S';i}}"$Z}Aś*}ɬ/\o|Ac@(q5hwF*a+ lag蠪AP ŋEvrޕJ Fpk? PYwm܉ύ(L xRG/?}* 'PCQi;MVvLW"-7A*lT6R&ZWs3~ |Dλ8mHyt/~ Ek'DyneO hѣ3 t/ytUc@LNRzSpASdր CRe0,Xo#M7F%o%6H Ɍ АYsB>7Wnb  ۵MgcEz%AOg.^D" _D(ҩxBAx{|-;* V-풙,J NX$ڽӣNC:I_ԘEEBV֗N'EH5F\S1i'n#>;[aGUڢ9+o񊘬>p9W|›(vƫ2n!LE?[{v[O+ 8LM%+< DC@ZS^lr$(tQ{śai`z$UT݋+fsBqm)gZ:Z#1s K9Iz] uX6Nz@8 m ]eBR#sCc#ت#U0ֺ^noZ[*5qWlvI忪"ѨG`J,P#SS{ʙlgkʳeˇSxCMT;gs 9aԵkX &ì5j WX/׺ƠmŐ|$W l۟)z$ ʕH$tE*oj)Cȫ*ѺgrMbb^h#oƸ1澱=Ddh{O9V]* it.+TTXW(|̞&^X"# =;,_^Ur Oء[ `7K5ihLSϏ6 <'N33hTsYBz浓 E~m ]hG,@TekNE t6pP+Lkqix0B /vp"s (sRTT 'oe2mX ѯ$WlYx~̙;M䄀Ce  CWedƝV؍Oը}G)x *ɷXj۠f&*t! 蕜.i%ṼfgTH)lf[mJiW߶!opfÐcu07)ľA',06VT68^fmS؟y>o` Əuk1Z6_k IU'u}owf ^!$OCnkS=W2x5?>qr 27Ye*rQ#ͦYֆ0_6A\2U>)1 =p.NBjmmzxq}[Aê8$VpI9JȱyEҨ#[**;Q>x8ij%mB <: Cop+sXN-_1g:.]TMİI >e{(K1M{OG %1ҠRP!8ҡQg9Sc(eqbvK5.,5-> (_?ZeSV]}v 16@]a]#{׈-wGHn]tTW%s:QILQdOƜYSb%YMie ʦVعXخ9^甿.. ^6u${垕ߗGp2:`k*]:oW*E"c)жG uŪ+"4;2tae! 9 DVz## \g &Yp!66-ĥSwP"(Y} t@F^xX{[UM h9VClqEŏlB\rVqNNp\Fb9|%%@-. 60 i_z3tڲy]o6J֨xƣ<}a+K|V[-8Kye7>-c+xʂ-zecdcաYm-SB]ec?u;%Ӭ>ZA8 `%uװ kA5ڢ9a1 c>p!ЖgV]I`KpGZp v,p(L}힩i7vjeyڼ,1v:HeWf4k:ͳtW| S_9"5SF[f-EGm{Bsll~Oӏ$bT\\ S.ǰ e>R]MGTĵ7!exM&LXv+mpm`*7 ^|1zߤw8@PZ<bвO 4 f#zsBO xnzHRDNޚ3@#}NH㾕5]\ɫ 3_RN=:v5i$P4Wvy P4BGrN9D(IN]սLbZr=nF?a;Ǽ6ޯ7#/o,sDx#+uNLoy+ }WZ$MK۷J݄G>3aE])VԒ0JD&x4Κ&@]=um:' er#B$#E+|T.Ō^p=DPN)t"͎Š:oPMUՅ)RNWu 9§iy O_\U( `*PccoZ -_lxE\N15_bmUE߲;\/d۾P_j+UcC: D5yb;@RO& RϹYnFJdtlbE]Yt9{R(B{ʼM90Yb8fZ"ѰTR=t:87:FyK'^phֹ6ձ|sq V-Sy&+b^jrNXM6W xLSܰS協n.pGmٵzs;h"ja f gQa(g ""lxLyUugUk$uj;wj@(hrFJIZ.)G1C%݌Uu:./,M>wNe'?"q8_Z`.59}-.VQ±g<@a2>]@BY7ش (VhB(^4`B xzT[dtEٝ_ig2?3$?;8bdxLޱ@HKTo^ UNx 9{Q~Q)8dILX*D -\r5N}^4$ː_=2|D\+1Dg3ڵkdJK@k7%gv7󘴭z;P%x*>mN/!cۜa1@ޗ|NkpK*8uMnRAPx8w~8W+ܩN7eRR,u1P"DS}Y~[ z0ɷa0XtmQ5^/Ƭ .(eN:Hc?I-!OQ]:_\͍ه-DtBnx]OLTxrfЖUsWo$Ai*%ɞV*< L=oVsu-K~sLh% Wsj=M$s%Ef?8,4SÀSk:کR z9| 7Q^hhlvU][QIW9$wzOyT~23Si;^Zb0!(Gq&Q>!]عˉng:eF[/8ejh"Pp">B Wea.5^Yꎔwƿ|eCL٭]XIt!&m|unsSf,GNr3GWrfؔc0YcC YTS<Ƀ+H_A}_t\Lh F >JDXvز`m}^6R BQtqtTmSU >霿2[Lٚ~-HP ]LC$ g1!8A#i_6 f]˳{]lZ/- g3.YwW.+'+Dn%@H@}B ݊y7q_ E?9^feϴ0-=ޘ)OI2]F§YÒOEI+y!Ԝ(gm)sm_GvC5300QmJbGuggp5QWE2˼6 {!oS#mc4*0tE޵>)Ҕ d4{c+D⟒ sIB2jCLp<8o&~nemR]r`G!K4̽wԓ@nTWP 7Ks]~< 拗. Rظ_BSMmcN+?R)w/oŷOγW))y=>Dg^Ġx츂k_+{4Y!'ڇ򩇚5hu=52W0Ñ`LZ-wG* d!V;R0q.zك;T̡K$6i4aJH5F)6zTn?O)NkZM qQ4y.HzFq`J9: 8® 6#ӌӔk]{ RLn]^zyu\¹Wn2"/K8^8j  p)ݐH~H kSn ABN s̀[Nk[ȶ*)K4s 0k)mP)#[B >YҞi'CF >F@/h 34|zkj3AM9D ܄$Raq՗)G!QPDJ\9g(9? ;my:e)xa:#!) ![ؓ=JV/1S@N.U/^37/?+ߝ b)* 㻎dئ >>Iu,iܠTÜ;B@3^Z IU0'w(wr? HYb٨GURKM)擈ȤQc,8x,)i//^!$]#E?s "dM:D !jɡLJ ?zh-7҇k':Uyxr(¼c4#!`7'NzsGMT-[Syf@wϗfmiWϭa^V>iCۃ <Һ< n k*S!ܡ^D7 A@ӥ wp-b!_4 FpoHU~ ݜvɼiy4w~J 4'\sG7YyzL1OR_ 0Yק8tpּwl]CQd߾5<2eESCH hCjQ[hOn1=4h͍LyXEY6$(eS6e_4|M 9TW4l{mߡD3;~ !U; Bk 3`cYww'έ j-BޭiylD:޿3oQZh!srlS={BpoAL,K!1>^n伄<շ^hGxNi* QŦH&HwHDa𦄾_جCL\iʬ#xb > *N!BH {I &ɵP l7dO,Qmhk|߬J5rp} ylk^P~D0+;dRvuxD%=eƁcQ_m6B APJNl;SWj՗"B)c}E>3%q@fH]Fqݴ"]-s"Qx[2?dװ#@{9i*2?k;)4[Xs ڶCո+hԖ3֖m)0$̰gD9 1ۯ :Q\O (o$;IuA:";Be֚-Seu.r5'&wN<0+bvQ3˒=8,DWdxtR+o$>`lV  {i3pzzMIBm 폻EbɡY2PjYmk#wpmi%A@{7R2_z$.m h")CG{M/ jWJiYr民gZL \,&}筙 P9k& ~Hlt^i.YXžGذerI;eO U׻1:*DVSn ?v ^ aPmT)}%GȱԈb(2w&\QXDBNᮎr9EQl;٦ ;¢,/2~\)RTt"Xop>sNE[>bG Cz\hD\dĎ>d70CkL=t/?5[hnX8zɜʏc)Em#q#}$?+58-z"&TSlm/i_rAˏ{A|@]Y{TO6&{c(<;nPj侥΀B#Ke*jFx> j=9Ww뙅j.!ViSM6P8rOZO$'7B࿐,TCCm\a)b hx=Փgf21@|YCKB!Dq`akHuK-g/x"GLhuc7?qw3Q= ЌSxDR4FzB^j;nɮXa-o`h W֐!D4$Ỏcخ)pAkbXjYxr6,bĨkiH\&=лk=ƱbR/DBhJw&66C`m;Y;{4GÑdRGqfV5X?n OB | ^vPzp1a4Ī ,P[}7l+WsF!Z[8+ atL?ф^ݑJ]kq#H7xx&1F]u1Ofp*c}iaK8k} ٞVKsԊeZP5EdL֬I *px ohٍw 3O E9sZT{=J?wЫH8~-/N/I{G(&ROH(CZb>R3ԇ*o$L=kXXA= 'aR ,?=; rF l x|[ʍA&}#堇F!A~m wPaG/nU{ѿ{qxr̔"2;|5]Ζ2bI/ xc[UȞPZeGM'_vW%!k%B}b+HYQ[IQj;:*ýqDz_EsQ fA_-/䪇tQlVZ򨁍*5)HO3V{La4%k$gDA7_6o'F LQúU*9} ޲^q[ӉN~6[ƕ  z"5]D,֯8C܂ik>w& 4=_nS(^i͌2YFG`AJ'Ra%":)u2#Q[> ];$:F !l]B5Kޤ9b_GɴPKPT٠B:C_F ݙ5\;̊\ g=&"a=&|a/V6?XdLH""K̨HK|qK$x)aN%S4$74j5 LM@g?McK!gMaN.9WT+o#RE,xƝUV3׼'/*ǹ*^ЛHw`,v9H>cԤޑ0A}ӱѵò*VsXPh{E|u-r 6cyNܨ -*{DBjwT{n(Hf@_z%hC/w:9=8ϊb Pv3ׄFTz~r ;z5fRޖˠgoJLʸ1AQ*xo{2 ?Ѯvu~彺!:*RP2a[^sed.dԑ! J_H!f%lh?>rLN7 spOO`Ŝ?fU\%72:­؄*=,E*I?q 5>R@6վ(ƿ{w,ȃvtSheUZ}:?.F䨺kjHg.ؕI+$avޚcR5Oƚ`eL+(U m`* )J%ca5CXDdG4'(5=ԫ^7GlZ[waCEL NAN8MʣO2Tҍ F[jg$sjF#lqreS8`vAQQ|Vzsm1͚g*4FM[DYMPY\]ۥW X?G:Kȸ&ʘ\Dm}1/9)gqr_~*aQdt;жk$1tF~6gS,iE9+ƾ  W~oZ~*ԋkėR mC1<&_* 8K6ޘDM BKFLhbRu7iY;qh|n"\561grsm3H¡nyn XdEٗp | y(7ÉN ]e#6I k?-yNJZU3\:Ic~Fm<{E7u:Cs> M;a}@9(3]ǽpD&߯{q!4Zhe!m .z J4 tL"oz+Rc2ݙ"~]y V9RVh-s)Úo Ĺ.$R#}A@2eT MAkd ;wy4f;e5]gyL*2(Z &!=Y5#+T3]=ɟi}kxZ`1SS5xTe_@Z!sWVf*!Nz ,l8@O$'\enXt/: }k^B~(WVw71K X-iJδP kӇT֡pr/LJ&IϔK٣~ c>bĕќ鿦6J\?oZHXƥMB>A>T#9bL[晴!z|ML~xkK *[;3^ϒ[bf-L$|X&j@v (yCfV](ܑ>.BF5/3ew^kħ2)(3fn [~b~+B_)t/.Ze+e-gl &d|vş^cHw5Q^Hpn<E,SU *;H픩8\foP4FR+"W7R@txC+l`: Q)EѤTPdcrPG9!=tRhcо)yXmɽg $^&"RKTLHB+EaB~/& zt'ҧ^2g\6?~A6sce̖7kE,gqmTW:*!ȽvD{>թ~Ǜ+B~IA͕ ONKDNE}"ab"/FOsU]l*ΠEWVKlW/Uл~?Qn-^m80RkF#!BkoBesĂL^#Q)L*=$wam Zg',,'}~VR$Ӻ1So(z8󯩨M;ܪ&Jߞl+l@kJ|2944$k2Q~->h!g!`'D$A1ڰ"Y )iQ8xح@b(]DV"$ni3_by{9L`7#A(O 2/# J+ }L "rH +J}0!_LYvj~p,B*#l`^, ̴I1CZC,p[)`]"uc>Lʩff8ipیbƴWB U=F(> o|JfV=K[4ݏꝝ:nMrs ̂Rv`nXIj )Pgl0&|E[id;whJ. K~7ėzU9NL^'umc X6؍>u\I>/3yC/Qb_Ģ! cPC`@P26ɣش jEQ8I^QmZ^titTL9TF U{NL_su@p_\ݥ8*"CI><|q9޶g-7fYnmH> ǔ #<&JN:Dѫ9kY|ѠY;eXa)~EmFf-kGlsf,{;)@%5%(!FtWqmM,H#ܩ) 6썁~RdK]]ε.ra^{ѭ}Zb̓<+~%e= VsE%i(`$)Oυ=?xK]}noxt>N蔛3y9 I._][E'Q᯹xS Zݭ@$nDV.ב艝P_<2woYd!#DCAAF"ORXlz{z ~0hnXZ|Yd[ q(pǩRz*F$ Ύ/ķN",ƓuoݥZ+q;XDlr{F jÍV-tѧ pi P~NbOM?@AUXjgKӛrIK؈:v4z We.Iu[N.ԁ;d=Ymx?dI A?[G8uFSXo\rl_!Ua,scF*L 7}濫ʦ,`XoXd'׫qu(NF\5BsJ{iԑWFj-J2+v8Y44 p.T :v;VH=\F[PW׾ĄNװaxVgjZlE,[| tm:Q0l~ 5# {x'q0 ~:'ʇќ*՜HUp͚? ѠgZR\jJchȉM d߾/UI*"ۀoټ{w雗-ƱﲆXڃ't-3_51c2'}vCKKm`y)|y 'K[0oƘ Ɲ>*9=b e+aW7f`=,N)EϿ1[Ob0WiXoWo5/#RJϋ q֛5_ /%'7YaE=@I!gR{$`OE}#yz,fXJH!x/ZmmC}jXb5읞Ž,FP./ NCOj^pـ&z%Iק_ >Dž= M' lBlHi"ur'C?)6ܲdʃJ+bSv$W]:C_E]w,܅Bd͛ˮw"pnL タu+&̦G^ Eu27V5E66[2 gaTVɵ|*Fe!4JL5{sWFSrY冖<. \j]P|,Ɇ$ߜ/5 Ws[B`J"7UOo*7VQi ᣚ􀓄!<Az;TB>7s 53r) hȒ#S\V؆ * 퐛? xMntzO3+˜W}a4 2K*SybƇ}u#J1JKO)9 04X.\J3q"U/ǁ2vuD I?{&2~*pg#òbn[{< +v8D=ͯsL*gжQ9jPDJvxVͥ"-35\ބ,'4O(X$mڈձX?elP9n|fN]iGK<]O3{Lq`So ,)ڗrv6`?ai=^`0\n$Lξ+3Qc,y7&?t8Nu.DGIX$ƨ';5%dQ @ntCGMop .CT?rq=޴+!Ϙ-fMm1QٓfwŇ:ơ1x*/{ :o1r~>^}}b^lF$ 7E 14.~[#9eM}KƗ e zBʏbxG)Nx{tb1[_&(m xtk{ȆRRRt1V@5MA?P*鄢L)ղoŤn KД}@ԇƧ\פO\#AbWmS5S6&0 R⍎v(۝ΓF0oTHC: ="G 3*ԅlgd|D4XR`Ba5sVwM]ܧiBsDɦWSm)RMQ  QR_̑cH@t`h} 0Q۬ <{JjK)bNt"v #|󛨕xQz_ Cx>RޤXSޯ @UzjPS036a2V_w6f50#k jd>͟},\AoR PfЎIn(˱ f[1>>h:S=QXLOsz?]Ox0}!|,_VcdjcvXV*|ގgo au,oFջ3G7wā +p!xSWvhdp _0? $Y:d׽ᕟ )7m2_F) R!(|6z# @GaJ?~AQ3&fdgP꺭" 6@L@}_L|{$UAE 94X3?im+=e~"t?/F&CX0qӗЫ~vdG4FR=;@U`-fq(u&lcDEܽ7 ( Y(KU4N~+8j  jי-fvKIܰ:gPOŦ9{H{+ |4 tU3* (cr4ٟyk#Ɂ3WV&GCPA D"J,ss 9` !f!Nz%p$*~kuuD6֕p63}x w # 3c!|KruZ0k(Mg3e~֭g\3Yb$]'Kin8Nbs^09j8B>΋#u"`ǥ,Uiʖࡤ NG, Œʋd0Q D~o8N[۞ rhblx*I=Ԕ, #ski$2 gJrS[K]et=.;|7)>&L0RV0+ 58*",9xb_  ti>L%H]{3:"3/^ GuԹaf"X9乯A#TW i&Vߕn Xb-00sHsms TvH1\sl+q<Ȥ_TTLCw {}FUJ#隇Ng Vt*5ɇ1hvkn:f/ ׅm9sxl7%yis<LnU*\>+ TsfNݦ(HabGoԡ/h6~F!cSV8 d~#T cj(ud!,S%`O͗5˙CP iF3S[#yfMdPkl#Tf06Lxa!.*ȊMeRȝLH{/ve,\L`Lw#8mJ=IEINj$LN%{/aDnlm-u P,SEm# <ĉ:ʯQ1$Xh^t ~4ۙZlM[t{jXC1<.DeQb1L2©Lʅv)=Z4XV{PIR_}70r3pJr؛2:DЖZ+r(5D_ȋ4\YUDic:<Ы,IvOP;&}`;i܃zP{!A"v+Dqf[i4J]?wi9;uis ,(Ke?5]LD ř04_kh@Bcⷹ2U>L7 @<|!9x?Af]D>4 aˏ&C0#*r IGH?!|ϸ~h &i7dXG7_B34soB٥׉^ErŴI)҆6/5l5Oj=4PjR7V!b)r^( mDؘ}~;,_ QOf.Dj֗p;/:h<;޲gWt ݔ7<6y~ T[7UP܉Ab:~+zE:>9N꤯(ٖD<ɞQ'=9R[x&ᄼwe Fhz#e?ft!r0Y9/N`Tglfd, =~R^CS 7ރXtt˺p0%[GϳH"J- @kņ[%lE0{ardl&Ha6ho}?^4OHC݂TN'ƫouSX$5fso@,N}( ߟ'1شE, J=ږcblnKAXL*V)U̓ rr'Bw!_V-:vvѢxٺrq: :wF|T˹g⻟GR,Z'tPfjnD51ΰjhM[X?s^/4j$Ń[q!ZZؿz.F_hs¹y^PQTw)BGDրN ΡJm>3n?Ri+݇J` uK[RsP=f7 c"YOm&>d=&j2&[6_ҫXUY2zxb~̑Bɨư!xVGU rsXa7't2&߷n߹w"L;Z8 {^ǎj@;d3fL Fwײg.]܇!;O,y9(0Afs aI3U." 0G+3A33܈M\U#^uɒq쯟~; YZ

    smՑQ2A[[<ӌә%] 'RSٹՁ=vo2fØYidX6582-:ރEsG6b\W$KLB{4 ktC\rB="7b*#-((2 :)<¼ w *-]]HS G8#ŵj/$Lp@j dU}9:HV*Mzz.PN^a6,]ϽJ#u*nَ 9i9sp/EՆ.y!SB4 "c;hB& џYa5:<;*!9 NyG#eX0ߩͲB&=83fՕGIP7XsڸEv] MF#>.A])$R߬Tˁ9k5w@6\[EG۴rƍѓSo-.v)O6X4!\;/fS$3o9ig4lr*󉹛s<8x-]O4sd S깔yf84 z ~:~>2 tC[SMxf n߮q=\TIq:p噌$隙3+lH*Uܴ Sc~yQE@dȹ9dae$8ДIL+#6it'R^1 ,s;0dFşvH2oá~WhcAtUm/K* dyV)ѧ]( q\dI8R;mN!D *ܸT@Ͱ*rwܶǀCݑ%QO^Yp˝fu]af(dn+Aȷu= q]ڙB撲s"Dfl=C OfWV t Cq{=O&xgRtTϷ w@aN$9Z70CJz2NUm'*Α%)jưS#缳@Sr|!h^5x"@QN"H'G.ϟ3H&'/ /Q ~ܩ; V-aZ"_U}C=JÏbne[nt㡜`&=^:>3,w}&Ӱyk=߲E^]8>KxKVkNzpUQ?VYavQe`V4|hG飋)J^ d-l0 JeG~j9 q/݅ I0IJIgat`xr]V&gP段& ۇ;>p.o#/asKX6:SN;baA{p@|.n8w}KS9 9(h׀lqnFcf2/gQh\ xS7Jw鳴6Gf)y{y $fNyT))>"+=9u꘧G!5~r<2xǫ9hzZdaMq9)"hdg b>2&ze~T nrVF9UC[¨7}z g.04z*Vȥ",]vBjy񯪪׌{64Y}-A9HBHv/s4ZnP)$.u~. zHSJ(Leoۨ{>t&=?RxXI2b~TA~ 0&`>{sl*(?U tE(( Nզ[^9}, ʥ탵v@̗H9M'H&㺁_@r4[i"}N)uPOU b]e<,a[79? P9i<$"q.Fϟ^&E^/>^76գsA#D7ʔ)nX١ )hQ\?R&)z1{wKCg:RW ۖ{HImo#PƘX`H+-ON*Z@=WȐ \( > =) HLÌ&3g2BtLbiYiRg:邳J֟5Z# _ T.Ρ xZ[!b11)2#']uz.JZ ܰ[ʯ񰛖7BrLUtGAf^)G]w&lo.uJcFXr.-o7 iQsb>hmj$z}6xOl3o P"XIsNCүZVƞLD8 5_wPzBU1|i[DEwT2x2eXs7Vׯ4۟<`ZBH33 }as괌sW4 ҟ` |&1U1{$sv 賺܏[Ԋ8v?./X(8LiؙrGybL4hEV mY;inۚK'JƻJ /.F˾x֘})r e_稐Xo"y@෋>hHKrtWW-'ˋsʞV* BkYxuAzJr9y֘Q e)&$Z-$&QIIn)y\J`[Z!kiHӳ۸+T Mf( 9~l( .'#\Pa?iVRMgƄkꍁ^mƘx6)Bio]x{ۑf@'T;OSF(EzjoGai( |v e>jiahPanpUp!?~^tXjl= U;?XY h)p GB1Hr^2ҹR6P 5@Y %R\W+Q[E-9pO @yO-M?5suKЕ W+/o%.>(҄;pBho}k |7)u[ٲ$Eʁ1BM~$-T 8& 4 %96I!uuZzz#s?L2/ԍpF2tq9!iUz+Mkȟ*!kY%l N+-$"/\.q#߁Tp1qG&0ZDi bڢr{ Og!Zֈ\/&⒌|+`9[LG3îd<"ʀ`ݘx[L &w{DUBSs(חЎP7AרsdeJ)U(QC7 ? zZnM Vt5f*(|ah{'niʒgo2?Nĩ~æ208C &Ϲ/&U șIsC+ 7Ȩj_?+܉B9Ns16/NMEGPGH]2m V)L~T7~P .DP4* )ȴE G׵u/A􄐲{?vA8ɚ ڢRVە߂c8 P W ZșX޴JA&%*#aNr_BeQć_wy&kvC/~uېx96ġ^]g.;J =AJ2?4%@%0BثwӃYYsoٚ*n3ut5i '>>rg`5S3'bMWPRgJۯVJy݇>hI<%`X|S]ȏU񍮁X4T:6㷵Ӎ#iLxrmN~~U xGP7:Wk]ИYWH yzpwLXfucC vg=ec;'ܶ7uqeZr!H/Ws=PP:K ޫ7R U/ZBsD|!^LC9\ KY|c̴:Fha.F 's5H{( "?*ܟε?щC)  xL'3,5R ]_N h[LWK}t=mLC1ӱJK{3@BFJ<0[4]L蜎vÂlaHLU:UdȜѷԹMTjć#[ Zqޖe9iFVSs oh\.dSN׈a$Mz#\n.: uZ4?j Oɍdb#CtnzKqZt&|j&p3_hoW5o=/f]E _3n70A9Yw0 _E/FVMYĬWYN3;y5@Q*c;0yju  A"x׏#˂CٲIf M'kca3y(BYF = ^>]6~2Mhasع^PM +T&UT~M][NBۘ=NXe~w@9kG*%{AEyŸI'XU M _Z_^/Hwdy8IâԄ3•k"Gζo#,LpΚC[?km1BϿ$5 oc|4c~Of8 EKXp-㬩Tp7*% +hCQO# EJ000Aѩ&=K40JAїHS:n6zR\^qo8Ox] O9f+Ҁ]t;lɵXF+!ʮ"^Ru)bNЕJrwi=e5!f#1h |ϤP$r *P+C?uέ*7뚰6ԁ'LP'~ӿg.EgMU)o(6xS2NSuOz'g2D39u3 ֌ZpC#hIP$0so96J_WvyĶ c!b}. \ -F1伩m8u.y԰Fx9202Ex-y"RZ@cG!߼OKL=>;4 YELB[* @X8守@N0H"Ś~]W̾&{/'N(KWN~=̽8F |cӄyJh;#Q->sgd"VfJOfxT7=O>`9pk%-DyFT/ ӎKh,ᦧ*TBę uR{.v[98rpP*N BE5u1 n`WmC;2(-a<1_*J쭒0rf/I+UZCZ&/6/*HVCzl6?<̈I$)?fضu _\U+(4m۞iޔ*jNWSPC "1СLyܒ(<:f+LF2~""Ihc٢uHSvQ}۾2𕯊€beAӚ ¤_GCG@dګyوѫ67%_}mjeWaӾOO2BӧT/֎g#DnEl@N2CT8 ݮ_κ#ta'ISXa-LZl!p u7 '\#w\X *_` 7iLJeH=Ux-Y)+x<6YpKdjJC1~ɡm2foL/wyΥl)zX^K/Ke_S<|x T%冃{Z-b(C8g^^NBcJVEv/}~R 3y+:ך@ w bFp`kk&>ۄj12*l&ߣw_.3 PϳH]#Aw_֜uB|9f 6zvJ*8%n1D3kOD]{̫CP ړǕ2tO9aÇ{O.hfY3P1+ز.4U 4s[I]N-K>8g"8"!6!c.niJs9'kO(A"Ѫ@TF_ gi܃Tܼ?Z6q,+Sb| #GQ#ճ42o juid1) 7rɦT(v8}Wxj;%?N=0L+QYЈ=¥i2ZrSB oQN$Yj0i Y~t6c nb 9w'pLvHZ7Ƈi71 1_LfY12ROzJ9};= 0vQe?ι)b[6NjSq6Qk'ɿN:S F2[g6INH3/;Ob&jD3JpE6 x=d t.T\i:5 L$C|8$pGCWb,l|bjSV#o:7ֲc*,ioWKa keF X1Ϧ=^8ķC9E_X~|owH'Nm8ޣ88sVcš'd)%Htf@|k^YȑT=+7<T*0bWɬ 8H" 1S e!{ g Ut]xhŔœ11am :ZSSXݎ>e|}(}?8ޅEۊߧN/`@${K&PS!]7*{횚 ĔkHi(!_K@#5 BZ06_c&wi_ES!$]pD8W_);7wP_q$YCC~#Q<z+UiUvAp00rޫTkk%f4kK DHۃ*6Np_G;d 'k=6!ޜ!) S 7Vgĩڐ]Օ9nD^q+˖O3T<_X^h+ H{łK{^ ~L`\7h;Q@Xia n'Bnz:멋/7Z|;C ״6/(:,]\|Z1t-'+2w.Ė{A !Ke0xlτ6/#$ ~CQ !驊2 C>cL Nd (Iypӌ7ڗldyJKahCxFL1uS}_l1 XeDNLCRM# 쪚V| c"r`< cΉՌCݜ"= ˂ @mlA:اBss&ރr[z#]g:ja6&31]F9>: 4HsH1v+yx`Җ,cb'y ~sOKSE/h&J*tACԺ ?{5l wq toczi1I3bGajI|w W󦎗5 i6|x %Ó!QHȴzrB#P.uט̜&J|ڜ%uF7yfDKv=Sceg#yM"v\xNnL)d))6[GW9+G/͋T~5:t8]s) -& .U仓1AAA;! \(gZBxByAx<.|YcoL@[j2끪}Vƪ _Vhoe; 1lE+qFF+#R q4r>YG={K+:?L R q!fJl ^oqu"F:_;O6#Q +D@5Jg `<Ƒ{5w T T`u[߿qlwCPPfx5{8 Z~Q˴X n7upd 9ucf+ 8R}FEs٩VgFYi~MLD./CMI/tPW|f^HвP8{)i&FyŦK_O٢ڽ+@O4r.Xg6ҍg5dQa% 3i#6o[S2jA62BmSg 6uL  3%P |r -\1lX 2T^ƍD(FzXyHy9&=M1PV$1 piN? +џ}Ǘ k{]n-`3+E@:ҰLfk$1Dݓ@y`|yuHvJ!D (7<8Eeo@|*!5.-x1JzX+qf‹~}8 䏹sM0k>~g3jbZ}1Ssi$59Fvkʼnjgo.w7Ͻ-O"ԚHZu~hϲlP vծ~),0ڿJ|:,Mi;Ư3e %3VQo7f5dY|)+0S&[b~x ⨳.DUmͬ${/|G4&?ȿ@*^Ay 1aMd x+g}J!pl8$WGq6nykrre7q\A\JPR1Ñ`_dghOP{jOmj:Èek(o8k.k}Se[YM[#dO(}$7  &! 2Am,GΤl$SN`_Z%=mXʽȃ ^;ݣNRJnJ0 Ӱ`Io$pwuh ܭ \lÃLhOk<({M\>/6=89Zn<_2b5+-R@j^r[-b,Fe¦R2ʦLY?cJ\q!-?gۘ C xQ墪0f{?$oúzS̠wEON+)"<(^nWҼBrM8O*]-zSJBe|Ia)_:፾>0$׌.r.Dj%B 4.=cɅ 7/zq4 "eTۡXJX{w: 卡ٟs#>bWny9nuY,rihWc]US>PC:OkqDp.61tm *!%eݴڿER6A]f$.u0A=ʍ_oE>qP#k1CCt\SP ta'aʭly &qB_T T9W?};jmbY g$X,R@)=GK6;SيnPv|jJPބoJ[S uA uE$Nǧ(ʸZzlAOVBMwpsVXpi=Rc?sSx_m'{&$29PM/C2r$I%eAJ~&L4mΞk8 jYT pOP\r۹8^p@/J#8t s^b+Yb4c? o4;~^kzʠX 5E!j si[R:b8d88V'!0$g{cC>J /1t^P-#^ ͱ%#BsLG.r OI^yR^ͱI"E<1QMn^OPe}t]jEYǢ"jnrز d6 l=}6ۻ=C]kZ(ޗ:oWIϪ\]iW.kõ$q fÆgasG(-t3cb~wwjxF!e=A` E:"cN@=Q[僧$/d>7$F \2xiƖ3xG뱺`љ0E$k"zZ"†!d=񆍣K?PE$v4TjNZfΜ40bh-*"C1u &&`OO]{:%uE(`&o66ds ~' SvJny%̖/M5K$!9*?2ldj٨׸4i9!Qjmά+"AɲQp_3I b5c=G{b9TrmngnBUaNWbϢecai;3#|ڡaܥe Xv-*g0vOnmuA^m.~ٞX zMT~yPdjjMBiƌ(~z/Ѧ)]=+I|.tճ/WISN+ \)7i?]3K+( maOrtS)H;`R*j!24gv6ش.!)Y xCbbM%=hѹuM ;'|\-n0g'iOq>3<4\A]pl4MҜ7S~Ħ} ZO |4td-O".2t$oIz'< =>'%!=y4웼z%-ad7^G$o Wʞ6n/(|aN9XL`)ciՐ$}2Gʅ4/ͳ$/\Jl'\gDyCdsVsEq%[t___da^$XSDP!_2C3 8/Vizw"%DŽ(R˾ s]{Sƌ8g4}=iL ́P L~L䱕hYzQ-xfySŒ 9dD_RS$ ^ A$biͱVf&'$Msܾ ꌲfS@|n# V78@>ǞRQ9]@'ϠNAܑ!,%'nꢅ ^V:0 Vrn~(P]E[W#3 3~|!MN^M9Na@`6ݘ@#?ѧ)'/RI,5hjx˜= ?ighj'S[X:]_YόةIikwԌTcʻuc#K^3]Y 38420''`ytPc\f~sp̙hSSc Q&\|yz-1iFꩲ$%z8¤+ IF!>f{|w~_tT%= ϒh0*k_!CuvAXP1JpiAN _ԥm[G>q4D&hUNG@jrT!]îO2݅Yh :92L}QE v4nr_i|]y FxI'肳 ֬3|- :=]ΩJճ)+tta-$[N(yGZAArJhEPhCHqQf,%s~^S|O%źe˨]|5P cVo~߰iigVzo^NS[Ts`nr 4 %o=8nU&C2˂ȉf=Ẅ́a@ [x3"6$ȥ*z;o1h_ H5u$`1Nbum,˸[ZnNeS짱|}"X˹nKЪB|߬i֭\Y 7P=9Yւp.&Y)7iyXYvϪe1B1/:9,w-SMՓL=Rzwv ῐ/ Ole~q8cF&32r` e5?{YS? G6s9:Iܿh#F=Kp=evw6פJ4Xėܴ>Žh겐ËqeЇBcK25D]My/3s_ /%dvbĖo uyz y;ҹIr/JXT)Ũ)R>I >2L\% a6XP0 ̋ZZ ~9Z+kA>N6dp OtNYV7h15G[Neqi|.Fý8&2nKӢ֏QkPT>E!&v%Ӵ[gD<ZshZaKwg4F8Eɑ~L5Μ0@ 27*#Z#"мЂu$e.kv#^ }-~ӈ0GYL3 dnV語oO:Srs$Ă7A`uͤ7j/5^2At;I}_6)i(/5°o_sB['an+=ą+2['>iu@ q?GyV㋦*w%sP52Qέ +!7==R{Ö917CSRc[8Ry}rVns#S8 fsDmߒulM=8]bF>%9\+?;wMj!R^!5E<M.+K@օWӨ9I86a! +bR~n96hu2 XDֶؒUUF)XKVh.^螟`]c;1RhVrՈ6&9΃se+N51Q`zM0ry{R+OT&j[ N0V ci TF};75; vH :@W oц{g3Yr-q,LD):Itfрw8.'Jj/v VܺY {}3oq5:Ex kA?APq f*lFPLXQ? t6ϒR3\澱驘b4e9:⽖ŔAL$<nstP̠_c|B-³6q!k 5)7x:畕A=HRaoj2X!ҿXPAE2{@h ca2s,׀!6,f_^jh!&C;A-=Uwidρd^בo洓}6p̓CEbʕR+Wøj!4%x/0C){77r4zXMɍs#6VZ٧4AtI%y? ^wB=gw,fS( rsJ\h_ӣ˃6qv|Z8#r*xՈe"Ԙca}Hi bKZ5z4&n+\d$EUb8CBH+Kkк( 0D&0x7xp]`X2XZqTmJͪJ>o<yq/t[(ÚXyv×Kߣm̺W`Ϋe(<^$o٬ bXOۤhY/.)ޅ|ND- 5j)\#1r9@}{,h>Wr6I#顀'ƢλpGi8;!+$-t[{`}2}Z1qz=nQS8M @RaӬoө};xm+v0̄~g~"$6Dlmg() +.BOZQuY$V*Xo+ԥ,{L'd63ewժWϡHט|Ea9sRo+2ʂD}Q_(ÀyX/2pfכmyq⣡iF JH}frqOoQ]O,c)s P)ϚwaVr\(hi 11s1*<{k)^U(E*eo_쪱qyxGIBޢCj-9=㼢By@4vmTϑ9J+u ^AKXiNȿLERI\1ӆ~[tI[5]M!VJp_stŋh\6l'Ncrw5@ r$ !(QSvȌjnÌw*JdDYAn*l&E(+׎^qj2َT=a,V3'%)x/_=# JzX=Rٰ9!KzpX^ |έ)Vu_=Vʈtk]]sU;q43gޡŜG*lMTDY@Xji`=dZJ~f?&~Z}ؠW졔3F@ bfeI D'[5ry]D ];̙ XD)nYeR>L. ~!jc 8R4*]]#EH l2%jARɅ5|4" c! L/b3Q7 :nH3ZY^q]ax`zV K ~u!Scy #% s9zVժ;t*;&Á\R U]ka055`NDOᾉ? sѼe q ϣ\ ˫hG5v>m vݍ;Ycxsg9mΎJbq; u%'r㒇}CcLf,i\Ic+<8gm)&Ë?k~j[XmFk$r!NwVHgDkU̵רvu]Tc@!1s}ʓzqݟʐܤ>Y?G':dcݳ] <e`(۹QMiE"k`)Ex{)Lixk")A?,R6 PW2ޞ \ '`@iGт{8Fj/*eOVb GL~e},.2ĉ 柖/ `7UU ?qn]o>GԶF1u`wR`!%St g_Tޓ^1!eC;Rԅ I%~szF/kſ`Eczg 3ttd;1RL)uWᇞB$J!uщpۃ[ asm H6,(6K~8Y Zo: U%0d`ƽPosXXtpQ-RYG1) \dN+) X?Y'ݯI.;WD>a{Q>#)Q[. X&%8kfIcd ^uq_2=[+-BBߵdvZ8e)޿׹:"eIQ2v#.,%Dv\!& 183[n]05[dCJ޼.T>Vy~llzv$Aq7+11w 34'cm*q>͹jgDž}P]?Mc)c[j I k7&'e*X&*,hUaP/}3 lM{w^4:}zxk#]{,i\* GT:Is E`-R!lX5[Vv 84t,ϛrK#\sDD!v_DΕ|ѕ}4L#fqcB{p 1Z׊~sL8Z|εLWUa=uflaQ!-+LɨةRĻCqy {rG1:h| )hYAk3xjl~{R@;i) 7a:n:ٌUYܷm6h1E6c˖7C1} z;˃{R_,~ٯTlS[M03{!L/g\a,?%&mjU0VkP%!g['JcO)I+ ;E׌vU Ac;Ld?|-%N *J7JPlVy':4{klҧ%sA:|, 0>ĝ[>6TDX(n:z=TNB+MC~_zN L3! է 3sYjƸV<6+V85¦Z{WͮNK~U<`+rԔ3lבǞmmE4 ګRxW'Fs#/A|_<[A>$vhvbֵ 歿^H֙j8EOqxNM 0JͧMi9 k(c(Jb }YĮ͟l}74ВH(H G*>24w9*m0pZV= =$2FxH虚W= !-ݨ1* TSץŸVLhݙ܄k!Oч?m eN9BbN#8 {z?lRE_s ;Ed9νIܭq/Cxf̶1WuyVh,is/<Y@G,$ +cH> @;3w^0稸on[XhCA܀{|~{{00` dfQ{6߮i,JڄSNM huS>]MG_+?4~-oԧ+݇}4 wfv̴Ѷ1Pjt$]0rEQR?C$a<WfH_=TOyX ,%J`V.@͖r+){|mX!ayLGOu\U` @^$@*D[C@E6n7p pC|EOQeD$ Ia?̆Q=* HdaK0ܧGmI8q3`n| ,8W,W>Sncn!竒 'Ct(l@@.V#X& ;kQugv\jiL3B/MP_wTkWw_V MB\}j@n[rc.$|%`ԫ}tmo5ޓNj~ǁ%[!n*욟#./D|#@</_ M^@B:`C*B 9 Jy|imc30H1z@MI<Ɗ'Ë)v?V*SZ;LM*qZ}%ع{ y/\nscWy]'R#F;/۳|ILӉ'.UAYZ)1R,~=pqT C}%$IjTu>bK,c_ek݌׍_qL9nrVĂ#gq t֣.?4R_{8@|JSG&k?%}GZܘ*CfX~)j!grVxe=p"?.FPt {Eszhe?k\?uⷓhV䔂sx{׻~}ƞkȟ17yvϓ!5/c bSAnƹ\* N㷓@[Hz3Hx ܭ^%ׂVu(#\L6QCihunZ'ĐQ'-uD \=O?eև7xg!םpd s^Q_QgEDj47ْ PP?7Zab8_nv?#$Ej]D-b/(U5. ҩة&xds&]9D z!iηx\$f(V0D #`W!d5݁1Lg^,3H)o0Ih/K[`-SSTr4=u1[\Y㽼\N; $FV/Yd`Fb/O16=;]v\0Ы:u\"EWc)갵Fm_#G^ITƫrsDe:ފUzvh ؇2)E̥`aOD[_Aw)P}dǠ`YRw4hLR#6E;p^Y ^E+ٺWG J̲q!у C/ͱm:4vNGܻ[AT;\\"4DKX y 5NcqxlarmYJ޿*f &~vO4b /&ӊNUg97@ v$ /VauQ(V&7pl?& D\oIT/O8$w]Yw-WS`7\1Ua0CH 4 -ʮ&G Xgabj]EQE<sneӗҷ\ĒjƋ˘P uzּ>r͘'=&k=NzӖ4T7A9K*Jʆ&}N^!C9)L5S nA&Cjt_[/\@c0ļ+*퟿݋KyD0Fyep̭k4HUYBςUB5 Թd*4ó"׋ C=ۃ3|jiz=q'?ozM[r0Ik2pԛݯH}%.FEg- c_ {s'+˴lIs]$G*WP^FQnw"ͦ @GvfP6%$6+xqG^ͳ  Ƴc+ -7 qKeBph_ڐ:i6C ' da" _֥q ba|5L,$ oK%_|Wk/;&=ha4p76k 驶D4% դ-BB\0(USܻ3g{< K4U19)D532paSr8'>P9&zIs|A-EU/޿@R@P'Gl1Ր5EgDϿCj!XzLAG5pl\ByӐw11bQuL#D> ySj0 rLk%_1TQ$sZq.GC|>u(6OO%<H"9GsAxbR81V)ި]45?gާhur{$P=-sq#+4,>P `@mӟPYD PQ ͒stDZ՜\f7G35˧UC aiZY#=g`J`!{;h#c8ЅּP.\ZiQQS^!Q"antrW=]bTgB|?j!1!h\勆MhDD֑3K2C4?'G=?.SI;=oEu܏4CjٴPg{8p] fi_%m\ל>i) ACqt2ytaѾd$NE7ѿKJ\cOSm~,zUٲo&&rݩ rނ;^>ēYW&'ȁVKݹ=ـbL[xC?& ~D;*6S/`/xBm?1WbIaQSY-a޸S!7 6?q3]0g]$isq=b'"gbH!M8Xh"Iq<{ctP~𳂰ԈUIL28GE`m y~跾`.ʇ >6[Υ=xe|cAaN!~Q'iEJM $>YTc9XT)k.OW4)b>KPYEbhDwyf 2''["Qf@W֊muf^lySӽ3y1 *Q&aN/ewj76V\kf3F^"wٓLM}U5]C8}[M=X|cj8ڇٛ~:A%Ge3|W+r|)z~V.$(A0lBvM6?Nӏs m3}jaidg@C~/&e9hVgSD159ڕh_,awF˜pƨЌ{VTbk|~gXwNeǮk.=ҿЄ xEу+jh[OfLxi9(R]E#ġ1$O4ّ? [`:v`_(xGFP+" ɰ=5Ux\s?-z!9;G7/6>cAr-w 3XSջr5>Z@+@yG٢7ڸz`pu $o܃ ȏЉgjll{zSxdD蓕E{-"A^=RqO5#՛~`ddZ|=ƮL۷9D/]=pǛ,qoiaܶ~r`G"_E$VߐO?ZUr,ϑWHw%KQ!P*,TRĄ-P٘*xϼ_NWˮnppvc7&_6,Vz1 <cKC;"8* vs} #mtSLLSkd >i(]U .Z]lB"'5B`cCk,m'z9IpǓ!@(lqq(6`}/:oIfblx餛$g(q^¥n8}l̴VvX U!X -; V1GbyY+TbhwS%]HT+~} r2;3YNho(#ϩTʲ/_;ּa`V`be|Q~C[e`8WU2(t:?]> r9|8.Dpy˝c p4S^=Bba;mxSf/ck;+¨KfN%5mJraIBDY2h 1%94zZXaH=5XL]pX(ͽq ,pg|~?i,aD*oc@vH95ۿ%{"tˍ{B:Gl]qzTt c8ϋV*?6KiMJ Nҳ xqj d)}Ƅt|Jo>Zsl PZ4G=݁UV~טb(\Q/"ٞT%%b4 XLNqz@xKḾ+9n [Mm`UN.ܜ}P{?Q`$| Rsv87Ҩaf35#~^c?(M/ 45SY1Jc6av:Ol'-Hrǟ>~>K2MjUe0[3$ovi௥$^B$:t QO~|;JPYehS|?>4ڥ粸Y7 r3+2.NN|k73f0]vv0334J&;0j`ÁG*ïRum4FR6fB+y!&sdd[ҋm]%r獶 IokENTUQ<Jz!K RVR;p57}xe-[-Up)J߉'wnSP%;uG7sO Cwdl u>;𴱝WU+F--6MK۞T`I@罉ᶪg0oj`J7ts-~+x$w߅ppՁm0Q~Oa$߇Ӏu(9pltʻ(R!BRMs~/P1Mͼf %d\g-TԀ{x+νs-Xr||Gv8f9<0aWgŷ a1GAEͲl^.ق]4׫=߆کW1?[QQ}Md9aкasi@?S(pMa7pHiaL0u_{(;|4韣Mh' 7oHiOʜ;ܕPޮ;_yU.[2?905=lV"/ ~ NJ0 $K#Vg~e+$f"9$,8o18+_dND-Ld\w\m(<3 Q n$URԛ!&\mUEO5&_`jt]2֋ o'c*\9 'ÉO֟L6eBqaNQݖl&ͥ)ќF-ij;x̗4;H K$rhld\W &0+.U}K|Y:EvUá|t6PZ"j4&h~ȀtrG%N%ї&Np ![|n$HBlA$*T \(֞Zi^7 sйSl_tukğ7PL,z{H7j۩bmn&#DϖX͏lQ8Lu:ej\F\*[ Zͧ?mہ)y]=Sba9 V&6NlUԸ=ɨ~u~3PVRC! YadL &I)ƪ-LL'dgZ+5{Ї 녋gNbZVY60( $ێb 2\6BոRiu1Kb 0%jSC;G%b8ǒAq ^ NM|:C'B yO,si[d/s]2*|yjG onj%jyF{<+KmJp(Q-7!Q6 ZD4ݫ6(H"0Uf劳H\=;xKrt,tSw(&g/"g|`msQ`;zjv]YM%GC+QneH\fSVמ2/z2?yo&.6VSl\, ՊŷU|⒊-#9<ĭNJxsRasV3;!ʯ{5i[qE*87/H5D}1gq<^ ,D_~>^ _Vd'c!i{| "P(,_/Lyx2$OejNm~J8@֮wp$~%Ml2FՇ] 9jo~Mrַf:ž1}>G@)G_[ !XP^H'GLyzLL}f˯<|͛OLhM#£=2 za?;WBI3 WT.eG̀}!~jPh+lk5ؘU~t8W>[j(Ƿh@/kxsS?9 \sJ'<*(X}/n"0i(מ &>p!~8:eo(g[/[2 ("ڊEhH]wD3v{yu_'ŏ޼g{D#v$ƟslZ?3O4 P %9@ ¥q*3nsGxt G\JI6dP qRC2" &UpUuIOsf4]40Nj24F(N/+ʮ.=&\~Em|h,$M†!ۛr- Rb`ԏbD3a&9^x]&v=5?&~xVap',:KA\C*֎%0koe3dc 'b^hdJO0$6ʉ_(|CFvs'pV8Ż$JmbovTqWd!bHNO _]lE_-\"]vd撕uU&ٸRWXѤN=v*BhaAWϗ2w5G`fO#,q9D$rP ~x rޙ?:9–s:Lo|BL^e:!k>->x~<$;Mt$ӶɥI?RXA)yE[{UhGVj HhB@6|&MHx̵mNbñLuuз (>hR+=)Xqo6W%dWfF28WJ16=iA~țkA oµ2}mSle N"ٖP+"#ppA5;!.&cu¸;S?ѮN<[li\P$J%7-gV%tY-ZI]bTE_NS@5) a{'f ጟ0z43XT Xq5aZR\o;MDo1_8NidѣQ{R%VɊ &_aKGGd[lMPWQ ۣ?w }omi+GQ+YŁ)$xpEAMtNyŕjuABY0b1R>p4Oً. IYvWZ Bjvϕ;b5 x_PNywX+o]d[T42@;wkaԵ ZO~ z㵟Sœ eNvŔ ![Vd !MbLRͪSk}A;SH7|f-,=Pagys?*gvC{+p\9 ~F֛r)+3k Z7=G"~-P#hGХ(q6>rxe\0;!8gIFY8@"դ'c**YL}E&;Lct\uoAiP=I8iH:F+ytTzu=`#=gJihR6!s05M}׬yĴ7ZE\Yz~h3ߕa#d7uT h4gK5@j]8O[^N7744Ɖe (Lb hΥ㱃! {#C/Mea{ڲVXg'9 'Roag+7T-a˃R\7P^n&6RS5$LE.>U;z#ӎ"9I0DZ?60/[i,qfR:nn\c^.T8`j SPn,.d:lTB F^t.G 0Te(-L?ۦ^#0֬3dsn'rشN}qf-xkUټ̶OMJF4FMq4~bB30jH옘Va̯壃ζ6vP a{ѧC߻{Jū OK#hoTJhm))4@q=(i%%m#nԁmx|mi#hԞ4xy>yq]5_rc2jR;Ϲ$*472RCNׯ5Wtvbr^Vd);`@18~IGhQTh k!lե}fxA A?еakGjԷ|<3U}+[wbτ`7 ͛]1*xLR%Oug|ziT 6bj`δZˌ l-?T7dy~>8oԚ?a E0g)bi)hN(ϢНg+ 퀟T6vN$3jZFcvho* yWxvf@MO;]6գ -A'RsS?kW|Ie1JzİQo!Zt9Qb f!ɕ7߆ͽ꫎RYp3D֌j KEԄSc x^zL{ mȽrPNAN?C[ACQv$b,Y7qbkE$آg3 b*JCiy[wx6yv`}0 6hv֪fOMq w[&݂'B7JV Hiե" 5[rȝ;SE)"7o8$q:yzΕ.e[$[F,]X@gFż ySEjpp?O'x7 +w4®G8cثثF+YUq|.*']g 0\!~G~k/`w{q37ݖrm6cѫkPvof. WeūYҦl 'ق ma >ʆ)V^ #R$.BykJ3e"i_:x)0qZl|iąqa.e Fu5~ކ#*LJ@k?S5UJkxՌ7NYƀ݉By'tgUN)|Yc@EJдB1Ezh127,7 S0D2P7ȓe\13,%%)jcQ;NDA/D,x\Nnӽtg$O;+q̜-L Qv*qؼY<7җƁܺy KKZ@kQ0i9jl*{r'x,wnJ Xd|=O$qJ"%i`)=:I26V ЯL^Ѧd%١JNk4D;P:@OAG7xSo-)5xڇoR܇Y`%Nz ۄӀuP֔N F0baI ޳U{޸΃BBK=nPNH8y;@9O߸ϸWC17YrZ5~MYj< {w`DZdۿ٥BcKi@={-@aRʩU`a_QE657}E5I!/?i/ōrh\9ysq% ozgA2kff!M`#d 6{NuqgSIp2z4S*Z8jlREz3VԜ1ιeG}QXHWIۻ9ui ($3t&}t}D7rCAY@ևFcq7[a5 } Aosߕ VHVm"GA 8jz24z-nbTگ'_5QOCBI3oMQpt.nI7,9cPQnfrс9A1)~ }*m#]eA7VTSRZY}C} 6b_. #FP 1^#*Z:ӕܿL,o(9V󺯟q,PtDEk:b+o9;OP>Y(0>HW玃p{YXsP3(U^dpoQd{LSPMHQBwѠf"#Dv@Fgv34kH׏*a,kW-$4Nm1l<׈=߹!v V`& o+qmgr˚Y>qdl&b41,QJe=B$ r<":RWbJ{ڰ[dj]%ir_v ;XfU t|_)H2\4}}{9BU~gfZEjwTҋiSĶ0_rpVK %XEAOOhŚA:o${,uH_ {2v t}V^tgƉ]17 S%adWųdѴ40"}xeJInR>jA3Z3xOkÃ'>3g0<-[?KaNnIIeү4c(1z z6btf4k"IF lӰN/yPz5T|Q5-@Pi@GjC.%緞l?-d@s-K<[4 WhpPG fXԈsI"yjv= ټ N,_=beLRk ,3s6qw N K^%^] ?HH]n2Waxv l5V2GcX9U@:Ԩޑ0d Y޹GkDJ6^Xg,%~V(M\W?FKC}ap3zJYц1Eo+4JAO678!z˜Ji; 0 x4inT:H4 -H Ci+%` ȏm5?6i؋1r}=zE Ym-PTd~=6 fZaN:U7'Toٛh&q,ӷ%!b-[+@ˇZ@ͮ Cډ/>pv~"2r-Wm7F`:aՀ ?l)tjk ə*,/kT%3ppL @[=e%(7*Vڣ8A9pT828*|oj|ye'=1NP93 tא `|]+:}ccJ"%ȉQ/Crfq2րhpL/B;%4Z۫;҈ㅶ{#$wyiCFkB=Fς+y%r}XYǘo]%Ho>J@ -0'):x\wQ#ydzDLcT:]@D(vEbjebbr}1 P.juB6ɮh(NyEvT1pF#*2X㢏 +#cQ7tcQs!!['7izJVN7OdGrJUϯـ.VЅWfi 'ixEese_~*2}Ͱ:cp9?b5K8 w kPvn2_pݶ7DbF ,B=zEհNL-g!;ׂ8^&N]yP%~cեQ"~1$<7~9X2N.OUT9^ 4J̔N%yhewjJVb'f [F%봍V<3:e mhb eѻLۮ|Z>ڛZ*\~^o51xHְ(^>rr4I{Q&%s~ZNyk,(dp#HjMLB~rʞj/*Y}\s0#XlL҂*` <#f-'5)$lvjbB#Vc[s|e.lYBɫeFgΪR ^ClSgC&ktS0Өx @)䷏2OAb}ǒn<'p QFrJ]#Rn%l|lo1nUN/2ōok"SoBQ&-[te_NfA[.kg7%vuCIQ6}t=, vh5+3KU`~grB:Tб*ݯ2!-g +$b~C-yZEOvuԪ9r\R**eOnH{#a'y~b\i$ۍ !.\s5C.W&c7eK 2d&4wݶ}٘2/5Š¢VQ: Sw@gm ˴ nyBw)"-tQK5(vIGK탶⫥ϥ~4P67 D0 w z;nz8+Jp8rBy'e)kX:vFO%ݚ9QzEDK6jAx̨ %YgEMg anl86/B?QrF/ڟa0hdEq\\x#$ɛf؝'u 5ܓOhLrfOI>- }xnz8BqS6%}'uy CVPń>1tV#%qwٹ1zC)Mor_mN`n!i:U?G[ǣ˧y#!. IOLPrʬkqIXXk/_m3HmBokD!qd_N Cgj@-i_JVFT67&$Ė K KOU!w/б)J:+1?cb&RG$sO@1­vzjmh'vӿF5rCr6"&׎LЉBqi΄QjA^pW_ҿEge?v}?Z_~B"z9m`> M8 sUe+k#b~5'I0^ {U}l{b3ȋNdI0qՎ zX+'։F삆Qz9)곔B*/9 ~rvcMy3,hW {\~e{1A- C{@+J1cla֩&'5Cc;b݁2BgXQt,5%j6Th}>5MjdZa/X(4uX'. ,W.OYNu-ohK~~.rX5MDA>X[@J$3"tdn*4e~QNE)`qKZꝖ{:^*Nj$zZnga৑+s83WYBW%"'fX!C0ēf{vGPĮ|6Mx͌&8_aKxŌ~ |mPjJ-`BA´.h*Kɴ?dCL]'p![w=FSvч~TFKscq 5o$fӴB=l|o=Mul?PBr$}C7'b >7g;z_ x>Yv|+@ p;!X4n<(T=UGw5\ 拋a2_ZcQs fw99Alң&T/Á#^ߪ_q3."xr[zdiwTL}4 Q%YOYr8J%}Dۇ7LZ/!@,&j~"Lf`43&m-߇1gd+xNGoM6\?܅Ez@j8^Lԃc4 1+q3 w؟a.HR?/Z%@Fyr%X `&}Ia- NfY'tU m`#a>de?myl. JJ*`o*gm|yX w.$kfQeNKE=׋_IX++!\~q:xRVy ^OgW]J &DfrF^dDNѰ uC6ҙiӇIz|Mo%0I\\ktsa|Lv6w"<Ԩ<[ FNÂtRPNY!4tXA$@eߘ?`@:x& Y \V8 &[ d'rƍ<>1~2\Xٶ2L;= gSm_0ΦmZn؋M\|ɨϨrQ t[/) [MqRd]z9) y>z4YZ? ϸ"jfGD R3 bbx%"w?ǁyc$LS]o:`6%;^Ǝ} パ^M3*1SZxCf ??Ƕϻ])cՐPa@+K_~6 _5w,(EQDE%rAH@qy9<#IĺIX3|Ƙ@W ^ɰCZgV1A~rz3_ MgٜkΩ4IWAF_X VpF)zt\G\՝ފF[Hd"$*bhkyg:oKM^E'_%91;Aۃ$ z0éAF̴Rjp]Z++J\aj@GyL\O5v_^叛f'oKkHP%Dĭᆺ*16rRq'M|^]YviQtLxFk32;Bb01yc WCbmõ¬ Ő/̧7esʢ"-"Me(jb J ,!Ce 0}a,Jex1 ".َQC%dBrZ1:$. _?V"P/ߨ]x"Qn\LZwV[列 q8A Nх^ϤI:DX6sbniE*.HO[!%XfQ0y)\ۨHaI8 `ҭdF/oy=ULG6I|VCy jUc)}z,_> e[Z8d˲6}y.d3'33(ΦaC-[Uks噄`Y9h$-hIԼheq`L"OtR )Q4M.hN|&+io@Oy,7iT2~ ':2apBAvAهJʛRdVS;O;Ь6EF֯T uCjvEb;^+{ZB="*AX 21 F)0yv'K}!w[u I`\Կ,PM/a&oS&, 부s1ԍt-Mm/ G68o= LLV#6 lFȉ=4f`SgAȄ{4L ei8u-iizo~$a^RԞm[$݁^FY;BCy S\4A4axu' |T"  ǔKuI80^}Q7n%K/`TZ#Y~>! k/?zk[:n114J45N#j']~:ҟ9U(-c|dƾ2m$ɖH{;ȴpf@qʙ~8t[ mǰh`"LP^G1nO7WSa,Ig:M"XKv|#pGN=< &v5k Tꉅ(%^vI$)wH]V2iRYzv2`p'ͰՌ.Y^*"(|s.Ao;z9ȵZz㦻,j^YӉX̻=BZm0&ZƘ Q8R `Lw;֩he}ߖxk;uhj%s~@m\f}*X܁0NGumb:tgWI/E wu A&Qe< `ݨ%#ȑoҤPfB(U[Ҁ.D }N 9x Y yL zۄPM,=Mo\S UGB]6+ai.<ԯwn$%5X+U0F~.,&̰Rr]WZt) I&b2%TGtŒƎ6i*h 7eW\l|F7og *V(#t3dM/R@q!GctTEL7Q.(اK|iFVHZup\`+} ɇYo}WzB v٬ f)̳7 ޯ|4)oXHEG`RgyYɫ3b _W 9HGG׃8IWoMg[ o&i,sU'Jn;3_ ~گP dWҵLL @:!ŰrɢtcBtH%TN xY!me=\FdTGxxtΦKCbDۿ9CHیnKw38c@%hr~/cmB;b%>PqP3]ɚR#^kL5RuC/;gdٌ6ab"D8X7wd 0_0LKәIԄJQCbT1<'XcVHs U.?6CW%S7@A#9c+&mGI QJBJ2Ͷn#'w4?8XK Ohˉ4@x&]pZoPm׸,d(JreM1gA3ͣR `1-s mj=9l>m[ @~\jRl-Q="nQ,5 O`{"&w <ؿ8YIdES߫:Ai>Lo78Rz24-6[ڦ:klEw!=Lэp+dn C\(WJ 0T Sfôl\J_X~cc^hrgUBpEE1DY=5Pq2bs0Fn/J+#jJZ8NgD4CҏU*s mkEBp%YT\2-Ӟ0krq]/=AƱ![:`Syzu[ %SQ"[Wv?ؑ՛] }9(5әzͶL0\;`KÃKՔ)b .PQq'Wruf|o2Z˭Ljzt7Cֆe:r}k,erlPV5Rqfz QmBfXr͐E7T\z:M&-}UP)ɧwo%'i=hkN yHpP-.ᒡ!V-Lv`Ug{-Y.[h(,ՠl^N8 lv|+] gZU +"2+gc g@#PnZ49yK[R>~k{Lj[ `{4Wx8<i}XߠnfI!j{$d,Wt!Pⵝ#[Ә@<`Ҡ.>?0?7O0Ds%rm 'qyM'ftȽe-BJ"b};z(?FhLec2Q%E:,cbAN}gvPj-T 8 ҐqgKYUZ<|f 4Zi`NNP2Fj:+=E%Ƥ| ߶sB5o0٣pBU*o$F IǴ 6D z^*~hf#(&4K75A)T-MA9xPlpiC=qJ;W .{RceL:GkcXxEIڐzêJ$܁Tftr >a xhs^p+T2^%AXZ\.OZqU5t :Y˃fڵj,`c2]2=lGg<_^NN0/#FzA`[,}q,v.ι Q bK3{VZAV<_7{xޒ?0ghxaaq?D'UYO<9sagHqW]0FB+BN݋LRuF:TIRZrv_I(? 7F?ebi51a81l;NM=8x8v)J4x C kVg|2C*SY5> SP[Ƶ @Y}N qU6" s8c^Y2jOiD˟4[I]F>BiQbYKxuj.Gֲí';kAdicUS\E}Uv3j:eR|?'ᎎLHږ=>"74nGZlhbSgv&w:Ѩu~E+2#fY*#~)x:ҽ:jT9AX_v7M^S;nRxJ-J&SafD r^T-H^w2*{j?P"QҼ®7FZ&%<-0NC8H8 ̐LRQ$=zD^'?K-,%#,|8__y@]xl~l"[)b㕔|bSPѰܒq2TgSmu-|4hWZ."OKb1@swv>]3*HL}(DBT.L)mm ӭm`|̞ )L+{h!y1x#$|Fĵ(W8b֩Ck* =M E >V(J jYRS6氊`Sd lirdrm&RD)i䞟#:F? @ӑqXZ: }`FXZGw杭ii3/ܙclX&rJ]YySӇllr^ J4KtM!u@Ll;ysT#DCjz# LB@Vּ3u>f<.Uw_Vyh賙UڝT2v3vO] +vqTWzq&JV%d7Nl 109Xwe3=lan|eFhm!c<_۵ gk3y Ķnb}.* E:gՄa9{Vcd`/z4j![ PP V #(vbE[Glb]kFiǍ6-2B;XS̘ӡxmp/)qCV97X?~A2y]]B߆Z#u%:]gKlRJubU3D"Kw7)xr>{qϱ?39ڈVI|'nV[1!1UUGI>eKR GAaT$s]6JՎOJWɚ=ߦq 7ք|OFx 0q,fL꒐)nDa)A~hpUVT0j`U ţ'}%_Ęqc%0ibݟ;_-Mt,)?#/HMlujG}3)og '֮ vSb3B5ٟF|&c<`ޡX-gemoVKzq݉h%sY=;m6bBʛ,G9IGn%a!tKu<:\ nTVѯHQp<`'ǽVxM=!JoGe0)~ " o*g$k o\ӯI"ɲ0~芠:43Cf50\# Ma < ČF'GjTG(P,2j'+s.G>꾭Âe" q® F_(.(*{@t5ѻFjJG+,vnBG`/' ]Y H0P pKjX"I*"@23LÜ3m㓄xm&_nNpRxaO2W!Fdٚ7VUR Y`=D#[u_ỷSnhrԩ3ͥ}E{_\'x*k8e]2.j)v$.3|X Pr }=Aܵynk[e.75 V?obw[zAϋ;or.H !b+ke]L nZXFdXݔK0JHt -a>Pnhށ2oT\+u͚lN9H4iV"93iv)X9O?;4zx"'&K˼jSB֏&Xc iLbU5*r,d:2m)ꗮ[3O9;9'*ʇ->w+/l2ASmx?WqMtVs(0 :cݜ yU<"(4J\t`a1}3v${Tn}CWVʹz*Bdn~/\X7g#EfaDoKJ/F.Gɺ]^ε8io>I'lśgK{(tPΕ5n>*4fXUZ-CKŢ5iB aILL ",~_KZ{S! r cSwr#V(b[bpw!qѝJƬH*5 Z &h&80ӎ]zF.  ORq>y#ex zlKNB^6TBVcxЃ8`.İjryf 16vd3_63 n(oc:mf,W$~Όmma+).~YBbaHӊ<3.t7Tdi@槐LBUY9b$kBb)[M]PuBA}ÅjC J%WCx( M{RLHq@5>[י}ph]!}Rse?d @1.rR"#^ct#SThx]\0rP8w`mR_MRDtQ0n#<] lYiŹڈ䶤dukJVkr"$:m&kv^?*8r]E޺cs7Wv%/8+Fg3`WM*`GR# 81WQ;G /Ͽ/BuBNvn(Ts %+@ gCyWQEpY oK;p,aJl\ۄyd Q5t Εx2[ IN,y8ҭד7\CӛT 5>}U0{b:AYI~JhPt &:Y O[`|6-@|YШ٢Ve?ԙqKCqhj!ʷF wGgpi)Y\iΉ { ?q^PO Pj荌_ofG6RG{WfTȹ$=ǷX68"7r&PfpDD}CНk6R2]=!q PĒ@c^Hk _JɏUJ4%U|< :8Xiqw#HV(s-f  1Nj't>ӑa>ʈ UPF6R& DeB9f(L/Q<5 Beb.e|PfYȧ.e#˾J7K?Tzf F4Z#QosM؈-fpse+L`z ͎3 f\;PD`״ƃ uh u R5l2̱o _M W0G&TG1svN OF1HׇJߊy p_o:c7N}O}/>=KeP'qksO?45LxЭ,!J %R@}i]c=pC{SCNX>£#֟Svm&$11I,9Ɋ4'M [-1mu?,@ΌLGX䀐#Id+^+AI ":Ջ.4\'8E/ۀTdiwЂ.,hǚKlT|ubKB GM17Sr\hփCj? >{F9]®lwgofv|w AW%Mdd߈9 QQ ( 7 A-<%ǣU~NBxeE[\' 4)=X{2\ƿho~0W|(oorI+nؙ5Mu8d ?l^Ga bţH`ʠ,^}pXJ Ӗ8uUi;WG#Ѧ/K@ ODp.̖-9&}5|1, (N *HkVvfU\?+u n+/Waws2խԗtey~С$ߙEF%a7egP0 Xw'X'zl):bN ,>n盶@Ŧkۤ[@d>VL_t N& =za̟h5uQ1p2ls웫Q,hF5|pJbaX/ЄCa7 kY)ۍFUPW*ҲFlOuǖ՝m}C$kA?ɎӺ3EToMvہthFG2i}1loPjoȫ/Sim,q2:Q|j}} ZhK3j E?zbA O+DA?>`|5Ai%#ƢBhDhʱv⳾vOR,҃/6oe*F/ܚ X/[$hYe-"%jrt? ޘM2BG14mi{ k5 ;˱ykϙ=*\ͮ' %R~'48aY~~fCͥ3~ȣҸpH1Q7pD/ T1AQg2$Y\m㤢'p )TCAXsF ,4 x˪,3%5v2^4EMHW٩VI$ymUQ >Ro- v'Yfy]: Z! ?4ei?$|M+'@U##m‘3W:@KF_sz61R_ZaM]v0]~N$pnfe{.Fro\U:~4 ʘY0@llHE0snDP? >M,{8 KիH恘4ϐm  o/y9д?Gy.md盛}'/*:a٧Uzy|M W_HYL;[&s0e"Zt'NQj1BP Ⱥ~fN,FGu[warvpcVer]q4` ,Ab4XJkeX J#$ AyS;6ע#@.;HFKb8Ujk4BiO`5cL息CrO]FrdwIߺYn>z px`S(R7$IAzOE>edabwvONʖc*R:R%4$32f5H8: O|01 'K-d"Ro@ņ@ Ac<(br5k$sjof 7ܿ0.zSYsT@+LxiAz[s+@W$CU wը2Qx^.@!##ntbئ>:v9{P'p+|񖮾)ΉSZb$W8<.wH'!ұ'b vQ)ea _m^ Gg_[rW8ʘ>i@I.n7O4#NW`Q"$K{1k']V;m4$^?3}^hdk<T&}3pO{8;UOjo-]BzJ<!Ӯrx!Co\Ft'4L> '{dЊ؝K _?,1HJD}+jVw ߛE(D#<2G'Gi _zkEa6-M"X(7 `JFOFXP}0fB/T灼dL |o)kQJ6n03vCvn5vsai@;X&0]H \VsIhNU.e4\b%+2 >K/ouTwÊ9Wqם4ӸRN^vsb8ō[uRӼywzySub/2 *Lof!U γ(B ,LZs^0؞ cYJL°+D_F{V:s#^wQrE@ƶ|-WEO#9FsJdjEk[3Ӥ(1x `ǯhC"$y(l_ ̈́ H#;Lؼߞ c'ħS43xo/L%>6!As@nyq]O{V4KݓΜOOpirK8k8.Tu-o۔e.|n+}0i2+SZ Tar9.L %8LVC 7t7djرm/vY?*+˳t[iAǍk끤wV`0VFtU b1,s{jOˢ^9s(BFM}T[/Ӆ3}ChOpj$O.Ʃ[M%Y\O"gCʊtꁯcMbA#"tD'lVJ-t{ak_ ]SXG6~A<b36cಕ h0)7{VʤiPE-#Q`<E $ttҊ7h)"Fg(mMqa XaO+9ga7D?_+y{}MD#o_:D2$4bR7cO]wf<0]u,P" %MZ[JO֙ydݷ @nO1탯DX.X*nh:>Sa!-/=׮jiNeh6[UHApP+74U)4`vGbt:_A0x̚gDS wrjȪ (A+c\8!mq<"T"*=-s C;HPbn]j%{L0F-Dm`lm@s| '%DK~O2RpuG2Xx_0sy#)YO"[bW\Y[^bPQh8Hy܍-ݿCI3'w`̎Fx}>׻Fbwa콦)jPeኔ]P)U=ʝ̀~#} ɥ\ ^1u׎nPJj>&^hU9{?= j#:ET7WLwaC_8ny;iGxFGi!ig+:[튾PÛ'RÎ G W}X]NGX۫2HFfnW YFɅ%ciVM 6 ܎iBQru}rn])EΉ G-Q'mk?TpW$i#f;O@ÆY{(nXSn;ndU: PxGNL4~;&>I%^oc0g+]67%yfgi8>M \R^ BZ2Cnu6BVS(G݈f} c~ 8餎*\z`{h)!+Cɨh `n"0ӛIuSn 6O1s#( atm zoy6F!tD=*F0]v*oZq!eL>8XbK2LAKٹ9c]UH^ɱ.f^;ϴ4L=Q_k QBvd2o#3QOqf@0!.q <&5BHX\ w,1 [YcPBH׀y 9bL֒a{Áɿ%Da9jxRTh#Mܱ|iBs =dPqN,NB@Xiwp֊L$TiQMHϢuWu X5C"crf8b}qsN(vLt*Ռ}ƫfK>}R &ϢN2(2D Xۛ,Pi:QD46JnzbMq+iw՟x+yHgйBC{mzmO>9ОptyT,%.m"Lf {V`}yCyPzR r/Ma%>)ʐP"Pj@˻#Q)/=Ah(ÓPMql p~l\ EW4kNeK'8*UQ^"pQ>&xAκJCވk1{_4BwCe!$p~DZiew&0ɈJ+5:v75t4~ f;.V; 5k qLF`Fx"Nnά&>(~[.U:vx +kx;J%9Q٨doP 3 i&4siT|w05Eh<1oE0 m#TO%C D[%1%;@gx|4-+4./(^kV K:r&k +̆ٸPT2:B8J]/qKrrݕFG̼PQ'RASو3GJ7r Qۜ]%zm-dveW`Gzgx'-F]}3sUwn>~ iD3؉@iwb*gJyNhi1~B*\E_2{תs,/KWr] TzJS ?0@+@ n3OI%)!kJ|}}*bDTmhE$ rRB4lLlX\G*I cc- *;j% {率۹RFb 04ؿT_$}D!ns!9ɍ }&l֨>~D`{ܒ&X!U8TB)}c.0Q.?iޒnmM9&>fqd@Hx*>H%-EArޡWp{}C5λ-ZpiM#|5CsL VLXjIѰNfoF|$\̳*55U!'7s%J):TE([o4++hF@J־:]ws$\'SxV;Eus|X2sʷ\h[@;} P-B"IA![!Q˰ŝ'J!7?4$';XbmT6NP/^!?UJט ~QzX\d nEGcY oLaG D6C-;kmViS,]iP?~h%X/Sؐ b ɍ3ߙҐhi< dBψ45I bMll/J]̫;BF M`:(>{5%lކo/#c~NY+L-'F"N KlܬגĔWq/8.;X!({rX1ɩRdpH?h?![1g8R_(Xb34NcLB@U?Y.ɯ^CVNIE! 9&S@[aژ5LURu]7jJ:#W{ AGy8x㼘؟?;Adnd؇ 9ţA9~#l|-FL` 5mK̟5&{..NR5\oN LfP~Ӭ)FRz#9=2$z\j.ӝy(ѼR24ӣ]]FθM[38 H=Ѩ37l. }2&}yr@L\Z.PC^P Ck\v {4Rxʀ8"kWUMk[Î<{ &BP7smtu=ژg*J&J'8 7F"ޞI(@6$=w1,rrJ%T\`-R4^ƝaXgL_(1l̏b LK t~a'JPЂ)d$./r4@&7NF7|mZ *10QN CP `=M_伸N}_{ýC@/XW qi*WH3Ҥ&\mf!Af&E=2HeF1w8̠}W}Vzؕئ@^ۨKaąO(\X|8,c3mX .e/ҋB軻ҧdM;t:$f6|_aIIr/6LeQ4l(9Q!!߈J$/y~}s+>;vNc螆kyH.ѭEP0b)UB}ڹIYIOq[})}¢_RKa.X~f~`d:Y| l0~Mq!ֲwNCgub3(lݫӕw@ 2U㌪Vȴ:!_vh>@]S>>!&yyHL>z $#klxzmK;68f^C?jX|r|--<,]-q;ɡ`qn5 ld[߅Rap6rYڻ..[Vҷ=U!ך[988s2-tEsG=gH/T0rn xj=KLx~!\!]42sbrv.˫3+0Uo(~$jxfAYFH# ֛=Cfna[ wޢa:%[;G`e\{<324~-ϷOp~ෳQrvxuؐH"Ifw"4#ϼjTx?W 4Tu7/ڭ1^}C 5c;>mjwJWá\˸"~6,2e TY;f -6X/5h9А)Y.$(u)kQ&A\K;~X6 Ƹ7.3%ZyhjH;%-g쇁d >`'bCy'X#G4JpU?f5ζ"SPgPi.T/660%am|쯕qG_a?ڲ~l l]y=jUk=-K_ 3b6evΙTa*8D)a}A%3"%. +)zg5f FtRR;T&$\7" e?$v'PO& OR1nTt1JE4#el^;-#_X8v]}`v$CHt}` |ur7OTt7laJD+ڟs]Z?)s}Ma3ɎNnI 7sg|f8Gi[s2ꩋs`At]nF'8?k,Ub'U%Ta<[g^L]brRR_&Gv0Ov! Zj,]'ʐQ< Gܢ 6ـqTiyyWU EC_ΒD_}S]oSA M2It`c'L%k1hUƈ$W̼ $Y7/԰a)wu7Ǫ$K])*c;g?;UBc`w֘:ViS{ig", h>,AȜWDˣG13^z c0?<:]/m"x;h̝縵*I˛0p- poLZWFwjG뺛| !ep#ψWdr0v[^2~Fqbމ'C qu]E;I!e,gsِ2 Ly}VA=twц2p#D0(.^  28PT 7$Ho%/%ju=8%FC#>T%]ϴsJj~'[_Waigor쑅TIH@t.7T6O&qߜq8gAELJ۞׈u%eIP}9?Yf1b.[7x^QUN'qʪ.TJdI܎%FTSw]Z%pWxP!gf|`AO^}"xE(D#w?ʧEW:k DZbJOҭVo8 ϱʦ+UcX"xYbY܏W6bvz5~𫣚M+Ģe7ݑ(o ϋOaԴ%:77<6J3~Sֺ}\|822z"X?i9-U$E,bf_у@7)4Z-ڮkPۀ4_$lQ9wZ4 ;XVJ86;w<*#0-Wj{hD!8ڱw_ =A+]p*#/J,PwK.*N#soRˆv\֔ˡL/o?10jT' Cl+y{п9*jZ_܀Ր-hrs@1D; qJ"cݐG'SOr+Bl5v2P_NJg(hK4Av)q}/J Zhh\,ITk͏=,sL&-HQcyd;'mrjR)!?dK2 ӕNUW':F?p}yv4w(R,dGHUt?gZ=9^b2+~el0Wp"K!4^gXٲhc*^31~`bᘷCY(;*3*|Hkq@Uv2IQ[tLuT)}OrK`v U6mr50dя5K~B_ 6؋wLc R2ZVqwTlh^O rKqkt uA2 Bn-gOVœv_O}1]$S'`T?E*n&̞jQgP]*㚢ntpؚz8cw(jK-lBI-Ve6'/ӰzvWއm MC )@PE9ŁJt#4@-ٖǧ<^kjǵ6J 1 (˂(2998{%>7Z=w@ Eʶ "hBkN1[g*''^;18|S 0ǹPU.C_֝7 k۞'wی K>Q0c@DtG+mM7dy;4}UPYF[{;Aᘧ#w!cŊD(0!_|}T%Wy{*/◝,Jޓ ԓvtNE҅ QD}XH^] WBADoB8>Et*eFzdًH R^= $.>4i[J|<ҺX!3N2µ*ESYQA`&av %Jpdbg{",jK%z| .#ƔN:tk1D)a\˳`X'Dc5UJ|BCKL\&,<.OOxNվ˿ t nZu킔Kc $a('=_Ϧ; קWo!hQ_04>(4 K!ʵ~e8A|Sn';؍wb1NsGSZbS+o埈&&@8;*[r36k(؝UEbSYu& T^YȢY3W>SEzWiin]vl@BL­=}'V Re9xrfGOJ}Z#}>C mn>Y5mI 1 |K+(9Xk l%çX`}6KU+%$ ;r~:ˋrv&F I)$x|sBd])˶_9|h+}u|YfdTiM4K!}WRklo1xle6X]¬b,-ZDv;'ɈK8mjf 1C>%cȡ1EM0 М({ tpJu*s'uQ^r@w)^7fpg}\Ej'Aj#R[||$H+In51 w@R#n 8"[bQ( 9-H"i%Z]OVN:^YA7F %`ۿdwt,pW>]5KPpL?3|Gi u`R ?Ve,Mvq[FG?ML`mv|nvfX@ }qq'Tu^ABdcES `arj"^e̕%Tɦ\X_a#>"RT칎:nJ3@a/zܵ#li˵m;ݬ8FM ND$nRPjZ Ca˥AqSҙNS,'_+R!vmaQG#!b4XoڏA B$qxjN{f lLFR>?7&$_LY|!8ZiT͇5F|u#c Zxc9!iDC &j|"zU(1( hnJ>c"7^$W8t6YFXq4ҦzdOXm6BU*${2Y-Y;3؉nH[v)imblqrKL*cp^3S樲 ;ZfL:=hC`㽓7ܶ`pdP"|,NzWl e5ΣQwLy yL\bD@&0$XiP#c| hq#^/8K מ}2[Qi*pqQ`t{X%Pn"}}PF%x O$WSXP>W8R{.垇/,"Q|^=~`o&BHE޿"Ϫ-ǐ tWK!W7<. XV w+^@0oxؾ&](4C&:!Wڗ;.O)#i6u8xޝDS: sQ@a~M#%<.>b254+6B<zrʽqMq (TLƥ݋\_ o/R";B[z&xw,vvLj9_@4 >a.uqqѺ4b-#ql<%מby`6Vp ii3. Ki¿Sw ` -8t~f~|(rVnGl^(D>h 4E"^+)a\ K#;>7¶Y0.=]sy,p-Y {1X+?I -PwT̈́ p*M=N>fˏ<%ٗ5Ln҃%ӷ"m~U>lkBݮ@QrH+ړ Kk Eo8$RK&҄AgL=G!)8o\L`o|LF;˞.bl 6m8Fqˈu6#jyV+wOìn*<DG{D u]S]ڷOq6:y;Gc7ʒ^_#dz!z)y(HB2mtm;ͭ$!i}!?t1P ߋՏ翊Xѭn[pLwDpfS%( ұ|"ASnxaܮ0{~c̋}?^B֫.C7 fT~YS-\5>T'8B3rS!*?MQC]1b*/C疺HڴQ-/}rNN 6'_:/mKm~,rhRO _@\PѦiLкNJbjr7V`jX:0S\D^β=< I0'm5㥊'[V \;9ɫ`PH%Mus.Ҏf&TK$3|hf6F^UJxx6y%Y*ޒs|A]tU">)w*Hy>@rGYCkOirO^0霓rr4'1ϐ+cL0;Q1~Ϝ)udGn&>v8B]Eǂ_,sYo=ׅo IP%]~)2S6@ kEj; ~X1>4ojDLaaQo6/_[;~U`1!, =IY^'LX*/&/doNԡP&[^@Y33jk8Cf;`9VƵjht>2cau発oN eG<*g` L[v]sESMWϷjDz+V^O}RLqW0/6%D9JMYѐuՓQD|x tD\;ὦWXTnl xġʁ.5w:Z#v^UJwGS o.BYAh՘^YuɜcI(Ϋ>p!"/Z5 :ժ` LK ek;]:- YWxpobqB]fs0eZ#r-E8Lu?}/6W;8[(ZnPq/-0굾I/ ]aڨ!~Q{ ]%G.' Hry"ǟ wCln.b?Ց3QG}Px[Uё*,w$Α9Љ}IP8<$p<(| .Xn\ tBS_&u ГO9_@VQqFj >[ڵR7h;F׳MCV`ySIn} - vʼn뀚;ym̈su?"ܱz BvW*lLՠREwWB,|\χfhgT  XHcf*lv h%C<0bUt OdRq4 Lpbmkwh" ,^$>[Hw[7 "8#Yc`$Wr|,ӊoQ @ry8A~b߹Vgo]y|SMJ3Żyƪ(Y4ب Wq2_m+:hV[z^XK=4|i]aK:" M$Sclyx0`k=]ˣ-3ŪaEAW!w!/dwRj0wMky=A;1+Gm;g2j|p:[hyBwVu af*.TjųX_e4U6=HeR _\;y2ɖP ӏB+*?}MaxaO <_ꤳ2t4_dBpJ?1hjm:`?j\T :(JhcmD v\M$z N}j5Mg"`*)uQ켭e{W]=Ua$W W0H.1!dx݅Pi6L{?3J64~pvDbK p> lT5^[$Z}!Jh#}f1M.E2RQ:<~1$^?tDE!`"CxUcFsw mDyG\Njga+#@Cu=D \6!{"1c9ΕtlfFqueZ21X+ֵ)'n[ iTzߌۿK`"M[e5k! 鵸iʡ@ jpXߊ>Sz'R059F)dz;Ң8[~B2w񰣥3#` \ on!?8B~b_jBM6K ~t+U~i̤ ~A:Sr]N0q]Ct 'iN!mw ρ܀[" w$\YwlՍ>Na%.f_Hopj ɾbJpWd 'b)~3+#'`X-4+)YgI$,S ETGZCK| q[Ce ZrzgaEqKRܐBsg3& ,̸rb)z_/dñ~n:p:VtH;Qo:9Ŗ?o$yDQ fgS$Au=Ql=!V; &wK) ȴx4" `:8JNJ̀g!W8J*x좛t1ާ*4cbb=-(r+ѧ1Ap<rJr>;!pchbc<7^'] -7#h|104Y6yG^muU|q I,Mj|6, h+-?$X2U>GZe?xQIG`'0{xKl݋"PT2#^kǤ EiU4? #Ʉf}d&2X>ڍ?-׷YWp{vunWX r2$ 2p¡&> t*T 6eBH܁NTq-0߸cHU䲋岣_M_ޓ]i-{ĿtgҐZM3EO?AV6{ZUOx['YlWȻ`[%LmWͥ'7@Ֆ*}&Us[ me8D'‹("Ao[sryG=ɉTH0&[ʧܬoV42"mkwRGtekZMg^I)A7# L%͡Ljsl1T,ypnQ#uPcdcI;Cz2[/zV "Nj} q茳2LíNZi1C^ 7@ơ0x8ʲ\*fԩX }bBh@\QA]d3F /S? MM3-Cm? \[DT>35`y)WKJ](0ܡkM4^x'tEAI&AI Cg5$^Impm)h_>{vS=qé}@^tN-P _LͬB((X_agZe=݀9c!LDt$p&ѫm u'Ħbgы\Dn2#Vg̓5, _nf+.d5HM9lp =c)t8-WAg7pmX|WGpd~i52 Dx*҅LBϗ) l; bl: 7Ƚ[OZ݊N\y%tH|p}y>^K W iIK@_G ?"JQ+Hl|8/D8*v]>Lw騷~=miVI19rzcSBSOu!L&VKl>Kydf>o\>kx2zANH;_33E=@{*(Qtj0>^$:,Б>JG%yc13Elيy~ YoFl/X&) rARO^(+SG4ad,~n[4G2a]O0,a&L=":F0nOm7gRɖ!S+NIJwD)4 sR,[-U"YNMN63 $m3Y.N D;ڀ=rYN ,jߜ4W\3fޱ2ݍ𐭈=ZYiQ`vFIs7؝5>HZF,=vWeU)mi 7OsaYfN!%E6}%Xɦ㋩O&&e]uwD,<x'~T !ēiSsuV&aIA"fE7<Զyr%F_l-$Znl̤z#EDd2 Us,TXvPé 2_˻|LP_G"M|4tdmԙS7%Pk/*Qa0:gy<l8QYc"ڂC/\#CU lnS:wړr dG$'=:f(϶ u*ɯ/eK)=nN,zB5>ĹWXu* (-R!DGJ~bz WCv T| ECvb8wV;SI` &fW{oxXe؄sIfTArVTҧ$]wİT4,#Jrr8]%1m#JQ!a~8& j$DNwˆ"`Y`=j?Մo|/j*@kgYEC!]'-u(?~Hvr)GF^;ʆ=N4īD[:[&]tecnCKT cTQx8ty"^.U~P$IIfSOO(EP1#"Ζ_,Nַ&BRB(F&UR bzBw  nK&[lؐ3g'}kcX|(!<U(YhQ7|kYS聲-F2v$ Cewzl?mBP'GɠpeZdI9[ 7b# h9i *^I;$ iۥ(~N7)=iVKhOU&mܦAvCEeW>Ez̀z o"6"ON )~ aiWmy( eDOzƶ2n_BX֕YNZ<@5°PiMQL!3k|9,?EBHKbK8&/wK@9keڐhYҩX>#񎨸.G%)zhH6!ٴ>@5numzGOިTg8[3s[ e(aY_e &ԃ\_tdlA 8 *?p$Pv6nr ;{Xb[n=, tvsv^ Slַ/wiӺS9%'ŏ][aAA:;mRӹ)!*G?- ax * UPF 5i[NHMGݦt!MW @Lg-ͱu/_@\Wl5'}BGkKoF GPʾe&n %Z3o&$Th^L:ׯ'uAu2 0cUBbv ,+yVO%t>y+-8Pa gQfBh@$NX7"6iw' ~&:&yf (kCLUZFcuɞ8:|O-P-P=NϘZi&ykJt2L1paR8:FR<u< Wxqc&Q\{zcP_ޏ>H#wj)D:u$Q8ٙpRj|rU[vkd_fUk Fi11:2EA]M̑,2LǎnFt[qj.j ӁD P,S@OQM<96~Yz;t:Z2+}+ՃB%zb<u: |YJ7P,#9:c&( j\젘e'䂔'ɰY_:Fhʍ90꽃U̥K,2bp?>WAN+oq $w.V4dvgQAHv<,99|6IJkθL7) wW , sOj:w68^1#K"= @)v`@F,H{|NgLPD"Sхsg٣VF("ΚQw1s1l>v-ztn}`g.&vuJ}[SF J|0!La>x(\l^ߎqfq%6@"<*`/ T,+cj2 JoDʐT x:_hT7زGãg$]%DybKfjIVbye 2%'7)`#HE66A.| q8d]߅ie61"ezVo<SP_W{'b DjSW$.z4 ~jQs@'t1@"-RRZСqãX)k*88!HPE/u{\f/@THL6fj8/n Ha8:`/(oDv}p6:s8E/!i+V6NuX3!_CU]icm 6[$ MhBy!u8xq?s+DPD-Hktc%;H]MZOqR/}++݈ 9QԎcm*9kzgP?ZW52T. ڒ1uAh ؜{@1aqFs7|і!!4Ap ԇ ޾PLR QJMkI@MQ1@zCDf KY)mh '3 }>bH $U\, I6P$ZbGf dtlLJCFmb^M-^UqRqpHt j(H\0c]ȇ>]̘'X$nFO-B#л˖_Mhh!`L ]lNn C|PՂ!oRW!f`fzOtG$yQ_u9`!U, BW=Zz7~EҮ(~Dt.Pk= oXIoRlyF0^ހHe+1v- Js-̰h-(\)Ilڰqȋ;w>XһEςq܆| ?W͙XF2y`Pכ"aETD!"rVXn0_ۜ3WBi>,ө"\ W@6ok P+$UǾyGжޞBV ݸAk E0'/wfr j K{7܍1>a;cJ96BTL: uBP=#C2 8úxIi|UUo'nUGoq L2lC6tZïnq=cQ.h+Lt8awQ J 7+N;OIObb<@ur'ɭ 6nXkN(1o垑k!Ր$t6&/U=ZbՓu@[?3iw7^OMI0 5n7@{[YpXgmi2q2xC2IR(ZV-dWP%P:l(}W2^z!ۥBg;6R"⊘B.bjaeK\kTmZڎpAO(.1mUSVQ[L+ &5(5v̼6imQ*ڢ]B)+=llo,[]k'~zM뿰 Yuf% ,z҇!AW3]uRAI5"fk lq1~ + 2+gً˽왨ڢ-䈻7[fSЛ/yL ӛtgTd/o|6 $ <1 ܂ip؟m6P?5tDq>|#ԬM'PU=2Ϗ[ ^+XAKË>չ: ``j7Z"Dei@̔g[/nU4 Or`'*Os` Fq&/"/v7Lno>D ZvaƂ7ǧ۫['2c5w|9j`813iX=ʳ 5MgoaU֢-'uae|3%4#X2B.玟y( `bi_)"`W'4RbĹ10- H+B{jd@ }n[*$*Hz+eP"@N} ]M vm>\ūj -Z09Iߕ8vx`n$;#̀i=qL3"G}fZu-Cd9oJcUBDSWclPzF{6r/|hปk32wGݟ :;)7u׳ pFZ,l*W %!(IIVA;s'h)'B%}oxA{ կ殅Wí>JJV f!jd`I>UA" ҇ebv xJ{.Lk7qdKhTֵ:ҿC1 7[;/~y#* tdڗvYg[=a4((V:!;>ɼε턅c4GOe+?fm{/XWœl:]dо%!q6_äZ^u$o)\f&-~M0o]N &[;GF k-*D:"-+TI%$$|EM0+TƵV.>rɬBn5Dù]W5[NەԄ1$T64FU/H,~(U&ƚ|:m5JOtW'(y7 5$)`MMbcB5+4>D\+U?Eŭp nHKE/)y\ە?o&RO귥X>=rVP{ .[Qr7򉠲I{캳ޘJޓlH ֵkIԳ1lE $$}D WX"}֛YV XZ ґl  1clJsO53!1`:j3I @p&Y#ablߠ@?_$1j&ڕA ![%_$ˡ|2+']p3G _IRgH9*,Tw3zA3\ҨCQÍz5@x^njnJRK7"FuX1.cRYƠD^]\%=b)xI/wI\pVͭQq!,E^;鶾 RP>U"cq@= (HBȈ&sS @ZVy|G K&=XkkyT*0c 6aU85ߴb¶uFԻj5CQTvIrM"Эkr]<i#AXz z&5ExEb9oo8C@-z7OʈX=k84j[h:5Uܺa2;7 %t^8-V50\n ±ט>W~먧lW|䇑bD`S릁@6yCDFƢVފ5mzI-^ʤޯR$70Ot4E:j~hF ǽ!b!y  GbTkBR>$Z D#t T"0Qe Ngryu!s݇xzg|yy:Tb-IrLG7Qz ;1(aA@1tNRΗ {g - #ಝ -D&Z y"~ёT72 OV`20`Xv0_琤{b2y+ 8Z෗4 4}Cdd1R*a .N0߰V^(n! $n-˪&T1x9@>ذ+[kԉ-˴,EЀ!<3n2ON-xvuX\~U.N`. d鴬tO2;<>SEƮ{;eM^jXߙmzP#⟎QsVIQnjcmW>`=pfЏ(|*Fa)fljEXgq@6r^jɸ<8H;-\WE3VU[w1p45[L0 f8B+膸10aI<,<%ɗ ,\O3էkm.=7p{PC8"0ۃ\@FYoȴI:oX(ƲSz11XwJ/ʅq S+_ f6A+d]~]Wyy-Ba0t88^2NZ֔|ùt$I$z&'2Z]w3Gt+/T>y8dꅷ< ΄Ҕ7K ws\j B"]%,U_jqtaɧlZRF9]*m+,>eɚEZ+4#8z%ۮf8 jB >Nu%AdE74lFj|#yl3x;m1[ j*Π&CjdC 9X~]E% v_]e%gY43De'^ ׆ @o'8Ƥx1p™"\$ʽfvݑʐFŕfrO`]4[jGorg$3ͱ;QUF9wQ9oE00jMD:KR7FE Öd+l[[@{}Yf39c%j sڊTm:U12G!!.Gtgkl* )("쎡B4pV> ^r!2*{}NZO{p ,*ұt.ime0Sgy 0m)[Eui,ק'䖶cI}I*g{~#tn_J3&U|Qτ]ZmJ*ɛ bĀgmQ̙3=iqUͫhAy69ֹn?H/.3R^$!:T^P7f0&7i( v2єȢ3挬, M*//RuML &]ldqr s9+xjVsݮy3 uPYf$.aF8XɎ9 )Q ZJo&b͐Rc)u&OА\gJASڲ8}joq~bp܀'VY"UA5p?$cawv+c|w˛!<̷wh9~q[O̱=|.{&4#Csq)=rb}[6?u9[P=?Â:zeVҷn >uX]Ly<#,uH ''0ոɼl[Mo+%qk | Rҏ)~㕜 mO؍%9Voq , v!GY7Φ]k0Th;^QYס.L^[^TR׭i4ُ7y2 2T"`]RKy(8nra2,iu*SMʡMNv6{cPB y90}˹B4 @LuOu<13X Hn*od#IR } l"CO C rrXƞvs@r_5)V4MR@Lжx\`Lw/H+f5/|6#{^T*$vf5g9~m'8Oyc/e]G-{zIaYi"?jB/ @&%/z)Z2>SO)QLhsK |6twJ;w-ѿr"6p4 T!`s!M}ZCS@hC A#QTׂ#uYߜgtM5W ^LџiY^?`y+8Y7+ _ٍf‘j*+t4lv"-O+( M Nc@֤и 99|y:-yn9.SMt3R`0uBpɇVv6N߼C0JFي>4<,7|\7+7#EVCZ'YP٢(#E9w@ORͷhOo&U9_P|7rӽ|;vLmGApF浍9q>8: 7_7- 4x\XU8*2`wQTH4c~'46૬?ѥ/' {''?tS7CpJY #DB^D5ڒ/\J)Z3 @t->/"˶TXrϹ >ؖ;< /?$kY#ۥGsFAIH9BJg8P75)Á#MҶNi@Yz{6nf=a|)0c|"0=aTCj$t=dǾ7l  Kt 0t48; U iM8)4En2Ӟ; +j` '@KU^ċJ w#>s|oW 8 3JA\JW] N6Qhd«~|gok'?`Db9& ĻnSp#^=W[  I- 5>Õ"9uL?PRIhp{L|-Y[j Mһ2~;|)c|BoD0 珓j鷊~eNS`6,.>@7K:bg񺽦]"^PR_SdĒ;$_MY(cbb >.#~zAya3x|F+X,TW}d}P"ՌF@}qY{G:1Ѫ&WEo`w ^nj0?!CK2ov݅m y;$y\#R*97Ǥ/ZL16:nFaHvLanw¢OZ\>81Su3uc2p~76?Q]iqIsV.57㛱K¦c-m=(Q`c/,?Q?pڕuySL?!k- -TsX/gsѨ)䵨|4h(b|s|iXRi{p@˛}=QDZ=0ypm'x}KlI0y/2\< ODf"" bTs^\t6\16Ěu𙼊yE!뮁7̳YQɥxXxkS|"Uу~hھ/剧 R(3446মLb?2ϼy)B\PG=@SgYJ\+_J϶x*~ lr9̩__|_Tޓ;C\) ˟F`O3k_3Үc:Bi;X=a>/V^kZٳ(. hI/('J&TPpXK0b5%[ 6.3x/IኋNA]EgaSpm$24{.Mqwh\]ϝEI7/kbM xKrz+/7UHpM389Zy~юtb2Lm0 ~x hAp"?4Hs lx]oY:uzD.JrO]Xi[{1y@'*McĴbYTJg #;+eJV|an^[f2v"[< ٷQzN(cjҿ OwiG'9~ ED6+"8;Ƴ&ED)C 3Te<ŕnh0Mu^Fጲ[Ffm=L %xmC2Xgj(Zg%;6i JI)|U!9 ^J@V)SZ* 2U;qTfx$)[J:fgx=%Q``Vɋ U$r(8JAzr<3JuRE&9cwn2]U~fȥ%,dؠ3 /S`ըXZ6'_p/_M BO0*u+X u%cdž+ sND`85;'UøF(eN? żKxYg$->4u'`-}e7.TiWӽID/x{l#+> 7v[LTXo6<4,+_ ڤM󰣬|d2+#2pY7o?d&?e!1n%d|7&MH̴Tߘkg3m#Zc<=c>`O"ĠOr`- dޥ^F薗,VF[ ,ET>Sc.y@0K4ǿI俜u&uۻrNpi5ROuٯBS {#Oz;k.`吕>[ 5ueD{"`υt]JiUXA % =Iĺ[La}Y퓖x.9wF ˷3~yi2{w̏3#UCCZ}ө'҂FeWTYNJB\qɸY_`qzsX93? #{-XN=ch*u ݠvo-^}![1=u//Cɉv ɣ=@d+Z"K !'P󩩀:W9]}錁}ӟsӴ;AҒdZ*4d Z1?J5gUce 䕷Ёo`9FEB+0dWm1<]{ITڤ-wo?-bRogI/~PU>-8 |"@ PEGE/A~8*RB]~ &_nS(..y;A2ؚN=ơr]&e!d'5>W8]JhTYzoY+\掠*D+Gg6`ukrihK\,7uwB֏IFZ>eodAt:} +_a9!86)ct 篌h?(\0Z9sF[RR\AwA:Uc>pQGaɔ6n|Y 1 :T4ρrBPk932䟾 ԩgĐv_F#{!xv8$HC~&î#K/{a)i1(5=S"j]2Εv? g{Z@6`^f UnEہvx"-G:ۙ@aKr̪BngK! 5S^[M~c b[!8ΥثDU>ʼ{k ""O`KuZVh;j@T֡$+[\I^o"|x,W"Q34De yA)M:G];r.B/ٹ]A¹NrbѲ[i)TF=~XT z+(3fd7W]s2Qy%r & r^T;"ZI74WxCA芶cw]H>InA>?_k.TqV/[;e{|Z|WG&Os:(r܍aӉqHYqqiI olλL-j BU&5X9#a6Gs(*UtCǺ؀;)X(⣝@Ĭ3,1bҚU3VB^$FzZnjMw!L 8YE0腫u&B*+0^~8pyb\wۄ -řsП>F#ٺnM5f&  ewfro}.sұz-Qpa{Mȷ%v?l*rS33K/8_}!KUu}I'go{L_V]jihPf\DZ]<xͪu3,HPAJg>5}=c'^6~X0fӵmbFQjb-Pymx^喸?!/Z}[TS$N%u'AjretW ࢭy/ Ga>2* Xz,L`ii Dc"فHsg'UEЛ}jV 4@hY54ٰ iD@ii~V#9 bn7~'q_8?}H,72M=sƒT\Ôoi@ c3Y[">sh9JZJ5bEY_^T7$BtY|iq##NCm~ *g`І0s- 7 ۄ27,rIɀecuXJ~XTI.~ E≈Tc7LZ.+\.U@ ؋lcյE<+Yc^/jfwv$R&OćX.4{ފ+w90,<A<0酖(ՖW\֠D_@ F10J(.4 wcU ֥d,1pɒD;L$ d0J=L'}R[NO zr^-,VObϧS Eu*3VO'wt_iz ~Ľĺ@֐^tm> 6@j]ǜ'6|!,Yz ȩ 42_455` 2u *:2ѫ!FcɢքusqAQ/;1 rdb܀ .]G|UB_I'rnM?a]x>85Rt[Cm iً&RNx=SʥneUzZ(-"bMf%D4xH)uD?4)~P`[,7av"FV`J5a{C~_NvOpnV/-Qa"d@ D$qE{s<@-:pVQ:,Vz#et^5#g vJ 񵐪3kOHc[+C.@-Ceq;_aj+Lx^:T1+ tLѫUX*K.l>NhsHI_f|gKP҈ 2ki9 \λ|gX;J䓬&W P$]m"rwY`adbՊ{76|^ͰǎKC&5AeP@91ph&z5C{6es*:B%럱u4)]_Mi|YS|hZ=4\A^>"_uEtYANV;8^ioR?#d#/ V_TcPHM>U0۫a:5O!4ug&Z`ʫ/5esSU/CZ]k9g@<Ʌ߿$4_(" ,+v]ۈ(V 7@~zk %7ÿRKz=р'wa*udܹ@-wу^fq]4vc_y(\hG)R",'/ bU(__Q%o ϻ%ann,IXlHA {Y,,<ZEn?>GQY2E6"9OGBG&Mf>4OT׹2~ "uY(zvtD%ց:)+EΠx3V m.E/B=5}61x(KBb Q$Z5 ğożf@ꏭG|KaLU2&cz0ĉ>}cSiiʚ`#lu5D#>ۨ{Yb5gQ+VeC^:=,cLgK?&b9ğaPos>80u_i^%qU! ٷ]řHZNNH\jlRq_n<TyD$u}6#S}ClxwEˏ6ȯzy<2w]'5BJ~IDSk %7cTfDbGU:J+jȵ ֺhn3Or9ҊƾSU J"^xEjǹ| ZwP\iev'JE_Ou ,qjfQ 5z>( 6SAqxh c`Yӳ0| 6_A+ ]/䱻"B)kKNamb_2[+BOs^BӾ ;߮C4kjzAg"y)ExnZ62.ɥWՈkɥCVBL϶-.}AT[s[G^F* Ӯ!RCS FDCk /2&f>xD[b?Ě ?~M<< qFc>YLQZ[EkB9GlF2tY n~yeHO6ЭE_tn%{O 1{ltytF }#@{ D)^hGu-~TΖe7ec9ńyP^?N[8~A[ -4q"픠k1o4Co3I\:?](>YJlPijB7݂Xaxt}vۛao X2ߕj逸I-cYgjق\hGZԔ_)U3eeIW9$K4N`ffrNF0c-eKXk+#Cu9P]OAҼHP-T݇g"Igx-49w#-PQJRYYo !dM)3@',7ۤ/Gr>BgLo"AY:}Isj2naI-+R:jp' d*j;eIq|T X>QG SiBg_%"I6+*Dͨ4Kzz(Zfiet"oO6_`vRngй{KxLN, '-O$+y%]ѵLSr_Nf;?7{-d3>2l^~)|c᤭yrr^ØpxKWmK:o&NTk(i rm>,N~B؄;u eڣ Tiy] qFF;UK%'_H:j~R{oґG׬V=&<K>gc @ŗ677A5%e&PC[&B8s=vr(w[ LZ MZy]T'Q"P?ZGzF ӵhBܭ!΋ MO4 Oo 9\DP IlME;"d[jzu׉@q$ԭt)˼TXKNOZ;P t6C8,Z ,]dl4C .Og ]`D'ܒ@2HXKQJ2#|Ki?fr&$^+,OqO)8p' UV|ͽe˻1M ާumӕ!T@ݮ43WAR1Xbn70nCP,4-74a*Cjyn+?t~R,1Z1u=o5m֍p*Чi0 ٞ"L`G_Qv+xK1buM(Ώ\RJrF$XAUR\$Sb͕F錏x>/[j5VYQ{mi.i.:ccغI?n4B) ^ŗg^dFPvuƈ|N:?KSL|'!2bRcO?\ƃ+C1oboٽr͆hsv[FgI~sYU 's Ph[2XNPKcPlzS1$Hw{9O8V]g e],Z-)kIʫ5C*j䪙@ f0#4~O?ϣV7+7W>̓{;҈#WCb"=(ʃ9hTSp C]!'ht:7snQ̴O0T>CBL"ٱSu .j61:^@ؑҒ+ @Beg5L1-ߣ.5qaq(QOI+(I"u3< a[%K2߁eMeS 3iq4;$WXmwbt1ƂbXLJ[(l#[wuaxc2 mZYK@ZBRџBuJooկaz-YUڀXs<gsS/N{.JlÄ]"F-5!WUWOו.k;,bRJ+)x}eVUh &+ρJ,o3N;Ё&a](١OpV[}m Odk^y! #+2U/6,XM7BѫbO2 mehX2] 'r\kጇH;$ 誾Lyɑsq%]z.4>M.Ytyz@SL6X"*N=x Ag+c>,[ Zt ZjvRkIW dXxo9ВXzlftL!uieuˈ4}Z9u%M'Wiu? q#BVB+}w@''Џ_ͤ,V|֒AI<.ijdXu@3_.E9jTVVJٸ{z}Ӕ8@e;A2ϨS5vq2{uX \Ey>9 !u@Sd2`5dqyE~kK宛8p*#OτǵO?z:]WonKRdmv QWng т [3SF4r/qશ$@Sz|:О-$)M!~ym%Li]п.1cϳmˍ[qLI(5ZKRjI ٶw Q){HH5Oc+y' &Sm8jBkԚяt ;_q|LWeZ!2y1~+\?pxNbtIS.w.3& ;x4J%A6,H`BmMBⅴTI[}nvL!'h}s;Dv$bIW1?b8`F9{h5fY/,p^f>1.l{uԲ[vX2c"1o浾9|?ޫ+kKtZ5xQ$=Rbs0`H!}7ugI8NB>n4xӋNpb(WnQ ߁w&Ou~5IeW;NBͻJ*} .@leFWᐰߚm4}n/9UP 8'5GYbc8# 8{(ɗ;8FFpQu̎=,[ODYI5ܗ::븲/($Mf6{)WM#sSr_OCWgzV6 9vQPRwnB­? wK ~W#i@O/2(UBg蟻X 3'DT,Q쎶=?ebCc jM-sPM3r2g 'ɔi7'`( YpU̿]0 U:s}{uM=heF)}[6"Lzaw}Le}Ս4玆`ѼRCƩ}(?4慸 ϫNWg:1PAv2%4aNe{}#:*EŐodhH0٬n*rg&{">c85WꁖOi zNDDY1n rVY=V?u_BBAg7gFI3auapc (g3㹋!QUNNGCTzY ]Xa 䂥* 9HJ2cl d^O2遙&{D1\/Bdw[:o.,Gn>ps0>x-?PX'>9G\(zo'&%'=S\ o-I7h{ FuKv %D#-8LMìC߮)S;_ǻˏ,W=ohyB|1mnC`zZ\Ma(n _N8$fcJ! X%r17+K$S]h@N+'d!@]xM#YwW^BZb{Uw'{L1o;P{mnF>4mUdυ57|\26+?) Si, SboJ>Ph(Ta {@ѸE#t:MP`j\rrSW5U\?}ˋsH֢) T`WT/L-;qɶP 0:"xiM+3YӭTi%i:"^º&q#F:Q%/,)|)luUN*LW^$jb{@o/=<ջY{T:`l]Afyj_hΈqIlF:\/Oנ(aK!bS%$pDՏt.l({ ŸjܱvR:U]?Fњ:ެX!_H"7d826$K?<n>"^>sa^mfOt2 Qf(f!2h։ǿ݁h pˆ婃!q(@2ll;!ɼD2CC?ϋ/2mL3xE0LS f-K)"ZZ(9,Ԕ%*F1_DIS\F%Ӣ]_A 37JNJ@Q3O`0"IUz{:F0= t8۷ف2y+G@@by*⟟Y%޾ #rM&M*(L 7l}GQjYkO.} q rk3 +U[$ ݢU@x%;T,+qz_3L9D1_=\QW5YjUtGX_okvnZ-N7{!:BVVCd=Պ+5zV+Su~ XET' :z5)/^虦?TO5׺-2ԏ[;4j[g"ݫ` vTC1ZQUB˝\BMjJV1\Gy;menkԗFl4RNli TlVY!ik7 @ȏxjĔ?=:I ~O5Wy16y?6\dژ5Љ؊6d-}ߙsⶕweQ1HX_ 4&Kap~cmF4til sQ:Fd"8Q3IVW,6_~UJᰈJG@kj5=97 f\^03Xݿ^ kvItK a;5 Qi`yZh9 A.t7(C:(b^Vq:ʣ $8pѵ:6nǒ ; —q$zN([ AN4$Z+j&Yb89Dh(8CFG_tK%H%D+^/lhsR$T ,+.{`O imt U LCF1.W4XLH#?Id碏 LΨHKzcg?%adnz;Dfg8FXp1XFovXi Oriv#+nfBC0N O1Q/A0pY"eAϋS<(zKJV4>^ݛ2UwR14hX`~Bl>}nQr#9cM!z:=t|!(*NFo~NH1GDceҊHci><_.Vn%GK|D5p$ALCиExAURcLKqWGX~n'D:[$c]!X0_o{ 6&6yЃL}o7 \p+xOAKH(  4ly# 2`7x*{( ^A.PH-m^X^ĆMz KaʲƼv5&98|,_R62+tk n@I*Q]6вx0$uiX72= &o#uF?KU)5Eɒm)v@w~) q0&Ob;opT`d[:=˸i| g.HJz$t'DO~&/ %z,^ &>-],@3;XCYn](1WY۪Χ~밎Hu/&Ϥ.ɧ%&0g4"ϵn;QqhM8k!pL6~D_yYCe05ۯ 8bo Tdhc 1va**5OvsMW/!'u9^̱c Ks _H|pۇ%9Q*{=$Vs.yaec1k>9]`@6URP {=nnk^F|D6ˣnl* P#1^2_0'qSoC3lqwGWNR*6H֚"óR3uNoE6;wŏ{zǼj#LmhJa,ōn6Js;,'QjB+zʁ:\G/l+@Qw&\#2=ݪҹX_BÌDqʧ E Y9Y1"bQ;Dg\M9E9(UKiV#2DHϻ/A[pN"vLh@3߀5K'@MԹ:Ŗ3Y Aج8`c=cNzBR@{gx(:u<E9MyWW2TЮS,u/3?߳7 ]#5+|@rp3ďɓ dfYTΰAaFقyYǾ`:Yz)TCr &f!6aqYO"%9˃y N'T=ۢ"hN {t`" к`DBEΠYo.޲ $BT~opV]V8(( l\dBf$[VnLNǾ 8O |X#PX~8V?}uqNC};>/ʷ;yc3!7ߴ> p'F0Ԓ"fF7ûY~Tv0sKj\$ԍwt.tfDj&:J [Ib͝焁~M8}ڮ(C()YycXn: vAe'q+1 DmKǍ|,mV5$LߥK-&VHEPw T9ds^dfJx#uǐ3v~QTwN>pea$cfCwJ;YUp՜)P7.+{&es˅=V OɡzES/QÆ~3Ue >hj*kUh@3d(}lSAH%oぴtpfd͜Ѵ y@(]-b TMfhzjhpxMmaQOHY*-9p1O^"Z[vSM[4SF&wst>S}`_"V;EnLXYRoƮ[Ǹ6)=TbN -pM9â.\iܨ` ԅ-fFIԋRnt^ <ľiϮ&|@ :V1BmtY/aѮQb2Yև z~Y,HC2)\}^~#_ܒNLނK,)XH'7cd 0OyB$hoC>4s B}b}aţK9ܗ+"<Aumf(S )(A[&\ 7K+,0I@XI*P {X]Γ0uMOH71/^{lwU]Ab 9j;! rv׆rn4o GI5W&H ?Ր$Ȓ:fM9]) AFᣰ&o,l V 7 ,W'li:,&mH2E]݄/wO^ чB|$MǨ̞r"z{-(ɈL&q὏*L\]}b@7]&Te 49dQoocXM?eeePK%jX>AXimI{@ySlC*^TOa.U81RTDɀA j5KJꃠZ@+8_uG(tL^eZ︹іLʝeBp5Һ(o(aEs0Pu: ҧT"&(r>w bMEnהzNtԡ1:<*9 S^L|o Ġ(M A˴>\zR7EjSKw›#jR ވ;[-׵ᯨ3jDC} @k| 핱&e4bٴ QND'Tc`tHM>bqC&H <>2t0 h7d%JV)X GmGZ-V|] \yfyX~!`9[V~/Ms%;.KraQTEp7+16KBTv`T^7f6*mQ )=e8V]d>:I`1N9Uzʒ|D;$#2i`󱿀.vKTFThHTMzlD@P%ɨ810}8[DPLx8];v ^^" wmRxNUQT+3 Gih;yobEb4Z_%7Q.*Nny+s2ǽQ2T͞!I/+^R>E'ATgvf/Yп>s\e[GEe[gP{l 6 :O:RM хJpXmN%vF)Nn6X!QcS?Fj=\KjLq9؀B;/v RgR}&+ 4 SSl~bԦԿfE{CBhk+QQE rUa%ؙ%[vxoڐ~ G,L j#o݃E)?{dxe aMvNAq p B3fTUB~SJMp#d(6_!䚯:giB$&Vcn$q w+a.թ4+ 4$#2~w*`&:1*M#f9ʥBz5L yDkQOe!-{""␿޹>ki.CcpJem82K1ļj_?O>=\2YJ%UZ;uUgp̟BMy_O4dV=_"j8m׭tOȶwMHBp4 )bI)WNCb1aMI_3A7WF[DxY *C1B Akס3;ьQ&6ӽ8%647idy| lL*f>M#'Џ=A&q#MWuj] sMx w4'LT)7vTEHdZESoUN)"pSڍ0\k`-`.wypJb֐[aNlˎ2r-m&asؿK0P; y$ Pkv%@-;oӦY6k]AQɮqR.hja <~̣IOr|ơ[h(v)gT3C~ abjb|qmX4P@)/UWBc^|g\ o0q#2. 'zN4ɵ3ݴ9NgaKl65TsBz|}YkTozOk9Oh95vˇX'&(ш]fGWiK\d_Ǐ߆\G,7'`sGPB:}1|S' WbΉP [Y|W,yֿ8Yjܰ_Û2P/qScp 1/B9/S蹚8Je^\v-(\Y F: ˟;[a.7;1q/&6#[T'T:酪wuk4/$UJpL:};oY#PbsZ* Ag3:^bkyVYX=?)n4#Tpc.{x]di~vbL7{gGSk&d4pݖK)y9F<lr2!t^d8=~-tܿ.2'\H$:MwM~ 监ΰȽ%T(P#L6:K#i҆!Og|AZ}8!_p#epRaFUfn?O ,P&D5߳uyl0sN d-l" 8SX5Yr5 KBs#Yyw(T@Q; &?D8zFCaQ6>-$DcZ.]$jT==s&`N|n,tzak"y>[T>57b^FwI4dl 6LV)&6TSc^0g7F(!׿FI*s6\WΩO05/k7:/~$UڛSF’ŸYK+q CXc'}pxӼ b ?~{Tt@ &Ν; ;|u%bVj@]|YGat>hٿHk"į6]G'-'멄@C܈k{r"[6.y$ 'Q$/o 6&?rrF^OF _!G7"P2LdӢ=/ŧDmE"x] V-~𙅿jB&ҡ9o.$O&?gV4Vb)>[ 9Sx)h=7:-Z ~Nn7˩zN⶯`lkP𻘅|c!4ԻqR7>a6-R;.ı(81^‬Wwh;EB 5އ9 Hn~9U֤1Zr: WEgq 5i,8&2/GR@pX!Z7??nZ<C(IRd|&^+{7I-0 ENPƄYS 7]$vgTQ4wVrUA肓N4dMv~8UD~)KG}8 F|[ٳesiNɈҜX7_W`#Iߌ< 38[ԎLϽ:Ŀ$R#ƹīf(st7婵kDCu d [[,r CbhzCm7 HP=b&xv=M &% Lrg~D[s/Ý'Z RZ!n]è2oNT폥;Eet1^s_g![l%-}Y m]vtwEZ}! 1gMCդlm;2ZUͬ}m&wP_mj%iOlcN~y$DQ 6jQtVJ(6Pz%_K챩RHy0 ϢBN-"R-&w_syN vFvmˇI1hvU&B)մGM 'WHU>R}e:vH0E ^;-1M!l!mӑV _wX`9R%e*[քltc}VǴ1{Sg͖j)!&/$δ#(]s;8kا#=򬀆F ^Mds}); :g^LQҙ-b)}cIp8MBRd\)ŗ^MiDj0he~Kp1QoU$VuMeb,t8߿+{1. f$A#p<Vd)ZU:(m#7(mkyΛ ͜*,NѓO23*? ueڱoisBl~Ų Ry?h53H9+ oxO(N;|xXڰnw(P )j8uQ\/B\2:r7s? ڧ< fNipox_w-,T=iUqP1^(KkX8SA4V{ PޒsWX!qW`RQQԚ;n:uAh`g~!Io֢EkKԺÛ1Tw6P2O&;(` h?Qn 9cbI&<I60[X#%?qqɽ-殝)ա/ϻʭh7EP/^ܓqmab!H-lnRM{`_>+Uk4lSTNDRRLJ=^'hĎCQ,IbIm7% (b8l_mj@QGA @Y F^l omjG,"V.AB=5Ռ\~)Ex3 `: "Y37աLE3΁ev, p~>+O|6{XaGXv֭!{AyܝV д`c=> WQWCe6iM=N֌EY/(ϪX(bB&vLZX%0K-M@XyԲ](-,mqM8D! &Gv5^*MHUl0]_/9226v}A|x &NQ+B;j...:OeHe=٦Zbg'P]-tG9LjA’Pd5t(tuXfv!t(Yl w[kbP&RuylOXglj5՚HJ3=͠ >vM?EұZȫtt[mo[NdйEY 3fXMqRM5wl:4c.L!q5/#ytv=^-ua3ߞI$u܉`>R=cϋ/ NXy^5IQq}_}H>/C[_aSݎ$9&fgG1Od /7]P3f%Cj"xZv]_ENwYZ$_josQiywX0PA}Z`Ќb\'/W˳+.uxFwp|/y2IBZތ|_QhgU≮)Yb̤)l&P[wsn=1e<{]ilH  ulg SҶq*zW7nK:kZi2Frbq=qCM֤+'J]4o-8R?ͻ[&5y!fݦΎ͗mFRBwǹCg_QtJeX Qf7G[$x|5%$ =M/rdNHeuRltJG浩1彊pKwɠvktG\*AS8듡Yq0$ԖQPݛ eš BZZr<+LR#ihs0O`Ovrey8Ȅp?:_H.5`Dv]'Vv[nU5J<.y Qk1hwY%HA>HHdABu)tQRZLk"4Y "tO_ShawuwЪѱ~0_^# ;̷^> +/FFx)HW]Q}* T0Xø8y0"gQMgݑJV.o{PD Eh_@"D;s37yig}y#pT>,9 O=ex1؉n~b|L^}*ڈpލt=\;-b?H@tR-I1DOv%qH f杢+95< F|0_{N}U,NRMH6?V]D=[X)A|{p%ڻi)hTd`azʪÓvh$t=ɄMm5|_}oc.̞v_f ХZ]6#}VE6]І$Hw&ͧ{\Y;JVw4MO^@o j)ӐK (AnkUre@cErb'P&iW;Y{*Y*̃`Gi=>4)Aݬ[UG\a!8z 2$8[,*z cؐbGUs. B^'bqy(T qB󵈴?,e4o|_0ϝ^c +.e 0ے9;'[NYfr |φ[eG8s`;%֗A3WmlGۖ`MFh\6kpз?W>2- DE:H\t>?!P%FjG.@8ȸq ]B45PYZyhv0ZƷ[@e G";Fs%n^ GTWXEi1-WW[sT%0q╵;c~!M}g @v>70 -wHԦmX).d߇ESQה} ԙ@grn.xr4|W(3_p`%VuQ)wí`2uxr"(>TX`kl{40 s>hZ  ҖpU MA;N\J)ai#ħ7u9={xN& ?:=zCb۶&g:aԒ̇Z47& eP]CԈ%#cڀ._]d ̻2\0Ŝ#ᰐmK0L޳ $Ț6/@}Kة哓՝QGm( ޞ8if(s&7I8aJճ&.rn ˼8K"ʚ{N󫗦ȋ*=ETnMjc󼞺EˎzY1H\}:b3 7Cn8lc%EcRTU{ÖoG$V̬0.bW?`t$‚ݷm iVeS1s,NRdr)g_rza音J%\!3U!JV`GwG|,:6JnfBѾJgҜ'܅N$LRPҦ@, l1SW[@u`O?c(`RaxȌÌZW 5GC3bm1*7Hݼ¢qfky7ucn:M!'hvb; ZP(uBuaͼ -[#.ZV?[1i@tI0'"l<ڨEǹұBOc a-Z<<ʕy]9[j@,~2 (s0 S׿uFUv+V=mY4m0v/;B3vD 2Qm?0ʴQ}6'gf:.)x{ThànR{U +Z!xQ6^3~w9ǔ~/K~Y瀩*x?3kl,$2| 8BM^Şs[^i'T: ͰE||c"&_k \n^8 ~rH 7E:4)Hժy`,_g@hm\.}wd6H| f7A.@UEkB{Kv33 #8CQxizv 84Us9l-DB{ /hڑSυiH_gP(>Pptf lCd*3ˑ4?/I<ɇ+ESsڸ% |m7 HbE͊掙.]HxsuJ^`7Oݩ=6XBYXj[ZIa;$)I+*$ 6LjeւNߞQ 9>J}hb+$VZd,6熕YpKePgá.}[vu}] 1O%G(pZ]c9+u(Y81n8հMɼcCvUI] ;Bl=FWn'[\@cGXxtyβ*f!ـ$oatNs [ptu@_Nݒ^J s`"+"1ŕ* rJ18\vl֚.\]V7S;c-51}li ;)DWh RX# _x6N_I:Er#$+ y)`%-@4LdHr곻Jh'< ),H($KTf0UJP`)yK$\E R.WQPO ƣ6/ &=$sYOICC;CcVJw(?O$04ݨ{ݣ+T!LS6xoЪb>,6D+80 tx@iSXl{.9` vZa7Պ p>*:f lϬt+4p;Z+~vB6G;q72h{O)+_lĹ"9LE1ux d{2BS@F)qVf񋿓z9trpm}Y/ZyQViYΗꯚ* {~Ự#L%&Ej ]B/F'ׄ$ImN y@ p9('\Y$8ޫ#Q#zaFWsX,筲at< nF`vUQ)g]uG!I Ii)LAyYռe\p,mom)} }iqR Y^T9Gfu.ͧZ4M&iA1{3%IQ?*77 JZs^y_i[=#֝Kucge!U]<|38`ŭa2?Nm{, h9Nk ٸ{{a7:A_F8XJ4Sl!b %W"?WѢgGil݇ծ+Fc]¥  JHD//*Ql 0}#j V=Rz/`V+SdsNȹjD{ٞnHrwѸ'0ؖe~fJ /H궞0Ɨ I |].cXxJ}ddE@h?&\Q jiD#Hy($ɑh(< QwzHPT's\Z.ojPI[ ( )| S5`Jٚb59EB$f0slKCؔ-ŧ @zE)% 7tF?FsfW*4Э8:ZP| Ð~G"XlQBXHjjndOAmU?#KСRf3>` Diz2". e=DK,P7K9q &KPjmpT@Վ3D:m3C87g^m87ز#ΣɯCSd 7VHj έr .p2 mN }P_:3'Fp7AM<,ŏ4AX D {;NP8ՋFj?Q1sݛH.8LJ':V+/Hdrw!R[*PTZ)ԃ2"pXQ4|B  7Z VH,iN18!pAPBk+u3Wq^љ>)c6CH :|TbS# z]|l\tf44>U?TKsg]VN.ە98_8]I30Tc*ca!M1<@ RⳐhX"pvwcg)GdL)d FH!˦`J>]?n r>wk"4+IR[i9e.H R .Cp. ~/d/rPa~nW.lXC:lmƉCR.ތh}哼5ɲϩ>/YRᥩyK>H$ _C̡3X @=:Rl\5C##;({-֜nD^ 7rw" 7Z'GT"$^)ˠ۩sUwuL`KӞZCEo1{D']q|--d7#7ж|'j5#0vA[c/m>R/q'$Xu])D@GE={Sdς}ykde\;1R3 L]ECncC~?]mc؋[bGLfh-DSguof8saV2)#،/!,chK!T2̜IP8Q4//JS(+lrR?N^N[)!BeӺ~Ap}r;@y ?3F!g2v-Kۯ@?űmcab\;g /WTH#,OCμLLfo3jK KzW}SxXFfXNM'^E=UI@q1 pt^Gc y9ޱH{Yd<T^Mf7 Kz`>&uT-NMhIM/P)eR"qt:O/^v uЦĊ{FiZ^'s~Ӊx4[ǍitA[ÚetMV'DB'++1V5/J΢A)T/U;瞕%|=$9f^i-ŴFH o+li53MMi?nР6?'|J'ݎ*Dby 2!|/YL&sЄ|"xՙd@I~Z`KM&VX{h! K*aϤp x`YIfv2':umTOnRt=40|х9zMS~ns}GB [YXܵ%9 ҫh3Uc[K1||jd l5)꭫R!-9W!NdBzNtV?ًMT22:ip; [5tv@oۆhrcʂgQ1"&0 X43ފڞ*)9P2AtM*qk5W7B,J}^l]~j$)nvGӺ5dm rjj*\<Z%<](_pثޏk'E筛5xZ _ofA*gqV7abTEi8gm4lc?Iz^>WKW2;ԦZ Ho%^vT[ g6= ξv̝=_awn朮”otaA+kx*'`qP$K]bOgi͏;ߤb{{\|C({Zꊎ"~ ETasx?1Ixk~gkOخ؄Ǖ-A%z$cQG3#KaPh<53qlIuhb\ٰ+ 8A^i=7-P;%8jpfT+c"q5 ]0`Pea \^IHdhzgN/kno{y./ި aOp006*]m<0Ʌ:nn.>J\"sO.h[nVu77@^[&CT;T F}v(0bY,#7" pk1B/@ȡ<\{-ق٥YlPǬ~5rʬھ]eQ ;)<*"hHzYT5ǟ=N][2_H96 Vߘr`dR(ġ} FPy\i[? ˢ>SZ9o>]-b=yћ+GW4zsxl _G)=ӂ-#dX*K/)7&}1%^V5J8VPZwZefX첽hKLYPr<>:#ǩXs<{Dj@0E$:6 ">CEw*:6UE,7ҮsOmvC6_<;^ yus0v{q}7K7t h="V&'ԑyjLƪ&z$v-!o>Y#v;< Vǭdu^YŶ~P8ndowKf`1Pwf*sҼn+ gcWȈX͸v"{&%2c6=۴4YJ-t0`>l/(㰃 x۵K } xK1f4{_p(}H ,V,| `#`]vl\SRl6Q%qW^,G!J*D-ٷ aY=F0|HmKO3]ї3acgEDj'_8f#bRBNNb_NS@Wx/@tf /SuPh ᄇ ~a5[zo!q+=ݖeKˆn~0I8] 96B2T[Z:ŋ|'M)Кh_nڠ#0vN>sIEB4<~=K`Vs$}YS(- 4W)maN4[^_c15ڨ._WVHaᝬ.z&/bX`yҐ,}wwW"DI <+>ή^]%sRa#u{@siM{!EI_kv5B.Ivhk3)}L˫A%xk/5@˃gs@65Ҕrb>^ZBRLj–JQ~HQ<gg4'`$u Vѝ.vꃛk\I>,f)ԬjR{}U~5WGI^1>QڸFy蜜Hxŝ{߱3?XBaHgCXk—6k(Ha-S5j$w _'9AFMmo/3njEXK :Ym;V@k\lDb{lBM# 涕[9\TA/2QkDQdZ9wt Ϧ㏛Ѡxv$ *-o~&@זݮMpy.wuQeqqQ*:`a7+R`L| 83a њ~p.4>_ r!`\. |qYpEAܠnwO6%)ߪL-R^B:'7}ijgH){'J.M H#s> *8g|,М~WW XDQjڮs]E _3S>/ qI!b]4]U3Yyl=Hr@&&hpyBFAU+g_)'\z425RYdp$> I8W5ru-돨$ 6<b@~'^-tjzVP#-6]vT\:w}Dr^X q7k ~] `) [nLa ^5&~-{pM| t[ϋ{^a\Z0C)̆'(zPy<X_Ŋc"#nFs\9YB}cHouVd|~Eh,/ :뢐ȇvTq[#\Da*'naza_v[jNO @xh]$n}PFDPuNLi8><&W^܋Tp6EzE_yO9Zp Fxmƹ @#v)Qf4=Mp O/~[ ];a,^DT"J'ʳ^ YL 4P}^#ԚSZU| A.Byhl<6lKx. hb~թC%+q=x4$ʀ.4DK dA JsM؃DKXqr촋^#MX`/.ۜn0#| D!ʳb=[UR0ͨ&jKΉL3^[ ͓ndۼ Ꮏ,jzbsɉɋҢHƚVzj%JXIR` nv]*;ܭm0l Y1OfW4Y!7p>6e"*:`FnHc  "Z7vtȒS>JD|S=Օ=5.N\1%[86>8tۏY 0܃RoT}dJGS%-;+ >~ޓM 8^hyN|OY/<wuC=?)m%eIq.&ɔNRjư$iVN*qU}lbgT]Y~%Z eg/I,~JΉ2Nb~P=>.B4F|#!UsCo^ku0C&[1~NzS}k,r.rPO\N=tm5-kK_0H|09=Y+P#QOpހF.|ڮSr^d9Ѡԝu\enGPHePz4 Q {@-jMH{ m].ɚ5V̫􂭦,;Uq~|!y'Jq_9&K y_dתS\/YfEL&H1җjXTus2XրZL^dA9D<+MG~D{.}<0)_ʐxϜR`s~h+K;@gIC5$)#ϓq +=qGSDB~K_oHHnws7Sba5~& aM^u)Y`qj[֛TaY_kD,r{"k2.j==% r坾+hV9{rrblkB;MC\4 w%@wX[u@&NoJ (e+Q B4Bzy#}E Y{YK`<ȍ%Z XDKXOjS'mS>_'fJc Ĉ͐O0k d?co9í){RA[Όxq%<" )3:wyDaѝ&cc luQ2U8(Ud_Zi.pm&uo\^Y4 D6ްT?A܀1vPVNLmY'xq6n\Jok>6~V`~>etWI;&8RUQAf˸7v|qخV O#1|{B3WCXgArxyklb@8/ hhu?;eYT嵾∌Vy(74d"[=mLA<75T3DM%#1&8?S2B쮰k#|&JvdGS N6'Ty䄟T?kBjHFHP`,Θ(~jzЊ4fm~{p9%6I3 lDzDCcQC~ڌhEdTk?5!8hpq Ñ1WꊸYx-]Ԋv1.Y sdNv>A9yZ1qf!w2ŰgPcGt+ :Wіid? b$8ec:>8;A."tWp4Ŕ7و?]Ζx)s穮x(^^^&մɺ9P>Ntv&Ε\hfugv+1_\=WKbQVX>(k }:F,7-"qZЛOoNaUJM*z\W]ߌUT҉ї& DċԪ"W+۾i}"d|~)i4 uR pXѼӼtͬoY+c4 _Lj]K\F 6 -hMs%X5)˥2^ 7.g=GiФ,jН.!41 Ŝt$x-┊:f\օ; {$?-%#WQ/cJT) 5F~WOD(hO~ qF]XԌ<ȡĮ9Lh<М}\B чYvͲW}i2M=0NA1Ld \qQz{[sqEPs.ToF#v|_In-a܌q\,Oǖn:ݗk7qrﹿeu|̗./OS :P ݾgHOH="m2؈V9)R=[)Z[b_u[F=A}ydvگxuc.N?(Yv.{2rFˠJľ2yi@Td0<3gZ"X公WfjtYTa:^E5Ex:;_TKd"2>PDr )j)#XтQ0s }izٳpe.%Ci' n& h›~TK\<"X ȠG,n%ΎH؅7 }jLxf }=L@|/H͝?T{X[69gD⋥*f@Rk~Iu Ā'A8;|?.3Yoek7^anj<ꕗ:%gj'ܧC4E&LW93&rfJNm6qw)@G߷O]#%cA-QT`h[?a>,W#>ݜVx{W" {hk˄HDrA8L+._q5U찌 `-G9 ~O045BBۚokB >d}O aЫȆaFGng(eHwQf|BLb3ݟB"Tc)+]sgN!¾]Y⛂/$a?nܔnQPw ?S|ߴiǒ) lm74v{",Mn[  P'"( 7蔺' u!%#R0E=zP+; fw--ۉ;56 &׻tr='o\W"_&>[JXcJvˉ[FlmHpȱ1޼037և1{1*dUnY?.0'@ň6y1c: YkVx@H6.; ג?}G-xiFm0H(m3saG[$*ы7fu2͸D+P피%dV .t Zi/BAkJg`qӼX+߄5QJRĿzQ J? JUL_ljUZ}1hեcQ`\aMذty5!nMS!eWɊ|HK6xE"LXړx4dq+Pz`ȹ 0RE棐 2 5 e?)ն,67D{|GpPm13wՉ 9|:*s[ls)N0.aPIթN#u\#kGP>?M1LsͰZW/l甈D*XK1qAT8,¼}- b/!ݤYP"-DWcȕ1렆X£w.վ|.wISOsq^`,Q3:zy r76g p952= TKE/BP@ŁSa{U6+U$$;3;'vQ}!~E|0YYe^nvVNnF[ZVxo%sm O},FpJ‹Y`B kkZD p7'\J [ l~.ѺX#c2Ėp6`I &I.k;(Cy?L\h GXk \v791T0ֿ!ي0LXlTNI {Kc3}uգ@3pFpQ0I ؂!uvbi04ybҬ;Iӽ3os^/b5-đS1/csU%z8l^oK[iwvK7}?aMGc3Y9JQA0~ J#`\'V.\@V\M?`E{,!fܠrJ:H?XዝII)in_fx_ޙ\1]q.%)Vey(r&OA"ϖ+i&눣y53 9:lD"rNia}Xloc]5tN $ڧf;M1蚨?AH񢤒d)!C"rKQY?_.wA ?"5c7s-eB`p7)#M8?ǫ̑RNjX0&JP'PפjݾSH(@|?Zl/)=Huye 8 T=lq߅mn()t*eT,64%n͙3wC+"UL]ӬɖԳKɄ$2xݘ%)+Sh# mbY`}MI 8z,5Ma>JBD$!a+GMVbÉ":jqcu\FLy,;),YdXDEng^H&_j(Kp]5Ԣ`F.+(T"Wnii^QQJ/ G"|4~ c3-AB ׶f{,ViaU iȗ2zOq?){!ۦPh",}{.j$@S#CU/{90ɶ*L\qRdsM*Ĺ)ɕj*Nމs.uT#)vDV೬U?1,ZڸJ$k[zCН$!T7SA.=Ѵp{5`AKBC,oPA8u˶\-Iߣ")P`yaJɸ xw|?@9n J"M k/IJ- RQJۀ.ځO,Tcz.] SdVۍs〕 GQ+ǦO@p.o{8.;!3 ZQh?wTo)!t$mZ"AY!e` -MdRWꭕ]344yVflC]/K|BF:hho,f Fӹl9zds1R2bo+hb&脚%*[ xTsvtg8ц)Ս'Naq60%h/qb^Q[/oSlT'b@eXw (|XlˋA` comrRJ5/HfP2{$&8Vl H@:_\!z){~m ǧ_س)"psI{X;"j.!i.Д4b2~LlC*oVYc$~2OԎl<W o\Eʉ6-G#f){h7U7 y!-C<}<̾L:2w)ԝ~_aE+\&Es&0]%5?T7%rÓS\WflokETDv9/&8MwGhfݠ H$߁zMME#MHEo+1?FEʜ3cA#87y{lERq@XK;i-w[h+,HC:9&7*)",C{a@$oE@%ՅJĀ;xʓrGMH,!%q 'I {"}ߜ6ǃg.V|a[* O2^x'։!054cA/I42v*?eS**}&`l]ׁ'5<S|1f̘20+zma4 Uf}:|u+ׯY~9 vki[ꁜ}bn0! \ÆGu&^LM0)i g~qм1{\ϒd#ˣֿ"'VY>05G IfdV,'Un^(wu.&H.&h8 >.*pҽd!VL!~۾Y82W̪͙FL_{ sp[`d:Vr_cnQn뢛WX&PMĴ6EF{nik5[ΚP@[Yy:k|N& U ur?\h˽D!ܖR#K{IS,Xw L:?{D,4h'K#ǨA]|P‹,8L3%MWy枦9=cDX#/QucX YΝ?oHIԀXE|խẄ́ulӃB0oOc0"RMqȓα <׀1޻]J"KR0D2U9,ʞYN<9fQUH YFncQƚ$\p2*#Xi%ǘ1dMJ+pڑ~UzצE%ЛUZ*^l6k7xVrD)P;xVReY[W-É(/g`j I&=rj`R]G0zQL'%}Jh|#ZE=k~iU02dk24X%ɬ0]K$,Sx@NO,!) OfqLQxJg@ bf&Mؕ*9LeE;淄uhJDX|ԜJH džsǾ+=L' VBΡQ]RǞlM_cJl5rD9%1;ac۳q_颃ԀV?b$z EsQh Y`%~L0/@j0 eHáEob+ Jnoծۋ@ 9tcMNxըugkT"qs`ಃmLH({}S w 5~`/"Ph)oQ)B@϶9)j>0TJ}ʟ_mPCcjȪ$nն_.SN.P=Y7 7/aG HOsukV^4GW,:!kGBҼewe&T')>6Nam}s%ׇ~n '\' B.; '  W}NٴRY_k8jZB_ !M$$jy* 7!$GNL y~xdVm83r|V͂r}K %r`Lfd=FJLHֲ)ݼ;;^<~@rooG8>T+RV?Dԙu(B0r9 |1/o.']+Bʁ`#v^'˸7Z5nޚ2r@Za7Vhl) v0/\Ӝ&'t,޲o"t )'Ӈ٠_a .Ԝc!KbDw9ۊDE4M*N3Gܕ%y?*5?ZY&TuSw2kϘ{HR6tII67P47iU0mYY2Ou͡tWXaj+qlWz,x̖ 򿷦>Rr+; ͼ\1W~tp^f2R,bUbu(AJ۱nB0x_a6IC*ɆQԲ#O<n,?xס)s(O%ƃ'-tN2kO8o3ZìxλBfYmS0En!gl64uaî\p t2SASmߟ"n>̞ 98!peBܫtyW#egƵ yI'+FTABqq/Ҏ7ۓφ(.Egr1ȍuC`oN_ V$\.X妡Nuf28/xhgDP^qd~+DJrRt͋R.r׿QMِ襨Pu8Uvj5qԿ0'$PcMCgZ+`6Yxt)=J6@ it0֍j%p~UGSnZw:T|g‘ɜm:4Yߝ-Udx A6ߘ<Xh*$ՁxXG~KD 3̠:nPAT8J~94KގPsLvWߣ<"ۖi _ i'Igl|s0>wl2/x'v\o<@\CtJaŭoā* ?r4",i([#k.~RjQn?8F۔S~bk Z^_`rw]W/ޟHm {QNˣI=-,&%óH=j[HT'<{1^.#X1{ VwZX㟱7w%NH.+VY"سaO.Jz S2*}98IxF_%s"\6ק7 %$j( WmXo6 ;\Rّ&~}[3 趂ؘd[zpڵ9U gh<:d;IfSf!؍!^ esbѫSUI ,HI#@m7S%e-}ri8hAϫ( LYPCr#h}2)W676 eʏ~?oe.\}F*`l6A֏4:Y(#typqn*BXnbb84@k|bRysos汴!L yy%%`!'4pe &>JĘaˈ\-M`)UH?PX JzEzZ}tRf_ߍ;;2Tzm;gKti;R<-qƕbwņ@eJgE+a },[ f'@=GUY?ތ3 qC/vG,Ч/qy_}[iSO Bz1|/^= ={60p_ǩI%lOcvO 2'+ _=Z޵9ewCd6H0lt8j~5 <7B@XyFǺc-jZ1 *%mT+-.:a+qL! ޳d&װg , 20 vgUPZ3a u"Ve*<[|՟ntZ *DҟUYχTCC1f|1 Ϟ^h!AaASj_*wG%`Y5S9TLA^`KM[jub/{yO+r/ǖݖ*k^⸝İPO#-H﫞gĊnSqPHQq;`)B|/W]e0Fg5LBvލYʒ=dR,PbbrqQ(HXqx/߯p$r݊Bb;N  ˸J&(]e$g3/{V'-:r u`:i~Cˎb8DNcp𵡳~m#pb I^!iO\hL]ˢu\=6i-АN.Di x aHGƶw| 7dоXV /Rr__+o^ O 45T 2ޝ-tP#9f9e,iȈW)OQO||#6RA$7,Ln~ f1fΧLO/57R,qEvKj`zC ix9srcXiƞ$\;u{Oׄ9oln"7+$>;sY_4q!9UF\GFN]k?TKT줋ܚOK <'xIԁ4_=< r-|WօV? 'xݪ8'GkC-B'sڸ~5HŞ;Iʶg{#J$8Ӝ#P[LO B+F6Сz "0cj[Я\mL^PCެjjNTk>OtmwCR,+JlOS*yS,ƞ:+DCcm6&P#|.3V8P|Ge-Śf;!e%͏$0{}|gvX_O#, Ia̳_ L蹙%O8Iʖ|?ezǷʩ&$iS;%YE'\]z(:BG 6RQ` зh^aq{2׆4 RvKmBgq *ͱgd+e]!yrC͂y֞)1ȉ3֒z3k$yu> ,2}־YՀ])+\Di/X?mLȉ"=YƝگ,6k1 :Z"X8"'CoeOV9߮(K.F%_UyӶBb4V*jt94hN8(FM){-K$7su:pK(v!Qbnر g/gX2 7 Np'_Ӱ {ɠ">LT}Ȭ/} tPa B*IhMI,ɮ)dāRH~(3iwإpF>b6RŽ/*l)0O<Lmx鱗hcё~HS`}ZUַ<(;UB5;t?ed./ڑebxZ\Bdd1uYPCK@34ԢF5rrpIfq N1mI i5b +:DuJdzh}1r>糁^\iܑf*ǏJRB MI#BGA4o /h:6qgQ۫ zVoxB~k*> jj}S¢ߧ$2]7e4rQ<]d%G`nUqpcB1Aǂ.;Gr&$ JU^g."ߕ8e~Y3}aDfyv!&# SKi`B@t |r)id'V\ *G3'V>^t`?_yxcOJTf|eJtr+C'ێ3/d:!DXwY5(0N B]YLj9 6S/F!"6L}nYoM+皓#)[O2ϲ9M4$cm.1I $t6SsO=(j9+ZԦ)D%-0T׭b0)#3")$Af \,B=Jy0(7f n glw"=$ уrםr@`_oj.ܤu26\4Q~E9Ϸ|/ OZLO!O2e(mS;s^~67@gs vOf Cġ yc!,;Cf_HXH;$roOwֆX 6SE^-y:ܕ"< 6Lh$4YښeKq 5q :ގ|\|'mT;us`/Xݨȋ^`djcjPW{=n∭M%_slod;|:{KaW')(14 ;34v[CRVCWZt-h$xiX.[ZXfIN.Pe ^9 1CWj'h.趧IBޏ\iRz9)^$xR{T99NQ;C]4Sr[{|ED a.+Ur[ q딅|i[k ?1$AziP?q/l4s4 "LF\OrЈ{k3X NXzݯ)hOIs1bVMKmEwX#%v ]PnRLp_o +dtc]pd -GVr8 X{)~r]kZOU/jk"z!FXOcU!myez]UEAAcY-sݳOyr7΢&d"d|FX a>hnO~rXGAٝ`;mf E 4߰xh?䒜2R]ͧRpK4HLjkhK\ncۏ ]gy{!ʂ򁙮9s1)Ml+rPI9<] 8O3-!yHg`h^G%c{ma2>΢c"< 83tb)lΥӺ:h&L{/J0| +/P=qQEQ/dvaQʝÔ/–Z |>נFP'plY`: ϺxqR[4 v6xtW{bnK͝s\-ln TYJ׬dqZaODeREϦ|^#jۧHP[℺MUr3|\,}̮9<=æ ^_ߛʨbX ~ؿSD9rZG\Ca$d!bJI *:R?|fv578WQGt Akf: >n~PXnF T=_S4@|MCdA_6wSew&J( &r!_Kr Q⛇>`En U2ڜXiDjV;ۏQܬN +嘝QJ~H=d`ms9%~`uAǰxRL' H?aK':s , U6R<,[m 4p|jaC+6]0/ѓ[&I-w45J )-s[x/zQBj=o{gǛp/bm=epSa ̣d5{Ó4;[u<l%6(3Tib8ޡ,@O^:7%`_lX WSkN[ kbY<Ŵ3ONn1iДBiA~O0">NW@ڜjGL` ] GXEQ w ) ~L#_E Tq1CfYs#}Uk$Z3.Gl/mK$\vtUń#'O5)ݒjwDH=v דv0{"s:vHPc'/rql 7M&%ןbr]mpvb,C ISMa RcvWQ/ C݂Z> hNOjP;F!,O_*`4Z$v98G Ï4,kvˣY:nZc<7P8bi IP@7lRn rEx(q ډ̿R sk_vxl{C"9*{MK|V>1G2Yw5+uq-(_=L:#D^ \ÐĘ-~J9\& Fx1K>uhk0]7 qZ2uB2q(1`Q3v" 닞X㝷NƅG_է.b 2 yֶVۢR_5ƌ '@uhqDd?dbGm+'1KOFT` Xկ1xxd8=Vs K_$~8|]Ϩe˘BJװBz4<̣u eU `0pF3=p/zFF?D֝tGJ.5܇3K|aMDŽ+.=v5F$#ÉXUF5(R3 R i>w9!4zą}X B Ԏ}}PH\![̢3Jzwc>&*ļ]SFCϙ ^FAs=RPDu9/j2R^ **1` F,nlc&;RGB8$K$Su_yLQLrSnXGCנ?L*GSE”PAeOw9&rjv)"o׸90l|մOh7!!316BOdˊ $XK'3O-fyK&,Y%*@?zl0ޝ%ik)gE~N Va){Apqj9]g=ՂG]vStFV6B|7̓az<;X`:./RDJoWdJR(rv 7絞4LC]C|kz2#I(,рBIP?F07&9C×45Q0I.-6IЪ7mA%0"hlU5*Z9sg|3΍zByP\cOd NJh:87']srӞHdYDnrT)O3gnU8)E N!]Us>ئ` JfRZ ]*Xl-uQnpHʹ^";;"\dHw3"+6HIkvy%_oHXǬfM%OJ{!W¯g9Y5rLFMr)qDGH=(!D7rC+5N* !ZM0A&nLpKs890EVG<6(:|-G|"y.YC{]:)5E7g嵴`_?AvǹT@FaeqN f;9Ԕ H,Pu|ib!Ce͘?MYD3}^J۳"{SHܼ|%*7V&x%o#܇:p]\z7KA7?w>TaзB+b6q5C6aՖh۵rlabX8 :5ǽ}: BZH^zY]l}/FC-HRF~yP5fCNkS#b ,lXKȩ fx3d N{]4=Ixmf^NKZc5"oOKPKL8YRpfuiskl 0k:cBevh$U0\Dd}FmK_M%U*`B܀ u8"*""q39őPaKØw7oؾdVz%u\횈-/'".P_j7JSfH&*R&~`ACl}LțC< ND)AyͿe(7L6xRxP&%`ɰ1"w"+tQ'3 x#9JV?bRW`J;;N?A0鴱}O`6RLTo.KeσRz[W"NTu WOI0`Q;?juQiCd :q2lWkG YعM ӭD*qzl=vuESjl*%U4Y:?1\dM 04])R'FEuҩ $ڪ92 =Q?| w>WSZ8FS3Bs bco1QŤ`Foň)g4Zi2ꙤXNTu F9faC[Nn1`3څN@|W4x=w~U5lj"g64P8rk fWD^JVpBYa"jͦ3<INjA!b l̘bFja5`6$ uΗfBqWqX|7Hѯ0"{I/ ?Vp=%LJrbm&oHEj"sbK&NKqxsCӎ˂;V,V|T9ûj}Y>f-TC%pC{5U?<6ç0mJlm5B8@,6]Z Ɋ מbo0$h5>ݦ;;}`ݺT6HaF.1$:$􊺂)"]aMfg]@WtG9#nb2A5K3ɼt<8Sr_Ӱ/ةB(xX84=~8HyJz]Oqfw`[c=$4%x^RfIU>]<1O@R9b+id_(l/h$?7TV̭6,EjɧUJme2 @N["ԔPE2M=+X$&v\1Y,7qҍ%ΌY6J5Afyt `Dviq2P@`5^q^_] Cp?!V#%wSN_&\ #McMX#%`cQxVUx8,Xm&}`Rlu*i{VC1`H˜xl+ U[D` x>ĵ*)QI=8;x*r|[-J\P4f&&VaŨEմ }U8LH*rCiZ0[1&fh)x7`i;P>gOT~:{''V 3S}XD90ۛFdJ`z58rA.7<ޞ7˯`MYv7B ?}$z#kw>NAܔ2iHo\­Ux ?۹Q0ir%xym5ɌAkɀtqX)O@1!SG2_Y?~?PzPcWp"Iy3s-Hy [Zg;,V>> QMeZ)8ZN5::jث¡dϕCSJ*E ;T(t}B?=!rbN_G= UGd2%~'Z:b([ǝZFlf?D;b8ĥ/.hDE^zWW3P:)a]/> cȦdk DX!9q T"c#ˢ9QJ ܓm}M= giBleSF-vܩ!.P#L,e3RMy'x8WI J#ͼ Rs bD3#J}~À.(!lDrɋAq85)l7\QekmbJ9x^~ꠢ,o*$#6m:׿wf-JJZy,Gم?X n+&h5U}M}g|iQW(q\;G/ lt"m,͈2zIG9I+e?1r D3(E.4_Kv1lH!2,ID&*h.4e]JޒGU1n&K+b lbʻ_ULۦ9E$ŬUA,uKFrd 2 ,ݬ]bm$P QyS`Q!eUiEuxk}S" U!<ϵ+gW9MAnlO{i]w]󱢤2F+ђ}[ȩeYdyWr=FZ|q,sBn^ne@(yD:hV얒g|D`Jη^YK_Ps랅V΁+GGby8_BbVXΰi[D|C)_q晟z"/2@^D!K|>l7_0'RՌBLRzaAv͊}.xΐa!nODTVMD|+fßOH_^AV}Ibi&N9z ރ|l7Tk;+0(dqs/+vmIdDڍbA'; bMf" jL\h1Nۢ2@g1O1|27]|WgE \nژObȁ?A%--MZ.˴wdq8`QƒcMESr^@;{O -^&aLH Z_3.;M$@@_zDYdTOn2vhN\S'} >NkVcV/i6d-e :?c`I*i|ʷQĪd -Y P +LF ]Zpd.*hn Gql՝?7H"2!ao IVu^ &S9iъy 9\zSXtFlUAt1e8WҪ͖ӠmʤB{\*dJfȴbNminL]dHqΜU;7Il޸ #7V,X-PaFݭGs1˜@i/Ar/0REDOROw1FYiAf_TXF/0,+8F Jr[3D:@էQ[I7~6H~*O~ߏKVldl0Wn9 {_@m;."|,uVGלWo"j*9g@طwT{,*'Hd7n Bu-?@UhKKWeVfKw VУMҫwXÙ-wgZKy@8:nCrAH/[oJy)R5xE檰pBKԋ"۷ N:*h=V2Ѱ9}<^TBЂ/\F}Q%O T],kmӅ~GYHv+2jb%Nmvh;I *cXY{s|} }+qwIH x ;vwSR=n %3;tg3n|!MV,w*; }X4DU%dNW oE=+)"v| [ⳝoN hNȑ> geꊮ񬽿bMw!t, 7 K0[hn ƇEh"&5vVR܃._w ?ӣQiqWٰ҉JqmdRVlg^GLcM2F+͐=T95WhD6W򂇋r`|-`32,4DMͤ>4i\q&w3dHc9dx| MxQig6_C۰-@\]py{ aJ;:_s--GyT k(U@ۅ'w\^buOgFєIOM$Af=NbddH^Uip4&nؼUEJcl-<9(i])Q8eov2$п ʴņ怮;{UW\;~_@ C$Iމ[_t~i1Hy+ S[~3* }"W6 'U`&$M&kW:Y *W-Ջ@vhw5z'4쥁3n,}Z-9*ZF!>FT &/Jnnt3,HߌG:0@_|SIs=K!ޛ"gg 9תꭗ*>PyeW$bv3 mCG},; 1V|x0 p-cQHovSϡ1v'UwL^p`P6ZX= }tK[%{1l?XH2 #й'}m>Cl㌪A |Mz)Mx"7 ⽤[fÒgS`2WX& q|!6Y%p"9ܺ>-5>DoqlG?:ͱe 1~Mxk^qIfkmN[u5$u%t*eEk"JcU6l ^ X5g+ʄ}{=+p];ĽcQMRDJC?ߞ}Sq&๚&uLgL)8[wi5T}UN);=HvʣD^nU;J'e]UyZ^T(es7 ȋ`j|xNF]_*d{+`Z(n(~к&?ؤYtᥜ*c1ΡJўajDFDGiB&N<O 9VlY攙M屇/ ߹BDf^˯^6^gTW+X5$k-QhWThp/씴dQuģÅՁli !MYIv,eg"MV 3Y8^ seNQ 22s4~qƅɬdX,sw&,aLbu{.^#TKaaCHy4lTKaV`WfSm6#?ېY @jYҤ7v0㪐Yv 'v|"61/PݧZBas&ωł t`2m{pxdpX@f[ԝ$72WeA/atիTH r4Ӹ޲f0Km"MqWk2ң.vKgDdT/ʆ:6&,IY/]~Ŋ{&Vq`z%7ϢI#4E醭cPޞk Z)1rۘ[s7J D'׊kz,j{ #6 qͥ 4IBL*' Ǜ ύ/[KV*C{E SjB( '0Eee-7 ~<Q]clb3RT&s('Ȗf. 9S(VpP9{9:F?xgR&1h(v,#Lr$dnY>,/=*Ol\`5qm[.?Xoڎ-PרR$rl:Af& YCQ?10&}3פg-1A܁s|YԑLqp* 9l ;8If̴1~y4CvlOP;y:دQLj%C)_~'"%`̨jIٺ-ƹwTS(An#r"=`:H>*HJlP%Y-$<00^{&Zc\]P3K^ԭq_l4m2\qF/ʗq9мtw+1Ȕŭڿ`u>X `>UM_ޚLtG<#]g35vЎkyF˛t?FPRڢ c1,2Ys)<:䀍рTő@ZbQ5Z17ˇj>J+V? `x!wɝy~$`d'E Y*eDrz9MŹuO,0a%u".m @#1pdS%#3v#VUNX39g`\rl-5H &xi<_uBYε[٫]*sh{"EʸCZs I+ș\5ݧ SR(1nO0͒8ap;ιQ{"ֽh9 ČO56K˯ {tNN|fRtvep{៺ƈ]%`>?yD6prOI)Nq,-~ʵ6}O _:)7 휢cӖ*MGcRBۚE܀z”t/ms|pfZ"F2#̥ػqR,FH [[D/5{u&']'z?E:R6,5'_ְTW>bWaBz-G8N$ےcDfoIoA>1f2X]rr{t s,"Z&MCTe,jsTC6s}}C۩ٺEؿ)tIgq_مޞT jWp(-:Z8v%<=e?>?haGy /=ah4/ 5 z۷i͡}@;ŘO<_L B`H۾9+zGNR JDSVi7rm퀶Q!@?xc$wレH̽7d^Mbl!C0 `Y'=uaLU C6F^k,ce؆,d7_%bAAtb0mXGtSSlMW_ `߹pPtGOK$xg'z֙Kv:W IW;Py.R9q)n3ң tdY8ﯷ@m89Ü檪W9%ֵ9} b.7tw:*W(+l \풆ϧ{2G2{Ԑ\^Qb0t0ΡEac7JN]Uzexe(.V7͕ϟBbO h=`\ߕ *b2*^t +N9-kP8Ho/{855J'9֣QCJ֛=M'#D[P{6ےt"j )#gvʍ yd>︹Z&0x>lcaX={EcwoU,Eihn(diiͤԜywQK93b=ehV룙(:1P[$}HMľa)5TGL vwN`Kicx@Mx6+mֳ6}e2V$4 ,TGE[(c$8C4ediA翹U@K.<݅v4N"e(}}6P,[2> OjI :Hq}JKSI;d5q/p2O $t(̢!\j䃸zO~]i;v?pY"ڛ5 aӿ! R~B)Xh#ԶOOUp| (>I:ZNܨJ.L\+cA5>fdG6e[|퓠p~eJf3=9ӄݻFʷ "IsV}Jm3AgƎx?@r ZΐDz.5yC2 F|hzUaxGL߹Mi6Nsq-}A7xs[׾4\\y. =Ԉ~aZ:uj3^XS C"a2**TŭtI}Ll&8-2T8%ZUGā]oB,h0 u{;i7<90?V\6AmXKѐsq"?dI65낥Nt;y6>&Ln@?zy%5՞yTgոIW$Uۘp9Q0wLNta KL1H2,/bNSӡcvbua7R>]^ij,o w*0w+ #qjl ՗F=k @{۰}<^KA/Yn&}q,y)ɾ DFC`K88Jt @LaJoӽ>} '#+$3QWO?Z 82=ibRH&bCy7>riZ} oJ$ 01 sEiWrӴ&dExPʀVXT_hkL/jcz}8w-]^+E/D7`X~if t9G]TxYv%xPh8*07&5HLAyJ'Uj8b2{8~T1>lw'7}>U܄_1[( 'iX]i4Io!X5&ꫦeXGTe:rC?N4U8'ĨmҧZŸ  ζjbQZ2,Q[3ipZV"ttŴtfmڃ21\V*;[+ D "(qB0`xkʋU3)W5J {jY8| 46iGvCU6E^3*I%>_x z|Ʊʒ AY[8UcK]" AXB0`OYaXSʈn32u-$~S%UA` )bpSm 't/-"|n?lיHc]|"CM`1,z ub_+[9å,.R4V:ɚ-$]a:64eA6SG^{#hi,&$$i˩?V(FUcN|2%e|IocC=;tU/3g~l>TLlx3>%H5a+"gd2"O: UD1: `g:DS /5 `}Sv]z(Y1d?nabRYƎ~ykM w=ʻJONՙ nQ~le@F<˾J^[D3KTnOsb:(ә 8=Ϥ- =" :?hɋ+ͺ,A&Co;DIN mIBs i>`Ls$ ((/x̐:gI/'\0TRuQx/׉*E_fDB'^tưR~4Hm %U x>nbLD8FMfivX@s&q^~[?Uh{#`-K*x#/AJRAG6`ƥ<^W/3P*5ROFcQ$A#q ΃{b+ط<1cj;q~q>5%obmtޛ*`L|52gNfFf"w-Ch eX+{Xu~A !;. ӒC~-swyug+Vֲ吚_`m F)g/6/z1 s{+BY>; YL _%؂.\_EAH![%5COVtE v 4 s=v%@EZ٭c(|"B~~o=>njwpN޵qs_vZ4e}Lp%r+yTj i<;)88 @wKCw}!撩 ?*棆hP%ԓ%d'h5s$6)n\r]wf~W6N(zM&K"-#9xZSĜt^F|[ zpönUv=WV7ɔl#p cw &N#4XՙĦ=ј,ڪZRtm^J>BGvIWGs,vpZl0ec|D@0y>m#-=g E<=8<6M<O: (ifŕw@00"ˍzCLYh3usxܭH$l1 U66>DONg; x7(ܖd8N1DX)Ьaw,+=c"h텉1(7ZN3!pZQ+Ɛ/drH'_"YR @; 7X}81l}.I!픴[B,mN31vblT-p:\1&%]Z*$Yzw\={DKԉ }BAlWfQrGJgbEv'O ǜ1j8pYL?uⓠmV$4wE@2]=(kV2W8g0R+0:X-L>fXvR'?z%N.Yw=%`O(ā$Fc&S懋GUp&5O=zҬ$."HsfB1E~q TPK#^g~![`72ݶҩ1KZC^,a=ҼlgKsD\=WmiB>G}NV\~ݼG]W?5=9Ftaq* */b#Z V2Q% CU:'I)&#+^k3T>hg NzD5fĎhHp mxDl_@fmkp!]K]4^1ˋ*](1(o#)~O 9u0(`,+NB}[ /Qz |m--YF)>ԇ_l1X,e'O᳥Qto"~eUO8Pv}h&6X.1GH?ۜz9mq0kZWb%A˞>^N0lbb9~a&pp׏ڮp 1i j. z$5+=Q83_Qk% sߍey2"5V"c2[p!Vv&]!0<O!zB<{\Ȓo`/ L7Nؗ8rePTʉJXr 4|OV2+ mWLM)o7> ({dD)! m/s~훨1n-LFEE}Ge%,9fl\4aZuk  4 Qbe%-Sr!:dT^ZCDDE:=*G1I˝ D|&-m IVTeϺXyHwX )P8*U3m^};O*f\$_> .SY UEB9!L7tK~Fw+̋KmP5:+(q^GA6iWNׅxo(pUUbkeK4j9K)RI5 )jYYL[nңo;x $n#yO̳`BJ1| 8[ pgq`d+k Ή^^$HH+'vEcEOWX 72A*4KhLj5Zlt⓺BZ R &eAЦklr$/iIk@v6]8oA7V[eZ|P(ފn,x珸R~, L%"^VPf_Bi+# "0ۤķ<1RU,{l$S6gTɬi+&i*LX05=Ĺ# KW t-o0֐"? ~4|;5!8R5,G>='TJ%|s;;XrBomHDw ';pkġk |R5:@O@%g%qm>NnQ+} 7T.B=d-C?L[/v992jݹ:fr67PNCk{'e82tYdr(e@Y0*s*^d6_ &5;,nBXۻb!-*|pzB ߕN{)}JP##REs'm֦^mAPaYx-э{)Wׯ`qkiMRڔ%M]JG*³,?I-.Om콝F6Xͥ*(EOtW4_8nJYɌ)V1~0  %H&p{O*i_j=-)ݗ9|F^g<9>% 7LyXR3 %~!oCﬦMT d|K*2@GLt2]4#r >`j9rjγd,;Ͻ8h8͎3nEBW1EI]80KD.%eD^=9$[aElMn, M!zum1\K 7Fn-ӗQx(G:C=0p)xJƫLz{mݶ]]}ؒ$@ޤY50w;ircĕ.-?s#o`XG9c0/-]݂ä QӅG/IsNEУxaftPx_)f+&@V~AM7Qh>PPfS2 xz4QK8`Y<ۙtkky~}-ԊEm=uY0N=놓tIS7| fD덶1xUPxђ]vrS-;R~t>\]#Uq_ hVY!*OFcJ*&l]L-ǃ(;:7~0s%5#2Q9QIznFi^ OԃtKL"10ںǿ&bj"@nʇPKREce<2#f6ڱs%:0ҙAs]B~e܎p(ѐHiE8e#خJB*`g`(᪩`(=@3>UJ|".D$>LE~sH.iEV:7_9n*,0R .AKvUѡiW~D΋`+? {T?|:4Fyۀ-LzwC[Qnay9Vtʥ4T#Yd{b1`ZD1zIvs0Eۤ MX;v1njCs~aoL?vXxJ I[' DR t KOC hf*7k@{ <%g@ςc]0;`a()E9I& rةtC 0): ȕHہ7~r$&ǘPin5i'PKȸ,\ R{U59Ieȕíu:Jd!Բm\ЫR@*? }q4mY[X17y]`Y6W+  cFSQȑce:Z)l6gA$ F:%k !3/kG i~g[4a=1Ѝ%,>1Wy9&ƎhKdsk{! $&_a1e@jFja }WRDr} Yi# ^G#"MjZ;FT:1-р\nu^-/ ~EUEoTӘ Ijkf>⒜Qx5t:cxQiA: cel|[Ð=;J_:ry(8+*@nw`Gٚ9& RO>.н rIk$j}DMHDGndVCF:^9x ^KfT!ӚٔtJ.[q?TQ!>#kPKlTLsNck- ]2B!V*XSAg>5."yUKi3SAma4]z[5/`m( ag^yV @) EQ2Xv3ڟijZF*+`=٦ή;My5E7nOFܯ=:C0|a@cY>kzN@yo`aLR ~LLPi,OV4 G)ldy!jtʰÀP_ '&){§Њt9qM4G`^b(V| |5L+&XXG*E e>*/,AXhel{ DQ ncOM)aHDjV46oM^?*N@w4RmEs3XDK[Ԛ^! })_NoS+qfM;g]|尥$0nW=<ֽ%.xYA/6; E!sCMKǪok)fj+ܷOCi'm wSd5~ ҉Qw:^n넅 tUkx \@ G'"x\_<ݳG7[XUZ:fd>DAC҅1nHw8̀4d*_"BJЍgw#W1\OPnu2U8#Gw_WM܃SxX"&Y|_qrу&!Jǭ 4ЭUvEķ#˩QkFt98 ZY7 Ы&vo+C)[&ٸ1{ؠ b8 ipRY{ޯ6%J峉LiG$6?D! KdZGaƄ~@ r) kB0HUg~uVT*k+}{'o6W:\`M Tcj Θ?9Dz<Յ|h Z d[҄RP;g ^ƅZwGZ";|Lr⍍0 Nz'tR]=ۦtKfR'G 0"-} )}!})Ĵ!uSߟ1OIGLVUJjz>Jc'XsbfD6<|uoj_ݙġn& y65χjJ*z?fּԔiz (B-]Jkj:ΫFeR_vzkE`*J;Le"qҊ$W ;/k0E7NEm*1 7ׁ D]-L±ˣ$$oGZsŔ[!&vDJctH{Qر b'U.[H5/ @Q8TH뽖I_qbZRbQ]7̉DETM]yd(aC &ݍ4>y/ugMμӋI^3ؙrV ~{AcXBP+̈|"/|ﮒE5[ zb1hpиU4- Bfigb0B EDa1p%XBW|U$oɡo(9u{, 1pO1],}IZv^ d 9ZC[L/W΁l=TKff \ -u;f/e}ҕp;j!imc}lCBz=D 3j !JJ*b'JhpJctuRMmvoaWH`c7oVdR$ֲ[Ȏ=O/u,@Ƕ(ERoZ1O(p=B̫O3V{䲘t/ܑ7 y]AiQqzmHfk]&Ǻ~^q4\P/}oK3 xy_N{q;=›;H{SԚ|'7J,FQdYk40d {D]G| dL3qʻ;b䈎 ܗTalBY<(rUU1Et{? )E ~O*G_^jY8A,{2PXRC2ւƬgr.kb)7Aؼ4@GF:MvL>Ƭ*kyz#Dݖ˴<.AJS+eAȴx  銞WAG1=n'gһhҀ~1;t-k"5aHmd.ozآHOgm '8V*ŹlfQ]{ 镈 pڟ%&?1t¬fo҉nZuQ^ؤG'~-d*utʨ#ЂТ+l.ǏB0ȫO?IXWU +Ί2}vDŹ]ʪ3G~LU㝫v@Sl]i@rt!Owr=B"}/˗.M7rY,8xo&D@ʾuwk9]xu;bb9ާ {5:J$ k"&G i<6y#^*RrJ7Ěލebn[vJ 7h$I3oxW'P@4 {y[E%P7]riv4g9m-ys?9 xb{+jQY?T X }{ otP#7H{+-^s@A4U^٢Ԫ_G#ýW)w0g2bRջNQ*g:8A(M@=?m%8T]gb$,oYk Ҹ(fIfsC>_ngwUp4?!SĦ4%=ia7D՛Nn!>lIr$A@my09jiI sQ^ʜDz )ZFzMI wu,!uԯƀ_%"ܓi5T*-! <';M#1ZlJ1XyX&0!Is.x动۬e^࿫<J_Wok GEd󌀙%` iHhⰠVBIc/g-ψ+ &xm{Q1I]sZbL|FLyjf{goVB&j9"O1LOVQKɚ3fڲ Bo8|Jn!fep3,i "v a`_,.p칵G. $j[rBmUL)K s,-;+87= 4e5b<OHEB7|2 )țh0}mKZt8ds -s=]6yV#ir r5x#0:6#%ir̖2t>#u%WͿ-J:&d$'sv orv,^~A=vhN7vQv$  t="DViD٫{(Ό|M523LV^z8Rˎ۸ӡ >q3nqnmw#8+l9L^,1ډ g< WD'eW X xwXYj&c|U7G\I[]ġ}`?6ǎxu" R14TZ fE}TMXQ01h0aN3`gKL=x4{G۔w&ɖ`HaN&ն+v ` .ϭ-Y[wR#c@E10Wt~7޸k/QD!9^ƨ}3*"XyOZQZ^DiS2dDᘴtlYn ^5S1<:a3GZBZQ%tB1j#L,LiD+^CyQӂPy"M( xR1ǟ#×>ߠ'_ Rn#Uj!?{ jRR3c Vc.PeG:pk6Amr`7v/2mEFMtiX= 4GtE=1T@2яJpU@]xUIYOqnVeHDF` { `Xƒ6Ǝ&[zk౴!_ܺ]cշZ2aG+q{:ZʐUz䳴%c^Σ#f7VN62Xa"=B@U _rDo `,HNlW1!+pz׿M3s0DfF @rA Xq0g =SJp9n!N^DQ3c+s9m+չPzHF<$˫i 45pcu/X47~#DN!"NZ+~f ( $8x%$adۼh{ .; egt ۴ZIo‚.sV}?R>/Ј u3M{X^z֧&kIjGaJqzTN9ي[c]]rS̝*(\ :keLJıoE>@uJ_QOZȉ 汝ecQ啬ih&u@iIWgy65"私B\伣?.$L\ܒy"\44J] #ȫ> +UD5>P-! `Q.\^#xE-D8PTm|Lv. W`.D )*bLbb7BC,EY)泗FjeěMQP4$̛U@dxZnYbm2^$fkP%VB%ŗJ eShnF[{o\;VMkPrj{<ħ':Ula"N B}$KQD C No>/J{ܴ. GpCR1t$PW m+&'+ 9,`/[.&; ]&@(!Ȇ=24Ջ`!vwX`9ʙncAn}*WYR-8!)<7LԾCZĂ`v|v:16?"QTH.Zh;`t{LMI2A-uӔ),+ʣ\OkL Fs룐 EL[we٭!a' Yl*\3J.q-: +e?k?bzS0_Ւ 1X[()+/޺"nHi&7jJJ~.NT3(ْE8b ,canxи;te63+DT_E4JxqېwάVem;fDo /^y; 5T)e.I3-؂T:T[Zq#;_,{-UsPŐ=fÒ vEPd~:tƹ@AF BM ixSȶVSQ/4q+$3 $Fv\0 v?:r,3jpyd+ٷoϽ --jyJBӰ9ZGY@G7Zm{@{ 32 M#X!'L)NJ쀽 QPoA}޽3&%H'Z P2.d¾_mKՀ4 Gyؐ{twn1Ww)D:V:mTbǷo, [z6p,16,WF܊j?B([Vh*,*j"x&S;R^kǩrf{h`QR}/%s)FK#Pz Gk̒ '!~-[-) PfV?|6432~He(9z~BLLxUQ! eS!s=DtICJMҺ\Q Bteq"SX8\U|=w?eիu`U|K4{>\[9ֳX `#BkOcqع Xm$~69|%`OH*'`c;2:HX82"vg:t4^>8f~j)4!+V2 PSh\=7^t@Z(L?1' mdu.٣abpNE9耺W@֑bE[!8fַa6X8EUUGm20Zk[Һ&o#,-˂0Hz}hp ꓣo,m[ J&׌^&5ܞ4id 'sgY6_4hG3d׏h]˗A*ðS{xY4}+T:Y!S+ B3Y@'gh-/ L,gܠG4#޷!'9{b'jE Hm7 952ƿ1=yDuT EWD<>`\a8Nǘuq)Ձ1uv]?a}$XYHHk70,ߖI]N<0fa8c6<B|T7˨)5pe@>S'Ă8+ X@wS|rJo]dDVV$ɑ"&q4#CtRõ5C+?{H;oD#v`C) wQUxU=Z)glӳe 'ׇk;r'P"_}\7x%$AF1[#glb.,0™Y;gvW|vy`4hGDŽYk'*!Ȁ. i*@~ ~0T+l Yt/;\`Oih*؟87!ƹrm L__>tShѝU P]&[&fگ+;V6QDwlZe)'S=/.Z4 [ =VVrcۭ uˠKqr_23T2r0w b{|!Ҽzi#0k\s!N0Qm'%p Jg}n&L's+ILg&&eR=x1!-9xy}kx-asJrn]e]|Yo̼M ٯnfZՋ'L uێB$Bu*Ug˖i@_|~1k#k/s|vqy@Nڟ*7ct<}q)DDL:͓S01vYGm!raR-i#8Pޏ'K9\ p/^Jr׽G-,ĤeuZ`~yp1 Gt'[ ]lIRG,uz>ZDi. p |Jm+Us@D=+IPL`Mg[_5+n\sp7TkNt3d#m퉊KȃAF@[+y)f0NL?*4Y7 AسT7TBya;o KUYYab2(nAbu QP(K!TVQSVQؿqok9O}[th\6Lnօ~=O,G*}4~ܱE4</ R*'͒6|Ǵ+ N7,Zj[_:b|XR1@׌+m)|7mn!H鈅!>gOd :TiMAFRI+%WUԷCO_8V3 ~[P;* 69-s&܃8o7*Dt;\QiTlycI\f6JeHXZuOv\Ltk }MZ~9"H鳛^i8gR7"?'o,Si&Ng%dXɹXͬl݋=P849"̀!P-,ۏ5uJXA~1W" EF ӒqQ/Fϵ)w"@ <Qk8asEķқEN˪-YgY쀅l]OLAGϡ1UzSʾJ_j`ƕiĺѻG΀o!UWgKknafxQC>m춥{*ƳeuS'EI0gI8<{lXO]FY0Dy{#~=Y/]jSC)2F2ۊ:C1vL>|J~37>?Ri%5f ĹZҶ m t]/?_{礟q?[EgR(LOqzQRl]%'O*lq#Ux%kԴ$n"geG&hu5  Jij=4qJo07 /Nl_ }sZ(=#+j;CHʻ^Cq59b@}AƚS|ΰ.!ӓZ aY%~9{+Bo=M T-7LS z<#,6DN +v* 2'UW.]Jw]Mg{9V UR)6!Ĩe^<*Fݱ<O7[[^|y6U%.16&whhEn=YJ}- DB6SȔZ+cl,WboUay,]7VLi14WDC z_7nlgٷ1(@(1^S%g0Dw_ LO 2=۵of0z90gYG{ptDEPZ%0m{\Y7l[[s}L])%8$eN=8li8 C{,bo#$8VdR f%q|cī0CQƬ!D%3ڇ*؎9˸-Y\{u?YPCo4K~7PKVW9&>zl ;UR%4#8¨qjO!Rjʏ(4LFQaCls-6Ҋ[ߋOa GeORq)V1Rc^ ЛA%&>)yPe!7b" $cc6£_ ,CC5#r `TѰQ7:K71 Ʊ7G6=p'#RN)Su6!:SͶŢT[Ify9`jQfIHm~FکoUs߉R)!k@LLۅ4{IYM샦g2Dh G>ZBV&>{Tn)FW3h'$ܳ9uWvMZBRMc)RD* 'zKdQ8uȐ~" G'ܘSő(ICo'h)eUUKn=C/P$Wxfh4XfF:(UoΈ hxML=xoBiw7&D%`= -E(pK7zK Ece^r5y7aWӖ1k{} ʭOHςc#>#hY'%?XNBxdžf66'fWLQXd4뇡Z4'RǞs6RmzC8?%y$$6=T.{;?W`L [ =@u~gJMhM_6HEΉ̓'b\GY#)-P7tSoFm~jrQRAfl=f2 [ ph RBZcL@^ VbWsخe"Tm9rВo IcBhAwRg R@'- -" &WK|K8YV|ʘ4oMLգA%Wo30 & tJ*M[wOvXO#XHCo9ߧzm9Iαކ3ͭ:`Y:+cVW64`}ZLeN;ja<((#,\`gRq}/[yS3")͖7!&}>("ccJxwq%E׿yl҃'˷X.8Ćt=+RܯwӦ;Nad~yGAR 얨-/EO͐G+(!9tcޱVe퐑:WZ6V0tmm09K:)e}d><1|RLjoUE=-g`-B}@]qJ%Ll BÔVn0vQq`ze,xN88Ns#J돨' eKW)6ۍA7J-RA~X`Bb5| }qo/JbGwTc3$PGe'ιsU0JmHhJlXĽ'Uqd4(W%4Ǵ: 5t:?"?2v$OF6hr)0 h&PIQiA_;0AҼKrL+ 8yLdW6CÏ\ʼ| La#H쑌1E 5c>mK6ayE¥L8E U"6p/u:Hzh(S\\aOR3yh¶+Aр2S5r' N RRvA;P;O PְUfsF<(?!,{9f9,QŞWZ4SZj1-8xi-& Z.o73e39C !7٠n*Ѽ&Ӡ_I.Tm23nzXx TM+MSwNx4M;rwkuB9&wӄ})?/M yu XL=vr1Iѿ*I@5M5劢ɘFZ j <%_nM~y:_9\XviYze?ZДʩэ3T O)vG.AIKmΐwc@*u}XCmnyL^Qv}Z+ /JHQlm(L g7΢TAhTFbF5C,K~L^&ۯYi1u{dZeW+x:P غ9y@I\"ϰϑ\-h@#p5+QCnѶsЂ ۖQSolç&#Ϝ)^)1be2E z@[QAxF͑e 3nut"P ۼI~C1AKݏ/tĮRV.l"QS,inDL$dRV1oV<_g$sHSS ,MͪG kp(}Գ๟`75/8C@-[=yٲI*2Et2ޑa ʭKıFQ?g)|v zЉ!j҆*}MlEXye9cG O w8<2FQZYc•F/"U!qm8i vf7rܶvL/VVkZXuDm;~kݲ+YqjL6"ȧV^]:´hYE(g-'begSs9( '@^j/nE&~jbrܨpB!iLLf^ntWp}+uيr՘:sX◖_6Oc!6.ij?U!nG$Hk(r6%Gig:p2DL?@uH?1"pE;IŃZmm3zJui):WSbzWsu C}\+_4(q&Q}VJ-i6IAs6qTc"& '0#w=Ü ڸ™.Სet%NƎDQͤ|XXG{i^*LK#= *ۀXz'55Vn+a&2-hgV[,Gnb17@J]IhtHiDRĦ;ir!堒酊2/`nQ+ѽ?h޿l[CIM基$η.eTa^* S (YTfP=Wm2/1jM׎QlL'ď kEwD䙹l/#Bk۩ܟSel}oSDlr6O XU_ ҵ ב$@f_Eܪ r}%RY4P ?y[Hk6&RNx&``WK-39koJ2TۼGbVïCJh #jqU6Ńw-hJƂy1$^ofV]ObgSii[BFy,,h(bˠ+g$iUrC h"ܝ:;y9\҇0@2{((H/=[}oBRK2#bm\:ܜWvå7jæz#pig㗋xDyZ5UVG]`qJVQw-`yTʀF?Q4?oɽOpλBl5{yO -=ٚ?6e+M4'.}p!M|-UH΍ZGa%Tvu#O1k"0`~5j̀E%+a-}Dxw#Ob&NNx Td!Sn>3̿"_^;S]qoVM!ƋDv dt*Hhi}FP^sv .6 乜)  gGj%,3Wߧ̛}P*6:A>^ё`W:]5գ8ug\Dm-/_pQ1\6p )0菷L\@ԝҐ$iط"+*:ꦼPt `Q'V-ȲbI 4#u*U^jP/,=!(Dc@;؎PlZc|۸é}ޞ ]N7Kj90 F]NGe K8"'kJԃ"0 2b|C]Da[rES +݄K!zzH9dx6lVC)<NL ^l†e\vm2s 5+>H/}">Q;儲=.&NHǫ^^Rw^3D3šҦ /L[bph|: #4^mƏ&P=V92O)w82$K|D⯆^K\ĽN]k hYP0NWvd^sNIN'.v!=aܨpd˚D'kK?v'Z9복WwFA%򙂪kҠVy].({za(dž|[ܔM|`?"G5rr]'./\g,R z-bu͞ideg D6.'!Cl>8[ھcu Ú -EAO8Z5 I[KE%rOnz>ς v71s |9#k`q(Z4Kې})N}Vg-BwHKO\@vд!tHq# ֥\S Z&ܤ+@I.3qf8.%ZVg{ۊ, 6HY@IDp[cNmjcVTr2++ifC5^ x\ ]H ػ*w ) D' 0OL֠, oďX&e hIJvxy;(&u9 et K ߬iy/! Z2XDR89gDL">N1{als "tmRW-^\=BD|Ev|dE[o]"yn !avwIô@pvq=@SRfU0`;p\<(F&KͺV'Qb[< ,Ղ" h7c$*:85-s΄ʍ^;W1bF%/qΔLDݡ+qlف}%~+~Ԩ6>lo|f[uC)|s>`~pM`(n@(H༮g&Đ|Pfxjسlc$W 8hڷfP6V*h@: >2_7G+؅ڑq⨓^KfaHnt*348?YWT,b{rbEb> JCVD;v۠$O4RTk tS3ahX.sZ2+G%L9'D;taēxn۠NŎ@ jӂ?YL1 WǨ\-ô(J"EbQ(xRJN}y-B~?ZjYĆV.bP6w:J/T~--K:y)EݹMnlCŤ{. 5;}.`q*g)_gȀxZ+ZmTՂCP_xP7k'J}SG*mI6,[ ,*'^u?1 T!aG8Tg:+!@s[~2ǰ0X7 `&$ȵe.2UY/N񗕡2nntk`h_F]IVP#Q|D_Xun";9?>Xt4+)f5)D_ώL(ȩ-" 3#W2QF)*Gr ]DӋ5{xf #Qe6O2жDۗC& ţ+4'MaW Gջ[h8јA(vo9n51#;2lO~+"ΊRn5HgT@$PZdBg#*^D07c}IF=um͊.|gY??).ȩY6EH;l#nƹ܅itofY r]wPdA 9dϷvfR/=;"n'niˍ2v*V`62uo!2:ADvb|"@_*ah\m7b(w*?=d⹼N ptb- :y@T=Bv;]k%d$>b{rVzw szm]k({ې1})оѸjT j7`gEynڪLP>S` D~W1i®]H9 ĵF5ڐ6J=j4:kyTx98LHaEo@1&i,&n[^,]Ϸ734Fh`8Ӈae@0 _ݛVܭi~)1,F%v}6o+6Pr(ٖ h[u^Ia2f#0݈*^4k }5/rCkle/c✤EljEE.NH@W`8Ni߾qFIF`32*9g(_uI2j%ߚ !Ti?¼oPιC(@9_}7U~:oаPgPkYZ;N}7y^ ec$U89$W"05pN*T26I=rskClL !_K9p*=]SԻ2G# Nbl{eʂ(Gc+x P@tb{ JyƩ~Ɂ6nn%sش"*n1iOH;}3܈dÀp!ڴTtP/DTk|@*X:)*qƄxzk֍ ^r̶e$_r&TvW ?",{UgK8YtiQD "M 'k ,)DEW! wdܑqghwPe`Iiy+)ƣ~xר :@Y@ț[I[Xt~gڻD?-R= 5ƘEL'[-+ydR ^BJ1լ|<<*?sWD5m7:(qH PYKi\{NDzS&€LkH 8-|7۪قĸļ(f4i f  ֺa'':h|6> ؛fPs]X+f7e_J!j6罌62ܛu;Xg`0ٱ ɃEhΑ] i%i5&Ka hſjm|ܬW2t8>q\ځ9L} i 4bK7z膠эG?뷩7[l.Tsi]Ou+}+"`*:.wO+c֫.F7e9*d.ՏFg8Lkm'eRoZN6S2^];"0G{6RS *r F^OGf^4 4huR ^L gVqIQc 0zF?WSk|w|Ʊ3heG@Deб@/r^.-ڗ=1(_]=9%.@O(-! 1} a/ࡘh{y6g`V jji lVSOMU84z|ou4'뭚SUi߇0MFH f3H&a  $&)ulW;tޫDF| kc[|{]la, <`#2ܬ fNH?EApSvlC8OdjWC[ýՁM샇nYv5*hc|_嬂!IIvc Y+iO>kO췄$l$yairx=I# vt7=F c톑Œ::ӣ)%^I`S ӓFu䓠… ܧ0pf"_ݹt) صN;܈^ Qax,≊ `~_mK ݫfaǔ?iKTDl2l0Ϛ!"#3P@Lfd 1/ 0D{Ss:=ʵGB "x^T'ӄh|$0`Cի"VO~K$>?j<1-/ew":Ϙh6n!A0AjY!u2,a0+F[QKblĶ#{%fnED$G?j_Y穲7j̔; S+|,Z!驐lRdu <aF!QEcGa-$OvAu\uuG5n ">rCF6>R?BG$P5.-9G%&vw},R1z]IR%{vYZ<[fd'P[gȉI[`s3T;WY>nrrWe ٝKkj?`6)pwbY˄ oVݘĢe"6I:rGp+AP+Fi`BgbNp:$fkn&0 H_q!udx絣420TD AކBEtvQdn~#d)$ 8ribC6NrsS= (#ʎ:q裡.+·=e'4^~LRrj<<`gW5"o[}r7\IדArSٷV;~5  zbiwm$=Uw k.>K [F!NH֢bB&=>ZxHّ^|1ײ^)LG]dee6PSѭ+8tiWt+" Wjf֛.|YI-G5OL7w%;ѨeA6ɿZ_Gg7&3m+#Ex *| (hȳWTNO>XK@Vn7Z$rR!{L,7/2H #)܁X&䔒q>.:{wzJB03>`XVD6z^{GO;No@~ lSڌj;t,?nn3YY5n}_>zLJ:ny! ܥт>B0B7v]W'R!u0Nhң33u^Fy1;T"r8}աc0x+^s!+n8]wU!q0j#UK qvrEqZaX@cd(ABd!)\c{8n`=@Э? ƘҌpKsQò?lܻ\{*j1DG3͟+ԅ80;OU9*96.zIp00LXr_ޯwW[a;fًdCʹ pPD^Qo w>Zr(ۓi[CQ=t_D V|E;3og3\pيJ(25>TEC}FfӏdP;ܣr7Z r,vP| ٺS794Iv}BcV̋ǔv'hŒL>=R[i뗄s5G8ز7}oy4eV8Z )eeV<8,*VV A_qE)Z5mi*x(Bpx{"lh08ୖ-Yg^q;,=O=/k'd!rng^?鴨]|Mng A}uGA#Fvץk Qqwsԗ,X ,=彊6wP bv[ڻI`1FcjypUx@a*xA]4>${ %yRiǑ>4r _^VB%mOj##2A`u?Q JGKVu^ZWp*p'i-L66͈ +pPqf}RWAHZmu$ !T ;Kf?* s]o9rz20Bdm6>dqUbcl]+Lk,BB70þJ!T; _fP5P=.va7zMG$CZ3障K6yc3ɎaҰ#vjqlj7մ.&땮x)K79GI& b+K 5|ogcC#Aᥥ\Jz¥TdrIdA$~s?$z)cU |<*]NH(#7IPzK%Lry`1*URRpM3cqHځ[CYYUei1Io5;nZ2vOGԪ5*[H`}N`̒B#dC~fi Cx 6O؜ٺ}-DucPf*E\x3B5,r6x3:3so@b'fǔ;qC 2$&?]З\6y[Q&^uiU9$b= ,꟢UeZhcvfl$ItLrWC(u;US"Ofϧl[Zm> 0u*lKD@v׹ S&PO;Go,3,^P:\>zjt\4rg T uVO>g' i`I:?^A|SĦ)LT?<ȕr Xd́PPE(41+N^[ p]6jNGB8JHS6,=3J&,&R| &oe&?μAa:7m֭fmv x_I6E#as&|>fG6ܯ01' -N7AĈA}C&yS3 \=fkԡ BjjZ֦a6ۄl|<Plq~ne!xu!LYtiEC[1!V3]u_9Y}YZCA<4PJ@{E/{;C;[@3>$  ]ӄ/{JP0SL4+\o^YZ1Kx⋰}%a9Y*JqVd,PjF$زGG}L5c9.P oїGO D:Cy艀\둆q>F™8?ݣEw]M<]dvĶr2ս|[6ǩ#k')={?3۠'%*$.O$8ZcG`x#Ju>'"[N',%\Vmtit`DuD= %9Yܬ" E]xx\t,gu|nULNy2>2G Ym+* œՉ~9զ=B) wyɥB"ϔ9U\4p sCۆK'] #W$ű_W8S@!|J*AY}ה7JN(eO}:ng/d23wk3TRc9.5j`.h\G)Fed0Gy &]=p鏕sz?_ʂs_3܆4nE4Rƿ*"kJ nUc|OO훦۵>("56.HjSu^bj ʷfkG(CTUAF'cmXi16mɛ4 Fs%x? B.'cEGK uBe|*445X(=mٸVicBT$&s?լ=oamn0wCe jF v4"/osM$B R 1ì~3("Z OvI!n3WéQjTL:z2?Jj)^@5r׬s2@begeu] 'w4UA&!,&TdڸeP5 @WfzaC3cp^L]FҸ e|mc&?PRuDd^^f|n ;wg!_b6+VU% 0b[Ip,]2CTccs-ϓ~\LW8v `XǧL]n!: -6\!cZR9lʤ>N@:67vDrS;[ЛlǨ7/o[Eu6y8@|e2Ϙᘟ6N`X9UV)e!L͖Fie&Rn-~^=ZzBXBLZ8J#Wt}v(荡ּ1.f熭y~y:n♭9aʊ5@TӏwOq81|)ՕPVǯ0DPu`x/1C?4BiI+ {"rkFz!V&>s{GUe{0S2Ϫ7 Tv | t[.#ܝVe£@qjFOh J{h8صq lPꂡ,|N$V\874r겞UD0}]#~ObwўҠpW صui+iSdfI8Iy`T[*gfTݓ2f,\&F:o"fMQ]%5݅iq4\sx8葲po "B.Z9Mv?Wp#G T5OVXqɋ)H!U`R՗H T$M ]TOc61ھ^O Gr)׉!Q_#lU Fg]3Hj+q1̽Tăa5Wui CYfubvZxCn*x4Q=kNC'D& =m}ƷTY./2`w2UL'BV;gu厑@"8e"u266Hm1xi XHuleoK_QŶxmJ>M(|zs% lÓ)l#Y?`:p|A0M [pG1قp -/=tβQiaCw Y!paYYt?UT3 ߩ#2*:ޚtI>HL?TWЈ_!#4Cy՛zӃF=`0=2NJzJZQh'TOZC!!Xs.^g=Ƕ DasM\fH2duƃZƬ|p%u s O8Yճx6t_5*,}+0z{ȇ?H~7OYwRK읽-v<a",PD|$Fz9ۄ0"Ri>]r-Q@m'k~ZWxCGdqd u3.YaY24/-M/m׻Mblƭw['>ʣCQxB<&i: hǍab!?eeKl}, ꦦRMMRO,\2<\6 aTSP{MUۗ/F KyX<\& VJOl¤䑠Z U7W6K|{=*2Ne[K:^4kAF_$6Z(!V #kKp+oݧǩ+oN Wo$iw*ŵtw~$TR ̅Ix\\Nñk,!/N Ȯ6Do:l>%E7>pL ,/ :wrиa;5Ч'Cg8#! #o(O'L'T*^M47AޣVt5Ar^ɧ$!u׫ $_9kv) E%Ƭ{5;2fKif+0V}o量+7LbXkC^T[ <)¶_3/BK-tܲyGlibMSdB kqԩ/2NQY=_|no]˒X,N~T8e4({XfZv~T)9K/.9?k92,n*݆L)|캕\Q&PMdm1*,7bc a S( B,pW#"S^ٱkB$Bq7Y=M6^a:cPuP lOS llf^Yٶ]?WR.BQ+,࢖t- Z xst{@f^Sc#M/+MB04:|@%.* αs4ɳ$tftVy8Sf1Y,w;(\h=ɂ1$Z.)EM={G4WE8 j< ubuŌXc!<>I}ɽ_k[b~Oqۛa;|NX WnU^#[Z[OV%:VX^aT s_14cΌK'%@ nM88 X(0y>KĪeL:;lȂ>vaurmxns-"*G/@瀔5b~Y4tȲ$͘WondXsч6slbarb~k7~M.`j[F:)٤yE%i;plgD"\'S򟈽O(ֈQ~12ux%,F3ԴTA MOW հK KuP9KLխUr=X]T^o|Rl˩sZ %IŪz!>98xyy/S5pMo|..8Z<"ɓf\͈…++2d-AU6q2Cn9o^_ǞSTk먍RV <.(4^BW2 ̵e {)Jun1nl]϶Ό|-FΏq~9^p}6Gj\bp4XCrv`t h y >:wQ_5a@8$sqL - vs2QvO`HmEom(iщ?ʼ fMi|f#s]QӦ[qGGފ_uW ojS f;|kn!m-9~?Z@m /\-C[|2Xs˥Tiv%Z-]4]Gt_8ˡSÙP2 0i~n HO{t_7ǫa>U^i@N~"z@ih e|6  = \ŌqB U_+f{w>+3 *@A[!LҖCJ^HpxBTrZ(gk'O[;[ŀǣ ?*FCXMx@n/l-]*y\z|,DT tҰz7t,::qFϫ+ !{.߷Ez 9knf32@^qF#1"$ <54+Ӣ QԈ!V[tX9$Uպ]ya(4VB(I̴dwm/ZdX]]~!:4[kԲdէ3עTr 6'rWt?1(RQ \2 j 4X?*ؕ>k%a(DV1V#뼏3\~n˂Wz&c˛:{~tkq qt.y%xe;Л2mS`]L^*6.uoy7WTɉV$' XPG(S/nq2YDl^8N :c1Է6V56<%gGHTY߂\!Pʱt6U(J^6gzLVT=]Kv;%b_L`>֩1I.iw!YGR 4P=n, D=H=KT-!\x& wy]xb x!`.rQ0[UOۮ ]kb ;LsC}cQIάa]PwsT >P_銮(r ϑf ~׫e>X[xcz24UKl':Qm  -.~pZg4WyWqhnlf!c*iNWeR6i4W(%\R*NafS8}cX!szGh0K6m'}F`"u(O~pؕ7חŤy2/]t Hl`%Sңƒ&ujm۔mP` OC9Tko{SfbY&w}9\bh҉YR 9VJQKgﱏ4:N[6LG!3B%Au-(ϔ0~e+L:,e):M?b15NT|Z 8{[.Ca-C4WI|9?ƋXOsZtڔ$7}VBc &g h2!a66WJ+h̜\ ҵ ܯ [&X_LK?r4wrU1tRErCAO_9H[7Kd6te.-؎KBZO9 F°3K[)WaƓ\QUw*c%F0o*IޚJnzcѩl 8%Nz0LcfWTef/5}]ڣ^=p@ !2ғA!\6:IIVݺ:H«֜g=B EΡFa4Q"#OdK)0>zO2ھ~^ tŽ-˫$)G,AAv 0󰠾,Z 񉽠Ƒn)=xm9)FD{Ӗqik#^5Χ9_tͨ 2! PT^thv,U'&q*+hl$wڔ֤pVʊ`fSo$hf~[Fqs[%-mSORqxM4sQE ;>b^ƓQժ@-WEGגJժ"BETAfMv="zB[4_ܧ~թǹ íH~Q;Q]ݱdEʫ$}C"1`-(|mw.k\#Z\Rb~^s4t<˕MN!e&ɤ#N@kJ1l,Tb @M?ɳ l_huFH=OcnF>mu '"ܤmS|qBaST޽&O0%,ldgahq3a {.ܾ:Hd[¿ͪ3\il\$OBo|/|c9 03&ٔ!7y'h`)դ?WBJ-d'!r|Z?N L`$ Sa4eU5xr礁G X.jHFE+iÌO7+mijP 2& ds{"*|{:}jdX&o~jNGf+8|U".glPv>jj#OT Rޭa04nB -{*-ʖZݡ.;v]dbtN:ufnA{qto\%alPs^H ⴞ\(䆽ԯi[_is*kз Dh4-ӆU$P4HxI!?e.aiԞMJ 3reR?>, h`δh_:VlM.Ùh>r~C w"9{fTK)Tm?I.5Nz5{#`^DO/,sG&̛ENΉ&ZWѧ1ܑym- zAsȶЁIXjW"D׻i#.~ JÞ 7Nffs=N.vO ua6# kpżލWyCRN` [ATL\*MB*A {C^K'e7ȳch%TS9PlkӃ] D+gߑ7V2#Yf}( W?_ZՏLlDe4M4Qn n?WZRN}oEʟF< ^Rg)n%kuAԤ]R9Y{!PƸՕ `?:OAY fvkAm0m:iZ_@ t]Y"OXr?ky,UjN4=$rx«jyW x~g$~m>!7-83숋r6X׳5iĦr*-НB,98h! 0jL,D"[;(ؼlF&u>{?0J mNx`a-OY)1ˏ_>x7R69DbI4*<8RڿPWU^>bkjQe X(|rUL Mdw\]XdN XXFAcȝ;?ޯ꯲۟x+DC A6G,!!e 5&Ma )7KGg8׻pN')(%d\Jb+'y޼32[ ߳܆4N(SIg551UZHO,ԱN~|ugӮ{LC-Hz!pcIrv'>&j|;T8G~FT=uԕ]rUpC$l9Ee'Tk(sbQox)D?h֡RXLGp޲Ԓ 1܄gEʭ;NFgEg4/=2OjSvo5oȑ eȊT&(ωE3LQu]@Lwk_U-a&7sdZgsMh> j`!PG@/3)r mG[w>kלZ? Qt_A< {6gK(X7$~B!ŮVQÑ1 t`GOx2:dǻˎO.) SEp g-_J)м/JmRsa էw- Tl|%q_sb& (S]W1Ihz H h0u$$psؾyrADA|# b*.1%7zҟA7ޮ)ph0}U hZՙN!A"nbbh&pؼ~" =ڂD>2EuͮBb#aӼT '@[Z'~+ڥ3x"ΤZњ Z¾C,1C\8% "qO$zm@,_h|pQI?hА'gILOXX.J׭ 2!lRLVrOO;N 6+b8 f Os#VɠuU@)nsô\L8[oD %oAڝ(쳱v}|,&Ƴq So4$5IuT$=DH1HwaO:Q=SlaХsa{.g-꺍%S҇cDL|^=tE8Qgml B߄ l+uy-!11j2o"4VIĵc3NEΉdö̅ˬ 4tRxI;x2%hQŻqU;#|gX4 \~LV w,/UnIZQ-Z8w@ݧ|ǘ"t.D4KL^ȧ1#qK-S+ߣr(8P 2☠wI#W%TVz_Qϧnļܓ?curJ BT _dKJ3^g61M*iðH7|Jbz%g iIו H衲Ubբ:v3}#P) Җ+_%Q\T@lNΣjmV 5rT\G~c4eb@ S/PsXd,[.1=#q[;4A~$'+/~XA*|Kۈ؀RяʙXLMd2tݡN.J/G$bc .T$};*[.K%Q]XKƦ]Z@H8P*xzo/BHQU 4G*PueJ= Cƭz-?JCɕrCLN+U Y)hv:O3mq;]!JKʨ*LS5ȫ:lE,P=^qB VZML{ $u s#:\:eB=*3ךzɻԪ|d-oJ/t_Ӱm(_oJ~sc?}騚Wjf.Z!Mqx?yCјO|7 p"xdTuONjv>戺"eZޕ(` j%6sqS~FC9rKq_:-!5r [ 4 4[)W[RTc@ra$l='*Ԯݾ/R*Q8ZMpl3*K h,*Eq&v~ڌUi4*O1fY6aVq[Gab,Lhw=YHbSsS' /iaB,1g)W4"<ċj/k ,4҈P#{.#ٙٲ{sf TuuT9 sUHx>a)֨gNYU"a6~X-)a "D@] R5X}XVsWEVFQTm5m7k6= %D6{pU  >L81^11~&9`}ÇOVwcY: h!̗]cpo&Y텘J~lIF;Mf Cdl]"Ĥx_&)([YI~Ȼs:7 "ZlkfVL@b MIl-k,:t.̱ _o!Hb˩Ngp/0wpgim $@V/i{8u\Tv߉F  >*Ӗ4*5b".f*߲Tֽ5j2 .r^M4Q$`.X\3(Ѳ FY0V0 -\}`~ɤ K(ajL4gWR3#Y/PDǣχ{཭@Qsi]`!w$}t^iJ (J6[bQ@L-iVfV{93@Qe0UNT '0ƊCLPJyTnt3!,COG~*zT[*@[^uqg$4*ln <oC2:kZcOgVX~znxvJĀUJcs7@D"꜍M=9s:S#-#G\$|, ~,Eh]HFͨ Iኁ!z\՜Ke]k=",P* Ѹo6Vv[ ;9yv3`au̼H )HL#x|#]ul9}Uf{%Bq s8 Y .5zdj[jCʚHB'6sFV_02FY/G8S#`q 0eЅ:^fރ4('^uZt8Bf T[& LQ7nVH~',Cl<ƣWYe{(ϡK5P)}%m$͂BLk7*S'zƽ iVEa]0}cX`eor9 s J= i/m`}je(Fie1Ϡl[+ lOryghy$ʈ 188t)x#wzĎ$3dkOnE T_ #…1LzZs NKK\_""%Rh0"禐'9YǪ$ENk?ݫG,6e`^;Y˕ԡ'ka*x蘧rWRlT:k4<B5cOg;KVŎL?&ASEtQJN36 cO'=F]fSf_Sж=0V4Bk/KVSXA[K|{8ϰ7cb}+cҪ3m@BlR:>KhM]z-z ~%Пx'#S7d)BܲӲ#n[M@?+1(R+F 2/_->3EIȾ`mܤi'T'|=p,ӷ ]8BHH*;y[fDB(W H5FY" CG3a_Lլ #<_F]^=`DH)벏.+Z;. 5ۥyoD]EM-!6h}qLh֕wUMmuXފctzӑJ깰+6}%h9]ۀHͮרCTy7@%ET!9a*.TQvv}ҝ$>j/gc3}`EuJ- +-񸐳^X<=h oo$߂E~ar#*&s7 i }P@;x |w.e;)ץGa2V'R:ewlB3fܶQ%4 aM^g+Dbѯ#B`T7.b^xS ,zel .tc9b϶t8S_eMRKFT5GWƔjrG:j*w.Ep&U`D?q\js{zVDkxH Plڡ0O[7?v.L~NYڎ^ bITML _=cU4oՒ~#ZW-fDbBZjP`#3R·֬J\쑵S BJP=bbLCi}raJOlu$ nqLm*?k %3;y57^*NC2W~sYxV":˧ kw*w/T´x>XA /1 n nhHU=nAUnU?մEP8db@icyB^ ` =`@%@ih4.gW_Ҁ@m?1Z55$ : V#?Su9<΋XNúӓs`/ͨ/1)Mba|Y^7h /*~@B𻲽`OeK<͘ڪ6\뻍gbMFҮ0~>Rv籰%A_7cqJ#40~2HGhHr^Lңv*/nѭSp I;be:[wmR][Z1 %f]T|U[Rm7gZ4$f9q+GUlDḓ2My$̉xq[~g͍ۘH-~<θdIA9VN_R݂/D㕡;Ni5w[+^X6OײE0ېc5]E$03-h4C K;Me:z mJP3(c̰(}+*(nMqH(|YKk=Hʼc5/qdQr~}TJ+O^ZmX理y/Zs$VF:eǪcnf[BSQ4NV[yܙ@$mf`i]n<,)MsZXJ!GdlҧʹeKZ6.50ֱa^ Z;,yt * Ekz;0\X.}g `t ')V ] <7t/YmDa,+6I)tߚ؇#k%{lJBymXY jLBsw=8hȋ3#']H)pA?ԐcLI0Zl{181T BB;/߬ g#H n )0aߕw:1'^ϩS7aem$%A:y>|/a3r:6bp E8Iq]1Kfdv, qnL~6=T{ª"]T@)}G+ڮMr1 PߕŖڳa:yL cO #Vb sTc##$}*=gc߿kTViU'c[Bu`L=ЀA ŴO8*`/]4L%*MkJk8%I'T2rXLP-:I a~na~ϰQ]؉lW2 Shì, Մ8Ȳ:SBǧxǬ |?=~7 X}_(X by^'jtSu:HT#aD"ʆ0= 4 uVmɭ%yO ģ\+Y)mr׫w,T/I\5 )Y#vlB~A@AJ$Aܵ}_6odS`2Kщ-1$5{ru*AU/վ G , ԁ:bp܁0Cʜlh7J":UmvZN/{AN4[Z^c7۱PP˶>6:گ&L&))žX, 7.)9n jA\KR=)'ud= fH4&k"y:S~Uޣk$_ dZcVハ1XG $|7k &M EYc)X7j $̖rۆ9QG &2-aID9>bZ%golEQ(Z JHҭ@ cYĜVe \}q &뙗V4}in ;ŀ~;(TXg{#R _4CKдR}zC(.-aO=[yBnrG?Z1>H w8ddF-PzкJ[x.Br)Nݩ#'eFi 1͂: 8uڷ[ZT<UJo90EM .`cQ,1=~\fE}EJ2?̄=8S1u9N8n8/P%z:3##XsblPWu[|^? GbJ!C+qt 뛼 !pbr8q\fb#4K4mL 3LK<Oˤ"QF~/|QZ@`W3anC4@TQ1&Adxn0 woT;*wFͱ5%`A`>VR֒s ݎPѳk/t2<>t+ݯ MBKfTˠ9ޕB sJ+[^CnjpR%\wjR:[w2(ni6.lPw?@݆ Z.Qu}gfP-tiq6^'7rkg+ʁA yL_z}%S?i01+_%S`kg>\(wA-ѡ Y\5,XdcwDdH #TܷSFJPG]o¦9V g G4u@n3Z P@kwV7I[g5x~ӈ7s Tx=tdJa]gQ(btGK 0^r =<'f+2.=xAn=^REw|qlz щ`[.^dbk ڵoI.a>Sj dRpR8YTԐu-`ؠz ~#|Dt8qB6! AHIA+P79P 4,͐Hw~$%JAZj(3. D$r^{OeH [+z:4MQɯ. e/&9O@3QŭQ:J'*6E, AB޵ $3d[FS 0}r0&ե!)._ԅ O K(6՘[YRƩRV/1V'QL>d +s7,({9ԚYqZ:$Mn۱PB5BN>trK5d\,fk#VzY(E2Kc㢜DKo3r27ZnWFՆJ2T?3B!dX0 HDz(cjLN-6I\;?L !zv4b4}"a—(ךDA'5F"M^}FDeSƓ9qKԯx w gRDAfVN}uYߗwR@eƕH'ȴbfЇQ΋7mV,ݼgԯ_=§rNvG$@ +.d$SchfAky񜿗3'~}v_u3>oWe&}?ewPnnYrĄ&X&Q_E' wP溣oq#oO5JŠ: NNl*=ri;]8ֲr-LY J-=|Jp=̜|r %ϔUr`>ea?Hmp1 >J3 n`ɜ{pXMJ- t\Ԓ'EȬ0t-Ӂ޶*#@ A8t`m: sT$.]^D6s 71|:& Ӧe;Z!J.'M:Ē-zc0+x%Dmlq%nqۏՃ(V`K0O;5J 40zumh.Q1EA^~9ۦBA3UzU{$H:u>HD~338HQɒ;nݭwm͵9& e~8817E>;_Q~ЊEZVÛ 6F~JfamLWB7г+3ڡ7cdkݫ*-="d_uڐvI^XȾ#C.B눾h&0Je^]>2^-2"=O!ք2م"7@U3 O)(6o 7xm,k*BIjPd'!hjkJH-[(zT ,چVϴ Ӂ^x~}| " a:EG{gw[u2 #ʱ\J"e_Qv %-Bْ$szAߞ.@ c'Wv&#Zrx8b 9`f儜j1N\a;iCs`b.N ' =@AS;)xSH{1)DFI"ŝUnZ7\; t tԼqNc&ҜZāIL5R?2g:KPeΰ(crܽ>t*|nM^GQS5\7/F+D|*|t3^=ڝɄ^c+}s!mN.] )K>?lCvsH@u>,2%JDnJ激6"Fs&X};ZNp8Hy4.dTUAB}}*O$^>^ZO,%$APbp xg?,~C'*fp_n .)1LCQًNž=|&[̨$ƵJuXM( k0ĞG'r0o ߽0k $IqHMд 5;Rfq mspJ,hީ<&`5x4J0G_n)) [>Oay>w;X]O Z3~ơ"n O_ׄșrEL$?jv*?`\`.pbm>E_U&f^Sw)JtA(sZ0v>fBFKWugDž[԰A C}G#>2 %B<uSP^1o= 1!, Ywy 0xnWhV~k^V /Ne!49voӔ;<~P/ͨ sS4 W񬔍q# ې4{M^oki.^I؇ZdbWa928#{W:Pͻx +h# Vpw yufU:m)<8Pi}.OY6G.O/C$mk{ AV-GطpJ3 nӝcH?8\V1Q.;^q_]Ʊ#V=]k3hlk麥̯񄲯eIf|QF/?tZ:9kSpުe"-;ޖфُœGdjr;y 8v4Շ#[F$j . IiK3gq}DưA@( |ufѺݳ1rNa¯;M6ڭTntv)ak³t UKX=BÚ(z:']%p9ayp#y l xuE[}~7;>$*|mS>ܣ 'n^D0d{^ 'wWƑb0"$1TmJMu_1# ̘m~vw(}]̘e07z\QRϏBuQ~'SVMz[ה 31?V$fFC>6pJ B#RYQremdr@4Ou\漺qߛKҐ>g,ZgbINfJ 'aٔv J(ۛJDg3 }|nODGȬqa:+-b@G]?1Z[og#DA&39!]Q^mҚ׋뇭P1VG xAws)5m/|[Kd9Z)Ýz1Dڂf Ok4EC2F%?Vn.k)F=lSu 7Ld$&͐n^Ƞ8J%uܚ)^HZB6-dˇZ%+=T{~&pdXoHrJ.rӏ%e_&["6&zVs FRD>W; 8c AŚ4hCN2^i [0>,] k?˰I^MؼVm>O4ѹa(?B6i |ojR)_o[uܧxK{P :8,JٴW1 Ly"{.8&^=ı=A=wU|ެ>I#IӻHWt Bs򆇨B>mB"Mv KYPjjl sS LA_X,Ka&#F=~|N 4`Dtze=XϲhZEQhqc|-E5е&. Z҈y:ffi}.*a=ōd7 ɶ2V["/9SY#٭|}tTZTj(J@ueO@ŽqOvA{!*L`VSәz7TQ\Wʐgo.LZ ݄N5F?#hCe‹ߝ>4wYߑ!D]H,[4'zTS'QWLuAk%bp#ɡӅ7%͗ڲ,p2g)D3_h1SA^ :Gy8WP ` c"mհw( ҐK]?ǙhHo??yԻAtQEW: L` 1*D4z*2GE$f\ɳ>諤^bY9n/L{z ޽tOȟ]e Qhn` ݇ s2gXZB eK~!qJ*&7\`H_ds(6\~ HsL(Y's9z$`bȬ~jPQGڽDm_*tNJ'[{>S|(WX(k̓)٭3p_Ql=>:#Rʔ!U~ LpATma[\?GdryRSb~tRinѩjd"ή4HcqNSTHg-\2?Lo-ͤ+#TD: d5x٤.B>gkB緺ۃD<; љc:,@&}os Zr{3B~ Y nGpB{&zr@R ԬT+ G0ј * 2ƳCTvlʮ8[l6As%@.dyN}j5 i3! TY_mr`L"Y}=[ݘmqB r!.$p9B^l6w'Qv~|F?p}ls Sdȹ>RICBX riv" .E @8YW r#+Cw~YHeqRVu@ᥐ!& _KxŸ]Zrքmoqge ׳=L%X4PiG7'\yp_B:7W=м\<\5bֶ ('M " q[O_QݷSGy`KkȀ`VUs_ZGV1JU&PգJ9W~>J1a+\L!la:*ސ8$M@n(ᙤ~썝IAG d$@ѫVYDqV6Vҭ-}@ѵ/ƾSHtCy6 OYST#|?XSFG ESHxcd123m0Kӟy¹DܭZ(?ČnjB6W:5&F @չI"~ZC9 dN#XtG*jWʍ>&UKJi_`>10)b^ϲmή+R3BYvVa{gt=i4ŹmukK"5e=(S5ߑ.!Qh!7t/vo+bk6){<&O'X+N| l6>1 c}-R"sv~Qn^[ul G @j#7m1W!_GS-Nutjr`T!?I\8<${N(J=OS=ZiȻSu3OXêhh]ڬ ˴ɰs75n9Y%&.'NW5'D܊Ŋ2l4 ,3A16A|R kkVج6 `yr@dI~#SRO/ fy+&vX'd/ p!G7J I< lLG^\1g($<hS[ _Jq:;e_)7"YoR rz J= F8h{}.akKEk)k mԮ͡dl'h!6LSqdźMަ0~)RE4*ʜB|,0=RΑd}۹t㸜tWBGx? lf#F87zMƝn(b`dxJC66F"q)ړ,}E}f"7t@$_wcw:䙬CAc`^sZ3bCOMacҚCzdzbv~sl/Ejo~1ZIP8Db_ 1{aoI&֧L]AVhgeYK˿U-0 *b32Ze\ h65~nf^zpIlqa8nYy1(kNa0S ,Jp[ܬ{x ng!DAʙr{ ʝQ\畦ȫ}mBٱ8.cEխ&[(;D6FvЇk@":0@Ov f&(nl ‡4$?3D(NJ=ݖ,+->i;ъQ)^g4k䉺хUH}>U0]8!^A jxsBMn3YIKh| F11ӓvДX+H-rLB^N`${{w!(W _CO{A⠜W U@uܓKkl&${xRΗ&H&v'ѠnMy;| x[ҳ1] uzSKoT69[]-v`l"[ͪ#̢3,8 3gDk{<Oү_͗r) <΃,9spfE!9QDHGuC)Y|#?JBS3 xb)J|J=Ol>i }i.O*MxMMZTY/-m_JUEo-juZ Mg7 vaCHR-H8lpXKS} ތOM@4hh]p#Y1J G9)zDVݴS>Vvh%/Tć!x +P"coSm#s[\1wlKAbF2=2H%.LwSP (~I߻_^,Qub^`|Gj fXS[ P-_&%}@}np~p'~G.J?dT`%l1^4LMd0x>vBFٔqݮ"nmϪ-NCL#>`qr'{yĜ4C:lh 0{k4e}.1f_,eCnC+h^<,\7yjj@p<6z(Qo\?*a4-hi06\?[(\jC5g[< ieflx4~Nhr%Q(gP3p`ְWi3. -XKooі>(>E(f`lI/h9{ `\/I[{bM[;#]\3Iddڢ_H94:PruezgEN_⮛U)l]B8]l]-޸(,$Bz2*$Y,kS}qDQQk+ۊxWZB{D+%Mfbc=HڎQhJE s(6yI >Xm+0LўEFgnf@=$H"0@r֎C8ŋ+ԄsH[;[?hm4tO=~b1"v;(Cn S1q?EE Euڸŭ$Q?EgخDndכ^ v1xLeCdAB6YWҚ˹2lQ2߇2"v)e<~ Obnr=0r<3koSVԫ~S{p0KH~3JT7#YƄV,$ӌ쮦4?hwk]_8x^R#}=^ceߠߤyYnR#s:J/e(o*%)}Ĵf ׯZrMb:k:+`/wh]L2TZ Ÿhu3\}yh5'Dk+ĹJKg C \kB bT9`R;*]1ҍ䱘&{e-Zͧ#mA\پwY85ا{iƒjrSg0ezWn>v N{8r767RpRJh1[)4.B_?"b;3;)nbt<5ATQZ2Y;q'."3P%8.D[z.7u/pܴ(soS} M>9{9V-G@}OcS]_:;Y=eP+8Jb>U$ +3 e;{tyKO>7p&h^F&ͦøjC *NwJX- ݛXrWuO:0j bZyWܧZUx.4<=W4@́;L=\@&DOc;0?Bup"~$%~d:B\B)٠73RU88^dRWW0{|)?P˵DcDN QS>(8Z{ȻՐ(80ڬ!_+'W%V)`x(on?hŰٞ:唻'Ť0&P!f/תg?r!SHAYT7~=^e 54h'ubozTUt ۿ[Ez 0YM Q֕iR ݢ>㪫~Ou35 wMQ,$dۇwJ#lAG e 7]@jc,b4H겳3o˙*hC\#q\`z1uR3?FƠ nO&euՃ |t:Ņ·0 Rz<{΍ay WzaayǘuS4}u^Z⳦IȽd:. >>/5@6i"ުny]= n_־?GCZ[no U&7.k2S #T' &=;e~to-PUg <4L J?]C#͝"_uSh3J6u^hi㾏L"hIw6a@ˤդlOW8cP|qu-7 nW2b2oFڰ|SS$_ީr/Hm,?6UW{+=om_Mpl ]Pb`3̾'~ /fPEq;gwCk%N1ky2uڍq ,7)k"."u]^aUbo"I(Hud >J3d~dKU#g%qSNP֮xTm9_q t),$ lo1]Krs't%:庌+@%;|ĀBX)WAՂD*)=}VfLD<_.Q!{tU;Ɩ]Jp 2ti*V?W2FY00Yl;} PKYD殢E{D_t`@jsc`tѐ- _[lVwE?ek5N{;WqT%&#s kT7ZNd(DB~.y5Cx2} R %YAF{ö(2zg77F1"iL8g3ГNȬ0s2"~F5b?)}{*Q?0S^c(&PeN ~Dѡ0Uf]xFRmy\=WT" Yq"^HO~Hc&q.._MRl<% UX~Tq>ItSN8fZR)&<^¦E-}Af}e\r^-W<2^ݯX[b6揷ήbVp!2Tot3d#|{T=1Cpya.y3yWve b(j!x-ԄP`dR6yWETv"ȟ^\Y!]85d2475 k-BjkU:"(3U^fȴsۉd 谬\R&rLąDs 7J{9Q1i^/aOg"+PWQ"2#'xӣ[ljJ>Y;3 6pHd|3"UEAi*'y y?K5t4Zw1 Â\%c7U QAg_Q?/dq׫Z_ [73?< >$DT0sFM5eQWa\7lE rۏ5X gF_wԏԳqQMvSU]XVSXh2_)%%0[OV2Ei#~4@@\+u RY.S1"qs~G'OBC5mCw6|ҩLnQXT:ZSH2609`Q`QH9* |!@ 3ixƲJy$/0d7 i.+QÝ dOƧ*yDݵy9[m怟8 y{i|Y']U-0:y#^{pt wY4#/\!r**z¥ Km =a)h%a4lo!޺G.PDpxi夦K6bnS{*bޡoÚOPY4}. vF˿;LGڙvMy`a]vyF%ɢҐgD8?-IA`RDt]y-7#]v>bzV;sW[w5t<  ߂`fg@Gϡ%r4mk$YYL#ճ%ȁ "pP,"Gm&7sc{vGݟKXnPZ'03y홵Ib;%޶BbQC)z3=)M ji}pBMV/sqCHI^&NmAuUf%@T%5ME׍fZC$5y*j-#C@k Mn#c0K@ V7TiQ,1ǼڪV =CfT5${m_`# ߲esd*ґrAko o{6;.*[f>_µ+_ &u`DXD<8gf4>^geQX#CDZCo԰^jE=暪K4сˊ #˺:{)!1O3%.gEޯ-ioXf)qԹT@,=JU>ҮT#>Ó 1ӯRaZR,dbu1_v7݆_n?ewc|9VWlA\.9TD/Rp c+*ָ{:)}ar 4 VF*T;DV7ym9P3 ;i#О6@~Mޱh,gT2(~=S15q%+1cD+Uc7"7eWvrC~?3{IcWbr:vh3-^~l E[U[=HH`u %S)/m\#s,PWۀ/6,AHH0R%<L۵{/A<$zU3b=\e0k=x&w`.î PeLA :⤣WY Y^~I2K3xUcҖ l+bLّzd#eȴ􁐠Nb@-Sjkpd:,Y39ox(&o;1FI<)\4>`4d=Z1s/E``=;t&o>9G' wdAn/Ăs[!Ay.9/wJ~He/ȤWFXܛ.AxE p+B]x[ÀlgkjxT~h!իW7VPqr10#VW 6b%SA89\bxڮ/..5/IET %45:hR!e\fFƃ[hr˜^ӞJ$y8\RX Kk/d5/х_ɤŠua&(>x*I\p*,۔g*,yS12r"e_'K[}G9lshRx> F˄EX+އEaU5ԲAV9 ^ S]B<JzRϰ1zƺ%z}HeF {iex2Z@w-!s׾cf"?QXOg b3jq/E&,!X]74<_;V2~dr!D<}Rl|pY a.꽗0)_D"^Z!Ƃ(;u05vCPr)ۡ`s'?M,`:3{9Mq_zZ`Ȥ΄ jCY^_wBJhp}}bڲ 0-<Ǟ#I7WA]lAt@"{^ ׂ]Gr󛉿z" #3$+q< )7+ڰtnWlg_)8]6I44 oKMFUbhʵa׺Y2wMbWS϶Eirڛŕ,6ʇ VG6Xmf"YྯX,;Ů~[~|a*Hk$H74=x"}fY-T#߽@r|^V/1USN=&86BzL(#v7@̍]7"?Df\pY:j" ,FӉ! 7>؟݂j*E FH#-Z&L'Ӥٜ鄂z*@`HέU x*JSHU%Q6 Wgrm4ŕxSs*~7܅JT.H .@or%f 1#$1Q4a|r]f/$d߮\3J6; 'iݙ: &?T({i?0R]`<3jj|xLLp뱈gmbtgz"IsjB며 ZHZ(GC&Ë.A0f%|~r]tyX˗?|D%:Q9 18_=+-85:wU$|=Szg 9?e0Y88O*Qi1M7.\O٬=R1@<=V:! TܨUOi_N4Rސ]܂Rn HZwn<;vl`8;We>rY$\IE.FG6iod֜ezA]eqq$A0UK,F/*~Gՠ{֧9wywTjo| 3-(Zkk ֎ rGo4r ԛcZ~eSśWZG3.붥胻8ipFn-0zm=t;[!͸1XdwB7[Ugˠˉf j:u~o^٘&!C[ 3`Џ/rxYX& ۚo^&i&hXAÑm @I%k^7m삁r=Hwee-Q&|i.冷x %=Km!%h]#T]}0IgX/iu'qp:!At(g a0 Kn?FD6bqbu"_'IXŚe\1\~ Chց>Y> tCl@%>I.CF#V__!|D\#ϼOPLBɿL h:`agv: y"xW-Z`-*F֕tNd@ Jo-du,FdLj(yVIäj3Iْi3.vٺbCh|rÐkR8n@N9E-0fcObU<1J H$ǝHmΦݲ-`~f̠=ۂsQ=t]V2w:Vd1bѼ -ka?w5; JPPFsL\A3-/bY`qoxə0,/kx2cE< 35@hʍN,DWjh0JkJyW*:6}xטTA Vl{{bՅw;\ Zf-D&v2uz ^[v9a[~ɂ( ~ ֥+t#Y+U& 3b%l8)!VG;U~pNPsL_)܂`Z7…oQA~i\Qy1VʹscԗF1X^" wxF$ɪrby(}{~-,kTC.7K/e?Fnɜ:  URm]ڮš7NL( A@Sl8VXKH$ w02ļVv@m 8">ސ9~2]bbaN,"-NXdB4 B@c"%awO ob[\bA۫=$K;-%_ WTXbAPt@QvZrmSK׊ eN"ʅ/Ң+ |Ɖ%!P34Aʹ-TCUfƽl4[#w"m'3`$J-hmNaaG7%R~aln(l/2nOJ_NV)>qUa ꂻז تy)6Y22SDg@%oI?ܝGKØx12pSُ=POCQna=4ջ͵KZwoPs^kT3W|c;z_oXN_IH٥bc(R%U{{ˡ1ŋ,3sڿ|緗vO)&@0`Du\X2a xpۂ"ТK6Wkndء._(Qfl@`zaql 1e &g+7zG[ uwVK#q<l3pι(#3:n}fuct@\ +exHƒ673AL>?D?cgT.z[oM٨6t^`ir~JR5}Rw+M{6ѣ"3T&Ygt! 4CٌxFʞmЅ݅,hZ={MKtXqP:LJǐ9-ɕGZ ``ff`@F ͒pcABX.keF-:]gd=qBf~snmc 0m/hv0 N;??ҡ4hIjmʬzHuUU1uˆH@T>čo-lN2E<{} S.5x3c:])& s&'[ƪB `8gK6 $^ҠRա!8\қ/I*MQMJڇ/I#'JMHRHMJiBvv)[ht{WH΃ +FB{BgGtw,{/!C[b[]S6r:B7@\E%uYeMTC)ٟ]Ӊ1|VOl5cR+/d_w ͸`M-XG-r;YYˡH|Yiw #6y oN BJ`|h5[hN5jo; t]k_V( DW8Mڝe^35+=]e9>\=NaAJݘ(9&/F"7HI҇e/ng.] e zRjv(B8ѝ2Pɂ~܃D]N~zys}9HQoaqgJIhQ;1D m2q%'ȹѽ3F)g`L#\jswj5̒Ê^i!M¡oXSScwp#늟9HC"t7Cw3qP}@I>/UǘP4^ܞW&=vYh>Zy]Ԩ+L  KKTK<ZY?̓{\LOvq"js| :V#0@|fɄgMPW(N'`>ѓc*hCs#ys gyj$^Xb+޲ (n 'J ረF.w6ycӓ.IDʕrqf s&7tMZ3E9/kG G A65o{u{]6hE[%R1Z[z-aaqOdg+EV$g}%-{w-z|Z&vrb)^2߆%ۗ4ǯۏ KV&weI9g1e@>X`?$M<$,jxKx)9ɝ 8wVEB yݷyMqU2%V%SVCiHMd S`amXŗBr@pE1kJND``CQ'v/ m>F*Prhf%fsx$Gc\+h.O9xǭ}11;/"=< U”9kڧ^5iZ_x vT"hyFDHE08Э+qov ,o!(60Y \0!,g 92Y4OHnD<ԛ'<|RQD4=I")M~y$ džg1Әf▙&BhJ5/,Ù9 )o}+mir 5)w2mc| e.8xҏtQѪ/}K9xXJ~ x eoxlfna!5ady/C3ԁb{N#1sԭydV{3bIݏu(fyf&@a*^mk h{9TR$cnEMG|M7u ]vJ5ཪ$1ϲ=+@@US;A([")iM7>f5_P $Ir`LľIFԷ6yg5Ƭ]BN)q_mHPR;p$ DJ s U,t߶{nlɯ ,I/a(w|݉IcCy̏="N;)k\ryt<@ 0~c'<zUrMTfr06}ta$S[h')6/fX_Ux} =FҮTPZ('WOzn+O5wakVgkCIyb^ JemK4CC"lxoJ(x-zX!wD =IטQZi^f 3ba|RJMXlhyyX,qOu5RS1XG7t^|:N_;pǠTnia"è>JF20-1hbgߑPgn^ }v)E.h"1GD'Ws nx]1$õ 6"%4Xݽ>L~p.#>r%h=;@d FLJ/j//U+s2-IeU̱F1JASNb֡RsREaܿ] ̡DŽ 2osKR{bZkj7,{ xyY:*%1;0Rԭs rDw/b@gB2) //NxGljR?&}Hs o :uɃ̷Z1q;jJj" QqDuZ$l+>Qn eU|W룳w1ӣS<ȚXFsIMg(GL춹C.+ڟrsj۷K:?ՁclHd so(`@EmOʚ|gEd< _{$o95ޒgMP DR;pU5$oŁBF}gӂk &αe49Bb$}ylf&v m^Ϗ= ;V;"-:ijved"a*T 3ux1fCXz[4Ú|h݉QC4'y$i:+N(Rؤ2f'F\RD7ȸ4- _MlgdG?ʑQ GrusRz,Rz:iNOvj2G8/w1_ gQqKM$ lXk,22dͶVH2[S8\KoCB7tH<,>,4& A6K%V@KF5q;g5 W/ixZi0Yo?}P( ssV=uxy Z@܄ab+ǝxSlL٫v҃Z`!]1Ԉéz5$wskMI1AI[QCsGCCSZ-)fara?:M! do46gg8QoO*\UCD'1I#O_z~}6]T@ǭ`uez5.ziJW'$LŎNpR_^Āg48wqM䜞&m/i,HG[QM[+2[D|#"z뚚 =JrPhkIeasx*}@ףi0>Ha{3ՑB Eb}#g,]#GseY: % <9+jUw;#l>G@ TP!;ǨZRACTxKkEJp~d)G|rp-a㞦!¡$C܎̮-fP$LA)}Dd3@eo}N<d(,WOh6G:*(޸KRcÆ LEM$6 (* "92x .l/T`z"RFeG{ D]U[ZO)(-/x) m`-I3e/\UgY$I{m{ -5:t&ᤐ ?핐X:CZ(z rlpte"Cq*Yocygj}ORJ[C>;,ˡJk–>mQP7fǗh#4=MnZ̵o γ43AϻxOO&d8 ^8."VsTG+ɒ. al&w|úԲ!6OIrHfXڸL@XQ`Nǣ%iC/r֌dIn#"Ԟ> X \ [o}>pt9Z:é=x#*Z÷;M/XPǥ9B 5i_щ" }@Spsu-{Z3/è|w/FĬKP@ )2`ӫ,V ̒ n0cw%d&\ǾoU{>p E2o$|NHSX3K@V `si'%kX!,w&)->(>ȠSibϢd" ~p^ 8 ;0,QobrO\kVXTai*㮩?]R*(Q[S'R^wUn4 pbhS(OoHʣ /(ᮡR?V 6%6ܣ M;N=z~6fy`&tHrx:A|m2@8;9);I.0`93 ]d 12ۘ-/wv!#X%Sj{6ehC-3 DW(6D]^ٕ͞rjHV-b+4KR;Vqĺ;l 7z\I,ƚ[fE̽e%Q&My @|b-yy1JPNVl>Dakd -pzڧ4 K3ա>G,4 a:1['Qaqx-V]d-ZY+u@X-x 3"+ijtM]ʿiTbq^pn8@ӬDYYDGڰA.[e̗r9{<[>^u@cf{ $ 4R!|1K-]#M]VER|lи+(-;M#7Y<&uDwB=7lMskTgreMrV4H#[u?!=;Iy^ĉmSf|oc=:@*@So* 1jSaCH3`q{d@Qg[r ˷TͫkG%+P:;+[<Ɨ՛q8j|D8Z`>FXPWE&m5f/YB:rWP/l0"t8DhL }#'zWIP?f'#C6 Q3Ǔ1mjޛVYh&?gh&YKW3KM<ٍ]E i#B3]p]Tyɦơu;%:mE5:Iؖ:ǘ#ʨZSqx\JXS T߽*vhd9J1W)]/ =M]y;j2-LWN^Y=Ao*OW|WSK4粨3:dW0s6G$wJMe2ܰ5Mݷq)Lwght( ;HNDИ|.sf н|38C!yTiw#CyQҮLf"HeV~^ ~މH#K'q{elǃqN8%~v#鈞5ei-R},F{,[V#p͓SA*n;UL32] xTw03=_*;tlbh۟}wO|&0ayR2uh'd!h&ڔ*&KvPG! ԰D4CRllMK94zK Sy} )[+c˟f5O'd㫑bykaMߒb TYr-û*!t¿)%gY{^nьq(+q#.Qx!>4?r ,e * W~Ju#js#5kT/OEMJpkGmd!(+_*N &|_yY jg84Vg>YTG.%{"ce€ rX3 `O_} #YO8 y$ [辘e}2#MJe#ᩳg?$Q˩A&Jq[ʜ:[ʗ (ĞEqӡ62Mei}s͸7ܕhU3-lpX6ap3 ^Y u& r8A~Y g|>tMhBriGEwL=a =5Zkܷ$ߦbY34U'g=Oe~o?. QPPzlb(F17Q;恳=i%Y }IXL<%@ W)&GʏA:-:Ifܛ;Ta"NjBܮ;N9Oyx!1__gWྍHxp;>5YgGz żE1.nJ:6]/qчMA@L_bmN^ZoWtaq!:]0]U&D|+pNJUt6d0;W҅GSOVO(d3$>X.kƟp6<TEo;E 4)4I=T@g!68iZ|lp>eY$*hnN3;|,}Y3hP`8Ov5ۦbXŃ 2r ŰswSPy MgCYRcE%%W E '<h,"Zo<]X? ^X_ڀ!B2{ڶWk3R>h3 6nD%}*PڲXL73t‰0qi=BQt(> y{o߲D FNm AxgHBeHX2[pt35 4B,A Kh~.Y\.J 0jg磻 _ĐDzr,bREY:u !sEL[P{mūzYag)ت5f!s08o—;rhy(G^l|?>R*[l1΢c7Qْ$ B@s>`aZ5Q-@8o7B gސ19ZDZB 2kTjzUnκD_P!`- tLAk4c4EʷN ;ąw013T+=9JpnyK nu(N;hJx,-{=7mx{ݳH {pCpNPl؜&#_/xC wpIZ,.j}EyCQz-!QV".8h(U0HbzZ̎p`株/\Ѵ 6μnơubS,P{Kz;P|tOLWA.P[K#Cos̄|vNvP'jY8;.2H67[^]nObߤ*D =,91ϕ< %`^)(F_zM|l@9!nqQuYj+I_{QW~g\FvxɽmOx}-TVj?rƁPWزb7 S)@NB3gLT0qKw ٴ't̯s'kEQYsT@(}Z3(#TҘV4"ϭ-S$97+>v&I!I@)tv@ù)(ye$:wY-rn˰4|HqF}{#yDJ/k6٣Hjl A}%l@̞i_H%1t)XȘww;%}͔9AWR10>s1F5 bP;FZ}3i]0;sSM4u W[@yc0L^ 3L B0L|Ճ=Ƀ+^#8"?6Iß2SjPpyj;FkiMASVSw["߮iH#)nD/6: p`tTՎ W(G |tmÔ:OHp)9"d݀*_ooLAMp,1jy2˖2(=`W%|8IIEIvo;G]RljI(pc[m#;Q4طQXk{ oL*q!tEutbpuQّ)I ߡuqc@B[J!cŶPCG{Y|ܸGB9U!lFyuAhaK;) Aw NF\[T9 4x/ʌ)Lgrpx ~fpu#a;OhadȮnnmVVU ;A8h;"z)qV9"޸mAӨM6 meVjM*vmK(cF.TiIes/)ޛ֟S"|/txx'KTV Du`F4jف7; yFsŷ 0Z6So>֪p|YNeΈB3;È|ck^|T\ٴf2ZkܔyK@oPC&7<ҁLj +i@4*_T QB]]Op_")62zI${\5]/–}L0tC ! Lj̝QGIy( 3맶! iCL1 nZ䟝¸ԧ3<"Jf7y9#Nf5Xf^udMKP%B>񼚰?q\Đۜv*hZ=֐8=fJ򪋸E0ݹxcg~u/FY%5:LwwAs&59XlH*`Lz-Aoʒa'zBrK7,e~2FH "lyB,49S>_o:;Ȉd,Z6Tf6;r0Ȣ{K8D+*/ӷ9@Yڱ]1tWk_ 3i+ rBxzi YI)$Y3)*QkD0 wQte䃍[W^UPiwqAyޒSֲ߈0,0Qk~CF>qEW~'XYU//| sB A~8=GN\t-s j#W^g'H{^\ڎ)޳p}^ Z!zٹ"]" L^Sz"ld)zٵ *g̡1 +BhGMqKt;5꽥^/%g/@w2/tYe|7PEكN>)q\CLnPj@'*B%4*sRpTkr/^:өGil}Yk 9AY,nA/s-~1QJԦUoe]q2[iI6 ;0CzzM1vBIH{`;W5 T;M=vLe05N:1{BQ>AN0GEOd/ kl|Njf,}"D%>}.Fu{ƛD`7#@n}@~T3 EA<_7n?H*S8ɍIͲˋ#@ [?͙HFY"9;IKryևp@2I*1'H6*QE3jP %0ĊUi,N5C'XS;#@5qFd?dxSǠog j t`fh/gGJRjTPS\p;Q&$L@譪eǫP%9=3z<H><MC蹇Fw*S Yr,%oEX!xD)/9;ue,6F떀E:~w>7;o;_[D%߭{E }ֳQ5a"2B3GR3ɿbvʐBmҊ2·e&JߏM V?K@nn;ެ&m5Gjۚ%.1sm^sD4VQ+}<ܐ _| WJ}Xq1Lp(9vٹrC P$O,!N3(k)Y1^нZ)cZlF}vvpn#TR]v g fPOM_IKنXtDW+cXɅ#`;jH_OZLqxhwѰ nDG02QdK, gKWAv" ?)[Qjٌȯ(|iA4A$ ipT0jq6^ xl;9M4( ٔYu5@~hM ,@w_l6vW9cbЍ;6nW=1n9Ҫs+r0]gma퉜R ΙRaorՋuBDN9Zrr1Ǣ%h7yFEƕ|x|E*JXdbc20ZSߕʯv/^~~.n%D;is߆`Eg4vH˷E)',Гdh\Ck&U>eNwP X쑀 ѕz'vzRZڈLdow A׈+P#ce:ܽBZmjXêcDmG:EoZўaˣ|w+i V˅8iON~}^:B 22 wHU{,nLb w<)6+LU")earXD/-#R)lQN=">"m`oj" VD͟I B1REIt"̦PdBD{hR gc}ePVLW٫?igr0#FR"N@jp I[h *Y}f,-bAR7#Ry>8:b;/rW5Ad6~'$ #N()Y=M*Q%d9< `Yez }2 >2;ȅ*b]\^^+iv Z[s08bf9!^?He&9 SL,ҟԀuƓ5C-3ɏFj+P 7PCdgV+wLhTn{hF6cAjgH?YE\'Ta6wt}*{ VXG[mz:ghCu~+x jˣaz Ӽz3B= A٘>'ޡ5򥈍h/[mMv~^ۣ˜6oG0=Xz袨 dZQHZ!Nk)QBbfc^SeTjB; *m#)FVkSعDW6FCmAF&_kwܐ-:a_-zLNƁowu+R>3܃ k% Xԓ˛THIqS9>];QC3>^Дoț7PX #|AaࢍM.lÙ }lYaPa7\Y逜J< Bg]Yp,] ab.rlgR_oLxb5i dzB| iA?:u[8qq۴ V+.ً14ŘRCcCj,I" vU 3rc4oG%F6 @ss cJ ZRoz_tdr `}G@BЅyx(S=VSb].u@2 ;t;PЅ B7 OzO´$K2|_;<e:]@e ;q4KGϕXZ$W`uə̪{$L^smc93zu F Mkg$4 卦x!BA R!:wW?yr +Zl9- x }8x 2zO7F B4+?D]Q2v4}pv gfCzpblwR `QjxV,s$o5BT]6_2Ҫ9wdgfMȻ@ʪxUm!yvi. v7s;Vք4-`M at:;i4:ړ\l3ET8c(,ŢTWK?˿E }߈NE{Zӕ8G ٝRTJ XþWmy~H(T dɾ易lGLMp uػ.=eWdfΈocvg!h`74Űs3O"O5"!7F5@xy ΢5Jq7y(Y̍/YG$2ؤ>9{qw9~+厥 $nԥ*niN|T y:C!)k.FZ1KH|Ly;^ś]Zn# k lÓg 4@p E+,{kC#"_ysy0 @`#X^ HloEI;VbRe9Dq~ߊi¶0K~tC #-B[BDqHtY ijn7?e~ކ]~=W5EIaZx<B~ù39# 6+XsJ yr: 9U_FE/T埳8iRoVt xݾx h[k^%AؾN*_%y|2$͆C@Ῐ#ٿȑd |R @Ԓ] L %xm\kһA9[ `KeG^,+F_&Bj?NB ((0 DoՊ"Awm\ [ɓH*p|>}LyKo[Ҩr(%X;rVT&:ٍ]q}={1$U0>oep1Sm|P/!WLf{BTH7(7`!QrӸf 0Em`wwI) }l͂oKm[IQ̰D|Hx#!u"3}@EX!Dtb7UL<5iv9 j )ǃ߉H+h.Q9\oibp਷IMWR~f~2Tv GS&EDli*Aa`LAѢ3o7el˃ ?ErVêTPmqҸyD:%S% =7-(C:0K@~A j4W(Iײ8&$duHy1nV^hkJNƔzQ3FAۗeyԺW$6svnU>D[kE\+)% ǹt>\:9C:zm@i/r;/cLD#]Jg~-aR<8˭EA:"z<+ZSfm`Ƈ=;M ԢC h7{Ѵm/kcGq(MimmH!J3!5#||qG[{CRqF0Md0J.uy[XYJjuĨ4X+Rxtu{7aP! =6Ykx-bơ~5ϨZeOHl$-=kUA͎O @wZjh D]7O(\0UYsk➅ӺTI:F0^Ĵ^b(3ZAtjSk+\ `u/BRTNZ8-+Iu|3~Cc`8EjTi~C+[IGB+|UA?Frv)=QHY&O/@or,s͔g=Et9x@n` aWL!vQh{9gidzFb]+J+G$'G  n 1uw8!Ycoמ>܏ WQKZWsiЁLRyw&*v1$W>'ت2dtMu3g}CS@LB6óWw7.v:g4/H/lDrS_f4f0rE 1b4~f i37)tZfާ/E3)`nx@uth96+ td|LM6SDaR_Im*GEbm pcpqkVJ7Ѻ%/yf:;u ~a#\ځ$N=jB0xΔЃy>2%0 m 4$jN-ғ|tdy21nZ)$7q1,JޤAX&[ %Fa 3۔v<i.2+gckEX$c/m7l*(̐֞%Ď9>+4 MX*'yCݩ!]4.ߎ"J"~Q{Q)1]ԪZYm0^/RЦRg<^8X0:W@(1Roo'+ZʭK:.`3<:00LVٿ̦ =OL47~'ԵREFNشoXuQ؃;ɦb9m ӍLl[%C2K}sf"0DQ|jf&h8alL]r4pm/s[&q x_KZtc#;)!'v]6X/)슳&wGp k?F馄 iz`gQ-9rBA`HC>*$=~"KKIwvy #e~L' iՃ^s1C<W;Uxp73@,#i2̙P3mVL*y2Y.$,$Febi~'Mujxz9Uyi YR#=KWptn2M,2)=6k+t*jNX#r`}Jh/YkԓO7+)dsF ӎX[ۏ`)p8~Y:`'3X-U49~T,v#ur YN(eܿJ|F猻F<:$^BRjgshذ0܆Ȏ=~K$V:\s,B e@E2c>_YR=M0,ajgTã |ݿT3-X9òD|4gaX)wvqqԵ8ݱ+c=.1E7D_=/̠gjf&/ڦjdv/NAu E h7 ITainjdύsGՐO_ ʟK6 K`LIb)op0;UϢHEDBq!"ēbWhܤ=I1Wi4d LHKGY3rHʖ9ݎ 6슶;Xrhh/_\PXiСNmu>֔v C{|GЍ{*GոOfqn @G FN|;J@{\acCQ,NFOPLNPm6~UȖMVffeج,qnl^V6/.O 騍Bi ^CQ1hMu)GHC ,-8PY@* 3BmV>:yn\E銟po-j)Ef4b6 Qw+7a(~/l:ɠqU\2rΐ$ǻm-5(TCP۝S_i!i(UzU_4N.}=kÎrM mɸ7nlK DB,LI2| bl9ghuY+U8}IT[(aC0nzd@rycvp K! 9$v\u4s4I;UDL0蝜G- AnYUNGXD+cKTlЅfűkk_ ⟳w[`A}G>'P ]0wpYyܔX 9TR齜HJ,?c[4 ;]3~Q@݌x0Ĭjb-8 wn.ie2L#Wkkkw$-6opHG~)?ƽPc@ݬ5/5=[-62Dl|50]x>A+4B^я*=U6 N~ '=Q&Gr=t"@][lQ'PiVzOʾBś >]y@HK iZY+jl4X*W`/^"]EDK|ށ_ouEvtpFȍSr~9 t ~( G8Z,)*31xZaJu`Բ|qrJu`WWO(Vqo̡ǖ$Z]Kp!379I]`T Ѣ-jGW#]6!DòEQ`;Gʐg䓿4$[}T\APY4xToBȗ, B 4+^`\QM.[C bMꋓ4ATPe4ȽPg:)S0A&mO7eu{Y>~̚E(2i$^]uL(KF6W01LT~xASły1~Dt%~]5m:pĄMzS* Mv`b8Z@٠VkR_z*2ѣI U,`z:#_&c.w)3vU:AWf4Bσ)tׄK Li٠gt&<1l9[WcY/MVqdé&Itv-y:5v #h')Sw@c|Nx%'VOE^s^:a+:QX.: L0(*Aj,D _8*H"ҟS)%Wd 8_?L u0N#w9?uY#{x\h8"*荖M8IgVvV~EbOO ]|!bq^8%ݱ>̎^Ȍ}MtCd¦_9X w'+ ;ƹ$OV\fj^EEAL3v^$Gm!5ь56g|mm$--ڵT'9VFn{5 vjL;>II-tTjl:Ez,@Ϊ6AցԎeG65֎JJ;>5W7D0 N0YMF\z&!@~Y!#7Ryl9HQWIm˛-2; 'A4^k6q (#ٟ*ז+eOׯ^ՔZ/o_Ɗ7Vζ2ԝ:ضGEB l[>s_+;<$)ZzrCu>EO2^䷱\'YWommhJ:sE5]2XS=Y˥uxʴVcF o-G:b(y0z}w\:') M9wڰhQRzwVG W6h$sY=:1D k"0=Ͱ3-5zGi>5g2'Wd \FI/d]}?$6+9[ gQQߥG= ڴ)B1J33Z/بni\s- 7X{ NV2PM?Yr7 0ڋUX;Գ/(,2;S[J\W1I FXA;t)@ $Q#1i$pB/G/;YiUqƆ߂WͰnU׫sm=JZ#_~0."F@TX>B$:!jW0+f 5X\A#X] y3#O8E xkx!?0P4pO>;c PT8aO^ ѪLmYC^h12!;Kta-vWmu? NF xgOzKrbX(챌]OrVQt$SӻɐRd&{?XX^y[tMeʝʲWTpdq7FֻjE :~p9ˇNKFN9Chs;RﰪU5'\ƺL1 r'cȝ!a݌V{@d-p>qKB;lɩ{O*ȈC\H :nAP%ޘ4R yz̴~ 1Iuj{Z?q:7jmR~_RܩEK&42v &<'ρ.Yeyu})o&{W"k͑9R:Fr[@ m|nJ8vWD}" {n͛턥JSA/d?Y:Kgȭ7_ڠSoHo3D@K!/8I09*N~uZynT5w7v+ݻgaw ZWy: vFzUpB\É E-*aZ.'2|b c2lpԲ{nsJ 'x[ma23Bd0⳩ ;N[iɠ1)}ۙ gNZ@Ij[iȡE2zBM`Olj74=s48~EUmGX|ENdcyeOw@-&h;ZY5;YdŞsAqjgHtS:17jF=o.1+,hUX/To{=;Z$F\Rr 4A}>zpfҷHƛg^3O9@j\Bן#Rwг2esb E+`Seb_V+V[-cWi&x+ b8AKQ@XI(蛽a^>>3ՍZۆ|~i =6&d(itbx1 pĬ87$ Upocw*2oQs1;ˮzLcenS|aN0jzf|]˫ 惮!c I]ٿc?' h|>x.ߨ+%TA\wsoRRcPL~U`94ZUQU1pnn!*tpݱ*שDT e{  K̅LDžɘjF 5o9L !L鰨8a,F1<Ԗ]OCfܬʘp/ZTT\=ja(u&)֫^{ذ  tD[A=/rPKFڂ%VzD#TpI!{BG+gOBOQ`B+H>{"_NI_G۔ I˶ ʌwgюzRˑC2oQ_D++OOB Knǽ]_Bjf19ou%sͺ}~,X]Ӕ>'IԮF<]e:g۴Q3\5ڽ(|sOi-J9GyV@0#Gguˆ*ENr7y̢U3?%b@8$`t HkBsϵ^je;\2 iWIթdr'%aynQT]M6StO&1{ <\1/\*Aʿ#2 &8,ۨ^~~iH-Gw7 _'~tfߓ5JːCdit+̮.qGKMs!}VI0iRCCA}XzF2zMh5b<"M~/r. zȈbs(So*;~r&2?/6ʺ1/}DRXCA%?.f,?ӄl ^M SUxYx"&[CNygUX5Du+V޴ 1+{쳳xh qk.Cydg q/Zc@:&D/.%58M*s*ZaTb}Z)6NtT-3ct I7}8a+sn؈4@6 R+5(6 Zu?&_~RVr/mi\PW V^gw5t\}/ǿu)\݅N^>~Ҷc -ADb 3sprcsB-nwAȲ+kNmM.(c~\-(T-W7V{HѶ7Q7)N1x)(EDzoxn`U[p(dQSƏ'I^È360"\Q1oD h>4ô >}^{vdy]}vFF.p׶e7eJ(rjo_D 4xq_C/ZwhP gv$ЛWT:$.03;}>d"3rtnTꀒ8/搷窖q6jN$mr%Ȗ ́Om|NQ{Om?Jٞxv3_RCSܞE=F9 ڕi~n^5Q}'LGf*7 ̲55E#q;=-vL`:y:\3Wx/ ,2kV8CgT.(2\QL<&1"=pT֧Zb{*f sޞ6*ϓk%rG(7[WrxŪ!-԰V1ERI6Nט G%(Z7tSRu#[9+_.vF g7wE`SC9׌WCJt׊v [{͎!௕eob"1p:"QUoYJ7-IP2dz;meߨ J|g0XlD4IHδЪ.1_MauX ! 0Z'wA}#`ypHӾAxZX_c@")NYh :7|Y/}\#F؟l ] 3 l,h:ې =yTUJXИ^3Dp;z&#-L P P)-?HsGX ;㘥Rq4(ƫkORuԇ2M8+xUH̻KR@ K&݃1{{-&F0TJf+J"r"<_jaӳt`2hzq̒e ߵSs$6*As$FeBe +$r\OCU^̣*^* s}sJǮƸ@pNJFD"'@-nՊ_R@nE;D4Y,XNɵbdq.+ٲ=O7^l eKHf!%RNxܢ?|1ÖGыX{4EɃKhjQ [{-YR$W@*7_!`[eU3}LHk9-JPĞw5lj!NU>j`L@ɒDCoU`;iU[ 9.n!V"򍮐Kj,(J#nJ#[V)<_ʼ_"de6CF7'XA_r}ɪ- fbfLEl$oRy[93\7Up#TTO;o<̲Ғ4UnP8H~Ѐ!~y6kƍ/N@AHyb)m z35F&hvOHh[_@A;N$ȫ7 # }+k_ J q槬LY.?![G>@}\: ͋-KP^:9}}k#pέ ʀr;Hn]v'#>9MUB!4ſPg=;ΘsiPlafg%"vkIV:Ǵ:\^-*?\]%PY42uԴ>j-Ny "u۽WQLVrNޗY'x7/1B916v÷A}rƩv2 hݓ8-Tl>@  mmq|B-mqBEu}OKAPs~]R\^Q+VthfyMUXf]o >=ݔR(znĻ_9tL G.~=F'a|ݙbUdh T[$#gq,+k,\z=X܁M3RĂ+ IaTJ/>W AߊAg)5|c1{~>LѤОZWḨRϼeM U u+)C<,WW5NM(/3'!~f(fJb @(PIܬ٤C9ὓ 2Bʻr5im*vTQY%axO?}O)~3]hSoDj%Bd 7eķBE&PZb}r0G@reÃ_o8 gvEz!VMnTS†s",8Pnd4_ L?o.4wd ꓨwW;u$1b*Ӑ=6`C^s$hDWǡ6ƝL>kZ<^]z¸OOfH+Pn n)/#ɧ;rVcVR:Uɕh&O: aD^،0om.?E_4zz*Sࢲ VT1M^W廜5SF&cUvE\b-P1\I\K?lPeҦDesA]3ˢv#`_UQ|8jޏJ8# ,wx=ͱq3o~dBM^9S\ KRZKnX9ŷdsɞF3#s[@a,.Tj6nWVs p0aʬ <6>n9K"nÐg=Sv n 0;%Zp]ouRhJ0:|/Ŗ}/-+$Y7K@cHcaBBproX8-ű&`;MLMo/[A P3ގ_0(.=)؀Ueb<'bw =.T4=~¤ ?T랑8كl1uC4(ʃa"G_!O6kWF> 0b @~BJKF3` ۯqʗxCq&ҕ]aavES2uB2 aǼ:]Vd^, G'=%(OH7?a2"'a*neTm?J%Tu~$خRtN+O[ LՇgH>b);;_9{ٞ?*F.Ϝh,3K,SS{yHYhM$O*sw:l)KReF"_gJJ.{Ṱ`Dm%ϐBŒ[ ]=4>!X8F@%7F7yI4|`FB^_R!6܈.27޾J!?xKt^Q%:⎠=3/ [KעN0<7Ħ$7;B;+'[l iWUuhGS,ϡ♗N87§!5S~>']ӥѰ%bkjJSWM$gC3y [)ZqY8G:a8Y i 2W\E^Z>5Su7Nem$4H?1ixhpF.&_,2<˥{ne'*UD f~Oqhn?|#;ԠlwH3V] Pqy3蚪SmV<.o_x1y/\9lMQD8ADyrkIN@cFỖ^Ugxbe7Ao:ƲYqyQM5ͤ :o:lvQkiH+7Փ݂xW+g_#ybVOTH?1ж/Wĕɘi猘pK6M3pVSR!l'{ ,c ZRp(ϥ:: lGIXVΕFn-+=”<,҉>JmƻP{ګA@#U.bɆB“ -7{O k8Ä- a] ƕ }LR ?X$R˰ҫQ<._ET13cNADYv2R1zQWu= %n%&jZVґ)1@ g& gkp+Vjz\>eaw8s{4_cθRzO~i59q3.S&U50{.'O9DLtU@mկVY ݞq=paK8ulJwq@VnЬ&/7xThC *\mx 3gU\v}y@5@R]ݠs7˻~]{U nbnp,3z/OFo)qkR >عþ GK?'Xr>G==Ɛ%ِylsʌ+"b6Ϙ,b|y$9ppֱ4_J[:_0 *?'٥Q,h=},c"ˬ; {uV;w^kD{%YLC a6O:t^*]硪ZϜY~J. k1J54( DuQtNyk|;nl*WHq Db.A7*Y6Jz2.(:")aoQ/pĆ@$p"7rnănvH7ej/eVo5\JʓOw?`6?:N ONEġ*ja73A9!kENk 8@L8Ze?9;4/tCbFJkY [OC4ǔz}B5TA/U1v"Z߅յ" t6/)f垉:!Ң^v^DZLRձ 5)C8.8[I'4+6?^WǭSf}Ԥ0Tw%M#S*#OFIB`[[οWd *6ߺYٹ`4-LcTQ2+""P]㶦<2eeo]?[Lc$%]MCJzyꞦL$*Rsƣ= 09YogF@`YEEQ:r|0 mLؕlTVi;E|wmkT#im[1,}佣V#Kŗ2ZƊ(4bjRTi~+[#BVۈqnԠUtz&dN7H(B>ћHnsAHeJșL!XXz%l~B\˶e6X$ Λ6і? hs8 Wn@~Otbe%` b8P4QOH{k`SGt)@\E6P+/p4S@5Œc}O}Cqo|)ɶ' [-C@o_3c֏*}R0%m'*Y2d } 5%w0 S€;mJޅa'sfhE R:|ME) -&qb&Wcڥ7DQ{_ع*puF8,gv`~^{! :ViGi*֑iNe/$ 2|[+riȣTQ?d/ؖ*^/AIm]ߞb_ 鹷ǘph2[` \3;7_\'Ӽ].J ˋZWnV1%9e|\:h480 k^vpi((v{,i#z˫0˶04(Xޠ5q-^oe?coX5ՆE#i$]@SAϼ䮣x8YI?qԿ{q}\4Pk [J%\=h_!'E B݌"PM \T.)4=N+\\0x s583ņ ^BmB/6P"XvJ43to!c֙p #F-^ඕǂ^܃HD=7J岠kp#.iVHxG#jWH*a@1#خk5"7alJ `~Ig=}g=NoYjv@Jla|\xy7cY3ӧ/BUT6h Oa7yBH|@v ѐD'ETw]+ohՂ40ޗA!9Iu*iLa7`;4$ Y!C 7k :tF}i rWv J{S#g11ly#'&$L,ZzUm`2Y m~xǒXmBI7nJPS (s&F#Ssu[K>=dօ! .r vb>#H7p.kjS$g |ٰ}' 2uGqSfX+N.:2UD;F_6ӕc{AD46㮯'(z5f6%[$Q"~l"8j{#% m3U=y*'h"6bʤ}>6ѬgEyLM XBdǁ 0(/̴3H` 1<эfkٲa#^3:/k?u +If6gLB9 fF#V<#\v^oS@39|@84,F_G2ɼf\H p$)o77fNnZ4^'tkԫ֌< }{TcCXBEGQu{Zxn^[d:wpcVE;1J2֍?ͭa$&ӴxH ~G=mcu'֑_v$a4ջs%a5 X( s]=AiCW:i@heК Vlr_K´iaRRgQ#<;[/L${f;|˔0u^WܵKGp݌!Q \,_T/ډu#^ l$($xmegMH,Q*ܳ95A؏zULfOlGC3<ZEV*+YYbE$Xm.N {1?nLrf=YI`@ZG1tF$#!W*e:AN ]E}Kq]##YעT syi:D®tQM3@!6{'z6Yqk̈́pynGDq ]dSH׭CǮ']#Sl՝"3N.؉c5#<4oOXFDsx`K$_ղZ Kj 7Uk9^Igp4k5oT 2@sFc 1MtV89 esq%JmE)qЪi9?oW' /nK9V0vr#`w?CߑC-/܊p@?ٯ kխaj -e`4k)wZ _@ tmG&Z(WeBp-ֳ'AHƱG&pE*^DeY)eL/73ΦRBx9ejF~ź̄6XyLO u-˰ f#TI,\i׼1{3i_0\tS Bu(IX)kc̤KNXLNfik.<%ǹ!xxnG ~zQhLdiHK(msJ)EEPA}:ށpZ!KohQ<ϰnb~xY[C9`qh P_(B\I|B7)j]C3j9A* tS%bH[8E)b¢PJ.ib7[{!q9B67Ge+%ggUwBR6ޘxANpZR@ _bJynSp@RMp9 2ƌIKy Jгuӡsxζ m,U'&TK1GbN;ܫø^iu.oIJ6ΰrL3o*/tGUJ'֖!Zݻ&v<.Jx5@o졳ɀ[gR^ Ė==;>t-}.) Ͽ]k*5L2w"K\)l?@*B*5)^0hrrj)q\_])vdxE}lCY ٦x)ϳ3e1lJKG[E_5<1l'>F[/)\>VYFJD.B?NK3Y4moz[-\Vq1!=\˚.YSU!RLyc9B#zP(WSn˘mxh? z7[Q,m'cGRt빢;i*L)^o&3?UeIZS[`cdG I&?u| #rC|码"|qwPm PXHAv :Ikt2@ EET@L4"VۻZ46v_T&\nKq}h]du3P-)!%хKf#GSUx(H~_vU3?,7ɞƓTBm^TB]BIC]p dv}%Xy4qJ84ʴ"%vmkdsVe  xt:Q ml: >h5,܇b_XupHx&! kMݳSl#xH}6=Y:,tK#6π3qYG .y܊9՘UG"-I^ FQQ:aĢT Tu3ӪDAK柶ZdxP|o^Mj/4PXZGm"B'?a z B^5c;^|x)S駮MGm>X~ңn7ȏ:Ꞵ4h=[lʧ#HeBH/C[mCCMr*˚ ?T]$NeiLYxl0 ~@V0( H0giN Dt-p~,b!?XV;V2Ny$Ô0hb_ڨJK3^mQH &Jm> gA{=Yh'z-0Ud#нOBbI \svͰMЖ͎Jgc,%l(/*O4î]x#%ё- ]^ -QĦ+=G=>Q.%bh RʝpW]u`TJλTnl:d|q-;Fn|Ay`īq!8X4wlK\&U3=y\Sbhg=:A6{#ہftĸIu3_]]lر28&>-'v#0]Ι(n%XeA*v,mqnB ) q%81fJ$}9itT#;g=ǻ퟼wZ:mO#DsŴd7N*O[QSfZOCDP2r=4^Ȣ#Τ~@e4tlzq%_/d^P@|x9ڧx𿃅FK_c AΠv1ƺJP':"H@Dtu0܊ZkعDd(O4^U XQKzCotP8S8sG,Aq5@<#(*eıoFTP~Sp6)c)>oGng}8{lh O>ٰ,'ӉP22$!= N 3/#6Bi s6T8Gm&9sZm{T<|>%|?RrD1ÔO%N*YA):%m]wص5ymͿo-4.Ls4 U4;XX\Am"C{c:;&R`[5m:9˪01D[E/U3ga0hH0Auee>B\%^HbhUi(S$SA6dfqMlep 8**r!UQ7i_iclXӈO t.aTk#ǹȴoAЙ l'䠚҂b[3YI[󬡮Bz_£N0I=K3W``>Jj[f6NmpDV2)5t8guwپ3A~ؔ p F2 2Q F# LL@6Y6xxqӝyA:r!PXbdFˊ4n6"-t0nr >p{[>#rc2}a %Vd;GC~}J639+܆_g3j&u2zݹ.qjU՝oNPYV4sY#C!FEWfm3p].O0i"=& 6 +z|!fPXҹy);t imO`ǣDCO88t_w](OUH+vmY!bY|.dd|6Hfl!=QĬ1*Z -eHG7R6=97ï>xpz'VcЮ߰[t7MsȚ'엗Μ^.A֗ NLif|֧`Oy٧ngE!Z)¼ uwGT UkX?wg< J 6t<#i4*, STFl=lJpOly4<|yM*;}NC'#emK6z/s=&t5)n|LZF%;pg,{d4+b]N_ҳX>Rs~dmda\I|kZ Iዤ;b{+`dk?ޔV /@<998VzD Ha 4FF+( @= ^wxb=ۏөbqW 3WA=_] |x'۸A5Wh*TfՆ*˦o r#ļz54sӰ!)}Į~KXGBwxzz̯-h!? XP8%'nvǙ2ĨA !<+< OEb5D3v0,ʰ4H5͕ LZ~M(:+:%-j]S( 4:$C/B{Mh2W90 ́ ̒'|8ruǷiS+CoA&%sM `Bpإ &%mZ"VdXF?Ⱕ]h3eym$Б_*N@D+>M%N0 iX= TˊamI47M^HMn5Nb@U)fPj#/ԋAk""taݱWm8A^Ì 4ev25 \@DFL&Y]oi¾{f~8Z-/ӟ.-Uaɏ9sչLs@T5I[{Y[/LEZ2N%]02v/opN՞Y&{:nZ!"$~|Á+(V1=!#`jkt`1S 8-VaijM%.X* FѯJPH:`#.{"bCQK"Fl?P Z6@u@/U@fLVlw, zqeobuPt)ǟ5Y} $^U ) ܧ/'I\ƊJ|H8v*J=!gHҋz3s0y۱P'prji<0!Ki d:*Gv'٨=iX-r]ۋw @pa[J vC-1SQ/HnDxLiX5FgiۄQ wW$]3pk -鬀W}cΑF#TekjΓuR`AƆde \g?fc&੝`J@]{$/`o!rW̴p|%uo,DWHU`P;fH(ZA0B2~*5 -cm(קAv$ͥP[xT@N9ޱh4T_ƪghSmjR/憷> Y0 Ng:{UG3Ě w>2T30K5J4uĂp`仵01mj݁ H.f"Z/܃>x$Y{Ty7tނ;1wX'hyy-V*?sT\.LyZb#ҞLoU4:]m \eʔ]P}{,eSڂ<։Fg 2Kq Âڻ=L$č*^,97UK©a&JؿEʏsv?*z/cj}[fH(Sy%m&q@O5 fSz,!U+ -LZ͇T< lɾr@ mYɊGұp͵c8POg x=sc[\R (GgչDAׁ 1H>qSy`0 & ]6 |T?OzUYWNֿ&P6sj[+PrlR҃MxrkL`7uGgP{y~3 :Ps&jS ZNҕ_8Y1 Y/+v́^QKТC2Tjw~+lgG{= 2BJkmrp_4U&zuym DӢIP!6", [ȑB=#ʯN4V}Z6a؃`3ǥupaڟ|F\YFk\nmU޽SANĀ{&a% !,c]$Ζ]ا \"h+踧D~" XtqG zCeb7.ee'QeѫDoNpll!#`jjDX~U]ޔ0)r)zkB jε68@E6HQ4sD\=Psu'Þ5~-F4:1Y`-^Xlp]ƭC>3e+l <.MAN!'$Šá8`̑qt^ wWoW#&D-U+Eh;fb 7@fזW nG^8Cf7xHE&MFxI).+qi6EHMJ0χQLڬ8-/oPx:D OK!PӜ.PNfc%I RFwØL۱xpE۱9a2 DUkyx쾂1]ZtE*ݦW:K*`04cL|$t^OcфWCL@."=s ;>=sz524aH4gCa y2 yVqs=r a8o#yQG2՚%fN+ N>կ0$C\֠zcM=Q4ÏY%tKNq0HL}=w=擢@E<[C2)끘ʩ;OaAiGJH8왿Z19nM[+1uHgT<~om2i/=% wD kxn([@{bɉ1P\Bt͖w,s#/@l#V3{:YBn 9pFfꘁ K:/#avǢ0oH857$`d}N3l9);a`WR1?;uGRNaokLIKSw C7đl#!ut;$8v/[$:f$kkZ6QB q Py )ώcwс^O@^v($?I颴ޭYtUQ?`A,z(R2zc& M@'밍ihʀ4~ 0碑qӸ<*2 R`BmKQ%XȢ 7I!| &Fす %59?LJW/YC(_ %oRnHYym:w&'h'#Ʀk㒯ҲyHxPg-Y,ŤI 7] ;~]n@e܄"178K*ҟvhCZ*gEOE Qu2M<3 ߞy;D[fi*JmpjܥC^ Ȼ8Pm"C\i15N? *%6:|cܣ}{SD>1SH w@J9?X%DpݨkDe_Ƕ9-tLHc`LxhQzR>wbEMFnZ80ܙIMY(0hXpû*(PD1&0OU(&"'J1AkŒEI ՐIޕ3&y@( W*)]Pȴ$Qu2[jJ3]s/'S51w3kH%iAS7-]0 TYTEr#^>&79֟&W=tNs6`BLȦ`#р^JHv v׳uӏ0ֱA:Kh_,c& B5ZE iVEgķ[BLh %L ]GsXǯnEK]8NwҮt93).uVVp{k&Vn?!V-pxq7ԃQ Q<7cl~AJ -_f4#/ m,^OPG5 4i7L']%4Je3.B4s/o<^7#Nͤ,^RZ0?%egWOʩ>xN3sGHv<^n|ʉ`p$6Dr3޵`pqPezU+nEN)Q!%@l=gyZz$xC դ_ZyjLԘ4ÌX4\5MQqÄҷ"YZvsk:ql~%3{rb9(pHIB9jLY\{ AȮ y|%#,&z~<0-Ժ'P~\G΍6 w-dڴbw ΂9 G"Bw,Q*)ek)8|P(ϑ F卿_5VT:`O>.Y= }WOzޣuTOXg+iv=ntFݰc[h'E2VLW,`)G=?Lݭƥ&F _O#y \}4v+l@i[Dcqi}br #PrL zҦWslI.z zs ("tЃaB6ZpJLN=<ګI~UcxY$'^Ǎ6̧ : 2bu,XZŗ fo0 ՒE# N߭8ѤX\T:¿~w"({3SX:ͯzʑ`򥣘"Ķ6mR/̀R )Z2~Dk- EEPO^&pr'٠w#Z)oN?vĒ❖!P^C#TVdCDzz9fxч=0|Ҭ>R{[՝Q^ysS>y-h^~m?Jnwi˶l͋kt>".'uPU/Nyi]Pmio^ Tz hzX]Iִj<́w.J q)M1 w!!s.$+^Y"Lu.ׅŝah#g",ZUZ cy9 e5Gj{$"j%7h.YBGͳs?̇0晝HoEbqG;tZlW aFl+-{dGPs?+"ܲB@8덊˅tK_3ٶ|[8H]mc] Pkx m*$W.2l*RB%ۍv|T'T2#S_l ݘMLl0TzyƫOn&-y~0Ѕ*< hT`eP%G;5> *#n Y`8u^!j;Ģ wp*MG*>O\gΜA뙟ܤ)v*+CTYdwT Ҿh=}He0krhFc&U>g6K_FO̿]N|!GaxNTƏnWXׂZTYvޞ,dЦB_vҚnF,Y͝3He$e| dUie@G3Շ]6ICZu4ڰ:YI$qR;̍BqYP鿥 ;}t{MM1義I|}ݶ$?d+8/o3$["![u2xM5#1j; 2S7X-'S{Ӎa갩l"2XT0I5R^C@zAJBWHPjk@c6yaч(1Q^lĸ4 IzIn]=6)k[ ? o#FlpA/" < %ZIJ߷Ț'gzf5@WI'`h9| ӀHxi˶Vz$/ >08P+PI,<[R M+2x&1nKV_rzVs{ӛE=u_v,*HWfV,BPF\%CjQя= UE}*7T tJ G_2ldrtvFRĊ Wi}fTo5tryB3531BGF"AoX$B " H}Ss"ў7oF_q)GV:vM~qѴbISH\[g.IHöoS%2rʠe+ xH {'fQs1 #C?Az]&2,ѫ*|9.*ɯ@F+& a8j?jEobͦڂiHK' u ѭ\U7!v-[P'<}}mɹӫ% $$S$dLlǽ7dG:O;{IWSL#T^%!5 |B d:78E4JP,X˙Z5*!hq1~\l?Co}ŐA8{Zm2TB94Z ⟣}73!";zx͞](: ?zt{Z.?~'qD􎆙KHSWҙȚV)Sߒ3Z/2p>1 T357W9SԶu7_rӷ$:!Dbr[m+oR/]n($lD ‹3Nӕl D%Z;ŁoR9zV>")F5ZoUu:^97h%=J接 J.K75_"=at4>nZw`[({ujbWCVw,) 18 G&s]J`,*ۖMn˙R)1O|ovcKJƒa2-dRO0C["æf fNJ EP5Z"!< ?DX|{X$,ao&S2]_җj8`;\.Zk>nW$)a$l̏2x#a˒ԼHPW\?E|sMʲ q1Fd|PT/ 皞ۻuI6Gx^0DK2_ds /h&رpU:J%%LQ!(;tf`4kvM=\ʎ`j CzǶ1ai;SB8\^: RA`N^[.ouLLJl mU%Ud}#jJ|R(gSub2FVyqfd.ofF׃V--ٴR fO<<6ϤgWqlr88ƒc'LߜPpyRtZAf鷾fzNL2;mm7s~*wS(ǥ}xh gBO,zOʙ}Y0aևAВfшhu)偞sKq5|`?L-[@(SnQ= ̧~d[zcB?2=oMo<_8=餸gַ r b,hb^lU*K7 .MeƢl<4=[⺥=.]%67ϕ̓jzO !Q!(KU^/CG`d7rM({u^=T|^ Nٗ( r>ke)#L8EIZibQԺNJCnO9CA ðsfGѦ!ƬPDXZpH#+-¢Y'~p%E 3j?-!y*IF!ya~jZ߲dB` @ˣ{ҪnlS&VZͿX8e$ ^oFPeE`!9\U1CGDd\&ll(XX[ۚAoz[é,i8(I__Cj 4;B8\Joȯ-JVCv|c^O(b2X!uXOAq[QY~N VbЏ}1uU2pArt!EЕK3i|BCG 65  [-1EzC#k#RRsZйXlPpo٪2,?.si 'Gcezvg)7@HTx;gYbDMPk@Ҟu΋y?!&V(n/2-!aoIXHձZDɁNfv V Byĩ.JД#Qz\RTjg[ eɇ f9L*+MKj~DJl^?mMPUܲȇ GѤ\uTڭj<}U2z^Ǫd&Sv#zN#xcӬH^l>nTNJ3GJ <}eJi#s;UONY4k:~T 8a~I6ۯ_a:&XvRףuQn1TQĢo%Bmn 4T!CZO<\G-Z]3B!s_Tʔn1=:U9wl iӀ}L`UIPDev"ۇL  ߏ_B=p- jU38`Oc.8ag' p;nc{y4dGXៀϔw2Hf WPYb3`T֛,k&bu45v}:SA]kiF3xR(ult=Z֌n8B/A_}/T[BB/o67yX9}&Pi8c`".NYPzmgY)T ayKPdgzTCyҸO(,IC;g9Թs&]/<@!Ț+ըfAԽ2o}L\Svtؔ[Bۗ \k3!"Az$.ۆ(Uj9X/ת1~ \C1Yf1m0ή#X*Wj& v#Y ?ޕhj!?C5Ht`' 6~y,pH8p<6uƩVB6^ 6MΓ\żrP'jٕs׶uD7GE'߂¨;B**X;^%RؕQڊTzt.錄DcִTSmR]q,_3^'Gz-"%=_t"Yy{%eQS0+C:8. A:TPg7NNA[Sqw}]up%4D;+|CŇpejH@"8 *.AĘfA=\.G@*wXۤH3L"F4 |FDQj/k*J ͰZxjvi\xRWg=٥3t[Us0dGX>5+AI!QٝfDtbJ^HѬ;@O i1xB,D.49I)5">q4Y[ꡜ9s0~Ut(3}Usb߼M#ۭ 4c5coشE:sc\&SV `c^@*-2~>֥w kޟSD5͡#Pifx͎[8A&}8@]  ~HL\Rr eGYzO2gZV1 D#i7haب#GEU 5̽K. !Ncz:]8A{cu9*:qzfXv>)}B?.8j]\1_jyB-\F Xܘ߁ #][/eU1H#߳N%1:9a|*˖]?K؃2apcPBIWk)p*0hS,eJX՛a=?GώVuGf";*f~=떔syE B)O%ie(eDn9V^IRߗڛTե>j\J' ȷEM#La־u:Y_#t;vd\Aʆ ֿLTQe8.4ik | 0OPx`ͧP0:FkXa/xzRN`i;wlLԇ% AWkN K_DJt]?QS񝟄͵bwmvb+@zع)"ʛD M ًb(GP7j l.ș{~~錢ZDW,ϸJS^K6GIID0EYY (ڞ&Ԅoʣclq_)@Lj;F/#>t oۏ3P!QI-m\A>Z6dA#_=WKwSo-7x~xqs0~yl H巊|؈5AϱwbPݞ-PmnVD;%M01)hΠ"ׁ$t]3'e};PH!7C7F5|t_ q_ M9߅(j rgĉ<R<Xlqc4^׸I&b'*g?-$  \d.ǸRիh~8jG[ܨ>YL$M# K< +~U402}Q̳ޱo.]*3C}^)"Y4Ӟk{jx*cpA&4]H=p:I]4">eFP]<b˾\^ǒ6қ&υ(踂5칒h"P|L 4jg9x*`:?XnwI!+_nŗ% O*>/ GcJ>glʿ=Zcϸ4ƱXip^YR(JBe썃r`J8onC. əY70 VJ][?gRKB)+۾]LH"ǯ׃D 'S^fBwMSO;E܄Z0,@7CkJX5$Dn-81%޹g4⏈-aHG>jȏu%Ǭ -տ # H!R]QdwlՂֺЁniO=9nF2,J꫖xhMuѠ . [O vekǑ0*7 Hrͬk^Mc]x` _WI[`R،=}5#QU' ƣ!1<:$hyQrUSpр8&nT ^8 }%؝1LKQԛ١bq2zB{˦%cXsj b∕KrD3ٶ *v|: !=F(W3B<|ʜ9"-Xz[ªͶ!c"db)>i9NBT+m(bj(eA=:p?[Y/f3(s-QqOHRRnhu%/ual\Zb`8'%)0 x\MgXޒ[ .%`G[[B2F BWErsL#bk5|7Fg քތ9 5zv` iZFYgQ]b,'=I; -o3f l17g͈iQݰu@K wʳdOKKyHK;WJbSLRˮ_-e$K>udTU怒&H,R9eK5  ZO~_w2 ܐɗA&IǜǻuG!U<<0 z+w I_u1!Y]aB|.*Df2L%#'A׻}4x*=Gr특iBǬЈNpĥ5hCsݟa\h XK A =PDg< ۈ-j\houTccfb%Rpiq`:&d6(rHtRnIBR)i(骳 iy`<)|{XYQckLazƲ[fwd*!ڣʛIᨕ͡Ǎ{^JI" Y#Cٙ-[F^_7GWEM蒫?쥬6irԜGOg~ ߓ_b2zݒ6 dдH}_(Z`L;3SC OYGO V. lO (ҹ=,xqihRT_7zQ 6&Y Ro8^_l(vÀhێKVX5#u+=54iECXo!a 6`jD٠kg~b Q"?TFB;!" l?=תNKpUbDb=\ ޹41}/Ӹ cS"+.-+vS~h?UleAfMt&Yϓ0ڜuT.黴2߸w;'Z@Kw r% l]L..I1CƂ!&6Աk!!rL4Mlq%vrA@xf­yؙE!qJ,@s^dƨcq`{}%ڪ=|Pc4D[f.Vb{5a=ѝp!ڛWdS7 /_պD_a|Y*j}~ YCKfBViqHhrчd/#e%h *?޸ߒ{i͸iWzly .9 f^b"1XSǏiڝqjeG#oX]%y_ N7jF ~AC"q"ͷ"|3PubϬ!0 l6Px\E).J+'fݜk'Ceqkǰϵ0Cns^!Ixs<!CbǵǯZ:m%ɗz(vO]#;M^- \i,y)[VPTi= T神%2LZ~mZ@W2nQ=p N0}Xイ'U6 LHfO 7kXG 4 v-Sz)ƊOvdpau[2Ldf8E%rQ30oZljoƕeݨO+[i+/B>'9K>*.w=}(KR&'5f=D,_=iսepCQjCeɼ&TK\Vo''K}nm矄@]-NJ}isu U{oV-- `ʍbj+mg,V CC*m@:Xtz,xhf)i/T[vڀrlf=o殷rk;%^w=uYVCjfhgd>=)stZa?Dŧ ޤ\?8ѦuvMD*I xn#Ԁ-}yϟvُQ,qWJOOJuA'p)#ǀëc:S .Vz+e MB@D5H, )βˈ>GYeO48 Xm !jof'!O|=~1At@&=^UWAU2IOuϽNsa[w`K`␲i,j{QU8f)  [D6p_SۈWEy3LiFVgⴉUU=Wў* (]@喐&fnۧJdi9FnBg2lv]%LπoJ .硚 ɒ>|96z)*1+9 ޟ(1Pp(nPXA8B\Ojo \l6\S^uQG1ںKJx.I~X:aZM:OƊufJ^휽kH &4T~WGdB~Si9/g.lK_l.8xP 3)&pIg.F]_X<}Sa_rP PE(9?-q ̜ Hnqsfgk1`K3 -W:f/?pna2PIUZ|Vro".k 9d&WSs?ϴ_`IlE/y]lNvYtg/չB!&8DIL{ut@噃$L}xz{~)9 (e_$?E$s[#v*CT\E37P/D꼤љM[4[!"uŶP% R;;(o J#6cxln dl7!yOgKXaMCݢ,bbz+ }7ӟa+?Ril~=QAĬy̎'{4I Z!V$BnQj~QLbVRg 7_Ugg< cMgeĂy*o(ΉeR XlU$,ږ&TCa4sӠzBoU-q|O I}uw=J&x XrTƇc?N =N1:Ky"]'x6!8{ٔڷ7œoQ,f@f#z\*XO=q#Mk ͔o"rc`!!WK;jE=M;3tG Qzd/hr%wv!^Q>`^aR,^px?g.4^ nՄ7Ɯ؅L B늆UznEkEђ4&_EHVmAˏK.]P-Q6[uu 5Rs &U^x DS1yl*%>6hp|6@A'qQא>UtaġA1x d7)چӓW:Ո6r|I,\KzUZnm7L3)[~ԅq>Wua*ify>hWW8q%,[z9^l|&@[5P58-S}#eYo](P oy'䨗be8h0@GU߇N}?( >QQInP58yǺ%fb\*]١ǩ$~^ڑ|;> /j~dX K.ZU?H7 fKX^_@ϼ,H#e-i/FTdv|z}:$ Ϭ* ;~=4?ϼ ZBF]I4yefXP>ҡʿ?ciB։/fكw wחѽ5'Ow0A[#d{ O"l*u<T'i0ua"uE6(PHy؍|+7~=:*CZl^!ַ7U<~?|YM:>dt>kh T踧׏6,{tB.qLV|fijVu՟]|_ҩX,ɾO*?:aD1V޼vlf!y 7}ΆXEl]Q*QvJaYmHt4^T<ɂU %ŶBJp<ڍ,#,A~E,U7nv_/ˆ$61 :1-4?FG·ZY^񒲇P ă:|]Zh",Ŷh/$Vv_8>ioa) v].SQs #+._S#_q4հSk@M25_]65-ϫwH3h$YI" T8esmwLc=Gt+:I??CbCLÔ:+w9Sq@:p/ƣxUsvw3{ Ѣ0&6[䉌,'fF/a'Szrolt}8 rV,pdFk$6ʼnP"h"bK#~4~V{*CeWmftnp,_Lf qHn+LA}g ,WT бbl >F7|C]k]~M5↧5FG*i2p{{.qd~$>.W!ݘﻫ dքjcڂ>\tySkv8*\>-iBbHp{y5| $ؕ2K*F 2n3jU$!5O RΒ+D17lQCdcCԪ<%k%ᝎ8LAoE,R{ҍL%=N-o c3D夺',^B ڐ<(kiʌ0<ĭ/~;4_kyK2?am1+ 3 ԲӡW=|X_)`*Q& :YWv;qKTѷN$`02kU!R->cm+q!8]Zf V}W|GQCFBn0 sHSA]zkXlS֢XILҢj%=l2Hę:‘|*s5OnʊW+Of8߬1WJ2};)EpWMzD:|J pOlxiI}2RzMI-(SKG3q'ny&=ci(2L0݌S-$Li&"iK/\s>Bp} ~ۛ2+AH3ތ<P&GopT^> !X@( JZ|!8sOƌ!{r f(8?ׅU)xn_w&!]L#"ޛTwL'|CT{8v$rR|-ǠMR@Yɪ  |jղ<3h #Pi4YI4.o M0~ ʀbN(xOfֻNP Y2,j(j?<T.\$"y/bxt)/Ĭ{RkHEFؖz(XI 9uPߢI!5huy>_|  P9PVb=a\ggʹb~x\g0>:b V>cb OUFqR?E,F6E9p;E׮icy:v$qalUѫUm.x>92ĿlJgjH0>*\9)7W8= E ?x l@PaHrݷd1񓢇?/(6|x#4T윗D'ZE]{Q_Z&) ED(4H22(i`x~k\xAw]d!-gҜD V(пrO)(ےVv}M!/7[dƢ(=P7Ihr:iNkLv#6eʝ/A&^)T/>|(s¥ ϱ4{gCǰs澖-xK>cb$?GAAKa2-'D6EN-9QYZk1_^G!+L(bx[՚߻#ࡂTҪA(CY\9t1'%+02Qq^ޘW(~T-%JHC)5T87ow﵊첤&**# _q#<$ 챰2J 'q.є7N|>RqkA" | }VXMoL/~~3H'F;Ng-/e=("YH p;fZ=pj lTS)mAd<@ !ؿ[N!>ﺅ<1hzDg쉡ڑ\+~j ^>x?ۥHFe9vS< {]) Fr#$KP0U{ }n^GäjGV Pa^P=pg\yyaT(pKjC[0'8-$@h2BSrBXVZ ilIR2 ,u!&<{ \T n5YY¾1y=MQ"@MtIR)O0/yσ^y"nKW\e#!YNl6s[К[ 9|5=Bk^-s85`yIeJ |!17suTĔdEz͢qj=F@ԡ92Ғu+1[QbU6ļͽ`+Xa7)= Iؓ ~%)Ӌ$Odf h%HڿӀdssLOYİN3R:=#jw Jv S+VW$xގx }i<+.:^Jݻjg.!/wA!U3|/X.ɔ\))L/cG c"7?J :W@es8,.h/( Dq|Ln_hl6YNVpN0m˜{.ZL̔tZI^fM$Vȫi.k/MWe_:'8Z{(۾"@!0 V>" eeB S&1qB4D. I^}1B7#v^JqVJW(s F邍` ~ ILDogarPЌ(ei@v$nۏ^9+?.jvVA#1 LMS&9 y ?L/cjg6xoy)o8& ԗ*rv_vE̸#uXLF?tK$+T?"-JN96QYNF\D&5iy6fmo.FvT*},4_eIqVNT0T9XYP-n>?7rpPt|PYnY@ UmbuViPChYZj $6ڢq +arZfFrsZ;]cZ>Մ` :^_|n{2$ϴ`#m?bF 'ժb J%`VAZc0ce a:mՒ`j {%ݍ4UcTktv(O8z5H<G0:;`i mm--&m)+k&{mLC iԩSU3ku7Ёz'Rf<8ˤeÒbE!)Sb; j/%˕F\:Bl1#hfѐDe.$ie'dRz;-3B>]8ohk8XVB/#d8X3dHuty"HFgmI~H%%(;h*"CF'TS{#wuf|Sd\*@ $3(tMTb{IoP8$5J5]mpHpr:u F?+sM 0Bhj^ >z\P Pr%>T ;)=?P;.ϏU Kd Q)}&ivCcu 9si`jm rH;O`.4 jZiyt!]|}ŷ Dx:%ć싫&!J8`c樊:.딀_'{9W?ڌw T>\ɏr2݉"9#ݎ:' 6o܀+0&gxJI`G}ykhm_zN.Ye΂\^yLree8C9.D5h -!4 AJ 4$QPK/P%B6y%* \>^3t]\fܝbE ˭\|WZz6(!^ʉ= > ̈́H ^bO_HNˌ(X^Se#-VѵS.JVn3E>-NP"j'juLu~-a+U&Nz쏠nlYF1}Jqy"i_9B+8߿a<&QGO:$B&XoF%Pbl԰.[Te`8[::_c#?:u8J<˝FC= skTAJKUV}I8jqlZdN.y *v8Q߱[$GһHHCArc:vajzfj&j3m/a1msC˜XZ*'uOy6j=+w7/| bji5Yc1w.vlHv/c=ݑCRʗMX3 3 <=©N4 ȲqR0zj5LwBnʼ0yaNAcZoK,X=y~uK׎Pvr][xfK/Ap!=>99([W;0ғ(%bo1ߋU4[T a(i$#?-LEV9t-qѶ6Cs]f`ȹbs'ݙ{ÚeFj9[)"HWgI5>ZƘޥẕe'd6nJ؜bȈJuVl伝64.L]FA,۵QUD&*u]S4G?BG˖e JA*ݰH ؂*}#gGH1.4#Q]w>ÁPni_Z$WK>eZga,#hrYJxqNJ55]糺P+q(d ڃLe/m!&k(rgGbѠMN锸ڦg;5B:h(ɾ {]Zs`uBrrI_Zi!k [7#dp?_K5*~{x)00rSY['2 d3*(NnjT!x Z=<ܛFu Qm$"nzj9ˡH5Qc4"P,pX,)Ep?edz7i.+ܐMAo,sO9it;$sm}zR:iFVYP|A 0CmLUH*㏑A 6#BlsXZslTZj_fܞPZs3;$07SZulilcXvSle~i=hPNY"(\?_ֽm|xs"Al5y/\]9 ,?Z !rGN A&| Zp s _28}>0`.p;ˬ0d76ʙbfA*G,|]p3_$l hJQEDO~8?w٠Zc_[ P_:g)iGC@.KJv5P1dIλj 5$M^Aiv)De4E\)7>5D`i0$TEwH4E ~e;Iv+ҹI@mtޙq@F`9}>v~ -׏kFwkƑS ~Zn$DD+4KGR6&p4@x"|V ^+ W>i&PU#_q@f4->aS @u/x G6a?a|1Om:VY^ezp’{oYµouj< 'BLxLS L"*#jrO: ~=v>p%1p n: .V4&zV.Hru}iSNafC '~G5$Ë8aMqC|tl4ߩII/"9>inQi<;ɽ!}3f4%*i5Kx^r7"L[:+\@AV铧TLj[8-VF} LZݵjo #cb@87PLPɠ(jo(7H! JCq?6E](Z4A '8ܙxElF1mnK~X }B`Ô$bUKL$x 9@aqb8h+o m4cͥDk'1~4K:X '&66JrgF Dpr*ܛ<9,t\b|{<5mLFW!0! v;kKyJP1=5>^QF4Onڸmaha2'yw%4JwD\mtk;M 6!9*Nno7 sp0=] A,y{LAIWVY3@VmthSchqK `㫸8WlV.$}4fmhwD.6oX>3h6\ o K~&LcB:=J1/tpا? -0qk 0`TDz/EG>. ނWWt%@v>u 'kӖ.3ON76568Ϋz=콼$vD{{?-愃tcbiqFh+iunTW'_4r%G -&2}Y A7nmkmʫGq>tj/[gK$xn2կr*AH-IZa-;:Tr?* lJN,(IoG#eRDQEレux wrqp(ͻ]8͌d?mɗ҉XOE! T" " [*ExVyLhne;LSH?kR6iSwbX!RnH7 `woլBR6,T(kCʬtש-}`w,(}H[)~KͽsKͬ c6H1.!'צ"&RDBEnzz0qgdIQ'v+Lui=}>*I6.ܗw GCƀBѝU376H b$rR0mAe^'ݕ)dUFԇe`#_QLY&^LQ4*rSGLAאB7)-ޜoFH3#vQFG i(5pL:''<#Ѣ" o)((d0L2+X jYag ܊\̅# Le5= t*@%%Y;t A`!piψsP5x:$B(Z/5$6!B&c`e=+q$k:t"$^Ŝ^ y~^6 s!~,.cK-@]`|E4^ukWtU)us /M f,-ue Tdјk0-E撦*=[_о9"6;9#.=R. w bfvMh&yUmv@˧V`~&; gύ!)_: a {]"&Mf|(K?+iXQU ,<`ؿYCx8 ml %/T-m80q)RDklo}Pj~>>("5ybExX2VHMifHs˥5_PaE<7)" n. ^[:Vws"L5'^aeIT jVB;܀'X-/|oQk:\ 5Mjڰtn!לoV6ЖޙƪE$H>kW(?MDhnQyE^}d mQ5G=~{FVǽ-[شbձWA 3+JF6E*=#6UN4?>Yp+LE:k!PcUm)=N{?UfP4C$w8~fa@ Kh'kn;;6͹]0k6'ɷuSx7)/~5Fw|_ *u&GX jT)vL#>34@9nw}- 1*)s^)$\O8XOi q->Zd|]E3]s8xqt/Ho,QfZ桨ޮV"m"Ŗ]VW|Kɺ|F w͸;p;ZJukfNrh Id޺\h&|q.rws]ExkmH_ h̵%4C\l;5nD*>MeFGr!x\\3j:)mUYQ)ҙy[V?^0Hx@JJߛEiu=iNOܒ΂~`\[Vߤ1=<>}pY\m ; ZZRw SWehDi{ⅆ l KY^7A2Ucq2M Τ|5)'iE{].5eUcD3[zSnFR a$${{olU(M\ R* ڌ! 凑 tVY{$ٹ]~C?,X`oOaF/1KSE %29Hj%?Sf1&z?nUWd)ܡݹkDl' r"'1̡6JH~}FɃRiJ7@4Nm|H 4-bXl:\.m ziNM !ޢ]qm*3 <pa/^q¹IO+;&ML1!n; r8#5@M;U`ZmD lbCdj2wph` fTQk R?x=RȖ25ya5}i..ͱ "O#W<sMf8@aVq"";+T9lN%5hx#&0G;O SsTs-j#/hat<~.23aT _,M)`jT'AD>bN^sVY{bW҈ <_ ^ T(Ez Xkk4|.KX{|ԡx)^罛*xAth@| Ǣnnc${ez9BEU,$"wR]xACCqxMO\I :1LK~vyԋƸګ+njU8#&u ]%}:6ahp6Oݜ&3\#RZ! o*'yGxwxCt[\E )78fOnTƧf˴]>TM?mrF#_zG˔>^pQgS .Lc[iz[T$7ϐnܵPI4s>ưlm{D+-oSǸ/‡*I( f<*4zFΫl0mF AYFg*r*b:/=W_) NJKdD\?`S_nf܂ݘlզwf[n(߫EQl8䔯_ڀ'ʩGNAs [yӥqYr|nv2␻:âN.yW4l'l!*ՠ]+)FT_ Ko?X CwPs؊SOJbg׺䷩1+[텧5d?rc0rTWj0>"tpbZ2g39Lﺪ.vX[0pi[ҷ,f_h[0 66%4NjFQ)j("6-W802g_ PFl1nԸuvIܸ0nX[q|L{,3m3ƾT)eYǣwLHEs #/#LSdD0"ZZN<:;j?D2LuJ= wȚI\ˁh> RQe*ji*K T.?^@ab3oINf0^v9s4$#n|l+K,Ek,1s|o otjZ&FC6:xےAU};5PLӀ_iUDHH Ma0:' X4K\ *O!浢4o ]a8]D 8.Iz.5MQ靕>ah'o|aR忺ÀCɊ6.}WZjjhjTijL8(75^5Eh06~|_ketuk `S319nk,(ZykxD.7q[,49\@2a]9LD t'E-?mk^3fp|yШOAmjb 9)6jv uo8HbuR +h<4f<35pFŗS\-P( kv~Q;m@z$wFd/ m$ʹF%Q_&J{h8}CɃшu~|<8> Du1 Z+kU: 4zϒ?II.?>Z@  +l}%I& l@یB4PWIVȧarM;H,AR/+o3k3<61'mN9]nF>[jKlz"P-l{GmrT2%UCkh\r-w2ƤLnUqc'!R,--ؙV ANHrGr{6G:‘}&WJlF $wx_T xʚXhly:m60u< %X7>i9Sh;MTNmm`RrH%NX+˽lDaK]n忯_V2=,Y` ٴA`uexG 붴B`߼o03XepI nKYH%4Ih T@j؆7ُ91gJ/Q/YPXJ@t%raU:gpKU;DW ̓r4O#5 P: ^̱JrVnM=w Q 1+[l4m0ZnidK: >Fg "Z0H^k?5dmaY.\K`Y@ zl~fb-}6/;\_@|Loq[*oRD ;aB53,H^H"ץ"j\$y97;S⏤3oL2ew&!P;%O^=V%ĥ&q?&j[iu18Qͫ/{#(h/UzH@E M񲄷I(NŀŅV7ﺤOar%z Ʉ eCGYq~}@Y'wу!p3~7X2wns[.8ш~piP!y eItT~ 51rj}Z?_ShHjsC`cT{.n1 ?4m=ѿUڜUªjǮ=5ۀHA: Ҙ1bpMPE"V4Ȝ#mP9:By10kJFri2;X:Xʛ|]̷Vҭ OqTmW~rɔiu#7N c<[ AؚÝD_A'{ZLzUa?S "xm>O ~H!-Z2ecbRA '@x0Y{%I?\͌6s0/b4 {`!;ruqkBy1 |aCP/2~}҂4#")? ?ej>aB42n, @"NrB\}=kJrzFzרyN߀ʐ6:%șɽVj]`YOPWt}s'TÒ ̤hj8qI\ybX{rj/C NF;{uhl ڂnu,*O0'ƫ|`pN`(%7.ʸo{6fn"6j3[Wg* jC&z J[N4k8U.B+C#>Ƒ>drkC=a>Tt}qQI[0LrLFsK)&i+MK 6iU;ruVl-M('?`@\+"=FafR,SfqH9*ZPr4^n"S5_nӼhhJ |-Hy{'mMncz֙V ]JCt<)CFz?Lg #vp, 5qiZ?jcE#xu0 Ň'DPXPo;SL"/H8SۯĚڵR3JLD{?^G02]~SQy ?qŕV$džcmP*q?1 5LX{ӍF49.uWÿW/i8ڕuS_Q]^G" pH8.g 돰=(q%*EikK(Du2lc@@A%5T1.^wrřd*y&÷/[=[l)?}eSX0%Wo'K\8g91 4ެ5];j* iQ~H"ms!UZmz.zgDb2X˸rXdS&%Pio D3GT*#4A#a :@:'#؝gJ HGM. c.#ǕOf^pHrw\?+K!_0m˝( u>Q2Y+b<9d,?ivQ@{C%׷?pp"=]=O (d`X2]Kx@.O,j7m1|l#oб_+ M_C'nyv?FZ=ј 6@X),;i 񲔴a\dNn`/a#,Vdܰz~ $ܽ ,Q<VS+|>]nDeW8}I(ؾt4pkM*Wa i>"-߯43GEH-*:=hN̚UNum#wlO12t/h*])mITj)^btf-V"ŻQ|Y:WCJC*Zp[DfylŸB]]m1-[ s;KRYp%NV@XC8fh>V+}R"}<8-H1 (^!+ĐX40qbɰhJ{F $y ;i  d隆՝`"Lz HV-).Z٬6띚]}JP9qB6ϧfR OZq=`' NqbZG!( @]-}R?]߮rsG:4 ,вjlr@…vr8cs/d*?,C&'9@5CU ԁpȯB)L1Wl.1AXl;WDi'|h=%$OyW̓)Ȟuǖё-t<:WsӼ7]0xN?:yt_vOK$eϺfk\Ǧ [xoF붣GgȽqLb;M%ULVٙ)_,N*m-g*O}Åw2ift 0L#UhRݜMYW &ݤZ]E®}f-jQжhQ?|>9TVL(_#~Y|4`"X nBQJF* D ȡڑO2~4~(dVf!* ci\5渑&BPE0gbv-j"Y55R"o}Ĺ`@dhvV#+(‚u2%zcLR4o:-MF] lb3N d: b6`'խ(f7ќz& ƗJ; 󉦭XSL1Uz Fk)I"#=<h&@G!} R-PO91u=BB" SN@V[9fta;S jpƷuʭڋnِs.\Q45O 3;.jG<ÓLGyZ:s/"UNn{F%3=.{uzM??]nʆz"fA b|k>J5>KRt3UT{^8ӱ.QB[kǚ1H7C3_VJ`BpDgՖ15=zO4b"gC죞 aU4H@|# {LazGp؛^_>j00~yze]Nej'K˺3n'u RܬoEs܊;߽2fdѩѬ`IEM'J(ӵ$Q굉#x$Y&~}/ ѩL<=[D 0*R8[ [zGn|1az%^ f=v{0aNدR8XpG>YQIQW[je14wq_nӏFy%?C3?m#jg{F"!C d䡓O2mnFK;Hq a)LY8Iwx:̀V [Jzx%' Jǚ`Y.lGk({b{S[<}pPEABY%^CRN_Zj̾\T^:/ODD93ǯviXm ܥ~#Y>Bt @9|9Dڻ>"M { ^5FwrLD=b\]bA֜qzˢ ($S ѩN %zsR_g3T'sSUvdr^Z 'a00 2Af䎉eJqCDdoSu]ae}vﯜ{"+§궡(#D js(R&#ά߈өE~Cʥ>^C\2wxrěH?''s _۠Ҙ~^y4|n 1% -O2 uE =CK" x:㵮b\H/@>^if/rɞ[5Tk# <"ݼay@jPD QTB.矉!.jBNFqug7=w ն-O)JVK D@'NmcKQ씒oH QHMC̬(yeak%OJ)*p6Kysdϳ%6G1r@܁n%aζE+]O@F@L<8U_Z?%}/mFVw ɲ5nZ\% WyV׾V!Q-Š08亩(ujv w˵GKNՇvرHrh^0]7b -wF˹T'&vpN}8?D1aZnGG syP`@܆oe"D\UjXS_$9I# C,r>ߧi^ v^s9|3$+oqmi]jifCDؽ ѧ[3]K\j'{orV/Yh9J?{W8=R_UhȌՉ!Q?Z\=5UmؚcaX|d *6]gvI4:)FXdg&YB|LWLq{Q[rCE*8ϰa%9Av.f߷.rN-矬y㓰9Ԓͪis/z/D~+uÄ{|/o5ܚ:e5OpO9I3^*8JXL1\m 8LJ{l#&)$ hx TtFe` 2r/( xЭLV;crx"nve6=GԒ!b#o,kb;d "J;uH' )cͷ@$?SF<v>٠QR% *GѦq+]mXJ&A'[33""+aZ=-ZeH&s)!MU.}Nbx=ӛ\햢cltTet j`CGV$Q3PNGϩO= TO(;ѡOIv\#;cgщo5˘{Q3jeok?JpN!,'n>?f!Ppv"fW}ZR8D0mAF ک&Xv-`@TQ/t y7{#5[ŏ{]^%b@^Jg}C? u[SS@Br;xEi :Sk|C*=*rrՌ8#GLM2M߉YƓwUO.R5^do|IVr&i]9 cLo<rVJLt%u7SYe0r I te?2imXLNj][$pX^ȇ6f.# 4l ;snUS!ٍS^1x'V(ҳW+jFI&2B&3ۜ($=Qpº>`A̢Gߐm:̭\)wNCD.H #XgI+ +SCR&}Vh/(c6 ϜF]hcdݩ!DAMcAh(y"ByضcmW8D%܌}"Ht^p?4X3VS$ ~YMꮄc_O+YaAbC,@3ʢ͋ilF6*^K ˟Йn/?CͤΚOM0 pTbfjwiDqVz?-̎yhJShz/#z(㌛\q(2l!8gi4a|ҋ~LHxfWW.@d]:H[>#[C sj|DکqIat/xmɁ42͔8 >xouKsqJ!ȐuzeکsJ,͊U$S[P"vzӬA/As\O7;X 5ہ>BLA]IUf}up:Jn92aצYdex+*=P}?f%^DJTX܁姾I `&"}`}("-ʞ'x3jܲҳoJpVoC 8=WDE_oLpyx[?GWTf`O^$^ )\%TcєhG,-g/ۡC{qEƝV.s;Bvyhy۲$ i?dU[w=S*I r\ Aqt/t`f=(WE6OϡVSa8 ]L`u5Zj[܋Dp tɄd/\GELWc=K ᇫJU8&[(*P?n\<021-S@0qcl`Dk.ZM˜,mAEՁJ3YϺ6? G`j&qP>Ky_yʛwF<uLqr$m&=6P Mg&(8'j&s/,A(WG>Ⱥ8R1`+fFM` vjrlÎȣ^IWN@?9#kjGszXn}x"t]N2)%D&/rʕVk Ĕ(5bkn %eSh4ϫ^J8Z]'ӡ 3%|F ,J0)3tH#DE1F$Tw*4IxTsܰE 5t3.5_?PG!,8;ՆQlᇖrN+[9x0s3%N{Q1J[fBNh_5+ i+ӻ@:(UX>'u)T"|X}K8TPtwGyϊ6'Ht  @JyYO 큫Kx.HԨ{!l=ivbiGyȝtw֬:0>%zzR'1Zok71TMWr{2?*=056myYj~O Ľ}bKWةsXl+#@gҝ07w\&VoŌ[oYQqځ}Ԇe?cD#<߫TkN=)K1XN5m̌DTbg@nIZ#Wzt.CdUtsb#v1ZoW y?Ze!nWQxIYE'ty4klʍO?}X>CU7ro%= .=9TYdmuBie>fp~#${v-vEP.PwB~'ᩁQn;涀H`EFEY<+ cھi jT ļH]`z7A ;92 g XVhH!mt /JZrcBy\na1}^~l LVa(-nÀ|vzޑ#@^)ŜG3(١,nkYj0[ <Q[:flj)/щ(g zQTC .z@ C/bvOp1/Wb@=dަn[`{ïcOirF[ZkXӜ.~8>wPQw~ca?2@aֵ'޿ŞV43[ؓRaX=6xKQ=m$`eβտU8R\+ճ?t(ĻO;!r- GN\_mj Sӿ8ܫ5"4IJYfXI؜vZV)Z Gэ㲣)ɮ Pdsjg46ѬW.d7(2XA_>^mQC| C,'8/2ǛMX$?Um(n[{j1HB/nFYSN#(//ƏS@S'ehR-w#w $dGh9Z(/R< x+}1{yv} yJw5/"˅A Ȣg3h}"ڳ_3ؿ"$oѭci'Q_bj>P~%}Ck5i OdE$xqqM /FSeIMP$si?qaq A*DŽF ~Y]DwI&A~Y6~pJ^"YL++rpCh.4wRw ]U' ۗaƬ LO&;dƇrlD"LG೯ D JqDǨ:u"\)X:aՒNQhPh,<*- T\eo+wfZqnXaaQۉm]u*q#\4`ƻࢯ))ytt2WZ0 =ԣ(1./;z:(-I;R%A8g c ?-=T(fY{oHL,g5Wghe7 ~sfGݝaDV=OdV'W}5?FeD+W?ˁ":|/"mI0DOMs>vMۛV0^F_^6JXTfy+5 R#SA(\E$AejFnWHM#=L{~U˚Bn~]GXtQ{1l$'3Ҫc&H T, GO}IJ mlH_[Y5^!$xU >S 9EhEnhPX$H\j{X b5nTHǿ|`59UW?3(~]+jT ﭳz#` ^:8bxМ:ͅo>-%>Kҧ~V>ODjTXjɭ8LO$};2oRF۶oCӳ% tC7׽ATŻiAO{p|b x0n{|ZgE:YFMjгZ➑AÙ/OJLv|ܻj:dCHݻ]hZ_9L:GJ:íRb:n15H9\r*Lh(aREsHKQ:#cyWUCDPUXh;cCSa]N&arIUцD ׇ8eYȇYx"ij!=!%jR |[/61P[SnF\A<`"|fW-L$. R# uQb|ې?fA%u V6}@ufNϷdjtVZ@Xa m/WQ.9^?$9$:ī6X23ZU˄ŞG:8Rx顼vvV ڼ ]"l ;hAi&A+#2 >6ݗ¾leM̥I+ЏcW`Ӽ_~9$ҙkM4Ϫzb|"ᆹ͊Nljrs_Dus!8/Y&AR#e w'M`o/{9BlYV * OtE 0SSE]#vr0\>䨶a]JlY^_zWch/4Dd=7MuZkײ*16K}eC*wGyk^󪓣{$Es^.S㖰ҏ]!_A:bǏ{|4ji9ۉbW 13ūO(֩?kK G̺aՎJ:7u`fpwul]QXoٯYv6NUTNw㝢#jW+M)fw-D5ĈQpj,@_Җtb'ҥmcÖDbn9KvkVV]{}ǧF=;&|A89Ц6U&D ܹZ)PM Q%9(y1qF!t&%E 41< }T_`qh_@| h[죂2?{TqM9- | Š SOMcҟ;Àq/TC!|KC&)Ϣ>@#]X0]ntfTG%(I}o,74]B#\pȲB{{ZW~=+s)ofmx/\eSrJ۝ƨ^ҭ?-5$5OLD2~9]C'QieHl /a9 6,-Čr _D7TjA⒈5iQZkR 5Oa"@KOηH(tQY[_&t= SPoGb5 N{VPv㔳|@l} ԏT-{t:Yu?ź"7.PKyknO-\@Y\Ț xJ3ЋAyRzT6_?ܩЦfb$[L nc}?h@ؽ4wM2%z7xQEiņm}FvvCksW+_U*&PYII9VvR=C)R?_hpRZ "kMuMa/>+ !(KfMj3ia XI!2,y4+!y҇ka ##rqDL7}n]qb@r=ấ[+Jd~}h|?mHWKIfϭ_Hi'+TJbkhm ~utatw@ - _(٨L0&Z֎zIO#9+}f+fiLx0?F*EywöeӬMAZh12dS^}|ٽ aq\518~B $#c#d>_c3H@i9Pe !:Q">`G]Ծ,Sل}[nlqf wj]Ѓf_{T)&؋292S}h\?9rlnx -gRybAnCog@zA}XGz.({A/Zy$m9<ͅM_wZ==tz3ݳ\tP%2ll?vM|I66٤\шj++ ORc C!.揿| +vvu@p[Ľ95v ?~O~Zp"L זzգs,M9?3@$ lh8PVWyz;iqn/ۭ$W4SS8 K2ôDz?nʸ^ 1N*߮56lZ{.t3l".ێ>Qmt&zi etj!%<-M-wH7ѥqh̥{ ץ h²J J('c'j=# w `%S}; R_5KX<l@kVWn+VSI)449CǑ w:n"e=W4(9~ަUxqr65jٚV;xzՆ|qnEDo5"E Գq2`sE\,^s^fc_jŁ3q> 8t@wp6W<V]`~I3zlM8 4f/)..l2S~dg?+Os2O4zQ 2' ЕzwG㐐~Op p! Fα,O:jf{hYݖ8C`=F7:=>U~siCC+ e- s3bwH4Z9@4,k [BnoeһA-ޢB/VE~YE֑lc\ϥ i.`'_1y<M?tih(|kL=ni>utxTrq )Sb19i[y Uo!EKsF(Y5OMX*T=*˧)h&"wtAfZ2Y}!3B7HV+u0A5_WCagC5-МFNjCWl! k/)"1V C#qQKGn 8GWfן(- ~vjCɪ}=Ƥ~ Uh9$ d+8MڂQmő;HDmм L,l$(}^o哳OF1 8y2@{/bH[ioN՝2)[i O "kԪ^)&Kð^&yC>Ή_@)@,]9KieߍDmJ,(Ϊh=U-= F`yllqx "2<3(/z lS!ZZ2GBVlL4 #r#[*,X^Z.!AXFЊ;#n؄ l [Ilx8%6 :3% mLh wړt@0xGF'lWѾ=^ QY@ "YG&k.}[EA-vۆ5]5<~8<*^E5$+W ZhX$EBpJ ?E2kUiIaPJ}3){8KWH/z?\$!ַLWZ.[g1RN1~[Wl=c)5reNBO(UW{S1 Q3"R RJT[G"(a.o ZTz ~2H-Ռ2ev!l2>pltVAumfÍҸl^ܞ] ?bf|C 㡱- .|؋Eã_}"Y?.P9,!_๔*@d34BLwv|4^|B@fgq5Z05e q5GauK)Y"ƶYm6/_Lܾ[h#zvlHx#-}I-Qm$:y`I)5<9KkƇ `1uԕf1Oq7f}xSe`c:a:_zNksAzwi.KWv\q3M{_wtF2(]b%! 짦`顎 h\$K~{!Љd z}/C&ZY#ث* fZDPཥcZ P(ɤF/|7pjDeK= Ih Nb4uѦ4N; o 1_y̳_mChi(XΛ7N1{Z }qV4<U&'+1+cE*2Yrm>_<؜[Fc"0KQn k2ߩ@[7)Dx^^cvp:jYEh21sfbșH)w|䲯J-KVm:(!ϒᷓ8#m62۵!ODhJM_ 4F6:1- ([qV>%<I"xO}U$Oko߲҇dgZ,ׂRk}Bd &  $Ml wax$ƃ4Gk + &1d1+(H ъ{ Ͷi{ʰur_,qRlxrg@4xZ[od]vcl"uwG MKHkӸcvf@*!ʇTȶjG[b3:&Pݱ\nV8B9C8AbbX%r`:}"QuLqFO,3m {O@I-[`pFe)y6{5?s;FRu lf5D"#/3NU>~9  ,ݓ-+R6G1J=0X3GXY|}- 7xDӤzFa?a?.dPHO=?l%][^˾h0 =e5eD}4_ )QhDba;#=eTtҧUB9˟75V -@BY[؃Di?4U3!AFN;y'v4@[wn/,Tź1zYef7g e HXC%J|Bi-`azU* QZ 2S ػlLF8=Y&Fl`QC -~\ BhCx,hX-7.2WXYWieLCV.}Pd^RQ\1_%Dc? yfHj~kūB+;i90YjE;,]ɡxS v (o)p$P.v7b9E:ZcЗֶWYs EK+AqBԑe)ӛ74EI?~`Zq {HIQXՔscܑ[8e KkLo:z9}`PstXԀi),=cUC.MmzV5ƿt^o%}>:s5"Hy<"Prf,i,$ʳ 5㦍)hu\x5r(⦝1p?ŭ2L.o`|IDՂk`Q6SFγ>`pQJo!zݒgge iG vu^,5>uk֭oIRvrc2*)MC#lP&'C,5# W|J́m((3WoAm j3`r 6`*{^g>"7L@!]L n߻PA)oLd\XDc5*(LU6׌=u+4_jk촿`@gϘߥ}-\ϸk[o~cax:N~(' =h-&/G婥충)~Njf0&3LL\NVEqO€r%TaA9k`a)'ׂ$t` kj jM%^`+?&~E<AvŊONm6𕁾 F#p?n؎Rcw)9Quæ-r~VeU6h_UK^E50'p-5_> Pݽ/{6NxQ | $Ev <]~O |+M[s{iʽPU*ia/l(vijMHg=A٤n_SP:h@T]0i\pyt5>qIlYtVc'L352PtVt >d/tR`)X N\0{}C8ef_ϹDHvПd*O7 d^^ocGO #dHn &7m| ʣZo˺~;d';'P7;#sa!m`.P0c>>KoU/3#>f~Ca-%IX3|xJF牴S۱epHSX`bqT;g`b@72Aݲ+r$q|0C^ =Dh0 y!Y`+Χj u)ΊէhMUZ&*<8Exfm ϯnޠĞe~1"1Wy?u_3q'5]O%ЕAĪ%y9 z87Q׃;-{5}?uOsGcDeVaetAĪ᰾v"*4;~Ӄ{ްiMu0kF gtn?Bk)Dh&ִ1h[ =KShI{$ef7WxK?jDZI>2"_D.Aw`)ˋJ yqxJ`az"}_ !րYeI(ʳbI[N:&1Jy7ɖ[S.żGjԓ==/bNhp cF|S;xW%t 5 l4rּ]- 8G%'2x- >6DbeWx0I$s`󒳒yZF*>ljl\4SƈgWGP)jOXj\V|w\y[Z=;N g߁{~3N~ x)/MomZ.fB)n X9-p0@"FckZ8bH]9FoHq-401zT$8Em/<Sxht"OizD"/!Nduq4c8AH4Jǽfo6 jeJ4+̷ݎ.n#!1=6h_z47zA|q݋Z{u_$rl<֢F= Yɿ qO/c߲)5Glst%L_v7- ,NpD zhR9S"ucGjͽ^:B^yU]-نB:B䢫a<$>{eI3]o"0WM̕ێjx#oav F2Z?t\QߢPşek[CW:E)f)Ր1¿e8i_Цʇ ^(ї[DB+X*٪9k\;b}e';G)%QNQ%,q lH# p&1f>ZQ髪n.2\0H< r{|l$kJ(5_>1_;\e3z8CJkQuMVeD8Vt;PюʪQ9|XC˾QצlTos2w1w9  L/:y>2:L[p( )o+ÏjԢD;YS;}jszej%KʟP4% W3_ߏ.q;$vՂMxwy\f,=Щy'K'tJqNqKY/ͩ4(P0%sUMՐobdb\Ie(WEA p!sy+`\k}5M Nk5s*Χ 4 ~ `W'& |i?6K kRs"Bj >^1I벮JjoZrQC,lEBt{=)iA8"EQ`JSEi 6km phr ݨm?:!e9\grC"]r Mꝧɳ J=`^bd:ATw /gz4f1֯cLxK3&F ^7 BCk6Z%,242OXʃ'YxM6|x8iXLdFq#~) U}PrESwm;Y!wI-YWp1ܮ9I*CάGZ+ ty!09dG '\ϭk[/}V)#VcO7]9| ^#TA*šnd$@Ji~rmsWJl'[Թa[8ȡf=InlȰĄa15тd$?v<)}'ʊa5kKksRm‚U<9ދ׮趜/H'+u# <ҏ j0@i#^=`q9b=23no?\~% '\לTna2k4')vWW)RbM9J9,$283 Bos92l/0LolE\H+n.`hSt:QܷNP93sE`+$4moĞKs0ѳƼ2`N1am\JЎÜB?닡|gMLr(HJ.NN~B;'D„Z4t'8ӹ7YD 3WGt y֔K+kF.7~ʿ$X,ݱw{ҬE( =dԺ <>a(BM4[HRtq!I໯R` X- eSG-fԓX/Rs 7+asMl9!r8yum1ETXㆂgGA$$lHb _32jp7S> R4P $MN?ws)J\aGweo\},P*i6-uة6RwuWg!ρ^-YwF-Nw8ZP^No瘕{fmY&c xN2/ԫQ2`Bҿt:4D^sX@>MbT}%z} lD dI$*f|)Dubj} z@cT\RaNHL_ =zj٬zF#Cw`^h8fR\@gCsOv@+] BS.[?tVg/bțll)$Q҂6.~3ɚx;k:!>OPn5S (˜ŬA \lܭHX4#Hαˋ QBB=$˖\4^z 2z$r}\yrw ha(G<4TJ |b7@-{>SPv=?7&&<¡ܫX2ȟ-oMu^1B7M{?i !yX @ZK=4l[4Ԙ12^C{ uW׀wy|ؘpyP8b'cƏM =ŵ+VPLN͟c9'qx&A8LnVpL95[*iE cPǸ OnZknaաFLz6֚ +q@ل Gl'ݽ> ?Fzq9\2(-hܳxʳ(+eȃ5oϛφi L]k EO`zO*@64i쬬Lƒfdux8ۯ XZH+C3#N)ر؁.4|9~0h'$'lȤĩuV1UYpGsEnf(AkX N ՋdקTǨ2 2_/c)D /<0fgN):]PŽAԎ "Ҭmn"QQj5 6-QGfнt7iٙ{ Xx"OK§މϷ-}i:%0Me߉P7P+p#lG e,O{ZG*DS Y@e:h?oGqqiID}3,7zL hך%ENqOЁaXJuY .bC@*+==&?e]V6hK=`qlIhL]y#J1+-7L50) `3Òn Am!qo]Oq e `FgS/zjJO%5JfP֎it控,A8?J S< ,( V/rxF#pΙ#_合-eCKU [PxeUJs=q|KXKIƽ-s)a9>PM"\J,~a.gX_%AU6alt4s*'l=m9/Ϋ'(Lڒ z9*s{ -E~r2vD 1'bLjWIYE Qo>;? 8Bٌ5]6Oq?Pc: llhLX[$Qr)j,]@jңw[گ,#5vrlVs-5HB^BaުAOF.Pys ąQg%V~G*q{IyfL~V' V;9|ANk[P8TYoH*fisb@50ٚWLPZ Kti\|%da,sh`-fb\E#i w>ze%&KE 7zzPL,^-M9-ٓvAo,ݗ0EN)v;X$L;[nŒ+VnE*H7;i?{*ϊҮ6h3+0Ftw+ƓUz[\!ex$∊J W"g\NՠaэN W;yZJ MZ-NUUH}7Xf~0 l.3_GߩO.ll?}!śL,~pýaۊ8y^𑌂J72 i^o~c'"J= Ti(TM4%fߧ.1hꡧ;:ڌnu;q\Fմ@ e[͕}#N2|E_ihFa*;-Wy7^(HxAA8۝0~8&k?C1G `5 K0M,z#􃩞AꍰTB]69ʂ\.c5p5x<%2&LAD0?x#Y\ۚXʮprŒGmcg/C*H ;<<%sҷd{UKrc@SIx8TQ.Wٴ&k5Vò3_w*xgopHUг.e6Jy V..zɼwR/8ed@s*¡yQ#,66Xd7h4pA\$`":+Bae2Ey'tb7ص} !ns,+-pȔu4Ӆp.a]W}qkב6B\3&.^ ־(M|= e飰w!kXMʼ]f :X֪DΕf]6 ~8 flc]b:Yr7"&u Ҭ{t,#b|w,vHWX5zgj6.I faBû_ł0ЈJsjp)7`*폣唱_Aw6YT?l'#s03^z21[gD6\RH]* u3LtE(/57 C6Q|`2E$»>A-@_go~8`*T',OSmv4OG3HYuڅ= O;pR)bm-fL }>l!P&M̦@i'3f0"dߐC¿Wl;E([dy1vaU//Ӏ#)tyZTqc~E N)) ڇ9 ^Ur(TFG*Yr(?ccI^oIhS2_Vdv 0(YlեS# !rڙO0( tRL&S'U)+ix?rI@LKJhjI Ɵp _\6ו H5Pz 7. Ukm[sb*;MٓĆxO y`T %D ,8!rSJƓ~qIBӈ'z֖OPp x#3opp*GZ0U(yïao 4]Ӌ>r+ݱy@:o`6/-Z#nT\K]IZsAR HؐTVUSzH}TKyRkz7g\gMK9*}RO=-?jehM5 KGHpQ o')?(5nt;D]J?_!VDmH.$68?xG`LwΎ^C.C;60/;;RmRoZiz_4A"m{2H6wװ{iXJ7s1*h 0 Zm}&Ep&?g=gz\K2s%KR'5s9) +D{ X-De؝Z"Ӈ[]oÐؕ5/k6w-λ`]A #7UbGGwv6Br̻5\]d0Ϙm&@Jz mJlAۏZB- :)U!RW~S OМnqPZ C K8!:Wp8`uor: ? 6d* r`s*]P="#OBhtlîLHG0*ø?]:T`;c!H2[_ Co"bA&u Y@:HlJ Q 2Js | 6ag/DF$=SXn.RDՒmfcKjbHwЋSN:V,LGn.wrüOw׉ 6"f@t{}UͰ'$ ٓ I,ցTxL*4>rò"gjFV )V: W$%8ģ;%|@+LIVQ1k6!A Vٚڽɻ :F͸j?ZA}W3Җlt{Kb:Qcx \w@H O#3۟Žz[VA1nvݭ}Wſ9[5؎%L@s=Jmy/>gŽkњn`0) 3h.[qlpXRFA#?%5,` h0!|g;' B"2(cO$wVM^|00Yز+z9/7z.w Du`(5d $:؉HV}S(@1'0Ba!F€UE5i5-okI7yӈtՀub9vۜ{+ '.~vݑ,"| wF @nk9l&FpkCaK@t^FW;z4zSkȒz,7"!=@zƜz 1PU2N˫56HikXdrs|HA]4AHɛNAHIE.d_~0rWCDCv+ǀ9Z`HBh1Zh|=tʪZXS0prM)iBc@, i"%$|Ò- =Y7_>lrB ^/gl+x+͉SUYuU^.$>EX(+!dFX$N%T̄ ^ @M Qnod9WtiBͮ_(ڍVXD{5690;z1$]E[to_1O!ggH(_ƓeFrIS];sᑠlZ b {b5<ѱo&u Rga+1ғ*Pa~߂#AuSd |ǿ9/=2u9+wKD.aS^xPx?Nuj147|8|hEVZ4\P1L%QYRF)~ɐ 8p-z)8_. <_ 8ye I1ዡoyh38&?\9ViָT}&ENx~>F)Vkj#l΅#@K1}uM9"r[J<.д-sMqn@ǽ?<"j;Mc[B22ɉcsz,5}a$\9o@Sϥ؟w$Ln4IFT]KI7j62ȓkfr?h KVm8C- d-4D/{hClO&۴ɧVڟX*&8ԣ9h242]1X%}e(cYCV6$ؚP(z2Pp79ٶ"YyS4@4JHϩr>hHRTљx"|N!B5 V|zLjR; ".]9׌k]gl>*%vic5ɃhxkcFX av^&7h`CWTpV#'0 nPV&ε[wP*.T(ܑ[23n9f,aF铍e=n@u=NEip ;RH Mz]OV %T`NdeSc.\er;~FJ4v!nqMo.~*Oa#`ɩ6!xJ}՞q"i9TgZy4>ml]qf`GE`eE)HU{,I Z 笤sc3UnK7ׯ&]inW;!]Wvm9]t>6Z7!<ǸnoYâ,>ةvb*ab_e :n'k{gChoO#*jD!EB_QYG[pj>*):wkcZF1CNj :Nar\:!: @C>PM<41dWj=)p"Ib䃅O|;6!eG6*A|F( bXK&KZB bBc7mF@Xs>@bR=٘ N0"2JOxW^p}`ht0+^;z[8Ao& oi"ϩǑ 1'OͧEA.Dt`j&~abd3EѓYfm؆QcPЯ d>fsJ-{"p!+ k/МYM*ұK%ӥBs},7iaM̅R3-CpcG^ڴR oh rPtd??U5hLdq3G:#YgT#'SCex%YVP3٤5u+M$b] 14b4FA "Tb\P6iWBOԉGLta0}qUM\/dcWqzNo/m"HN(DTBU\B3&@䕤_6L*GO|j?-| hD8C;B<`"R6*,j7x[@Hۤd3F{6"Gi#6>Umxר&\8 ^5ƨ;dY6D/%D&iR&oߖCZk P,(wFs(MD`x |%J7e!ϥT@DV0VOR[tC0c}|sN 7kƻ=Ռ\tVIy֝0ZXpCؒ?`js,¥*cזYZR$ܘӐ*W7ydaAe3$͈e:}<1T@({lMƐD T]/8LɰvMQ:ld}1dhʼnPT1(u Z)/`$j WXY01z;CMUfflJXrوw{e)Gr:^ԭe{Kg955-/@B h4҄Wȴ-oB?g^e*T:OmG=N Ábm@:[[J c! e%I 2{ʐA(T ^Ϲ`oYU@Mr5}# n:guhJ)j"s񭯉L)L1=KVTvłF0bn# , ~u\mG k" aoB*/Jm`e@h/UeQ^u]^uXwdrklYQa=IJ8X\q!bBNNj؇h^ BKo})HtXgp\I1[k1ZS8ScYeoF;B㫂INo>o\&LW4̞Ih!{Po>l51!Cu6C2]O%x<P<$-$*$w_g|vV)x~Ȍ@.^K=eNBk m9P[]n\LFiKI|IZ+/F#1czxC=j -d8sX~~,VoƱ4zPU+85؁ec :y톒Z"?^ x0H9fnEU> 3Dvz C7QgKFlˬlxW`&ߢ*Jr]ۆuO&ADD~(^,j٠F;bH6(1›x8L\n(BS0azݘPWg;b2C~cI> t6$m}+M3P䁅9Ҷt=W SkϚ(l/%\@NCsL)%=lSa38W /airq@lI*9pXTҁ5rON^M :}>ɫ\r~,Z/=I(bړ[G)̄-\_N)L\ͥ },VK7 PtӶ-kU/<'Ѯuy'Bw 埌tzɘ7g V.`!HR> ^?a FR/*VH r[j]pg$oʽs [7vLZq%ŚϒFt5AY0:2g@z o!B7L+p*٥QZ|W!Ԉ Sk[mTfY~'+a:I0$Z%# 权;@O~j YmvoH N,SNi݇#Ξ޲4z,D1JCf̲0ke;*A [aV,-4I׊k{69{By`\eA8ԃf ȡך[ʈ@G_k,JseJ~.0/ ֛N'#[}\V龊ۥeŸj^ n~9%wc}nQ(jJtW],8_:XpIuzu9I0q s5V[QDPdS<@4WLC3YeBQvKkElWRP+G4`yUkʼVIvMT?Ʌrs9s0ԯǬ8:N DQu8ƅWZ!H¦XIuJ`KHlt4V4Uyyr|lvTGy3 qݪ6dGj-+q?97>+G, j@@pvJcOVx8|K?I_ӏo[*<D"P6<,SN斍iEYr#9 Kҋth£oA"@N*ZG< II C`bxG/(izzQiZT*nFղN]1cґ9lb1!?_&Mw =H&$N %^}LKYdKu,/ sW ,G$_ҫ P+9 sw(2b T@ ZW1O̪*^C0,D !- ]A&ia2x m%^:26'~ҮR)q(D:*߂~Ҧp-'bVx֨CҹLXٽLMi Fl07RwBcTo$RƇ4U"lҀNԠN@TZ\3EhAFX,>WfCg$ʌUyςԂNvµ,?N>v뻁 `2?}/PTaWul& s W@cgyAGv CO1`6Qq:ҢO|O(QXT 6s,̛1l(X_q㱊Z lqk4ءSJɡ ~7ސ_fGWe(T]Rs]S vS#b8 >:pu`  ij ŹTyaUy[?_8J|$Tԝἲ/TV_Lhm ^l`o7?'s*+LKE7Cmt 䟳id~R~0+~fO렎.b/ -{ɿ$ '& fUcĶvvbs'G蘪ϔ]7Wo[_ni6wjC9j -L܏- NڿKb RV%ܛ880+#'X\awLgҩ~}i*}%}r}g_C[8d)''礼~ѶmuFt ;?}bXrCL>jn{et>ЫK\۟b|H-.l?rSm Km/(TM@(x81B*K5(,4<ȴ19@wmƉy m!bل=X*͞)5jB1:~gAI nGr*HFtWr5J&KΆMt9*69+rs $hBpز`, XgKd {}$%%>!4H [|q2/-U`6ŹCkrEݣf0`mdz 7mkc򿨜;}_9M.˧P<퉾<(S{-_WtHy'SSiQŰo`vµsnYUt͋qB5 WR}7GǴ(0J"w#PvѨ)垒91ʶӭf?O P:c-B7\z͔M$A8.8ɐ(,/}HPvM* N1 , }2KKi5hW->TYT=Z;_&R\Iii:"0LCګi'-a9`>) jL,&tm[#|70JſπE6)34w`34,9dX),-&p?LNkz0 eLX;YJ7Kdwo\ؙ7цdO_!J$ƚ(z?c_qqٍ~:U#NỔ!6X>"VS& 31yRN>x<{]ee0!>?c @cjMD~N|'Mezn]̔0O6KiAS,w!Gƃ9&4$M6ךl EF^9%_C &s؀K$0jzosO%(cH^9}8P'F}^ %$nwibVS*ԱN۝&6jG\-@Ěi̽`H.zYPHF]f`P~3qpG7cl݄** g*-%] 2"ȡe7q{UzŃM}Tm2tǗ- QTj~bDK,u-/EB9Rmi!ί\tprkLJ iQ97TxA-a$Ɵc֬{3IhF _M8Co.k+ !>.ʥf=/3y$݉W8ϽR MIr}]sddR A?H?XԬ𮨮R4{@)KP$2[)oE9Al)<$Ri%8 ?S V2U" skΩ"%+ւ;ĔV8_%%X(c9ɓoaBfSI';EhH'qСh]Nm\ \6+[6 ^n(Mv'$S1 oz׶qRvXkW{!A`l_)K;[DA _jf~Ⱦ崂w#- aS i'I'rUwLS ||AqX3-2\ڭ\箘:ClEV۸u,NG0H*B0s"'~߶$4xqR_~E7DqmŸ,#:]xF=5F*!!#@tVY'MX{wGbsK4+&) =a!ͷjp;gnx%mRt `9}U8~ JnU>Gۼ4@> Ӟ#--K]/FA=N%!eσ,q@y18cy؛0/D#b'j '/1p X_0 q2Œ{0gE.B|=GbiFMF Qu:wU|p[906^,-Ve ʀ2r?yy:[L9n'* ]1yU}[Pń~Æ<(| Y5#ӺR!TIاbəOXW= 4F.UZ%t{9*6^Ru殰@JB΄gU`ZG'"61'L"{#n[f'3)1{z'#YT2,H^MZcQwÇZҺ\D}WFXVY0 ؚ-ZqrimS%>_Kc{xޟ푮c-+HcI!eTmr&q7Y7= X }ʊUeaà?ɬl)EAVP/WknS9SnNZ؀,|d6( 90%Jqs}+h} ..@HB{ۺZ@^,Ʊ/T|oNH摋{MY-ջbqsnEpng7US9ra7c)>쌓a "ׁ-J }0s JŮP5idҀ0W}$Tk3|q{0AYNA`qy< 9l9>ZҔ'.YԶCK'#7„ϖ_OGVjlزFQ<@ۆrS\Yn\vgh)B2xĠAmagPOe\Rh4tO6%57Vk,%"QsYcyיSgQhu8"pLœ} K At׿b.0+)@K<$34,fm '[]Vͣs\^OS2,Y /knU?ki)H|7 >ZB@!Δ"V͓gUJ'r`Huc5s}z`O6x2-^B⽇YG4Lf|f-F{>=1TqN1 wxoCȅ{ٷL+C]4r2PwL 6GWG3I3|Vz?!Ӈja44B(+&턮 F>BZSB]]X:Ձ&ݻ#n lomc!GFשjMP$Āvӕ*"Y'bY;>ǜ01)kxSHG]0%Ѫ*33{ʼ>Z|3VaHr2C5Vĭj.,z{pfLЊeD'-cPXV[MaPR (tV[:2(ף`?J:US]yɖql;%<`a+n}j"lXFv pW ̌ `ˡv@彿wBNAMbV$gd[;g)gK^dvʧ)S0o )Tھ[YMOPgsXH9q ؐ̌)_J{A*#Rfa9a؛<#zS7%dF&ti})#O|w&HZVT (|@H,8>C؂H*xT2& H9nW6kϏw֘_ERIS^G],<9NJlڔuN^Df}]FA:[)x4м{<8܍GN  B:_krR%W )Ž|'X< ֻs|voEǂGdbn_ wnrl O4;*" ZRYig΢:P*a՜W RQCNmBJSz;|%i(zfNM>48Xz4C /_l·rTAeo8wlB_'z;B#|Mӿ%GRVu[#nmwHla5V02*r̓Vm2AvmG[ ' YI*yi^M!g}p1ʋ/棆25uޗ'>]L_$y@]HJnbKNt}/ ãlTB]e,ސ)T+mtR If2)sêlz u1iCQ;&x*&w9ז {2s:BΤAqYڬݛ  BeUa\Ry 9}us!n$tPOJ[½NB*Dͥ$ mk%W*ІGS`Wܗ&o6|)yKXž 6tW;q)6sH֢dKԫ{9̂(_u$ !t;Lj8I ,!s¸}(0?(Mi Fu2#ׯ7{xR d H!U ՟/wgFæD%A\a`e4}52:g +jۿbvz1v^aYed&(˅Zo{=H54rO&FYt;6µ?i("8wj,iU#j:5goR >>qS4P3U|,RH4z˿zsB\2]]$ נ-B!f|iim9"C-W ,K`GHukGqc~Cj'/i29UAjtcrYcN]fk*ɉ2p+n[d0|A /nDd 5p[jks q2q~:& ɋG.>1W2(˿GP-ܴJZ}e ~㜩_-[{ߋXA&-Rmk:t)+5N9Gd.@60X]h"Caï{12b4 -wRу3!)Vi%s,-J1]s-zlN Gzu/SZ/JRfۆh&Od\LO?7fQOEhR&~5< H5FS*wU8ǀ"H FQYpH5aqHcor:)8y ͋.-xd1fDvj (o"XB**Jo׆[ 8Ov̛J*]p}9TGݒˬ]o/nbv/0d)[۳ew)>z&ƥ.qo͇dT_w9ةP4i!SEf*BNsv܄0J?SyiDfx\QKȵU Kn%0র"AS=[Zx2rUu ~HRYM,o.%|3b#/jA雥jml_F/ k|8Cxjf[!VRw5]\T'4j$ݷq0w(F[4DS1¦͑|z=8ǫ5$Lվv{keݜqp.RzeUJόc~f  Fp3;)T6#lMmf=0F^,mah_Fh"=m=()Үp ZO,U~ g;F*>MD:J>Z% fKE2w R\Ǽ]իde[q dToG?Z; PSZV-ܴԨmƭexT]$ŕi*1Y/9~YD+a3N:Nv,N^;%O8$)+2(qM| m*}?IJ;%1-O|OwG5݁6ne/dO8xS`*q^6+ڒ Lޤ U,I _,KЮI\Sk }5BBpIaexV4YmWMv@%؁A t:`֮5~֋ |#1tҖt'h{Hd]=˩q)1!{]g[,ӱw&gQ)5ْQ e[qƌIic~t4UKh3K`DX MzG*J6x$̇Og*D@l B}MuJAD,FVg Ծ[|o*lq\z; +D- gd}8ƪNo ՙs#Y5ZYnxK'OK0^LL9U)yr>X.[*Y.FSf7_Rw}P@!&"NRb 2@eȜ)=:/s|JiꮼGN@bFoDi+"9+-G݄Uov9(3jA UO2 5?Α$=0kx/-eݧ;4h/>„ lz,?3TcoUKNqxilTU:f%زF%bvEC4i<<2oxN- 'GJyYҼ  R%/q4*`I%''IR7o!ֱwhTwg#wuݭAjYNd!R(Mz. u!Cvڻꫨ xitqy߆vrه  7N,X'FIYnr.߾ !pV[] _ڔd_lo9G,NxçCmV'oe݋eEv $5%z*vTtlQ_'wcCQaM$P³/պZʊW: 9f*xc)NJäe4cl>0V6|#iyr{L*]Jx\IZ'TI5|g;z`&N!j+걸ChlDe"/+=JiK`Fi*eX 6K'j߀ס 6O Ɍ:UB'D2~@dɁ#>(ͶB@%J-NGd+#/֧/>lJYI`cV@\~ qؔp}CSe s>,B 1w$O:;ƵeǍ%!MxQI0{T,*^5@~xId ȨUHPPf\DXڟIa1K"Dk0vQL?A|_ G1<3'稜wb/kPrc Fi+DŤ ?Bj13#m|~( Xg]Nѡ6 1I΢>/9o[;L,M_i$9b64H,CAXfZ%XCCA89\ ˥z nlH8ӦJHtʨm[^̊I,Xw+0b amzEt~/BOY>lFJO$)YlLCF$mrJGN^KI 7}Qr~t%ڸA7~@udMy Q9Gw߽QEy0Em#g.8 p+.S2 rZ4H SL">ulƀd'_>DR,dvBc~ԗP\Or7Y}n5Ѹ-??Ƚ^EqtVt0ܥ/fFO:+?ĥF ~y+y!4Y*GO, Mᆏ-ɋ]?>9|1(yy<h ڽXU^$WuCMj f2]BmW0-K! jJ~=3ܓ4U~4qL!"qz_aI#pDyv (?v> H#-=!{Hj R>`_.ddўImB;ZJ,HUˈy}}3$a^:N_ԶBpnDU:\{ bSӎNgދELlWPH?PL)v!aQW:p2- Vw; _xTOMDTK Q/5^>/v/rDmzEEkPE cR1JRwWGWBn7/Ƈ.~M%StD`F$S6mT2weRW4i-3gSLOFn([X:w{vмjS.wd qA۟yOa"H@ Mmv Fŗ7hOu(c˝ C޴h`$ݪ=V-p,4gt@^K%?WAVlLZ1R4C$ S)>OmW2~h68 ltFqx}f\Ce N)4q(o-8vtxKq^S!158K8-j(7+3Skje~(.e4pcuv{$%vS}d _]Ř7ͺo2 Z撒Dx e5cHE$87:d>Yt>Nt?@t }30W(޲q H H0]jxf,6a{!g-LVeH>к{Qn=ʮ,Q%),@:Ƞֹ/j@̂,2LVd@SO/+kyA0ZU^M+^} ?ţ),?ubAs0>!(~{ez`lX&$AˤkS͏=1\~-;K.Щ%+Ebly%L a#a۩>ޔ;-]J-YI2tXY Pi'WfNw^ɠ$ڰѪg˞=df*=S lrgiEU׉ahڨbEi[ EWu no*E'MR:,'l_E&1"ZLm#*O:hmۃv9q~F 2х''zbI jHR4WeQ'RU*as 8O"c")2!+Y'hӤ\ yz:#7@es/.tM1Y2kת5ڕXߏUxi։Rz?fva]},tOc \ b?z VTzW{9AL٤9.C[\,Be7h|w2aXp y% ыbN;ꁡtVٴYJ*Hm c?7ꎈD]y}FwG>_y2վW- D-Y ?dCח(oF{T"%GT n^UY6oCcQl =)/ὐ`vҀ@P]E2sZ6 ;^2!˟U24$9bjC9clJ,1a[}$Zq84^mP (fS̟= pV}}(VKSaMwoo&`R2tj\5|A~Q/>MUEb@ECuܒ OCs}k :R&bn_eJLqp/0gt 6ŷqRm)X-%~Ȥîz4:#l6:E4ybXk- Rw$D.M<,D[ɡ ~^_:C$R`(M@GM #pC.0 e vNyM)FjtC 4{o R`aּk"JMNgpPUalQ0`^Hv+=ԃ=0SahD FL ҺTrkaϺg7'T&t˺ (ot1߫Sy6`"LJKƙO8i|Nz?,NVN^4*%ܐ6_Ye]mol9Š^Di'nTP8CȲ2ÛɠZ@bF=Hdw9 {\+ Vܺ13xX6b2TIhi(|jF\j锯Lb&Oc*B7m^|Rҧ9_w 6@sP5Ĉ?b>~M"5x*<(-2RǣoʏTѠԦΣsIZG W!V]$jIRP]&v(zoxn /3`Z/GP3hJƳ[4谓NTom毩/JߵQs$Ǘ3FS7eԙafiÉ9:di*=s/&Qwd-keYMB;(]~ q-ؓSH d:"~7h$7XQF5hFF#L`>31lOs?U ~UKο,}[sK14yꤩL ~Ќ mq|k nY0u$;ir`QtL"QMߊ7Rӱ=>hǰ䦎UùIxD%yPN@ za@o:IY4dO W)]:޺ tΕyL,6f#[u(k¶>,E}mK8%dy|_sC*z.#};zؽs$>=FHzj Su -_q2P_! FюHg005#u]b}GYd|N N}6dҒX>b:}[ڍe͗K9 QSּIQ iK>BSq[C pg1`pXgHI ̟̝^iћQ>@qAɠrVzq#ov]ܱkJ7~E0NRSHLe#.xn=.uȖQ:`Nw&jghxMLOA,Cn3ւI۸{zj\崆9$O !{&n_{6gqA\=8Q6/D_6fIL@̾k-dGzd*q%񿗮?-7C>""HOyDr%m6A,Fpk zжDt7srJݖ$X^އOHDp_8hp5O Pw .mo,[ٖ2!0 FgN{#®K pܠ(^glqu; LA}L_(T'Ψ  q'kYE? HٜWH`'aX)uIG`u>|e&Af3UXei4Ywv2.KE(-;j QA`l0Megknjn b$ä^Hy ?~]e,p˜,(:..tcck~?=USĘ LcbD~rdmZm(D&rजoAū~ROcw_$H*n0R5y%F GwĂҭ5-u m H \>=i3,Q 03QKjP%Y9__,|cQ*NNkne(caMke@F\(yUFm";fc>U";Pָ ȠVwttJ /oI0g$la"Yqow$m*3G6%h,;{Pi7|p:a|?W>a F@l#skH H>q)ű#/$WV6ftg"-nիt7 +KƦ+~*1[J$0pEz@:^ c ݞfL1NMed1c^29`]wEo{ۛ6H\ҍ5?8SEW~&(:8pNCY7UHf/{rQ2ؘ4]3NqȨ=Bޝ -[z{(\v͛]8yvެ*A FOU1S<92_P[l6eҩ}TH"t.&Nj'j\rYqO/":A .0pBX~gyvΕqT%knˆD0L _W|Ac2Ψ=%zjir3_~EK8xi!M yVP$n8=|CM6(Z$1dk)8Jd݀,b\a3gҙn4fDIےFm:I2!;HLhVc dj t# 0-3@Ҧs8?>G;0aUm/ԔruzF|oUoճ2cږ6MH`z iP?,e>h KNpŊ:`4%=5D;p[yKk&9 UytLA'Vܪ.#<"iZS7 *c}!|*-H/G֔3ϙeIZν"yA 9ރ2G@Tr|cO\f} er>xiuP+VQ w.w#CT-w dZP(BnM:Sy߼ǷQ~eȥ5.^ųbOEXÞW7 4i O;(bCF Nʊ`vyg^CFY>WL-}P|^H8UK|7r{#RzluO⎧r?=YB<Ӵ.Ҕ'mu5̦:ʋP +w0^7Rs Zj›poz Q^CK,x?y:T%-.,:^x%XH F랋|g24ϹEx |ca- ]H4W;~j-|.-A~Ȱ7@RM0u;kb'+. )Ǜ#E|ΕT0]`O2 e~rвѤòk%'QRCk ' sq G 1,|Eae2qoe/0&~TXEQÒ$?7aꊾ=v}Y!rgFZ(yBd4?;xoN{Q[d<`/L uaa/)246AR&}*A_ֲ<*g&ɫ(ֱZu'&<ԒT ʪh*<"$XLG~Vx{m",tҲ2Z^c2|yՂ!MZ2}.:-OSy ?^UxT߷<\̣Q2wbO2K7w30ƄJ>@j85_1}a0 9!p&Bq4] R A o`Ekaj)dj|q370H{.,k Oy/LwMrz w\;?_jO(J`+Ϋ$>pСHFbp]6Aw/5輕L*fuf0m7GХN[[Lײ@)^F"\qu8 !pqQu.2d$WZȥ">^z2 SL nc<*=(I] ~te&G:@4PKBNP?lMՄ6k!AoZ}R/DHӁM Kyc/!`6xi.^ C+"q \\{DbAiK:|SXjtq\6+#jqJY PoU|') Wh$.Q'@~fK]f2;vgH-~] `Vq*ɑǒSq~rk5hE~LA 2sN6{Tۡ<ǧ0շrʭ$~s59bs)ݛG5`7&Ti8'=>S b %$|B&֓/t ,&.jzdyLch `{t%1.l&bMxjTD`1,';-sx=ݶ cj!;@ ,Zx(:gAoI"nTN2%wcFq=@xvnX2 wnQ> A)?X0l N[œ؞)kn\y~)msz%`qrnO<Hp*h:[df'C_A8 ڤר1-.i181&eEyzX^ -wT42 TAڛ5 Z3(GصBѧ^SXDI1?R'W΢W6twSUY]"ׅ5gy"+ȯ^iH[cUL#G7]zi%G!ڴXDjr7 &o#JGZm[-M|O"c7LEb%ːQB Q:R?Kà>4@l3*59w: !D$oz,.ܦ˜ u]n<} "ET3ɿ(V^R TjMD#!C{b̷f_6ޔ 0#Uf=3_*sHO*, LV` SYmvws5%<3}-s`0)}6|!r$\Nh=V]wa#=, i0D1ȟRcRϧ5·OTߞQ/ͫ1k¬eNJHG`? mq}X + /WhbTXx'*j%x)ǖ(B@x؁lGjwZ[l΄ cyճHL45-ߑqcx;; 4 M}&!3゗脯pv4GiB" q(*9W^'Q:W8YѨ0draAmTx?0U Y*63܃ j:7]jD~Y zFH8v47%%CM+!ܞjf6XY_5jk"&޵`Vge@&9[e`ZmۢؾRQ[OsQY2b!sobE#8 MlN="4yp1\je|F>#IY}hR>u[_+ "M<g/@JQ`b]؋|f%:l &?}Wΐȵ5hA+E#'>H,kw*>FalƳ# Y]5+|uNxٻQۂ@.4Wg]e%Op[Lc;ơwDU\:25HPj>dy}y/@<ۤsϘX<6pRziāYÓX^9&z=)EKRyt1Qy" x2X`i٨Wʢ/bquΆn$wRk׽? " =eO< hΙh5{̪l^`N% d2 13B2bO1nHS?v3 }l\[*j<^~H:T\%wzZoA -:ğ2.e{*p19~KR ;ԛOx=k9Cp;WR#H.'All; z!B]x!:XmZ[c^'æLDcLV )hiS؜8l4W#]a7DEG)8e㕁 d!G~shwC{-,fT.> [x8#vB0>#0Өෟ92ߠFGZnrf7p ]FX=\sZ1Xf)V9 u繊Nɯ Vd7v^fl75(vM5KyD8&6ly&bӉqP)|$wƦt7P 6(~'nᎎ*^cm._1g& ^ǂrFf1Μ-$=J%Kc 7)iç6V@G#!Sq+o;iغЏ8V@ <:ԁ:gq`HbԖp;`'d54o.EV+7Q:3@8G <,24+WwedYPE FuKOi`t؍I;Kc%V{:?# y<Џ$Hq~5Ipy\ȻHuֆiDQ' *N.?YV1]s.?u\k?Fh7rD|S^v̿hUJl;㫁jYQ'y&rd& 5ZҟS[ c05pbWZCs;CUrvi6H )%X8}윰+C"s1|6֑[^(.iſ{,h<.ES%krg|-N3H;u/D_!XwP]f{HϰrRS6VA!noxqxXUw97ZFf4GK B,% a9lX}/-a$co!5Fњ)C&`Vuɚw$A,DjX~EL3NpjilVK<rmbvZh']$^ojж;X N693i{2)1Ol,Fo.c 1m$&3("aQN\&UnS <^+ AH+DפGz(μqŹ7 %yqqXGY[7Šj|fL*Fab3vI˅Գ3'fy*\1+b|B(f4T|S~3'Nu S@`5hvGzꠛ׹ юaGjcQamӜcl IfmDžG3Tmi>1j&-_-xFXy`ބ'z5(g5X8OBkq,R>z/n{'jKio>VxN\ps@[ODF"Oh #Т^:G͂adFl:ۭ/<Ho=YJ]{5!\=Z**z=Th+V0E My7r2fKHUs )rUWRy3v GѶ@e1APB>0Uz,$㛶6:#r +;X|>6"AGb e0UJcCT JN'º# U$ pZHժS('h<^CJXh"!!kP0ʓ3O_$r2F`"BkSJ3vYEeU5!>(Jz9a6F9YƵ 42aXٟ@D.ᷮ3U凩=ז ŔQi+o]dÀޝl&yd5fґuObS.&{泈;f_WZh>hn ^4`,8iE9S 9s˽Kj)%iy,0 %XfB˃ }bx˫y-_x})RսZ˳ `8*/pA2s /\HKCLǯ..[XֿWUq9Q\{{çvȴ Mcu2 lu]@&Ts<=*;(УMʀ-f- KE8ߞg*[@_kD`K Fΰ_'Y|Їw+9+yzkAYj&4^'&l>7 KX#Vw-R/VNdq^]&PVd;CvՔD FTL^{_L mw;X'/wRWg;gy$&#v(UQU{ͅCA+'r&Wg "u5x~7OKҪ+vcIha3FJY>d[k ~,UfUPdȿI`A@0YŬS5H[Z*w۠ZLؐ6?Rb?g"=`C٤}  T|&n"B]khoS![#js&m6`7*sZkZ'Fm{*4 %_JH [oQg!z7S* 9F /HbQ-V/ 8S81JnDE~z?E7g~n5lLjmuzh棙_s6Z䨝x 5*&@~u8u J4{$4 `nAxRJUf*>Iʯt'vfUsW} u#d>cZq"3\EI7z۝ S@¿AJVQ/7NHEvX'[l=`B(mzysXiǢ2=5:vZ q\2hqjWl)3tujRq p y|[ke, !ҽ vkls10%~ˋ~5F֯SGb>=f\]3S xWרnԏFwe2jI߾ cmqCڂ9N;t٦Q~"29q%=]7{"-}痽 ax\ɓI9%\Ď v! ɞ=!C>17wJu8n~?\c{ҟl491i&OYm7K3Ce}* *jm,-OӮF-ߡAZU{b,fx3o<ԐhRlF6mHǏq)w:ISd]ppU*|*BR%t 8r r75voޞR[#]ggxZW}Dr&ܥ4h?z!jvچ,J CCҥDZP#ofpFoIm1~GDY:2)28TQXO MX`k&>>آM<.2da&*BbHj0θsIx!/Dx,:1`1Q駑k9R_h3??0F|JhPr<t+9"*i\[Um&˭{gMPԋ?by?o #@X&i1)&6Y%+ӏ0<4i$فFˑA%VujI͋oGѱfGKرʹ+RSDTLWÿ5`=OcdxF(eހm5 !bVyy`k1?Uhzi;P;6mbvl-/-LC>X&?Sނ7=Snuq/DHDbsT}ǰ7ݔb_"1Ԃ\]y= NBw~6@s./ojR,?A#N;; )A5SO,[Д ?֭h|֜P0!9 wNwa^y._I_yw.DJX[nxwqv_ 5!M-ܒ, aV5+6OMbqЀ6&ҿU4(,Ƀ4}SbaObi_nE 0֥Zun]] W̤u-M4s sjtˋr߮+=30mkx)t mcef ʗ%6_y @?)۝} ] :(6m]"/|H]-XCZI +O^@BSl4\2]ǞPMmc5A*r-3ϒbnu׷ecCΩExDV󿥟vךe,l/]AtMR!72c:BTtXU*jޯٖ*{uj%:7; 78a")Ca!%̦/^aD-p-WKc%8`ޗƯZߐw_( L[NY)x e68De)Pb='s*D\ Ʒ 3¼ ~$6~id\ɪjĸ &c`hQDاֽj+%%o~=(R]H ]&/F!Hp ;R)x!>G ZNM  V)h1]sR/H{'HG97;ʴl}|).eCrkFaCWY' YuW򖼯N+B^c!TX]BYvxdA(`{;`-49N6f#o`+dt@Mmxn fCZ9dBe0+ <{rn&9CxB[E=-~`  c.ZfJɇȮ~4*\ '1Q{1ξ D*?KJ}⻌XmP3M[ +"Ն@ɿ1aQt_3Sy8,|J&c^%YkBr&:4Im?uʲ>sk}b:e6Tj{sVWS-qk%'sϖ5GFn &rɇ|x7w%v֖Vop6(2- a"~T٩ uaHw?2ax J*ISݰVʵ@j:d~}*e_i* jI\w} 4$jU1&&V_W= / iO #2&l5i=aty\b6FNaޗOnr:KJ;7[o"?ֺSd@4+i]sk1* R/:W }"xԂGpx7GH2|$|y3,V9E=AtxV$.N F?IJt"=ЏT R_Bh/J@+E'E9aA.%6{n/  p>?0LV3Mj鵺.XIdC%[MwCJfCin7GiZߦ)卲$HIg2$=RR[tKH4jNF`C9r2%4XH@kGBX#<[U6?'-@k bPz]y'V>k9xnKbPJ)gnFwAbvFCՙ;*;fE*1`0G 4KQz:4]OŕdX 4(S*BÆDžD@jw$yNβ߽y +Tiظ|UJ:sqrX+AdNߎOC 82T 'βpWd! UҵPDvt96,h-n{*`#1iv^؁Ngs;CK {Up~ ~ :T[\Gep~1GJ1ߍ%-0g\(rm𕸟/2A.)?7? >ORٯ08]_NCB;,7lH<& /CK0az슇_!]";08GNO4ˆ3]ԽJnЛz lf]U8)N<!uKi>D}F˗lw͵ lNҞF%Ɣ&S2ӧc&כK-u$}FY`=tuk,c][nYl,5|a^p5Ǹ3 ,\jkfb -adťWCR^5N~VZ̎u&#|{>eR9t:_$(y/RXɻ:IwٶM(%S ר6 L^.x͈. G@2k~%겻U߄j \ 4; m#<"!$ۚ͟ýL(Ϝ_ ;]9t 4څ,xVֈ6_(~vwͨDAS=3DO4?Mtaj|5X3na߶-8E{oT+Hgt5M\u`}Yl^X9cL^p/>1CN`$0X8!_:OSJdgm:̸bN5iysr;[!i(2MˁRs$5mK'Un?S?J_Ĭ&8R:j٬}[zJI.0 `0,:f>6b'0yn:+LBdlp$-`3CME~өZBM"10auc٥Jcp[vS ; bBٌ@*&<߲Qw(bM4;oЖ1msBs`8#Y .[X}Yd8uь[ Ӌ":\͆춣TdQZOWnK֧6;U avӛAoJA2yvTơh[C4`ws~~թ,3ϏuQ=e6ޢ/ Dx~r* ǖ|Z<7 v -t [Q+.B9"uLi[nבPm$lھ6,I$QKnS t-8! 8ߨCq͌ '@naZ98Ei/O~w;jNFI4AW{RU F=5V̀P0\9xEG_iOSzHdgʛj%7ѩG&k od,QZ{RW"X<bk;hU`E\.fZ1Vc'z%e%W2!ʛS 2 hAz.:s:WO<1 ?VU-%WY]FI(?)S_ !_3tC~d|sCIBPHceg|"?(Yؠ#=͙6b[zwºѨ| Na@[Xgik !g5߈)P x1`Q Vߙl{p| ؏{I!Ynd=!U~ /z5IWKe-zcu`q[1ɊL4Aԏ! ]g /Kh Jq@+]bL\cX]gM@ճ__nfcCř0o"BR3)珡o1}ƴE儇@S[_+MY?ߍk8}FՔ6crf6j h6BKhTE\vZ?A<5 ܗYI,& *-C=d| csL\ݜ -_֜)sg=N.4clAYbRyLSfH•S$O4ŕwjxxD_5)D_Ot.!N+JeZg]]6U$c_:aOl/rB|jP ,{;p$ VRXʭ#s~i\[y@jPeȥRY?4Dn%ǿsH4𺟋'z9+Qhd\e;wF.d00cBf0}yU4ru@:sWmwN'T'eӻѭa>-,r4+^uY*x7/F g~;|m #z~1LkM =XNJA|bOCf(S9Ywhoxy.+RQY \Y[bjI3:e䨐Iù$NǤ(WS//P4jU"ш ?Bm'iyZRDz=ɟ MFT=Aԫ=MFW[1(ñ:iHє Y`$GQaPLVfA 2J@(esO3Mj GP*3&h-CASߜ\!HBĘM2cpd.If&}4>SU_o~rp7@&r:ML<9V}L(wùOQ^5z!2}TGVFd>QLy^8js|9zu9J**s2(yn4` 2xXka F˓{0_.e2r.[g<ʘ霨Yh:ml(C58uU#i>,j):el\vc[{WgX`5XÅcQ촣0*O=?Imw(IVaAg:C_M*O s]:_fФ'`zm8vql%y:_`qL-?"L}k{ zU4ӛ0jǶjS S[65(=VjHI򛆭/ dF' }sQP=Zxf<ޟ6XmR(is?¤?PmQ3qm ݅+p{- d7Bت)}"нnw|ƟR$+:&[EoNg;RR-YBSSl`mmJ:x"̡%on>D631s_J卅*6C0N=N;_ NȬݯvav@[!nO¨ [V XTGi{u8{wMK[#=ZThz[F gL#^DFJˊtpIuʠ${cؿCDMڀ@r׷a;$`{􁗉ȵXYq7/e*w 47ٽ34{9b` +,w u3cH_b"N@SpEڙAv4]JVRD# |m#Tyܮ0zt&uk`iv]*>)Ηzw]aX/UfL?ޔ ;*yY|XSƵhE%Q5bLWSElTZ^P&꣝%}yqҗ\zO 5`Jj_Q^C[Lt_P7w9j˻RtēbdтFp?\'(R(di[\nw"n?dUek/OH ٨ۻxGSW}I[3ݒh.$Dps 7(Tٝf3Nьп.ҝNIf,F@TUQa "0nX?wJw'ތD<[ S.Kho7͖dmUۦҕ p!+H&c˱nο2IYBFPAu/M*yO#$HYߋ-gre*ԊeqǞ}pL-?5_\8̪X|I=zL/XZFApp+mav-hE|r6Do6a;6 cu|1ҳ&*5N16l (3uJXG)>-h\dasY wXF3opLwhSlae <:Z/#̕ղ1s}NiAʼn:Wd5x=9\64)0)jxmQl?:6秭*ON%*|@XA\?në} q>y̕O\SU]lV'$ ~|-skR Wm R^2N *tWVYJ.^`b]ğ,g GJ#-`4eډÒ/u`reDpB1I}9 8K PiZr!:bgE|^$f6B y_k/,KPo}b!p !` 4*J hp9ܒeL⁹ ɕ{n0ue~<ͦB8NH :4޾IEW68STaEty 2+}֣IsT%B@&9Tܓ1ʎS1'ޕt|MA;mZ1P\ 3olb^7ߊZGuNA!:onx1Pwr1BZ`Vo*L?Yq|~Jpw_ 'zUVSӶD2giA1d$`6t I[-1)vYxfYTۖ\;Ȉi7> T JG~CM >5HBG7:áMDMX`FDѵ<ܺSt`qLm[|E/G>"vުiiA {&_yƤB 7삠*-ΔaZ2ɜ W\8Oԛ4 8OiX3@휮B}_ŵtQP$ЍL4#!hz99+Pewgt̹D(>R UhN`txu@fE˅rp8> 7Ir:̹8h_ݟ̲~pw/}OOÕ5o?йiI@*ʟoA)ɿ/+ %+ t{jU- $!ѥ#sGg}.zJƸ *EtST}1ž,>s-.c7/Aэ2л3#ƶbvb"Ɍ8p'oTKB2-5gچ5p?|>E 1hSK| }Pa+ú%_0K|m;z"[yfUkzeږ ~{ ƀSV|oKYTWo (_2Lb|kEWoao6Λ?PkP'GmL]FUmO]A)&l+KTmC ĖBѢS!غ8A QKv$Ӗ4Mr9I$@}ATZdd(o*m澶lRGI$ - "iAG琛?/M Ƚ>Iv/D(6"X<7 w~J& }?nqjy??]s:]#TGrkEu7~r90w[*zj&){ErɆʖ1" {ԬӘ0^O@>41AL9Tnx!@Ekah qg52DҺу _,|Gu.ͫ>jX W{+~Kk*H5y*{E}omel[lHs wu.f])ɗփfjc< R!]1ȴ6H$$Hh}ji_[8CV豁W ?{D$ޮuil >@dXr suŖ$f IG ok{ Vp3ζ/WG* 8C3+݁V]@u 8j!:g8@eef+gSU|Wu[XZ1dz>?W{vG(H3ŇL$T?hGgk'bLӌ̪O!tj3" \ƿ}R(Ok[4ܬKv ηXv;9lX3lkRc{; <ucUKU00@"Bѵo1!BC4gdj:Qn {Oe5Q4IF$PwWv$^'@gglqB7~u"7V}`5e%G"2]U4[j£ ˫@bYʏVK^̺5|'zdZV&!` K~zcPoyO:! {Ewƒ.o[zSNkKin.<nM_Œ[z˩!ʓh ;+A۬oFՊ}qTc#^G%Ax_3SU7r2')`'`Y}{;}"MZPfީ]"RrfSDv­dY6r- *V$׭T^WT:VAǓG#|@##>Z7\-S  gM;$aMHc>GwW )#'pNc:TK'!UCjF\xi ߿bW! n~f+'R_Cx4bLc+R7n H3ϛVKNP* lz(j*coTCZO@􎮎OwZeM}_vjWXIQhfq,XY xTMPxN]&ߗ]ϗ%2fL] RǫAX}VuIw42"Ď!A/o۬-61nG+ v g)Hxo|K!:tig(P?{l|~FR'bCo nvtIJM>_I9]Vw-u_-;=N,=Qϩyӌ=dwO[9x18?Es@zQEoi R#>%S!>7KF$]_GaOi*7dmvDm`2;*G]d)SH&D&rY 7qm|M[Uwq<5ν6Gdcu-jO}=柚hU]]IzM7f:_/kPvyfl4nᱦĒYo޽igR9*<[= i]kOi2<`eTJ YC&i0 EAIMxKqY˲f x`Ǯ ~/374Ȳq,eRP!n3H_zuJ};Z'{?gt\4Zlugl+۰hFh{窛z Iѱd"W Mޯ\ %M،?BK`l-r>WF/_q ep8/&o] Dv\ǀ>g'xlq?׮iV  !19%J\ Z}ٌHdUe`7rԃ,vJ0gcבL,јcM.鋝9 5AU PvvdTq*xJFBM4 Lu2\m -6)pLOU-yT)lOی=[#9iOw!UC7ӛ+sP"pX'LujheS༦mw\AT39$< aD15|ѠfmLki'),NG; |J( +n"&lnSfgvYaX5X:aOj|r\%Kp@ 3E^/%ҡqGZܺݺʴ|L46íTsSAO}L<2t"{܉$a.|AQ o2^⧒uf¤-FYWO6LYI6 q![͚c.W yT~ ^Fj0 2-BSmMugU =/*?r,0`ףCtUh(/( .eiI}YE>0l&-#R7q$__<PYel=Kj:1Gv *k( B󻎸 )m0E!Y /uH; ]+J JG|l+&Wz 1H4񢕙v#8f7p Ab2BzR}2D 5>jƉ c;BmJrܫœ`A|ŐܴmIP`j$HGH+WQ%ozw =Rq&Ąkդʷld{72-Lכhr*+#Tdjd^n0gfнEyL6KuNz*f7cM60 ?'I:aJJѴ:Xξ{>g͗S^%i1d5ݺ@ث}D)~z_#[ }ÀW_nOb11|.Of9$^@ E%!3[ʌ;3,oA+/w>NvY %pՓdF`Y/{81@k}3?1"y/RK]̝z/|~7r{(>?.H[F:YZʘlzI:n⏆`RUcu`f,ϮXOH'֊~3#LB߷#sr4C'zxAAy5AitڏWGb^ IH^0CCV鏷u9ٟ) ,DnY${>UI%Lx돜HVP:$^>6 =Cuc ~~D˥E& G}u,j#BC}g8ٕd}?DR+)ljOpl`Ѓf5׿~\հ(O -%b=Qfg)y\$Z:*I/K-]]W7\Chl5 :+<V'l,<3机2SN"y !AÌ#q@,$]'+^h3;E UCL6G.f|e-3+`0 'WԗlQo>)좺ٿ2o^U?~v[zeBj|-h`cI/#\m0nI*_4d!T[Lr^T)ʴw ?HxϘ s3{tCE"";GgZ?$}0T0&]y8|y(`EyC;YZjx3=Hٷ|}yJs@ܘW{ N*&=Հ}ư~q?Uy\ֆ@V1g3*QİN .Y*}0adW|]ayZޖjjcZh5-)rcFܘ4SBFE"($ L`vr/ \kD!@6>?‡)iǡ7E TNׁCl3D+C7'm CHUx MyJ=/Ar@ح`5A& 3+ΰF*ɿP`DeX S9Yt Teo}.̎AժYʱ,՜@9EU15~%j^aĜAȄ- Z~R')(3rl=í'&tI$w*2GXP efʽA+H %# Vh>0'6Ndsl/kѨͶ!_̍C 8Fe&@Qwka G)㥼NQ+2IHDv|^[ DYT,{= e=m7yqUTvw =P]R}ۭyOv)f?Jrp K  B*#2e+Wb6Q1Åi=j׋dپ ^o{EfO6Ucutp3E<+IPx"}𙬁̶k^!IV'3o:\+ r8D dLvwOٛo.u+6ց mqOo|Ev;kvwU}Wr4~k~_SƷ|x5h #Q/-"=.Fj fl?',ģ4楊®jKGV W6dfr$HKʤ`nw @^y[JKԊF &&g52Q/@"@5Gt!Rۙ}@4~2x ^S2:jzKiR{PtnT5Iz.o]_%MSW]'ɰ>-(4L.lZ=oy冥 q޼{rpbXfY}-5$I<pJ:5 V?++L`N򣟱tFڌ$gdGUMFf/h]jƶa5XB籰nQjgmO`Ǚ:]_:;pQ:iFKC(֢k>ߤ<g 4~="u%MX\UvɉIut׬"mn!Sr:uzjl+JڝsM8r=MLDw͈^s49jcJ<͆+Zmώ:! S&o⇗?Kå@@0|w lc{39xlv3L]І`8fDm ϙw MFš*ǩ+F6(}[cxg `ٔm4ً4)ۭ(_UqVL~KD>z:"]?,%Q߽͠R*lj0UhɦsΨ+NqZ[4 =0+ ZBЩ>[Xs825|rm$yHkWOL%[oQکU:=~CS~s|k2չM2_+9niu= i] O;&`l]@cHLB]TJ=Yp/as=/QC Z,[IwlOu 2 ZThngzX(I_le9d 4I\R2; 96PlHӽdVԼcYel`ocI; 1ЅM*Uo AYY_0, %0?]|]߭af ^vEVaoAp.ΙꉫcL7 lD<\1k4g6Ē}H_g*e7SK薳߅&O8a"y@lyj)w\=zm@v9O¨^(suhxc gszPM?3Y`$|[ME"+hf!_Г kJ ȁXI!OxJIk5lY9QQ8IW\ESmgo`F{b>&h{AͿeb렚GDდ^^G柠ǯ9$.;0=4׈+Dr* Uyc` d {TD}#,:R3{ {S6^ Nש,aq:QOF l7JLV왙< ?|>Rw"5K[̷OyI>nOѹ\9Snx0)mA u{DQ]Ó^RR[(4x3 oD0as* SRfPܤClEO޼+[ ea[syw을'6+ ) ^g!>#E# ȭ)j>ao`Az3y2p`4!ݶj> 2etnȊ:^|luaah(Z @sGZm51id&\M H[$Wqj毅I(I"WYmZ:*ľR ۔j].X{Pl8%U\Mk!{oLϪ?gM51z-YbB)obp $л+ `JZ|e(Oo{aK_#CKc3t!9d/lmY(0~} }[.r Xi!v⯢59G--Oŗu*:xO Z=[ҕ/<"={xA'a8f2Gӻj(Y} w8=I\8܀6~<؛;r}vD44K&LqȈkrWE?2ep3Od͛^ܵbIw59^:Ƌ\nfwJwbH _9rvOzD C:sW"G[= w"5: m2 Aa@2{oS2YBdNJd^S9.ŭw,Z3hm+-' EV?"(e v#-ٱY {T b Жq춅΀d 8b6`;Bj Wn4=C#!)ˤRG' ` V]Err 3=^݈޶^|/SvּB{k=:SjqbskvǪ7MXMScd?ɗ !<;@|TQގΒ1H9S S&a@ZZXb)hI-JXak erd+EZ5{޾c/pTP}VqxXpqP1S#v wϽaVM`AyqAY[d ?Y٪S-׋Ŷ/C6i# "Q >"cʶP'fu32ºn(6q6?vgPw/ lfE eם1ZIj Ym%&\`*~Z݈f Ѕ!-`lϴp_tI͸-RW˒W`UYop"4 eQy*p%JFw$#=M[!K>V cΘSnO`\зooI.;+.<.8R4ggzs;]=>O\h wPE.˃_zG??0uJ(jmSDkPֹ|.Dy$qIѫAIIƥvKi6?DUNqMu7ZDxi|&LAp)Jp)<ru6UŌo%T8; {6^q-tC RFAr!-}nӺ~aT~W쳧͖Kkb%熵y\91>-R$hEM#:*gkQ(X_ IRUܸӫ#.A,BӲb1Ӻpn7().L k vX)'V!=6uTL}yvd.ͻc};h:22'@:G%9 gsQEd9B_ScHv&˃;=e͍]ш x=XxŅxAVc,ur\H( šxФu@"@ -JD$R<!32_̱ח(N 9ҺxU- ꅂpܥ-ѭo kWSp7aeIݜld$3YgI2:UO0f{ߍ 4~-IVc5ʀ7y,|SEzVH_@! 9Pwu4a@7lو.n ^lNmb> =SD{f@_ol64nL5NC=?Ee"^MwnlG  ZZw5xCoIxTG]V kEnձқj4޹jE9wtiqy}-S<]cU4LK<1BͿqٰ iŽ4iSᡐA"'8ti=an$!h5B3Bw:E)N;?n>|se}8tcݻ)~1aqvT`pNkiTAsˎ6rX_##~}êϹ>MAF2bA ײsȄi\KsH< le 簂 h lR@h[!Cm썺繢\" eMπ֌ߏ2d,VÂ%6N4We95C@uG!`ҨH1R-MTL#w7J.+ꨔѫzkFC`2?z ՔU.\oi1-'ݹwQ \Jge T"|'!sWl|6hwarpXJ n4 K7MoG[!h:;f{4mbӉa7:렆E[1^7b# ?m@y6<%,, ؅&D[.ڶyA+4@eÊK'i]q$!=eF>)9CBf])RQNX(x? 8zLgtW|-Be1D\=?5譌ԓ#'Ԡ4k"m:.$^>9pPj,5aꈴ]To A"g;.3m64B æOYNQj.Y SBNi*k#,}KGVRĕ,X}K qp=C;j,㽟틐||3awۗʟucl*feFǤRp4;c۷_Q !lOJ1嚥Há ~i[3#Goܖ^- My;G-\i/]M!wp4x4ֿkQMh|kᠭN!&FDDX 6 XWD+'>rD;iOogwiB9*G--I6FQ ـE00cQϥp_Hpq"i-@u/s pvz@S}@xخa&w|#Kkcz`9%hk_[eack;&L'%.K[mxT̷pۏ۔Ҹn%hVb , 8dlGFB"7yfERxqFʲWnNg"B~=D*䄍=GҾyTnmocFHrwp޺ru_jrM/E͕]Qg0 ˧"95ߋq킇,C,ShK"g:K[ƢK~iLg F-%qؒ La'"P JÌg3vA¤!/nơ˨ j/-F3&C̳ܳ? 9 @]N S"(R-McLkBXsQE+Wߴu$N DQ_A3װVB}s1ntmeB£1#T>^1oN-ټBNjO~2SK ūf 훙 I&,ga/㦉 ,EC= Sd<$1.G Mp)=gM8$wjK9hv|Q:Jq߾}1`h;[/ID^({<([lm=숸Ӷu|WDU))>3<@ {L1 aoL3Bh^NNqNMQף;+Bu8$n)ncc 4 ܠ,rWSVS{O|.ja?$ G€s}4qwFۈuE doGVx hʃNi:ވj!b72g{"!ۛ5U& KD,_fm+(fЅ6n[`I ߫ J<cwyc,ogqG{,sF1NAA:5ٮO2: %93#;;z~xnq,'"ڐcG_O10$*2[;:.9ĀZkhΦBb:OgT%u={baIĬlP)=HfWkL=OMG6 zمQR@Ix"\;_c|%)SnI[g\*^|[U\s 3k D[ڴ4<1]nFHȵ3W5[H4|VeGM3`K p(g&mb+ևҸ+Ď ,lO3+vyQŎ[pJ;/T=vwPIݫoLtj"Y.Ct$VfQ( 25=cN1YmS^9 E<5rQ@3Fƿ{bui̯:fs}߆RY!n$9,1v]5ߥks\:a H* n*A;Sg%ɁƨG{QX7,^U<K܅[̡{xTVH[5'," 4Ťl Ǔy`8K3 8>gFJ&Ŷ8Y6 T9W6cޫp=V[1BE RP~^tlqG]e}sf>f{<Ny} tr~ea? bDlh~]=nz6~|yL4WAFi*jBskR-f%nhcDHmA"-T;g[5`T/ˠz_ ) J$ΣC+u25OpfJ$g[h|hNH_65kExZRo7=Rqi(a,PꚷەPS91S7 q S#cFtn qHYZlV@~ eIy̹!vp'nn! k)KDZx3εcQݽ[fejN4輢N UQ}@;XQM mh8J}-Cz1."l:e $"bb"ޗ[&,(@T) !]D$C :hM@>E!BaR#(ڎUE Bx(-Sg4wg(59"x4u)g~Ne j*mavFtyw5څ.TzviR?2W{'jl{|/i.@uYᒑ7yna"P,ʓ5W'GwumѸ&xSP/ ,jB ,.݉ʫ4#Gp7؛ZK/J[O:2v fS3""T$OmFSP.`'[& Qmc"|%'u[lQ6h?=*AD%V_ aFwù a< )28rNGV{^%&vgu+)ߖTPN\(tsgȄg85vY}BU =c^rbyfaDbFXvȠ ?>ԗl!}Jp๚ ~5OKpI(93Քv -k2iE s?=>Z:[FP,wR&sEoBS#ᙘ WÔZ^MjamtE)lY1]65^7+wCb>w#(,!)0}hHB(ƒkh 3&a5eύB,.ӯ|\6j0Cɀʩ`nPTF[#X ?-6LvSgnnD~fݴ[8Kj6g=KxVV4HasTnjJE7?:T옝e!v='7O6OނU8-07[~u8")y6!Js6Lv_-~g^HUc3$B[o݆gťƋtQ&ܳ7iiK fUjM< -O8 @G§WU(΀ue'v@_,h _* 8tsXDyO2pՉOF W6aGu= dV'#=QwJb8˫!h-W#&n)U-:B^;_3?b Vy_ʍ)/+m(3_(qj iH \]Ha:"$[ rN~)f2Ϗ]0Cg^}.;xʫ(E,Xrlhq`a|6$t8.#2ؔgO%RUϿ 6J6O[1cOkz8fbÉ(qWu|(vxi'-j!/ 2 |Jv@ oDU]+˽o NPAmygA+Yt{7l &:r5g$HO}>K.U__~Z֛)ѻV̪П.L= 1ge&%ɸ]mhلY)C`jb]:WVzZV]zKi`<_uX' ?5-G#}6 ԝ5}]20 88U P׆6NWSJ?Wp-"-dIȊ@ EXHegQESStM$*>xFECQ8;.T6- z-| Z|βnlpAe'Q]!pP{طwEZLtY~V;<Qv|02M2AX@CO9aRG1љ.x;1_L|V kyTsG=zeBc,梮'f 6Uq&5Ad:B+4hؚjȔA/bE*wJ aaT#KS%aj oވz<5"sq̪YV6׺ Jbφ>רaތ@fLd1Y0>] YNMSe Ӳ8XWMBNL~'$SL+&5a~鿛Đd*p0iCXF谋Lwy`ң Mx_D3%G28BcByQ/j%\B fy L R)3,.m+zpO)ǖ.'?Qwv_TOiO^Un趶PGf~ NnrګeCn㗉Cbo%T{8*{叧eZ%Nos`x$-{)+y۷JH{x$*`CˡW͘*)~lzjv-r=j|WcD Xv!EXC`G.\Ub-;:_/ng ɧXU`b Cf(o-BU8TH_ků.UV]-"qz[oL>Rd IoP =4lZCDzwQN,N)/>]y"n"VY'B"^xb"sIfqjM8X82kFm^"o V,tY77g,[@.ײ#B1f;u\bVlPb+l=cJiPtB2uQU .b<Pe*/%N4<mDgKzG{jySMhOθ'\*Mp$ d23~wr@X.OZ{4qH5E6h +9Hcqd {֤uFUnT|UqC3i=-O!L@iiy8y_vi7܍ WXZ'ekDR,KHKt)<`9!lvIgg lp(jY@Z3*'H?snaVOeNs#rرH˖OvgY>zZ3]R <Cz>x Gj6J0 bkWR.Kqk<ےe5`{ɀK}1^LZ`n\ &5.]L Óq6w@eByO-We?0lK;+֢kgXpE?gYISF)TS~Vd;0+N[!M K聝WT2u1v1@>U{ >mu&#h *T=EǸA۬,@a![\@u[U:*pRڡU)=+TTXm4Q T)㌼/ <.ޤnbDzo ħtz .^WNc:C4 czlT>˨)c-͌"bT=A̪Jxl-X [C&2GGY"'PҞVċ[3̗&5hHOyDw_8J߭ `7\,$F^Pͳ{z]4-m;L3S gd#HUr8v.ieCtW:7*6* 3'W`F6u8tԘ{tW-Tz*s5ΟXv{#dDnZ"?L>!Cy^žM"w]2^;Z~*T'ndfJ<$q , ' .[ۿ3Ss-|!RUot-6P6^޺>4'@Fl37`Khsl3{p1,bA'YǽhN ;EJe?B> #g}`C%9,-JadJ=gjCӱޘ "|uvL]`Qν.M)fUq+ѡO'ijg- x$`@̂u# +$<^xDHK$yj;ycf䣛LgzGEL66,wDLF=w|k~%<~HJq܃iv$!܂RPU1*7)4#rQ|Hm%c68J"B8v(OEՀqxCC71eX[5# WL~Vj v&vp{ +D3cUt\J粜Ӵؽ:Z42[Yɾvӯ079J. izY&>^)&E GA~/rghODMFE޹g[CV *"+f%e"s gZSSRkП3;z* E#¢[mj}7"| eϟƷ=C ZKhYp~ԄLbTGqae(c]Kz܆5tb&N偰S* WG7g=3)+@#4Qe{y'AH $~w5pYmxm%72f*|ƫ7Kh5KGR y'" ՠldـFfc!yi J$ Qn< Adxd|1R[ܮ@l0@5qnM5%GppBv Hx*?ғj{SOS4v  3[8 ;\ blUH؆dotY#~҅r rKmMfHx6 -g>?zb!ۼHO| vࢃ=]芺P9Ιᄾ|p-g@(LImBJ.׈`eWm9+;8~bg^3WuQhƙvڛ7N UQ&O֌O%{2O'lK ϛ"߂&?- YFײ>%mA";]xʮy:g]udmh^aFK$8o\ nۂ%Է\s@@eYD9p'yOqy[/Ĥ/{-@BXLG#ΛPJ:3&"6plH~|n/R_U䈊ڦW@FaE$8n~$߃Q 4s^*&*!4dBD#PUV5Zgd[oǚɷx^˜p^{6zMoSh.˖Q⦪Qșjw9cȂTV8U3=6Ytmd.l]JX,7՘}jJ"DgЌ ȵT5]j'98*Yl,΄*;@a|f\#j@fJHe;ӝINR,{i*Ϗw=5mGg~Ntl[;M5/]O޻w*k_?$ .I Nn$ %(ճaфI143_Nx@J΍v0vؤi셂tfc[b^ M|^ypPE_*PLK+liSm*_a'~(Qk~qzռ\'WFpԙq܀)Zȟ3Q.L SK`b1CI=d,g\zn5gJ~]pb-#D;ۧo'8t,ƣNC5E%9o/ '. ?GORLW˻H.r(:1}&O#4Q`ٻ##G,󖯋7z٬BX{'Zjh J6$6noK+ ~TҲ|M gŁ6mpAPÇWtJ>*5/m u6{u?֗!oҲJ'(W(k4:Nմz+HʤMk i6GqSd7Ⱦñ9,H,pXBCGц`s*ؕB):', 9ܑn0-^| #l c aa^ϑ$'N*Y-'- $~p{~璜 @1f!+irۮĵs۴^iW2b#Uqĺ ?df| vYZ[y>63\jzQuGNCϲ%_ѿLn4LA\.t0mJW-n5Vc&\SZg;07} jJq$xu/&N)TךO&) nN *G7?k#N, 1:ᚃ/(4 TWd3(siL_N5&%4۸ $B5fn_`y ^v(Ss@{ͱz;;^$*MF5Z@k'g ϚꁾG)¢s|~Ɍ;ޱ nnc K/z߻<yQR ͗i-;o l*}\A'[_v؞ VLʌ [ep%20 mLjr6v!@}0WOo[^G,ɸ2g/bw^&h~/3rX ɑ(m4P' K@AMX'xJm0ݞ|Լ/61&Z?{2ڹdh}}uu5]ӄMc㛸tjtGk8F}'$-/7v#6om X.&+<6"$V@R:}S7)XDw,O\)FddYsAw՚Qo|pکH)Q;YKR( JG Vɯ|qroڶh P;&'%SB[OQA @e-P=I1FX 7D mvM/Җ)bADT;5ʷ9 M! lGX2⫁a;IBP +!&v8|x8\l`35ݜ+Ko씉h oq-C&6QNU AX 9']D Ipk"GҩVZBd4ft̛يvr0A&*Њ kt z?ХӪ#hk(r8J4|!O"HA:ҍӅ5ũ/NeP?Y#IR*s˴S4@U8fޥCZ>UUꧧe{{b=կE/KR@ .:> D}$qI|U ?.qR@dKecv=)~񒘍E>¿h_%+h5_5igڷ9~kd X'=t:5+rmZwX:etƝ+&jEΕ1|Q1XO P'o xek3ylMo:؅~BMK"-Kzd|C$MxJb^f"KT.1Ap=^:A ΐW'>:|Ju6K I#֨w]g ˯ S P$F5sRbk)Mؙ( 18%-XER5tE~ׇIaNs!'_Ҿ!B],IPz%8}ZN"tn.ۖ iC^ *.^>HF{TZ/4rtX?sd)~xED$e^K=\lwE,=:S zRѠwCLn;.7B| 6-E}T.39s $h@|IݮLbIu_ΧLDc{= 9$qNXI` Ҏ1tVJA5j=.yף@2b"u6ۼU^ k"VhR5W":I\bK]dhK`Dtoˎ#N&8I/L| Y{)'8.Tʟz럌gf]ex%J"> {XqS?",9‰ =>F{-W&雵 ^[C-5q>O6>/!ǀ _ 6Z|.u h"iFqڻES+Ws!=;d (Iey: xcbC 3Z(u=xpiyЍD?nT&`!nZ$M:F6tz)DNLR6.~"0k6,+Ȇ D_vC̜6Znh$+3So] : |V]/w(KsW"( rKs4KR Mx#$pd|uj "ȧwI =H߅D9u/ޏZ?[v?v>% CW#`|&ήego%lg@|Ѯq~e nBp۷jx}[}:َd0S~oZF r`OuHL$f W=QxJ(+0ey!~9$C1j?(*\Z3K Ju@Pb̎k_bO+"nw;J9ٯHXȠΞ.uNA3z?ՠ YX {ND(ŌG*3Bu_x}{N5}㌘a]j-6+Y0׹ 3L.MTrH9ߩhv+ZWI+ ͈M~ց4Oh0/T^ O{} tT OzGGӃ ./l<"ڸlE\b/ʋTֲ<ly8R;uMm׹ YhmGPIL$-w=7%0<)Z>SFIcoA'C|q:H0jp9G܉@$7rG%v8.mv {Z2d㒛d/z)#vVtm\ciB39箵Zn\7X(v 2Wa;|,56>K_WU2P5p|sZ3?p#Rs! WJ &'nU&}8 żP#NNM) L@8nwE4U)>h>m.m0÷Т:Nh(o{g8&x ݲGRLc]QCs nu :떷v0 ::B %.MS{WlO_wڱça]8v̠)k惽&4Ƒ rbE6by4D򴍲yČ`MW˜!XY1qVOVIRU0ڞlb7b_]8#Sruvtg?B@~nCɅjshSS/9#/.2,1/}i) L[ Y/,|=zP,~W>)Y̅+\1zFѻ#D2 v4t3Wj8eF$RM,: hbÉW]7P`oZ ^*s֗+I?m6f| 8]sXd'=NL/ J38e|f|ߘP X{o[~ge˧zLTՍu^f)GHLx]owL/<^M;),6"ym0+^qa ؈]$jKš=,[e}2ςW5l)PlY_ZWcMX&Ð"*;$>Yfݴ~%kl| C8M0hl@N봙K򜠘"Biqr%-U:4- ?t.HnC5s}ـ- G^S" \3u(%:غq'2 @E&bhmE]:e-pu~gTN*JӉ-usuog</<ǐz5TpaL14@EY'=ԧM Ⱦl$4Qm^B^s k fXp5DV_rݝ 7e"$}xq5m|MK6G0lVt'* zhH!! uk*<8,X5[hNAȚu{>LdfޓbMۃ]??1zr#̊,!dqk(%>Dž`{/:0Ļ7ឥJX NIacϰ;V4P4[hCsakWxnh(.YrE1|?M0畻 ` T)} )܇Z,kォ$-d'-Ƈz[C7il Q[_^.d]u}wРf2)ECGQYfؔ4RbOg4>o6INlYK˽lfc1-Jh[N$I`Kܻ!sX0X|aeՆ'nlcdwwV =edXPb7Q R%C?$ig(v_3Lv{'Y$.Ԛ$E; ^_SIe{% #[-7_LŅ߁15~(6=QYSNӠ)ރe-ݴDV[׏ 'gV| ڋ3r&nƕ3e۸I= ,Eeg[zEZ3RSnEԧ՚[A08B n<]GdмOMPq%Vگ A4AW-I1CCܳyE[Ù$d`.Eoh?G[-YE"5|,xftq߃Co,:P*bX`Y*ECJi4 zK9q|7s;o 5OBCIdh6k\dN_{ApK gfcpȷ%ad駤h}ϐy@FS%[Z =*9.r-u}to>K ˶u+RC[iKd\v>g"wޏ)5Xmc T{(L "X|1kԆg?ˣl >H%\A-X;MF2'Av2YAeSՋyZG$%ׇϰq[fU/u> 69IUU>]ī̷|li:Ē7p`u8GdkX.v}t }UL>"! q&ke Ȏho,8#xF.uD=&.ezv@!WbJT ʕpu0E{b?iUjmiآd߽(:QvPn25h^\d3wv8`~΅\TŐBo2GtPcIa2%gy7=#IyFY/ig&yAҩ'pJj^gCFZx2oI@ &qw\l4!Xf ph{7(]#%MLytf HsX(`ʳ7 9xk!/koϑ8jFQjk/ut'e ZX(kh]愊24$}N|VnH w^G^ZGSz%g/aJ.GvjYr[-՗6Ѐ{jQX_cJi C _WSP7΁4WQxY/Iu[߅RA)UY)TlXPA-#߬grTbj`PT1! Xa0ʛO(ƽ~e-%&<:&$;)p{g:~<1$"RRYGQ` M,̌`N7J?VS|,4[5p9M Jr(ra/'ePpN2$ٓwچPÂ{rԀ=eڪPL4KPyC@]J~gLLߔ`fP;S!WwPdv/0/(A"@":k8"ʬi8Lwz"W#ftqQ;!݉UhEb CWҙ>7$gyE4ދaNGk {8v<+*U ļ)ΟBZ3;KXSf Ri@`~h5O߄G|kY2,0]VlYJ|5N{FB{NnVA"x' {)1=t$"ZaTj)zyM2'y 0 ePm6qWYT` Z`TA1Hۉ2ˆG~|ki{P$8(!G`&gsY/즞07n g|`I?}lܢdG"D[CۙT u  !*UT"6S2@ Ćne]z2 Žhˑ:*u>i4q;T|_yGZlG 9zPүO,59!ɅNPA_Sv RPyi01c~Z1.pbا= V_*4t >JsCUKO]$)^/pC+l@XzS^a:<Q1.I}^@]d" `2DU>la{:]IwL/4.*0}RHeIk@Ĝtv&e]9_1#wsy})>ѽxs*b; BaxM Y޲{G$Uh}i䉯|.r􋕊G;vk<&}1+ UQtf>TI _GoR3Xd$,t'zt ,Xv<#`OܙdwYL_ilޓP͕-|'-u0a+=9#a^2ęxVL-0)͟r7vuT.6CƎ 2'OaBdپY.0ll9~r 9|!9yZ%T G\Ӭc/=yHٙ58ĸ '.%ׂ:"1)WERC:sLOY‡)) {R6j4t}8%lC"\d#b UݲfT\maU ~_*}J}VblVsdhg0:S#'nAk`~==kOcQ3H"X,_o$߆+]8k!،-ᱵ1s@IQsbQ&J N ccAvz HL1n8ĩr>.Avd&͙[+[:%0V^m}~[t|̞-G墠)F1;df_s9>Q Vv S<>03YϸHA<;:f%}hN7?/[nY 6!jLa~RH̋ \}օR .e1ʦ9[L!fUMt8 Սt:qngc d,l L`2'u:l0o[o%ŌBrߢW|.eSs]  ` gŠ`>pt%uL܁fݛrL{Y  ~ (dWȾH̤#a`7iD-tp?)!`|)Y o.n9?3)Fø'Vh,/tb]9k*{'Z'o<9|EJChj.Ns'N B~ID/7wscVRg^I1ߤ/ WQ]e:u1_"KG*׳O @I}e,C^ Mv,kvyu^ZL֢mTf]| Rj52c lًd FVp j݀nN'GFy.QJb9NH!J]-ZOع5M?|Q #Iu.vvQ/V QSpU~VQ,C9(%`E> " P hC;r9E+e)6_l WI][I^ɲ7T7‘%4-n5#nRdc: FF7 H߰]M`o_&@&rnݱ,g,9>l=XdWtG `x0룡4~Mx-dj^d\  ͂K$c18I `D#Sb%*yɖͻān;e6kF`'ڲ9n77ޑTP(FBD#C~:N&>30wwk]9LjJ8E3j97n=8{[n|BqC##%H%DOi ;qh O9KFASx,oXB] 90;F5֭zL U}o zrggOoi]]`I48UQ5S6` 34,iaQ3 Jw8쓄)ı;k*DD.lN hЦdފ[/E9hUc/jNaMʏdL!qU SL |wf<3 bY\`q/ƌxFVʱ\~zfOJ[V5q1{Ț&cZ v×sWp;RH#l>n"3p%} !&JTD|w S[]mk(;U;B(X|&vjo(r|lĮMU87HG_Vְ;3pqLnI\kCHgHPM6a(JCwtL36]ZNZ?^#Kko }0l9;/ 4r8BoqK[EU:O ?bg,\6R yٷXkZ0ڶȧP99t6&&ܝgBMZb_vn!2?*yQN;n z;l6tcx q=p@ Sso4.8.'8wXt>4;ԙ C\O/C 9=k ؘ庾Tr~mr&DjV2OQfn3?jYTPVCbb>`IxF8FBPGM (̖2Vu (6!IL Y$W1 ?# ,gp;U_i@4UEES3 0ly0o6QT3!$25{zÐWd[c~C/JyS"E.} ب.Ab`)hSo8¯gO]l!CÆ"ZZKT&/Y:.P؀GR+S"8|̡I_#tra Y(z3WQqO7N={{U95 cM*sxd-.IۧRc<)F)nu!3JdeTyQ2ґ$OZq2aVf.V<(yQ9lzcdSQ 9LJ,gDf4®h/:?4>0E}D,>a{aNxgOíQ`.+fLf$\G%i o?AzQ(T5?ҐA?P2[beQ%]8)RE'_Č-*d<8: P;YɑP Ew@rɾ@w-ȣUOQZre8u`j F|!O`&uw(IJEv<]u}Stg ~@q˟?.+vLg!&q9Tຝk/]5+*a.j@ER7.qMpcV?^@jCbzӓI->)aN>,&׈dgD!B ׈b% ʳl0?j< YN<^JKMn7 [{Sα3ngb`pViVU ZE 7u#V/x>b1c}Vu wcԸK)IUE+$^zk>+W Z73@MB1>|i}D8m.jއ8f v=bTy^%!PQ so7ep$6V C]"`T·HZ@\;XP7޼Uv.'=Er;-/&ޒ55C h/jDOk@b53刺%mx&P(; z<3Aw{*젼yqm3/:Sd5@mɛhfQz&X:8\—JG-jޤʒuF8nI}گ>H+_yu/M3cW+VdtgFQj OHY} ѐu!V,$XY9QlÌo6u߼1aa9ϸJtp9*@XSwc6MQ9>Kނ[r/SX8T !NhGKoL >Ji׿ɓN1W<M) mz*1VO8Q(x& 9?0Z'oyPٵLùsWc3u̺Tx̛w ?#4:'<[Ԍ6&qF5 [fdH5{ Wd5 j|)ۦMFOQ9n ajFaB>H1I 0F; Xe8S瓂`NB?V'4囜6壆؃^(#6z"ɾD邢8l؈֚W9Gy_S{ D u)"ߦC!;ܓDa!]px)"Cn27H@$xx=s}^Ld/ʳMUS#nۊ-P qlSkjxsp@(Qk39QCͧبSNImT##gZñhc~\T WG?pXxy܀Vx)er"(K??R'SMEݻ*c4J_ *+B}U«fOxm$d(h"c6*d@}@H3GI9MܸޭJ@9+ {@1V8_cWm5-*ez :dWYޙ\QU]'솂D&UFejoj kN'`$nC`U#5AF$>LU;CuP 5"egF/s6r7`"4ZשҡPtZKnf ۝I&`ܮOIyAٻ+N\T {,+ut caH̎ӯ9cl>+hQVA !Us2#,$*>}݆UPBw_`m̍i.pXs^85=<( !";9& S`ά#']>frWp @$Y\!=λk;l:?Ezr}T,4p\[ MUp(cǀ#\u♌;/F $es]gЮ$ 3V9= *g ך8OA$:U Tb#$w@6֥NZ*"&Rҡh\l XIW9?W ^XֺDvЎk0NI8$>g3A!kOydĭt! A,ȖP,å K`nm+Ke%+X >[m{ӏn· g4oU!|i2ll-(ōٵ#699˴ %..DVePB-u/Ø5\@Yǐ!8#[tON$BbG3nmO@ysIdvaI'p JRuJ-c+͖:3z'Y \f(9u" DINU?Iڮ6C,1QvϏ(: nw]$E i5B/U@-]8&Rp4'0ڕ5e>-hQ^gVVq^2H`Sb|cASESGsw@W{ؼ.2AYe_ Qrt? cfԠ#L4!ꚹßHnU8MDNZ@+y5@JF-/7P+ǯ8 =-{H49Bf:A,wy1xAwEԊuses|,&"_YҼit~c &=mmH ?TOA44 ȀL/;D )~, xBQpLPKv6Ex-u,ε5J9_PREp$@qvLޞt^-#mH+'!֧Gjt6򄪇ړ~m};1I3iSkXGKW3K;O}>.զ/f>F Ƽ穈߿eCI҈ ~ȝ=<X~+-a;sp(#y4ξV艗S3Kc>3iQ\ᙺ'N z@홬3b~IIaY'q=vR? lg6`IO1[U,ʜ DKώ>]_eR4uM*5ޟKc\Yk,RSK|PQbiD-!-1}wϬD#>Eo/9dr2qo{\3娱;ae˝l_H zZ Ǩ1~S ±FAJTV W5BƺNuѹ#K6凍X2X od@0VdFô9gI˽Q7;rtq!ʧo%;:}T[=VK_Sir.! 5z49,xA9Bk>>vlP@GY8Z5p7ɎW@]}8q<0?).ApV<yEr1Vq'dN}^TL^ %Qlf4ɴ uK*xK9^oq'D. /TjjjƇjrB pS|`W$VNb7^حxF a }ϙlNj->,C}7u̶m 񌹟VLJl[[!] WGo$PX Ti(Gf÷mH*bՆU <+1zhyQ(-!b[  r Q0=tnSZ |N GEE]PP"y;0> XKcY=ffJ(2ydj`q6+Y˱,h6 Dk9p4sUbas 1=r#t+-Ϧm3~W~(.,\|W3)]R[6X/-tR6 py"L\`ټ+}/m1Si=AyZaVm,Vx|%+4] _0pNE~Bq\bTVg5Sg~/?1&qQׄd(|4:dMK3+GTb3P8mɘs`zǐOfTl&]j$"*Y;"1RAB^b@e=qͣ>j KdxF.U1|9)92Lm(>e{}{a].2z=̯p&xnTH=MNtCK' 6i4d8*S0@#6K4Fny]2̠1.oWyIzzN6lu9Fmπnh[P 3֡ w0:f# :`^ OI/@$V K'[&ؘu=ePf@BOƐ# bS=1łuin!ԧ!ف{L4.>p=bq>սߩK=ovـ/ ScQ./cîa4UBr;rU6y⩋2'qb jo۴s!u3oJeLR\N I~WKOV M#cv{O*=F˂X*/O|HʭU7S*C zCC9)aQ5SF@噶K N3ǩ `YcDޕF=1{%HdLl e.aά J `rU[r^F#"Y~ԻByP੺~. |zN F.(`l _P'2!={}ӨP0]UJ?X6޺R ɋ >η,w0.VT|"Fq_XA**}a5inundo 9FNR+s'^n3: BpCg[Iѡ0.={8(q <﹪p"b wzkWAh7qcf"Rf8^CwOlH17Vvnio W3!;1']N!5 0VK;ӗ\;Q][/4( 7PڿTie Lz^H5<$o nW{dќ/ᤸާ_R$R+|CI TU@veI?1H{)XWClӯo8HZ黤XV@]/`9K/OMqc(*Fvm'L7߆'TH)'y .e<ΐoO })zTǘ\C%`z +=IA OM;phkSm7[jVl דsgjmĢJRQˣ#Ko-'ā87_ϸ}.ļDĜ۟nrT4ຣXF _wxΥ릘\6w(Rg_W6{5ms`k *h[?9AVxmMJŕXʨ[FsC3xnt1[6fxXݿ' @7&= f?@ ^N^u;gE(_q])Y+xC ^/tQP/Cvl?RnYVJ6* )*f ;PR1awOݫdY|z15ti`Ϋ\=( 2u,Gc +&8ioȓJO=]D1<"*CR/*qNɌoIjh'<ZЄT^,$X"C0Wҡ.WLvHKf}SqF$dudu,GBޛ(UFȍEG;]hӸ}%w-ֱmE+]L4-8`k2(;e![AL9{qک; Qzmm@WJ},Y# n%Fó1n΃i#Ӥ%tMc׳V19[ǰ]v~bFhM/^^aY|:]!K"eo ,*메YYSGI aXu7C-ZyIíH5qo Bd7.nWK62pOxRI&}fZ|q݂t}^rO '؃}AAd"/=Mh ggnY٣ 鏥5T{$^{ %Ґ$13ʼ=) )sdkd'?Z6G!@caM(ZM,~ uc:~Rm%{ IŽaѦĒ?9ctBLJU ՜gyv9dOK􌡴.+(zÁxRu'HW9_=Hxx<'H\''5G60j*| aa*=?(nĻc"VH"wy}6FhwߟRɂM$mUu͌!_~̲eygN0*2[jӜCD,-Nxc3oVx ì{A/8n>m]bQ*whUƣQ<|WnFJӱ+ҁ2{I`aqkX(QLxwWEK4X-Ĝ=dЁ9>wMO;}9x9R_H$6P-/hϽ'1t]<-#0'% 69AgNC~ H|δ{a¾*5(/-s[ogJ|/Gm^|&(gx::lqqJyǣiQ &R{P(>H<\M,Jtʼn= beCF _MUI_*mv3^_V鋥.?3y;(8X³؇2!' SkA2;/"AIm*$ӧw* dUC#?V`1bZ h£VZ,qVd&Bl;GPFkCrl Cx \XJ !ݗ>ohk"U,QhH.q;@BC|G<^bFci3|Դ{5ńK8 ]ߪw?^>͋/U.>&i9|;&IҁiCenG39. ;gJ ym\Q7ih"C]mg2m[/Z[Q(]FL֠'^XOq֚CUP>_FhJpZGz},e\7^tjFdF#Ùjwrgߥ>MIj G<"t1RȘm#t :txv_Zl~#B26CfP|j.,S4' P>tOw$(`\c2ȋ>s4P9A^`PcR;Sol]v+TOhlbdHΜNAl]w7iYZBkIZ`sHHlÍDK9ĢxϒG>c=q]`c9l\b =D:i,~I@5X^ $q:?æPu,Nc c(ehOQnKāЏӱn˩]cI%f i)Ј2 c2 JU.3,+\Im٣e~-> u}zK}I~%ۢe#FRS||%U/ekDȬ&UXn̛)0ᙐ2:O0UU(Z0~.ܠ[n!>Ss Oj@7}zm)EBJbHkBG5Ǣ*ܪX.ϓ:A\,5];I*%o,zJ' h: 9jK蠪^-dZ\͠35Wɧ1Q=Š6~.D||wn-ͮߓ(q96>mօ}2ѻ l~LrKj@b;Ar}::){XX4ަ1PYVoNOLRPRXXJavP$"Lk\Y1qnri!6(TI=P sӭm>C1cUXltEϸj*^Ġ!R:GV1ay\_LӝYSs $"m b:D2)݀D@.4u b.*{掩ѫ*8 LNzwwkEpqQCX#eVإoBDBzpj-; 7l%h']lǺ*3cY .T+zW> ÝEۨK7^b0 LKPuSE Bj=ۙK'ULLEJԩnX3.hy]hӌ# ? _x> X=T9&Mrqƀ[mtR'{=Xr* i ~wQd2 3vPZtԺ6n_D LljHs R6 *PMFfHke:Ón<^ו~ q0Ѥm8 D4whb7XrK,']tЮ h4ǒ?r';q\K1gM=颵wM+ I}:X YZU$'_d6DkQoW@9?8b#E8F0?s כ089d*mU3i)9f2"55.C-$c|jB >"8/js+t*8!h$2jHզ.Lޤtc&%|*:]AH rKжdO`d>QnۻXvs,0ζj}F0y\c{cvKQȺGZm#m\9^~YpA$:i @tFBd.o~v9>˜y3"ܠ*>lق !tQJ6Gz6.߸ɕ߻e b5ǯ!݀k.Rǭ~~_sy{&x"Ԧa9_dkQrdVLS :0}Kgeƭ::5~ZUVlKԵӷp˟AOxOVP9p@!V ڰmU(BJAX{i3ۉC>Eb ^l0rȪenRBM "vxL'6baEi1B*m^%ZuYJC !Wj' bLi*?SV.w`꬝Muix~_[y /ʟ_9"]mL|[<7&̅F`2M\д&pΠ'b?^b=j6nq_Rs}'\;MapB }~wf߱>5e?;)feZ( T<񚠟˿Fv"X:-ZB-D2B륗 p ~ Dنuݸ,J'QjCYW-p]_Ӕ$h4GfaNjtQA6m iLZdbx=vG5rk߹a"vBԅbpEDin*{ Jaҭ(5qξ!Wd_uxDoyi۩%H؃-ASMTUfw|^WdLE۶|$[ܽ䢒jS`Nn}:scJssg/ePsП?Zw&f0(Kibq9IMT"=W+@'? .#u zE:^_H7udWm D$Bu7OJ gh w,{0 `e, {+ t.MO݅*61o y~ )ˏ8_M/yhA.׊;}6hǫn9Pw#_=jUɡ PPe A4}GaBkܷ #d9ʹ536N})0KF4GOЋUu RB!uĀuk>8Wo%_`'Pe< #`)t\/ X3n\kt*G7F]"i $Wvw"T Yv$!~PWu}LgqM\M{H$UHۄdnjuRFBPW\`036@v3 nB̅Azʎ?&U,_B/ZM"[ťAf]W e  lOu:ݳҽy=gƎ]p$@Gɢ* 2X́&$"83.:i{En"t"g6 yĶs1!"gfRGKհgsTBS3IDZ屓,&U{NhTĒIFhy%E_b{+_^tZGO'iu`1$Y1Y?1){" eFP>M^اPѶgS'7$9=vgE7ŬP<%AO$HWe7qP&mh|koAVh<xk@>ژU#(D!c\Due&Xal8`ԍW[%ɋ%@1 ʋb~;}<&7Vx'D;0Acs/  nj\}·*8|<000}buhpB$PS@ u_84̝_-E҅G6(T}{fSr>)˥&84 d$2QTA#߉S[M lz2ʅ8fS [uv@sk D] |Ν=tLfz1CQתqv}uE"nB:RZCS蚤G>7 ƅj(eցwI53fHƂso 3KK? Zq} q% ]Ôg*ʟ37! WI9_V_4 7{v}JS|E@A@c.  &z^<Â)r@[c*L;ѕ*Kyu R{el_+ _FyTxzdX.@%/S{VH/' %6 =3 !w? ˫D]7$ c<οdžSʋ?-i섓< wjjA Bgie/㲯ZF61U1ƂSZ'PLX74rIx/|iՙXL$Bmj&_JGQ(U{'5 n8lIJF\銩wmb8h,0!0\y2\Ο%hc9jP&w5PnctTʰA(N݂`(]xFdU F"W~Ue1;1~*"N i;$= $Z]cxO1Rygj'EBk($@酳X%mEzTR  c{[۹9_i,Td\I/BѷTb-BlWXK&wyA"-K&MY^plF3E]kI3ۗl }'XAԮ5t4ܒEB>DM"okb#\t+ͺfivBoDŽڐ1^)E6dhO,\ )?p#_"4xײ"^Jf wS#bB9@,y "l[s o#E&<:xWObkCGNRl`Y@R^t"i\vN_u NDAhs&; 鯂?9YM4Yf4] Em8D=vv?UdKWȢd¢Nҳlsw^E%beRoRsѹCZI LsV(Z`rA.+-#"'` |48ԏht:k*>F],^E:ƌlN6/tH>cLF'΄*EnYXWR$N<8~43~ki 4н7;d2d5q@|ZKݒps1㔽mV)Zyf=JS96|h8.;U|12x OUhZ{%ap;bVoA[5)8,c|KV7D ztW9ȳɿ%6d1&}2SfQ,G+6)-`Oi@ᭊkj6 txV^q>9IM6غ&j)rCYj'50J]B1c@{wcE'9O)$Poq(cdqчқak\I)(jvC~Nh:d7`yY,p rAt@q꓇p45)4 וY&wNL7U D.@eE%\.\ Bӯ*w)cl}{Y-sD_=}X.ygZ] v'!(̋96<" 4|E=sF=Hy'ιL.|.Bq /.9-S'B/0}漩כ ˳ -_g ͉j?U\ - .Ou$npOr+W]|,K"K6̞)u DYUJ4Tr3FWt nCB!>67˂|1-CmDm@kh5Ł A*r ÆZgH8&]/WDŕWT|,!2.^I!9VzJޔ8߰uڤj󽰌>IۍvFқw};FLy k$x͠ĹN~!5akr<ӄġ=1dwE5H>RX1]!V \|ׯO}߻O#Pdvyn jՋÐǧr9=^:,I֬3_QW̎ j54˨99{+kepr5W7,FGM)"2otD$Z K- /M<) K`'0sGtunbp4#;{K}+2Rҕ3z9nK_hkauIR*nOOgk'@#(CY`kN2O $n%0:SL&qsT?vOVh`Vcr| ~=E{0$els_ObfJJS1n+/~rR؞$>E+397]H%b"$!L"Ɩ VheW"a>}g**@ʁ6b"YbXLԋ#R7c]%pmEs,Au >8yk7L˺;N:D{yhIP'}"|5* _w_!?%HuLQɇXOY1:}ԉEN 6bzў?t.s6ӢAeoYjQ\t܏+uraaX>O%;HNƘ$5ck8Xr[snEWDgdlǐ8o\xC{tm5{s{\m(b ׄ4;V̲a/[?@`IC fW710b"/wa Bsp{Ṧ6l4+T+q=_ ́ V@dm-t&`,zZRY2s5Wb]hgȎyo@?@̢oX0 /Y] tf`P;-h,R^]m&SyOj3. m(d>g'3D'P+]ÃQ@HA"E睈*a-^"zϵ2iCվO,5Hπ笾(Lgmbi# 1~nc |邵f-nb&8"o=(;_@/P:r4]؎~'tAxH Y_b" b5½y;rQͷ + XrTa-%U)i$ > WUx;0F X3IZk+IKk|Ĕӹ hkYKlD Mv ;˪2af651*x }PYꞟ߁\s8"1?֖)m{n:UO v^&t<ኃy 03-zSׯK͆$Q.H UVY)h6ѯ4f"g+NFuh;0 UտN&]bדw7 cӃp%aS}M]khX ٣nA)6{1&4+K阸E zQCބXGt7{qbP"iO{VG4R24rīaJ6S}< i)u_ mRcͣ/0&oNn t9Iv${6C4v0,?iyԖ\8 ,) K4VVg}(s㢅(vmߔڛeoA#&=p}D/^)'PzeEeTP^aDLj'|w//^Rst@}'rqdR='g QNRsY]a&t@{}Jloh_-6'M`*-&gyŋ{C*:Mw6')ډ2\m:[P$),ˠ󑦤V l!tXP;$Wt-"|%bvV..5L :p p랦xШA&HkJq~kUߥ0n\~ _BIN{"9?#;"Q{v$fj9 pZ+>mֺ\˾<@w%.M^/'YUto'__QN*C2┾21es2ϢK+iT|$ڞݴd I Ӱ/v jmuܽ#ujUE'm'VaTϩMunr+@]TjbC'B ,d?y# 2c6n3Π]qM:c:%xgWcu2=*{UggZt"pes%ȗ7ŀo{UIOSǼHW~REZ7@aidRl?-7bA_tN2gQU bFd40.SnE3+}TDLy%sLr}+zSyI[)zyYFf\}~k竣IKfG֕J9y[^?kGi %zP+?ri8Ʋ*6Sif6ԛDVa TܱrmŦ+ ro2Yא= i#3OiDW5&19C0'Ѕ/~ӆl =̇B+DRL^V83@Nk`72lKnZeΌUХEM<HB~:bjڼҧXfa}bh mfyISQg9'+YSX ! tܸzӋM':e0RaxB0(6(PcNԠgZC!¥2G'22"/`tˮ3E EL332r!X51\qo|폁%6#;$Me@XAdٙU0<8?ku-W3U.x,xxgXdK\.>󶍧_5cNMIӐs-óaP'f+K;?YL;xEY,NcbIz!%H$L 8mtGAm냓o>W2+¾%6]BT16{<]eM~D|s2Sou{0{5X2H<֧O=Jo5@#QjA!^\q[l:=qub6k"Nwg/"|`ЏxSkeel"DYn  *xb*uȊ< G0"pgUEҭ љ\רہd_S]z!?pHK/9e}2ǃxD*Jk*j2T# kOY)\!H?[8HC)0Ssr7룿pUGֱҡ4т$I匯g5ywNy,#4*9[yk2^5YERVPOPi`5M=ENFDK \,ɧ){ÅH=*R$]1ш$lj@&W}좡hn=n)t,c; 68Z}`_Yx;ath}[Ԇ`[ޫ\r!|'d7?'Jz1=nCx뜆Ut֬Z¤ӜrnY!r=Б0esLiҾg$G D?^R:h *;Q!穓5sGb _4Ӳ @; \eӼ‰Y[~bXYt[o)-:xivux%k˞ܸ`csYHx y_Em0}Pr9뮽?=I^l9?Q Q1 Hk¢umdu_/;bV3`[HXѝ[ Ln%C,C$ +}<cp lUQʬRi3!n ]ܕ6R`S,BԱN*L?Ne<ּf.d,F4JCܕA+t>L )sU|^8Ҥ}0%B -ZÖ$ "<&?_wPۂ?ʇSF}-^58hg!TœѮXLNe3R>X, &s 3DיCg8 ds[%{9ز%g+1XGOơWud$54Qeal1`7r:oG~Я\TOZ+kbBFn-ݞ!uc!cS{q {CҺMJ縈${#5[+giAk )WmwX&Fܼ~^JS EyY-핀 Z5/VR"$ٜ9I,9 6|\4ߪ>jTlte_yPNhF9}ͅ²'t+ĻiOgxAxo*;ⳳ]-ĆyXARϟ}e<$ ͟+2/?t$hH_ = ji[U3E0oIYpfavڪݏjHlg V`ɐqaGݤ ca2%sXO+-TlV/#cDǟN-Owc'ml# +ysk #aD쁫 Mkd9y$yC,0dU7"!PqD>ڦ@Z]d iq$\S:rmcD l'BZ ^qi:\(^;Sń켸 *v}WksUޥ5o Lvpv`u@{cb'gh&R2w.T{B7g hO 0uIn C]\5api)G*992tQD3L^d;j-i F_lSPJИ4ӆ*_(1(3 Ҫ}"`/Зg<>Hpb_YN6Q._tO)fS ^dŇwj]qYsmYbE "쑨lr!(,<>D x"jԥJٷ}$".x $yQC7y'pҔKhO8 !sSHr4 bk5TNq|q;EŨ)X*gJuv $ˌVjl(C/f}VK#yQ@E5l,hEܹN+_̇u4< QjnxFR&\q)8I"rơ:MS"<髢L9'q;]dboo#6:7l zwzeF2C@Ne>Zƚ6sѥ5JMi:W8v,0 ^cg,ؑFO{ґLg,L$F6j=pb/&#`$ߍP* (9Hzw.1jVwzO*Ώ{8" :_S-77 ` +}4$xJw*4VԳ cT)u|8i032rPh&9Vx bam;l{ 4؇nptݝ~`f 9Oq_KFFgX?"q h74 a/ m@TU츺=Iخͦ=n7vne)WNSZu 1TEp(<~ڦ[&=%u0ҥosp[\WuԋG=IQF..+ӅO*A v-yCվO9B{|JRV鳾rny̨݄Bd*LGJZ{3Fg7BgT3v 5eJ0gC<ӸR hLD=.[%x6axD 0Y+m"U_6o"٥'i }`؄}ލnjJ )?jo1g[n>'աI[n] ;Qn'u +RO[>'cD!uWE*aDq;+:ExF$moKH^ '/x9A/n1+{#ކs#gdv{~4\ v i M+C}ux$A@&+c 5' nGwUĸY n$vnQη$Is[ڧU)䨊O+@xJ`&ԇ13 pIb%%FB?8yNyː3'-CY]$y7W1Xn+U|gmnОzv2nΩus踪}$@[ )7v+t/嵁]b#7,:kPt;5JWX "Ț* YѲ{"?жOaX` r݋ =N}6( ΒVuE)6}Y`l(i.Gw(e[6ܘļs)xwEK%aYRy 5x|$x1V< _2!S y: p„ȳj v=uIz_jխӼvYl2Ѕ` 6*4.ȟZAXrz)Dy~.CzO>Z(IHse2+))3L(oK\?aҹ.YNko]@Z$ }tD=p!6>Bɧ$u=# ]UfG°~ϩ? 3 v+ƻ+9UyPG2Sl0+H|6Rw) /Hu[ȢCL-Ӡ.^."Re2x]4>R()5 mc&x;+NPre E6h@cTdIRnW۾;=i DY+] jy&lb=ݨYHud mtI&'XRóv\+Wl8\Dŧ/9M{ѦP4,DPv'uSddtœpD.+;GQa_8os1ٌ?u4۾@ [abOls5\f1$K?o;ڹɳr Zv;)0;uOWbFyP6Ƃ'GJDP[:U.h9ӥ~,ӅsYHr6*@LT[oT:Rފ>s88r?TI%k&ވXn}l/EP$`s(VoU+ˮ}T&Q^0qCY,9ʏ9k=RujPlNm{"zVy^ZwSxG t[DD3?4㯒a^*ieR][ňl =o`JU4{CAլ0ˑgSgL؏e\8&1!Zx[귉$Qa\U i>za\zi!PF4oqXU^UY:,)Fe]MI=K 绌ӆH cND];Qƒ\hXPaw$fzuu!=1x&8op<;^35Y7T}GuΏ) ]F{0t 2˅4w}F܇e3x( *0ؑS\P[oZ~Gc@?w-v@5n(5XL^[Y'sC8E]# KSPU\a=*X~!+^T;k `$kDB֨Tt .ģ!v>UͻdÍj C˸?Σfnd(d/]`64hMqpyk5|Y r7Y\7\Ԏjn[X!GqO83T hJ,s[pf\<  .a f.oY,{if y`iRI 0dC֪joDOgh A Ԑ%EO۔L7J m^DfРd`G{ࢡ~HϞ]DȝSMP+l a@ x/'r5rj]Ň.vR+Nn'S m_bpL7TDy&0Q>5o:JzKL&hMtl}h;'8V}َ31qiE s3pn^Ds0V;t,/xaṇ0FtGUV9-mƍ_95Pޞ*v0ݾՖ*57;@!z~bQ*Es;0b V7]l,#v\A7+?H=^Eg'XjQb OV뇑߱OATpDt pF]E5QSYAC'sE6A8έXQǪ"FJ *hֹ.:fj\R59 %zd2\wel|?4Ŀ+_ -*R fG0u{#d6(Nen-\뮅BF~GEB*TY~fм38zαhcģ[5xy@1} l2ejJ,UVe?W1F_'w8>R,$SaK,t4ދP:0~cXm"xFl t2Xr#ĩr6dQoYTVVdiAvpȿdÃl]2~dٟIK6{PP\\lj% 2dt\]hwPȌ"zd,4vuk0A.n( ҜOjɹ^BGcșպXTtY6Ϣ>ymr3u0ZmX7x|%52"E-m9l{8U$i zz G.#<ŀwE+sqeq5 w SǓQ]v7.@^w2O=~9Udеqh a2)Z# AJyGj5^e„* ;Uؑ&Px dDY}D$`?GmOktz= U1E-]m\BZt AL()$Z4U־>Ҡ :.eN@V.!}+5o|v ̏19F;%&+~"|| njLL*7#X\6nI7̽cg A/r\qMDt DfKC#vL`\Js=X+F\>(e1p6ew(k/Suuy$.933dc~ Ɍj)(l|,w푦;/Z;]h&Ȝ j"P_{T e8qM_; ì+G12r "&l5,:s;VwS85t:inȉӑuݑUrRmf-_j6x>EEԯ`QJAyno v=kQX,MIU/"J̚O5mkJm|Ty2H0~*X+U>t pN9YnXJ31xD\~yթz\&!_Z}JV'oVm({, >.T hu W_wkyrb.LF1XH6GRq[?\Ԕj#g͖XH-GwN}A"_:8Ї\ /,zr`WMtDvP,f$TX,6D|d)RVұ?%xz>Q[v^L`"GHIg7PҦ ÷nO)&6!jio2w^/_? v{ reAhh?!yyR*v@Hm8 X̃*m5DV ?x<7>}T.ܦʆO6n8˥PAz03q&bSL&3suKSA942N҅LUHv8(SzfBI"ڵCYNx} Wo;aӄ*#Jp#|5m5k9S03x3"GxΔ_o$at}>U[o4"xP<3p C71&.V'zenx+sxsav5"mxo~VKTd_}no|;@CFyDr,z'ZyML9WZP7g6B''|_z[+ 72F풗"(&q5~I'o?[j IV %A m'ءIFDl1x&aVxidYPxhJ'.mx+_(_ _SCV=tv@)g0\͐Hd&kjB 7+Ξ KV0rdԩ>c2 I |Y͂S[ |7l T,1EqU֦oITFpAs&΋I_# .C@G9핅O|$=<4Uʃo9/,` \7QZ7f!OVVHP1dQ,!BfGemAA4 bvQ;zu-ixΈ -zBw 4 x/sWp}@R)-@f}IDɸ_fx2't cDz{ڃ`VxK+qַC0eKMS j$Phu^-T9s9. FŖu6$亻9*MXL@cvz"k~&+oVpQtC!vWsp44{&%4,.W1VDu gUx*̦w\%e>*[ ӿnǯ;DY>9K`N#o899ʅ{uf:^.>\Mq84㕛U&>T n0bՊh~-`UY0)5 U?XÐ/ $Fk%7韗j rܻSP`B \"l^#YB=c$C~g9@j2@;ԒK -YV ô2٣dzxE DK,R^H!HkAψsSOkV[(uXe慎țW[*/LcB*2ղ ;tÆ͎դ FRjfzQ0X]&.OPhP  䭕#C[wx&X$cdPmh|`wc?F] mS㊴z cz+✡o(sWE9,/{4? ,3f"O?T31 2?wuÉCXNFy}A~;v8UUj}X1O]F+Kz(O0c4-@lx~e-cNzo1A>mCD9}= ͣA6"}9+H-)JG$I(҇Y h"HP|Bjbܟ"?xM `$7+)&ف;sGb %Fgmrc圡p ? fϗ*9$bQAH7^!h J_+T3]Ze513t7>\zd3) )( 'U:yxrfV|_}(b˘RD4jk+y ʵ \&YV/%ސL.`5(42}DpiWg]khZlؽkk yy&3 ZV G›\07utlpi 1"{;nC@qf%Qk"\j1  lHV;J*3dtd*GRF]h})JSC@b/ԲxW ga=H$wWQjqx # vp3ur΄6X>_RiQI3F xYɇM/^n!X|Rj Ĵ!)TT:@B<.:ѣ<|rp,01RASN,\LDlҷ;ҩd*sxsrz'~=?&F\JHh9 `Zu?zk<1ϚǙE6y{!>*6֛ H .HTEш Z4Jc n= *E!FG: ;_ijÅISC"1Q!l3O>+9!yuFx۴T \=3!W,#nYGTё!UKVc-CnЬFޗ^/^WxK!ת HpUu{$2yf_e!mvC{ 1bXHdm-"1gt>a 5zW{m_nh,TaԘ̴T~1|7I@pjݕ8 g::~8]3PNCSvAi.J7u)ݑKf;%DтLNUO\[kgŢE\Mn% <&-è|ؙKI"={%l=Y JVi꺩sb(>у%]49Q5K O?ڙ8FxXvtDuձ:?-Z\5I#;48?=@{ДO" ًP~t*" 'S]W 6}t |: NZ|~8? g~<ǖ` -5̥7X ,< 6٩&/9*dfM-)Ր@ g-\wјr-K[g Aaޗlm.> 5rB Ňl_RX$m9gtɁ(ݔ5oX k7`4.4,WʯC38ؗ٦V%'K5CSacz/,2:_wM/vA GZ"nK \O!v]Aeꋊz0wJ.9qs3ˉz:()z?~}ʳqwqmQޡݻ? LяHF%\)EM䤦㷦;`0r>:֒@>ϑѱ(89:?(z3$7+C+\y7 |O!|йk;VmюK̵@pf,9@2h8KO/hj~2eAP_Chi;wB]dv..n wG%O]#E$dZr8$5ETXd X#oA?Pp(V1V5˄RC݀^˓hvTI&(x"m+zQ`mnpI)N ޽#^ 8TT)U5ML@HQAZqNYH (Ĺ_| Qaعy(1M"ZEE 0N~0< uaxa˸\53=C87y/&B0ͻK6&WWRx)VλjC6ohh;(E_v-#b" u#AQ5p}λH W8UOW@?6S;GKN<ȋƏ|kzw'p'PIUnr$;뱬tO 5 ٰ~EE#{@h(-۳'0&6c{]1x^yQC1Ne&pw꒷;,d3Φ~MM|'u vd98O_z!_mb):L|sFυHRߙ4t.0 3s+ <&,9+w- o9Kh"دEح\N׆Ϙ~;O!0t x'/DP:Y=' 9 &lHTh\ Evl 9` ^;{=NLҟ n<tD  ,s|Ѕ{= VDhy$렷Š4ͽ.yj$$A!X׷|ؾK y\śWPV<>}*63)7ɐW@0Y1 XPyhsҺR[{]ʉ(ɫhtiщh^VX:IA{alPM)Y6tKor2<[wTvbtMIH>0cƣ-(ø%Վ Ș w־"b#BcK{#c[B&rF8 rRbbP𾇼ޡOEoF@2m6Ҷ2`]π`zH lw^&xEa\"M_RI9,>XK,0T/n8;i[9[2LT |$u~0J ڽ&ҝtobY#F!)cnn:.߳눪,cZ5KZ~LTPn,braAڛ'0Z:.Tߚrg|';m<%ˏK96R:8 [ǺUx=Elx.t2Uĉ8XZކʸܳb J5)blQ6il$2@#lP=P^m IcFq_.~pVTs`_NH 3;UrЃ> ,¾1#8gu 6QS%\|Ԣ94si2STɮ)jC #'z$Y&akK{*b.984.̱(UrgR)sxMɟe2_gȒ}bR*-rvБz'm,825+  cգϪ#y7fW0`Mܰ>-/i#i%~}$EAsh7bp&]_q1 SVT51*9Iz33^u < ?IxxP"-IA05.A7j#wI⩗3OP3>0)*@mV%ii=/ i+}x$7`5h "aw?)Z[}K*JطUs{f/ru/X}^y9OwVߌ^lA@ ـh\;9s"FVXcj$ЛM(7j ԏ% (0̋b):~ !s \0<## _ƗKcyg2r(bBȊ)NsinlUM(M [uE|$ _ [ay*d@0tZu!Ӓ^ ͟icC.EF/oam#/aomFa]HwkYSP!?7y~"62Ƿr YZP=J%{MVm)So`+],t7 &|Ƹ R.̄0!#!}!^<;r[Z҇0#)+ 7" c%rohoh,?4)lf&A$N>P]Yz1~E`޿hsо!%՟i)e!4_/.fd l_;*򶝶sQ^mw;%rm8792uF 7נ$#9$NN)ߣxݣR~bw`KUp3 GB`)"kygZ$f$6C)u|n2МpOѥ%s[iP˫\Ccsr3 1? P FMb3fW+C>!)#h"JԂ vf.70[Jbqʮ$|G4TZgYEk!5r!2UFM/h 0,@;T)AR]<VtEXHZT̵ɝU!_s*o<9b im1L ^B2+a U:p-Ƴrg 㾣uFݚ ( ޟ/JZf+~Sȁ1a̵7^P;T t1ܵT%b@Wk?Y^eW;LnU[.\g8 c)$LիY,YG;I$Ɏ BMv)"W$>AwAL{Ƞn;-UXպ0ܞV`ŅMo߯gȗsjh+r/iT/'1Q. a9OH UQ,E W+8>-8`+zCK@W3 7WYF7K ǸcfkJ~4=S,9җMPw]+-XlxLΜ 7iѐ+ k Ʌ#ba1RVm|d;BD% p*. 'E]oKoK eTu/dU+';{ )@;K@F}׻ۧae#v>=,Vbvr *)8˺bG">.1Wě٭Vؿ|v7ݖ)ó+s~ f6 vfm.{73Φ\,_=i=[I08&~Bf|pzsu丯ڿ)|xr*i$3[BkV+Q~dFiarnf:<,"Ij_<Ēmre7߸axRQPUDFi&^w6XPG |BÉ1/Ѻ S;UM7͗HrHMaJ@C'g6ϊ:/@ | @8U-C-tF OSf 7Yqe*ܒx4w:J!t{GD \źK_dj.(Vݔ,(a}=a%B///D:ՏXElV@ 93{򛁼"~3X9$IqeIDamX o脌\Asė%Ab9dѼ #RzY笲hɽ V'EY+OddX(F{V&fQGRMfyQKI!T]:my ~. <2eWN?-vB&ϚV^:UAȺ`ĵ%As䯀n3F>-w; 尨Y(Cn[i ſ_6HE_Yt#QbWcf5Yv 51^illjobkj«Tw > ҕA 8 w/|Wk-vm0Qq3̻E_ޕ/H,mFHV7Q%L9+ֳ8@kuJwT^ՀVl(^z{>rY\j1q%w5 5=eLy8qFmqhH( K')Hwȁǽ6!/UQL@,nр Ƙ3gӠ Jx4E%9v5p3ID_.p ;s8HC%v.@#Xeܐ v7nҍ[~3X 6/~]8g{R8_jKtLf2Y !)ꪤI1<3K(#=1 r\ ^+=8W)u (X# f_ЂjLkyHrDfGϾrdMbSBuN۝tA:D8 }JXGS|C*0{H&K1%>2pw#jp@Py^wBب|ֈ%<HIM w LYU Qvh11낤IO eaK M\QZ)~ qN3WW<'Y+W}Jhm8^ !G3jVR>b,Q=:@ggbEfKحv~GBf1i}Ir፭stMC+C_U}Zw; K+2;(m7q1h?7}7Ҷ*uDQ5K158IosM>ue6QO:-v>hWw%$w5!E +BCtY8,{ؚorno8Kv!S!׼RG[phizH9GaH\u= :JBiTet$4nd î X  &NȿXvlN =n1/=Dw2wŁ M`_Mz+K+VO:>LZ6H̾6YSCtf7LȅH,++LOK&k9tϽbmg]@%SFXHBHW}xX]ztԳl:8"B#zj3dE5r`=Y'΢%Y]C >Aw!!QqbTB>?Kh}*c }e` M4Riܠ,y/ey;xv a*JtI.|IJ0_h֖usb y f,0e6%oTuϴ潐~DC@DڹNn,~$ !|ߥsl;Eh,5wA~v/t͠P^e@=n@ɥ* EBxfIveDRhrG gf)fAL4G>ȳphХdz%q sױlz]!KXjt[|u:I:>)D?\Kl>m7'j([VfnK՞k~aL b/H4ga:IEJ@nhRf`_MƠt6яb/NQ S=҇azm:[tuIz=xn'Э_]40g} sZKH 8}Fao[a >梭aGm9?zC_I+2gu&X3$ H VLK#F9lKHH?t|Q֛^-݅Zч1` "sp .Y[&zC!1œ/e6DѼڗDƭit"J !VȈ)y'E|m‹"PA֪M^!y%EFr tȎn9JẈ?2XrymЭnwosXmIuW\m5@QEV^m(Nuj~TT$s 0+%@MBƋ<]/E5kH?rTD(,,2`ߎ f]d x. - 2A;kJ:1:6ҁbS}i:T;aViи9÷!nN">JH_nL!aZ냙T;­.o<#~eQz*9YKe~)z8n gxrgJD2tզqkžjaY$t`@xOnpnK9Z:Փ56[[w H",&DT+K&7h=ΗF)1sI ћ sUsE-]yo. )d~fɽvoYscۀrW\тEr*f_AϢ)0z&◺Mq4jiu)@ s'q9Xk=}G=G!W bV%v83pK+{~]~+S71Ps _ON]ދPh̬"q 7!XlHr{,(HE6(-p$)H+K@sQd;a VqgRc }ܞ P30[%fj<@9rvMcmIԲi0Uta]D'NZEo[3llo J~XׇΘhM(Ѧ7x`j, O}Θee^< $Mx*`ͫy!zdCpL0 gJ\&]/*; dZY lA gt ޝ&61L;{H) K<Þ^-y }dwA\Ѱ>W7怠>-m&C)k+ζA $1LG,f: SXVDOw | $ݘD#)ݪzdE}]KƔ3T̼dv xOaz> jB- YQ[W9g[t-`b$[oCshG#[ċ7ƵibKdYeNj*v?%wJ|{v|, WaPxx;3qYoS>-* (l2 BeG" qccw(8pf_!y3^lܑClHIXH¯8Qj,NOxZH軉cqu|jTPkj ʏ ê>R ?T54$pW\[;PPRi&=cVT5t>4tЀ6WΔ[-%f?mɊ [40DMs\P2Mx]2hN ^!&_VO3 wҵչW%̡<]%EYD脚I3 {A! Ir07Ѭ.3TQ ͵N}5Ip&Ƽd'`@{^4uֺAyj]"g:gZSuVr%3= c.IӷkAOEY_o 95_.-}T8XkA6pwE'ݲ=%Dh2[dzi,MXHK6tˢ)kQG{e\YqP%HC ?-< E  GI8k0ϋ/an‰0ςr&9= E}W~kj wd6׵1T!0sҿ:s/S'!&gh\bޕ< GrtKy̔-O{q|5޺tɞF߃)0%1 +4H"vꉘBB& &-0xVhsVNFѠp\,3?/GUoGfbrS$@BŊ[?0FH3m2ق $_v=TA&]%oEs0$_"g¹YRE#tAl$~OG c n "M!< ҃fW$rW̌-] _CXdM*ܙqgJ&ӻAwb_rƪc 1ifDo-W rK\uvh.3F<+kFpB4Z)ړ5]MnHKt$o\0Xg IFESkw(s w#N/}sB6Uy"Gt fP7@")o^& ތ& kj:>qXYxK[em͐QDm+Cfv L$H : ;v,aIo\j+s{4 ntsgV>˃jUӅQ0rd4%%iDEϽO~ !d&/H R51,}OV#fÖuQ2.OղI*h]~v(]I֟/̪7#QE*Q z(BPlt WfS{: fm ̇fq),2]޴jjfS̭@Qy 'iW=JUn}"oT- WןXkoR` õRUN%M}(Sv"ѷn\ؐE3+:s{9VdoJEVWAWC7_%(s ~CJ]Z eq01 TisE#>!34R)45-<_,1 .SywiJ!H6`23v'0%24oPg} ᗒr_*Ai}+M:|l>CA'"ߜk0Y!2^ȹbk;vSw@}T6ХQV1FbMt$y8wLr)-C),u~eXJbYRMwcJHvȰ.&ЖF{LBq BW- !D#A45- ;fh;IGM8ԩo+FWfIAϦ}]iW J3BSC T񅑹:reqڵ[S|ObؗxGE٧ ApuО?dM5o۔@2_h ]26pjOz"̊SK7-YK.OM ^SrRWVh \,u~f]8|'ڔ+`Cs!+3›nhB xYp//ԍ"X šѥ^R;\1M;ʼn&>`R,DSѭ׹BGM"j?f0-`c1䬖f_j '>ῧ?g@~ ^PGiҪ@nZS0eEt%yiH &Q8\c~JV8xN١(ʧk2X:\1ܻ:hL8D.UW@x pTxiκFR:nfsTԧ?^1gڛc܀!aispiPn*+ml0ۨNuu/2iݙO߄2+Hn%OUc2&XSYx(JTgucA47 u4ЯέbcmZ\pgs.+ewsu%zf_6|u@$TTQu weS %KE曯 %x=#7$>y _}"qYoj;9#ڡ,<_ pf7+6w5 4]K.OW.|'bח \Z=QZ ԙ)ZP."sr jEL>MҔ.ӯh}ڙ&wMǦP5*hN(0}D,STq6B{2-$u泧;2_FnBszdv%)+=&zMzT!G^Q[▟~s7y7oqgB鄄θI;A ?|nN0 dLJyܠ/v Y6K7қZLHFh\rQ/@Yә"7j//|޹7dM< hT>[k97;l/5u: u1B@,`ϑ/爋)vnSrcٙ{ .-H Lg̯ձ?J&EѢWVt,6_>rL&6?rT&|VLʞ<}(}[vh[ƾ'J|(7q͒Y4Avֈ^6;" ?Vw8߰S:+q_~ ?dKs:hǵɝfIUA}^׺`Si+f~pBhÕF c7c$E WDp0w|0ZFG2`!+mHyx/Ra8}+p\o~1HӜfx%X`yWШ[)cFnm MabT=g15m^Vwu~0?;+ƲuV Ts'qq[ׅRDd]k*6rA$lg=1˔;4rUw!qKlθAm3-E€˛3.hHE ]=  E!rgp"[A8D'=P7 M+}#X|M 'pԼ4 6ɋIW.>rtEj\8Jm-EC|B6V\zCV`9#X!"6qfe 5cX  N^D&^$I6ɠ\Cc)d0 U,_k: !FA"P,j}(ԫ P[eYW$rQޘzGc5( J(O9hBs67pbͤoj]1$3}>wUn@D!j ֛s^H璶fpwBtӀmΑ<_oRݼk_Lͅ[л%s'U[;zK]L-40>+HSޙ@ΧsQy/=ht+2ic :^4xÅ; Qn M[ #{П4R="To:Ґ ʪh5ҖxN,5ǘ:4Hr/z ~[gmKjTb r[koZTמ$#u(yA! "Xyp͹]Uə#^ ~8'%*X+Ѻ䈂X9A5=轢ъry"Es@x&PO+ uZNMVv& KK,ѩaFfQ n8qŞэ#=h [Ϳ3|p@gl[)[iܪOBX#&_Y 'T~8V>sK}"`vʑ(Qqd}8ÁltJp\BW;8~ -YUڔlJ~5!ϚM41q=ܷ ~?4XC12׽͵D6#%:9K>㬓@RFB+}\9͆5!hzx 9CòveU<bm%|st =j-feoRQ-~,}|MlŠhS EaQ+agO=V֗lL0"I 1#<:ҊM鞎J?ݜvi$^",,:U-MT8aF!7 0m)1uƃ:NFhy-{&pԥ\uycNBh[TF8(3~V2FP9J+w}OTqoc ^9#7qrwpHՕQ[vx|ô?Rq&j7Q p905mW@Epbo(eV_gK3*03^ ;GH;Nnu0sZ8% jJJ=+Ge"h(0d{6ìSe)AH ٿ1 29TU;}TE>}+!_`9^~ě kU𪧗ϰ*&pZf$wB?O]wW!Z9cQu(ott8Ss>ŨEL8-RL_A{TzV[)st3-q!hD(QhnnM=$YGowCoᐾok 29 g3A&s~4$ tY-̑{h#+2:XNalH7^`[ɰ{g2bYeHU҄A.v)ƀU7\l Gg!WFΦܵa.:Q'Ȇ^"Ҍ ̣BOs<6 oIr-5m]$#Y[fvJV_R;vw əuq=j"Ql@&GTa_bhn P}o `:QK, J4aZ2'=?C_:`%x"p0!yա8Qs\ZZAcq-C}&}Qp8^YQ8X dӒ/z lfnSe "2 ܾa|rWLA5ַ/DNX[8jR/˵#G|t70ͧm< i3aOZ~tۏ 搌>М ?jm75$f^,hl(հ0Mk;z$# 3Fo^Iv` 3uCc2=r:0sT+ h9`w)g;p#kyz*U;8m&861,5I8y}-T0o,ub*"lci 3->g$@ɰ^.,f+Ұ{V![MMСZ7}/VO@P..]cun{ $BHgkħzU?=W@A OYx媭Ǵ~nQ/np?1! @Uab c_o҄nN:U^n)I(U))Bҧxj9YfsAIQ1^>6ɋԬBd\#[ G!)fH%C&Q!) u7яގUxr~cL|x&\ <&݃*lѥDv [t߫7mP'jUF,8͗^>teoiXA(4?2:lEb-LzoIXv H%<ƺ)/t/ }}2>ϥ"+Ҡ+g X>it\&O|[ PcsIK`ÕS]#T9wE` iW;}}OeԖR%H٪~fTYw7>C`-L6Xm*lxMF30-_QhPPquCL8Y v#A\ lj/F'Mf Gx˶bŤ+G¤m3~0xթ˭zȖJ+iJ.Uw(V(%7{8>ZnA8rk!\{(A]jpF` R<Ց7r &yYi?Px՛9JMU`MR)vSz%=ˍxʋgVBꐈEG\1hqC+x'?mxnXTJg2Ԡ'ݩL0[[L+b7u&V:Ъ8Ȁ5~h,<ݷ^- լX#3ʈ2S1(q-2=G#7T1$(\+4qhCBPzד gC/0,^yT'㦔G_ܒYC kU3L2o%e7Exۊ YV ihOekݝK]w¨Θsiy}tsBh@d3;f&U4U;&2+B/w焆@%Me~fQjp!ݴGG2 *\$`1=ؐ, vfDQn^3.v ;N M$y05@W"ɵhlqoMm)_A"NApp8PZ,#D-JW:))Akb5TtF2KG#55&(Tzwjޖ 6R ,wN,G+2'e`؀~<ƓQqsHBA (7y~FY7_QpO.tE%{xr0KfFDix1>Jsk 7&LEp`Mʉշ%E89cGA8 G:-kx=I%.*Ǝ= ;weZXcϑáAyOtx+5PyWX1SǺV>lIr"Un YOmG~cZC]$?+tjRRAH.{Ώ\>daӡD?n8*rڙ? !2eMˮ^/ 3 Bı\󧲴M2݅Qg/hTPwtP$)wNu_0epOBlo= Eph/d@㚳5n9/eVb3g̴ƿ [7QO'zΟcDvUߥ$Aԫ Pdn:s7 $ fV6u}:Pԣ  1[)gw6_-pL5͗ "nHyI8?v@peGxhd$ /OD +q ;"8~5NgV*l =:m|VLH`f 0xF[!'#U1!7$Rj7S=H3hl327k,rkEJaXgZ'C#~~rJwT`{Edz7! edMZ_w2 #i%V':y_l(!3TOz*xJs8XA#ܦ &y\sG87:N T/-L#O~aM*2OtY!'"&|0k@.!F̣+paUҥv/1jAj?&:VxĩQTgKPQ> ߇)sTmbMz-F 1(XW`D\' ˴@Ѱz~N:8D|vY+Jow&CN֜|?8ptU $FH-zo@|Y:#6Gm*9%?jK:T̂5W5D'H^[Nm*:zz)O& h1]JoVNq[IE{;]|`(lVfxx+xº-ތ \ܔ+E6И80RZ#Nb*NGxy{? 5S-bQyEc?,iؚfyE}~,6IS[^dQtlR, 3äo6iEGYh/_]A< py'=PY|#Vy9K׷cNJ-t>f9BQWZ{p Y3{Q}6k ^OʉPY\҉𼭵*4HLI`c5 (N\c%1FXFV7tD/aJۏ|@`~w1q)vʼnŐ;eZL\q(uj, m:Ru8 ;e([@SbEk|{}3CɈNß~+PeA˻D5`ӀsMA@z WVxQz0$Kddh*{sae9cU'.  =BZw!hv|Wh愬*ZΙ5*WK Q^qEgdV{ (4r^FH+_m4yūEȶ߽ߩv+=ͳ(=hv*?߷?sp-Һ6kt.%N;xoC C }W ^9}"AqI9xKv/Dmt3(Ov:pQK ǤQ+i6ZKS"lte7Jdy9<aӭ)$0BEpnП)ްng%?l(0MV1-︀yg HJP3"r2iHy+NÎc_o\/ nA?")d7NsG]@G()&|5A#ab1C60wɭ<,o8r5'nV̺v'2Z/2:B XǢr:CաSoqzeeqʜ O4Ұ(ZR3#U07P17eiϽ(~}D- xf7I c 4 CN$Y6sbtakX€#nLץ@!Y5{IqHWSvx!`WFVBk筲BypFԅlĿe+?[2,Nϕ ~`:csop#2m>ͷ ?Ԍb~DILG4Nɹj`'?MYre(|Xv/tNP}@oҿ529- r\痩\M ˟+*E?@SjJ^oJ\j9XDFv>vj*_ܷ/0+3J2;y>:|T@S&{ؐvo(Y[>nj_*{7_0RƄ&+uN3F(|9$"Ghyd/av0btt`;xOJO¢O;(Ǟ'|\c|^Ll{kzu@1Ro69UvSLն)9d n~[uJok"H"]İ9ͯhtK\]$6 _X_E卍a=+*Vn xL o- q$3uhbN).&?leN9yDIdm:rL"oXK2} " M&*]`~AF[y.K,GdS+d}byD28T# Y 1:_1Fd. s1T'ٓX%fhfHtX]h/?K 9xu,k->Dk7KFD 2k|6в׻~ƣq =~D%js.;dj56: ;KBNsGcd+ Zh 8fӌa;ł1;&DWN.ȜDxbI,߻2;q!3m{\TcÇ,T4G!8KX\&sgack/zGz"5dcق5# ٢U5らSleR.6?S5ْU6IagCTrozwCVً.^X2>=*ꫬ/zOQIŷY^YV_=d%&Xt|?{{%Tb#z85B JIy<q0+dP5FU*N[z=x*YNZ3ݸǘCiKWQ1GE;/d:5\P3k*}+DC"Aܓ5 2HSS |G!ρ5u!cT'|޵k;}T A'+u@0'FbXSE*t^ t0 g?Kda!+uoUO1 cBѸS2&iK+,;+@%BNE$]z4קp.%UNלpD*X'704hѽȡ@*EuûM2KŅNwN1Ef%Cq9V| ]f ;t̸"GZ?+U{Ip8d(;cӺ2Aˏs>2lSJ*QNg԰:g%V/5`lq71TBGwUN'Bdq`#zam}0W[dG JW/R[JWeL3a"Ŀ-\a<_0;SSJ}P:ݛݺ_5c/]l/߷p`#x`wnsΡ[nl_D:e=q󯏚}O0K<_گ0AD=#{Q0RQexs[UODz$GUV]'/a 2[6E8e{12WF(r!3Ej8wM2#wczćMĚ]ndJGu ЌCc1siR65D6x7ԃ=$~Ve(yk%hl0%δX(rNW|͟:Ùb?*"4)k -fE( 9TYr`ezr(9ї&&x[] . ;H5@Ln'%@M`1XEwٵ٫AJ#IĪ=\No#6n%_h]k ?JaKhie Wf vCjB}UX;S٫T UV'ř; Zl~ I?cH*NmGpɜ}:9$:@v(݊>$iSXI$*77;*6wЎ &Cx n."Emvt)$7բv.vQS˭p#SlIihWN*ֿT#`0PTrd_l?9" !59AGA.sK I]EzA6:8vp׳~)LS^يc8[0VWr;hq™u6:wQ`&Ԉ7j]Q1]ks̊$;({/bhf@̭^:\e{DP h%Xl!(KJԳqokg{ԝɥ+>I.2D],\ɰ#M=v`2shj!`7TB%wު| ΑQ+pn Z qC$ w+Q}=iI$qf+JH L_>cUI&Yv+p).<Z>,OgkȥW)T}1D(5ar"y ;Ӕ1S v $+9vDr_v=P1=G,|`m0YiF.gM\eZ~y)%z/- FuEе`xW4 P7kC=xOڱBM+ fd]S_BJz[erf0'؁tF4EگւLCnh4NP17dSIĺҷ^^mz;.Z^z0+̅eicοsE[N 㹸qi!AMx;>(RC|"I_rH%P9c5ӆGsaMʂ(p?>jW_,W KJ'%"Tl~䟯r~Թb1UCp. |C2JCF+`J`IJQgW)E٩7<>Wxl_iB,Q7]Ul6/ԭ4<X]yax|&J.ϻp )z@J67ked*R#:>id~?Me'wʓao2-g|䷂XUk,.q `jƢ-1И35K%vG\CKgZ9>״Ox- R9[$dev#ǹ<;?ыz|FNGt#]SRAMK|5e[n ~-yT"fx1VyJf_ǐfw.80p& mc OMR [dHgj+mb! abfd؍"Z2SF u3WU^@.޼{!{ ;(a! sKC.M frsLMڒeY1v-\>J nlZi[fyB,MZC}}E!>zӆ2]7M̈G.: G ̻}|QpE~y\@ =»!SmHy 6 IGJiSl3!ݘ7Q"!>-6 05[rx]7&, j%u`3Aά:ǍBp{+/;G:{^yIĢgo) ua2KB,Ua7lmu7wyaRMhWe~ Z_Mͺ˴}rNA4eկp|ң&j>m _-6a$5[%a˩hDUibr0JBr*O&QMo"F4}?@TbB;d'3-CŴ gR3T$^OzVot׵֌z'Ubg0As]7,( W%&d~k1/1/MCt.3툞1N" ւY Ěض:6֭XeL z_?&!.10\DASpD@MR.&)^~ni縍ۀ:lfԝ93v@sϏ}.qob/H; Az їSk6o`綸X6>3ݷӂRC3WFɀ4Tm.ZbZBk4j٦6m]ĬP;UX 6|"8弝pA$gO5[EpO$9wЖ[Mvf;x+_GUa-K sGߡ q43dGc|8u8%ޛS%3 1Sͳ;1'2N [)İK@jZU8@m$п(ޭbu*5$#}.9-X( )Vn$(aiKHI ;:U!LYɠi@wP;(K[zwB7coz'^\Hmuj\>}C#bNt$tA>flSHs vJ(l H(Oʞ;rpQ_!f ~UQ*TKE|f1KyX46%2|e!J3œׅnG̒ ~=- )sZq rn=^* .Y˲oз34`sWHRhhA8O,gp" _'[!T1ݏgC)V)Vv_w[H忓dMC-'zVxl +`Gs2 ܌v5aPq} #<_4 䦧^Nz\IW .=+t*W]CHԶ?C MPâ"[t{R>8H\\gC%Wi?âJAED^sy˕ :5p'3`$b7 p^*s-V$2k+[(xn7SEpDN#t& Ny?Td}/3޼_̨Jl +ѬcAT&RyBd!~NiDiBS&|6Hx,(qeZvZz .UzZG.HW '$A(}h޺`UF&[yd?+6>TsP]vZ$d+@GVq {Dz$/D.X{ؼ*`*>wO?ZY5jzCG [e~ `UE,q,+j!pһ!:MYg[ 33Bj>O9̩ 94]`;U&5nmEc9x@a/n>|-p%}gZ[!qtz?M~Zo!ڱg㉆S¡8<_W-2h\,4}` j Zyѹ>:K>58' XHE~V>xȌ c Dc?9q[Vxw>Z  4uCLe7Pi*^,H_k<]Ê ' EnK"a TB ׿e4@^]htFgo $`kC^<%9P*XO6jfOEG(dK7;չ ;L20K~+mj D '065g]d^{z6|sVX׬.;ˏq4X "+Hm#S;{I>Jz֡ OԜHCpd"u?:7W aQU!u()1:"Fm3iYΞ $gn qqĬev?ųHa@[SyyΖ(:K)g@mݣW?w3:^"夑\8}ͮk8ɢ!%ZKH$HCXEK=TQ0*.k~xȩ6Kу!o20҄Hc]w I^m uc#Ŷ^^x @7BɡmwCIR=<*ic~gcglrX߇Ճ'KTRk4n7f[Evz;&4:<8(~tzzmZ-$}\ZSGNt {Į|ʡvp>gn^5HHVOtr{ִ XW'(=9a 2m5pGIP3Ǎd Lu0a0 p,p(LMsfͫc^c@l|[ŊlzJ%~gDv z z A&ԧm sPcI,Vn腴qզYjb[BXFPW>yT H= nS=Hҧyv BǴ^D 䆤?,e;4qi5cz4:!0-*,[_z\_MG؀OozKP,7;4ehrD|e+")!-.@L.q|fŔ)~5ai󮦜]^˦"8m^-dW=X(3Ggrba7M9iޭmLF/kX!6Yq'<ےf3W?ÿߜmxit++^XfX' w$^0o>"{wmOƙysF \rȒ509D\1^ljBwN~y|ָ5Ø3l\s:;poA~erg>K`.k ?Zg'=!TT%"O8.r { r&K;f M >=RHO鏵EbXTZJ9߱XnRZ*%kR$NɶxwHJ^BX|1>J24U4 MAy3Uʒ!^ةv6x @y>~@3a"gQ4@i}j"7*/O![GDk" (؋fɫy YpN VqNZ*? [ffI }˭ DO14td@CdէwlXTʴ2hװ·qc_ڸ J-<(RmㅓHg7و:tqI9~73PR׺2(ZPɱLsw{|1We7^į:Hx]D`b9eѱn?k%cuskc@m}̟"p6y| R`]7s@Fs~QOu=)fKwjd1Vyp$ERIJ1D=.aha~U39ѯ$B P[DHq8%s5f.EYĞOQU6%7MI[a`p% Np4aHov@%9 /8)f+qfϫWn`<Mw]O[Ѿ[n!O`)2yz˷$:q\'2dG -Dy!2=K:A:F R;(9|byҁaf|C}r߾ _a[ c X\HJ:K3k!G#1n#R84߆7WrнE*)K;=}u-AǪiH[pݣȭY@nRhIyI`BfYVhF )vS{jV?X{ȠMYp+VGn6F -" gECoiarS-5!̕l{7tFJIlw t&A_a&j݋8n?{38splr f)scT5aQHK3u9=n6>3lp ͜o8`5 KqIȁ+4Y ti-0m1c1lRTConED6cݥHlBy\z-QQnUvwE3ti "xՁ.,*kW_PL>[ A8)Ը)&TL$hcqH/q({pT!8PNV2̂lmB$LC)c/2EKj$jwl?bwfPW6|ߕ.[ hn_;v\:+ܟ,_jB3׿`L[NIfc*=><^  ."]1jP Owπwm3?YRN%8#PD\`bSn1N-1NJ#X8~D7j'DYǣdM"D_qmad`-ZR㮍xI2/i~m`Ju/Wp ?1EI"oZz%Kf\Lq̀a˭|(H2uG<QuZnY:~קY-y3J*u!V_w!Χ_5 EV!^(oXk ~ށxN/u.;)02˩2}_Cq0 {,Kvyf D#)rrf刡\;H |MSI7 PǕgwecac ,W'7+:2I" [}3YTo 41hmnHca V:!.NozG?:,o]CrrPE*Ym2l\Ӓ_]Gs (OXJ\ 缚 jh؛Z^퓲_\t vD,*jr|li`zٕΒnjT^ayޝHP!SvC6 ֔ZѬ`:'m` bbJϲyn4Y߽יXw=U([>ϸ6(ΈsaY2{-Ał<[4Џ0b@_2ϻ֚0Hc$B@#'QU\3CUAk-\ À%ik;ԩvMg8dKn%`MqwvD7n"s!0 0E"ecalQ?燳T$?N3yKn8ī^Ƭbt|[9Gd $-5ų $L^3G]2k^אD,b =s-@X:̬9XQJ,=9dKHZEɎ&B­dHРŌH[/s59D8*{'ksaJ5}\'U}.Ioaߓ#PGC[T.L+w[O~;I?GhTcp0ȧVا*_D%N}EJbc|ҽW +tM #Ihڔ-(86`XP;MP3BF;fVUYl j0>%ʈ,3-o@E^ apU pW(>ig7`Rq0ǂ Eg57vf\L1 `|=mKZ!k$XO4A$x]gSt1(HU4Glȫ#?`?wg KY_9i">-BvʙS9K\6q}2\7s/tik\hCBH]&io1fqRSu9 ֛Kua-uiy#\Vy-^U>d7]v ؏ jǻڜNQv~ˠv_q N/E!ft_ufW8E!%/1n޴䳍n?0s9G@2 )s (-r%9m_;+|l_OLGP>ReAakFxlu{:nT'׺{W"5įRf : cneE+wT>%ƴH1ruq8,v8^o: ]]'R =@D*74V㽣`)t=fn =Tr#K'f效ΎqŹ6?Ern~ɵ ۃ=[.GjCSsޠb} U0\צD땼AL˅SMK5*15}qے%c'H*Z9hc޸\yԒ r3S_`"[7k[x-,bUۘ+&=JLd|09h9MrO'f&\ K\n=|+|i* !k{M J/(܅H\=V.ZLgmR]98ݠjyz9I [m+g5z^: {o4%8. @iV4AdŔ-9W*q>qԑTafCT'Vr7^qvSbj7UcPoG#vɾdjW]Y`_"~m{&v9|G;/?jc˩/^ktO}r) Q<|U@I1)ڷzAeFy_gdS@^ۈs:JZ5$U1^Kg_ș6>x)?mB-ki%Wӣ)>0ϩqu \'>g-= k'K )"ۑjsi-et%]o+AtRl2Tu5j.Pl)*jgX:Nmc[10NU)i q|3\i`r~4<(_:2\ݟud>43*~z-Xni*}N~_ьt+Y:kKԩU#߸o/`AD:弯n8'|[!}憧 [QᒺxHH*0qW}&vq;:J 8}rcϾm^(e](h29*`hs*.- Az#q=j69uJ^'B##858#"0`P%߀Ae^ksH2deLJF 'ѿu~h|Ν䊮+Cr@%7Txo:Ϝvj-q7Ǘ3-Ic;e #Pi\v&*)$;D}NvX|o=;1g.}N}ڏ8`WLo,DPmu >񋓘{$f_SEisPm9[;+ 9)rx82DqOjn UBud"* RBRHS2T +p#Fc\=Dy_yqBj>ޙ}_6>ZW}Ⱥ-^V'fH_0C1u``<ͽ3v`B^BMValo_j@Lg,̐yqV0ҟϑE2@` G\Y}*a j̤?kTFvWN}Kcb41]d&̊prw.ݣM5U&Q!M( o2[t X uE%G6_8łBD6 Gw)BX$~"\F8)}lE3O>Z=3&{'GDso[8H߸? kMN*KHEs4s_hhaGkL8We+}qyTAkd=p[zA]R2\Ɋũq Nc4 WW6cM2Ĵe?'uFPK 2|!c* jg*7xg+ ӡH o5&cFO[z`oNyu/eTtdžI1v*mz{I$4?9r/( 9ӠRs$J[ <)@vcUQC)LRmW(=XQLlSe>C|V25ŖNmvJ}~QE`gMgša[Ђ33Nv'3441 ӝVn5qc͂ .ά &> xV?FfBgmo9ЏWV@`KJU^OMn{lT Ɛ*8PLtQ /I.h 0+YG/4qzՕXb-+AENSo,{OdkEg=>Zٖb۾BczOpӔg*qzFMGjR%rR>.vB[SD/J1wv(Y֞d: 51[2 sΖ:͖ADAI%ۋhyvkɩ ث[]s<@x(CG $V -0,XU1FJ'[G:&CFmb3'u?R޲fVu%vHptPK'a%yB&nh}l?cca>+ٹ+aFU>t.{N-Upiq㌋^]̥T>vagZD 娟X+*3 0}NjTx$h&Rv^Pӵe{H>^x5E"ܷ8 vzJ%nZt'#B%@~-xϚv)n]b#zyF\WE">BT]V yg /T1 $틟١kC#0FE!-ҫ K29hI&[R20EϹpG$P)$xȹ- WqtR){j+fTtM,χ U"3VŒNHq&enK.DdqVoc9´Y1eդ]sW4p(jEA]|s ”(\$3}+pݧ̪$V"ej0qc{w A 9x%'Y KT~^eMzp;k,d%)Ilpci՗6I|F/Y9 xfaX2fL΋\pP#Jtg/hkY038) cr:헅mn_sx MKN"ɏVJx@wlHBeW=ҕk)MWuib`$fp=yF _ tfjN*}OA)Zĉq\Iy  K @F]$ XUQ!FȘO=2Mz2D ~pc<.ben>Y9H]f3kppOq س\Se,<.ROy:-kIx%!K MJl\VP_ E*wNv؃5څ(@IЄDдז;G[qW8lەD8]Gf ܼ+LĒY9-㝟O#V"lnvHZ 9O~`mYm}0!1&ǶS\߮jlj)uH+du8E>V-=ȞkX |_ k JL`D?Td_7q"9嬗Ų=so7`0I{ q{ZaSe! t3[4fk=#q e1nkX ,_#p%&XyJY}L?/75|&C^S!Obp {d/5aUϊW $Tlv|^S[OD1_Ȯ5OApbϡ 旾߆+85#湲"8'b z٪ @ ^%όp,ndUy! g$NauDrS(vBnqA/x&dL^%la߂i#HhaL[lw-CUqWrWn}V\٠ hƤ xI]/TDcN\#qӔwvX"  NsΊ'f;h$_}jw}賍FQA?dktpKQqa5E\UG~ρgA-*JNe ;r|t߸”x)neJ(8iBeq3!A+?U1CvA\-4q^IM-rs_7p rL"s0`ʊ^j*܍c#9%IFFtX  TY_ \z/d+ٹ`3>Ղ8?#&'XƀO/ΓPoc _DŽ|ѱ)ai2 xxFb>&"z dA%G5B.ƾ!*_ eHC'b4__UqKHk*8@,YzNsb KFzpU.f**^ ~+Yu@YY8?`i_OO 8<!xTpo=Vtǃa&GKj@:m\4DQ;%!.Ta #|_h7l{֭61u<A&W''E q_^ ~#bو=6dm++w7k[u2t蔠HcY}?j_z)g[&H#8oZpƓb}wx[]1(6f~ ez<6I7@L-ZyElz٭$6b9^2̹B"։h~BԺ" S7 ֐QjlVfQ y0d4k>tmoH㊇ӭ>|}IH+"sc,*7FZ lY=j|ǹröleȱ=`q7Hni:xivͰ.6%V9Q`+}Wb*yFkЋķ=/LQ~ kw\̸tP_}K>D f|pL S]){$/{r?'1aJXVBJއ2[@y(L1u%3-,OC\\@Pk5 D~4~OyM b{Ԓׄ.h-35(zfxAAj |3͂Υ %( #CũiJK9SA\uo$]ޗ=Fk0O#u*)&i.X"`b'1¯q-BZn[V*",Ⱥw[)A\x&|6Wu %GeUo6K|ٸzq{@;qjot\$ͩdsir?Kw5uQP`hV~$jm .W|$ZlLۯnIj1҇W(8^Mkog+Lȼ#5r t' dȝ \lGk} f:Ad:tňv#[GD ֳ^^nCABM?Z{_$.=9Ԗ;uĔjfM^B*ۋ10C?)~-jNx^ȐD~d9Wk/q/`7ϽSD 傣ԉq岒ۄu隺tWB{ @V>&lgGH=}_w+pgvnv T⡅U:KSm}&X߯q@9L2 MN( bo, 4a's ޒ쟠ԕ3nԍ70XE~kNal!Mh&vqm'Om8ƫU kj5=t ^),ۦ&%8U&ad ]oM 08Z,ExSfT{ [alX܆cRBq--z "\Iz-*$pSN=N\@q|'.G){L+)ʶaOC8+$m>ԖD:}7BTC8vwD^r&QMr '%U$ 0]!3G}Rl"Ǖ{K1em40vlw.^a17*+Mfq?e1擖s tn7@*giZ{yScGS)Z<=Mq`h#l4S8Ve<ڨifT\|n tv71 QRAۀt.anA" [堶QkՍ؂ZI~%]ųi4c RKv`H6Z@Z%N eyҊ]sD:iW4Z|nLFEA +DyI1daWA-P#@帡 1^W@ yeDlݮNc.&wWiܾX̵Љ`K.FYmÕ0UHe_׵o8!!:]ZASdsG*~d"agA3p#*}mT5&l[3Fn$Rwtdc_ aZs #]p>P9E:$!O{Բy( L.g02,{ZTZ!U_1gAǀ;ū>>$}qHt gןCʶ(V80qܗvM#HZ%yT5tVtߓŽxy 0;:Pm1a4_iҬƤFsu_qq<86Qf0u}E?=&OaN[cLf;w`\XjV׼ۘBn+5&΢} f2ԛJ-O&Cod/@u&h~ @JW-E88-;vVembk)Ij$Յ}U#,БeQB96\TL"5QR~Kf@eޕH0w][10#TAS$d k\&OCY.-'NƸm,4ҫډn4{c/-Σ-|@5W򾙯@ }۷{WcjC <"J)i.0ָưSgaU\m[ʿo&"Y}-d9*j`=O5}yP՜_LԾLJCYXe-4{>Z_nhX5'Qp Mzm <Kn0״R65C6I@8:o}Ō'?cvbQoxq${xhL((8d5$r3YnR2Y]@; ՅFZtjB*ȈXu~Re[E~/xћ36&^?L"mЏQ?G)"irNK|.4[|5`tdo?!Sh }93F&r?okm$$t]v*PMez,c\t6 G^~n%M*2\; fo~GB['7dO'q,8F[ l`q ?xB7s0nFB.USB"{el+yQ]`%v2~4ZazRYW|GO=x0G;I,_NC~;\'oǦ/?gsnVKZXwI%p u] ?3p%c\U'ܡᄂ)5ɣ~JwX%.[ Mvg]!qeWkVSCd2-NddQ%۳xlr{~Stdbܪtaipe߯KD)K߶NV!>|+ 4HBE4S֌quۥ^u ֎tx.jm5,^C!/XE)D1EW-Vpdr+9Ξ.ŨiGbzAP+^{㞆 pC)wG +}n}]y^u~=s~Ú?(i-숔(qy#E=ǁ,x&m,3W T"RP6i-d8yaU>)f ݥV`FDHcͿNܥ,vϢR6)v9KH+͸ӭNGˢK1)f!yRXP;SP) ܞ6n[6R%ܳ}_Kv)i(1$  JRGķ&賈EnuGX*wk4&g-~TM-0T9 "'0Tj}ɝjiLjcLy; jq? jr L-kb+#Pޟ95\Kk,ݵ!Gtw6VK1`F Bg (дPs6d NԞ& HB|, z%izUeh?!mmD fr)>k*7F$SrA)V:xYhhYLXξ4G8f+CW Z(L oTTjV9|ЦՇj ʒS"UY'6'Q8*oA`-!U8)cE60$]^//K,=EBfj󡆉ER=yfEkL3v8XRM8er%];IPV]Ru9!7F)\ByQi7H~~5˕!6^ˮI &1dsd0ڴ>zsp$ʞ9 tӕIQR/އv&o3[ؓ/<X0 Wbb8Y ]zUotϴ"!mHt6C)U f6DEkv݇!i` E,?h>35 w.!_0t A$sxD;bL |8&wg!/X}~wE, j2u죄՚-4n@].er G }`U-}+_:W L>aY;݈bm -˩ZD xb^qZI o Kܞ繎Қёz~OsVOT7b8g!S\T|8AxN[lx?ޛ컊n?~x{pTk78sl\^59,# (;rSLG==vxUJ}"/^!EpD،k9E [$v^}>J -7{FXdI\q :W뻠?GZlϽKscQq};ygPjyF'zGWέAEHIVŇefu_jic#( BL~G7$8:K;kE[ *? tyY&Rެh+ӿBB/kǥz-柷bϒ-aRtB}&k&דzF'>L) wUσGy;SEd^ڰsƚ%y6A wS)`t,=Ֆt `k/Zwϝg!\M[uXίC*QW6Nx-K [JR( {(C={a,w/-h]~(G䜱$!5@x~X`@';DunVtCq]lό'Vhj[<9 Ș!UJI(ؤjtO#;'n#ؒz8[sdLh1|:.Mo]dЯTao*'!r /dEٌSa{,8Rcp^ Wy+ z\vފk!^L.9l9Z!Rn2vɻ a3Ac_"+3;<,9sE=پ9Q.^Xg)T}uͽE">h5@̓Cs(fP5N&Vɸ$6tgį‹#Uǭ}}v `+v5ȷ&~+2,CX˒taW@m&Xog*01@7F=Xn<+GZTLWPaѴO.WcTDF T\BRK߸ꙍ`iLͬk.MG<#M{|CKS;8gӋAr@ñ6bCߩmDT>Qh/C(r)P#֦u/{Qٙ־u~4ץVQݽYnO:a?I鞹jt7pFh耗Q"İ,8>/)d/Q_7(GctDxϦp"N>Kk["A#*KQ.=LZxfjg5Břa*휼p(Ȳ׃x4?rʨ(CIˆ3;5 #yVcR)22xSQ a< yj#'dIJkO^jkit{=O$RՒ~J!jmUt]8M]O~fY0mg"U8-쑅OmQrHnHŒ '){:k~A)M?7r>3wN`DqCG`S‹3*yCcO.W4(@`oTRQu_`yPZ.8,o7:flHu_k|T?Qb۬(7ǚ:\t#DhjMdu1"Ž.TyxqmDߩ77F m`Xp,/ҋgsvA (okER Pl+-PsUu+zK{2f4se5wJ'= .w"oOxYpEЫp^lq|]N|E+HS$8Sץn{7~$5ś`O5_&}Hwб܏٠4阉éW呓W*@=ȑT:n4w4Ϧ˩V+ 1nm,%Qdy['4Œ||]T+jSt #627(iFRZ`Z=?}d㲾n#D]HBsm5zmƩg;q=Q˸7AhG {͐cOTp@1I%1f\F<'Ȥ*C"/TBֽNx\l–z '&owb(<]%n>}/%2WuQ #rghTҮZhԻ{ME:rWRQv/kQցX9NPЏiLǔy;q$Wd% 8 G])!6q7pQZ hW~wI)1 N~n<5s(H:]|JG@rU@ 9Ocx0kGP3j+ܬ9! _+8|_Oj} =8rC5Y)" 6Q[KA.^ N_40 Ԅn.lo1ahdm61bכS\GvX#"wf-Xb?\)'}g $Gk槦4HI\+@x#s '@܇xjIfu/>T>vi' lcbkc_vzQĴ ٨o_{LlOZAhVPDQ#*ކ6^)[:n9[m@Q~,?ygToa=>' }]2osTmd5̯nƱZ8T2_eru{UDzJ|4Kr{re0=.K2I}ywƹmՉ{!hD*i?8A ^qjgCZR>Y @}3L&p9/e<Τeҍ u*N [3oZ/dJn>uEyYϽs˷DUoZ+HÂVahSm+} %YR?/lo{_A%mJנ ‡8^%<v,~jYF RUQTױmAƿ&Od'߿D?Dzp#уR>XdY,bSu ]0bSZǎ T9ҀZٌ%i#ji*DbKJ ~hQ{((gti^^5ӫ1A=Ci%#&Uד/ "q37~ͭQ齣ԩϰFGi`GBdYZ%)W3:`ȭ3 ^MvhD#B\Aͣ=581d%i}YG?frgtZvN{pU} WK}EJOviQi=ղsM3TvB,Ww.Km )ͰbNoRjA|\E_(\qw$Ə$4CV~ma g#|f,8w7kQ{k>G i%[l+[dS 0T8zEɜ7g#AeH=&'_͎f8ܑ3`@hB'C?wUfwоJ 4m Dgkl5\lqyd.MѾhOS8Sz* OljQaKU uqMOհnz }NB.}idۻ$ZdGcqIѺ3$գ"l5~l6ˍݥsn`/7QB"q.PdB=^j=/-C Jx8nX\ZzvOڊQtw @u9_28L~M|ۙǗWlS&mq7d`$Ʌe}P]RDK}J3ZX񟂲o'1:ڛ Q]飌H֬Z<*MT=ȕ<ɚkW:آ}-:7R[Z1 5wZ$$VC<+"lcKT xSE&4@&qͣ95L\lhdR)܇4aMu2b ߪSVV!f{JP\[=d#A^βN8?qlę7B}!|ְkJ~US@&*KUmS[4G]A`u=+vY2ѝov߻ *.q*Sq喷x ?9(!X|goZWߡ7`Y$tBt۝ z oݜ<3yhxi6&6t-B`BBNXX5w94A@tZxsg&tg+0#ª|;8_\WD?Q.;<:3 |l"/mdpKD5ʸNDHCViX桻b) ,IXYhwʱљSSdr RK\zFӱMLS j\+ġ;<f_W+B*6z}&fM" d_qH{p6DBMMwR*5eOM|CREWC ؙl! vFhӥL+|g4ܷ6(wN :X<"8ab١>V|l~B\$zV(rBVP>E0idfK ^vp:_o3+2qYl asXg-K qJOry-a {ncp|lgگB6XVʮL QY%erx m!0Zi\< Q*;.gY-\n'4E%{l݊ 'kT~f͓14F@N?QnLo9*iHtaiۘ9fY0eAN1'fHU#/Xrc|Y1fa&P9Z1e9p"N=|gSig%bIW1ITAZ#!.=!%x7ipq&z^;c|1J/,]{;VlPysdsTi}vW+]IU,1 -h  +Eo?$hn*=jM(\?>p)?~($@L%P1$Sq:orZ}^lB7VH*Rb+S:{ŦOt'hM*+֛4}'`)(n=,=5YDc:eY<yEkH ao995iV{77w\[_e>:ᠩ3@L P"^F 9L^-n(YI e`Etiu%xݗjpY1#90EGyC@3RoY}puPޱh3=j9F0ͣpBdVX4 TQ[jRpTL1蘵Rx08Ee^OfPvz9:'CDC&,N UEh_6qHwzz#\l~Ǩ9v5'%ǝdםĐSn Β`4vJZt-M٤+c"t'`BՅn@jNlE$s7ћiLU?NvG:DS"M 3Py4d^ԇTA,9u߭/yv%eC"eʶm0/8&*őu.nBh+GqV-- Nz3#MhT[:TFA!.WL,!3zǰ_P+i;ɽvhܙUCʱ!>i犽z /+=sM=1){旡KTm Guڕc}m^6oR $+J&k1?.KA3|]l wZ6X|{*ٯD`NNkYL z娝F YgS'slALi69 &/ 1lǗ>S=^Wxql  ([D1i,95ɫ~2~4r˯K a¬Ug*ٽ)&l=%T^D- 4c vY8&%;ѨA#,Y4G.G#CD*S?I-z;Z/fqo ױIo'4vSp@/JO+m ] (*$03#XDg,[PgؒEug\0]R#!c=cÊQKXQs &>6i'ihN og29|mB";?)&FDBP eW}QQatg,~e| ~*(\]kq1d:K>Rt": bNMuZj1' ϵD3.2=,fPASIt`^ .>[[OV2Y q.r<;yhejK9M-|7ʵ* -3Uy;CI 7ZY8de|py c =\ނ}z?/5!^ă'w'h. |Ek_Oѽ1S߃aXpx)BDF7c9]T`1@4т\P&_0w5DN]KЍ#@ os(Z IaInLJ3r|L)xRK"7,w0 N)g6wɟh=H٢l&Qr!0x kr{MIbزHXъU&Ԑ냞6&؊iVω<0#ȞۥQIP}ThEn2؛knynce#Ea_/aW/9J% qϗYSsf|w|6Z$I P!$ܘ,~^3sKssN(Jpk{CLL6z; D!9$5aAʷ~oUHER‚޹j8B.Y#Ó-ss6_^`72K =Y_U^ mӿd: ~Ͷ4M.-lwc GyLY(.e+\Dp5F籷Ng~S?%RM os/a@cW7)8 S I}{fDN $XgsH},تbZňR<\#eej+2 mӳtB`/Q7G 5]@:٥GX*7\#0\ϪNҷ Bʑm~aH #IѦү>}&Naۯ?ITzZ*9R,qCyBl:㝎0`]?5*.q*s[}*4(k?A(V+X- 'Xp6}ɣX~Y'*P P?L=*;o􀮩EEգ|skTS. wq9";KҏڲE~]&x8fݽ:(e6\Rfxb[c[> 5` S~ӯfQX5:jFsq|?yg ,C`5{lvgPĕ\-vXܳ܃Ld3j`|d8.o)yfkaYC(9C$6+"$/9tQ94%,"ݤ!J#93оMLhc^duLJj3H}@2" |? <|Edb\8I AeyB0шؤ,|(d[aqԤ]e1#@ V>!E;eSJ3`jG g}ٲ\Qx'G֤JAju~t?O"^S9Zu嘁mr1yqg iع(+gGy+OIFcv֏AI@+(oxx:zJ@0ߦl I* #gȷt M[^E sbCL޴v{!'m&Fj}bNr.Rj% ha5Hd QrIADE\j>=w"AW2d jf`JdgyZ̎wueyA6>x$:_9U`Ϟʩ}#fJ87`^ЎDTN;>B 9-YqUFÚP3eW‚\ՂwXzܔ5xf8\ F.P,0 9dʐoRxiMXhStu~ yH{iv*n7xGbT3"ˊ-~hJBx)R֧ɱup냆\ 5!$8- ]M4gz.b[~& 7]@FK(Hϔ\"?G3u@7=I' P4ZHOw\شC|2V &S6H$y͐ށ +YP"Sb@"kh/ܧ>?0T:i6-Yzbаjp6>frFA9 q63ހޑ֧r&T|2L*;5űlNnNP^fB_U\ԯe/>g0mӘ<ӑR{mc1)[Cvֲ.}QwB%/6ME K78Qݪl:ջ}GHq"t=Y3Lo5bTC'b]ܠQ< 8?6' !@oص+R0_wSeCmvzp]F`[.zɳ^h[vX 3jXwRLXOx#<2BF Q12`<*NS'ukkKf%m*>|4~Np V-~r;;H90 O3%7xL3A"ކ }`xA;-_ EM{eGkqlϸڃ% IrwmshRQIh(LZ1EfFE ͣ=&DGqgCS\-A7406,X?QpWdy떿XQ#ɋ%UwaUOduu"s1%!H21N ݶNcAOQW)S( $n˔)1n\w<)c5C D,{ g[Bٹ; } g(h|͙M036d#tT V/S@wP\h2i]8%&DW}w{7 v<ʌz/d 3_8e?sO} /ʶ>?5Z5 䛣Ź^QflȪM0S2y~v1ecElb 5a $-]? Ek+<Qᐯ:~}K1!#NQ\ljJ 6u㡤F1++jHT&QoO|$Y/t: o H/"xcBs®XV́A0 |ܯ/4{ LD7nؒ<;i%D[UE&Y[3/OeA&ᐴ0jJ-? /K! }^09"SV0hDOfIeyYNT13A Fm5aY$)/9sHWZCǕ}-`ǦjwY %2}˪2H9"'Q)d;Ͷl8M5Y5gt͔9D>9Ӎ2XZ`@<0rQ· q KN;f3:c={p;Ƣj6O˱ͥS_M;J(y*ژD~ _8Ѵh}vCTdU}WEx'_YJ$we0aO:JXXh:იoPQrMkEV.; %| XGjE V!@dOyy?aeՂLUɭx?3r}4qOu w,}# =_lA4Aa[a'KC}ŝۯ˯:)@e=TA\16עl:wsRφ84ؓoCfI6GyZ*H\(Y-bA S![B#WX DLDz g(DFEZ؍x33ɛ*DD(_.M.oc-j}dPAնק/(ܚH^EQQrmh8x^"gڢ߉+r$\߆ˑDQPqȠH0вl@z֒`Pֹd\',*XScD7"pCױ䚁AºatzZc<&x{hڰBARW~xQߌ  E.\ǵff|:Pt<5|?<'8ø :vA~*馷pCbGG]V4e|+|?<՛ksbͅfX$л( ! vF0bE'Efr/x@o ̘վۭlGh*ͨ>2bӾ'о`Ј6*;=2H 4vDa銍{\va:2GL4mt~C7B-hzY;N lX}W>ZV?  ؈f_//i$<&9,vBdiH <]ީ8G6Lj 鳊"f qꊕ'1xE𧖅ZZu0پ^~W9EPMWVڜW1 YDK0h%yzq'd,&Um}ȇ9&0H*`ȸcݺ7ؖ!)$Stuxx 0KF9SRYgWu"^H^m%giE!+~Z9LtâJa&%2MhT@k|q~s8oJЙINP4΅-%=Qn`nuV<'eu(Ypoڂ13L. Mf<(!Z:q:길"/[6@eNލ@]?X%on~%q>ʴ66M|1!jS2@odcY[2]LquהLcoWK69d%Z&DR 3Xp&?OM]נn2LQ^u-0JC#hUGG [iAm ,;t?sF@ ы[d*m/ Q! 4p|%|p:6e:T@.@T;T 6Cg7-%|qv@3x}vwV1`:HTbɟ,,PwfOt {d}.%䠂}G+SZF[>ޚ?_t,E|J] ܺ".]]h^.X{ k IZ.JNHU=b6vȠ^v( &B'LENd"-P%m7 Bm=҂G֣o (m7A&$l"{}>>d($zHߖy>6l.՗.B0p[ufΠ5woU%OUjP*;frRPϩՆ辣YcrEda0*Ų;}Eʭ V6f֢*+"w%p\N):7~fNMUw5jJFTDq60iup9$ǿrnk#kwH*p`AsIخK.LAxrfFggP|iÁ#)%+cf Oia%/|¥_]J2&\CD3ݟA]u!4+$f hL _QR 1Kҽ˸!j?&|,dA~ݕCnCͶ@;Wx4=钴T4)1 >wA93'/I d{lpn\'4Ӝ) תo9RiErK3{l@u`^=}Ҫ1;qy؏-tbVUrL!@z;:':"7̰GA ql'r)]R|ܚ1 5`#~P=o69RSM7 X2[3c QY UOX\+Vkh|Rp.m{_erO@j#vW XAy6.Mt)'pT tD<+cxyW΂P7AFLH =I⬿ܙ̶.}}ީp<5]UlsDk9C~ mDB{aQw6Ǯ\(%/2Gd5̔ki fM/c*qKޘ[%Vw^ CMQ/&B2m3e"Zn,G*6z0dW %Yi{jru (1DDнO843KQ)!ث{ZQj1AZ>|F1Rɠ䎲#!kaDQsO9\<"(\s$6 mseqksq^=λ&7HG0?R'- !(fgfB?ɳ e5OkxMYLƧl-1j%< yB?TitP^-&bϳXn;oGX 34Y *33H¤8q#23 \ןhMh]$V˙~?YSfQ7:˖ DW$u'z{?O9E*W~$Ejg3`sʳTJmӤ"U{-s&^mkJqR.wpt5:>݄Do}FZ>,;&X8D\.},$%F+QP9>,5G'. a$Ozpз Y#hKNE,GaA$CG&-yZ ~(TMl`SekIHC`BK%1^Zx0]c``!9[ӕL _}ѢZ,$N1!N`K}bՄhA&p;9xK_n2,ĝkg[P8Prտ(#+Rc)zV19.)TS@ݸ*{ːi=vbjOC,LE.Ҳ%fl/(0 D<-$?ՌQQ8nZp8n-燱+N7Ju%(V~_+I4V?ix8#w(AkE"8j[ULpi\gQgG'*qS 5f\W#UTaiv@_)KT@tm?KcTފ3G6y;OuzX W ZZ9i#"7nsv??U#3KT:ZmT Eb# *o<9FN:0ys "R:Ovjclw@qTl]o^Rpė4dl;IQ؂/IƳ2B eB+U`v~;fNvs>FImc.F @4aZq\|f*LFљ}9bo1o-'nөOlLk2˷F#_J^f|30#{v%CCpGK?GlD plRB 9ϣ诤]F1Ih ,K+P9 "lyZ/&dmj!NtRJf\ðyn#.il.,`=Z[ŒY}#wlXSgHsHF}{!0,{kGc}u!,>qGrW?~n$* {(1hؼahW#2,h.Zn>S/q$&{/YFJl|[],yp_9 䎽> f]tçM8O5| mbeu*ǥ6:!7ŋ!iQ3m(,7^hDh<1jd-#}nB u*/Y6Ys^Sܰ[V!WU ?Uo'!p^֕-p<\CΎO^/,McV={;b9D+gW6;"f:_MdPLZQyH5[,B"/}f[Y߱lvjxݎ ;̥V?,HiwL=!>KBQi7Z9+pL =v"O]nW:&%!NT ~wLUu!5(;=&D7XXu@sޟkU7hFכXƷoaunH R 4"Ǒ~5ODܔ-ۃ#?Ԅͥ%3"Nz8#QBW@KB:3( ÐvB#+R)Z[E݆õ\]¬_4)rυŒwr&-Ȟ tE?gbP LN}]=V)ܪ-e[|D/C;EDc܈ 257iL yf>Z$d?A.O(PyQ7x L:)zU8I[2i`oPwuuxfi`yРT&sFBHGjkiǿbO<[3\|8 $-삭`myFJ]@S"8/ 16{pƅ׫Ƌ3o#&u M#I | /!yҒq̉l&ZSa4E'ƣd =rCUB.% NV8z2Dt|DNn7~l=enUɧi[7On#&_BdH~qdk^1\u~rn;%8v3D{|V݃x2=|\%c3¥ͿJd0.J1#KzF.x?*lx-Q MH+ݡ Cӽ2|柳"녝3M ciT`BQz6v>i [Y=|#U.1 O`C݅[.'wh'aEAd&#+ؙ6TCS< *U>aE}~DA'19/p83/cIgohW: [E jSAĖ<jŇ&ٍL$\fi,OuK'7};(ɑxYDZFaBㄴBTwx] !t:f t(IRl?PB=R'xK N˗ⵐY.SUKi,j,Z03 ҿh~04|[zy]7M<ţ`/mCv 2N7JΏd,V$8gr=mѪJ0;~0w⠿$>4&NCBʇc9#E]ԁfF1nmr$PT_t.Z 3i'L~g8 bM&ג X~ ufFE*x;ko`{߲ `loa5(-`>ׇzkz+ҀD`~i&5? "2];Z٬/6AMQQ3X!Ii8RS %֛V#D7z#20/=arq osQ |V)2 0pV" P d(>^ᣑZ^) ρ]8&҂*КxS lHn uc[N(e_ˠwYxSVTs,"D딑onH_5Xċݐ$`zoj UysN9SJǮ xʥ3I3dipмu{.%e$74xڕKz5' j.s?4cERdL4 ;M 陶|W R#*хX==acXlBssڙXyz]NL2 %[_ d:]܋?Jjrڿz"TaþK%*r8SM8=%Dz{yAo1>(˷+d˃ WYUeWsebJkZRw}N@%<L1h(ݢ+ǨiR3`TpWWoJ:EF8' 6M_ϯF_ *sK/=A񳚳tQq NKRƧeucDIq0a:>Rҍok1h}.{]j/c ~W/2Nf{{N{sUPa$ bFֻ >rpURJfIR('<|[㊈='PmMG\u&|g:CUC$pz-r5}\|fKه$b|Mpl,"N`}څGQF)2SҤvJNp)Dk(EME*rHǛ +u9֌sE0` iځd`8\k{H^ P׸?I,*ʖbr4>uQNeʁ(ψ(c7<6913Y*Bw39DCp@{h|d%Y/Gztш6Xz{߹&wV$B=i-z>;V:dd]/2дxHy94k* hw.8h7 d@-DƻjStVEBi |nTo^e ЙmxU0(r2&H a!MKr^?E]fEJ 4nu̎,FU !>)#1"1N@Цw۔h{]8x\`htiȡ5^ne:;]3z0|i׋~%U+"G'"҅phFwLn_IRJܸ9+Cȶ('_c K*?VVk濆p4E;m%Jv_^b0 kTp NJ,*k)#(p'Ki lVHϿ۴/ Ԧ%lvG?C irRJTѱnfZm^߶Mv,YƳMʀIbkҮMp@6jwS4L]Бy(Mh Y{R1F|>.+sL4_p>t'Oqd ҆_OUIXgD4zeNE+M^.r/y k[#K sLBE Y#\Y~B]N^8RZ+MBl˰ dJܓ֛*ؤA~[x`t{нo&$7E,)V9*F8ӣѱ<ܽv/I\8O(C?Enu]ũ^)~Ҙ0"O)vO3_3LZmG$ a]6ĐD~]VKkBi D,0_,f",t&;wjw0V6msc~23v;iwQ$b#f,5-lmt#$o 8OhV"Rr!ٯXo Q'|#睿\ןm~1KFU5!7a@WdJA*vwQioY ⿯ړfc?UX͟Tp\kּNV6X6-_RǃonzQ 0 n)J(lc$3p |}ђakD>?mwu;P$\6"Ĩ}8g;~ʹi=O1D2]%q.fF,2^ ([uq;B$$0UDg`$btCs\ϐr&r1˾[?2 )τ˿TrL~.6\o6lI]cP|1rq۠r[v1y~q\$L"la).׻q[keH|/udP "G78tҸJ4TQ#KxM8튺4Ú9w? _Ӽ0𪓕XLA-!a9.pЌi;j_"J{dGK!OgP*qSŃ$y뷔?\a'&'9( #WPX,} ~Yw@ '! cvI<ȩ4g6W&(:'kB D؎6TRIrzS'^pWȗ}6;rcƾqj?EnEI]0Fӕ8% J*v vd0L'8> ff&YM|$57zRNnAo/m{mtXWͧC A[oG|$RrM+G6(RMmsi9#ÙuBг L!W S1/JT;[ۂ nt3>}Y%sjDXu)K6hF#5Z$"1B{vXu/4,N#N1C>m?1cFۘj i”_r# =lہvp Vjy~V}6HNK߅ "_*VmCaA`M4R9*NZw7(5{FC "lr2fL9yMej~߱mOYHe+ù8)mBjEc*G?Ac\w_ oeCuԯRPήG#mG+{}C?ȯp1C7",?(qSUR U߅NEhi2Y>@XPePyxZc(Ac찉al#҇^S@ [(0>fl0֜㈲ א_ ٮLУ^ ue#O< XTvbcI.' ̭hKC~]厇55ގ}E]A 4ժC X-rKtGRkU~wmju*zJRJZdm }qAzR 9(E,_042geagR>cVGj-m Mgj~>5'DH9N\zO;7\0ɲ7FSk:Kd^ځW+ a&\ϻfN. 3p2tQ m$h7cAe~ HM齗fYWzbk\Whzy&2 =ԃL( brZ}[2s~OB5[2@]]Ie{c,nYi$<҉I#!$.]KֽR%,Y3b!Y?RK$0}[/΋=d>t&5*cFdNp0PZ7(4*W3?͂IGFaRQvЭhū*VYۨO@yT_dfkXmxLB~: yLnQM!"}K8\T48=KwWGj[#A̅K+ʆ d`Fwt0P$kA魥s+߹֦=- 3^Hm=u[^T.YERS4 /t c-QH eis赾;>爭2GƛӫmB-sn.o1E 5iAiF8Vkrwf;>k5%1kp'$Sk Dk]e^;PAR<5abJÊ$_3BCF_nc@5u=dvB8C/kaK'=xO~a.~(y GqGy&eID>f87wk%8#5<prY|l ,U&ZZx,!d GSDىZ`PhFiwwKeu]~[( =^QFK׼ +*x0M/q'{֠,`hXe6yQ j=?bOUS\+ Gv ~ 9ehF~iVF K*Z -U4J%KNfPu={AYlg86FN!$ #"M%A9 QfRr`G<'2 ;_7EՖDt- qg2a : |Djfumr_uUϣoq[P<90e4u&H}7+APMނ賄9oQoۯLMMoo yYaE #:L9w5IiыPweH#u&KǃVQYhQ0=dk{Nh{bރVGUf}B,x…h5Pg2ZZgOEǩDܵZ+˄9En.bZc#*.a92&|T@?#d(b qx@!Ts?h'f#81nRԔxmLaa4[=ʌ 3WM #&m)8ˋ}QpZk w|SQ2OOeN*&׈$,͋)'ZȄ^ ~p&W[A6IT\rںu|G&L /D,}DX(Fqnkg0W@"6Ay'o7/"z3$: JD)}'GϫC4BkXÔ YT6+`}ZAnZl7U3.Lc  \ '27TPiSSdIxbk[cJfxz] BWO2\?^+(K #+)VDТ5RŠ74c twr)#{tV U"b%1)pVdWAܶ`%*R.m!zٌ!\ⵛUJu؁;>pߊw3&w>/ %^jj8{VC6Y!{0~D-М).Ƽ/EA4EVy釤MRo2 'M0G!8Yܸ{Ga&?!)#æe\ Df_iW02aJK h^MI-e^Ĥ&l}px[j3Ѝ(Bb0WW]|ޞ8QMH?jvn&|&6.0.(y.r O:`^"+5<za0|]BEhq]hR&vHO%t~ިgBEH1&=ƳEL:`&S_QWMX}9RINX%PW~\|Q@//_$~AET`Ҫ%Ġ?$vpV~*v[ !~~{!(lv y 6S#i @5BFE+h:i?mUf1D6U`T42\9wVQjfjGTH;t+Z( ʛx1q1w2WL-x_Ƞߵ{5LÉ݊ܦxh6(:|)|pP_AvpkۯE/Sl| P"$Πz}Ӽ ,뺳&E.@i# xml|2(!J *2mX)Ңif @@"%\ *>vy/,5_ҥAԭ1<N?N45c\gv1IHbp䌼Fcx׹B[rwDdƣeћd=ts;I^$C2Ø[]Y&o[ZmE 7R*j4& S>˵/5SL" iʠfܽW*hmB<6-tO/9]9>zPJeuJfl::@čq##[&(n}&1ilx749 |kϺG /b܆rsS[Ը 7`)vX,jvk*<8ݝ5j |]H%ҢQv,'Ia,-{06Cqu>W!T-+8m]MKSƪפJ DPՄ&@F[Z@{8ǹ`mziRpMvi$NrA HSʭ3idS]F&|BfAX;HM> \N*~ckn1i3[Io3.!c}R 9Mk}4h9oʫs@J)T'JI'y+vGvSMO"l4\0no{ <+0و}`V@3h: 9*vӸIv9W60BS)Ye  2_rE+H!ѽ#ڶl_0VPNlpެOx]~w4m|oc ,#:YۉL^ Nj%h{HV $MڮL:Etmv r$`8'x Dz5gE=k Ⱦ|G:sy'WyOBK5;9 6:1$Mcm%c;!,~ uSUmNIN?`2R If86E'.N) +[mA )7+}t4D%Vjz`ԥ0pw`ΪRӦiLJ3-HmA†n@jY׭ u~tG*,X8Ӻ%uݛg'Z ,Y ?z5hYG!7\Zm4s.JZ~TJGb`j-M7/=F$>3~`Lal;o5]$St#C}v&~Q+ǷbIKl0=t~ VN#@AO@y +T5 ٝUržw3ZXX|\xMQ#؎WISM*GU$Z\ MMMg oUx2RN*w>͞@7NL^;U7ŗEʤ찲 ?^M?:2a#YXX>և O{}Hv>!GC*uQ YP@TMV٠KK3!eZ, .~amdMT%.nW[~03Zgz3pKra~ƐrNn0C=S5- c ᝘H ƴLu֩Xu:ƻŐFQeu4[fJl` #XN=5-n꣎' *,BxY<;%`"9U{rA׆1HLa<[= b<٩2wZ +9;mZP jk(}wkH''hJ}W0ÿGH7>WXq1;ұO1`R>D}gkU˝{ eMv.]F?u䕨t8<o1ɺx*u ʽ\€K B~apvRi]4Nmٻk7Rt?Tq9˕ӱ2J(HIUڻVhFa ^J.Գ+=XEM1sB=$ {Ơ{#np>.Y5[J`; ;ELڮBmjMLX{J:b~b9LW֥ @&HYfL3x{3쇫'/ Shf@Y ' G 9n|"L-Y}6#q`K~,.QMzܘI! fU zBtL@'6|;01$P&L}N6 ҞU/'uh)2ktXR8613d mZig0*9f$ӧL^3gx|znW[m:GM /ԇ }8u a~?R-om o{۞s$' WkBjr4|p1:K\}[d+s&.>9&`Hj=$̀߳H뛘b]PQD7V.ЕG>e3u{-rtzv;cвn}wQf/<9oV298Xl>Al8sFa `KƹRgUħn:^Ҷ>^WJk/Q7"R ֮4 ɐϭl8N&^۹ &vB5^"^ GF$fJ'E-x erE9ånt>@V~<W0O8:.21.XU12xF#} 7>vE'85S4E!2NP!jPj,8-Eۦ6u\ OA?He%:Ť:&,͕)V)Uyޔw٩ep` qfP闤 VK4.$VϢv23S=I`Eh aFA1^L&)T|ٴ&xi剆p{2@XTg1㍸ Y`!BϗxJZ[;N%rhDK lEP_$+s}J4FYKtfv]a3)jJ!}} _=߫"~hp@G}=ը{֞mȃ:B0ʻ&>+L3/M#%Vs(w~żAJE};S!MD)$O$Z}mC2zY& pFɦ高кG,G; Oai:Wt֬KsÖz Ƙz>&|c%?\NyG2O[E~|I0ųP14'ћVΌ 4Ɗ\)k0_-%RmgݾWIz[E-|ѧ vpvߊaEHJ.A&HMskf+&7ḩF-D~?'S}I׃? [;m[8X x.!k^~f-\Jۂ9I"o4 ,wir)&bzV*l/I:Vfdm Uc@PN^w%DQW&,MWYC ŗ%5eXasXsxgV+by%S1c6 gP٠y!SDkaf Ǘ캎&6a<x%h`sVܟ7 <([$&#7}>(u8b'Y_ۭ6fh\Kп5|eІ6iv~+ ,j:39O ͙ v|μ\(dYuG]Z+ S%*S )|L>4) Qb`rxOQfaK+['\^U tD+4Sáz X@r-~q>6 Ժ9#:CU ΑOiQTsxN@ۙM͉;4Q@kﻛ5\Ʊ8:6ůⰷ[Ӻ6+dCMN*58L=]Y4ָ?؁$~bB ؇ gKmη]!%ɵ%.f=aAmQ2WN:oYVjm6˘ ١]CƿuI=*pC?n\:ӛ{@ǰ/X$?qDUPcvo$ۡ,id+ipw鲓h` |cVRոA9Xș(7DjA JS( p-b>猪G_8+Wx4Qдɗi*aw#Lb恟+zD[~zƀ1w@\v"lt=y?y+]Wk+[ *V^SyVtLRdmI53UQyss=|#r}஑Dkp3)%8}}(9֊Vf1&e? )14f`R򎄛Oབ>Kɔ$gx\LJ~ÙABuHm }h|xTck~&`f'ںSCW+s9śBOQ2A|+ cV \昡zJ-f#ܯ my bޛ(n4ӅATZڻ8_,+#`;kJUmRkQdYO+lf•6 ނUzz2!39ϊh u_:ہd+=)Dso֕*&j7G1UHYUGA }fP >է0,(p`DA) )kORh ӟ0ձB6'Yf֌ԔsZi6ɜ}4ٔQW}j v囍+,@, 0 ԥzXdu }G!ZN$mJ0_=m\虯ec5֠͗ٯv"j[V@h_7=Sf K^JZWKΤ6%5& Ȏk+dguJ~ZhfT!L- +@=P0sUpت÷y&ި!ɣ<7w(9*𐄖zk$yxʟE~֠$MUV&Ī^j8k΁ʞ`!l0-9 jYT*A#4SO \b_H6C;bA]n_(:w+jܥ2#s%<} d⢄F0W ܨQwغؽ[7٘wx5Rq׿n_yY0:sqR75+cUNԉ,I0<ܭ_,uC9c\[18>I[gL~nd]Q[謬zH*W;E6C%=C]O\蜾Dk_]Vm{%a39Cժ%y XkEۍԛü? =$pEy`:7Ue7Th'~7JžAb.J(f컇nz':ߕxCH;=&iWp#s\\^s郃W!XZaXf.>Y?Wl2!=d+~T|)⎹irJ[pvQ3k2N1HLW6" 7n1KQ.gʸ$[a_,Kfƀ\ L=PlZe 0#!,NuAF$2aW`?;7i(ĥ=:Kp>)m0R]$+eJRuv>c9oI$G˛~Y|zx&kI8O6^~5#ݭ|9aȬx)$o>&8ɃYNm>L=tUf9: RA=,xgg)ڎ"C` AGedg.=k>K6h@*Qdt/iqz6鋪$k|vj>w82n,o0Xl`ۋԗ];Bk%0x w RRK[`r#W0}gk,jwί^zE%ڈ[؟^f1@snҔ{7ғLqU+ghL҉أ~cB_2L{6Ksz3B#*u>:`qn( 1ojFVږf}ޙB IIW3;CTwҍ $knuCz;qZ+12SR!~hFQqhU @ʘ|S4GL {3QуaV8k6Rbde%9s(-ϰ.@iFҁ+Lm9v=R'},"Rޞs—e,.q/OѮY ez {EP姍y\K >2Ƃ0^TYJ*ɽC!8,b"iFn9d( z8+FJjx ~Y :S*g-$Xh|9w\F?G|.s'_O0'b>Rl~!dnq#>ӧgPYoy"Ԁl''Wlt Qm%%/Ɲ){ p>CNQ{l$2iF>_Xݫt/C20z*ķLjzɷl}]~E1zHP.z2-'lz :*`H)akM2]aRK,½)c;4Vi9 `ļ ~GUoZ7\Z~usPˈi^rM~ T~$*m5 cL cWXϚ8p[ F1:,Qxb]gl l(@JAh@Du(:@m\W pbN g e@ߓ\"Ethzkȳk?P0yHBEoIA0+X2IcgXzT"lTW ዘ/C|U53ک?غ[Fzػ1X.7E.[U2+yvѨΗ$6=pW ЬSu0*ГT=VG-s!e_4 s#57 V8HP~bEm&9t$:tge'5vC(;?:.ZGiW߂J^&}XkҎl-L #Y9j;zBB0u`FCۯ[t?Rk\._= bZVP v[:p\[A ",ZHlY*]`ki+)Z/Eu NuBm‰U6ͱKgC;eޒB3f6+sͼ\F&!!`F>qLjR9#!gz".2@SyP+9\BWC0WP% К?wᾋzXGyCi/9J(TSCb 'F[0]UH3= 13LsW#G۶ʤ:6|8AʼnCJs-~]T+8s돮^f}xp5[dPнි&dF .\Jt=~G*&Wx޻[Q!2I?tJK Of.;S"| JwUj;(N4ir2*p[?7o _p `J 0֞%p0iףlG S: [XcȨ/:cbj4=A:sMNlmJ3 Sj1͎@Jbwr:(crXY .- RjrCp C\'OUflt3=or [DB O~F;5d}TjCF=)sM"?^tj~yX˄ c~ۿ|IV/miAEQ>;)U!єƭRU{ f1`I7L* PՀ#}J)F^hm uL[naĖVB;XyϦ]|t}C1?vaGj@5'1<^&-|P: Uy^'4xBUق\⊯ r$\x=|:٢,߃4]Tڧm=[A`>/j yw?)L|:q%e0 ռ 2 u+1:!C2 (^%<+%3/}tsY7A⦮ $(=t(6S]%ȧ9 QNx%ђ%mխeB* HsLt52ae7*<}=CTB;[בvAb`y_ oVlUk-6(3\.LL9IծgE"LA$@2=M=7/ST,+k {aHm > WW,9wU*7Đ+JVtB]|xag _( hwHbWVb}8(ڽ ZG_aC]VFQWȨzf+5/`b=w? 7t+9 j4bقhhP yx\`E:Hho8Hc*Xuz6z*9jVN7F)3J_.OxϿ'&)xi kǜι0 q2Z5PJ<ŌtՇJda'r]$Ҹ)iasiX5'$ 8\(@H [ݰVUjmj єGƭbٍ |U c4`{&~ޓ"#dעfY(TCe~giZcp7?SFL-!) DWJ"Ac \ee6 ˾tsx=ǹwd`wQ/W=jвQ{YFSsFi7W%6bzʆ9"tJw!hSm9azčz!X98UN.[r ;6Fu~R ˺c8O\R}. %\Wh=Zo΍WqWjA+* H8z%ك6*[lɓJ!ăRzWy'Is4)4Mߵ.kwlwrEZt QɃc4}j6 t-0mլPxHpw# nBB!ϔgF7;NPE(|\_Zi 99AF<ˎ$)XK5Z%ohl"q;Emv=!bcsy Udh_~ҕ\1=aJla;ig!=T7P8Kpc44vVuCĂMZa+:Zsw8D ʸc  ntw|7JP|#$cvN sn5% $ҿ?}z!!25q"g(S.Ou; RdlW7ԇPྻ<>|Q Z! $ƹ§3)'7'xMPt$ (MJe 8cj&|}w$KY#T?Wk4CK-nƆ(>YheepRŗ}4T o LCKNvfD?<&)4YLO[׮16+,xߡwE"9Ҙk#BGCZ.D(ThNǚ:{|Ƈ05);_1"1%)~=ٸuĖfhPjL=o`Nu#WW]!7EȌLkZ3Adj2B5_1NM!zjC3O> @hDZuOHs.PWAoUiWHYclu'(KH|{?f?4kDfq_<ݱĸ}̿0(EȲ7,U;}Il}Ug@BLA3=fRrىpˏ 5m KcaU>`PqRv2~uNP6z[WbCܕ_ rw,t$pBvuHKt8B1 T qjDS!Psy5:dn4 ^P,o(.8 XMlZXJHnfϪgvDK ;*ͦWJ#ƶhQG^;`ŽJy8֜aqtu>ࢰ_ ]E~e oN6܁2vaдTn.k霊[ "Vna('`<䎦5|~c/5 (|l,Dkn0gV wy QdgѭQdL+V:ʧ1[.uuNP3&=bpoNzkX2ueC 'D(?3C*IVF,LO XO jkȆݎ#tv nh@ICKKT$Rɔ;ʠѮZU?̛f{<\($6@֫$ 3)'1vk;Ģ߅WY -wcuIv"O<bV&(|ֱ/\UOr=;Z&01\g6 B&w盷)vP"I*atQn|8ye^J?2v/ F&cC nΩsU_GܖFcıd-Ogkx{z*׀Y EGThҨtU *6-vYSAE.3=X;]"`%et9V#qB6m{i5s=Y|X/d&M]:)[U.2~\ц #_|Pt>Uj141u!IHrS!+iA8lA&8j"*!SuyevK'G"nt=Eza)qp[v:HT3 _NWW*9SdPB$s˜Xr? *zb*k^F/K9[7RW}ucN(w8ʤ:tZ^HZ]b@PpM2 #?\8Эwac6gPYʴ#WKڑtI0>w]%*г(B^ ţn{q#u=\1|iAwDF Ã#⋩JEuF蟍AmVw# _}CP秮{g?Un "v>3t499ryT}cӾ|Ovz,PhB'`$IP( ^Rz)\Ԧ;]N@3&ZB?fJ~"V榸@f`gOfЍgu3O@{~w /?̵Ί\Pzq`>F#O`}|<=ud$CyէxFؗrZY`mf~v?4/4oS D؛y5D%RtR:P˾jYs*X8-!^d u|e&wgZ@D0y %ZMaY .㞁`s}Q?2{Qq?rU6>Z|Abes>ΆB y6ad\hDjUn.mU$~E5bg>pnsy&nt.6rЯ#sRx94\/D\ tֶȪ_#A(h!/1vJiݺvk&lW / TIKK(LB&T4ALXzB\'d2"PdnQ)T,*%kdO+/CK'b|nU[b1-/oUѴLUIB ]tqDۏ:5|ɻ ?$Wt$WD ׽n2[qǘZ:Uҙ~c*PkC0Ej Ȼ}n[+2nqf\{K3/U,,q}HŜ_yeSQ0,re۵G~Pv1UVR߂'W̾7Cʇط 6>+Yuh͓ jmVEvZjj}}M @?EjhC_G5-u6!Qq7,1uF[JE`M7yX;.fۓi(f\vnݣql#̜^EbTd|ׅ$C0w#̃GDsƬսc&Aȉ(ǥ*,EjJۣ¦NQk/pVVa ˻9Բ0aj+&͓Kee"ZǦZPĦ'=J! X܈*9#sȡ~! )8ٟ`d=W"E\`!ܖZEbpl[C^i#iIKX\QHks8S$cslr;UhPF/_vD9m o:]zuu"PTaXpI_ oA=lN:?eo,RT1s(ձ+ 46EPNb˺WbaN\U#y]5ЅSSTfّ(еD\r$ G\H6@љ8oPF27i%\3F{fgϊ`<^>YRR<8FxXCCilw]3D5ͤ1xNwZ?[xdu!]xmP"`Ա]N[CdPo9θ6x {weWWj罥x ""ޥQcޣYQv\vmi kupA{MuP톬:] ,{"pyEA ݗDct M p9NsbzM.Co/ϟ*eyXM<(bGM) V. V%e>rtf^&@0I In}O#܀s)ŤCL M=Φj)MKy'U.b;x_ʮ=A(i|-7=*R53d s ^};*ŖMw3b5KKLVq JF~$z 0D,q~W MՋ^U{/CT2v6e:A/WݽPc>ĺd VxZBPMW:V?2}Ѥ:0^f? S9X &Vez33T ` B4JnrGI ݽf^jG1]ۂu1yJm[`8V@FWDlrf׍ʽ5NÅ I8; G 02- ;mUz 솦J$J[TjX7W\HhV M68HZja((-bB^@m(1' 5һ;/,#0ʕr#;Y ]C+?ʟV(_us@ Ž.~(K 䐏). ^(֏TD{O:&HQtn>u)0I  ń"yIpU9 741L~w2۴CL$~,,]ߎ<៝y.,fm`CˮA&zs3Wɟ6y9GlO `-Q/;%u:(H@hjr\1 څ߅zg|oIvEf.9"W9;%5I gMVWe! JCJKDNJ:hwmC~36ސ'RTpýL\bKt߁?SY=れWl&O1UdLۣc l~bPXqU &b1 ]ѫy۲QTn.hMzΩNcJ/Uy4xgzIǧK1D5{dzѴqAmF@%EGm{ljӗ8 )2~ƫ"@9Nlo$K+1:$ކR3_l:#Fo*xM4 _(׌+$E--+w[Q< ~[B>Ar|5kcLPNhXY=]_h>ow>Tm׶Fg*]a}:蕢ur3aṻSqqcW$i2u6$^!k2%ʲz@.tZa&j 9zNLo0¡gl^ɱqE+CN,sfCrVѥ$N% 0S,ʯ_Jn}X`|xGfgwF_.!VJ6Ob*dF'* ~_tJ.\Ns1gS:)CZc!>E&)g]ӶX%?7Rq#?:d "ִMoK{natf.Z񫠄,>lr`/24ZOm2 q4Hǔ|dJ5.w]{N;)p^Ֆېts1G-'y(Z ZK+Y{pqIW{~7kYU+$T>) /rk<",n0qze߹(wGabsU#eiq7U ϾW&ek__ }"\\xC۾'hcqP YyQpBmz@ם[l$sg!- jR*=,nsց")MIOȼ{;4m!gQ1tx?9e=2ry9g-Źkk/Y >;tMOl8̻| gJPJk@MB rA)8"}_8D5lWޅT^q!(7}]TP_ %&Ox0=Q^{B~k(H3;T)_4vv{W dR3@$U<0{A[!+<\ߤqެ6zw] q)+J)+AMYxS2Ii*#tB cVm| zvL֌j&{(JNv`,z_HRh}P4y*lI]!HYx˭9rup{iƀnjOA% .Uр v^ovWk=, QHrBIL삸~Hov1OXR'g#CUG,\U^S(k0|zS/͜}LK* 1:wI-G2"#g7u BGoc)}̣F{YbK$ EDND?qsd_ W”%ofgAQ2ƕiK5]-UQ!"vE8Moe7V(/j]i`p[+yE?;b)7D$^X9ݛ@5̹ql4I Uz떠t{6}klĈ6U[Ҭ5=Xq 8 D9rkc䚴ӋI^;oV|.: ȻѲ4 y% &\L܌i'lT=jww^1t]Q8ǚ &Gr5>=S4G\a} 8r>j~3cJ$ǂ_(9l2?r \Ë,H^=@r֊csL {rnەR9{ξ%'\C络g1l&&98b٘7O\wP +,0sUXASGXȧ /^6%/CZoi(LwP 'j~ݿXj2h6Q#LPȕqX|}/5s Z42D<cv2ex=w.B~kXg糁R#ZsaZ^l H4!3#>jFt/WC= nQqkvr~\̹)8B("HUgoF#t =IJ,8iXN":P`9PͥLgb 0t p H`[0 O= piG>$?(/-AVVF#VPd)XBgdiKHsY]v .0!խ%5#}v~\y*.v8Ɋu_kQGc0q\>+ [ vf'O +IM(N ?S=2"^ȳav q6wR1kDk'3JJӂΡ6K1M1ÁS HD-!qE\+%,k죢Mا#:Trapr$S_xwlL0փcV|u ̬Tqp! vReeA$[:GWG4lh5luPؔGqKhlryc֥!0&gIL.O{D`FtޯU!|juoʍP;]\V~3 ɟh&sM18t ~!cVarl(1͕^΅^:7I@DLJG%HiKz~5MVxHHʹ M5bZ]5EgSذ:El&D&b9] t ^u35'e&E4):߮Qt.`'?wt0ڈW?K bsU8*5DjɌhVm{R J/$cx!J LP։4]6bae\/)r9 q YeBpSVDp1tB^V=RW&ͥRk0W]2tK5L fݭ9guGLb} ji&N{fNM#m' pqꟵLиysr"3WXiABFz2Qn = pFaq+4tC5vDjE )H&թIHab(rP j$Q9h>FZ8d-cިYd!^ 4&~ C=7kϳ]i <)WG{VXI,v)O`7 =cbD Xږge^'4@֡w{Hk_8_- ƫ- 4pHc¯EMm{̌$o\砰:YTVѪ֙(EoK~0V~9)h@["1oF*T̗WעN:7+X e䞃ީ%'{\tbC3bP1,lQVZ)-}^^C[K#g@ k tްt׽+hϤ/,5W }TO;6A,Z>.Pɓz5Ji@P"4EOJ|"i@֭ΊrF٢n6b&ͷwfyo}d:&h@MьԶaZ$!ЪK=dedӫZGA:l.cHs6U̴hd]#L82sTFퟸc6AaԽڎdF>5mbKq-h^Ntx; kK%]0ӣYʠ =i(#&n eN̰s&/ʡchXPOg7!R9hwZ)ܗsx?y'.eW$$2|~eK/N SsK}ưQ;m`1~lH>8Y'5t e L:mwYMN^n-EzeRѣe`4^Ǝk웺YA?:\ Q$;j(0 0oPA\u61TYS[vwoggY>p>guf7kR^K`3J ˍ @ yC,х5\l_g39XmwP[Eo%o*&DVxm/,f[ d j!@]#7Eaq֐Aq2u(pį9>S)f/Kٞ0C я8*l4doG,T~he n⟝H#ÿBi>+&շ́ 0TۃZN1٦9yګOQǑ;ZseǬZ)]JLSeA˼ L1A6~UDM/L$]#)RwߓL:K+J)qaB_d{ʀ?/࣏y*\؅Ǭt^RanAOCۭ,s}CFhEvr]zөڤQqD'$ #f< ͑Q`d͠iSQ&]8!_*}h`z֣$#3@?Yy[Y$Q4)a ?Jަ|{/oRDp)j*@Iǻ?2R95_vX/uϧqǯ9񝢢 vh] oC>`C^q;y~,KZ+>.ɇcTW '`MDml;)ю6=FiE5Gk HӫzgÒXLj^wP&H^Rb2'kwF ;Ȗ#T|u݇bT:la6U[ƱwpoZ棅@aoYy 7C苕cgQaވ1:)nX&ܐp|{$B~]V▆%'!˔[ۄP#(m%/v1x{oX*刜⾠8tPj\6C/ŋ8,B)Y^gg/m k@1^*5{0 q:/i6]U.2摁d6 75N,n[ߖMX'_`| sre1O_Mbh%_~;JcxUZ ;pI7 q. RL\?6o5y9KL vWBrRL\addJv8pu"ܡW~k3b:aN^#V%l)y i`6c)&EʌkmH9"vI+F6QvHHQOps&V.rY m]38r0 O /V3UI:#(%!#D,ݶJv|@p2^a`hCuWE1X`z~3`S7VJ'kZQ.v/` ]>xӬL)ou hȲge;d!n*_86Q5.Kb9NPeDZ͓q`u‹`<״y} 3?i~4IIui<2:[=.f9Ixi71ݟ>.tۤbc R,_)ϓX@5_ QMb\0e2鳸ƥqh6# *[t ZP` iR(v[̀(J3Y 9qt 1 (xH;fΆ vkd`_e>:mUw+z3*Pvn fDg x:M݌QwnLDk/t(cvJNhh8 sqJ:jp߳^ sELx6Ankk 4[H [T0 C18i/E 3S#CeeYO`Mhea#k㇯kYs\^~챀J Yp6ځUic Z '{Fc; 9KHwQx%&g dfxه|綰uz pp+ OU/#'oFyp5ʄXdD&]!Զ $,AO`lu*LXˣGy]'޶vt!4p X ^t$eqF58)'3k Ah{HHhCn_9Ģn("8-tܲnqx|4zSLʔMWw FTVFG)=#ٌym> 祠irC;qAAwJv]EG5.f\>_h>h,Ay{IGRLMi k\A7 !ԶW5'w7>I)M$"Z\p`9oD=6pIE]\8ۊ6GIctj{m< `Q4.>zI}yȟf@,5`gX? K 򟁄i`&ى}-p/ژ }S'#?:~<ɐ74K8*ml ݐ!> hmLt 4f&y&3+cgvM&'IZҌs]b#M[Ihd0xpk3.A$хO7䍎uz:aF@D.>Fj=47+#撴F$mʥZ y;tX1bCպ2KCEk) ^q'Wp {?I~Kaq@oXZΗa^hyYkR%c"$Պᤧ F R12#(68$3& *WLi >/ 3Er8I,x2#V O] 1$uԁ5t39{^${*{\j2pR&EDoKĴ#ٰRvﶝ~(=y8 ` @.j_K>9ᩦ?7\] k)"O!~,.wtzn䗛<͒v$`51apGF]Qv4*GfPPػF إkJgjFfZrāÂ7ƃ9 <1E!v)Ku[/7u㮀JR λ 1E̖ʍ;=NJqv&CenˣopĄ'56C(&!䙙 ` #*иql"Qp'i/h7X(vJp(荗lH{ U3{"9=8 w'١>MfKsH4Z讌,nj*5FVH[xϥjoR8 :tM$ gZ!(rcT(V;f]^8/3P;gS{;59 ΕpB'g#aeGL.u7#cGo&`Dn렧Vui _(_Z3<E#{_i VpZL<}2PWy $ͥC?ܚÓp~6T}^X,p ڂoBDzJÊK[gRh ~j{\"k1YvXW]w]N~lof`M~:A FnțzyB$"4"ӈf"B[MHP,ӑ ,p W Cd)Iu0C j:GQKeO{>uɍS9|KO5faP cIhg[_* zrkZ4;yF^$WAlE=ۏ@5mer^Ǯf^Bs,}^IH Qlu仗p~,KQm`t>3 A2g5ᱯ2W`5/řKlބbUM$r9OrD|aA JРѺD?j>ycD̐7%VexmPDMg難E)nQ)15ʑ i-e?f FZǃ݇r҃ q Sߜ% m(t@ͯq-64PDC"sB a렟RЧֺ-KWG$ףXdJXaF"k+TVo.$㹶35z@B(G.ϻ_xu9|rSkhf_č``j̰ŧac-/搘 5Af=t#srUPlj&>syapX>FtU B~Qѩw;c2s6M}%_b264tHu™L=tT2%צ?\ߛ@j,Z.uLPġ5KS1͡ b礽1λ8"8# ,5:n eW[\UV_Ϭ&V%<ar_R#$k\Ӡ|ė<`@ 0ur0JA (Wux_{}D+0d;؜оST ! ^sĖhe-SZ4a':)}0o˭i֞us7ϵ׀#y"( I:y@3|vƹNb3Br'1I:⏼ץ5DCQ7 NY0x#*Ƭ4=cTc(-OZ ,UP Ć̦BmhAH+r,uQmmBx4vUim#8J(iDZ =CO~3<ԃj>`<֔|pB@M^WʸTHW;IUuZGēH>;VL@Gq*O!()uwHB}kb1=]qɸ~a\cf8XR@Ifd#.q2B vhE{ig f>19?EfA8!PS_)ORS6 GFl/xdI$}Kڽlg"}]H"JNٜ\Gl@k7%UiB.lbフmRu^:Nlie9A>~lOL[6?]Ao!Ux7-1_) vqPLGD ˦jP_  ƌAgILı ۧ&f?>/+ؤQg㑳ߍf҆QP,t:(HCw)Wo8y|JڙJPmRwTA3 p\τfɓwbl GA\,3'E/"w6/`j?V3X;Z^7 ?u `^?AnMBL??Egc:edKBrkR`; :T CF.c1)YiWIQ@ g\l߅%_ŸM^V&bLm4V>)p)qNti)AUf-/o"@Q O2 u :L"aֲhpP{KJ_CvDȒP' i"}8BQ<6o#l:$AdpsCmSVF~Y0*mQDgb@aIDXq.bMՖ?1WG'BQJ׀_//"۱1u(#ד9sP ,bKvf]UD_O\fxcAOetΤg#>U(".Q#ym!bQaqK3HTtÃB!|rPZ[ߢ5I еЕy^)3AO f\OZroR}5z'Xns:$fNN,X IՀ(00mA9^+cJeb:N#HqF*}5>YtH0~bjؠ GϺyjiR6POF 9\+Օz&&:}6XPG 1Ԧ'G@E(u ͠C/ʈ{ 67>mEѓ*-%c 0L]D?n̷g^ @?Y|2诨C>DC'ZѴڎ | A>Cr UN#ѭ^m`8gJ=P~ ixn֫ ojւHGOSa< E.hJ1{Eпr7Eo=L䮿T917X9̤{I)BK,ַ;6o_)oY{ 4T<'|- 6ѡl Pb?ufŌ˔`Wް9C寞o)p]l"BTpD&(I]nn3X iZ?7?ĩ)I, 0L5cas-nXҋ]yU2JJ1?4oVƫt9_q GbYHbԡ꺝N]|2+hh88B/>a^QR2śp+8L1&T2l>4 xaGI _O5Ppp*i266&šw羉"f//\ r0q@p zMA#(IrhȠq̣n0XiƎ8,pPOr҂`ج~"Q?.] [=C0Xtb;}b|gN0)a gl](q}t@ 4dHe с|c~L2V *=Rǰeul_l6H5xh*(͢< bI\W[Ÿbi[Q?.zM6l\˂ llUu2]KTS A9|*j]B}fLCJj͵6MGh`<}RS\rhI'v/U| rUߚFW0u]3\G(REc򒦄$5)bwEúz_IM9\FnsuN˨C0kX.Nq"w$&'jsޞ1cb0lrA.#/w`4Q>!a*>&t0 zɠ"@/w/_o\ xhxt鼱wL!Zev@t!$$'C If.zZf KԄxAىVah9@KүFJ! &1" ֌Ц?]x = %+UlkEOBwQPc{+Y%dB R9~k色rNG :LmjNx2}w{k,1L-.bc?KL-1Ʃ4OdT 㤝IgcDcQ_`>3]H(j Oµ ]Ґ!F 5ơ949<0V~BggL\!-2 J H)]r=?ڡsb5Dƹ1l [[ʙ:T6+eVj,73(-JO9rflopqoQ%%>O +'C8JO%֛bWU/T .uIm(.YWeHB#0kܲAQڞ#˸)vҷ3 N/0ɘ6Φ'M zmt VHUITiDSQuUwR<5!m[raKE?xœBIءF?.O;Z+ЭiUUwh9S.U @i2'T[UceG}i+":}i,*353[mj 0)xcJ:(\38"o^@B3~"+R~Қ#p՞Vc;qWl1{-ek5L)*eJlwUezú+'it)&6<ұðl[I`ܳt\n?_锴]FՃԉu_%rAdvUI,E6@6ׇW1Iㆌ4=u>B&W#ڴ^$,;^5AݥI3FːA!`aTi-5e9Uin^O%QG3db8uC,ijj؎]C8LB 4vfAL[7%x*e|eɥ[H sA_(v"8T9OT[V7f)xjE`Wtj\@f [(ix{: N> çh8v)cqvUx 5eaۡk ٰL:OD5*cۣ =-~tA0)'mƟw tz'YӖcw[006㵏tN $4q}2ڝ1xmU- tR-4 xWJl/5t;IE'LF TsH%X#|ǚ} +}Wo>#h.=T[hkʛi!ERK7MʎB C!D|7 CMNK{Lu⛫zar^HB%$S$؆z:$\NY|7>$"84'Y>B:!WǛYE.{9DIZGA4:IF23zwR懛zҘ&r8W!Q>NJs=`X3d_`#Z۫M>zXk, vƎO~c}y`$ 3P,%̽!_<:1AKx+wH+MsWweЛqdYJ!#JACS~'X Z"%UA5# ҃q͐ eR*=N_Rg 6k_FֈHrY&4s[jGKHDW)yuv:6 B7F U:q>9Z̛U <8:M]@[Z;]$:oHF#2F88BLd 5^̓/j>I_H r8DӅ_@wYi9-]ݓ8Z)o;c#={m-Rj4(e>kͦo#kѠlAjVWY Ȇm WABЂM}y#BUgxm|C,P7[/|cޫڰ΃FmnaAPeJ੘Ѥ_I2COYAB{rd ;T_Kf$IGn4#K!=*ǚ D,9̛iS72 -Ů&9tpg"(slrl9E_V?$[yD?>OMsck=69fg7]*]arA Rf0ф٧6Rg݈o_Ym!fS_1V%G }hu ۗQ#wr!Q5D0=sjoh Iq*Q 5 5E{9#an"Dq q\5:1i |@|,4y[ QoOfd#1qf,m XܢI{qZ;lYb0%'>7aa?O-m^ mC^m-tF1S`3:)Ѻl4咕ru{kDZMA=!|GDR?}aBx߹KR<¢ӆ ]> "_`Qn-2|&%C49@iY%TpxM/QUzfljۑW8iUI).~mz.9ʯ)|'_QL sӑr卟RbedGXv}});6?sf2[;uұ )Pcy:ю6AqnmHgBCDDM` "e˸UQ„+;c;ϑ@-2zaP!@GmTqxn)m1 Yϰ y4J ,d 8;)86lƃKI (ԂBE&=.$QQɯ:*?X $'I[ g̵Q"VXR̎ae7κ1̼QRxMK~ɪ)sӌ$BA2#`;Esx8.uQ*%Ct@\^/鸰H<|#{E[IB͠_>[$t/)TܧJB"3p#׹E /le/ql4?@5?C+n!XSM9 w:E@stR^}j8JH ֖aJHv L/ J7Fi}GWFehy>YH:bWE`BxV6-&>f!;*T;/}$z>kjcۆߘa0kK:x)iI)[HbA ޲|&z܂*^޺ּ@Zy#C=yT̘luMЃLU*ޢ;ɉj1h}rsP+W r a|o;\œWI˗aAD2dEkdq8O,ӥQKS踜zzxHz&b# s8Sv~L%yfq{({k[$'?NB׬PPdDm| FxquNΎhhL V̡Wjh*7+t9пE?"r h}4E3A:=SY%25W;8&H ,3Ĕl&R3~.zkȸ8.%Б{#Cewt? n7kgVvg$%FYI? {(P 11Ezu9g`3قWE Ӹ-: p0#mZ)YMv/8RL%YM/92|Rᝈ3u3-{u1)g:t3%9&knGL0qۭ5k?)IY,.})7>1F4(1+c,6@~Xz'_MMh0yE.ųjxN3o{;loA:bb"?0A[lK-4EiFg4_T^#\jYBmfvRx T=O֮k_;ŊRq t-*&ꉈDiGR~6e#Z2 #h<}% {ڶ_z|}rGoE3{OBce}8)A_DE xЛCtfJ@ H< H:l|pކsYpت]/=),_ l%FSEёd*EZkM[z7?N¡d+ kZ%{޻ NW1=3X8:{biOk nUaYE^bt"@jq1@u㯂TopR\LJU}U[{ӄ]?>5qWfͤ_XܹQ0P pvsB wg'w<0, i""ωOg5E (?ņsNmƝe'3nSGs2`FpMM2a_ۄA0*g{>TM^!"[A~WMJfVLȮj%F뫛3CY )ɨwJɈֽŎnV*mC0="F|d*z/X%Ɣ۟*cJ; -N`p 蠚p>=hjf.cv2]snRxkCue k{-F?2t (k„$Dx|j8/;f@yIqU5]ME3j-RlAjHɋ Ly.H>wfB_]"گ&+ӥ YQCY*V<WbcIBiÒ<3$2OroM)1!/ &5:K&*6^5wƪFC=bxc;ZxbGy%({ D;Ѳ5PiT-~Db%а*4C\ /Uhk!>ja:Rj 6z3'vMp20fF&ݠ|$dkM hӻozoO1ni>:"]w_y"N}T~b],#3u#RDڧdr%Ȭ)FFcČ)Su$ RMH?ׂ$hIRK曫J6}ShU-ױ➉ ZW+K'Ʈ3ywPM*Jbz~k%3Oژ:wb뾒Aqw?ߑXe67yEF5*RS( 3-,9شB.'< "9 HeJCÞ|z!P:࿫#tvP6Z:B=! ) d^[r+-j.6q|x:#|1a+Y-!owGHqj`}< P;pA1+ad'q-_Q~9T"Q]1!XpH0 YXQMH3U-qc`CGlQ@3[sC]SDo##;Lx}[QF|-T?MVF~t0"*bސ/.3)qV_!՟5?_BuجT V'Hj$IAB-^ʄ&e *;N⏌t]pI1LY>$0_c,y!}'ku Jo2Ӈ'~AK?lHV B| Y0tpR9lTde#3VZAJoPH@;eV@X|\_?K-{4 [f1a..II[J3I3X4JM|u(ng"Nf )Vshw $[ nOi;o]Q6|nUq됋.$8ZrcdNn'l9!>Q ^]#+q|NJ`1~([W>Du{skwE%613uw:'بXFP8\ځ 4ZI\L7gJA zߡi+j]7bٮ(?y;]#ʬO@M TWN}J_yH;S{ǪLKʡC*d {43vݥKnVգ' |i {O"hc?P"(s[c3V_DKdm(WdfX&1o%qR:ѓ7NaV}6 !V5͠x<7+%3 K UC ޴qY9%a0'Y 7P L s*0/-,&U 5m# 23u{uxo=b惞K LIʢ3c՟QeagG1 nnTemY 6;_2ކY8w[D4}on!s@ mziF_nREg yBߕq*M-p31JrR/'ŏG/j)TT|sȜ="=<`nꨅ)Hpl;#\o 3FGC~ӿ383a GeK}K/aiwg[jН#{˃pBD1kζ5#ۨ{ rphF@3Ӆ4d¸|_V)pI9kACE~S%VoUgNc6i}\)~F"|ZB:ZagvmԧR& UX M+d:Gצ7#AVX%^^C ?cs:>kv{@њԽ5nnpvDzIF r0i4PZsCh{qYɔqbyT g?4. O5_Чۍ>v&@ gcDagJ>LgmEk<;Ki-;18/0p9.!p^/ihrЕ e?7f@bqqƂFpG'#]p8^cǃs I,CKEJgtgؾp jo*yggP$O?j C>7A6;$t]W;YDf4!_ߝFb@Lp-=+9g-X/Bh1Y4s3;٠>ޭz^?3qq$hm-ic1a(Dֆ \FR!<M{Fc* Vgb]~imGqgkK鈐4ds|yAf) $S9X%_cjbf_4Oú 0%?3^LA yqO6d!ֽbى! \}>*'G(b ;Fh?}Q]P;qy`T:cl R r|$ zo&s[vAV*-;蜚F)KQןPNt4Mc^jbzJ1x63YiOn ݧ8\KJ߹1RdLƯA\vƦjI4[%Q|ڹn0I: s/J7D<^9pd ^?ZZ}@d?j(M _}LO1~ڑPpIJ4(kzMT3 7B9;6l4ZkVEè͉E2@s 5I|&AuG@/`[\yID1-\T,o>7 QZHÙr(&9JAL:țyh]!syu/)V9YV(.@J84ePH&r:'º;l,߽,pUnmB  6zb "sZAko]_ 7SV_^;t-J/Te T±@ ]#{)cL߇  `!~gyHct S 3-NfP ()Dsh gEH+ "d )}QL=stU7 N ݇zf5TDb: d^wY=aK-"G5k!UHifmׅ9}Y07䠪Zm8),9ɟ4cWݱ3Vɀ]D]M(+RaxpDNwY:Q>հnQ\5^js4בU!h(b=jYnm f]1b#nq&VSO0'ծ-KP".EyDo]ҧ 7u7 vI[N +*AKfUEPӀR)oƴmby8Fz4,/1^;8x d!z#Lg ϗ:x/GCOu~ mniVA5]ONƆ {pB^A-%"uVa8n [h2eO&Xw-JG` Go`!![MM #0pB tW>67@ZP ġg9b?~W Gߕih)I+3oAܟ c(6}1,p u-CV\2/h L!4(,ƉT]IW ?˽;\?lBrw=Љŗk%>tt@~Fŝ}!$n/#*Kő;;?9AAρ[E^/P}~*&n%$r&/Tݥo( [k867 eO~ؙZ|*,363x^ kY!N9B`9y]tMٸM%w:CceuN㊎=!U}bw-"dAۻiL?NS_7pVY:s"ps=VZly)5mKTyX{Wzx@_щs PR$R$g F1۸s 6+]ZUM#ͣemQ7|0Wڹ&[AW +SHR ?*.Px %Rm{Vj -O>ĭI$p|Z65u..+mMkMo`)S~8<v}pTIo]ٲ#LܠՄo@:[M]ϿcPƤLYXtv7K/=Fq7͠+Bdn͌!c JcqA oO/zjON٤t[0T 헒|+Tc 7؜+< |}G-w>2rK/(fM(QI}`xaokB~v@,( ":z")Ã6Sإ|Uoy~@1!c^`6K *xjO7S2j.PX01Q !{<TF``7Z|^9.3Γh*oQbH{PJ{J $]@jKHN9cY%Z^oVZ jpLB ɤ^)c9" N=>-}Hd|={UP/E泷&+T=~^wH 7%+0=S9 6eX>:B9M׍+7" oWl-숎HB:HF x̳8S5)&9cyw=OU*PXnQhYHƻX9/jzg'd7S ݝ pPvR$6uHZ+fAU{J`ڊ:9X7X .&XQn&0}/;вP /E3*l=3ؔo&}ЈhB)޲C4+}+Ž?K""}l/!%,od(YAnDp)-RG5 /YK0:c=>DV3{u>D6j?!Ɉiꛤ :~^{'O7 #oÚ̇wg޽Bm|0lO_k~I 0}lEQp/>z~| p"N,+s]'R62ޓ5gh_g]f$f1|f7[`Bo Ҭh_cBg`GQڃrHS:uޯV76jx| _4WRRH{zlր>B֦XK ;7}Zq4FzK 򻝩-rkcGKkQ? 'PRZ~{It<+:ͳT4oRLN6NCO-"HPjNpIwoTY\\@ ɵJwPqH4L[fb:a[M&Gr\ 陔UFd_ܵ؂(pm{{3C~#ewS.zr`dYCQI;p7(x34XqRr^ AúHP~sHa*縏FFȔ>\X{wQ.F헇߽ qlVѣAM8KDB^niD&h8~~yqHaqNhqA]?!sy%ᬛz}V-c>8S6զpό]a!16\b!,M&qohM虤>'b$}Rr9{5\Y~l1ڑ>V"OQ̍%\.HYRGlN,|*c^V0rkb.Hf6|3 Ṯ[3\r, $uaOs+2(M$_MS'`5#r~P;3,!;4&s$8pQ.7,Y58 +@0V)jκB{})j+s+\qM ?ny.Ikt"ğE9܈bm11*dm[\I"I58R?~-rct0.|Eyf`w1OP$ 4eo6Cv,1@+ XtmX$pȞ7SޕF=7wHzw'8P _xc7-$oG_m"nc.}x eBj 8.6ǘPz G1D֭QDcɺ ")?魾|rvW[7, ~)IiUeGo`z "i^Klw7?I1[NNf$IYyF|FRO@m1v_8& j$C-(| +M zp,Rpqk&${yxyG$Y<ʚ˫?$cK>T( C{AXҾr)xJԦ-*]Bt>Z%M!։amڌ!mxb0/KU fnlE0W{qO '&@#rvdpH}Kͻf` .+16zvuٻ؅FcW̨QKTueqBDDN~JHdBp:h+r jvY|aN=ƺ,$)~coG[\yh1 0M~|ݶB9u̮ou?9lytlZq ?+L@1O-?ɊT69"oۇ%6<^Aow`4I~UcʎvaJbe:#*H;Ԗ~#"&^x2VMWi4ގ΂6h [UG×7%_ijYAdvusT)esO/olts$^@zbQa0)khIǩд+Em%bqiՠ+u.:դ3m<=Ir߻r0ff&nR000 -O噛Kr[2ӛ-&M >YMF ]gFg TDYI,+OsMlhٮOVck%, G5}M2G8 d+fUS_.GL Ld+[DNG9`vzz^l4Yt:VdJS辚>ˊkuW1 s .>1ι~^ T?sF[/7ŌO֩72h\9T1=Uc9PEtj=y fɥNA,;;v{kn N#ZgaSZ= 2m\Z& cVج! 6TKi)RKӓ+~Kd%%U.%]M;0y"FL3,)a7i֠5`q''sxLO:Qqp nB=8G~ Pn K[]Gs} TS9> +JKrh?0~jщUNFъ 6j9բS+NhPY\1˳=V#x<]ES ٢Zm,]sĮpd&ηr!3HrVS$umBj~m3c0nwVgaYnn,nUbݣ ?oER8$R w"aMWDۉX'vI+чPud>6ܦv%aQ8fx_Y8.Á.͍ St}y<hn%#+H ٤7jZ8?{x;԰Tz>Pf::wHm7)ˌ6>w7+!ݢXVB3@Ðh;i ٲmspKF◺ H<͌i{TԺY{;T?lȉL_ӌT$3wR@H. pmϰ^{=¿x\*ulwR8CQU۽&cF6\:{UL8kSE&KTmv/EN"  zKȴ\k&aחr3箅۶nQfbpZ\u}gdXLz"[ӎ:'sj!B*XKr2% 1MdoΪ[SEWZ%RG(@zlIӪf}9C]u!$NOA/"1fZJ66G{&YmZ5% B 305C=4ZmbPӇ,Qpac: C yzDoaF4=Th#ަS76߆P,Y7&L&jaՙMź.^:'ncB#w㣃uh xM|=+\ZxC +A>!:uBooF*ߏפ 'KL(Fgж_ .tpILFG$$Q= *6$3I^dTHRv_~JVo3& 2!?n'q#J!;g:~ձF _'UV@?ǒ{hY2 tw[,:x#aI\m V/*3ɞqat^ʾ|$Y*^z.?0Zb>|j=c#Cqt.TAW1cv}a+Imyxg8 jmK ]Mqv@`7:`&r7DCOb20f \Y4D#NxcQ_%P&dA« 7'+6-VuI7  -@Eőٌ^$aX8IMAMG"FuVEyMlb>};MiH.ei~ذzu @OȫB>=I q(—qiwnV ѥ1Uig|Sv^&:q Z+_SUhhVǎP!3PAmd lKG%af4%QX5-a凰p/},_tHIG;]0iG v.x`A{B(Z"25]bcˆ煛 Ͱ'jj %3y 3PvĊRLu$a?uuG:;C@S&YSdi 8{j+lj9\;r`M׾k븑ٳ5{`Ԓ 3rJiaXޤJ`=ޣĄgxEc${;TQ*yK0v,h"<U7m׬ pulb.gZm"՟M`smRڀYy:3Ց;7w5[GOlS9y{ˡm,p?RC8}Νլ -IetMy -މyxwVaeV♚ÍQO{NxS4YT$EHݥܱC-?HP#c~L91?#p3xyzM;-J"M81]= DQ );pq29J :J{[9a)ao(.l#Wu0n}ico\[`E0R{'zCr7GLϬ ؉"wէ;(=;QZC=iUn{ ~WHO?eC@il0ᭁKV0 9\֊!e0 ȭo ވ͏I@%8- j *D`В]B}G>U OڊNL/~Asv{S@_ciS13112jέ³hDMA7|忇r;Bw GWb mU іXin$RM){{5×ʳM>*{T¢V7z}ttYȨ LvYz? ΃ڼۅ|ډ v|| :ySezEQ%[8/:" -9}d2$#4﨩u~P5>aE\.\q(*9| Rt#΋#|AdW&,Ldwo"w\`Kv\ڝq"bD YUa' O,ܞcFЩ &$#c4< Uπ@J%Φ1CՎ'w=Be(С}˦a@w#*(`{$I;f휰8;$܍CkJh|.6J (B4kZAXmPzL$MzT'rd$}V{ݻɱy4Lxĉ=ϋ3H|w}Nfu1$Be9%E ijТ#$e2SW}pFB?ͤI1-nNWҌJQe,tt\nFcZl GYDTj 0`T:WVyF3P?W3ƫ%@Ӈ [6GuJ?/y@5{O((#gYܷp/x b0FQ%<.zE016 $x?4hA?z<6Q #O­wɑAH^E?(?f۽ i˪fQn(Hb4z?wʹYڥۖ"v3hN0F_v*>.~ l),Ok +'Ħ#T8ը滊-BS!CsI=a[!3ڎ3Ig(­¯]Y8m>wc% 05IYu"͘D*|AXq IɕwIE6 b\x1SNm6g:%cWA$N|#l(+ ! zZjn-*žZxdca"<;UVlE.洊Q0/ \ >Bbwg%ޛ ~APH0WSq\¿H([)o k:[S|g6B-t?l7z+ ƌw̉ qd¯bLJؚS/Y!š2K=&C55&ڛjmM9#7jT\IvD/c, R;X>Y v.HծGCڽ\6YwЂTȩM;310KKB<9|J(j)FGY*gjG(Z we=M_>e[-KWV6vz:MJ->c3Bs'$;,Ȏg}x"iکMiE--iѲi^۰ qY/MSK!IkݦΙL2Qf9m3n$ (R/Aۧ!$9)zE. @4o̯T,a§+?M'&j'.;c*ln3S5XӋ|hp`z-"֍ө[P3Z-6DEDD!$]kS)/t^Iw4esc@ 1k݈<Uk\O0NHrr$eFd|{O 8dd3>V--s@k)1_7Mj ~1E dI0۔օ7 hWWrԬ Hp#K}R˫X-vl3xO&t}&/):'%@ E*\"S94YcU]˪QPPغBUJ!w0jesYvÊ̟kwdF}v~B p>Jt3""ٸvCW(ˑ,:3\6FF'K˭3TiV7aLs2N~oSCϯӝ\_}KE5dӾ53AS\n+2& )p-sc\30c.?w j)0)ؒXvZjvLPK5Y6J=5x-C7oWӒ&*OK4'u [Fg}ԣȂ#+VBU8.e KOH, &7Yd:lZ[ XP"[RgGgv|4`N.bHaסuXlmwh)yv@hO>3޽.'f jS^9O4t }v?fNjNMgs֠â̈3 \cepQ- A;B٭z}J+=߄:=!^h̀k:#:;#O@q$[V) GĮN-_ ٗ4 ptBYXr?54'ٵݾLZ%)iA|ohv=IPos~j%^Ҋ L#,lX=AyPH$ ؛AH"(+Z;W6xj-p"V“Ο%rܤ:NjIY!F"uH!~(toHb>&j!b%N9 pݙJ,m5)}6TKUXbbvTcن߿8p8c>]ƵUlF#Cϐ)ǚbd[xt}x CL>,x []%i|Õ 9Lj.>RhAF ]4m7؇#qI֩ptf+ )XY*휘KC'Rz HJ;1bA~ibOEe8D`ʧ'"s`&SW 6RP=vTj x<_)\6Q2-I^bcGYb~==ՌЀدcQMa9pbb%Ð~IR30(hλ}A_ 4RPs|38@6Ϋ mMک"oIhRڗc/𝾑~*cQ>Ŕ<ߜd3T4`>vzTI|5ZW>!PhiZh"[mwDp˝(/TN]h54n%12҇-1 ⽐]&ctx]I~#Gpz+)J_#q(]`;U{AmI[^]sBo~n `&%¤K7[YFWjVcƟ8nS.[rRPI\B N ]RfH8DaBː^chB5E3_k{ {G^7F?rÊCxȋg7-;HQxLroɀؘE\گw2"hYa|7%ON!O2; RW I>hX_Yl4 upDV4+kXO~#]iy6F ~Ag@IaJEIbL־ 7cRyqt!s֫22m)S2_=6UeV042DPL5285kIJ?QöGOk7|k'pQlN&\T<&>HN*#07î<\W%}HǗ0`W[CĿ͚T@X|Kq rs/7(Lzd8U*/wctj=Ohcݴ xc@P5ē '֎K-טֺ (hYHAV"QUKEjwHה{5W_?b#F;:k3ε^ `CyT@i ^ZB}i,>2);#r DaN0I6$S?Ծ[K./$0TC5;pǬjO(5dVy׿OCƹXܕ͌lّE5+nAAsv=UlƑ}{bT|I^eޙeɳ\~Kd]ubTQoS@9]vbAhd9w{ j$퐕,"s-+U gP40'?b E|q;%tvBQe:aEk]ڑ|/:j8Z=! -qK ]Cߝ sR "/N! VԢiiľߤn0?o~Ǔ,G k/'km/FnjxAM .[ X~qިtnvh9_`H<mPwE3{<fRӍ(| r1݅)FU?sCw ;(#w9BmQ?F f!mgYvbzY3|#%kk"IU(!d ko$mۇ$a=`,PB=uyJkR7]Yi)9 mup?y].љ1}͸uJ1*mj*8͛jJI|fAIo|OSm pnF{KXNzfLj~;b[ }+&[qy*av o[qb߰I ٝ$->;:!B4R">.*"uTIxKnKs,*ɋQΒ)/` v7/͂R"c +/k&Xp*]xt\TI>UgGX}c:m␭޳U7tώZO@ApJF2}ZI)r3JߺBH飦_)/U P Ynke%a{t77xɚICy`OZӳwP>s 4чJṭ?m^P[<H{7}:s?3iĖ H༊0[|4 t# Cqe.F]=5ɸvTG-7ޙ8n&RQV I?0r=.Ţm,[>>] G :ԛs(%MXE=A7SC4Vj ؜>tNU_t0ei#,Ӡ܀x#PJJc"ʥ_Wᆵ`/Ԋ \Ql0Ȅ) ݀G {[o0X@8 X39ybHS9H ?8C*1|ɑ.R&1yPôKF B :&1gЁJ5[[3H˟@l\~`fRUo.Q^We`>rӛ҈AzH- ;'NwbV^/ C=L'/胸Cy atCHP%M֩W#Slm<(h5ꡢ]JRo8`{a΂XCQ bNG'ԍ۳HiMUjt﫾iDw J># CRR/ЫZq{'M =F#[ $9ܖ8 Sc1Ŀ"P^l;`R͡5z|lT*5RȀP]Nbb߻Sgq  Dib#soBEd. '՛宎YYqp&ۯ!\-崴xi)0/A ?_PJ"kt|:z|`?WEBb_؋|"ů =МN6Y2je%џP:<YS-,Ny䟃 (Y]h1nwYt@'YdH?bD L̼1^@`Ee]*i877 ύ--6ds5{`[6VTVAGcԔ*#C3Q8DeNie-c#lRƫUv< e[S{򖄄 gY% W4G ZV F . (+ՌQ-%^Fjx甫T:6:Hv-ViRHп4؃zpDi{d-~Qbޞ\"1 E\da+$nOxZ ׵BߖU]/WK/ ~Z 3ff{캅*ѓb>8 T_J&Nczu<ɽGS2iǺ?c"B)"}2 UM3R£Օ|n5\0tz'!al}pNfDo`f%Dxx3F3sm K2Y8iwG'+hDQO"57At20AnSFR䁦A :ڄ' CGtkz0@Rã`BD؊&n BͿQU\Cr<֫hzS! >LEWa_œ(?F%[[Y#KxHSgk ꯏ~bj:RFDہ֟8h(م&?`+ڙ1;:t㠺IsaP(E¡aRfbսn]y`r$uk?K1:̄Lڿnf& fA0V]z1ϯ NR gD%l6߿ﻄ7S!ܡv?.28: ^dph ]g$nT RlE՗ ,|"[s<214n/X}emLX}k[WFe1l; LNc`#TYfLm/uKFFbgP?צyWj GD!EgOlTT!;CRѝ[Cgey|&~>&pUp&!=Cg_ zVAym(kUrV$KdbL[W;Mgeb@oɖ#J=O>*2 z0!tqu#+<>0&䰘 ?nrf~pˆyAqq]FqR1YZ?5֯ 8#rJxcjL-g;˘Ol uD؜YUAT_{m̀@ob;k;( xT> uEQN3\WDӮ $mlaQ#| Fm'3bM:z?ex"x,,T6cs41:u?n8 |>|^c}WK<ϡwϐ f}=aQB{<5raM Be:qVae(JөR2.8epkX?J:>Zl^ R?|=oQ&־(:G!O;'ͪZg@ɝ{tZf'uJ}U 0qnEMA%.2dy{\Ncnbq(Á|=ZObG-Hm0}i6C= Η9<6kwKQ_YQ.6d$d p\]' Û۷$>|.DÍ3Pqr\i弙lTи'(pRN]5f 걱0(b1JB2H.6X#gб7_-`UsA"|؎h||,WhIa W[@6-<q(P<1n2Ht=ml(1TXG98ezR֕L91 qĨW&m!AQ*}ZLG~qWØʈxYV,NOq#HPdB ~ M#d_ ׋z "|db~2}N(r[(}QY<PԏFPFJUZe½(YCK#H;Gf(QG½^ ߶JO*{JgoO7 .!"DZo$D&dfXX]ggƛ47hkɪ=4ZF+%ngvWE%(YOzĀ5Hg츀 VpYfhF \,˳`+x6@Gceb*Mۭ @Y3_ "I?kӛIvSU]GܫCRZ{ژ2(\*d /rxqKtyQB%+P'Zn*C㜕ĤqβQ%Hv۸ <"!GX o7sC#ԉĢchl-isuӨwC@2M_`Ш<#<>=:JҀEc['uՆJ[Oѥ;.|U/M`>"25+Y_w6M0:4|E^^Oខ35v;>:OnhqPރdśڭ5>G^(55Nr":lEHk y~,9SIEdJ\If8 t5iUau2d$ע'B0n[q)bRܰvt'bWTB"zE Bo~5O?_f넜W1 4.FI-oT χpkm!)p| r瀂JA/[%l) /`ƹK?hM; |r% |2s:(F "ݫx-ZZ,(zFh U5rGW1C4ў%QANiI~ܢAؑ4vKl]sa~HIŢgUY_9QյS)[``aC<ƀ(n)ZIU ݦmF}YTq@ ^ / ZN#գJ¦X̃9^gT* y)|\;MJh30{m!m6G$ކt1qYppov/KVQ75IpXY4WE֣?zbڔRЃkb;"^̔NW{8j @sbt:2f9h#3kA[c#oI\5^|; Q{]zTR$Eg -%^>R{R|XCa;Yu\AÃ$q ]i+^)#ӌG&^Ȅ V}6B H{6㘥M^$X"]t! Z; ֲ0܁ ɦftLmrAƷD(l@ ]#9G  Ëz]!iN~&|!c~ h`ʾ9 w&Q#4k5-Z;]Hξ_dXވ t DőuM= `ƄQ$բtszl`]NGQG둨72/iZC=_!*ykCUMRV)O'',Z`6^<ݜduV:w:My{Yzf@C\h ck䠞;`!󏲋&PP"Gq P,4ɏ$Lǝz ڤWpWcѨ MkD (9^DknQ,HW?ItC4xt}Lw)1D`@w#Hg!RFWh[xQ%]1tE`y i҇3'0(1Ykzh7~b}÷ gw̫-}I8x@ Ăn F<)MPL‡H׼d9L=-`i #>e]#-J Q4'so8`jU?B2a`z{+@y#oPV^^KSʦt؍s?rV£`v̭PUx2GwGU 7GI񡺠ù+-d0ܬ4x(]bDzϱYe|a rlUM^G`5)Ŋ)F$ NmP+!lCV(wxƬ:M6*v3S 7 }QW>/ /ɏfZPcGu=6U&Cq|Dݴ/ ĿKuN t{4zxd֌߁\ari{5%{U{MC|"FIԑf^ Z֠^/$"{`U"_krZSp@XAg@?pF qlm64e0Yù={8ǩ`Aqzg>M\M*1@Њe=0(#M#;zԻm傂Z>K8^O8=t'ƪQ yƔHE^4.I$MȹHM,M:Y8K=:YئdR?qs8 cKCኩP}%$_5|6 ؖ4avbl̜0}|x:xkP;(=-B3Ň ꚅzF ^BZ8r}YIchD6efjx66,q#SjW=ƇW<ϴY5 _;kigKx%`=XGBA 0.. q[+dY𜺮4@%M$y52mZr[TaC.EA_|7ƏL4W]F2xHߤ5 ,:%.Ꞙ}C_TD2YNųus N\*.!F9x``8;Y&`09vҵZX] Ad->"v碌de1PpzwWkTe @PjYn6 QC|𲹈 `&JG8!)rGFO*eFKȞD m!,v[4BjH X wLl 'NpT迤 7GcmzA' 'E/fe$&lG)Gt3`*V,"0 #iVaVb!a 8#);F#EENέYSGZ@Tx4L.K(TAnv_ö> Xtz|FI &rUGdmGZ:CmRL#-}E5I9`ȐZSx.=pDX22~]~RLl[<X2޸,.wO,ϭ;_\H:rjEANF@*s*ԔϹ{ :EfQl +;Τ8#KE(ey2!S}uFo2ę67+xg9Z>QU3|8&"s=;$7RNu.ijtkf$ө+ szOe6SY*^#Kl ,ibB]OFƴU,2/>p~$*A \po#?- }F& v!|KI9΋`PoN,#Go'EFD@'-U$t wLL\q0XY!N)қ_LCxeWѹ,T◬^̩y|+`&48=@6X_NKM)>Q3Fj>>|Hp̐@Xb2,S\wqnHuJ6͠BJO4.CWR#9NTB|'ȇC <_UN@6C`-4ƊX9 "wCaZYsUv+U֊Q9SQV:gvE\,?Y\bVX2Pn{oϖ1SB!c`pX}!Ku4y;B'\ Ќ'gA5`?VES7Ct416 `2eCET۶k ,o$Ťm Itu'6:1R70RwFYՆƻZH}t !+;zV?gima^d+ bѮF[bS;]ic`C]D;)Rhm%շNxp &K:*C"jkńc\!ίp9r6d[Y񎰻ˏډE3ƦutK1DfD &R-,@AZӡJҴ<J_!ߋ)S G|h"./HM&9+ D)Wj]PlG6 +%Nfz l'i蒞}Y0>I~NƠ{n.X*KRal]ߚ \'H#Qa!w-!;،*b]_D"abKX1zzS'q)e41_^&tv$%*[bvi;vߔ/{ @m^,[2$2EQ\TBбTu2RPn_҅Q/ڇsCOz0ec>OՓ#o B|7t"pBņ3I;,nDxQ'",(Ws=a_p5@ִ ~L̈́<}%%r\z/)}Ou#ӣuMzT`_f3>SV<~dqZ KO[q&z59)alYv0B#[ ,[؅;o [)aԨY_D&FDY_%BV2]),A"L< .rr[&^ȱ)GUب:?< :$9/]x15HuO DKF37  hC'=!7|w̧XlA_YgVc|1aTJ\z^XT D ](P+hYTԌ.o)XF! J൤["#vL`VW( b<5D/!a[c7 GB !DxCzp _/ga.Y O|Cbd~qQ2WM G1tgsf,Zў,=X7ⅻ^rS2?B]SAdvNeOو'ބk`JlEfDcJN3<e. !- VKQ6$L &:)(~jF]쌬eP,Y]Y|A4>-m'P ul #ʇ/:7m$bAvP]2Gֈ_28 Nˆi; *G5 C-a2f?46ũ~/3Ei] {3k! gҢ)O`-<\_'䋦&|zy1gLg'2SdY1#K$첋/.:ՀGZ &Q`ߧ/rG$Sd5j7 V y`۷5~a: #` rev'q\i$^MP/DN=I O ѡgUEJ_Ԝ78uDڱMST-\j1eh.?};uoTK22zE^03-֤F/JO;V8(>.jDG,]&0D 8 .d7T8L!ӇzqnJel6WePQ\) ri,븍[ٰd&BWÌW_2;22=/.K%N70Yq 6bߒH9 nNW] ֨R&[} #GfJ=; zns݁7M|ViWoRp?H,_a=O1kn;}f;3S.V$γ*w/gy\Ce6`_j+i'^c#o`V lb%b$WP\jg}U#'Tow0,,v}@ p:'ѪL1OU <;2}i,Paj3\}mt(Wk*&Ω{fOr%V.v[8:2n-.?.ԁTz-։E5{|s\6󄵖$QP^рC=?VXA@($C 9M,Pd_@?@n9} ,ZuSR}N> c[{"y:PG،Q}īժ\΁(g5.~j" =J5,z hkC K\;&kQ(/^=5M߇P۪aP2/2BK'm.VAn& $ZI˵ G/L&u| D%j\y}e ]rTIyXcbMc3NͷUxRC&CTFbI.U P:u1h%/GVmPMDLГk1/J<\pa8ߘ '7km A (eiu?ʣW2Ȯf"ƪe6~;;?G͂ߔi,z_EHd~+JNP\hu'D[iyK|PCO0Mc6_21&C\I_i(hGU|'<QyWo^q'ॴLj0p38i.JYF0V18Xu]-km` 0xE+k,EX^@1چ,\] 1X3jGTE]sH}PH]w ƻ-f/~W Q'Jި@\yߜy|B,V?E PaiXa(dq4ǡ߉< ?5Ar`ZV!+ܠ OiÜ-maa ;⁆(:U<%Tpg8H)ϧ*DmX =1(W|JyVh/q-AQ|'Wi&dv0V3b$H]V|Rnas@3/ ]oS2`C t~/t ('LkUS7)Cz E쩈<_~AYb\Z,J?#XOr̆.Zh;[Kc{aV,<";xtt7Ulϔj$- +5xa-Ʋ4_p X*MhZVk+A Wnw[4'bHBn.؄cPu٩T?3 %U9Cc-ͳ<0ܠ=Jxn- $kj2W[Җwlηm65P@M_+XPnPUT:`boaX2^_TŎ'a5ޡ!ZYڍJF(t|U$e^#K`;6?~4CiKQ-[A.?%7l1SUbk^##Z>&  َooAO8jΖvy9o#{^&ݛit`8Vf:x^zaD'k,%`74m8E(X$Dd Jq2cS{:Q#YsNQcg bPIzmAX-1ߣ?X1Q\EPSκ>4u(!g,%nRZR\)/i!xaι ,>XWgjȞ3E:}!,`Ր;ĄZ'^:D_ABg7^]2$WЌada&Cصv*^ݹ12q&xfoSgL,cL<͢:5QJ, qu\.3Hsɵ1ym9kyJ jMB!77gGAAVI(߂J_439Ndv'ufH gEº@fs $v]}pYA.um'68([^I0>.Ên6,"+Ȥ T>wTY&Ȭ%F>k>^GL XhUtse]yeW6+a ]dk^Kr &g0mf:y<rwjJ{o1ᴦ4@o4N{  t%`݇LF;,uz n?o{#JjW>M-u|9gՏE c?Q`c3KsJWgD.ߵX}`,̇*"#kwR14_rwjw%=ݱ/F]_n$ 7*yJpzSW?zWvĖG78rDNHͫ/x$K&; C;%]G%p,Gw&U\sk1 2/9_x ) ٙ^T2FcgZ*] v,[XFZsD؈1} enFqރfuU:T e7:_ms:Q=-~xϏF ]gNɀ; y'&V1<7dtX5Z026n.gYT*ixtՔf.;Wؼ9TTVMOp}-4:3r魶ȰNW,8(m:tQBɜZ ,h5h:b;7^EgY9*E$nA23罚o)P+\Ji;$~z0E_16o[j:,Wf6eC),?8/5a2JyldF[5vOЂ|$u qW&D\_i{ui$k;x)f&zZ!Jdߢtm[1Ltkf*GnskG P[(s鼭eűEs#%:C[=O\O503ejˌoJbt}u r׋ppF"|ܥ,< i4y%lepUAkّ )Q^C`g>A('MVO}{k+,Gbm%Dxu7wPؾbd=駞S`sxӒeCO\E)H. ٦SM{ΩI% aZG@=])n 9M ߥlq0Zg8;Fݔ#4׽}& ͎#p^."ŠdžkE:9(äj9kZG2p.= R36 L+'[\^q)g2eb/D#;uRO;Ȝ$.%F&S 86[ikݪP@O 8'F(θN:rT'sQϸfbۗMioey`@2.g搊;du^r:{D}P2<dI{Ff\Xly9\kR˒]&;jֹ͠278; q'a%-b@+<# 6\йctj0gr9Iht<m 4oQiRGY.|F0ꊕ H|cy)GY?IjE_iV |)=; ӱBr[FB!:"U0k>;9ȠJxI'(_4|Њ}sb:qp4 Wc40l dx a$^k3;ڃ8mD ɡJd5#S{}%c8Tƺ?KTۂF|$V)xvIǶEQ'Iׁ:!)%ϸ*pgm`OJS`Nf&xՙ݃܂Wg:X<$b7+j,- I* Kg6R7g~#J^)895vEsK޾* G8ĐVL9A:4ba\wrIZ̡r.8|[:iosm{F^%G6\lE519w%5R=tk>-.By \BN˸qm'H ަ\-Toz/R,#TΦsO&XaBc RH7uKK=A5w'}h-dzNBTZ/&G\k$o&`Kd\ݷ{7B]؎HS&g!DPLMY~Mqҧ_(H@et/KFM e&I`..6V/I\aim{UYRz5"|Z>KnT`cdTTp"ނ6E1!%CBbׅQOF:Z, ĉQDkB$KPЋgsUiWN@ʹ|4dQ⁸ FEۂ̆?2@#-˱zcd`Ln+oȒ=/#mW#K ;z1&O#Nܭ E:,,Es+_Ijx7 Y!aEm'NIC #s@GvP !ha΋5._=8KR35 1})l5hWAxY4O+cfQ_r2^]r)JZ Er3% {YnԾ 8-wzE Dq:BlLǥpo] D߬ޖ3U\40L>LS2yJ;aExնIƢAXNpe/ٲa5pwdПP_,w`hIP7M&A*V.X]5ЗE'>^1uCtn5ԖF݃K[BgvF\3:bDxT@ s$9|0ACv̧.AluqR"P* zXE͇=)8:Uk F<c dbxRm.;K9A!^-[ bT$Huːoك~YܴԔZ}Xgz em Nz{EX`;)i`~,.jZbn,VW"[ʘJkL~rZ3d7gEQ *F#KoBi@s6J܎NB&W*\:y[w4\K]inAfz!X(2U^Ft)d+yQ=EFKՀg1:3KjF;!vN?JVz R!E+ *[x&s|.|f_#B7B*lk?H!oUc#f+D)A0% o1+hC5\Y'@]3oȥ*O'H|@>E3pZo DJG|=40Ob\Wx*HSlOHfy!PA7\XܴN5|S,Xɋ攌XBRm"+eHt})%#v͹QO;I6wVNZXz(1XMiM[Ndѻ.߽|濘ZJB\p#FѐpNn#y X '`x+6gFVKSnZM~kcGaEtt`qu0|Ck7ɝtg?\ Ttt7m\3,˚{$QsxL~^7"6Y3jv=I7&X2(l g' zܠ7o&tT2AA mt崔j}_^ >Z N %UD^GWC'J^iEjl(&<[>kNplGZv41HJ3e_Vjԅ')Dk1$+e&/]S6S/Q j\yv`E % nv׷w[n(4WoL֡nwpՂQrBA I%f Ɉ^ʈH9.FHu o ?ۣwH`,]*ȸ'CY^uа؀&h:!D߂lxpl*pm2'0Yƒ /7ӦƄVHR#B;א\_{k K\}:m8,biFܝRvQjvZ쿌t̾mwJ=Eۣmw܃RNXX[ 3b3_}?2qDQF l3PO G2Z:n!k2x2!eJ JSQihefb> bO3 }V n[dS`yNpgx0 ]=o-Sb1윌ѾR}󔀐Ęy3<Wrz{"'e2xqiYMKΘ *ڣCjeC-,Y(]ҧEϿG Jl `G4ȼ~ETQJν\jC|1b1foTŢEQ Wm7,tAjgGkM|oyް/4k9=$ xG4~Li\ԏ [򖘽.6q`n}˼µiciHbK|~ܮاQ/Ĺe]Eyjqi=EpxHsPXy}!:̃Q+wob'֚m\S%pK%LeJe~qw/ ㌉=Gg0 ~ 9"{fк.\R#cHѭHjlo 7GӉ:Jg\ES9jHNiRB5[0p.﹎u!a}a!]YQ&[pl3: m+C#p. 9†Lo̅Nݾt0a7D6T–&u.&De30 g/z֍9آ"BQD`!U[Ֆ-5#Xz_롶#n'0o3 X9a;|Hn .F3qb(oG@xcAƨ^ai3?+ID#s^&L˚btK)SnIa*7Hk6Z{8 h\:)Ϳ$ haٞ, YBYCt]`?:+CQdCE9ш - )cU'S ͅKV^u/놪8q8 靊:<}cੴ];(V_Pd-"_z#u(i"+p^ gM5[ }bLz~P]M@ p7HhĐk(9(L>ӷ. S}Rzh3Q^7kC1[6fۘj6Mo/ìCn:4r!d{aT}\b[`R\e1`.hKAyA$K ZPSR$vE_弄;nG5O' D2{"3o5ӿ57%P] JF&y0Az7:7WZSBV ʅxt = ŔG4˗-S̅+bjdaRugsbm4k{/gB.}hQ/r:CVz1-Ž(eS{!IKŘnc5\ !Whl[l-Q6R7==S3`] <= o p/{>%GZh IYf +U>(<43EDZ^w'O }@+kدی'fw|Rכ"*8GK|:iF=ORHN.Tu;{UZ<;Ұ.SfZ'˹LP>,|3ęzXbN]\1G({giȉ-VyO5g@/2"#E_^FM{_A4h]> m7] %mZocj9T5icM9bodgj9 8r}zm[ x# PͿHH*#$ 3.XGHLjcsn !^ptf޸HZLKFHC%:(I\wHz$j ~>Ewe/Z`{{C] |- s .茊+D&Xf|8Z'8~qw-7y׊.˵iRՂ{VP,nnN0oQ}ե%F'}ҜomO ?z~¤ G=\~UEʦ<-!4Up("3ہO σTq~GP:n+.mSM\GpLX_: HMIXG%a0Ӹ$%'3(xqF`m/XH>AKS/b(f;9η-!(Z؏Kˊջ-H}vhߐ6:+b|^嬽3[IP^I0 _ [ ]8sO w= yN sc1zpkSV7Wл|xBbO 0Y?v:"aZZ4ΗO\%GqYF"+ vUs0pTmHNJT'_R q#VyQY™_4tac}::a;%CPH``xh P]4PEe;;|t7D]O ^|4 QC"ϠDotp]ITxK~)<);a{< zv!%d=dpt:.6I >q(b-Fby;7$WBGʮ&Ab10J~ ѓø_֢~8Y#Ie0O*-1[lR}pw9G(R\4k3iTXfL)4K&k*]3_^&9暈˺#i@J @7Tx5Ɉ0:b@NR`ӵd 4}U~ Q:I}.%99дZ0d Ζh>xbhUX/?0kCD/A1yqn_g3!E >S&5=sx_eV]~k>%KBtki,KƉ%v:}ͷ}M-*V1żcAL{eiTB* gnwJ[p}}I3Z=?篷i6#a{Y~*]N w)Z5*CUqӲ^pVt;Vf[j1eEgT,`Ğfʼn7W[k]Wo!>Wi?:TΤE:As%/&lwJ̊?ϫʯCvD6gu%ll G)\:.[rsU株Xo2~qTmb?ֆf["k~,UQkpoL\ ;W{]`>,TJϿ~^AQh_j-:Lq,=~@AQM"gt G.(_wd OkNy\w LLg[G|[#Js`0fQXn\Jv_,u&AZGv~%P2(;=>-l]bEMkV詤$|qsgM>Š =+~6h&57g^]ՓR =j&ūs&;y8޽@|rT,>Kv13G_Ǯa_/U2x&^c~~ǽ2]wAO*vq+0\sSRڒfѤ2NE*oUE"_ h\!KHא\VvWE:VM8%hF:˴ !rI=}atTPV K@R)" Lꖂ?4fDVqV{fM>8djZh%&{O4W ]`!XZBXyO&*` MfuRgGqCؗ.m@Tz.8PmSp,P:}^ՌרzLY>x'K?k$Aʾ?;pODn1vswr1@Y(S4BdD6WN>ɓЇJT}~F+`P$?w>0c@3+z%{[P[_#:vg*ʜr'|ʐ?ZqO܍9@9 F$Iog6Zȿ*-*,[G q&nZNe5N5 {hDaY5XϹ]MȐlm 7[vyhN04 ,y'7MLY+GJэUF.6\ϻgfі!;2^W~Gϡ {}$X@-qb]OVa3+w̿)w$I |:KQm8{ps͂oUBqLmUe!AxJmI s=:j`pks?hkȬ.C_ghKWMIe}4bNbc1£:'AztiァU핖KTX6Jz>=Z66{>Fw@ Q(T,x4)6&2ʜ  f^eܹvHuSDŲBU_>)HR&tsT]=PC3l<֠~wT3Rm5*srGfd}+y5u/#0Q5̵`u}^F )Ix-dZ/6ފvtM@>+u/}BdQ}9xe,PN"uJ@ 0ȍ%a폹rE"zmrPjM$vRjXz=I4%J&Sʐ/SR/BTH$ uyZU4C"MqS֤|ڏbG7Ҽ&{c2qlw1>>= %Ӿ(a^{~2E3n Mfߗ=YY}!ĩEA(l=z]+JyͺD[v,{z{==Lf >FkM)0r4Ѭ d0Q.בA1RxrAW}uaѕ&a@-#Ә*_$-ʨ7%%^=%=&q?,KOLλ<J+xl~-rm=/'-Ұj2PiDB/Whl]RǺa,p)4(Pe]F9J9hXJuQm6a~.$f9e<ԕ סREi2lp i'âpDݘ&կ-+o9:.?v\Ą͙ H,݇P}d̒ëHD\W-?XΠvܛcB{<[HNHm;ǰ 99q /duZ%b&ƞk{(wƾf!}NFF8#O#;d I8I[k c]*"79=C1inJFK~?>;?94Ҫq9)eFﶰtV|i#4&*[hh5Y_΄Cz;F:Vߴ]fgie}tDbz<qs)wLcLė6_T?tyu𖦅v3moٓc4wrjI.ư4]ғJP^& xvd,λDrLukq^.IyI>f\:I~6׎GG0oℲ+T^Ց.D>K4}ް %!یxCl֧.O½` _^2  yB<X(`gT3?-ɊN#nynujx{ '/QXZl2ݘY`o$fSΗ/A AN / ;g,b8 Cru,=Ym[?(̀&,yYllNտ)%OgVhUJE! P '0=0QϹb'wg(wMy 1 n$Sm8XI&LG@g oJ4R=W]1e$t+"0iv`E+ Gzf>!yk2. ' j]mtιH~6BlnVj]>%!Pz-bs%-60_EN0xsϴ7ޠ[{d3e;-}!1>R")E:.ʉ9ʖQX>%P1>w*ꊗ~`xf60+)Ҁ:ͽo084>¯$&r`}i C3 _S4WmGӟ3r*=-e1p>&g2 KA8^HrY1"9iٳܐ g\7 ^4S؊SyTRIXaҨZ%Q:a(x`.51A$͊2lt|O/qw/\O{jϣ":SO8#% l!{ц `[T2rT_J9*kr)kkIYh5nv:jBu9qj|E v8m#[ ʍЕHIa *>&i &eځ7_vG k%nk ғ-dAM@ 3ETn7U&]kS<]w53?J#~~ùGNO 5Z=V2ջm6Oh˗h BA7neF&ŊMMvk|=!ਏ̨(D 5dG$m!&!bۛNas|HX'Nm2RBW=Ap;."_{%~{H;=>_&MHi:ݥkg+Dky QR$V)1=*wmXy.bG 4z]h }F<%7-75'˄|a)QMv!CK ڈuCT1؝ir?c̗ۢ@Eqg]发 ~wd h#{4۵Ri{D&V _2)Lڊ *Lx08@uNu:L0"DW{ #sϭf&jv[PCڴBPy Ah.Sx"M^̴&:#.[t5+ vÇ@qѕB˹5 ol9vCU4,ԋP,6凄g 7AQYgNӡ~VsiM=HsP2vòHI@ct$!Β k!EvŦesW@{CހS|ۑ߬KT´8O(^}{4]FHv{^|Օª~F4"NfLu3-h7+<@z*6eC(y?5Tqdz j̖H̄>\nbi6PmEV!?7/ǖul|)4}*[ЮZ&_ 6`[5̜7fp&q %oN#~ K%~9K=R!-Z~&qaC㊖zہ(z"sy'}oboK<Vy"jLGp l NDb?,z݃ͳ/M?g88޺gԬ;hL~Uݤ4lV ;̕!i NgD(fCEʭOcon~9H/,HtkK;K\1""mlՆ>_9\1.P۾u'ʰ3F :2OHr _],]ΨWSֺr_?81Xc´+p喯 "&7Sx_c9Ͽ'~]_}=f3 .nMR>A(JHV`tA8 ;GwM0uS[<^HWW{ݼk4<̷ rG%@IB'Qy,[fƷKm7o1t6rP-)ؐ{Ԃ"_  a la0tt dk!K2II=?͇ 'hTR_1'\)hÖPz7&Z]6NyɾnE&K!Fb%>QX¬!OMr&#g70SI@9;ڂبWGaW;sQ @ ؍Y.yqcx>3RJĸ'daZ)! 3-m5}0En:E-VBVuVsQо "Tv_*T[+9d5ϸhKP:_cVH[^І{oU,Sr67y_RfeXUwQ,9eʦ “Fzavg Tߋn [AJ\qÓNR)9Z2 W8~%z&eqy:܀WSxLDwzӵLWMҽ49 g#2FCy*ZeHPi(_0TsAu9Hͬ oi~$eGgd_Ƴ"R`1޹\]0&7YwRuؾAjiM!`&jQ|$@ IJ˨a n1RuNo-ƨnഋbNN^ŅYP^N[̕F'CTqB}l HG",lru&bvVU2~ OLn&Ruʒfc>.%:?>T2QHeD0ޓ,քҖy,k3E\z#-$ͷY6q! )a><ܦ(]Ԯ:G&m< lV,#<]\;~VDpr=s%MH7}@{hOOӴ< yߩTV G{E0Psn[N$"3Ѕ ,mZđgf' 8":'0&n>= 2FTzLdt\D˜!Xוhs.9ĦcB^8k:8B;AW6I:rdmzoM"I_ (F|/4[n+M`۞P̻TJ\e0 .̨=Jf .β/ l7 mN}$%9yenD""'G1f;LUU1 Cz4(ܺ7+c9,\FF#ik B> Rb>EKY;(,-ipO$^!}{k%|GqȪl3][UO{e!t8 #Za#|"IH3xEw‘:ۧWRGGm.gRm<%|Kzcȡ~^HJ$/ce Զ;M -1)<4Ld[OT*7 <3s s#l4\}ԀY'E?)Ѳng"R5cc~Bb} 7!s y},_yB}㒨QrD ĭ3=H-a)3 ϴg\0t!L1L܉"}bY>! X1} םǬ5͎F JQS\a:ҞC DNL3 eANf_^_$#eqڸ-k?dF_|*3ibYqH8{4{ZϠޞWZ;.®;NqrE:qop3aߪY0H`,T\B\4* [H h0P;4ބ奲]Eg弱8ABQէ6cTC5gue'$?]OQ ln:ra|?Z}JGԖ}*-8% NO9PUvJ"P7'IbI%z߹'dMXb$]]ݯ݈X&eɸAԤ ƛb" ڧ[=@s0:|)vsIJ}~$̺Y UygJ@tPC˞\IG?9L>\?T%'ΞJ$G&9M-;!zr|:͸NDro Օ%u#!5ArN+5b")0{N8|f:RkUƯ}t,ʼn›k<(3FD. 4[]b Ce)'Uv PA3C&R3|AI0ud?PF؜h m\8x gn?3$)OXj*C+;|KcDN[mwJ;f1[yLQ w[ve`xeٽ$ZP!iD_]Xn;0uS %;vPiAC?3sr7kѠ^4:We(+qأI9|iU+ Wz:ĥR. * +U-_0#b0) J=E-jJ~녙t֛ 諘N3Ye@|. `qdUC%m @bοVˬ1$k|*Ysh(nz\K8}ko|2aXH-1MnIH|0T_RBdn@糰C Vvǖ(n gBG*!sրJnrs}U(5'Fa1f/>t T 5q׍f/sUl*< [U+:䱠}|aXY=Adl֢j#THxO>Eh2thvJ_bdjH6vkEuf,.R GnQ薤IO\=*l55~o6I=xo !R(ZjþT;Ү`,c.ѱ* -ʛι:!5|2.,%;e;KE7xѦ/E$lujLD˅浢%`M 93z,!z' (cRǸ+$W6 vx=eΩ]\Ud"/U~ 82mgR1c\t-֧GdU&3Ac8ޟu401|q}ώLtǍ=!Qyycv_4T^Iv#ӎ/A4dpYdCxVٳHj'`澐]6*#vSj;,O]V1I2}'1ǷƱ "]j\| )[82JiM(OXOE\x[ :;yY}v$ɋl#IdE㣱TcޡJ*^$5~v:+ܑf%ϟJrXhU*ޣ_+җ#rf p73w  {q5AskUu/Y(,*c\M/翈~lʜ}/?6CefT1 #Bm`;<gx>hx$c]$WHO<ōS[0 |vo K~D"3HfgåQȵFqdvB"}fכw-&#"ԣ/u onp0+Ǡz1e`zIVCteA*Nk $4XpdšbM63SA^WHޅo5H%uy=),D RV2BU ̭ \(Uȯԏ;/L'EĠuOB<ԑz;QEBH^ŜK8QG?1' 2ٷ3ڃʐ* ֺ[ 9, .7SJq X Ul7 9Cݒid6׀@a_@)S=`~/X\/a>FF\!ߞtkk`㥲x,?udl4 =m5tMx3W@}N!c_)%l#$%XOXguJ[v/*u`Wv`DǬ["Sda̙HTBX<ٛcjcnDbՕ uNjy t:ڝ![㯵SFXbIBEdH 9AnHfFUgJNzk0K6*ԫWcSX=;-w:C6(ΧuXTtx"#6 ٩ǭF+-t䘄#M<'e}Y>@\'! -*zs.Ơ>/C U[% AAD:I/!TLEcQ'& ČhpysJ0dL0cN*W 37-&6*x@@]+f!4GU#v_9ߕ)RNŵW*bܙkm>b< FKQuaBlw _+LDva|,AksgQXAn~nJBĄ?dQP/'eN!<E7 8,BH-0Q'ԄK:ȵ+?ml,߷?cN>m_JiGKKCl\&]DU@aEaECw>:#g\`ph5٦=FJh'21%X}&[l8S =5^Y;9^:t055.tJDhV:dCq2cJT8V|-t5{t]Dsnw6Ϧ͋j>N&ٕ{ᖌB3F^G S?7Z<~!7h ]t5A-.Ə}KJ&&¸bz4#؞ ?MXw$okMT:[r Vw" r~N`Wu$;F]&FmëNI3AC﨡 dFfY;E]4Trmjys1~^ޅL=")_Ȇ~#;2%ߒw=,e0{ZC~QΉ@/ q6՚{݄ʂ3EZ ņ{ޚceiեopQ^d:I8_StC/Twp>B*CNܳnǶДCc'%V SM0X03┛L|- Pٴ [,V_cXWJNTlt G|{޲2O})w%EY%׵T y-B MUR;L/rpi9KcK}Ju_ܤwi6ִ(7- 88yu#?unuE^6)|NVs=!M3<g^ǐӼ3AXUےRUC`/%rD@QHc%{w?Bw6]3R_7^^J/:]F1K(uVbp\!`2"R6bD\j)aݖުQ)DJlDa"a*.4?G`ɳaAJ*6FdHozr"p3Sfkv2 Lz[߷ņeP2%g4ZI`2Hw i$G ;@U`4 ʔƘUS8q=o 95TA/V ?Sw 4L`zjMd^|v "bv5nUO[ϔ7MjbV5*ee-$ϟcSdzVE4V2m``? fV`x{HOKɗv+4_$v 8ʗ]aS*h|cC{) Ce0& VuR:!rz bb k}UaүoB(rxI)E=^+49x8P9r;[)ؾ;E-#[2eBjJi( l0]7f~8X&MNQ"’X䒓PNp82r@ FTX9>\g%EpMeo r9a*'ZagChq c݌AV(Gq#HYEFV*/4'_r&2_ZIR^9ybJ/X< \k0%'Ztb'13aܔ iM sJj:g /#&KE[F^G{h:h|AX!\e̜*rcRuӾzW V!)# KZN?mHv* Kwg de 폮zEmxS 'd wiT2O.d[ly1skgr[`x uf:aTEǪ(m 쭥yChG;gBU&o(j0G5HY&%̄κU&(&x bE#_1+L,N]dYp]Vu+)|7Y 5z'z*|Y8%M1֩a+oepP[M 9 7`Au1ͲG|JމWx"ַVjs)) 7V$6r%$4ȝ%bӏ*ٶAOQ)ba2N:#\{`ֈ m狌%@MfWw @1m{. d)dxQhy 8+z{V ZHHS4I'ŗW7v( !VV8[AQm݁5FMҔSW,2z\4"0>Y˧$G@獂Cyo4JEnx e8ЦrE)&H1:>=yAֱ^1_IpOML;84!~՜_0H|W0w1$c!u2`eL !ȂpkgAu 8O\dRo,Avg`(͓!64sr*=`.%0G?E"ҳԴ:=QL<0?%Jr@Z?J"Owx7וդLɼX4_z8Z7js93le/J蒝^A1G1iab^ݍ3`7aԐWںufFbcA 4 åxRt;DJڋU|S񷉈 s/r~/騽/Rse`ϔc3s'fT${*iϓr.8*K`hg9^CJ37Ȃ6c@pACw?^b(`5[ i3Im}B|Ϩeڤ s@] SVj-1%'[*6WvTCg)`XaL }#8yCݷ۩T<)ޝ!c!nt]l{g˧ÏmT6Gn?,,{]f#6췙s]Id]ǀWyh,~|;-f+IƎ/V^ZA"{p?꺁uB Z,MZP6*eqJ׳#f \v.XjOSq u#dh/b*Ӽ1ho3'4q=RTejrlʝ'ӰM$TEJy+$jϝ3363S.4.C YjY![qGP,[:6|[SqeD-u)DvGX^ LWdUH`;cflw)3[ط/'F>s.׈W )i,"*KRF.Bq#bo`(JJOM#bZ;;.w]}7<nӺc{,ƘY%-I8)vݦHB^5j:5^8.^Pf~ ԏ=*A&QD H7_}?b&fOGNQ^~̫OڤݡzU0*X>@V%D^HP[GU_ /^'u|o_.!e zSv:EOb?1XbfL6bmK NiJ<;"(%-j^¹:(<;1"U3EĄ_gH ?q]a;Ht@VwȆvj]q$d/#›PmV3)qE7ndMDTҌ*YA+>D{%NGv 9ܹʻ;D7VOGFcXbMLGo'ۗ*4ҩMaj. f:Ynn4Զku%k賚X ?kaXUn}%?ș|nI/5ec̒ڣ_浬->YDZb>ؗk@F&"_O+PB jmpN0%u*{8kw^>c~os,Sp`=ZY)Wș] :I_Zy.AC`2]ԏhFhأ`D XG9Hmw,wFx[NhC.\{ qG} 2 ^9c>hE(G\4zPA/`%\mImcUƚl3#:#nTEV%=ͻZ<_o &n1#`6aS\RޗVI_5`aUڼx}28:>|}#b9y_1X ^s f=:9& PrDA^ꓷ`7qaG6y xp95<Y.5F^[F=:Ǎf-ŀQqzH| lK ^̑I,*+jU&J&S"i k6g @6eNW9PWV c9[8a{a0L(`"og@g#yo=Xg-4+ u십|XSXYe١0yu؝sVg.h˟T*kԚjLۆQ4(I :;t7nwPNgRU G XZIҿ*\smh%%`]wO/(0T<5AXtzI(љ:2wġggg@4foPI nX^ Ofߟj_m>'Kģk)ЩQ|)JЅ,c#BpYo.HTW4 N?n뫡1I;6:q #@_L;R6K_5OY/s~Xng $*@`B?M)$ߣS w‰X')>c>滑).) a4" pMrP$qI;Un{D}k(j<¥+EVr:lat3yWyx|[6"Arv9Ҵ@y2xSqjLa6y벴`$b$;0ӨSM[~9 PgepaO1 ۯHoVvQ:T7;$s,HpV5O2o=tdHCP2S&_Dzh-OXHڜ2'b〓,Jy\+'2 Y+}!"pzl(SvŚ%Y>WQyW=M6Ai<%hݧogW_$ݟOpʉ} 9 g+Y5-( K J>,!|k3NٷD)1OFnM.v<$ "cͪ{5@&$?)Au9s4ʴK!Iy|uu3K? цE彦[M]E+bCn@swyϫl!RX`͹Fx$(L2~6FRdЊI)-KIQ')aaМ`0yzY~Kϯ>¿"3 J2/]'4ҴK*B$:9ajજo5#h`~X;3T$n G'{Ŝ_n !<F"OOe3'hH!EH86zj%f9Ƌ|4L&<҅x{bvrRMӶ4!.aLW*%ew-OIvza\B&g Zap"lo274IkxlDX`w+#bCD</hɉ Bne8JRvje8R]x0ӫmE¹B8AtܕXUw` $$4Ğ-tɾ9~),k&[)4}ZH%|;7*%n>9Dw'1,P *+z Yi RzRv&r%c w "%yi"GUhi#@Ƶ(.ۭܜhß=/Y*<[Gfqė1 Um@fZ6'qqA֊Շ{x68?N+t<.O&%׷Ā[?Nq5Ob,v(R﨣4Pl`Jf$;Z3&xFOG!=Iďy|h"9Cl ~gp"'eExb  (T 65*$~nAآ(;~G N/|6WR -\΅_H ˊ]keqe=rrݕyYKKJUWn, \v#r&_}z\"}D.z}h/Z7ꁁ^Le7GT4Ws~!ẠBw JզH2+ьvEu@=mr1ziH5|Spf5Y^H Hz+u3pL/(Es1@#'54>@?`m~_;Yc\ Q*cMBU:FRKu : grP~I vB_=Ж16q+:]Xb ֢z\EZKٕK?KwF}4֖aTgsNO;>[呆}byt !!݅tO$#:vX QSe!yOB_SHa4r'd7Qju}KVTNohBOq ZpUtA+} U>AYwl9ċaBV˵V-q2>77*m?޷4̺ӗ&VcұvsN`l2.300±b*Suࢥe_ "2ϫp͜p);:|s+On m ONaۂhzX+o>(#,).\y I C*||RGvCXβGnBd@o]h7ߘn:仈fv LO"84QE_~Z9Gp+Ӻ5Y˗7a_m{S4@q|~S2ib(;Gǎjxfʈ8x Vbs`ڭlKh(V=gl.Og ,QNn#n*`e]HsxsHX7@h8[PXeS{8ɽ ql9Гho J9gHWԄb;19ĩB '; Ԙ;e#X߀FU>QY2Z,̡XTDIfʹdqEFxM\dPq&ӝpwFeLI3 =.0Ja\6s%7EN9wdnB-KۦrEIN)=lSETSxmW(&'BBxBUl)INeN8mL, E%ѭܩyD7_3W,XNT.i͞j3=zb \AZNղ^V$<Bigu}C/i$8׺e?<&7{}7RQErdO }=u c`AChiu'X30R4V.9f²>N,Cb V'* Cwy&1X?iHlɀ.V \˞x)bޅ+ŠΒ$ax]1keq!#&{ju-#n+#- $D6?"e]ۮ*~ P@P`i( ز:{ 7r~'+9l*LiRsyZ:΄ަ_l3$'➁H0G/hх_J".z 79;Zwԍ/'"D-rp}GzREic8#൯A=*ozbs`sGL4/6A"m{0׌_Ri.ALgIeTr}A0j)RICW: &|gk z*Qqrඊ"Ū;OpQ*P3!Aq{+RiX1(Ka&v̱dO컗)EtիɎ/ ,t##?O̥k\ _J407v]Z|;bvԜ$(`MS:6 Ly^# !l ֭1{K wQsTlr8<\u"|jM> ~Z!yb]w>7 {{?Q^Z1ר-f$G?,}helXSڕ7}PUGql>2,Ki :hqǖd"#:-N8^'vNK/ZC6q5t$PwC˕B`_]0^v$GioH#5,_{ …wRxz雾*sW9Җumq~d_?&*}鏌p@ yw<( W fCkoux*v6mgpOՖb.,Ήª>N}'%F̈́D|QN[Etx498>Ցu|".DwJm`Ąw}b_6/%] 2GLQ(\쫠O7NXl :0!YEEEg-kKĂQC=™̒&8zH gYU"вa8@0-8hS[W-Y4 \ʋfr{w]#_@5@s[o`yB[G63%}\~fO†̫i{>ȂdSr%ѵrS(c3X kk'8l _Zgʘ Es1EڡFt:N٠<8kؑtg m'Fqc^ ٨%Jw=ehl@خD3b}j"E;1PyPn2(w@9j_tc֍D55qNe4{hi<%:T1~SբE\PBFIT,oVoT;W C NcԪPʜ;_e$RE TD5/xݟ |f Z}#Ra/7O-HLnU4+p ŸU%.<]I6 gMQLAXP^2e |ŨiNJ19ޤN.Ÿ ͉]oHj)Qx Q@vW&bCy$iʃܣ0(uo%İpX`B$] xsݧ6,k*]wUj</ |~)7jJÒ杼q/mWE]C1Wg ܓHS xit72Z䲱?RFYu ?Ԇ<˯c0cR۫{xHfR2,"$t^?$j Ýt>nVɘsZn#:% {Ep1ڽw\NR Um [+MуL[US{TW>r}&.skDX !,@{ u|ut~p_답ѨlqOK T !+oUYBam ,b(;J4G(>9 sݵKƧy4?B=ٷ| ո:gOb9Ir& laEGj^zݨĤQ!:a@RP+l))U. \!3ھ%ĵtyVF݉ ꊈC]~=r%OqVq&f᫸} !$j| 1]WY<~,XD8ANϾ+v@ձ+ST#Mzf$,JhD"`".JѨ^77W#n;[hh$}, ~ru3e 9qwpЂt Y043.0]LѮw*aN+$Q Ӄ#SZ-oJI*Vu 9jlD}8[KZ} !E[dQp[,߅fݾxPcI "noS<:YrYV[q?Cv;|CI]oaV@UA2(hMfY5c AuyG䛎H9x$-49ݛn/__hܛD*o9K_hed4[݄]cmRƳ{(nOXj9.Zoۍrm@7LVV !Œ\'[=wDFVٸnwC$#'AO,$kD#&WgzHJYLR>@2MYj6=+.V3E\E]6'M0uZB2@~ z'(:,>H8 5!G~>'Kb%ʼn"{lGq6M.uT"nB%S/%M+;=Z+V~@2xр 7҆j}lN-cV0{>1+B`_!R&nƷ:gצADKeR'R,5J3l7n]IzF2_cz7Wmaǻ̙(۱Koӣ{S%eXԯ#*{d웢KzҮ2f7eKWJyHo\ n'gJѶdZg`ؕz3s%Ty쮚-wqrEl`s[^of]6 =r \Gy 󊛱Fֈz2Kض'Եtb[*0пNCh ×[O @Hu ܔbTp.FC\5ODGH"!b2k~",ޱ>O(:4a&W[l hj%+L}`9P]n*`1Y&Qz``qR 7Ό0x+)J9sq%~]r:`ZE' X ;E(iv@ݓ7;zO2M9'eYLvatɯrj𠉨JΥwq+ifvxk?:8:Bbv]T,f`7,)-m Q-M!ȡ}D7^ZaW51߂IZ%t g`-S4JUֺ`RL֡E91|a[AB,]T, B %UvE`b#&C-32I~"p\jJEKQC)`f!'Ng Cr$RA ,V{Tuj?cʑ!)1*G g.i 8c+.u5iQ)w_r}UQ[TuFG$V6a:'f.g+ k;+PCgbfδRp,Ƽ$NoxD, p+kn#xTwQ{"&6uiWb-I*mQ*pSµm$U)GAIڣT2۲EG&Qc>c c UIdWZD8VgVDNtY@xE)"&43Rك{sG;d3u6QW=LY:ߦeZpbPo8<R;+ DϣEQ.7BҊp.ʠ#Nߪ\ DRh;v!n6Hx":cJ ZbHL:#2Q Hq; HK!Uloé^*Cݚs^S}rqc/~! hD kCOr{}Riޮ^O{b`@?ÁNzgOS[vD̶JSax=Sv)>)['lBo:n_H}hGUL|\"ЫS?8>t/N.nI|ѵ&dz-uݠgM\)3 O[T+A"B_B]{lZ0z0u1\q*RO|BҀ˴F1)2/ᷮl?>#4܇&lseU.VN=Lv͔=?f7^Q#>+̤u`5 fىg =T6+v ҼqbXsӪzOHOk7P?c9s~AI Dٰ iNGNRtk!.k(8A܍TE5*@_z5.I:NM8o?]<[5CutjEy@h? 5c1VnDH0B1dE%G}ΥTCd9j봀K3&el-l&c,q7LO%{!e`I쩡`ˁHoH)~R=0Am#Ē&`il XWjWYbz/Yib9 8JstFǭO #ŔtSHr!igռx"[.li[뺛gC7!gFw<\AkFN|}eMl~KƇw H b7P4r)j%&\1 %d@GvNdYIz~^,_X14Tvi~=:bdԿ RU[& W.b7u;ꎘud9Rf5 ~ɪG%+Ƭ?3ys=[*>?~ҮO= tFڊ-jnɊiwZ/Pirh`KI^D} C< UC~ S\S>.PgSk):|_+$,>wu @!|N]*~;2rc&+jP Cmrh`I-Xk.ʀk~6LI;ȓwo8թPiW";ә!0@Gx"Ό!)^{c 0Ϟe5,q =߀a)N{8iѢ;|{nGO,Eٍ{WHi=PQym:{a7Ɠnn~h<|PlrkA=Ԗ*Hv*(h:5ћx(zR1igד؋Iz׮YH{e0+%F~"C*qBgP$uQFvwmMXo#h> +Ď!ʴ|?)΃Ʈ B6,tC*jWD塆ZTB$tԃ?rSa{` sDkgXE@<*W+a?tT=# CYl7.Uz U=_wstx3YlenWٱX3̪<+d^؄6iXDPc)w_ԣ!M:4u"B$-J%s"Nfh^-\b@$#s%$'/Q:=qۈ/ R Z "PdDf+,+dKp6nkcVSR:Cqρ? Q)| j#5JyGj/,IūiCg {iB#k w ዇Gr2į)Eu}\}HحVe9ov*<[H }AlEPJB kY\VLH@D 尒@HS>ܛ\<0&ɓ͡pXԲ<=.mH'bbv N$P5IR4 җ2i61LU<7mU? 1H~lЍeʰQldƄVȒFze:%R º^L^Ղc=k%_R1,ЇG`})۾T ܷ܎+ʜW_<7s/mObUQ[~ 2Mͦ"E%Dx]-U6n{P{As1P]sXR|tU.LUJrnyԵ#>=(V[H?XKNGlT2l'7h("鎎QCҐW᳖i L[/5xp)m9m>a(H.,QPӪ6T f`6k, A1-2\O~~r"vL9-{9 Ay;cZ!33xWz\#F^?^:<3#2}.֪5MPԬ-q5ba'4 ĖܡcؙlaT D 3Te&A @w0/ ^ώguO?>32iS 5nLrQrll- ;ES"~畁[U?KM^y.5ta CI:Ŧ mxfS0%}x/]h3]nuLJ*`p]!h:݅cQT%w7>U&@2zĭ)Zm=R/bWFg?hRQ[@ NڹI&փFNoc!l;@'[x!d򩓑ۿq\r]KEuKD֘3K=ҧ؝VN?(ԕ#6T{x3g>[(Yy4Rmp5eѫ̃IOi 7c@&`#R[J]&Кq DzTOÿ][b`$F L9#U{3#qo; OjUdZص V!OS<l1YX)ݖFׅRDj$Leg'Z"QZg!|v޹0Bl`=vca4LV{mu%}?LE㍎Gn3Jlb5ʟ'KmW2ۣhiIU|ɂИO1ȡړMc(l{?4u*J ă\Im-yCbݷoX%lum$K%[n'qFZ`'lL ƨ$yɤG znƗ8+[y;GHv7R6rR/бwɕO#ݨk5(rE]b2Nc͎; L$xʬ6l̘SRMZyͼ5o48(m=7il;5bi8_3'(G+y/;%/{ml3zp)]礌((UM2!/r0jʔ2%&UaYVn_;(6݂ǂ_/(׍7zShx7} t4$ _Ks'˕ґe x8L,*W8%*S0ӭ;#a}7;Z<9d#{G"Gi[.,U𥳒ɳePZ vCdžmYf-Z[/a=Av IK'yWJ+VaT{tޞXᖜYz*%sP;@fcQZ4Ed#8$%RxT:ިR xX:SH]@;~4u@J$`U\4re o~8]4xoTxR/-x+ht?azX]=~"Y6%(gju`Zw^ Aa-}(C"ARfi+RUHкQ􎴅!+bћ[uW|nzu6I8wWQ$Bu\e}37 Q7 L86̶4UWw8VԆfF@k o(Sʜ3pW$c ,Az&4N8rHoiސRWDoPxR%CJ&hH!nzA)-{=umzzwB%|A?F0F uICĴ)wWdB ZvWԲGderƬe30okeh !Jm io]0ܠ~5;/2J*Cz^qԚ;nj4H Z;~:]l!" ~IVf2R? tspus(I|*DS'Bœ)Hf!BItĎci) ## kuhftT"Q7͛¬>冄1]+7dH1)5\Da^oν{$5V_Q4Z~!InLIcFsϷ ??faZ]I#^:ӏ\jʲ ɗഎE[,V\ L-M G L@BLcG]!S<{LyIx|3ܮ1+Ff9鉕a Hч~ #פ\􁫅2ӗT+NA99_PkhJ@8߅g,h)u1{?41`+d퐯͍LۉU{1{x pzK˜J@ _1h/Ao#Eh>UզL-UXREe3#9ZÜ&K~ n3{`k壸O'&߮DѽpTm_d+/s[Wl6m?Z4Ќ0̽pMzpZfN=5꫁xXo_)^ ٲܞ\ 3Klo!oA&ў| }yUxH ~&&Cho W..%nSFT`DJ#Z՝`n厩yF S="0,<g;NazI xѝٯ,չ8P~ڊP9la^D^'*s^6S$]A8DfxvseYfL%&6սXT?f,ݿ5RWpnY#iZCl }6&Џd1o2A;2z}ꏖ2-3SI<qtRW؉bx pC3qX@P%948%Aj&}jeq2=h,WĀ<+-045?TI-΄U\i=: 兺I5 G0PA  `EК8ϰKToAzq?Ǟy5 K_sCAMu&=ЛAf+w@(\`_Qs^0ͣkd' -ӭ|:![ B1M>rQ'}tgW'p'gJHnYj4ΓdAL;Yp*O xvufHu}Kug[۲fr6J %m-'k )Z<z~V-NM"h}PPQϲ zC8*UnPR)l}/ k~=f]3/E v3HC7 @c7/P`> 0:} dO!`^ xUG(UT,zwHCH9EjיJ#>?}-}$t_=W_zdr߉<_k˼juA/n=X`$rJ};Hwͤ O}@oӡ,-@!ꖼ=jZ Gui=RPs1 p=xϓʹ' +\W82:uÛ2`& M# =$J说A2Enͭ?;kf)-pltS  C FRÎ tbR&E-TD" ˊzJl]'i^m{yUB8 cxo]ŃY%=;$Bxć<f3ܒ{M%څ W t އ 1"Cq[&FW"Wbmxt~"6EЗ2! dKFIcy3(8RQ{BM/P(E ?4K+cPw.v NmqobsS})-B´t(>B#K&1"T0-͟/_l+xjn^ & " QIpdm WCQFj)q5VcSklAn6(AxMh(3346*j-8cs,c d.$PA2" KoeZS_WeKYL3ߖUQ©;n62rE>ΨPK@)ɜB&~o|})y1\9Ϻ/S`wr,]ͧeWDɁ9 GxIڀۊS_h^@A(haUa'0qYP$YKtP%?̕ :yaN%1>5Bghf/4.|F\lj_tpZy7Å۴[V&5%2ytp4m)%ο5 ̈́BB^fTMֆ%ۢ#;(tmwr̽NT¡>b:|ۈw[eZ>*,%&_cz0+.dsǂx즍o:cB$EQ|Dd93V}=% {D2.S]R y|a~սL\yh)ǭ"QqV6:sx~.<_m@FIpQzޯ|w³bTNݧi:*ZQڒR\gkiTS0]'#{~WvE}3a [Kw4.prʟ Wt`V jŝ}s~%4]]1[M3_W!>Rlxf 5K/{ǡF;]nTWTK%-L ty=.^A:k~ql M<^pYT$>O-սsONhNƫ'J2#x"݆VyWoL:э-D 'fňWX@D.s*G>00ѾK3y^Ș0.VjSͺЉLhٚ"5Cky[.1Ez! \N8}H0PAag.,/Nt$"H_BGBŊuKw=a 2ék琣-tK+f%iWͼ҄H?*Dr(}bl-V{o׆˂UÅWfA=]U G8$:Ĩ_Vчjj/sKT=2Y҆!Kxdu9/F#4 sCs]uTӘlü5aO B<8m#@X_oR*Fps E2"(@5JeZO Wb^[vkU)zNJ WY+\؅Zj66 E$l6{,,D%m>32tsQΘ%~ _i,O2% ϥO̜ѹC6``sd O $7Ly:ϴ٢ pZvL%>QwEL_١_t:.؀Og&F3j[vCpaeHZNv;x(#+%4И؉c Q>;&_7sGC3y&sJ/lF8=uCe +|vQ^t(,9|H - C,F2M"l :8-}7Oor,*I!Kh?t3^sο]kr˃)[`\cӌ{"4@TwȿnN/Ld]o3,Ś ^b{ip[(’3H;:D3Jh>.UƓd Tw!Qz1˧JQ!Dp^M߶.GsK1[$sS6SE%Z8 :('59a@W3 EDDui`0-Eib|nԼ}G# ꬩgޱ^љ`:xP_ydP2O: 9HNƙK.iչ@2I`*^~O6^hA [JЉ}KBdelE;gJ qYih7c*NAJ?8yYc S^}.eY;Y"}JB# y3޼S-OCKZ- f?(4"Ou Vys ʝ)&;<`q|6ab5Tom7RNWꖿ ok {P<&;i1= 3UaLh}}G7u1Wd9K(-<75`u0 6߷bua;=:6o [m@эlw.]حw+7Ѝ~jĎ!;"z'^e|oK cN71B߷k$~|f7O[rEhjݝ})侪KH[7[GY~yâjYg#VԢXDU ~+VaײiFf_5r]e*Q&:v,TPSW^> xb%p ?I8xC:TԂSh6xR;N7֞.4`:T#WJ}1G@L~0F \aTrZW O6nYa-S~o$Nӳ$_ /*)n-'ҭN uyĘӬ鷸g*i씏d(Vf_h]Upn:I3TB rB]KqQۊ93SqI:`;4CMݬadis9u$>U B<}r=jgP䳻hzUznv4@׉G=S|Shv8-mPG, yXIy( p"s} Zn}^i ޟܙ9p{WԘLK- ]O@u>!xαʙZ_ 6HKE^)ks`aQ)Hc9!4#Ϋ mmf- (WZE/ $p M LS^Ul_Υkβx-ZIgɄ< ɧXp# vAl1Gy>"RA`։a>25m4n A &6Xof닽!Z)FiH/}[ *8 W˕ad5t$y,E@'7"b=8Ak΃"LGp>V>(!w:r{T8nz8]F^H3_pHJ_ɹtCwYMNiȧz\,o Ɩ ,("ޖa\K\*ol4w_V+aiީbt́?MnGXUZmRKbIB1t'Θ֮`.`ݟNwbХ&@5k_qDhvN^ݰuվ^!a8Erda=qC]T^?lu*"%.'f44[/v1v8[mU{ev 9M6gdҮC^m>&,T"^)_xQ]:0pI's*MR5E5)j3@7ae.; iX|T.Ɯ3<;{Đ25oUoR႕#HtTT=40/k[@!e5Y^-3$ό;_Zz5"P#1`q_yVK~QphLFEG2aԯ Me+j҃1;~+?$v8`G0]QTեڨh-ϼG$7CQO*ρv2F#B4t_ϊ҃!R<)pG/%@^qa0֛8PݶdݏeXjnSVױK锹cʙxT"O)}u ;jIШ2[:[I5%!ۇ %K"f2b|D$ *,偠bp,HL.JYInyXKl_9=y9עsBE},bT2+|syb%pȐ¼O*r?'xAwUdh]΍tPk&¶3׍CaxRñ@qDF0Q|yj*eLcf @)mX!a-o-#W[IFu- !z#slJr!kcs ]' 7 )Z'^*ɆĐA)AE냘D f(ȾuWX':"XM l*/ Xv<[J'k8ǶonB01R&EGf1AMM qF_8\"ߋ.3Q F9c_L,3DOS}zn6Tm~o"ᖣ[x'a:Xs7ӷtc! T%ghZC>!Ix9W鷎ClVXA ʖ d|xfFdY;WA0L]|mQ6=XNW_PI%W=.TP 2koXΰЦ.-[H[;Zh}xl^5403̢ T]E'Mk3 7Lwӄ'xK"fY reXgW $FM 0 {$ 4(?{#ѐÞ^"X63tD<2_$$J q6M'rTRsCB vwᛶ3'24w~cT}<&"SY#UGfJjd5⊡bq&ޱ%^_%˔T_p1r殸)Q~F0?+SeZ9cϾ +%Ѿf;}dÀ 0sG.'=>Xj)z8oqJy-">İxO" $ a>x>ܝ(NƖWf4g**ߴ5bmp75UJG͒KX[3-̰^>q5v"LC!As+ʅ{zT]^!GZZdjyzXxx{$ ĹA7|;`w4 c&8"aޒs[%Mrz &p4kt` V.IK6XP8?:#">3 kތn5aČ18ziЋz[%4$J:hM8ao~E>dWZZ}Ǽ+8sf;Fh-xX'X+1:0xk5{kakw^`Pžqu ANApVRky5'@%Oz6R󛥱qKsrthM< *QFR~F(LcLm.6T`@.j$Lq7NeYiޛ,GzMNzK R\P?q+ Sx) I3RYĤڅPWkMk#x#V|-ND `k\|OJ˓7rz!ntɘ!ZG& 7:v* (fzUtogQDQ]Jk6:G~mRz#ηiy;os]:rD=C6SC;sWܡFZv=Z-Ջ6d$M-sb8{M2jX1 g7DA ާUy"BG#ZTFerR[<2S%vV(-)'ͪelM*1L ,W0l^%jxr!0;»+ñ}H_ॱ]H^_6kVɵ'MOws r*w%/bSkg% q<ĵXd7E08 Uɴ#mBbIGcs?N ~t(Vu͙Pf(j4$P͋0OHh1v`Nޞ3<.2/~I BFлKofqo ߎ&=lh5Y?yYd&nafpU{&-Y%D JLx>K'F݈_cPs{fڱ?JW(^_޷<]6[TtĸآtOR5?9mGdи:vx-vla`aኌc'6,38͏%AMG [3bХ6q+ WUq^pߔ? ktЂh)}wu ;U[E^g"¸n*CM@2q[I3aqʘs,|UT(meQIQTի q"5ڐ-$fMS03a!X0OM+8yNS%E0t4VTN2HuCQW?އ%*fc:9 5b&1QPr޾d\,'T"~e@!E|xT$ җu/&fl,k ՠ %xc?-%ձ\M3/<@d[Xdބ&-;~}*ݻQqE)Iuǰ!Xc$\M~HckS fV.&<ڠӜx$/-omc:["Pҥ6vKVؕ-0'\#(YV&9%bJ->\To @T\ZCJ&z䑝m*ZN8ߨeza&* BQ0]WpdrR0Lj|x:9 *a_!;wB|+<(] 7 BJyJP 7"3UMTG r ƺN>IHz l }_->a_0n7Q<0S^ 6Q/MI.+Lj?=e$#1((Q-k-r6 4'sƏfw^T00]ݓ5)1Do$>ʂ=N_,7+o Dyβ W:mN=}dAbtg,Y0hRtNG/.AFVaP"B |D/+;O\dZ ~ ,]K弩\O#ճMXe&.h"Οv(xYz{7HJyϞwKDx\@ @-ndnb v{ʨ{_)"SMIDІtQϦn<7RiT4:$[Á!J&Z"$"#g\OpQOˑ$h^߹Wn6u_gsˑvy ˲Rz`wiCn6eҝ йi` #3h?_ϥ=Sr3n>"[u>뉦TV3%oiDt2{EEHG\\1 D'==)5?I<]cJoJ߯H9A$TP{:|ƗHx(nkni &8{@wSN嶀9SXz>ʪQhi'+.|S{o%Hmw 3 S54MFĊ <H}iRNLEhteg{w8yɎûKN'cWXL :ܨH7( /NNCA\v) ܏m&\"O" @>w|IYY2(ӽ:}<Y C>(kwo'SS-=F0f]#u!#!GqO6YW^3Q=.dl#NTv*B >ņS׿l9AH R:)A :.rɾY6{S,K# 9E2Lᳶh{uqkD=b $oy&֖ؼ`pz9, H.-˻>xU߅^]=Ҽէ>lC2bm""aMTsFv klqflnK)WX57zBŸaZ7ۇM=?0F@VmЩ|  KfW8ꑂHD43'bT[zO|^5*yb)a>6`ڨ]9yAOur0s-`({MKaNǟ6jN47.X a>_^X lodkYW"Б6݀ؾjh9#>NB93^AE?\xG-x սEV&7Z$c ѡ ՔǼ#]QhJ~-A^>UJ{5OR常#QFR=Y[ygbPW.. JP"VnZ![ WLW,^`ޗbf6|[Mb4muAwnߤ꣬ՍѤNz7~;oU$t7};uUQƝƲt.|򁗦<^h{(HDc@Z541rpT0P9Lc)Gn;g&;fw8BƂcVV|(EQ:g4ؑ |s{*Ttgr 7't]ΰEd 6СCRb۴Hz-?jݧnיoe5@'`mYil^]:!Hm4vdLT!7{'|Ip,]FמIp"gRp z67N$KCC ʀF0 FXҀcE6R^bt[]$oQ0փUv*a%HV~'vV~.K%Ph9,r+qVC4pR59"!*}QHw{Jkh Z)JPBVK/YH NlL׆h]\#grK> {'7U4SeebP#bv pSi\,Zi.SXїhL\OCWɈ]?G3ݸM^i ?d@ z ЦV&*տCZWpWgzNOsn.ٕ ,7_" {-_(&;(Nu>:X5 Vf,]!h/ď AN `wY,s*gd&cMEbXyꄺT婤z,UA '%1Lvr>wFIHcXs8U#P&&,g w1״cNax0]Q0Q sʚ3h<2Ml ၳ$|z&`웫OJ|yQcI-c cX 5+_,$.%UN.$Sk~폾u"&`_ b z9-\Lrv#۟Əd#Urj45)8mϮ/uEw8,IS^"sqɝ"q*.Ï޿U 9HnkI\PA&hU^V[Th M^؋ SpV%韻U NkHl3KNОRWLNFICLʎy,4psNnL(,͜Qөvs)KNi4iNTb@\G6B\`bfSJHXulSn>8ZHpJq!vie8w輅(nbQHv=4*-#\&äڦy u?k|揶oqU1E$G'Y5tUY8CH62Qtiz '}Evvw>kZVz}he)p92^MvfLdr|νbf.X"2P+=K+*C,[.6V%IX_M bxT=2O#v䙟C4a/VD{$~K}7>J<Q 4na_> IbHG˔vm)۬{\\@9(AdcPnW- w mNud?8Sto菞(~ >eqEu 8g cAJ(kgv4bnfYX)z? \?JV]&lo;J@cUq4Rul3t7 Yih߸еv"~V`qq{ ot PņR֋ί˚J5&:E=Ad)X ՚gٹ1x P 1z=ڂ o|[`>1:`˧cZt|Q)aUJ!Ov"w>Weg0 4ѩ69YaUFNQZuJJawCƿT(2K-̫YC -_Z1a.*z%OE;R$3xV2h4=j)ԠI0kOÛVN+x+gmh ٠gȣ"Kwe~?ШoeQr6:u nw o ettBJoX^A&"kWͳv_MbM:I˰zZmK{_K^@}}0etz}d]/Q#gv_>쿊zn(r֍OeYvu@4r'8V=Pm>6Vj.Ot7iWs?53-8 '㿊/eş?0{k=3g+M4X#͑2: e[U&Xr) B. =H$3w9(#V+UZKqd>6ղ"!k$it(DyGsfu,ִnJbߛу r[);ʰƯ}}y5mQk.H%"D'chBL6 L,prAQZnyF~]NU bZC$aKڠu50K3Z3&@aT/leVAh-.ܓ+ KQp@EUG}f+Aa <ftmj)_+?$G5^=rf hcӤ1Vpim5HǙma)Ygk @MA*U6\o]G@\uNpaYNt7pEӮ1zNgXJ~ FRݴ  =YF-@I@w7l؞bMo|\[~Z3h쎔g MJ\4#gumXrbnF6bZH[yf|S`N̘ n?u=Ч~޸Lkx&SV*DAR7lgy r鮸U,\چ@G-yuPCr#-#ej@[ÊFEn'&%.)ct) [8uH 3 @bLgtx< ~" 0GcD!N5e+XNJD @-m+ B%LJjm6#*jK/C"⏸uӞ5c1 tٓ*U'"cEcB.Sk T`cC]3T#kέ0+YciRq;D^݂2D6ҦI5\fMW(~:/\dǂUoz]VdFB4.D1ep"vԒ1XPml=6 a3.3 װXm}~IfB|5Ŗ[.= z*QAњb]7T<艧C|MgF b~wl}8Y wY<Щ}8>J'4SM>Γ:F2ew7o'I5#Ȳ;7k gB{n!-H$Ȃ%(xU = F58Z~ lcÓB<}n̈k_ P>–HWv&Jv'o105;d'>{ nʉ-ov˔6GXX<Qw Fy8Ec]ȉݸ:Ab猚]WIz6dӂ Q$}!O} |8*1^W$Cq6,lrpOjx'l#B0Y 1V~dʸgjDVٗ(hA}}D4q^=#rieAnԺA*WxumU1|f5h{FJ!xN\$ȗ'4gJӵ6䲔rj+5H X>UǍyW[AĖc$ \ ݓ[%&.A55a|ܯuzIo)MrtcsGG@ACGD҆] $*1萹 ,"6Nԫ?)&huv9UFvz٨AҮB$/yRt8@®%lggJdg&Sxz <kN/k=ȐaFzQ"E̳4=MM-I:)82nsRVz4s55.U.EܽP{vC; ޱfPdr0ȒSkq!q2Ȥ >GN R,/pi3.~[)ztB]ʴO'?O >>2XGJ=&ezN4 %3,!uc!2@g32LT\aB'o#\#U$"z+˔I H4ecf1*PY QKNJAƙ&/kN#Z"ӶP$ՎthyYɹ>.8]3{ Wr[ yy܇væ\d8z(H샃7݋iwo=2dCUYqY3 ?d?>E+Y(=-}=T+F]c0F }mniB KPZgS0i;}LOЈt@9X`̲f}5iX*ks1XF*%G4A@ô q[P2^=ǽٺ{"QP\Đb\#MnxCh}l[+~\).[N¤4=FG!6 㜝`{uO~ Lya" Z+0U-аDJO/vJBysy5VU>ֲkDx97@FȘ`N^&$f*D2a% RјU+L}K/L]ĦRНe~Ґ,@3ӆ̊8b J];<3(ߍFY군odr5XaUKcs vg8<a~յ/ Ӑh3zj[ Rf*(Tpu^`jý &4wd6V e4gP ۱@߭I[{ٞ}wu?y)Vrew)"d"<P=f@L MXDc?\s=U7-!.$>me F̔ YxvXaP;Æ1{v`X]8/!([չ7<,`ZiVBe Ө_t3쪁Gtal5Z j9QsW Uϩ ΕJ=KzݠÃY- Н}K` :>"|k*⟤+o`RUK㏿QV0 !Q[592Kp@0b!zabDs韧c'8V${MWCmH/&+hl$7;9] ]iOPbP N ]HV_]XaI[}p@>))͇eиϚkCZv$GN/xVݢaQ6LQ {KOʠ>krem G%$[a-\P0=I~{U~ OcHα5%,+n5O~ F.tj-HA^&+G@ Y]gEEqHCIT Q}a}6bnXZKEomdގmT`%4cQ}VJFi$0U8W=9wbƴOO24T  FjAD|\|٤P.T #,QH@rr4byo&79Nq+K7)Y?QmʼnKK=Htخ*: .naf׏IJQm'̿/}XT LlJOyw1Y % /(pU(@ٶc=@9 (,`lH:t4Xts+?TǒC< RlYi d#y (0@L d^9VE-!q6 W7z?[@Ҹk_uJq / /؉|JY+C|azl\R򢃞X2q5ɌkD;]ϕ?5EpyBѨсG} Ph,ϋ罸I/A)!ɬ+S{=(P:7K6[4&h`4,w0M j"+WB4G"kŴGsהjav~x>RnD#Wu +S I["ɑǖ:|ACW1g2 ]Xm8Ar{2%Xܿ6)\gHpq ,7!:dY6UfkT{5P7(@wVymx:7YkP]b$dq7d<2gE*¥+PTҲ5$Z<=/r'Sm'46$a+Yxy b(؞6/0B5 ci2%?ΩjY^cKXBmr:0A^m7x<$c3࡞rY)eaƍ1X;qqL#EtVsx< \P=(ѦZ+~ 5RT਒m:)wG2rIA->"z럆kg@eC3*Z[_e'd܇删3+'S?.J?5|Lz08v-JG>!!Wp *tVc@I8jza X/h(| ŷֶ*B^SEGRas`S Bk 9Gai8ζcYX5NHàg E'ς,OZT/Pwd*[ը/zWcP6g@ڤG|:%I|\ݢLՙCVKpf>P1>Rr:7K H^ $ 7v{X!EJ({p->mF3VLsOe:ETTbѺ,Ch|n 5Q oi~ `$D#D 0{>"0JcX 8y6%.kl & tͩ|{k;© 2u^O4pF#^c*&j{Gƻ5>|s3Aܷ\T,tExT\4jZMfwV5UfFGC>POXd=4el<Uh j%[r~>$[@X’p7=74{yL]ؔ-iLl 8m%W#ȎBIlHz*~quC/S=.4N8ĝb"z5&jr0=EXn4S]Ԣ ~8@FPeGe͞v.>Q'տ0U=G36Pc#MAU/! [ jEW9qL:bbGmvVǟD8Ncom[0}JG׻mAs EoOV] <0X*pv[-}=KH᪟ | {ت:  ](Hu\*jv7ЕWBbӬnv+fԗo#UAl H[15\fa="ע^( E_ý 6+nZTX k#ecM+.{&W ׏Z O#UT-.^Lm39=?vG!)Yy Þ<Ձе*~ޭr-hc)5Hm`KDݶo̝ц7fdzxbmDbuafWEs*}0k[\[b~We;JZZjSNAxLBu8٩DI iZ~ӌ~/}嚈(Pجq!0UŪ#J!LbXP d+3ڤaW{`$A: 6 'V1vƺοqoN]<5BŒ߮4%{2X20( ;Lx[`w,QdPsPUsW8RfA;B]:[D- ($rh U_&s֓iC_\BTq/5F0B- =#ȡ~Nai(ϷHzl!?w5l]ar/﶑pm-,&6>>}rLILtdXI-. AB<:iZèA)%ů b{EqJ̑w ɯlQvIx-V+dQ|1Xa0(-R,@(QS-G[S^`tgPTZ ZO& ½ `q٭󠟺|5W`^ʼs@+gJ>:^\x $ng KDJ5@܊ )`7ߝO{*2H?G-\ ?4{j>N 5-z7-{nH_8X>Jq$ZY?6 5{A߄ʡor[w6dx[EɆc5.* kMSb٢WxVyA| qĚ2ܶǟT4#ά\ٍw利>[G]Rg) EhaF*~>F1x9x ;Ӌ05^0GbBtt̆s8єdep-Jk'"UM}"cQ6Do<]aěfol4$-`X2 '.?ڀdɫ<6kV](sl4u_Ž8zaNzɰe;7HΦ#՘># KQH(-ڛB[uWi Bwӓ_8سplTCގjub`ך|H:u^OR5+ovmŦ[u :?W&k2,ټ 8įdPK8.I$%`5LWW]LtI1*gL N-=A)RkJ6\xs!΀!-4j2-}Ǭ0×7}4ёNA{Z8;`ٳ֕Dž&]`a`?J(Y1 \ST.Ǡ:Z &!t,8P   J<m9[{i)ò#ue=n@D·eW@_T/I,.~2(H}p?Ƽ-5>V- - NLLDxz?l4T\[y0LȍpѓY.=ŚADWZlk + D{5fs7; ͸ă O6g )iΗ%2;9cPܤ6ԏrʿ2Gd} j̽졎\܇ۊo]T ֽwA㙄g*6} y 0A7G:!ذMh!fk&ުsά3{AйomC[2*^m?D9Kw pw Z6{P"6ri<]b+#azUN@}zLo`7dx~,F.9O듛;t^ D wإ7%Nb_ ̯Mw ե3cޘ0=2X>%*j{Z> (*UomIKbu=3v̈ͥL;a5L_ňN% +&B^0X_~x|@챫Z 5P3_p:>$fsӍ"!C e2 9rT)h6*#vup81ccx Rzի VH@66^QcjT7).28[Iw6z0b&5催ͬ.t8Aԅ6g嫲ľ<3 Vn̙''5?ΘeEe$찌aPfK3@h~a}-9 o I調K!'VxU%{-qf/mKA%@C^,o|B?ow&DŽ]&kUu ﭰ/)]7q7y+=&ďe?"~)Ka ~ke6N&BaڽRvk+7y=4с[kɽ_^*9p51_eyH$9wA):'/Pzl %\jhrƳ1UX.݇"8Xrr;6d(h JM^rފ2OT+JWI+C*g9#vG1ch^q<ξ0HF8 īCJiϊ)TD{#Eq*Q?mp^Ho _gih#LR0/SMmqYo'"f6,dpZ0݄{b>o21NmДz]rcjDQFJz);t~wNȁ4SsB_%jxEsgE m#ۗi1} k犹#كΖNCǠ&eb( ::NK\s 0y=F*V"ѻ?+/vB66KR#y!Oo8sQ&*UҢ`$ )#[(ʼwo峥j $EAqipYlu_g`(SYgy/$̎f|6/w6L@W @G͋gFBR{Zh )q:dJs[EW)נǀEu3 =OZ%>M|eqo2~$2S9xk,fqB3W9@p>(ȖO;gIp%m X38n׆@1]y SSrѶ{sɲ 0ӣI~|)_֫Ng&DFuV @ Wٝߑa`uח z7uxXVT)VQQB}0?<Ů-ЙIuqC~BhjxwpW0=?HE2!¢:h͊Uk!cC/m{R]BO¯ e]viKF _S̚U\ܔ$.,;PQP֝N~X@kQ9~ gUkYD~? :EdD8*w#DyI7. [_iw79̈́sWW 3".?И ˣ8̯3]eJ#x|f<[N\O%["R Oך 4!/S[\Nf˷PZ3s=h Ja3AF^e |AcS#Z܀R1ޏ-d7|%kú/C!h~wPRd#r'k=X]:>_+:3S c:8Wk7Døw1i"`RZ\?`%wT+C@[,p9<תݪ$Ĵ5kju?Kne~dHgnhzO#Eڒjз0:šxk P" w"<#w$"/v )mC.5KM6'`+KJD @-oA Vu?6밄v+=X=Mx)4\e5,?AkU)Q4+ң-v#@fN4#rJ-95x;aIOݛ, M LEc:/ lF&>HUQ zF0WݒVHTgeˀbd:f-%= YqYlƛu&ag{%KsCMLyg4,<:3jXem 8MuC Zm0]#Wg{Aᆴ_v'x~wE__  ]y,&6űv #M/ݴtgCwnހj_؀נ& u n˷R'on>ec(ɰl5t,†%6Ez? b/l x@}@IYLW& RQ7S|,F~Gus>0 <K_w7h6"Y㶳KѼ) LT6@\!(Iݘآ_Eff&ZԮ$C33R*LlZh(4@2V5[ȵ tENY*]Ffii67 Z=څ02$R` m[ndhH?+*D@]|O˰ndqɕR[U7y]<"V.vDWkg4.Fio (s)掻odW@>rAڲʧw8N]'н)R#N[u|Cq%cDWq뭘%kpĆG 28M&F;O 6[\/dXo^LcP(fΘ>S@&٩'uQ@G.l{hk!%|3u giA7WsJ@ XIFh6v6}鹱 -kڜ⒈>AKMi E7ʵ K xqgj+±+aP¿8Pߎؑ۵sgJ^juߑ铅 dqb.&A$-+dNG,oljC6]; Auw&q.kxN7zX,)=b.:Y!}͢ f l~*QiA o ("ŐJX[a|x(ϵWm qfSX$ wdcAvh[G| =IҜ[<ȖGy>ؾexhW$qV*= @1y6$Jg츪BW%N^#K? Uj1h'67̉.jPM0&5jp;sM$BلhllLκLITa1!!64a[zT8xT8׎[:#/j!(;I U~3~V@kЫs~ৃf~B4g4V:1zNCʓ-z+B!25`(lPS;)PqXГ q/\9e8IޕxZז &ϳoknSG~&BaŒ:7f휨|ɂp$cNxI%AP}%EByA ;ybӏGZs (EqTpektM%zcQF OlȈ0ƜڸY慥6n鷑H{_-M תXz^U7Oaio >}8KB7GҀ(¨`IThD:4RYLX @y  7-5kJێH|3d{ZM4TH7Y$8 Gl介fRQ T[;6 DӄF6 o,Y3ںT!Vn_7 c**qabذ<6Y ''Uٺe `~_1y+7m5{2RlC@|$#Prw QKՉ}UƬH؎ Tp 3}G`?,+r5Ȅ!Nc>6' -$3 ag )@☫LS&uQ8[Z-1̥d zfJ*Mva*L2Fjo$τ!5)IPtvkof^W=$xAp#3+ y*ܟp|Lۡ_YVițb-h$k;.Fcm8*g59^lIy#K\$]%^&%U\4O0b?M[[8&-=?6tZ$rN$Cԓ+D<rV Ԥ3 {sd~f hZTx63տs*|GЛRUJs ewj{ >CA,UiJ- W6/P.O M-n[_yjirJXdQz-wgƞp6Hii#̖+d;l%Ymav#P#vI55pH3`^_̒gC$*MOj A{ y}krValMהEh 9xKwG;-B{[^j̸aAŐF.:HkV U_ڸ;#Xskqٚ?^SzO5XaFt]a&y9oxB`KǵM!]A Wj4Cz,qDt4=Thd'銏N99ӱa-O Pn )~ʿϸ *ſ%(tnI֌= uŎrXs`"_Iݰ`V9XA;ۧ$B#UcN3=:tR[%بZwt5}umXw%n:d&PsU?= |Iڹ Oмd7CZpm1q_y_#MH^&zҡH`jS=ėc#O6&T2ICM@ |̝$a[fZxYK\Hݡv@p>kuql WSK>zn!sgp 0nG`XֱxKBFhS!jÚlLC.£Y a}(ᶅQL.1Ts2BdJ%3)GR0O@ʝ[{< }’y~߆@&xuTw:\G@ؼ>>Z܄/.+Ny_D'{}$o/RHi͔~c?QKnP+)E^eދZb˷+._iou/jiŴM@l(wɡlY>6v߹ɏӁo 3+vM`*U;'F6t[‹LTݓ0de ܡYmn~OFtℂ}nki3uyf*ZLI9K6>G\0f~>l#cKO"ƳmߌI# _m"OϚ WsN7MHR*]'{* DrRq,R4cTpx&X:]O^8K pzP]6# PR@ 5 }蘔~UG=bJQ`#a G}[}<ʝ+z:+E C =ΚYZ(=\.\̆ G\PRq,|S`.%q*ǘN簖^>]|r1꼰W76zsNr2 B~Խ5"o慂{H5r~7H:V°16SBz:MJO%k唞9smz%WL'1<=,3"NGƷ.<)?#[S+|i=H:@+OxQmgև}Gu_ԾP]Y $5{=Qv}(#=82vD|(KpF4L5zN F ٢e9%eEe@P3if˙HNaWаEpR3&Z~Pt"!_u=NxC},wv 5~V'sERVO~**U<ϭ5] =2Ӟ&Zx +zШ^ MٞRz**^n #5lȈoIw=$hG\+xēȘahmF8|>+*ybp= }Y0yONyK P^ Ռty8(3f.ױ(>L#zfGiYK̂@^ tR4<D] e-^qsi-ب?ڮYg";Wkkga.*XVA3aܽdm2;}~K=#/ϣ=5⁥, yُC9#k n,4zyi[S?G|߸|9~nsy,A/I ;NL׌k( kvz.N2CCA˖:!H,#4oӓiX@ o=7xʉ ~Kȶxo 3UnQgJ p=$:YkT47C<|dSjCHdҶ&35]A YVc}/b_jȶc4vy2 1tqY/"hR䃌mb2~N `.kD.!z8' i9x^ WUjO<>6#B!!m|8rϟuz7߄' :#DGR p)͘H'ױ |2@מm;]u]7NYqjYT8RqgQ=|G6XpI+6VD9_hk9QZ+a~hNqc"@Ū1NT@{$X:jr^ q+X wa&y›>& '1/e瓂>˗g{ʅ(B언V7۵^jmyf:TLE \c䷨wh6=JltK 3 ӎ5Va&)m REK,L e\Gd^K a 2mOJ|["b~B Ag#ǹneb뵫Q 0$ }~>KZ=_.Ϟ.~D6.a9H(V\S 4gZ~a m2!X+}{XZ3c kdÀmݲ-5I\P`jQ9hwc)i\bL1*r3y[j^[)wH. 3~-&D**9?26?ԱYltVY !^ZpKD}mlEԕ߱מ791)r#HE~Є"ɡV#9Opt*8G#K{˖?|(gALLkIgJ$/zBJzw {k/9ۆY'Ϸ/G"AO^9@}j"'D׮֓K(Ċ4I9SCeFQ4 1d%pPˉR\_,8 ?ҍć KvZ +DGe8ǭR(٠ # ?Hn`Yߍj//.a 3g"+! E߸"]OQAčj蜊![ l29Ja'Gʥf|'!8n!۬7Fo.4G c67Ur#ki#gIO[ZDo W KbOa##ՅdMCs :3 4T0}qYirfڍmT2G0eB8탍9bTf";P|7l$&Xu-N\kv] V6W =}FR ;,1(+tM}FVJ%+wHMUl71iy~}Tjw86"(*],BVLw-Y'a]T}b tPVc޼ϸd8C-J!yO2`N,jx<'&@Aޏ; w0O{mt (#w?!|aUL!YwQ#2w_5ޥ]EMܳ:YāӖv妇Fȏ_OC,%%O`p96d]?+iMߨF={T6"2?槯v`z)$Gk<֦td7: d̲{0b(.ۃ~t349q_i@ L>:o*c| 2Ž\*Ґ}]N4c%ӯfŕQNs=x>$˅_G=gY26X-wMpFxja/MyQ1PM߿0^h.U+2^:D܄ˇXp:e.GM"ڝ"l61VbJh"ښJ6~WJy=XMk8PPFhkpyބxw)} deW7G#d2A%G0G^S7Lp)Rs`kŵӐbuMp&5㍭狛zL m51]7:%)yJ+kw^[)U|2&J(i?<]fZ2 =rƒq:*5[L7zI] 3YѥvހM2VL7[\X}j8N"i̖aS͡zde+%Gm%s<*kԔdjS (nl=h#):TcS ga,tkӋK~2 ,Bӄw&;$r#"_~wc?0 ~&a=zRԼ_;H*$6sBm.E:u` [ɬr׏am <2ZؿDZ __eiɾbn~ ~l{NWl꩕z˝ϛ\ԫ䇿B+,$YcQHϨbn5z2#m UO3t +sKq[SQ~Bqx]Ur jL@SvK=, '`Rg$yQvWW TZ_s)4RNǦrQR;kkHU;E<'< {Id%?UY:rF0ӒT 'YC/6ڔhsn[I e 5a$2uZ~H'fLIJvя&Iūigf \av T'}>zN2W10 p& q@K+C a)>vAKK?o'鄣|CEx? n'Rln^ _8xJq7)~(enmȎ mo\.=_j(n[9M8ru`:`i6oT΋ !pQ'EbG\Y~D*u0\kMKRlћBD>S1Ҿp"gqf(Stl|FH *z/9$VklBxK_7[vplNvc"{xڸ)ZK 2NUw~ !\ݼEzH^GrudTKQ6í/tBUeAR1Jdh%O8aŚ$w4XJCoj@D@&8]n8fݟlfIF%%w+6 kt\xZ^= {hp2a 2ߙo (,|-4I)amW^\*l=}!ot~**y<el;(3LfQ7<*v@R^Oȗ=l\BӤi)'0NAtR:'@88J +޲A6LBduDnK2$` Q :< 7@گeKêG$t8y͋)\\vy,c\wܮt*Ӕze-\d-~ؔW㲒Y4]p 7ofɭClX؇r:r#3Gf6n9_L&i maN^o0auYG"?vOu8vVe/V(fhu` ViWhu./_rv^^Gdqͻ\Z˴1TiD>W(G5lLI%RK +P+t"6wIc25ɖ2**e{C13*fJJ: JBA?$$bkCd<žydT3˗Ztk3db &rx|xǒ#H^wλ; #Vy6'x%\tBpT*at9KZ>Q@-* V.1iV.]̎ȓ77w]2-8UP7MA#/5! 0+:eޥ (v,V;b -  =>y(篋?;  ߻&LB37DEIBj2a<_U ñ~;v)<&m +k={xVA/0KWY>KFˮc]ZE?*eƎ?"hC3i0AL%uRUp;8ۉi"á ̮"uCK}Ҵ6w !Xıhm`V8BKbW W|yirwE}9Ǟ"NsVۼ\An%m6H]–/baQH>Hb*B,$6͘$ײ,'DnqEJiŇ< ‘>I&A{}>"GK:܌\_( -bU" ?[2؈ϰ0ݪUGI$9Nd%T1#yXNvWupjUDBJ''F s8w79Atl<;Cb0'VdSQ\OuD$\/s6ZǍAA-Դ2Y >6f4\ZYq]۔PS4KF՚kns׸9tG*zȑm%F{8[? *˔ڪQOSO O"D'v2c%# MܐkQ RT$p3jBG|\Jи%G:1[P: d#$VuoᣪIhv`lJŭK덚*=!x`~ȇl VOk$tkڹWd@7PPp?: Kk8}lN6{L ]2D$.xO&xd)IҺw#<'{<t"hi”ϩϊiҟ$*Ll|46ds^ {dHqW(#`Z=b.GXPQjrM$V>/qUT(e6W8e63 ݢ_WP5*/9z|Zq1Rp7-0xS)eCÂϴ?WUϠ5HMO0 $Oj?Tv+SFrQb&`# TQ:h}s!WVoÍfR`aIDMT"怃޻(v42&Bg`̰"LFFR[6 O)}}<8$%Knh G$ H)EJF+vM{uQe졅\,Ʊ,3i(^q8A x:Ua;g*ΰtǻ~!7jVlh= řF!Kߌҍ%Z(9=;?@T G~KфU(Y "> B(֐܉I+TmDӔEMXIkb>&|Հ8 m)؅AɑH꒖2 |f{E=2]jZ07jVڲAnuVK<Q8S3+4Vѵ]';?0L⺊dl``9]*zUt!*{ 壟ΑN*iNW1|L* 7 @]~ TIt ۗ-ê$~v%{dcG 4NZ_H=! LsglJposɞ j҉६v / S,0(,;wU@GfQ/M [MBatǒ~48pXQ* 3BI{'N\O(M<(H!96oo~Ր l^[$I=URȫ9TYߢWש6Jq4O+n5MQɘjNHT ͆ʁ &uӽ?7mQ=Aյ""dDAU̎ڞM3kE޷Q&E%3:PI"(,HXOMb_ZDL{% Y&wy 8K+];ynO\Z:4U{ӕx<%0]<%}Lt<7JxGZ7Y}$ibS!WPZUMV̖@7}^E'mtnUhSܥW %l2?Gm\@A#?q||zJ~6Sp.R.e-" ix>Bt9 to__JemkWˇ)+b^<Q tV@9K4"_)LIJC6S2ٚw`ܩB~.O1ٻh75ǗH7/DTx) yI})y)kO_~CCi}6¶G3ȿžS.Q+ϒ-mY͌HTK|^V-eW͐~⢡Ԭ$cqf]Ra$8Mmk{椋Xy_ H!6r  }vg-R{?-(#??s h1Jm)~FӖ,tDM,Rc4j~^LSi1¦Dqm(_fPB#'2a# `eݹ> k .԰H @IB</ ڳ1NILS tx._UW%٧kKh B0Z4xk %iVcSң_V=]$acF{gaӁ*`Q zav94pDw1$fj\G ޫ-)1:D 嵳rRJ,hm4A&f؈>UFFVS vK>V)-]@*,?+*S1i?yzLRNCM2qy-Kw[Y}DB͍3i,7q i5T,3y jgX-IVl$`Yp'w갌"Hj K13Tpb!)y<8ε&pd)Xȷ%jÅo> ~v14c9Z`Cw%o5+*$o#AX ' Rj\BJHvb V-~J3Ckv Z$mZgiQ ̇&"b1:Pt75(p` 3z/bfM{tH;t^..EZӏJ_xښ.hV'l=>>: ūb*2h2۹9/Z2A^$U}Ս%xZ3A`s`'3B36> L"g1a'.+PMQ!V(K:ruȦq[y %WLZ6,W҃ ^RCzrRul|Fl _Ab-FC #[zM`Ncn#BqWġ@Q^QN_Z1O.iN˧ ,'8\tu%`gj4IH/!~u!%rwle6F8XꞫMHrO!Otݹ5 %_`XjH um/ֆs@V_' W8?AP B@׷j^\J49%Ǔ"MW>זL4?ܺ0f+G"\EB' ؜әrQN((<GQN (f6mQpfp/ڋl֒{;]S*6'yR2LHK6hX]i浆y2:eJGy|Ɇ7kPrZ IqWr bC! 2K]-{ ZcY>ݏH ځ|~a?I"o?_\Ȧ@ݕ1>d1o'x(d[ܽ L7$1 rO4  _v|.Z4YnIPM8dSƒ,"Y4ct3\6~2_9I%OCP % EF#wjS($jV&1QJ>|J88Xz_qF&} JߠʆmmfiVvQFߚ'E\[aAK;y%9e@Z-1f I7lKhC+ީ_q@6ApSXŴU'܌0+YtH6bW.Jj Pcnh߯A;*ն?gHf'UlY5˜HZlOGQ :֦g~e,qǤ؎V.e02v`yBAq'3t;!ߗ*Vk~OH)V.R4T@fG }L2x%c7)=vG=Rԕ\uyNhv5}MXnhhtCXuE:Xw!p}D(UBZ6t.uK5{30h{z2d(Iw pMGq0Vķ-+Xќq}K̴m{dv'#q503v|SVE9-YDCnPñC06sZ 3͂ܝR&mhHek9P#l8h 7gVd6E 13K@6<!q=zGKFtsЕ>}H15o#Kb@[FaIR )x@F.ޘpdyy/mvᄚ!)>P8v$C2) 2fTpsIZ%$f|/I=k ގP/Rg @{HIwT)gYFM4 A XZ"&,[`Cw)FDW Y\T!$dmGw}nӣaĜ l7 OMV6 e}6jpg3 >sntuꗡ#$9Yu-f 7+{Ja0B[!T=O (mqXVUmŗefZ&}JCBRͯSUnKQCO4pM܊p~;ׂxIj΂Zl 1+{}sc-Ԅ (c zgDoÕVH&J{i_a .Q FPHYS߇D ۂ?:N/Mqx Ƴ&/{:BW!l\Ĝ Z}r\"}JOI w0?JgRQ.=J< YƈI33^5=%)SUs^w6wNAKkl6{s U'ߤ:HQ 9x*pܼIdSDlw;\iP} 0>j!;ExY^X'A7z\9jbAXk)n@MyW:=Ƈ0#!?ҝŒl<1MY6\%GռE aw Rں+ՉKv9-Q#Ig=X+6 kh ]Q0 ҿm7z, jrssjmJ)}CIR b܉Ͳ;4#fo`yfs*w½%<^X;Aʙzu=n=y;T:n NvdE)SL&S6i`{'#1[ïiaںQJb8JcOr~3:۞oԄ3aEeC 4Ȍ_8gϑWA\Y̆4tqE8 _#J Ry!k\f|_2콓9uN>!JK1WDvAwC-W`ck`vj(U6\z%\'6/&1ZӫlFȘxCؓ%@L9vbAlJپ+آPt$R!b _\FG8WE$8y 2ճ6,"E<&(J<@E>OݔpI5ô(1wUf&,rjSY4Fk.R{zpp/Ju󑐀okfߧHyMG\n{1S()`S>ES@-7}VYj"HoYY(' [̊ < ϚMT,v9\tfRxm ]00򷀦Py;4۾ƩIO8/nwd/zٔxަ6kŃC%FQ*-ȡ."}[0f~ν/X9Ӛj3XfƄR4:Xf#] f9j[znȬœIEbPnԢF9Hd6GW=_Bc<[d)9fmX&$c\%Y5/P}%tpNv9KnLq+ ұW/z;4?ɅeV]91{,j K ^/-[3 怛8p=ݘсx⾃{sk1y6h{\H[P]zDy!3 )!%x'<_RbO{u'V̙L1'X`r(]whRP^MP3/"5-fMF6/N;YE]Qs/ߦ~^]72[sg:q۲d;g'B4^du%%OEgAn^w_"c}m)aU~&LA2*E 8\'czPx^ERP}=Ot2kpYuR4ȾpΊvc7 - F5.}HABt;?#j MݚR`;ah$-r՛-kw&3pvAC4p.;'T:B~E `MlwO7w ޺! qW[MM0774#PGZmPnZ Z-:-suMl)zvxot5ʶP lSW? xC~yZC3`tkݩ~V&Gg& æk̤zPy YYNr ah3=;,Ը8+u'ooh/ij'se궍oSI6ALp>E@ ̘pt97VYz,go||0e4:پ{9sT' i,&ck|Ab}g aO+2c5)kQ\,5;y'2S(Ha*꣧!AɄ%d&ܾ ҝvUE#G,1kɓ+ KJcl]G" M[X{jza@.GJbIQk]H[۰R?1M\06xIL.Jru4ODpNgc -Tc GsŻx bCR w%C9?@ UHa{>+MCX>Bi6)u@VoƳϹbʱvI->,@pe\n)X4OCݷFG /az$6׺S-SWU+^6iN Mb[{\!Cڣ|>ꂬ&(a^­ "r{a. Mt&s#Heޯ*8л_q0OmxKV+F/U˧;ӣ+J>~AH xyT{o}/peO3O|=Y Mhk.7=Nr܃=yF(x$Ӭ:p6  0D;J }1hb=UyD.@lAԵMYvU}jNhC-Έǚ˺vAGW9yG sDhݜX~ ;iFu"9R}?Ğ~*^* tUp(&o9nD%Y,TqRJO@Ҳ*y-&I\V韫6WBf/J`d*<'jWy{s5-8 qTDD DI}b?bXSZ?;g 5R@2N?YCw.-CFF1a4]v<Ř/zi%;xt;`( sC/cMRbrvuYG&=ߕ{g~:|)YdcE+sĹ&L&w-+8#ˇEL4'Q[@ ,y2 6I J,&i?㿎}&ws?_| /o621 ĎnGCWCnY YaN=? ُ͇. |A#:6w@I oZ`x "|kYcOU hHoӹФV_yx|a u ;V9H{ yc{aߥ]͹$VSP8tP==_;^sdv us|kЖIh.>F1c'9T8/kE\ށ/׾`[g_d+ji q;tَMtz#P␭D5V3mt8FUЅq/_TsuE^< Y_pjS: `t~¥\G{EGZb AMqWw %r?, (tlvAx T6Q: maƍu 9fZCdmfݗ 彜D61N;L`pHXFsfA6VS{௔eO$Ӿ8LDkr 2>p#n=Rכ*2Jd}cQB"{"qx&Ow,?_zH8y.zF"T6L}L&u/.⨋ ,M,;"=kr÷hOHu"6qc Dk̢5݅:k9&gnm@Nx+6* 8, +Vd'M(Cr4OҖu 1ld.oWvfTzyZ.$k A $7kfa]q^k(33;|Jx[ʽՄ=ґrحePg`xor~E𑳒ZD k,wNK>/N6aϰ2R]xJTHBJ\<У?x0]ס{sjZ+E=>}>d^m'ʡ6DM: "`r!NoJ" Xevs 7ST~|gg>eR>H azu-DS_]+o!tJ/؜FyM%2:˒ .RUyf a:FIsby!6DHD&YxV_O 7ʂ*a?~#q rĞiJс%al֔ⱅpKǑAx^}`xU pQ-!kY8^ kE+ʞEqtsF_լD t[DSq[Rο(%p(P|}=-62Rpxԋ/C=wTZL\J\^52/?uD&/0d筩Jן,+& l|@Wnu+LW]UpIGHI@xg7$01#6C$tVM'97Ƌ]b Cb5n;Dth) ]їOkbhqo'[4[e'\Dg`2bo%bFT !e箄 | b[!Bڗ1mk`(43habze>_P<|yqFY"0x:h M mpXؕi}9 ༚i:B^Ƃ GGyYOr&w<)9If69{'PIAzbgm [\JObVVwA\H0ڗerE茨fP3N7y5 F0 8gQ:b %7)eumD0oy@Bf=ei_J Y?R9WRdzKu{;UdT˥nEV)^*#7q{ 8+ȤΫ@dga4חX;)\nggB4O$'!ok㗅mEj=j;o9 Ѵ.g|&k~/~Vg*\/dyOJqV`Ð!SNpG6kkAӻspw'&[R[񲳻Sr/f+> wIaRK<hXoZC-x2At'k^y|YqSᠥe%GVNBx;7pr =FWYvϗ;>il*%|ݨh1iڞfwSa+OKpFTݖ17Eb \ ,3 L- B|nhDq`qB{9Et݉\ /)ǃAX}Dh,K}dpo*+Q{d699oxU qq0urVm%DQ*5e'Q%%6(‡8tP~adV^!?d{:f֧eN?WZ015]bF5\p.y98u oYZN--@&,|J+}j>YIHp1Xiw_Z ͹i%{[nߎ`+ L FL|ŷasa\{W׿ܲKGH#K8u4oqNMz dcՀYj4gDUau֕?311_i|j_&exNrptIu0O+o$]I.+Ф /e?sdr# pOȻB+F-Dcu7sb'yf.|fѕ&PCu!@%Qi-^EHtoslvMxdƒu}N~%[#S)7L #Nֲ[ErMQl s\$%ilYʱDh#MQہ@I،EgtCYcn@juׁNz{۝[҄.T-}hf\6;8?% AS{S![?uҥYڰOV}cO+pa5ȿ8ȏ82nީ WrɬKV%*IAχ7DnBI9AyHݴ3jCb@AnPЛ3p0M'B)M=5ӱ#Jcz}2Vʰ4arw\Zkqjlsc,cu6cM=Zxtr,"MIK$sbZDxd4>Ũ/QB;|/V޷l`hiKvOHi%*]*H-C->>6uL+7tt-iUOefD2A:w`ոʼnޞ3vx%Rå#+TV\Xn&`hwd̵YE#s_OTZV-r_f &jhaЁ)uNА%2o"ZL臿;9Scg'يyk9cOt^Ҥ0o&.R:*ayWAX]]30>5Jз꣡Fb~"3@؍VgM-]l?=̳E]yMR q#لRQ%,43 z X8w}jm Zޗ@E"T4^J7@)uW>2+t^vr@KnJ $o JfaUa"2O$Mk?@|`YO٩RRcn/"pQ(ʚSOaaT}37:K_D`vOBB&,wf[> 0( ; cɶ46eB8IM>ȶ2 _XReQ!+JlAGQ\f{᧦nǥ*ro{2O:s:$V`9z<y1IJg'9)qƻg mEо ֋zE#4En9rA2e;rl QIG Η)wÊ/Txe2IrѽN؉k)76$T h–@#E+=$#;uQ9 JdžOzHr?Et:1Wl( }96ThivAbo{~䔋'9g`TfE9v7@H|Ã-@&٥t*f%_Aǟgr*1v\Ɋ=)SV'ۓ'ޛ{۶ y8Ib*㣖\PnlS/rE#,VMג 뙭ikxd,G8v-ѫO) IA$m _'1`.[S3c@?bwڛȝUDUZMݜ)"WBHV)] cƻԑ)V%LW_‚lePl1f?L'c P[5JokIɶ6+0o:D>_\5Pk@+c#w)J\NRSLZ q(l>z \H4O1ec&r mɊWGx0 x- 1r%!3,0j?<4v&D&G&xnn=?lsbӻuMv" hYV u>eB+3 ALڦ/(i)+9U +d%Iܪs$a%TU=!b:J(J% W5js)S'l9߂Pw^[RydAfup4v@^a`x"X篸eUnDs7P:|QJV;*{xcv]ڼgLp3 afH6i5ϰSƿx5J|/Fɠ{0د}QAʶhuÙeSN8M=s7ˤ"\Ym86&"hTݶ3eWP7PxG\횮"֣=.غ63':,T;$3t]{@wq w;U{ѯ9nɳ| Cpo+Ī&W9mo6h^YUA~z90B՟uL{}ꉉQ#}V\X,\38'W\o¡5ZZ-ljՖ~-{&e4''S g쉝<"W繼&lcd Nl95 bO)1ȨH{wĦy W^gOb/@X( <x\FȚ,Nu꼼G&[ISlB$xC-,X;n'EojyVύ~oRJ8VNֲa\x6w^\B_F: $1<M9:U-Y[W {IFs쭈AXu2 w~ܛ]?m)VĈI)3c;.SxX<-p>$y_M`LІXu6ktƲq1}/55j&RGq$g'scXz#ymgv uDw_'xDA4w4:X8pufXUX*D?B<$/|*`8aP{ϔZA]7(M.XbhpoV7:fka,ϪֶF4dl#TtS6ep2 QjnEpuvppYeR aGױ %]|3[fvJA.ts>mo,ЪRZ#K j|@4?ZO"­_n;@n讫sq-9AUW9`.ꮣބ^Y`BQ)Q K`.WQ/efwAM:T)ɱn]g`=ߤ5].ɩL`™ !R]`<&k/EY4ôrU+O k&_AE[6JqjDB>{;Q쉆H+~#=MP}=`pMHvEB|z(>̿_qRieǭ#qF\Z[kh,<!&Y#3pH'1 RQ!p&[Y#C%IPV@B܇ x_ȃ8>hیũ6پ.WPRnEҺSBN`̳{yEViܸ+~,qE>hᓋj E@<| nC/βqvPrp}Zp@Lsly{B1U@yϖ䤁<5)؞"X5|J+l_4/FMK:C%NjL?' ]Hj~9~)S\ , Ԓֆ萚ᏺZos#is'a]^7 c8#ԌZj~j,'# .&o{9-`5$VL8'U|njډU} r^FB]=x[d眏!`+Y|%Ls?V}}2ng#?y&?a5W5 ;S\dD5p*?}El[\tY;^p.Q4Lrbqx;5:8uНa.dT &"bO1{ Q5_ iB3K?z#2ܷ%,eUM:O|>yXlv}:{먦uLM # DnX:{ݙ7-e.4|lkg},4Q}c_;Psu0HH'# |fQt m dH4O1S["7R2! ͙V r2%hwbE0 0T5EX }J\T9V_L܈v"Ca.tM@}r#ǴU\hRB^:d j[{vѺΪ`"?Nd9 < % ӣ:Y_J9 S=IvPhXl:Φ9 !s%({UO in{|M ; z[Zv P -P!|q)a J&GFlF}j;XjFmށ@)RBߣDʉ9 MS }O uEݪ.Yᴷ.^[Ԓq1sn\K9?{{&)w]jYȩ{W 5Ns4p^8 X=ˑFdzPf(81YnmzMy{x%xe y7$m"4wNK)AZ ]ox>hk( &dpJTCp:S'pIJmhVfsUkۻw>v ?!fS+94S5 b3򱁝gzl` 7s$~MBw >=k %SOĉ:hZ304Kg>$=FRUqdJfLH>jOi"pu%WFgMͣT},,±~dd\Ɲ\O֙YtoP?rOnVt()d-\`k=~)o*h5;Շk_["HnDRk?;%y;BbJݒvקؗMkM3eč*@ewδ.n [)L_"NoGňnOK GlpiWRe貥(] `HD0UJ>pָzI)ܷx; / "y#+XZ)):SY8-цnG#L1Jz0 #}Tp1zzz aB|TjF=A6'cyRxM9"Ldn2L~ ȻOR T2JV 1F|ըC zǩD恾|_gӋ M8CRkRh ɫݱI!' XXC{}b&>rz!PD;_A'[|LK `LŚ.<+}义͢& K@2'n"B4eoZm@|wd 56#xd \U& Qn@jSWBYp@_!PhnmmG4>,|iK9zD]D.:ԌqDռpuAgQ8b?&;l3UTzUz_P;[ҁqmC[lƯ!Dm3?~RC#cpv?O0Vzn;tGp~6.)Dn|#-BeߟZJ`[ckZ5n__j 렅rw}vµ_-y ޶xadվJ $R^ЉLugz2S}`qǃqI aݯJ :Md] szC01xvq i]ƟR=*(=AP,+lT_olkH;*z?NPxIYߔCbn8sI랽%s` ?y'J?sʓ0:%v$M9"F>e{1҆?]y y~:&Moyꄉ5#fPǒ}t&$R9NPI֔C_CÇ {?_A?5yg0 'Mm+⻢[949%{ՠ#*H}{ăBpOy{aQhwڂ,~'Lne(SbMR[^kBe`% 2Wuyw&MZ2ˋ6.OZѕk\5j<)-SK)o}rzI^esrE_ 2522{(XvțH`Bv ,,)DŽjnY2h 'Gpb 9:SB蕺x*KexX=CB!{9ݕ= 3#E~6+9@MbX?BCȞ|+8cnm s!aPdU18g"ݾwJyvo?M6ש wGِRukhBjtѶOD'lzݤe]~D~hz''`CIlMضsFvT\V}U|y AR~ʈYF>_]8YU|m!\Nr h=+_QFTz%Pe3lJu e?~sxl$͑>'O"JGzhD.Sh" 4{Q$ZۤoDK?;Զ7TPsiOCeE*8e'/MVUP_^N 3B=dTT6,ٷT%68&qԵ^x>jܛc>Hg; (^ Qg%'~j5Zt1>LJѣsF{;}o='"6/g[ >u^]V4Gw٤ QsCGCvbQh5̇=NL20gR7A}Hgfrjn@"ml< MUq5KE1O&:LJk϶s>Uk^\ 4WABId.yC\$#'Ms0 ,L!,0+:hI/AXTWV9r`JQ; aP(O2i?ƉnqӼn/4B;cx^7Q:pñ 췟)OFɢUÒ׍ͭADONsQJ6 ~oF-0h6 70B4acq8~RVR혪mj[#?T9KX.'4^p@ "ђjLI^t;ÜbÍ/"ܣ)%9;J{{vGl Q]LSj1\TR\RuQ)'>岊u2R1S?枡 hl!jGdVRl|ov;Ӎxk?%@Dx plI̽цdmSfO [n C%w(]Sa4H\e󪅑1[GEt[$B-w_E gP$ H^l0lLIMmVA͞sٯG:'ґ-N Se+hf,2h,U`fJO{R↛g@/Ν �:0*`渆;lC Ss%17ZVgw)S*\4eZK]0Nz<x jSӔ`V7yS)uSHj6MݢuK*8_ZĊRCjw n?cblJ( >!Nf Ŀu)QA[{(axquH{0;9U:QHG',q4ڛ UT Yw\g:F;!`4 I#JsXifYv{+PH%JExzΩ`4_Vf)5ҒWp" rPWdNW-+M_XZ5Fv&2+4?&sȭ0ЧMxo} HYS38n%:%K"I!IJȧd^b ilx ZHN}E7{1c Y+dweh2|oI jO~,^)bFEn={#&s<[M&wxdŐ({/=f 7v*ͤML |l7M*- JU:}6>o cQ'pS>`ɛߤD>ދ+Q쀴 `M)ƃvhM;;S+Җne.Zx [D.T&m VkYfL֬"'ۚ4vY] F> ^Fv?Гf)b=/f;p]&.,ZoI,CBR] &sb4W}c S⤂jx YY gYt57p#2{ۋE dLQs>-QWGL^;q` nvV[jS#gSaЙLs'm#)j??-~93 `Mݺs%S1ww^X8b}&| I(EW7uCȌ0r cMNZݕѓ#!\#UنMg"]IAqy!}@ 6b{}qv59 @gOQ|G:,'i%غx#5Lx'ou(o=.qS]cI. Z-c,MuRe`2sSCqv}4'E^lU.069`1/<,={k96K]M;L~_ TeG^m8iq'ďr/6,2Ap[G 2j?m= eb"gwR!h'~yڤ@t+f.>E4U}'f=6~C@S8*sX>׃<~'rK}|0a(]zPv.L'AUI`طFbR ]GvKTd$3k%YqG[ô Y5MJ5kƑB!B 5ޑP9I}1U]iTnm. hRtV1k kCI5.<` p5jL=S}Bo~p#QF nL8mPi~Dp4** F=[|6@|FT<\ʅ"b8=ʴ"ކ q|w$O罨aDXquvH= >_C:|Ř5DSN*Sϔ띌ArBȝE㾐@kGՠ[qVtGc딖ya(f:QùMPIjF3oMJH3Bl ;bPu戫FE3:G8.@8ncOpAivBlZإ<AtZIBWa ~ڞ7>eru 8}y~a+'),|BԱ$&MXo x=p Ɛ "ol!~*mb32KTcdZ}V@Pz' ԝ;g|<8hUR4b/ek}dpi}PݽYJ{R YB7FUoUC8 kTebaAJ=F= ̞! &G [dޡd(boCzm\?S B]d;HP{B^[^Kc}8l?6Px_ ΆM* 4ק'$,o/WE2vXN^pWbj_S2H[,Ffk9qy\.Z!joU/b` 75 e! %蔍zK\OG,Ih wl?k[;W0 ߙxA9ʭN [h-P0:- _#f1cW63aNF9e!r经っJ,GI N 9).D,(D` `~.Z}/-ULJkk_V {uG?.0ewtm 9"cs9Fd[ e".Tc?+,)97tdzT~ʾ&GR[`kt$ ݛEuƕZ rXDw -SMSriqpdg ID;]hZZ(GptfT%8()u^\+ARh#kG]}\tgw~: L(g+칤ۯ_>Ol 9F+{G19sv쌘jp&!}TcǖjJH0K]}2haY 5!I$1s9o׳tԻ:έEp'A_nKaϓ LCK,}rT&¦*HOB]HK@(asB; fq Gdkf]u'_d:J x%ش睑jEЦ1*"} jmrHrdt-͵|{,Ӫ9(L2Vpz2Q=XB0nFQv4NeR`;2懐6ků)FpGhj:z c]sBCizQUi'r։kBez,(L:GeS0=Mmcfp7(ѷa{<96mTE.I;_Ho Ԋ3q9[#Gf$J?·)%*ӫ\ú? 'vVtRP2Ss揎+R:aC- SMJB?Apz ƒsc3=6GӇ[@_r٨]pҾz-{lhr%9N98hvz0<šqb:%i+c\dUt"xd"}`B}KжH Rjoǜ:)ґ0GHy ZW/Q]EGB|VJL3:mOJ-?W+\Yz*F*zHg#5cOuܯx$*kN:r@xYϨX{v꛳ACۓ}R5ZİS֑s g y.>n"C4Y] fL?9mӸ 2ǟl+)@w<:GWTHb+a*̏nF̔DI`4K}sdW*}T6J1mɓViz^ߨc ~[u֕*a V4O2˾ӱj7ۜV)Ǟdco3ye 8$=٬7-[)v9۹ U;qIٷ^2Eiwԁjn aSn{A8HKΨC0YQcݟIAe(:޼R+m腻ɀjesѰPi9S@d<]:ǰm:_&sE?=h2O`DƦh/2<@+ ތW4X'[a$5h~/hƟPa2yu/y üP+O"3ZmSS$%XZ鷿5WJD1*Zt)``ոac`?lLB~a!*,| #{]ۥ#%bn86;ѠFN\`oN!fąqӲtu Δ518a:CgX1J>5ZO؈ٻ3OQ# ^Ճ׳zT'ƑslCNg7 ͟ #l7<'SU+v0iM,K#ѻ$mv%E3eW--:~-&~gHoTH}/7e"t;śL+&0pݪm.ÕӴ"7ôg[W\2ܮhQ>P3)xrT,8 @=~vh̜S%"#>%t#[p R^*bVH6ne++\3\w%VGԠ4S]G@Ԙ04RGEjh^OImk ]I+ύVB$5@TG-puD;.ؖM{ۍ{?Ox vy_@:>P&T HeWQM9q:Exh"Xfaz޻W@L329敍k1ŐyCwXB-1N `[YebɤNʗߩKu; M\˫ocǨdPԱG!гX&߲3H3Ȣ: k2N#K 8?ϸZ E_>) ^;VDS0exHK8@lrSq;p҂)1*)Lq{c̀N2X'9N{:L"(L-326Ku6"p*evEL='(`QoKN(0 j^)@k2X*i(.UV}f`\o,::257캨?pLUאћH!{I]b64-r8 rA?3?/69 ,%L)WFϨ RXګi?u)9]*0,35#c5"(> 3q{Wxl=k,Z׷hɔFqZ.]< GGg]u&/i.Ճ{^Uٮ!EK=NOC )"LpLh޶Tf.*+~k_0g cL-v*"ozyc-sO[]漕W5sX*?ԁ/})&h;Bz !fs)iSa}Q o-RbTֺ#I ր/N4HUw( oT\v{{ݘkh''$V&Hҳi 2au^ַDDab~o' i +~*s_=hwv?f~V\z,>{+*\.ΥX iHr|CJ%zf$BK[2zȂ"-?-KF HaZ^rIEw!U-ԨC/PX.cd<1@!3ݣ*~RUA"=դl޸9|TC6 t#`!dQ8)5xzASȦzrdsggc[|cOJbͤKg\;o<Mws.@ǟ]9l"%ڟ/oa#PEz:٢M ~EAl^ژ2ѵCi,(<2OA}?cZ؎"h iG,`S)mbhK 4h]]%Tc-ґ 94İX*;Gh5)fZ**DG;Ok)~pvVHU+@EjKѹ3(hSV!{ᐖ[2Mxp_-# W%#>LgB+r Ue9il?j,p%*øܸn’i :*IKշ; W#B)to*߫pr59L0ON\zb?s2?I01=̣)NݸeBV%w +~4߻x>7޷UjK['nh/7oR@ÞOU ħu@Ŧ#qGۙWV W'pHlEL=24נ53( :*ROAdIi P,eQ(댍sbAF }Kmvی~)Y-V7XY=LJlj>(e)hk~i #vz՞H,#~9~p-t sˤ1`=I5A_A,š.wsj,jZIPz 5+?[P+$Tý:w + ~PfKw'Pf- ,.alhRiQ4WRZtb孷$3]h9VAnxW_rRg Y3 Q[mlU? 6[H ՗ؠyoJ,,)c,Qv+OTl`O_[ݞ([ot GkkD'q[m4U!^ѬECB0C,/79ѶoG@49)lVB*]%^r-6-0T4R `2{MsÔ툼hR1-pf뱃7.#y06;g['Kk*JOo)m[M&Xdo%\__:(zMF=Šv7tV`& bEPJ J","Z3}>-Юlz݃]+U1 # ccK_uh5ڀhp*FE٘<7Htk2 ].)/w'I<z`&ʯcwMbS<&N(\$8bp-lc +z>̛gk"츝}Q5+pC[zh|aZ.FZKv3v% n[d]ή)_KN@iVv/}V5=Ż>ڑ',q+leqk8A6>`R%Ea=vI>- W m>+[yh <൵`5ٮG,mL 6F~%5"#gLJ-U˛~h DRw__j/[I lMX{Y\ZKoc~]A/2&S,n6g %?grF<#jL.Q ]JȽ({ 8[y@:ITϬ;@e }ҝ=r6ĹG; )\Z(V71C-[)]ٙ8y<&g0lqm*1 ~<] ?tok EF? j~en -Ol`;yd mKߟ w t`AY !(crʌ/XBq#`#[:CEś>P… !f(~E@O :!{Cet) Nfߘ5``ClSxК|uN36&Pua 9+5-vc:WFzL"!U?xKdzWcHOpv >`<3$3q_pVS%PoՐeIKKŎ;w@&䠸>H}-*Z}̎]ՇE<4MJ"`wKںqd ;MuAQ\M 0GP;@nU%_٠NV {\͏lCC={_t' ZN패+~fvђiEjOmn︪Pp8I `[<˱@V*fO~pż*̬TE[piG/OCOU, ,>~\d%bYvP?6ݶz{OnB l"AGTwhhc!hs/x9(5LѦ'pњrTV\+8v 18jo_\#ٔĨ j-9͖U¦jx/ Xb9}^y1@53EI! /&;)iYܹ^ٵ\UH<3m*Jpay'5L.XJiǔ Ml*!pĽW$$.&#֒G7vz$ba92Qr4Fŗb* em% YK$t-|et7pŒY8+Ԝ G[cn6!oN%DWpO#^LƒPf#}K Tm{!q!sN3XUp*eX4Bh_Whb) VUOް.lτjrmvo:wZA[;6څtB.QT`@FCBo! 4QW(:J%&b_!2FpƖ 3fq)Z}]b]~F=ܶw֗̾ga[>MQzlȭH0{G17Nw–eIgl_9FnN:3u#Tpp1`8 ߷KEhs,i[iSC]guGgvMzd Lu!ߙ75C 0O`R|vXoԘIzɋ d=8iާxCqRSK\9@s ǭ6mOw'T7)fW/-4E䏞mA*ݗwNX*RƇ<22*EcpV2wZeę ҜΗ;J"'q,iBR^جd´=ldbtX=x_|mtj rC;X1/%9۬&ekL˥Dm[4oewj @H{GsHg}kzDҞu+-^4Ql>|To2<4ca4U{.mdI~TyG^)Ȍ4*]nZk鳃FǑmf]Q>Ξt0*4ZJ;24I?X'N ]i@}輐gqPbSLuh$H_ ~RHini}T]̉P`B:~_HhFCP"I(mC;~I8X勺y< yR okkp$<ց#.* =|l6;[?ľ}~zj4Y0/NH Uv?vq}qnD,wq{_ VyZմW2#ʰvy&c `br&yb0c9adUjzA}t^p)M f劐qB9dEĽvzAPcr"Zĥdhk ]T9m'KRùz~h|}\l?_ ݮrŲcw)( FiY >x{ 7j TI,| (-׏̫z燳)[Zh0>=>+6'aG:dp0c "Wj'}wavq 7aEX!1׳4Aq'N'@$857_Xg`pDpgZWi% B泧OҌ{x*1Mj?ߟ3.R2;wO+ {WJ#fsJډj{0?AI$p3Φ{Eo`)L\@TpyQƶ:VꈈCedN2el q%"@4S <7^g4M(A$dz6HhaMTol@!&h 8t4$qߤddaB-u |0J{2`~֌$Ӏvejj:˖2%̴uymbux܃m~wi 6s0Ӯl4I³t#4[ma!3Hm)"L# uvqwLl]9Gk;SoaDNIf@O]7/B- qArwUjS$4iN](wPfIm,YA0{den—sa,rr|O[Z}YU,YH' -%}ca+t~u~EeI*xt6/j>okޕN6H1vNTCTi>W)hmg;8sn0g`&$}dgvUa5 [&-CvLs^Ls'A1X,4kHmQc"Y뿻3Sfb!hȣ ;m(Ќ&"΂Tbi\z|"֣t!Uu(H篩K 0ۣt)TeڡrJy,%M$j!踵"+]l<&|/xwOnh*CחG?"{{a/2nXhEn&t]c^ImgXWM"& iQ^TGK1*[B}H43uVRoI&Z]xԠ}S;A`nc!'je/[0ބPɢX%EHesT?5np .`;Wm[~SP2%ge袳Y?G(wE"vzns_w!xijTb}4\N"[}1V;U2lz3nTdL< Y}iˋ䰴ԩ,Rb+gnM(8@\^yNu,Z2ս{ 9a.U>ZLj _uwr:So{jkhh\%$擷W3ڜԔ:S18Đ-hn=1 CvzH7]9H}`0,a %WK=o^x(}lRkCJpolBiWZɵ(}K-Y m+R1#J)y 1 xy>  m;+kN^n6w3it!jڶ"v2d} eW[2R@< G%I@EbΙtshDG6 6\@F??4R |?ĹyK~, 8ԑTPD\Ӟu;Cwk4u*QMXIh2).S9cR1A7YȪ1Eu+˧dɔm9uUXgP0'eG$4B' ViC f,< -j3UT3^(ϰj^6yi2w@U P*|Agќ: gGV8O,gI|?݀=׀n˯N;q}t+s.T9ౢ.z>[b:)CaKaS4mne 00XE=k貃EﮂҀD]ݼnRȐs7_{(Iu\h(ܴQ%d\o+֧U_ۏw\QNl3kb9uN+Qʊ<8+{bBH\xԀIp,Jͤ- v+c#Vw[hBV`AvX@z8qIB?2{IP/ERȹQ6wmt"Sf0[H҉L/kL:F kV16S|XaC@tӀ-q)5i8 kje22X]I: m« JƯb|q:ń/U;mKؙc$`$]{Fi'PBA#B%ڷwn*hjfgۖxb Kb(gTV+eŤr.% zY*˶QWZ!$$aqty4> 5\9^]*+ј.`7չ{U@Ԥ i~O&WE7 *טѝKыDsXj U-tc I9;^iv7 m\oeeU#1Eծ`59W?J?Rχ590Mr/y9%4eb3y)9sdX\ 1(rSn p&Fd+,6DƮ N.p2,O FE/μ_#kIw=땟e9S P<5" *7fOpAciLjxyLqYLOȔdݹ TR(~Yd$6]PTeXĐfoZqh/@29+D?+ȍ!4}YtQN&RׅHsRDކAAm\<p 8T^%ObI"j6ZOеv b~qG1_&(-g}2,C;qĐYyc@fmvqRO=^Ǫl&94nŠs-5.y@ĬyYceV{:+$s2>OsW F-6/qnM~sKPIMR2u` ):g[rk*EtlLf|N,Z5;A?9=ϞcJ Q b.`:FQ50ʷkGX`ĊIN1?S9sP1|PQTH2ɒIWG/EF@bnSBc Z(yS2(oҬBwKdbRw@ϝIII J)0&e$)|}`~%ԋ6,,0f1-j^ȟ* IFP'8'woC;dE}Z PȒXZB 73A@ %}?³gcxq}r[:GS܍<4y!cL6\bk"(N]yYܡ[)Й( k+xM6גN  qϽ!o{Z$9/{gq-/ * I n.U/lV]4 'nr z'\&qO Q|~q$hF@)7ZJO}sďל85:d5{m#T~ IY@WZr4$_2lta0Zwgu %:O+agpJ5&U% f 󞖝'h|R#40(ݢsGr>p`H׸Ei n)%PvuIl1{+(~4$j A-ȫXEg|׺nIRJbR{挧Nc#J vdy@В0ܟ#J*՜!Y9\ I64]dP{ql(`DwWe]%R&r!C=͛ W'Gm͈ϬŽܴSwAw8P`gNyEҀ_BJhP6&&~՛[et4[-cQN~uI`QD+ނN;J'vぜ,f%)Z1:miFI9l E8F\Ǜ o`QK@k_*w'[Sa=y>\^T'|Pp1sMoN)`y:#xS"&+OeҸsR,z}`Mf aޯZf-|`n7GAH-t$Uퟑ6~].0.A K' e1 tvǍbe^m6: O3/b0*qfRBQ;99k#40PGeO]VHL=oQIMIeo@%Cq3<3Ϲ_,pa(n\‚:7$_Qki q JIJzת!SDI"HHq$d0^(f?fDI R6}s@fX`>]L8Kvvk+yI.Goäl:MjiC:q ;<>ßq#>CkRR)ӬI4S烯tb'LG.f /\FɃR /TzQ5 iw-jȣ O`<~ߟzM:vz ;ʞyjy*Z"͸_F S"VE]0:@C2ZLWNGh CZGez&1 绣mq6jWBWZ2WWdfS'״n˕W3:ԸyYĭrf ϛ2~iS>uHz#L腪y@<6y"8jz [<0>ГRμ{S gFED$pQI*$v ݨw  !RL>y- EqFowɭ8{ ~[wy<vp@`tu4~jxʫu0@}7{6ީv ^OU ׶ory<wUfMMhk̫W gpk$Mx,S'Mh6"$"IE=L6EedeTYu?p{ (ҟ(3}: V؈|1BLAV2Zjɐ[EO::UV/U[>-CS`۞W%(!ܓYϮQ'6Y&^SP}n*ECy ~9͘j?\kgQʤO,q?J &=Ŵ\.{[%^ R,QmeBݗt_!7dJ-Ŭp.QL:L=zhڿͮ j>#yXA(y{C\ 뉤- D1h"xGW!}oJZ_^"{X?(|mHD&|D~*[Sc/s]bEWu|]ج'l[g8@!_GÒ*boZAlŁe+$?bbUbizUkcWT< ܜw"#gv &㝄=!VlQ"؉ޠZ' -BpCT/WzL'$->pnw-,sTkƙ^մ5l״F$ ;+%hG BWzWλMؔ]5y72Jqnt 39'O]6%;N9i0I5߃.2+@9wuZRBq,ɀHeil7}?L@k'^CAӋiCL'J+Onم{yIZP@hM;w>mnPƬ$U$D"t@ 05f]OV%d -g{bqhPȮNϘupوMkJR<oФk*dDО=Dl).ҘЍ9 z{;.+8ҏryTk]/a"B:CYBc"Kb**uD܅9KVS!z-ȾԥHN4O\Xn<[YaaQeu5n~ob=`2K N\aΑLĽsyfP{/m-"m9L+Z^x<6Ʒ돝6ӉաSHT0<~V4*Im LTtۤX@hۦCa'ĵ3wG 1:H9(X^"O`ţ͍!ؿ.*B>D4mi[:pL3zQ`W;8zs` F59%e5r zJo^ ŏK(+ ylE;}}olTQQR t]l~qw.oviOCCw àe~.z^>})m\٣KUv?y N`snm< S ۨg` }.N0P5oD`GxjJ3 ^S~N}ti͗Cy]cᠠ kpS1߷ظMnikb3 ۊ =lP,FCF#ID9]|OQ9Ի/-9B/]fȿjUQYb]T$ԓB@~ţ՘! MՒ9PEj X+?gȶ +V8.XZxPm& 54vd?d4>mQuvuE)o[y`.H-oSt7VGz>0`3 >iIp/1GQt*kz(ݣ}҂AWmGY":qpnP`Ǯ/#i}洈3 +w׵0&CW㺵mҊr z_V/{%S`CV܂y[ ESK![H\`Q޳۰JT⤄^SWV"Z%cMIL{' eف$fDt(,+#hh%]]@Rد|];10)k{vXI4 b*9[.!j`j]&"ATv Zˁ[C1OJƺsZE.Y{"jvUG`aܙ t=qB0 :R?wغ+ 3':F TZG 茍lslzHGJJ{j Mܭtzƨ1֡)Qx^ٍ=CIJy6ƯnSW|=_;*Ow&LXs]uOwÕݖCX)_lT{[ &ЫP\K2 JoN#7$nCԔDMPs#?W8pNZg4_R1[MFLڀ@ۍeF`>^P42[9iIzJL3u@AM'ːŝj-Of&-$*8$ٮ$!>k/=kuH1n dH+\,f*4fLե9ĶyOum:(GDf%(+uDm{'>3A-dػQd!`뒑ˏ$p"z{W}seOd)- z 'ch-u!ە"~{iA !E]ؘ $AbP R]W,D-|/ m᧱N%EfӬk"XZnqÿ\pJ`j+5+ GWyEjv g_zZ|2Ι~,z+iK-fRa] m;=e5u0NOj13Bw6{*db&äܙ[zrG#_LP`έt|ahú}PFNZGlO!&v+QSUj*'?P(+)"RBr"#{v8Ti}=Xq2y^v-Qg ]l>0{RcF/F)" )OZ`늚w]b؝1dp1 "9BH*1GG4fPqg^gZӂTW[q|ѷi|FD D)x}Z 颊5NItCѾwiyn }W3j]IeoV9>#YTRvD3x6)RÏU;:3bź+|pO/h -eNo9RRFSV]6|k_D PR})PU:9Veݍvu$/ ngɮ>{IqqMcCF^q:%Sw?gWXOTKE#@YTS,|݇ߢ!kSTJF] Zh2镣7R#KY J^]?ko|96'!sa۱WX6Ӌj Hq4ibUc;A+&4/[J!:N:]٢rG  SZ:na{l_ ?nUD'kLdXrCUV˵YqeG@7=&S/$Æ"??{lgJଡ଼sz~>3m^U4U2b7\hvLtuPE_E4nhtIjA?8: yF$>t@n)MvE>}CU9l p% <ĵeUe)"eH&#H\T7jUlŽwx !uxۄ)4q,Bxƛ^$K-Fvv Hf@˓F?nfΊvt̎GNG8;ai5ag1+7]Yk\kyB:'!$t$C>?dTSEĥ+<(#.VtQbĮ9 aظ9%?qX~x؃:wqޓMt]^@g^Fȩ&HϏAe s ;ژn5oՖ2sja+vkwq*!Pn5xqy6ۣ)Z n=.H?5?6x^/<˔v~VQec-clSȫ0fq1?|Nqt tI&QlI]M,l@-(uAu9tngIT2Jh%%و^*g p$@ Ό^j5ܱG\aSԍEy-VR3ơ d8hZRq? yTQJ42lW;?5 Rz:UJLBqй5XhIx;l:Q;U/946g5\J^6[],-Z++y<%9>1kKB(1bJvP킩iS)OY>VF5ewޝ%|H0u+|Zݶ]∲&q1.x!-0lf,A{*RB~χ=%v]h$1_Byw@H*/m¯G1چe:2`{遮,aLS/|YՖZ>J(`lŪtc~ !0 gpIAC-75Kl2(?|& W?X ͼ_Sf_#Fi+S^8oKVOT2,$y\ }(BI' 2  mbJ#MFsç9QꎇC1ƒyn_0P }4ڪ x7\D!LƏ6 ۖYv#^]z5n Ÿ^>=] '>z.RfE.E6{' :?(KI0&t[in{);AQl{ F9=@qa SIYEg_T۔1MbݗxRWG~S x훛&(/ıS:VOt.]1l÷v _ JuB2A.e6j3i+3C%=EH)6O%xߠbyѥP6\!mu;B El )<>1t6U}LDd \e3o?':MfamZt_L7 =F[Lxgnlbhœ9rY/Y$6;eq;!cp6NC|i<:LLC]! 8oz%ޟ^Xvs!qwbFL܉ږ7_L/9bĂ^#ƫW|0YF%ꫧu N 2X`rsۢHM j;$1V0,5n:d*1J1"(#ADCe H!_aԴx-Ik@ 6JE/rƳ uJzKV)a~ч,6QԗE. >[KP?.Lh)Տ1^~\ܓgOMb[6I5(2.Nٱi.`c y+5AI֏K[}1jػTAFXGB~Z~%Bn,H24g`dTOYbn#5≛eyEӄH!.3F97H9p'B #ʡ͈biUbUa%i;C jq Lg$:@Sp6f((,@ط3VbFjӕuK|PsF9yvt7g%V_Yފ$o4hQZcB8c"yd,{>R;Tkv*[Փ7QΊ;qntsvy_w䥋^.t IE]nf?t9hyy1uހשC7 (4t`zuy9<_5Oɋɕɟ v7Cls1~+gXeCeEhн q.xZ| ⑆]h Sq4/ܧ њ3H `hlTqM%5a#OD|PvGXQ漹 tUKIr79:s1{*GH!4 %FJhNAIW%fpC#Lx܌+%foٶ ձ;iC29ἥ3U ]\pc}INduS+hM8&9Zo9^ǥlqi-Zy‰OE1G7]~cvY*xp/C6LM#HsNDJ${SCf%2LF%gB}QjX )_RniPLQSعi7K~d;@+\H ^_ﮁj8@_`ܬ0$/zny^巕p@#I+ͪ$~bK\~"Q6F鹀 Gm!xhpsp._F=<%Hk>]V,邇j㑆].t|M&nd%<<0fZ4-&[K@k\?kΒ.-@Nn|~SxzRfZJF4ˡ_lG]L1QպqDQKrUKLJULj`vkێމRMb?&!CxgNY#W:?lDTY!1d.1 )Shq(SQ|>ؓ,2ex mH@m/R Hw'!L~9RAOe 7Le@i55в^)ٝU^BIϋ-Ѹ*If5}N _Gmdk}3afb:s5 QLWZ2ˁ L춏pntMZFf8*' 02^O˨q> JP#^*Q,Kt |gj`J9<F,OLxפe+򃼏SuoSeaz{CUjChYXŔ_';:>=ZHzJ.BO~]K~ CM9!EN'ҽ}m#=9a9銬7Kxky6i1 2eD <79p`BlaR`B9 4DrN;!~!r[LH_* Im(ZӖy(t4 ۦ/r&Uz翅}Ջ@LğX60X4$Iv8˝&6o?wLAR\: tC^ HՌqfy,VcY^|P}>up݂ce꜠( Є;JD1Udʀn0 *>? a%d/B/}5zz _pW` DH6%xߏqtf|0ҭ9rKz_fyS^ 瀅5˩vfkh+}z(,q)5Cnӯi|R$z%Ly~N'%n~Bi @Z Yw}"J Luz c㏯ zuAB>[}bnul8`]dRզ`' d,~_8(i>E4 Vj=Bz y$[UXG,0RV{Lȇ:aӈepVn׉Ȯʓ}srVVj%F*!N (fŗ ~g~؂eAvY٩2?Q-<γnHrR-u3p!*O g g&/A<@@T]Z}fR &iz.'¡8>XKrI9cp9O-zD e"ϻɵ؞/(E;~FH$7E#Y3yAfiE먧1d{; N=07,[vԀj)fl(cHw3;}Kr:@:|57.R$ݍ3rawgߚ]ԑyAx5m1V+ҋ<$`v4p'7kw8s|jׂMxT Y] i, 2{v- VhZiƊG'iw𡬹^P_.JzR\L*`ƦO h4L1?V>9A؍ڡ #XQP\(~ xEλF$Rcߵ7QԔ¹n u͚$+&g2&, )̓㳮Ϛ-8oS}Bzrg*f,-Ӫ8R<' t͛DSq=bl}a'%1y,m+6[>QjuX$#p]Fē&[iՌ Ty#dpzpm6njP'<-t.o|ȁ,\*K~ā%\;( OW\@ʿ' eD7u0B  UEU^IqzR:N 0_kz#'3#r5vMlZ*b{v4[{zHTX仄 +hG?QaL^~7(^CMaE~*B!L,:UUQJh&ѯmsgGsS]jeevJ6_68[n'qvye"M\t$uOlF#`- Q\ݼ{]ʴOB LIbTG$~{5T68w'0_QTm%W3hk T촂c~׹mjZz>r{h:Biks^1-J\KVIHl)2sJu#!#k'q4XhCqKk<$1Na-9Bc%%A0=L\goسSX?f\1giALP_"`\\Dh;-][g둩wz+ ;Pͺ~Os%\mZ91(d2i'&V4A[>;S7>-%6D k&е5 6L=j׳Bgu,τX؟9F03m >&Qlu|!။@Ipd=ejSWvj͸\Q]Ι~nY\Jܴ6lU22V@, %MW=e*vO˘$JvSw,wny _7h y qx [=golg`$׿>Uzp.ۻ{i77\ilJm>ug;~/<%W ̺SILei<7S,(,*1G|=1b8uZVN{m#ˁv@rC*Nd!)(`q#esS6ynkM6q]VKS]arz6+&:R8rP.oYIr^:6P`v-gW]Rr@hkoC+7uxCq5_%=uqoH=]&4\}ݥ"k"=7cF#vdެJV}(dB/8<=t-mѤ t7f\t-MD!ӹ իg2&JEYmWl.cm)'f-=)n+?A踐rfZAqE|HT]>JRN|CY&;pˤ;-θ`@> .<(32nxP"MdsӀh+k(7𑼂wاɬMq"P2:G+N}`m(Wε=ȋI^14%DIBrpcdB_z&ߖ*:_-W|7(/mk(%aZ  Zw]ATj7CEt)D!ig$CHCKf2đn|Cb (lOssr;V$l I>k|/845FѺـǕiqAjޟI6ڌDK͑[8];K^ELE$]@@ӲWM (/Z`-0{V^MX"4vRZuh$1]e7~r7Tɖ=6RH' EHDŽ Qt c42g,~frH8;'D\IP ]gNb06# =c;K$+~' GqxCy=tu!x,Vw]&'IP}~kl rƲzJ䆷3iϼ1}l %4j/GwrJl`"UFBO;b&J2]Bh*(,9ͪVt m˄v~K{K(JT* J7NY] (<Ŏ,v7? ~ž׻Hg;Y5BceɜǟK*󦵣k{C[T9nX\J1 Ihsr<;a3o wUBL(5(t9S0l\(BmHOIQA-#> }]TPlʁ]N"2luctס%{6ڌ(Jq"'kx~uTvK3t|~#,;F nKrz] (@cs4+\G/xJedZl1m 5oqsZq*7;B h"/9S댻 vCUk- up]_(TGÇᄓqӵ 0EQ F إ2N:Ǘ)D W{Q2  gA7/3+#[EM1bNH 3Ir*z0+ >.tٌI\gΆ=vbx&Yby=-S*b6s8$5/g=ȱш x.ym%Q7;H4RnrKns7Ă"~jtpB.;X(4E!2BE |swF#IO3ݓ3Ƭڳ3vf&QGN"RU~1 ߑ/|4Eդ@D}:xKn]u5Ho_Qp,^R q5cӢ\ a>xLo/8kJecfi>Jr~&"d%BHza]߫Eۑs.vy4Q/V۵<1Ǚ,_G]=WIC/NܡfCwXCzbWv;i kvBfN8cn#zhWԧHAe$Y-m8lM{A7evZ̋m $|= D=`M $T.N:Wޗ?{&srA߱0|%].b3Y'R(}6ȣӨySD82_[}KuǂHܽc0!RX\PN41i qD,V?iyxhWK9]Hϓrua#\#d#ΰȂk4H̪>Kl YZXN)8M\\ƋӉ?V a~٫9b?K{1gie?Zd |xݞ:BX@ ܨ)G P 6:?ŀek"!]{?e1< HU~_+2qIK3%KO/\)/s,>/jtJVlET?Ia/2NCqSH؜~0,H(ֱZH⾯0>ӵŐbqw;KCs(`2qy "od,5"ݡPuЩCRz+<\ QZB 96RK0nӰL 1P-'&=B0R_*`KQKK_UZR T1a4qacM o #q7H_mJJ wXsϘ4C%zX1,hԖ)kk/ikHa8W"q(^Ͽ)es=HT':˪sg>O H:(7.\)( 15[uf? GrMUvNte~>mTO{G$v/TS/*I Mg( ۜ!i"YRxѽ~5'*}U)ѓHF%-n9ɷQV[r7z}zL$g[?͋u(U7s" BiljILK\p<֥ ]tNtg,0iYbiI 'WёEF6rE7|QsMXNVz1.|<N=y9h_TrCb_t<ˀ?Ϛy]s`^ud;iΎ~m"Fß%J-خc`6|&*^_B۪4U8]Y=\-֑w~\7 㚆|G10P͉yvB%5?%_w_|}B4oDčŀtSg֝Yt'h9t>x܈՟&0H[R&Q*Zi@ hr8=niՒ˯}1(KIו:e SbpctM y#Dd+Z;_ދM PCwm?E@?lč@^~95)#brшV#j珄PG!Z&/gz/\m+hy|) @!v#$Wlw-%TZ2ħz`f迴Nz*o sklľwq+m3_FXL^^n܇ uGTvgN; >w7$#}I'Gf!}H{ݔJLD0.Jh:T&E;ဋMѧ1LPVYiGݤUƙVև 8fOjO(n UCz@‒K$S*zղ̠1 ;' vJϷY 5&j#q9"fꐇ˘@cq5F/ZhslFB7oP_:czc"$zZzmx;1m; fCh랿c"7jxaі nI[+U¥LZ7+Y8$*^$QBnà!E)iu;=A y5OԤ5 AC j'Ǡ;,&K+ .p< f[Zk<[扮3Ƚ:x:\j%XL `!s-#-s3Fht ;LlDje$"1;TG#o=z-fe<v)NI%į 15EdAOi){ʷMa%?9&/<%h &i kM;i@P DkUj}5)`#LLScLhM`ܟi ~ۅFh/\oS[{I{)JI, P@j2KsUD'u#&(rr'a|vG)uG?{y*JB ٭1X"PrP0TŘݲA';jJϗoe;9R?Q5eCaGcr ._'1C>J! }gj!YӖаB0E4l~j%秧VyWv= +Qgl-X ۋaғXOH~eQCzr'yop93qA:U-@G:1~ ŤVe#L#p{xd&@q@osA l rGȻV :-ny4N-ue|VfFGםH=%Q63vT9.{QE(хC̮;kP†!m.D`h"VU5סJՐii|(yT |Ox]YLe*}ƣ7&YaGjvoǏ{ɑǣi=!hfa6<7n.@Òd+Om"{_9) J=M#ؒj6|JUQ$﫚ݹy^'+j tR?FzGHY6k)ؙav$d#^a]{SWT/9l܂b= MaQ]1,s,ݶSaLO}+M/C=ثIY{J=*mï$MsgF-C: *ԉ Ԏmތَ,wtLݫ=ӿphU,b0ʛmN>^#y6Ŭ'OMJ=caw ֐r`)?JM :*:Xuusm-mAhbvAk6/Uq_A\9 dWGa~+(9))4,H!A7Tq<6zGK_2DJ̗^B/,~&OM qwmL,/lZq%|w@4#{?Uo.ΗiQS/|"#V}I#pP{Gk+Y S :,g `P+b+,)?R{}!v]۟8L7gl(/R^P*Rzf`ӡ0ׅ8=ÅETWR<4_'p KK~K!fԨȠY8\bKȘcjȅyq-V_o4 eQYXOʽDJf \̵Hl׫Z(_l[* *OgX@ho)T\!mBרpm[iň3.}e lZQSQ[ESV'$M<bWKi 7QгR7YJQ_[}הPH|g;9bZZgXs6ke7N$N蝗S,9 hB!-nX(Ĝ`Lr 9$*ؓ$xiCrwzڨjCz@AΫ7Zd a"w<]ZR/(w;ish1;--T*ѦXp'/mTw0^bW51{{NSOG1PC(K-`N^o/SP`K1, #Le{'U3twuzB#NqVp;w ʶ6*\(@Wlhâywŏ(FwEMߜAz50 Y1_]y)>K:FխnF=-&6Gw"\M'ݔlo5 yvOJ 2,ϰfrhm;'t}O:y 0qWkȝC?Ah"7)iwĭ!]ҙIXʇG)}_?'pSk92MQ?5pKh0ёOFr{ Ãd̘KKB³^/(/Neikd5p.{X$!ȗ%Δ*!ߑJ" -e‘84(0$a?b(4 h3}G\S9L(UjbQ"`qWZ6̠*VFi$f/GZhf0. !&y?MqS7{0Y-K=Cѳb4Z?gbS# 59gF9Oƙya?\7-+ɤ@B.θ4;o߁ =`HALպҊtq@ؕڱlѰzGuI$? UIk;,pwE*7jR8A5F( uF !* nv]s2:[˥49]3^Ot|@yː`j2l2veߩ}E5xϪ*$Cȑ8OfF9:6ͼcLa+ySg}UJAaYکbM%Af)5࢟`tG5 _䭇j*0Z1$Vf.~ي{8ҨT[-4t"T#慣Bݾc?U peBXjJ䉞%Wk9cwO;QM&^~reԦV,ΦaR#sS`X`-%]0b@N%yHQ&K+AZ_@F,gR<‘cd1X<[R] ׊q,pZaE=D ũ ^ٰke0`0uExR߽g,J@cx/Y!xFC%#m!,lX'c!"wquLٙb< ܭVdjI0[xl:qFEL@~{~dSw^3+m* DR^y I~sk{vQ7&&Ũ?g nڒp65VX8 n}w/!Omc_zHh`JZE7XW? C~$=V"SPqa_T'VWg"f@}J$n+ 3 ~g4تZ a!+[t%;lǘKȇҚ-s-G4hӳ@y5@)QS=ȕMjp\A(,(ՇFA('{r+ ͮϨV-iy~}kl6+z };3evm~uqb+"r߶y.=[H<}-@A-q(˫-cnw9eZ룊Rɝ!u^A ( e;Rh}EQ#JoYv},p-7Pm߼brU00­VO$ }M.G5ܢFiiL7 k1,e;М0^'7J#l[1Kx-QjȪp/ Qr0L#Y2w%,x<]0N6/ъth{x.s'YgfVj oݩN~5ʧ{ᗶ ®8K 胝x)=զ1,/WD6)bqw*.ZOXoA`QElZ29oZ +7m0y' )`1112a~o;R/- /Om!Pv'(YewԎ&*eq&wٯfHaw%2MGbB>Ӿ [c ^UJl 0aXm! 5?oa s/i#>+(F YjDZrMjKOa$s*zX y鞘\ckwhzΠtjH7u{י&&lXֆ ̑!΍)BB\6NfՀEKfQwKek8Ug0 Ҥds<{R/$=ԋ?gtψE'mBGd!Qy{]'@r )nOƳs{~94iۦ;g״V GGbk= `8m$ PUMkZO摳ɲB#BduН"ȽJ?Y4RAŁF3@h„4+a&c>`;,eϟJQKO9klXf}9r3s8W@ܴ԰"'E^3Ts^ ^Yh(RJfDf?`)i]>:g5ޜH~DI!f~E;:wB]~ Yʺ#+cG5#2w]e{; r%gDZT[cz`F#"Qatw ~WiONZlQ[lgjԳ<R<B= y1I\VȪ`Ш׃Ȑ1͎/03NFPS%O-3`j5}l] ( O<9I $,gkurb]Flbi|#= \+͡xZ~ 'G/+=SғF073P"jF43ؚkhaЮ(=)6!_|s3uaHZ+(a2wmț?u?Ԫ2RBl37+(OF7,Sχ )}Ì1c\jse. ./E=SXgmS_LiVBZ ܏j7zM\m!QSJD.]5rD<;yELGyd2brOEjp1,(!bbl w1|ouGO ԕT'J}% ؋W >N>:Q> UeCj ^c v5 d^6V(VԹgY}-"'1rV1^yg-iby8lͱ,bdi0^H+b<1 &uT*: @Hm :"c4 giFvbX.G^=@JXt ’Bۻ'҃w">($&RK ʾW'Ry?fՊDӁ(@dݜ&Y5EJ;\[ f8)f!7˲ o\^1V^}py^lV=9 o`RvӅ}]1| /b}u`%AfҤ$l;PFӺVw#[k1;8_vMыS!I<ӻfo/;xfv RR~1iY5mOBqw\& V5eY|N ʝh vvVD ֐dU󺩦e+V*Rs^jbc Uy"&%% eRR+Jt1t*C,SgMRNf1tpau4WxG(24Ƣ ^*^_Y+*e 0+O`,z:X 8ɦh\lޗ1L.$C GʚTДH^WU3.1.ȖurQΥsG mZ-}6]LE(uR&dh[n/Ypje(${/ɹ]JyPGJ\h a"[ P[hKf=qZ`AIV61[넀 .͑nFe@DAF1ɬǑdk' P5G4"y% AV04nM_lp:Hη!3U_|.$xJZf0;-6ς1,ߝ4@JE{O5wypwy :kw*А{ţbn]ChZߦTD>{ViSig΅[Y;{DӺѽuBX0~:'Gd P2UN.)TVnVL[ X7 hV"ǕtN}1UM;k)"у]~L%beg<i@fgLBL;);^`ˀqpȹB#^pE>M/'W  I%ZZNsX7ƵΧh߲\ 1E c^nlfe6B :qY@Y%#味$.doCxΏJT?$rå7zH&ѼwpuA.KX<3Qtnb4a$^x=ZLi S(?9U}w@6Mצ#R  6ԋDqPH~5 M)s4,ӼU9 [8Q8*R/)~B뺣Rh9 (}*>}w}AyQ?},aKEutDBʇ/츦O{l·w̮Յh:gR*1 T/AGν'Y~R\LgFaY"'&Glǩ'*@! t';)XӞuKRΕHt!r4["`FbOƶ)M[J>bp(l\l]C6n\hmdo X YGGF~LFd(/(B"2##3IqcĀ-hO <ǿ൷|1ʚsmhԒeNg$VS`fWg8,H^X6*\`5c^`E dܾ l\akHm%lo4.c'na 7!iڍ{-?FLyy\EVg0.)w$X$H|`#o y9<,ԑFpk?7Bo7^;*%o[ϝ&l@KѬа_1?,Br4 F0G,D 4FȂ[, c"l% -r"{r,'SZt߽zflƔ{_(?Gp4#3%6BKw!dx8q89ڿ_Xef|(>4K@7X0<Ο렒??~`: ;}Wc ce} rEz& cs");;;IsZO::?nl-fD"̈́qrck8"0݄=4% ӫA}$O. ob:g'5XY2`jjk2+xFC${=ujBޫI?T;08Qc܄.= @=^&Izh~"8nA,l4u K򒅐dRFtʁ߀%5 VY^2QEo`9{/e [z'v&~.:bi>ᰜ[X-.<|Mڬ d| |tĂdz8IȰ-j6,XɥÎ\D&ytTykK uLZ'ZoXǯ|Q~[#]3W&:cRH(V׊g)PF ^]/XK{#maջk n5EԋԴ;gSq7ouGZB3Z;߯|.ZT4 9ؾD_lwiFdn3%ZQ; ?*AH+ԩ$;)8$:G;SHcR|:=*|1løU=3i+2?'oi6'Ph˛1<n&3[!/&dH@gkҀR˝|SJKmٛ!ĔLqtd}ao5ߌCG $5KCb_[B\VQ%E8QA^#0`\pC|* Dkts2e6V̞, N9G?=FXS"P_CES!_$ڣcS{@xa)4k3#Wzv00ԏF\ż%X5K#]qXG';x1%W8 җƱ0 9.918mof+P PJluVKYX(1Cuiwm:Bk},2Bw:ݟzVI-Z-:'rq;ebos@ zyN@srvuجm7k$m_U3+hrhxT~<<{@t#-ؓ+ z! j=$Bde<zp&Y{bRsTLH^Uo:|Y _ Q8ׁ,}pbvڻG36P- Nt$%.+IzMȗ$AW0#L3۸HLb% E߮Hdq31 nZ8XGΰyF`U{2Ie eI*(0  ĵ> kQMNKQ% `/pv%Z㡫Is]3h:-Kq^*55vD7]P?wD](,z 1SFK% F .Y UQV> j q=ubcrn}P3~%)!徽†H,W&MǶcpMlT.Q#68?C#\jT@2Rv}PxC?P-q$yiaՉcx YBH2*Ϣxׂ. $@ wJ54X'ӫ G/SOR 2R:?fNI ܽV Jd|^:*V]џrCmCvw>&;mMg&}o(W!5+c1"WicվF_hHC щ:@@G 1bƦ&32y@F(VY{2X&$S<[ {HP'+ |P]T', 'i Age>T@^ w+IUً?ݣkE\1 5~M1Hn_ӃxmV(H6iTȹ獑12ftX/v_W~:uf"S6Zy@Ogֆp+yh.82\g_ 0J--~\~4xT0KP"6O!ajglF7{QҖ~+YGz]N΃1lυaA[H[#愔Wv.l|x=GFI!u 00QUy,K ^!7m)Yj;e `j,1^OX#JH pYɘ/ؙ#qry[WAzB|m jjeP3?$x+1{nG%J 6 RʃK*k/;G?l=/͛!@q{{Mv,0U'?/ n| ۂj$#$5Uۛ.DrYAQ/Eٛc*vD/E/a#u;G Əی2 !h\we3!JmY$ױ"QO+9Okj~ݩM;Z_8ar8`alT4Wv؎qIT@G8c҃U/m v8O%lƱIksZ+m'h!~pQB 5?LgoTk gq,\wEwR8  .Cz8rr!:=׉*guDk(b>۞odI_2PVŸe3(0rct$j k˿TC|bĶ߉/jJ*;pFois{f4 ZzU۶~P/60Uci5o0 q JB_lPOq06Am%MTg̍^(lWMruqUG8$*lg}>OJ}\ynM ';^'O?ÛlsL[@VkyIvaQ {)R_i v|Eb7ds!˒n@r}v0U?*EB}_,V^R TNK L\3߼z}`BEu83 w;Y8!/&RQõN쉇5~*1od&H' ꘝBoKirҺ|¼$0q"lzh<P R|tρdk¾./u;.p=4 Tt֔ZQ` 8D%B{O- ÷=ڙ}qE!}˧Bk,ꤔKQea=eB.q `L%mrHMEHc=5nI#&1"ϓt!mM#щQL` cZFEj3 $Ω12ؼ- M}(W *o[/J$g@!^t]_ssfnh<7'nZ^_0[:rigY%JqLx$ݤXpom8aOWN1w[VJKvhs.H ؓ\h4dt>e[TBDQ,IU/ձ;Z=hAps`5Vk,LrFT61\ZXpՙ7mf_,xU;1GX@载Z0鐪ռbǯ9N2 c3-]nRZ,oi8,> Z:UQ?J70)->`=cle0_쮌;=YNJ>oY0҆`s?⸷H?4WT=9ETa <ՔiܼvT4`-wPlpY*#A;ʿӞ?!d|RMarQ/a@a|; <h |Tꗓdk>9%UkT@f( &E"Z.q8> әb6gIM[&<NwiuXiCmE69Ϊ E[drODp{3McՕ;txj-y{{9ٮ+9:Y^-ji)P_Ԥφ3J:KC9J|ձ}&`g?2ϫF"\Hk%(֜ ڨD[Ȁ!a4 B &NjtEbGdDtk%X{VMw=9,+"?Ie@Yr h8}c6LNޑ9Wb뿶A4$*(O(,TPrVJ{+H+cZW]a~]7.@եj9dK]uA-UwzP ZŒ`/ M3Myo4܅N=O4]j@΂cz&C3F1Hk'з顣b&E*Ӧ.A6FaIQy#{J7PbS鳐7P8ի97i&% bYQ(cb@\[$IIFmN:#7B0b '|)3Ø%Kʢ rI{BeIOBNJ%ScW)07E{hl瘣tՔ)ʠO2sbeOFx`8N-B/y4# >7x /tK.׻h_d4Ǧ?d޷x_AZm9Q,V5%ݙC֙R]:jk19Q론P&~47M^蕔/B J#%E%0 שZw_GM}s vidu#F~LOC:cu з|-]Vox6.nwa(%I- _ޓ<ʾS64_,͒6ՠl΃ǘk \%OP(?΄&H߁!OC#QFf(>J`fs1~dā@ I9i$4*\GMy^! ^gJ`kP$N2 cԂHoLA\\Y=:En'$%gCCΰqo 'Z<'ZG合%hFP.99QUoW@,CquC17Yo*5CUR_"ף$OTx"C`z;h CW l`jP'=pC%/i?dua] bh[AYgA[) Vz 5F7Ecx=ш-PA&9N0{*=ι dy!A[Rn2l L!\`^ ؁<oTOb$$=ziH% /~o%e6+k%I3ܐ`PtC[/gi4fPK1-ywqT]#"Dei6C-Fu յŰv䗊Y*z1|x!&< ǫTLNOtͦГxoh{8\`J:'Y04A9qbznyV Z$;0Xs fP}`qZpΥ(6)4sŞm7†$?gK1А\WՈ/U5`=7E Z;'_(VVf{-|v)e2r#+=UA `^=2ue\#:m=/gMuK3+=>y3V)tF*@YzBZ:*JX_P೥t梤)IF5JMՠ83sbQLcV>䇎X|}픊F/_VzI/m/I/1aUq1g,ƞAkG=š7Ђ*ǜ/*]PV=0/29X>ҵՈ)z9%q:{00SɣG<9y9DA]/,oz)734:hK.#vwu@F`|8|/uikq/^_PTtЌ3j{ΌՙC8 F$m[ .7_z4!OAq 26CeX".4Cj]DG9TʵG/EAzO$>fƮϼf*fЩ 8oMu{q4P[;7LǮjK$=8A߫HP9-1{k: ܈?6t8+EO2Ca?4PՍe1 F! :.'fLlʍ}~"I{jaz0;j3e ' o/L>; pE\X\dmC0 ФĨ5+b%)uS흺'  a2_͋",zJ[t2.#>dgU3<4gXjj]j c!hr,"95KC>q<&\A5gʉK wl{j\1 v6R)b ~w3%}KP=NA_WЁz:GĞD^ZL[Ƚ/JKCO"ޫ_]g{oY78ҪP]YD,=C0UF%,N]n]P']~SZS4/L}fHpJAA]ФtjJ3Ԓb;RȻsZYMddK0̾ Ϊ#yFఌW:=p=RNy5Qڳ`ڹ¢A*CtZ؍s&nATJ1 ?kYO\_CQZ3޵;52+@T-׽dOu2~7o%NC=7*Gk8&rANCP`ћP~$)ԳqI͌U{Oԑ]O*>fc03%3C|2#"o]a),"0c8Gh>Ғ{01ro ,S2ӌ)V 4xH4jIx 7f|S}jvܓ,9o,SNʾiy6N$bOzy#KʞY8w3MMٜ*alfŴii3m&Be/<(^[DBU@+ˎ*K;KΒE\mŭg#?=N ] ֪*pA7+{] xRMqH: G`4e rNmx얏縛|/&?%>.JEEOf}W;V!ʝeX/Ekzip᷺)GxTi'x!\G;䘇qo 0V[nӍǏ'HxL&ʐyG ^?O r -S%grK(LgW؛tXcʊ5ܪVzRx (zbfGrn3lT(5]% z:@&kd8!lf1/TE$^}6#}tuNGJ=|}}~a_o=ġZ>U1Vc>Q29YkOTmYy*OzVJ*D?slѼ!9Ï[o* ETRa_% Ac|7iS,.qVx xcLYD1n_8 m99 \ˮ7ڽץ8hJr_Xo3#I/:faQV|D#tYD/%EKPmz=v!tX/n% רWFz-^\،G #]83]šV&8"]h%Vt766&>M&;~6ofɉa]1\(OgOA\Y_I|fQ}ɤgX=~MJvnC`+2bOmc=X_EW`+*OJ]aB1*iG~!x:*aPXD^!V7}xpVLu|3yF Lj *3=Z@0m~%{OؘlL{l1Hoz)V_~GaW@&:'NUsR6PyF ʎ=uBƉ2 =?=LWpp<LSvæޥA9`y_Ecuύ:Jʲwt}:%nwNu(->û>`ÊcI}_F&K-<ۄZ6z>]u)he`f#h۸F[6Ð<\)Q>tǣFVKFI|\̛GmnM‹@ORgD_J^$) H6 - < IdMgYk[!.YP^ Nbw8c2tЇ0ODweTpp};"d-/EfJIM`l?V3 "7z dSe zI(2{WOAў!˳HIs(mȲ 8Dӟ{ns,}ϦpL25V:k]XE @zPPQ\`O`k|D.(oi],˰WͦeU'hږFVTNA-m9axnI '(% Ka}6\ֿk|~{RB?EЯdWNƟ-W,$p 1?QµstϬ94:9JAm˃>j3'u]oǤv}@z3go mKMCEQ_:;Tp;[PG *ڝ.1*EfH1h!b .'02{\-`fZ9ʤ|;`ϙ*p>L rTÅ]O BF?3K!v+ͦqp -*9<3 ݍi9 JpJ[iUZ 0Op7axG }d--|(.`[qo$cEAx@i:GJ:i9R_",ru+X,7C]3)Q־hfT@_E fw58qeҘ6)؟t3)ԕ҄Ȳ@< ՉM/@ |lq)tLw4E/Kȋ-Ȯ:ՙ ߥvs:VSq _BBlI{E,V7fNQu$J+ȻҎo\zXDF˫;5kN 1w/Լ8T)KvJUm.O Ip 05y`^F4BϒTzmr#jԚ 4ZƔW7qqw:. -pȪ-r~||ž BRe%"kq(*c/ߏLF4.Ja" m׷43_T :zC̽NU9gu: qOH*h~kg7? D)ٹ 4t ߔPWLPt"JWM!~O㛾d ġֆ_mvKOjv(8-[纏W}mFK\Fs:K~oOU<0nݛrǗKI >McCå0IM B,o BПr_aij ,4"ƬЍ.<6`NٍUHʋs#!J$uĬ.|S.~A*m|!|jGTq f UjFAje+?.NZM;n2LfjwoB|U7ްʷ"E]WpΦM& os *s+'vx#C3[,=:JN_G'6 bB H pEL3P+ۦm~͹h[94'xSIfvd4E!dGʦz^7`m)V- 7NDcƕ^z/v~>ҹAB FbP£{<&9OSh1⫎7G:ix$U$`a?e :)v3ÝB8 )c6-UB. e^ZQttt360:c7WrŶᵜ&ywUCj#{?F܇PD)LU|tnauk  p껕~1~L&,l*> ntPa-M.18Lؼz}}$aR!ć1Tແ=At+ɶ9)oBI@n3nhaOԎචgTC?L }D⾣PESCHyzc!*du&.1KQ\DE'mE0kԴ݃%u R-\9E g@SCx5il@[VlCaz%?Q f4DL ֽ Cb!2bðAe+_suy5<1nFxV n:L ٦oi6V}Խ)AcYK4m_[7?@ enqlvaN?e}ڿ &vV1_U6c4ȩ[21l-*TҜ OThbBX*IfoҸ)+K9_p DrNMTkM!Sc ;@cl/RQ f=pݵ7.O"!)97J>ŽŨ;~xDz76~q'{[aohCA zNi~Zd$wRS0E,wWIf(J0! F^"^03NC00d~/L)^0FoPvOǖ\- AUri6yq)(D&'Fp%QH ?qVv~P?^D A@j鼖bopK'i9=nO%pELB@$'Λ ElKkuXfHm4}%΢UF'S WaS]7_m)v@ՆL8X1-Xp[L\X.&[~so'ꭨ ;{Bab`Ou+۶UtC5p兤mƻjh? aɍCxޫ.)vw7\*:%P6FFl,g5rZTn58 ue8SP WzQ9_F\\6CР\c~ۖT?ZۗhTw1WEr+W&{wbhZ˜4`(q2@pb7]I-Cgh8p-j5[ע``(3(Y.0"QVѬ ;b=ʅ]]kbag `ȼ0 GQe&ܠ(7(>^WKk?qӠxӬmQ!3iVT+]hO,H.9FA&Z_>(Cp+ۆt@`Fr%C y=98qbN,}kjEHksa;+`_(Z|t-r4$?܎A?K*zΣ!\Hiy&KUBX|Df˾ɢS%E-ܿ͵#NxR#wmX ¤=U&->^7HM%G\ˁO'&S4SCN~lki$Ԏ挎2 ķmsKs]zbщ{5p>O,Y1t,o<1wУyȥp涭)L:#G{<L:r? yWK|>ͺ`8Jc~W+ӗ>75rlg-jR% ;MnVctq]gk/fEpq&Q4U At#YnKWIgIAv<4rkO$H$#jaQkǯQBjErɔXZ7{sfӦha:)o]LKQ%k/"WXSr\1Qp=TZIIY= emI%f1vnh8cfo1rNAꭥi@HbX%ZFޜ°ȽFFTd#.P ^ja [ש{uN.BvvwBT`|ǿ5.X=]= :O(N:yƹ˒@{}A ZȀa(I1;9w7P`]~xRZwYr0n) qx$HT8M4۹})>p3Ltk0_B@XZa=jRi7_3G-c=U/bHR]K.WÝt}Ѕvw*ZW υC6δ(n~12 ÃXci #]^! +Wg]oo?$k$K𬑾ZK:'H4nIy.웛`Uös>c5cYPP^:`fNZh5~" 8=9} g:P+G%N]N£_ P/^Z4 jXx5YoPޯau_aTê y4eZ*~b;ȣ^;e'+0+s]B(uJFlzLOe"M?,BdE,~Ĉm}Kh U!LInI7 ~YKPڽ=&◮jOcô ֮u=C*@ZjS7lp#^w QW(zG)'C0 9I =ѿF(+~.x:rz$\Rer"&rP7fX lH럒PlS.08B6)W7۟h5ɗ nzMMPmvEs==͑TCk?N7=0'J[spD|Cx7]FQ漘PɁNKsJY*' x)KuAvJ(ˌ!4 K]uDNywU2oAMmOJGxy>T,wϋ 1'>WŅ]A=^¿Qc*>/,)_{`KfWDy,BZ.û%s8wQ К`NA8x9ׄhp6KR('V0^Q ⮆Q:rk[AZ2ZwJ2ܘrBx03 :wRTi]R` B{ ;ZLpGm)ڎ/D)62Ya׽?|ވj%r5vVțO CFx|L R@I|(9,:Ÿb%!xCJE47z+1*YnɡL3]l,@D3Zf8|ӄwTtD9ouT9>BPw>&ƷL$LZ8eSjmL"q_2epN{ץ۠\:$#m:ZHl ֕4s*)}D>'2 -*+u$6֋:9^F5C|i-VrdTO9_K[@UqNRMy8!Œ/ojbrج+j^5Pɰ+}5[p.Xzo(> .`7N"zKqs!5b| H0`+GɎ{```tW}~ܖ>eap$cԡGz8hDճ^72p6E^RNOje_uNBHR!L Z;f{_9# gVh,&HV5۪`_܉yeJw)kzŁwЗ[L{$ؠ (]r&:kڜF>AVQ_q]K5 ^3k-hcU7XBHPNRŅV#$ڰƆ LgI5 [D iwf̝> T쎆 QPd\EzZpvIF_uOUOtbp]ZWM8#=v>~_"NyQ .aރ8m4'׽*Jt +Fw7c9%=l NV61\(^nP$xtc3*[֍Ewo(iao5cFqylsS:Te?F TQ{g7u RPR2; @L@x3Ֆ6etp}bGs_ ꀙ-n}Y}4s鏗$Z\jv6^w-// G5`>ڿRa^T)CޫjK14+id$ [x6YC;Jw's0o!oqHT)WKaᲀ<6L WHm6,߼?rD#@;|hq%X͎qkSjIf[;R"E']П]6XC]wg\/i["z5CgŶ^~Pk")tbԊoW*Y*d0#/T>ޟ DeTiHKٍPmZ1Ϛ-^Κ8Y7o%¥ߥyhR2"`BG/{Ѱ@:Kbi+DSJjAAI3FAo%D{`F%O+y ['K7SdƈzMzL"Cns>*&QALm hO1Ep6 #}*Cʹ[x\ -<])@s+hLnl<04{-N[ Y-Hϟ߷|Y #AR N@]r"C~)#Da4Q,鬌jdUhưé{ xt1@vg4W+S&h} >]zWޫ5ւ?gk#N8t$l֖H>W5B.pC87A}xJ+m`71a-Q ܌н\3FyʂXa2`ңarm\uWi@TGOΫ3a8[|oݛ; I ]]l2h9ur MjR4្1b(Q/b{gD>l№ g~'y^ww;;AS, &tAɻ7 TMH+e,1 YJ #\dL鍶4g/Qi^H!W γ+(&BlF*2Dez冯>oV1 J`xp:b4Y7x$78Y Xu9TE3njD^??$4cߥ8V`%r˹-zAÊyff({hT#SJ󿺹Ql{IXYvK;HW\Q5 4 bGd]ޟGƶ0F3UP֌E ,(RygkOq2ӪylȊ{+@wGt^N:4&_ZDЪ=AźD38p $i@]g$)}w3=o&g i,G`;.֠n2z!(%,Pd ԑٍA Ezg?2LߦV׿l%ZtDw~:6Kys m\y]gn?BMa[1r9 6 2yKWKr9Y.ou;-K8jDJ I~F6xzć0M'߹uW8a懲rtrɁMe%W3c.?oFH9.lʉ}, @k +ʖ#37Dts~$пy;HQޮR !-j\LaAlçXBo"x89lU,t݄v_ܶ8n&=y*0h!x*뚻oM;4l7ku'~\ ӎ5ce0.mpIoDWSxΥ)11?=@@ LP3n︓!h*sH +Mxf&$FB&̎O]"RMslq:k=rꥍ=1{&J [}סN" Nvqsjb\ݸidcU/ĮQZ8ƈ3-!F\̪;M#<+ްsK`"]"r13 Wh>{ (J"!>A ddY n*AщaV%98 }O=il >eOOds#6-B#RB<$":$?N9d6}F޼Xs_/6i<+41hĒ9ӝ{oHa4>~3JdnVQgj)*ܱbyapVm BA2nCRe,FѲSn1 m)J݁Zʩ=܄>>=?ԏ| ~;y`Au)2cօ: ^p5ǀ|SkxLZ[񈗓H913noƄQMXm?/hA{hgs7 2>GiajV>ih C0?&C$fe]SKH?[8BB%/5AImI5\Z_LzT DVOޝ/trC_){Eچڸ+0u]*/7X= _-bEh J,IH+.~\2L8z7􉦽%7pZka(4?{soY ; (s[<ӊ q3Ѽe ci?iR0E!;ӖWTzh'&C|AOU\&Ic G:PjL0SM<&VBgϥjCGɵgѺ)t[kE7E\FԤXte#aB$z΅f^0tWEWfT%hCp,; YQj}"P25+3C3rE"# =(cG981rd*wؚ;zTgۊ:n!p> G iPa\iŴyѤcI&aclPX[W݇uX(2ѡ8p,t /DgvN| E=o3fyP5ô8Rv` NwAؗ393=q:YSl[ ~?H7exkP6'sA8Li"K)xh0dlQ|VV'/$eWhE9/-kkهt$p޳b -/ C8 \qǝΛG15 ':HCOtz@e zocǬ|p{")$!,; -6?dNm/L|]bR'HcP*g_ jȄbЅEBB_݇nqF }y!(L\?NG2E:pL:MDdӎN:HMu./OCot3/g1'{U)pF|\[B?BD0y& ";iv!~(xCxY#Ub>`U3T$tFᛆUc?nm 2S7`%\5f} KL]&e5((Wz''fە8uϸ$Qo.IhmKkIu *Ces 0X|`HŲъݚ;S;Lo\4yK _4HAl+LPg̓&dWlfb"!sT.f)Tμ S7໴84_(Mq#(JVGG(q+\ yXVF1Dn92$_4mp(w#Q/Шy/sˇ/W/fAߊv?bqLo!.C~Tzx. {䮈^>ЉY_}6_G0sSv˺@;0b_$M RR_i㔲Bbvz8mMŗ#8HwqY?m# kw 5Q$<@XxW_ȚwLR>(@$2C@bmU;L8pܗcj:ca%V)<K(9;mQSK$;xCt~n~;.8~ʨWD+Ja!Y%)p5v_G崙93C *4-i*9˜wW `G\>T*wHMzPInE 9E#eL#kXnV+Cmv$mVSP'S",CO=OMNnd{7H>6KIx%\D<ׅN$|cp(v\ [5H7˝ [F=cR/zյ-sT^gli|YF#(Z ";ҭ{JdYo~b/hB?fOE,`?(fI'#T0۬HFSk$nJQzkJ;KߣD|~tY6+e踷Oiyne[KPy 14Ih݄Ns)~J $'n!fL#=pf*}$t0"P"rJ"ZQG훂lA{b9JѳP-3`i޽_^=*FnqoXs_CkMS$7Ṽʓg:ëBYP}QO2&㩬k;KKxEO_ ۷0 mޜYIY'^kgsK3 tѸmx CjiJEm![0HWr+v|nY䇹oc Gt *nfijz*)Ȼf 2@c*hG'^zD#ݠ3w mN.kɟ`F7~ڔp GfT/C {C_cUi[ 1OeĨɩQ=5d:,{\suczyq!P$‚(|mm jm= &}|[d'_pi\( k Kz+1tݭl'vvMOcP8ͤX+]x eȯ͌Ӹ,ЁwEfD5u۸#k=HL8Όpd\QbK}j"IW_iЩ“ BпfTbn^,Zrh…kbfPwԦLHd 00_AԞ5z+9_փl-b+v_ X:C-&HO~t>:RC)5x_}k=|؃D+ kSwwƫo z>~$ &'O{|,P%*@1titΉ!+ٽc,\ۣq׸׭8v}NhGS1OP |]\ :رYaߖ ̡Ek<`V|# ۘBDewī{NZ8  z&S['J߶g'EA:PF"~U Ep(`P8_g\X]CBLD]b)ݪ0sV y]s-FK,١:"Lْn[>VH`cDAOX#3:bN H:;lcbkoy.+Z}2g^+n)3ڼ8@+NPu`8Y$ ;#d|Kh,S+t|p r^u&!r8Y˴%v6_}R-R~QU+B6%Z?JlmwI6 )Obnfx vqbpbCð&hJq}Z/߅85\df\c !٘65Co!q`); ^lBAjypf~̾/4vj8gKk'w i~zj}$_}?>o͋M ^S}>g z;ԵHXiW%k@B(> l=;Щc0= Yt5&w7zeu T_i.nY~$actݭ ! 4(YL}T^zH^W HeSȦBBPM R*$ Ƒ&5\^usy܋©~4ޛAlMa[2U66BZ>-a*O,~ׯbS !?&@`|ŽqP-xf;Mհ B>9a*pk4t5԰2Ԕ Wƴ hP4B#U:yn맚,K 8J2Ni o\}4Q[mEN%%pcBǨSKw hM5IP Sz+ !l 8TS3+w*tPmC߁t^"g.E#e3yd_1"03tL%I@lE>@]d g04ڵ4w%`:mdKӻWA̚, ̽fx#K P2*`:<KCiea\ϠхKo1(y9U_[y+$ d gV(?Vm+6RH svK|A"NoybR?7p5cat,VZΣɞ| I麳&؛^FɅSa/b7~i~0.E7QuTV?t&H wX׉.;$Y2Z}_l3c hV+"48OIL%xW=峰_Yd~b≻ap]X-Dey+5h] Ds].9vO&Rw$@UƜܶc]u['$0s#* ;tv?-lʭNP-&aS_nwYuEY!6D Pj1x?"\ě^1sa?#z&.sY?[2KJ3B ^Akܟe&e-p!8 hȥ&ٕgvRlU#t,7&?P˄WĪƴJ‡P@P~\9X8CKFӑm_=m~a.-$v~va{JUs ;&UR'jc@XF,D̀R};at?eζm}KYw Rz>#N-; qr|km$P?qm*`"/mow=3$\hLY}5o +8̟-sXP<֟ {3% `_@F`G w 0$:-{!TLoZ[juU8,f+m@R\ Bd}5J綜)3!` 6jf\; 7Ҋu_qfQ{,GU.'dhޱ'^;mnH, v )㶘'm Uv`v 5..f2d#* t9 zcM\dkg c2=_/}\AlSP/ƳlaW.b@8x ۢK6W?2RF CR2e9i>Y7g$d%ˡ(HדvHw *k[[Q ӚM."l蒄ieEX  xq(%>)<%sgMR Wl=-}~#(|jCT[>d{ J^o 0vDem&\s/)PԻ!`drB,ލ#*Ow e%f*TcoWH$Ý`U6 ,{͙ZS 6]5U֨e p_G{=K*Oj ,,kө&_"f vOÜ2am{7@VLky$hzӓ®;>aw$)Ӏ]3߁jB#D;2tQFG[0h CFvmet&<XyRkݹQPms%|9ZӵydEZg+I#^fc\[IZ)1"v[u]|[iB3ڥ] Bn}/T̻*{vk!?cE}fT&X 3F^xT y.ˈRdpBk-.3%5g,'@،[5߁S8?žjIč?Nc_8x wkGhW:-NmAhjHCM$rj6`ގk-lEzQ\4 8p9 4 HC*em_h5 XmVNlPyA [*Y'xq"mIsP0QݢÅ/~)i|Dde 8SP5NR l1X %.UuNy,{ihd/EkԤck#t\ EB\8qADZV%{kX.V߹{|_pSɗ0gLg7lQ ǖ%+in"N2@L4d?i&wCŌ/Wi"Jurow3b ^9tSc&8-;o -,&]<{Fb͉R>ODjlo"n[_@)zֳR WV%O&(#pXj+7I)m 7 "u6볷4AV8[Oajh3dжqO+_Jkeߑ]Va҉p %"e]RKYoB!Tb2wݵaeG(°,LNn">͗ˤSs {j\Jev/S -R˟{* ܤzl8YL&%HހTw±rԩ,*'*Ґ`_n.O 1=[7;}!oLGm{ 3W0v:&<|Քm}׶xJɛZ@Ա2X 9 MlfW _zOR" y 2ƣR$PE5ѮiPk>ُãr%+kki ^G`:ڔ5g(9bSm8Rx:O&ǀFM[YC(ɨ9V~4ɒYʍiomglIJRAm'x'$[G3h-z /wʡ)=/O)/L!l }àcAЈ7R.i~V%BbF!=29T϶rv7jC%P5,"#ȥeArQ%&N@Ճw^E&3R=xfQЀhjᓆlIQIBg nP'Qz̬r{ɋ,)M< lѡ㨦lIjMղR:$?NG热%f+ga diҦ9.{D83iq) ͥe2_r@Xjam8j 2R73f+ e)K-̀NOtMrH  h&5‡q}\iGĿɍz- LƒdXPUK,l 9̅-| ɺ6bg8^񺔔(Yn_{ nSWKACQq=1{v]& sɬ(K+qPdnA/I.ݳX$QXR mIZYyM!riO#6/a-Usb3YH=N2n\TmD2ȭ) W!^-E X&4>#7܊OnI*z9K=brMT-}O=MNr>IpeFZē[D$4fj©`=drm>Z$a jH)@xj~8ړ ́G ^XM X0l` 3hN،)|H +UO E3nMSx HJ3Z!3_H4+]=S|~+}׃o*) juR93DȌ2 Ywr<ȕkˌmxHmHf~bAZ[x`y]BhiV\eaJT sO1JƉ79 y9t*Yly,ʎ8hi{Vۃh"GXi}Ǻ!'9- )Z4oN*3rQQKqi\P[eiv4TMa~>Ѝr7 Rl0Ů> T ȀRv.gtR'`[{)ByI5͏yC~ .M Z'-Euw2#JPSV'Ω.>M1\*ve)oB(MiQ22 ?`wRn ql͸Yb&-"T Zߐd%+OKQ>Uh3xq&94P63_;ZfQ~.1Eu||6? t.e,)&z9˼!j/u&kIzxqϮCF)8 1~ju2p K9~9U5<2/3H~ k+S&֒A@ :ɳ{p?_Kr oE0%Txw엤 R Ez$}5H u166R;8(2^ӽ.p$<ؔ4v BdX(嵐$nCrqВF"||-8'2jM tڪ)g>n85#X{j&2%^=vAUeRݼ>L[~; %&@V o6Hާ &';o뷶$PT b5RcCK.@iG&Y5xTMOfܧ4LOiR;00J٪]S pFNan5Cv>I -aJWnD->[4xDMCr*{s p&&|M ;re+ N!g);̞m? [0s37#EuRDJͦfb>4F,A0cSu?ڝt/xBIx-.z!GNʽ{̸1zMT 葽xh CeJXJkidxqSTv ZS}uZz@7ɷX=VtfMwl!=Y8V4~[]]J<̱B~BI Q^&Rrm_PA7Va6T&+]|G&Sa uUf6kAJ OI>] 3\ v*p_.[̹^p*k$|ڃfDhR)q,nH2`EL'kZE6v 3|bQkhQP;ƅm 2:~W+?d?:ꎾN*_(%zi#C[}pY:[Y&v*t~ yW?N$52gV?^쇉8a\I+ &$*qenC/4dk SVZ& )*PަYDۀ3W5b*zZ1ɉ]sMS+5ax"j>'@$mog 2J{_u #ćwhh(MUќZ$=<[KBh.O9K87 *9ѱ0p7]YY|E^SmG U^G ts.0^SdOPGI^~h8Ek Kl,6p-:F ΫƔ]0J*K}'g%xG0?|7t4L"5X{g7Ώa'4"GBWдu$ -`{Svӻ\Z9xPIP󹭊 {`VI-wE'~iJ&$Ҷvfih::pj p+!,Jd\UyӊneAT*Uj훤AxU@3jBwEƀm$hrX `y[:%[#K3uI=zB\egzW^pUzsM@m,PxUBB{PEA&}נ1oiEܵk}_3ۂnL)7# <G*=6ok@}k>)p`>CP 8YqY^yWa:W >+\ KD6,䣀\y 5Ӂ2D kK@(E @Gp%Q9F .$ #܌5!½AK<>+NJcYXE!5z\Ӛ@H\x:?!9,Ð.`9Uqӛ1)v"t}Z S]uw:<%w'1}4|!&R ͧ bd+}&98`~Sq_Hu 'Ml+JTAZw&St:jRbݣh Kl01g[[^%d/irsuw 8W2w2ƞm=8[77 eH,e-v:M+ólmB{XT$0)Q"E c\̺񯡉N9=%ƨ@]bdEjppBH7\dC&C l/˕)gyXnSڲzM~fHhґ XkvaD)Csy"6c,|#:,jmguj` l0=&]s@`TG {Y厐iB%7wCΈKy <|RTVNOQ(ޣS;5:l&ղ̏.~SFpj\ԟr7XmnTў5縭?<{liYV([6dϊV\, M9B[BQ3LtqlYUǚ|}o߁u& a?{V981_<$YZ q"<6ŝ{KwS2vg>Gۏƍ 3VφVAN1o.YsPwbH3>z_D~*7 B ,ז3 OE{}z^tWQC^Dž>ȳB I3s-k iʋMMVU PnJ:[ضєɨl枳Ÿ1- !XR[web3+6tXN&v1޹q51&)Fü?_G4eK oti9W}OI~@j]=o'isTo b0mߣ=i/!vz>:S PZ_Xx ej<)B+|2'fg|{>mVV8m[&9i 'QBOz 4ki6&k1:=CNU=+L U'hQ0!d.{dJ۟)V H:1[gr2vr,TG dL\44ʐd+-d- C+gciwБE>&YP}\*0Ǻ6]d6@зxQ!vF >L[y~ohztx&7ëkI>h^[DFZ8.4>b$'KՍs:"]rn˥y&Q惄QZ|~@m#5MHO->p+3i(Յg"׳0/rJf6GSh]?U"r\q^gI.}Mrj1u:Qyw E CRj|X$XAr;\ 2@ ^sKU:7']gOj2*_)Jn3T:v#sHS{˺E/QlUF,25 Qalq6f-&DgSm9wx`#D/CfMHyy+3@yrF o>j,f*Ӝ*/P\~qiw ۶]#j$iPFm4 ?sŪ|rV ԈԘʵ!=aw4 j4e*_i[ǿ >A@J7:zuu xƣ-=N>0--f jbv O5/$?ZyzFp;EnUPooN<],)UW{ Ϻ6K; {|Z"&ziŽӐm]Z1_jO$9kji;zxʋN4]vB7kdŷ|9 0pr[{*;"է\[H{{B̅hI-sؿfc; T8^ 2Z+1:w) gJ!Y!FbQ@Ξ' L!t7}!݋[$W@ AWŲp~6I.5},(sr7t> !9K"+|B恀 >tK -,(=y$ zY!b` \wE ^@ьjE,GX: Ҏh!PYm1D߹uR 9,ԅ,lDS삡tFbYgh։GL1k7 OpHE'osz7Bf[,KVae$M%`N0\CYG6 e@|J ݝtҭj  wur 3/%!T%7%]\dNzY2 g<30r%F,Ĺ&-2Gt{OBmq!3rc|'=oڋ`(!.)OGF[ډTs]p`-+K1 h9ξv@,zH3@(#G\#M1C;QuCpp>B"y:t̅ Dt :p)RKGP"v+a:%}Bͺ\zrCS>&S )&p榀9{VMmΤ`7ȏV(7vڦ v!<4lt 7b=eIU!n#kC ]s8>N4L6K!ʖLq pԚU}6 ;jZXt܉~@@4m ;樁v=}V(z.8sԇ|_ֶ}wKS+ 45fp*cv`FqOڔ@o]mHשO3\>?.s3fKPL /<؁vނ\x{o)}Xݽ =Qc}Iqx[Zl;&abSP&׍zA+iE0U C)D`|9 [ _z'\iX(Os9ivTlf) nmж3|tWO, qSgs@W!kz MNA-ל$Ypcp`!+M{˃4ff;n?S5x49H5Zkn9iIn3+%I9ySsSKģʽڑ' ;YRv RJ/*&s|Lj EHw6y;cHs2[*a8Ga0s5w[.u?r4Gd:I_U.=9,P<əd-i@ SJXĔ!'.@y?9vA%,Uba7K`aI]PO+puM v-3ޡ|⒐Qro $5)e1+ȶCC^e*4Y >akQccy徜 J.Q~# a&fjaE72 ݅T778 3Бw8؟?`t|@y>1ND.hsR8xT.^d j6W$Y!" Xoqb6C1)ySP”u$Û.ӗ,įkJj+OR5Fe%G jHu5YA⦣$#9Zb":.d0|Q 3cV*GD38aoмFR0@c!zi \O~v-D}_ph0*[ĘMڡ_l e\5unLǎMNp^ԩA? ;YF ^COw:2%Ă0 / }e  tzn. Y~كwYNd#([ÿ+kJ*O:306;|GN= wMDd]΋ w)]T46-l٫ˈq?s1|ҬQp8G,=8*n+5sZ!'D"oqhhGlkvCJv(Z^HmĮtJi/sBT`1nfdhFxp7[ЂK.X~Dґ_2L.l0ԓꡏ~+ uWښ,NCF):@ChA qǭ:`,$FrfM$NesR3ŋ,7?V@JKg B\L=PJ5 7P1E [{/Z}cϽ@u6MKxMyo' &&L;Qlrh76ѱeIFr;GZPI5pw ک+Mi'Q {jO߾3.kY«HҋeTa _`1RLw|'E/yۑwƪp%8@b|1-;=iNѝe rV<a:Bg _ԣvo/ 7zzQaN8ȣ{[͝3`ƨ9ZN OZ N%..兊V!gMǷZ7aY$Vrӷ~'羗Gd9 +yl[|GYUāNayr%aicua]l̉)YRIͥj"C2dM7@rGU0,JDS[l2\,U|뢓PJ{ys#0SYk']F=62g2o0(|A"*5:e3DL$Ie4=O9+Kn9za+w8zJ>RDuh#/0~i \la(coGJFGdgcvP\dڝ Z\d>7`QN5)f!T>>p4z;kӖ1% OY$~bp y6K|t3MT ?@zNT [2 C jRYQLІTy9D@Ÿ`Lݻp#m>;IahXoÝVE>EtR%4 1(0ҟ<Aϣ<[ K۪RQ8gNIbr2hPe" {6왭ώcms3h~Jc=c G}X3x &1TKp3Mpai ,}z/#tZ.ZmR6 ַV)p=h}BRuphO/콅BzA*zA!jEAHaEYj 3)bŨ  ' 3_~3kO3.j'{vzZr? 0ץ䜻{dKi.Ov8Ćpm nI5.V8w#@D׬-ݏ43#8> 2`0d͹5CեQyj#I"JZܿ?@|?,eEzF%:tJ5վ-9D 0%YYv Ƙ 6i_n/$0|rY) D4lYu]bKW({j=nQNGIFxuɛ&&o.v̯\/L^~8&ҨE6V e>mfh/[q*= UەqenyWJ!;L/C%LfQE^䱆Њzmno]֍u4 Cž H8,}A]5W1N!9e.żG=fAL;F\A~I='c`7zħ$G{!?Y4#Ibgz*pS,z4pĭ: R&~]h'jA/̧#* (`xjZSWm,qB4 قKguԵh>838AJJlzra,vͳ}6+ -*grN4C U$ɻְռ=]Z/cKSVVqc[#v?2!~TӲ7U%2qx㣋AߓlZ<2ܗ$x./J=Dr&_/ ԩ0.yiw}`݀k+BqKqǔ;l\k|ǔ̶<Y;e#k\_hնjW ]:;Y?$y5<26R&~uaO lD#'ҽ`+z|K&ǟ(C38TsMO^e}(ۉgIl B4D\[P8T.ͤBU@Z݀C&(<#Vm_M0žK-\m%wQg-:8hWg\D$y;𻬉q3pЍH+E1!փBFIl Dbd,F+޿уEɻF`t2|pES$)U^ձ#t},ռfm!Mȝ>Έ9c-$h"\Ȣi[VOXAp2bpy'.5kq^A)YyBM|dW{1ȄO#f3u B4jWxhqZYǥǜP&,~hT'euILoN*f[A̤&]~遑! #_\—L,ՓUKfaڳl55jLj k">HG Pn86pBγ/^[btGYhCOlۉ2~5V?'ۄ܆T®0#b=WuV3ke7ڼMKE]H-Mؤ~)0?߂_$ WojtZYd7FrmA2C:5xpr ܜHa#'᳚FW֖0J?(ZQG zˍQ(L~J dC: 5s.t-yS|IFbR?T3irۃ8MjG;eU䇚O] >B^ v=ûP.ZP6f0 @Ӥ[K!!}4Gf^DѨ~#,s~߽lv~Cg_٩8I#kv.lAoy @eOwU3#e'OORTښͰGn}Th# ##ତo'~]ی- N,d)1 +3)'jtk{z ~6ͯ睁L{Y-W'͛Q\==&i[2{1,a3+`i(mNƁh. &7"3ۜk7m]#jMad㶘H$E:Rƻ/=|3 ^?CW"wv-`QPR_N(\u{仈E6`aA)g b,Wke09ҁ&PI_iwQU$B(խoqP0Xܰmbl'Iܯ2_u/q Wf~tap$hW7 nZܘOb5ѹ *vGB"3n\naB΁>4}|S!:SF./"w/N"ѨƴTq4}V!<SrIr]Is^wFr+.ƚ OˀC\?[y/ ՞H✽;DŽaN5eh2}7"iY;Y ύYe+ Ys޳VcTP-Sn0ʚOXčGXzJo'xoGFh~Ϙ7}fூPIwf̆M q*{UIJ2CQ1;a;Q%r9]]}wwYv Fc֮>jpe-V{|:i6{<}8t)?WP }ٱ|~u+I(Lɮ+woq MK6ZLJiRA.?I)&$UqL=8u{@Df bdĎ:zoY-cy\*5(o̓@DcOs. xT|HrTo xSq$0ڦlx#̉e{=̣ !Q$A(vٹS<딃#W}ǯQ :LIϪŚ;JVHph?"L )iL0mS)Ь[qi\6Nxzʚ^HfES`,#@g xRN^e(+R/Y$Zt^OjW S U^.zGsR&>`pUȭNJNo7U|fA 럔*YLkD,3՛ºhzDhˠP&"v)Z7VF} ]Y_~sfPm!KstJ/c&MmXM)p>zG UY`[@[~Vȋczgi3xL`gc:vf6fuRNY~h l~F٠ez횯^1J}wjK˿kgG3e(s3@fK,YӁ:}Т8E?4 #0/Rپ'#=vCrd1/=0 `kJAB6:RTlath.tܿMnb7B\!pp1wڒ`mZaR~ezky (֣#A5 f3J>A^6`Z5ڼc 'KL3Ή3jaVWIr~P9N~{mu+AU n(ckFǜ\}&H qV}E˽a(ov)OTp%z)0D E@A4iTهIؾ#%Akb޶#|^⻖!E6Ba^{!a&p(oT1ݖPKMlÎ{t.%T`j9J`_H߮'!aЩ)<3e| LqjOr 4CML[jy\VT1 Z$?ad!(+yhLW1SPkSҰFPD1Ew>bES$wl/KGG&jI)D}j5`2&TfZfbƣ(uiڑJi&#uׄ'ڙlmSoJSR"b_V3Ѝ61џKa1ЂڕE $K6>:̖tPEB' 1 ͼ]lZR8Wse7;ՖVy=Kja- l="MRfBZZ}v:gq.NV?*/L`ֳOhΡEpm/}dKRe[K6VʹVYs Dּbf g/=]xd qx f݀IӮ=}J5.T36:2˥ȀhthOxl9֝.G(^)\턬3xP K٬I-U@ f0}!; [xq30ԡ*}LSe}jLhR]Ǜ~{kb+Jm'E"7N3uw!q|ˬPwRW hdd83?gS\6k K;cM>ivdc[mx"KQ!t ͕,p]}y!}!\n 6y6wH 1>r_u GD·CW/y0k47S۵.i;`:loTȁ )}j*˼!h5$ kURkW%FwxHs2YVF"FRx^8|,af OW`Xˠ~pY8d4ѾK^S5JCNT3ۢf]1<9b5wz ;G72f5+n>収գZ3pzͥsF&}_gTӗOD 6ʁ v͋mkS7VrKH}bڛ.l79V>k[7_>\LM/bA^XH:bT[EYzMFLJc*#h!Pǿ"4(Ą !U2#_YRd+s$f~fMfW|w0th06^ o_)cq* *|_!{+d"R92T[y?zV*:zr2ʁT;?.LȮ0{Y;l$1Q4ޝ-\7$}:.(T(bY^Wb8}q].]'ٵ7}/Xw~嬯?׺aϞ5^mbo +P JsIZvҘdTVZ&zf`HE"x1 >B1kkJqiS.+N$i@U3a66p;kds)(gpVif+X˰D/|K^_0+XDOcmE C'/޴$bnf E԰"?/WYr=c5S`Oxùbq9_[7#LvBza(;-5 r;LlOBKE[i< Lbi:cݙ9(ؿ>zyG4R/Px:kns0G"8 JMKK9iS[>WG'dC8XhQj-Bu' II ?t]N~>bH/+W {M DGzpV =}p"bvlm,)KeI\<%9̓M]/t 2h5ToYԞSX߿ka};˿H$RLﳃ{~wڮ۴62ܣNG\0hdԪz(seWȗx{5?mC_}OSe:6f蛛r՜eD֏w^#{ kQBi5>-A!0<ivT&R'@In@X_yKPń"hnqWi„OŋK`1&\[4|kH_)[U4~;)Z6 S; ,_n!b~!Ó 9@`G-=h^R/o4w4%0x?%0C&aǗ_JBzNlFW5/*/ /7m ӊ&ov3f >'֬n[jtPi7lU"[SrݨlHJqSw3 M ҃ϺI=x^O|BV142)hߢ3K\Fϫ 3z .[,tI1s0Y U#Hڨ&@`c&ZeEG_pnS,P(5%c-~뭅r.=䁦M3IYQ> e$h*s^%lx©0ӁnAO0.T`A 2W^ @B7 b %3cVWJ 5>?7⯡2Fbo">F@:mN䒧LU6a#3VrEyψCwCR`x 3k 5?u~, V(vT_dHC5PJ-#UUqPӛvmpK>65FLZc[幈DR7G*ed2۝ֈ H.Dը! sfBˌd۬[Mcf^8t>1gNnKO ɟ+͎r? M-*,n6ק/II΀Pޓ o!6|!tA/ ntKekl,C}iܤYe5ToL8iH|Et; BS_;F)xAFrs=ǻz{y SMc" "Τrɍd!cH咝p@F#ֻO-uj5Jzd?9nq5=\gx\ 'm>PZS6n]D`72Fm! ge!STl*ϣm~rDيVP}N%;* ?[nMLqMhvJ($9/\Ժ`0n Ԟ-K`W(Rx.ڰc:ʵ,H)LGb!!Z)P0q ܛ~=[m89Aϯn*$nI4waJ<ިu"Tu|!s3:oOUb?*U6GOI^F`:ó+x Q[С GђMrAGFm N).çY5-W7 }|{Zl >9a=j@'9/{2ʑ `^:HǧW*4櫲kFT TR65i& oXĞS:?&9t+F{ ܖ¶;LC఼+V(Fd ɮmIy-<nq_xpukș '<˪#"]o+‘qAhXx̏q6_SV\'ش$5IL4 ]t=l~3Œ[ t?ʾ4uip̵O'+eZwBrS l d7hW*hS$Q1dfg؝Y$ڔpcwSҢҏ>V[=}ie\r'cq^:Gx3y7 P~.@& ں7z(]nXnCL\g- ~n.bG%;h? <$zع7[k_~^ ,Z{#u9ɞ uǂAX v !+WZWh] eυd?iYql5 1X?8|/j ب$X$\%ܽ4OeT[ ^c *_ցSh@;ˈm3;1OޤzA RRĈTG^\F[u^dkاA EJX3\nQ>TYǽ<^I&*DJ}L̓sɛm'.2ĖeLH%^ )>Tv]994ڜ˸t0./--;JW?Sr>*6Hv9w͏lģ h_#Kr2^Xxq7v&ؠv#8.A)/Pjs 5 c}!ntccx91ueք_},7zW5cs6/Hs!qf/P*djCC[/wg%ЙM׹s v$wR <*(%cqQ$Rfh.{ "hG>Ej[~0-[[CTd29/_MǔAa0u=c|IQ>M U7ѥXL9pZX /H.Η~A+/!Z(ᶻcYjD6QVOC&e2 AIfȅW|Ӓ ܘ1LVX rR"ƈoe"7唨 POqq *֭-t %Fa<{1GV`͸ l.! ){r #7I5=I×'A\(l;<~k d&G^<8p5Dǻ>9)/Q#@op5+\}1UUc /NWB!zGw7¢A_02.Sl fJH+spQx.vNPž܄i9Uvg>qAou{]|GIqMGkTXvg_7ݒdܝAؠW~U C:LP8) =Z4*fܗZh*JE`7hj 9L]x2dIa㙷!DX#U*)8Bp_$|GԔvDՄ/%}6"/ 7 KD`Ւ` &1B~}ކǘ4 MDmiɛBG:M{ YyI& M6+ `U`[l\]%gd)2.* / 68Yj9~ z N;KC8բZngm<&*S,bFRk|¡t8;&DZ1! f~aO;BCW2>*|M$b6^Ow ̐m/I ۃJʱvn3z!XΕ?v9 l>HyPrN'u=t-D+H$k>/Z<% ]ϰ25;Z_b 2I9]⓬66ܶe n,\' ].qJ 85JsץA7Hp@W=eG4S?: TҀ"CZ=D@`a!syyS LavX$bRtt^{fatϥ Y-f3W xF^7ZRHU6թP0By&V4aNsҟHδ-#{=B<,B"$k:[XP UWmWZrk K韘v$fꜮk?9Jvuyg$f3[R{mJW@ @ywYjBWp>y}Y֗ 76cs_'*gvCJM~hUM$6UzRkKV*)pJյlFan3{wtcݖ'ZN9(y^?hk_0.:ZP m }W6GN;I+~yѲ0+[F>m$;T2,uN+=ՊQ%y7<ǧ>yEAMC9a!9U O=ͷf;g0l-q뉯6Jq1@ #@dj>?sؑEiArʷ˫JKu&eosBT3_2eqC_B!Npr,ԲCizv,BJ $a\2EYJtST!.x VਪhQ.P CxZ%f72JHs0Z9*ٕ'jRCYqSFu$~(ȭ@bś`Si=*@ x3:$C^dRAMJ9 d -%g-߿ N^8(iBzD-*lGȔ˨ &#cYyOSQ@yYxFAe]U3@81z2d.gOլ^Baf<UOIun,[%V֙jbwS,a_U8RpL9cD?j2j8];Ϭ`sU*}%}B?TU:ƒG'>&|(k}[."?+E L0:h 4(f* t1Y#ĘS6"Z@'yNza6CW iGNAO`u$6(&D|:^{;kI[+ëA7aC>Κ?Jd)4SOw(2ԫbTtoNg<0jyue퉸z& Pd|ͱ.]Ά~C-+eEZ*Yr>xKj4_[Բ` cFv.Iu2Ze/T?l V:r-,`bvdR~l9j)߾wcxf7r']. y&m1.ߓ i_ܞ-Rih!#1 Uu1Y*f_]30'8U'ː>?[(mF}m -gFA-lP$31/i:i˵|ȰF!&Ÿ)Sc`^!*,5Uf{ t2;R\f!~ᇍס9*|fCz*ޯ MC26IϴlM@)܂PK>ģZv,cbHt|Ϳ܈J>Lu#ې}&/8N~J]_|$롍牠*]FH6$Afa% 8#$لSzLx0*eD)]k,߮&ʏiEcE^T 2Y3T`Ѫ0a?**uD)2Cb"٣NIau ϩ(/*m W߱1pHyT,wR !IO_HW΄hx1ҝl9laS P}f[l1Ոuht oh!UÙrn:m[\C`i+&DE:.Jώ@ӥFpT!;EE/«Oh:߆*D@ L0< t\jqڨ*5; F*W)({Hw91YnV 9iR 6Gs#pژɘd\.)Ȋ1/z:y#YSc6X{cy؉w%>!2פX8‹>v69l5|R.A_2([|7 G{ n餩 {f (|zx/0bQ=AbknPAC gw1g[R `ȣe ͌aI,'1tr[,BgZ *.WEة>a/2NIǣr^>kLQZ߉;fQSB(ZnYzC7R(gh!MЌU` `-/>-Vl2x :y(@ϔ"߄y^}PDN#*. p7WHr@<-| ,L:B]p/<m=b^+äPw׸ 98Rg5bVhH[Ȓ@:s#“C U]Hޭ`j n;Ʒ!^g qSb<~{E")6,Jյ'iBHO59o0 ;gdM,K#ֱ'aq?CXP m/_:v1Fu؃,&ob=ON EyI'n)Q3d݃\,۹ ߏ'3'gDK]zȄ\ [Cz|m`.7 iυ~G~hyl};ngu;6p8q[;.Jg_D sF7$x6yLmUctPHkyWDALA(]0 o-!{@Lj[5$[<'E\.RH hlg#[` Cas:xb/p;ǭ&/G/PsʢA "(׮%sIDU0Ӡy. X~]1ڶz;`ze'C/ 1S9y@nE $#=(A|824 7ce |{l2ua"Lk̵lN?Ø. N[ `tz[ZvmoϼlO0XXlת;WQ<-ѥsm|Owb 1RÉ"0r`y[ ]4}ID"sXȥB2ڟ)C U"Kdž__)u1E|.v/]ٙGߩqO˅=ϝv<ҧ=f 0׌ќ6|-c ¼0 u]T0oEQӱ%N[,/ )徹X([K )=ve _7iqӺNf' =2Uz   1p|+L=t3Vi~ɻ\$ι)^?/ڔܫf-Ee’Q:F<*~E,f>LcẲf d%F\zZU&2sw-Gis,.X*&KKX f~d/v ypp~$?tpfVx g/Ty$Bld{ӵÈ ^JφlU2t44dK5!ϱ5<#V\e~$hM?)G$D0*UY/-EqBScS뼴ׯ+Z _1mAeӕ4S({FI|[,թx\) 4$q;u%/mm-jban7[*=vTXs'k]g,FE!l/d ?d4OvķC(OSB)os"@(9"ô=pF-ه:29vƧJ%𯼩_I"o}a V)WIP+MOzz'M0'[1fN!ي<}/eG *;6\ Bdu_:, S3 ֘ƛ%: x>c"8Z٘g 7[vهW $={{uqcMRl@v"q0GױnhjD$dP?׫*wER~M]V5NFdx6#ʮc~"党f$;s-?7#pSoX9ܵM! xdVay΀},,>p&YauںҖd62ɭ [Ӆ6NT2KPb_-aVoq:))Lv[T_gc3Ur66uQ6Kw5b?B%d=;{\Fqkq ːPbLV [@9~|갾_OF|k.0. _*]ʉbp^DZ9ɑ3lJt5A<&6643*Q>jF=N%i%Ht7_lP @an"!iCw l+3m'}̧w)H0'~@sO͇F5G? 󑃳C2@9/˦#G8쉡!MY1yI5H<{!9V5d _]ݙ:K3ܶ!G/S\~z FbQ٬ D!dqW, f cBwk p} Muc 5mIH6o[,CC!k~ ޾[X;65ڦRђ/ 4kl 9צY ےqD6~Æ v@ >ʌވ\sH@ #Js`\ޓ5NUۉ ztc jQYn`bBt)0v}tX]YcXˏM.bpFn,^.> وVqD#=\awB\@!u>tc9\\[]xGJGB,ýNFk4ڛ2ѻCEfb)-u]'a4]I6QqfAu! x=ޤXԖ맣(=i+r>’ *s5feKHm#ҽҝ>^$_ޫn>&_E&[Lyb9sónUڹI`ECc` vom3` u~S@$IڭRCymy֔< 4ڣ|o@GP֍y>kıS9u49@@cQ^YY?<'(wKҴ´& B֐(+h"Hwkc<Ӫ1ӼKz wq+3$a[}1.UgFaPvsIXdeH)J$) <ܫHWJ?x[?/- i2$Q0Eq|E_iPu~/VYԕcX11DY#<v G&甬-YlT% txhL5LHIxJ[~!Nx'k!6=5ϩ"0^ 2{V֥ѕ\{<s"Xnj*P}ıNF1>k^Kmw ~|4E)G-~Kc[li\c{ ",qgTWT 8r"[F`ˆS"N(wŷ="OCܼ-Գ;b0-Dj2+ʊx  2~qB_Y ,pi؋?f qiPEVY]g!I]=Κ{ vKwlZ.xu<_+V\  /KLʑϣl:Dq#mx.x[ ab7$gےjFԛwvY |%2;t&U8b3t381%ihz)m?DYߕ7jWňc/l)\l/Ǎ_Ҹ$D%خ?!{gՍe\ rP41Bb]Sd%Wb_31ɓ`zYV^Oni]?/ ql5i9R{1\WxFd0AL\Ŵ+яdK> ȹ+~j)^Ax2ILt*D4YS6;N{ $[yl -&2c5PkPIN<]+s ,,|0 ,z.A=l`U/AdnvFNQиN9ZPX*\x"5us~J(-).uq&S NOj[!},RolRE @t9Y/ֶ-SWX8f7c_z_%BAܸ\#ܙi a{|MQ,JDRom7S`Z{eXY0\F1oilCA'`3 d:w9ٵ1|]ԪXۈy:BIZ{r_}o[V/PhPn@ݘLrj+qs;UZ (6ŋ$ D5%uIi#74IG:qh4o%P)Ct` 쵿>mq"{#| e({󪤳o[9ߢ2O΄ңev@U,=8k ]՘1e^%ns3rPvgNVg̊g,? ]d{`*5}}Gywfͺ@B9؎@'7>KVDo5݇$3sp_*Ϳ8 k]%mHlo "T@l#=G.R}K'케  m߭4|p$VG=>.K'3t Y2M*]PF.1]\NFs KwͳȺn+0c  +Ɇag$m5o{#! QNn&/W3p)OOcࢯAX!o @|:=ZMi2R00Y[Oq)'.F6`lI=b.Gv\6S֘{S5VTN]6>mjzyЋBUS]/А#nVYwԑQoZ(*N&6.j=d"&Բz7"R_ 0=PESm'Yy_3u(~,J%IP/^Rጥ(?ga15+5ᓞe{.&.DYQun㦜9E7y pLgg4>"'Yzl” cNt tkVޅ)L_[iMZ(1n ?lUjz(s ӌoFzΕʶ>zlk\[)U,:TtUi}.%9G&!1g<;8Ւ́%|v҈ Tha(|^A >bz兴~dG$]pq7c&Õ( }u^Aɸdq\9nZ-1Nb#s [iEO/`6a1.yEvuHB+ `VB$t_psBD@ [o WQ NuhΤd*1hB6!hf9'䕮ʝP;=2gEnBb"Ap.DK gc|t~slaȑhZ-lv *`xo)4ZW&p6AE!W 2!=`EռDA[3!MztJPc92z>X&p޿ꨈ,jX6So(I lw&B4G57"{N/YLlozՆ db9.zaVc~F:EPE>S6*zzD*1׾IaS7_P[!5VPvv;vgZTCȪVG^Y6Vy 4.RwR ^8tݒcVkbbQ7Jz{5ٙh鼼WOvo|EӴ&jޯсF"vx; $|S3 H#R&mbLbA(X!TMzbgL%TJpR6LjPn20z4gネ9;Q)'&BzOUFQhb]GQԳ#~t|r$㬓ƺA༜N!:AgRR"ىߗJ4i l]p-*Arpk/CGΧƍdz&Ț[Nnr$R1ߞs4|EP4Nl7 zMQ̟3,lׂn׶|%-O[|6 \g(1^Jwh&vaP%r0-=5/;<ifj>$y1sVnMtrŷ+v{ R:u` qOo?a:4 `R^N 2}nDŽp9~?=ں03.y-ې<0X?ƴKW 8ڒ'z G+" 9 s鎇?=7{p[pT'ӗ9D@"kOhj{g/lh\Q &brERۊNr) 07sYLvk!WSXz7w]&*,,HO}qva\R*eX߻"D1Ⱥ;aNMB_]]  )lR,?OM"K72TRAZ+3ѯotn\G9luc؉-4'X'7AR!uIҡ_=%W_!5a!h_|ݭIvF:b(=Qo T _Ӈ٥D3ͥ2Q_F·zXDtQGQ+ϋ1h}bg_2N="JRPRߝT&Tv@ƐSdWK&4X+#c/(#z`jixW mCpʿuaks>R =bM9r+7 YXb1K'e+!>t  EsuwoJ`9㿵D`$J4$_&>B|!cy0גUǘ@n ^fY@IyADƇa`[8f8"?*"HJ>VKӶ2{$91Kގ0>de#1_{ C] {AWbjT֑sYnm܆IA *C,#pDU7pr]ʖ')JTwd\}*=GW^B~o |B˞Zt<&XwGVgHnlt.L@wC܁.U+zH { TwpufW:RGS!~GT1~Z_N$"[ ͐MUнuǫUWa Pw7}lmxwP vyUGW`Mn>v_j O ebgy Y?Qq֮7s*pS4uDQ{"19jmXwyH3}D1>+;EM8cpp#RU.="3 Vqqe7fE,!#Q{Tv'>dN#وw K??9Cq <Ȕv94աIJxNf~yjSe 7C gjkM!!PC sPdgfI VB6Qz@+R!N_OB||$ݕ7e V4(Oה˴̵~$rTJ:*U$uy$J-8ZeXV rs|\}lTםEXֳxqJf3`&v H%\qㄑ{0X]Ke8SřrBA?NGrcA#V!'@&L&Cdia;oak#8!Rt1{xL8𢺱2C& nTD)rn2t3A4UڄZ>%0Vm,$^->ɓR|瓱b$u3^56a +;{ul~ê<ڮ`}p[w4KQ $'p~x}rᙊY6<Tz/}^[_z l:A&0'RLdMFe8=V9|cYG pÇjv`nI?DJIʱ嵪wС;(LW7 xb: &1J^ #kmeYW"?'. ho2w_8}Mѳ!!@.޶GJ=,llkD "{Iµ "L:@{.<5n&=Ҽ.f7W}2n I;So ;p)-͗OU*eC80_C"#jjnc#,bZ۪E$v,<SHŒ} 'XQlP\E]Wio슷Ь]/d Y706 Eo01#GiilX3cD*~-.ΌǓ=ɑ)'€^ƺҩ0S$h3djm,T:DVZYDtEFZX]iLq}L y'Iɏ>>e FBbN7=x*KܪsΙ|.o6$?9?.Pk~ҌyyY2 'iՑLzږ9_]k>PR Vwi4 ?Tژu(RL4S=BkZe(EM\tŶܣ[!^CX9+,kͽm92Q ԋ^7y#T/"Y0:jqA녱>ս~*n7 j§qpmGaZ V ۆ֍y"A~ 9晿,=gF^G}V 2\}6$fh )E .(l廇%OVTN4,O; Q4H 4'z8Eݵ.r {U;c5yY@`ֽHz 򺪜ċy,~}6U Q})T>D"MqvQ.Ŵ$;NTMfFxn/tlu\);!Y_m刉zԋp 8og0!dr^Cw?,P5Y܁RwuÿT@%ef DS8qO4;Sh̡v 6' m;sUftQ_H@J$ ~4E\)D=,t;eܰ^CO$, 6dTjOߥ_}WBpT_F͸cy>6N%o7HCo r2oBq_9*P}(͇ƪy:3 ,?wvG,/fb3e=RL+#+GrBQ#{lolLjLEf@}bxH5?-?ݞwsejX ݠ=`6ED|ڌI?SNiH"7sWëuԈ cͿVf2Y[1hlƤ4u_*#p MbZil^Y\&~sqtyOkȶ-J1Ojrr'6։{<#15Yբ]\_^0)&]g&*iXR''K^ipX?@(9 Tw-%LYyS^-8s^[A9:;aS~iv^$ ^S]18s06dUJ\$;7|, ?ZoF1=b*C2ⷾ<7 NZVc8xxLGEWp%is_@;d\yOJ//~%儃@hVCeOXCO9kwӵUbpQ7"FuKASY*f6 rZ̍>ʙ@374"e\ heE=4 .."oZAh58ӭ=K"cE81 [0] ׷8ͷx)+5L#1OD77tG}م\8=eX))40;ط-y/w_Y7ԣ=hmf,,ke9'rtodV;lޠQ ?\HBHzc"0m$E_[G9-"]$4P=aөjL8|sP]}bs̏]3y7Rb-/H6ѱţ12POS7j/>(DEd,j dB@rvRq r#P+# T0>"kCd9"(J/T痩99!h/H&O}!5\>L+aèXfS '@m3~K) o_ wO/m曹*[\41%;_w:' _X YpU18U# ^]hԼ|Fdo[׿ >Kq8W!v'ܡQsOj /3F.E#&wPKRxP ό]Yj OX?%䈴@kd+S9c)s^FRvnerkc#>͌%;Ez0pMePO:z6CtQ W>ֺNc]Z%SOh%:a@n/"uV5rCdcDx {r\+\dL2FwNO&W>{3hWiH,b&K㥍N<@/r`M<)nCWI$-XWo%;-p:+,,hWDž~;VʡMJǙq  z$Q))tT-~)ȫxiUar!\{OnjNhDc7蠻+μpȪJy[S7pvNf߭Cu k腞!Y;v٘Lӕw'NpFꓫҋoZr.ȁ%6/c@)TPMl )!pY[<糢ZV6fwKb4nmM2"U?'E,KBm+:x'~SEo=ɉ?" ΜuLEM 8](zgF@ڬ( 692p2RDK2ʝP cF~UDH\k'@%7MbR 8x 6*! A,$_45]OI[r.Nbs")4P>Qҗ%c (I6V$*4&[>UpDWb;xN:_@ #:%6%]\ _16BaqHHMVkE|3T p%2'&{ ՑcI2VH SthWGNnvxK-xLP836%^h:p4ܫf[э~M"{ ׃^ɺa3ﲭw|,g_Xœb`5OUתJqԱl :%ȂEɇKTɤܗS _FTd* xi.~&%/S1 XRY<\T[zNi(+-n#tDR|Y[Mw盈`vE?$1yqΕO0{Z @:xp  ,ׂ,b,R(F OJn>~1Jfbw~ͭSR`T{:h]|útx2q|v|Oc ME kJcۮ(x<~Aļ^ Kͨ֞6 yh2cAKjajꪓ[@u {HMH0X5{Q0(T-a᮷~N0ooZdP!O},+ A/`c-ޯOS/9DW\*ZT`ߘpp,lq+fD: ۫'}%j 2钩T9 [6Ԃ+'H}i~Ls^8MRCWY f?,[oq{^jD2U:1 正~"n0dԮ*Ib> ߜgT0GBEL,Dwetj9XfnLɚޞ8pg+loGyc&mZI"w4D<Sҿt4u4&C<‹w\˪ j32 C$m&"pkf9êDy{r21]O%,9Ͷ܃D~9zUG$]N΃ eQ˸6 XYOXR:)fk/R/^J\MnFd5%8#ySFip}8}.yo] , ^$tB-i4_~'gҫGglgҪÍ4'BՔ߳e#4EuA<}J0ϛ U 8L*Tg;ݎCf85f¼=A ,3B #C+7~ qj][~KooڥB^^ݒĐ"Wk7lїެ;BH|j,DD gwnEa]T=4޲8Ƴ[Mw0L#^m F޴ ,sxٗ֔CƵXPYk}rQ?2-3!Ll*~cuw| O@$.HfLʊӒJa ]$"p)ů"bWdqy$eĭGr`8؍N߭I粣p#b "=#9X{,= Ր2&C#AKJk8Y1 0rZ#m_n?9*R-ui2pS@ds! bʋ rVbS|t;hÔ >CnQ@Mx{Dutl1ٸHgB .ި#7PN-OG׃Y&DlRe\HZ6%/$BKbbc#h7Š@.cl{W>{dy4ae\W- u P YF_傟>FaY^BV:豯4I1K'5߿h?~oV}qWSrMfix=u /sd+(OuI$Wrϋi8x1|xI#lE+ %N*"\aRuEM̸A ֈU˰Ƅ1F髝o N ;tE8Z7g_YIK NeH'Ҡ&\ɷ YOgC!>e) S /)Ǹ;pNefysJҥ, f Z;1:XFԕ׆QqY3x.NJu8*J-VPvsBpyDԊ5w@ E_yݽfP>NēO!A;̗DVrYʏO-VbBa`k^}a 7~GdnCD;&p'4ش*詏ӵ:"$`jꚍ&* lcքl{yd<)jf@PM ¶]{Kܻ^C*Vo`SD=z;@t/Vj{ 4>+8(A STd[U/q*]`Ѻp[&BXXmHЊ!1O{/wI[`ӵÖtrjȈ y!#i'sU}l]vLE P2[Y k O!KcӍ8Y :V_h4a_Pm-gΡFB丧mu^&(4+SHr0,@jv\Y#hAǶ6ךSX9{/*ˏD 3na_!OD1ڎ#G\G5%ә p)xRD>̃i1XNoǸ*z=l? \o(r? tu}؃4msh!ɨ7rh[o xIu`H*dӺ>e =ktHJhAzwOC~sI׎ p; x f)Q cp.~'!b3g3W/3Pv?h-7 K} Ö#UltJۤ;# ;=dz?r -^o}5{=6H7v+[?L9,Ahgڳf'=N\Z!EX|O+j&>*1ODys9U*U΃ WL}!NTpï]AF^m]ן G` OXm`А37>,g;:HWb F=01>Q ՝!w aAz}˼9*^0;6/Ɗˤ)1=2R8cTLb^?@&]%źc1~3g[/D=ಸC=ZE$wM8/[w;btn^6' 7>-'j3<MS\Gׯгϐ6ZDVz +׸vەg5A@P$\KYH y+9dq܇LEnJx&8sZ?n+WE2 .B\E6ըd.P%9N3uƬ-bބȽCj; s_=@ Z( O`OBz g*,BlzdX m5RTGPL{Oe64wѣn J1B3uEW3<'ZΏ Bo\ֽ"IѮnԘuX?b+*/r2zdǤ R,P0u ߜ/BRh>}C.=iB^|:!U$ohRBMoQ(M :jJ2X 5P&=b#2R>4Q5뫠L)H7p&I0W!kVAсK c?o™}M'f9ՠ#Lxп&h~cB {uV<v4n Qqp S ƞj}  ~{pnbe2<&Q)UL6 !^uM 3CG.J*-S僣-Z"ɳ2Fm[軸N.h<ބt|¥/.ZR*䧬[3}ۻL:Ҩ69Uh>m#o0B=g^ =[;zO ]$c/bsMj 2-`vgi`4P?~\Gw_&.k#KAL;FM_q!r,th  OkVOjE͍&pЖxh C<},$dJS/::kΠ#Qw Eps( 8ޥ@&+ û o}a5z(DŽ)C$_P|~$F/knֵ wjebYsO!4Jh.>sLo QY 4 A4XISB>ZR6J+òz9 "tWd<ǥ[lo Uhqs 9嶰_zqnM ]&b\.w2)4P̝lFM!oڼ rN `Ic`9#)mFD1㽷+S^#g(ˬ$ziXKȧE3aZW&2%_hBaH&6(n[n*JR>ET"doLҝ|J9#u5J=ENwI0ĢCMS:27;նR[Kmyit<ھc:Y/e6;?/SO총LyH%.f3⃑Ug0[s@6&r~YvX2ϩ%> ΄;h,lQzrG ΩLxU}SR:bAUo# dcElXfUqlvGctKLƣz!L%ld *']5OXuvk/ Hi U sv.ce\>F ȗ~R#׼jJ !Vҋ259U 4P?̟wp{U^NqMHM哂D9k_'Wz k;+ 4krUtwykʟdt>$AdK]tR9;nO!njEjYtTykF9l'u20F:9IXB`&-*y9ЪѦwNY|Ek}mS2 % R0_ jYDTy9f!}#e4sc ' Nr%Κ[<_Iiv$vEÀd ڃw؃yMҊJ|/,9IyL%5'ia+Nwpn_ƭvA me],I|Ƒ5}rO;^CYS?lg'O[CiQ'\Â8!Ǡ ~̹3>PF ;kvzk8_PHr!AAu0Ts~MRHֺ.V+t]+{l#o wDhkŇdw )s:mw:w&pRZG6 cPmO5* ub\^fEr.@%΋xTY8 {z-˳r]hNF=7nM+f"dc?pjVfr]zk6sXNޟ\7qLm z~(H-* [ &152)`{GY#" %C'b4d+N'hVXj=^n6SfGC~u %xrq\k,?=Aߓxۤ,2ޤl bk9 _AN:'s&pM`+ޗR»u\ڔ\MH0E,gnR5P&8=r2KҶrWn0.mRXҒn{o`w} $`ޙ8Rf|HdTꓨ%?ܿsA%;Iq= pc/VH⯾fXp,ٌo\=ewPVVRӲٿf)L55ԷDxMZ63?wi:DCd5S:9#"ta.n܈m[;<2KFq$ @ UN5R{&w9^qgmZڴw)r<, uH4EP%X]YdΪ/?^Oq25@cAk[{QKτZ.^!v^2Rݺ&G7oeFv*m}/[zoPllxc<r+LoגgѢ Gw^ <*yvd-fVdUis+9$$(Z#{ qsD`DFa7 &+ӂJ& 1CQ\ogJq#o}6?s@kcI0buo,zM Z1,] %(_͋ FzI\,?PIE雏BpYEW| ?xD9GLWrU0_2jPLA5EDp%pkuLqZ+&B#1h=)E7YkKe`D0Zӊ09We 1.TCm)uAΊ:ң ˫+TQ~O ra 2SfS[A,!ɳ_*gΕ)?Qt'Y!_Lɋވvuczheh'"Zݝ4^#Tr ǛWtXXJ\٦{ 2UHO1Oԩru+pRA.|/ s)*0)-JҲӃb|R„6 rH0.Xj Qo2BUkU7yv*F"["*)*ŷ]V-<$BX%䒆~r̸#|Dx0O.S`z@ytzZ EVS{i'm7\Au>R.eWS ЉON4|9xJ t58V=7;wG>rhYЀ!%>PI%uH8Ķ}HHos]pcN![_tњJy[VRtU oZ/v(e*DÐE$ 77y#~UR ʤghu̓?Ip"zu )l+<,G:ࠂEO.ujlo ͯ*Ah&ENE!.K+k*c=7~F]qom' m ѻe"NQV+T;G($9uFH%n|v{`5r7;vJ#A]b񩨦PyY6yW9Q$>gilp"ve eH`,d?@)<謅B~ EfcU].J0)WFU_&ݩUe:F >FË.Lp{XPKK&!~A7x 쬌8@}KD8&H:;22(TF3UmT&L6NLRA݇!mW| yXpA|PQ1P +E2&:,,t]FrHM0Kl3f-kCj^jSʛ8?X+ZY'Xbh~q*=(k&]a c7ς Mt6%pc/\ d˽"j~q-Ο/-lMhg\޶:sIuw.0;Q<*i/͓fP젷[ ¹{ahrfw5滋}A<ӆ?H[P89lo^wgw(>ñ^цwJń"D mpƏ11F/7Rbͽ&t} 1<_:e @ajF]Ki|Oy'Y#J5wאMVҲ-ERpcF !d~yҸޗrr#惱ۿC?@^KQyFI۝"A`;U|"u#x*h+A]|Rk&PuF28dnc`#~ro"dE=/ҡHA™fS%P{_Ө1B W+O>yBg:+؞ U@RN?7X֡EX˞l >`k-0  `D׻s{F eBP3H&!.wT_6I_!=:w5'BdЯXFdTR"!eK޶#^p96a cu qscFf\ԺD)ھ'Fz,|Ɯkd=|xjjp/G"?|ZM1C]^+>\o|/Nr.S5少$ -=Wۥ>;g9}(DbωQϔWCL L&u:6L]8:ZM * <# УL14כVU={Q|)X<*[nQhzDssq$!VZе>b{8F.pOO1d1I:h0V^ߐP:&4)=ۼGP̮&RDw kj "!Қ* )DP } KtB[C J>LܒM؜Obv9N:Րc*z$|^밈&;`ы;ºiY1H7$P@(ټ rM56(M}hNdrZOrgfQE,%h:ֶUM}4{j;Id)9IP̀?҉}kd>מ֮Vƾ#p7=tzqC3^+aC bbM%fXz$(i t4C.'xj=;|\]T10oRJUEؙaB:{A< Ə{-gp)1gv~}8z25t!f]bBC7$3\mGxyj+֦0  T q#v%ٶ) ꐦ6 m>/@'w{5H'E\lnu8@ {0RF>F+ISB}<;ջ,o ַ0yV~ .)/w`8aTUZBi3! V' GhE&WFۍhv;2XNrKTEUOx,rH{>0dPSl9T8[r8,?**"T&2O8x 򚘒pDglSx*GY0 S# 1r\U^ 04z0VL?!|p=wZB;CAy,BG=^ezE;o['jKg r2KmFl;ru:cY*Cv-@'}>;R>0+nO#֮& 3[GOhv n7w2idN&݈tiQhCvŃ]6]ْ 񶔯:4ޜ#gGU>ml$e qw~ןw%;pGRڀk 5/w etn=5j8#!ANg:s`+z*zaw+]@{Q#| *ȁ"Fm69)ެ?w&K!6Lyb"Uqt̡4v= )SHzKꯓZg(ſOU鶇߯'_EY%ɠ'3ظPtvui2lWUiSdǙPwu<0? 05D|嫛XmrNE٫ Dg,oy K8Uc`@9Zi/&[pO(BzB\' .fvuDlϻ;AXHcWwF&R66G8C=]rm&`Qro<`ަ9 (B kHUf: }DRHF;;ʙrCMCrYlߐLRwspTuW22OJvҙNk!%?ݡ렣ꁍ"R!?ɵEW9JyOke3{nu*jևGeс />Cj*K KJ>fSA  T{]dҖ/JhdZ"LyINt=p~0(:I1+؛KUy[43)b/.C_}v"@,@<ȫPhvi_K;uhNrR~fU̻4Yߊ;f:џV{]Χ4Eަ6(Cǁa`tN'oA.\AS9y V.Gҹ~{+h&zRCKN2UH0*CZ[ϻ$/>}hyڽ,j=PׁFAWeVPp;6OFvFv@L_hsNbO(P5ŴykB%]#T52!;XE} 'ڞKqO按rǎ ÇAҸLS'FČÄ]l.V.nP~ f[y)a^&aJDpeR/eϚnV;>A3֔HþROp`nQ})t a/2OT[-})yF8 DRbqm֙k7yiʛE`=1S$7o5ѻHlvޟsN,d-+qq_ǐD}Gq'̑[  )94=}lw/{w:e_t:󇌶iTHe- {TmR&G|#xjb~ŵ-eUNi/b=i P'=@xhLy5{Z}-.2<< /kmvS /"/KXЪ;vO2\*E]9rY'|f/ێI!lp3~5uF z24,]n@3oOzq3z=( y5j;z#@U*Fy!Rf7dD?q:sϿn6F/Ps^TCԿs1)DZ@UeXs2aU{>E :o4WV]h5@Q6`q Lڦ<|)!/ALTIIz-c>ERP5DZ.aL*[@2-@+cQZ:@|O+[Z f-=$+'C밲꞊Q_曝Ypu9,1~#ʰcB>ϦuoS.o%|sk<:J䵏Ň\7 n/^O\L82hӵC@ xdVakOnM3x(Ac]O3H^/ H[r0cKkF*A4^6KunS5PaFoA T༸ 9nK(oq$v "{zOTF?Ju}ߊ(kuRnK:.4y`+1]$f9 #X"zԝn l/Rg'KƜ<}6aSu,7K~v|/Nl\JРun~j}o[wĤپHZD$a'"&'֝Mof|x"홵͑ʡTp! NcUp$crK=Mou C*H&nIoj+\A#;JikKU4W}`zH wD7g#oFn[Ro)sf?g =6JEyV+_#S$ȤUNK!Z8IGs\29,?0 %V;Htﴇm'>έb HZ6` ?#~]jeT8qWdH4eCޙlVl03,6-MIS@J+Ih, e4o񷁉 '{/0̏wW#)^m } ZdR?vED}I#0 uQMвCű٦=|sf Sn `t9iLf~X 7q-Ye7&UlS;KRiU2vզ2qWrxXV#KD )i@YZ>ehfuc; Y |R64M*ǧ[cJ{Hf 7~ƍ\"|㣽Q^nEӗߗ:ļ3rJ]PXlwX8`hpBMp/m_K g r*Q }g$ G;|JoR~=TjO=uعڸWXx%ck.㾐c+w*iFk5?Us}q\ :l(>CJii *eKn``diʊ$F7'P5 їUES0ojD:hZ;C%9+-f]_*gI?@ ]hk NҚ0&aR0"Rt!5<o vr__gODKDpxW5]դv txp=Cx=4SO̦~;_x$fa~ gr[qO!6$| LJ\"%g* aV P娒0p} =#0Q3N@BQu!"b\]e&wB,H a44. ;Fh;p*)v̝J@qk(>yN}/Pi=H<;D@`c$~*^o>`.?daB m~hJk]OqYQ>Kp9ػeerqXڂeQ@w'1U5%p*31{?RnȾNyT.+aXCZ*c&Sx׈'Vx{cΥM< Y,Kug'(˱> ~]%4Ao,9*ô "=RûX#¸$4n.+zkEB5Noo av.j-%E:.VrA`շWvd҅DΖgߞtqaBSEb-^^-,& d*.{ܥ)<~cD5:O|%^3g&hTڷU,=oZv,/pmk$umY G?O;t'aY 0qfi78Zxk(y>$7mjl G|I$j灉ӏ| KQ -?R{{؛IaHGy}Rx=:%tu!{j0 T1 3sb6w+m_T[ zP/&HdU\̬^v>h1Θly`yyWA $a>F +zm0I1q2!eOpI %D4w$"CH%':(|+=ThlKuw}r ;эqвH\%V dC[>HV1gx*k,'f$rR1,W,ܺ+ap\\rc֗Sƌs5)"F3oIӸnz*lu8f|"07+4"W}XŁ{ $3c1ߤ954ɓ@gCƀ}j|[4B*!Sp+ O: wR5d`1NaE\F[Lea$w+Ư?W-2rJ-ͧȂJnEh' pBN?4^h}"Y 4wxlm6{`=BXm?8pYw}q)\.*XnY;ZY5dE;D"/t*{n? ̑3hʻcÁ5Q|xbb +ޖ;H]z,y4YZ'{2N1Г:sUp7Y~4m=xOfgDsPf9J^{6q7&V^!lD:UpLB9#4l>݇H ZG{ijՍħ*1C &xf׃y Q|F6 ba{5l`%O, E`/ZW^3?(z2@460pm4wLh@0v3r[xsO0ʝ).H$ƶ惹_wlf _X3dD6AqZyg%)}{]hfEAI w"?h N~z^1̾Bi"oq?hkNlDE`wLo~ZWcHKð7멠N,R)`jǁfT Kތ&lQ9zQOB& %d{|uA{*SέZzhG_?[y[lOƔƘS\jZ7h'15V-F62p2W1pZ -URfr؈wu^JZI\g<2f6]XR.NfgF >mx ^ٽ#yIYRyʜ,ȉa?o#{JƱ܄ C2ە)|˱W )-5ܭވt()}fKifX7g˘=}D/5i3v|fϋ?WwR<-@h. r`@uOQKL/S2ggur3`;O+Gs %_ʀui\hgRUۓhPs's?x@7- HlU{gC!.bl13nf}Q=M4kIcPf~}1#^|wX7<@xne;> 'URnzYr;@2f~sU_O]RZ# i? D1pdG9.fO`"[)Y4)4g1Rt3J LRWo HZΑ)kDZSܮ|`Ԅ.i} ,EŰxKoY`AdtFO˘ Ko/'Tե^ m%Ӭ?z.LϩtY4XvevXGۓ-Q{a${'"Hu| oĩ Tg]Q~h~߫u//Lչ/B-; `b]ް)d9{^P)PQyb:kY^\ kft^}\C}6oazmQe .~&2 1Ȇ=NB:7'S._᷽ҙtsvA'm,f9$2Vim^sEL0qgI#}'|[ IE!lCO_˨uwֆǑ.5 \ǢPSe5)TNo[cR@V)GFd!>Iyϖ%}p>J`7iyDص`nrģf֏0{V3DQE̋$o}xpz.HWUSC$Rt^7f@f%. ' h43\w i=v|اI>;YJF>GSUGx+^Gk"SJq %YdĿCo ^^ލa'@} ,?@{7Nr3rR:4gxg0(myg޻i׎>Z|Pw%"t[앏YƠ̈1F_1WT^uw)HƃI\;19ևdg_7XM8%6xcn Eگt$}mhY7zu h6V?ޑ5zt+ WV#k _{,hf(bԹ&[D#P?l蚦{ާ |,T WEG{L~)F!eOпP0y~Ɓܔ[ԣVkmNYm5Yi"(/N^owQZq hlͭ5r(d'PgEeuv;]!oM+6EvK$Ni8ϤR:]NN7QZ#o.o}]Qy*T$;m%p<+@ESDy&]1"d1O=@Cm u'̓>o#F^7ּ وGl va1on[gGg*B#2aP%RpI|&va9R)jld (kνyzIg]Ci,ΞBE'5g6#UMXb݌?n#Tt;xe{q46:ؗXǻbLsZG _@ _6mA+UR tvn-5 ȞP>zrs@+E ۴kV}t6Jat.xbO~R7-h43fől*`']Ǥ7e8|U&k Cou |YgMB9f6R%j\;DR5FC} ĀL4N4ZFd ?"`Vh|>kFR; 4RJUj b9J+=RțջRp2Դ:t;sTF!*t:UƆ4jmmbU2_|AH+>&XƜ>dsr423$$OoW ׎٭`RO39^ 7#-rK*D 5zXqfOUJ9ҏa|l(nIIn5d=>kLd+0%P+TǸ 2k$ @3RƃM\TwIb;qMt-V{/[I^7kJ[\p- <5LbqqG]zd2TfVTqK|QRc@mߠFP;}Cv-Npa-LOa9lNݺ /!SQg"=3pLC3y3u:|sZِSJrާ@#))Rۇ iWz~F*k~ : c2δUkt5nB|ӗ@COj'د\MTӟʢT #ڮik\X&^eZ0w`U*3aM."۟}}ڟ\gsk*swD}Eh͇,o+X_!:S}rGY&\Vf۬ܗQ\y)::^O,}H ִa7'P*A}jݐ &^ኂ~`z1:,-J /WDKML(P Ҵbu^>#EaIZc0hvujSj_L)nm,'6 =?#ah פ5w転})"?F#}Km`cVF9GWֹVp^r[:yuv*lDxf3~^eիluŶM-GhtȚt!Oy0`a}O%9xӍcƸ РMy҈klW^'^}{Oӆ"\A5[KNAE 8#{oj]5J=t]da)睫gľРۉ) sV$f+7 J<-ׁjR|7}ڍ!{^&j+8nN뱭YluT^^oPy&v (!k3IRB"EM+||i Tm~ nuU}~juk^ ~_L e“w?L/5QQsI>v?2byE˄Xo!prőM$Yd>Qes >uFv|VIT ȴ|Dm*n_nlsvu2U,d8ӌ3H, `kEP!vpi={O)a@;IF,rʩWˆӗH"︹O77ysj=GSDDcp1hSvSG(+wJL6:OqSȋ}Huw@PD'N2|#ĥT9dm¦ rhN m,cJPOEw,{_5~FeP։qqpU <;C i<^HѕC@:CJ!/I2.U0KslkڠhA}W /8&o\N,ٌ*W#AHR&i|XALOc}lߣt&FZ:1DL~&[:3}Fu/72@5r9X5Mr_w!LsvA]o1P)q\GROQ5KW/^^(.#RN?r0U6[gK"~͊pwƱq2;)lckRȮ9s&~}-5?4V6Mq,Ӛ7hMžE>q xt6cJ¤ޢi=|PyoAu!u[O6jT_1 _SItli* Ê~mȳ`ƥ[\觶 |_1W#iX`'X>{ƒq=.+ҵr9fʱ=*lJ_V[vβ S)Cdb +(5!N^7m\"?ZXi!w+KW.dt(F%4|_ʗ;}ۥ=tYt?\"%z+@7, 0H1e Lrklv CJL4 큶Q(Ӣd :< {jLTwFrx\h,e>V:×YWŸҗj ah|gĘ/9 ~o\]{J KꛕXd$lҩqez͞۱T6QBmʑlZe鮳Li70iᵸi>eѱJdqOPMA)I+ـ/5 .3,~{P`) zRJgQi3>9|f`n x:溂ߞsDOi?]saǐ8i3ObA4 '{ͧm+MARZX\u]ro-zBaFM> 1غ|LN#$ĩ uPw!)\6}Ka/H >5'36>ZXS==k1!͚R!~5ȋ<:ܒzzyVMD-E+y׃|Q|N(d֐\*|XL$7QT<.Tim:k>eVDaR,ڲ&;H2,˺j o[k~CH2{u8p m.95`P,D}7U_ƠP]gE8Tko8ą ]/]f?f2LӚNb7OjkH2-!J{j\Os >~ \}e?XEׄd~сڞF6:fmWSNӖڲAbS蓗üM*ͰnAcn#Bt(fG3aDd&QbQ  QòY K uo6~Y̏72 [R@@xk |Yء? !bG!4_y=Z{cY@Sf O]S'* HwA 5K@e.zmb<8 }&'N)@%vAp m~qWlV>Y\V~üK2VBkU)'vma7(؎b[G& *[{gN懰(7 xYPA^Kqq#>NG0NihrU$a^SUP=o H]i'C | ~v!ǀ 쉨%*KNS^jBԞN}KL.mt9kL/Ұ0z92nN{! 宖օS X*" d_|b b41wGDdt|.W%8uߣom[OX n|U[\޷n+F5 ߰/fqQ8-Xte[z|ӍgʂR4zw[ε/=;ʐ/z JA+;-2v{I\q,N {u\wPvү5"wow7 &bo9ڂ(@4@B~dB ":VJV+ e S FQjL$j:&L )s*VФ1)&E_gs& og}o$(־dg;^ 3[PH؟bu`3վxZ\zxhJMjdEǸ]Xrh)m6D_V@ZMXh27Csѝ$4iBU<ͶR5 ~*'GAD]3#n*g&b=|y>>G^W]:+5{mgXjMA8 KwP [2sknEf3Avާ'կ䉄Ƞ^{6*I|Pa$->^)!.&s00 _ׄ4ɵcWdMAvvCa5@ey#s? M[L"'R* JS<JBz'Skȟp"Lc|mHCH6~ BdB '_ƥy:EM]::̴:8\8̎ṋ@})p2G挲ʌ]̊k[sW/"}tYԥtNNvlv#RpvFt=+VMt 5n-  5T0qLOYuq-S!|.jj}\^PCƎds8_E3jwBcW#fٝk b17/JīIAt`WHHAPEaCc_GK*: 擥SmD޴ (lhR"3HOiڟ5Ez|K-݂N3q):ԉZ91DkfXXv2z,Xń>Y6YYKVͽ 6I~~OɫӒVT*j/0G%(C&0|Ƿ'۩Mglo"8 @f5QpX.ky )>e"CN3F'T%3vS&_>0۪??T c<dVׂ(%K`Ҷ[*L4B/G-; ]~AxgXC g7ُM׷/L[( w3 o<5i%lucL;>`I{OOQ8UEl_ފ^gН\G .Zhq;0M7eA=0(Tt`ឡsL!2r ~0ᄔ[@WC{MBܿBEQe=M,I!PI0)kSYQbA1= Ȼs`"½u~BJE +u@ʈâ5= S^_=&++!ۀ^ ktfMX!{$::+n2)y4y`%'I񗏶p 壭#`" avoPuW~1Gգ́d`7 =cW_W{NE!]G@f|%.K!օ|3؝llJcI yމ's?@A@AzO3q}LZ wl?V=P{v *\XZBn$zR2&7:اgiօdWT\ O %%u0?yh89mʏ@xd1zѐ;[D^}8ά=.{(zRqskؗ:߾g9>.nV̥hR1HqXHLyЧSrՍ#s ,`Pe?Rl<>5:30Nd] ¹A̔y^#N|R Kث@@4wٜu)#eMF;LyXAw&bذC~6i`hG JϾ{eYfJgBԶ;=\z, AQ/I@C ,qc[Wl"e2vT3UBz^3Wel_> WCĈE)Xc`2&w<' ҢctM pQu4㥕e2={TM0|1)I:xchix1n.'z1>abeKAv xF7&F@1Ҏ`7A5uגE JafRI(b Hդ4<U̫kja3&Su7y||zƥVHV> E:}{%@Ae7i}۹gͦ?rCɍ0*+e~~,/hk}>ܺ53RLUbQfIs~W-y q&pIGWUc܃J1AʪߜK>xK7$=bȜMy7Šԗ0hJm`IC&m/MCSN} ;i|= Ȗ;1N"nd~]{{Ff8IRp+- `Y Pz!+MdSD ?z7MoF%iqls1&hx0&߿e H#kZ[%MNGk*a)1ƞ%#F2j! ^#:[D6\V1uw1#a(rKzyMso=BPf>j@(b9 a O.ov~pFwMb><)-dOSMR %n?P {Ƴ?JʞOUzJC5_I"&l7(\r^PR~ɦ~ VTo ӌ*4~'0ZՖ)]u>Q<>d}L>g'g{iV apS~$0d X?`sʚFѾQeWc҇Sӎ{4 z\? 0="lFD^Df$49 ÐRf`s^D8{<;k-^ |vonYR@I]/"XsuƾlŽ$)[ ܗkdv3rܙ pv?UrC9ݽ E{,O%!#gDZ.-$e Qye@;5:LlBa'Öa|مbPhy. A &= x&,Ln`ڨWa]Ȼ[QGYʑ\eBPccsBѯ"<#6igo Cyg\NObRQ鯵b#6k>0н4QIToݽ5_WukL_\R@gj@9|[L뇀4;}) U/pV <cUeh6?0r,gi8Ua(5'VGw׺x RP_x?A)6j[ l2wv`IW[|c:eeN! K^u8sJx#xЈ>f9ZG#%˪7pתu[Ess[ ߼d i uc"&JdIQEB(cR9Ҡ˥_sʘ3z}G /`£]CdN+f9e.|{xurA3,G 'Z{Xݱkuftڛ̒u.Vײʟ.@~7P.Or<䅩"DNf;::(66xoz8 yI{I۠W! ]s-4#?[{=FPs'(`J\M܂i󉊷5-0Cp G@&0x_n[P2fc&ɩvmCHœcYCm>cU%'NG#yobzA/6 p}OYAj9ծnXp4 OiL!ۀk@+z4cvDCK= ldjE䃁DVǜ^;2`" r* .nT=s[8ZpG B6Z=#^*RьaЈ\"Do<۳g?H[Upɛ|1F{qQ=H>77iX^h.tvB|:kU8I5寋Wg2&hh} ٮ+^LG+,h0QXI/ir1`LЇ +vsӽ@a#w0fԦR{ ҍ i4 U(+$-m w$xJQɄ)yM]^n(a5VMlI x dBp.4<7@< gk?)NEd8FS[Na$b+GȥM; U0q+~qLe9F;Ǒ!I}cyt9o\_}"wdBɢ}k̍$ GTY)nA[6O2🟂@xsK|GEb`;K GMV˵,2QSb7EuICSҲs1$aƘf%P~ll4 s6;:0; Q2η 2xH (ǿ> ]&ʨ4daj%*՘遦Gٟ& EsUX4E$َdg4N 2J2/;y@Ō[ <ٴRR–c(]yZY:MbC }+e*B(=yOjYCw<[F)lI%pEr/ YS$Թٌ]eG(C7q9O7CS&#04l}/Ъ̀9z`z39$ 9LhhI,_uЎUĜ-,߯ߨ%~9M05p_4ߺl _8[W0 F8ӏR( Vݍ)`XW[\c(j< Fn oyYL76o.?dNs2F%Xqki/fE" t1"*R 3^qE%JǮ߅C1jX) U/_ !I픇}}yƾofWoΟ5~3VuA;>ܴ SC2^ǡX}8={@G&TzjyBt7_b!H%4 ȾjX3w.GJ`7 d@0 [˘4#J&BT#R H N}BO<hD۠B^_3B+<މ 59~& ۋ mi=QgrWax0=t%A)~~\qjhS? R3;Yʪr[)"cY)Q"#XKO)QUOϚ(uz7je:! {9RpZ4W&3i7}}$H}j@'95rd, MoJA&/듯P")Xӊ9kt;>z%&/VjTD;&6PͻX!J r2Q 0E\nccUA6߆G o-wPX:Uծzn69R@ОF3o2txŤ#ib{>P j4h6[L.וkPJ zyb3'<'qRaыg 8JJorbt-=:=avuuŲ{^g8\O$flRG?`z3ДtRtʄa2)IѕKCx"Hb;@12)Ғ+ދ9B)ÿ~շNrcKu߄GՋ&ӰpvmtqkqeQ6@鍨IndžP ?dXjS@=:X(SVz^r+miV^\{7Y?:2V͕i~$wӄf=,`Mͭ"e;0t"NHXD*sD҉jQJk~* >{ע,4==sdK%+J2=^;U#vKS ]qRwu@qsEcNDi;=gc؀GD,܅XtUwFmq1wt(ߥ?m+{X8FIQv&PgY'k-$%Yڟcx5C;Zc{ & z/$RRfTƙ{M'<}3w>(+]4[Xiȸr ]S1z<1ĎcrlXA_ԋq"&do;DeFd]#L=`ӰēVLiB5S)x8ț[I"hΆJ6e*ai@C2jk-`$/1!lR{,մ‡ @Su`ZNg{K:V} <48d,7ZAyGN-YZoWCo+'MRT[G %@YBF6EkMy=I`֋/Z+t* G!-d"Ԕf(2{bG(~ P+TM۸?n$5#ºDY;+J$6-# m0Ǝ-k쥰v0L'tƑǗ49ă:u'n'~" ݜѠ0H^yul6꫟S,[c4xA"U3i F;72rD;p*FeH2:/t[pԸ}吸Iք(jSҗNO[5ѬCW\C}%/.Tأm~hA3v/4uy,C^[\6s`0LoێiP,~5j(zrڗu/!t NH [4 I1勲 b W"UZGs+>x M'nXJ# !8 h_9QX&rʔflHXɧ'Гi2O/K^ZD`Vo' k%7b{]< P@@眉i6r1urXG]icoSl 7JC>K%qUHu&E[-/! kU"&8pzNw^?OdQ8t4m ]E YC)a҄0Y]BW Vu?+c{;?z`;mE%Ɵ;FH`D+*1""Ϟd*+ᓖ|pV(s/K|bEz|hۉ zaI44',AyuD]܎`}h'WI,G!xr,$f) ]cB*2\k̚6(\mD#~7:B4= cq>FVU#Ro IsY.ۙ#WN>83v!OZjNu!wv5'jzimJ씧*&]7Av F:˻YFwIobtCN;aE29Ľ1ԷZ-&΍[|~(=(֨Ll?Fvj{QV>nƯxS崭T@[ʝJ}ǡflrV)V!C4X$%d6'>Y ,&Z/N!zEu.A=%NoH:pz qʕV@w!z-0J" |~_Z)/31=Ũ^ CjD=y7|C8i-;_a7P7˺;c ^wq)Is_m~حhzIW^sÿ: ^xE4)Ym.4A"QeUB0^pz$r[dfra~D 猣1Ӟz㤧jݚ-a ޼gT}ΤUÎ#?we҆w} x .2^%w6y}#V/ݗ5S/ pɷ[ B{YF_1Zf;ixD4܆c;-|S4;VC/{3UH14U_?S~_̼$L/ KTv~޹f)=ԲZw ݩ(Ł'>ي=GJ;?BlLfmūfbf^Cאu3 :!n:r&Т*V-)(*YœXY܄Yum_#\Z/CrK#쐐O7lj'D>@s%8Ak/Փ|" RQqó_|XX>;gmERRX SEL1p|i7 )Z}gpd>;<=*pǻt2<)u4Ԩpr׌3OҋnK=Dm.V_eٚUHJ~D~UFA)^h.1MBO} m`H0q߯"h9٩dGNG_n=ck;(! <va29N-. 6ZTԙ:&{"JtJ)[nx*Įb1%U.X;_2ВXvL.y>c\>]/|t,w?VyJOcL j!]j̝RhR}ugi}EeMȷYJ08)zq,QäaP^W]o Od:V,Sq!¼=P(.ZDW|[.X [~&KQJsUCUW3M^LBDPӊQ1|YK2m\7a&K+1X#<1R0ͳp_R 0T/+t2Tɾ턹M#d,uޕ_|e '?rz;۾5-;u3Nr!~!%_T ^RiBzv(ǎTmKSrN&B3OV q%/Wy5@6F-@G$ zZ5km˷3Ѭ< طe 1SGv!gJ6|ޠ.:xt+QZ;{eLHJjيkBAYGa+7+Ԋk8UfZ/Ir=?nQNeQ ; )-|ҤH}V/%ju!SQGY,Hj թNÚ2F=d`}a"u'&G@]'D4[ 촘5Ғkma/󈛘cv-lGa~[B}sTyG,hoY"Cf74uftؠWJt >F{" ]7c9Dvژ>U/I݌{ o.*kKbʞ7kѭh/X+ˀl+\ 9(a}Xs ׎@"a d;a54LDz@ƶWF@Uu(}(C^G2=%H4ůK5x@t 7t]Bโ3/,a؋*%qI֖FA|oU ͶQ5 ;IIM]N9@f-U4^3(7yc^R`w{\(^M}<PA}sB-h7$; *=@Q!P/Wh,VY!g5#jƑ@bzc^df:*e$=xMXqAKغrb`WFG%yBE 6K#.a+y0Ș|闢 D}Mb=Zp'5xą/.4mN($%xrG6wglD;I9*x;9W͜"Aj\$hEҸZAeL>!;H'n"x뮂+0`yuq:VfswzVf $ CQdTGj%?P^q V*eJ.CC7 "sU[ymow1!N" Iaa*@;!RЋ -om b5ϗ1ud憷 ^TSz oYM8&Pz}(9FGǠhTRF"yURk`_/waK\Apb~2hbHOãPJ)3>i*ITQrQO$D%r#]ҘnL@A !}#L@}lh~uU L@73Qi 硭R;ڒpΜc6i)QRۜ8 mrzC+SFS3F^vNq'+Elq!`&:BD[-IVK8"vue8]@ceNK+5W,̭ ͽɤ:LYY, Z;(p"5X/VXvF{ꢺ##\+<[\;RBM7I+,ZgcFd=쓃G|Nb@f-QB aգat 1.9!b^'}Dm_**8unraUrڠ@}+/T>@",w_a iû1 X]fӷ7Y撨R箁6+g.#*Q4ׅd"m(>lDk w 4\=ȊrOɱPbIbWj@C_h@Tgrǥc0&,u^CaKiSIhe,h$ٮk%[}Cz`5ޕwzlY7gEAg|я8lo-3v+.6h!L4m٤3rtPSKitjmJs1i87c|>_O&n!&N+Hi>K/>CˢYuz VB# J QM ]Q@O +ҽ;j}{8qNXju#V^#ٵ34ʈ,a. cvZnY$B<-ʑ˃cNOO'5n|fOO8U2M3E+N2 db4I (1_BP6J97) иGGKVSg&kFvjZnpX)W B9%ǹJ6/Y.5v$ 3=YPY+Nb}0%\^fݫAC-{a3wN8(O>Ul 5.VF0߾VnK1VVTf6%),'iu׈`i0O~MsI5P:@W;sj羊6֗` -+b_+E·IJGMBnٟt'?x:j7f@s&mr qŠC֜W}-ǜ\iFbR}EP(47r D 4%CoU:r,[-tQ{>&&AezO.q6BnՁ^ V'{gA q-kW#΢Mo qI ɯ.Rb/D]0xIfOtd8Z?DWPo06P'0c?BER%MyaW3k>U!FuݵHGp6iL:a #Oa?|>i@n׍[.}~[5(Q=98:܅| "l_@=Aqal>ؑ`3-$ū>QrThèl =CW*=LqBFԐ+ 59ٿ`ba,U`4"`z,'l8Z10?hդ{1yV 7{5r`P!h[?L fOi Gw- nzn85iOFOt/Ki*”ಅjNh34`sN^cuWڀڟOާipPxfӓh }S]vؕ~Z@F#aJQ/wR|c8+o^5pq9is"eȞK'+!ahh?JB * j4:nDΙ6 Q{>v^3ϘXaz5fUrlLknp˼$^dp e/|az=*sl&cb1W@E:.*~ xjLO)u|>, 9(1lЃ I~pJq ca0똎`Z %>)I[7}ނRVQuqK* Yܶb#0g4 8U'?UBd&AhP$, 8"x>jBm:L c w-18>gOy َ̡l0}+,/l x_ EcܡMRI5}q/ ”>*Mœ^T'h1ZZMStQeΤ:TQΓd0GQ> 7AHFLri dyl+i2`TʎY2q?`B_= $?ӣVL^PfTsWu_,ÜR􏺒iukSDG3Vi[Μ~!aaQl J4fu7S#~ą+ݲ_t6]X&>USƃ-s \>&˾>([sM}RuoAI8fz:r@j&!oϙb,ǼԦ0ԻF2c(76\Au-$K}[G*qhz6 *T pė{ Ħ}X mcVZslLA e7;|߃&y(/}"b7h4㴤j{o\F>,d3 މs]:}2T84FqZ54J`YփdW"8OU}@9da|j6y:aKE ޴]4rrPgw ΉU҂I#Jޙ:!f)%`\JN@oBzvJA&׎dZt(}cr }s" F;Bӆf*(r  %[e*61Rk~~Ⱥ/K Q7&}`gH;h̆NRqt%r >o{1y]\T|PƙwkAT``*I0_n@ L:+F@G >Bl]ۊV46[ML/`wŠjr[~p<{c<@?VU)dQsj枳XjІ&𷿡Iu OC Y:a0DKؑ A*h\#ey,BPvzwbTAmE[Lb&Į!d@$K7g8Ý`0} =eN`ңXF/, R7tmH #`}0Z`[To㬞8̳L\6Pmp0.fE$zo Rdwsd4 Yqɻ.X+lQt<@x(9!P.5ʮ% }*r[ Botv1 GZ L=umE5Crѻ Jowwl.u7SϴZX_cץ~L!Ӟg!)?/P"$h~[oqC: C5v \!5$"?\1ɱ[w?*  Q5Y8*_+)ޱgꗗ=.NR7XA6HdMl DmfQ{n 2Z}CXhXk9~V)i_ۘ{>;Q:|V%(wOķ @װx %+^ dE'\r j+Tc8Z=LJ7\u:l A1T"l8$C;C gqS,wu9Gʟi xd:+>se*!.Mܤ=}7dH%>M&:O<;3KdY.kބF=Lho%fL2ƊêWvUчU r7~H"84p9`_`/`   tny"zr[,'J 4<( 4Ƞi$Q@#밶[iTݒ.5WD1pX(p"@EmR'51ŨyRCGfZC0wwdmė ]邬בN 9{tTaydޓ;k`jr_%2L$†lֵ/ Щ ie67yGUc,o"n"-9"<<#-R%m"+-+k'3hܟw]yA#.Mw{wo|mCV( 洦&-"[?g2ri7֩H&imT}K+ҎC:*jז )dN/KIe *m [' j5NÞƠ*+شE|O*&(>fslihrg&v 桳 'tI܂F =L,0el!%FO 2B) pd 9QJ_h^Pg-xO yOr|6  5Ok%Z*g ӝDgZeapūn@tcRj::Y E9?;L\~@5=\-"N5RmpW6.{ T9AKSbqFdTVGTzHc^9dI]B4smw7$؉> [6I,dʤT 7Ny.M٧$ +W'./F%A[Ԅ @F|C8.MnanVlO٨/D|41*%u!5]Z؏']}E!WYJHGqIxy4bѰ ' sIw7SMo2L>4GʐO/.2Ӑ~*?bjueG'~`y'<9X=  'a+O5fLp'$/D>(ȱGI`tST B׬tת2B; ojh9*Xg+H۝ݧ|–& $}Ggn6vT1wYςW{8RfͰu24) H̀udf[UërDmbTR;B>87 כ Gھ}39] )AmhSNC?]|s"/l4 mc=jy 8yyW]ɞ'+gP[)qTb@M'Lq>}՞w!J䙝6YGe^7Z'6-)mפ 㛔J+Qquo ^prR{!bC'2^_çrZ)FYj+mʄhwFW`ZBP`!Ƈ.3gäbڳ,kGޝ:j^+^fWlr)kڷ=<޺WzuL$XZ N#UQϴ=P]Qh6]ǿw.4ڛnE^0 PD o?"،7+&;::0p1PY}dXr2&9}]H[#i_rf.wUe7zbREb| Hem-m\/]se;TBt#`Nc_6>+/{'N*GR/ jUg !5lwΟC4 qB'ܻl)"yoA8KK܀z"O] ?xt*G8p-3b @i@<&k6 ĮUtcjIuZ ,@O|tozG8curogMciKXG_dMc;=/Ǟgu2K&q!B!<y_CԔ,WjL]"еA}G1xgJɃ.m.'`8Cam"'=(Y?PgZ O0_80뚖[q)yi!uVB ƍ|m"{g4rᚒgǫ nYA>:wXfsUS }huMpLlǀ>[AI{gwF7$Dg˕·/nDY 6*aώ/+&DXpO/ 8(8^:F2(9ˎ ,8IӾr4vsdex^6xDYי}#B6MTNH-÷|6c!)iI[ ȿٻi$Lbǩׁ#3y97boۛpz\hDS/Mt^L85%V|FˣJslik?(@OR"Zs3w OXin{ɩā1q^/GtUڬ^O*SQ!7͌ž):z vWh0O9<s jN~Jv>n|vL?a:q3Csp0p4G@ޠv\y?tUG.ճlz1Kļ"9oH/L22^vu֕bkgm(8)8՞j k -NpӟaBX}Ef,{7΄;fJ= "e\xTkO/}awt;o;RgETv1y oC1X*f:M`=@$Z]dp J]O*o`"r%_Oj- #+tgdXB+ILc 6ح+*(VQmoT8\eb##^(&3^nQ qy*j$x`OA/C!.jR#L Ը,S7Z ;Inm"dSC?Ҳ nm8~9m erLLD5 ]q{6Ab`ŜBcYbcLԃeIq|Y슩Xz&ԘlGh]\3@O[IK@֮- zBUQ~ބZ?o">T'dK*O!AfX-de3_s{j[눶ZbZC+o7A)6vEMbNQeVg4 { 8wHs8c΂;>;JwA3 ҲIobM.ĉ\дIJ(pEп"SNc/P}f ƽ[-{tF뿘H 1f7QoJ3~:Tfu+ $ry7]v/ 7W%22 0rs nۛlg5KӼ#߯б=Y:u ?SUJl;oAv@F۶7*AtsW1r%_|邇7p6M.(^5]K0z)CO+S)2ȧxŊJN:x 0Tަa@fF5{JU[ɊLS2rcI=\7!PNw'"y hBoH'%_le9J 3g^VÀIU~jmڃd%+_E<}r8&6P@8NϞ QyD/W]{DR!{(,,JaW5 2} o#fJ\Q̳-*r mRn$7z0dcJ}O &,Yg.NEA[Ho K">x\ya83}T%؆Pe7xH;F L0<'! JFф0w՞H,ӺPq\Ϲ٦vLKؖmbŵ`)L'|ejJn Q1@-=P#E)aE0/.eAD:܉_ʹ6 09HNiCƁzmFmXs0FƠzK j1M}V; %ƹ=\$#~iy/.H漵@:U7̳ÑvnSw[͋e25aʗ ;葻SKcxv|" ؋a:IyS+Lq4-Kcv&̩H+ɝZ';C-+TQdrӃ}2>=ŀ"]C4(>* ,=+6a3%ΓI|+ ͐񄍦rZ/.zVq`{CeDfoЧkZ/|-<`8v֕0jj ΗTw՚yZ1  nMf(~||,bTtOdZ.RP6xa]'KtQg,FH8%6Ywm\u6Yhq:%ѵ~>ڋ[r:K瀰$i]ƪ`R{TT[0X̊M^N 2Y/D'w ӱӱ۞1ßH jq\H ӊçXHQIG/;J LU \*K{ȔNn=s3w^hkStB!S#Ť!"-DȘ^ȄyL=xiPav<*FPn4aj/̬jS% ~_n*F4"u%(ە]]I8]Jf u:#<ɴz "[ש`iKq\pv!h7=گ,ڞ ?;Vʻ߹]r};L 6@ELeqYU|pkt- tda T ǁ+{zΡBO"@ؔ-BQipfcz"'(ؾZ{ c5ceZBtI'*pnMQ>ےlD7SF|=dyK4)M}ߪrՉto8n$Tͫtc.c!K>hT(*mS-$C. =)dgoLcũ,QK2U/g<O\'ȕ/K'N=Yl͗i_D؄q¸=CR0l x譬_H|ϑ88GhooSFRFb3:KلVll3y kFQQ^f߱^jc9AH%| *׹^_-&.}@ 9 az|!Z+ㇻF<ٕ}m=ME.mOQ} Zjwxdn/z5 T)йt$5Z{$}$,P@su%{G$Ǝ="؞;MSV|_*H06dY+1kٓMvh^1OVW癐k*zz~ɶ0]O^{yUre&R+<,Σp&&v (4CLt]bExm]0ĿŬR$w˃CkIЫYouR~hk LL [Ĝ/Lj!Ue!/Lnn<aV`5 UWw|iNGC#If>"xՈɳCVa0jeM/uOe0)fnK|o QoT}q=M^tǡ(NUݡ~ϕ_FG7vh}nD.sg쯰JNJ0cGIBqЇ  E֛y(":\JhͤJμ/x4Qaf(#1`+S -|">~Ak͍ɱm4-q5Jt 9"V6NMn#5ic762rt.Hj?lQѥQicL:-' ` l}vGdnL7FU'Sr)LR]JxIЏz[D4?5kX!܀AΤ8܍B?B["|Ȋ]$9a.]an݈23})7]j:HP3 Kv0ω6,k/l[ņ2:jw r `~0+jzRAK,i<1xG3gm//˘T\b8*{zO :'OMHS2TJm,,&kNuH]xT% (nn,13%LW& b&޼-I}B؇1K| 2h>fZ24&Y*@D0svq w83֫͜φ3[o=sXx@a)}VqW{AJ6HՓeQ87.m5& ;͏(:ʃ!Plp1VUs4mQS@ :fG0kʒIL'm[;}`#יJ~l[Kc|//}I[cbbo|sA/O 0r yPQp6ĹVI r=⦙A>}oЎ[e]^Kݯwv_پw_mr J}}Biem&S.DNY҈uRscl7)#w ZYbYV6xq@>4{ApHngJ o#"Gv;AJ 7wJ7+WzlB& 5Y g `T "0VJ-V4 9FF0d7é{(`L>8fT( RGIoqIJ?A5>37")oxɚye{r.KqAlgi8oϺ q9g5~;a)"fPb γ4l!cK =lZ$sJ#3L0jUåLOŰ{ܾBRv'`Kdn$Ɍa,}ӿ/A/?s-Sn}湈 wm֙K9+}Ȗe_Ŧt$:9b-hy"u9:!-vs,\6ӎ<#(SHm釒ka'L)۾0@& y} 9,4& t4HQ#x d3>#ἇ]1ٟ8Ƀ;N~@7---ײA*շZ#ݨw[Eq|Ō#%V!KUvP\ķh"dm1&jڶ+<懳L^>Odx^I 0A2A*F{ 8?aĿ)G#It3|XZ!$y]HttmᏵNVʳrzw+iŦIM͞52E`L.XS63sج(@WeQxɀ^ڝ3MQ{()!Li'hк 5 C->gG.`uuQйڢ.YTph7eQ[؃.͚24M]$0f% QZ~Y%"\PNӛ'&+3Մ S3ӎcp ?@6A[4H̫:z+3LK@?_.>?qW%[..sf}Wv4|[8͈ȘL6Nku/ItY{ri(C,U)^m*|ҏpq9uKo8I}/S\|w=*TU' [`&?kh/N\6=iLx8<$` ͼN#:9 ]P?Ut<s;;(DIAH"k6b`",$C}Iܯ5+:6 l꺂Կb{qޣ똵c Ȏ3S|M?8?5B_%Ee9o>9i1oPLݑp{i/y`ł o"+@u;R gRrY@GVhՊBV`\1QJe&vYuG>7(X5Ⱥ3(ˉa4P0W2ȩNm쎛aX][HN. caUFKF u}r;yxNEK1+goѹkLMߍʉ%=tR<D[zcD᪾DCC2 t$yD3X·šZAZi`a{SK, E)/z#_J)"TuhװǑK`Tno .i {>@Q/Af5G-މ('`i,QR|>]CL  %j_7pE#Xn z#)D:&K扯J׏!Ro(0˄{|&` *I+9A '725ÔƸ)Ǜ)YTRP;F?1sR v 퍅&˓4_g r</傜jfxWVfcs|rA ÐE@nyn2Z+/ؘay&jL8 or*޲7~= h#񿬎ydd.N V:[n=ܹ6կS9A1nAӣM79D27lUYARs {5ƓM*U Ŵe(?*t%9} [ |Ͷ jAKgy+7NW)&l}+ }uc|2c Mj7kwvG?-2cF[|0Z)z`t5s7od1FgIBLqT*Ս]7-~ my޺񭮇2)PSbpᵵ R')md^  IcƱ&?3:/;lxF 6VL`@D!Jli {D1՟$KXN9EsWC8։o#9YIG?/{GgFj>7Yۦ/6RNÕ2g}NE iHJa2SHj5}§1Lڄ%xqn']+ ,>Z)`1M7ͯ*8(b] AUs Z(% QKI~~bCjÔLy&ɖߗ}0c Է4J?e>bW(Es!VՒXR"˙S0}|gr(DSTTd77M >k0/k< <_ΦҹE {lD=)RSA)oNn#UhmBpK4.l…ˏ+ؔ퇮_PʼnU(o&={^5;S[]@ҥz$̌ybёM1CF:=^kDŽYeQ,T9KɁŭ["-[ n΄?@yfV9P `4/b76ח^&+ kw Gwk' 2_)uiz\u~iI>: |gZ,95bUO2}rJ"4C(*f.f sbI\Q,me t"LplZ"I'=#Ď,DoЪTV$mטz0Q^yrͷ8:LqV7#6!#K֠- \uvB4e_{i,2:eN:]B(2N\`+>m*/' ?=t-Qtb[3'L'Гp5 !3|q|NKj@vEI5[a'0O7Y} aW 5۸9omSpDyQq!nbԭZo?o!]XӼc9ˀyNIZu6^.kH(n7AF*Ј:g7>1 J|]tN,y,+eF}dSwP c='KR_IA<R*JԀu>ar~p3[TGɪl2͓z?>0y=J= ըދżу@,G%D"sڥSӧdWZdWP6ՠ$?u U*ۇn_)xW|5̥Vd(>:1E'= UR-Z:U#AWu-[ 6uf!!|x販=6*@IF:s֒PR Eb(q!I9}Qu(`{lB_+>ٲT+506^Exʨ Ej68aZL:a PmnTZt ۑw{#0qd"#*Om\-bM嚿R:x!F[]]/rKˈҁnq)Dû(i"'rqVo=4#!!ȅ9^n酲n/rÁ?sA2e$l5,bG.:A@@/ LA-"]҈H[#3!DyK'H,4V# "<Y;=x*NH1XXTSX+ AK;o9 c D2Gqͽ\/ \0o$WMMac&'j TFQ5}K-Vl}&13܏$_T-`U[j-yJ^n}4jF WeNsdע;c@CZF/e鄤D~T߽~t,f޻0_ &Sw{tC`u^>K^^p}alnOkgZx{X,~lZ]E5}BGP}ZvLz=^y]}%]8g#ДMؙ3ri;鼚֙ʣ=?P jەGچ`MߜVѩ ʝQg4L@̠41:l)+ž^Uki` -==DUCTJ3O(n*%\i ܬ^RDƷB/:,&_ EJ,.`|v|Sgk҅.TZ|shdv3YAJrQz@eF;Etը'+=QX~Hȧ{L0y^3OX{fa׋E(boZpwr8(Yo'X|Ah8\VZoԡ[ 4 QL/;$9ͯnGe,hbyqs1+Y~d+zDVikփfCum]Ax ֠i~%7^HKܰҡaC,;(,@Rgud9̥ZvI4gɳUE O)Q<.F=5yd4Rc塽E-nKqȗ0Kj0\5߳2gitSCb)y°O|CHX IK[n*gc0 .*\ {iō@_7d; ߽١;^$C ,)(vu5~`ѤX^1rYZ,)E*V"{0 ó@^=GpMZ&*\2*aEaϜdߢ`mn5$*\kM$B-6uq[.I:ZG} MBV0jU% οHEoQԙVah#4ykN߮{ 3f927yꐭ23W5(x\QvOzwWlj*DsX(x_W.}C۷X<$݀/P F. Ÿ d8 h}.Cu%дG~r2cƎ}3H!ksTN<"zR+<֧`V?5[RW7FJ80fAǭ"_.|x|"k/L!m2JA(eœ Xb>f*;@2a!N?ւ ^靖Q>#q55@5̪=H\{KWPvKbOZcBg4#a]47ph!5Sblq'Xno(ῦnH, *=.8О 3(|p%AtmONSd"YOؼPFI̵Uiu5"NpbP\^JM'Zb6#ur 7ZxdӒv2ɡ?¼!%C]-=e ImFO9tQX)@Ly5TqNR:j|12-wȣhA>YDaOl]KD5(xDovZYdU.B®φĵh"}ݭjc @f|:tm*~߁O]s#gSdN1D;Ɔcz?xi_bo#&hFA [)I@ecQ[u5G ~d>t:WIi O9`Q3yB-<,>_W75C뷌?>l=+PDӄOK60(yeYr0|03VJÏ}ݸs򆉐jt )<#"II taZǃyOխ..X;Ƞp@qۚ .>U_•6;Csnӽҁ0zgWZWF4$t+RjgxU v#+p?4*VZ09זfO7taإ(̑W;U0z9f0xQ6MBgg-S%>ku,xWu<-54"2C'X*m[@Rgs))`J)kAJ cMt+(7qċC{ZvZH$yl|<)粬xhZtnj֐3(ܼ^MTQ~拘FǸ; /zجP2 &.Қ̓ҎAj\AQ^Ғn% [ЇicU |ȷeA(HB)5{Ӆ:tF;h4RQI0, )/zUE8-\~B_Tx @;rlS,}x6ZpNH%W869w褩]hf~tc̐ (J]KгJc}̮9kc'q@f'jz~-|}m;stT9P1޻#>J?෴+s⪐ptAqڭ`*| fX&Z@Djk٣8='4J,V{]D }J HDwzqemfr+CKiW#)GF È):;uo ~v8) `ꢐhe8[)3`,FzUЋ f|G k&PY(7uwF<͉a!mrK=s;'1E#NgS2 Z |Kтlm\>]?D'?15D?|dgHcxJVԣL_PFkϤNP.zXҐ'e:͚H{52Sw";l"?@65]~5[ i:'k?2ChIJ?-/!!Zl I Ҋ[$\>uU5+ycye罆WA\<[p- T{d(*qH#//x/b;ts gd~G"}[)`cNTEeQnt):5߳tx9N,5[4kaLנQT7NziH)p+W[(CB'Sh ms'1oV(]FU%hI>EpY(Jeij@l9S҇Q*f z"/3̾x((?€\O+òlbi_|# AZ(Dc)5)ӰK2YFLHwHEnQ=d|2(;# AY T+[_#>c''F{Uj^{M4.pɜu{`L7 \!1@)/ֺ>N0a kYF}rxbA p1;D4Ęp33 әX$)\\SC"~J;OՠOU\@d >d!P홵&(s_uoFۆXo%Ǥ-. 㙹Nqx-oCPf 0aGcj!ꍞ*R M Drj͝Uy9Sps3g=Gm&~upr&Ħ@=KΦ͉WirD{\p xS?̟G烞toy7r[ٲ"8nkAEUژג1yScffk0Mˆ5CI&BCc&gҦ][`(!):E6bl Ql!VS.&FNl,bJmF_+Q'I+RE>KCO*% -5olwuyFV}tOVV(-m$)?8Oz!l&" h\4;=TR1*]!{cA)L`>9x1%sHk`t c"󫸳8R_߈y6{s^XLCO\Iˀ)ӑRVz|ﻨ&fPIѝ$ކ PݵD>roISYdc_;b(ࡸ`̭쥑͉7o?OV˪%~3jK՗|N56'[']',zb4ܳ #|'^.6VmeSߵDD"}G +8!1VN@,,<+6u"pODؔë@ebfW5+ATQJaU@n.pIr}͡eg%W&QAڛmh(dR):fŃAa/ijQzXAqt|l@6UX=͗fys<2l:"BڗYVFL^B$/nIVX+`2G2*gFl:6k聫C 1@ޣŰ>01dڛDZc<P˻LwWٖ`N>4VpYF+|SFfcEIn჈m8³KO}Hqx l+"2n@^{v7Y)nDPȂ1'C:ʽ&{he0/SDވIC@s4 9q}+T#Վ:> Ӄj2j"+d!4|T82uD8h9!e}"z2 D6[5g G~c Ǿd8s|"g9~1XM#cy *oәϮPň0.9Kd^)['r'qu!H6r/1VwP+S􉗲vw3N:S~uɐ[34s 谴 `<Wt+mdT[@P|U^X&SўEBf>Sa񨠍UW.}Hvlܜx;!e_)yI@ݣVCy|J cpY, @hkn Z,QF{ˮƝLp*b ެܭ i#gUAOC\^:}ߘj Qj EZ/w Y5kTxd+29 Pr @dup%JLx#_Fh`ᰣey00cX^J KʳDRٜv*ǹ|86 N BJV$lb(F)5 Py"^I|o52cS Fz4tqֈalD^S(Q @JxȱVe !f]&*زU1yg.jZqZE:>ُEXc" ĉ^=T-mHQ<Ֆp$9ch(+ MfkYC"bg5z3jB², d u/iv3\ >v,>@ U{ipp{2(oLm)!P ouSڕbC9n!]?+^N5Vjk!Q6R=)ڍEgz}Ȝ ^Œ="z¶m;2:F;)؅9VCS%yvh^0 S! P/Ckò}O8QE`iv /č^!K᧽#o$ ꩂ/CT+OF %pg8ev*JL|~e0dL_I!tK%^n=޼|%\:-׭b`])JSİs*KF_Eqz) XĨ6& seU7@'.Oe! ?@T XupM?ɝK}$%ʵ &"np Pm)ǂʀ sFz/ڿog~DOcSBHZЬE~k9ZsᔵL}էKnn*=/iLgk ASc~Ǧ[2y—]A[=Rl{ce;ڦUu4(Ndʛ#Ƴ-73 ϗ ܫg3%Ę o(V=ҽ$|ϑ|W Ev͑*(9ϣ\_2 tW CBH¶R{^u EZ0kwȕ]J~m 3eZ?+ }@r>gx覩/?qw*<258avS{:nZ}b ] c Aԕ8%@=nߠK WQ<ؒ _pXQ#Dj:d~fQ^NL\X7,`ΦzLhr Q!aUne0Oi7a̋F7kCάE966Huw*iKJS5붝F(3 pm4PDu59NGa)N_EɂՃ uOڍ6š;" a'^!ђmi2K]cP1юbh.vL 6b8•VQNHyY,AՊ 5"}n[P-׈ Wwbab" 9mgJT˪j] ~6ie#KO1pZ?-VPM~m_j _t!bE1:='(t+N#gze;W7`u `vqABo( .cơH lLD{ړNP?M:U}|mr|k*{UK>rǕD Q|z7ChZ)/dp*hwRuX-lIfdЖ$\ ;ƾǂ)[O5tݷ2wBV')%YɊ;0lG`^;J覤p?aL֗we; i/SyݳȧS,eyl"J(oVhQ8t*C rs g%sYDg2 |USč` fwz1j+\-ci\Q{l^e z:#}P%H1ȸB7;70^O&! BEg؟0z"j)5TL .\L&)PU@uK4B&J4p2T#݉N]hPc`O\.:w꾟Y`VJneA3k1a {9#ƶ=9Q0} s'vdTQsd+NC܏`,Vv*4$~&#tty2?й2 JdY"x +*. HS{B۹H@"L7!=u O$nV&#" .Y/\mԦ`+\R]"4{x1ʖJxsrdD%уg&WWRP)棷~Tp`C92/q‡ImHnڷF) ?(+ [ͣy@buyOym}{$LnQ !E#aµZ0bѐu0g<}7&e\o]:Tzc>[X0L0y}UOguvEVH32o- 5},Qkw09w Q8k"ce~ ۡ*;Ŝ?8p2/k4g.9J]@l"9ѧtP+8:RkDÉm{$7>i4B?4#ZPZRmYJF>X?LJk*y+|:+qREHrN:) ڢUZc|tn󝍫N $e ꡐ'ۛ2zG|ƘkG^C6徨O3 0wD@M@%p昀iC`^Xq:,`@U3X)d(EOVq28Urey*&9=wE}k}ݴ.մu)7~% 7ۭVG-iP4aEO[=f| HX=-j@cJ@IfdtKr7Q=aa[ Jq #x<4VZԪ{hK|h[ljw'5'=GBF2\D#(o6tlC^̩л = y@[ş9?i$hmL5M()4`u{m+76Oqc*y~NDo&CM}=R˛ӟy ͮ׋h`с%ך QJfiXv}9lzi$q%ljjHp 8Id_ ?}:w;ۼիS)8pU|g\]6NIҐQ\|U8]rO- 1߰#IQۏW~xyֹtU9Ջ:gw7 b{LCZ!U/PJ<(`/] *߄(3z'&g 7HKT75ogȐl oGLKsy|x!H8U1R1[H{|8hβ*mlT* ӗ1+(lw63+h#*s 7Pv{0K"-[Ca`vR;bDP}V0Q(ЫnzL1q01t8J@"9KpjZa0),6)Hj+Z1疯~"k *hwh ^5ms8)/G{oMo}Vu\er66WdBD}tu!FI\5xRi*$^w6҂Mjk nc.f#9هM0FChWk2c2K"stp jD)\ WT'L^R$V ,!R5B٬OOittݧs]<*h /B ލS6n\ַUwTW'Ӱ u@)i-.:Л u+$sonSH:}#@כuBsX;jf5L'I+u@?AvaBu8 =COQ<ΕA%x`= dJHYט|oM吱Vz`zxA=yA< ĉ[_>q/?8 t8 VMj ZNI7 K~ubkez%*:SkE1CCzS#s7rrX_õYJ^C:8 pOܿǮ'_I!{-=H5k kP E0gf>Zt8 EN"[$ɯH}ݢ`4K1~%ukHϨ|Bl)K<_b-ZC}^EpҁF)/CC{F:H_3AUg~氁$ߟYiGp nXJڡզ!މPEٲl>1#aZ8ӷ"^'zhr~e]DǒS]㺔A{UF &twe$iZ[M Zn`Ӑ v@!׺kk(e #hUY^,(3XP]Pۣ89'\ZQ<'QECrV hpmWm^YJ;,FA1C|Tp|ќHçZk 9W{x\:9㏥P=hY~P笇?kcE (Z1;[ZƠ%#+H 㢄ĝSoQ-lwPTگC&꜉h#xㅼq#6J$Ȟq.,7Or^pX"?ULVg~[s i!`3wwpLv}#}5)>5k26}g#'ho}N/d"M&ڌP,T4Q UIvJu1h>r]ɷ dV=7Ʈ;@ycjVJNAir'AV/`纸)xYj"ܡidzGS?-;;/AJo/̥o^w:F%oO XPd;(-m'~d3*ʅ”HEh' q>GRnNNh()Y]ߖ`9n,(LR%#}DEFܡ:BdJ[1m^; ~ Y- 10aIO/-(qܰ)rg˲ _5Wl^ ؟RAFW+H? g>Zi<8^jGXN`GO"Iۓr{ $:M VnZ1R# ?~!*(M gY:߳4i.,[pBGE9莓vV(OvJ^ISJomLg1tT+_hBdp5[\A &/+pGVIz_@kut0CPXF>telM< ]z qw$t6zGt=q47y>dȷ`Vohhk{\}^ɘ)Zi%nNdըC3wl=}k);X) f8ਤsX~4gVHVP_0={k#9T cas8`1-읽&JZb\n6 ]+V>?3Ø3| > K[\;*BE{~P1OI'paJ8Bedbg^!(-푬ⳏSzu֣V 4_@~6e# e}&Aw k Zb%chnq'hԝ0 ()ouic:gL'ķ8C>mܚă)-4kDLO0Z6taKjQSFojtrh1TIfV{dž^UM5-΢rYufrfw2E2y1E}H eӄ?@ }*H_Lhr 'f«qg.o=9>0I8@ORq+ Xr WֻsTgKd*^_>Z e?;IX4}u)Gm=Ѵۥ ]}Zal&/$I5ɰCx0gs; 4C0LE mPI;ۓU/H*]3O5 2IHxd dތ9S(aꢣ̍^w!Ȫ5q/Xgc~"@&3<5{p͙=o18MU(QB%}*7jI+q>R%aTAL>]˝n;:+rm(sLI?mw5Llcv[ |!vHS dRtdRc h=-]@l@侗x䵹,jOZL OZ˶-{hL*.9Y/ t р&iԔ=?'oH9IGCΙȜ u+ 1ܚpmln1'Z(Y0<3ol ȐC{K>i^(,&4*C>xRмY/L鵹[16qd>W:|(`3,V8KN׽!lLp$sʡ|o csogLviIV\~̏X&lvF22mx)'NC;L*$,6Jo`Q\7qndS YCmTD$yQ0nfލ,C%{>^ƑɉrҤ~෨RulgUWK/J2S3ͯ;'¿l4jUwU e\r<&x)v]bA3hNC$i*iu/UptZ]j 6J+L tͭ HQe%`]˭h(ήs݉7eI/skz5ú7k(n0m>Xpg`_0wJRqCE=~̦4YI>8Up-1^k.w:ԏM?#=6jr$J-O+6?hpȎx[o>@.|\$(䲽K|+yvT*cYs:Ս`C6^yVxp;k9, 4;k~Oqf2{9nFy!f bҡFe1`C 7$̋Hv +"{ȗ?ib3U}SB$gga["SZn^zpG4:g` >F MHi*H-{ sU#׵B}\بW.W&hGZ}352}į. vwqlFݵ9F>:Jԡ<|P6XeȨL=)0: FN$Bl "Q)N};R>Wb r7g]~{Wu(o1Lє!o$>EZ,hp8g07p.jbPzFC5=5>ӎͅNХf`V]R!}.zYeɧNYMƏίȥ0.~v*Bj5ru{%ePU֫*!\5\5*ijz^?OvR b୆C$9@%^ќOUrЫSߛ |gJErruc| j!itQuk6!i>,lZ][4*.PήS !gZCkGa|@2?x3'raHT̮:tJPl`%٭޺o0_F >ټ]JMC뫂mreLj& D 9&c 후Z183s (<^s^.t!WH|Mb$dՋj/: skx6 M('Rf֟n4ZmbIAx窟 i'Z͌aG^dpfgXX)2ʂ Z&GDT|њP_I4@aK@̩]E:q+5nƛ#ʘ~ډ9>a(< |-YweV(L02g}B^.2e4`ĔʸB.ȥ.!`3%Ϫ2ȴGo&vחz6ha隸D!v͓'' s_nmIpj2'5@U{xP)00(р`Arꎗ(ӃL+tR)$%<ּ0qrBLktHς"2 mM֞緉 MwWlhz$kwtc${D%ARYF]両TWwF24&a`~"c0 vv~_ 2E؋)8ZR/bxvaj&!Iu*ǡ ?1xE-\^h~vCBZh=d;<,mrݕ ü!0L .JNL拦sF 52ڋD0ޏ…% }'s F \jnF'SX7FawY Mk\ZxWĸмQ,-pXd[o5H0kOG޳kQ-M k n~q 䳠Yݏz3SeJCmE#}mZINNamu0l 4@ˠf=ITrDVcmGJȩ; D2 Aխj=qߒ` EQj[9\ZiN(]H{F=իGx$EjѲ*9|\ :/Xl&)Cse*;D'O{t's!pB^i4 ԽPjGVx1'K߾.rщE赎6%?IrGNGHaxh38rLfYUċ-dGVEWTAh(TJykqL%H?LRmYI<бt߫#Hxyg!^4;  U{QP7D^#Z!g\Fceks >ku0Gh1;Ct˒(lj&̶<~61<t%ۉ+h]!G[o ;(H-.<2l"W ۦ-'\m!B#x|\섅~ :ji:Y]^T |<ҙ NMOKT2*.ao6u]Ff=& oBv?٦5rFw"Q,z"lRqwja$9%cD5C'2,kg-l/d?XGi 7 Oxc ODֶNoQh(4aFaTSP֨W24,(5EfDC@+0pLo?; Cx{ro 0S|J0;B(lA Z^9ޜWrw:gYU8hl]TQG~6֓Ydi`j~˴޺fRpTG?^, ώ{rΚN\9j?Ē;)ʝ80Fj~6&mfXGm+8if:y%L35?9Gs/(tUNb2%/BJ0,l e4Pkԑ}ZɡCOhDDTםz9'/;13H͋}oba\ =+|BѤX`2#?3Aq/_V?ȣDqm0~6€?/#9ΎNC% lͲ"T7=0Tb\;-!~&dKϱ=33>l z-|q/Fߔ0!Qv+:d%@c.Q'gePm_d0X%r:>FDD>$ӫXygg"fhۂƤ:[eLO.qL*AgH#6kz|1Lչss؉/,1myXdNˢeʠ2 ^ {A,m2KbddbLn ]^y)dM;U+| W%VffgW[X^FQĵB@4=bIնsS(y^w--t$كG0ӹ*4K ۻvB) 8䘃}PvRR7J54F( Bۥ3JɒɆ̩ Z3&-̄sc!]F^BgpucPUwD׻fqYԳW =q/K~a!ˏuj B0%Rސ 8x\#łf.{غ^=c:}f5 Kk __<$)h8U&JH<.M>P1zXP)j^xLlCb-Wr:=NdI~;rإ$sh,GSM|t< 1Dݴ&Ʊi+Z^bN43%+#oLX.c?~-op $יִ]4==އ4̨t!Ik*mzjd'"R]2 \ 6HM'KuayuesWb ܻsth7M94eE7 #K%^N%iL֞_Xr#Qbxyןd$ 4p E H 87-Ft v"ǒ}sZҚcLʞ*K9L @:g(rT(f9(ow3CUH >ͦSo|P _X9A픥.k]*\: D[WqN}5{T1o'A*r~qs!*CGAqU?!<|Ɓ7leT`am*@ʿA6drD` Yz_YZB%1< 6hWjdŧ{ Knr'+q/s7_sŚ>Z6Y޻@KhmMZZ>yKZP.𓰓(!.z’}9.HZ>/Q`gt*2V.˥q{IgV8'fQM-7,*<<);y<&XL67:nbMc;2'K$DbϤ`1b( K8c S3GR3(wB 64mI!-\搶 ӶmЩJpT&gw= U^@iPv %ҙot+ѧfh֜c1}cCfV*186 ӫd5fh= p`7>ʒ؋QU3m v#-ܨosXk" &065$ Hin-6׎*0zsTrdzCO<4ά(+3j gx_MF@_VU͖_.̹4*% 5W>fqy{v`9B" `?õzr~d?yb u5tI5VPwx&eYg6"3RJ'`G+,e; q➬ :GgBx,xkTs+;bxtǤ5_8X V&؍) Ч!.O X¾vf)B k;*RwQN_O|D*Y$&aʒ%*~6iҧ օCF.`ȌIVD~>d2W!et%kI3x:9mv\@|~0:0e-Nnðu *L/ʧDmy6ؾpФUtev4#9F_}ck6ʴ$#ʗ__( 'U/Ǧ8WU4' (1QukF/$ 3Tg ?>{6Q&EQZnG8TCQKrb\&-Y2b$zv J_0GuBdBܿQ"V4cqBq8G'C/WU6I1QMz|97FY"#lX|UaY_DkwWkiA3.ujHW\JPq;x΍ԃy𥢕E+"4x 4rj숳.5N'c͚(M'$+C­rrDۯ {*O}(Wt R c,ţL?cQM[4XsMpm)*#1% FǍg^e.#qɐNlHȮ'D]CƳfrJ3O-v15A`4Sa4kn0^xԼ}'ж^[R[X.b[9GdV[w3@ۘﳻۻ\4n &#C y0ngz-zO3'G0U[R;lT zpRsbp>Ta~5@ձLŒnĻ ?jb@{=Y,x'djͭ$!Q^s r1f;'%)y8ZO Vw2(U~6՚ eQ}ib֖ģƧ?sG!=K;;=}Ƙ)Blε@d׌$ :.#*w?X90େ5D9z䡮x ]?8ΰBJ8'H k$ a9c_‰4JMiR$HYcF-<GnrqVyG g`OFg HX`5~+[eoT *H'Jef7 CT7&N1,mL|t?/ov#}qM BԪ!tQ̏'2YxYpsħ2],ݻ;qe<ޢ#k,:'I%/3x{gJj7YSp#Xf(!|- /X* j4Rŷ- /GhE/"92vd)B^b|*R` cy :V~B:~ 03)m~-Pe-)eBa2,*[9F92. ޑC|QKl=?oG>|YA'X\2VIDqZqO Ր~e!5I"7uKTS:?Kl&M4S/oOa?54t?V~hZLx⢃ZR}؝)2XΗ^^.lHTKN}tqM(BbMfh|,U:|qfn M$hq;A~ٰ6Awch:yT+Oh}=!% ;v+Tך(!ߒJS1.v <,q D$w?߁ wWA0)]jA&Gd򊔰ݨRAt"Efc?;8iY<᭚sEZ /Vjg4Fm&`rC9㱝< hI`_x\CJ/ڷbO:pEeyv D43ZJy9riʻxXpC)mW*R #_h$zF&J0,}"9;L0N#~9>T"~K~UExbDˁݙ@tn+BL9g?UuxO6%Ч4#QqTBO ;@@)H»b(C.6Y{T`>ߦeU[k"o v&e=Ia-돤3%NpGu"~]dMhċ &b]&Ce'* .9g/)9J Lsv/z2Wǂ Tqh{ )G@p_͗& H䐌T:b& K1=R*jI\CsC62mqk3P F[ D-gF~FPy$GY`ݻC(ْ˻r~Hfɐ `XJC9v'j{.^T/q<}Y%G̙3jfa{BX9BO ÊL< &*Gv־Ua7@(řH˓W;#?ǘVՀ*cRm ǃ.tGPez<*OWpeG7KO`hlz*tYLA5ίX{d#;f7r-x^&Q)簴=ƲDI䯺̀CU\-;cL53c]0t.Ȼ+:ju<lIp PSn„_q48ٯ#1&" aS_mMsh,:7"@jw@c̍j~kD-7^k'GF) p7+Λٓ} @s(Ae '×`B+{q%#Rqii 1u/4pU$RSO9nuvSF3O+%r:t"x1͔UOޡN {Eb¨6 DXY:4iAfi:tZx/i_ <.Lf.eA%.DN+s ^em/1n5 c7) R9rPsGaH2Q &*"/ ooD|Vp=aW{%YvDd,Yk&UBjDke 6bUF_o@p*ܚrq+L%*a\Dzgm+TM(ł$ uȓ@qXQaǀ4oa?Cku휾] av{t#&Z|*1(XKav$H ՜0kz)UIͳog0JЄ)]wo_ >8gZr 8o*R^1ڦU>!jƯ8@Y7I`Š9^JEE%~ :-J%odY^/u]gVf&ݲfRnl XQv̻Wp#4s-ElA>ڄ6] 552#U|&3$l%,c >2gZhfY}at,^exLQyb3}2;fg!69BgƆAHWbM~P]L=^nDf.mu,U$z)TjLM劆TJh[f繬8L5a_|Z!B` x -δE$& ABK\yO'B"t=,.[p.xul2RXP:T;vD\+OP?AF mY`Z̐F\^LqVWX   4pjSIyܖ7ңa`ɢ4K(:P|cG9>Ӡvc>+LU]=A*dpC 79Ag陣Yѕў58s'|^v(~cmRmpjbVQ)Yq>AS(Qɢ0\tߤAU&-p<`t6:1D+2 r'QJPN u8]gݢ,0[B- ȉs8)q iMqE>:iV $WIؠFfo`<Dvw's:?&p $iDr0;U] ~Y𢓬? p2[(_N|Fi8.UǕ(v/"^vq3xO5>|="OEOb!"Ys~//me=7xMH]IQKʧD8U-M@tt[9ʔ b 9ce.R4h"btqK (,`ΈW\ƚr$r=I::WxTJ~mKS;sZ-C9X f`P7n>Tqn0[?wB?1! w&U~#0NHL<=BäC~JM)!j(L}e7xZob[LDrg=ܞ0y)ڍHq/Cm?FeIMT.YE8Y@: jMRǥ${#c)e⣇uFUl=!\h.Ϳl.ckQN2fC 4i\ K??5KseK\/b- 5O<]r+ }S'٦G d$B(d͏$17OXpDULr)\BV#`\ =.>VnvQ‚v, E>.hMq(LJ& >xv7觱"#E{$I3QTsk?r^c>wKs~Km4I# !S=٦,04iGђ\~M =u tw1gV JGmL%M̯_'<,\u$t #kf-%_͒D0|M:|d>'! 0o$}zjP\ջn;&jϗ@)WJPՌ$h0lφ!v{gxۮs#U zWWkXk|KX-f'RGuN.Sem nBnf%Cbz+]_Gîހs`قajFq6!ӁLYû&P N JNωY3} */M+irɗZ`7EK?妯`BF\,"?Nbk4$sq▇'qذBA391'Ztgʠn  F;{TT(gk}U)OT ОQޭáKe6KFp֡.\UE&&e \_[s s2& Ŕ秮TX'+] _CU ŝF/ F6tjō;G0ӦT &c Cȍ>,7CWTA1q٫»sՋ=^|QWLŦϖzWA?w]sүb툵Ȑ b LaTb8 LexjFl~jDZ\AIц6O9þO/;%z LuUᯃߢyV/eKلI[(kטBSorhP!M6"p:x6l^ {-Z%pw|6lmkh4Qx" v3/spiH伿%%NY⃭x_>qJA5Resi@xsϣdC޺.= +ұV_!H>1\΃ԥ,SE!>荜R|2;@i ?\ièwgꔃ4t kl>J7US8ST%jB 3Z@N6*IMʣtH"fP IΉ=nnWRch<=g16WF? .&5?ƐtNy9 ƕJGf2 ;qlON+) B] z8H]ya,n% )C3;wnW`uw|XN3 hvrXb45UۜldO=\z%Nkב./)U^A<{,në~,0D"Ը9SGk([S`LƮZZ%\9>_ܮ0u'^@=ԭ_޻[Z^l+We$2jCBȟŸ(\WP:קv5v+)wu 3F:vnBq7R*+R)K"*i7 7. @%0eHHvL?=(`Q8CDtB{ >`r+8_OJ Ma2 Xڢ;KJ旪'|TrzF@::HQ#ϾTȒZwqiuuR4>u>A;Ͼ > k]Z_<\+F-6S,+1V@3diPg&բldkN̤_ g 0Sڶ; F /A*ꋲ\ѫb6>5hi#&x Ynlb(uLN7"SCL[x/MO~ 8Hj15cpPKDHBw # q$쿇*@R@B)TbOB^ձW4\B>Pe\šdUÐ-a}<jJ7r]Y]R#HEϋOu rBiO.NF1$g|L|\l粆HlDX`qDU' Y96HOoTOg^?8=HFՕG7>f:Rd%^FUo:(sb(O1YH-@Np]k*k8*" dj}Ev7#aPho9%Hw 'i.m='wk Aqٯ?C5(]rU$/;p OK;l(Sp~>O߇4)\Zu0IMz4{)$ wT vLuٞl_c8gnf> ns!,xF=nH tâOWw: |e5<[~q?A,<,/xJn+VXӃl}aOއ yYƅSn~#JUBrpu%I:j=-?BYjO/8ӭu+LpWk!kLEp`=(&W~"\ * oob!'<&MFfᖼ:0B Gd;fDmɈegLq ~syn&uJ $|!h4ڋ<2Yr$$f"0hmf٬%$7E8rDUjb S ydˆakVTi=r2e0ZնX3HR`e Dԓd" EiJ]269/K-:NrM;,=pc\!0;`(λ%j9!/ǻj|eoA#$|$Gs.;\S%" 'LtnlzOk~`90`K ƙ-4E#|?U6N W(iBi%>+@O b[r;cB POedOh-jƘsz.Rmn-b*8z06::&r<=tH[һ=JI~㱤`ilPbq5(lXv8>ká xk281|"Nrӎ ߬b7j;<)=Uۿo;k PGӤe<btHm.dufve (`?}1Ii!>EAh{͟k~o<` onƉ{5-v*$4MqruKP0_{YU'{04ɡ^[o!.$VDwz\ ԏ"DؕOhƲ6wDm.[ v_HXLwC֘Zu. wl)' * j9s1˲vbmqFYwZr{c?k׉,غ w`0BiVS*CͶr|:NlkbdEi(g⎼㈭Ys7Ϻ́Dyq" sO: gf^q 2*_ȸwR?C[bMH}x?&<25GE*D)~Sj}7^ϞJ|Œg"$,o1ckE t.vZy?߉ fQ+(eix &w&M߷:KZaK8My2n%6X-V6&675/|O G:'9S&!XT)dE{HwwДzc;,?ᏽnFRg:;vQeeU B' e2ogZHuK?*SJ S!<T8o[Өa*Gso232n3o7%zXZ ?Ы~8E+ #}3k !{e黓'F23ZC?2>tD4 ++B|./Tٯ%~VTѷu8tQZ~[ǧw"&la@V C8,zNM$[$`t#}j,kƴxt?vۗh}ZlrQ"8z?oś'bZ%H5%+!@1jZ ! :/ȑ&*b&SS[OvX2;BqO8Y ѡ `syߗ &S$anڒ~(y_/(8B됣mu؞]Bu.nWCL}>kcKT$ZѦ&9|^wj( Jq^n5kM5.ټb+W7eD'bOMyQ?Ȝ=M[_t3C9qOLZA#0kkuRqa&ʻОIwcd +OYXe7WU7t+4Ҁ)Fe #=q[A >&ȼԦ vFC͉uv+D{f&3f{8z'kqT#?B+4}hYA5epeP Eˀv(Ob&gI~pCnzWݕMg"f0\VCD n2gQzH>lw:8rSˤvUǔtˬI#^f˛z#FĩbGnۏۃKeSz9Iݢ&:Qgr(O:ܽJ>0L2.;D<6_u |/gvjP~&$W[ r_Y}% ~*4}3khsf!>u󂎑ca.B|;-X3GCv>ߗ& LHKi 2z@> Yi`2a*pb[;qିrT|K[|EES֠<1זLJƋKbה3JTM?/8!/C<%%wSٰ ohO Κ RU%pE P [>P~RAA2]1C<8 &i/K?;؈G̸|IZM<Y D>|Uf?9g sW`Bؐp|J- \ qu>n$OVVVsT$ܞ`fBGقe6k*@1' +\yW Cm] sWj/3Gh;;$Bv(N8wB2nk7AX߶ n>Anqa`JTo ɟꚎ:Iʭ5m-QQhsyvOBJ 3y)qݴ$0^BSU= H&ٴuؘjpr~԰LCK&A :@3fľv}Fz@`(ƤGV#43aXnS:9wd%AIv$T3 *0vvVP .;W7N822Ž|$އor4sU"9î>Nnw9@Қ@& Ցm,fnI:Ϣ>Q]NYCf6qMiu-}eAyA ' XXE]xw@| ( =&u܋F4@Kw} DY{-4/TX XueE5+{|痪Zh7Ԋ$\*-Mx4!RѶ\dA2o[3sٓIx Ÿ8HI??6ǝ8J2AB܏RtB2NMD> (i0:k݊5UfduEv83cIGK:@8pdW! SzH0`]fNt)Jm5v \I`EZb)甝΀L:|ŀ>5$貅*\JNI'@VVtR\J!A#VG3n6{̂4(ZpkAgFY HA]LwbG{("26po>6+i2[F:"4vӶw 8~J)BeN5>\eK{x.3!}>H H ⹟,6q)ѰnËxNF~^ps ϠNjBBoRt=d$ k~D?6,c/ Ezֆj3@s:컆krxFlnb>JϱZ790W6<_4dQ=WQN'*ηz2W c3m]ZXYk3؊kA?KCܼŎRQibz;Xh'6N-v0a] =_]n&Hd#gT8 ^fM l ZضJ LNyX1ä&o'hlɹ_kU*mctt;[]aNk hS`hϴ7NՒxC)쾙9lo>? {PGBu}.𝇱>?}u\*$ns\2@J$}?LӦ&Zc+DTnͱ2.n\[~ugxwEGIٙs +3.'J&D?gg!52-Gbp 6?/ShJr2yw7礹śJR:C*Na'ͿpHDO&86>w*$UTt6:J@f}(U%Ln 3RKkP1'; .FoL5Rll~LY̘#'W{݁֟[E4|'8]V|;6n2,a)4(LCM52)aX ; p^LtF1.ٱ7&NNv18R'4kܡ"¤!:hysC⎒{ `%(VKγjfȳN SPr}O #:jB*U2%ypKj4>=9=<@igsG:ڒA+8jc]!YGL</9I!J#OV鴛zۥ?`d"<;sjpkxXte5= &++vq5Dy ' Z^}P` @ߔ fNw٦%8](]2;wP3ʾ "0r C 96]xD|H_cf秽$3|hg[&!v@=aUbnbH>"%c`03;c/qn{?(WzfLvZeUT#̞x_yx@HxҰbS)GViS}Ai)fYuVԟO*6frrky2U1m=SUQj6!LĠ@[ -˷%-R/!ktC+R-QO*;AwT+2 $߈j`1z}Zݲk[%CQ{u{! aD %2˔>qX41!@VlzCi*;c d0&W[O^tL#TiL;- ΅;p>17zo5$=׾Tw`xK|؇Kd~5&1o-.Ll qؗNC d^]AOoF| gyH 'ԳaV 7FjaY|ZAbWGqt6W׭UR k'{!muDֶ)Tpk^҄JGn/LE'k{k k GݝL=AN@K'fGF_~]M5aD:H d#z LVA!Pk^*j8E$hkzk*pz=tޣQGߒ6^ifOpYW(1\6yN*! ,8auYcJ5d*nNTbhN^+> 1B⪺}*2UR^n%qDu|}f qEϘ̮N! BRo7x5H\ c4SVNDys9N`嶩DoXeg6Ӹ$kĝPJoęO7mwՖ&m*G2M@5OVK2ɭaMs ,>*Ճt;VP+5VWw{t{\-Djsh lN&ީrlwS&nԫs>]t@&Y"v; Gy%{Z|5~=%r-r.D^R/^„Y1Az!0sɁ1{v6ޝgx-J}y8mJsf,>Iʽ=nZN skHM]\ZB1oz->"X|WqEGוVgn5`d۱IG2 f~-TDs~}^$᠈J_J5D$WN^U7epV)m0@TOq*&/=\%YHX#B$aU;oOYyA֣koY!!+C̉RuBR,W܌1BG72`GKYnHjgV:VHnw%dF.S[ow6rP}#W1wmrx>!P(,t¡?VɈ6;gcL{}8A~NEiyqVZg80HCu}XXFW]2IP7`]mC{=qcB2C09c#8n 7l8}5=r%.->/HGMLw77ó ܟGnb>Wfkٟ/QKß%yqH|* }|5h.`:\bJH/NB: љ` $ _4'l:c,pĢYLCZ.-{.(|]  //>-Łnz@b!ID1{TzaubgQbb]]JeQ$=..IU`uHnΪd.w/t6lx{\Cb)-*. QG-ԍI Unv}r"5 ґ}ZPrAF1*V F dP$,=4r!~˜K>paKSx^W!)ê[JRV4DF+G{=ZLo  FMp'_.ZnaR5reaPޭ`䐂C/H\}SΪxPAזQpƒw]c!&f*ׁmSW*{9|wP$<\yXH>&{>(^t_ٶx]J*|MIR#w(?v(NЊ&-ĩcn!kU?r` 9=v|n/{HH>?ӕgp|7ԫxRGºp:'+'X e)GOr .uP.avlA_ECU{;h͉+JבzTR[zCB%}#f.5CE,1E;DS۸\Xm H?409$FS/7ODW "@9P"/j{a4o=R^Q$H䀇|(\kw LԞJȄ)|:>2aN},ڕ$Ւx p!ŨS @C%hSgDRw䵦fb湎.H:(傛}pC݅#2S-Q;xTfR&ʆsaWQsy+I&SrN oZ|&Sp}G%]wNg8z?'X^@@od0aF&haL!zs(0$G% 䓿e@^qJƣ0Q4-4B6y"XZ>b-'uK'N/RKjAiuP{D7mh>AG# KkɉNﲤtpwW[R P7a Q'rX6;(k&D5/d9rz챸I hv% ~f5w!X 򄎬p q?c@Q3ۻ7F c;r/9 n@Fom2>nG_sNwy"֚ٸ<PߦlS,5@C,WPzfHtLXWf#]ҁ 9`0N 0M#H"fIggA5bcƒ }"=ais6dF\U^izx,Z RnNF5?:1F, oQ?k1p}qȥbH{I]F#doyeZ栶0AuGn[߸.Xk]GPKYڌ^0/i jd/&wQd#p"q hb4qz-\vP| &J_/{`+}ɦ,go5dE=9K7t+eY7L~ 8 dH}EFXR׍Ƃ 7#xW{RsTo hj _t''jHO tJ4|ŋkR Gx [YO-X&-HQC.ȗ_GKc.FS)N82RQ%%na ~$nd8u<m8M<_{4\jh1=Ȩ@nž hpGDu~9/E]^ZP?6թpIق&lNNs6y{h44,Sy]h` ia_<B4'lنWU{k! [`D-iH sڛI]XRwYYcDRxP*YIf|f'JrC.(LwT~/ ufLZPk#wgX.1ݷ}%!q%w/jRd{+m>]~*.dԜgk03Fdȡ&G& [xDZ*c$7sj"RZPΨƎUFe #vAKe?b*z}D%!sWf+zlM ( DΛM"XJarr/‡ a4-sk'Kj&vQͪs!Y$?9]殞4R+txm8'Yv۷d }`þ`/z_T^FVuM@2(rqtx NG%/b[.l ΍u3[ &  e®6\:D$KY ,qR5߮dVⴁi GY#4 Ŋr @p.N_b%2EXP= L;h`¬YP1D $F?5'q|!q_J9'/8nֵ͊6CգvMxjC5"*v}1,E*ȯc@ lr)sï^7?#-6{&i$668W!ݓ;ZCMmTS=ծ E:PH:_f0ˊlQ0;RQ,s :ۗ6 ٿ Mk?C+s*c+3vQǛ?-vWCi 4?V0V2 ws>WCb'$vWdOA/]W6 D[CZj fRq>)V(6Xi8pzYZ FId% ֑p%!Xfʐj8Ke^t!w.a#uƩ)VeL[AVlIFjKQupASo'(9!H#o< ?xv}CƙF[R6 G ~Dr2CkG:{ OLz\xLr܁ei2$&hz;AqN%:ʀ=eəsqMmW 9}`,kſ?#×wL )N)4%o°`ڂ5r vT10f J171cl[ Q,. .<Lg0 FgWOG=1?a&-V6_}1; z][Z{ӢbXJGqi>W(2&cHJ:YԱ%!Lb31azKʌ,Qv #uW IBazY2 4Œ=t%!Q hgvp"*3xX ?65Q/ǐP:besLjTQ3J#\ԌWYd&30^Y{1{ 8:woCiGoؑ+[(+v1>G~vJpJIP~"V P"!%;i׆yU;">*v&Q(;] o1"Jeqp[WI Ll铔 J%T8?nPJ&@aO kt]hH49pvԂ1֊ ^Ax1/f(UE &R_'=Em}= O9Jf9*Ō[.x)8_cɟbPEm09,%$.`T-|,h XyfudP 6*p^/>;#M)\lY@($[r?GXYӵ kf.J'$I[6Mj%@ 9򺳫uAϙږG- iQC5U# (9+ʓfԖO >Rvا߁Z#ш =sا\9}H"Ư_ȕtP9NN>4@25֦ *Tצ'PGi̎CO+J-dmSmhfLdl7 zj)˰v" UBwR $yy>}݆O˒}"cMf9_| (P;yGL7l uWmCk{u#vs~)sxk>%`UK-̂0gLB<\bV' Uʾ*?!y֞\5 e~H%&)}>y,I}*P5JwAXD q@N'&\ÈX.mQPe%tⶌuYJq/44UT46gAY iB-&}YXkקVm}0]>qsGΧw~4bQFˬ_GzțUTHLac3ݎ9pIo1E(R2y#42CΑ0ZC91 E H8sIf6HM500m9-%lIKQo}䍟DšM8lW7!گ4WCE ؉n| %(7eUeP>$ h`%d:G%VdҗO{iؗeL^1b@KPJ^\p`W uv&780Wp 5;( }.)އIzam[$z`%H⟡ih_L] '̛.ljXMnIқtg *ubM)A-{bDaKLenF!8T+GEIB~bOͦ~]Lpa>7/fWNc#hZLÇod-O^kgpxG< }&%iK8̴Sy':{%ӌ'"F39.A/A+X+,1(:&pB,FV(~MmC/Fq6OΌw4g1 sJ'aaJ(>0]gܘN 8|ޛVeoLJU TK\hA!ee˷YX]2j$$DJ:k _ǣ5n:ᘁwG\ F[C8TQdD(,gv<3^ `떳Y;םg{9CyrsL)PaB_ox5#r*b^Sx*Dx#ieo')dWj'҆>e|\> ,S^4YUD#gW,Ǒ ;ҎU DITtHе&w{a/`6Is/цNzBs@E1iS bwiEe(~(r^e)FN뀱,RYDC`_@ oL-Ѕ^\2'$ J3l'FR ŇЮzJz6kgLpU^g^ZI1D\~20.QGYP^#wT\D>_ 4|NCE:m ڽt8\c[[{$?ޔ2%Y" X_`81ajdp̝#.s.Z)En2/-N@a? RSǿ9Ν$q$INC:4V$>})_9tRމۯ+\wYB{ eaLJ8(z ֠(Bt6_JbEsNR2*& lRXۦ&Z]bժI s SE(nm4 `_Rv#,敺VQMCr7-|b$j (_ٌYJ>5^ߥa:-D=1a]J }݉d1"J*롇<1dR{Be3 u.PxFxBn>xTܮVYlBO=L iU9jѢT_-<ᎁsËpDl(9x$AvImPwNlyk{9E·ƹ4"+a vrR6OE>;f:i6J(Ǿp_H]AL6 jzmU]v4[t&T2>n8u$$:Yv趢m]1e> ¯Ev;>Gyes|IpkRŒD/ڳy>s^N D1,S^%*pX+n)@F0?ANJ6px-$yOJ5lDzš?B@b]nzIU嶌2h\24ӺNI*V([ 99F^8+$Xl~#'HEK4Yj9GX,V"TΈ,6w~=sAo}p nd50C0#KdԨ;8HG\u^`3wr޻w,5OA&f`>S㹧xKJdf8O` }GzmH#=WWf .A/l \[S}o ]_?hk)[SnsHVUo?nGb4Q./9Dxα_akr)'m^[eDeBn:)&t("V}W?]o W1ߑ-Bx'+2) ZNR{7PqI.˝-ϲĝ4`~t,ٸalUIk[`CE6Asc$8GOw; ނluٵ|Gع6y+Y-nG# `kRAx#LV!ᠭNigiuYPgCNPLAeNyXـ៚Qf;;,z!)bMFeźEL!J@ϊb0wjbt},-ǂ<|O~˳.()hi uaJ^r5(nEKKˮ8} ɭݳ7ffcV+|+8 0N8&e8RC M)i#"IM=FzORp R(V;i4Yy ˿c?ܑwVޝ=&`Y zN!Ò$m^sd:gBHp E5LxXe]Ӣ.tf%ɟ2!Чft\CVb@B(4Ujߪ,'WtW^D#Tf^ubysM8PY򝇔M>wVY8'e ׺m1݂?)7Ā4[.g?( Jt0p%ǝU5-M x& jFq$-^He^8QE 8i݆ױAs[$)rwɖJ1]qFVqSV5R?w5k}#_m!a1 ' s7+;S,S2pU8T*{N6Te.߈pq YRd4w)]@+FԳ[ n/ot~kPYޠ>it|O]! c f Z5q*~a/'rYjfUs()0߭OnC̩t >k>hҕq14cw %8K jdđr ;lVv#X[t-. Mn͏XӚȦ#!D;\&Eeҕ ˁB~&i҉i\&:)<{[.B%Qל( ! ʵ=\3i}u]4s1nDљCkalh!z a&-a/ {U][vwA r?@_Whyŋ@gxӁW'6g.,V:7[X/[LAҦ'}l  PP|ٲBHG #;Ba!e:r 7 1.ZITf5wyVJHK]] ћGd8- [V=PCM%w-A1AԽ sRO'MR/HQ5rЙ C'9(j˳>sY|N~!⍣"D\>}_oIɲL% Z!1vy4|+?F"Bɒ@F1b"c^՚SZϤ[n}L|-6CTIީr^8B_o~ ?2ݟZ#c2tq '&%&7&1Tfz99]3Hb6m9~AC8 UQWŷC3s^xa΃&@ –Rɡ)_)wU V^V~͉ [}۝~F-B%UݨsaG06-?\lIwviFj7u^'[?)YB|h ͅ2(o1I fԪV>kV%"XlVa3F8;l)e{sݷ x趏Ō#jYX=y#$_2=V)1 FL.ƛiNUd0lTLT m0P&Ωʭ92#{.a]P@q+Dyuoli)SP xЇ5瀵iֶ|_LQzdx9|k|& Hx-D.g-wChJ)2Jǧ:~Me£/:-9 ] e{ز%(> Gq?Mb פ}//S3 VL ש>/~I4 1XG4f翆ޕҝ]S:E<':(|,9J>0̬z/8{3sS@+qwńęf<Κ ]Ri/*}6Ӏn_(haObWkp'5BYBʌm#$ @;7(?6Tc72q]:xY-n}?`Y˪ `FHk&ș KjxH} uw-_<_]F2ę x/:;^?tkGt%F#_hg Qc 4sV˒ ]t[6P")-7hCuP!~/MT`P0=x@/&^y옃M-jZ v _hyI!*RZ/P|WgŕII.|#nJ~%J9 (AE4o@V`2E|9D fZD:'4J h'q)Q[ۋTaboi lJKЊc($༲ j\'w](veyYx3< =E%j%;RYT%9vT)DDxiB{Ssԇ|Naϕ :-^ #% 吨~Mi8 $M{=1x>@-6]aV;Ƥ:(1KJD9Y %MKyن5б~m3LBw_; /D.8pP`{l7 v6mGdFLt:=I$4s ogΗ "e_M-{㋋*E9qW SϢ:$d'ݻRɆ.U<,"(k\jbAxٷ_6乯ٶ_I>o5V!}&GPDy tN>7l9.>\pzN nFD)^IC54{$-Pi^k*o%P|8{QV?1 EcI`1?(o[yykCEdU~;إx@lU@oξ oC4Pt@UVj $Xc~nUẐXqjJC));WXGkkWal@yy3Hooִ(fN2%B{YnFUƔd#C'}FF߯trI%(3i})ʓS'E..yBkm}Rjk_0:M*0Mkѿ\QRj%OzPMq1úP7\Y2Zɼ'CDԣWv1ZfR2eBLu=5o|xK3@fJPۙgNZ\pqb x*c!-!GjGSi=ȝ$P6j}?UݓMuEQI(F fkq+B}ÞVA4ˌ8R<UO qqvvFA%pgd]R+JknHqmX4nTS;Z %0f&*ϻh;he^¤-$*oRd}3.q"\)xU}Q= }(.3KOH=0erJaHgMc}%_B`/`vYϼrU!]|*X^:ScĴ^KTB<²aB$XxV!lz?XN<@>)%V|Rnm7i@T4Q 6ynGח+@}9ǂdK0|%Ӿmx j,&DQ r'4 ʂ@,=?"j‘`o=Okǝ-V1Vy'>sJZ+h\nDE pr }i ˢ/U 188FYyHI?]:htD3E?duJڐ/ Kʙ.o ZBf566h{U+OAz֐w`S~uE "|拦) B5\ 8H-B E#\؅tva< [;fJ)\>#&{5vw1IN2}{Q2Ӷh}*͛yXK%&oQ -&7_ #UI>$n`vhhB^tXȢ8Y+5RetU>"d"So1?xj%]ux[5"^j}k7nZ[ mщ)狦6.9|10MzIinKSn3A̠C|Eu-gؽR GNLp_㥗rN> N. Y<Ș>T6Oi-T0=&n1<#~, C> 3}W@֙38 L`ud'OF/=wZL+ԕij?O.RLJ]iH>x:Q޺jM9SA>uUױAV$8&ڠ%ۦ}(G m8<;L>,b۔g&_S͙p܋5iY3}sl M=݋ۣ&Ԑ@Oz& Ť* IHy 95,Y7%3Q?c\A* ӋN?ZvwSz=Kv٫k4fm x4M9lhEd%#_\W+7BpG3fU},~pupZqq?7Ǒ~p 5'p1%pne?mmEjEm]NA|1c?:%97w}Z23۾0x'X T-& D~zPK,;G{xxҸc芋0+{(CXôz(O~]5QF#@TG7]ufͳFȕeL 1Lh.#q<Л[ Ҥ ViF4;>6%5d&Q%L/Ԫ~kSN?vJ# 8tvEpƚTBfҜ唏[ i[^ KpМP;HQ+Cڥ LJ|QgXDz8;{iSVkMPZ&`J Q3(nʫw|7 JvmĒeM4$*8 jQumɔ͢=ӱ&%3@OͭY|lH&Θb| 3oPg.p8 mևfM3x@2Do iP )w۵&)>S*%[RBw2Kt%NU {B4|85 rttwxRڗu˂",[dh% 1I7O3B0!vh=D 75#*ݏld#~aOY%xŦ7]ȓ+ uZahEk<%ɧŒ d[ppQ@`{uE} XddΝj 1;{m P, XOe-Kdm2ɢEZA"@}%\&xһ.^0)n-k@MlTaN {)Ti-U3&?T+бVLON#S?kMjPBco*"@t]QXv㨶LKҥYt63XYzPǝpɻzft= P DŠ- f[4q2@#+yEPtͫY:jy$Ursf/zS:KߍoG3pŪTfk^تuLx%%\涽xm4Wg]v$̡a틡F/,UKK,S8pn|UR[,n~x_4rDc7&3ljM.4'2y2:=q۸KL dٹ/Uj#jӥ;x\HWBF [ziqSްCѢ2bK ÄkY*Y [dh2 # [f"9EPϕɄԸzWu hܬ w}c X ,tu12]@`T;Xa orK3b k^?+ c- $K "ݡ:M8hrpJx&:$ ƻC ULZAh +^쏸 ucL\RƱE};>@> +hqWK]5TҜZasQ۪G}d3NKEt(&K/vdcSs$ B$V泛7qVu~}WzҽL W ri@2)*։zY,)_ް'!|}HRA  _Tz sR RҸl_?a_N  NHA$@G Qr DpjE6Je  d(};Mf!Di#pUG9]0KorxL+3Q&IIFTU!e)m:AaPl)\j*(f^ hG )׵@Ht\1yg]O?nJ ߝGB K\y^׳ ږ%\w϶X{67zȝjki[6^ZI0DOݥo_@YAx!&Dfrv?xlõqQ 1xk7q 9]LTj:4N‰s>rΒ'Ya:i5]l+tI5q}h됃&B+gbЉڨxGSsMJr,39`P4{fmU&2Yij!~st+y#'2gIJa'lR`.3ѐцK>{FAv1G"+YZ&~6@8~y:@ݳPd%ҡJ[ \>pMI! Ypi*\vO}Ð#s ҳJBaog]yoLTsͣ1nl< dDlmkT@I𩷳Cxמ:J`ԩ*,2BYy24+mR95H./0LF+o !FG}Rl187Ѹ+mcP}l=*y2 s6Ӓ Qao"i 2hp͒& /:>x_6]wz>KC̥"N9u絪)a'UjvtX9 Y4G~8<F+,g1v#[`w&[YjZfbsXgT95Q €v0z^)ƸSG%G۾DhaϟC-IaU< )t(*=+kr $p&,c& ȻsMY,'DϓW/𜠺 ޢg{ ?qD r\LTٵ?"* Gtm"'"?ueh/e yLǘq+:Hŕ"$Kg~l{ }NmP p~W.H!l~g{>V҅:)iatBIL2>Cq%||)EK!dC=m4l0Dy;wr\3j]H);uaK5u;KcojQ+Z59z9 |mfЇx4⎾˱h8Hm霞_H{py($gWF/$IKIʹrxsVk!&N `,MZ wjPz^@;̭GAGm!k7n4}kIQ#{(kB3"hEM In³v{G`#[j1HcBa*}1ܢ~pZQ"ud%'?1Kl I>"0-s3oeske΁zǩVqNalii4m7a^w^yS %Y8G/Mc}WbyEg I|FWNc,`6%h5MرƎVwAgP%>֒`,1w=4 yVci&5ć[{䦝"Cŵ?3?;R=0C-=G=pܫclNNAbnʳ…epo5ӋDm0[f8YN6^{ *gWN7/d"0ݩ:N.x笱'jutFȜ6J p'/pf*oVkzָEr$_zKk=ߏfFO3O/cFgǩ(g-]f[%Ju" 5,8/B+=VNٙ7H}LSL qBoV@*2C@-2'#ýP]r$QO_F;u-V _VANwH\a]wi ؿ}iUY ER/4-e CxMő|ȗAGFS4&ճzYTɹ#D߹Dohisd־hߩqQe\zWveon|!\ra=LN訜}~Ե$MGm' w2v*ZWvRpm^] oW.32Dsor afJ!YT˅%Do0CcE_5O߰M;s0Ev5A%y:pˑ"ҚTuCPɤQ(I{0;t&'] {Yí_àg =IduOh^ 61΀7$!^rV1: $ R_ny[ kU-Tx`*ꤥd:yGw@ư!,ۆ3B M)!2L>/);zg{֮!:32=֪.q`x~ٸZ[3;vtݡh}I~FbDaMȁL!^B|癷I izX|/3p vtLpf5㆞- mġrK$GǿEsmxMR+Y1>mBeoưSbbfm}8 |E>TAU2~[ #vǠH`tsl7O^Ti |ը/H,Z؂sGq9 rLϜd ]w&Pd(-{}][#YJq()Ӌwoj(2^⊡]1wSk>X@L=}/V^U*X,9kϢΚٔaʡI D m7Z.&C cROǥH:t0r6 䌰^M JUVdw˩L~lʓwHsC7?YbVۯ:Ha>ڢV00'e7(:-&WQ'WECŊP)D榵Y1kL>mwLR}G)(Y^3&hq FsŤ\ 1|wf Qy~ӠNv''ih"\A!%سGʀݞ1.S˜}K+rӄA_.0f2Ma=@>89s.O-}:êʹk 5 %]+_2pF50w[̀ E06) ![/1 =n+hV ւ+BSP;¶t,Kl9€?={,l֝p_cT@t= Jރd3ΐS^0Xʮ{O))$Bo#D?m$͖8%X_ 3OF5҃9`|0]%M6^Ίx+)"Uk ^0 ,)uWO*V AFW9~b[ebW&ȕ@!J١PO8V4r]U&lJ ¢Lyc.8&ub/JTbU%¿x#O#IF5BEVQ\w K+ˋY!nZhucfn:m|yKh(&9HwB|T(En2C N T hV VIa)T2,t|^ё0nN[$A &PͰjsYѻ8\b#P7`A1Oba>KWd"(Ie$?+HbNbY#i@[n^r5I(h:g 1A'tl9{@.x׌PsfV7Z"wC\nx3ŭ(nPQP(XIq C07Ŝ2Eδ c#~)5^ÃDtMz3'P (m$/(C9- _+ hYЂP٦N[ 9}Z-v]i%) +XaVf|=$3&WtT!IGgKCq3:0ďkREHNQZmWM|_מ@<%mhg+C{GkXKv6;tL_`M!ҳۈrw6}͜ar["Wl_;%;cGW ie<,c{WݭÓ@zɺ#Pz뒾Cu";i!=yTuEReI{7އ !"C9;pycltH֓HH(L RyB[^'U-I&y*`n(~huW4ܘV#TrWwuFm+z]Om(Da6:GiLWv$,U qF0\<2HE3+)$&< =ӕexP}q^ 2"lp}nGw|uL0CE߀O|7? 03(t8VH뿇Boh0M+78 l:@gßVNݮ@+l}$apK&`M|A31A hE@ZKH#SJUŋ$=6uP~Bf]oFox,ʑuXAa`C9EK̪fF 9e%),@HdDf\EdZ`=CKμrwH@fB0a!s2+pi+Ԝ5t;R@:Լ {eYH>s78_ڧ1hH;xg"\qˆt6^EܪsOFbvlP-u$#uL}2]a<S6@4wkу* ,MB:pdQYc4G*"r= X'_Rdg|cHJ$LBI,dd#Rx9WU㘛C6Ixl8pޮ$rKei5^dkk4USwwMՙvnX6ںz44|o*j_6xWJ: Aۜd,&=LIZ,cA|?ᩢV )0uY4Q.rA+nq&no8HLk$^#(z!\ctB\/[s%|’MvM^o2o-/';g"cS@ܓ^ջEL=lkbhb9pzu3wk85Z&ZyB1fUjMʀQVJ9)L tck~^I>sv*F>|g>*S MdNG/{ <`h3j?EIy@RS8*a~$%YRY7+lwS'X~]}\p:NLl*_[m6 BVRXQo-8fr]_0066]g[`a.aSm;UdUMr$$ l>k^ o^/Hi@K4s5T]r36Fghl?%;ދl Kx ~ϝMQ *( !̹'jL2.11is~&#; |@O.rCl1T~Rm4]:]Y$pM O&`*A b=VK}Ǡ0띰 lK  q:?]\QU` ,/saZx;VLo \ K-SGflr,),BPQťe@OzME TZ䗙Wxp'50dÁ@/PVy  ;y3GE$ckxJ/+DqjS+7|-f03;ui-ҧ|S/_"{vqBA1kkMP dc3P-c UsZs`iw[\? :/W^iNd{yboӾ[ò_%TaCh\0`YIv93<0{׸ U%'`~eV=A8w%3Ѻ#M<D܏.dñ R$8Zl"ylrpO.7'1?6,~ G,;=k^#+RBvw"mT֟(uOeiq~:>u`.''sZ!U>iJT & bמ:lPcF?'S/g ٞ޷1s{d5Mӿ~bҒfUeN N xck+ڀhfr 7q9xV$?&JunV tH`\tc06ic#~R 0tn'Ppew1wb-dCj1Xw L*%k; U<)ɸ77P#Uz_ixyu&*%znPXhA3\*~aa(R.! C]h.*YR_7~[{7=$MP#cCF6^h(}t )ɔQvP(<4.1ֽ h8]x4@w]\,4Ogj\A$!K_7,ΠD$m7.b.!;N :V3`~2^3h9 5;_ܳJr6@ cvu9 |!p36 VPF/Ph"p;"XZM}6!.heBn]rw)4C._Xgk'y.'(e~Y9$P41(F*XYޯO5_?p76k { E]N NgM`zN]K9*8WуGxe=np~ 'i~6:Q[JSNd;ӎu 5zK-yvH?bhTgW m3kT)G3{ƚ, 5.& +S\iB]ܝvl׾Mtx_}8,$*pcީvfU̗V~L!dg`K]ղ ][c賔?E[ioų ZE/c%$N9"Doy5C|,t$fqb}򙽃\͹1:-9YtCTkg==q?L"4c5z(ߡ{ 5uq-:XnA e6W5GoIdWyĥ>^ 5"umn{G1W.]CTKϥ1[g.I ,?a:`Epm+8!M-AӟzG`ůlPH-~>`A!!:QPu!2*[|N9&vPTF%@Z"cT>kI*o:0x5^ZRotnل4Sx3q[(u+2zc .9pkڈJ9u?+|첣G fd#G#. ͺ%(z«j),pq /PUl><v?u~EC.[3RIZ EpuvHt0 DA|pCcn:!st W˪Hܳ&Ygs9:$GaWcm^z7-uҜ^иO$c%]ʽPr!p3.\7jQp~mH/ o1JFZ}Rv90q<edvvTiy]u ,0@c:P*Ew̱ƒO] 2\ IW ꅂ MҸXhébPhq q\3KU:G9 ǰ{^# ÓfO3;Q0/@ _tTy (L ΍l+FGߠp#'`RGg{$]qʝ2EmMy$wj=%^}p<%^ f`(/$|w5{) 5Vx0f6 ?$ m\RJ^+ЄRs8gUgJdi]r+|3y\--L/lOX3f(g;˧yEL4c?ge,/wt]NU>wE4j4Ve0O$ԟf4:)@&%uz?{ܹDz%oD`r6ݔX;upA'G.z;&Pf 9˳4=v5^kޅt͹hLXD# xo_?3Cs>Gy6Ǻ/k$rŇ˾lK& AY}O惫/o=sggRW]tBe*Ce̤ $]aH̙}}e sFu̝*Q +֭uH>f6x@X*owPGM"Y}[ Gu1mNuU=CDq{ntTE際,54ń?+S zޢ]FZ55RǠ< C\yJ.T/&Ha ']qߒE*PsR{鉂0)/KzAj\>>4XGˉ"S$mC 4~j,UUDZLrt38\' ~gb?GcU׌{rwwҜlkQw@v5l痳 `[slZXX41;TQ ޣTߗ&!҇]֧qj v*Ȯ ʒ-N_bY`۬XJB(~,!Aiz! m׎aQ GAlm!M('f͢khz"| #!OW dp>6C|S;܇rOKy71@OM*6=3צDeA@(>F`ZZsk:P}xɾ2`3\ {VGQ澑N4iCj"9] QZ3kaTKKCxpx}*K PxRl/PA3ԘRӣ<3 QNL)׾lIKT M*N;/bR)%uJdm&ZV-AcȀ\O} F?WU6ab~ vo҆NЪ%(9 RHǗ %2љjYQyi~O(ɹX )%BVx .$єʐubթ2>lR( ֠3fdn=7nBc&'^4*[RbE1"լڕPnUҟ>o.̚/<tkwPͅ+Z?2928칡Bt nLoL=(>@ ?%W5R5oz~l.6" Wx'ǷnR 5c;gMc.$YIxTD@uc ['eR= CA Ej5JZ)mM4r{Mc)}c+ S$(C=^Qmb{fpsR В^]ղaӾ Mpn0Վܜ0(R߱!U_RV ԧK36+*]^rG^}pv%ji.jl e𨴧U?nA;!UT*QRoC_ "b |ᗗ9Ty~cCw+_dr 'ʁ,k!VrAZ~R7GQ,:t*!-(UvkVsk& 0CfzG`ڛb~Yw=1I4h7FjaS 4c`N(zξ7=4+\$YO0RJ95]4K[$Q"Y3=FuLrT'#c{zvIK@ouUu<롚Z])ީ}Ȓc7~i3&1ٺbJZ_o5ֶaʻpݰN[+h lZSM. z 8,d8# : 8Qn #x>H&{zoȐr6μ&i}!-6+{c$iO *8߅՝,\Lmuag{tUI>y1UM]iB|\iGYpñYo#-8!T41RkDW3o/C L|xL/ê-7v'[ȲTVݞD6_}>gI 7Iy{ZH ^%gcJL(fd|^F<,)E~Fb(U@S>;YU b<}0acK/籊KӚM>Ky㬮KuІW݉4U΅۶aa/ #dWrмo#46҈m_a`2r^~PT řRTGo|r|R FFN5*;tY=qQAרhƯO4sHJl=dd @os5Rt7SH@^޷c˭Aǽʀ*ܬ-c@r3pj,en5w箻iE'PR!vbeDOgΦ%cq쫣Œ(ڂd/ jG G9:C`Ec yy?D_mm2Qe;X4M&(3ϐ,3"Lfu?5M SӇ'6aiE:`^QbU2"3eig"O*RSD+X$?qEA\l,s$Y }\h$-9Gx:3GRp~lQ #׼O*$FB=%w f{_V@a+l JrLjYpG#b<%M#\Cɢ! /-b UQ3g.ZτRb٦: 7]7oJ Aྡ=oAԒ'd2\C!c+zIB_א-T\@l=J\ ryL6 BqM9FEnS*0=p %pDoBRxM;,P,,5@6u1~4qXBD|e9 ƠKbՁWD+ :Dzpγ=b n=4Ll+;dj``<x=Y,Mn(eV`+̥[LT&eL@+yo_ PoDk6bI@KZak$7V"cjf}"h5Nh!K$>̅ew;liAsCjk,67!9@J~OomᲜ$٢Cac8xlu!:F=W΄:fT4lN|^p5\>bcEKx弡 '|\=8򯨁jOpU=rW%u+HT"SNPB zuy-Nt\OOw[ @u٠cAw Eqal V. M~wt޾~y*+J}q;چ^ m[I.gG윑122W#Qcca6㇋zgwҮ}&&7פlHhE` NXo`̑wJ>ك{mdy=F}55O~wA,1:r7 /|Gt)4 6"'5)"SyW&Q A Cg2wS>Fy{:8 z l;u6; U`$(K+gS7w9x͡r=*ԎК&b-8'6&Bd5ۂhfdXE =8!-NDז)p5¯H19igk  ^R[+*th1@ -KO_+CUCSҿOhjt _ٖcTs`7@ p~&{>ܑVUit;RIV:nYp3*UhFH^zt-\SHLAVcrQHƈ\Xf6uR">*x!$ ӫwn5Tw5M|pouZS>eZpL D7)]ݛ]\7-7$-SH5cҁ7M,DK9 A3,GЊI"]g'oO;OfShPX1xuh$4ʔ d ,-IU $J13 uSxdIM[Tf %jץ;R9S; k&eH^! bP8ZJO +%HAwF|m^ll>CeJ;lM,3TC񣔇tg/0"xRF: /K5[pFg؞-u+ gMX1ڞ-Tx |a'^vi6ӎ pwy*W2W2]Pv#SItLR0;Ɛ">-ѩxܡ'n|rUk Zn ?34A^fY)CjTݹD M_nHc#!"V|$`]8% !mz6day.GYY;cWFޙږA'+B֐z2f/J e J_qIԤDxl|ɏ}Zqěꯏ{Oa{ ,K"{$ߺLoQe=158%~/L9I)3'G)r0NCdku 5͚ ju +bXw.6 KUT`(8|`1mAk[˺Z+H'{3t?)3/ na42&(>pJ.dYwEH diz 7^aVy9<'*ApPiɶ*("GL@k:M++WC?8R9x)aE{uz) 1J3/8@DGH90~9P1ιl.FWi:lHOEo%琝Žj?R%R& X{ƒ3w%sj?PU6€QHzЈM`D `F?fMF0ڿG`$g*]2.m/SR-&ҩe:,0Ǽ&;U: j^bn qKq.VF'm6-#Zl' qᯗ̠yndm/iqmx$QxEvb`%4(urWb9&n_n$66zhAߪՕ ly qx"Ȍ޳Aqtr x[|d!<'T;E(ʯ~̐OmzK;Bboc"Tm(ƾZ2(DH cV]j1v9%< u.fZ)`UD,x^nuoa$ g^ݹ~9#sC@=8@o8 2|ƪ[0uTEEOL땕l-aM^ۏ^GSԘmKab Ʀُbv^Go,PJ.+U LcgYn,!'rbEҼV cANזݺyNuP+Ұx? -{$<(x+r-y$9TF``L,dG& Hk)grJܵ wΒW|5 <a=zA.ë,+M'52  `oq7 9r`5)s[W˚H>S$S}ڒ#UP j׆i~+jK,?pQ$"?H- :eGxVo:VpF?* q HQڦX{=BGp׆[JIAߞovLpә-Ia4X X(z]SA"0ڊzV `Ygq>FsѪ>q'֎_D[|N~.uL mdMټEk`kCp]4L>%x8?euPPFMG:luO'/,f"ƲOm2ZU*ѿn 1Dc[{gȽ8N5$7[@#u~24]fnha#"B8)y)an(0Z.J}[e2;đj3eQ$de_ݥm)Ur$zw%b`M1$pi<̍/S }ha^DOcb( AL\O:p(3X 0bWh@34"QNQ{C|0`]!gZv&j2-h $KZk? c iTЖj-4fRjfO1W TSQkS}/]8MuG4=f:&`7 P߮ݫ_'; ~7f%wٛ Gq}+>Y uUE}H#͠yM=5Dzɣ^Sߖ"S 5A%/HZU9;C /ϕJ]$>EAeߪ{ Z,CcoDrȼA&DnP8wdYJݙ|zׯL47ZirJ}[%Q Oq hWwXilzt ѹ@pc/L2"˵Dd/%FD}YbkbEikń϶7.Qƒt(a<+X9թx0#$0B(؛yxqKGGY'_aCʀG/&͟9"ZGr+Ek`c/Wbޥ GYw+&t~u[g2{b.-%~gAxB~(p8R~ZuII-:8 S}'Di'֍&~-J+urF/O0^b*FIR,RH.2L:W"h ;1^N]#[V4#,u.|" ZɖDz;Yx9ld9om~d[.%$7]Ykv F`z?BbY0Oe?\":,7Zqt8E"հ lZx5ez6 Ȅ/Q_~-=;Ͻ"S,NEL~ Ļ|8ԴH@sbA!Sjpd|޼^k[ ~hǝ{K!vJ,RtSC]˱]tQ: j >YЅ&D}OO]{#!mO!?-@#x&emlKZ Qe#p5$|z%6S$/ z13$wVݿ_YuY 7ؐ+(O!a]f z=xu<.YFWouKbN_oU`saZ:-PIk̳hH]Ts}~ CPGԭZ^=j XE:Zt8՜E }3O]kyktU)&7Up%;w~[KI0u園jޕv_?O(Ԋwل%U! tǤ4 \LNcR: m=8uIŪպ" FoW-}> vv2%ָ %\/5 ,SͰiHϠ줦R*:uFu}$k3&d^)ֹǟ3(. )֏{_-h"MJYHbfB7ܗoo^q7$ry>qQ}\za *lB v߲l_O3jZ?b-{|p؆D~H`tt2hJP K:]7Q;\26}$GwEuЌ񊭱@ߒ|,PELLGݡ4(NJ g_OXӸߝ*9B5Qshγfa}Ct?(E,ց󽏱5l2ˇ{]yp7ke6#q'jċ#F=][0ȏa* g;ՏI+3Vs-{BDɩew/(dk-:->Z8fy\ed֗k@OTDo'G@IM=#x>:'۸ݏx^x ,mBA>K(-hQ؃2a0ibn˷wY(#煳߀&4RPSnS[l}GJ($;WRƷ[A Nl>x<ޔvS +HXlGW>-g%q<{( ]=":cfr.+0[b#ԚRHbefqomG>E_So~ ]ɀ,ۺtҵUP''Uj +Re'[-EVccJOZڗFlNzP#eHξʙ OMP~OM׶{pY8J+(&V"dI9$ÏMI~YFZWwZZݵpLѫu-g,8mgXҒ@aY. ?fz,Z_ۻ'׻#>QIq!F+;$.D7#,iUfN3v Sџ͑,u>n`PfüFP3-:࣋e^x" ׈]6[ PhjY! 。^SrZK\OnETKOkfj,gHz Z0BV-Sb)Tak `8nH7wۨs&ɑEp0{ E@6BZ/ ^ rO,),m4,hgH8-/71!8`NC`*јn#'iaoY1|⤇%MC :,D*pn=4:s ?xupCImWpDweOKAJ1qr:}{Ѝ7he?}SY-~F7oFħcpSbϯ?or$y[${*6X- _v+glnV(B\y==*#*c IBJUVGqu+d.] ̈́J𨋹|u;(@eb~yW0uܱ_)Z}niCH7<VPr^\zkl6 snMH:)"^EC }Y }^ؖ9SRi*DMWRiwh9E ;LZr1X;V􆲦GH=x lkO vsÛjX60eGnMtIiYN;UmB2RD9 p1.#7)|]=amc;R]-v3ᙇ$i\|džEE[}Q5 c"n5qhy|;YT+Ā^Ep˼lj1ooaa-f*+n`q76Bf|unD/`8Cߤfk땞0% Lt]` k>A$3EkyloMS [62s:D"fw'Zeч(DЦ.S-bY`a%\]vwilim/୼47iyF7`RnƱdS:̂y`niTx?Xٴ]Z=X:W DNm5. izآݗ29r.niڂ^xdeT(Wp|g,-"lNe|WۀM KS-mҚ8ǨD7'eѾսWhMS03Bl@~93\_;gϚwTy41wh;RI(V% g$*Eq|:-6$}P^)n5!*طIȎ}@T!?l=G# C{!) q~YG{'?ZB&rK5>P#T>E, _IB_`PAjXj-JeWbr(b5TS?L3 l@ fV1uJo+#;e~ogy4\x0'd]?{/$SAjӞ-<*lypҰ%NNN#rӪE$G 'J=YVȻ8TDM{bSq^r'b]cYb*KS\vRc#q A1?mwf*Wl/.ߘ3@9[^uI U\!^o@Io^]#} [9(ȭ0oN=<'=iL;p}PQ ,&vbؖ=HmN!7dQóPK~p9-1UOՃ5<_0֊U{&KWVܢdf%Wbv{p|%=vI=,&RaoJo<7LʞX%9k! zͧ䙼-?؂0"9l/e6MF M@։SX7uuQ9%G͑ƋTC* ѲHZ >|U)[#ٯ^atEN2癅>V0 @P-jkT6(؄ c)Ⱦoy0̏WW5^&>잣ۖUQhstB`%;u{~>rNKCϧ$pˑi)[ Y pr"ԦTnŗm3Ä3F$y~ǢA#ēg$z*Oe^G qvpS*Զs?!eqo(D>[Sw>.u4;YI hfȗ/.`8f`5a:9l}x2gY4kPHV@׽H zEWGOg>uCݼav 9PJUnVŘY)7ݹ%pA}ӊͨvE$<ē7m.: 4DEƔVX8D&fz8 HPcԚ \G2xP=dHݭun2(MQWŽ-2K|$EfUջ4 %Cl${YŎY{zC#fϋɩh,_!SWЍTrIN'&`AU19' 5NwF/IUrj$>1Өyh-уcٲgpΥstϐio<9!* ',D]ͻ iV+kmsRm\?9En'>êJ!_BP8@+On0RٶA6$x - "8m|H(/nw(&Z<}7s19ז3X MN]ɦ@V$GӾ݃G /=$T*=/+w?vjAx#9 qJu /\{k! t5qv 0b#TӉpt`v),/IceZak'eLad^m L+T(p%I_:yEkv=' w}j|eGj Zi*:Q"9[uPay܃&Jj$JPH3kv8mhaJI(1gS7W@+ yd K* ~~Y-U7n(<5rcN)t$Ԃh }d"s#?"K@O+jxOTX/_U`ߦ<…y Q?b XoɚqrWCߑy dfJsX2ݯ=߻s/ْ.iC "Ox< { ԯ.;?ZGѰUz8V&ғc4/DYd #d})ZAcZZ.II|t8љ*g$]a}jd:)2A2٭z+۔]/l"*1V Y@Xaa_2=L#YQ$K TtZA9;u3z"w4*aڈYj8q[eT5&"zXMַ۞ŭ5DܧI[7"g/(/|9bljF-9>>Q wI92,Wɼ 1t]q[OXLHނhF06rsFw{~bB]B7õ=4>,fs峹X,:ZtA|r#BW] P:xCUn:cK}ʹflWƖ5{D&ayaVWɒDZSBگ*s t^qBhu=|yGStY G8Q&Xp5ڨ?};c3=?&lF#pxK=0j6Fs%nuNun5rܪV >N_Rr:N/rdKz|=^-]1q5k5` MC6=\F=?&{SF:OXWlFalÇ3A=v7(S#ē OrJPk[pw|Y4,l%254^.ذzk^xgJ>Y]ta(fZ];?Lj\rDH;ڲMs:I获="n?!AZGP3B#utGn$пG0X={Φw^6}ǿ@e=JK,0J"*>4;q킐:5=lM"#k{A@u;.Zk3o ۹.<23=y˕$Hi? %RyDģ%uƠ"=!ĉVoU㩽 ?vn*񭜧 R ~ G.cE:D<.3&?U=_RIpnw~u80H5`'3FzeAV0t19ig9{;f~0DK\|UPiHiRϼ f5ݺhjBp V i&W.ߩl5Ύ5T ;m$B2 HvbYU*/tPN$Vc&1nE&v'Yb,ᢤ!X? >Z !{hLoPR#7Bv<%)0쬕jv%rjOQ "0﯊s8`e[/

    q Tr$Hք{Mםl3bv f*2τHcuVm&TTrzpDA^=n0sǛmĽ勮n-[LiJK<GUqmLun |y#M OgU }Zs>H:%X]<n ՁWSMP"vOevM(q8 I]yGxfŐ773Ԩh״$JM"*X3]'QQ ;N_ԁX%&aYүeܳz:1nGjk6!rF5Γg&1WcHj>Q`&wc@W6`3 @yiʿjv8cs[0dGnQ {@e+i>aH2Ԗ)~r3nj0ߕ FS@hJB5@Љ~ yf 1zyaHx_ƛ<)j*[9N (ލT훒6UzUmm$?&@>KHhY[IP^"q N'0y㈔i& 5gAHW?NѯsGHV<&`=fjY.噦`P0LX5ȗa)|uVCh̴Pl:@[眤=8X`Cz[%KKu&f2&k0D(Pm@@GϲT*+3 ~@Ѿ`F\,|ᠣT9+CAAw" [e*LI-#\2Hk,}gIBiEaI]\9SmF(:)A>NڞJF3HJT<EW}mjl.kQ`]/ލIj=('÷瘻7\E":{h)=ߩ`WT0eߞ !d-fRbFҋ{3icWYc6vrDŽj'{t"yFvMrQuP,83QT{:יB^FK&ع6%"ӽQP&zJ],Kߡ ;-ύd"Fl_s cb%>H O:g8*S"w(c`].Cz:nbwd&Ą,UόH&GƄ[3N2oA^~pAճ15gѕjw*nn_ zT6sB?ɺ*r&+hќT:v[1r1 jld Q]$q 兟CEvw:BǗMzYE S }eAd1eIwe7 2y'HV;~trU+O8^3!+6]74Z:&, 9D$NZ&ob#~)oG,nF!Z^91蝜-ߤ׏xH9 Zmdtmw@ 1K:EϮuּ$|pW9yC4Uܛc{END(IO qAlD> 9XEpqHd|"=RlB8((0F B1]0%GײE˱k59?_哑k*_췤!, ="5)1)2Z%^G ),sؗC%v8hGؠV_9H aHo4u2$R+tm 5Ɠ p!3yF:[ԍ6x{qq]"K8Ӱ%S05 -\  wYSM](Ob.I@jCR1=cȹԔqIǡov"x5zDh\bO*-һ%Ə''0݋5<Rn<5@K$LdS?izf0PE )!'Ďp]aa rKX7p6Mه4 !&_-}Ԝr}~|@/Th}_Qvc`X0/c[/oXcSg`1dv4qΩǴh's{D͘C~ jƒp0XMpF^`hUmy]4m΀ dFc*] w8uCH8swI(,*o@'諉jt_n$v/:"ΧF_ȫ>I[v=Pƽkˆ0H+?fhv\YxO\|)IIn9δBhޔKV2]b9iǏk1 ?U = ? %M? al.|3R'&FŋJO.|gTNv@cS2@V-6k ΊyYcsHZ^@[Mm<Tq/u0AOI㿳M8/͜$ֈfÿABUhS:tK tMfY,w(qVa3pSyDֆTݥ>aсKfBEq(4Bp×?Y`_>hl#pO >6rAW16^E8,v2ħQeƤɐ]jAñ|i=sÄnrrJau(X.: -Z$&}ys>MO:>$1:dMWD L&78&70Y}lk2yā ~YP>yqZ/+rP_Z! n)/4=U|T Oϩۧ? .M;# X2ŭõ[ D6{h}(-'ItF./ @%y7Zc*/lS^ Sڝ)C~_7^f.SM#+Y[Q+?i/UuQJL +."ԅ_=Z&ޢ%/3)F!&2֍Dm8}e>{ sHW:TD_Ϝ@mʒ6K\}E-ΐtP)`XTK]%KvggwbdY&V,"@jljc8 j7[~eX,,ZWJ0;֔5"jbG̦8y^?tfq,ʊRxK{AfqFa~&ռ`>SwOnIJZtj\NCދ2-:b\+'݄!vpF-D9lWCs;aǛy7 CE6ɧgQjIc%#2h5K79yو/vcÇyp#l;rY뮪GLFfZS,#걧m`:}r&0ʸ\ēׁ{jW=lg1oJQS,˩28y^JUŦ'Zd! )mZa,X㪖Ȅ.8 KūNO;kCc.&h:)OV}'`P9)Mia qhf 1P[2H*S]`xJu_ꡣkw_z6x5Y%c!RALTW6ϳPEKV773:a cƝN]ljՄnTra@"cT@crxi C4!v-/RV]c5#pZF&: <]з lҟיǾ`er8Dk'5\/;QשhL!) {7{M,4?z6%I:(|UFp@4V0ѐ$+ PZID2MRzxP-'pvS~S 5j0X!(CBoĪnb qTŻS+^g6r-m=4Qn-zu+R3m&ܩgSJBRA>h-Ak O>dM86 +]PHB^xzVsht4z@t|&ARry>92qӠRPgU=Dn:Y(I;m$HݚX'EZ7+ZN3y~wnNrΠ9bA,PjPf8Pex#J)^uXc 4wTHG+蝽IvMW*,Qsc>q2W/eCч yʵ-}z8Yb֚XO|f:H)^)s/`Z3+0k$ڗCt Ep 8KȚd񊩼rDl u36= i56zf}퇯(J75kjի-HЦm1Q;i|ջYjZ(_2q=愝X]G0s_䢛\\[cKlԿUtK_`_ "¥vjb&|-H@0boh?3뭹-{瑬b}F8nX۵]>xY߯T}!kN:H"xߺQ^>1ۂi޵|S52th%~)hkvF\a%ֵP#Trl^DAR\|Rq1vtgKtC ᘸ`ZIL6aTthYѾ8 wR(l@صXbܰ yhQ#  ᵪj +@y2dpa_k46hMzAdNB6'8KK0m6Z'_<;|\Sk1 (w_u5W Dx7Z? A.d;|& }(?n{Q"I8 afY  4X$)ɰAQC뫨VZ ŒOGro",u=}DB_P#KBb(auO6@kFi)5j+/}\?04*:^Q(B_.hk7` #g >QzݨT>Kh8E.ȫBU;GBKO6R[d+ViU8~j&BT琶SגrC |-cn&Xު8EVQ kI6.VϦ;xL!owksUn%2`f>r0aC@Y 2A%l$FvJnr#Y64is IcGi!`x0@4lPx؟G b> # V\1! >,V}$+HȮG 4mNZ>*g$9cY5<:Zx~6(Fb+RHƞ`;`",fk]-?G [a51x l_a[B *LxMo폓r`fviY~.U~6K:d&7"'"7VM.5al 8U=ɭӁP bB2锪Jq6፶)l :t- {nW/(9]fqoA`xd@e$$亂M%ZM+1 J g͒ <Է|˶jh4ҷQ~ƒ)G-D]8q0,(dKi7_YUJ@8߳fU lCD .鐚_ dhkf,Z`86gWTeY>n%Hivr7?? =('j!> KP#j;nN{К@V7ӏ<^U&Ey5W=z|֫ⅶym e &~S rHtXLTkm̰m = 1jxi/aXQY6DWxNWsQ9rd$,( ޛ)}HhbwMOa?'t?ó١wTϗMIJ 6ӃS%Ȉ9'"\B؞]b=[hYx6K93&,l>*׈.Lzp$<m0[e푕 &~ 0)'GW*&P;s"Yi mZR)W/J{X$^>~&¼jeq#^̮a.b@[kto(,Qw4Pyg ]޲bykt:j#+V%2y4\҅khM_phPݒ,{Z= (wn[/!vK(<2J_OD[HpB+נa$M<8^ w*Q:X ^7X\(򗚉rix ,1(ڰ?} bM/0;DƘzs@% M@nK9p91˖}]eF2/KN]BV#3`C&H>=Qk %4D*p9y~ס7.z.Ҽ2jJ@BpCaMEO8_O:g!v7Q'lUDZRdpl7||Ym#ΓV뒐 o{As-]'y JN^Ͽ'( 8' bn_ 6jș0ȏMA<;\4@׊pь50FO8X2ѓ\@cc #.umL͐K [zV 1Zhe6-v<粀..RZ>$k{C-u@)k5IASWF>tm fMۺ+pZk1}'F孛 e?!>1W%WIQBXLk/ˡt~Is6ş52]NZN'HL;-?]*s>q8-ofxw^e8Vy?*?EX 4Cȣd\hhz͋"G8M`9]-_%V2P8[P8=b&Vv)4ͯʔ@ ah b5I'PștB3s~@ׁPoOiLdŵxtD5ݿY7_N " n͊gBy$V+ ] z58^EM3)!s?>W m,yda3g[I?~#%A.N^>P"|< s26CЎ~4>+P={ 1a Z(.: Or/(lGAlD CŏHP}QN9^8sʶ-ؑe>gBAXAa6|Q6X*: Jo@LJp\1^~[X.鍥~+Q֘5z#[젺D:;o@X뺘EKnvؿߵ;fcHņ[nWTHP, )[:]X7q#ԃmG`{Lp%AEǸȝH},ؒtKE<'99R=y:Ȏ445y_Ň MDeŝgv3ޖ| 6hAvGRQ#GV}Xc_p`p+ҽ_ *G?i%Io]ww @PML턱RziI_Up:s[ H)% Ga[H/nz"nB::rg4!Z 35b$&l4YŁ (|^7{$SyYxƇ7[KN//;*X9L2pThMz4ڂJŨs7:~2mEyAYPH 3&.}M~4(弦5'P>߅݂sgk2A*N3y Ջظ38}%Jr炍"r`NH!$۾%(KJGVYjjڔio]~'$P%euYHDY6i&_?±1,둱̌ m@8q](a^IxJHam .=JmmH+֊r328.$sz9$a1Æ\s?Kg'j彷UVS *: 5"9[oBGfƤ=t2|VbnS$4y:R2ʤyFlVRG*bgcT$h\ڗ]q2q mqi mη +G'c3$C>Rԥqr`ZhcY:.6)C~ȭBML~ɕ#!e27>ԸbdJ=|6T;Ejj&/=pvkӱƱ1~t:{Q1Hً{Eh0Ltp{S_3YL?"L9$(vRYKHL8O3xg{\bOB.@o,@1qN肟T eR Rb~i& zd*`JYj4Al*'^cᝨ5%XN2>+{$Ri6b)R_Bm s.3\wRA#H7.<ؘ:(_0&v/[D77b"u:焄cBJly6̾MRW2?P&,F"E<}Aw< 1R鸙 펝Fz/ WnAWL?JŤ;zRw2wWfKDڜ|M?d謇}d)6M! ǓI=H˟ xv=I =yY҈h + ڋ~QSȹE(5ɟ_qjolw'+ɚY ԑj.Q='k76  4МcTE X}w+&0) D<'0v$.?s٣Qt]etZG 8$$Vۯ};7B+ ҹx<",;v'=J0lۼJJu9rF/0y-H>v,f4;ǵyR95obn9&J;|wt8%Tɤ́ Fo F$rji=1\`jc@_PO,d 1 aap d8hzt nŗ9)Nk>! Q]եD8uS8 i: -Ic?4n3#g)[}8mSP ホHr:%*vEuD!7t C81:txT3^D#"@-Tޟ ,Xbyxă}󯛰DDjms@rE^ ~UTw.yGT$> xy3S%7W66_ݞ.R?s.~Y`vLtwI6ja.!hrӐprl7]Dܗ6[ C"[:M䋫]~u:Ϛrk6j7v}}D:՜$?|  P J@WZе(B˥ ,yXUӬLuv>c݆0zT9;Hӄy=>%k, +) :;h':XF>7(69mc(cL|"7a9p#rC!(ޕL:}"CvHc(꜃Ň6l%Ss[ė9U ]߹B˷0޶EdDlv̛eXt짮ވW&g#&q)A![Lj 8:/6!Y詩:XJ ?fyPڕY }]=l-N~K0hRk*D@?x.!n:M?R~%ԍUEk9D́o"JDi uBii}ҵiJ';S jWEugUO- -D1!J~ۓ`# پ9Xfyљ34Q&bN$cFJ?!oC(]l]}eu+W g#( l=6͢6o{U"=~GU ETjFk:0v{{>2+1-[( ic !hk16&⥊j)G,HLpU`qvNc<o,s(>tUܘ@BF`1َ]-<+t  G`y,5ywɨҍEh^x,0뀎+_hr)r1QsH@S[VMtG8d!~jyb"d!VSXu9E*s(%Y p韝%- n)hz |G \^eZK-򴺐ܤ>№yqxqC( Y9?- E dN-VAk*&yH,,~%LFI~I9Ƨ##D$ɖSdk^ KRSank"*Id'-VK1r#Gڧu-M,Ka~@ .N)nb9l|,1bk,H‡#,=dLT&6KyFM({%y]?ܵOMVm&|9l.RA@2,A.݃LuP:.p9EwXS-`Q6kZo;[?WhDs@9ruivԤ]Mo;[te}zFIĀ Q=up&wg?L ZTNXJ/;;EO+Fnz(F+_C/budWh9k5R<@&)mgi;$nCͪX)=^*dńC)ƕZ1̄5{c ;m^2)Et`ԕ2*1fyॴ1]+ͩ hYx"Q:zb {J9EI/\MF]˜>fi7+EJS&^jT!K⥒&,&B l,4wT'MI/MVltCJ"B.qB +M2v}ĺ-~n)g=a@6+z'2ˠWvyz :Nd۷/ǡnNzp!_e;1]TAI eBa@18Ԡ"HXEkއ B%毁*HRSaԇQJ9)U̡ t.fg`j ѝ^~F)Xk x/%A,Jx=V,[U.]L4\jj9|E?2"`f|VzcTD h$,)D}vկ]%~}K (!IGWېnxӧzWg02̎~jAn`kbqNbP;ZMΙZ8 RJF,]?X[fkXi* ڔ):B Ojg%qٛDxGm<&*qSNZ(zˮ*2d:frx6hF( u\xᠽ١1[ƚ$[[8s U<]FX#[ie%1> -+R $l@Ml&,4 f2s7|^/O!E_w`M]Bh~nd`vK48#4+Xyosz:307<@f_{_{ :ᗑNE$ n=S, ^RMFahn4Y\~,d~-26VT*Nc@lJ:z^1L% qQbp^'ljqR %aoGSB+G5EaPe_$$lz,X0BL}d57HeO࠘l'x;L*˵p{.Բ -n+[iBn{Ŗ]n2n_6ʕ}Ga|֦,P+u?Iط@*֐'<3勶5 ۍAaanhBEg{XrÝ80/}cq6LWmHE^3\*tj{Iz\q1ld°հ$lf UO<#Fw{׳ nTޏ0`Ԕx/?m!UŀEiyݧy,lx1H0 4d~A4ႂX,c6(P7_r͵cV֒)bL",uG.6i.(vtb|ň.72#5Wgf`9$k `6#ebIlltH!9XXc] yјE̲zt#|՘ yrY_u;P!Sml~g'+'5huK>BC1^4?& d 'LjG*J8fF-ozXاIIu94Dp<[9޲5C( ($bWWtw$GPVX1r"T *&zurĬxH_&v Q.=hfx_K2SfRR[g^̹y$|l%FՎڐr$g70=z@NOBhsV4g`P̊9@qD.P{ԍ&Hx9Ed4gw+3:`;kdOyו—Ҿ|?j3t93MNu3PǝſwR5M{Kr0v1|Fg[&@FQ3(rt}"zlzAn{/мIPZS!Xj@zp+[?a*?f;Ƃ <,*KXnr9 BMmA}OԙHL\"]=׎$>egkȗ)߼N',_s:8C ̈́Cu"C4DxpCK˒Pim*/^A<=US]46dA2Bo 0icg*:hCK^Wv&_U=#p2Bv][Cv:F{&I?_'/Am9ܥꡕ#&/fRZl1|}&.۪,V"^ɱ8hLJNFt,$cw$fW;_L}]$eJ1Vzif^U=X{D*nj/91ەtH p/Vo+r7)]h y:}ah^?_ U,BwLL&QQLdB*3ch@"2m`9lٓ{Kb5m6/P~Y15w> JE1{#jM%?a2 g'+/̫N;b`OO,i~; FO?FDL+ "FZʎ sfJz6+]-}]<؟z LˆQ,"32W5P9`=_!⣇PVԝhO+|UBځnH&%u+Ɵ3WQ7!mThDt¬sR?pZ*k^'`PYR_v\P (M# MT rf;s2<:htF2swކ1i*vXTEz7F򙷿W0E3?RȺ6dc-<8]2?1]"VX?`se mtI/hhLotގ?/~UN~aЮU7<*w'Ur fMq\U(︖#5'xX8qG^-"(=]P-w IC3^&fp^ULsGTCnxFEWWƻią SYuyꌆؐ`n qc!ÆcZ/ی0&MLx%d4 6`t> wҋcџ/C[?KvA?&AK!Se~1={'x9( AdP7.2~PEe ?OhJO4fyx0iG>0m&Fؼt%AKdjlg?Q~WqsQ+D L`HCKg=hd[#,6)0 s(V"R h=r f sZH}5ss/m.}ksW w P!QFNm3+FޔJ^a3: 45)C( Ot`sȱ([-jQ+RlbO\1]u~q@rtB%qZr3k>#S3enc:j갭4wy=lْڷ)] @sɏzA&4y@jEJ(<8hy=t'aIM OM=~I>B #%5$HkV9i3=$̔@=xDv.9bɭ[ENhXQvP5$ _8jx XS E}?@uJ~*tڊ#Պ;(xqRkj0WtVqESF8A=m?BquS%UxC$t 6 2 ~ !8q~+f<{nN{5|HǁM*a,G:]Lk)e2R/̺byC@9X*.Z|)XNl'p T0ճ(n nѦJ$8wmbcfxqb𙁞U|bG+Oyupc 0)+,+GŠr]z;H "\ĪxC'< _$=ВxK/}>VyKDK$YC,HC?b mJWcu&fdtZA9'\1r`grv!5LisC+{4=!:8 ka l{tE{Vt&JuIkuvZƁ$Mh׷J~~FXcxQAT5m-n%t@p }xiGYPYjE.o^TZ٧EbebKTP}"ͭf v7;4Vot+q ٥͋ ]@DlxK0J- FLetAb>sq Q_;[g;îCAk+}>K?#+Dl 22T=N.l(y ⋬9F[C_5 9JO<)>M{Y '%@ye/ݢ\c KB EjhN櫯 Rn]4E7@so6 <{Wȓu"6lCWl_. |jq}\" |IN`\5-rc8WLO`u47퀡Ӎ+fkj$ ٖ$LvA7^x M1 [!Բ٠tCָ`lbdЋ -*瀱ȴw=9O`NV:Wsn]W :+l R6OgUhA19 U- Ľ1C-GZJ34gOX.3 4q;W:/6#W*#J׬{#'xE o`Q(-F8C^rOo$CG͸m:>jA2ÏRtǚ눴c5ա.+:ΊUE̚`,iHZr3/8ܚb"Q9/FCӫcfl56BAskAⅡqdYꃶq(5) tYXEJK<E"13,%2^e2q!#&~ \rYiZ">I*q.kب<|.pZN9en̕oU) -) н̉J"_D}5R;T'Dt ev-Oi1%OoS+G X3} #=/7OW xBENvSo\ɌawHTBaKք<K`|W׀qepkΗs9r RyZF^|g. @ĶBg}i%J5Ⱦ|co*7Omfի%$3OFŋ;Xͯc8B0;,9<ف>h)meNP}9YQ͏a#,a$7y8˫p1?NQр(gH2Xi1qH"X~Fm9&et:N &|KM/s4fnUD}?t O}GdM(4*Ԩ[[63R7 ”WK5o]5vn\J2UM: $}wH9A͚/Wi6tƮI[ vXyGl;AK,?kJ١3&kCAEDZ3AT p/st^=( {Z#GÛDg͔e spwv5`%@]9R!$yD>n8,K|Y6LJUx] ud0){.D#*ܯ hէ}vtg3۶k?$^y+Ⱦ\GZ' zƻLx4+fL"ާ`ധv$3ܖ@73T<Ί@d.0v'ϟ`AS=3 8^p/?κ0r'Sfil`q඘v_QpD9[kTi_ J5}^hb㛭OlPP O+q3{N hϽE,neQC\mk!sK%n7^՞gSh~u`Jxpp |d+OI EWÖi6-9nILtr/G%^ H0Z_R0lJ#zT`.=? &Meۛ8d߷"dx(fbdPI!r? aJˎlDAחU7`_[Ҁ+"ɦf(D.^G]*/„-?.7$jr_~~O7!<Tm]Sra`I rơ6| -hOAvR?$;w4@u.yGϯT}p t4MOB{l)%dFi^67jq\NUSN {rr26y]E}]Nt](Pwހ.cQg^MCUdDzj>{Ȗ/Ƒ轌\4yPNd邓7>h|grqwq :djUZHJ&?'Rse_}!X 502~!&ަy1v(:=1:b9|jX]WnVx HPƟ(EZr<3jUxY) 9wGTkG1p[+&lP)#He'V:&|Y+OckI}"\0'H٪Yk-ϓ:eTFY/%ej1]΂'aM OY]ɐ!/|!60QuB2TVO 'V1k3xK K_2wL <-r{ːfl"{ʨ,vl5߫状5?%qSJ\PW<)M܉Iv,VOfuʸ)x+)k>88N뭽Қ?!gSFsTUhK)Jꈫ~brD#)Ԯ3ye0}~G;'ۜMh62DGAG&!(Lr$[Zڜ~$ru<_FbS[6m+u_a 0Uϊ Q]G)S<] R*aB\ J#՘uaӱaDwVTP1g%BWݖY`vkupv6gzfТw/Mݽ{nĈX\Iy .y$âՇH k[ȨٮNӑ>q6 j:g;#P0J *y=,j ;*+OӴKdu.PDžb2[Q[sYTdX4{qsyf53Z)\.c:kgq^ʩ!h`ۨ ljjlq%lkw d UnT@=jPo\̢!Ghi_VI8Lc7bT*QkO (O+KNYn"9lK,,@QS 6sJlX];oWz¡Af\07h̀{$N w*^/i6 EjjeTMxk*ưO2:n9o>zLM;bݕ̵8l]ۏF~k7=tQu?_dTٖ3Y>g\`HF@qlX3Qb}ݳTA3` _4s^-ܯ(.bVRVJv(!uMY[Q#X{X N(sٵS:#,/`j@(|}';@s{HhuWRa\^9:[s/5jKXYFwBV,Gˠzw4ԉAD➱+IJAtܧ`زޒ.bΗ|~ո!Ƭ}ĞD;ե7S":6*9Кm$ב7(L{;buӿy!>xtoƱ-^ޗ9;e/cFA4cV"V+ŋ :)5?iL/\GKKN"kqh?kVqf teNI X"ƮCY-{X>ⵟbmeI٠p9Xf$½+MY­.H!"e Hheɲe< KUE.@P%4{R(wPOl(Ҳ, ~㷍pMb2cGDvW m)4 ]knaU>MM(k0v9pksk͡+5݊i eL+*xe#OSh$t _2ƒ<{Zk*8R CDqi& UY}Y5nIq퓨ӓb M\^ٻFCmO)ĸP'HE 7Bٳe&ܔpLɾac֯ z-^CZػPi2]#dK1sG yoHiΝ[h!U vFC䭣+

êL;mE^r#Omm!jF,X`8ڷ$wS\K-H.|6xSȵ0 y8Crc㊖g6o3uZD++8D@( ua";7aȟZ))n<S!gھ"gy24u*܉RXxwԯSU&{i:jQ>MwdãV1IhyP@mNό89ck0Y1!\, _D>uı8VZUYp;&ܮ>''uazKM?)(މeoKv^|WXZ1Gw+h$!YS݇'ѽȐUˆyF|5=uY?Po'Sa I\j^m;SԔp!'[RD"^2Ue0?{C8a s T&eG\0!)BLv\6Hh!So ;a?X ڌ& .|N/Ӏ:s"LPU-ۜ{ZB.6%jˆW?idoq̛A @LfrT) I')m..6_8=r枚Eq;Z"3h*iqԽAI|=f>)<0n!0f=ngnKd[7 NwXQIP#vp *Q:o sR&@ߞnCq0,9QJ<)uNr'oyܬctHi(]ďo97( gz+Ǧ-< ?k0tp _.T❰(S̫|4Vwa7b ٕCŒM"}+6N]QoR_[ rE & E&VT6D-8'ŵ G~+^A L],6$$plbZQ=%ڠp A[BlE=F;gGQݴO S5 ?ȳ]yr,Ga#| l܂<UZ\@ =dԇn,ОAuCT)pд_Ǝ4}L"mOe$6*;nK$>B2v(q1w* <*PİLd&AK/8g0Eߋ#Q= Ȏw``(SapV%nE%TݰZzP'9Hפ[?N &SȞ Մ5<å(Q!,wCߘXg;iŒlϴ^nL >R5x`Pv>If'Kn}}g7cv\Ol _i^g>/+N\E N7X \d'[qhvD\yO\&t)2Phfss0/x"t(s3¦ІumXnفVE2Ź16N.7ӱXyҨ$8؀,s_Qy1pF4NSLdWU_'j-LhW%_K 1Ru6i z(2_m2#6mr4=*82<*8ƫT>y%^DC`_ mH66>/왒D}WzTR:`1t~B jz5s@] glV,J$&Kbw18eo9@@,% A_T4 }/}O6x _JB9%?=$49{}w`l1>Mqy%J/ J`^Pajn _[b h8QYΧ$Q]Acvajh8 0<=quW^@t@%NvK [ `ҙ b7QC#U@ gyB t9WH6X@ce5 *N֚{`-HB> 2"eFhIOd; 3i0B+l1O<: HQ.\-$ŗbUiy%UN~DN%7d Kz jXh'%u&~tw>JȐ ; oxKHpqs<ݝo}jCڢ7v]DY< nĦ$߼ݷ /'/e9ysVhvS g,9 eus4TqQمxx|/ug1ǠT=3 dUkjm)0Crwd 3"P%IvTq:T0 {bucpG;"o_j<4Yv5,K%J:{: ƵD=Ze`J -l'vb {1Tk(,4DG7XF[XϫvEXA& ilJ ij w&S{3 i X{fB 3tħzK*!0 2`!FVo19SԴ\z/鰓w#c| 7&F&aAi-sGOE4vFt;\R!(  쯁<`W+V6^qgȊ ]h C[׋yFxh؈.` |.A8&wlMk]s ==+KQfNx׏{72Qw4VŻro+zAZz}zv)U+!F]mFTb&nQp+{펝]l<%`1W@'q눣u64塕Rkq/ͩ\Ќa;_d4/XpQ LAԂFo"=SHDzBld9#3͟*o ӀƲZ^K`#sK]RJpq[(z {)`H:qPg+ t1E5d XKњ J=laދ y/S}DO˥q(^tvo+Ҵwc1BF{lj=w͸Y ӭ3=njk !r.-9&ϳ-m]J~a5ܾ^|ݚY"#řlRO45/ֱ;/tFd Tr8AS2!ĭ&n)0hF+n"d9~P a1ED=QLPdORLgL2n†DԲl#2P[mm`(!q)V s?lotHWB pm6(Pf"R)F?frgF4/i )},ŎX.}tb,'TW?akRB )xߍk+Thg{9FgA)x@Mc*8Elq,嫴<9GfIsz\px *M*%IE⦜:2=heDI[Lpe{ɂ/`HpqP\5͸$wFȼ%%qߧD}^~ؐ҆aǩ|饋[z%7@hPY^+ڂd%q@@ *"q|KՑO.tqN;! ~3k oyK]O_W. ֦_JQh0SAE%1@KW ILh&UP5hڝmLT}±HyrN9RWtBd 8U@.5yV9l N&`ۃW(Si i2}DxeC_SwQ1H:{"c4Ҁ42;^?R0a 1qf{ >+t򩶟r{>9ņPPh; #R u>Yِ"(Q-GN%YxS;1<h^*IF,>UZ[IΎt:Dz$ȕwMe'o·Š_QLd&C~萍p$_Nztr94HbERD tmpPUZyS[ 3 bDT~1 l14M$>l׍iOᩜxgH(&e[g衴{+_gP %V\R\Kw ˶X فBpAWRԚa4 фZUl;o(댮;_k< ̄Oxml{@)lRQ&?~&>"J?}Ty$[IoRXɣ8b9NTeB@5a"YB,>;WDXʼnKϨ'!/& 'ck]k~F|v qtڏaJ",T{214KC_o<έd+Hl])5JcӞd`t,pIY~-H#YFN$ t$q *Q .Xμ5+Gb6-ZHw 9QҖ8Dn{%m^/1ن0Sڡ, (ZV5h~8(MQQ3EK$D]։uҍ9)#9АSrTA jSP1GU|~Y<;7ģFV3іIu`w9T(1J}&P7x%IS&U;2o!`Xn?&ɂAU 46>icJxTcafyH}TUyA$!+Fq/,;O1|""[cs-0mE7|;Ƀ4(`u}DW[ ETN8Gcy0cK%톅?*q2і pg{wTbnRq)@IDeҢ,ԭW7BgpxoB }⣑=RVGASc^ ŕ\m2;vE[qQs xQ2:rlX1J\߾uL2Za0ݻƊ&3eO:Xt Vu0w cygOMh,H Xp d!{ >;q<`@D"cOL`_Ƹi/zT.~=fKdo=*M0P6_nFyFMlccl:HV}/,XIs7_λ7c2eg%aApqmuME6ך%|Fꙴy$M4U:ouJIq1F && i$Q !v#fNpukŰ:*V厤n8ǰM˫1gNlF'*RFTM^ wXgTH3;Be2l(t?]͚=Zݬ eZ`J~ЩHPjᡙ<8qx(% 0-U -O)f"z܌Iwvr%ۂ! !&7(9H$+y}c( ($>PsGϵ#)cϽ,|t`׽3#5G X33lDaD\;Z. :<#ߥGn\'3ԎW4۠sTF]0mWHt(Nf/8χ7FsV᭧:cՄ(c>U0Æ@Zj3XQ퀼7 I(5|Pl/S zG|X%:P:ǡeNM#[tҁ'Njܬ:6{PNI8Bonxg\+2<_q]@=VrMi1H7 +A֧AweYgk'W:K خݣzq~-o|37ԭkۑIn_|M;Җ+vVqoLCRc ad q+,fwrl`V›@WV=~#"]SdP"v5$;Y(+5@;~7ؘ*"j"2Ɣ(j2%J]]ۈKM ]:vˉ1צZuޗi1j~߱,uPU <"2CU, 9FTa_3 hޖ?/6+WeEfxT@Iv"gɞ&*d!ONf,X g ׷ow|Sו}(XnlX)P}.7'H[f{o\S40}J)4˨Ro_:`SPqu9|wFrHV|͊%ŗ8XU^NEhmoa:NLP3y1"!VChNJe{ou<ᣲ&纽{?N!ޙc{!=k O2Vw7 C`] sD*{ o&OF ]d;-Kٙ3LQtS)Tk;3r@  U|B%S6~' 4[Ac6D4݋' Ter]|3s6͑|AgU 8P/\qM,lҥp8K7E9 ~:LD} %HL,0soY&_@~=úX| 1 7.Fi5GJKުԢz@5f}*3@ iށHxe;fYxQzPx@n%ן4U^0F}Z"kTdcwUOU8-Й?< >Z!aTH^ 3_SːOh˖ΘEDok[uA2oظtFMqH!P tv?;{@H49a5afz=!`ife9WXԠK!U7ѫ9rpx"r ChyLc.#dKm`w"FgdIHfNDYLهƲO= Oz++? NyUlF-Jwe?pHd^cf 9 884 py,26#YϭTH9*&Gud0qk=?IO>k;.kAPA"/b`5hDAgo](JPh =(#yjL.f :ɫ{rj(tpl|%WuT9͖"΀vpFr4?cRU}8DB1- b,=QsVu=y(O hKY8?|HY[%3\ה{4 bt%:~6I[PԸ$Ljϋ%`"H!ӯѳxmMf Yvi^P;5s-f- @1K]q:߻MW(o"a L}5UwAtCp3lnJЭR+ǔqq uaG_SfEu GeׇaRZ2w|QTD pooc5Eyn}{ LP1u<Šg] Fn 5aGX J;v2nr:W+1-><' .0? :''QÓ#ra)?a+a_l W+2o?ߨڦH3*|_NZ^0鏈=(ryǎRVIՌQ.6(lzW< 6rUt*{+!tVa9vU3R 4*>Gd(feةmR/΅))7!ddBV ֠lsԸyQ2'd1XTasVFgiHU݅\\DVZ%_{g9`Ϙ<da*<;%X!C..*OiqƙAi!7N,g#} cE332Z}M-d[q=*OQEX-cj1tN9Ln=2cDeXYE.m6*,F>9*PQ![,FS<;oXON[ͰIly&`vg_R *wq4^]ǁdz.!tC*GK .n¨IccWfŔh9ΗO$fT:bUZɩ3wG('L %?DH-G3֊pU9CcUMp N':ԂNG-R7!8nqCt$u $!⹗bYS5!{ ::+aH!xzwlc1g.bH^E5eZ NG:bv@k)9C)0D.I@$cgw60l"8H3 5dusWW:H2 1;6" E|.\a?(3{WR*}kSV%^#wĚ֪/(̔ a^ڻ.3( )tݴгܼq;GH "k`I=a`Y)f3U&({xAIe7J0#$z"q=}CɗxNV/Yƥ]%a'R7& |,aŝÎI>'X"% ];Dn`ϫ ]'2VE?ˮ2D)%q_zmG'r~9yv6@uPcx'W^x즗%l[gŸNb75 4gw/+ԙ?äǧc̀FP noeK:` yiIRQ'*)>qk`nW[cP~WxY;ʾ a2\l9knhs@540 s'Jio@ԯ݃b=ZLI7'7`tsBV ja(0gsnV2kI ~RC tqPr`8r&dfM̦G5=y@>Ӄ#vjo;sGc/qy"43W[_)sX;Gh3F l:, %˾D|j݉N*}˟LN+(ߟBեzXg*jCέ1i-z]L:^!Ư^yX@ޫ*B*7N'a&>Ho"n(jL"((c'^mmeK^v뇃UBf+c蚾\h3/D|y7NJA>>uvz+ -tb)sn /Cs$-uyw$ ۋbvzK$4澒зt:]$"FG*fP9FLE"/:wXÛ^]BJ7r4"A#l=?~=(|^y٣N!TU%9 WeYSb[8~L^Ǫ>s(V4V}=ԚD?b h76LU:ã}+ Ǫ  {qE"!e<~p:;jp gVԧab?t4ON֧t=^-ԺsNXr>Z²Jq[ "Tqa8g3ͱz$xȔH&ZWnY L96o ey{%U$^VxI9!iPZn\ pe>_a*7hpi}ٳcjxg_>Fq1lJxKgӹ,>"3e=(">_͇38wdܧM<*ͥ V9g%K|8l 0+zFxtU3վN 3oqӔdh"hHh$$DN$,k[BXp&{1~su[ W1g4 ;)W)*~D:_d8)w/˻auZNRnvN%y]*>OUsZ oz4H!Υ$'Xў{d떭U'%>G ?1@_ì)\ْوdtQ[¶fґ>Tm5T<{1CޗR|K_rږTp47>ExvX~p=\FU_UrفzOw#{nm@4ŀA?l'c6 cN1kEt"ʊ#馟g27A(ҸF\l=+i ^*\˟;E5G>ED4z!!a ڎM>#|!3|ڝ\(kRL ](6p̅×5vod`3(Bw2gXє<[0֒ݙxҥ5%a6ǺU\:Uy3Ѧ,1 AE(Li2pU zkIfӒoq~ y_C.dț,ʼ) '? P+9JlEI+jJ Sy[^wɳJn-йOE]7L:Ićo7}Su-DbCevIm!D"7>̓> `&AEOqK(UG_@8ZB߹Ѐqn2VvµB "r{^!]1ehSi/ e,s\ ]vQ$x!ƪ^XH=E7/(Y5R]퉳Ԏ_ FۗcU8"rzݡ^Qx/-]e 쬥紫?ΒmK}A'+9sc%.SauLg1~kj%^n;0Z;)gV-UP8*ˉ}m!p:Uܛ>Ny<Ð|qxF&A_G՝*۵}&.kw($?`? r? 3B C?B92g&/I l#p$FUoeԪ }K9k=NuUI.9n"Ӷcv . ,qE}vG!*?Wq'TzڹɡF#82,gys4xў{n #lyÎzh1;AAtI׺NRR낂:|B۪_Ag8cYwi5&XK{8[n8gz 'wL20Qvnфu by#:\KFab0Hp2 tN H|N.۶E1Q͋ʀwԥTӑB::{%s\YgAqYr)t iur$pbЏ ]{˅mN+OFb1兾 ";h "]C+gJ=ob0ift`,"?Xj@<|[D+c2,% r_fdrqDM/+82?OU~@IcA t)OlM[-[KzVm-NO^@m00C}I\6Sm/G@@mGx m 3!z+ůl2c\l,HXk,e53#us1q'>WAr^x;3BtDVnR1i{ɻ8V> x @N0m8^"4 zU XQ9诪 ib C%af8KF}O5HbT*΂M.y f1kv+>Y'ĺiR?a2j*u2l:^z>])«xrjUgzc.^E]Mo V̉, #bI4FM?oխs$r*PbM uYgY+S,em9^5,~65&EoԢ~^WS)蒪򔩱jLv$=HeV掘KfoVͫr%о&uVMܜolzDnU3RJs4{=9W],۲rΏ`s Ƌ6fj*E;<"౑9s`#adbg$yոÞ- ep:qaCQD| 4w-Pf>B۷HQGz 8yO2&æB*ٰVvG 7m8Iέv8.E~OP~ZXGȈ -ڮEd0pmVc*]HH+>JWlBq?$Ȓ<A GHY嫉Wzڊ+4=cԊM:!T&E|B([l=Li6CgekBfQJ D(g,Jմ=4vۅvaێz 9jM .f=@_t_cWq"'H\d#Jf/:6*ŃdA;Xc fa2K٫K fmufƛ.zх$z&dc3xiҀ&y06f%SX)1c G1r%..vz84-6oxEJ rLX́bb;O.YēYpN7̏iP5~)"' TK\(@Y0:z[+m(.ƢB69ON˔)̓F1NS5'd6̌4y;TGe Z⳷RR5Vm#3hMGgp2DҪ6jՇT85iY Dvη1 fHǷ_O}zm*CC^@+D).$RA6EIڥ 5ΝMEZJ\u"B5?")eeDx#'~w\G {ވL)2\# u}ԿrDT1ٟ@ ;G<$*&5lX/yw1`1)}<=={u ;(,M"Gӱ&O+GC1zB*d-VTޒ¨*C-MJtv,LZ 5^Iz'2'r wպ-2 ^Bf7pO5UX$+B[(1b59˅SHZ}%*vY .ynbW~\{fy5Aт"8|@)f/M8IǦv!!q;6! Ahg[Hp${0yfs' h+*)eo|Ɖ}5X7W c;;WI^"WZH`[S;͍ {CyI\vI䝐]6 -Qk;0+ahPi'cg%nѤ/ [7CKm䅮/|(hu ٩D}:W8@*+Il͝?i])2$6 [ Zmo(W|(VBI'lˉ4tM#a).'=bػlQy.Sa"Zi^@գQ8Oiբ(&A!uRWSK͙MmcZ.a-u9&+#~C+i9ϻG2`y~bVisr" rzk /!58D+D8 9to֪RҠ_ynif3 p,%. D41jء/@%aӱVu5$21 bvüX>ĠByk;05ZoxОJ& ,Aly6ܼwTq[Һd?ĭ)/ vvVg]*hWQ ? KmA2 C3#ĖOct(Htu\y0ȲE\nDyn&ou~磌-Nnk;?sD墴f ݿM*mQve -9atӡ~jD9P}>|̒1q2>^WI(&4#uBBPQWԖ wf"mCtngWZ|gYCjW'um V3`A,h+#^޸t`𶃧rJa3 qB;&8#2ͨ`+;B·of5aE3*j hgy"Mb94oݵ\ H8 R 3e&QK[-Z R0?S#q1hGhHJ\UC˜EUeآJJk5, p@6S`l^K=vT~ck]JwR){fe5u;,?: 7̳2DQS=L@P[q' f׸d Jd^o ue'ο{p'ƏP"%*׌4z}ᓱ߾U6*k^0Q{K:"L !`| X׉0>EZ@!m4o> 9S`W`ɹ*4>+wА;b(%ҘxAؠ؁ 59UZo#mb:dғ`\ۍʎl>bmQUnQIDUQF6[V&mn#30%wQ ّyj|{Y^[}#Up˗b,6& 5ُ;A0ibDy}\f_vbq5WH%""Ev* M\c?'2K}[)IESԕ4Gcg@-*S蝑z^z% 5Su G2K * A!3E'Jiu#ҵ-ь+$FHF7%31.w8u #?l28*Ddsp~eTT ~Ҙ+ܐW?TKQ'*iDe8NEY%(sS~~Ds) ѩ(%<7/2j_y߫1-Qjُ\zB 3 ,4R`RƱ\ʲo=S^OG)/# Kug.<?Fɾ8|BAx?) f艻dȶlHh y_,?8^kT9)#Jԝ $í Çt*ȴ˫ %P~3bN< ]áHI ,wrń8J::dl; |wR_G\V)V/%fQ>}o=_g\DR}`~jIJ6, b,ȬO]򥧰.ѤJ->@r A_19Z=DztAGA}Y,%xd]A zSn@0ja-''e-#i!t[uqX:ky٨xDwO: =0o!hkE_墳! z3VZBj-]=.#t=)IMvdzrR{ї(c3'WD2{UScS.Zs=kHQ Aߴ ǂ=_W8;*ءɴ(2bO]u2ƃЫfmDՀbba jgSC-+*@ c÷46iF w!rq۞@|/yxUjNFSIJm*dWȡPڍ>(S \p)‘UN-^@AZ_xAW0К؇QZ'g)l l؁V`KP@6Ï5Q=cMkw:^ۡAW|<jkk~b9h6ٟBa#1۞0N)xV|?#+?#[{8f՗ᮤUl l[ +J.SşGL.gQZ ,ϲI[=xX<Ǎ6CM^@B2ѫ!B zb/w;⫷!}C-eu9&vDyPYv.[P2 4G#4$J"ȻܯtVtI,GP:I H tD:<ު@Ȓv?/ ׿Фt*NL8cZ,˦}+b`Blx))}s.Ѭ1N9V]5JhT1 ]v,'f02:xVJ}\su}l )؃Ktbt h5c} [ YMhͫx`7VDJ^_F;evu=>4CaM* ﯽLgsnEkҲ-"2-&a5ZT޷s5Q؞\& c`"+oWZrL4 toor Sys24Kse(~ZR}ʛ5=^\}I{mx)w&_D('wQ6cDh"ṟ(XK˂KR7J޾L) ӏCrǕ1=#tx;#9  {9XC1>B3t2jR(xٺ}] kӭ R19!"PKRk5A殌}b`/V.~Fn; VP*++0$hL>v,CxT\ ['JKjג7rDj"oRI uEe_ܘW ,';!6&㴫*?AB )8) VTU&sW~2NTJ2k5f? y"TUz'7mPRZloC W:%3NmyV$,baLtj$:@YǓg_q[dW*WP`hC4c pd籝0:G[ݠzp'4X9Ӌ~g |Lc!LPq:(%eIYf8|-G~Q}{l"KEUÔ"Rl9NyC 0=1&.(o> NHho;ě97lpGBz y:Xc_'hz9uy*r TC'2;^='檘{hD,knј^uYXd5#qR ,F%c'|Ѝ|{u|KvvS&#a)?$zQf(kPvTX|,VĪtR>0G(z 4ObPsG|{~i(\:->g}=ckHSNA9yHLbA$ū!$ltp#7|jJcgfIҽMĐ]@1f<.& e$Xlt2u%?&GH*f"L"8FfF%|aB_$::QyĀX?=Ʀׂm8(G?喓Z@'8[ɍ(s"loKM uԒ&9U"KO$pP`EAH$X7ðxWR)-6P L50w+t5j(E h0.B(x͙!vf00Lg9Xs> Wm.J;]6h|a^oZ#8.eנ*%ߦsiqU. $I fT]*X@cbϙM:7np>VOF4mfpr$3{ ܐ>'G꽫t=gHP9, jp[qC^dWҳO;u6V^4s_p| ~/axv=1> c´Ea7e s@!tACOjEMgYƙxd 'ԡKQ_فbBLB_x2N7NB$+zcZу2JyBRI(Izxg%ēL}ǂb8$X6ע&3v<& пhkBJ2Z(IE>t0'pS6pY=l*MS,F/S|G{!Md#^'pG`a-9,(?ocQ8gCi]rPB@yө;3yX4/jk[IՕ6)lBVLP  KxȨ|/rC-``eB`nξ|IT ΔMqh7Ϋ5 ($\f\Ir 6z-@&rSbuMN{I$c,~iNw*!PM-WH3mHn~`|PAw[=O *CӅF0LO=*dq7wZMu[}J׺өM|{ k'^UPMy;j˕x(eJ|CxdIBsׁ0|31J/C*C@5.x؆#ht&$iVܒ#> ?h ~D> 4OQBV /H3.F_bmdR(YTSS3$8s!*ԍ4'H^/p4l쒉9>YHI-(m_`iz@#.и6ǜ9 !A.>GTW&cj`}ɜ\0ց;vLnhF߅̈́VJ]2T75hݎqI=Y텎ӑi݅TLhh `,QEk.'~c",?O-A.E@nkm)+`k:sn3J^#K,PXBQZϫSۤy;/H=@pdaM*o% B3dZdjiBstݬ:wp =֔j&8IJ9_c.t_O#yb<>ܓMzRͩ E:NT|sTaI 8UVQCw u na[g (mq[+GfbHHlj2I?_%f}Ds,S],5"2VXt5Za-E&HGA3(r6ٱL_y xWcc5*A"j@%1))6(Ǘtmkzh؎Z9|]Dћ{Ϗ4i|PVY9a~=&;]{;1aS4?p#Λo%KweAՠ B SݰWpTb_5\ӛg|u_Ի)'\(2KقQowJTgI"45ʺugVGc9w1)`.,6 LbμA~ .; Ga^{;K_`>-~Yl9<)ZF@0Exp7 d6-u}r\2VQHic}s?t"4mI{P"Z[:e>_ d>Jidc$RkR@w@I~cS mWg=-M5Cri1 o#P=1cUt+sͣt2cvfR5>Ҡi3OO+]{Tmv0"v3vMvAk:lIJl!01*`i"T9z\tr'e(1&Ӛ#F yin;r;J:&u8u1G \A8\&&p\d7 0)*].g_TN/58X+M{C V9h4'Q{1,W4΋L~6`VPLƛmEi*+h{E:n9eb( ?F/ ]Wl8=dR͔;Tq0?=f5Bcv'G Epl|8E@B:+͠ i>]Ƃ23@~gѺteP. !т8 W:e3u^j}$ᬒÖI>xV.n:l5yY0mgf{*K@1:UVjYPvsS\=ϴNړBoh".>mLϲFL>-[G'+CmsD?d񲀚t/JeQr氥 -LGÓa)1Lu+X֥77%Er$Ǐg`KA7z( ~B(_',(m$jb9%uC bG:dHӘ&rX$xEe!]&PʅD A$RG% f#%DqpD 0+@S@tǕ)8jaj0=A3%jLE\ɑN*5k'~lT3\:~]vo!NBIc%Wㆼ?Yhv yċHFx# x,wy?K~~j eΉ }C.tjf>XvO+wBV LoPjXѳY_%>_ߠ|Sc1Y/~_URD3[p;ս?\O9IVxX2'5RKSج/Ľ]5}RŜuh*( VeiF68|FJ- NG0`\ v-ŲRָvi5sxE0[eRR0Lc:Y%tɈ|]?"qܴ7e&gPi=NYv>qv*ē@6Zy/y* ێy*Q`EEqk0cgKSG}/.Ni[ٷN{/x\;`#LP} ) >yqHG.9${5&2Z^\h 3P4d6ʙ8:\h8 'U7Qbqk$ZͯMi0<\k8pEGե.fg\(}SX_%-b?'xffrpf11WxmVw4>d ExDV2;-h0؆%Χo Úcr[b5rE+Xҿ*.qQM[ɵ$wj~Uv,uT Yh0&dB!@.d(V@9;MuJqI kT[-{9Ĕ2е=*G'"[+ M|Ȗ)t׋яN=%r0q6 ᢪE}pa,}Bԯ^"v)-9*Fq xo[ެsq[>)UJZLM9;5.R[ mÇO vNڊ᳓ycH(4yx"{9' MIAOk2(F!d 4vPXF{ӿe›OYâ BoލDêf>hPGLy^tQO 5˰Psϓ󑑯3Ҕ^vqckssF?"t `'㬢tAyDK V+BrkЄ??0Boْ#,8lvWmX!:!#5Cp`'U҉rM&kh -|mB}Kq2ɠF&!%/j?T gIcNȼ <`i=Buf~H\7ΐtgLhɼ\N% ~Q[KwN1߻zƗxM%6IaYcf6]B6g*B/h6I0UᇰMN[8~8Ou k6%S=M` :H,m$s,'GtDFyJ(٫7Cԡ `}׬OѢ_> RJ!'yfqq)[F/[P]0{աd=mіBx3%ewFi& I bEdmGddU:;*t<,Kid(a ؘ!/|Hn)3, M  *~Ϩq'Si7'A _/ v{u4n.]~)l=Ե=Bv;[ko*iR4*{EQx1!3":nśSҋ9M&Ekgiɣe5O ږߒ ojhA{! 1?iXϻy9sH1#赔7 F)<ŗ f2lD}-EE_9KsaHg{sjCT<%DxIFH{^ C{{§m3MÕ15|g~!~$É@tz!n)ZgW1Ya _ڀNyEChrā[U݋ ur]Qʛ@!n5H|_sc$Dp!!^ Y*&03)qI\[SmX=2-jlNV{Z06lA3Y=|_9 *P֮!j#ն@?`Nxqf]{{C3ݖk! Qg OO^T~ZhK"A<+s2#k8=ݺ0MϖC W/i nPC:N_2Pu~gL" guHF_:_DMT @LVc ǸSbॸ,?{G֒ F[ &# -o]1i6λf@]򫬾܌^jffHV@Cҙ*؃ÿH2 e74/"KDdgφ 1rsPsǣ2\l6ݜMD0DH}D #@,{Y?6~tp_%[}VrjsHHs$vm" 6'pT+k_(vۺXY"%wȓWю[@84Q`R2 /"Yu'4BCrot'0":+dt( ]G3Ѹ=Y|Ǿ/aג7u+x;Qx/h)t\!!1&89>J)KEGlG|9_mU6FYЦr*Vܷ=cSGU0OV<舻Wf_9X:H˵xII)|6I9[|t5V U0b&2lFlX)up*~cgDžj7E>' _>ZL5_Tմ'c{]JG Pv4>qPtTJ#d5r+vK#!$ikd1 !|іly袦+KUIrbb}U!3:Ǭytd:79Z L1[W_o3vH/#f|YT?Ixk5gj01Y7l˂՝#47=mElKj}gTd=qké`aX/C&ۛjf3@@q˦PWD4o(Ƶ[cjQǽvmS o> ڕA]1:ӧQ?+FEJtjg5Ғ{&ZIo$j!rCN:2.}j|eQb|JS[8儨O)*}hǹye 8_d/l<$,GMMkO@KEe9K xZ W%atgZ,բfh*i~v(TkZ4sN:[%q/*A޶\6Y|E5bKd Ɩl X;2fe۩bTzLȹ 6 e[PM;P@ŷ{ 7VY죐d +b55zw ,;0m闰!Pg,ᬯfNjLCJfNnMy&>>nysĨdiJF >&%ٌq{`m=am' \rL|V6H&75& 4basE՝/2vh=(I3Q,V}3jȀٟv>.RfFy17Bt,r,}Ur,SǓbD̊Bż6GªMh _5%45D*-$q AiNft&kHŊ/0 чGksvVDhۨ)uuzqrgbQb;]Z1)R|H(`+_Ln(<};:l+­=j}i ;['eBlC^|U2rׯ-V򥮀VcvOBpA+w>,|Tr,E픑X&1. };=ļ&x1zHv$z,{9qe<7h?WkqTO)l$. o601~Jt`ALtV];*GaRsRwWLzB ]' ."z#|<+,J%PFRE0?N@BSCg8E{p|/)u$9jH | ׻V%~2.01?֍'9oE-ZO7pu UDIORW;dB`uFUdȌ\L9V"[tA  te RVN5';up[z JUcz!x|uquPBg5=3Cd&{g^o.ׄrY|ܒgD'2,u S ꓝϋomYRdh0LوyYmm`L&-B@!$' ێfxMI7ۅĎ)))HN02.3"l瘫-p2c/P콀FV%y[3f_65s^1Cã>N[v4܆ч_=}1~ _i==kKC6Dƽg4 %ZXp jD' >'D8Bq-jTZOj-N&t;Z:]}e)OOY?_!OVRH5iś] 3כg>ѩn BK* 4WMYKe`5٘'M7 ut|¨m A[ jʷC>)o(ď>̲-c sI%}Qfɔ)6/!{Zh72.D?ݑvvjܴߺEU 9mX%A @#x[Y:q^DPiCYXZ襔a&$hy:vL` :0!~d;$"1_5SJwn!pmm=`# .$L'pepe(VuA*9 ðwA\Hٹ(SA:ލܩ]`W H?y#6fmhmYaZk,m2k?l?DTt)G?+D .c3K56k=p:7f m)b23 :1;\:ֶHU7ږW+/'iMIݥ&K QʱkWbԱQVv o3. BPx8;LS+[Cڸ@URh@xz{\2m;bClI8R8@q7~y=䪗(b@đQ$zwV؍b׸={^Dhh5S6J =*{l)o2䇥*]oચJP]Fl:לf"x̊+7NszF9a) 2±nz }7:r>271e/` 9xe9~!b"ʠz'ylbWujF@1eW H&!egh Yq0-Sdߥ:"wwBPˊ6X T_$Mhi+pQ0'sb!cFDHn]򀋉1&wKoI Wv۷U;Xni!yU7[e/'ɧWd8fg0˫, ט"4WPb>5h|"׬('gY޽"qҦn>vJO1KpG'}kkZ~3o$3~6t)G%SiyoU7uZq~N&*-ZzpNoG3 }J^Iq]tsӏz=c*P,=TyBn(O頁$ɻ[<8(>Uy|팈UYfbKj;˳Aː'^Bsc- 31u:#a/M]҆޽G3+I_EV>]K]5 V/x8WódO#m-L\/}z={ 0`eBtJI nÒ %/0ql,u`\ yWjp䃃i& 3{w }I=]l1T QS` jۥs5?F  n%/x7!ES ^`]T,gPnlH͕HW˳F{DzۭJ|X!PyAj#$PLi#)`[;Uxytx]JiW+{Z'ެZhAH/Ko:>_0SORq@Ӗ عH7N~߮v@+2HiRLOծH17V"sDsZItg*u6(;x];'ԱQ 19e7Wj] /"Ĉ~?:HA]P O`~NE׿WB7[?\ +OpZf$Zl ';b&_BӾtb͢RPeS3U"#ހYN3E/cUU`vKUq Nkiav9ɉ L9 K.Ak0`e,M o . 1,L-V@E'Ҫ([ܨ+f'gz4eO6 ph=.9k{mt@D45-e,|| nŁ` [ϤrN?xX?gn{NP[x\$eS NBc!HC W)r?Rچ-M/E!bѕf{'~o{3  NJ[/=p\mʵ_3>T'3Bb<,5ӛdw+-pM+:pF5Uվav0KX052ļ 64+4˵\$ɒA/ Nmג#'k6=9\`U^#0d\=*γ@51܅U S%X=u°OGӖy)O  /:#դpoG=4p:aZDDVzn.5JzJu|m4R3?%fV_rƛ Iݖ\}z-0&J_|Y `649Z?$7?iwarN| ـ&w|d4qf11kuf\(+$ -Gۘ4YΪ}ʭG[L1T % 1# 3o1rRꌟ,0{eŧ4O^c+ B-+q=ʸ3Mvj!~Ў|֫#XeSV2rŽ`ܘb@{aIFNC㯘]{ `Z q/bؚ_K6Yݩaλ@qQV!ډLTA~Rɝ~zGn6r,m(;5*DkiYXXY0㹤2n 9_O_մ䚃DQXo P\jzs{^u a<QIEFL TlPJά9WN$1KW_26Ndav @gA+j+0ѣff'7VIan~^W4  0,b*A`hc+sn ݃*\87L""]LqTx %!T_!쇯9dsL_D, s Sm,zcA]>dg1Uza] Rm(Z8QΚ Nӧ% %7Ed|@NgJYĵvIcpSbζ>p{ IUgP \߳`9"0u6/‘àUPKBډH`}d"e/Mz)-Ƹ>N"U| 3EHі)e0Zww( hq`gqH^ǿbO`2z` "Zѡj&C;*'0H. qX_S?'ХͳvW×Tl*Pt\- ZS>obғk SwiZ+Z TBEN^+)l*&&Z4`J)qxR~prtd_.B$Q~B6j[Y uEta}œ@נf4#yux*: 5,SG.ѸDK6a1і>ohI'A,\kLPg)@] _>&H?NK[Ӭ"3tJNW꺞d#`s3`džf *Ҹ[Ka4i|]A0\uf q](`V2!J %X2n^)qZ&$IHn9a;gyЦT5#ǟI۳, *k7xz1G(6-̓)0q^jpBl/j]wHxvNBMAͬ@Z*t s:SmP3fM__9:D@\|?L,VDrP˜+SY7B3qTCQk,A1NT<+j\{X,#qω9 >c}O諷"ڶY I#qAT* 8 b6E&%︗ 7wZf$B-g"ttȢTgRSy6Y%'v}\%<&r hEvKʎIVpaPN}ErBiJN! ˕k\(>3lK3%JDY [NM<E+: k9LLN7׼BϦ+HWK5]^1kn(EQ.V6JP<ntun4p'еStJ可jwGX04X_VD6#IF&xzzCqUų3792T;5>cIN.#ڎ*?qb7/MZ Ĵ+\Y'pN`۸ZV ADMy qֽ:ܗi9*( [Qv,3UF^&cXR>a+`L3PD^C4W.+&$ 5ɣ1d?B.X4oQl%P%}ssFM#DyT^(Yx Kȁ.-RX wEoN,?gft_^+ _+/9&r ?)'afm6 ͂?ƒh!oj3=&NVɨ[L+|sqn$y. /$sHFuGzAl(uO;ϟݜ>aἸJ]U>~x0L|v^1 dVd't6]ދ|1v׏"? LA /8gdTN'jǫr%GOt`HҨ>@h;s帄K|ɸlk {Y=;[Ei'&2~=4k'l~ #m~(i}ABkW}'AKTF.pr|7V)sn,3PYWlׁO/O5E{hqFbrЗ2݅Z{`Z\!%/I+:̡8b.Wu6$[# @P,:ɽ !Ƌ-t^ĖCW4hЅہh$>ǙM~M9xYd[,szjy]B}mE1M#zv[3W5!o*#b1KS՜h+T8ރt0s8ǤRm~zf><ӛj!ՌP&cnTF$ nY/hd 8iM6x 񶪷O"/R@Ckdg@&=V{a)U= AM6/NĔaæs }NΥ$ iN0yT턔]B5p#x 0>?<2N,tXٝT풫h=Yܰ/XP*4U!f#%SЊoU;~65*Mہ)5*)". IƅֽmozάPr38HzTܟ+ΉeK}ёu7"$&}t{c%_}Oի\jtT%SX0wθ бlrga7iQm1ݻ⵸'[ND>.,7x!\EL[dYU-' eS'Vab_,hÌ8_ `gTB6AXA^΀π_O}5\ beMJ#:vC}E!fĖeЉhQ"tf 0[ >}k6>aGZd+K'?xF% jA1\C۵l&YJX=`i+w) YQfSm͜l=-thZs ?Pe79\,X`"$+$Sq *e9*ky%N#65 4pU .NA{Ydcqn5*V؛7% **Og/18["Er3]jHY5ISj(xJ4U{<yIU6PG3zE>=TXSPז Z̊K5t-MZ暠M :0%'ĝrw5!S_ b8? A7z_U\ ^ z6d)L̞gs#ODz]-7L^tj\GK`W(-F<~Žchrp9/= ziQ"bg4,b ꌖIsl-oT$5aq JCFK^E`$ d=ڱkHD6~08~1f< 41QƑS{A^eG8?!h%0y O-]hcOIT sx:sxWbl:_GU]356c]Zjh~|!f v>PN.uq4 q$ ?2ѪJv83H,lRNH@@C:z #cw~YQ$_s֎ߨ$Nd^˩M7AI|h)F}$wOOտ =]u)aP!6 ͼ|*%?Ju\#j71}RbE]Om{hm<Üz̎ kҹ8} 5X7Ϡ.&rC_D=FB>",,776Yǚ$gctX *^t06 F,y__Ɗm6Xkнhe94B&NO}skimMu%f!йln?[ ''Rt^6av{Zޫu 9(Fש7y{ɦ2-#dA3DxISCrfo:mPNbEJߡI|UVތT)Q> wئ,կn/1Ja6?t#Jr 3NN9zvEcO66 ,XױhBc QBh(ki[}߫~Wr_4h7k՚Ni>CP]8hˣN-nC27Fw^e)L2*804 `djOQvS /¯n0#rh%0ՠgd HcxLmj.=GUbHVn>)SMiHq\+*qq6.k@<\Z|(U˾xצVng!t)(X]GтCa}X! ?v4_FC*&%eU|$ ߩɻ[*!g1wB JPݧf}v/fY.))rH_~ k6rs{G?_scB_{3%* <⣘PQᠦ j9: IT )r[D(S@lsJn S!c54繬1S'.ypi>@J-Ed|@!2`И"b[eӷPu&NV1w\{T~fgK b0jVkU3[ m22VHRr.t26Gy"\G1Ur,)'pj4`$ dj[(ߺaJjP+G%$\ح,LeCadbx/XPc!nxd%L=o[ n8b8?(}w':}eifm f&Q 26|Q24XƿÎdFտVr Xx9}ؘ[k(܆ᡠAk" cDud]~"MQgp57WZ&!5[`,*Mid'bt; $/XJw}GScCKX8c l&0@ N߹Li,KKݥp3'0 YI ak9 &@KP_qA'GDw!s7YXtMx?](Ҷ;e0 f)[nNao[dk^R[&}L#X6Fk:p29V,"Soi&ܓ&LF ;;%@rx7p'\3xLm7S9H4&dMy9N)J=}sfm}pn',3h gZ*ghވ\s q=Y$} #U﬽.-+Ϻ!Rf4F{px%,I'xOas (jj pk liQ`454B'YQS]Fx$z=ȕk֙ɑIh׭ "ײ&o0:O {.Ts=ئ[`+eR 3z*ҧJ"r8c[47(o==ЬZJɝD((AsxU~r>|a:u: =! YG+ǦF5^J% Vsy꒡kV1I%2~P2>/~H:C-LU2|qQѭ(Z{*\¿$|niS6=Ϝ`.Y эtnA`Gc[p0(81s{2l\|wS\o/Rf4c!ry/Bʯ~A ?zu|mL8tʻ]x,($f'KO4>NAg^Ѱ\6^ )7_%+]JGvil|B*q2]>j]Ю ˎ09i+ACR󙔉Utm_ HTaаq3Dbۜᱫ , gœSz/D'W4@`ؗ' WH›s. Js2U<+ý}T$=o(Mɪΐ#N[sy]8la޿AWwi'0JDe{}TK<نYwԯ01jA1A|c|E bg`iL0Ulp~ ̫OW4U8OM,'s⧃xڊ;Z kwr^t }^z$̓D2owa?3wC; /<0&!ňJ=}ו/xd$ͷ :u?1Ϋ|ەx䪏)ϥ02W ײNOt{ 2eǝ=-ovXx&IK2&݂ ̢t&P}+a2Gdar!§!qtͦ6p"Xrt4KqΫmu[]tϱuqkKҞ8` #࠳VƾUG?fzsIIpщˊq_gcbq9ppqR']Y^{L8a^*yնc>aa,TEMK/uW6O,y1$ 1 V~ !Idqg%MeڠKqnPEsv}g-OtZPxF#.AsyvH>1z[uRkC5Fae^|t(RLFȪVnh-+t|mR46$<@*Gc"Vg|-WZ2ZjCE/Y#񪵫${d n۴mG\Qha*eBZy DgFQtזmyM}y 3[*bGxݏKU8n< &r6 ##1( l$T>T%J_ 4?j9?7k&E(ZYU LVo Uݙ-׺Ħna>P0+q*P -qS 3A <_@yc]l0mzWK.]OTx ]TlԠmґO-a}$$耉4N)Mo.]pQWC whsѼFaZq}d<udIA3T>%1@3U-6{W7z>1pe`BWܜeqL7RDQ}č,6M#V'k1r4W`/K) X "2B5H{8>J氿&%LTZ>c8/_]x+jF}prK JƇmތ~Sxa6p,}D1:%|02lqe^M*uovuSjϊkY/ESu:gmȢ-KԒ g>;rIf>&Q8J8* =sF402'|=C+ l֖T7;UI!ZZVRw1( }2]qx3PP!&1 ӅnQk̶ث؟ztQ/Y0lA`: 1O[VTi)7ptv x#H?/z_ 0 , !@ycno\PGkbi[T\Evppk -?DX dQuٳ{ŝ=/P?1s ey,QR\{n/u ~w;Zߊ,^WHZ3SsM q/[]~\ౄ"4r+&WRws彮̥i#D O=;zO`X3*ـ7EJ y:D]_ɏNaS0;!x@1XJwWU\klkÉngB}jɐͼ \7H>38 myJ(N>juZHP sE ZuL-UUd˕ %s.}ӋIŰ)ͦ3-`]nH|T!m|{(| o)A6JF@9U*aGx9;GA"d"-w{`jHh|OH 4!xjmC-NC) ?MA>IW.}II| ȮV, ;7*_Ax7H'Ϻ 4͢bHELrA0nR픆9{'؆W4s Y9_0g*ߖkȓOx]Aq<:~?9Zb|+eoNǂ¶Ȃ${ WwֽJMetO@kwZCs:./xͱN>8 r!S0^QCG@\ G{lS&yڍmj'F+Q/.τ'rx/HQ%{$./|po7^../@yN u$% p{#NJĥyYUOUA׹97"j2MAS*áY9%7HΦO2uutД;[{, LP %B1 ՠѩ\&s'_rg3[ȷ7w׃@]LF &!'ʃQ4%Н}%#9/|s"ؕk\C#,[֌ԠNP ~zp$tfϟ Ysu,01w96kP,BY;vE=1S?zLЬ-тevOo.!WAs[Nl.:bdzJ#GࡣuO=[.],C]7RH=007]%of [J^2*,},W7]߯{MԤc?1@W=M"-D-Bc,>Xwd.TYUك45keBFʍ"/Q\aFƂ?!,fcR[x'y `AX%7@or ~$#_%yzt)B5'^3_ !NOZ (,*Z|OxbQN?s$f)c@3A9XPWێ~+jeF t3 I "W]7HE߆uqHs# u5^ 9#x:ܬG-Ij )fN4?#k-w9ZЅ[H^qMƟǽ)OsqӇ̔~@/cDP4 `g'.<,$(wH.6xy$R@!@sV 6ǁx(ae>y(=aM  ~Vb9z- L Z(d,g%C<G0Iv@SwB)8IbJn$_]&%L oqqm$` 厂Q|8I2Qۈa2ˏuuy^l-  |?G׉}d1H缕8A? 9F:CA ]r1Mo 4u]Z`C[P:TTmsQG -\Ag [7uq8glbn׊hq~- TISW+A4p ¯U?CJ&?O(b6Zޗd&kqd_nL7#u0Mٿ0<& 7I\XIt0ῑ&$*5+,] ChӓE2bBiWǵW>si^\A3Dn>G¼GN԰|v4"տΣe(57X\qϴ/3E |++ UurT GJ=ke#߄kNۘk ׾͜N<ںt 1j\!XVa X:Fh Wtm%35M9Ǯ#VQLp?o;4B7dL fLƞ){50OVq|XP% &q`iMRimK:BR3}ŁGnenaw#54*Ī7^Ghp;t٤2Ew~+΂uqDnhh3"ЦwGk+oXl")K ŏu p ^')z&&c}K? M8_km釋m+wa,,;nz2ӭӁhg>Hjş gꟗlm>= "p\X]yb/P'Z$[ce1ʕg,y!y>ϔ|0Z$ چmtin>i2[3'Ia3h`uƁQE5N/YuqQ4 cpE;/A%+pXaeXz9'3+P]]$,*譆Yx=(+zܺ7ȵ@N)k#lFYwV,lp7أD8} jyy|^- {CבKdZqP;?`3bޛuAEmMȿqbV:P,;ڤh%;'!X<2W%0Ku){b1<E \Gv.kWiSO_B=)R.gUot;7xGOZ؁Z@.mY"ǻ(@#EzB`D0Y4^ g^}3<Cc[2 gf;qb=L ;\P9j'ѢQ5"1*]j&>-n9_qG~O2MNnעݕ[DهJqҡlS4NÕj mqfQ9\գ4pM^b޽|pf$Y *\, ܐ ;q1$+0qjtM^CU~v+D_*~dlͶSgvRvT tj]sP bP331̸qA%J;FVR4&($Z*W0mPB:LD۶`H`/;>̟lz?$d,n|q 6D*5l0ctmOcݚ+fǁw)۰&^iͪs:d'K0$dgY=M] ,}y_A}s.ؕV[F:?O?ю-igh9X0GLq!ZwI8Tnd^X䪳ˮwfU1`Kam6"MʏHoE {kI`!"OlCL\@]yR@[NM !㧻-<_`Cz)CL&y UCg`^?׹e#1n&+*l> P^n6}:ˇ<`R<̃'w,XUc:1m H!t͒GkKUдj!N(mlͪΘU&c78q#RSuhql/2jb*}f*f*]&FN,FxEJ|C6)_ 0F|f̈&)2=4 pe1BmJ)yS.IJsFN4NvXm_kMUFq@L b--u[,hs}GhQZ03-vX4A AR*ߜ3FpGMD^9H)mՙetXNTx /`1+v0&C5_g1*P0IڨV \ߤ;uEc~m_ \Uԥ& xDj{*h[<*Z#2j(+ &bm_-3Ҡ>xg{^[xhr/lMEb'z]$eW:+gMĝ^2/fi j͖0јF,V} p  3/N%r뛮g9S$y5B'G7V6 D\Fv^5vr+:D>Wl۵_u>ա:mfJ]|. &yTgF ‘*g iCOpCJ~;gu}a(F}Y3 l :"ɝAwq:d JPgp]b6aͧ^𶮸ѹ-3ӈ rs ٓ i-LfG#okR+q^*iCe\+5QۻT[Nk hO&J`- RUq0O!+ F (o_Qbߞ7| (b#^i?j2< |? +1?*&ՃPI ,& J15EOgC͜ls+IVmV<,)V6?FQb uըyl4Jlʈx4!2dR;^W3OYQ4BHtH$kw#Qq䤋jmu}rE5 q: E=e\ g-?ap;yLmCi3`^R/0+=OCռe^AY /Xз+ O0r4?4N>~0!XjH'?X%W^tiQo_9 swwN1l΋ K7o@ip]K9їAsEZN^k%r$c~V r>ۅm黑 uL.™z50tC&XܙmѮ]URE"y*8`ޚ|'p Z)^ ۊgeyNGZcǍkQ(L] ?oJ| ۯȨ9 ލ>NŲ Tuy%bЙҬHrX#Kx!"ɣ `:G#(:uJJzRJ"1%5XOzfgG5-I5y^ee\\շs0V ?PF-&w-A߻Ѥ;eC K00F=QKٙp&,saF ^ihB'²QYx Xj2ާa5=zhVfa-_Tcߢ^DP^YchAvi9. Xym6@_;D0^ΠӴ1eo41+Et$_5W9d5v# "?QM%9ǸТXuqzy`# rϻYYuK9!8E|X!U9W%A.rsr%٤<ve+Q2-'> -h /;;}$2U44rn,irSHB{(LDhWn _$+?aغcNU'ǫt j6{_Sh3,f+/|.bk`=e P5M%nβnk[z wZuNICusmKcߦ8LM(g~\*`KH齞ZxN\U;Uh';}Kmq }{A$|ԣnip4k%=LJgl(lHǬ+Ix2 q!'=-tWJ]l um"q0-QCph,>h@/8vpb9wO2ݝXKX&=(1T)wTw ,BQk~}M˩<}y]F^<_$0ݡ޵:F06RNE'L3+qk1@,ŬؤؑUT*]<`ZX{K$,~%{_| ӎcq#2ޚW+)+CR(A`0]u׎`Ү2^L)P~OzW-+=!`(6,n+Oht$h`qlWVTxRB?T"&%8W{UAD| AN5ڛ(}&xk"Nt~01C#d6OsvuN0޹gDȺs"NeaB6ʅgOw1 gzxug۷}^`A86r"J@:٥\┚E+1:'!hNBY>4&5S(kokǝVs>JMD"ա }n^--D0.%2T/p4XbcܦJy3혆{C+݋R/%t z͏yݛ+/muf7ڡ_);~5u3eVI6n&t,WfLi=M;ET]co^\ h렕s~8Y֪JD)(Z5>e$?򢵱>>i%(# 2 R܌@ {}`yuJޣ gng-%*::&xE X䬢1Ost!כw޻oauu וQ {"55ƒInTߨٳo J{5IؾE!CXe'pf='1Ykdzqɣ-J\bIw2kV1-Eq*4^NOU(`>U6$zXGBIend 0*Q>בJQCHϒS)1 Vr]sK7$6hEA@(< !Y=ο / N*9;i k8lf^`nOPaBB4;OMm ;;=lk8}|8<sU} 66:&'V4T$֊Ŏ .Vp)V!2z; Y{ǺSl&dqrfœ2+HWҨ̠d\f'iҸ턩]ćk%q0_j_NI=nW*n?g=KCJX#$0k:k%sڋ_A%LZ^H9F?DJ }i.aw}5da'֡SYy'|ƇoUPFQ)u 'D cأ[ !鎖 0?l\i˴0ODםKoVc! 9<<2.0B/le5HHk5Z>mVv'Ą7:Uxndz'bf0LyD]@U-U ѽw WN hl9Wpg\Qe JjW6"F@g&#G1ۋ?8jꮶ.{  xi AĦg)*[Ԗ6|E"2!^ޙwHgh 0o[y"bU?3sC"Fخ{|JUoCo_8Ŷi>%uNcn EAs\VKKjḓXBJLlrNЧ&/0 Z&E y6<2R ,6ȁfwM45= ,|n=X7VzC27N ܄Қ}LinPyFx%#~`nJf7 ʉ@jB0L s[sqefƂZ#KC$Љ(BcBt=#dA*Y݇; OJ8g_)L~Fcvm InOmBA5,VuЋ39zLq&%rsh:fWηL[7J(w#e=2' _>^ކ%(PY.Wg tHiZg,TV /g9=Swd|TQ!6𤉢K5)؈c&1$NΨuuP$[ rGѯ*u *&PBVO( 2 +\"kW 14ס1KwG\KEo viiPUuSS5H7&JwJS|.\g^\:ЉT$ʾD5d᠐h"/ߍ %κ֛4Hγyf-ĹX2SӇwL%렖w|:i'zDһ ݎωKC~$/O;%Z^ FشhS6@i,T<}p YȌ=?hos'w{>-ԷawUʵ=mϲO[;֏Gj^&uy3.ȥ_=#u (gBORFSs/p KN,Gz&1 pN<~'U+: cfu.- "ҝ_LDّ G>&BˠjL P*ɦxQ1QKQg:om{F mxZ9-ҖğoT#"nvy޼ٓ6S{U]xiiWKYu@ku'UgL A9S/S.N^?&ዿ^{"ek ɗ̥1GQ⎞N7\=GX;#YWA EX9aq1m\G]Wr1w0W]=tg`lE'yMwzIu?u! F`m4򋭱L^Ҡ> )P[c>;:po\"< /O=)EcŽ/ h[ytilzx;i@ /Y}3uU8@h_'׿(HMUMQheIm3;Mozw ;܃ XwK4[YJ3XXun1OEE[9+F9][Z Ⱥ&s5Stv~,D :)Nm'ةÂ{z*#z ZI<,ׂ)>j%j6ۢ?L ,!vik+5^EdؕhKyMNl'f_A\rmA_ )QFdpmZۚԫ!ow"C[IؐmQ rBN7Ԁ@;@f4G Ko`FFο]h)\q=OÉ̂Ro>QI H( ր+eAR0 ӥ,t9n? ~ sy*ni}U?+$Tzh, u DeX^% Y'9Yuk#s 8bOLd}?ohf kFk'=yd͒Xσ@3 rGk=Ee.K=f4p/=X)9ʷљY#E6&}:Ń1nE0Ny7tKRv!%;sfJwᭀ_@?\ kS=|ֻړQާy!z;5oM=:SٻҖR THT A.U3d{Gi\j@/ dGݍW`LC>+<Ÿ=6۠jT 51h#2. O{5g-E '?|i=8oh Ar7n V|cG(L;= b-A@ǼHIl[Za ΀n.@l仞Ro Xת%S\L(ǡ;PפG†s\?N@\"Fy .޵yDwBGbL6VC&R#\SC/J9+AzԳī傜Y8פoթbir s~ L5UA|?hlKD.NkL,g+#bYp~'GsR4it AP#fr"G}.oV^b)GsUߤL |:#ۜ,OdCnibjDMY;Vn4f#i;yv&İ F&#,ؽQ=]}s.A^@EaᬮOKV^FE*$*fV$yS2V'Aի[)N.fwdR b3;#i!-*5$zؠE)[me\%/ByMG6RAjUWQ`!Zn4;zSz7nVT|N5Hp:_}c- ytHMA=Bx:UoRnٱx+\{l"W:!m5zƪC-+k?/1eis+5.]Hh0[-GȀժE_0]%o#5d>#4Z`ug|/]S00T);Vz6+I;l%4{y=Af}=gL^%9 *$18e^'LTiȶʣC`M6}ÝVI" $wO`}E]lrG-r%L #/} Et3Id{fu&M0wX5 cvp6<6xRaVQiሸ+L$ YwXrTq`Io&55j˻Q8rrQ8m7Aå:"ucR=Q. VUY@_ַ"Q>HjdiA-q/_-^Ψio )Zyz`VG X&PTAlݒ '#pYZ?pGc1@ب "?p0trekdUpB䴜jqzw'm?%VrSbhH0cl‹~nf>ˊ5U!?!VƎ4W('7/G@?+}"YU7;ȇ =\)7$Eih_@œM}Y: udbc͂bgGBZ8RWn >n\뀀ɴwM9DY,>pQٿ*anr#PnO;H8\̺ e鏼tAdJlF0sxYJܚ|԰I?/M[k*ak [^̷8$vrLK bF8q$U߄g.LZҼJB' @x]FhdSJfM0GTB,ԺBAʪ{ M 4bCuˡ9ߢ0j1Hː-=&@x9?K˨ݐj O) C?uʓv0[]sWUy 8n<4 Nf|hlDL!+?wŞ58)QJqz/{f2Z?S7زS&n[Cx_w0TjB)28'y[ DZ0f~&e=44d2?BojneYkw.p/Otâ{%ml;0wRTs')EKn{j%xhr_w v <+Džl+~9ELoenh$ݘ#C^n#egB-Jz{`4)N5/~zJ-zzQ2hܫ"(JȂ$exDa_kRV&NV-|_Epi}6@<NO`\p# թ?L˃T(&u&C?b UvCʍJEzkW]Vܓ&a0 gfI ՂnAIJ N샐MyB'3pYR*l]3'HNbp0>";%k YPf-MƶG,`ߢt\̣,[|cE~J}|Š9,njaD"&fī`ƔC.V1<$PR\,iɞH{)O ;uwac\#vrp3Gf/L[jሊ;ckv9cx Qv:Vˏd8y#3y~ K:/$7 {gmJ4! }v!=8q՛%SmE~#2:J+D2|!Xv=KY Ӡz4&ªoH*/J"<% Y ԥ.Rb#{x Al*az =t}<7b9PorӁN} 0;)nþJ2!ݝ6,"c?/,ɂ92c\l}E")ľ ~C>1!LREqgMֆTe0.v~b.tb@Y_XazreGqN |]- ˹ *2 o.XnrRjaN /kD.s3xGQo5\fʙmY>ߕ1妙zP䆖A{MR<| e7 9*d6wl"K, #.MH-J+PU1vC4HKקeبTd XFbx٘k!{%8oclTeFc-œհ,H  |plrR$x &vl:2mf5-*KPao̶`RFɌ!S:28|«IytMlOiI%^fjHS J i]`\Ъ˜jCGAv^XoV^wtt\BY=v^[܅G1} #ʡο_)z!1MKSQ9jEv"if ^\?ul/&;T1Lbq[o>)|Ga`6|:ԙB*5y`gVTQzmMwDäk1XJX!@yxF3XK7伄6rg;xjwL(Rw+^Ip4\k?N&0i6|ͫ (j)[ ZA$32XxQ.I^f/HNN<S5IFa#/ӿöH,sGuf [ a;} ɦxճMl:Q 3A%_Yb==qGH޺=,!Do.')p+zC K Ub-DW; ?aƆDm4aU盪@:Yc/$V#iigf6:#Z_!..I~j=0ˆo16;$l(c{q$*MjaCe/;GQ_sA;u-.kX V`f,N) N)]x ?N͸JuqhD!\|^Cc+tSMP1fd&2)}3l6rC^ ip!>_oAMbR5P> WsuQ8ipOL~"\+$eOtz׵WZG\IOIHv0-9gTǿh38Ȏ1⹫S9p>| -yiYZrs <܃rn]t]p' 1u ׌֝T$AZZjR7Yq^D8+u .&괐CAtHZf>/(L例d=yX${V)p( H? f<ѓb@)JN 􈯅5>;>Qq Qڈ^'@jM$g dBp<+_WkD1K3k+F=XTi'6a,z|?ҡ t}%m9ByŜ8zL=_kaSoTݭo2A|na]3;m+b~ !߬&"P\GgyPbs(̈́Kj6~ W0M؁ *8%3 ɶ:QdިX=čl9IbGR>ɿ%\Wg@z#GTp=˾+6Z@9[WQ,+󌲡t^Z'eA AFjFQ "U ,lq%=n1QUo^J (B{V@·;CCB)^0#V߫s򯔤2æWU2tS/mzlC {S7}]$'WI -{Sw.y|'!:nM5Y8?5QD]Ck-n tqsHTQ=⧨ @*غ>U)c<ؚfaLҍ;Vêu*|PHC J/r*5E&uo;$'' bJ+f/ApzC <-MA1!{1Ɠ6 b0ud1< +گ c >MC#K$ey@of!Fm) @%7[?EqQ !yj)R [P% 3"yU^o+P"ňJ4Mƃ~my 0N+T!pKSeMc5ՌnoTC)-p#"ȋ~GJa1yt!z҅fX!l+ք{tt S)sx 1LSvY-.Yov{lhsIɑN୥"P'Wd4It娊~29"ƯgR@ ػo YM !kKH T k1*Fr+FTHP]{dh ['}Z5߆D9mbuSWܳ׀>ZuRI [Y^_ѽ "bt$b83cFsg8Dbe(f魲] UkYssu/U\qDBL>0氨mYgc55'U~$X@GN=w$⨇uf!B o4- ëyқ%ռYo VFB"enE-O-ZP(`06BC@K>e@8{5wמ'I&'dAfft]3A9%,}cxxǃK G\)& G}w}5  TlbZ1gpCv/h vfMd^1蚲r`<&nB d.2oJ-9a]Π.>Ţ<]D9'D3^*4 r_6wt6i.o BMe~_alԫ{L-7 aԵ`&4V)T{hr+ZU{u8ϳ/šosGͰJKI>Q0O^(Yc܂l-;qq2XJuXMvP@@JGQ/xχ"x8wwgT"׵%>ydHÄ1f4לjGɄVU^A~\I8J0GԿ̌U2OCSXљDEr@h>K!zd#>(=ɫǕ݄ķmBeut&euZg H.jex`#0XSP}H'>3u~?e)ůa:8"+cd!r)D"e ͣa*93ݍ6\;]qu)#$m Lh4]%075cpLu (#<\:h<&ki1WSmIpr/%џVɌ_ko; `M8@ ɂ*| _?tՍAئ:g_3zr`5IP[CX0M/eK{"b@>|tD%F>v ~G0+H)^\O /n p,_MFX/YStncYSů;,/E4gR6uy^-2h8qd _-Je4SJz˲QwwO5װo#f~mB^!A|zB׏6u Y1/m8Y. a]3lTAJUr uzyr.;˟|Wܨn_TuNTtI[٬ [ס"JOV!p+DaYUN g"u7t=X!zwId; t.dMH(.Ē]LkAC i޿yf:z|BS41TS)!_SgB g=Wct܆|_z[xDY[^<7V6jĿ{ѡu"‡aԐpu`#~&gM&Ԡ\I@$.lew[49o[G֖grWt<,{Hf !EWNwv;"!rT΄bҌU{Da}zm큥$<ׄd8u'ljIG[7^"yBh޸=%$~t;"Ԯu2rR:4\v;2f1'_kjxźgQcp`cn O>I 7m%wrJ#tM{dPa)AZqI ~pjF:.?g̲/?!ÔKñ6dӫ# ((CL2(3yJ _gޚo17/.?Cr؉qǯX} 4'IbKHU*8 X<4KatPE0U)kUpG}9MO\)Woxk9(Gw~Aw{0-!_PB]w4z񨼸s6fS0{}縨?cUL2dR];Lp hk\ R=f՞D\.4h䤆>4M$0|*уn m8Cgg*GR}4U7dpQw|Bv`}/6 b 4 jmE^' L 3e[n⠫\]/e zqA90uBKƆ_%C; YrSX@CwR9X@+w?Zn |0-ƯT6o&m(Wjsn6]+soO[Ǒ !kǒqBJG]Ca1/D+a1үw81 $foZZ.`q_'gAƻ>a(Mƌy(~ݳQXco~SA\g iʜF=.c\8N7;A#\+fnߚBlD_glL5ҵli(69ݐn0O2)Y"*Kgߵn melzɶU,#LEBVWKk 8jxO\y ;U.P'7' 1yu42* =@x}b,:㐜y)>$fl :ؤ(xɅFϕ{lSt2Hjh9լͯyCɪDUBgxU2LD(Y#F 2xY+LAK,W@s\ZIl C)j"&P6hL~^/{"hTOL*Z.s ;oǣdyπ/+0ةݒx): l^'~eCH'2F˸aM?6in)0iz maGW@[eeJ3c@e|I.4p;ߛgYO 9=oYq) Ń顀!IhbOT}08rUISTH߾1*IH J*ǚ>[f'K}_Li h 38XzAQX}ö\gY *Dq`T4|(&Sz2|3Jbo`2!.2}F#3g" Rd{)- eP=XudnRqNX y1,#,}Q$S'M gH z }0iUY5XF}K"h@0P-lgF`򂰐M16eρ bUD]la6~,]fJ((ۯVnE9\I<WCxsiDaoL# 1~Vn7w艖ۋYA u)j9Wރ9{qyc '["M62m4@לZ2VF;p_QIpHQ #]b ' ' zY?1ŰB޻Ou,+/k+#"6 A0{JM4.4ʆ7Hm Cq;= # |I\+NWYw‹ ~@e2LK 믊 EƱ J0zt %x`\ኛwv6I<夞,t]ՎIPgJCM)b q U) /a-Z7<8'3<5[d `E0Dq߀UEK*`Q& , j<^*iɸHȻ{P P٥xܔ(Fkc|h,q4?)hCPr%R?@իg l 2wĔGuԚ74S%3O[`gj%0FmIeA}J2ؗhmR15YЬ׊sW I%H蚎hc)I+ 4){+r2j=?,#^u3xa;K"_` E;^pNP @HN7 dR~)a. ޭ%mA(4c䈫ژj|&'\`)-dJM%fARv*A6KFgѻ Ql~M7LC_cF+έHgp;hϝGLZ<1=RUCr4䇃:+cU} g3uв * x8:l,#!k .w?#`'^)*5y)pzvl?β;mPGAƷȎQa:(⋬mԄvpu%i 7{$1h$^/Ob`O>"tê⬘IAT&8|˘vXbfNy(YxާOKPku"V0CoKSge\ y@`WUcJt6W%ah5trcll?0E1f9vi #-:](޹q]5| ^9w*䑱re@snQxуt&%_jc 71}󏐏J|f]`A1H! T d|jńAY/8@f2o$W_\b4ޥ0(ǦeP=bDH>6~ ;sʖ_wG?Dbc/ Z`wMMROzr|bwt LJe9,ݹUyL$5IB]B/uz}.,\>]|#aCzDkhb1g 4䶆Oo4/NSfjh/u;H>ÂGՙ{]!u0z C6g,buЯ5~rwn´"|[; oUȇ';0$LBFO \- QqLMB' @o`*I\^ܓ4P? ZxNC4AҤ6KP՞q)WyFGH `+JKg݃8ViأmB%͞¦Nӯ=hz5f Lz+2%vk0]]?(̗" %HrG-9 \hI!}4}ϥ/9c;? }Ay:W؀B`{[ZSz$ܨT%w|Э.u=\0sޅTdYQҥN5m*kGLσ.tgثA8`hHada$ 0?gr [l/$fj w`%lQvHOnl)p_%/'L$rה@XZ&A9tL<оs+r&(зL> V'>덋ՐDH .+k$^}WPGΧ١&ocjRZuӡNJKrz6ÆA3xO"YnT1]ODk)^whH\k3;gjycH T7oa`moVB;ZnH9G@bmL™,NСoĺE.2,qۗIJ ]S7_ ߙ9- 9-0OicY&&?wx-j]#;ve5a{fq^hÚ~C^OR *'B̿M S}/@\ Dâ{ xO Pm/w4I| \r-.LX4_?="l$H{h|a/@CpICVhnBQ tYҦ.8&.j9Zss.,WY 4]:,1Y\c;"w4q5 Бs,V`[Ha Nowu\\+DLRpz-@=cyTP:dhL~Mf g y bh cZO"t(u)eF q̉P7خ[Ui^]숅{?+ }B UF֮7uL!*ԙ_N ^AHN-2>O'S$Ȼd{ h;;mV(>!'m煅J>+85F-1"mKw7˷4T T50an XQYH70z\32B7(Όu S /  m5f /=UW޴No?ĖO+A}<+p$BNe[Uw/BaEx R")^}eds~c*ɶ|hW+_bm P >̳ Fq?.ou쳐_ i3I-A !LIl!ШRoP >r<9f"M^ Kzq)ﶺ\>Vj9h#:fO-]^'@ly:ߕQ>CMfW2]܁ ܌ʕ7OģCygU8^!h!*[om_K?J pgFOJEOkYcI`8X׉ g˛&ԋyY3TkrSě'$k(Կt}&GX}TNm'ܥͷQߙosU!s; LܥeCU\3sPhskAPH@)se$+ uӎar!Q*b_L+kLhݍgRkX!U>o)"_9ɽ`y/XmXrZu:;mQJ᳠H VRɷHep'uuMjL%Axa?P X8kCsS#zLZTt+K}'ֽO՜ɲ~`,'r4q~Fw zV ny",A]ǒ߰zxqn6tC㟂?ٞJY( &D1.hQTQ66sJ~#~hXc3ʀ%(EnOPCSwrk3Uo8cꌝb^W}Hongp !H%5Ո ~b~Z4ڐ)nx[8eմh%2Јw;\͢[[uI 'C(3ͥtڊM,?DW/!AQ؀ Lf+H,K~M>Ap8@w8~܈xG,܆3e+,ZhU"8chdd$ѡ3zRvTQ(hrfZ ZUryktAW2/S/sD[ڜV1$(%tVRt0?caF 3LZE tf)"ޏ ?K/d#jF|hD*ګq_B-ϑ--2F̟+CW/4MLK*:?BlN ƪ~G6bx\E ,Ћ#`mԉ3g1'- ~rz԰8ީrqck5/R+C_^Ǩ(jh;i[s +L/TMuRL;(bfԮ!9~U5LV9Ǵcég1BvMB#L%,GY@7[q~5aF:#Z>J s LDNߴni~&V`^"޳ڇ9X< PIahV ^ѕrVa dyY k o@#?l4[=6"BX7l9DD$zʫ.p߆7r:ǭPWgK2aP$#^l3pye-fu5SԜe$N\01NMTxlKXY$M!j[6fYTig6ܤ7hX)ER7*ϋ,r RC"rG牴?pGX]qQZqlE2(R%,6mA 6҄VB(nn,Zu,gL-_[&qFNP[FM6m5ȓA#ʂEpؾ`5Ga1O((-eb{ _:gw f&P\U}hQAwS$0]/7tƃw.U͈xsynq܀0j|n^[.zF"9Nlqm3=]ô e< %\MJɨՅ CW*ѹ7*eM!Xycҝh8؈|1 9ϣAwˇsg4(uM(-EC42Vf*tQ$óf'6r}˜J{4ɿ"r9B36pqi{h8e_R`hg^ ﮣ\Hjz4\"Tu~js9.F : \O{Jgf C/@Lgg(cӤ?lÚui7PLlw\NK)8أCcl]Z׸fӃ12}l!q : lkxܚԀm kʠ}k7 p)|A4>"8V$ԑ vP%&մ $1{uTb<gl&lU;ntRtd_3*oKvK@y2\E;m- 4{RpǿA~ط4}yIGKLa ͧ殴]eyC:;~WԋJu96$+g3# n +I[GT؜"M#}IKw\.ҩٷ-lJ|?i+P@0>C'%*c ȾH?>T"xN'?#, Q׿@``~j,ļ,,Z{Xi-y)Tim"7fn.( Nz kȮi\_"RQ :6 T@f>G3AV($X9|^`),I ZɘeIk qHdE]/azfMzHɑT\$Z; b޾i`.3L|_ۈfE/!Նh-JlwF3wz)%:?4iQnMM9@X"%sG5G_zg2k곀S+.q?N:d WC }>`[oq¥{ |qC"oa5z̓8td//w>"<};6Q!4N]i&XDn*pAo?*E\yp7ѿ:.wu5'ߴcnٰ,f}`ٞF`W7zװ2"._cgr|ޏY+/hXn:)Lܳf)d"v4O@ 8&|+w;M niB;f,Hꎂ#V1}P'M3r`DV-p@φ-Є2&חYmڂXV\S6hGPۘ[PIj?K7y ke rhgg҈Oyq=}ۡJu=wCAn+G-J0i_O GB||m1:znLZvL&A"]?3i>e8LF(Z&;l]0Ĺ$O;ѵzW߽G'(!EBI\D u.R*{샫YDQk{Ü`W6ں t Cn^ڙPSlxbc ɂfJ-bB@FJbYnbz{\/#miezz,DhgpcF Spx+1̵.)Dg1̸8q2eBlR`OŐb }29[^E۳-cS^Rjt0a8)DJ[/ToE5IBSY7xW|'^59)C"|u4_lt>X%,s/։N V+!*/B%)>; *[1=*{e9\usxCG<ӌf|Šj+mO><=%4:`||#}~4ruTcK=wӦPn *^1>UkI$hsX}ymɞEUP<i(tkl'(Zr0*W#}X$|1M2cf#;OE9<):!BjY$h˧( Eշ+XxYJ)n >ɮ[&]Ek 7s?1ܛ-;KYϱ` 7dmn|=ԫh4:*j u٘}(𿱔!ť*8jN|K4%0{e; ؐ4u 'uTS, |I$\zruY6^giXSdchp;6~~Pb+}{F n% Q b}$tC%u_?N$$/O& !@<ƂP2 4jP?ps8>md%Qy_[ `2&"p}b'F&:r"Ef 'jv @4PIƹ|4*Z!ʕ/p-NqM"T`fcH*Y ``IتU9nZ9&Z-Y5q9We( ?;"0˭Dӑ= g=v!D iqE_pjtd)sfBCH:Eul\A;|Qk 2ҔFei[>J+h=Qm*vH56m fN% >:2i4"nߝe4ޥ &akA_ww݇"P."*țZ" mIs~Jd )u^]X>o[M63W%#,hr<8p+\E0eQ^=gZbFC2(=ziAW>|`=g$5[oG'?`%+ΊWRY :84tR#|ڣ#6,yvo]{O]-p*H{!]?-R2$h&BZdM?78ы6B] i\$Ǹa`W$.ڸ '1#v;2Y9,/=F b;pKؿ@ PLmRG<"-PJi1^=Jx8A# J2tAɋRUQ?FLϋ86dҟk'B)^]m+ Fbw..(V\J6&xztd8/0GF5An%)-blOf1 ;,OQHS$CGH.qkVO0\z;XL˷W$XBF}K܆]N5k3 Foay=m_l@"{h.!KG}|@*x?mh;K$ױK3* <9%xHk927G^66Œ}+@pc*iꈜs+\▜|'~Txt^SM,ōԟ8^b-;/kvc.1h =7'H cdL7m[>jK\\Ahq\|KDH;|fAM:ZWjKz2+|D C/%^E=JJ4<{m G񞞋REYV'~A(8jp2}?VLTvURQV*1}>UZlej?H' &\rW,H.M&^3)Lcb70SWdqq:cp"b@Ԟ ݐ&JW ک-tZ#UrQ@hFJ]I[׉&Swҷ[+TPQ"*^5>G(xZ]P@UV'󜑑͢g ;P_+X88p-̒yf])[K*tt1u 0KOΤ{.1̉}ZkJ",ǐK3eZ/6ަ䒕QZ@W0=MFvn8Z22O|21 ID=+0(%9gӀuDXRGTBUPh?U0͆F6h E\=<%lqGJ.m@@Z֖gڑ'!Hegrci Ol:H]w$Ιk -TIPE>KIYC+$冁0y~8g;L'atЃ!8A^ɖ~җy'Z"LQ'vZgՃ[+7_٤W&0ȿQ"m"ם[Tn3WB.(?gdw {nmYJk{Sù+XXj3Zzo;D=?MGn–Nui$LQ7tPm1Y>˗ƕ߀C(*h Ɣ8 hOȝ~˩.T+7ZTQ^xl=.~ t"J5p\7Ϟ"I1PZeqm4k)Xa6S@?EӸ1%k;pAL&HƏ!K0$KeJ┾HkJ{+irTN} n⥃r8CYW6xۓ-a0ڪҾ9r;,eXv"TPDn6'Q?4NZu c-zXOL@X.2Ro&b"җoYm&7 8M HEf^Q:rX܉k6 Vj* Rd3k;5Rg@&+KiFS*_`Qә5m3dff`XR=1fcήm9dinn lS pY--qsClF{ Y}%)m:Tlrh.f'ogDTfnZ9;KNb]b߻߄eB?x$A^nwkPCDd0wA^ouբ8Ah#'0BC8XWC y9fm*pI )3|` S-.LQg (IOz';TV~Ǜ,HxZk3;(jZ 9G}. RϞ [VOz0}&|r$bbVЂ)UbDO91hK"qES'[IMbj+0tC'9n֧?~6IN({jI%IZ_XqnێW >pOguR#B $E/>@vB&Wvl4*&dam;0fԳ!(Ƽ%S\gv37ǻKxYsQva0)+uގvi0^MT*}Ə.t4,WbvQx$W(&,TPGJjVHZ~-Ffڍ')RbEJi$`)ڔ~MIR)!f.Rh 9?Wu)2By ᴢb\xk|Xl%7֡_Q7A-ti)o?5&!oP׌9Q2tDq8p}t*Ρ) 4w|írR%P>L_8xE:k|8^;\JϢCҝŻ-kQ8thG"pfz{ MH%xs'|IGx7)4ՂIl*~6 W3)Jh.C}3ɴ7V:SYgBĕY)T_N4rFvRmSUmD!&[[noVזݶ+[^e 2Zd:N? Ih,b&~1qz*}b@83}Q;dK1m"m 5.=kіU8fD+r>jzxN>!ee㏸ؾ< }H(RwM;9a[+DV<a>:'տ 4*J%֪MC;ɉ`,.M"+Ws>GzRGo|lDXrUNVDХeKƸ#;"E7fE_1]G?M>}wdxV&O4"O'PGr;s:^|sAR1jڢ=ʪλu\z-ލ %`qQF9poöq>ߍ145_Ҥaah?|QY6[=_;9Ɲ|qZ$!âE&ˣ<Z枩>7"d0.T@1!Bm:&%h0)T~8s$K^f. i5@ǝEK+p{P}[CDɶprc8f- _T]-E"a i E``G@=\̭I 6оaz6S$.v e^x0dCVj|)v,"iXqSmia}?Z Zą2J* [gN S7[[xey ?5卢* pE5tN`&cQt_BBa44X@ e*p.Ѳ%lw wU1y(n&᳻ձH59,B\H0݊.Y%_&xΞڙ5iz{:=l/X=}[Ұي1;3u"V't}#]Kv!aU'$N>,/5pޑJ.o el_"+^ qQJ%a.wvv/]dw+'$,1r_>L=E:?75ߴw|9t=fOsH+Wo$Hkdt1g8z9T&K6Dl<=3 ec諣 ߯ĥ[TO0SYsP Jii cCvqV[*Z.HT/6Sfbɍǔ&j_.0PW.)Wh05Nh2ށ1-ÑE0WO5 M=LۚuTp1yrW2~ $챋!T ÿUa􄸶8~iQܢ?4 X𕐉OII:"^\X.dP@p<$x =4xK icvEs!僦qE'^HZY:,{wnq9 ]wf4kq,mCR}~4N R'j&شBR`q8is`v3 })w %RΈwCj)yn`3-n%vLߎΘnP`5S06N`Xܘ$ $ HB/LH>"Үc 9Zsq̹uq= %,V'!33yY'~&S/?^-(jGm0BxAZs|!bSr%UHA[ڙ\/gd@2F ihTw,ʸY#*i+= {i6xr/]*S1`.jժ{}6̏ ,C/+_@cjg]"蛓RA];Aʯ< [:,bNunbE "`/^|]3P`E:uyH/μȂ\#6T  ~OGVבEA ws!*NE@@},2sOgtb'~V%ݷm Xdϟwgrv6>U'ɪufu:f$>;.-JiW`^P<"J5? o]*kRs%yl4LrUPq} H.~(jwOJ2D|XEE Ћii4q"ȗEZQ9̸y`PUM] SʵIN1~v7fm+*Z+Ns~mzs7M8L(DoXoӿ*@J_eC.Vi"H 8!վ"kQ%NMgPzݤ t~AU/#/0N1ugT/8S* j||شR{[Zڊ@]2c/ڿ\o1)$9s{p>?þom.}v$IMP޼M]Pd#J.mT! qg0|me7$燗:tGl.Ph=K8S,}fvCĎ]bXp~{yB}XK]H8[í6Ӡa[ɿP[i9TG\@9A݁ 0͑!hv h SWT壓v!Qz-M_N@ jy^ժ#s[ҪMpPp[J%zgH<,:K0X!ڣfg:=,Zsr޴!CG?2sI,`!VEXHJ\NCuyD ҥk9D]epiX>}h}(x5ϧVFlYeS9Ǫz7'@(dhv}$D@\[ʌd۸d.WXp}o<}v3Y/VCqh{3 f_֬di0g;jBdQZ+/_'"6j}݊o\23Mg:[tsMQ3sYXLyЇ9:[Ӻ*^#??-z BgaIj vv9ITcEw$DCJdF[SkJ= 7Ls@,wnvOS ;6>z]_@">]HʡH嘣n880bbC{ @R5A[~2勮rR~Ymu?^!,(Vjv'.m䜄1n%sWu>DvL/pp#܁{X{Vӝr&TM E,oZW|P}uR8_%^}Iw-6A *w0_ȍv%xyG 1t3]sgR աݐ*4;5m kw>--ՙ5St~{cH6xv_ќ6 õQybM,q\T޾M_ 5m̼CBu_mU~`z%V7b}扱۷l (Eо/m]>1%swޟ L멨P\y]1.@0?]&H*7 `R'I3LޙGa9` :! `k^a)ɐ[MfuKT~Տ^y.Ϣw &.!rѰr{Mv̈́!RDՋ|$ʹ Xc4$lCfNEi=knc~X!( aPF&aޡ6%: PѼMx$b>H3\GVrĶ 0B){#sDr. Ed$~fiqXjc0xM L& \Zhihj(ueM I CyO]5kܤ~Y3| ЌWdGg 6lb[cwkm>g=\ _t4~w2UB$mY4B]D3[-yRf!M|)>$BN*O#° L*Hm17nR::Qf/ۂ8+\]3iZ6OGSO ؏.cЋWD{E!R1/cY.!)Ԃ*x@xhc^#wUO.qI׆ŅkOkap"|ObyHcۓ* twn'$%ew+BD-A1ݡ֣ 0ߔ +s4ҍ,VH`a z|7JB +$nik>>Cھw1kGԂzs +WR<\Wd8BLJ)kX|IJ\3|:e2["x3qSnNM4 B_3MT' oO牙I ׄc̪%KB/ k|o[5ue ʗP5`IWY&ںW9xKQ3L=0@Qd^̴4 ~bx8.V`\3AN (L1ݽsfm:,s, •fq;};72}ilS cm5Q+7+yu)w*3l_ |@qY *vJd]w㧡E_qB\fB]keN ^),+-"rb|OZ>-(5 T⇊(F%lG~5ݗDE8W3j^o{Sp_g B԰~LaL\ pVVc-|?E|wY_O}l3?Salo.~iHjXͪgh;zX$\0fge9ȤHM C 81EZpoj}vԙm"S;Q|B?(>cIt2Jdw\v O .Hҹu?rW/j~gy! G+G@}KOF@n[-edhԚgۥmޤ[ݾc\Zn#L?D6Q2`wyL,[}aU ^ nBHJi`G>wѥ(eF^ZUŵs6k̙fk0A]sdxL)щ >BCl $|}kv1QE!J0n8N!Yl߯+3`s`k a L޸41à٦~[\]:WzVg CkI?7@*V`G 1`8*L7g>i=gCѲw@-z7S x|&`Nˏ҅}ΐd)3C,!Ib[Q^υ`oǨ:ѻGMQ}x?1Ď@z, SG3S}P@̻M Ohj??ٺ?:82b.~Xyy$:[uC8:ot+#2V Q HCV{`KW?;`hu"U گ/ggoP#sxeDMO*4*.5 Ӗ8ykM@H;jܸ_TG <Xɮsʙ$*mF9a9}qQ;VT/ 'oN2̚^lpʣp$Éh??{ X|5*ZqԭڨTle^9Z )mK+>Z%\'bM}P+Vm7Kh:R{:d=$-(Wކ:1W;6Au,]fQ.sWYk/իU|=<{Yw"*Qs ӱXG7R[ Yto1Mq:瓨ՊP㾞l ]ȟ*k 0>ӘNjK(Dr;nG/QTӄYY|ǨКB70=dI} 6A:G&{'MӲ͈uM+z<V2)߹ǯ_V?l.#Z^3ŝ,2tջz =.4ģJG $xU](Z"QJ8IFUnШ4cn޳ʶ9Y{ Fh5GH5]/Y+ވ!ީnTcb zu]E5=[n0`s-Yְ㧷t'.lp^9b[w0oV听4v )qp٦D| GmpMN*W}/xժYQW<>]#jStipWt-t,3qcC!%pWi6f~xςxo*NB j_,fÑA2[:p3'Z 倴ZՇ?:/I4؁&eF`!DX4OoUޑ]W:l-{ ][Ban-J5p]|U| p݄RO]Ψ_E%Q͵TqHۋ{$ l~Gs^,]qDeUM\PNW͈t2?В:T֪.գf} ti\F=՘<`h굺s| {EjDTaѓP;G#pE+|Q A;\-KPiR99EЮg553f$_DD)#Q$ߌ PX˕F$qtFXZX~Z6VM$W U7(CybJ$alI6NN+g|c}ۈxz.#tRoe#] `^i~k-H{`- ZEjX|9~:- J<8^$2aE0Ѐ{<[' Mm95R[Lεm;V%&.76EF-!'>5MqN.QR\(8~:swYCm>b矺{=LA\;K--eB$% DWkicaݙ?wU'{OD"QM M8@쁶ANݮV R;GEy [zY4 I閯+(vHlP^` },/o 7a_p[^{D&ؓ r˖#Ӓ re2:UY3jԿ$kYP)`Θƨ to4þnPJ)f.}$H;y9G%ytIp辢`'BVTJC0OڔrAdMW\̪ GQQQG1LDq'+,_3t]WǪ!Qxui*Z=m2={8:}T_29#1S%6)prP.x`$ 2j /*}#%Opv҅q4?Լ9c}H̊J[C$Aau3U c7{n?ZQ@z`mH<$ D N݂x6g1T[er,\{|һ%a2S,Ud:Z ;߭P;6rOj?D#GAKhnZ0pzBOA$K\|>y{{qb&0{G>6E npZ uAK`mELWxm96ٔ;[:V;:}4݇4{s!IiOdoy]+7y `:VBC;gBBH!ԣ}AprWWqj]oZAܣp'(f*qP+R JFJ~X r`Ātd8QԊ.[?&Y8Y0ة7gafm>qy}wr Z2 Gbo @BM4PmmfnAq ;n4ksfʕlwΕv rCfCZvgD/a+EkZa֑kTH=Z^ѹ⩿du?ƼX%3 ]CBu;^/϶'@@.JCWD;,xyMc'Dz<ѳ9y >k!P[<:قEtcCJG2ʋpm'3-*B`5:f}zHȵOH}y  4Q6VQLVwď.|NSLϷKdz>:č) `:ŮR]LzhV|K?yHn.2AHP/A :Տ֟z> u)A+.p*^}3׀C=/>fpdYW$syPkiYڍB(JΥ0 #B^+<gVd. C{ghReciuPnj*S~(9hKgdIkd>bk=++$N KHLgM ̀KIƛThb,gŌ\Ҡ G|꣝(i'WJ℠IXCO6ԅx4" xY/ۺcNH)ֈ uQí< i{VӗY 4'2պXEͮ=<[ȲP$%.T Llu(<ܘ,!8XFo-QZH{`Go |-m$M(?2O\e׉%DFFe ޤ2;eiycn!([ wn|oQ6IeŜ0]>Vĸ, ߋhYcRmGZ37_뎂Q$/E) |wI@}t*Ϊo0kJAO^Iղ 5%p")ݖʌ-K$!5U0/нE7*@2`Y9RmCFQ/XjϴԚ(VW=v 0Qg}Fsn@!1!Jxܹ6%Ѯdj~u*rXUSHEY1`Tޫ%u9wZ>y H9]P--,?z5+}_/!>JRİWЎ6ӷ Y _cN-idWx_̤sMU+2<Z)|O*EE9A3rbG*mVӓ .X:9`)͋ BRܩ_'6g*cxufi*VYI1c&ݭ}iO!/)'Q1dо$I615D&ŸWO?U;T#Mr5᭕ۋWK%{5:ύ D}Dߏ24kեd͑s2y4UV_[pQYGQ?"Ew{(aSzNG}D4| ߋo}SG/DByͪpx;\^-s.MTbfOoJ~mJw^>+lוj( :^c(Y -Y.h(H-hMwz!_5GlYwHV ǔޞ+fԇª; jgI϶Vgt'Sѫ;'cDr'r+kR`ጰ[:ʋ4$YUgLp.I?&? #W]!% P+ I.drúGϞiP;/IZT?ŀ"͍Y~5B^[.7X@^by'6{ 9Nmacn=:,[f6)qZM{mFm/ӧfHV@?TCfZ\eEco)m+4,1{'鹴m@=0}{ŅY3,[`KϮCfВ(&:6F*Im1hknABDGF8Z'ڳ󴆨E[6c>}##.m|P']]ں [,H^zipDbY_^VˋOT-zKr|r?$;/[V6]:xѤM[BiDal8s>FU:aؠDW8NB=c mvHrW!K^5NEy]rE& 켗 [ ,GMGXVHt&(%!.ŋЋ.C+@Џa,|DyF!BHF74j5bunt3s$>N؜ł/=Pp%_(zkUva/޺t'/,l$nϋCBJ/ױwuyIBy qۚʈ${a <\U=% Q%PDPޒƊ;{Fh fNdL*L_5e` C[i#^$'gD*n薀O;s X jkf?|_\#@ W&ew/ܜ<SbҟuxsPКOe%Kgf!׫=dH''޷Ӏ[D۲Ok"&dsb}ϱW8W /g\W]xPlPEuhQVd@RM3hfzlYbX'W Rᵿ3;S.}D'ch(n} *T6wrޫ|. i`U)Ïn\.0@낖 3/oy U1xZ2 kl@,m!,`am}K퓐eL"jٺ`rFE~ڮ^fƷ݁O$P`JgYE^^Ohy%isP Ju%T~%EgVQE=KoS =X )yosGKWdcnj֧HӽrbPfH̡YLσ?0ao&2"al}a'Mtg ,,r%UڙzpI"{BP'LmߢFOZAm0a&32ď˳య탹 "*Ӻl#v;o+^}X9PfKS%\m&̋#fJv/uV~w\7z֗j#z OԄ(XD=: 2ώe%}mU 7UiCE+W"d+c3Z^SIm&!=Noo/xx2ǜ$(bQ r:uu8\XP[:Pj+*D>wt:Fj*+Z~  FLgaxm[ɀ#\P:Y9]<*" vvj!b/˩~ic,q8 3sk v%#]-V]^,+ENGYc_*Dp]tP+#m0֏yo6)k| ߤLY-Ի` 8bǼ}x4\M ˥!'C%Zbtx5g$;:άI;:1O,A,^^tWeryG )_ kF+IsVedIRd}c-EB~$wD e,7I2<#9lM&T?g3v)X,,1j`-Wy %%Kb)TJT'q1sЃ.>!'( s8Ƣ^홪 5weiW/ A[>.4oԦYL&jo7m8:=Y UkxV焷E,摘PN᯽b v∑QVQ1^1ɭ]\ipִd5Yhyj,gWJocnWYHK!{Mb9XVU @$#eIE 0/K3Ԡ }i+7J>y!Tze=>DpbH}%:-i:':zX_f/RESv`iZNN/TyAV)S$Y +/1 U\c6?Wq:SWO ZMی&G8Vq6dHI8nQ؆ ?œsbjSY<Om GN9x_dz[aK4 0bw[WI frPA}ҺoB-\ŒBO$u:p1qrV땅#&"W|Q{?: NZA~~zjfklyuo ԢN+3쩐q5oW!Xq6c*"!͈x4>)Kbf;>#hQRpJtIEVG&҆9C?mfFg_!~j;0>_hBd5؀*t"\ᄃsI΢-b9䍚E&ᄇg+5b3@M / 1$|n#(~ԧN}R5 e O-k%|=8o|u;rsY{G+ TH{-T%5 NdosH3P R] u@FKb cԈ?3,q}'c`zFI̢Ƅoj(IVq*!̖A+N'7rV OOir-/&)y;4q# zw4xrQ#N7b3bQ]$Bfh'y15[o[vnKӴ*l}2F݊M#^l,ECUsw.S%mX8[g я|:bk7h)W3|`֢;l,\]\ImrO .tԿ6j[*b'#Ij8kTI]J69c5?^oHvk0"xͱ \UŎh9ۦ$f yw·LGp:Nϳې»Bz3OFUx;3zx?jT<8|;@AoA2sDT"]ؓ־ l(3 Y3͍*as#TV97s<Yng4O n-nCu c.Ud(vPYp# ^O4*gxnO&ƀPfh;3=ԟ&uh:뚊W@9^>,tgS&HsUvnH`ezsK@bEJ"![X0'-M/Bex]˛"CQL!-jiEOi4OL"%@ 2m4-[҆үf1Sa :M GhVk ?:b`7I!CZ}K3|{ UKQRo"IO)\pwm6ŹV! #ۿa9FV#L) SVO>].k8b6r.z'IIUt#RO+@yZGbBr\E [X.KGgyæ/D0'& b/QI* hK^aqYk%1t6 T+AXg欉&4=ŨwZ*O G TBX%3GfdIGTk>S A_ N.U N2L.0i΄%''@ڨpa+仹ByX9v`:b(c+^~KD-ta >1*@9@G f(#Ѥ⬸ :Zf"o86t%OՒUsݙ)B֛VN,*isg8~Dq\?HF{Bvd>1h L翑CyUSd UG̡P{jyo)b; dVm 8c:pD!P m߂$'0dip\Oc ڤݩ8`2 ]@:kzKo}<#dr`+8DbgCmUNЦ/DvJ=2, ĵus_ڀ  ,>Ȁ "5ctFTO*jA ڙ:"UGx>o6v[t,Gk&n&Zœ”K~F6iA_wK_(R4:<7CyS=E\]r8sK4\1aSDe@VtUbC꼩mfDm}\H,jL_&eNְ Dlcr;^ yAJrr#˧˸ц%pL.:X2 dL2ܥs&š#KY!8*-"~3JYDNp2}u;ZR >f*fz" :Ux- Ie?Rﶾ:&9@UdugQsY.$񠚁ė|S]›|JdڥUm̯F ܭ׏**x!@J -1шhd4.>ƅINKloQՇyly Vf2j=k,c صEɅi{iYi3{9;Ԭo ^9Xh`#Y.!,)R$9@tIoKƲT^[cdD h7ki骵3HюG{8[XJwF5 5DqY//{/U-ltPOH M`H$[9sD}1~ hڜQmw1SI68Sd1/-aY0 ZzH1@ONP%!Z3A2sY; ]*Sni#i2rm¥t! i&2@$~kz^0ݠo AmuqFtͮV![`?M"C𾲿At\RZ̧B.p[v<mWaADEbԉ,k "a^CAUK Y u]B ;SxX֕yk[_X nd pt½^gPDzƛE ^ѻaLaBW[ {Rd(\/'S%>2+,"osg#/.fmëV)[5 Mo@"sNC7 "Yǎw&~JjDA|bp?ߧtT/eؚ4cYh>@g)_2~$Fĸ.PeleuN3>3t !e%!rVAb?;~Q:.P i<-ڈ/ /ڏU^瓾qit%fUZoޑ$w }ҧ\_o3-bA2$^68X3c,w8+3AZGd/vwG Cp!%y6[LӇ%kZGOtk2W“>@F*kUhzCm!ָx}R R!nLQ NkFgMDRGm5=2LSl&y2'{TLwsa`mV %^z\S;P`pp5Qիդ~:n<+yeqf&Ŗ|yкƪڕlQ:m9gRy&\GZzH;mgG<{F )BS*ߊplʀ^+-?~)#N!]"(ޯ L$ |?8B\z]L*~Fa҃WSR S((\# HE|fxNUF:ָ[ -3!-EH5(;$V6AV҉s _w32!C!9m85&i~ &*y.WF NMx*rNPrQȯc4Pj-ldL$%I([`H//ئdvO'ZzMchP&h1KV7 U. Y>nP(QBpZjֻkW^drTjθES䓂հg+A-O@Ȭ5l-Rʼ#\qW*ןHFb`٩XeuQ(hZKVSf Ǝ~FOR^@O_[I]0ZD2NhP8 >7I¦pD>Є(Zx0G}(m2u,OZezڠNVvUϕ/%Qz"֡VaܝqͽȤen7:Jϊ؂J"~Y `?<};Z%1)k 5'e=lnS [=I7jqx[J 30;8" N[9p8{Z#5oyK{/lG>4MS,xUSa;.(URh~56Y0GFo.w_=4iJ~' Mul-!s;/0h^S 9`sǧzl!ihӏ.YSΨ/Yb;$0l9; XN%L<~@IP_CX"gRiUk6 fxu+8wǺVe/8:,&ˆHo5?awܿ{X_oJ1.Ì58^{Q)"Dbm]=|2ba$89rꢼ9QeXD"z)R^b]Tn>/mַaL'ֲñ,@W odgoyr 1URdȂWw`i6p0YU|>\ߏ5ɇo(ƮLv tA+ dwFT~">wb {RkQʼnՂs8R5/} 8qI4tt߫!j6ui `@ N z\RyR>q?7en|+Q5Ctb,]NŬty]E"0Okܛ}@s;(ٸKNgB%242x󾇸wsKlΛcЫ ow&/bh#*MϣEhlN^yr9ܷt[W}>i\_DCmgm1*bz$?NTVH)cFe*db2'׎ $^.I_^Yӆ7BT5` r)l'(̍{yXd|y햬;XxEp\iV6Z }X$z0𨨭ɲlbƣ<ݛ["ls'ygdFiod_\j9ItZ"o% θ!2QX%ie+Pĺ$?Z9}Fz:5X{?iq(9QQ슠B|N3:U.7Cf$&ȄPf!!AZV!xIli˵vV$k" 2S !Y}BgZN>:u%QiQ¯'?J*!Rhqfٽ`L\,$T(Y$">GrtTf6PqAt}լVdݍ br~Xn%ژrlc6B!;pY}f^V:ˌW#\M5`/Y)>[qÌp{箏HHw1%3sQuy0AEb#Gz XX)qVTzpɜfJx} O- *C` j~bZڜm8?mE:=\RxOkRJ2^<ѻPxs}.y'tD[n/3F9üZYi]YO͆;hK,,ˑΝ4"I Vq<]3LэOL[L)$R.[9 b<6 Yʏ;7;W&rS,3e`-ֳhѤ5dTod0dkq;zAᬏ[og3v_n.Đ*. QSliZuO 4Z ŌHXiYif}1IconO%az:G&FpbDžR.BLM1OsvSVj"ՓE\GxP`/GuNQ6\>mA~O Z•6I$":}m$G@tK\pV\=>m4T{?EkLM^⾖{p(6(&Ux\#"` ~skWY#O H`#f M+6wTȲ㸙)5GG0)?Z4$}maFMRt7Dk,5PռE(kPomsGQxi9rUO)3Nϯ=c]L[u~Y|*kО/^+<6Y.{gv~t24x)OIx`#rZ;P\Ӄ1(ӈ}SД>bCZr{Lty/0bc!(u,tG>a.YO #8ay `lA\"zwC"]Oapeҍu7>@Q-ZH4ӝcՒ&E7d{b0jDW&*J}I3s' *ֲj|Z:a|FGI8Zީ:G-Z/*$SGi%]3h0 E-SޘR݋, _Ϩu/gs{y€vO]sa!V/g%JZ4{B5smzi\%E>$ADySF%H~'@8qƊhIlH%$4B?EgK \SM;np0U ¯ThyI!>p͛ɩ1BO:]*F*V)zTqh>~>|(\vǭ%$+XpӻЎ+{o B${fpY~Vj,37J:EllaTfIH?cw>֢+!@<C j;v@4Q)w[ ': \;(~/Ήcqn%3(-Ul5<. Z" *}SS'I G,fyD2FpJT{f G-Q9 iϰs2$ fW xmjY4wmsf}cCYRDU*c,Kg-;JxBͤtq/A `)TnAV٣8/^ YmKEʦqQF;an6a0+gL;: /qfi%V-Uiw$Ύ!08e~Qb]-\<uEM7g mĮJmY:TG9-z|r*G)lY N3bl?=P2}]Y|Wа1I\\iT4T g/yx pD4{ӊ#DIxH3/}с/P G83 J`J:0@|I0v dEcoaN ~X]S2ЅzwJω$5Q>{&1JƖdH{V¬#TBE m_ػ7#x)z\WIȰɔ| {5C) WvߪaX(_n,"l]|G/NR%";ƛ oPBF~|+|PhS릌PX&-/3 z$qV{۞:o=C/:;c/`V-a~TsSHpx&ؖkMf–Ԋ`ZjX>/D^J76a6% q6}k Tf֡-esJۡ%9; l׆C_6 +ChZpI[4C Hڪ*&Dpմ aw{*p#HG*vI.Y.lsf$뎯’\6u>/QucjH?J#3uIPGr:X%" +wMə`ji  \Y/;BfZx`1E+de'99)w<uk 1#` ӺG^iY!8ɿP2kv]+'j38`1')f\>")m߫ٶ/ ͯĖ_Zr_FJw=lح ufƝtUd]=}kmsԚ0x=Fo6nP<֕nA$ 07+ J{rzJ n& `T]1)Xs@yKPf3'4̜۳ҍn!fjZ~^$,$o9@PgJCz?7"6v FzhO;9>7c՞ܥaM^5s(] F y\0LbRfY bsf9\m;B. go@4nbK- S-k̛ ą"Lv\O+"Gn6onJ9R橢7~3ZF.8W <%iחt,5{dLeI@Kkk.$+ouJ^F@%9&UJa)WLH*G{b>p6DX nPQ>ARׁs1%SUљK8!Bիjм]l4*`TX<^߸vKx`3RFcu/ vC.!AɌ[!0&S65{YB--X2!M\J;SN,aW{?3 (u 7ˆwS)Re_ar/>|ӭZ ϭFNvß>DQjdرwF?q*&ý#eL7ܣptׄ%0րM1 l*qr/$&o.rWQ}"k^_Ox-RE4#t#_Cw'96:_z9&E~(-@Yi+#*;NOѐ5<Eb9uw%.U8Ȣ[]M }Mnr-h%=- LMU@~GM6',=FהOij  _P1\x49|2.m/MK}~={? ١*ˈQCi&P$CZU@e§S. Gғb-sc;I=]^\EeT+K X/m~.EǘkmaܞDqĕ(o>go ]|ٯ0?TuNM %BEPyU B?QM9G:~0RP:9>&^T<K5.Db+RCܣ:&SÇGY'0tQ?K?5@$+AS$.d4LtS+xMB|*}RGyWՅ=}l vWqHE<˰'3oöTTdI`7rSHKρ W%IW^{ IuQx0kp0)\<Dt5_xD!Pه<| >;B:!Yku,@~}B%%ԧ8TYq .[6*#}1kbX9d>9:jI^ܠG/nqc[C.s2c`:!wt֤C9X `@+a"_ $A,V$Sd} EI ;ycv\6Yb٠4˃6ک4coCdzl@HP7vzv`XWڸ:A:(0 Ů\vIT='nXm$=Ӱ3b`N7k9_a(r6&i gXt+A?ݦxQ}K͗R %FM >74i)Oe> >/vZ'ۙ,zqgznsd؈'lW'UU9G9Ɵ,h15\O[U~3\*/m:0 v>\ ٿY_?mudҩ~%܍v8b H7i!I/$5nnT%lܑXP 6Y^$gJJIeB#~%! @9c֠k k`&ihi76.l>[bXH6ghal\ڌdUH.'_˒<ѱvz1sŋQ^ l$<2+z n]0/G& ['XY}v^9c疣!cm*-rCWH4iMRNcEv io=T7x .Уl+^pdV msEFE*ݡ(2["{}@\pIRK4.{ r.$߿sDq%z:7(Pb?f@[r9\wW˓(B,a*Xjy;_q+X'g! Rpû˳%.o l4&c##qf3D?h/ͫbxD0=.u}U6KK#Q#4yn.#&"; B3Yt7Γi|dmp9^HxYFP8_|@4}uA7 XX$RԠo݆Na8'/C>&jF_ʈ3αuojkḦx滼F7ZR:X04#ʋ%@S}ڍM\Xo.[m<6d"x r_t5 !6b=|Duՠ՜({& ̀7$s[WX`˸kc 8{,bD2;>L#0ZM\P;8L$Q\W[ʶL?ubbvyZU#Ad3˕o5(ߚS[z{>R=-4i [Ӻ?un~mʀˍR(nM>"IiEZw}9i 9Tmtɳ]= LZb ; [-=F[e"@> p٦OIH@ޝ[c{bߺF='=!sUK6}nHeU{>(#չ[)=C:xftXE r ,!]ҔtC5K}9vKݜ&ʷqѫVDI?C.wLj "]KPgGxHT c5Jcw'iK(zUA#5:O$O, [5 hi%2!zw'yyʯq8ҳk%SLM7xְS, .dY#Ǟ8{H>-^^A&+Y Tf#7tST{ň(th w7hbЇs_'zlq޶quk+5g< ><){i H- ^㜸gM'| 'oIݟ2En#iO%e!p*hn6LómLPҕp^;)8Gj55Z/myOX1,JC}Nyu7-M%YUCk6Y5vK** _Dߌ-Qi&"'+8ru&xHuDd6LzB`u ;8G+^|"m9nݞaKG;鑉 ~ꇀGȚn׫oK 2!)p=\  AJ^TA:v&s;xh Lnn&ذ6d?t%yS;#8^N.@e\DX'7j/^(KՐBX,oP_, eJ61;C{`SۀX1"]1MV( \,]E&9LA5z8 3Md65UOda3C de/=4!` [>,7JJ0u e`jZ`E+h_mO̷3h]:+Cb,k9ϿJ <) `'҄9@d?܋PQQv)=?bhX;KB(1H L`ƴa.zf .Z(Nl% ,}=bM5i .715OB:0egB&GZP]awuMllCLD4b$ɭK17l;ffYG"u]r  AXć#$Yf@/H O Gq&%2xYXOÿ΁w] 99yDza]+_7[P(GE{,A"jc)T'YB n=xBߎAy(7G;cv^OϚ!֤Xm ct@ղ ͼ?ú Nsn׌]ƃP֝ Y5S?1lb;:77 3P(i7D`Usjh徉PC L\}h;=u]kyA٘THeK SS":k[pO:4Kz짌qb~:̩E*RmYӠ_ީ0Lk_o$+h|b"Ht$f{6yB{OZg%)[eZ47,J9}F: #-!b ֜i|5PГEcx%(.LP{A Gı?^˴p*r&V.܇h޵~^.\ ӒbE]s  DMLuf=4uG`nnIHĢ242ݜn -ؒ!^9i &ϦIZR'QL;/$uXr &SWJrXi`kJ*l/)*#BRVEsزxGuV0Ug}\}1΋L)D)9#*Z"u20 M'!d !ҔEs_L%u+i+ZUh&b!aZJ6ф}j4)F誊'bm9z[@-!-nmNJԥ|\C̉qH2=Yٖ*^ศҊ4bH]TBP83>Ÿ#}giz1Y">иM^i';W~S-v ;fB!%]:rNtĊ":n^KR.0+xNr0Qz&p6;Qٰ7F'8QT_~Yd) ICQg!A!fWBaQCv 7 ؕr<!Amޑݰ=xvZtƥ~$q?) uAls1-,I`WXrhn"L OOvmCfOSJTJ6T$k?`‡D.?% GI~Zg#%GՕwIᢾٷ':Wƺ뷹t_\%+.Tr-|k)5;gT%wNxc f[D8։̷p dim_ȄrJh`[ٍ&ROͥ-2ɸ[$In4 p8b_N<@GxpXP@B!p}g I lƭG$Z͏̟C8!>΅ĭe^d'¡")6J[~X;q ݨkCX2` >kl*tM6V9 q05OI?bGԞ`{; j|0= p- 褈L03W#A@T_A,,0zeYHkƗ)ԃ6&\)$N^І5c $IBy.'UbPƗY2/~Xٽ]٨VAP},SS6 IBf[|"W, e 4mŤC+52-΅~}}hY:w:xD}^E ^ gExw5ROI#`A kK~n\~w=d멜gDD,a*Z_t}L>F z5ɨ bF qbVY0 :~A卓ހ;Lf8P/q-y4[XhpP9ԟys{')8 \햝sFՅNjZnc "^{+Z:/&6ftȫGՃ-4Tً!I*4oF+}20/`aex%p@PrԼ Q+C }σ/_ D,iЦQ UmP;`2̏_PWRLyO =(1r;vzWZH=WvAu&K|3#}3rNڷy0]ELp,-"Ic 2~d&!tc_̮-! Zoc4xrsGxR[:ҟp扩nȕCsQc۾+! xa' {A'مz %#z ]s/xTYCr.DsdV ؈Vw;ӼE5#1z)1 *"nh?3}*;]Ϧ=w *xH] &ZF 2.Z|Av;ӛ.e/RfԑGIs1Y*+C\^ !' ]\<FL =)7BYsr/ 1vk"8,!n]CJ2^'bvCDdIҳ[*7OlqBImX(dX\Yw~p)cjwDPpS $P>YcLmHb: Uoj)ɻmI:Wrs@V)B$o$bTٖJav ۤ q9g(k+SSd:Ymwc *Y. pBBҢbDAiԣ";X|Zs\ԹOŨ^Ms::x=Lچ! ڡKNhйEv3-;\HUZ.;*Pd q6\9%@}LJo`o\)L9tbɄ{\RQ5W2LCi=Ŕ>|o֔4Yֶ["H^ y٦,(mMn :`WCAZ x>ؙAQ \ɢ}n8Z'efxQƑ 0Hd"Ü$ADQtʔ~IXyc׭&ux ز8Fx;ƞ j<-c!c&yz! kLHq$vQ/㨂(7MTBY٪n`Bk%ǔLO{j +ĘNvYbRLFMJk}4ĴӜ·zn 07/cA2k`>6& Ԧ(k @jH4D)5P+s1ty.u4Ǹ N:{- LͳPgK~u5M-2e{EDh29ܭuΧJɄ5c(ҭDZM?׸ |NY q|Q+M2KڨF(@6!LYIʹV 25%] m눟ys>͹=;}}=@/-YԸDID'%|f4w *ж ߰o֨NLj,K<=ӌ ' ǿK)~`:R83O(K3d'Sf/UL֨֨Pu= Z;pcӜq4ؠUS48ngrNQ8׿ j-5#l֐67H)AP/e-⻽pP=_/vx$dq卑eWt6BxP_<5  S3{^vL>2 KTz' 秴:5)*}t˵J<7l2Ic3YX5kV1@$fJe;T8^v.oxsPJ;9ujA` 1FFh͵" 5L$+L47xT͐riՎp@ Blyyb49Ld9?eĢ8g@d~FERB] ز# #m.5@Cug꤂WÒA=E2+2mUPl{͞ӡ PФ}#(@Gw7v☨9hmnxroD8<6IPOԳ]>i.m@dK06SA{iHS;(Yw/dmdp `A:}rCf@0n xUęE# '~z;+,mMrpO3r`qϪ6ǁ1sc; 9ԹlLhYbVBTW{rTJP&` O}EbxNfkg8Ǿԇ_+B` =8Tb*O+?bXL`B%*YP F#[?˒S;!QK'x0[X_`H_j1q#+;Rg&?pMI%kY#]}HXEN&(hemMLFk's+ :G@@pKG^!`)6OZޅAc+TЛѤcHm5'-ɜ#(ܷ ͻKP>~0eV;V[t$cX\T(v} 9-{s*rdݮ5VL'@{y4,3J>nכ?VTpřMrjД>zl䜌< :;/aDT ~/~q"=:ҌG"RuM NBFWJCr6BZ]؏>H&K0NŊ[;c%?Lx{eMN3֩FuƊG䇤flF-s;R}!YoH¡v2<wjH t(A ~> ŹLvR!Y&3 llbN_xa􆔥(R7;rGOTbV@zzt 7s|@.M6pZrC[AMq9 GC3Fkm_MTEik_KIm~=hj-!׀Zog>"}n뀴y/}vs?=+iiRbD ɋ9xE}+\3ܓ).(:ZǕ̶ Zu8#> "?)%gl%BՅs}}"_=|~q"%޻* ,58t4z<H*] q[^zO=:GO"BB,#!R?!Y\}J?@o0 迲X3{h#U(wuBt0EȻ/ӹ>h(X;Ȳ:(vPm¸ &˟M5R&tז 6l͓PQ-$}{!pb[~q 4LOxB|ׁ Q<-{ $liFJuq!k \2xo+,aCqX$Ijc׍)bh>Ȇ'ghx4Ƣ 6o` t-I$|=VhD[V4 vuK,v(]ΰ/~te{K>tcH뿪;,"BѮ0ƶd͐`{]_,[½,ߺf4y(?T3=?8K΄tW2G'cFF# 2 6)ouD Hm੠aX&YYwk)5Uybbt$#*ju`R"[ݍq֔%\uȡ򰒜eNv 7@ ޢfSQ[J!+.+ C@l*Lt<ΤӺH!`yu9b, 38nĵ>Hl]e 67*`Kd :J$=?#[UXK~ջ]6޾{/`j%ǽQw|e;wWbS\l: Jk&Dp۞ Oڨx؄Elq)3>e ܨj0҅ 5UMr~P]_v0^Kw}Z;ΗGDXX0–0DX"@`w_A_Iҽktp&מ&|}kf%sULʀ{|9֚(bkXP* eU#7+<4T姠nwcKۣZ˿)T71W@HD=iQaM,¶Hf-|QMxsF Nj"|rOLc)Y1W:]FG;FPHGlBL/ǁ%i!%n_kr0"HUb ̺".(fj+z/Ɍ]tt锼6 *mv0u\Mw!{J5S.w QȂ6_mdVQJvW*6fb=Ϳq(q'ˌA#탋!xkX4ݫ,'~o):5n#s,)ɮԏ$͞;P.T+Tn^ΓX׏qBecz\#RNjnj3: ه@X\qDz# ҷc2vZypF`a0rtTD}ƒ5,$V<ԒFGXϤup q~P-;d{iٔ,uYU}яWևR2F>]D#~0oÓUTWǽV4P nJP +>9˰p|WB*0EI XDp\žCٗ=GjgsSkoYp|{WNͣ}z$ѫcYo! ƽXv8Me8uY(,0kcf%^D`|rInmFqknť{Q'x cN_ 1Kg-ŠP9)f]-O|'K:R!J)}~b%uߋb:4 `LǬ;cQdg-\i8>j̫+@pEt[2b(֐9pwO. n+fϕSpCT f8]$Vs#Aw,P$W?77K!FɨA#(Yn$>N=iF'lܥۧrmAi{ D?<(5\'Yѹ>oj)\X<=U~O ?oUR> 9.F:> f7ib*;s|?1 PAl_YdB fvUtJc"D6]DMZզ\vX/U7ϖ9\j&! * &)k'{84&'$N뮶ze%} J 8+A;Sepl,Uŗ-hbׂ9]k֎fA Ys/b%}7yi%H)8ҙ*0ɛgI~۱0'r;á\ҍF(5C.n45XdQAҌ2i}ƄM׸3`9#3#%dh&љQwg"Wn8yB9,YÒ1bb桜r uf5 jZ+_(?+:oѾ>SΪC}JQlvI2ȚO^na{0bVӶl`a%ɅK}wm@+LLE^7/t6O$_F@Fd8Q %H:O @AȼrT(_M]c+nTM/ |"t3 q#CQ!Z1@DO{DmK?'YeTDqZj 4H iT -d7\8~=,{ʃ+sWx[kcHj?}8}i5S`Wzk:ܦBQ` *3oQE$ +]tD!h7ͽтE ՜u! daF 񞮶 G D<[6كFlD> g,imNv8 T')?Fn"[( (V e*cd`Sl »G[}oLٽ-|BҠ/Y~1ҐbUiشtEْ x\z ,O'ᮑ\_EC#>'\C`Xe2p#KkS 2?K)He|/Yu`jc;U[@ڹir_CC`aƒ7u5@$)J\JǽݝF>IBIZ`3`ڌt+1C_oj,1B./2e }\jJ6!3AnE8_[B(tV)JMAxPKC/vFESˬq}-8g'گ QC ɶw5j=쵍Z't̸9!y[YuV[zǪ 3xh3;7*7ܛ:J4Gסgi`hY9*zkMrU(kĎ3qQx@S;q)]m2ouԈB4@l4$G! 9Wݎ~% +vaV,0~^l[C4@ܰD<I0z2l2IS 0mDUT몎K*8f$a?21eW07K 8SNI O %Urq:2 :a{H?341D_ `|ma6R{X ~*b?JL&M kK<_KF2 A0(3e#"< }6 GyRYgg(h"C#AN7]꺽ۡE!l-lOo1ϢP "`6q@ U=&|;^"V-s^*9V!s Ew+Idq"7#SrʶSU,]ȁ zX _ߣѡY:Lxזi X5e) l8*F>K` kc+^3!h&tyt0U=WmJ{d JL5f#ڳv~9ZfŲ knQm+{dxdM0g&e1f-MdZ\T,)4J3G2>.c31ӑq%-FXt“V'\A]<3y<%P15Kx4A/QvF_n2k0~"< t+t1Uںq:")6 7W`2JW].yf@`S{C ~nڛJf@3by&, ,3[0uthFޮy^Bǹ^RY?$!mAysWY% *T2_GUkK d`|O gqɄo-fڨˋN2('pH: WcKTt/xF;AwM{ό!g.a;s  {#jZ֍d~GYa ?C:kNIUk욻`oنȎrnnB/V81HVKZI4IMvEezoOpahGƠc"M:7HR7ДgZTfIjf*,:4U)Rp> $x<_yzgMTM2q/\r>UqM21 H&nV @.RhGzcNp3|4~ 8\GiNNȓa51$Vc{w%^Q "mWL V ie(14-p='*s+0b6d'J:Kmѷ]jW/u!e[A(3| "377u !fDEGkO2s+nldF8G) WUGLnnƵy aR -_5:~4FI2Ϊ)0@mAG'OfZ Ǭ/?׵]v`9)u^*YA`7D4p5p`^?z  oa@.;?;ޑ7QzIɇ'TQb㷾ϖ8?y,M6t' Q/2e%YQvkWh~1d>vɎXKawYmY5njco Jl% N>ICH,%4M֫RqRA?Mzu>?2\L3}=GU.y5rV3'a4m=GOTx0 *S@۠>,.[|)m2J֨:t$Ȓc$Vr#nڔގ.qJ+v*I|=Ǝ}u)5EV[8hߌHgEn>M ~A=P8wPS$>vT?x(o/Hr>k YAבiilZk'GJ0:|zViǬߞv\q8St[uIפvʹBHDC$O'aBuon|2C4Z@63>Nq-f% W4,.'4u.{NEDKt;K!j9 rfxmu9TYF,4J=*dp}ϟ&\Pĝ)bےV 6T<қw( qϿuL>p@e޶]tw-1%g04c44c*xL.lEkM˂ꕙz+-\:2)?rzMtU\ԅwk-lEQа2 ,š;h AF,zQ V [2N!"MO4#+{~qi+yQa zE̺"iD))j袺M9sK r|ɽMTWHw@fIxkBKW$. sՠw Qݳ+O~K;|(7&Ut/) TRi(mn503q]lXUG(ѱlf3: YQYAto6B(^yN#sw! ( և-qgh\w̞#|q(b9&&cEPɍ|1F0[+` 1ĵR Qis]"9Nڱ1sCBAlP(˜tr<ތS7Q^RzP6*Gy:[ T"[ `d}hYؼ}9,?j U%Z+XQpqy88fF(WOlH ?8}/S݀ ?Nay2o(hV.5޵dK5R P-"R2rCHŠSt%@MfӓvEe$u5Z=} fo;{s`Cp2jw-U5pl?xod f!^MYK Jz̀rR7QpQw@wbglOA^d1u:eGNύL/\f'HeIhw`Ш@BAWB#[*m3jN'A" )'PWr碤Akd Ɋvu|d4)+M[ȨڛJj6kW?ydڰ4?!?]T]nSt[ M~o/q1AT}"ľQX~_ $S+\GqC* f4J H6!on-qXnhkrL74D1XxK Qb}$Sp C,j)J?趷 i+jyH$dG|7]옾ru2gR3`f!\R7I6lT_?1ţ>ͽW ~eUO[MFX|mȯQ}-@tˢ ,Fhm5[}?IH+۵OOٕe$*Dݿn-UL W"et B-w\0jC,;v7o7UYÿ07$Q4=vjKc7`2I5%Ϥ f<&ޯJrD@ΧDg092%NN 8"hW a9WIY3YIJ38őUJ[.tVw}u%9+wԨH;_[IsKEñ`-nߺ+6}_wx/lo/)GSexv_mG=JL 5cإi3MmYdmU orQ`V!_oi[pwYxL|Cs a"He<%?SHx-0GAul2o:{G\NG?Ϝ5&B)Rj?fͦ}ՙ;Y rO'؁O"12as0nh-S@=$uL̠xC(a9k}?闣^.=%n {d=S{`XUd'q)q]$S .238cs۷8t[%G+q ?Og+$q4ZC^*UP6Dj#=Hav側R$n:iI3?_3te1&8i`W&qp^LQFaYK0]ٰhd  t[,[puQ)@C'Mr @-Z٣y&J9&l_/3,ȡX TEW~U~ْ\~U{;{yC(vRJNX{3kIIح4#_.eV1M 0'5'_6|$J\kf9 +<j:2r_}?-&<{7}XD Gabw2$.-W@r[4NŠ K6^c+"AρQ҉Ϙ2>ikq:ۃ73gi}Mp}JPĽA0 8}n|T){lcŲtrvEj5 Eg0A ɽN)XjLf&ӈɨXQlToM,%lITtؙE-Lr$H>]U}ވ7U;dPYp ܌6x(7c}3x,}(OizBaIlk8`N\UTDIwkko)A%voBw%UǠcrt![>XTR]y)&m?v+*. zX<*I[.V_Kif;Mk01["Uڵ3՝ XLAxD1dGwxgZPO1;V)F3yDj?_W8n„05$;ŽǾ=#6l=ݼِ \;*5=ґ=#W`^ ҔOԫGjL*V]LBWJf0cX\nOU Y~92d AJ|:л֌U5Y4U~+Vc_Jo͔=YStkT"hbSJS3,Y@A/itZPx u0jCH 5Z"{.vf=qtYy~zWI0k65Xd[y9fYTLW]5;An 7̎&ގ="gGx]S$.jŌ'kp{n>ذԨyKȣ<nj\^CT@6 G;:u)nLiUiq59DZ)U& S0fC?v`)vqTSaEPCe@Y[) bIN~+VX~{rXsp ȱaoOoGP%ݰ.+/LT+[xi,z!]4Uhߵa",0rpRmIN^F5HS` x羇cV5v!L&ٶ)V6Mhi7(C3/?q"bM,1#Ym҄/3EhY ؎sUt&TNfcTb b:C% fkxN18XDgwg$=QW%qDg);/Vb|r` ؟K7!8LnE'rCYl{#KOg0(8DʏHsjkvYJzD b* +Oѭj"՞ sƜ!ht[d&g}R .% +XDך6w JX V ){m 㝕Qy6G_WF)Y+6ɵZ"zWFbp 7z!P^5=&%*YJ=†' `ّe*}Cgȏ˵hT|fwǴClŏ\ xntՊϷz!p C,5;-u(%+N׾  MG6b[=Z8!P+vbN@ z;R%kߤ2B_ -gd'@%TJEmefL9X]~c~34wxixSM2SC F=OϚXV aQ{y;THp(sJMl3 -,mYLhQ]2x&4^2L&2W>2WFR#eLjhѳPȝ$Ú6ia']K:*i#TB+̣`RmҾNj&U}eޡl "n9@N:9 S(4D{s,@t{-Fr0<;8踲h%%XRml8܈烹~j90球ps|*Οsoԥ ~~`_Hk{V׵sT78Dd}^E!uGaR~eފa|+DZ @6LD*:#LF/741>JHs]L)SZH j1m%u7{{ |,=k coA8Wcȋӄ?hd?@ C6,at'p0Yo? g?V٘;;/ 3* sQ}k@~[X>xEZ+6!╋ n;p2eQ Qŷfe"1bgogjD6OFzfxL5]DeE$IS@-15IPQA@>/M_}b2$`F)1SXme7m1BgKnHe:.̖ճx5$Ap?}X?O\qp|mt,ԟܓp.> 宴Nvqe\F(.E߿0%*DXd F)Tb3rhDKlYmNmۗ%3ht֊RIXPhו_p$<X(Ҭ4'z@mAegYFm*n%6<.|}Ɔ35ܰ`AVFZS&g*=LEN<-ۦNb\&e)+lpw#)H s_Ս8J èq2̒*Ef񎄍 Zұ톤fK]a/z ?T2G Byk7ɯѰB9X < !SNEijKLq͡=?xokjoq@.7lFuccl7,ȝ_3ڇ``r,[:YF{ UPMu㯅gz2tY:&$<&DnMO,R$q5Nmڦ_ HBKmWo&M#P]ӴdJ{KO]L@|8ߋrM5'3;.jJ>,a:Խ)W )/;5)^ GDb2"?GRM *u~:Dɚm-shkmER]cMuz?5UJK{nQW71N ?˷KJ']?rPb^jv歚\k u՜!L5 K0C3+"ٷ/%fxܨV 뵎Amp=/䉆*i%Xb ^%n%Z#RIlk%v'MPO \, 1oI\5AfnN>ls/mk+:#<"O2lج\bBܺJ$O؛{g.s<9e 7 yr(M>{dn9hV]oU6G}mUoᮚߎf\PKEm3(EnAW!N̮35g ԧp `=?^~?Ł%GGΣ5K_$N/G.ӇYutSV?3^9bpՓe>J'p&J#RꪸJ{ Jx$-^V e'5 ;xx>5bnU kS) yF${m\-^2;Յ5wgiVNn?pӁAXX[p&?fOZ d%ב9x|Tz*kvVO$:t>;\_aEVI/[C|i0ETK.a]!Hm3Ie tnDEJ_ASv(Vp iM d«Xv"F.K;~y}5 >y}%Ua hnlq1G~znK%Ds]2τ"=:HW1@gf1Y?DׂI]ˤPȀW#L"|@݄:F4ƝF3bMќ{0WH˜*kDV-9uqabg  DS8H@.sXl"lMtfP=7Ww?7̸,$t2Y3+O})"{Txl(.5e33{ϗHz`tճ>m5O41ֶ@ Z 큒r908 < y^7ARF>^ *!6\(`x]xU 0 ߃}d`WIǩV(4`^V 4lk? Z!Zc<Ķ/Ïp|sSo 4#'}jn[V~ߩ3ه"]F:FjV-q bWxiB4DW]@($vf-kuZ ܇ ~se:ek؜o12tH^ax"gzx]`?phGbp sJ{3¿xre'T!^_CYrQ(@j8z }u.Wf^UO3j"=I ɼP0W2B$$Xc఍K;<,%{z #Ez(x9ӾTu-O2bl4Dc|rZ[ V*JrLͤi\]Q\Eyk~/Xr)+-h|cYȞe# p_c-5TXI[jLD>+õ^l_qTնW0ѵb|K9)ڭ2dCVEԷ}J1DEǮPzV\⎄$l;@Ⰹ TAً5+ƙ 2BJ\罵rϳ`8gYȗ0fߴuzɧ"מ~QV)S\ iد?lH"PTbbL졠!! zI4 5/H~.YM9*!l}sUǺQ^Y̤wÀBG~5EETb'^e)AEA b]H w<˓AZ`k*~\ݳLzRY6ʨ"ĀȲ 3 J0L8[؆ (wʨs]ߏpfx2e UpiQjY_:'!ex%HQQ[F`3zRhRy%At|6>ٯjt*U$+ħ+qZȅ-5TlVF*QIA- vmj=Oxj2gq$.G]A`h+Z@EX= bWlW:?2"gc!w;μ< e*V"lP NEaA? yůRnr%KΈi=. :^ ȿj"W ApD7$/!qK1wtsHxM<w|f*cC qLS~hK]O:TưfV$ye@Qp>>0_hNـ*pabMj.=.k]NDQ_OI_NOhobvx:ˮ YA>MϾ}d t>ըn?'#K;q{0+i|?9!Z YHT~ghh}.PEC{쟚:، |Xբazcl4TSs1Dp+qy~sv{B ;5MU:)1+ZqNk;VImTk%}g!UwI 'uH݁fcAPH>;!Dv7>N#@}i{eMo'/aFn4-33(]T BX3L䣄,˜"-k1$;wIW4>dL *4{)T y2?1@ [ߤ7Ode;A-@'G'4kS}ieYZi1[ `jb-()"a3s2R j2$ XϵBtŁ,BO~Ww5u[MI0~kBU87<8큌u'4Ȯ="U{>yN3X,Zi UN"UIM]iOʐ( f ^& m*NK"F[ZCNuF/~1KZijim)m/n3,_SONCrω L678O2 aɫo%Tw|w%2<$qaEz?S1Q9ՕNE'4tm5杩;U޽0So`ؒITsżnj: 9%ƊR54Ź`PGf/Lϥ7oNl9PK?[h;.P LY/p~Gof.aG@a+OTkEKt<D!!։g=x-th%{df-b|!ƐL܃p]y}sOdϵ7C{⁻wӋ~K۸nGj( %Ȯ)rSZL5*ewPGY ɓ-nНZRm\&֗h7:BUs!:̞ۆ -оjlsyl h;]S=P#? oDģv0VG $PpE,j}]edpܴH|UC'UZ ;d77}흨Y!;+2M%`_n|/![Jd=>V/G]+2ij *0DɡzןD3wR ;c'с _TGz8$D|Á#Zi]ES?DXP\.X_-Pnʀtǫm8ΰ>al1ڿA{W9Ȗ-Cq 7r-zɇpR388ar5j18IY3%98܉/Jy c($E oPKDזhnۦTmpZETjU lQ5RwϞz17ՆbwS:CILAp쑠XrV& FAI`.hv2~4wܦs${a_AT}$ v>uFr2|^K:oLb>5zjQ5y!>_knXXٮ{+ĵ׀zT>Y!eJRn ګc7 XH &d#oke_& ߒ a"I"dH\ދ95 !A2$ViҜB{;KtGKWO8}ш?43ڿ[[[s<WM7 W^mh\5:RsyLLDt7b/1 qtd =ז0 VQEd7`:$eG@Y +U%IH 9b2gܬ 6PrvmkoVP <  3Hf.jVHOdߺ1t[e+/ u "3t fps:R,1j#,Y+oI͚LyiYPb^t\U2kʿ6W;H p ;^8cWU$DWF:Tݞ,H69a(H1*)p,}DmFt#,mo9mh h:=yfOc OY溌eVP)[}#jDV<*'NP?΂}ӢbT7=n.H#T")vHǬ{}UD 2`2DX^ WF41Laxb˟Mpk7:t]:QRe'Q+Pè R\2b|u6J1_gUaNPDX֋DpeE\IQT'*֗n׈ ?"Dh qlP**G:d ׯat5%duMRxX%ڪݾ=|tg-3[e薿T['J:[fր!$d5*f,b2,kҘ-VHDDF.VMܸ#K`- "~yu eCPypkN5ihN@Yk4f ~rPɃ/+qmo SW㨽ܳWti(\'x3a1}ahLms n1{ !ЃFmA*j(LPޞ vպB -ݲ~ANgrP+L2PT~O{@0?S/?h_Jאϭ >HNHOȑ9 ʺ8G:NuK[6f- 2BLè[f}[-C/vCck}k6OYhcХfڻ`x ߣP\L}`a K u 51{2968CY"n,v('ހ>f|LUD|簡`?t%Dy`)xQl䏠 jy1hOJgE=q[Gڠ6,N+)̫MNŁq%H|QQ9;/̧APy2, 1wݖ ǃ y*9T%l$N!0N,74 Aq.iC(=,\36n͝r s*!Ž )% ԒImhtdUbk~,rwƯ`RMޏ^}UEt_Rڶ.d5)e J϶o%vT&b&µ#j k_k?;|X$N@Z]B(9-E8v7U`,z2BU{~IL{}g(ߪ.oYkgJ6 fBbFQFGZI"me'Dm0S{6RUx+>s\KVyȎnmIC>.-f.^iZ%yM4bG 1a3O1^{TL@a\Уa'W?Ѻ K_߂5駵ܳߖ l%-Cg\^r 6yrh;/Vioã˵+C>ȱ +tݭ~<޾Ι@}jL1~?ͳnVVE|0( O^a) c1K{wā:؏",|0ڷCby?ky+0U!rjalLyʢ"5]qw4SK-ZJ6Pj0jquQT@1|_!UFbGdžL|9/^|~y\^p:k¿@LrWZJh\~59ٖ$"IUX8h&"s^s" [ c.0*bXݹp{]QzRGtI13`s%H0R X/-O= 0=&;icZ< ,HvA H8 H^pc[XN{2'Ƌ'W_%W G7- B2-z9KT`U!\w+9q[ݤPY '}IJ`]җ%F?jLm)$(8~#c}9PJxFkd35ʝ72m*b&䈌(+@+p~ ,ЌhF%=9)ځm;نNT5(Bl~x\pavt/L|[%SjKU ?EfO.b u*o7BYœs,v)#@'|E5\bo3dU s_g&' cX,o5N5팾]8:Dnz%;n%< {׎S558wǰM3}HqLSU fjQL&[sULDNX X}9֜;'zsrai-zbsč='ZF'Z'چA.)ʲJZ\Q2+j5~ƒ*{dO̎fSޮH=4о)]4{r`0~',ŋu(\o2,UG<[ů;t]>ZMj-iC`z*00q3 vDžXj2T]j%W&pd@Z<܊x0~~֡')s^h/&íkqa*ZyɗCӛwT= X;Ԕ{W(T")V^5&V ZmU)~f<{rha@J\9ƺ:#ɸ"FR k~1D<^L[w9-H^t AuP)0Cz]sjP8ݷkAp]'ly\LЙ0N˓Gİt0 aI.D:hw0U>}bEi(!nDKK r HKQ\;oͅ;&ߌvzZ_W&4W(H97ݕ5pq<:x I@_ MՋ xoP K0b8擌\+Lbw%v3E DVfT31h8oO*CaG8/NW)G?)Ai/S F-܆05_P@5iY g"/艕1wrdɭAw >Nb9Vc7JjsS](w0|l*vМxi'Ƈzdh-;aN4\MF 1䳊cD$n(E&R:]M߬4cvJ؎;j雫g o㣭-(AUzl孅 "S:ؠcPw˔ X#]G#+ ƿyS9]jfӃEc)ˈH3]f`r=@]ځF-=U)RJ0g'PǪ zɭ0|r}*g![P+o>H%j 5$PҨݪ_7Gd›pA>Aʅ?wwAB2= ǮLzv6@ڭX26!+Ho\v'A" L4^(dTL#I&D4u#jJДVO.-^*cx;B_1g,O,Xm,r %#/̴2'0uiq~HVȊ s|i^ٺK{` /'p#mOܭv,Z}py=A7KxJk6#%2d2vGB7O,\^E,[ H;y2V6AZ1A!PϘf]-\$*&!K AmIwjmA $2qA }w$NxI`E5aAɥOcca͊~&Tl<}?$+Hf>dAR.&VDJV_ðu3Sc\WߨgFS0DZ)L4LT2\#κΛOm-lzX CoiPc/hCܨel.Sv35<*Wr-jn{ÜkPfq^dvztؓ94!ENYIj۫8|e~Nצ_ɰGXYa9[FNlEYRG5$3VB*Q z #KYde(-z|* ?lX#S%fsG$d\q B38+M&gLDYR^tca'.&8 N@b7{0xP׽v966ǘj0tg_$ǿc!X(ڒb# V?XA7RB0Fơ>QLq_FMXhS(v c52N_GJf-o;D]3MovH,Ҽ24YЛkf ]?vE?i/fpߝrǏZvb/cy > 0֘MQb/J:K>;C%VA=Ic_Hտį0 ct3pp:CS!cU#喌uۺGC88m珯)  NM6zxlӠO(ld I.>{1Fny)]ע OW@ը  W^B|G=KxOCRw|\b1 Ob/Q}b}NIy˿];x+OZ9=.%_n0ƔJ`ouHԚ|xv`r?0|ؙj{ȷkXI];R^O炄@1ԵxjEV̮6ZE"fĕM!7~BhCc^O&ٓQrlk * wvTTN6PW('[ZՄEU/c)|_ Hf&}$CN! l1HUq>KU_i7b\39WQka!D"7{렰J-"N}'U뇽RWabd"vϙԗNG'NR_|oz~ BM  A6Grjb5 oo[t)_4yJfOьkQ1  78t">M_('Œ2 R$XC.4Rm?#?%{mtzbQ 1z+O\t:Rԣ8fXfܰNFEg" Gd"(ЋqD)>lmaI;k5(44@#5ܿ:7ixB|2:nU.s(CQHK(7wk4LE'/D:R`{sZ^G;-#@ف$?JT*jO:5x,C(`m͞Ad)ȿ7߁~&~Gn#Z&W{ō0K &*}PCnc4ϘhF.3 1ϐS~R\1k1R]&9^ԙou>6=DVQ}*m扭ټ5Y|`%7Fk|@BzuA!Ke$_4tM==ӭIW8{9yy&6+ u p>=Ӎ$UW/ž3d {LQBBꏞ4aCD6\|7{+`i}~"?>)Hza<މ'k8O}`E)k]>291.34vTjyRh%d-|A=5&uX40V_֬%{͘Z~4\Eֳgܤ8ң.wVމpOB}zr$zQuOh 2ge8Ux"[<~vnʁGa];?=[^&%RåRtCu.7mds< Aj-3"a\ c_`r I uK{cZ塊۞WdM)fG~(:|DNFޏl܀U}᎓bSJM=4ɢi VC.ds4? zO7ە*n',-+%X >Z  E)3 #&7Z=U:?=Q/hm9+E5KЬ'TgKd?dȽhiuZux%) ]b3Ɍ̈́V#MeniH/[ɱvm_;[ܱB%M-pPqq`DiWơBb蕐Yu6I3([igs[!k:M( e 'U4^=w>,yHR{J*wxY4ӴY`wZ"[eG]e.{2P2{T{u[uOE4aD+#'eq7iVnKhyraW«<ۂzH~Pųe@ў3ߪ7 b86R$&BRCpOcJCs%L|],Vaa~rUQba^j%;, 4 _8U}XGzu(mu-׆c\k~F, a[V qwMp:'gJKhum?ɭvJ~rY'>4t6;+Ӊ#|Fm8N"qP& r )4lKf^}#(5{T#nt눅4PğTTPPYC,}(IB&ye$Ra{[>CG 5Ƙc$ݷ!>0sm蔳]˼(AIT3$I,"1m3EhI,)2-`l)+4䥨ju:n"\0mQ::fgs1HLQz9q'^iתvoL% aݢ6%e*`ÔNrn*i\-pӻ&Z1{HropK[i:%~cܙ";| xOAE—KM_Nk9 mBB]1vae$E P8͘g R&瞤}\ x@ kKֹ4E lWd E%! EZCxY.1B pQZT l-?H(IynCڣ÷XGxgSD#>`dpg/IbV0NVAxYI4&'gYģ (G2fQ{0DGm Yr};I&Nq 2J=a̋+׉=~\JNj ߴχy<ƀwS' a1;kyڬ\/oTƼ~#TXf|t6i{&d7bq}Iٶwݸg߮ހW~܋L~\,9/"YO3є0s1bXg]} dQyF[tf}hhh B 6|`Q_!jDG *χ"AsP՞4pY4ŨySMCts5ܻF`{Q |*(t\dٓ*;zY h>QtoVfkOBŰĭĜnd;"2ۙյS,/Vc G%/%zQ }Ӥ{am᳨{/.ZqՔM!-مf˖ɒyH~;;ɐ1]\̈h~} /3ܰu!CvaZ,2W856N^<L$ʪzl ƃz]P?L:GhD8B8 `2_*rE#s;W8, r/Сm `@1vg P U8zqG3\GXj& (Z|XMSZo>[b^RL;m(sD x/ͅXlPB~y+Uܶ?1;X75y *'^_Tw40EWwN E']Ob?>ۼ!*bD35cֲ*ج+Ul49ۨMByRE,u%ȼr:5Ϛ 8Nh{">.l0]gQ7ipJFb,@_rl|=Rɓqh dϋ򁯾)\q(AM]r^1W~\7zM<퐓 %}QƟ6"6:(Mg>N}hSa6) ς7{=uQSN@O9nִ;zͻ V1K lQ 'PrMX4ҕ1Y{Z8: L%E4 ~)8-a@:%3A ZTP:lnK*& NAY;fRsixu FV?]Ƅ^q+^q&|8E/#C{f,syܘoLZWvkt i ȝ"OàZ+w5:|^?T.tUw4IDr Z^&I'|ncI.V#F=_ ClyDF&o`7@i{)G&N*m2E2 xɇE -D.2pk$g $ 4c-~1#zB`TJg^Α} .Gp&!g$Nf'c왚)xR;jyd  U O)wXDdd:;iZDBOW67ي#A/DMRn8X`]{sޖx^K:,7gDjSnf2Gb\yx%NJ?뛷:qzfQl cxQ#L쌌KyƢpMrS]8~=qIVӢ8}KI-# '6X̪żL nq<};^XFΝ6<{H׍VJS̍Ҭ-;mu'yP HnF$kufY~_cS_qg~y΃J%ziDZ•U.Ww͙'fftڶʦ§OpaFj,)o͈rG6LZ%Ӯ!ډ= bAy ۺv$.MCT~~4eo u&=n lN>Na^*bf1;N  b7_xJ[E@Ԁ_obA~ҟ={S6#sl$) !w<|o; a+C՗1H@rUww ;U?RGu91,nyV3ЩqKvAnl#T'4uqI9(!m*Vհp,/F|`<>dmz{#8 #i~,0~dS̺6\|S 0@A*P'JJ&]_WJ'xwն u,EP]?%=4^ kw~&ZgJ;;vؖ;3F>_7gLM`γa!:dכ`XVX NvW>7("đ5ngmE.1X8 <ϥ} v[#1m/n?ZACDMu[&24ihq'x6 0xNkDeԌG6./Nö^KM3 Y mv'8,/Qw @ܿ)~>ߑ׷{C Wy3*_p4wa<ףP;bH<:Old@J6~CCL@ۖYއmw}Aߒ aY_Ze3dpӞn<aY-ecrYcGE[Z b' {p)P(҄ aoᚓO1grB/zN=R`'[R9 Nԑb'oD½dzZ+P)_;km:V1,\zմ.mS<%]0Ul`6kZ8ƸEΗ}CRldTFƪlO$'$K%e3^ږpN`%?s=n^k50~xu ^Vz8M׍-QsM)_ O5A@TCr^<5Y9ѓ2D [q"lmRy_[79u d2iDv67AF! }9 -i̞mmә)aZ l ,ӭ(9:$4*A‘y.&Tb#pm}z \kH+&"UӖC|1}oovNU_nߵ˝TTtV_yũ)tf6埝.EDũ:l q$]X˄`1?((24rOFnږLqޒp .-GvMQXvl~(A|j`r> (yJM?TJ.k͢G>_;@VL_9KvY@QMHD3ĶA:~P:IE5QNS*щI#"zAKzXvlB^CGze- m/!dDg%BO6' a-W{lhS.$4'@,+W/,Ab1 :./05 [g@і:Ny2"JҠUaܾ*ѹ\ѱrkL)w$b5Hf?Bԣ+VѪA1a n1R"*oyÏ)7p eL AJwqs 7DE<>H68-:GE,LjbA6jj(Ze#xg@mdY<%D}ӣ&Jj>}-▽5Z_`p0=|le7* 6 9sV (z=Gr ~>#Cx5.=H7D"=֍6TӃUmDFA+$^! (J:\ute bMTe.Jz.Sb.ecmVq1Uabn cӔ߆T:`^P*~"mA?EX5/4F8!覣 +!xam/z&烔jl]a tb`h0|D.Z F賦*!,U\̩ߨ* SOVԻ\(*֋3,c# 9T< _5H;aCAtA f7 G(`5bacl j.eXR]6y¥_=> @… ^op. |BR+ao@r:SlU}؜rNqZ%gL Y6ņ\AحsrE ɧtTcuGKV'v9:hL(} L}$`tZUxˤlgYN{&,KAӫNZ \P' 8 wYFv&3A|s,K.'ҋP Jbў͓64#<}Dt|cl/BFbtj@ǁ|u>|vWߑKUC?z!d%rjJyk޿@30Y_ YdTLCN;__1^"\BF2饐VdibFeiXHAczM[31:0quHgESaQY ]]WFQ_"i=sfc\:r?Ž}˥kID7فD银`NcKgɇڄ+mҭC> 3ZP|Kw!Fpj˚6 ^̉wKMRM2϶! , UHMv&m+Ͽ- #)Xu}?yvEe897F8QYVfe ] sUo=ן(G&>6 Q: $?IMUNvF[9b%mcJw'f5oLo>EooHX!%*@i:`Oy5@%3YG kHp9(G4qf[zi|  n&IJkW^"Άai[tN%|) fBӺ&DOzz+%oKqEBn]ZȚ6bh#cő)gs+iі NuԺAh "zLy_Du [ٮԗwiN:dcz#8Zf) I(ލGssZ)=Qim5l:'pxN]f=pY@-Uǥ8Hm/E# ]W..rQx%qd9MMvtF ۺz=V$\-R8knr9䓏<.1EoƌX*kI=-dtarD i w &vx YဂˆRԼQ\Nc+:pt}99D'0{]-_W.ZmuwQuٱ;EW:awrfgKL@*NI෠!64{{:٦Lttm 5FP^]reg$7 EJC*bBc@UQJ"(_jZǯS /n-S.fڬoگQ]v;3#]| N{ l)O<Ɗ4^Ɔlwef(< rMZ׺ VȊ*P]^2b3.W17(l'/(}_Is?ζNH$Z]Qm\`VvH,;s63Qx}]pue6(z26f>:i]r/XorE Vs! CWC{)'B)9\q ftqȃ(q|zWN|)m[r_/[,C 8gRv~HS{%ŖR5U`ƬSQ=ԗi:[DkPSއF$@o b`}XkE9UiюFD@qF < yP))&L r^ko olE5{n\|krk&FV5˩\=J})nZm_ʍ2|xeV?$8RiIRzx2!ɋ /j蹶ʯ,Zߺ)Y&`r(-t[1]γG{x9oE񻵳<6lqfeT)]N1~Yy8OuC?*ۛ຤Ue-}򸧾zTQ> Wi}/${]4Fv$M}4(hoP٘ d¼@ߩ3E7{Q"\oG=2$kCFxt4g/*'d(\ 'KEPn͙ARxڹ ÝEEmg(]|͜s\2]LM d:JG^zܳr ؙ8kA7k|Zw("иA-6ׇxJ|u//W>GkT"1$-^`yY5YTܳ qSnS/VweNr7.j̕bTq$4N4!KcC7ޟ|yA&D+A Cm8"_3ZĨ(0 bT eakbU,,ƚl(L9:bS P,ݡ ~ɬ]ß Q"k.4L \nV 7A5#ؿ/Z5.lRu HB"Ùtŧ&Gu}f$#j[( gQifPN 뤌P}»yı]K6i}EpnGѕ< mwNJ̹&9,L4 iKZu)imd0)G2U5Cw6ytL?pƥ&*#2:"_swU\ PbmKSٯ3*RUa ЉSoMZ1?#*#(zd3Ð<؊[8EGqP ||"oYs֠cM;yY}8eE}71W( *q #3Za:-skPAd8Cw)3qWSg3JuNbe T5[ZimOʦ>Hw5ԉue!.BOʆ12dţ9H[fd;{]d СX-B#gD; )c{PP aosR,>K0hF_\yu^9ܻv2ڪA2hs!9eRœw>C*M~`hJ X~i{?E+WŖ_lѾzAFDOضb {;@:CüL6MO8%lE m}0sѐKg|MD~i_\fTڼ1l0uG@9)~b\>eeQ'lu5_BD':GۘEOH<;+0 5 95{:ۨ֯+Aeᛤfj]&Ul)r:1L4dNqcH^41wA]%gG@F3ރt}ΒA| !uK7{ %^vc {Q3Ix4O~ VE(,/ lpG|/.#*K_A5ڑHҖ"* wPr aʷ/A,@/!A.|ڌE~ɖG2zb~9G'7l>qW/ofն|7E?-`^PT=5p"8`︝ g{( 4F ދn$d5'jc wz G>M>Jf'(2*tJs"r=+_ɎD=lxzjMQ[ɼw 6wMG!>+iYڥS^$: c|GJeC8n&y)/vgYniD;)$IKoDVdwc?1Ŀ}; 'OR, ,갭aL.pMħ' :}>q MFgc͑9n%׬{9ݨ0Kq#0P 3[9)0X_T 3í8 gK.eE['w塣&E1Fb7׈|LV3A[#l_-y%gՇ,S6O5VփƔrƀ]-vjZɌtr~%[Tއ# .b ߊWL8(`%к_.Fe7&[f.ts0;jQY mSP{&Oǂ+ N Mrl^d$11w8r#?ל+~CO .Ka=%j@*i"8# A <so3N(h@5KɇA}&!빆nDH+\mLLRDV\ fe{'a:\TΣ]4 8/6~izқn3t6+<V6 5b!GUHgڰդAPzߩ!h+@k,jZ+"`Yƈ<δ[Щ8?8l} .Y埂E[-0ɭ*ERru"{1>9b xoO;r9Gڪ~+VJ,m CMssaSw%O$!) $'a1Ul1 K9φfj!& A`܏]ت.Q zGPGBDO=8ͬ,\f"lnX/Aβk5<a.Y:(Y=ɩ]MLTY{xh:VEz **:$*%<=ۨO`BYs ؟eߺOmh\ `E3JRso.'a X$D0AXƞ$I6)ck̡TLfwStJ Ѱim0C)\@ksI!kSlZH``]*0 a(DyC ϭWsQ< xJ'Pnia—`JduQh`LI- hZ͖'dN%m͑++[7Vpn6[b?!Nf$3&̈́bo !~WKQ\rآL빇F ά򮘄q#1L,6mF&heq anra; .DM+9Q D]<4"zie?PtrD-[m)\:-IA} #9Td!P ' SԎ{U_5t9BV6m(ݘvE=w OV+RT:D{# A4oΎx/-;#ΐ,lqjϬð1x-/@2N!9 p:տMr ~k"/*EpBEC#$*6ѽR7Á۵nt?gDT-=z!.0fN6$׳ԦT$M=X;VIVmk~}3B\-vasis!C@L+N\:ŘU8DzCt'i$/S[lsw5BFz(ג!gXg["<#"җڸ'3wW4G M^Xfj e(snyV"e8q ʈ*S|T폃/oyiwè\o6fX!& –`Z<VGa;-%.VB&n=.([MJPwƊi8˦z)Mkt 8#q^.Y ˃x+ Ȅj<'SEB]~ރ(VU˄pkxZbp(S%Զg5fYc2^Fr`V?}BsSޏo~}=oe? H}[3i'wߎ}: nl8/I+ڝxp/([@)Th0$ݧ m>X$Vv.vf>Fek08%K:Y)ך x`"IKy"GAZi7Gl7M;Ϣ+S )eK9F X8' Z(Mk=^~Yɞm|QTXΎ0EKԽ WagPF&xp~Upb%{|<ǃwSy +n+ Ё94.[9UwS*aww*wija@l~# ';bgRLc6ꚮ '0KLI mka|)=E'䀧:B&!✳giUrĪ`, ¬ 4Iʬ?O/| NB!A9@ .huH_` p)%aeGG0]tbrE/cF{p)=<:F{4GfnDwk4k K82"Kz;řr*H[t֫ko;<[~|֏GoOrmPdͲ"tơ9y$[ *R_p7tcoe+*x E0A`mtN%nDF|x Jٍ1/BF$z蟭ʀ|QVY=vgCmSk UIO Ls]KW{Ll-PeGZT: 5Is& Ӟ]$X$!y7 UlKb3JTU='FN t@c7jM*?)+Uk?׎Lu6L7d=~la4ćkcfF͘o&$!zmGwUvw) Jy1I[lH`-kwzZ)8 sA۵usf+>/ph(䟧?S~%hh`ZLh ".0lW4d۵;@I޴lG-=4imHyxBVڄIhfꉝ#Iyaiy6`ńt̅Jd0{Cٞ˵o A#n+$sR" tΔ^0ڶb~X%T ͞,G{]<`)ټp2rE+rb} R H~B$}ی: K0X-ڊ+'0]cee/"f<^W gTSV Jo}MYtnz&>@yrw9WdN m؁aO%^C+Tn;%bvGD*Lp7V"54)c\nK0BɔTE\(-"@pkVóQwJ*)Ng @,UTٓČrNгyWQUD7PrI<^C2?%Rn!$b^@ɬKv"z AUPNIcPJo3jqBYHR_ي"_;d"r춀H_%W2=W)Cr`7×(itC@9gn[גBI!]EP 4xYAAxșO /pt2/u ;8S< øl#D&tZWS-vn]* 3csܔFdcx>w)eKlXfAC#}fup|NΐRl\_Zg SaY~ Inop^f`k+{ՈaiJ77L`\a![}fm  ~jJX':6gj #z.k0A2ɐ ^06]ܫ(vԺ$"f{.PXqw=LL&)i~l$7be_m2ݧ2Dd&'=Go/z2:c2nݗhh= QDD__䁡-_c`l~sJ=CȰ#WF[0ٝZ^D,y`kT\{v9t!y$m*w"]@&HSz׀9;纎"! r'- \>@s]t [\䎹w fUJz. MQ Aч7s3nX]J k14n74ݠ۽uhl6DQ)@2Qܑ A9nm*9X;gx2}!h1jJ»I<.[()!*}wWI0=bh'.Aήpo Pá﨏N ѯ O cDE3&#}N۴kҚ@;Vߧ>CZ^Dۭ/;q_t\f4s搨< }ɹ9@Tj-w(K`\<ѳ@Vts&u`e\&?2tEUx ŜOb4as KLI7};Hs)Ǭy"Ngjk]iN?}Lq鷤^L]"JI FH*U%em1|r%\n}0G9⇴ըi.}3iyOAH#G_:]6ޟuLK`dI@PR5@dHm ;@;Hp62_r%K*jﻍ>gȟ$Mo5Ѓp*72d*ǭ8GdlB)&/l+WV]I쮋 铪cZi  ` _١DBWɹȉ_!ڋ ]Hg_>aJ@\}뛅W!ˬPVbvEygo9?4JeG}&ڠB%qۗ|^. 3UT:;ro5"n"A~?w4Lg0GjC!C:!Q6d 7D!ǹZ44{`ƺu>]{,DngnmP| 0LmvlibX?R+_RxA(QNT7vۉ}9Qҙr=#%lGx̵YYoܾVR?f;*E u;q#_C#qy"-DgYu'D+Eo=:^7H +>H3&q<@3'XF}M#ikH֩Lq(Ԋ4:KσE'O>eti(m0{,3#A@GHq~vO){r +ИGzFB'VflMOT-aIc PA[=yG^l1'+PTƾG8p1h.C`T4c;xE/<&]q?92{K2IVx*0jTb4K"I]?$Wen$MdG]W܎m"O3Ӡu9^+&=6@`5.wtt7ɼu#AfŤ@" wG:sD=xX|@ q3~E¹4wϖ}Ml1<`g0> .9mv+,KAB/msnpK@Zx<1Rҿs=𾌝{J79D(ZPjyN:4h{(voև[li ,߆ܞBȜ> sC ʯ^>f1g^ p].>NpJ:V~}:!wL']O4c 7q(uO>C6@NW{Nug|gx>[XIR~ZmYV#TB^i0x}?sC<,3&W5bг%uF9L~CvCIta0' l)T]nxi7dY*!gV 87NtOLH *}>mz_7@6 T:E_n3V$`Q##hZ,a<(d惎Gx p(JK)r rW]b^ؔ$ Ns@G UGn!HZaWՋjkX|! 81ϊdNRCrX/d^߉7-O 1(xS`.򪬹zWL`=Z@f=ZCz- F$0_OCM 22N^0YT> ߺV])<J HCp÷u~Pk>v+1}K9 KIƖ:bn-=C|PU5 *BU(bP6 ȋRx.d*,Lt87iZZ_X}#\N~8ߜKvQ!r4Wțe9 Q͸C+*cjq([Jj*2ևǬrB wڿR,'z"o{5-(0HtJ]ѭ|' 4>C%jx0׷vIsL`}_ :'sY]Tx_[5NWhv:谋'FE`?w' ṋ WG[zDު4bĕ#ThdF4'w`q\rX:fLq_Z*\.ی}"J/\M=w0@/Ę_cM*ϻ}PjvdYƲGPZpP:vc\]_ZGHh 2WՉc)J$y([Cl*zx0|s,(HT<͊џ_b$!r~Nb*ɦZמ!s,NZrqi& 4'caVgDf([~,îYK3xxl[YraãTLߛ\GEtIqrWgV`|u?Yǒ+dz[VVah{e;ѣ 20P#>50qaOtEjˈeז)u´_Ь>h44hFkwB^K8[1 %P`=C{ȩ@'>h21}? $yQߖM`5aM1AuumQAGڰ˖r~fg{#MrOOvVRɂ+ƵϮ ]oVݤM4q ykAzvq# m92Cȳ(XPg*-~?9d(5.DAC^cNΜ?[Q(ōB7&A `Ve21 Ϋ؛ji Xx5%-ɡif3;vԎf% hzWHȟcz}~0a{U[Cq2{>]XԠ("y". y>v 7_U̗?#gL~(X ڍp,vg6HŔ&f(܅dɻ8Q " &2EY`͵ A># &7ҁn+ǧ_<{"Zmj.1m`I(5:hz.ibS> }ut7%M`UwrUdy].S\a&'rko$gY\Lx/bՙ5!pqMh[B5HyBmqd2P8q'h /4~=J}h(Ok!}eIvݴyg;Bb :;W4{YUB嶀Mt)gbENs|+Cځ a+Ś;࢑`kACz9e )9`Z͖KWIC6bT]Qg{NuZ23K,97Id:hnM!*dRU˓ roJز4MxFKѻⶬ4yMՙ6As(v0O ,:k'UUߓ0Gp}D~v>M AUp^&R_2`}[TK~ZUkV xz %ppv^iewg3'Q$il/`ą4_W))'?);mzlq^ 3)#L/;dˈ[UNǺ+˒1 Rc}sI]Qvo7U44" ǑpG.typo^!+c4/Dm,j&o´e\lljcfky#"wf͝[\"hFܞVbf75 y#Eݎ@OFdlʫ{)Q/O9_@ޘMAnnڅPqȘP Oyh,F"$A2Q*;[-l?5+h-vkf*R*>M.yɏB>f{WV* ̠_[q;Po|Hr 2\lz$,Xr c9lxxrn(]jYZ<{XY7S_mZ!/gP@RtN+6ʪ5%T19K[&N놖A+fQ(OPNI%Znu}VT# ;`1kZL̦:coXdBJInLw-FҴC>mM3A=48#d\ 32W̗dPY$}y59W#uU2tˬFnK&CAt65L!W9/';fEM _)viY@ Hs}iN)OF.qV-8`F_Yqh唣- Тj]ő- &\hCbӝMߐ]U!yANJ̙iox{!|Ximxaz)#CӪ=}-hY$BG7(fuptUR{!:/%$TRKlw^k}NDWqx |ɪ 3蘔D)4iS>Y7+vU cմzcfS٠gjtx,FpF٧Q^ml 5=yEg~鑹6*v^0 ez ,Hn֌xJ?"'}BҢ32Z/*[ςsܗc#ﰰ^޵jevVS!=jl^;?5.蚓=pQ8I_BB=ުv򥚥-ʠ|>lq ̰gKD L-B`6bD=[9 t6r}ΊJoaz̑CVՓzR*pr܆ؓi{ @4gP/^8[f(AVfQ("+R૗ؙChUs◴{9ZLiYyN~2&{Ɏ2*%:cy8K`1=}%i9(eXEջ:?eԚ2+-m⬏]WMIev1Yb˴m}oT|U'*JA [R.X/O џPwyM! oL?GNwVz2plj҇#;sbQDB42ik^{h+T*Y.E4MۚE3"u4y]1[ok8^t-v7az1R&SŢEr,i|Nfy;B4< ?Q%q5X2op?Kּ`MNxɸ[O$MUtF(7# ukd:fCRĒOish_ HS}JfϨ_ 9w *n!s1wLj0A&M`}(D6\._zyhhtRp8WcEZn? ^]Gt8c3%6ehiĽ>]jy!q#WQG" We"S6V?ӭ6 +:͜ԘSąhoNẑJJRV>F츰f(hhoJCѕu^P; 7* d]qOo[ //I RD@G0&^P)oY[5pVMG($|)U%W#Ǧ[#"W ^1Whp ܑ Ā9@dbNNĹG+*ԭdh3ȕflEc"|*X߉9\jzrr.}G4Qб\sl {h4: ;R8{*W)Xydc\W T&sx|Zf{Ì A 7DTC\gaծ}YX:7y6y:>B= S:`< b- 5F4?@L*C|&=4ȏr<˦ډߑ?lNO&v%Jʜ„Yb{A5#+I<Z1^U+Qδ]ph^續l݆͎@$m=#=Y d4""h]PlrG>es納4/ӎۈ*N2`q Q$p6 UMochTRDjaZ9xv%kHWj ;-(I7NC qa,LVо.\֮`ٵXr:AjWŷѵN-&LV]}ZWV[,qaZ > X~)]I"E.<+'\r\sQ eUfeYÖD9{:^,rh3C/ >[ObN}"x&$'kD=]R$CtJK<\a-z`l2-٦M+g0PǗ̴ˎCPo;ӝnY`)&O ~uj)1̞ ZNо^3H;q@ݠ~!<7rϕjFu-2c;BC9tIcDװ1IepuDM:kNiAb)FJp?~FPaV+_GDRK+kxؓ*A:o1'Qp:N$-]WFOɭ#ᱛ[Ρ2t~ʠ\EkS] Qig1BUEе\C-!O.QI9v􄉯Y:|$w/_ ʦ/sB\%o]{ed55+'!JmlŔG[\))%hc40 R1xdzCi/$OGV5X}R6ᇑ?u 77h4`է4UB6Y =| |(YLFgm2; km=yCBԌG3dėSҚe6M 3O@R؆~LIRT :$Ջ\<9K9Z}ވ6rf"Qx[Sh/ˤ+07u! 'х>^|%'2W$2vtSdΏʓk)Pi{~NM 3&X& VX2?Mro~d[D)YZxö^_=7q(1l`e`bw[;k\*݅e }|0.tz>Jqs9&/;}Pw?!: ^ɟjXsTV}^~"+5R Bp PĜқtB]dB]&_?'V3G8X}k%*!t*_y%M}+y04:&wcވĵzFaVۻd*kByRb0<`UWyr>% ]Һi^a!OeP}a$ݰh7js5Wk~?7rr `_-%G#OٙAkڋ4.F J3b)B]қ}̞z?t "wk?e{'n縫H,9 J饹gVyeQ@"yD=(4 BTx} 3Aky wMhrih])FX~Ciy؀a9OA8|2Ǹzhf=+ v}-h1ouNͺ֓T)8Hߪzn c+k/iV&Oxt&K'x 42x"ע5y8`ugeCryV{kq;jF:ͨ .7ԏaJ &g@ 6*M|(zq&}S3"k|WOa^eUmOa;,P+gg6N,y:ٟ.(a ~؇@m@q|GPқT",Y++.w#`{[*988HsAĶuT(uk.zcX-*9B j?'#N^: wb!+kygPLN->' %bs!>Tcd$yziTEf, Rљ\dE덇Lms;թe~Ole6S)B)' 5sŀh NsGC~2{~;uZ$/ACT0ݵKM bգ/dR4Ir_zmz;| %9cym^$JuqPh.p;Sv-?S5*س ӝ'&pK.dkOc|Zt.$Kp\q9%[ = /yG0KXiR :`}wpDئ#kP@{?ĈD?! XcM1k܀\D<3{jU+RZpM Fwg'E!VhI= nd!Ur3Xkv]jV⹑Q"f`6s_b ~1mmg&FE ۬f\c,Ñ@P'ɮd~9DluŶDNJMh7dsőN6z+OڙeAc2,ʕKmWM Z}H%(ד7g B wPUSk\i%* \ 忋yw? B_ ,**)'W,}%^Pɸ>k8 #U!ezG?7);Ix>cjY΁D#>'"v& 7k<>6@Rh>LZۇi]DvٷF!juALr.٘\a}һKD%3ubuhSڬ}ޝggC Ix'tQlnEl{孢/]xǭmqhVtV/Z2_-={ 郉J@Mʼ/ rHufB+I'#@?"(grwG]cyۈ*9{ͥ#C}4|.E7I@e3ZלW4,7)+p]_p-3lC ZD ូk3@ĕmg7Vܵll8e0lyg)ow K̛b.v_66IN+>d*iˈ;Z'4P|窶oOX?LY-e=ҥ>B;.5mIb.6y_7e3 ` zۓ["5c'rk.y?b帀+} s!EjʋOwg5 (Ϩl}j;vTlNt$o~DcK=67ѷh [=a2RCě OI&^g >lst@{1c(0c#B E7`TqȚS9hLPu]3|AU㕇{kQbeB ڽY]7q'S}MXJQ*qz4Ayz g]A`Ju M? dZec & 8wzp]<׸7YߑbuȂ1ij9%4fjS%ֵ&ϰ$޲;ۢ2QMrV Zd<#}B`N]Yw X{V/ֽPD M͛"0eM(;If‰Ȅ\%H5=$Dhz+cJuX Ԝؚ@drF&O"jPS^,U5Mӻn`~߿aU+"r'd`o5>,Ť@x\A*!uasA.ڳ FсDNYe~ Fi-9Au%aJoJmTWtN<1^k081@i[ldVw>ecш̖_5x otG\xi~%`%4{ / OaM.!G{[G. 洿mHc8Yc[@­xyAxXxzZ{"I'"lXlDC\֫3 `zi溝,FUJ(?E%\=tO+R/1PoQWy_~N߯7W@g'xc¹1++kO<fNkh'v C܆R"a{~) dbW["8c< Nzp&Dw7,"qh |ńOL43,)ccGJc S]펆џT/u 'ڷRƦ3Ubsn;`o'nHQUQpS.( E(mN ${p2dT^ <]LN*|*JfC 0r^ ~ {6r8Lv7aZ+)$۬PIG2V"oh@3K-2>.?)x OfFq9 ;&QnGKE^_jT֡FM s3j:0ttWx4ȡ]ONA=R_Y%]yd~М[1uDu*CljpyɒIM̈F>ˮ2<{{՗6z;/oQ ?vbƒ_ N~i#eQ~B L KZa:dRѺ<F ľ΢g-/gWrÀ, ak~qGIշ\qf+Gog~N. 1tg,y3+'ŎwQ+I wd"}}?2ܼA}zD]'! /jkH#ZBP|כ8y+Fˊ"3vJiJRjn7+A>A4G5eh=GLQ<`~%gA\3WC ]A:rQ%p ,Ytu}"Dzh}IN楏h3 mzm$Dfic }SS=g*SIRaQm4))DsI2c =kr$${JrI] ~^"͐u!oEڥr"eCe=Ei=I䩁c&Ғ,./RFZI##¾s1ĿGkUڶFL; GA")*h8""ܜdsP]fuBp4< KUu$*,\!HqEEްA.W`#SO%rV[KTcd m8kLloU|o2dRB)> NS@v6'C% D?ƞ9:QsW*E< 9^e6{$|A_&ԷmqTp _Wg6F3)v;M ȡ 5(SιF RG1Bm\9&rIrTե/=` h Hߢ-9F5IKj*WiFXr5w.-WHNRu,'pm oU;NY3G LZƔb(,}7_jynkFįj^R:\H4vˈs P2T綀7in6%]үz'c+fG]頫Bܘƥ\d.Ecf]ͽpml=7ُF9f$H>zbbp*Chbm&Jsހ[lVZ?x'7A<6G@kw陻8(Mi?M0C+U?Ñ6BnL6O[P@ۙwnA c9ɀC`%gQlE3S9 @tFSN @hI*T$Ul5Mғgޏ.c0: <]*'&Xw`T5*=Szdbi'GeoI^ ŲoNɤp?=StNIƹs!of/|_YwBVdޅ33- ZsBT0S y~#b}=Yn"N]Eb'>;%rLm\'D(-16Nhy2:o> (3E5Ld]=NI>]XLxviYel@bBAo%2{3.*H[B 6 d3ys QOT!?GLi|G+M$Mmvuu6Sdn2to`?U+W<)c:x#fMI%Q9w-<^ȯr@Mi+ H${G[)k^,R[3SRϸHrWMqq =??`. [#@nPqQ?g^P w}(2킾PŅ(MaP_(۶(UfYٗ{Vw8!{=i;}c4Xb2.ςQ5^źģǘ>t-DfjT't]Ak9R߫/!$N"mŚ`.r bC;h ݊N?Itרh=lս7|aPFmYSݯV1:#}"rVh[ Ml}4%L85gIF ˈ6s 3WIO!L q˲Ɠ/O.^=fe G NYCw:5(E|,/XIzDN8靚8A\U?w*{g];sv}/T5*hG (N)즅AԸm=v) 6s:nP ULX,n )ٲZZ~Һ4dko~ $]e}z&H+0"<׵釵0Ծn©lbAb?Hd% PG$Ə}ɌE`䍟cNb* 'Ϯ >qB f- `'~4P3)T+=˕f4,skVuI;` "ڟβ,J6J^Ƿ8h!? %h5H~ۓr!"Yci'wL$K*i Y.cA!By(a(Z s¹`V3Xg֎ ̾ Ҿ !p]YB/݄:#Vnb;i.\$lϛ\J |,vY)/i X T(z8Vg1]p>hdz{ rOXQTsM{;k@$ςFA'1Ι?'#w)+u"{c̿VKs̀U4R+PZ3֥6* pJ[[[1FZFt"? [;QJ=ڃ =lmo 9w3YU6x0uvyU4 d:AmUu"5:m\m( b(-H2sσqʴqx$v!.Kd1NWܫDujoգDJ#APh)* <*Ma]tiJOb6OZUgw=)H쮁&LFJV5J6-|zx?A'u6 M* 64b~pTp(RlY"^Z@@"!"@]B,ć{9hJ_ -u3z kC._4RrN^(uם9-f'66{ƌ yWxLw^EA%y΅+4GK1sQeE~vs؄(;$VJ:2@M$L/\2gJ@P5kRơ{[ ZO-1y p%ݮ x{d=zFͻ4u^$ňp NЁ-w2 ^#ٔҟ\E3h֎ +$,~I-ljG.[( īPR,KT֐/#iqCA6q%vU;%9rG{:uro%:^OszY91o K>O8tt"]L!x:zs8)3Δ Me*> h# E5 ]÷p]6IzQH҇d"٧{`l)IlaEoCvw_Kb8ז׾v!W+e3;^ҝELD!R?o B Z֮6\IX:B V_n3H ˣ"&7SfGN]PWܩBWLȖLaQwP8ԉ_ΦHH"MiLi7="5)F {hǙEWа3 #ҹNQoc. 5wўW3js\9ǨTh湣7!F}84 [TY^?eYPfgP[gN7'fNe1ܥN4!c{KE 8sfMٗt{\?<Ƽ"J²ӻk)k5?~Y* *Pmq #LȍQW'2BLd^^Ζk7%)2yOt-CUb_}#gہe_!&[|߁.115$GDmL4=`~.j"&1e8+z=or-iH.KYn3W}t+MWғi~ ؄%J 0 MƢNGb$ڢfh OY30@|-w8П( +.e.6Q>}bbON&B2M!2 Z94Lb?#ܦ<4WKAS鷸h!նCo`F9&4nҎ=Ӽ)%PkI?BvN^hv5ӳ|=S8Uy2@GW3nDR=:J7ĻؿdٰаüȦ2|Y=Y"Uk͕ƒ;1DIlKˉa[ݝ6WMt73m )ޢ05ϞfMOn6p7r!#(J1XEHVV!yix^|lzg޸겹}<\X蚴nMD)'b4-8Cc"հ:J]&PbNCbɦϮi]#rH!ͺ ֠8X>1b1G! } 0Q0n})$CA-ȍK/&ט`s\e8 vGH _/!l͡c uY^"<2zf*9~dhؑ)]Q5'L҈'KvvԩGAWQ머4R^ݕ3M 4/Ho$B2pPCGSjMtJLeR<'f7s mmc!>< N}zI.d_2&Q$.{0 => bq5K.h| 4?sf2mC@C~F/V0y~d~`3j#w~<@kjS\:v"Sm&xwQ?I>m |2-iª^r*,GUqkY BΓ M.co!xZ!Z5"XS nr#ȑliĮ0Λ/ ^@Ϳқ 0f~M-C["Xyԇ,-Om7E,X' ;E3Ywl^em71z" pQ 0)r}$]o9 ,!n'nJKT@p͡9! ݚM9M5kCj}~Knj-8(^u^85{WɬqXL죐ęsF"oE+iAq$%@Q,nL-ki_m iSR]]s^$k5$v$V&nc~HI^Y )6M=+CdGmLS,Oxe}{E$B?3-S|)bbA5$^-34'wt܋$tNhN.Mhqr< 'JOnElxP h0\?4D70NVܟ47fjv[{cAK kPC:2m%OzI'gSu{'=εxu /"*XdT$ohw]]1tP>M@O: ѫkx {xm"Oo+kBhiMdK  N@%*'ՕCm0vdB5E"#(ߞ NS?ܸ: Q6e.seyA^KAaFEoR?Fϰ -y6q#ҢI(Z&?UD+]A~KPYzL{͗؎Z&T";r/5hKa⎖$2H/3)9Lysm`y>{0\nKЇ&U@A|/ -=j7o,OT/}=&=.R%~3P{qg';琚v `IU]!hos-(Pr!Ƒ{l6?jhx#}#ÃW\C^( Q6tۃ~J//4Dڼ;rT3qX&FY># =sI:){A gAotRNSP 69+퀫R(6UV9(5(7O;޾<-ݽ{n8b1@֭sC'9[$8RNt瓖 PnD$8*]nB ukE6hWphW+-}k44Q=!)USe{ /C7l%>/8Or%V$vox^ݝeR3 Ły߭qϰV8sS ɱ\#%N b*~,04s=ŧ)n :rM`̤JM'dp1 3s3RӞ;X⑬49_Ed 33!Y. # @fG oqѝL'ɸ5/f=e.ڽt fd݊~:I]׊ed쳵O!;8Pv~z78kXh&ǝ]cS$ Q,eU9넔 |aQLd>Ct$)6fA.~ށgS2b)_l|6E/Mwr4=ӭnM]\9C nS*::)נ\;P2Gfa>RHrnīB#i\"4ǠkTUڡǏ&Jְvsn)lne &t ٘Y>ޚSxSn{]ːGR e[=fo['U+oM9IpDNp@w2<)]ƫe ՛õ(t[`EE{/Q)fcEOg0iOtibޡoHlmUr3C3Z1 Z}*}fHj˾.>Fww\Pڶ 0I7]Y kOeEe#v˭ `GLɞ=ۨ1]GY㜷 ñNm4&yXq)dE_=MR hˁtXSt5$ۊ:7茰G>;JJR>4I╼" ugg-=dFcS.!hmOX|ij(*Vs`Ó8HU%,ÿZǃy9U)D591Ҽ3 ^.P 85[ȽqYn"]C8NYcûBr,x<}6Tmߙ%p аYn13.0E7pGrC*:ełzfo c"[eX_ܮT' Ht#h`K!r(f;e6Gً4>Y70XK,FZ{`f>9IJ؟2m"5q tq3P))Z~.k]d/|keb!u{ʱ=،T>ʾ+[7f *A^v7xHNE7/B+y`~V$9׊ϧt 4fPY+d( UjADt,_'!1?IGG܆5*5<2g^3}S=Bߗx+ XJ.Tx'<}:aϢ&Yms̸ٺFקkf/E#L6viu6k31 ߚ*/l\hhi} O[eQ (qi>dKQ4vXDENb L&Q Bmt ]+4=@dYvWf hTt[>\TgqkĆ]d='YVT1&xd#>銺hK0Og,VuEZ~ Rvg#U *uR;c|1 혩?Aľ[?bZb3w. "DT|yS O%7Ml|HO+D^jgvM7Mj\ zRXYe}ױN'> +5rϚBCvՒ_v/ss }]ǹ:F!\*4ݓϷ{OMZ)b6 czG N5e=tƜC﹞B?{%Nhw|}PI s-kd2x~^W<]#@aOݙ@ᐘU.н~S(2sF1`̍!SGh#1+%֨A c :?^TO-Kewۮd5au qq,Gt~'By?(I@ζu+UD^uC;?J?U9:S|ת^sW/°jav]bS ~&-9z _cJVm_zfnLf1{%ʪBF-bv]ЂD :h:Y\/ Q3.ɟzЌ,}9,4굺ܪ2[e'u~ujū,qɇd.. +6VI&t2?('7B8N2"- S Hz! ~LI^IX-td=}h<pLf)}-cmJ9 Wa+dʷl/qS,E^dL9_9!g$vy{k6L$yŹAѰ(2^4,z?녠`Bmb#V L {linx;ڱ/+ Q+{< a5 ^@B_pEWA=p$Hyb~ kz7&~EԵR˙1IKCbil d€}*.F各UR=Ht|!9 jFmd'0 7oĒNhNAP '|*YTGKrRl\!0HCQYtJsz'XS(),\VoYՕ^c"=' TxN0Ji)k& P-}it!i0ٓ+?xy*#e(@SDL$Gt"}O1zQ9-RȺ%4Ctˇړn8똈ٽZhey} NkbNĤQ)?lxq $omMDXBjc®21S W^TT S2LʟU+53X,ak XYi$\gc/wAǗ:ӭfW"r2^Z%ZSGC+n~K/9 {;AŶw0yo}!nE¥v5ҥ Ү\=KP öJ **q\_1B7-HxLMϱq&ȴj2-0$]ϟ,޳s4|({n !YH]ˡpd^{kC8J* .Mpac[EhlaܭCԼZ[*Lov5ӊp&V,¢$bl8VƄ6 o 5kt@PߥYRp QȝG]#6Mc&> VVz!&,ʜ~\|+֨dkJ>vXCv>U ڰJHLj8h%$kPvS A K '*$*d)-YuIN)}x:#Hx-"fz$'K;Ni~5DCtאPvS9E^ؠ5] 9ˣ2)r8o!9gemOVfvcY|e1-_iʨ:cd˄GSJO[ m+I],Ց@wNo2$;lD<"eЁ^uS",o\r~FRq-xnZb[MbFZ"=T|XͿaSlC3#}yޕ&5 j\u9[tX0_o@]{ܱeiFtT5(Άw  u&lp?mb@'r[f;y[!P BT6ѴAD>?s7 ddu ARy/XP\s_[ >vmMqo\<:M C)}]QWWY^n(2ԬU;_D$m/ cO˃I]U[Ḋlp~._dP'KFNK5Z+r*"d#+*+2zmBXsLIgCYºa<[uP8ɼsQ {Ƶ>)$dyg'[MԾ_Cپ~,{[;6L/N53sy~@?R'KurH] èM!ͭg¾GC@!TxO].xE x0 ʻHtէJR%3sG 7ȫ`jH @53a;U27\|Bwq|?Jg͂{ 8oln ~CwUd<"/gG赁ߢ,ViB3D W, ̠؄1̓d#@N|43)-G}}5kd'@E\fN>IL8SU-'õ)uovm]DZ}(SE~bgwnp9?"sDI2-KsLcq(I0Z_\ӆ6,xn q6x;:Vw;ß \A ݤycޟu SڎoK>; fK7'i_$=s;:PeiAuiO+!CtBIaݔ:tiҩ-/rбyx+" yVR\$._BiM kyfR-a8rQɭl{s-6띶B&kJia|.v2a/ qO7xFgl̙j%w4] R0ꍴLg[]!$ uX5S@O%dŶPB`HbǗS[NmR: ,8uzyUG8߇mbYX=AU3)\"՞N |@3= êK,+mǶ$sy1pm>X0"+?wƍn N}8xqhv^?g] rq,JoNCmdvW<[:[JReT4k8xNǂXb`"}ȗ7q۱򔀃1P=e$ȿ1<U J%¡ԁm')GHvgJDSY25LH#x"tÏKV̪ [,XxF9uuz*NWͱ\UڢOgA" ,PוS,gбnn9r~m[L9|9ڪk5#t]k.Ay[9p1d*C Ad*GC^8s+#%"X#'*G2C$pFb uᤃsYp+d ky ^9i&Sm\%{en/I D5l]`k*.! `zyzKjij8)NQ%0j~K։nTD 0=xȌ 3Kv$uhQ~]3݁֍$ SG)ل8mM%ΠHح1 "lNai澊/ ie/]E.ܓN2R*g'0"*g<{Kil>pe3M֮7"5H0@}WHvCp6O(݇18ϠΦ] A5|F:L87$ds RI26+YoiBMiCaxJm==-(X!^Gj^OsCl \_tFM?OSJKˌ('z=v(w(kB)Gͨlbc'+qU-Uq& ˆhNɱ#CqmnmbbtG]ޟ& n߲c9v΂=]YIJJLr GMS7ȩЂf巪K<2kIYz F|I#יm+ b%m?Βx n}gGTDK /mDhcޑC~8_Ԡfm?̃ܥ5Klr V :v tg@8Gj)69ӽ?hXkP#~Fޫi ??|w.5KNYٚBub fi `@`è;c Gt9wق`ș"@c4 J0Uی [VlrR ^|Γ%_yxrP &w}f@rgӲE5U|D^B3ޯ nR_WG||B6+ҕ]6"ظzN 4.#2edY5;>eQ9/g"֠Z{˶ej_Nܥ÷(bq8.L>.ל"@U`1Q|L$b\vIyIৈ 0ↅ- G٢fF́e60D*j0Oq(;E!Mś`1́:p"cXȉ(P,(j:g&d=ٯ>t8]CBd\g}7bˠ}Hk"|s[!I^_ T+χISzRfns *0l9srb?MQƣayv߅'ѕ0$4Dء/l+%K0EW * H U6(iOojd"ڢ +\HbskA_9*+t2n7c}'\tN<@/іӝpv';z`ŘOlŦ?ּiN F4x52a&f@(f}ИrQl'rFЁkii5ץvQP=!_P`ҹ9"0hmbMwj<9L}(-ب}*/[Api++y9B8$@REĸqe$=G!vu1olz*aob>~ZZ֌ JaKw~Z?&HHj;KQad5cͻVGL+_vmlb+NB,&l>. crg3x"5-{ȲֱT zk:=311!K\Ѧ弒Ȧ}?Jcyd&Z6b ֵU t*ouKϩy΋NpK[83uIIf ]XWfY3M^^.s,Q 1_84@bu{8i }Eֿv:+UD~ %F$q:u^}{uv`s$XiSx 7z,©,' C}\>f";A)rR@%;\g~P,|׎v?z7p& qG*.@itftӸm CXU o _7A63/E~MS;KWU#a&t^@PŮn]ܠWN^΢:/.O*j]]JMځ#<ôZL]gg(}}P#[>lU6k ]Wl2έzAgZl'6r (9? \ 6:klٲ{?] ԏ-=94gm2rU|H.,|0 =0qkDz7W@Wh~O [{{ҽ\}hKub"M`gcyxD7@,L4p?u6Bf`X`M;.=!T2'D)[VE'J IvR̴u4q󿉥m S K;сe%nv|osǸ2zmial}'8Č721;[{G5|.$4!3lq4cY3Xr6ώ?吀Yø 5NB۬r[>E [Xcp-Zr%d2m]$vL4Qm B=2VT.†TUqg>ʄ !o:HrNRqW5j:CGBbq\VyR HHu&'[^#px(h i`{{:^mv>?btov9DjH _.l^,p6~](Di]Zw30#Z,P87>dnbN-0~yQ&fkb6c: ~hɴ!aĘ.V:Co>o{H*rN`'ꗻaEbM$HgUG~pׂ/,jwKft#mhxN"H uw룲P26|%?a)AP<'h;<9 r##Y! %U,xcMlfՈvdƝ XOzqCK#sJI#嘡gk6m`H4iu=ViSnSwv$Oy9}cN}VJXl_"\!_ݢƙK?-IsߏN Xw{cV޻Y>W,drpRWq$& Ggϑ-$^ok$UuvmzO8fhe$qA*'9ud=VQerO(ҽi~Svr WSG7F2Y]r݂T<7}s1&]gaq}hmγqj<מ"k\7]a:% ;9pVNT3  CҪ+0+VhDX+-}aeU0 ִo T/fP3c~1`N+Y:Աz>aL"ZikJ`]?ӄ=6%=R…yXEB4hMZidpi(gOpLUMˁ$by;ۂJTrPܫhsU3=C=c_>$# Р-ԫl'Դ4y0i*5j~9L>SnebEtgZug6gN F4;T~0}LSukE6~r q44_Kѷ<`Tg"~5}en/پo*e /<5m5AS~!4ݯt2#wp]Rb&6ٟ!Эjm+>Nɫ;G-@N%2I !I,GΦF,p֚`7*yf(ZN9 9dI2F_n/2BBgX?x$C=BI [vj\P0(gxg:9>|>I4LJr!F>:\*IqjW% =SI?Bo}+u J'JT_xցFa~: 4L]+@H2'ۙ¥MXf#O~ A͡6" I[rnG?xS&*bmS9Ih0=XNR3YYt#} #!}mUbZp*w.9IBU!6 U[iQab:2 ^T)EMG@բ KDD"4՛Қ$B:d@6rI=2f.mt&gdecz9AeD(6%t[jL0D~xʝ).pZ[ލ@Tt3..(S޻ؕPٖn H51~|]D؉ѹFk KTq3)U겙z\7O5*݄p2%є,Z6MXnW6I')mTV:˜vțT4o&Tm G%dp:ѭ%A*@ڀc64/,͹N&KQe{jj"J޳~9—iբ*ECXa1]4tfdsxSAg»ϳG]x!q_t<XpUGH!B9{?Սp|"yHxkG|1/Cԃw]uB"Yxyf{U"Mk+]('r.dZmc8W%IJ3*9H ߟO }ǾlfVz8'.JK)D"f]j5[F99/mL  D!N^!?r q*z .;Td4LR֙YprϨ JbՑ@3C,mC\jaE)ͦ/@,܇P(Ǩ:O(ӓk-{(+uzH+b1k|@H1LQl$><˻÷,[)ju+YJB6?Bh6{.6(ȣTfq]$Kp #5.hciH6{ij 7gݚ&m2A8(-%T1z-4@?2ӓՊxa[l5* `_>jGy5u=B 11.G[dI֌s|fiACX鸊|}<<fT'L%io/AcFJRV>?5/5+J\ȯz4oeq,{FѤ@x0zN8^&fH: 4>sC1pAoG1fY!%dGOFuZ.5]J;*:fEܸfg*rdk@)#d Ge`J-SMg2<먐tNF f:eW <auK4t#Vb0BesuV)oh\"ƑCwͤsy8vn't#HPL|7w [5tbϑ QɆ]]>Wd}BGR&lĈ|{`PD$ߒ=.pQlR^gmyܤG;̺ꘖcSjr;cǜrG|[ 2,(3ȧkaxi %i6Lxy̆23 ۚ±0,U`>uZAgtVN{B]Oq~W2i:Hj rB:@)ge?'pO۝js//EETȹYRv!Rke I 7rt rDԃ۠myNcQo.:U{؏*S4ëe) L5\S{o,4w}FPfwAųJZ{u9zAH6a{D]x_u϶LDsb%_- a6NY0Yx3τK8 FЯ`šq+Tjvs^JG2@_YB' Νy۲Hfgb'#>śa0dg`ӔDxPހzJ$kj3,8 hy{;V5uTegX6~z.h"vȧҖDρӆ 8`2!#C\DbA#ߘhwk<73N3'zvii]ٵuVP8i$Q\WtZGN:OG}`+s!\Q?ݵ۟C鶺CYT5:BD-Ci :6G%D N{<~ZQg\ s>hG@XTc/M HA%pITv(ݨXMwAT1LS.7 l-xxgV$)C-,dE5D~O<&)'0{0h"61Z+p7fAmq|g#4\lƶ3o5H"&7]l dZP.ad˃W@|r~%fP$ݨsNR.x;xj(ثΕR0}PNWgbR74|}֦DP~2G51QEZ=?Rj֋0.bٌʘ-9' 1S}X_OJ qЇs5[ y+c) عZ`mC8 wEĴ͜Qěʷsŝ$9p|P1Y?M0POUAk%OKM,zZ&Ђ8&eoF e`qf2?ⰈH( [uOW.i1k[fC#<o1]-&U1X Ԗ? V@Bءٜ7:RZdFvWU1ۚ]A[xRgNHІw} Ͳ>7 4Huy˧9w)ETe5AxW\UC=@1+Ul^ :=_I*5꺎"rh `OGtiv8'}{{oT'I GIGugAQgHO&ukUE;;2\׌ Aph˼y܌@ ]7^]EsYt//iݰ9LIz2Xn ,9sM3q[FA}]e{IeT+;Yndڪ$+h_%-%5ZyWv3Ne= PP_`_Ե{A\U#1:\SCcv0ȟ\ lk:yrL5 ?!n`щKPwRPqeuP'$4Ըᤘ[e/!&x_X],[Z(Ր6ў[Llh7 H" ꠺Uedb2Ɋj̀9ҖݲtV;˖ڗm ,391io`Kȵ>@X%CIVx\|pgar>qtSoM37/UtpXwC.qG{30 !pV+-E.{tDxsjh8PǂWC=z%0їTV+ct_բը+]S1W25_to8x,j߿kaOC5}joy:sΒilhfK5x@+o} O\B^9sfiwTn>FA>h4 +ecnRT}apE<9xruP/-%4}lu0Cz`i4c؎U#0٧a)]ֺlyoKЉ2Ѻϔ>û͂"A)[k=س.g GlXE s 翸CZmǶ<pM/'04>N(μ߷j?bҶ7H ̢ V`{K&f@me&螺g;:Z+0H io۞x!'iS/ZRh_w 3 J):sD.v] ^X1enL T[˜G7 #"VىhW~bOٯMG')guNmJ)_ͦ'vy7'OѢf}eP-N4YW 骵Npn7rhn+7䘇NAJҴ}yq]8|ǐCefѷ=<PA Q p#l.QB!S#JBA\ H EI^btPmף2_T Բp~}\8^Ȯ\w f 5#}/V8[}cEŮGȒ/jVi <`R=N,"7/,rh>t(fŵ鼫vHGM3(H~- +m#o# (gyy@JC`$ m(*xX>$Z@(9Z*\ ciz 0NkeU1Ӹvy;2 5_5vEʻJ:l0s B@iԇ0 9vTfžtDq ,̊>nĐ-^֔UTx JKyBFOE-pZ Nj*^ pӗiL2冤 ئ'ql8kŸ{ v[Bx*.LrA3,#!փZ*׾!M.˅@3'n3A72qQ̰C]<~E+< QUM)*Y7upM"8S;ضGp[)B4ÿ8.V((;bd6bquo4ef:Z6 G| \DuՊjkغEI̿TijBgEL717G떂uW/bxzqV?B)닠aO6f'ls"ZT>0U ⺷+DM< e{?OGf/ Qw|+PĠ]6^;xAG a/lpOw!2;P%F9* R"O6 n[J7^5?Z%3 CO+U#l䧟x>T?:l_Q4I[[RpO\ ! gXO cc?oޱ*hF@^? *X F\}.2,7v4-wT y~b R {AHGƇƩ{1S=-KV&кN䀧`P&'OiO]if|XB8#.FJ-#N<^woY31"JC*g)~D߉hX=;̶!`*@XTř%܈8$$MK\=sġGB#mWF(TcPakV Ȩ}8P&`xh@{K\6~o$, A]\ WN;v( 3E tt|M,O^gቦѝZ/?h&mK‚AUk%5D ƾ 9c'S^'?صLƃ0';BDHJ p}ma zIV.i̸ Y%S=fXE3XpwW5s7(;SxKҦbUWת(JHnC Ї j ܗ,j$ID 9KCZz_a$턌r]Ҝy#[$.y˶ygODCZ8$Rh+"fGWS 2kyۨGϼ}j0̵mׁF$bVqwo#=&J aqHxWE%D~Cw¬By Plފ*A@9HU^Gf}SqOEk6*V?ɟ+9wx9~tTxG$@t]g}vws\L4]d7Bt;uCTEb+.Mv$EwcW#?ͱMDU%ͥvI z l|Y]N(7Vz`\-i3r|,{S&ouyk|`9З#= u3%~XqH|Ga蹦Ydtn4 e53H'E:h91y??{_`Nt }4R=]<7DGNFEcWR!`9LPUie+@MظXwf[Ef̮%:+^VԕO L;S!giCB8ZtC<>|륳0RtL~/RoG*Ʊ! ?V:ґn[Dz˪n=g5b fb3Ӊl%/a}X >[|(1RE ϙm1R/s.P{mĺ%c{0:ƧzMώ1J;n1 ntANޓK]͉J=:QXPD,vz|A5(04UkEW^@&Z^:u*hZqcOza4Ff0g󦄴`IDŽI# L!!_&>~7WӍAe.q\Z.2p>v#O1rhNZyb_V)֫SG&J l;fx}NG54^Щp$1cʡQ+߶t 궲+Ҫ]̤tv么 LNIv5/퀍.yp쓑o{N 2y!k±RUQfEXH6hCx5L*N[.0RKtQX{6;W9ZpG6COrqpF.:HTtF-BCچn>.0s.s)[R% Iq!SDqEW[=pKzx$tR)2o~I~imn#)bjFs◴ɕ+?Hlrr'E8A``XVC崧Z֛9ֹbv CeۏyU>ReF+jbҽ ɶU3:|V5;Џ 5>@ +ɝjb'( Zqv㫯 N; Dy묁{!5ܘ $w8 Ւ>,@|$z*3O P5kh&If%woeV#9O=`~ڒgeZM9BQua OV%PQa\-?5 wN/a6oK6YhXxvCbF!ʪjPIjzދu 8@Bx.f^AN(^1o۲CS'OJG7I: kYTdw uAo0dr<Sx>6 gFTj ntUgqtx%'vaAp9FO1 JOm%45 07pz<_)# TN>b,nSkLi6xtR.ɴB^[¦=1辳Dz9o"}:gEb^SQCJj6)yT ߙIb^`|E> u2`1e.RoP?Gejn)j/u YW2zZ0<]hzRO+4)G)~B ǪBqhOޯo8G[}FqEViϨPJj+T DCFTn)l g$W.&+ё m1K}]5^L'[Ն˅F}Ƀ![d=,*Ujalnddu_ .G7r>٦Ez֬FӖ'Y_p%ߠIzNh)Xrߡ%38-ALj̭k(_%ER}?>=F4>'A9Ԝ! ͣNX)4n4_n7D +)P14" ݵTlsS7wPb;ջuA'={/d>h> DՆҽ.m:O22JX5,]ЎAdZ FgH!* O 鿧MMTW3M1T\NR%|61OOie[`adO}'U:r[B86UzLCQjֺ"N:5f<$/MY6՜7;t,v i&.YW7 (412mN/ե2|{rAT$p&g5>6{oEn .KLcð! ݇8 5Ni ֥[jKI?D'PN#x@8 !ڣb{jfdO O =neH)R  '%Cs,)WkaR7MhԜrYG*[FsXYm@F_^nGX-(s^<L@5v}cnޑ„m3b&NOK&,)~q a2Ӓi;hgmr|`f|Z>G-c "wr  J.WvŊEVn j1J6?WQtl2T0SD&iӎ8FrvBrt\:^'ȜP3Tt ,Y I,niWNN<ByU( VQȳanK :d4"Bn%&w$q6Cr.T-_ω,b]~NHDtWh֊ b,V" AKVҴtg+sMY4~ks'؄;D76kCE4^ztr 7(%k9"#wciZθk<AHXgGvB$S%Xhַrg/*Ca aO!R[C(L\dg֋$݇bcR+u!Io(ҹJI{,88.Qiwrx죜 (- 527O/,c:T )I|}-ѿy)N:}B9 |eLНEヿ}-ssOB.T_''ꍆRl}b-[@i"N~ՄG(^8A.Q ŀ ЄG>Ft|,L0wUr es'ZăW%btjgH2B,댋&Nq|%+ AtнrWˍ w< KZLx:(x3GVLvқ#`1GzqcHٔ;̟B;3 G#ifR7 fBj'Q3~+l#wo7(F%v [F4hTQT~\g"/Wz47݈&ۦc{ `MY^\{7xQ^C`E3boo{ vkb